UHJlbWllcmUgaW4gZGllc2VyIFJ1YnJpayAoR3VsZHVrYXQsIDExLiBTZXAgMTk5NCwgMjI6Mzc6MTkpOgpKb2YgaXN0IGRvb2YuCgooaXN0IGhhbHQgbnVyIHNjaG1hcnJuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbm9jaCBtZWhyIHNjaG1hYXJuIChIb2JvLCAxMS4gU2VwIDE5OTQsIDIyOjM4OjU0KToKR3VsZHVrYXQgaGF0IHJlY2h0LgosCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoYWU/IChCb2luZywgMTEuIFNlcCAxOTk0LCAyMjozOTo0NSk6CldhcyBpc3Qgc2NobWFhcm4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkZW5rc3BvcnQgKEhvYm8sIDExLiBTZXAgMTk5NCwgMjI6NDE6MDYpOgpsdXN0aWdlcyB3b2VydGVycmF0ZW46IHZlcmFlbmRlciBlaW5lbiBidWNoc3RhYmVuOiB3aWUga29tbXN0IGR1IHZvbiBzY2htYWFybgphdWYgc2NobWFycm4/CmRpZSBlcnN0ZSByaWNodGlnZSBlaW5zZW5kdW5nIGlzdCBpbXIgMTAwIHB1bmt0ZSB3ZXJ0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSRTogUHJlaXNhdXNzY2hyZWliZW4gKEd1bGR1a2F0LCAxMS4gU2VwIDE5OTQsIDIyOjQyOjAxKToKTj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRlbmtzcG9ydCBhbnR3b3J0IChUaG9yaW4sIDExLiBTZXAgMTk5NCwgMjI6NDI6NTYpOgppY2ggd2Vpc3MgZXMsIGljaCB3ZWlzcyBlcyAuLi4gd28gaXN0IG1laW4ga3VlaGxzY2hyYW5rLCBkZW4gaWNoIGZ1ZXIgMTAwCmd1bW1pcHVua3RlIGJla29tbWUgPz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOb2NoIGlzdCBkYXMgUmFldHNlbCBuaWNodCBnZWxvZXN0LiAoSG9ibywgMTEuIFNlcCAxOTk0LCAyMjo0MzoxNCk6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVlcyByYWV0c2VsIChUaG9yaW4sIDExLiBTZXAgMTk5NCwgMjI6NDk6MTEpOgpUamEsIGFscyBHZXdpbm5lciBkZXIgUHVua3RlIHN0ZWxsZSBpY2ggaGllcm1pdCBkYXMgbmV1ZSBSYWV0c2VsIDoKRXMgaXN0IGJsYXVncnVlbiwgaHVlcGZ0IGF1ZiBlaW5lbSBCZWluLCBrYW5uICdNYW1hJyBzYWdlbiwgdHJhZWd0IGVpbmUKbGVpY2h0ZSBTdHJpY2tqYWNrZSwgc2llaHQgdG9wZml0IGF1cyB1bmQgdmVycHJ1ZWdlbHQgamVkZW4gU2VoZXIuLi4gTmFhYWFhYWFhCj8/PyBoYWJ0IGlocnMgPz8/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTG9lc3VuZyAoQm9pbmcsIDExLiBTZXAgMTk5NCwgMjI6NTA6MTIpOgpTaWx2YW5hPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6bmV1ZXMgcmFldHNlbCAoR3VsZHVrYXQsIDExLiBTZXAgMTk5NCwgMjI6NTM6MzMpOgppc3QgenUgc2Nod2VyLCBnaWIgbWFsIGVpbmVuIHdlaXRlcmVuIFRpcC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmF1ZmxvZXN1bmcgKFRob3JpbiwgMTEuIFNlcCAxOTk0LCAyMjo1NTowNSk6CkluIEVybWFuZ2x1bmcgdm9uIExvZXN1bmdlbiA6IEJvaW5nIGJla29tbXQgYWxzIGVpbnppZ2VyIFJhdGVyIGRpZSBQdW5rdGUgdW5kCm11c3Mgc2llIHdpZWRlciBsb3N3ZXJkZW4gLCBBdWZsb2VzdW5nIDogQm9pbmdzIG5ldWVzIE1vbnN0ZXIgZnVlciBkaWUgSEUsCmRhbWl0IGRpZSBTcGllbGVyIHNjaG9uIGZydWVoIG1lcmtlbiwgZGFzIGRhcyBMZWJlbiBncmF1c2FtIHVuZCBrdXJ6IGlzdC4uLgpVbmQgZGllIFNlaGVyLCBkYW1pdCBzaWUKc2ljaCBuaWNodCB1ZWJlcnNjaGFldHplbi4uLgpFaW4gZ3JpbnNlbmRlciBUaG9yaW4sIGRlbSBib2VzZXMgc2Nod2FudC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGF1ZmxvZXN1bmcgKEJvaW5nLCAxMS4gU2VwIDE5OTQsIDIyOjU3OjExKToKT2ssIER1IGhhc3QgZXMgc28gZ2V3b2xsdCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRqYS4uLiAoR3JpbW1ib3JuLCAxMS4gU2VwIDE5OTQsIDIzOjE3OjM4KToKCkphLCBpY2ggd2Vpc3MsIGljaCBicmVjaGUgaGllciBpbiBkZW4gRnJvaHNpbm4gZWluIHVuZCBtZWNrZXIgaW1tZXIgbnVyCnJ1bS4uLgpBYmVyIGVzIGlzdCBkb2NoIGVyc3RhdW5saWNoLCBkYXNzIGRpZXNlIFJ1YnJpayBzbyBzY2huZWxsIGZlcnRpZyB3dXJkZSwKa2VpbmUgMjQgU3RkLiBuYWNoIG1laW5lbSBWb3JzY2hsYWcuCldhcnVtIGdlaHQgZGFzIG5pY2h0IGJlaSBhbmRlcmVuIERpbmdlbiBhdWNoLCBkaWUgd2ljaHRpZ2VyIGFiZXIga29tcGxldHQgbmV1CnNpbmQ/Ck1hbmNobWFsIGhhYmUgaWNoIGRhcyBHZWZ1ZWhsLCBkYXNzIHNpY2ggaGllciBuaXggdmVyYWVuZGVybiBTT0xMLCBkYXNzIGFtCmJlc3RlbiBhbGxlcyBibGVpYnQuCkRpZSBvYmVyZW4gbXVkLUhlcnJzY2hlciBzaW4genVmcmllZGVuLCBkYXNzIGRhcyBtdWQgb2huZSBncm9lc3NlcmUgQWJzdHVlcnplCmxhZXVmdCB1bmQgd29sbGVuIGRpZXNlbiBadXN0YW5kIG5pY2h0IHJpc2tpZXJlbi4KQWJlciBTdGlsbHN0YW5kIGlzdCBSdWVja3NjaHJpdHQsIG9obmUgRW50d2lja2x1bmcga29tbXQgZGVyIFRvZCBkaWVzZXMgbXVkcy4KVW5kIGRhcyB3YWVyZSBqYW1tZXJzY2hhZGUuCkFscyBlaW4gQmVpc3BpZWwgbW9lY2h0ZSBpY2ggZGFzIChmZXN0Z2VmYWhyZW5lLCB2ZXJ6b2VnZXJ0ZT8pIEdpbGRlbmtvbnplcHQKbmVubmVuLgoKTWVociB6dSBtZWluZW4gcmV2b2x1dGlvbmFlcmVuIElkZWVuIGJlaW0gbmFlY2hzdGVuIFdhcnRlbiwgZGFzIEFtdWxldHQKbXVlc3N0ZSBnbGVpY2ggYW5zcHJpbmdlbi4uLiA7LSkpCgpKYXUsIGRhIGlzc2VzIGphIQoKVW50ZXJ3ZWdzOgogICAgICAgICAgIEdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRqYS4uLiAoQm9pbmcsIDExLiBTZXAgMTk5NCwgMjM6MjE6MjIpOgpOdW4gamEsIGRpZXNlIFJ1YnJpayBpbnMgTGViZW4genUgcnVmZW4gaGF0IG1pY2ggZXR3YSAzMCBTZWt1bmRlbiBnZWtvc3RldCwKaW4gZGVuZW4gaWNoIGdlbmF1IDIgWmVpbGVuIFRpcHBlbiBtdXNzdGUuIEJlaSBhbmRlcmVuIHJldm9sdXRpb25hZXJlbgpJZGVlbiBnZWh0IGRhcyBoYWx0IG5pY2h0IHNvIHNjaG5lbGwgLi4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnp1IGVybnN0IChUaG9yaW4sIDExLiBTZXAgMTk5NCwgMjM6MjM6MDApOgpIZXksIGRpZSBsZXR6dGVuIHp3ZWkgQXJ0aWtlbCBzaW5kIHp1IGVybnN0Li4uIGRpZSBrb21tZW4gamEgZmFzdCBuYWNoCmFsbGdlbWVpbiBvZGVyIGVudHdpY2tsdW5nLi4uIEF1c3NlcmRlbSB3YXJ0ZW4gd2lyIG5vY2ggYXVmIEJvaW5ncyBSYWV0c2VsLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSYWV0c2VsIChCb2luZywgMTEuIFNlcCAxOTk0LCAyMzoyNTowMCk6Ck9rb2ssIHd1c3N0ZSBuaWNodCBkYXNzIGljaCBqZXR6dCBlaW4gUmFldHNlbCBzdGVsbGVuIE1VU1MhCkhpZXIgaXN0IGVzOgoKV2FzIGhhYiBpY2ggaW4gbWVpbmVyIFRhc2NoZT8KCihBZWhubGljaGtlaXRlbiBtaXQgYmVyZWl0cyBiZXN0ZWhlbmRlbiBSYWV0c2VsbiBzaW5kIG5hdHVlcmxpY2ggUkVJTgp6dWZhZWxsaWchKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGFzY2hlPyAoSG9ibywgMTEuIFNlcCAxOTk0LCAyMzoyNTo0MCk6CkR1IGhhc3QgZ2FyIGtlaW5lIFRhc2NoZSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFudHdvcnQgKFRob3JpbiwgMTEuIFNlcCAxOTk0LCAyMzoyNTo1Nyk6CkRhcyBpc3QgZWluZmFjaCA6IFRob3JpbiwgZGVubiBtaWNoIHN0ZWNrc3QgZHUgaW1tZXIgaW4gZGllIHRhc2NoZS4uLjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoxMDAgcHVua3RlIChIb2JvLCAxMS4gU2VwIDE5OTQsIDIzOjI2OjIxKToKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZBTFNDSCEgKEdyaW1tYm9ybiwgMTEuIFNlcCAxOTk0LCAyMzozMDoxNSk6CgpEaWUgQW50d29ydCB2ZXJyYXRlIGljaCBhYmVyIG5pY2h0LCB3ZWlsIGRpZSB6dSBlaW5lbSBSYWV0c2VsIGltIEx1cGluZW50YWwsCmRlbSBUYWwgbWl0IGRlciBiZXN0ZW4gS25laXBlIGRlcyBNRywgZ2Vob2VydC4uLiA6LSkpKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgpQLlMuIFdlciBoYXR0ZSBkYXMgUmFldHNlbCBkZW5uIGdlc3RlbGx0Pz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZWxvZXN0IC4uLiAoQm9pbmcsIDExLiBTZXAgMTk5NCwgMjM6MzI6MDcpOgpPaywgZGllIFB1bmt0ZSBnZWhlbiBhbiBHcmltbWJvcm4sIGljaCBnbGF1YiBpaG0gZWluZmFjaC4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1ZXMgUmFldHNlbCAoR3JpbW1ib3JuLCAxMS4gU2VwIDE5OTQsIDIzOjQyOjQ3KToKCkphLCBoaWVyIGRhcyBuZXVlciBSYWV0c2VsISBNaXIgZmVobGVuIG5vY2ggMTIgenQsIGRpZSBGcmFnZSBsYXV0ZXQ6IFdlbGNoZT8KRGllIGh1bmRlcnQgUHVua3RlIGFuIGRlbiwgZGVyIGJld2Vpc2JhciBtaXQgZGVyIHJpY2h0aWdlbiBBbnR3b3J0IGtvbW10Li4uCgpJbiBkZXIgR2V3aXNzaGVpdCBkaWUgUHVua3RlIHp1IGJlaGFsdGVuOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcmUgcmFldHNlbCAoR3VsZHVrYXQsIDExLiBTZXAgMTk5NCwgMjM6NDQ6MDkpOgpkaXIgZmVobGVuIGRpZSB6dHMsIGRpZSBkdSBub2NoIG5pY2h0IGdlZnVuZGVuIGhhc3QgKGtsZWluZXIgVGlwLAp3ZWl0ZXJzdWNoZW4gOy0pKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTG9lc3VuZyAoSG9ibywgMTEuIFNlcCAxOTk0LCAyMzo0NDoxOSk6CklzdCBkb2NoIGVpbmZhY2g6IERpZSwgZGllIER1IG5vY2ggbmljaHQgZ2VmdW5kZW4gaGFzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNpZWdlci4uLiAoR3JpbW1ib3JuLCAxMS4gU2VwIDE5OTQsIDIzOjQ5OjE1KToKClRqYSwgd2FyIG5peCBtaXIgUHVua3RlIGJlaGFsdGVuLgpJbSBwYWNrZW5kZW4gZmluaXNoIGVudHNjaGllZCBkYXMgWmllbGZvdG86IEd1bGR1a2F0IGJla29tbXQgZGllIFB1bmt0ZSEKCkVudHRhZXVzY2h0IHVuZCB1ZWJlciBzZWluZSBLbHVnaGVpdCBnZXN0b2xwZXJ0OgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgYWxsZXJuZXVzdGUgUmFldHNlbCAoR3VsZHVrYXQsIDExLiBTZXAgMTk5NCwgMjM6NTM6MzgpOgpEaWUgUHVua3RlIHNpbmQgZXMgbWlyIHdlcmQ6CgpXaWUgYmVrb21tdCBtYW4gZGFzIGhlaWxpZ2Ugc2Nod2VydCBhdXMgZGVyIGhlaWxpZ2VuIEdyb3R0ZSBpbSBoZWlsaWdlbgpXYW5nYT8KCkRpZSBBbnR3b3J0LCBkZW4gR2Vpc3QgcGxhZXR0ZW4gaXN0IHRyaXZpYWwgdW5kIHphZWhsdCBuaWNodC4KCkd1bCBEdWthdAoKKG9vcHMsIHdlcnQgbmF0dWVybGljaCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFudHdvcnQgKFRob3JpbiwgMTEuIFNlcCAxOTk0LCAyMzo1NTowMyk6CnNhZyBzaW1wZWwsIGd1bGR1a2F0IDogbmltbSBzY2h3ZXJ0IDopKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnJlIC4uIChHdWxkdWthdCwgMTEuIFNlcCAxOTk0LCAyMzo1Njo1NSk6CgpzY2h3ZXJ0IEFVUyBkZXIgZ3JvdHRlLCBkaWUgYW50d29ydCB3YXIgZmFsc2NoLgoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbnRvd3J0IChUaG9yaW4sIDExLiBTZXAgMTk5NCwgMjM6NTc6MzgpOgpJbW1lciBkaWVzZSBGZWluaGVpdGVuICpncnVtbWVsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWxzbzogKEhvYm8sIDExLiBTZXAgMTk5NCwgMjM6NTg6MjEpOgpOaW1tIHNjaHdlcnQgYXVzIGdyb3R0ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFsc28gKEJvaW5nLCAxMS4gU2VwIDE5OTQsIDIzOjU5OjQzKToKVGphLCBkYXMgd2FyIGVpbmRldXRpZyBTcGllbGVyaGlsZmUsIHdpciBtdWVzc2VuIERpY2ggbGVpZGVyIHJ1bnRlcnN0dWZlbiAuLi4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcmUgLSBob2JvIChUaG9yaW4sIDExLiBTZXAgMTk5NCwgMjM6NTk6NTEpOgpQZnVpLCBkYXMgd2FyIGdlbGluc3QsIEhvYm8uLi4gZGFzIHNjaHJpZWIgaWNoIGdlcmFkZSAuLi4gKmRvcHBlbGdydW1tZWwqCkljaCBiZWFudHJhZ2UgRGlzcXVhbGlmaWthdGlvbiAsIHUuYS4gd2VnZW4gRG9waW5ncy4uLiAoQm9pbmcgd2FyIGJlaSBpaHIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXIgZG9jaCBzb3dpZXNvIGZhbHNjaCwgVGhvcmluIDooIChIb2JvLCAxMi4gU2VwIDE5OTQsIDAwOjAwOjMyKToKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVuZCBhdXNzZXJkZW0gd29sbHRlIGljaCBudXIgZGllIHB1bmt0ZSB3aWVkZXIgaGFiZW4uIChIb2JvLCAxMi4gU2VwIDE5OTQsIDAwOjAxOjM1KToKV2VubiBEdSBtaWNoIHp1cnVlY2tzdHVmc3QsIHdlcmQgaWNoIG1laW4gS2luZCBld2lnIGJlaGFsdGVuLCB1bmQgRHUgd2lyc3QKbmllIGVyZmFocmVuLCBvYiBlcyB2b24gRGlyIGlzdCBvZGVyIG5pY2h0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIChUaG9yaW4sIDEyLiBTZXAgMTk5NCwgMDA6MDE6NDkpOgpXYXIgdHJvdHpkZW0gRG9waW5nLCBpY2ggdmVybGFuZ2UgQSB1bmQgQiBUZXN0Li4uIERlbm4gaW0gR2VnZW5zYXR6IHp1CmFuZGVyZW4gc2VoIGljaCBqYSBtaXQgbWVpbmVuIEF1Z2VuLCB3YXMgaGllciBhYmdlaHQgbWl0IGV1Y2ggOikpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmUgUmFldHNlbCAoR3VsZHVrYXQsIDEyLiBTZXAgMTk5NCwgMDA6NDI6MTYpOgoKR3V0LCBkYW5uIGthbm4gaWNoIGRpZSBQdW5rdGUgYWxzbyBiZWhhbHRlbiAqZ3JpbnMqCgoqR3VsRHVrYXQgcmFobXQgc2ljaCBkaWUgUHVua3RlIGVpbiB1bmQgaGFlbmd0IHNpZSBhbiBkaWUgV2FuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIGVpbiBTY2htYXJybiAuLi4gKER1cmlhbiwgMTIuIFNlcCAxOTk0LCAwOTo0NjoxMSk6CkVuZGxpY2ggbWFsIGVpbmUgUnVicmlrLCBkaWUgc2VpbmVuIE5hbWVuIGVjaHQgdmVyZGllbnQgaGF0LiAzNiBBcnRpa2VsCnZvbGwgbWl0IFNjaG1hcnJuIC4uLiBtaXIgdHVuIGRpZSBGaW5nZXIgc2hvbiB2b20gbm4gdGlwcGVuIHdlaCA7LSkKCi0gRHVyaWFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2htYXJybiAoS2V0b3MsIDEyLiBTZXAgMTk5NCwgMDk6NTA6NTYpOgpCZWkgU2NobWFycm4gZmFlbGx0IG1pciBLYWlzZXJzY2htYXJybiBlaW4uLi4uIEhVTkdFUiAhCi0gS2V0b3MgLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNvIGVpbiBTY2htYXJybiAoRHVyaWFuLCAxMi4gU2VwIDE5OTQpIChIYXJkaWwsIDEyLiBTZXAgMTk5NCwgMTA6Mzk6MjYpOgpEdXJpYW46IG1hY2ggRGlyIGRvY2ggZWluIEFsaWFzIGZ1ZXIgbm4uLi4gOikKCmdyaW5zZW5kIChtaXIgZ2VmYWVsbHQgZGllIFJ1YnJpayk6IEhhcmRpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJtZXIgRHVyaWFuLi4uIChHcmltbWJvcm4sIDEyLiBTZXAgMTk5NCwgMTI6MjA6MzkpOgoKV2VubiBpY2ggbWljaCByZWNodCBlcmlubmVyZSBoYXR0ZSBpY2ggaW4gZGVtICJBbnRyYWciIGRpZSBNb2VnbGljaGtlaXQKZXJ3YWVobnQsIGdhbnplIFJ1YnJpa2VuIGFienViZXN0ZWxsZW4uLi4KCkltbWVyIGhpbGZzYmVyZWl0OgogICAgICAgICAgICAgICAgICAgR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbW1lciBub2NoIFJhZXRzZWwgKEd1bGR1a2F0LCAxMi4gU2VwIDE5OTQsIDEyOjIxOjE2KToKRGFzIFJhZXRzZWwgaXN0IGltbWVyIG5vY2ggbmljaHQgZ2Vsb2VzdCwgZGllIDEwMCBQdW5rdGUgd2FydGVuIGF1ZiBkZW4KZ2V3aW5uZXIhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2htYXJybiAuLi4gKEpvZiwgMTIuIFNlcCAxOTk0LCAxODoxNDo1Nyk6CkljaCBoYWJlIG1pciBlcmxhdWJ0LCBkaWUgZXhwaXJldGltZSBkaWVzZXIgR3J1cHBlIGF1ZiA0IFRhZ2UgenUgc2Vua2VuIC4uLgpzb25zdCBpc3Qgc2llIGphIGxhdWZlbmQgdm9sbAoKSm9mCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbmV1ZXN0ZXMgUmFldHNlbCAoR3VsZHVrYXQsIDEyLiBTZXAgMTk5NCwgMTg6MTc6MTQpOgoKbW1oLCBhbnNjaGVpbmVuZCB3YXIgZGFzIHJhZXRzZWwgd29obCBldHdhcyB6dSBzY2h3ZXIsIGtlaW5lIFJpY2h0aWdlIExvZXN1bmcKaXN0IGJpcyBqZXR6dCBiZWkgbWlyIGVpbmdlZ2FuZ2VuLiBEYW4gZGFyZiBpY2ggYWxzbyBkaWUgUHVua3RlIHVuZCBkZW4KSGF1cHRwcmVpcyBiZWhhbHRlbiA7LSkKCgoKTmEgR3V0LCBkYW5uIGhhbHQgZWluIG5ldWVzIHJhZXRzZWw6CldpZSBvZnQgaXN0IE1lcGhpc3RvIGdlc3RvcmJlbj8KCkVzIHZlcnN0ZWh0IHNpY2ggdm9uIHNlbGJzdCwgZGFzcyBkZXIgUmVjaHRzd2VnIGF1c2dlc2NobG9zc2VuIGlzdCB1bmQKTWl0YXJiZWl0ZXIgZGllc2VzIE11ZHMgKE1hZ2llcikgbmljaHQgZGFyYW4gdGVpbG5laG1lbiBrb2VubmVuLgoKR3VsIER1a2F0LCBIZXJyc2NoZXIgYXVmIERTTgpQUzogZXMgZ2V3aW5udCBuaWNodCBhdXRvbWF0aXNjaCBkZXIsIGRlciBtaXIgZGllIGhvZWNoc3RlIHphaGwgbmVubnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2htYXJybj8gKENhdHdlYXpsZSwgMTIuIFNlcCAxOTk0LCAyMDoyMjozNCk6CkRhcyBpc3Qga2VpbmUgUnVicmlrLCBkYXMgaXN0IGVpbiBjaGFubmVsISA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClF1aXogKFRvZXRlciwgMTMuIFNlcCAxOTk0LCAwMzoyMzoyNik6CkF1Y2ggdm9uIG1pciAqd2FydCBhdWYgU0ItQW11bGV0dCogZWluIGtsZWluZXMgUmFldHNlbDogTWVpbiBsZXR6dGVyIE1vZXJkZXIKaGF0IG1pciBzbyBndXQgZ2VmYWxsZW4sIGRhc3MgaWNoIGlobiBnbGVpY2ggbWl0Z2Vub21tZW4gaGFiZS4uLgpOYT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthaXNlcnNjaG5pdHQ/Pz8gKEZsaW50bmFpbCwgMTMuIFNlcCAxOTk0LCAwOTozMDowOCk6CgpIYWJlIGhldXRlIHp1c2FtbWVuIG1pdCBEci4gUnh0ZWNoIGZlc3RnZXN0ZWxsdCwgZGFzcyBTaWx2YW5hIHNpY2ggbm9jaCBuaWNodApnZWRyZWh0IGhhdC4uLi4KQWxzbyBIb2JvLi4uLmljaCBnbGF1YmUgZGFzIGVzIGJlaSBkZXIgTmllZGVya3VuZnQgenUgbGVpY2h0ZW4gS29tcGxpa2F0aW9uZW4Ka29tbWVuIGthbm4uLi4uCldpciBob2ZmZW4gamEgYWxsZSBkYXMgZGllc2UgR2VidXJ0IGdsYXR0IHVlYmVyIGRpZSBCdWVobmUgZ2VodC4uLmhtLi4uYWJlcgp3YXMgcGFzc2llcnQsIHdlbm4gZXMgc2lhbWVzaXNjaGUgWndpbGxpbmdlIHdlcmRlbi4uLj8/PwoKICAgICAgICBhYndhcnRlbmQuLi5GbGludAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUkU6IFRvZXRlciAoSGFyZGlsLCAxMy4gU2VwIDE5OTQsIDEwOjE0OjU1KToKRGFzIFJhZXRzZWwgaXN0IGVpbmZhY2guIFp1IGVpbmZhY2guIE9kZXIgaXN0IG1hbiBhbHMgQ2hlZiB2b20gQ2x1YiBhdWNoIGJlaW0KTG9lc2VuIGF1c2dlc2NobG9zc2VuID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHdWxEdWthdCAoSGFyZGlsLCAxMy4gU2VwIDE5OTQsIDEwOjE1OjM2KToKSG1tbSwgTWVwaGlzdG8gaXN0IHNpY2hlcmxpY2ggMTNtYWwgZ2VzdG9yYmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhlaWxpZ2VzIHNjaHdlcnQgUmFldHNlbCAoR3VsZHVrYXQsIDEzLiBTZXAgMTk5NCwgMTA6NDU6NTYpOgoKR2x1ZWNrd3Vuc2NoIGFuIFNpbHZhbmEsIHNpZSBoYXQgZGFzIHJhZXRzZWwgZ2Vsb2VzdCB1bmQgZGllIDEwMCBQdW5rdGUgc2ljaApyZWRsaWNoIHZlcmRpZW50LgoKRWluIGRyZWlmYWNoIEhpcHAgSGlwcCBIdXJyYQoKR3VsIER1a2F0LCBIZXJyc2NoZXIgYXVmIERTTgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVwaGlzdG8gKER1cmlhbiwgMTMuIFNlcCAxOTk0LCAxMTo1OToxNCk6Ck1lcGhpc3RvIGlzdCB6dW1pbmRlc3QgNiBtYWwgYW4gZGVuIEdsYWRpYXRvcmVuIGdlc3RvcmJlbiB1bmQgaGFlbHQgZGFiZWkKZGVzaGFsYiB1bmQgYXVzIGRpZXNlbSBHcnVuZCBkZW4gYWJzb2x1dCBlaW5zYW1lbiBSZWtvcmQuIEJ0dy4gQXNtb2RpcyBpc3QKZGllc2VyIEhpbnNpY2h0IGVoZXIgZWluIEdsYWRpYXRvcnNjaGxhZWNodGVyIC4uLiBhYmVyIHdhcyBzY2hsYWNodGV0IGRlcgphdWNoIG5pY2h0IDstKQoKLSBEdXJpYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtcGYgISEhIChNb3Jnb3RoLCAxMy4gU2VwIDE5OTQsIDE0OjE4OjA5KToKd2FzIGVpbiBzY2hlaXNzLi4uLmRhIHdpbGwgaWNoIGdlcmFkZSBkYXMgdW5nZWhldWVyIGtpbGxlbiAoZGFzIGF1cyBkZW0Ka29obGVzY2hhY2h0KQpkYSBpcyBkb2NoIGJlaSB1bnMgYW5uZXIgVW5pIGltIENoZW1pZWJhdSBkZXIgVE9UQUxFIHN0cm9tYXVzZmFsbCAhISEhClJhYWFhYWFnaAppY2gga29tbSB3aWVkZXIgcmVpbiB1bmQgZGEgc2luZCBtZWluZSBMUCBmYXN0IGFsbGUgd2VjaC4uLmVpbiBnbHVlY2ssIGRhc3MKZGllIHZvcnNpY2h0CmF1Y2ggYmVpIG5ldHp0b3Qga2xhcHBlbiB0dXQgISEhCm51biB3YXJ0ZSBpY2gsIGljaCBhcm1lciB3aWNodCwgZGllIExQIHJlZ2VuZXJpZXJuIHNpY2ggbmljaHQgKG5hIGphLCBzZWhyCmxhYWFhYWFhKG4pZyhzYW0pKQpudW4gaGFiIGljaCB3aWVkZXIgNTQgTFAgdW5kIDEwNyBNUCA/Pz8gc29sbCBpY2hzIHdhZ2VuID8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBc21vZGlzIChHcmltbWJvcm4sIDEzLiBTZXAgMTk5NCwgMTU6NDE6MzMpOgoKSmEsIHdhcyBraWxsdCBBc21vZGlzIG5pY2h0PyBEYXMga2FubiBpY2ggRGlyIHNhZ2VuLCBEdXJpYW4uCkFzbW9kaXMgc2NobGFjaHRldCB6LkIuIG5pY2h0IGRlbiBUaWdlciBhdWYgVGl0aXd1LgpVbmQgZGllIEh5ZHJhIHd1cmRlIGJpc2hlciBudXIgdm9uIFJleG9uLCBUaG9yaW4gdW5kIG5vY2ggc29uZW0gbGViZW5zbXVlZGVuClNlaGVyIG1pdCBFcmZvbGcgYW5nZWdyaWZmZW4uLi47LSkKCldlaXRlcmhpbjogS2xhc3NlIE1vcmdvdGghIEdlbmF1IGRhZnVlciBoYXR0ZSBpY2ggZGllIFJ1YnJpayBnZWRhY2h0LCB6dW0KWmVpdHZlcnRyZWliIGJlaW0gd2FydGVuLiBTbyB3aWUgaGllcjoKSWNoIGthbm4gbml4IG1laHIgZXNzZW4gdW5kIHRyaW5rZW4gd2lsbCBhYmVyIGRvY2ggbm9jaCBzb25lbiBHYXJkZXdhZWNodGVyCmtpbGxlbi4gT2gsIGdlaHQgd2VpdGVyIQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplcmdlYm5pcyAoVGhvcmluLCAxMy4gU2VwIDE5OTQsIDE1OjQ3OjQwKToKR3JpbW15LCBkdSBoYXN0IHVuc2VyIHN1cGVyIEVyZ2VibmlzIG5pY2h0IGVyd2FobnQgOiAyIFRvdGUsIGVpbmVyIEVuZGUuLi4KRGVyIEtvZXJwZXIgaXN0IGhhbHQgZG9jaCBuaWNodCBzb29vIGxhbmdzYW0gOikgQWJlciBkaWUgSG9lcm5lciBzaW5kClNDSE9PT09PT09PT09PT09FTiA6KQpUaG9yaW4sIGRlciBzY2hvbiB3aWVkZXIgZHJ1ZWJlciBsYWNoZW4ga2Fubi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVyZ2VibmlzIChHcmltbWJvcm4sIDEzLiBTZXAgMTk5NCwgMTc6MjI6NTcpOgoKVGphLCBUaG9yaW4sIGRhIGhhc3RlIGxlaWRlciByZWNodC4gQWJlciB2aWVyIEhvZXJuZXIgc2luZCBhdWNoIHdhcyB1bmQgd2lyCmhhYmVuIGFuIEVyZmFocnVuZyBnZXdvbm5lbiwgd2llIG1hbiBkaWUgSHlkcmEgYW5nZWhlbiBrYW5uLCBpc3QgYXVjaCB3YXMKd2VydC4KClVuZCB1ZWJlcmhhdXB0LCB3YXMgd29sbGVuIHdpciBzY2hvbiBtaXQgZXA/IEJyaW5ndCBkb2NoIGVoIG5peCAob2RlciBrYXVtCndhcykuLi4KClVuZ2xhdWJsaWNoIHN0b2x6IGF1ZiBzZWluIEhvcm46CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJFOiBUb2V0ZXIgKFRvZXRlciwgMTMuIFNlcCAxOTk0LCAxODozODozMyk6Ck5lZS4uLiBlaW4gV29scGkgd2FycyBuaWNodCAqZ3JpbnMqLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSRTogVG9ldGVyIChGbGludG5haWwsIDEzLiBTZXAgMTk5NCwgMTk6NDg6NTApOgpobS4uLmR1IHNlbGJzdCB2aWVsbGVpY2h0Li4uYWxzIEF1ZnRyYWdnZWJlcj8/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSZTogUkU6IFRvZXRlciAoVG9ldGVyLCAxMy4gU2VwIDE5OTQsIDE5OjUxOjQ0KToKTmVpbiBhdWNoIGxlaWRlciBmYWxzY2ggOykuIFRpcDogRGVyIE1vZXJkZXIgdHJlaWJ0IGluIGRlciBOYWVoZSB2b24gUFYgc2VpbgpVbndlc2VuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWVwaGlzdG8gKEFzbW9kaXMsIDEzLiBTZXAgMTk5NCwgMjA6MTQ6MTEpOgpIbW0sIHdhcyBpY2ggbmljaHQgc2NobGFjaHRlID8KTWFnaWVyIGhhYiBpY2ggbm9jaCBuaWNodCBnZXNjaGxhY2h0ZXQgOikKCiAgICAgICAgICAgICAgICAgICAgICAgICBDaWFvLCBBc21vZGlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpxdWl6IChUb2V0ZXIsIDE0LiBTZXAgMTk5NCwgMTM6NDA6NTMpOgpEaWUgTG9lc3VuZzoKW1RvZDpdIEVpbiBHb2JsaW5yaW5nIGhhdCBnZXJhZGUgVG9ldGVyIHVtZ2VicmFjaHQuCjooClBTIGRlciBSaW5nIHZvbSBTY2hsYW1tZHJhY2hlbiBpc3QgZWggdmllbCBiZXNzZXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnJlLXRvZXRlciAoVGhvcmluLCAxNC4gU2VwIDE5OTQsIDE0OjAxOjM2KToKTmFqYSwgYmVzc2VyIHNjaG9uLCBhYmVyIHdlbm4gaWNoIGRlbiAyLiBSaW5nIG51ciBhbGxlIDEwIE1pbnV0ZW4gZWluc2V0emVuCmthbm4gb2RlciBzbywgZGFubiBoYWIgaWNoIGxpZWJlciBiZWlkZSA6KSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYXNzc3NzISAoWmFyZG96LCAxNS4gU2VwIDE5OTQsIDE3OjI0OjIzKToKRGllIFJ1YnJpayBpc3Qgd2lya2xpY2ggdWViZWwgdW5kIGxhbmd3ZWlsaWchISEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhhc3Nzc3MhIChaYXJkb3osIDE1LiBTZXAgMTk5NCwgMTc6MjQ6NDApOgpNYWNodCB3ZWl0ZXIgc28gISEhISEKOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWYgZWluZW4gUmVzZXQgd2FydGVuZCAoQXJhbnlhLCAxNi4gU2VwIDE5OTQsIDE3OjE5OjA0KToKVGphLiBHdXQgc28gbmUgUnVicmlrLiBFY2h0IHdpY2h0aWcgZnVlciBvZWRlIE1vbWVudGUgYXVmIGVpbmVyIGVpbnNhbWVuCkluc2VsLgpXZW5uIG1hbiBhdWZuIFJlc2V0IHdhcnRldCB1bmQgZnJpZXJ0LCBrZWluZSBHdW1taWJhZXJjaGVuIGRhYmVpaGF0IHVuZApkaWUgWmVpdHVuZyBhdXNnZWxlc2VuIGlzdCwgZGEgZnJldXQgbWFuIHNpY2ggaW0gR3J1bmRlIHNlaW5lcyBIZXJ6ZW5zIHVlYmVyCnNjaG1hcnJuCk9oISBkZXIgUmVzZXQgaXN0IGRhIQoKQXJhbnlhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuaXggbmV1ZXMgYXVmIGRlciB3ZWx0IChHdWxkdWthdCwgMTguIFNlcCAxOTk0LCAxMzoxODowOCk6ClNvLCAxMzAwLiBzZWl0IHNhbXN0YWcgbWl0dGFnIGtlaW4gbmV1ZXIgYXJ0aWtlbCBpbiBkZXIgemVpdHVuZy4gZWNodApsYW5nd2VpbGlnIGhpZXIgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbml4IG5ldWVzIGF1ZiBkZXIgd2VsdCAoU2lsdmFuYSwgMTguIFNlcCAxOTk0LCAxNTo0MDo1Myk6CkphdSEgRGFzIGthbm5zdCBkdSBMQVVUIHNhZ2VuIQo7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFjaCwgamEhIEVzIGdpYnQgamEgbm9jaCAxMDAgUHVua3RlISAoU2lsdmFuYSwgMTguIFNlcCAxOTk0LCAxNTo0NDoyNyk6CkljaCBtdXNzIGphIG5vY2ggZGllIDEwMCBQdW5rdGUgbG9zd2VyZGVuLi4uLgoKQWxzbyBoaWVyIG1laW5lIEZyYWdlOiBXaWUgbGFuZyBpc3QgZGVyIGxhZW5nc3RlIG1vZWdsaWNoZSBLbnVkZGxlcj8gKGluCkJ1Y2hzdGFiZW4pIEljaCBtb2VjaHRlIGdlcm4gZGVuIEJld2VpcyBoaWVyIGF1ZiBtZWluZW0gQmlsZHNjaGlybSBzZWhlbiEKCktudWRkZWxzdWVjaHRpZyAtIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcnRlbiBhdWYgUkVTRVQgKEFyYW55YSwgMTkuIFNlcCAxOTk0LCAxNDo1OToxNyk6CnZvbiBTYW11ZWwgQm9va2xldAoKR2FzdCAxOiBUYWchCkRlciBQbGF5ZXI6ICh2ZXJzdWNodCwgZGFzIFN0dWVjayBIb2x6IHp1IGZpbmRlbikgSGkhCkdhc3QgMTogV2llIGdlaHQncz8KRGVyIFBsYXllcjogKGxhbGx0KQpHYXN0IDE6ICh2ZXJzY2h3aW5kZXQgbmFjaCBTdWVkb3N0ZW4gaW4gZGVyIEt1bGlzc2UpCkRlciBQbGF5ZXI6IChzY2hsYWVndCBzaWNoIG1laHJmYWNoIG1pdCBkZXIgZmxhY2hlbiBIYW5kIGFuIGRlbiBTY2hhZWRlbCkKICAgICAgICAgICAgUmVlZWVlcy4uLiAoZGVyIFJlc3QgZ2VodCBpbSBSb2VjaGVsbiB1bnRlcikKRGVyIE1hZ2llcjogKGtvbW10IG1pdCBlaW5lciBwaGFudGFzdGlzY2hlbiBJbnRyb21lbGR1bmcgaGVyZWluKSBOYSwgUGxheWVyPwpEZXIgUGxheWVyOiAocnV0c2NodCBhdWYgZGVuIEtuaWVuKSBSZXNldCEgUmVzZXQhIFdhbm4ga29tbXQgUkVTRVQsIEV1ZXIKICAgICAgICAgICAgSG9jaHdvaGxnZWJvcmVuPwpEZXIgTWFnaWVyOiAobGFlY2hlbHQgbXlzdGlzY2gpIERhYWFhcyBkYXVlcnQhCkRlciBNYWdpZXIgdmVyc2Nod2luZGV0IG1pdCBlaW5lbSBob2VobmlzY2hlbiBMYWNoZW4gaW4gZGVyIEt1bGlzc2UuCgpEZXIgUGxheWVyIGhhZW5ndCBzaWNoIGFuIHNlaW5lbSBTY2h1aGJhbmQgYXVmIHVuZCBzdGlyYnQuCgpbVG9kOl0gRWluIFNjaHVoYmFuZCBoYXQgc29lYmVuIERlbiBQbGF5ZXIgdW1nZWJyYWNodC4uLgoKVm9yaGFuZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcnRlbiBhdWYgUkVTRVQgKEJvaW5nLCAxOS4gU2VwIDE5OTQsIDE3OjI0OjMyKToKRGVyIGxldHp0ZSBBcnRpa2VsIGtvZW5udGUgamEgZmFzdCBuYWNoICdrdWx0dXInLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUcmFldW1lcmVpZW4uLi4gKEJ1bmdsZSwgMTkuIFNlcCAxOTk0LCAxOTozNToxMyk6CkhhbGxvZWNoZW4gISEhCgpIYXR0ZSBlaW5lbiBib2VzZW4gVHJhdW0gaGV1dCBOYWNodC4gOikgRXMgZ2luZyB1bSdzIE1VRC5JY2ggaGFiIGRpZSBnYW56ZQpHZXNjaGljaHRlIGRhbm4gYWxzIEVudHp1Z3NlcnNjaGVpbnVuZyBpbnRlcnByZXRpZXJ0ICh3YXIgamEgaW1tZXJoaW4gc2Nob24KZWluZSBoYWxiZSBXb2NoZSBuaWNodCBkYSA6KSB1bmQgZGEgYmluIGljaCBhbHNvIHdpZWRlci4KSmV0enQgYWxzbyBkZXIgVHJhdW0gKGluIGdyb2JlbiBadWVnZW4sc293ZWl0IGljaCBtaWNoIGVyaW5uZXJuIGthbm4gLSBkYSB3YXIKbm9jaCB2aWVsIG1laHIgKSA6CgpBbmdlZmFuZ2VuIGhhdCdzIGRhbWl0LGRhc3MgaXJnZW5kc29laW4ga29taXNjaGVyIFdldHRiZXdlcmIgd2FyLCBpY2ggZ2xhdWIKZnVlcidzIEd1aW5uZXNzLUJ1Y2ggZGVyIFJla29yZGUsIHdvIGVzIGRhcnVtIGdpbmcsbW9lZ2xpY2hzdCBsYW5nZSBpbiBkZXIKQmFkZXdhbm5lIHp1IHNpdHplbiAoZGFzIGtvZW5udGUgbWFuIHVlYnJpZ2VucyBhdWNoIGFscyBFbnR6dWdzZXJzY2hlaW51bmcKZGV1dGVuICpzY2hudWVmZmVsKiA6KSB1bgp1bmQgZGFzIEdhbnplIG9obmUgd2FzIHp1IGVzc2VuLkljaCB3YXIgbmF0dWVybGljaCBkYWJlaS4gOikgQWxzbyBoYWJlbiB3aXIKZG9ydCAobWluZGVzdGVucyAxMCBMZXV0ZSkgaW4gZWluZW0ga2xlaW5lbiBCYWRlemltbWVyIGdlaG9ja3QsZGllIEJhZGV3YW5uZQpoYXQgZ2FyIG5pY2h0IGdlcmVpY2h0IGZ1ZXIgYWxsZS5FaW5pZ2UgaGF0dGVuIGF1Y2ggd2FzIHp1IGVzc2VuIG1pdCxCYW5hbmVuCnVuZCBSaXR0ZXIgU3BvcnQsd2FzIGRpZQpKdXJ5IGFiZXIgdWViZXJoYXVwdCBuaWNoIGdlc3RvZXJ0IGhhdC5KZWRlbmZhbGxzIGlzdCBlcyBtaXIgZGFubiBpcmdlbmR3YW5uCnp1IGxhbmd3ZWlsaWcgZ2V3b3JkZW4gdW5kIGljaCBiaW4gcmF1c2dlZ2FuZ2VuLkRhIHdhciBkYW5uIGFsbGVzIHZlcmVpc3QgdW5kCldpbnRlciB1bmQgc28gKGRpcmVrdCB2b3IgZGVyIEJhZGV6aW1tZXJ0dWVyKSB1bmQgZWluIGtsZWluZXIgQmFjaCBmbG9zcyBkYQpsYW5nIG1pdCBlaW5lbSBTcHJ1bmd0dXJtCmFtIFVmZXIuTHVzdGlnZXMgQmFkZXRyZWliZW4uS2VpbmVuIGhhdCBkaWUgS2FlbHRlIGdlc3RvZXJ0LldhciBlY2h0Cmx1c3RpZyxlcyBnYWIgYXVjaCAnbmUgUnV0c2NoZS5TbyxqZXR6dCBmZWhsdCBtaXIgJ24gU3R1ZWNrLi4uCi4uLkljaCBzdGVoZSBqZXR6dCBhbHNvIGluIGlyZ2VuZHdlbGNoZW4gR2FlcnRlbiB1bmQgSG9lZmVuIHJ1bSB6d2lzY2hlbgp2ZXJmYWxsZW5lbiB1bmQgdWViZXJ3YWNoc2VuZW4gSG9semh1ZXR0Y2hlbi5JcmdlbmR3aWUga29tbXQgbWlyIGRhcyBnYW56ZQpiZWthbm50IHZvci5TZWx0c2FtIGF1Y2ggZGllIEF1ZnRlaWx1bmcgZGVzIGdhbnplbiBBcmVhbHM6bGF1dGVyIHJlY2h0ZWNraWdlClJhZXVtZS5VbmQgZGFubgpkYWVtbWVydCdzIG1pciA6IERhcyBpc3QgZWluIE1VRCAhIEltIHNlbGJlbiBBdWdlbmJsaWNrIHdlaXNzIGljaCBhdWNoLHdvCmdlbmF1IGljaCBtaWNoIGJlZmluZGUgOiBuYWVtbGljaCBpbSBEb3JmIGRlcyBrcmllZ2VyaXNjaGVuIHVuZCB1ZWJlcmF1cwphZ2dyZXNzaXZlbiBTdGFtbXMgZGVyIFRldG5la2VuIG9kZXIgc28gKGF1ZiBUYW1pYmFyIGdpYnQncyBkb2NoIHNvd2FzIG9kZXI/CikuCkRhIHdhcidzIGF1Y2ggc2Nob24genUgc3BhZXQuUGxvZXR6bGljaCBlaW4ga2F1bSB6dSBiZXNjaHJlaWJlbmRlcwpLcmllZ3NnZWhldWwgdm9uIGFsbGVuIFNlaXRlbiBhdXMgZGVtIGJpcyBkYWhpbiBhdXNnZXN0b3JiZW5lbiBEb3JmLldlZ3Jlbm5lbgpnaW5nIGthdW0sZGEgLSB3aWUgaW0gVHJhdW0gc28gdWVibGljaCAtIEd1bW1pYmVpbmUuSXJnZW5kd2llIGJpbiBpY2ggZGFubgphYmVyIGRvY2ggbm9jaCByYXVzZ2Vrb21tZW4sYQphbiBzb25lciBrb21pc2NoZW4gTWlzY2h1bmcgYXVzIEFkbGVyIHVuZCBUcnV0aGFobiB2b3JiZWkuSWNoIHN0YW5kIGpldHp0CmFsc28gYXVmIGVpbmVtIEZlbGR3ZWcsbGlua3Mgdm9yIG1pciBpbSBtYW5uc2hvaGVuIEdyYXMgdW1oZXJzdG9semllcmVuZCBlaW5lCnp3ZWl0ZSBBdXNnYWJlIGRlcyBUcnV0YWRsZXJzLGV0d2EgZWluZW4gTWV0ZXIgZ3JvZXNzZXIgYWxzIGljaCB1bmQgbWl0CnZlcmRhbW10IGxhbmcKbGFuZ2VtIFNjaG5hYmVsLHJlY2h0cyBoaW50ZXIgZWluZW0gV2VpZGV6YXVuICBkZXIgU2Vuc2VubWFubi5EYSBpY2ggbmljaAp3dXNzdGUgd2hhdCB0byBkbyBoYWIgaWNoIG1pY2ggZXJzdCBtYWwgZ2FueiBydWhpZyB2ZXJoYWx0ZW4sZGFtaXQgbWljaCBkZXIKQWRsZXIgbmljaHQgZW50ZGVja3QuVGF0IGVyIGFiZXIgZG9jaC4KVW5kIGdyaWZmIG1pY2ggc29mb3J0IGFuLkhhdHRlIHVlYmVyaGF1cHQga2VpbmUgQ2hhbmNlLkJpbiBuaWNodCBtYWwgenVtCkF1c2hvbGVuIGdla29tbWVuLgpHbHVlY2tsaWNoZXJ3ZWlzZSBrYW0gZGFubiBlaW4gZ2xhdHprb2VwZmlnZXIgZmV0dGVyIE1vdG9yYWRmYWhyZXIgbWl0CnZlcmdhbW1lbHRlbiAgWmFlaG5lbiB2b3JiZWkgZGVyIHNpY2ggc29mb3J0IGluIG1pY2ggdmVybGllYnQgaGF0IHVuZCBuYWhtCm1pY2ggbWl0LkhhdHRlIHdvaGwgaXJnZW5kd2VsY2hlIEt1cmllcmRpZW5zdGUgenUgZXJsZWRpZ2VuKCBQb3N0cXVlc3Q/IDopLkF1ZgphbApBdWYgYWxsZSBGYWVsbGUgd2FyIGljaCBlcnN0IG1hbCBnZXJldHRldCB1bmQgYmluIGRhbm4gYXVmZ2V3YWNodC4KCglXZWlyZCxpc24ndCBpdD8gICAuLi4udW5kIGxhbmcuIDopCgoJCVN1ZXNzZSBUcmFldW1lIHd1ZW5zY2h0IGV1Y2ggRXVlciBCdW5nbGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhcnRlbiBhdWYgcmVzZXQgKEdyaW1tYm9ybiwgMjAuIFNlcCAxOTk0LCAwMzowMToyMyk6CgpGYWxzY2gsIEJvaW5nLiBEaWVzZXIgYXJ0aWtlbCBnZWhvZXJ0IGVpbmRldXRpZyBuYWNoIGQuZnJpZWRob2Ygb2RlciBnZW5hdWVyOgpkLmJhdW1taXRudXJlaW5lbWFzdGRlbmVybmljaHRnZXJuZXZlcmxpZXJ0Li4uCgpBdXMgbGVpZHZvbGxlciBFcmZhaHJ1bmc6CiAgICAgICAgICAgICAgICAgICAgICAgICBHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2FydGVuIGF1ZiByZXNldCAoQm9pbmcsIDIwLiBTZXAgMTk5NCwgMTI6NDQ6NTkpOgpOYWphLCBpY2ggZ2xhdWJlIGVpbmUgcnVicmlrIGQucG9sYXIuZnJpZWRob2YgYnJhdWNoZW4gd2lyIG5vY2ggbmljaHQsCm9kZXIgZXR3YSBkb2NoPyA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbW1lciBub2NoIFJlc2V0cy4uLi4gKFB1bWEsIDIwLiBTZXAgMTk5NCwgMTI6NTM6MTApOgpBbnRob255J3MgTGF3IG9mIEZvcmNlOgoKCURvbid0IGZvcmNlIGl0LCBnZXQgYSBsYXJnZXIgaGFtbWVyLgoKUFVNQQoKCgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhcnRlbiBhdWYgUkVTRVQgKEZsaW50bmFpbCwgMjAuIFNlcCAxOTk0LCAxNToxMjozMik6CmFiZXIgbGVpZGVyIG51ciBmYXN0Li4ub2RlciBnb3R0c2VpZGFuayA/Pz8KCiAgIEZsaW50LCBtYWwgd2llZGVyIGRhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmV0enQgZnVlbGx0IGRpZXNlUnVicmlrIGRvY2ggYml0dGUuLi4gKEhhcmRpbCwgMjEuIFNlcCAxOTk0LCAwOToyNTo1OSk6CgouLi4gZGFtaXQgbWFuIHdhcyB6dW0gTGVzZW4gaGF0LiBQYXN0YS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZ1ZXIgZGllLCBkaWUgaGV1dGUgbW9yZ2VuIG5pY2h0IGRhIHdhcmVuOiAoSGFyZGlsLCAyMS4gU2VwIDE5OTQsIDA5OjQxOjMwKToKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKV0FSTklORyEgTlVNIE9GIENBTExfT1VUUyBleGNlZWRlZCAoMTAwMCkhIFdJTEwgU1RPUCBBVCAxMjAwIQpXQVJOSU5HISBOVU0gT0YgQ0FMTF9PVVRTIGV4Y2VlZGVkICgxMDAwKSEgV0lMTCBTVE9QIEFUIDEyMDAhCldBUk5JTkchIE5VTSBPRiBDQUxMX09VVFMgZXhjZWVkZWQgKDEwMDApISBXSUxMIFNUT1AgQVQgMTIwMCEKCgpVbmQgbnVuIGRpZSAxMDAtUHVua3RlLUZyYWdlOiBpc3QgZGEgbmljaHQgZWluIFJlYm9vdCBiZXNzZXIgPz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDYWxsb3V0cyAoR3JpbW1ib3JuLCAyMS4gU2VwIDE5OTQsIDEwOjAzOjAzKToKTmVpbiBIYXJkaWwuIFJhdXNnZWhlbiBrYW5uc3QgRHUgaW1tZXIgbm9jaCBwZXJzb2VubGljaCBmdWVyIERpY2gsIHVuZCBkZXIKU3B1ayBoYXQga2VpbmUgMTUgbWluIGdlZGF1ZXJ0LgpOaWNodCBqZWRlciBpc3QgenUgZGVtIFplaXRwdW5rdCBvaG5lIEF1c3J1ZXN0dW5nIGdld2VzZW4gdW5kIHNhZyBzZWxic3Q6IHdhcgpkZXIgV2V0dGxhdWYgZGVyIE1hZ2llciBnZWdlbiBkaWUgY2FsbG91dHMgbmljaHQgc3Bhbm5lbmQ/CkRpZSBlaWdlbnRsaWNoZSBGcmFnZSBsYXV0ZXQ6IE11c3Mgc293YXMgYXVmIFNwaWVsZXJiaWxkc2NoaXJtZW4gZXJzY2hlaW5lbj8KCkVybGVpY2h0ZXJ0IHVuZCBzdG9seiBhdWYgZGllIE1hZ2llciAoYmVzb25kZXJzIFRyeWZhbik6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZnVlciBkaWUsIGRpZSBoZXV0ZSBtb3JnZW4gbmljaHQgZGEgd2FyZW46IChTaWx2YW5hLCAyMS4gU2VwIDE5OTQsIDEwOjE4OjU1KToKSHVjaCBzbyB2aWVsZT8gSGFiIGljaCBtaWNoIHZlcnphZWhsdCwgb2RlciBoYWIgaWNoIG1pY2ggenUgZnJ1ZWggYXVzZ2Vsb2d0Pwo7LSkgICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ2FsbG91dHMgKFNpbHZhbmEsIDIxLiBTZXAgMTk5NCwgMTA6MjI6MjMpOgpOdW4sIG9iIGRhcyBhdWYgZGVuIFNwaWVsZXJiaWxkc2NoaXJtZW4genUgc2VoZW4gc2VpbiBtdXNzLCBrYW5uIGljaCBhdWNoCm5pY2h0IHNhZ2VuLiBNaWNoIGhhdCBlcyBhbHMgU3BpZWxlciBuaWUgZ2VzdG9lcnQuIE1hbiBrb25udGUgc2ljaCB6dW1pbmRlc3QKc2VlbGlzY2ggYXVmIGRlbiBBYnN0dXJ6IHZvcmJlcmVpdGVuICA7LSkKQWJlciB6dW0gVGhlbWEgU3Bhbm51bmc6IER1IGhhZXR0ZXN0IG1hbCBsZXNlbiBzb2xsZW4sIHdhcyBhdWYgbXJ1ZiB1bmQgZGVuCk1hZ2llci1LYW5hZWxlbiBsb3Mgd2FyISBEQVMgd2FyIHNwYW5uZW5kLi4uLiA7LSkKU2lsdmFuYSAtIGdpYnQgaGV1dGUgenUgYWxsZW0gaWhyZW4gU2VuZi4uLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBmdWVyIGRpZSwgZGllIGhldXRlIG1vcmdlbiBuaWNodCBkYSB3YXJlbjogKER1cmlhbiwgMjEuIFNlcCAxOTk0LCAxMToxMjoyOCk6CkVuZGxpY2ggbWFsIGVpbiBBcnRpa2VsIGJlaSBkZW0gbWFuIHJpY2h0aWcgd2FzIHp1IGxlc2VuIGhhdCA6LSkKLSBEdXJpYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdXMgamV0enQhIChHcmltbWJvcm4sIDIxLiBTZXAgMTk5NCwgMjI6MTk6MTQpOgpbVmVybGVndCB2b24gcG9saXplaS5iZXNjaHdlcmRlbiwgR3JpbW1ib3JuLCAyMC4gU2VwIDE5OTQsIDAyOjU0OjUyXToKCkxpZWJlbmQgZ2VybmUsIEZyZXVuZCEgV2llIGdpbmcgbm9jaCBnbGVpY2ggZGFzIEFydGlrZWx2ZXJsZWdlbi4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplaW4gZ2FuemVyIHRhZz8gKENpZmVyLCAyMi4gU2VwIDE5OTQsIDE3OjQ0OjQxKToKRWluIGdhbnplciBUYWcgb2huZSBlaW5lbiBBcnRpa2VsIGluIGRlcgpTY2htYXJybi1SdWJyaWs/IERhcyBrYW5uIGljaCBuaWNodCB6dWxhc3NlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuIChHdWxkdWthdCwgMjIuIFNlcCAxOTk0LCAyMDoyMTowNyk6CmhlLCBtaXIgZmFlbGx0IHdpcmtsaWNoIG5peCBtZWhyIGVpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobWFycm4gKFRob3JpbiwgMjIuIFNlcCAxOTk0LCAyMDoyODowNik6Ck1pciBmYWVsbHQgbnVyIGVpbiwgZGFzcyBpY2ggc2Nob24gd2llZGVyIG1hbCBhdWYgZGVtCmZyaWVkaG9mIGF1ZnMgRHluYW1pdCB3YXJ0ZSA6KCgoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2htYXJybjIgKFRob3JpbiwgMjIuIFNlcCAxOTk0LCAyMDozMjo0MCk6CldhciBuYXR1ZXJsaWNoIFNjaG1hcnJuLCBpbSBzZWxiZW4gQXVnZW5ibGljayBhbHMgaWNoIGFuZmluZyB6dSBzY2hyZWliZW4Ka2Ftcy4gVW5kIGF1c3NlcmRlbTogZXMgd2FyIG5hdHVlcmxpY2ggaW4gZGVuIEthdGFrb21iZW4gKCpzY2hhZW0qKS4KQWJlciBwcm9tcHQgbXVzcyBpY2ggamV0enQgYXVmIGRlbiBBc3Qgd2FydGVuLCBhYmVyIGRpZXNtYWwgd2lya2xpY2ggQVVGIERFTQpGUklFREhPRi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuLXJlc2V0ID8/IChUaG9yaW4sIDIyLiBTZXAgMTk5NCwgMjA6MzM6MzYpOgpIZXksIGlzdCBlaW4gZ3V0ZXIgU2VydmljZSA6IGltbWVyIHdlbm4gaWNoIGVpbmVuIHNjaG1hcnJuLWFydGlrZWwgc2NocmVpYmUsCmlzdCBjYSAxMCBzZWt1bmRlbiBkYW5hY2ggZGVyIHJlc2V0Li4uIGRhcyBuZW5uIGljaCBwcm9tcHRlIGJlbG9obnVuZyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWlzdCAoRGFuY2VyLCAyMy4gU2VwIDE5OTQsIDAwOjQzOjQxKToKRGFzIGdpYnRzIGRvY2ggbmljaHQhCkRhIGZhaHIgaWNoIG1hbCB6dSBNY0RvbmFsZHMgaW5zIERyaXZlSW4gdW5kIHdhcyBwYXNzaWVydD8/IFdhZWhyZW5kIGljaApnZW51ZXNzbGljaCBhdWYgZGVtIFBhcmtwbGF0eiBpbiBkZW4gSGFtYnVyZ2VyIGJlaXNzZSwgc3RyYWhsdCBhdWYgZWlubWFsCmVpbiBQb2xpemlzdCBtaXQgc2VpbmVyIEZ1bnR6ZWwgaW5zIEF1dG8gdW5kIGZyYWd0LCBvYiBkYXMgbWVpbiBXYWdlbgp3YWVyZSEgTmFqYSwgYWxzIGljaCBpaG0gZGFubiBhbnR3b3J0ZXRlLCBkYXNzIGVzIGRyYXVzc2VuIG51ciBzbyBrYWx0Cmdld2VzZW4gd2FlcmUgdW5kIGRhcyBoaWVyIGRlciBlcnN0IGJlc3N0ZSB3YXJtZSBPcnQgenVtIEF1c3J1aGVuIGdld2VzZW4Kd2FlcmUsIGhhdCBlciBkb2NoIHRhdHNhZWNobGljaCAzMCBNaW51dGVuIGdlYnJhdWNodCwgdW0gZmVzdHp1c3RlbGxlbiwKb2IgbWVpbiBBdXNwdWZmIGF1Y2ggc2VyaWVubWFlc3NpZyB1bmQgdHVldnp1Z2VsYXNzZW4gaXN0Li5obXBmLgpNZWluZW4gSGFtYnVyZ2VyIGtvbm50ZSBpY2ggZGFubiBhdWNoIGltIFN0ZWhlbiBlc3Nlbi4uLmtlaW4gV3VuZGVyLCBkYXNzCmVzIGltbWVyIG1laHIgS3JpbWluYWxpdGFldCBnaWJ0LCB3ZW5uIGRpZSBLZXJsZSBhbGxlIHVudGVyIG1laW5lbSBBdXRvCmxpZWdlbi4uLi4KCk5pZSB3aWVkZXIgenUgTWNEb25hbGRzIGdlaGVuZAoKRGFuY2VyCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTVBBLUxvdHRvIChIYXJkaWwsIDIzLiBTZXAgMTk5NCwgMTA6NTc6MDUpOgpXaWUgd2FlciBlcyBtaXQgZWluZW0gTG90dG8gaW4gZGVyIE1QQSA/IEplZGVuIFRhZyB3ZXJkZW4gNiBhdXMgNDkgQXJ0aWtlbG4sCmRpZSBudXIgTWFnaWVybiB6dWdhZW5nbGljaCBzaW5kLCB6dWZhZWxsaWcgYXVzZ2V3YWVobHQgdW5kIGluIGRpZSBSdWJpcmsKU2NobWFycm4gdmVybGVndC4gOikKRGFua2UsIEthc3NhbmRyYSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1QQS1Mb3R0byAoSGFra2lra3QsIDIzLiBTZXAgMTk5NCwgMTE6MDM6MzMpOgpBbHNvIGRhIHd1ZXNzdGUgaWNoIGF1Y2ggbm9jaCBlaW5lIGx1c3RpZ2UgdmVyc2lvbjoKSmVkZW4gVGFnIHdpcmQgZWluIFNlaGVyIHp1ZmFlbGxpZyB2b20gQmxpdHogZ2V0cm9mZmVuIHVuZCBmaW5kZXQKc28gZWluZW4gbWVociB6dWZhZWxsaWdlbiBUb2QuIDstKSBEYXMgd3VlcmRlIGF1Y2ggZGllIFRvcC1MaXN0ZSBldHdhcwplbnR6ZXJyZW4uCkhha2tpa2t0LCB3aWxsIGRlbiBlcnN0ZW4gQmxpdHogd2VyZmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExvdHRvIChIYXJkaWwsIDIzLiBTZXAgMTk5NCwgMTE6MjA6NTgpOgoKT2gsIGRhIGdhZWIgZXMgbm9jaCBlaW5lIGdhbnogYW5kZXJlIExvdHRvLU1ldGhvZGU6CkplZGVuIFRhZyB3aXJkIGVpbiBNVURkZXIsIGRlc3NlbiBOYW1lIG1hbiBuaWNodCBzY2hyZWliZW4ga2Fubiwgb2huZQptaW5kZXN0ZW5zIDMgUmVjaHRzaHJlaWJlZmVobGVyIHJlaW56dWJla29tbWVuIG9kZXIgc2ljaCBkaWUgRmluZ2VyIGRhYmVpIHp1CmJyZWNoZW4sIHNwb250YW4gaW4gS3VydCBvZGVyIEZyb3R6IG9kZXIgS2xhdXMgdW1iZW5hbXN0LiBNaXQgYWxsZW4gRm9sZ2VuLgpOaWNodCB3YWhyLCBIYWtraWtrdCA/IDotKSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2htYXJybiEgKEhhcmRpbCwgMjMuIFNlcCAxOTk0LCAxMToyMjozNik6ClNjaHJlaWJ0IG1laHIgU2NobWFycm4hIERpZSBSdWJyaWsgaXN0IGRvY2ggZGFmdWVyIGRhLCBkYW1pdCBtYW4gc2VsYmVyIHdhcwp6dW0gTGVzZW4gaGF0LCB3ZW5uIG1hbiBnZXJhZGUgcmVnZW5lcmllcmVuIG11c3MsIHVuZCBuaWNodCwgZGFzcyBtYW4gYWxsZXMKc2xlYmVyIHNjaHJlaWJlbiBtdXNzLiBEYXMgYnJpbmd0IHp3YXIgYXVjaCBkaWUgWmVpdCBydW0sIGlzdCBhYmVyIFNjaG1hcnJuLgpBbHNvIEdyaW1tYm9ybiwgbmljaHQgbmV0enRvdCBydW1tYWNoZW4sIFNjaHJlaWJlbiAhIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlOiBMb3R0byAoSGFra2lra3QsIDIzLiBTZXAgMTk5NCwgMTE6MzM6MTgpOgpCZXNzZXIgbm9jaCwgbWFuIGZ1ZWd0IGVpbmlnZSBLb25zb25hbnRlbiBpbiBkaWUgYWNoIHNvIGxhbmd3ZWlsaWdlbgpTcGllbGVybmFtZW4gZWluIQpOaWNodCB3YWhyLCBIYXJyZGRpbGw/IDotKSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlOiBSZTogTG90dG8gKFNpbHZhbmEsIDIzLiBTZXAgMTk5NCwgMTI6MDg6NTUpOgpKZXR6dCB3ZWlzcyBpY2ggZW5kbGljaCwgd2llIGR1IHp1IGRlaW5lbSBOYW1lbiBnZWtvbW1lbiBiaXN0LiAgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTVBBLUxvdHRvIChNb3Jnb3RoLCAyMy4gU2VwIDE5OTQsIDEyOjE3OjU4KToKQXUgamEuLi4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlc2V0PyAoSGFyZGlsLCAyMy4gU2VwIDE5OTQsIDE0OjU0OjMyKToKV2llIHdhciBkYXMgPyBXZW5uIG1hbiBoaWVyIGVpbmVuIEFydGlrZWwgc2NocmVpYnQsIGtvbW10IDEwIHNlayBzcGFldGVyIGRlcgpSZXNldCA/CkRhcyB3aWxsIGljaCBqZXR6dCBzZWhlbi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG1hcnJuIChIYXJkaWwsIDIzLiBTZXAgMTk5NCwgMTQ6NTc6MDMpOgpWb24gd2VnZW4uIEpldHp0IGlzdCBkaWUgU2F1ZXJzdG9mZmZsYXNjaGUgc2Nob24gZmFzdCBsZWVyIHVuZCBpbW1lciBub2NoCmtlaW4gZmllc2VyIFNhZWdlc2Nod2VydC1XYWVjaHRlciBpc3QgZGEuCkhybXBmZ2xtcGYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2NobWFycm4gKEVuZ3l3dWNrLCAyMy4gU2VwIDE5OTQsIDE1OjI1OjU3KToKRGFzIGhlaXNzdCBuaWNodCAiSHJtcGZnbG1wZiIgc29uZGVybiAiaG56bGVncnVtcGYiIDspKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIkhycmdybXBmIiAoWWVuZGksIDIzLiBTZXAgMTk5NCwgMTU6NDI6MDkpOgpoZWlzc3QgZGFzLCB1bmQgbmljaHRzIGFuZGVyZXMhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUb1RvLVRpcCAoR3VsZHVrYXQsIDIzLiBTZXAgMTk5NCwgMTc6MDA6MDUpOgpJY2ggaGFldHRlIGRhIGVpbiBuZXVlcyBTcGllbDoKCkFsbGUgU3BpZWxlciB0aXBwZW4gZGVuIFplaXRwdW5rdCBkZXMgbmFlY2hzdGVuIENyYXNoZXMuIERhYmVpIHNpbmQgYWxsZQpaZWl0ZW4gdm9uIDAgYmlzIDI0IHN0dW5kZW4gZXJsYXVidC4KRGVyamVuaWdlLCBkZXIgZGVuIENyYXNoemVpdHB1bmt0IGFtIGdlbmF1ZXN0ZW4gdGlwcHQsIGVyaGFlbHQgZWluZSBrb21wbGV0dGUKbmV1ZSBhdXNydWVzdHVuZy4KQ2lhbywgR3VsRHVrYXQsIEhlcnJzY2hlciBhdWYgRFNOCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVG9Uby1UaXAgKENpZmVyLCAyMy4gU2VwIDE5OTQsIDE3OjE3OjAyKToKVW5kIHdlciBmaW5hbnppZXJ0IGRpZSBBdXNydWVzdHVuZz8gRHU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRvVG8tVGlwIChIYXJkaWwsIDIzLiBTZXAgMTk5NCwgMTc6MjA6NDUpOgpEaWUgQXVzcnVlc3R1bmcgd2lyZCB2b24gQ2F0d2VhemxlIGdlc3BvbnNvcnQuIERlciBuaW1tdCBkb2NoIGR1cmNoIHNlaW5lbgpTZWhlcndldHRiZXdlcmIgZ2VudWcgZWluLiBPZGVyIGplZGVyIFRpcHBlciB6YWhsdCBmcmVpd2lsbGlnIDEwMDAgTXVlbnplbiBhbHMKRWluc2F0eiBlaW4uIElzdCBzbyduZSBBcnQgVmVyc2ljaGVydW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSZTogVG9Uby1UaXAgKENpZmVyLCAyMy4gU2VwIDE5OTQsIDE3OjM3OjA3KToKQ2F0d2VhemxlIGJyYXVjaHQgZGFzIEdlbGQgZG9jaCBmdWVyIGRhcyBTZWhlcmhhdXMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOlRvdG8tVGlwIChHdWxkdWthdCwgMjMuIFNlcCAxOTk0LCAxNzozNzo1NCk6CkZpbmFuemllcmVuIGlzdCBrZWluIFByb2JsZW0sIGljaCB3ZWlzZSBtZWluZSBWb2xrc2JhbmsgYW4sIGVpbmVuIFNjaGVjawphdXNzenVzdGVsbGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKMS4gVGlwIChHdWxkdWthdCwgMjMuIFNlcCAxOTk0LCAxNzozOToyNik6Cm51biwgaWNoIHRpcHBlIGF1ZiBlaW5lIFVwLXplaXQgdm9uIDRoMzQnMjMnJywKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnRvdG90aXAgKENhdHdlYXpsZSwgMjMuIFNlcCAxOTk0LCAxODozMDoyMyk6Ck9rLCBHdWxkdWthdCwgZGFzIG1hY2h0IGRhbm4gMTAwMCBNdWVuemVuIDotKSkpCiBDYXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvdG90aXAgKEdyaW1tYm9ybiwgMjMuIFNlcCAxOTk0LCAxOTowMjoyMSk6CgpTY2hvZW4sIGRhc3MgQ2F0d2VhemxlIGRhIGlzdCwgZGVyIHVucyBsZWl0ZXQgdW5kIGltbWVyIGdlcm5lIGRpZSB1bmRhbmtiYXJhClNjaGllZHNyaWNodGVycm9sbGUgdWViZXJuaW1tdC4uLgpBcmdoLCB6d2VpIExldXRlIHF1YXRzY2hlbiBtaWNoIGFuLCBpY2ggaG9lciBhdWYKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHJlOiByZTogdG90b3RpcCAoRGFuY2VyLCAyMy4gU2VwIDE5OTQsIDE5OjI5OjM0KToKQW56ZWlnZToKQmVzdGVjaGJhcmVyIE1hZ2llciBsb2VzdCBnZWdlbiBndXRlIEJlemFobHVuZyB6dW0gZ2V3dWVuc2NodGVuClplaXRwdW5rdCBlaW5lbiBzaHV0ZG93biBhdXMuIEJldHJhZWdlIGFiIDEwMC4wMDAgTXVlbnplbiB3ZXJkZW4KZXJuc3QgZ2Vub21tZW4gOi0pCgpEZXIgYW5vbnltZSBTYW5kdGlnZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNUEEtTG90dG8gKEFzbW9kaXMsIDIzLiBTZXAgMTk5NCwgMTk6NDk6MzkpOgpEYSBrZW5uZSBpY2ggZWluZSBiZXNzZXJlIFZlcnNpb246CkplZGVuIFRhZyB3aXJkIGVpbiBNYWdpZXIgenVtIFNwaWVsZXIgKExldmVsIDEpIHp1cnVlY2tnZXN0dWZ0IDopCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIENpYW8sIEFzbW9kaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnJlOmJlc3RlY2hsaWNoZXIgbWFnaWVyIChHdWxkdWthdCwgMjMuIFNlcCAxOTk0LCAyMzoyOTo1OCk6CkFscyBIYXVwdGFudGVpbHNlaWduZXIgZGVyIFZvbGtzYmFuayB3ZWlzcyBpY2ggenVmYWVsbGlnLCBkYXNzIHNpZSBnZXJhZGUKdWViZXIgZWluZSBSdWVja2xhZ2Ugdm9uICQxMDAwMDAgdmVyZnVlZ3QuIERlciBWb3JzdGFuZHN2b3JzaXR6ZW5kZSB3dWVyZGUKZ2VybmUgaW4gZWluZW0gS29uc3BpcmF0aXZlbiB0cmVmZmVuIGVpbmVuIFRlcm1pbiB2ZXJlaW5hYmVybi4gV2VuZGUgZGljaApiaXR0ZSBhbiBHYXJhayAoU2NobmVpZGVyKSB1bmQgYmVudXR6ZSBkYXMgQ29kZS1Xb3J0OiBNYXF1aXMuCm9obmUgVW50ZXJzY2hyaWZ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlOiBMb3R0byAoQ2FyYWRocmFzLCAyNC4gU2VwIDE5OTQsIDAxOjM5OjIzKToKQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUhISEhISEhISEhISCEhISEhISEhISEhISEKSUNIIFdJTEwgTklDSFQgS1VSVCBPREVSIEZST1RaIE9ERVIgS0xBVVMgSEVJU1NFTiEhISEhISEhIQoKCiAgQ2FyYWRocmFzIGRlciBld2lnZSBQcm9waGV0IC0gZGVzc2VuIENhcHMtTG9jayBrbGVtbXQgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTpDYXQqIChHdWxkdWthdCwgMjQuIFNlcCAxOTk0LCAxMzo0OToxNyk6ClNvLCBpY2ggaGFiZSBlaW5lbiBTY2hlY2sgdWViZXIgMTAwMCAkLCBkZW4ga2FubnN0IGR1IGJlaSBtaXIgYWJob2xlbiB1bmQgYmVpCmRlciBWb2xrc2JhbmsgZWlubG9lc2VuICh3ZW5uIGJpcyBkYWhpbiBrZWluIHJlYm9vdCB3YXIpCkd1bER1a2F0CihEYW5rZSBhbiBkZW4gTWFnaWVyLGRlciBtaXIgZGVuIFNjaGVjayBnZW1hY2h0IGhhdCA6LSkgKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVlciBHdWxkdWthdCEgKENhcmFkaHJhcywgMjQuIFNlcCAxOTk0LCAxNzozODoyMik6CltNb2VyZGVyOkdlaXN0IGVpbmVyIEFtZWlzZV0gV2llIHNvbGwgZGFzIG5vY2ggZW5kZW4sIEd1bGR1a2F0PwpbQWxsZ2VtZWluOkd1bGR1a2F0XSB3b3csIG1pdCBlaW5lbSBzY2hsYWcgOi0pCgpQYXNzZW5kIGRhenU6CkVzIHdhcmVuIG1hbCAyIEFtZWlzZW4sIGRpZSB3b2xsdGVuIG5hY2ggQXVzdHJhbGllbiByZWlzZW4uCkRvY2ggaW4gQWx0b25hIGF1ZiBkZXIgQ2hhdXNzZWUgZGEgdGF0ZW4gaWhuZW4gZGllIEZ1ZXNzZSB3ZWguCkRydW0gdmVyemljaHRldGVuIHNpZSB3ZWlzZSBhdWYgZGVuIGxldHp0ZW4gVGVpbCBkZXIgUmVpc2UuCgphcm1lIEFtZWlzZW4gKnNjaGx1Y2h6KgoJQ2FyYWRocmFzIGRlciBld2lnIHdlaW5lbmRlIFByb3BoZXQKCQkob2RlciBkZXIgd2VpbmVuZGUgZXdpZ2UgUHJvcGhldD8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmdWVyIGMqIChHdWxkdWthdCwgMjUuIFNlcCAxOTk0LCAyMTozMTo1Nik6CmRhIGljaCBhdWYgZGFzIHNjaGlmZiB3YXJ0ZSwgaGFiIGljaCBldHdhcyB6ZWl0LCBmdWVyIGRpY2ggd2FzIHp1IHNjaHJlaWJlbi4KCkRpZXMgaXN0IGZ1ZXIgZGljaCBDKgoKT29wcyBTY2hpZmYgaXN0IGRhLCBjaWFvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZnVlciBjKiAoQ2FyYWRocmFzLCAyNS4gU2VwIDE5OTQsIDIxOjMzOjI1KToKZGFua2Ugc2VociA6KSkpKSkpCgphYmVyIGljaCBoZWlzcyBuaWNodCBDKiEhISEhIGRhcyBzYWd0IHNjaG9uIEZyZXVuZCB6dSBtaXIgdW5kIGljaCBoYXNzZSBkYXMKKmZsdWNoKgoKd2VubiBzY2hvbiBkYW5uIENhcmEKCSp3aW5rZW5kKglDYXJhZGhyYXMgZGVyIGV3aWdlIFByb3BoZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlIChHdWxkdWthdCwgMjUuIFNlcCAxOTk0LCAyMTozNDoyNik6CnZpZWxsZWljaHQgaXN0IGM/Pz8/Pz8/PyBiZXNzZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZnVlciBjKiAoSGF0ZSwgMjYuIFNlcCAxOTk0LCAxMjo0MzoxMyk6Ckd1bGR1a2F0IGJyYWJiZWx0ZSB3YXMgdm9uOgo+T29wcyBTY2hpZmYgaXN0IGRhLCBjaWFvCgpNaXIgc2NoZWludCBpY2ggbXVzcyBtYWwgZGllIFplaXRlbiBldHdhcyB2ZXJsYWVuZ2VybiwgZGllIGRpZSBTY2hpZmZlCmJyYXVjaGVuLCBkYW1pdCBJaHIgbWVociBzb2xjaGUgQXJ0aWtlbCBzY2hyZWliZW4ga29lbm50IDspCgpIYXRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIChBcmFueWEsIDI2LiBTZXAgMTk5NCwgMTY6MDk6MDgpOgpEYXMgaXN0IGplIGJsb2VkZS4gRWluZW4gZ2FuemVuIGhhbGJlbiBUYWcgbml4IE5ldWVzIGluIFNjaG1hcnJuLiBXaWUgd2FlcidzCm1pdCBkZXIgTWl0dGVpbHVuZyBFdXJlcyBMaWVibGluZ3Nlc3NlbnM/IE1laW5zIGlzdCAtIHdpZSdzIGRlciBadWZhbGwgc28Kd2lsbCAtIEthaXNlcnNjaG1hcnJuLgpBdWYgZGllIEVpbnJpY2h0dW5nIGVpbmVzIE1HLUtvY2hidWNoZXMgZnJldXQgc2ljaAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFyYW55YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEd1bGR1a2F0IChDYXR3ZWF6bGUsIDI2LiBTZXAgMTk5NCwgMTY6MTc6NTQpOgpIbW0sIGM/Pz8/Pz8/PyBrb2VubnRlIGF1Y2ggaWNoIHNlaW4gOi0pCgogQ2F0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYXN0IFJlY2h0ISAoSGFyZGlsLCAyNi4gU2VwIDE5OTQsIDE2OjM0OjQwKToKClN0aW1tdCwgQ2F0LApiZWkgRGVpbmVtIE5hbWVuIHZlcnRpcHBlIGljaCBtaWNoIGF1Y2ggamVkZXMgendlaXRlIE1hbCAtIHdlbm5zIHNjaG5lbGwKZ2VoZW4gc29sbC4gQWxzbzogd2llIHdhZXJlIGVzIG1pdCAiSGlueiIgPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcmUgY2F0IChHdWxkdWthdCwgMjYuIFNlcCAxOTk0LCAxNzowNTozOSk6CktVTlogd2FlcmUgYXVjaCBuaWNodCBzY2hsZWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGllYmxpbmdzZXNzZW4gKEVuZ3l3dWNrLCAyNi4gU2VwIDE5OTQsIDE4OjM4OjEyKToKS2Fpc2Vyc2NobWFycm4/CkFyYW55YSwgRHUgaGFzdCBub2NoIG5pY2h0IG1laW5lIFNwaW5hdGxhc2FnbmUgcHJvYmllcnQhCgpHdXRlbiBIdW5nZXIsIEVuZ3l3dWNrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbnNjaHJlaWJiYXJlIE5hbWVuIC4uLiAoQm9pbmcsIDI2LiBTZXAgMTk5NCwgMjA6MjY6MDQpOgpGYWxscyBlcyBldWNoIG5vY2ggbmljaHQgYXVmZ2VmYWxsZW4gc2VpbiBzb2xsdGU6IEVpbiBlaW5kZXV0aWdlciBBbmZhbmcKZGVzIE5hbWVucyByZWljaHQgYmVpbSBNaXR0ZWlsZW4gLi4uClp1bSBCZWlzcGllbDogZXJ6YWVobCBoYWsgYmxhYmxhYmwsIHNvbGx0ZSBhbiBIYWtraWtrdCBnZWhlbiwgd2VubgprZWluIEhha3NvbnN0d2FzIGRhIGlzdC4KCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRlcHJlc3Npb24gKFN0YWhsZG9ybiwgMjcuIFNlcCAxOTk0LCAwMToxODoyMyk6CmljaCBiaW4gc29vb29vb29vb29vb29vIHRyYXVyaWcuIERpZSBnZWlnZW5xdWVzdCBpc3Qgc29vb29vb29vb29vb29vb28gYmxvZWQuCkVpbiBwYWFyIHZvbiBkZW4gc2VoZXJuIHNpbmQgc29vb29vb29vb29vb29vbyB0ZWlsbmFobXNsb3MuIGljaCBiaW4Kc29vb29vb29vb29vb29vIG11ZWRlIHZvbSBzeW50YXgtcHJvYmllcmVuLiAgaWNoIGhhc3NlIHRyb3kgc29vb29vb29vb28gc2Voci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggYXVmIGRlciBXaWVzZS4uLiAoS25vZXJyeSwgMjcuIFNlcCAxOTk0LCAwMTo1MjowNCk6CltNb2VyZGVyOkdlaXN0IGVpbmVyIEJpZW5lXSBXaWUgc29sbCBkYXMgbm9jaCBlbmRlbiwgQmxhdHRsYXVzPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FydGVuIGF1ZiBkaWUgSm9sbGUgKEtyZXRlaywgMjcuIFNlcCAxOTk0LCAwMjoxMzozMyk6CkhpIQoKCmxhbmd3ZWlsaWcuLi4gVW5kIGpldHp0IGlzdCBkaWUgSm9sbGUgZGEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEd1bGR1a2F0IChDYWx1bSwgMjcuIFNlcCAxOTk0LCAwODo1NjozNSk6Ck1pdCBDKiBrb2VubnRlIGFiZXIgYXVjaCBJQ0ggZ2VtZWludCBzZWluISA6LSkKCkljaCBnbGF1YmUsIGRhIGhhYmVuIHdpciBlaW4gZXJuc3RlcyBQcm9ibGVtLiBOZXVlcyBEaXNrdXNzaW9uc3RoZW1hOgpWZXJtZWlkdW5nIHZvbiBOYW1lbnNrb25mbGlrdGVuIGJlaW0gQmVudXR6ZW4gdm9uIFdpbGRDYXJkcy4KV2VubiBqZW1hbmQgYW4gZWluZXIgd2lzc2Vuc2NoYWZ0bGljaGVuIEF1c2FyYmVpdHVuZyB6dSBkaWVzZW0gVGhlbWEKaW50ZXJlc3NpZXJ0IGlzdCwgbW9lZ2UgZXIvc2llIHNpY2ggdmVydHJhdWVuc3ZvbGwgYW4gbWljaCB3ZW5kZW4uCgogICAgWVRDKgo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRlaWxuYWhtc2xvc2UgU2VoZXIgKEdyaW1tYm9ybiwgMjcuIFNlcCAxOTk0LCAwOTozMzo1Nik6CgpBdWNoIHdlbm5zIG1laHIgb2RlciB3ZW5pZyBuaWNodCBlcm5zdCBnZW1laW50IHdhcjoKSmEsIHdlbm4gaWNoIHZlcnN1Y2hlLCBzdGF0dCBMb2VzdW5nZW4gSGlud2Vpc2UgenUgZ2ViZW4gdW5kIGRhbm4gdm9yZ2VoYWx0ZW4Ka3JpZWdlLCBpY2ggaGFldHRlIHZvbiBkZXIgUXVlc3Qga2VpbmUgQWhudW5nIChpY2gga2FubiBzaWUgTklDSFQgYmxpbmQKc3BpZWxlbiwgbmVpbiksIGRhbm4gd2VyZGUgaWNoIHRlaWxuYWhtc2xvcy4KClNvdmllbCB6dSBlaW5lciB2ZXJzdWNodGVuIEVocmVucmV0dHVuZyB2b24KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHcmltbWJvcm4gZGVtIEF0aGVpc3RlbgoKUC5TLiBBbXVlc2llcnQgaGFiIGljaCBtaWNoIHRyb3R6ZGVtIHVlYmVyIFN0YWhsZG9ybnMgQXJ0aWtlbC4uLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmU6IEd1bGR1a2F0IChDaWZlciwgMjcuIFNlcCAxOTk0LCAxMDoyMDo0Myk6CkFjaCBqYSwgSUNIIGtvZW5udGUgZXMgbmF0dWVybGljaCBhdWNoIHNlaW4hIElzdCBtaXIgbm9jaCBnYXIKbmljaHQgYXVmZ2VmYWxsZW4sIGJpc2hlci4uLgoKQyoqKiouCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMYW5nZXdlaWxlIChHdXlicnVzaCwgMjcuIFNlcCAxOTk0LCAxMToxMjozMSk6CkpldHp0IHNpdHogaWNoIGhpZXIgaW4gZGVyIEhvZWhsZSBkZXMgQm9yZ3MgdW5kIGxhc3MgbWljaCB2b24gTG9jdWxsdXMncwpEYWVtcGZlbiB2b2xsc3Rpbmtlbi4gS29tbSBuaWNodCByYXVzLCBkYSBpY2ggZGVuIEZldWVyYmFsbCBhdWYgZGVuIGZhbHNjaGVuCkJvcmcgZ2V3b3JmZW4gaGFiZS4gTWVpbiBGRS1Kb2IgaXMgcnVubmluZywgYWJlciBpY2ggd2Vpc3MgbmljaHQgd29oaW4uLi4uCgoJR3V5YnJ1c2gsIGxhbmd3ZWlsdCBzaWNoIHVuZCBob2ZmdCBhdWYgbmV1ZSBTcHJ1ZWNoZSB2b24gU2VtaXJhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExhbmdld2VpbGUgKENpZmVyLCAyNy4gU2VwIDE5OTQsIDExOjE0OjEzKToKSGV5LCB3byBnaWJ0IGVzIGRlbm4gbmUgQm9yZy1Ib2VobGU/Pz8gSW4gTW9yZ2VuZ3JhdWVuPz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogIChDYXJhZGhyYXMsIDI3LiBTZXAgMTk5NCwgMTY6MTg6MzcpOgpUdXQgbWlyIGxlaWQsIGhhYiBrZWluIExpZWJsaW5nc2Vzc2VuIDotKQpNYW5jaG1hbCBudXIgc2VociBsZWljaHRlcyB3aWUgZWluZW4gZ2VtaXNjaHRlbiBncnVlbmVuIFNhbGF0Li4uCk1hbmNobWFsIGFiZXIgYXVjaCBmdXJjaHRiYXIga2Fsb3JpZW5oYWx0aWdlcy4uLgplaW5lbiBHYWVuc2VicmF0ZW4gbWl0IHJvdGtvaGwgdW5kIGhlZmVrbm9lZGVsLCBkYXp1IGFlcGZlbCB1bmQgendpZWJlbG4KdW5kIGJpcm5lbiBtaXRnZWJyYXRlbi4uLiB1bmQgZGF6dSBlaW5lbiBSb3R3ZWluLCBrZWluZW4gc3Vlc3NsaWNoZW4sIGVoZXIKZWluZW4gYmFkZW4td3VlcnR0ZW1iZXJnZXIgdHJvbGxpbmdlciBvZGVyIHNvd2FzIDotKQpVbmQgZGFuYWNoIG5vY2ggZWluIFZhbmlsbGUtRWlzLCBhbSBiZXN0ZW4gTWFuaGF0dGFuICpzY2hsZWljaHdlcmJ1bmcqCm1pdCBoZWlzc2VuIEhpbWJlZXJlbiBkYXJ1ZWJlciB1bmQgZXZ0bCBub2NoIGVpbmVuIHNjaG5hcHMgaGludGVyaGVyCgpvZGVyIGF1Y2ggYW5kZXJlIG5ldHRlIHNhY2hlbi4uLgoKQ2FyYWRocmFzIGRlciBld2lnKGUpIChodW5ncmlnZSkgUHJvcGhldAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHdWxkdWthdCAoQ2FyYWRocmFzLCAyNy4gU2VwIDE5OTQsIDE2OjIyOjExKToKRHUgYmlzdCBzY2hvbiBsYW5nZSBDYXQgOi0pIGF1c3NlcmRlbSBpc3QgZGVpbiBuYW1lIHZpZWwgbGVpY2h0ZXIgOi0pKQoKQ2FyYWRocmFzIGRlciBld2lnZSBQcm9waGV0IC0gbWlhdWVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSZTogR3VsZHVrYXQgKEJvaW5nLCAyNy4gU2VwIDE5OTQsIDE2OjIzOjIyKToKV2FzIHNvbGwgYW4gQ2FocmF0cmFzIHNjaHdpZXJpZyBzZWluPyA6KQoKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExpZWJsaW5nc2Vzc2VuIChDYXJhZGhyYXMsIDI3LiBTZXAgMTk5NCwgMTY6MjM6MjYpOgpTcGluYXRsYXNhZ25lPz8/Pz8vIDotKQoKaGFiZW4gd2lsbCEJCUNhcmFkaHJhcyBkZXIgZXdpZ2UgUHJvcGhldAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcmU6Ym9pbmcgKFRob3JpbiwgMjcuIFNlcCAxOTk0LCAxNjo0NDowMyk6CkljaCB3ZWlzIGF1Y2ggbmljaHQsIHdhcyBhbiBjYXJheGFzIGFlaCBjaGFocmhhaGRocmhhaHNoIHNjaHdpZXJpZyBpc3QsIG1hbgprYW5uIGlobiBtaXQgQyogYWJrdWVyemVuLCBvZGVyIEMrKyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2V0dGJld2VyYiAoSGFyZGlsLCAyNy4gU2VwIDE5OTQsIDE2OjQ2OjUwKToKCk9rZWUsIGpldHp0IGdlaHRzIGhhcnQgYXVmIGhhcnQuIEljaCBlcm9lZmZuZSBkZW4gV2V0dGJld2VyYiBkZXIKdW5zY2hyZWliYmFyZW4gTmFtZW4uIFdlciBlcyBzY2hhZmZ0LCBoYWtraWtrdCwgQyogb2RlciBDYXQqIHJpY2h0aWcgenUKdGlwcGVuLCBiZWtvbW10IGVpbmVuIFB1bmt0LiBaVW0gQmVpc3BpZWwgc286Cgo+IEVuaW9yaXRoIHJ1ZnQ6IEhpIENhdHdlYXpsZS4KCk9rZWU/CgpEYW1pdCBpc3QgRSoqKiBtaXQgMSBQdW5rdCBkZXJ6ZWl0IFRhYmVsbGVuZnVlaHJlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5vY2htYWwgTmFtZW4uLi4gKENhbHVtLCAyNy4gU2VwIDE5OTQsIDE2OjU3OjU2KToKSXN0IGVpZ2VudGxpY2ggc2Nob24gamVtYW5kIGF1ZmdlZmFsbGVuLCBkYXNzIG1hbiBkZW4gTmFtZW4gIlR6dWlvcCIKdW5hYmhhZW5naWcgdm9tIHZlcndlbmRldGVuIFRpcHBzeXN0ZW0gYW0gc2NobmVsbHN0ZW4KZWludGlwcGVuIGthbm4sIHdlbm4gbWFuIGF1ZiBkZXIgVGFzdGF0dXIgZWluIEdsaXNzYW5kbyBhdXNmdWVocnQ/CgpXYXIgbnVyIG1hbCBzbyBlaW4gR2VkYW5rZS4uLgoKICAgICAtIENWTQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5vY2htYWwgTmFtZW4uLi4gKEJvaW5nLCAyNy4gU2VwIDE5OTQsIDE3OjAzOjAxKToKTGVpZGVyIGZhbHNjaCwgYmVpIGVpbmVtIEdsaXNzYW5kbyBrb21tdCBiZWkgbWlyIGZvbGdlbmRlcyByYXVzOgoKdHl1aW9wCgogIEJvaW5nIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ2FsdW0gKEdyaW1tYm9ybiwgMjcuIFNlcCAxOTk0LCAxNzowNDoyOSk6CgpIbW0sIGljaCBoYWIgdmVyc3VjaHQsIFR6dWlvcCBhbHMgR2xpc3NhbmRvIHp1IHNjaHJlaWJlbi4gRXJnZWJuaXM6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFR5dWlvcApXYXMgbWFjaGUgaWNoIGRhIGZhbHNjaD8KClZlcnp3ZWlmZWx0OgogICAgICAgICAgICAgIEdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOb2NobWFsIE5hbWVuLi4uIChaYXJkb3osIDI3LiBTZXAgMTk5NCwgMTc6MDQ6NDcpOgpEYXMgaXN0IHdvaGwgR2VzY2htYWNrc3NhY2hlLi4uLm9kZXIgZWluZSBGcmFnZSBkZXIgVGFzdGF0dXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmU6IFJlOiBHdWxkdWthdCAoQnVuZ2xlLCAyNy4gU2VwIDE5OTQsIDE3OjA4OjE3KToKSGFsbG9lY2hlbiEKCkljaCBrb2VubnRlIGVzIHVlYnJpZ2VucyBuaWNodCBzZWluLi4uLi4KU293ZWl0IGRhenUgOgkJCUV1ZXIgQnVuZ2xlCgoqYXJnbCogbmF0dWVybGljaCBtdXNzIGVzIGhlaXNzZW4gOiAJCUUqIEIqIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYWlzZXJzY2htYXJybiAuLi4gKEJ1bmdsZSwgMjcuIFNlcCAxOTk0LCAxNzoxNToxOSk6CkhhbGxvIQoKQW0gNS5Pa3RvYmVyIGtvbW10IGRlciBLYWlzZXIgbmFjaCBDaGVtbml0ei5TbyduIFNjaG1hcnJuLldlaWwgaWNoIGJpbiBsZWlkZXIKbmljaCBkYS4gOigKCkF1cyBsYXV0ZXIgS3VtZXIgZWluZW4gZ2V3YWx0aWdlbiBLYW56bGVyc2NobWFycm4gdmVyemVocmVuZCA6IEJ1bmdsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHJlOmJvaW5nIChDYXJhZGhyYXMsIDI3LiBTZXAgMTk5NCwgMTc6MTc6NDMpOgpQaCEhISBMZXJudCBlcnN0IG1hbCBDZWxlYmRpbCB1bmQgRmFudWlkaG9sIGF1c3dlbmRpZy4uLiBzaW5kIHp3YXIgYXVjaApub2NoIHZpZWwgenUgbGVpY2h0Li4uIGFiZXIgd2FzIHNvbGxzLgoKQW0gQmVzdGVuIGdlZmllbCBtaXIgamEgbm9jaCBkZXIgTmFtZSBlaW5lcyBlbGRlciB3aXogYXVzIFRVQi4uLiBrcmllZyBpY2gKc2VpbmVuIE5hbWVuIG5vY2ggenVzYW1tZW4/IE1sbHlud3JsY2ggOi0pCgpBYmVyIG5hY2ggZ2VuYXVlbSBBbmt1Y2tlbiBkZXMgTmFtZW5zIGlzdCBlciBkYW5uIGRvY2ggcmVjaHQgZWluZmFjaAoKQXVmIGRlciBTdWNoZSBuYWNoIHNjaHdpZXJpZ2VyZW4gTmFtZW46CgoJQ2FyYWRocmFzIGRlciBld2lnZSBQcm9waGV0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZGVwcmVzc2lvbiAoQXNtb2RpcywgMjcuIFNlcCAxOTk0LCAxNzoxOTo1OCk6CkFlaCwgaGFiIGljaCBkaXIgbmljaHQgZWluIHBhYXIgVGlwcyBnZWdlYmVuLCBTdGFobGRvcm4/IE9kZXIgamVtYW5kIGFuZGVyZW0/Cm5hamEsIGplZGVuZmFsbHMga2FubnN0IGR1IG5pY2h0IGVyd2FydGVuLCBkYXNzIG1hbiBkaXIgZGllIEtvbXBsZXR0bG9lc3VuZwp2b3J3aXJmdC4KCiAgICAgICAgICAgICAgICAgIENpYW8sIEFzbW9kaXMoRGVyIDUgV29jaGVuIGZ1ZXIgZGllc2UgUXVlc3QgYnJhdWNodGUpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTm9jaG1hbCBOYW1lbi4uLiAoQ2FyYWRocmFzLCAyNy4gU2VwIDE5OTQsIDE3OjIwOjI1KToKTmVpbiwgZ2VodCBuaWNodCwgQ2FsdW0gOi0pCgpkYW5uIGtvbW10IG5hZW1saWNoIHR5dWlvcCByYXVzICpraWNoZXIqCgpDYXJhZGhyYXMgZGVyIGV3aWdlIFByb3BoZXQKIC0gc2l0enQgenVtIFByb2dyYW1taWVyZW4gaW1tZXIgYW4gYW1lcmlrYW5pc2NoZW4gVGFzdGF0dXJlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVociBOYW1lbiAoQm9pbmcsIDI3LiBTZXAgMTk5NCwgMTc6MjQ6MTkpOgpJbiBOYW5ueW11ZCBnaWJ0J3MgZWluZW4gS3J6aHVnbmdyIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogcmU6Ym9pbmcgKEhpZ2hsYW5kZXIsIDI3LiBTZXAgMTk5NCwgMTc6MjY6MDApOgpLZW5udCBpaHIgbm9jaCBNeHl6cHRsaz8gU2Nod2VyIHp1IHNjaHJlaWJlbiwgc2Nod2VyIHp1IHNwcmVjaGVuLAphdXNzZXIgbWFuIHdlaXNzLCB3aWUgOj4KCiAgIFlUSAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5vY2htYWwgTmFtZW4uLi4gKENpZmVyLCAyNy4gU2VwIDE5OTQsIDE3OjI4OjIwKToKV2VubiBlcyBrZWluZSBhbWVyaWthbmlzY2hlIHRhc3RhdHVyIGlzdCwgamEhIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5vY2htYWwgTmFtZW4uLi4gKEFzbW9kaXMsIDI3LiBTZXAgMTk5NCwgMTc6MzI6MDgpOgpJY2ggd2Vpc3Mgd2llIG1hbiBNeHl6cHRsayBhdXNzcHJpY2h0IDopCgogICAgICAgICAgIENpYW8sIEFzbW9kaXMoaGF0IG1hbCBTdXBlcm1hbi1IZWZ0ZSBnZWxlc2VuIDopKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSZTogTm9jaG1hbCBOYW1lbi4uLiAoQnVuZ2xlLCAyNy4gU2VwIDE5OTQsIDE3OjM5OjEyKToKQWxzbyBpY2ggZmluZGUgZGllIHh5ei1TZXF1ZW56IGluIE14eXpwdGxrIGF1c2dlc3Byb2NoZW4gZmFudGFzaWVsb3MuLi4gOykKCUJ1bmdsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW5mcmFnZSB2b24gQXNtb2RpcyAoR3V5YnJ1c2gsIDI3LiBTZXAgMTk5NCwgMTc6NDE6MDIpOgpncmFkIGVybGF1c2NodDoKQXR0aWxhIHJ1ZnQ6IHdpZSBiZXRyZXRlIGljaCBlaW4gaGF1cyA/PwpBc21vZGlzIHJ1ZnQ6IGJldHJldGUgaGF1cwpBdHRpbGEgcnVmdDogZGFua2UKcmVpY2h0IGRhcz8KCglHdXlicnVzaCwgaGF0IG5peCBiZXNzZXJlcyB6dSB0dW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFiZXIgZG9jaCBuaWNodCBzby4uLiAoSGFyZGlsLCAyNy4gU2VwIDE5OTQsIDE3OjU2OjE0KToKCkRhZnVlciBnaWJ0IGVzIGtlaW5lbiBQdW5rdCA6Cgo+IFtBYmVudGV1ZXI6QXNtb2Rpc10gd2VyIGlzc24gUXVlcmtsZXBlY2sgPwoKVWViZW4sIHVlYmVuLCB1ZWJlbi4KRGFtaXQgaW1tZXIgbm9jaCBhbiBkZXIgVGFiZWxsZW5mdWVocnVuOiBFKi4KCkFjaGphLCB3ZXIgUHVua3RlIGhhYmVuIHdpbGwsIG11c3Mgc2llIHNjaG9uIHZvbiBhbmRlcmVuIGhpZXIgaW4gZGVyIFplaXR1bmcKZ2VjbGFpbXQgYmVrb21tZW4uIElzIG5peCBtaXQgZGF1ZXJwYXN0ZW4sIEhpZ2hsYW5kZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClF1ZXJrbGVwZWNrLi4uIChHcmltbWJvcm4sIDI3LiBTZXAgMTk5NCwgMTg6MTg6MTQpOgoKTnVyIGRlciBWb2xsc3RhZW5kaWdrZWl0IGhhbGJlciB6dXIgRWhyZW5yZXR0dW5nIGRlcyBUYWJlbGxlbmZ1ZWhyZXJzOgpWb3JhdXNnZWdhbmdlbiB3YXIgZGVtIGVpbmUgRnJhZ2UgSXJvbmxvcmRzLCBvYiBqZW1hbmQgYXVmIGRlbSBGcmllZGhvZiB3YWVyZQpvZGVyIGRlciBXZWcgenVtIFF1ZXJrbGVwZWNrIGZyZWkgd2FlcmUuIFNvIGdlaHRzLCB3ZW5uIG1hbiBkaWUgTWFrcm9zCm5pY2h0bWFsIGxpZXN0Li4uCgpIYXJyZSBzcGFsdGVuZDoKICAgICAgICAgICAgICAgR3JpbW1ib3JuIGRlciBBdGhlaXN0CgpQLlMuIEJldm9yIEZyYWdlbiBuYWNoIGRlbiBIYXJyZW4ga29tbWVuOiBTbyBuZW5udCBtYW4gZGllIEJhcnRoYWFyZSBkZXIKWndlcmdlLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWJlciBkb2NoIG5pY2h0IHNvLi4uIChIaWdobGFuZGVyLCAyNy4gU2VwIDE5OTQsIDE4OjUyOjA5KToKR1JSUlIhCklDSCBQQVNURSBCRUkgU08gV0FTIE5JQ0hULgpIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBRdWVya2xlcGVjayAoQ2F0d2VhemxlLCAyNy4gU2VwIDE5OTQsIDE4OjU3OjUwKToKSGllc3MgZGVyIG5pY2h0IFF1b3R6bGlwZWNrIDotKSkKY2F0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGYWVsc2NodW5nISEhISEhISEgKEdyaW1tYm9ybiwgMjcuIFNlcCAxOTk0LCAxOTowNzo1Nyk6CgpEZXIgdm9yZ2VoZW5kZSBBcnRpa2VsIHZvbiBDYXQgaXN0IG9mZmVuc2ljaHRsaWNoIGVpbmUgRmFlbHNjaHVuZywgaWNoIGJpdHRlLApkaWUgU2ljaGVyaGVpdCBkZXIgbXBhIHp1IHVlYmVycHJ1ZWZlbiEKQ2F0d2FkaW5nZW5zIHd1ZXJkZSBOSUUgZWluZW4gQXJ0aWtlbCBzY2hyZWliZW4sIG9obmUgbWl0IHNlaW5lbSBhbGJlcm5lbgoiWW91cnMgdHJ1bHkiIHp1IHVudGVyc2NocmVpYmVuLgpFVwpyKnNldWZ6KiBFcmdvLCBkZXIgQXJ0aWtlbCBpc3Qgdm9uIGplbWFuZCBhbmRlcmVtIQoKVGllZiBiZXNvcmd0IHVtIGRpZSBuYXRpb25hbGUgU2ljaGVyaGVpdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFiZXIgZG9jaCBuaWNodCBzby4uLiAoQXNtb2RpcywgMjcuIFNlcCAxOTk0LCAxOToxMjowNCk6CldhcyBoZWlzc3QgZGVubiB1ZWJlbj8gRGEgaGF0IHZvcmhlciBqZW1hbmQgZXR3YXMgdm9uICdRdWVya2xlcGVjaycgZ2VmYXNlbHQsCnVuZCBpY2ggaGFiIGRhcmF1ZiByZWFnaWVydCwgYWxzbyB3YXMgc29sbCBkYXMgSGFyZGlsLCBoZWggPwpCcmluZyB3ZW5pZ3N0ZW5zIGRpZSBnYW56ZSBHZXNjaGljaHRlICEhISEhISEhIQoKCiAgICAgICAgICAgICAgICAgICBDaWFvLCBBc21vZGlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGFiZXIgZG9jaCBuaWNodCBzby4uLiAoQXNtb2RpcywgMjcuIFNlcCAxOTk0LCAxOToxNDozNik6CkFjaCBqYSwgSGFyZGlsLCAxMCBQdW5rdGUgQWJ6dWcgOikKCgogICAgICAgICAgICAgICAgICAgICAgQ2lhbywgQXNtb2RpcwoKUC5TLjogSW1tZXIgbm9jaCBpbiBGdWVocnVuZzogRSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hbWVuIChYbHNvd2xka2UsIDI4LiBTZXAgMTk5NCwgMDg6NDA6NDcpOgpXYXMgc29sbCBlaWdlbnRsaWNoIGRpZSBnYW56ZSBEaXNrdXNzaW9uIHVlYmVyIE5hbWVuIHZvbiBTcGllbGVybj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnpvbWJpZXMgKE1vcmdvdGgsIDI4LiBTZXAgMTk5NCwgMTA6MTU6NDMpOgpzbyBoaWVyIHN0ZWggaWNoIG51biB1bmQgd2FydGUgYXVmIG1laW5lIExQIHVuZCBNUAphdWYgZGFzIHNpZSBzaWNoIGJhbGQgZXJuZXVlcm4sIGRpZXNlIGR1bW1lbiB6b21iaWVzIGtpY2hlcm4gbWljaCBhbiwgZ3JycgpkZXIgcHJpZXN0ZXIgaXN0IHNhdWVyIGF1ZiBtaWNoLCBhYmVyIGljaCBicmF1Y2ggc2VpbiBwYWRkZWwuLi4uCmNocmlzdG9waCBoYXRzIHZvcmhpbiBlcmxlZ3QuLi4uIGJlaWxlaWQuLi4KZGVyIG5hZWNoc3RlIGZiIGlzdCBiYWxkIGRhLi4uLgpkYXMgYW11bGV0dCBydWVocnQgc2ljaCBuaWNodC4uLi5ncnVtbWVsCgptYWwgc2NoYXVuLi4uY2lhbyBNb3Jnb3RoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYXdvbGwgKE1vcmdvdGgsIDI4LiBTZXAgMTk5NCwgMTA6MTc6MDUpOgpzbyBnZXJhZGUgYWxzIGljaCBkZW4gbGV0enRlbiBhcnRpa2VsIGZlcnRpZyBoYXR0ZSBtZWxkZXRlIHNpY2ggZGFzClNCLWFtdWxldHQsIGRlciBlcnN0ZSBwcmllc3RlciBpcyBoaW4uLi4gd2FpdGluZyBmb3IgcmVzZXQKTW9yZ290aAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2xpc3NhbmRvID8/PyAoRHVyaWFuLCAyOC4gU2VwIDE5OTQsIDExOjMwOjQ1KToKQWNodHVuZywgZWluIGtvbnN0cnVrdGl2ZXIgQXJ0aWtlbCAuLi4KV2FzIHp1bSBIZW5rZXIgaXN0IC0+IEdsaXNzYW5kbyA8LSA/Pz8/CgpFaW4gYXVmIGV3aWcgZWluIEt1bHR1cmJhbmF1c2Ugc2VpZW5kZXIKLSBEdXJpYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHbGlzc2FuZG8gPz8/IChDYXJhZGhyYXMsIDI4LiBTZXAgMTk5NCwgMTQ6MjI6NDQpOgpXbyBpc3QgZGEgd2FzIGtvbnN0cnVrdGl2LCBEdXJpYW4/CklzdCBudXIgZWluZSBmdXJjaHRiYXIgdGllZmUgQmlsZHVuZ3NsdWVja2UsIGluIGRpZSBiZWluYWhlIGdhbnogTUcKcmVpbnBhc3N0LgoKKmZyZWNoIGxhZWNoZWxuZCoKCUNhcmFkaHJhcyBkZXIgZXdpZ2UgUHJvcGhldAotIGxhZXNzdCBEdXJpYW4gbm9jaCBlaW4gYmlzc2NoZW4gYmF1bWVsbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVociBTY2htYXJybiBpbiBkZW4gU2NobWFycm4gKEd1eWJydXNoLCAyOC4gU2VwIDE5OTQsIDE4OjUxOjE3KToKCkRhIGljaCBqZXR6dCByYXVzZ2VmdW5kZW4gaGFiZSB3aWUgZGFzIEFydGlrZWxzY2hyZWliZW4gZnVua3Rpb25pZXJ0IChiaXNoZXIKd2FycyBtaXIgYXVjaCBlZ2FsKSB3aWxsIGljaCBtYWwgZGllIFJ1YnJpayBmdWVsbGVuLiBJY2ggc3RlaCBoaWVyIGF1ZiBkZXIKUGFsaXNhZGUgYmVpIGRlbiBPcmtzIHVuZCBydWggbWljaCBldHdhcyBhdXMsIGRlbmtlIGFucyBaZWl0dW5nbGVzZW4sIHVuZCB3YXMKc2VoIGljaD8gTklYLiBHaWJ0cyBkZW5uIGhpZXIgbnVyIFNjaHJlaWJmYXVsZS4gU2NocmVpYnQgbWFsIHdpZWRlci4gU2NocmVpYnQKU2NobWFycm4gb2RlciBzY2hsZWNodGUgV2l0emUuLmltIE9ya2xhZ2VyIGlzdCBlcyBuYW1lbGljaCByZWNodCBsYW5nd2VpbGlnIHNvCmFsbGVpbi4KCglHdXlicnVzaCwgYXVmIGRlciBQYWxpc2FkZSBzaXR6ZW5kIHVuZCBTY2htYXJybiBzY2hyZWliZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgenUgZXNzZW4sIG1qYW0gKENhcmFkaHJhcywgMjkuIFNlcCAxOTk0LCAwODowODoxMik6CglIdWh1CgpJY2ggYmluIGdyYWRlIGJlaW0gTW9uc3RlciB1bWxlZ2VuIGluIGRlciBTU1AgdW5kIG1pciBpc3QgbGFuZ3dlaWxpZy4uLgpVbmQgZGEgaWNoIGR1cmNobWFjaGVuIG11c3MsIHdlaWwgaWNoIG1vcmdlbihoZXV0ZSkgZWluIGF1dG8gbW9yZ2Vucwp6dXJ1ZWNrYnJpbmdlbiBtdXNzICh3ZXIgd2FjaHQgc2Nob24gZnJ1ZWggZnJlaXdpbGxpZyBhdWY/KSBpc3RzIG1pcgpqZXR6dCBsYW5nd2VpbGlnIHVuZCBpY2ggcG9zdGUgZWluIFJlemVwdC4uLiA6LSkKSnVzdCBmb3IgZnVuOgoKUmV6ZXB0IGlzdCBub2NoIFBpIG1hbCBEYXVtZW4gOi0pIEdlbGluZ3QgaW1tZXIgdW5kIGtsZWJ0IG5pY2h0LCB3ZW5pZ3N0ZW5zCmJlaSBtaXI6CgogICAgIEN1cnJ5c2Nobml0emVsIG1pdCBSZWlzPyAoQmxvZWRlciBUaXRlbCA7LSkKCk1hbiBuZWhtZToKU2Nobml0emVsIGplZ2xpY2hlciBHZWZsdWVnZWwtQXJ0LCBhbSBiZXN0ZW4gVHJ1dGhhaG4gb2RlciBQdXRlbiwgdm9uIG1pcgphdXMgYXVjaCBIYWVobmNoZW4sIGJpbiBoZXV0ZSBncm9zc3p1ZWdpZy4KU2FobmUsIFNjaGxhY2hzYWhuZSwgaG0sMSBiaXMgMiBiZWNoZXIsIHdlbm4gbWFuIHp1dmllbCB1ZWJyaWcgaGF0LCBrYW5uCm1hbiBpbW1lciBub2NoIG5ldHRlIHNhY2hlbiB3aWUgZ2V6dWNrZXJ0ZSBlcmRiZWVyZW4gaW4gZmx1ZXNzaWdlciBzYWhuZQpvZGVyIHNjaG9rb3B1ZGRpbmcgbWl0IHZpaWlpaWlpaWlpZWwgc2FobmUgZHJ1ZWJlci4uLiAqbGVjaHoqCk5hdHVlcmxpY2ggU2FseiwgUGZlZmZlciwgR2VzY2htYWNrc3ZlcnN0YWVya2VyIChzb3dhcyB3aWUgQnJ1ZWh3dWVyZmVsKQp1bmQgKmFlaG0qICpncnVlYmVsKiBSZWlzIHdhZXIgbmljaHQgc2NobGVjaHQgOi0pIGFscyBiZWlsYWdlLCBhdXNzZXJkZW0KYnJhdWNoZW4gd2lyIG5vY2ggZXR3YXMgd2Fzc2VyICpncnVlYmVsKiBkYW5uIG5vY2gsIGFjaCBzbywgamEgZGllCndpY2h0aWdzdGVuIGdld3VlcnplIDopIEt1cmt1bWEgKEdlbGJ3dXJ6KSBtdXNzIG5pY2h0IHVuYmVkaW5ndCBzZWluLCBnaWJ0CmFiZXIgZGllIHJpY2h0aWdlIEZhcmJlIHVuZCBuYXR1ZXJsaWNoIEN1cnJ5LiBDdXJyeSBpc3Qgc2VlaHIgd2ljaHRpZyA6LSkKd2VyIGVzIGdlcm5lIHRldWVyIG1hZywga2FubiBhdWNoIGdlcm5lIG1hbmdvLWNodXRuZXkgbm9jaCBkYXp1bmVobWVuIC4uLgoqendpbmtlcioKRGFzIGFsbGVyd2ljaHRpZ3N0ZSBzaW5kIGRpZSBmcnVlY2h0ZSwgZW50d2VkZXIgc28gZWluZW4ga29taXNjaGVuIGZydWNodC0KY29rdGFpbCBhdXNzZXIgZG9zZSwgb2RlciBnbGVpY2ggc2VsYmVyIG1hY2hlbiA6KSBrbGVpbnNjaG5laWRlbiwgekIKQmFuYW5lbiwgUGZpcnNpY2hlLi4uLiBqZSBuYWNoIEdlc2NobWFjaywgbXVzcyBtYW4gdGVzdGVuIDstKQoKc2Nobml0emVsbiBrbG9wZmVuLCBhbmJyYXRlbiwgbGVpY2h0IGdld3Vlcnp0IG1pdCBzYWx6IHVuZCBwZmVmZmVyLCBuaWNodAp6dSBzZWhyLCBuYXR1ZXJsaWNoIG51ciBsZWljaHQgYW5icmF0ZW4sIHZlcnN0ZWh0IHNpY2ggamEgdm9uIHNlbGJzdCwKcmF1c25laG1lbiBpbiBkZXIgcGZhbm5lLCBkYXJpbiBkaWUgZnJ1ZWNodGUgYW5icmF0ZW4sIGV2dGwuIGthcmFtZWxpc2llcmVuCm1pdCBldHdhcyBadWNrZXIsIGFiZXIgZGFzIGhhYiBpY2ggbm9jaCBuaWNodCB2ZXJzdWNodC4gbWl0IGRlciBzYWhuZSB1bmQKZXR3YXMgd2Fzc2VyIGRhbm4gbWl0IGRlbiBmcnVlY2h0ZW4gZWluZSBzb3NzZSBtYWNoZW4sIGFic2NobWVja2VuIHVuZAphbSBzY2hsdXNzIGRhcyBmbGVpc2NoIG5vY2ggZGF6dSB6dW0gZHVyY2h3YWVybWVuLCA1IG1pbnV0ZW4gdm9yaGVyLgpFaW4ga2xlaW5lcyBiaXNzY2hlbiBrdXJrdW1hIGluIGRpZSBzb3NzZSByZWluLCBqYSBuaWNodCB6dXZpZWwgOikKd2VuaWdlciBhbHMgZWluIGhhbGJlciB0ZWVsb2VmZmVsIGF1ZiBhbGxlIGZhZWxsZSwga3Vya3VtYSBzY2htZWNrdCB6d2FyCm5hY2ggcmVsYXRpdiB3ZW5pZyBhYmVyIG5pY2h0IGJlaSBzbyBncm9zc2VuIE1lbmdlbi4gS3Vya3VtYSBpc3QgenVtCmdlbGIgZmFlcmJlbiBkYSwgd2llIGRlciBOYW1lIEdlbGJ3dXJ6IHNjaG9uIHNhZ3QgOi0pCldpZSBtYW4gcmVpcyBtYWNodCB3aXJkIHdvaGwgKGZhc3QpIGplZGVyIHdpc3NlbiwgQ3VycnkgaW4gZGVuIHJlaXMgbm9jaApyZWluIDotKSB1bmQgc2Nob24gaXN0IGVzIGZlcnRpZy4KZGF6dSB3b2hsIGlyZ2VuZHdhcyBmcnVjaHRpZ2VzIHp1IHRyaW5rZW4sIHdhcyBzYWZ0aWdlcywga2VpbmVuIHJvdHdlaW4KKmVudHNldHoqIHVuZCBhdWNoIGtlaW5lbiBzY2huYXBzLiBNdXNzIHVuYXVmZHJpbmdsaWNoIHNlaW4sIHNvbGx0ZSBkZW4KZ2VzY2htYWNrIGRlcyBlc3NlbnMgd2VkZXIgdWViZXJ0b2VuZW4gbm9jaCB2ZXJmYWVsc2NoZW4sIGFsc28gZnJ1Y2h0LQpzYWVmdGUgbWl0IG1pbmVyYWx3YXNzZXIsIHdlciBlcyBtYWcsIHdlciBuaWNodCwgZGVyIG5pY2h0LiBBbSBiZXN0ZW4KcGFzc3Qgd29obCB3aWVkZXIgc28gZXR3YXMgd2llIEJhbmFuZW5zYWZ0IG9kZXIgUGZpcnNpY2gsIEJpcm5lbnNhZnQKZGF6dS4KCkNhcmFkaHJhcyBkZXIgZXdpZ2UgUHJvcGhldCAtIGV3aWcgaHVuZ3JpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBRdWVya2xlcGVjayAoQnVuZ2xlLCAyOS4gU2VwIDE5OTQsIDE2OjQ2OjA3KToKTmVpbiEgRXIgaGVpc3N0IEhvdHplbnBsb3R6ISA7KQoJCUJ1bmdsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcmUgKFRob3JpbiwgMjkuIFNlcCAxOTk0LCAxNjo1Mzo1Nik6Cm9kZXIgcXdlcnR5dWlvcGFzZGZnaGprbHp4Y3Zibm0gPz8gaXN0IGRvY2ggbGVpY2h0IHp1IHRpcHBlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NobWFycm4gdHV0IG5vdCEgKFNlbWlyYSwgMjkuIFNlcCAxOTk0LCAxODoyNDo0Myk6CkhleSwgaGllciBzY2hyZWlidCBqYSBzY2hvbiB3aWVkZXIga2VpbmVyIHdhcyBpbiBTY2htYXJybi4uLi5EQVMgbXVzcwpnZWFlbmRlcnQgd2VyZGVuLi4uLm1hbCB1ZWJlcmxlZ2VuLi4uLndhcyBpc3QgZGVyIGdyb2Vzc3RlIHNjaG1hcnJuIGRlciBtaXIKZWluZmFlbGx0PyBJcyBlaWdlbnRsaWNoIG4gd2l0ei4uLmFiZXIgc29uIGJsb2VkZXIgZGFzIHMgc2NobWFycm4gaXN0IGZpbmQKaWNoLi4ubWFuIGthbm5zIGphIHZlcmxlZ2VuLi4uLgoKQWxzbzoKCkVpbiBFaGVwYWFyIGdlaHQgaW4gZGVuIFdhbGQgUGlsemUgc3VjaGVuLiBEYSBzYWd0IGRpZSBGcmF1OiAiIEd1Y2sgbWFsLCBuClBpbHoiLiBkYSBzYWd0IGRlciBQaWx6ICJOYSB1bmQ/Ii4uLi4KCk5hLCBJaHIgbXVlc3N0IGRvY2ggenVnZWJlbiBkYXMgZGFzIGRlciBhYnNvbHV0ZSBzY2htYXJybiBpc3QsIG9kZXI/CgpJbiBkZXIgSG9mZm51bmcsIEV1Y2ggenUgd2VpdGVyZW0gVW5zaW5uIGFuZ2VyZWd0IHp1IGhhYmVuLi4uCgpLbnVkZGVsIGFsbGUgKGphamEsIGljaCB3ZWlzcyBzY2hvbiBtaXQgYXVzc25haG1lIHZvbi4uLi4uKSBXdXJlIEtudWRkZWxtYXVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpodXBzIChTZW1pcmEsIDI5LiBTZXAgMTk5NCwgMTg6MjU6MjgpOgpkYXMgaGllc3MgbmF0dWVybGljaCBFVVJFIEtudWRkZWxtYXVzICpsYWNoKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdsaXNzYW5kbyA/Pz8gKEhpZ2hsYW5kZXIsIDI5LiBTZXAgMTk5NCwgMTg6NDk6MzApOgpIYWxsbywgS3VsdHVyYmFuYXVzZSA6PgpHbGlzc2FuZG8gaXN0LCB3ZW5uIGRlciBUb24gdm9uIHVudGVuIG5hY2ggb2JlbiAicnV0c2NodCIKKG9kZXIgYW5kZXJzcnVtKS4gTWFjaGJhciBpc3Qgc293YXMgei5CLiBhdWYgZWluZW0gU3RyZWljaC0KaW5zdHJ1bWVudCBvZGVyIGF1ZiBlaW5lciBMdWZ0cHVtcGUuCktvbW10IHZvbiBHbGVpdGVuIChhdWYgaXRhbGllbmlzY2ggZGFzIGdhbnplLCBvZiBjb3Vyc2UpLgpVbmQ6IEljaCBnZWggamV0enQgaW4gZGllIEVja2UgdW5kIHNjaGFlbWUgbWljaCwgZGFzcyBpY2ggaW4Kc2NobWFycm4gZWluZW4ga29uc3RydWt0aXZlbiBBcnRpa2VsIGdlc2NocmllYmVuIGhhYiwgYWJlciBhbnR3b3J0ZQpnZWh0IG51biBtYWwgaW4gZGllIGdsZWljaGUgUnVicmlrLCBhbHNvIHNvbGx0ZXN0IER1IGRhcyBtaW5kZXN0ZW5zCmF1Y2ggdHVuLCBEdXJpYW4gKmdyaW5zKi4KQ2lhbwogICBIaWdobGFuZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdsaXNzYW5kbyA/Pz8gKENpZmVyLCAyOS4gU2VwIDE5OTQsIDE5OjE3OjAyKToKV2VubiB3ZWl0ZXIgc29sY2hlIEFydGlrZWwga29tbWVuLCBtdXNzIGRpZXNlIFJ1YnJpayB1bWJlbmFubnQgd2VyZGVuLgpEYXMgaXN0IGphIGZhc3Qgc2Nob24gS3VsdHVyLiBPZGVyIExlaHJlPyBPZGVyIFVudGVycmljaHQ/IE9kZXIgd2FzIHdlaXNzIGljaApuaWNodCBhbGxlcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11cnBoeSAoU3RhaGxkb3JuLCAyOS4gU2VwIDE5OTQsIDE5OjQ4OjM2KToKCkhhYmUgdm9yaGluIGVpbiBuZXVlcyBHZXNldHogdm9uIE11cnBoeSBlbnRkZWNrdC4KRGFzIFN0ZWluYmVpc3Nlci1BbXVsZXR0IGhlaWx0IGRpY2ggaW1tZXIgZGFubiwgd2VubiBkdSBnZXJhZGUgZnVlciAzMDAwCk11ZW56ZW4gS25vYmxhdWNod2Fzc2VyIGdlc29mZmVuIGhhc3QuCgogICAgICAgIFN0YWhsLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJ0aWtlbGdlbmVyYXRvciA/IChIYXJkaWwsIDMwLiBTZXAgMTk5NCwgMTE6NDY6NDgpOgoKSG1tbSwgaWNoIHNldHplIDEwMCBQdW5rdGUgZnVlciBkZW5qZW5pZ2VuIGF1cywgZGVyIGVpbmVuIEFydGlrZWxnZW5lcmF0b3IKcHJvZ3JhbW1pZXJ0LiBJcmdlbmRlaW5lIEVyZmluZHVuZywgZGllIGFsbGUgMTAgTWludXRlbiBlaW5pZ2VybWFzc2VuCnNoY21hcnJubWFlc3NpZ2UgQXJ0aWtlbCB2ZXJmYXNzdCB1bmQgaGllciBwb3N0ZXQuIFNvbnN0IHVlYmVybGVidCBtYW4gZGllc2UKRnJlaXRnYWUgaW0gTVVEIGphIGdhciBuY2lodCBtZWhyCjotKCgoCgpIYXJkaWwsIGRlciBhbmdhZWhuZW5kZSBTZWhlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU1NQIChNb3Jnb3RoLCAzMC4gU2VwIDE5OTQsIDE0OjEzOjAwKToKR2lidCBlcyBlaWdlbnRsaWNoIGF1Y2ggd2VpdGVyIHVudGVuIGluIGRlciBzc3Agd2FzIHp1bSBoZWlsZW4gPz8KdGllZmVyIGFscyBkaWUgcnVuZW4gPz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYWlzZXJzY2htYXJybiAoU3RhaGxkb3JuLCAzMC4gU2VwIDE5OTQsIDE3OjMyOjMzKToKV2llIHdhZXJzIG1pdCBlaW5lbSBTY2htYXJybi1XZXR0YmV3ZXJiID8gRGVyLCBkZXIgZGVuIGJsb2VkZXN0ZW4gdW5kCmlkaW90aXNjaHN0ZW4gYXJ0aWtlbCB2ZXJvZWZmZW50bGljaHQsIGhhdCBnZXdvbm5lbi4KTWVpbiBCZWl0cmFnIGRhenUgaXN0IGRpZXNlciBBcnRpa2VsLiA6LSkKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0YWhsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobWFycm4gaGFsdCAoVGFtYXJhLCAzMC4gU2VwIDE5OTQsIDE5OjI1OjA5KToKCkhhYmUgJ1RydWUgTGllcycgZ2VzZWhlbi4uLi4gYWNoIGhlcnJqZWghCgpUYW1hcmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnRydWUgbGllcyAoQ2F0d2VhemxlLCAzMC4gU2VwIDE5OTQsIDE5OjMzOjA0KToKVW4gbnU/CgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNlbmYgKFphcmRveiwgMzAuIFNlcCAxOTk0LCAyMTowNTo0Mik6ClNFTkYgT04KU0VORiBPRkYKTXVzcyB3b2hsIHRpZXJpc2NoZW4gU3Bhc3MgbWFjaGVuLi4uPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNlbmYgKFN0YWhsZG9ybiwgMzAuIFNlcCAxOTk0LCAyMToxMjowNSk6Ckd1dCwgWmFyZG96ICEKRGVpbiBBcnRpa2VsIGtvbW10IGluIGRpZSBlbmdlcmUgd2FobC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhVTkdFUiEhISAoS3JldGVrLCAzMC4gU2VwIDE5OTQsIDIxOjUxOjIzKToKQWxzbywgTGV1dGUsIGFsbGVzIHdhcyByZWNodCBpc3Q6IGVpbnMgaXN0IHdpcmtsaWNoIGdlbWVpbgpVbmQgendhciwgYW5kZXJlIExldXRlIG1pdCBpaHJlbiBLb2NocGhhbnRhc2llbiB6dSBuZXJ2ZW4hISEKSmF3b2hsLCBDYXJhZGhyYXMsIGZ1ZWhsZSBkaWNoIHJ1aGlnIGFuZ2VzcHJvY2hlbiEhISBEYSBzaXR6ZSBpY2ggamV0enQKaGllciBhbiBkZXIgU1VOLCBiaW4gaW0gU2NobmVlbWFubmxhYiwgd2FydGUsIGRhc3Mgc2ljaCBtZWluZSBNUHMgd2llZGVyCmVyaG9sZW4sIHVuZCBkZW5rIG1pciwgZGEga2FubnN0IGR1IHJ1aGlnIGluIGRlciBad2lzY2hlbnplaXQgbWFsIGVpbgpiaXNzY2hlbiAiU2NobWFycm4iIGxlc2VuLi4uIHVuZCB3YXMga29tbXQgZGEsIHdhZWhyZW5kIG1pciBkZXIgTWFnZW4gaW4KZGVyIEtuaWVrZWhsZW5nZWdlbmQgaGFlbmd0PyBLT0NIUkVaRVBURSEhISBVbmQgZGFubiBhdWNoIG5vY2ggWmV1Z3MsIGRhcwpzb29vbyBsZWNrZXIga2xpbmd0IQpJY2ggZ2ViZSBoaWVybWl0IGJla2FubnQ6IElDSCBIQVNTRSBFVUNIIEhPQkJJRUtPRUNIRSEhISBEYXMgbWFjaHQgaWhyIGRvY2gKYWxsZXMgbnVyLCB1bSBoYXJtbG9zZSwgaHVuZ2VybmRlIE11ZGRlciB3aWUgbWljaCB6dSBxdWFlbGVuISBEZXN3ZWdlbiB3ZXJkCmljaCBtaXIgamV0enQgZWluIEFsaSBwcm9nZ2VuLCBtaXQgZGVtIGljaCBldWNoIGdyaWxsZW4ga2FubiEKClNvIGxvbmcsLApLcmV0ZWssIGRlciBld2lnIGh1bmdyaWdlIFp3ZXJnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTYXR6emVpY2hlbiAoR3JpbW1ib3JuLCAzMC4gU2VwIDE5OTQsIDIyOjA0OjUxKToKVGphLCBPaG5lIGxwIHVuZCBtcCBrYWVtcGZ0IGVzIHNpY2ggc2NobGVjaHQsIHVuZCBkYSB3aXIgU2VoZXIgamEgYmVrYW5udGxpY2gKa2lsbGVuLCB3YXMgdW5zIHVlYmVyIGRlbiBXZWcgbGFldWZ0IHVuZCBzaWNoIGJld2VndCwgbWFjaGUgaWNoIG1pciBtYWwKR2VkYW5rZW4gdWViZXIgU2F0enplaWNoZW4uIFdpcmQgc2Nob24gbml4IGdlc2NoZWl0ZXMgYmVpIHJhdXNrb21tZW4sIGRlbmtlCmljaC4KTWlyIGlzdCBpbiBsZXR6dGVyIFplaXQgZWluIHZlcnN0YWVya3RlcyBBdWZrb21tZW4gdm9uIFNhdHp6ZWljaGVuLCB2b3IgYWxsZW0KRnJhZ2V6ZWljaGVuICg/KSB1bmQgQXVzcnVmZXplaWNoZW4gKCEpIGF1ZmdlZmFsbGVuLiBOdW4gaXN0IGRhcyBrZWluIEZlaGxlciwKd2VubiBkaWUgU2FldHplIGltIGdsZWljaGVuIE1hc3NlIHZlcnN0YWVya3QgYXVmdHJhZXRlbi4gRGFzIGlzdCBuaWNodCBkZXIKRmFsbC4gSXJnZW5kd2llIGhhYiBpY2ggZGVuIEVpbmRydWNrLCBlcyB3aXJkIFNpdHRlLCBoaW50ZXIgamVkZW4gU2F0egptaW5kZXN0ZW5zIGRyZWkgKDMpIHNvbGNoZXIgWmVpY2hlbiB6dSBzZXR6ZW4gdW5kIGlyZ2VuZHdpZSBoYWIgaWNoIGRlbgpFaW5kcnVjaywgZGFzcyBtaWNoIGRhcyBuZXJ2dCAobmljaHQgbnVyIG1pY2gsIG5pY2h0IHdhaHIsIENhcmE/KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VpdGVyOiBTYXR6emVpY2hlbi4uLiAoR3JpbW1ib3JuLCAzMC4gU2VwIDE5OTQsIDIyOjE4OjQyKToKCk1pc3QsIGZhbHNjaGUgU3RlbGxlIHp1bSBpZGxlbiBhdXNnZXN1Y2h0LCBkaWUgS3Jpc3RhbGxzY2hlcmJlbmJlaXNzZXIgaGFiZW4KbWljaCBnZXN0b2VydC4gRXJnZWJuaXM6IHdpZWRlciBtaXQgZGVuIGxwIHJ1bnRlci4uLgpBbHNvLCB3YXMgaWNoIGVpZ2VudGxpY2ggc2FnZW4gd29sbHRlOiBXZW5uIG1pciBqZW1hbmQgbWl0dGVpbHQgS2FubnN0IER1IG1pcgplYmVuIG1hbCBoZWxmZW4/Pz8gd29sbGVuIG1laW5lIEZpbmdlciBlaW4gIk5laW4iIHZvbiBnYW56IGFsbGVpbmUgc2NocmVpYmVuLgpXYXMgaWNoIG1laXN0ZW5zIG5pY2h0IHR1ZSwgd2VpbCBpY2ggd2Vpc3MsIGRhc3MgZXMgbmljaHQgYm9lc2UgZ2VtZWludCBpc3QsCmFiZXIgYXVmIG1pY2ggd2lya3QgZXMgd2llIGVpbmUgTm9ldGlndW5nLiBOaWNodHMgZ2VnZW4gbXVsdGlwbGUgU2F0enplaWNoZW4KYWxzIHJoZXRob3Jpc2NoZXMgTWl0dGVsIChXaWVzbyBtdWVzc2VuIGRpZSBCZWlzc2VyIGF1c2dlcmVjaG5ldCBrb21tZW4sIHdlbm4KaWNoIHNjaHJlaWJlPz8/KSBhYmVyIGFscyBSb3V0aW5lc2FjaGU6IEloIEJhZWghCkZydWVoZXIgcGZsZWd0ZSBtaWNoIGF1Y2ggcGVybWFuZW50ZSBHUk9TU1NDSFJFSUJVTkcgenUgc3RvZXJlbiwgYWJlcgptaXR0bGVyd2VpbGUgaGFiIGljaCBzZWxiZXIgYW4gZWluZXIgVGFzdGF0dXIgbWl0IGtsZW1tZW5kZXIgY2Fwc2xvY2stVGFzdGUKZ2VzZXNzZW4gdW5kIGhhYmUgdm9sbHN0ZXMgVmVyc3RhZW5kbmlzLi4uCkFjaCBqYSwgZmFsbHMgZGFzIG5vY2ggbmljaHQgYXVmZ2VmYWxsZW4gaXN0OiBJY2ggYmVlbmRlIFNhZXR6ZSBtZWlzdCBtaXQKZHJlaSBQdW5rdGVuICguLi4pLiBPYiBkYXMgYXVjaCBqZW1hbmQgbm9ldGlnZW5kIGZpbmRldD8KCk5hY2ggZGVuIGxwIHNjaGllbGVuZDoKICAgICAgICAgICAgICAgICAgICAgICBHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNdXJwaHkgKENhcmFkaHJhcywgIDEuIE9rdCAxOTk0LCAxMjo1NzozMSk6CldpZSBlaW4gbmV1ZXMgTXVycGh5Z2VzZXR6LCBTdGFobGRvcm4/CkRhcyBpc3QgZG9jaCBhbHQhCgpJY2ggd29sbHRlIHZvcmdlc3Rlcm4gc2Nob24gZWluZSBidWdtZWxkdW5nIGFuIGJvaW5nIGxvc3NjaGlja2VuLCB3ZWlsCm1pY2ggZGFzIEFtdWxldHQgZ2VoZWlsdCBoYXQsIGFscyBpY2ggbWl0IG5vY2ggOCBMUCB1bmQgNyBNUCBiZWkgZGVuCjMgRWlzc2Nob2xsZW5iZWlzc2VybiBkcmluc3RhbmQgOy0pKQoKRmFzemluaWVyZW5kCglDYXJhZGhyYXMgZGVyIGV3aWdlIFByb3BoZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIVU5HRVIhISEgKENhcmFkaHJhcywgIDEuIE9rdCAxOTk0LCAxMzowNDowOSk6CkFsc28gS3JldGVrLCBzb2xhbmdlIGR1IGR1IHNhbmZ0IGFuIG1pciBrbmFiYmVyc3QgLi4uIDotKSAqaHVlc3RlbCoKbmEgamEsIGxhc3NlbiB3aXIgZGFzLi4uIHNlbGJlciBzY2h1bGQsIHdlciBtYWNodCBhdWNoIHNjaG5lZW1hbm4sCmF1c3NlcmRlbSBiaW4gaWNoIGtlaW4gSG9iYnlrb2NoLCBpY2ggd29sbHRlIGVzIG51ciBtYWwgd2VyZGVuIDotKQpVbmQgYXVzc2VyZGVtIG5lZWVlcnYgaWNoIHNvb29vIGdlcm5lIDotKSkpKQoKVW5kIGdlZ3JpbGx0IHNjaG1lY2sgaWNoIGdhciBuaWNodCBndXQsIG51ciByb2guLi4KCkNhcmFkaHJhcyBkZXIgZXdpZ2UgUHJvcGhldAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNhdHp6ZWljaGVuIChDYXJhZGhyYXMsICAxLiBPa3QgMTk5NCwgMTM6MDk6MjUpOgoJSHVodQoKUmljaHRpZywgVGVlZnJvc2NoIGFlaCBHcmltbWJvcm4sIGVzIG5lcnZ0Li4uIEhvZmZlbnRsaWNoIHNpZWh0IGRhcyBqZXR6dAp2b24gYXVzc2VuIG5pY2h0IHNvIGF1cyBhbHMgb2IgaWNoIGRpZSB2aWVsZW4gRnJhZ2UtIHVuZCBBdXNydWZlemVpY2hlbgptYWNoZSwgZGVtIGlzdCBuYWVtbGljaCBuaWNodCBzbyEhISEgKnRvdGxhY2gqICpodWVzdGVsKiAqZXJuc3Qgd2VyZCoKCkFsbGUgVmVyc3VjaGUsIGRpZWplbmlnZW4genUgZXJ6aWVoZW4sIHNjaGx1Z2VuIGZlaGwuLi4gZGFiZWkgYmluIGljaCBkb2NoCmRlciAydCBhZWx0ZXN0ZSBzcGllbGVyLi4uIGFlaCwgbmVpbiwgbm9jaCBkcml0dGFlbHRlc3RlIHNwaWVsZXIgdm9uIE1HLAp3dWVyZGUgbWljaCBhbHNvIGhlcnZvcnp1ZWdsaWNoIGVpZ25lbiBhbHMgUGFwaSBvZGVyIEVyemllaHVuZ3NiZXJlY2h0aWd0ZXIKdm9uIEJhLi4uIGFlaCAqa2xhcHBlIGhhbHQqICYgQ28uIDstKQpOYSBqYSwgQXNtb2RpcyBpcyBqYSBlaCBzY2hvbiBTcGllbGVyb3BhIDopKSkKCglDYXJhZGhyYXMgZGVyIGV3aWdlIFByb3BoZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTU1AgKENhcmFkaHJhcywgIDEuIE9rdCAxOTk0LCAxMzoxMTozNSk6CkphLCBNb3Jnb3RoLCBlcyBnaWJ0IG5vY2ggU3RlbGxlbiBkYW5hY2guLi4gYWJlciBuaWNodCBpbiBkZW4gbmV3cyB2b24KbWlyLCBob2VjaHN0ZW5zIGluIGVpbmVtIGtsZWluZW4gUHJpdmF0Z2VzcHJhZWNoIDopCnVuZCBudXIsIHdlbm4gbWFuIGF1Y2ggbmV0dCBnZW51ZyB6dSBtaXIgaXN0LgoKaGV1dGUgZ2FyIG5pY2h0IGVpbmdlYmlsZGV0CgoJQ2FyYWRocmFzIGRlciBld2lnZSBQcm9waGV0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzZXggdW5kIGt1bHR1ciB1bmQgbXVzaWsgKFRob3JpbiwgIDEuIE9rdCAxOTk0LCAyMjowMDozNSk6ClRqYSwgMi4gVmVyc3VjaDogQWxzbywgU2V4IGlzdCBzY2hvbiBLdWx0dXIsIGRlbm4gYW5zb25zdGVuIHdhZXJlbgp3YWhyc2NoZWlubGljaCBrZWluZSBCdWVjaGVyIGRydWViZXIgZ2VzY2hyaWViZW4gd3VyZGVuLCBhdWNoIHdlbm4gaWNoIEJ1ZWNoZXIKZGFydWViZXIgZnVlciBzY2h3YWNoc2lubmlnIGZpbmRlLi4uIERlbm4gYmVpbSBVbnRlcnJpY2h0IGluIGRlciBPcmkgZ2FiIGVzIGphCmF1Y2gga2VpbmUgcHJha3Rpc2NoZW4KVWVidW5nZW4gOikpKQpVbmQgenUgU2V4IHVuZCBNdXNpazogaXN0IHNjaG9uIGFiaGFlbmdpZywgZGVubiB3ZXIgd3VlcmRlIHp1bSBTZXggZ2VybgpTcGVlZC0gb2RlciBEZWF0aG1ldGFsIG9kZXIgVGVra25vIGhvZXJlbiAoaWNoIGF1ZiBqZWRlbiBGYWxsIG5pY2h0LCBpY2gKbW9lY2h0ZSBoaWVyIGtlaW5lbSBWZXJlaHJlciBkZXIgb2JyaWdlbiBNdXNpa3JpY2h0dW5nZW4gYXVmIGRpZSBGdWVzc2UKc3RlaWdlbiwgZGVubiBpY2ggaGFiIG51ciB6d2VpIEJlaW5lLAptaXQgZGVuZW4gaWNoIG1pY2ggc2Nob24gdm9uIEh1ZWhuZXJhdWdlIHp1IEh1ZWhuZXJhdWdlIHZvbiBhbmRlcmVuIExldXRlfnIKKG1pc3QsIHp1IGZydWVoIH5yIGdlbWFjaHQgOikgYmV3ZWdlIC4uLgpFaW4gdHJvdHpkZW0gbm9jaCBncmluc2VuIGtvZW5uZW5kZXIgVGhvcmluIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUSoqIChIb2JvLCAgMS4gT2t0IDE5OTQsIDIyOjE4OjAxKToKVW5zZXIgQXV0byBpc3QgdWVicmlnZW5zIFF1b3R6bGlwZWNrIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2V4IHVuZCBrdWx0dXIgdW5kIG11c2lrIChCb2luZywgIDEuIE9rdCAxOTk0LCAyMjoxODoyMik6CkFsc28gaWNoIGZpbmQgVGVra25vIHRvbGwhIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc2V4IHVuZCBrdWx0dXIgdW5kIG11c2lrIChCb2luZywgIDEuIE9rdCAxOTk0LCAyMjoxOTowMCk6CkhhYiBpY2ggbWljaCBqZXR6dCBnZW91dGV0PwogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZXggdW5kIEt1bHR1ciAoRW5neXd1Y2ssICAxLiBPa3QgMTk5NCwgMjI6MzQ6MzApOgpGcmFnZTogRmluZGVuIFNpZSwgZGFzIFNleCBldHdhcyB1bmFuc3RhZW5kaWdlcyBpc3Q/CkFudHdvcnQ6IERhcyBrYW5uIGVyIHNjaG9uIHNlaW4sIHdlbm4gbWFuIGVzIHJpY2h0aWcgdHJlaWJ0Li4uCgooT2sgb2ssIGljaCBnZWIgenUsIGRlciBpc3QgbmljaHQgdm9uIG1pciBzb25kZXJuIHZvbiBXb29keSBBbGxlbi4uLikKVHJvdHpkZW0gQ2lhbywgRW5neXd1Y2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWl0ZXI6IFNhdHp6ZWljaGVuLi4uIChHb2xkdHVydGxlLCAgMi4gT2t0IDE5OTQsIDA3OjAyOjAwKToKQmVpIG1pciBrb21tdCBkaWUgIS1UYXN0ZSBuaWNodCBtZWhyIGhvY2ghISEhISEhISEhIChhYmVyIG51ciBkaWUhISEhISkKV2FzIHNvbGwgaWNoIHR1bj8/Pz8/Pz8/Pz8gKG9oIGRpZSBmcmFnZXplaWNoZW50YXN0ZSBhdWNoICEhISEhISkKR29sZFR1cnRsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZWl0ZXI6IFNhdHp6ZWljaGVuLi4uIChUb2V0ZXIsICAyLiBPa3QgMTk5NCwgMTI6MDk6NTEpOgpkZGRkZGRhYWFhYWFhYWFhIGJiYmJiYmJiYmJpaWlpaWlpaXNzc3Nzc3NzdHR0dHR0dCBkZGRkZGRkZHV1dXV1dXUKYWFhYWFhYWFiYmJiYmJiYmJiZWVlZWVlZWVlcnJycnJycnIgbm5ubm5vb29vb29vb2NjY2NjY2NjaGhoaGhoaApnZ2dnZ3V1dXV1dXV0dHR0dHQgZGRkcnJycnJyYWFhYWFhYW5ubm5ubm5uIDo6Ojo6Ojo6KSkpKSkpKSkpClRUVFRUVG9vb29vb29vZWVlZWVlZXR0dHR0dHR0ZWVlZWVlZXJycnJycnJycgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcmU6R29ibGluZHJhY2hlIChUb2V0ZXIsICA0LiBPa3QgMTk5NCwgMDI6Mjk6NTEpOgpIYXR0ZSBuaWNodCBpcmdlbmR3ZXIgbmV1bGljaCBuZSBLYW1wZnNlcXVlbnogdm9tIEdvYmxpbmRyYWNoZW4gYWxzIApBYnNjaHJlY2t1bmcgZ2Vwb3N0ZXQ/IEhpZXIgaXN0IG1hbCBlaW5lLCBkaWUgZGllIFdJUktMSUNIIGZpZXNlbiBNb25zdGVyIHZvbgpSb2NodXMgemVpZ3Q6CgpFaW4gRmV1ZXJzdHJhaGwgc2NoaWVzc3QgYXVzIERlaW5lbSBSaW5nIHVuZCB0cmlmZnQgZWluIERydWlkZS4KRWluIERydWlkZSBzY2hsZXVkZXJ0IGVpbmVuIGtsZWluZW4gRmV1ZXJiYWxsIGF1ZiBEaWNoLgpEdSBoYXN0IGpldHp0IDE5OSBMZWJlbnNwdW5rdGUgdW5kIDIxMCBNYWdpZXB1bmt0ZS4KRHUgc3RlY2tzdCBkYXMgU2Nod2VydCB6dXJ1ZWNrLgpEdSB3aXJmc3QgZWluZW4gRmV1ZXJiYWxsIG5hY2ggZGVtIERydWlkZW4uCkR1IHp1ZWNrc3QgZGFzIFNjaHdlcnQuCj4gICBEdSBncmVpZnN0IGRlbiBEcnVpZGVuIG1pdCBkZW0gU2Nod2VydCBhbi4KICBEdSB0cmlmZnN0IGRlbiBEcnVpZGVuIHNlaHIgaGFydC4KRWluIERydWlkZSB6YXViZXJ0IGVpbmVuIEJsaXR6LCBkZXIgRGlyIGRpZSBXYWZmZSBhdXMgZGVyIEhhbmQgc2NobGFlZ3QuCkR1IHdpcmZzdCBlaW5lbiBGZXVlcmJhbGwgbmFjaCBkZW0gRHJ1aWRlbi4KPiBEdSBoYXN0IGpldHp0IDIwMCBMZWJlbnNwdW5rdGUgdW5kIDE3MCBNYWdpZXB1bmt0ZS4KICBEdSBncmVpZnN0IGRlbiBEcnVpZGVuIHNlaW5lbiBibHV0dHJpZWZlbmRlbiBaYWVobmVuIGFuLgogIER1IHZlcmZlaGxzdCBkZW4gRHJ1aWRlbi4KICBEZXIgRHJ1aWRlIGdyZWlmdCBEaWNoIG1pdCBzZWluZW4gSGFlbmRlbiBhbi4KICBEZXIgRHJ1aWRlIHZlcmZlaGx0IERpY2guCkR1IHdpcmZzdCBlaW5lbiBGZXVlcmJhbGwgbmFjaCBkZW0gRHJ1aWRlbi4KPiAgIER1IGdyZWlmc3QgZGVuIERydWlkZW4gc2VpbmVuIGJsdXR0cmllZmVuZGVuIFphZWhuZW4gYW4uCiAgRHUgdHJpZmZzdCBkZW4gRHJ1aWRlbi4KRWluIERydWlkZSB3aXJkIHNjaG5lbGxlci4KPiAgIER1IGdyZWlmc3QgZGVuIERydWlkZW4gc2VpbmVuIGJsdXR0cmllZmVuZGVuIFphZWhuZW4gYW4uCiAgRHUga3JhdHp0IGRlbiBEcnVpZGVuLgogIERlciBEcnVpZGUgZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbiBIYWVuZGVuIGFuLgogIERlciBEcnVpZGUgdmVyZmVobHQgRGljaC4KRWluIERydWlkZSBzY2hsZXVkZXJ0IGVpbmVuIEZldWVyYmFsbCBhdWYgRGljaC4KRHUgaGFzdCBqZXR6dCAxNzQgTGViZW5zcHVua3RlIHVuZCAxNTEgTWFnaWVwdW5rdGUuCiAgRGVyIERydWlkZSBncmVpZnQgRGljaCBtaXQgc2VpbmVuIEhhZW5kZW4gYW4uCiAgRGVyIERydWlkZSBrcmF0enQgRGljaC4KRHUgaGFzdCBqZXR6dCAxNzEgTGViZW5zcHVua3RlIHVuZCAxNTEgTWFnaWVwdW5rdGUuCkR1IHdpcmZzdCBlaW5lbiBGZXVlcmJhbGwgbmFjaCBkZW0gRHJ1aWRlbi4KPiAgIER1IGdyZWlmc3QgZGVuIERydWlkZW4gc2VpbmVuIGJsdXR0cmllZmVuZGVuIFphZWhuZW4gYW4uCiAgRHUgdHJpZmZzdCBkZW4gRHJ1aWRlbiBoYXJ0LgpFaW4gRHJ1aWRlIHNjaGxldWRlcnQgZWluZW4gZ2lnYW50aXNjaGVuIEZldWVyYmFsbCBhdWYgRGljaC4KRHUgaGFzdCBqZXR6dCA4MiBMZWJlbnNwdW5rdGUgdW5kIDEzMSBNYWdpZXB1bmt0ZS4KRWluIERydWlkZSBzY2hsZXVkZXJ0IGVpbmVuIGtsZWluZW4gRmV1ZXJiYWxsIGF1ZiBEaWNoLgpEdSBoYXN0IGpldHp0IDcxIExlYmVuc3B1bmt0ZSB1bmQgMTMxIE1hZ2llcHVua3RlLgpFaW4gRHJ1aWRlIHNjaGxldWRlcnQgZWluZW4gZ3Jvc3NlbiBGZXVlcmJhbGwgYXVmIERpY2guCkR1IGhhc3QgamV0enQgMjMgTGViZW5zcHVua3RlIHVuZCAxMzEgTWFnaWVwdW5rdGUuCkVpbiBEcnVpZGUgc2NobGV1ZGVydCBlaW5lbiBGZXVlcmJhbGwgYXVmIERpY2guCkR1IGhhc3QgamV0enQgOSBMZWJlbnNwdW5rdGUgdW5kIDEzMSBNYWdpZXB1bmt0ZS4KRGllIEFuZ3N0IGlzdCBzdGFlcmtlciBhbHMgRHUgLi4gRHUgd2lsbHN0IG51ciBub2NoIHdlZyBoaWVyLgpXaWUgYml0dGU/CgpUb2V0ZXIgZGVyIERydWlkZW50b2V0ZXIgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlciBpc3QgZGVyIEFlbHRlc3RlPzI/Mz80PzU/IChHdXlicnVzaCwgIDQuIE9rdCAxOTk0LCAxMjoxMDoxNik6CgoKQWxzbywgaWNoIGdhbGF1YiBkZXIgQWVsdGVzdGUgaXN0IEJpZ2Zvb3QuLgoKCUd1eWJydXNoLCBkZXIgYmVzdGltbXQgbmljaHQgZGVyIGp1ZW5nc3RlIGlzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZXIgaXN0IGRlciBBZWx0ZXN0ZT8yPzM/ND81PyAoTG9vc2VyLCAgNC4gT2t0IDE5OTQsIDE0OjQwOjQ2KToKSGlhIEFsbGVzYW10IC4uLgoKQWxzbyAtIHdlbm4gSWhyIFByb2JsZW1lIG1pdCBkZW0gYWx0ZXIgaGFidCAobmljaHQgZGllIHplaXQgZGllIG1hbiBpbQpNdWQgdmVyYnJpbmd0LCBzb25kZXJuIG5hY2ggZGVtIGZpcnN0X2xvZ2luIGdlaHQpLCBtdWVzc3RlbgpDYXJhZGhyYXMgdW5kIGljaCBqYSB3b2hsIGdhbnogb2JlbiBzdGVoZW4gLi4uCkNhciogd2FyIGhpZXIgbmFlbWxpY2ggZ2VuYXUgd2llIGljaCB0ZXN0c3BpZWxlciAobWVociBvZGVyIHdlbmlnZXIKenVtaW5kZXN0KSwgdW5kIHdlciBzb25zdCBrYW5uIHNpY2ggZGFyYW4KZXJpbm5lcm4sIGRhc3MgbWFuIG1hbCBuZW4gZmVscyBiZXJ1ZWhyZW4ga29ubnRlLCB1bSB2b24KUG9ydCBWYWluIGluIGRpZSBIb2NoZWJlbmUgenUga29tbWVuID8KCiAgICAgICAgICAgIEFsc28gLSB3ZW5uIElociBGcmFnZW4gaGFidCB3aWUncyBmcnVlaGVyIG1hbCBoaWVyIHdhcjoKICAgICAgICAgICAgICAgICBFciBpc3QgZnVlciBFdWNoIGRhICEKICAgICAgICAgICAgICAgICAgICAgICAgRGVyIExvb3NlciAhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdlciBpc3QgZGVyIEFlbHRlc3RlPzI/Mz80PzU/IChCb2luZywgIDQuIE9rdCAxOTk0LCAxNDo1MToyNSk6ClRqYSwgYWJlciBrb2VubnQgaWhyIGRhbWl0IG1pdGhhbHRlbjogSWNoIGhhYiBhbSAyNS4gMy4gMTk5MiBoaWVyIGRpZQpvcmMtc2xheWVyIHF1ZXN0IGdlbG9lc3QsIGRhbWFscyBub2NoIGluIEVuZ2xpc2NoIC4uLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuYSBzb3dhcyAoR3V5YnJ1c2gsICA0LiBPa3QgMTk5NCwgMTU6MzU6MzYpOgoKdHNjaHVsZGlndW5nIGZ1ZXIgZGllIHZlcndpcnJ1bmcgKGFsbGVzIGtsZWluLCB3b2hsIGdlbWVya3QpCmljaCBtZWludCBqYSBhdWNoIGltIFJMIGlzdCBiaWdmb290IGRlciBhZWx0ZXN0ZQoKCUd1eWJydXNoLCB2aWVsbWFscyB1bSB2ZXJ6ZWlodW5nIGJpdHRlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2VyIGlzdCBkZXIgQWVsdGVzdGU/Mj8zPzQ/NT8gKENhcmFkaHJhcywgIDQuIE9rdCAxOTk0LCAxNjoyNjo1Myk6CkZlbHMgYmVydWVocmVuPyA6KSBkZW4gZ2FicyBkYW1hbHMgZ2xhdWJlIGljaCBub2NoIG5pY2h0IGFscyBpY2ggbWljaCBkYXMKZXJzdGUgbWFsIGhpZXIgZWlubG9nZ3RlLiBhbHNvIGFuIGRlbiByZWhib2NrIGVyaW5uZXJlIGljaCBtaWNoIG5vY2gsIGRlbgp3YWxkd2VnIG5hY2ggbm9yZGVuIGFsc28sIHVuZCB6d2Fja2xpIGdhYnMgYXVjaCBzY2hvbiByZWNodCBmcnVlaCwKd2VuaWdzdGVucyBkaWUgZXJzdGVuIHJhZXVtZSBkZXMgc2NobG9zc2VzIHp1bSBrYXJ0b2ZmZWxzY2hhZWxlbiwgYWJlcgpkYXNzIGljaCBkYW1hbHMgc2Nob24gYXVmIGRlciBIb2NoZWJlbmUgd2FyIHp1bSBidWdzIGZpbmRlbi4uLiBobW1tLApkZW4gd2VnIG5hY2ggT3N0ZW4gZ2FicyBkYW1hbHMgZ2xhdWJlIGljaCBub2NoIG5pY2h0IDopCk51ciBsYXV0ZXIgZmVobGVyIGltIFJaRywgd2VpbCBlcyBkaWUgZXhpdHMgbmFjaCBvc3RlbiB6d2FyIHNjaG9uIGdhYiwgYWJlcgpkaWUgZmlsZXMgbm9jaCBuaWNodCBleGlzdGllcnRlbiA7LSkKCk9jaCBHb3R0IGJpbiBpY2ggYWx0ICprbnVkZGVsIExvb3NlcioKCiAgICAgICAgICAgICAgQ2FyYWRocmFzIGRlciBld2lnZSBQcm9waGV0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpwaGlsb3NvcGhpZSAoU21hdWcsICA0LiBPa3QgMTk5NCwgMTc6NTM6NTUpOgoKdGphIGFsc28gbWFsIE1BSExaRUlUIGFuIGFsbGUKaWNoIGhhYiBkYSBzY2hvbiBzZWl0IGxhbmdlbSBzbyBlaW5lIGZyYWdlOgphbGwgZGllIGNoYXJha3RlcmUgaW0gTW9yZ2VuR3JhdWVuLCB3aXNzZW4gZGllIGVpZ2VudGxpY2gsIGRhc3ogd2lyCmVpbmZhY2ggc28genVtIHNwYXN6IG1pdCBpaG5lbiBzcGllbGVuLCBvZGVyIGdsYXViZW4gc2llLCBzaWUgd2FlcmVuCndpcmtsaWNoIGZpZ3VyZW4gaW4gZWluZXIgd2lya2xpY2hlbiB3ZWx0Pz8/Cgp3ZW5uIGRhcyBzbyB3YWVyZSwgc2luZCBkYW5uIHZpZWxsZWljaHQgYXVjaCB3aXIgbnVyIGZpZ3VyZW4gaW4gZWluZW0gbm9jaApncm9lc3plcm4sIGtvbXBsZXhlcmVuIHJvbGxlbnNwaWVsCgp1bmQgZGllc2Ugc3BpZWxlciBzaW5kIGRhbm4gdmllbGxlaWNodCBhdWNoIG51ciBtYXJpb25ldHRlbiBpbgplaW5lbSBub2NoIGdyb2VzemVyZW4sIG5vY2gga29tcGxleGVyZW4gcm9sbGVuc3BpZWwKCnVuZCBkaWVzZSBzcGllbGVyIHNpbmQgZGFubiB2aWVsbGVpY2h0IGF1Y2ggbnVyIC4uLi4KdGphIGlociB3aXNzdCB3aWVzIHdlaXRlcmdlaHQuCgphYmVyIGRpZSBhbSB3aWNodGlnc3RlbiB3YWVyZSBkYW5uOgpzcGllbGVuIHVuc2VyZSBmaWd1cmVuIGRhbm4gbWl0IGVpbmVtIG5pY2h0IHNvIGdyb3N6ZW4sIG5pY2h0IHNvIGtvbXBsZXhlbgptdWQuCihlcyB3YWVyZSBqYSBuaWNodCBzbyBzY2hsaW1tLCB3ZW5uIHNpZSBoaWVyIHNwaWVsZW4gd3VlcmRlbiwgYWJlcgpzbyBnYW56IG9obmUgdW5zZXIgd2lzc2VuLi4uKQoKc21hdWcgZGVyIGluIGVpbmVtIGZydWVoZXJlbiBsZWJlbiwgYW4gZWluZW0gYW5kZXJlbiBvcnQsIHp1IGVpbmVyIGFuZGVyZW4KICAgICAgemVpdCBlaW5tYWwgZWluIHJlaWNoZXIgZHJhY2hlIGdld2VzZW4gaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHBoaWxvc29waGllIChTdGFobGRvcm4sICA0LiBPa3QgMTk5NCwgMTc6NTc6NTYpOgpKQSAhICBJY2ggbXVkZGUgYXVjaCBpbiBlaW5lbSBhbmRlcmVuIE1VRCAhICAoSG9mZmVudGxpY2gga29tbXQgbWVpbiBoZXJyY2hlbgpuaWNodCBkcmF1ZikKU1RBSEwgIChkZXIgRUNIVEUpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogcGhpbG9zb3BoaWUgKFJhdHosICA0LiBPa3QgMTk5NCwgMTg6MTI6NDUpOgp3ZW5uIGRpZSBmaWd1cmVuIGZpZ3VyZW4gYmVkaWVuZW4ga29lbm50ZSBkYXMgZWlubWFsIGltIGtyZWlzIGdlaGVuIHVuZCBkaWUKbXVkcyB3dWVyZGVuIHNpY2ggc2VsYnN0c3RhZW5kaWcgbWFjaGVuIQpnZXdpc3NlIFBlcnNvbmVuIGltIFJMIHd1ZXJkZW4gZGFubiB1ZWJlcmZsdWVzc2lnISBJY2ggenVtIEJlaXNwaWVsLgpSYXR6ZmF0eiBSYXR6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGhpbG9zb3BoaWUmQ28gKEdyaW1tYm9ybiwgIDQuIE9rdCAxOTk0LCAyMTowMDo0NSk6CgpKYSwgdmllbGxlaWNodCBpc3QgamEgZGllIFRhdHNhY2hlLCBkYXNzIGRpZSBtdWRzICJpbSBLcmVpcyBnZWhlbiIgRGVyIEdydW5kCmRhZnVlciwgd2llc28gZXMga2VpbmUgR29ldHRlciBnaWJ0LiBEZW5uIG9obmUgQW5mYW5nIGtlaW5lIFNjaG9lcGZ1bmcsIHVuZAp3YXMgd2FlcmUgZWluIEdvdHQgb2huZSBTY2hvZXBmdW5nPwoKU2ljaCBzZWluZXIgU2FjaGUgc2VociBzaWNoZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwaXR6bmFtZW4uLi4gKEdyaW1tYm9ybiwgIDQuIE9rdCAxOTk0LCAyMjo1OTozNCk6CgpKYSwgZGEgaXN0IG1pciBkb2NoIG5ldWxpY2ggZGVyIFNwaXR6bmFtZSAiVG9yZmtvcHAiIGZ1ZXIgZWluZW4gTWFnaWVyCmJlZ2VnbmV0LiBJY2ggbXVzcyBzYWdlbiwgZGFzIGZpbmRlIGljaCBuaWNodCBndXQuIE1hbiBrb2VubnRlIGphIGRhcmF1ZmhpbgpnbGF1YmVuLCBkZXIgVG9yZiB3YWVyZSByZWluIGFldXNzZXJsaWNoLi4uIDstKQoKRWluIEJlaXNwaWVsIGZ1ZXIgZWluIGhpbnRlcmhhZWx0aWdlcyBmbGFtZSBnZWJlbmQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHNleCB1bmQga3VsdHVyIHVuZCBtdXNpayAoSGF0ZSwgIDUuIE9rdCAxOTk0LCAwOTo1NTo0MCk6CkJPSU5HISBUaGUgUHJvZGlneSBzcGllbHQgYW0gMTMuMTEuOTQgaW0gRS1XZXJrIGluIEJlcmxpbiEKbmljaHQgb2huZSAuLi4uLi4gKkZSSVRaKgoKSGF0ZS4vCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdlciBpc3QgZGVyIEFlbHRlc3RlPzI/Mz80PzU/IChIaWdobGFuZGVyLCAgNS4gT2t0IDE5OTQsIDExOjMwOjU3KToKSmEsIGRlciBndXRlIGFsdGUgRmVsc2VuLi4uCktlbm5zdCBEdSBhdWNoIG5vY2ggZGFzIElnbHUgenVtIEZyaWVkaG9mPyA6PgoKICBkZXIgR3JlaWYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmU6IFdlciBpc3QgZGVyIEFlbHRlc3RlPzI/Mz80PzU/IChMb29zZXIsICA1LiBPa3QgMTk5NCwgMTE6NTM6MDUpOgpIaWEgR3JlaWYgIQoKRWluZSBzYWNoZSAtIHdlbGNoZXMgSWdsdSA/IGljaCBrYW5uIG1pY2ggc2Nob24gbm9jaCBkcmFuCmVyaW5uZXJuLCBhYmVyIGRhbWFscyBnYWJzIChzb3dlaXQgd2llIGljaCBkYXMgbWl0Z2VrcmllZ3QgaGFiKQpub2NoIGtlaW5lbiBGcmllZGhvZiAtIGVyc3QgZ2VnZW4gRW5kZSBtZWluZXIgMS4gU3BpZWxlcnplaXQgIQpBYmVyIHdhcyBzb2xscyAtIHdvbGxuIHdpciBuaWNodCBsYWVuZ2VyIGluIE5vc3RhbGdpZSBzY2htYXJybi8gc2Nod2Flcm1lbgouLi4KdW5kIHVucyBzdGF0dGRlc3NlbiBkZW4gd2ljaHRpZ2VuIERpbmdlbiB6dXdlbmRlbiAuLi4KTmljaHQgd2FociwgbWVpbiBsaWViZXIgU2NobGFiYmVybXVya3MgPwoKICAgICAgIFZpZWxlIEdydWVzc2Ugdm9tIFNjaGxhYmJlcm11cmtzCiAgICAgICAgICAoYmVpIHdlaXRlbSBuaWNodCBzbyBhbHQgd2llIGljaCAhKQogICAgICAgICAgIChkYW1hbHMgd2FyIGJlaW0gZHJhY2hlbmJhYnkgc2NobHVzcykKICAgICAgICAgICAgICAgICAgIExvb3NlciA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmU6IFJlOiBXZXIgaXN0IGRlciBBZWx0ZXN0ZT8yPzM/ND81PyAoSGlnaGxhbmRlciwgIDUuIE9rdCAxOTk0LCAxMjoxMDo1Nyk6Ck1vaW4gVGFjaCwgTG9vc2VyIQpXZWxjaGVzIElnbHU/IE5hLCBEQVMgSWdsdSA6PgpVbmQgd2VubiBEdSBuaWNodCBFWFRSRU0gZnJ1ZWggaW4gTUcgd2Fyc3QsIGRhbm4gbXVlc3N0ZSBlcwpkZW4gRnJpZWRob2Ygc2Nob24gZ2VnZWJlbiBoYWJlbi4gQXVmIGRlbSBoYWIgamEKaWNoIG1laW5lIFhQIGdlaG9sdCAoYWxsZXJkaW5ncyBub2NoIG9obmUgS2F0YWtvbWJlbikgLSBoYWxsbywgVmFtcGlyIDo+Ci0gdW5kIGljaCB3YXIgc2Nob24gTWFnaWVyLCBiZXZvciBNRyBvZmZpemllbGwgb2ZmZW4gd2FyIChhbGxlcmRpbmdzCmxlZ2FsIGRpZSBYUCBnZWhvbHQpLiBVbmQgZGFtYWxzIGthbSBtYW4gbm9jaCBtaXQgZGVtIElnbHUKZGEgaGluIDo+CkNpYW8sCiAgIEhpZ2hsYW5kZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdlciBpc3QgZGVyIEFlbHRlc3RlPzI/Mz80PzU/IChZZW5kaSwgIDUuIE9rdCAxOTk0LCAxMjoxMTo1OSk6CkFjaCBqYSwgZGFzIElnbHUuLi4gSGFiZSBpY2ggc2VsYmVyIG5pZSBiZW51dHp0LCB3ZWlsIGljaCBkYW1hbHMgbm9jaAp6dSBrbGVpbiB3YXIgdW5kIG1pY2ggbmljaHQgdHJhdXRlLi4uCkFiZXIgd2Vpc3MgZGVubiBqZW1hbmQgZ2VuYXUsIFdBTk4gZGFzIHVtZ2ViYXV0IHd1cmRlPyBXdWVyZGUgbWlyIGhlbGZlbiwKZmVzdHp1c3RlbGxlbiwgd2FubiBpY2ggYXVmIGRpZSBXZWx0IChyZXNwZWt0aXZlIE1HKSBnZWtvbW1lbiBiaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlOiBSZTogUmU6IFdlciBpc3QgZGVyIEFlbHRlc3RlPzI/Mz80PzU/IChMb29zZXIsICA1LiBPa3QgMTk5NCwgMTM6MDQ6MDEpOgpNb2luIE1PaW4gR3JlaWYgLi4uCgpEaWUgRnJhZ2UsIHVtIGRpZSBlcyBnZWh0IGlzdCBkb2NoOiBXYXMgaXN0IGZydWVoLCBvZGVyID8KQWxzbyAtIGRlbiBGcmllZGhvZiBoYWIgaWNoIG5pZSBiZXRyZXRlIGtvZW5uZW4gLSB3aWVzbyBkZW5uIGF1Y2ggLQptaXQgZGVuIGFuZmFuZ3NzdGF0cyAoZGFtYWxzIGdhYiBlcyBub2NoIEtFSU5FClphdWJlcnRyYWVua2UpIGxpZXNzIHNpY2ggZGEgYXVjaCBuaWNodHMgYXVzcmljaHRlbiAhCkljaCB3ZWlzcyBqYSBuaWNodCwgb2IgZXMgaGllciB3aWUgaW4gTkYgZWluIGZpcnN0X2xvZ2luX2RhdGUKZ2lidCwgYWJlciB3ZW5uIER1IERpciBtZWlucyBhbnNjaGF1c3QsIGRhbm4gbXVlc3N0ZSBpY2ggc2Nob24KU0VIUiBmcnVlaCBkcmluZ2V3ZXNlbiBzZWluLi4uCih3dWVyZGUgbWljaCBhdWNoIG1hbCBpbnRlcmVzc2llcmVuLCB3YW5uIGljaCBkYXMgZXJzdGUgbWFsIGhpZXIgd2FyIChtdXNzIHNvCnZvciAyIEphaHJlbiB1bmdlZmFlaHIgZ2V3ZXNlbiBzZWluKSAuLi4KICAgICAgICAgICAgICAgIENpYW8gTG9vc2VyIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW4gYWxsZSBNYWdpZXIgKFllbmRpLCAgNS4gT2t0IDE5OTQsIDEzOjU0OjUxKToKTGFlc3N0IHNpY2ggbmljaHQgaXJnZW5kd2llLCBldnRsLiBhbmhhbmQgYWx0ZXIgWmVpdHVuZ3MtYmFja3VwcywKZmVzdHN0ZWxsZW4sIHdhbm4gZWluIFNwaWVsZXIgZGVuIGVyc3RlbiBBcnRpa2VsIGdlc2NocmllYmVuIGhhdD8KCkRhcyB3YWVyZSBlaW5lIE1vZWdsaWNoa2VpdCwgZGVuIEdlYnVydHN0YWcgZWluZXMgU3BpZWxlcnMgd2VuaWdzdGVucwp1bmdlZmFlaHIgenUgZXJtaXR0ZWxuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbiBhbGxlIE1hZ2llciAoRGFuY2VyLCAgNS4gT2t0IDE5OTQsIDE0OjM2OjAzKToKRXMgbGFlc3N0IHNpY2ggZXJtaXR0ZWxuLCB3YW5uIGVyIHNlaW5lIGVyc3RlIFF1ZXN0IGdlbG9lc3QgaGF0IChoYWIgaWNoIHZvcgpkZW0gMS4gWmVpdHVuZ3NhcnRpa2VsIGdlc2NoYWZmdCA7KSApCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbiBhbGxlIE1hZ2llciAoWWVuZGksICA1LiBPa3QgMTk5NCwgMTU6MDk6MTIpOgpTY2hpY2shCgpXaWUgd2FlcnMgbWl0IGVpbmVyIFplaXRhbmdhYmUgYmVpIGRlciBRdWVzdGxpc3RlIGluIGRlciBHaWxkZToKClhZWi1RdWVzdDogICAgIGdlbG9lc3QgYW0geHgueHgueHgKCk5hPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSZTogUmU6IFJlOiBSZTogV2VyIGlzdCBkZXIgQWVsdGVzdGU/Mj8zPzQ/NT8gKEhpZ2hsYW5kZXIsICA1LiBPa3QgMTk5NCwgMTU6NDc6NTkpOgpTdGltbXQgc2Nobywgc3RhdHMgd2FyZW4gbnVyIGF1ZiAxIC0gd2FzIGdsYXVic3QgRHUsIHdpZSBpY2ggYXVmIGRlbQpGcmllZGhvZiBydW1nZWxhdWZlbiBiaW4/IDo+CkdlbmF1IHNvLiBEZXIgWm9tYmllZHJhY2hlIHdhciBqYSBuaWNodCBnYW56IHNvIGhhcnQgd2llIGpldHp0LCB1bmQgZGFzClpvbWJpZS0gdW5kIGRhcyBCUy1TY2h3ZXJ0IGtvbm50ZSBtYW4gYmVpZGUgdmVyd2VuZGVuLgpEdSBtdXNzdCBhbGxlcmRpbmdzIGF1Y2ggdm9yIEVyb2VmZm51bmcgZGEgZ2V3ZXNlbiBzZWluIDo+ClVuZCB0c2NodWVzcywKICAgIEhpZ2hsYW5kZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQW4gYWxsZSBNYWdpZXIgKExvb3NlciwgIDYuIE9rdCAxOTk0LCAxMjo0OTo1Nyk6CkRhcyBpc3QgdHJvdHpkZW0ga2VpbmUgSGlsZmUgLSBhbHMgei5CLiBpY2ggbWVpbmUgZXJzdGVuIFNjaHJpdHRlIGltIE1HCmdlbWFjaHQgaGFiZSwgZ2FiIGVzIHdlZGVyIFF1ZXN0cyBub2NoIFplaXR1bmdlbiA7LSkKCiAgICAgICAgICAgICAgQ2lhbyAtIExvb3NlciA7LSkKICAgICAgICAgICAgICAoRnVlaGx0IHNpY2ggdXJhbHQgOy0pKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdlciBpc3QgZGVyIEFlbHRlc3RlPyAoRnJldW5kLCAgNi4gT2t0IDE5OTQsIDEzOjE1OjQ0KToKSGksCmljaCBtdXNzIGRhenUgbnVuIGphIGF1Y2ggbWFsIG1laW5lbiBTdG9seiBhbm1lbGRlbjoKRnJldW5kIHdhciB1bmQgaXN0IGRlciBhbGxlcm5hY2hlcnN0ZSBTcGllbGVyLCBkZXIgTWFnaWVyIGdld29yZGVuIGlzdC4KRXMgZ2FiIGtlaW5lIFphdWJlcnRyYWVua2UuIEtlaW5lIFN0YXRzLiBadW0gTWV0emVsbiBudXIgRnJpZWRob2YgdW5kCkhvY2hlYmVuZS4gVW5kIGljaCBoYWJlIGRpZSBGcmllZGhvZnNxdWVzdCBhbHMgZXJzdGVyIGdlbG9lc3QgZnVlcgpzYWdlIHVuZCBzY2hyZWliZSAzNTAuMDAwIEVyZmFocnVuZ3NwdW5rdGUuICh6d2lua2VyIEJvaW5nIHp1KQpJbiBFcmlubmVydW5nIHNjaHdlbGdlbmQuLi4gRnJldW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbm9jaG1hbCBzY2htYXJybiAoVGFtYXJhLCAgNi4gT2t0IDE5OTQsIDE3OjE3OjU1KToKIiBXaXIgbmVobWVuIGRlbSBNb3JnZW4gZGFzIEdyYXVlbiAiCgooU2xvZ2FuIGRlciBNdWVuY2huZXIgVmVya2VocnNiZXRyaWViZSkKCmVpbmdlc2VuZGV0IHZvbiBUYW1yYSBULiBhdXMgTS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRpcHBmZWhsZXIgKFRhbWFyYSwgIDYuIE9rdCAxOTk0LCAxNzozOTo1OCk6Cm5hdHVlcmxpY2ggdm9uIFRhbWFyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZC5kciAoQXJhbnlhLCAgNy4gT2t0IDE5OTQsIDEyOjIyOjQ3KToKRXMgbGViZSBkZXIgNDUuIEphaHJlc3RhZyBkZXIgR3J1ZW5kdW5nIGRlciBEZXV0c2NoZW4gRGVtb2tyYXRpc2NoZW4gUmVwdS0KYmxpaywgdW5zZXJlcyBzb3ppYWxpc3Rpc2NoZW4gVmF0ZXJsYW5kZXMsIGRlcyBlcnN0ZW4gQXJiZWl0ZXItIHVuZCBCYXVlcm4tCnN0YWF0ZXMgYXVmIGRldXRzY2hlbSBCb2Rlbi4KCldlaXNzIGFsbGVyZGluZ3MgbmljaHQsIHdhcyBpY2ggZGFtaXQgc2FnZW4gd29sbHRlLgpVZWJyaWdlbnM6IFdpZSBhbHQgaXN0IE1HPwpEdW1tc2lubiBzY2h3YWV0emVuZAogICAgICAgICAgICAgICAgICAgIEFyYW55YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZC5kciBJSSAoQXJhbnlhLCAgNy4gT2t0IDE5OTQsIDEyOjI0OjIxKToKV2FlcmUgenUgdWViZXJsZWdlbiwgb2IgZGVyIG9iaWdlIEFydGlrZWwgbmljaHQgbmFjaCBXaXR6ZSBnZWhvZXJ0Li4uCkFyYW55YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGQuZHIgSUkgKFphcmRveiwgIDcuIE9rdCAxOTk0LCAxMjoyNTo0Mik6CihCZXp1ZzogQXJ0aWtlbCB2b24gQXJhbnlhLCBGcmUsICA3LiBPa3QgMTk5NCwgMTI6MjQ6MjEpClNvIGVpbiBTY2htYXJybiwgZGVpbiBBcnRpa2VsLCBBcmFueWEhIElzdCBqYSB3aWRlcmxpY2guLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3IChNZXBoaXN0bywgIDcuIE9rdCAxOTk0LCAxNToxNjo0Nik6CkRlciBXaXNzZW5zY2hhZnRza2FuYWwgZ2Vob2VydCBoaWVyaGVyLi4uLi4uLgpTRU5GIE9GRiBNZXBoaXN0bwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdpZSBhbHQgaXN0IE1HPyAoQm9pbmcsICA3LiBPa3QgMTk5NCwgMTY6MDk6NDEpOgpEZXIgR3J1ZW5kdW5nc3RhZyB3YXIgZGVyIDI1LiBNYWVyeiAxOTkyLCBhbGxlcmRpbmdzIHZlcmdpbmcgZGFubiB1ZWJlcgplaW4gSmFociwgYmV2b3Igd2lyIG9mZml6aWVsbCBlcm9lZmZuZXQgaGFiZW4sIGRhcyB3YXIgTWl0dGUgQXByaWwgMTk5My4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2FlaG5lbmRlIExlZXJlLi4uIChZZW5kaSwgMTEuIE9rdCAxOTk0LCAwMDo1MzoyMik6CgpIZXV0ZSwgRGllbnN0YWcsIDExLjEwLjE5OTQsIDAwOjUwIFVociwgd2FyZW4gNyAoc2llYmVuKSBMZXV0ZSBlaW5nZWxvZ2d0LApkYXZvbiAyICh6d2VpKSBNYWdpZXIuLi4KCkhhY2gsIGRhcyBlcmlubmVydCBtaWNoIHNvIHNlaHIgYW4gYWx0ZSBaZWl0ZW4uLi4KCkFsbGVyZGluZ3Mga2FtIGRhcyBkYW1hbHMgdW0gNCBVaHIgbmFjaG1pdHRhZ3Mgdm9yLCBiZWkgaW50YWt0ZW0gTmV0ei4uLgoKClRqYS4uLgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgWWVuZGkKICAgICAgICAgICAgICAgKGVyZ2VodCBzaWNoIGluIFNlbnRpbWVudGFsaXRhZXRlbikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmZhc3NiYXIuLi4uIChHcmltbWJvcm4sIDEzLiBPa3QgMTk5NCwgMDM6Mjk6MjcpOgpKYSwgZGEgd2FlcmUgZGllc2UgUnVicmlrIGRvY2ggZmFzdCB2ZXJvZWRldCwgbmEgc293YXMuLi4KRGllc2VzIGdpbHQgZXMgenUgdmVyaGluZGVybiEKCk51cjogV29taXQ/CgpHcnVlYmVsbmQ6CiAgICAgICAgICBHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmlzdCBkYXMgbmljaHQgU2NobWFycm4/IChIYXJkaWwsIDEzLiBPa3QgMTk5NCwgMTA6NTQ6MzYpOgoKTGllYmUgTWFnaWVyIQoKS29lbm50IGlociBuaWNodCBiaXR0ZSBkZW1uYWVjaHN0IG1hbCB3aWVkZXIgZWluZW4gQ3Jhc2ggaGVyZnVlaHJlbj8KSWNoIGhhYmUgZ2VyYWRlIGZlc3RnZXN0ZWxsdCwgZGFzcyBpY2ggc2VpdCBzaWNoZXJsaWNoIGVpbmVyIFdvY2hlIG1pY2ggaGllcgppbSBNVUQgbmljaHQgbWVociBiZXdlZ3QgaGFiZS4gSWNoIG11c3N0ZSBtaXIga2VpbmUgbmV1ZSBBdXNydWVzdHVuZyBiZXNvcmdlbiwKdW5kIGFscyBTZWhlciBtdXNzIG1hbiBhdWNoIG5jaWh0IHp1ciBQb3N0IGxhdWZlbiwgdW5kIHNvbnN0IGJlc3RhbmQgYXVjaCBrZWluCkdydW5kLCBzaWNoIFxuCmlyZ2VuZHdpZSB6dSBiZXdlZ2VuLiBJY2ggaGFiZSBudW4gQW5nc3QsIGRhc3MgaWNoIGhpZXIgbm9jaCBmZXN0d2FjaHNlLCB3ZW5uCmljaCBuaWNodCBkZW1uYWVjaHN0IG1hbCB3aWVkZXIgZHVyY2ggZGVuIEJlZGFyZiBuZXVlciBBdXNydWVzdHVuZyB2ZXJhbmxhc3N0CndlcmRlLCBkZW4gQmF1bSBoaWVyIHp1IHZlcmxhc3Nlbi4KCkFsbCB0aGUgYmVzdCwKCgkJSGFyZGlsIChmdXNza3Jhbmsgb2RlciBlaW5mYWNoIG51ciBmYXVsID8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaXN0IGRhcyBuaWNodCBTY2htYXJybj8gKEhhdGUsIDEzLiBPa3QgMTk5NCwgMTE6MDE6NDgpOgooQmV6dWc6IEFydGlrZWwgdm9uIEhhcmRpbCwgRG9uLCAxMy4gT2t0IDE5OTQsIDEwOjU0OjM2KQpBbHNvIHdlbm4gRHUgZGVpbmUgQXVzcnVlc3R1bmcgbG9zd2VyZGVuIHdpbGxzdCBzYWcgbWlyIGVpbmZhY2ggYmVzY2hlaWQuCkljaCBsYXNzZSBkaWUgZGFubiB2ZXJkYW1wZmVuLgpIYXRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FydGVuLi4uIChCcmFiYSwgMTMuIE9rdCAxOTk0LCAxMzozMjowMyk6ClRqYSwgaGllciBzdGVoZSwgbWl0IDMgQVAgbWl0dGVuIGltIEdvYmxpbmxhZ2VyLiBGInVyIGRpZXNlbiBad2VjayB3YXIgZGllc2UKUnVicmlrIGRvY2ggZ2VkYWNodCwgb2Rlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjMgQVBzID8/IChDaGljb2xhLCAxMy4gT2t0IDE5OTQsIDE0OjIwOjA0KToKW1ZlcmxlZ3Qgdm9uIHdpdHplLCBDaGljb2xhLCAxMy4gT2t0IDE5OTQsIDE0OjE4OjQwXToKV2llIGJla29tbXQgbWFuIDMgQVBzID8/PyAoIG11c3MgamEgbmUgc2VociBrbGVpbmUgcXVlc3Qgc2VpbiAhISApCgpncmluc2VuZCBDaGljb2xhCgorKwpzY2ggLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZXJsZXVjaHR1bmcgKENoYXJvbiwgMTMuIE9rdCAxOTk0LCAyMDo0MToyMik6CmhhY2ggamEsIGRhIHN0ZWggaWNoIGpldHp0IGhpZXIsIHVuZCB3YXJ0ZSBhdWYgZGllIGJsb2VkZSBsYW1wZSwgZGllIGRhZW1vbmVuCndlcmRlbiBzY2hvZW4gaGFldWZpZyByZXNldHRldCwgZGllIGxhbXBlIG5pY2h0LiB1bmQgZGFiZWkgc3VjaCBpY2ggZG9jaCBuYWNoCmVybGV1Y2h0dW5nICEgYWNoLCBlcyBpc3QgZXJzY2hyZWNrZW5kLCB3YXMgaGFldHRlIGljaCBuaWNodCBhbGxlcyBzaW5udm9sbGVzCnR1biBrb2VubmVuLCBpbiBkZXIgaGFsYmVuIHN0dW5kZSwgZGllIGljaCBoaWVyIHdhcnRlIHVuZCBpZGxlLCBhYiB1bmQgenUgbWFsCm5lbiBkYWVtb24gcGxhZXR0ZSB1bmQgaGFsdCBlYmVuIG5hY2ggZXJsZXVjaHR1bmcgc3VjaGUuICpzZXVmeioKTXVlc3NlbiBoZXhlciBlaWdlbnRsaWNoIGtyYW5rIHdlcmRlbiA/IGthbm4gZ290dCBzdGVyYmVuID8gd2FzIHNjaHJlaWIgaWNoCmhpZXIgZWlnZW50bGljaCA/IGlzdCBtaXIgbGFuZ3dlaWxpZyA/IGphLCBqYSwga2VpbmUgYWhudW5nLCBqYS4gKnNldWZ6KgpmYWVsbHQgbWlyIG5vY2ggbmVuIHN0b3NzZ2ViZXQgZWluIDoKb2ggaGVyciwgdW5zZXIgdGFlZ2xpY2ggbXVkIGdpYiB1bnMgaGV1dGUuCgp3YXQgbmVuIGJsb2Vkc2lubgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU0ItQW11bGV0dCAoR3JpbW1ib3JuLCAxNC4gT2t0IDE5OTQsIDAwOjI3OjM5KToKCkljaCBoYWIgZWluZSBuZXVlIFZhcmlhbnRlIGRlciBGdW5rdGlvbnN3ZWlzZSBkaWVzZXMgQW11bGV0dHMgZW50ZGVja3QuIEljaAptZWluZSwgenVzY2hsYWdlbiBOQUNIREVNIG1hbiBnZXRydW5rZW4gaGF0IGlzdCBqYSBlaGVyIHByaW1pdGl2LiBWaWVsCnN1YnRpbGVyIGlzdCBlcywgdm9tIFNjaGxhbW1kcmFjaGVuIGRlbiBnYW56ZW4gV2VnIHp1ciBFbGZlbnNpZWRsdW5nCmVpbnp1Z2ViZW4sIDIqIGthdWZlIFdhZmZlbCBoaW50ZXJoZXJzY2hpY2tlbiB1bmQgaW0gbGF1ZmVuIChldHdhcyBsYWcgaXN0IGphCkVocmVuc2FjaGUpIGFuIGRlciBLcmV1enVuZyB3YXMgdm9uICJIZXJybGljaCIgdW5kIFdhZXJtZSB6dSAibGVzZW4iLi4uCgpTb2xjaGUgZmllc2VuIHJlc2V0cyBlcmlubmVybiBtaWNoIGFuIGRlbiBNYWdpZXIsIGRlciBhdWNoIGJlaSBGcmllZGhvZiB1bmQKU1NQIHNlaW5lIEZpbmdlciBpbSBTcGllbCBoYXR0ZSwgd2llIGhpZXNzIGRlciBub2NoIGdsZWljaC4uLiA7LSkKCkVpbmVuIGhpbnRlcmhhZWx0aWdlbiByZXNldCBkZXMgVGVudGFrZWxtb25zdGVycyB6dW0gc2NocmVpYmVuIG51dHplbmQsCgogICAgICAgICAgICAgICAgICAgICAgICAgR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcnlkZXIgdW5kIERpbXBsZWdhbWUgYmVpIGlocmVtIEhvYmJ5IChadWVyaWxldSwgMTQuIE9rdCAxOTk0LCAwMDo0MDoyMyk6CkR1IGJlZmluZGVzdCBEaWNoIGluIGRlciBEaWFtYW50YmFyLgpEaWUgRGlhbWFudGJhciBpc3QgZGVyIE9ydCwgYW4gZGVtIHNpY2ggZGllIFp3ZXJnZSB6dW0gUGxhdWRlcm4gdW5kIFRyaW5rZW4KdHJlZmZlbi4gRXIgaXN0IGF1Y2ggdm9yenVlZ2xpY2ggZGF6dSBnZWVpZ25ldCwgZGVubiBlcyBnaWJ0IGhpZXIgcHJpbWEKR2V0cmFlbmtlLiBXZW5uIER1IHNlaGVuIG1vZWNodGVzdCwgd2FzIGVzIGdlbmF1IGdpYnQsIGRhbm4gdGlwcGUgZWluZmFjaAonbWVudWUnIGVpbi4gWndlcmdlIGJla29tbWVuIHNlbGJzdHZlcnN0YWVuZGxpY2ggZXJtYWVzc2lndGUgUHJlaXNlLgpEZXIgQXVzZ2FuZyBkZXIgQmFyIGlzdCBpbSBTdWVkZW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBzdWVkZW4uCkRpbXBsZWdhbWUgZGVyIEthZW1wZmVyLgpGcnlkZXIgZGVyIGFuZ2VoZW5kZSBNYWdpZXIuCkZyeWRlcnMgd3VzY2hlbGlnZXIgd2luemlnZXIgV29scGVydGluZ2VyLgpFaW4gZmV0dGVyIFp3ZXJnLgpEaWUgVG9wLUxpc3RlLCBkaWUgVG9wLVNwaWVsZXJsaXN0ZSB1bmQgZGllIFRvcC1TZWhlcmxpc3RlLgo+IHN0cmV1ZSBqdWNrcHVsdmVyIGZyeWRlciBhdWYgaGFscwpEYXMgSnVja3B1bHZlciBwcmFsbHQgYW4gZWluZW0gQW11bGV0dCB2b24gRnJ5ZGVyIGFiLgo+IHN0cmV1ZSBqdWNrcHVsdmVyIGZyeWRlciBhdWYgYXJtCkR1IHN0cmV1c3QgRnJ5ZGVyIGV0d2FzIEp1Y2twdWx2ZXIgYXVmIGRlbiBBcm0uCj4gZmluZ2VyIGZyeWRlcgpGcnlkZXIgaXN0IGVpbmdlbG9nZ3QsCnVuZCB6d2FyIHZvbjogTXVlbmNoZW4uClZvbGxlciBOYW1lOiBGcnlkZXIgZGVyIGFuZ2VoZW5kZSBNYWdpZXIKUmFzc2U6IFp3ZXJnLCAgICBHZXNjaGxlY2h0OiBtYWVubmxpY2ggICBTcGllbGVybGV2ZWw6IDE5Cj4gRGVpbiBCYXVjaCBqdWNrdCBmdWVyY2h0ZXJsaWNoLgoKPz8/Pz8/Pz8/PyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGcnlkZXIgc2FndDoKSGFsbG8sIGljaCBoYWIgZ3JhZCBuZSB3aWxkZSBzY2h3ZWl0emVyaW4ga2VubmVuZ2VsZXJudC4KRnJ5ZGVyIGdlaHQgbmFjaCBTdWVkZW4uCkRlciB3aW56aWdlIFdvbHBlcnRpbmdlciB0YXBwc3QgbmFjaCBTdWVkZW4uCkRpbXBsZWdhbWUgZ2VodCBuYWNoIFN1ZWRlbi4KRGltcGxlZ2FtZSBrb21tdCBhbi4KRGltcGxlZ2FtZSBzYWd0OiBIaQpzYWcgZXJzdGVucyBoZWlzc3QgZGFzIFNjaHdlaXplcmluIG9obmUgWnQgZHUgYmlzdCBhdWNoIGtlaW4gREVUS0VSCkR1IHNhZ3N0OiBlcnN0ZW5zIGhlaXNzdCBkYXMgU2Nod2VpemVyaW4gb2huZSBadCBkdSBiaXN0IGF1Y2gga2VpbiBERVRLRVIKPiBzYWcgZXJzdGVucyBoZWlzc3QgZGFzIFNjaHdlaXplcmluIG9obmUgWnQgZHUgYmlzdCBhdWNoIGtlaW4gREVVVEtFUgpEdSBzYWdzdDogZXJzdGVucyBoZWlzc3QgZGFzIFNjaHdlaXplcmluIG9obmUgWnQgZHUgYmlzdCBhdWNoIGtlaW4gREVVVEtFUgo+IERpbXBsZWdhbWUgc2FndDogV2llIHNjaGF1dHMgPyBPcmtzIHVuZCBUcm9sbGUgbWV0emVsbgpzYWcgdW5kIHp3ZWl0ZXMgd2FyIGljaCBkYXMgPTopCkR1IHNhZ3N0OiB1bmQgendlaXRlcyB3YXIgaWNoIGRhcyA9OikKPiBzdHJldWUganVja3B1bHZlciBkaW1wbGVnYW1lIGF1ZiBoYWxzCkR1IHN0cmV1c3QgRGltcGxlZ2FtZSBldHdhcyBKdWNrcHVsdmVyIGF1ZiBkZW4gSGFscy4KPiBFaW4gd2luemlnZXIgV29scGVydGluZ2VyIHRhcHBzdCBoZXJlaW4uCkZyeWRlciBrb21tdCBhbi4Kc3RyZXVlIGp1Y2twdWx2ZXIgZGltcGxlZ2FtZSBhdWYgYXJtCkR1IHN0cmV1c3QgRGltcGxlZ2FtZSBldHdhcyBKdWNrcHVsdmVyIGF1ZiBkZW4gQXJtLgo+IEZyeWRlciBncmluc3QuCmwKRHUgYmVmaW5kZXN0IERpY2ggaW4gZGVyIERpYW1hbnRiYXIuCkRpZSBEaWFtYW50YmFyIGlzdCBkZXIgT3J0LCBhbiBkZW0gc2ljaCBkaWUgWndlcmdlIHp1bSBQbGF1ZGVybiB1bmQgVHJpbmtlbgp0cmVmZmVuLiBFciBpc3QgYXVjaCB2b3J6dWVnbGljaCBkYXp1IGdlZWlnbmV0LCBkZW5uIGVzIGdpYnQgaGllciBwcmltYQpHZXRyYWVua2UuIFdlbm4gRHUgc2VoZW4gbW9lY2h0ZXN0LCB3YXMgZXMgZ2VuYXUgZ2lidCwgZGFubiB0aXBwZSBlaW5mYWNoCidtZW51ZScgZWluLiBad2VyZ2UgYmVrb21tZW4gc2VsYnN0dmVyc3RhZW5kbGljaCBlcm1hZXNzaWd0ZSBQcmVpc2UuCkRlciBBdXNnYW5nIGRlciBCYXIgaXN0IGltIFN1ZWRlbi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRlbi4KRnJ5ZGVyIGRlciBhbmdlaGVuZGUgTWFnaWVyLgpGcnlkZXJzIHd1c2NoZWxpZ2VyIHdpbnppZ2VyIFdvbHBlcnRpbmdlci4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERpbXBsZWdhbWUgZGVyIEthZW1wZmVyLgpFaW4gZmV0dGVyIFp3ZXJnLgpEaWUgVG9wLUxpc3RlLCBkaWUgVG9wLVNwaWVsZXJsaXN0ZSB1bmQgZGllIFRvcC1TZWhlcmxpc3RlLgo+IERlaW4gQmF1Y2ggd2lyZCBnYW56IGRpY2suCkZyeWRlciBzYWd0OiBpY2ggd2Vpc3MgZG9jaC4KZ3Jpc2UKV2llIGJpdHRlPwo+IHNhZyBmcnlkZXIgd2llIGdlaHQncyBkaXIgPwpEdSBzYWdzdDogZnJ5ZGVyIHdpZSBnZWh0J3MgZGlyID8KPiBzYWcgZGltcGxlZ2FtZSB3aWUgZ2VodCdzID8KRHUgc2Fnc3Q6IGRpbXBsZWdhbWUgd2llIGdlaHQncyA/Cj4gbApEdSBiZWZpbmRlc3QgRGljaCBpbiBkZXIgRGlhbWFudGJhci4KRGllIERpYW1hbnRiYXIgaXN0IGRlciBPcnQsIGFuIGRlbSBzaWNoIGRpZSBad2VyZ2UgenVtIFBsYXVkZXJuIHVuZCBUcmlua2VuCnRyZWZmZW4uIEVyIGlzdCBhdWNoIHZvcnp1ZWdsaWNoIGRhenUgZ2VlaWduZXQsIGRlbm4gZXMgZ2lidCBoaWVyIHByaW1hCkdldHJhZW5rZS4gV2VubiBEdSBzZWhlbiBtb2VjaHRlc3QsIHdhcyBlcyBnZW5hdSBnaWJ0LCBkYW5uIHRpcHBlIGVpbmZhY2gKJ21lbnVlJyBlaW4uIFp3ZXJnZSBiZWtvbW1lbiBzZWxic3R2ZXJzdGFlbmRsaWNoIGVybWFlc3NpZ3RlIFByZWlzZS4KRGVyIEF1c2dhbmcgZGVyIEJhciBpc3QgaW0gU3VlZGVuLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZGVuLgpGcnlkZXIgZGVyIGFuZ2VoZW5kZSBNYWdpZXIuCkZyeWRlcnMgd3VzY2hlbGlnZXIgd2luemlnZXIgV29scGVydGluZ2VyLgpEaW1wbGVnYW1lIGRlciBLYWVtcGZlci4KRWluIGZldHRlciBad2VyZy4KRGllIFRvcC1MaXN0ZSwgZGllIFRvcC1TcGllbGVybGlzdGUgdW5kIGRpZSBUb3AtU2VoZXJsaXN0ZS4KPiBGcnlkZXIgc2FndDogb2NoLCBhaW4gYmlzc2NoZW4gbGllYmVza3VtbWVyLgpEZXIgd2luemlnZSBXb2xwZXJ0aW5nZXIgcHVyemVsdCB1ZWJlciBzZWluZSBGdWVzc2NoZW4uCmxhY2gKRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgo+IEZyeWRlciBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4Kc3RyZXVlIGp1Y2twdWx2ZXIgZnJ5ZGVyIGF1ZiBoYWxzCkRpZSBQYWNrdW5nIGlzdCBsZWVyLiBEdSBrYW5uc3Qgc2llIG51ciBub2NoIGF1ZmVzc2VuLgo+ID5EaW1wbGVnYW1lICBicmljaHQgdm9yIGxhY2hlbiB6dXNhbW1yZW4KRGVpbiBCYXVjaCB3aXJkIGdhbnogZGljay4Kd2VyZmUgcHVsdmVyIHdlZwpEYXMgSnVja3B1bHZlciBrbGVidCBkaXIgYW4gZGVuIEZpbmdlcm4uCj4gbApEdSBiZWZpbmRlc3QgRGljaCBpbiBkZXIgRGlhbWFudGJhci4KRGllIERpYW1hbnRiYXIgaXN0IGRlciBPcnQsIGFuIGRlbSBzaWNoIGRpZSBad2VyZ2UgenVtIFBsYXVkZXJuIHVuZCBUcmlua2VuCnRyZWZmZW4uIEVyIGlzdCBhdWNoIHZvcnp1ZWdsaWNoIGRhenUgZ2VlaWduZXQsIGRlbm4gZXMgZ2lidCBoaWVyIHByaW1hCkdldHJhZW5rZS4gV2VubiBEdSBzZWhlbiBtb2VjaHRlc3QsIHdhcyBlcyBnZW5hdSBnaWJ0LCBkYW5uIHRpcHBlIGVpbmZhY2gKJ21lbnVlJyBlaW4uIFp3ZXJnZSBiZWtvbW1lbiBzZWxic3R2ZXJzdGFlbmRsaWNoIGVybWFlc3NpZ3RlIFByZWlzZS4KRGVyIEF1c2dhbmcgZGVyIEJhciBpc3QgaW0gU3VlZGVuLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZGVuLgpGcnlkZXIgZGVyIGFuZ2VoZW5kZSBNYWdpZXIuCkZyeWRlcnMgd3VzY2hlbGlnZXIgd2luemlnZXIgV29scGVydGluZ2VyLgpEaW1wbGVnYW1lIGRlciBLYWVtcGZlci4KRWluIGZldHRlciBad2VyZy4KRGllIFRvcC1MaXN0ZSwgZGllIFRvcC1TcGllbGVybGlzdGUgdW5kIGRpZSBUb3AtU2VoZXJsaXN0ZS4KPiBEaW1wbGVnYW1lIGtyYXR6dCBzaWNoIGFtIEFybS4KQ2FsdW0gcnVmdDogbWFjaHRzIGd1dCwgc2NobGFmdCBzY2hvZW4gOikKRGltcGxlZ2FtZSBrcmF0enQgc2ljaCBhbSBBcm0uCkZyeWRlciBrcmF0enQgc2ljaCBhbSBBcm0uCmkKCkVpbmUgUGFja3VuZyBKdWNrcHVsdmVyLgpFaW4gTGllYmVzdHJhbmsuCkRlciBUYXJuaGVsbS4KRWluIExpY2h0cGFuemVyIChhbmdlem9nZW4pLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWluIExpY2h0aGVsbQooYW5nZXpvZ2VuKS4KRWluIFBhYXIgTGVkZXJtb2thc3NpbnMgKGFuZ2V6b2dlbikuCjU1NjAgTXVlbnplbi4KRGFzIEJsdXRzYXVnZXItU2Nod2VydC4KRWluIEJ1dHRvbiBmdWVyIFdvbHBlcnRpbmdlci1DbHViLU1pdGdsaWVkZXIgKGFuZ2V6b2dlbikuCkVpbiBBbnRpLUFuZHktQnV0dG9uLgpadWVyaWxldXMgVGVkZHliYWVyIFNjaG51ZWZpLgpEYXMgU2VydmljZXBha2V0IHZvbiBNb3JnZW5ncmF1ZW5zIFByZXNzZWFnZW50dXIuCgo+IEZyeWRlciBrcmF0enQgc2ljaCBhbSBBcm0uCkRpbXBsZWdhbWUga3JhdHp0IHNpY2ggYW0gQXJtLgpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gdHNjaGF1IGNhbHVtCmxhY2gKRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgo+IERpbXBsZWdhbWUga3JhdHp0IHNpY2ggYW0gQXJtLgpEaW1wbGVnYW1lIGtyYXR6dCBzaWNoIGFtIEFybS4KRGltcGxlZ2FtZSBydWVscHN0Lgp3ZXJmZSBwYWNrdW5nIHdlZwpEYXMgSnVja3B1bHZlciBrbGVidCBkaXIgYW4gZGVuIEZpbmdlcm4uCj4gRGltcGxlZ2FtZSBrcmF0enQgc2ljaCBhbSBBcm0uCkRlaW4gQmF1Y2ggd2lyZCBnYW56IGRpY2suCj5GcnlkZXIgd3VlcnQgWnVlcmlsZXUuCkZyeWRlciBrcmF0enQgc2ljaCBhbSBBcm0uCmlzcyBwYWNrdW5nCkR1IHZlcnNwdWVyc3QgYXVmIGVpbm1hbCBlaW5lbiBKdWNrcmVpeiBpbiBEZWluZW0gQmF1Y2ghCj4gbApEdSBiZWZpbmRlc3QgRGljaCBpbiBkZXIgRGlhbWFudGJhci4KRGllIERpYW1hbnRiYXIgaXN0IGRlciBPcnQsIGFuIGRlbSBzaWNoIGRpZSBad2VyZ2UgenVtIFBsYXVkZXJuIHVuZCBUcmlua2VuCnRyZWZmZW4uIEVyIGlzdCBhdWNoIHZvcnp1ZWdsaWNoIGRhenUgZ2VlaWduZXQsIGRlbm4gZXMgZ2lidCBoaWVyIHByaW1hCkdldHJhZW5rZS4gV2VubiBEdSBzZWhlbiBtb2VjaHRlc3QsIHdhcyBlcyBnZW5hdSBnaWJ0LCBkYW5uIHRpcHBlIGVpbmZhY2gKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ21lbnVlJyBlaW4uClp3ZXJnZSBiZWtvbW1lbiBzZWxic3R2ZXJzdGFlbmRsaWNoIGVybWFlc3NpZ3RlIFByZWlzZS4KRGVyIEF1c2dhbmcgZGVyIEJhciBpc3QgaW0gU3VlZGVuLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZGVuLgpGcnlkZXIgZGVyIGFuZ2VoZW5kZSBNYWdpZXIuCkZyeWRlcnMgd3VzY2hlbGlnZXIgd2luemlnZXIgV29scGVydGluZ2VyLgpEaW1wbGVnYW1lIGRlciBLYWVtcGZlci4KRWluIGZldHRlciBad2VyZy4KRGllIFRvcC1MaXN0ZSwgZGllIFRvcC1TcGllbGVybGlzdGUgdW5kIGRpZSBUb3AtU2VoZXJsaXN0ZS4KPiBGcnlkZXIga3JhdHp0IHNpY2ggYW0gQXJtLgpsYWNoCkR1IGJyaWNoc3Qgdm9yIExhY2hlbiB6dXNhbW1lbi4KPiAgICAgICBGcnlkZXIga3JhdHp0IHNpY2ggYW0gQXJtLgpEaW1wbGVnYW1lIGtyYXR6dCBzaWNoIGFtIEFybS4KOmZpbmRldCBkYXMgemV1Z3MgZ2VpbAo+WnVlcmlsZXUgZmluZGV0IGRhcyB6ZXVncyBnZWlsCj4gRGltcGxlZ2FtZSBrcmF0enQgc2ljaCBhbSBBcm0uCkZyeWRlciBrcmF0enQgc2ljaCBhbSBBcm0uCkRpbXBsZWdhbWUga3JhdHp0IHNpY2ggYW0gQXJtLgpEaW1wbGVnYW1lIGtyYXR6dCBzaWNoIGFtIEFybS4KRGltcGxlZ2FtZSBrcmF0enQgc2ljaCBhbSBBcm0uCkRpbXBsZWdhbWUga3JhdHp0IHNpY2ggYW0gQXJtLgpGcnlkZXIga3JhdHp0IHNpY2ggYW0gQXJtLgpGcnlkZXIga3JhdHp0IHNpY2ggYW0gQXJtLgpGcnlkZXIga3JhdHp0IHNpY2ggYW0gQXJtLgpEZXIgd2luemlnZSBXb2xwZXJ0aW5nZXIga3VzY2hlbHQgc2ljaCBhbiBEZWluZSBCZWluZS4KRnJ5ZGVyIGtyYXR6dCBzaWNoIGFtIEFybS4KRnJ5ZGVyIGtyYXR6dCBzaWNoIGFtIEFybS4KRnJ5ZGVyIGtyYXR6dCBzaWNoIGFtIEFybS4KRnJ5ZGVyIGtyYXR6dCBzaWNoIGFtIEFybS4KRnJ5ZGVyIGtyYXR6dCBzaWNoIGFtIEFybS4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGcnlkZXIKa3JhdHp0IHNpY2ggYW0gQXJtLgpGcnlkZXIga3JhdHp0IHNpY2ggYW0gQXJtLgpGcnlkZXIga3JhdHp0IHNpY2ggYW0gQXJtLgpGcnlkZXIga3JhdHp0IHNpY2ggYW0gQXJtLgpGcnlkZXIga3JhdHp0IHNpY2ggYW0gQXJtLgpCbGVlbHVtcGUga29tbXQgYW4uCkZyeWRlciBrcmF0enQgc2ljaCBhbSBBcm0uCkZyeWRlciBrcmF0enQgc2ljaCBhbSBBcm0uCmtudWRkbGUgd29scGllCkR1IGtudWRkZWxzdCBkZW4gd2luemlnZW4gd3VzY2hlbGlnZW4gV29scGVydGluZ2VyIHVuZCBlcmZyZXVzdCBEaWNoIGFuCnNlaW5lbSB3dXNjaGVsaWdlbiwgd2VpY2hlbiBGZWxsLiBEZXIgV29scGVydGluZ2VyIHNjaG51cnJ0IHp1ZnJpZWRlbi4KPiBGcnlkZXIga3JhdHp0IHNpY2ggYW0gQXJtLgo+RGltcGxlZ2FtZSAgc3B1Y2t0IFp1ZXJpbHVlIGlucyBHZXNpY2h0IHVuZCB0cml0dCBpaG0gaW4gZGVpIEVpc2VyCkZyeWRlciBrcmF0enQgc2ljaCBhbSBBcm0uCkRpbXBsZWdhbWUga3JhdHp0IHNpY2ggYW0gQXJtLgpEaW1wbGVnYW1lIGtyYXR6dCBzaWNoIGFtIEFybS4KRnJ5ZGVyIHNhZ3Q6IFdvbHBpICwgZmFzcy4KRGltcGxlZ2FtZSBrcmF0enQgc2ljaCBhbSBBcm0uCkRpbXBsZWdhbWUga3JhdHp0IHNpY2ggYW0gQXJtLgprb3R6ZSBkaW1wbGVnYW1lCkR1IGtvdHp0IGF1ZiBEaW1wbGVnYW1lLgo+IERpbXBsZWdhbWUga3JhdHp0IHNpY2ggYW0gQXJtLgpGcnlkZXIga3JhdHp0IHNpY2ggYW0gQXJtLgpGcnlkZXIga3JhdHp0IHNpY2ggYW0gQXJtLgpEaW1wbGVnYW1lIGtyYXR6dCBzaWNoIGFtIEFybS4KPkRpbXBsZWdhbWUgIHp3aW5ndCBadWVyaWx1ZSBkaWUgS290emUgcnVudGVyenVzY2hsdWNrZW4KRGVpbiBCYXVjaCB3aXJkIGdhbnogZGljay4KRGFzIEp1Y2tlbiBsYWVzc3Qgc2ljaCBuaWNodCBtZWhyIGlnbm9yaWVyZW4uCltBbGxnZW1laW46S3JldGVrIHdhcnRldCBhdWYgZGVuIGJvZXNlbiBXb2xmLl0KRnJ5ZGVyIGtldWNodCB2b3IgQW5zdHJlbmd1bmcuCkRpbXBsZWdhbWUgc2FndDogU0NoZWlzcyBTQ2hlcnoKRnJ5ZGVyIHNhZ3Q6IEpldHp0IE1ldHplbG4hCi06a3J1ZW10IHNpY2ggaW4gZHNlciBad2VyZ2VuYmFyIHZvciBsYWNoZW4gd2llIHNpY2ggRnJ5ZGVyIHVuZCBkaW1wbGVnYW1lCmVyW0FsbGdlbWVpbjpadWVyaWxldSBrcnVlbXQgc2ljaCBpbiBkc2VyIFp3ZXJnZW5iYXIgdm9yIGxhY2hlbiB3aWUgc2ljaApGcnlkZXJ1bmQgZGltcGxlZ2FtZSBlcmZyZXVkIHVlYmVyIGRhcyBKdWNrcHVsdmVyIHNpY2gga3JhdHplbiA9OikpXQo+IERlaW4gQmF1Y2ggd2lyZCBnYW56IGRpY2suCmwKRHUgYmVmaW5kZXN0IERpY2ggaW4gZGVyIERpYW1hbnRiYXIuCkRpZSBEaWFtYW50YmFyIGlzdCBkZXIgT3J0LCBhbiBkZW0gc2ljaCBkaWUgWndlcmdlIHp1bSBQbGF1ZGVybiB1bmQgVHJpbmtlbgp0cmVmZmVuLiBFciBpc3QgYXVjaCB2b3J6dWVnbGljaCBkYXp1IGdlZWlnbmV0LCBkZW5uIGVzIGdpYnQgaGllciBwcmltYQpHZXRyYWVua2UuIFdlbm4gRHUgc2VoZW4gbW9lY2h0ZXN0LCB3YXMgZXMgZ2VuYXUgZ2lidCwgZGFubiB0aXBwZSBlaW5mYWNoCidtZW51ZScgZWluLiBad2VyZ2UgYmVrb21tZW4gc2VsYnN0dmVyc3RhZW5kbGljaCBlcm1hZXNzaWd0ZSBQcmVpc2UuCkRlciBBdXNnYW5nIGRlciBCYXIgaXN0IGltIFN1ZWRlbi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRlbi4KQmxlZWx1bXBlIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuCkZyeWRlciBkZXIgYW5nZWhlbmRlIE1hZ2llci4KRnJ5ZGVycyB3dXNjaGVsaWdlciB3aW56aWdlciBXb2xwZXJ0aW5nZXIuCkRpbXBsZWdhbWUgZGVyIEthZW1wZmVyLgpFaW4gZmV0dGVyIFp3ZXJnLgpEaWUgVG9wLUxpc3RlLCBkaWUgVG9wLVNwaWVsZXJsaXN0ZSB1bmQgZGllIFRvcC1TZWhlcmxpc3RlLgo+IERyLiBmYWMuIGp1LiBCZWxkaW4gcnVmdDogVHNjaHVlc3MuCktyZXRlayBrb21tdCBhbi4KR3JpbW1ib3JuIHJ1ZnQ6IEJ5ZSEKRGVyIHdpbnppZ2UgV29scGVydGluZ2VyIHRhcHBzdCBuYWNoIFN1ZWRlbi4KRnJ5ZGVyIGdlaHQgbmFjaCBTdWVkZW4uCnNhZyBoaWhpCkR1IHNhZ3N0OiBoaWhpCj4gS3JldGVrIHNhZ3Q6IERhcyBNVVNTIGljaCBzZWhlbiEKRGltcGxlZ2FtZSBnZWh0IG5hY2ggU3VlZGVuLgpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gdHNjaHVlc3MKPkRpbXBsZWdhbWUgIHp3aW5ndCBadWVyaWx1ZSBkaWUgS290emUgcnVudGVyenVzY2hsdWNrZW4KRGVpbiBCYXVjaCB3aXJkIGdhbnogZGljay4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hhdHpraXN0ZSAoR3JpbW1ib3JuLCAxNC4gT2t0IDE5OTQsIDAxOjEwOjQ0KToKTmEsIGRhcyBpc3QgZG9jaCBtYWwgZWluZSBTY2hhdHpraXN0ZToKCj4gdW50IGtpc3RlCkVpbmUgZ3Jvc3NlLCBzY2h3ZXJlLCBob2VsemVybmUgS2lzdGUuIER1IGthbm5zdCBTYWNoZW4gaGluZWluIHN0ZWNrZW4KdW5kIHNpZSBiZWkgQmVkYXJmIGF1Y2ggc2NobGllc3NlbiB1bmQgb2VmZm5lbi4KU2llIGlzdCBnZW9lZmZuZXQgdW5kIGVudGhhZWx0OgpFaW4gYmxhdWVyIEtyaXN0YWxsLgpFaW4gYmxhdWVyIEtyaXN0YWxsLgpFaW4gYmxhdWVyIEtyaXN0YWxsLgpFaW5lIEtyaXN0YWxsa3JvbmUuCkp1d2VsZW4uCkVpbiBnZWxiZXIgS3Jpc3RhbGwuCgpVbmQgZGEgc2FnZSBub2NoIHdlciwgZGFzcyBHZXdhbHQgc2ljaCBuaWNodCBsb2huZS4uLgoKRWluZ2VzcGVycnQgendpc2NoZW4gU2NobGFiYmVybXVya3MgdW5kIEtpbGxlcnBvcGVsLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU0ItQW11bGV0dCAoQm9pbmcsIDE0LiBPa3QgMTk5NCwgMTI6MzM6MTApOgpHcmltbWJvcm4sIER1IHdlaXNzdCBkb2NoLCBkYXNzIGRhcyBTQi1BbXVsZXR0IHVuZCBkaWUgU3RlaW5iZWlzc2VyCmF1Y2ggdm9uIG1pciBzaW5kPyA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTYXR6emVpY2hlbiAoR3JpbW1ib3JuLCAxNS4gT2t0IDE5OTQsIDAyOjIyOjQxKToKSWNoIGJpbnMgbGVpZC4KSWNoIGJpbnMgamEgc29vb29vIGxlaWQhCgpBbHNvLCB3ZXIgd2FzIHZvbiBtaXIgd2lsbCB1bmQgdm9yIGVpbiBTYXR6emVpY2hlbiBMZWVyc3RlbGxlbiBtYWNodCB1bmQKYXVzc2VyZGVtIG5vY2ggbWVocmVyZSAoInZpZWwgenV2aWVsZSAhISEhIiksIG11c3MgZGFtaXQgcmVjaG5lbiwgd2Vubgp1ZWJlcmhhdXB0IG51ciBlaW5lIG5pY2h0IGVybnN0ZSBBbnR3b3J0IHp1IGJla29tbWVuLiBXZW5uIGljaCBHVVRFUiBMYXVuZQpzZWluIHNvbGx0ZSwgaGVsZiBpY2ggdmllbGxlaWNodCB0cm90emRlbSwgYWJlciBpbSBhbGxnZW1laW5lbiBiaW4gaWNoIGRhcyBqYQpzb29vb29vb29vb28gbGVpZCEKRGFzIGVzIG5pY2h0IG1vZWdsaWNoIHNlaW4gc29sbCwgaGFsYndlZ3MgYW5zdGFlbmRpZyB6dSBzY2hyZWliZW4gd2lsbCBtaXIKbmljaHQgaW4gZGVuIEtvcGYuIE9obmUgU2NocmlmdGFlc3RoZXRpayBrZWluZSBoaWxmZS4gR25hZGVubG9zLgoKRGFzIGdpbHQgbmF0dWVybGljaCBuaWNodCBmdWVyIG11bHRpcGxlIFNhdHp6ZWljaGVuLCBkaWUgcmhldG9yaXNjaCB1ZWJlcmxlZ3QKYW5nZXdhbmR0IHNpbmQgKCJXZXIgaXN0IGZ1ZXIgZGllc2UgV2FobnNpbm5zcmVzZXRzIGluIGRlciBTU1AKenVzdGFlbmRpZz8/PyIpLgoKTmFjaHRzLCBtdWVkZSB1bmQgZXMgc29vb29vb29vbyBsZWlkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3Jpc3UgKEJvaW5nLCAxNS4gT2t0IDE5OTQsIDE2OjQxOjI5KToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBIYXJkaWwsIDE0LiBPa3QgMTk5NCwgMTc6MTQ6MjNdOgoKCk5hIGtsYXIsIEhvYm8sCgouLi4gc29sYW5nZSBkaWUgTmFtZW4gbmljaHQgc2Nob24gaXJnZW5kd2VsY2hlbiBTcGllbGVybiBnZWhvZXJlbiA6KQoKWVQKCkhhcmRpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdyaXN1IChCb2luZywgMTUuIE9rdCAxOTk0LCAxNjo0MTozMyk6CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgUm9jaHVzLCAxNC4gT2t0IDE5OTQsIDE3OjE3OjM1XToKSmVkZXIgTWFnaWVyIGFiIFJlZ2lvbnNtYWdpZXIga2FubiBOYW1lbiBiYW5pc2hlbiAtIGFiZXIgaWNoIGdsYXViZSwKRHUga2VubnN0IGplbWFuZGVuLCBkZXIgZGFzIGZ1ZXIgRGljaCBtYWNoZW4gd3VlcmRlLCBIb2JvIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6R3Jpc3UgKEJvaW5nLCAxNS4gT2t0IDE5OTQsIDE2OjQxOjM3KToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBIb2JvLCAxNC4gT2t0IDE5OTQsIDE3OjIzOjI5XToKU3RpbW10LCBSb2NodXMsIGljaCBnbGF1YmUsIGljaCBmcmFnIGRhIGVpbmZhY2ggbWVpbmVuIFJlZ2lvbnNtYWdpZXIsIEdvdHQKdW5kIE1hbm4uIDopCgpIb2JvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3Jpc3UgKEJvaW5nLCAxNS4gT2t0IDE5OTQsIDE2OjQxOjQzKToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBCb2luZywgMTQuIE9rdCAxOTk0LCAxNzoyNTozMV06CklzdCBkYXMgamV0enQgZGllIGhlaWxpZ2UgRHJlaWVpbmlna2VpdD8KICBCb2luZyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG9ibyBoYXQgZWluZW4gR290dCBhbHMgTWFubiAuLi4gKEJvaW5nLCAxNS4gT2t0IDE5OTQsIDE2OjQxOjQ1KToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBEdXJpYW4sIDE0LiBPa3QgMTk5NCwgMTg6MjU6MTRdOgpNZWluIEdvdHQsIGRhcyBpc3QgbWlyIG5vY2ggZ2FyIG5pY2h0IHNvIGF1ZmdlZmFsbGVuLiBKdW5nZSwganVuZ2UsIHdlbGNoZQpFaHJlcmJpZXR1bmcgbXVzcyBtYW4gZWlnZW50bGljaCBkZXIgRnJhdSBlaW5lcyBHb3R0ZXMgZW50Z2VnZW4gYnJpbmdlbj8/CkljaCBrZW5uZSBtaWNoIGRhIG5pY2h0IHNvIGF1cyA6LSkKCi0gRHVyaWFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdyaXN1IChCb2luZywgMTUuIE9rdCAxOTk0LCAxNjo0MTo0Nyk6CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgSG9ibywgMTQuIE9rdCAxOTk0LCAyMTowMDozM106CihCZXp1ZzogQXJ0aWtlbCB2b24gQm9pbmcsIEZyZSwgMTQuIE9rdCAxOTk0LCAxNzoyNTozMSkKRWluYmlsZHVuZyBpcyBhdWNoIG5lIEJpbGR1bmcuIDspCgogKEhvYm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogLi4uIGdvdHQgYWxzIG1hbm4gKEJvaW5nLCAxNS4gT2t0IDE5OTQsIDE2OjQxOjUwKToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBIb2JvLCAxNC4gT2t0IDE5OTQsIDIxOjA1OjE3XToKKEJlenVnOiBBcnRpa2VsIHZvbiBLbGluZ2UsIEZyZSwgMTQuIE9rdCAxOTk0LCAyMDoyMTozNikKTGllYmVyIEtsaW5nZSwKSWNoIGRhbmtlIERpciBmdWVyIERlaW5lbiBBdWZydWYgYW4gYWxsZSBTcGllbGVyaW5uZW4sIGRlbm4gaWNoIGhhYiBtZWluZW4KQm9pbmcgZ2VybiBmdWVyIG1pY2ggYWxsZWluISA6KQpVbmQgaWNoIGZ1ZWhsIG1pY2ggbmljaHQgYXVzc2NobGllc3NsaWNoIGFscyBMdXN0b2JqZWt0LCBvYndvaGwgbWlyIGRpZXNlcwpHZWZ1ZWhsLCB1bSBlaHJsaWNoIHp1IHNlaW4sIGF1Y2ggc2VociBnZWZhZWxsdC4KClVuZCB3ZW5uIERVIERpY2ggbmljaHQgYW5zdGFlbmRpZyBtaXIgZ2VnZW51ZWJlciBiZW5pbW1zdCwgaGV0enQgaWNoIGVpbiBwYWFyCmdvZXR0bGljaGUgWm9ybmF1c2JydWVjaGUgYXVmIERpY2ghIDopCgogICBIb2JvClBTOiBJbSBTaW5uZSBtZWluZXMgZXJuc3RlbiBBcnRpa2VscyBpbiBkaWVzZXIgWmVpdHVuZzogRGllc2VyIEFydGlrZWwgd3VlcmRlCmJlc3NlciBpbiBTY2htYXJybiBwYXNzZW4sIGFiZXIgZGF6dSB3dWVyZGUgZGVyIEJlenVnIGZlaGxlbi4uLiBTY2hhZGUKZWlnZW50bGljaCA6KAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcmUgcmUgZ29ldHRlcmdhdHRpbm5lbiAoQm9pbmcsIDE1LiBPa3QgMTk5NCwgMTY6NDE6NTApOgpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIEtsaW5nZSwgMTQuIE9rdCAxOTk0LCAyMjozMjo1NV06CkphLCBMaWViZSBrYW5uIGJsaW5kIG1hY2hlbi4KQWJlciBnaWIgZGljaCBuaWNodCBkZXIgSWxsdXNpb24gaGluLCBlaW5lbiBTZWhlciBlaW5zY2h1ZWNodGVybiB6dSBrb2VubmVuLgpXSVIgU0VIRVIgRlVFUkNIVEVOIERJRSBHT0VUVEVSIE5JQ0hUICEKRGFmdWVyIGhhYmVuIHdpciB6dXZpZWwgZ2VzZWhlbiA7KQoKSWNoIHd1ZW5zY2ggZGlyIGFiZXIgbm9jaCB2aWVsIFZlcmdudWVnZW4gaW4gZGVpbmVyIHNlbGJzdGdld2FlaGx0ZW4gcm9sbGUKYWxzIG9ic2t1cmVzIE9iamVrdCBkZXIgZ29ldHRsaWNoZW4gQmVnaWVyZGUgLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHJlIHJlIGdvZXR0ZXJnYXR0aW5uZW4gKEJvaW5nLCAxNS4gT2t0IDE5OTQsIDE2OjQxOjUzKToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBCb2JvLCAxNC4gT2t0IDE5OTQsIDIyOjQ5OjUyXToKV2VuIGRpZSBHb2V0dGVyIHN0cmFmZW4gd29sbGVuLCBkZW4gYmVzY2hlbmtlbiBzaWUgbWl0IGlocmVyIEduYWRlLi4uCgpLbGluZ2VzIGhpc3RvcmlzY2hlciBBYnJpc3Mgd2FyIGVpbiBiaXNzY2hlbiB6dSBzZWhyIHZvbiBuaWhpbGlzdGlzY2hlbgpHcnVuZGhhbHR1bmdlbiBnZXByYWVndC4gU2ljaGVyIGlzdCBlcyBrZWluIGxlaWNodGVzIExlYmVuLCB3ZW5uCmRlciBTdHJhaGwgZ29ldHRsaWNoZW4gTGljaHRzIGF1ZiBlaW5lL24gZmFlbGx0LCBhYmVyIGVyZWlnbmlzcmVpY2ggaXN0IGVzCmJlc3RpbW10LiBEZW4gd2VuaWdzdGVuIFN0ZXJibGljaGVuIGlzdCBlcyB2ZXJnb2VubnQsIGVpbmVuClBsYXR6IGluIGRlciBHZXNjaGljaHRlIHp1IGZpbmRlbi4gT2RlciBhbSBTdGVybmhpbW1lbCB2ZXJld2lndCB6dSBzZWluLi4uCgpEZW4gU2VoZXJuIGJsZWlidCBudXIsIGRpZSBLdW5kZSB2b24gc29sY2ggdW5nZXdvZWhubGljaGVuIFNjaGlja3NhbGVuIGRlbQpGdXNzdm9sayB3ZWl0ZXJ6dWdlYmVuLiBTaWUgd2lzc2VuIGxlZGlnbGljaCBkYXMsIHdhcyBkaWUKR29ldHRlciBpbiBpaHJlciB1bmVuZGxpY2hlbiBXZWlzaGVpdCBpaG5lbiB6dSBvZmZlbmJhcmVuIGdlcnVodGVuLgoKQm9CbywgZ2FlbnpsaWNoIGltIER1bmtlbG4gdGFwcGVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hbm4gYWxzIEdvdHQgKEJvaW5nLCAxNS4gT2t0IDE5OTQsIDE2OjQxOjU1KToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBHcmltbWJvcm4sIDE0LiBPa3QgMTk5NCwgMjI6NTQ6MjVdOgoKVGphLCBpY2ggd2Vpc3MgbmljaHQsIGFiZXIgaWNoIGZpbmQncyBzZWhyIHJpY2h0aWcgdW5kIGd1dCwgd2VubiBlaW5lIEZyYXUKaWhyZW4gTWFubiBhbHMgR290dCBiZXRyYWNodGV0LiBJc3QgZG9jaCBkaWUgbmF0dWVybGljaGUgT3JkbnVuZywgb2Rlcj8KCkFsc286IFdlaXRlciBzbywgSG9ibyEKICAgICAgICAgICAgICAgICAgICAgICBHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNYW5uIGFscyBHb3R0IChCb2luZywgMTUuIE9rdCAxOTk0LCAxNjo0MTo1NSk6CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgWWFudHJvLCAxNC4gT2t0IDE5OTQsIDIzOjAxOjI5XToKSGksIEdyaW1tYm9ybi4uLiA7KQpXbyBrb21tdCBpbiBkZXIgbmF0dWVybGljaGVuIE9yZG51bmcgZWluZXMgQXRoZWlzdGVuIGRlbm4gR290dCB2b3I/Pz8KKmdyaW5zKgpzbyBsb25nCiAgICAgICAgICAgICAgIFlhbnRybzopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpyZSBtYW5uIGFscyBHb3R0IChCb2luZywgMTUuIE9rdCAxOTk0LCAxNjo0MTo1OCk6CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgS2xpbmdlLCAxNS4gT2t0IDE5OTQsIDAxOjE4OjQ3XToKRHUgaGFzdCBuYXR1ZXJsaWNoIHJlY2h0LCBzZWxic3R2ZXJzdGFlbmRsaWNoIGlzdCBlcyBmdWVyIGRpZSBGcmF1IGltCmFsbGdlbWVpbmVuLCBzb3dpZSBhbHMgYXVjaCBpbSBiZXNvbmRlcmVuIGRhcyBuYXR1ZXJsaWNoc3RlIHZvbiBkZXIgV2VsdCBpbgppaHJlbSBNYW5uIGVpbmVuIEdvdHQgenUgc2VoZW4uCldpZSBhdWNoIHNvbnN0LCBvZGVyIHdhcyAuLi4uPwpVbmQgd2FzIGRpZSBHbmFkZSBkZXIgYW5nZWJsaWNoZW4sIHNpY2ggc2VsYnN0IHNvIG5lbm5lbmRlbiBHb2V0dGVyCmFuZ2VodCwuLi4uLgpWaWVsZSBTZWhlciBpbSBNRyBzaW5kIHNlbGJlciBNYWdpZXIgaW4gYW5kZXJlbiBXZWx0ZW4uCkljaCB1ZWJyaWdlbnMgYXVjaCwgQm9kby4KRGFzIGVyc3RtYWwgc293ZWl0IGRhenUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpyZSByZSBtYW5uIGFscyBnb3R0KGVyZ2Flbnp1bmcpIChCb2luZywgMTUuIE9rdCAxOTk0LCAxNjo0MjowMCk6CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgS2xpbmdlLCAxNS4gT2t0IDE5OTQsIDAxOjIxOjEwXToKUmVjaHQgZ2VnZWJlbiBoYWIgaWNoIG5hdHVlcmxpY2ggR3JpbW1ib3JuIHVuZCBuaWNodCBCb2RvLgpOdXIgdW0gZGFzIGdsZWljaCBrbGFyenVzdGVsbGVuLgo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hbm4gYWxzIEdvdHQgdXN3Li4uIChCb2luZywgMTUuIE9rdCAxOTk0LCAxNjo0MjoxOSk6CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgQXJvbWJvbG9zY2gsIDE1LiBPa3QgMTk5NCwgMTY6Mzk6MjVdOgpNZWluIEdPVFQsIHdhcnVtIGhhYmVuIHdpciBkZW5uIG5lIFJ1YnJpayBTY2htYXJybiB3ZW5uIHNpZSBrZWluZXIgYmVudXR6dAo/Pz8KSGFidCBNaXRsZWlkIG1pdCBqZW1hbmRlbiwgZGVyIG51ciBhbGxlIHBhYXIgVGFnZSBkYSBpc3QgdW5kIGRlbm5vY2ggYWxsZXMKd2ljaHRpZ2UgYXVzIGRlciBaZWl0dW5nIG1pdGJla29tbWVuIHdpbGwuIDMwIEFydGlrZWwgcHJvIFRhZyBzaW5kIGVpbmZhY2gKenUgdmllbC4gOikgVW5kIG51biBmbGFtZWQgbWljaCBtYWwgc2Nob2VuLiA6KQpBcm9tYm9sb3NjaCwgdW5kIEJhdHRsZVRlY2ggaXN0IGRvY2ggYmVzc2VyLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNYW5uIGFscyBHb3R0IHVzdy4uLiAoQm9pbmcsIDE1LiBPa3QgMTk5NCwgMTY6NDI6NTApOgpXbyBlciBSZWNodCBoYXQgaGF0IGVyIFJlY2h0IC4uLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmaW5pdG8gKE1lcGhpc3RvLCAxNS4gT2t0IDE5OTQsIDIwOjQ2OjE2KToKSWNoIHdlcmRlIGVzIGluIFp1a3VuZnQgbWl0IFdpdHRnZW5zdGVpbiBoYWx0ZW46CidXb3J1ZWJlciBtYW4gbmljaHQgcmVkZW4ga2FubiwgZGFydWViZXIgbXVzcyBtYW4gc2Nod2VpZ2VuJy4KCkVpbiBldHdhcyB2ZXJ3dW5kZXJ0ZXIgTWVwaAoKUFM6IEljaCBoYWIgZGEgd29obCB3YXMgbWlzc3ZlcnN0YW5kZW4sIHNvcnJ5IEtsaW5nZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNhdHp6ZWljaGVuIChLcmV0ZWssIDE2LiBPa3QgMTk5NCwgMDA6MzQ6NDIpOgpBIHByb3BvcyAiU2NocmlmdGFlc3RoZXRpayI6IEZhZWxsdCBkYXJ1bnRlciBuaWNodCBhdWNoIGVpbiBiaXNzY2hlbgpHcmFtbWF0aWsgdW5kIFJlY2h0c2NocmVpYnVuZz8gIFNvIHp1bSBCZWlzcGllbCBkaWUgVW50ZXJzY2hlaWR1bmcgendpc2NoZW4KImRhcyIKdW5kICJkYXNzIiwgb2RlciBhdWNoLCBkYXNzICghKSBtYW4gZGFzIFdvcnQgIkhpbGZlIiwgd2llIGFsbGUgTm9tZW4sIGdyb3NzCnNjaHJlaWJ0PwoKRWluIHZlcm11dGxpY2ggbGViZW5zbXVlZGVyICh3ZWlsIGVyIHNvbGNoZSBBcnRpa2VsIHNjaHJlaWJ0KSB1bmQgRmxhbWVzCmJ6dy4gUmUtRmxhbWVzIGVyd2FydGVuZGVyCgpLcmV0ZWsgZGVyIGV3aWdlIEtyaXRpa2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSG9ibyBoYXQgZWluZW4gR290dCBhbHMgTWFubiAuLi4gKFNpbHZhbmEsIDE2LiBPa3QgMTk5NCwgMTA6Mzg6MTUpOgooQmV6dWc6IEFydGlrZWwgdm9uIEJvaW5nLCBTYW0sIDE1LiBPa3QgMTk5NCwgMTY6NDE6NDUpCldpZSBtYW4gbWl0IGRlciBGcmF1IGVpbmVzIEdvdHRlcyB1bWdlaHQsIER1cmlhbj8gQWxzbyBpY2ggaGFidCBkYSBrZWluZQpQcm9ibGVtZS4gSWNoIG5lbm5lIHNpZSBNYW1hISAgIDstKQoKU2lsdmFuYSAoU3RvbHogYXVmIGlocmUgTWFtYS4uLi4gVW5kIGF1ZiBpaHJlbiBPcGEgbmF0dWVybGljaCBhdWNoLi4uIDstKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbGJzdGVpbnNjaGFldHp1bmc/IChLcmV0ZWssIDE2LiBPa3QgMTk5NCwgMjE6NDA6MzkpOgpOZXVsaWNoLCBpbiBkZXIgUGl6emVyaWE6Cgo+IHNjaGFldHogc2lsdmFubwo+IFNpbHZhbm8gaXN0IGRpciBoYXVzaG9jaCB1ZWJlcmxlZ2VuLgo+IERlaW5lIFJ1ZXN0dW5nIGlzdCBiZXNzZXIgYWxzIGRpZSBTaWx2YW5vcy4KPiBEZWluZSBXYWZmZSBpc3QgZWlnZW50bGljaCB6dSBndXQgZnVlciBkaWVzZW4gR2VnbmVyLgoKCkFsc28gd2FzIG51PyEgSGF1dCBlciBtaWNoLCBvZGVyIGhhdSBpY2ggaWhuLi4uPwooSG9mZmVudGxpY2ggZ2lidCBkYXMgbWFsIGtlaW5lbiBFaW50cmFnIHVudGVyICJGYW1vdXMgbGFzdCBXb3JkcyIhISEpCgoKTm9jaCB6b2VnZXJuZAoKS3JldGVrIGRlciBld2lnZSBNb3R6ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNYW5uIGFscyBHb3R0IHVzdy4uLiAoRW5neXd1Y2ssIDE3LiBPa3QgMTk5NCwgMDA6MTQ6MDYpOgpBbHNvLCBzb2Zlcm4gaWNoIG1pY2ggcmljaHRpZyBlbnRzaW5uZSwgaXN0IEJvaW5nIG5pY2h0IG51ciBIb2JvcyBHb3R0LApFcnptYWdpZXIgdW5kIE1hbm5uIHNvbmRlcm4gYXVjaCBpaHIgUGFwaSEKT2IgZGFzIGpldHp0IEluemVzdCBpc3QuLj8gT2RlciBkdWVyZmVuIEdvZXR0ZXIgZGFzPyAoTWl0IFNjaHdhZW5lbiBnZWh0cyBqYQphdWNoLCBkYSBoYXQgYXVjaCBrZWluZXIgd2FzIGdlZ2VuLi4uKQoKUmF0bG9zLi4uCiAgICBFbmd5d3VjawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNhdHp6ZWljaGVuIChHb2xkdHVydGxlLCAxNy4gT2t0IDE5OTQsIDA2OjAwOjAyKToKU29vb29vb29vbyB3aXJkIHVlYnJpZ2VucyBudXIgbWl0IGVpbmVtICdvJyBnZXNjaHJpZWJlbiEKR29sZGNoZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvJ24gU2NobWFycm4gKEhvYm8sIDE3LiBPa3QgMTk5NCwgMTE6MzM6MTgpOgpXYXMgc29sbCBkYXMgZWlnZW50bGljaCBoaWVyPz8/PwpEYSBpc3QgbWFuIG1hbCB2b2xsZSAxNiBTdHVuZGVuIG5pY2h0IGRhLCB1bmQgYWxsZXMsIHdhcyBkYSBpc3QsICBzaW5kIHZpZXIKbmV1ZSBBcnRpa2VsLgpBbHNvLCBpY2ggYmluIHdpcmtsaWNoIGVudHRhZXVzY2h0IHZvbiBFdWNoLiA6KAoKSG9ibwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVja3RzY2pyZXViaW5nIChEdXJpYW4sIDE3LiBPa3QgMTk5NCwgMTI6MDM6MDQpOgpIaSEKSWNoIGhhbmUga2FlaW5lIFByYm1sZWUgbWl0IFJlY2h0c2NocmlidW5nLCBudXIgYXAgdW50IGFuIG1pdCB0eXBvcyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaGxhbXBlIChLb3R6YnJvY2tlbiwgMTcuIE9rdCAxOTk0LCAxNTozOTozNCk6CkRpZXNlIHNjaGxhbXBlIHZvbiBTQi1BbXVsZXR0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbHVzdGlnZSBUaWVyd2VsdCAoSGFyZGlsLCAxNy4gT2t0IDE5OTQsIDE1OjM5OjQ4KToKCldhcyBpY2ggc2Nob24gaW1tZXIgbWFsIHdpc3NlbiB3b2xsdGUgKHdpbGwgZGFzIG5pY2h0IGlyZ2VuZGVpbiBBTmZhZW5nZXIgbWFsCmF1c3Byb2JpZXJlbjoKd2VubiBtYW4gYWxzIEZyb3NjaCB6dW0gTWF1bHd1cmYgd2lyZCB1bmQgZGFubiB3aWVkZXIgYXVzIER1bmN0b24gcmF1c2ttbXQsCmlzdCBtYW4gZGFubiBpbW1lciBub2NoIGVpbiBGcm9zY2gsIG9kZXIgZWluIEhhd2ssIG9kZXIgd2FzYXVjaGltbWVyID8KCkhhcmRpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOkdyaXN1IChDYXR3ZWF6bGUsIDE3LiBPa3QgMTk5NCwgMTY6MzY6NTQpOgooQmV6dWc6IEFydGlrZWwgdm9uIEJvaW5nLCBTYW0sIDE1LiBPa3QgMTk5NCwgMTY6NDE6MzcpClJlZ2lvbnNtYWdpZXIsIEdvdHQgdW5kIE1hbm4sIEhvYm8/CkRhcyBzaW5kIGphIGdsZWljaCBkcmVpIERpbmdlIGF1ZiBlaW5tYWwhCkRhcyBnZWh0IG51biB3aXJrbGljaCBuaWNodCEKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG1tbW1tIChHcmltbWRlYXRoLCAxNy4gT2t0IDE5OTQsIDIzOjA0OjA4KToKCkljaCBkZW5rZSBnZXJhZGUsIERhbmNlciwgU2FuZHRpZ2VyLi4udmllbGxlaWNodCBUYWVuemVyIGltIFRpZ2VydGFuZ2E/IDstKQoKICAgICAgICAgR3JpbW1kZWF0aCwgZ2FueiBhbGxlaW5lIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGx1c3RpZ2UgVGllcndlbHQgKE5peGlob3UsIDE4LiBPa3QgMTk5NCwgMTI6MjY6MjgpOgooQmV6dWc6IEFydGlrZWwgdm9uIEhhcmRpbCwgTW9uLCAxNy4gT2t0IDE5OTQsIDE1OjM5OjQ4KQpiZXp1ZzpsdXN0aWdlIFRpZXJ3ZWx0IChIYXJkaWwsIDE3LiBPa3QgMTk5NCwgMTU6Mzk6NDgpOgoKdmllbGxlaWNodCB3aXJkIG1hbiBqYSBkYW5uIHp1bSB3b2xwZXJ0aW5nZXIuICh3ZW5uIGF1Y2ggbnVyIHp1IGVpbmVtIG1pdCAyCnZlcnNjaGllZGVuZW4gdGllcmFydGVuKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNZWluIEtyaWVnIG1pdCBkZW4gUXVlc3QncyAoU3VubnksIDIwLiBPa3QgMTk5NCwgMTE6MDU6MzgpOgpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFJvbWlsaSwgMjAuIE9rdCAxOTk0LCAwODozMTo0MF06CihCZXp1ZzogQXJ0aWtlbCB2b24gWnVlcmlsZXUsIERvbiwgMjAuIE9rdCAxOTk0LCAwNjowMzoxMykKSG1tbSAuLi4gbmljaHQgZGFzcyBpY2ggZGFzIG5pY2h0IHZlcnN0ZWhlbiB3dWVyZGUgenVlcmlsZXUgLSBhYmVyIHF1ZXN0cwpnZWhvZXJlbiB6dSBkaWVzZXIgYXJ0IG11ZHMgbnVuIG1hbCBkYXp1IC0gdW5kIGljaCBmYWVuZGUKZXMgbmljaHQgZ3V0IHdlbm4gamVtYW5kIG1hZ2llciB3ZXJkZW4ga29lbm50ZSBvaG5lIGVpbmVuCmdyb3NzZW4gdGVpbCBkZXIgcXVlc3RzIGdlbG9lc3QgenUgaGFiZW4uIGVzIGdpYnQgZGEgYW5kZXJlCm11ZHMgbWl0IGFuZGVyZW4gemllbGVuIC0gaWNoIHdlaXNzIG5pY2h0IG1laHIgd2llIGRpZSBoZWlzc2VuLCBhYmVyCmRhIHdpcmQgZ2xhdWIgaWNoIG51ciBnZW1ldHplbHQgdW5kIG5pY2h0IGdlcXVlc3RldC4KYWJlciBlaW4ga2xlaW5lciB0aXAgdm9uIG1pciwgdmVyc3VjaCBkb2NoIG5pY2h0IGFsbGUgcXVlc3RzIGFsbGVpbmUKenUgbG9lc2VuLiBlcyBpc3Qgc28gbmV0dCBtaXQgYW5kZXJlbiBzcGllbGVybiBxdWVzdHMgenUgbG9lc2VuLgoqc2Nod2VsZyBpbiBlcmlubmVydW5nZW4qIGljaCBrYW5uIG1pY2ggbm9jaCBndXQgYW4gZGllIGthdGFrb21iZW4KZXJpbm5lcm4sIGluIGRlbmVuIGljaCBtaXQgaG1tbSBkYW5jZXIsIHNvbmljIHVuZCBub2JvZHkgZ2xhdWIgaWNoCm5lIGdhbnplIG5hY2h0IHZlcmJyYWNodCBoYWJlIDotKS4KCm51biBndXQgLSBqZXR6dCBzY2h3ZWlmIGljaCBnbGF1YiBpY2ggZXR3YXMgYWIuIHdvbGx0ZSBudXIgbWVpbmUKbWVpbnVuZyBiZWthbm50IGdlYmVuOiBNYWdpZXIgb2RlciBTZWhlciBpbiBNRyBvaG5lIHF1ZXN0cyBnZWh0IG5pY2h0LgoKUm9taWxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp6ZWl0dmVydHJlaWIgKFNtYXVnLCAyMC4gT2t0IDE5OTQsIDE0OjU1OjA2KToKCndlaXNzIGRlbm4gbmllbWFuZCBldHdhcyBpbnRlcmVzc2FudGVzCmljaCBtdXNzIGhpZXIgYXVmIGRhcyBmbHVnZHJhY2hlbmJhYnkgd2FydGVuLCB1bmQgaGFiIG5pY2h0IGVpbm1hbCBldHdhcyB6dQpsZXNlbi4KZGFzIG11c3MgZ2VhZW5kZXJ0IHdlcmRlbiAuLi4uCgpzbWF1ZywgZGVyIGtlaW4gZmx1Z2RyYWNoZSBpc3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFydGlrZWwgaW4gZGUuYWx0Lm11ZCAoUm9jaHVzLCAyMC4gT2t0IDE5OTQsIDE4OjE3OjIwKToKV2FzIGhhbHRldCBJaHIgdm9uIGZvbGdlbmRlbSBBcnRpa2VsLCBkZXIgaW4gZGUuYWx0Lm11ZCBlcnNjaGllbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkZyb206IHNfcmVkZWtlQGlyYS51a2EuZGUgKEluZ28gUmVkZWtlKQpOZXdzZ3JvdXBzOiBkZS5hbHQubXVkLGFsdC5tdWQuZ2VybWFuClN1YmplY3Q6IFJlOiBGQVEgTXVkZGVuIGltIGRldXRzY2hzcHJhY2hpZ2VuIFJhdW0KRGF0ZTogMTkgT2N0IDE5OTQgMTg6NTc6MjIgR01UCk9yZ2FuaXphdGlvbjogVW5pdmVyc2l0eSBvZiBLYXJsc3J1aGUsIEdlcm1hbnkKCk1hcnRpbiBCcmVubmVyIChicmVubmVyQG5vdmEudGF0LnBoeXNpay51bmktdHVlYmluZ2VuLmRlKSB3cm90ZToKOiBGQVE6IERFVVRTQ0hFUyBNVURERU4gKDMwLVNlcC05NCkKClsuLl0KCkZlaGx0IG5vY2ggYW56dW1lcmtlbiwgZGFzcyBpbiBkZXV0c2NoZW4gTXVkcyBEaXN6aXBsaW4gaGVycnNjaHQhIEphd29obCEKVW5kIHNlaSBlcyBub2NoIHNvIGhvaGwuLi4KSW4ga2VpbmVuIGFuZGVyZW4gTVVEcyBhbHMgaW4gZGVuZW4gaGllcnp1bGFuZGUgYmluIGljaCBhdWYgZWluZSBkZXJhcnRpZwpzcGllc3NpZy1ibG9lZGUgV2l6YXJkLUNsaXF1ZSBnZXRyb2ZmZW4uIEplZGUgQXJ0IHZvbiBLcml0aWsgKHVuZCB2b3IgYWxsZW0KZGllIHN1YnN0YW50aWVsbGUpIGFuIGRlbiBXaXp6aWVzIHVuZCBpaHJlbiBEdW1taGVpdGVuIGZ1ZWhydCB1bndlaWdlcmxpY2gKenVyIHRvdGFsZW4gQXVzZ3Jlbnp1bmcuIERhaGVyIGRlciBndXRlIFJhdDogc2VpZCBzbyBkZXZvdCB1bmQgYW5nZXBhc3N0CndpZSBJaHIgbnVyIHNlaW4ga29lbm50IC0gZGFzIGdpbHQgZnVlciBkaWUgbWVpc3RlbiBNVURzIGluIGRlciBMaXN0ZSwKZGVubiBkaWVzZXMgUGFjayBiZXN0ZWh0IGF1cyBlaW4gcGFhciBMZXV0ZW4sIGRpZSBzaWNoIGRvcnQgYWxzIFdpemFyZHMgZWluLQpnZW5pc3RldCBoYWJlbi4gTWVpc3RlbnMgYmVudXR6ZW4gc2llIG51ciBqZXdlaWxzIGVpbmVuIE5hbWVuLCB3aWUgSGF0ZSBvZGVyCkRlKGUvcClwdGhvdWdodCBzaW5kIGFsc28gbGVpY2h0IGF1c3p1bWFjaGVuLiBWb20gQ2hhcmFrdGVyIGhlciBhZWhuZWxuIHNpZQpzdGFyayBlaW5lciBTdHVkZW50ZW52ZXJiaW5kdW5nIG1pdCBkZW4gZW50c3ByZWNoZW5kZW4gTWVya21hbGVuIHdpZSBBdXRvLQpyaXRhZXRzZ2xhZXViaWdrZWl0LCBJZ25vcmFueiBnZWdlbnVlYmVyIEFuZGVyc2RlbmtlbmRlbiwgTmVpZ3VuZyB6dSBWb3ItCnZlcnVydGVpbHVuZ2VuIHVuZCBFaXRlbGtlaXQgc293aWUgYXVzZ2VwcmFlZ3RlciBNYWNodGdlaWxoZWl0LgpJY2ggc2FnZSBuaWNodCwgZGFzcyBBTExFIFdpemFyZHMgZGF6dWdlaG9lcmVuLCBhYmVyIGVpbmlnZSwgZGllIGluIGRpZXNlIE5HClBvc3RlbiBzaWNoZXIuIERhcnVtIHVlYmVybGVndCBlcyBFdWNoIGd1dCwgYmV2b3IgSWhyIEV1cmUgUGxheWVyIGluIGRldS0KdHNjaGVuIE1VRHMga3JlaWVydC4gRXMgZ2lidCBhdWNoIHNlaHIgZ3V0ZSBhbmRlcmUgTVVEcyBpbiBFdXJvcGEgdW5kIFVTQSwKbmllbWFuZCB6d2luZ3QgRXVjaCwgZGllc2VuIFRlcnJvciB2b24gb2JlbiBoaWVyenVsYW5kZSBtaXR6dW1hY2hlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXJ0aWtlbCBpbiBkZS5hbHQubXVkIChEdXJpYW4sIDIwLiBPa3QgMTk5NCwgMTg6MTc6NTUpOgooQmV6dWc6IEFydGlrZWwgdm9uIFJvY2h1cywgRG9uLCAyMC4gT2t0IDE5OTQsIDE4OjE3OjIwKQpXYXMgaWNoIGRhdm9uIGhhbHRlLCBuaWNodHMhCgotIER1cmlhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHJlOiBBcnRpa2VsIGltIHdhc3N3ZWlzc2ljaHdvIChEYW5jZXIsIDIwLiBPa3QgMTk5NCwgMTk6NTg6NTEpOgpIb2VydCBzaWNoIGluIG1laW5lbiBPaHJlbiBldHdhcyBkYW5hY2ggYW4sIGFscyB3YWVyZSBkZXIgVmVyZmFzc2VyIGRpZXNlcwpBcnRpa2VscyBpcmdlbmR3YW5uIG1hbCBnZWZydXN0ZXQgaGV1bGVuZCBhdXMgZWluZW0gTVVEIGhpbmF1c2dlcmFubnQsCndlaWwgZXR3YXMgbmljaHQgbmFjaCBzZWluZXIgTmFzZSBsaWVmLCB1bmQgaGFldHRlIHNpY2ggbWl0IGVpbmVtIHNvbGNoZW4KQXJ0aWtlbCBMdWZ0IGdlbWFjaHQuClNjaGFkZSBkYXJhbiBmaW5kZSBpY2ggbnVyLCBkYXNzIGRlciBOYW1lIHZvbiBIYXRlIC0gZWluZXMgZGVyIGZhZWhpZ3N0ZW4KUHJvZ3JhbW1pZXJlciwgZGllIGljaCBoaWVyIHVlYmVyaGF1cHQga2VubmVuZ2VsZXJudCBoYWJlIC0gaW4gZGVuClNjaG11dHogZ2V6b2dlbiB3aXJkLiBMaWViZXIgVmVyZmFzc2VyLCBzb2V0d2FzIG5lbm5lIElDSCBEdW1taGVpdC4uLgpuYWVtbGljaCB2b24gZXR3YXMgcmVkZW4sIHdvdm9uIG1hbiBrZWluZSBBaG51bmcgaGF0LgoKRGFuY2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHJlOiBBcnRpa2VsIGltIHdhc3N3ZWlzc2ljaHdvIChLcmV0ZWssIDIwLiBPa3QgMTk5NCwgMjA6MDg6MjkpOgpJY2ggYmluIHp3YXIgYXVjaCBuaXJnZW5kcyBXaXphcmQvR29kL01hZ2llciBvZGVyIHdhcyBhdWNoIHNvbnN0Li4uCih6dW1pbmRlc3QgTk9DSCBuaWNodCEpLCBhYmVyIGljaCBmaW5kZSBkaWVzZW4gQXJ0aWtlbCBlaHJsaWNoIGdlc2FndCBhdWNoCnZvbGwgZGFuZWJlbiEgSWNoIG1laW5lLCBkYXNzIGVzIG1pdCBTaWNoZXJoZWl0IGVpbiBQQUFSIExldXRlIGdpYnQsCmRpZSBzbyBlaW4gYWJzb2x1dGlzdGlzY2hlcyBTeXN0ZW0gaW4gImlocmVuIiBNVURzIGdlcm5lCnNlaGVuIHd1ZXJkZW4sIGRhIGJpbiBpY2ggbWlyIHJlbGF0aXYgc2ljaGVyIChBbndlc2VuZGUgYXVzZHJ1ZWNrbGljaAphdXNnZW5vbW1lbiEpLCBhYmVyIHNvIGVpbmUgVmVyYWxsZ2VtZWluZXJ1bmcgaXN0IGphIHdvaGwgbWl0IFNpY2hlcmhlaXQgbWl0CmRhcyBEdWVtbXN0ZSwgZGFzIGljaCBpbiBsZXR6dGVyIFplaXQgZ2VsZXNlbiBoYWJlIChtaXQgQXVzbmFobWUgZGVyClRhdHNhY2hlLApkYXNzIGVpbiBwYWFyIFVudmVyYmVzc2VybGljaGUgZXMgYW5zY2hlaW5lbmQgZ3V0IGZpbmRlbiwgZGFzcyBkaWUgUERTIHdpZWRlcgppbSBCdW5kZXN0YWcgaXN0Li4uIEFlaCwgYW5kZXJlcyBUaGVtYSEpCldlbm4gaWNoIG51ciBtYWwgenVydWVja2RlbmtlLCBtaXQgd2lldmllbCBIdW1vciAoenVtaW5kZXN0IGltIEdyb3NzZW4gdW5kCkdhbnplbiwgZWluIHBhYXIgaGFiZW4gZGFtYWxzIGFuc2NoZWluZW5kIGRpZSBJcm9uaWUgZG9jaCBuaWNodCBzbyBnYW56Cmdlc2NobmFsbHQuLi4pIHVuc2VyICJSZXZvbHV0aW9ucy1WZXJzdWNoIiB2b3IgZWluIHBhYXIgTW9uYXRlbiBhdWZnZW5vbW1lbgp3dXJkZSwgZGFzIHplaWd0IGRvY2ggdm9tICJHdXRlbiBHZWlzdCIsIGRlciBoaWVyIHVtZ2VodCwgb2Rlcj8KCkFsc28sIG1laW5lIERhbWVuIHVuZCBIZXJyZW4gTWFnaWVyOgpNYWNodCB3ZWl0ZXIgc28sIGxhc3N0IGV1Y2ggbmljaHQgaXJyaXRpZXJlbiEKKEVpbiBiaXNzY2hlbiBMb2IgdHV0IGRvY2ggamVkZW0gZ3V0LCBvZGVyPyEpCgoKQyBVIEw4RVIsCktyZXRlaywgZGVyIGV3aWdlIFNjaHdhbGxlcgooZGVyIHNpY2ggc2Nob24gZnJhZ3QsIG9iIGRhcyBuaWNodCBlaW4gYmlzc2NoZW4genUgcHJvc2Fpc2NoIHdhci4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hbCB3aWVkZXIgd2FzIHp1IG5vZXJnZWxuLi4uIChGbGludG5haWwsIDIxLiBPa3QgMTk5NCwgMDU6MjA6MTQpOgpIaS4uLi4KaWNoIHNjaHJlaWJtYWwgZ2xlaWNoIGluIFNjaG1hcnJuOyBiaW4gaGV1dGUgemllbWxpY2ggbmVnYXRpdiBlaW5nZXN0ZWxsdCEKCkdlcmFkZSBoYWIgaWNoIGRpZSBSdWJyaWsgYWxsZ2VtZWluZXMgZHVyY2hnZWJsYWV0dGVydCwgZGFiZWkgYXVmIGVpbmVuCmFlbHRlcmVuIEFydGlrZWwgdm9uIENpZmVyIGdlYW50d29ydGV0IChlciB3b2xsdGUgZXMgc28gOikgKSwgc28gdW5kIG51biBoYWIKaWNoIG5lbiB6aWVtbGljaCBrb21pc2NoZXMgQmlsZCB2b24gZGVyIGFsbGdlbWVpbmVuIEF0bW9zcGhhZXJlIGhpZXIhCkRpZSB3YXIgbWFsIGJlc3NlciEKU29vbyBsYW5nZSBiaW4gaWNoIGphIG5vY2ggbmljaHQgaGllciwgYWJlciB3ZW5uIGljaCBzbyBuZW4gaGFsYmVzIEphaHIKenVydWVja2RlbmtlLi4uLgpEYSB3YXIncyBzY2hvbiBsdXN0aWdlciEKTmljaHQgZ2FueiBzbyBzY2h3ZXIuLi4uCkVzIGdhYiB3ZW5pZ2VyIE1hZ2llciB1bmQgU2VoZXIuLi4KRGFzIE1HIHdhciBuZW4gYmlzc2NoZW4ga2xlaW5lci4uLgogICAuLm5hamEsIHVuZCB3ZW5uIGljaCBqZXR6dCBydW1ndWNrZS4uLgoKICAgIFJvY2h1cyB6dW0gQmVpc3BpZWwgc2FndCB6dW0gZWluZW4gU2VoZXIgc29sbGVuIHNpY2ggYXVmIGlocmVuIExvcmJlZXJlbgogICAgYXVzcnVoZW4uLi5uZW4gcGFhciBXb2NoZW4gc3BhZXRlciBsZXNlOiBkYSB3aXJkIGVzIHNvbnN0IHp1IGxhbmd3ZWlsaWcKZnVlciBTZWhlciEKCiBsaWViZSBNYWdpZXIuLi5pY2ggaGFiIEFuZ3N0LCBkYXMgaWhyIGhpZXIgbmVuIEhMUC1NdWQgYXVmYmF1dCEhIQpTaWNoZXIsIGRpZSBTYWNoZW4gZnVlciBkaWUgQW5mYWVuZ2VyIGJsZWliZW4gZXJoYWx0ZW4sIGFiZXIgd2VubiB3aXIgdW5zIGRpZQpsZXR6dGVuIFF1ZXN0cyBtYWwgYW5zY2hhdWVuLi4uLgogICAgZGllIHdlcmRlbiB2b24gbWFsIHp1IG1hbCBzY2h3ZXJlciwga29tcGxpemllcnRlciwgdmVyd29ycmVuZXIgb2RlcgplaW5mYWNoIG51ciBncm9lc3NlciEKV2FydW0gZWlnZW50bGljaD8/PyBXYXMgdHJlaWJ0IGV1Y2ggZGF6dS4uLmRhcyBoaWVyIG5lIGhlZnRpZ2UKUnVlc3R1bmdzc3BpcmFsZSBsYWV1ZnQsIGhhYmVuIGphIHNjaG9uIGRpdmVyc2UgTXVkbnV0emVyIGJlaWRlciBMYWdlcgplcmthbm50Li4uCgogYWJlciwgaWNoIGJpdHRlIHp1IGJlZGVua2VuOiBBdXNsb2VzZW4gdW5kIEJlZW5kZW4ga29lbm5lbiBkaWVzIE5VUiBkaWUKTWFnaWVyISEhCgpJY2ggYmluIGRhdm9uIHVlYmVyemV1Z3QsIGRhc3MgamVkZXIgTWFnaWVyLCBkZXIgaGllciBtZWhyIGFscyAnbnVyJyBlaW4gcGFhcgpPYmpla3RlIG9kZXIgUmFldW1lIGdlcHJvZ2d0IGhhdCwgc2ljaCBhbnN0ZWxsZSBtaXQgbmV1ZW4gUHJvamVrdGVuIG1pdCBkZXIKT3B0aW1pZXJ1bmcgc2VpbmVyIGFsdGVuIFByb2pla3RlIGJlc2NoYWVmdGlnZW4ga2Fubi4uLgoKT3B0aW1pZXJ1bmcgaGVpc3N0IHVlYnJpZ2VucyBuaWNodDogbWVociBNb25zdGVyLCBzdGFlcmtlcmUgTW9uc3RlciwgbWVocgpSYWV1bWUsIHNjaHdlcmVyZSBBdWZnYWJlbi4uLi5PcHRpbWllcnVuZyBoZWlzc3QgOm1laHIgRGV0YWlscywgYmVzc2VyZQpzeW50YXgtbW9lZ2xpY2hrZWl0ZW4sICdTcGllbGVyYmVzY2h3ZXJkZW4nIGludGVuc2l2IG5hY2hnZWhlbiwgICBpY2gKa29ycmlnaWVyZSBtZWhyIERldGFpbHMgbWl0IHNpbm52b2xsZSBEZXRhaWxzLi4uKCEpCgphY2hqYS4uLnVuZCB3YSBtaXIgbm9jaCBlaW5mYWVsbHQ6IHZlcnN1Y2h0IGRvY2ggbWFsIHdpZWRlciBTcGFzcyBpbiBkYXMKRHVuZ2VvbiB6dSBicmluZ2VuOwoKCgp0amEuLi52aWVsbGVpY2h0IG5laG10IGlociBldWNoIGphIHdhcyBkYXZvbiBhbi4uLgoKIC4uLnZpZWxsZWljaHQgaXMgZXMgYXVjaCBlaW5mYWNoIG51ciBTY2htYXJybiEhISEKCiAgICAgIC4uLkZsaW50bmFpbCwgbWFsIHdpZWRlciBuYWNoZGVua2xpY2ghISEKClAuUy4gV2FydW0gc2VpZCBpaHIgTWFnaWVyIE1hZ2llciBnZXdvcmRlbj8/PyBIbS4uLm1haWx0IGVzIG1pciBkb2NoCm1hbC4uLmljaCB3dWVyZGUgbWljaCBmcmV1ZW4hISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogcmU6IEFydGlrZWwgaW0gd2Fzc3dlaXNzaWNod28gKEJsb2VkZmluZ2VyLCAyMS4gT2t0IDE5OTQsIDA1OjI4OjI5KToKKEJlenVnOiBBcnRpa2VsIHZvbiBEYW5jZXIsIERvbiwgMjAuIE9rdCAxOTk0LCAxOTo1ODo1MSkKSXN0IERhbmNlciBkZXIgWndlaXRpZSB2b24gSGF0ZT8KQmxvZWRmaW5nZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlIDogTGFsbCBpbSBBbGwgKENhbXBpbm8sIDIxLiBPa3QgMTk5NCwgMDc6MzA6MzEpOgpEZWluZSBJZGVlbiBzaWNoIGF1ZiBiZXN0ZWhlbmRlIFByb2pla3RlIHp1IGJlc2NocmFlbmtlbiwga29lbm50ZSB3b2hsCmluIGtlaW5lciBhbmRlcmVuIFJ1YnJpayBwYXNzZW5kZXIgcGxhemllcnQgc2Vpbi4KU2ljaGVyIGZ1ZXIgZ2FueiBuZXVlIFNwaWVsZXIgbW9lZ2VuIGVpbmlnZSBQbGFldHplIHdpdHppZ2VyIHNlaW4sIGFiZXIKaWNoIGRlbmtlIGRhcyBrYXVtIGVpbmVyIGRlciBITFAgbm9jaG1hbCBkdXJjaHMgZ2FuemUgTVVEIHN0cmVpZnQgdW5kCm5hY2ggd2l0emlnZW4gRGV0YWlscyBzdWNodC4KV2VubiBrZWluZSBuZXVlbiBHZWJpZXRlIG1laHIgYW5nZXNjaGxvc3NlbiB3dWVyZGVuLCB3dWVyZGUgZGVyIFNwaWVsc3Bhc3MKZnVlciBkZW4gR3Jvc3N0ZWlsIGRlciBITFAgdm9lbGxpZyBpbiBkZW4gS2VsbGVyIGFiZmFsbGVuLgpOYXR1ZXJsaWNoIHdpcmQgYXVjaCBzdGFlbmRpZyBhbiBhbHRlbiBSYWV1bWVuIHZlcmJlc3NlcnQgOiksIGFiZXIgZGFzIGZhZWxsdAp3b2hsIGRlbiB3ZW5pZ3N0ZW4gU3BpZWxlcm4gYXVmLCBkYSBzaWUgZHVyY2ggZGFzIE1VRCBsYXVmZW4gbmFjaCBkZW0gTW90dG8KIkRhIHdhciBpY2ggc2Nob24sIGFsc28gYnJhdWNoZSBpY2ggbWlyIG5pY2h0cyBtZWhyIGFuenVzY2hhdWVuLCBhbHNvCnNjaHJlaWJlCmljaCBtaXIgZWluIFNrcmlwdCwgTW9uc3Rlci0+S25laXBlLT5Nb25zdGVyLi4uLi4iCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXJ0aWtlbCBpbiBkZS5hbHQubXVkIChMaSwgMjEuIE9rdCAxOTk0LCAwODo0NjoxNSk6CihCZXp1ZzogQXJ0aWtlbCB2b24gUm9jaHVzLCBEb24sIDIwLiBPa3QgMTk5NCwgMTg6MTc6MjApCldhcyBzb2xsIG1hbiBkYXp1IG5vY2ggc2FnZW4/IERhcyBsb2hudCBzaWNoIGphIG5pY2h0LiBXaXIgd2lzc2VuIGRhc3MgZXMKbmljaHQgc28gaXN0LCB1bmQgZWluZSAiR2VnZW5kYXJzdGVsbHVuZyIgaW4gZGllc2VyIE5ld3Nncm91cCBicmluZ3RzIGRvY2gKYXVjaCBuaWNodCxkYSBtYWNoZW4gd2lyIHVucyBudXIgbGFlY2hlcmxpY2guIE1pY2ggd3VlcmRlIG51ciBtYWwKaW50ZXJlc3NpZXJlbiwgd2llIGVyIHp1IGRpZXNlciBNZWludW5nIGdla29tbWVuIGlzdCwgZXIgbXVzcyBkb2NoIGhpZXIgZHJpbgpnZXdlc2VuIHNlaW4sIGRhc3MgV0wgaXN0IGRvY2ggbm9jaCBuaWNodCBvZmZlbiwgb2RlciBpc3QgSGF0ZSBub2NoIHdvYW5kZXJzCk1hZ2llcj8KSWNoIHd1ZXJkZSBzYWdlbiBTY2htYW1tIGRydWViZXIgdW5kIHN0YXR0ZGVzc2VuIEdhZXN0ZSBuZXR0IGJlZ3J1ZXNzZW4gdW5kCmhlbGZlbi4KQWJlciBkYXMgbWFjaGVuIHdpciBkb2NoIHNvd2llc28gc2Nob24sIG9kZXI/CkxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbWFsIHdpZWRlciB3YXMgenUgbm9lcmdlbG4uLi4gKFJvY2h1cywgMjEuIE9rdCAxOTk0LCAxMTowMToyNCk6Ck5hdHVlcmxpY2ggc29sbGVuIHNpY2ggU2VoZXIgYXVmIGlocmVuIExvcmJlZXJlbiBhdXNydWhlbiBrb2VubmVuLgpLZWluIFNlaGVyIE1VU1MgYWxsZSBub2NoIGZlaGxlbmRlbiBRdWVzdHMgbG9lc2VuIHVuZCBqZWRlcyBNb25zdGVyCnVtYnJpbmdlbi4KRXMgc29sbCBhYmVyIGF1Y2ggbmljaHQgbGFuZ3dlaWxpZyB3ZXJkZW4gZnVlciBkaWUgU2VoZXIsIGFsc28gbXVzcyBlcwphdWNoIGJlaSBkZW4gUXVlc3RzIHVuZCBNb25zdGVybiBub2NoIG5ldWUgSGVyYXVzZm9yZGVydW5nZW4gZ2ViZW4uCgpEZXIgZ3JvZXNzdGUgVGVpbCB3aXJkIGFiZXIgYXVjaCB3ZWl0ZXJoaW4gc28gZ2VzY2hyaWViZW4sIGRhc3MKZWluIG5vcm1hbGVyIFNwaWVsZXIgZXMgc2NoYWZmZW4ga2Fubi4gRGllIHN0YWVuZGlnZSBOZW5udW5nCmVpbmlnZXIgRXh0cmVtYmVpc3BpZWxlIHZlcnplcnJ0IGRlbiBFaW5kcnVjayB6aWVtbGljaCBzdGFyay4KKEljaCBzZWxiZXIgYmFzdGVsIHouQi4gZ2VyYWRlIGVpbmUgQW5mYWVuZ2VyKCEpUXVlc3QuLi4pCkVzIGlzdCBuaWNodCBnYW56IGxlaWNodCwgZGllIFNjaHdpZXJpZ2tlaXRzZ3JhZGUKZ2xlaWNobWFlc3NpZyB6dSB2ZXJ0ZWlsZW4uLi4KCldhcyBkaWUgYWxsZ2VtZWluZSBBdG1vc3BoYWVyZSBiZXRyaWZmdCwgc29sbHRlIGplZGVyIG1hbCB2ZXJzdWNoZW4sIHNpY2gKaW4gZGllIExhZ2UgZGVyIGFuZGVyZW4gU2VpdGUgenUgdmVyc2V0emVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBcnRpa2VsIGluIGRlLmFsdC5tdWQgKExvb3NlciwgMjEuIE9rdCAxOTk0LCAxMzozMDo1Myk6CkhJYSBMaSAtCm1pdCBkZXV0c2NoZW4gTXVkcyBtZWludCBkaWVzZXIgTWFydGluIEJyZW5uZXIgd29obCBhdWNoIGVuZ2xpc2Noc3ByYWNoaWdlCk11ZHMsIGRpZSBhdWYgZGV1dHNjaGVuIFJlY2huZXJuIGxhdWZlbi4KRGVlcCB1bmQgSGF0ZSBzaW5kIHpiIGluIE5pZ2h0ZmFsbCBhbHRlIE1hZ2llci4KQWJlciB1bnNlciBsaWViZXIgQXJ0aWtlbHNjaHJlaWJlciBzY2hlaW50IGVpbiBrbGVpbmVyIEFuYXJjaGlzdCB6dSBzZWluLAp3ZW5uIGljaCBkZW4gQXJ0aWtlbCByaWNodGlnIGRldXRlICh2aWVsbGVpY2h0IGRlciBEci4gQnVuZ2xlIGF1cyBkZXIgWkVJVCA/KQpBbnNvbnN0ZW4gYmVkYXJmIGRpZXNlciBBcnRpa2VsIHdvaGwga2VpbmVzIEtvbW1lbnRhcmVzLgogICAgICAgICAgIExvb3NlcgogICAgICAgICAgIChzY2hhZW10IHNpY2ggLCBkYXNzIHNvd2FzIGZyZWkgYmVpIGlobSBhbiBkZXIgVW5pIHJ1bWxhZXVmdCkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlOiBBcnRpa2VsIGluIGRlLmFsdC5tdWQgKFJvY2h1cywgMjEuIE9rdCAxOTk0LCAxMzozNzoxMCk6CkRlciBBcnRpa2VsIGtvbW10IHZvbiBJbmdvIFJlZGVrZSB1bmQgaXN0IGVpbmUgQW50d29ydCBhdWYKZWluZW4gQXJ0aWtlbCB2b24gTWFydGluIEJyZW5uZXIhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlOiBSZTogQXJ0aWtlbCBpbiBkZS5hbHQubXVkIChCb2luZywgMjEuIE9rdCAxOTk0LCAxNDo1NTowMSk6CkphLCBsZWlkZXIgbGFldWZ0IGRpZXNlciBJbmdvIFJlZGVrZSBiZWkgTUlSIGFuIGRlciBVbmkgcnVtIC4uLiA6KApNYXJ0aW4gQnJlbm5lciBpc3QgdWVicmlnZW5zIERlZXB0aG91Z2h0LCBhbHNvIGRlciBHb3R0IHZvbiBOSWdodGZhbGwgOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJsb2VkZmluZ2VyIChEYW5jZXIsIDIxLiBPa3QgMTk5NCwgMTg6NDA6MDMpOgpLbGFyLCBCbG9lZGZpbmdlciwgaWNoIGJpbiBkZXIgWndlaXRpZSB2b24gSGF0ZSwgYWxzbyBhdWYgZGllIEtuaWUgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXJ0aWtlbCBpbiBhbHQgZXRjLiAoR3JpbW1ib3JuLCAyMS4gT2t0IDE5OTQsIDE5OjQwOjM3KToKCkhtbSwgaXJnZW5kd2llIGZhbmQgaWNoIGRlbiBBcnRpa2VsIGRvY2ggZWhlciBndXQuCkFsc28gaWNoIGZ1ZWhsZSBtaWNoIGhpZXIgc2VsYnN0dmVyc3RhZW5kbGljaCB2b2VsbGlnIG1pZXMgYmVoYW5kZWx0IHVuZCBkYXNzCmRpZSBNYWdpZXIgTklFIGhlbGZlbiAoaWNoIGhhZXR0ZSBzY2hvbiBnZXJuZSBlaW5lIGdlY2xvbnRlIEF1c3J1ZXN0dW5nIG5hY2gKc28gbmVtIGNyYXNoKSBpc3QgYmVrYW5udC4KTmljaHQgZGFzIGtsZWluc3RlIGJpc2NoZW4gVmVyc3RhZW5kbmlzLCBzbyBzaWVodCBkb2NoIGRpZSBXaXJrbGljaGtlaXQgYXVzIQpXaXIgbXVlc3NlbiBkZW4gVGF0c2FjaGVuIGlucyBBdWdlIHNlaGVuOiBtdWQgaXN0IGVpbiBTcGllbCwgaW4gZGVtIGVzIHVtCk1lZ2llciBnZWdlbiBTcGllbGVyIGdlaHQsIHp1IHVuZmFpcmVuIEJlZGluZ3VuZ2VuIQpNaXIgcGVyc29lbmxpY2ggc2luZCBrZWluZSBBdXNuYWhtZW4gYmVrYW5udC4uLmRvY2gsIEFzbW9kaXMhIEFjaCBuZWUsIHdhciBqYQphdWNoIGVpbiBTcGllbGVyLi4uCgpWb2VsbGlnIGltIEtsYXNzZW5rYW1wZiwKICAgICAgICAgICAgICAgICAgICAgICAgIEdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKUC5TLiBPZGVyIHNvbGx0ZSBpY2ggZGVuIFNpbm4gZGVzIFNwaWVscyBuaWNodCBlcmZhc3N0IGhhYmVuLi4uIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NocnVtcGZpID06KSAoWnVlcmlsZXUsIDI0LiBPa3QgMTk5NCwgMDM6MDA6NDApOgpSeW5lIC0gTVVEIE8gSE9MSUMuCkxhZHkgSmFuZXQgKGJlZnJlaXQgdm9uIFp1ZXJpbGV1KS4KWnVlcmlsZXVzIEZ1ZWhyZXIgS2FzYW4gTWFpYmFuZy4KPiBbQWxsZ2VtZWluOld1ciBncmluc3RdCltBbGxnZW1laW46U2NocnVtcGZpXSBuZSByeW5lIGJsZWlidCBoaWVyCltBbGxnZW1laW46UnluZV0gc29ycnksIG1hY2hlIGdyYWRlIGZyYWNodHF1ZXN0IG1pdCB6dWVyaSB1bmQgc2NocnVtcGZpCltBbGxnZW1laW46U2NocnVtcGZpIGdyaW5zdF0KW0FsbGdlbWVpbjpXdXIgdHJpdHQgc2NocnVtcGZpXQotOnRyaXR0IHd1cgpbQWxsZ2VtZWluOlp1ZXJpbGV1IHRyaXR0IHd1cl0KPiBbQWxsZ2VtZWluOlNjaHJ1bXBmaSBrdWVzc3Qgd3VyXQpbQWxsZ2VtZWluOlJ5bmVdIGtvbW0sIG1hdXZyZSAtIGpldHp0IGR1cmNoaGFsdGVuICEhIQpbQWxsZ2VtZWluOk1hdXZyZSB0cml0dCBTY2hydW1wZmkuXQotOnRyaXR0IHNjaHJ1bXBmaQpbQWxsZ2VtZWluOlp1ZXJpbGV1IHRyaXR0IHNjaHJ1bXBmaV0KPiBbQWxsZ2VtZWluOld1cl0gZXIga2FubiB3b2hsIG5pY2h0IG1laHIgOigKW0FsbGdlbWVpbjpSeW5lXSBtYWwgYWxsZSBtYXV2cmUgYXVmbXVudGVybiAhISEKW0FsbGdlbWVpbjpTY2hydW1wZmldIG5lIG5lClJ5bmUgdmVybXVkZGV0IHNpY2ggbmFjaCBOb3Jkd2VzdGVuLgpLYXNhbiBNYWliYW5nIGdlaHQuCltBbGxnZW1laW46TWF1dnJlICBrYW5uIHNjaG9uIHNlaWQgZWluIHBhYXIgU3R1bmRlbiBuaWNodCBtZWhyLl0KW0FsbGdlbWVpbjpTY2hydW1wZmkgbXVudGVydCBtYXV2cmUgYXVmXQpSeW5lIGlzdCBtYWwgd2llZGVyIGRhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiByZTogQXJ0aWtlbCBpbSB3YXNzd2Vpc3NpY2h3byAoQ2FkcmEsIDI0LiBPa3QgMTk5NCwgMTA6NTA6MTApOgooQmV6dWc6IEFydGlrZWwgdm9uIERhbmNlciwgRG9uLCAyMC4gT2t0IDE5OTQsIDE5OjU4OjUxKQpKYXUsIGRlciBWZXJmYXNzZXIgd3VyZGUgaW4gTmlnaHRmYWxsIHZvbiBEZWVwdGhvdWdodCBzZWxiZXIKZ2ViYW5pc2NodCwgbmFjaCB4IEVybWFobnVuZ2VuIHVuZCB6aWcgU3BpZWxlcmJlc2Nod2VyZGVuLgotLUNhZHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXJ0aWtlbCBpbiBkZS5hbHQubXVkIChDaWZlciwgMjQuIE9rdCAxOTk0LCAxMzo0MTowMSk6CihCZXp1ZzogQXJ0aWtlbCB2b24gUm9jaHVzLCBEb24sIDIwLiBPa3QgMTk5NCwgMTg6MTc6MjApCkljaCBrYW5uIGRlbiBBcnRpa2VsIGF1cyBkZXIgTmV3cyBHcm91cCBzZWhyIGd1dCBuYWNodm9sbHppZWhlbiwgd2VubiBpY2gKYXVjaCBuaWNodCB1bmJlZGluZ3QgZGllc2UgYmVpZGVuIE5hbWVuIGFuZnVlaHJlbiB3dWVyZGUuCldhcnVtIHN0ZWh0IGRhcyBlaWdlbnRsaWNoIGluIFNjaG1hcnJuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllYnN0YWhsIChHcmltbWJvcm4sIDI0LiBPa3QgMTk5NCwgMjM6NDA6MjYpOgoKTmEsIG5vY2ggc2NocmVpYiBpY2hzIGhpZXIgaW4gc2NobWFycm4uLi4KCkluIGxldHp0ZXIgWmVpdCBzY2hlaW50IGVzIFNpdHRlIHp1IHdlcmRlbiwgZWluZmFjaCBydW16dWxhdWZlbiB1bmQgenUKa2xhdWVuLiAyIEJlaXNwaWVsZSBhdXMgZGVuIGxldHp0ZW4gMiBvbmxpbmVzdHVuZGVuOgpJY2ggc3RlaGUgbWl0IGVpbmVtIEZyZXVuZCBydW0sIDIwIDAwMCBNdWVuemVuIGF1ZiBkZW0gQm9kZW4sIHVlYmVyIGRpZSB3aXIKZGlza3V0aWVyZW4uIEVpbiBNTFAgKG1lZGl1bSBsZXZlbCBwbGF5ZXIpIGtvbW10IHJlaW4sIG5pbW10IGRhcyBHZWxkIHVuZCBoYXV0CmFiLgpJY2gga2lsbGUgZWluZW4gR29ibGluIChuaWNodCBhbGVpbmUpLCBkaWUgbGV0enRlbiAyIFNjaGxhZWdlIGtvbW10IGplbWFuZAphbiwgc2NoYXV0IHp1IHVuZCBiZWtsYXV0IGRhbm4gVU5TRVJFIExlaWNoZS4gTmljaHQgZGllIGZlaW5lIEFydC4uLgoKV2VubiBkYXMgU2NodWxlIG1hY2h0IG5laG1lIGljaCBpcmdlbmR3YW5uIG5vY2htYWwgUEsgaW4gS2F1Zi4gV2FzIHNvbGxlbgpzY2hvbiBTdHVmZW4gdW5kIGljaCBrYW5uIGF1Y2ggbWl0IGVpbiBwYWFyIHp0IHdlbmlnZXIgYWxzIE1heGltdW0gbGViZW4uLi4KCkVpZ2VudGxpY2ggemllbWxpY2ggZW50dGFldXNjaHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcmUgYXJ0aWtlbCAxIChadWVyaWxldSwgMjUuIE9rdCAxOTk0LCAwMToxNDoyOCk6ClNhbGkgemFlbWUsCkljaCBmaW5kZSBhdWNoIGRhcyBkZXIgQXJ0aWtlbCAxIG51biBlY2h0IHVudGVyIGplZGVtIEh1bmQgaXN0IHVuZCB6d2FyIGljaApoYWJlIGluIEFuY2llbnQgQW5ndWlzaCBzY2hsZWNodGVyZSBlcmZhaHJ1bmdlbiBnZW1hY2h0IGFscyBpbiBkaWVzZW0gTXVkLgpOZWluIGhpZXIgaGFiZSBpY2ggaW0gZ3JvZXNzdGVuIHRlaWwgbnVyIHBvc2l0aXZlcyBlcmxlYnQuCktsYXIsIGZpbmQgc2Nob24gZGFzIGVzIGFuIGVpbmlnZW4gc3RlbGxlbiB6dSBoYXJ0IGlzdCB1bmQgaGFiZSBhdWNoIHNjaG9uCnVlYmVyIGV1Y2ggTWFnaWVyIGdlZmx1Y2h0IGFiZXIgd2VyIHR1dCBkYXMgbmljaHQ/IEVpbmVyc2VpdHMgbXVzcyBtYW4gZG9jaAp6dWdlYmVuIGlociBoYWJ0IGhpZXIgaW4gZGllc2VtIChrbGVpbmVuPykgTXVkIGRvY2ggc2VociBndXRlIEFyYmVpdApnZWxlaXN0ZXQuClVuZCBlcyBzY2hlaW50IG1pciB3ZW5uIGljaCBkZW0gc2NocmVpYmVyIHNlaW4gZ2Vrcml0emxlIGxlc2UgZGFzIGVyCndhcnNjaGVpbmxpY2ggbm9jaCBuaWUgb2RlciBmYXN0IG5pZSBpbSBNb3JnZW5ncmF1ZW4gd2FyLiBLbGFyIGhvZXJ0ZSBpY2ggaW0KSVJDIGVoZXIgc2NobGVjaHRlcmVzIHVlYmVyIE1vcmdlbmdyYXVlbiwgYWJlciBkYXMgYXVjaCBudXIgdm9uIExldXRlCmRpZSBub2NoIG5pZSBpbSBNb3JnZW5ncmF1ZW4gd2FyZW4gb2RlciBlaW5mYWNoIGRpZSBpZGVlIHZvbiBlaW5lbSBkZXV0c2NoZW4KTXVkIHNjaGxlY2h0IGZpbmRlbi4gSWNoIGJpbiBmcm9oIGRhcyBlcyBNb3JnZW5ncmF1ZW4gZ2llYnQgdW5kIGRhcyBlcyBERVVUU0NICmlzdCB1bmQgZGFzIGJld2Vpc3QgYXVjaCBtZWluZSBob2hlIFRlbGVmb25yZWNobnVuZyB2b24gc0ZyLiAxMTAwLi0tID06KSkKV2FydW0gYXVzZ2VyZWNobmV0IGRlciBOYW1lbiB2b24gSGF0ZSBnZWZhbGxlbiBpc3Qgd2Vpc3MgaWNoIG5pY2h0IHdpbGwgZXMKYWJlciBhdWNoIG5pY2h0IHdpc3NlbiBkYSBIYXRlIG1pciBnZWdlbnVlYmVyIGVpZ2VudGxpY2ggaW1tZXIgc3ltcGF0aXNjaCB3YXIKYXVjaCB3ZW5uIGVyIG1pciB2ZXJib3RlbiBoYXQgU3Vzc2FuZSB6dSBLaWxsZW4gPTopKS4KQWJlciBMZXV0ZSwgd2lyIHNpbmQgaGllciBkb2NoIGVpbmUgZ3Jvc3NlIEZhbW1pbGllIHVuZCBzbyBzb2xsdGUgZWluIE11ZAphdWNoIHNlaW4gRmFtbWlsaWFlciB1bmQgZGFzIGlzdCBNb3JnZW5ncmF1ZW4uIEFsc28gaGFsdGV0IGRvY2ggZWluIHdlbmlnCnp1c2FtbWVuIHVuZCBzY2hyZWlidCBuaWNodCBzbyBlaW5lbiBRdWF0c2NoIGluIGRpZSBNUEEgZXVlciBadWVyaWxldQoKUFM6IHp1ciBLbGFtbWVyLCBkaWUgTWFnaWVyIHNhZ2VuIGltbWVyIGRhcyBNb3JnZW5ncmF1ZW4gc28ga2xlaW4gc2VpLCBpY2gKZmluZGUgZGFzIHN0aW1tdCBkb2NoIGVpbmZhY2ggbmljaHQuCiAgICAgICAgICAgICAgICAgIF8gICAgICAgXwogICAgICAgX19fX18gICAgIChfKSAgICAgKF8pICAgICAgIC5fLiAgIC5fX19fXyAgX18gX18KICAgICAgKF9fX18gXDo6L1woXykvXF9fX19fIF9fX19fXzp8IHw6Ojp8IF9fX18pLyAvIFwgXAogICAgICAgLiAvIF8vX19cIFxfLyAvIF8gXCBcXF9fX18vOnwgfF9fOnwgX19fKTpcIFxfLyAvCiAgICAgLjo6OlxfX19fXylcX19fLyBfICAvIC86Ojo6Ojo6fF9fX18pfF9fX19fKTpcX19fLwogICAuOjo6Ojo6Ojo6Ojo6Ojo6OlwvOlwgXC86Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6OjouCiAuOjo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6OlwvOjo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Oi1kTHAtOjo6LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmFtZW4gKEdyaW1tYm9ybiwgMjcuIE9rdCAxOTk0LCAwMDo1ODo0OSk6CkphIGFiZXIgaGFsbG8hCkRhcyBpc3QgamEgd29obCBlaW5lIGdhbnogdW52ZXJmcm9ocmVuZSBGcmVjaGhlaXQgdW5kIERpc2tyaW1pbmllcnVuZyEgRGEKYmVrb21tZW4gZGllc2UgT2VzaXMgU3RhZWR0ZW5hbWVuIHVuZCBpY2ggYWxzIFNjaHdlZGU/IEphIGlzdCBkZW5uIGRhcyB6dQpmYXNzZW4sIGRhIG1hY2h0IG1pciBkYXMgbXVkZGVuIGphIGtlaW5lbiBTcGFzcyBtZWhyLCBhbHNvIGVocmxpY2guIE9obmUKU3RhZWR0ZW5hbWVuIGlzdCBtYW4gZG9jaCBudXIgZWluIGhhbGJlciBNZW5zY2guLi5hZWgsIHdpbGwgc2FnZW4sIENoYXJha3Rlci4KQWxzbyBkYSBtdXNzIGljaCBkb2NoIG1hbCBrcmFlZnRpZyBhdWYgZGVubiBQdXR6IGhhdWVuLCBkaWVzZSBmYXVsZW4KTWFnaWVyLSoqKioqIHNpbmQgZGFzIEdlbGQgbmljaHQgd2VydCwgZGFzcyBzaWUgaGllciB2ZXJkaWVuZW4uIEphLCBtaXIgaXN0CmJld3Vzc3QsIGRhc3Mgc2llIGtlaW5zIHZlcmRpZW5lbiwgZWJlbiBkcnVtLiBEYSBrb2VubnRlIGRhcyBtdWRsZWJlbiBzbwpzY2hvZW4gc2VpbiwgdW5kIGljaCBrcmllZ2Uga2VpbmVuIFN0YWVkdGVuYW1lbiBpbSB3ZXIuIFNvd2FzIGthbm4gZWluZW0gZGVuCmdhbnplbiBUYWcgdmVybWllc2VuLCBpc3QgZG9jaCB3YWhyLgpJY2ggYmluIGRlciByaWNodGlnZW4gTWVpbnVuZzogTGllYmVyIGVpbiBlaW5sb2dnZW4gbWl0IFN0YWVkdGVuYW1lbiB1bmQgb2huZQptdWQgYWxzIGVpbiBtdWQgb2huZSBTdGFlZHRlbmFtZW4hCgpJc3QgZG9jaCB3YWhyLi4uCiAgICAgICAgICAgICAgIEdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKUC5TLiBNYWwgc2VoZW4sIHdpZXdlaXQgQ2FyYWRocmFzIG1pdCBtZWluZW0gY29tcGlsZXIgaXN0Li4uIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5hbWVuIChDYXJhZGhyYXMsIDI3LiBPa3QgMTk5NCwgMDc6MjU6NTEpOgooQmV6dWc6IEFydGlrZWwgdm9uIEdyaW1tYm9ybiwgRG9uLCAyNy4gT2t0IDE5OTQsIDAwOjU4OjQ5KQpKYWphLCBkZWluIG10cCBmdW5rdGlvbmllcnQgamEgc2Nob24gOi0pICpicnVtbWVsKiB3ZW5uIGF1Y2ggbmljaHQgZ2FuegphYmVyIGRhcyBsaWVndCBhbiBkZWluZW4gJV4mJCMtU3lzb3BzLi4uIHN0ZWxsdCBldWNoIG1hbCwgR3JpbW1ib3JuIHdpbGwKamV0enQgcHJvZ3JhbW1pZXJlbi4gKnNjaHJlY2sqIGRhIHNhZyBpY2ggamEgbnVyIG5vY2ggZWluczoKCk1hZ2llciBzcGVycnQgZGllIFNwaWVsZXIgZWluLCBkZXIgR3JpbW1ib3JuIHdpbGwgZWluIEdvdHQgamV0enQgc2Vpbi4KCiAgICAgICAgZnJvZWhsaWNoIGRhdm9uaHVlcGZlbmQKICAgICAgICAgICAgKmdhZWhuKiAgICAgIENhcmFkaHJhcyBkZXIgZXdpZ2UgUHJvcGhldCAod2llIGxhbmcgZGVubiBub2NoPykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWVic3RhaGwgKEZsaW50bmFpbCwgMjcuIE9rdCAxOTk0LCAxMjoyNjozNik6CihCZXp1ZzogQXJ0aWtlbCB2b24gR3JpbW1ib3JuLCBNb24sIDI0LiBPa3QgMTk5NCwgMjM6NDA6MjYpCnRqYS4uLmljaCBrYW5uIGRpciBudXIgaW4gYWxsZW4gUHVua3RlbiB6dXN0aW1tZW4uLi5HcmltbWkuLi4KQWxzbyBOZXdiaWVzIHVuZCBNTFAgZGllIGlociBkaWVzZSBaZWlsZW4gbGVzdC4uLmVyc3QgZnJhZ2VuLCBkYW5uIGV2dC4KenVncmVpZmVuLi4uISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKREFTIFBSQU5HRVJFIElDSCBBTiAoSC5TLikgKEhhcmRpbCwgMjcuIE9rdCAxOTk0LCAxMzo1ODo0NCk6CgpBdHJlaWRlcyB0ZWlsdCBEaXIgbWl0OiBIYWV0dGVzdCBEdSB2aWVsbGVpY2h0IG5vY2ggZWluIHBhYXIgUXVlc3Rsb2VzdW5nZW4KQXRyZWlkZXMgdGVpbHQgRGlyIG1pdDogYXVmIGRlciBQb3N0ICwgZGllIER1IG1pciB6dXNlbmRlbiBLb2VubnRlc3QgPz8/PwpBdHJlaWRlcyB0ZWlsdCBEaXIgbWl0OiBXYWVyZSB3aXJrbGljaCBuZXR0IHZvbiBEaXIgISEhIDotKQoKRGVyIG5hZWNoc3RlLCBiaXR0ZSA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEQVMgUFJBTkdFUkUgSUNIIEFOIChILlMuKSAoVHp1aW9wLCAyNy4gT2t0IDE5OTQsIDE0OjE5OjI3KToKKEJlenVnOiBBcnRpa2VsIHZvbiBIYXJkaWwsIERvbiwgMjcuIE9rdCAxOTk0LCAxMzo1ODo0NCkKSGF0IGVyIERpY2ggYXVjaCBhbmdlYmFnZ2VydCA/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUkUgUHJhbmdlciAoQ2hpY29sYSwgMjcuIE9rdCAxOTk0LCAxNTozNDoxOSk6CldpbGxrb21tZW4gaW0gQ2x1YiAoIGFiIDMgTGV1dGUgZGFyZiBtYW4gZG9jaCBlaW5lbiBWZXJlaW4gZ3J1ZW5kZW4sIG9kZXIgPz8KQWJlciB2b24gbWlyIGhhdCBBdHJlaWRlcyBuaWNodHMgYmVrb21tZW4gISBJY2ggaG9mZmUgdm9uIEV1Y2ggYXVjaCBuaWNodHMuCgpEaWUgb2huZSBLb21wbGV0dGxvZXN1bmdlbiBoZXJ1bXJlbm5lbmRlICAgICBDaGljb2xhOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQUkFOR0VSIChDYW1waW5vLCAyNy4gT2t0IDE5OTQsIDE4OjMzOjM4KToKRmluZGV0IGlociBlcyBiZXNvbmRlcnMgdG9sbCwgamVtYW5kZW4gYXVmIGRpZXNlIEFydCB1bmQgV2Vpc2UgYmxvc3MtCnp1c3RlbGxlbi4KTWFuIGtvZW5udGUgaWhtIHBlcnNvZW5saWNoIHNhZ2VuLCBkYXNzIGVyIHNpY2ggc2Nob24gc2VsYnN0IGVpbiB3ZW5pZwppbiBkaWUgUXVlc3RzIHJlaW5kZW5rZW4gbXVzcywgdW5kIHdlbm5zIHdpcmtsaWNoIG5pY2h0IG1laHIgd2VpdGVyCmdlaHQsIGtvZW5udGUgbWFuIGlobSB2aWVsbGVpY2h0IGVpbmVuIFRpcCBnZWJlbi4KVWVicmlnZW5zIGljaCBnbGF1YmUgZWluZW4gVmVyZWluIGthbm4gbWFuIGFiIDcgTGV1dGVuIGdydWVuZGVuLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQUkFOR0VSIChRdWVuZ2lzdHUsIDI3LiBPa3QgMTk5NCwgMTg6NTQ6MzUpOgooQmV6dWc6IEFydGlrZWwgdm9uIENhbXBpbm8sIERvbiwgMjcuIE9rdCAxOTk0LCAxODozMzozOCkKTWl0IGRlbiA3IExldXRlbiBmdWVyIGVpbmVuIFZlcmVpbiBoYXQgQ2FtcGlubywgZ2xhdWIgaWNoIHJlY2h0LiBBYmVyIG1pdCAzCkxldXRlbiBrYW5uIG1hbiBhdWYgamVkZW4gRmFsbCBzY2hvbiBtYWwgZWluZSBQYXJ0ZWkgZ3J1ZW5kZW4gOy0pCk1pdCBzY2htYXJybmlnZW4gR3J1ZXNzZW4KUXVlbmdpc3R1IFNlbm9saSBVbmFnbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQUkFOR0VSIChIYXJkaWwsIDI3LiBPa3QgMTk5NCwgMTk6MDM6MTMpOgooQmV6dWc6IEFydGlrZWwgdm9uIENhbXBpbm8sIERvbiwgMjcuIE9rdCAxOTk0LCAxODozMzozOCkKCk5laW4sIENhbXBpbm8sIHdlciBzbyBkcmVpc3QgaXN0LCB1bmQgZGlyZWt0IHZvbiBtaXIgZGVuIFdlZyBpbnMKU2VoZXJwYXJhZGllcyBoYWJlbiB3aWxsLCBkZXIgbGFldWZ0IGF1Zi4gTmF0dWVybGljaCBnZWJlIGljaCBhdWNoIGhpZXIgdW5kIGRhCm1hbCBlaW5lbiBUaXAsIHdlbm4gamVtYW5kIHN0ZWNrZW5nZWJsaWViZW4gaXN0LCBhYmVyIGljaCBtYWNoZSBrZWluZQptYWlsLW9yZGVyIGZ1ZXIgUXVlc3Rsb2VzdW5nZW4uCk5vY2ggc2NobGltbWVyIGlzdCwgZGFzIHdhciB3b2hsIGVpbiBSdW5kYnJpZWYgYW4gYWxsZSBTZWhlci4gSW1tZXJoaW4sIGljaApoYWV0dGUgaWhtIHZlcnJhdGVuIGtvZW5uZW4sIGRhc3MgZGFhcyBPYmpla3Qgc2VpbmVyIEJlZ2llcmRlIGluIEtldG9zCkFwb3RoZWtlIGthZXVmbGljaCB6dSBlcndlcmJlbiBpc3QsIGFiZXIuLi4gOikKVW5kIHNjaGxpZXNzbGljaCBkaWUgRm9ybS4gV2VubiBlaW5lciB6dSBtaXIga29tbXQgdW5kIHNhZ3Q6IER1LCBpY2ggaGFiIERhCmVpbiBQcm9ibGVtLi4uLCBsYXNvIGdhbnogYmVzY2hlaWRlbiB1bmQgc28gd2VpdGVyLCBrZWluIFByb2JsZW0uIEFiZXIgZWluZmFjaAp3aWUgYmVpIG5lbSBCYW5rdWViZXJmYWxsIGhlcmdlbGF1ZmVuIGtvbW1lbiB1bmQgc2FnZW46IFF1ZXN0bG9lc3VuZ2VuIGhlciwKc29uc3Qga25hbGx0IGVzIC0KbmljaHQgbWl0IG1pci4gVW5kIGljaCBob2ZmZSwgZGFzcyBhbmRlcmUgU2VoZXIgc2ljaCBhdWNoIG5jaWh0IHNvIGF1c251dHplbgpsYXNzZW4uCllUCgoJSGFyZGlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouLi4gUFJBTkdFUiAoSGFyZGlsLCAyNy4gT2t0IDE5OTQsIDE5OjA0OjQyKToKCkFjaGphLCBDYW1waW5vLCB3ZW5uIER1IGRhcyBaaXRhdCBub2NoIG5jaWh0IG1hbCBlcmthbm50IGhhYmVuIHNvbGx0ZXN0Li4uCnNjaGFkZWVlZSA6KQoKRm9yIGV2ZXIgeW91bmcsCgoJSGFyZGlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpaaXRhdCA/Pz8/PyAoQ2FtcGlubywgMjcuIE9rdCAxOTk0LCAxOToxMTowMSk6CkFlZ3lwdGVuID8/PyBIdW5kZXJ0IE1hcmsgPz8/PyBWb24gd2VsY2hlbSBaaXRhdCBzcHJpY2hzdCBEdSA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWml0YXQgPz8/Pz8gKEhhcmRpbCwgMjcuIE9rdCAxOTk0LCAxOToxMTo0OSk6CihCZXp1ZzogQXJ0aWtlbCB2b24gQ2FtcGlubywgRG9uLCAyNy4gT2t0IDE5OTQsIDE5OjExOjAxKQoKIkRBUyBQUkFOR0VSRSBJQ0ggQU4iIChILlMuKQoKTW9lbnNjaCBDYW1waW5vLi4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUkUgUHJhbmdlciAoQXNtb2RpcywgMjcuIE9rdCAxOTk0LCAyMTowNTozNSk6CihCZXp1ZzogQXJ0aWtlbCB2b24gQ2hpY29sYSwgRG9uLCAyNy4gT2t0IDE5OTQsIDE1OjM0OjE5KQpJY2ggdmVyc2NoaWNrZSBzb3dpZXNvIG51ciBub2NoIFF1ZXN0dGlwcywga2VpbmUgS29tcGxldHRsb2VzdW5nZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLb21wbGV0dGxvZXN1bmcgKER1cmlhbiwgMjguIE9rdCAxOTk0LCAxMTozNTo1NSk6CkhpIQoKSWNoIGJpdHRlIGhpZXJtaXQgb2ZmaXppZWxsIGVpbmUgS29tcGxldHRsb2VzdW5nIGZ1ZXIgZGllIFB5cmFtaWRlbnF1ZXN0CmFuLiBTaWUgaXN0IHVudGVyIEdhcmFudGllIGhpZWItIHVuZCBzdGljaGZlc3QgdW5kIHdpcmQgRXVjaCBlaW5mYWNoIGplZGUsCmFiZXIgYXVjaCB3aXJrbGljaCBqZWRlIEZhbGxlIHplaWdlbi4gVmVyc3Byb2NoZW4hISEKCk5pY2h0IG9obmUgSXJvbmllIC4uLgoKLSBEdXJpYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcnRlbiAoR3V5YnJ1c2gsIDI4LiBPa3QgMTk5NCwgMTQ6MDA6NDEpOgpXYXJ0ZW4gYXVmIEdvZG90Pwp3YXJ0ZW4gYXVmIGRhcyBNaXR0YWdlc3Nlbj8Kd2FydGVuIGF1ZiBNRz8KCm5laW4sIHdhcnRlbiBhdWYgZGVuIFZhbXBpciEKbm9ybWFsZXJ3ZWlzZSBzb2xsdGUgZGVyIGltIFNhcmcgbGllZ2VuLiBXYXIgYWJlciBncmFkIGVpbmVyIHZvciBtaXIgZGEuCkpldHp0IHN0ZWggaWNoIGhpZXIgaW0gRHVua2VsbiAoRmFja2Vsc2Nob251bmcpIHVuZCB3YXJ0IGF1ZiBzZWluZSBSdWVja2Voci4KSWNoIGhvZmZlIG5vY2ggdm9yIFNvbm5lbnVudGVyZ2FuZy4KCkd1eWJydXNoLCBsYW5nc2FtIHdpcmRzIGthbHQgaW4gZGVyIEdydWZ0IChoYWxibmFja3Qgd2llIGltbWVyKSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdhcnRlbiAoQXNtb2RpcywgMjguIE9rdCAxOTk0LCAxNToxNDo0Nik6CihCZXp1ZzogQXJ0aWtlbCB2b24gR3V5YnJ1c2gsIEZyZSwgMjguIE9rdCAxOTk0LCAxNDowMDo0MSkKRGFubiBzY2hyZWliIGRvY2ggbmUgQmVzY2h3ZXJkZSwgZGFzcyB6dXZpZWxlIFNlaGVyIGRlbiBOZWJlbmVpbmdhbmcKYmVudXR6ZW4sIHVuZCBkZXNoYWxiIGRlciBWYW1waXIgaW1tZXIgc2Nob24gdG90IGlzdCA6KQoKICAgICAgICAgICAgQ2lhbywgQXNtb2RpcyhoZXV0ZSBldHdhcyBzYXJrYXN0aXNjaCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1haGx6ZWl0IDopIChDYXJhZGhyYXMsIDI5LiBPa3QgMTk5NCwgMDc6MjE6MzMpOgpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gSFVOR0FBQUFBQUFBQUFBQQpbQWxsZ2VtZWluOlNrYWxsYWdyaW1dIE1hbm4saGV1dGUgaGFiZSBpY2ggd2lya2xpY2ggcGVjaCBtaXQgZGVuIE9ya3MgKmhldWwqCltBbGxnZW1laW46WnVlcmlsZXVdIHdhcnVtIGRpZSBPcmtzIHNpbmQgZG9jaCBsZWljaHQgKGhpaGloaSkKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIGphLCBrYXVtIG1hbCBhbmdlcHVzdGV0IHNpbmQgc2llIHNjaG9uIHRvdApbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gaG1tbSwgb3JrcyBpbiBzYWhuZXNvc3NlCgoKCk9ya3MgaW4gU2FobmVzb3NzZT8gTWFsIHVlYmVybGVnZW4uLi4uICpncnVlYmVsKgpXYXMgcGFzc3QgZGVubiB6dSBPcmtzPyBCcm9ra29saT8gTWl0IFNlbW1lbGJyb2VzZWwgdWViZXJnb3NzZW4uLi4gYWxzbyBpbgpCdXR0ZXIuLi4gaG1tbW1tLCB1bmQgZGVuIG9ya3MgZWluZSBTYWhuZWhhdWJlIHN0YXR0IGVpbmVyIEtyb25lLCBtamFtLi4uCnVuZCBzdGF0dCBlaW4gcGFhciBkaWFtYW50ZW4gaW4gZGVyIGtyb25lIGtvZW5udGVuIHdpciBub2NoIGJ1bnRlIHNtYXJ0aWVzCnJlaW5zZXR6ZW4uLi4gbWl0dGVuIGluIGRpZSBzYWhuZSwgaG0sIGphIDopIHVuZCBlaW4gc2Nod2VydCBrb2VubnRlIGRlcgpvcmsgYXVjaCBub2NoIGJla29tbWVuLi4uIGljaCBzdGVsbCBpaG4gbWlyIHNvIGFscyBzdGF0dWUgdm9yLi4uIGhtLApzY2h3ZXJ0IGF1cyB6dWNrZXJndXNzLCBvcmNyaXN0IDopIGRpZW50IGdsZWljaHplaXRpZyBhbHMgbmFjaHRpc2NoLCBtaXQKbWFyemlwYW5mdWVsbHVuZy4gZGVyIGdyaWZmIGlzdCBuYXR1ZXJsaWNoIGF1cyB6YXJ0Yml0dGVyICpncmlucyoKCmFiZXIgZWluZSB2b3JzcGVpc2UgZmVobHQgbm9jaCwgd2llIGltbWVyPyBLYWtlcmxha2VuYmVpbmU/IG5laW4sIHdpZSB1bi0KYXBwZXRpdGxpY2guLi4gTXVzcyBhYmVyIGV0d2FzIGxlaWNodGVzIHNlaW4gbWl0IHZpZWwgcHJvdGVpbmVuLgoqZ3J1ZWJlbCogd2FydW0gZ2lidHMga2VpbmUgaGV1c2NocmVja2VuIGltIG11ZD8ga29lbm50ZSBkb2NoIGVpbiB3dW5kZXItCmJhcmVyIGhldXNjaHJlY2tlbnNjaHdhcm0gZWluZmFsbGVuIGlyZ2VuZHdvLi4uIGhldXNjaHJlY2tlbj8gaGV1c2NocmVja2VuLApnZWdyaWxsdCwgbWl0IGhvbmlnLCBobSwgZGFzIHdhZXJzIGphLCBqYSwgZ3V0ZSBWb3JzcGVpc2UsIGF1Y2ggcmljaHRpZwprbmFja2lnLgpHaWJ0IGRpZSByaWNodGlnZSBNYW5uZXNrcmFmdCA6KQooZnVlciBkaWUsIGRpZSBlcyBicmF1Y2hlbikKCgl0c2Nob2UJICBDYXJhZGhyYXMgZGVyIGV3aWdlIHByb3BoZXQKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptYWwgd2llZGVyIHNjaG1hcnJuIChUb2V0ZXIsIDI5LiBPa3QgMTk5NCwgMTE6MDI6MzEpOgpIaQpXaWUgd2FlcmUgZXMsIHdlbm4gbWFuIGF1Y2ggbWFsIHN0YXR0IGRlciBnYW56ZW4gdW53aWNodGlnZW4KTWl0c3BpZWxlciwgbWFsIGRpZSBNb25zdGVyIGVyd2FydGV0LCB1bSBkaWUgZXMgamEgZWlnZW50bGljaAp3aXJrbGljaCBnZWh0LiBBbHNvIHouIEIuICdlcndhcnRlIEh5ZHJhLFNjaGxhbW1kcmFjaGUsdXN3LicKb2RlciBlaW5mYWNoICdlcndhcnRlIGFsbGUnLiBOb2NoIGJlc3NlciB3YWVyZSBlaW4gSW5mb3JtIGZ1ZXIKTW9uc3RlcjogJ0VpbiBPcmthbmZ1ZWhyZXIgaXN0IGdlcmFkZSBpbnMgU3BpZWwgZ2Vrb21tZW4uJyBldGMuCkFsc28gaWhyIGZhdWxlbiBNYWdpZXIsIG1hY2h0IG1hbCAhIChEZXIgVG9uIGRlciBTcGllbGVyIGlzdCBpbgpsZXR6dGVyIFplaXQgc2Nob24gd2llZGVyIHZpZWwgenUgZGVtdWV0aWcgZ2V3b3JkZW4gOykKCm1pdCBmb3JkZXJuZGVuIEdydWVzc2VuIFRvZXRlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBtYWwgd2llZGVyIHNjaG1hcnJuIChDYXJhZGhyYXMsIDI5LiBPa3QgMTk5NCwgMTQ6MTY6NTYpOgooQmV6dWc6IEFydGlrZWwgdm9uIFRvZXRlciwgU2FtLCAyOS4gT2t0IDE5OTQsIDExOjAyOjMxKQpBIHNvIGVpbiBTY2htYXJybiwgVG9ldGVyIDotKQoKICAgICAgIENhcmFkaHJhcyBkZXIgZXdpZ2UgUHJvcGhldCAtIG1vbWVudGFuIHNpbm5sb3MgcnVtZWllcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLdXJ6ZSBBbnR3b3J0IGFuIEhhcmRpbCAhISEgKEF0cmVpZGVzLCAyOS4gT2t0IDE5OTQsIDE3OjQyOjIxKToKICAgICAgICAgICAgICAgICAgICAgIFNlaSBnZWdydWVzc3QgSGFyZGlsICEKCkhvZmZlIER1IGJpc3QgbmljaHQgZWluZW0gSGVyemluZmFya3QgbmFoZSBnZXdlc2VuICxhbHMgaWNoIGRpZSBmcmVjaGhlaXQKYmVzYXNzIERpY2ggbmFjaCBlaW5lciBRdWVzdGxvZXN1bmcgenUgZnJhZ2VuICEhISEgT2RlciB3YXIgZXMgc28gLi4uIEljaCBoYWIKRGljaCBzY2hsZWltaWcgLG5hdHVlcmxpY2ggbWl0IHZvcmdlaGFsdGVuZXIgUGlzdG9sZSAoYWxsZXMgZ2xlaWNoemVpdGlnKSB1bQplaW5lIEtvbXBsZXR0bG9lc3VuZyBhCiBEdSBzY2hlaW5zdCBqYSBlaW4gZWNodGVzIFByb2JsZW0gZGFtaXQgZ2VoYWJ0IHp1IGhhYmVuIHVuZCBpY2ggZmluZGUgRGVpbmUKQXJ0IGRhbWl0IHVtenVnZWhlbiB3aXJrbGljaCBzZWhyIGludGVsbGlnZW50IHVuZCAgYmVzb25kZXJzIGZlaW5mdWVobGlnICEgRXMKZ2lidCB1ZWJyaWdlbnMgYXVjaCBkaWUgRnVua3Rpb24gInRlaWxlIC4uLkplbWFuZGVtIC4uLiBtaXQgIiBpbSBNRyAtIG51cgpmYWxscyBEaXIgZGllcyBlCkhhZXR0ZXN0IHJ1aGlnIG1pY2ggcGVyc29lbmxpY2ggYW5zcHJlY2hlbiBrb2VubmVuIC0gSGFldHRlIERpY2ggYmVzdGltbXQKbmljaHQgZ2ViaXNzZW4gdW5kIGRpZSBGYWVoaWdrZWl0IERlaW5lIHZvcnd1ZXJmZSB6dSB2ZXJzdGVoZW4gaGFldHRlIGljaAp3YWhyc2NoZWlubGljaCBzb2dhciBhdWNoIG5vY2ggZ2VoYWJ0ICEgRXJzdGF1bmxpY2ggd2FzICE/CkFiZXIgYml0dGUgIkljaCBwcmFuZ2VyZSBhbiAhIiAuLi4gRWluZW4gUHJhbmdlciB6dSBiZW51dHplbiB1bSBhdWYgbWVpbmVuCkZlaGxlciBtaXQgZGVuIEtvbXBsZXR0bG9lc3VuZ2VuIGF1Zm1lcmtzYW0genUgbWFjaGVuIHNjaGVpbnQgd29obCBpbiBkZWluZXIKZ2FueiBzcGV6aWVsbGVuIE5hdHVyIHp1IGxpZWdlbiAuLi4gd2llIGF1Y2ggaW1tZXIgZGllIHdvaGwgZ2VhcnRldCBzZWluIG1hZwouLi4gRGFzIGthbm4gc2ljaCBuYWNoIGQKR290dCBzZWkgZGFuayBuZWhtZSBpY2ggZGFzIE11ZC1MaWZlIG9mZmVuc2ljaHRsaWNoIG5pY2h0IGdhbnogc28gZXJuc3Qgd2llCkR1IC4uLiBJY2ggZ2xhdWJlIGRhbm4gd3VlcmRlIGljaCBtaXIgZXJuc3RoYWZ0ZSBzb3JnZW4gbWFjaGVuICEKCgpEYXMgbWl0IGRlbSBSdW5kYnJpZWYgLCB3aWUgRHUgZXMgc28gc2Nob2VuIG5hbm50ZXN0ICwgd2FyIGVpbiBncm9zc2VyIEZlaGxlcgosenVnZWdlYmVuZXJtYXNzZW4gISBOdXIgYmVkZW5rZSBiaXR0ZSBzZWhyIGVpbmVzIC4uLiBLZWluIHJlbGF0aXYgbmV1ZXIKTWl0c3BpZWxlciBpc3Qgc29vbyBlcmZhaHJlbiB3aWUgRHUgdW5kIHdlaXNzIHdhcyBpbSBNdWQgUmVjaHQgb2RlciBVbnJlY2h0CmlzdCAhISEgRGVzaGFsYiBzb2xsdGUKCgogICAgICAgICAgICAgICAgICAgIGdleiAuIEF0cmVpZGVzICwgZGVyIHdvaGwgYXJtZSBVbndpc3NlbmRlICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5hbWVuIChIYXRlLCAyOS4gT2t0IDE5OTQsIDE4OjM1OjMzKToKKEJlenVnOiBBcnRpa2VsIHZvbiBHcmltbWJvcm4sIERvbiwgMjcuIE9rdCAxOTk0LCAwMDo1ODo0OSkKSWNoIGRlbmtlLCBzZWxic3QgaW4gU2NobWFycm4sIHNvbGx0ZSBtYW4gc2ljaCBuaWNodCBpbiBpcmdlbmR3ZWxjaGUKa29uc3BpcmF0aXZlbiBCZWxlaWRpZ3VuZ2VuIGFiZ2xlaXRlbiBsYXNzZW4uCkhhdGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZSoxMDA6IFBSQU5HRVIgKERhbmNlciwgMzAuIE9rdCAxOTk0LCAxNzoyOToyMyk6ClNlbHRzYW0sCnp3ZWkgZGVyIExldXRlLCBkaWUgaGllciBBdHJlaWRlcyBhbnByYW5nZXJuLCBoYWJlbiBkYW1hbHMgYWxzIGljaCBub2NoClNwaWVsZXIgd2FyLCBzZWxic3Qgdm9uIG1pciBLb21wbGV0dGxvZXN1bmdlbiBlcmJldGVuLgpFcmhhZWx0IG1hbiBBYnNvbHV0aW9uLCBuYWNoZGVtIG1hbiBTZWhlciBnZXdvcmRlbiBpc3QsIG9kZXIgYmlsZGV0IG1hbiBzaWNoCmRhbm4gd2lya2xpY2ggZWluLCBhbGxlcyBhbGxlaW5lIGdlbWFjaHQgenUgaGFiZW4/CgpEYW5jZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiBSZTogTmFtZW4sIEhhdGUuLi4gKEdyaW1tYm9ybiwgMzEuIE9rdCAxOTk0LCAwMDo0NzoyOSk6CkJlenVnOiBBcnRpa2VsIHZvbiBIYXRlLCBTYSwgMjkgT2t0IDE5OTQgZXRjLikgSmFqYWphLCB3ZW5uIG1hbiBtYWwgZ2xhdWJ0LAphbGxlcyByaWNodGlnIGdlbWFjaHQgenUgaGFiZW4uLi4KSWNoIGRhY2h0ZSBqYSwgZGVyIEFydGlrZWwgZGVuIGljaCBtaXQgTmFtZW4gdWViZXJzY2hyaWViIChsZWlkZXIgbGVpZGVyIG5vY2gKQXJ0aWtlbCAxLCBhbHNvIGJhbGQgZHJhdXNzZW4uLi4pIHNlaSBlaW5kZXV0aWcgdW5kIHNvIHVlYmVyem9nZW4gZ2V3ZXNlbiwKZGFzcyBlcnN0IGtlaW5lIE1pc3N2ZXJzdGFlbmRuaXNzZSBhdWZrb21tZW4ga29lbm50ZW4uIEFiZXIgZGVyIFNwaWVsZXIgZGVua3QsCmRlciBFcnptYWdpZXIgbGVua3QuLi4KQWxzbywgZXMgbGFnIG1pciB2b2VsbGlnIGZlcm4sIG1pY2ggaW4ga29uc3BpcmF0aXZlIEJlbGVpZGlndW5nZW4gYWJnbGVpdGVuCnp1IGxhc3Nlbiwgc2Nob24sIHdlaWwgaWNoIG5pY2h0IHdlaXNzLCB3YXMgZGFzIGlzdC4gU2ljaGVyLCBpY2gga2VubmUKQmVsZWlkaWd1bmdlbiB1bmQgaGFiZSBlaW5lIHZhZ2UgVm9yc3RlbGx1bmcgdm9tIEJlZ3JpZmYga29uc3BpcmF0aXYsIGFiZXIKenVzYW1tZW4/Ck1laW5lIElkZWUgd2FyIHp1IHplaWdlbiwgZGFzcyBpY2ggZGllIERpc2t1c3Npb24gdW0gU3RhZWR0ZW5hbWVuCnVlYmVyZmx1ZXNzaWcgZmFuZCwgZXMgbWlyIHNlbGJlciBlZ2FsIGlzdCwgb2IgU2Nod2VkZW4gb2RlciBHb2V0ZWJvcmcgZGEKc3RlaHQgdW5kIGRpZSBXYXJ0ZXplaXQgenUgdWViZXJicnVlY2tlbi4gSW4gdW1nZWtlaHJ0ZXIgUHJpb3JpdGFldC4KCk1pciBpc3QgamEgbmljaHQga2xhciwgd2VuIGljaCBrb25zcGlyYXRpdiBiZWxlaWRpZ3QgaGFiZSwgYWJlciBpY2gKZW50c2NodWxkaWdlIG1pY2ggaGllcm1pdCBiZWkgZGVuIE9lc2lzIChuYXR1ZXJsaWNoIG11c3MgZXMgT2VzdGVycmVpY2hlcklubmVuCmhlaXNzZW4hKSwgZGVuIE1hZ2llcm4gdW5kIENhcmFkaHJhcyBmdWVyIG1vZWdsaWNoZSBrb25zcGlyYXRpdmUKQmVsZWlkaWd1bmdlbi4gU2llIGxhZ2VuIG5pY2h0IGluIG1laW5lciBBYnNpY2h0Li4uCgpUaWVmIGJldHJ1ZWJ0LAogICAgICAgICAgICAgICBHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLdXJ6ZSBBbnR3b3J0IGFuIEhhcmRpbCAhISEgKEhhcmRpbCwgMzEuIE9rdCAxOTk0LCAwODowNTozNSk6CihCZXp1ZzogQXJ0aWtlbCB2b24gQXRyZWlkZXMsIFNhbSwgMjkuIE9rdCAxOTk0LCAxNzo0MjoyMSkKCipncmlucyoKVGphLCBkaWVzZSBhcm1lbiwgdW5lcmZhaHJlbmVuIE1VRC1OZXVsaW5nZSBhdWYgTGV2ZWwgMTgsIGRpZSBtZXJrZW4sIGRhc3MKbWFuIGRvY2ggbWVociBhbHMgbnVyIE1ldHplbG4genVtIFNlaGVyd2VyZGVuIGJyYXVjaHQuLi4gOikKCkhhcmRpbCAoZGVyIG5pY2h0cyB3ZW5pZ2VyIGVybnN0IG5pbW10IGFscyBkYXMgTVVEKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdhcnRlbiAoQm9pbmcsIDMxLiBPa3QgMTk5NCwgMTE6NTk6MDUpOgpBc21vZGlzIHNjaHJlaWJ0Ogo+IERhbm4gc2NocmVpYiBkb2NoIG5lIEJlc2Nod2VyZGUsIGRhc3MgenV2aWVsZSBTZWhlciBkZW4gTmViZW5laW5nYW5nCj4gYmVudXR6ZW4sIHVuZCBkZXNoYWxiIGRlciBWYW1waXIgaW1tZXIgc2Nob24gdG90IGlzdCA6KQoKVHV0IG1pciBsZWlkIERpY2ggenUgZW50dGFldXNjaGVuLCBhYmVyIGRpZXNlcyBQcm9ibGVtIGhhdHRlIGljaCBiZWRhY2h0CnVuZCBnZWxvZXN0IC4uLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmFtZW4gKEJvaW5nLCAzMS4gT2t0IDE5OTQsIDEyOjAzOjA2KToKSGF0ZSwgb2ZmZW5zaWNodGxpY2gga2VubnN0IER1IEdyaW1tYm9ybnMgQXJ0IHZvbiBIdW1vciBub2NoIG5pY2h0IHNvCmd1dCwgc29uc3QgaGFldHRlc3QgRHUgZGllIElyb25pZSBkaWVzZXMgQXJ0aWtlbHMgYXVjaCBvaG5lIDspIG9kZXIgOikKZ3V0IGVya2FubnQuIEFsc28gaWNoIGZhbmQgZGVuIEFydGlrZWwgc2VociBhbXVlc2FudC4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVmVyZ2ViZW5lIExpZWJlc211ZWggISAoQXRyZWlkZXMsIDMxLiBPa3QgMTk5NCwgMTI6MjE6MjYpOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSGFsbG8gSGFyZGlsICEKICAgICAgICBMYXNzIGVzIFVucyBkYWJlaSBiZWxhc3NlbiAsIGRlbm4gd2VubiBEdSB2ZXJzdWNoc3QgYW4gbWlyCnZvcmJlaXp1cmVkZW4gaXN0IHVuc2VyZSBEaXNrdXNzaW9uIHdpcmtsaWNoIHZlcmdlYmVuZSBMaWViZXNtdWVoICEhISEgSG9mZmUKRHUgYmxlaWJzdCBhdWNoIGluIHp1a3VuZnQgc28gc2VociBhdWYgZGllIFByaW56aXBpZW4gZGVzIE11ZHMgYmVkYWNodCAtb2RlcgpzaW5kIGVzIERlaW5lIEVpZ2VuZW4gPyAtdwotIHdpZSBEdSBlcyB3b2hsIGF1Y2ggaW4gZGVyIFZlcmdhbmdlbmhlaXQgd2Fyc3QgISEhClNvbGFuZ2UgRGlyIHNvbnN0IG5pY2h0cyB6dW0gQW5wcmFuZ2VybiBibGVpYnQgISBJY2ggd3VlbnNjaGUgRGlyIGFsbGVzIEd1dGUKZnVlciBkaWUgWnVrdW5mdCAhISEKCiAgICAgICAgICAgICAgICAgICAgICAgIGdlei4gZGVyIHdvaGwgdW53aXNzZW5kZSBMZXZlbCAxOC1BdHJlaWRlcyAhIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAgUmU6IE5hbWVuLCBIYXRlLi4uIChIYXRlLCAzMS4gT2t0IDE5OTQsIDEyOjU3OjUwKToKKEJlenVnOiBBcnRpa2VsIHZvbiBHcmltbWJvcm4sIE1vbiwgMzEuIE9rdCAxOTk0LCAwMDo0NzoyOSkKRHUgbWFjaHN0IGVzIGVpbmVtIHdpcmtsaWNoIG5pY2h0IGxlaWNodCA7KQpIYXRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICBSZTogTmFtZW4sIEhhdGUuLi4gKENhcmFkaHJhcywgMzEuIE9rdCAxOTk0LCAxNTowMjowNik6CihCZXp1ZzogQXJ0aWtlbCB2b24gR3JpbW1ib3JuLCBNb24sIDMxLiBPa3QgMTk5NCwgMDA6NDc6MjkpCldlciB3byB3aWU/IERhIGVudHNjaHVsZGlndCBzaWNoIGplbWFuZCBiZWkgbWlyPwpGdWVyIHdhcyBkZW5uLCBUZWVmcm9zY2g/IEljaCBoYWIgbml4IG1pdGdla3JpZWd0LCBvYndvaGwgaWNoIGFsbGVzCmdlbGVzZW4gaGFiZSBpbiBkZW4gTmV3cyA6LSkgQmluIGljaCBqZXR6dCBibGluZD8KTmVpbiwgYml0dGUga2VpbmUgQW50d29ydCA6LSkpKSkpKSkKCkFsc28sIGljaCB2ZXJ6ZWloZSBoaWVybWl0IEdyaW1tZnJvc2NoIGFlaCBUZWVib3JuIGdyb3NzenVlZ2lnLCB3YXMgYXVjaAppbW1lciB3YXIuIEF1c3NlcmRlbSBpc3QgZGFzIGhpZXIgU2NobWFycm4gdW5kIFNjaG1hcnJuIGJsZWlidCBTY2htYXJybiwKd2FzIGVzIGF1Y2ggaW1tZXIgaXN0LiBOYXR1ZXJsaWNoIG1laW5lIEtvY2hyZXplcHRlIGF1c2dlbm9tbWVuIDotKSkpClVlYnJpZ2VucyB3aWxsIGljaCBoZXV0ZSBhYmVuZCBQYXByaWthLVNjaHdlaW5lbGVuZGNoZW4gbWl0IEJlcm5lciBSb2VzdGlzCm1hY2hlbiwKc29sbCBpY2ggZGEgbWFsIGRhcyBSZXplcHQuLi4uICpraWNoZXIqCgogICAgKmZyb2VobGljaCB3aW5rZW5kKiB1bmQgc2ljaCBhbXVlc2llcmVuZAogICAgICAgICAgICAgICAgQ2FyYWRocmFzIGRlciBpbW1lciBub2NoIGV3aWdlIFByb3BoZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWZXJnZWJlbmUgTGllYmVzbXVlaCAhIChDYXR3ZWF6bGUsIDMxLiBPa3QgMTk5NCwgMTY6MjQ6MDMpOgooQmV6dWc6IEFydGlrZWwgdm9uIEF0cmVpZGVzLCBNb24sIDMxLiBPa3QgMTk5NCwgMTI6MjE6MjYpCkhpIQpIbSwgZGFzIGlzdCBkb2NoIERFUiBBcnRpa2VsIGZ1ZXIgRGljaCBHcmltbWJvcm4uCjE1ICghKSBBdXNydWZlemVpY2hlbi4uLiBGcmV1c3RlIERpY2ggOi0pCkxvcyBzY2huYXBwIGlobiBEaXIgOi0pKSkKWW91cnMgdHJ1bHksCiAgICAgICAgICAgIENhdHdlYXpsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEt1cnplIEFudHdvcnQgYW4gSGFyZGlsICEhISAoQXNtb2RpcywgMzEuIE9rdCAxOTk0LCAxODo0MjowNSk6CihCZXp1ZzogQXJ0aWtlbCB2b24gQXRyZWlkZXMsIFNhbSwgMjkuIE9rdCAxOTk0LCAxNzo0MjoyMSkKQWxzbyBBdHJlaWRlcywgZXMgZ2Vob2VydCBzaWNoIHdpcmtsaWNoIG5pY2h0LCBoYXJtbG9zZSBTcGllbGVyIGRhbWl0IHp1CmJlbGFlc3RpZ2VuICEhCldlbm4gZGlyIGplbWFuZCBlaW5lIExvZXN1bmcgZ2lidCwgZ3V0LCBhYmVyIGZhbmcgbmljaHQgYW4sIHVucyB6dQpiZXF1YXRzY2hlbiAhIQoKICAgICAgICAgICAgICAgICAgICAgICAgIENpYW8sIEFzbW9kaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnZhbXBpci13ZWcgKFRob3JpbiwgIDMuIE5vdiAxOTk0LCAwOToyNTowMSk6CkhtbW0sIHdlbm4gaWNoIGpldHp0IHJpY2h0aWcgYXVmZ2VrbGFlcnQgd3VyZGUsIGRhbm4gc29sbCBtYW4gbnVyIGF1ZiBkZW0KUXVlc3QtV2VnIHNlaW5lbiBRdW90ZW52YW1waXIgYmVrb21tZW4uIEluIGRlbSBGYWxsIGxhdWYgaWNoIGRlbW5hZWNoc3QgYXVjaApsaWViZXIgZGVuIFF1ZXN0d2VnIChCZWhpbmRlcnVuZyBoaW4sIEJlaGluZGVydW5nIGhlciksIGRlbm4gZGFzIFdhcnRlbiBpc3QKYWV0emVuZCwgdm9yIGFsbGVtIGhhYiBpY2gKa2VpbmUgQXJ0aWtlbCB6dW0gTGVzZW4gbWVoci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLdXJ6ZSBBbnR3b3J0IGFuIEhhcmRpbCAhISEgKEZsaW50bmFpbCwgIDMuIE5vdiAxOTk0LCAxODoyOToyOCk6CihCZXp1ZzogQXJ0aWtlbCB2b24gSGFyZGlsLCBNb24sIDMxLiBPa3QgMTk5NCwgMDg6MDU6MzUpCkZsaW50bmFpbCBwaXNzdCBzaWNoIG1hbHdpZWRlciB2b3IgTGFjaGVuIGluIGRlbiBLaWx0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNdWR3dW5kZXIgKEdyaW1tYm9ybiwgIDMuIE5vdiAxOTk0LCAyMjo1MToyMik6CgpIbW0sIG1pciBmYWVsbHQgbm9jaCBlaW4gV3VuZGVyIGVpbjogRGFuY2VyISBOaWNodCBudXIgZGFzcyBlciBkaWUgUHlyYW1pZGVuCmdlbWFjaHQgaGF0IHVuZCBkYW5uIGF1Y2ggbm9jaCBWaXplcmVnaW9uc2RpbmdlbnNidW1tZW5zIGlzdCwgbmVpbiwgbWFuCm11bmtlbHQgdm9uIGVpbmVtIFdldHRidWVybyB1bmQgZWluZXIgd2VpdGVyZW4gUXVlc3QuCkh1dCBhYiB2b3Igc292aWVsIExlaXN0dW5nISBBdXMgRGlyIHdhZXJlIGVpbiBndXRlciBTZWhlciBnZXdvcmRlbi4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LCBpbiBCbG9lZGVsbGF1bmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNdWR3dW5kZXIgKER1cmlhbiwgIDQuIE5vdiAxOTk0LCAwOTowNToxNyk6CihCZXp1ZzogQXJ0aWtlbCB2b24gR3JpbW1ib3JuLCBEb24sICAzLiBOb3YgMTk5NCwgMjI6NTE6MjIpCkFlaCAuLi4gbnVuamEgLi4uIGljaCBtb2VjaHRlIGphIHVuZ2VybmUgd2lkZXJzcHJlY2hlbiB1bmQgd2FocnNjaGVpbmxpY2gKd2FyIGVzIHZvbiBEaXIgbWVociBhbHMgU2NoZXJ6IGdlbWVpbnQgLi4uIGFiZXIgYXVjaCBuYWNoIGVpbmVtIGZhc3QgaGFsYmVuCkphaHIgKG5hamEsIG5vY2ggbmNpaHQgZ2Fueiwgb2theSkgc2luZCBkaWUgUHlyYW1pZGVuIGltbWVyIG5vY2ggbmljaHQKdm9uIERhbmNlci4gRXMgd3VlcmRlIG1pY2ggZWNodCBtYWwgaW50ZXJlc3NpZXJlbiwgd2VyIG1pdCBkaWVzZXIgZ3Jvc3NlbgpNVURMVUVHRSAoOi0pKSBhbmdlZmFuZ2VuIGhhdC4KCi0gRHVyaWFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZXR0YmV3ZXJic2NocmVpYmUgTmV1ZXIgV2V0dGJld2VyYiAoRHVyaWFuLCAgNC4gTm92IDE5OTQsIDA5OjIwOjU0KToKSGFsbG8gUmF0ZXIgdW5kIFJhdGVyaW5uZW4hCgpJY2ggbW9lY2h0ZSBhbiBkaWVzZXIgU3RlbGxlIGVpbmVuIG5ldWVuIFdldHRiZXdlcmIgc3RhcnRlbjoKCkRpZSBGcmFnZSBsYXV0ZXQ6IFdlciBzaW5kIGRpZSBkcmVpIGVyZm9sZ3JlaWNoc3RlbiBHbGFkaWF0b3Jlbj8KCldlciB6dWVyc3QgZGllIGRyZWkgZXJmb2xncmVpY2hzdGVuIEdsYWRpYXRvcmVuIGluIGRlciByaWNodGlnZW4KUmVpaGVuZm9sZ2UgbmVubnQsIGdld2lubnQgZWluZSBLYW1wZmtldWxlIGRlcyBIZXJrdWxlcy4KCi0gRHVyaWFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdmFtcGlyLXdlZyAoQm9pbmcsICA0LiBOb3YgMTk5NCwgMTU6NTg6MjApOgpUamEgVGhvcmluLCBkYW5uIHdlcmRlIGljaCBkZW1uYWVjaHN0IGRpZSBLYXRha29tYmVuIGZ1ZXIgU3BpZWxlciwgZGllIGRpZQpRdWVzdCBzY2hvbiBoYWJlbiBkaWNodG1hY2hlbiB1bmQgZWluIFNjaGlsZCBhbiBkaWUgVHVlciBoYWVuZ2VuOgogIEdlc2NobG9zc2VuLCB3ZWlsIFRob3JpbiBsaWViZXIgU3BpZWxlciBiZWhpbmRlcnQsIGFscyBzbyB6dQogIHNwaWVsZW4gd2llIGVzIHNpY2ggZnVlciBlaW5lbiBTZWhlciBnZWhvZXJlbiBzb2xsdGUuCgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2V0dGJld2VyYnNjaHJlaWJlIE5ldWVyIFdldHRiZXdlcmIgKENpZmVyLCAgNC4gTm92IDE5OTQsIDE3OjQwOjEwKToKKEJlenVnOiBBcnRpa2VsIHZvbiBEdXJpYW4sIEZyZSwgIDQuIE5vdiAxOTk0LCAwOToyMDo1NCkKQXNtb2RpcyAvIFN0ZXZlIC8gTGF1cmluIDopKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdmFtcGlyLXdlZyAoVGhvcmluLCAgNC4gTm92IDE5OTQsIDE5OjEzOjUxKToKKEJlenVnOiBBcnRpa2VsIHZvbiBCb2luZywgRnJlLCAgNC4gTm92IDE5OTQsIDE1OjU4OjIwKQpBTlpFSUdFIDogVkFNUElSIEZVRVIgUEVSU09FTkxJQ0hFTiBHRUJSQVVDSCBHRVNVQ0hULgpWT1JSQVVTU0VUWlVORzogQkxVVFNBVUdFUlNDSFdFUlQuCkFVRkdBQkVOR0VCSUVUOiBBRUgsIEVJR0VOVExJQ0ggTlVSIERBU1RFSEVOLgpCRVpBSExVTkc6IEJMVVQKRElFTlNUQkVHSU5OOiBTTyBGUlVFSCBXSUUgTU9FR0xJQ0gKU1RFTExFTjogTUVIUkVSRSwgREEgSU1NRVIgV0lFREVSIEJFREFSRgpCSVRURSBNRUxERU4gVU5URVIgQ0hJRkZSRSBULUhPUi1JTgpSRU5ULUEtVkFNUC1HTUJIJkNPIEtHCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIRVVMISAoRGFuY2VyLCAgNC4gTm92IDE5OTQsIDIwOjA4OjQ4KToKQWxsbGxzb29vb29vIQoKRXMgaXN0IGRvY2ggZWNodCB6dW0gVmVyendlaWZlbG4hCkRhIGtvbW0gaWNoIG5pY2h0cyBhaG5lbmQgaW5zIE1VRCByZWluZ2V0aWdlcnQsIHdpbGwgbWlyIGdyYWQgZWluZSBzY2hvZW5lCndpbmRzdGlsbGUsIHNvbm5lbmJlc2NoaWVuZW5lIER1ZW5lIGF1c3N1Y2hlbiwgdW0gbmFjaCBkZW0gbGFuZ2VuIE1hcnNjaCBpbnMKTUcgZWluIGtsZWluZXMgTmlja2VyY2hlbiB6dSBtYWNoZW4gKG9kZXIgYXVjaCBlaW4gbGFuZ2VzIDspICksIGRhIHRyZWZmZW4KbWljaCBkaWUgTWl0dGVpbHVuZ2VuIHZvbgpTcGllbGVybiBtaXR0ZW4gYXVmIGRpZSBTYW5kdGlnZXJuYXNlIQpTcGllbGVyMSB0ZWlsdCBEaXIgbWl0OiBoZWVlLCBpY2ggaGFlbmdlIGhpZXIgc2Nob24gc2VpdCAxIHN0dW5kZSBpbiBkZW4KcHlyYW1pZGVuIGZlc3QhClNwaWVsZXIyIHRlaWx0IERpciBtaXQ6IGhpISBkaWUgcG9zdHF1ZXN0IHdhciBkb2NoIHZvbiBkaXIsIG9kZXI/ClNwaWVsZXIzIHRlaWx0IERpciBtaXQ6IGhhaGEsIGF1ZiBkaWNoIGhhYmUgaWNoIHNjaG9uIGdld2FydGV0ISBrb21tc3QgZHUgbWFsCmJpdHRlPwoKSmV0enQgbm9jaG1hbCB6dW0gTWl0c2NocmVpYmVuOiAuLi4uYWNoIHZlcmdlc3N0IGVzIDotKQoKSG1wZi4uLm51ciBtYWwgc28gYWxzIE5lYmVuYmVtZXJrdW5nOiBJY2ggYmFzdGVsZSBuZWJlbiBkZW0gV2V0dGJ1ZXJvIG5vY2ggYW4KZWluZXIgUXVlc3QuLi5mdWVyIGplZGVzIE1hbCwgd28gbWVpbiBOYW1lIG1pdCBkZW4gUHlyYW1pZGVuIGluIFZlcmJpbmR1bmcKZ2VicmFjaHQgd2lyZCwga29lbm50ZSBpY2ggZGllIE1vbnN0ZXIgZXR3YXMgaG9jaHNldHplbiB1bmQgZGllIEZhbGxncnViZW4KZXR3YXMgdGllZmVyIG1hY2hlbi4uLndhZXIKZGFzIHdhcz8gOykgKnp3aW5rZXIgZHVyaWFuKgoKV2lyIHdlcmRlbiBkaWVzZXMgJ01pc3N2ZXJzdGFlbmRuaXMnIHNjaG9uIGlyZ2VuZHdpZSBpbiBkZW4gR3JpZmYga3JpZWdlbiA7KQoKKmdyaW5zIHp1ZWNrZXJzdWVzcyoKCkRhbmNlci4uLi53aWVkZXIgYXVmIGVpbmUgcnVoaWdlIFNhbmRkdWVuZSB0YXBwZXJuZC4uLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHZhbXBpci13ZWcgKEZ5dCwgIDUuIE5vdiAxOTk0LCAxMToxMTozOCk6CihCZXp1ZzogQXJ0aWtlbCB2b24gQm9pbmcsIEZyZSwgIDQuIE5vdiAxOTk0LCAxNTo1ODoyMCkKSWNoIGJpbiBnZWdlbiB6dW1hY2hlbi4gRGFzIGxpZWd0IGRhcmFuLCBkYXNzIGljaCBkaWUgS2F0YWtvbWJlbgpudXIgenUgZWluZW0gRHJpdHRlbCBnZW1hY2h0IGhhYmUgdW5kIGRhbm4gZGllIHZvbiBSYWZhZWwgZ2VvZWZmbmV0ZW4KVHVlcmVuIGdlbm9tbWVuIGhhYmUuIElyZ2VuZHdhbm4gbW9lY2h0ZSBpY2ggZGFzIGFiZXIgdmllbGxlaWNodCBhdWNoCm1hbCBzZWxiZXIgbWFjaGVuLCBhYmVyIGRhcyBrb2VubnRlIGljaCBuaWNodCwgd2VpbCBpY2ggamEgamV0enQgZGllClF1ZXN0IHNjaG9uIGhhYmUgOiggRGVua3QgYXVjaCBtYWwgZGFyYW4uLi4KCkVpbiBzdGFlbmRpZyBzY2h1bW1lbG5kZXIgRnl0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHZhbXBpci13ZWcgKEJvaW5nLCAgNS4gTm92IDE5OTQsIDE3OjMwOjAzKToKSWNoIGJpbiBhdWNoIGdlZ2VuIHp1bWFjaGVuLCBhYmVyIHdlbm4gc28gTGV1dGUgd2llIFRob3JpbiB0cm90eiB6d2VpdGVtCldlZyBrZWluZSBSdWVja3NpY2h0IGF1ZiBkaWUgU3BpZWxlciBuZWhtZW4sIGRpZSBkaWUgUXVlc3Qgbm9jaCBuaWNodApnZWxvZXN0IGhhYmVuLCBkYW5uIG11c3MgaWNoIGhhbHQgaXJnZW5kd2FubiByZWFnaWVyZW4uIFdlbm4gbWFuIHNpY2gKdm9yaGVyIHZlcmdld2lzc2VydCwgZGFzcyBtYW4gbmllbWFuZCBiZWhpbmRlcnQsIGRhbm4gaGFiZSBpY2ggbmljaHRzCmRhZ2VnZW4sIGRlbiBXZWcgZHVyY2ggZGllIEthdGFrb21iZW4genUgZ2VoZW4uIEljaCBkZW5rZSBoaWVyIHNvbGx0ZW4gbWFsCnNpZSBTcGllbGVyIHNlbGJzdCBMZXV0ZW4gd2llIFRob3JpbiBrbGFybWFjaGVuLCBkYXNzIGVzIHNvIG5pY2h0CmdlaGVuIGthbm4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1PREVNIChHdXlicnVzaCwgIDYuIE5vdiAxOTk0LCAyMToyMTo0OCk6CgpDaWggYWhiZWluIE1vZGVtLCBhYmVyIGRhcyBtYWcgbWljaCBuaWNodCA6KApkcmVpIFZlcnN1Y2hlIGRyZWkgcmF1c3NjaG1pc3NlLgpqZXR5dCBiaW4gaWNoIGJlaW0gdmllcnRlbiBhbmxhdWYgdW5kIHNjaG9uIHVuZ2FsdWJsaWNoZSAyMCBtaW4gZWluZ2Vsb2dndAouLi4uLnRzYXVuCnNjaHJlaWIgYWxsZXMga2xlaW4sIGRhc3MgZ2VodCBzY2huZWxsZXIgOikKCkd1eWJydXNoIHppdHRlcnQgdW0gc2VpbiBNRy1MZWJlbiA6KQoKdHNjaHVsZGlndW5nIGZ1ZXIgZGllIGZlaGxlciwgbXVzcyBoZXR6ZW4gdW5kIGRhcyB5IHVuZCBkYXMgeiBzaW5kIGF1Y2gKdmVydGF1c2NodC4uLi4ua290eiA6KAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUHlyYW1pZGVuIChHdXlicnVzaCwgIDYuIE5vdiAxOTk0LCAyMjo0MDoxNSk6CgpBZWggLCBEYW5jZXIgd2VubiBkaWUgUHlyYW1pZGVuIG5pY2h0IHZvbiBEaXIgc2luZCwgZGFubiBpc3QgZG9jaCBhdWNoIER1cmlhbgpuaWNodCBEZWluIFp3ZWl0aSB1bmQgZGFubiB3YWVyZSBCb2luZyBqYSBkZXIgRHJpdHRpIHZvbiBKb2YuLi5vZGVyIHdpZSB3YXIKZGFzXwpNZWluIFp3ZWl0aSB3ZWlzcyBhdWNoIG5pZWUsIGRhc3MgZXIgbWVpbmVyIGlzdCB1bmQgZGVua3QgaW1tZXIgaWNoIHNlaQpzZWluZXIuIEFsc28gc3RlaCB6dSBkZW0gd2FzIHdhaHIgaXN0IHVuZCBnaWIgZW5kbGljaCB6dSBkYXMgRHVyaWFuIG51ciBlaW4KVGVpbCBkZWluZXIgZ2VzcGFsdGVuZW4gWndlaXRpLVBlcnNvZW5saWNoa2VpdCBpc3QuIERlbm4gYXVjaCBad2VpdGlzIGtvZW5uZW4Kc2NoaXpvcGhyZW4gc2VpbiwgZnJhZyBtYWwgTGVDaHV2Y2suIERlciBpc3Qgb2Z0IHNvIGdlc3BhbHRlbiwgZGFzcyBpaG0gZGllCkJlaW5lIGFiZmFsbGVuIHVuZCBkYW5uIGJlaGF1cHRldCBlciBlciBzZWkgbWVpbiBCcnVkZXIuLi4uCgpOaXggZnVlciBVTmd1dCwgYWJlciBkZXIgV2FocmhlaXQgbXVzcyBHZXJlY2h0aWdrZWl0IGdlc3BhbHRldCB3ZXJkZW4gb2Rlcgp3YXJzIGdldGVpbHQgd2VyZGVuLi4uLi4uPyA6KQoKR3V5YnJ1c2ggc3BhbHRldCBncmFkIGVpbmUgRmxhc2NoZSBCaWVyLi4uIGVpbiBEZWNrZWwgb2JlbiB1bmQgZGVyCkluaGFsa3QuLi4uIGF1ZiBkZW0gQm9kZW4uLi4gU2NoLi4uIGFsb2hvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFuY2VyIHNlaW5lIFp3ZWl0aWVzIC4uLiAoRHVyaWFuLCAgNy4gTm92IDE5OTQsIDA5OjUwOjA1KToKSGFsbG8hCgpTZWllbiB3aXIgZG9jaCBtYWwgZWhybGljaCwgd2lyIHNpbmQgZG9jaCBhbGxlIFp3ZWl0aWVzIHZvbiBEYW5jZXIsIG9kZXI/CkRhcyBtYWNodCBkaWUgZ2FuemUgU2FjaGUgbmFlbWxpY2ggZWluZmFjaDogZGFubiBzaW5kIG5pY2h0IG51ciBhbGxlIFF1ZXN0cwp2b24gaWhtLCBzb25kZXJuIHNvZ2FyIGRhcyBnYW56ZSBNVUQhISBBbHNvLCBqZWRlbiwgYWJlciBhdWNoIHdpcmtsaWNoIGplZGVuCktvbW1lbnRhciB6dSBpcmdlbmR3YXMgbWluZGVzdGVucyBhbHMgQ0MgYW5kIERhbmNlciwga2xhcj8gRGFubiBoYWJlbiB3aXIKaGllciBiYWxkIGtlaW5lIFByb2JsZW1lIG1laHIgISEhCgo6LSkKCi0gRHVyaWFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFuY2VyIHNlaW5lIFp3ZWl0aWVzIC4uLiAoS25vZXJyeSwgIDcuIE5vdiAxOTk0LCAwOTo1NTozNCk6CihCZXp1ZzogQXJ0aWtlbCB2b24gRHVyaWFuLCBNb24sICA3LiBOb3YgMTk5NCwgMDk6NTA6MDUpCmFlaCBEYW5jZXIgLCBpY2ggZ2xhdWIgZGVpbiBEdXJpYW4gaGF0IG5lbiBCdWcuLi4KCktub2VycnkgLi4uICAgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGFuY2VyIHNlaW5lIFp3ZWl0aWVzIC4uLiAoVGhvcmluLCAgNy4gTm92IDE5OTQsIDEwOjUwOjUzKToKKEJlenVnOiBBcnRpa2VsIHZvbiBLbm9lcnJ5LCBNb24sICA3LiBOb3YgMTk5NCwgMDk6NTU6MzQpCkFlaCwgZGFzIGVyZ2lidCBlaW4gUHJvYmxlbTogd2VubiB3aXIgYWxsZSBad2VpdGllcyB2b24gRGFuY2VyIHNpbmQsIHdpZXNvCnByb2dndCBlciBzaWNoIGRhbm4gZWluIE11ZCB1bmQgbG9lc3QgZGllIHNlbGJlbiBRdWVzdHMgaW1tZXIgdW5kIGltbWVyCndpZWRlciwgbnVyIG1pdCBhbmRlcmVuIFp3ZWl0aWVzID8/ClRob3JpbiwgZGVyIG5pY2h0IGdhbnogZHVyY2hzdGVpZ3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmU6IERhbmNlciBzZWluZSBad2VpdGllcyAuLi4gKER1cmlhbiwgIDcuIE5vdiAxOTk0LCAxMTowMTowOCk6CihCZXp1ZzogQXJ0aWtlbCB2b24gVGhvcmluLCBNb24sICA3LiBOb3YgMTk5NCwgMTA6NTA6NTMpCkRpZXNlIEZyYWdlIHNvbGx0ZW4gd2lyIGlobSB3aXJrbGljaCBtYWwgc3RlbGxlbiEhISEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSZTogUmU6IERhbmNlciBzZWluZSBad2VpdGllcyAuLi4gKFRob3JpbiwgIDcuIE5vdiAxOTk0LCAxMTowOToxMSk6CihCZXp1ZzogQXJ0aWtlbCB2b24gRHVyaWFuLCBNb24sICA3LiBOb3YgMTk5NCwgMTE6MDE6MDgpClVuZCB2b3IgYWxsZW0gc2VpbmUgZGF1ZXJuZGVuIFNlbGJzdGdlc3ByYWVjaGUgLi4uIEVpbiBlY2h0IHNjaHdlcmVyIEZhbGwKZnVlciBqZWRlbiBQc3ljaG9sb2dlbiA6KSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFuY2VyIHNlaW5lIFp3ZWl0aWVzIC4uLiAoSGFyZGlsLCAgNy4gTm92IDE5OTQsIDEyOjM0OjI4KToKKEJlenVnOiBBcnRpa2VsIHZvbiBEdXJpYW4sIE1vbiwgIDcuIE5vdiAxOTk0LCAwOTo1MDowNSkKQWhoaCwgRHVyaWFuLCBhbiBtZWluIEhlcno6CkR1IGJlaGVycnNjaHQgbm9jaCBkZW4gZWNodGVuIEdlbml0aXY6ICJEZW0gRGFuY2VyIHNlaW5lIFp3ZWl0aWVzIiAhCk9obmUgQXBvc3Ryb3BoLCBvaG5lIEZheGVuIC0gd2VpdGVyIHNvICEgOi0pCgpIYXJkaWwgKGthbm4gc2VpbmUgc3VlZGRldXRzY2hlIEhlcmt1bmZ0IG1hbmNobWFsIG5pY2h0IHZlcmxldWduZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2VuaXRpdiAoR3VsZHVrYXQsICA3LiBOb3YgMTk5NCwgMTM6MDg6MzcpOgpVbmdsYXVibGljaCwgd2llIGRpZSBkZXV0c2NoZSBTcHJhY2hlIHZlcndhZXNzZXJ0IHdpcmQuIDspCgpEZXNoYWxiIHNjaGxhZyBpY2ggZGllIGdydWVuZHVuZyBlaW5lcyB2ZXJlaW5zIHp1ciBSZXR0dW5nIHZvbiBkZW0gR2VuaXRpdgp2b3IhCgpHRAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZXR0YmV3ZXJic2NocmVpYmUgTmV1ZXIgV2V0dGJld2VyYiAoQXNtb2RpcywgIDcuIE5vdiAxOTk0LCAxNDoxNTozOSk6CihCZXp1ZzogQXJ0aWtlbCB2b24gRHVyaWFuLCBGcmUsICA0LiBOb3YgMTk5NCwgMDk6MjA6NTQpCkFlaCwgSGVsZ2EsIEpvaGFubmEgdW5kIFdpbGx5CihXaWxseSBraWxsdCBpbW1lciBkaWUgTW9lY2h0ZWdlcm4tR2xhZGlhdG9yZW4gOikKCiAgICAgICAgICAgICAgICAgICBDaWFvLCBBc21vZGlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlOiB2YW1waXItd2VnIChaYXJkb3osICA3LiBOb3YgMTk5NCwgMTQ6MTY6MzQpOgooQmV6dWc6IEFydGlrZWwgdm9uIEJvaW5nLCBTYW0sICA1LiBOb3YgMTk5NCwgMTc6MzA6MDMpCkVzIGdpYnQgbm9jaCBlaW5lIE1vZWdsaWNoa2VpdCwgYW4gZGllIGJpcyBqZXR6dCB3b2hsIGtlaW5lciBnZWRhY2h0IGhhdDoKV2VyIGRpZSBRdWVzdCBzY2hvbiBoYXQsIGJla29tbXQgZGVuIFJ1YmluIG5pY2h0IG1laHIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIRVVMISAoQXNtb2RpcywgIDcuIE5vdiAxOTk0LCAxNDoxODoyMSk6CihCZXp1ZzogQXJ0aWtlbCB2b24gRGFuY2VyLCBGcmUsICA0LiBOb3YgMTk5NCwgMjA6MDg6NDgpCk5hamEsIGFiZXIgbnVyIGZ1ZXIgZGllIFNwaWVsZXIsIGRpZSBkYXMgYmVoYXVwdGVuLCBEYW5jZXIgOikKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDaWFvLCBBc21vZGlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlOiBEYW5jZXIgc2VpbmUgWndlaXRpZXMgLi4uIChBc21vZGlzLCAgNy4gTm92IDE5OTQsIDE0OjIxOjAzKToKKEJlenVnOiBBcnRpa2VsIHZvbiBUaG9yaW4sIE1vbiwgIDcuIE5vdiAxOTk0LCAxMDo1MDo1MykKQWxsZXMgUXVhdHNjaCwgRGFuY2VyIGlzdCBlaW4gTlBDLCBkZXIgdm9uIER1cmlhbiBnZXByb2dndCB3dXJkZSA6KQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2lhbywgQXNtb2RpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERldXRzY2hlIFNwcmFjaGUgKEFyYW55YSwgIDcuIE5vdiAxOTk0LCAxNToyMDowOSk6CkljaCBzYWNoIGRhIG51cjogRGV1dHNjaGxhbmRzIG1laXN0ZSBLcmVkaXRrYXJ0ZSAtIGJycnJyciEKCkFyYW55YQogICAgICBzY2h1ZXR0ZWx0IHNpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZlcnNjaHdvZXJ1bmcgKERhbmNlciwgIDcuIE5vdiAxOTk0LCAxNzoyOToyMyk6CkljaCB3aXR0ZXJlIFZlcnNjaHdvZXJ1bmcgOi0pCk5ldHRlciBWZXJzdWNoLCBEdXJpYW4sIERlaW5lIGJ1Z2d5IFF1ZXN0IGF1ZiBtaWNoIGFienV3YWVsemVuICpncmlucyouLi4KR2licyBkb2NoIGVuZGxpY2ggenUuLi5kaWVzZSAnRGllLVB5cmFtaWRlbi1zaW5kLXZvbi1EYW5jZXInLVZlcnNjaHdvZXJ1bmcKd3VyZGUgdm9uIERpciBlaW5nZWZhZWRlbHQsIHVuZCBqZXR6dCB3aWxsc3QgRHUgRGljaCBhdWNoIG5vY2ggYWxzIG1laW4KWndlaXRpIGVpbnNjaGxlaWNoZW4sIHdlaWwgRHUKYSkgSmEgamV0enQgZ2Vob2VydCBoYXN0LCB3aWUgdW5nbGF1YmxpY2ggd2FobnNpbm5pZyB1bmVycmVpY2hiYXIgY29vbApTYW5kdGlnZXIgZG9jaCBzaW5kICpncmlucyosCmIpIHVuZCB3ZWlsIER1IEFuZ3N0IGhhc3QsIGlyZ2VuZHdhbm4gZnVlciBEZWluZSA4MyBQbGF5ZXJraWxscyB6dXIKVmVyYW50d29ydHVuZyBnZXpvZ2VuIHp1IHdlcmRlbiwgbWFsIGRpZSBodW5kZXJ0IE1hbGUgbmljaHQgbWl0Z2V6YWVobHQsIHdvIER1ClNwaWVsZXIgZ2VxdWFlbHQsIGdlZm9sdGVydCwgZ2V6YXBwdCB1bmQgZ2VicmF0ZW4gaGFzdCA6LSkpKSkpCgpTY2htZWlzc3QgZGVuIFB1cnNjaGVuIHp1IFBvZGVuIQoKVGFuY2VyLi4uYWVoLi4uRGFuY2VyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZ2llcmF1ZmxhdWYgKEFzbW9kaXMsICA3LiBOb3YgMTk5NCwgMTg6MjY6MzApOgpIbW0sIGljaCBzdGVoZSBoaWVyIGdlcmFkZSBpbiBkZXIgU1NQIHVuZCB3YXJ0ZSBhdWYgbmV1ZSBLcmlzdGFsbHRyb2xsZSwKZGEga2FubiBpY2ggamEgYXVjaCBlaW4gUmV6ZXB0IGZ1ZXIgTWFnaWVyYXVmbGF1ZiBzY2hyZWliZW4uCgpadXRhdGVuOiAgUHJvIHBvcnRpb24gMS0yIE1hZ2llciAoZ3V0IGFiZ2VoYW5nZW4pCiAgICAgICAgICBFaW5lbiBndXRlbiBMaXRlciBEcmFjaGVuYmx1dAogICAgICAgICAgRWNoc2Vua25vY2hlbgogICAgICAgICAgRmVlbmtyYXV0IChmcmlzY2ggZ2VwZmx1ZWNrdCBhbiBWb2xsbW9uZCkKICAgICAgICAgIEtub2JsYXVjaCgyLTMgWmVoZW4pCiAgICAgICAgICBUZWlsZSBlaW5lcyBPcmtzKDQtNSBGaW5nZXIpCiAgICAgICAgICBFaW5lbiBIZXhlbnN0YWIKClp1YmVyZWl0dW5nOiAgMS5NYW4gbmVobWUgZGllIE1hZ2llciB1bmQgc2NobmVpZGUgc2llIGluIGtsZWluZSBTdHVlY2tjaGVuLAogICAgICAgICAgICAgICAgYnJhZXQgc2llIGt1cnogYW4gKHouQi4gYmVpbSBHb2JsaW5kcmFjaGVuKSB1bmQgbGVndCBzaWUKICAgICAgICAgICAgICAgIGluIGVpbmVuIFRvcGYsIHNvIGVpbmVuLCB3aWUgbWFuIGJlaSBNZWNraSBiZWtvbW10LgogICAgICAgICAgICAgICAyLlplcnJlaWJlIGRpZSBFY2hzZW5rbm9jaGVuIHp1IFB1bHZlciwgc3RyZXVlIGVzCiAgICAgICAgICAgICAgICBVZWJlciBkaWUgTWFnaWVyc3R1ZWNrY2hlbiB1bmQgZ2llc3NlIG1pdCBEcmFjaGVuYmx1dCBhdWYuCiAgICAgICAgICAgICAgMy5XdWVyemUgZGFzIEdlcmljaHQgbWl0IEZlZW5rcmF1dCB1bmQgS25vYmxhdWNoLgogICAgICAgICAgICAgNC5EYW5uIHN0ZWNrZSBkaWUgT3JrZmluZ2VyIG9iZW5kcmF1ZiBhbHMgR2FuaWVydW5nLgogICAgICAgICAgICAgNS5TY2hsaWVzc2xpY2ggYnJhdGUgZGFzIGdhbnplIGd1dCBkdXJjaCBiZWkgMjAwIEdyYWQgSGl0emUKICAgICAgICAgICAgICBjYS4gMSBTdHVuZGUgbGFuZy4KICAgICAgICAgICAgNi5XaXJmIGRhcyBnYW56ZSBhdWYgZGVuIE11ZWxsLCB3ZWlsIGVzIHVuZ2VuaWVzc2JhciBpc3QgOikKClNvLCBtdXNzIG5vY2ggZWluIHBhYXIgVHJvbGxlIHVtYnJpbmdlbiA6KQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDaWFvLCBBc21vZGlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFnaWVyYXVmbGF1ZiAoQXNtb2RpcywgIDcuIE5vdiAxOTk0LCAxODoyODoxNCk6CihCZXp1ZzogQXJ0aWtlbCB2b24gQXNtb2RpcywgTW9uLCAgNy4gTm92IDE5OTQsIDE4OjI2OjMwKQpBY2ggamEsIGRlbiBIZXhlbnN0YWIgYnJhdWNodCBtYW4sIHVtIGVpbmVuIE9mZW4gaGVyYmVpenV6YXViZXJuIDopClVuZCBzb3JyeSBmdWVyIHR5cG9zLCBldGMsIHdlcmRlIGRhdWVybmQgYmVsYWJlcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWZXJzY2h3b2VydW5nIChDaWZlciwgIDcuIE5vdiAxOTk0LCAxOTozNzoyNyk6CihCZXp1ZzogQXJ0aWtlbCB2b24gRGFuY2VyLCBNb24sICA3LiBOb3YgMTk5NCwgMTc6Mjk6MjMpCkhlaD8gRHVyaWFuIGhhdCBTcGllbGVyIGdlZm9sdGVydD8gRGFzIHN0ZWh0IGFiZXIgbmljaHQgaW4gbWVpbmVuIExvZy1GaWxlcyEKOikKCkNpZmVyLCBGb2x0ZXJrYW1tZXJuLUV4cGVydGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2V0dGJld2VyYnNjaHJlaWJlIE5ldWVyIFdldHRiZXdlcmIgKER1cmlhbiwgIDguIE5vdiAxOTk0LCAwOTozNDowMik6CihCZXp1ZzogQXJ0aWtlbCB2b24gQXNtb2RpcywgTW9uLCAgNy4gTm92IDE5OTQsIDE0OjE1OjM5KQpGYXN0LCBBc21vZGlzLCBhYmVyIER1IGJpc3QgYXVmIGRlciByaWNodGlnZW4gU3B1ci4gRWluemlnIEhhZWdhcnMgRnJhdSBpc3QKZWluIHdlbmlnIGRlcGxhemllcnQgOi0pCgotIER1cmlhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHZW5pdGl2IChDYWx1bSwgIDguIE5vdiAxOTk0LCAxMDo1NzowNCk6CihCZXp1ZzogQXJ0aWtlbCB2b24gR3VsZHVrYXQsIE1vbiwgIDcuIE5vdiAxOTk0LCAxMzowODozNykKRGEgaGFzdCBEdSB2b2VsbGlnIHJlY2h0IQoKSGFiZSBpY2ggc2Nob24gZXJ3YWVobnQsIGRhc3MgaWNoIGF1Y2ggZGllIFRhdHNhY2hlIGJlZGF1cmUsIGRhc3MgdmllbGUKTGV1dGUgZGVtIEdlbml0aXYgbmljaHQgbWVociBtYWVjaHRpZyBzaW5kPwoKTmEgamEsIG1hbiBnZXdvZWhudCBzaWNoIGFuIGFsbGVtLgoKKklST05JRSBPRkYqCiAgICAgIC0gQ2FsdW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNYWdpZXJhdWZsYXVmIChCZWxkaW4sICA4LiBOb3YgMTk5NCwgMTM6MjY6MjMpOgooQmV6dWc6IEFydGlrZWwgdm9uIEFzbW9kaXMsIE1vbiwgIDcuIE5vdiAxOTk0LCAxODoyNjozMCkKKkxBQ0gqICpMQUNIKiAqTEFDSCogKkxBQ0gqCkRFUiB3YXIgbWFsIEVDSFQgU3BpdHplbmtsYXNzZSBBc21vZGlzLi4uIGVpZ2VudGxpY2ggZnVlciAic2NobWFycm4iIHZpZWwgenUKc2NoYWRlLi4uIGRlciBoYWV0dGUgaW4gV0lUWkUgZ2Vob2VydCEhISA6KSkpKQpCZWxkaW4gKnNpY2ggdm9yIExBY2hlbiBrYXVtIGVpbmtyaWVnZW5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hZ2llcmF1ZmxhdWYgKENhcmFkaHJhcywgIDguIE5vdiAxOTk0LCAxNDoxOTozMCk6CihCZXp1ZzogQXJ0aWtlbCB2b24gQXNtb2RpcywgTW9uLCAgNy4gTm92IDE5OTQsIDE4OjI2OjMwKQpTdGltbXQsIEFzbW9kaXMsIG11c3MgamEgdW5nZW5pZXNiYXIgd2VyZGVuLCBkZW5uIGRpZSBTdXBwZSBpc3QgZGFubgpnYW56IHVlYmVyd3Vlcnp0LiBEZW5uIHdpZSBlcyBzY2hvbiBpbW1lciBpbiBkZXIgV2VyYnVuZyBoZWlzc3Q6CgogIE1hZ2llci4gSW1tZXIgZWluZSBndXRlIFN1cHBlLiAqbWl0c2luZyoKCiBVbmQgenV2aWVsZSBNYWdpZXIgdmVyZGVyYmVuIGViZW4gZGVuIEJyZWksIGFlaCBkaWUgU3VwcGUgOi0pCgogICAgICAgICAgQ2FyYWRocmFzIGRlciBld2lnZSBQcm9waGV0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprb21pc2NoLi4uIChTdGFobGRvcm4sICA4LiBOb3YgMTk5NCwgMTY6NTI6MzUpOgoKbmV1bGljaCBpbiBkZXIgWndlcmdlbnN0YWR0OgpGbG9wcHkgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgogIEZsb3BweSB2ZXJsYWVzc3QgZGllc2UgV2VsdC4KICBGbG9wcHkgc3RlY2t0IGVpbmVuIEhvcm5pc3NlbnN0YWNoZWwgenVydWVjay4KCgprb21pc2NoLi4uLgogIFNUQUhMLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmVpbmRsaWNoZXIgV2l0eiEgKEdyaW1tYm9ybiwgIDguIE5vdiAxOTk0LCAyMDo0NTozNCk6CkFsc28sIHdlaWxzIGltbWVyIHNvIHBvcHVsYWVyIGlzdCwgaGllciBlaW4gbWluZGVyaGVpdGVuZmVpbmRsaWNoZXIgV2l0ejoKCgoKCgoKCgoKCgoKCgoKU28sIHdlaWwgZGVyIFdpdHogc293aWVzbyBnZWxvZXNjaHQgd29yZGVuIHdhZXJlIChzbyBkZW5uIFdpdHplIGdlbG9lc2NodAp3ZXJkZW4pIGhhYiBpY2ggZGllIEFyYmVpdCBnbGVpY2ggc2VsYmVyIHVlYmVybm9tbWVuLiBEaWUgamV0enQgc2ljaAplbnR6dWVuZGVuZGUgRGlza3Vzc2lvbiBpc3QgenV0aWVmc3QgZGVtb2tyYXRpc2NoOiBOaWVtYW5kIChhdXNzZXIgbWlyKSBrZW5udApkZW4gV2l0ei4KCkRvY2gsIGljaCBrZW5uZSBpaG4hCkdyaW1tZAoKUmF1cyBhdXMgbWVpbmVtIGVkaXRvciwgR3JpbW1kZWF0aCEhISBad2VpdGllcyB6YWVobGVuIG5pY2h0IQoKQWxzbywgdmllbCBTcGFzcyBiZWltIGF1ZnJlZ2VuLiBVbmQgbGFzc3QgZXVjaCBnZXNhZ3Qgc2VpbjogRGVyIFdpdHogd2FyClVFQkVMLi4uLi4uLgoKTWluZGVyaGVpdGVuZmVpbmRsaWNoLAogICAgICAgICAgICAgICBHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdybXBmISAoR3JpbW1ib3JuLCAgOS4gTm92IDE5OTQsIDAzOjA2OjI4KToKClNvLCB3ZW5uIGhpZXIgc2VpdCBTdHVuZGVuIG5peCBnZXNjaHJpZWJlbiB3aXJkIHNjaHJlaWIgaWNoIGViZW4gc2VsYmVyIHdhcyEKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR2VuaXRpdiAoRmxpbnRuYWlsLCAgOS4gTm92IDE5OTQsIDIyOjE0OjU3KToKIyEgcm49Q2FsdW0gcnQ9Nzg0Mjg4NjI0CndhcyBpc3QgZGVubiBzbyBzY2hsaW1tIGFuIGRlcyBHZW5pdGl2ZXMgZmVobGVuZGVyIEJlbnV0enVuZyA6OjopKSkpCgogICAgICAgICBGbGludG5haWwsICh3YXMgaXMgSXJvbmllPykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBncm1wZiEgKENhcmFkaHJhcywgMTAuIE5vdiAxOTk0LCAyMDo1OTo1NCk6CihCZXp1ZzogQXJ0aWtlbCB2b24gR3JpbW1ib3JuLCBNaXQsICA5LiBOb3YgMTk5NCwgMDM6MDY6MjgpClR1dCBtaXIgbGVpZCwgR3JpbW1ib3JuLCBpY2gga2FubiBqZXR6dCBuaXggc2NocmVpYmVuLCBpY2ggYmluIHNvCmFuZ2Vla2VsdCB2b24gbWlyLCBtaXIgd2lyZHMgZ2xlaWNoIHVlYmVsLiBJY2gga3VjayBkaWUgZ2FuemUgWmVpdAphdWYgbWVpbmUgQVAgdW5kIGhhYiBzY2hvbiB1ZWJlciAxMTAwICp6aXR0ZXIqICpzY2hsZWNodCB3ZXJkKiB3YXJlbgpkYXMgbm9jaCBaZWl0ZW4sIGFscyBpY2ggdm9yIG5lbSBoYWxiZW4gSmFociBvZGVyIHNvIG1pdCAzMDAgQVAgTnVtbWVyCjEgZGVyIEdlc2FtdGxpc3RlIHdhciwgdW5kIGpldHp0Pz8/PyBTY2hhdXQgbWljaCBhbiEgTWl0IDExNDAgQVAsIGVpbmVyCk1lbmdlLCBkaWUgd2lya2xpY2ggZWtlbGVycmVnZW5kIHZpZWwgaXN0LCBmdXJjaHRiYXJlcmUgYWxzIDIwIGxlaWNoZW4KYW4gZWluZW0gT3J0IG9kZXIgZWluZW4gRWltZXIgU2NobGVpbSB1ZWJlciBkZW0gS29wZiBhdXNnZXNjaHVldHRldCB6dQpiZWtvbW1lbiB1bmQgZGFubiBhdWNoIG5vY2ggYmFsZCBTZWhlciB3ZXJkZW4gbXVlc3NlbmQsIGRhIGljaCBlcyB2ZXItCnNwcm9jaGVuIGhhYmUsIGthbm4gaWNoIG1pY2ggbnVyIG5vY2ggaW4gbWVpbiBCZXR0IHZlcmtyaWVjaGVuIHVuZCBlaW5lbgpLYW1pbGxlbnRlZSB0cmlua2VuLCBhdWYgZGFzcyBlcyBtaXIgd2llZGVyIGJlc3NlciBnZWhlbiBtb2VnZS4KCkllZWVoLCBpc3QgZGFzIGVrZWxoYWZ0LCB3ZWxjaGUgc2NocmVja2xpY2hlbiBQcnVlZnVuZ2VuIHdpZSBkaWVzZSB3aXJkCm1pciBtZWluIExlYmVuIG5vY2ggYXVmZXJsZWdlbj8gV2hlcmUgZG8gSSBnbyBmb2xsb3cgdGhlIHJpdmVyLCB3aGVyZSBkbwpJIGdvIGZvbGxvdyB0aGUgbmlnaHQsIGlzdCB0aGVyZSBhbiBhbnN3ZXIsIHdoZW4gd2lsbCBJIGV2ZXIgZGlzY292ZXIKd2h5IEkgbGl2ZSBhbmQgZGllLi4uIEphamEsIEhBSVIgaGF0dGUgZGEgc2Nob24gcmVjaHQgbWl0IGRpZXNlbSBzb25nLgoKV2VubiBpY2ggbm9jaCBsYWVuZ2VyIHNjaHJlaWJlLCB2ZXJnZWh0IG1pciBkZXIgSHVuZ2VyLCBhbHNvLCBtYWNodHMgZ3V0LApzZXR6dCBlaW4gcGFhciBuZXVlIHF1ZXN0cyBlaW4sIGRhbWl0IGljaCBub2NoIGxhZW5nZXIgU3BpZWxlciBibGVpYmVuIGthbm4KdW5kIG5pY2h0IFNlaGVyIHdlcmRlbiBtdXNzLiA6LSkgRGVubiBoYWIgbnVyIG5vY2ggMiBxdWVzdHMgenUgbG9lc2VuLApkYW5uIGJpbiBpY2ggYXVjaCBlaW5lciB2b24gZGllc2VuIGVrZWxoYWZ0ZW4sIGRlZ2VuZXJpZXJ0ZW4sCnZlcndlaWNobGljaHRlbiBTZWhlcm4gKEFud2VzZW5kZSBuYXR1ZXJsaWNoIGF1c2dlbm9tbWVuISksIGRpZSBzaWNoIGxhdXRlcgpIYWV1c2VyIGJhdWVuIHVtIGlocmVuIEtvZXJwZXIgZG9ydCBkZXMgVmVyZmFsbHMgdW5kIGRlcyBFbGVuZHMgaGluenVnZWJlbi4KTmVpbiwgd2FzIGZ1ZXIgZWluZSBXZWx0IGlzdCBkYXMgaGllciEgRW50c29ldHpsaWNoLgoKICAgICBDYXJhZGhyYXMgZGVyIGV3aWdlIFByb3BoZXQgLSBnZXNjaG9ja3QgZGVuIEtvcGYgc2NodWV0dGVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFiZW5kZXNzZW4gKEdyaW1tYm9ybiwgMTEuIE5vdiAxOTk0LCAwMTowMzozNik6CgpIbW0sIHZvciBuaWNodCBhbGx6dSBsYW5nZXIgWmVpdCBoYXQgZG9jaCBEYW5jZXIgaGllciBpbSBadXNhbW1lbmhhbmcgbWl0IGRlcgpmaW5hbGVuIEZpbmFsRnJvbnRpZXItU3RvcnkgZ2VtZWludCwgZ2V3aXNzZSBMZXV0ZSBEVUVSRlRFTiwgd2VubnMgaG9jaGtvbW10LApzZWluIEFiZW5kZXNzZW4gc2Vpbi4KRGF6dSBmYWVsbHQgbWlyIGVpbiwgaWNoIHd1ZXJkZSBnZXJuZSBhdWYgZGVyIFdhcnRlbGlzdGUgc3RlaGVuLiBXZW5uIG1hbiBpaG0Kdm9yaGVyIGRpZSBaYWVobmUgYXVzIGRlbSBHbGFzIG5pbW10IHVuZCB2ZXJzdGVja3Qga2l0emVsdCBkYXMgaW1tZXIgc28Kc2Nob2VuLi4uCgoqc2V1ZnoqLCBkaWVzZSBUcm9sbGUgaGFiZW4gZWNodGUgRnJpZWRob2ZzcmVzZXRzLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhciBIYXIgSGFyISAoS2hvcm5lLCAxMS4gTm92IDE5OTQsIDA2OjUzOjM1KToKTmEgYWxzbyEgRW5kbGljaCBoYWJlbiB3aXIgbWFsIGVpbmUgZXJ0cmFlZ2xpY2hlIFp3ZWl0eXF1b3RlOgpBbWF6b3JhIGRpZSBlcmZhaHJlbmUgS2FlbXBmZXJpbiAtIEVsZiAtIFtMaW56XSA8WndlaXRpZT4KQXJrIGRlciBlcmZhaHJlbmUgQWJlbnRldXJlciAtIFp3ZXJnIC0gW0phcGFuXQpXYWhuIGRlciBSaXR0ZXIgLSBad2VyZyAtIFtLYW5hZGFdIDxad2VpdGllPgpIYWNrZnJpZWQgZGVyIE9iZXJnbGFkaWF0b3IgLSBad2VyZyAtIFtLYW5hZGFdCklzbm9nb29kIGRlciBQcm9waGV0IC0gRWxmIC0gW1NhYXJicnVlY2tlbl0KU2NocnVtcGZpIGRpZSBhbmdlaGVuZGUgU2VoZXJpbiAtIEVsZiAtIFtMaW56XQpLZWxkZXIgZWxmdCBoZXJ1bSAtIEVsZiAtIFtLYWlzZXJzbGF1dGVybl0gPFp3ZWl0aWU+CllvZ1NvdGhvdGggZGVyIGdyb3NzZSBBbHRlIC0gTWVuc2NoIC0gW011ZW5zdGVyXSA8WndlaXRpZT4KS2hvcm5lIGRlciBCbHV0ZGFlbW9uIC0gTWVuc2NoIC0gW011ZW5zdGVyXSA8WndlaXRpZT4KTGF1cmluIGRlciB3YWhyZSBad2VyZ2Vua29lbmlnIC0gWndlcmcgLSBbS2Fpc2Vyc2xhdXRlcm5dIDxad2VpdGllPgpTdGV2ZSB0aGUgS2lkIC0gU2VoZXIgR01CSCAtIFp3ZXJnIC0gW0thaXNlcnNsYXV0ZXJuXSA8WndlaXRpZT4KU2NobmFyY2ggZGVyIGJldHJ1bmtlbmUgR09UVCBrYXVmdGUgc2ljaCBlaW4gS2FydG9mZmVsZmVsZCBpbiBkZXIgVHVuZHJhIHVuZApicmUKCm5udCBqZXR6dCBzZWluZW4gV29ka2Egc2VsYnN0ISAtIEVsZiAtIFtMaW56XQpBc21vZGlzIGhhdCAzIEh5ZHJhaG9lcm5lciAtIE1lbnNjaCAtIFtLYWlzZXJzbGF1dGVybl0gPFp3ZWl0aWU+CkRlciBUb2V0ZXIgZ2VodCB1bSAtIE1lbnNjaCAtIFtNdWVuc3Rlcl0KClBTIEVpbmVzIFRhZ2VzLi4uKnJlaWIgaGVpbXR1ZWNraXNjaCBraWNoZXJuZCBkaWUgSGFlbmRlKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIEdlaGVpbW5pcyBzZWluZXMgRXJmb2xnZXMuLi4gKE1lcGhpc3RvLCAxMS4gTm92IDE5OTQsIDE2OjU5OjUzKToKCk5hLCBpY2ggd2Vpc3MgbmljaHQsIG9icyBldWNoIGludGVyZXNzaWVydCwgb2RlciBvYiBkYXMgaGllciB1ZWJlcmhhdXB0IGluCmRpZSBSdWJyaWsgcGFzc3QsIGFiZXI6CkljaCB3ZWlzcyBqZXR6dCwgd2FydW0gZGVyIEpvZXJnIEhhaWRlciBhdXNnZXJlY2huZXQgaW4gS2Flcm50ZW4gc28KZXJmb2xncmVpY2ggaXN0IQpXYXJ1bT8gTmEsIG5ldWxpY2ggcmVkIGljaCBtaXQgZWluZW0ganVuZ2VuIEthZXJudG5lciB1ZWJlcgpHZXNlbGxzY2hhZnRzc3lzdG1lLCBkYSB2ZXJ0cml0dCBkZXIgZG9jaCBnbGF0dCBkaWUgQW5zaWNodCwgZGFzcyBkYXMgaW5kaXNjaGUKS2FzdGVuc3lzdGVtIGRhcyBsaWJlcmFsc3RlIGFsbGVyIEdlc2VsbHNjaGFmdHNzeXN0ZW1lIHNlaSAodW5kIGVyIGhhdCBkYXMKZXJuc3QgZ2VtZWludCwgZGEgYmluIGljaCBzaWNoZXIuLi4pCkljaCBmcmFnIGlobiBuYWNoIGRlciBCZWdydWVuZHVuZywgZGEgc2FndCBlcjoKIidOYSwgamVkZXIgaXN0IGluIGRpZXNlbSBMZWJlbiBkdXJjaCBzZWluZSBUYXRlbiB2ZXJhbndvcnRsaWNoIGRhZnVlciwgd2FzCmVyIGltIG5hZWNoc3RuIExlYmVuIGlzdCwgYWxzbyBrYW5uIGplZGVyIGZydWVoZXIgb2RlciBzcGFldGVyIGFsbGVzCmVycmVpY2hlbi4gSXN0IGRhcyBuaWNodCBsaWJlcmFsPyIKCk5hLCB3ZW5uIGRhcyBzbyBpc3QsIHd1bmRlcnQgbWljaHQgbml4IG1laHIuLi4KClNFTkYgT0ZGCgplaW4gdmVyd3VuZGVydGVyIE1lcGgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktyaWVnIGRlciBNYWV1c2UgKENhcmFkaHJhcywgMTEuIE5vdiAxOTk0LCAyMjoyNzowNSk6CiAgICAgICAgSGlpaWlsZmUsIGVpbiBLcmllZyBkZXIgTWFldXNlIGlzdCBlbnRicmFubnQhCiAgICAgICAgRm9sZ2VuZGVzIGhhYmUgaWNoIGdlcmFkZSBnZWxlc2VuOgpbTW9lcmRlcjpHZWlzdCBlaW5lciBTY2hhdHRlbm1hdXNdIFdlbm4gaWNoIERpY2ggZXJ3aXNjaGUsIERpZGRsbWF1cyEKCiplbnRzZXR6dCogYmVpbmFoZSBzbyBzZWhyIGVudHNldHp0IHdpZSBkYW1hbHMgYWxzIFRpbGlvbgpkZW4gV2FzY2hiYWVyZW4gdW1nZWxlZ3QgaGF0LCBzZWluZW4gZWlnZW5lbiBCcnVkZXIgdW5kIEZyZXVuZC4KKmdlc2Nob2NrdCBzZWkqCgogICAgICAgIENhcmFkaHJhcyBkZXIgZXdpZ2UgUHJvcGhldAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUXVhayAoQ2FyYWRocmFzLCAxMi4gTm92IDE5OTQsIDAyOjI2OjE4KToKUGFzc2llcnRlIGdyYWRlIGlubmVyaGFsYiB3ZW5pZ2VyIE1pbnV0ZW4sIGZhbmQgaWNoIHN1ZXNzOgoKW0FsbGdlbWVpbjpGcm9zY2ggQW5hdG9sXSAtYQpbQWxsZ2VtZWluOkZyb3NjaCBBbmF0b2xdIC1hCltBbGxnZW1laW46RnJvc2NoIEFuYXRvbF0gPwpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gcHJ1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1c3QKW0FsbGdlbWVpbjpGcm9zY2ggQW5hdG9sXSBvaCBpY2ggYXJtZXIgZnJvc2NoCltBbGxnZW1laW46RnJvc2NoIEFuYXRvbF0gaGlsZmUKW0FsbGdlbWVpbjpGcm9zY2ggQW5hdG9sXSBvawoKICAgIGFuIE9tYSBXZXR0ZXJ3YWNocyB2ZXJ6d2VpZmVsbmQuLi4gamFqYSwgaWNoIHF1ZXN0ZSBqYSBzY2hvbiAqZmx1Y2gqCgogICAgICAgIENhcmFkaHJhcyBkZXIgc3RvZWhuZW5kZSBQcm9waGV0LCBhZWggZGVyIGV3aWdlIFByb3BoZXQKICAgICAgICAgICAgICAqdmVyd2lycnQgc2NoYXVlbmQgdW5kIExhYnMgaGFzc2VuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hIHNvd2FzLi4uIChHcmltbWJvcm4sIDEyLiBOb3YgMTk5NCwgMDM6MTQ6NTgpOgoKSG1tLCBpcmdlbmR3ZXIgaGF0dGUgZ2VzY2hyaWViZW4sIGVpbiBlcnphZWhsZSBjYXJhIGJsYWJsYWJsYSB3YWVyZSBkb2NoCmVpbmZhY2guClRhdHNhZWNobGljaC4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmEgc293YXMuLi4gKENhcmFkaHJhcywgMTIuIE5vdiAxOTk0LCAwMzoxNzoyNik6CiMhIHJuPUdyaW1tYm9ybiBydD03ODQ2MDY0OTgKKmJydW1tZWwqIEVyIHR1dHMgdGF0c2FlY2hsaWNoISEhCgpHcmltbWJvcm4gdGVpbHQgRGlyIG1pdDogYmxhYmxhYmxhCipzdG9laG4qCgogICAgICAgICAgIENhcmFkaHJhcyBkZXIgT2JlcmdsYWRpYXRvciwgdXBwcywgZ3JhZGUga2VpbiBQcm9waGV0IG1laHIsCiAgICAgICAgICAgd29obCBzY2huZWxsIFNlaGVyIHdlcmRlbiwgZGFtaXQgaWNoIHdpZWRlciBQcm9waGV0IHNlaW4ga2FubiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hY2h0cyBpbm5lciBLbmVpcGUgKEJ1bmdsZSwgMTIuIE5vdiAxOTk0LCAwODo0MDoxNyk6ClZvciB3ZW5pZ2VuIFN0dW5kZW46CgpJY2ggbXVzcyBtYWwuQXVmJ20gS2xvIHN0ZWh0ICduIEt1bXBlbCB1bmQgYmV3dW5kZXJ0IHNpY2ggYXVzIHp3ZWkgTWV0ZXJuCkVudGZlcm51bmcgaW0gd2luemlnZW4gdmVyZHJlY2t0ZW4gS2xvc3BpZWdlbChtYWNodCB1ZWJlbHN0ZSBWZXJyZW5rdW5nZW4pLgpJY2ggdHVlIHNvIGFscyBoYWV0dGUgaWNoIG5peCBiZW1lcmt0IHVuZCBzdGVsbGUgbWljaCB2b3IncyBQaXNzb2lyLkFscyBpY2gKZmVydGlnIGJpbiwgZ2xvdHp0IGVyIGltbWVyIG5vY2ggaW4gZGFzIERpbmcgcmVpbi4KUGxvZXR6bGljaCBlaW4gdmVyendlaWZlbHRlciBBdWZzY2hyZWk6ICJXYXMgd29sbGVuIGRlbm4gZGllIEZyYXVlbgplaWdlbnRsaWNoID8/ISEhIgoKVGphLEdlc2NoaWNodGVuLCBkaWUgZGFzIExlYmVuIHNjaHJlaWJ0Lk1hZW5uZXIsIHZvbSBMZWJlbiBnZXplaWNobmV0LgoKOykgICBCdW5nbGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5hIHNvd2FzLi4uIChDaWZlciwgMTQuIE5vdiAxOTk0LCAyMDowNDozNSk6CiMhIHJuPUNhcmFkaHJhcyBydD03ODQ2MDY2NDYKRGFzIHdpcmQgd29obCBuaXgsIENhcmEsIHdlaWwgRHUgRGljaCBhbHMgU3BpZWxlciBuaWNodCBtaXQgYmVyZWl0cyBmdWVyCmFuZGVyZSBad2Vja2UgdmVyZ2ViZW5lIFRpdGVsIGJlbmVubmVuIGthbm5zdCAoU3BpZWxlciA9PSBTZWhlciBpbiBkaWVzZW0KRmFsbCkuIEFsc28ga2VpbiBQcm9waGV0IG1laHIsIGplZGVuZmFsbHMgc28gbGFuZ2UgRHUgZGVuIFJlZ2VsbiBlbnRzcHJlY2hlbgp3aWxsc3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5hIHNvd2FzLi4uIChDaWZlciwgMTQuIE5vdiAxOTk0LCAyMDowNTozOCk6CiMhIHJuPUNpZmVyIHJ0PTc4NDgzOTg3NQpBZWgsIGljaCBtZWluIG5hdHVlcmxpY2g6IGtvZW5uZW4ga2FubnN0IER1IHNjaG9uLCBhYmVyIGR1ZXJmZW4gZGFyZnN0IER1Cm5pY2h0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTUctVW16dWcgLSBlaW4gQmVyaWNodCAoS2VybWl0LCAxNC4gTm92IDE5OTQsIDIyOjExOjM3KToKIyEgcm49R3JpbW1ib3JuIHJ0PTc4NDg0MDE3OQoqUHJ1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXN0ISoKS2VybWl0LCBzaWNoIGltbWVyIG5vY2ggbmljaHQgZWlua3JpZWdlbmQgdW5kIHNpY2ggZGllIEZyb3NjaHNjaGVua2VsCnNjaGxhZ2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVtenVncyBuYWNodHJhZyAoR3JpbW1ib3JuLCAxNC4gTm92IDE5OTQsIDIzOjM2OjU0KToKTnVyIG5vY2ggc2ljaGVyaGVpdHNoYWxiZXI6CkhhdGUsIGRlciBBcnRpa2VsIHZvbiBtaXIgenVtIFRoZW1hIFVtenVnIHdhciBuaWNodCBlcm5zdCBnZW1laW50LiBXaXJrbGljaApuaWNodC4gVW5kIGljaCB3b29sbHRlIGRhbWl0IGF1Y2gga2VpbmVuIGtvbnNwaXJhdGl2IGJlbGVpZGlnZW4uLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmEgc293YXMuLi4gKEtyZXRlaywgMTUuIE5vdiAxOTk0LCAxODo1MDozMyk6CiMhIHJuPUNpZmVyIHJ0PTc4NDgzOTkzOAouLi4gQWJlciAiZGVyIGV3aWdlIFNlaGVyIiBtdWVzc3RlIGRvY2ggZ2VoZW4sIG9kZXIsIENpZmVyPyBNYW4gc2llaHQgamEKc2NobGllc3NsaWNoIGF1Y2ggbWFuY2htYWwgKGVpZ2VudGxpY2ggZ2FyIG5pY2h0IFNPIHNlbHRlbi4uLikKImJsdXRpZ2UgQW5mYWVuZ2VyIiBkdXJjaCdzIE1vcmdlbkdyYXVlbiBzY2hsZWljaGVuIQoKYyB1IGw4ZXIhCgoKICAgICAgS3JldGVrLCBDYXJhZGhyYXMgdW50ZXJzdHVldHplbmQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS3JpZWcgZGVyIE1hZXVzZSAoVGlsaW9uLCAxNS4gTm92IDE5OTQsIDE5OjM3OjIwKToKIyEgcm49Q2FyYWRocmFzIHJ0PTc4NDU4OTIyNQpBbHNvLi4uSkVUWlQgTVVTUyBJQ0ggTUFMIFdBUyBEQVpVIFNDSFJFSUJFTgoobWVpbiBlcnN0ZXIgQXJ0aWtlbCBoaWVyOikpICkKSWNoIGhhYiBkYW1hbHMga2VpbmVuIFdhc2NoYmFlcmVuIGdldG9ldGV0LiBXdWVyZGUgaWNoIGFscyBncm9lc3N0ZXIKV2FzY2hiYWVyZW5mYW4KdWViZXJoYXVwdCBuaWUgbmllIG5pZSBtYWNoZW4uCldlbm4gbWFuIGRlbiBzb2dlbmFubnRlbiBXYXNjaGJhZXJlbiBtYWwgZ2VuYXUgYW5zY2hhdXQgc2llaHQgbWFuLCBkYXNzIGRhcwpGZWxsIGdlc3RyZWlmdCBpc3QuIEVpbiByaWNodGlnZXIgV2FzY2hiYWVyIGhhdCBhYmVyCmVpbmVuIGdlc3RyZWlmdGVuIFNjaHdhbnouIChnbGF1YnRzIG1pciAuLi5pY2gga2VubiBtaWNoIGF1czopKSApCldhcyBzY2hsaWVzc2VuIHdpciBkYXJhdXM/IERlciBXYXNjaGJhZXIgaXN0IGtlaW4gV2FzY2hiYWVyIHNvbmRlcm4gZWluCihzY2hsZWNodCkgZ2V0YXJudGVzIFplYnJhLgpEYXMgd2FyIGRlciBHcnVuZCB3YXJ1bSBpY2ggZGVuICJXYXNjaGJhZXJlbiIgdWViZXJoYXVwdCBhbmdlZ3JpZmZlbiBoYWIuClplYnJhcyBnaWJ0IGVzIDEuIGdlbnVnIHVuZCAyLiBzaW5kIGRpZSBsYWVuZ3RzIG5pY2h0IHNvb29vbwpuaWVkbGljaC4uLi4KVFNDSFVFU1NJRQpUaWxpb24sIEhpam8gZGUgbGEgTHVuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLcmllZyBkZXIgTWFldXNlIChDYXJhZGhyYXMsIDE1LiBOb3YgMTk5NCwgMjA6MDE6MjUpOgojISBybj1UaWxpb24gcnQ9Nzg0OTI0NjQwCiAgICAgICAgICAgICAgICAgQWxsbGxsbGxzby4uLgoKVWViZXIgVGlsaW9ucyBBdXNyZWRlbiB3aWxsIGljaCBnYXIgbmljaHQgcmVkZW4sIGRlbm4gd28gV2FzY2hiYWVyIGRyYXVmLQpzdGVodCBpc3QgYXVjaCBXYXNjaGJhZXIgZHJpbiwgamF3b2hsISA6LSkgQWJlciB3ZW5uIGRhcyB3YWhyIHNlaW4gc29sbHRlLApkYXNzIG1hbiBhbHMgU2VoZXIgc2ljaCBuaWNodCBtZWhyIFByb3BoZXQgbmVubmVuIGRhcmYsIHdvIGljaCBkb2NoIHNjaG9uCnVlYmVyIDEgSmFociwgaG0sIHNlaXQgSnVuaSA5MyBvZGVyIHNvLCBMZXZlbCAxOSBiaW4gdW5kIGRhbWFscyBkYXMgbm9jaApQcm9waGV0IHVuZCBuaWNodCBhbmdlaGVuZGVyIFNlaGVyIG9kZXIgTWFnZ2llIGhpZXNzLCB1bmQgZGFzIGpldHp0IGFscwpTZWhlciBuaWNodCBzZWluIGRhcmYsIHNlaGUgaWNoIGdhciBuaWNodCBlaW4uIEljaCBmdWVocmUgbWFsIGRhcyBkcmF1Zgp6dXJ1ZWNrLCBkYXNzIGVzIGRpZSAnU2NobWFycm4nLUdydXBwZSBoaWVyIGlzdCB1bmQgQ2lmZXIgbnVyIFNjaG1hcnJuCmVyemFlaGx0LiBEZW5uIHNvbnN0IHdlcmRlIGljaCBrZWluIFNlaGVyIHVuZCB0cmV0ZSBpbiBTdHJlaWsgOikKSWNoIGJpbiBudSBtYWwgUHJvcGhldCB1bmQgYmxlaWJlIGVzIGF1Y2ghIEF1Y2ggYWxzIFNlaGVyISBKYXdvaGxqYS4KCiAgICAgKmJydW1tZWxuZCogICAgICAgQ2FyYWRocmFzIGRlciBld2lnZSBQcm9waGV0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBLcmllZyBkZXIgTWFldXNlIChUaWxpb24sIDE1LiBOb3YgMTk5NCwgMjA6MDU6MzYpOgojISBybj1DYXJhZGhyYXMgcnQ9Nzg0OTI2MDg1CmVzaXN0ZWluemVicmFlc2lzdGVpbnplYnJhZXNpc3RlaW56ZWJyYS4uYmFzdGEKOikpKSkpKQpUaWxpb24sIFplYnJhcyBqYWdlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEtyaWVnIGRlciBNYWV1c2UgKENhcmFkaHJhcywgMTUuIE5vdiAxOTk0LCAyMzowMToxMSk6CiMhIHJuPVRpbGlvbiBydD03ODQ5MjYzMzYKClF1YXRzY2ghIER1IGJpc3QgYXVjaCBlaW4gWmVicmEsIG9sbGVzIEh1aG4gRHUgOi0pCgpIdWVobmVyemVicmEsIGhtLCBhcHJvcG9zIFN0cmVpZmVuLCBkYSBmYWVsbHQgbWlyIGVpbiBSZXplcHQuLi4gYXVhIGF1YSwKaWNoIGJpbiBqYSBzY2hvbiBydWhpZyA6LSkKCiAgICAgICAgIENhcmFkaHJhcyBkZXIgZXdpZ2UgUHJvcGhldCAoYW4gZWluZW0gQnVjaCBzY2hyZWliZW5kKQogICAgIChUaXRlbDogRXhwbG9kaWVyZW5kZSBTdGVpbmUgc2VoZW4gdW5kIHN0ZXJiZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoYWNoamEgKnNldWZ6KiAoQ2FyYWRocmFzLCAxNi4gTm92IDE5OTQsIDAzOjIyOjM4KToKIkRpZSBzY2hvZW5lbiBUYWdlIHZvbiBNb3JnZW5HcmF1ZW4gc2luZCBudW4gdm9ydWViZXIuIgoKQ2FyYWRocmFzIHJleml0aWVydCBTY2hpbGxlciB1bmQgZ2VodCBpbiBkZXIgYW5vbnltZW4gU3VwcGUgZGVyIFNlaGVyCnVudGVyLiBTdXBwZT8gSHVuZ2VyISEhISEKRXIgaXN0IGRvY2ggbm9jaCBkZXIgZ2xlaWNoZSA6LSkpKSkpKSkKCiAgICAgICAgZnJvZWhsaWNoIGRhdm9uaHVlcGZlbmQKICAgICAgICAgICAgICAgQ2FyYWRocmFzIGRlciBld2lnZSBQcm9waGV0IChhdWYgZXdpZyAoYWNoIG5lZWUgOikpClBTOiBBbHMgTGV2ZWwgMTkgZXR3YSAzNi41IE1pbGxpb25lbiBFUCB2ZXJsb3Jlbiwgd2llIHZpZWxlIHdlcmRlIGljaCBhbHMKU2VoZXIgdmVybGllcmVuPyBJY2ggd2Vpc3MgbnVyLCBpY2ggc3BpZWwgamV0enQgcmlzaWtvZnJldWRpZ2VyIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogS3JpZWcgZGVyIE1hZXVzZSAoVGlsaW9uLCAxNi4gTm92IDE5OTQsIDE2OjIyOjI1KToKIyEgcm49Q2FyYWRocmFzIHJ0PTc4NDkzNjg3MQpIdWhuIFplYnJhIEJhaG5ob2YgUmV6ZXB0Pz8/CkVnYWwuLi5hYmVyIHdhcnVtIEV4cGxvZGllcmVuZGUgU3RlaW5lIHNlaGVuIHVuZCBzdGVyYmVuPyBpY2ggbmllCmdlc3RvcmJlbiBzZWluIHR1biBoYWJlbiBiZWkgZXhwbG9kaWVyZW5kZSBTdGVpbmU6KSkpCkVnYWwuLi5hYmUgcndvIHdpciBnZXJhZGUgZGFiZWkgc2luZD8gV3VyZGUgZGVyIFdhc2NoYmFlciBqZXR6dCBzY2hvbgp6dSBlaW5lbSByaWNodGlnZW4gV2FzY2hiYWVyZW4gZ2VtYWNodD8gSWNoIGhvZmZlIG5pY2h0OykKVGlsaW9uLCBoYXQgd2FzIGdlZ2VuIFdhc2NoYmFlcmVua2lsbGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLcmllZyBkZXIgLi4uIChMb2NvLCAxNi4gTm92IDE5OTQsIDE4OjIwOjAzKToKVW5kIGpldHp0IGF1Y2ggbm9jaCBLcmllZyBkZXIgQW1waGliaWVuPwoKW01vZXJkZXI6R2Vpc3QgZWluZXIgS3JvZXRlXSBVbmdsYXVibGljaCwgd2llIGhhdCBkYXMgZWluIEZyb3NjaCBnZXNjaGFmZnQ/CgouLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEtyaWVnIGRlciBNYWV1c2UgKEJvaW5nLCAxNy4gTm92IDE5OTQsIDExOjU5OjIwKToKIyEgcm49Q2FyYWRocmFzIHJ0PTc4NDkyNjA4NQpXaWVzbyBzb2xsdGUgbWFuIHNpY2ggYWxzIFNlaGVyIG5pY2h0ICdQcm9waGV0JyBuZW5uZW4gZHVlcmZlbj8KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS3JpZWcgZGVyIE1hZXVzZSAoR3JpbW1ib3JuLCAxNy4gTm92IDE5OTQsIDEyOjEyOjI2KToKIyEgcm49Qm9pbmcgcnQ9Nzg1MDY5OTYwCklzdCBkb2NoIGtsYXIsIHdhcnVtIG1hbiBzaWNoIGFscyBTZWhlciBuaWNodCBQcm9waGV0IG5lbm5lbiBkdWVyZmVuIHNvbGw6CkltIE1hZ2llcnZlcnRyYWcgc3RlaHQgZWluIGVudHNwcmVjaGVuZGVyIFBhc3N1cywgZGFzcyBNYWdpZXIgc2ljaCBuaWNodApUaXRlbCBnZWJlbiBkdWVyZmVuLCBkaWUgYW4gU3BpZWxlcnRpdGVsIGVyaW5uZXJuLgoKTWFuY2hlbiBpc3QgaGFsdCBkZXIgVW50ZXJzY2hpZWQgendpc2NoZW4gU2VoZXJuIHVuZCBNYWdpZXJuIG5pY2h0IHNvIGtsYXIuLi4KCkZ1ZXIgS2xhcmhlaXQgc29yZ2VuZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnByb3BoZXRlbiB1bmQgY28uIChTdGFobGRvcm4sIDE3LiBOb3YgMTk5NCwgMTI6MTk6NDApOgoKV2llIHdhZXJzLCB3ZW5uIENhcmFkaHJhcyBzaWNoIG5pY2h0ICJkZXIgUHJvcGhldCIgc29uZGVybiAiZGVyIGV3aWdlClByb3BoZXQiIG5lbm50ID8KU28gdW50ZXJzY2hyZWlidCBlciBkb2NoIGF1Y2gsIHVuZCBuaWVtYW5kIGthbm4gZGFzIG1laHIgbWl0IGVpbmVtClNwaWVsZXJ0aXRlbCB2ZXJ3ZWNoc2Vsbi4KCiAgICAgICAgICAgICBudXIgZWluIFZvcnNjaGxhZywgU1RBSEwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBLcmllZyBkZXIgTWFldXNlIChSYWlzdGxpbiwgMTcuIE5vdiAxOTk0LCAxMjo0Nzo0Nyk6CiMhIHJuPUdyaW1tYm9ybiBydD03ODUwNzA3NDYKSG9sbGEsCnN0ZWh0IHNvIHdhcyBpbSBWZXJ0cmFnPz8gU2VsdHNhbSBtdXNzIHZvcm0gVW50ZXJzY2hyZWliZW4gYW4gbWlyCnZvcmJlaWdlcmF1c2NodCBzZWluIDopCldhcnVtIHNvbGx0ZSBDYXJhZGhyYXMgc2ljaCBuaWNodCBQcm9waGV0IG5lbm5lbj8gTWFsIGRhdm9uIGFiZ2VzZWhlbiwgZGFzcwpDYXJhZGhyYXMgd29obCBqZWRlciBpbSBNZyBrZW5udCwgc28gd2llIEFzbW9kaXMgOiksIGthbm4gc2ljaCBlaW4gamVkZXIgbWl0CmVpbmVtIGVpbmZhY2hlbiAnZmluZ2VyJyBCZWZlaGwgS2FyaGVpdCB2ZXJzY2hhZmZlZW4uCgpTZWUgWWEhCiAgICAgICBSYWlzdGxpbiAoYXVjaCBzY2hvbiBhbHMgTGFuZHN0cmVpY2hlciB1bnRlcndlZ3MgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBwcm9waGV0ZW4gdW5kIGNvLiAoQ2FyYWRocmFzLCAxNy4gTm92IDE5OTQsIDE2OjE3OjQ1KToKIyEgcm49U3RhaGxkb3JuIHJ0PTc4NTA3MTE4MAoKTmVpbiwgaWNoIG5lbm5lIG1pY2ggbmljaHQgJ2RlciBld2lnZSBQcm9waGV0JyEgU29uZGVybiBpY2ggc2NocmVpYmUgbnVyCnNvIHVudGVyICgqa2ljaGVyKiB3YXMgZnVlciBlaW4gZGV1dHNjaCkgd2VpbCBpY2ggZGVyIGJpbiwgZGVyIGFtIGxhZW5nc3RlbgpQcm9waGV0IGluIE1HIHdhciBvaG5lIGRhc3MgZWluIE1hZ2dpZSBkcmFuIHJ1bWdlc3BpZWx0IGhhdCwgbmFlbWxpY2gKYWVobSAqZ3J1ZWJlbCogMTUgTW9uYXRlIG9kZXIgc28sIG9kZXIgMTc/ICpncnVlYmVsKiBhdWYgYWxsZSBGYWVsbGUKPj0gMTUgOi0pIHVuZCBtZWluZW4gUHJvcGhldGVuIGxhc3MgaWNoIG1pciBuaWNodCBuZWhtZW4sIG1pdHRsZXJ3ZWlsZQpoZWlzc2UgaWNoIGphIHNvZ2FyIGluIFVOSXRvcGlhIHNvLiAqZ3JpbnMgZnJvZWhsaWNoKgoKICAgICB0c2Nob2UKICAgICAgICAgICAgICAgICBDYXJhZGhyYXMgZGVyIGV3aWdlIFByb3BoZXQgLSB3ZWl0ZXIgZnJvZWhsaWNoIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgo/Pz8hISEgKEdyaW1tYm9ybiwgMTguIE5vdiAxOTk0LCAwMToyNToyMCk6CgpTbywgaWNoIHdpZWRlcmhvbGUgZXMgbm9jaG1hbDoKV2VyIHdhcyB2b24gbWlyIG1vZWNodGUgdW5kIG1laHIgYWxzIGVpbiBTYXR6emVpY2hlbiB3aWUgIiEiIG9kZXIgIj8iCmFuaGFlbmd0LCBzb2xsdGUgbmljaHQgdW5iZWRpbmd0IG1pdCBlaW5lciBicmF1Y2hiYXJlbiBBbnR3b3J0IHJlY2huZW4uIERhcwplbXBmaW5kZSBpY2ggbmFlbWxpY2ggYWxzIGVpbmVuIFNjaHJpdHQgaW4gUmljaHR1bmcgTm9ldGlndW5nLCB1bmQgZGFzIGhhYiBpY2gKbmljaHQgbm9ldGlnLi4uCgpOaWNodCBkYXNzIGljaCBzb25zdCBoaWxmc2JlcmVpdCB3YWVyZS4uLiA7LSkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogS3JpZWcgZGVyIE1hZXVzZSAoS3JldGVrLCAxOC4gTm92IDE5OTQsIDAzOjM3OjUxKToKIyEgcm49R3JpbW1ib3JuIHJ0PTc4NTA3MDc0NgpTY2hvbiB3aXR6aWcsIGRhc3MgR3JpbW1ib3JuIGpldHp0IEJvaW5nIGJlbGVocnQuLi4KCkZpbmRldAogICAgS3JldGVrLCBkZXIgZXdpZ2UgTm9lcmdsZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEtyaWVnIGRlciBNYWV1c2UgKEJvaW5nLCAxOC4gTm92IDE5OTQsIDEyOjI2OjAyKToKIyEgcm49S3JldGVrIHJ0PTc4NTEyNjI3MQpFciB2ZXJzdWNodCAoISEpIG1pY2ggenUgYmVsZWhyZW4gLi4uIGlobSBpc3Qgb2ZmZW5zaWNodGxpY2ggbmljaHQga2xhciwKZGFzcyBTZWhlciBTcGllbGVyIHNpbmQgLi4uIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJlbGVocnVuZyAoR3JpbW1ib3JuLCAxOC4gTm92IDE5OTQsIDEzOjIwOjU4KToKCk51ciBzb3ZpZWw6IERhcyBtaXQgTWFnaWVydmVydHJhZyB1bmQgZGVtIFVudGVyc2NoaWVkIHp3aXNjaGVuIFNwaWVsZXJuIHVuZApTZWhlcm4gYmV6b2cgc2ljaCBhdWYgZGllamVuaWdlbiwgZGllIG1laW50ZW4sIFNlaGVyIERVRVJGVEVOIHNpY2ggbmljaHQKUHJvcGhldCBuZW5uZW4uIERhcyB3YWVyZSBhbHNvIGluIGRlbSBGYWxsIENpZmVyLi4uCkFtIHJlcGx5IHNvbGx0ZSBtYW4gbm9jaCBhcmJlaXRlbiwgd2VubiBpY2ggYXVmIGVpbmVuIGdlYW50d29ydGV0ZW4gQXJ0aWtlbAphbnR3b3J0ZSBzb2xsdGUgZGEgZGVyIEJlenVnIG5pY2h0IGRlciB1cnNwcnVlbmdsaWNoZSBBcnRpa2VsIHNlaW4/IE9kZXIKbmljaHQ/IEhtbW0uLi4gKmRlbmsqICpRdWFsbSBhdXMgT2hyZW4gc3Ryb2VtKgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmVsZWhydW5nIChMb2NvLCAxOC4gTm92IDE5OTQsIDE1OjU3OjI0KToKIyEgcm49R3JpbW1ib3JuIHJ0PTc4NTE2MTI1OApOZWluLiBFaW5lIEFudHdvcnQgYXVmIGVpbmUgQW50d29ydCBpc3QgZWluZSBBbnR3b3J0IGF1ZiBkaWUgQW50d29ydCB1bmQKbmljaHQgYXVmIGRlbiBlcnN0ZW4gQXJ0aWtlbC4gVGlwOiBEZW4gZXJzdGVuIEFydGlrZWwgbm9jaG1hbCBrdXJ6IGFubGVzZW4KKCdhcnRpa2VsIDxucj4nLCB3ZW5uIGVzIGVpbiBsYWVuZ2VyZXIgaXN0LCBrYW5uIG1hbiBqYSBnbGVpY2ggd2llZGVyIG1pdCBxCnJhdXMpLCB1bmQgZGFubiBhbnR3b3J0ZW4uCiAgLSBMb2NvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBLcmllZyBkZXIgTWFldXNlIChDaWZlciwgMTguIE5vdiAxOTk0LCAxODoxNzo1OSk6CiMhIHJuPUdyaW1tYm9ybiBydD03ODUwNzA3NDYKSWNoIHdhciBhdWNoIG1hbCBTZWhlciwgdW5kIGR1cmZ0ZS9zb2xsdGUgbWljaCBkYW1hbHMgbmljaHQgImJsdXRpZ2VyCkFuZmFlbmdlciBuZW5uZW4uIE5pY2h0LCBkYXNzIHNpY2ggd2lya2xpY2ggamVtYW5kIGJlc2Nod2VydCBoYWV0dGUsIGFiZXIgaWNoCnd1cmRlIGF1ZiBkaWVzZW4gR3J1bmRzYXR6IGRlciB2ZXJ3ZWNoc2VsYmFyZW4gVGl0ZWwgaGluZ2V3aWVzZW4gKHdlaXNzIG51cgpuaWNodCBtZWhyLCB2b24gd2VtKS4KSXN0IGphIGF1Y2ggZWdhbC4gTWljaCBzdG9lcnRzIG5pY2h0LCB3ZW5uIENhcmEqIFByb3BoZXQgYmxlaWJlbiB3aWxsLgoKQ2lmZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkphamEsIGRpZSBFaXRlbGtlaXQgKENhcmFkaHJhcywgMTkuIE5vdiAxOTk0LCAwODo1OToxMik6ClNvIHNpbmQgc2llLCBkaWUgTXVkZGVyOgoKPiBXdXIgZnJhZ3Q6IEthbm4gbWFuIG1pdCBkZXIga3JvbmUgd2FzIGFuZmFuZ2VuPwoncnVlc3R1bmcKRHUgc2Fnc3Q6IHJ1ZXN0dW5nCld1ciBmcmFndDogVW5kIGlzdCBkaWUgZ3V0PwpFcm9zIHNhZ3Q6IGFiZXIgbmljaHQgYmVzb25kZXJzCkR1IHNhZ3N0OiBzbyBndXQgd2llIGVpbiBsaWNodGhlbG0gZ2xhdWJlIGljaCwgYWJlciBzY2h3ZXJlcgo+IFd1ciB6aWVodCBlaW5lbiBPcmtoZWxtIGF1cy4KV3VyIHppZWh0IGVpbmUgS3JvbmUgYW4uCld1ciBzYWd0OiBzaWVodCBhYmVyIHNjaG9lbiBhdXMKU2thbGxhZ3JpbSBydWZ0OiBpY2ggYmluIHNvIGR1bW1tbW1tbSAhISEhISEhIQpXdXIgZ3JpbnN0LgpXdXIgc2FndDogPEhpY2s+IQpFcm9zIHNhZ3Q6IHZlcmdsZWljaCBsaWViZXIKRHUgc2Fnc3Q6IGRpZSBrcm9uZSB2b20ga3Jpc3RhbGxkcmFjaGUgaXN0IGJlc3Nlciwgc292aWVsIGljaCB3ZWlzcwpXdXIgc2FndDogc2llaHQgYWJlciBzY2hvZW5yIGF1cwpEdSBzYWdzdDogbWl0IGRlbiBrcmlzdGFsbGVuIG5hdHVlcmxpY2gKPiBraWNoZXJlCkR1IGtpY2hlcnN0LiAoV2llIGFsYmVybiB2b24gRGlyKQo+IHdhZWx6ZQpEdSB3YWVsenQgRGljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uCkR1IGRlbmtzdCAgIC4gbyBPIChlaXRlbCBzZWkgZGVyIE1lbnNjaCwgV3VyIHVuZCBndXQpCgogICBmcm9laGxpY2ggWndlcmdlbmtvZW5pZ2UgdW1sZWdlbmQKCiAgICAgICAgQ2FyYWRocmFzIGRlciBld2lnZSBQcm9waGV0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp6ZWl0IChUb2V0ZXIsIDIwLiBOb3YgMTk5NCwgMDE6Mzg6MjgpOgpBY2hqYSwgZWJlbiBub2NoIGdlc2VoZW46CgoKPiBmaSBpZGxlCklkbGUgaXN0IGVpbmdlbG9nZ3QsCnVuZCB6d2FyIHZvbjogTXVlbnN0ZXIuCklkbGUtWmVpdDogMmQgMDY6NDc6MjQKVm9sbGVyIE5hbWU6IElkbGUgZGllIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlcmluClJhc3NlOiBad2VyZywgICAgR2VzY2hsZWNodDogd2VpYmxpY2gKQWx0ZXI6IDJkIDA1OjI5OjA2ICAgU3BpZWxlcmxldmVsOiAxCktlaW5lIC5wbGFuLURhdGVpLgoKTWFuIGJlYWNodGUgZGllIG5lZ2F0aXZlIERpZmZlcmVueiB2b24gQWx0ZXIgdW5kIElkbGUtWmVpdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2F1c3RhbGwgKEtub2VycnksIDIwLiBOb3YgMTk5NCwgMjI6MDE6NDIpOgpIaWVyIGhhdCBkZXIgR2FuZyBkdXJjaCBkYXMgZWlzaWdlIExhYnlyaW50aCB0YXRzYWVjaGxpY2ggZWluIEVuZGUsIHVuZAp3dW5kZXJiYXJlcndlaXNlIGlzdCBlcyBhdWNoIG5pY2h0IG1laHIgZ2FueiBzbyBrYWx0IHdpZSBpbSBPc3Rlbi4gRWluZQpMZWl0ZXIgZnVlaHJ0IGR1cmNoIGVpbiBMb2NoIGluIGRlciBEZWNrZSBuYWNoIG9iZW4sIGRlc3NlbiBSYWVuZGVyIG1pdAplaW5lbSBtZXJrd3VlcmRpZ2VuIFNjaGxlaW0gdmVyc2NobWllcnQgc2luZC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuIHVuZCBvYmVuLgpFaW4gRWlzcmllc2UuCkVpbiBFaXNzY2h3ZXJ0LgpFaW4gRWlzc2Nod2VydC4KRWluIEVpc3NjaHdlcnQuCkVpbiBFaXNzY2h3ZXJ0LgpFaW4gRWlzc2Nod2VydC4KRWluIEVpc3NjaHdlcnQuCkVpbiBFaXNzY2h3ZXJ0LgpFaW4gRWlzc2Nod2VydC4KRWluIEVpc3NjaHdlcnQuCkVpbiBFaXNzY2h3ZXJ0LgpFaW4gRWlzc2Nod2VydC4KRWluIEVpc3NjaHdlcnQuCkVpbiBFaXNzY2h3ZXJ0LgpFaW4gRWlzc2Nod2VydC4KRWluIEVpc3NjaHdlcnQuCkVpbiBFaXNzY2h3ZXJ0LgpFaW4gRWlzc2Nod2VydC4KRWluIEVpc3NjaHdlcnQuCkVpbiBFaXNzY2h3ZXJ0LgpFaW4gRWlzc2Nod2VydC4KRWluIEVpc3NjaHdlcnQuCkVpbiBFaXNzY2h3ZXJ0LgpFaW4gRWlzc2Nod2VydC4KRWluIEVpc3NjaHdlcnQuCkVpbiBFaXNzY2h3ZXJ0LgpFaW4gRWlzc2Nod2VydC4KCgouLi5rZWluIEtvbW1lbnRhci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2F1c3RhbGwgMiAoS25vZXJyeSwgMjAuIE5vdiAxOTk0LCAyMjowNToyOSk6CkR1IGJpc3QgaW0gSG9laGxlbmxhYnlyaW50aCBkZXIgU2NocmVja2Vuc3NwaXR6ZS4gRWluZSBrbGVpbmUgUXVlbGxlIHRyaXR0CmhpZXIgYXVzIGRlciBXYW5kLCBhYmVyIGRhcyBXYXNzZXIgdmVyc2lja2VydCBzb2ZvcnQgd2llZGVyIGluIGRlciBmZXVjaHRlbgpFcmRlLiBHcnVlbmVzIEdyYXMgd2FlY2hzdCBhdWYgZGVtIEJvZGVuIHVuZCBhbiBkZW4gV2FlbmRlbiByYW5rZW4gRWZldQp1bmQgYW5kZXJlIEtsZXR0ZXJwZmxhbnplbi4gSW0gUGZsYW56ZW5nZXdpcnIga2FubnN0IER1IFdlZ2UgaW4gUmljaHR1bmcKTm9yZGVuLCBTdWVkZW4gdW5kIFdlc3RlbiBlcmtlbm5lbi4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG5vcmRlbiwgd2VzdGVuIHVuZCBzdWVkZW4uCkVpbiBUZW50YWtlbG1vbnN0ZXIuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCgoKCkhhbHRldCBldXJlICBTY2hyZWNrZW5zc3BpdHplIHJlaW4gISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzYXVzdGFsbCAyIChHdWxkdWthdCwgMjAuIE5vdiAxOTk0LCAyMjoxMzozNyk6CiMhIHJuPUtub2VycnkgcnQ9Nzg1MzY1NTI5ClVudGVyIGRpZXNlbiBVbXN0YWVuZGVuIGJpbiBpY2ggYmVyZWl0LCBLbm9lcnJ5IHp1bSBPYmVybXVlbGxtYW5uIHp1CmJlZm9lcmRlcm4hIERhenUgZ2Vob2VydCBlaW4gYW5kZXJlciBUaXRlbDogS25vZXJyeSBkZXIgT2Jlck11ZWxsbWFubiwgZWluCkJlc2VuIChBdXRvbG9hZCBuYXR1ZXJsaWNoKSB1bmQgZWluIE11ZWxsZWltZXIsIGRlbiBlciBtaXQgc2ljaCBydW1zY2hsZXBwZW4KZGFyZi4gRGF6dSBrb21tdCBkYW5uIGRpZSBQZmxpY2h0LCBqZWRlcnplaXQgaW4gZGVyIFNTUCBuYWNoIGRlbSBSZWNodGVuIHp1CnNlaGVuIHVuZCBnZWdlYmVuZW5mYWxscyBhdWZ6dXJhZXVtZW4uCkljaCBob2ZmZSwgZGllc2VyIEFudHJhZyBmaW5kZXQgVW50ZXJzdHVldHp1bmcgYmVpIGRlciBNYWdpZXItU2NoYWFyIHVuZAp2ZXJibGVpYmU6CgpEaXNtaXNzZWQsIEdECgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2F1c3RhbGwgKEZsaW50bmFpbCwgMjEuIE5vdiAxOTk0LCAwODo0OTo0Nik6CiMhIHJuPUtub2VycnkgcnQ9Nzg1MzY1MzAyCi4uLm9oLi4uaGF0IENhcmFkIHdpZWRlciBFaXNyaWVzZW4gZ2VqYWd0Pz8/OikKICAgICAgIEZsaW50bmFpbC4uLjspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzYXVzdGFsbCAoS2V0b3MsIDIxLiBOb3YgMTk5NCwgMTA6MDI6MjEpOgpXaWUgd2FlcnMgbWl0IGVpbmVtIEFsbGVzZnJlc3NlciwgZGVyIGR1cmNoIExhYnlyaW50aCBsYXVlZnQgdW5kIGRlbiBNdWVsbAphdWZmcmlzc3QgOikKLSBLZXRvcyAtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaXNzY2h3ZXJ0ZXIgKEdyaW1tYm9ybiwgMjEuIE5vdiAxOTk0LCAxMTozNDo0Nyk6CgpIbW0sIGRpZSBCbGFldHRlciBzaW5kIHdpcmtsaWNoIGFlcmdlcmxpY2gsIGFiZXIgYmVpIGRlbiBFaXNzY2h3ZXJ0ZXJuIGthbm4KaWNoIG51ciBzYWdlbjogV2FzIGxhZXVmc3QgRHUgYXVjaCBtaXQgTGljaHQgcnVtPyBEZXIgZ3Jvc3NlIFZvcnRlaWwgZGVyIFNTUApnZWdlbnVlYmVyIGRlbSBHb2JsaW5sYWdlciBpc3QgZG9jaCBnZXJhZGUsIGRhc3MgbWFuIGRlbiBNdWVsbCBncm9lc3N0ZW50ZWlscwpuaWNodCBzZWhlbiBtdXNzLgoKVmVyc3RhZW5kbmlzbG9zIGRlbiBLb3BmIHNjaHVldHRlbG5kLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGF0ZW5waW5ncG9uZyAoR3JpbW1ib3JuLCAyMS4gTm92IDE5OTQsIDEyOjMzOjQ5KToKV2VubiBtYW4gd2FlaHJlbmQgZWluZXMgbGFncyBoaWVyIGluIFNjaHdlZGVuIGVpbmZhY2ggbWFsIGVpbiB0cmFjZXJvdXRlCm1hY2h0IHVtIHp1IHNlaGVuLCB3YXMgZWlnZW50bGljaCBqZXR6dCB3ZWlkZXIgbG9zIGlzdCBrYW5uIG1hbiBzZWhlbiwgd2llCkRhdGVuIGhpbi0gdW5kIGhlcmdlc2NoaWNrdCB3ZXJkZW4uIERhcyBzaWVodCBkYW5uIHNvIGF1czoKdHJhY2Vyb3V0ZSB0byBzYW50YW5hLnVuaS1tdWVuc3Rlci5kZSAoMTI4LjE3Ni4xNzUuMTMpLCAzMCBob3BzIG1heCwgNDAgYnl0ZQpwYWNrZXRzCiAxICBjdGg5N2EtZ3cuY2hhbG1lcnMuc2UgKDEyOS4xNi45Ny4xKSAgMiBtcyAgMyBtcyAgMyBtcwogMiAgY3RoLWd3LmNoYWxtZXJzLnNlICgxMjkuMTYuMS40KSAgMyBtcyAgMyBtcyAgMyBtcwogMyAgZ2JnMS1jdGgtZmRkaS1ndy5jaGFsbWVycy5zZSAoMTI5LjE2LjIuNTEpICAzIG1zICAyIG1zICAyIG1zCiA0ICBzdGhsbS1nYmctMzRtLWd3LmdiZy5zdW5ldC5zZSAoMTkzLjEwLjg1LjE3KSAgNjAgbXMgIDYzIG1zICA1MyBtcwogNSAgdXBwZXItZ3cuc3VuZXQuc2UgKDE5My4xMC44MC4zMykgIDIyIG1zICAyMiBtcyAgMjIgbXMKIDYgIGxvd2VyLWd3LnN1bmV0LnNlICgxOTMuMTAuODAuMzQpICAyNSBtcyAgMjcgbXMgIDMxIG1zCiA3ICB1cHBlci1ndy5zdW5ldC5zZSAoMTkzLjEwLjgwLjMzKSAgNDEgbXMgIDMzIG1zICAzMiBtcwogOCAgbG93ZXItZ3cuc3VuZXQuc2UgKDE5My4xMC44MC4zNCkgIDM3IG1zICA1MyBtcyAgNTIgbXMKIDkgIHVwcGVyLWd3LnN1bmV0LnNlICgxOTMuMTAuODAuMzMpICA3NiBtcyAgNjcgbXMgIDU2IG1zCjEwICBsb3dlci1ndy5zdW5ldC5zZSAoMTkzLjEwLjgwLjM0KSAgNzIgbXMgIDgzIG1zICA4MyBtcwoxMSAgdXBwZXItZ3cuc3VuZXQuc2UgKDE5My4xMC44MC4zMykgIDg4IG1zICAxMTMgbXMgIDExMiBtcwoxMiAgbG93ZXItZ3cuc3VuZXQuc2UgKDE5My4xMC44MC4zNCkgIDEyNyBtcyAgMTM4IG1zICAxNDcgbXMKMTMgIHVwcGVyLWd3LnN1bmV0LnNlICgxOTMuMTAuODAuMzMpICAxNDcgbXMgIDE1NCBtcyAgMTc2IG1zCjE0ICBsb3dlci1ndy5zdW5ldC5zZSAoMTkzLjEwLjgwLjM0KSAgMjE1IG1zICAyMTQgbXMgKgoqKiogbW9yZTogcSx4LGQsdSxiLC88cmVnZXhwPixuICoqKgoKMTUgIHVwcGVyLWd3LnN1bmV0LnNlICgxOTMuMTAuODAuMzMpICAyMjEgbXMgIDI0NiBtcyAqCjE2ICBsb3dlci1ndy5zdW5ldC5zZSAoMTkzLjEwLjgwLjM0KSAgMTA5IG1zICAxMTQgbXMgIDEwNiBtcwoxNyAgdXBwZXItZ3cuc3VuZXQuc2UgKDE5My4xMC44MC4zMykgIDEzNiBtcyAgMTczIG1zICAyMDIgbXMKMTggIGxvd2VyLWd3LnN1bmV0LnNlICgxOTMuMTAuODAuMzQpICAyNTAgbXMgIDI2NyBtcyAgMzI2IG1zCjE5ICAqICogdXBwZXItZ3cuc3VuZXQuc2UgKDE5My4xMC44MC4zMykgIDE5NyBtcwoyMCAgbG93ZXItZ3cuc3VuZXQuc2UgKDE5My4xMC44MC4zNCkgIDIzNiBtcyAgMjczIG1zICAyOTIgbXMKMjEgIHVwcGVyLWd3LnN1bmV0LnNlICgxOTMuMTAuODAuMzMpICAzNzEgbXMgIDM5NSBtcyAgNDY1IG1zCjIyICBsb3dlci1ndy5zdW5ldC5zZSAoMTkzLjEwLjgwLjM0KSAgNTE4IG1zICA1NjYgbXMgIDIwMCBtcwoyMyAgdXBwZXItZ3cuc3VuZXQuc2UgKDE5My4xMC44MC4zMykgIDk3IG1zICAxMTkgbXMgIDEzNiBtcwoyNCAgbG93ZXItZ3cuc3VuZXQuc2UgKDE5My4xMC44MC4zNCkgIDE3OCBtcyAgMjE5IG1zICAyNjggbXMKMjUgIHVwcGVyLWd3LnN1bmV0LnNlICgxOTMuMTAuODAuMzMpICAyNzUgbXMgIDMxMiBtcyAgMzk0IG1zCjI2ICBsb3dlci1ndy5zdW5ldC5zZSAoMTkzLjEwLjgwLjM0KSAgNDU0IG1zICA0NTYgbXMgIDUwNyBtcwoyNyAgKiB1cHBlci1ndy5zdW5ldC5zZSAoMTkzLjEwLjgwLjMzKSAgMTYzIG1zICAxNzcgbXMKMjggIGxvd2VyLWd3LnN1bmV0LnNlICgxOTMuMTAuODAuMzQpICAxOTMgbXMgIDI1MSBtcyAgMzIwIG1zCjI5ICB1cHBlci1ndy5zdW5ldC5zZSAoMTkzLjEwLjgwLjMzKSAgNDk3IG1zICA0NzEgbXMgIDU1MyBtcwozMCAgbG93ZXItZ3cuc3VuZXQuc2UgKDE5My4xMC44MC4zNCkgIDY1NSBtcyAqICoKCklzdCBkb2NoIGludGVyZXNzYW50LCB3b21pdCBzaWNoIGRpZSBMZXV0ZSBzbyBkaWUgWmVpdCB2ZXJ0cmVpYmVuLi4uCgpWb2VsbGlnIHZvbiBkZXIgbW9kZXJuZW4gVGVjaG5payBmYXN6aW5pZXJ0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzYXVzdGFsbCAoQ2FyYWRocmFzLCAyMS4gTm92IDE5OTQsIDEzOjIxOjMxKToKIyEgcm49RmxpbnRuYWlsIHJ0PTc4NTQwNDE4NgogICAgICAgICAgICAgICAgICAgICAgICAgSHVodQoKSWNoPyBOb2UsIGljaCB3YXIgYnJhdiB3aWUgaW1tZXIuIE5hIGphLCBiZWluYWhlIGltbWVyLgpEYXMgbGV0enRlIG1hbCwgYWxzIGljaCBtZWhyZXJlIFNjaHdlcnRlciBkYSBvYmVuIGhhYiBsaWVnZW4gbGFzc2VuLAp3YXJlbiBlcyA5MiwgNDcgYmVpbSBzdWVkbGljaGVuIEVpc3JpZXNlbiB1bmQgNDUgYmVpbSBub2VyZGxpY2hlbi4KSXN0IGFiZXIgc2Nob24gbWVocmVyZSBNb25hdGUgaGVyLgpVbmQgd2VubiBpY2ggcmljaHRpZyBnZXphZWhsdCBoYWJlLCB3YXJlbiBkYXMgamV0enQgbnVyIDI2LCBhbHNvIG5vY2gKbmljaHQgc2VociB2aWVsZS4gV2llIHdhZXIgZXMgbWl0IGVpbmVtIFdhZXJtdGVwcGljaHZlcmthdWYgYmVpbQpTY2hsYW1tZHJhY2hlbj8gRGVyIHNwdWNrdCBkb2NoIEZldWVyLCB2aWVsbGVpY2h0IGhhdCBlciBhdWNoIHNvIHdhcwp3aWUgZWluZSBncm9zc2UgV2Flcm1mbGFzY2hlLCBkaWUgbWFuIG51ciBhdWYgZGVuIEJvZGVuIGxlZ2VuIG11c3MgdW5kCmRpZSBFaXNzY2h3ZXJ0ZXIgc2NobWVsemVuIGRhaGluLCBzbyBlaW4gU2Nod2VydCBwcm8gMTAgU2VrdW5kZW4uCihkYSBkaWUgU2Nod2VydGVyIGphIGtlaW5lIEhpdHplIHZlcnRyYWdlbikKCiAgICAgICAgICAgICAgICB0c2Nob2UgICAgICAgICAgIENhcmFkaHJhcyBkZXIgZXdpZ2UgUHJvcGhldApQUzogT2RlciBtYW4gbWFjaHQgYXVzIGRlbiBKdXdlbGVuIGdsdWVoZW5kZSBKdXdlbGVuLCBkaWUgd2lya2VuIHdpZQpzbyBlaW5lIHdhZXJtZWZsYXNjaGUuIG1hbiA9IEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2F1c3RhbGwgMiAoSGFyZGlsLCAyMS4gTm92IDE5OTQsIDEzOjU2OjA3KToKIyEgcm49S25vZXJyeSBydD03ODUzNjU1MjkKSGFldHRlc3QgRHUgbWlyIGRhcyBnZXNhZ3QsIGFscyBpY2ggbm9jaCBmdWVyIG1laW4gU2VoZXJoYXVzIGdlc2FtbWVsdCBoYWJlLgpEYXMgd2FlcmUgamV3ZWlscyBuZSBuZXR0ZSBSYXRlIGdld2VzZW4sIHVuZCB6d2FyIGluIHdlbmlnZXIgYWxzIDUgTWludXRlbi4KCk5pZSB3aWVkZXIgYmF1c3BhcmVuZDoKCgkJCQlIYXJkaWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzYXVzdGFsbCAoS3JldGVrLCAyMS4gTm92IDE5OTQsIDE3OjIzOjM5KToKIyEgcm49S2V0b3MgcnQ9Nzg1NDA4NTQxCkFMTEVTPyBNaWNoIGF1Y2g/Ck1pciByZWljaHQncyBzY2hvbiwgd2VubiBHcmltbWJvcm4gaW1tZXIgWndlcmdlbiBmcmVzc2VuIHdpbGwuLi4KSGlpaWlpaWlpaWxmZWVlZWVlZSEKCmMgdSBsOGVyLAogICBLcmV0ZWssIGRlciBVbmdlbmllc3NiYXJlIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaW50ZXJlc3NhbnQgOy0pIChQaWxncmltLCAyMS4gTm92IDE5OTQsIDIwOjI5OjA1KToKSGksIGZvbGdlbmRlcyB0ZWlsdGUgbWlyIG1laW4gc2NobGF1ZXIgZmluZ2VyIGRvY2ggbmV1bGljaCBtaXQKCgpmaW5nZXIgZml4aWVzCk1pc3QhISEgRGFzIEVpbmxlc2VuIGRlciBEYXRlbiBrbGFwcHQgbmljaHQgd2llIGVzIHNvbGwgOi0oCkZpeGllcyBpc3QgbmljaHQgZWluZ2Vsb2dndC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogMCBbP10uClp1bGV0enQgYXVzZ2Vsb2dndDogRG9uLCAgMS4gSmFuIDE5NzAsIDAxOjAwOjAwICg5MDkwZCAxOToyNzoyNCkKVm9sbGVyIE5hbWU6IEZpeGllcwpSYXNzZTogPGtlaW5lPiwgICAgR2VzY2hsZWNodDogbmV1dHJhbCA/IQpBbHRlcjogMDc6MjU6NTQgICBTcGllbGVybGV2ZWw6IDAKRS1NYWlsLUFkcmVzc2U6IGtlaW5lCktlaW5lIC5wbGFuLURhdGVpLgoKIgoKYWxzbywgZGEgaGFiIGF1Y2ggaWNoIGtlaW5lbiAucGxhbiBtZWhyIDstKQoKUGlsZ3JpbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGludGVyZXNzYW50IDstKSAoR3VsZHVrYXQsIDIxLiBOb3YgMTk5NCwgMjA6Mzc6MjMpOgojISBybj1QaWxncmltIHJ0PTc4NTQ0NjE0NQppc3QgZG9jaCBub3JtYWwsIHdlbm4gc2ljaCBlaW4gbmV1ZXIsIG5vY2ggdW5iZWthbm50ZXIgc3BpZWxlciBlaW5sb2dndCwKa29tbXQgZGllc2UgbWVsZHVuZyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5vY2ggMjkgVGFnZSAoQ2F0d2VhemxlLCAyMS4gTm92IDE5OTQsIDIwOjQxOjE2KToKOi0pIFlUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWndlcmdlbmZyZXNzZW4/IChHcmltbWJvcm4sIDIyLiBOb3YgMTk5NCwgMDg6MDg6NTkpOgpKYSwgaWNoIHdlaWdlcmUgbWljaCwgZGVuIHJlcGx5IHp1IGJlbnV0emVuLCBkYSBiaW4gaWNoIHp1IGRvb2YgZnVlci4uLgpLcmV0ZWsgc2FndGUsIGljaCB3dWVyZGUgaW1tZXIgWndlcmdlIGZyZXNzZW4gd29sbGVuLiBEaWVzZXMgZW50c3ByaWNodCBuaWNodApkZXIgV2FocmhlaXQhIFZpZWxtZWhyIGlzdCBIYXJkaWwgZnVlciBzZWluZSBad2VyZ2VuZ3JpbGxmZXRlbiBiZWthbm50ISBJQ0gKaGFiZSBkYW1pdCBOSUNIVFMgenUgdHVuIQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IHVuZCBad2VyZ2VudmVnZXRhcmllcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFp3ZXJnZW5mcmVzc2VuPyAoSGFyZGlsLCAyMi4gTm92IDE5OTQsIDE1OjU2OjAwKToKIyEgcm49R3JpbW1ib3JuIHJ0PTc4NTQ4ODEzOQpBbHNvIEdyaW1tLCBkYXMgaXN0IGdhbnogZWluZmFjaC4gV2VubiBEdSBlaW5lbiBBcnRpa2VsIGdlbGVzZW4gaGFzdCwgZGFubgp0aXBwc3QgRHUgbmljaHQgbm4gZnVlciBkZW4gbmFlY2hzdGVuIEFydGlrZWwsIHNvbmRlcm4gZWluZmFoYyAicmVwbHkiLCBnYW56CmVpbmZhY2ggbnVyIGRpZXNlIDUgd3VuZGVyYmFyZW4gQnVjaHN0YWJlbi4KRGFubiBnZWh0IGRhcyBnYW56IGF1dG9tYXRpc2NoLCBEdSBtdXNzdCBudXIgbm9jaCBEZWluZW4gU2VuZiBhYmdlYmVuLiA6LSkKCkhhcmRpbCAoa2F1dCBub2NoIGFuIGVpbmVtIFp3ZXJnZW5zY2hlbmtlbCBhdXMgRXJtYW5nZWx1bmcgYW4gZ3V0ZW0KWndpZWJlbGt1Y2hlbiwgd2VpbCBkaWUgV2VpbnN0dWJlIHVuZCAuLi4gYWJlciBkYXMgaXN0IGVpbmUgZ2FueiBhbmRlcmUKZ2VzY2hpY2h0ZSwgdW5kIHdpcmQgZWluIGFuZGVybWFsIGVyemFlaGx0IHdlcmRlbikuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFp3ZXJnZW5mcmVzc2VuPyAoS3JldGVrLCAyMi4gTm92IDE5OTQsIDIxOjEwOjUyKToKIyEgcm49SGFyZGlsIHJ0PTc4NTUxNjE2MApTdGltbXQsIEhhcmRpbCwgUkVQTFkgaXN0IHdpcmtsaWNoIFNFSFIgZWluZmFjaCB6dSBiZW51dHplbiEKQWxzbywgZHUsIGhvZXJtYWwsIHVuZCBzby4uLiBCbG9uZGluZW53aXR6ZSBkdWVyZmVuIHdpciBoaWVyIG5pY2h0IG1laHIKZXJ6YWVobGVuLCBhbmRlcmUgV2l0emUgd2VyZGVuIGtyaXRpc2NoIGF1ZiBldmVudHVlbGwgaGluZWluaW50ZXJwcmV0aWVyYmFyZQpBdXNsYWVuZGVyLSBvZGVyIE1pbmRlcmhlaXRlbmZlaW5kbGljaGtlaXQgdWViZXJwcnVlZnQuLi4gQWJlciBkYWdlZ2VuLApkYXNzIGR1IGhpZXIgbWVpbmUgQXJ0Z2Vub3NzZW4gZnV0dGVyc3QgdW5kIGRhcyBkYW5uIGF1Y2ggbm9jaCBpbiBhbGxlcgpPZWZmZW50bGljaGtlaXQga3VuZHR1c3QsIGRhZ2VnZW4gdW50ZXJuaW1tdCBuaWVtYW5kIHdhcyEKKFVwcyEgS29ib2xkIHZlcnNhZ3QgZ2VyYWRlIHdpZWRlciEpCkRlc2hhbGIgaGllciBqZXR6dCBtZWluIEF1ZnJ1ZjogWndlcmdlIGRlcyBNb3JnZW5HcmF1ZW5zIQpCZWthZW1wZnQgZGllIGthbm5pYmFsaXN0aXNjaGVuIFVtdHJpZWJlIGdld2lzc2VyIEJld29obmVyIGRpZXNlciBXZWx0LApkaWVzZXMgbGliZXJhbGVuIEZsZWNrZW5zLCBkZXIgYWxsZW4sIGphLCBhbGxlbiBXZXNlbiBXb2hudW5nIGJpZXRldCEKQXVjaCB3aXIgWndlcmdlIGhhYmVuIEdlZnVlaGxlLCBhdWNoIHdpciBad2VyZ2UgaGFiZW4gdW5zZXJlbiBTdG9segooZWlnZW50bGljaCBzb2dhciwgYmVzb25kZXJzIHdpciBad2VyZ2UhKSwgdW5kIGF1c3NlcmRlbSBzY2htZWNrZW4gd2lyCnVlYmVyaGF1cHQgbmljaHQgZ3V0IQpBbHNvOiBLYW1wZiBkZW4gVW50ZXJkcnVlY2tlcm4hIFN0dWVyenQgZGllIFR5cmFubmVuISBOaWVkZXIgbWl0IGRlbgpad2VyZ2VuZnJlc3Nlcm4hCgpIZXV0ZSBpbiBzZWhyIHJldm9sdXRpb25hZXJlciBMYXVuZSAoTkVJTiwgd2lyIGZhbmdlbiBkYXMgamV0enQgTklDSFQKd2llZGVyIGFuLCBrZWluIEdydW5kIHp1ciBQYW5pay4uLiksCgpjIHUgbDhlciwKICAgS3JldGVrCgpQLlMuOiBJY2ggc2NocmVpYmUgTklFIHdpZWRlciBlaW5lbiBBcnRpa2VsIGluIGRlciBLYXBlbGxlISBadXZpZWwgbG9zLi4uClAuUC5TLjogTmEsIEFyYW55YSwgZW50c3ByaWNodCBkYXMgZGVpbmVuIFZvcnN0ZWxsdW5nZW4/ICAgIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBad2VyZ2VuZnJlc3Nlbj8gKFd1ciwgMjMuIE5vdiAxOTk0LCAwMjowNjo0Nik6CiMhIHJuPUtyZXRlayBydD03ODU1MzUwNTIKaGFsbG8gOikhCgpXaWUgcmVjaHQgZHUgZG9jaCBoYXN0IGtyZXRlayEKV2FzIGZpbmRlbiBtYW5jaGUgYW4gWndlcmdlbiBudXIgc28gZW50c2V0emxpY2g/CgogICAgV3VyIChrb3Bmc2NodWV0dGVsbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBad2VyZ2VuZnJlc3Nlbj8gKEFyYW55YSwgMjMuIE5vdiAxOTk0LCAxNTowNzoxNik6CiMhIHJuPUtyZXRlayBydD03ODU1MzUwNTIKWnUgUFNTOiBKYSBkYW5rZQoKQXJhbnlhCiAgICAgICBPYmVybGVocmVyaW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFp3ZXJnZW5mcmVzc2VuPyAoQ2FyYWRocmFzLCAyMy4gTm92IDE5OTQsIDE4OjU3OjI1KToKIyEgcm49S3JldGVrIHJ0PTc4NTUzNTA1MgpIbSwgd2VubiBpaHIgWndlcmdlIG5pY2h0IGd1dCBzY2htZWNrdCwgZGFubiBzaWVoIGVzIGRvY2ggYWxzIGVpbmUgU3RyYWZlCmZ1ZXIgSGFyZGlsIGFuLCB3ZW5uIGVyIGV1Y2ggaXNzdCwgZGVubiBkYW5uIHdpcmQgZXMgaWhtIHNpY2hlcmxpY2ggZ2FuegpzY2hsZWNodCB3ZXJkZW4gdW5kIGRhcyBoYXQgZXIgZGFubiBhdWNoIHZlcmRpZW50LCBqYXdvaGwhIQoKIGZ1cmNodGJhciBsb2dpc2NoIGhldXRlCiAgICAgICAgICAgICAgICAgQ2FyYWRocmFzIGRlciBld2lnZSBQcm9waGV0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBad2VyZ2VuZnJlc3Nlbj8gKEhhcmRpbCwgMjMuIE5vdiAxOTk0LCAxOTowOTo1Mik6CiMhIHJuPUNhcmFkaHJhcyBydD03ODU2MTM0NDUKTm9lbm9lLCBDYXJhKiwKWndlcmdlIHNjaG1lY2tlbiBnYXIgbmljaHQgc28gc2NobGVjaHQsIHdlbm4gbWFuIHdlaXNzLCB3aWUgbWFuIHNpZSBncmlsbGVuCm11c3MuIEVpbiBwYWFyIGd1dGUgR2V3dWVyemUgZHJhdWYsIHdhcnRlbiwgYmlzIGRlciBad2VyZyBrbnVzcHJpZyB3aXJkIC0KbGVja2VyIGxlY2tlci4KVW5kIGRpZSBad2VyZ2Ugc29sbGVuIHNpY2ggbmNpaHQgYmVzY2h3ZXJlbiwgYmVpIFBhbmRvcmEgZXNzZW5zIHNpZSBkb2NoIGF1Y2gKaWhyZXNnbGVpY2hlbiB1bmQgZ2VuaWVzc2VuIGRhcy4gOi0pCgpIYXJkaWwgKGdyaWxsdCBzY2hvbiB3aWVkZXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqaGlja3MqIChDYXJhZGhyYXMsIDIzLiBOb3YgMTk5NCwgMjM6MDE6MTkpOgpPaCwgZWluIGJlc29mZmVuZXIgRnJvc2NoICpoaWNrcyoKSWNoIG1hcmluaWVyIG1pY2ggc2Nob24gZ2xlaWNoIHNlbGJzdCwgaHVjaCwgaG9mZmVudGxpY2ggdmVybmFzY2h0IG1pY2gKbmllbWFuZC4gKmVycm9ldCoKCiAgICAqaHVlcGZ0IGVudHNldHp0IHZvbiBoaW5uZW4gdW5kIG5hY2ggZGFubmVuKgoKICAgICAgQ2FyYWRocmFzIGRlciBld2lnZSBGcm9zLi4uIGFlaCBkZXIgRGluZ2VucwogICAgICAgICAgIGV3aWdlIFByb3BoZXQKKmhpY2tzKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhdGVucGluZ3BvbmcgKEhhciwgMjQuIE5vdiAxOTk0LCAxMDo1ODoxOCk6CiMhIHJuPUdyaW1tYm9ybiBydD03ODU0MTc2MjkKSG1tbSwgaWNoIGtyaWVnIGltbWVyIHNwYWV0ZXNudGVucyBiZWltIGRyaXR0ZW4gUG9pbnQgdm9uIFRyYWNlcm91dGUgbnVyIG5vY2gKMyAqICogKgo0ICogKiAqCjQgKiAqICoKd2VubiBlcyBiZWkgbWlyIGxhZ3QgdW5kIHdlcmRlIGRhbm4gcmF1c2dlc2NobWlzc2VuCkhhciwgZGVyIGdlcm5lIG1hbCBtaXQgR3JpbW1ib3JuIERhdGVucGluZ3Bvbmcgc3BpZWxlIHd1ZXJkZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogT3J0aG9ncmFwaGllIChDYXR3ZWF6bGUsIDI1LiBOb3YgMTk5NCwgMTg6NTY6MTEpOgpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIEZsaW50bmFpbCwgMjQuIE5vdiAxOTk0LCAxNzo1NDoyOF06CiMhIHJuPVR6dWlvcCBydD03ODU2MDQ0NTMKbmVpbm5laW4gVHp1aW9wLi56dW0gRGFlcm1hR09HRU4gISEhOykKICAgICAgICBGbGludG5haWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsYXNzZSEgKEFyYW55YSwgMjkuIE5vdiAxOTk0LCAxNjozMjowNSk6CkVuZGxpY2ggbWFsIHNvIGVpbiBUYWcsIHdvIG1hbiBzdGFlbmRpZyBuZXVlIE5hY2hyaWNodGVuIGJla29tbXQsIHNvb2Z0IG1hbgpkaWUgWmVpdHVuZyBhdWZzY2hsYWVndC4gU3RhZW5kaWcgbmV1ZSBFaW50cmFlZ2UhIFN0YWVuZGlnIG5ldWUgR2VkYW5rZW4hCipmcmV1KgpFaW5lIGdsdWVja2xpY2hlCiAgICAgICAgICAgICAgICBBcmFueWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWUgZ3J1cHBlPyAoS2V0b3MsIDMwLiBOb3YgMTk5NCwgMjE6MTM6MTYpOgpEaWUgWmVpdHVuZyB3YWVjaHN0LiBiYWxkIGJyYXVjaGVuIHdpcmQgbmUgbmV1ZS5ncnVwcGVuIHVuZCBtcGEuZnVlaHJlcgpHcnVwcGVuLi4uIDspClNFTkQgT0ZGCi0gS2V0b3MgLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmFtZW4gKEtldG9zLCAzMC4gTm92IDE5OTQsIDIxOjE1OjE2KToKVGF1ZmUgRmlja2Zyb3NjaCBpbiBFcmRhbGZyb3NjaCB1bS4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpc2VuLCBkYXMgdW5iZWthbm50ZSBNZXRhbGwgOi0pIChIYXJkaWwsICAxLiBEZXogMTk5NCwgMTQ6NTk6MjApOgoKIHVudCByaW5nCkVpbiBSaW5nIGF1cyBlaW5lbSByb2V0bGljaC1nbGFlbnplbmRlbiBNZXRhbGwsIGRlc3NlbiBOYW1lbiB1bmQgSGVya3VuZnQKRGlyIHVuYmVrYW5udCBzaW5kLgo+IHVudCBuYXNlCkR1cmNoIGRpZSBMb2V3ZW5uYXNlIGlzdCBlaW4gRWlzZW5yaW5nIGdlem9nZW4uCgouLi4gdW5kIHdhcyBzb2xsIHVucyBkYXMgamV0enQgc2FnZW4gPyA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9lZC4uLiAoSGlnaGxhbmRlciwgIDMuIERleiAxOTk0LCAxODoxODo0OCk6Ck1hbm4sIGRhIGtvbW10IG1hbiBtYWwgYW4gZWluZW0gU2Ftc3RhZyByZWluIHVuZCBkYW5uIGhhdCdzIGdyYWRlIG1hawphZWggbWFsIGRyZWkga2xlaW5lIG5ldWUgQXJ0aWtlbC4gVW5kIGF1c3NlcmRlbSBzb2xsdGUgbWFuIGRvY2ggZWluZW4KbXBhIEthbmFsIGVpbnJpY2h0ZW4sIGRlciB3aWUgd2VubiBlaW5lciBkYW5lYmVuc3RlaHQgZGllCk1lbGR1bmdlbiBicmluZ3QuIFVuZCBpY2ggaGFiIGF1c3NlcmRlbSBrZWluZSBMdXN0LCBqZXR6dCBhbiBkaWVzZW0KYmxvZWRlbiBscy1jbG9uZSB6dSBhcmJlaXRlbi4KVW5kIGRlciBjYyBtZWxkZXQgRmVobGVyLCB3ZWlsIGRhcyBMYXVmd2VyayBaZWljaGVuIHZlcnNjaGx1Y2t0LgpVbmQgbWVpbmUgTGVpdHVuZyB6dSBkZW0gUmVjaG5lciwgYXVmIGRlbSBpY2gKZGFzIG1hY2hlLCBoYWVuZ3QgZWJlbi4KQmxvZWRlciBUYWcuICA6PgogIFlUSAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9lZC4uLiAoQXJhbnlhLCAgNS4gRGV6IDE5OTQsIDE2OjM3OjI3KToKIyEgcm49SGlnaGxhbmRlciBydD03ODY0NzUxMjgKSXN0IGdhciBuaWNodCBzbyBibG9lZCwgRGVpbmUgSWRlZSBtaXQgZGVtIG1wYS1LYW5hbC4gS29lbm50IGljaCBtaXIgc2VocgpndXQgdm9yc3RlbGxlbiEKQXVmISBXbyBpc3QgZGVyIHp1c3RhZW5kaWdlIE1hZ2dpPwoKQXJhbnlhCiAgICAgICB6ZWl0dW5nc2ZldGVzY2hpc3Rpc2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBPZWQuLi4gKExvY28sICA1LiBEZXogMTk5NCwgMTc6MDQ6NTQpOgojISBybj1BcmFueWEgcnQ9Nzg2NjQxODQ3CkphIGphIGphIC4uLgpJY2ggdmVyc3ByZWNoZSwgYmlzIG1vcmdlbiBkZW4gbXBhLUthbmFsIGZlcnRpZ3p1aGFiZW4sIHdlbm4sIGphIFdFTk4gLi4uCi4uLiBEVSBtaXIgZGFmdWVyIG1laW5lIEdEVi0gdW5kIENvbXBpbGVyYmF1LUF1ZmdhYmVuIG1hY2hzdC4gQWJlciBlaHJsaWNoCmdlc2FndCwgd2VubiBpY2ggRHUgd2FlcmUgd3VlcmRlIGljaCBhdWYgZGVuIEhhbmRlbCBhdWNoIG5pY2h0IGVpbmdlaGVuLi4uCgpMZWljaHQgZ2VzdHJlc3N0LAogICAgICAgICAgICAgICAgTG9jbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGFuaWsgVE9UQUwhIChEYW5jZXIsICA2LiBEZXogMTk5NCwgMjE6MjI6MjApOgoKSGFsbG8uIEZ1ZXIgbWljaCB3YXIgaGV1dGUgZWluIHVuZ2V3b2VobmxpY2hlciBUYWcsIGluIGRlciBUYXQuLi4KCgowOS4wMCBVaHIgOiBEZXIgV2V0dHBhbGFzdCB3aXJkIGhldXRlIGFuZ2VzY2hsb3NzZW4hCiAgICAgICAgICAgIFNwdXJ0IHZvbiBkZXIgU2FuZGR1ZW5lIG5hY2ggUG9ydCBWYWluLgoKMTAuMDAgVWhyIDogKlRhcHBzIGdydW1tZWxuZCBhdWYgdW5kIGFiKiBSb2NodXMgaXN0IG5pY2h0IGRhLAogICAgICAgICAgICBSb2NodXMsIFJvY2h1cywgUm9jaHVzLCBrb29vbW1tbW1tbSBzY2hvbi4uLi5Kb2YKICAgICAgICAgICAgaXN0IHNjaG9uIHZvZWxsaWcgZW50bmVydnQgYWJlciB0cm9lc3RldCBpbW1lcgogICAgICAgICAgICBub2NoIG1pdGZ1ZWhsZW5kLCB3ZWlsIGljaCBzbyBuZXJ2b2VzIGJpbi4KCjEyLjAwIFVociA6IFJvY2h1cz8gTm9lLgoKMTMuMDAgVWhyIDogSWNoIHNlaGUgRmFyYmVuLi51ZWJlcmFsbCBGYXJiZW4gdW5kIEZvcm1lbiwKICAgICAgICAgICAgc3RpZXJlIHdpZSBnZWJhbm50IGF1ZiBkZW4gTW9uaXRvciB1bmQgdmVyc3VjaGUKICAgICAgICAgICAgZGFzICdSb2NodXMgaXN0IGdlcmFkZSBpbnMgU3BpZWwgZ2Vrb21tZW4uJwogICAgICAgICAgICBoZXJiZWl6dW1lZGl0aWVyZW4uCgoxMy4wMSBVaHIgOiBKb2Ygc2FndDogRGFuY2VlZWVlZWVyPz8KICAgICAgICAgICAgSWNoIHNhZ2U6IEphPwogICAgICAgICAgICBKb2Ygc2FndDogSWNoIHNjaGlja2UgbWFsIGViZW4gUm9jaHVzIGlucyBTcGllbCA7KQoKICAgICAgICAgICAgUm9jaHVzIGlzdCBnZXJhZGUgaW5zIFNwaWVsIGdla29tbWVuLiAoIE1hZ2llPz8gKQoKMTMuMDUgVWhyIDogUG9ydCBWYWluZXIgTGFuZHN0cmFzc2UuIFNwaWVsZXIgc3B1cnRlbiBhbiB1bnMKICAgICAgICAgICAgdm9yYmVpLCBSb2NodXMgdmVyc3VjaHQga29uemVudHJpZXJ0IGRlbiBCZS0KICAgICAgICAgICAgc2Nod29lcnVuZ3N6YXViZXIgenUgZW50ZmFjaGVuLCBkZXIgZGVuIFdldHRwYWxhc3QKICAgICAgICAgICAgYXVzIGRlciBLb25zdHJ1a3Rpb25zLURpbWVuc2lvbiBpbiBkaWUgdW5zZXJlCiAgICAgICAgICAgIHJlaXNzZW4gc29sbC4KCjEzLjA2IFVociA6IEVpbiByb3NhIEh1ZWhuY2hlbiBlcnNjaGVpbnQuCgogICAgICAgICAgICBSb2NodXMgc2FndDogTWlzdC4KCjEzLjA3IFVociA6IEVpbiByb3NhIEh1ZWhuY2hlbiBmYWVsbHQgdG90IHp1IEJvZGVuLgoKMTMuMTAgVWhyIDogRGVyIFdldHRwYWxhc3QgZXJzY2hlaW50ISEhIEdyZW56ZW5sb3NlciBKdWJlbCEKICAgICAgICAgICAgSWNoIGtudWRkZWwsIGRydWVjaywgd3VzY2hlbCwgc3RyZWljaGVsLCBrbnV0c2NoZSwKICAgICAgICAgICAgUm9jaHVzLCBodWVwZiB1bSBpaG4gaGVydW0sIHRhZW56ZWxlIGZyb2VobGljaCwKICAgICAgICAgICAgcm9sbCBtaWNoIGdsdWVja2xpY2ggaW0gU3RhdWIgaGVydW0uLi5Sb2NodXMKICAgICAgICAgICAgZ3JpbnN0Li4ud2lua3QuLi51bmQgaXN0IHdlZy4KCjE1LjAwIFVociA6IENyYXNoLgoKICAgICAgICAgICAgSWNoIHNhZ2U6IEljaCB3YXJzIG5pY2h0IDotKSA8LXVuZCBlcyBzdGltbXQgYXVjaC4KCjE3LjAwIFVociA6IE1hZ2llcjEgc2FndDogSWNoIHd1ZXJkZSBhYmVyIGdlcm5lIGhldXRlIHNjaG9uIGVpbmUKICAgICAgICAgICAgVmVyYW5zdGFsdHVuZyBzZWhlbiEKCiAgICAgICAgICAgIEljaCBkZW5rZTogVWggb2guLi4KCiAgICAgICAgICAgIFNwaWVsZXIxLVggc2FnZW46IEljaCBhdWNoIQoKICAgICAgICAgICAgSWNoIGtyYXR6ZSBtaWNoIGFtIEtvcGYuLi5NT0VHTElDSCB3YWVyZSBkYXMgamEuLi4KCjE3LjMwIFVociA6IE1hc3NpdmVyIEFuc3R1cm0gYXVmIG1laW4gT3JvcGF4Li4uLmljaCB3aWxsIGVpbgogICAgICAgICAgICBXZXR0c3BpZWwgc2VoZW4sIHdpZSBzaWVodCBkaWUgU2NoYXR0ZW5hcmVuYSBhdXM/LAogICAgICAgICAgICBvY2ggYml0dGUgYml0dGUgbnVyIGVpbmUgUHJlbWllcmVudm9yc3RlbGx1bmcsCiAgICAgICAgICAgIEZyZWl0YWdzIGJpbiBpY2ggYWJlciBnYXIgbmljaHQgZGEsIGtvZW5uZW4gd2lyCiAgICAgICAgICAgIG5pY2h0IHdlbmlnc3RlbnMgZWluZSBIQUxCRSBWb3JzdGVsbHVuZyBzZWhlbiwKICAgICAgICAgICAgYml0dG9lIGJpdHRvZSBiaXR0b2UuLi4uLi4uLgoKMTguMDAgVWhyIDogVG90YWxlIFZlcnp3ZWlmbHVuZywgZGVyIFdpZGVyc3RhbmQgaXN0IGdlYnJvY2hlbi4KICAgICAgICAgICAgSWNoIHNjaGlja2UgbWVpbmVuIGtsZWluZW4gU2FuZHRpZ2VyIGF1cywgdW0gYWxsZW4KICAgICAgICAgICAgenUgYmVyaWNodGVuLCBkYXNzIGRhcyBQcmVtaWVyZW53ZXR0c3BpZWwgdW0gMjAuMDAKICAgICAgICAgICAgVWhyIGJlZ2lubmVuIHdpcmQhCgoxOC4xMCBVaHIgOiBJY2ggc2NobmFwcGUgbWlyIGRlbiBXZXR0cGFsYXN0Li4uIHVuZCBlcnN0YXJyZS4KICAgICAgICAgICAgSWNoIGhhYmUgaGllciBrZWluZW4gRWRpdG9yIChmdWVyIFNwaWVsZXI6IGFsbGUKICAgICAgICAgICAgQmF1YXJiZWl0ZXIgd2FyZW4gc2Nob24gaW4gVXJsYXViIDspICkuIFVuZCBkaWUKICAgICAgICAgICAgU3RhcnR6ZWl0IGlzdCB0aWVmIHZlcmFua2VydCBpbiBlaW5lciB3ZWl0IHZlcmdyYS0KICAgICAgICAgICAgYmVuZW4sIGVsbGVubGFuZ2VuIFplaWxlLCBkaWUgZ2FueiB3ZWl0IGlyZ2VuZHdvCiAgICAgICAgICAgIHZlcnN0ZWNrdCBpc3QuCgoxOC4zMCBVaHIgOiBJY2ggdGFwcHNlIG5lcnZvZXMgYXVmIHVuZCBhYiB1bmQgc3VjaGUgbmFjaCBkZXIKICAgICAgICAgICAgTG9lc3VuZy4gTm9jaCA5MCBNaW51dGVuLgoKMTguNDAgVWhyIDogSWNoIHZlcnN1Y2hlIGVzIG1pdCBkZW0gJ0VkJyAoRnVlciBTcGllbGVyOiBkZXIKICAgICAgICAgICAgaGlybmxvc2VzdGUsIGRhZW1saWNoc3RlIEJhdWFyYmVpdGVyIGRlbiBkaWVzZQogICAgICAgICAgICBTb25uZSBqZW1hbHMgZXJibGlja3QgaGF0IDopICkuIEVzIGdlaHQgbmljaHQuIDooCgoxOS4xMCBVaHIgOiBQYW5pay4KCjE5LjIwIFVociA6IERpZSBJZGVlISBFaW4gZXh0cmVuZXMgTW9kdWwsIGRhc3MgZGllIFN0YXJ0emVpdAogICAgICAgICAgICBuYWNodHJhZWdsaWNoIGFlbmRlcnQhIChGdWVyIFNwaWVsZXI6IGFlaC4uLgogICAgICAgICAgICBhY2ggdmVyZ2Vzc3QgZXMhIDopICkKCjE5LjMwIFVociA6IE1vZHVsIGZlcnRpZy4uLi5lcyBzZXR6dCBkaWUgZmFsc2NoZSBaZWl0ICpncnVlbgogICAgICAgICAgICB1bmQgcm90IGFubGF1ZiogV2VubiBqZXR6dCBlaW4gU3BpZWxlciBpbiBkZW4KICAgICAgICAgICAgZW50c3ByZWNoZW5kZW4gUmF1bSBsYWV1ZnQgZ2VodCBhbGxlcyBmbG9ldGVuIQoKMTkuMzAgVWhyIHVuZCAxMCBTZWt1bmRlbjogQmxpdHpzY2huZWxsZXMgZXJzZXR6ZW4gZGVzCiAgICAgICAgICAgIGdlZmFlaHJsaWNoZW4gUmF1bWVzIGR1cmNoIGVpbmUgS29waWUsIGluIGRlcgogICAgICAgICAgICBldHdhcyBCZXN0aW1tdGVzIGZlaGx0IDopCgoxOS40MCBVaHIgOiBEaWUgcmljaHRpZ2UgWmVpdCBpc3QgZ2VzZXR6dDogRGllbnN0YWcsIDYuCiAgICAgICAgICAgIERlemVtYmVyIDIwLjAwIFVociEKCjE5LjUwIFVociA6ICdHZWZhZWhybGljaGVyJyBSYXVtIHdpZWRlciBlaW5nZXNldHp0LiBFcnNjaG9lcGZ1bmcuCgoxOS41NSBVaHIgOiBEaWUgVGlnZXJwcmFua2VuIGZhbmdlbiBhbiB6dSB6aXR0ZXJuLi4uIGhhYmUgaWNoCiAgICAgICAgICAgIGFsbGVzIHJpY2h0aWcgZ2VtYWNodD8gSXJnZW5kd2FzIHZlcmdlc3Nlbj8gRGEgd2FyCiAgICAgICAgICAgIGRvY2ggbm9jaCB3YXMuLi5vZGVyIG5pY2h0PyEgT2RlciBkb2NoLi5vZGVyLi4uCiAgICAgICAgICAgIEpvb29vb29vZiwgc3RlaCBtaXIgYmVpISA6LSkgLi4uZGFubiBzdGFuZCBlciBhdWNoCiAgICAgICAgICAgIG5lYmVuIG1pci4gR29ldHRlciB2ZXJzdGVoZW4gaW1tZXIgYWxsZXMgZmFsc2NoISA6KQoKMTkuNTkgVWhyIDogTmFjaGJhcmluIGtsb3BmdCBhbiBkaWUgV2FuZC4gSGVyenNjaGxhZyB6dSBoZWZ0aWchCgoxOS41OSBVaHIgdW5kIDUwIFNla3VuZGVuOiBJY2ggc3RlaGUgaW4gZGVyIFNjaGF0dGVuYXJlbmEgdW5kCiAgICAgICAgICAgIGhvZmZlLCBkYXNzIG1laW5lIEFuZ2VzdGVsbHRlbiAoZnVlciBNYWdpZXI6IGFsbGUKICAgICAgICAgICAgRnVua3Rpb25lbiA6KSApIGFsbGUgaW0gcmljaHRpZ2VuIE1vbWVudCBkYXMgcmljaHRpZ2UKICAgICAgICAgICAgdHVuLCBkYXNzIGRpZSBnYW56ZSBBdXRvbWF0aXNpZXJ1bmcgZnVua3Rpb25pZXJ0LgoKMjAuMDAgVWhyIDogRXMgcGFzc2llcnQgTklDSFRTIQoKMjAuMDAgVWhyIGJpcyAyMDowMDowMiBVaHI6IEhlcnpzdGlsbHN0YW5kLgoKMjA6MDA6MDIgVWhyIDogRGVyIFNwcmVjaGVyIGRlcyBXZXR0cGFsYXN0ZXMga3VlbmRpZ3QgZGVuIFN0YXJ0CiAgICAgICAgICAgIGRlciBTcGllbGUgYW4hCgoyMC4wMyBVaHIgOiBEZXIgV2V0dGthbXBmIGJlZ2lubnQuCgoyMC4zMCBVaHIgOiBJY2ggTEVCRSBub2NoISEhCgoKClNvdmllbCB6dSBkZW4gZ2FueiBwZXJzb2VubGljaGVuIFN0cmVzc21vbWVudGVuIGVpbmVzIE1hZ2llcnMgOi0pCgpNaXQgZnJldW5kbGljaGVuIEdydWVzc2VuLCB2b2xsZW4gVGFzY2hlbiB1bmQgYnJlaXRlbSBHcmluc2VuCgpEYW5jZXIgZGVyIFNhbmR0aWdlcgpWb3JzdGFuZHN2b3J0aWdlcm5kZXIKCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQYW5payBUT1RBTCEgKFlhbnRybywgIDcuIERleiAxOTk0LCAwODo1NDoxMSk6CiMhIHJuPURhbmNlciBydD03ODY3NDUzNDAKCkljaCBmdWVobGUgbWl0IERpciwgRGFuY2VyIHVuZC4uLi4uLiBNaXQgRWQgKGRlbSBCYXVpZGlvdGVuKSBoYXN0IER1IG1laHIgYWxzClJlY2h0Li4uLiBlciBzb2xsdGUgc2ljaCBzZWxic3Rsb2VzY2hlbiEKCiAgICAgICAgICAgIFlhbnRybzopCgpQLlMuOiBNaXQgRWQgaXN0IG5pY2h0IGRlciBTcGllbGVyIEVkIGdlbWVpbnQuLi4uLmVocmxpY2ggOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQYW5payBUT1RBTCEgKEhha2tpa2t0LCAgNy4gRGV6IDE5OTQsIDA5OjQwOjIwKToKIyEgcm49RGFuY2VyIHJ0PTc4Njc0NTM0MApBYmVyIERhbmNlciwKRFUgYWxzIG1laW4gYWxsZXJsaWVic3RlciBWYXRlciBrYW5uc3QgZGVuIEVEIG5pY2h0IGJlZGllbmVuPwpEYXMga2FubiBpY2ggamEgc29nYXIuIFVuZCBpY2ggYmluIGRhYmVpIGRlciB1bmZhZWhpZ3N0ZSBhbGxlciBkZWluZXIKWndlaXRpZXMhIFdlbm4gRFUgbWFsIFplaXQgaGFzdCAoOy0pKSBlcmtsYWVyIGljaCBkaXIgbWFsIHdpZSBlcyBnZWh0LgpCaXMgZGVubmUsIEhha2tpa2t0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBhbmlrIFRPVEFMISAoQXNtb2RpcywgIDcuIERleiAxOTk0LCAxMDo1NTowOCk6CiMhIHJuPVlhbnRybyBydD03ODY3ODY4NTEKQWxzbywgaWNoIGZpbmRlIGRlbiBFRCBnYXIgbmljaHQgc28gc2NobGVjaHQsIG9id29obCBpY2ggbmF0dWVybGljaCBtZWluZQplaWdlbmVuIEVkaXRvcmVuIGJldm9yenVnZSA6KQoKCiAgICAgICAgICAgICAgICAgICAgICAgICAgIENpYW8sIEFzbW9kaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUGFuaWsgVE9UQUwhIChHcmltbWJvcm4sICA3LiBEZXogMTk5NCwgMTQ6NDg6MjgpOgojISBybj1IYWtraWtrdCBydD03ODY3ODk2MjAKQWxzbyBpY2ggd2Vpc3MgbmljaHQsIHdhcyBpaHIgZ2VnZW4gZGVuIEVEIGhhYnQsIHdlbm4gbWFuIGlobiBrZW5udCBpc3QgZXIKbmljaHQgc28gdWViZWwuCkFlaG5saWNoIHdpZSBkZXIgZW1hY3M6IFdlbm4gbWFuIGVyc3RtYWwgZGllIFNjaGV1IHZlcmxvcmVuIGhhdCBnZWh0cy4gOy0pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFBhbmlrIFRPVEFMISAoQm9pbmcsICA3LiBEZXogMTk5NCwgMTU6MjU6MTApOgojISBybj1HcmltbWJvcm4gcnQ9Nzg2ODA4MTA4CkVEIGlzdCB3aXJrbGljaCBzZWhyIHByYWt0aXNjaCB1bSBrdXJ6IGtsZWluZSBBZW5kZXJ1bmdlbiB6dSBtYWNoZW4sCmZ1ZXIgZ3JvZXNzZXJlIEFrdGlvbmVuIHd1ZXJkIGljaCBpaG4gYWJlciBuaWNodCBlbXBmZWhsZW4gLi4uIDspCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFBhbmlrIFRPVEFMISAoRGFuY2VyLCAgNy4gRGV6IDE5OTQsIDE3OjAyOjEwKToKIyEgcm49Qm9pbmcgcnQ9Nzg2ODEwMzEwCkFlaG0uLi5pY2ggaGFiIG5pZSBnZXNhZ3QsIGRhc3MgaWNoIGRlbiBFZCBuaWNodCBiZWRpZW5lbiBrYW5uIG9kZXIgZGFzcwppY2ggaWhuIHVuc3ltcGF0aXNjaCBmaW5kZS4uLi5pY2ggaGFiIG51ciBnZXNhZ3QsIGRhc3MgZXIgdW5mYWVoaWcgaXN0IDstKQoKRGFuY2VyCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUGFuaWsgVE9UQUwhIChIYWtraWtrdCwgIDcuIERleiAxOTk0LCAxNzoyNjo1Mik6CiMhIHJuPURhbmNlciBydD03ODY4MTYxMzAKRGEgZ2lidCBlcyBkb2NoIHNvIGVpbmVuIGtsdWdlbiBTcHJ1Y2guLmVuZGV0IG1pdCA6Ci4uLi4uc28gZHVtbSB3aWUgZGVyIEJlbnV0emVyIDstKQoKSGFra2lra3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNDSE1BUlJOISAoQXJhbnlhLCAgNy4gRGV6IDE5OTQsIDE3OjQwOjU3KToKS2luZGVyLCBkZW5rdCBkb2NoIG1hbCBkcmFuLCB3aWUgZGllc2UgUnVicmlrIGhlaXNzdCEgU2llIGhlaXNzdCBTY2htYXJybiB1bmQKbmljaHQgZXR3YSBXaXNzZW5zY2hhZnQhIEFiZXIgc2NobWFycnQgcnVoaWcgdWViZXIgaXJnZW5kd2VsY2hlIEVkaXRvcmVuLiBEYS0KZnVlciBoYXQgZGVyIGxpZWJlIEdvdHQgamEgZGllIFEtVGFzdGUgZXJmdW5kZW4uIEhpaGloaSEgOikKCkFyYW55YQogICAgICBraWNoZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpncmFkZSBnZXNlaGVuLi4uIChNdXBmZWwsICA4LiBEZXogMTk5NCwgMDM6MTQ6MzkpOgpCcm9pbGVyIGdlaHQgbmFjaCBPc3Rlbi4KCm11cGZlbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGphLCBzbyBnZWh0J3MuIChIYXdrLCAgOC4gRGV6IDE5OTQsIDA5OjMwOjE5KToKSGV1dGUgZ2VzZWhlbjoKCj4KPiBsZWdlIHRyb2xsIGluIGJldXRlbApEZXIgTGV1Y2h0dHJvbGwgaXN0IG5pY2h0IGxlZXIgIQo+CgpWZXJ3dW5kZXJ0IHVlYmVyIGhvaGxlIExldWNodHRyb2xsZSwgSEFXSy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIGdlc2NoZWhlbjogKEhhd2ssICA4LiBEZXogMTk5NCwgMTM6NTQ6MjQpOgo+IERlciB3aW56aWdlIFdvbHBlcnRpbmdlciBzdG9scGVydCB1ZWJlciBzZWluZSBGdWVzc2UuCkFzbW9kaXMgenVja3QgcmF0bG9zIG1pdCBkZW4gU2NodWx0ZXJuLgpBc21vZGlzIHp1ZW5kZXQgZWluZSBTY2h3ZWZlbGJvbWJlLiBEdSBiZWtvbW1zdCBrYXVtIG5vY2ggTHVmdCB1bmQgc2VoZW4Ka2FubnN0IGR1CmF1Y2ggbmljaHRzIG1laHIuIEFscyBzaWNoIGRlciBOZWJlbCBsZWd0LCBzaWVoc3QgZHUgbnVyIG5vY2ggZWluIHBhYXIKRnVzc3NwdXJlbiBpCm0gU2Nod2VmZWxzdGF1Yi4gU2llIGZ1ZWhyZW4gYXVzIGRlbSBMYWRlbi4KRGVyIHdpbnppZ2UgV29scGVydGluZ2VyIHRhcHBzdC4Kc2NoYXUKRHUgYmVmaW5kZXN0IERpY2ggaW4gZGVtIGdyb2Vzc3RlbiBQb3J0IFZhaW5lciBHZXNjaGFlZnQuIEhpZXIga2FubnN0IER1CkRpY2ggZnVlciBEZWluZSBBYmVudGV1ZXIgYXVzcnVlc3Rlbi4gRm9sZ2VuZGUgQmVmZWhsZSBzaW5kIG1vZWdsaWNoOgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUGFuaWsgVE9UQUwhIChUenVpb3AsICA4LiBEZXogMTk5NCwgMTQ6MTE6MTIpOgojISBybj1EYW5jZXIgcnQ9Nzg2ODE2MTMwCldlbm4gZHUgRWQgdW5mYWVoaWcgZmluZGVzdCwgc29sbHRlc3QgRHUgZXJzdG1hbCBDYXQgdmVyc3VjaGVuIDopKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFBhbmlrIFRPVEFMISAoQW5hdG9sLCAgOC4gRGV6IDE5OTQsIDE5OjQ3OjIxKToKIyEgcm49VHp1aW9wIHJ0PTc4Njg5MjI3MgoKS2VubnQgZWluZXIgZGVuIHZpID8KCUVpbiB2aS1nZXN0cmVzc3RlciBBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFBhbmlrIFRPVEFMISAoQmVsZGluLCAgOC4gRGV6IDE5OTQsIDE5OjUzOjE1KToKIyEgcm49VHp1aW9wIHJ0PTc4Njg5MjI3MgpXYXMgaXMgbWl0IG1laW5lbSBQYXBwaT8/Pz8KCkdyaW5zZW5kIC4uLiBCZWxkaW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFBhbmlrIFRPVEFMISAoTG9jbywgIDguIERleiAxOTk0LCAyMzo1MTozMyk6CiMhIHJuPUFuYXRvbCBydD03ODY5MTI0NDEKRGVyIGVpbnppZ2UgdmktQmVmZWhsLCBkZW4gbWFuIGtlbm5lbiBtdXNzLCBpc3QgIDxFU0M+IDpxISA8RU5URVI+ICA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogUGFuaWsgVE9UQUwhIChZYW50cm8sICA5LiBEZXogMTk5NCwgMDk6MjE6MzIpOgojISBybj1Mb2NvIHJ0PTc4NjkyNzA5MwoKSkFVISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBQYW5payBUT1RBTCEgKFN5c29wLCAgOS4gRGV6IDE5OTQsIDEwOjQ2OjIwKToKIyEgcm49TG9jbyBydD03ODY5MjcwOTMKU3RpbW10ISBVbmQgZGVyIGVpbnppZ2UgZW1hY3MtQmVmZWhsIGlzdCBeeCBeYyAhCgpPYndvaGwgLi4uIG5vY2ggYmVzc2VyIGlzdCBuYXR1ZXJsaWNoCnJtIC1mIGB3aGljaCB2aWAKcm0gLWYgYHdoaWNoIGVtYWNzYCAuLi4KCi0tIFN5c29wIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogUGFuaWsgVE9UQUwhIChMb2NvLCAgOS4gRGV6IDE5OTQsIDE1OjAxOjMxKToKIyEgcm49U3lzb3AgcnQ9Nzg2OTY2MzgwCkR1IHdpbGxzdCBkb2NoIG5pY2h0IGV0d2EgYmVoYXVwdGVuLCBkYXNzIGRlciAnbWVkJyBvZGVyIHdpZSBkaWVzZXIga29taXNjaGUKRWRpdG9yIGF1ZiBEZWluZXIgTWFzY2hpbmUgaGllc3MsIGJyYXVjaGJhcmVyIGFscyBkZXIgZW1hY3MgaXN0PwogIExvY28KClAuUy46IFdhbm4ga29tbXQgZWlnZW50bGljaCAiRWRpdG9yIFdhcnMiIGluIGRpZSBLaW5vcz8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogUGFuaWsgVE9UQUwhIChTeXNvcCwgIDkuIERleiAxOTk0LCAxNTo1NToxOCk6CiMhIHJuPUxvY28gcnQ9Nzg2OTgxNjkxCldpbGwgaWNoIG5pY2h0LiBBYmVyIGRhIGljaCBkYXZvbiBhdXNnaW5nLCBkYXNzIGRlbiBlaCBoaWVyIHNvbnN0IG5pZW1hbmQKa2VubnQsIGhhYiBpY2ggaWhuIGdhciBuaWNodCBlcnN0IGVyd2FlaG50IC4uLgotLSBTeXNvcCAoZGVzc2VuIExpZWJsaW5nc2VkaXRvciBlaCBlcnN0IG5vY2ggZ2VzY2hyaWViZW4gd2VyZGVuIG11c3MpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHUklOUyAoQmFtYnVsa28sICA5LiBEZXogMTk5NCwgMTY6MDU6NDEpOgpEZXIgQnVtZXJhbmcgdHJpZmZ0IGRlbiBTY2huZWViYWxsIGFtIEtvcGYuCgpXZXIgaGF0IHNjaG9uIG1hbCBuZW4gU2NobmVlYmFsbCBtaXQgS29wZiBnZXNlaGVuPz8/CkJBTUJVTEtPCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBQYW5payBUT1RBTCEgKFRob3JpbiwgIDkuIERleiAxOTk0LCAxNjo1NjoxOSk6CiMhIHJuPVN5c29wIHJ0PTc4Njk2NjM4MApJaHIgbWFjaHRzIHp1IGtvbXBsaXppZXJ0LCBlaW5mYWNoIG5lbiBhbGlhcyBmdWVyIGVkIGF1ZiBuZW4gdmVybnVlbmZ0aWdlbgpFZGl0b3IgbGVnZW4gLi4uIEZpbmkgLi4uClRob3JpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFBhbmlrIFRPVEFMISAoVHp1aW9wLCAgOS4gRGV6IDE5OTQsIDE3OjM4OjA5KToKIyEgcm49VGhvcmluIHJ0PTc4Njk4ODU3OQpEYXMgZ2VodCBuaWNodDogSXN0IENhdCBkYW5uIEVkIG9kZXIgRWQgQ2F0ID8/Ci9UenVpb3AgOikpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGQVEuLi4gKEtyZXRlaywgIDkuIERleiAxOTk0LCAxOTo0OTo0NCk6ClRqYSwgUGlsZ3JpbSwgaWNoIGdsYXViZSBmYXN0LCBkYSBzY2hlaW5lbiBlaW4gcGFhciBMZXV0ZSBkaWUgRkFRIGZ1ZXIKU0VIUiBpbnRlcmVzc2FudCB6dSBoYWx0ZW4uLi4gOikKTmV1bGljaCBnZXNlaGVuOgoKRGVyIFdlZyBmdWVocnQgRGljaCB3ZWl0ZXIgaW4gTm9yZC1TdWVkLVJpY2h0dW5nIGR1cmNoIGRlbiBXYWxkLiBSZWNodHMKdW5kIGxpbmtzIHZvbiBEaXIgc3RlaGVuIHZlcmVpbnplbHQgZWluaWdlIEJhZXVtZSB1bmQgQnVlc2NoZS4gQW5zb25zdGVuCmdpYnQgZXMgaGllciBuaWNodCB2aWVsIHp1IHNlaGVuLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuIHVuZCBub3JkZW4uCkVpbmUgIk1vcmdlbkdyYXVlbiIgRkFRLgpFaW5lICJNb3JnZW5HcmF1ZW4iIEZBUS4KRWluZSAiTW9yZ2VuR3JhdWVuIiBGQVEuCkVpbmUgIk1vcmdlbkdyYXVlbiIgRkFRLgpFaW5lICJNb3JnZW5HcmF1ZW4iIEZBUS4KRWluZSAiTW9yZ2VuR3JhdWVuIiBGQVEuCkVpbmUgIk1vcmdlbkdyYXVlbiIgRkFRLgpFaW5lICJNb3JnZW5HcmF1ZW4iIEZBUS4KRWluZSAiTW9yZ2VuR3JhdWVuIiBGQVEuCkVpbmUgIk1vcmdlbkdyYXVlbiIgRkFRLgpFaW5lICJNb3JnZW5HcmF1ZW4iIEZBUS4KRWluZSAiTW9yZ2VuR3JhdWVuIiBGQVEuCkVpbmUgIk1vcmdlbkdyYXVlbiIgRkFRLgpFaW5lICJNb3JnZW5HcmF1ZW4iIEZBUS4KRWluZSAiTW9yZ2VuR3JhdWVuIiBGQVEuCkVpbmUgIk1vcmdlbkdyYXVlbiIgRkFRLgpFaW5lICJNb3JnZW5HcmF1ZW4iIEZBUS4KRWluZSAiTW9yZ2VuR3JhdWVuIiBGQVEuCkVpbmUgIk1vcmdlbkdyYXVlbiIgRkFRLgpFaW5lICJNb3JnZW5HcmF1ZW4iIEZBUS4KRWluZSAiTW9yZ2VuR3JhdWVuIiBGQVEuCkVpbmUgIk1vcmdlbkdyYXVlbiIgRkFRLgpFaW5lICJNb3JnZW5HcmF1ZW4iIEZBUS4KRWluZSAiTW9yZ2VuR3JhdWVuIiBGQVEuCkVpbmUgIk1vcmdlbkdyYXVlbiIgRkFRLgpFaW5lICJNb3JnZW5HcmF1ZW4iIEZBUS4KRWluZSAiTW9yZ2VuR3JhdWVuIiBGQVEuCkVpbmUgIk1vcmdlbkdyYXVlbiIgRkFRLgpFaW5lICJNb3JnZW5HcmF1ZW4iIEZBUS4KRWluZSAiTW9yZ2VuR3JhdWVuIiBGQVEuCgpLb21pc2NoLCBvZGVyPyEKCgpjIHUgbDhlciwKICBLcmV0ZWsgKGRlciBzZWluZSBGQVEgaW1tZXIgbGllc3QgdW5kIG5pY2h0IGVpbmZhY2ggd2Vnd2lyZnQuLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGluIGRlciBQeXJhbWlkZSAuLi4gKFN5c29wLCAgOS4gRGV6IDE5OTQsIDIwOjQ5OjQ2KToKKC4uLikKRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9iZW4gdW5kIHVudGVuLgpFaW5lIE11bWllLgo+dW50IG11bWllCkVpbmUgbWl0IEJhbmRhZ2VuIHVtd2lja2VsdGUgTXVtaWUsIFdlciB3ZWlzcywgd2FzIGRpZSBoaWVyIHdpbGw/ClNpZSBpc3QgYWJzb2x1dCBmaXQuCgoqZ3JpbnMqIC0gU3lzb3AKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTQ0hNQVJSTiEgKEZ5dCwgIDkuIERleiAxOTk0LCAyMzoxODo1MSk6CiMhIHJuPUFyYW55YSBydD03ODY4MTg0NTcKCkljaCBkYWNodGUsIFEgd2FlcmUgZ2ViYW5pc2h0PwppbHQgZGFzIG5pY2h0IGF1Y2ggZnVlciBkaWUgVGFzdGUsIEFyYW55YT8KCkZ5dCwgd3VuZGVybmQuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdXV1cGVyIChCYW1idWxrbywgMTAuIERleiAxOTk0LCAwMTo0NTo1MCk6CkR1IGhhc3QgamV0enQgNzUgTGViZW5zcHVua3RlIHVuZCAxMyBNYWdpZXB1bmt0ZS4KRWluZSBoZXJybGljaGUgV2Flcm1lIGdlaHQgdm9uIERlaW5lbSBBbXVsZXR0IGF1cyB1bmQgRHUgZnVlaGxzdApEaWNoIHByaW1hLgpEdSBoYXN0IGpldHp0IDE3NSBMZWJlbnNwdW5rdGUgdW5kIDE0IE1hZ2llcHVua3RlLgpEdSBuaW1tc3QgYWxsZSBEZWluZSBVZWJlcndpbmR1bmdza3JhZWZ0ZSB6dXNhbW1lbiB1bmQgc2NodWV0dGVzdCBEaXIgZGVuClNjaGxlaW0gaW4gZGllIEtlaGxlLCBrb21pc2NoZXJ3ZWlzZSB3aXJzdCBEdSB2b24gZWluZW0gYW5nZW5laG0gd2FybWVuCkdlZnVlaGwgZHVyY2hmbHV0ZXQuCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMTE0IE1hZ2llcHVua3RlLgpJc3QgZGFzIG5pY2h0IHRvbGwuLi4KCkJBTUJVTEtPCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZXdpc3NlbiAoS2V0b3MsIDEwLiBEZXogMTk5NCwgMTk6MTA6NTMpOgpVcGRhdGluZyBHZXdpc3NlbiAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hY2h0cyBtZWhyIGxvcyBhbHMgYW0gVGFnPz8/IChEdXJpYW4sIDExLiBEZXogMTk5NCwgMDE6NDQ6MDQpOgpTYWNoZW4gZ2lidCBlcywgZGEgbG9nZ3QgbWFuIHNpY2ggbWl0dGVuIGluIGRlciBOYWNodCBlaW4sIHVtIGVuZGxpY2ggbWFsCmFsbGVpbmUgaW0gTXVkIHp1IHNlaW4sIHVuZCB3YXMgaXN0OgoKICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gU29uLCAxMS4gRGV6IDE5OTQsIDAxOjQyOjIwICgyNiBUZWlsbmVobWVyKQoKMjYgLi4uIGVpbmZhY2ggdW5nbGF1YmxpY2ghISEKCkVpbiBzdGF1bmVuZGVyCi0gRHVyaWFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdWVyIEpvZi4uLiAoSGlnaGxhbmRlciwgMTEuIERleiAxOTk0LCAxODoxNjoyMyk6CkhhYiBpY2ggYXVzIGVpbmVtIEFydGlrZWwgaW4gYWx0Lm11ZC5scCwgc29sbHRlIGFsc28gd2lya2xpY2ggZXhpc3RpZXJlbjoKUVVPVEUKdGhlIHZpcnR1YWwgcmVhbGl0eSBoYXMgYWZmZWN0ZWQgX3lvdV8sIHlvdXIgcGVyc29uYWwgcmVjb3JkIGluIFplbk11ZAood2hpY2ggaXMgYSBtdWQgd2hlcmUgeW91IGhhdmUgdG8gYmUgaWRsZSBmb3IgYXMgbG9uZyBhcyBwb3NzaWJsZSB0byBzY29yZQpwb2ludHMpLi4gU3R1ZmYgbGlrZSB0aGF0Li4gSWYgeW91IGhhdmUgU09NRVRISU5HIHRvIHRlbGwgbWUgYWJvdXQgbXUqKiwKVU5RVU9URQpFaW4gSm9mTXVkISA6PiA6PiA6LgogICBZVEggOz4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOYWNodHMgbWVociBsb3MgYWxzIGFtIFRhZz8/PyAoR3JpbW1ib3JuLCAxMi4gRGV6IDE5OTQsIDAwOjQ5OjQ1KToKIyEgcm49RHVyaWFuIHJ0PTc4NzEwNjY0NApBbHNvLCBEdXJpYW46CkVyc3RlbnMgaXN0IHRhZ3N1ZWJlciB2b3IgZGVyIHBsYXllcnphaGwgMjYgaS5hLiBlaW5lIDEuClp3ZWl0ZW5zIHN0YXVuZSBpY2ggbWl0IERpci4gVW0gdmllcnRlbCB2b3IgMiBudXIgMjYgU3BpZWxlcj8gRGFzIGlzdCB3b2hsCnNlaXQgbGFuZ2VtIGRpZSBnZXJpbmdzdGUgU3BpZWxlcnphaGwgenUgZGllc2VyIFVocnplaXQuLi4KCkdyaW1tYm9ybiwgQXRoZWlzdCB1bmQgTmFjaHRldWxlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExpZWJlc3BhZXJjaGVuIChEdXJpYW4sIDEyLiBEZXogMTk5NCwgMTE6MDQ6NDApOgojISBybj1HcmltbWJvcm4gcnQ9Nzg2OTg1NzgwCltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgSGFyZGlsLCAxMi4gRGV6IDE5OTQsIDA3OjQ4OjE1XToKV2VsY2hlcyBMaWViZXNwYWVyY2hlbiwgR3JpbW1ib3JuID8gRHUgdW5kIEdyaW1tZGVhdGggPyA6LSkKTml4IGZ1ZXIgVW5ndXQgKHVuZCB2ZXJsZWcgZGFzIGJpdHRlIGplbWFuZCBuYWNoIFNjaG1hcnJuKSAuLi4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOYWNodHMgbWVociBsb3MgYWxzIGFtIFRhZz8/PyAoQm9pbmcsIDEyLiBEZXogMTk5NCwgMTE6Mzc6NTcpOgojISBybj1HcmltbWJvcm4gcnQ9Nzg3MTg5Nzg1ClN0aW1tdC4gamVkZXNtYWwgd2VubiBpY2ggdW0gZGllc2UgVWhyemVpdCBub2NoIGRhIHdhciAoenVnZWdlYmVuZXJtYXNzZW4KcmVjaHQgc2VsdGVuIGluIGxldHp0ZXIgWmVpdCkgd2FyZW4gNDAgYmlzIDUwIFNwaWVsZXIgZWluZ2Vsb2dndC4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogUGFuaWsgVE9UQUwhIChGeXQsIDEyLiBEZXogMTk5NCwgMTY6NTU6MDEpOgojISBybj1Mb2NvIHJ0PTc4NjkyNzA5MwpudXIgbWl0IDp3cSBpc3QgZGFzIEVkaXRpZXJlbiBhYmVyIGVpY2hsaWNoIHNjaHdpZXJpZyA6KQoKRnl0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmFjaHRzIG1laHIgbG9zIGFscyBhbSBUYWc/Pz8gKENhcmFkaHJhcywgMTIuIERleiAxOTk0LCAxNzoyODo0OCk6CiMhIHJuPUR1cmlhbiBydD03ODcxMDY2NDQKU28gd2VuaWdlPyBOdXIgMjY/IEFsc28gYWxzIGljaCBpbiBMaW56IHdhciB3YXJlbiBlcyB3ZWl0YXVzIG1laHIsCmF1Y2ggc28gZXR3YSB1bSBkaWUgVWhyemVpdCA6LSkpCgogICAgICAgICAgICAgdHNjaG9lICAgICAgICAgICAgQ2FyYWRocmFzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5hY2h0cyBtZWhyIGxvcyBhbHMgYW0gVGFnPz8/IChDYXJhZGhyYXMsIDEyLiBEZXogMTk5NCwgMTc6MzE6NDEpOgojISBybj1DYXJhZGhyYXMgcnQ9Nzg3MjQ5NzI4CiAgICAgICAgICAgICAgICAgSFVDSCEhCgpJY2ggaGFiZSBmYWxzY2ggdW50ZXJzY2hyaWViZW4gOikgRXMgZmVobHRlIGVpbgoKICAgICAgICAgICAgICAgICAgQ2FyYWRocmFzIGRlciBld2lnZSBQcm9waGV0IDotKQpQUzogTWl0IDQ2IGF1Y2ggbmljaHQgbWVociBkZXIgSnVlbmdzdGUgKnNldWZ6KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV3VuZGVyIHVlYmVyIFd1bmRlciAoSGF3aywgMTMuIERleiAxOTk0LCAxNzowNTo1NSk6Ck5ldWxpY2ggYmVpbSBTY2htaWVkOgoKdmVyZ2xlaWNoZSBMaWNodGhlbG0gdW5kIE1ldGFsbGhlbG0KRHUgc29sbHRlc3QgdmllbGxlaWNodCB6d2VpIHZlcnNjaGllZGVuZSBPYmpla3RlIGFuZ2ViZW4uCgplaW4gYW4gZGllIGFsY2hlbWllIGdsYXViZW5kZXIgSEFXSy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1JU1QhISEgKFllbmRpLCAxNS4gRGV6IDE5OTQsIDIxOjQ5OjAwKToKCj4gYmV0cmV0ZSBqb2xsZURpZSBKb2xsZSBsZWd0IGFiLgoKV2llIGJpdHRlPwoKCi4uLnRvbGwsIHdhcz8gKnNldWZ6KgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTUlTVCEhISAoR3JpbW1ib3JuLCAxNS4gRGV6IDE5OTQsIDIxOjUyOjUxKToKIyEgcm49WWVuZGkgcnQ9Nzg3NTI0NTQwCkhtbSwgZGFzIGlzdCBkb2NoIFN0YW5kYXJkLiBEaWUgU2NoaWZmZSBzaW5kIG5hY2ggZm9sZ2VuZGVtIE11c3RlciBnZW1hY2h0OgotIERhcyBTY2hpZmYgZGFzIER1IHN1Y2hzdCBpc3QgbmljaHQgZGEuIERhbm4ga29tbXRzIGRpZSBuYWVjaHN0ZW4gMyBNaW51dGVuCmF1Y2hoIHNlaHIgc2ljaGVyIG5pY2h0LgotIERhcyBTY2hpZmYgZGFzIER1IHN1Y2hzdCBpc3QgZGEuIERhbm4gd2VyZGVuIGRpZSBMZWluZW4gZ2Vsb2VzdCB1bmQgRHUgaGFzdApOVVIgbm9jaCBtaXQgYWxpIGVpbmUgQ2hhbmNlLgoKQXVzc2VyZGVtIGlzdCBkaWUgU2NoaWZmc3RvdXIgc2VociBnZXJ1aHNhbSwgaW4gZGVyIFplaXQsIGRpZSBkYXMgU2NoaWZmCmJyYXVjaHQga2FubiBpY2ggenUgRnVzcyBnYW56IE1HIGVpbm1hbCB1bXJ1bmRlbi4gV2VubnMgbGFndC4KCkdyb3NzZXIgU2NoaWZmc2JlbnV0emVyLAogICAgICAgICAgICAgICAgICAgICAgICAgR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0c3Nzc3MgKFN0YWhsZG9ybiwgMTUuIERleiAxOTk0LCAyMjozODo0Nyk6CndhcyByZWd0IGlociBldWNoIGF1ZiA/PyAgZGVyIHBlZ2FzdXMgbmltbXQgZGlyIHNvZ2FyIGdlbGQgYWIsIHdlbm4gZXIKd2VnZmxpZWd0IHVuZCBkdSBudXIgZWluZSB6ZWhudGVsc2VrdW5kZSB6dSBzcGFldCBkZWluIGFsaSBlaW5nZXRpcHB0IGhhc3QuCmRlaW4gZ2VsZCBuaW1tdCBlci4gRElDSCBuaWNodC4gKmdydW1tZWwqCgogICAgICAgICAgICAgICBTVEFITC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVuZ2wuIFp1bmdlbmJyZWNoZXIgKERyaXp6dCwgMTYuIERleiAxOTk0LCAwOToxMzowNik6CkhpIGZvbGtzLAoKSWNoIGhhYmUgbWFsIHdpZWRlciBuZSBTdG9yeSBnZWZ1bmRlbi4gU2llIGlzdCB6d2FyIHNjaG9uIGFlbHRlciwgYWJlciBpY2gKaG9mZmUsIHNpZSBoYXQgbm9jaCBrZWluZW4gdWViZXJsYW5nZW4gQmFydCA6LSkKQml0dGUgYWNodGV0IGF1ZiBkaWUgR3Jvc3MtIHVuZCBLbGVpbnNjaHJlaWJ1bmc6IHNpZSBpc3QgYXVzbmFobXN3ZWlzZSBtYWwKd2ljaHRpZyBmdWVyIGRlbiBTaW5uIGRlcyBUZXh0ZXMuICh1bmQgbnVuIHZlcnN1Y2h0LCBkZW4gbnVuIGZvbGdlbmRlbiBNdWVsbAptYWwgcnVudGVyenVyYXNzZWxuIHVuZCBhdWNoIHp1IHZlcnN0ZWhlbiAgKmdyaW5zKikKCk5lZCBLbm90IHdhcyBzaG90IGFuZCBTYW0gU2hvdCB3YXMgbm90LiBTbyBpdCBpcyBiZXR0ZXIgdG8gYmUgU2hvdCB0aGFuIEtub3QuClNvbWUgc2F5IEtub3Qgd2FzIG5vdCBzaG90LCBidXQgU2hvdCBzYXlzIGhlIHNob3QgS25vdC4gRWl0aGVyIHRoZSBzaG90IFNob3QKc2hvdCB3YXMgbm90IHNob3QsIG9yIEtub3Qgd2FzIHNob3QuIElmIHRoZSBzaG90IFNob3Qgc2hvdCBzaG90IEtub3QsIEtub3QKd2FzIHNob3QsIGJ1dCBpZiB0aGUgc2hvdCBTaG90IHNob3Qgc2hvdCBTaG90LCBTaG90IHdhcyBzaG90LCBub3QgS25vdC4gSG93LQpldmVyOiB0aGUgc2hvdCBTaG90IHNob3Qgc2hvdCBub3QgU2hvdCwgYnV0IEtub3QuCgpJY2ggaG9mZmUsIGRhc3MgaWNoIGtlaW5lIFRpcHBmZWhsZXIgZ2VtYWNodCBoYWJlIDotKQoKRHJpenp0LCBkZXIgZGFzIEdhbnplIGhpZXIgaW4gMTQgU2VrdW5kZW4gcnVudGVycmFzc2VsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQzY0IChDYXR3ZWF6bGUsIDE2LiBEZXogMTk5NCwgMTg6MDA6MjApOgojISBybj1TdGFobGRvcm4gcnQ9Nzg3NDE5MzUyCltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgQXJhbnlhLCAxNS4gRGV6IDE5OTQsIDE1OjExOjU0XToKQWVoZW0sIHdlbm4ncyB1bSBkZW4gQnJvdGthc3RlbiBnZWh0LCBpY2ggc3VjaGUgZWluZW4gTW9uaXRvciBmdWVyIG1laW5lbgpnZWxpZWJ0ZW4sIGFiZ2VzY2hyYW1tZWx0ZW4gQzY0IC0gZGVyIG1pY2ggenVtIENvbXB1dGVybiBnZWZ1ZWhydCBoYXQuIFdlaXNzCmRhIGplbWFuZCB3YXM/CgpBcmFueWEKICAgICAgIGxpZWJ0IGFsdG1vZGlzY2hlIEcnc2NoaWNodGVuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQzY0IChDYXR3ZWF6bGUsIDE2LiBEZXogMTk5NCwgMTg6MDA6MjkpOgojISBybj1BcmFueWEgcnQ9Nzg3NTAwNzE0CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgWWFudHJvLCAxNS4gRGV6IDE5OTQsIDE1OjQ3OjM0XToKCkRhIHR1dCBlcyBqZWRlciBkdW1tZSBGZXJuc2VoZXIgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBDNjQgKENhdHdlYXpsZSwgMTYuIERleiAxOTk0LCAxODowMzowMSk6CiMhIHJuPUFyYW55YSBydD03ODc1MDA3MTQKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBLbGluZ2UsIDE2LiBEZXogMTk5NCwgMDA6NDM6MzJdOgpoYXN0IGR1IGtlaW5lbiBmZXJuc2VoZXIgPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvbHBpaGluLCBXb2xwaWhlciAoQW5hdG9sLCAxNy4gRGV6IDE5OTQsIDE4OjQyOjI4KToKCihiZWkgYWxsZXJuYWVjaHN0ZXIgR2VsZWdlbmhlaXQgaW4gcnVicmlrIDI0IHp1IHZlcmxlZ2VuKQoKRGllcyBpc3QgQW5hdG9scyB3dXNjaGVsaWdlciB3aW56aWdlciBXb2xwZXJ0aW5nZXIgZGVyIGxhbmdlcnNlaG50ZQpOYWNod3VjaHMgZGVyIFdvbHBlcnRpbmdlcmZhbWlsbGllLiBFciBpc3QgemllbWxpY2ggbmV1Z2llcmlnIHVuZCB2ZXJzcGllbHQuClNlaW5lIGtvZXJwZXJsaWNoZW4gTWVya21hbGUgc2luZCBub2NoIG5pY2h0IGJlc29uZGVycyBhdXNnZXByYWVndC4KU2VpbiB3ZWljaGVzLCB3dXNjaGVsaWdlcyBGZWxsIGlzdCBub2NoIGdhbnogZ3JhdS4gRHUgZXJrZW5uc3Qgc2Nob24KZGllIHNwYWVybGljaGVuIEFuc2FldHplIHZvbiBHZXdlaWggdW5kIFNjaHdhbnouIFNlaW5lIGJlaWRlbiBrbGVpbmVuCkt1bGxlcmF1Z2VuIHNjaGF1ZW4gRGljaCBlcndhcnR1bmdzdm9sbCB1bmQgdW5nZWR1bGRpZyBhbi4uLiAuCgpTbyBzaWVodCBlciBhdXMuCkthbm4gZXIgd2FzIGRhZnVlciwgZGFzcyBzZWluIFZhdGVyIHp1c2FtbWVuZ2VwdXp6ZWx0IHdlcmRlbiBtdXNzdGU/CgoKICAgICAgICAgICAgIEFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS3VyemJlc2NocmVpYnVuZ2VuIChHcmltbWJvcm4sIDE4LiBEZXogMTk5NCwgMDM6MjU6NTgpOgoKR2VmdW5kZW4gaW4gZGVyIEtlbGNocXVlc3Q6CkVpbmUgRmFsbGUKRWluIEtlbGNodmVyc3RlY2sKCk5hLCBzY2hhZGUsIGRhc3MgZGllIGFuZGVyZW4gS2VsY2hlIG5pY2h0IHNvIGFuZ2VnZWJlbiB3YXJlbi4uLiA7LSkKCkdyaW1tYm9ybiwgQXRoZWlzdCB1bmQgS2VsY2hzdWNoZXIgKE1pc3QsIHdvIGthbm4gZGVyIGxldHp0ZSBudXIgc3RlY2tlbj8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS3VyemJlc2NocmVpYnVuZ2VuIChHdWxkdWthdCwgMTguIERleiAxOTk0LCAxNTo0NTo1Nik6CiMhIHJuPUdyaW1tYm9ybiBydD03ODc3MTc1NTgKQWJlciBudXIsIHdlbm4gZHUgaW0ga3Vyem1vZHVzIGR1cmNoIGRpZSBnYWVuZ2UgbGFldWZzdCEgKERhIHN0ZWhlbiBlaAprb21pc2NoZSBCZXplaWNobnVnbmVuIGRyaW4hKSA7KQpHRAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLdXJ6YmVzY2hyZWlidW5nZW4gKEd1bGR1a2F0LCAxOC4gRGV6IDE5OTQsIDE1OjUyOjA4KToKIyEgcm49R3VsZHVrYXQgcnQ9Nzg3NzYxOTU2Cm9vcHMsIHdpZSBncmltbWJvcm4gbWlyIGdlcmFkZSBtaXR0ZWlsdCwgaGF0IGVyIGRhcyBtaXQgZGVuCmt1cnpiZXNjaHJlaWJ1bmdlbiBnZXNjaHJlaWJlbi4gQWJlciB3ZXIgbGllc3Qgc2Nob24gdWViZXJzY2hyaWZ0ZW4hIDspCkdECgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xvc3BydWVjaGUgKEZyYWdnbGUsIDE5LiBEZXogMTk5NCwgMTg6MDQ6MDApOgpIaWVyIGRpZSBTYW1tbHVuZyBkZXIgYmlzaGVyaWdlbiBLbG9zcHJ1ZWNoZToKKHNvd2FzIGdlaG9lcnQgZG9jaCBpbiBkaWVzZSBSdWJyaWshKQoKV2VyIEtsb3dhZW5kZSBwdXR6dCwgdmVyYnJlbm50IGF1Y2ggQnVlY2hlci4KSWNoIHNpdHp0IHdpZSBlaW5zdCBkZXIgRnVlaHJlciBoaWVyICwgZGllIGJyYXVuZSBNYXNzZSB1bnRlciBtaXIKRWluIEdlb2xvZ2UgaXN0IGVpbiBNYW5uICxkZXIgd2lya2xpY2ggdWViZXJoYXVwdCBuaWNodHMga2FubiAgOikKV2VyIGRpZXNoaWVyIGxpZXN0LCB3ZWlzcywgZGFzcyBWaXBlciBzY2hvbm1hbCBoaWVyIHdhci4KTmljaHQgYWxsZXMsIHdhcyAyIEJhY2tlbiBoYXQgaXN0IGVpbiBHZXNpY2h0LgpXZXIgZGFzIGxpZXN0LCBwaW5rZWx0IGRhbmViZW4uCldlciBoaWVyIHNpdHplbiB0dXQsIGhhdCBlaW5lbiB3aXJrbGljaCBoYXJ0ZW4gVGFnIGhpbnRlciBzaWNoCldlciBhbmRlcm4gaW4gZGllIE1vZXNlIGJlaXNzdCwgaXN0IGJvZXNlIG1laXN0LgpMaWViZXIgZWluZSBCbGluZGUgaW0gQmV0dCBhbHMgZWluZSBUYXViZSBhdWYgZGVtIERhY2gKTWVya2U6IFBpbmtlbCBOSUUgZ2VnZW4gZGVuIFdpbmQuLi4KTWVya2U6IFVuZCBhdWNoIG5pY2h0IGdlZ2VuIGVsZWt0cmlzY2ggZ2VsYWRlbmUgWmFldW5lLi4uCkljaCB3YXIgc2Nob24gaGllciEKc3VjaHN0IGR1IFdpdHplIGFuIGRlciBXYW5kLCBkZW4gZ3JvZXNzdGVuIGhhZWx0c3QgRHUgaW4gZGVyIEhhbmQuCkFsbGVzIGlzdCBTY2hlaXNzZSEKSWNoIHNhZyBudXI6IE5hcnJlbmhhZW5kZSBiZXNjaG1pZXJlbiBUaXNjaCB1bmQgV2FlbmRlLi4uCgpXZWl0ZXJlIE5pdmVhdWxvc2lna2VpdGVuIGJpdHRlIGltIFNjaGxvc3MgZGVyIEdvcmdzIGFibGllZmVybiA7KQoKRnJhZ2dsZQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJsaW5kaGVpdCBzY2h1ZXR6dCB2b3IgU2VoZXJuIG5pY2h0IChDYXJhZGhyYXMsIDE5LiBEZXogMTk5NCwgMjI6NTU6MzYpOgpHZXJhZGUgZWJlbiBoYXQgbWljaCBkZXIgR2xpdHplcm1vY2sgZXJibGluZGVuIGxhc3Nlbi4KQWxzIGljaCBkYW5uIGJlaSBlaW5lciBIZWlsc3RlbGxlIHdhciwgcGFzc2llcnRlIGZvbGdlbmRlczoKCnNjaGF1ZQpEdSBiaXN0IGJsaW5kICEKbGllcyBydW5lbgo+IER1IGxpZXN0IGRpZSBIZWlscnVuZW4gdW5kIGZ1ZWhsc3QsIHdpZSBEaWNoIGVpbmUgaGVycmxpY2hlIFdhZXJtZQpkdXJjaHN0cm9lbXQuIERpZSBSdW5lbiBmbGFja2VybiBrdXJ6IGF1ZiB1bmQgdmVyYmxhc3NlbiBkYW5uLgpEdSBoYXN0IGpldHp0IDIwMyBMZWJlbnNwdW5rdGUgdW5kIDMgTWFnaWVwdW5rdGUuCgpUamEsIGF1Y2ggZWluIGJsaW5kZXIgU2VoZXIgaXN0IGVpbiBTZWhlciwgZGFzIHdhciBkZXIgQmV3ZWlzLiA6KQoKICAgICAgdHNjaG9lICAgICAgICAgQ2FyYWRocmFzIGRlciBibGluZGUgUHJvcGhldAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc21hdWcsIGRlciBnbGFldWJpZ2UgKFNtYXVnLCAyMC4gRGV6IDE5OTQsIDE2OjMzOjA2KToKaG1tLi4uCgphbnNjaGVpbmVuZCBnaWJ0IGVzIGhpZXIgaW0gTW9yZ2VuR3JhdWVuIEF0aGVpc3RlbiAoaWlpaWhoaGgpICEKCmFiZXIgenVtIEdsdWVjayBnaWJ0IGVzIG1pY2ghIEljaCBiaW4gc2VpdCBrdXJ6ZXIgWmVpdCBkYXp1IGJlcnVmZW4KVW5nbGFldWJpZ2UgenUgYmVrZWhyZW46CgogICEhISBKZWRlciBNZW5zY2ggc29sbHRlIGFuIGV0d2FzIGdsYXViZW4hCiAgISEhIEljaCBnbGF1YmUgaWNoIGJyYXVjaGUgbm9jaCBlaW4gQmllci4uLgoKSWNoIGhvZmZlIGVzIHNjaGxpZXNzZW4gc2ljaCBub2NoIGVpbmlnZSBMZXV0ZSBkaWVzZW0gR2xhdWJlbiBhbiEKCnNtYXVnIHNhZ3Q6IDxIaWNrcyE+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgZ2VzY2hhaCBpbiBkZXIgS2FwZWxsZT8/PyAoQW5jYWxhZ29uLCAyMS4gRGV6IDE5OTQsIDE0OjQzOjU3KToKTW9pbiwgaWhyIGFsbGUhCkljaCBoYWJlIG1pY2ggZ3JhZCBlaW5nZWxvZ2d0IHVuZCB3YWNoZSBpbiBkZXIgS2FwZWxsZSBhdWYuIEF1c3NlciBkZXIKU3RhbmRhcmRyYXVtYmVzY2hyZWlidW5nIHNlaGUgaWNoIG5vY2g6CkVpbiBTdXBlci1EaWNrbWFubgpFaW4gQmx1dGZsZWNrCkVpbmUgdG90ZSBoYWxidmVyZ2FtbWVsdGUgRmxpZWdlCgpXYXMgd3VlcmRlIFNoZXJsb2NrIEhvbG1lcyBkYXJhdXMgc2NobGllc3Nlbj8KCmVpbiB2ZXJ6d2VpZmVsdCBrb21iaW5pZXJlbmRlcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuY2FsYWdvbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEcmFjbyBrbnVkZGVsbGVuc2lzIG1ham9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FzIGdlc2NoYWggaW4gZGVyIEthcGVsbGU/Pz8gKFllbmRpLCAyMS4gRGV6IDE5OTQsIDIxOjA0OjIzKToKIyEgcm49QW5jYWxhZ29uIHJ0PTc4ODAxNzQzNwoKRWxlbWVudGFyeSwgbXkgZGVhciBBbmNhbGFnb24hCgpEaWUgRmxpZWdlLCB2b20gQmx1dGdlcnVjaCBhbmdlbG9ja3QsIHNjaHdpcnJ0ZSBpbiBkaWUgS2FwZWxsZSwgd28gc2llIGRlbgpTdXBlci1EaWNrbWFubiBlcmJsaWNrdGUuIFZvbSBCbHV0ZmxlY2sgYWJnZWxlbmt0IHZlcnN1Y2h0ZSBzaWUgc2ljaCBhbiBkZXIKU2Nob2tvbGFkZW5rcnVzdGUgdW5kIHZlcmh1bmdlcnRlLCBkYSBpaHIgUnVlc3NlbCBhdXNzZXJzdGFuZGUgd2FyLCBzZWxiaWdlCnp1IGtuYWNrZW4uICAgICAgICAgICAgICAgICBTb25zdCBub2NoIEZyYWdlbj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZWlobmFjaHRzdHJlZmZlbiBkZXIgTHVlYmVja2VyIE11ZGRlciAoUXVlbmdpc3R1LCAyMi4gRGV6IDE5OTQsIDAwOjQ5OjEzKToKRGFzIGRpZXNqYWVocmlnZSBUcmVmZmVuIGRlciBMdWViZWNrZXIgTXVkZGVyIGZpbmRldCBpbiBtZWluZXIgV29obnVuZyBzdGF0dC4KV2VubiB3aXIgdm9sbHphZWhsaWcgc2luZCwga29lbm5lbiB3aXIgamEgU2NoYWNoIG9kZXIgQmF1ZXJuc2thdCBzcGllbGVuLiBXZW5uCndpciBhbGxlIHVuc2VyZSBad2VpdGllcyBtaXRicmluZ2VuLCByZWljaHQgZXMgYXVjaCB6dW0gRG9wcGVsa29wZi4gOy0pCipzY2htYXJybiBlbmRlKgotLS0gVGhpcyBtZXNzYWdlIHdhcyB3cml0dGVuIG9uIDEwMCUgcmVjeWNsZWQgZWxlY3Ryb25zLiAtLS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2FzIGdlc2NoYWggaW4gZGVyIEthcGVsbGU/Pz8gKENhdHdlYXpsZSwgMjIuIERleiAxOTk0LCAxMDo0NDowOSk6CiMhIHJuPVllbmRpIHJ0PTc4ODA0MDI2MwpUamFhYWFhLCBhYmVyIHdpZSBrb21tdCBkZXIgQmx1dGZsZWNrIGluIGRpZSBLYXBlbGxlLCBteSBkZWFyClllbmRpbGVpbiwgaG0/CgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdhcyBnZXNjaGFoIGluIGRlciBLYXBlbGxlPz8/IChZZW5kaSwgMjIuIERleiAxOTk0LCAxMjo0MzoxNyk6CiMhIHJuPUNhdHdlYXpsZSBydD03ODgwODk0NDkKCkVsZW1lbnRhcnksIG15IGRlYXIgQ2F0d2VhemxlOgoKT2ZmZW5zaWNodGxpY2ggaGF0dGUgZWluZSBhcm1lIFNwaWVsZXJzZWVsZSBnZWJldGV0IHVuZCBzaWNoIHdpZWRlcgppbmNvcnBvcmllcnQuIFVtIGRpZSBaZWl0IHp1IHVlYmVyYnJ1ZWNrZW4sIGRpZSBzZWluZSBMZWJlbnNwdW5rdGUgenVyCnZvbGxzdGFlbmRpZ2VuIFJlZ2VuZXJhdGlvbiBicmF1Y2h0ZW4sIGxhcyBkaWVzZSBQZXJzb24gZGllIE1vcmdlbkdyYXVlbk5ld3MuCkFscyBudW4gZWluIHp3ZWl0ZXIgU3BpZWxlciBkaWUgS2FwZWxsZSBiZXRyYXQsIHdvbGx0ZSBzaWNoIFNwaWVsZXIgZWlucywKb2IgZGVyIGludGVyZXNzYW50ZW4gWmVpdHVuZ3NsZWt0dWVyZSB2ZXJnZXNzZW4gaGFiZW5kLCBkYXNzIGVyIF9rZWluXwpibG9zc2VyIEdlaXN0IG1laHIgd2FyLCBnZWlzdGVyaGFmdCB2ZXJiZXVnZW4gdW5kIFNwaWVsZXIgendlaSBkdXJjaCBkZW4KQW5ibGljayBzZWluZXMgaW4gZGVuIEZ1c3Nib2RlbiBlaW50YXVjaGVuZGVuIEtvcGZlcyBlcnNjaHJlY2tlbi4KWnUgc2VpbmVtIGVpZ2VuZW4gU2NocmVja2VuIGFiZXIgd3VyZGUgZXIgZHVyY2ggZGVuIGhhcnRlbiBBdWZwcmFsbCBzZWluZXMKQ3Jhbml1bSBhdWYgZGVuIHN0ZWluZXJuZW4gS2FwZWxsZW5ib2RlbiB1bnNhbmZ0IF91bmQgYmx1dGlnXyBkYXJhbiBlcmlubmVydCwKZGFzcyBlciB3aWVkZXIgZmxlaXNjaGxpY2hlIEZvcm0gYW5nZW5vbW1lbiBoYXR0ZS4KClNvbGNoZXJhcnQgYWxzbyBrYW0gZGVyIEJsdXRmbGVjayBpbiBkZXIgS2FwZWxsZSB6dXN0YW5kZS4KCk5vY2ggRnJhZ2VuLCBDYXR3ZWF6bGU/IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWNoLCBEQVMgZ2VzY2hhaCBpbiBkZXIgS2FwZWxsZSEgKEFuY2FsYWdvbiwgMjIuIERleiAxOTk0LCAxMjo1NToxNyk6CkhhbGxvIFllbmRpIQpJY2ggZGFua2UgZGlyIGZ1ZXIgZGllc2UgcmVzdGxvc2UgQXVmamtsYWVydW5nIGRpZXNlcyBmYWxsZXMuIE1laW5lCmdlaGlybndpbmR1bmdlbiB3ZXJkZW4gZGlyIG5haGV6dSBld2lnIGRhbmtiYXIgc2Vpbi4gRGFzIENoYW9zIG1laW5lcgpLb21iaW5hdGlvbmVuIGhhdCBzaWNoIG51biBpbiBMdWZ0IGF1ZmdlbG9lc3QuIFZpZWxlbiBEYW5rLCBmcm9oZSBXZWlobmFjaHRlbgp1bmQgZ3V0ZW4gUnV0c2NoIQogICAgICAgICAgICAgICAgICBlaW4gYXVmYXRtZW5kZXIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuY2FsYWdvbgogICAgICAgICAgICAgICAgICAgICAgICAgIERyYWNvIGtudWRkZWxsZW5zaXMgbWFqb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlZGljaHQgKFllbmRpLCAyMi4gRGV6IDE5OTQsIDE1OjI5OjIzKToKPgo+ICAgICAgICAgICAgQSBHcmFuZGNoaWxkJ3MgR3VpZGUgdG8gVXNpbmcgR3JhbmRwYSdzIENvbXB1dGVyCj4KPgo+ICAgICAgICAgICAgICAgICAgICAgQml0cyAgIEJ5dGVzICAgQ2hpcHMgICBDbG9ja3MKPiAgICAgICAgICAgICAgICAgICAgIEJpdHMgaW4gYnl0ZXMgb24gY2hpcHMgaW4gYm94Lgo+ICAgICAgICAgICAgICAgICBCeXRlcyB3aXRoIGJpdHMgYW5kIGNoaXBzIHdpdGggY2xvY2tzLgo+ICAgICAgICAgICAgICAgICAgICAgIENoaXBzIGluIGJveCBvbiBldGhlci1kb2Nrcy4KPgo+ICAgICAgICAgICAgIENoaXBzIHdpdGggYml0cyBjb21lLiAgQ2hpcHMgd2l0aCBieXRlcyBjb21lLgo+ICAgICAgICAgICAgICAgQ2hpcHMgd2l0aCBiaXRzIGFuZCBieXRlcyBhbmQgY2xvY2tzIGNvbWUuCj4KPiAgICAgICAgICAgICAgIExvb2ssIHNpci4gTG9vaywgc2lyLiByZWFkIHRoZSBib29rLCBzaXIuCj4gICAgICAgICAgICAgICBMZXQncyBkbyB0cmlja3Mgd2l0aCBiaXRzIGFuZCBieXRlcywgc2lyLgo+ICAgICAgICAgICAgICBMZXQncyBkbyB0cmlja3Mgd2l0aCBjaGlwcyBhbmQgY2xvY2tzLCBzaXIuCj4KPiAgICAgICAgICAgICAgIEZpcnN0LCBJJ2xsIG1ha2UgYSBxdWljayB0cmljayBiaXQgc3RhY2suCj4gICAgICAgICAgICAgICAgVGhlbiBJJ2xsIG1ha2UgYSBxdWljayB0cmljayBieXRlIHN0YWNrLgo+ICAgICAgICAgICAgICAgICBZb3UgY2FuIG1ha2UgYSBxdWljayB0cmljayBjaGlwIHN0YWNrLgo+ICAgICAgICAgICAgICAgIFlvdSBjYW4gbWFrZSBhIHF1aWNrIHRyaWNrIGNsb2NrIHN0YWNrLgo+Cj4gICAgICAgICAgICAgICAgICBBbmQgaGVyZSdzIGEgbmV3IHRyaWNrIG9uIHRoZSBzY2VuZS4KPiAgICAgICAgICAgICAgICAgICAgQml0cyBpbiBieXRlcyBmb3IgeW91ciBtYWNoaW5lLgo+ICAgICAgICAgICAgICAgICAgQnl0ZXMgaW4gd29yZHMgdG8gZmlsbCB5b3VyIHNjcmVlbi4KPgo+ICAgICAgICAgICAgICAgICAgTm93IHdlIGNvbWUgdG8gdGlja3MgYW5kIHRvY2tzLCBzaXIuCj4gICAgICAgICAgICAgICAgICAgVHJ5IHRvIHNheSB0aGlzIGJ5IHRoZSBjbG9jaywgc2lyLgo+Cj4gICAgICAgICAgICAgICAgICAgICAgICAgQ2xvY2tzIG9uIGNoaXBzIHRpY2suCj4gICAgICAgICAgICAgICAgICAgICAgICAgQ2xvY2tzIG9uIGNoaXBzIHRvY2suCj4gICAgICAgICAgICAgICAgICAgICAgICAgRWlnaHQgYnl0ZSBiaXRzIHRpY2suCj4gICAgICAgICAgICAgICAgICAgICAgICAgRWlnaHQgYml0IGJ5dGVzIHRvY2suCj4gICAgICAgICAgICAgICBDbG9ja3Mgb24gY2hpcHMgd2l0aCBlaWdodCBiaXQgYnl0ZXMgdGljay4KPiAgICAgICAgICAgICAgQ2hpcHMgd2l0aCBjbG9ja3MgYW5kIGVpZ2h0IGJ5dGUgYml0cyB0b2NrLgo+Cj4gICAgICAgICAgICAgICAgICAgICAgSGVyZSdzIGFuIGVhc3kgZ2FtZSB0byBwbGF5Lgo+ICAgICAgICAgICAgICAgICAgICBIZXJlJ3MgYW4gZWFzeSB0aGluZyB0byBzYXkuLi4uCj4KPiAgICAgICAgICAgIElmIGEgcGFja2V0IGhpdHMgYSBwb2NrZXQgb24gYSBzb2NrZXQgb24gYSBwb3J0LAo+ICAgICAgICAgICAgYW5kIHRoZSBidXMgaXMgaW50ZXJ1cHRlZCBhcyBhIHZlcnkgbGFzdCByZXNvcnQsCj4gICAgICAgYW5kIHRoZSBhZGRyZXNzIG9mIHRoZSBtZW1vcnkgbWFrZXMgeW91ciBmbG9wcHkgZGlzayBhYm9ydAo+ICAgICAgICAgdGhlbiB0aGUgc29ja2V0IHBhY2tldCBwb2NrZXQgaGFzIGFuIGVycm9yIHRvIHJlcG9ydCEKPgo+ICAgICAgICAgIElmIHlvdXIgY3Vyc29yIGZpbmRzIGEgbWVudSBpdGVtIGZvbGxvd2VkIGJ5IGEgZGFzaCwKPiAgICAgIGFuZCB0aGUgZG91YmxlLWNsaWNraW5nIGljb24gcHV0cyB5b3VyIHdpbmRvdyBpbiB0aGUgdHJhc2gsCj4gICAgICAgYW5kIHlvdXIgZGF0YSBpcyBjb3JydXB0ZWQgY2F1c2UgdGhlIGluZGV4IGRvZXNuJ3QgaGFzaCwKPiAgICAgIHRoZW4geW91ciBzaXR1YXRpb24ncyBob3BlbGVzcywgYW5kIHlvdXIgc3lzdGVtJ3MgZ29uYSBjcmFzaC4KPgo+ICAgICAgICAgICAgICAgICBZb3UgY2FuJ3Qgc2F5IHRoaXM/IFdoYXQgYSBzaGFtZSwgc2lyIQo+ICAgICAgICAgICAgICAgICAgIFdlJ2xsIGZpbmQgeW91IGFub3RoZXIgZ2FtZSwgc2lyLgo+Cj4gICAgICAgICAgSWYgdGhlIGxhYmVsIG9uIHRoZSBjYWJsZSBvbiB0aGUgdGFibGUgYXQgeW91ciBob3VzZQo+ICAgICAgIHNheXMgdGhlIG5ldHdvcmsgaXMgY29ubmVjdGVkIHRvIHRoZSBidXR0b24gb24geW91ciBtb3VzZSwKPiAgICAgICAgICBidXQgeW91ciBwYWNrZXRzIHdhbnQgdG8gdHVubmVsIG9uIGFub3RoZXIgcHJvdG9jb2wsCj4gICAgICAgIHRoYXQncyByZXBlYXRlZGx5IHJlamVjdGVkIGJ5IHRoZSBwcmludGVyIGRvd24gdGhlIGhhbGwsCj4gICAgIGFuZCB5b3VyIHNjcmVlbiBpcyBhbGwgZGlzdG9ydGVkIGJ5IHRoZSBzaWRlLWVmZmVjdHMgb2YgZ2F1c3MsCj4gICAgICAgICBzbyB5b3VyIGljb25zIGluIHRoZSB3aW5kb3cgYXJlIGFzIHdhdnkgYXMgYSBzb3VzZSwKPiAgICAgICAgICB0aGVuIHlvdSBtYXkgYXMgd2VsbCByZWJvb3QgYW5kIGdvIG91dCB3aXRoIGEgYmFuZywKPiAgICAgICAgICBjYXVzZSBhcyBzdXJlIGFzIEknbSBhIHBvZXQsIHRoZSBzdWNrZXIncyBndW5uYSBoYW5nIQo+Cj4gICAgICAgV2hlbiB0aGUgY29weSBvZiB5b3VyIGZsb3BweSdzIGdldHRpbmcgc2xvcHB5IG9uIHRoZSBkaXNrLAo+ICAgICAgICAgYW5kIHRoZSBtaWNyb2NvZGUgaW5zdHJ1Y3Rpb25zIGNhdXNlIHVuZWNlc3NhcnkgcmlzYywKPiAgdGhlbiB5b3UgaGF2ZSB0byBmbGFzaCB5b3VyIG1lbW9yeSBhbmQgeW91J2xsIHdhbnQgdG8gUkFNIHlvdXIgUk9NLgo+ICAgICAgcXVpY2tseSB0dXJuIG9mIHlvdXIgY29tcHV0ZXIgYW5kIGJlIHN1cmUgdG8gdGVsbCB5b3VyIG1vbSEKCgouLi5ncmlucy4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsdGUgS3VsdGUgdmVyZ2VoZW4gbmllLiAoUXVhc2ltb2RvLCAyMi4gRGV6IDE5OTQsIDIxOjExOjEyKToKCkluIGRlciBuZXVzdGVuIFBNIHN0ZWh0IGVpbiBaaXRhdCB2b24gUm9iZXJ0IExlbWJrZToKCldlciBhYmVuZHMgc3BhZXQgaW5zIEJldHQgZ2luZyB1bmQgbW9yZ2VucyBmcnVlaCBoZXJyYXVzIG11c3MsIGRlciB3aXJkCmRpZSB2b2xsZSBCZWRldXR1bmcgZGVzIFdvcnRlcyAnTW9yZ2VuZ3JhdWVuJyBlcmZhc3Nlbi4KCmkuQS4gUXVhc2ltb2RvLCBkZXIgR2Vpc3RlcmJlc2Nod29lcmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FzIGdlc2NoYWggaW4gZGVyIGthcGVsbGUgKEtldG9zLCAyMy4gRGV6IDE5OTQsIDIxOjU2OjU5KToKRWluZSBEZXRla3Rpdi9Nb3JkYXVma2xhZXJ1bmdzcXVlc3Qgd2FlcmUgZWluIHN0aW1tdW5nc3ZvbGxlcyB0aGVtYW4gdW5kCmVpbmVyIFF1ZXN0IGkgTUcgd2VydC4KLSBrZXRvcyAtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHYW56IGFsbGVpbiEgKEJhbWJ1bGtvLCAyOC4gRGV6IDE5OTQsIDA2OjIxOjA5KToKQW0gMjguMTIuMTk5NCB3YXIgaWNoIHVtIDA2OjIwOjIzIFVociBnYW56IGFsbGVpbmUgaW0gTW9yZ2VuZ3JhdWVuLi4uLi4KQkFNQlVMS08KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHYW56IGFsbGVpbiEgKEthaWcsIDI4LiBEZXogMTk5NCwgMDY6NDU6NDUpOgojISBybj1CYW1idWxrbyBydD03ODg1OTIwNjkKV2FyIFpldWdlLiBFciB3YXIgYWxsZWluIGJpcyA2OjMwLCBkYW5uIHdhciBpY2ggd2llZGVyIGRhLiA6LSkKCkthaUcgT2Jlcm5vbWFkZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVjaCBkZXIgbGV0enRlIChLYWlnLCAyOC4gRGV6IDE5OTQsIDA2OjUyOjQzKToKSWNoIHdhcnRlIG51biBkYXJhdWYgZGFzIEJhbWJ1bGtvIGdlaHQsIHdpbGwgYXVjaCBtYWwgZGFzIExpY2h0IGF1c21hY2hlbi4KNjo1My4KCkthaUcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuIGVuZGxpY2ggKEthaWcsIDI4LiBEZXogMTk5NCwgMDc6MDQ6MjMpOgpFcyBoYXQgZ2VrbGFwcHQsCgo3OjA0IHVuZCBhbGxlaW4gaW0gTUcuIEZhc3QgaGFldHRlIGVzIG5pY2h0IGdla2xhcHB0LCBhYmVyIGljaCBrb25udGUKQmFtYnVsa28gZGFubiBkb2NoIHVlYmVyemV1Z2VuIGRhcyBlciBzY2hsYWZlbiBzb2xsIDotKQoKS2FpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FyZW4gbnVyIDIgbWludXRlbiAoS2FpZywgMjguIERleiAxOTk0LCAwNzowNzozMyk6ClRqYSwgZXMgaGF0IGRhbm4gYmlzIDc6MDcgZ2VkYXVlcnQgYmlzIFBlbmVsb3BlIGRhIHdhci4gSW0gTUcgZ2VodCBkaWUKU29ubmUgaGFsdCBuaWUgdW50ZXIgOi0pLgoKS2FpRy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHYW56IGFsbGVpbiEgKEFyZGFuYSwgMjguIERleiAxOTk0LCAyMTowNTo0NCk6CiMhIHJuPUJhbWJ1bGtvIHJ0PTc4ODU5MjA2OQp1bmQgaWNoIHdhciB1bSAwNy4wMCB1aHIgbWFsIGRlciBzdGFlcmtzdGUhISB3aXIgd2FyZW4genUgZHJpdHQhIQpBcmRhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3YXJlbiBudXIgMiBtaW51dGVuIChBcmRhbmEsIDI4LiBEZXogMTk5NCwgMjE6MDc6MTcpOgojISBybj1LYWlnIHJ0PTc4ODU5NDg1MwouLi4gb2RlciB3YXIgaWNoIGRvY2ggbmljaHQgYWxsZWluPz8/Pz8KQXJkYW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgo2OjMwIChLYWlnLCAyOS4gRGV6IDE5OTQsIDA2OjMwOjQwKToKVGphLCBuZXVlIE5hY2h0LCBuZXVlIFN0YXRpc3RpaywKCjY6MzAgYW0gbW9yZ2VuLCBuYWNoIGR1cmNoZ2VtYWNodGVyIE5hY2h0IHNpbmQgZG9jaCBpbW1lciBub2NoIDE1ClNwaWVsZXIoaW5uZW4pIGltIE11ZC4KCkthaWcgd3VuZGVydCBzaWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2NobWFycm4gZW5kbGljaCAoWWFudHJvLCAyOS4gRGV6IDE5OTQsIDA5OjIyOjUyKToKIyEgcm49S2FpZyBydD03ODg1OTQ2NjMKCkphLCBLYWlnPz8/IE1pdCAiendpbmdlIiA/Pz8/PwoKZ3JpbnMKICAgICAgICAgICAgICAgICAgWWFudHJvOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRBUyBpc3QgamEgd29obCB3aXJrbGljaCBiZWluYWhlIHVuZXJsYXVidGUgU3BpZWxlcmhpbGZlISAoSGFyZGlsLCAyOS4gRGV6IDE5OTQsIDEyOjU3OjI1KToKCkluIGRlciBLZWxjaC1RdWVzdCBzYWd0IGRlciBMb2V3ZToKCiJXZW5uIG1pciBqZW1hbmQgZm9sZ2VuZGVzIFJhZXRzZWwgbG9lc3Qgd2lsbCBpY2ggZXVjaCBlaW5lbiBlaW5mYWNoZW4KV2VnIGlucyBJbm5lcmUgZGVzIFRlbXBlbHMgemVpZ2VuLiBJaHIgaGFidCBkcmVpIFZlcnN1Y2hlIHVtIGRpZSByaWNodGlnZQpBbnR3b3J0IHp1IGZpbmRlbi4iIChTeW50YXg6IGFudHdvcnRlIDxpcmdlbmR3YXM+KQoKClVuZCB3ZW5uIGljaCBkYXMgZGFubiBlaW5nZWJlLCBrb21tdCBmb2xnZW5kZXM6Cgo+IGFudHdvcnRlIDxpcmdlbmR3YXM+CkRlciBMb2V3ZSBzY2h1ZXR0ZWx0IGdyaW5zZW5kIGRlbiBLb3BmLgpEdSBhbnR3b3J0ZXN0OiA8aXJnZW5kd2FzPgoKTmVlbmVlLCBkYXMgaXN0IGphIHJpY2h0aWcgZmllcy4gOi0pCgpBYiBkYWZ1ZXIgcGVyIFJ1dHNjaGUgaW5zIElubmVyZS4KCllUSAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbHVzdGlnZXMgYXVzIGFsbGVyIFdlbHQuLjopIChBcmFtZWEsIDMwLiBEZXogMTk5NCwgMDk6NDE6NTkpOgpOZXVsaWNoIGltIFp3ZXJnZW5sYWRlbi4uLi4KU2FyYW1hciBrb21tdCBhbi4KU2FyYW1hciB2ZXJrYXVmdCBMZWRlcm1va2Fzc2lucy4KU2FyYW1hciB6aWVodCBMZWRlcm1va2Fzc2lucyBhdXMuCldlbm4gbWFuIHNjaG5lbGwgZ2VudWcgaXN0LCBrYW5uIG1hbiBkYW5uIGRhcyBaZXVnIHZlcmthdWZlbiBvaG5lIGVzIGFiZ2ViZW4KenVtdWVzc2VuPy4uLjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXR0ZXMgYXVzIG1laW5lbSByZXBvcnQgZmlsZTogKEtldG9zLCAzMC4gRGV6IDE5OTQsIDIzOjAxOjA1KToKQlVHUyB2b24gZ3JpbW1ib3JuIGF1cyAvcGxheWVycy9rZXRvcy9hcnQvZ2FsZXJpZSAoMjUuIE5vdiAxOTk0KToKSGlnaGxhbmRlciBpc3Qgc2NobGVjaHQgZ2V0cm9mZmVuLiBFaW4gQnJhdGhlbmRsIHNpZWh0IGFuZGVycyBhdXMuLi4KSURFQSB2b24gZ3JpbW1ib3JuIGF1cyAvcGxheWVycy9rZXRvcy9hcnQvZ2FsZXJpZSAoMjUuIE5vdiAxOTk0KToKQWxzbyBkaWUgZXdpZ2UgV2llZGVyaG9sdW5nIGRlciBTZXNhbXN0cmFzc2UuLi5bSwpJREVBIHZvbiBncmltbWJvcm4gYXVzIC9wbGF5ZXJzL2tldG9zL2FydC9nYWxlcmllICgyNS4gTm92IDE5OTQpOgpIbW0sIGRlciBGaXNjaHNjaHdhbnogYmVpIEFudGhlYSBpc3QgbmljaHQgc28gZG9sbCB6dSBzZWhlbi4KSSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaXBwZSBhaHQgc2ljaCBpbiBtZWluZSBIdWV0dGUgdmVyaXJydCAoS2V0b3MsIDMxLiBEZXogMTk5NCwgMDA6MjA6MzgpOgpJY2ggZmFzc2UgZXMgbmljaHQhIEhpcHBlIGhhdCBzaWNoIGRvY2ggdGF0c2FlY2hsaWNoIGluIG1laW5lIEh1ZXR0ZSB2ZXJpcnJ0LgpJc3QgZXIgYXVmIGRlciBTdWNoZSBuYWNoIHNlaW5lbSBXb2xwaWU/IFdpZSBoYXQgZXIgZGVuIERyYWNoZW5zZWUKdWViZXJxdWVycnQ/CkZyYWdlbiB1ZWJlciBGcmFnZW4gLi4uCgotIEtldG9zIC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJ5ZSEgKEhpZ2hsYW5kZXIsIDMxLiBEZXogMTk5NCwgMTc6NDU6MDkpOgpTbywgZXMgc2luZCBub2NoCjA4OjE1OjMxIGJpcyAxOTk1LiBaZWl0LCBhYnp1ZmxpZWdlbiBpbiBlaW5lIGxhbmdlIE5hY2h0Li4uLgpCaXMgbmFlY2hzdGVzIEphaHIgOj4KICAgSGlnaGxhbmRlciByeW4gVGFoYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxlaWNoZW5mbGVkZGVyZXIhPyEgKEJhbWJ1bGtvLCAgNC4gSmFuIDE5OTUsIDIxOjU2OjU5KToKRGllIFp3ZXJnZW53YWVjaHRlciBzaW5kIExlaWNoZW5mbGVkZGVyZXI6CltUb2Q6XSBFaW4gV2FlY2h0ZXIgaGF0IGdlcmFkZSBCYW1iYW5rIHVtZ2VicmFjaHQuCiAgRGVyIFdhZWNodGVyIGdyZWlmdCBEaWNoIG1pdCBkZW0gSGFtbWVyIGFuLgogIERlciBXYWVjaHRlciB2ZXJmZWhsdCBEaWNoLgoKQkFNQlVMS08gZGVyIFZhdGVyIHZvbiBCQU1CQU5LCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdWNoISAoQmFtYnVsa28sICA1LiBKYW4gMTk5NSwgMDc6NDg6MzEpOgpIb2JiZWwgaXN0IGVpbmdlbG9nZ3QsCnVuZCB6d2FyIHZvbjogV3VwcGVydGFsLgpJZGxlLVplaXQ6IDExOjI4OjA2ClZvbGxlciBOYW1lOiBIb2JiZWwgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlcgpSYXNzZTogWndlcmcsICAgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogMTE6MjI6MDQgICBTcGllbGVybGV2ZWw6IDEKCk1hbiBiZWFjaHRlIElkbGUtWmVpdCB1bmQgQWx0ZXIuCgpCQU1CVUxLTwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmF2ZSBiZWkgWmFjaGFyaWFzLiAoSG9yc2NoZCwgIDYuIEphbiAxOTk1LCAwNzoxMjoyNCk6CkljaCBzdGVoIGhpZXIgZ3JhZCBzbyBpbSBaYWNoYXJpYXMgRWlzcGFsYXN0IHJ1bSB1bmQgaG9lcmUgbGF1dGUKVGVjaG5vLU11c2lrLgpEYXMga2xpbmd0IHNvb29vIGdlaWwsIGRhc3MgaWNoIG1pciB1ZWJlcmxlZ3QgaGFiZSwgbWFuIGtvZW5udGUgaGllciBkb2NoIG1hbApuZW4gUmF2ZSB2ZXJhbnN0YWx0ZW4uIERhcyB3YWVycyBkb2NoOgogRGVyIFpBQ0hBUklBUyBJQ0VSQVZFIQoKV2FzIGhhbHRldCBpaHIgZGF2b24/CgpAc2NobWFycm4gb2ZmCgpIb3JzY2hkIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSUNFUkFWRSBkaWUgendlaXRlIChIb3JzY2hkLCAgNi4gSmFuIDE5OTUsIDA3OjIyOjQxKToKCkhpZXIgc2luZCBub2NoIGVpbiBwYWFyIElkZWVuIHp1bSBJY2VyYXZlOgpOYXR1ZXJsaWNoIG11ZXNzdGUgZGllIEFubGFnZSBncm9lc3NlciBzZWluLCBkYW1pdCBtYW4gaW0gZ2FuemVuIEhhdXMgd2FzCmhvZXJ0LgpXZW5uIHNvIHZpZWxlIExldXRlIGluIGVpbmVtIFJhdW0gcnVtaGFlbmdlbiB3aXJkIGRpZSBMdWZ0IHNvbnN0IC0gdHJvdHoKb2ZmZW5lciBGZW5zdGVyIC0genUgc2NobGVjaHQhClVuZCB3ZW5uIHdpciBzY2hvbiBkYWJlaSBzaW5kOiBHZW51ZyBPcmtzIG11ZXNzZW4gaGVyISBTbyBiZWltIFRhbnplbiB1bmQKUmF2ZW4gT3JrcyBtZXR6ZWxuIHN0ZWxsIGljaCBtaXIgd2l0emlnIHZvci4gSGFlaGFlaGFlLgpVbmQgdm9yIGFsbGVtIGtvZW5uZW4gd2lyIGRhbm4gZGllIERyb2dlbiB3ZWdsYXNzZW4gOi0pICwgd2VpbCB3aXIgZGFubiBqYSBpbQpCbHV0cmF1c2NoIHNpbmQuLi4uCgpJcmdlbmR3aWUga29tbSBpY2ggbWlyIHNvIGxhbmdzYW0gYWxiZXJuIHZvci4KCkhvcnNjaGQsIGRlciBzaWNoIG5vY2ggbmFlaGVyZSBFaW56ZWxoZWl0ZW4gYXVzZGVua3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphIHNvIGVpbiBzY2htYXJybiAoQ2FyYWRocmFzLCAgNy4gSmFuIDE5OTUsIDIzOjEyOjUwKToKbGIgc3RpZWZlbApEdSB6aWVoc3QgTGVkZXJzdGllZmVsIGF1cy4KRHUgc3RlY2tzdCBMZWRlcnN0aWVmZWwgaW4gZGVuIFNjaGxlaW1iZXV0ZWwuCkR1IHN0ZWNrc3QgT3Jrc3RpZWZlbCBpbiBkZW4gU2NobGVpbWJldXRlbC4KbmltbSBzdGllZmVsIGF1cyBraXN0ZQpEYXMgZ2VodCBuaWNodCEKPiBsbCBraXN0ZQpFaW5lIGdyb3NzZSwgc2Nod2VyZSwgaG9lbHplcm5lIEtpc3RlLiBEdSBrYW5uc3QgU2FjaGVuIGhpbmVpbiBzdGVja2VuCnVuZCBzaWUgYmVpIEJlZGFyZiBhdWNoIHNjaGxpZXNzZW4gdW5kIG9lZmZuZW4uClNpZSBpc3QgZ2VzY2hsb3NzZW4uCgoKU2VociBsdXN0aWcgOikgTWFuIGthbm4gU2FjaGVuIHJlaW5zdGVja2VuIG9id29obCBzaWUgZ2VzY2hsb3NzZW4gaXN0PwpUb2xsZSBLaXN0ZSA6KSkKCiAgICAgICAgQ2FyYWRocmFzIGRlciBhbXVlc2llcnRlIFByb3BoZXQKdXBwcywgYWVoIGd1bW1pYmFlcmNoZW5rbGF1ZW5kZSwgYWVoIGV3aWdlICp2ZXJ3aXJydCBhdXMgZGVyIEtpc3RlIGt1Y2sqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYSBzbyBlaW4gc2NobWFycm4gKEdyaW1tYm9ybiwgIDguIEphbiAxOTk1LCAxNDoyNTo1Mik6CiMhIHJuPUNhcmFkaHJhcyBydD03ODk1MTY3NzAKSG1tLCB3YXMgbWljaCB3aXJrbGljaCBpbnRlcmVzc2llcmVuIHd1ZXJkZSwgQ2FyYWRocmFzOgpXaWUga29tbXN0IER1IGRyYXVmLCBkYXNzIER1IFN0aWVmZWwgaW4gZGllIEtpc3RlIGdlc3RlY2t0IGhhZXR0ZXN0PwpIYXR0ZXN0IER1IGRpZSBraXN0ZSBhbHMgU2NobGVpbWJldXRlbCBnZXRhcm50PyBPZGVyIGRhcyBmYWxzY2hlIFRlaWwgZGVzCmNhcHR1cmVzIGdlcGFzdGV0PyBPZGVyIGVpbmZhY2ggbnVyIHp1IHdlbmlnIGdlc2NobGFmZW4/IEZyYWdlbiB1ZWJlcgpGcmFnZW4uLi4gOy0pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCkVpbiBTY2hsZWltYmV1dGVsIGlzdCBlaW4gU2NobGVpbWJldXRlbCBpc3QgZWluZSBLaXN0ZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWJlciBKT0YhISEgKFllbmRpLCAgOS4gSmFuIDE5OTUsIDE5OjQyOjIxKToKCiJbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXIgYmV0ZXQgSm9mIGFuLl0KIFtBbGxnZW1laW46R3V5YnJ1c2hdIHNjaGxlaW0gbmljaCA6KQogW0FsbGdlbWVpbjpSdWRpcmF0dGVyXSBlciBoYXQgbWlyIGFiZXIgZ2VyYWRlIHdhcyBnZW1hY2h0CiBbQWxsZ2VtZWluOk9ldHRpXSBzY2hyZWlpaQogW0FsbGdlbWVpbjpHdXlicnVzaF0gc28/CiBbQWxsZ2VtZWluOk9ldHRpXSBKb2YgbWFjaHMgbWlyIGF1Y2gKIFtBbGxnZW1laW46R3V5YnJ1c2hdIHVuZCBtaXIKIFtBbGxnZW1laW46UnVkaXJhdHRlcl0gdGphLCBlciBtYWNodCdzIG5pY2h0IGplZGVtIDstKSkiCgpPaGEuLi4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUb2Rlc3N0YXRpc3RpayAoR3JpbW1ib3JuLCAxMC4gSmFuIDE5OTUsIDEwOjU0OjAwKToKCkphamEsIDcwJSBkZXIgTGVzZXIgaGFiZW4gZXMgbm9jaCBuaWNodCBnZW1lcmt0LCBhYmVyIHdlbm4gbWFuIFNlaGVyIHVuZApNYWdpZXIgZmluZ2VydCBlcmZhZWhydCBtYW4sIHdpZSBvZnQgc2llIHNlaXQgRGV6ZW1iZXIgZ2VzdG9yYmVuIHNpbmQuIFVuZCBkYXMKZmluZGUgaWNoIGFiZXIgdG90YWwgZ2VtZWluLiBXZW5uIGljaCBzdGVyYmUgaXN0IG1pciBkYXMgcGVpbmxpY2ggZ2VudWcsIGRhcwptdXNzIG5pY2h0IG9lZmZlbnRsaWNoIHJ1bXBvc2F1bnQgd2VyZGVuLCBuZT8KSWNoIG1laW5lLCB3ZW5uIGljaCBlaW4gdG90YWxlciBWZXJzYWdlciBiaW4gaXN0IGRhcyBtZWluZSBQcml2YXRzYWNoZS4gV2llCnN0ZWhlIGljaCBkZW5uIG51biBkYT8gS2FubiBtYW4gc2ljaCB3ZW5pZ3N0ZW5zIGZ1ZXIgc2VpbmUgZ2VzYW1tZWx0ZW4gVG9kZQp3YXMga2F1ZmVuPwpGcmFnZW4gdWViZXIgRnJhZ2VuLi4uCkphLCBpY2ggZ2ViZSB6dSwgaWNoIHdpbGwgbWljaCBudXIgdm9ybSBhcmJlaXRlbiBkcnVlY2tlbi4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVG9kZXNzdGF0aXN0aWsgKEJvaW5nLCAxMC4gSmFuIDE5OTUsIDExOjU5OjE4KToKIyEgcm49R3JpbW1ib3JuIHJ0PTc4OTczMTY0MApIbW0sIGdlc3Rlcm4gd3VyZGVuIFVlYmVybGVndW5nZW4gdWViZXIgZWluZSAnVG9wLVRvZGVzLUxpc3RlJyAoa3VyejoKRGVwcGVubGlzdGUgOykgKSBsYXV0IC4uLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRvZGVzc3RhdGlzdGlrIChHcmltbWJvcm4sIDEwLiBKYW4gMTk5NSwgMTI6MDE6MTQpOgojISBybj1Cb2luZyBydD03ODk3MzU1NTgKCkF1amEsIG1laW5lbiBTZWdlbiBoYXQgZGFzLiBNdWVsbHQgZGllIEtuZWlwZW4gcnVoaWcgbWl0IExpc3RlbiB2b2xsLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhbWl0IHBvbGl6ZWkuYmVzY2h3ZXJkZW4gbmljaHQgc28gdm9sbCB3aXJkLi4uIChHcmltbWJvcm4sIDEwLiBKYW4gMTk5NSwgMTI6MDg6MTEpOgoKQWxzbyB3aXJrbGljaCEgSWNoIGhhYmUgdmVybm9tbWVuLCBkYXNzIGhpZXIgU3BpZWxlciB2b24gaG9lY2hzdGVuIE1hZ2llcm4gZXAKenVnZXNjaHVzdGVydCBiZWtvbW1lbiEgVW5kIHp3YXIgdm9uIE1hZ2llcm4sIGRpZSBzbyBlaW4gVm9yZ2VoZW4gaW4gbmljaHQKYW5nZXNjaGxvc3NlbmVuIEdlYmlldGVuIGFibGVobmVuLgpXZW5uIGljaCBkdXJjaCBnZXRlc3RldGUgU2FjaGVuIGVwIHZlcmxpZXJlIGlzdCBkYXMgZG9jaCBtZWluIFByb2JsZW0sIGRhIGhhYgppY2gga2VpbmVuICBBbnNwcnVjaCBhdWYgV2llZGVyZ3V0bWFjaHVuZywgb2Rlcj8gU29sYW5nZSBlcyBuaWNodCBlaW4Kb2ZmZW5zaWNodGxpY2hlciBidWcgaXN0IHVuZCBpY2ggbWludXRpb2VzIG1pdCBaZXVnZW4gbmFjaHdlaXNlbiBrYW5uLCBkYXNzCmljaCBXSVJLTElDSCBuaWNodHMgZGFmdWVyIGthbm4uLi4KSWNoIG1laW5lLCBpY2ggZ2VoZSBqYSBhdWNoIG5pY2h0IGhpbiB1bmQgc2FnZSwgZGllIFNhZXVyZWRhZW1vbmVuIGhhYmVuIG1pY2gKZ2VraWxsdCwgaWNoIHdpbGwgbWVpbmUgZXAgd2llZGVyLiBVbmQgZGllIGhhYmVuIGVzIG5vY2ggbmljaHQgbWFsCmFuZ2VrdWVuZGlndC4KV2VubiBtYW4gc2ljaCBpbiBkaWVzZXIgR2VzY2hpY2h0ZSBhdWZyZWdlbiB3aWxsIGRhbm4gZG9jaCB3b2hsIHVlYmVyIHNvbGNoZQpNYWdpZXJoaWxmZSEgWnVtYWwgaWNoIHNlbGJlciBuaWNodHMgZGF2b24gYWJiZWtvbW1lbiBoYWJlLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LiBXaWxsIGF1Y2ggZWluZSBTY2hlaWJlIGRlcyBNYWdpZXJoaWxmZW5rdWNoZW5zLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFtaXQgcG9saXplaS5iZXNjaHdlcmRlbiBuaWNodCBzbyB2b2xsIHdpcmQuLi4gKEJvaW5nLCAxMC4gSmFuIDE5OTUsIDEyOjA5OjU1KToKIyEgcm49R3JpbW1ib3JuIHJ0PTc4OTczNjA5MQpFcyBpc3QgdWVibGljaCwgZGFzcyBiZWkgUGxheWVya2lsbHMgZGllIE9wZmVyIGlocmUgRXJmYWhydW5nc3B1bmt0ZQp6dXJ1ZWNrYmVrb21tZW4sIGluc29mZXJuIGlzdCBtZWluIFZlcmhhbHRlbiB2b2xsa29tbWVuIGltIFJhaG1lbiBkZXIKUmVnZWxuIGdld2VzZW4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGFtaXQgcG9saXplaS5iZXNjaHdlcmRlbiBuaWNodCBzbyB2b2xsIHdpcmQuLi4gKEdyaW1tYm9ybiwgMTAuIEphbiAxOTk1LCAxMjoxMzo1NCk6CiMhIHJuPUJvaW5nIHJ0PTc4OTczNjE5NQoKQWxzbyBkYSBiaW4gaWNoIG1hc3NpdiBnZWdlbiEgV2VubiBpY2ggamVtYW5kZW4ga2lsbGUgZGFubiBoYWIgaWNoIGRhCk5hY2h0ZWlsZSB2b24sIHdlaWwgaWNoIG1pY2ggZGFubiB3aWVkZXIgZW5kbG9zIG1pdCBFTSBydW1hZXJnZXJuIGRhcmYgZGllIG1pcgptZWluZSBHcnVlbmRlIG5pY2h0IGdsYXViZW4gd29sbGVuLiBXbyBpc3QgZGFubiBkZXIgU2lubiwgd2VubiBpY2ggZGVuIEFlcmdlcgprcmllZ2UgdW5kIGRhcyBPcGZlciBuaWNodCB3ZW5pZ3N0ZW5zIGF1Y2ggZGFmdWVyIGxlaWRlbiBtdXNzPyBEYXMgaXN0IG5pY2h0CmZhaXIuCgpIbW0sIG9iIFNlbGJzdG1vcmQgKEtsaXBwZSwgbWl0IGZhbHNjaGVyIEZsdWNodHJpY2h0dW5nIHp1IGRlbiBTQiBldGMuKSBhdWNoCnVudGVyIHBsYXllcmtpbGwgZmFlbGx0PyBEYW5uIGhhZXR0ZSBpY2ggbWVpbmUgZXAgdm9uIGRlbiBTYWV1cmVkYWVtb25lbiBnZXJuZQp3aWVkZXIuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdC4gQnJpbmd0IHNpY2ggZWlnZW50bGljaCBudXIgc2VsYmVyIHVtLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTm9jaCBuZSBUb3BsaXN0ZSEgOikgKEZyYWdnbGUsIDEwLiBKYW4gMTk5NSwgMTQ6MDU6MjkpOgpBdWZncnVuZCBkZXIgaG9oZW4gTmFjaGZyYWdlIG5hY2ggVG9wLUxpc3RlbiwgaGllciBkaWUgaW5vZmZpemllbGxlbgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZvb2Rvby1QdXBwZW4gVG9wIDEwCgpUb3AgMTAgZGVyIGdyb2Vzc3RlbiBTYWRpc3RlbiA7KSAgOgoKICAxIEFzbW9kaXMgICAgIDg3CiAgMiBHdWxkdWthdCAgICA3NwogIDMgSW9sYW50aGUgICAgNzYKICA0IEJhbWJ1bGtvICAgIDUyCiAgNSBNYWdpY29sbGkgICA0NQogIDYgV3VyICAgICAgICAgMzMKICA3IE5peGlob3UgICAgIDE0CiAgOCBHdW5kdXIgICAgICAxMwogIDkgTG9jdWx1cyAgICAgMTIKIDEwIEdyaW1tYm9ybiAgIDExCgpUb3AgMTAgZGVyIE1laXN0Z2VxdWFlbHRlbiAoZ3V0ZSBCZXNzZXJ1bmchKSA6CgoKIDEgTG9jdWx1cyAgICAgICAgICAgICAgIDU4CiAyIFNjaHJ1bXBmaSAgICAgICAgICAgICAyOQogMyBRdWlsbGlhbiAgICAgICAgICAgICAgMjcKIDQgSW9sYW50aGUgICAgICAgICAgICAgIDI0CiA1IEJhbWJ1bGtvICAgICAgICAgICAgICAxNgogNiBHcmltbWJvcm4gICAgICAgICAgICAgMTUKIDcgQmtpbGxlciAgICAgICAgICAgICAgIDE0CiA4IFJheSAgICAgICAgICAgICAgICAgICAxMwogOSBHdW5kdXIgICAgICAgICAgICAgICAgMTIKMTAgSGFzZW5mdXNzIEZpY2tmcm9zY2ggIDExCgooRGllIFphaGxlbiBoaW50ZXIgZGVuIE5hbWVuIHJlcHJlc2VudGllcmVuIGRlbiBQdW5rdGVzdGFuZCBhbSA2LjEuMTk5NSkKCkRhbWl0IHN0ZWh0IHdvaGwgZGVyIFNpZWdlciBmZXN0OgpEaWUgZ29sZGVuZSBWb29kb28tTmFkZWwgZXJoYWVsdCBBc21vZGlzICEKCm1pdCBkYWVtb25pc2NoZW4gVm9vZG9vLUdydWVzc2VuCgogIEZyYWdnbGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZCB3b2hpbiBtaXQgZGVtIEdlbGQgPyAoSGFyZGlsLCAxMC4gSmFuIDE5OTUsIDE0OjEzOjU4KToKCiBBbHMgU2VoZXIgaGF0IG1hbiBqYSBpcmdlbmR3YW5uIGRvY2ggenV2aWVsIEdlbGQuIERlciBKdXdlbGllciBpc3QKbGVlcmdla2F1ZnQsIGRpZSBTcGVuZGVuYnVlY2hzZW4gdm9sbCwgTG9rYWxydW5kZW4ga2FubiBtYW4gbm9jaCBuaWNodCBpbiBkZW4KS25laXBlbiBzY2htZWlzc2VuICh3YW5uIGtvbW10IGRhcyA/KSwgdW5kIHdpbGwgbWFuIHdhcyB2ZXJudWVuZnRpZ2VzIG1pdCBkZW0KR2VsZCBtYWNoZW4sIGtvbW10IGRhczoKCkRpZXMgaXN0IGRlciBBbnRyYWdzc2NoYWx0ZXIgZGVyIEJhbmsuIER1IGthbm5zdCBoaWVyIGVpbmVuIEJhdXNwYXJ2ZXJ0cmFnCmJlYW50cmFnZW4gdW5kIGVpbmVuIGJlYW50cmFndGVuIFZlcnRyYWcgdW50ZXJzY2hyZWliZW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiByYXVzLgpiZWFudHJhZ2UgYmF1c3BhcnZlcnRyYWcKRGVyIFNjaGFsdGVyYmVhbXRlIHNhZ3Q6IFNpZSBkdWVyZmVuIG51ciBFSU4gSGF1cyBiZXNpdHplbiEKCkhtbW1tLiBXZW5uIGljaCBudXIgRUlOIEhBVVMgYmVzaXR6ZW4gZGFyZiwgd2llIHdhZXJlIGVzIGRlbm4gbWl0IGVpbmVtIFR1cm0/CgpXaWUgdGV1ZXIgaXN0IGRlbm4gZGVyIFNpbGJlcnR1cm0gYXVmIGRlciBIb2NoZWJlbmUgPyBEZW4gd3VlcmQnIGljaCBtaXIKZ2VybmUgYWxzIEFMdGVyc3J1aGVzaXR6IGthdWZlbiwgenVyIE5vdCBhdWNoIGRhcyBTY2hsb3NzIHZvbiBad2Fja2VsbWFubi4KCkxpZWJlIE1hZ2llciwgbmVubnQgbWFsIEV1cmUgUHJlaXN2b3JzdGVsbHVuZ2VuLiA6LSkKCllUSAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhbWl0IHBvbGl6ZWkuYmVzY2h3ZXJkZW4gbmljaHQgc28gdm9sbCB3aXJkLi4uIChKb2YsIDEwLiBKYW4gMTk5NSwgMTQ6MTU6MzApOgojISBybj1HcmltbWJvcm4gcnQ9Nzg5NzM2MDkxCiBIbSBpY2ggd2FlcmUgYmVyZWl0LCBHcmltbXkgTWFnaWVyaGlsZmUgenUgZ2V3YWVocmVuLCBkaWUgRm9ybSBiZXN0aW1tZXIKYWJlcgppY2ggc2VsYmVyLgogTnVuLCBpY2ggZmluZCBlcyBuaWNodCBmYWlyLCBkYXMgZGEgTGV1dGUgdm9lbGxpZyBvaG5lIEF1ZndhbmQgaW4gZGVyIFZlci0Kc2FtbWx1bmcgaWhyZSBUb2RlIHNlcnZpZXJ0IGJla2FtZW4uIERlc2hhbGIgd2VyZCBpY2ggR3JpbW1ib3JuLCB3ZW5uCmVyIGRpZXMgd3VlbnNjaHQsIGRlbnNlbGJlbiBTZXJ2aWNlIGdld2FlaHJlbjogRXIga2FubiBzaWNoIGFuIGVpbmVuCmJlbGllYmlnZW4gT3J0IGltIE11ZCBzdGVsbGVuLCBtaXIgQmVzY2hlaWQgZ2ViZW4gLSB1bmQgZGFubiB6YXAgaWNoIGlobi4KTmEsIElTVCBkYXMgZWluIEFuZ2Vib3Q/IDopCgogR3Jvc3N6dWVnaWcKICAgICAgICAgSm9mCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUb2Rlc3N0YXRpc3RpayAoS2xpbmdlLCAxMC4gSmFuIDE5OTUsIDE1OjU5OjA4KToKIyEgcm49R3JpbW1ib3JuIHJ0PTc4OTczNTY3NApHZW5hdSwgd2FlaGx0IGRlbiBUT1BERVBQRU4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbmQgd29oaW4gbWl0IGRlbSBHZWxkID8gKEtsaW5nZSwgMTAuIEphbiAxOTk1LCAxNjowNzowMCk6CiMhIHJuPUhhcmRpbCBydD03ODk3NDM2MzgKR2FyIG5pY2h0IGRvb2YhCkV2ZW50dWVsbCBrYW5uIG1hbiBqYSBhdWNoIGxhbmQgb2RlciBHZWJpZXRlIGthdWZlbiwgdW5kIFN0cmFzc2VuIHdpZSBiZWltCk1vbm9wb2x5KCAgOikgICkKV2FzIHd1ZXJkZSB6LmIuIGRhcyBPcmtjYW1wIGFtIEZyaWVkaG9mIGtvc3RlbiwgdXN3Li4uLi4KRGFzIGZhZW5kIGljaCBhdWNoIGludGVyZXNzYW50LgpLTElOR0UuLi4uLi4uOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGFtaXQgcG9saXplaS5iZXNjaHdlcmRlbiBuaWNodCBzbyB2b2xsIHdpcmQuLi4gKEdyaW1tYm9ybiwgMTAuIEphbiAxOTk1LCAxODoyNToyMik6CiMhIHJuPUpvZiBydD03ODk3NDM3MzAKSG1tLCBnZXphcHB0IG9obmUgVGFldGVyLiBXYWVyZSBtYWwgd2FzIE5ldWVzLi4uIDotKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LiBKb2Y/IFdlcmlzc2VuIGRhcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlciBpc3QgSm9mPyAoSG9ibywgMTAuIEphbiAxOTk1LCAxODo1NjowNSk6ClRqYSwgR3JpbW1ib3JuLCBKb2YgaXN0IGRhcyBFdHdhcywgZGFzIGF1ZiBkZXIgYW5kZXJlbiBTZWl0ZSB2b20gQmlsZHNjaHJpbQppZGxldCwgd2VubiBKb2VyZyBhbiBlaW5lbSBDb21wdXRlciBzaXR6dC4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhcnR5IGluIGRlciBHaWxkZS4uLiAoQW5hdG9sLCAxMC4gSmFuIDE5OTUsIDIxOjExOjQxKToKCmVpbiB3aW56aWdlciBXb2xwZXJ0aW5nZXIgcGxvcHB0IGVpbiBGbGVwaSBhdWYuCmVpbiB3aW56aWdlciBXb2xwZXJ0aW5nZXIgdHJpbmt0IGVpbiBGbGVwaS4KU3VzYW5uZSBtYWNodCBlaW5lIENvbGEgYXVmLgpTdXNhbm5lIHRyaW5rdCBlaW5lIENvbGEuCk1heCBtYWNodCBlaW5lIENvbGEgYXVmLgpNYXggdHJpbmt0IGVpbmUgQ29sYS4KZWluIHdpbnppZ2VyIFdvbHBlcnRpbmdlciBtYWNodCBlaW5lIENvbGEgYXVmLgplaW4gd2luemlnZXIgV29scGVydGluZ2VyIHRyaW5rdCBlaW5lIENvbGEuCk1heCB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggZWluZW0gSGFuZGJ1Y2guCmVpbiB3aW56aWdlciBXb2xwZXJ0aW5nZXIgd2lyZnQgZWluIEtpc3NlbiBuYWNoIEFzbW9kaXMuCkVpbiB3aW56aWdlciBXb2xwZXJ0aW5nZXIgc2NoaWVidCBzaWNoIGVpbmVuIFJhaWRlciBpbnMgR2VzaWNodC4KU3VzYW5uZSBpc3N0IGdlbnVlc3NsaWNoIGVpbiBNb24gQ2hlcmllLgpNdXBmZWwgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCgpKZXR6dCBiZWhhdXB0ZSBub2NoIGVpbmVyIGVpbm1hbCwgZGFzcyB3aW56aWdlIFdvbHBpZXMgbnVyIHN1ZXNzIHNlaWVuLi4uCgpBbmF0b2wgICAgICAgICAgICAgLSBkZXNpbGx1c2lvbmllcnQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWJlciBKT0YhISEgKFJ1ZGlyYXR0ZXIsIDEwLiBKYW4gMTk5NSwgMjM6MjA6MjUpOgojISBybj1ZZW5kaSBydD03ODk2NzY5NDEKSmV0enQgbXVzcyBpY2ggd29obCBydWhpZ2VyIHdlcmRlbi4uLgpSdWRpcmF0dGVyLCBkaWUgYXVjaCBpbW1lciBsaWViIHVuZCBhcnRpZyBzZWluIHdpbGwuCi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTUctVHJlZmZlbiBLb2VsbiAoQ2FyYWRocmFzLCAxMS4gSmFuIDE5OTUsIDAwOjIxOjMzKToKTmV1bGljaCBiZWltIFRyZWZmZW4gaW4gS29lbG46CgpOb3N0cmFkYW11cyBrb21tdCBhbi4KTm9zdHJhZGFtdXMgbmltbSBzZWluZSBCcmlsbGUgYWIuCj4gdW50IGJyaWxsZQpOb3N0cmFkYW11cycgQnJpbGxlIGlzdCBzZWhyIGJlc2NobGFnZW4uIE1hbiBzaWVodCBuaWNodHMgbWVocgpoaW5kdXJjaC4KPiBzY2hhdWUKTm9zdHJhZGFtdXMgZGVyIFJMLVNlaGVyLgo+IGdydWVibGUKRHUgZ3J1ZWJlbHN0IGVpbmUgV2VpbGUgdm9yIERpY2ggaGluLgo+IGRlbmtlIFJMLVNlaGVyPwpEdSBkZW5rc3QgICAuIG8gTyAoUkwtU2VoZXI/KQouLi4KCiAgICAgICAgICAgIENhcmFkaHJhcyBkZXIgZXdpZ2UgUHJvcGhldAogICAgICAgICAgICAtIHZlcndpcnJ0IG9iIGRlciBibGluZGVuIFNlaGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplYmVuIGdyYWQgcGFzc2llcnQgKEd1bmR1ciwgMTEuIEphbiAxOTk1LCAwMDoyNTozOSk6Cj4gV2F0a28gYmV0cml0dCBkaWVzZSBXZWx0LgpXYXRrbyBzYWd0OiBIYWxsbwpbQWxsZ2VtZWluOk11cGZlbF0gU2NocnVtcGZpIG1pdCBkZXIgc2Nod2FyemVuIHNlZWxlIDotKQpbQWxsZ2VtZWluOkFuYXRvbF0gU28hIEJldHQgcnVmdCEKc2FnIGgKV2F0a28gdmVybGFlc3N0IGRpZXNlIFdlbHQuCltBbGxnZW1laW46U2NocnVtcGZpIG1hZyBrZWluZSBuZXR0ZW4gbGV1dGUgOildCkR1IHNhZ3N0OiBoCi4uPz8/IGljaCBoYWIgd29obCBzZWhyIGVyc2NocmVja2VuZCBnZXdpcmt0OikKR3VuZHVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTUctVHJlZmZlbiBLb2VsbiAoTm9zdHJhZGFtdXMsIDExLiBKYW4gMTk5NSwgMDE6MDM6MjgpOgojISBybj1DYXJhZGhyYXMgcnQ9Nzg5NzgwMDkzClVtIGluIGRpZSBadWt1bmZ0IHp1IHNlaGVuLCBicmF1Y2h0IG1hbiBrZWluZSBCcmlsbGUgLSBvYiBiZXNjaGxhZ2VuIG9kZXIKbmljaHQgOikpCihEZXIgcmljaHRpZ2UgKFJMKSBOb3N0cmFkYW11cyBoYXR0ZSBhdWNoIGtlaW5lLi4uCgpOb3N0cmFkbXVzIGRlciBSTC1TZWhlciAgKGhhdCBpbW1lciBkZW4gdm9sbGVuIER1cmNoYmxpY2spCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2hpem9waHJlbiA/ICBlaW4gZ2Vpc3QgPyAoU3RhaGxkb3JuLCAxMS4gSmFuIDE5OTUsIDExOjU4OjM3KToKbmV1bGljaCwgYWxzIGljaCBkaWUgRGlkZGwtS251ZGRlbC1NYXVzIGF1c3Byb2JpZXJ0IGhhYjoKPnJ3dXNjaGVsIHN0YWhsZG9ybgpBYmVyIGRpZXNlciBTcGllbGVyIHN0ZWh0IGRvY2ggbmViZW4gRGlyICEKCiAgICBTVEFITCwgZGVyIHRvdGFsIGRhbmViZW4gc3RlaHQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhldXRlIHBhc3NpZXJ0IGltIExhZGVuIGRlciBad2VyZ2Vuc3RhZHQuIChIYXdrLCAxMS4gSmFuIDE5OTUsIDIwOjIzOjQ3KToKSWNoIHd1c3N0ZSBnYXIgbmljaHQsIGRhc3MgZGVyIExhZGVuaW5oYWJlciBzbyBncm9zc3p1Z2lnIGlzdDoKPiBFaW4gQmxhdHQgaGF0IGtlaW5lbiBtYXRlcmllbGxlbiBXZXJ0LCB0dXQgbWlyIGxlaWQuCj4gRGVyIEhhZW5kbGVyIHphaGx0IERpciAyMDAgR29sZHN0dWVja2UuCkRhdm9uIHd1cmRlbiAxOTAgTXVlbnplbiBhdWYgZGVtIEJsb2NrIGd1dGdlc2NocmllYmVuLgpIQVdLLCBkZXIgc2ljaCB1ZWJlciAyMDAgbXVlIGZyZXV0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVHl1aW9wIChHcmltbWJvcm4sIDEyLiBKYW4gMTk5NSwgMTM6MTU6NTUpOgoKSWNoIHdlY2hzZWwgbWFsIGluIGRpZXNlIFJ1YnJpaywgaGF0IGluIHBvbGl6ZWkuYmVzY2h3ZXJkZSBqYSBuaXggenUKc3VjaGVuLi4uCkFsc28sIHdlbm4gaWNoIGFtIE1hYyBzaXR6ZSBtdXNzIGljaCBiZWZ1ZXJjaHRlbiwgZGFzcyBlciBtaXIgbmFjaCBkcmVpCmVpbmdlZ2ViZW5lbiBaZWlsZW4gYXVmIE5pbW1lcndpZWRlcnNlaGVuIGFic2NobWllcnQsIGRhbm4gZ2VodCBnYXIgbmljaHRzCm1laHIuIEFsc28ga29uemVudHJpZXJlIGljaCBtaWNoIG1laHIgZGFyYXVmLCBlbmRsaWNoIHdpZWRlciBlaW5lbiBoYXJkIHJldHVybgp6dSBtYWNoZW4gYWxzIGF1ZiBkZW4gSW5oYWx0LgpBdXNzZXJkZW0gc3RlaHQgZGVyIE1hYyBpbiBlaW5lbSBaaW1tZXIsIHdvIGplZGVyemVpdCBtZWluIENoZWYgdm9yYmVpa29tbWVuCmthbm4uIERhIHp1Y2tlIGljaCBiZWkgamVkZW0gR2VyYWV1c2NoIHZvbiBhdXNzZW4genVzYW1tZW4uLi4gOy0pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QuIE1hY2h0IGRlbW5hZWNoc3Qgbm9jaG1hbCBHZWlnZSwgbnVyLCB1bSBtb2VnbGljaHN0CnZpZWxlIEtvYm9sZGUgdmVycHJ1ZWdlbG4genUga29lbm5lbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVjaCBMaWVkZ3V0LiAoWWFudHJvLCAxMi4gSmFuIDE5OTUsIDE4OjM2OjA5KToKCkRhIGVzIGphIE1vZGUgenUgc2VpbiBzY2hlaW50IHVuZCBhdWNoIGVpbiB3ZW5pZyBTcGFzcyBtYWNodCwgaGllciBtZWluZQpWZXJzaW9uIGRlcyBTcGllbGVzLiBadSBlcnJhdGVuIGlzdCB3aWUgdWVibGljaCBUaXRlbCB1bmQgSW50ZXJwcmV0LgoKRWluZSBCZWxvaG51bmcgaGFiIGljaCBub2NoIG5pY2h0IGZlc3RnZXNldHp0Li4uIG1hbCBzZWhlbiwgdmllbGxlaWNodCBjbG9uZQppY2ggZGVtIFNpZWdlciBlaW5lIEd1dGUgV2FmZmUgYXVzIGVpbmVyIHZvbiBCb2luZ3MgR2VnZW5kZW4uLi4uCgpEaWUgTGlzdGU6CgphKSBJIHNjcmVhbSB0byB0aGUgc2t5LCBpdCdzIGVhc2llciB0aGFuIGNyeWluZy4KYikgc3VyZgpjKSB3aWxsIHlvdSB3aXBlIGF3YXkgbXkgdGVhcnMuCmQpIHNsYW0KZSkgRnVjayB5b3UKZikgSSBiYW5nIG15IGhlYWQgYWdhaW5zdCB0aGUgd2FsbApnKURvbid0IHlvdSBrbm93IGl0IGZ1Y2tpbicgaHVydHMKaCkgSXQncyBiZXR0ZXIgdG8gZmVlbCBsaWtlIHNoaXQgdGhhbiBiZSBhIHBpZWNlIG9mIHNoaXQKaSkgeW91IGNhbiBwdXQgYSBidWxsZXQgaW4gbXkgaGVhZCwgYnV0IHlvdSBjYW4ndCBraWxsIHRoZSB3b3JkIEkgc2F5CmopIEknbSByZWFsbHkganVzdCAxOQprKSBJIHdhbnQgbW9yZQpsKSB0aGVyZSdzIGFuIGVtb3Rpb24gaW4gbWUKbSkgSXQgc2VlbXMgbGlrZSBub29uZSBjYXJlcwpuKSBJIHNhdyBoZXIgbHlpbmcgaW4gYSBwb29sIG9mIHJlZApvKSBJIHRvb2sgYSBwaWN0dXJlCnEpIEdpdmUgbWUgc29tZSBiYXNzCnIpIEdpdmUgbWUgbW9yZSBiYXNzCnMpIFRoZSBncmVhdGVzdCB3ZWFwb24gb2YgdGhlIGZhc2hpc3QgaXMgdGhlIHRvbGVyYW5jZSBvZiB0aGUgcGFjaWZpc3QKdCkgSnVzdCBsZWF2ZSBtZSBhbG9uZQp1KSBEaXNjb3Mgb3V0CnYpIFRoZXJlIGNhbid0IGJlIGEgcHJpY2Ugb24gYSBtaXJhY2xlCncpIEkgc2hvdCBSZWFnYW4KeCkgTG92ZSB0dXJucyB0byBsb25lbGluZXNzCnkpIExpZXMgYW5kIGhhdGUgYW5kIGFnb255LCB0aHJvdWdoIG15IGV5ZXMgaXMgYWxsIEkgc2VlCnopICJjb29sIiBpcyBqdXN0IHRocmVlIGxldHRlcnMgYXdheSBmcm9tICJmb29sIgoKU28uLi4gdmllbCBTcGFzcyEKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBZYW50cm87KQoKIFAuUy46IGFlaG1tbSBhY2ggamEuLi4gWmFyZG96IGRhcmYgbmljaHQgbWl0c3BpZWxlbi4uLiB3YWVyZSBaVSBlaW5mYWNoCmZ1ZXIgSWhuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0c2sgKEVscmljLCAxMi4gSmFuIDE5OTUsIDIxOjE5OjExKToKRGEgc2l0emUgaWNoIHNvIHp3ZWlTdHVuZGVuICdydW0sIGxlc2UgTVBBLCB1bmQgYWxzIGljaCdzIGVuZGxpY2gKZ2VzY2hhZmZ0IGhhYmUsIHN0ZWh0IGRhICJuaXggTmV1ZXMgYXVmIGRlciBXZWx0Ii4KV2FzIHp1ciBIb2VsbGUgaGFiJyBpY2ggZGFubiBnZXRhbiBkaWUgZ2FuemUgWmVpdCA/CgpwdG1vbAogICAgICBFbHJpYy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmphYSAoRWxyaWMsIDEyLiBKYW4gMTk5NSwgMjE6MTk6NDUpOgphYWFhaC4gYmVzc2VyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEF1Y2ggTGllZGd1dC4gKEtlcm1pdCwgMTIuIEphbiAxOTk1LCAyMzowNjoxNCk6CiMhIHJuPVlhbnRybyBydD03ODk5MzIxNjkKQWxzbyB3ZW5uIG1pY2ggbmljaHQgYWxsZXMgdGFldXNjaHQsIGlzdCBkZXIKZ3Jvc3N0ZWlsIGRlciBUZXh0dGVpbGUgdm9uIGRlbiBTdWljaWRhbCBUZW5kZW5jaWVzOikKTFBzLi4uLmhtbW0gRmVlbCBsaWtlIFNoaXQuLi4uZGVqYSB2dS4uLkNvbnRyb2xsZWQgYnkgaGF0cmVkLi4uTGlnaHRzLApjYW1lcmEsUmV2b2x1dGlvbiBldGMuLi5nZW5hdWUgU29uZ3RpdGVsIGZhbGxlbiBtaXIgamV0enQgbmljaHQgYWxsZSBlaW4KYWJlciBpY2ggZ2xhdWJlIHEgdW5kIHIgc2luZCBhdXMgU2VuZCBtZSB5b3VyIE1vbmV5OikKSWNoIGhvZXIgbm9jaG1hbCB6dSBoYXVzZSByZWluLi4uZGFubiBnaWJ0cyBhbGxlIFRpdGVsOikKCktlcm1pdC4uLi51bmdsYXVibGljaGVyIFN1aWNpZGFsLUZhbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGFtaXQgcG9saXplaS5iZXNjaHdlcmRlbiBuaWNodCBzbyB2b2xsIHdpcmQuLi4gKEpvZiwgMTMuIEphbiAxOTk1LCAxMjo1NDoyOCk6CiMhIHJuPUdyaW1tYm9ybiBydD03ODk3NTg3MjIKIEFsc28sIGJhbGQgaXNzZXMgc293ZWl0IC4uLiBiYWxkIHNjaHJlaWIgaWNoIGRpZSBLYXBlbGxlbiB1bS4KIGlmIChnZXR1aWQodGhpc19wbGF5ZXIoKSk9PSJncmltbWJvcm4iICYmIHF1ZXJ5X3ZlcmIoKT09ImJldGUiICYmCiAgICAgc3RyIT0ienUgam9mIikKICB7CiAgICB3cml0ZSgiWnUgV0VNIHdpbGxzdCBEdSBiZXRlbiwgQXRoZWlzdD8gOilcbiIpOwogICAgcmV0dXJuIDE7CiAgfQpUaGlzIHNjaG91bGQgd29yayAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNhdCo/IEFycmdoISAoRWlnZW50bGljaCBwb2xpemVpLmJlc2Nod2VyZGVuKSAoR3JpbW1ib3JuLCAxMy4gSmFuIDE5OTUsIDE1OjAxOjQ1KToKCldhcz8gQ2F0KiBhbHMgSGlsZnNzY2hlcmlmZj8gRGFzIGhhdCBkb2NoIGdlcmFkZSBub2NoIGdlZmVobHQhIFdlbm4gWndlaXRpZXMKamV0enQgc2Nob24genVyIFBvbGl6ZWkgZ2VoZW4ga29lbm5lbiBkYW5uIHNpbmQgZWhybGljaGUgRXJzdGllcyBiYWxkIHZvcgpuaWNodHMgbWVociBzaWNoZXIuCkljaCBiaW4gZW50c2NoaWVkZW4gZ2VnZW5kYXMgQmV0cmF1ZW4gdm9uIFp3ZWl0aWVzIG1pdCBvZmZpemllbGxlbiBBdWZnYWJlbiEKCkF1c3NlcmRlbTogV2VyIGthbm4gbnVuIENhdCogbm9jaCBkaW5nZmVzdCBtYWNoZW4sIHdlbm4gZXIgbWFsIHdpZWRlciBkYXMgbXVkCmNyYXNodD8KCkluIHZvZWxsaWdlciBWZXJ6d2VpZmx1bmcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIEdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVjaCE/IChCYW1idWxrbywgMTMuIEphbiAxOTk1LCAyMzo1MTozNik6CltUb2Q6XSBFaW4gdG90ZXIgV2FlY2h0ZXIgaGF0IGdlcmFkZSBNdWRtYXggdW1nZWJyYWNodC4KKCpncmluc2UqKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIEFybWVuIFp3ZXJnZS4uLi4gKEJhbWJ1bGtvLCAxNC4gSmFuIDE5OTUsIDA5OjUyOjE0KToKRWluZXMgTW9yZ2VucyBJbSBNb3JnZW5HcmF1ZW46CkR1IGJlZmluZGVzdCBEaWNoIGluIGRlciBEaWFtYW50YmFyLgpEaWUgRGlhbWFudGJhciBpc3QgZGVyIE9ydCwgYW4gZGVtIHNpY2ggZGllIFp3ZXJnZSB6dW0gUGxhdWRlcm4gdW5kIFRyaW5rZW4KdHJlZmZlbi4gRXIgaXN0IGF1Y2ggdm9yenVlZ2xpY2ggZGF6dSBnZWVpZ25ldCwgZGVubiBlcyBnaWJ0IGhpZXIgcHJpbWEKR2V0cmFlbmtlLiBXZW5uIER1IHNlaGVuIG1vZWNodGVzdCwgd2FzIGVzIGdlbmF1IGdpYnQsIGRhbm4gdGlwcGUgZWluZmFjaAonbWVudWUnIGVpbi4gWndlcmdlIGJla29tbWVuIHNlbGJzdHZlcnN0YWVuZGxpY2ggZXJtYWVzc2lndGUgUHJlaXNlLgpEZXIgQXVzZ2FuZyBkZXIgQmFyIGlzdCBpbSBTdWVkZW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBzdWVkZW4uCkVpbiBmZXR0ZXIgWndlcmcuCkRlciBTY2hsdWVzc2VsIHp1IEJvaW5ncyBTY2hyZWlidGlzY2guCkRlciBTY2hsdWVzc2VsIHp1IEJvaW5ncyBTY2hyZWlidGlzY2guCkRlciBTY2hsdWVzc2VsIHp1IEJvaW5ncyBTY2hyZWlidGlzY2guCkRlciBTY2hsdWVzc2VsIHp1IEJvaW5ncyBTY2hyZWlidGlzY2guCkRpZSBUb3AtTGlzdGUsIFRvcC1TcGllbGVybGlzdGUsIFRvcC1TZWhlcmxpc3RlIHVuZCBUb3AtWndlaXRpbGlzdGUuCgpCQU1CVUxLTwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2VsdHNhbWUgRGluZ2UgZ2VzY2hlaGVuLi4uIChUb2V0ZXIsIDE0LiBKYW4gMTk5NSwgMTQ6MzU6MTQpOgo+IEZpbnN0ZXJuaXMuCiAgRGVyIFNlbnNlbm1hbm4gZ3JlaWZ0IERpY2ggbWl0IGRlciBTZW5zZSBhbi4KICBEZXIgU2Vuc2VubWFubiB2ZXJmZWhsdCBEaWNoLgogIER1IGdyZWlmc3QgZGVuIFNlbnNlbm1hbm4gbWl0IGRlbSBTY2h3ZXJ0IGFuLgogIER1IHRyaWZmc3QgZGVuIFNlbnNlbm1hbm4uCiAgRGVyIFNlbnNlbm1hbm4gZ3JlaWZ0IERpY2ggbWl0IGRlciBTZW5zZSBhbi4KICBEZXIgU2Vuc2VubWFubiB2ZXJmZWhsdCBEaWNoLgpUb2V0ZXIgc2NobmFwcHQgc2ljaCBkZW4gQnVtZXJhbmcgdW5kIGZyaXNzdCBpaG4gZ2VyYWV1c2Nodm9sbCBhdWYuCgoqUnVlbHBzKiBmZWhsdCB3YXMgU2Fsei4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVpaGVuZm9sZ2UgKEd1bGR1a2F0LCAxNi4gSmFuIDE5OTUsIDE4OjQ1OjEwKToKTmV1bGljaCBpbiBkZXIgQXJlbmE6IChtYW4gYWNodGUgYXVmIGRpZSBSZWloZW5mb2xnZSEhIQpBYXJnb24gaXN0IHNjaG9uIHNlaHIgc2Nod2VyIGFuZ2VzY2hsYWdlbiEgRGVyIEthbXBmIGdlaHQgaW4gZGllCmVudHNjaGVpZGVuZGUgUGhhc2UhIQpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKRWQgbXVzcyBUcmVmZmVyIGhpbm5laG1lbi4KW1RvZDpdIEJ1bWVyYW5nIGhhdCBnZXJhZGUgQWFyZ29uIHVtZ2VicmFjaHQuCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgpBYXJnb24gc2llaHQgZXR3YXMgbWl0Z2Vub21tZW4gYXVzLgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKQWFyZ29uIHdpcmQgd2llZGVyIHVuZCB3aWVkZXIgc2Nod2VyIGdldHJvZmZlbiB1bmQgc3RlaHQga25hcHAgYW0gQWJncnVuZCEKSXN0IGRhcyBkYXMgRW5kZT8/CkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgpNZWluZSBEYW1lbiwgdW5kIEhlcnJlbiwgd2FzIGZ1ZXIgZWluIEthbXBmISBXaXIgd3VyZGVuIFpldWdlbiBlaW5lcyBncm9zc2VuCkthbXBmZXMsIGRlciBpbiBFZCBlaW5lbiB3dWVyZGV2b2xsZW4gU2llZ2VyIGZhbmQhIFVucyBibGVpYnQKbnVuIG5pY2h0cyB3ZWl0ZXIsIGFscyBJaG5lbiBlaW5lIHNjaG9lbmUgSGVpbXJlaXNlIHp1IHd1ZW5zY2hlbiEgQmlzIHp1bQpuYWVjaHN0ZW4gbWFsIQpFaW4gTWFubiBtaXQgZ3Jvc3NlbiBTcGVja2FybWVuIHVuZCBlaW5lciBTY2h1ZXJ6ZSBhdWYgZGVyICdPdHRvcyBJbWJpc3N0dWJlJwpzdGVodCBrb21tdCBpbiBkaWUgQXJlbmEgdW5kIHNjaGxlaWZ0IGRpZSBMZWljaGUgcmF1cy4KVG9yZmR1ZW5nIHJ1ZnQgaW4gZGllIEFyZW5hIDoKZ2liIGFsbGVzClsKR0QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiAoQW5hdG9sLCAxNi4gSmFuIDE5OTUsIDIwOjEyOjA3KToKCkVzIHdhciBlaW5tYWwsIGRhIHdhciAiOiIgdW5kICInIiBnZXN0b2VydC4gRXMgd2FyIGVpbm1hbCwgZGEgZnJhZ3RlIEFuYXRvbApiZWkgSm9mIGFuLCBvYiBkZW5uIG5vY2ggZGFyYW4gZ2VhcmJlaXRldCB3dWVyZGUuLi4KCkhpZXIgZm9sZ3QgZGFzIExvZy4KSGVyYXVzZ2VrdWVyenQgYWxsZSBSdWZlIHVuZCBEZXJnbGVpY2hlbi4uLgoKSm9mIHRyYW5zdGUgbWljaCBpbiBzZWluZW4gV29ya3Jvb20sIGRhbWl0IGljaCBnZWZhaHJsb3MgbWVpbmUgQXVzcnVlc3R1bmcKYWJsZWcKZW4ga29ubnRlLiBad2Vja3MgRmVobGVyYmVzZWl0aWd1bmcgYmVpICI6IiB1bmQgIiciLi4uCkpvZiBzYWd0OiBBaCBkYSBoYWJlbiB3aXIgZGVuIFVlYmVsdGFldGVyLCBzY2hhZXR6ZSBpY2gKRHUgc2Fnc3Q6IHdvd293bz8KSm9mIHNhZ3Q6IGRlciBQYW5kb3JyYS1GbHVjaCAuLi4KSm9mIHNhZ3Q6IFNla3VuZGUKCj8KRGllc2VzIGlzdCBkZXIgQXJiZWl0c3JhdW0gdm9uIEpvZi4gRXMgbGllZ2VuIHZvbGxnZXNjaHJpZWJlbmUKWmV0dGVsIGF1ZiBkZW0gQm9kZW4sIGRpZSBXYWVuZGUgc2luZCBtaXQgS3JlaWRlemVpY2hlbiB6dWdla3JpdHplbHQuCk1hbiBtZXJrdCwgZGFzcyBkaWVzZXIgUmF1bSBkYWZ1ZXIgZGEgaXN0LCBkYXNzIEpvZiBmdWVyIHNpY2gKdW5nZXN0b2VydCBhcmJlaXRlbiBrYW5uLiBFaW5pZ2UgbWFnaXNjaGUgUG9ydGFsZSBmdWVocmVuIGluIGRpZSBXZWx0CmRlciBTdGVyYmxpY2hlbi4KRXMgZ2lidCBzaWViZW4gc2ljaHRiYXJlIEF1c2dhZW5nZTogcG9sYXIsIGViZW5lLCBpbnNlbG4sIGdlYmlyZ2UsIGdpbGRlLAptZXJsaW4gdW5kIGluc2VsMi4KNDAwNjEgTXVlbnplbi4KRWluIEVpc2FtdWxldHQuCkVpbiBMaWNodHBhbnplci4KRWluIExpY2h0aGVsbS4KRWluIFBhYXIgTGVkZXJtb2thc3NpbnMuCkVpbmUgWGFudGktSG9zZS4KRGllIFJvYmUgZWluZXMgTGVocmVycyBkZXIgQWthZGVtaWUuCkRhcyBBbXVsZXR0IGRlciBBa2FkZW1pZS4KRGFzIE1hZ2lzY2hlIEF1Z2UuCkVpbiBtYWdpc2NoZXMgWGFudGktU2Nod2VydC4KRGllIFJvYmUgZWluZXMgTGVocmVycyBkZXIgQWthZGVtaWUuCkVpbmUga2xlaW5lIEZsYXNjaGUuCkVpbiBOYWNodGRvbGNoCkVpbiBOYWNodGRvbGNoCkVpbiBOYWNodGRvbGNoLgpFaW4gTmFjaHRkb2xjaC4KRGFzIEFtdWxldHQgZGVyIEFrYWRlbWllLgpFaW4gTmFjaHRkb2xjaApFaW4gTmFjaHRkb2xjaC4KRWluIE5hY2h0ZG9sY2guCkVpbiBOYWNodGRvbGNoLgpEYXMgQW11bGV0dCBkZXIgQWthZGVtaWUuCkRhcyBNYWdpc2NoZSBBdWdlLgpFaW4gbWFnaXNjaGVzIFhhbnRpLVNjaHdlcnQuCkVpbiBaYXViZXJzdGFiLgpKb2YuCkpvZiBzY2hyZWl0IGxhdXQhCkpvZiBzYWd0OiBORUlOIE1JU1QgVkVSREFNTVRFUgpEdSBzYWdzdDogaG0/CkpvZiBzYWd0OiBtZWluIFdvcmtyb29tIGhhdCBkZWluZSBzYWNoZW4gZ2VmcmVzc2VuCkpvZiBzdG9laG50LgoKPwpEaWVzZXMgaXN0IGRlciBBcmJlaXRzcmF1bSB2b24gSm9mLiBFcyBsaWVnZW4gdm9sbGdlc2NocmllYmVuZQpaZXR0ZWwgYXVmIGRlbSBCb2RlbiwgZGllIFdhZW5kZSBzaW5kIG1pdCBLcmVpZGV6ZWljaGVuIHp1Z2Vrcml0emVsdC4KTWFuIG1lcmt0LCBkYXNzIGRpZXNlciBSYXVtIGRhZnVlciBkYSBpc3QsIGRhc3MgSm9mIGZ1ZXIgc2ljaAp1bmdlc3RvZXJ0IGFyYmVpdGVuIGthbm4uIEVpbmlnZSBtYWdpc2NoZSBQb3J0YWxlIGZ1ZWhyZW4gaW4gZGllIFdlbHQKZGVyIFN0ZXJibGljaGVuLgpFcyBnaWJ0IHNpZWJlbiBzaWNodGJhcmUgQXVzZ2FlbmdlOiBwb2xhciwgZWJlbmUsIGluc2VsbiwgZ2ViaXJnZSwgZ2lsZGUsCm1lcmxpbiB1bmQgaW5zZWwyLgpKb2YuCkR1IHNldWZ6c3QuCkpvZiBzYWd0OiBQcm9iaWVyIGRhcyBTQUcgbm9jaG1hbApKb2Ygc2FndDogJwpKb2Ygc2FndDogTW1tPwpEdSBzaWVoc3QgZWluZW4gRmVobGVyIGltIFJhdW0tWmVpdC1HZWZ1ZWdlLgpEdSB0ZWlsc3QgSm9mIG1pdDogRHUgc2llaHN0IGVpbmVuIEZlaGxlciBpbSBSYXVtLVplaXQtR2VmdWVnZS4KSm9mIHNhZ3Q6IFVuZCBqZXR6dD8KRHUgc2Fnc3Q6IGVpbnMgendvIGRyZWkKRHUgZnJldXN0IERpY2guCj5BbmF0b2wga2FubiBub2NoIGVtb3Rlbi4KRHUgZnJldXN0IERpY2guCkR1IGJlZGFua3N0IERpY2ggYmVpIEpvZi4KRHUgc2Fnc3Q6IG5hamEKRHUgc2Fnc3Q6IGRhbmtlCkNhdHdlYXpsZSBzY2hsZWljaHQgc2ljaCB2b24gaGludGVuIGFuIERpY2ggaGVyYW4uCkR1IHNhZ3N0OiB3YXMgaGFzdCBkdSBlaWdlbnRsaWNoIGZ1ZXIgZWluZW4ga29taXNjaGVuIHJhdW0/CkNhdHdlYXpsZSBrcmF0enQgc2ljaCBhbSBLb3BwLgpDYXR3ZWF6bGUgc2FndDogYWghCj8KSm9mIHNhZ3Q6IFNvCkRpZXNlcyBpc3QgZGVyIEFyYmVpdHNyYXVtIHZvbiBKb2YuIEVzIGxpZWdlbiB2b2xsZ2VzY2hyaWViZW5lClpldHRlbCBhdWYgZGVtIEJvZGVuLCBkaWUgV2FlbmRlIHNpbmQgbWl0IEtyZWlkZXplaWNoZW4genVnZWtyaXR6ZWx0LgpNYW4gbWVya3QsIGRhc3MgZGllc2VyIFJhdW0gZGFmdWVyIGRhIGlzdCwgZGFzcyBKb2YgZnVlciBzaWNoCnVuZ2VzdG9lcnQgYXJiZWl0ZW4ga2Fubi4gRWluaWdlIG1hZ2lzY2hlIFBvcnRhbGUgZnVlaHJlbiBpbiBkaWUgV2VsdApkZXIgU3RlcmJsaWNoZW4uCkVzIGdpYnQgc2llYmVuIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHBvbGFyLCBlYmVuZSwgaW5zZWxuLCBnZWJpcmdlLCBnaWxkZSwKbWVybGluIHVuZCBpbnNlbDIuCkNhdHdlYXpsZSBzdWNodCBuZSBuZXR0ZSBXRy4KSm9mLgpKb2Ygc2FndDogQ2F0eXl5eXkKRHUgc2Fnc3Q6IGhpCkpvZiBzY2hyZWl0IGxhdXQhCkNhdHdlYXpsZSBzYWd0OiBobT8KSm9mIHNhZ3Q6IE1laW4gd29ya3Jvb20gLi4uIGRlciByYWV1bXQgZG9jaCBhbGxlbiBNdWVsbCB3ZWcKQ2F0d2VhemxlIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCkpvZiBzYWd0OiBJY2ggaGFiIEFuYXRvbCBoZXJnZXRyYW5zdCBkYW1pdCBlciBnZWZhaHJsb3Mgc2VpbmUgc2FjaGVuIGRyb3BwZW4KSm9mIHNhZ3Q6IGthbm4KSm9mIHNhZ3Q6IHp1bSB0ZXN0ZW4KQ2F0d2VhemxlIHNjaHVldHRlbHQgZXR3YXMgYXVzIHNlaW5lbSBBZXJtZWwuCkNhdHdlYXpsZSBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KWmFyZG96IGlzdCB3ZWNoLgpKb2Ygc2FndDogUmFlIG1hbCB3YXMgbWVpbiBXb3Jrcm9vbSBnZW1hY2h0IGhhdD8KQ2F0d2VhemxlIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpDYXR3ZWF6bGUgdHJvbW1lbHQgbWl0IGRlbiBGYWV1c3RlbiBhdWYgZGVtIEJvZGVuLgpDYXR3ZWF6bGUgc2FndDogcGFwcGtvcHAgOi0pClJvY2h1cyBlcnNjaGVpbnQuClphcmRveiBzYWd0OiBEdSBrYW5uc3QgbWlyIGRvY2ggbmljaHQgZGFzIFBhcnR5YnJldHQgdm9yIGRlciBOYXNlIHdlZ25laG1lbgpKb2Ygc2FndDogQW5hdG9sLCB3YXMgaGF0dGVzdCBkdT8KQ2F0d2VhemxlIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpaYXJkb3ogZ3J1bW1lbHQuCkpvZiBzYWd0OiBwL3NlcnZpY2Uvam9mL3BhcnR5L2JvYXJkIzI3NzQzIHZlcm5pY2h0ZXQgdm9tIFdvcmtyb29tLgpDYXR3ZWF6bGUgc2FndDogZGFzIHZlcnNjaHdpbmRldCBhdXRvbWF0aXNjaCAuLi4gaXN0IGhhbHQgbWVpbiB3b3Jrcm9vbSA6LSkKSm9mIHNhZ3Q6IEFOYXRvbD8gV2VsY2hlIEF1c3J1ZXN0dW5nIGhhdHRlc3QgZHU/CkNhdHdlYXpsZSBraXR6ZWx0IEpvZiBhbiBzZWluZW0gS2lubi4KSm9mIHZlcnN1Y2h0LCBzaWNoIHp1IGJlaGVycnNjaGVuLCBtdXNzIGFiZXIgZG9jaCBsYWNoZW4uCkR1IGJyaWNoc3Qgdm9yIExhY2hlbiB6dXNhbW1lbi4KSm9mIHNhZ3Q6IG5laW4gTUVJTiB3b3Jrcm9vbQpEdSBzYWdzdDogaWNoIGhhYnMgZ2VjYXB0dXJlZAooWmVwaHlyIGt1ZXNzdCBEaWNoISkKQ2F0d2VhemxlIHNhZ3Q6IE1laW5lciByYWV1bXQgYXVjaCBhdWYgOi0pClphcmRveiBzYWd0OiBEYW5uIGJla29tbXQgaWhyIGhhbHQga2VpbmUgZ2VuYXVlcmVuIEluZm9zIHVlYmVyIG1laW5lClphcmRveiBzYWd0OiBBbmt1bmZ0Li4uCkNhdHdlYXpsZSB2ZXJzdGVja3Qgc2ljaCBoaW50ZXIgRGVpbmVtIFJ1ZWNrZW4uClphcmRveiBpc3QgZGEuCkR1IHNhZ3N0OiBtb20KRHUgc2Fnc3Q6IGFsbGVzIGJyYXVjaCBpY2ggbmljaHQgd2llZGVyLi4uZGFzIHdpZGNodGlnc3RlIGlzdCBmb2xnZW5kZXMuLi4KKEdlc3ByYWVjaC1Nb2R1cykKSm9mIHNhZ3Q6IFdhcnRlCkpvZiBzYWd0OiBXYXJ0ZSB3YXJ0ZQooR2VzcHJhZWNoLU1vZHVzIEVuZGUpCk9rLgpKb2YgZ2lidCBEaXIgNDUwMDMgTXVlbnplbi4KCmkKNDUwMDMgTXVlbnplbi4KRWluIEVoZXJpbmcgbWl0IGVpbmVtIFNhcGhpciAoZ2V0cmFnZW4pLgpEZXIgU2NobHVlc3NlbCB6dW0gUG9ydGFsIGRlciBBa2FkZW1pZS4KRWluIEVoZXJpbmcgbWl0IGVpbmVtIFNhcGhpciAoZ2V0cmFnZW4pLgpEYXMgU2VydmljZXBha2V0IHZvbiBNb3JnZW5ncmF1ZW5zIFByZXNzZWFnZW50dXIuCkFuYXRvbHMgVGVkZHliYWVyIEZyZWRkeS4KRWluIEJ1dHRvbiBmdWVyIFdvbHBlcnRpbmdlci1DbHViLU1pdGdsaWVkZXIuCkVpbiBFaGVyaW5nIG1pdCBlaW5lbSBTYXBoaXIgKGdldHJhZ2VuKS4KRWluIEZyZXVuZHNjaGFmdHNiYW5kIChnZXRyYWdlbikuCgppCkVpbiBaYXViZXJzdGFiLgpFaW4gWmF1YmVyc3RhYi4KNDUwMDMgTXVlbnplbi4KRWluIEVoZXJpbmcgbWl0IGVpbmVtIFNhcGhpciAoZ2V0cmFnZW4pLgpEZXIgU2NobHVlc3NlbCB6dW0gUG9ydGFsIGRlciBBa2FkZW1pZS4KRWluIEVoZXJpbmcgbWl0IGVpbmVtIFNhcGhpciAoZ2V0cmFnZW4pLgpEYXMgU2VydmljZXBha2V0IHZvbiBNb3JnZW5ncmF1ZW5zIFByZXNzZWFnZW50dXIuCkFuYXRvbHMgVGVkZHliYWVyIEZyZWRkeS4KRWluIEJ1dHRvbiBmdWVyIFdvbHBlcnRpbmdlci1DbHViLU1pdGdsaWVkZXIuCkVpbiBFaGVyaW5nIG1pdCBlaW5lbSBTYXBoaXIgKGdldHJhZ2VuKS4KRWluIEZyZXVuZHNjaGFmdHNiYW5kIChnZXRyYWdlbikuCgpaYXJkb3ogaXN0IHdlY2guClphcmRveiBzYWd0OiBJc3QgU3BpZWxlci1UcmFuc2VuIG5pY2h0IHZlcmJvdGVuPwpaYXJkb3ogcGZlaWZ0IHVuc2NodWxkaWcuCldhYWFhYWghIER1IHdlaW5zdCBiaXR0ZXJsaWNoLgpKb2Ygbmlja3QgenVzdGltbWVuZC4KSm9mIHNhZ3Q6IElzdCBlcwpEdSBzYWdzdDogampqam9vb29vb2ZmZmYhCgppCkVpbiBaYXViZXJzdGFiLgpFaW4gWmF1YmVyc3RhYi4KNDUwMDMgTXVlbnplbi4KRWluIEVoZXJpbmcgbWl0IGVpbmVtIFNhcGhpciAoZ2V0cmFnZW4pLgpEZXIgU2NobHVlc3NlbCB6dW0gUG9ydGFsIGRlciBBa2FkZW1pZS4KRWluIEVoZXJpbmcgbWl0IGVpbmVtIFNhcGhpciAoZ2V0cmFnZW4pLgpEYXMgU2VydmljZXBha2V0IHZvbiBNb3JnZW5ncmF1ZW5zIFByZXNzZWFnZW50dXIuCkFuYXRvbHMgVGVkZHliYWVyIEZyZWRkeS4KRWluIEJ1dHRvbiBmdWVyIFdvbHBlcnRpbmdlci1DbHViLU1pdGdsaWVkZXIuCkVpbiBFaGVyaW5nIG1pdCBlaW5lbSBTYXBoaXIgKGdldHJhZ2VuKS4KRWluIEZyZXVuZHNjaGFmdHNiYW5kIChnZXRyYWdlbikuCgpXYWFhYWFoISBEdSB3ZWluc3QgYml0dGVybGljaC4KRHUgc2Fnc3Q6IEpPRiEgSWNoIGhhYiBuaWNodCBudXIgendlaSBaYXViZXJzdGFlYmUuLi5JQ0ggSEFCRSBaV0VJCkVIRVJJTkdFISEhClphcmRveiBncmluc3QuCldhYWFhYWghIER1IHdlaW5zdCBiaXR0ZXJsaWNoLgpXYWFhYWFoISBEdSB3ZWluc3QgYml0dGVybGljaC4KWmFyZG96IHdhZWx6dCBzaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KSm9mIHNhZ3Q6IGJlc3Nlcj8KCmkKRWluIFphdWJlcnN0YWIuCkVpbiBaYXViZXJzdGFiLgo0NTAwMyBNdWVuemVuLgpEZXIgU2NobHVlc3NlbCB6dW0gUG9ydGFsIGRlciBBa2FkZW1pZS4KRWluIEVoZXJpbmcgbWl0IGVpbmVtIFNhcGhpciAoZ2V0cmFnZW4pLgpEYXMgU2VydmljZXBha2V0IHZvbiBNb3JnZW5ncmF1ZW5zIFByZXNzZWFnZW50dXIuCkFuYXRvbHMgVGVkZHliYWVyIEZyZWRkeS4KRWluIEJ1dHRvbiBmdWVyIFdvbHBlcnRpbmdlci1DbHViLU1pdGdsaWVkZXIuCkVpbiBFaGVyaW5nIG1pdCBlaW5lbSBTYXBoaXIgKGdldHJhZ2VuKS4KRWluIEZyZXVuZHNjaGFmdHNiYW5kIChnZXRyYWdlbikuCgpEdSBzY2h1ZXR0ZWxzdCBkZW4gS29wZi4KSm9mIHNhZ3Q6IGksIGFuYXRvbAoKaQpFaW4gRWlzYW11bGV0dC4KRWluIExpY2h0cGFuemVyLgpFaW4gTGljaHRoZWxtLgpFaW4gUGFhciBMZWRlcm1va2Fzc2lucy4KRWluZSBYYW50aS1Ib3NlLgpEZXIgU2NobHVlc3NlbCB6dW0gUG9ydGFsIGRlciBBa2FkZW1pZS4KRGllIFJvYmUgZWluZXMgTGVocmVycyBkZXIgQWthZGVtaWUuCkRhcyBBbXVsZXR0IGRlciBBa2FkZW1pZS4KRGFzIE1hZ2lzY2hlIEF1Z2UuCkVpbiBtYWdpc2NoZXMgWGFudGktU2Nod2VydC4KRGllIFJvYmUgZWluZXMgTGVocmVycyBkZXIgQWthZGVtaWUuCkVpbmUga2xlaW5lIEZsYXNjaGUuCkVpbiBOYWNodGRvbGNoLgpFaW4gTmFjaHRkb2xjaC4KRWluIE5hY2h0ZG9sY2guCkVpbiBOYWNodGRvbGNoLgpEYXMgQW11bGV0dCBkZXIgQWthZGVtaWUuCkVpbiBOYWNodGRvbGNoLgpFaW4gTmFjaHRkb2xjaC4KRWluIE5hY2h0ZG9sY2guCkVpbiBOYWNodGRvbGNoLgpEYXMgQW11bGV0dCBkZXIgQWthZGVtaWUuCkRhcyBNYWdpc2NoZSBBdWdlLgpFaW4gbWFnaXNjaGVzIFhhbnRpLVNjaHdlcnQuCkVpbiBaYXViZXJzdGFiLgpFaW4gWmF1YmVyc3RhYi4KNDUwMDMgTXVlbnplbi4KRGVyIFNjaGx1ZXNzZWwgenVtIFBvcnRhbCBkZXIgQWthZGVtaWUuCkVpbiBFaGVyaW5nIG1pdCBlaW5lbSBTYXBoaXIgKGdldHJhZ2VuKS4KRGFzIFNlcnZpY2VwYWtldCB2b24gTW9yZ2VuZ3JhdWVucyBQcmVzc2VhZ2VudHVyLgpBbmF0b2xzIFRlZGR5YmFlciBGcmVkZHkuCkVpbiBCdXR0b24gZnVlciBXb2xwZXJ0aW5nZXItQ2x1Yi1NaXRnbGllZGVyLgpFaW4gRWhlcmluZyBtaXQgZWluZW0gU2FwaGlyIChnZXRyYWdlbikuCkVpbiBGcmV1bmRzY2hhZnRzYmFuZCAoZ2V0cmFnZW4pLgoKPkFuYXRvbCBoYXQgaXJnZW5kd2llIHp1dmllbApEdSBiaXN0IGVyc3RhdW50LgpKb2Ygc2FndDogU28gYmVzc2VyLCBBbmF0b2w/CgppCkVpbiBFaXNhbXVsZXR0LgpFaW4gTGljaHRwYW56ZXIuCkVpbiBMaWNodGhlbG0uCkVpbiBQYWFyIExlZGVybW9rYXNzaW5zLgpFaW5lIFhhbnRpLUhvc2UuCkRlciBTY2hsdWVzc2VsIHp1bSBQb3J0YWwgZGVyIEFrYWRlbWllLgpEaWUgUm9iZSBlaW5lcyBMZWhyZXJzIGRlciBBa2FkZW1pZS4KRGFzIEFtdWxldHQgZGVyIEFrYWRlbWllLgpEYXMgTWFnaXNjaGUgQXVnZS4KRWluIG1hZ2lzY2hlcyBYYW50aS1TY2h3ZXJ0LgpEaWUgUm9iZSBlaW5lcyBMZWhyZXJzIGRlciBBa2FkZW1pZS4KRWluZSBrbGVpbmUgRmxhc2NoZS4KRWluIE5hY2h0ZG9sY2guCkVpbiBOYWNodGRvbGNoLgpFaW4gTmFjaHRkb2xjaC4KRWluIE5hY2h0ZG9sY2guCkVpbiBOYWNodGRvbGNoLgpEYXMgQW11bGV0dCBkZXIgQWthZGVtaWUuCkVpbiBOYWNodGRvbGNoLgpFaW4gTmFjaHRkb2xjaC4KRWluIE5hY2h0ZG9sY2guCkVpbiBOYWNodGRvbGNoLgpEYXMgQW11bGV0dCBkZXIgQWthZGVtaWUuCkRhcyBNYWdpc2NoZSBBdWdlLgpFaW4gbWFnaXNjaGVzIFhhbnRpLVNjaHdlcnQuCkVpbiBaYXViZXJzdGFiLgpFaW4gWmF1YmVyc3RhYi4KNDUwMDMgTXVlbnplbi4KRGVyIFNjaGx1ZXNzZWwgenVtIFBvcnRhbCBkZXIgQWthZGVtaWUuCkRhcyBTZXJ2aWNlcGFrZXQgdm9uIE1vcmdlbmdyYXVlbnMgUHJlc3NlYWdlbnR1ci4KQW5hdG9scyBUZWRkeWJhZXIgRnJlZGR5LgpFaW4gQnV0dG9uIGZ1ZXIgV29scGVydGluZ2VyLUNsdWItTWl0Z2xpZWRlci4KRWluIEVoZXJpbmcgbWl0IGVpbmVtIFNhcGhpciAoZ2V0cmFnZW4pLgpFaW4gRnJldW5kc2NoYWZ0c2JhbmQgKGdldHJhZ2VuKS4KCkpvZiBzYWd0OiBEZXIgc3RhYiB2ZXJzY2h3aW5kZXQgbmFjaCBuZXIgd2VpbGUgdm9uIGFsbGVpbgpEdSByYWV1c3BlcnN0IERpY2guCkpvZiBzYWd0OiBzY2hhZXR6ZSBpY2gKRHUgc2Fnc3Q6IGRhbmtlCkR1IHNhZ3N0OiBpY2ggd2Vpc3MKRHUgc2Fnc3Q6IGxlaWRlcgpKb2Ygc2FndDogTnVyIGVpbmVyIGRhdm9uCkR1IHNhZ3N0OiBoaWxiZXJ0IG5vY2htYWwgbWFjaGVuCkR1IHNhZ3N0OiB3YXM/CkpvZiBzYWd0OiBBZWggZHUgaGFzdCBuZW4gZ3JhdXNsaWNoZW4gRnVjaApEdSBzYWdzdDogaWNoIGhhYiBLRUlORU4KRHUgc2Fnc3Q6ICJzZXR6IiB3YXIgZG9jaCBkaWUgU3ludGF4LCBvZGVyPwpKb2Ygc2FndDogS2VpbmUgQWhudW5nCj4gSm9mIHNhZ3Q6IEFiZXIgZHUgaGFzdCBmbHVjaGxlYmVsIGdzY2hyZWliZW4gdm9yaGluCkR1IHNhZ3N0OiBqYSBpY2ggd2Vpc3MKKGFsaSBmbHYgLS0+ICBmbHYgID0gc2V0eiBmbHVjaGxldmVsICQxICwgZXJnYWIgV2llIGJpdHRlPykKRHUgc2Fnc3Q6IG5peApKb2Ygc2FndDogRWdhbCB1YyBtYWNoIGRlbiBmbHVjaCB3ZWNoCkR1IHNhZ3N0OiBhbHMgb2IgaWNoIHBhbmRvcmEgbmllIGdlbWFjaHQgaGFldHRlCkpvZiBzYWd0OiBXZWcgaXNzZXIKSm9mIHNhZ3Q6IE9rZWUKV2FhYWFhaCEgRHUgd2VpbnN0IGJpdHRlcmxpY2guCkR1IHNhZ3N0OiBqYS4KSm9mIHNhZ3Q6IEhtPz8KRHUgc2Fnc3Q6IEdBTloKRHUgc25pZmZzdCB0cmF1cmlnLgpaYXJkb3ogc2FndDogQWVobSwgSm9vb29ob29vZiEKRHUgZ3JpbnN0LgpEdSBzYWdzdDogbmFqYS4KWmFyZG96IHNhZ3Q6IEhhc3QgZHUgamV0enQgQW5hdG9scydGbHVjaCBkZXN0cnVjdGV0PwpEdSBzYWdzdDogd2VuaWdzdGVucyBrbGFwcHQgZGFzIEVtb3RlbiB3aWVkZXIsCkR1IHNhZ3N0OiB1bmQgZGFzICInIiBhdWNoLgpKb2Ygc2FndDogU2VrdW5kZQpaYXJkb3ogc2FndDogV2FlcmUgbmFlbWxpY2ggbmljaHQgc28gZ3VlbnN0aWcKRHUgc2V1ZnpzdC4KPkFuYXRvbCB0ZXN0ZXQgbWFsIHdhcwpKb2Ygc2FndDogU28gZGEgaXNzZXIgd2llZGVyCkpvZiBzYWd0OiBQcm9iaWVyIG1hbAooZmx2IDUpCkR1IHNhZ3N0OiBzbyBpY2ggc2NocmVpYmUga29ycmVrdGVzIGRldXRzY2guCj4gSm9mIHNhZ3Q6IEFuYXRvbCBzYWd0OiBzbyBpayBzcmVpYmUga29yZWt0ZXMgZGV1dHMuCkR1IHNhZ3N0OiB3aWUgd2Fycz8KSm9mIHNhZ3Q6IE9rYXkgYXVmIGluIGRpZSBHaWxkZSA6KQpEdSBzYWdzdDogZ3V0CkR1IHNhZ3N0OiBtb20KRHUgbGFlc3N0IGRlbiBaYXViZXJzdGFiIGZhbGxlbi4KRHUgbmltbXN0IGVpbmVuIFphdWJlcnN0YWIuCkR1IGdydW1tZWxzdC4KTnVyIGRlciBUb2Qga2FubiBEaWNoIHZvbiBkZW0gU3RhYiB0cmVubmVuLgpEdSBmcmV1c3QgRGljaC4KSm9mIHdpbmt0LgpEdSBnaWJzdCBKb2YgZGVuIFphdWJlcnN0YWIuCkRlciBncm9zc2UgUmF1bSBtaXQgc2VpbmVyIG5pZWRyaWdlbiBEZWNrZSB1bmQgZGVuIGdyb2IgZ2VzY2huaXR0ZW5lbgpRdWVyYmFsa2VuIGhhdCBQbGF0eiBmdWVyIHNlaHIgdmllbGUgUGVyc29uZW4uIEtuYXJyZW5kZSBEaWVsZW4gZXJ6YWVobGVuCnVlYmVyIEhlbGRlbnRhdGVuIGxhZW5nc3QgdmVyZ2Vzc2VuZXIgQWJlbnRldXJlciwgYmVydWVobXRlciBhbHMgbWFuY2hlcgpXZWlzZSB1bnNlcmVyIFplaXQuCkFiZW50ZXVyZXIsIGFiZXIgYXVjaCBhbmRlcmUgQmV3b2huZXIgZGllc2VyIFdlbHQga29tbWVuIGhpZXJoZXIsIHVtCnNpY2ggenUgaW5mb3JtaWVyZW4sIGlocmUgRXJmYWhydW5nZW4gYXVzenV0YXVzY2hlbiBvZGVyIHNpY2ggaW4gZGVuCnZlcnNjaGllZGVuc3RlbiBXaXNzZW5zY2hhZnRlbiB6dSB2ZXJiZXNzZXJuLgpEdXJjaCBkaWUgaW1tZXIgb2ZmZW5lIFR1ZXIgc2NoZWludCBkaWUgYXVmZ2VoZW5kZSBTb25uZSBoZXJlaW4gdW5kIGZ1ZWxsdApkZW4gUmF1bSBtaXQgaWhyZW0gZ29sZGVuZW4gTGljaHQuIFNvbnN0IGdpYnQgZXMgaGllciBudXIgbm9jaCBkZW4gQXVzZ2FuZwppbSBOb3JkZW4sIHdlbGNoZXIgYXVmIGRpZSBIYWZlbnN0cmFzc2UgZnVlaHJ0IHVuZCBCaWxkZXIgYW4gZGVuIFdhZW5kZW4sCm1pdCBaZWljaG51bmdlbiB1bmQgR2VtYWVsZGVuIHZvbiBNb3JnZW5HcmF1ZW4uIEVpbnMgZGVyIEJpbGRlciBlcmxhZXV0ZXJ0CmRpZSBGdW5rdGlvbiBkZXIgR2lsZGUgdW5kIGVpbmUgZ3Jvc3NlIFVociBhbiBkZXIgV2FuZCB6ZWlndCwgd2FzIGRpZQpTdHVuZGUgc2NobGFlZ3QuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBub3JkZW4uCkFraWxlbyBkZXIgT2JlcmdsYWRpYXRvci4KQmxhY2ttb29yIGRlciBaYXViZXJlci4KV2FybG9yZCBkZXIgSGV4ZXIuCkhhZHJhIGRlciBhbmdlaGVuZGUgU2VoZXIuCkVpbiBQYXJ0eWJyZXR0LgpHdW5kdXIgZGVyIFdVRVNURShOKSBaV0VSRy4KTWVybGluLCBkZXIgVXJ2YXRlciBhbGxlciBNYWdpZXIuCk1lbnNhLCBkZXIgTWVuc2Flc3Nlci4KRWluIEhhbmRidWNoIGZ1ZXIgQW5mYWVuZ2VyLgpFaW5lIFplaXR1bmcuCgoKCgpUamEgLSBFbmRlIGd1dCBhbGxlcyBndXQuLi4uIGFiZXIgYXVjaCB1bnNlcmUgR29ldHRlciBzaW5kIG5pY2h0IGdhbnoKdW5mZWhsYmFyLi4uCgpBbmF0b2wgKHRyYWV1bXQgdm9uIGVpbmVyIHNjaG9lbmVuIG5ldWVuIFdlbHQpCgpQUzpKb2YsIGljaCBob2ZmZSwgRHUgcmVpc3N0IG1pciBtZWluZW4gS29wZiBuaWNodCBhYi4gRWdhbCBvYiBtaXQgb2RlciBvaG5lClZPT0RPTy1QdXBwZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmFqYS4uLiAoWWVuZGksIDE2LiBKYW4gMTk5NSwgMjE6NTQ6MzQpOgoKCiJbQWxsZ2VtZWluOlBhdWxlXSBIZXkgU29lY2tjaGVuLCBnZW1laW5zYW0gc2luZCB3aXIgU1RSQUshISIKClRqYWFhLi4uIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIChGaWNrZnJvc2NoLCAxNy4gSmFuIDE5OTUsIDExOjA3OjUzKToKTm9jaCBuZSBhbnR3b3J0IHp1bSBlcnN0ZW4gUXVpejogeiBpc3QgbWVpbmVzIGFjaHRlbnMgdm9uIGVpbmVyIGRlciBhbHRlbiB1bmQKZG1hbHMgZm9sZ2xpY2ggbm9jaCBndXRlbiBQbGF0dGVuIHZvbiBHcm9lbmVtZXllci4gVGl0ZWwgd2Vpc3MgaWNoIG5pY2h0CmdlbmF1LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIChGaWNrZnJvc2NoLCAxNy4gSmFuIDE5OTUsIDExOjIwOjMyKToKVW5kIGhpZXIgbnVuIG1laW4gUXVpeiAoc29sbHRlIG5pY2h0IHNvIHNjaHdlciBzZWluLi4uKSBWaWVsbGVpY2h0IHdpcmRzIGphCm5vYyBpbiBkaWUgcmljaHRpZ2UgUnVicmlrIHZlcmxlZ3QuLi4KCmEpIGdldCBvbiB1cCAuLi4KYikgd2VhcmluZyBicmFjZWxldHMgb2Ygc21va2UgLCBuYWtlZCBvZiB1bmRlcnN0YW5kaW5nCmMpIEknbGwgdGFrZSBtb3JlIHRoYW4gYSBkb2N0b3IKZCkgQWxsIHlvdSBmb2xrcyB0aGluayB5b3Ugb3duIG15IGxpZmUKZSkgLi4uIEknbSBnb2luZyB0byBjdXQgeW91IGludG8gbGl0dGxlIHBpZWNlcy4KZikgSSB0aG91Z2h0IGl0IHdhcyBjb25mZXR0aSBpbiBvdXIgaGFpcgpnKSB3aXRoIHRoZWlyIHRhbmtzIGFuZCB0aGVpciBib21icyAuLi4gKmdyaW5zKgpoKSBlcyBrYW0gZGVyIGVyc3RlIEJhcnQsIGVpbiB6YXJ0ZXIgRmxhdW0KaSkgdG9kYXkgSSBkcmVhbSBvZiBob3cgaXQgdXNlZCB0byBiZQpqKSBhbmQgeW91ciBhc3MgaXMgbWluZSAsIHlvIC4KaykgSEFIQSB5ZWFoIEknbSBzdGlsbCBhbGl2ZQpsKSBJdCdzIG5vdCBhIGZyZWV3YXkgYnVsbGV0ICAsIG9yIGEgYnVnIHdpdGggbW9uc3RlciB3aGVlbHMKbSkgYW5kIHdhc2ggYXdheSB0aGUgcmFpbiAqZ3JpbnMqCm4pIGNyeXN0YWwgd29yZHMsIHRoYXQgaGFuZyBzbyBmaW5lCm8pIG1vdmUKcCkgV2lyIHRhbnplbiBhdWYgZGVtIG5hc3NlbiByYXNlbgpxKSBtbW1taApyKSBTcGlkZXIKClNvLCBkYXNzIHdhZXJzIGVyc3RtYWwuLi4gRWluaWdlIHNvbGx0ZW4gZWNodCBsZWljaHQgc2Vpbi4uLgpBdWYgZGllIEFudHdvcnQgdm9uIGogbCB1bmQgcCB3YXJ0ZW5kLAogICAgICAgICAgICAgICAgICAgICAgIEZGLgoKLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiAoQW5hdG9sLCAxNy4gSmFuIDE5OTUsIDExOjU1OjE3KToKCkdlc2VoZW4gaW4gZGVyIEFsY2hpbWlzdGVuLUt1ZWNoZS4uLgoKdW50IG1vZXJzZXIKVGllcmlzY2ggZ2VmYWVocmxpY2ggYXVzc2VoZW5kZSBEaW5nZXIsIGJlc3NlciBEdSBsYWVzc3QgZGllIEZpbmdlciBkYXZvbi4KCkFuYXRvbCAgIGRlc2lsbHVzaW9uaWVydC4uLnZvbiB3ZWdlbiAnZnJpZWRsaWNoJy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkYtUXVpeiAoQnVuZ2xlLCAxNy4gSmFuIDE5OTUsIDE0OjE4OjM1KToKSGFsbG8gaWhycyEKCkFsc28gKG8pIGlzdCBlaW5kZXV0aWcgdm9uIFJlZWwgMlJlYWwsICJNb3ZlIEl0IE1vdmUgSXQuLi4uIiA6KSAgb2RlciB3YXIncwoiR28gT24gTW92ZS4uLiIsbmFqYS4KVW5kIChyKSBuYXR1ZXJsaWNoIHZvbiBUaGUgV2hvIDogIkJvb2hvb3JpcyBUaGUgU3BpZGVyIHd1bW11bW11bW11bW0uLi4uIgpZZWFoIQoKQnVuZ2xlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkYtUXVpeiAoQm9pbmcsIDE3LiBKYW4gMTk5NSwgMTQ6Mzg6MjcpOgojISBybj1CdW5nbGUgcnQ9NzkwMzQ4NzE1CkF1cyBkZW0gS29udGV4dCAobmFlbWxpY2ggYikgdW5kIGYpICkgZ2VodCBoZXJ2b3IsIGRhc3MgcikgbmljaHQgdm9uClRoZSBXaG8gaXN0IC4uLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogIChIaWdobGFuZGVyLCAxNy4gSmFuIDE5OTUsIDE0OjU4OjE3KToKIyEgcm49Rmlja2Zyb3NjaCBydD03OTAzMzgwMzIKZikgTWFyaWxsaW9uLCBLYWVsZWlnaCAoc3A/KQpnKSBUb3duIEkgbG92ZWQgc28gd2VsbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGRi1RdWl6IChGaWNrZnJvc2NoLCAxNy4gSmFuIDE5OTUsIDE1OjEyOjM1KToKIyEgcm49Qm9pbmcgcnQ9NzkwMzQ5OTA3CkVyc3RhdW5saWNoZSBHZWhpcm52ZXJicmVubnVuZywgZGVpbmUgU2NobHVzc2ZvbGdlcnVuZyEgR3JhdHVsaWVyZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAgKEZpY2tmcm9zY2gsIDE3LiBKYW4gMTk5NSwgMTU6NTE6MTIpOgojISBybj1GaWNrZnJvc2NoIHJ0PTc5MDMzODAzMgpPSyBtb3ZlIGZhZWxsdCBhdXMgLiBEZXIgUHJlaXMgaXN0IDEwMDAwIGZ1ZXIgZGVuLCBkZXIgYWxsZXMgd2Vpc3MuIFRlaWwgMgpiaXMKeikga29tbXQgaW4ga3VlcnplLgpFaW5zZW5kZXNjaGx1c3MgaXN0IGRlciAxLjIuMTk5NQpFdWVyIEZGLihzZWluZSBVbGtpIGxpZWJlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZGLVF1aXogKEJ1bmdsZSwgMTcuIEphbiAxOTk1LCAxNjo1Mjo0MSk6CiMhIHJuPUJvaW5nIHJ0PTc5MDM0OTkwNwpNaXN0ISAoYikga2VubiBpY2ggdWViZXJoYXVwdCBuaWNodCwgdW5kIChmKSBob2VydCBzaWNoIGFuIHdpZSBGcmFuayBTaW5hdHJhCm9kZXIgc28uIEljaCBtZWluZSwgd28gaXN0IGRlciBLb250ZXh0ID8/PyBVbmQgd2FzIGhhdCBkYXMgbWl0IFRoZSBXaG8genUgdHVuCj8gT2RlciBhdWNoIG51ciBtaXQgKHIpID8KSWNoIGhvZmZlLCBpaHIga2xhZXJ0IG1pY2ggYXVmLCB3ZW5uIGRhcyBhbGxlcyB2b3JiZWkgaXN0LiA6KQoKQnVuZ2xlIGJlZ3JlaWZ0IGhldXQgdWViZXJoYXVwdCBuaXguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGRi1Mb2VzdW5nOiAoT2V0dGksIDE3LiBKYW4gMTk5NSwgMTg6Mjk6MjMpOgoKSHUgSHUgaGllciBtZWluZSBWb3JzY2hsYWVnZS4uLgoKYS4pIEphbWVzIEJyb3duLCBTZXggTWFjaGluZQpiLikgTWFyaWxsaW9uLCBQc2V1ZG8gU2lsayBLaW1vbm8KZi4pIE1hcmlsbGlvbiwgS2F5bGVpZ2gKZy4pIENyYW5iZXJpaWVzIFpvbWJpZQprLikgTmV3IE1vZGVsIEFybXksIDEyNU1wSAptLikgQmxhY2sgSG9sZSBTdW4sIFNvdW5kZ2FyZGVuCnEuKSBDcmFzaCBUZXN0IER1bW1pZXMsIG1tbW1oIG1tbW1oIG1tbW1oCnIuKSBNYXJpbGxpb24sIGF1Y2ggdm9uIGRlciBNaXNwbGFjZWQgQ2hpbGRob29kCgpDaWFvCiBPZXR0bAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmV0cmlmZnQgVHJhbnN3ZWF6ZWwgKFRvYXN0YnJvdCwgMTcuIEphbiAxOTk1LCAxODo0NzowMik6CkFsc28gaWNoIHdpbGwgamEgdW5zZXJlbiBzZWhyIGdlc2NoYWV0enRlbiBTcGllbGVybiBuaWNodCBhbHp1c2VociBhdWYgRGllClBlbGxlIHJ1ZWNrZW4gdW5kIHNpZSBhdWNoIG5pY2h0IEtyaXRpc2llcmVuIG9kZXIgc28uLi5BYmVyIFdpZXIgc29sbHRlbiB1bnMKTWFsIGxhbmdzYW1tIGV0d2FzIHp1cnVlY2toYWx0ZW4uCkVpbmlnZSBNYWdpZXIgc2NoZWluZW4gc2Nob24gZWNodGUgSWRlbnRpdGFldHNwcm9ibGVtZSB6dSBiZWtvbW1lbgpBbHMgTWVpbiBad2VpdGllIG5ldWxpY2ggaW4gZWluZSBuaWNodCBuYWVoZXIgZ2VuYW5udGUgQmVoYXVzdW5nIGdpbmcsdW0gc2ljaApkb3J0IGV0d2FzIHVtenVzZWhlbiwKbXVzc3RlIGVyIHNpY2ggZG9jaCBzY2hvbiBzdGFyayBXdW5kZXJuLgoKV2FzIERpZSBNYWdpZXIgc28gYWxsZXMgYmVpIHNpY2ggcnVtbGllZ2VuIEhhYmVuLi4uLgpBbHNvIG5peCBmdWVyIHVuZ3V0IGFiZXIgbGFuZ3NhbW0gbWFjaCBpY2ggbWlyIGdlZGFua2VuLkVudHdlZGVyIGlzdApDYXR3ZWF6bGUgZWluZSBGcmF1IG9kZXIgZWluIHRyYW5zd2VhemxlLgpXaWUgYXVjaCBpbW1lci4KU3BpZWxlciBhbGxlciBMYWVuZGVyLi4uU2VpZCBuZXR0IHp1IEV1cmVuIE1hZ2llcm4sCkRhbWl0IHNpZSBuaWNodCBkZW0gU3RyZXNzIHZlcmZhbGxlbi4KCgpMaWViZXIgQ2F0d2VhemxlIG5peCBGdWVyIHVuZ3V0IGFiZXIgTWFsIGVocmxpY2ggLldlciBEZXNzdXMgaW4gc2VpbmVyCldvaG51bmcgcnVtbGllZ2VuIGxhZXN0IHNvbGx0ZSBzaWUgYmVzc2VyIHZlcnNjaGxpZXNzZW4uQW0gYmVzdGVuIG1pdCBlaW5lcgpUdWVyIGF1cyBpbnRlbGxpZ2VudGVtIEJpcmtlbmhvbHouCgoKR2V6ZWljaG5ldCBBcm1pbiB2b24gTW9yZ2VuZ3JhdWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2xhbmRlcnNjcmVlIChDYXJhZGhyYXMsIDE3LiBKYW4gMTk5NSwgMTg6NDg6MDUpOgpHcmFkZSBiZWltIEVpc3NlZ2xlciBTbGFuZGVyc2NyZWUgKGluIE1vdWxva2luKSBwYXNzaWVydDoKCkRlciBLYWkgdm9uIE1vdWxva2luLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KRGllIFNsYW5kZXJzY3JlZS4KPiBiZXRyZXRlIHNsYW5kZXJzY3JlZQpFaW5lIGxhdXRlIFN0aW1tZSBicnVlbGx0IHBsb2V0emxpY2ggZWluaWdlIEtvbW1hbmRvcyB1bmQgbmFjaCBldHdhcyBIZWt0aWsKbGVndCBkaWUgU2xhbmRlcnNjcmVlIGFiLgpEdSBrbGV0dGVyc3QgYW4gZGVyIFN0cmlja2xlaXRlciBlbXBvciBhbiBEZWNrLgpXYXMgd2lsbHN0IER1IGJldHJldGVuPwo+IHNjaGF1ZQpEdSBzdGVoc3QgYXVmIGRlciBLYWltYXVlciBkZXIgZ29sZGVuZW4gU3RhZHQgTW91bG9raW4uIEV0d2FzIGlzdCBhbmRlcnMgaGllcgphbHMgaW4gYW5kZXJlbiBIYWVmZW4uIFVudGVyaGFsYiBkZXIgS2FpbWF1ZXIgaXN0IGtlaW4gV2Fzc2VyIHNvbmRlcm4gYmxhbmtlcwpFaXMuIFNlZXNjaGlmZmUga29lbm5lbiBoaWVyIHdvaGwgbmljaHQgYW5sZWdlbi4gRGllc2VyIEthaSBpc3QgZnVlcgpFaXNzZWdsZXIKdm9yYmVoYWx0ZW4uIEltIFdlc3RlbiBpc3QgZWluZSBTY2hhZW5rZSwgbmFjaCBTdWVkZW4gdW5kIE5vcmRlbiB2ZXJsYWV1ZnQKZGllCkthaW1hdWVyIHdlaXRlci4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCgoKICAgICpncnVlYmVsKiBXaWVzbyBrbGV0dGVyIGluIGFuIERlY2ssIHdlbm4gaWNoIGRvY2ggbm9jaCBhbSBLYWkgc3RlaAogICAgZGFuYWNoPwoKICAgICAgICBDYXJhZGhyYXMgZGVyIGV3aWdlIFByb3BoZXQgLSBhZXVzc2Vyc3QgdmVyd2lycnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzbGFuZGVyc2NyZWUgKFN0YWhsZG9ybiwgMTcuIEphbiAxOTk1LCAxODo1NTo1Nyk6CiMhIHJuPUNhcmFkaHJhcyBydD03OTAzNjQ4ODUKd2llc28gaXN0IGRpciBkYXMgbmV1ID8/CmRlciBwZWdhc3VzIG5pbW10IGRpciBhdWNoIG9mdCBtYWwgMjIyIG11ZW56ZW4gYWIgdW5kIGZsaWVndCBkYW5uIG9obmUgZGljaAp3ZWcuLi4gIDspCgogICBTVEFITCwgZGVuIGdhciBuaXggbWVociB3dW5kZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIChBbmF0b2wsIDE3LiBKYW4gMTk5NSwgMTk6NTE6MzMpOgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKeGFudGkgKFN0YWhsZG9ybiwgMTcuIEphbiAxOTk1LCAyMjo1NjoyNSk6Cmt1ZXJ6bGljaCBpbiBNb3JvbjoKRGVyIEJ1bWVyYW5nIHNjaGxhZWd0IGRlciBBa29seXRoaW4gZGVyIFhhbnRpIGRlbiBLb3BmIGVpbi4KRGllIEFrb2x5dGhpbiBkZXIgWGFudGkgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRWluZSBBa29seXRoaW4gZGVyIFhhbnRpIGtvbW10IGFuLgpFaW4gUG9ydGFsIHNjaGxpZXNzdCBzaWNoLgoKCmphIHNvb29vbyBnZWZhZWxsdCBtaXIgZGFzISAgTWV0emVsbiBhbSBGbGllc3NiYW5kLiA6KQoKICAgICAgICAgIFNUQUhMLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICAoR2x1Y2tzLCAxOC4gSmFuIDE5OTUsIDA5OjE3OjU1KToKIyEgcm49Rmlja2Zyb3NjaCBydD03OTAzMzgwMzIKaCBpc3QgTWFyaXVzIG11ZWxsZXIgd2VzdGVybmhhZ2VuOiB3aXIgd2FyZW4gbm9jaCBraW5kZXIKZGllIGFuZGVyZW4ga2FubiBpY2ggbmljaHQgenVvcmRuZW4gOikKZ2x1Y2tzLCBkaWUgZ2Vpc3RsaWNoZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIChUaG9yaW4sIDE4LiBKYW4gMTk5NSwgMTM6MTk6MjQpOgpIaSBpaHJzLApLb2VubnQgaWhyIGJpdHRlIGluIGRlbiBlbnRzcHJlY2hlbmRlbiBSdWJyaWtlbiBibGVpYmVuID8KSW4gU2NobWFycm4gc3RlaHQgamEgZXZlbnR1ZWxsIG5vY2ggd2FzIHdpdHppZ2VzLCBhYmVyIFF1aXogaGFiIGljaCBleHRyYQphYmJlc3RlbGx0LCB3ZWlsIGljaCBpbSBBdWdlbmJsaWNrIGRhenUgZWNodCBudWxsIFplaXQgaGFiLiBBbHNvIHNjaHJlaWJ0CmRpZSBRdWl6ZGluZ2VyIGRvY2ggbWFsIG5hY2ggUXVpeiwgb2theSA/CkRhbmtlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRkYtUXVpeiAoRGFuY2VyLCAxOC4gSmFuIDE5OTUsIDE0OjAyOjI3KToKIyEgcm49Rmlja2Zyb3NjaCBydD03OTAzNTE5NTUKTmVobXRzIG1pciBuaWNodCB1ZWJlbCwgYWJlciB3YWVyZSBlcyBtb2VnbGljaCwgZmFsbHMgZGllIFJ1YnJpayBRdWl6IHZvbGwKaXN0LCBlbnR3ZWRlciBkaWUgQXJ0aWtlbCBkb3J0IG1hbCB3aWVkZXIgenUgbG9lc2NoZW4gb2RlciBlaW5lIFJ1YnJpayBRdWl6MgplaW56dWZ1ZWhyZW4/IEVpbmlnZSBMZXV0ZSB1ZWJlcmdlaGVuIGRlbiBRdWl6IG5hZW1saWNoICh0YXRzYWVjaGxpY2ggOikgKSB1bmQKd2VubiBhbmRlcmUgUnVicmlrZW4KZGFtaXQgdm9sbGdla2xlaXN0ZXJ0IHNpbmQsIGlzdCBkYXMgbmljaHQgc28gaW0gU2lubiBkZXIgU2FjaGUsIG5pY2h0bWFsIHdlbm4KZXMgU2NobWFycm4gaXN0IDopCgpEYW5jZXIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgogKEFuYXRvbCwgMTguIEphbiAxOTk1LCAxNDozNDowNyk6CgpGYW1vdXNMYXN0V29yZHMuLi4uCgpbQWJlbnRldWVyOkFiZW5kU3Rlcm5dIFN0ZWh0IGRlciBFaXNiYWVyIGJlaW0gV2VpaG5hY2h0c21hbm4gb2RlciBpcmdlbmR3byBpbgpbQWJlbnRldWVyOkFiZW5kU3Rlcm5dIGRlciBFaXN3dWVzdGUKWy4uLl0KW1RvZDpdIEVpbiBVbnRpZXIgaGF0IGdlcmFkZSBBYmVuZHN0ZXJuIHVtZ2VicmFjaHQuCgpBbmF0b2wgICAodHJhZXVtdCB2b24gZWluZXIgZW50c2NoYWVyZnRlbiBQb3N0UXVlc3QpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgOi0pIChIYXJkaWwsIDE4LiBKYW4gMTk5NSwgMTg6MDg6MjMpOgpHZXJhZGUgcGFzc2llcnQ6ClBoeXNpIHJ1ZnQ6IHRvZXRldCBhbGxlcyB2aWdneXMgISBCZWxvaG51bmcgISEhISEKW1RvZDpdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBQaHlzaSB1bWdlYnJhY2h0LgoKCm5hLCB3ZW5uIGRhcyBtYWwgbmljaHQgcHJvbXB0ZSBMaWVmZXJ1bmcgd2FyIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVm9uIEtpc3NlbiB1bmQgVG9ydGVuLi4uIChNdXBmZWwsIDE5LiBKYW4gMTk5NSwgMDQ6MDA6NDApOgpOZXVsaWNoIGJlaSBlaW5lciBQYXJ0eS4uLgoKSW9sYW50aGUgd2lyZnQgZWluIEtpc3NlbiBuYWNoIGVpbmVtIEtpc3Nlbi4KRGFzIEtpc3NlbiBzYWd0OiBobW0Kd3cga2lzc2VuCkR1IHNjaG1laXNzdCBlaW4gS2lzc2VuIG5hY2ggZWluZW0gS2lzc2VuLgpEYXMgS2lzc2VuIHN0cmVpZnQgZWluIEtpc3NlbiBhbSBPaHJsYWVwcGNoZW4uCklvbGFudGhlIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgoKZXR3YXMgc3BhZXRlci4uLgoKPiBJb2xhbnRoZSBmcmlzc3QgZGllIFRvcnRlIGF1ZgpEaWUgVG9ydGUgc2FndDogbnVuIG11cGZlbAo+IER1bW0gRGFkYSBEdW1tIC4uLgpEaWUgVG9ydGUgc2FndDogaG1tIGljaCB3ZXJkZSB2b24gaW9sYW50aGUgdmVybmFzY2h0CgptdXBmZWwsIGdyaW5zZW5kIHVlYmVyIGRpZXNlIHRhcm5oZWxtdHJhZWdlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIChHZW9yZywgMTkuIEphbiAxOTk1LCAxMToyNTo0NSk6ClRvbGxlciBGVFAtU2VydmVyCkhpIExldXRlICEKCldhaG5zaW5uLCBUb2xsLCBTdXBlciAhISEKSWNoIGhhYiBkZW4gYmVzdGVuIFNwaWVsZS1TaGFyZXdhcmUtQW53ZW5kdW5ncy1TZXJ2ZXIgZ2VmdW5kZW4gISEhIQpNdWVzc3QgaWhyIHVuYmVkaW5ndCBwcm9iaWVyZW4gISEKCmZ0cCAxMjcuMC4wLjEgISEhISEhClZpZWwgU3Bhc3MKWUVIT1ZBIHNlaSBtaXQgZXVjaApnZW9yZwoKUC5TLjogS2VlcCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICAoS2VybWl0LCAxOS4gSmFuIDE5OTUsIDExOjMyOjQwKToKIyEgcm49R2VvcmcgcnQ9NzkwNTExMTQ1ClRqYSBnaWJ0cyBudXIgZWluIFByb2JsZW0gbWFuIGthbm4gc2ljaCBtaXQgbmFtZSBmdHAgdW5kIHBhc3N3b3J0CmVtYWlsYWRyZXNzZSBuaWNodCBlaW5sb2dnZW46KApLRVJNSVQsaGF0IGRhcyBzY2hvbiBvZnQgcHJvYmllcnQ6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAgKEdyaW1tYm9ybiwgMTkuIEphbiAxOTk1LCAxNToyMjowNCk6CiMhIHJuPUhhdGUgcnQ9NzkwNDYyMjk3CltWZXJsZWd0IHZvbiBlbnR3aWNrbHVuZywgR3JpbW1ib3JuLCAxOS4gSmFuIDE5OTUsIDE1OjIxOjE5XToKCkJla2FubnQ/IFdlciBpc3QgZGVubiBiZWthbm50PwpXZXIga2VubnQgbWljaCBkZW5uIHNjaG9uIGhpZXIgYWxzIEdyaW1tYm9ybj8KVW5kOiBXZXIgaXN0IEhhdGU/CgpVbmQgdm9yIGFsbGVtOiBXYXMgaGF0IGRlciBBcnRpa2VsIGluIGVudHdpY2tsdW5nIHp1IHN1Y2hlbj8gRnJhZ2VuIHVlYmVyCkZyYWdlbi4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgpQLlMuIEphamEsIGljaCB2ZXJsZWcgaWhuIGphIHNjaG9uLiBTb2JhbGQgaWNoIHdlaXNzIHdpZS4uLiA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICAoQmVsZGluLCAxOS4gSmFuIDE5OTUsIDE4OjE2OjQxKToKIyEgcm49S2VybWl0IHJ0PTc5MDUxMTU2MApWZXJzdWNocyBtYWwgbWl0IGFub255bW91cyB1bmQgZW1haWxhZHJlc3NlLi4uLiBEYXMgaXN0IGRpZSBhZWx0ZXJlIEZhc3N1bmcsCmZ0cCB3aXJkIG5vY2ggbmljaHQgdm9uIGFsbGVuIFNlcnZlcm4gaW4gZGVyIFdlbHQgYWt6ZXB0aWVydCA6KQoKWVRCCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAgKEtlcm1pdCwgMjAuIEphbiAxOTk1LCAwMjozMDo0Nyk6CiMhIHJuPUJlbGRpbiBydD03OTA1MzU4MDEKS2xhcHB0IGxlaWRlciBhdWNoIG5pY2h0Li4uLipzbmlmZioKCktFUk1JVCwgdHJhdXJpZy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4ubmV1bGljaCBpbiBkZXIgR2lsZGUgKEd1bmR1ciwgMjMuIEphbiAxOTk1LCAxNTo1Mjo1Mik6CkJyb2V0Y2hlbiBiZXRyaXR0IGRpZXNlIFdlbHQuCltBbGxnZW1laW46VG9hc3Ricm90ICBHcnVlc3QgQWxsZSBkaWUgaWhuIHNvbnN0IG5vY2ggZ3J1ZXNzZW4gb2RlciBzY2hvbgpnZWdydWVzdCBoYWJlbi5dCkJyb2V0Y2hlbiBmYWVuZ3QgYW4genUgZGVua2VuLgpLbGVpbmUgUmF1Y2h3b2Vsa2NoZW4gc3RlaWdlbiBhdWYuLi4KVG9hc3Ricm90IGdyaW5zdC4KW0FsbGdlbWVpbjpDYXJhZGhyYXMga3Vja3QgVG9hc3Ricm90IGh1bmdyaWcgYW4sIGFiZXIgc28gb2huZSBCZWxhZy4uLiA6KF0KQnJvZXRjaGVuIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCjp6dWVja3Qgc2VpbiBCcm9ldGNoZW5tZXNzZXIuCkd1bmR1ciB6dWVja3Qgc2VpbiBCcm9ldGNoZW5tZXNzZXIuClRvYXN0YnJvdCBzYWd0OiBoaSBMZWJlbnNtaXR0ZWwKQnV0dGVyIGJldHJpdHQgZGllc2UgV2VsdC4Kc2FnIG5laWlpaWluOikKRHUgc2Fnc3Q6IG5laWlpaWluOikKVG9hc3Ricm90IHNhZ3Q6IGhhYiBuaXggbWVyLi4uLi53YXJ0IG1hbApCdXR0ZXIgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCkJyb2V0Y2hlbiBrdWVzc3QgQnV0dGVyLgpUb2FzdGJyb3QgaG9sdCBlaW5lIFNjaGVpYmUgS2Flc2UgYXVzIGRlbSBuaXguLi4oZGFzIHNpdCBnYW56IHNjaG9lbgpzY2h3ZXIhKS4uLiB1bmQgZ2lidCBzaWUgQnJvZXRjaGVuLgpCcm9ldGNoZW4gc2FndDogZGFua2UuLi4Ka3JhdHplCkR1IGtyYXR6dCBkaWNoIGFtIEtvcHAuCkJyb2V0Y2hlbiBmYWVuZ3QgYW4genUgZGVua2VuLgpLbGVpbmUgUmF1Y2h3b2Vsa2NoZW4gc3RlaWdlbiBhdWYuLi4KQnV0dGVyIGdyaW5zdC4KLi4uLnVzdy4KdW5kIHNvd2FzIGJlaSBtZWluZW0gZXdpZ2VuIEh1bmdlciAgYXJnbDopCkd1bmR1cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAgKFNtYXVnLCAyMy4gSmFuIDE5OTUsIDE2OjE2OjUyKToKIyEgcm49S2VybWl0IHJ0PTc5MDUxMTU2MApoaS4KCmFsc28gaWNoIGtvbm50ZSBtaWNoIGVpbmxvZ2dlbiAoZnRwOyBlbWFpbC1hZHIpCmFiZXIgZGEgd2FyIHByYWt0aXNjaCBuaWNodHMgZHJpbiA6KAoKc21hdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiAoQW5hdG9sLCAyMy4gSmFuIDE5OTUsIDIzOjM4OjEyKToKRkxXIFRhc2hhLi4uCgoKW0FiZW50ZXVlcjpUYXNoYV0gSGlsZnQgaGllciBrZWluZXIgZWluZXIgdmVybG9yZW5lbiBTZWVsZT8/PwpbVG9kOl0gRWluIFBhbnRoZXIgaGF0IGdlcmFkZSBUYXNoYSB1bWdlYnJhY2h0LgoKQW5hdG9sIChoYXQgZGFtYWxzIFNjaHdlaW4gZ2VoYWJ0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiAoQW5hdG9sLCAyNC4gSmFuIDE5OTUsIDIxOjI3OjM4KToKClN1Y2hlIGd1dGVuIEtpbGxlci4KCkFuYXRvbCAoZGVyIERlYXRod2luZyBydWhpZ3N0ZWxsZW4gd2lsbCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlaCB0cmFpbmllcnQgZnVlciBPbHltcGlhISAoWmVwaHlyLCAyNC4gSmFuIDE5OTUsIDIzOjIwOjAzKToKbmV1bGljaCBpbSBXYWxkOgoKICAgIEhhZHJhIHdpcmZ0IGRlbiBCdW1lcmFuZwogICAgRGFzIFJlaCBmYWVuZ3QgZGVuIEJ1bWVyYW5nIGFiLgogICAgRGFzIFJlaCB3aXJmdCBkZW4gQnVtZXJhbmcKICAgIEhhZHJhIGZhZW5ndCBkZW4gQnVtZXJhbmcgZ2VzY2hpY2t0LgoKd2VubiBkYXMgbmljaHQgbmUgR29sZG1lZGFpbGxlIHdlcnQgaXN0IDopCiAgICAgWmVwaHlyIC0gdHJhZXVtdCBtaXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFuYXRvbCwgMjUuIEphbiAxOTk1LCAwMjo0OTozMik6CgpbQWJlbnRldWVyOkh5cG5vXSBIdWNoIDAgbHAKW1RvZDpdIEVpbiBFaXNiYWVyIGhhdCBnZXJhZGUgSHlwbm8gdW1nZWJyYWNodC4KCk5vIGZ1cnRoZXIgQ29tbWVudHMuLi4KQW5hdG9sIChrZW5udCBkaWUgRWlzd3Vlc3RlLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICAoTGhvc3dhbGQsIDI1LiBKYW4gMTk5NSwgMTI6MzA6MjApOgojISBybj1BbmF0b2wgcnQ9NzkwOTc5MjU4ClBzc3N0IQpUcmVmZiBtaWNoIFNvbm50YWcgTmFjaHQsIDAuMDAgISBUcmVmZnB1bmt0IHdlcmRlIGljaCBkaXIgbm9jaCBtaXR0ZWlsZW4hCkxlZSBIYXJ2ZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClItQmVmZWhsZSAoT3JrdG9ldGVyLCAyNS4gSmFuIDE5OTUsIDE3OjI1OjU4KToKSWNoIGZpbmRlIFItQmVmZWhsZSB0b2xsICEhCkVzIGdpYnQgc2llIGphIHNjaG9uIGVpbmUgZ2FuemUgd2VpbGUsIHouQi4gUi1LbnVkZGVsIFItVWZlLi4uLgpOYWNoZGVtIHNpY2ggamEgZXR3YXMgbmV1ZXMgZ2V0YW4gaGF0IChEaWRkZWxtYXVzKSBkZW5rZSBpY2gsIGVzIGlzdCBhbiBkZXIKWmVpdCBlaW5lbiB3ZWl0ZXJlbiBSLUJlZmVobCB6dSB3dWVuc2NoZW4uCldpZSBzY2hvZW4ga29lbm50ZSBlcyBkb2NoIHNlaW4sIHdlbm4gbWFuIG1hbCB3aWVkZXIgdGllZiB1bnRlbiBpbiBkZXIgU1NQCnN0ZWh0IHVuZCBkYXJhbiBkZW5rdCAsIG1hbCB3aWVkZXIgZGlyIE9ya3MgaW0gT3JrbGFnZXIgenUga2lsbGVuLCBhYmVyIGVpbmVtCmRlciBXZWcgdmllbCB6dSBsYW5nIGlzdCwgd2VubiBtYW4gZWluZW4gQmVmZWhsIFItVG9ldGUgaGFldHRlID8KSGEgLCB3YXMgd2FlcmUgZGFzIGZ1ZXIgZWluIGxlYmVuID8gTmllIHdpZWRlciBlcnN0IG1ldWhzZWxpZyB6dSBkZW4gTW9uc3Rlcm4KbGF1ZmVuICEhIERpcmVrdCB2b24genVoYXVzZSBhdXMgKGZ1ZXIgU2VoZXIgbWl0IGhhZXVzY2hlbiApIGRpZQpsaWVibGluZ3Ntb25zdGVyIGtpbGxlbiAhIQogICBPcmt0b2V0ZXIsIG5hY2hkZW0gZXIgMyw1IFN0dW5kZW4gbGFuZyBudXIgWmVpdHVuZyBnZWxlc2VuIHVuZCBzaWNoIG1pdAplaW5lciBBdXN3ZXJ0dW5nIGJlc2NoYWVmdGlndCBoYXQgdW50ZXIgZW50enVnc2Vyc2NoZWludW5nZW4gbGVpZGVuZC4uLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFItQmVmZWhsZSAoQm9pbmcsIDI1LiBKYW4gMTk5NSwgMTc6MzA6MDkpOgojISBybj1Pcmt0b2V0ZXIgcnQ9NzkxMDUxMTU4CkFsc28gdWViZXIgJ3J0b2V0ZSBhbGxlJyBrb2VubnRlIG1hbiByZWRlbiAuLi4KICAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUi1CZWZlaGxlIChTbWF1ZywgMjUuIEphbiAxOTk1LCAxNzo1NDowMCk6CiMhIHJuPUJvaW5nIHJ0PTc5MTA1MTQwOQphbHNvIGljaCB3dWVkZSBkYXMgZXJ3ZWl0ZXJuIDxydG9ldGUgYWxsZSBtYWdpZXI+IC4uLgoKc21hdWcgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFItQmVmZWhsZSAoQ2FtcGlubywgMjUuIEphbiAxOTk1LCAxODo0MDo1OSk6CiMhIHJuPVNtYXVnIHJ0PTc5MTA1Mjg0MApEYXMgd2FlcmUga2VpbmUgRXJ3ZWl0ZXJ1bmcsIGRhcyBpc3QgZWluZSBCZXNjaHJhZW5rdW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUi1CZWZlaGxlIChTbWF1ZywgMjUuIEphbiAxOTk1LCAxOTowNToxNSk6CiMhIHJuPUNhbXBpbm8gcnQ9NzkxMDU1NjU5CmljaCBtZWludGUgbWl0IGVyd2VpdGVydW5nOgpydG9ldGUgYWxsZSBVTkQgcnRvZXRlIGFsbGUgbWFnaWVyCgpkYW5uIGlzdCBlcyBlaW5lIGVyd2VpdGVydW5nIDopCgphYmVyIGxlaWRlciBzaW5kIG1hZ2llciBzb3dpZXNvIHVuc3RlcmJsaWNoICpzZXVmeioKCnNtYXVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBSLUJlZmVobGUgKFd1ciwgMjYuIEphbiAxOTk1LCAwNjowMzoxOSk6CiMhIHJuPVNtYXVnIHJ0PTc5MTA1Mjg0MApoaWhvIDopCgpBbHNvIGRhcyBzb2xsdGUgamEgd29obCBuaWNodCBudXIgZnVlciBtYWdpZXIgZ2VsdGVuIQptZWluIHp3ZWl0eSBzb2xsIGF1Y2ggbWFsIGluIGRlbiBnZXNjaG1hY2sgZWluZXIgdG9kZXNzZXF1ZXoga29tbWVuISBkZXIgd2lyZApsYW5nc2FtIHVlYmVybXVldGlnIGF1ZiBkZW0gZ2ViaWV0Li4uCndlbm4gZGFzcyBydG9ldGUgYWxsZSEhIQoKV3VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBSLUJlZmVobGUgKFplcGh5ciwgMjYuIEphbiAxOTk1LCAxMToxNDo0OSk6CiMhIHJuPVd1ciBydD03OTEwOTY1OTkKVW5kIHdhcyBpc3QgbWl0IGRlbmVuLCBkaWUgaW0gZ2xlaWNoZW4gUmF1bSBzdGVoZW4/IDopCgogICAgICAgIFplcGh5cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUi1CZWZlaGxlIChRdWFzaW1vZG8sIDI2LiBKYW4gMTk5NSwgMTQ6MzI6NTApOgojISBybj1aZXBoeXIgcnQ9NzkxMTE1Mjg5CldpZSB3YWVycyBtaXQgcnphcCBhbGxlPwoKYmx1dHJ1ZW5zdGlnLApRdWFzaW1vZG8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFuIGFsbGUgWndlaXRpZXMgKENhcm1lbiwgMjYuIEphbiAxOTk1LCAxNDozODo0Myk6CkxpZWJlIFp3ZWl0aWVzIQoKRXVlciBqYW1tZXJuIHVlYmVyIGRhcyBTY2hpa3NhbCBhbHMgWndlaXRpIGthbm4gaWNoIGdhciBuaWNodCBuYWNodm9sbHppZWhlbi4KSWhyIG11ZXNzdCBldWNoIG1hbCBpbiB1bnMgVGVzdGllcyBoaW5laW52ZXJzZXR6ZW4hIFdhZWhyZW5kIGV1ZXIgRXJzdGllCndlbmlnc3RlbnMgbm9jaCBlaW4gYmlzc2VybCBhbiBldWNoIGhhZW5ndCBpc3QgdW5zZXIgU2NoaWNrc2FsIGFsbGVuIGVnYWwuCkFiZXIgZXMgYmxlaWJ0IG5pY2h0IGVpbm1hbCBiZWltIHN0YWVuZGlnZW4gcXVhZWxlbiBkdXJjaCBkaWUgTWFnaWVyLCBzb25kZXJuCm1hbiB3aXJkIGF1Y2ggbm9jaCB2b2VsbGlnIGdlZGVtdWV0aWd0IHVuZCBmdWVyIGR1bW0gdmVya2F1ZnQuIE5pY2h0IGVpbm1hbApkZXIgYWxsZXJibG9lZGVzdGUgU3BpZWxlciB3dWVyZGUgZWluZSBGYWxsZSBnbGVpY2ggMTJ4IGhpbnRlcmVpbmFuZGVyCmF1c2xvZXNlbiwgb2Rlcj8KCmV0d2FzIGRlcHJpbWllcnQgYXVmIGRlbSBXZWcgenUgZGVuIFphdG9uZ3MgaXN0CkNhcm1lbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIChFbHJpYywgMjYuIEphbiAxOTk1LCAxNTo0MjozMSk6CkljaCBrYW5uIG51ciByLXJvZXRlIDopCllURQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICAoWWVuZGksIDI2LiBKYW4gMTk5NSwgMTY6MTE6NDQpOgojISBybj1FbHJpYyBydD03OTExMzEzNTEKClRqYSwgRWxyaWMsIER1IGFscyBBbGJpbm8gci1yb2V0ZXN0LCBpY2gsIGJlaSBfZGVtXyBBbmJsaWNrLCByLWJsZWljaGUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIChBbWF6b3JhLCAyNi4gSmFuIDE5OTUsIDIzOjQ0OjAzKToKWndlaXRpZXMKR2VuYXUsIGRpZSBUZXN0aWVzIHNpbmQgZGllIHdhaHJlbiBsZWlkZW5kZW4uIFdhcyBpY2ggbWlyIGFsbGVzIG1pdCBtZWluZXIKRXJzdGllIG1pdG1hY2hlIGlzdCBuaWNodCB6dSBldHJhZ2VuISEKQW1hem9yYSBsZWlkdHJhZ2VuZGUgVGVzdHNwaWVsZXJpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIChBbmF0b2wsIDI3LiBKYW4gMTk5NSwgMDI6MjY6MjApOgoKCjEwIExQIEFienVnIGJlaW0gVmFtcGk/IE9oLW9oLi4uLgpBc3Qgd2FyIGFuZ2VzcGl0enQgdW5kIGdlenVlY2t0LgoKRHUgb2VmZm5lc3QgZGVuIFNhcmcgbWl0IGVpbmVtIGxhdXRlbiBLbmFycmVuLgpFaW4gVmFtcGlyIGtsZXR0ZXJ0IGhlcmF1cyB1bmQgZ3JlaWZ0IHNvZm9ydCBhbi4KRWluIFZhbXBpciBrb21tdCBhbi4KRGVyIFZhbXBpciBncmVpZnQgRGljaCBtaXQgc2VpbmVuIHNjaGFyZmVuIFphZWhuZW4gYW4uCkRlciBWYW1waXIgdHJpZmZ0IERpY2ggc2VociBoYXJ0LgpEZXIgVmFtcGlyIHNjaG9ja3QgRGljaCBtaXQgc2VpbmVtIEJsaWNrLgpbVG9kOl0gRWluIFZhbXBpciBoYXQgZ2VyYWRlIEFxdWFkZXN0IHVtZ2VicmFjaHQuCgpBbmF0b2wsIGRlciBrZWluZW4gYXJtZW4gWndlaXRpZSBtZWhyIHp1bSBWYW1waSBzY2hpY2t0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChkaWVzbWFsOiBGZWxhZ3VuZCkgKEhhcmRpbCwgMjcuIEphbiAxOTk1LCAxNToxNzo0MSk6CltBYmVudGV1ZXI6RmVsYWd1bmRdIG9kZXIgc3RpcmJ0IG1hbiBzb25zdD8KW1RvZDpdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBGZWxhZ3VuZCB1bWdlYnJhY2h0LgoKRGFzIGdpbmcgc2NobmVsbCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpZSBpc3QgZGFzIHdvaGwgZ2VtZWludC4uLj8gKEFuYXRvbCwgMjcuIEphbiAxOTk1LCAxNjo1NzoxOSk6CgoKWy4uLl0KLi4udW5kIHNpZSBwZXIgbWFpbCBvZGVyIG11ZW5kbGljaCB6dSBsb2VzZW4/IE5pY2h0cyBnZWdlbiBSZWRlIHVuZCBHZWdlbnJlLQpkZSwgYWJlciBpcmdlbmR3YW5uIGlzdCBlcyBmdWVyIGRpZSBtZWlzdGVuIHVuaW50ZXJlc3NhbnQsIHp1enVzZWhlbiwgd2llCnNpY2ggendlaSBFaWVyIGFuIGRlbiBLb3BmIHdlcmZlbi4KWy4uLl0KKGF1czpBbGliZXNjaHdlcmRlbiAoQXJhbnlhLCAyNy4gSmFuIDE5OTUsIDE2OjQ5OjU0KSkKCkFyYW55YSwgbnVyIHNvIHp1ciBBdWZrbGFlcnVuZzoKICAgV2VyIHdpcmZ0IHdlbSBFaWVyIGFuIGRlbiBLb3BmPwogICAgICBvZGVyCiAgIFdhcyB3ZXJmZW4gc2ljaCBkaWUgRWllciBhbiBkZW4gS29wZj8KCkFuYXRvbCAod2llZGVyIG1hbCBpbSBVbmtsYXJlbikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDcmFpZy4gV2VyIHNvbnN0LiAoSGFyZGlsLCAyNy4gSmFuIDE5OTUsIDE3OjE0OjU5KToKCltBbGxnZW1laW46QW5ha2luXSB3aWUgd2FyIGRlciBBdWZydWYgZGVzIFVsdHJha3Vyek1vZHVzID8/CltBbGxnZW1laW46SGFyZGlsXSAiVWx0cmFrdXJ6IiBmdWVyIFVLTSwgImt1cnoiIGZ1ZXIga3VyeiwgImxhbmciIGZ1ZXIgbGFuZwpbQWxsZ2VtZWluOkhhcmRpbF0gdW5kICJsYWciIGZ1ZXIgbGFnLU1vZHVzLgpDcmFpZyB0ZWlsdCBEaXIgbWl0OiBMQUctTW9kdXM/Pz8/CkR1IHRlaWxzdCBDcmFpZyBtaXQ6IE5hIGtsYXIuIElzdCBhYmVyIGVpbiBTZWhlci1CZWZlaGw7LiBEYW1pdCBrYW5uIG1hbgpEdSB0ZWlsc3QgQ3JhaWcgbWl0OiBhbmRlcmVuIFNwaWVsZXJuIGVpbiBsYWcgenVzY2hhbnplbi4KQ3JhaWcgdGVpbHQgRGlyIG1pdDogbWFjaCBrZWluIHNjaGVpc3MhCkNyYWlnIHRlaWx0IERpciBtaXQ6IGljaCBnbGF1YiBrZWluIFdvcnQgZGF2b24uLi4KQ3JhaWcgZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBhbi4KRHUgdGVpbHN0IENyYWlnIG1pdDogd2llc28gc2NoZWlzcz8gSmUgbWFlY2h0aWdlciBEdSBhbHMgU2VoZXIgYmlzdCAoaG9laGVyZXIKRHUgdGVpbHN0IENyYWlnIG1pdDogTGV2ZWwpLCBkZXN0byBsYWVuZ2VyIHdpcmQgZGFzIExhZyBiZWltIE9wZmVyLiBLb3N0ZXQKRHUgdGVpbHN0IENyYWlnIG1pdDogYWJlciByZWNodCB2aWVsZSBNUCwgZGVyIFNwcnVjaC4KQ3JhaWcgdGVpbHQgRGlyIG1pdDogd2llc28gZ2lidCBlcyBuZW4gZWlnZW5lbiBNb2R1cyBkYWZ1ZXI/CkR1IHRlaWxzdCBDcmFpZyBtaXQ6IGVzIGdpYnQgZGVuIG5vcm1hbGVuIG1vZHVzLCBkYXNoZWlzc3QsIER1IGhhc3Qgc292aWVsCkR1IHRlaWxzdCBDcmFpZyBtaXQ6IGxhZywgd2llIGRpZSBMZWl0dW5nIHp1bGFlc3N0LiBPZGVyIER1IGhhc3QgbGFnLU1vZHVzLApEdSB0ZWlsc3QgQ3JhaWcgbWl0OiBkYW5uIHdpcmQgZGFzIG5vY2htYWwgdW0gZWluZW4gZ2V3aXNzZW4gRmFrdG9yCmt1ZW5zdGxpY2gKRHUgdGVpbHN0IENyYWlnIG1pdDogdmVybGFlbmdlcnQuCkR1IHRlaWxzdCBDcmFpZyBtaXQ6IHNvbGwgaWNoIERpciBtYWwgZWluIExhZyB6dXNjaGFuemVuID8KQ3JhaWcgdGVpbHQgRGlyIG1pdDogd2llIGxhbmdlIGRhdWVydCdzPwpEdSB0ZWlsc3QgQ3JhaWcgbWl0OiBobW1tLiA4IE1pbnV0ZW4ga2FubiBpY2ggZGVyemVpdCwgd2VpbCBMZXZlbCAyNC4KRHUgdGVpbHN0IENyYWlnIG1pdDogd2F0IGlzdCBudSA/CkNyYWlnIHRlaWx0IERpciBtaXQ6IEhldXRlIG5pY2h0LCBEQU5LRSEKCk5hamEuIERhbm4gaGFsdCBkZW1uYWVjaHN0IGluIGRpZXNlbSBUaGVhdGVyLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClF1aWxsaWFuIGltIFVybGF1YiAoR3VsZHVrYXQsIDI3LiBKYW4gMTk5NSwgMTg6MDI6MjUpOgpTbywgaWNoIHdvbGx0ZSBudXIgbWl0dGVpbGVuLCBkYXNzIFF1aWxsaWFuIGRpZSBuYWVjaHN0ZSBXb2NoZSBpbSBVcmxhdWIgaXN0CnVuZCBudXIgV2Fzc2VyIHVuZCBTYW5kIHNpZWh0ISAoRGVyIEdsdWVja2xpY2hlISA7KSApCgoKCgoKCgoKCgoKaGloaQoKCgoKCgoKCgpoaWhpCgoKCgpTZWluZSBUSFctRWluaGVpdCAoVGVjaG5pc2NoZXMgSGlsZnNXZXJrKSB3dXJkZSBoZXV0ZSBuYWNoIEtvZWxuCmFia29tbWFuZGllcnQsIFNhbmRzYWVja2Ugc2NobGVwcGVuISA7KQpHRAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIChTY2hydW1wZmksIDI4LiBKYW4gMTk5NSwgMDE6MDQ6MDMpOgpFeHRyYSBmdWVyIG1pY2ghCgpEYW5rZSBCYW1idWxrbyA6KSkKU2NocnVtcGZpIHdpbGwgd2FzIGxlc2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgogKEJhbWJ1bGtvLCAyOC4gSmFuIDE5OTUsIDAyOjE2OjU0KToKTXVlbGwgTXVlbGwgTXVlbGwuLi4uCgo+IHNjaGF1ZQpEdSBiaXN0IGltIGR1bmtsZW4gS2VsbGVyIGRlciBCdXJnLiBEaWUgRGVja2UgaXN0IGhpZXIgc2VociBuaWVkcmlnIHVuZAp1ZWJlcmFsbCBoYWVuZ2VuIHdpZGVybGljaGUgU3Bpbm5lbm5ldHplLiBWb24gTm9yZHdlc3RlbiBrb21tdCBlaW4gYWV0emVuZGVyCkdlcnVjaCwgZGVyIERpciBkZW4gQXRlbSByYXVidC4gRWluZSBzY2htYWxlIFRyZXBwZSBmdWVocnQgbmFjaCBvYmVuIHVuZAp3ZWl0ZXIgaGludW50ZXIuCkVzIGdpYnQgdmllciBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkd2VzdGVuLCBub3Jkd2VzdGVuLCBvYmVuIHVuZCB1bnRlbi4KQmFtYmVsIGRlciBhbmdlaGVuZGVlIGhTZXIuCkVpbiBEYWVtb25lbnNjaHdlcnQuCkVpbmUgRGFlbW9uZW5ob3NlLgpFaW4gRGFlbW9uZW5zY2h3ZXJ0LgpFaW5lIER1bmtlbG1hZ2llcnVlc3R1bmcuCkVpbmUgRGFlbW9uZW5ob3NlLgpFaW4gRGFlbW9uZW5zY2h3ZXJ0LgpFaW5lIER1bmtlbG1hZ2llcnVlc3R1bmcuCkVpbiBEYWVtb25lbnNjaHdlcnQuCkVpbmUgRHVua2VsbWFnaWVydWVzdHVuZy4KRWluIERhZW1vbmVuc2Nod2VydC4KRWluZSBEYWVtb25lbmhvc2UuCkVpbiBEYWVtb25lbnNjaHdlcnQuCkVpbmUgRGFlbW9uZW5ob3NlLgpFaW4gU2NobHVlc3NlbC4KRWluIFNjaGx1ZXNzZWwuCkVpbiBTY2hsdWVzc2VsLgpFaW4gU2NobHVlc3NlbC4KRWluIFNjaGx1ZXNzZWwuCkVpbiBTY2hsdWVzc2VsLgpFaW4gTGFwcGVuLgpFaW4gU2NobGVpbWJldXRlbC4KRWluIHNjaHdhcnplciBVbWhhbmcuCkVpbmUgRHVua2VsbWFnaWVydWVzdHVuZy4KRWluIFNjaGx1ZXNzZWwuCkVpbiBTY2hsdWVzc2VsLgpFaW5lIER1bmtlbG1hZ2llcnVlc3R1bmcuCkVpbiBCZXNlbi4KRWluIFBhYXIgc2Nod2VyZSBTZWVzdGllZmVsLgpFaW4gUGFhciBCZWluc2NoaWVuZW4uCkVpbmUgU2NoYXVmZWwuCkRlciBTcGllZ2Vsc2NoaWxkLgpFaW4gSGV4ZW5yZXplcHQuCkVpbmUgc2Nod2FyemUgUm9iZS4KRWluIHNjaHdhcnplciBVbWhhbmcuCkVpbiBEYWVtb25lbnNjaHdlcnQuCkVpbmUgRHVua2VsbWFnaWVydWVzdHVuZy4KRWluZSBEdW5rZWxtYWdpZXJ1ZXN0dW5nLgpFaW4gRGFlbW9uZW5zY2h3ZXJ0LgpFaW5lIER1bmtlbG1hZ2llcnVlc3R1bmcuCkVpbiBzY2h3YXJ6ZXIgVW1oYW5nLgpFaW5lIER1bmtlbG1hZ2llcnVlc3R1bmcuCkVpbiBTY2hsdWVzc2VsLgpFaW4gU2NobHVlc3NlbC4KRWluIExhcHBlbi4KRWluIExhcHBlbi4KIFRvZXRlciwgZHUgc29sbHRlc3QgYXVjaCBoaW50ZXIgZGlyIGF1ZnJhZXVtZW4uLi4uLgoKQkFNQlVMS08KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQmFtYnVsa28sIDI4LiBKYW4gMTk5NSwgMDk6MjE6MDIpOgpTYWcgbm9jaG1hbCBGTFc6CgpbQWxsZ2VtZWluOkZlbnJpc10gSGlsZmUhIDIgTFAhCltUb2Q6XSBBbGJlcmljaCBoYXQgZ2VyYWRlIEZlbnJpcyB1bWdlYnJhY2h0LgoKQkFNQlVMS08KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQ2FyYWRocmFzLCAyOC4gSmFuIDE5OTUsIDE1OjM5OjUxKToKR3JhZGUgZWJlbiBwYXNzaWVydCwgbWFsIHdpZWRlciB1bmdlc2Nobml0dGVuOgoKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIGd1dGUgTmFjaHQgd3VlbnNjaCBpY2ggKmdhZWhuKiB1bmQgc3RlcmJ0IG5pY2h0LCBzaW5kCltBbGxnZW1laW46Q2FyYWRocmFzXSBoZXV0ZSBzY2hvbiBnZW51ZyBnZXN0b3JiZW4KPiByeSBncnVlc3MgbWlyIGRpZSBIeWRyYQpEdSB0ZWlsc3QgUnluZSBtaXQ6IGdydWVzcyBtaXIgZGllIEh5ZHJhClJ5bmUgaXN0IGdlcmFkZSBuaWNodCBkYTogYmluIGdlcmFkZSBuaWNodCBkYTogRGF0ZSBtaXQgZGVyIEh5ZHJhISAgICAgICAgICAgCiAgW1RvZDpdIEVpbiBIeWRyYWtvcGYgaGF0IGdlcmFkZSBSeW5lIHVtZ2VicmFjaHQuCj4gLWEgYXV0c2NoCltBbGxnZW1laW46Q2FyYWRocmFzXSBhdXRzY2gKCiAgICAgKnRyb2VzdGUgUnluZSogRGVpbmUgUmFjaGUgd2lyZCBmdWVyY2h0ZXJsaWNoIHNlaW4gOikpCgogICAgICAgICAgICAgICBHJ05hY2h0ICAgICAgICAgIENhcmFkaHJhcyBkZXIgZXdpZ2UgUHJvcGhldAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZXRpa2V0dGUsIHNub29wIChHcmltbWJvcm4sIDI5LiBKYW4gMTk5NSwgMTQ6NDI6NTYpOgoKSG1tLCAiQm9pbmciIHNhZ3QsIGZ1ZXIgdW5zaWNodGJhciBkYWJlaXN0ZWhlbiBnYWVsdGUgZGFzIGdsZWljaGUgd2llIGZ1ZXJzCnNub29wZW4uCk1pY2ggd3VlcmQgamEgc2Nob24gaW50ZXJlc3NpZXJlbjogV2llIGxvZ2d0IG1hbiBzb3dhcz8gU28gbGVkaWdsaWNoCmludGVyZXNzZWhhbGJlci4uLgoKSmEsIGRhcyBwdXp6bGVuIG1pdCBTcGllbGVyZGF0ZW4gaXN0IHZlcmJvdGVuLCBhYmVyIGRhcyBpc3QgbmF0dWVybGljaCBkYXMKVWViZXJxdWVyZW4gZGVyIFN0cmFzc2UgYmVpIHJvdGVyIEZ1c3NnYWVuZ2VyYW1wZWwgYXVjaCwgbmljaHQ/IDstKQoKTWl0IEFic2ljaHQgaW4gc2NobWFycm4sCiAgICAgICAgICAgICAgICAgICAgICAgICBHcmltbWJvcm4gZGVyIEF0aGVpc3QuIFVuZCBIeWRyYXRvZXRlciwgc2Nob24KZXJ3YWVobnQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGtvbWlzY2ghIChCb2luZywgMjkuIEphbiAxOTk1LCAxNTo1ODowOCk6CiMhIHJuPUd1bGR1a2F0IHJ0PTc5MTMzNDA4MApXYWhyc2NoZWlubGljaCBoYXR0ZXN0IER1IGVpbmVuIFNhZWJlbCBpbSBpbnYgdW5kIGVpbmVuIGF1ZiBkZW0gQm9kZW4sCmRhbm4gaXN0IGRhcyBnYW56ZSB6d2FyIG5vY2ggbmljaHQgbG9naXNjaCwgYWJlciBpbW1lcmhpbiByZXByb2R1emllcmJhci4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYmxpbmQgKEd1bGR1a2F0LCAzMC4gSmFuIDE5OTUsIDAwOjQ3OjM0KToKc2NoYXUKRHUgYmlzdCBibGluZCAhCmxpZXMgcnVuZW4KRHUgbGllc3QgZGllIEhlaWxydW5lbiB1bmQgZnVlaGxzdCwgd2llIERpY2ggZWluZSBoZXJybGljaGUgV2Flcm1lCmR1cmNoc3Ryb2VtdC4gRGllIFJ1bmVuIGZsYWNrZXJuIGt1cnogYXVmIHVuZCB2ZXJibGFzc2VuIGRhbm4uCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMTg0IE1hZ2llcHVua3RlLgouLi4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDcmFpZy4gV2VyIHNvbnN0LiAoU3lzb3AsIDMwLiBKYW4gMTk5NSwgMTA6NTU6MTYpOgojISBybj1IYXJkaWwgcnQ9NzkxMjIzMjk5CkhtLCB1bmQgd2FydW0gZ2VodCBkYW5uICJoaWxmZSBsYWciIG5pY2h0PyA7LSkKLS0gU3lzb3AKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiAoR2FzdDIsIDMwLiBKYW4gMTk5NSwgMTQ6MjA6NDUpOgo/Pz8/Pz8gc2FndDogd2FydW0ga3JpZWdlbiBVbmlUb3BpYS1FbmdlbCBrZWluZSBTdGFydGhpbGZlPyBEYXMgbWFjaHQgZG9jaAo/Pz8/Pz8gc2FndDoga2VpbiBTcGFzcyBzbyBhbHMgYW5mYWVuZ2VyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFxdWF0b2xsLCAzMS4gSmFuIDE5OTUsIDIzOjQ5OjQ2KToKCgpbQWJlbnRldWVyOkZyb3NjaCBTdG9mZmxdIFdpZSBrb21tIGljaCB3aWVkZXIgdm9tIE5vcmRwb2wgd2VnLCBCSVRURSA/Pz8/CltBYmVudGV1ZXI6TWFzb10gTWFjaCAiZW5kZSIKW0FsbGdlbWVpbjpXYXJsb3JkXSBuZSwgc3RvcApbQWJlbnRldWVyOk1hc29dIElzdCBhbSBzaWNoZXJzdGVuLgpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gc3RvcD8/CltBYmVudGV1ZXI6QXF1YWRlc3RdIE1hc28sIE1hdWwKW0FiZW50ZXVlcjpNYXNvXSBHdXQhIEtlbm50IGlociBkZW4gV2VnPwpbQWJlbnRldWVyOkFxdWFkZXN0XSBCZWkgR3JpbW1ib3JuIHdlaXNzIG1hbm5zIGRhcyBlcyBlaW4gV2l0eiBpc3QuLi4KW0FsbGdlbWVpbjpTY2hydW1wZmldIGFiZXIgbml4IHNhZ2VuCltLdWx0dXI6U2NocnVtcGZpXSBhYmVyIG5peCBzYWdlbgpbU3BvcnQ6U2NocnVtcGZpXSBhYmVyIG5peCBzYWdlbgpbQmVpbGVpZDpTY2hydW1wZmldIGFiZXIgbml4IHNhZ2VuCltXaXNzZW5zY2hhZnQ6U2NocnVtcGZpXSBhYmVyIG5peCBzYWdlbgpbR3JhdHM6U2NocnVtcGZpXSBhYmVyIG5peCBzYWdlbgpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gYWJlciBuaXggc2FnZW4KW0FiZW50ZXVlcjpJZHVyXSBzIHMgbiB3IG4gdyBvIHMKW0FsbGdlbWVpbjpXYXJsb3JkIHZlcmZsdWNodCBzZWluZSB1bnRlcmxhZ2VuXQpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gaHVjaApbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gc29ycnkKW0FsbGdlbWVpbjpNYXNvXSBFYmVuLiBJY2ggaGFiZSBlcyBhdWNoIC0gaXJnZW5kd28uLi4KW0FsbGdlbWVpbjpTY2hydW1wZmkgdHJhbXBlbHQgYXVmIGlocmVyIHRhc3RhdHVyIHJ1bV0KW0FsbGdlbWVpbjpJZHVyIGxhY2h0Ll0KW0FsbGdlbWVpbjpTY2hydW1wZmkgcGZlaWZ0IHVuc2NodWxkaWddCltBYmVudGV1ZXI6UGxhcHBlcm1hdWxdIElkdXIgaGF0IFJlY2h0IQpbQWxsZ2VtZWluOldhcmxvcmRdIGRpZSBnZWlzdGVyLCBkaWUgaWNoIHJpZWYgLi4uCltBYmVudGV1ZXI6RnJvc2NoIFN0b2ZmbF0gQWVoLi4uLi4uRGFzIGZ1bmt0aW9uaWVydCBuaWNodCBnYW56LCBnbGF1ZyBpY2guLi4KW0FiZW50ZXVlcjpNYXNvXSBUaXBwcyBub2NobWFsIGVpbi4KW0FiZW50ZXVlcjpQbGFwcGVybWF1bF0gQmlzdCBkdSBnZW5hdSBhbSBOb3JkcG9sID8KW1tBYmVudGV1ZXI6TWFzb10gRGFzIGR1ZXJmdGUgZWdhbCBzZWluLgpbQWJlbnRldWVyOklkdXJdIHdlbm4gZHUgdm9yaGVyIGFtIG5vcmRwb2wgd2Fyc3QsIGRhbm4gZnVua3Rpb25pZXJ0IGVzCltBYmVudGV1ZXI6RnJvc2NoIFN0b2ZmbF0gTmVpbiwgaXJnZW5kd28gaW4gZGVyIE5hZWhlLi4uCltBYmVudGV1ZXI6SWR1ciBsYWNodC5dCltBYmVudGV1ZXI6TWFzb10gSWNoIGthbSB2b24gamVkZXIgU3RlbGxlIHJhdXMuCltCZWlsZWlkOklkdXJdIGVuZGUKW0FiZW50ZXVlcjpJZHVyXSBubwpbQWJlbnRldWVyOkZyb3NjaCBTdG9mZmxdIEljaCB3YXIgbm9jaCBuaWNodCBESVJFS1QgYW0gTm9ycG9sLi4uCltBbGxnZW1laW46V2FybG9yZF0gdmVyc3VjaCBpaG4genUgZmluZGVuLCBtYWNoIGFiZXIgbiBhbGkgbWl0IGVuZGUKW0FiZW50ZXVlcjpJZHVyXSBoYXN0IGR1IGFiZXIgZ2VzYWd0CltbQWxsZ2VtZWluOldhcmxvcmRdIHZlcnN1Y2ggaWhuIHp1IGZpbmRlbiwgbWFjaCBhYmVyIG4gYWxpIG1pdCBlbmRlCltBYmVudGV1ZXI6SWR1cl0gaGFzdCBkdSBhYmVyIGdlc2FndApbQWxsZ2VtZWluOklkdXJdIG1vZWdlbiBlaXNiYWVyZW4gYXVjaCBmcm9lc2NoZT8KW1RvZDpdIEVpbiBFaXNiYWVyIGhhdCBnZXJhZGUgU3RvZmZsIHVtZ2VicmFjaHQuCltBbGxnZW1laW46SWR1cl0gb29wcwpbQWxsZ2VtZWluOlBsYXBwZXJtYXVsXSBBbnNjaGVpbmVuZApbQWxsZ2VtZWluOklkdXJdIHNjaGVpbmJhciBqYQpbQWxsZ2VtZWluOkJydW1tZWxdIERpZSBGcmFnZSB3YXIgYmVyZWNodGlndC4KW0JlaWxlaWQ6TWFzb10gVW5kIHRzY2h1ZXNzLi4uCltBbGxnZW1laW46SWR1cl0gaGF0IGRhcyBlaW5lciBnZWxvZ2dlZD8KW0JlaWxlaWQ6TWFzb10gSWNoIGhhYnMgamEgZ2VzYWd0Li4uCltBbGxnZW1laW46QnJ1bW1lbF0gTm9jaCBuaWNodC4KW0FiZW50ZXVlcjpJZHVyXSBiZWlsZWlkCltCZWlsZWlkOldhcmxvcmRdIEJlaWxlaWQgOigKW0JlaWxlaWQ6UGxhcHBlcm1hdWxdIHdhcnMga2VpbiBVbnRpZXIhCgpBcXVhdG9sbCwgd2VpbCBhdWNoIFp3ZWl0aWVzIHdhcyB6dSBzYWdlbiBoYWJlbiAhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIGJpbiBibGluZCA/IChNYXJzdXBpbGFtaSwgIDEuIEZlYiAxOTk1LCAxMjoxNDoyNik6Cj4gc2NoYXUKSW0gTm9yZGVuIHVuZCBXZXN0ZW4gdHVlcm1lbiBzaWNoIGdld2FsdGlnZSBGZWxzbWFzc2l2ZSB2b3IgRGlyIGF1Zi4KRGllIFdhZW5kZSBzaW5kIHNvIHN0ZWlsLCBkYXNzIGFuIGVpbiBFcmtsZXR0ZXJuIG5pY2h0IHp1IGRlbmtlbiBpc3QuCk51ciBpbSBOb3Jkd2VzdGVuIGlzdCBlaW4gd2luemlnZXIgRHVyY2hsYXNzLCBkZXIgUGZhZCB6dXIgU2NocmVja2Vucy0Kc3BpdHplLCBkZW0gaG9lY2hzdGVuIEJlcmcgZGVyIFVtZ2VidW5nLCB3ZW5uIG5pY2h0IHNvZ2FyIGRlbSBob2VjaHMtCnRlbiBCZXJnIGRlciBXZWx0LiBXaWxkZSBHZXJ1ZWNodGUga3Vyc2llcmVuIHVtIGRpZXNlbiBCZXJnLCB6dQpzY2hyZWNrbGljaCwgdW0gaGllciB3aWVkZXJnZWdlYmVuIHp1IHdlcmRlbi4gSW0gU3VlZGVuIHVuZCBPc3RlbgpmdWVocmVuIFdlZ2UgdW50ZXJoYWxiIGRlciBGZWxzd2FlbmRlIGVudGxhbmcuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4sIG5vcmR3ZXN0ZW4gdW5kIG9zdGVuLgo+IHVudCBoYXVzCkRpZSBFaW5nYW5nc3R1ZXIgaXN0IGFiZ2VzY2hsb3NzZW4uCj4gbm4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoZWxsb3dlZW50cmV0ZW5oZWxsb3dlZW50cmV0ZW4gKFN0YWhsZG9ybiwgIDIuIEZlYiAxOTk1LCAxMTo0OTo0Nik6Cmt1ZXJ6bGljaCBiZWkgZWluZW0ga2xlaW5lbiBzdHJlaXQgdW0gZGllIGJldXRlIGJlaW0gR29ibGluaGV4ZXIgendpc2NoZW4KbWVpbmVtIFp3ZWl0eSB1bmQgSGVsbG93ZWVuOgoKRHUgc2Fnc3Q6IFdBUyBIQUIgSUNIID8hPyE/IT8hCj4gdHJpdHQgaGVsbG93ZWVuCkR1IHRyaXR0c3QgSGVsbG93ZWVuLgo+IEhlbGxvd2VlbiBzdG9scGVydCB1ZWJlciBzZWluZSBGdWVzc2UuCgphbHNvIHNvd2FzLiBsYWVzc3Qgc2ljaCBkYSB2b24gWndlaXRpZXMgdW1oYXVlbi4uLiAgOykKCiAgICAgICAgICAgICBTVEFITC4KClAuUy46IG5peCBmdWVyIHVuZ3V0LiAgIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbyBnZXNjaGVoZW4gYW0gU2Ftc3RhZyAoQXJhbnlhLCAgNi4gRmViICAxOTk1LCAxMDoxNDoyKToKRHUgYmVmaW5kZXN0IERpY2ggaW4gZWluZW0gbm9ybWFsZW4gV2FnZW4gZGVyIERCIGF1ZiBkZXIgU3RyZWNrZSBCcmVpc2FjaC0KRnJlaWJ1cmcuIERpZSBJbm5lbmVpbnJpY2h0dW5nIGlzdCBpbiBWaW9sZXR0IGdlaGFsdGVuLgpMb2NvCkRyYXVzc2VuIHNpZWhzdCBkdToKRGVyIEJhaG5ob2Ygdm9uIEJyZWlzYWNoLgpFaW4gQmFobmhvZnNnZWJhZXVkZSBhdXMgZWluZXIgWmVpdCwgYWxzIGRpZXNlciBIYWx0ZXB1bmt0IG5vY2ggZ3JvZXNzZXJlCkJlZGV1dHVuZyBoYXR0ZS4gSGV1dGUgbWFjaHQgZGllIFN0YXRpb24gZWhlciBlaW5lbiB2ZXJzY2hsYWZlbmVuIEVpbmRydWNrLgo+RGVyIFp1ZyBmYWVocnQgYW4KRGVyIFp1ZyBmYWVocnQuCkRlciBadWcgZmFlaHJ0LgpSYS10YS10YW1tLgpEZXIgWnVnIGhhZWx0IHVudmVybWl0dGVsdCBhbi4gRHUgd2lyc3Qgdm9uIERlaW5lbSBTaXR6IGdlZHJ1ZWNrdC4KPkxvY28gc2NoYXV0IHVlYmVycmFzY2h0Lgo6aGVidCBlcnN0YXVudCBlaW5lIEF1Z2VuYnJhdWUuCkFyYW55YSBoZWJ0IGVyc3RhdW50IGVpbmUgQXVnZW5icmF1ZS4Kc2NoYXUKRHUgYmVmaW5kZXN0IERpY2ggaW4gZWluZW0gbm9ybWFsZW4gV2FnZW4gZGVyIERCIGF1ZiBkZXIgU3RyZWNrZSBCcmVpc2FjaC0KRnJlaWJ1cmcuIERpZSBJbm5lbmVpbnJpY2h0dW5nIGlzdCBpbiBWaW9sZXR0IGdlaGFsdGVuLgpMb2NvCkRyYXVzc2VuIHNpZWhzdCBkdToKQmFobmhvZnNhbmxhZ2VuIHZvbiBCcmVpc2FjaC4KPkxvY28gb2VmZm5ldCBlaW4gRmVuc3Rlci4KTG9jbyBsZWhudCBzaWNoIGF1cyBkZW0gRmVuc3Rlci4KbGVobmUgYXVzIEZlbnN0ZXIKRHUgbGVobnN0IGRpY2ggYXVzIGRlbSBGZW5zdGVyLgpzY2hhdQpCYWhuaG9mc2FubGFnZW4gdm9uIEJyZWlzYWNoLgpFaW4gU2NoYWZmbmVyLgo+RGVyIFNjaGFmZm5lciBsYWV1ZnQgaW4gUmljaHR1bmcgQmFobmhvZi4KZGVuayBPYiBkZXIgd2FzIHZlcmdlc3NlbiBoYXQ/CkR1IGRlbmtzdCAuIG8gTyAoT2IgZGVyIHdhcyB2ZXJnZXNzZW4gaGF0PykKPkRlciBTY2hhZmZuZXIgbGFldWZ0IGluIFJpY2h0dW5nIEJhaG5ob2YuCkxvY28gc2FndDogRGFubiBoYWV0dGUgZGVyIFp1ZyBub2NobWFsIHp1cnVlY2tnZXNldHp0Lgo+bmljawpEZXIgU2NoYWZmbmVyIGxhZXVmdCBpbiBSaWNodHVuZyBCYWhuaG9mLgpEdSBuaWNrc3QgenVzdGltbWVuZC4KPkRlciBTY2hhZmZuZXIgdmVyc2Nod2luZGV0IGhpbnRlciBkZXIgTG9rb21vdGl2ZSwgZGllIGRlbiBadWcgc2NoaWVidC4KTG9jbyBnZWh0IG5hY2ggU3VlZGVuIHp1IGRlbiBhbmRlcmVuIEZlbnN0ZXJuLgpzCkR1IGJlZmluZGVzdCBEaWNoIGluIGVpbmVtIG5vcm1hbGVuIFdhZ2VuIGRlciBEQiBhdWYgZGVyIFN0cmVja2UgQnJlaXNhY2gtCkZyZWlidXJnLiBEaWUgSW5uZW5laW5yaWNodHVuZyBpc3QgaW4gVmlvbGV0dCBnZWhhbHRlbi4KTG9jbwpEcmF1c3NlbiBzaWVoc3QgRHU6CkJhaG5hbmxhZ2VuIHZvbiBCcmVpc2FjaC4KPkxvY28gb2VmZm5ldCBkYXMgRmVuc3Rlci4KTG9jbyBsZWhudCBzaWNoIGF1cyBkZW0gRmVuc3Rlci4KbGVobmUgYXVzIGZlbnN0ZXIKRHUgbGVobnN0IGRpY2ggYXVzIGRlbSBGZW5zdGVyLgo+c2NoYXUKQmFobmhvZnNhbmxhZ2VuIHZvbiBCcmVpc2FjaC4KRWluIFNjaGFmZm5lci4Kc2NoYXUgU2NoYWZmbmVyCkRlciBTY2hhZmZuZXIgc3RlaHQgYW4gZGVyIExva29tb3RpdmUuCj5zY2hhdSBMb2tvbW90aXZlCkRhcyBpc3QgZGllIExva29tb3RpdmUsIGRpZSBkZW4gWnVnIHNjaGllYnQuIER1IGVya2VubnN0IERhbXBmLgo+dW50IERhbXBmCkRlciBEYW1wZiBzdHJvZW10IGF1cyBkZW0gRmFocmdlc3RlbGwgZGVyIExva29tb3RpdmUuCj5EZXIgU2NoYWZmbmVyIHRyaXR0IGRpZSBMb2tvbW90aXZlLgpzY2hhdSBEYW1wZgpTb3dhcyBzaWVoc3QgZHUgaGllciBuaWNodCEKPjpmaW5kZXQgZXMgbWVya3d1ZXJkaWcsIGRhc3MgZGVyIERhbXBmIGF1ZiBlaW5tYWwgd2VnIGlzdC4KQXJhbnlhIGZpbmRldCBlcyBtZXJrd3VlcmRpZywgZGFzcyBkZXIgRGFtcGYgYXVmIGVpbm1hbCB3ZWcgaXN0Lgo+TG9jbyBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KRGVyIFNjaGFmZm5lciBiZXN0ZWlndCBkZW4gWnVnLgpEZXIgWnVnIGZhZWhydCBhbi4KRGVyIFp1ZyBmYWVocnQuCiguLi4pCgpXYXIgZGEgbmljaHQgbm9jaCB3YXMgdm9uIHdlZ2VuIFVudGVybmVobWVuIFp1a3VuZnQ/CgpHcnVzcyBhbiBMb2NvIHVuZCBTeXNvcC4KQXJhbnlhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLbGFtbWVyZmVobGVyIGJlaW0gRGVua2VuLi4uIChCZXJuYXJkLCAgNi4gRmViICAxOTk1LCAxMDo1Mzo1KToKU2lsdmFuYSB0cmlua3QgZWluZW4gU2NobHVjayBndXRlbiwga3VlaGxlbiBLYWthby4KZGVuawpEdSBmYWVuZ3N0IGFuIHp1IGRlbmtlbi4KS2xlaW5lIFJhdWNod29lbGtjaGVuIHN0ZWlnZW4gYXVmLi4uCj4gZGVuayAtOiAgLiBvIE8gKCAgOy0KRHUgZGVua3N0ICAgLiBvIE8gKC06ICAuIG8gTyAoICA7LSkKPiBIYWVoPwpHYW1lIGRyaXZlciBzaG91dHM6IExQbXVkIHNodXR0aW5nIGRvd24gaW1tZWRpYXRlbHkuClNpbHZhbmEgYmxpY2t0IGZyZXVuZGxpY2ggbmFjaCBIYXVzZS4KU2lsdmFuYSBrb21tdCBsYWVjaGVsbmQgaGVyZWluLgpTaWx2YW5hIHppZWh0IFN0ZXBwc2NodWhlIGF1cy4KU2lsdmFuYSB2ZXJsYWVzc3QgZGllc2UgV2VsdC4KWWFudHJvIHphcHQgc2ljaCBuYWNoIEhhdXNlLgpTcGVpY2hlcmUgQmVybmFyZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIGdlc2NoZWhlbiBhbSBTYW1zdGFnIElJIChBcmFueWEsICA2LiBGZWIgMTk5NSwgMTE6MTQ6NDkpOgpVZWJyaWdlbnMgaXN0IG9iaWdlIEdlc2NoaWNodGUgbmljaHQgZXR3YSBtZWluZXIgUGhhbnRhc2llIGVudHNwcnVuZ2VuLCBzb24tCmRlcm4gdGF0c2FlY2hsaWNoIHNvIHZlcmdhbmdlbmVuIFNhbXN0YWcgcGFzc2llcnQuCgpEYWZ1ZXIgdmVyYnVlcmd0IHNpY2gKICAgICAgICAgICAgICAgICAgICAgQXJhbnlhCgpQUzogRnJhZ3QgTG9jbyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiAoQW5hdG9sLCAgNi4gRmViIDE5OTUsIDExOjIxOjI3KToKRGVyIGVpbnppZ2UgVm9ydGVpbCBlaW5lcyBTaHV0ZG93bnMuLi4uCk1hbiBlcmZhZWhydCwgd2VyIGFsbGVzIGltIFNwaWVsIHdhciA6KQoKR2FtZSBkcml2ZXIgc2hvdXRzOiBMUG11ZCBzaHV0dGluZyBkb3duIGltbWVkaWF0ZWx5LgpWaXBlciBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uClB0ZXBwaWMgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpTaWx2YW5hIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KRGVhdGh3aW5nIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KU3lzb3AgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpCYWJvb24gaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpNdWR0aWdlciBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCkN5bW9uayBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCkdudWxsaSBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uClphcmRveiBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCkVsYWNlIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KWWFudHJvIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KQWxtdW5kaSBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uClNvZXJlbiBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uClNvbm5lbnRhdSBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uClJvbWlsaSBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCktub2VycnkgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpSdW1hdGEgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpQdHJhY2kgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpMaSBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCllhc21pbiBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uClNpZG9saW4gaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpLcm9uaSBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCk1vbm90b25pIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KQmVybmFyZCBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCkVsa28gaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpDYXRmb2cgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpKb2YgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpLb3R6YnJvY2tlbiBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCkVsZGFyaW9uIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KTWlrcm9tYXggaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpLb2JheWFzaGkgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpTY2hydW1wZmkgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpQYWsgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpBbWF6b3JhIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KQmFtYnVsa28gaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpBcnVuIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KQW5ha2luIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KU2Fyd2FuZSBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uClByaWFtb3MgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpBbGVtYW5uZSBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCkFsb3Vpc2l1IGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KR2FzdDEgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpGcm9ib3p6IGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KQ2FsdW0gaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpSYWdvciBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCkhpaGkgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpBcmFueWEgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpWYXdhbHRhIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KU3BlaWNoZXJlIEFuYXRvbC4KQmlzIGJhbGQhCgpOZXR0LgpTY2hhZGUsIGRhc3MgZXIgc29sY2hlIE5lYmVud2lya3VuZ2VuIGhhdC4KCkFuYXRvbCAobmFja3QgKmVycm9ldCopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaWRsZSB0ZXN0cyAoUm9jaHVzLCAgNi4gRmViIDE5OTUsIDEyOjM4OjMwKToKIyEgcm49R3JpbW1ib3JuIHJ0PTc5MTk3NTQwMQpEdSBoYXN0IGRlbiBpZGxlLXRlc3QgZnVlciBtaWNoIHZlcmdlc3NlbjoKUk9DSFVTOiBydWYgSHVycmEsIGljaCBsZWJlIG5vY2ghCjotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBpZGxlIHRlc3RzIChUb2V0ZXIsICA2LiBGZWIgMTk5NSwgMTM6MDM6NDUpOgojISBybj1Sb2NodXMgcnQ9NzkyMDcwNzEwClNvd2llIGRlbiBUZXN0IGZ1ZXIgRGljaCBzZWxic3Q6CkdSSU1NQk9STjogLWEgd2llIGtvbW1lIGljaCBhdXMgZGVtIFN1bXBmIHZvbiBUYW1pYmFyIHJhdXM/Pz8/Pz8/Pz8/Pz8/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogaWRsZSB0ZXN0cyAoU2lsdmFuYSwgIDYuIEZlYiAxOTk1LCAxMzozNjozNyk6CiMhIHJuPVRvZXRlciBydD03OTIwNzIyMjUKTm9ybWFsZXJ3ZWlzZSBrb21tdCBkb2NoIGRpZSBNZWxkdW5nOgpbYWxsZ2VtZWluOiBJcmdlbmR3ZXJdIHdpZSBrb21tZSBpY2ggYXVzIGRlbSBzdW1wZiBpbiB0aXRpd3UKcmF1cz8/Pz8/Pz8/Pz8/Pz8/CgpTaWx2YW5hIC0gZ3JpbnNlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBpZGxlIHRlc3RzIChIYXJkaWwsICA2LiBGZWIgMTk5NSwgMTY6Mzk6NTApOgojISBybj1TaWx2YW5hIHJ0PTc5MjA3NDE5NwoKU2lsdmFuYSwgbWVpbnN0IER1IG5pY2h0IGRpZSBvYmxpZ2F0b3Jpc2NoZSBUcmVpYnNhbmQtTWVsZHVuZywgYmVpIGRlciBhbGxlCmZyZXVuZGxpY2hlbiBNaXRtZW5zY2hlbiBzb2ZvcnQgLStUIGVpbnRpcHBlbiA/IDstKQoKWVRICgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgogKEFuYXRvbCwgIDYuIEZlYiAxOTk1LCAyMDo0NTozNik6CgpNZXNzYWdlT3V0LCBtYWwgYW5kZXJzOgoKIEVkIGJydWVsbHQ6RGEgbGVidCBqYSBub2NoIHdhcyEgQXVmIGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgoKCkFuYXRvbCAod2FlbHp0IHNpY2ggdm9yIExhY2hlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbnNpIChDYXJhZGhyYXMsICA3LiBGZWIgMTk5NSwgMDA6MTU6MDQpOgogICAgICAgICAgICAgICBIbW1tbW1tbQoKRmllbCBtaXIgdm9yaGluIGVpbiwgYWxzIGljaCBnZXN0b3JiZW4gYmluLgpEYSBoYXQgbWljaCB6dW0gZXJzdGVuIG1hbCBzZWl0IGxhZW5nZXJlbSB3aWVkZXIgZGVyIFNlbnNlbm1hbm4KYmVzdWNodCB1bmQgbWljaCB6dSBzZWluZW0gRnJldW5kIGdlc2NoaWNrdCBzdGF0dCB1bWdla2VocnQgd2llIHNvbnN0LgoKICAgICAgIERlciBHb2xkZHJhY2hlIENhcmFkaHJhcyAtIGhhdCBuZXR0ZSBGcmV1bmRlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMb2NvLCBkZXIgd2FuZGVsbmRlIERCLUZhaHJwbGFuIChZZW5kaSwgIDcuIEZlYiAxOTk1LCAxMzo1OTowOCk6CgoiTG9jbyBzYWd0OiBvaywgYmlzIEZyZWl0YWcgZGFubi4uLgogRHUgd2lua3N0LgogTG9jbyBzYWd0OiBpY2ggdGF1Y2ggd29obCBzbyB1bmdlZmFlaHIgdW0gMTcuNDggVWhyIGluIE11ZW5zdGVyIGF1ZgogRHUgc2Fnc3Q6IFNvIHVuZ2VmYWVociwgd2llPwogRHUgZ3JpbnN0LgogTG9jbyBncmluc3QuCiBMb2NvIHNhZ3Q6IGtvZW5udGUgamEgc2VpbiwgZGFzcyBkZXIgWnVnIFZlcnNwYWV0dW5nIGhhdCA7KSIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTG9jbywgZGVyIHdhbmRlbG5kZSBEQi1GYWhycGxhbiAoQXJhbnlhLCAgNy4gRmViIDE5OTUsIDE1OjQzOjExKToKIyEgcm49WWVuZGkgcnQ9NzkyMTYxOTQ4CkphamEsIHNvIGlzdCBMb2NvLiBJY2ggaGF0dGUgbWFsIGVpbmVuIEtsYXNzZW5rYW1lcmFkZW4sIGRlciB3YXIgYWVobmxpY2guCkRlciB2ZXJhYnJlZGV0ZSBzaWNoIG5pZSAiZ2VnZW4gMiIgc29uZGVybiBpbW1lciAidW0gMTMuNTYiLiBOYWphLCB2aWVsbGVpY2h0Cm5pY2h0IGdhbnogc28gZXh0cmVtLi4uCgpBcmFueWEKICAgICAgc2Nod2VsZ3QgaW4gRXJpbm5lcnVuZ2VuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYWxsdXppbmF0aW9uZW4gKE1lc2lyaWksICA4LiBGZWIgMTk5NSwgMDc6NTI6MjkpOgpTbyBwYXNzaWVydCBuYWNoIGVpbmVyIGR1cmNoc3BpZWx0ZW4gTmFjaHQsIDcuNTAgZnJ1ZWg6CkR1IGJlZmluZGVzdCBEaWNoIGluIGRlbSBncm9lc3N0ZW4gUG9ydCBWYWluZXIgR2VzY2hhZWZ0LiBIaWVyIGthbm5zdCBEdQpEaWNoIGZ1ZXIgRGVpbmUgQWJlbnRldWVyIGF1c3J1ZXN0ZW4uIEZvbGdlbmRlIEJlZmVobGUgc2luZCBtb2VnbGljaDoKRHUga2FubnN0IGRhcyBHZXNjaGFlZnQgbmFjaCBPc3RlbiB2ZXJsYXNzZW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBvc3Rlbi4KQXVncmEgZGllIEFkZXB0aW4gKG5ldHp0b3QpLgpFaW4gQmlsZCB2b24gQ2FsdW0uCkF1Z3JhIHNpZWh0IGJldHJ1bmtlbiBhdXMuCkF1Z3JhIHJ1ZWxwc3QuCkF1Z3JhIHN0b2xwZXJ0IHVlYmVyIGlocmUgRnVlc3NlLgpBdWdyYSBnZWh0IGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgoKdHJhZXVtIGljaCBvZGVyIHdhY2ggaWNoID8gKE5hamEgaW0gTXVkIHJlZ2llcnQgZGllIFBoYW50YXNpZSkKVmllbCBTcGFzcyBiZWltIHRyYWV1bWVuCgpNZXNpcmlpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQbGF5ZXJraWxsID8/PyAoSGFyZGlsLCAgOC4gRmViIDE5OTUsIDE2OjM2OjEwKToKCltUb2Q6XSBXYWhuc2lubiBoYXQgZ2VyYWRlIFJhbWJvcm9sbGUgdW1nZWJyYWNodC4KCmZpbmdlciB3YWhuc2lubgoKV2FobnNpbm4gaXN0IG5pY2h0IGVpbmdlbG9nZ3QuClp1bGV0enQgZWluZ2Vsb2dndCB2b246IExlaXB6aWcKWnVsZXR6dCBhdXNnZWxvZ2d0OiBEaWUsIDIwLiBEZXogMTk5NCwgMTg6MzE6MjMgKDQ5ZCAyMjowMzoxMCkKVm9sbGVyIE5hbWU6IFdhaG5zaW5uIGRpZSBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXJpbgpSYXNzZTogWndlcmcsICAgIEdlc2NobGVjaHQ6IHdlaWJsaWNoCkFsdGVyOiAwMDowOTo0MiAgIFNwaWVsZXJsZXZlbDogMQpLZWluZSAucGxhbi1EYXRlaS4KCgoKSG1tLiBFcmtsYWVyZSBtaXIgZGFzIGplbWFuZCwgd2llIG1hbiBlaW5lbiBQSyBzY2hhZmZlbiBrYW5uLCBvaG5lIGVpbmdlbG9nZ3QKenUgc2Vpbi4gWWFudHJvID8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGxheWVya2lsbCA/Pz8gKEFzbW9kaXMsICA4LiBGZWIgMTk5NSwgMTY6NDM6NTMpOgojISBybj1IYXJkaWwgcnQ9NzkyMjU3NzcwCkhtbSwgaWNoIGdsYXViZSwgZXMgd2FyIGdhciBrZWluIFBLLCBzb25kZXJuIGRpZSBUb2Rlc3Vyc2FjaGUgd2FyIFdhaG5zaW5uIDopCgogICAgICAgICAgICAgICAgICAgICAgICAgIENpYW8sIEFzbW9kaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiAoTmljaHRzLCAgOC4gRmViIDE5OTUsIDE5OjI3OjIxKToKCkdlc2VoZW4gaW5uZXJoYWxiIHZvbiAyIFNla3VuZGVuLi4uOgpFaW5lIGZlbHNpZ2UgSW5zZWwgZXJzY2hlaW50IGFtIEhvcml6b250CkRhcyBMdWZ0a2lzc2VuYm9vdCBsZWd0IGFtIEdlcm9lbGxoYWZlbiBhbi4KRGFzIEx1ZnRraXNzZW5ib290IHJhc3QgdWViZXIgZGFzIG9mZmVuZSBNZWVyLgoKTmljaHRzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBsYXllcmtpbGwgPz8/IChCZWxkaW4sICA4LiBGZWIgMTk5NSwgMjI6MTQ6MTgpOgojISBybj1Bc21vZGlzIHJ0PTc5MjI1ODIzMwpIbW1tLi4uCkljaCB3YXIgZWlnZW50bGljaCBzY2hvbiBpbW1lciBmdWVyIGRpZSBCZW51dHp1bmcgdm9uIEFydGlrZWxuIGltIFRvZGVza2FuYWwuCldpZSB3YWVycyBkYW5uIGluIGRpZXNlbSBadXNhbW1lbmhhbmcgbWl0ICdERVIgV2FobnNpbm4gaGF0IDxuYW1lPgp1bWdlYnJhY2h0Jz8gV2FlciBkb2NoIG1hbCBuZSBVZWJlcmxlZ3VuZyB3ZXJ0IExldXRlISBBbHNvIG1hY2h0IG1hbCEgOikpKSkKCkdyaW5zZW5kIC0gQmVsZGluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgogKEFyYW55YSwgIDkuIEZlYiAxOTk1LCAxMzo0Njo0NCk6CklzdCBtaXIgZ2VyYWRlIGJlaW0gQXVmcmFldW1lbiBtZWluZXIgQWxpLUxpc3RlIGF1ZmdlZmFsbGVuOgoKS0dCIC0gS2xvcGYgZ2VnZW4gYmFyb21ldGVyClpLICAtIHp1ZWNrZSBrbm9jaGVuCgpIb25pIHNvaXQsIHF1aSBtYWwgeSBwZW5zZSEKCkFyYW55YSwKICAgICAgIGhlaXNzdCBuaWNodCBXaWVuYW5kIG9kZXIgc28uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogIChTdGFobGRvcm4sICA5LiBGZWIgMTk5NSwgMTY6MTA6MzcpOgojISBybj1BcmFueWEgcnQ9NzkyMzM0MDA0Cgp1cHMgISEKKmVycm9ldCoKCkljaCBoYWIgYXVmIGRlbiBBcnRpa2VsIGhpbiBtZWluZSBhbGlzIGFuZ2VzZWhlbiB1bmQgbWlyIGlzdCBkYXMga3VlcnplbApreiA9IGt1cnoKYXVmZ2VmYWxsZW4uLi4KCkRhIGZhZWxsdCBlaW5lbSBlcnN0IGF1ZiB3aWUgdmllbGUgQnVjaHN0YWJlbmt1ZXJ6ZWwgZWluZW4gbWllc2VuCkJlaWdlc2NobWFjayBoYWJlbi4KCiAgICAgICAgU1RBSEwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICAoSG9ibywgIDkuIEZlYiAxOTk1LCAxNzoxNjowMik6CiMhIHJuPVN0YWhsZG9ybiBydD03OTIzNDI2MzcKVGphLCB3YXMgc29sbCBpY2ggZGEgZXJzdCBzYWdlbj8KSy5aLiBzaW5kIG1laW5lIEluaXRpYWxlbi4gOigKCiAgIEhvYm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiAoU2VtaXJhLCAgOS4gRmViIDE5OTUsIDE3OjE3OjA2KToKKmdyaW5zKgoKR3JhZCBlYmVuIGltIFp3ZXJnZW5sYWRlbjoKCiJSYXkgd2lzY2h0IGRhcyBCbHV0IHZvbiBzZWluZW0gU2Nod2VydCB1bmQgcmVubnQgaW4gZGVuIE5ldHp0b3RlbnJhdW0iCgpKYWphLi4uT3JkbnVuZyBtdXNzIHNlaW4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICAoR3JpbW1ib3JuLCAgOS4gRmViIDE5OTUsIDE3OjIzOjQyKToKIyEgcm49U3RhaGxkb3JuIHJ0PTc5MjM0MjYzNwoKV296dSBzb2xsIGRlbm4gZGFzIGFsaSBndXQgc2Vpbj8gSWNoIGxhdWZlIHNlaXQgTW9uYXRlbiBhdXNzY2hsaWVzc2xpY2ggaW0Ka3Vyem1vZHVzIHJ1bSwgd2FzIGJlc3NlcmVzIGdpYnRzIG5pY2h0LiBWZXJlaW5mYWNodCBuZWJlbmJlaSBhdWNoIGRpdmVyc2UKUXVlc3RzLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QuIFp3ZXJnLCB3YXMgc29uc3Q/IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXAgZnVlciBTdHVmZW4gKEdyaW1tYm9ybiwgIDkuIEZlYiAxOTk1LCAxNzoyNjo0Nik6CgpIZWUsIGZpbmQgaWNoIGphIHdpcmtsaWNoIHJ1ZWhyZW5kIGRhc3MgaWhyIHNvIHZpZWxlIEFyZ3VtZW50ZSBkYWdlZ2VuIHN1Y2h0LgpEb2NoLCBlY2h0IG5ldHQgdm9uIEV1Y2guIERlc3dlZ2VuIGZhZWxsdCBlcyBtaXIgYXVjaCBzY2h3ZXIgRXVjaCBkaWUgZ2FuemUKV2FocmhlaXQgenUgc2FnZW46CkRpZSBCZW11ZWh1bmdlbiBzaW5kIGxlaWRlciB1bXNvbnN0LCBpY2ggQklOIG5hZW1saWNoIHNjaG9uIFNlaGVyLiBBbHNvIGlzdAptaXIgZGFzIGRvY2ggZWhlciBlZ2FsLi4uCkRhIHNpZWh0IG1hbiB3aWVkZXIsIHdpZSBzY2huZWxsIHNpY2ggZWluIEF1ZnN0YW5kIGluIE5pY2h0cyBhdWZsb2VzdC4gQWxsZXMKbnVyIGVpbiBNaXNzdmVyc3RhZW5kbmlzLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QuIEVnb3plbnRyaXNjaD8gS2VpbmUgU3B1ciEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6ICAoQW5jYWxhZ29uLCAxMC4gRmViIDE5OTUsIDA5OjI5OjE5KToKIyEgcm49SG9ibyBydD03OTIzNDY1NjIKZGFzIGlzdCBhYmVyIG1lcmt3dWVyZGlnLiBXbyBzaW5kIGRlbm4gaW4gIkhvYm8iIGVpbiBLIHVuZCBlaW4gWiB2ZXJzdGVja3Q/CmVpbiBncnVlYmVsbmRlciAoa2ljaGVyKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5jYWxhZ29uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERyYWNvIGtudWRkZWxsZW5zaXMgbWFqb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSW50ZXJ2aWV3cGFydG5lcklubmVuIGdlc3VjaHQhIChHcmltbWJvcm4sIDExLiBGZWIgMTk5NSwgMDM6MzA6NTUpOgojISBybj1JY2V0IHJ0PTc5MjQ2Nzg2OQpbVmVybGVndCB2b24gYW56ZWlnZW4sIEdyaW1tYm9ybiwgMTEuIEZlYiAxOTk1LCAwMzozMDoyOV06CgpIbW0sIGltIFJhaG1lbiBkZXIgR2xlaWNoYmVyZWNodGlndW5nIHNvbGx0ZSBtYW4gZGllIFBhcnRuZXIgdm9uIE11ZGRlcmlubmVuCmF1Y2ggZXJ3YWVobmVuLiBBbHMgQmVpc3BpZWwgZmFlbGx0IG1pciBkYSBIb2JvIGVpbiBkaWUgYW5nZWJsaWNoIG1pdCBlaW5lbQpLZXJsIGxpaWVydCBpc3QgZGVyIE5JQ0hUIG11ZGRldC4gWnVtaW5kZXN0IG5pY2h0IGltIE1HLi4uCgoKR2FueiB6dSBzY2h3ZWlnZW4gdm9uIHZvbiBtb2VnbGljaGVuIGdsZWljaGdlc2NobGVjaHRsaWNoZW4gUGFhcmVuLgpVbmQgbnVuIHNlaCBpY2ggZXJzdCwgZGFzcyBkYSB1ZWJlcmFsbCBncm9zc2UgSSdzIHdhcmVuLCBhbHNvIGlzdCBkZXIgQXJ0aWtlbApoaWVyIHVlYmVyZmx1ZXNzaWcuIEFiIGRhbWl0IG5hY2ggc2NobWFycm4uLi4KCkRlciBCZXp1ZyB3YXJlbiBkaWUgbGVpZHR1ZW5kZW4gUGFydG5lcklubmVuIHZvbiBNVURERVJJbm5lbiBhdXMgZGVyCkFuemVpZ2VucnVicmlrLCBoYWx0IGRhcyBtaXQgZGVtIEludGVydmlldy4uLgpBY2gsIGlzdCBkb2NoIGVnYWwsIGlzdCBzY2hsaWVzc2xpY2ggc3BhZXQgZ2VudWcgdW5kIGljaCBrb25udGUgbmljaHRtYWwgenVyClBhcnR5Li4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCdW1lcmFuZyAoR3JpbW1ib3JuLCAxMS4gRmViIDE5OTUsIDA5OjI4OjUxKToKCkhlaXNzYSwgZGFzIG11c3MgUHJlbWllcmUgc2VpbiEgUnVuZCAxIE1lcCBvaG5lIGVpbmVuIEJ1bWVyYW5nIHp1IHZlcmxpZXJlbiwKdW5kIGRhYmVpIHdhcmVuIHNpY2hlciA3MDBrIGF1cyBkZXIgU1NQLiBJY2ggZnVlcmNodGUsIGRpZSBQcm9ncmFtbWllcnVuZwpudXR6dCBzaWNoIGxhbmdzYW0gYWIuLi4gOy0pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5hbnU/IChNZXRoZWRyYXMsIDEyLiBGZWIgMTk5NSwgMDI6MTI6MzEpOgpTb25uZW53b2xmIGtvbW10IGFuLgpTb25uZW53b2xmIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBTb25uZW53b2xmLgpTb25uZW53b2xmIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KU29ubmVud29sZiBiZWdpbm50IG51biBtaXQgZGVyIDEuIFZhcmlhdGlvbi4KU3Rlcm5mYWxrZSBpc3QgZ2VyYWRlIGlucyBTcGllbCBnZWtvbW1lbi4KU29ubmVud29sZiBiZWdpbm50IG51biBtaXQgZGVyIDEuIFZhcmlhdGlvbi4KU29ubmVud29sZiBiZWdpbm50IG51biBtaXQgZGVyIFJlY2h0ZmVydGlndW5nc3NlcXVlbnouClNvbm5lbndvbGYgYmVnaW5udCBudW4gbWl0IGRlciAxLiBWYXJpYXRpb24uClNvbm5lbndvbGYgYmVnaW5udCBudW4gbWl0IGRlciAyLiBWYXJpYXRpb24uClNvbm5lbndvbGYgYmVnaW5udCBudW4gbWl0IGRlciBBbnJ1ZnVuZ3NzZXF1ZW56LgpTb25uZW53b2xmIGJlZ2lubnQgbnVuIG1pdCBkZXIgQW5ydWZ1bmdzc2VxdWVuei4KU29ubmVud29sZiBiZWdpbm50IG51biBtaXQgZGVyIFJlY2h0ZmVydGlndW5nc3NlcXVlbnouCgpJbnRlcmVzc2FudCB3YXMgbWFuIGhpZXIgc28gdHVuIGthbm4gd2VubiBtYW4gZWlnZW50bGljaCBzY2hvbiB3ZWcgaXN0IDotKQoKLSBtZXRoZWRyYXMgLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJpc2NoIHZvbiBkZXIgUGFydHkgKEFuYXRvbCwgMTMuIEZlYiAxOTk1LCAxMjoyMzoyOSk6CgpFaW4gcGFhciBNYXhpbWVuIGJla2FubnRlciBNdWQtUGVyc29lbmxpY2hrZWl0ZW46CgpDYXR3ZWF6bGUgc2FndDogIEljaCBiaW4gaW1tZXIgbGllYiB1bmQgbmV0dCEKClJvY2h1cyBzYWd0OiAgICAgSWNoIGJpbiBuaWUgZmllcyEKCkpvZiBzYWd0OiAgICAgICAgSWNoIGJpbiBuaWUgaWRsZSEKCkdhdHNieTogICAgICAgICAgSWNoIGJpbiBzY2h3ZXJlciBhbHMgSm9mIQoKCkFuYXRvbCAoa2FubnMgbmljaHQgZ2xhdWJlbikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDbHVicyAoQXJhbnlhLCAxMy4gRmViIDE5OTUsIDEzOjExOjMyKToKRGVyIEFydGlrZWwga29tbXQgaGllciByZWluLCB3ZWlsIGljaCBkaWUgUnVicmlrIHdvbHBlcnRpbmdlci5mYW5jbHViIGluendpLQpzY2hlbiBhdWNoIG51ciBub2NoIGFscyBiZXNzZXJlIFNjaG1hcnJuLVJ1YnJpayBhbnNlaGUuCgpJbSBSYWhtZW4gZGVyIGFsbGdlbWVpbmVuIENsdWJncnVlbmR1bmdzd2VsbGUgcnVmZSBpY2ggaGllcm1pdCBkaWUKCiAgICBTUEQtT3J0c2dydXBwZSBNb3JnZW5ncmF1ZW4gKGluIFVlYmVyZWluc3RpbW11bmcgbWl0IGRlbSBQYXJ0ZWlzdGF0dXQpCgphdXMuClNhY2h0IG1hbCwga29tbXQgaWhyIGV1Y2ggbmljaHQgc2VsYmVyIGJsb2VkIHZvcj8KCkFyYW55YQogICAgICB3aWxsIGRhcyBudXIgbWFsIHdpc3Nlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVpbmVuIG5vY2ggKEFuYXRvbCwgMTMuIEZlYiAxOTk1LCAxNzozNjoyNik6CgoKQW1hem9yYSBzYWd0OiBTY2hydW1wZmkgaXN0IGRvb2YhCgpBbmF0b2wgKGhhdCBzZWluZSAydGllcyBtZWlzdCBhbiBkZXIgTGVpbmUpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOb2NoIGVpbmVuLi4uIChBbmF0b2wsIDEzLiBGZWIgMTk5NSwgMTc6Mzc6MTgpOgoKCiAgICAgIkpPRiwgRFUgU0NIV0VJTiEhISIKCkFuYXRvbCAoaGF0cyBsZWlkZXIgbnVyIGdlaG9lcnQuLi4pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGVpbmVuIG5vY2ggKFNjaHJ1bXBmaSwgMTMuIEZlYiAxOTk1LCAxODo1OTowNyk6CiMhIHJuPUFuYXRvbCBydD03OTI2OTMzODYKSWNoIGxhc3NlIGlociBkYXMgYXVjaCBuaWNodCBtZWhyIGR1cmNoZ2VoZW4gOy0pCgpTY2hydW1wZmkgd2FyIGphIGdhciBuaWNodCBhdWYgZGVyIFBhcnR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGVpbmVuIG5vY2ggKEFuYXRvbCwgMTMuIEZlYiAxOTk1LCAxOToxOToyMik6CiMhIHJuPVNjaHJ1bXBmaSBydD03OTI2OTgzNDcKCk5hdHVlcmxpY2ggd2Fyc3QgRHUgYXVmIGRlciBQYXJ0eSwgU2NocnVtcGZpLgpPZGVyIG1pdCB3ZW0gaGFiIGljaCBtaWNoIGFtIFNhbXN0YWcgQWJlbmQgdW5kIGFtIFNvbm50YWcgbWl0dGFnIGt1cnoKdW50ZXJoYWx0ZW4/CgpBbmF0b2wgKGVyaW5uZXJ0IHNpY2ggYW4gZWluICJBbWF6b3JhIHdhciBnZXN0ZXJuIGRhLiIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnJpc2NoIHZvbiBkZXIgUGFydHkgKENhdHdlYXpsZSwgMTMuIEZlYiAxOTk1LCAxOToxOTo1OSk6CiMhIHJuPUFuYXRvbCBydD03OTI2NzQ2MDkKCkVyIGhhdCBlcyB0YXRzYWVjaGxpY2ggZ2Vwb3N0ZXQuLi4KCkVyIGhhdCBkYXMgVEFUU0FFQ0hMSUNIIGdlcG9zdGVkISEhIQoKQXJnbCA6KQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBlaW5lbiBub2NoIChTY2hydW1wZmksIDEzLiBGZWIgMTk5NSwgMTk6MzY6MTMpOgojISBybj1BbmF0b2wgcnQ9NzkyNjk5NTYyCkFsbGVzIEx1ZWdlISBBbWF6b3JhIHdhcnMhISA7LSkpCgpTY2hydW1wZmkgaGF0IGFtIHNhbXN0YWcgbWl0IEJsb29kZ29yZSBNYXUgTWF1IGdlc3BpZWx0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBlaW5lbiBub2NoIChCdW5nbGUsIDEzLiBGZWIgMTk5NSwgMTk6NDk6MjEpOgojISBybj1TY2hydW1wZmkgcnQ9NzkyNzAwNTczClVuZCBBbWF6b3JhIHdhciBtaXQgQmxvZWRnb2VyZSBzYXVmZW4uLi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggYXVmZXIgUGFydHkgKFRvZXRlciwgMTQuIEZlYiAxOTk1LCAwMToxOTowNCk6Cj5zY2hhdQpEdSBzdGVoc3QgaGludGVyIGRlciBCYXIgZGVzIFBhcnR5Z2V3b2VsYmVzICJEaWUgUGludGUiLiBXYWVocmVuZAppbSBXZXN0ZW4gZGVyIEt1ZWhsc2NocmFuayB3b2hsZ2VmdWVsbHQgbWl0IEZsYXNjaGVuIGF1ZiBzZWluZQpQbHVlbmRlcnVuZyB3YXJ0ZXQsIGdlaHQgZXMgaW0gT3N0ZW4gd2llZGVyIHp1cnVlY2sgenUgZGVuIHNpY2gKbml2ZWF1dm9sbCB1bnRlcmhhbHRlbmRlbiBHYWVzdGVuLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogd2VzdGVuIHVuZCBvc3Rlbi4KSm9mLgo+bwpuCm4KbwpzCjxIaWNrPiEgT2gsIFRzY2h1bGRpZ3VuZy4Kcwo+Sm9mIGxhZXNzdCBEaWNoIG5pY2h0IHZvcmJlaS4KV2llIGJpdHRlPwpXaWUgYml0dGU/CkhpbnRlciBkZXIgVGhla2UuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYWVuZ2U6IG9zdGVuLgpXaWUgYml0dGU/CldpZSBiaXR0ZT8KPmFyZ2wKRHUgYXJnbHN0IGVpbiB3ZW5pZyB2b3IgRGljaCBoaW4uCj5vCkhpbnRlciBkZXIgQmFyLgpKb2YuCj51IGpvZgpEYXMgaXN0IEpvZi4KRXIgd2Fua3QgYmVyZWl0cyBiZWRlbmtsaWNoLgpKb2YgaGF0IGtlaW5lIFJ1ZXN0dW5nIGFuIHVuZCBrZWluZSBXYWZmZSBnZXp1ZWNrdC4KR2FzdDEgcnVmdDogSWNoIEJJTiBuaWNodCBSeHRlY2ghCj5mcmFnIGpvZiBuYWNoIHZvcmJlaWxhc3NlbgpKb2Ygc2NoYXV0IERpY2ggZnJhZ2VuZCBhbi4KPnQKRHUgc2llaHN0IGhpZXIga2VpbiBkZXJhcnRpZ2VzIFdlc2VuIQo+RHUgc3RvbHBlcnN0Lgp0b2V0ZSBqb2YKCk9rLgoKRWluZSBtYWdpc2NoZSBLcmFmdCBsYWVobXQgRGljaCB1bmQgRHUgbWVya3N0LCBkYXNzIER1IGRpZXNlcyBXZXNlbgpuaWNodCB0b2V0ZW4ga2FubnN0ICEKRHUgamFnc3QgSm9mIG5pY2h0IG1laHIuCkR1IGZ1ZWhsc3QgRGljaCBiZW5vbW1lbi4KClsuLi5dCgpCbG9lZGVzIFJMTXVkLi4uCjspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUeXBpc2NoIEFtdWxldHQgKEJhbWJ1bGtvLCAxNC4gRmViIDE5OTUsIDA0OjI2OjE2KToKRHUgbmltbXN0IGFsbGUgRGVpbmUgVWViZXJ3aW5kdW5nc2tyYWVmdGUgenVzYW1tZW4gdW5kIHNjaHVldHRlc3QgRGlyIGRlbgpTY2hsZWltIGluIGRpZSBLZWhsZSwga29taXNjaGVyd2Vpc2Ugd2lyc3QgRHUgdm9uIGVpbmVtIGFuZ2VuZWhtIHdhcm1lbgpHZWZ1ZWhsIGR1cmNoZmx1dGV0LgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDcgTWFnaWVwdW5rdGUuCj4gcwpGaW5zdGVybmlzLgo+IHMKRmluc3Rlcm5pcy4KPiBzCnMKRWluZSBoZXJybGljaGUgV2Flcm1lIGdlaHQgdm9uIERlaW5lbSBBbXVsZXR0IGF1cyB1bmQgRHUgZnVlaGxzdApEaWNoIHByaW1hLgpzCkZpbnN0ZXJuaXMuCiBCQU1CVUxLTwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogZWluZW4gbm9jaCAoU2NocnVtcGZpLCAxNC4gRmViIDE5OTUsIDE3OjM0OjQ5KToKIyEgcm49QnVuZ2xlIHJ0PTc5MjcwMTM2MQpHZW5hdSwgc28gd2FycyA6KQpTY2hydW1wZmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9saW0gaGF0IGVpbiB6d2VpdGVzIExlYmVuIChLYWlnLCAxNS4gRmViIDE5OTUsIDAzOjUzOjI0KToKRHUgc2Fnc3Q6IGJ5ZQpPbGltIHdpbmt0IERpciB6dQpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBsZWJlbiBhdXMgT2xpbQpPbGltIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KCkR1IHdpbmtzdCBPbGltIHp1LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIChCYW1idWxrbywgMTUuIEZlYiAxOTk1LCAyMDoxNDozOCk6CkluIGVpbmVtIGFsdGVuIFBpcmF0ZW5zY2hpZmYuIERlciBLYXBpdGFlbiB1bmQgZGVyIFN0ZXVlcm1hbm4gc2VoZW4gbmljaHQgc28KenV2ZXJsYWVzc2lnIGF1cyB3aWUgZGFzIFNjaGlmZiBzZWxiZXIsIG9id29obCBkYXMgYXVjaCBzY2hvbiBvZWZ0ZXJzCmdlZmxpY2t0Cnd1cmRlLiBLb21tZW4gZGllc2UgTG9lY2hlciwgZGllIGdlZmxpY2t0IHd1cmRlbiwgdm9uIEthbm9uZW5rdWdlbG4gb2Rlcgp3b3Zvbgpzb25zdD8gVmllbGxlaWNodCBpc3QgZGllIEZhaHJ0IG1pdCBkaWVzZW0gU2NoaWZmIGRvY2ggbmljaHQgc28gc2ljaGVyLgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgpBdXNzZXJoYWxiIHNpZWhzdCBEdToKSW0gSGFmZW4gdm9uIEF1cm9yYS4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG5vcmRlbi4KIERhcyBQaXJhdGVuc2NoaWZmIGxlZ3Qgdm9tIEhhZmVuIHZvbiBQb3J0IFZhaW4gYWIuCkluIGVpbmVtIGFsdGVuIFBpcmF0ZW5zY2hpZmYuIERlciBLYXBpdGFlbiB1bmQgZGVyIFN0ZXVlcm1hbm4gc2VoZW4gbmljaHQgc28KenV2ZXJsYWVzc2lnIGF1cyB3aWUgZGFzIFNjaGlmZiBzZWxiZXIsIG9id29obCBkYXMgYXVjaCBzY2hvbiBvZWZ0ZXJzCmdlZmxpY2t0Cnd1cmRlLiBLb21tZW4gZGllc2UgTG9lY2hlciwgZGllIGdlZmxpY2t0IHd1cmRlbiwgdm9uIEthbm9uZW5rdWdlbG4gb2Rlcgp3b3Zvbgpzb25zdD8gVmllbGxlaWNodCBpc3QgZGllIEZhaHJ0IG1pdCBkaWVzZW0gU2NoaWZmIGRvY2ggbmljaHQgc28gc2ljaGVyLgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgo+IFBsYXRzY2guLi5laW4gZmxpZWdlbmRlciBGaXNjaCBzcHJhbmcgZHJhdXNzZW4gaGVydW0uLi4KRGVyIFN0ZXVlcm1hbm4gc2NoYXV0IERpY2ggYXVzIGdsYXNpZ2VuIEF1Z2VuIGFuIHVuZCB3aWxsIERpciBlaW5lCnJ1bnRlcmhhdWVuLApzdG9scGVydCBkYWJlaSBhYmVyIHVlYmVyIHNlaW5lIGVpZ2VuZW4gRnVlc3NlIHVuZCB6aWVodCBzaWNoIGZsdWNoZW5kIGFuCnNlaW5lbSBTdGV1ZXJyYWQgd2llZGVyIGluIGRpZSBIb2VoZS4KRGFzIFNjaGlmZiB3aXJkIHZvbiBkZW0gU3RldWVybWFubiBtaXQgZWluZXIgc28gZ3Jvc3NlbiBWb3JzaWNodCBkdXJjaCBkaWUKVW50aWVmZW4gdW5kIEZlbHNlbiBpbSBXYXNzZXIgZ2VzdGV1ZXJ0LCBkaWUgRHUgaWhtIG5pY2h0IHp1Z2V0cmF1dCBoYWV0dGVzdC4KTnVuIHNpZWhzdCBEdSBhdWNoIHN0ZWlsZSBLbGlwcGVuIGF1ZnRhdWNoZW4sIHVuZCBlaW5lbiBrbGVpbmVuIEhhZmVuIGRhdm9yLgpuRGFzIFBpcmF0ZW5zY2hpZmYgbGVndCBhbSBIYWZlbiB2b24gQXVyb3JhIGFuLgoKSHVjaC4uLi4KQkFNQlVMS08KLAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXJ3YXJ0ZSAoQ2FyYWRocmFzLCAxNS4gRmViIDE5OTUsIDIwOjE3OjI3KToKSWNoIHN0ZWhlIGdyYWRlIGJlaW0gU2Vuc2VubWFubiB1bmQgcGhpbG9zb3BoaWVydGUgKG1pdCBtaXIgc2VsYnN0Cm5hdHVlcmxpY2gsIHdlaWwgZGVyIFNlbnNpIG5pY2h0IGRhIHdhciAqaHVzdCogKmVycm9ldGUqKSBkYXNzCmZvbGdlbmRlcyBsZWlkZXIgbmljaHQgZ2VodDoKCj4gZXJ3YXJ0ZSBzZW5zZW5tYW5uClNlbnNlbm1hbm4gYW4gZGllIExpc3RlIGFuZ2VoYWVuZ3QuCkR1IGVyd2FydGVzdCBqZXR6dCBTZW5zZW5tYW5uLCBMb2JvLCBWYW5qYS4KCkRhYmVpIHdhZXIgZXMgZG9jaCBzbyBzY2hvZW4sIHdlbm4gZGllIE1vbnN0ZXIgaW0gRHVua2VsbiBhdWNoIGRpZXNlCkVyd2FydGUtTWVsZHVuZyB2b24gc2ljaCBnZWJlbiBrb2VubnRlbi4gOikgZGFubiBtdWVzc3RlIGljaCBuaWNodCBhbGxlCjUgTWludXRlbiBhbGxlcyBrbnVkZGVsbi4KICpzZXVmeiogIFZvbSB2aWVsZW4ga251ZGRsZSBhbGxlIGdlc3RyZXNzdAoKICAgICAgICAgQ2FyYWRocmFzIGRlciBld2lnZSBQcm9waGV0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFuYXRvbCwgMTUuIEZlYiAxOTk1LCAyMToxODozNik6CgoKCltBbGxnZW1laW46QmlsYm9tXSBJQ0ggQklOIElOIERFUiBIT0VMRSAoYWJlciBpY2ggbGViZSkuCltUb2Q6XSBFaW4gVGV1ZmVsIGhhdCBnZXJhZGUgQmlsYm9tIHVtZ2VicmFjaHQuCgoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEdW5rZWxoZWl0LCBvaCBSYWV0c2VsIDopIChDYXJhZGhyYXMsIDE1LiBGZWIgMTk5NSwgMjE6NDU6MTYpOgpDYXN0YXdheSBlcnJvZXRldC4KbApFcyBpc3QgenUgZHVua2VsICEKCiA6LSkpICAgICAgICAgaG1tbW1tbSA6KSkKICAgICAgICAgIENhcmFkaHJhcyBkZXIgdmVyd2lycnRlIFByb3BoZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBpc3QgZGFzPyAoQmFtYnVsa28sIDE2LiBGZWIgMTk5NSwgMTE6Mzg6NTMpOgpKYW5lcyBrbnVkZGVsdCBHYXN0MywgVGVya2FsLCBHYXN0MiwgSmltRGlHcml6LCBlaW5lbiBEaWNoLCBFZCwgZWluZW4gRWQsCkRpY2gsIEdheW1hbiwgR2FzdDEgdW5kIE1lbnNhLgoKTWFuIGJlYWNodGUgOiBlaW5lbiBEaWNoLCBEY2loLi4uLgpCQU1CVUxLTwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2VsdHNhbWUgZGluZ2UgZ2VzY2hlaGVuLi4gKEJhbWJlbCwgMTYuIEZlYiAxOTk1LCAxMzoxMDoyNyk6CkR1IGdlaHN0IGRlbiBQZmFkIHdlaXRlciB1bmQgcGxvZXR6bGljaCBzY2h3aXJyZW4gZGllIExpY2h0ZXIgYXVmCkRpY2ggenUuIEF1c3NlciBkZW0gTmViZWwgdW5kIGRlbiBMaWNodGVybiBpc3QgaGllciBmYXN0IG5pY2h0cyB6dSBlcmtlbm5lbi4KRHUgdGFzdGVzdCBEaWNoIG51ciBub2NoIGFuIGRlbiBCYWV1bWVuIGVudGxhbmcuIEVpbiBQZmFkIGlzdCBuaWNodCBtZWhyCnp1IHNlaGVuLiBBbGxlcyBpc3Qgc2VociBtZXJrd3VlcmRpZyBoaWVyLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogcmF1cy4KQmFtYnVsa28gZGFzIFdhc3Nlcndlc2VuLgpFaW4gcm90ZXMgSXJybGljaHQuCkVpbiB3ZWlzc2VzIElycmxpY2h0Lgo+IGkKRGFzIHJvdGUgSXJybGljaHQgc2Nod2VidCB2b3IgRGVpbmVtIHJlY2h0ZW4gQXVnZS4KCkVpbiBXdW5zY2guCkRhcyBTZXJ2aWNlcGFrZXQgdm9uIE1vcmdlbmdyYXVlbnMgUHJlc3NlYWdlbnR1ci4KRWluIFdlY2tlciAoTHV4dXNhdXNnYWJlKS4KQmFtYmVscyBUZWRkeWJhZXIgTGFrZUx1aXNlLgoKPiBsYXVzY2hlCkR1IGhvZXJzdCBTdGltbWVuIGltIE5lYmVsLCBkaWUgRGlyIHNhZ2VuIDoKV2lyZiBEZWluZSBXYWZmZW4gd2VnICEKPiBEYXMgcm90ZSBJcnJsaWNodCB0YW56dCBhdWYgdW5kIGFiLgoKCldlbGNoZSBXYWZmZW4/Pz8/PwpCYW1iZWwgd2lsbCBhdWNoIG1hbCBXYXNzZXJ3ZXNlbiB3ZXJkZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipobXBmKiAoQW5hdG9sLCAxNy4gRmViIDE5OTUsIDAwOjU5OjI4KToKCk5ldWxpY2ggbmFjaCBBdXJvcmEuLi4KCkhhZmVuIHZvbiBQb3J0IFZhaW4uCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiB3ZXN0ZW4sIG5vcmRlbiB1bmQgb2Jlbi4KRWluZSBKb2xsZSBsZWd0IGFuLgpFaW4gUGlyYXRlbnNjaGlmZiBsZWd0IGFuLgpiZXRyZXRlIHNjaGlmZgpEYXMgUG9zdHNjaGlmZiBNL1MgTG9mb3RlbiBsZWd0IGFuLgpBdWYgRGVjayBkZXIgTS9TIExvZm90ZW4uCkVzIGdpYnQga2VpbmUgc2ljaHRiYXJlbiBBdXNnYWVuZ2UuCkR1IGhvZXJzdCBlaW5lIER1cmNoc2FnZTogIlZlcmVocnRlIFBhc3NhZ2llcmUsIGRpZSBNL1MgTG9mb3RlbiBsZWd0IG51bgogaW4gUG9ydCBWYWluIGFiLiBXaXIgd3VlbnNjaGVuIGVpbmUgYW5nZW5laG1lIEZhaHJ0LiIKRGFzIFNjaGlmZiBiZWZpbmRldCBzaWNoIGpldHp0IGF1ZiBob2hlciBTZWUuCgpOYWphLiBTY2hvZW4uIEFiZXIgQXVyb3JhIHdhZXJlIG1pciBXSVJLTElDSCBsaWViZXIgZ2V3ZXNlbi4uLgoKQW5hdG9sIChzY2hpcHBlcnQgZHVyY2ggZGllIEdlZ2VuZC4uLikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaWxiZXJ0IGlzdCBzY2h1bGQhIChaZXBoeXIsIDE3LiBGZWIgMTk5NSwgMTI6MzY6MzQpOgpHZXN0ZXJuIGhhdCBzaWNoIGRlciBmdWVyIGRpZSBjcmFzaHMgVmVyYW50d29ydGxpY2hlIGdlb3V0ZXQ6CgogICAgW0FiZW50ZXVlcjpdIER1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgICUgY29ubmVjdGlvbiB0byBNRyBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgoKTWFuIHNvbGx0ZSBkb2NoIG1laW5lbiwgbGFuZ3NhbSBrYW5uIGVycy4uLiA6KQoKWmVwaHlyLCBob2x0IHNpY2ggbW9tZW50YW4gbnVyIG5vY2ggbmUgTWF1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKemVpdHVuZyAoQmxvb2R5aGFycnksIDE3LiBGZWIgMTk5NSwgMTQ6NDc6MDIpOgpBeWUgTVVEaWVzIQoKV2VyIGhpbGZ0IGFybWVuIFBpcmF0ZW4gYmVpIHNlaW5lbiBBbmZhbmdlbiBtaXQgZWluIHBhYXIgVGlwcyB3ZWl0ZXI/CkRlbiBTY2hyYXQgaGFiZSBpY2ggc2NobGFmZW4gZ2VsZWd0IGFiZXIgaGFiIHdpZWRlciBrZWluIEdlbGQsIGtlaW5lIFdhZmZlCm9kZXIgUnVlc3R1bmcgYWJlciBkYWZ1ZXIgNiBMZWJlbgpkYWhpbiBnZWhhdWNodC4KR2lidCBlcyBub2NoIGVpbiBsZWljaHRlcyBRdWVzdCB1bmQgd28gZmFuZ2UgaWNoIGVzIGFuPwpXbyBmaW5kZXQgbWFuIGFtIGJlc3RlbiBub2NoIGVpbiBwYWFyIFNjaGx1ZWtjaGVuIFphdWJlcnRyYW5rPwoKSWNoIGRhbmtlIERpciBzY2hvbiBtYWwsIGRhc3MgRHUgdWViZXJoYXVwdCBiaXMgaGllcmhpbiBnZWxlc2VuIGhhc3QuCgoKQmxvb2R5IEhhcnJ5LAplaW4gZWNodGVyIFBpcmF0LCBtaXQgZHVua2xlciBWZXJnYW5nZW5oZWl0IHVuZCB6d2VpZmVsaGFmdGVyIFp1a3VuZnQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldHRlIHd3dyBzZWl0ZSAoR2FzdDEsIDE4LiBGZWIgMTk5NSwgMDE6Mjg6MDYpOgpodHRwOi8vMTk0LjQ5Ljg2Ljgvb3Jpb24KaGF2ZSBmdW4KZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiAoU2VtaXJhLCAxOS4gRmViIDE5OTUsIDE1OjA0OjAwKToKKmtpY2hlcioKCkdyYWQgZWJlbiBhdWYgbWVpbmVtIFNjaGlybToKCkNyYWNrZXIga251ZGRlbHQgRGljaCBEaXIgbWl0dGVpbGVuZCBkYXNzIGVyIGpldHp0IHdpZWRlciBkYSBpc3QgYXVzIGRlcgpGZXJuZS4KCkNyYWNrZXIgaGF0IGdyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4KCkNyYWNrZXIgSVNUIEpFVFpUIE5JQ0hUIE1FSFIgREEgISEhCgoqc3RhdW4qCgpXZXIgc29sbCBkYSBub2NoIGR1cmNoYmxpY2tlbi4KClNlbWlyYSAtIHNjaG51cnJlbmRlIEtudWRkZWxtYXVzIC0gdmVyd2lycnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqaG1wZiogKExvY28sIDE5LiBGZWIgMTk5NSwgMTg6MjU6MzEpOgojISBybj1BbmF0b2wgcnQ9NzkyOTc5MTY4Ck51biwgZmFzdCBhbGxlIHJlYWdpZXJlbiBhdWYgImJldHJldGUgc2NoaWZmIiwgd2VpbCBlcyBzY2hsaWVzc2xpY2ggU2NoaWZmZQpzZWluZCAtIHVuZCBkYW5uIGtvbW10IGRhcyBhbHMgZXJzdGVzIGRyYW4sIHdhcyBhbHMgbGV0enRlcyBhbmdla29tbWVuIGlzdC4KV2llIHdhZXJzIG1pdCAiYmV0cmV0ZSBqb2xsZSIsICJiZXRyZXRlIHBpcmF0ZW5zY2hpZmYiLCAiYmV0cmV0ZSBwb3N0c2NoaWZmIj8KWndhciBtZWhyIHp1IHRpcHBlbiwgYWJlciBlaW5kZXV0aWcuLi4KCiAgIExvY28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjopIChaZXBoeXIsIDIwLiBGZWIgMTk5NSwgMDI6Mzk6MDcpOgpSeHRlY2ggc2FndDogTmEsIGljaCBiaW4gc2VociBicmF2CgpaZXBoeXIsIHJvdGZsdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGV0enRlIFdvcnRlIChSdW1hdGEsIDIwLiBGZWIgMTk5NSwgMDk6NTI6NDMpOgpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFF1aWxsaWFuLCAyMC4gRmViIDE5OTUsIDA5OjExOjU0XToKQWxsZW1hbm5lIHJ1ZnQ6IFdpZSBrb21tIGljaCBhdXMgZGVtIE1hZ2VuIGRlcyBGbHVnZHJhY2hlbiB3aWVkZXIgcmF1c3M/CjEwIFNla3VuZGVuIHNwYWV0ZXI6CltUb2Q6XSBFaW4gRmx1Z2RyYWNoZSBoYXQgZ2VyZWFkZSBBbGxlbWFubmUgdW1nZWJyYWNodAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVtaGFuZyBvZGVyIFJ1ZXN0dW5nPyAoQW5hdG9sLCAyMi4gRmViIDE5OTUsIDA0OjE4OjAwKToKCgpFcyBnZXNjaGFoIGFiZXIgenUgZGVyIFplaXQsIGRhc3MgQW5hdG9sIGVpbiBOYWNodGhlbWQgZmFuZC4KQW5hdG9sIGJyYWNodGUgZXMgWmVwaHlyLCBkYW1pdCBzaWUgaW0gdW5mZXJ0aWdlbiBCZXR0ZSBuaWNodCBzbyBmcmllcmUuCkRvY2ggQW5hdG9sIGZhbmQgbm9jaCBlaW4gYW5kZXJlcyBOYWNodGhlbWQgdW5kIGdlZGFjaHRlIGVzIGF1Y2ggbm9jaCBzZWluZW0KYW5nZXRyYXV0ZW4gV2VpYmUgenUgYnJpbmdlbiwgZGEgZXIgbmljaHQgenUgamVkZXIgQWJlbmRzdHVuZGUgYmVpIGlociB3ZWlsZW4Ka29ubnRlLCB1bSBzaWUgenUgd2Flcm1lbi4KQWxzbyBnZXNjaGFoIGVzLgpEb2NoIGFscyBBbmF0b2wgZWluZXMgc3BhZXRlbiBBYmVuZHMgenUgc2Nob24gd2llZGVyIGZydWVoZXIgU3R1bmRlIGVpbmVuCkJsaWNrIGF1ZiBkaWUgaW4gc2VpbmVuIEFybWVuIHJ1aGVuZGUgSG9sZGUgd2FyZiAtIHdhcyBzYWggZXIgZGE/CgpbLi4uXQpaZXBoeXIgaGF0IGVpbiBOYWNodGhlbWQsIGVpbiBOYWNodGhlbWQgdW5kIGVpbmUgWmlwZmVsbXVldHplIGFuLCBrZWluZSBXYWZmZQpnZXp1ZWNrdCB1bmQgdHJhZWd0IGVpbiBGcmV1bmRzY2hhZnRzYmFuZCB1bmQgZWluZW4gRWhlcmluZy4KWy4uLl0KCkFuYXRvbCAoZGVtIGVpZ2VudGxpY2ggZmFzdCBzY2hvbiBfZWluZXNfIHp1dmllbCB3YXIuLi4pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2Nob2VuZXIgQmF1bSAoQmFtYnVsa28sIDIyLiBGZWIgMTk5NSwgMjE6NDU6MjIpOgoKRGllIFdhZW5kZSBzaW5kIHRhcGV6aWVydC4gRGFzIE11c3RlciB6ZWlndCBzdGlsaXNpZXJ0ZSBCYWV1bWUuCj4gdW50IG11c3RlcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuICAgICAuCiAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uICA6YGAuLic6CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDogYGBgYC4nICAgOicnOjonCiAgICAgICAgICAgICAgICAgICAgICAgICAuLjouLiAgOiAgICAgLicnIDoKICAgICAgICAgICAgICAgICAgICAgIGBgLiAgICBgOiAgICAuJyAgICAgOgogICAgICAgICAgICAgICAgICAgICAgICAgIDogICAgOiAgIDogICAgICAgIDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAgIDogICA6ICAgICAgICAgOgogICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgIDogICA6ICAgICAgICA6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgIDogICA6Li4nJycnYGA6Oi4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IC4uLjouLicgICAgIC4nJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4nICAgLicgIC46Ojo6JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgOi4uJycnYGA6Ojo6Ojo6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnICAgICAgICAgYDo6OjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGA6Oi4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgOjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOjo6LgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi46LjouOjonYC4gOjonYC4gIC4gOiA6IC4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLicgICAgICBgOi46IDo6ICAgOicgICAgICAgLjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC46ICAgICAgICAuOmBgOjo6ICA6ICAgICAgIC46IDo6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuOiAgICAuLicnICAgICA6OjouJyAgICA6JzogICAgOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogLicnICAgICAgICAgLjo6IDogOiAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogICAgICAgICAgLidgOjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLgo+CiBCQU1CVUxLTwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNjaG9lbmVyIEJhdW0gKEFuYXRvbCwgMjIuIEZlYiAxOTk1LCAyMTo0ODoyNik6CiMhIHJuPUJhbWJ1bGtvIHJ0PTc5MzQ4NTkyMgoKKmdyaW5zKgpEYXMgaXN0IGRhcyBNdXN0ZXIgZGVzIEZlbnN0ZXJzLCBCYW1idWxrby4uLgoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNjaG9lbmVyIEJhdW0gKEJhbWJ1bGtvLCAyMi4gRmViIDE5OTUsIDIyOjU0OjA5KToKIyEgcm49QW5hdG9sIHJ0PTc5MzQ4NjEwNgpBY2ggbmVlZS4uLmJpc3QgamEgZWluIGdhbnogc2NobGF1ZXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNjaG9lbmVyIEJhdW0gKEFuYXRvbCwgMjMuIEZlYiAxOTk1LCAwMDowODo0OCk6CiMhIHJuPUJhbWJ1bGtvIHJ0PTc5MzQ5MDA0OQoKTmF0dWVybGljaC4KCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNwcnVjaCAoUnVtYXRhLCAyMy4gRmViIDE5OTUsIDE1OjI0OjQ3KToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBBbGZvbnNvLCAyMy4gRmViIDE5OTUsIDAxOjE1OjA2XToKRGllIHNwaW4obillbiBkaWUgRWxla3Ryb25lbgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvbS1XYWl0cy1RdWl6IChHcmltbWJvcm4sIDIzLiBGZWIgMTk5NSwgMTY6NDc6NDUpOgoKU28sIG5hY2ggQWJrbGluZ2VuIGRlciBXZWxsZSBoaWVyIGFsc28gYXVjaCBtYWwgdm9uIG1pciBlaW4gUXVpei4gR2VzdWNodCBpc3QKKHdpZSB1ZWJsaWNoKSBkZXIgSW50ZXJwcmV0IHVuZCBkZXIgVGl0ZWwgZGVzIFN0dWVja2VzLiBadSBnZXdpbm5lbiBnaWJ0cyBuaXgsCndhcyBtYW4gc2ljaCBuaWNodCBhdWNoIHNvIGJlc29yZ2VuIGtvZW5udGUuLi4gVmllbCBTcGFzcyEKCmEpIFRoZSBjYXB0YWluIGlzIGEgb25lLWFybWVkIGR3YXJmIChTaW5nYXBvcmUsIFRvbSBXYWl0cykKYikgU2FuZSwgc2FuZSwgdGhleSdyZSBhbGwgaW5zYW5lIChDbGFwIGhhbmRzLCBUb20gV2FpdHMpCmMpIEFuZCB0aGUgdHVtb3IgaXMgYXMgYmlnIGFzIGFuIGVnZyAoQ2VtZW50ZXJ5IHBvbGthLCBUb20gV2FpdHMpCmQpIEJsb29keSBmaW5nZXJzIG9uIGEgcHVycGxlIGtuaWZlIChKb2NrZXkgZnVsbCBvZiBCdXJib24sIFRvbSBXYWl0cykKZSkgQW5kIHRoZSBib3lzIGFsbCBnbyB0byBoZWxsIGFuZCB0aGVuIHRoZSBDdWJhbnMgaGl0IHRoZSBmbG9vcgogICAoVGFuZ28gdGlsbCB0aGV5J3JlIHNvcmUsIFRvbSBXYWl0cykKZikgQW4gb2xkIGJsaW5kIHRpZ2VyIChCaWcgYmxhY2sgTWFyaWFoLCBUb20gV2FpdHMpCmcpIFNpbmcgbWUgYSByYWluYm93LCBzdGVhbCBtZSBhIGRyZWFtIChEaWFtb25kcyAmIEdvbGQsIFRvbSBXYWl0cykKaCkgVGVhciB0aGUgcHJvbWlzZSBmcm9tIG15IGhlYXJ0IChIYW5nIGRvd24geW91ciBoZWFkLCBUb20gV2FpdHMpCmkpIEhpc3RvcnkgcHV0cyBhIHNhaW50IGluIGV2ZXJ5IGRyZWFtIChUaW1lLCBUb20gV2FpdHMpCmopIEFuZCBhbGwgdGhlIGRvbnV0cyBoYXZlIG5hbWVzIHRoYXQgc291bmQgbGlrZSBwcm9zdGl0dXRlcwogICAoOXRoICYgSGVubmVwaW4sIFRvbSBXYWl0cykKaykgQmxldyBhIGhvbGUgaW4gdGhlIGhvb2Qgb2YgYSBqZWxsb3cgY29ydmV0dGUgKEd1biBzdHJlZXQgZ2lybCwgVG9tIFdhaXRzKQpsKSBCZXN0IGxpdmUgc2hvdyBieSBmYXIgaW4gdGhlIHdob2xlIGVhc3QgY29hc3QgKFVuaW9uIHNxdWFyZSwgVG9tIFdhaXRzKQptKSBUaGUgb25seSBraW5kIG9mIGxvdmUgaXMgc3RvbmUgYmxpbmQgbG92ZSAoQmxpbmQgbG92ZSwgVG9tIFdhaXRzKQpuKSBIZSByb2xsZWQgYSBibGFkZSB1cCBpbiBoaXMgdHJpY2sgdG93ZWwgKFdhbGtpbmcgc3BhbmlzaCwgVG9tIFdhaXRzKQpvKSBUaGV5IHRyeSBzbyBoYXJkIHRvIGJyZWFrIG91dCBvZiB0aGVpciBsaXR0bGUgd29ybGRzCiAgIChEb3dudG93biB0cmFpbiwgVG9tIFdhaXRzKQpwKSBNeSBoZWFkIGlzIHNwaW5uaW5nIGFyb3VuZCAoQW55d2hlcmUgSSBsYXkgbXkgaGVhZCwgVG9tIFdhaXRzKQpxKSBDcm9zcyB5b3VyIGhlYXJ0IGFuZCBob3BlIHRvIGRpZSB3aGVuIHlvdSBoZWFyIHRoZSBjaGlsZHJlbiBjcnkKICAgKFNpbmdhcG9yZSwgVG9tIFdhaXRzKQpyKSBUaGV5IHRha2UgYXBhcnQgdGhlaXIgbmlnaHRtYXJlcyBhbmQgbGVhdmUgdGhlbSBieSB0aGUgZG9vcgogICAoVGFuZ28gdGlsbCB0aGV5J3JlIHNvcmUsIFRvbSBXYWl0cykKcykgSW4gdGhlIGxhbmQgb2YgdGhlIGJsaW5kLCB0aGUgb25lLWV5ZWQgbWFuIGlzIGtpbmcgKFNpbmdhcG9yZSwgVG9tIFdhaXRzKQp0KSBHb2luJyB1cCB0byBIYXJsZW0gd2l0aCBhIHBpc3RvbCBpbiBoaXMgamVhbnMgKENsYXAgaGFuZHMsIFRvbSBXYWl0cykKClNvLCBmdWVyIGRlbiBSZXN0IGRlcyBBbHBoYWJldHMgaGFiIGljaCBrZWluZSBMdXN0IG1laHIuIE11c3MgbWFsIHdpZWRlcgpwcnVlZ2VsbiBnZWhlbi4gOi0pCgpQcnVlZ2xlciBHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUb20tV2FpdHMtUXVpeiAoQm9ibywgMjMuIEZlYiAxOTk1LCAxNzo0NjozNyk6CiMhIHJuPUdyaW1tYm9ybiBydD03OTM1NTQ0NjUKQW50d29ydDogQiBpc3QgcmljaHRpZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVG9tLVdhaXRzLVF1aXogKEdyaW1tYm9ybiwgMjMuIEZlYiAxOTk1LCAxNzo0OToxNik6CiMhIHJuPUJvYm8gcnQ9NzkzNTU3OTk3CkFycnJyZ2ghIFBlciBtYWlsIG5hdHVlcmxpY2ghIEFuZGVyZSBzb2xsZW4gZG9jaCBhdWNoIHF1aXp6ZW4gZHVlcmZlbi4uLiA6LSgKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCB1bmQgUXVpenptYXN0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUb20tV2FpdHMtUXVpeiAoT2V0dGksIDIzLiBGZWIgMTk5NSwgMTc6NTM6MDUpOgojISBybj1HcmltbWJvcm4gcnQ9NzkzNTU0NDY1CkhhbGxvIEdyaW1tYm9ybiAhIQoKSWNoIGhhYiBhbGxlIHJpY2h0aWcgISEhISEKV2FyIGFiZXIgZWluIGVjaHRlciBCcm9ja2VuICEKCk9ldHRpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgogKFNlbWlyYSwgMjMuIEZlYiAxOTk1LCAxODowMTo0MSk6CkhNUEYhCgpVbmQgd2llZGVybWFsIGlzdCBlaW4gYmV1dGVsIG5lYnN0IGluaGFsdCB3ZWcuLi4uCgpXZXIga2VubnN0IGRhcyBuaWNodC4uLmJldXRlbCB2b2xsZXIgc2FoY2VuLi4ubWFuIHdpbGwgdmVya2F1ZmVuLi4ua2FubgpuaWNodHMgcmF1c25laG1lbi4uLmFsc28gbGVndCBtYW4gaWhuIGltIGxhZGVuIGFiIHVuZCBzJ2p1c3QgYWxzIG1hbiBhbGxlcwpyYXVzbmVobWVuIHdpbGwga29tbXQgd2VyIGFuLCBzY2huYXBwdCBzaWNoIGRlbiBiZXV0ZWwgdW5kIHZlcmthdWZ0IGlobiBlaCBtYW4Kbm9jaCBoYWx0IHRpcHBlbiBrYW5uLgoodW5kIGljaCBrYW5ucyBjaG5lbGwgdGlwcGVuKQoKRGFoZXIgbWVpbmUgSWRlZToga2FubiBtYW4gZGFzIG5pY2h0IGlyZ2VuZHdpZSBzbyBtYWNoZW4sIGRhIG1hbiBkZW4gQmV1dGVsCm1pdCBOYW1lbnNzY2hpbGRjaGVuIHZlcnNlaGVuIGthbm4/IHdlbm4gZGEgbmljaHQgImVpbiBzY2hsZWltYmV1dGVsIiBzb25kZXJuCiJzZW1pcmFzIHNjaGxlaW1iZXV0ZWwiIChzbyBibG9lZCBkYXMgYXVjaCBrbGluZ3QgKmtpY2hlciopIGxpZWdlbiB3dWVyZGUsCndhZXJlIGVyCnNpY2hlciBuaWNodCBnYW56IHNvIHNjaG5lbGwgdmVya2F1ZnQKCk51ciBzbyBuZSBJZGVlIHZvbiBFdXJlciBLbnVkZGVsbWF1cwoKU2VtaXJhIHNhZ3QgS29lbGxlIEFsYWFmIHVuZCBzdWNodCBzaWNoIG5ldWUgS251ZGRlbG9wZmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRvbS1XYWl0cy1RdWl6IChCb2JvLCAyMy4gRmViIDE5OTUsIDE4OjAyOjE1KToKIyEgcm49T2V0dGkgcnQ9NzkzNTU4Mzg1CkVoLCBPZXR0aSwKZGFzIGdpbGRldCBhYmEgbmljaCwgZHUgaGFzdCBuYWNoZ2VndWNrdC4gQXVzc2VyZGVtIGhhYmVuIHdpciBhdXNnZW1hY2h0LApvaG5lIFZvcnNhZ2VuIQpCb0JvLAp3aWxsIGF1Y2ggbWFsIEdld2lubmVyIHNlaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgogKFNlbWlyYSwgMjMuIEZlYiAxOTk1LCAxODowMzowNyk6CkF1d2VpYQpCaXR0ZSB0eXBvcyB1bmQgZm9ybSBuaWNodCBiZWFjaHRlbi4uLnZlcmZsY3VodCBrbGVpbmVuIHB1ZmZlciBoYXQgZGllIGtpc3RlCmhpZXIuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogIChCb2JvLCAyMy4gRmViIDE5OTUsIDE4OjA3OjU4KToKIyEgcm49U2VtaXJhIHJ0PTc5MzU1ODk4NwpNZWluc3RlIERlaW5lbiBBbGxvbG9scHVmZmVyLCB3YXM/CkJvQm8sCmdlaHQgamV0enQgYXVjaCBnbGVpY2ggZmVpZXJuIC0gd2VubiBpaHIgbm9jaCB3YXMgdWVicmlnZ2VsYXNzZW4gaGFidC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAgKFJ1ZGlyYXR0ZXIsIDI0LiBGZWIgMTk5NSwgMTE6NDI6NDApOgojISBybj1TZW1pcmEgcnQ9NzkzNTU4OTAxCk1hbiBrYW5uIGphIG1pdHRsZXJ3ZWlsZSBhdWNoIFNhY2hlbiBhdXMgZGVtIEJldXRlbCByYXVzdmVya2F1ZmVuLCBkYXp1IHNhZwppY2ggbnVyIGF1cyBlaWdlbmVyIEVyZmFocnVuZzogVk9SU0lDSFQhIQpNaXQgU2NobGVpbWJldXRlbG4ga2FubiBtYW4gamEgYmVrYW5udGVyd2Vpc2UgbWVociBydW1zY2hsZXBwZW4sIGFscyBtYW4KZWlnZW50bGljaCB0cmFnZW4ga29lbm50ZS4gV2VubiBtYW4gYWxzbyBhbiBzbyBlaW5lbSBQdW5rdCBhbmdla29tbWVuIGlzdCB1bmQKYWxsZXMgYXVzIGRlbSBCZXV0ZWwgdmVya2F1ZnQgKG1pdCBkZW0gbmV1ZW4gS29tbWFuZG8gJ3ZlcmthdWZlIGFsbGVzIGF1cwpiZXV0ZWwnKSAsIHNpbmQgZGllIFNhY2hlbiB3ZWcsIGFiZXIgbWFuIGhhdCB0cm90emRlbSBrZWluZSBtdWVkZSBNdWVuemUKZGFmdWVyIGJla29tbWVuOiBEaWUgbGllZ2VuIGRhbm4gbmljaHQgZXR3YSBhbSBCb2RlbiB3aWUgZGllIFNhY2hlbiwgZGllIG1hbgprYXVmdCB1bmQgbmNpaHQgdHJhZ2VuIGthbm4sIHNvbmRlcm4gc2luZCBlaW5mYWNoIHdlZy4KUnVkaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIGRpZSAxMDAxLiAoUm9uZGEsIDI0LiBGZWIgMTk5NSwgMTY6NTA6MzMpOgpKYSwgZGFzIHdhNHIgd29obCBkYW5uIGRvY2ggbmljaHRzIDooCgpbVG9kOl0gRWluIFN0ZWlubW9uc3RlciBoYXQgZ2VyYWRlIEFyZGFuYSB1bWdlYnJhY2h0Lgp0bSBhcmRhbmEgTUlTVCEhIQpEdXRlaWxzdCBBcmRhbmEgbWl0OiBNSVNUISEhCkFyZGFuYSBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBzdGVpbm1vbnN0ZXIga2lsbGVuIDopCgooVW5nZWt1ZXJ6dCB1bmQgdW5nZWxvZ2VuISkKClNjaGFkZSEgUm9uZGEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbGNoIGVpbiBLb250cmFzdCEgOi0pIChTeXNvcCwgMjQuIEZlYiAxOTk1LCAyMTozMDoyOSk6CkFteWxhYXIgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpWb2xsdHJvdHRlbCBpc3QgZ2VyYWRlIGlucyBTcGllbCBnZWtvbW1lbi4KCi0tIFN1ZXNzb3AgKGltbWVyIG5vY2ggaW4gc2ljaCByZWluZ3JpbnNlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0aXRlbCBzbyBnZXNlaGVuIChBcmRhbmEsIDI1LiBGZWIgMTk5NSwgMDI6MTA6MDUpOgpFdGFpbnMgTmFzZSBsYWV1ZnQuCkV0YWluIGthbm4gc2ljaCBrYXVtIG5vY2ggYXVmIGRlbiBCZWluZW4gaGFsdGVuLgoqdW50IEV0YWluCkRhcyBpc3QgRXRhaW4uClNpZSBpc3QgX2Fic29sdXQgZml0Xy4KLi4uCkVpbiBncmluc2VuZGVyIEFyZGFuYSA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoR3JpbW1ib3JuLCAyNS4gRmViIDE5OTUsIDE1OjEzOjAwKToKCltBYmVudGV1ZXI6SmltZGlncml6XSB3aWV2aWVsIGdsYWRpYXRvcmVuIGdpYnQgZXMgZGVubiA/CltBYmVudGV1ZXI6QXJkYW5hXSBoZXJrdWxlcyBpc3QgZGVyIGxldHp0ZSwgdW5kIHNjaHdlcnN0ZQpbQWJlbnRldWVyOkdyaW1tYm9ybl0gSGlucmVpY2hlbmQuCltBYmVudGV1ZXI6SmltZGlncml6XSBhaGEgaWNoIGJpbiBqZXR6dCBiZWkgam9oYW5uYQpbVG9kOl0gSm9oYW5uYSB2b24gT3JsZWFucyBoYXQgZ2VyYWRlIEppbWRpZ3JpeiB1bWdlYnJhY2h0LgoKSGFjaCBqYSwgZGllc2UgZ3J1ZW5lbiBTZWhlciBpbW1lci4uLiA7LSkKRVJpbm5lcnQgbWljaGltbWVyIHNvIGFuIG1laW5lIGVpZ2VuZSBKdWdlbmQgc29sY2hlIEdlc2NoaWNodGVuLiAqc2V1ZnoKd2Vpc2UqCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmludGVyZXNzYW50Li4uIChTdGFobGRvcm4sIDI2LiBGZWIgMTk5NSwgMjA6MDk6MTkpOgpuZXVsaWNoIGJlaW0gSGV4ZXI6CndpcmYgYnVtZXJhbmcKRHUgd2lyZnN0IGRlbiBCdW1lcmFuZy4KRGVyIEdvYmxpbmhleGVyIGZhZW5ndCBkZW4gQnVtZXJhbmcgYWIuCnVudCBoZXhlcgpFcyBpc3Qga2F1bSB6dSBnbGF1YmVuLCBhYmVyIHZvciBEaXIgc3RlaHQgZWluIEdvYmxpbiwgZGVyIHVtZmFuZ3JlaWNoZQptYWdpc2NoZSBGYWVoaWdrZWl0ZW4gZW50d2lja2VsdCBoYXQuCkVyIGlzdCBzY2hvbiBldHdhcyBnZXNjaHdhZWNodC4KRXIgdHJhZWd0IGJlaSBzaWNoOgpFaW4gQnVtZXJhbmcgc2Nod2lycnQgZHVyY2ggZGllIEx1ZWZ0ZS4KNSBGbGFtbWVua3VnZWxuLgpFaW4gR29ibGlubWFudGVsIChhbmdlem9nZW4pLgoKCmtvbWlzY2ggaXN0IG1pciBub2NoIG5pZSBhdWZnZWZhbGxlbiBkYXMgZGVyIGJ1bW1pIGltbWVyIG5vY2ggZHVyY2ggZGllCmx1ZWZ0ZSBzY2h3aXJydCB3ZW5uIGRhcyBtb25zdGVyIGlobiBoYXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp2b3JzY2hsYWNoLi4uIChNZXRoZWRyYXMsIDI3LiBGZWIgMTk5NSwgMTk6MTM6NTEpOgpoaSBhbGwKCmhpZXIgaW0gbWcgZGVyIGdlcGZsZWd0ZSB1bGsgd29obCBnYW56IGdlcm4gZ2VzZWhlbiAoc2llaGUgRmdXLi4uKS4gZGFydW0KbW9lY2h0ZSBpY2ggYXVjaAptYWwgd2FzIG5ldHRlcyB2b3JzY2hsYWdlbjoKd2llIHdhZXJzIGRlbm4gbWl0IGVpbmVyIHp3ZWl0aWUtZ2V3ZXJrc2NoYWZ0IChvZGVyIGdpYnRzIGRhcyBzY2hvbj8pIC0gYWxzCnZvcnNpdHplbmRlbgp3dWVyZGUgaWNoIGdyaW1tZGVhdGggdm9yc2NobGFnZW4gOi0pCgpncmluc2VuZC4uLgogICAgbWV0aGVkcmFzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdm9yc2NobGFjaC4uLiAoR3VsZHVrYXQsIDI3LiBGZWIgMTk5NSwgMTk6MTU6NTMpOgojISBybj1NZXRoZWRyYXMgcnQ9NzkzOTA4ODMxClVuZCBXYXMgc29sbGVuIGRpZSB6d2VpdGllcyBmdWVyIHJlY2h0ZSBoYWJlbj8gbmljaHQgZGFzcyBzaWUgaGludGVyaGVyCnN0cmVpa2VuIHVuZCBpY2ggYWxsZXMgYWxsZWluZSBtYWNoZW4gbXVzcyEgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdm9yc2NobGFjaC4uLiAoQ2FyYWRocmFzLCAyNy4gRmViIDE5OTUsIDE5OjM3OjU1KToKIyEgcm49R3VsZHVrYXQgcnQ9NzkzOTA4OTUzCkFjaCwgd2FzIGJyYXVjaGVuIGRpZSBzY2hvbiBmdWVyIFJlY2h0Li4uIFdlbm4gaWNoIGRyYW4gZGVua2UsIHdpZQpsYW5nZSBkYXMgc2Nob24gaGVyIGlzdCwgZGFzcyBtaXIgbWVpbmUgendlaSBCZXJnY2hlbiBtYWwgZ2Vob2xmZW4KaGFiZW4uLi4gTWVpc3QgbGFzc2VuIHNpZSBtaWNoIG51ciBzaXR6ZW4uICpxdWFrKiAqc2V1ZnoqCgogICAgICAgICAgICAgQ2FyYWRocmFzIGRlciBTZWhlcmZyb3NjaCAqc2NobmllZioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvZGVzYm90ZSA/IChMb2N1dHVzLCAyOC4gRmViIDE5OTUsIDEyOjAyOjIyKToKTmV1bGljaCBiZWltIFN0ZXJiZW4uLi4KCgpFaW4gWmVycmVuIHVuZCBaaWVoZW4gZ2VodCBkdXJjaCBEZWluZW4gZ2FuemVuIEtvZXJwZXIuIER1IHNwdWVyc3QgZWluZW4Kc3RhcmtlbiBpbm5lcmVuIFNvZyBpbiBEaXIgdW5kIG1pdCBlaW5lbSBsZWlzZSBzY2htYXR6ZW5kZW4gR2VyYWV1c2NoIGxvZXN0CnNpY2ggRGVpbmUgU2VlbGUgYXVzIGRlbiB6ZXJzdHVlY2tlbHRlbiwgbGVibG9zZW4gVWViZXJyZXN0ZW4gRGVpbmVzIGVoZS0KbWFsaWdlbiBLb2VycGVycy4KCgoKRHUgc3B1ZXJzdCwgd2llIGRhcyBMZWJlbiBhdXMgRGlyIHdlaWNodC4gRHUgc2NoZWluc3QgenUgc3R1ZXJ6ZW4gLi4uCgpFaW4gQm90ZSBrb21tdCBoZXJlaW5nZWhhc3RldCB1bmQgcGxhcHBlcnQgdm9lbGxpZyBhdXNzZXIgQXRlbSBsb3MgOgonSmFuaWNlIGhhdCBkaWUgZ3Jvc3NlbiBHbGFkaWF0b3JlbiB6dW0gS2FtcGYgaGVyYXVzZ2Vmb3JkZXJ0ISBHZWh0CnNjaG5lbGwgaW4gZGllIFd1ZXN0ZSB6dXIgZ3Jvc3NlbiBLYW1wZmFyZW5hIHVuZCBsYXNzdCBldWNoIGRpZXNlcwpTY2hhdXNwaWVsIG5pY2h0IGVudGdlaGVuIScKRGFuYWNoIGhhc3RldCBlciBzY2huZWxsIHdlaXRlci4KCkxvY3V0dXMgd3VuZGVydCBzaWNoIGFtIEtvcGYga3JhdHplbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVG9kZXNib3RlID8gKEVuZ3l3dWNrLCAyOC4gRmViIDE5OTUsIDEyOjA3OjI0KToKIyEgcm49TG9jdXR1cyBydD03OTM5NjkzNDIKV2FzIGVyc2NoZWludCBhdWYgZGVtIEJpbGRzY2hpcm0sIGp1c3QgZGEgaWNoIGxvY3V0dXMnIEFydGlrZWwgbGVzZT8KW1RvZDpdIEhhZWdhciBoYXQgZ2VyYWRlIEphbmljZSB1bWdlYnJhY2h0LgoKVGphLi4uClRzY2hvZSwgRW5neQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHZvcnNjaGxhY2guLi4gKEdyaW1tYm9ybiwgMjguIEZlYiAxOTk1LCAxNTo1NToxNyk6CiMhIHJuPU1ldGhlZHJhcyBydD03OTM5MDg4MzEKTklFTUFMUyEhIQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgpOaWNodCB1bXNvbnN0IGlzdCBkZXIgQXJ0aWtlbCB3b2hsIGluIHNjaG1hcnJuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdm9yc2NobGFjaC4uLiAoR3JpbW1kZWF0aCwgMjguIEZlYiAxOTk1LCAxNTo1NToxNyk6CiMhIHJuPU1ldGhlZHJhcyBydD03OTM5MDg4MzEKSmEsIGJpbiBpY2ggYXVjaCBmdWVyISBXaXIgWndlaXRpZXMgc29sbHRlbiBlbmRsaWNoIGFuZXJrYW5udCB3ZXJkZW4hCgpWb3JsYWV1ZmlnZSBGb3JkZXJ1bmdlbjoKLSBFaWdlbmVyIEthbmFsLCBmdWVyIEVyc3RpZXMgbmljaHQgYWJob2VyYmFyLgotIERhcyBSZWNodCBhdWYgZWluIGVpZ2VuZXMgTGViZW4uIEtlaW5lIEJldm9ybXVuZHVuZyBkdXJjaCBFcnN0aWVzIQotIEJlc3RyYWZ1bmcgdm9uIFNwaWVsZXJuLCBkaWUgWndlaXRpZXMgbmljaHQgbWl0IGRlciBub2V0aWdlbiBBY2h0dW5nCmJlZ2VnbmVuLCBkaWUgbWFuIGZ1ZXIgamVkZW4gTWl0c3BpZWxlciBhdWZicmluZ2VuIHNvbGx0ZS4KLSBIQVJURSBCZXN0cmFmdW5nIHZvbiBNYWdpZXJuLCBkaWUgRXJzdGllcyBkdXJjaCAoaWxsZWdhbGUpIE1pdHRlbCBpbiBpaHJlcgpVbnRlcmRydWVja3VuZyB1bnRlcnN0dWV0emVuLgoKQWxzIFZvcnNpdHplbmRlbiBzY2hsYWdlIGljaCBLaG9ybmUgdm9yLCBlaW4gVm9yYmlsZCwgenUgZGVtIHdpciBhbGxlCmF1ZnNlaGVuIHNvbGx0ZW4uCgpHcmltbWRlYXRoCgpOZWJlbmJlaTogV2FzIGhhdCBkYXMgaGllciBlaWdlbnRsaWNoIGluIHNjaG1hcnJuIHp1IHN1Y2hlbj8/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKnNldWZ6KiAoQ2FyYWRocmFzLCAyOC4gRmViIDE5OTUsIDE3OjEyOjIwKToKKmphbW1lciogKnNldWZ6KiBkYXMgd2FyZW4gbm9jaCBaZWl0ZW46CkdyYWRlIGVudGRlY2t0IGFscyBMb2dmaWxlIGJlaSBtaXI6Cgo+IHNjCkR1IGhhc3QgNDQ1MzU5MCBFcmZhaHJ1bmdzcHVua3RlLCAzMDAgQWJlbnRldWVycHVua3RlKDExMjUpLAoyMDIgTGViZW5zcHVua3RlKDIwMikgdW5kIDEzOCBNYWdpZXB1bmt0ZSgxMzgpCkR1IGJpc3QgQ2FyYWRocmFzIGRlciBQcm9waGV0LgpEZWluZSBBdHRyaWJ1dGUgc2VoZW4gc28gYXVzOgpJbnRlbGxpZ2VuejogMTIgIEtyYWZ0OiAxNyAgR2VzY2hpY2tsaWNoa2VpdDogMTcgIEF1c2RhdWVyOiAyMApWb3JzaWNodHMtTW9kdXMgKDM1KQpBbHRlcjogIDEzIFRhZ2UgMTAgU3R1bmRlbiA0NiBNaW51dGVuIDQgU2VrdW5kZW4uCkRlaW4gQ2hhcmFrdGVyIGlzdCBndXQuCgpVbmQgZGFtaXQgd2FyIGljaCBkYW1hbHMgc2Nob24gTnVtbWVyIDQgdm9uIGRlciBIaWdoc2NvcmUtTGlzdGUgOikKSmFqYSwgZGllIGFsdGVuIFplaXRlbi4KCiAgICAgICAgICBDYXJhZGhyYXMgZGVyIGV3aWdlIFByb3BoZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGJlaSBkZXIgUG9zdHF1ZXN0Li4uIChZZW5kaSwgMjguIEZlYiAxOTk1LCAyMDo0MjozMCk6Cgo+IHNjaGF1IGJyaWVmCkVpbiBnYW56IG5vcm1hbGVyIFN0YW5kYXJkYnJpZWYuIER1IGthbm5zdCBpaG4gbGVzZW4uIEVyIGlzdCBhZHJlc3NpZXJ0IGFuCmVpbmVuIE1hZ2llci9laW5lIE1hZ2llcmluIHVudGVyIGRlbiBTcGllbGVybi4KCiAgICpncnVlYmVsKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdm9yc2NobGFjaC4uLiAoU2NocnVtcGZpLCAgMS4gTWFyIDE5OTUsIDAxOjA2OjI1KToKIyEgcm49R3JpbW1ib3JuIHJ0PTc5Mzk4MzMxNwpEYSBiaW4gaWNoIGF1Y2ggU1RSSUtUIGRhZ2VnZW4uIERpZSBndXRlIEFtYXpvcmEgaXN0IGphIGpldHp0IHNjaG9uIHNvCmFycm9nYW50LCBkYXNzIGVzIHp1bSBoZXVsZW4gaXN0LiBEYW5uIHR1dCBzaWUgamEgZ2FyIG5peCBtZWhyIQpTY2hydW1wZmkgZ2VwbGFndCB2b24gaWhyZXIgYXJyb2dhbnRlbiBUZXN0aWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHZvcnNjaGxhY2guLi4gKEFtYXpvcmEsICAxLiBNYXIgMTk5NSwgMDE6MDk6MDQpOgojISBybj1TY2hydW1wZmkgcnQ9Nzk0MDE2Mzg1CklociB3ZXJkZXQgRXVjaCBub2NoIHd1bmRlcm4hCkFtYXpvcmEgb3JnYW5pc2llcnQgamV0enQgZWluZSBad2VpdGlnZXdlcmtzY2hhZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9lZC4uLiAoSGlnaGxhbmRlciwgIDEuIE1hciAxOTk1LCAwMTo1MjoyMik6CmNjICtPMyAgLUkvdXNyL2luY2x1ZGUvWDExUjQgLUkvTUlUL2luY2x1ZGUgLUkuICAtRFNZU1YKKyAtYyBnaW5pdC5jCmNjICtPMyAgLUkvdXNyL2luY2x1ZGUvWDExUjQgLUkvTUlUL2luY2x1ZGUgLUkuICAtRFNZU1YKKyAtYyBkcmF3LmMKY2MgK08zICAtSS91c3IvaW5jbHVkZS9YMTFSNCAtSS9NSVQvaW5jbHVkZSAtSS4gIC1EU1lTVgorIC1jIG91dHB1dC5jCgoKSG0uIERpZSArIG11ZXNzdCBpaHIgZXVjaCB3ZWdkZW5rZW4sIGlzdCBhdXMgZGVtIElSQyBrb3BpZXJ0LgpCbGJsYmxibGJsYmwuCiAgSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKb2ZhZ2VkZG9uPyAoU251Z2dsZSwgIDEuIE1hciAxOTk1LCAwMjo0NDoyNSk6Ck5ldWxpY2ggaW0gTXVkOgoKQXJtYWdlZGRvbiBydWZ0OiBJbiA1IFN0dW5kZW4sIDAgTWludXRlbiB1bmQgMCBTZWt1bmRlbiB3ZXJkZSBpY2ggZGllIFdlbHQKemVyc3RvZXJlbi4KCkpvZiBydWZ0OiBVcHMsIHNvcnJ5IQoKQXJtYWdlZGRvbiBydWZ0OiBJbiA1IE1pbnV0ZW4gdW5kIDAgU2VrdW5kZW4gd2VyZGUgaWNoIGRpZSBXZWx0IHplcnN0b2VyZW4uCgpKYWphLi4uR29ldHRlcmRhZW1tZXJ1bmcuIE9kZXIgYXVjaDogZGVuIEdvZXR0ZXJuIGRhZW1tZXJ0cyA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuc3RlcmJsaWNoa2VpdCAoRGFuY2VyLCAgMS4gTWFyIDE5OTUsIDEyOjE4OjQzKToKCnJ3dXNjaGVsIHplcGh5ciAvRGljaCBmdWVyIGRhcyBNaXR0YWdlc3NlbiB1bWRla29yaWVyZW5kCkRhenUgaGFzdCBEdSB6dXdlbmlnIE1hZ2llcHVua3RlLgoKVm9ud2VnZW4gVW5zdGVyYmxpY2hrZWl0IHVuZCB1bmVuZGxpY2hlLCB1bmJlc2NocmVpYmJhcmUgTWFjaHQuLi4ucG9laC4uLgo7KQoKRGFuY2VyCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmEgc293YXMgYWJlciBhdWNoLi4uIChHcmltbWJvcm4sICAxLiBNYXIgMTk5NSwgMTM6MjQ6NTMpOgoKQXVmIEF1cm9yYSwgYmVpIGRpZXNlbSBBdXRvbWF0ZW4gZ2VzY2hlaGVuOgoKPiBkcnVlY2tlIGtub3BmCiguLi4pIER1IGthbm5zdCBnZXJhZGUgbm9jaCB6dXIgU2VpdGUgc3ByaW5nZW4sIGJldm9yIGVyIERpY2ggZHVyY2hib2hydC4KKC4uLikKClZvbiBkZXIgU2VpdGUgaGVyIGR1cmNoYm9ocnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVk9SU0lDSFQgR0lGVElHISEhIChCYXJvbiwgIDMuIE1hciAxOTk1LCAwMDozODoyMyk6Ck1vaW4gTW9pbiA6KQpBZWgsIHdlciBoYXQgZWlnZW50bGljaCBkaWUgTlBDcyBpbiBkZXIgU3RhZHQgTW9yb24gcHJvZ3JhbW1pZXJ0PyBCaW4gaWNoCmRvY2ggaGV1dGUgendlaW1hbCB2b24gZWluZXIgR0lGVElHRU4gUHl0aG9uIGdlYmlzc2VuIHdvcmRlbiA6KS4KClJlZCBCYXJvbiAoRXIgd3Vlcmd0ZSBlaW5lIEtsYXBwZXJzY2hsYW5nIGJpcyBpaHJlIEtsYXBwZXIgc2NobGFwcGVyIGtsYW5nCjopKXNjaGVua3QgZGVtIHp1c3RhZW5kaWdlbiBNYWcgZWluIEJpb2xvZ2llYnVjaCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggaW4gcnluZXMgaGF1cy4uLiAoU251Z2dsZSwgIDMuIE1hciAxOTk1LCAwMjozODoyMik6CkRlciBCYWxsIGtvbW10IGF1ZiBEaWNoIHp1LCB1bmQgRHUgdmVyc3VjaHN0IGtyYW1wZmhhZnQsIFBldGVzIEJld2VndW5nZW4KbmFjaHp1bWFjaGVuLi4uLiB3aWUgZWluZmFjaCBlcyBkb2NoIGF1c3NhaCwgdW5kIGpldHp0IGlzdCBlcyBzbyBzY2h3ZXIgISEKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICBEdSBiZWdpbm5zdCBwbG9ldHpsaWNoIERlaW5lbiBTY2h3dW5nLi4uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgQmV2b3IgRHUgRGljaCB2ZXJzaWVoc3QsIGhvZXJzdCBEdSBlaW4gbGF1dGVzID4gVCBPIEsgSyBLIDwKRFUgU0NIRUlOU1QgR0VUUk9GRkVOIFpVIEhBQkVOICEhISEKCgpGcmVuZXRpc2NoZXIgSnViZWwgYnJhbmRldCBhdWYsIGFscyBEZWluIEJhbGwgd2VpdCBpbnMgb3V0ZmllbGQgaGluZWluZmxpZWd0LAp1bmQgZGVyIFN0YWRpb25hbnNhZ2VyIHZlcm1lbGRldCwgZGFzcyBHYXN0NiBzb2ViZW4gZWluZW4gaG9tZXJ1biBnZXNjaGxhZ2VuIAogIGhhdCAhISEhCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICBQZXRlIGtvbW10IHp1IERpciB1bmQgZ3JhdHVsaWVydCBEaXIuCltHcmF0czogU2NocnVtcGZpXSBTVVVVVVVVUFBQUEVFRUVFRUVSUlJSISEhISEhISEhIQpbR3JhdHM6IEppbWRpZ3JpeiBob2x0IGVpbmUgSGVpc3Nwb3AtV3Vyc3QgaGVyYXVzLCBnaWJ0IHNpZSBEaXIgdW5kIHNhZ3Q6Ckxhc3Mgc2llIERpciBzY2htZWNrZW4gISEhIV0KVG9ldGVyIGtudWRkZWx0IERpY2ggZ3JhdHVsYXRpdiBhdXMgZGVyIEZlcm5lLgpbR3JhdHM6IFd1ciBzcGllbHQgYXVzIEZyZXVkZSBlaW5lIFBhcnRpZSBHTyBtaXQgRGlyIC0gU1VQRVIhISFdCltHcmF0czogRnJvc2NoIFp1ZXJpbGV1XSBEcyBXYWhyIFN1cGVyciAhIQoKRGVyIGVyZm9sZ3JlaWNoZSBQaXRjaGVyIGJlZGFua3Qgc2ljaCBiZWkgYWxsZW4gR3JhdHVsYW50ZW4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1cHMuLiAoU251Z2dsZSwgIDMuIE1hciAxOTk1LCAwMzo0NjoyMik6CkhpLi4uCmhtbW0gYmVpbSBEdXJjaGxlc2VuIG1laW5lcyBBcnRpa2VscyBpc3QgbWlyIGF1ZmdlZmFsbGVuLCBkYXNzIGljaCBkYSB3b2hsCnNjaG5lbGxlciBtaXQgZGVtIFBhc3RlLUJlZmVobCBhbHMgbWl0IGRlbSBuYWNoZGVua2VuIHdhci4uLgpTb3JyeSBhbHNvIGZ1ZXIgZGVuIG51dHpsb3NlbiBBcnRpa2VsIHVuZCBlaW5lbiBHbHVlY2t3dW5zY2ggYW4gUnluZSwgZGVyCm1pY2ggaGVycmxpY2ggYXVmcyBHbGF0dGVpcyBnZWZ1ZWhydCBoYXQgOi0pCkF1ZiBtZWhyIHNvbGNoZSBnaW1taWNrcyBpbiBkZW4gU2VoZXJoYWV1c2VybiBob2ZmZW5kIDotKQoKU251Z2dsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBWT1JTSUNIVCBHSUZUSUchISEgKEJhcm9uLCAgMy4gTWFyIDE5OTUsIDEwOjA5OjE3KToKIyEgcm49QmFyb24gcnQ9Nzk0MjIxNTU5CkFlaCwgZ2Vob2VydCB2aWVsbGVpY2h0IGVoZXIgaW4gZGllIFJ1YnJpayBlbnR3aWNrbHVuZz8gTWljaCB3dWVyZGUKaW50ZXJlc3NpZXJlbiB3YXJ1bSBkZXIgIkVudGdpZnRlIiBTcHJ1Y2ggYmVpIFBZVEhPTnZlcmdpZnR1bmdlbj8/Pz8gbmljaHQKaGlsZnQuIFZpZWxsZWljaHQgbGllZ3QgZXMgZGFyYW4gZGFzIGRpZSBWaWVjaGVyIGdhcm5pY2h0IGdpZnRpZyBzaW5kIDopPwoKUmVkIEJhcm9uIChrYW5uIFB5dGhvbnMgZ3V0IGFiISkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxldHp0ZSBXb3J0ZSAoQWNyaW1vbiwgIDMuIE1hciAxOTk1LCAxMDozODo0NCk6CkdyYWQgZWJlbiBnZXNlaGVuOgoKVWdpIHRlaWx0IERpciBtaXQ6IGYKW1RvZDpdIEVpbiBXb2xwZXJ0aW5nZXIgaGF0IGdlcmFkZSBVZ2kgdW1nZWJyYWNodC4KCk5peCBmInVyIHVuZ3V0LCBVZ2kuCgpFdWVyIEdyb3N6ZXIKICAgIEFjcmltb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWT1JTSUNIVCBHSUZUSUchISEgKEJhcm9uLCAgMy4gTWFyIDE5OTUsIDEwOjQwOjE1KToKIyEgcm49QmFyb24gcnQ9Nzk0MTg3NTAzCk5PQ0ggZ2VmYWVocmxpY2hlciBzYWxzIFB5dGhvbnMgc2luZCBuYXR1ZXJsaWNoIGRpZSBnYW56IGtsZWluZW4gU2NobGFuZ2VuLgpEaWUgaGFiZW4gc29nYXIgQXJtZSA6KSkpKQoKRGllIGtsZWluZSBTY2hsYW5nZSB3aXJmdCBkZW4gQnVtZXJhbmcuCkRpZSBrbGVpbmUgU2NobGFuZ2Uga3JpZWNodCB3ZWl0ZXIgbmFjaCBOb3JkZW4uCkR1IGhhc3QgamV0enQgMTc3IExlYmVuc3B1bmt0ZSB1bmQgMzUgTWFnaWVwdW5rdGUuCkRpZSBtaXR0ZWxncm9zc2UgU2NobGFuZ2Ugd2VpY2h0IGRlbSBCdW1lcmFuZyBnZXJhZGUgbm9jaCByZWNodHplaXRpZyBhdXMuCgpSZWQgQmFyb24gKGRlciBzZWluZSBWb3JsaWViZSBmdWVyIFNjaGxhbmdlbiBsYW5nc2FtIGFibGVndCEpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWT1JTSUNIVCBHSUZUSUchIChBbmF0b2wsICAzLiBNYXIgMTk5NSwgMTU6MTQ6NTUpOgoKMS4gQW5uZSB0ZWlsdCBqZWRlbSBzY2hvbiBiZWltIEJldHJldGVuIHZvbiBNb3JvbiBmcmV1bmRsaWNoIG1pdCwgZGFzcwogICBzaWUgZ2VybmUgQmVzdWNoIGVtcGZhZW5ndC4uLiB1bmQgd2VyIHNpY2ggYmVpIGlociBncnVlbmRsaWNoIHVtLQogICBzaWVodCwgdmVyc3RlaHQgYXVjaCwgd2FydW0gZWluZSBXdWVyZ2VzY2hsYW5nZSBwbG9ldHpsaWNoIGdpZnRpZwogICBpc3QgKGF1Y2ggd2VubiBlcyAnZGVyJyBQaHl0b24gaGVpc3NlbiBzb2xsdGUuLmphamEpLgoyLiBXZXIgZGEgb2JlbiBydW1sYWV1ZnQgdW5kIHNpY2ggZGFzIHJlc3RsaWNoZSBNb3JvbiBub2NoIG5pY2h0IGFuZ2UtCiAgIHNjaGF1dCBoYXQsIGlzdCBzZWxic3Qgc2NodWxkLiBFcyBnaWJ0IGVpbiBHZWdlbmdpZnQgZ2VnZW4gZGllIFBoeXRvbi4KICAgV2FlciBqYSBzY2hhZGUsIHdlbm5zIGRlciBFbnRnaWZ0ZS1TcHJ1Y2ggYXVjaCB0YWV0ZS4KICAgV2l0emlnIGFsbGVyZGluZ3MsIGRhc3MgZGllIFNjaGxhbmdlIGF1Y2ggR2Vpc3RlciB2ZXJnaWZ0ZXQuIDspCgpBbHNvIChyZWQpIEJhcm9uLCBrZWluIEdydW5kLCBDYWx1bSB2b20gSGltbWVsIGhvbGVuIHp1IHdvbGxlbiAtIE1vcm9uCmlzdCBlaW5lIHRvbGxlIFN0YWR0LgoKQW5hdG9sIChHbG9lY2tuZXIgdm9uIE1vcm9uKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMZXR6dGUgV29ydGUgKEhhcmRpbCwgIDMuIE1hciAxOTk1LCAxNTozNjozMCk6CiMhIHJuPUFjcmltb24gcnQ9Nzk0MjIzNTI0CgpHcmFkIGViZW4gZ2VzZWhlbjoKCltUb2Q6XSBFaW4gc2NoYXJmZXMgUyBoYXQgZ2VyYWRlIEFjcmltb24gdW1nZWJyYWNodC4KCk5pY2h0cyBmdWVyIHVuZ3V0OiBlaW4gU3ByYWNocGZsZWdlcgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWT1JTSUNIVCBHSUZUSUchISEgKFplcGh5ciwgIDMuIE1hciAxOTk1LCAxNjo0OTozMCk6CiMhIHJuPUJhcm9uIHJ0PTc5NDE4NzUwMwpBbHNvLCB3ZW5uIER1IERpciBtYWwgZGllIE11ZWhlIGdlbWFjaHQgaGFldHRlc3QsIEFubmUgenUgZGVtIFRoZW1hCnp1IGJlZnJhZ2VuLCBoYWV0dGUgZGllIERpciB3YXMgdm9uIG1hZ2lzY2hlbiB1bmQgbGVpZGVyIGZlaGxnZXNjaGxhZ2VuZW4KRXhwZXJpbWVudGVuIG1pdCBkaXZlcnNlbiBTY2hsYW5nZW4gZXJ6YWVobHQuLiBTZWl0ZGVtIGlzdCBkYXMgQmllc3QKZWJlbiBnaWZ0aWcuCgpaZXBoeXIsIGltbWVyIG5vY2ggTW9yb24tRmFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVk9SU0lDSFQgR0lGVElHISAoQmFyb24sICAzLiBNYXIgMTk5NSwgMTc6NTA6MzcpOgojISBybj1BbmF0b2wgcnQ9Nzk0MjQwMDk1CjEuIGhhYmUgaWNoIG1pY2ggc2VociB3b2hsIGluIE1vcm9uIHVtZ2VzZWhlbiBiZXZvciBpY2ggZGllIFN0YWR0IGFscwpGaW5hbnpxdWVsbGUgZnVlciBtZWluZW4gSGF1c2JhdSB2ZXJ3ZW5kZXRlLgoyLiB2ZXJzdGVoZSBpY2ggdHJvdHogZGVzIHZvcmhhbmRlbmVuIEdlZ2VuZ2lmdGVzIG5pY2h0IHdhcnVtIGRlcgoiZW50Z2lmdGUiLVNwcnVjaCBuaWNodCBmdW5rdGlvbmllcnQuCjMuIHNwcmljaHQgZGFzIHJlbGV2YW50ZSBCdWNoIGluIGRlciBCaWJsaW90aGVrIHZvbiAiSW50ZWxsaWdlbnoiIGRlcgpTY2hsYW5nZW4sIG5pY2h0IGFiZXIgdm9uIEFybWVuIDopLgo0LiBnbGF1YmUgaWNoIGltbWVyIG5vY2ggbmljaHQgYW4gZ2lmdGlnZSBQeXRob25zY2hsYW5nZW4uIChEYXMgRElFIGJlemllaHQKc2ljaCB1ZWJyaWdlbnMgYXVmICJzY2hsYW5nZSIpCgphbnNvbnN0ZW4gZ2FueiBkZWluZXIgTWVpbnVuZywgTW9yb24gaXN0IGVpbmUgdG9sbGUgU3RhZHQhCk1GRwoKUmVkIEJhcm9uIDopLCBncmluc2VuZCwgaG9mZnQgZGFzIGVzIGJhbGQgZWluZSBNb3Jvbi1RdWVzdCBnaWJ0LgoKUFM6IGFlaCwgQW5hdG9sLiBFcyBoZWlzc3QgZ2xhdWIgaWNoIG5pY2h0IFBoeXRvbiBzb25kZXJuIFB5dGhvbiA6KSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFZPUlNJQ0hUIEdJRlRJRyEgKFN0YWhsZG9ybiwgIDMuIE1hciAxOTk1LCAxODoxMTowMSk6CiMhIHJuPUJhcm9uIHJ0PTc5NDI0OTQzNwpIbW1tbW1tbS4uLi4KRGVyIGxpZWJlIFN0YWhsZG9ybiBtdXNzIG1hbCB3aWVkZXIgc2VpbmVuIHVlYmVyZmx1ZXNzaWdlbiBTZW5mIGRhenUKYWJsYXNzZW4uCkFsc28gZXJzdG1hbCBnbGF1YmUgaWNoIHp1IHdpc3NlbiBkYXNzIG1hbiBzb3dvaGwgREVSIGFscyBhdWNoIERJRSBQeXRob24Kc2FnZW4ga2Fubi4KVW5kIHp3ZWl0ZW5zIHp1IEJhcm9ucyBBdXNzYWdlOgo+My4gc3ByaWNodCBkYXMgcmVsZXZhbnRlIEJ1Y2ggaW4gZGVyIEJpYmxpb3RoZWsgdm9uICJJbnRlbGxpZ2VueiIgZGVyCj5TY2hsYW5nZW4sIG5pY2h0IGFiZXIgdm9uIEFybWVuIDopLgprYW5uIGljaCBudXIgYW5tZXJrZW4sIGRhc3MgYWxsZSB2aWVjaGVyIGltIE1HIGJ1bW1pcyB6dXJ1ZWNrd2VyZmVuIGtvZW5uZW4uClNvZ2FyIGdlZmFlaHJsaWNoZSBCYWNrYmxlY2hlLCBSZWhlLCBIYWlmaXNjaGUgb2RlciBFbHN0ZXJuLiBEYSB3dW5kZXJuIG1pY2gKa2xlaW5lIFNjaGxhbmdlbiBhdWNoIG5pY2h0LgpPaywgc292aWVsIGFsc28gbWVpbiBTZW5mIGRhenUuCgogICAgICAgICAgICBTVEFITC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk8gVGVtcG9yYSEgTyBNb3JlcyEgKEFuYXRvbCwgIDMuIE1hciAxOTk1LCAxODoyMzo0NSk6CgpHZXNlaGVuIGluIE1vcm9uOgoKSG9lcnNhYWwgZGVyIEFrYWRlbWllLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuIHVuZCB3ZXN0ZW4uCkVpbiBMZWhyZXIgZGVyIEFrYWRlbWllLgpFaW4gU2NodWVsZXIgZGVyIEFrYWRlbWllLgpFaW4gU2NodWVsZXIgZGVyIEFrYWRlbWllLgpFaW4gTGVocmVyIGRlciBBa2FkZW1pZS4KPiAgIERlciBTY2h1ZWxlciBncmVpZnQgZGVuIExlaHJlciBtaXQgZWluZW0gTmFjaHRkb2xjaCBhbi4KICBEZXIgU2NodWVsZXIgdmVyZmVobHQgZGVuIExlaHJlci4KICBEZXIgTGVocmVyIGdyZWlmdCBkZW4gU2NodWVsZXIgbWl0IGVpbmVtIE5hY2h0c2FlYmVsIGFuLgogIERlciBMZWhyZXIgdHJpZmZ0IGRlbiBTY2h1ZWxlciBzZWhyIGhhcnQuClsuLi5dCgpBbmF0b2wgKCkKClBTOiBEZXIgTGVocmVyIHZlcmxvci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFZPUlNJQ0hUIEdJRlRJRyEgKEVuZ3l3dWNrLCAgMy4gTWFyIDE5OTUsIDE4OjI5OjQ1KToKIyEgcm49U3RhaGxkb3JuIHJ0PTc5NDI1MDY2MQpUamEuLi4KRGFzIGJlc3RlIGluIGRpZXNlbSBadXNhbW1lbmhhbmcgaXN0IGltbWVyIG5vY2ggZGVyIFdlc3BlbnNjaHdhcm0gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG5lZWJhbGwgYXVmIGRlciBIRSAoQmFtYnVsa28sICA0LiBNYXIgMTk5NSwgMDU6MzY6MjYpOgpXYXMgbWFjaHQgZGVubiBlaW4gU2NobmVlYmFsbCBhdWYgZGVyIEhvY2hlYmVuZT8/PwoKRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiwgd2VzdGVuLCBub3JkZW4gdW5kIG9zdGVuLgpFaW4gZmxpZWdlbmRlciBTY2huZWViYWxsLgpFaW5lIHdpZGVybGljaGUgS2FrZXJsYWtlLgpFaW5lIE1laXNlLgpFaW4gSGlud2Vpc3NjaGlsZC4KICBEZXIgU2NobmVlYmFsbCBncmVpZnQgRGljaCBtaXR0ZW4gaW0gR2VzaWNodCBhbi4KICBEZXIgU2NobmVlYmFsbCB2ZXJmZWhsdCBEaWNoLgo+ICAgRHUgZ3JlaWZzdCBkZW4gU2NobmVlYmFsbCBtaXQgZGVtIFNjaHdlcnQgYW4uCiAgRHUgdHJpZmZzdCBkZW4gU2NobmVlYmFsbCBzZWhyIGhhcnQuCkRlciBTY2huZWViYWxsIHNjaG1pbHp0IGRhaGluLgoKCkJBTUJVTEtPCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVk9SU0lDSFQgR0lGVElHISAoQ2FyYWRocmFzLCAgNC4gTWFyIDE5OTUsIDE2OjE0OjI0KToKIyEgcm49QW5hdG9sIHJ0PTc5NDI0MDA5NQpVbmQgaWNoIGRhY2h0ZSBpbW1lciwgZGFzIFZpZWNoIGhlaXNzdCBQeXRob24gdW5kIG5pY2h0IFBoeXRvbiwKQW5hdG9sLiAqZ3J1ZWJlbCogKm5hY2hkZW5rKiA6KSkKCiAgICAgICAgQ2FyYWRocmFzIGRlciBld2lnZSBQcm9waGV0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHaWZ0aWdlIFJpZXNlbnNjaGxhbmdlbiAoR3JpbW1ib3JuLCAgNS4gTWFyIDE5OTUsIDE1OjU2OjU1KToKClNpY2hlciBnaWJ0cyBHZWdlbmdpZnRlLiBLbGFyLiBBYmVyIGlzdCBkYXMgZWluIEdydW5kLCBkYXNzIGRlcgplbnRnaWZ0ZS1TcHJ1Y2ggbmljaHQgZnVua3Rpb25pZXJlbiBzb2xsdGU/IEZ1ZXIgamVkZSBWZXJnaWZ0dW5nIGdpYnRzIGRlbgprdXJwZnVzY2hlci4gTmEgdW5kPwoKRGVyIGVudGdpZnRlLVNwcnVjaCBpc3QgKHdpZSBkZXIgTmFtZSBzYWd0KSBlaW4gU3BydWNoIGdlZ2VuIFZlcmdpZnR1bmdlbi4KVW5kIG1pciBpc3RzIHZvZWxsaWcgZWdhbCwgV09IRVIgaWNoIHZlcmdpZnRldCBiaW4sIGljaCBlcndhcnRlLCBkYXNzIGRlcgpTcHJ1Y2ggd2lya3QuIFdlbm4gZXIgZGVubiBrbGFwcGVuIHNvbGx0ZS4uLgpXZW5uIGVyIG5pY2h0IHdpcmt0LCBtdXNzIG1hbnMgaGFsdCBhbmRlcnMgbmVubmVuLiBVbmQgaW0gWndlaWZlbHNmYWxsIGF1Y2gKYmVncnVlbmRlbi4gRGFiZWkgcmVpY2h0IG5pY2h0IChmaW5kZSBpY2ggd2VuaWdzdGVucykgd2llIGJlaSBkZXIgU2NobGFuZ2UgaW0KRnJhY2h0Z3V0LCBkYXNzIGVpbmUgZ2V3aXNzZSBMb2dpayBhdXMgZGVyIEtlbm50bmlzIGRlcyBCdWNoZXMgZW50bm9tbWVuCndlcmRlbiBrYW5uLi4uCkltbWVyaGluIGlzdCBkYSBlaW4gR2VnZW5taXR0ZWwgTkFIRSBkcmFuLCBhYmVyIGVpbiBTY2hvY2sgd2FycyBzY2hvbiBmdWVyCm1pY2ggYWxzIGRlciBTcHJ1Y2ggbmljaHQgd2lya3RlLi4uIDstKQoKQWxzbywgQmVpIFZlcmdpZnR1bmdlbiBzb2xsdGUgZGVyIFNwcnVjaCB3aXJrZW4sIGRhIGdpYnRzIG5peC4gU29uc3Qgc2luZHMKa2VpbmUgVmVyZ2lmdHVuZ2VuIHVuZCBzb2xsdGVuIGFscyBzb2xjaGUgYXVjaCBnZWtlbm50emVpY2huZXQgc2Vpbi4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LiBBbiB2aWVsZW0gZ2VzdG9yYmVuLCBhYmVyIG5vY2ggbmljaHQgYW4gR2lmdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRlciB1bmVyZmFocmVuZSBNYWdpZXIgKFRob3JpbiwgIDUuIE1hciAxOTk1LCAxOToxNjo0Nyk6Ck5ldWxpY2ggaW0gR3JpbW1zd2FsZCBiZWkgZGVyIEYmRToKRHUgYmVmaW5kZXN0IERpY2ggdm9yIGVpbmVtIHJpZXNpZ2VuIEdlYmFldWRlLCBhbiBkZW0gbWl0IGViZW5mYWxscyByZWNodApncm9zc2VuIEJ1Y2hzdGFiZW4gZGllIEluc2NocmlmdCBgYEZvcnNjaHVuZ3MtIHVuZCBFbnR3aWNrbHVuZ3NhYnRlaWx1bmcKZGVzIE1VRHMsIEluc3RpdHV0IGZ1ZXIgTW9uc3RlcmRlc2lnbicnIGFuZ2VicmFjaHQgaXN0LiBEZXIgRWluZ2FuZyBkZXIKRiZFIGJlZmluZGV0IHNpY2ggaW0gTm9yZGVuLiBOZWJlbiBkZW0gRWluZ2FuZyBpc3QgZWluIGtsZWluZXMgU2NoaWxkCmFuZ2VicmFjaHQuIEltIFdlc3RlbiBmdWVocnQgZWluIFdhbGR3ZWcgaW4gZGVuIEdyaW1tc3dhbGQuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiB3ZXN0ZW4gdW5kIG5vcmRlbi4KRWluIEJsdXRmbGVjay4gWy9kL2ViZW5lL2ZyYWdnbGUvb2JqL2JsdXRmbGVjayMxOTQ2ODNdCkVpbiBCbHV0ZmxlY2suIFsvZC9lYmVuZS9mcmFnZ2xlL29iai9ibHV0ZmxlY2sjMTk0NjgyXQpFaW4gV2FlY2h0ZXIuIFsvcGxheWVycy9yb2NodXMvcXVlc3RfM3BsYXllci9tb24vZXdhZWNodGVyIzE4NDM3NV0KIG4KRGVyIFdhZWNodGVyIHNhZ3Q6IER1IGJpc3Qgbm9jaCBuaWNodCBlcmZhaHJlbiBnZW51ZywgdW0gZGEgcmVpbiB6dSBnZWhlbgp1bmQgYXVjaCB1bmJlc2NoYWRldCB3aWVkZXIgaGVyYXVzIHp1IGtvbW1lbi4uLiBEdSBzb2xsdGVzdCBkYSBsaWViZXIgZXJzdApyZWluZ2VoZW4sIHdlbm4gRHUgZXMgYmlzIHp1bSBLcmllZ2VyIGdlc2NoYWZmdCBoYXN0LgouLi4KClNldWZ6LCBpY2ggd3Vzc3RlIGRvY2gsIGRhc3MgaWNoIGVpbmZhY2ggenUgdW5lcmZhaHJlbiBiaW4gKmdyaW5zKgpFaW4gc2ljaCBqZXR6dCB0cmFpbmllcmVuZGVyIFRob3JpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdpZnRpZ2UgUmllc2Vuc2NobGFuZ2VuIChCb2luZywgIDUuIE1hciAxOTk1LCAxOTozOTo0Nyk6CiMhIHJuPUdyaW1tYm9ybiBydD03OTQ0MTU0MTUKSWNoIGRlbmtlIG5pY2h0LCBkYXNzIGRlciBlbnRnaWZ0ZSBzcHJ1Y2ggaW1tZXIgd2lya2VuIHNvbGx0ZSAuLi4gZXMgZ2lidApzY2hsaWVzc2xpY2ggdmVyc2NoaWVkZW5lIEdpZnRlLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgc2FndCBtYW4gZGF6dS4uLiAoT2V0dGksICA2LiBNYXIgMTk5NSwgMTQ6MDc6MjcpOgpNaWNoIGVycmVpY2h0IHNvZWJlbiBkaWVzZSBNYWlsLi4uCgpUaXRlbDogLi4uCjY2IDY5IDY2IDY5Li4uLiB1bmQga2VpbmVyIGdlaHQgcmFuIDooCgpFaW4gdW5iZWthbm50IGJsZWliZW4gd29sbGVuZGVyIFNhbmR0aWdlcgoKVGphLCBzZWxic3Qgc29saWRlIFdpcmtlbmRlIFNhbmR0aWdlciwgc2NoZWluZW4gdW5iZWthbm50ZSwgaGVpbWxpY2hlCkdlbHVlc3RlIGluIHNpY2ggenUgdHJhZ2VuLCBobW1tIGljaCBnbGF1YmUgbWlyCmZlaGx0IGRpZSBub2V0aWdlIERpc2tyZXRpb24gZnVlciBkaWVzZW4gR2VzY2hhZWZ0c3p3ZWlnLCBzZWxic3Qgdm9uIGVpbmVtCkdvdHQga2FtIHNjaG9uIGVpbiBBbnJ1Zi4uLgooSWNoIHNhZyBudXIgQnVtbSBUc2NoYWsgOy0pKSkgKQoKT2V0dGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGluIGRlLnJlYy5tb3RvcnJhZDogKFllbmRpLCAgNi4gTWFyIDE5OTUsIDE0OjE5OjM0KToKClVuZCBub2Nod2FzIGlzdCBndXQgYW4gUmVubnN0cmVja2VuOgpXZW5uIGR1IGdyYWQgZ3V0IGRyYXVmIGJpc3QgdW5kIG1laW5zdCAqc2NobmVsbCogdW50ZXJ3ZWdzIHp1IHNlaW4sCnVuZCBlcyBmbGllZ3QgKmF1c3Nlbiogd2FzIGZsYWNoZXMgYnVudGVzIHZvcmJlaSB1bmQgc3RlbGx0IHNpY2ggbmFjaApkZXIgS3VydmUgYWxzIHRyYWluaWVyZW5kZXIgUHJvZmkgcmF1cywgZGFubiBzaWVodCBtYW4sIHdhcyBtYW4gbm9jaAphbiBSZXNlcnZlbiAqaGFldHRlKiEKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcyBzYWd0IG1hbiBkYXp1Li4uIChCb2luZywgIDYuIE1hciAxOTk1LCAxNDoyMjoxMyk6CiMhIHJuPU9ldHRpIHJ0PTc5NDQ5NTI0NwpBbGxlcmRpbmdzIGthbSBrZWluZSBBbnR3b3J0IC4uLiBoYXQgdWViZXJoYXVwdCBzY2hvbiBqZW1hbmQgZWluZSBBbnR3b3J0CmVyaGFsdGVuPwogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPZXR0aWZvbiBmaW5kIGljaCBndXQhIDotKSAoU2NocnVtcGZpLCAgNi4gTWFyIDE5OTUsIDE1OjE5OjA3KToKdG0gb2V0dGkgNjYgNjkgNjYgNjkKRHUgdGVpbHN0IE9ldHRpIG1pdDogNjYgNjkgNjYgNjkKPktuYWNrYXJzY2ggT2V0dGkgdGVpbHQgRGlyIG1pdDogKnBydXV1dXV1dXV1dXVzdCosIHVuZCB3aWUga2FubiBpY2ggZXMgRGlyCktuYWNrYXJzY2ggT2V0dGkgdGVpbHQgRGlyIG1pdDogYmVzb3JnZW4gPz8/PyA7LSkpCgp0bSBvZXR0aSBhbHNvIGJpdHRlLCBkYXNzIG11c3N0IHNjaG9uIERVIHdpc3NlbiA6LSkKRHUgdGVpbHN0IE9ldHRpIG1pdDogYWxzbyBiaXR0ZSwgZGFzcyBtdXNzdCBzY2hvbiBEVSB3aXNzZW4gOi0pCgpLbmFja2Fyc2NoIE9ldHRpIHRlaWx0IERpciBtaXQ6IEFiZXIgc28gd2llIGljaCBEaWNoIGtlbm5lLCBtdXNzIGljaCBEaXIgZWhoCktuYWNrYXJzY2ggT2V0dGkgdGVpbHQgRGlyIG1pdDogZGllIFN0aWVmZWwgbGVja2VuLCB1bmQgc2FnZW4gTWFlbm5lciBzaW5kCktuYWNrYXJzY2ggT2V0dGkgdGVpbHQgRGlyIG1pdDogc2NoZWlzc2UgOy0pKSkKCktuYWNrYXJzY2ggT2V0dGkgdGVpbHQgRGlyIG1pdDogQWxzbyBIZXJyaW4sIGJlZmllaGwgdW5kIGljaCBkaWVuZSA7LSkpKQoKdG0gb2V0dGkgc2FnIHdhcyBtYWVubmVyZmVpbmRsaWNoZXMKRHUgdGVpbHN0IE9ldHRpIG1pdDogc2FnIHdhcyBtYWVubmVyZmVpbmRsaWNoZXMgOy0pKQoKPktuYWNrYXJzY2ggT2V0dGkgdGVpbHQgRGlyIG1pdDogTWFlZW5lciBzaW5kIHNjaHdhbnpnZXN0ZXVlcnRlIFZvbGxpZGlvdGVuLApLbmFja2Fyc2NoIE9ldHRpIHRlaWx0IERpciBtaXQ6IGRpZSBuaWNodCBhdWYgZGllIEJlZHVlcmZuaXNzZSBlaW5lciBGcmF1CktuYWNrYXJzY2ggT2V0dGkgdGVpbHQgRGlyIG1pdDogZWluZ2VoZW4ga29lbm5lbiAoaG1tLCBkYSBpcyBzb2dhciB3YXMgZHJhbiwKS25hY2thcnNjaCBPZXR0aSB0ZWlsdCBEaXIgbWl0OiBpbiBkZW4gbWVpc3N0ZW4gRmFlbGxlbikKdG0gb2V0dGkgKmFwcGxhdWRpZXIqIDotKSkpCkR1IHRlaWxzdCBPZXR0aSBtaXQ6ICphcHBsYXVkaWVyKiA6LSkpKQoKU2NocnVtcGZpIGlzIGJlZ2Vpc3RlcnQgOi0pKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9ldHRpZm9uIGZpbmQgaWNoIGd1dCEgOi0pIChZZW5kaSwgIDYuIE1hciAxOTk1LCAxNToyMjo0Nik6CiMhIHJuPVNjaHJ1bXBmaSBydD03OTQ0OTk1NDcKCj5NYWVlbmVyIHNpbmQgc2Nod2Fuemdlc3RldWVydGUgVm9sbGlkaW90ZW4sCj5kaWUgbmljaHQgYXVmIGRpZSBCZWR1ZXJmbmlzc2UgZWluZXIgRnJhdQo+ZWluZ2VoZW4ga29lbm5lbiAoaG1tLCBkYSBpcyBzb2dhciB3YXMgZHJhbiwKPmluIGRlbiBtZWlzc3RlbiBGYWVsbGVuKQoKT2V0dGksIE9ldHRpLi4uIEZhbGwgdW5zIG5vY2ggaW4gZGVuIFJ1ZWNrZW4sIFZlcnJhZXRlciEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhcyBzYWd0IG1hbiBkYXp1Li4uIChHdXlicnVzaCwgIDYuIE1hciAxOTk1LCAxNzo1Nzo1Mik6CiMhIHJuPUJvaW5nIHJ0PTc5NDQ5NjEzMwpLbGFyIC4uLgpTdGFtbWt1bmRlbiB1bmQgRXh2ZXJsb2J0ZSBoYWJlbiBpbW1lciBlaW4gb2ZmZW5lcyBPaHIuLnNvZ2FyIHVlYmVyIG5lCnZpZXJ0ZWwgU3R1bmRlLgpBYmVyIE9ldHRpaSBiaWV0ZXQgbmljaHQgYWxsZXMsIHdhcyBtYW4gc2ljaCBzbyB3dWVuc2NodC4uCkd1eWJydXNoLi4uaGF0IGRpZSBTY2h3YWVjaGVuIGRlcyBPbi1MaW5lIC1TZXJ2aWNlIGVudGRlY2t0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqbGFhYWFhYWFhZ2cqIChTdGFobGRvcm4sICA2LiBNYXIgMTk5NSwgMTg6MDE6NTMpOgpPaywgamVkZXIsIGRlciBnbGF1YnQgenUgd2lzc2VuLCB3YXMgZWluIExBRyBpc3QgbWFsIGhlcnNlaGVuICEKWmVpdDogRWluIG5vcm1hbGVyIFdvY2hlbnRhZywgMTg6MDAKT3J0OiBMaW56LCBPZXN0ZXJyZWljaC4KCnRyYWNlcm91dGUgbXVkIHVuaS1tdWVuc3Rlci5kZSA6Cgp0cmFjZXJvdXRlIHRvIFNBTlRBTkEuVU5JLU1VRU5TVEVSLkRFICgxMjguMTc2LjE3NS4xMyksIDMwIGhvcHMgbWF4LCA0MCBieXRlCnBhY2tldHMKIDEgIEZEREktU0MgKDE0MC43OC4xOTkuMzEpICA5IG1zICA4IG1zICA3IG1zCiAyICBKS1VSVEwwMS5FRFZaLlVuaS1MaW56LkFDLkFUICgxNDAuNzguMS4xKSAgNyBtcyAgOCBtcyAgOCBtcwogMyAgTGluei5BQ08ubmV0ICgxOTMuMTcxLjIyLjE3KSAgNyBtcyAgNyBtcyAgNyBtcwogNCAgV2llbi5hY28ubmV0ICgxOTMuMTcxLjE2LjEpICAzNSBtcyAgNDMgbXMgIDI1IG1zCiA1ICBWaWVubmEtRUJTMS5lYm9uZS5uZXQgKDE5Mi43Ni4yNDMuNykgIDE5IG1zICAyMiBtcyAgMjcgbXMKIDYgIFBhcmlzLUVCUzIuRWJvbmUubmV0ICgxOTIuMTIxLjE1Ni4xNykgIDkzIG1zICA2OSBtcyAgNzYgbXMKIDcgIENlcm4tRUJTMS5FYm9uZS5ORVQgKDE5Mi4xMjEuMTU3LjkpICAxNDUgbXMgIDE1NSBtcyAgMTgyIG1zCiA4ICAqICogR2VuZXZhMS5kYW50ZS5uZXQgKDE5NC40MS4wLjQ5KSAgMjg0IG1zCiA5ICBBbXN0ZXJkYW0xLmRhbnRlLm5ldCAoMTk0LjQxLjAuMzMpICA0NjQgbXMgIDQyNCBtcyAgNDE5IG1zCjEwICBhbXN0ZXJkYW02LmVtcGIubmV0ICgxOTMuMTcyLjQuOCkgIDI2NSBtcyAgMzAyIG1zICAyOTUgbXMKMTEgIGR1ZXNzZWxkb3JmMi5lbXBiLm5ldCAoMTkzLjE3Mi40LjEyKSAgNDAxIG1zICAzNjUgbXMgIDMyMCBtcwoxMiAgKiAqIGlwZ2F0ZTIud2luLWlwLmRmbi5kZSAoMTkzLjE3NC43NC45NCkgIDI4MSBtcwoxMyAgKiAqICoKMTQgIElQR1ctMS5VTkktTVVFTlNURVIuREUgKDEyOC4xNzYuMi4xNDkpICA0MTIgbXMgIDQ5MiBtcyAgNTY0IG1zCjE1ICAqIFdJTklQLTIuVU5JLU1VRU5TVEVSLkRFICgxMjguMTc2LjIuMTQ1KSAgNTAyIG1zICA0MTAgbXMKMTYgIFNBTlRBTkEuVU5JLU1VRU5TVEVSLkRFICgxMjguMTc2LjE3NS4xMykgIDU2NCBtcyAgNDI4IG1zICoKClVuZCBkYSByZWdlbiBzaWNoIHNvIG1hbmNoZSBEZXV0c2NoZSB1ZWJlciAiTGFncyIgYXVmLiBEQVMgaXN0IGVpbiBMYWcgIQoKCiAgICAgIFNUQUhMLCBkZXIgZGllc2UgdmVyZmx1Y2h0ZW4gVW13ZWdlIHVtIDEwIEVja2VuIGhhc3N0IHVuZCBlaW5lClN0YW5kbGVpdHVuZyBuYWNoIG11ZW5zdGVyIHdpbGwuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqbGFhYWFhYWFhZ2cqIChTdGFobGRvcm4sICA2LiBNYXIgMTk5NSwgMTg6MTg6MDYpOgojISBybj1TdGFobGRvcm4gcnQ9Nzk0NTA5MzEzCmFlaC4uLiB6dSBtZWluZW0gdm9yaWdlbSBBcnRpa2VsOiAgTWFuIGJlYWNodGUgZGllIFN0ZXJuY2hlbi4gbm9ybWFsZXJ3ZWlzZQpzaW5kcyBlaCBtZWhyLi4uCgogICAgU1RBSEwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpyZWJvb3QtbGFnIChUaG9yaW4sICA2LiBNYXIgMTk5NSwgMTk6NTI6MTYpOgpXZXIgc2ljaCB1ZWJlciAnaGFldWZpZ2UgcmVib290cycgb2RlciAnbGFnJyBoaWVyIGJlc2Nod2VydCwgZGVyIHRlc3RlIGF1Y2gKbWFsIHRlbG5ldCAxMjkuMTYuMTE3LjIxIDE4MTIuCkRvcnQgaXN0IGVpbiBMYWcgd2lya2xpY2ggbm9jaCBlaW4gTGFnLCBjYSAxMCBNaW51dGVuIGtlaW5lCkNvbW1hbmRvYXVzZnVlaHJ1bmcsIHVuZCBSZWJvb3QgaXN0IGNhIGFsbGUgNi04IFN0dW5kZW4uIEFsc28gYmVzY2h3ZXJ0IGV1Y2gKbmljaHQgc29uZGVybiBnZW5pZXN0IGVzIGhpZXIgISEhCklzdCB3aXJrbGljaCBzY2huZWxsLi4uClRob3JpbiwgZGVyIG1hbCBoaWVyIHVuZCBtYWwgZG9ydCBndWNrdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR0VMRCEgKEFuYXRvbCwgIDYuIE1hciAxOTk1LCAyMDo0Njo0Mik6CgpJbm5lbmhvZi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRvc3Rlbi4KMzcgTXVlbnplbi4KODIgTXVlbnplbi4KNDggTXVlbnplbi4KNzkgTXVlbnplbi4KCkFoYS4gU28gc2Nob2VuIGF1ZiBrbGVpbmUgSGFldWZjaGVuLi4uCgpBbmF0b2wgKCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkViZW4gcGFzc2llcnQ6IChIYXdrLCAgNi4gTWFyIDE5OTUsIDIyOjMxOjUxKToKRGEgbGVzZSBpY2ggZ2VyYWRlIG1hbCBtZWluZSB3b2hsdmVyZGllbnRlIFplaXR1bmc6Cj4gbm4KUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiA0MiB2b24gNjEKClJlOiBEaWUgQW5mYWVuZ2VyIHdlcmRlbiBpbW1lciBzY2hsaW1tZXIuLi4uIChZZW5kaSwgIDIuIE1hciAxOTk1LCAyMToyMToxNyk6CihCZXp1ZzogQXJ0aWtlbCA4IHZvbiBTbm9va2VyIHZvbSAgMS4gTWFyIDE5OTUsIDEwOjEzOjAyKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgIEUKRXMgaXN0IHNjaGxlY2h0ZXIgU3RpbCwgamVtYW5kZW0sIGRlciBnZXJhZGUgdWViZXIgZGllIE5hYmxhIGdld3VwcGVydCBpc3QKKGFlaC4uLiBlZ2FsKQp1bmQgZXMgZGFoZXIgc2Nob24gc2Nod2VyIGdlbnVnIGhhdCwgb2JlbmRyZWluIGF1Y2ggbm9jaCBzZWluZSBBdXNydWVzdHVuZyB6dQprbGF1ZW4uIERhcyBoYWJlIGljaCB6dSBBbmR5cyBaZWl0ZW4gbmljaHQgYWt6ZXB0aWVydCwgdW5kIGljaCB3ZXJkZSBtaWNoCmF1Y2ggamV0enQgbmljaHQgZGFyYW4gZ2V3b2VobmVuLiBTb2xjaGUgTGV1dGUgZ2Vob2VyZW4gdWViZXIncyBLbmllCmdlbGVndCEhIQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgIFkKWWVuZGkgZGVyIEV3aWdlIFdlaXNlCihkZXIgc2ljaCBnZXJhZGUgZXJuc3RoYWZ0IEdlZGFua2VuIHVlYmVyIGRpZSBQcnVlZ2Vsc3RyYWZlIG1hY2h0Li4uKQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICA+Cj4gbm5Nb3Jnb24gcnVmdDogV2VyIGhhdCBkYXMgWmV1ZyBhdWYgVGFtaWJhciBnZWtsYXV0Pz4gbm5Nb3Jnb24KCgoKClRqYS4gWWVuZGkgaGF0dGUgcmVjaHQuIEVzIGlzdCBzY2hsZWNodGVyIFN0aWwsIGFiZXIgZXMgcGFzc2llcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKmxhYWFhYWFhYWdnKiAoR3V5YnJ1c2gsICA3LiBNYXIgMTk5NSwgMDg6MjA6MjIpOgojISBybj1TdGFobGRvcm4gcnQ9Nzk0NTA5MzEzCmhtbS4uLmljaCBoYXR0ZSBzY2hvbiBtYWwgdWViZXIgODAwbXMgbWl0IDMwJXBhY2tldHMgbG9zdC4udW5kIGljaCBnbGF1YiBLQQpsaWVndCBub2NoIHNvIGdyYWQgaW4gRGV1dHNjaGxhbmQgOikKR3V5YnJ1c2gKZnJldXQgc2ljaCBhdWNoIHVlYmVyIExBR1M6IG1laHIgWmVpdCB6dW0gTGFiZXJuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogcmVib290LWxhZyAoQm9pbmcsICA3LiBNYXIgMTk5NSwgMTA6Mzk6MzApOgojISBybj1UaG9yaW4gcnQ9Nzk0NTE1OTM2CkFsbGUgNi04IFN0dW5kZW4/IE11c3MgaWNoIGphIGVpbiBXYWhuc2lubnNnbHVlY2sgZ2VoYWJ0IGhhYmVuOgpLaW5nZG9tcyBoYXMgYmVlbiB1cCBmb3IgMTIgaG91cnMgMzAgbWludXRlcyA0NCBzZWNvbmRzLgo6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpyZWJvb3QgLyBsYWcgKFRob3JpbiwgIDcuIE1hciAxOTk1LCAxMzozOToyNSk6CjEuKSBnbHVlY2sgZ2VoYWJ0LCB3aXJrbGljaCwgZGVubiBkZXIgcmVib290IHd1cmRlIGdlcmFkZSBnZXN0YXJ0ZXQuLi4KMi4pIGhhc3QgZHUgZGlyIGRhcyBMYWcgZGFmdWVyIGFuZ2VzY2hhdXQgdW5kIGdlbm9zc2VuID8/ClRob3Jpbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT3BzPyAoQW5hdG9sLCAgNy4gTWFyIDE5OTUsIDE0OjI3OjMwKToKCldpZSBoZWlzc3QgRHUgZGVubiA/IG5hcnJlbmJhbGwKTmV1ZXIgU3BpZWxlci4KV2FlaGxlIGVpbiBQYXNzd29yZDoKCgpadXIgRXJpbm5lcnVuZzogRXMgaXN0ICB2IGUgciBiIG8gdCBlIG4sIGFuZGVyZSBTcGllbGVyIGFuenVncmVpZmVuIQpEYXMgZ2lsdCBhdWNoIGZ1ZXIgRnJvZXNjaGUsIGJlaSBkZW5lbiAiRWluIEZyb3NjaCBuYW1lbnMgWFhYWFgiIHN0ZWh0LgoKUGFzc3dvcmQgYml0dGUgbm9jaG1hbCBlaW5nZWJlbjoKCkR1IG5pbW1zdCBzY2hvbiBhbSBTcGllbCB0ZWlsIQpWZXJ3ZW5kZSBEZWluZSBhbHRlIHN0ZXJibGljaGUgSHVlbGxlIC4uLgoKCkFoYS4gV2FzIGRlbm4gbnVuPwpFZ2FsLCBpY2ggd2FyIHNjaG5lbGxlciA7KQoKQW5hdG9sICgpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbSBXYWxkLCBkYSBzaW5kIGRpZSBSYWV1aGFldWJlci4uLiAoWWVuZGksICA3LiBNYXIgMTk5NSwgMTY6MTA6MDYpOgoKTmV1bGljaCwgYXVmIGRlciBBa2FkZW1pZXN0cmFzc2UuLi4KCiJFaW4gR2VidWVzY2gga29tbXQgYW4uCiBEZXIgQmF1bSBiZXdlZ3Qgc2ljaC4gICIKCkphIHdhcyBkZW5uIG51bj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogcmVib290LWxhZyAoUm9uZGEsICA3LiBNYXIgMTk5NSwgMjE6MDc6NDEpOgojISBybj1UaG9yaW4gcnQ9Nzk0NTE1OTM2CkhhbGxvIFRob3JpbiEKRGVpbmUgTXVkZW1wZmVobHVuZyB3YXIgZWNodCBndXQgOikKCldoYXQgaXMgeW91ciBuYW1lOiByb25kYQpOZXcgY2hhcmFjdGVyLldlbGNvbWUgdG8gS2luZ2RvbXMgTXVkcy4KUGFzc3dvcmQ6UGFzc3dvcmQ6IChhZ2FpbikKWW91J3ZlIHNvbHZlZCBlbm91Z2ggcXVlc3RzIHRvIGFkdmFuY2UuCllvdSBoYXZlIG5vdCB0cmF2ZWxsZWQgZW5vdWdoIHRocm91Z2ggdGhlIGtpbmdkb21zIHlldC4KWW91IG11c3QgZXhwbG9yZSBzb21lIG1vcmUgb2YgdGhlIHdvcmxkIGJlZm9yZSB5b3UgY2FuYWR2YW5jZSBhIGxldmVsLgoKTmFqYSwgZGFzIGdlaHQgbGVpZGVyIGltIE1HIG5pY2h0LCBkYXNzIE5ld2JpZXMgc29mb3J0IGF1ZnN0ZWlnZW4ga29lbm5lbiAtCm9kZXIgaGFsdCBhdWNoIG5pY2h0IDopCi4uLiB1bmQgZGFzIE11ZCB3YXIgc2Nob24gZ2FuemUgMiBTdHVuZGVuIHVwLi4uClNjaG11bnplbG5kLAogICAgICAgICAgIFJvbmRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptZWhyIEFscyBtYXhpbWFsZSBBUHMgKFJhZmFlbCwgIDcuIE1hciAxOTk1LCAyMTo1OTo0NCk6Cj5saXN0ZQouLi4KICBEYXMgR2VoZWltbmlzIGRlciBNYXlhICAgICAgICAgICAgICAgMzUgICAxMiAgICAgbmVpbiAgICBCZXJ0cmFtCi4uLgogIFJldHRlIFJlZCBGcmFnZ2xlICAgICAgICAgICAgICAgICAgICA4MCAgIDE1ICAgICBuZWluICAgIEZyYWdnbGUKLi4uCj5zY29yZQpEdSBoYXN0IDMzNjU3MTcgRXJmYWhydW5nc3B1bmt0ZSwgMTU1MCBBYmVudGV1ZXJwdW5rdGUoMTU5MCksCgpXZW5uIGljaCBkaWUgMiBRdWVzdCBsb2VzZSwgaGFiZSBpY2ggMTY2NSAoMTU5MCkgQVBzLgoKVG9sbCwgb2Rlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBtZWhyIEFscyBtYXhpbWFsZSBBUHMgKFlhbnRybywgIDguIE1hciAxOTk1LCAwODo1MTowNSk6CiMhIHJuPVJhZmFlbCBydD03OTQ2MDk5ODQKCkRhcyBtYWcgZGFyYW4gbGllZ2VuLCBkYXNzIGVpbmUgUXVlc3QgbmljaHQgbWVociBhbmdlc2NobG9zc2VuIGlzdCwgZGllIER1CmFiZXIgZ2VtYWNodCBoYXN0Li4gYWxzbyBrZWluIFNjaG1hcnJuLCBzb25kZXJuIExvZ2lrIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3aXIgZ3JhdHVsaWVyZW4gKFNudWdnbGUsICA4LiBNYXIgMTk5NSwgMTk6NDg6MDEpOgpXaXIgZ3JhdHVsaWVyZW4gSm9mIGdhbnogaGVyemxpY2ggenVtIEdlYnVydHN0YWchIQoKRXIgaXN0IGpldHp0IDMwMCBUYWdlIGFsdCB1bmQga2VpbiBiaXNzY2hlbiAqKioqKioqKioKKHdlbmlnZXIgZ29ldHRsaWNoPykgOi0pCgpIRVJaTElDSEVOIEdMVUVDS1dVTlNDSCEhISA6LSkKClNudWdnbGUsIERhY2FwbywgRXRhaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvdCBvZGVyIG5pY2h0IHRvdD8gKEFuYXRvbCwgIDkuIE1hciAxOTk1LCAwMToyNTozOSk6Cgo+IGtsZXR0ZXJlIGluIGxvY2gKRHUgdmVybGllcnN0IGRlbiBIYWx0IHVuZCBzdHVlcnp0IG1pdCBlaW5lbSBsYXV0ZW4gU2NocmVpIGluIGRpZSBUaWVmZS4KRHUgcnVmc3Q6IEFpZWVoaGhoLi4uCkR1IGdsYXVic3QgZXMga2F1bSwgYWJlciBEdSBoYXN0IGRlbiBzY2hyZWNrbGljaGVuIFN0dXJ6IHVlYmVyc3RhbmRlbi4KVW0gRGljaCBoZXJ1bSBzaW5kIGRpY2tlIEVyZHdhZW5kZS4gRGVyIEJhY2ggZmxpZXNzdCBkdXJjaCBlaW5lbiBrbGVpbmVuCnNjaG1hbGVuIFR1bm5lbCB1bnRlcmlyZGlzY2ggd2VpdGVyLiBEdSBmcmFnc3QgRGljaCwgb2IgZXMgZGFzIHdpcmtsaWNoCndlcnQgd2FyLiBVZWJlciBEaXIgc2NoZWludCBkdXJjaCBlaW5lIHNjaG1hbGUgT2VmZm51bmcgZGllIFNvbm5lIGhlcmVpbi4KRXMgZ2lidCBrZWluZSBzaWNodGJhcmVuIEF1c2dhZW5nZS4KRWluIGhhdWNoZHVlbm5lciwgd2Vpc3NlciBTY2hsZWllci4KW1RvZDpdIERpZSBFcmRncnViZSBoYXQgZ2VyYWRlIEhvcHBsYSB1bWdlYnJhY2h0LgoKT3BzPwpBbmF0b2wgKCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkphIHdhcyBkZW5uIG51PyAoTWFyZHVrLCAgOS4gTWFyIDE5OTUsIDAxOjQ3OjAxKToKQWVuZGVybiBEaW5nZSBpaHIgR2V3aWNodCBkeW5hbWlzY2g/IFNpZWh0IGphIGZhc3Qgc28gYXVzOgogZ3QKRHUgZ2lic3QgSG9wcGxlciAxMDAwIE11ZW56ZW4uCj4gSG9wcGxlciBnaWJ0IERpciAxMDAwIE11ZW56ZW4uCmd0CkhvcHBsZXIga2FubiBuaWNodHMgbWVociB0cmFnZW4uCgpIb3BwbGVyIGhhdCB3YWVocmVuZGRlc3NlbiBnYXJhbnRpZXJ0IE5JQ0hUUyBnZXRhbiEKCk1hcmR1ayAobmFjaGRlbmtsaWNoIGRlbiBLb3BmIHdpZWdlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2lyIGdyYXR1bGllcmVuIChDYXJhZGhyYXMsICA5LiBNYXIgMTk5NSwgMTY6MTk6NDEpOgojISBybj1TbnVnZ2xlIHJ0PTc5NDY4ODQ4MQpUb2xsICEhISBBcHBsYXVzIDopKSBVbmQgd2llIHZpZWwgUHJvemVudCBkYXZvbiBzYXNzCkpvZiBuaWNodCB2b3IgZGVtIFJlY2huZXI/IDopKSBXdWVyZGUgbWljaCBkb2NoCm1hbCBpbnRlcmVzc2llcmVuLgoKICAgICAgICAgICBmcm9laGxpY2ggZ3JpbnNlbmQgICAgICAgICAgQ2FyYWRocmFzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSmEgd2FzIGRlbm4gbnU/IChDYXJhZGhyYXMsICA5LiBNYXIgMTk5NSwgMTY6Mjc6NTUpOgojISBybj1NYXJkdWsgcnQ9Nzk0NzEwMDIxCkFsbGxsbGxsbGxzbywgbmVobWVuIHdpciBtYWwgYW4sIEhvcHBsZXIga2FubiAyMCBFaW5oZWl0ZW4gdHJhZ2VuLgpHZXdpY2h0c2VpbmhlaXRlbiwgd2FzIGF1Y2ggc29uc3QuClVuZCBNdWVuemVuIGhhYmVuIGVpbiBHZXdpY2h0LCBzYWdlbiB3aXIgbWFsIDEwMDAgTXVlbnplbiB3aWVndAplaW5lIEVpbmhlaXQuIE5hdHVlcmxpY2ggbXVzcyBhYmVyIGVpbmUgZWluemlnZSBNdWVuemUgYXVjaCBldHdhcwp3aWVnZW4gdW5kIHdlbmlnZXIgYWxzIDEga2FubiBzaWUgamEgZGFubiBuaWNodCB3aWVnZW4uIEFsc28gd2llZ3QKZWluZSBNdWVuemUgYXVjaCAxLiBMb2dpc2NoLiBXZW5uIGVyIGpldHp0IGdlcmFkZSAxMDAxIE11ZW56ZW4gYmVpIHNpY2ggaGF0CihvZGVyIGF1Y2ggMTUwMCBvZGVyIDE4MDAgb2Rlci4uLiBkaWUgYXVjaCBhbGxlIDEgd2llZ2VuIHd1ZXJkZW4pCnVuZCBtYXhpbWFsIHRyYWVndCwgZGFubiBnaWJ0IGVyIDEwMDAgd2VpdGVyLCBoYXQgaW1tZXIgbm9jaCBlaW5lLCB0cmFlZ3QKYWxzbyBpbW1lciBub2NoIDIwIEVpbmhlaXRlbiwgYWxzbyBtYXhpbXVtLiBXZW5uIG1hbiBpaG0gamV0enQgZXR3YXMgZ2ViZW4Kd2lsbCwgZ2VodCBkYXMKbmljaHQsIHdlaWwgZXIgZWJlbiBuaWNodHMgbWVociB6dXNhZXR6bGljaCB0cmFnZW4ga29lbm50ZS4KQXVjaCB3ZW5uIGRhcyBHZWxkIHp1c2FtbWVuIGF1Y2ggbnVyIGVpbmUgR2V3aWNodHNlaW5oZWl0IGdpYnQsIGdldHJlbm50IHNpbmQKZXMKYWJlciAyLiBBbGxlcyBrbGFyPyA6KSkgT2RlciBoYWIgaWNoIGpldHp0IG51ciBub2NoIG1laHIgdmVyd2lycnQ/CgogICAgICAgICAgIHRzY2hvZSAgICAgIDopKSAgIENhcmFkaHJhcwpQUzogZGFzIGdld2ljaHRzc3lzdGVtIHN0aW1tdCBzbyBuYXR1eWVybGljaCBuaWNodCwgYWJlciBpY2ggd29sbHRlIGVzCm51ciB2ZXJkZXV0bGljaGVuIGFuIGVpbmVtIGJlaXNwaWVsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB3aXIgZ3JhdHVsaWVyZW4gKEJvaW5nLCAgOS4gTWFyIDE5OTUsIDE2OjM2OjQ5KToKIyEgcm49Q2FyYWRocmFzIHJ0PTc5NDc2MjM4MQpGYWxzY2hlIEZyYWdlc3RlbGx1bmcgQ2FyYWRocmFzLCBkaWUgcmljaHRpZ2UgbGF1dGV0OgpXaWV2aWVsIGRhdm9uIGhhdCBlciBzaWNoIGRhenVlZGl0aWVydD8gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWRpb3RlbnRlc3QuLi4gKEFuYXRvbCwgMTAuIE1hciAxOTk1LCAwMjo0NzowNik6CgpzY2hhZXR6IGFuYXRvbApBbmF0b2wgaXN0IGV0d2EgZ2xlaWNoIHN0YXJrIHdpZSBEdS4KRXVyZSBSdWVzdHVuZ2VuIHNpbmQgZXR3YSBnbGVpY2ggZ3V0LgpFdXJlIFdhZmZlbiBzaW5kIGV0d2EgZ2xlaWNoIGd1dC4KCkplcCwgYmVzdGFuZGVuLgoKQW5hdG9sICgpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB3aXIgZ3JhdHVsaWVyZW4gKENhcmFkaHJhcywgMTMuIE1hciAxOTk1LCAxOTozOTo0OCk6CiMhIHJuPUJvaW5nIHJ0PTc5NDc2MzQwOQpIYXQgZXI/IERhenVlZGl0aWVydD8gKnN0YXVuKiBOYSBhdWYgZGllIDMwMCBUYWdlIHNvbGx0ZQplciBhYmVyIGxvY2tlciBrb21tZW4sIGljaCBiaW4gaW4gYWxsZW4gTXVkcyB6dXNhbW1lbiBhdWNoCnVlYmVyIDMwMCBUYWdlIGFsdC4gOi0pIFVuZCBkYXMgc2Nob24gZmFzdCBvaG5lIGlkbGUgdGltZS4KCiAgICAgIHRzY2hvZSAgICAgIENhcmFkaHJhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xhcnN0ZWxsdW5nISAoQ2FyYWRocmFzLCAxNS4gTWFyIDE5OTUsIDAwOjI2OjQ1KToKCQlLdWNrdWNrCgpBbHNvIGljaCBtdXNzIGpldHp0IGhpZXIgbWFsIHdhcyByaWNodGlnc3RlbGxlbjoKCkRlciBTZW5zZW5tYW5uIGZhZWxsdCB0b3QgenUgQm9kZW4uCltNb2VyZGVyOkdlaXN0IGRlcyBTZW5zZW5tYW5uc10gSmV0enQgaGF0IG1pY2ggZG9jaCBnbGF0dCBlaW4gRnJvc2NoIGVyd2lzY2h0CltNb2VyZGVyOkdlaXN0IGRlcyBTZW5zZW5tYW5uc10gOigKW0FsbGdlbWVpbjpXdXJdIG9jaCBjYXJhIGRlciBhcm1lIHNlbnNpLi4uCltBbGxnZW1laW46RnJvc2NoIENhcmFkaHJhc10gaWNoIGhhYiBpaG0gZG9jaCBudXIgbiBnZWZhbGxlbiBnZXRhbiwgc2llaCBkYXMKW0FsbGdlbWVpbjpGcm9zY2ggQ2FyYWRocmFzXSBkb2NoIG1hbCBsb2dpc2NoCltBbGxnZW1laW46V3VyIGdydWViZWx0IGxhbmdlIG5hY2hdCgouLi51bmQgc28gZW50c3RlaHQgZGllc2VyIEFydGlrZWwsIG51ciBmdWVyIFd1ZXJjaGVuLCBkYW1pdCBkZXIgbWFsCkluZm9ybWF0Li4uIGFlaCBGcm9zY2guLi4gYWVoIFNlaGVyLi4gYWNoLCBMb2dpayBlaW5mYWNoIGxlcm50LgoKaSkgICAgRGVyIFNlbnNlbm1hbm4gaXN0IG1laW4gRnJldW5kLgppaSkgICBEZXIgU2Vuc2VubWFubiBpc3QgZGVyIEZyZXVuZCBkZXMgVG9kZXMuCiJFciBpc3Qgd29obCBnZXJhZGUgc3BhemllcmVuIGdlZ2FuZ2VuIG9kZXIgYmVzdWNodCBzZWluZW4gRnJldW5kLCBkZW4gVG9kLiIKKFF1ZWxsZTogU1NQKQoKaWlpKSAgRGVyIFNlbnNlbm1hbm4gc3RlaHQgZGVuIGdhbnplbiBsYW5nZW4gbGllYmVuIFRhZyBudXIgZHVtbSBydW0gdW5kCiAgICAgIGRhcmYgc2ljaCBuaWNodCBiZXdlZ2VuLgo9PiAgICBXZW5uIGlobSBuaWVtYW5kIGhpbGZ0LCB3aXJkIGVyIHNlaW5lbiBGcmV1bmQgbmllIG1laHIgc2VoZW4uCj0+ICAgIElyZ2VuZHdpZSBtdXNzIG1hbiBpaG0gaGVsZmVuLCBzZWluZW4gYW5kZXJlbiBGcmV1bmQgYXVjaCBtYWwKICAgICAgd2llZGVyIHp1IHNlaGVuLiBFaW56aWdlIE1vZWdsaWNoa2VpdCBhbHMgU3BpZWxlci9TZWhlciBpc3QgZXMsCiAgICAgIGlobiB1bXp1YnJpbmdlbiwgZGFtaXQgZXIgenVtIFRvZCBrb21tdC4gKHNpZWhlIGlpKQoKICAgICAgICAgICBxLmUuZC4KCj0+ICAgIEVzIGlzdCBkZXIgcmVpbmUgQWt0IGRlciBNZW5zY2hlbmd1ZXRlIHVuZCBTeW1wYXRoaWUgdm9uIG1pciBhdXMKICAgICAgZGVtIFNlbnNlbm1hbm4gZ2VnZW51ZWJlciBpaG4gdW16dWJyaW5nZW4uIFVuZCB3ZWlsIGljaCBlYmVuIHNvCiAgICAgIGVpbiBoZXJ6ZW5zZ3V0ZXIgTWVuc2NoICgqcHJ1c3QqKSBiaW4sIGVyZnVlbGxlIGljaCBtZWluZQogICAgICBzY2hyZWNrZW5zc3BlemlmaXNjaGUgYWVoIHNjaHJlY2tlbnNzcGl0emlzY2hlIExhbmRlc3BmbGljaHQKICAgICAgaG1wZiBTZWhlcnBmbGljaHQgYWNoIG5laW4sIEVsZmVuLi4uICp2ZXJ3aXJydCBrdWNrKgogICAgICBUSUxUIFRJTFQuIE92ZXJmbG93IExvZ2ljIEVycm9yLgoKICAgICAgICAgICBlaW4ga2xlaW5lciBGcm9zY2ggbmFtZW5zIENhcmFkaHJhcyAoc3Vlc3MgcXVhaykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGFyc3RlbGx1bmchIChXdXIsIDE1LiBNYXIgMTk5NSwgMDA6NDc6NTMpOgojISBybj1DYXJhZGhyYXMgcnQ9Nzk1MjIzNjA1Cmh1aHUgOikKClVuZCB3ZW5uIGRlciBzZW5zaSBkYW5uIG1hY2htYWwgenUgc2VpbmVtIGJlc3RlbSBmcmV1bmQgZGVtIHRvZCBnZWh0LCBrdXJ6CmJldm9yIGR1IGRpZSBzdGVpbGVuIHdlZ2UgZGVyIHNzcCBlcmtsb21tbiBoYXN0LCB3YWVyZSBkYXMgc2ljaGVybGljaCBhdWNoCm5pY2h0IHdlaXRlciBzY2hsaW1tIDstKS4KV3VyIC0gZ3J1ZWJlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2xhcnN0ZWxsdW5nISAoV3VyLCAxNS4gTWFyIDE5OTUsIDAwOjU3OjA0KToKIyEgcm49Q2FyYWRocmFzIHJ0PTc5NTIyMzYwNQpodWh1IDopCmRpZXNlciBlZGl0b3IgaGllciByYXVidCBtaXIgbm9jaCBkZW4gbGV0enRlbiBuZXJ2Li4uIHZlcnNjaGx1Y2t0IGRlciBkb2NoCmdhbGx0IGRlbiBoYWxiZW4gYXJ0aWtlbC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGFlaCA/IChIYXJkaWwsIDE1LiBNYXIgMTk5NSwgMTY6MTg6MjgpOgoKPiBMaSBoYXQgZWluZW4gQXJ0aWtlbCBpbiBkZXIgWmVpdHVuZyB2ZXJvZWZmZW50bGljaHQuCm5uCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCj4gbm4KTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4KCkhtbW0uIEVudHRhZXVzY2h0LCBkYXNzIG5peCB6dW0gTGVzZW4gZGEgaXN0OgoJCQkJCUhhcmRpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUm9iZSB1bmQgRXVzZWJpdXMuLi4gKFplcGh5ciwgMTUuIE1hciAxOTk1LCAxODo1MzoyMCk6CgpOZXVsaWNoIGluIG1laW5lciBTcGVpc2VrYW1tZXI6CgpFdXNlYml1cyBzaW5ndDogSWNoIHdlcmRlIGlpaWltbWVlZXIsIGJlaSBEaWlpaWlyciBzZWVlaWlpaWlpbm5uIQpFdXNlYml1cyBzaW5ndDogTnVyIER1dXV1IHVuZCBJaWlpY2hoLCB3aXIgZ2FueiBhbGxsZWVlaWlpaWlpaWluIQpEdSBoYXN0IGpldHp0IDkxIExlYmVuc3B1bmt0ZSB1bmQgOTEgTWFnaWVwdW5rdGUuCkRpZSBBbmdzdCBpc3Qgc3RhZXJrZXIgYWxzIER1IC4uIER1IHdpbGxzdCBudXIgbm9jaCB3ZWcgaGllci4KWmVwaHlyIHNhZ3Q6IEljaCBoYWJlIEFuZ3N0LiBJY2ggZmx1ZWNodGUuCkV1c2ViaXVzIHNhZ3Q6IFNvbiduIFNjaGVpc3MsIGdlc3Rlcm4gZHJlaW1hbCBnZXN0b3JiZW4hCkRpZSBBbmdzdCBpc3Qgc3RhZXJrZXIgYWxzIER1IC4uIER1IHdpbGxzdCBudXIgbm9jaCB3ZWcgaGllci4KWmVwaHlyIHNhZ3Q6IEljaCBoYWJlIEFuZ3N0LiBJY2ggZmx1ZWNodGUuCkV1c2ViaXVzIGR1ZGVsdDogT0xFRUVFLCBPTEUsIE9MRSBPTEVFRSEhCkRpZSBBbmdzdCBpc3Qgc3RhZXJrZXIgYWxzIER1IC4uIER1IHdpbGxzdCBudXIgbm9jaCB3ZWcgaGllci4KWmVwaHlyIHNhZ3Q6IEljaCBoYWJlIEFuZ3N0LiBJY2ggZmx1ZWNodGUuCkV1c2ViaXVzIHJ1ZnQ6IExBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFHR0dHR0dHICEhISEhCkFlbmdzdGxpY2ggZHJlaHN0IER1IERpY2ggdW0uCkluIGRlaW5lbSBXYWhuIGdyZWlmc3QgRHUgRXVzZWJpdXMgYW4uCiAgRHUgZ3JlaWZzdCBFdXNlYml1cyBtaXQgZGVtIFhhbnRpLVNjaHdlcnQgYW4uCiAgRHUgdmVyZmVobHN0IEV1c2ViaXVzLgpFdXNlYml1cyBzY2h3YXR6dDogSGV5LCBNYW5uLiBCbGVpYiBydWhpZyEgSWNoIGhhYicgRGlyIGRvY2ggbm9jaCBzb3ZpZWwgenUKRXVzZWJpdXMgc2Nod2F0enQ6IGVyemFlaGxlbi4KRHUgamFnc3QgRXVzZWJpdXMgbmljaHQgbWVoci4KRXVzZWJpdXMgamFndCBEaWNoIG51biBuaWNodCBtZWhyLgpFdXNlYml1cyB1bWFybXQgRGljaCBmcmV1ZGlnLgpBZW5nc3RsaWNoIGRyZWhzdCBEdSBEaWNoIHVtLgpEdSBmdWVobHN0IERpY2ggd2llZGVyIGV0d2FzIGJlcnVoaWd0LgoKWmVwaHlyLCBtYWcgZGllIGdlbGJlIFJvYmUgdHJvdHpkZW0uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzZWxic3RlcmZ1ZWxsZW5kZSBwcm9waGV6ZWl1bmcgOi0pIChNdXBmZWwsIDE1LiBNYXIgMTk5NSwgMjI6MzM6MjMpOgpoYWxsbwoKW0FsbGdlbWVpbjpGaXBwc10gQWJlciBkaWUgbWVpc3RlbiBwbGFlcnJlbiBkb2NoIG1pdCBydWZlbiBydW0KQ291bnRtYW4gcnVmdDogd2Vpc3MgaXJnZW5kd2VyIHdpZSBpY2ggZWluZXIgZ2FlcnRuZXJpbiBnZWxkIHVuZApDb3VudG1hbiBydWZ0OiBzY2huZWxsaGFlcnRlciBrbGF1ZW4ga2Fubj8/PwoKc3RpbW10IEZpcHBzIDotKQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkViZW4gZ2VzZWhlbjogKEhhd2ssIDE2LiBNYXIgMTk5NSwgMDE6MDE6NTQpOgpEdSBzdGVoc3QgYXVmIGVpbmVyIGlkeWxsaXNjaGVuIFdpZXNlIGlubWl0dGVuIGRlcyBXYWxkZXMuIERpZSBXaWVzZSBpc3QgaW4KYWxsZW4gUmljaHR1bmdlbiB2b24gZGljaHRlbSBXYWxkIHVtZ2ViZW4gdW5kIHNvbWl0IHNjaGFyZiBiZWdyZW56dC4gRHVyY2gKZGllIGdlc2NodWV0enRlIExhZ2UgaXN0IGRpZXMgZGVyIGlkZWFsZSBUdW1tZWxwbGF0eiBmdWVyIGtsZWluZSB1bmQgbWl0dGVsLQpncm9zc2UgVGllcmUsIGRpZSBpbSBXYWxkIHdlbmlnIExlYmVuc3JhdW0gaGFldHRlbi4gQWJlciBhdWNoIGJlc29uZGVycwpzY2hvZW5lCkJsdW1lbiwgZGllIGltIFdhbGQgYXVzIExpY2h0bWFuZ2VsIGdhciBuaWNodCB3YWNoc2VuIGtvZW5uZW4gc2luZCBoaWVyCnZlcnRyZS0KdGVuLiBEaWVzIGlzdCBlaW4gZ2VtdWV0bGljaGVyIE9ydCB6dW0gQXVzc3Bhbm5lbi4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgd2VzdGVuLgpFaW4gbWl0dGxlcmVyIHNjaHdhcnplciBTdGVpbmJlaXNzZXIuCkVpbmUgSG9ybmlzc2UuCiAgRGVyIFN0ZWluYmVpc3NlciBncmVpZnQgRGljaCBtaXQgZWluZXIgTGFkdW5nIFN0ZWluZSBhbi4KICBEZXIgU3RlaW5iZWlzc2VyIHRyaWZmdCBEaWNoIGhhcnQuCgpBY2gsIHdpZSBlbnRzcGFubmVuZC4gOikKSEFXSy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkViZW4gZ2VzZWhlbjogKEhhd2ssIDE2LiBNYXIgMTk5NSwgMDE6MzE6NTkpOgpIaWVyIG1pdHRlbiBpbSBXYWxkIGlzdCBlaW5lIGFsdGUgS3VsdHN0YWV0dGUgZWluZXIgbGFlbmdzdCB1bnRlcmdlZ2FuZ2VuZW4KWmktCnZpbGlzYXRpb24gdmVyc3RlY2t0LiBWaWVsbGVpY2h0IHNpbmQgYXVjaCBkaWUgQmV3b2huZXIgZGllc2VyIEluc2VsCk5hY2hrb21tZW4KZGVyIExldXRlLCBkaWUgZGllc2UgU3RhZXR0ZSBlcnJpY2h0ZXQgaGFiZW4uIER1IHN0ZWhzdCB2b3IgZWluZW0gcmllc2lnZW4KVG9yCmF1cyB0b25uZW5zY2h3ZXJlbiBTdGVpbmVuLCBkYXMgZGVuIEVpbmdhbmcgenVyIGVpZ2VudGxpY2hlbiBLdWx0c3RhZXR0ZSBkYXItCnN0ZWxsdC4gV2FzIGZ1ZXIgR29ldHRlciBoaWVyIHdvaGwgdmVyZWhydCB3b3JkZW4gc2luZCA/CkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4gdW5kIG5vcmRlbi4KRWluIEdsYWV1YmlnZXIuCkVpbiBHbGFldWJpZ2VyLgo+IHNjaGFldHogZ2xhZXViaWdlcgpEZXIgR2xhZXViaWdlciBpc3Qgc3RhZXJrZXIgYWxzIER1LgpEaWUgUnVlc3R1bmcgZGVzIEdsYWV1YmlnZXJzIGlzdCB1bmdsYXVibGljaCB2aWVsIGJlc3NlciBhbHMgRGVpbmUuCkRpZSBXYWZmZSBkZXMgR2xhZXViaWdlcnMgbGFlc3N0IERlaW5lIGdhbnogbWlja3JpZyBhdXNzZWhlbi4KCldlbm4gaWNoIGRpZSBudW4gYW5ncmVpZmZlLCB1bmQgd2VnbGF1ZmZlLCBkYW5uIHdlcmRlIGljaCB2b24gZGVuCkdsO2FldWJpZ2VybiB2ZXJmb2xndD8KSEFXSywgc2ljaCBrcnVlbW1lbmQgdm9yIGxhY2hlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG1ldHRlcmxpbmc/IChHcmltbWRlYXRoLCAxOS4gTWFyIDE5OTUsIDE5OjU2OjQ2KToKREFTIG5lbm5lIGljaCBkb2NoIG1hbCBhYnNvbHV0IGZpdDoKCnVudCBzY2htZXR0ZXJsaW5nCkVyIGZsYXR0ZXJ0IGx1c3RpZyBkdXJjaCBkaWUgR2VnZW5kLiBTZWluZSBGbHVlZ2VsIHNjaGltbWVybiBpbiBhbGxlbiBGYXJiZW4uCkVyIGlzdCBhYnNvbHV0IGZpdC4KRXIgdHJhZWd0IGJlaSBzaWNoOgpFaW4gUGFhciBHb2JsaW5zdGllZmVsLgpFaW4gR29ibGlucGFuemVyLgpFaW4gU3RhaGxzY2h3ZXJ0LgpFaW5lIFN0aW1tZS4KRWluIEJpaGFlbmRlci4KRWluIEdvYmxpbmhlbG0uCkVpbiBHb2JsaW5oZWxtLgpFaW4gR29ibGluaGVsbS4KRWluIFBhYXIgR29ibGluc3RpZWZlbC4KRWluIEdvYmxpbnBhbnplci4KRWluIFN0YWhsc2Nod2VydC4KRWluIFBhYXIgR29ibGluc3RpZWZlbC4KRWluIEdvYmxpbmhlbG0uCkVpbiBHb2JsaW5wYW56ZXIuCkVpbiBTdGFobHNjaHdlcnQuCgoKSmFqYSwgd2VubiBtYW4gc2VsYmVyIGRvY2ggZ2VuYXVzbyBmaXQgd2FlcmUuLi4KCkdyaW1tZGVhdGggbWl0IGR1bmtsZW4gR2VkYW5rZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipncnVtbWVsKiAoQW5hdG9sLCAyMS4gTWFyIDE5OTUsIDA0OjQ3OjU3KToKCgp2ZXJnbGVpY2hlIGFtdWxldHQgMSBtaXQgYW11bGV0dCAyCkRhcyBFaXNhbXVsZXR0IGlzdCBlaW5lIGJlc3NlcmUgUnVlc3R1bmcgYWxzIGRhcyBFaXNhbXVsZXR0CkRhcyBFaXNhbXVsZXR0IGlzdCBsZWljaHRlciBhbHMgZGFzIEVpc2FtdWxldHQKRGFzIEVpc2FtdWxldHQgaXN0IG1laHIgd2VydCBhbHMgZGFzIEVpc2FtdWxldHQKCgpGcmV1bmQsIG1pdCBEaXIgbXVzcyBpY2ggbm9jaCBlaW4gZXJuc3RlcyBXb2VydGNoZW4gcmVkZW4uLi4KCkFuYXRvbCAoKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgYWxzIEdyaW1tYm9ybiBNYWdpZXIgd3VyZGUuLi4gKEFuYXRvbCwgMjEuIE1hciAxOTk1LCAyMDozODoxMSk6CgpFaW5lciBtdXNzdGUgZGllIFJlc3RlIGF1ZnNhbW1lbG4sIGRpZSBkaWUgQW5kZXJlbiBuaWNodCBtZWhyIHRyYWdlbiBrb25udGVuLgoKdW50IHBha2V0CkVpbiBnZWxiZXMgUG9zdHBha2V0LiBNYW4ga2FubiBTYWNoZW4gaGluZWluc3RlY2tlbiB1bmQgaGVyYXVzbmVobWVuLApFcyBpc3QgZ2VvZWZmbmV0IHVuZCBlbnRoYWVsdDoKTWVybGluLCBkZXIgVXJ2YXRlciBhbGxlciBNYWdpZXIuCkVpbiBTb25uZW5zY2hpcm0gKGdlc2NobG9zc2VuKS4KRWluIFNjaHdlcnQuClsuLi5dCgpBamEuLi4uIEthbm4gbWFuIGRlbiB3ZW5pZ3N0ZW5zIHZlcmthdWZlbj8KCkFuYXRvbCAoKQoKUFM6IE5laW46IE1lcmxpbiBoYXQga2VpbmVuIG1hdGVyaWVsbGVuIFdlcnQsIHR1dCBtaXIgbGVpZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdpbGRlbiAoR3JpbW1ib3JuLCAyMS4gTWFyIDE5OTUsIDIyOjU5OjM2KToKClNvIGltIFNvbW1lciBnYWJzIG1hbCBuZSBSZWloZSBjcmFzaHMgZGllIGRhbWl0IGVya2xhZXJ0IHd1cmRlbiwgZGFzcyBqYSBudW4KZGFzIEdpbGRlbnN5c3RlbSBpbXBsZW1lbnRpZXJ0IHd1cmRlLiBBbHNvIGRhY2h0ZSBtYW4sIGRpZSBHaWxkZW4ga29tbWVuIGltClNhdXNlc2Nocml0dC4KTmFqYSwgSWxsdXNpb25lbiBzaW5kIGRhenUgZGEsIGdlbm9tbWVuIHp1IHdlcmRlbjoKCgpSZTogUmU6IEdpbGRlbiAoUm9jaHVzLCAxNi4gTWFyIDE5OTUsIDE2OjEwOjAyKToKKEJlenVnOiBBcnRpa2VsIDIgdm9uIEJvaW5nIHZvbSAxNS4gTWFyIDE5OTUsIDE2OjE5OjE4KQpXYXJnb246ICAgICBNb2VuY2hlIChoYWxiIGZlcnRpZykKUm9jaHVzOiAgICAgS2FyYXRla2FlbXBmZXIgKGZhc3QgZmVydGlnKQpCZXJuYXJkOiAgICBEcnVpZGVuIChhbmdlZmFuZ2VuKQpQdW1hOiAgICAgICBIYXJsZWtpbmUgKGFuZ2VmYW5nZW4pClZyYWk6ICAgICAgIEJhcmJhcmVuIChub2NoIG5pY2h0IGFuZ2VmYW5nZW4pCkNhdHdlYXpsZTogIEFzc2Fzc2luZW4gKG5vY2ggbmljaHQgYW5nZWZhbmdlbikKRGFuY2U6ICAgICAgU2Nod2VydHRhZW56ZXIgKGFuZ2VmYW5nZW4pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QuIExhZXNzdCBhYmVyIGRpZSBGaW5nZXIgdm9uIGRlbiBHaWxkZW4gKHVuZCBhbGxlbQphbmRlcmVuLCB3YXMgbmFjaCBBcmJlaXQgYXVzc2llaHQuLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3dW5zY2ggZXJmdWVsbHQuLi4gKE11cGZlbCwgMjIuIE1hciAxOTk1LCAwMToyNjoxMCk6CmhpaG8uLi4gZ3JhZGUgZ2VzZWhlbi4uLgoKW0FsbGdlbWVpbjpHcmltbWJvcm5dIEhtbSwgd2VyIG1pY2ggbm9jaG1hbCBHcmltbWkgbmVubnQgcmlza2llcnQsIGRhc3MgaWNoCltBbGxnZW1laW46R3JpbW1ib3JuXSBhdXNwcm9iaWVyZSwgb2IgemFwIGF1Y2ggYXVmIEVudGZlcm51bmcga2xhcHB0Li4uCltBbGxnZW1laW46WndlaXRpZV0gR3JpbW1pID8KWy4uLl0KW0FsbGdlbWVpbjpad2VpdGllIHdpbGwgZ2V6YXBwdCB3ZXJkZW5dCjxhbmRyZXMgZmVuc3Rlcj4KPiBKZW1hbmQgYmVzY2h3b2VydCBlaW5lbiBCbGl0eiB2b20gSGltbWVsLgpad2VpdGllIGZhZWxsdCB0b3QgenUgQm9kZW4uCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCltUb2Q6XSBKZW1hbmQgaGF0IGdlcmFkZSBad2VpdGllIHVtZ2VicmFjaHQuCgplaW4gbmV1ZXMgRkxXLi4uLgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbW9kZW0gKEdyaW1tYm9ybiwgMjIuIE1hciAxOTk1LCAwMTozODozMyk6ClphcmRveiAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEdSBzYWdzdDogV2llIGtvbW10cz8KPiBaYXJkb3ogcnVmdDogTmFqYSwgd29mdWVyIGhhdCBtYW4gZWluIE1vZGVtLi4uCkR1IHNhZ3N0OiBOYSwgdmllbCBTcGFzcyBtaXQgZGVyIFRlbGVmb25yZWNobnVuZy4uLiA7LSkKPiBQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgWmFyZG96LgpaYXJkb3ogICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpFdHdhcyBzcGFldGVyOgoKWmFyZG96ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClphcmRveiBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpaYXJkb3ogc2FndDogTnVuIHNpZWh0cyBiZXNzZXIgYXVzLiBXYXIgaXJnZW5kZWluIEZlaGxlcgpEdSBzYWdzdDogQWJ3YXJ0ZW4uLi4KWmFyZG96IG5pY2t0IHp1c3RpbW1lbmQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBaYXJkb3ouClphcmRveiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKWmFyZG96IHdlaWx0IHdpZWRlciB1bnRlciBkZW4gTGViZW5kZW4uClphcmRveiAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpaYXJkb3ogc2FndDogRXMgaGF1dCBtaWNoIHJhdXMsIGZyYWcgbWljaCBuaWNodCB3YXJ1bQpaYXJkb3ogc2FndDogTmFqYSwgZGllIE1vZGVtZWluc3RlbGx1bmdlbiBzaW5kIHNvIG5lIHNhY2hlIGZ1ZXIgc2ljaAo+IFBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBaYXJkb3ouClphcmRveiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKWmFyZG96ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpldGMsIGV0Yy4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LiBPaG5lIG1vZGVtLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKW0FsbGdlbWVpbjpCb2luZ10gc2NocmVpYnQgYXJ0aWtlbCEhISAoQW5hdG9sLCAyMi4gTWFyIDE5OTUsIDA0OjA0OjM1KToKCgoKRG9uZS4KQW5hdG9sICgpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsISEhIChHcmltbWJvcm4sIDIyLiBNYXIgMTk5NSwgMDQ6MDQ6NTkpOgoKQXVmIGJlc29uZGVyZW4gV3Vuc2NoLi4uIDstKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IGFuIGFsbGUgSGFtcGVsbWFlbm5lciEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZhc3QtRkxXIChHcmltbWJvcm4sIDIyLiBNYXIgMTk5NSwgMTU6NTk6MjUpOgoKW1NlaGVyOlRvbW15XSBBcmdsLiBEZXIgTGljaCBrYW5uIG1pY2ggYXVjaCBsYWVobWVuLCBqYT8KW1NlaGVyOkdyaW1tYm9ybl0gSmEuCltTZWhlcjpUb21teV0gUHVoLiAxIExQIHNpbmQgamEgaW1tZXIgbm9jaCAyIHZvciBUb2QuLi4KCkphamEsIGljeGggd2Vpc3MsIGRhcyBqYSB2b24gbWlyIHdhciBmYWxzY2guIEFiZXIgZGFzIGlzdCBkb2NoIHNvb29vb28KYmVrYW5udCwgb2RlciBuaWNodD8KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdC4gVmVycmFldCBqZWRlbSBkZW4gV2VnIHZvbiBkZXIgR2lsZGUgenVtIFNjaG1ldHRlcmxpbmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmFzdC1GTFcgKFRvbW15LCAyMi4gTWFyIDE5OTUsIDE2OjEyOjIxKToKIyEgcm49R3JpbW1ib3JuIHJ0PTc5NTg4NDM2NQpKYWphLgpGZWxhIGhhdHMgbWlyIGF1Y2ggc2Nob25tYWwgZ2VzYWd0LCBhYmVyIGljaCBoYWJzIG5pZQpzbyByZWNodCBnbGF1YmVuIHdvbGxlbi4gSXN0IG1pciBoYWx0IG5vY2ggbmllIHBhc3NpZXJ0LgpJY2ggc2VoIGRhcyBuaWNodCBhbHMgSGlsZmUgc29uZGVybiBhbHMgYmVzdGFldGlndW5nIGFuLi4uIDspCgpUb21teSAoZ2xhdWJ0IG1laXN0IG51ciBkYXMgd2FzIGVyIHNpZWh0Li4uKSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIHZvbGxlIEJldHRsZXIuLi4gKEJvYm8sIDIzLiBNYXIgMTk5NSwgMDk6NTE6MTMpOgpadXRpZWZzdCB2ZXJhZXJnZXJ0IHVlYmVyIGVpbmVuIGdyYXVzYW1lbiBTY2hsYWcgZGVzIFNjaGlja3NhbHMsIGRlciBlcyBlaW5lbQpFdWNoIGFsbGVuIHNpY2hlciB3b2hsYmVrYW5udGVuIEhlcnJuIHNlaXQga3VyemVtICg/KQpnZXN0YXR0ZXQsIHNlaW4gYXNvemlhbGVzIFVud2VzZW4gYXVjaCBpbiBkZXIgYmVodWV0ZXRlbiwga2VpbWZyZWllbgpBdG1vc3BoYWVyZSBQb3J0IFZhaW5lciAoUG9zdClBbXRzc3R1YmVuIHp1IHRyZWliZW4sIHNhbm4gaWNoIGF1ZgpBYmhpbGZlIHVuZCB2ZXJzdWNodGUsIG1pY2ggZGVzIFByb2JsZW1zIGF1ZiB1bmJsdXRpZ2UgV2Vpc2UgenUgZW50bGVkaWdlbjoKbGVnZSBCZXR0bGVyIGluIFBha2V0CgpEZXIgQmV0dGxlciBpc3QgbmljaHQgbGVlci4KCk5pY2h0LCBkYXNzIGljaCBldHdhcyBhbmRlcmVzIHZlcm11dGV0IGhhZXR0ZSwgbmVpbiwgZWlnZW50bGljaCBoYWInIGljaCBkZW4KS2VybCBuaWUgYW5kZXJzIGFscyB2b2xsIHdpZSBlaW5lIEhhdWJpdHplIGVybGVidCAtIGFiZXIgd2FzCmJpdHRlIGhhdCBkYXMgZWluZSBtaXQgZGVtIGFuZGVyZW4genUgdHVuPwpHcnVlYmVsbmQsCkJvQm8uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCdWctUmVwb3J0cyAoU2lsdmFuYSwgMjMuIE1hciAxOTk1LCAxMTowMTozMSk6CkhhYiBtaWNoIGdyYWQgKHdpZWRlciBtYWwpIHVlYmVyIGRhcyBXYWxkLVJlcGZpbGUgaGVyZ2VtYWNodC4gV2FzIG1hbiBkYSBmdWVyCm5ldHRlIEtvbW1lbnRhcmUgZmluZGV0Li4uLiA7LSkgRWluIHBhYXIgQmVpc3BpZWxlOgoKSURFQSB2b24geXZhaW4gYXVzIC9kL3dhbGQvcm9vbS9lc19ob2NoYmF1bSAoMzAuIEphbiAxOTk1KToKSWNoIHN1Y2hlIG1pciBlaW5lbiBKb2IgOi0pCihHdXRlIElkZWUgLSBrYW5uc3RlIGRhbm4gYW5zIE1HIHNwZW5kZW4uIDstKSkKVFlQTyB2b24gaXJpZG9zIGF1cyAvZC93YWxkL3Jvb20vZXNfbWl0dGUgKCA3LiBGZWIgMTk5NSk6CnR5cG8KKFNjaG9lbiAtIG51ciB3bz8pCklERUEgdm9uIGpvZXkgYXVzIC9kL3dhbGQvcm9vbS9zdWVkd2VnNyAoMTQuIEZlYiAxOTk1KToKaWNoIHdpbGwgaGllciByYXVhCihTb2xsdGUgZGEga2VpbiBQcm9ibGVtIHNlaW4uLi4uICpzdGF1biopClRZUE8gdm9uIGhhdWtlIGF1cyAvZC93YWxkL3Jvb20vZXNfbWl0dGUgKDIwLiBGZWIgMTk5NSk6CnF1aXQKKEhhZWg/KQoKSURFQSB2b24gamlyaWtpIGF1cyAvZC93YWxkL3Jvb20vYmFlcnBmYWQzICggNi4gRmViIDE5OTUpOgp3aXJrbGljaCBodWVic2NoIGhpZXIgOy0pCihBYWFhaCEgU293YXMgbGVzIGljaCBnZXJuZS4gOy0pICkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNDSE1BQ0tPRkFUWkVOISEhIChZZW5kaSwgMjMuIE1hciAxOTk1LCAxMjowNjoyNCk6Cgo+IFllbmRpIHJ1ZnQ6IEpvZiBydWZ0OiBDYXR3ZWF6bGUgcnVmdDogU0NITUFDS09GQVRaRU4hISEKPgo+IEplbWFuZCBydWZ0OiBZZW5kaSBydWZ0OiBKb2YgcnVmdDogQ2F0d2VhemxlIHJ1ZnQ6IFNDSE1BQ0tPRkFUWkVOISEhCgooVW5kIGpldHp0IGtvbW10cywgZG9wcGVsdCBnZXdpY2tlbHQ6KQoKPiBNYXN0ZXIgSGF0ZSBydWZ0OiAoRHVyaWFuKSBydWZ0OiBZZW5kaSBydWZ0OiBKb2YgcnVmdDogQ2F0d2VhemxlIHJ1ZnQ6Ck1hc3RlciBIYXRlIHJ1ZnQ6IFNDSE1BQ0tPRkFUWkVOISEhCgpUb2xsLCB3YXM/CgpBY2ggamEsIHVuZCB6dSBndXRlciBMZXR6dDoKCltBbGxnZW1laW46Q3JlYXRpdmVdICpwcnVzdCogRGllIE1lbnNhIHJ1ZnQgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYXBwbmFzZW4tQXdhcmQgKEdyaW1tYm9ybiwgMjMuIE1hciAxOTk1LCAxOTo1MTo1Nik6CipzZXVmeioKKnRpZWYgc2V1ZnoqCipub2NoIHRpZWZlciBzZXVmeioKVm9yIFdvY2hlbiBoYWIgaWNoIGhpZXIgaW4gU2Nod2VkZW4gZWluZSBVZWJlcndlaXN1bmcgbmFjaCBEZXV0c2NobGFuZCBhbgptZWluZSBCYW5rIGdlc2NoaWNrdCwgdW0gZGVuIE1pdGdsaWVkc2JlaXRyYWcgZnVlciBkZW4gVmVyZWluIHp1IGJlemFobGVuCih2b24gaGllciB1ZWJlcndlaXNlbj8gV2lzc3QgaWhyLCB3YXMgQXVzbGFuZHN1ZWJlcndlaXN1bmdlbiBrb3N0ZW4/Pz8pLgpUc2NoYSwgZGllIFVlYmVyd2Vpc3VuZyBrYW0genVydWVjaywgaWNoIGhhdHRlIHZlcmdlc3NlbiwgZGVuIEJldHJhZwplaW56dXNldHplbiAoa2FubiBwYXNzaWVyZW4pLgoKU28gd2VpdCBzbyBndXQsIGRlbm4gZGEga2FtIGdlcmFkZSBkZXIgU3BlbmRlbmF1ZnJ1Zi4gSWNoIHNjaHJlaWIgYWxzbyBuZQpuZXVlIFVlYmVyd2Vpc3VuZyB1bmQgZnVlbGxlIGJlc29uZGVycyBzb3JnZmFlbHRpZyBkYXMgRmVsZCBmdWVyIGRlbiBCZXRyYWcKYXVzLiBBZGRpZXIgbm9jaCB3YXMgZHJhdWYsIENhdCogaGF0dGUgdmVyc3Byb2NoZW4sIGRhcyBhdXNlaW5hbmRlcmhhbHRlbgp6dSBrb2VubmVuLCB1bmQgc28gaXN0cyBkYW5uIG51ciBlaW5lIFVlYmVyd2Vpc3VuZy4KCkhtbSwgdGphLCB3aWUgc29sbCBpY2hzIHNhZ2VuPyBJY2gga29tbWUgZ2VzdGVybiBuYWNoIEhhdXNlLCBzY2hhdSBpbiBkZW4KQnJpZWZrYXN0ZW4sIEJyaWVmIHZvbiBkYWhlaW0gbGllZ3QgdS5hLiBkcmluLiBVbmQgaW4gZGllc2VtIHdpZWRlcnJ1bQoqaHVlc3RlbCogZGFzIFVlYmVyd2Vpc3VuZ3Nmb3JtdWxhci4uLgpOYWphLCBqZXR6dCBoYWIgaWNoIGJlc2FndGVzIEZvcm11bGFyIGRhbm4gYXVjaCBub2NoIHVudGVyc2NocmllYmVuIHVuZAp3aWVkZXIgZWluZ2V0dWV0ZXQsIG5hY2ggRGV1dHNjaGxhbmQgZ2VzY2hpY2t0LiBWaWVsbGVpY2h0IGtsYXBwdHMgamEKZGllc21hbC4gKmVycm9ldCoKCkdyaW1tYm9ybiwgQXRoZWlzdCB1bmQgUGFwcG5hc2UuIEhhdCBlaW5lIFVlYmVyd2Vpc3VuZyBhbiBzZWluZW4gQnJ1ZGVyIGF1Y2gKZXJzdCBpbSA0LiBBbmxhdWYgZ2VzY2hhZmZ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKenV2aWVsIGFzY2hlIChNaXJvLCAyNC4gTWFyIDE5OTUsIDAwOjMzOjEyKToKR3JpbW1pZSwKc3RyZXUnIERpciBuaWNodCB6dXZpZWwgQXNjaGUgYXVmJ3MgSGF1cHQ6IERlaW4gVWViZXJ3ZWlzdW5nIGFuIG1pY2ggaGF0CmF1ZidzIGVyc3RlIE1hbCBnZWtsYXBwdC4KT2RlciB3YXIgZXMgZGFzIHp3ZWl0ZSBNYWw/IG9kZXIgZHJpdHRlPyBvZGVyIHZpZXJ0ZT8KbmEgb2t5LiBpY2gga29ubnRlIGRlbiBHZXJpY2h0c3ZvbGx6aWVoZXIgZ3JhZGUgbm9jaG1hbCB6dWZyaWVkZW4gc3RlbGxlbi4uLgpNaXJvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBpbiAvbG9nL3JlcG9ydC9jYWx1bS5yZXAgKENhbHVtLCAyNS4gTWFyIDE5OTUsIDAxOjAzOjI2KToKQmVpbSBEdXJjaGFyYmVpdGVuIG1laW5lcyBSZXBvcnQtRmlsZXMgYmluIGljaCBhdWYgZWluIHBhYXIgbmV0dGUgRnJhZ2VuCmdlc3Rvc3NlbiwgZGllIEFubmUgb2RlciBkZW0gSG9semZhZWxsZXIgZ2VzdGVsbHQgd3VyZGVuLCB1bmQgZGllIGljaApFdWNoIG5pY2h0IHZvcmVudGhhbHRlbiB3aWxsLi4uCgpTcGFjZTogZnJhZ3QgQW5uZSBuYWNoIFJhc2Vsa2V0dGUKKHNpZWh0IEFubmUgZGVubiB3aXJrbGljaCB3aWUgZWluIGtldHRlbnJhc3NlbG5kZXIgR2Vpc3QgYXVzPykKCldpbGxvdzogZnJhZ3QgQW5uZSBuYWNoIFZpZXR6CihuYSBqYS4uLiBhbiBkZXIgT3Jkb2tyYWZpZSBhcmJlaXRlbiB3aXIgYWJlciBub2NoLCBnZWxsZT8pCgpIZWxsb3dlZW46IGZyYWd0IEFubmUgbmFjaCBWaWV6Ngooc2Nob24gZGVyIDYuIFZpZXo/IGtlaW4gV3VuZGVyLCBkYXNzIG1hbiBzaWNoIGRhbm4gdmVydGlwcHQpCgpTb3JzaGE6IGZyYWd0IEhvbHpmYWVsbGVyIG5hY2ggWmF1YmVydHJhbmsKKGphLCB3ZW5uIGVzIHNvb29vIGVpbmZhY2ggd2FlcmUhKQoKTWlybzogZnJhZ3QgSG9semZhZWxsZXIgbmFjaCBaYXViZXJ0cmFuawoobm9jaCBqZW1hbmQ/IHN0ZWh0IGRhcyBldHdhIGluIGVpbmVyIExpc3RlIGRyaW4/KQoKZWFnbGU6IGZyYWd0IEFubmUgbmFjaCBWaWV0egooaG0uIElzdCBFYWdsZSBkZXIgWndlaXRpZSB2b24gU3BhY2U/KQoKQWFyZ29uOiBmcmFndCBBbm5lIG5hY2ggVmllcwooZ2FueiBzY2hvZW4gdmllcywgZGFzcyBpY2ggZGFzIGhpZXIgYWxsZXMgcG9zdGUsIGdlbGxlPyA7LSkgKQoKTGFtdWVydGU6IGZyYWd0IEFubmUgbmFjaCBWaWV3CihJY2ggZW1wZmVobGU6IEVpbmUgV29jaGUgVXJsYXViIGltIFNhYXJsYW5kLCBpbmNsLiBWaWV6LVJhZGlrYWxrdXIuCkRhcyBoaWxmdCEpCgpIYXNlbmZ1c3M6IGZyYWd0IEFubmUgbmFjaCBDbGFsdW0KKGtlaW4gS29tbWVudGFyKQoKRWNvbGk6IGZyYWd0IEFubmUgbmFjaCBBc3BpcmluCihudSBqYSwgd2VubiBtYW4gc292aWVsIFZpZXogdHJpbmt0LCBpc3QgZXMgbmF0dWVybGljaCBsb2dpc2NoLCBkYXNzIG1hbgpLb3Bmc2NobWVyemVuIGJla29tbXQuLi4pCgpNYXJkdWs6IGZyYWd0IEFubmUgbmFjaCBGaWV0egoobmljaHQgZ2FueiwgYWJlciB3aXIgYXJiZWl0ZW4gZGFyYW4pCgpNYXJkdWs6IGZyYWd0IEFubmUgbmFjaCBGaXR6CihhcmJlaXRlbiB3aXIgd2lya2xpY2ggZGFyYW4/KQoKSGFubmk6IGZyYWd0IEFubmUgbmFjaCBIYXJ6IGRlcyBBYmdydW5kZXMKKGhtbW0uLi4gaGFyenQgamV0enQgc29nYXIgc2Nob24gZGVyIEFiZ3J1bmQ/IG9kZXIgaGF0IGplbWFuZCBkYXMgSGVyegpnZWhhcnp0PyBvZGVyIGRlbiBIYXJ6IGdlaGVyenQ/IG9kZXIuLi4pCgpYYW50aWE6IGZyYWd0IEFubmUgbmFjaCBGaWd0CihpY2ggdmVybXV0ZSBqYSBzdGFyaywgZGFzcyBkYW1pdCBhdWNoIGRlciBWaWV6IGdlbWVpbnQgaXN0Li4uKQoKTWV0aGVkcmFzOiBmcmFndCBBbm5lIG5hY2ggQmxhYmxhCihLb21tZW50YXIgZXJ1ZWJyaWd0IHNpY2gpCgpBbm5vOiBmcmFndCBIb2x6ZmFlbGxlciBuYWNoIE5hcnJlbmJhbGwKKG5lZSwgZGEgYmlzdCBEdSBoaWVyIGZhbHNjaCEpCgpXdWxmZXJlOiBmcmFndCBIb2x6ZmFlbGxlciBuYWNoIFp3ZXJnZW4KKHdhciBkYXMgaW0gU2NobmVld2l0dGNoZW4tTWFlcmNoZW4gbmljaHQgZWluIEZvZXJzdGVyLCBkZXIgc2llIGluCmRlbiBXYWxkIGdlYnJhY2h0IGhhdD8gRGVyIEhvbHpmYWVsbGVyIGthbm4gZGEgYWxzbyB3aXJrbGljaCBuaWNodHMKZGFmdWVyKQoKVXJndXNoOiBmcmFndCBIb2x6ZmFlbGxlciBuYWNoIG5hcnJlbmJhbGwKKG5laW4sIEhJRVIgc3BpZWx0IGRpZSAoTmFycmVuLSlNdXNpayBkZWZpbml0aXYgbmljaHQhKQoKVXJndXNoOiBmcmFndCBIb2x6ZmFlbGxlciBuYWNoIE5hcnJlbmJhbGwKKGF1Y2ggbmljaHQsIHdlbm4gbWFuIGVzIGdyb3Nzc2NocmVpYnQpCgpVcmd1c2g6IGZyYWd0IEhvbHpmYWVsbGVyIG5hY2ggZ2RnZ2QKKGh1ZWJzY2guIEFiZXIgbGVpZGVyIGF1Y2ggc2lubmxvcy4pCgpLbG9uazogZnJhZ3QgSG9semZhZWxsZXIgbmFjaCBLb3N0dWVtYmFsbAoobmEgamEsIHdlbmlnc3RlbnMgbWFsIGV0d2FzIEFid2VjaHNsdW5nIGluIGRlbiBGcmFnZW4uLi4pCgpLbG9uazogZnJhZ3QgSG9semZhZWxsZXIgbmFjaCBGZXN0CihkYXMgaGF0dGVuIHdpciBhdWNoIG5vY2ggbmljaHQpCgpFYWdsZTogZnJhZ3QgQW5uZSBuYWNoIFdpdHoKKGljaCB3dWVyZGUgamEgdWViZXIgZGVuIFdpdHogbGFjaGVuLCBhYmVyIGljaCB2ZXJtdXRlLCBkZXIgVmlleiB3YXIKZ2VtZWludCkKCkVhZ2xlOiBmcmFndCBBbm5lIG5hY2ggV2lldHoKKG5pY2h0IGdhbnosIGFiZXIgc2Nob24gRVRXQVMgYmVzc2VyKQoKU2VtaXJhOiBmcmFndCBIb2x6ZmFlbGxlciBuYWNoIE5hcnJlbmJhbGwKKHZpZWxsZWljaHQgc29sbHRlIGljaCB2b3IgZGllIEh1ZXR0ZSBlaW4gU2NoaWxkIHN0ZWxsZW46IEhpZXIgaXN0CktFSU4gTmFycmVuYmFsbCEpCgpIZWxsb3dlZW46IGZyYWd0IEFubmUgbmFjaCB2aWV6dAooVmlleiBtaXQgVGVlIGdlbWlzY2h0PyBTY2htZWNrdCBkYXM/KQoKUm9hZHJ1bm5lcjogZnJhZ3QgSG9semZhZWxsZXIgbmFjaCBHZW5lc2lzaG9laGxlCih3aWUgZWluZSBIb2VobGUgc2llaHQgZGllIEhvbHpmYWVsbGVyaHVldHRlIG51biB3aXJrbGljaCBuaWNodCBhdXMuLi4pCgpBbGNhcG9uZTogZnJhZ3QgSG9semZhZWxsZXIgbmFjaCBGcm9zY2hlcmluCihpbnRlcmVzc2FudGUgRnJhZ2U6IFdpZSBoZWlzc3QgZGllIHdlaWJsaWNoZSBGb3JtIHZvbiBGcm9zY2g/CkZyb2VzY2hpbj8gRnJvc2NoaW4/IG9kZXIgZG9jaCBGcm9zY2hlcmluPykKClBoaWxvOiBmcmFndCBIb2x6ZmFlbGxlciBuYWNoIEhvY2hlYmVuZQooYXUgbmVpbi4gRGEgYmlzdCBEdSBoaWVyIGdhbnogdW5kIGdhciB2ZXJrZWhydCkKCk5vcndlZ2VyOiBmcmFndCBIb2x6ZmFlbGxlciBuYWNoIFByaW56ZXNzaW4KKE9kZXIgZ2lidCBlcyBkYSBkb2NoIGVpbiBNYWVyY2hlbj8pCgpOb3J3ZWdlcjogZnJhZ3QgSG9semZhZWxsZXIgbmFjaCBHb2xkYmFsbAooaG1tbW0uLi4gZGVyIEhvbHpmYWVsbGVyIGtsYXV0IGRlciBQcmluemVzc2luIGRlbiBHb2xkYmFsbD8KRGFzIE1hZXJjaGVuIGtlbm5lIGljaCBuaWNodC4pCgpFZDogZnJhZ3QgQW5uZSBuYWNoIFZpZQooamFhYS4uLiBuYWhlIGRyYW4pCgpCb2JvOiBmcmFndCBBbm5lIG5hY2ggSGFra2lra3QKKHVwcywgZGEgaGFiZSBpY2ggamEgZGllIHdpY2h0aWdzdGUgSW5mb3JtYXRpb24gdmVyZ2Vzc2VuIGVpbnp1YmF1ZW4pCgpCb2JvOiBmcmFndCBBbm5lIG5hY2ggaGFra2lra3QKKHRqYSwgZGVyIGtvbm50ZSBlcyBuaWNodCBnbGF1YmVuLCBkYXNzIEFubmUgbml4IHZvbiBIYWtraWtrdCB3ZWlzcy4gSWNoCmF1Y2ggbmljaHQpCgpCb2JvOiBmcmFndCBBbm5lIG5hY2ggR2F0ZXMKKHRqYSwgenUgQmlsbHktQm95IHdlaXNzIGF1Y2ggQW5uZSBuaWNodHMuLi4pCgpCb2JvOiBmcmFndGUgQW5uZSBuYWNoIFBoeXNpawoodW5kIFBoeXNpa2VyaW4gaXN0IHNpZSBqYSBudW4gd2lya2xpY2ggbmljaHQpCgpLcmlnaTogZnJhZ3QgSG9semZhZWxsZXIgbmFjaCBIaXBwZQooYWxzbyBiaXR0ZSEgYXVjaCBlaW4gSG9semZhZWxsZXIgaGF0IGVzIG5pY2h0IG5vZXRpZywgc2ljaCBtaXQgc29sY2hlbgpTdWJqZWt0ZW4gd2llIEhpcHBlIGFienVnZWJlbi4uLikKClNjaGxvbno6IGZyYWd0IEhvbHpmYWVsbGVyIG5hY2ggTmFycmVuYmFsbAoobmVpbiwgZXMgaXN0IG5pY2h0IGhpZXIhISEpCgpSdWViZTogZnJhZ3QgSG9semZhZWxsZXIgbmFjaCBOYXJyZW5iYWxsCih3aXJrbGljaCBuaWNodCEgZGllIFF1ZXN0IGlzdCB3b2FuZGVycyEpCgpSdWViZTogZnJhZ3QgSG9semZhZWxsZXIgbmFjaCBFaW5sYWR1bmcKKHdlbm4gaGllciBrZWluIEJhbGwgaXN0LCBicmF1Y2h0IG1hbiBuYXR1ZXJsaWNoIGF1Y2gga2VpbmUgRWlubGFkdW5nLiBJc3QKZG9jaCBsb2dpc2NoLCBvZGVyPykKClNpbHZhbmE6IGZyYWd0IEFubmUgbmFjaCBTaWx2YW5hCihIbW1tLiBTaWx2YW5hIGF1ZiBkZXIgU3VjaGUgbmFjaCBzaWNoIHNlbGJzdD8pCgpTaWx2YW5hOiBmcmFndCBBbm5lIG5hY2ggTGkKKGFiZXIgbmFjaCBUaG9yaW4gZnJhZ3Qgc2llIG5pY2h0Li4uKQoKUGFtcGVyczogZnJhZ3QgSG9semZhZWxsZXIgbmFjaCBOYXJyZW5iYWxsCihuZWluLCBpY2ggc2FnZSBuaXggbWVocikKCgpGYXppdDogRWluIGRyZWlmYWNoZXMgSG9jaCBhdWYgUF9MT0dfSU5GTyEgOi0pCgpJbiBadWt1bmZ0IHdlcmRlbiBkaWUgRnJhZ2VuIHVlYnJpZ2VucyBuaWNodCBtZWhyIG1pdGdlbG9nZ3QgLSBhbHNvCmZyYWd0IHJ1aGlnIHdlaXRlciEKCgogICAgIC0gQ2FsdW0gKFR1cmJvLURlYnVnZ2VyKQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCZXNjaHdlcmRlIDotKSkpIChRdWlsbGlhbiwgMjUuIE1hciAxOTk1LCAxOToxOToyMyk6Cm5ldWxpY2ggYmVpIGVpbmVyIFF1ZXN0IChpbiBLZWxsZXIgZ2VmYWxsZW4gYWxsZSBTYWNoZW4gd2VnIHVuZCBldHdhIDFoCnNwYWV0ZXIpOgoKRHUgYml0dGVzdCBkZW4gS29jaCB1bSBkaWUgTWFobHplaXQuCkRlciBLb2NoIHNhZ3Q6IEFiZXIgRGlyIGhhYmUgaWNoIGRpZSBNYWhsemVpdCBkb2NoIHNjaG9uIGdlZ2ViZW4hCgpbQWxsZ2VtZWluOlF1aWxsaWFuXSBhYWFhYWFhYWhoaGhoaGhoaGhoCk5lbGwga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpbQWxsZ2VtZWluOlF1aWxsaWFuIHdpbGwgamV0enQgc29mb3J0IGVpbmVuIFJlc2V0a25vcGYgaGFiZW4hXQpEdSBiaXR0ZXN0IGRlbiBLb2NoIHVtIGRpZSBNYWhsemVpdC4KRGVyIEtvY2ggc2FndDogQWJlciBEaXIgaGFiZSBpY2ggZGllIE1haGx6ZWl0IGRvY2ggc2Nob24gZ2VnZWJlbiEKPiBFaW5lIFR1ZXIgc2NobGllc3N0IHNpY2guCkR1IGJpdHRlc3QgZGVuIEtvY2ggdW0gZGllIE1haGx6ZWl0LgpEZXIgS29jaCBoZWJ0IGRlbiBEZWNrZWwgZGVzIGtsZWluZW4gVG9wZmVzIGFiLCBydWVocnQgbm9jaCBlaW5tYWwKdW0sIG5pbW10IGVpbiBUYWJsZXR0IHVuZCBlaW5lIFNjaHVlc3NlbCB2b20gUmVnYWwsIGZ1ZWxsdCBkYXMgRXNzZW4KaW4gZGllIFNjaHVlc3NlbCwgc3RlbGx0IGRpZSBTY2h1ZXNzZWwgYXVmIGRhcyBUYWJsZXR0IHVuZCByZWljaHQgRGlyCmRhcyBUYWJsZXR0LgoKUXVpbGxpYW4KClBTOiBtZXJrZTogaW1tZXIgc2Nob2VuIGxhdXQgYmVzY2h3ZXJlbiA6LSkpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BpZWxlcidzIFRyYXVtISAoS3JldGVrLCAyNS4gTWFyIDE5OTUsIDIwOjM4OjQ5KToKTmV1bGljaCwgaW0gT3JrbGFnZXIsIGJlaSBXYXJ0ZW4gYXVmIGFsbG1hZWhsaWNoZSBIZWlsdW5nLCB3ZWlsIGljaAprZWluIEdlbGQgenVtIFRhbmtlbiBoYXR0ZToKCldhbm4ga29tbWVuIHNpZSBlbmRsaWNoLCBkaWUgRmVhdHVyZXMsIHZvbiBkZW5lbiBTcGllbGVyIHRyYWV1bWVuISAoQm9pbmcKd2FocnNjaGVpbmxpY2ggYXVjaCwgYWJlciBkYSBzaW5kJ3Mgd29obCBlaGVyIEFscHRyYWV1bWUhKQoKLSBEZXIgdm9lbGxpZyBrb3N0ZW5sb3NlIFNwcnVjaCAic2VsYnN0aGVpbHVuZyIsIGVyaGFlbHRsaWNoIGFiIExldmVsMSwKICBiencuIGFscyBRdWVzdGJlbG9odW5nIGZ1ZXIgU2NocmF0LCBtaXQgMTAwJWlnZXIgRWZmaXppZW56Ci0gRGllIHJvc2Fyb3RlIEJyaWxsZSwgbWl0IGRlciBkZXIgU3BpZWxlciBpbiBqZWRlbSBSYXVtIHNvZm9ydCwgZWdhbCBvYgogIGltIExhbmctLCBLdXJ6LSBvZGVyIFVsdHJha3Vyei1Nb2R1cywgc29mb3J0IGFsbGUgR2VoZWltdHVlcmVuLCBaVHMKICB1bmQgcXVlc3RyZWxldmFudGVuIEdlZ2Vuc3RhZW5kZSBmaW5kZXQKLSBEYXMgcGFzc2VuZGUgcm9zYXJvdGUgSG9lcmdlcmFldCwgZGFzIGRlbSBTcGllbGVyIGJlaW0gQmV0cmV0ZW4gZWluZXMKICBSYXVtZXMgc29mb3J0IGFsbGUgaW4gZGllc2VtIFJhdW0gbW9lZ2xpY2hlbiBTeW50YXhlbiBtaXR0ZWlsdCwKICBlaW5zY2hsaWVzc2xpY2ggZGVuIHp1c2FldHpsaWNoZW4gS29tbWFuZG9zLCBkaWUgaW4gZGVuIGltIFJhdW0KICBiZWZpbmRsaWNoZW4gTlBDcyBpbXBsZW1lbnRpZXJ0IHNpbmQKLSBFaW4gdHJhZ2JhcmVyIFJlc2V0a25vcGYsIGRlciBqZWRlbiBiZWxpZWJpZ2VuIFJhdW0sIGluIGRlbSBzaWNoIGRlcgogIFNwaWVsZXIgYmVmaW5kZXQsIHNvZm9ydCByZXNldHRldDsgYWxzIERlbHV4ZS1WZXJzaW9uIHdhZXJlIGF1Y2ggZGVua2JhciwKICBkYXMgc2VsZWt0aXZlIFJlc2V0dGVuIHZvbiBOUENzLCBRdWVzdHRvb2xzLCBvZGVyIGFuZGVyZW4gT2JqZWt0ZW4KICB6dXp1bGFzc2VuCi0gRGllIEJveGhhbmRzY2h1aGUsIGRpZSBQX1dFQVBfQ0xBU1MgZnVlciBIYWVuZGUgYXVmIDIwMCBob2Noc2V0emVuCi0gRGVyIEZvdG9rb3BpZXJlciwgaW4gZGVuIGljaCBlaW5lIEJsdWVwcmludCBlaW5sZWdlICh2aWEgUGZhZGVpbmdhYmUpLAogIGRlciBkYW5uIGVpbmUgS29waWUgKHNwcmljaDogQ2xvbmUpIGF1c3NwdWNrdCwgZWdhbCwgd2VsY2hlcyBPYmpla3QgKE9LLAogIFJhZXVtZSB1bmQgU3BpZWxlciBrb2VubnRlIG1hbiBkYXZvbiBhdXNzY2hsaWVzc2VuKQotIERlciAiTWFnaWMgTWFya2VyIiwgbWl0IGRlbSBtYW4gUHJvcGVydGllcyBpbiBPYmpla3RlbiAia29ycmlnaWVyZW4iCiAga2FubgoKVW5kIGRhcyBhbGxlcyBuYXR1ZXJsaWNoIGZyZWkgaW0gTGFkZW4gdmVya2FldWZsaWNoLCB6dSBlcnNjaHdpbmdsaWNoZW4KUHJlaXNlbiwgdmVyc3RlaHQgc2ljaCwgb2RlciBpbiBsZWljaHQgenUgZXJsZWRpZ2VuZGVuIE1vbnN0ZXJuLgoKQWNoIGphLCB1bmQgYWxzIGxldHp0ZXMgZHJhZW5ndCBzaWNoIG1pciBub2NoIGVpbiBSYWV0c2VsYnVjaCBhdWYsIGluIGRlbQoob2ggV3VuZGVyISkgZGllIEtvbXBsZXR0bG9lc3VuZ2VuIGFsbGVyIGFuZ2VzY2hsb3NzZW5lbiBRdWVzdHMKc3RlaGVuLi4uKQoKCk1pdCBkaWVzZW4gVG9vbHMgd3Vuc2NobG9zIGdsdWVja2xpY2gsCgpFdWVyCiAgICAgXyAgIF9fIF9fXyAgX18KfCAvIHwgXCB8ICAgIHwgIHwgICB8IC8KfC8gIHxfLyB8XyAgIHwgIHxfICB8Lwp8XCAgfFwgIHwgICAgfCAgfCAgIHxcCnwgXCB8IFwgfF9fICB8ICB8X18gfCBcCgooaW4gSWxsdXNpb25lbiBzY2h3ZWJlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2hydW1wZmkgKENhcmFkaHJhcywgMjUuIE1hciAxOTk1LCAyMjoyNzoxNyk6CkR1IGhhc3QgamV0enQgNTYgTGViZW5zcHVua3RlIHVuZCA0IE1hZ2llcHVua3RlLgpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gc2NocmVpYnQgbWFsIHdhcyBpbiBkaWUgTVBBLCBtaXIgaXMgZmFkCkR1IGhhc3QgamV0enQgNTcgTGViZW5zcHVua3RlIHVuZCA1IE1hZ2llcHVua3RlLgoKCiBhIHNvIGVpbiBzY2htYXJybiA6KQogICAgICAgICAgICBDYXJhZGhyYXMgLSBpbiBkZXIgU1NQIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2hydW1wZmlJSSAoQ2FyYWRocmFzLCAyNS4gTWFyIDE5OTUsIDIyOjI4OjQwKToKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIGdldGFuCj4gRHUgaGFzdCBqZXR6dCA2MyBMZWJlbnNwdW5rdGUgdW5kIDExIE1hZ2llcHVua3RlLgpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gKmdyaW5zKgoKICAgICAgOikpKSkpICAgICAgQ2FyYWRocmFzIGRlciBNdWVsbG1hbm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdyaW1tYm9ybiAoQ2FyYWRocmFzLCAyNS4gTWFyIDE5OTUsIDIyOjMwOjA0KToKW0FsbGdlbWVpbjpHcmltbWJvcm5dIEljaCBnZXdvZWhuIG1pY2ggZXJzdCBuYWNoIHVuZCBuYWNoIGRyYW4sIGRhc3MgaWNoCltBbGxnZW1laW46R3JpbW1ib3JuXSBuaWNodCBtZWhyIGVpbmZhY2ggYWxsZXMgdW1uaWV0ZW4gZGFyZiwgd2FzIG1pY2ggbmVydnQuCltBbGxnZW1laW46R3JpbW1ib3JuXSA6LSkKRHUgaGFzdCBqZXR6dCA3NiBMZWJlbnNwdW5rdGUgdW5kIDI0IE1hZ2llcHVua3RlLgoKIDopKSkpKSkpKSkpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa3JldGVrIChDYXJhZGhyYXMsIDI1LiBNYXIgMTk5NSwgMjI6MzA6MTgpOgo+IFtBbGxnZW1laW46RnJvc2NoIEtyZXRla10gS2FubnN0IGlobiBqYSBjbG9uZW4sIEdyaW1tISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGtyZXRlayAoR3V5YnJ1c2gsIDI2LiBNYXIgMTk5NSwgMTk6MTU6MzgpOgojISBybj1DYXJhZGhyYXMgcnQ9Nzk2MTY3MDE4Ckxhbmd3ZWlsaWc/CkFuIGVpbmVtIFNhbXN0YWctQWJlbmQ/CmhtLi4uLi4KZGVuawpncnVlYmVsCkhtLi4uZ2VzdGVybiB3YXJzIGRvY2ggZ2FyIG5pY2h0IGxhbmd3ZWlsaWcKYWJlciBnZXN0ZXJuIGFiZW5kIHdhciBpY2ggYXVzbmFobXN3ZWlzZSBOSUNIVCBpbSBNdWQKaG0uLmljaCB2ZWVyc3RlaCBuaXggbWVoci4uLgphY2ggc286IGdlc29mZmVuIGhhYiBpY2ggdHJvdHpkZW0gd2llZGVyICpzZXVmeioKCkd1eWJydXNoCgpQLlMuOiBESWUgU0EtQWJlbmQgTXVkZGVyIHdlcmRlbiB2aWVlbGNpaHQgc2NobGF1IGF1cyBkZW0gR2VzY2h3YWxsZS4uYWJlciBpbQptb20gaXN0IGhpZXIgZWNodCBuaXggbG9zIDooCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmFudS4uLiAoU2lsdmFuYSwgMjcuIE1hciAxOTk1LCAwNzoxNjowMCk6ClNlaXQgZGVtIGxldHp0ZW4gU2h1dGRvd24gc2luZCA5NzE3MyBTZWt1bmRlbiB2ZXJnYW5nZW4uCkRhcyBzaW5kIDEgVGFnLCAyIFN0dW5kZW4sIDU5IE1pbnV0ZW4gdW5kIDMzIFNla3VuZGVuLgogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTW9uLCAyNy4gTWFyIDE5OTUsIDA3OjE0OjM0ICgxIFRlaWxuZWhtZXIpCgpTaWx2YW5hLi4uLi4uLi4uUgoKQWxsZWluZSBpbSBNb3JnZW5ncmF1ZW4gLSBkYXMgaXN0IG1pciBzY2hvbiBld2lnIG5pY2h0IG1laHIgcGFzc2llcnQuLi4KClNpbHZhbmEgLSBlaW5zYW0uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXR0ZSBuZXVpZ2tlaXRlbi4uLiAoTXVwZmVsLCAyNy4gTWFyIDE5OTUsIDA4OjU0OjU2KToKZ2VyYWRlIGJlaW0gbGVzZW4gZGVyIG5ld3MuLi4KCj4gbm4KJSBDb25uZWN0aW9uIHRvIE1vcmdlbkdyYXVlbiBjbG9zZWQ6IHJlY3Y6IE5vIHJvdXRlIHRvIGhvc3QKLS0tLSBObyB3b3JsZCAtLS0tCgotbXVwZmVsLQpwLnMuIHdhciBrZWluIGNyYXNoLi4uIGlyZ2VuZHdhcyBoYXQgbWljaCByYXVzZ2VoYXVlbi4uLiBrb21tdCB2b3IuLi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgWmVpdCB2ZXJnZWh0IChUaG9yaW4sIDI3LiBNYXIgMTk5NSwgMTE6MTQ6MzUpOgpBcm1hZ2VkZG9uIHJ1ZnQ6IEluIDI3NCBUYWdlbiwgOSBTdHVuZGVuLCAwIE1pbnV0ZW4gdW5kIDAgU2VrdW5kZW4gd2VyZGUgaWNoCkFybWFnZWRkb24gcnVmdDogZGllIFdlbHQgZW5kZ3VlbHRpZyB2ZXJuaWNodGVuISBVbSBkYXMgTW9yZ2VuR3JhdWVuIGJpcyB6dQpBcm1hZ2VkZG9uIHJ1ZnQ6IGRpZXNlbSBaZWl0cHVua3QgenUgcmV0dGVuLCBmZWhsZW4gbm9jaCAxNjA4IERNLgpbQWxsZ2VtZWluOk11cGZlbF0gd2FydCdzIGRvY2ggYWIuLi4gdW0gZGllIHplaXQgc2luZCB3aXIgYWxsZSBub2NoIGV0d2FzCltBbGxnZW1laW46TXVwZmVsXSBtdWVkZS4uLgpydWZlIHdvdywgZGFubiBoYWJlW0FsbGdlbWVpbjpEYWlNb25Wb2tdIEljaCB3ZWlzcyBhYmVyIGRlbiB2b24gRnJlaXRhZwpuaWNodC4gRGEgaGF0IGF1Y2gKW0FsbGdlbWVpbjpEYWlNb25Wb2tdIG5pZW1hbmQgZ2VhbnR3b3J0ZXQuIERhbmtlIEFybWFnZWRkb24KbiB3aXIgamEgbm9jaCB6ZWl0IDopCkR1IHJ1ZnN0OiB3b3csIGRhbm4gaGFiZW4gd2lyIGphIG5vY2ggemVpdCA6KQo+IFtBbGxnZW1laW46R3JpbW1ib3JuXSBXZXIgc2FndHMgZGVubi4gMTYwOCBETS4gVW5kIFNjaHJ1bXBmaSB3b2xsdGUgbWlyCm5pY2h0CltBbGxnZW1laW46R3JpbW1ib3JuXSBnbGF1YmVuLi4uCkFybWFnZWRkb24gcnVmdDogSW4gNCBUYWdlbiwgMTMgU3R1bmRlbiwgNDUgTWludXRlbiB1bmQgMCBTZWt1bmRlbiB3ZXJkZSBpY2gKQXJtYWdlZGRvbiBydWZ0OiBkaWUgV2VsdCBlbmRndWVsdGlnIHZlcm5pY2h0ZW4hIFVtIGRhcyBNb3JnZW5HcmF1ZW4gYmlzIHp1CkFybWFnZWRkb24gcnVmdDogZGllc2VtIFplaXRwdW5rdCB6dSByZXR0ZW4sIGZlaGxlbiBub2NoIDE2MDggRE0uCi1hIG1lbnNjaCwgdmVyZ2VoZW5Bcm1hZ2VkZG9uIHJ1ZnQ6IEluIDQgVGFnZW4sIDEyIFN0dW5kZW4sIDQ1IE1pbnV0ZW4gdW5kIDAKU2VrdW5kZW4gd2VyZGUgaWNoCkFybWFnZWRkb24gcnVmdDogZGllIFdlbHQgZW5kZ3VlbHRpZyB2ZXJuaWNodGVuISBVbSBkYXMgTW9yZ2VuR3JhdWVuIGJpcyB6dQpBcm1hZ2VkZG9uIHJ1ZnQ6IGRpZXNlbSBaZWl0cHVua3QgenUgcmV0dGVuLCBmZWhsZW4gbm9jaCAxNjA4IERNLgogZGllIHRhZ2Ugc2NobmVsbCA6KQpbQWxsZ2VtZWluOlRob3Jpbl0gbWVuc2NoLCB2ZXJnZWhlbiBkaWUgdGFnZSBzY2huZWxsIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGFwcG5hc2VuLUF3YXJkIChIYXJkaWwsIDI3LiBNYXIgMTk5NSwgMTU6MTA6MzUpOgojISBybj1HcmltbWJvcm4gcnQ9Nzk1OTg0NzE2CkdyaW1tYm9ybiBzY2hyZWlidDoKPkdyaW1tYm9ybiwgQXRoZWlzdCB1bmQgUGFwcG5hc2UuIEhhdCBlaW5lIFVlYmVyd2Vpc3VuZyBhbiBzZWluZW4gQnJ1ZGVyIGF1Y2gKZXJzdCBpbSA0LiBBbmxhdWYgZ2VzY2hhZmZ0LgoKQnJ1ZGVyPyBTbyB3YXMgIGdpYnRzIHp3ZWltYWw/CgoJCUhhcmRpbCBhcmdsdCBlaW4gd2VuaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBhcHBuYXNlbi1Bd2FyZCAoRW5neXd1Y2ssIDI3LiBNYXIgMTk5NSwgMTU6MjA6MTEpOgojISBybj1IYXJkaWwgcnQ9Nzk2MzA5ODM1Ck5pY2h0IG51ciAyLCBzb25kZXJuIG1pbmRlc3RlbnMgMyBtYWwuLgoKU2V1ZnplbmQsIEVuZ3l3dWNrLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWxpY2gsIGluIC9sb2cvcmVwb3J0L2NhbHVtLnJlcCAoWWVuZGksIDI3LiBNYXIgMTk5NSwgMTU6MzM6MjEpOgojISBybj1DYWx1bSBydD03OTYwODk4MDYKClNjaG9lbi4uLgouLi4gdW5kIG51biBzb2xsdGVzdCBEdSB6dSBhbGwgZGllc2VuIEZyYWdlbiBBbnR3b3J0ZW4gc2NocmVpYmVuLCB1bmQgc2VpIGVzCmF1Y2ggbnVyIGVpbgogICAgICAgICAgICAgIkhvY2hlYmVuZT8gVGphLCBkYSBtdXNzdCBEdSB2b24gaGllciBhdXMgW2V0Yy4uLl0iLgpvZGVyIGVpbiAgICAgIk5laW4sIGRlciBCYWxsIGlzdCBoaWVyIG5pY2h0LCB0dXQgbWlyIGxlaWQuCiAgICAgICAgICAgICAgQWJlciB2ZXJzdWNoIGVzIGRvY2ggbWFsIFtkYS11bmQtZGFdISIKCkVzIHd1bmRlcnQgbWljaCBpbW1lciB3aWVkZXIsIHdpZSB3ZW5pZyBkaWUgQmV3b2huZXIgZGVzIE1vcmdlbkdyYXVlbnMgdm9uCmRlciBHZWdlbmQsIGluIGRlciBzaWUgbGViZW4sIHVuZCBkZXJlbiBCZXdvaG5lcm4sIGRpZSBzaWUgZG9jaCBrZW5uZW4Kc29sbHRlbiwgd2lzc2VuLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdG9ydGVsbGluaSBJIChDYXJhZGhyYXMsIDI3LiBNYXIgMTk5NSwgMTU6NTg6MzApOgogICAgICAgICAgICBIdWh1CgpIaWVyIGVpbiBrbGVpbmVzIFRvcnRlbGxpbmkgUmV6ZXB0IGZ1ZXIgQmxvb2Rnb3JlIDopCgpUb3J0ZWxsaW5pIGFsbGEgUGFubmEgKG1pdCBTYWhuZSEgKnJ1bmRlbiBCYXVjaCB0YWV0c2NoZWwqKQoKNTAwIGcgVC4gaW4gU2Fsendhc3NlciBrb2NoZW4sIG5hIGphLCB3aXNzZW4gd2lyIGphIGVoIDopIHVuZCBkYW5uCm5vY2ggZGllIFNvc3NlLCBqYSwgZGFzIGlzdCBkYXMgd2ljaHRpZ3N0ZS4uLi4gYWxzbywgNDAgZyBCdXR0ZXIKZXJoaXR6ZW4sIDYgYmlzIDggU2FsYmVpYmxhZXR0ZXIgYWJzcHVlbGVuLCB0cm9ja2VudHVwZmVuLCByZWluCmRhbWl0LCAyIGtub2JsYXVjaHplaGVuIHNjaGFlbGVuLCBhdWNoIHJlaW4sIGJpcyBkZXIga25vYmxhdWNoCmZhcmJlIGFubmltbXQsIGRhbm4gMS80IGxpdGVyIHN1ZXNzZSBzYWhuZSBkYXp1IHVuZCBhdWYga25hcHAgZGllCmhhZWxmdGUgZWlua29jaGVuLCBkYW5uIHNhbGJlaSB1bmQga25vZmkgcmF1cyB1bmQgdG9ydGVsbGluaSBpbiBlaW5lCnZvcmdld2Flcm10ZSBzY2h1ZXNzZWwgdW5kIG1pdCBkZXIgU2FobmUgdmVybWlzY2hlbiwgbmF0dWVybGljaCBkYXJmCmF1ZiBwYXJtZXNhbiBuaWNodCBmZWhsZW4sIGNhLiA0MCBncmFtbSBub2NoIGRydWViZXJzdHJldWVuLgpkYXp1IGVpbmVuIHNhbGF0IG1pdCB6aXRyb25lbi1vZWwtbWFyaW5hZGUgdW5kIHpCIG9yYW5nZW5zY2huaXR6ZW4KdW5kIHNjaHdhcnplbiBPbGl2ZW4sIHdlcnMgbWFnICpzY2h1ZXR0ZWwqCgogICAgICBjaWFvLCBkaWVzIHdhciBOdW1tZXIgMQoKICAgICAgICAgICAgQ2FyYWRocmFzIC0gbW9tZW50YW4gaG9lY2hzdGVucyBVbnRlcmtvY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJsb29keUlJIChDYXJhZGhyYXMsIDI3LiBNYXIgMTk5NSwgMTY6MDc6NDUpOgogICAgICAgICAgICAgIEh1aHUKClVuZCBkYXMgbmFlY2hzdGUgUmV6ZXB0IDopKSBBdWZsYXVmIEdydWVuLVdlaXNzICh3ZXJkZXIhIHdlcmRlciEgKmdyaW5zKikKCjI1MCBnIFRvcnQuIGluIEZsZWlzY2hicnVlaGUga29jaGVuLCAyIHp3aWViZWxuIHNjaGFlbGVuLCBoYWNrZW4sCjIgZ3J1ZW5lICYgMiByb3RlIFBhcHJpa2EgcHV0emVuIHdhc2NoZW4gc3RyZWlmZW4gc2NobmVpZGVuLCAyMDAgZwplbW1lbnRhbGVyIHJhc3BlbG4gKGdyb2IpLiBnZWtvY2h0ZSB0b3J0ZWxsaW5pIChhbCBkZW50ZSkgaW4gZmV1ZXItCmZlc3RlIGZvcm0gZ2ViZW4sIGRpZSB2b3JoZXIgbWl0IDIgRUwgT2VsIGVpbmdlZmV0dGV0IHd1cmRlIHVuZCBhYndlY2gtCnNlbG5kIHNjaGljaHRlbiBtaXQgendpZWJlbG4sIHBhcHJpa2EgdW5kIGthZXNlLiAzIEVpZXIgbWl0IDEvOCBsCnNhaG5lIHVuZCAxLzggbGl0ZXIgbWlsY2ggdmVycXVpcmxlbiwgc2FseiwgcGZlZmZlciAoc2Nod2FyeikgdW5kCmdlcmllYmVuZSBtdXNrYXRudXNzIHJlaW4sIHVlYmVyIGF1ZmxhdWYgZ2llc3Nlbi4gbWl0IDIgRUwgUGFybWVzYW4KYmVzdHJldWVuIHVuZCBiZWkgMjAwIEdyYWQgMzAgYmlzIDM1IG1pbiB1ZWJlcmJhY2tlbi4KTmF0dWVybGljaCBhdWNoIHdpZWRlciBTYWxhdGUgZGF6dSwgZ2FueiB3aWNodGlnIDopIE1pdCB2aWVsZW4gS3JhZXV0ZXJuLgoKICAgICAgICB0c2Nob2UgICAgICAgICBDYXJhZGhyYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyb29vc2NoIDopIChDYXR3ZWF6bGUsIDI3LiBNYXIgMTk5NSwgMTc6MTY6NTYpOgpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIENhcmFkaHJhcywgMjUuIE1hciAxOTk1LCAyMzoyNjo1M106CkVpbiBGcm9zY2ggemllaHQgZWluIFBhYXIgU3RpZWZlbCBhbi4KU2luZCBkaWUgbmljaHQgenUgZ3Jvc3MgZnVlciBpaG4/ClNvbGx0ZSBkb2NoIHNwZXppZWxsZSBGcm9zY2hzdGllZmVsIGdlYmVuLgoKICAgICAgQ2FyYWRocmFzIC0gbXVlbGx0IGFnYWluCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xlaWRlciBtYWNoZW4gTGV1dGU/IChHcmltbWJvcm4sIDI3LiBNYXIgMTk5NSwgMTk6NDE6MjcpOgoKW01hZ2llcjpTbGFzaGVyXSBDaWFvIExldXRlCltTZWhlcjpTbGFzaGVyXSBDaWFvIFNlaGVyCgpBbHNvLCBMZXV0ZSBzaW5kIG51ciBNYWdpZXIsIFNlaGVyIHNpbmQgU2VoZXIgdW5kIG5vcm1hbGUgU3BpZWxlcj8gV2FzIHNpbmQKZGllPwoKTmFqYSwgTWFnaWVyIGhhbHQuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdC4gRGVyIGRhcyBpbiBzY2htYXJybiB1bmQgbmljaHQgaW4gbWFnaWVyLnh4eApnZXNjaHJpZWJlbiBoYXQsIGRhbWl0IGF1Y2ggU3BpZWxlciB3YXMgZGF2b24gaGFiZW4gdW5kIG5jaWh0IG51ciB2ZXJudWVuZnRpZ2UKTWVuc2NoZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcm9vb3NjaCA6KSAoQ2FyYWRocmFzLCAyOC4gTWFyIDE5OTUsIDAxOjQ2OjE1KToKIyEgcm49Q2F0d2VhemxlIHJ0PTc5NjMxNzQxNgp1cHBzLCBkZXIgYXJ0aWtlbCBzb2xsdGUgZWlnZW50bGljaCBhdWNoIG5hY2ggU2NobWFycm4sIHdhcyBpc3QgbWlyCmRlbm4gZGEgd2llZGVyIGRhendpc2NoZW5nZWtvbW1lbj8KU3RyYW5nZSA6KSkKVW5kIGdsZWljaCBkYXMgbmFlY2hzdGUgUmV6ZXB0LCBiaXR0ZSBzY2hhbHRlbiBzaWUgZ2xlaWNoIHdpZWRlciBlaW4Kd2VubiBlcyBoZWlzc3Q6IERlciBTZW5zZW5tYW5uIG1hY2h0IFVybGF1Yi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvcnRlbGxpbmkgSUlJIChDYXJhZGhyYXMsIDI4LiBNYXIgMTk5NSwgMDE6NDY6NTIpOgogICAgICAgICBzbywgdW5kIGhpZXIgZGllIE51bW1lciAzIGFuIFJlemVwdGVuIGZ1ZXIgQmxvb2R5LAplcnN0IG1hbCBkaWUgbGV0enRlOiBUb3J0ZWxsaW5pIG1pdCBlaW5mYWNoZXIga2Flc2Vzb3NzZQoKNTAwIGcgVG9ydGVsbGluaSBpbiAxLjUgbGl0ZXIgRmxlaXNjaGJydWVoZSAoYXVzIHd1ZXJmZWxuKSAyMCBtaW4gZ2FyZW4uCmRpZSBzb3NzZTogMzAgZ3JhbW0gQnV0dGVyIGluIGVpbmVtIHRvcGYgZXJoaXR6ZW4sIDMwIGcgbWVobCBkYXp1IHVuZApnb2xkZ2VsYiB1bnRlciBydWVocmVuIGFuc2Nod2l0emVuIGxhc3Nlbi4gbWl0IDEvNCBsIGZsZWlzY2hicnVlaGUgdW5kCjEvOCBsaXRlciBNaWxjaCBhdWZnaWVzc2VuIHVuZCA4IE1pbiBsYW5nIGtyYWVmdGlnIGtvY2hlbi4gc3RhZW5kaWcKdW1ydWVocmVuLiAxLzggbGl0ZXIgc3Vlc3NlIHNhaG5lIHVuZCA1MCBnIGdlcmllYmVuZXIgZW1tZW50YWxlciB1bmQKMjUgZ3JhbW0gZ2VyaWViZW5lciBwYXJtZXNhbiB1bnRlcm1pc2NoZW4sIG1pdCBwZmVmZmVyLCBtdXNrYXRudXNzIHVuZAp6aXRyb25lbnNhZnQgYWJzY2htZWNrZW4gYWJzY2htZWNrZW4uCkVpbmUgaGFuZHZvbGwga2VyYmVsIGFic3B1ZWxlbiwgdHJvY2tlbnNjaHdlbmtlbiB1bmQgZ3JvYiBoYWNrZW4sIGRpZQpUb3J0ZWxsaW5pIGFidHJvcGZlbiwgaW4gdm9yZ2V3YWVybXRlIHNjaHVlc3NlbCB1bmQgbWl0IGRlciBzb3NzZSB2ZXItCm1pc2NoZW4sIG1pdCBkZW0ga2VyYmVsIGJlc3RyZXVlbiAobm9jaCBuaWNodCB2ZXJzdWNodCkgdW5kIG1pdCBTYWxhdAp3aWUgdWVibGljaCAoVGVuZGVueiBncnVlbiBtaXQgRXNzaWctS3JhZXV0ZXIpIHVuZCBhbHMgZ2V0cmFlbmsgZWluZW4KbGVpY2h0ZW4gd2Vpc3N3ZWluLgoKICAgICAgZGllcyB3YXIgdm9yZXJzdCBkYXMgbGV0enRlIFJlemVwdCBmdWVyIGhldXRlLCBtZWhyICdlaW5mYWNoZXMnCiAgICAgIGhhYmUgaWNoIGZ1ZXIgVG9ydGVsbGluaSBuaWNodAoKICAgICAgICAgICAgICBjaWFvIGNpYW8KICAgICBDYXJhZGhyYXMgLSBkZXIgYmVzdGUgRnJldW5kIGRlcyBTZW5zZW5tYW5ucwogICAgICAgICAgICBFaW4gRnJlZWV1bmQsIGVpbiBndXRlciBGcmVlZXVuZC4uLiA6KSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmZyYWdlIChHYXN0MSwgMjguIE1hciAxOTk1LCAwMjo0MzoxOSk6CgpIYXQgbWlyIGVpbmVyIGRpZSB3d3ctQWRyZXNzZSBmdWVyIFBlbnRob3VzZT8KCipzYWJiZXIqCkdhc3QyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGltIFNlaGVybGFkZW4gKEJhcm9uLCAyOC4gTWFyIDE5OTUsIDA4OjMyOjE2KToKRHUgc3RlaHN0IGltIGVyc3RlbiBTZWhlcmxhZGVuIGRlcyBNb3JnZW5HcmF1ZW5zLiBEaWVzZXIgTGFkZW4sIGVpbiBrbGVpbmVyClJhdW0gaW0gRXJkZ2VzY2hvc3MgZWluZXMgV29obmhhdXNlcywgdmVya2F1ZnQgbmFjaCBLYXRhbG9nLCB1bmQgbnVyIGFuClNlaGVyLiBNaXQgJ3plaWdlJyBiZWtvbW1zdCBEdSBkZW4gS2F0YWxvZyBnZXplaWd0LCB1bmQga2F1ZmVuIGthbm5zdCBEdQplaW4gT2JqZWt0IG1pdCAna2F1ZmUgPG5yPicgbmFjaCBLYXRhbG9nbnVtbWVyLgpEZXIgQXVzZ2FuZyBsaWVndCBpbSBXZXN0ZW4sIGVpbmUga2xlaW5lIFR1ZXIgbmFjaCBOb3JkZW4gZnVlaHJ0IGluIGVpbmVuCk5lYmVucmF1bS4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHdlc3RlbiB1bmQgbm9yZGVuLgpFaSBkZXNzIGlzcyBkb2NoIEZyaWVkZXIgZGUgYWxkZSBoZXNzZS4KRWluZSBTb2Z0ZWlzbWFzY2hpbmUuCj4ga2F1ZmUgOApFbnRzY2h1bGRpZ3VuZywgYWJlciBkYXMgaGFiZSBpY2ggZ2VyYWRlIG5pY2h0IHZvcnJhZXRpZy4KRHUgbXVzc3QgYXVmIGRpZSBuYWVjaHN0ZSBMaWVmZXJ1bmcgd2FydGVuLgoKKiBjYS4gNSBNaW51dGVuIHNwYWV0ZXIgKgoKPiBrYXVmZSA4ClR1dCBtaXIgbGVpZCwgdm9uIGRpZXNlbSBBcnRpa2VsIGRhcmYgaWNoIERpciBpbSBNb21lbnQga2VpbiB6d2VpdGVzCkV4ZW1wbGFyIHZlcmthdWZlbi4gRnJhZyBub2NoIGVpbm1hbCBuYWNoLCB3ZW5uIGljaCBkaWUgbmFlY2hzdGUgTGllZmVydW5nCmJla29tbWVuIGhhYmUuCgpCYXJvbiAoZ3VtbWVsbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW5mcmFnZSAoR2FzdDIsIDI4LiBNYXIgMTk5NSwgMTA6NDI6MjQpOgojISBybj1HYXN0MSBydD03OTYzNTEzOTkKCmljaCBoYWJlIGRpZSBBZHJlc3NlIHZvbiBQZW50aG91c2UgaGVyYXVzZ2VzdWNodDoKCmh0dHA6Ly93d3cucGVudGhvdXNlbWFnLmNvbS8KCkZhbGxzIGplbWFuZCBhdWNoIGRpZSBQbGF5Ym95IFdXVy1TZWl0ZSBzdWNodDoKCmh0dHA6Ly93d3cucGxheWJveS5jb20vCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbmZyYWdlIChPZXR0aSwgMjguIE1hciAxOTk1LCAxMDo1NToyMSk6CiMhIHJuPUdhc3QyIHJ0PTc5NjM4MDE0NAoqc2FiYmVyKiAqaGVjaGVsKiAqbGVjaHoqCmdsZWljaCBtYWwgYXVzcHJvYmllcmVuIDotKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQW5mcmFnZSAoR2FzdDEsIDI4LiBNYXIgMTk5NSwgMTQ6MTY6NTApOgojISBybj1HYXN0MiBydD03OTYzODAxNDQKCkRhbmtlLCBkaWUgdm9uIFBsYXlib3kgaGF0dGUgaWNoIHNjaG9uLi4uCgpHYXN0MiAob2RlciAxPykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFuZnJhZ2UgKE9ldHRpLCAyOC4gTWFyIDE5OTUsIDE1OjI5OjEyKToKIyEgcm49R2FzdDEgcnQ9Nzk2MzkzMDEwCkdydW1tZWwKQkVUUlVHICEKYS4pIFNpbmQgZGllIFZlcmJpbmR1bmdlbiBlbGVuZCBMYW5nc2FtICEKYi4pIFNpbmQgZGllIEJpbGRjaGVuIHppZW1saWNoIGxhbmd3ZWlsaWcsIGtlaW5lIFRJVFRFTi4uLgoKRWluIHNjaHdlciBlbnR0YWV1c2NodGVyCk9ldHRpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQW5mcmFnZSAoSm9mLCAyOC4gTWFyIDE5OTUsIDE1OjMxOjU3KToKIyEgcm49T2V0dGkgcnQ9Nzk2Mzk3MzUyCkhtIGRhbm4gbXVzcyBpY2ggamEgbmljaHQgbWVociBuYWNoc2VoZW4gLSBEQVJVTSB0cmF1dGVuIGRpZSBzaWNoIG51ciBhbHMKR0FTVCwgZGllIEFkcmVzc2UgenUgcG9zdGVuIDopCgogSm9mCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXV1cgKEFuYXRvbCwgMjguIE1hciAxOTk1LCAxNzo1Nzo1MSk6CgpXbyB3aXIgc2Nob24gaW50ZXJlc3NhbnRlIFNlaXRlbiBwb3N0ZW4uLi4KCmh0dHA6Ly93d3cuY29zeS5zYmcuYWMuYXQvcmVjL3N0YXJ0cmVrL2luZGV4Lmh0bWwKCkFuYXRvbCAoKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2VzZWhlbiBpbSBUaWVnZXJ3YWxkLi4uQW0gbWF1bHd1cmZodWVnZWwgKFRvYXN0YnJvdCwgMjguIE1hciAxOTk1LCAyMDoyMToyNik6Ck5hY2hkZW0gaWNoIGRlbiBNYXVsd3VyZiBmYWxsZW5nZWxhc3NlbiBoYXR0ZSB1bmQgYXVmIGlyZ2VuZHdhcwp3YXJ0ZXRlLE1hdWx3dXJmc2h1ZWdlbCBiZXRyYWNodGV0Li4uCkR1IHNpZWhzdCB6d2FyIGVpbmVuIE1hdWx3dXJmc2h1ZWdlbCwgYWJlciBrZWluZW4gZGF6dWdlaG9lcmlnZW4gTWF1bHd1cmYuClZpZWxsZWljaHQgZmluZGVzdCBEdSBpaG4gaXJnZW5kd28gaW4gZGVyIE5hZWhlLiBUcm90eiBhbGxlbSB1ZWJlcnJhc2NodApEaWNoIGVpbiBNYXVsd3VyZnNodWVnZWwgbWl0dGVuIGltIERzY2h1bmdlbCBkb2NoIHNlaHIuCgpkYWJlaSB3YXIgZXIgZG9jaCBhdWYgZGVtIEJvZGVuLi4uU2VoIGljaCBpaG4gamV0enQgb2RlciBzZWggaWNoIGlobiBuaWNodD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQW5mcmFnZSAoU2NocnVtcGZpLCAyOS4gTWFyIDE5OTUsIDEwOjAyOjMyKToKIyEgcm49R2FzdDIgcnQ9Nzk2MzgwMTQ0CldpZSBzY2hvZW4gZnVlciBEaWNoIQpTY2hydW1wZmkgS29wZnNjaHVldHRlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGF1ZiBkZXIgVW50ZXJnYW5nc3BhcnR5IC4uLiAoRHVyaWFuLCAyOS4gTWFyIDE5OTUsIDEyOjQwOjQ3KToKTWVuc2Egc2V0enQgc2ljaCBoaW4gdW5kIHJhdWNodCBlaW5lbiBKb2ludC4KClNvc28gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHYXN0IChHcmltbWJvcm4sIDI5LiBNYXIgMTk5NSwgMTM6NDI6MjQpOgpIbW0sIGljaCBmaW5kZSwgZGVyIEVpbmxvZ2d2b3JnYW5nIGZ1ZXIgR2Flc3RlIG11ZXNzdGUgdmVyYmVzc2VydCB3ZXJkZW4uCkVzIGZlaGx0IGRpZSBGcmFnZTogIldlbm4gRHUgaW5rb2duaXRvIGRhIGJpc3QsIGJpc3QgRHUgc29uc3QgU3BpZWxlciAoU3ApLApTZWhlciAoU2UpIG9kZXIgTWFnaWVyIChNKT8KQmVpIGVudHNwcmVjaGVuZGVuIEFuZ2FiZW4gZ2lidHMgZGFubiBkaWUgZW50c3ByZWNoZW5kZW4gQmVmZWhsZS4gVmllbGxlaWNodAprb2VubnRlIG1hbiBzb2dhciBuYWNoIGRlbSBOYW1lbiBmcmFnZW4gdW5kIGRpZSBhbGlzIHJ1ZWJlcmtvcGllcmVuLi4uCgpHYXN0MSBkZXIgQXRoZWlzdC4uLmFlaCwgR3JpbW1ib3JuIHVlYmVya29tbXQgZGFzIE1vcmdlbmdyYXVlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJpc2V1ciA6KSAoQ2FyYWRocmFzLCAyOS4gTWFyIDE5OTUsIDE4OjE0OjMzKToKV2lyZCBtYW4gWmVpdCBmdWVyIGVpbmVuIEZyaXNldXIgaW0gTXVkOgoKRGVyIEJ1bWVyYW5nIHJhc2llcnQgQ2FzdGF3YXkgZWluIEhhYXJidWVzY2hlbCBhYi4KQXJtZSBDYXN0YXdheS4gKnNuaWZmKgoKICAgICAgICAgICBDYXJhZGhyYXMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcmlzZXVyIDopIChHcmltbWJvcm4sIDMwLiBNYXIgMTk5NSwgMTM6MDI6MjUpOgojISBybj1DYXJhZGhyYXMgcnQ9Nzk2NDkzNjczCgpNYW4ga29lbm50ZSBkZW4gVGV4dCBhZW5kZXJuOiByYXNpZXJ0IGRhcyAobGV0enRlPykgSGFhcmJ1ZXNjaGVsIGFiLiBGdWVyCmFsbGUgbWl0IG1laHIgYWxzIDUwIG9ubGluZXRhZ2VuLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbGJzdGFubmFobWUuLi4gKEFuYXRvbCwgMzAuIE1hciAxOTk1LCAxNTo1Njo0Nyk6CgpiaWV0ZSBhbmF0b2wgZnJldW5kc2NoYWZ0IGFuCkFuYXRvbCBiaWV0ZXQgRGlyIEZyZXVuZHNjaGFmdCBhbi4KRHUgYmlldGVzdCBBbmF0b2wgZGVpbmUgRnJldW5kc2NoYWZ0IGFuLgoKYmlldGUgYW5hdG9sIGZyZXVuZHNjaGFmdCBhbgpEdSBiaXN0IG51biBGcmV1bmQgdm9uIEFuYXRvbC4KRGllIEZyZXVuZHNjaGFmdCBpc3QgbnVuIGZyaXNjaCBnZXN0YWVya3QuCgpBbmF0b2wgKCkgLSBoYXR0ZSBtaXQgZGVyIFNlbGJzdGFubmFobWUgc2Nob24gaW1tZXIgc2VpbmUgUHJvYmxlbWUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTZWxic3Rhbm5haG1lLi4uIChSb25kYSwgMzAuIE1hciAxOTk1LCAxNjowMTowMik6CiMhIHJuPUFuYXRvbCBydD03OTY1NzE4MDcKTGFjaCEKSmEsIHVuZCBkYW5uIG11c3MgaWNoIG1pY2ggZGFuYWNoIGRhZnVlciB2ZXJhY2h0ZW4gOikKUm9uZGEKICAgICAoSXN0IGphIG5pY2h0IHNvIHRvbGwsIHdlbm4gbWFuIGltbWVyIG51ciBzaWNoIHNlbGJzdCBsaWVidCA6KSApCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTZWxic3Rhbm5haG1lLi4uIChHcmltbWJvcm4sIDMwLiBNYXIgMTk5NSwgMTY6MTQ6MTIpOgojISBybj1Sb25kYSBydD03OTY1NzIwNjIKVmVyYWNodGVuPwpOb2UsIGF1c2xvZ2dlbiByZWljaHQuICJJcmdlbmR3YXMgc2l0IG1pdCBEZWluZXIgRnJldW5kc2NoYWZ0IHp1IEdyaW1tYm9ybgp2b3JnZWZhbGxlbi4iCld1c3N0ZSBkb2NoLCBkYXNzIGljaCB1bnp1dmVybGFlc3NpZyBiaW4uIEFiZXIgd2llc28gZGFzIGpldHp0IGF1ZndhZXJtZW4/CkRhcyBoYWIgaWNoIHZvciBNb25hdGVuIGRvY2ggc2Nob24gYXVzcHJvYmllcnQsIGFscyBkYXMgQmFuZCBub2NoIG5ldSB3YXIuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2VsYnN0YW5uYWhtZS4uLiAoQm9pbmcsIDMwLiBNYXIgMTk5NSwgMTY6MTY6MDYpOgojISBybj1HcmltbWJvcm4gcnQ9Nzk2NTcyODUyCkRhc3MgRHUgZGVyIHNjaG5lbGxzdGUgdW5kIGJlc3RlIGJpc3Qgd2lzc2VuIHdpciBkb2NoIGF1Y2ggc2Nob24gc2VpdApNb25hdGVuLAp3b3p1IGRhcyBqZXR6dCB3aWVkZXIgYXVmd2Flcm1lbj8gOykKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2VsYnN0YW5uYWhtZS4uLiAoR3JpbW1ib3JuLCAzMC4gTWFyIDE5OTUsIDE2OjI4OjQ2KToKIyEgcm49Qm9pbmcgcnQ9Nzk2NTcyOTY2Ck5hamEsIGVzIGtvbW1lbiBpbW1lciB3aWVkZXIgbmV1ZSBTcGllbGVyIHJlaW4gKHNvbGx0ZSBtYW4gZWggdW50ZXJiaW5kZW4sCmxhdXRlciBmcmVtZGVzIEdlc29ja3MuLi4pIHVuZCBkaWUgc29sbGVuIGRhcyBkb2NoIGF1Y2ggd2lzc2VuLiBBdXNzZXJkZW0Kc2NoYWRldCBlaW5lIGtsZWluZSBFcmlubmVydW5nIG5pY2h0LCBkYW1pdCBkYXMga2VpbmVyIHZlcmdpc3N0LiBXZWlscyBkb2NoIHNvCndpY2h0aWcgaXN0IHVuZCBoaWVyIHZpZWxlIExldXRlIG51ciBlaW4gU2llYiBpbSBLb3BmIGhhYmVuLCwsCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKKgouLgpxCnF1aXQKdG0gbG9jbyBXaWUga29tbXQgbWFuIGF1cyBkZW0gU2NoLi4uIGVkaXRvciByYXVzPwpoaWxmZQpoCjpoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTZWxic3Rhbm5haG1lLi4uIChSb25kYSwgMzAuIE1hciAxOTk1LCAxNjozNToxNCk6CiMhIHJuPUdyaW1tYm9ybiBydD03OTY1NzM3MjYKUk9URkwhISEKSmEsIG1hbiBzb2xsdGUgbmFjaCBzbyBsYW5nZXIgWmVpdCBzY2hvbiB3aXNzZW4sIHdpZSBtYW4gYXVzIGRlbSBFZGl0b3IKcmF1c2tvbW10Pz8/ClJvbmRhLCBkaWUgYWxzIE1hZ2llcmluIG5vY2ggbWVociBGZWhsZXIgYmF1dCBhbHMgZnJ1ZWhlciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQW5mcmFnZSAoQmVsZGluLCAzMC4gTWFyIDE5OTUsIDE4OjI3OjI3KToKIyEgcm49T2V0dGkgcnQ9Nzk2Mzk3MzUyCkhtbW1tLi4uCkthbm4gZXMgc2VpbiwgZGFzcyBEdSBEaWNoIGVpbmZhY2ggbmljaHQgYmVtdWVodCBoYXN0PyBBbHNvIHNlaXQgaWNoIGRpZQpQbGF5Ym95LUFkcmVzc2Uga2VubmUgaGFiIGljaCBkYSBzY2hvbiBtZWhybWFscyBNaXNzIERlYywgSmFuLiwgTWFyY2ggdXN3Li4uCmdlc2VoZW4uLiB1bmQgendhciBuaWNodCBudXIgaW4gS2xhbW90dGVuIDo+CgpHcmluc2VuZDogQmVsZGluIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbXBhIChHcmltbWJvcm4sIDMwLiBNYXIgMTk5NSwgMjA6MzA6MzUpOgoKSG1tLCBkYSBtdXNzIGVpbiBGZWhsZXIgaW4gZGVyIG1wYSBzZWluLiBFYmVuOgo+IG5uCkNvbm5lY3Rpb24gY2xvc2VkLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprb21pc2NoIChSeHRlY2gsIDMxLiBNYXIgMTk5NSwgMTI6NTA6MTMpOgpTZWhyIG1lcmt3dWVyZGlnLApzbyBvZnQgaWNoIGF1Y2ggYXVmIGRpZSBSZXNldHRhc3RlIGFtIFJlY2huZXIgZHJ1ZWNrZSwgZGVyIFJhdW0Kd2lyZCBlaW5mYWNoIG5pY2h0IHJlc2V0dGV0LiBJc3MgbWVpbiBSZWNobmVyIGthcHV0dCwgb2RlciB3aWUgb2RlciB3YXM/CgpFaW4gZ2FlaG5lbmRlciBSeHRlY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5pY2h0IG1hbCBuZSBNZWxkdW5nIChCYW1idWxrbywgMzEuIE1hciAxOTk1LCAyMTo0NzozNik6CkRlciBTY2hsYWJiZXJtdXJrcyB2ZXJzcHJpdHp0IG5vY2ggZXR3YXMgU2NobGVpbSB1bmQgc3RpcmJ0Lgo2CjYKNQo3CjgKOAo5CkR1IGZhZW5nc3QgZGVuIEJ1bWVyYW5nIGdlc2NoaWNrdC4KPiBEdSBmYWVuZ3N0IGRlbiBCdW1lcmFuZyBnZXNjaGlja3QuCj4gRHUgc3RlY2tzdCBkYXMgWGFudGktU2Nod2VydCB6dXJ1ZWNrLgo+IDYKNgpBdWYgd2VuIHdpbGxzdCBEdSBlaW5lbiBGZXVlcmJhbGwgc2NobGV1ZGVybj8KPiBEdSB3aXJmc3QgZGVuIEJ1bWVyYW5nLgo+IER1IHdpcmZzdCBkZW4gQnVtZXJhbmcuCj4gRHUgenVlY2tzdCBkYXMgWGFudGktU2Nod2VydC4KPiBEdSBmYWVuZ3N0IGRlbiBCdW1lcmFuZyBnZXNjaGlja3QuCj4gRHUgZmFlbmdzdCBkZW4gQnVtZXJhbmcgZ2VzY2hpY2t0Lgo+IG9iCkR1IGhhc3QgamV0enQgMTc3IExlYmVuc3B1bmt0ZSB1bmQgMjMgTWFnaWVwdW5rdGUuCkRlciBTY2hsYWJiZXJtdXJrcyB2ZXJzcGVycnQgRGlyIGRlbiBXZWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIZXV0ZSBNb3JnZW4gaW4gZGVyIGdpbGRlIChadWVyaWxldSwgMzEuIE1hciAxOTk1LCAyMzoxMDoxOSk6ClNhbGkgemFlbWUsCkhldXRlIG1vcmdlbiBuYWNoIDU6MDAgVWhyIGluIGRlciBHaWxkZSBwYXNzaWVydDoKCltBbGxnZW1laW46RGFtbWl0XSBJc3QgZWluIE1hZ2llciBvbmxpbmUgPwoKWnVlcmlsZXU6IGpvcCBTYWxpLCB3YXMga2FubiBpY2ggZnVlciBEaWNoIHR1biA/CgpEYW1taXQ6IE1hY2ggbWljaCB6dW0gTWFnaWVyICEKClp1ZXJpbGV1OiBub3BlIGthbm4gaWNoIG5pY2h0IGR1IG11c3N0IHNwaWVsZW4gdW0gTWFnaWVyIHp1IHdlcmRlbiAhCgpEYW1taXQ6IEljaCBiaW4gc3RkZW50LCBrZWluZSBaZWl0IHVtIHp1IHNwaWVsZW4gbWFjaCBtaWNoIHp1bSBNYWdpZXIgIQoKWnVlcmlsZXU6IG5vZSwga2FubiBpY2ggd2lya2xpY2ggbmljaHQsIG9obmUgc3BpZWxlbiBrZWluIE1hZ2llcmxldmVsICEKCkRhbW1pdDogaWNoIHdpbGwgZGVuIE1hbmFnZXIgc3ByZWNoZW4gIQoKWnVlcmlsZXU6IEtlaW4gR290dCBkYSwgc2NocmVpYiBlaW5lbiBCcmllZiBhbiBKb2Ygb2RlciBCb2luZyAhCgpEYW1taXQgdmVybGFlc3N0IGRpZXNlIFdlbHQgIQoKCk51bmphIG1hbiBtdXNzIGRhenUgc2FnZW4gaWNoIGhhYmUgZGllIFRleHRlIHZvbSBlbmdsaXNjaGVuIGF1ZnMgZGV1dHNjaGUKdWViZXJzZXR6dCBhYmVyIGluIGRlciBhcnQgaGF0IHVuc2VyIGdlc3ByYWVjaCBzdGF0dGdlZnVuZGVuID06KQpJY2ggZGVua2Ugd2VubiB3aXIgaGV1dGUgc28gd2VpdCBzaW5kIGRhc3MgbWFuIG9obmUgZXR3YXMgenUgdHVuIE1hZ2llcgp3ZXJkZW4ga2Fubiwgd2lsbCBpY2ggR09UVCB3ZXJkZW4uCgpUc2NoYXogemFlbWUgICBadWVyaWxldSAoZGFlIHp3YWVpdGkgc2Nod2lpemVyIE1hZ2llciAhICkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXV1cgKEd3eW5kb24sICAxLiBBcHIgMTk5NSwgMDE6NTU6NTcpOgojISBybj1BbmF0b2wgcnQ9Nzk2NDA2MjcxCldvIElociBzY2hvbiBpbnRlcmVzc2FudGUgU2VpdGVuIHBvc3RldCwgbWFjaGUgaWNoIG1hbCB3aWVkZXIgV2VyYnVuZywgYXVjaAp3ZW5uIG1hbmNoZSBkYXMgdmllbGxlaWNodCBlaW5lbiAiU2NobWFycm4iIGZpbmRlbi4uLgoKIGh0dHA6Ly9uaXJ2YW5hLnR1ZS5zY2h3YWJlbi5kZS9teXJhL21haW4uaHRtbAoKTm9jaCBuaWNodCBwZXJmZWt0LCBhYmVyIHNjaG9uIGluZm9ybWF0aXYuLi4KICAgIEV1ZXIgR3d5bmRvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzIGRlbm4gbnVuPyAoQmFtYnVsa28sICAxLiBBcHIgMTk5NSwgMDM6MDA6MTEpOgpGZXVlciwgTGF2YSB1bmQgdW5lcnRyYWVnbGljaGUgSGl0emUgZW1wZmFuZ2VuIERpY2guIER1IGJpc3Qgc2Nod2Vpc3MtCmdlYmFkZXQsIERlaW4gS29lcnBlciBkYW1wZnQuIERpZSBHcmVuemVuIGRlcyBSYXVtZXMgc2luZCBuaWNodCBrbGFyCnp1IGVya2VubmVuLCB3ZWlsIGRpZSBmbGlycmVuZGUgTHVmdCBhbGxlcyB2ZXJ6ZXJydC4gRHUgbWVpbnN0IHp1CnNwdWVyZW4sIHdpZSBEZWluIEtvZXJwZXIgaW4gZGVyIHNlbHRzYW1lbiBMdWZ0IHplcmZsaWVzc3QgdW5kIGJpZWdzYW0Kd2lyZCB3aWUgRWlzZW4gaW4gZWluZXIgU2NobWllZGUuIEF1Y2ggRGVpbiBHZWlzdCB2ZXJsaWVydCBzZWluZQpzb25zdGlnZSBGZXN0aWdrZWl0IHVuZCBzZWluIFppZWxiZXd1c3N0c2VpbiBpbiBkZXIgR2x1dGhpdHplLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KPiBzdWNoZSBtaXR0ZWwKVm9sbGVyIEVudGh1c2lhc211cyBzY2hsYWVnc3QgRHUgbWl0IGRlbiBGYWV1c3RlbiBnZWdlbiBkYXMgRWlzLgpBYmVyIGRhcyBFaXMgc3BsaXR0ZXJ0IG5pY2h0IHdlZywgc28gZGFzcyBEdSBpbW1lciBub2NoIG5pY2h0cwpkYXJ1bnRlciBlcmtlbm5lbiBrYW5uc3QuIFN0YXR0IGRlc3NlbiBoYXN0IER1IERpciBnYW56IHNjaG9lbgp3ZWggZ2V0YW4uCgpGZXVlciBvZGVyIEVpcz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTVVBFUiEgKEJyYXQsICAzLiBBcHIgMTk5NSwgMTI6NDc6NTgpOgpOZXVsaWNoIGluIFphcmRveiBUdXJtOgpJbiBkZW4gdWViZXJsYWRlbmVuIFJlZ2FsZW4gc3RlaGVuIEtpc3RlbiwgRmxhc2NoZW4sIERvc2VuLCBLb2VyYmUsIFNhZWNrZSwKCkdsYWVzZXIsIFR1ZXRlbiwgVGFzc2VuLCBTY2hhY2h0ZWxuLCBaYXRvbmdzIHVuZCBCZXV0ZWwuCgo+IHVudCBmbGFzY2hlbgoKRHUgaGFzdCBqZXR6dCAyMTMgTGViZW5zcHVua3RlIHVuZCA3MCBNYWdpZXB1bmt0ZS4KCkR1IGR1cmNoc3VjaHN0IGRpZSBGbGFzY2hlbiwgZmluZGVzdCBhYmVyIGxlaWRlciB3ZWRlciBlaW5lbiBTY2huZWxsaGFlcnRlcgoKbm9jaCBlaW5lIFJvY2h1cy1Db2xhLgoKPiBEdSBoYXN0IGpldHp0IDIxNCBMZWJlbnNwdW5rdGUgdW5kIDcxIE1hZ2llcHVua3RlLgoKdW50IHphdG9uZ3MKCkdsdWVjayBnZWhhYnQhIEVzIHNpbmQga2VpbmUgWmF0b25ncyBzb25kZXJuIEthcnRvbnMgOikKCgpNYWdpZXJlLCBtYWNodHMgd2llIFphcmRveiEgOikpKSkpKSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpsb2dvbiAoQW5ha2luLCAgNS4gQXByIDE5OTUsIDE3OjAyOjIyKToKSGlobywKQWxzbyBuZXVsaWNoIG5hY2ggZWluZW0gQ3Jhc2ggbWFjaCBpY2ggZG9jaCBrd2VyIHVuZCB3YXMgc2VoZSBpY2ggPwoKICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTWl0LCAgNS4gQXByIDE5OTUsIDE2OjUzOjI2ICgzNSBUZWlsbmVobWVyKQoKTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMKTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMKTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMKTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMKTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMKTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMKTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMKTG9nb24uLi4uLi4uLi4uLnMgIEZlbHMuLi4uLi4uLi4uLi5zICBIYXIuLi4uLi4uLi4uLi4ucyAgVnJ1bWZvbmRlbC4uLi4uLnMKQW5ha2luLi4uLi4uLi4uLlMgIEJhbWJ1bGtvLi4uLi4uLi5TICBNdWR0aWdlci4uLi4uLi4ubQogIDI5IFNwaWVsZXIgbWl0IGRlbSBOYW1lbiBMb2dvbiEgTWVya3d1ZXJkaWcsIGljaCBkYWNodGUgbWFuIGthbm4gbnVyCmVpbm1hbCBlaW5nZWxvZ2d0IHNlaW4uIChidHcuIGF1Y2ggbmVuIGJsb2VkZXIgTmFtZSkKCgpBbmFraW4gKHd1bmRlcnQgc2ljaCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmFudSAoU2Vwc28sICA1LiBBcHIgMTk5NSwgMTg6NTk6NTgpOgptYWVkY2hlbiBhdWYgc29ubmVuaW5zZWwKCnVudCBtYWVkY2hlbgplaW4gdG9sbCBhdXNzZWhlbmRlcywgc2VociBmcmV1bmRsaWNoZXMgbWFlZGNoZW4gaW0gYmliaW5pLgpzaWUgc2llaHQgbmljaHQgbWVociBnYW56IHRhdWZyaXNjaCBhdXMuCgpuYSB3YXMgZGVubiBudW4sIGljaCBoYXR0ZSBmZXN0ZSBhYnNpY2h0ZW4gPz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyb3NjaHBlcnRpbmdlcj8gKE11cGZlbCwgIDYuIEFwciAxOTk1LCAwMzoyNzoyMSk6CmhhbGxvCgphbHMgbWFnaWVyIGhhYiBpY2ggYmVpbSB3b2xwaWUgenVzYWV0emxpY2hlIGtvbW1lbmRvcy4uLiB1LmEuIGthbm4gaWNoIGRlbgp3b2xwaWUgZWluIGJlbGllYmlnZXMga29rbW1hbmRvIGF1c2Z1ZWhyZW4gbGFzc2VuLiBhbHNvIHouYi4gZGFzIGJlaQphbmZhZW5nZXJuIGJlbGllYnRlIGZ1cnplbi4gdW5kIGRhIGthbSBtaXIgRElFIGlkZWU6IGljaCBnZWggYWxzbyBtaXQgZGVtCndvbHBpZSB6dW0ga2xlaW5lbiBmcm9zY2ggdW5kIGxhc3MgZGVuIHdvbHBpZSBkZW4gZnJvc2NoIGt1ZXNzZW4uIGhtLiBhbQphZXVzc2VyZW4gYWVuZGVydCBzaWNoIG5peCBhYWFhYmVyLi4uICd3c2FnIGhhbGxvJyAnZWluIEZyb3NjaCBzYWd0OiBoYWxsbycKLi4uIHVuZCB3ZW5uIGljaCB3byByZWlua29tbWVuOiAnZWluIEZyb3NjaCB0YXBwc3QgaGVyZWluJy4gTEFBQUFBQUFBQ0ghISEKCmhpbW1lbCB3YXMgaXN0IGRhcyBsdXN0aWcuLi4uCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnJvc2NocGVydGluZ2VyPyAoQW5hdG9sLCAgNi4gQXByIDE5OTUsIDAzOjMzOjMxKToKIyEgcm49TXVwZmVsIHJ0PTc5NzEzMTY0MQoKVGphLCBudXIgbGVpZGVyIGhhdCBkaWUgR2VudW13YW5kbHVuZyBpbiBOaWJlbGhlaW0gZGFubiBuaWNodCBzbyBnYW56CmhpbmdlaGF1ZW4uLi4gU293YXMuCgpBbmF0b2wgKCkgLSB3aXJkIGxpZWJlciB2b24gbmVtIHd3VyBhbHMgdm9uIG5lbSBGcm9zY2ggdmVyZm9sZ3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZCBzb3ZpZWwgenVtIEFtdWxldHQgKEJhbWJ1bGtvLCAgNi4gQXByIDE5OTUsIDA1OjE1OjQyKToKPiBuaWNrZUR1IGhhc3QgamV0enQgMTIzIExlYmVuc3B1bmt0ZSB1bmQgMTI3IE1hZ2llcHVua3RlLgoKRHUgbmlja3N0IHp1c3RpbW1lbmQuCj4gSmltRGlHcml6IGJydWVsbHQ6ICJJY2ggZnJlc3MgRGljaCBhdWYiLCBzY2hhdXQgZXR3YXMga29uZnVzIGR1cmNoIGRpZQpHZWdlbmQgdW5kIHN0dWVybXQgIkljaCBtYWNoIGlzZSBhbGxlIG5pZWRhIiBzY2hyZWllbmQgbmFjaCBTdWVkZW4uCmgKRHUgbmltbXN0IGVpbiBIdW1rZWxzdGVpbiB1bmQgYmVpc3N0IGdlbnVlc3NsaWNoIGhpbmVpbi4KRHUgaGFzdCBqZXR6dCAxNzMgTGViZW5zcHVua3RlIHVuZCAxMjggTWFnaWVwdW5rdGUuCj4gaWgKRHUgbmltbXN0IGVpbiBIdW1rZWxzdGVpbiB1bmQgYmVpc3N0IGdlbnVlc3NsaWNoIGhpbmVpbi4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAxNzggTWFnaWVwdW5rdGUuCj4gcwpFaW5lIGhlcnJsaWNoZSBXYWVybWUgZ2VodCB2b24gRGVpbmVtIEFtdWxldHQgYXVzIHVuZCBEdSBmdWVobHN0CkRpY2ggcHJpbWEuCkVpbiBHYW5nLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogd2VzdGVuLCBub3JkZW4gdW5kIHVudGVuLgoKQWJlciBkYXMgaXN0IHdvaGwgbml4IG5ldWVzLi4uCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXJmIGljaCBuaWNodD8gOy0pIChMb2NvLCAgNi4gQXByIDE5OTUsIDE1OjA3OjA3KToKbGlzdGUKCgogICAgICAgICAgICAgICAgICAgICAgICBMaXN0ZSBkZXIgQWJlbnRldWVyOgoKLi4uLgpVbSBNYWdpZXIgb2RlciBTZWhlciB6dSB3ZXJkZW4sIG11c3N0IER1IDExOTYgZGVyIDE2MTAgQWJlbnRldWVycHVua3RlCnVuZCAxMDAwMDAwIEVyZmFocnVuZ3NwdW5rdGUgZXJsYW5nZW4uCj4gaW5mbwpEdSBoYXN0IDEyMzQ1NzAxMTkgRXJmYWhydW5nc3B1bmt0ZSwgNDQwIEFiZW50ZXVlcnB1bmt0ZSgxNjEwKSwKIC4uLgoKRmVobGVuIG1pciBhbHNvIG5vY2ggNzU2IEFQPyBTbyB3YXMuLi4KCkxvY28sIE1hZ2llciBzZWl0IEp1bGkgOTMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnJvc2NocGVydGluZ2VyPyAoUm9uZGEsICA2LiBBcHIgMTk5NSwgMjI6Mjc6NTEpOgojISBybj1NdXBmZWwgcnQ9Nzk3MTMxNjQxCkdlaHQgZGFubiBhdWNoOiBXb2xwaWUsIHppZWhlIG1hbCBkZW4gVGFybmhlbG0gYW4/ClNpY2ggdGF1c2VuZCBmaWVzZSBTYWNoZW4gYXVzZGVua2VuZCwKICAgICAgICBSb25kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmllc2lnIG5pY2h0Li4uYWJlciBmZWluIDspIChBbmF0b2wsICA3LiBBcHIgMTk5NSwgMTQ6Mjc6MTEpOgoKdmVyZ2xlaWNoZSBzdGFjaGVsIDEgbWl0IHN0YWNoZWwgMgoKVm9tIG1hZ2lzY2hlbiBBdWdlIHdhbGx0IE5lYmVsIGF1ZiwgYXVzIGRlbSBkaWUgV29ydGUgdG9lbmVuOgpEZXIgQmllbmVuc3RhY2hlbCBpc3QgZWluZSBzY2hsZWNodGVyZSBXYWZmZSBhbHMgZGVyIEJpZW5lbnN0YWNoZWwKRGVyIEJpZW5lbnN0YWNoZWwgaXN0IGxlaWNodGVyIGFscyBkZXIgQmllbmVuc3RhY2hlbApEZXIgQmllbmVuc3RhY2hlbCBpc3Qgd2VuaWdlciB3ZXJ0IGFscyBkZXIgQmllbmVuc3RhY2hlbAoKQW5hdG9sICgpIGV4dHJhYnJlaXQgZ3JpbnNlbmQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGltIElOVEVSTkVUOiAoWWVuZGksICA3LiBBcHIgMTk5NSwgMTU6MjM6NTcpOgoKPiBJRiBZT1UgQkVMSUVWRSBJTiAiT05FIE5BVElPTiBVTkRFUiBHT0QiLCBHTyBMSVZFIElOIElSQU4hCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWNoIGphLi4uIChZZW5kaSwgIDcuIEFwciAxOTk1LCAxNTo0OTo1Nik6CgpbQWxsZ2VtZWluOktveW90ZV0gS2VubnQgamVtYW5kIGRlbiBadCBpbiBUb2V0ZXJzIEhhdXM/Ci4uLgouLi4KLi4uCltBbGxnZW1laW46TW9yZ29uXSBEZW4gaGFiIGljaCBhdWNoIHNjaG9uIGdlc3VjaHQsIGlyZ2VuZHdvIGFtIEJpbGQgc29sbCBlcgpbQWxsZ2VtZWluOk1vcmdvbl0gc2Vpbi4uLgoKCkFjaCBqYS4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBY2ggamEuLi4gKEdyaW1tYm9ybiwgIDcuIEFwciAxOTk1LCAxNjowNDozNyk6CiMhIHJuPVllbmRpIHJ0PTc5NzI2MjU5NgpOZXVlc3RlIFNpdHRlbiBvZGVyIHdhcz8KenQtTGlzdGVuIGluIGRlciBtcGE/Pz8KClNpY2ggd3VuZGVybmQsCiAgICAgICAgICAgICAgR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYSBtZWkgKE1pcm8sICA3LiBBcHIgMTk5NSwgMjI6MzY6NTcpOgpIaSBJaHJzLAp3aWVzbyBpbW1lciBpY2g/IE9kZXIgZ2lidCBlcyBlaW5lbiBzcGV6aWVsbGVuCiJzY2hlaXRlcmUtYW4tYWxsZW4tUXVlc3RzIi1GbHVjaD8gQmluIGljaCB6dSBkdW1tPyBEZW5rZSBpY2ggdmVya2VocnQ/IEJpbgppY2ggbmljaHQgZnVlciBNVUQncyBnZWVpZ25ldD8KV2FzIGRhcyBzb2xsPyBMYXNzdCBFdWNoIGF1ZiBlaW5lIHRvdXIgZGVzIExlaWRlbnMgbWl0bmVobWVuOgpTdGF0aW9uIDE6IFNjaGxvc3MgWndhY2tlbG1hbm4KSWNoIGhhYmUgZGllIEZlZSBhdWZnZXRyaWViZW4gdW5kIHZlcnN0YW5kZW4sIHdhcyBpY2ggbWFjaGVuIHNvbGwuIE51ciB3aWU/CkljaCBrcmllZ2UgZGVuIFRpcCwgaW0gU2NobG9zcyBhbGxlcyBncnVlbmRsaWNoIGFienVzdWNoZW4uIE1hY2hlIGljaCwgaGFiZQphYmVyIGtlaW5lbiBFcmZvbGcuCkFtIG5hZWNoc3RlbiBUYWc6IHdpZWRlciBhbGxlcyBhYnN1Y2hlbiAoaGF0dGUgaWNoIHdhcyB2ZXJnZXNzc2VuPykuIEltbWVyCm5vY2ggbml4LCBlcyB2ZXJyYWV0IG1pciBqZW1hbmQsIHdvIGljaCBnZW5hdSBuYWNoZ3Vja2VuIG11c3MuIERhIGlzIG5peC4KU3BhZXRlcjogaW1tZXIgbm9jaCBuaXguIE5hZWNoc3RlbiBUYWc6IGltbWVyIG5vY2ggbml4LiBIYXQgbWljaCBqZW1hbmQKdmVya29obHQgKGRhc3MgbWFuIGluIHNvbGNoZW4gRmFlbGxlbiBiZXNzZXIgZGFuZWJlbiBzdGVoZW4gYmxlaWJ0IHVuZCB3YXJ0ZXQsCmhhYmUgaWNoIGVyc3Qgc3BhZXRlciBtaXRnZWtyaWVndC4uLikKTmFlY2hzdGVuIFRhZzogZW5kbGljaCBoYWJlIGljaCBlaW5lbiBpbiBkZXIgS3JvbmUsIGRlciBRdWVzdCBsYWV1ZnQgZGFubgphdWNoIGd1dC4uLgpBa3QgWndlaTogSGlsYmVydCBvZGVyIHdhcyBBbHpoZWltZXIgc28gYWxsZXMgYmV3aXJrZW4ga2FubgpNYWwgd2llZGVyIGFuIGlyZ2VuZGVpbmVtIFZpZWNoIGdlc2NoZWl0ZXJ0LCBTY2h3YWV0emNoZW4gbWl0IExhcnMgZ2VoYWx0ZW4KdW5kIHZvZWxsaWcgYWJnZWJyYW5udC4gV2FydW0gbmljaHQgamV0enQgZWluZW4gc2Nob2VuZW4gUXVlc3QgYmVnaW5uZW4uClJpbiBpbiBkZW4gVHVybS4gSWNoIGZhaHJlIHVuZCBsYXVmZSB1bmQgY2hlY2tlIG5peC4gRnJhZ2UgYXVmIGRlcgpBYnRlbnRldWVyLUViZW5lLCBrcmllZ2UgZGVuIFRpcCBpbSBMYWRlbiBlaW56dWthdWZlbi4uLiBNaXQgd2VsY2hlbSBHZWxkPyBCaW4KamEgdm9lbGxpZyBhYmdlYnJhbm50IHVuZCBvaG5lIFNhY2hlbiwgZGllIGljaCB2ZXJrYXVmZW4ga2Fubi4gTWl0IEVuZGUgcmF1cywKRnJ5ZGVyIHRyb2VzdGV0IG1pY2ggdW5kIGdpYnQKbWlyIEdlbGQuIEFsc28gd2llZGVyIHJlaW4sIFF1ZXN0IGdlbG9lc3QsIGpldHp0IG51ciBub2NoIHJhdXMuIFRhZGRlbGhpbGJlcnQKc2FndCwgaWNoIHd1ZXJkZSB3YXMgMyBTdG9ja3dlcmtlIG9kZXIgc28gdGllZmVyIHp1bSByYXVza29tbWVuIGZpbmRlbi4KSWNoIHJlbm5lIDMgU3RvY2t3ZXJrZSBydW50ZXIsIGZpbmRlIG5peCwgcmVubmUgd2VpdGVyIHJ1bnRlciwgaW1tZXIgbm9jaApuaXgsIGFtIFNjaGx1c3MgaGF0dGUgaWNoIDMwIFN0b2Nrd2Vya2UgbmFjaCB1bnRlbiB1bmQgMzAgU3RvY2t3ZXJrZSBuYWNoIG9iZW4KZ3J1ZW5kbGljaCBhYmdlc3VjaHQgLSBhbGxlcyBuaXguCkljaCBsZXJuZSBkZW4gUnVmICJtcnVmIiBrZW5lbiAtIGZ1ZXIgbWljaCBpbiBadWt1bmZ0IGVpbmVyIGRlciB3aWNodGlnc3RlbgpCZWZlaGxlLgpFaW4gbmV0dGVyIE1hZyBoaWxmdCBtaXIgd2llZGVyIGF1cyBkZW0gVHVybSByYXVzLi4uClRlaWwgNDogVmFsZ2Vzc2EKSWNoIGJlc29yZ2UgZGFzLCB3YXMgZGVyIFdhbmRlcmVyIGdlc2FndCBoYXQsIGRydWVja2UgZXMgZGVtIEFsa2kgaW4gZGllCkhhbmQsIGVyIHNhZ3QsIGVyIGJyYXVjaHQgbm9jaCB3YXMgYW5kZXJlcy4uLgpJY2ggaG9sZSBkYXMgYW5kZXJlLCBpbnp3aXNjaGVuIGhhdCBkYXMgZXJzdCBzaWNoIGF1ZmdlbG9lc3QuCkljaCBnZWJlIGlobSBkYXMgendlaXRlLCBtYWNoZSB1bnQgTWFubiwgZXIgaGF0J3Mgbm9jaCwgaG9sZSB3aWVkZXIgZGFzCmFuZGVyZSwgcmVubmUgenVydWVjaywgZ2ViJ3MgaWhtOiBlciBoYXQgZGFzIGFuZGVyZSBuaWNodCBtZWhyLgpJY2ggZGVua2VuOiBuaWNoJyBtaXQgbWlyIGp1bmcsIHNjaGVpc3MgcmVzZXR0cywgaG9sZSBkYXMgZXJzdGUsIHdpbGwgZGFzCnp3ZWl0ZSBob2xlbjogZG9jaCBvaCB3dW5kZXI6IGF1Y2ggd2VubiBkZXIgIE1hbm4gcmVzZXR0ZXQgd3VyZGUsIGhlaXNzdCBkYXMKbm9jaCBsYW5nZSBuaWNodCwgZGFzcyBkZXIgT3J0LCB3byBtYW4gZGFzIGZ1ZXIgaWhuIGJla29tbXQsIGF1Y2ggcmVzZXR0ZXQKd3VyZGUuLi4KRGFzcyBkaWUgVmllY2hlciwgZGllIGVzIGJld2FjaGVuLCBhYmVyIG5hdHVlcmxpY2ggcmVzZXR0ZXQgd3VyZGVuLCBlcndhZWhudGUKaWNoIHNjaG9uPyBHYWIgbWFsIHdpZWRlciBFUHMgdW5kIFJpa3VzIHVuZCBIb3JzY2hkIHZlcmt1ZXJ6dGVuIG1pciBkaWUgWmVpdAooaW56d2luendpc2NoZW4gd2Vpc3MgaWNoIGphLCBkYXNzIG1hbiBkYXZvciBzdGVoZW5ibGVpYmVuIG11c3MsIHdlbm4gbWFuCm1hbmNoZSBEaW5nZSBicmF1Y2h0Li4uKQpHdXQsIFF1ZXN0IGdlbG9lc3QuClRlaWwgVmllcjogUGFuZG9yYQpJY2ggc3RlaCBhdWYgbWVpbmVyIFdvbGtlLCBhbGxlIGhhYmVuIG1pciB2b3JoZXIgZXJ6YWVobHQgKioqbmllKioqIGRpZQpCdWVjaHNlIG9mZmVuIG5laG1lbiwKaWNoIHNjaHJhdWIgZGFzIERpbmcgenUsIGljaCBsZXNlOiBkdSBzY2hyYXVic3QgZGllIEJ1ZWNoc2UgenUsCm5pbW0gZGFzIERpbmcgKFF1ZXN0IGlzdCBnbGVpY2ggdm9yYmVpLCBmcmV1ZSBtaWNoIHNjaG9uIGF1ZiBlaW4gU2Nod2FldHpjaGVuCmluIGRlciBHaWxkZS4uKSwgZGEgZXJzY2hlaW50OiBkdSBuaW1tc3QgZWluZSBvZmZlbmUgQnVlY2hzZS4uLgpqYSwgZGFzIHdhcidzLiBFaW4gZ2VsbGVuZGVzICJtcnVmIiB0b2VudCBkdXJjaCBkZW4gTVVELCBtZWluZSBMZWJlbnNwdW5rdGUKZXJsZWJlbiBlaW5lbiBDb3VudC1Eb3duLApkaWUgIE1hZ3MgdmVyc3VjaGVuIGRhcyBpaHJlLCBkb2NoIGVzIGh1ZWxmdCBuaXg6IG1hbCB3aWVkZXIgYXVmIG5lbiBUcmlwIHp1CkxhcnMuCldhcyB3YXIgcGFzc2llcnQ/IEt1cnogbmFjaCBkZW0gU2NobGllc3NlbiBkZXIgRG9zZSBrYW0gZGVyIFJlc2V0dCB1bmQgZWluZQpuZXVlIG9mZmVuZSBEb3NlIHdhciBkYS4gIFVuZCBkaWUgaGFiZSBpY2ggZGFubiBnZW5vbW1lbi4gWnVtIEdsdWVjayB3dXJkZQptZWluIFdlaW5lbiB1bmQgRmxlaGVuIGVyaG9lcnQgdW5kIGRhcyBnYW56ZSBhbHMgQnVnIGVpbmdlc3R1ZnQsCnVuZCBpY2ggYmVrYW0gbWVpbmUgRVBzIHdpZWRlci4uLgpEb2NoIG51biBkaWUgRnJhZ2U6CioqKldhcnVtIGRlbm4gaW1tZXIgaWNoPz8/KioqIFdhcnVtIG1vZWdlbiBtaWNoIGRpZSBSZXNldHRzIG5pY2h0LCB3YXJ1bSAKbWFjaGUgaWNoIGFsbGVzIGFuc2NoZWluZW5kIGltbWVyIHJpY2h0aWcgdW5kIHN0ZXJiZSB0cm90emRlbSwgZmluZGUgbml4LAptYWNoZSBtaWNoIHp1bSBHZXNwb2V0dCBkZXIgTGV1dGU/CihkcmVpbWFsIGxhcyBpY2ggd2FlaHJlbmQgbWVpbmVyIFRvZGVzc2VxdWVuejogaWNoIGhhYmUgZGlyIGRvY2ggZ2VzYWd0OiBEb3NlCnp1bWFjaGVuLi4uIEhhdHRlIGljaCBkb2NoISEhKQpXbyBnaWJ0IGVzIGRlbiBBbnRpLVJlc2V0dC1CdXR0b24/CldlciBlcmxvZXN0IG1pY2ggdm9uIG1laW5lbSBGbHVjaD8KVm9uIEJlaWxlaWRzYmV6ZXVndW5nZW4gYW4gbWVpbmVuIHZpZWxlbiBHcmFlYmVybiBiaXR0ZSBpY2ggQWJzdGFuZCB6dQpuZWhtZW4uCk1pcm8gOy0pKSkpKSkpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGphIG1laSAoQXNtb2RpcywgIDcuIEFwciAxOTk1LCAyMzo1MTowNSk6CiMhIHJuPU1pcm8gcnQ9Nzk3Mjg3MDE3CkRhenUga2FubiBtYW4gbnVyIHNhZ2VuOiBEdW1tIGdlbGF1ZmVuIChjKSBncmltbWJvcm4KCiAgICAgICAgICAgQ2lhbywgQXNtb2RpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGphIG1laSAoQmFtYnVsa28sICA4LiBBcHIgMTk5NSwgMDA6MDM6MDMpOgojISBybj1NaXJvIHJ0PTc5NzI4NzAxNwpEdSBtYWNoc3QgamEgc28sIGFscyB3YWVyc3QgZHUgZGVyIGVpbnppZ2UgaGllciwgZGVyIGplIGR1Y2ggZWluZW4gUmVzZXQgenUKc2NoYWRlbiBnZWtvbW1lbiBpc3QuIFVuZCB3ZW5uIG1hbiBkdXJjaCBlaW5lbiBSZXNldCBzdHJpYnQsIHVuZCBkYW5uIG5vY2gKc2VpbmUgRXAncyB6dXJ1ZWNrYmVrb21tdCwgbW9lY2h0ZSBpY2ggYWJlciBhdWNoIGVpbmlnZSBFcCdzIHp1cnVlY2toYWJlbi4KV2FzIGdsYXVic3QgZHUgd2lldmllbGUgTGV1dGUgc2Nob24gYW4gUmVzZXRzIGJlaSBkZW4gU3RlaW5iZWlzc2VybgpkcmF1ZmdlZ2FuZ2VuIHNpbmQgPyBPayBkYXMgbWl0IGRlciBEb3NlIHdhciB3aXJrbGljaCBncm9zc2VzIFBlY2gsIGFiZXIgZGEKbXVzcyBtYW4gc2FnZW4gUGVjaCBnZWhhYnQuIEFscyBzcGllbCBub3JtYWwgd2VpdGVyLCBkYW5uIGhhc3QgZHUgYXVjaCBtYWwKR2x1ZWNrIG1pdCBkZW4gUmVzZXRzLi4uCgpCQU1CVUxLTwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBqYSBtZWkgKE1pcm8sICA4LiBBcHIgMTk5NSwgMDA6MTE6MDUpOgojISBybj1CYW1idWxrbyBydD03OTcyOTIxODMKRW5kbGljaCB3ZXJkZSBpY2ggYXVjaCBtYWwgYW5nZWZsYW1tdC4gRW5kbGljaC4gSmEgIG1laHIuLi4KV28gZGVyIFVudGVyc2NoaWVkIGlzdD8gV2VubiBpY2ggenUgTW9uc3Rlcm4gZ2VoZSwgZGllIGFsbGdlbWVpbiBhbHMKZ2VmYWVocmxpY2ggYmVrYW5udCBzaW5kLCByZWNobmUgaWNoIG1pdCBzb3dhcyAod2VubiBpY2ggbWljaCBkYW5uIGF1Y2gKZHJ1ZWJlciBBZXJnZXIuLi4gU2NoZWlzcy1MaWNocy4uLgpXZW5uIGljaCBlaW4gUXVlc3QgbG9lc2UgdW5kIGRlbmtlIHJpY2h0aWcgenUgbGllZ2VuLCByZWNobmUgaWNoIG5pY2h0IGRhbWl0LgpVbmQgd2VpbmUsIHVuZCBzY2hyZWllLCB1bmQga2xhZ2UsCkhvZmZlIGlociB2ZXJzdGVodCBkYXMuLgpNaXJvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBqYSBtZWkgKEJhbWJ1bGtvLCAgOC4gQXByIDE5OTUsIDAwOjE4OjE3KToKIyEgcm49TWlybyBydD03OTcyOTI2NjUKRGFubiBtYWNoc3QgZHUgZGllIFF1ZXN0IGhhbHQgbm9jaG1hbC4gV2VubiBtYW4gZWlubWFsIHdlaXNzLCB3aWUgc2llIGdlaHQsCmdlaHQgZGFzIGRvY2ggc2NobmVsbC4KCkJhbWJ1bGtvLCBkZXIgZXRsaWNoZSBRdWVzdCBkb3BwZWx0IG1hY2hlbiBtdXNzdGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGphIG1laSAoU2NocnVtcGZpLCAgOC4gQXByIDE5OTUsIDAwOjM3OjEyKToKIyEgcm49QmFtYnVsa28gcnQ9Nzk3MjkyMTgzCk5vZSwgd2VubiBlciBkaWUgQnVlY2hzZSB6dW1hY2h0IHVuZCB0cm90emRlbSBuZSBvZmZlbmUgRG9zZSBuaW1tdCwgbGllZ3QgZGFzCm5pY2h0IGFtIFJlc2V0LCBkYW5uIGthbm4gZXIgcnVoaWcgc2VpbmUgRVAncyB6dXJ1ZWNraGFiZW4uClNjaHJ1bXBmaSB2ZXJmbHVjaHQgbm9jaCBpbW1lciBkaWUgU3RlaW5iZWlzc2VyIHVuZCBpaHJlIGRvb2ZlbiAobmljaHQKc2NobGFnZW4gQm9pbmcgOykgKSByZXNldHMuICp0cm9lc3QgTWlybyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGphIG1laSAoQmFtYnVsa28sICA4LiBBcHIgMTk5NSwgMDA6NDE6MDMpOgojISBybj1TY2hydW1wZmkgcnQ9Nzk3Mjk0MjMyCkRhbm4gbmF0dWVybGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkltbWVyIGRpZXNlIFdhc3Nlcndlc2VuISA6LSkgKFNjaHJ1bXBmaSwgIDguIEFwciAxOTk1LCAwNDoyMDowNCk6CkJhbWJ1bGtvIGRhcyBXYXNzZXJ3ZXNlbiBmbGllc3N0IGhlcmVpbi4KQmFtYnVsa28gc2llaHQgYmV0cnVua2VuIGF1cy4KQmFtYnVsa28gc2FndDogPEhpY2s+IQoKTmEgc293YXMuLi4uIDotKQpTY2hydW1wZmkgc3RhdW50IHNvIHZvciBzaWNoIGhpbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGphIG1laSAoSGFyLCAxMC4gQXByIDE5OTUsIDA4OjE5OjU1KToKIyEgcm49TWlybyBydD03OTcyODcwMTcKVGogLCBNaXJvLCBkYXJhdWYgZ2lidCBlcyBkb2NoIHdvaGwgbm51ciBlaW5lIEFudHdvcnQ6ICJTaGl0IGhhcHBlbnMhIgoKSGFyIChzdGFuZCBhdWNoIHNjaG9uIG1pdCAyNSBMcHMgZnVlciAzIFNla3VuZGVuIGltIEdvYmxpbmxhZ2VyLCBhbHMgZXMKcmVzdHRldCB3dXJkZSA6KSAgKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS3VlcnpsaWNoIGJlaSBkZXIgQXJiZWl0IC4uLiAoQm9pbmcsIDEwLiBBcHIgMTk5NSwgMTI6MDY6NDYpOgpEYSBpc3QgbWFuIGFtIEFyYmVpdGVuIHVuZCBkZW16dWZvbGdlIGlkbGUsIHVuZCBzY2hhdXQgbmFjaCBlaW5lciBoYWxiZW4KU3R1bmRlIG1hbCB3aWVkZXIgYXVmIGRhcyBNRy1GZW5zdGVyLCBkb3J0IGJpZXRldCBzaWNoIGVpbmVtIGRlcgpmb2xnZW5kZSBBbmJsaWNrOgoKUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KUmF5IHRlaWx0IERpciBtaXQ6IGhpISBoYXN0IGR1IGt1cnogemVpdD8KCk5laW4gRGFua2UgLi4uIHNvIG5pY2h0LgoKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogamEgbWVpIChHcmltbWJvcm4sIDEwLiBBcHIgMTk5NSwgMTU6MzE6NDApOgojISBybj1CYW1idWxrbyBydD03OTcyOTQ0NjMKV29iZWkgc2ljaCBkaWUgRnJhZ2Ugc3RlbGx0LCBvYiBEdSBNaXJvcyBBcnRpa2VsIHVlYmVyaGF1cHQgc29yZ2ZhZWx0aWcKZ2VsZXNlbiBoYXN0LiBEYSBrYW0gZGFzIG5hZW1saWNoIHppZW1saWNoIGtsYXIgcmF1cywgd2FzIGRhIGF1ZiBkZXIgV29sa2UKZ2VzY2hhaC4KQWJlciB2aWVsbGVpY2h0IGthbSBkYXMgbnVyIG1pciBzbyB2b3IuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QsIGRlciBpbiBlaW5lbSBBbmZhbGwgdm9uIFNlbGJzdHVlYmVyc2NoYWV0enVuZyBoZWxmZW4Kd29sbHRlIHVuZCBkZXNzZW4gaGVpbGUgbWlybyAoU3RlcmJlbiBrYW5uIGVyIGltbWVyIG5vY2ggbmFjaCBkZXIgRGlza3Vzc2lvbikKaW0gbGFnIGhhZW5nZW4gYmxpZWIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogamEgbWVpIChZZW5kaSwgMTAuIEFwciAxOTk1LCAxOTo1MjozMSk6CiMhIHJuPUFzbW9kaXMgcnQ9Nzk3MjkxNDY1CgpOZWlubmVpbm5laW4sIEFzbW9kaXMsIGRhcyBoZWlzc3QKCiAgICAgICAgICJET09NICh0bSkgZ2VsYXVmZW4uLi4iLCAgIChjKSBieSBGUkVVTkQKCgpZVFksIGRlciBkZW0gbmV0RE9PTSBiZWkgZGVuIExpbmd1aXN0ZW4gbmFjaHRyYXVlcnQuLi4KICAgIChLaXJrLCBrb21tIHp1cnVlY2shKQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBqYSBtZWkgKEFyYW55YSwgMTAuIEFwciAxOTk1LCAyMDowMjo1NSk6CiMhIHJuPVllbmRpIHJ0PTc5NzUzNjM1MQpVbmQgZGFubiB3YXIgbm9jaCBkYXMgUG9zdGVyOgpET09NIGlyIG5peC4uLgoKQXJhbnlhCiAgICAgIGZhbmQgZGFzIGlyZ2VuZHdvIHdpdHppZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvcmZrbnVkZGVsLi4uIChZZW5kaSwgMTAuIEFwciAxOTk1LCAyMDoyMDozMyk6Cgo+IFRvcmZkdWVuZyB6dWNrdCByYXRsb3MgbWl0IGRlbiBTY2h1bHRlcm4uClplcGh5ciBrbnVkZGVsdCBEaWNoIHVlYmVyIGRlbiBIYXVmZW4uClRvcmZkdWVuZyBzYWd0OiB3aXJkIG5lIGdhbnpzY2hvZW5lIGFyYmVpdCBkYXMgYWxsZXMgZWluenVzb3RpZXJlbiAsIHVuZCBkYW5uClRvcmZkdWVuZyBzYWd0OiBub2NoIHp1ClRvcmZkdWVuZyBzY2hyZWl0IGxhdXQhClplcGh5ciBzYWd0OiBoaSA6KQpbQWxsZ2VtZWluOk5pY2tlbGNoZV0gaWNoIGxpZWJlIGV1Y2ggYWxsZS4gKGMpYnkgQm9yaXMKVG9yZmR1ZW5nIHN0b2VobnQuClRvcmZkdWVuZyBzYWd0OiBaRVBIWVIgISEhISEhIQpaZXBoeXIgc2FndDogaHVwcyAtIHNvcnJ5IFRvcmYKCgoqcHJ1dXVzdCoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS3VlcnpsaWNoIGJlaSBkZXIgQXJiZWl0IC4uLiAoSm9mLCAxMC4gQXByIDE5OTUsIDIxOjQ0OjE5KToKIyEgcm49Qm9pbmcgcnQ9Nzk3NTA4NDA2CiBTZWxiaWdlcyBpc3QgYXVjaCBtaXIgcGFzc2llcnQsIHVuZCB3b2hsIGF1Y2ggUm9jaHVzLiBJY2gga2FubiBsZWlkZXIKbnVyIGhpbiB1bmQgd2llZGVyIGF1ZiBtZWluZW4gU2NoaXJtIHNjaGF1ZW4sIGxlaWRlciBnaWJ0cyBhdWNoIG5vY2gKc28gZWluIHBhYXIgYW5kZXJlIEF1ZmdhYmVuLCBkaWUgd2ljaHRpZ2VyIHNpbmQgYWxzIGRhcyBNdWQgLSB1bmQgd2VubiBpY2gKZGFubiBIYXVmZW4gdm9uIEFuZnJhZ2VuIHVudGVyZWluYW5kZXIgZmluZGUsIHdpZSBkb3J0LCBrYW5uIGljaCBuaWNodCBhbi0KZGVycywgYWxzIGRpZSB6dSBpZ25vcmllcmVuIC0gc29ycnksIFNPIG5pY2h0LgoKIEpvZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKlNDSFJFSSogKEFuYXRvbCwgMTEuIEFwciAxOTk1LCAwNToxNzowOCk6CgpOdXIgX2VpbmVfIFplaWxlIGF1cyBkZW0gS2FtcGYgZ2VnZW4gZWluZSBzdHVwaWRlIEhlbGl4IFBvbWF0YS4uLgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCkFuYXRvbCBzY2huYXBwdCBzaWNoIGRlbiBCdW1lcmFuZyB1bmQgZnJpc3N0IGlobiBnZXJhZXVzY2h2b2xsIGF1Zi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKRnJhZ3QgbWljaCBuaWNodCwgd2llIGVyIGdlc2NobWVja3QgaGF0LiBHZXRhbmt0IGhhdCBlciBhdWNoIG5pY2h0LgoKQW5hdG9sICgpIC0gaXN0IGdlc2FldHRpZ3QsIGRhbmtlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGFzc3QgOikgKEFuYXRvbCwgMTEuIEFwciAxOTk1LCAxMDowOTozNyk6ClRvZXRlciBpc3QgZWluZ2Vsb2dndCwKdW5kIHp3YXIgdm9uOiBNdWVuc3Rlci4KSWRsZS1aZWl0OiAwNjoyNzoxNwpWb2xsZXIgTmFtZTogRGVyIFRvZXRlciBzdGVodCBydW0KCkFiZXIgd2lya2xpY2guLi4KCkFuYXRvbCAoa2FubiBzaWNoIGRhcyBHcmluc2VuIG5pY2h0IHZlcmtuZWlmZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEt1ZXJ6bGljaCBiZWkgZGVyIEFyYmVpdCAuLi4gKER1cmlhbiwgMTEuIEFwciAxOTk1LCAxMDoxMToyMCk6CiMhIHJuPUpvZiBydD03OTc1NDMwNTkKSGFsdCwgbW9tZW50IC4uLiBhbHNvIHdlbm4gaWNoIGVzIG5pY2h0IGJlc3NlciB3dWVzc3RlLCBKb2YsIGRhbm4gaGFldHRlCmljaCBkYXMgZmFzdCBnZWdsYXVidC4gRHUgaGFzdCBkb2NoIHRhdHNhZWNobGljaCBpbiBkaWVzZW0gQXJ0aWtlbApiZWhhdXB0ZXQsIGVzIGdlYmUgQXVmZ2FiZW4sIGRpZSB3aWNodGlnZXIgc2luZCBhbHMgZGFzIE1VRD8gR2liJyBEaXIKa2VpbmUgTXVlaGUsIGRhcyBnbGF1YmUgRGlyIG5pZW1hbmQgOi0pCgotIER1cmlhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVmIG9kZXIgWnU/IChBbmF0b2wsIDExLiBBcHIgMTk5NSwgMTA6MzY6NTIpOgprbGV0dGVyZSBsZWl0ZXIKRGllIEZhbGx0dWVyIGlzdCBnZXNjaGxvc3NlbiEKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogPiBFaW5lIEZhbGx0dWVyIHNjaGxpZXNzdCBzaWNoLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkFjaC4gV2F0IGlzIGRlbm4gbnU/CkFuYXRvbCAoKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2Flbmd1cnVoIHRlc3RldCA7KSAoR3VtcHksIDExLiBBcHIgMTk5NSwgMTY6NDQ6MDApOgpLYWVuZ3VydWggcGllcHQgRGljaCBhbi4KS2Flbmd1cnVoIHBpZXB0IERpY2ggYW4uCkthZW5ndXJ1aCBwaWVwdCBEaWNoIGFuLgpLYWVuZ3VydWggcGllcHQgRGljaCBhbi4KS2Flbmd1cnVoIHBpZXB0IERpY2ggYW4uCkthZW5ndXJ1aCBwaWVwdCBEaWNoIGFuLgpLYWVuZ3VydWggcGllcHQgRGljaCBhbi4KS2Flbmd1cnVoIHBpZXB0IERpY2ggYW4uCkthZW5ndXJ1aCBwaWVwdCBEaWNoIGFuLgpLYWVuZ3VydWggcGllcHQgRGljaCBhbi4KS2Flbmd1cnVoIHBpZXB0IERpY2ggYW4uCkthZW5ndXJ1aCBwaWVwdCBEaWNoIGFuLgpLYWVuZ3VydWggcGllcHQgRGljaCBhbi4KS2Flbmd1cnVoIHBpZXB0IERpY2ggYW4uCkthZW5ndXJ1aCBwaWVwdCBEaWNoIGFuLgpLYWVuZ3VydWggcGllcHQgRGljaCBhbi4KS2Flbmd1cnVoIHBpZXB0IERpY2ggYW4uCkthZW5ndXJ1aCBwaWVwdCBEaWNoIGFuLgpLYWVuZ3VydWggcGllcHQgRGljaCBhbi4KS2Flbmd1cnVoIHBpZXB0IERpY2ggYW4uCkthZW5ndXJ1aCBwaWVwdCBEaWNoIGFuLgpLYWVuZ3VydWggcGllcHQgRGljaCBhbi4KS2Flbmd1cnVoIHBpZXB0IERpY2ggYW4uCkthZW5ndXJ1aCBwaWVwdCBEaWNoIGFuLgpLYWVuZ3VydWggcGllcHQgRGljaCBhbi4KRHVyY2ggZGllIFN0aWxsZSBzY2hlaW50IGVpbiBLbGFuZyB2b24gTXVzaWsgenUgc2FldXNlbG4uLi4KRGllIFJhdW1tZWxkdW5nIGthbSBnZXJhZGUgcmVjaHQgOykKCipncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRvbGxlcyBSRWNoZW56ZW50cnVtIChHdWxkdWthdCwgMTEuIEFwciAxOTk1LCAxNzoxNToyMyk6CkRlbiBnYW56ZW4gVGFnIGdlaHQgZGFzIGhpZXIgc2Nob24sIG1hbCBmdW5rdGlvbmllcnQgZXMsIGRhbm4gbWFsIHdpZWRlcgpuaWNodCwgenVyIHplaXQgYmVrb21tZW4gd2lyIG51ciB0ZXh0IGhlcmVpbiwgYWJlciBzZW5kZW4ga29lbm5lbiB3aXIgbml4IQp1bmQgendhciB3ZWdlbjoKdHJhY2Vyb3V0ZSB0byBNRy51bmktbXVlbnN0ZXIuZGUgKDEyOC4xNzYuMTIxLjc0KSwgMzAgaG9wcyBtYXgsIDQwIGJ5dGUKcGFja2V0cwogMSAgbmVvbi5vcmNoLnJ1aHItdW5pLWJvY2h1bS5kZSAoMTM0LjE0Ny42Ni4yKSAgNiBtcyAgNiBtcyAgNSBtcwogMiAgbmRpXzIucnoucnVoci11bmktYm9jaHVtLmRlICgxMzQuMTQ3Ljk2LjEyKSAgNjcgbXMgIDY4IG1zICA2NyBtcwogMyAgY2lzY29fYS5yei5ydWhyLXVuaS1ib2NodW0uZGUgKDEzNC4xNDcuMzIuMTgpICA2NiBtcyAgNjYgbXMgIDY2IG1zCiA0ICBydWJjLnJ6LnJ1aHItdW5pLWJvY2h1bS5kZSAoMTM0LjE0Ny4yMjIuNCkgIDgxIG1zICA2OSBtcyAgNjkgbXMKIDUgIG5kaV8zLnJ6LnJ1aHItdW5pLWJvY2h1bS5kZSAoMTM0LjE0Ny4zMi4xMSkgIDc1IG1zICA3NiBtcyAgNzYgbXMKIDYgIG5kaV8yLnJ6LnJ1aHItdW5pLWJvY2h1bS5kZSAoMTM0LjE0Ny45Ni4xMikgIDc1IG1zICA3NyBtcyAgNzMgbXMKIDcgIGNpc2NvX2EucnoucnVoci11bmktYm9jaHVtLmRlICgxMzQuMTQ3LjMyLjE4KSAgNzYgbXMgIDc4IG1zICA4MCBtcwogOCAgcnViYy5yei5ydWhyLXVuaS1ib2NodW0uZGUgKDEzNC4xNDcuMjIyLjQpICA5MCBtcyAgNzQgbXMgIDc0IG1zCiA5ICBuZGlfMy5yei5ydWhyLXVuaS1ib2NodW0uZGUgKDEzNC4xNDcuMzIuMTEpICA4MiBtcyAgODEgbXMgIDc5IG1zCjEwICBuZGlfMi5yei5ydWhyLXVuaS1ib2NodW0uZGUgKDEzNC4xNDcuOTYuMTIpICA4MCBtcyAgODUgbXMgIDgwIG1zCjExICBjaXNjb19hLnJ6LnJ1aHItdW5pLWJvY2h1bS5kZSAoMTM0LjE0Ny4zMi4xOCkgIDc4IG1zICA3NyBtcyAgODEgbXMKMTIgIHJ1YmMucnoucnVoci11bmktYm9jaHVtLmRlICgxMzQuMTQ3LjIyMi40KSAgODQgbXMgIDgwIG1zICA4MiBtcwoxMyAgbmRpXzMucnoucnVoci11bmktYm9jaHVtLmRlICgxMzQuMTQ3LjMyLjExKSAgMTEwIG1zICA4NiBtcyAgODYgbXMKMTQgIG5kaV8yLnJ6LnJ1aHItdW5pLWJvY2h1bS5kZSAoMTM0LjE0Ny45Ni4xMikgIDk1IG1zICA4NyBtcyAgODcgbXMKMTUgIGNpc2NvX2EucnoucnVoci11bmktYm9jaHVtLmRlICgxMzQuMTQ3LjMyLjE4KSAgODggbXMgIDk4IG1zICA5MCBtcwoxNiAgcnViYy5yei5ydWhyLXVuaS1ib2NodW0uZGUgKDEzNC4xNDcuMjIyLjQpICA5MCBtcyAgODQgbXMgIDg0IG1zCjE3ICBuZGlfMy5yei5ydWhyLXVuaS1ib2NodW0uZGUgKDEzNC4xNDcuMzIuMTEpICA5NSBtcyAgOTQgbXMgIDkzIG1zCjE4ICBuZGlfMi5yei5ydWhyLXVuaS1ib2NodW0uZGUgKDEzNC4xNDcuOTYuMTIpICA5NyBtcyAgOTYgbXMgIDkxIG1zCjE5ICBjaXNjb19hLnJ6LnJ1aHItdW5pLWJvY2h1bS5kZSAoMTM0LjE0Ny4zMi4xOCkgIDk1IG1zICA5MSBtcyAgOTIgbXMKMjAgIHJ1YmMucnoucnVoci11bmktYm9jaHVtLmRlICgxMzQuMTQ3LjIyMi40KSAgOTAgbXMgIDkwIG1zICA5MSBtcwoyMSAgbmRpXzMucnoucnVoci11bmktYm9jaHVtLmRlICgxMzQuMTQ3LjMyLjExKSAgMTEyIG1zICAxMDQgbXMgIDk5IG1zCjIyICBuZGlfMi5yei5ydWhyLXVuaS1ib2NodW0uZGUgKDEzNC4xNDcuOTYuMTIpICAxMDIgbXMgIDExMiBtcyAgOTkgbXMKCnVuZCBzbyBnZWh0IGRhcyBoZXV0ZSBkZW4gZ2FuemVuIHRhZyEKRGlzbWlzc2VkLCBHRAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGphIG1laSAoTWlybywgMTIuIEFwciAxOTk1LCAwMjo0MDowMSk6CiMhIHJuPU1pcm8gcnQ9Nzk3Mjg3MDE3CkhpIElocnMsCm1laW4gRm9ydHNldHp1bmdzcm9tYW46Cldlbm4gbWFuIGluIEF0bGFudGlzIHZvbGxiZWxhZGVuIGlzdCAodW5kIGljaCBiaW4gYWxzIGFsdGVyCk5pbW0tbWl0LXdhcy1uaWNodCBOaWV0LXVuZCBOYWdlbGZlc3QgaXN0IGltbWVyIHZvbGxiZXBhY2t0LApkYW5uIGZpbmRldCBtYW4gendhciBlaW4ga2luZGVyc3BpZWx6ZXVnIHVuZCBrYW5uIGVzIGF1Y2ggb2VmZm5lbiwKZGllc2VzIFNwaWVsemV1ZyB1bmQgZGVyIEluaGFsdCB2ZXJrcnVlbW1lbG4gc2ljaCBhYmVyIGRhbm4gZ2xlaWNoIHdpZWRlci4uLgphbmQgdGhlcmUgaXMgbm8gc2Vjb25kIGNoYW5jZS4uCkRhbmtlIEJvaW5nIGtvbm50ZSBpY2ggZGFubiBhdWNoIGRpZXNlcyBRdWVzdCBsb2VzZW4uLi4KRGFzcyBiZWltIEZyYWNodGd1dCBpY2ggZWluZW4gZnVlaHJlciBlcndpc2NodGUsIGRlciBrZWluZSBMdXN0IGF1ZgpCb290ZmFocmVuIGhhdHRlIHVuZCBtaWNoIGltIFN0aWNoIGxpZXMsCmljaCB6dXJ1ZWNrZnVociB1bmQgc2ljaCBkaWVzZSBTY2hsYW5nZSBzY2hvbiBhdXMgZGVtIFN0YXViIGdlbWFjaHQgaGF0dGUsCnd1bmRlcnRlIGtlaW5lbiBtZWhyLi4uIChoZXJ6bGljaGVuIEtudWRkZWwgYW4gVEQgdW5kIE11cGZlbCA7LSkpCk1pcm8gKGRlciBzaWNoIGFuc2NoZWluZW5kIGJhbGQgYWxzIFRlc3RzcGllbGVyIGJld2VyYmVuIGthbm4sIGRlbm4gZXIgemllaHQKZGllIGJ1Z3MgbnVyIHNvIGFuLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBqYSBtZWkgKFNjaHJ1bXBmaSwgMTIuIEFwciAxOTk1LCAwMzoyNzoxNyk6CiMhIHJuPU1pcm8gcnQ9Nzk3NjQ3MjAxCkF1IGphLCBpY2ggc2NoaWNrIERpciBlaW5lbiBCZXdlcmJ1bmdzYm9nZW4gOy0pCkFtYXpvcmEgaXMgbWlyIGVoIHp1IGFycm9nYW50LgpFaW5lIHZvbiBJaHJlbSBUZXN0aSBnZXBsYWd0ZSBTY2hydW1wZmkgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW4gZGVyIE1QQS4uIChTY2hydW1wZmksIDEyLiBBcHIgMTk5NSwgMDM6NTE6NTYpOgpFaW4gRnJvc2NoIGlzdCBqZXR6dCBlaW4gU2VoZXIhIChNZXJsaW4sIDEyLiBBcHIgMTk5NSwgMDM6NDg6NDUpOgoKQW0gTWl0LCAxMi4gQXByIDE5OTUsIDAzOjQ4OjQ1IGhhdCBFaW4gRnJvc2NoIGRpZSBub2V0aWdlbiBCZWRpbmd1bmdlbgplcmZ1ZWxsdCB1bmQgaXN0IHZvbSBTcGllbGVyc3RhdHVzIHp1bSBTZWhlcnN0YXR1cyBhdWZnZXN0aWVnZW4uCgogSGVyemxpY2hlbiBHbHVlY2t3dW5zY2gsIEVpbiBGcm9zY2ghCgoqTGFjaCwgR3JvZWhsKgpTY2hydW1wZmkgaGF0IG4gTG9jaCBpbSBad2VyY2hmZWxsIHZvciBsYWNoZW4gOi0pKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFybWFnZWRkb24gYmVzdGVjaGxpY2ggPyAoTG9jdXR1cywgMTIuIEFwciAxOTk1LCAxMToxOToxOCk6Ck5ldWxpY2ggaW4gZGVyIEdpbGRlIGJlaSBBcm1hZ2VkZG9uOgpncmVpZiBpbiB0dWV0ZQpEdSBncmVpZnN0IGluIERlaW5lIE9ya2JhZXJjaGVuIFR1ZXRlIHVuZCBob2xzdCBlaW4gbGVja2VyZXMgT3JrYmFlcmNoZW4KaGVyYXVzLgoKZ2liIGJhZXJjaGVuIGFuIGFybWFnZWRkb24KRHUgZ2lic3QgQXJtYWdlZGRvbiBkYXMgU2Nob2tvbGFkZW5vcmtiYWVyY2hlbi4KendpbmdlIGFybWFnZWRkb24gaXNzIGJhZXJjaGVuCkFybWFnZWRkb24gbHV0c2NodCBlaW4gU2Nob2tvbGFkZW5vcmtiYWVyY2hlbi4KCipncmlucyoKVmllbGxlaWNodCBsYWVzc3QgZXIgc2ljaCBqYSBkYWR1cmNoIGJlc3RlY2hlbiA7KQoKVHNjaG9lLi4uCkxvYy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndpZXNvIG5pY2h0IGdsZWljaD8gKEhhcmRpbCwgMTMuIEFwciAxOTk1LCAxMjo1OTo1OCk6Cmxlcm5lIGZ1bWlrW0FsbGdlbWVpbjpLb3R6YnJvY2tlbl0gYWVyZ2VyISEKb21pLWdlcmkKRHUgYmlzdCBuaWNodCBrb3JyZWt0IGdla2xlaWRldC4KPiB6aWVoZSBhbGxlcyBhblNhYnJpbmEgZnJhZ3Q6IFNlbnNhaSBuYWNoIGFid2Vocj8KCkVpbiBHdWVydGVsOiBEdSB6aWVoc3QgZGVuIEd1ZXJ0ZWwgYW4uCkVpbiBHaTogRHUgemllaHN0IGRlbiBHaSBhbi4KRWluIEJ1dHRvbjogRHUgemllaHN0IGRlbiBCdXR0b24gYW4uCkFsbGVzIGFuZ2V6b2dlbiwgd2FzIGdpbmcuCj4gU2FicmluYSBncnVlYmVsdCBlaW5lIFdlaWxlIHZvciBzaWNoIGhpbi4KJi0xCltsZXJuZSBmdW1pa29taS1nZXJpXQpNYW4gZ3J1ZXNzdCB3ZW5uIG1hbiBlaW4gRG9qbyBiZXRyaXR0Lgo+IGdydWVSb2NodXMgc2FndDogInRyZXRlIGF1cyBnaWxkZSBhdXMiIGlzdCBkaWUgc3ludGF4CnNzZQpEdSBncnVlc3N0Lgo+ICYtMQpbbGVybmUgZnVtaWtvbWktZ2VyaV0KRHUga2FubnN0IGRlbiBGdW1pa29taS1nZXJpIGpldHp0IG5vY2ggbmljaHQgbGVybmVuLgoKCkFyZ2wuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWggc28gOy0pIChIYXJkaWwsIDEzLiBBcHIgMTk5NSwgMTM6MTc6MDUpOgoKRHUgc2Fnc3Q6IEJhbWJ1bGtvLCB3aWUgb2Z0IGhhc3QgRHUgZ2VsZXJudD8KPiAsCgpGdW5ha29zaGkgc2FndDoKRHUgbXVzc3Qgbm9jaCBBZ2UtdWtlLCBDaG9rdS16dWtpLCBHZWRhbi1iYXJhaSwgU290by11ZGUtdWtlLCBVY2hpLXVkZS11a2UKdmllbCB1ZWJlbi4KCj4gU2FicmluYSBmcmFndCBGdW5ha29zaGkgbmFjaCBMZXZlbC4KRnVuYWtvc2hpIHNjaGF1dCBEaWNoIGZyYWdlbmQgYW4uCkJhbWJ1bGtvIHNhZ3Q6IGVpbiBwYWFyIHRhdXNlbmQgbWFsPz8Kc2FnZSBpc3Qgb2tlZS4KRHUgc2Fnc3Q6IGlzdCBva2VlLgo+IHRyZXRlIGF1cyBnaVNhYnJpbmEgZnJhZ3QgRnVuYWtvc2hpIG5hY2ggR2VuYXVlbiBhbmZvcmRlcnVuZ2VuLgpsZGUgYXVzCkR1IGJpc3QgamV0enQgbmljaHQgbWVociBpbiBkZXIgR2lsZGUgZGVyIEthcmF0ZWthZW1wZmVyLgpEdSB6aWVoc3QgZGVuIEdpIGF1cy4KRHUgZ2lic3QgZWluZW4gR2kgYWIuCkR1IHppZWhzdCBkZW4gR3VlcnRlbCBhdXMuCkR1IGdpYnN0IGVpbmVuIEd1ZXJ0ZWwgYWIuCj4gZ3JpbnNlCkR1IGdyaW5zdC4KCgpIYWV0dGUgaWNoIGRhcyBnbGVpY2ggZ2V3dXNzdCwgaGFldHRlIGljaCBqZXR6dCBuaWNodCAnbmUgVGFzdGVucHJlbGx1bmcgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWhlcmlzY2hlciBCdW1lcmFuZz8gKEFuYXRvbCwgMTMuIEFwciAxOTk1LCAyMDoyMToxNCk6CgogIER1IHZlcmZlaGxzdCBFdHdhcy4KRGVyIEJ1bWVyYW5nIHRyaWZmdCBFdHdhcyBhbSBLb3BmLgpEZXIgQnVtZXJhbmcgdHJpZmZ0IEV0d2FzIGhhcnQgYW0gS29wZi4KKCA2OSB8IDIwICkKICBEdSBncmVpZnN0IEV0d2FzIG1pdCBkZW0gWGFudGktU2Nod2VydCBhbi4KICBEdSB2ZXJmZWhsc3QgRXR3YXMuCkV0d2FzIGdlaHQgbmFjaCBTdWVkZW4uCkR1IHZlcmZvbGdzdCBqZXR6dCBFdHdhcy4KRGVyIEJ1bWVyYW5nIGZsaWVndCBuYWNoIFN1ZWRlbi4KRGVyIEJ1bWVyYW5nIGZsaWVndCBuYWNoIE5vcmRlbi4KKCA3MCB8IDIxICkKRXR3YXMgbmViZW5hbiBoYXQgRGVpbmVuIEJ1bWVyYW5nIGFiZ2VmYW5nZW4uCkRlciBCdW1lcmFuZyBmbGllZ3Qgd2llZGVyIGhlcmVpbi4KRHUgZmFlbmdzdCBkZW4gQnVtZXJhbmcgZ2VzY2hpY2t0LgpbLi4uXQoKSG0uIEljaCBiaW4gc29nYXIgc2ljaGVyLCBkYXMgZXMgRXR3YXMgd2FyIDopCgpBbmF0b2wgKCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthcmF0ZWdpbGRlIChHdW5kdXIsIDEzLiBBcHIgMTk5NSwgMjE6MDE6MDApOgpBbHNvIGlyZ2VuZHdpZSBoYWIgaWNoIG1pciBuZSBLYXJhdGVnaWxkZSBhbmRlcnMgdm9yZ2VzdGVsbHQKSGllciBzaW5kIGphIG51ciBiZXNvZmZlbmUuLi4KLi4uCllldGkgc2NobGVwcHQgc2ljaCBub2NoIGV0d2FzIGFuZ2VzY2hsYWdlbiB2b24gNCBXb2NoZW4gS3JhbmtlbmhhdXMgaGVyZWluLgpZZXRpIHZlcm5laWd0IHNpY2ggYW5tdXRpZy4KWWV0aSBydWVscHN0LgpCYW1idWxrbyBzYWd0OiA8SGljaz4hCkJhbWJ1bGtvIGRhcyBXYXNzZXJ3ZXNlbiBmbGllc3N0IG5hY2ggU3VlZGVuLgpBc21vZGlzIHJ1ZWxwc3QuCkFzbW9kaXMgcnVlbHBzdC4KQmFtYnVsa28gZGFzIFdhc3Nlcndlc2VuIGZsaWVzc3QgaGVyZWluLgpCYW1idWxrbyBzaWVodCBiZXRydW5rZW4gYXVzLgpZZXRpIHN0b2xwZXJ0IHVlYmVyIHNlaW5lIEZ1ZXNzZS4KVHJhdW1hdGljIHN0b2xwZXJ0IHVlYmVyIHNlaW5lIEZ1ZXNzZS4KdXN3LiB1c3cuIHNvd2FzIGFiZXIgYXVjaCA6LSkKR3VuZHVyIGxhY2h0IHNpY2ggZWlucy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVzIGRlbSBMZWJlbiBlaW5lcyBUZXN0aWVzLi4uIChHcmltbXRlc3QsIDEzLiBBcHIgMTk5NSwgMjE6MTU6MjgpOgoKR3JpbW1ib3JuIHRyYWluaWVydCBkYXMgemFwcGVuLiBVbmQgendhciBzY2huZWxsOgoKRWluIHNlbHRzYW1lcyBHZWZ1ZWhsIHVlYmVya29tbXQgRGljaCAuLi4KRHUgdmVybGllcnN0IGRpZSBPcmllbnRpZXJ1bmcgLi4uClNhbmN0dW0gSUkgLSBHcmltbWJvcm5zIFJhdW0uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBoZWltLgpEaWUgTGVpY2hlIEdyaW1tdGVzdHMuCkRpZSB2ZXJmYXVsdGVuIEVpbnplbHRlaWxlIEdyaW1tdGVzdHMuCgpTbyBiZWdlZ25ldCBtYW4gc2ljaCBzZWxiZXIgenVtIGRyaXR0ZW4gbWFsLCB3ZW5uIG1hbiBpbiBkZW4gU3BpZWdlbApzY2hhdXQuLi4gOy0pCgpHcmltbXRlc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOmJlc29mZmVuZSBrYXJhdGVsZSAoS2V0b3MsIDE0LiBBcHIgMTk5NSwgMDI6MjI6MzMpOgpTb2xsdGVuIEthcmF0ZWtlIG5pY2h0IG1lZGl0aWVyZW4genVtIGhlaWxlbiBzdGF0dHMgc2F1ZmVuIGdlaGVuID8KS2V0b3Mgc2FndDogPE9ISEhoaG1tbW1tbW1tbW1tbT4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVlYmVybmFobWUhIChHcmltbWJvcm4sIDE1LiBBcHIgMTk5NSwgMDY6MjE6MjgpOgoKSmEsIGRpZSBVZWJlcmZyZW1kdW5nIERldXRzY2hsYW5kcyBtYWNodCBhdWNoIHZvciBkZW0gTUcgbmljaHQgaGFsdC4gSGllciBkaWUKYWt0dWVsbGUgd2VyLWxpc3RlOgoKVG93YW5kYSBkaWUgSGVsZGluIC0gWndlcmcgLSBbTGluel0KR3JpbW1ib3JuIGRlciBBdGhlaXN0IC0gWndlcmcgLSBbU2Nod2VkZW5dClBvbGFyaGV4Y2hlbiBTY2hydW1wZmkgZGllIGR1ZW1tc3RlIE1hZ2llcmluIGRlcyBVbml2ZXJzdW1zIC0gUG9sYXJoZXhlIC0KW0xpbnpdClB1bWEhICAtIFByb3BoZXQgZGVzIFVudGVyZ2FuZ3MgLSBbU2Nod2VkZW5dClphcmRveiBkZXIgRHVua2xlIC0gRGFlbW9uIC0gW1NjaHdlZGVuXQoKS2VpbiBEZXV0c2NoZXIsIDMgU2Nod2VkZW4gdW5kIDIgT2VzaXMuClNvIG11c3MgZGFzIGxhdWZlbi4uLiA7LSkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCB1bmQgU2Nod2VkZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVjaD8gKEdyaW1tYm9ybiwgMTUuIEFwciAxOTk1LCAwNjo1Njo1MCk6CgpBYmVuZHN0ZXJuIGlzdCBnZXJhZGUgaW5zIFNwaWVsIGdla29tbWVuLgp6ZWl0ClNhbSwgMTUuIEFwciAxOTk1LCAwNjo1NTozNC4KCkRhIGhhdCBzaWNoIGFiZXIgd2VyIHNlaHIgdmVyc3BhZXRldCBvZGVyIGFyZyB2ZXJmcnVlaHQuLi4gOi0pCgpBdWNoIHZlcnNwYWV0ZXQgdW5kIHVlYmVybXVlZGV0LAoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphIHNvIGVpbiBzY2htYXJybiAoQ2FyYWRocmFzLCAxNS4gQXByIDE5OTUsIDEzOjQ1OjA0KToKCj4gbApEdSBiaXN0IGJsaW5kICEKbmltbSBhbGxlcwpEdSBuaW1tc3QgZWluIEJsdXRzYXVnZXItU2Nod2VydC4KRHUgbmltbXN0IGVpbmUgUm9iZS4KemllaGUgcm9iZSBhbgpEdSB6aWVoc3QgZGllIFJvYmUgYW4uCm9iZW4KRmluc3Rlcm5pcy4KPiBrbGV0dGVyZSBkdXJjaCBvZWZmbnVuZwpEdSBrbGV0dGVyc3QgZHVyY2ggZGllIE9lZmZudW5nIG5hY2ggZHJhdXNzZW4uCkZpbnN0ZXJuaXMuCj4gbApEdSBiaXN0IGJsaW5kICEKCgpJY2ggbXVzcyBzY2hvbiBzYWdlbiwgYmxpbmQgYmluIGljaCB2ZXJmbHVjaHQgZ2VzY2hpY2t0IDopKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVWx0cmFsYW5nIChDZXJlYnVzLCAxNS4gQXByIDE5OTUsIDE2OjMwOjUyKToKV2llIHdhZXJlIGVzIG1pdCBlaW5lbSBCZWZlaGwgIlVsdHJhbGFuZyIsIGFuYWxvZyB6dSAiVWx0cmFrdXJ6Ij8KRGllIEJlc2NocmVpYnVuZ2VuIGFsbGVyIFJhZXVtZSB3dWVyZGVuIGF1ZiBkcmVpIFNlaXRlbiBhdWZnZWJsYWVodCwgbWFuCmhhZXR0ZSBlbmRsaWNoIG1hbCB3YXMgenUgbGVzZW4uLi4uIExvaG50IHNpY2ggbmF0dWVybGljaCBudXIgZnVlciBMZXV0ZSwgZGllCnZpZWwgWmVpdCBoYWJlbi4uCgpDZXJlYnVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVWx0cmFsYW5nIChHcmltbWJvcm4sIDE2LiBBcHIgMTk5NSwgMjE6NDI6MzUpOgojISBybj1DZXJlYnVzIHJ0PTc5Nzk1NjI1MgoKQXJycmdoISBCaXN0IER1IGdhbnogdm9uIFNpbm5lbj8gV2VyIHNvbGwgZGVubiBkaWUgdWx0cmFsYW5nZSBCZXNjaHJlaWJ1bmcKc2NocmVpYmVuPyBOYSBndXQsIHdlbm4gZGFzIHZvbiBTZWhlcm4gZ2VtYWNodCB3dWVyZGUgLSBPSy4gQWJlciB3ZW5uIE1hZ2llcgpkYXMgenUgdHVuIGhhZXR0ZW46IE5PIFdBWSEKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdC4gTmljaHQgbWVociBTZWhlciBzb25kZXJuIE1hZ2llci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVWx0cmFsYW5nIChLZXRvcywgMTYuIEFwciAxOTk1LCAyMjowNDo0MCk6CiMhIHJuPUdyaW1tYm9ybiBydD03OTgwNjEzNTUKRGllIFRlZXh4dHRlZSB3ZWVlcnJyZGRkZWVubm4gZWVlaW5mYWFhY2NjY2hoaCB1dXV1dXV1dWxsbGx0dHR0dHJhYWFhCmxhYWFhYWFhYWFhYWFubm5ubm5ubm5uZ2dnZ2dnZ2cuCi0gS2VlZWVlZWVlZWV0dHRvb29vb29vb29zc3Nzc3NzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBVbHRyYWxhbmcgKFNjaHJ1bXBmaSwgMTYuIEFwciAxOTk1LCAyMjoxNzoxNSk6CiMhIHJuPUdyaW1tYm9ybiBydD03OTgwNjEzNTUKRGFubiBoYWV0dGUgaWNoIHN0YXR0IDUgU2VpdGVuIFJlcGZpbGUsIHdhaHJzY2hlaW5saWNoIDE1IFNlaXRlbiBSZXBmaWxlISA6LSkKTmUgTmUKU2NocnVtcGZpIGlzdCBlbnRzY2hpZWRlbiBkYWdlZ2VuISA6KQpQLlMgSWNoIGJpbiBhdWNoIGZhdWwuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIFBlbnRpdW0gd2FycyEgKEdyaW1tYm9ybiwgMTcuIEFwciAxOTk1LCAwMTo0NDo1NSk6CgpmdHAgbmFjaCBtZyBrYW5uIHVlYmVycmFzY2hlbmQgc2VpbjoKNzM0MyBieXRlcyBzZW50IGluIDAuMDAgc2Vjb25kcyAoNzY2MS4yMiBLYnl0ZXMvcykKNzM2NyBieXRlcyBzZW50IGluIDAuMDAgc2Vjb25kcyAoOTAzOC4xMSBLYnl0ZXMvcykKNzM3NSBieXRlcyBzZW50IGluIDAuMDAgc2Vjb25kcyAoOTIzMy41MiBLYnl0ZXMvcykKNjcwNCBieXRlcyBzZW50IGluIDAuMDAgc2Vjb25kcyAoNjQ2Mi44NiBLYnl0ZXMvcykKNjY5OSBieXRlcyBzZW50IGluIDAuMDAgc2Vjb25kcyAoODUyOS4zMiBLYnl0ZXMvcykKNjkzMSBieXRlcyBzZW50IGluIDAuMDAgc2Vjb25kcyAoODc5MC4zMyBLYnl0ZXMvcykKODc3NiBieXRlcyBzZW50IGluIDAuMDAgc2Vjb25kcyAoNzI4MS40OSBLYnl0ZXMvcykKODc3NiBieXRlcyBzZW50IGluIDAuMDAgc2Vjb25kcyAoODY4My4xOSBLYnl0ZXMvcykKODc3NyBieXRlcyBzZW50IGluIDAuMDAgc2Vjb25kcyAoOTUxMy4wOCBLYnl0ZXMvcykKODg2MSBieXRlcyBzZW50IGluIDAuMDAgc2Vjb25kcyAoOTczMy43NyBLYnl0ZXMvcykKODg2MiBieXRlcyBzZW50IGluIDAuMDAgc2Vjb25kcyAoOTczNC44NyBLYnl0ZXMvcykKODg2NCBieXRlcyBzZW50IGluIDAuMDAgc2Vjb25kcyAoOTE4OS4yMiBLYnl0ZXMvcykKCgpLbGFzc2UgTGVpdHVuZyAtIGFiZXIgU2Nod2FlY2hlbiBpbSBSZWNobmVuLCBlaW5kZXV0aWcuLi4KCk1lcmtlOiBBTkRFUkUgUHJvemVzc29yZW4gc2luZCBJTU1FUiBidWdmcmVpIQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LiBWZXJsYWVzc3Qgc2ljaCBkb2NoIGxpZWJlciBhdWYgc2VpbmUgTWF0aGVzY2hlaW5lIHVuZApuaWNodCBhdWYgZGVuIFJlY2huZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXVzIGRlbSBMZWJlbiBlaW5lcyBUZXN0aWVzLi4uIChBbnRoZWEsIDE3LiBBcHIgMTk5NSwgMTM6MTM6NTYpOgojISBybj1HcmltbXRlc3QgcnQ9Nzk3ODAwNTI4CkRhcyBpc3QgZG9jaCBub2NoIGdhciBuaWNodHMuLi4gc2ljaCBzZWxiZXIgenUgYmVnZWdlbmVuLgpNZWluIFRlc3RpIChNdWRkeSkgaGF0IHNjaG9uIEVDSFRFTiBLYW5pYmFsaXNtdXMgYmV0cmllYmVuLi4uLiBlciBhc3Mgc2VpbmUKZWlnZW5lIExlaWNoZSBhdWYsIGRhbWl0IGVyIHNpY2ggbmljaHQgc28gbGVpZGVuIHNlaGVuIG11c3MgOikKCiAgICAgQW50aGVhCiAgKGJyYXVjaHQgZGFzIFphcHBlbiBuaWNodCBtZWhyIHp1IHVlYmVuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluIEhhdWNoIHZvbiBHZWxiLi4uIChWZXJ3aXJydW5nLCAxNy4gQXByIDE5OTUsIDE5OjQ3OjE3KToKTmV1bGljaCBtaXQgZGVyIGdlbGJlbiBSb2JlOgoKRGllIEFuZ3N0IGlzdCBzdGFlcmtlciBhbHMgRHUgLi4gRHUgd2lsbHN0IG51ciBub2NoIHdlZyBoaWVyLgpNdXBmZWwga29tbXQgYW4uCk11cGZlbCBrdXNjaGx0IHNpY2ggYW4gRGljaCBhbi4KRHUgZnVlaGxzdCBEaWNoIHdpZWRlciBldHdhcyBiZXJ1aGlndC4KCk11cGZlbCBhbHMgQmVydWhpZ3VuZ3NtaXR0ZWw/PwoKICAgICBWZXJ3aXJydW5nLCB6aWVtbGljaCB2ZXJ3aXJydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBsb20gKEtoaWRhciwgMTcuIEFwciAxOTk1LCAyMzozMzo1MSk6CkljaCBoYWJlIGJlaW0gQXVmcmFldW1lbiBub2NoIGV0d2FzIGdlZnVuZGVuLCB3YXMgU3R1ZGVudGVuIHdpc3NlbiBzb2xsLQp0ZW46CgpEaWUgUGxvbWFyYmVpdAoKRGllIFBsb21hcmJlaXQgZGllbnQgZGVyIEF1c251dHp1bmcgZGVyIEFyYmVpdHNrcmFmdCBkZXMgUGxvbXMuIERpZSBQbG9tcwpzaW5kIFZlcndhbmR0ZSBkZXIgR25vbXMsIHdvaG5lbiBqZWRvY2ggbmljaHQgaW0gV2FsZCwgc29uZGVybiBpbiBkZXIKU3RhZHQuIERvcnQgYmV2b3J6dWdlbiBzaWUgVW5pdmVyc2l0YWV0ZW4gdW5kIGFuZGVyZSBob2VoZXJlIEJpbGR1bmdzLQplaW5yaWNodHVuZ2VuLiBEaWUgUGxvbXMgZXJuYWVocmVuIHNpY2ggdm9uIERhdGVubXVlbGwgc293aWUgRHJ1Y2stIHVuZApTcGFubnVuZ3NhYmZhZWxsZW4uCk5vcm1hbGVyd2Vpc2Ugc2luZCBkaWUgUGxvbXMgZnJpZWRsaWNoLiBBZWx0ZXJlIEV4ZW1wbGFyZSwgZGllIHNpY2ggc2Nob24KbGFlbmdlcmUgWmVpdCBhbiBVbml2ZXJzaXRhZXRlbiBhdWZoYWx0ZW4sIG5laWdlbiB6dSBpbnN0YWJpbGVtIFZlcmhhbHRlbi4KRGllc2UgbmFnZW4gZGFubiBLYWJlbCBhbiB1bmQgYnJpbmdlbiBSZWNobmVyIHp1bSBBYnN0dXJ6LCBpbmRlbSBzaWUKVGlzY2hlIHVtd2VyZmVuLCBhdWYgZGVuZW4gZGllc2Ugc3RlaGVuLiBJbiBFeHRyZW1mYWVsbGVuIGthbm4gZXMgZGF6dQprb21tZW4sIGRhc3Mgc2llIGFsbGUgV29lcnRlciBhdXMgZGVuIEhhbmRidWVjaGVybiBhdXNzY2huZWlkZW4gdW5kIGluCmFscGhhYmV0aXNjaGVyIFJlaWhlbmZvbGdlIHdpZWRlciBlaW5rbGViZW4uIEdsdWVja2xpY2hlcndlaXNlIHdpcmt0IHNpY2gKZGllcyBhYmVyIGluIGRlbiBtZWlzdGVuIEZhZWxsZW4gbmljaHQgYXVmIGRpZSBWZXJzdGFlbmRsaWNoa2VpdCBkZXIKSGFuZGJ1ZWNoZXIgYXVzLgpEaWUgUGxvbXMgZ2Vob2VyZW4genUgZGVuIGdlZmFlaHJkZXRlbiBBcnRlbi4gRHVyY2ggZGVuIEhvY2hzY2h1bGFiYmF1CmlzdCBpaHJlIFphaGwgaW4gZGVuIGxldHp0ZW4gSmFocmVuIG1lcmtsaWNoIHp1cnVlY2tnZWdhbmdlbi4gQmVzb25kZXJzCm5hY2h0ZWlsaWcgd2lya3Qgc2ljaCBkYWJlaSBpaHJlIFJlY2h0c2NocmVpYnNjaHdhZWNoZSBhdXMuIFNvIHNwcmVjaGVuCmRpZSBQbG9tcyBncnVuZHNhZXR6bGljaCB2b24gIkRpZSBQbG9tLVRoZW1hIiBzdGF0dCAiRGFzIFBsb20tVGhlbWEiIG9kZXIKdm9uICJEaWUgUGxvbS1aZXVnaXMiIHN0YXR0ICJEYXMgUGxvbS1aZXVnbmlzIi4gWnVtIEdsdWVjayBmaW5kZW4gc2ljaApqZWRlcyBKYWhyIGVpbmlnZSBTdHVkZW50ZW4sIHdlbGNoZSBkaWUgUGxvbXMgdmVydGVpZGlnZW4gdW5kIGRhbWl0IHp1cgpBcnRlcmhhbHR1bmcgYmVpdHJhZ2VuLgpMYWVmdCBlaW5lbSBlaW4gUGxvbSB1ZWJlciBkZW4gV2VnLCBzbyBpc3QgZXIgc29mb3J0IHp1IGJlcmluZ2VuIHVuZCBkZW0KVGllcnNjaHV0enZlcmVpbiB6dSBtZWxkZW4uIEluIEF1c25haG1lZmFlbGxlbiBuaW1tdCBkaWVzZSBNZWxkdW5nZW4gYXVjaApkZXIgUmVrdG9yIGVudGdlZ2VuLgoKKHZlcm11dGxpY2ggdm9uIEMuIExlaWJuaXR6KQoKS2hpZGFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWx0c2FtIHNlbHRzYW0gKENhcmFkaHJhcywgMTguIEFwciAxOTk1LCAxMDo1NDo0Myk6Ck1laW4gVGVsbmV0IHNwaWVsdCBtaXIgbWFsIHdpZWRlciBTdHJlaWNoZSB1bmQgbG9lc2NodCBaZWlsZW4KcmF1cy4gOi0pIEdyYWRlIHBhc3NpZXJ0OgoKPiBMYWJ5cmludGguCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4gdW5kIHVudGVuLgpFaW5lIEZsYXNjaGUgVmllei4KRWluZSBGbGFzY2hlIFZpZXouCj4gcwpMYWJ5cmludGguCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiB3ZXN0ZW4gdW5kIG5vcmRlbi4KayB0cm9sRWluIExldWNodHRyb2xsLiAobmV0enRvdCkuCj4gbAoKKnN0YXVuKiBVbmQgd2FubiB3YWNodCBkZXIgTGV1Y2h0dHJvbGwgd2llZGVyIGF1Zj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGltIEludGVybmV0OiAoWWVuZGksIDE4LiBBcHIgMTk5NSwgMTQ6MDg6MjApOgoKQWJvdXQgNi03IHllYXJzIGFnbywgSSB3YXMgaW4gYSBwaGlsb3NvcGh5IGNsYXNzIGF0IHRoZSBVbml2ZXJzaXR5IG9mCldpc2NvbnNpbiwgTWFkaXNvbiAoZ29vZCBzY2llbmNlL2VuZ2luZWVyaW5nIHNjaG9vbCkgYW5kIHRoZSB0ZWFjaGluZwphc3Npc3RhbnQgd2FzIGV4cGxhaW5pbmcgRGVzY2FydGVzLiBIZSB3YXMgdHJ5aW5nIHRvIHNob3cgaG93IHRoaW5ncwpkb24ndCBhbHdheXMgaGFwcGVuIHRoZSB3YXkgd2UgdGhpbmsgdGhleSB3aWxsIGFuZCBleHBsYWluZWQgdGhhdCwKd2hpbGUgYSBwZW4gYWx3YXlzIGZhbGxzIHdoZW4geW91IGRyb3AgaXQgb24gRWFydGgsIGl0IHdvdWxkIGp1c3QgZmxvYXQKYXdheSBpZiB5b3UgbGV0IGdvIG9mIGl0IG9uIHRoZSBNb29uLgoKTXkgamF3IGRyb3BwZWQgYSBsaXR0bGUuIEkgYmx1cnRlZCAiV2hhdD8hIiBMb29raW5nIGFyb3VuZCB0aGUgcm9vbSwKSSBzYXcgdGhhdCBvbmx5IG15IGZyaWVuZCBNYXJrIGFuZCBvbmUgb3RoZXIgc3R1ZGVudCBsb29rZWQgY29uZnVzZWQgYnkKdGhlIFRBJ3Mgc3RhdGVtZW50LiAgVGhlIG90aGVyIDE3IHBlb3BsZSBqdXN0IGxvb2tlZCBhdCBtZSBsaWtlCiJXaGF0J3MgeW91ciBwcm9ibGVtPyIKCiJCdXQgYSBwZW4gd291bGQgZmFsbCBpZiB5b3UgZHJvcHBlZCBpdCBvbiB0aGUgTW9vbiwganVzdCBtb3JlCnNsb3dseS4iIEkgcHJvdGVzdGVkLgoKIk5vIGl0IHdvdWxkbid0LiIgdGhlIFRBIGV4cGxhaW5lZCBjYWxtbHksICJiZWNhdXNlIHlvdSdyZSB0b28gZmFyCmF3YXkgZnJvbSB0aGUgRWFydGgncyBncmF2aXR5LiIKClRoaW5rLiBUaGluay4gQWhhISAiWW91IHNhdyB0aGUgQVBPTExPIGFzdHJvbmF1dHMgd2Fsa2luZyBhcm91bmQgb24KdGhlIE1vb24sIGRpZG4ndCB5b3U/IiBJIGNvdW50ZXJlZCwgIndoeSBkaWRuJ3QgdGhleSBmbG9hdCBhd2F5PyIKIkJlY2F1c2UgdGhleSB3ZXJlIHdlYXJpbmcgaGVhdnkgYm9vdHMuIiBoZSByZXNwb25kZWQsIGFzIGlmIHRoaXMKbWFkZSBwZXJmZWN0IHNlbnNlIChyZW1lbWJlciwgdGhpcyBpcyBhIFBoaWxvc29waHkgVEEgd2hvJ3MgaGFkIHBsZW50eQpvZiBsb2dpYyBjbGFzc2VzKS4KCkJ5IHRoZW4gSSByZWFsaXplZCB0aGF0IHdlIHdlcmUgZWFjaCBsaXZpbmcgaW4gdG90YWxseSBkaWZmZXJlbnQKd29ybGRzLCBhbmQgZGlkIG5vdCBzcGVhayBlYWNoIG90aGVycyBsYW5ndWFnZSwgc28gSSBnYXZlIHVwLiBBcyB3ZQpsZWZ0IHRoZSByb29tLCBteSBmcmllbmQgTWFyayB3YXMgcmFnaW5nLiAiTXkgR29kISBIb3cgY2FuIGFsbCB0aG9zZQpwZW9wbGUgYmUgc28gc3R1cGlkPyIKCkkgdHJpZWQgdG8gYmUgdW5kZXJzdGFuZGluZy4gIk1hcmssIHRoZXkga25ldyB0aGlzIHN0dWZmIGF0IG9uZSB0aW1lLApidXQgaXQncyBub3QgcGFydCBvZiB0aGVpciBiYXNpYyB2aWV3IG9mIHRoZSB3b3JsZCwgc28gdGhleSd2ZQpmb3Jnb3R0ZW4gaXQuIE1vc3QgcGVvcGxlIGNvdWxkIHByb2JhYmx5IG1ha2UgdGhlIHNhbWUgbWlzdGFrZS4iIFRvCnByb3ZlIG15IHBvaW50LCB3ZSB3ZW50IGJhY2sgdG8gb3VyIGRvcm0gcm9vbSBhbmQgYmVnYW4gcmFuZG9tbHkKc2VsZWN0aW5nIG5hbWVzIGZyb20gdGhlIGNhbXB1cyBwaG9uZSBib29rLiBXZSBjYWxsZWQgYWJvdXQgMzAgcGVvcGxlCmFuZCBhc2tlZCBlYWNoIHRoaXMgcXVlc3Rpb246CgogSWYgeW91J3JlIHN0YW5kaW5nIG9uIHRoZSBNb29uIGhvbGRpbmcgYSBwZW4sIGFuZCB5b3UgbGV0IGdvLCB3aWxsIGl0CiBhKSBmbG9hdCBhd2F5LCBiKSBmbG9hdCB3aGVyZSBpdCBpcywgb3IgYykgZmFsbCB0byB0aGUgZ3JvdW5kPwoKQWJvdXQgNDcgcGVyY2VudCBnb3QgdGhpcyBxdWVzdGlvbiBjb3JyZWN0LiBPZiB0aGUgb25lcyB3aG8gZ290IGl0Cndyb25nLCB3ZSBhc2tlZCB0aGUgb2J2aW91cyBmb2xsb3ctdXAgcXVlc3Rpb246CgogWW91J3ZlIHNlZW4gZmlsbXMgb2YgdGhlIEFQT0xMTyBhc3Ryb25hdXRzIHdhbGtpbmcgYXJvdW5kIG9uIHRoZSBNb29uLAogd2h5IGRpZG4ndCB0aGV5IGZhbGwgb2ZmPwoKQWJvdXQgMjAgcGVyY2VudCBvZiB0aGUgcGVvcGxlIGNoYW5nZWQgdGhlaXIgYW5zd2VyIHRvIHRoZSBmaXJzdApxdWVzdGlvbiB3aGVuIHRoZXkgaGVhcmQgdGhpcyBvbmUhIEJ1dCB0aGUgbW9zdCBhbWF6aW5nIHBhcnQgd2FzIHRoYXQKYWJvdXQgaGFsZiBvZiB0aGVtIGNvbmZpZGVudGx5IGFuc3dlcmVkLCAiQmVjYXVzZSB0aGV5IHdlcmUgd2VhcmluZwpoZWF2eSBib290cy4iCgpJIHNheSwgc2NpZW5jZSBlZHVjYXRpb24gbXVzdCBiZSBhdCBhbiBhbGwgdGltZSBwZWFrISEhCgoKCltnZWZ1bmRlbiBpbiByZWMub3JnLm1lbnNhXQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGF1Y2ggaW0gSW50ZXJuZXQ6IChZZW5kaSwgMTguIEFwciAxOTk1LCAxNDowOTozNik6Cgo+VGhlIG1vdmluZyBmaW5nZXIgd3JpdGV0aCBvbiwKPkFuZCBoYXZpbmcgd3JpdCwgaXQgZmFsbGV0aCBkb3duCj5EcnVuayB3aXRoIGl0cyBvd24gZ2xvcnkuCj5UaGUgcmVzdCBvZiB0aGUgdGFsZSdzIGxlc3MgaGFwcHkgdGhvdWdoCj5UaGUgdGhpZ2gsIHRoZSBicmVhc3QgYW5kIG9uZSBiaWcgdG9lCj5XZXJlIGVhdGVuLS12ZXJ5IGdvcnkKPkJ5IEguIEhvdXNlaG9sZGVyIChvd25lZCBhIGd1bikuCj5JbiB0aGUgbmlnaHQgaGUgY2hhbmNlZCB1cG9uCj5UaGVpciBvd25lci4gIFNlY29uZC1zdG9yeQo+QnVyZ2xhciB3aXRoIGEgbGlsdGluZyBsaXRocC4KPkguIHNob3Qgb25jZSBhbmQgZGlkbid0IG15dGguCj5PciBldmVuIGFsbGVnb3J5LgoKd3JpdHRlbiBieSBTdGVwaGFuaWUgU21pbGF5CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIHZlcnN0ZWggbnVyIFNwYW5pc2NoLi4uIChZZW5kaSwgMTguIEFwciAxOTk1LCAxNDoyODo0OSk6CgouLi4gb2RlciB3YXIgZGFzIEFyYWJpc2NoPwoKIkFzbW9kaXMgZnJhZ3QgRnVuYWtvc2hpIG5hY2ggVWNoaS1hc2hpYm8ta2FrZS11a2UuIgoKSmFqYWFhYWEsIHNjaG9uIGtsYXIuLi4gdW5kIGRhcyBCYXNpbGlrdW0gbmljaHQgdmVyZ2Vzc2VuIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnJlOmtoaWRhciAoRWxyaWMsIDE4LiBBcHIgMTk5NSwgMTY6MDU6NDYpOgpHcmlucy4uLi4uCgpJbiBNdWVuc3RlciBnaWJ0IGVzIERBUyBQbG9tLgpQbGVudW0gTGlua3MgT3JpZW50aWVydGVyIE1hdGhlbWF0aWtlciAoSW5uZW4/IHdlaXNzIG5pY2gpIC4KRWxyaWMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCwgaW0gSW50ZXJuZXQ6IChUaHJvaW4sIDE4LiBBcHIgMTk5NSwgMTY6MTY6MDIpOgojISBybj1ZZW5kaSBydD03OTgyMDY5MDAKVGphLCB3YXMgZXJ3YXJ0ZXQgbWFuIHNjaG9uIHZvbiBlaW5lbSBMYW5kLCB3ZWxjaGVzIGRhcwpTeW5jaHJvbnNjaHdpbW1lbiBlcmZ1bmRlbiBoYXQhIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbiBkZXIgR2VuZXNpcy1Ib2VobGUgKEZ5dCwgMTguIEFwciAxOTk1LCAyMzoyOTo0OSk6CkR1IGxhZXVmc3QgZ2VnZW4gZGllIGdlc2NobG9zc2VuZSBUdWVyIHVuZCBob2xzdCBEaXIgZWluZSBkaWNrZSBCZXVsZS4KPiBEZXIgV2FlY2h0ZXIgc2FndDogRGFzIGdlc2NoaWVodCBEaXIgcmVjaHQsIEZ5dCEKRGVyIFdhZWNodGVyIGdyaW5zdCBGeXQgc2NoYWRlbmZyb2ggYW4uCkR1IG9lZmZuZXN0IGRpZSBUdWVyLgpEdSBsYWV1ZnN0IGdlZ2VuIGRpZSBnZXNjaGxvc3NlbmUgVHVlciB1bmQgaG9sc3QgRGlyIGVpbmUgZGlja2UgQmV1bGUuCj4gRGVyIFdhZWNodGVyIGxhY2h0IEZ5dCBhdXMuCkRlciBXYWVjaHRlciBncmluc3QgRnl0IHNjaGFkZW5mcm9oIGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbiBIYXVjaCB2b24gR2VsYi4uLiAoTGksIDE5LiBBcHIgMTk5NSwgMDk6MTk6MzgpOgojISBybj1WZXJ3aXJydW5nIHJ0PTc5ODE0MDgzNwoqZ3JpbnMqCgpMaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG9wcGxhLi4uIChZZW5kaSwgMTkuIEFwciAxOTk1LCAxNDowMzoyNSk6Cgo+IGlkZWUKV2FzIGZ1ZXIgZWluZSBJZGVlIGhhc3QgRHUgZGVubj8KXV5DCklkZWUgYWJnZWJyb2NoZW4uCgpUamEsIHNjaGFkZSBlaWdlbnRsaWNoLi4uIGRhIHdhciBkb2NoIG5vY2ggd2FzLi4uIEFsbGVzIHdlZy4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZlaGxlciAoVnJhaSwgMTkuIEFwciAxOTk1LCAxOTo0ODo0NCk6CldhZWhyZW5kIGRlciBLb3JyZWt0dXIgZWluZXIgRnVua3Rpb25lbnRoZW9yaWUtS2xhdXN1cjoKCkVpbiBVZWJ1bmdzZ3J1cHBlbmxlaXRlciBiZWkgZWluZSBBdWZnYWJlIHp1cgpLbGFzc2lmaWthdGlvbiB2b24gU2luZ3VsYXJpdGFldGVuOgpEaWVzIGlzdCBhYmVyIGtlaW4gaGViYmFyZXIgRmVobGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYmV0cmlmZnQgR3JpbW1ib3JuIGRlciBBdGhlaXN0LiBWZXJsYWVzc3Qgc2ljaCBkb2NoIGxpZWJlciBhdWYgc2VpbmUgTWF0aGVzY2hlaW5lLi4uIER1IG1laW5zdCB3b2hsIG1hdGhlc2NoaWVuZS4uLiAoZGFzIGRpbmcgbWl0IGRlbiBLdWdlbG4uLi4gKFJvZXN0aSwgMjAuIEFwciAxOTk1LCAxMjowNTo1Mik6CjotKQpSb2VzdGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldPVyEhISBLYXJhdGUgcnVseiEgWW93ISAoWWVuZGksIDIwLiBBcHIgMTk5NSwgMTY6NTg6NTUpOgoKPiB0dCBvcmsKT2sKPiBEdSBoYXN0IGpldHp0IDEyMiBMZWJlbnNwdW5rdGUgdW5kIDkxIE1hZ2llcHVua3RlLgogIER1IGdyZWlmc3QgZGVuIE9yayBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIENob2t1LXp1a2kgYW4uCiAgRHUgdHJpZmZzdCBkZW4gT3JrLgogIERlciBPcmsgZ3JlaWZ0IERpY2ggbWl0IGRlbSBLcnVtbXNjaHdlcnQgYW4uCiAgRHUgdmVyc3VjaHN0LCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gVWNoaS11ZGUtdWtlIGFienV3ZWhyZW4uCiAgRGVyIE9yayBrcmF0enQgRGljaC4KRHUgaGFzdCBqZXR6dCAxMTkgTGViZW5zcHVua3RlIHVuZCA4NSBNYWdpZXB1bmt0ZS4KICBEdSBncmVpZnN0IGRlbiBPcmsgbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBDaG9rdS16dWtpIGFuLgogIER1IHRyaWZmc3QgZGVuIE9yay4KICBEZXIgT3JrIGdyZWlmdCBEaWNoIG1pdCBkZW0gS3J1bW1zY2h3ZXJ0IGFuLgogIER1IHdlaHJzdCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gVWNoaS11ZGUtdWtlIGFiLgogIERlciBPcmsgdmVyZmVobHQgRGljaC4KW0FsbGdlbWVpbjpEV10gSW4gZnVlbmYgTWludXRlbiB3ZXJkZW4gYXVmIGRlciBFYmVuZSBOYWNocmljaHRlbiBkaWUgbmV1ZXN0ZW4KW0FsbGdlbWVpbjpEV10gTWVsZHVuZ2VuIGdlYnJhY2h0IQogIER1IGdyZWlmc3QgZGVuIE9yayBtaXQgZWluZW0gZ2VsdW5nZW5lbiBDaG9rdS16dWtpIGFuLgogIER1IHRyaWZmc3QgZGVuIE9yay4KICBEZXIgT3JrIGdyZWlmdCBEaWNoIG1pdCBkZW0gS3J1bW1zY2h3ZXJ0IGFuLgogIERlciBPcmsgdmVyZmVobHQgRGljaC4KICBEdSBncmVpZnN0IGRlbiBPcmsgbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBDaG9rdS16dWtpIGFuLgogIER1IHRyaWZmc3QgZGVuIE9yay4KRGVyIE9yayBmYWVsbHQgdG90IHp1IEJvZGVuLgoKCgpOaWNodCBzY2hsZWNodCwgd2FzPyBFaW4gZWluemlnZXIgZ2VsdW5nZW5lciBTY2hsYWcsIHVuZCBfemFja18hIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbSBMZWhyZXJ6aW1tZXIgKFBsYXBwZXJtYXVsLCAyMC4gQXByIDE5OTUsIDIwOjEzOjU3KToKRHUgaGFzdCBqZXR6dCAxMDIgTGViZW5zcHVua3RlIHVuZCA5MyBNYWdpZXB1bmt0ZS4KRGVyIExlaHJlciBmYWVuZ3QgZGVuIEJ1bWVyYW5nIGFiLgpEdSBoYXN0IGRlbiBCdW1lcmFuZyBkb2NoIHNjaG9uLgo+IERlciBMZWhyZXIgd2lyZnQgZGVuIEJ1bWVyYW5nLgpsCkRlciBCdW1lcmFuZyB0cmlmZnQgZGVuIExlaHJlciBoYXJ0IGFtIEtvcGYuCkR1IGZhZW5nc3QgZGVuIEJ1bWVyYW5nIGdlc2NoaWNrdC4KRHUgaGFzdCBqZXR6dCAxMDMgTGViZW5zcHVua3RlIHVuZCA5NCBNYWdpZXB1bmt0ZS4KICBEZXIgTGVocmVyIGdyZWlmdCBkZW4gTGVocmVyIG1pdCBlaW5lbSBOYWNodHNhZWJlbCBhbi4KICBEZXIgTGVocmVyIHZlcmZlaGx0IGRlbiBMZWhyZXIuCiAgRGVyIExlaHJlciBncmVpZnQgZGVuIExlaHJlciBtaXQgZWluZW0gTmFjaHRzYWViZWwgYW4uCiAgRGVyIExlaHJlciB0cmlmZnQgZGVuIExlaHJlci4KICBEZXIgTGVocmVyIGdyZWlmdCBkZW4gTGVocmVyIG1pdCBlaW5lbSBOYWNodHNhZWJlbCBhbi4KICBEZXIgTGVocmVyIGtyYXR6dCBkZW4gTGVocmVyLgogdXN3Li4uICAgICAgOi0pCgoJUGxhcHBlcm1hdWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoLCBpbSBJbnRlcm5ldDogKFF1ZW5naXN0dSwgMjAuIEFwciAxOTk1LCAyMTowMzo1Nik6CiMhIHJuPVllbmRpIHJ0PTc5ODIwNjkwMApLbGFzc2UgQXJ0aWtlbCwgZGVuIER1IGRhIGdlZnVuZGVuIGhhc3QsIFllbmRpLgpEYXMgYmVzdGFldGlndCBtYWwgd2llZGVyIG1laW5lIExpZWJsaW5nc3ZvcnVydGVpbGUgdWViZXIgZGFzIGFtZXJpa2FuaXNjaGUKQmlsZHVuZ3N3ZXNlbi4gSWNoIGdsYXViZSBpbW1lciBub2NoIGZlc3QgZGFyYW4sIGRhc3MgbWluZGVzdGVucyA1MCUgZGVyCkFtZXJpa2FuZXIgZGVua2VuICJQYXJpcyBpcyB0aGUgY2FwaXRhbCBvZiBSb21lIi4gOy0pKSkpCgpUc2NodWVzc2luZywgUXVlbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhlaGUgKEJhbWJ1bGtvLCAyMC4gQXByIDE5OTUsIDIxOjI3OjUxKToKCjxFaW5sb2dnZW5kZXIgVGVpbG5laG1lcj4gW0JpZWxlZmVsZF0KPEVpbmxvZ2dlbmRlciBUZWlsbmVobWVyPiBbS29lbG5dCjxFaW5sb2dnZW5kZXIgVGVpbG5laG1lcj4gW0thaXNlcnNsYXV0ZXJuXQo8RWlubG9nZ2VuZGVyIFRlaWxuZWhtZXI+IFtCb25uXQo8RWlubG9nZ2VuZGVyIFRlaWxuZWhtZXI+IFtHaWVzc2VuXQpTcGVlY2ggZGVyIFphdWJlcmxlaHJsaW5nIC0gWndlcmcgLSBbRHJlc2Rlbl0KVGVybWVsYXRvciBkZXIgUHJvcGhldCAtIEVsZiAtIFs/XQpIeWRyYXRvZXRlciBCYW1idWxrbyBkYXMgV2Fzc2Vyd2VzZW4gbGVybnQgS2FyYXRlIC0gTWVuc2NoIC0gW0tvZWxuXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWxpY2ggaW0gTGVocmVyemltbWVyIChHcmltbWJvcm4sIDIxLiBBcHIgMTk5NSwgMTQ6Mjc6MTIpOgojISBybj1QbGFwcGVybWF1bCBydD03OTg0MDE2MzcKCk5hamEsIGljaCBiaW4gTWFnaWVyLCBtaWNoIGdlaHRzIGphIG5pY2h0cyBtZWhyIGFuLi4uCkFiZXIsIHdlbm4gaWNoIG5vY2ggU2VoZXIgd2FlcmUgd3VlcmRlIGljaCBEaWNoIHZpZXJ0ZWlsZW4gZnVlciBkaWUKVmVyb2VmZmVudGxpY2h1bmcgc3BpZWxlcmZyZXVuZGxpY2hlciBidWdzLgpEYXNzIGRpZXNlciBuaWNodCB1bmJla2FubnQgd2FyIHZvcmhlciBpc3QgZGFubiBzZWt1bmRhZXIuLi4KCk1laW4gVGlwOiBTb2xjaGUgSW5mb3MgYW0gYmVzdGVuIHBlciBtYWlsIGFuIGRlbiB6dXN0YWVuZGlnZW4gV2FmZmVuLUVNLiBEYW5uCmJla29tbXQgd2VuaWdzdGVucyBuaWNodCBqZWRlciBtaXQsIHdlciBnZXBldHp0IGhhdC4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LiBIYXQgaW1tZXIgbGlmZSwgb2huZSBtYWlsIGdlcGV0enQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhvcm1vbmRyaW5rcyAoR3d5bmRvbiwgMjEuIEFwciAxOTk1LCAxNToyODowNSk6CgpIYWxsbyBJaHIuLi4KCkltbWVyIHdpZWRlciBHaWJ0IGVzIGRlbiBob21vcGhpbGVuIFd1bnNjaCB6dXIgRWhlLi4uICBVbmQgZGFzIFByb2JsZW0gZGFzcwpkaWUgSG9jaHplaXRzc2VxdWVueiBkYXMgc28gbmljaHQgenVsYWVzc3QuCk1laW4gVm9yc2NobGFnOiBTZWhyIHRldXJlIEhvcm1vbmRyaW5rcywgekIgaW4gVmFsZ2Vzc2Egb2RlciBlaW5lciBlaW56ZWxuZW4KS25laXBlLCBvZGVyIGFscyBaYXViZXJ0cmFuayBtaXQgYmVzb25kZXJlbiBadXRhdGVuICh6QiBXYWx0cmFuIHZvbSBOb3JkcG9sKQp3aWUgQ2hhcmxpZXMgU2NobGFmdHJ1bmsuIERhbWl0IGthbm4gbWFuIChhdWNoIG9obmUgTWFnaWVyKSBkYW5uIGRhcwpHZXNjaGxlY2h0IGFlbmRlcm4sIHVuZCBnZXRyZW5udGdlc2NobGVjaHRsaWNoIGhlaXJhdGVuLiBEaWUgV2lya3VuZyBrb2VubnRlCmR1cmNoIGVpbmVuIHdlaXRlcmVuIEhvcm1vbnRydW5rIG9kZXIgZHVyY2ggU2NoZWlkdW5nIGF1Znp1aGViZW4gc2Vpbi4gT2RlcgpuYWNoIDEwIE11ZHRhZ2VuLi4uCgpEYSBtYW5jaGUgZGFzIHdhaHJzY2hlaW5saWNoIGZ1ZXIgZWluZW4gU2NobWFycm4gaGFsdGVuLCBoYWIgaWNoIGVzIGhpZXIgcmVpbgpnZXNjaHJpZWJlbi4uLi4KCkdydWVzc2UuLi4gZ2V6LiBHd3luZG9uICh1bnZlcmhlaXJhdGV0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhvcm1vbmRyaW5rcyAoR3JpbW1ib3JuLCAyMS4gQXByIDE5OTUsIDE3OjQ5OjU5KToKIyEgcm49R3d5bmRvbiBydD03OTg0NzA4ODUKCkljaCBzZWhlIE5JQ0hUIGVpbiwgZGFzcyBnbGVpY2hnZXNjaGxlY2h0bGljaGUgRWhlbiB0ZXVyZXIgb2RlciBpcmdlbmR3aWUKa29tcGxpemllcnRlciBzZWluIHNvbGxlbiBhbHMgIm5vcm1hbGUiLiBEYSBzb2xsIHNpY2ggZW5kbGljaCB3ZXIgYXVmIGRlbgpIb3NlbmJvZGVuIHNldHplbiB1bmQgZGllIHZlcm11dGxpY2ggZHJpbnN0ZWNrZW5kZSBHZXNjaGxlY2h0c2FiZnJhZ2UKYXVzYmF1ZW4uIEthbm4gZG9jaCBzb29vIHNjaHdlciBuaWNodCBzZWluLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJTUyAoU2VwcGwsIDIyLiBBcHIgMTk5NSwgMTI6MzY6MDIpOgpbVmVybGVndCB2b24gd2l0emUsIFNlcHBsLCAyMi4gQXByIDE5OTUsIDEyOjMzOjM5XToKPiBEdSB0ZWlsc3QgRWxlc3NhciBtaXQ6IHdpbGxzdCBkdSBlaW4gQlNTICsgUm9iZSA/Cj4gRHUgdGVpbHN0IER5aW5nIG1pdDogd2lsbHN0IGR1IGVpbiBCU1MgKyBSb2JlID8KPiBEdSB0ZWlsc3QgR3JpemFiZWxsYSBtaXQ6IHdpbGxzdCBkdSBlaW4gQlNTICsgUm9iZSA/Cj4gRHUgdGVpbHN0IFNpcXVlIG1pdDogd2lsbHN0IGR1IGVpbiBCU1MgKyBSb2JlID8KPiBEdSB0ZWlsc3QgRGhvamFrdCBtaXQ6IHdpbGxzdCBkdSBlaW4gQlNTICsgUm9iZSA/Cj4gRHUgdGVpbHN0IExlZnR5IG1pdDogd2lsbHN0IGR1IGVpbiBCU1MgKyBSb2JlID8KPiBEdSB0ZWlsc3QgQnJpdCBtaXQ6IHdpbGxzdCBkdSBlaW4gQlNTICsgUm9iZSA/Cj4gU2VwcGwgdGVpbHQgRGlyIG1pdDogd2lsbHN0IGR1IGVpbiBCU1MgKyBSb2JlID8KRHUgdGVpbHN0IFNlcHBsIG1pdDogd2lsbHN0IGR1IGVpbiBCU1MgKyBSb2JlID8KPiBEdSB0ZWlsc3QgSmFuZXMgbWl0OiB3aWxsc3QgZHUgZWluIEJTUyArIFJvYmUgPwo+IER1IHRlaWxzdCBKYWYgbWl0OiB3aWxsc3QgZHUgZWluIEJTUyArIFJvYmUgPwo+IER1IHRlaWxzdCBUb3JpYW4gbWl0OiB3aWxsc3QgZHUgZWluIEJTUyArIFJvYmUgPwo+IER1IHRlaWxzdCBBbGJvaW4gbWl0OiB3aWxsc3QgZHUgZWluIEJTUyArIFJvYmUgPwpBbGJvaW4gaXN0IGdlcmFkZSBuaWNodCBkYTogTGllYmUgaXN0IHN0YWVya2VyIGFscyBkZXIgVG9kISEhCj4gRHUgdGVpbHN0IEF1Z3JhIG1pdDogd2lsbHN0IGR1IGVpbiBCU1MgKyBSb2JlID8KPiBEdSB0ZWlsc3QgWmFwaG9kIG1pdDogd2lsbHN0IGR1IGVpbiBCU1MgKyBSb2JlID8KPiBEdSB0ZWlsc3QgQXJkYW5hIG1pdDogd2lsbHN0IGR1IGVpbiBCU1MgKyBSb2JlID8KPiBEdSB0ZWlsc3QgRnl0IG1pdDogd2lsbHN0IGR1IGVpbiBCU1MgKyBSb2JlID8KPiBEdSB0ZWlsc3QgQnJ1bW1lbCBtaXQ6IHdpbGxzdCBkdSBlaW4gQlNTICsgUm9iZSA/Cj4gRHUgdGVpbHN0IEJyYXQgbWl0OiB3aWxsc3QgZHUgZWluIEJTUyArIFJvYmUgPwo+IER1IHRlaWxzdCBLaGlkYXIgbWl0OiB3aWxsc3QgZHUgZWluIEJTUyArIFJvYmUgPwo+IER1IHRlaWxzdCBXaWxsb3cgbWl0OiB3aWxsc3QgZHUgZWluIEJTUyArIFJvYmUgPwo+IER1IHRlaWxzdCBUb3NzIG1pdDogd2lsbHN0IGR1IGVpbiBCU1MgKyBSb2JlID8KPiBEdSB0ZWlsc3QgVG9tbXkgbWl0OiB3aWxsc3QgZHUgZWluIEJTUyArIFJvYmUgPwo+IEtlaW4gc29sY2hlciBTcGllbGVyIQo+IER1IHRlaWxzdCBCbG9vZGdvcmUgbWl0OiB3aWxsc3QgZHUgZWluIEJTUyArIFJvYmUgPwo+IER1IHRlaWxzdCBSdWRpcmF0dGVyIG1pdDogd2lsbHN0IGR1IGVpbiBCU1MgKyBSb2JlID8KPiBLZWluIHNvbGNoZXIgU3BpZWxlciEKPiBEdSB0ZWlsc3QgUnluZSBtaXQ6IHdpbGxzdCBkdSBlaW4gQlNTICsgUm9iZSA/Cj4gRHUgdGVpbHN0IFRyeWZhbiBtaXQ6IHdpbGxzdCBkdSBlaW4gQlNTICsgUm9iZSA/Cj4gRHUgdGVpbHN0IFF1aW5vbGluIG1pdDogd2lsbHN0IGR1IGVpbiBCU1MgKyBSb2JlID8KPiBEdSB0ZWlsc3QgU2NobmljayBtaXQ6IHdpbGxzdCBkdSBlaW4gQlNTICsgUm9iZSA/Cj4gRHUgdGVpbHN0IEJlcnRyYW0gbWl0OiB3aWxsc3QgZHUgZWluIEJTUyArIFJvYmUgPwo+IFNlcHBsIHRlaWx0IERpciBtaXQ6IFRvIGFsbCBGaW5pc2hlZCEKRHUgdGVpbHN0IFNlcHBsIG1pdDogVG8gYWxsIEZpbmlzaGVkIQo+IFtNb2VyZGVyOkdlaXN0IGVpbmVzIE9ya3NdIFRvbW15PyBJY2ggYmluIGRhbm4gamV0enQgd2VnLgpCbG9vZGdvcmUgdGVpbHQgRGlyIG1pdDogd2FzIHNvbGwgaWNoIGRhbWl0PwpKYW5lcyB0ZWlsdCBEaXIgbWl0OiBLbGFyLCBpY2ggbmVobWUgYWxsZXMhCkJydW1tZWwgdGVpbHQgRGlyIG1pdDogamVwClRyeWZhbiB0ZWlsdCBEaXIgbWl0OiBrbGFyClphcGhvZCB0ZWlsdCBEaXIgbWl0OiBhYmVyIGdlcm5lIGltbWVyIQpSdWRpcmF0dGVyIHRlaWx0IERpciBtaXQ6IHNlcHBsLCBrZW5uIGljaCBkaWNoIGVpZ2VudGxpY2g/IGtsYXIgd2lsbCBpY2gKWmFwaG9kIHRlaWx0IERpciBtaXQ6IHdvIGJpc3QgZHUgZGVubj8KRnl0IHRlaWx0IERpciBtaXQ6IG5laW4gZGFua2UuLi4ga2FyYXRla2EgYnJhdWNoZW4gc293YXMgbmljaHQgKnNjaG5pZWYqCkJydW1tZWwgdGVpbHQgRGlyIG1pdDogd28gYmlzdCBkdT8KQWxib2luIHRlaWx0IERpciBtaXQ6IG5laW4gRGFua2UgLW11c3Mgd2VnCkF1Z3JhIHRlaWx0IERpciBtaXQ6IG5laW4gZGFua2UuLi56dW0gcXVlc3RlbiBicmF1Y2ggaWNoIGRhcyBuaWNodCEKQWxib2luIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KQmVydHJhbSB0ZWlsdCBEaXIgbWl0OiBEYWZ1ZXIgaGFiZSBpY2ggbnVyIHdlbmlnIFZlcndlbmR1bmcgOykKQnJpdCB0ZWlsdCBEaXIgbWl0OiBobW0sIGljaCB3ZWlzcyBuaWNodCwgb2IgaWNoIGRhc3MgY2h3ZXJ0IHp1ZWNrZW4ga2Fubi4uLi4KQnJpdCB0ZWlsdCBEaXIgbWl0OiBpY2ggaGFiIGdlc2NoaWNrIDExCltNb2VyZGVyOkdlaXN0IGVpbmVzIEVpc3JpZXNlbl0gV2FydW0gaGF0IG1pciBuaWVtYW5kIGdlZ2VuIGVpbiBGcm9zY2gKW01vZXJkZXI6R2Vpc3QgZWluZXMgRWlzcmllc2VuXSBnZWhvbGZlbj8KVHJ5ZmFuIHRlaWx0IERpciBtaXQ6ICpncmlucyoKPiBTaXF1ZSB0ZWlsdCBEaXIgbWl0OiBNb2luIG1vaW4hCkJyYXQgdGVpbHQgRGlyIG1pdDogV2VubiBkdSBkZW4gS3JhbSB1ZWJyaWcgaGFzdCBnZXJuZSA6KQpHcml6YWJlbGxhIHRlaWx0IERpciBtaXQ6IGphITspa2FubnN0IGR1IG1pciB2aWVsbGVpY2h0IGF1Y2ggaGllciByYXVzCkdyaXphYmVsbGEgdGVpbHQgRGlyIG1pdDogaGVsZmVuPwpBcmRhbmEgdGVpbHQgRGlyIG1pdDogamVwIQpbS2FyYXRlOlJ5bmVdIHllYWghIG5hY2ggZWlubWFsIHRhbmtlbjogZGVyIGVpc2JhZXIgaXN0IHNjaG9uIGV0d2FzCltLYXJhdGU6UnluZV0gZ2VzY2h3YWVjaHQhClNjaG5pY2sgdGVpbHQgRGlyIG1pdDogPz8KW0thcmF0ZTpCbG9vZGdvcmVdIEdSQVRTIDopClphcGhvZCB0ZWlsdCBEaXIgbWl0OiBoZSwgd28gYmlzdCBkdSBkZW5uPyBpY2ggYmluIHNlaHIgZHJhbiBpbnRlcmVzc2llcnQhClRyeWZhbiB0ZWlsdCBEaXIgbWl0OiBpY2ggYmluIG1hZ2llciwgZWlnZW50bGljaCBicmF1Y2ggaWNoIGRhcyBuaWNodCA7KQpEdSBrbnVkZGVsc3QgVHJ5ZmFuLgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcmF1ZW5xdW90ZSAoQmxvb2R5aGFycnksIDIyLiBBcHIgMTk5NSwgMjE6NTA6MzkpOgoKS2FubiBkYXMgZWluZSBBdXN3aXJrdW5nIGRlciBNYXNzbmFobWVuIGZ1ZXIgZWluZSBGcmF1ZW5xdW90ZSBzZWluPyAgOi0pCgpIZXV0ZSBwYXNzaWVydCBiZWltIEJldHJldGVuIGRlcyBEdW5jdG9uLVN5c3RlbXM6CgpEaWUgUHVua3RlIGhhYmVuIHNpY2ggenUgendlaSBBYnp3ZWlndW5nZW4gYXVzIGRlbSBHYW5nIGVudHdpY2tlbHQuCkRvcnQgc3BhbHRldCBzaWNoIGRlciBTdHJvbSB2b24gTWF1bHd1ZXJmZW4uIERpZSBtYWVubmxpY2hlbgpzdHJvZW1lbiBhbGxlIG5hY2ggbGlua3MgdW5kIGRpZSB3ZWlibGljaGVuIG5hY2ggcmVjaHRzLiBHbGVpY2gKaGFzdCBEdSBkYXMgRW5kZSBkZXMgR2FuZ2VzIGVycmVpY2h0LiBBdWYgd2VsY2hlIFNlaXRlIHdpcnN0IER1CndvaGwgZ2V6b2dlbj8hIQpEdSB0cmVpYnN0IG51biBtaXQgZWluZXIgV2FocnNjaGVpbmxpY2hrZWl0IHZvbgo4OC45JSBuYWNoIGxpbmtzIHVuZCAxMS4xJSBuYWNoIHJlY2h0cy4KPiBFaW4gYnVudGVyIEZhcmJlbnN0cnVkZWwgZXJmYXNzdCBEaWNoIHVuZCBzY2hsZXVkZXJ0IERpY2ggYW4gZWluZW4KYW5kZXJlbiBPcnQuCkR1IHdhY2hzdCBhdXMgRGVpbmVtIFRyYXVtIGF1Ziwgb2RlciBhdWNoIG5pY2h0LgpBbGxlcyBzY2hlaW50IGtsYXIuIEFiZXIgcGxvZXR6bGljaCB3aXJkIGRpciBiZXd1c3N0LCBkYXNzIER1CmRpZSBHZXN0YWx0IGVpbmVzIFdFSUJMSUNIRU4gTUFVTFdVUkZFUyBhbmdlbm9tbWVuIGhhc3QhCgoKY2lhbywgQmxvb2R5IEhhcnJ5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgaXN0IGVjaHRlcyBLYXJhdGUhIChIYXJkaWwsIDI1LiBBcHIgMTk5NSwgMTY6MzI6MzEpOgpEd2lnaHQgZ3JlaWZ0IGRlbiBPcmsgbWl0IGVpbmVtIGdlbHVuZ2VuZW4gQ2hva3UtenVraSBhbi4KICBEd2lnaHQgdmVyZmVobHQgZGVuIE9yay4KICBEZXIgT3JrIGdyZWlmdCBEd2lnaHQgbWl0IGVpbmVyIE9ya2tldWxlIGFuLgogIERlciBPcmsgdmVyZmVobHQgRHdpZ2h0LgogIER3aWdodCBncmVpZnQgZGVuIE9yayBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIENob2t1LXp1a2kgYW4uCiAgRHdpZ2h0IHRyaWZmdCBkZW4gT3JrLgoKVW5nZXNjaG5pdHRlbiwgbGl2ZSBtaXRlcmxlYnQgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBpbiBSYXVtIDYwMS4uLiAoWWVuZGksIDI1LiBBcHIgMTk5NSwgMTY6MzY6MzgpOgoKIlVOSVggaXN0IGVjaHQgYmVudXR6ZXJmcmV1bmRsaWNoLi4uCiBFcyBzdWNodCBzaWNoIHNlaW5lIEZyZXVuZGUgbnVyIF9zZWhyXyBzb3JnZmFlbHRpZyBhdXMuIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoLCBpbiBSYXVtIDYwMS4uLiAoQWNyaW1vbiwgMjUuIEFwciAxOTk1LCAxOTozMjo0Nik6CiMhIHJuPVllbmRpIHJ0PTc5ODgyMDU5OAo+ICJVTklYIGlzdCBlY2h0IGJlbnV0emVyZnJldW5kbGljaC4uLgo+ICBFcyBzdWNodCBzaWNoIHNlaW5lIEZyZXVuZGUgbnVyIF9zZWhyXyBzb3JnZmFlbHRpZyBhdXMuIgoKUmljaHRpZywgdW5kIFVuaXggdGVpbHQgamVkZW0gQmVudXR6ZXIgYXVmIEFuZnJhZ2UgYXVjaCBtaXQsIHdhcyBlcyB2b24gZGVtCkJlbnV0emVyIGhhZWx0LgpXaWU/CkdhbnogZWluZmFjaDogVGlwcHQgaW4gZWluZXIgU2hlbGw6CnNjcmVlbgo8UkVUVVJOPgp0YWxrIDx5b3VyX3VzZXJfbmFtZT4gb3BpbmlvbgoKRnVlciA8eW91cl91c2VyX25hbWU+IHNldHp0IGlociBuYXR1ZXJsaWNoIGV1cmVuIGVpZ2VuZW4gQmVudXR6ZXJuYW1lbiBlaW4uCkRhcyAic2NyZWVuIiBuaWNodCB2ZXJnZXNzZW4sIGVzIGlzdCB3aWNodGlnIQoKR3J1c3osIEFjcmltb24KClBTOiBKdWh1LCBVbml4IG1hZyBtaWNoIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGphLCBzbyBnZWh0J3MuIChIYXdrLCAyNi4gQXByIDE5OTUsIDAxOjA5OjQyKToKRGllIEFuZ3N0IGlzdCBzdGFlcmtlciBhbHMgRHUgLi4uIER1IHdpbGxzdCBudXIgbm9jaCB3ZWcgaGllci4KRWluIE5lYW5kZXJ0YWwtV2FlY2h0ZXIgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgpFaW4gTmVhbmRlcnRhbC1XYWVjaHRlciBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkZpbnN0ZXJuaXMuCkR1IGhhc3QgamV0enQgNTggTGViZW5zcHVua3RlIHVuZCA2MSBNYWdpZXB1bmt0ZS4KenVlbmRlIGZhY2tlbCBhbgpFcyBpc3QgenUgZHVua2VsICEKPiBEdSBoYXN0IGpldHp0IDU5IExlYmVuc3B1bmt0ZSB1bmQgNjIgTWFnaWVwdW5rdGUuCgpIQVdLIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGluIGRlciBTU1AgKEtyaWdpLCAyNi4gQXByIDE5OTUsIDA4OjQ5OjQ2KToKR2VyYWRlIGdlc2VoZW46CkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4gdW5kIG9iZW4uClJhbWJvIGRlciBaYXViZXJlciAobmV0enRvdCkuCkNocmlzdG9waCBkZXIgWmF1YmVyZXIgKG5ldHp0b3QpLgpFaW4gU2NobGFiYmVybXVya3MuCgpJY2ggbXVzcyBTY2hsdXNzIG1hY2hlbiwgbWVpbmUgVmVyYmluZHVuZyAuLiByZWlzc3QgLi4uIGEgYiAuLi4KS3JpZ2kgKG5vY2ggbmljaHQgZ2FueiBuZXR6dG90KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBhdWYgZGVuIEthbmFlbGVuIChBbGluZSwgMjYuIEFwciAxOTk1LCAxMDowMDozOCk6CgpHZXN0ZXJuIGdlc2VoZW46CgpbQWxsZ2VtZWluOk1hbml0dV0gV2VtIGdlaG9lcmVuIGRpZSBTYWNoZW4gaGllciBiZWkgRmFjaGFyPwpbVG9kOl0gRmFjaGFyIGhhdCBnZXJhZGUgTWFuaXR1IHVtZ2VicmFjaHQuCgpXZW0gZGllIHdlaXRlcmVuIFNhY2hlbiBiZWkgRmFjaGFyIGdlaG9lcmVuIHdhciBkYW5uIGphIHdvaGwga2xhci4KQWxpbmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWVyIFpTIChCbG9vZHloYXJyeSwgMjYuIEFwciAxOTk1LCAxMDowMTowMCk6CkpldHp0IG11c3N0ZSBpY2ggZG9jaCB1bmJlZGluZ3QgZWlubWFsIG1laW5lbiBuZXUgZXJsZXJudGVuIFphdWJlcnNwcnVjaAonaWRlbnRpZml6aWVyZScgYXVzcHJvYmllcmVuLgpEYSBtaWNoIGVzIHJlaXp0ZSwgenUgd2lzc2VuIHdhcyBhbGxlcyBpbiBkZW0gT3BmZXJzdG9jayBpbiBkZXIgS2FwZWxsZQpkcmluIGlzdCwgd2FzIGRhcyBtZWluIGVyc3RlcyBaaWVsOgoKaWRlbnRpZml6aWVyZSBPcGZlcnN0b2NrCkR1IGthbm5zdCBuaWNodHMgYmVzb25kZXJlcyBhbiBkZW0gT3BmZXJzdG9jayBlcmtlbm5lbi4KCk9oLCB3aWUgZW50YWV1c2NoZW5kLgoKPiB1bnQgT3BmZXJzdG9jawpEZXIgT3BmZXJzdG9jayBiZXN0ZWh0IGF1cyBzb2xpZGVtIEhvbHouIFZvcm5lIGF1ZiBkZW0gS2FzdGVuIGlzdCBlaW5lCkluc2NocmlmdCB6dSBzZWhlbiwgZGllIER1IGxlc2VuIGthbm5zdC4KRXIgZW50aGFlbHQ6CjI0MjAgTXVlbnplbi4KCkRhcyBpc3QgamEgd29obCBkaWUgSG9laGUhCgpjaWFvLCBzYWNodCBCbG9vZHkgSGFycnkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBuZXVlciBaUyAoVGhvcmluLCAyNi4gQXByIDE5OTUsIDExOjAwOjIyKToKIyEgcm49Qmxvb2R5aGFycnkgcnQ9Nzk4ODgzMjYwCk5hamEsIGZ1ZXIgTGV2ZWwgMTUgc2luZCBkb2NoIDI0MjAgTXVlbnplbiBuaWNodHMgYmVzb25kZXJlcywgc3RpbW10IGFsc28sCm9kZXIgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2xvd21vdGlvbiAoQmxvb2R5aGFycnksIDI3LiBBcHIgMTk5NSwgMTE6MDY6MjEpOgpTY2huZWxsIGJlZ2lubmUgdW5kIGxhbmdzYW0gYXVmaG9lcmVuLgoKYmFzaCQgdHJhY2Vyb3V0ZSBNRy5VTkktTVVFTlNURVIuREUKdHJhY2Vyb3V0ZSB0byBNRy5VTkktTVVFTlNURVIuREUgKDEyOC4xNzYuMTIxLjc0KSwgMzAgaG9wcyBtYXgsIDM4IGJ5dGUKcGFja2V0cwogMSAgZ2lzbGkuYXJiLXBoeXMudW5pLWRvcnRtdW5kLmRlICgxOTIuMTA5LjQ0LjQpICAyOSBtcyAgMiBtcyAgMTYgbXMKIDIgIFNwaGlsaXBwLmFyYi1waHlzLnVuaS1kb3J0bXVuZC5kZSAoMTkyLjEwOS40NC4yNDkpICAzOTQgbXMgIDcyNiBtcyAgMjY0Cm1zCiAzICBwaGlsaXBwLWd3LmFyYi1waHlzLnVuaS1kb3J0bXVuZC5kZSAoMTkyLjEwOS40NC4yNTQpICAzNTkgbXMgIDMwMiBtcyAKNDg1IG1zCiA0ICBXaU4tZ3cuSFJaLlVuaS1Eb3J0bXVuZC5ERSAoMTI5LjIxNy4xMjguMTApICA1ODMgbXMgIDI5NSBtcyAgODk1IG1zCiA1ICBjaXNjby5VbmktRHVpc2J1cmcuREUgKDE5Mi4zNS43MS42KSAgNjQ1IG1zIGNpc2NvLlVuaS1EdWlzYnVyZy5ERQooMTkyLjM1LjcxLjEwKSAgMzE4IG1zIGNpc2NvLlVuaS1EdWlzYnVyZy5ERSAoMTkyLjM1LjcxLjYpICAzNjAgbXMKIDYgICogKiAqCiA3ICAqICogKgogOCAgKiAqICoKIDkgICogKiAqCjEwICAqICogKgoxMSAgKiAqICoKMTIgICogKiAqCjEzICAqICogTUcuVU5JLU1VRU5TVEVSLkRFICgxMjguMTc2LjEyMS43NCkgIDE0NTU3IG1zCgplciBoYXQgZXMgICAgICBlciBoYXQgZXMhISEhCgoKY2lhbywgQmxvb2R5IEhhcnJ5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpibG9vZGdvcmUgdW5kIGRpZSByYXR0ZS4uLiAoUm9jaHVzLCAyNy4gQXByIDE5OTUsIDE5OjIxOjAzKToKW1RvZDpdIEVpbmUgUmF0dGUgaGF0IGdlcmFkZSBCbG9vZGdvcmUgdW1nZWJyYWNodC4KW0FsbGdlbWVpbjpPZXR0aV0gKnJvdGZsKgpbQmVpbGVpZDpKaW1EaUdyaXpdIGhhcnRlcyBCcm90LCBCbG9vZGdvcmUsIHdpZSBrb25udGUgZGFzIHBhc3NpZXJlbiA/IGRhc3MKW0JlaWxlaWQ6SmltRGlHcml6XSB3YXJuIHNpY2hlciBuZSBNZW5nZSBFcCAgIDotKApbQWxsZ2VtZWluOk11cGZlbF0gaGltbWVsIHdhcyB3YXIgZGFzIGZ1ZXIgbmUgcmF0dGU/CltCZWlsZWlkOkFuYWtpbl0gQmxvb2Rnb3JlID8/PwpbQWxsZ2VtZWluOlNseWZveF0gV2llIGJpdHRlPyBFaW5lIFJhdHRlIGhhdCBCbG9vZGdvcmUgdW1nZWJyYWNodD8/PwpbQmVpbGVpZDpBbmFraW5dIHVwcyBCbG9vZGdvcmU6IHouWi4gYWJ3ZXNlbmQsIEdydW5kICA6IFJhdHRlIGtpbGxlbiA7KSkKW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIEphamFhYSwgZHVtbWVzIFNjcmlwdCA6KQpbQmVpbGVpZDpKaW1EaUdyaXpdIGRhcyB3YXJuIHdvaGwgZGllIEthcmF0ZWZhZWdoaWdrZWl0ZW4gOigKW0JlaWxlaWQ6Sm9mXSBCbG9vZGdvcmUgc3RlaHQgdWViaXJnZW5zIG5lYmVuIG1pcgpbQWxsZ2VtZWluOkJhbWJ1bGtvIGxhY2h0IGxhdXQuXQpbQmVpbGVpZDpKb2ZdIEFiZXIgaWhyIFJlY2huZXIgaXN0IDMgUmFldW1lIHdlaXRlcgpbQmVpbGVpZDpKb2ZdIFNpZSBpc3QgbmljaHQgc29vb28gYmVnZWlzdGVydCA6KQpbQmVpbGVpZDpGcm9zY2ggSW5za2lwcF0ga2VpbiB3dW5kZXIgKmtpY2hlcioKW0JlaWxlaWQ6TW9yZ29ucyBBdWdlIGVudHJpbm50IGVpbmUgVHJhZW5lLiBUdXQgbWlyIGxlaWQsIEJsb29kZ29yZS5dCltBbGxnZW1laW46R3V5YnJ1c2hdIFJhdHRlIGlzdCBqYSBub2NoIHNjaGxpbW1lciBhbHMgSmFlZ2VyIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpub2NoIG1hbCB6dW0gVGhlbWEgTEFHIChDcmVhdGl2ZSwgMjguIEFwciAxOTk1LCAwMTo1MTo0MSk6CgoxLiwgRGFzIGlzdCB3aXJrbGljaCBlaW4gTEFHLgoyLiwgU28gaGVpc3NlIGljaCBudSB3aXJrbGljaCBuaWNoOgoKLi4uCkRlciBTdGVpbmJlaXNzZXIgdmVyc2Nod2luZGV0IHdpZWRlciwgdW5kIER1IHdhY2hzdCBpbiBlaW5lciBhbmRlcmVuIFdlbHQKYXVmLgoKV2llIGhlaXNzdCBEdSBkZW5uID8gVGltZSBvdXQKQ2xvc2luZyBkb3duLgpDb25uZWN0aW9uIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCgoKLUNyZWEtICpsYWNoKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBub2NoIG1hbCB6dW0gVGhlbWEgTEFHIChQdGVwcGljLCAyOC4gQXByIDE5OTUsIDEwOjU1OjM3KToKIyEgcm49Q3JlYXRpdmUgcnQ9Nzk5MDI2NzAxCnNvIHdlaXQgd2FlciBpY2ggZ2VzdGVybiBhdWNoIGdlcm4gZ2Vrb21tZW4gYmVpbSBlaW5sb2dnZW4gLi4uLiBBUkdMIHViZXIgZGllCmNvbm5lY3Rpb24uLi4gOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZpc2NodmVyZ2lmdHVuZyAoQmFyb24sIDI5LiBBcHIgMTk5NSwgMTc6MDQ6MDcpOgoKCkljaCBsaWViZSBkaWVzZSBuZXVlbiBNZWxkdW5nZW4gYXVmIGRlbSBLYW5hbCBbTW9lcmRlcl0KCltNb2VyZGVyOkdlaXN0IGVpbmVzIEdvYmxpbnNdIFdpZWRlciBtYWwgYW4gU3VzaGkgZ2VzdG9yYmVuLGZpbmQgaWNoIGFsYmVybiEKClJlZCBCYXJvbiAobWFnIGF1Y2gga2VpbmVuIHJvaGVuIEZpc2NoIHVuZCBrYW5uIGRlbiBHb2JsaW4gdmVyc3RlaGVuKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11ZWRlcyBXb2NoZW5lbmRlIChTaWx2YW5hLCAzMC4gQXByIDE5OTUsIDA5OjA4OjQ5KToKRGEgbG9nZ3QgbWFuIHNpY2ggZWluLCBtYWNodCBrd2VyIHVuZCBmcmV1dCBzaWNoIHVlYmVyIHZpZWxlIE1pdHNwaWVsZXIgdW5kCndhcyBpc3Q/Clp3ZWl0aWUgICAgICAgICAgOiBJZGxlemVpdCAgMDA6MDQ6MjAKVG9zcyAgICAgICAgICAgICA6IElkbGV6ZWl0ICAwMDowNDo0MApXdWxmZXJlICAgICAgICAgIDogSWRsZXplaXQgIDAxOjU3OjQxCkFzbW9kaXMgICAgICAgICAgOiBJZGxlemVpdCAgMTM6MDc6MTcKTGF1cmluICAgICAgICAgICA6IElkbGV6ZWl0ICAxMzowNzoxNwpKYWYgICAgICAgICAgICAgIDogSWRsZXplaXQgIDAwOjEyOjEzCk1lcmlhZCAgICAgICAgICAgOiBJZGxlemVpdCAgMTA6NTA6MjkKS3RrICAgICAgICAgICAgICA6IElkbGV6ZWl0ICAwMDoxMjowMwpDb3Jwc2Z1bmRzICAgICAgIDogSWRsZXplaXQgIDA1OjQyOjAzCkhvdWRpbmkgICAgICAgICAgOiBJZGxlemVpdCAgMjE6MDQ6MDMKCkFsc28gZWlnZW50bGljaCBzb2xsdGUgbWFuIHNpY2ggYXVzbG9nZ2VuLCB3ZW5uIG1hbiBpbnMgQmV0dCBnZWh0Li4uCgpTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXVlZGVzIFdvY2hlbmVuZGUgKFp3ZWl0aWUsIDMwLiBBcHIgMTk5NSwgMDk6MzA6NTMpOgojISBybj1TaWx2YW5hIHJ0PTc5OTIyNTcyOQpUamEsIGRhIHNpZWh0IG1hbnMgd2llZGVyLi4uCkRlciBad2VpdGllIGlzIGFtIHdlbmlnc3RlbiBpZGxlIDotKSkKClp3ZWl0aWUKICAgIChnZWh0IGpldHp0IGlkbGVuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE11ZWRlcyBXb2NoZW5lbmRlIChUaG9yaW4sICAxLiBNYWkgMTk5NSwgMTU6MDk6MjMpOgojISBybj1TaWx2YW5hIHJ0PTc5OTIyNTcyOQpTaWx2YW5hLCBkdSB2ZXJnaXNzdCBkaWUgS2FyYXRlZ2lsZGUgOikKSG91ZGluaSB1bmQgaWNoIHRyYWluaWVyZW4gbm9jaCBpbSBTY2hsYWYsIG1hbCBzY2hhdWVuLCBvYiBSb2NodXMgcmVjaHQKaGF0dGUgOikpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprZXRvcyAoQ2FyYWRocmFzLCAgMS4gTWFpIDE5OTUsIDIxOjQ5OjM2KToKW0FsbGdlbWVpbjpDYXJhZGhyYXMga251cnJ0IGVpbmVuIEJ1bWVyYW5nIGFuLl0KS2V0b3MgdGVpbHQgRGlyIG1pdDogZ2VmcmVzc2VuID8KRHUgdGVpbHN0IEtldG9zIG1pdDogbmVpbiwga2VpbmUgbW9lcmRlcm1lbGR1bmcgKnNldWZ6KgpbZWluZSBNaW51dGUgc3BhZXRlci4uLl0KCkRlciBCdW1lcmFuZyB0cmlmZnQgZGVuIExldWNodHRyb2xsIGhhcnQgYW0gS29wZi4KRGVyIExldWNodHRyb2xsIHNjaG5hcHB0IHNpY2ggZGVuIEJ1bWVyYW5nIHVuZCBmcmlzc3QgaWhuIGdlcmFldXNjaHZvbGwgYXVmLgoKCiprbnVyciogS2V0b3Mgd2FycyEgS2V0b3Mgd2FycyEgRXIgd3Vzc3RlIGVzIHNjaG9uIHZvcmhlci4KCiAgIENhcmFkaHJhcyBzaW5ndDogSWNoIGJpbiBTY2hsYWVjaHRlciB2b24gQmVydWYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdWNoIChDYXJhZGhyYXMsICAxLiBNYWkgMTk5NSwgMjI6MjQ6NTQpOgpBcmdsLCB3ZWxjaCBzY2hyZWNrbGljaGVzIFNjaGlja3NhbCEgSXN0IHp3YXIgZWggc2Nob24gYmVrYW5udCBkYXNzCmRhcyBBbXVsZXR0IGltbWVyIGhlaWx0IHdlbm4gbWFuIGJlaW5haGUgdm9sbCBpc3QsIGFiZXIgaW1tZXIgd2llZGVyCnNjaG9lbjogKHVuZ2VzY2huaXR0ZW4pCgpEdSBoYXN0IGpldHp0IDQ0IExlYmVuc3B1bmt0ZSB1bmQgMjEgTWFnaWVwdW5rdGUuCkRlciBCdW1lcmFuZyB0cmlmZnQgZGVuIExldWNodHRyb2xsIHNlaHIgaGFydCBhbSBLb3BmLgpEZXIgQnVtZXJhbmcgdHJpZmZ0IGRlbiBMZXVjaHR0cm9sbCBoYXJ0IGFtIEtvcGYuCkVpbiBMZXVjaHR0cm9sbCBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkxhYnlyaW50aC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG5vcmRlbiB1bmQgb3N0ZW4uCj4gW0FsbGdlbWVpbjpTYWlrYW5dIEh1ZXBmZXIgYWJlciBhbSBtZWlzdGVuLi4gU2llIHdpbGwgbWljaCBuYWVtbGljaCBtb3JnZW4KW0FsbGdlbWVpbjpTYWlrYW5dIGhlaXJhdGVuLi4gamF3b2xsCkRlciBCdW1lcmFuZyBmbGllZ3QgaGVyZWluLgpEZXIgQnVtZXJhbmcgZmxpZWd0IGhlcmVpbi4KMgoyCkR1IGZhZW5nc3QgZGVuIEJ1bWVyYW5nIGdlc2NoaWNrdC4KPiBEZXIgQnVtZXJhbmcgcmFzaWVydCBEaXIgZWluIEhhYXJidWVzY2hlbCBhYi4KbkR1IGZhZW5nc3QgZGVuIEJ1bWVyYW5nIGdlc2NoaWNrdC4KPgpkawpuCm8KbmYKRHUgaGFzdCBqZXR6dCA0NSBMZWJlbnNwdW5rdGUgdW5kIDIxIE1hZ2llcHVua3RlLgpEdSBoYXN0IGpldHp0IDQ1IExlYmVuc3B1bmt0ZSB1bmQgMjIgTWFnaWVwdW5rdGUuCkVpbmUgaGVycmxpY2hlIFdhZXJtZSBnZWh0IHZvbiBEZWluZW0gQW11bGV0dCBhdXMgdW5kIER1IGZ1ZWhsc3QKRGljaCBwcmltYS4KRHUgaGFzdCBqZXR6dCAxNDUgTGViZW5zcHVua3RlIHVuZCAyMiBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAxNDUgTGViZW5zcHVua3RlIHVuZCAxMjIgTWFnaWVwdW5rdGUuCltBbGxnZW1laW46SHVlcGZlcl0gTXVzc3QgZHUgc2Fpa2FuIGZyYWdlbgpMYWJ5cmludGguCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4gdW5kIG5vcmRlbi4KPiBEdSBkcnVlY2tzdCBhdWYgZGVuIEtub3BmLgo+IExhYnlyaW50aC4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiwgbm9yZGVuIHVuZCBvc3Rlbi4KPiBMYWJ5cmludGguCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uCkVpbiBHbGl0emVybW9jay4KRWluIEdsaXR6ZXJzY2h3ZXJ0Lgo+IFtBbGxnZW1laW46TGVmdHldIHdlciBzcGlubnQgaGllciA/PyA7KQpEdSBuaW1tc3QgZGFzIEZsYWVzY2hjaGVuIGF1cyBkZXIgTmlzY2hlIHVuZCB0cmlua3N0IGVzIGF1cywgd29obGlnZQpXYWVybWUgZnVyY2hmbHV0ZXQgRGVpbmVuIEtvZXJwZXIuCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMTIyIE1hZ2llcHVua3RlLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDIyNiBNYWdpZXB1bmt0ZS4KPiB3CgpOaWNodCBtYWwgZHJhdXNzZW4gYXVzIGRlbSBSYXVtIHVuZCBzY2hvbiAyIG1hbCBnZWhlaWx0Li4uIHZlcmZsdWNodCwgdW5kCmljaCBtdXNzdGUgYXVjaCBub2NoIDE1IFNla3VuZGVuIGxhbmcgenVrdWNrZW4gd2llIGRpZSB2b3JoZXIgZWluZ2VnZWJlbmVuCkJlZmVobGUgYWJnZWFyYmVpdGV0IHd1cmRlbi4gV2VsY2ggUXVhbCEKCgogICAgIENhcmFkaHJhcyAtIG9yZ2FuaXNpZXJ0IFNpZ2hzZWVpbmctVG91cmVuIGluIGRpZSBTU1AKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxBRyA6KCAoQ3JlYXRpdmUsICAyLiBNYWkgMTk5NSwgMTE6MTQ6MDUpOgoKV2FzIGhhbHRldCBJaHIgdm9uIGRlbSBMQUc/Pz8KClBJTkcgbWcudW5pLW11ZW5zdGVyLmRlICgxMjguMTc2LjEyMS43NCk6IDU2IGRhdGEgYnl0ZXMKNjQgYnl0ZXMgZnJvbSAxMjguMTc2LjEyMS43NDogaWNtcF9zZXE9MSB0dGw9MjQwIHRpbWU9NDg2MDguMCBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT0xMSB0dGw9MjQwIHRpbWU9NDQxOTEuMCBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT0xNCB0dGw9MjQwIHRpbWU9NDEyNTYuOCBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT0xNSB0dGw9MjQwIHRpbWU9NDAyNTAuOCBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT0yMSB0dGw9MjQwIHRpbWU9Mzg3OTUuMiBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT0yNSB0dGw9MjQwIHRpbWU9MzY4NDguMiBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT0zOSB0dGw9MjQwIHRpbWU9MjM5MDIuNCBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT00NCB0dGw9MjQwIHRpbWU9MjAzNTkuMiBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT01NCB0dGw9MjQwIHRpbWU9MTg2NjguNSBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT01NSB0dGw9MjQwIHRpbWU9MTc2OTAuNiBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT02MCB0dGw9MjQwIHRpbWU9MTkzNTcuMSBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT02MSB0dGw9MjQwIHRpbWU9MTg4ODcuOSBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT02MiB0dGw9MjQwIHRpbWU9MTc4ODIuMiBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT02NCB0dGw9MjQwIHRpbWU9MTY4NzcuMSBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT02OCB0dGw9MjQwIHRpbWU9MTM0MzUuMCBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT03MCB0dGw9MjQwIHRpbWU9MTE0ODMuMiBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT03MyB0dGw9MjQwIHRpbWU9ODYyNi40IG1zCjY0IGJ5dGVzIGZyb20gMTI4LjE3Ni4xMjEuNzQ6IGljbXBfc2VxPTc1IHR0bD0yNDAgdGltZT02NjEwLjQgbXMKNjQgYnl0ZXMgZnJvbSAxMjguMTc2LjEyMS43NDogaWNtcF9zZXE9NzcgdHRsPTI0MCB0aW1lPTQ4MjIuNCBtcwo2NCBieXRlcyBmcm9tIDEyOC4xNzYuMTIxLjc0OiBpY21wX3NlcT03OSB0dGw9MjQwIHRpbWU9Mjk3OC4zIG1zCgoKNDggc2Vrcz8/PyBkYXMgaXMgWlUgdmllbCwgYWxzbyB2ZXJsZWd0IGRhcyBNVUQgbmFjaCBMSU5aIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluZmFjaCB6dSBzY2hvZW4uLi4gKFRvc3MsICAyLiBNYWkgMTk5NSwgMTI6MzY6NDQpOgpnZXJhZGUgZ2VzZWhlbjogRGFpTW9uVm9rcyBuZXVlcyBHcmF0c2FsaToKCltHcmF0czpEYWlNb25Wb2sgUmVpY2gtUmFuaWNraSBzYWd0OiBEYXRoIGl0aHQgZWluZSB0aGVlcnIgaW50ZXJycmV0aGFudGUKUXVldGh0LCBkaWUgVGhpZSBkYSBnZWxvZXRodCBoYWJlbi4gSWNoIGhhYmUgdGhpZSB0aGVsYnN0IGdlc3BpZWx0LCB1bmQgaWNoCmhhYmUgbWljaCBuaWNodCBnZWxhbmd3ZWlsdCAuLi5dCgpNdXNzdGUgaWNoIGViZW4gemVpZ2VuLCBmYW5kIGljaCBzcGl0emUuLi4KClJ5bmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGltIEludGVybmV0Li4uIChZZW5kaSwgIDIuIE1haSAxOTk1LCAxMzo1MToxNik6CgpJdCdzIDEwNiBtaWxsaXNlY29uZHMgdG8gQ2hpY2Fnbywgd2UndmUgZ290IGEgZnVsbCB0YW5rIG9mIFVSTHMsIGhhbGYKYSBtZWcgb2YgaHlwZXJ0ZXh0LCBpdCdzIGRhcmssIGFuZCB3ZSdyZSB3ZWFyaW5nIHN1bmdsYXNzZXMuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc28gaXN0IGRhcyAoS2FydGlpLCAgMy4gTWFpIDE5OTUsIDEzOjE2OjUyKToKQWxzbyBsZXR6dGVucyBpbiBkZXIgR2lsZGU6CkR1IGJpc3QgamV0enQgS2FydGlpIGRlciBMYW5kc3RyZWljaGVyIChsZXZlbCAyKS4KRHUgYmlzdCBqZXR6dCBLYXJ0aWkgZGVyIFdhbGRsYWV1ZmVyIChsZXZlbCAzKS4KPiBEdSBiaXN0IGpldHp0IEthcnRpaSBkZXIgUGZhZGZpbmRlciAobGV2ZWwgNCkuCj4gRHUgYmlzdCBqZXR6dCBLYXJ0aWkgZGVyIEphZWdlciAobGV2ZWwgNSkuCkR1IGJpc3QgamV0enQgS2FydGlpIGRlciBLYWVtcGZlciAobGV2ZWwgNikuCj4gR3V0IGdlbWFjaHQsIEthcnRpaSBkZXIgZXJmYWhyZW5lIEthZW1wZmVyIChsZXZlbCA3KS4KPiBHdXQgZ2VtYWNodCwgS2FydGlpIGRlciBBYmVudGV1cmVyIChsZXZlbCA4KS4KPiBHdXQgZ2VtYWNodCwgS2FydGlpIGRlciBlcmZhaHJlbmUgQWJlbnRldXJlciAobGV2ZWwgOSkuCj4gR3V0IGdlbWFjaHQsIEthcnRpaSBkZXIgS3JpZWdlciAobGV2ZWwgMTApLgo+IEd1dCBnZW1hY2h0LCBLYXJ0aWkgZGVyIFJpdHRlciAobGV2ZWwgMTEpLgpHdXQgZ2VtYWNodCwgS2FydGlpIGRlciBIZWxkIChsZXZlbCAxMikuCj4gR3V0IGdlbWFjaHQsIEthcnRpaSBkZXIgRHJ1aWRlIChsZXZlbCAxMykuCj4gV2lsbG9tbWVuIGF1ZiBEZWluZXIgbmV1ZW4gU3R1ZmUuCkR1IGJpc3QgamV0enQgZGVyIEJlc2Nod29lcmVyIChsZXZlbCAxNCkuCj4gV2lsbG9tbWVuIGF1ZiBEZWluZXIgbmV1ZW4gU3R1ZmUuCkR1IGJpc3QgamV0enQgZGVyIFphdWJlcmxlaHJsaW5nIChsZXZlbCAxNSkuCj4gSHVlcGZlciBzYWd0OiBzY2hlaXNzIG11ZWNrZW5zdGljaCwgaWNoIGhhc3NlIGRhcwpTYWlrYW4gaXN0IGVyc3RhdW50LgpXaWxsb21tZW4gYXVmIERlaW5lciBuZXVlbiBTdHVmZS4KRHUgYmlzdCBqZXR6dCBkZXIgWmF1YmVyZXIgKGxldmVsIDE2KS4KPiBXaWxsb21tZW4gYXVmIERlaW5lciBuZXVlbiBTdHVmZS4KRHUgYmlzdCBqZXR6dCBkZXIgSGV4ZXIgKGxldmVsIDE3KS4KPiBXaWxsb21tZW4gYXVmIERlaW5lciBuZXVlbiBTdHVmZS4KRHUgYmlzdCBqZXR6dCBkZXIgUHJvcGhldCAobGV2ZWwgMTgpLgo+IFdpbGxvbW1lbiBhdWYgRGVpbmVyIG5ldWVuIFN0dWZlLgpEdSBiaXN0IGpldHp0IGRlciBhbmdlaGVuZGUgU2VoZXIgKGxldmVsIDE5KS4KPiBPSywgcmVuZXdpbmcgZHdhcmY6a2FydGlpCkthcnRpaSB6aWVodCBlaW5lbiBMaWNodHBhbnplciBhdXMuCkthcnRpaSB6aWVodCBlaW5lbiBMaWNodGhlbG0gYXVzLgpLYXJ0aWkgemllaHQgTGVkZXJtb2thc3NpbnMgYXVzLgpLYXJ0aWkgc3RlY2t0IGVpbiBMYW5nc2Nod2VydCB6dXJ1ZWNrLgpLYXJ0aWkgdmVybGFlc3N0IGRpZXNlIFdlbHQuCkR1IHp1ZWNrc3QgZGFzIExhbmdzY2h3ZXJ0LgpMZWRlcm1va2Fzc2luczogRHUgemllaHN0IExlZGVybW9rYXNzaW5zIGFuLgpFaW4gTGljaHRoZWxtOiBEdSB6aWVoc3QgZGVuIExpY2h0aGVsbSBhbi4KRWluIExpY2h0cGFuemVyOiBEdSB6aWVoc3QgZGVuIExpY2h0cGFuemVyIGFuLgpTYWlrYW4gaXN0IGVyc3RhdW50Lgpad2lyY2gga29tbXQgYW4uCk1hamVzdGl4IGdyaW5zdC4KUGVybGUgYmV0cml0dCBkaWVzZSBXZWx0Lgpad2lyY2ggZ2VodCBuYWNoIE5vcmRlbi4KZ3JpbnNlCkR1IHNpZWhzdCBlaW5lbiBGZWhsZXIgaW0gUmF1bS1aZWl0LUdlZnVlZ2UuCnNjaGF1ZQpQZXJsZSBrbnVkZGVsdCBNYWplc3RpeC4KRHUgc2llaHN0IGVpbmVuIEZlaGxlciBpbSBSYXVtLVplaXQtR2VmdWVnZS4KaQpEdSBzaWVoc3QgZWluZW4gRmVobGVyIGltIFJhdW0tWmVpdC1HZWZ1ZWdlLgpNYWplc3RpeCBrbnVkZGVsdCBQZXJsZS4KS2FoYXRvIHJ1ZnQ6IHNhaWthbiBkdSBzY2h3ZWluCk1hamVzdGl4IGdpYnQgUGVybGUgMjAwMCBNdWVuemVuLgpkb25lCk1hamVzdGl4IHNhZ3Q6IGRhcyBzb2xsdGUgcmVpY2hlbgpEdSBzaWVoc3QgZWluZW4gRmVobGVyIGltIFJhdW0tWmVpdC1HZWZ1ZWdlLgpvZWZmbmUgc2NoaXJtUGhlbGFuIHNhZ3Q6IHNjaGlja3N0IGR1IG1pciBtYWwgZWluZSBhbmxlaXR1bmcKU2Fpa2FuIHNhZ3Q6IHJhdXMgaGllcgpTYWlrYW4gZ2VodCBuYWNoIE5vcmRlbi4KSHVlcGZlciBzYWd0OiBtYWplc3RpeCB3YW5uIGdlaGVuIHdpciBlc3NlbgpEdSBzaWVoc3QgZWluZW4gRmVobGVyIGltIFJhdW0tWmVpdC1HZWZ1ZWdlLgpNYWplc3RpeCBzYWd0OiBuYSBqZXR6dApLYWhhdG8gcnVmdDogV28gaXN0IGplaGFrbz8KUGhlbGFuIGdlaHQgbmFjaCBOb3JkZW4uCkR1IHNpZWhzdCBlaW5lbiBGZWhsZXIgaW0gUmF1bS1aZWl0LUdlZnVlZ2UuCkR1IGhvZXJzdCBkaWUgVWhyIHNjaGxhZ2VuOiBFcyBpc3QgamV0enQgMTMgVWhyLgpNYWplc3RpeCBrbnVkZGVsdCBQZXJsZS4KRHUgc2llaHN0IGVpbmVuIEZlaGxlciBpbSBSYXVtLVplaXQtR2VmdWVnZS4KRHUgc2llaHN0IGVpbmVuIEZlaGxlciBpbSBSYXVtLVplaXQtR2VmdWVnZS4KQmlzIGJhbGQhCkR1IHN0ZWNrc3QgZGFzIExhbmdzY2h3ZXJ0IHp1cnVlY2suCkR1IHppZWhzdCBMZWRlcm1va2Fzc2lucyBhdXMuCkR1IHppZWhzdCBkZW4gTGljaHRoZWxtIGF1cy4KRHUgemllaHN0IGRlbiBMaWNodHBhbnplciBhdXMuCkNsb3NpbmcgZG93bi4KQ29ubmVjdGlvbiBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgpFeGl0IDEKPz8/Pz8Kc28gaXN0IGRhcyBoYWx0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYSB3YXMgbnVuPz8gKEJhbWJ1bGtvLCAgMy4gTWFpIDE5OTUsIDE1OjQ0OjU0KToKCiBEdSBoYXN0IGpldHp0IDEwMjQgTGViZW5zcHVua3RlIHVuZCA1MTIgTWFnaWVwdW5rdGUuClVuZ3VlbHRpZ2UgTGViZW5zcHVua3RlISBCaXR0ZSB2ZXJzdGFlbmRpZ2UgZWluZW4gRXJ6bWFnaWVyLgpEdSBoYXN0IGpldHp0IDYzIExlYmVuc3B1bmt0ZSB1bmQgNjcgTWFnaWVwdW5rdGUuCkR1IGhhc3QgamV0enQgNjMgTGViZW5zcHVua3RlIHVuZCA2OCBNYWdpZXB1bmt0ZS4KRGVyIFB1dHp0ZXVmZWwgZmluZGV0IGVpbmVuIFphdWJlcnRyYW5rIHVudGVyIGRlciBkaWNrZW4gU3RhdWJzY2hpY2h0Lgp2b3JyYXQKRHUgaGFzdCBqZXR6dCAzIExlYmVuc3B1bmt0ZSB1bmQgNzggTWFnaWVwdW5rdGUuCkR1IHZlcmxpZXJzdCBmdWVyIGVpbmVuIEF1Z2VuYmxpY2sgZGllIE9yaWVudGllcnVuZy4KRGllIEt1ZWNoZS4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRlbi4KPiBLZXRvcyBydWZ0OiBCeWUKRHUgaGFzdCBqZXR6dCA2NCBMZWJlbnNwdW5rdGUgdW5kIDY4IE1hZ2llcHVua3RlLgoKV2lldmllbGUgbHAncyBoYWIgaWNoIGRlbm4gbnVuPz8gOi0pKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgaW0gSW50ZXJuZXQuLi4gKFllbmRpLCAgMy4gTWFpIDE5OTUsIDIxOjI3OjE1KToKCiA9IEJlZm9yZSB5b3UgYXNrIG1lIGZvciB0aGUgZGF5IG9mZiwgY29uc2lkZXIgdGhlIGZvbGxvd2luZyBzdGF0aXN0aWNzOgogPSBUaGVyZSBhcmUgMzY1IGRheXMgaW4gdGhlIHllYXIsIHlvdSBzbGVlcCBlaWdodCBob3VycyBhIGRheSBtYWtpbmcgMTIyCmRheXMsCiA9IHdoaWNoIHN1YnRyYWN0ZWQgZnJvbSAzNjUgZGF5cyBtYWtlcyAyNDMgZGF5cy4gIFlvdSBhbHNvIGhhdmUgOCBob3VycyBvZgogPSByZWNyZWF0aW9uIGV2ZXJ5IGRheSwgbWFraW5nIGFub3RoZXIgMTIyIGRheXMgYW5kIGxlYXZlcyBhIGJhbGFuY2Ugb2YgMTIxCiA9IGRheXMuICBUaGVyZSBhcmUgNTIgU3VuZGF5cyB0aGF0IHlvdSBkbyBub3Qgd29yayBhdCBhbGwsIGxlYXZpbmcgNjkgZGF5cy4KID0gIFlvdQogPSBnZXQgU2F0dXJkYXkgYWZ0ZXJub29uIG9mZi4gIFRoaXMgZ2l2ZXMgNTIgaGFsZi1kYXlzLCBvciAyNiBtb3JlIGRheXMKdGhhdAogPSB5b3UKID0gZG8gbm90IHdvcmsuICBUaGlzIGxlYXZlcyBhIGJhbGFuY2Ugb2YgNDMgZGF5cy4gIFlvdSBnZXQgYW4gaG91ciBvZmYgZm9yCiA9IGx1bmNoLCB3aGljaCB3aGVuIHRvdGFsZWQgbWFrZXMgMTYgZGF5cywgbGVhdmluZyAyNyBkYXlzIG9mIHRoZSB5ZWFyLiAKWW91CiA9IGdldAogPSBhdCBsZWFzdCAyMSBkYXlzIGxlYXZlIGV2ZXJ5IHllYXIsIHNvIHRoYXQgbGVhdmVzIDYgZGF5cy4gIFlvdSBnZXQgNQpsZWdhbAogPSBob2xpZGF5cyBkdXJpbmcgdGhlIHllYXIsIHdoaWNoIGxlYXZlcyBvbmx5IDEgZGF5LAogPSBBTkQgWU9VIFdBTlQgTUUgVE8gR0lWRSBZT1UgVEhBVCBPTkUgREFZIE9GRiEKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBiZWkgWmFyZG96IChNZXNpcmlpLCAgNS4gTWFpIDE5OTUsIDAyOjA5OjM2KToKRGVyIFB1dHp0ZXVmZWwgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIGdlbHVuZ2VuZW4gV2lzY2hpLVdhc2NoaSBhbi4KRGVyIFB1dHp0ZXVmZWwgZ3JlaWZ0IE1lc2lyaWkgbWl0IGVpbmVtIGdlbHVuZ2VuZW4gV2lzY2hpLVdhc2NoaSBhbi4KICBEZXIgUHV0enRldWZlbCB0cmlmZnQgRGljaCBoYXJ0LgoKCmF1Y2ggRHUgWmFyZG96IC4uLgprb3Bmc2NodWV0dGVsbmQKTWVzaXJpaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobXV0emlnZXIgZG9qbz8gKEhhZHJhLCAgNi4gTWFpIDE5OTUsIDE4OjQyOjUwKToKbmV1bGljaCBpbSBrYXJhdGUgZG9qbzoKCkZ1bmFrb3NoaSBzYWd0OiBgRHUga2FubnN0IENob2t1LXp1a2k6IDI0LjMlLicnCkZ1bmFrb3NoaSBzYWd0OiBgRHUga2FubnN0IEFnZS11a2U6IDEuMyUsIEdlZGFuLWJhcmFpOiAzLjklLApTb3RvLXVkZS11a2U6IDMuNCUgdW5kIFVjaGktdWRlLXVrZTogMi45JS4nJwo+IEhvcHBsYSEgRGEgaXN0IERpciBkb2NoIGdsYXR0IGVpbiBTYW5ka29lcm5jaGVuIGlucyBPaHIgZ2V3ZWh0LgoKamEgcHV0enQgZGVubiBkYSBrZWluZXI/CgpoYWRyYSAtIGhhdCBhdWNoIHNvIG5lbiBkb2pvIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZWxkbm9ldGUgPyAoTm9zdHJhZGFtdXMsICA3LiBNYWkgMTk5NSwgMDI6NTQ6MjcpOgpBdWYgZGVyIEhvY2hlYmVuZS4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiwgd2VzdGVuLCBub3JkZW4gdW5kIG9zdGVuLgotMjM4OTMgTXVlbnplbi4KRWluIEhhcmFraXJpc2Nod2VydC4KRWluZSB3aWRlcmxpY2hlIEtha2VybGFrZS4KCkhtbSwgaGF0IHNpY2ggZGEgamVtYW5kIGF1cyBHZWxkc29yZ2VuIHVtZ2VicmFjaHQgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdlbGRub2V0ZSA/IChKYWYsICA3LiBNYWkgMTk5NSwgMTU6Mzc6MTkpOgojISBybj1Ob3N0cmFkYW11cyBydD03OTk4MDgwNjcKCi0yMzAwMCBNdWVuemVuLi4uCgpTb3dhcyBlbnRzdGVodCwgd2VubiBNYWdnaXMgYmVzb2ZmZW4gc2luZC4KCkphZi4gR3JpbnNlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCZXN0IG9mIFp1ZXJpbGV1IChSb2NodXMsICA4LiBNYWkgMTk5NSwgMTA6MzI6MjUpOgpSb2NodXMgYW4gYWxsZSBNYWdpZXI6IHdpZXNvIGhhdHRlIGhpb2Iga2VpbiBlbnZpcm9ubWVudCA/Pz8KW01hZ2llcjpadWVyaWxldV0gZWluIHdhcyA/CltNYWdpZXI6WnVlcmlsZXVdIHJvY2h1cywgd2FzIGlzdCBlaW4gZW52aXJvbWVudCBvZGVyIHdpZSBkYXMgaGVpc3N0ID8KW01hZ2llcjpSb2NodXNdIGRhcyBpc3QgZGVyIHJhdW0sIGluIGRlbSBkdSBiaXN0LCBkdSBkZXBwIDopCltNYWdpZXI6WnVlcmlsZXVdIGhtbSB1bmQgd2FydW0gbXVzcyBtYW4gZGFzIHNvIGtvcGxpemllcnQgc2FnZW4sIGRhIGhhZXR0ZQpbTWFnaWVyOlp1ZXJpbGV1XSB3YXJ1bSBzdGVodCBlciBuaWNodCBpbSByYXVtIGdlcmVpY2h0ID06KQpbTWFnaWVyOlF1aW5vbGluIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLl0KW01hZ2llcjpBenp1cm8gYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uXQpbTWFnaWVyOlRyeWZhbiBncmluc3Qgc2ljaCBhdWNoIGVpbnNdCltNYWdpZXI6VHJ5ZmFuXSB3ZWlsIG1hbiBzcGllbGVyIGF1Y2ggaW4gZWluZW4gYmV1dGVsIHN0ZWNrZW4ga2FubiA6KQpbTWFnaWVyOlp1ZXJpbGV1XSBqbyBpY2ggd2Vpc3MgdW5kIHdpZSBtYWNodCBtYW4gZGFzID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGltIEludGVybmV0Li4uIChZZW5kaSwgIDguIE1haSAxOTk1LCAxMzoyODoyMyk6CgpOQVNBLCBBcG9sbG8gMTM6ICJXZSBkb24ndCBjYWxsIGl0IGltcHJvdmlzYXRpb24sIHdlIGNhbGwgaXQgYHJlYWwgdGltZQogICAgICAgICAgICAgICAgICBtaXNzaW9uIHBsYW5pbmcnISIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpad2VpIFBvZWh0ZW4uLi4gKFllbmRpLCAgOC4gTWFpIDE5OTUsIDE3OjI2OjI3KToKCkVscmljIHRlaWx0IERpciBtaXQ6IGhldXRlIGtvbW10IHVlYnJpZ2Vuc2UgIldvbGYiIGltIFVuaWtpbm8uCkR1IHRlaWxzdCBFbHJpYyBtaXQ6IEljaCB3ZWlzcywgdG9sbGVyIEZpbG0uIEhhdCBtaXIgc28gcmljaHRpZyBTcGFzcwpEdSB0ZWlsc3QgRWxyaWMgbWl0OiBnZW1hY2h0Li4uCkVscmljIHRlaWx0IERpciBtaXQ6IHdlbm4gd2lyIHVucyBmdWVyIGVpbmUgZnJ1ZWhlcmUgemVpdCB2ZXJhYnJlZGV0IGhhZXR0ZW4sCkVscmljIHRlaWx0IERpciBtaXQ6IHdhZXIncyBnZWlsIGdld2VzZW4sIGRlbiBmaWxtIHp1bSB0aGVtYSB6dSBndWNrZW4sCm1laW5zdApFbHJpYyB0ZWlsdCBEaXIgbWl0OiBkdSBuaWNodCA/CkR1IHRlaWxzdCBFbHJpYyBtaXQ6IFRzY2hhLCBXZXJ3b2xmIF9zZWhlbl8gbWFjaHQgc2Nob24gU3Bhc3MsIFdlcndvbGYKRHUgdGVpbHN0IEVscmljIG1pdDogX3NlaWVuXyBhdWNoICduZSBNYXNzIQpFbHJpYyB0ZWlsdCBEaXIgbWl0OiBhYmVyIFdlcndvbGYgX3NlaWVybl8ga2FubiBkZXIgTWFubi8gYW0gYmVzdGVuLCBkZXIKRWxyaWMgdGVpbHQgRGlyIG1pdDogaGVpc3N0IENocmlzdGlhbi4KRHUgdGVpbHN0IEVscmljIG1pdDogRWxyaWMgZGljaHRldCBhcmcgYmVtdWVodCAvIGVzIHNjaGVpbnQsIGFscyBzZWkgZGllCkR1IHRlaWxzdCBFbHJpYyBtaXQ6IFN0dW5kIHZlcmZydWVodCwgLyB1bmQgYXVjaCBpbSBCbHV0IGRlciBBbGtvaG9sIC8gaXN0CkR1IHRlaWxzdCBFbHJpYyBtaXQ6IGltbWVybm9jaCB6dSB3ZW5pZyB3b2hsLgpEdSB0ZWlsc3QgRWxyaWMgbWl0OiBXbyBzb2xsIGljaCBkZW5uIGFtIFJ1SGEgMTAwIGtsaW5nZWxuLCBiaXR0ZT8KRWxyaWMgdGVpbHQgRGlyIG1pdDogRGVtIFllbmRpIGRvY2gsIGRlbSB3aXR6J2dlbiBCb2xkIC8gZGVtIHdpcmQgZ2FyIHZpZWwKRWxyaWMgdGVpbHQgRGlyIG1pdDogQXBwbGF1cyBnZXpvbGx0LgpEdSB0ZWlsc3QgRWxyaWMgbWl0OiBBbnR3b3J0ZXN0IER1IGF1ZiBGcmFnZW4gbmljaHQsIC8gc28ga29tbSBpY2ggbmljaHQsIER1CkR1IHRlaWxzdCBFbHJpYyBtaXQ6IGJsb2VkZXIgV2ljaHQhCkVscmljIHRlaWx0IERpciBtaXQ6IGFscyBkdSB0YXRzdCB3YXMgZGljaHRlbiB3b2xsZW4gLyB0YXRzIGRpciB3b2hsIHVlYmVyCkVscmljIHRlaWx0IERpciBtaXQ6IHNlbiBzY2hpcm0gc2Nyb2xsZW4uCkR1IHRlaWxzdCBFbHJpYyBtaXQ6IFV1dXVoLCB1bnBhc3NlbmRlIEFuemFobCBTaWxiZW4uLi4KRHUgdGVpbHN0IEVscmljIG1pdDogTWl0bmljaHRlbiBzY3JvbGx0JyBlcyByYXVzIGFsbGhpZSwgLyBpY2ggc2NoYXV0ZSBob2NoCkR1IHRlaWxzdCBFbHJpYyBtaXQ6IHVuZCBmYW5kIGVzIG5pZSEKPiBFbHJpYyB0ZWlsdCBEaXIgbWl0OiBkZXIgZWxyaWMgamEsIGRlciB0b2xsZSBoZWNodCAvIGZhZWhydCBqZXR6dCBuYWNoCmhhdXNlLApFbHJpYyB0ZWlsdCBEaXIgbWl0OiBnYXIgbmljaCBzY2hsZWNodC4KRWxyaWMgdGVpbHQgRGlyIG1pdDogZGllIHNpbGJlbiByaWNodGlnLCBudXIgZGllIGJldG9udW5nIC8gYmVkdXJmdGUgZWluZXMKRWxyaWMgdGVpbHQgRGlyIG1pdDogZ3JhbnMgR2V3b2hudW5nLgpEdSB0ZWlsc3QgRWxyaWMgbWl0OiBJY2ggbmVobWUgYW4sIHp1bSBHZW1lbndlZy4uLiAvIE5hY2ggR2ltYnRlIHJhZGVsbj8gRHU/PwpEdSB0ZWlsc3QgRWxyaWMgbWl0OiAtLSBadSB0cmFlZyEKRHUgdGVpbHN0IEVscmljIG1pdDogSWNoIGhvZmZlLCBpY2ggdmVybGVybmUgbmllIC8gZGFzIFNjaGF1ZGVybiBiZWkgc29sY2gKRHUgdGVpbHN0IEVscmljIG1pdDogUG9lc2llLgpEdSB0ZWlsc3QgRWxyaWMgbWl0OiBTaWVodCBhdXMsIGFscyBsaWVidGUgd2VyIGRhcyBEaWNodGVuIC8gdW5kIHdpcmQKRHUgdGVpbHN0IEVscmljIG1pdDogenVydWVja2dlbGllYnQgbWl0bmljaHRlbi4KRWxyaWMgdGVpbHQgRGlyIG1pdDogZGVuIHdpbGhlbG0gYnVzY2gsIGRlbiB0YWV0cywgaWNoIHNhZ2UgLyB3dWVyZCBlciBkaWVzCkVscmljIHRlaWx0IERpciBtaXQ6IHNlaG4sIHVtZHJlaG4gaW0gR3JhYmUuCkR1IHRlaWxzdCBFbHJpYyBtaXQ6IFNvbGwgaWNoIGRpZXMgcG9zdGVuPyBMZXV0ZSBoYXJybiAvIGF1ZiBOYWNocmljaHRlbiBpbgpEdSB0ZWlsc3QgRWxyaWMgbWl0OiBSdWJyaWsgIlNjaG1hcnJuIi4KCgpUamEsIHVuZCBudW4gbGVzdCBpaHIgZXMgaGllci4uLiBFciB3aXJkIG1pY2ggaGV1dGUgYWJlbmQgdmVybXV0bGljaAp1bWJyaW5nZW4uLi4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWndlaSBQb2VodGVuLi4uIChBcmFueWEsICA4LiBNYWkgMTk5NSwgMTc6MzM6MDYpOgojISBybj1ZZW5kaSBydD03OTk5NDY3ODcKS0xBQUFBQUFBQUFTU1NTU1NTU0UhCgpNaXQgQWJzdGFuZCBkYXMgQmVzdGUsIHdhcyBpY2ggc2VpdCBsYW5nZW0gaW4gZGVyIE1QQSBnZWxlc2VuIGhhYiEKCkFyYW55YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmV0dGV0IGRlcyBHZW5pdGl2cyEgKFllbmRpLCAgOC4gTWFpIDE5OTUsIDE3OjUwOjA1KToKClRvbGwhIERhIGhhdCBzaWNoIGFiZXIgamVtYW5kIE11ZWhlIGdlZ2ViZW46Cgo+IERlciBCdW1lcmFuZyBzY2h3aXJydCBrbmFwcCBhbiBkZXIgU3Bpbm5lIEtvcGYgdm9yYmVpLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBvZWh0IChFbHJpYywgIDguIE1haSAxOTk1LCAxODoxMDoxOSk6CgpEZXIgc2FndCwgbWljaCBsaWVidCBkYXMgRGljaHRlbiBuaWNodAptaXRuaWNodGVuISwgZGVyIGlzdCBuaWNodCBnYW56IGRpY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBpbSBXYWxkIChFbHJpYywgIDkuIE1haSAxOTk1LCAyMDo0NjozOCk6Cj5nCkRlciBXYWxkd2VnIGZ1ZWhydCBkdXJjaCBkZW4gZXRjLiBldGMuLi4uLgpFaW4gV2Vnd2Vpc2VyLgpQZWdhc3VzLCBkYXMgRmxpZWdlbmRlIFBmZXJkLgo+c2NoYWV0emUgUGVnYXN1cwpFaW4gUGVnYXN1cyBsZWJ0IGRvY2ggbmljaHQhCkVpbiBmbGllZ2VuZGVzIFBmZXJkIGhlYnQgZ2VyYWRlIGFiLgoKCkRhIG11ZGRldCBtYW4gaGllciAgc2VpdCAyLDUgSmFocmVuIHVuZCBzaWVodCBpbW1lciBtYWwgd2FzIG5ldWVzLiBUb3RlClBlZ2FzaS4gdHNrLCB0c2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbmV1bGljaCBpbSBXYWxkIChNaXJvLCAxMC4gTWFpIDE5OTUsIDA5OjQ2OjU0KToKIyEgcm49RWxyaWMgcnQ9ODAwMDQ1MTk4CkhpIGlocnMKYnkgdGhlIHdheTogZGVyIFBsdXJhbCB2b24gUGVnYXN1cyBoZWlzc3QgYXVjaCBQZWdlc3VzIChpcyBsYXQuCnUtRGVrbGluYXRpb24pClNlaXQgd2FubiBnaWJ0IGVzIHVlYnJpZ2VucyBtZWhyIGFscyBlaW5zIHZvbiBkZW4gVmllY2hlcm4gYmVpIHVucz8KTWlybyAoZGVyIHNpY2ggZXJzdCBlaW5lbiBEdWRlbiBnZWthdWZ0IGhhdCB1bmQgbWl0dGVscyBzb2xjaGVyIFN0YXRtZW50cwp2ZXJzdWNodCBpaG4genUgYW1vdGlzaWVyZW4uLi4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IG5ldWxpY2ggaW0gV2FsZCAoRW5neXd1Y2ssIDEwLiBNYWkgMTk5NSwgMDk6NDg6MzgpOgojISBybj1NaXJvIHJ0PTgwMDA5MjAxNApIYWV0dGVzdCBEaXIgZ2xlaWNoIG5vY2ggZWluIEZyZW1kd29lcnRlcmxleGlrb24gZGF6dWthdWZlbiBzb2xsZW4uIEVzIGhlaXNzdAoiYW1vcnRpc2llcmVuIiB1bmQgbmljaHQgImFtb3Rpc2llcmVuIiA7KQoKRW5neXd1Y2sgLSBPaG5lIER1ZGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBuZXVsaWNoIGltIFdhbGQgKE1pcm8sIDEwLiBNYWkgMTk5NSwgMDk6NTY6MTcpOgojISBybj1Fbmd5d3VjayBydD04MDAwOTIxMTgKRGFua2UgZnVlciBkZW4gVGlwLi4uIGpldHp0IHdhciBlcnN0IGRlciBTcHJpY2h3b2VydGVyZHVkZW4gZHJhbi4uLgpJY2ggc2FjaCBFdWNoOiBtYW4ga3VnZWx0IHNpY2ggdm9yIGxhY2hlbi4uLgpNaXJvIChkZXIgc2Nob24gbWFsIGF1ZiBlaW5lbiBGcmVtZHdvZXJ0ZXJkdWRlbiBzcGFydCB1bmQgYmlzIGRhaGluIG5hY2h0cwppbW1lciBTcHJpY2h3b2VydGVyIGxpZXN0ICh3ZW5uIGVyIG5pY2h0IG11ZGV0KSA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGltIEludGVybmV0Li4uIChZZW5kaSwgMTAuIE1haSAxOTk1LCAxNDozMDozNSk6CgpXaG8gaXMgR2VuZXJhbCBGYWlsdXJlLCBhbmQgd2h5IHRoZSBmKiprIGlzIGhlIHJlYWRpbmcgX215XyBkaXNrPz8/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbmV1bGljaCBpbSBXYWxkIChKb2YsIDEwLiBNYWkgMTk5NSwgMTU6NTg6NTQpOgojISBybj1Fbmd5d3VjayBydD04MDAwOTIxMTgKCiBWZXJtdXRsaWNoIGhhc3QgZHUgaWhuIG1pc3N2ZXJzdGFuZGVuLCBlciBtZWludGUgd29obCBhdG9taXNpZXJlbiA6KQoKIEpvZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmVzdCBPZiBQdXR6dGV1ZmVsIChNZXNpcmlpLCAxMC4gTWFpIDE5OTUsIDIxOjA4OjI0KToKQmVzdCBPZiBQdXR6dGV1ZmVsIChUTSkgKGMpIGJ5IFphcmRvegpEdSBmdWVobHN0IERpY2gga3JhbmsuCkVpbmUgTGVpY2hlIHdpcmQgdm9uIGVpbmVtIFB1dHp0ZXVmZWwgdm9sbCBIaW5nZWJ1bmcgdmVyc3BlaXN0LgpbQmVpbGVpZDogUHV0enRldWZlbF0gRGFzIGtvbW10IGRhdm9uLCBEdSBTY2htdXR6ZmluayEKRGVpbiBLb3BmIHNjaGVpbnQgenUgZXhwbG9kaWVyZW4uCkRlciBQdXR6dGV1ZmVsIHNhZ3Q6IEVpbiBXaXNjaCB1bmQgYWxsZXMgaXN0IHdlZy4KRGVyIFB1dHp0ZXVmZWwgdmVyc3RyZXV0IFJhdHRlbmdpZnQuCkRlciBQdXR6dGV1ZmVsIG5lcnZ0IGdld2FsdGlnLgpEZXIgUHV0enRldWZlbCBzYWd0OiBXYXNjaCBEaXIgZXJzdG1hbCBEZWluZSBPaHJlbiAoYykgV3V0ei4KRGllIEdsb2NrZW4gdm9uIE1vcm9uLCB2b20gUHV0enRldWZlbCBhYmdlc3RhdWJ0LCBlcmtsaW5nZW4gdWViZXIgZGFzIExhbmQuCltHcmF0czogUHV0enRldWZlbF0gRGFua2UsIGRhc3MgaWhyIFNjaG11dHpmaW5rZW4gZXVjaCBuaWNodCBkaWUgRnVlc3NlCmFicHV0enQhCkRlciBQdXR6dGV1ZmVsIGZpbmRldCBlaW5lbiBaYXViZXJ0cmFuayB1bnRlciBkZXIgZGlja2VuIFN0YXVic2NoaWNodC4KRGVyIFB1dHp0ZXVmZWwgdmVybmljaHRldCBlaW5lIERhZW1vbmVuaG9zZS4KRGVyIFB1dHp0ZXVmZWwgcnVmdDogSXN0IGhpZXIgZWluIERyZWNrIQpbTFBDOiBQdXR6dGV1ZmVsXSBHaWJ0IGVzIGVpbmUgUHJvcGVydHkgZnVlciBTYXViZXJrZWl0PwpEZXIgUHV0enRldWZlbCBkZXNpbnRlZ3JpZXJ0IGVpbmUgUmF0dGUuCkRlaW4gR2VsZGJldXRlbCBpc3QgbGVpY2h0ZXIgZ2V3b3JkZW4uCkVpbiBQdXR6dGV1ZmVsIGxhZXVmdCBnZWdlbiBlaW5lbiBhdWZnZW1hbHRlbiBEdXJjaGdhbmcgaW0gT3N0ZW4uCkRpZXMgaXN0IGVpbiBtYWVjaHRpZ2VyIFB1dHp0ZXVmZWwsIGRlbiBkaWUgRGFlbW9uZW4gZW5nYWdpZXJ0IGhhYmVuLCB1bSBmdWVyClNhdWJlcmtlaXQgdW5kIE9yZG51bmcgaW4gZGVyIEJ1cmcgenUgc29yZ2VuLgpFciBpc3QgYWJzb2x1dCBmaXQuCkVyIHRyYWVndCBiZWkgc2ljaDoKRWluIExhcHBlbiAoZ2V6dWVja3QpLgpbTW9lcmRlcjogR2Vpc3QgZWluZXMgU2NobXV0emZpbmtlbl0gUHV0enRldWZlbCBpc3Qgc2F1YmVyZXIgYWxzIGljaCBkYWNodGU6KApEZWluIEdlbGRiZXV0ZWwgaXN0IHNjaHdlcmVyIGdld29yZGVuLgpEYXMgVW50aWVyIHRlaWx0IERpciBtaXQ6IEZyYWcgZG9jaCBTY2hydW1wZmkhCkRlciBQdXR6dGV1ZmVsIHZlcnNjaHdpbmRldCBtaXQgS25hbGwgdW5kIFNjaHdlZmVsZHVmdC4KRHUgaGFzdCBqZXR6dCAxMDI0IExlYmVuc3B1bmt0ZSB1bmQgNTEyIE1hZ2llcHVua3RlLgpVbmd1ZWx0aWdlIExlYmVuc3B1bmt0ZSEgQml0dGUgdmVyc3RhZW5kaWdlIGVpbmVuIEVyem1hZ2llci4KQW5keSBzcHVja3QgRGljaCBhbi4KRWluIFB1dHp0ZXVmZWwuCj4gRGVyIFB1dHp0ZXVmZWwgc2luZ3Q6IEljaCB3aXJiZWwgdW5kIHp3aXJiZWwgaW1tZXJmb3J0LApEZXIgUHV0enRldWZlbCBzaW5ndDogQmluIG1hbmNobWFsIGhpZXIgdW5kIG1hbmNobWFsIGRvcnQuCkVpbiByaXNzaWdlcyBVbnRpZWhyIGtvbW10IGFuLgpEZXIgUHV0enRldWZlbCBzdGF1YnQgRGVpbmVuIFJ1ZWNrZW4gYWIuCk1lc3NhZ2UgZnJvbSBQdXR6dGV1ZmVsIHRvIHlvdToKSGFsbG8gRHUhCkhpZXIgc3ByaWNodCBkZXIgUHV0enRldWZlbC4gQml0dGUgaGFsdGUgZGVpbmUgVW13ZWx0IHNhdWJlci4hCltFbmQgb2YgbWVzc2FnZV0KCkRlciBQdXR6dGV1ZmVsIHNjaHdpbmd0IGJlZHJvaGxpY2ggc2VpbmVuIExhcHBlbi4KWmFyZG96IHRlaWx0IERpciBtaXQ6IEdpYiBkZW0gUHV0enRldWZlbCBtYWwgZWluZW4gVHJpdHQhCkRlciBQdXR6dGV1ZmVsIG9lZmZuZXQgZWluIERpbWVuc2lvbnN0b3IgdW5kIGhvbHQgbmV1ZW4gU3RhdWIgaGVydm9yLgpEZXIgUHV0enRldWZlbCBpc3QgbWFsIHdpZWRlciB1bmF1c3N0ZWhsaWNoLgpbSW50ZXJtdWQ6IFB1dHp0ZXVmZWxdIElzIGFlbnliYWRpZSBhdXQgaGllcj8KW0ludGVybXVkOiBQdXR6dGV1ZmVsXSBJcyBhZW55YmFkaWUgYXV0IGhpZXI/CiBEZXIgUHV0enRldWZlbCBzYWd0OiBBbHNvLCBudW4gcmVpY2h0IGVzIG1pciB3aXJrbGljaC4gSWNoIHdlaXNzLCBpY2gKbmVydmUsCkRlciBQdXR6dGV1ZmVsIHNhZ3Q6IGFiZXIgZXMgbXVzcyBqZXR6dCBlbmRsaWNoIGVpbm1hbCBnZXNhZ3Qgd2VyZGVuISBJY2gKRGVyIFB1dHp0ZXVmZWwgc2FndDogd2VyZGUgamV0enQgbmljaHQgbWVociBsYWVuZ2VyIHNjaHdlaWdlbi4gQWxzbyBob2VyCkRlciBQdXR6dGV1ZmVsIHNhZ3Q6IGd1dCB6dSwgd2FzIGljaCBkaXIgamV0enQgenUgc2FnZW4gaGFiZSEKRGVyIFB1dHp0ZXVmZWwgc2FndDogTGF1c2NoZSBtZWluZW4gV29ydGVuOgpEZXIgUHV0enRldWZlbCBzYWd0OiBEdSBiaXN0IGVpbiBTQ0hNVVRaRklOSyEgRHUgd2Vpc3N0IGVzIHVuZCBkdSBtYWNoc3QKRGVyIFB1dHp0ZXVmZWwgc2FndDogZWluZmFjaCBuaWNodHMgZGFnZWdlbi4gSWNoIGZpbmRlIGRhcyBlaW5mYWNoIGVpbmUKRGVyIFB1dHp0ZXVmZWwgc2FndDogVW52ZXJzY2hhZW10aGVpdCEgSWNoIGhhYmUgbGFuZ3NhbSBrZWluZSBMdXN0IG1laHIKRGVyIFB1dHp0ZXVmZWwgc2FndDogZGVuIERyZWNrIGZ1ZXIgYW5kZXJlIExldXRlIHdpZSBkaWNoIHdlZ3p1cmFldW1lbi4KRGVyIFB1dHp0ZXVmZWwgc2FndDogVW5kIGthdW0gaGFiZSBpY2ggaHVuZGVydGUgdm9uIGR1bW1lbiBHZWdlbnN0YWVuZGVuCkRlciBQdXR6dGV1ZmVsIHNhZ3Q6IGdlbm9tbWVuLCBzY2hvbiB3ZXJkZSBpY2ggYW5nZWdyaWZmZW4gdW5kIHZpZWxsZWljaHQKRGVyIFB1dHp0ZXVmZWwgc2FndDogZ2V0b2V0ZXQhISEgV2VubiBkYXMgc28gd2VpdGVyIGdlaHQsIGRhbm4gbXVzcyBpY2ggd29obApEZXIgUHV0enRldWZlbCBzYWd0OiBtaXQgWmFyZG96IHJlZGVuLCBkYW1pdCBlciBtaWNoIHN0YWVya2VyIG9kZXIgbm9jaApiZXNzZXIKRGVyIFB1dHp0ZXVmZWwgc2FndDogdW5iZXNpZWdiYXIgbWFjaHQhIERhbm4gd2VyZGV0IGlociBzY2hvbiBzZWhlbiwgd2FzIGlocgpEZXIgUHV0enRldWZlbCBzYWd0OiB2b24gZXVyZW4gR2VtZWluaGVpdGVuIGhhYnQhIEljaCB3ZXJkZSBkYW5uIG5hZW1saWNoCkRlciBQdXR6dGV1ZmVsIHNhZ3Q6IG51ciBub2NoIGV1cmUgTGVpY2hlbiBiZXNlaXRpZ2VuIG11ZXNzZW4uCkRlciBQdXR6dGV1ZmVsIHNhZ3Q6IFNvLCBkYXMgbXVzc3RlIGVpbmZhY2ggbWFsIGdlc2FndCB3ZXJkZW4hISEhIQpEZXIgUHV0enRldWZlbCBuZXJ2dCBEaWNoIGdsZWljaCB6dSBUb2RlIQpFaW5lIE1hdXMgZW50a29tbXQgZGVtIExhcHBlbiBkZXMgVGV1ZmVscyBpbiBsZXR6dGVyIFNla3VuZGUuCkRlciBUb2Qgc2FndDogS09NTSBNSVQgTUlSIFNURVJCTElDSEVSIQpEZXIgVG9kIHNhZ3Q6IFdBUlVNIEhBU1QgRFUgQVVDSCBERU4gUFVUWlRFVUZFTCBHRU5FUlZUPz8/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2lsZGVuaWRlZSAoUHRlcHBpYywgMTEuIE1haSAxOTk1LCAxMTowNDoyMCk6CldpZSB3YWVyZSBtaXQgZWluZXIgVGVjaG5vLSBvZGVyIFJhdmVnaWxkZT8KCgo+c2NoYWV0eiBvcmsKRGVyIE9yayBpc3QgZXR3YSBnbGVpY2ggc3Rhcmsgd2llIER1LgpEaWUgR2Vob2Vyc2NodXR6IGRlcyBPcmtzIGlzdCBiZXNzZXIgYWxzIERlaW5lci4KRGVpbmUgTXVzaWsgaXN0IGVpZ2VudGxpY2ggdmllbCB6dSBzY2hsZWNodCBmdWVyIGRpZXNlbiBHZWduZXIuCgo+PnRvZXRlIG9yawpEdSBncmVpZnN0IGRlbiBPcmsgbWl0IGVpbmVyIE1hcnVzaGEtQ0QgYW4uCkR1IHRyaWZmc3QgZGVuIE9yayBtaXQgMjUwIGJwbS4KRGVyIE9yayB3aW5zZWx0IHVtIEduYWRlLgpEZXIgT3JrIGdyZWlmdCBkaWNoIG1pdCBlaW5lbSBTY2h3ZXJ0IGFuLgpEZXIgT3JrIGtpdHplbHQgRGljaCBhbSBCYXVjaC4KRHUgZ3JlaWZzdCBkZW4gT3JrIG1pdCBTY29vdGVyIGFuLgpEdSB0cmlmZnN0IGRlbiBPcmsgaHlwZXItaHlwZXItbWFlc3NpZy4KLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2lsZGVuaWRlZSAoSGlnaGxhbmRlciwgMTEuIE1haSAxOTk1LCAxMTowNToxMyk6CiMhIHJuPVB0ZXBwaWMgcnQ9ODAwMTgzMDYwCkFsc28gYmVpIFRlY2hubyBvZGVyIFJhdmUgaXN0IGRpZSBNdXNpawpkb2NoIHNvd2llc28gdmllbCB6dSBzY2hsZWNodCwgZWdhbCBmdWVyIHdhcy4uLgoKICAgSGlnaGxhbmRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHaWxkZW5pZGVlIChSdWRpcmF0dGVyLCAxMS4gTWFpIDE5OTUsIDExOjA2OjQ3KToKIyEgcm49SGlnaGxhbmRlciBydD04MDAxODMxMTMKRHUga2VubnN0IFN0ZXZlIE1hc29uIG5pY2h0IQpSdWRpCkFjaCBzbzoKQkZCUywgc2Ftc3RhZ3MgYWIgMTggVWhyIGJpcyAyMCBVaHIgdW5kIGF1Y2ggendlaW1hbCBpbiBkZXIgV29jaGUsIGljaCBnbGF1YgpmcmVpdGFncyBuYWNodHMgdW0gMSB1bmQgaXJlZ25kd2Fubm1pdHR3b2NocyB1bSAyMCB1aHIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2lsZGVuaWRlZSAoQmVsZGluLCAxMS4gTWFpIDE5OTUsIDE2OjUxOjUyKToKIyEgcm49UHRlcHBpYyBydD04MDAxODMwNjAKT2VtbW0gbmFqYS4uLgpJbSBQcmluemlwIGdlZmFlbGx0IG1pciBkaWUgRWluc3RlbGx1bmcuLi4KQWJlciBkYW5uIG11ZXNzdGUgbWFuIGF1Y2ggZ2VyZWNodGVyd2Vpc2UgbmUgIk1hbm93YXIiLUdpbGRlIHJhdXNicmluZ2VuIDotKQpEaWUgTGV1dGNoZW4gaGFiZW4gd2VuaWdzdGVucyBub2NoIGRpZSBwYXNzZW5kZSBNdXNpayB6dW0gRmFudGFzeS1TY2hsYWNodGVuIQpXZW5uIGF1Y2guLi4gaWNoIGdlYmUgZXMgenUuLi4gZWluaWdlIFRleHRlICh6dW1pbmRlc3RlbnMpIEZSQUdXVUVSRElHIHNpbmQKOj4uCgpHcmluc2VuZCAoc2NobGllc3NsaWNoIGlzdCBkYXMgaGllciBTY2htYXJybiBvZGVyPyAqc2NoYXUgdmVyd2lycnQgdW0gc2ljaCopCgogICAgICAgQmVsZGluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBuZXVsaWNoIGltIFdhbGQgKE1pcm8sIDExLiBNYWkgMTk5NSwgMTc6NTk6MjcpOgojISBybj1Kb2YgcnQ9ODAwMTE0MzM0CkVuZGxpY2ggamVtYW5kIGRlciBtaWNoIHZlcnN0ZWh0Li4uCm9kZXIgd2FyJ3MgZ29ldHRsaWNoZSBFaW5nZWJ1bmc/Ck1pcm8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplbGZlbiZjbyAoR3VtcHksIDExLiBNYWkgMTk5NSwgMTg6MzA6NTUpOgpFaW5lIEdhZXJ0bmVyaW4ga29tbXQgYW4uCkRlciBFbGZlbndhZWNodGVyIGdpYnQgZGVuIExpY2h0cGFuemVyIGFuIGRlbiBFbGZlbndhZWNodGVyLgpEZXIgRWxmZW53YWVjaHRlciBnaWJ0IGRlbiBMZWRlcnNjaGlsZCBhbiBkZW4gRWxmZW53YWVjaHRlci4KRGVyIEVsZmVud2FlY2h0ZXIgZ2lidCBkYXMgTGFuZ3NjaHdlcnQgYW4gZGVuIEVsZmVud2FlY2h0ZXIuCk9PcHMsIGRpZSB1bnRlcnN0dWV0emVuIHNpY2ggZG9jaCBtZWhyIGFscyBpY2ggZGFjaHRlIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmYWQuIChIYXdrLCAxMi4gTWFpIDE5OTUsIDAwOjU2OjQ5KToKSWNoIGxpZWcgaW0gQmV0dCwgdW5kIG1pciBpc3QgZmFkLgp1bmQgaW4gZGVyIFplaXR1bmcgZ2lidCdzIGF1Y2ggbmljaHRzLgpIQVdLLCBkZXIgYXVmIEFydGlrZWwgd2FydGV0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHaWxkZW5pZGVlIChXdXIsIDEyLiBNYWkgMTk5NSwgMDY6MjY6NDMpOgojISBybj1CZWxkaW4gcnQ9ODAwMjAzOTEyCkhtbW0sIG5lIE1hbm93YXItR2lsZGUuLi4ubmljaHQgZ2FueiB1bnBhc3NlbmQgOikKSWNoIGJpbiBkYWZ1ZXIhCld1cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluZXIga2VubnQgZGVuIFdlZy4uLiAoTW9ub3RvbmksIDEyLiBNYWkgMTk5NSwgMTI6MTI6NDIpOgo+IFNjaG5lZSwgRWlzLCBIYWdlbC4gVWViZXJhbGwgc2llaHQgZXMgd2Vpc3MgYXVzLgpEdSBoYXN0IGhvZmZlbnRsaWNoIG5pY2h0IGRpZSBPcmllbnRpZXJ1bmcgdmVybG9yZW4/CkVzIGdpYnQgdmllciBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4sIHdlc3Rlbiwgbm9yZGVuIHVuZCBvc3Rlbi4KPiBzCkVpbiBCb3RlIGtvbW10IGhlcmVpbmdlaGFzdGV0IHVuZCBiZWdpbm50IHdpbGQgenUgZnVjaHRlbG4gdW5kIHp1IHBsYXBwZXJuOgonRmVsYWd1bmQgaGF0IGdlcmFkZSBUenVpb3AgenVtIER1ZWxsIGhlcmF1c2dlZm9yZGVydCEgSWhyIG11ZXNzdApzY2huZWxsIGluIGRpZSBXdWVzdGUgenVyIEthbXBmYXJlbmEgbGF1ZmVuLCBkYXMgZHVlcmZ0IGlociBldWNoIG5pY2h0CmVudGdlaGVuIGxhc3NlbiEnClVuZCBzY2hvbiBoYXN0ZXQgZXIgd2llZGVyIHJhdXMuClNjaG5lZSwgRWlzLCBIYWdlbC4gVWViZXJhbGwgc2llaHQgZXMgd2Vpc3MgYXVzLgpEdSBoYXN0IGhvZmZlbnRsaWNoIG5pY2h0IGRpZSBPcmllbnRpZXJ1bmcgdmVybG9yZW4/CkVzIGdpYnQgdmllciBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4sIHdlc3Rlbiwgbm9yZGVuIHVuZCBvc3Rlbi4KCgpIYXR0ZSBkZXIgbWljaCBuaWNodCBtaXRuZWhtZW4ga29lbm5lbiA/Pz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuIChUb2V0ZXIsIDE0LiBNYWkgMTk5NSwgMTQ6NTg6MjIpOgpTbywgZGFtaXQgZGllIGFybWVuIExldXRlLCBkaWUgaGllciBhbSBXb2NoZW5lbmRlIGlocmUgU2NoaWNodAphYmRydWVja2VuIG11ZXNzZW4sIHdhcyB6dSBsZXNlbiBoYWJlbiwgaGllciBtYWwgZWluIHBhYXIKbmV0dGUgR2FtZXNtYXN0ZXItWml0YXRlIGF1cyAnbmVyIEdyYXkgV29ybGQgKFJvbGVtYXN0ZXIgRmFuemluZSk6CgotIlRoZXJlIGFyZSB0d28gdHlwZXMgb2YgTlBDczogdGhvc2UgdGhhdCBwcm9maXQgZnJvbSB5b3VyIGRlYXRoCiAgYW4gdGhvc2UsIHRoYXQgcHJvZml0IGZyb20geW91ciBodW1pbGlhdGlvbi4iCgotIlRoZXJlIGFyZSB0aHJlZSB0eXBlcyBvZiBtYWdpYyBpdGVtczogd2VhaywgY3Vyc2VkIGFuZCBOUEMKICBvbmx5LiIKCi0iVGhlIFZhbXBpcmUgY3J1c2hlcyB5b3VyIGhvbHkgU3ltYm9sIHRvIHBvd2Rlci4uLiIKCi0iRml2ZSBtb3JlIG9mIHRob3NlIHVuZGVhZCBsb29raW5nIGFzc2Fzc2luIHRoaW5ncyBtYXRlcmlhbGl6ZQogIHJpZ2h0IGJlaGluZCB5b3UuLi4iCgotIlBsYXRpbnVtIGFuIG1pdGhyaWwgYXJlbid0IHdvcnRoIGFueXRoaW5nIGhlcmUuIE9ubHkgY29wcGVyICIKICJhbmQgdGluLiIKCi0iSXQncyBhbm90aGVyIERyYWdvbi4uLiIKCi0iSXQncyBhbm90aGVyIExpY2guLi4iCgotIllvdSB3YWtlIHVwIGFuZC4uLiIKCi0iQSB3aG9sZSBGbGVldCBkcm9wcyBvdXQgb2YgaHlwZXJzcGFjZSBhbmQgdGVycmFmb3JtcyB5b3VyCiAgd29ybGQgYmVmb3JlIHlvdSBjYW4gYWN0LiIKCi0iWW91IGRpZG4ndCBub3RpY2UgeW91ciBhcm1vdXIgaGFkIGJlZW4gc3RvbGVuIHVudGlsIGhlIGhpdAogIHlvdS4iCgotIllvdSBjb21lIGJhY2sgdG8gdGhlIGJhcmdlLCBhbmQgZmluZCBhbGwgeW91ciBtZW4tYXQtYXJtcwogIGRlYWQuIEhvdz8gV2VsbCBpdCBsb29rcyBhcyBpZiB0aGV5IGhhZCBraWxsZWQgZWFjaCBvdGhlci4iCgotIml0cyBhbm90aGVyIFZhbXB5cmljIERyYWNvbGljaC4uLiIKCi0iWW91IHJldHVybiB0byB5b3VyIHdvcmxkIGFuZCBpdCdzIGdvbmUuIgoKLSJZb3UgX2Rvbid0XyB3YWtlIHVwIGFuZC4uLiIKCi0iSGUgd2Fsa2VkIG91dCB0aGUgZnJvbnQgZG9vciwgeW91IGp1c3QgZGlkbid0IG5vdGljZS4iCgotIkkga25vdyBpdCdzIGEgbG93IG1hZ2ljIENhbXBhaWduLCBidXQuLi4iCgotInRoZSBuaWNlIHlvdW5nIGJveSBpbiB0aGUgdGVudC1tYWtlcnMgc2hvcCB3YXMgYWN0dWFsbHkgYQogIFZhbXBpcmUgTG9yZC4iCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBhdWYgZGVyIFZlcmVpbnNzaXR6dW5nLi4uIChZZW5kaSwgMTUuIE1haSAxOTk1LCAxMzoyNTozMyk6CgpWb3JzaXR6ZXI6CiJXZXIgc3RpbW10IGRlbSBBbnRyYWcgenU/IgoiV2VyIHN0aW1tdCBkYWdlZ2VuPyIKIldlciB3ZWlzcywgd29ydWViZXIgZXIgZ2VyYWRlIGFiZ2VzdGltbXQgaGF0PyIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLb21pc2NoLi4uIChZZW5kaSwgMTUuIE1haSAxOTk1LCAxNDoyMjowMyk6CgpJY2ggYmluIGluIGRlciBTU1AsIGVzIGlzdCBkdW5rZWwuIEZlaW4uCkthcmF0ZWthIGtvZW5uZW4gamEga2VpbmVuIExpY2h0c3BydWNoIG1laHIuIFRvbGwuCkVnYWwuIEljaCByZW5uZSBhbHNvIGluIGRlciBHZWdlbmQgcnVtIHVuZCBzZWhlOgoKRmluc3Rlcm5pcy4KPiB3CkZpbnN0ZXJuaXMuCj4gRGVyIFN0YWhsZHJhY2hlIHNjaG5hdWJ0IGxhdXQuCkRlciBTdGFobGRyYWNoZSB3YWVsenQgc2ljaCBoZXJ1bS4KRGVyIFN0YWhsZHJhY2hlIHNjaGF1dCBEaWNoIG1pdCBzdGFlaGxlcm5lbSBCbGljayBhbi4KCgpEcm9sbGlnLCB3YXM/IERhc3MgaWNoIF9ob2VyZV8sIHdpZSBlciBzY2huYXVidCB1bmQgc2ljaCBoZXJ1bXdhZWx6dCwgT0suCkFiZXIgc2VpbmVuIF9CbGlja18gX2hvZXJlbl8/Pz8gSGlsZmUuLi4gIFN0YWhsaGFydCBoYWx0LiAqZ2xtcCoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS29taXNjaC4uLiAoQmFib29uLCAxNS4gTWFpIDE5OTUsIDE0OjQxOjQ5KToKIyEgcm49WWVuZGkgcnQ9ODAwNTQwNTIzCgpEYSBpc3QgaGFsdCBkYXMgZ2xlaWNoZSwgd2llIHdlbm4gbWFuIGluIGVpbmVtIFJhdW0gb2huZSBBdXNnYW5nIHJ1bXN0ZWh0LAp1bmQgZGVyIEFyZW5hYm90ZSBrb21tdCByZWluZ2VyYW5udC4gRGEgd3VuZGVydCBtYW4gc2ljaCBhdWNoIGVpbiB3ZW5pZy4gOi0pCgpCYWJvb24hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXdWVybWVyLi4uIChLaXdpLCAxNS4gTWFpIDE5OTUsIDE1OjQ4OjMzKToKSG9obGkgenVja3QgcmF0bG9zIG1pdCBkZW4gU2NodWx0ZXJuLgpIb2hsaSBrbnVkZGVsdCBEaWNoLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbgpXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLAplaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbgpXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLAplaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbgpXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtLCBlaW5lbiBXdXJtIHVuZCBlaW5lbiBXdXJtLgpzYWcgZGFua2UgOikKRHUgc2Fnc3Q6IGRhbmtlIDopCj4gSG9obGkgc2FndDogdXBzCgoqZ3JpbnMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmbHcgKFRvZXRlciwgMTUuIE1haSAxOTk1LCAyMTozMDowNCk6Ckdhc3QxIHJ1ZnQ6IGhhdCBqZW1hbmQgdm9uIGVpbmVyCkdhc3QxIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoLCBhdWYgZGVyIFZlcmVpbnNzaXR6dW5nLi4uIChNYXRlZXNlLCAxNS4gTWFpIDE5OTUsIDIzOjUwOjI2KToKIyEgcm49WWVuZGkgcnQ9ODAwNTM3MTMzCk1vbWVudCwgcmVkZW4gd2lyIHZvbiBkZXIgU2l0enVuZywgYXVmIGRlciBhdWNoIGRpZSBGZXJ0aWdzdGVsbHVuZyBlaW5lcwpTdHJpY2tzdHJ1bXBmZXMgYmVrYW5udGdlZ2ViZW4gd3VyZGU/CiAtLSBNYXRlZXNlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWxpY2gsIGF1ZiBkZXIgVmVyZWluc3NpdHp1bmcuLi4gKFllbmRpLCAxNi4gTWFpIDE5OTUsIDE0OjQ5OjExKToKIyEgcm49TWF0ZWVzZSBydD04MDA1NzQ2MjYKLi4udW5kIHdvIGVpbiBTdGltbWVuemFlaGxlciBkZW4gQWZmZW4gZ2VtYWNodCBoYXQ/CgpIbW1tLi4uIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmliZWwhPyAoR3VuZHVyLCAxNi4gTWFpIDE5OTUsIDE1OjE4OjQ1KToKSGkhCkljaCB3dXNzdGUgbmljaHQgZ2VuYXUgb2IgaWNoIGRpZSBTYWNoZSBsaWViZXIgdW50ZXIgQW56ZWlnZW4gc2NocmVpYi4uYWJlcgppY2ggZGVua2UgaGllcmhlciBwYXNzdCBlcyBiZXNzZXIgOi0pCi4uLgogICAqSmV0enQgbmV1IGF1ZiAyIENEJ3M6ICJEaWUgQmliZWwgMi4wIGJldGEiKgoKTmFjaGRlbSB0cmV1ZSBBbmhhZW5nZXIgamV0enQgc2VpdCB6d2VpdGF1c2VuZCBKYWhyZW4gYXVmIGVpbiBVcGRhdGUgd2FydGVuLApnaWJ0IGVzIGVuZGxpY2ggZWluZSBuZXVlIFZlcnNpb24gZGVyIEJpYmVsLiBEaWUgRXJ3ZWl0ZXJ1bmdlbiBzaW5kIGRlcmFydGlnCnVtZmFuZ3JlaWNoLCBkYXNzIHdpciBlaW5lbiAiU3BydW5nIHZvciBkZW0gS29tbWEiIGZ1ZXIgbWVociBhbHMgbnVyCmdlcmVjaHRmZXJ0aWd0IGhhbHRlbi4KCkRpZSBuZXVlbiBGZWF0dXJlcyBpbSBlaW56ZWxuZW46CgotQW56YWhsIGRlciBHZWJvdGUgdm9uIDEwIGVyd2VpdGVydCBhdWYgMTUgaW50ZXJuZSB1bmQgNSB2b20gQmVudXR6ZXIKIGRlZmluaWVyYmFyZS4KCi0zLlRlaWw6IERhcyAiQnJhbmRuZXVlIFRlc3RhbWVudCIuCiBNaXQgRXJ3ZWl0ZXJ1bmcgIkRhcyBpcnJlIGNvb2xlIFRlc3RhbWVudCBmdWVyIEtpZHMhIiBtaXQgQXV0b2dyYW1tLQogYWRyZXNzZW4gdm9uIHouQi4gR290dCwgSmVzdXMsIE1hcmlhLgoKLVN0YXR0IGVpbmVyIGpldHp0IGJpcyB6dSB6ZWhuIEdvdHRoZWl0ZW4gbW9lZ2xpY2ghCiBBdWNoIHdlaWJsaWNoZSBHb2V0dGVyIQogIkdvdHQgQ29uc3RydWN0aW9uIEtpdCIgd2lyZCBtaXRnZWxpZWZlcnQhCgotQXVzZnVlaGxpY2hlIEJlYmlsZGVydW5nIGZ1ZXIgRWluc3RlaWdlci4KIER1cmNoIGRlbiBIeXBlcnRleHQgZnVlaHJ0ICJIZXJvZHksIGRpZSBoYXBweSBIb3N0aWUiCgotQXVmIHZpZWxmYWNoZW4gV3Vuc2NoOiBNb3NlcyBqZXR6dCBrb21wbGV0dCBlbnRmZXJudC4KCi1TZXggdm9yIGRlciBFaGU6IEpldHp0IGVybGF1YnQhCgotSG9tb3NleHVhbGl0YWV0OiBKZXR6dCBlcmxhdWJ0IQoKLURyb2dlbjogSmV0enQgRWluc3RlbGx1bmdzdm9ycmF1c3NldHp1bmcgZnVlciBQcmllc3RlciEKCi1BbmFsdmVya2VocjogU3RhdHQgVG9kc3VlbmRlIGpldHp0IGVpbmZhY2hlcyBWZXJnZWhlbiAoNSBETSBTdHJhZmUpIQoKLVdvbGx1c3QgdW5kIFZvZWxsZXJlaSB2b2xsIGltcGxlbWVudGllcnQhCgotSW4gZGVyIFNoYXJlcndhcmV2ZXJzaW9uIGVyaW5uZXJ0IGVpbiBzYWJiZXJuZGVyIFBhcHN0IGFucyBCZXphaGxlbi4KIEluIGRlciBWb2xsdmVyc2lvbiBrZWluIFBhcHN0IG1laHIhCiBJbiBkZXIgRGVsdXhlLVZlcnNpb24gd2lyZCBkZXIgQmVkaWVuZXIgc2VsYnN0IHp1bSBQYXBzdCEKCi1CaW5hZXJlciBIaW1tZWwvSG9lbGxlIFN3aXRjaCBqZXR6dCBlcndlaXRlcnQgdW0KICAgICAtIERpc25leWxhbmQKICAgICAtIE1hbGxvcmNhCiAgICAgLSBCaWxsc3RlZHQKICAgICAtIEthbXBmc3Rlcm4gR2FsYWN0aWNhCiBBdXN3YWhsIGR1cmNoIEZ1enp5IExvZ2ljIG9kZXIgcGVyIFp1ZmFsbCEKCi1TaW50Zmx1dC1PcHRpb24gZXJnYWVuenQgZHVyY2g6CiAgICAgLSBFcmRiZWJlbgogICAgIC0gQWxpZW5hdHRhY2tlIHZvbiBBbmRyb21lZGEgVkkKICAgICAtIEF0b20tR0FVCiAgICAgLSBDZW50cmFsIFNlcnZpY2VzICgwNDAgLyA3MTMgNjIgNDkpCiAgICAgLSBSb2JlcnQgRmVkZXJsZQogICAgIC0gU3BpbmF0CgotR29ldHRsaWNoZSBWZXJtZWhydW5nIHZvbiBKdW5nZnJhdWVuZ2VidXJ0IGVyd2VpdGVydCBhdWYgZGVuIG5ldWVzdGVuIFN0YW5kCiBkZXIgR2VudGVjaG5payEgSmV0enQgYXVjaCBnb2V0dGxpY2hlIFRvZWNodGVyLCBBbmRyb2lkZW4sIFJvYm90ZXIhCgotU3RhdHQgendhbmdzbGFldWZpZ2VyIEtyZXV6aWd1bmcgamV0enQgd2FobHdlaXNlCiAgIC1GaW5hbGVyIFJldHR1bmdzc2NodXNzCiAgIC1BSURTCiAgIC1BdXRvdW5mYWxsCiAgIC1TdWl6aWQKICAgLUxhdXQgQnVuZGVzZ2VzdW5kaGVpdHNhbXQgdm9lbGxpZyB1bmdlZmFlaHJsaWNoZSBMZWJlbnNtaXR0ZWxmYXJiZW4KICAgLUF0YXJpCiAgIC1CZWduYWRpZ3VuZwoKLVZvbGx2ZXJzaW9uZW4gamV0enQgbWl0IGplZGVyIE1lbmdlIFJlY2h0ZmVydGlndW5nZW4gZnVlciByZWxpZ2lvZXNlbgogRmFuYXRpc211cyEgR2V3aXNzZW5iaXNzZSB1bmQgbG9naXNjaGVzIERlbmtlbiB2b2xsIGFic2NoYWx0YmFyIQoKLUZ1ZXIgIkhFUlIiIGpldHp0IHN0YXR0IHNpbXBsZXIgR3Jvc3NzY2hyaWZ0IHZvbGxlIEFOU0ktVW50ZXJzdHVldHp1bmc6CkZhcmJlLAogSW52ZXJzLCBCbGlua2VuZC4gQXV0b3JpdGFldGVuIHdlcmRlbiBhdXRvbWF0aXNjaCBlcmthbm50LgoKLVdZU0lJQiA6ICJXaGF0IFlvdSBTZWU6IElnbm9yZSBJdC4gQmVsaWV2ZSEiCgpCZWkgYWxsZW4gRXJ3ZWl0ZXJ1bmdlbiB3dXJkZW4gc2VsYnN0dmVyc3RhZW5kbGljaCBkaWUgYmVrYW5udGVuIHVuZApiZWxpZWJ0ZW4KSW50b2xlcmFuemVuLCBVbnRlcmRydWVja3VuZ3NtZWNoYW5pc21lbiB1bmQgVW5nZXJlaW10aGVpdGVuIGF1cyBCaWJlbAoxLjAgdm9sbCB1ZWJlcm5vbW1lbi5EYWJlaSB3ZXJkZW4gYWxsZSBBdXNncmVuenVuZ2VuIGpldHp0IHZvbGwgaW50dWl0aXYKdW50ZXJzdHVldHp0LgpQZXIgS2xpY2sgU2NoYXJlbiBBbmRlcnNkZW5rZW5kZXIgdmVydGlsZ2VuOiBEYXMgZ2VodCBudXIgbWl0IEJpYmVsIDIuMCBiZXRhLgpGdWVyIG51ciAqNjY2LC0qIGJlaSBqZWRlbSBGYWNoaGFlbmRsZXIgb2RlciBkaXJla3QgYXVzIGRlbSBWYXRpa2FuLiBCaXR0ZQpWZXJyZWNobnVuZ3NzY2hlY2sgYmVpbGVnZW4uCgpTeXN0ZW12b3JyYXVzc2V0enVuZ2VuOgotU2ltcGxlIFBzeWNob2xvZ2llLCBDaGFyaXNtYSwgdmllbCBHZWxkIHVuZCBlaW5lbiBIYXVmZW4gR3V0Z2xhZXViaWdlci4KClZpZWwgU3Bhc3MgYmVpbSBiZXN0ZWxsZW4gLi46LSkKR3VuZHVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmliZWwhPyAoUXVlbmdpc3R1LCAxNi4gTWFpIDE5OTUsIDIwOjE0OjI4KToKIyEgcm49R3VuZHVyIHJ0PTgwMDYzMDMyNQpEZW4gbmV0dGVuIEFydGlrZWwgaGF0dGUgUm9jaHVzIHNjaG9uIG1hbCBpbSBsZXR6dGVuIEhlcmJzdCBnZXBvc3RldC4gQWJlcgpkZXIga29lbm50ZSBlaWdld250bGljaCBzdGFlbmRpZyBpbiBkZXIgTVBBIHN0ZWhlbiA7KS4uIGFiZXIgZWluZSBGcmFnZTsgV2VyCmlzdCBSb2JlcnQgRmVkZXJsZT8KLi4uIGVpbiByYWV0c2VsbmRlciBRdWVuZ2lzdHUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldWxpY2gsIGF1ZiBkZXIgVmVyZWluc3NpdHp1bmcuLi4gKE1hdGVlc2UsIDE2LiBNYWkgMTk5NSwgMjA6NTA6NDgpOgojISBybj1ZZW5kaSBydD04MDA2Mjg1NTEKT29rIQogLS0gTWF0ZWVzZSBicmF1Y2h0ZSBuaWNodCB2b3J6dWxlc2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmliZWwhPyAoTXVwZmVsLCAxNy4gTWFpIDE5OTUsIDAyOjQ4OjM2KToKIyEgcm49R3VuZHVyIHJ0PTgwMDYzMDMyNQpzaW50Zmx1dC1vcHRpb24gZXJnYWVuenQgZHVyY2ggJ1JvYmVydCBGZWRlcmxlJz8gOi0pCmRhbm4gd2Vpc3MgaWNoIHdvJ3MgaGVyIGlzdC4uLgotbXVwZmVsLSAobGFjaHQgaW1tZXIgbm9jaCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCaWJlbCE/IChRdWlsbGlhbiwgMTcuIE1haSAxOTk1LCAxNjoxNToyNyk6CiMhIHJuPUd1bmR1ciBydD04MDA2MzAzMjUKCkhhdHRlbiB3aXIgZG9jaCBzY2hvbm1hbCBpbiBkZXIgTVBBIDotKQoKUXVpbGxpYW4sIGJpYmVsZmVzdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmljaCBzZWggc2Nob24gYWxsZXMgZG9wcGVsdC4uLiAoTXVwZmVsLCAxOC4gTWFpIDE5OTUsIDAxOjA0OjQwKToKRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG5vcmRlbi4KR2FzdDEgdWViZXJrb21tdCBkYXMgTW9yZ2VuR3JhdWVuIC4uLi4KUnVmdXMgZGVyIEJlc2Nod29lcmVyLgpHYXN0MSB1ZWJlcmtvbW10IGRhcyBNb3JnZW5HcmF1ZW4gLi4uIChuZXR6dG90KS4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYWNocnVmIChTaWx2YW5hLCAxOC4gTWFpIDE5OTUsIDExOjQ2OjQ5KToKRHVyaWFuIHJ1ZnQ6IElnbm9yaWVydCBiaXR0ZSBhbGxlIGRlbiBCb3RlbiEhCkVuZ3l3dWNrIHJ1ZnQ6IERhcyB2ZXJzdWNoZW4gd2lyIHNjaG9uIHNlaXQgV29jaGVuIQpEdXJpYW4gcnVmdDogQmFsZCBnZWh0IGVzIHNvZ2FyIDotKQoKRWluIEJvdGUga29tbXQgaGVyZWluZ2VoYXN0ZXQgdW5kIHBsYXBwZXJ0IHZvZWxsaWcgYXVzc2VyIEF0ZW0gbG9zIDoKJ05haXJ1ZCBoYXQgZGllIGdyb3NzZW4gR2xhZGlhdG9yZW4genVtIEthbXBmIGhlcmF1c2dlZm9yZGVydCEgR2VodApzY2huZWxsIGluIGRpZSBXdWVzdGUgenVyIGdyb3NzZW4gS2FtcGZhcmVuYSB1bmQgbGFzc3QgRXVjaCBkaWVzZXMKU2NoYXVzcGllbCBuaWNodCBlbnRnZWhlbiEnCkRhbmFjaCBoYXN0ZXQgZXIgc2NobmVsbCB3ZWl0ZXIuCgoKRWluIEJvdGUga29tbXQgaGVyZWluZ2VoYXN0ZXQgdW5kIHBsYXBwZXJ0IHZvZWxsaWcgYXVzc2VyIEF0ZW0gbG9zOiAnV2FyZ29uCmhhdCBtaWNoIGdlcmFkZSB6dW0gS2FtcGYgaGVyYXVzZ2Vmb3JkZXJ0ISBHZWh0IHNjaG5lbGwgaW4gZGllIFd1ZXN0ZSB6dXIKZ3Jvc3NlbiBLYW1wZmFyZW5hIHVuZCBsYXNzdCBldWNoIGRpZXNlcyBTY2hhdXNwaWVsIG5pY2h0IGVudGdlaGVuISAuLi4gT2hhIScKTmFjaGRlbmtsaWNoIGdld29yZGVuIGhhc3RldCBlciB3ZWl0ZXIuCltBbGxnZW1laW46RHdpZ2h0XSBvY2ggbWFuLCBiZWltIHF1ZXN0ZW4gbmVydmVuIGRpZSBib3RlbgpbQWxsZ2VtZWluOkFuY2FsYWdvbl0gSmF3b2xsIFdhcmdvbiwgbWFjaCBpaG4gZmVydGlnLi4uLgoKRWluIEJvdGUga29tbXQgaGVyZWluZ2VoYXN0ZXQgdW5kIGJlZ2lubnQgd2lsZCB6dQpmdWNodGVsbiB1bmQgenUgcGxhcHBlcm46CidOYWlydWQgaGF0IGdlcmFkZSBDb25ub3IgenVtIER1ZWxsIGhlcmF1c2dlZm9yZGVydCEgSWhyIG11ZXNzdApzY2huZWxsIGluIGRpZSBXdWVzdGUgenVyIEthbXBmYXJlbmEgbGF1ZmVuLCBkYXMgZHVlcmZ0IGlociBldWNoIG5pY2h0CmVudGdlaGVuIGxhc3NlbiEnClVuZCBzY2hvbiBoYXN0ZXQgZXIgd2llZGVyIHJhdXMuCgpFaW4gQm90ZSBrb21tdCBoZXJlaW5nZWhhc3RldCB1bmQgYmVnaW5udCB3aWxkIHp1IGZ1Y2h0ZWxuIHVuZCB6dSBwbGFwcGVybjoKJ05haXJ1ZCBoYXQgZ2VyYWRlIENvbm5vciB6dW0gRHVlbGwgaGVyYXVzZ2Vmb3JkZXJ0ISBJaHIgbXVlc3N0CnNjaG5lbGwgaW4gZGllIFd1ZXN0ZSB6dXIgS2FtcGZhcmVuYSBsYXVmZW4sIGRhcyBkdWVyZnQgaWhyIGV1Y2ggbmljaHQKZW50Z2VoZW4gbGFzc2VuIScKVW5kIHNjaG9uIGhhc3RldCBlciB3aWVkZXIgcmF1cy4KCltUb2Q6XSBXYXJnb24gaGF0IGdlcmFkZSBlaW5lbiBCb3RlbiBlcnd1ZXJndC4KRWluIEJvdGUga29tbXQgaGVyZWluZ2VoYXN0ZXQgdW5kIHBsYXBwZXJ0IHZvZWxsaWcgYXVzc2VyIEF0ZW0gbG9zIDoKJ05haXJ1ZCBoYXQgZGllIGdyb3NzZW4gR2xhZGlhdG9yZW4genVtIEthbXBmIGhlcmF1c2dlZm9yZGVydCEgR2VodApzY2huZWxsIGluIGRpZSBXdWVzdGUgenVyIGdyb3NzZW4gS2FtcGZhcmVuYSB1bmQgbGFzc3QgRXVjaCBkaWVzZXMKU2NoYXVzcGllbCBuaWNodCBlbnRnZWhlbiEnCkRhbmFjaCBoYXN0ZXQgZXIgc2NobmVsbCB3ZWl0ZXIuCgoKW01hZ2llcjpXYXJnb25dIEljaCBwbGFlZGllcmUgenVtaW5kZXN0IGZ1ZXIgZWluICJzdGVsbGUgYm90ZW4gZWluIGJlaW4iCkRpZSBMZWljaGUgZWluZXMgQm90ZW4gZmFlbGx0IGhlcmVpbiB1bmQgYmVnaW5udCB3aWxkIHp1IGZ1Y2h0ZWxuIHVuZCB6dQpwbGFwcGVybjogJ1NpbHZhbmEgaGF0IG1pY2ggZ2VyYWRlIGVyc2NobGFnZW4uIElociBtdWVzc3Qgc2NobmVsbCBpbiBkaWUKV3Vlc3RlIHp1ciBLYW1wZmFyZW5hIGxhdWZlbiB1bmQgbWVpbmUgTGVpY2hlIHBsdWVuZGVybiEnCgpFbmd5d3VjayBydWZ0OiBIaWVyIGthbSBncmFkIG5lIExlaWNoZSByZWluLCBkaWUgc2FndGUsIGRhc3MgaWNoIHNpZSBpbiBkZXIKRW5neXd1Y2sgcnVmdDogQXJlbmEgcGx1ZW5kZXJuIHNvbGwuLi4qc3RhdW4qCltBbGxnZW1laW46QW5jYWxhZ29uXSBCaXN0IGR1IGV0d2EgV2FyZ29uIHp1dm9yZ2Vrb21tZW4sIFNpbHZhbmE/CltBbGxnZW1laW46V2FyZ29uXSBTaWUgaGF0IGdlc2NobGFnZW4sIGljaCBoYWJlIGdld3Vlcmd0CkR1cmlhbiBydWZ0OiBJc3QgamEgc2Nob24gZ3V0LCBkYXMgd2FyJ3Mgc2Nob24sIHNjaHJlaWJlIGljaCBlaW5lbgpEdXJpYW4gcnVmdDogWmVpdHVuZ3NhcnRpa2VsIHVuZCBkYW5hY2ggaXN0IFJ1aGUgLi4uCkphbnRoYXIgcnVmdDogLi4uaGllciBhdWNoICpncmlucyoKRGllIFRvdGVuZ2xvY2tlbiBkZXIgQXJlbmEsIGZ1ZXIgZWluZW4gQm90ZW4gZ2VsYWV1dGV0LCBzY2hlcHBlcm4gdWViZXIgZGFzCkxhbmQuCkVpbiBnZWZlc3NlbHRlciB1bmQgZ2VrbmViZWx0ZXIgQm90ZSBkZXV0ZXQgYXVmIGRpZSBBcmVuYS4KW0FsbGdlbWVpbjpBbmNhbGFnb25dIERhcyBpc3QgamEgd2llZGVyIHR5cGlzY2ggTWFnaWVyLi4uLi56d2VpIGdlZ2VuCltBbGxnZW1laW46QW5jYWxhZ29uXSBlaW5lbi4uLi4uLi5GZWlnbGluZ2UhCltNYWdpZXI6RHVyaWFuXSAqcm90ZmwqIG1laW4gYXJtZXIga2xlaW5lciBCb3RlLCBkZXIgaXN0IGltbWVyIHNvIGxpZWIgOi0pCltNYWdpZXI6RHVyaWFuXSAuLi4gYWVoIHdhciBpbW1lciBsaWViIC4uLgpbQWxsZ2VtZWluOldhcmdvbl0gQWJlciB3aXIgaGFiZW4gaWhuIE5JQ0hUIEdFWkFQUFQhIDspCltBbGxnZW1laW46QW5jYWxhZ29uXSBEYXMgd2FlcmUgamEgYXVjaCBub2NoIHNjaG9lbmVyLi4uLi4KW01hZ2llcjpTaWx2YW5hXSBEYW5uIHNjaGljayBhdWNoIGdsZWljaCBlaW4gSW5NZW1vcmlhbS1Mb2cgaGludGVyaGVyLiA7KQoKSGllciBpc3Nlcy4gOykgV3VyZCBhdWNoIFplaXQuLi4gIEhvcHBsYSAtIG5vY2ggd2FzOgoKW01hZ2llcjpCb2luZ10gYWghIGlnbm9yaWVyZSBhcmVuYSEgd2VsY2ggaGVycmxpY2hlIHJ1aGUgOikKW01hZ2llcjpZYW50cm8gbmlja3QgQm9pbmcgdmVyenVlY2t0IHp1Ll0KW01hZ2llcjpTaWx2YW5hXSBZYW50cm8gdW5kIEJvaW5nIHNpbmQgZWluZXIgTWVpbnVuZy4gRGFzIGhhdCBhdWNoCltNYWdpZXI6U2lsdmFuYV0gU2VsdGVuaGVpdHN3ZXJ0Li4uCltNYWdpZXI6RHVyaWFuXSBJY2ggaGFiZSBnZXJhZGUgZWluZW4gQXJ0aWtlbCBnZXNjaHJpZWJlbiwgZXMgZ2luZyBiZXN0aW1tdApbTWFnaWVyOkR1cmlhbl0gdW0gZGVuIEJvdGVuLCBvZGVyPz8gKnNldWZ6ZSoKW01hZ2llcjpTaWx2YW5hXSBTaWVoIGFuIC0gZGllIEFyZW5hIGZ1ZWhydCBkaWUgTWFnaWVyIHp1c2FtbWVuLiA7KSAqbGFjaCoKW01hZ2llcjpEdXJpYW5dIElDSCB3ZXJkZSBpaG4gbmljaHQgaWdub3JpZXJlbiwgbmVpbiwgSUNIIG5pY2h0ISA6LSkKClNpbHZhbmEgKGRlbiBCb3RlbiBpZ29yaWVyZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgaW4gZGVyIFNTUC4uLiAoWWVuZGksIDE4LiBNYWkgMTk5NSwgMTU6MDU6MDkpOgoKRWluIHNjaGFydGlnZXIgU2FlYmVsLgpFaW5lIE9ya2hvc2UuCkVpbiBPcmtoZWxtLgpFaW4gYWx0ZXMgQmxlY2guCkVpbiBhbHRlcyBCbGVjaC4KRWluIGFsdGVzIEJsZWNoLgpFaW4gYWx0ZXMgQmxlY2guCkVpbiBhbHRlcyBCbGVjaC4KRWluIHZlcm1vZGVybmRlcyBCbGF0dC4KRWluIGhhbGJ2ZXJkYXV0ZXIgQWJlbnRldXJlci4KRWluZSBoYWxidmVyZGF1dGUgRmxpZWdlLgpFaW4gdmVybW9kZXJuZGVzIEJsYXR0LgpFaW4gdmVybW9kZXJuZGVzIEJsYXR0LgpFaW4gdmVybW9kZXJuZGVzIEJsYXR0LgpFaW4gaGFsYnZlcmRhdXRlciBBYmVudGV1cmVyLgpFaW5lIGhhbGJ2ZXJkYXV0ZSBGbGllZ2UuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCgoKCk5pY2h0IHNjaGxlY2h0LCB3YXM/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWxpY2gsIGluIGRlciBTU1AuLi4gKENhcmFkaHJhcywgMTkuIE1haSAxOTk1LCAwMzozODo1OCk6CiMhIHJuPVllbmRpIHJ0PTgwMDgwMjMwOQpEYW1hbHMsIGFscyBpY2ggMjAgU3R1bmRlbiBpbiBGb2xnZSBpbiBkZXIgU1NQIGdlc2NobGFjaHRldCBoYWJlLCB3YXJzCmx1c3RpZ2VyLiA6KSA0NSBFaXNzY2h3ZXJ0ZXIgbGFnZW4gYmVpbSBzdWVkbGljaGVuIEVpc3JpZXNlbiB1bmQKNDcgbGFnZW4gYmVpbSBub2VyZGxpY2hlbiBFaXNyaWVzZW4uICpzY3Jvb29sbGxsbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIG5hY2ggIG5lbSBjcmFzaC4uLiAoQXJvbWJvbG9zY2gsIDE5LiBNYWkgMTk5NSwgMjA6NTA6NTIpOgogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRnJlLCAxOS4gTWFpIDE5OTUsIDIwOjQ5OjIyICg3IFRlaWxuZWhtZXIpCgpMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucwpMdWcuLi4uLi4uLi4uLi4ucyAgQXJvbWJvbG9zY2guLi4uLk0gIEpvZi4uLi4uLi4uLi4uLi5HCgoKVmVyZGFtbXQsIGVyICBoYXQgIG1pY2ggIGdlc2NobGFnZW4gICEhISA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFydGlrZWwgKEdyaW1tYm9ybiwgMjEuIE1haSAxOTk1LCAwMDo1MTowMCk6CgpEaWVzIGlzdCBlaW4gQXJ0aWtlbCBpbiBkZXIgbXBhLgpPZGVyIHdhcyBkYWNodGV0IGlocj8KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFydGlrZWwgKExvY28sIDIxLiBNYWkgMTk5NSwgMDA6NTI6MTApOgojISBybj1HcmltbWJvcm4gcnQ9ODAxMDEwMjYwCkRhbWl0J3MgbmljaHQgc28gbGFuZ3dlaWxpZyB3aXJkLCBub2NoIGVpbmVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU1NQIGNvbnRyYSBRdWVzdCAoWmVwaHlyLCAyMS4gTWFpIDE5OTUsIDIzOjQ5OjA1KToKW0FiZW50ZXVlcjpdIENhcmFkaGFzIGhhdCBnZXJhZGUgZWluIEFiZW50ZXVlciBiZXN0YW5kZW46IEdyaXN1IHdpbGwKW0FiZW50ZXVlcjpdIEZldWVyd2Vocm1hbm4gd2VyZGVuCgpEdSBmcmFnc3Q6IFVuZCBudT8gbm9jaCBuZSBSdW5kZSBTU1A/CkNhcmFkaHJhcyBzYWd0OiBobW0sIFNTUD8gV2FzIGlzdCBkYXM/CgpTbyBzY2huZWxsIGthbm4gZGFzIGdlaGVuLi4uCiAgIFplcGh5ciwgZ2VodCBqZXR6dCBkZW4gU2Vuc2kgdHJvZXN0ZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTU1AgY29udHJhIFF1ZXN0IChDYXJhZGhyYXMsIDIyLiBNYWkgMTk5NSwgMDE6MTY6MzUpOgojISBybj1aZXBoeXIgcnQ9ODAxMDkyOTQ1ClZlcmZsaXh0IHVuZCB2ZXJkYW1tdCwgMTAwMCBIb2VsbGVuaHVuZGUgdW5kIEdyYW5hdGVuLCBoaWVyIGRhcmYgbWFuCmFiZXIgYXVjaCBuaWNodHMgc2FnZW4uIDotKSkKCiAgICAgQ2FyYWRocmFzIC0gZ3JpbnNlbmQgdW5kIHNjaG9uIHdpZWRlciBuZSBRdWVzdCBiZXN0YW5kZW4KICAgICAgIChkdW1taWR1bW0pIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNTUCBjb250cmEgUXVlc3QgKEd1eWJydXNoLCAyMi4gTWFpIDE5OTUsIDA4OjIyOjM4KToKIyEgcm49Q2FyYWRocmFzIHJ0PTgwMTA5ODE5NQpNaXIgc2NoZWludHMgQ2FyYSBzdGVodCB1bnRlciBkZW0gKFF1ZXN0LSlFaW5mbHVzcyBlaW5lcyBhbmRlcmVuIFNlaGVycywgb2Rlcgppc3QncyBuZSBTZWhlcmluIDspID8KKmtvcGZzY2h1ZXR0ZWwqCkd1eWJydXNoIGRlbmt0IC4gbyBPIChGUkFVRU4hKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgYmVpbSBOZXR6enVzYW1tZW5icnVjaC4uLiAoWWVuZGksIDIyLiBNYWkgMTk5NSwgMTM6Mzc6MTMpOgoKW0FsbGdlbWVpbjpSeW5lIHdpbmt0IEV1Y2ggenUgLSBoYXZlIGZ1biBpbSBuZXR6dG90ZW5yYXVtICEhIV0KW0FsbGdlbWVpbjpZZW5kaSBraWNoZXJ0Ll0KPiBGYXVsaSBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCkJlcm5oYXJkIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KPiBGYXVsaSBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCkJlcm5oYXJkIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KQmx1ZW1lbCBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uClN0YWhsZG9ybiBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCkFkYW1hIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KQmlsYm9tIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KV2lsbGUgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpIYXRlIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KUGh5Z29zIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KV2lsbG5lbmFzdCBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCldhbnlhIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KRWxieXRlIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KPiBTd2FtcGllIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KS2Fma2EgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgoKPiBrd2VyCiAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIE1vbiwgMjIuIE1haSAxOTk1LCAxMzozNjoyOSAoMTAgVGVpbG5laG1lcikKCipZZW5kaS4uLi4uLi4uLi5zICBLaG9ybmUuLi4uLi4uLi4uVCAgVHp1aW9wLi4uLi4uLi4uLlMgIFRvc3MuLi4uLi4uLi4uLi56ClJ5bmUuLi4uLi4uLi4uLi5TICAqVG9ldGVyLi4uLi4uLi4ubSAgVnJhaS4uLi4uLi4uLi4uLlcgICpSb2NodXMuLi4uLi4uLi5FCldhcmdvbi4uLi4uLi4uLi5FICBLaXJrLi4uLi4uLi4uLi4uRQoKCgpIYWNoIGphLi4uIHdpZSBiZWhhZ2xpY2guLi4gd2llIGdlcnVoc2FtLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUk9DSFVVVVVVVVVVVVVTISEhIChZZW5kaSwgMjIuIE1haSAxOTk1LCAxNDo0ODowNyk6CgpSb2NodXMsIGFuZ2VyZWd0IGR1cmNoCgo+IFtBbGxnZW1laW46U3Bpcm91XSBqYSwgZGEgbGFnIGkgbWkgbmllZGVyLiAgICAgICA6CgoiRXMgd2lyZCBsYW5nc2FtIFplaXQsIGRlbiBLbGVtcG5lciB6dSBydWZlbjsgZGFzIE5ldHogbGFndC4uLiIKCgpIYWNoLCBkYXMgdmVyc3RlaHQgamV0enQgd2llZGVyIGtlaW5lciwgd2FzPwoKSmVkZW5mYWxscyBzb2xsdGUgbWFuIGVyc3RtYWwgUm9jaHVzIHVuZCBzZWluZW4gV2l0emVuIGRhcyBIYW5kd2VyayBsYWdnZW4hCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgaW4gZWluZXIgLnNpZ25hdHVyZTogKFllbmRpLCAyMi4gTWFpIDE5OTUsIDE1OjM4OjU0KToKCiBJY2ggemFlaGxlIG1pY2ggbmljaHQgenUgZGVuIExldXRlbiwgZGllIHp1IEthdGVnb3Jpc2llcnVuZ2VuIG5laWdlbi4KICAgLSBUcmlsbGlhbiBJSS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKENhcmFkaHJhcywgMjMuIE1haSAxOTk1LCAwMjoyMDowNSk6CkdyYWRlIGJlaSBDZWxlYmRpbCBpbSBpZGxlLUZlbnN0ZXI6Ck1lbGxvcm4ga29tbXQgYW4uCkVpbmUgRG9nZ2UgZ3JlaWZ0IE1lbGxvcm4gYW4hCiAgRGllIERvZ2dlIGdyZWlmdCBNZWxsb3JuIG1pdCB3dWV0ZW5kIGdlZmxldHNjaHRlbiBaYWVobmVuIGFuLgogIERpZSBEb2dnZSB0cmlmZnQgTWVsbG9ybiBoYXJ0LgogIE1lbGxvcm4gZ3JlaWZ0IGRpZSBEb2dnZSBtaXQgZWluZW0gRWlzc2Nod2VydCBhbi4KICBNZWxsb3JuIHRyaWZmdCBkaWUgRG9nZ2UgaGFydC4KLi4uCgoKRGFyYXVmaGluIGJlaSBtaXIgaW0gRmVuc3RlcjoKRHUgdGVpbHN0IE1lbGxvcm4gbWl0OiBicmF1Y2hzdCBkdSBoaWxmZT8KTWVsbG9ybiB0ZWlsdCBEaXIgbWl0OiBqYSwgd2FlaHJlIG5ldHQKW2VpbmUgU2VrdW5kZSBzcGFldGVyXQpbVG9kOl0gRWluZSBEb2dnZSBoYXQgZ2VyYWRlIE1lbGxvcm4gdW1nZWJyYWNodC4KCgpBbWVuCgogICAgICAgICAgICAgICAgICBDYXJhZGhyYXMgZGVyIFNjaGxhZWNodGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWhlciEgKEdyaW1tYm9ybiwgMjMuIE1haSAxOTk1LCAxNzo1ODoxMSk6CgpFaW4ga3VyemVzIGt3ZXIgaGF0IG1pY2ggdWViZXJ6ZXVndDoKa3dlcgogIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEaWUsIDIzLiBNYWkgMTk5NSwgMTc6NTM6MzkgKDk5IFRlaWxuZWhtZXIpCgpDYWRkaS4uLi4uLi4uLi4ucyAgR2FzdDEuLi4uLi4uLi4uLnMgIEhvaGxpLi4uLi4uLi4uLi5zICBLdGsuLi4uLi4uLi4uLi4ucwpNYW50aXMuLi4uLi4uLi4ucyAgTWFzdGVyLi4uLi4uLi4uLnMgIFB1dHp3ZWliLi4uLi4uLi5zICBRdWluby4uLi4uLi4uLi4udApTdGVpbi4uLi4uLi4uLi4ucyAgU2FuZHkuLi4uLi4uLi4uLnMgIFZhbHlzc2EuLi4uLi4uLi5zICBXYW55YS4uLi4uLi4uLi4uegpZdXJpa28uLi4uLi4uLi4ucyAgWXp3ZXJnLi4uLi4uLi4uLnMgIEJhbGRvY2guLi4uLi4uLi5zICBGbGFnZy4uLi4uLi4uLi4ucwpIYXJnLi4uLi4uLi4uLi4ucyAgV2FsZGkuLi4uLi4uLi4uLnMgIEFzYmFuay4uLi4uLi4uLi56ICBMdWcuLi4uLi4uLi4uLi4ucwpBZGFtYS4uLi4uLi4uLi4ucyAgQmxhZGVydW5uZXIuLi4uLnMgIENhc2guLi4uLi4uLi4uLi5zICBKdXNzLi4uLi4uLi4uLi4ucwpXZXN0a3Vuc3QuLi4uLi4ucyAgS2FtYXN1dHJhLi4uLi4uLnogIEJpbGJvbS4uLi4uLi4uLi5zICBDYWVsLi4uLi4uLi4uLi4ucwpFbWlsLi4uLi4uLi4uLi4ucyAgUGVybGUuLi4uLi4uLi4uLnMgIFNwaXR6YnViZS4uLi4uLi5zICBUZWxrYS4uLi4uLi4uLi4ucwpDcm9sbGEuLi4uLi4uLi4ucyAgTWVsbG9ybi4uLi4uLi4uLnMgIEJvZWJiZWwuLi4uLi4uLi5zICBDaGFybHkuLi4uLi4uLi4ucwpTdGpvcGEuLi4uLi4uLi4ucyAgVHJhamFuLi4uLi4uLi4uLnMgIFR5cmlvbi4uLi4uLi4uLi5zICBKYWYuLi4uLi4uLi4uLi4ucwpTdXBlcm1hcmlvLi4uLi4ueiAgR2Vub20uLi4uLi4uLi4uLnMgIExvc2VyLi4uLi4uLi4uLi5zICBTY2hpaXIuLi4uLi4uLi4ucwpTYWlrYW4uLi4uLi4uLi4ucyAgU2xhc2guLi4uLi4uLi4uLnMgIFVyemEuLi4uLi4uLi4uLi5zICBGZWxzLi4uLi4uLi4uLi4ucwpMZWZ0eS4uLi4uLi4uLi4ucyAgTWFuZ28uLi4uLi4uLi4uLnMgIFF1aWxsaWFuLi4uLi4uLi5zICBTY2hsb256Li4uLi4uLi4ucwpBc21vZGluYS4uLi4uLi4uUyAgQ3JhaWcuLi4uLi4uLi4uLlMgIExlY2h1Y2suLi4uLi4uLi56ICBMd2F4YW5hLi4uLi4uLi4uUwpad2lyY2guLi4uLi4uLi4uUyAgQXJhbWlyLi4uLi4uLi4uLlMgIEppbWRpZ3Jpei4uLi4uLi5TICBOYWlyb2xmLi4uLi4uLi4uUwpSYXR6Li4uLi4uLi4uLi4uUyAgWWV0aS4uLi4uLi4uLi4uLlMgIEFyZGFuYS4uLi4uLi4uLi5TICBGYXVsaS4uLi4uLi4uLi4uUwpIYXdrLi4uLi4uLi4uLi4uUyAgSHVyaW4uLi4uLi4uLi4uLlMgIFBhbXBlcnMuLi4uLi4uLi5TICBQYXJhY2Vsc3VzLi4uLi4uUwpTY290dHkuLi4uLi4uLi4uUyAgKkVuZ3l3dWNrLi4uLi4uLlMgIEphbmljZS4uLi4uLi4uLi5TICBLbGF1c2kuLi4uLi4uLi4uegpLZWxkZXIuLi4uLi4uLi4ueiAgUm9hZHJ1bm5lci4uLi4uLlMgIEJpZ2Zvb3QuLi4uLi4uLi5TICBGeXQuLi4uLi4uLi4uLi4uUwpMYXVyaW4uLi4uLi4uLi4ueiAgVHp1aW9wLi4uLi4uLi4uLlMgIEFydHkuLi4uLi4uLi4uLi5TICBCZXJuaGFyZC4uLi4uLi4uUwpaZXBoeXIuLi4uLi4uLi4uUyAgU2x5Zm94Li4uLi4uLi4uLlMgIEFzbW9kaXMuLi4uLi4uLi56ICBBbmFraW4uLi4uLi4uLi4uUwpHdXlicnVzaC4uLi4uLi4uUyAgR3JpbW1ib3JuLi4uLi4uLlMgIEhhbnMuLi4uLi4uLi4uLi5tICBEZWxvcy4uLi4uLi4uLi4ubQpGZWxhZ3VuZC4uLi4uLi4ubSAgQXJvbWJvbG9zY2guLi4uLk0gIEJpbmcuLi4uLi4uLi4uLi5NICBRdWlub2xpbi4uLi4uLi4uTQpUcnlmYW4uLi4uLi4uLi4uTSAgSG9iby4uLi4uLi4uLi4uLk0gIFZpcGVyLi4uLi4uLi4uLi5IICBSb21pbGkuLi4uLi4uLi4uUgpSb2NodXMuLi4uLi4uLi4uRSAgSGF0ZS4uLi4uLi4uLi4uLkUgICpKb2YuLi4uLi4uLi4uLi5HCgpJY2ggYmluIFNlaGVyIQpXZXIgZWluZSB2b2xsc3RhZW5kaWdlIHp0LWxpc3RlIGhhYmVuIHdpbGw6IG1haWwgYW4gbWljaCEgOi0pCgpNZWluIGlzdCBkaWUgTWFjaHQgdW5kIGRpZSBGcmVpaGVpdCEgS2VpbiBSZWdlbGtvcnNldHQgbWVociEgOi0pKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LCB3aWVkZXIgaW4gZGVuIFJlaWhlbiBkZXIgU3RlcmJsaWNoZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTZWhlciEgKENhcmFkaHJhcywgMjMuIE1haSAxOTk1LCAyMzoyMDozNik6CiMhIHJuPUdyaW1tYm9ybiBydD04MDEyNDQ2OTEKTW9lY2h0ZSBtYWwgd2lzc2VuIHdpZXZpZWxlIGRhcmF1ZmhpbiBmaW5nZXIgZ3JpbW1ib3JuIGdlbWFjaHQKaGFiZW4gOikpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3aWVkZXIgbWFsIGJsaW5kIChTdGFobGRvcm4sIDI0LiBNYWkgMTk5NSwgMTU6MTY6NTQpOgo+c2NoYXUKRHUgYmlzdCBibGluZCAhCj5rbnVkZGxlIGFsbGUKS2VpbmVyIGRhLiBTY2hhdSBEaWNoIG5hZWNoc3RlcyBNYWwgYmVzc2VyIHVtLgoKCgogICAqU2V1ZnoqCgoKICBTVEFITC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZ2llciAoR3JpbW1ib3JuLCAyNS4gTWFpIDE5OTUsIDE5OjEwOjUxKToKSGFjaCwgZWluIEdsdWVjaywgZGFzcyBpY2ggTWFnaWVyIGJpbjoKCmt1ZXNzZSBqYW5ldApMYWR5IEphbmV0IHZlcnBhc3N0IERpciBlaW5lIGtyYWVmdGlnZSBPaHJmZWlnZS4KRGVyIFRlZGR5IGtudWRkZWx0IERpY2ggZWluIGxldHp0ZXMgTWFsLgoKTmljaHQgdG90LCBuaWNodCB0b3QsIG5pY2h0IHRvdCEgOi0pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRpZSBsZWlkaWdlIHRyaW5rZXJlaSAoSGFkcmEsIDI2LiBNYWkgMTk5NSwgMDI6NDc6NDgpOgpoaSBtdWRkaWVzLAoKd2VyIGhhdCBlcyBuaWNodCBzY2hvbiBlcmxlYnQuIG1hbiBzdGVja3QgbWl0dGVuIGltIHNjaG9lbnN0ZW4gbWV0emVsbiwgcmVubnQKenVyIGtuZWlwZSB1bmQgZGEga29tbXQgZXM6IG5laW4gc28gdmllbCBrYW5uc3QgZHUgd2lya2xpY2ggbmljaHQgbWVociBlc3NlbgpvZGVyIHRyaW5rZW4KZGEgZnJhZyBpY2ggbWljaCBuYXR1ZXJsaWNoIHdhbm4gaW0gbWcgZW5kbGljaCB0b2lsZXR0ZW4gZWluZ2VmdWVocnQgd2VyZGVuLApkYW1pdCBtYW4gbmljaHQgbWVociBpbW1lciBhbGxlcyBhdXNzY2h3aXR6ZW4gbXVzcy4gc28gZWluIG5ldHRlcyBrbGVpbmVzCmhhZXVzY2hlbiBhbiBkZXIgYWthZGVtaXN0cmFzc2UsIG9kZXIgcm9tYW50aXNjaCBpbSBoZXhlbndhbGQgZ2VsZWdlbiB3YWVyCmRvY2ggd2FzLiB6dXIgbm90IGtvZW5udGUgbWFuIGphIGF1Y2ggZWluZSBrbGVpbmUgZ2VidWVociBmdWVyIGRpZQpyZWluaGFsdHVuZwplbnRyaWNodGVuLgoKaGFkcmEgLSBtdXNzIG1hbmNobWFsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcGllbGNoZW4gKEtyaWdpLCAyNi4gTWFpIDE5OTUsIDEyOjEzOjU2KToKR2VyYWRlIGViZW4gYmVpIG1laW5lbSBIYWV1c2NoZW46CgpEdSB3aXJmc3QgZGVuIEJ1bWVyYW5nLgo+IER1IHdlaWNoc3QgZGVtIEJ1bWVyYW5nIGdlc2NoaWNrdCBhdXMuCkRlciBCdW1lcmFuZyBmbGllZ3QgbmFjaCBOb3Jkb3N0ZW4uCkRlciBCdW1lcmFuZyBmbGllZ3Qgd2llZGVyIGhlcmVpbi4KPiBEZXIgV2FzY2hiYWVyIGZhZW5ndCBkZW4gQnVtZXJhbmcgYWIuCkRlciBXYXNjaGJhZXIgd2lyZnQgZGVuIEJ1bWVyYW5nLgpEZXIgV2FzY2hiYWVyIHdlaWNodCBkZW0gQnVtZXJhbmcgZ2VyYWRlIG5vY2ggcmVjaHR6ZWl0aWcgYXVzLgpEdSBmYWVuZ3N0IGRlbiBCdW1lcmFuZyBnZXNjaGlja3QuCgoKSXN0IGVzIG5pY2h0IHNjaG9lbiwgZWluIGJpc3NjaGVuIG1pdCBkZW4gbGllYmVuIFRpZXJjaGVuIHp1IHNwaWVsZW4/PwoKT2JlcmZvZXJzdGVyIEtyaWdpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNVUVMTCAoQXNtb2RpcywgMjYuIE1haSAxOTk1LCAyMzoyMDo1Nik6CgpNVUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUxMTExMTExMTExMTExMTExMTExMTExMTEwKClAuUy46IFNvcnJ5LCB3YXIgZXMgbnVyIGxlaWQsIGltbWVyICdOaXggbmV1ZXMgYXVmIGRlciBXZWx0LicgenUgbGVzZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggYmVpbSBpZGxlbi4uLiAoTXVwZmVsLCAyNy4gTWFpIDE5OTUsIDAzOjIwOjEzKToKSnVzc3VmIGJldHJpdHQgZGllc2UgV2VsdC4KSnVzc3VmIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBKdXNzdWYuCk11c3RhZmEgYmV0cml0dCBkaWVzZSBXZWx0LgpNdXN0YWZhIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBNdXN0YWZhLgpPbWFyIGJldHJpdHQgZGllc2UgV2VsdC4KT21hciBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgT21hci4KQWhtZWQgYmV0cml0dCBkaWVzZSBXZWx0LgpBaG1lZCBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgQWhtZWQuCklicmFoaW0gYmV0cml0dCBkaWVzZSBXZWx0LgpJYnJhaGltIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBJYnJhaGltLgoKCm5hbnU/IDotKQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW0gSG9zcGl0YWw6IChIYXdrLCAyNy4gTWFpIDE5OTUsIDAzOjIzOjQ0KToKRWluIEZyb3NjaCBrb21tdCBhbi4KZWluIEZyb3NjaCBsZWd0IHNpY2ggaW4gZGFzIEJldHQuCgpJZ2l0dCEhISEgRGllIEh5Z2llbmlzY2hlbiB6dXN0YWVuZGUgaW4gZGVuIEhvc3BpdGFlbGVybiB3ZXJkZW4gaW1tZXIgbWVocgp6dW0gUFJPQkxFTSAhISEhCgpIQVdLLCBkZXIgbm9jaCBuaWUgZWluZW4gRnJvc2ggaW0gQmV0dCBnZWZ1bmRlbiBoYXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouLiAoSGF3aywgMjcuIE1haSAxOTk1LCAwMzozMjowOSk6CkVpbiBGcm9zY2gga29tbXQgYW4uCmVpbiBGcm9zY2ggc2NobGllc3N0IGRpZSBUdWVyLgplaW4gRnJvc2NoIGxlZ3Qgc2ljaCBpbiBkYXMgQmV0dC4KaWlpaWVlZWVlaGhoaGhoLCBzY2hvbiB3aWVkZXIgOikgKGhhd2ssIGdyaW5zdCBzaWNoIGVpbnM6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoIGltIEhvc3BpdGFsOiAoSmFmLCAyNy4gTWFpIDE5OTUsIDEzOjI2OjI4KToKIyEgcm49SGF3ayBydD04MDE1Mzc4MjQKCk9jaCwgSGF3aywgc2VpIGRvY2ggZWluIGJpc3NjaGVuIHRvbGVyYW50ICpncmlucyoKCkphZi4gIEZyb3NjaGh1ZXRlciBhdWYgWmVpdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG5lZW1hbm4tUXVlc3QgKENhcmFkaHJhcywgMjkuIE1haSAxOTk1LCAwMTo1OTo1NSk6CiAgICAgICAgICAgIEh1aHUKClVuZCBub2NoIHdhcyB6dW0gVGhlbWEgUmFjaGU6CkR1IGJpc3QgaW4gZWluZW0gc2VsdHNhbWVuIEdhbmcgaW5uZXJoYWxiIGRlcyBTY2huZWVoYXVmZW5zLgpIb2ZmZW50bGljaCB2ZXJsaWVyc3QgRHUgbmljaHQgZGllIE9yaWVudGllcnVuZy4KQXVmIGRlbSBCb2RlbiBzaW5kIEZ1c3NhYmRydWVja2UgenUgc2VoZW4uCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4sIHdlc3RlbiB1bmQgb3N0ZW4uClplcGh5ciBrbnVkZGVsdCBkaWUgaGFsYmUgU1NQIHp1IFRvZGUuCkRpZSBMZWljaGUgZWluZXIgU2NobmVlZnJhZXNlLgoKTWVpbmUgZXJzdGUgU2NobmVlZnJhZXNlIDotKSkKRGFmdWVyIGhhYmUgaWNoIGF1Y2ggZ2xlaWNoIGRlbiBkYW5rIGVyaGFsdGVuOgpOb3N0cmFkYW11cyB0ZWlsdCBEaXIgbWl0OiBkYSBoYXN0IGR1IGFiZXIgbWlsbGlvbmVuIHZvbiBhbmZhZW5nZXJuIGdlcmFlY2h0Ck5vc3RyYWRhbXVzIHRlaWx0IERpcgo6LSkKVW5kIDUgTWludXRlbiBzcGFldGVyOgpFaW4gc2VsdHNhbWVyIEdhbmcgaW0gU2NobmVlLi4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgb3N0ZW4uClplcGh5ciBrbnVkZGVsdCBkaWUgaGFsYmUgU1NQIHp1IFRvZGUuCkRpZSBMZWljaGUgZWluZXIgU2NobmVlZnJhZXNlLgoqZ3JpbnMqIHNvIGhhdCBzaWNoIFplcGh5ciBhdWNoIGRlbiBEYW5rIGRlciBNaWxsaW9uZW4gQW5mYWVuZ2VyCmdlc2ljaGVydC4KCiAgICBDYXJhZGhyYXMgZGVyIExvZXdlbm1vZXJkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVoZS1Qcm9ibGVtZSAoQXJ0eSwgMjkuIE1haSAxOTk1LCAxNDo1MDoyOSk6Cm5ldWxpY2ggaW0gTUcgOgoKRHUgaG9lcnN0IGRlbiBTY2huZWVtYW5uIGF1cyBkZXIgRmVybmUgcnVmZW46CiAgTGVpYSBoYXQgbWljaCBnbHVlY2tsaWNoIGdlbWFjaHQuCgoKa2F1bSBpc3QgRnJ5ZGVyIG1hbCAnbmUgd2VpbGUgd2VnLCBnZWh0IHNpZSBmcmVtZC4gd2VubiBkZXIgZGFzIHd1ZXNzdGUuLi4KKmdyaW5zKgoKQVJUWQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBiZWltIGxvZ2luLi4uIChLaGlkYXIsIDI5LiBNYWkgMTk5NSwgMTY6MjU6NTUpOgpEdSBmaW5kZXN0IDE3MzYzIE11ZW56ZW4sIGRpZSBEdSBiZWltIGxldHp0ZW4gTWFsIHZlcmxvcmVuIGhhc3QuCihsb2dpbi1tZWxkdW5nZW4uLi4pCj4gaQpFaW4gVGFsaXNtYW4uCkVpbiBGcmV1bmRzY2hhZnRzYmFuZCAoZ2V0cmFnZW4pLgpFaW4gU3R1ZWNrIFBlcmdhbWVudC4KMTczNjMgTXVlbnplbi4KRWluZSBtYWdpc2NoZSBLdWdlbC4KRWluIFBsYW5lZGl0b3IuCkRhcyBTZXJ2aWNlcGFrZXQgdm9uIE1vcmdlbmdyYXVlbnMgUHJlc3NlYWdlbnR1ci4KS2hpZGFycyBUZWRkeWJhZXIgR2l6bW8uCkVpbiBTY2hpZWJlcHV6emxlLgpFaW4ga2xlaW5lciBLcmlzdGFsbHNjaGx1ZXNzZWwuCjE0ODI1IE11ZW56ZW4uCk9rLgpHZWxkIGlzdCB1bmdsZWljaCBnZWxkLCBvZGVyPwoKS2hpZGFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2Fpa2FuIChSb2NodXMsIDI5LiBNYWkgMTk5NSwgMjE6NTg6MzEpOgpNb24gTWF5IDI5IDIxOjUxOjA5IDE5OTUgc2Fpa2FuKDAvMSkgdG9ldGV0ZSBzYWlrYW4oMC8wKSBOT1RXRUhSPT5LRUlOIFBLCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptb3JlIG9mIHNhaWthbiAoTXVwZmVsLCAyOS4gTWFpIDE5OTUsIDIyOjA1OjI5KToKZ3JlaWZlbiB3aXIgYWxzbyBtaXR0ZW4gaW5zIGdlc2NoZWhlbiBlaW46CiAgU2Fpa2FuIGdyZWlmdCBTYWlrYW4gbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4KICBTYWlrYW4ga2l0emVsdCBTYWlrYW4gYW0gQmF1Y2guCiAgU2Fpa2FuIGdyZWlmdCBTYWlrYW4gbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4KICBTYWlrYW4ga2l0emVsdCBTYWlrYW4gYW0gQmF1Y2guCiAgU2Fpa2FuIGdyZWlmdCBTYWlrYW4gbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4KICBTYWlrYW4ga2l0emVsdCBTYWlrYW4gYW0gQmF1Y2guCiAgU2Fpa2FuIGdyZWlmdCBTYWlrYW4gbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4KICBTYWlrYW4ga2l0emVsdCBTYWlrYW4gYW0gQmF1Y2guCiAgU2Fpa2FuIGdyZWlmdCBTYWlrYW4gbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4KICBTYWlrYW4ga2l0emVsdCBTYWlrYW4gYW0gQmF1Y2guCiAgU2Fpa2FuIGdyZWlmdCBTYWlrYW4gbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4KICBTYWlrYW4gdmVyZmVobHQgU2Fpa2FuLgpCZW5kZWlnaWQgc3RvbHBlcnQgdWViZXIgc2VpbmUgRnVlc3NlLgogIFNhaWthbiBncmVpZnQgU2Fpa2FuIG1pdCBibG9zc2VuIEhhZW5kZW4gYW4uCiAgU2Fpa2FuIGtpdHplbHQgU2Fpa2FuIGFtIEJhdWNoLgogIFNhaWthbiBncmVpZnQgU2Fpa2FuIG1pdCBibG9zc2VuIEhhZW5kZW4gYW4uCiAgU2Fpa2FuIHZlcmZlaGx0IFNhaWthbi4KQmVuZGVpZ2lkIGFuIGFsbGUgTWFnaWVyOiBQbGF5ZXJraWxsISEhIwogIFNhaWthbiBncmVpZnQgU2Fpa2FuIG1pdCBibG9zc2VuIEhhZW5kZW4gYW4uCiAgU2Fpa2FuIGtyYXR6dCBTYWlrYW4uClNhaWthbiBmYWVsbHQgdG90IHp1IEJvZGVuLgpEdSBzaWVoc3QgZWluZSBkdW5rbGUgR2VzdGFsdCwgZGllIGV0d2FzIER1bnN0IGVpbnNhbW1lbHQgLi4uIG9kZXIgdmllbGxlaWNodApiaWxkZXN0IGR1IERpciBkYXMgYXVjaCBudXIgZWluIC4uLgpSb2NodXMgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCkR1IGdyaW5zdC4KLi4uClJvY2h1cyBzYWd0OiBlcyBpc3QgdWVicmlnZW5zIG5pY2h0IGRlciBzYWlrYW4gbWl0IGRlbSBwbGF5ZXJraWxsIGdlc3BlaWNoZXJ0ClJvY2h1cyBzYWd0OiBzb25kZXJuIGRlciB0b3RlIHNhaWthbgp0YWlsIC9sb2cvS0lMTEVSCi4uLgpNb24gTWF5IDI5IDIxOjUxOjA5IDE5OTUgc2Fpa2FuKDAvMSkgdG9ldGV0ZSBzYWlrYW4oMC8wKSBOT1RXRUhSPT5LRUlOIFBLCgoKKHdpZSB2ZXJmbGl4dCBoYXQgZGVyIHNpY2ggendlaW1hbCB1bnRlciBkZW1zZWxiZW4gbmFtZW4gZWluZ2Vsb2dndC4uLj8pCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGRpZSBsZWlkaWdlIHRyaW5rZXJlaSAoV2FyZ29uLCAzMC4gTWFpIDE5OTUsIDEzOjI0OjExKToKIyEgcm49SGFkcmEgcnQ9ODAxNDQ5MjY4CkhtbW0uLi4gZGFzIGVyaW5uZXJ0IG1pY2ggYW4gZGllIExldXRlLCBkaWUgaW0gUHVkZGluZy0KbGV2ZWwgaW0gTHVmdHNjaGxvc3MgImtvdHplIiB2ZXJzdWNoZW4uLi4uCi4uLnVtIGRhbmFjaCB3aWVkZXIga3JhZnR2b2xsIHp1YmVpc3NlbiB6dSBrb2VubmVuIQogIE5hIE1haGx6ZWl0LAogICAgV2FyZ29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbGxlcyB3ZWcsIG9kZXI/IChUYXNoYSwgMzAuIE1haSAxOTk1LCAxOTo0MDo1NCk6CkR1IHRlaWxzdCBSZWluZWxkZSBtaXQ6IEhhc3QgZHUgZGllIFdQc2hlbGwgc2Nob24gbWFsIGF1c3Byb2JpZXJ0PwpSZWluZWxkZSBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBtZXR6ZWxuIHVuZCBkYXMgc2Nyb2xsdCBzbwpEdSB0ZWlsc3QgUmVpbmVsZGUgbWl0OiB1ZG4gZHUgbWV0enRlbHN0IG5pY2h0LiBNYWhjIGRhcyB3ZWcgd2VnLiA6KQpSZWluZWxkZSBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBtZXR6ZWxuIHVuZCBkYXMgc2Nyb2xsdCBzbwpSZWluZWxkZSB0ZWlsdCBEaXIgbWl0OiB3YXMgd2VnPwpEdSB0ZWlsc3QgUmVpbmVsZGUgbWl0OiBkYXMgd2VnClJlaW5lbGRlIGlzdCBnZXJhZGUgbmljaHQgZGE6IG1ldHplbG4gdW5kIGRhcyBzY3JvbGx0IHNvCj4gUmVpbmVsZGUgdGVpbHQgRGlyIG1pdDogd2FzIHNvbGwgZGFzIG1pdCBkZW0gd2VnPwpEZWxhIGtvbW10IGFuLgpEdSB0ZWlsc3QgUmVpbmVsZGUgbWl0OiBlcyBuZXJ2dApSZWluZWxkZSBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBtZXR6ZWxuIHVuZCBkYXMgc2Nyb2xsdCBzbwo+IFJlaW5lbGRlIGZyYWd0IEZ1bmFrb3NoaSBuYWNoIEdlbmF1ZW4gYW5mb3JkZXJ1bmdlbi4KRWxmaWUgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkR1IGdyaW5zdCBSZWluZWxkZSBhbi4KPiBEZWxhIGZyYWd0IEZ1bmFrb3NoaSBuYWNoIEFuZm9yZGVydW5nZW4uCkRlbGEgZnJhZ3QgRnVuYWtvc2hpIG5hY2ggU3RhdHVzLgpSZWluZWxkZSB0ZWlsdCBEaXIgbWl0OiBhY2ggc28gbWVpbiB3ZWcgOikKRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgoKCkhtbSwgbGVpY2h0ZSBWZXJzdGFlbmRpZ3VuZ3NzY2h3aWVyaWdrZWl0ZW4uLi4uCgpUYXNoYSB2ZXJ0c2VodCBnYXIgbml4IG1laHIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRpdGVsIChFbHJpYywgMzAuIE1haSAxOTk1LCAyMTowOTowMCk6CmFsaWFzIG5uIGVjaG8gTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUaXRlbCAoU3RhaGxkb3JuLCAzMC4gTWFpIDE5OTUsIDIxOjM0OjA0KToKIyEgcm49RWxyaWMgcnQ9ODAxODYwOTQwCmJyYXVjaHN0IGR1IG5pY2h0LiBpc3Qgc2Nob24gc3RhbmRhcmRtYWVzc2lnIGltcGxlbWVudGllcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJIHNob3QgdGhlIHNoZXJpZmYuLi4gKENhcmFkaHJhcywgMzEuIE1haSAxOTk1LCAwMjoxNjo1Myk6CiAgICAgICAgICAgIEhtbW1tbW1tbW0gOy0pKQoKTWFsIHdpZWRlciBsaXZlIGF1cyBkZW0gVGllcnJlaWNoIHVuZCB1bmdlc2Nobml0dGVuOgoKPiBhbGlhcyBmIGZldWVyYmFsbCBsYXJzCkxhcnMgc2V1Znp0IDogJ0RpZXNlIFNwaWVsZXIgbWFjaGVuIHNvdmllbCBVbmZ1Zy4nCk5ldWVzIEFsaWFzOiBmICA9IGZldWVyYmFsbCBsYXJzCj4gTGFycyBzZXVmenQgOiAnRGllc2UgU3BpZWxlciBtYWNoZW4gc292aWVsIFVuZnVnLicKZgpPawpEdSB3aXJmc3QgZWluZW4gRmV1ZXJiYWxsIG5hY2ggTGFycy4KRHUgemVyc2NobWV0dGVyc3QgTGFycyBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KRHUgaGFldHRlc3QgTGFycyBiZXNzZXIgbmljaHQgdG9ldGVuIHNvbGxlbiAuLi4KWnVyIFN0cmFmZSB3aXJzdCBEdSBpbiBkaWUgSG9lbGxlIHZlcmJhbm50IQpEaWUgSG9lbGxlIGhhdCBEaWNoIGZlc3QgaW0gR3JpZmYuCkhvZWxsZS4KRXMgZ2lidCBrZWluZSBzaWNodGJhcmVuIEF1c2dhZW5nZS4KPiBIaXBwZSB6ZWlndCBEaXIgc2VpbmVuIFZlY3RyYS4KSGlwcGUgc2FndCA6ICdJY2ggaGFldHRlIGRhIGVpbmVuIEZhbGwgLi4uJwpEdSBmdWVobHN0IGxhbmdzYW0gUGFuaWsgYXVmc3RlaWdlbi4KCgpFaW4gRmV1ZXJiYWxsIHVuZCBMYXJzIGlzdCB0b3Q/IFppZW1saWNoIGxhc2NoLCBkZXIgSnVuZ2UsIGhhbHRlbgphdWNoIG5pY2h0cyBtZWhyIGF1cyBkaWUgR29ldHRlci4gTWFsIGJlaSBKb2YsIEJvaW5nIHVuZCBSdW1hdGEKcHJvYmllcmVuIG9iIGRpZSBhdWNoIGdsZWljaCB0b3Qgc2luZC4gOi0pIEphYWFhYWFhLCBBbmFyY2hpaWlpaWllLi4uCldlciBoYXQgZGEgZ3JhZGUgQXJjaGllIGdlbGVzZW4/PwoKR2lidCBudXIgZWluIGtsZWluZXMgUHJvYmxlbTogV2llIGtvbW0gaWNoIGpldHp0IGF1cyBkZXIgSG9lbGxlIHJhdXMsCmljaCBrYW5uIExhcnMgbmljaHQgZHJ1bSBiaXR0ZW4uICpncmlpaWlpbnMqCk5hIGphLCB3YXJ0ZW4gd2lyIGhhbHQgYWIgYmlzIGVpbiBuZXVlciBMYXJzIGRhIGlzdC4gKnNldWZ6KgpXYXMgc29sbCBlaWdlbnRsaWNoIEhpcHBlIGRhdWVybmQgaW4gZGVyIEhvZWxsZT8gKnNjaG1vbGwqICpuZXJ2KgoKClVlYnJpZ2VuczogQXVjaCBkaWUgVGlnZXIgaW4gZGVyIFRpdGl3dS1RdWVzdCBrYW5uIG1hbiB1bWJyaW5nZW4gdW5kCiAgICAgICAgICAgVHJveXMgTG9ld2VuIGluIGRlciBXdWVzdGUuIFJpY2h0aWcgbHVzdGlnLiA6LSkKCgogICAgICAgICAgICAgICAgQ2FyYWRocmFzIC0gcHJvYmllcnQgYWxsZSBNb25zdGVyIGR1cmNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMaWNodCAoQ2FyYWRocmFzLCAzMS4gTWFpIDE5OTUsIDAyOjQ5OjU5KToKQXJnbCwgQXp6dXJvISBsYXNzIGRhcyBMaWNodCBhbiwgZHUgYmlzdCBuaWNodCBkZXIgbGV0enRlLgoKPiBBenp1cm8gbG9lc2NodCBzZWluIExpY2h0IHVuZCBibGl0enQgbWl0IExpY2h0Z2VzY2h3aW5kaWdrZWl0IG5hY2ggSGF1c2UuCkRpZSBMaWNodGt1Z2VsIGxvZXN0IHNpY2ggYXVmLgpsaWNodApEdSBtYWNoc3QgZWluZSBtYWdpc2NoZSBCZXdlZ3VuZy4KV2llIGF1cyBkZW0gTmljaHRzIGVyc2NoZWludCBlaW5lIGxldWNodGVuZGUgS3VnZWwuCgogICAgICAgICAqc2NobW9sbCogOi0pICAgICAgICBDYXJhZGhyYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxhcnMgZGllIElJdGUgOikgKENhcmFkaHJhcywgMzEuIE1haSAxOTk1LCAwMjo1NjoyNSk6ClplcmJlcnVzIGZsZXRzY2h0IGRyZWkgR2ViaXNzZS4KcmVjaHRzCkxhcnMnIEJ1ZXJvLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogcmF1cyB1bmQgcmVjaHRzLgpMYXJzLCBkZXIgVXJnb3R0IGFsbGVyIE11ZGdvZXR0ZXIuCj4gJ2ljaCBiaXR0ZSBmdWVyIENlbGViZGlsCkxhcnMgbGFlY2hlbHQgRGljaCBhbiA6ICdBYmVyIGdlcm5lJwpDZWxlYmRpbCB0cml0dCBhdXMgZWluZXIgU2Nod2VmZWx3b2xrZS4KRHUgc2Fnc3Q6IGljaCBiaXR0ZSBmdWVyIENlbGViZGlsCj4gTGFycyBzYWd0OiAnRHUga2FubnN0IGZ1ZXIgZWluZW4gRnJldW5kIGJpdHRlbiBiZWkgbWlyLicKQ2VsZWJkaWwgd2lyZnQgZWluZW4gRmV1ZXJiYWxsIG5hY2ggTGFycy4KICBDZWxlYmRpbCB0cmlmZnQgTGFycyBzZWhyIGhhcnQuCkNlbGViZGlsIHZlcnNjaHdpbmRldCBtaXQgS25hbGwgdW5kIFNjaHdlZmVsZHVmdC4KTGFycyBmYWVsbHQgdG90IHp1IEJvZGVuLgpbTW9lcmRlcjpHZWlzdCBMYXJzJ10gQ2VsZWJkaWwgaXN0IE5JQ0hUIHp1IG1laW5lciBCZWVyZGlndW5nIGVpbmdlbGFkZW4hCgogICBBYWFhYWFybWVyIExhYWFhYWFhcnMgOikKCiAgICAgICAgICAgICAgQ2FyYWRocmFzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgc2llYmVuIFp3ZXJnZSAoTGVjaHVjaywgMzEuIE1haSAxOTk1LCAwOToxODowMSk6Ck1hbmNobWFsIGhhZWx0IGRhcyBLYXJhdGVsZWJlbiBkb2NoIG5vY2ggc2Nob2VuZW4gVWViZXJyYXNjaHVuZ2VuIGZ1ZXIgZGVuCmVpbnNhbWVuIFp3ZWl0aS1TZWhlciBiZXJlaXQ6Clp3ZXJnZW5jaGVmIGtvbW10IGFuLgp1ZWJlIE1hZS1nZXJpLWtla29taQpad2VyZ2VuY2hlZiBnZWh0IG5hY2ggU3VlZGVuLgpEdSBoYXN0IGpldHp0IDE5NCBMZWJlbnNwdW5rdGUgdW5kIDIyMSBNYWdpZXB1bmt0ZS4KWndlcmdpaWkga29tbXQgYW4uClp3ZXJnaWkga29tbXQgYW4uClp3ZXJnaSBrb21tdCBhbi4KRHUgaGFzdCBqZXR6dCAxOTQgTGViZW5zcHVua3RlIHVuZCAyMjIgTWFnaWVwdW5rdGUuClp3ZXJndiBrb21tdCBhbi4KWndlcmdpdiBrb21tdCBhbi4KWndlcmd2aWkga29tbXQgYW4uClp3ZXJndmkga29tbXQgYW4uClp3ZXJnaXYgZ2VodCBuYWNoIFN1ZWRlbi4KWndlcmdpaWkgZ2VodCBuYWNoIFN1ZWRlbi4KWndlcmd2IGdlaHQgbmFjaCBTdWVkZW4uClp3ZXJnaSBnZWh0IG5hY2ggU3VlZGVuLgpad2VyZ3ZpaSBnZWh0IG5hY2ggU3VlZGVuLgpad2VyZ3ZpIGdlaHQgbmFjaCBTdWVkZW4uClp3ZXJnaWkgZ2VodCBuYWNoIFN1ZWRlbi4KRHUgaGFzdCBqZXR6dCAxOTQgTGViZW5zcHVua3RlIHVuZCAyMjMgTWFnaWVwdW5rdGUuCkR1IGhhc3QgamV0enQgMTk0IExlYmVuc3B1bmt0ZSB1bmQgMjI0IE1hZ2llcHVua3RlLgpBc21vZGlzIHNhZ3Q6IHdhcyBzb2xsIGRhcyBkZW4gbndlcmRlbiwgaWhyIFp3ZXJnZSA/CkR1IGhhc3QgamV0enQgMTk0IExlYmVuc3B1bmt0ZSB1bmQgMjI1IE1hZ2llcHVua3RlLgpEdSBoYXN0IGpldHp0IDE5NCBMZWJlbnNwdW5rdGUgdW5kIDIyNiBNYWdpZXB1bmt0ZS4KCipncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFuZmFlbmdlci1IaWxmZSAoQXJ0eSwgMzEuIE1haSAxOTk1LCAxMzoxNDo1OSk6Ck5ldWxpY2ggYXVmJ20gRnJpZWRob2YgOgogIERlciBXdXJtIGdyZWlmdCBkZW4gV3VybSBtaXQgc2VpbmVuIGtsZWluZW4gWmFlaG5jaGVuIGFuLgogIERlciBXdXJtIHZlcmZlaGx0IGRlbiBXdXJtLgogIERlciBXdXJtIGdyZWlmdCBkZW4gV3VybSBtaXQgc2VpbmVuIGtsZWluZW4gWmFlaG5jaGVuIGFuLgogIERlciBXdXJtIHZlcmZlaGx0IGRlbiBXdXJtLgogIERlciBXdXJtIGdyZWlmdCBkZW4gV3VybSBtaXQgc2VpbmVuIGtsZWluZW4gWmFlaG5jaGVuIGFuLgogIERlciBXdXJtIHZlcmZlaGx0IGRlbiBXdXJtLgogIERlciBXdXJtIGdyZWlmdCBkZW4gV3VybSBtaXQgc2VpbmVuIGtsZWluZW4gWmFlaG5jaGVuIGFuLgogIERlciBXdXJtIHZlcmZlaGx0IGRlbiBXdXJtLgogIERlciBXdXJtIGdyZWlmdCBkZW4gV3VybSBtaXQgc2VpbmVuIGtsZWluZW4gWmFlaG5jaGVuIGFuLgogIERlciBXdXJtIHZlcmZlaGx0IGRlbiBXdXJtLgogIERlciBXdXJtIGdyZWlmdCBkZW4gV3VybSBtaXQgc2VpbmVuIGtsZWluZW4gWmFlaG5jaGVuIGFuLgogIERlciBXdXJtIHZlcmZlaGx0IGRlbiBXdXJtLgogIERlciBXdXJtIGdyZWlmdCBkZW4gV3VybSBtaXQgc2VpbmVuIGtsZWluZW4gWmFlaG5jaGVuIGFuLgogIERlciBXdXJtIHZlcmZlaGx0IGRlbiBXdXJtLgogIERlciBXdXJtIGdyZWlmdCBkZW4gV3VybSBtaXQgc2VpbmVuIGtsZWluZW4gWmFlaG5jaGVuIGFuLgogIERlciBXdXJtIHZlcmZlaGx0IGRlbiBXdXJtLgogIERlciBXdXJtIGdyZWlmdCBkZW4gV3VybSBtaXQgc2VpbmVuIGtsZWluZW4gWmFlaG5jaGVuIGFuLgogIERlciBXdXJtIHZlcmZlaGx0IGRlbiBXdXJtLgogIERlciBXdXJtIGdyZWlmdCBkZW4gV3VybSBtaXQgc2VpbmVuIGtsZWluZW4gWmFlaG5jaGVuIGFuLgogIERlciBXdXJtIHZlcmZlaGx0IGRlbiBXdXJtLgogIC4uLi4uLlN0dW5kZW4gc3BhZXRlci4uLi4uCiAgRHUgd2lyZnQgZWluZW4gRmV1ZXJiYWxsIG5hY2ggZGVtIFd1cm0uCiAgRHUgc2NobGFlZ3N0IGRlbiBXdXJtIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCiAgRGVyIFd1cm0gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KCktsZWluZSBBbmZhZW5nZXJoaWxmZS4uLiAqZ3JpbnMqCgpBUlRZIChkZXIgc2ljaCBmcmFndCwgb2IgZWluIFd1cm0gS25vY2hlbiBoYXQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGJlaW0gRG9rdG9yLi4uIChKYWYsIDMxLiBNYWkgMTk5NSwgMjM6MTk6MTIpOgpGeXQgbGVndCBzaWNoIGluIGRhcyBCZXR0LgpGeXQgc3RvbHBlcnQgdWViZXIgc2VpbmUgRnVlc3NlLgoKLi4uCgpOaWNodCBtYWwgaW5zIGJldHQga29tbXQgZGVyIG9obmUgcHJvYmxlbWUKKmdyaW5zKgoKSmFmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKMyBUdWVyZW4gKEtldG9zLCAgMS4gSnVuIDE5OTUsIDAwOjM4OjA2KToKRHUgc3RlaHN0IGluIGVpbmVtIGVpbnNhbWVuIFJhdW0gbWl0IGRyZWkgdHVlcmVuLgpBdWYgZGVyIGVyc3RlbiBUdWVyZSBzdGVodCBnZXNjaHJpZWJlbiBUaWVmc2NobGFmYXVmIGRlciB6d2VpdGVuClNlbGJzdG1vcmRhdWYgZGVyIGRyaXR0ZW4gU2VsYnN0bG9lc2NodW5nLiBEdSBoYXN0IGRpZSBXYWhsIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVzZXRzIGluIGRlciBTU3AgZGllIHgtdGUgKEd1eWJydXNoLCAgMS4gSnVuIDE5OTUsIDA4OjA2OjU4KToKTW9yZ2VucyBmcnVlaCBpbiBkZXIgU1NwOgogIER1IGdyZWlmc3QgZGVuIEVpc2dpZ2FudGVuIG1pdCBkZW0gU2Nod2VydCBhbi4KICBEdSB0cmlmZnN0IGRlbiBFaXNnaWdhbnRlbiBzZWhyIGhhcnQuCkRlciBFaXNnaWdhbnQgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KW01vZXJkZXI6R2Vpc3QgZWluZXMgRWlzZ2lnYW50ZW5dIFdhcnVtIGhhdCBtaXIgbmllbWFuZCBnZWdlbiBHdXlicnVzaApbTW9lcmRlcjpHZWlzdCBlaW5lcyBFaXNnaWdhbnRlbl0gZ2Vob2xmZW4/CkR1IHdlaWNoc3QgZGVtIEJ1bWVyYW5nIGdlc2NoaWNrdCBhdXMuCkRlciBCdW1lcmFuZyB6aXNjaHQgYW4gRGlyIHZvcmJlaS4KRWluZSBoZXJybGljaGUgV2Flcm1lIGdlaHQgdm9uIERlaW5lbSBBbXVsZXR0IGF1cyB1bmQgRHUgZnVlaGxzdApEaWNoIHByaW1hLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDE3MyBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAyMjYgTWFnaWVwdW5rdGUuCkVpbiBFaXNnaWdhbnQga29tbXQgYW4uCiAgRGVyIEVpc2dpZ2FudCBncmVpZnQgRGljaCBtaXQgZGVtIEVpc3phcGZlbiBhbi4KICBEZXIgRWlzZ2lnYW50IHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KClNvdmllbCB6dSBCb2luZ3MgUHJvZ3JhbW1pZXJrdWVuc3RlbiA7KQpHdXlicnVzaCwgYmVnaW5udCB6dSBzY2h3aXR6ZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvbiBCaXJuZW4gdW5kIFN0aWVsZW4gVGVpbDEgKEF6enVybywgIDEuIEp1biAxOTk1LCAxNjowODowNSk6CiBWT1JHRVNDSElDSFRFOgpadWVyaWxldSBlcnphZWhsdGUgZm9sZ2VuZGVuIFdpdHouOgpXYXMgaGFiZW4gRnJhdWVuIHVuZCBCaXJuZW4gZ2VtZWluc2FtPwpBdXMgYmVpZGVuIGZsaWVzc3QgU2FmdCB3ZW5uIGR1IGRlbiBTdGllbCByYXVzemllaHN0LgpVTkQgREFOTiBLQU0gREFTID0+CltBbGxnZW1laW46R3JpbW1ib3JuXSBXYXMgaGFiZW4gZGVubiBudW4gd2llZGVyIEJpcm5lbiBtaXQgT3JnYXNtZW4genUgdHVuPwpbQWxsZ2VtZWluOkdyaW1tYm9ybiBkZXIgQXRoZWlzdCBpc3QgcmF0bG9zLl0KW0FsbGdlbWVpbjpBenp1cm9dIGljaCBrZW5uZSBkYXMgc2Nob24gbWl0IEJpZW5lbiB1bmQgQmx1bWVuIGFiZXIgbmljaHQgbWl0CltBbGxnZW1laW46QXp6dXJvXSBCaXJuZW4uCiBbQWxsZ2VtZWluOkdhcmZpZWxkXSBsb3MsIGd1bm5pLCB3aXIgZ2ViZW4gaWhuZW4gamV0enQgbmFjaGhpbGZlIQogW0FsbGdlbWVpbjpHdW5kdXJdIGFlaGVtIGFlaCBudW5qYSA6LSkKIFtBbGxnZW1laW46R3JpbW1ib3JuXSBBbHNvLCBTY2hsYWdzYWhuZSwgT2xpdmVuLCBIb25pZywgYWxsZXMgYmVrYW5udCwgYWJlcgogW0FsbGdlbWVpbjpHcmltbWJvcm5dIEJpcm5lbj8KIFtBbGxnZW1laW46TG9jbyB3aXJmdCBsaWViZXIgZmF1bGUgVG9tYXRlbiBhdWYgQmlybmVuLi4uICh3byBpc3QgZGVyCiBQb2xpdGlrLWNoYW5uZWw/KV0KIFtBbGxnZW1laW46R2FyZmllbGRdIGphPyBmYWVsbHQgZGlyIG5peCBlaW4/CiBbQWxsZ2VtZWluOlp1ZXJpbGV1XSBhaGggd2VsY2hlciBkZXBwIGhhdCBtZWluIHZlcmhlaXJhdGV0IG1pdCBhdmFsb25hCiBbQWxsZ2VtZWluOlp1ZXJpbGV1XSBhYmdlYWVuZGVydCwgZGVyIHNvbGwgZXMgYml0dGUgd2llZGVyIGFlbmRlcm4gdW5kIGljaAogW0FsbGdlbWVpbjpadWVyaWxldV0gd2VyZGUgZGllIFNhY2hlIG5pY2h0IG1lbGRlbiAhCiBbQWxsZ2VtZWluOkdhcmZpZWxkXSB1bmQgamV0enQgZGFjaHRlIGljaCBrdXJ6emVpdGlnLCB6dWVyaSBnaW5nZSBlcyBtYWwKZ3V0LgogW0FsbGdlbWVpbjpFdGFpbl0gbmVlLCBiaXJuZSBpbSBiZXR0IGlzdCBla2xpZy4uLiBrb2VubnQgaWhyIGV1Y2ggbmljaHQgd2FzCiBbQWxsZ2VtZWluOkV0YWluXSBhbmRlcmVzIGVpbmZhbGxlbiBsYXNzZW4/IDspKQogW0FsbGdlbWVpbjpHYXJmaWVsZF0gd2FzIGFuZGVyZXMgbWl0IHN0aWVsPwogW0FsbGdlbWVpbjpHYXJmaWVsZCBncmluc3RdCiBbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gYXBmZWw/CiBbQWxsZ2VtZWluOkV0YWluXSBsaWViZXIgd2FzIG1pdCBzdGlsLgogW0FsbGdlbWVpbjpHdW5kdXJdIGVpcwogW0FsbGdlbWVpbjpHYXJmaWVsZF0genV3ZW5pZyBmbHVlc3NpZ2tlaXQuCiBbQWxsZ2VtZWluOkd1bmR1cl0gZWlzIG1pdCBzdGlsCiBbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gKnBydXV1dXV1dXV1dXVzdCoKIFtBbGxnZW1laW46R3JpbW1ib3JuXSBBbHNvLCBpY2ggd3VlcmRzIGpldHp0IGFiZXIgd2lya2xpY2ggZ2VybmUgbWFsCndpc3Nlbi4KIFtBbGxnZW1laW46R2FyZmllbGRdIGVpcyBpc3QgbmljaHQgc2NobGVjaHQuCiBbQWxsZ2VtZWluOkV0YWluIGhhdCBlaXMgZ2Vob2VydC4uLiBFSVMhISFdCiAgW0FsbGdlbWVpbjpadWVyaWxldV0gbnVuamEgc2NocnVtcGZpIGFlbW0gaWNoIG1hY2ggbmljaHRzIGZhbHNjaCwgaGloaSB1bmQKZXMKIFtBbGxnZW1laW46WnVlcmlsZXVdIHNhZnRldCByZWNodCB3ZW5uIGljaCBpaG4gZGFuYWNoIChuYWNoIGRlbSB2ZXJrZWhyKQogW0FsbGdlbWVpbjpadWVyaWxldV0gcmF1c3ppZWhlLCBudW4gZGVyIHdpdHogaXN0IG5pY2h0IHZvbiBtaXIgPTopCltBbGxnZW1laW46R3JpbW1ib3JuXSBBbGluZSBoYXR0ZSBkb2NoIG1hbCB3YXMgbWl0IG5lbSBFaXNkaWxkby4uLgpbQWxsZ2VtZWluOlNjaHJ1bXBmaSBpcyBzaWNoIGRhIGFiZXIgbmljaHQgc28gc2ljaGVyXQogW0FsbGdlbWVpbjpadWVyaWxldV0gZ2FyZmllbGQgbWlyIGdlaHQgZXMgYXVjaCBndXQgbnVyIHdlaXNzIGljaCBuaWNodCB3aWUKW0FsbGdlbWVpbjpadWVyaWxldV0gaWNoIGRhcyB3aWVkZXIgYWVuZGVybmtvZW5udGUgdW5kIGRhcnVtIG1hY2h0ZSBlcyBtaWNoCltBbGxnZW1laW46WnVlcmlsZXVdIGt1cnogc2F1ZXIgPTopCltBbGxnZW1laW46R3Vlcmdlbl0gd2llIHdhciBkYXMgbm9jaCBtaXQgZGVyIHBvcG8tcHVtcGUgLCBncmltbWJvcm4/CgpmaW5nZXIgenVlcmlsZXUKClp1ZXJpbGV1IGlzdCBlaW5nZWxvZ2d0LAp1bmQgendhciB2b246IGV6aW5mby5ldGh6LmNoICgxMjkuMTMyLjIuNzIpIFtTY2h3ZWl6XS4KVm9sbGVyIE5hbWU6IEhBUkRNRVRBTExFUiBadWVyaWxldSBsYWFuZ2hhYXJpZ2VyIHRhdG9vdmllcnRlciBNYWdpZXIsIHNvbnN0Cm5peCEKUmFzc2U6IEhvcnNlcyBGbHlpbmcsICAgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApWZXJoZWlyYXRldCBtaXQ6IEJpcm5lClNlaXQgZGVtIDMwLjExLic5NCBiZXJlaXRzIDQgbWFsIGdlc3RvcmJlbgpSZWdpb25zbWl0YXJiZWl0ZXIgdm9uOiBEc2NodW5nZWwuCgpUZWlsIDIgZm9sZ3QgYmVzdGltbXQhIFNvcnJ5IGZ1ZXIgZGFzIHNjaGxlY2h0ZSBMYXlvdXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJpcm5lbiB1bmQgU3RpZWxlIFRlaWwyIChBenp1cm8sICAxLiBKdW4gMTk5NSwgMTY6MTQ6MDIpOgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gV2VubiBtaXIgamV0enQgYml0dGUgamVtYW5kIGRhcyBtaXQgZGVtIFN0aWwsIGRlbQogW0FsbGdlbWVpbjpHcmltbWJvcm5dIHdlaWJsaWNoZW4gT3JnYXNtdXMgdW5kIGRlbSBFaXMgZXJrbGFlcmVuIGtvZW5udGUuLgogW0FsbGdlbWVpbjpHYXJmaWVsZF0gYWxzbywgZ3JpbW1tLiBhbmdlZmFuZ2VuIGhhdCBhbGxlcyBtaXQgZWluZXIgYmlybmUgdW5kCiBbQWxsZ2VtZWluOkd1bmR1cl0gdWQgZGllIGJpcm5lIGhhdCBpc2NoIGluIGVpbmVuIGFwZmVsIHZlcndhbmRlbHQKIFtBbGxnZW1laW46RXRhaW5dIGFlaCwgZ2FyZmllbGQsIHdhciBkYXMgbmljaHQgbWFubiwgYmF1bSB1bmQgYXBmZWw/CltBbGxnZW1laW46R2FyZmllbGRdIGdlbmF1CltBbGxnZW1laW46R2FyZmllbGRdIGFlaCwgbW9tZW50LgpbQWxsZ2VtZWluOkd1bmR1cl0gYmlybmUgdW5kIHNjaGxhbmdlIG8gd2FycyA6LSkKIFtBbGxnZW1laW46R2FyZmllbGQgc2NobGFlZ3QgbiBkZXIgYmliZWwgbmFjaAogW0FsbGdlbWVpbjpHYXJmaWVsZF0gZGEgd2FyIGFiZXIgYXVjaCBlaW5lIGZyYXUKIFtBbGxnZW1laW46R3VuZHVyXSBuZW5lCiBbQWxsZ2VtZWluOkdhcmZpZWxkXSBkaWUgaGllc3Mgc28gYWVobmxpY2ggd2llLi4uCltBbGxnZW1laW46WnVlcmlsZXVdIHd1ZXJkZSBqZXR6dGVpbiBsaWViZXIgYml0dGUgZXMgd2llZGVyIGF1ZiBhdmFsb25hCltBbGxnZW1laW46WnVlcmlsZXVdIGFlbmRlcm4sIG9kZXIgbXVzcyBpY2ggZGFzIHByb2JlcnRpZSBzZWxiZXIgcmF1c3N1Y2hlbiA/CltBbGxnZW1laW46WnVlcmlsZXVdIE51ciB3YWVyZSBkYW5uIGplZGVyIE1hZ2llciBvbmxpbmUgdmVyYWVuZGVydCBkYSBpY2ggamEKW0FsbGdlbWVpbjpadWVyaWxldV0gZGVuIHNjaHVsZGlnZW4gbmljaHRzIG5hY2h3ZWlzZW4ga2FubiA9OikgKmdyaW5zCltBbGxnZW1laW46WnVlcmlsZXVdIGRhZW1saWNoKgpbQWxsZ2VtZWluOkV0YWluXSBqYWphLCBkaWUgaGF0IGFkYW0gd2VnZW4gZGVzIHNjaHdlaW5rcmFtcyByYXVzZ2V3b3JmZW4sIGRlbgpbQWxsZ2VtZWluOkV0YWluXSBlciBnZW1hY2h0IGhhdC4uLgogW0FsbGdlbWVpbjpHYXJmaWVsZF0gc2Nod2VpbmtyYW0/IGpldHp0IGVyemFlaGwgbWFsLCBldGFpbgpbQWxsZ2VtZWluOkdhcmZpZWxkXSBpY2ggZGFjaHRlLCB3ZWdlbiBkZW0gYXBmZWxrb21wb3R0CiBbQWxsZ2VtZWluOkdhcmZpZWxkXSB1bmQgdWViZXJoYXVwdCBzb2xsIGRhcyBkb2NoIG5pY2h0IGFkYW0gZ2V3ZXNlbiBzZWluLApbQWxsZ2VtZWluOkdhcmZpZWxkXSBkZXIgaXN0IGRvY2ggc2NodWxkIG9kZXI/CltBbGxnZW1laW46RXRhaW5dIG5pY2h0PyBpY2ggZGFjaHRlLCBkZXIgaGFldHRlIGJpcm5lIGFuZ2VrbmFiYmVydC4uLiBvZGVyCltBbGxnZW1laW46RXRhaW5dIHdhcnMgZG9jaCBhcGZlbD8gYXVmIGplZGVuIGZhbGwgd2FycyBla2xpZy4gOykKW0FsbGdlbWVpbjpadWVyaWxldV0gZGFua2UgYXp6dXJvLCA9Oikga2VpbmUgYW5nc3QgbGV1dGUgaWNoIGJpbiBuaWNodCBib2VzZQpbQWxsZ2VtZWluOlp1ZXJpbGV1XSA9OikgaWNoIGhhZXQgbnVyIGtlaW5lIGx1c3QgMTAgc2VpdGVuIHByb2JpZXJ0aWVzCltBbGxnZW1laW46WnVlcmlsZXVdIHVtenVibGFldHRlcm4gPTopCltBbGxnZW1laW46R3VuZHVyXSBoYXR0ZXIgbmljaHQgYW4gZGVyIGZyYXUgcnVtZ2VrbmFiYmVydD8KW0FsbGdlbWVpbjpHYXJmaWVsZF0gdW5kIHdpZSB3YXIgZGFzIGRhbWFscywgaGF0dGVuIGRhIGRpZSBiaXJuZW4gc2Nob24gc3RpbD8KW0FsbGdlbWVpbjpHYXJmaWVsZF0gb2RlciBudXIgZGllIGFlcGZlbD8KW0FsbGdlbWVpbjpFdGFpbl0gYWxzbywgc293ZWl0IGljaCB3ZWlzcyBoYXQgYmlybmUgbm9jaCBuaWUgc3RpbCBnZWhhYnQuLi4KW0FsbGdlbWVpbjpFdGFpbl0gaG0uLi4gbWFsIG5hY2hkZW5rZW4uIDopCltBbGxnZW1laW46R2FyZmllbGRdIHVuZCBpY2ggZGFjaHRlIGltbWVyLCBkZXIgc3RyZWl0IGdpbmcgdW0gYXBmZWxrb21wb3R0CltBbGxnZW1laW46R2FyZmllbGRdIC4uLgogW0FsbGdlbWVpbjpBenp1cm8gbmlja3QgRXRhaW4genUuXQogW0FsbGdlbWVpbjpHYXJmaWVsZCBzY2hlaW50IGRhIGVpbmlnZXMgbmljaHQgZ2FueiByaWNodGlnIGVpbmdlcGFja3QgenUKaGFiZW4uXQpbQWxsZ2VtZWluOkdhcmZpZWxkXSB1ZWJyaWdlbnMgZ3VuZHVyLCBuaWNodCBhbGxlIG1hZW5uZXIgYmVpc3NlbiBmcmF1ZW4hCiBbQWxsZ2VtZWluOkd1bmR1cl0gYWVoIHdhcyB3aWU/IDotKQogW0FsbGdlbWVpbjpFdGFpbl0gYmVzdGltbXQsIGdhcmZpZWxkLiB3ZW5uIGR1cyByaWNodGlnIGVpbmdlcGFja3QgaGFldHRlc3QsCltBbGxnZW1laW46RXRhaW5dIHdhZXJzIGpldHp0IG5pY2h0IHplcm1hdHNjaHQgdW5kIG11cy4gOikKIFtBbGxnZW1laW46R2FyZmllbGRdIG5hLCBhZGFtIGhhdCBzZWluZSBuaWNodCBnZWJpc3Nlbi4KIFtBbGxnZW1laW46R3VuZHVyXSB1bmQgb2IgZXIgaGF0CiBbQWxsZ2VtZWluOkdhcmZpZWxkXSBoYWIgaWNoIHdhcyB2ZXJwYXNzdD8gd2FyIGRpZSBzYWNoZSBtaXQgZGVtIG11cyB1bmQKZGVyCltBbGxnZW1laW46R2FyZmllbGRdIGZsdWVzc2lna2VpdCBuaWNodCBlcnN0IG5hY2ggZGVyIGVyZmluZHVuZyBkZXMgc3RpbHM/CltBbGxnZW1laW46R2FyZmllbGRdIHdvaGVyIHdpbGxzdCBkdSB3aXNzZW4sIHdhcyBhZGFtIGhhdD8KIFtBbGxnZW1laW46R2FyZmllbGRdIGRhdm9uIHZlcnN0ZWhzdCBkdSB3aXJrbGljaCBuaWNodHMuCiBbQWxsZ2VtZWluOkdhcmZpZWxkXSBoYXR0ZSBhZGFtIGVpZ2VudGxpY2ggc3RpbD8gOy0pCiBbQWxsZ2VtZWluOkdhcmZpZWxkXSBuYSwgZ3JpbW1tLCBhbGxlcyBrbGFyPwogW0FsbGdlbWVpbjpFdGFpbl0gYmVzdGltbXQgbmljaHQuIG1hZW5uZXIgbWl0IHN0aWwgd2VyZGVuIG5pY2h0CnJhdXNnZXdvcmZlbi4KW0FsbGdlbWVpbjpFdGFpbl0gOikKIFtBbGxnZW1laW46R2FyZmllbGRdIHdlbGNoZSBvaG5lIGtvbW1lbiBlcnN0IGdhciBuaWNodCByZWluLiB3aWUgYXVjaD8KCkRpZXNlcyB3YXIgZGVyIHp3ZWl0ZSBUZWlsLCBkb2NoIGRlciBkcml0dGUgZm9sZ3Qgc29nbGVpbD8hClNvcnJ5IHdlbm5lcyBlaW4gd2VuaWcgbGFuZyBpc3QsIGFiZXIgaWNoIGhhYmUgY2hvbiBkaWUgaGFlbGZ0ZSByYXVzZ2Vub21tZW4uCkF6enVybwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV3Ymlla2l0IChIb3VkaW5pLCAgMS4gSnVuIDE5OTUsIDE2OjE5OjQ1KToKSWNoIHdlaXNzIG5pY2h0LCBvYiBzb3dhcyBzY2hvbm1hbCBkaXNrdXRpZXJ0IHd1cmRlLCBhYmVyIHdpZSB3YWVycyBtaXQgbmVtCk5ld2JpZWtpdCwgZWluZXIgQXVzcnVlc3R1bmcgZnVlciBqZWRlbiBTdGFydGVyLCBkaWUgendhciBuaWNodHMgd2VydCBpc3Qgb2RlcgpudXIgbWluaW1hbCB3ZXJ0IGlzdCwgYWJlciBBbmZhZW5nZXJuIGhpbGZ0ID8gSWNoIGhhYiBtYWwgVGVzdG1hZXNzaWcgZWluZW4KTmV3YmllIGFuZ2Vsb2dndCwgdW5kIHVudGVyc3R1ZXR6ZW5kZSBIaWxmZSBnYWJzIGRhIGthdW0sIHNvbmRlcm4gc29nYXIKendlaW1hbCBkaWUgRW1wZmVobHVuZywgbWFsIGRpZSBrbGVpbmVuIFN0ZWluYmVpc3NlciB6dSBiZXN1Y2hlbiAuLi4KRmFsbHMgZXMgZGllIERpc2t1c3Npb24gc2Nob25tYWwgZ2FiLCB2ZXJnZXNzdCBlcywgYWJlciBpY2ggZGVua2UsIG5lIEhpbGZlCndhZXJzIHNjaG9uIC4uLgpIb3VkaW5pIGF1ZiBFbnR3aWNrbHVuZywgb3ZlciBhbmQgb3V0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCaXJuZW4uLi4gbGV0enRlciBUZWlsIChBenp1cm8sICAxLiBKdW4gMTk5NSwgMTY6Mjk6NDUpOgoKW0FsbGdlbWVpbjpHcmltbWJvcm5dIEFsc28gaWNoIHZlcnN0ZWhlIG5pY2h0cy4gSWNoIHdpZWRlcmhvbGUgbm9jaG1hbCBtZWluZQpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gRnJhZ2U6CiBbQWxsZ2VtZWluOkdyaW1tYm9ybl0gV28gaGFiZW4gRnJhdWVuIGRlbm4gbnVuIGVpbmVuIFN0aWw/CiBbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gc3RpbCBoYWJlbiBzaWUKIFtBbGxnZW1laW46QXp6dXJvXSBVbmQgd2FzIGlzdCBlaW4gU3RpbGxlYmVuIDspCiBbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gbnVyIGtlaW5lbiBzdGllbCA6KQpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gTmFqYS4uLgpbQWxsZ2VtZWluOkdhcmZpZWxkXSBHb3R0IHNjaHVmIGRpZSBGcmF1LCBkYXMgc3RpZWxsb3NlIFdlc2VuLgpbQWxsZ2VtZWluOkhlbGxvd2Vlbl0gYWIgdW5kIHp1IGtyaWVnZW4gc2llIG1hbCBlaW5lbiA6KT0KW0FsbGdlbWVpbjpTY2hydW1wZmkgd2lsbCB1bmQgYnJhdWNodCBrZWluZW5dCltBbGxnZW1laW46WnVlcmlsZXVdIGFyZ2wsIG5pY2h0IGZyYXVlbiBzb25kZXJuIGRpZSBtYWVubmVyIHdlbm4gc2llIGlobiB3bwpbQWxsZ2VtZWluOlp1ZXJpbGV1XSBlaW5zdGVja2VuIGJlaWRlbiBmcmF1ZW4sIG9kZXIgZ2xhdWJzdGR1IG5vY2ggYW4KQmllbmNoZW4KW0FsbGdlbWVpbjpadWVyaWxldV0gdW5kIGJsdWVtY2hlbiA/CiBbQWxsZ2VtZWluOlp1ZXJpbGV1IHdpcmQgZGFzIHp1ZHVtbV0KIFtBbGxnZW1laW46R2FyZmllbGRdIHNjaHJ1bXBmaSwgZGFzIHdhciBkZXIgYmV3ZWlzIQpbQXVma2xhZXJ1bmc6SmVtYW5kXSBXZWdlbiBkZXIgZ3Jvc3NlbiBhbmZyYWdlIGlzdCBkZXIgS2FuYWwgZXJvZWZmbmV0CndvcmRlbi4KIFtBbGxnZW1laW46SGVsbG93ZWVuXSBnZW5hdSBkYW5uIGtyaWVnZW4gZnJhdWVuIGphIGVpbmVuIChlaW5nZWZ1ZWhydCkKW0FsbGdlbWVpbjpHYXJmaWVsZCBkZXV0ZXQgYXVmIGdyaW1tbV0KW0FsbGdlbWVpbjpZYXNtaW4gc2luZ3Qgd2FzIHZvbSBTdWxhbGFuZCAuLi5dCltBbGxnZW1laW46RXRhaW4gZ2xhdWJ0IGdhbnogZmVzdCBhbiBiaWVuY2hlbiB1bmQgYmx1ZW1jaGVuLiBkaWUgc2luZCBiZWkgbWlyCnZvcm0gZmVuc3RlciwgZGllIGthbm4gaWNoIHNvZ2FyIFNFSEVOISA6KV0KW0FsbGdlbWVpbjpHYXJmaWVsZF0genVlcmlzIHdpdHogd2FyIHp1IGxhbmchISEKIFtBbGxnZW1laW46WnVlcmlsZXVdIHp1IGxhbmcgPyBlcndhciB6dSBrdXJ6CiBbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gZWhlciB6dSBrdXJ6ICpsYWNod2VnKgogW0FsbGdlbWVpbjpHYXJmaWVsZF0gZXRhaW4sIHdvIGJpc3QgZHUsIGluIGF1c3RyYWxpZW4/IGlzdCBiZWkgZGlyIG5pY2h0CltBbGxnZW1laW46R2FyZmllbGRdIGR1bmtlbmw/CiBbVG9kOkV0YWluXSBFaW4gQmllbmNoZW4gaGF0IGdlcmFkZSBFdGFpbiBnZXRvZXRldC4KIFtBbGxnZW1laW46RXRhaW5dIHRqYSwgbnVyIHdpciBmcmF1ZW4gaGFiZW4gaWhuIHZlcnN0YW5kZW4gdW5kCltBbGxnZW1laW46RXRhaW5dIHdlaXRlcmVudHdpY2tlbHQsIGRpZSBtYWVubmVyIGJyYXVjaGVuIG5lIHplaWNobnVuZy4gOikKW0FsbGdlbWVpbjpadWVyaWxldV0gbnVuamEgYWVtbSBhYmVyIG51ciBkZXIgd2l0eiBuaWNodCBkZXJzdGllbAogW0FsbGdlbWVpbjpHYXJmaWVsZF0ga29tbXQgZHJhdWYgYW4sIG5pY2h0IHdhaHI/CiBbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gZGFzIGlzIGphIGRlciB3aXR6CltBbGxnZW1laW46R2FyZmllbGRdIGRlciBsYW5nZT8KIFtBbGxnZW1laW46U2NocnVtcGZpXSBkZXIga3VyemUKW0FsbGdlbWVpbjpBenp1cm9dIEJpcm5lID0+IFN0aWVsID0+IFJBVVMgPT4gLm8uTy4gVFJPUEZFTgpbQWxsZ2VtZWluOkdhcmZpZWxkXSBoZXJ2b3JyYWdlbiwgYXp6dXJybyEhIQpbQWxsZ2VtZWluOkdhcmZpZWxkXSBkYXMgaGFzdCBhdWNoIGR1IHZlcnN0YW5kZW4sIGdyaW1tbSwgbmljaHQgd2Focj8KIFtBbGxnZW1laW46RXRhaW5dIGphLCBtdXNzIG1hbiB3aXJrbGljaCBsb2Jlbi4uLiBkYXMga2FubiBzb2dhciBlaW4gbWFubgpbQWxsZ2VtZWluOkV0YWluXSB2ZXJzdGVobi4gOikKCkRhcyB3YXJzIGRhenUuIEFiZXIgbm9jaCBsYW5nZSBuaWh0IGFsbGVzLiBEYSBzb2xsIG5vY2ggamVtYW5kIHVlYmVyIGxlZXJlClplaXR1bmdlbiBtb3R6ZW4KQXp6dXJvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmlybmVuLi4uIGxldHp0ZXIgVGVpbCAoQmFib29uLCAgMS4gSnVuIDE5OTUsIDE2OjM1OjUyKToKIyEgcm49QXp6dXJvIHJ0PTgwMjAxNjk4NQpPaCBtYW5uLCBzY2hvbiB3aWVkZXIgIk5peCBuZXVlcyBhdWYgZGVyIFdlbHQiISA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp1ZXJpIHVuZCBzZWluIGJlc3RlciBGcmV1bmQgKEF6enVybywgIDEuIEp1biAxOTk1LCAxNjozNzoyMSk6CltBbGxnZW1laW46WnVlcmlsZXUgc2NoYXV0IG5hY2ggdW50ZW4gdW5kIGZpbmRldCBzZWluZW4gZ2VudWcgTGFuZyA9OildCltBbGxnZW1laW46R2FyZmllbGRdIG9vb29vb2NoCltBbGxnZW1laW46R2FyZmllbGRdIGdyYXRzLCB6dWVyaQogW0FsbGdlbWVpbjpHYXJmaWVsZF0gZGFyZnN0IGRpZSBob3NlIHdpZWRlciB6dW1hY2hlbgogW0FsbGdlbWVpbjpBenp1cm9dIFp1ZXJpIHNpdHp0IER1IG5hY2t0IHZvcm0gTW9uaXRvcj8KIFtBbGxnZW1laW46U2NocnVtcGZpXSBtaXQgZGVyIGx1cGUgaXMgZXMgYWJlciBnZXNjaHVtbWVsdApbQWxsZ2VtZWluOlNjaHJ1bXBmaSBsYWNodCBzaWNoIHdlZ10KKm11ZWZmZWwqCltBbGxnZW1laW46R2FyZmllbGRdIHBydXV1dXVzdApbQWxsZ2VtZWluOkV0YWluXSBQUlVVVVVVVVVTVCEKIFtBbGxnZW1laW46U2NocnVtcGZpIGtpY2hlcnQgaGVtbXVuZ3Nsb3NdCiBbQWxsZ2VtZWluOkF6enVybyBraWNoZXJ0XQpbQWxsZ2VtZWluOlp1ZXJpbGV1XSBoaWhpIGF6enVybywgbm9lIGFiZXIgaWNoIGhhYmUgaWhuIGFscyBqdWdlbmRsaWNoZXIgbWFsCltBbGxnZW1laW46WnVlcmlsZXVdIGdlbWVzc2VuID06KSAqQmlnIHNtaWxlKiBzY2hvbiBsYW5nZSBoZXIuLi4gIGFlbW0KW0FsbGdlbWVpbjpadWVyaWxldV0gc2NocnVtcGZpIGhpaGkgbnVuamEgd2VubiBkdSB3dWVzc3Rlc3QgPTopKSBHYXJmaWVsZDoKW0FsbGdlbWVpbjpadWVyaWxldV0gbnVuamEgaGloaSBhY2ggbGFzc2VuIHdpcnMKW0FsbGdlbWVpbjpTY2hydW1wZmldICpncmVvaGwqCltBbGxnZW1laW46RXRhaW4gZnJldXQgc2ljaCBzY2hvbiBhdWYgc2NobWFycm5dCltBbGxnZW1laW46U2NocnVtcGZpXSBhZWggKmdyb2VobCoKIFtBbGxnZW1laW46QXp6dXJvXSBJY2gga29lbm50ZSBqYSBlaW5lbiBGcmFnZWJvZ2VuIHdpZSBIYXRlIGluIGRpZSBaZWl0dW5nCltBbGxnZW1laW46QXp6dXJvXSBzZXR6ZW4gOykKIFtBbGxnZW1laW46U2NocnVtcGZpXSAqcHJ1dXV1dXV1dXV1dXV1dXV1dXV1dXV1c3QqCiBbQWxsZ2VtZWluOkV0YWluXSB1bmQgd2FzIHdpbGxzdCBkdSBkYXJpbiBmcmFnZW4/IHdlbGNoZSBtdWRkZXIgbmFja3Qgdm9ybQpbQWxsZ2VtZWluOkV0YWluXSBtb25pdG9yIHNpdHplbj8KIFtBbGxnZW1laW46QXp6dXJvXSBYWFhYIGhhdCBnZXJhZGUgZWluIEFiZW50ZXVlciBiZXN0YW5kZW4gdW5kIGZ1ZXJ0IGpldHp0CltBbGxnZW1laW46QXp6dXJvXSBkZW4gVGl0ZWwgWFhYWCwgZGllIEJpcm5lIG1pdCBkZW0gbGFlbmdzdGVuIFN0aWVsCiBbQWxsZ2VtZWluOkdhcmZpZWxkXSBhbHMgYWxsZXJlcnN0ZXMgRGVpbiBBbmdldHJhdXRlciwgb2Rlcj8KW0FsbGdlbWVpbjpadWVyaWxldV0gSGV5IHZvbiB3YXMgZGVua3QgaWhyIGVpZ2VudGxpY2ggZGFzIGljaCByZWRlID8sIEljaApbQWxsZ2VtZWluOlp1ZXJpbGV1XSByZWRlIHZvbiBtZWluZW0gRnVzcyAhID06KQpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gYWhhIG1pdCBkZW0gZnVzcwogW0FsbGdlbWVpbjpTY2hydW1wZmldIHNvc28KIFtBbGxnZW1laW46QXp6dXJvXSBXZW5uIGR1IHZvbiBkZWluZW0gRnVzcyByZWRlc3QsIGRhbm4gdmVyc3RlaGUgaWNoIGRhcwpkb2NoCltBbGxnZW1laW46QXp6dXJvXSBuaWNodCBtaXQgZGVyIEJpcm5lIHVuZCBkZXIgRnJhdSEKIFtBbGxnZW1laW46R2FyZmllbGRdIGhpaCB6dWVyaSBrcmllZ3Qga2FsdGUgZnVlc3NlIC4uLgpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gaW50ZXJlc3NhbnQgd2FzIGR1IHNvIGJlaSBkZWluZW4gbGllYmVzc3BpZWxlbiBtYWNoc3QKW0FsbGdlbWVpbjpTY2hydW1wZmldIDotKSkKIFtBbGxnZW1laW46R2FyZmllbGRdIGdlbmF1LCB2ZXJ3aXJydCBkb2NoIGpldHp0IG5pY2h0IGRlIGFybWUgZ3JpbW1tIHdpZWRlcgpbQWxsZ2VtZWluOkdhcmZpZWxkXSBzbwovcGxheWVycy9henp1cm8+IFtBbGxnZW1laW46U2NocnVtcGZpXSBlcnphZWhsIHVucyBtZWhyIHVlYmVyIGRlaW4KbGllYmVzbGViZW4genVlcmkKIFtBbGxnZW1laW46U2NocnVtcGZpIGxhY2h0IHNpY2ggd2VnXQpbQWxsZ2VtZWluOlp1ZXJpbGV1XSBpY2ggc29sbCB1ZWJlciBtZWluIGxpZWJlc2xlYmVuIGJlcmljaHRlbiA/IGphIGtsYXIgd2VubgpbQWxsZ2VtZWluOlp1ZXJpbGV1XSBpaHIgdm9uIGV1Y2ggYXVjaCB3YXNlcnphZWhsdCBrZWluIHByb2JsZW0gKnNhYmJlcioKW0FsbGdlbWVpbjpBbmFraW5dIGFyZ2wsIG5vY2ggZWluIFN1bXBmLi4ubmUgaGV1dGUgbmljaHQgbWVocgpbQWxsZ2VtZWluOlNjaHJ1bXBmaSBoYXQga2VpbnNdCiBbQWxsZ2VtZWluOkdhcmZpZWxkIHRhZXRzY2hlbHQgc2NocnVtcGZpIGRlbiBrb3BmIChtaXRmdWVobGVuZCldCiBbQWxsZ2VtZWluOlp1ZXJpbGV1XSBhY2ggZHVtbWUgYXVzcmVkZSwgbWFlZGVscyBoYWJlbiBkb2NoIHNpY2hlciBhbGxlIGJpcwpbQWxsZ2VtZWluOlp1ZXJpbGV1XSAyMGogc2Nob24gbWFsIG1pdCBqZW1hbmRlbSBnZXNjaGxhZmVuICEgPTopCltBbGxnZW1laW46U2NocnVtcGZpXSBhYmVyIG51ciBvaG5lIHN0aWVsCltBbGxnZW1laW46U2NocnVtcGZpXSBkYWZ1ZXIgbWl0IHN0aWwKX1tBbGxnZW1laW46R2FyZmllbGQgcmVjaG5ldCBlcm5zdGhhdCBhbmdlc3RyZW5ndF0KIFtBbGxnZW1laW46RXRhaW5dIHdhcnVtIHNvbGx0ZW4gd2lyLCB6dWVyaT8gZGllIG1laXN0ZW4gbWFlbm5lciBzaW5kIGRvY2gKZWgKW0FsbGdlbWVpbjpFdGFpbl0gc3RpbGlsb3MuCiBbQWxsZ2VtZWluOkdhcmZpZWxkXSB1bmQgZHU/IHdpZSBpc3QgZGFzIG1pdCBkZW4gbWFlbm5lcm4/CltBbGxnZW1laW46WnVlcmlsZXVdIG51bmphaWNoIGhhYmUgYXVjaCBrZWluIHN0aWVsIHNvbmRlcm4gZWluIHByYWVjaHRpZ2VzCltBbGxnZW1laW46WnVlcmlsZXVdIGV4ZW1wbGFyIGVpbmVzPz8KW0FsbGdlbWVpbjpadWVyaWxldV0gZ3J1bW1lbApbQWxsZ2VtZWluOkV0YWluXSB6dWVyaSwgZHUgaGFzdCBrZWluZW4gc3RpbD8gb2gsIG1laW4gYmVpbGVpZCwgbGllYmVyLi4uCltBbGxnZW1laW46U2NocnVtcGZpIHRyb2VzdGV0IHdpbGxvdyBzbyBndXQgc2llIGthbm5dCiBbQWxsZ2VtZWluOlp1ZXJpbGV1XSBldGFpbiwgaWNoIGhhYmUga2VpbmVuIFN0aWVsIHNvbmRlcm4gZWluZW4gU2Nod2FueiB1bmQKW0FsbGdlbWVpbjpadWVyaWxldV0gamV0enQgb2VkZXQgbWljaGRhcyB0aGVtYSBsYW5nc2FtIGFuID06KQpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0ga2FubnN0IGR1IGF1Y2ggd2VkZWxuPwogW0FsbGdlbWVpbjpHdW5kdXJdICpraWNoZXIqCiBbQWxsZ2VtZWluOkV0YWluXSBpc3QgZGVpbiBzY2h3YW56IGF1Y2ggYnVzY2hpZywgenVlcmk/IHNvIHdpZSBkZXIgdm9uIG5lbQpbQWxsZ2VtZWluOkV0YWluXSBlaWNoaG9sZXJuY2hlbj8KIFtBbGxnZW1laW46QXp6dXJvIGxhY2h0IHNpY2ggd2VkZWxuZGVyd2Vpc2Ugc2NobGFwcC5dCiBbQWxsZ2VtZWluOkdhcmZpZWxkIHNjaHJlaXQgc2NocnVtcGZpIHZvciBsYWNoZW4gYW5dCltBbGxnZW1laW46RXRhaW4gZ3JpbnN0IHNjaHJ1bXBmaSBhbl0KW0FsbGdlbWVpbjpHYXJmaWVsZF0gbm9jaG4gbmFja3RlciB2b3JtIHBjCltBbGxnZW1laW46R3VuZHVyXSBidXNjaGlnIHdhZXIgZG9jaCB3YXMgb2Rlcj8gd2FzIHNhZ2VuIGRhIHVuc2VyZSBGcmF1ZW4KW0FsbGdlbWVpbjpHdW5kdXJdIGRhenU/IDotKQogW0FsbGdlbWVpbjpHYXJmaWVsZF0ga2l0emVsdCB2aWVsbGVpY2h0IGV0d2FzLCBhYmVyIGRpZSBpZGVlIGlzdCByZWl6dm9sbApbQWxsZ2VtZWluOkV0YWluXSB3dWVyZywgZGFzIGtpdHplbHQsIGd1bm5pLiA6KQpbQWxsZ2VtZWluOkd1bmR1cl0gKmdyaW5zKgpbQWxsZ2VtZWluOkV0YWluIGdyaW5zdCBnYXJmaWVsZCBhbl0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaHJ1bXBmaXMgSW50aW1nZXNjaGljaHRlbiAoQXp6dXJvLCAgMS4gSnVuIDE5OTUsIDE2OjQzOjI5KToKW0FsbGdlbWVpbjpadWVyaWxldV0gbnVuamEgYWVtbSB3aXIga29lbm5lbiBkYXMgc3BpZWwgamEgbWFsIHVtZHJlaGVuLApbQWxsZ2VtZWluOlp1ZXJpbGV1XSBzY2hydW1wZmkgZXJ6YWVobCB1bnMgZG9jaCBtYWwgdm9uIGRlaW5lciBCZWhhYXJ1bmcgaW4KW0FsbGdlbWVpbjpadWVyaWxldV0gZGVyIFVudGVyZ3VlcnRlbGluaWUgcmVnaW9uLCBpc3QgZGllIGF1Y2ggcm90IGdlZmdhZXJidAo/CiBbQWxsZ2VtZWluOkdhcmZpZWxkIGthdWZ0IGVpbmUgUGFja3VuZyBLb25kaXMgbWl0CkVpY2hob2VybmNoZW53dXNjaGVsaGFhcmVuXQogW0FsbGdlbWVpbjpTY2hydW1wZmldIG5vZSBncnVlbiB1bmQgYW4gZGVuIHNlaXRlbiBhdXNyYXNpZXJ0CiBbQWxsZ2VtZWluOkF6enVyb10gVW50ZXJndWVydGVsbGluZWllPyBpc3QgU2NocnVtcGZpIGF1Y2ggZWluIEthcmF0ZWthPwogW0FsbGdlbWVpbjpadWVyaWxldV0gbmUgZWNodCBpY2ggbWVpbmUgaWNoIGthbm4gbWVpbiBhbGxlcndlcnRlc3RlcwpbQWxsZ2VtZWluOlp1ZXJpbGV1XSBmYW1taWxpZW5nbHVlY2sgYXVjaCBzZWxiZXIgdmVyYXJzY2hlbiA9OigKIFtBbGxnZW1laW46U2NocnVtcGZpXSB0dXN0IGR1IGRvY2gKIFtBbGxnZW1laW46QXp6dXJvXSBTY2hydW1wZmk6IGdydWVuIGdlZmFlcmJ0PyBEYXMgZ2VodCBkYW5uIGRvY2ggbmljaHQgbWl0CltBbGxnZW1laW46QXp6dXJvXSBkZXIgQmlybmUuIERpZSBtYWNodCBuaWNodHMgbWl0IGRlbiBHcnVlbmVuCiBbQWxsZ2VtZWluOkdhcmZpZWxkXSBkaWUgcm90ZW4gYmlybmVuIHNpbmQgYXVjaCBzYWZ0aWdlciwgZ2VsbCB6dWVyaT8KW0FsbGdlbWVpbjpTY2hydW1wZmldIHdhcnVtIGdsYXVic3QgZHUgaGFiIGljaCBkYXMgZ2VtYWNodD8gOi0pCltBbGxnZW1laW46QXp6dXJvXSBVbmQgZWlubWFsIGltIE1vbmF0IGdpYnQgZGFzIGVpbmUgUm90LUdydWVuZSBLb2FsaXRpb24gPwogW0FsbGdlbWVpbjpHYXJmaWVsZF0gd2lya3QgZGFzLCBzY2hydW1wZmZpPwpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gdW5kIHdpZSA6KQpbQWxsZ2VtZWluOkdhcmZpZWxkXSBlaW5zIGEsIGF6enVybwpbQWxsZ2VtZWluOlNjaHJ1bXBmaSBrcmVpc2NodCB2b3IgbGFjaGVuXQpbQWxsZ2VtZWluOkdhcmZpZWxkIHByb2JpZXJ0IGRhcyBqZXR6dCBhdWNoIG1hbF0KW0FsbGdlbWVpbjpadWVyaWxldSBpc3QgZnVlcmRpZSBlaW5mdWVocnVuZyBlaW5lcyBTZXgtS2FubmFscywgaWNoIG1laW5lIGFlbW0KZnVlciB3ZW5pZ2VyIHZlcmtsZW1tdGUgTGV1dGUsIHVuZCBhYiAxOCBNdWQtVGFnZSBobW0uLiBudW5qYSBkb3J0IGthbm4gbWFuCmphCm1laHIgdWViZXIgbWVpbiBmYW1taWxpZW5nbHVlY2sgZXJmYWhyZW4gYWJlciBoaWVyIHdpcmRzIG1pciB6dSBkdW1tID06KV0KW0FsbGdlbWVpbjpDYXJlZnJlZSBmcmFndCBzaWNoLCBvYiBzaWUgdmllbCB2ZXJwYXNzdCBoYXQgP10KIFtBbGxnZW1laW46R2FyZmllbGRdIHdpZSBpc3QgZGFzIGJlaSBkaXIgbWl0IGRlciByb3RncnVlbmVuIGtvYWxpdGlvbiwKW0FsbGdlbWVpbjpHYXJmaWVsZF0gY2FyZWZyZWU/CiBbQWxsZ2VtZWluOkNhcmVmcmVlXSBOYSBkZW5uIDotKQogW0FsbGdlbWVpbjpBenp1cm9dIFdlY2tlciAtRHVzY2hlLSBTbGlwZWlubGFnZSAtIFNpY2hlciBmdWVobGVuIGFsbGUgVGFnZQpLTElOR0VMSU5HRUxJTkchISEhISEhISEhCiBbQWxsZ2VtZWluOkV0YWluXSBzb3JyeSwgYXp6dXJvLCBhYmUgbWl0IG5lbSB3ZWNrZXIgaW4gZWluZW0gemltbWVyIGZ1ZWhsZQpbQWxsZ2VtZWluOkV0YWluXSBpY2ggbWlsY2ggbmljaHQgc2ljaGVyLi4uIGVoZXIgdm9tIGZydWVoLW1vbnN0ZXIgYmVkcm9odC4KOikKIFtBbGxnZW1laW46WnVlcmlsZXVdIGpldHp0IG1pdCBub2NoIGdyb2Vzc2VyZW4gZmx1ZWdlbCAnZmx1ZWdlbGknCltBbGxnZW1laW46R2FyZmllbGRdIHdhcywgY2FyZWZyZWUga2FubiBmbGllZ2VuPwpbQWxsZ2VtZWluOkdhcmZpZWxkIHNjaHVldHRlbHQgZGVuIGtvZl0KW0FsbGdlbWVpbjpHYXJmaWVsZF0gcApbQWxsZ2VtZWluOkNhcmVmcmVlIGhhdCBGbHVlZ2VsY2hlbiAhXQpbQWxsZ2VtZWluOkV0YWluXSBjYXJlZnJlZSB2ZXJsZWlodCBGTFVFR0VMISA6KQpbQWxsZ2VtZWluOlp1ZXJpbGV1XSBqYSBzbGlwZWlubGFnZW4gaGFiZW4gZG9jaCBzbyBmbHVlZ2VsIGZ1ZXIgZGVuCltBbGxnZW1laW46WnVlcmlsZXVdIGF1c2xhdWZzY2h1dHogPTopCltBbGxnZW1laW46R2FyZmllbGRdIHdhciBkYXMgbmljaHQgYWx3YXlzPwpbQWxsZ2VtZWluOkxvY29dIEZsdWVnZWx2ZXJsZWloPyBXaWUgdmllbCBwcm8gVGFnPwpbQWxsZ2VtZWluOlp1ZXJpbGV1IGhvZmZ0IGF1ZiBBTElFTiA0XQpbQWxsZ2VtZWluOkV0YWluXSBjYXJlZnJlZSBhdWNoLCBnbGF1YiBpY2guCiBbQWxsZ2VtZWluOkdhcmZpZWxkXSBkYXMgaXN0IGZyYXVlbnNhY2hlLCBkYXZvbiB2ZXJzdGVoc3QgZHUgbmljaHRzLCBsb2NvCmxlaWRlcgpbQWxsZ2VtZWluOkV0YWluXSB6dWVyaS4gd2FzIHp1bSBkb25uZXJkcnVtbWVsIGhhdCBhbGllbiBtaXQgYWx3YXlzIHp1IHR1bj8/PwogW0FsbGdlbWVpbjpHYXJmaWVsZF0gaWNoIG1lcmtlIHNjaG9uLCBpY2gga2VubiBtaWNoIGRhIHp1d2VuaWcgYXVzLiBpY2gKW0FsbGdlbWVpbjpHYXJmaWVsZF0gc2Nod29lcmUgZWJlbiBkb2NoIGF1ZiBvYi4KW0FsbGdlbWVpbjpBenp1cm9dIFZpZWxsZWljaHQgbGF1ZmVuIGRpZSBqYSBhdWNoIGF1cy4KW0FsbGdlbWVpbjpMb2NvIGdydW1tZWx0IEdhcmZpZWxkIGFuXQpbQWxsZ2VtZWluOlNjaHJ1bXBmaSBrb2VubnRlIGphIGpldHp0Li4uLi4gbmVpbiBzaWUgc2FndCBsaWViZXIgbml4IDopXQogW0FsbGdlbWVpbjpBenp1cm9dIGRvY2ghCiBbQWxsZ2VtZWluOlp1ZXJpbGV1XSBkb2NoIQpbQWxsZ2VtZWluOkd1ZXJnZW5dIC4uLndlaWwgZWluZSBiaW5kZSBoaWVyIG5pY2h0IHRhdWNodC4uCltBbGxnZW1laW46R2FyZmllbGRdIHp1ZXJpIGJyaW5ndCBhdWNoIGltbWVyIGRhcyBmZXJuc2VocHJvZ3JhbW0gbWl0IGlucwpbQWxsZ2VtZWluOkdhcmZpZWxkXSBzcGllbAogW0FsbGdlbWVpbjpFdGFpbl0gdHN0c3RzLCBtaXQgdGF1Y2hlbiBoYWJlbiBiaW5kZW4gbml4IHp1IHR1bi4gZGFzIHdhcmVuCmRpZQpbQWxsZ2VtZWluOkV0YWluXSB0YW1wIG9ucy4KIFtBbGxnZW1laW46U2NocnVtcGZpXSBlaXMgYW0gc3RpZWw/CltBbGxnZW1laW46TG9jb10gTmVpbiBTY2hydW1wZmk6IEJpcm5lIHVuZCBTdGllbCBuYXR1ZXJsaWNoIDstKQpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gYWNoIHdpZSBrb25udGUgaWNoIGRhcyBudXIgdmVyZ2Vzc2VuIDotKQogW0FsbGdlbWVpbjpadWVyaWxldSBpc3QgZHJvenRlbSBzcGl0eiB3aWUgZWluIGxhdWZpZ2VyIGtvZWRlciA9OihdCiBbQWxsZ2VtZWluOllhc21pbl0gZHUgYXJtZXIKIFtBbGxnZW1laW46QXp6dXJvIHJlaWNodCBadWVyaWUgZWluZW4gU3BpdHplcl0KIFtBbGxnZW1laW46U2NocnVtcGZpIHJlaWNodCB6dWVyaSBlaW5lIGFuZ2VsLCBkYSBrYW5uIGVyIGRhbm4gZGVuIGtvZWRlcgpkcmF1ZmhhZW5nZW5dCiBbQWxsZ2VtZWluOlp1ZXJpbGV1XSBoaWhpCiBbQWxsZ2VtZWluOkF6enVyb10gQWJlciBvYiBkYSB3ZXIgYW5iZWlzc3Q/CiBbQWxsZ2VtZWluOlNjaHJ1bXBmaSBwcnVzdGV0IGxvc10KIFtBbGxnZW1laW46RXRhaW5dIGFuYmVpc3Nlbj8gb2RlciBhYmJlaXNzZW4/CltBbGxnZW1laW46U2NocnVtcGZpXSAqa3JlaXNjaCoKIFtBbGxnZW1laW46WnVlcmlsZXVdIG5vZSBudW4gZXJuc3QgaWNoIHNhYmJlcmUgbGFuZ3NhbSBqZWRlbSB3ZWlibGljaGVtCltBbGxnZW1laW46WnVlcmlsZXVdIG1lbnNjaCpsaWNoZW0gR2VzY2hvZXBmIHVlYmVyIDE2IEphaHJlbiBuYWNoIGRhcyBpY2gKW0FsbGdlbWVpbjpadWVyaWxldV0gYmVnZWduZSA9OikKIFtBbGxnZW1laW46U2NocnVtcGZpXSBkb2Vycm9ic3QKIFtBbGxnZW1laW46RXRhaW5dIGFiZXIgenVlcmkhIGRhIHNvbGx0ZXN0IGR1IHdlbmlnc3RlbnMgaGludGVyaGVyCmF1Zndpc2NoZW4uCltBbGxnZW1laW46RXRhaW5dIG9kZXJyIG5lbiBlaW1lciB1bnRlcnN0ZWxsZW4uCiBbQWxsZ2VtZWluOkF6enVyb10gV2llIHdhZXJzIGRlbm4sIHdlbm4gZHUgbWFsIGFuc3RhdHQgU2Ftc3RhZyBhYmVuZCB6dQpbQWxsZ2VtZWluOkF6enVyb10gbXVkZGVuLCBsaWViZXIgYXVmIEJydWF0c2NoYXUgZ2Voc3Q/CiBbQWxsZ2VtZWluOkxvY28gdmVydGVpbHQgUmVnZW5tYWVudGVsIGdlZ2VuIFoncyBTYWJiZXJuLi4uXQpbQWxsZ2VtZWluOkV0YWluIGhhZWx0IHNpY2ggZGVuIEJhdWNoLl0KW0FsbGdlbWVpbjpTY2hydW1wZmldIHNlbGJzdCBpc3QgZGVyIG1hbm4genVlcmkKW0FsbGdlbWVpbjpBenp1cm9dIERhcyBpc3QgYWJlciBhdWNoIG1hbmNobWFsIGxhbmd3ZWlsaWcgU2NocnVtcGZpLiBXb3p1IGdpYnQKW0FsbGdlbWVpbjpBenp1cm9dIGVzIEZyYXVlbiAsKQogW0FsbGdlbWVpbjpTY2hydW1wZmldIGlzIGRhcyBtZWluIHByb2JsZW0/IDopCltBbGxnZW1laW46WnVlcmlsZXVdIHRqYSBzY2hydW1wZmkgdm9uIHdvIHdlaXNzdCBkdSB3YXMgZGVyIE1hbm4gaXN0IHdhcnN0IGR1CltBbGxnZW1laW46WnVlcmlsZXVdIG1hbCBlaW5lciA/CiBbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gbm9lIGljaCBrYW5udGUgbWFsIGVpbmVuCiBbQWxsZ2VtZWluOkF6enVyb10ga2xhciB3YXIgc2llLiBEYW5uIGhhdCBzaWUgc2ljaCBnZXRlaWx0LiBEYXJ1bSBpc3Qgc2llCltBbGxnZW1laW46QXp6dXJvXSBhdWNoIHNvIGtsZWluCiBbQWxsZ2VtZWluOlNjaHJ1bXBmaSBicmljaHQgaW4gaGVtbXVuZ3Nsb3NlcyBnZWxhZWNodGVyIGF1c10KW0FsbGdlbWVpbjpFdGFpbl0gc2ljaGVyLCB6dWVyaS4gYWxsZSBmcmF1ZW4gd2FyZW4gbWFsIG1hZW5uZXIuIGltCltBbGxnZW1laW46RXRhaW5dIG11dHRlcmxlaWIuIGRhbmFjaCBzaW5kIHNpZSBlcndhY2hzZW4gZ2V3b3JkZW4uCltBbGxnZW1laW46WnVlcmlsZXVdIHRqYSBldGFpbiBkYXMgaGFldCBtYW4gZGlyIGdhciBuaWNodCBhbmdlbWVya3QsIGR1IGJpc3QKW0FsbGdlbWVpbjpadWVyaWxldV0gZXJ3YWNoc2VuID8KIFtBbGxnZW1laW46RXRhaW5dIG5vZSwgenVlcmksIGljaCB2ZXJzdWNoZSwgd2llZGVyIGluIGRlbiBtdXR0ZXJsZWliIHp1CltBbGxnZW1laW46RXRhaW5dIGtyaWVjaGVuLCAgZGFtaXQgaWNoIG1hZW5uZXIgdmVyc3RlaGVuIGxlcm4uCiBbQWxsZ2VtZWluOkF6enVybyB6aXRpZXJ0IGRpZSBCaWJlbDogRXJzdCB3ZW5uIGlociB3ZXJkZXQgd2llIGRpZSBLaW5kZXIKa29lbm50IGlociBpbnMgZXdpZ2UgaGltbWVscmVpY2ggZWlua2VocmVuLl0KIFtBbGxnZW1laW46V3VyXSBobSBnbGF1YnN0IGR1IGR1IHNjaGFmZnN0IGRhcyBldGFpbj8KIFtBbGxnZW1laW46WnVlcmlsZXUgdmVyYnJlbm50IGRpZSBCaWJlbCB1bmQgaXN0IGdsdWVja2xpY2ggZGFydWViZXIgIV0KIFtBbGxnZW1laW46RXRhaW5dIGJlc3RpbW10LiBtdXNzIG1pY2ggbnVyIGluIGVpbiBtYWVubmxpY2hlcyBoaXJuCnZlcnNldHplbiwKW0FsbGdlbWVpbjpFdGFpbl0gd3VyLnMgOikKW0FsbGdlbWVpbjpBenp1cm9dIEljaCBrcmllY2hlIGF1Y2ggYWIgdW5kIHp1IGluIGRlbiBNdXR0ZXJsZWliIChiencKW0FsbGdlbWVpbjpBenp1cm9dIEZyYXVlbmxlaWIpIEFiZXIgdmVyc3RlaGVuIHR1IGljaCBtaWNoIHRyb3R6ZGVtIG5pY2h0LgogW0FsbGdlbWVpbjpXdXJdIHZlcnNhZXRlbiBvZGVyIHZlcndhbmRlbG4/CltBbGxnZW1laW46V3VyXSAregpbQWxsZ2VtZWluOkV0YWluXSBpZ2l0dCwgd3VyISB2ZXJzZXR6ZW4gbmF0dWVybGljaC4uLiBhbGxlcyBhbmRlcmUgd2FlcmUgamEKW0FsbGdlbWVpbjpFdGFpbl0gdW13ZWx0c2NoYWVuZHVuZy4uLgpbQWxsZ2VtZWluOkxvY28gaGF0IG5vY2ggNCBCaWJlbG4uIEJyaW5ndCBhbHNvIG5peCwgZWluZSB6dSB2ZXJicmVubmVuL10KW0FsbGdlbWVpbjpXdXIgZ3JpbnN0XQpbQWxsZ2VtZWluOld1cl0gaG0sIHZlcnNldHplbiBpc3QgYWJlciB2aWVsIHNjaHdlcmVyIGV0YWluCiBbQWxsZ2VtZWluOlp1ZXJpbGV1XSBsb2NvIGljaCBzcHVrZSBhdWYgZGllIGJpYmVsIHVuZGRlbiBjaHJpc3RsaWNoZW4KZ2xhdWJlbgpbQWxsZ2VtZWluOlp1ZXJpbGV1XSAhCiBbQWxsZ2VtZWluOkV0YWluXSBpY2ggdWViZSBmbGVpc3NpZywgd3VyLgpbQWxsZ2VtZWluOkdhcmZpZWxkXSBkYXMgaW50ZXJlc3NpZXJ0IGhpZXIga2VpbmVuCiBbQWxsZ2VtZWluOkV0YWluXSBhYmVyIG5pY2h0IGF1ZiBkZW4gZHVkZW4sIHp1ZXJpLCBkZW4gYnJhdWNoc3QgZHUgbm9jaC4KW0FsbGdlbWVpbjpMb2NvXSBadWVyaWxldTogRGVtbmFjaCBiaXN0IER1IGVpbiBHZXNwZW5zdD8gV2VubiBEdSBzcHVrc3Q/CiBbQWxsZ2VtZWluOkV0YWluIGhhdCBsYWNodHJhZW5lbiBpbiBkZW4gYXVnZW4uXQogW0FsbGdlbWVpbjpBenp1cm9dIEJpcm5lOlB5cnVzLi4uLi4uLmltIEdlZ2Vuc2F0eiB6dW0gQXBmZWwgc2luZCBkaWUgZnVlbmYKW0FsbGdlbWVpbjpBenp1cm9dIEdyaWZmZWwgbmljaHQgdmVyd2FjaHNlbi4uLi4uLmtlZ2VsIHVuZCBGbGFzY2hlbmZvZXJtaWdlCltBbGxnZW1laW46QXp6dXJvXSBGcnVlY2h0ZS4uLi5EaWUgRnJ1Y2h0IGlzdCBlaW5lIFNjaGVpbmZydWNodC4uLi4uU2llIGxpZWJ0CltBbGxnZW1laW46QXp6dXJvXSB0aWVmZ3J1ZW5kaWdlbiwgd2FybWVuLCBkdXJjaGxhZXNzaWdlbiBCb2Rlbiwgb2huZQpzdGF1ZW5kZQpbQWxsZ2VtZWluOkF6enVyb10gTmFlc3NlLi4uCiBbQWxsZ2VtZWluOkF6enVyb10gU292aWVsIGRhenUgYXVzIGR0diBMZXhpa29uCltBbGxnZW1laW46U2NocnVtcGZpIGtpY2hlcnRdCltBbGxnZW1laW46V3VyXSBrbHVnZXMga2VybGNoZW4gYXp6dXJvIDspCltBbGxnZW1laW46RXRhaW5dIGF6enVybyEgOikpCiBbQWxsZ2VtZWluOkdyaW1tYm9ybl0gRGFua2UsIEF6enVyby4gRGFubiBpc3QgbWlyIGVuZGxpY2ggZGVyIFdpdHoga2xhci4KOi0pCgpFTkRMSUNIIQo7KSBBenp1cm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW4gZGVuIEthdGFrb21iZW4gKEVscmljLCAgMS4gSnVuIDE5OTUsIDE5OjU1OjM1KToKPnNwdWNrZSBpbnMgZmV1ZXIKU3B1Y2tlIHdlbiB3aWUgYW4/CgpEaWUgRXJzY2hhZmZlciBkaWVzZXMgTVVEcyBzY2hlaW5lbiBlaW5lIGVyYmFlcm1saWNoZSBWb3JzdGVsbHVuZyB2b24gZGVuCkFud2VuZHVuZ3Ntb2VnbGljaGtlaXRlbiBkZXIgZWxmbGljaGVuIFNhbGl2YSB6dSBiZXNpdHplbi4KVW5nZWhvYmVsdGVyIEhhdWZlbi4KCk5GVSwgRWxyaWMgKnNhYmJlcm5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEkgc2hvdCB0aGUgc2hlcmlmZi4uLiAoQW50aGVhLCAgMi4gSnVuIDE5OTUsIDAwOjA1OjE4KToKIyEgcm49Q2FyYWRocmFzIHJ0PTgwMTg3OTQxMwpKYT8gRGllIFRpZ2VyIGluIGRlciBUaXRpd3UtUXVlc3Qga2FubiBtYW4gdG9ldGVuPyBIbS4uLiBpc3QgbWlyIGRhbWFscyBnYXIKbmljaHQgYXVmZ2VmYWxsZW4uIGRhcyB3YXIgbWVpbmUgbGV0enRlIFF1ZXN0IHZvciBNYWdpZXJ0dW0sIHVuZCBhbiBkZW0KYmxvZWRlbiBUaWdlciBkYSBiaW4gaWNoIDEweCBoaW50ZXJlaW5hbmRlciBhYmdla3JhdHp0LgpEYW1hbHMgZ2FiIGVzIGphIGF1Y2ggbm9jaCBrZWluZSBaYXViZXJ0cmFlbmtlLi4uLiBOYWphLiB2aWVsbGVpY2h0IHNvbGx0ZQppY2ggbWFsIHdpZWRlciBuYWNoIFRpdGl3dSBnZWhlbiwgYmxvc3MgdW0gbWljaCB6dSByYWVjaGVuIDopCgogICAgICAgIEFudGhlYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBJIHNob3QgdGhlIHNoZXJpZmYuLi4gKENhcmFkaHJhcywgIDIuIEp1biAxOTk1LCAwMTowMTo1OCk6CiMhIHJuPUFudGhlYSBydD04MDIwNDQzMTgKSWNoIGhhYiBkaWNoIGJpc2hlciA5IG1hbCBnZXJhZWNodCwgQW50aGVhIDotKQpBbHNvIGZlaGx0IG5vY2ggZWluIG1hbC4gKnp3aW5rZXIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGluIEF0bGFudGlzLi4uIChCZW5kZWlnaWQsICAyLiBKdW4gMTk5NSwgMTI6MTc6MzEpOgpJbSBWZXJsaWVzLi4uLgpVbnQgQmV0dApCbGFibGEuLiBsYWVzc3Qgc2ljaCBzY2hsaWVzc2VuLCBkYXNzIGRhIG1hbCBlaW5lIFN0cm9obWF0dGUgZHJhdWYgbGFnLgp1bnQgbWF0dGUKRGllIFN0cm9obWF0dGUgZXhpc3RpZXJ0IG5pY2h0IG1laHIuIFNpZSBpc3Qgc2Nob24gc28gZ3V0IHdpZSB6ZXJmYWxsZW4uCm5pbW0gbWF0dGUKVm9yc2ljaHRpZyBiZXJ1ZWhyc3QgRHUgZGVuIEhvbHpuYXBmLiBQbG9ldHpsaWNoIHZlcnNwdWVyc3QgRHUgZWluZW4KZnVyY2h0YmFyZW4gU2NobWVyeiBpbiBkZXIgSGFuZCwgYWxzIGhhZXR0ZSBEaWNoIGV0d2FzIGdlc3RvY2hlbi4KCk5hbnUgPyA6LSkpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGUgSGFlbmRsZXIgaGF0IHJlY2h0IChBenp1cm8sICAyLiBKdW4gMTk5NSwgMjA6MjA6MjApOgpOZXVsaWNoIGltIExhZGVuIGluIFBWLgoKdmVya2F1ZmUgU3RhaGxkb3JuCgpTdGFobGRvcm4gaGF0IGtlaW5lbiBtYXRlcmllbGxlbiBXZXJ0LCB0dXQgbWlyIGxlaWQuCgpSZWNodCBoYXQgZGVyIEhhZW5kbGVyLgoKQXp6dXJvLCBTdGFobGRvcm5mZWluZCBOdW1tZXIgMQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FubmliYWxlbiA/IChBc21vZGlzLCAgMi4gSnVuIDE5OTUsIDIxOjI5OjE1KToKRHUgYmVmaW5kZXN0IERpY2ggaW0ga2xlaW5lbiBLcmFtbGFkZW4gZGVyIEVsZmVuc2llZGx1bmcuIEhpZXIga2FubiBtYW4KdmVyc2NoaWVkZW5lIFNhY2hlbiBrYXVmZW4uIE5lYmVuIEhhdXNoYWx0c2FydGlrZWxuIGthbm4gbWFuIGhpZXIgYXVjaApkaXZlcnNlIEF1c3J1ZXN0dW5nc2dlZ2Vuc3RhZW5kZSBmdWVyIFJlaXNlbiBrYXVmZW4uIEhpbnRlciBlaW5lciBWZXItCmthdWZzdGhla2UgYmVmaW5kZW4gc2ljaCBqZWRlIE1lbmdlIFJlZ2FsZSwgZGllIHp1IEhhdXB0Z2VzY2hhZWZ0c3plaXRlbgpyYW5kdm9sbCBzaW5kLiBJbiBkaWVzZW0gTGFkZW4gaGVycnNjaHQgbmFlbWxpY2ggZWluIGZsb3JpZXJlbmRlciBBbi0KdW5kIFZlcmthdWZzaGFuZGVsLgpFcyBzdGVoZW4gRGlyIGZvbGdlbmRlIEJlZmVobGUgenUgdmVyZnVlZ3VuZy4KICAgICAgICB6ZWlnZSAgICAgICAgICAgICAgICAgICAga2F1ZmUgPGdlZ2Vuc3RhbmQ+IChvZGVyIG51bW1lcikKICAgICAgICB6ZWlnZSBydWUoc3R1bmdlbikgICAgICAgdmVya2F1ZmUgPGdlZ2Vuc3RhbmQ+CiAgICAgICAgemVpZ2Ugd2FmKGZlbikgICAgICAgICAgIHZlcmthdWZlIGFsbGVzCiAgICAgICAgemVpZ2UgdmVyKHNjaGllZGVuZXMpICAgIHNjaGFldHplIDxnZWdlbnN0YW5kPgpFaW5lIFRyZXBwZSBmdWVocnQgaW4gZGFzIE9iZXJnZXNjaG9zcy4KRGVyIEF1c2dhbmcgZGVzIExhZGVucyBsaWVndCBpbSBTdWVkZW4uCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4gdW5kIG9iZW4uCkVpbiBLbm9jaGVuLgpFaW4gQmVpbi4KRWluZSBQcmlzZSBHZXd1ZXJ6LgoKCgpTY2hlaW5lbiBLYW5uaWJhbGVuIGlucyBFbGZlbmRvcmYgRWluenVnIGdlaGFsdGVuIHp1IGhhYmVuICEKVW5kIGF1Y2ggbm9jaCBGZWluc2NobWVja2VyICEhCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2lhbywgQXNtb2RpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW50ZXJwcmV0YXRpb25zZnJhZ2UuLi4gKE11cGZlbCwgIDMuIEp1biAxOTk1LCAwMDo0MzowOCk6CgpHZXNjaGVoZW4gaW4gZGVyIFBoeXNpayBkZXIgVW5pIE9zbmFicnVlY2suLi46CgogIChDb21wdXRlcnJhdW0sIGVpbiBydW1zcGllbGVuZGVyIFBoeXNpa2VyLCBlaW4gaXJjLWxlciB1bmQgendlaQogIHByb2dyYW1taWVyZW5kZSBNdWRkZXIuIERlciBpcmMtbGVyIGtvbXBsZXR0IHdlZ2dldHJldGVuIHVuZAogIGF1Y2ggZ2FyIG5pY2h0cyBtaXRiZWtvbW1lbmQuIERlciBQaHlzaWtlciwgaW0gQXVmYnJ1Y2gsIGNoZWNrdAogIGRpZSBsYXVmZW5kZW4gUHJvemVzc2UuKQpFaW4gYWhudW5nc2xvc2VyIFBoeXNpa2VyIHNhZ3Q6IEFlaG0uLi4gd2FzIGlzdCBlaWdlbnRsaWNoICdkcml2ZXInPwpNdXBmZWwgc2FndDogSG0/IEFjaCBkYXMsIGRhcyBpc3Qgc28nbiBUZXN0LiBEYXMgbGFzcyBpY2ggZGEgZ3JhZGUKTXVwZmVsIHNhZ3Q6IHNvIGxhdWZlbi4uLgpBbmF0b2wgZGVua3QgLiBvIE8gKFRlc3QuLi4gamFqYS4pCkVpbiBhaG51bmdzbG9zZXIgUGh5c2lrZXIgc2FndDogVW5kIHdhcyB0ZXN0ZXQgZGFzPwpNdXBmZWwgc2FndDogT2VobS4uLiBEYXMgaXN0IGVpbiBMUEMtSW50ZXJwcmV0ZXIuCkVpbiBhaG51bmdzbG9zZXIgUGh5c2lrZXIgc2FndDogQWhhLgpFaW4gYWhudW5nc2xvc2VyIFBoeXNpa2VyIHNhZ3Q6IE5hamEsIHNjaG9lbmVuIEFiZW5kIG5vY2guCkVpbiBhaG51bmdzbG9zZXIgUGh5c2lrZXIgZ2VodCByYXVzLgpBbmF0b2wgbXVzdGVydCBNdXBmZWwuCk11cGZlbCBncmluc3QuCkFuYXRvbCBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KTXVwZmVsIGtpY2hlcnQga2luZGlzY2guCgoKQW5hdG9sIChpbW1lciBub2NoIG9obmUgRW5kZSBhbXVlc2llcnQpCgppLkEuIHZlcm9lZmZlbnRsaWNodCB2b24gTXVwZmVsCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChCYW1idWxrbywgIDMuIEp1biAxOTk1LCAwNDoxMjoyOSk6CltBbGxnZW1laW46TWFudWVsYV0gV2Vpc3MgamVtYW5kLCB3aWUgbWFuIGF1cyBkZW0gUG9sYXJnZWJpZXQgd2llZGVyCltBbGxnZW1laW46TWFudWVsYV0gcmF1c2tvbW10PyBJY2ggZ2xhdWJlLCBQb2xhcmdlYmlldCwgaXN0ICBkYXMgaGllci4uLgoKLi4uCgpbVG9kOl0gRWluIEVpc2JhZXIgaGF0IGdlcmFkZSBNYW51ZWxhIHVtZ2VicmFjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FyYXRlLUJhZXIgZW50ZGVja3QgOikgKFplcGh5ciwgIDMuIEp1biAxOTk1LCAyMTozODoyNyk6CkF1ZiBlaW5lbSBXZWcgaW0gU3RlaW5laWNoZW53YWxkLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZGVuLgpFaW4gQnJhdW5iYWVyLgogIERlciBCYWVyIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gWW9rby1nZXJpLWtlYWdlIGFuLgogIERlciBCYWVyIHRyaWZmdCBEaWNoLgogIER1IGdyZWlmc3QgZGVuIEJhZXIgbWl0IGRlbSBsaWxhLWthcmllcnRlbiBYYW50aS1TY2h3ZXJ0IGFuLgogIER1IHZlcmZlaGxzdCBkZW4gQmFlci4KICBEdSBncmVpZnN0IGRlbiBCYWVyIG1pdCBkZW0gbGlsYS1rYXJpZXJ0ZW4gWGFudGktU2Nod2VydCBhbi4KICBEdSB0cmlmZnN0IGRlbiBCYWVyLgogIERlciBCYWVyIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gWW9rby1tYXdhc2hpLWVtcGktdWNoaSBhbi4KICBEZXIgQmFlciB0cmlmZnQgRGljaC4KICBEdSBncmVpZnN0IGRlbiBCYWVyIG1pdCBkZW0gbGlsYS1rYXJpZXJ0ZW4gWGFudGktU2Nod2VydCBhbi4KICBEdSB0cmlmZnN0IGRlbiBCYWVyLgpEZXIgQmFlciBmYWVsbHQgdG90IHp1IEJvZGVuLgoKWmVwaCwgaW1tZXIgbm9jaCBraWNoZXJuZC4KaW5mbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBNYWdpZXIgZnVlaGx0IG1hbiBzaWNoIHNvIHZlcmxhc3Nlbi4uLiAoTHVwdXMsICA0LiBKdW4gMTk5NSwgMTQ6MDk6MzEpOgpBY2gsIGVzIGlzdCBkb2NoIGltbWVyIHdpZWRlciBzY2hvZW4sIGVpbmVuIG5ldHRlbiBNYWdpZXIgaW4gZGVyIE5hZWhlIHp1CmhhYmVuOgoKSmVtYW5kIHZlcmZvbGd0IERpY2guCkFlbmdzdGxpY2ggZHJlaHN0IER1IERpY2ggdW0uCkplbWFuZCB2ZXJmb2xndCBEaWNoLgpEdSBzY2hhdXN0IERpY2ggdW0sIGRhIER1IGhpbnRlciBEaXIgZXR3YXMgaG9lcnN0LgpEdSBmaW5kZXN0IG5pY2h0cy4KRHUgc2NoYXVzdCBEaWNoIHVtLCBkYSBEdSBoaW50ZXIgRGlyIGV0d2FzIGhvZXJzdC4KRHUgZmluZGVzdCBuaWNodHMuCkF6enVybyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpBenp1cm8ga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEdSBmdWVobHN0IERpY2ggd2llZGVyIGV0d2FzIGJlcnVoaWd0LgpEdSBrbnVkZGVsc3QgQXp6dXJvIGF1cyBkZXIgRmVybmUuCgpncmluc2VuZCwgTHVwdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLYXJhdGUtQmFlciBlbnRkZWNrdCA6KSAoR3V5YnJ1c2gsICA0LiBKdW4gMTk5NSwgMTU6MDg6NDQpOgojISBybj1aZXBoeXIgcnQ9ODAyMjA4MzA3CldpZXNvIGVudGRlY2t0PwpIYWV0dGVzdGUgaWhuIHZvcmhlciBhbmdlc2NoYXV0LCBoYWV0dGVzdCBkdSBzZWluZW4gR3VlcnRlbCBnZXNlaGVuIDopClNjaG9lbmVyIEdhZywgTmljaHQ/IDopKQpHdXlicnVzaCwgd2FydGV0IGF1ZiBuZXVlIE1vbnN0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoR3JpbW1ib3JuLCAgNC4gSnVuIDE5OTUsIDE2OjA5OjU4KToKW0FiZW50ZXVlcjpYeWRyb2xdIDopIGljaCBoYWVuZyBpbSBzY2huZWVoYXVmZW4gZmVzdCB1bmQgaG9mZiBkYXNzIGljaCBkZW4KW0FiZW50ZXVlcjpYeWRyb2xdIGxvZWZmZWwgbml0IGFiZ2ViLi4uIDopCltBYmVudGV1ZXI6TGVDaHVja10gZGFzIGlzdCB1ZWJsZWljaCBzbyA6KQpbQWJlbnRldWVyOlh5ZHJvbF0gaWNoIGJyYXVjaCBkYXMgZWlzIG5pbW1lciAuKQpbQWJlbnRldWVyOlh5ZHJvbF0gbnVyIG5vY2ggcmF1cyBoaWVyIHdpbGwgIDooCltBYmVudGV1ZXI6WHlkcm9sXSBhYmVyIGRhCltBYmVudGV1ZXI6WHlkcm9sXSBlCltBYmVudGV1ZXI6WHlkcm9sXSBhcmdsLi4KW1RvZDpdIEVpbmUgU2NobmVlZnJhZXNlIGhhdCBnZXJhZGUgWHlkcm9sIHVtZ2VicmFjaHQuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QuIE1vY2h0ZSBkaWUgUXVlc3QgbmljaHQsIGlzdCBhYmVyIHdlbmlnc3RlbnMgbmljaHQKZ2VzdG9yYmVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdHVmZW4gKFRheiwgIDQuIEp1biAxOTk1LCAxNzowNjowNik6CkhpaG8sCgpOZXVsaWNoCgpXaWxsb21tZW4gYXVmIERlaW5lciBuZXVlbiBTdHVmZS4KRHUgYmlzdCBqZXR6dCBpc3QgZG9vZiB1bmQgc3Rpbmt0IChsZXZlbCAyMSkuCgpUYXogKGdyaW5zZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9obmUgTWFnaWVyIGZ1ZWhsdCBtYW4gc2ljaCBzbyB2ZXJsYXNzZW4uLi4gKENhcmFkaHJhcywgIDQuIEp1biAxOTk1LCAxOTowMTo0MSk6CiMhIHJuPUx1cHVzIHJ0PTgwMjI2Nzc3MQpBbHNvIGJlaSBtaXIgaGVpbHQgbWljaCBtZWluIFNCQSBpbW1lciBudXIgd2VubiBzaWNoIGplbWFuZCBhbiBtaWNoCnJhbmt1c2NoZWx0LiA6LSkgU2Nob2VuZSBTYWNoZS4KCiAgICBDYXJhZGhyYXMsIHZlcnJhZXQgamV0enQgbmljaHQgd2FzIGRhdm9uIHNjaG9lbiB3YXIgKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW1lbiAoQ2FyYWRocmFzLCAgNS4gSnVuIDE5OTUsIDAyOjAzOjA2KToKU3VjayBrb21tdCBhbi4KU3VjayBnZWh0IG5hY2ggTm9yZGVuLgouLi5laW5lIGhhbGJlIFNla3VuZGUgc3BhZXRlci4uLgpbVG9kOl0gRWluIFNjaGF0dGVubWFubiBoYXQgZ2VyYWRlIFN1Y2sgdW1nZWJyYWNodC4KCipzdGF1biogRmxvdHQgaW4gZGVuIFRvZCBnZXJhbm50LgoKICAgICAgICAgICBDYXJhZGhyYXMgLSBnZWh0IGdyYWRlIGdlbXVldGxpY2ggc3BhemllcmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW1lbiAoR3JpbW1ib3JuLCAgNS4gSnVuIDE5OTUsIDE4OjA0OjE2KToKIyEgcm49Q2FyYWRocmFzIHJ0PTgwMjMxMDU4NgoKQ2FyYWRocmFzPyBFaW5lIGhhbGJlIFNla3VuZGUgdm9uIFNjaGF0dGVubWFlbm5lcm4gZW50ZmVybnQ/CkFsc28sIGVudHdlZGVyIGljaCBzb2xsdGUgbWlyIG5lbiAoU3BpZWwtKXp3ZWl0aWUgaG9jaHppZWhlbiBvZGVyIG1hbCBuYWNoCmRlbSBidWcgaW0gY29kZSBzdWNoZW4sIGFiZXIgc2VpdCB3YW5uIHNpbmQgZGllIFNjaGF0dGVubWFlbm5lciBpbiBkZXIgU1NQPwoKVm9lbGxpZyB2b24gZGVuIFNvY2tlbiwKICAgICAgICAgICAgICAgICAgICAgICAgR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUb2QgZWluZXMgTWFnaWVycy4uLiAoR3JpbW1ib3JuLCAgNS4gSnVuIDE5OTUsIDE4OjE3OjE1KToKCj5yemFwIGJhbnphaQotPiBEdSB0b2V0ZXN0IEplbWFuZC4KSmVtYW5kIGZhZWxsdCB0b3QgenUgQm9kZW4uCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCgpUamEsIHVuZCB3aWVkZXIgZWluZSBMdWVja2UgaW4gZGVyIFVuc2ljaHRiYXJrZWl0Li4uIDotKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFtZW4gKENhcmFkaHJhcywgIDUuIEp1biAxOTk1LCAxOToxMTo0Nik6CiMhIHJuPUdyaW1tYm9ybiBydD04MDIzNjgyNTYKQWNoIHNvLCB3YXIgaW4gRnJhbmtzIEtuZWlwZS4gKmVycm9ldCogV2FyIHNjaG9uIGxhbmdlIG5pY2h0IG1laHIKaW4gZGVyIFNTUC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11ZHBhcnR5IChKYWYsICA2LiBKdW4gMTk5NSwgMDA6MzQ6NDMpOgoKU29ycnksICdBbnplaWdlbicgd2FyIHZvbGwuLi4KQW50aGVhIGhhdHRlIGVyd2FlaG50LCBkYXNzIGVzIGlociBsaWViIHdhZXJlLCB3ZW5uIGRpZSBQYXJ0eQpub2NoIG5lIFdvY2hlIHNwYWV0ZXIgd2FlcmUgLi4uIG5laW4gLCBuaWNodCAsICpoZXVsKi4uLiB3YW5uCnNvbGwgbWFuIGRlbm4gZGFubiBub2NoICdyaWNodGlnJyBpbiBkZW4gVXJsYXViIGZhaHJlbiBrb2VubmVuPwpJY2ggZmluZGUgbGV0enRlIEF1Z3VzdGhhZWxmdGUgc293aWVzbyBzY2hvbiByZWljaGxpY2ggc3BhZXQuLi4KCkphZi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQW1lbiAoT3JrdG9ldGVyLCAgNi4gSnVuIDE5OTUsIDE0OjQxOjM3KToKIyEgcm49R3JpbW1ib3JuIHJ0PTgwMjM2ODI1NgpCcnVlbGwgIQpMYWNoIHdlZwpzb3JyeSwgbXVzc3RlIGpldHp0IHNlaW4gOikKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAtIGltIERvcHBlbHBhY2sgKFF1ZW5naXN0dSwgIDYuIEp1biAxOTk1LCAyMDo0MjoxMik6CltBYmVudGV1ZXI6VGVycmFuXSB3aWVzbyBncmVpZnQgbWlyIGRhcyB3b2xwZXJ0aW5nZXIgYW4/CltBYmVudGV1ZXI6QXNtb2Rpc10gd2VpbCBlciBib2VzYXJ0aWcgaXN0ID8KW0FiZW50ZXVlcjpOYXN0amFdIGRhcyBpc3QgZWluIFpvbWJpZSEgUmVubiBzY2huZWxsIGluIGVpbmUgS25laXBlLgpbQWJlbnRldWVyOkJsb29keWhhcnJ5XSB3ZWlsIG5pY2h0cyByaWNodGlnIGlzdC4KW1RvZDpdIEVpbiBXb2xwZXJ0aW5nZXIgaGF0IGdlcmFkZSBUZXJyYW4gdW1nZWJyYWNodC4KW0FiZW50ZXVlcjpCbG9vZHloYXJyeV0gaW1tZXIgaW4gYmV3ZWd1bmcgYmxlaWJlbiEgdW5kIHp1ciBrbmVpcGUuCltBYmVudGV1ZXI6TmllZGVja2VuXSB6dSBzcGFldApbQmVpbGVpZDpIYXJdIHNjaGFkZSBUZXJyYW4hCltCZWlsZWlkOkFzbW9kaXNdIGhtbSwgRkxXCltCZWlsZWlkOlF1ZW5naXN0dV0gU2Nob2VuZSBGTFcKW0JlaWxlaWQ6UXVlbmdpc3R1IHdpcmQgZXMgZWJlbiBtYWwgcG9zdGVuIDotKV0KClsuLi5dCgpbQWJlbnRldWVyOlRlcnJhbl0gZGVyIHdvbHBlcnRpbmdlciB2ZXJmb2xndCBtaXIgaW1tZXIgbm9jaApbQWJlbnRldWVyOlRlcnJhbl0gSElMRkUKW0FsbGdlbWVpbjpBc21vZGlzXSBUZXJyYW4sIGhpZXIgc3RlaHQgbm9jaCBkZWluIFdvbHBpZQpbQWJlbnRldWVyOkJlbmRlaWdpZF0gSW1tZXIgcmVubmVuLi4uCltBbGxnZW1laW46QXNtb2Rpc10gaG1tLCB3ZWcgaXNzZXIKW0FiZW50ZXVlcjpBc21vZGlzXSBnZWggaW4gZWluZSBwb3N0a2FiaW5lLCBkYSBiaXN0IGR1IHNpY2hlcgpbQWJlbnRldWVyOkFzbW9kaXNdIHRlcnJhbiwgZGVyIHdvbHBpZSBmaW5kZXQgZGljaCBpbWVtciwgd2VubiBkdSBuaWNodCBpbgpbQWJlbnRldWVyOkFzbW9kaXNdIGRpZSBwb3N0a2FiaW5lIGdlaHN0CltBYmVudGV1ZXI6TmFzdGphXSB1bmQgZGFubj8gYXVmIGV3aWcgaW4gZGVyIEthYmluZSBibGVpYmVuPwpbQWJlbnRldWVyOk5pZWRlY2tlbl0gaGVpbGVuIGxhc3NlbgpbQWJlbnRldWVyOkFzbW9kaXNdIGJlc3NlciwgYWxzIHNpY2ggaGVydW1qYWdlbiB6dSBsYXNzZW4sIHdpZSBqZXR6dApbQWJlbnRldWVyOk5hc3RqYV0gbm9lLCBpbiBkaWUgRnJpZWRob3NrbmVpcGUgdW5kIEtub2JsYXVjaHdhc3NlciBzYXVmZW4KW0FiZW50ZXVlcjpBc21vZGlzXSBuYXN0amEsIGRhenUgbXVlc3N0ZSBlciBlcnN0bWFsIGdlbGQgaGFiZW4KW0FiZW50ZXVlcjpUZXJyYW5dIHdlciBoYXQgbWlyIGViZW4gZ2Vob2xmZW4gZGFzIGRpbmcgenUgdG9ldGVuPwpbQWJlbnRldWVyOlRlcnJhbl0gdWVicmlnZW5zIHNpbmQgZGllIHNhY2hlbiBpbSBmcmllZGhvZiBtZWluZSEhIQpbQWJlbnRldWVyOkFzbW9kaXNdIGljaCBuaWNodCwgZGVyIHZlcm5pY2h0ZXQgc2ljaCBuYWNoIG5lciB6ZWl0IHZvbiBzZWxic3QKW0FiZW50ZXVlcjpBc21vZGlzXSBkZXNoYWxiIGF1Y2ggZGVyIHZvcnNjaGxhZywgaW4gZGllIGthYmluZSB6IGdlaGVuIHVuZApbQWJlbnRldWVyOkFzbW9kaXNdIHdhcnRlbgpbVG9kOl0gU2FuZGZhbGxlIGRlcyBUZXRyYWRvbiBoYXQgZ2VyYWRlIE5pZWRlY2tlbiB1bWdlYnJhY2h0LgpbQmVpbGVpZDpBc21vZGlzXSB3b2hsIHp1IG5ldWdpZXJpZyBnZXdlc2VuID8gOikKW0JlaWxlaWQ6RmlwcHNdIEhvZXJ0IHNpY2ggaW50ZXJlc3NhbnQgYW4gOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtvbmZ1c2lvbi4uLiAoTXVwZmVsLCAgNy4gSnVuIDE5OTUsIDE1OjQ1OjE2KToKW01hZ2llcjplaW4gUHVtYV0gdGVzdCA6KQpKb2Ygc2NocmVpdCBsYXV0IQpbTWFnaWVyOmVpbiBNdXBmZWxdIGFiZXIgZG9jaCBuaWNodCBpbSBjaGFubmVsCiQgSm9mIHNhZ3Q6IFdpZXNvIEVJTiBNdXBmZWw/Pz8KW01hZ2llcjpIYXRlXSBhcmdoCkR1IHNhZ3N0OiBrZWluZSBhaG51bmcKJCBbTWFnaWVyOmVpbiBQdW1hXSAqa2ljaGVyKgpbTWFnaWVyOkthZW5ndXJ1aF0gdGVzdApbTWFnaWVyOlB0ZXBwaWNdIGljaCBoYWIga2VpbiBlaW4KW01hZ2llcjpTbGFzaGVyXSB3YXMgaXN0IGRlbm4gaGllciBsb3M/CiQgSm9mIGdlaHQuCltNYWdpZXI6U2lsdmFuYV0gSWNoIGdsYXViLCBpY2ggcmVuZXcgbWljaCBuaWNodC4gSWNoIHdpbGwgZWlubWFsaWcgYmxlaWJlbi4KW01hZ2llcjpTaWx2YW5hXSA7KQpbTWFnaWVyOmVpbiBCYXJvbl0gV2lsbHN0IGR1IG1laW5zPwpbTWFnaWVyOmVpbiBNdXBmZWxdIGFlaAokIE1hc3RlciBIYXRlIHNhZ3Q6IFdpZXNvIGJlbnV0emVuIHdpciBuaWNodCBkaWUgVXJ2YXJpYW50ZT8KJCBNYXN0ZXIgSGF0ZSBzYWd0OiBEaWUgaGF0IHdlbmlnc3RlbnMgZnVua3Rpb25pZXJ0CltNYWdpZXI6V2FyZ29uXSBPYiBkaWUgTWFnaWVyc2hlbGwgc2VpdCBuZXVlc3RlbSBub2NoIC9zdGQvdW5pdCBpbmhlcml0ZWQ/IDspCltNYWdpZXI6Qm9pbmddIHR1dCB3aWVkZXIgOikKW01hZ2llcjpXYXJnb25dIHhjYWxsIGJvaW5nLT5TZXRBbW91bnQoMTAwKQpbTWFnaWVyOmVpbiBNdXBmZWxdIHRlc3QKJCBbTWFnaWVyOmVpbiBCYXJvbl0gbm9jaG4gVGVzdApKb2YgdGVpbHQgRGlyIG1pdDogZWlubWFsIHF1aXR0ZW4KW01hZ2llcjoxMDAgQm9pbmdzXSBIZSEKTWFlc3RybyBDcmVhdGl2ZSB0ZWlsdCBEaXIgbWl0OiBpY2ggd2Vpc3Mgbml4IGljaCBrZW5uIG1pY2ggbmljaHQgYXVzLi4uCkR1IHRlaWxzdCBKb2YgbWl0OiBxdWl0IG5pY2h0IHJlbmV3PwokIFtNYWdpZXI6UHVtYSBzdGlyYnQgdm9yIExhY2hlbiA6LSkgIV0KCi4uLmRhIHNlaHQgaWhyJ3MgbWFsIHdpZWRlci4uLiBhdWNoIG1hZ2llciBoYWJlbiBwcm9ibGVtZS4uLiBuaWNodCBudXIgaWhyCnNwaWVsZXIKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYW51ZT8gKEN1Y2h1bGxpbiwgIDcuIEp1biAxOTk1LCAxOToyNDowMCk6CgpEdSB0ZWlsc3QgQmxhY2ttb29yIG1pdDogQml0dGUgYnJpbmcgbWFsIGRlaW4gTWFrcm8gaW4gT3JkbnVuZyEKPiBCbGFja21vb3IgdGVpbHQgRGlyIG1pdDogSGFsbG9lY2hlbi4gSGllciBzcHJpY2h0IGRlciBhdXRvbWF0aXNjaGUKQmxhY2ttb29yIHRlaWx0IERpciBtaXQ6IEFucnVmYmVhbnR3b3J0ZXIgdm9uIEJsYWNrbW9vci4gQmluIGdyYWRlIG1hbCBuaWNodApCbGFja21vb3IgdGVpbHQgRGlyIG1pdDogZGEuIEJpdHRlIGhpbnRlcmxhc3MgbWlyIG5hY2ggZGVtIFBmZWlmdG9uIGVpbmUKQmxhY2ttb29yIHRlaWx0IERpciBtaXQ6IE5hY2hyaWNodCAuLi4gUGllcAoKCkN1Y2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbGxlcyBadCBvZGVyIHdhcz8gKEN1Y2h1bGxpbiwgIDkuIEp1biAxOTk1LCAwMDo0MzowMCk6CgpNaXR0ZSBzdGVodCBlaW4gZ3Jvc3NlciBCb3hyaW5nLiBFciBpc3QgemllbWxpY2ggZ3Jvc3MsIGFiZXIgbmljaHQgbWVociBpbQphbGxlcmJlc3RlbiBadXN0YW5kLiBEaWUgTm9yZHdhbmQgYmVzdGVodCBhdXMgZWluZW0gZ3Jvc3NlbiBEdXJjaGdhbmcsIGRlcgpkZW4gQmxpY2sgYXVmIGVpbiBncm9zc2VzIFNjaHdpbW1iYWQgZnJlaWdpYnQuIEhpbnRlciBEaXIgaW4gZGVyIE9zdHdhbmQKaXN0IGRlciBrbGVpbmVyZSBEdXJjaGdhbmcsIGRlciBEaWNoIHp1cnVlY2sgYXVmIGRlbiBHYW5nIGJyaW5ndC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG5vcmRlbiB1bmQgb3N0ZW4uCkVpbiBrbGVpbmVzIE1ldGFsbGthZXN0Y2hlbiAob2ZmZW4pLgpFaW4ga2xlaW5lciBTY2hsdWVzc2VsLgpFaW4ga2xlaW5lciBTY2hsdWVzc2VsLgpFaW4ga2xlaW5lcyBNZXRhbGxrYWVzdGNoZW4gKG9mZmVuKS4KRWluIGtsZWluZXMgTWV0YWxsa2Flc3RjaGVuIChvZmZlbikuCkVpbiBrbGVpbmVyIFNjaGx1ZXNzZWwuCkVpbiBrbGVpbmVzIE1ldGFsbGthZXN0Y2hlbiAob2ZmZW4pLgpFaW4ga2xlaW5lcyBNZXRhbGxrYWVzdGNoZW4gKG9mZmVuKS4KRWluIGtsZWluZXIgU2NobHVlc3NlbC4KRWluIGtsZWluZXMgTWV0YWxsa2Flc3RjaGVuIChvZmZlbikuCkVpbiBrbGVpbmVyIFNjaGx1ZXNzZWwuCj5EZXIga2xlaW5lIFNjaGx1ZXNzZWwgYXVmIGRlbSBCb2RlbiB2ZXJicmVpdGV0IGVpbmVuIHVlYmxlbiBHZXJ1Y2guCkRlciBrbGVpbmUgU2NobHVlc3NlbCBhdWYgZGVtIEJvZGVuIHZlcmJyZWl0ZXQgZWluZW4gdWVibGVuIEdlcnVjaC4KRGVyIGtsZWluZSBTY2hsdWVzc2VsIGF1ZiBkZW0gQm9kZW4gdmVyYnJlaXRldCBlaW5lbiB1ZWJsZW4gR2VydWNoLgp1c3cuLi4KCgpDdWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYSByZW5udCBlciBoaW4gKEFzbW9kaXMsICA5LiBKdW4gMTk5NSwgMDQ6MTA6MjkpOgoKJ0hhZHJhIHJlbm50IGF1ZiBkZXIgU3VjaGUgbmFjaCB2ZXJsb3JlbmVuIEVQIGlucyBSZWljaCBkZXIgTmV0enRvdGVuLicKCkhtbSwgb2IgZXIgZGEgZnVlbmRpZyB3aXJkID8gOikKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDaWFvLCBBc21vZGlzCiYmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMYWVzc3N0dHR0dHR0dHRlciEhISAoQ2VsZWJkaWwsICA5LiBKdW4gMTk5NSwgMDk6NTE6NDcpOgogICAgICAgICAgICAgICAgICAgIEh1aHUKCkFsc28gamV0enQgbXVzcyBpY2ggbWFsIGVpbmVuIExhZXN0ZXJhcnRpa2VsIHNjaHJlaWJlbiEhIQpEb29vb29vb29vb2ZlIEVyc3RpZXMgc2FnIGljaCBudXIuCgpJY2ggaGVsZiBDYXJhZGhyYXMgbnVyIGVpbiBiaXNzY2hlbiBiZWkgZGVyIEh5ZHJhLCBzbyBhbHMKV2Fzc2VydHJhZWdlciB1bmQgc28sIHdhcyBtYWNodCBlcj8gRmFlbGx0IHVlYmVyIHNlaW5lIGVpZ2VuZW4KRnVlc3NlIHVuZCBhbGxlIEtvZXBmZSB3YWNoc2VuIHdpZWRlciBuYWNoLiBEdW1tZXIgS2VybC4KRGFyYXVmaGluIGJpbiBpY2ggenUgVGFudGUgSHlkcmEgZ2VtZWluc2FtIG1pdCBLaGlkYXIgdW5kIGljaApoYWIgc2llIGdldG9ldGV0LiBJY2ggc2FncyBqYSwgZG9vZmUgRXJzdGllcy4KClVuZCBub2NoIHZpZWwgc2NobGltbWVyOgpEYW5uIGlzdCBlciBnZXN0b3JiZW4sIHVuZCB6d2FyIGFuIGVpbmVtIFB1dHp0ZXVmZWwuIExhY2hoYWZ0LApyZWFsIGxhY2hoYWZ0LiAqYnJ1bW1lbCB3YXMgdm9uIERlcHAgdW5kIHNvKiBUamEsIGpldHp0IGhhdAplciBpbnNnZXNhbXQgNTcgTWlsbGlvbmVuIEVQIHZlcmxvcmVuLiA6LSkgR2VzY2hpZWh0IGlobSBnYW56IHJlY2h0LAp3YXMgaGF0IGVyIG1pY2ggYXVjaCBzY2hvbiAxMDIgbWFsIHN0ZXJiZW4gbGFzc2VuLiAqZnJldSoKCkVyc3RpZXMsIEVyc3RpZXMsIGFsbGUgZ2Vob2VyZW4gc2llIHZlcmJvdGVuLi4uClVuZCBqZXR6dCB3aWxsIGVyIGVzIGF1Y2ggbm9jaCBnYW56IGFsbGVpbmUgZ2VnZW4gZGllIEh5ZHJhCmRhcyBuYWVjaHN0ZSBtYWwgdmVyc3VjaGVuLCBuYSwgZGFzIGthbm4gamEgbnVyIHNjaGllZmdlaGVuCm9obmUgZGllIG1vcmFsaXNjaGUgVW50ZXJzdHVldHp1bmcgbWVpbmVyc2VpdHMuCgogICAgICAgICBMYXVzY2hldCBkZW4gS2xhZW5nZXMgZGVzIEthbmFsZXMgVG9kIQogICAgICAgICBEaWUgSHlkcmEgd2lyZCBiYWxkIENhcmFkaHJhcyB6dSBMYXJzIHNjaGlja2VuLgogICAgICAgICBBdWYgZGFzcyBlciBkb3J0IG1pdCBkZW0gU2Vuc2VubWFubiB2ZXJlaW50IHNlaW4gbW9lZ2UuCgogICAgICAgICAgICAgdHNjaHVlc3MKCiAgICAgICAgIENlbGViZGlsIC0ganVlbmdzdGVyIEh5ZHJhdG9ldGVyIGFsbGVyIFplaXRlbiB1bmQgZHJpdHRlcgogICAgICAgICAgICAgICAgICAgIG5hY2ggUnluZSB1bmQgQmFtYnVsa28uClBTOiB1bmQgZGFzIG1pdCAzMDAuMDAwIEVQIDopKSkpKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMYWVzc3N0dHR0dHR0dHRlciEhISAoQ2FyYWRocmFzLCAgOS4gSnVuIDE5OTUsIDEwOjA3OjU5KToKIyEgcm49Q2VsZWJkaWwgcnQ9ODAyNjg0MzA3ClRqYSwgd28gQ2VsZWIgcmVjaHQgaGF0IGhhdCBlciByZWNodC4KREJEREhLUCB3aWUgbWVpbmUgTXV0dGVyIGltbWVyIHNhZ3QuCkRvb2YgYmxlaWJ0IGRvb2YgZGEgaGVsZmVuIGtlaW5lIFBpbGxlbi4KCk9kZXIgd2llIG1laW5lIFRhbnRlIHNhZ3Q6Clp1IGR1bW0genVtIHNjaGVpc3Nlbi4KCipodWVzdGVsKiBKYWphLCBzb2xjaGUgVGFudGVuIGhhYiBpY2gKCiAgICAgICAgICAgIENhcmFkaHJhcyAtIHNldWZ6LCBpbW1lciBub2NoIDcuMiBNaWxsaW9uZW4gYmlzIGxldmVsIDMxCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWxsZXMgWnQgb2RlciB3YXM/IChEdXJpYW4sICA5LiBKdW4gMTk5NSwgMTE6MTc6MzEpOgojISBybj1DdWNodWxsaW4gcnQ9ODAyNjUxMzgwCkljaCBoYWJlIHNjaG9uIGltbWVyIGdld3Vzc3QsIGljaCBicmF1Y2hlIGRyaW5nZW5kIGVpbmUgUHV0emZyYXUgaW4gZGVuClB5cmFtaWRlbi4gVm9uIG1pciBhdXMgYXVjaCBlaW4gUHV0em1hbm4uIEJld2VyYnVuZ2VuIGFuIG1pY2ghCgotIER1cmlhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcmVzZXQgKEFuYWtpbiwgIDkuIEp1biAxOTk1LCAxNTo0MDowOSk6CkhpaG8sCgo+W0FsbGdlbWVpbjpBbmFraW5dIEVpc2dpZ2FudGVuICYgVGl0YW5lbnJlc2V0IGJpdHRlLi4uCgpTZWt1bmRlbiBzcGFldGVyLi4uLgoKPkVpbiBFaXN0aXRhbiB3aWxsIHNpY2ggZ3JhZGUgcmVzZXR0ZW4sIHNpZWh0IERpY2ggdW5kIGJlc2NobGllc3N0CmVzIGxpZWJlciBibGVpYmVuIHp1IGxhc3Nlbi4KCldpZXNvIGltbWVyIGltbWVyIGljaCA/CgpBbmFraW4gKCpncnVtbWVsKikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hbmllcmVuIHNpbmQgZGFzLi4uIChNb3J0b21hbm9zLCAgOS4gSnVuIDE5OTUsIDE2OjM3OjAwKToKCk5ldWxpY2gsIGluIGRlciBHaWxkZToKCkJsYWNrbW9vciBiZXRyaXR0IGRpZXNlIFdlbHQuCkJsYWNrbW9vciBzYWd0OiBtaXN0CkJsYWNrbW9vciB2ZXJsYWVzc3QgZGllc2UgV2VsdC4KCnRzdHMsIHNvIHNjaGxpbW0gaXNzZXMgd29obCBuaWNodCwgd2VubiBtYW4gbWFsCid1bmFic2ljaHRsaWNoJyBpbnMgTUcga29tbXQsIG9kZXI/IDopCgpNb3J0eSwgZXJzdGVuIEFydGlrZWwgcG9zdGVuZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYXJhdGUgbGVpY2h0IGdlbWFjaHQgKEF6enVybywgIDkuIEp1biAxOTk1LCAyMDoyNzoxMCk6Cjw8PApXb3p1IGdpYnQgZXMgZGVuIE1hbGthc3RlbiA7KQoKPm1hbGUgR3VlcnRlbCBhbgoKPkRlciBNYWxrYXN0ZW4gbGV1Y2h0ZXQgZ3J1ZW4gYXVmIHVuZCBlaW4gd2Vpc3NlciBHdWVydGVsIHdpcmQgZ2FuegpncnVlbi1nZXN0cmVpZnQuCgpBenp1cm8sIGRlciBlaW56aWdlIGltIE11ZCBtaXQgZ3J1ZW4tZ2VzdHJlaWZ0ZW0gR3VlcnRlbCwgZ3JpbnN0IHNpY2ggZWlucy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1lZ2EtV29scGllLi4uIChDdWNodWxsaW4sIDEwLiBKdW4gMTk5NSwgMDE6MjY6MDcpOgoKbmFlaGUgaG9lcm5lciBhbiBmZWxsCjIgSG9lcm5lciBkZXIgSHlkcmEga2FubnN0IER1IG5pY2h0IGFubmFlaGVuLgoKU2NoYWRlIGVpZ2VudGxpY2guCkN1Y2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGFlc3NzdHR0dHR0dHR0ZXIhISEgKEFtYXpvcmEsIDEwLiBKdW4gMTk5NSwgMTc6MDU6MjcpOgojISBybj1DZWxlYmRpbCBydD04MDI2ODQzMDcKTWVpbmUgUmVkZSEgQWJlciBhdWYgbWljaCBob2VydCBqYSB3aWVkZXIga2VpbmVyLCBwZmZmZi4gU2NocnVtcGZpIGlzIGphIGF1Y2gKc28gYmxvZWQsIGRpZSBzdWNodCBzaWNoIGltbWVyIGRpZSB1bm1vZWdsaWNoc3RlbiBUeXBlbiB1bmQgZGllIGdlaGVuIGlociBkYW5uCm1pdHRlbiBpbiBkZXIgR2lsZGUgZnJlbWQgdW5kIHNpZSBpc3Qgbm9jaCBuaWNodCBtYWwgYm9lc2UgZGllIGR1bW1lIE51c3MuCkFsc28gd2VubnMgbmFjaCBtaXIgZ2luZ2UgaGFldHQgaWNoIGlobiBnZXphcHB0LCBqYXdvbGwhIEFiZXIgd2VyIGhvZXJ0IHNjaG9uCmF1ZiB6d2VpdGllcy4KRGllIFplaXQgd2lyZCBrb21tZW4sIGRhIHdlcmRldCBpaHIgRXJzdGllcyBub2NoIHVtIEduYWRlIGZsZWhuICpib2VzZSBpbgpSaWNodHVuZyBLaG9ybmUgZ3JpbnMqCkFtYXpvcmEgLSBad2VpdHktTGliZXJhdGlvbi0gR2V3ZXJrc2NoYWZ0c2Zyb250CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExhZXNzc3R0dHR0dHR0dGVyISEhIChSb2hrb3BmcmV4LCAxMC4gSnVuIDE5OTUsIDE3OjU0OjQ4KToKIyEgcm49QW1hem9yYSBydD04MDI3OTY3MjcKaWNoIHdlaXNzIHp3YXIgbmljaHQgd29ydW0gZXMgZ2luZywgYWJlciBpY2ggbW9lY2h0ZSBtaWNoIGdlcm5lCmRlciBad2VpdHktTGliZXJhdGlvbi1HZXdlcmtzY2hhZnRzZnJvbnQgYW5zY2hsaWVzc2VuIQoKLSBSb2hrb3BmIFJleAogIDJ0eQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTGFlc3NzdHR0dHR0dHR0ZXIhISEgKEJlbGxpY3VzLCAxMC4gSnVuIDE5OTUsIDE4OjA4OjA2KToKIyEgcm49Um9oa29wZnJleCBydD04MDI3OTk2ODgKRWdhbCB1bSB3YXMgZXMgZGEgZ2VodCwgZWdhbCB3YXMgZGllIEdydW5kc2FldHplIGVpbmVyIHNvbGNoZW4gRnJvbnQgc2luZCwKaWNoIGJpbiBhdWYgamVkZW5mYWxsIGRhYmVpLiBTb2xhbmdlIGVzIGRpZXNlbiBtaWVzZW4gYnJ1dGFsZW4gdW5kCnJ1ZWNrc2ljaHRzbG9zZW4gRXJzdGllcyBkYWJlaSBEUkVDS0lHIGdlaHQgISBKYXdvbGwhICBOSUVERVIgTUlUIElITkVOISBXaXIKYnJhdWNoZW4gc2llIG5pY2h0LgoKVG9kIGRlbiAxdGllcyAhCgogIEJlbGxpY3VzLCAydHkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBMYWVzc3N0dHR0dHR0dHRlciEhISAoQW1hem9yYSwgMTAuIEp1biAxOTk1LCAxODo0MToxMCk6CiMhIHJuPUJlbGxpY3VzIHJ0PTgwMjgwMDQ4NgpPaywgd2lyIHdlcmRlbiBlaW4gVHJlZmZlbiB2ZXJlaW5iYXJlbiEgSWNoIHdlcmRlIG1pY2ggbWl0IGRlbSBLYWRlcmxldXRlbgpkZXIgWkxHIHp1c2FtbWVucmVkZW4uCkFtYXpvcmEtYm9lc2UtYXJyb2dhbnQtZ2VtZWluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExhZXNzc3R0dHR0dHR0dGVyISEhIChad2VpdGllLCAxMC4gSnVuIDE5OTUsIDIyOjQxOjM2KToKIyEgcm49QW1hem9yYSBydD04MDI3OTY3MjcKVGphLi4uLgppY2ggYmluIGF1Y2ggZGFiZWkgYmVpIGRlciBad2VpdGllLUxpYmVyYXRpb25zLUdld2Vya3NjaGFmdHNmcm9udAoKWndlaXRpZXMgYWxsZXIgUmFzc2VuIHZlcmVpbmlndCBldWNoICEgIDotKSkKCgpad2VpdGllClBzOiB3byBrYW5uIGljaCBtaWNoIGVpbnRyYWdlbiA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExhZXNzc3R0dHR0dHR0dGVyISEhIChNYW1wZiwgMTEuIEp1biAxOTk1LCAxMDoxMjo1MSk6CiMhIHJuPUFtYXpvcmEgcnQ9ODAyNzk2NzI3CkJ1YWgsCmVpbmUgWndlaXRpZS1CZWZyZWl1bmdzb3JnYW5pc2F0aW9uIHdhciBpbW1lciBtZWluIFRyYXVtLgpBYmVyIGpldHp0IGhhdCBtaWNoIG1laW4gYmxvZWRlciBFcnN0aWUgenVtIFRlc3RpZSBkZWdyYWRpZXJ0LAphbmRhdWVybmQgbWFuaXB1bGllcnQgZXIgYW4gbWlyIHJ1bSB1bmQgdmVyYWVuZGVydCBtZWluZSBXZXJ0ZS4KRXIgaGV0enQgbWljaCBhdWYgTW9uc3RlciB1bmQgYmVudXR6dCBtaWNoIGFscyBWZXJzdWNoc2thbmluY2hlbi4KQml0dGUgbGllYmUgWndlaXR5LUxpYmVyYXRpb24tIEdld2Vya3NjaGFmdHNmcm9udCwgbmltbXQgZXVjaCBhdWNoCmRlciBUZXN0aWVzIGFuLgoKICAgICAgICAgICAgICAgICAgICBNYW1wZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBMYWVzc3N0dHR0dHR0dHRlciEhISAoR3JpbW1ib3JuLCAxMS4gSnVuIDE5OTUsIDE1OjM4OjIyKToKIyEgcm49QW1hem9yYSBydD04MDI3OTY3MjcKClRqYSwgQW1hem9yYSwgZGVyIFB1bmt0IGlzdCBsZWlkZXIgZGVyOgpJY2gga2FubiBEaWNoIHphcHBlbiwgd2FlaHJlbmQgRHUgbWljaCBuaWNodCB6YXBwZW4ga2FubnN0LiBTZWxic3QgYWxzCk1hZ2llcmluIGdlaHQgZGFzIG5pY2h0IHNvb28gZWluZmFjaC4KQWxzbywgd2VubiBEdSBkYXMgVGhlbWEgYmVpIGVpbmVtIG5ldHRlbiAiemFwcCIgd2VpdGVyIGJlc3ByZWNoZW4gd2lsbHN0LCBpY2gKc3RlaGUgenVyIFZlcmZ1ZWd1bmcuIERhcyBnaWx0IGF1Y2ggZnVlciBhbGxlIGFuZGVyZW4gYXVmbXVlcGZpZ2VuIFp3ZWl0aWVzIQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LCBkZXIgZGVyIE1laW51bmcgaXN0LCBkaWVzZSBGbHV0IHZvbiBhcnJvZ2FudGVuClp3ZWl0aWVzIGdlaG9lcnQgZ2VzdG9wcHQuIEplIGJydXRhbGVyIGRlc3RvIGJlc3Nlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IExhZXNzc3R0dHR0dHR0dGVyISEhIChKYWYsIDExLiBKdW4gMTk5NSwgMTU6NTY6MzkpOgojISBybj1CZWxsaWN1cyBydD04MDI4MDA0ODYKCkphLCBKYSEgRHJhdWYgYXVmIGRpZSBibG9lZGVuIEVyc3RpZXMhIFNvbGxlbiBkaWUgZG9jaCBpaHJlIEZhY2tlbG4Kc2VsYmVyIHNjaGxlcHBlbiBpbiBadWt1bmZ0IQoKSmFmLiBLZWluIEthbm9uZW5mdXR0ZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBMYWVzc3N0dHR0dHR0dHRlciEhISAoQW1hem9yYSwgMTEuIEp1biAxOTk1LCAxNjo0NDoyMyk6CiMhIHJuPUdyaW1tYm9ybiBydD04MDI4Nzc5MDIKUG9laCwgemFwcCBtaWNoIGRvY2ghIERhcyB0YW5naWVydCBtaWNoIGphIHNvIGRlcm1hc3NlbiBwZXJpcGhlci4KQW1hem9yYSBkaWUgVGVzdHBsYXllcmluLCBpc3QgZGVyIE1laW51bmcsIGRhc3MgZGllc2UgRmx1dCB2b24gRXJzdGllcwplbmRsaWNoIGluIGlocmUgU2NocmFua2VuIHZlcndpZXNlbiB3aXJkLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTGFlc3NzdHR0dHR0dHR0ZXIhISEgKEFtYXpvcmEsIDExLiBKdW4gMTk5NSwgMTY6NDU6NDEpOgojISBybj1BbWF6b3JhIHJ0PTgwMjg4MTg2MwpBZWgsIFNjaHJhbmtlbiB2ZXJ3aWVzZW4gZ2Vob2VydCBzb2xsdGUgZGFzIGhlaXNzZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBMYWVzc3N0dHR0dHR0dHRlciEhISAoU251Z2dsZSwgMTEuIEp1biAxOTk1LCAyMjoxNDoyMSk6CiMhIHJuPVp3ZWl0aWUgcnQ9ODAyODE2ODk2CkxldXRlLCBpc3QgamEgbmljaHQgenUgZ2xhdWJlbi4uCkxhc3N0IEV1Y2ggZG9jaCBuaWNodCBhdWYgZGVyIE5hc2UgcnVtdGFuemVuLCBzaW5kZXJuIHplaWd0IGlobmVuIHdlciBkZXIKQm9zcyBpc3QuCgpTbnVnZ2xlLCAuLmhhdCBzZWluZShuKSBad2VpdGllKHMpIGltIEdyaWZmLi4gWndlaXRpZXM/IEdpYnRzIHNvd2FzPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluIGd1dGVzIEdlZnVlaGwgKEx1cHVzLCAxMS4gSnVuIDE5OTUsIDIzOjM0OjA4KToKRGllcyBpc3QgZGFzIGtsZWluZSBNYWVkY2hlbiBMaXNhLiBVbmdsdWVja2xpY2hlcndlaXNlIGlzdCBzaWUgdG90LCB1bmQgRHUKa2FubnN0IG51ciBpaHJlbiBHZWlzdCBzZWhlbi4gU2llIHNpZWh0IHNlaHIgdHJhdXJpZyBhdXMgdW5kIER1IHNwdWVyc3QgZWluClZlcmxhbmdlbiBpaHIgenUgaGVsZmVuLiBUcmFlbmVuIHRyb3BmZW4gYXVzIGlocmVuIEF1Z2VuIGF1ZiBkZW4gQm9kZW4sIHdvCnNpZSBpbiBkZXIgd2VpY2hlbiBFcmRlIHZlcnNjaHdpbmRlbi4KU2llIGlzdCBhYnNvbHV0IGZpdC4KU2llIHRyYWVndCBiZWkgc2ljaDoKRWluZSBTcGllbHpldWdwdXBwZS4KPiBMaXNhIGxhZWNoZWx0IGdsdWVja2xpY2guCkR1IHNhZ3N0OiBzaWUgaGF0IG5lIHB1cHBlCj4gSmFsYSBzYWd0OiBkYW5uIHdhcnRlbiB3aXIgYXVmcyByZXNlciBiaXMgZGllIHdpZWRlciBkYSBpc3QuLi4KWWV0eSBzYWd0OiBqYSB2b24gamFsYQpKYWxhIHNhZ3Q6IGhhc3QgZHUgZGVpbmUgcHVwcGUgbm9jaCwgeWV0eT8KTGlzYSBsYWVjaGVsdCBnbHVlY2tsaWNoLgpEdSBzYWdzdDogaG1tLCBkYW5uIG1hY2ggaWNoIG1pY2ggamV0enQgbWFsIGxhbmdzYW0gdm9tIEFja2VyLi4uCj4gWWV0eSBzYWd0OiBqYQpMaXNhIGJyaWNodCBpbiBUcmFlbmVuIGF1cy4KWWV0eSB3aW5rdC4KTGlzYSBzY2hsdWNoenQgaGVyenplcnJlaXNzZW5kLgpEdSB3aW5rc3QgWWV0eSwgSmFsYSB1bmQgTGlzYSB6dS4KCkFjaCBqYSwgZXMgaXN0IGRvY2ggc2Nob2VuLCB2ZXJtaXNzdCB6dSB3ZXJkZW4uIDopKQoKU2V1ZnplbmQsIEx1cHVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBMYWVzc3N0dHR0dHR0dHRlciEhISAoV3VyLCAxMi4gSnVuIDE5OTUsIDAxOjQxOjM2KToKIyEgcm49QW1hem9yYSBydD04MDI4MDI0NzAKV2VoZSB3ZW5uIER1IEFoYSBkYSBtaXQgcmVpbiB6aWVoc3QgQW1hem9yYSEKV3VyIC0gc2VpbmVtIGVyc3RlbiBaYXAgc2VociBuYWhlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMdXBpbmVudGFsIChDZWxlYmRpbCwgMTIuIEp1biAxOTk1LCAxNToxNDowMSk6Cj4gQWxzIER1IGF1ZiBkYXMgUGxhdGVhdSB0cml0dHN0LCB3aXNwZXJ0IGVpbmUgU3RpbW1lIGluIERlaW5lbSBLb3BmOgogICAgICBTZWkgZ2V3YXJudDogRGVyIEhlcnIgZGllc2VzIFRhbHMgaGFzc3QgRmV1ZXJ3YWZmZW4uClZvciBkZW4gU3BoaW5nZW4uCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBub3JkZW4gdW5kIHN1ZWRvc3Rlbi4KbgpubwpudwpuCm8KPiBQbG9ldHpsaWNoIHdpc3BlcnQgZWluZSBTcGhpbnggaW4gRGVpbmVtIEtvcGY6CidXYXJ0ZSwgQ2VsZWJkaWwuIEJldm9yIER1IGluIGRhcyBUYWwgZGVyIEx1cGluZW4gdHJpdHRzdCwgbXVzc3QgRHUgdW5zCmVpbiBlaW5mYWNoZXMgUmFldHNlbCBiZWFudHdvcnRlbjoKCldhcyBoYXQgV3VyemVsbiwgZGllIGtlaW5lciBzaWVodCwKUmFndCBob2VoZXIgYWxzIEJhZXVtZQpVbmQgV2lwZmVsc2FldW1lLApXYWVjaHN0IG5pZSB1bmQgdHJlaWJ0IG5pY2h0ClVuZCByZWljaHQgZG9jaCBpbnMgTGljaHQ/CgooU3ludGF4OiBhbnR3b3J0ZSA8YW50d29ydD4KPiBQbG9ldHpsaWNoIHdpc3BlcnQgZWluZSBTcGhpbnggaW4gRGVpbmVtIEtvcGY6CidXYXJ0ZSwgQ2VsZWJkaWwuIEJldm9yIER1IGluIGRhcyBUYWwgZGVyIEx1cGluZW4gdHJpdHRzdCwgbXVzc3QgRHUgdW5zCmVpbiBlaW5mYWNoZXMgUmFldHNlbCBiZWFudHdvcnRlbjoKCkFtIE1vcmdlbiBhdWYgdmllciwKQW0gTWl0dGFnIGF1ZiB6d2VpLApBbSBBYmVuZCBhdWYgZHJlaSBCZWluZW4uCgooU3ludGF4OiBhbnR3b3J0ZSA8YW50d29ydD4KPiBXaWUgYml0dGU/Cj4gV2llIGJpdHRlPwo+IFBsb2V0emxpY2ggd2lzcGVydCBlaW5lIFNwaGlueCBpbiBEZWluZW0gS29wZjoKJ1dhcnRlLCBDZWxlYmRpbC4gQmV2b3IgRHUgaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiB0cml0dHN0LCBtdXNzdCBEdSB1bnMKZWluIGVpbmZhY2hlcyBSYWV0c2VsIGJlYW50d29ydGVuOgoKRWluIEhlaW0gYXVzIEhvbHosIHVtZ2ViCmVuIHZvbiBIb2x6LApOaWNodCBkdXJjaCBkZXIgSGFlbmRlIEZsZWlzcyBlcmJhdXQuCkhvY2ggdWViZXIgZGVtIGVyZGlnZW4gR3J1bmQKQmlyZ3QgZXMgc2VpbmUgYmxhc3NibGF1ZW4gS2xlaW5vZGllbi4KCihTeW50YXg6IGFudHdvcnRlIDxhbnR3b3J0Pgo+IFdpZSBiaXR0ZT8KPiBBQUFBQUFBQUdOLiBEdSB3aXJzdCB2b24gZWluZW0gcm90ZW4gQmxpdHogYXVzIGRlbiBBdWdlbiBkZXIgU3BoaW5nZW4KZ2V0cm9mZmVuIHVuZCB6dXJ1ZWNrIGF1ZiBkZW4gUGZhZCBnZXNjaGxldWRlcnQuIElyZ2VuZGV0d2FzIHdhciBkYXJhbgpmdWVyY2h0ZXJsaWNoIGZhbHNjaC4KPiBBQUFBQUFBQUdOLiBEdSB3aXJzdCB2b24gZWluZW0gcm90ZW4gQmxpdHogYXVzIGRlbiBBdWdlbiBkZXIgU3BoaW5nZW4KZ2V0cm9mZmVuIHVuZCB6dXJ1ZWNrIGF1ZiBkZW4gUGZhZCBnZXNjaGxldWRlcnQuIElyZ2VuZGV0d2FzIHdhciBkYXJhbgpmdWVyY2h0ZXJsaWNoIGZhbHNjaC4KPiBFaW5lIFNwaGlueCBmbHVlc3RlcnQgaW4gRGVpbiBPaHI6CidTZWhyIGd1dCwgQ2VsZWJkaWwuIEdsdWVjayBhdWYgYWxsIERlaW5lbiBXZWdlbi4gV2lyIHdlcmRlbicKJ0RpY2ggYXVmIERlaW5lbSBSdWVja3dlZyBuaWNodCBtZWhyIGJlaGVsbGlnZW4uJwoKS29tbXQgZGF2b24gd2VubiBtYW4gTWFrcm9zIHp1IHNjaG5lbGwgYWJsYXVmZW4gbGFlc3N0Li4uCgpkYmRkaGtwc2F2IC0gd2llIG1laW4gRXJzdGllIENhcmFkaHJhcyBzYWdlbiB3dWVyZGUKCiAgICAgICAgIENlbGViZGlsIGRlciBIeWRyYXRvZXRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmxvb2Rnb3JlIHRyaXR0IGZlc3QgenUuLi4gKFplcGh5ciwgMTIuIEp1biAxOTk1LCAxNjoyNDoxOSk6CkJsb29kZ29yZSBzdWNodCBkaWUgU3RpbW1lLCBkaWUgaWhyIGJlZmllaGx0IHp1IHRvZXRlbi4KQmxvb2Rnb3JlIHRyaXR0IEd1eWJydXNoLCBEaWNoIHVuZCBBUlRZLiBUcmF1dCBzaWNoIGdhbnogc2Nob2VuIHdhcyEKQmxvb2Rnb3JlIGdlaHQgbmFjaCBOb3JkZW4uCkd1eWJydXNoIGdlaHQgaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4uCgpJbW1lciBub2NoIGxlaWNodCBncmluc2VuZCwKICAgICBaZXBoeXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRvb2ZhIEthc2FuIChDYXJhZGhyYXMsIDEyLiBKdW4gMTk5NSwgMjM6MTg6MjUpOgo+IFN1bXBmLgpFcyBnaWJ0IGFjaHQgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuLCB3ZXN0ZW4sIHN1ZWR3ZXN0ZW4sIG5vcmR3ZXN0ZW4sCm5vcmRlbiwgbm9yZG9zdGVuLCBvc3RlbiB1bmQgc3VlZG9zdGVuLgpFaW4gS2FudS4KPiBLYXNhbiBNYWliYW5nIGtvbW10IGFuLgpmawpLYXNhbiBNYWliYW5nIHNhZ3Q6IEhpZXIgbXVlc3N0ZSBnbGVpY2ggZWluIEthbnUgYW5rb21tZW4uCgogICBMZWljaHQgYmxpbmQsIG1laW4gRnVlaHJlciA6KQoKICAgICAgICBDYXJhZGhyYXMgZGVyIGV3aWdlIFByb3BoZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyYWNodGd1dCAtIEZyYWNodHNjaGxlY2h0IChDYXJhZGhyYXMsIDEzLiBKdW4gMTk5NSwgMDA6NTA6MjUpOgpuaW1tIHBhcGllcgo+IER1IG5pbW1zdCBlaW4gUGFwaWVyLgpiYXVlIHNjaGlmZgo+IEZlaGxlcj8gRHUgbWFjaHN0IGRvY2gga2VpbmUgRmVobGVyLiA6KQpmYWx0ZSBwYXBpZXIKPiBEYXMga2FubnN0IER1IG5pY2h0IGZhbHRlbi4KbGwgcGFwaWVyCj4gRGFzIEJsYXR0IFBhcGllciBoYXQgbWluZGVzdGVucyB2aWVyZmFjaGVzIERpbi1BMC1Gb3JtYXQuLgpmYWx0ZSBzY2hpZmYKPiBEYXMga2FubnN0IER1IG5pY2h0IGZhbHRlbi4KbGwgcGFwaWVyCj4gRGFzIEJsYXR0IFBhcGllciBoYXQgbWluZGVzdGVucyB2aWVyZmFjaGVzIERpbi1BMC1Gb3JtYXQuLgotYiB3aWUgaXN0IGRpZSBTeW50YXggdW0gZGFzIHNjaGlmZiB6dSBmYWx0ZW4/CltBYmVudGV1ZXI6Q2FyYWRocmFzXSB3aWUgaXN0IGRpZSBTeW50YXggdW0gZGFzIHNjaGlmZiB6dSBmYWx0ZW4/Cj4gW0FiZW50ZXVlcjpHb2x1bV0gZmFsdGUgc2NoaWZmID8KZmFsdGUgc2NoaWZmCkRhcyBrYW5uc3QgRHUgbmljaHQgZmFsdGVuLgo+IER1IGJlZmluZGVzdCBEaWNoIGpldHp0IGltIElubmVyZW4gZGVzIFdhc3NlcmZsdWd6ZXVnZXMuIERpcmVrdCBuZWJlbiBkaXIKaXN0IGRpZSBFaW4vQXVzc3RpZWdzbHVrZS4gVm9ybmUgYmVmaW5kZXQgc2ljaCBkYXMgQ29ja3BpdCwgbmFjaCBoaW50ZW4Ka29tbXN0IER1IGluIGRlbiBnZXdhbHRpZ2VuIExhZGVyYXVtLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogaGludGVuIHVuZCB2b3JuZS4KRWluIFJ1ZGVyYm9vdC4KYmV0cmV0ZSBib290Cj4gSW4gZWluZW0gUnVkZXJib290LgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgpFaW5lIExlaXRlci4KZmFsdGUgc2NoaWZmCj4gRGFzIGthbm5zdCBEdSBuaWNodCBmYWx0ZW4uCmxsIHBhcGllcgpEYXMgQmxhdHQgUGFwaWVyIGhhdCBtaW5kZXN0ZW5zIHZpZXJmYWNoZXMgRGluLUEwLUZvcm1hdC4uCmVhIHdlaXNzdCBkdSBlcyBub2NoPwo+IER1IHRlaWxzdCBBc21vZGlzIG1pdDogd2Vpc3N0IGR1IGVzIG5vY2g/Cj4gWmVwaHlyIHRlaWx0IERpciBtaXQ6IHdhcyBmdWVybiBTY2hpZmY/Pz8KZWEgZGFzIHBhcGllciwgZnJhY2h0Z3V0LCB3aWUgYmF1dCBtYW4gZGFzIHNjaGlmZgpEdSB0ZWlsc3QgQXNtb2RpcyBtaXQ6IGRhcyBwYXBpZXIsIGZyYWNodGd1dCwgd2llIGJhdXQgbWFuIGRhcyBzY2hpZmYKPiBBc21vZGlzIHRlaWx0IERpciBtaXQ6IGZhbHRlIGJvb3Qgb2RlciBzbwplYSBobSwgaWNoIGhhYiBzY2hpZmYgdmVyc3VjaHQsIHZlcmZsaXh0IDopCkR1IHRlaWxzdCBBc21vZGlzIG1pdDogaG0sIGljaCBoYWIgc2NoaWZmIHZlcnN1Y2h0LCB2ZXJmbGl4dCA6KQpmYWx0ZSBib290Cj4gRHUgZmFsdGVzdCBlaW4gQm9vdCBhdXMgZGVtIEJsYXR0IFBhcGllci4KLWE6aXN0IGJsb2VkLCBibG9lZCB3aWUgSmFkZS4KPiBbQWxsZ2VtZWluOkNhcmFkaHJhcyBpc3QgYmxvZWQsIGJsb2VkIHdpZSBKYWRlLl0KbGVnZSBzY2hpZmYgYWIKRHUgaGFzdCBuaWNodHMgRGVyYXJ0aWdlcyEKbGVnZSBib290IGFiCj4gRHUgbGFlc3N0IGRhcyBQYXBpZXIgZmFsbGVuLgpiZXRyZXRlIGJvb3QKRGEgYmlzdCBEdSBiZXJlaXRzLgpsCj4gRHUgYmlzdCBpbiBlaW5lbSBSdWRlcmJvb3QuCkVzIGdpYnQga2VpbmUgc2ljaHRiYXJlbiBBdXNnYWVuZ2UuCkVpbiBQYXBpZXJib290LgpFaW5lIExlaXRlci4KQXVzc2VyaGFsYiBzaWVoc3QgRHU6CkVpbiBGbHVnemV1Zy4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IGhpbnRlbiB1bmQgdm9ybmUuCm5pbW0gcGFwaWVyYm9vdAo+IER1IG5pbW1zdCBlaW4gUGFwaWVyLgo+IFtBbGxnZW1laW46U2NocnVtcGZpIHRyb2VzdGV0IGNhcmFdCnNldHplIHBhcGllcmJvb3QgaW4gd2Fzc2VyCldhcyBtb2VjaHRlc3QgRHUgd28gZWluc2V0emVuPwpsZWdlIHBhcGllcmJvb3QgaW4gd2Fzc2VyCk5pY2h0cyB6dW0gSGluZWluc3RlY2tlbiBvZGVyIGRyYXVmbGVnZW4gZ2VmdW5kZW4uCmkKRWluIFBhcGllcmJvb3QuCkVpbiBsaWxhLWxldWNodGVuZGVyIEJ1bWVyYW5nLgpFaW4gYmxhdS1wdW5rdGllcnRlciBCdW1lcmFuZy4KRWluZSBLaXN0ZS4KRWluIFNjaGx1ZXNzZWwuCkVpbmUgQ29sYS1GbGFzY2hlLgpFaW5lIENvbGEtRmxhc2NoZS4KRWluZSBDb2xhLUZsYXNjaGUuCkVpbmUgQ29sYS1GbGFzY2hlLgpFaW4gUnVkZXIuCjIwIEhvZXJuZXIgZGVyIEh5ZHJhLgpFaW4gRnJldW5kc2NoYWZ0c2JhbmQgKGdldHJhZ2VuKS4KRWluZSBnb2xkZW5lIFNjaHVwcGUgKGFuZ2V6b2dlbikuCkRhcyBCbHV0c2F1Z2VyLVNjaHdlcnQgKGdlenVlY2t0KS4KRWluZSBTY2hhdHRlbnJ1ZXN0dW5nIChhbmdlem9nZW4pLgpEZXIgVW1oYW5nIGRlcyBUb2RlcyAoYW5nZXpvZ2VuKS4KRWluIFNjaGxlaW1iZXV0ZWwuCkVpbmUgS3Jpc3RhbGxrcm9uZSAoYW5nZXpvZ2VuKS4KRGVyIFN0YWIgZGVzIEVpc2VzLgpEYXMgQW11bGV0dCBkZXIgU3RlaW5iZWlzc2VyIChhbmdlem9nZW4pLgpFaW5lIERpZGRsLUtudWRkZWwtTWF1cy4KRWluIFBhYXIgc2lsYmVybmUgSGFuZHNjaHVoZSAoYW5nZXpvZ2VuKS4KRWluIFJpbmcgZGVyIEF1c2RhdWVyICgrMikgKGFuZ2V6b2dlbikuCkVpbiBQYWFyIGJsYW5rcG9saWVydGVyIFN0aWVmZWwgKGFuZ2V6b2dlbikuCkNhcmFkaHJhcycgVGVkZHliYWVyIFF1ZXhscXVveGwuCkVpbiBFaGVyaW5nIG1pdCBlaW5lbSBEaWFtYW50IChnZXRyYWdlbikuCkVpbiBQbGFuZWRpdG9yLgo1MTUzIE11ZW56ZW4uCkVpbmUgV3VuZGVybGFtcGUuCkRhcyBTZXJ2aWNlcGFrZXQgdm9uIE1vcmdlbmdyYXVlbnMgUHJlc3NlYWdlbnR1ci4KRWluZSBtYWdpc2NoZSBLdWdlbC4Kc2V0emUgcGFwaWVyYm9vdCBpbiB3YXNzZXIKPiBXYXMgbW9lY2h0ZXN0IER1IHdvIGVpbnNldHplbj8KbGVnZSBwYXBpZXJib290IGluIHdhc3NlcgpOaWNodHMgenVtIEhpbmVpbnN0ZWNrZW4gb2RlciBkcmF1ZmxlZ2VuIGdlZnVuZGVuLgpsZWdlIHBhcGllcmJvb3QgYWIKPiBEdSBsYWVzc3QgZGFzIFBhcGllciBmYWxsZW4uCmJldHJldGUgcGFwaWVyYm9vdAo+IERhIGJpc3QgRHUgYmVyZWl0cy4KbAo+IER1IGJpc3QgaW4gZWluZW0gUnVkZXJib290LgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgpFaW4gUGFwaWVyYm9vdC4KRWluZSBMZWl0ZXIuCkF1c3NlcmhhbGIgc2llaHN0IER1OgpFaW4gRmx1Z3pldWcuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBoaW50ZW4gdW5kIHZvcm5lLgpnCj4gRHUgbmltbXN0IGVpbiBQYXBpZXIuCkR1IG5pbW1zdCBlaW5lIExlaXRlci4KZWEgdW5kIHdpZSBzZXR6dCBtYW4gZGFzIGlucyB3YXNzZXI/ICpicnVtbWVsKgo+IER1IHRlaWxzdCBBc21vZGlzIG1pdDogdW5kIHdpZSBzZXR6dCBtYW4gZGFzIGlucyB3YXNzZXI/ICpicnVtbWVsKgo+IEFzbW9kaXMgdGVpbHQgRGlyIG1pdDogYmV0cmV0ZSBwYXBpZXJib290CmVhIGRhIGJpc3QgZHUgYmVyZWl0cy4uLiBoYWIgaWNoIHNjaG9uIHZlcnN1Y2h0CkRhcyBSdWRlcmJvb3QgbGVndCBhYi4KRGFzIFJ1ZGVyYm9vdCBsZWd0IGFuLgpFaW5lIGhlcnJsaWNoZSBXYWVybWUgZ2VodCB2b24gRGVpbmVtIEFtdWxldHQgYXVzIHVuZCBEdSBmdWVobHN0CkRpY2ggcHJpbWEuCj4gRHUgYmlzdCBpbiBlaW5lbSBSdWRlcmJvb3QuCkVzIGdpYnQga2VpbmUgc2ljaHRiYXJlbiBBdXNnYWVuZ2UuCkF1c3NlcmhhbGIgc2llaHN0IER1OgpFaW5lIE1vbGUuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiB3ZXN0ZW4sIG5vcmR3ZXN0ZW4gdW5kIG5vcmRlbi4KRWluIEZvcmUtWm9tYmllLgpFaW4gRm9yZS1Qcmllc3Rlci4KRWluIEZvcmUtUHJpZXN0ZXIuCkVpbiBGb3JlLVpvbWJpZS4KLWEgaGloaSwgc28gZ2VodHMgbmF0dWVybGljaCBhdWNoIDopKSBnbGVpY2ggd2FzIGZ1ZXIgc2NobWFycm4KPiBbQWxsZ2VtZWluOkNhcmFkaHJhc10gaGloaSwgc28gZ2VodHMgbmF0dWVybGljaCBhdWNoIDopKSBnbGVpY2ggd2FzIGZ1ZXIKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIHNjaG1hcnJuCgoKICAgICAgIHNpY2ggbWl0IEYqcmUga29lbmlnbGljaCBhbXVlc2llcmVuZAoKICAgICAgICAgICAgICAgICAgQ2FyYWRocmFzIGRlciBld2lnZSBQcm9waGV0CgpQUzogRGFua2UgZnVlciBkZW4gUmVzZXQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IExhZXNzc3R0dHR0dHR0dGVyISEhIChBbmNhbGFnb24sIDEzLiBKdW4gMTk5NSwgMTA6MjQ6MDMpOgojISBybj1TbnVnZ2xlIHJ0PTgwMjkwMTY2MQpNb2luLCBlcnN0bWFsIQphbHNvLCBpY2ggaGFiZSBrZWluZSBQcm9ibGVtZSBtaXQgZXJzdGllcyBvZGVyIHp3ZWl0aWVzLiBpY2ggYmluIG5hZW1saWNoIGVpbgpFaW56aWUhIEVpbmVyIG9obmUgYWxsZSBad2VpdGllcy4gRGFzIGlzdCBkYXMgZWluemlnIHdhaHJlISBrZWluIHd1bmRlciwgd2VubgpkaWUgendlaXRpZXMgZGVyIGdhbnplbiBtdWx0aXBsZW4gcGVyc29lbmxpY2hrZWl0ZW4gaW0gTW9yZ2VuZ3JhdWVuIGF1Zm11ZXBmaWcKd2VyZGVuLiAuLi4uLi4uTWlzdCBlcyBoYXQgbWlyIGRlbiBTY2hpcm0gd2VnZ2VzY3JvbGx0LiBXbyB3YXIgaWNoIGRlbm4gamV0enQ/CkVnYWwsIGplZGVuZmFsbHMgZXJrbGFlcmUgaWNoIG1pY2ggbWl0IGRlbiBad2VpdGllcyBzb2xpZGFyaXNjaCEgV2VubiBzY2hvbgpqZW1hbmQgendlaXRpZXMsIGRydHRpZXMgZXRjLiB6dWxhZXNzdCBtdXNzIGVyIHNpZSBhdWNoIGFscyBnbGVpY2hiZXJlY2h0aWd0CmJlaGFuZGVsbiEKSW4gZGllc2VtIFNpbm5lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5jYWxhZ29uCihpc3QgYWxsZWluZSBhdWNoIGltbWVyIGd1dCBrbGFyZ2Vrb21tZW4uLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMaXZlYmVyaWNodCBhdXMgT1AgNSAoUnVtYXRhLCAxMy4gSnVuIDE5OTUsIDEwOjI3OjE4KToKRGVyIExpZmViZXJpY2h0IHZvbiBlaW5lciBQcm9wZXJ0eS1TYXZlZmxhZyBUcmFuc3BsYW50YXRpb24gaW0gT1AgNQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCk1hZXN0cm8gQ3JlYXRpdmUgdGVpbHQgRGlyIG1pdDogYnR3LCB3ZXJkZW4gbWl0IHN3aG8gc25vb3BzIGF1ZiBNSUNICk1hZXN0cm8gQ3JlYXRpdmUgdGVpbHQgRGlyIG1pdDogYW5nZXplaWd0IG9kZXIgd2llPwpbTWFnaWVyOlNjaHJ1bXBmaV0gaGV1bHN1c2UgOy0pCltNYWdpZXI6QmFyb25dIFdhc24gbG9zIENyZWE/CltNYWdpZXI6QW50aGVhXSBlciBoYXQgd29obCBtYWwgd2llZGVyIHNlaW5lbiBkZXByZXNzaWV2ZW4gOikKW01hZ2llcjpCYXJvbl0gZGllIDUwIGxwIDUwIG1wIGdlc2NoaWNodGU/CltNYWdpZXI6U2NocnVtcGZpXSB3ZW5uIGRhcyBsYWcgdW0gZGllIHplaXQgc2Nob24gc28gZXh0cmVtIGlzLCBtb2VjaHQgaWNoIGphCltNYWdpZXI6U2NocnVtcGZpXSBuaWNodCB3aXNzZW4gd2llIGVzIGFtIG5hY2htaXR0YWcgaXMKW01hZ2llcjpQdW1hXSBMYWc/IFdlbGNoZXMgTGFnPwpbTWFnaWVyOlB1bWEgZmluZGV0cyB0b2xsIG1vbWVudGFuLl0KW01hZ2llcjpTY2hydW1wZmldIG5vZSBzZWluZSBzaGVsbCBpcyBoaW4uIGVyIGthbm4gZGFzIHZlcnplaWNobmlzIG5pY2gKW01hZ2llcjpTY2hydW1wZmldIHdlY2hzZWxuCnNub29wIGNyZWF0aXZlCkR1IHNub29wc3QgamV0enQgQ3JlYXRpdmUuCltNYWdpZXI6Q3JlYXRpdmUgbmlja3QgU2NocnVtcGZpIHp1XQpbTWFnaWVyOldhcmdvbl0gRGFzIGlzdCBkYW5uIGRhcyBnbGVpY2hlIHdpZSBkYXMgNTBNUC9IUC1TeW5kcm9tIDspCltNYWdpZXI6V2FyZ29uXSBEYXMgaXN0IGRhbm4gZGFzIGdsZWljaGUgd2llIGRhcyA1ME1QL0hQLVN5bmRyb20gOykKW01hZ2llcjpMaV0gZGFzIGhhdHRlbiB3aXIgZG9jaCBnZXN0ZXJuIHNjaG9uPyAuLi4uCltNYWdpZXI6VWxvXSBrYW5uIG1hbiBkYXMgdmVyemVpY2huaXMgbmljaHQgbWl0IGVpbmVyIHByb3BlcnRpZSBzZXR6ZW4gPwpbQWxsZ2VtZWluOkxpIG5pY2t0IFdhcmdvbiB6dV0KW01hZ2llcjpXYXJnb25dIEphLCBhYmVyIHdlbm4gZGllIFNFQ1VSRUQgaXN0LCBuaWNodCBtZWhyLiA7KQpbTWFnaWVyOkJhcm9uXSBXYXJnb24gaGF0IG1pY2ggZ2VzdGVybiBvcGVyaWVydCAoU2Nod2VzdGVyLCBkaWUgVHVwZmVyCltNYWdpZXI6QmFyb25dIGJpdHRlISkuIFNlaXRkZW0gaXN0IG1laW4gUGxheWVyZmlsZSBhbnNjaGVpbmVuZCB3aWVkZXIgaS5vLgpbTWFnaWVyOkJhcm9uXSAqZnJldSoKW01hZ2llcjpQdW1hXSBXaWUgZnVlaGx0IG1hbiBzaWNoIHNvIGltIGhvbWUsIENyZWEgOi0pID8KW01hZ2llcjpXYXJnb25dIEFsc286IFdlciBoYXQgYWxsZXMgUHJvYmxlbWU/CltNYWdpZXI6UnVtYXRhXSBpY2gga3VlbW1lcmUgbWljaCBnZXJhZGUgdW0gY3JlYXRpdmUKW01hZ2llcjpCYXJvbl0gSUNIISBNZWluZSBGcmV1bmRpbiB2ZXJzdGVodCBtaWNoIG5pY2h0IQpbTWFnaWVyOlNpbHZhbmEgdHJvZXN0ZXQgQmFyb24gbXVldHRlcmxpY2guXQpGdWVyc3QgV2FyZ29uIHRlaWx0IERpciBtaXQ6IE51ciBtaXQgUF9DV0QgaXN0IGVzIHdvaGwgbmljaHQgZ2V0YW4gOykKW0FsbGdlbWVpbjpMaV0gdmllbCAgLW0gdXVwcywgZGFzIGlzdCBzY2hsZWNodCEgS2FubiBzaWUga2VpbiBEZXV0c2NoPyA6LSkKW01hZ2llcjpDcmVhdGl2ZV0gYXJnbCwgbWFjaHQgbWFsIGJpdHRlIHdlciBkYXMgbGFnIGF1cz0/Pz8/Pz8/Pz8/CltNYWdpZXI6QmFyb25zIGNoZWYgdmVyc3RlaHQgaWhuIGF1Y2ggbmljaHQuIFNvbnN0IGFiZXIga2F1bSBQcm9ibGVtZSA6KV0KRHUgdGVpbHN0IFdhcmdvbiBtaXQ6IGljaCB3ZWlzcywgZGVyIGhhdCBuZW4gZ2FuemVuIGhhdWZlbiBhdWYgc2VjdXJlCltBbGxnZW1laW46Qm9Cb10gbW9pbiBtdWQKRHUgdGVpbHN0IENyZWF0aXZlIG1pdDogbG9nIGRpY2ggZG9jaCBtYWwgYml0dGUgZnVlciA1bWludXRlbiBhdXMsIGljaCBtc3VzCkR1IHRlaWxzdCBDcmVhdGl2ZSBtaXQ6IGRlaW4gc2F2ZWZpbGUgZWRpdGllcmVuCkZ1ZXJzdCBXYXJnb24gdGVpbHQgRGlyIG1pdDogSWNoIGhhYiBtaXIgZ2VzdGVybiBlaW4gVG9vbCB6dW0gdW5zZWN1cmVuCkZ1ZXJzdCBXYXJnb24gdGVpbHQgRGlyIG1pdDogZ2VzY2hyaWViZW4uCltNYWdpZXI6TGldIG5hIGRhc3MgZGVpbiBjaGVmIGRpY2ggbmljaHQgdmVyc3RlaHQgYmFyb24sIGlzdCBkb2NoIG5pY2h0IHdhaHIhCltNYWdpZXI6TGldIHZpZWxtZWhyIGlzdCBlcyBkb2NoIHNvIGRhc3MgbmllbWFuZCBpaG4gdmVyc3RlaHQhISEhIQpEdSB0ZWlsc3QgV2FyZ29uIG1pdDogd2VsY2hlIHByb3BzIHNvbGx0ZW4gZGVuIHNlY3VyZSBibGVpYmVuID8KRnVlcnN0IFdhcmdvbiB0ZWlsdCBEaXIgbWl0OiBBbGxlIG1pdCB1bmdlcmFkZW4gRmxhZ3Mgc2luZCBmYWxzY2gKW01hZ2llcjpCYXJvbiBncmluc3QgTGkgYW4gOikpXQpEdSB0ZWlsc3QgV2FyZ29uIG1pdDogYWxzbyBhbGxlIG1pdCB1bmRlcmFkZW4gZmxhZ3MgYXVmIDY0IHNldHplbiA/IDotKQpbTWFnaWVyOlNpbHZhbmFdIERlciB2ZXJzdGVodCBhYmVyIGF1Y2gga2VpbmVuLi4uIDspCkZ1ZXJzdCBXYXJnb24gdGVpbHQgRGlyIG1pdDogZWJlbiBuaWNodDogZG9ydCBTQVZFIGxvZXNjaGVuLCBkYW5uIG11c3MgZXIKRnVlcnN0IFdhcmdvbiB0ZWlsdCBEaXIgbWl0OiBzaWNoIGF1cy0gdW5kIHdpZWRlciBlaW5sb2dnZW4KW01hZ2llcjpQdW1hICBtZWludDogQmllbGVmZWxkZXIgLi4uIDopXQpQb2xhcmhleGNoZW4gU2NocnVtcGZpIHRlaWx0IERpciBtaXQ6IGthbm5zdCBkdSBlcyBiaXR0ZSBtaXIgbWl0dGVpbGVuIHdlbm4KUG9sYXJoZXhjaGVuIFNjaHJ1bXBmaSB0ZWlsdCBEaXIgbWl0OiBzaWNoIGNyZWEgd2llZGVyIGVpbmxvZ2dlbiBrYW5uPwpbTWFnaWVyOkxpIGdydW1tZWx0IFB1bWEgYW4uXQpbTWFnaWVyOkxpXSBXaXIgc3ByZWNoZW4gaGllciBhdWNoIERldXRzY2ghCltNYWdpZXI6UHVtYSBzY2htdW56ZWx0Ll0KRHUgdGVpbHN0IFNjaHJ1bXBmaSBtaXQ6IHNhZyBpaG0gZXIgc29sbCBzaWNoIGVpbmxvZ2dlbiwgaWNoIG1hY2hlIGVzIGxpYmVyCkR1IHRlaWxzdCBTY2hydW1wZmkgbWl0OiBhbSBwbGF5ZXJvYmplY3QKUG9sYXJoZXhjaGVuIFNjaHJ1bXBmaSB0ZWlsdCBEaXIgbWl0OiBvaywgZGFua2UKW01hZ2llcjpDcmVhdGl2ZV0gYXJnbApNYWVzdHJvIENyZWF0aXZlIHRlaWx0IERpciBtaXQ6IG9raQpbTWFnaWVyOkNyZWF0aXZlIHNjaGx1Y2h6dF0KW01hZ2llcjpDcmVhdGl2ZV0gb2huZSB2ZXJ6ZWljaG5pc3dleGVsIGlzc2VzIHNvb29vbyBzY2hsaW1tIDooCltNYWdpZXI6Q3JlYXRpdmVdIGhhdHRlIGRhcyBwcm9iIHNjaG9uIHdlcj0/CkNyZWF0aXZlIHNhZ3Q6IEh1aHUhLgpbTWFnaWVyOlNjaHJ1bXBmaV0gbnUgaG9lciBhdWYgcnVtenVmbGVubmVuLCBydW1hdGEgb3BlcmllcnQgamEgc2Nob24gOikKQ3JlYXRpdmUga251ZGRlbHQgRGljaC4KW01hZ2llcjpQdW1hXSBtYWNoICdubicgOikKW01hZ2llcjpSdW1hdGFdIHJ1aGUgYXVmIGRlbSBvcC10aXNjaCA6LSkKW01hZ2llcjpDcmVhdGl2ZV0gaG1tbQpbTWFnaWVyOlNjaHJ1bXBmaSByZWljaHQgcnVtYXRhIGVpbmVuIGtuZWJlbCBmdWVyIGNyZWF0aXZlIDotKV0KQ2hlZmNoaXJ1cmcgUnVtYXRhIGJpdHRlIGluIGRlbiBPUCA1IQpbTWFnaWVyOldhcmdvbl0gSGFsdCEKW01hZ2llcjpMaV0gd2FydGUgZXJzdCBtYWwsIGJpcyBkaWUgZ2lsZGUgZmVydGlnIGlzdCwgU2lsdmllLCBkYW5uIHdpcnN0IGR1CltNYWdpZXI6TGldIGRpY2ggbmljaHQgbWVociB1ZWJlciBiZXN1Y2ggYmVrbGFnZW4KW01hZ2llcjpDcmVhdGl2ZV0gYWV0aGVyIGJpdHRlIQpbTWFnaWVyOldhcmdvbiBoYXQgc2Nob25dCltNYWdpZXI6QW50aGVhXSBpY2ggbmVobSBkaWUgS2V0dGVuc2FlZ2UgenVtIG9wZXJpZXJlbiwgamE/IDopCltNYWdpZXI6Q3JlYXRpdmVdIHdhaCEKW01hZ2llcjpMaV0gYXUgamEgYXUgamEhISEhISEhCltNYWdpZXI6VWxvXSBLYXNzZW5vcGVyYXRpb24sIGdlbGwgOikKW01hZ2llcjpXYXJnb25dIENyZWEsIG1lcmsgRGlyIERlaW5lIEZyZXVuZGUgdW5kIERlaW5lIEthbmFlbGUsIGxvZyBEaWNoIGF1cwpbTWFnaWVyOldhcmdvbl0gKG1pdCAiZW5kZSIpIHVuZCBkYW5uIHdpZWRlciBlaW4uCltNYWdpZXI6Q3JlYXRpdmVdIGhleSwgd2FzIGhhYnQgaWhyIGJpdHRlIGRhIG1pdCBtaXIgdm9yPz8/CltNYWdpZXI6TGkgZ3JpbnN0IFVsbyB6dV0KW01hZ2llcjpXYXJnb25dIEhpZXIgc2NobmlwcGVsdCBkZXIgR290dCBwZXJzb2VubGljaD8gOykKW01hZ2llcjpDcmVhdGl2ZV0gbWVpbmUgZnJldW5kZSBtZXJrZW4/Pz8gYXJnbApbTWFnaWVyOkFudGhlYV0gZHUgd2lyc3Qgd2llZGVyIHp1bSBhbmZhZW5nZXIuLi4KW01hZ2llcjpQdW1hIGdyaW5zdCBkYWVtb25pc2NoLl0KW01hZ2llcjpSdW1hdGFdIG1vbWVudG1hbApbTWFnaWVyOkNyZWF0aXZlXSB0c3RzCltNYWdpZXI6QW50aGVhXSB1bmQgZGFyZnN0IG5ldSBhbmZhbmdlbiA6KQpbTWFnaWVyOlNjaHJ1bXBmaV0gb3BlcmF0aW9uIGdlbHVuZ2VuLCBwYXRpZW50IHRvdCA6LSkKW01hZ2llcjpMaSBncmluc3QgZmVybndlc3RsaWNoIHdlaXNlLl0KW01hZ2llcjpSdW1hdGFdIGhlcnIgYXNzaXN0ZW56YXJ0eiB3YXJnb24sIHdhcyBtYWNoZW4gc2llIGRhIDotKQpbTWFnaWVyOkNyZWF0aXZlcyBMZWljaGUgYmVnaW5udCB6dSB2ZXJ3ZXNlbl0KW01hZ2llcjpMaV0gU2Nod2VzdGVyOiBUdXBmZXIuLi4uWmFuZ2UuLi4uLlN0ZXJiZXVya3VuZGUuLi4uLgpbTWFnaWVyOlNjaHJ1bXBmaSBncmluc3QgcG9sYXJtYWVzc2lnIGt1ZWhsXQpbTWFnaWVyOkNyZWF0aXZlIGtpY2hlcnRdCltNYWdpZXI6UHVtYSBuaW1tdCBhbGxlcyBhdXMgTGVpY2hlLl0KW01hZ2llcjpTY2hydW1wZmldICpsYWNoKgpbTWFnaWVyOkNyZWF0aXZlXSBzaW5kIGRpZSBIYWVuZGUgZ2VidW5kZW4KW01hZ2llcjpBbnRoZWEgaXNzdCBkaWUgTGVpY2hlIHNjaG1hdHplbmQgYXVmLl0KW01hZ2llcjpBbnRoZWEgZmFlbmd0IGFuIHp1IHd1ZXJnZW5dCltNYWdpZXI6U2lsdmFuYSB3dWVuc2NodCBndXRlbiBBcHBldGl0Ll0KW01hZ2llcjpTY2hydW1wZmldIGFudGhlYSBoYXQgamV0enQgZGllIGtpY2hlcmtyYW5raGVpdCA6LSkpCltNYWdpZXI6UHVtYSBnaWJ0IFNhbHouXQpbTWFnaWVyOkNyZWF0aXZlIGdydW1tZWx0XQpbTWFnaWVyOkFudGhlYV0gd2FyZ29uIGhhdCBkb2NoIGdlc2FndCwgZHUgc29sbHN0IGRpciBkZWluZSBGUkVVTkRFIG1lcmtlbgpbTWFnaWVyOkFudGhlYV0gOikpKQpbTWFnaWVyOlVsb10gQnVhaCEgRGllc2UgTGVpY2hlIHdhciB6d2VpZmVsbG9zIG5pY2h0IGJlc29uZGVycyBndXQhCltNYWdpZXI6Q3JlYXRpdmVdIEhNUEYKW01hZ2llcjpDcmVhdGl2ZSB3aXJkIHNlaW5lIEZyZXVuZGVzbGlzdGUgc293aWVzbyByZXZpZGllcmVuCipncnVtbWVsbmRhbnRoZWFhbmJsaWNrKl0KW01hZ2llcjpVbG9dIENyZWF0aXZlLCBrYW5uc3QgZHUgamV0enQgbmljaHQgYWxsZW4sIGRpZSBkaWNoIGFlcmdlcm4gZGllCltNYWdpZXI6VWxvXSBzaGVsbCByZW5ld2VuID8gZGFubiBoYWJlbiBkaWUgYXVjaCBlaW5lIGthcHV0dGUgc2hlbGwgPwpbTWFnaWVyOkNyZWF0aXZlIGdyaW5zdF0KW01hZ2llcjpDcmVhdGl2ZSB6d2luZ3QgYWxsZSB6dSBtZSByZW5ld10KRnVlcnN0IFdhcmdvbiBzYWd0OiBEaWUgdmVyaHVuenRlbiBQcm9wcyBoYWJlbiBhdWYgamVkZW4gRmFsbCA5NjEgaW4gaWhyZW4KRnVlcnN0IFdhcmdvbiBzYWd0OiBGbGFncywKW01hZ2llcjpVbG9dIFByb2YuIERyLiBtZWQubXVkLiBIYXRlIGlzdCBhbmdla29tbWVuLgpbTWFnaWVyOkNyZWF0aXZlXSBvZGVyIGdpYnRzIGF1Y2ggbWUgcmVvbGQ/ICpncmlucyoKW01hZ2llcjpIYXRlXSBXYXMgaXN0IGRlbm4gc2Nob24gd2llZGVyIGthcHV0dD8KW01hZ2llcjpDcmVhdGl2ZSBzdGVodCBncmFkIGJlaSBtZSByZW5lYW5kZXJ0YWxdCltNYWdpZXI6VWxvXSBQcm9mLiBIYXRlIGJpdHRlIGluIE9QIDUgOikKW01hZ2llcjpBbnRoZWFdIG51ciBkZWluZSBzaGVsbD8KW01hZ2llcjpDcmVhdGl2ZV0gbWVociB3ZWlzcyBpY2ggbm9jaCBuaWNodApbTWFnaWVyOldhcmdvbl0gUXVhcmssIGRhcyBpc3QgZGFzIFByb3BlcnR5c3luZHJvbS4gV2llIGdlc2FndDogTWl0ICJlbmRlIgpbTWFnaWVyOldhcmdvbl0gYXVzbG9nZ2VuLCB3aWVkZXIgZWlubG9nZ2VuLCBmZXJ0aWchClNjaG51Y2tpIHJ1ZnQ6IHdlciBpc3QgaGllcj8KW01hZ2llcjpDcmVhdGl2ZSB3aWxsIG5pY2h0IGVuZGUgbWFjaGVuXQpbTWFnaWVyOkhhdGVdIEhvZXJ0IGRvY2ggbWFsIGF1ZiBXYXJnb24sIGRlbiBlcm5lbm5lIGljaCBtYWwgc2NobmVsbCB6dHUKW01hZ2llcjpIYXRlXSBtZWluZW0gU3RlbGx2ZXJ0cmV0ZWVyCltNYWdpZXI6Q3JlYXRpdmVdIGJpcyBpY2ggbWVpbmUgZnJldW5kZSB3aWVkZXIgaGFiICphZWNoeioKW01hZ2llcjpXYXJnb25dIFdhYWFhYWFhYWFhCltNYWdpZXI6U2NocnVtcGZpXSBtYWNoIGRlaW5lbSBsZWlkZW4gZWluIGVuZGUsIGNyZWEgOi0pCltNYWdpZXI6Q3JlYXRpdmUgZ3JpbnN0IEhhdGUgYW5dCltNYWdpZXI6V2FyZ29ucyBGaW5nZXIgYmVnaW5ubmVuIHp1IGxldWNodGVuIHVuZCBkaWUgVGFzdGF0dXIgenUKbWFsdHJhZXRpZXJlbi4gQXVmIHd1bmRlcmJhcmUgV2Vpc2UgZXJzY2hlaW5lbiBkaWUgbWFnaXNjaGVuIFdvcnRlICJ4Y2FsbApjcmVhdGl2ZS0+cXVpdCgpIl0KW01hZ2llcjpDcmVhdGl2ZSBhcmdsdF0KW01hZ2llcjpDcmVhdGl2ZV0gd2VubiwgZGFubiAtPmRpc2Nvbm5lY3QoKSBiaXR0ZQpbTWFnaWVyOldhcmdvbl0gRGFzIG51ZXR6dCBuaXgKW01hZ2llcjpDcmVhdGl2ZSB3ZWlzcyBkYXNdCltNYWdpZXI6V2FyZ29uXSBEYW5uIGhvZXIgYXVmLCB1ZWJlciBEZWluZSBTaGVsbCB6dSBqYW1tZXJuLiA7KQpbTWFnaWVyOlNjaHJ1bXBmaSBraWNoZXJ0XQpbTWFnaWVyOkNyZWF0aXZlXSBITVBGIQpbTWFnaWVyOlVsb10gRGVyIGFuYWVzdGhlc2lzdCBzb2xsIGVuZGxpY2ggZGVuIHBhdGllbnRlbiB6dXIgcnVoZSBicmluZ2VuIQpbTWFnaWVyOkNyZWF0aXZlXSB3YWVyIGVzIERpciB3dXJzY2h0LCBrZWluZSB2ZXJ6ZWljaG5pc3NlIHdleGVsbiB6dSBrb2VubmVuPwpbTWFnaWVyOlNjaHJ1bXBmaSBrbmViZWx0IGNyZWF0aXZlXQpbTWFnaWVyOkFudGhlYSBiYXN0ZWx0IHNpY2ggZWluZW4gS25lYmVsIHVuZCBzdG9wZnQgaWhuIENyZWF0aXZlIGlucyBtYXVsXQpbTWFnaWVyOldhcmdvbl0gV2VubiBpY2ggd3Vlc3N0ZSwgd2llIGljaCBkYXMgYmVoZWJlbiBrb2VubnRlLCB3dWVyZGUgaWNoIGRpZQpbTWFnaWVyOldhcmdvbl0gTW9lZ2xpY2hrZWl0IHNvZm9ydCBudXR6ZW4hCltNYWdpZXI6Q3JlYXRpdmVdIG1wcHBwZmZmbSBtbW1tbW1wIG1tbW1wZmYgZmZtbW1wZmZwcG0KW01hZ2llcjpBbnRoZWFdIGphamEsIHp3ZWkgaWRpb3RlbiwgZGVyIHNlbGJlIGdlZGFua2UgOikKW01hZ2llcjpDcmVhdGl2ZSBmcmFndDogd2VyIGlzdCBoaWVyIElkaW90P10KW01hZ2llcjpBbnRoZWFdIG1hbCBzY2hhdW4uLi4gbWl0IGVyc3RpY2t1bmdzZ2VmYWhyIHZvbiAyMCUgOikKW01hZ2llcjpZYW50cm9dIGphLCB3YXJnb24uLi4gYmVzc2VyLi4gZXMgZ2lidCBlaW5lbiBrbmViZWwKW01hZ2llcjpXYXJnb24gd2lua3QgQ3JlYXRpdmUgbWl0IGVpbmVtIHNlbHRzYW1lbiBHZWdlbnN0YW5kIHp1Ll0KQ3JlYXRpdmUgYmVkYW5rdCBzaWNoIGJlaSBEaXIuCkR1IHNhZ3N0OiBkdSBiaXN0IGdlaGVpbGl0CltNYWdpZXI6UHVtYV0gaWNoIG1laW5lLCBkYWZ1ZXIgZGFzcyB3aXIgdW5zIGpldHp0IHNjaG9uIG5lIHN0dW5kZSBkaWUga29lcGZlCltNYWdpZXI6UHVtYV0gaGVpc3NsYWJlcm4sIGdpYnQgY3JlYSBkb2NoIG5lIHRvbGxlIHNob3cgOi0pICEKW01hZ2llcjpVbG9dIGRlciBmbHVjaCBsYXV0ZXQgJ3hjYWxsIGNyZWF0aXZlLT5tb3ZlKCIvcm9vbS9qYWlsIiwxMzApCltNYWdpZXI6Q3JlYXRpdmUgaXN0IGdlaGVpbHQhXQpbTWFnaWVyOlNjaHJ1bXBmaV0gKmtpY2hlcioKendpbmdlIGNyZWF0aXZlIHp1IGVuZGUKW01hZ2llcjpDcmVhdGl2ZV0gZWluIGhvY2ggYXVmIFJ1bWF0YSEKQ3JlYXRpdmUgcGFja3Qgc2VpbmUgU2FjaGVuIHp1c2FtbWVuIHVuZCB3YW5kZXJ0IG5hY2ggSGF1c2UuCltNYWdpZXI6TGldICpraXhoZXIqCltNYWdpZXI6QW50aGVhXSBDcmVhOiB3aXJrbGljaD8ga2VpbmUgYW5nc3Qgdm9yIHJ1ZWNrZmFsbD8gOikKW01hZ2llcjpSdW1hdGEgZ3JpbnN0XQpbTWFnaWVyOlNjaHJ1bXBmaSBqdWJlbHQgcnVtYXRhIHp1XQpbTWFnaWVyOkNyZWF0aXZlIGZyZXV0IHNpY2hdCltNYWdpZXI6VWxvIGdyYXR1bGllcnQgQ3JlYXRpdmVdCltNYWdpZXI6UHVtYV0gU1BhZXRlc3RlbnMgaGV1dGUgbmFjaG1pdHRhZyBpc3Qgc2llIHdpZWRlciBtdWVsbCA6KQpbTWFnaWVyOkNyZWF0aXZlXSB0bnggYWxsZQpbTWFnaWVyOlJ1bWF0YV0gaWNoIG1vZWNodGUgZGFzIGxvYiBhYmVyIGdlbmRlIGFuIHdhcmdvbiB3ZWl0ZXJnZWJlbiA6LSkKW01hZ2llcjpDcmVhdGl2ZSBqdWJlbHQsIHNlbGJzdCBkYXMgdmVyei4td2V4bG4gZ2VodCEgOildCltNYWdpZXI6VWxvXSBXaWUga29tbWVuIHNvbGNoZSBLcmFua2hlaXRlbiBlaWdlbnRsaWNoIGluIFVtbGF1ZiA/CltNYWdpZXI6V2FyZ29uXSBSdW1hdGEgaGF0IDEwIE1pbnV0ZW4gZ2VpZGxldCB1bmQgQ3JlYSBkYW5uIG1pdGdldGVpbHQ6IE9LCltNYWdpZXI6U2NocnVtcGZpIGhlYnQgcnVtYXRhIGF1ZiB1bmQgdHJhZWd0IGlobiBlaW5lIHJ1bmRlIGR1cmNocyBNR10KW01hZ2llcjpBbnRoZWFdIHdhcmdvbiBrcmllZ3Qgc2Nob24gZ2VudWcgbG9iLCBiZWhhbHRlIGRlaW5lcyBtYWwgOikgKG9kZXIKW01hZ2llcjpBbnRoZWFdIGlzdCBkYXMgYWxsZXMgZWlnZW5sb2IsIHdyZ29uPzopKSkKW01hZ2llcjpDcmVhdGl2ZSBncmluc3RdCltNYWdpZXI6U2NocnVtcGZpXSAqS05BQ0tTKiBrcmV1eiBrYXB1dHQgOikKW01hZ2llcjpSdW1hdGFdIHNjaHJpbXBmaSBpc3QgYWJlciBrZWluZSBfc3RhcmtlXyBmcmF1IDotKSkpKSkpCltNYWdpZXI6Q3JlYXRpdmUgcm90Zmx0ID0+IERhcyBpc3QgQ3JlYXRpdmUuIEVyIGJyYXVjaHQgZHJpbmdlbmQgZWluZW4gQXJ6dCEKKmxhYWFhY2gqXQpbTWFnaWVyOlVsb10gc2NocmltcGZpIDopIGhpaGkKW01hZ2llcjpTY2hydW1wZmldIGljaCBoZWlzc2Ugc2NoclVtcGZpIHJ1bXV0dSA6LSkKW01hZ2llcjpMaV0gd2llIHN0ZWxsZSBpY2ggbm9jaCBtYWwgZGVuIHN0YW5kYXJ0a2FuYWwgZWluPwpbTWFnaWVyOldhcmdvbiBzYWd0IG51cjogaGFsbHVdCltNYWdpZXI6UnVtYXRhXSAtfm0gZ2VuYXUgd3VlcmdvbiA6LSkKW01hZ2llcjpTY2hydW1wZmldIGR1IGJpc3QgbnVyIHNvIHNjaHdlciwgcnVtdXR1IDstKQpbTWFnaWVyOlB1bWFdIE1vbWVudCEgVXMgdmVydGVpbGUgaGllciBpbW1lciBub2NoIGljaCEgOi0pCltNYWdpZXI6QW50aGVhXSBzdGFuZGFydGthbmFsPyB3YXMgaXN0IGRhcz8gc3RhbmRhcnRlbmthbmFsIG9kZXIKW01hZ2llcjpBbnRoZWFdIHN0YW5kYXJka2FuYWw/CltNYWdpZXI6SGF0ZV0gR2VzY2hydW1wZnRpCltNYWdpZXI6U2lsdmFuYSBkZW5rdCAuIG8gTyAoSG9sbGEuKV0KW01hZ2llcjpMaV0gc3RhbmRhcmRrYW5hbD8KW01hZ2llcjpDcmVhdGl2ZV0gaWNoIGhhYiBkb2NoIHNjaG9uIG5lbiBhcnp0IGdlaGFidCEgOikKaGVhbCBjcmVhdGl2ZQpPay4KTWFlc3RybyBDcmVhdGl2ZSB0ZWlsdCBEaXIgbWl0OiBkYW5rZSA6KQpbTWFnaWVyOkxpXSBkYW5rZSBSdW1hdGEKW01hZ2llcjpDcmVhdGl2ZV0gdW5kIG1laW5lIDEwNTc1NjI3OTYgbHAgaGFiIGljaCBhdWNoIG5vY2ggOikKW01hZ2llcjpMaV0gdGVzdApbTWFnaWVyOlB1bWFdIElzdCBhdWYgamVkZW4gRmFsbCBsYWVuZ2VyIGhlciwgZGFzcyBoaWVyIGJlaSBkZW4gTWFnaWVybiBtZWhyCltNYWdpZXI6UHVtYV0gbG9zIHdhciwgYWxzIGJlaSBkZW4gU3BpZWxlcm4gOikKW01hZ2llcjpBbnRoZWFdIHRqYS4uLiBtYW4gbmltbXQgamEgamVkZSBnZWxlZ2VuaGVpdCBnZXJuZSBhbiA6KQpbTWFnaWVyOkxpIG5pY2t0IEFudGhlYSB6dV0KQ3JlYXRpdmUgc2FndDogSHVodSEuCltNYWdpZXI6TGldIHNhZyBtYW5jaG1hbCBhciBkZXIgTWFnaWVya2FuYWwgZWhlciB0b3QuLi4KW01hZ2llcjpVbG9dIFVuZCBkYW1pdCBiZWVuZGVuIHdpciB1bnNlcmUgbGl2ZS1VZWJlcnRyYWd1bmcgYXVzIE9QIDUuIFdpcgpbTWFnaWVyOlVsb10gaG9mZmVuLCBlcyBoYXQgSWhuZW4gYWxsZW4gZ3V0IGdlZmFsbGVuLiBTZWllbiBTaWUgYXVjaCBkYXMKW01hZ2llcjpVbG9dIG5hZWNoc3RlIG1hbCB3aWVkZXIgZGFiZWksIHdlbm4gRHJzLiBSdW11dHUgdW5kIFdhcmd1biBhcm1lbgpbTWFnaWVyOlVsb10ga2xlaW5lbiBNYWdpZXJuIGhlbGZlbiAuLi4KTWFlc3RybyBDcmVhdGl2ZSBzYWd0OiBhaGEsIER1IHRyYWdzdCBhdWNoIGtlaW4gZmJhbmQ/CltNYWdpZXI6SGF0ZV0gS2FubiBtaXIgbWFsIGVpbmVyIHNhZ2VuLCB3YXMgRGlXcCBpc3Q/Ck1hZXN0cm8gQ3JlYXRpdmUgc2FndDogaG0/CltNYWdpZXI6TGkgYmVkYW5rdCBzaWNoIGJlaSBSdW1hdGEsIFdhcmdvbiB1bmQgZGVtIFBhdGllbnRlbiBDcmVhKl0KW01hZ2llcjpSdW1hdGFdIERJcGxvbSBXb2xwZXJ0aW5nZXIgPwpbTWFnaWVyOlB1bWEgd2FlbHp0IHNjaCBhbSBCb2RlbiB2b3IgTGFjaGVuLl0KW01hZ2llcjpDcmVhdGl2ZV0gKj8gKj8/PwpbTWFnaWVyOlJ1bWF0YV0gZGllIHJlY2hudW5nIHNjaGlja2VuIHdpciBpaG5lbiBkYW5uCkNyZWF0aXZlIGdpYnQgRGlyIDUwMDAwIE11ZW56ZW4uCk1hZXN0cm8gQ3JlYXRpdmUgc2FndDogZnVlciBkaWUgb3BlcmF0aW9uIDopCkR1IHNhZ3N0OiBuZWUga2VpbiBiYXJnZWxkCltNYWdpZXI6QW50aGVhXSB3YXMga29zdGV0IGVpbmUgRXJ6LXN0dW5kZT8gdW5kIHdhcyBlaW5lIEdvdHQtc3R1bmRlPwpEdSBzYWdzdDogZ2ViZW4gc2llIG1pciBiaXR0ZSBpaHJlIGtyZWRpdGthcnRlbm51bW1lcgpNYWVzdHJvIENyZWF0aXZlIHNhZ3Q6IDwuLi4uLnplbnNpZXJ0IDotKS4uLi4uPgpbTWFnaWVyOlVsb10gSGF0IGVpZ2VudGxpY2ggZWluZXIgZGllIGdhbnplIG9wZXJhdGl1b24gbWFsIG1pdGdlbG9nZ3QgLi4uCltNYWdpZXI6VWxvXSB3YWVyZSB3YXMgZnVlciBzY2htZXJybiAuLi4KW01hZ2llcjpTY2hydW1wZmldIHN0aW1tdCA6KQpbTWFnaWVyOkFudGhlYV0gamEsIHVuZCBkaWUgZ2FuemVuIHZlcnR1cHBlciA6KQpbTWFnaWVyOlNjaHJ1bXBmaSBoYXQgbGVpZGVyIG5pY2h0IG1pdGdlbG9nZ3RdCltNYWdpZXI6TGldIGphIGxvcyBVbG8uLi4KW01hZ2llcjpQdW1hXSBPaGplLi4gOikKW01hZ2llcjpDcmVhdGl2ZSBzdGlyYnQgZ3JhZF0KW01hZ2llcjpTaWx2YW5hIGtvZW5udGUgZXMgbm9jaCBuYWNoaG9sZW4uLi5dCltNYWdpZXI6VWxvXSBhdSBqYSwgbm9jaG1hbCBjcmVhIQpbTWFnaWVyOkNyZWF0aXZlXSBqZGZscyBpc3QgZGVyIC1tIHdpZWRlciBtYWwgYWt0aXYgOikKW01hZ2llcjpBbnRoZWFdIGNyZWEsIGhhc3QgZHUgbnVyIGRlc2hhbGIgZGVpbmUgcHJvcHMgYXVmIHNlY3VyZSBnZXNldHp0PwpbTWFnaWVyOkNyZWF0aXZlIGdyaW5zdF0KW01hZ2llcjpXYXJnb25dIERhcyB3YXIgSm9mcyBJZGVlLiBEZXIgd29sbHRlIGRlbiBNYWdpZXJrYW5hbCBtYWwgd2llZGVyCltNYWdpZXI6V2FyZ29uXSBldHdhcyBiZWxlYmVuLiA7KQpbTWFnaWVyOkNyZWF0aXZlIGxhY2h0XQpbTWFnaWVyOlB1bWFdIG5lZSwgdW0gSnVuZ21hZ2llciBpbiBpaHJlIHNjaHJhbmtlbiB6dSB2ZXJ3ZWlzZW4gOikKW01hZ2llcjpSdW1hdGEgIGJhc3Rlc2x0IGdlcmFkZSBhbGxlcyBhdXMgc2VpbmVtIHNjcm9sbGJhY2sgenVzYW1tZW5dCltNYWdpZXI6VWxvXSBBdSBqYSwgcnVtYXRhLCBiaXNoZXIgdW52ZXJvZWZmZW50bGljaHRlIE5haGF1Zm5haG1lbiB2b24gZGVyCltNYWdpZXI6VWxvXSBPcGVyYXRpb24gPwpbTWFnaWVyOlVsb10gU3Bhbm5lbmRlIERlYXRpbHMgPwpbTWFnaWVyOlB1bWFdIENyZWFzIFNjaHJlaWU/CltNYWdpZXI6Q3JlYXRpdmVdIHdpZSB3YXM/CltNYWdpZXI6Q3JlYXRpdmUgc2NocmVpdC4gV2FzIGlzIGRhIHNvIHRvbGwgZHJhbj9dCltNYWdpZXI6UHVtYV0gV2FyIHdvaGwgZG9jaCBWb2xsbmFya29zZSAuLjopCltNYWdpZXI6VWxvXSBEYXMgaXN0IFJlYWxpdHktVFYgOikgUmVwb3J0ZXIgYmVyaWNodGV0IGxpdmUgYXVzbSBPUCAuLi4KW01hZ2llcjpVbG9dIERhcyB3b2xsZW4gZGllIE1hc3NlbiBzZWhlbiEKW01hZ2llcjpDcmVhdGl2ZV0gZGVyIHJlcG9ydGVyIGlzdCBoYWx0IGRlciBwYXRpZW50IDopCltNYWdpZXI6U2lsdmFuYSBoYXQgZ2VyYWRlIGRhcyBTdHVlY2sgZ2VmdW5kZW4sIGRhc3MgUnVtYXRhIGZlaGx0Ll0KW01hZ2llcjpSdW1hdGFdIHNjaGlja2UgZXMgbWlyIG1hbApbTWFnaWVyOlNpbHZhbmFdIE1vbWVudC4KW01hZ2llcjpVbG9dIERlciBuZXVlIEFyenQtUm9tYW4gZXJzY2hlaW50IGRlbW5hZWNoc3QgaW0gUnVtYXRhLVZlcmxhZywKW01hZ2llcjpVbG9dIE11ZW5zdGVyIC4uLgpbTWFnaWVyOlNjaHJ1bXBmaV0gKnBydXVzdCoKW01hZ2llcjpSdW1hdGFdIGZ1ZXIgbmVuIGFyenRyb21hbiBmZWhsdCBkaWUgc2Nod3N0ZXIKW01hZ2llcjpVbG9dIFNjaHdlc3RlciBTY2hyaW1wZmkgOikgPwpbTWFnaWVyOkFudGhlYV0gdGphLCBydW1hdGEsIHdpZSBoZWlzc3QgZXMgZG9jaDogRXMgaXN0IG5pY2h0IGxlaWNodCwgZWluCltNYWdpZXI6QW50aGVhXSBHb3R0IHp1IHNlaW4gOikKW01hZ2llcjpBbnRoZWFdIHNjaHJpbXBmaSBvZGVyIHNjaHJ1bXBmdT8KW01hZ2llcjpDcmVhdGl2ZV0gc2NocmltcGZ1CltNYWdpZXI6QW50aGVhXSBhaCBqYSwgY3JlYSBpc3Qgd2llZGVyIGdlc3VuZC4uLiBlciBrYW5uIHdpZWRlciBsYWVzdGVybiA6KQpbTWFnaWVyOkNyZWF0aXZlIGhtcGZ0XQpbTWFnaWVyOlVsb10gLi4ud2lyZCBkaWUgSGVpbHVuZyB2b24gQ3JlYSB2b24gRGF1ZXIgc2Vpbj8gLi4uIGhhdCBQcm9mLgpbTWFnaWVyOlVsb10gUnVtdXR1IGF1Y2ggbmljaHRzIHVlYmVyc2VoZW4/IC4uLiBoYXQgZXIgdm9yaGVyIG5pY2h0IHNjaG9uCltNYWdpZXI6VWxvXSBhbmRlcmUgYW5nZXN0ZWNrdD8gIC4uLi4uLi4gRm9ydHNldHp1bmcgZm9sZ3QhCltNYWdpZXI6UnVtYXRhXSBzZWhlciB3ZXJkZW4gaXN0IG5pY2h0IHNjaHdlciwgZ290dCB6dSBzZWluZW4gdW0gc28gbWVociA6LSkKW01hZ2llcjpDcmVhdGl2ZSB3YXJ0ZXQgZ2VzcGFubnQgYXVmIG5leHRlIHdvY2hlLCB3ZW5uIGVzIHdpZWRlciBoZWlzc3Q6CidDaGVmY2hpcnVyZyBSdW1hdGEgdW5kIHNlaW5lIEZhZWxsZSddCltNYWdpZXI6V2l6emFyZF0gZGVubiBFUyBJU1QgTklDSFQgTEVJQ0hULCBFSU4gR09UVCBaVSBTRUlOLCBnZWxsLCBSdW1hdGEKW01hZ2llcjpQdW1hXSBIZSwgVWxvISBFcyBmZWhsdCBub2NoIGRpZSBub2V0aWdlIFBvcnRpb24gU2V4J24nQ3JpbWUuLiA6KQpbTWFnaWVyOkNyZWF0aXZlIG1hY2h0IG1pdCBkZXIgT2JlcnNjaHdlc3RlciBydW0uXQpbTWFnaWVyOldhcmdvbl0gJ1dlciB6d2FuZyBkZW4gUGF0aWVudGVuIHp1ICJlbmRlIj8nIERpZSBBbnR3b3J0IGF1ZiBkaWVzZQpbTWFnaWVyOldhcmdvbl0gc3Bhbm5lbmRlIEZyYWdlIGVyZmFlaHJlbiBzaWUgaW4gdW5zZXJlciBuYWVjaHN0ZW5uIEZvbGdlIQpbTWFnaWVyOlVsb10gYWxzbyBjcmltZSB3YXIgc2Nob24gZGFiZWkuIERpZSBMZWljaGVuZmxlZGRkZXJlciBsYXNzZW4KW01hZ2llcjpVbG9dIGdydWVzc2VuIC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1Y2ggVGllcmUgbGViZW4gZ2VzdW5kIChMZWNodWNrLCAxMy4gSnVuIDE5OTUsIDExOjM2OjA2KToKTmV1bGljaCBpbiBkZXIgU2F1bmE6CkluIGVpbmVyIGhlaXNzZW4gU2F1bmEuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uCkVpbiB2ZXJydWVja3RlcyBLYWVuZ3VydWguCkVpbiBkaWNrZXIgTWFzc2V1ci4KCkhtLCBzY2hlaW50IHNvLCBhbHMgb2IgZGVtIEthZW5ndXJ1aCBzbyB3ZWl0IGltIE5vcmRlbiBrYWx0IGdld29yZGVuIHdhZXJlIDopCkxlQ2h1Y2ssIGtpbGx0IGpldHp0IGVyc3RtYWwgR3V5YnJ1c2ggVGhyZWVwd29vZC4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJsb2VkZSBmcmFnZSAoQmVsbGljdXMsIDEzLiBKdW4gMTk5NSwgMTc6NDE6NTEpOgoKW0FsbGdlbWVpbjpMdWddIGVpbiByaW5nIGRlciBHZXNjaGlrbGljaGtlaXQgLTEgc29vbCBkYXMgTWludXMgaGVpc3NzZW4/CltBbGxnZW1laW46QmVsbGljdXNdIGphLCBtaW51cyBzY2hyZWlidCBtYW4gZ2V3b2VobmxpY2ggIi0iCltBbGxnZW1laW46Qm9pbmddIG5laW4sIGVzIHdpcmQgbmF0dWVybGljaCBtdWx0aXBsaXppZXJ0CltBbGxnZW1laW46WmFyZG96XSBOZWluLCBkdSBrYW5uc3QgZGFtaXQgYXVmIGRlciBFYmVuZSBbMTpdIHNlbmRlbi4uLgpbQWxsZ2VtZWluOkNhcmFkaHJhc10gZGFtaXQgZmluZGVzdCBkdSBlaW5lbiBaVCB3ZW5pZ2VyIHdlbm4gZHUgaWhuIGFuemllaHN0LApbQWxsZ2VtZWluOkNhcmFkaHJhc10gdW5kIHp3YXIgYXVmIEdlc2NoaWNrbGljaGtlaXQKCmhtbW1tbS4gd2VyIGR1bW0gZnJhZ3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQ3VjaHVsbGluLCAxMy4gSnVuIDE5OTUsIDIxOjMyOjA5KToKCk1hbml0dSBydWZ0OiBhZGUgZHUgc2Nob2VuZSB3ZWx0ICp3aW5rKgpbVG9kOl0gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIE1hbml0dSB1bWdlYnJhY2h0LgoKCkN1Y2gsIHZvbiBkZW4gU2VoZXJuIGVudHRhZXVzY2h0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEdSBkYXJmc3QgYWxsZXMgd2FzIER1IHdpbGxzdCwgbnVyIGVpbnMsIGRhcyBuaWNodC4uLiAoQ3VjaHVsbGluLCAxMy4gSnVuIDE5OTUsIDIzOjQxOjU0KToKCgpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXIga251dHNjaHQgQmxvb2Rnb3JlIGFiLl0KW0FsbGdlbWVpbjpCbG9vZGdvcmUga251dHNjaHQgb3JkZW50bGljaCB6dXJ1ZWNrXQpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXIgbGFjaHQuXQpbQWxsZ2VtZWluOkJsb29kZ29yZV0gSG1tbW1tbW0gOykpCltBbGxnZW1laW46U2NocnVtcGZpIGtudXRzY2h0IGF1Y2ggbWl0XQpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXJdIGhtbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbQpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXJdIGZyYXVlbmdla251dHNjaGUsIGxlY2tlcgpbQWxsZ2VtZWluOkFudGhlYV0gYWxzbyBzb3dhcy4uLiBkYSBrb21tdCBtYW4gcmVpbiwgdW5kIHdpcmQgZ2xlaWNoIHZvbgpbQWxsZ2VtZWluOkFudGhlYV0gc29sY2hlbiBTY2h3ZWluZXJlaWVuIGVtcGZhbmdlbi4uLiBlcyB3aXJkIGRyaW5nZW5kIFplaXQKW0FsbGdlbWVpbjpBbnRoZWFdIGZ1ZXIgZWluZW4gU2l0dGVuLUVNICA6KQpbQWxsZ2VtZWluOkJsb29kZ29yZV0gSWNoIGdlaCBsaWViZXIgOykpCltBbGxnZW1laW46U2NocnVtcGZpIG5pY2t0IHJ1ZGkgZnJvZWhsaWNoIHp1XQpbQWxsZ2VtZWluOkJsb29kZ29yZSB3aW5rdF0KW0FsbGdlbWVpbjpBc21vZGlzXSBrbnV0c2NodCBkb2NoIE1hbCBBbnRoZWEgYWIgOikKW0FsbGdlbWVpbjpBbnRoZWFdIGF1IGphLi4uIDopCltBbGxnZW1laW46U2NocnVtcGZpIGdpYnQgYW50aGVhIGVpbiBrdWVzc2NoZW5dCltBbGxnZW1laW46QW50aGVhXSBzbyB2b3JzaWNodGlnPyA6KQpbQWxsZ2VtZWluOkFudGhlYV0gc2NoYWRlCltBbGxnZW1laW46U2NocnVtcGZpIGtudXRzY2h0IGFudGhlYSBhYiA6KV0KW0FsbGdlbWVpbjpBc21vZGlzXSBbRXJvdGlrOl0gRWluIFdhbHJvc3Mga251dHNjaHQgQW50aGVhIGFiLgpbQWxsZ2VtZWluOlNjaHJ1bXBmaSB0cml0dCBhc21vZGlzXQpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gKmdydW1tZWwqIDopCltBbGxnZW1laW46QXNtb2Rpc10gbmFqYSwgc2NocnVtcGZpLCB3ZW5uIGR1IGRpY2ggYW5nZXNwcm9jaGVuIGZ1ZWhsc3QgOikKW0FsbGdlbWVpbjpBbnRoZWEgc3R1ZXJtdCB3aWxkIGF1ZiBTY2hydW1wZmkgenUgdW5kIGZhZW5ndCBhbiwgc2llCmFienVrbnV0c2NoZW4uIFNjaHJ1bXBmaSBrYW5uIHNpY2gga2F1bSBub2NoIHJldHRlbi4gRG9jaCBqZXR6dCBmYWVuZ3QgQW50aGVhCmVyc3QgYW4uLi5dCltBbGxnZW1laW46U2NocnVtcGZpIGtpY2hlcnRdCgoKQ3VjaCwgc3RhdW5lbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnJpbmcgZ2VmdW5kZW4gKEFkYW1hLCAxNC4gSnVuIDE5OTUsIDAwOjE0OjA4KToKaGFiIGhldXRlIGZvbGdlbmRlcyBnZXNlaGVuOgoKRWluIHNjaG1hbGVyIFBmYWQgZnVlaHJ0IGhpZXIgYW4gZGVyIHN0ZWlsZW4gRmxhbmtlIGRlciBTY2hyZWNrZW5zc3BpdHplCmhpbmF1Ziwgdm9yYmVpIGFuIHJpZXNpZ2VuLCBoZXJ1bnRlcmdlc3R1ZXJ6dGVuIEZlbHNicm9ja2VuLCBzY2hhdXJpZ2VuCkFiZ3J1ZW5kZW4gdW5kIGdlZmFlaHJsaWNoZW4gR2Vyb2VsbGhhbGRlbi4gRGVyIFdlZyBmdWVocnQgdm9uIFN1ZWRvc3RlbgpoZXIga29tbWVuZCBzdWVkbGljaCBhbiBkZXIgU2NocmVja2Vuc3NwaXR6ZSB2b3JiZWkgdW5kIHNjaGxhZW5nZWx0IHNpY2gKd2VpdGVyIG5vcmR3ZXN0bGljaCBkZW4gQmVyZyBoaW5hdWYuIFZvbiBoaWVyIGhhdCBtYW4gc2Nob24gZWluZW4gcmVjaHQKZ3V0ZW4gQmxpY2sgYXVmIGRpZSBIb2NoZWJlbmUsIGRpZSBzaWNoIHdlaXQgbmFjaCBTdWVkb3N0ZW4gZXJzdHJlY2t0LgpFaW4gc2NobWFsZXIgSG9senN0ZWcgZnVlaHJ0IHVlYmVyIGVpbmUgRmVsc3NwYWx0ZSB6dSBlaW5lciBrbGVpbmVuIEhvbHotCmh1ZXR0ZS4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG5vcmR3ZXN0ZW4sIHN1ZWRvc3Rlbiwgb2JlbiB1bmQgdW50ZW4uCldhbnlhIGRlciBXYWxkbGFldWZlci4KRWluIFJpbmcgZGVyIEdlc2NoaWNrbGljaGtlaXQgKC0xKSAoYW5nZXpvZ2VuKS4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeXl5eXl5eXl5eXl4KCgpkZXIgZmluZ2VyIGRhenUgaGF0IGdlZmVobHQgOi0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHJpbmcgZ2VmdW5kZW4gKENhcmFkaHJhcywgMTQuIEp1biAxOTk1LCAxMzo1ODo1MCk6CiMhIHJuPUFkYW1hIHJ0PTgwMzA4MTY0OApIYXN0IER1IGRlbiBSaW5nIGF1Y2ggYW5nZWt1Y2t0LCBBZGFtYT8KVmllbGxlaWNodCB3YXIgamEgbm9jaCBkZXIgRmluZ2VyIGRyYW4uICpncnVlYmVsKgoKICAgICAgICBDYXJhZGhyYXMgZGVyIGV3aWdlIFByb3BoZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlaW5nZWZhbGxlbiAoQXNtb2RpcywgMTQuIEp1biAxOTk1LCAxODoxODozNik6CgpFYmVuIGthbSB3YXMgTHVzdGlnZXMgdWViZXIgZGllIEthbmFlbGU6CltBbGxnZW1laW46UGh5Z29zXSBrb2VubnRlIG1hbCBlaW5lciBkZXIgbWFnaWVyLCBkaWUgZnVlciBkZW4gYmFsbHBhcmsKW0FsbGdlbWVpbjpQaHlnb3NdIHp1c3RhZW5kaWcgc2luZCBkZW4genQgaSByeW5lcyBhcHBlcnRtZW50IHJlcGFyaWVyZW4uCltBbGxnZW1laW46UGh5Z29zXSBhbnNjaGVpbmVuZCBrbGVtbXQgZGVyIHNlaXQgZGVtIGxldHp0ZW4gZGVyIGlobiBnZnVuZGVuCltBbGxnZW1laW46UGh5Z29zXSBoYXQuIG5pbW10IGtlaW5lIHphaGwgenVyIGF1c3dhaGwgZGVyIGVyaG9laHVuZyBhbiwgdW5kCmhhdApbQWxsZ2VtZWluOlBoeWdvc10gbm9jaCBhbmRlcmVyYWxzIGRpZSBlaWdlbmVuIHdlcnRlIGdlc3BlaWNoZXJ0LgoKClNvdmllbCBhbHNvIHp1bSBUaGVtYSBadC1MaXN0ZW4gOikKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENpYW8sIEFzbW9kaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaHJlY2tzZWt1bmRlIChNYXJzLCAxNS4gSnVuIDE5OTUsIDAxOjE0OjU4KToKCm5ldWxpY2ggaW4gWmFyZG96JyBCdXJnOgoKIER1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMjA2IE1hZ2llcHVua3RlLgogIER1IGdyZWlmc3QgZGllIEZsaWVnZSBtaXQgZGVtIERzY2hpbm4tU2Nod2VydCBhbi4KICBEdSB0cmlmZnN0IGRpZSBGbGllZ2UuCkR1IGhhc3QgamV0enQgMyBMZWJlbnNwdW5rdGUgdW5kIDc4IE1hZ2llcHVua3RlLgoKaGF0IG1pciBlaW5pZ2UgZ3JhdWUgSGFhcmUgZWluZ2VicmFjaHQuCgpNYXJzIC0gdHV0IGluIFp1a3VuZnQga2VpbmVyIEZsaWVnZSBtZWhyIHdhcyB6dWxlaWRlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2NocmVja3Nla3VuZGUgKENhcmFkaHJhcywgMTUuIEp1biAxOTk1LCAwNDoyMDo1Myk6CiMhIHJuPU1hcnMgcnQ9ODAzMTcxNjk4CgpuZXVsaWNoIGluIFphcmRveicgQnVyZzoKCkR1IGhhc3QgamV0enQgMzkgTGViZW5zcHVua3RlIHVuZCAyMDYgTWFnaWVwdW5rdGUuCkRlciBQdXR6dGV1ZmVsIHRyaWZmdCBkaWNoIG1pdCBlaW5lbSBTdGF1YndlZGVsLgpEdSBncmVpZnN0IGRlbiBQdXR6dGV1ZmVsIG1pdCBkZW0gQmx1dHNhdWdlci1TY2h3ZXJ0IGFuCkR1IHRyaWZmc3QgZGVuIFB1dHp0ZXVmZWwuCkR1IGhhc3QgamV0enQgMyBMZWJlbnNwdW5rdGUgdW5kIDIgTWFnaWVwdW5rdGUuCj5lbmRlCkR1IGthbm5zdCBlaW5lbiBNYW5uIG1pdCBkdW5rbGVyIEthcHV6ZSBuZWJlbiBEZWluZXIgTGVpY2hlIHN0ZWhlbiBzZWhlbi4KRXIgd2lzY2h0IGRpZSBibHV0aWdlIEtsaW5nZSBlaW5lciBncmF1c2lnZW4gU2Vuc2UgbWl0IGxhbmdzYW1lbiwgZ2VtZXNzZW5lbgpCZXdlZ3VuZ2VuIGFiLiBQbG9ldHpsaWNoIGhvZXJ0IGVyIGF1ZiB1bmQgc2NoZWludCBEaWNoIGRpcmVrdCBhbnp1c2VoZW4gbWl0CnNlaW5lbiBsZWVyZW4gQXVnZW5ob2VobGVuIC4uLgoKRGVyIFRvZCBzYWd0OiBLT01NIE1JVCBNSVIsIFNURVJCTElDSEVSIQouLi4KCkhhdCBtaXIgYXVjaCBlaW5pZ2UgZ3JhdWUgSGFhcmUgZWluZ2VicmFjaHQuIE51ciB3YXIgZXMgZWNodC4gOi0pCkdyYXVlIEhhYXJlIHVuZCA2LjEgTWlvIEVQIHdlbmlnZXIuIFNpbmQgamV0enQgc296dXNhZ2VuIGJlaW0gVGV1ZmVsLgoqa2ljaGVyKgoKICAgICAgICAgIHRzY2h1ZXNzICAgICAgICAgQ2FyYWRocmFzIC0gbGVndCBhYiBqZXR6dCBhbGxlIFB1dHp0ZXVmZWwgdW0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpwb3N0cXVlc3QgKENhcmFkaHJhcywgMTUuIEp1biAxOTk1LCAxMzowMDo1OCk6CmdpYiBicmllZiBhbiBlaXNiYWVyCiAgRHUgZ3JlaWZzdCBkZW4gRWlzYmFlciBtaXQgYmxvc3NlbiBIYWVuZGVuIGFuLgogIER1IHZlcmZlaGxzdCBkZW4gRWlzYmFlci4KICBEZXIgRWlzYmFlciBncmVpZnQgRGljaCBtaXQgc2VpbmVuIFByYW5rZW4gYW4uCiAgRGVyIEVpc2JhZXIgdHJpZmZ0IERpY2ggc2VociBoYXJ0LgpEdSBnaWJzdCBkZW0gRWlzYmFlciBkZW4gQnJpZWYuCgogICAgICAgIEhpaGkgOikgZmVobHQgbnVyIG5vY2ggZGFzcyBlciBpaG4gbGllc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaCwgQW5keS4uIChCbG9vZHloYXJyeSwgMTUuIEp1biAxOTk1LCAxODoyNTozMSk6Ck5ldWxpY2ggYXVmIGRlciBFYmVuZS4uLgoKQW5keSBrb21tdCBhbi4KQW5keSBzYWd0OiBCbG9vZHloYXJyeSwgc3RvZWhydCBlcyBkaWNoLCB3ZW5uIGljaCBtYWwga3VyeiBldXJlbiBhZG1pbgphbnJ1ZmUsCkFuZHkgc2FndDogdW5kIGlobSBtaXR0ZWlsZSBkYXMgZXVyZSByZWNobmVyIG5pY2h0IGZ1ZXIgd2lzc2Vuc2NoYWZ0bGljaGUKQW5keSBzYWd0OiB6d2Vja2UgZ2VudXR6dCB3ZXJkZW4sIGJlc29uZGVycyB2b24gZGlyPwpBbmR5IGdlaHQuCgoKVWZmIC0gZWluIEdsdWVjayBpc3QgaGV1dGUgRmVpZXJ0YWcuICA6LSkKCmNpYW8sIEJsb29keSBIYXJyeQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyYWdlbiB1ZWJlciBGcmFnZW4uLi4gKFNjaHJ1bXBmaSwgMTUuIEp1biAxOTk1LCAyMTowMDozNik6CkFsc28sIGljaCB3dW5kZXIgbWljaCBqZWRlc21hbCB3YXMgbWVpbmUgTlBDJ3Mgc28gZ2VmcmFndCB3aXJkLiBIaWVyIG1hbCBkaWUKYmVzdGVuOklORk8gdm9uIGJlbGxpY3VzIGluIC9kL3BvbGFyL3NjaHJ1bXBmaS9tb24vaGV4ZSAoIDkuIE1haSAxOTk1KToKbG9nZmlsZSAgICAgLypzdGF1biogQmVsbGljdXMsIERpciB2ZXJsZWloIGljaCBkZW4gUHJlaXMgZnVlciBkaWUgYmVzdGVuCkZyYWdlbiA6LSkpCklORk8gdm9uIGJlbGxpY3VzIGluIC9kL3BvbGFyL3NjaHJ1bXBmaS9tb24vaGV4ZSAoIDkuIE1haSAxOTk1KToKYmxvY2tzYmVyZyAgICAgL09rIE9rLCBCZWxsaWN1cywgaGFzdCByZWNodCwgaWNoIHNjaGFlbSBtaWNoIDotKQpJTkZPIHZvbiBiZWxsaWN1cyBpbiAvZC9wb2xhci9zY2hydW1wZmkvbW9uL2hleGUgKCA5LiBNYWkgMTk5NSk6CmJpc3RkdXVlYmVyaGF1cHRlaW5laGV4ZXdlbm5kdWRlbmJsb2Nrc2JlcmduaWNodGtlbm5zdD9zY2hhZW1kaWNoLgpJTkZPIHZvbiBiZWxsaWN1cyBpbiAvZC9wb2xhci9zY2hydW1wZmkvbW9uL2hleGUgKCA5LiBNYWkgMTk5NSk6Cm1laWJpc3RkdWJsZWQgICAgIC9EYW5rZSBzY2hvZW4hIDstKQpJTkZPIHZvbiBjcm9sbGEgaW4gL2QvcG9sYXIvc2NocnVtcGZpL21vbi9oZXhlICgxMi4gTWFpIDE5OTUpOgp6YXViZXJ0cmFuayAgICAgL0d1dGVyIFZlcnN1Y2ggOy0pCklORk8gdm9uIGNyb2xsYSBpbiAvZC9wb2xhci9zY2hydW1wZmkvbW9uL2hleGUgKDEyLiBNYWkgMTk5NSk6CmRyYWN1bGEgICAgICAgICAvQW5kZXJlciBGaWxtIDstKQpJTkZPIHZvbiBmYXN0dG9tIGluIC9kL3BvbGFyL3NjaHJ1bXBmaS9tb24vaGV4ZSAoMjMuIE1haSAxOTk1KToKendlcmdlbgpJTkZPIHZvbiBmYXN0dG9tIGluIC9kL3BvbGFyL3NjaHJ1bXBmaS9tb24vaGV4ZSAoMjMuIE1haSAxOTk1KToKbWFubiBpbSBzY2huZWUgICAvSGllciBiaXN0ZSB2b2VsbGlnIGZhbHNjaCA6LSkKSU5GTyB2b24gZGhvamFrdCBpbiAvZC9wb2xhci9zY2hydW1wZmkvbW9uL2hhenJldCAoMjUuIE1haSAxOTk1KToKZnJldW5kICAgICAgICAgIC9GcmFnIENhcmFkaHJhcyEgOy0pKQpJTkZPIHZvbiBkaG9qYWt0IGluIC9kL3BvbGFyL3NjaHJ1bXBmaS9tb24vaGF6cmV0ICgyNS4gTWFpIDE5OTUpOgpoaWxmZQpJTkZPIHZvbiBjcm9sbGEgaW4gL2QvcG9sYXIvc2NocnVtcGZpL21vbi9oZXhlICggMy4gSnVuIDE5OTUpOgp6YXViZXJ0cmFuawpJTkZPIHZvbiBsdWNpYW4gaW4gL2QvcG9sYXIvc2NocnVtcGZpL21vbi9oZXhlICggOC4gSnVuIDE5OTUpOgpzY2huZWVtYW5uICAgICAvS2lubmVycywgZGVyIGlzIGhpZXIgbmljaHQhIDotKQpJTkZPIHZvbiBsdWNpYW4gaW4gL2QvcG9sYXIvc2NocnVtcGZpL21vbi9oZXhlICggOC4gSnVuIDE5OTUpOgplaXNwcmluemVzc2luCklORk8gdm9uIGJvZXJtIGluIC9kL3BvbGFyL3NjaHJ1bXBmaS9tb24vaGV4ZSAoIDkuIEp1biAxOTk1KToKc29ubmUgICAgICAgICAvSW4gZWluZXIgR3J1ZnQ/ICpncnVlYmVsKiA6LSkKSU5GTyB2b24gYm9lcm0gaW4gL2QvcG9sYXIvc2NocnVtcGZpL21vbi9oZXhlICggOS4gSnVuIDE5OTUpOgpwcmluemVzc2luICAgICAvVW5kIHdvIGJsZWlidCBkaWUgRnJhZ2UgbmFjaCBkZW0gTWFlcmNoZW5wcmlueiB1bmQgZGVtCkZyb3NjaD8gOi0pCgpTY2hydW1wZmkgbGFjaHQgaW1tZXIgbm9jaCB1ZWJlciBCZWxsaWN1cy4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIHdpbGwgYWJlciEgKFllbmRpKSAoR2FyZmllbGQsIDE2LiBKdW4gMTk5NSwgMDE6MjY6NDQpOgpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFNoaW5vYmksIDE2LiBKdW4gMTk5NSwgMDE6MjQ6MjBdOgpEYW5uIHNvbGx0ZW4gd2llIGFiZXIgYXVjaCBlaW4gViBmdWVyIFZvbGx3ZWlzZSBlaW5mdWVocmVuLgooSUNIIFdFSVNTIERBUyBEQVMgTkFDSCBTQ0hNQVJSTiBHRUhPRVJUISkKU2hpbm9iaQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggaW4gZGVyIEJlcmdyZXR0dW5nc3N0YXRpb24gKEphZiwgMTYuIEp1biAxOTk1LCAwNDozODo1MSk6Cj4gRHUgc2Fnc3Q6IHdlciBsaWVndCBlaWdlbnRsaWNoIGltIGJldHQ/CkR1IHNhZ3N0OiBvay4gd2VyIGxpZWd0IGluIGRlbSBhbmRlcmVuIGJldHQsIHJhaWJhPwpTIF1dUmFpYmEgc2FndDogZXZ0bC4gaXN0IGRlciByYXVtIG5pY2h0IHJlc2V0dGV0LCBrZWluZSBhaG51bmcKcwpEdSBzYWdzdDogaGF3ayBpZGxldCBhdWNoIHNjaG9uIHNlaXQgaApTIFRCQyBzYWd0OiBIdWNoCkR1IHNhZ3N0OiBlYmVuLiBodWNoLgpTIFRCQyBzYWd0OiBSYXVzZ2VraWNrdC4uLgpEdSBzYWdzdDogaXJnZW5kamVtYW5kIGJsb2NraWVydCBtaW5kZXN0ZW5zIGVpbiBiZXR0LCBzb25zdCB3dWVyZGUgZGFzIGhpZXIKRHUgc2Fnc3Q6IHp1ZWdpZ2VyIGdlaGVuLgpUQkMgbmlja3QgenVzdGltbWVuZC4KUyBUQkMgc2FndDogTnVyIHdlcj8KUyBSYWliYSBzYWd0OiBzY2hlaXNzZQpTIFJhaWJhIHNhZ3Q6IGljaCBoYWIgZGllIGZheGVuIGRpY2tlCkR1IHNhZ3N0OiBoYXdrIHVuZCB5ZXRpIGlkbGVuIHNlaXQgc3R1bmRlbi4KUmFpYmEgdmVybGFlc3N0IGRhcyBCZXR0LgpUQkMgbGVndCBzaWNoIGluIGRhcyBCZXR0LgpEaWVzZXMgQmV0dCBpc3Qgc2Nob24gYmVsZWd0Lgo+IERpZXNlcyBCZXR0IGlzdCBzY2hvbiBiZWxlZ3QuCj4gUmFpYmEgZ2VodC4KUmFpYmEga29tbXQgYW4uCkN1YiBrb21tdCBhbi4KRHUgc2Fnc3Q6IGN1YiBhdWNoIHZvbiByeW5lPwpSYWliYSB2ZXJsYWVzc3QgZGFzIEJldHQuClJhaWJhIGxlZ3Qgc2ljaCBpbiBkYXMgQmV0dC4KRHUgc2Fnc3Q6IHdhcyduIGpldHp0LCByYWliYSwgZHUgbXVlc3N0ZXN0IGRjb2ggdm9sbCBkYSBzZWluPwpTIFJhaWJhIHNhZ3Q6IHNjaGVpbnQgZWluIGZlaGxlcmhhZnRlcyBzY3JpcHQgenUgc2VuCkR1IHNhZ3N0OiB3ZXNzZW4/ClMgUmFpYmEgc2FndDogaWNoIGZpbmQgZGVuIGZlaGxlciB3b2hsIG5pbW1lcgpTIFJhaWJhIHNhZ3Q6IGRhbm4gZ2VoIGljaCBqZXR6dCB3b2hsIGJlc3NlciBpbnMgYmV0dApSYWliYSB3aW5rdCBEaXIgenUuCkR1IHNhZ3N0OiBkZWlucz8KVEJDIGtvbW10IGFuLgpLYW56ZnJpZWR5IGtvbW10IGFuLgpLYW56ZnJpZWR5IHNjaGxpZXNzdCBkaWUgVHVlci4KRHUgd2lua3N0IFJhaWJhIHp1LgpEdSB0ZWlsc3QgUmFpYmEgbWl0OiBnZWhzdCBkdSBub2NoIGF1cyBkZW0gYmV0dCByYXVzPwpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgUmFpYmEuClJhaWJhIHdlaWx0IHdpZWRlciB1bnRlciBkZW4gTGViZW5kZW4uCkR1IHNhZ3N0OiBuYSB0b2xsLCB3aWVkZXIgaW0gYmV0dCBlaW5nZXBlbm50LgpEdSBzYWdzdDogbm9lPwpTIFJhaWJhIHNhZ3Q6IHdpZXNvIHdpZWRlciA/CkR1IHNhZ3N0OiB3aWVkZXIgZWluZXIuLi4KRHUgc2Fnc3Q6IG1vcmdvdGggbGllYmUgaWNoIGRlc3dlZ2VuIGJlc29uZGVycyA6KQpTID4gUmFpYmEgc2FndDogaWNoIGJpbiBlaW5lLCB3ZW5uIGR1IG1hbCBzY2hhdXN0LCBkdSBhcm1lIHd1cnN0ClMgUmFpYmEgc2FndDogYXVzc2VyZGVtIHNpbmQgZGFzIGhpZXIgYmV0dGVuIGZ1ZXIgYWxsZSwgdW5kIG5pY2h0IG51ciBmdWVyClMgUmFpYmEgc2FndDogZGVpbmVuIHByaXZhdGdlYnJhdWNoLCBkYW1pdCBkYXMgbWFsIGtsYXIgaXN0CkR1IHNhZ3N0OiBobS4uLiBkYXMgZ2VzY2hsZWNodCBkZXMgc3BpZWxlcnMgaXMgamEgd29obCBtYWVubmxpY2gKUyBSYWliYSBzYWd0OiBub3BlLCBkYSBpcnJzdCBkdQpTIFJhaWJhIHNhZ3Q6IGFiZXIgd2FzIHNvbGwgbWFuIHZvbiBkaXIgYXVjaCBlcndhcnRlbgpuCnUKRHUgc2Fnc3Q6IGhtLCBpY2ggZ2VoIGhpZXIgYWxsZSB6d2VpIHJ1bmRlbiBmdWVyIGNhICBwaXVua3RlIHJlaW4uCkR1IHNhZ3N0OiBkYXMgaXN0IHdvaGwgd2VuaWdlciBhbHMgZGVyIGR1cmNoc2Nobml0dCBpbiBkZXIgd2FydGVzY2hsYW5nZS4KUyBSYWliYSBzYWd0OiB1bmQgZWluIHNjaHdhZXR6ZXIgYmlzdCBkdSBhdWNoIC0gaWNoIGhhYnMgaGV1dGUgZGVuIGdhbnplbiB0YWcKUyBSYWliYSBzYWd0OiBnZWxvZ2d0LCBhbGxlcmRpbmdzIHJlY2huZXQgZGllIGtpc3RlIG5vY2gsIG1vcmdlbiBoYWIgaWNoIGRhcwpTIFJhaWJhIHNhZ3Q6IGVyZ2VibmlzLCB3aWUgbGFuZ2UgZHUgaW5zZ2VzYW10IGhpZXIgZ2VsZWdlbiBoYXN0LCBoYXR0ZSBub2NoClMgUmFpYmEgc2FndDoga2VpbmUgemVpdCBkYXMgYW56dXNjaGF1ZW4KRHUgc2Fnc3Q6IHNvbGwgZGFzIGhlaXNzZW4sIGRhc3MgZHUgbmljaHQgendlaXRpZSB2b24gcnluZSBiaXN0PwpTIFJhaWJhIHNhZ3Q6IG5lLCB3aWUga29tbXN0IGR1IGRhcmF1ZiA/CkR1IHNhZ3N0OiBobS4gZ3V0LgpEdSBzYWdzdDogZGFubiByZWNobmUgYXVjaCAsYWwgYmVpIGRlbiBhbmRlcmVuLgpEdSBzYWdzdDogd2llc28gbmljaHQ/IGRlciB0b24gcGFzc3QgZ3V0LgpTIFJhaWJhIHNhZ3Q6IG5laW4sIGR1IG1hY2hzdCBqYSBhbSBtZWlzdGVuIC0gd2lyZCBiZXN0aW1tdCBlaW4gaW50ZXJlc3NhbnRlcgpTIFJhaWJhIHNhZ3Q6IHplaXR1bmdzYXJ0aWtlbApEdSBzYWdzdDogaWNoIHN0ZWxsIG1pY2ggZ2VuYXVzbyBhbiB3aWUgYWxsZSBhbmRlcmVuIGF1Y2guLi4KUmFpYmEgenVja3QgcmF0bG9zIG1pdCBkZW4gU2NodWx0ZXJuLgpEdSBzYWdzdDogYWJlciBtYWNoIHdhcyBkdSB3aWxsc3QuClMgPiBSYWliYSBzYWd0OiBlZ2FsLCBpY2ggbXVzcyBqZXR6dCBmZXJuc2VoZW4gZ2VoZW4KRHUgc2Fnc3Q6IGljaCBmaW5kJ3MgYmxvc3MgYmxvZWQsIGJldHRlbiB6dSBibG9ja2llcmVuLCB3ZW5uIG1hbiBzaWUgbmljaHQKRHUgc2Fnc3Q6IGJyYXVjaHQuClMgUmFpYmEgc2FndDogaWNoIGJyYXVjaGUgZXMgZG9jaCwgd3Vyc3QsIGFsc28gc2VpIG1hbCBiaXR0ZSBydWhpZwpEdSBzYWdzdDogZ2VoIGJpdHRlIGF1cyBkZW0gYmV0dCByYXVzLgpTID4gUmFpYmEgc2FndDogZXJpbm5lcmUgaWNoIG1pY2ggcmljaHRpZyA/CkR1IHNhZ3N0OiB3b3Jhbj8KUyBSYWliYSBzYWd0OiB3YXJzdCBkdSBuaWNodCBkZXJqZW5pZ2UsIGRlciByeW5lIGVpbmVuIHBsYXllcmtpbGwgYW5oYWVuZ2VuClMgUmFpYmEgc2FndDogd29sbHRlIGhpZXIgaW4gZGVyIGJlcmd3YWNodCA/ClMgUmFpYmEgc2FndDogQ2hhdmV6IHNhZ3Q6IHdlaXRlcgpEdSBzYWdzdDogdm9uIHBrIGFuaGFuZWdlbiBpcyB3b2hsIGtlaW5lIHJlZGUsIHNvbnN0IGhhZXR0ZSBpY2ggbmljaHQgZGllCkR1IHNhZ3N0OiB0dWVyIGF1ZmdlbW5hY2h0LgpTIER1IHNhZ3N0OiBobS4uLiBkYXMgIHdhZXJlIGF1Y2ggbWl0ICdSeW5lIHNhZ3Q6IHdlaXRlciAgZ2VnYW5nZW4uClMgPiBSYWliYSBzYWd0OiBkYXMgd2FyIGVpbmUgZGVybWFzc2VuIHN1cGVyYXNvemlhbGUgYWt0aW9uLCBlcnN0IGFyYmVpdGVzdApkdQpTIFJhaWJhIHNhZ3Q6IG1pdCBkZW0genVzYW1lbiwgdW5kIGRhbm4gbWFjaHN0IGR1IHNvd2FzCkR1IHNhZ3N0OiBlciBoYXQgb2huZSB3YXMgenUgc2FnZW4gZGllIHJldHR1bmdzdGF0aW9uIHN0dW5kZW5sYW5nIGZ1ZXIKRHUgc2Fnc3Q6IGplZ2xpY2hlbiB2ZXJrZWhyIGdlc3BlcnJ0LiBkYXMgaGFiIGljaCBub2NoIG5pY2h0IGdlbWFjaHQuClMgUmFpYmEgc2FndDogYWxzIGljaCBkYXMgbmV1bGljaCBhdWYgZGVtIHN0YW1tdGlzY2ggZXJ6YWVobHQgaGFiZSwgaGFiZW4gZGllClMgUmFpYmEgc2FndDogbmljaHQgc2NobGVjaHQgZ2VzY2hhdXQgLSBpc3QgaW1tZXIgd2llZGVyIGludGVyZXNzYW50LCB3YXMKZnVlcgpTIFJhaWJhIHNhZ3Q6IGxldXRlIHNpY2ggaGludGVyIGRlbiAiY2hhcmFrdGVyZW4iIC0gd292b24gYmVpIGRpciB3b2hsIG5pY2h0CmRpZVMgUmFpYmEgc2FndDogcmVkZSBzZWluIGthbm4gLSB2ZXJiZXJnZW4Kc3cKbgpvbwpzdwpudwp3Ci4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBscCAgICAgbXAKRHUgenVja3N0IG1pdCBkZW4gU2NodWx0ZXJuLgpTIFJhaWJhIHNhZ3Q6IHNvLCB1bmQgbnVuIHNhZyBub2NobWFsIGJpdHRlIGJpdHRlIGJpdHRlCkR1IHNhZ3N0OiBiaXR0ZSwgYml0dGUsIGJpdHRlLgpEdSBzYWdzdDogd2VyIGxpZWd0IGVpZ25ldGxpY2ggaW4gZGVtIGFuZGVyZW4gYmV0dD8KUyBSYWliYSBzYWd0OiBrb21tLCBwdXR0IHB1dHQgYnJhdmVzIGZ5dHRpbGVpbmNoZW4sIHNhZyBkYXMgZHUgbmUgYXJtZSB3dXJzdApTIFJhaWJhIHNhZ3Q6IGJpc3QgdW5kIGRlc2hhbGIgaW5zIGJldHRjaGVuIG11c3N0CkN1YiBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgQ3ViLgpEdSBzYWdzdDogaG0uLi4gaGFzdCByZWNodC4uLiB3aXJkIGludGVyZXNzYW50ZSBhcnRpa2VsIGdlYmVuLgpEdSBzYWdzdDogY3ViIGlzdCB2b24gZGlyPwo+IEN1YiB3ZWlsdCB3aWVkZXIgdW50ZXIgZGVuIExlYmVuZGVuLgpzdwpuCm8Kc3cKbgpvCi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBscCAgICAgbXAKUmFpYmEgaXN0IGVpbmdlbG9nZ3QsCnVuZCB6d2FyIHZvbjogTXVlbnN0ZXIuClZvbGxlciBOYW1lOiBSYWliYSBkaWUgV2FsZGxhZXVmZXJpbgpSYXNzZTogRWxmLCAgICBHZXNjaGxlY2h0OiB3ZWlibGljaApzdwp3CnUKc3cKcwpzdwpzdwp3CnNvCkFsdGVyOiBkIDo6ICAgU3BpZWxlcmxldmVsOgpzbwp1CnN3CnN3Cm5vCncKc3cKU2VpdCBkZW0gLi4nIGJlcmVpdHMgIG1hbCBnZXN0b3JiZW4KS2VpbmUgLnBsYW4tRGF0ZWkuCnN3Cm4KbwpzdwpuCm53Ci4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBscCAgICAgbXAKUyBSYWliYSBzYWd0OiBqbyBqbwpzdwpuCm8Kc3cKbgpuCi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBscCAgICAgbXAKUyBSYWliYSBzYWd0OiBpY2ggbXVzcyBlYmVuIGhlaWxlbgpTIFJhaWJhIHNhZ3Q6IGRhbm4ga2FubnN0ZSBpbnMgYmV0dApzdwpuCm8Kc3cKbgpubwouICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHAgICAgIG1wClMgUmFpYmEgc2FndDoga2FubiBhYmVyIGRhdWVybgpvbwpuClMgUmFpYmEgc2FndDogYmluIGVsZiwgaGFiZSAgbHAKc3cKbgpvCnN3Cm5vCnUKLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxwICAgICBtcApzdwpuCm8Kc3cKbm8KdQouICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHAgICAgIG1wClMgUmFpYmEgc2FndDogdW5kIGRhcyBEQVVFUlQKc28Kc3cKdwpEdSBzYWdzdDogbGV2ZWwgIHVuZCAgdGFnZSBpc3QgYWxsZXJkaW5ncyBhdWNoIHVuZ2xhdWJ3dWVyZGlnIDopCkR1IHNhZ3N0OiBobSwgc2VoIGljaCBlaW4uCnN3Cm4KbwpzdwpubwpzdwouICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHAgICAgIG1wCnMKb28KRHUgc2Fnc3Q6IGNhLiAgc2VrdW5kZW4uClMgPiBSYWliYSBzYWd0OiBndXQsIGRhbm4gc2NoYXUgZGlyIGF1Y2ggbWFsIGNhZ25leSB1bmQgbGFjZXkgYW4Kc3cKbgpvCnN3Cm5vCnMKLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxwICAgICBtcApTIFJhaWJhIHNhZ3Q6IG1hY2ggaWNoIGF1Y2gKSG1tLi4uIGRpZXNlbiBOYW1lbiBnaWJ0IGVzIGluIE1vcmdlbmdyYXVlbiBuaWNodC4KRHUgc2Fnc3Q6IGdpYnQncyBuaWNodApzClMgPiBSYWliYSBzYWd0OiBjb29sZSBzZXJpZSwgIGZyYXVlbiBhbHMgc2hlcmlmZnMKRHUgc2Fnc3Q6IGZpIGxhY2V5CkR1IHNhZ3N0OiBhaGphLgo+IFJhaWJhIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpzdwpTIFJhaWJhIHNhZ3Q6IHNhdCwgZHUgZGVwcApTIFJhaWJhIHNhZ3Q6IHNjaG9ubWFsIHdhcyB2b24gZmVybnNlaGVuIGdlaG9lcnQgPwpSYWliYSBzZXVmenQuCnN3Cm4KbwpzdwpubwpvCi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBscCAgICAgbXAKUyBSYWliYSBzYWd0OiBhbGxlcyBtdXNzIG1hbiBkaXIgZXJrbGFlcmVuCnN3Cm4KbwpzdwpubwpudwouICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHAgICAgIG1wCm9vClMgUmFpYmEgc2FndDogZWdhbCwgYmluIGplZGVuZmFsbHMgYWIgIHVociB3aWVkZXIgZGEKRHUgc2Fnc3Q6IGhtLi4uIGJpbiBqYSBvc3NpLiB3aXIga2VubmVuIGRhcyBuaWNodC4Kc3cKbgpvCnN3Cm5vCm4KLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxwICAgICBtcApTIFJhaWJhIHNhZ3Q6IGRhcyBoYXN0IGR1IGpldHp0IGdlc2FndApEdSBzYWdzdDogbWFjaCBydWhpZwpzdwpuCm8Kc3cKbm8Kbm8KLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxwICAgICBtcApSYWliYSB3aW5rdC4KCgoKRWluIG5ldHRlcyBNYWVkY2hlbi4gRmluZGV0IEZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBuZXVsaWNoIGluIGRlciBCZXJncmV0dHVuZ3NzdGF0aW9uIChSYWliYSwgMTYuIEp1biAxOTk1LCAwNDo1NjoxNSk6CiMhIHJuPUphZiBydD04MDMyNzAzMzEKRXIgbHVlZ3QuCkVyIG1hZyBtaWNoIG5pY2h0IC0gZ2xhdWIgaWNoLiBJY2ggaGF0dGUgZWhlciBkZW4gRWluZHJ1Y2ssIGVyIGlzdCByZWljaGxpY2gKc2F1ZXIsIHdlaWwgZXIgbmljaHQgcGVyIHNjcmlwdCBFUHMgc2FtbWVsbiBrYW5uLCB3ZWlsIGVyIGRhZnVlciBpbiBkZXIKYmVyZ3N0YXRpb24gdGFua2VuIG11c3MuLi4gdGphLCBpc3Qgc2Nob24gZHVtbSwgd2VubiBtYW4ga2VpbmVuIGFuZGVyZW4gd2VnCmtlbm50LCBlcyBpbSBtdWQgenUgZXR3YXMgenUgYnJpbmdlbiwgYWJlciBGeXRzIHNjcmlwdHMgc2luZCBpbnNpZGVybiBqYQpiZWthbm50IDstKQoKSG93ZXZlciwgd2lyZCB6ZWl0IGRhcyBkaWUgbWFnZ2llcyBtYWwgbGFuZ3NhbSBkaWUgYmVyZ3N0YXRpb24gdm9tIG5vcm1hbGVuClp1Z2FuZyBhYmhhZW5nZW4sIHdlaWwgZGEgamV0enQgc2VsYnN0IG5hY2h0cyBzY2hvbiA4IExldXRlIHJ1bXN0ZWhlbgoobWVpbmVyZWluZXIgbmljaHRtYWwgaW5iZWdyaWZmZW4pLgpXZW5uIGVpbmVyIGRpZSBxdWVzdCBtYWNoZW4gd2lsbCwga29tbXQgZGVyIGdhcmFudGllcnQgbmljaHQgYW4gRnl0IHVuZApzZWluZW4gMyBad2VpdGllcyB2b3JiZWksIGRpZSBoaWVyIGF1Y2ggbm9jaCB0YW5rZW4gd29sbGVuLgoKUmFpYmEKClBzc3N0IC0gYWVoIC0gRnl0IHNjaGF1IG1hbCB3ZWcsIGRpZSBsZXR6dGVuIFplaWxlbiBoaWVyIHNpbmQgZ2VoZWltOgpBbHNvLCBBdWZtZXJrc2FtZSBMZXNlciBoYWJlbiBqYSBnZXNlaGVuLCBGeXQgaGF0dGUgc2Nob24gZGVuIFZlcmRhY2h0LCBpY2gKc2VpIGVpbiBad2VpdGkgdm9uIFJ5bmUgLSBhYmVyIC4uLi4gUFNTU1NTVFRUVCEgLSBpY2ggYmluIGRvY2ggZWluIHZvZWxsaWcKc2VsYnN0c3RhZW5kaWdlciBDaGFyYWt0ZXIgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGltIG9ya2VuaG9ydC4uLiAoS2hpZGFyLCAxNi4gSnVuIDE5OTUsIDA3OjE4OjI4KToKcnVicmlrIHNlaGVyLmVudHdpY2tsdW5nCk9rLCBEdSBoYXN0IGRpZSBSdWJyaWsgc2VoZXIuZW50d2lja2x1bmcgYXVmZ2VzY2hsYWdlbi4KaW5oYWx0Ci4uLgpsaWVzIGFydGlrZWwgMTkKRXMgaXN0IHp1IGR1bmtlbCAhCgpLaGlkYXIsIHdhcnRldCwgZGFzcyBpaG0gZWluIExpY2h0IGF1ZmdlaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGZWhsYXJ0aWtlbC4uLiAoQ2F0d2VhemxlLCAxNi4gSnVuIDE5OTUsIDA5OjQ1OjUzKToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBDdWNodWxsaW4sIDE1LiBKdW4gMTk5NSwgMjI6MTQ6MTldOgoKKkdSSU5TKgoKQW5nZXNpY2h0cyBkZXIgVGF0c2FjaGUsIGRhc3Mgc2ljaCBkaWUga3VyemVuICgnc2NocmVpYmUgYnJpZWYnJy4nKQpBcnRpa2VsIGdyYWRlIGhhZXVmZW4uLi4ga29lbm50ZSBtYW4gZGFzIG5pY2h0IGRldXRsaWNoZXIgaGluc2NocmVpYmVuLAp3byBtYW4gZ3JhZGUgc2NocmVpYnQ/CkFsc28gdm9yICJOZXVlciBBcnRpa2VsIGluIFJ1YnJpayBhbGxnZW1laW5lczoiIGdhbnogZmV0dDoKCiAgICAnRFUgU0NIUkVJQlNUIEVJTkVOIEFSVElLRUwgRlVFUiBESUUgTU9SR0VOR1JBVUVOLVBSRVNTRUFHRU5UVVIsCiAgICAgICAgICAgICAgICAgREFTIEJJU1QgRFUgRElSIEhPRkZFTlRMSUNIIEJFV1VTU1QhISEnCgoKQ3VjaCwgYW11ZXNpZXJ0LgoKUFM6IEFjaCwgdmVybGVnIGRhcyBtYWwgZWluZXIgaW4gU2NobWFycm4uLi4qZ3JpbnNicmVpdCoKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBuZXVsaWNoIGluIGRlciBCZXJncmV0dHVuZ3NzdGF0aW9uIChSb2FkcnVubmVyLCAxNi4gSnVuIDE5OTUsIDExOjA5OjQ1KToKIyEgcm49UmFpYmEgcnQ9ODAzMjcxMzc1CgogRmluZGUgZGllIGV4emVzc2l2ZSBudXR6dW5nIGRlciBCZXJnc3RhdGlvbiBhdWNoIGV0d2FzIHN0b2VyZW5kLiBiZXNvbmRlcnMKd2VubiBtYW4gZGFyYXVmIGFuZ2V3aWVzZW4gaXN0LiBVbSBpbSBuZWFuZGVydGFsIHZlcm51ZW5mdGlnIGhpbmxhbmdlbiB6dQprb2VubmVuLiAoaW5zYmVzb25kZXJlIFN0ZWlubW9uc3Rlcikgd2FlcmUgZXMgU0VIUiB3dWVuc2NoZW5zd2VydCBkaWVzZSBUYW5rZQpvZmZlbnp1aGFsdGVuLiAyIEthbXBmcnVuZGVuLCBtYW5jaG1hbCAzIHNpbmQgZHJpbiAtIGRhbm4gc2luZCBkaWUgbHBzIHdlZy4KRGFzIGlzdCBzZWxic3QgYXVmIGRlbSBGcmllZGhvZiBlcnRyYWVnbGljaGVyIGJlaW0gbGljaC4gVW5kIHNvdmllbCBrYW5uIG1hbgplaW5mYWNoIG5pY2h0IHZlcmtvbnN1bWllcmVuIHVtIGFsbGUgMyBTdGVpbm1vbnN0ZXIgdW16dWxlZ2VuLgoKCQkJCVJvYWRydW5uZXIKCihkZXIgZGllIEJlcmdzdGF0aW9uIGVpZ2VudGxpY2ggbnVyIG51dHp0IHdlbm4gZXIgaW4gZGVyIEdlZ2VuZCBpc3QgdW5kIGdlZ2VuCmRpZSBtb25zdGVyIGthZW1wZnQuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbmV1bGljaCBpbiBkZXIgQmVyZ3JldHR1bmdzc3RhdGlvbiAoQ3VjaHVsbGluLCAxNi4gSnVuIDE5OTUsIDExOjUyOjE1KToKIyEgcm49Um9hZHJ1bm5lciBydD04MDMyOTM3ODUKCkhtbW0gLi4uIFJvYWRydW5uZXIsIGVzIHNhZ3QgbmllbWFuZCwgZGFzcyBEdSBkaWUgU3RlaW5tb25zdGVyIGFsbGVpbmUKcGxhZXR0ZW4gbXVzc3QuIERhcyBNdWQgaXN0IHdhcyBmdXJjaHRiYXIga29tbXVuaWthdGl2ZXMgdW5kIHp1ciBOb3Qga2FubiBtYW4KYXVjaCBnZW1laW5zYW0gbWV0emVsbi4uLiA7LSkKCkN1Y2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBuZXVsaWNoIGluIGRlciBCZXJncmV0dHVuZ3NzdGF0aW9uIChHdW5kdXIsIDE2LiBKdW4gMTk5NSwgMTI6MDg6MDApOgojISBybj1Sb2FkcnVubmVyIHJ0PTgwMzI5Mzc4NQpBbHNvIHp1IG1laW5lbiBTcGllbGVyemVpdGVuIGhhYiBpY2ggZGllIFN0ZWlubW9uc3RlciBhbGxlaW4gdW5kIG1pdCBmcmllZGhvZgpnZWtpbGx0IDotKQpBbHNvIHdvIGlzdCBkYXMgUHJvYmxlbSA/CkVpbiBydW1wcm90emVuZGVyIEd1bmR1ciAobXVzcyBhdWNoIG1hbCBzZWluIDotKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbmV1bGljaCBpbiBkZXIgQmVyZ3JldHR1bmdzc3RhdGlvbiAoSmFmLCAxNi4gSnVuIDE5OTUsIDEyOjI3OjA3KToKIyEgcm49UmFpYmEgcnQ9ODAzMjcxMzc1CgpBbHNvIFJhaWJhLiBOZWUsIHNvIGdlaHQncyBudW4gd2lya2xpY2ggbmljaHQuCgpzdwoxLiBGeXQgaGF0IGtlaW5lIGRyZWkgendlaXRpZXMsIG51ciBtaWNoIHVuZCBLdGsuCjIuIEljaCBoYWIgbm9jaCBuaWUgcGVyIFNrcmlwdCBnZXNwaWVsdCB1bmQgS3RrIGF1Y2ggbmljaHQuCjMuIFdlZGVyIGljaCBub2NoIEt0ayBnZWhlbiBpbiBkaWUgUmV0dHVuZ3NzdGF0aW9uCnRhbmtlbi4KNC4gRnl0IGtvZW5udGUgbmF0dWVybGljaCBhdWNoIGRpZSBUYW5rc3RlbGxlbiBpbiBkZXIgU1NQIG9kZXIgaW4KWmFyZG96JyBCdXJnIGxlZXJmcmVzc2VuLiBEYXMgd2FlcmUgYWJlciBpcmdlbmR3aWUgdW5mYWlyLCBub3JtYWwgaW4KZGVyIFJldHR1bmdzc3RhdGlvbiBhbnN0ZWxsZW4gc3RvZXJ0ICdub3JtYWxlJyBMZXV0ZSB3b2hsIG5pY2h0LApmcmFnIG1hbCBCZXJuaGFyZCAoaWNoIGhhYiBtaWNoIG1pdCBpaG0gbmljaHQKYWJnZXNwcm9jaGVuKQo1LiBVbmZhaXIgZmluZGUgaWNoIGFsbGVyZGluZ3MsIHNpY2ggaW4gZGllIEJldHRlbiB6dSBsZWdlbiBtaXQgZGVyIGVpbnppZ2VuCkFic2ljaHQsIHNpZSB6dSBibG9ja2llcmVuLiAqc2NoaWVsIGF1ZiBDdWIqLCBkYXMKc3RvZXJ0IEZ5dHMgU2NyaXB0IG51ciBkYWhpbmdlaGVuZCwgZGFzcyBlcyBsYW5nc2FtZXIgd2lyZCwKbGF1ZmVuIHR1dCdzIHRyb3R6ZGVtIHVuZCBEdSB2ZXJoaW5kZXJzdCwgZGFzcyBzaWNoCmFuZGVyZSBMZXV0ZSwgZGllIGF1ZiBkaWUgUlMgYW5nZXdpZXNlbiBzaW5kLCBzaWNoIGRvcnQgbmljaHQgaGVpbGVuCmtvZW5uZW4uCjcuIChvZGVyIDYuPyBlcyBzY3JvbGx0KSB2b24gbWlyIGF1cyBrYW5uc3RlIGRlaW5lCkhhdXMgdW5kIEhvZi1NYWdpZXIgYmVxdWF0c2NoZW4gZGllIFJTIGFienVoYWVuZ2VuLgpEZXIgQmVmZWhsLCB1bSBkdXJjaCBkaWUgUGFuZG9yYXF1ZXN0IGluIGRpZSBSUyB6dSBrb21tZW4gaGVpc3N0ICAvZ28gcnNpaSA6KQoKTm9jaHdhcz8gTWlyIGZhZWxsdCBlcnN0bWFsIG5peCBlaW4uLi4KCkphZi4KClBTOiBUc2NodWxkaWd1bmcgZnVlciBkaWUgRm9ybWF0aWVydW5nLgoKUFNTOiBTb2xhbmdlIG1hbiBoaWVyIG1pdCBTY3JpcHQgd2VzZW50bGljaCBiZXNzZXIga29tbXQgYWxzIG9obmUKd2lyZCBGeXQgbWl0IFNjcmlwdCBzcGllbGVuLiBJY2ggaGF0dGUgUm9jaHVzIHNjaG9uIFZvcnNjaGxhZWdlIGZ1ZXIKZWluZSBlaW5lIHNjcmlwdGZlaW5kbGljaGVyZSBHZXN0YWx0dW5nIGRlciBnYW56ZW4gVWVidW5nc2dlc2NoaWNodGUKZ2VtYWNodCwgYmlzaGVyIHVuZ2Vob2V0IHZlcmhhbGx0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbmV1bGljaCBpbiBkZXIgQmVyZ3JldHR1bmdzc3RhdGlvbiAoUGFyYWNlbHN1cywgMTYuIEp1biAxOTk1LCAxNToxNTowOSk6CiMhIHJuPVJhaWJhIHJ0PTgwMzI3MTM3NQpKYSBqYSwgbGV0enRlbnMgaGF0IG1laW4gWndlaXRpZSBQYW5kb3JhIGdlbWFjaHQgdW5kIGRvY2ggdGFzYWVjaGxpY2ggZWluCkJldHQgZXJ3aXNjaHQgOikKVm9uIGRvcnQgYXVzIGtvbm50ZSBlciBkYW5uIHNlaGVuLCB3aWUgZWluZXIgKE5hbWVuIHZlcmdlc3NlbikgZGF1ZXJuZCByZWluCnVuZCByYXVzIHJhbm50ZS4uCipNRUdBU1VQRVJIWVBFUkdSSU5TKiBlaW5lcyBOaWNodC1TY3JpcHQtU3BpZWxlcnMKUGFyYWNlbHN1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogbmV1bGljaCBpbiBkZXIgQmVyZ3JldHR1bmdzc3RhdGlvbiAoUm9hZHJ1bm5lciwgMTYuIEp1biAxOTk1LCAxNTo1NjowNCk6CiMhIHJuPUN1Y2h1bGxpbiBydD04MDMyOTYzMzUKTVVTUyBuaWNodCAtIGhhYnMgZGFzIGVyc3RlbWFsIGFiZXIgYWxsZWluZSBnZW1hY2h0IHVuZCBkYXMgZGFubiBlYmVuIG5hY2h0cy4KZGEgZmluZGVuIHNpY2ggbmljaHQgc28gdmllbGUKCgkJUm9hZHJ1bm5lcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3Bhc3MgbWl0IE1hZ2llcm4sIFRlaWwgSUkgKE11cGZlbCwgMTYuIEp1biAxOTk1LCAyMDoyMToxNSk6CmVpbmVzIHNjaG9lbmVuIGZyZWl0YWcgbmFjaG1pdHRhZ3MuLi4KCltNYWdpZXI6WmFyZG96XSBEYXJmIGljaCBlaW5lbiB0cmlnZ2VyLW5lcnZpZ2VuIFNwaWVsZXIgaW5zIEphaWwgd2VyZmVuPwpbTWFnaWVyOkVkXSBpbiBkaWUgZmV1ZXJlYmVuZSBtaXQgaWhtISEhCltNYWdpZXI6Q2F0d2VhemxlXSB3YXJ1bSwgd2FzIG1hY2h0ZXI/CltNYWdpZXI6U2lsdmFuYV0gU2NoaWNrIGlobiBtaXQgbmVtIFRyaWdnZXIgaW4gZGllIFd1ZXN0ZS4uLiA7KQpbTWFnaWVyOk11cGZlbF0gbWVpbmUgZXJsYXVibmlzIGhhc3RlCltNYWdpZXI6RWRdIHdlciBkZW5uIGVpZ2VudGxpY2ggPwpbTWFnaWVyOkthZW5ndXJ1aF0gSW5zIGphaWwgaXN0IGFzby4uLiBBYmVyIG5ldHQgOikKW01hZ2llcjpaYXJkb3pdIERlciBHaWZ0endlcmcgaXN0IHdpdHppZyBnZXRyaWdnZXJ0LiBEZXIgdmVyZm9sZ3Qgc29nYXIgZWluZW4KW01hZ2llcjpaYXJkb3pdIExlaWRlciBmb2xndCBlciBtaXIgamV0enQgenUgZGVuIFN0ZWluYmVpc3Nlcm4KW01hZ2llcjpSb25kYSByb3RmbF0KW01hZ2llcjpNdXBmZWxdICpncmlucyoKW01hZ2llcjpLYWVuZ3VydWhdIFlFUwpbTWFnaWVyOlNpbHZhbmFdICpwcnVzdCoKW01hZ2llcjpaYXJkb3pdIE1pc3QsIGVyIG1hY2h0IG5pY2h0IG1pdApbTWFnaWVyOlJvbmRhXSBTY2hhZGUuLi4KW01hZ2llcjpLYWVuZ3VydWhdIEVyc3QgZ3Jvc3NlIFJlZGVuIHNjaHdpbmdlbi4uLiA6KQpbTWFnaWVyOkNhdHdlYXpsZSAuIG8gMCAoSG0sIG9iIGRhcyBhbHMgUGxheWVyS2lsbCBnaWx0PyA6LSldCltNYWdpZXI6WmFyZG96XSBkZXIgR2lmdHp3ZXJnIGxhZXVmdCB3aWVkZXIgaW4gZGVuIExhZGVuLgpbTWFnaWVyOlphcmRvel0gRG9ydCBsYWJlcnQgZXIgamVkZW4gYW4sIGRlciB3YXMgdmVya2F1ZnQKW01hZ2llcjpSb25kYV0gSG0uLi4gZGFzIGZpbmQgaWNoIGFiZXIgZ2FybmljaHQgZ3V0Li4uICpncnVtbWVsISoKW01hZ2llcjpNdXBmZWxdIGRhcyBrYW5uIGdhbnogc2Nob2VuIHVuYW5nZW5laG0gZnVlciBkaWUgbWl0c3BpZWxlciB3ZXJkZW4KW01hZ2llcjpNdXBmZWxdIHdlbm4gZGllIGltIGxhZGVuIGRlbiBiZXV0ZWwgZmFsbGVubGFzc2VuIHVtIHdhcyBkcmF1cyB6dQpbTWFnaWVyOk11cGZlbF0gdmVya2V1ZmVuIG9kZXIgc28KW01hZ2llcjpSb25kYV0gU28sIGFsc286IEJsYWNrbW9vcmUgISEhLCBHaWZ0endlcmcgdW5kIE1vc2ggc2luZCBlaW5lIFBlcnNvbgpbTWFnaWVyOlJvbmRhXSAtIEJsYWNrbW9vciBpc3QgamVtYW5kIGFuZGVyZXMhISEKW01hZ2llcjpSb25kYV0gSWNoIGZpbmRlIGVzIG5pY2h0IHNvIGtsYXNzZTogaWNoIGhhYiBzaWUKW01hZ2llcjpSb25kYV0gZHVyY2hlaW5hbmRlcmdlYnJhY2h0Li4uCltUb2Q6XSBFaW4gU3RlaW5iZWlzc2VyIGhhdCBnZXJhZGUgR2lmdHp3ZXJnIHVtZ2VicmFjaHQuCltNYWdpZXI6Um9uZGFdIEpVQkVMISEhCltNYWdpZXI6U2lsdmFuYV0gKnBydXN0KgpbTWFnaWVyOlphcmRvel0gR2lmdHp3ZXJnIGlzdCBtaXIgZG9jaCB0YXRzYWVjaGxpY2ggYmlzIHp1IGRlbiBTdGVpbmJlaXNzZXJuCltNYWdpZXI6WmFyZG96XSBuYWNoZ2VsYXVmZW4uLi4KW01hZ2llcjpFZF0gaHVodXV1CltNYWdpZXI6Q2F0d2VhemxlXSBQbGF5ZXJraWxsLCBwbGF5ZXJraWxsIDotKSkKW01hZ2llcjpNdXBmZWxdIFN1dXV1dXVwZXIgOi0pCltNYWdpZXI6U2lsdmFuYV0gTm9lIC0gRHVtbSBnZXRyaWdnZXJ0LgpbTWFnaWVyOk11cGZlbCBrYW5uIG5pY2h0IG1laHIgdm9yIGxhY2hlbl0KW01hZ2llcjpNdXBmZWxdIGltIHdhaHJzdGVuIHNpbm5lIGRlcyB3b3J0ZXMuLi4gJ2R1bW0gZ2VsYXVmZW4nIDotKQpbTWFnaWVyOlphcmRvel0gSWNoIGRhcmYgZG9jaCB3b2hsIHp1IGRlbiBTdGVpbmJlaXNzZXJuIGxhdWZlbiwga2FubiBtaXIKW01hZ2llcjpaYXJkb3pdIGtlaW5lciB2ZXJiaWV0ZW4gOi0pCltNYWdpZXI6U2lsdmFuYSBpc3QgZnVlciBlaW5lIFJ1YnJpayBNYWdpZXIuc2NobWFycmVuLiBEYXMgbXVzcyBkZXIgTmFjaHdlbHQKZXJoYWx0ZW4gYmxlaWJlbi4gOyldCltNYWdpZXI6TXVwZmVsIGxvZ2d0IHNjaG9uIGZsaWVzc2lnIG1pdC4uLl0KW01hZ2llcjpaYXJkb3pdIEljaCBoYWJzIG5pY2h0IGdlbG9nZ3QKW01hZ2llcjpTaWx2YW5hXSBXZW5uIFJvY2h1cyBUcmlnZ2Vyc3BpZWxlciBtaXQgZ2VzY2hpY2t0ZW4gdGVpbGUtbWl0cyBpbiBkZW4KW01hZ2llcjpTaWx2YW5hXSBUb2Qgc2NoaWNrZW4gZGFyZiwgZGFyZiBaYXJkb3ogc2llIGF1Y2ggenUgZGVuIFN0ZWluYmVpc3Nlcm4KW01hZ2llcjpTaWx2YW5hXSBzY2hpY2tlbiEgOykpKQpbTWFnaWVyOlJvbmRhXSBXaWUgZ2VodCBkZW5uIGRhcz8gTWl0IGRlbiB0ZWlsZSBtaXRzPwpbTWFnaWVyOk11cGZlbF0gYWVoLi4uIG1laW5zdCBkdSBuaWNodCBtaXQgJ2VjaG90bydzPwpbTWFnaWVyOlJvbmRhXSBXYWVyZW4gZGFubiBlY2hvdG8gYXVjaCBvaz8KW01hZ2llcjpSb25kYSBncmluc3RdCltNYWdpZXI6WmFyZG96XSBHaWZ0endlcmcgaXN0IHdpZWRlciBkYS4gV28gc29sbCBlciBkaWVzbWFsIHN0ZXJiZW4KW01hZ2llcjpaYXJkb3pdID8KW01hZ2llcjpNdXBmZWxdIGVjaG90byBzcGllbGVyIER1IHNpZWhzdCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG5vcmRlbicKW01hZ2llcjpSb25kYV0gSmEuLi4KW01hZ2llcjpTaWx2YW5hXSBXZW5uIGplbWFuZCBpbSBIb3NwaXRhbGJldHQgbGllZ3QgdW5kIHNjaGxlY2h0IGdldHJpZ2dlcnQKW01hZ2llcjpTaWx2YW5hXSBpc3QsIHNvIGRhc3MgZXIgbWl0ICdSb2NodXMgdGVpbHQgRGlyIG1pdDogRHUgYmlzdCB3aWVkZXIKW01hZ2llcjpTaWx2YW5hXSB2b2VsbGlnIGdlc3VuZC4nIHdpZWRlciBhdWZzdGVodCB1bmQgbWV0emVsbiwgaXNzZXIgc2VsYnN0CltNYWdpZXI6U2lsdmFuYV0gc2NodWxkLgpbTWFnaWVyOkVkXSBkZXIgdHJpdHQgYWxsZSwgZGllIGRhZW1vbmVuIHdlcmRlbiBzaWNoIGZyZXVlbi4uLgpbTWFnaWVyOlJvbmRhXSBMYWNoIQpbTWFnaWVyOk11cGZlbF0gaGloaQpbTWFnaWVyOlphcmRveiBncm9laGx0XQpbTWFnaWVyOkpvZl0gRGFzIHNlaCBpY2ggYWxsZXJkaW5ncyBhdWNoIHNvIDopCltNYWdpZXI6TXVwZmVsXSBpc3QgZGFzIHN1cGVyCltNYWdpZXI6U2lsdmFuYV0gRGFzIGdhbnplIGFscyBlY2hvdG8gd2FlcmUgYWxsZXJkaW5ncyB1bmZhaXIuCltNYWdpZXI6TXVwZmVsXSBSb2NodXMgZGVyIE1hZ2llciB2b20gVFVlViAnVHJpZ2dlcnRlc3QnIC4uLgpbTWFnaWVyOlNpbHZhbmFdIEFiZXIgd2llIGlzdCBkYXMgbWl0IG5lbSBOUEMtQ2hhdD8gKnp3aW5rZXIgemFyZG96IHp1KgpbVG9kOl0gRGllIHVuaGVpbWxpY2hlIEhhZW5nZWJydWVja2UgaGF0IGdlcmFkZSBHaWZ0endlcmcgdW1nZWJyYWNodC4KW1RvZDpEaWUgdW5oZWltbGljaGUgSGFlbmdlYnJ1ZWNrZV0gRGFzIEFlY2h6ZW4gZGVyIFBsYW5rZW4gaG9lcnQgc2ljaApbVG9kOkRpZSB1bmhlaW1saWNoZSBIYWVuZ2VicnVlY2tlXSBoYWVtaXNjaCBhbi4KW01hZ2llcjpSb25kYV0gSnViZWwgOikKW01hZ2llcjpaYXJkb3oga2ljaGVydF0KW01hZ2llcjpNdXBmZWxdIGhpaGkKW01hZ2llcjpSb25kYV0gSWNoIGJpbiBudXIgdWViZXIgZGllIEJydWVja2UgZ2Vob3BzdCA6KQpbTWFnaWVyOkVkXSBncmF0cwpbTWFnaWVyOlJvbmRhXSBTU1AgaXN0IGF1Y2ggbmV0dCwgb2Rlcj8KW01hZ2llcjpNdXBmZWxdIHRyb2xsbW9wcy4uLiBnZW5hdQpbTWFnaWVyOlNpbHZhbmFdIFRyb2xsbW9wcwpbTWFnaWVyOlJvbmRhXSBJY2ggd2lsbCBuZW4gU2NyaXB0c3BpZWxlciBmdWVyIGRlbiBNb3BzIQpbTWFnaWVyOk11cGZlbF0gd2llIHdhZXJlIG1pdCBuZXIgcHJvcCBmdWVyIG5lbiBucGMgaW4gZGllIG1hbiBlaW5lbiBuYW1lbgpbTWFnaWVyOk11cGZlbF0gZWludHJhZ2VuIGthbm4uLi4gZGVyIG5wYyB0ZWlsdCBkZW1qZW5pZ2VuIHNwaWVsZXIgZGFubiBpbW1lcgpbTWFnaWVyOk11cGZlbF0gd2FzIG5ldHRlcyBtaXQuLi4KW01hZ2llcjpNdXBmZWxdIGJyYi4KW01hZ2llcjpSb25kYV0gV2VubiBlaW5mYWNoIEFuZHkgaGFldWZpZ2VyIGRhIHdhZXJlIDopCltUb2Q6XSBFaW4gVHJvbGxtb3BzIGhhdCBnZXJhZGUgR2lmdHp3ZXJnIHVtZ2VicmFjaHQuCltNYWdpZXI6TXVwZmVsXSAqZ3JvZWhsKgpbTWFnaWVyOkNyZWF0aXZlXSBodWh1IE11cGZlbGNoZW4hCltNYWdpZXI6TXVwZmVsXSBzdXV1cGVyCltNYWdpZXI6Um9uZGFdIER1bXB0aSBkdW1wdGkgZHUuLi4uCltNYWdpZXI6TXVwZmVsXSB3b2hpbiBhbHMgbmFlY2hzdGVzPwpbTWFnaWVyOlphcmRvel0gV2VsY2ggenVmYWxsLiBEYXMgZGVyIFRyb2xsbW9wcyBnZW5hdSBpbiBkZW0gTW9tZW50IHJlc2V0ZXQKW01hZ2llcjpaYXJkb3pdIHd1cmRlCltNYWdpZXI6Um9uZGFdIEh5ZHJhPwoKLi4uIHVuZCBoaWVyIHZlcmxhc3NlbiB3aXIgdW5zZXJlIE1hZ2llciwgZGllIFRhZyBmdWVyIFRhZyBoYXJ0IGFyYmVpdGVuLApkYW1pdCBkaWUgU3BpZWxlciBkZXMgTUcgaWhyZW4gU3Bhc3MgaGFiZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQ3VjaHVsbGluLCAxNi4gSnVuIDE5OTUsIDIxOjQyOjE4KToKCgpbQWJlbnRldWVyOk1hbml0dV0gaGF0IGRhIHcKW1RvZDpdIEVpbiBQcmllc3RlciBoYXQgZ2VyYWRlIE1hbml0dSB1bWdlYnJhY2h0LgoKCm5pY2h0bWFsIGF1c3JlZGVuIGhhbSBzaWUgaWhuIGdlbGFzc2VuLi4uLiA6KAoKQ3VjaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKFNpbHZhbmEsIDE2LiBKdW4gMTk5NSwgMjI6Mzg6MzEpOgojISBybj1DdWNodWxsaW4gcnQ9ODAzMzMxNzM4CkRhc3MgYXVjaCBhdXNnZXJlY2huZXQgZWluIFByaWVzdGVyIE1hbml0dSBpbiBkaWUgZXdpZ2VuIEphZ2RncnVlbmRlCnNjaGlja2VuIG11c3N0ZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR0lGVFpXRVJHIChDdWNodWxsaW4sIDE3LiBKdW4gMTk5NSwgMDQ6MDE6MjgpOgoKVU5URVJIQUxUVU5HIFBVUi4uLiAjMQoKCltUb2Q6XSBFaW5lIHJpZXNpZ2UgU2NobGFuZ2UgaGF0IGdlcmFkZSBHaWZ0endlcmcgdW1nZWJyYWNodC4KW0JlaWxlaWQ6QXNtb2RpbmFdIG5hIGVuZGxpY2gKW0FsbGdlbWVpbjpDdWNodWxsaW5dIEZlaW4KW0FsbGdlbWVpbjpDdWNodWxsaW5dIEFlaC4KW0FsbGdlbWVpbjpDdWNodWxsaW5dIFNvbGxlbiB3aXIgZGVuIFRvZC1LYW5hbCB2b2xtdWVsbGVuPwpbQWxsZ2VtZWluOkN1Y2h1bGxpbl0gRmluc3Rlcm5pcwpHaWZ0endlcmcgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpbVG9kOl0gR0lGVFpXRVJHIFZFUlNVQ0hURSwgTUlSIFpVIEVOVEtPTU1FTiAtIEpFVFpUIEhBQkUgSUNIIFdJRURFUgpbVG9kOl0gRVhUUkEtQVJCRUlUIE1JVCBJSE0gLi4uCkdpZnR6d2VyZyBpc3QgZ2VyYWRlIGlucyBTcGllbCBnZWtvbW1lbi4KW0FsbGdlbWVpbjpBc21vZGluYV0gd29taXQgPwpbQWxsZ2VtZWluOkN1Y2h1bGxpbl0gRmluc3Rlcm5pcwpHaWZ0endlcmcgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpbVG9kOl0gR0lGVFpXRVJHIFZFUlNVQ0hURSwgTUlSIFpVIEVOVEtPTU1FTiAtIEpFVFpUIEhBQkUgSUNIIFdJRURFUgpbVG9kOl0gRVhUUkEtQVJCRUlUIE1JVCBJSE0gLi4uCkdpZnR6d2VyZyBpc3QgZ2VyYWRlIGlucyBTcGllbCBnZWtvbW1lbi4KW0FsbGdlbWVpbjpDdWNodWxsaW5dIFNvIDopCltBbGxnZW1laW46QXNtb2RpbmFdIEZpbnN0ZXJuaXMgPwpHaWZ0endlcmcgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpbVG9kOl0gR0lGVFpXRVJHIFZFUlNVQ0hURSwgTUlSIFpVIEVOVEtPTU1FTiAtIEpFVFpUIEhBQkUgSUNIIFdJRURFUgpbVG9kOl0gRVhUUkEtQVJCRUlUIE1JVCBJSE0gLi4uCkdpZnR6d2VyZyBpc3QgZ2VyYWRlIGlucyBTcGllbCBnZWtvbW1lbi4KW0FsbGdlbWVpbjpDdWNodWxsaW5dIEphLCBGaW5zdGVybmlzLgpHaWZ0endlcmcgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpbVG9kOl0gR0lGVFpXRVJHIFZFUlNVQ0hURSwgTUlSIFpVIEVOVEtPTU1FTiAtIEpFVFpUIEhBQkUgSUNIIFdJRURFUgpbVG9kOl0gRVhUUkEtQVJCRUlUIE1JVCBJSE0gLi4uCkdpZnR6d2VyZyBpc3QgZ2VyYWRlIGlucyBTcGllbCBnZWtvbW1lbi4KR2lmdHp3ZXJnIGhhdCBnZXJhZGUgZGFzIFNwaWVsIHZlcmxhc3Nlbi4KW1RvZDpdIEdJRlRaV0VSRyBWRVJTVUNIVEUsIE1JUiBaVSBFTlRLT01NRU4gLSBKRVRaVCBIQUJFIElDSCBXSUVERVIKW1RvZDpdIEVYVFJBLUFSQkVJVCBNSVQgSUhNIC4uLgpHaWZ0endlcmcgaXN0IGdlcmFkZSBpbnMgU3BpZWwgZ2Vrb21tZW4uCkdpZnR6d2VyZyBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCltUb2Q6XSBHSUZUWldFUkcgVkVSU1VDSFRFLCBNSVIgWlUgRU5US09NTUVOIC0gSkVUWlQgSEFCRSBJQ0ggV0lFREVSCltUb2Q6XSBFWFRSQS1BUkJFSVQgTUlUIElITSAuLi4KR2lmdHp3ZXJnIGlzdCBnZXJhZGUgaW5zIFNwaWVsIGdla29tbWVuLgpHaWZ0endlcmcgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpbVG9kOl0gR0lGVFpXRVJHIFZFUlNVQ0hURSwgTUlSIFpVIEVOVEtPTU1FTiAtIEpFVFpUIEhBQkUgSUNIIFdJRURFUgpbVG9kOl0gRVhUUkEtQVJCRUlUIE1JVCBJSE0gLi4uCkdpZnR6d2VyZyBpc3QgZ2VyYWRlIGlucyBTcGllbCBnZWtvbW1lbi4KW0FsbGdlbWVpbjpSb25kYV0gTnUgaG9lciBzY2hvbiBhdWYgbWl0IGRlciBGaW5zdGVybmlzLgpHaWZ0endlcmcgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpbVG9kOl0gR0lGVFpXRVJHIFZFUlNVQ0hURSwgTUlSIFpVIEVOVEtPTU1FTiAtIEpFVFpUIEhBQkUgSUNIIFdJRURFUgpbVG9kOl0gRVhUUkEtQVJCRUlUIE1JVCBJSE0gLi4uCkdpZnR6d2VyZyBpc3QgZ2VyYWRlIGlucyBTcGllbCBnZWtvbW1lbi4KW0FsbGdlbWVpbjpBc21vZGlzXSBXaXJrbGljaCwgRmluc3Rlcm5pcyA/CkdpZnR6d2VyZyBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCltUb2Q6XSBHSUZUWldFUkcgVkVSU1VDSFRFLCBNSVIgWlUgRU5US09NTUVOIC0gSkVUWlQgSEFCRSBJQ0ggV0lFREVSCltUb2Q6XSBFWFRSQS1BUkJFSVQgTUlUIElITSAuLi4KR2lmdHp3ZXJnIGlzdCBnZXJhZGUgaW5zIFNwaWVsIGdla29tbWVuLgpbQWxsZ2VtZWluOkFzbW9kaXNdIFdhcyBzb2xsIGRlbm4gRmluc3Rlcm5pcyA/CkdpZnR6d2VyZyBoYXQgZ2VyYWRlIGRhcyBTcGllbCB2ZXJsYXNzZW4uCltUb2Q6XSBHSUZUWldFUkcgVkVSU1VDSFRFLCBNSVIgWlUgRU5US09NTUVOIC0gSkVUWlQgSEFCRSBJQ0ggV0lFREVSCltUb2Q6XSBFWFRSQS1BUkJFSVQgTUlUIElITSAuLi4KR2lmdHp3ZXJnIGlzdCBnZXJhZGUgaW5zIFNwaWVsIGdla29tbWVuLgpbQWxsZ2VtZWluOlJvbmRhXSBFciBpc3Qgc2Nob24gMjEuLi4gZXR3YXMgYWx0IGZ1ZXIgc29sY2hlbiBCbG9lZHNpbm4gbWl0IGRlcgpbQWxsZ2VtZWluOlJvbmRhXSBGaW5zdGVybmlzIQpHaWZ0endlcmcgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpbQWxsZ2VtZWluOkFzbW9kaXNdIG9jaCwgeGRvcyBzaW5kIGRvY2ggbGFuZ3dlaWxpZwpbVG9kOl0gR0lGVFpXRVJHIFZFUlNVQ0hURSwgTUlSIFpVIEVOVEtPTU1FTiAtIEpFVFpUIEhBQkUgSUNIIFdJRURFUgpbVG9kOl0gRVhUUkEtQVJCRUlUIE1JVCBJSE0gLi4uCkdpZnR6d2VyZyBpc3QgZ2VyYWRlIGlucyBTcGllbCBnZWtvbW1lbi4KLi4uLgpJY2gga2FubiBuaWNodCBzYWdlbiwgd2llbGFuZ2UgZGFzIG5vY2ggd2VpdGVyZ2luZy4uLiBKZWRlbmZhbGxzIHNjaGllbiBlcwpzbywgZGFzcyBhdXNnZXJlY2huZXQgZGFubiwgd2VubiBtYWwgYWxsZSBydWhpZyB3YXJlbiwgaW4gZGVyIFRvZHNlcXVlbnogZWluCmdhbnogdW5nZXNjaGlja3RlcyBXb3J0IHZvcmthbS4gOy0pCgpDdWNoICpsYWNod2VnKiAqZ3JvZWhsKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IG5ldWxpY2ggaW4gZGVyIEJlcmdyZXR0dW5nc3N0YXRpb24gKFNudWdnbGUsIDE3LiBKdW4gMTk5NSwgMTA6MDg6NDYpOgojISBybj1Sb2FkcnVubmVyIHJ0PTgwMzI5Mzc4NQpIbW0uIEljaCBoYWIgZGllIFN0ZWlubW9uc3RlciBvaG5lIFJldHR1bmdzc3RhdGlvbiBnZWtpbGx0LgpBYmVyIGljaCBiaW4gamEgYXVjaCBlaW4gdHJpbmtmZXN0ZXIgWndlcmcgOi0pCgp0cmlua2Zlc3RlIEdydWVzc2UKU251Z2dsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbmV1bGljaCBpbiBkZXIgQmVyZ3JldHR1bmdzc3RhdGlvbiAoVG9zcywgMTcuIEp1biAxOTk1LCAxMzoyNTo1MCk6ClRqYSwgRnl0CmFsc28sIGRhc3MgZHUgbmljaHQgcGVyIHNjcmlwdCBzcGllbHN0LCBpc3QgbWlyIG5ldS4gR2VydWVjaHRld2Vpc2UgaGFzdCBkdQpkaWUgbGV0enRlbiAzMCBPbmxpbmUtVGFnZSBudXIgcGVyIFNjcmlwdCBnZW1ldHplbHQsIHVuZCB2b24gZGVuIDMwIE1pbyBFUHMKZGllIER1IGhhc3Qgc2luZCBrZWluZSA1MDAgcGVyIEhhbmQgZ2VtYWNodC4KQWJlciBkYXZvbiBtYWwgYWJnZXNlaGVuLgpFcyBqYW1tZXJuIGFsbGUgZGFydWViZXIsIGRhc3MgZGllIHNjcmlwdHNwaWVsZXIgaW0gbW9tZW50IGRpZSBTdGltbXVuZyBpbQpNdWQga2FwdXR0bWFjaGVuIC0gZmluZGUgaWNoIHVlYmVyaWdlbnMgYXVjaC4gVW5kIHdhcyBzb2xsdGUgbWFuIGRhZ2VnZW4gdHVuID8KRXMgaXN0IHNvIGVpbmZhY2ggLSBpY2ggaGFiIGtlaW5lIEFobnVuZywgd2FzIER1IFJvY2h1cyBnZW1haWx0IGhhc3QsIGFiZXIKd2Fyc2NoZWlubGljaCB3YXJzIGRlcnNlbGJlIGF1c2dlbWFjaHRlIFVuc2lubiwgZnVlciBkZW4gRGVpbmUgc2NyaXB0cyBiZWthbm50CnNpbmQgKDQ4IFRvZGUpLiBEYWJlaSBpc3QgZXMgc28gZWluZmFjaDogV2VubiBtYW4gZGllIEJlcmdzdGF0aW9uIG51ciB2b24gZGVyClBhbmRvcmEtcXVlc3QgenVnYWVuZ2xpY2ggbWFjaHQsIGlzdCBlaW4gbWV0emVsbiBwZXIgc2NyaXB0IGZhc3QKYXVzZ2VzY2hsb3NzZW4sCndlaWwgbWFuIG1pdCB0YW5rZW4gaW4gS25laXBlbiB2aWVsIHp1IHNjaG5lbGwga251ZXBwZWxkaWNrZSBpc3QgdW5kIGxhbmdlCndhcnRlbiBtdXNzLCBiaXMgbWFuIHdpZWRlciB0YW5rZW4ga2Fubi4KVW5kIHdlbm4gZGFubiBlaW4gcGFhciBpcnJlIHdpZSBkdSBpbW1lciBub2NoIGluIGRlciAgQmVyZ3N0YXRpb24gdGFua2VuCndvbGxlbiwga29lbm5lbiBzaWUgZ2VybmUgIi9nbyByc2lpIiBvZGVyIHhjYWxsIC9wbGF5ZXJzL2Z5dCBTZXRfUHJvcF9QX0NyYXp5Cj0gMSBlaW5nZWJlbiwgZGVubiBkYXMgZGF1ZXJ0IHNvIGxhbmdlLCBkYXNzIHNpY2ggZGFzIG5pY2h0IGxvaG50LgoKQnR3LiBiZWhpbmRlcnQgUmFpYmEgZGEgbmllbWFuZGVuLCB3ZW5uIHNpZSBpbSBCZXR0IGxpZWd0LCBkZW5uIGRpZSBTcGllbGVyLApkaWUgc2ljaCBpbSBxdWVzdCB2ZXJsZXR6ZW4sIHdlcmRlbiBhdXRvbWF0c2NoIGluIGRpZSBCZXR0ZW4gZ2VsZWd0LCBkYSBrYW5uCm1hbiBzaWNoIG5pY2h0IGdlZ2VuIHdlaHJlbi4rCgpIYWV0dGVzdCBEdSBlaW4gYmlzY2hlbiBBaG51bmcsIHdhZXJlIGRpciBkYXMgbmljaHQgZW50Z2FuZ2VuLiBBYmVyIGRhcyBpc3QKamEgYmVpIGRpciBhdWNoIG5peCBuZXVlcy4KClJ5bmUuCkZpbmRldCBlcyBTcGl0emUsIHdlbm4gTGV1dGUgaW5zIE11ZCBnZWhlbiwgb2J3b2hsIHNpZSBuaWNodCBNdWRkZW4gd29sbGVuLAp3ZWlsIGVzIG9obmUgU2NyaXB0IHp1IGFuc3RyZW5nZW5kIGlzdC4KClAuUy4gUm9hZHJ1bm5lcjogQnpnbC4gU3RlaW5tb25zdGVyLWtpbGxlbjogZGllIEtuZWlwZSBpbSBOZWFuZGVydGFsIGlzdApuYWVoZXIgYW4gZGVuIFN0ZWlubW9uc3Rlcm4gYWxzIGRpZSBCZXJnd2FjaHQuIFVuZCBkYSBnaWJ0cyBsZWdnYSBsZWdnYSBTYWNoZW4KOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbmV1bGljaCBpbiBkZXIgQmVyZ3JldHR1bmdzc3RhdGlvbiAoSWR1ciwgMTcuIEp1biAxOTk1LCAxNzowNjo1NSk6CiMhIHJuPUphZiBydD04MDMyNzAzMzEKSG0sIGljaCB3aWxsIGVpZ2VudGxpY2ggc2Nob24gc2VpdCBXb2NoZW4gKGh1ZXN0bCkgbWFsIHdhcyB6dSBkZW4gU2NyaXB0cwpzYWdlbjoKQWxzbywgUm9jaHVzIGhhdCBzaWNoIGJlaSBzZWluZXIgR2lsZGUgamEgd2lya2xpY2ggTXVlaGUgZ2VnZWJlbiwgYWJlcgpzY2hlaW5iYXIgbmljaHQgdWViZXJsZWd0LCBkYXNzIGRhcyBiZWkgZGVuIGRlcnplaXRpZ2VuIE1vZWdsaWNoa2VpdGVuIHp1IGRlbgpLYXJhdGUtU2NpcHRfTGVpY2hlbiBmdWVocnQuCk1pY2ggbmVydnQgZGFzIHppZW1saWNoLCB3ZWlsIGltIEdydW5kZSBhYmVuZHMgdW5kIGZydWVoIG1vcmdlbnMgdm9uIDMwCkxldXRlbiB2aWVsbGVpY2h0IGdlcmFkZSBtYWwgNSB3aXJrbGljaCBkYXNpbmQgdW5kIGRlciBSZXN0IG51ciB3aWUgYmVrbG9wcHQKcnVtcmVubnQgdW5kIGlyZ2VuZHdhcyBtYWNodCwgb2huZSBkYWJlaSBkYXJhdWYgenUgYWNodGVuLCBvYiB2aWVsbGVjaWh0Ck5pY2h0LUthcmF0ZWtlciBhdWNoIGdlcmFkZSBhbiBkZXJzZWxiZW4gU2FjaGUgZHJhbnNpbmQuCkljaCBmcmFnIG1pY2ggYXVjaCwgd2FzIGRpZSBQdW5rdGVnZXdpbm5lcmVpIHVuZCBkYXMgTGVybmVuIGRlcgpLYXJhdGVzcHJ1ZWNoZSBwZXIgU2NyaXB0IHVlYmVyaGF1cHQgc29sbC4gV2VubiBlcyBudXIgZGFydW0gZ2VodCwgd2VyIGRhcwpiZXN0ZSBTY3JlZW5wcm9ncmFtbSBoYXQgdW5kIGRhbm4gc2VpbmVuIENoYXJha3RlciB0b3QgYW0gbGFlbmdzdGVuIHJ1bXJlbm5lbgpsYXNzZW4ga2Fubiwga2FubiBtYW4gZG9jaCBkZW4gTGV1dGVuIGVpbmdmYWNoIGFsbGUgU3BydWVjaGUgYXVmIDEwMCUgc2V0emVuCnVuZCBqZWRlbSAxMDAgTWlvLiBFUCBnZWJlbiAtZGFubiBuZXJ2ZW4gc2llIHdlbmlnc3RlbnMgZGllIGFuZGVyZW4gbmljaHQKbWVoci4KTWVpbmUgTWVpbnVuZyBkYXp1OgpTY3JpcHRzcGllbGVuIGlzdCB3aWUgU2VsYnN0YmVmcmllZGlndW5nLi4gLW11c3MgendhciBuaWNodCBzY2hsZWNodCBzZWluLAphYmVyIGhhdCBoaWVyIHZpZWxsZWljaHQgbmljaHQgYWxsenV2aWVsIHp1IHN1Y2hlbi4KUnVkaSwgaGV1dGUgbWFsIHJ1ZWNrd2FlcnRzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBuZXVsaWNoIGluIGRlciBCZXJncmV0dHVuZ3NzdGF0aW9uIChKYWYsIDE4LiBKdW4gMTk5NSwgMTQ6NTY6MzYpOgojISBybj1QYXJhY2Vsc3VzIHJ0PTgwMzMwODUwOQpobSwgU251Z2dsZSwgZGFzIGdlamFtbWVyZSBoYXQgd2FzIGdlYnJhY2h0LCBudXIgbml4IGd1dGVzIDopCgpIbS4uLiBzY2hhZGUgaXJnZW5kd2llLCBzaWVodCBzbyBhdXMgYWxzIG9iIGljaCBldWNoIHZpZWwgU3Bhc3MKYXVmIGRlciBQYXJ0eSB3dWVuc2NoZW4gbXVlc3N0ZS4KCkZ5dC4KClBTOiBBYmVyIGljaCBmaW5kZSBlcyBpbSBhbGxnZW1laW5lbiBnZXNjaGlja3RlciwgYW4gZWluZW0gZWlubWFsCiAgICBmZXN0Z2VsZWd0ZW4gVGVybWluIGZlc3R6dWhhbHRlbiwgZGFzIGlzdCBhbHNvIG5pY2h0IGFscyBLcml0aWsKICAgIGFuIGRlbiAnTmljaHR2ZXJzY2hpZWJlcm4nIHp1IGludGVycHJldGllcmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogbmV1bGljaCBpbiBkZXIgQmVyZ3JldHR1bmdzc3RhdGlvbiAoSmFmLCAxOC4gSnVuIDE5OTUsIDE1OjEzOjAxKToKIyEgcm49VG9zcyBydD04MDMzODgzNTAKCkFsc28gUnluZS4uLiB3ZW5uIER1IHNjaG9uIHp3aXNjaGVuIFJhaWJhIHVuZCBEaXIgZWluZW4gVW50ZXJzY2hpZWQKbWFjaHN0LCBzb2xsdGVzdCBhdWNoIG1pciB6dWdlc3RlaGVuLCBtaWNoIHZvbiBGeXQgenUgZGlzdGFuemllcmVuLgpEZXIgQXJ0aWtlbCwgYXVmIGRlbiBEdSBEaWNoIGJlemllaHN0LCB3YXIgbWVpbmVyIE1laW51bmcgbmFjaCBtaXQKSmFmIHVudGVyc2NocmllYmVuIChzb2Zlcm4gaWNoIG5pY2h0IHVudGVyIGt1cnp6ZWl0aWdlbSBQZXJzb2VubGljaC0Ka2VpdHN2ZXJsdXN0IGdlbGl0dGVuIGhhYiksIHVuZCBJQ0ggaGFiZSBub2NoIG5pZSBtaXQgU2NyaXB0IGdla2lsbHQuCgpiZXQgYmFieQpIbSwgdm9uIGRlbiAzMCBNaW8gRXAgc2NoZWluZW4gdGF0c2FlY2hsaWNoIGRpZSBncm9lc3NlcmUgSGFlbGZ0ZQpkdXJjaCBkaWUgd2FlaHJlbmQgZGVzIEthcmF0ZXRyYWluaW5ncyBhbmZhbGxlbmRlbiB0b3RlbiBNb25zdGVyCmVudHN0YW5kZW4genUgc2Vpbi4gVmllbGxlaWNodCBtdXNzIGVzIG5vY2htYWwgZ2VzYWd0IHdlcmRlbjoKRnl0IHVlYnQgcHJpbWFlciBLYXJhdGUsIHdlbm4gZXIga2lsbGVuIHd1ZXJkZSwga29lbm50ZSBlciBtaXQKJ0FuZ3JpZmYgbWl0IHNvdG8tc2h1dG8tdWNoaScgdW5kIGdlZWlnbmV0ZXIgTW9uc3RlcndhaGwgdW5nZWZhZWhyCjIgMS8yIG1hbCBzb3ZpZWwgZXAgaW4gZGVyIHNlbGJlbiBaZWl0IG1hY2hlbi4uLgoKSmFmLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IG5ldWxpY2ggaW4gZGVyIEJlcmdyZXR0dW5nc3N0YXRpb24gKFRvc3MsIDE4LiBKdW4gMTk5NSwgMTc6MTg6MjUpOgojISBybj1KYWYgcnQ9ODAzNDgxMTgxCkpvLCBqZXR6dCBpc3QgYXVjaCBlbmRsaWNoIGtsYXIgd2FydW0gRHUgZGVuIGdhbnplbiBLcmFtIHZvbiBhbmZhbmcgYW4gaW4KU2NobWFycm4gZ2VzY2hyaWViZW4gaGFzdCAtIGRhIGdlaG9lcnQgZGFzIG5hZW1saWNoIGVpbmRldXRpZyBoaW4sIHdhcyBEdSBoaWVyCnNvIGFsbGVzIHNjaHJlaWJzdC4KQWxzbywgdW0gRGVpbmVyIGdlc3BhbHRlbmVuIFBlcnNvZW5saWNoa2VpdCBnZXJlY2h0IHp1IHdlcmRlbiwgZGEgbXVzcyBpY2gKbWljaCBudW4gd2lya2xpY2gga29ycmlnaWVyZW4sIEphZiBoYXQgbmljaHQgcGVyIHNjcmlwdCBnZW1ldHplbHQsIHNvbmRlcm4gbnVyCkZ5dCAuCkFuc29uc3RlbiBhYmVyIHd1ZXJkZSBpY2ggbWFsIHNhZ2VuLCAgd2FzIEJhbGRvY2ggaW4gQXJ0aWtlbCAzMiBzY2hyZWlidCBpc3QKZGllIGVpbnppZyBzaW5udm9sbGUgQXJ0LCBEZWluZW4gYXVzZ2VtYWNodGVuIEh1bWJ1ZyB6dSBrb21tZW50aWVyZW4uCgpSeW5lIC0gUmFpYmEgLSB1c3cuCmljaCB0cmVubiBkYSBuaXguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBuZXVsaWNoIGluIGRlciBCZXJncmV0dHVuZ3NzdGF0aW9uIChKYWYsIDE4LiBKdW4gMTk5NSwgMTg6NTU6MDkpOgojISBybj1Ub3NzIHJ0PTgwMzQ4ODcwNQoKSG0sIGRvY2gsIGljaCBkZW5rIHNjaG9uLCBkYXNzIGljaCBGeXQgdW5kIG1pY2ggYXVzZWluYW5kZXJoYWx0ZW4ga2Fubi4KVW5kIG1laW4gU3BpZWxlciBrYW5uIGRhcyBnbGF1YiBpY2ggYXVjaCBub2NoIHZvbSBSTCB0cmVubmVuLi4uIG5hamEsIGRhcwp3ZWlzcyBpY2ggbmljaHQgc28gZ2VuYXUsIHNvIHZpZWwga3JpZWd0IG1hbiBqYSBrbGVpbmVyIGR1bW1lcgpad2VpdGNoYXJha3RlciB2b24gZGVyIGdyb3NzZW4gUG9saXRpayBuaWNodCBtaXQgOikgIEFiZXIgZWlucyBpc3Qga2xhcjoKSWNoIGhvbCBGeXQgbmljaHQgYXVzIFNpdHVhdGlvbmVuIHJhdXMsIGluIGRpZSBlciBzaWNoIGR1cmNoIHNlaW5lCmFsYmVybmVuIFNjcmlwdHMgZ2VicmFjaHQgaGF0LCBzb2xsIGVyIHNpY2ggZG9jaCAnbiBEcml0dGllIGhvbGVuICpncmlucyouCkF1c3NlcmRlbSBpc3QgZXIgZ3Jvc3MgZ2VudWcsIHNpY2ggZGEgc2VsYnN0IGRydW16dWt1ZW1tZXJuLi4uCkRhcyBnYW56ZSBzY2hsaWVzc3QgZWluZSBnZXdpc3NlIExveWFsaXRhZXQgbWVpbmVyc2VpdHMgbmF0dWVybGljaCBuaWNodAphdXMuLi4gaWNoIGxhc3MgaWhuIGltbWVybWFsIFplaXR1bmcgbGVzZW4gKmdyaW5zKi4uLiB1bmQKYXVzc2VyZGVtIGhhdCBlciBtaXIgYXVjaCBzY2hvbiBnZWhvbGZlbi4gU28uCgpKYWYuCgpQUzogTmF0dWVybGljaCBoYWIgaWNoIGRhcyB2b24gQW5mYW5nIGFuIGhpZXIgbmFjaCBTY2htYXJybiBnZXBvc3RlZCwKICAgIHdlaWwgaWNoIGRpZSBnZXNhbXRlIEdlc2NoaWNodGUgZWluZmFjaCBuaWNodCBzbyBlcm5zdG5laG1lbiBrYW5uLAogICAgenVtaW5kZXN0IG5pY2h0IHNvIHdpZSBSYWliYS9Ub3NzL1J5bmUvLi4uIG5hamEsIHVuZCBuYXR1ZXJsaWNoCiAgICBhdWNoIG5pY2h0IHNvIGVybnN0IHdpZSBtZWluIEdyb3NzZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IG5vY2htYWwgQVBzIChIYWRyYSwgMTkuIEp1biAxOTk1LCAwMjoyODo1NCk6CiMhIHJuPVRvc3MgcnQ9ODAzNTE3NzczCltWZXJsZWd0IHZvbiBzZWhlci5lbnR3aWNrbHVuZywgSGFkcmEsIDE5LiBKdW4gMTk5NSwgMDI6Mjg6MzZdOgpoaSByeW5lLAoKb2sgd2VubiBkdSBkYXMgbGV0emUgd29ydCB3aWxsc3QsIGRhbm4gc29sbHN0IGR1IGVzIGF1Y2ggaGFiZW4gOikKCmhhZHJhIGRlbmt0IC4gbyBPICh1cHBzLCBqZXR6dCBoYXR0ZSBpY2ggamEgZGFzIGxldHplIHdvcnQpCgpvayBhYiBuYWNoIHNjaG1hcnJuIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKamEsIGVzIGxhZ2d0LiBqYSwgaW4gYm9ubiBsYWdndHMgbmljaHQgKEJlbGxpY3VzLCAxOS4gSnVuIDE5OTUsIDEzOjIxOjIxKToKZWJlbiBpbSBzdHJhbmRsYWRlbiBpbiBQVjoKQ2FyYWRocmFzIGtvbW10Lgp3dXNjaGVsIGNhcmFkaHJhcwpDYXJhZGhyYXMgdmVya2F1ZnQgZWluIEthbXBmc2Nod2VydC4KQ2FyYWRocmFzIHZlcmthdWZ0IGVpbmVuIExlZGVyaGVsbS4KQ2FyYWRocmFzIHZlcmthdWZ0IGVpbmVuIExlZGVyaGVsbS4KQ2FyYWRocmFzIHZlcmthdWZ0IGVpbiBLZXR0ZW5oZW1kLgpDYXJhZGhyYXMgdmVya2F1ZnQgZWluZW4gTGVkZXJzY2hpbGQuCkNhcmFkaHJhcyB2ZXJrYXVmdCBlaW5lbiBTYWViZWwuCkNhcmFkaHJhcyB2ZXJrYXVmdCBlaW4gS2V0dGVuaGVtZC4KQ2FyYWRocmFzIHppZWh0IGVpbiBLZXR0ZW5oZW1kIGF1cy4KQ2FyYWRocmFzIHZlcmthdWZ0IGVpbiBLZXR0ZW5oZW1kLgpbQWxsZ2VtZWluOkFsbXVuZGldIHN1Y2hlIEJTUwpDYXJhZGhyYXMgemllaHQgZWluZW4gTWV0YWxscGFuemVyIGFuLgpDYXJhZGhyYXMgdmVya2F1ZnQgZWluIEthbXBmc2Nod2VydC4KQ2FyYWRocmFzIHZlcmthdWZ0IGVpbmVuIExlZGVyaGVsbS4KW01vZXJkZXI6R2Vpc3QgZWluZXMgR29ibGluc10gQUxBQUFBQUFSTSEgR3VtcHkgSVNUIEFVU0dFQlJPQ0hFTiEKQ2FyYWRocmFzIHByb3BoZXplaXQgZXIgZ2VodCBhdXMgZGVtIExhZGVuLgpXZW4gd2lsbHN0IER1IGRlbm4gd3VzY2hlbG4/CgoKCgoKICAgICpzZXVmeioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5vY2h3YXMuIChCZWxsaWN1cywgMTkuIEp1biAxOTk1LCAxMzozMzo0OCk6ClZydW1mb25kZWwgc2FiYmVydCBoZXJlaW4uClZydW1mb25kZWwgc2llaHQgYmV0cnVua2VuIGF1cy4KVnJ1bWZvbmRlbCBzYWJiZXJ0IGF1cyBkZW0gTGFkZW4uCgo+ZmkgdnJ1bWZvbmRlbApWcnVtZm9uZGVsIGlzdCBlaW5nZWxvZ2d0LAp1bmQgendhciB2b246IE11ZW5zdGVyLgpWb2xsZXIgTmFtZTogVnJ1bWZvbmRlbCB0cmlua3QgZWluIEd1aW5uZXNzClJhc3NlOiBad2VyZywgICAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAxN2QgMjI6MzQ6MjQgICBTcGllbGVybGV2ZWw6IDIwLCBTZWhlcgpTZWl0IGRlbSAzMC4xMS4nOTQgYmVyZWl0cyAxMSBtYWwgZ2VzdG9yYmVuCgogIFByb3N0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZyYWdlbiB1ZWJlciBGcmFnZW4uLi4gKFllbmRpLCAxOS4gSnVuIDE5OTUsIDE0OjQ1OjQyKToKIyEgcm49U2NocnVtcGZpIHJ0PTgwMzI0MjgzNgoKRmVpbiwgZGFubiBtYWNoIG1hbCBBbnR3b3J0ZW4hCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBuZXVsaWNoIGluIGRlciBCZXJncmV0dHVuZ3NzdGF0aW9uIChDYXR3ZWF6bGUsIDE5LiBKdW4gMTk5NSwgMTg6NDI6MTgpOgojISBybj1JZHVyIHJ0PTgwMzQwMTYxNQpIaWhpIDopCkFsc28gZGVuIFZlcmdsZWljaCBmaW5kIGljaCBLbGFzc2UgOikuIFNjaGxpZXNzbGljaCBoYXQgbWFuIG1pdCBTY3JpcHQKYWxsZSBIYWVuZGUgZnJlaSA6LSkKWW91cnMgdHJ1bHksCiAgICAgICAgIENhdHdlYXpsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbmV1bGljaCBpbiBkZXIgQmVyZ3JldHR1bmdzc3RhdGlvbiAoSmFmLCAxOS4gSnVuIDE5OTUsIDE5OjA2OjIwKToKIyEgcm49Q2F0d2VhemxlIHJ0PTgwMzU4MDEzOAoKSG0sIENhdCwgYWxzIEthcmF0ZWthIGF1Y2ggICpncmlucyogIHBhc3N0IGRvY2ggZ3V0IHp1c2FtbWVuLCBvZGVyPwoKSmFmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGcmFnZW4gdWViZXIgRnJhZ2VuLi4uIChTY2hydW1wZmksIDIwLiBKdW4gMTk5NSwgMDA6NTc6NDkpOgojISBybj1ZZW5kaSBydD04MDM1NjU5NDIKU2Nob24gcGFzc2llcnQhIDstKQpTY2hydW1wZmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYXVmIGVpbmVyIEZldGUuLi4gKEFyZGFuYSwgMjAuIEp1biAxOTk1LCAwMjowMToxMCk6Ck51ciBlaW4gU2F0ei4uLgpEZXIgTXVlbGxzY2hsdWNrZXIgc2llaHQgYmV0cnVua2VuIGF1cy4KCkxpdmUgbG9uZyBhbmQgcHJvc3BlcgogICAgICAgICAgICAgICAgICAgICAgICBlaW4gZ3JpbnNlbmRlciBBcmRhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdpZnR6d2VyZyAoTGksIDIwLiBKdW4gMTk5NSwgMDk6NDg6MDIpOgpBbHNvIGljaCB3ZWlzcyBuaWNodCB3YXMgaWhyIGhhYnQsIGljaCBmaW5kZSBnaWZ0endlcmcgZ2FueiB3aXR6aWc6ClN0YW5kIGljaCBkb2NoIGhldXRlIGJlaSBpaG0gdW5kIHByb2JpZXJ0ZSBhdXMsIG9iIGVyIGF1Y2ggZGllIHNlZWxlCmdldHJpZ2dlcnQgaGF0dGUuIEVyIEhBVCE6Cgo+IGxpZWJlIGdpZnR6d2VyZwpEdSBzY2hsaWVzc3QgZGllIEF1Z2VuLCBzY2htaWVnc3QgRGljaCBlbmcgYW4gR2lmdHp3ZXJnIHVuZCBnaWJzdAppaG0gZWluZW4gemFlcnRsaWNoZW4gdW5kIGxlaWRlbnNjaGFmdGxpY2hlbiBLdXNzLgpVbSBEaWNoIGhlcnVtIHZlcnNpbmt0IGRpZSBXZWx0IHVuZCBEdSBnbGF1YnN0LCBhdWYgV29sa2VuIHp1IHNjaHdlYmVuLgo+IEdpZnR6d2VyZyBzYWd0OiBORSBORSBkdSBkYXMgd2lsbCBpY2ggbmljaC4gRGVpbmUgQWJzaWNodGVuIGtlbm4gaWNoISEKR2lmdHp3ZXJnIGxhZXNzdCAxNDQ2IE11ZW56ZW4gZmFsbGVuLgpHaWZ0endlcmcgZ3JpbnN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGdpZnR6d2VyZyAoSmFmLCAyMC4gSnVuIDE5OTUsIDEzOjE4OjQ2KToKIyEgcm49TGkgcnQ9ODAzNjM0NDgyCgpIbSwgZWlnZW50bGljaCBoYWIgaWNoIG5peCBnZWdlbiBHaWZ0endlcmcuIE1hZ2dpcyBkdWVyZmVuIG1pdAppaHJlbiBOUENzIGF1Y2ggemllbWxpY2hlbiBNaXN0IGFuc3RlbGxlbiwgaWNoIGRlbmsgZGEgbnVyIGFuCkV1c2ViaXVzLi4uIEdpZnR6d2VyZyBzb2xsIGxlYmVuLCBhdWNoIHdlbm4gZXIgZWluIHJlaW5lcyBTY3JpcHQKaXN0LgoKSmFmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBnaWZ0endlcmcgKEFzbW9kaXMsIDIwLiBKdW4gMTk5NSwgMTM6MzU6NDMpOgojISBybj1KYWYgcnQ9ODAzNjQ3MTI2ClN0aW1tdCwgd2FyIGltbWVyIGdhbnogbHVzdGlnLCBpaG4gdWViZXIgZGllIEJydWVja2UgYmVpIGRlciBTU1Agb2RlciB6dSBkZW4KU3RlaW5iZWlzc2VybgpvZGVyIGFuZGVyZW4gYWdncmVzc2l2ZW4gTW9uc3Rlcm4genUgZnVlaHJlbiA6KQoKICAgICAgICAgICAgICAgICAgICAgICBDaWFvLCBBc21vZGlzCiYmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpob3BwbGEsIHpvbWJpZXMtb3R0aWZhbnRlbiEgKEdhcmZpZWxkLCAyMS4gSnVuIDE5OTUsIDIwOjQ5OjUwKToKCk5ldWxpY2ggaW4gZGVyIFBvc3Q6CkljaCBrb21tIGdyYWRlIGF1cyBkZXIgU2NocmVpYmthYmluZSwgZGE6CgpIYXVwdHBvc3RhbXQuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBzdWVkZW4uCkd1ZXJnZW4gZGVyIEthZW1wZmVyLgpPdHRpZmFudCBkZXIgV2FsZGxhZXVmZXIgKG5ldHp0b3QpLgpNdXBmZWwgaXN0IG51ciBlaW4gZ2FueiBrbGVpbmVyIE1hZ2llci4KVGFrYW4gZGVyIFdhbGRsYWV1ZmVyLgpKb2RlbCBkZXIgV2FsZGxhZXVmZXIuCkVpbiBQYWtldHNjaGFsdGVyLgpFaW5lIFNjaHJlaWJrYWJpbmUuCkVpbmUgU2NocmVpYmthYmluZS4KICBPdHRpZmFudCBncmVpZnQgRGljaCBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIENob2t1LXp1a2kgYW4uCj4gICBPdHRpZmFudCBncmVpZnQgRGljaCBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIFNvdG8tdXJha2VuLXVjaGkgYW4uCiAgT3R0aWZhbnQgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBDaG9rdS16dWtpIGFuLgogIE90dGlmYW50IGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gQ2hva3UtenVraSBhbi4KICBPdHRpZmFudCBncmVpZnQgRGljaCBtaXQgZWluZW0gZ2VsdW5nZW5lbiBDaG9rdS16dWtpIGFuLgogIE90dGlmYW50IGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gQ2hva3UtenVraSBhbi4Kc3QgIE90dGlmYW50IGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gQ2hva3UtenVraSBhbi4KYXVuIG90dGlmYSAgT3R0aWZhbnQgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBDaG9rdS16dWtpIGFuLgpudAogIE90dGlmYW50IGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gU290by11cmFrZW4tdWNoaSBhbi4KRHUgc3RhdW5zdCB1ZWJlciBPdHRpZmFudC4KPiAgIE90dGlmYW50IGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gU290by11cmFrZW4tdWNoaSBhbi4KICBPdHRpZmFudCBncmVpZnQgRGljaCBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIENob2t1LXp1a2kgYW4uCiAgT3R0aWZhbnQgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBDaG9rdS16dWtpIGFuLgpqCiAgT3R0aWZhbnQgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBDaG9rdS16dWtpIGFuLgpEdSBoYXN0IDcyMzczMyBFcmZhaHJ1bmdzcHVua3RlLCA2MTUgQWJlbnRldWVycHVua3RlKDE4MTUpLAoxNjIgTGViZW5zcHVua3RlKDE2MikgdW5kIDE2MiBNYWdpZXB1bmt0ZSgxNjIpCkR1IGJpc3QgIkdhcmZpZWxkIGRpZSBQcm9waGV0aW4uIgpEZWluZSBBdHRyaWJ1dGUgc2VoZW4gc28gYXVzOgpJbnRlbGxpZ2VuejogMTIgKCszKSBLcmFmdDogMTkgIEF1c2RhdWVyOiAxNCAoKzEpIEdlc2NoaWNrbGljaGtlaXQ6IDEzICgrMikKVm9yc2ljaHQtTW9kdXMgKDMwKQpBbHRlcjogIDEzIFRhZ2UgMyBTdHVuZGVuIDI4IE1pbnV0ZW4gMzAgU2VrdW5kZW4uCkRlaW4gQ2hhcmFrdGVyIGlzdCBndXQuCj4gICBPdHRpZmFudCBncmVpZnQgRGljaCBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIENob2t1LXp1a2kgYW4uCiAgT3R0aWZhbnQgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBDaG9rdS16dWtpIGFuLgpbQWxsZ2VtZWluOlN0YWhsZG9ybl0gSkEhIEVuZGxpY2ggaGF0IGVpbiBob2Jnb2JsaW4gbWVpbmVuIG5hbWVuCltBbGxnZW1laW46U3RhaGxkb3JuXSBhdXNnZXNwcm9jaGVuIQogIE90dGlmYW50IGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gU290by11cmFrZW4tdWNoaSBhbi4KICBPdHRpZmFudCBncmVpZnQgRGljaCBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIENob2t1LXp1a2kgYW4uCiAgT3R0aWZhbnQgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBDaG9rdS16dWtpIGFuLgpzCiAgT3R0aWZhbnQgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBDaG9rdS16dWtpIGFuLgpQb3J0IFZhaW5lciBNYXJrdHBsYXR6LgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuLCB3ZXN0ZW4sIG5vcmRlbiB1bmQgb3N0ZW4uCgp0amEuCmRhcnVlYmVyIHNvbGx0ZW4gd2lyIG5hY2hkZW5rZW4uCgpnYXJmaWVsZAoqZGVua2VuZCoKKioqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bmdld29laG5saWNoZSBLYW1wZm1ldGhvZGVuIChKYW5pY2UsIDIzLiBKdW4gMTk5NSwgMDk6Mjk6MTIpOgpMZXR6ZW5zIGJlaW0gTGljaDoKRGVyIExpY2ggZ3JlaWZ0IERpY2ggbWl0IGtub2NoaWdlbiBIYWVuZGVuIGFuLgpEZXIgTGljaCB2ZXJmZWhsdCBEaWNoLgplaW4gTGljaCB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggSmFuaWNlLgpEdSB2ZXJzdWNoc3Qgd2VnenVyZW5uZW4sIGFiZXIgZGFzIEtpc3NlbiB0cmlmZnQgRGljaCBhbSBIaW50ZXJrb3BmLgpEdSB3aXJmc3QgZWluZW4gRmV1ZXJiYWxsIG5hY2ggZGVtIExpY2guCkR1IHplcnNjaG1ldHRlcnN0IGRlbiBMaWNoIGluIGtsZWluZSBTdHVlY2tjaGVuLgpBbHNvLCBpY2ggZ3JlaWYgZGVuIExpY2ggbmljaHQgbWVociBhbiA6KQplaW5lIGxhY2hlbmRlIEphbmljZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2F0YWtvbWJlbiwgaW1tZXIgd2llZGVyIG5ldSAoQmVuZGVpZ2lkLCAyMy4gSnVuIDE5OTUsIDIzOjE0OjUxKToKTWVpbiBlcnN0ZXIgQmVzdWNoLCBxdWVzdGJlZGluZ3Q6ClZvbGxlciBBbmdzdCwgbWl0IERzY2hpbm4tUnVlc3R1bmcgdW5kIHNvbnN0aWdlciBBdXNzYXR0dW5nIGJlc3NlcmVyCnF1YWxpdGFldDoKc2NoYWV0eiBza2VsZXR0CkRhcyBTa2VsZXR0IGlzdCBEaXIgaGF1c2hvY2ggdWViZXJsZWdlbi4KRGllIFJ1ZXN0dW5nIGRlcyBTa2VsZXR0cyBpc3QgdW5nbGF1YmxpY2ggdmllbCBiZXNzZXIgYWxzIERlaW5lLgpEZWluZSBXYWZmZSBpc3QgZWlnZW50bGljaCB6dSBndXQgZnVlciBkaWVzZW4gR2VnbmVyLgoKVW5kIGRhcyBtaXQgQlNTLgpOYWphLCB3aSBhdWNoIGltbWVyIHNpY2ggS25vY2hlbiBzY2h1ZXR6ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWxic3RiZWdlZ251bmcgKFdhcmxvcmQsIDI0LiBKdW4gMTk5NSwgMDM6MDI6NTApOgpEdSBoYXN0IDY5MjU2MyBFcmZhaHJ1bmdzcHVua3RlLCAxMjcwIEFiZW50ZXVlcnB1bmt0ZSgxODE1KSwKMTAzIExlYmVuc3B1bmt0ZSgyMTApIHVuZCAyMTAgTWFnaWVwdW5rdGUoMjEwKQpEdSBiaXN0ICJXYXJsb3JkIGRlciBEcmFjaGVucmVpdGVyLiIKRGVpbmUgQXR0cmlidXRlIHNlaGVuIHNvIGF1czoKSW50ZWxsaWdlbno6IDIwICgrMSkgS3JhZnQ6IDE1ICgrMSkgQXVzZGF1ZXI6IDIwICgrMSkgR2VzY2hpY2tsaWNoa2VpdDogMTcKKCszKQpWb3JzaWNodC1Nb2R1cyAoMjApCkZsdWNodHJpY2h0dW5nICJzbyIKQWx0ZXI6ICAyMiBUYWdlIDYgU3R1bmRlbiA0MiBNaW51dGVuIDMyIFNla3VuZGVuLgpEZWluIENoYXJha3RlciBpc3QgZ3V0LgoKSGllciB2ZXJoaW5kZXJuIGRpZSBCdWVzY2hlIGltIE5vcmRlbiB1bmQgV2VzdGVuLCBzb3dpZSBkZXIgRmx1c3MgaW0KT3N0ZW4gamVkZXMgd2VpdGVyZSBEdXJjaGtvbW1lbi4gRHUga2FubnN0IGhpZXIgbnVyIHVta2VocmVuLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZGVuLgpFaW4gS2FtcGZzY2h3ZXJ0LgpFaW4gS2FtcGZzY2h3ZXJ0LgpFaW4gS2FtcGZzY2h3ZXJ0LgpDZWxlYmRpbCBkZXIgYW5nZWhlbmRlIE1hZ2llci4KRWluIExlZGVyaGVsbS4KRWluIExlZGVyaGVsbS4KRGllIHZlcmZhdWx0ZW4gRWluemVsdGVpbGUgV2FybG9yZHMuClNjaG9uIHRyYXVyaWcsIHdlbm4gbWFuIHNpY2ggc2VsYnN0IHNvIHNpZWh0LiBNYW4ga2FubiBzaWNoIGphIGhpZXIgbmljaHQKbWFsIHNlbGJzdCBiZWVyZGlnZW4gOykKCgogICAgICAgIEVpbiB1ZWJlciBzZWluZSBXaWRlcnN0YW5zZmFlaGlna2VpdCBzdGF1bmVuZGVyCgogICAgICAgICAgICAgICAgICAgICAgICBXYXJsb3JkCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNlbGJzdGJlZ2VnbnVuZyAoQm9pbmcsIDI0LiBKdW4gMTk5NSwgMTM6NDM6MTUpOgojISBybj1XYXJsb3JkIHJ0PTgwMzk1NTc3MApBYmVyIER1IGhhZXR0ZXN0IGRpZSBMZWljaGUgZXNzZW4ga29lbm5lbiAuLi4gOykKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChCYW1iZWwsIDI0LiBKdW4gMTk5NSwgMTU6Mjg6MjIpOgpbQWJlbnRldWVyOk1vcmdvdGhdIHdhcyBlaW4gc2NoZWlzcywgamV0enQgaGFiIGljaCByYWtvcml1bSBhbmdlZ3JpZmZlbgouLi4KW0FiZW50ZXVlcjpCYW1iZWxdIG1hY2ggZW5kZQouLi4KW1RvZDpdIEZ1bmFrb3NoaSBoYXQgZ2VyYWRlIE1vcmdvdGggdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKE1vcmdvdGgsIDI0LiBKdW4gMTk5NSwgMTk6Mjk6MTkpOgojISBybj1CYW1iZWwgcnQ9ODA0MDAwNTAyCmFsc28uLi5kYXp1IG11c3MgaWNoIGphIHdhcyBzYWdlbi4uYWVoIHNjaHJlaWJlbi4uLgppY2ggaGF0dGUgZ2VyYWRlIG5hcnJlbmJhbGwgZ2VtYWNodCB1bmQgZGFjaHRlIG1pciBzby4uLmt1Y2tzZSBtYSBuYWNoZQprYXJhdGUtcHJvemVudGUuLi5wbG9ldHpsaWNoIHNhZ3QgZXIgLi5pbiBkZWluZW0gd2FobiBncmVpZnN0IGR1IGZ1bmFrb3NoaQphbi4ua3JhY2gsIGJyZWNoLCBzY2htZXR0ZXIuLi51cHBzIHJhdXMuLi50YW5rZW4uLi5pbiBkcmFjaGVuaG9ydCBhbmdla29tbWVuCmVyc21hIGluIGRpZSBrbmVpcGUgbmVuIGtvdGxldHQgdW5kIGVpbiBwYWFyIHdlaW5lIHppZWhlbi4uLmphIHNjaGVpc3NlCmlzLi4uaW4gZGVpbmVtIHdhaG4gLi5icmFiYmVsIHN1ZWx6Li4uICByYXVzIGhpZXIuLi4KaG0uLi53aWVsYW5nZSBpcyBmdW5hIHdvaGwgc2F1ZXIuLi5haGEsIGljaCBrYW5uIHNvZm9ydCB3aWVkZXIgZWluIHNhZ3QKZWluZXIuLm9rCm5hamEuLi4uc2NobWV0dGVyLCBrcmFjaCB0amEgLi4uZGFzIHdhcnMgZGFubi4uLgoKTW9yb2d0aAphcmdsLi5qZXR6IGthbm4gaWNoIG5pY2htYSBtZWluZW4gbmFtZW4gc2NocmVpYmVuLi4uCk1vcmdvdGgKbmEgYml0dGUuLi4KKndpbmsqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIGxldHp0ZW5zIGJlaSBsYXJzIChHdW5kdXIsIDI1LiBKdW4gMTk5NSwgMDE6MzU6MjEpOgpEZXIgVG9kIGVudGZlcm50IGRpZSBMaW5zZSBhdXMgc2VpbmVtIEF1Z2UgdW5kIHN0ZWh0IGF1Zi4gUGxvZXR6bGljaCBkcmVodCBlcgpzaWNoIHVtIHVuZCB2ZXJsYWVzc3QgZGVuIFJhdW0gZHVyY2ggZGllIG5hZWNoc3RlIFdhbmQuIERhYmVpIGhhZWx0IGVyIERpY2gKaW0tCm1lciBub2NoIGluIHNlaW5lciBIYW5kLiBFciBnZWh0IHNjaG5lbGwgZHVyY2ggZWluZW4gZHVua2xlbiwgc2ljaCB3aW5kZW5kZW4KS29ycmlkb3IsIGVpbmUgV2VuZGVsdHJlcHBlIGhlcnVudGVyIHp1bSB0aWVmc3RlbiBSYXVtIGluIHNlaW5lbSBLZWxsZXIuCgpBZ25ldGhhIGJlZ2lubnQgbnVuIG1pdCBkZXIgMS4gVmFyaWF0aW9uLgpMYXJzIGtvbW10IGFuIGR1cmNoIGVpbmVuIFJpc3MgaW0gVm9yaGFuZyBkZXIgV2VsdGVuLgpbQmVpbGVpZDpXdXJdIG9iIGRhcyBoaWxmdD8KQWduZXRoYSBiZWdpbm50IG51biBtaXQgZGVyIEFucnVmdW5nc3NlcXVlbnouCkxhcnMgbGFlY2hlbHQgRGljaCBhbi4KLi4uCnRqYWphIHNlbGJzdCBpbSBUb2QgaGF0IHNpZSBub2NoIGdlc3VuZ2VuIGFiZXIuLi4ua2VpbiBNaXRsZWlkIDooCnNldWZ6Ck1vcmFuIGhhdHMgZ2VmYWxsZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWV0emVsbjogZWluIGxhZXN0aWdlcyBVZWJlbD8/IChBYmJhLCAyNS4gSnVuIDE5OTUsIDA0OjI2OjQxKToKIyEgcm49SmFmIHJ0PTgwMTc0ODUzNApbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFp1ZXJpbGV1LCAgNC4gSnVuIDE5OTUsIDAyOjI0OjE5XToKU2FsaSwKV2llIHdhZXJzenUgbWV0emVsbiBvaG5lIHp1IFF1ZXN0ZW4gPwpXdWVyZCBpY2ggdmllbCBtZWhyIGJldm9yenVnZW4gISEKCkN1IFp1ZXJpbGV1CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCAoQWJiYSwgMjUuIEp1biAxOTk1LCAwNDoyNzoxNyk6CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgQWJiYSwgMjUuIEp1biAxOTk1LCAwNDoxOTo0Ml06CgpbQWxsZ2VtZWluOkFSVFldIEFCQkEgLCBsYXNzIGFnbmV0aGEgaW4gcnVoZSAhIQpFaW4gQmV0dGxlciBrb21tdCBhbi4KRGVyIEJldHRsZXIgZ2VodCBuYWNoIFdlc3Rlbi4KW0FsbGdlbWVpbjpBZ25ldGhhXSBBUlRZIGxhc3MgQUJCQSBpbiBydWhlCltBbGxnZW1laW46QVJUWV0gOikKW0FsbGdlbWVpbjpIYWRyYV0gYWduZXRoYSBsYXNzIGFydHkgaW4gcnVoZQpbQWxsZ2VtZWluOld1cl0gaGFkcmEgbGFzcyBhZ25ldGhhIGluIHJ1aGUKW0FsbGdlbWVpbjpBZ25ldGhhXSB1bmQgd2VubiBzaWUgbmljaHQgZ2VzdG9yYmVuIHNpbmQuLi4uCltBbGxnZW1laW46U21pbGV5IGJyaWNodCB2b3IgbGFjaGVuIHp1c2FtbWVuXQpbQWxsZ2VtZWluOlJlaW5lbGRlXSB3dXIgbGFzcyBoYWRyYSBpbiBydWhlCgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCZWVyZGlndW5nc3JpdGVuIGRlciBFbGZlbndhZWNodGVyIChZZW5kaSwgMjYuIEp1biAxOTk1LCAxNDoxOTo0Mik6CgpOZXVsaWNoLCBpbSBFbGZlbmRvcmYuLi4KCkR1IGJlZmluZGVzdCBEaWNoIG9iZW4gYXVmIGRlbSBXYWNodHVybSBhbSBFaW5nYW5nIGRlciBFbGZlbnNpZWRsdW5nLgpFcyBpc3QgZWluZSBzY2hsaWNodGUgSG9senBsYXR0Zm9ybSB2b24gMyBtYWwgMiBNZXRlciBHcm9lc3NlLCBkaWUgdm9uCmVpbmVtIEdlbGFlbmRlciB1bXphZXVudCB3aXJkLiBBdWYgZGVtIEJvZGVuIHN0ZWh0IGVpbmUga2xlaW5lIEJhbmsgZnVlcgpkZW4gV2FjaGhhYmVuZGVuIHp1bSBTaXR6ZW4uClZvbiBoaWVyIG9iZW4gaGFzdCBEdSBlaW5lbiBwcmltYSBVZWJlcmJsaWNrIHVlYmVyIGRlbiBnZXNhbXRlbiBXYWxkLAphYmVyIERpZW5zdCBtb2VjaHRlc3QgRHUgaGllciB0cm90emRlbSBuaWNodCBzY2hpZWJlbiBtdWVzc2VuLCBkZW5uIGVzCmlzdCBzZWhyIHdpbmRpZy4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHVudGVuLgpFaW4gRWxmZW53YWVjaHRlci4KRGllIHNjaGltbWVsbmRlIHVuZCBoYWxidmVyd2VzdGUgTGVpY2hlIGVpbmVzIFdhZWNodGVycy4KPiBEaWUgV2FjaGUgbXVzdGVydCBkaWUgVW1nZWJ1bmcuCkVpbmUgTGVpY2hlIHdpcmQgdm9uIGVpbmVtIEVsZmVud2FlY2h0ZXIgdm9sbCBIaW5nZWJ1bmcgdmVyc3BlaXN0LgpEZXIgRWxmZW53YWVjaHRlciBuaW1tdCAxNTYgTXVlbnplbi4KRGVyIEVsZmVud2FlY2h0ZXIgbmltbXQgZGVuIFBhbnplci4KRGVyIEVsZmVud2FlY2h0ZXIgbmltbXQgZGVuIFp3ZWloYWVuZGVyLgoKCgpLYW5uaWJhbGlzbXVzIHVuZCBMZWljaGVuZmxlZGRlcmVpIQoKTmEgZ3V0LCBiZWkgWndlcmdlbiB1bmQgTWVuc2NoZW4gdW5kIGFuZGVyZW0gR2Vzb2NrcyBrYW5uIGljaCBtaXIgZGFzIGphIG5vY2gKdm9yc3RlbGxlbiAoenVtaW5kZXN0IGRhcyBMZWljaGVuZmxlZGRlcm4gLS0gd2VyIHdpbGwgc2Nob24gZWluZW4gWndlcmcKX2Vzc2VuXz8pLCBhYmVyIHNlaW5lIGVpZ2VuZW4gS29sbGVnZW4gYmVzdGF0dGV0IG1hbiBkb2NoIGltIEFsbGdlbWVpbmVuLApvZGVyPwoKSWNoIGthbm4gZXMgbWlyIHNjaG9uIGxlYmhhZnQgdm9yc3RlbGxlbjoKCgoKPiBEaWUgV2FjaHN0dWJlIGRlciBFbGZlbndhZWNodGVyIGlzdCBzcGFydGFuaXNjaCBlaW5nZXJpY2h0ZXQuCkF1c3NlciBlaW5lbSBUaXNjaCBtaXQgNCBTY2hlbWVsbiB1bmQgZWluaWdlbiBQcml0c2NoZW4gd2VpdGVyIGhpbnRlbiBpc3QgZGVyClJhdW0gdm9lbGxpZyBsZWVyLiBFaW4gS2FydGVuc3BpZWwgc3RlaHQgYXVmIGRlbSBUaXNjaCwgZGFuZWJlbiBlaW4gS3J1ZyB1bmQKYXVmIGVpbmVtIFRlbGxlciBlaW4gQnJvY2tlbiBCcm90IHVuZCBlaW4gU3R1ZWNrIEthZXNlLgpIaWVyIHNjaGVpbmVuIHNpY2ggZGllIFdhZWNodGVyIGF1Znp1aGFsdGVuLCB3ZW5uIHNpZSBuaWNodCBnZXJhZGUgYXVmClN0cmVpZmUgc2luZCBvZGVyIGF1ZiBkZW0gV2FjaHR1cm0gQXVzc2NoYXUgaGFsdGVuIG11ZXNzZW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uCkVpbiBFbGZlbndhZWNodGVyLgoKPiBFaW4gRWxmZW53YWVjaHRlciBrb21tdCBhbi4KCkVpbiBFbGZlbndhZWNodGVyIHNhZ3Q6IEhhbGxvLCBMZWdvbGFuZCEgV2llIHdhcidzPwpFaW4gRWxmZW53YWVjaHRlciBzYWd0OiBBY2gsIFN1bmlsLCBlcyB3YXIgZWluZmFjaCBiZXNjaGlzc2VuISBadWVyc3QKRWluIEVsZmVud2FlY2h0ZXIgc2FndDogcmVubnQgZGllIGR1bW1lIEdhbnMgdm9uIEdhZXJ0bmVyaW4gZGF1ZXJuZCBoaW50ZXIKRWluIEVsZmVud2FlY2h0ZXIgc2FndDogbWlyIGhlciwgZGFubiBoYXQgZGVyIElkaW90IHZvbiBXaXJ0IGtlaW5lbgpFaW4gRWxmZW53YWVjaHRlciBzYWd0OiBTY2huZWxsaGFlcnRlciBtZWhyLCB1bmQgaWNoIG11c3MgbnVlY2h0ZXJuIGxvcywKRWluIEVsZmVud2FlY2h0ZXIgc2FndDogdW5kIHdpZSBpY2ggb2JlbiBhdWYgZGVuIFR1cm0ga29tbWUsIGhhdCBpcmdlbmQKRWluIEVsZmVud2FlY2h0ZXIgc2FndDogc28gZWluIGJhcmJhcmlzY2hlcyBLdXJ6b2hyIFBlcnNpbCBhYmdlc3RvY2hlbiEgRGVyCkVpbiBFbGZlbndhZWNodGVyIHNhZ3Q6IGxhZyBkYSB0b3QgcnVtLCB3YXIgc2Nob24gYW0gVmVyZ2FtbWVsbi4uLiBLZWluCkVpbiBFbGZlbndhZWNodGVyIHNhZ3Q6IHNjaG9lbmVyIEFuYmxpY2ssIHNhZyBpY2ggRGlyLi4uCkVpbiBFbGZlbndhZWNodGVyIHNhZ3Q6IEJlaSBKb2YhIFNvd2FzIGFiZXIgYXVjaCEgRGFzIGlzdCBqYSBzY2hvbiBtaW5kZXN0ZW5zCkVpbiBFbGZlbndhZWNodGVyIHNhZ3Q6IGRlciBmdWVuZnRlIGluIGRpZXNlciBXb2NoZSEgQWxzbyBzbyBsYW5nc2FtCkVpbiBFbGZlbndhZWNodGVyIHNhZ3Q6IHVlYmVydHJlaWJlbiBkaWUgZXMgYWJlciEgTWFuIHNvbGx0ZSBtYWwgZWluZmFjaApFaW4gRWxmZW53YWVjaHRlciBzYWd0OiBlaW4gcGFhciB2b24gZGVuIEp1bmdzIHp1c2FtbWVudHJvbW1lbG4gdW5kIGRlbmVuCkVpbiBFbGZlbndhZWNodGVyIHNhZ3Q6IHNvIHJpY2h0aWcgZWlucyBoaW50ZXIgZGllIHVuZ2V3YXNjaGVuZW4gTG9lZmZlbApFaW4gRWxmZW53YWVjaHRlciBzYWd0OiBnZWJlbiwgYWJlciBzbyByaWNodGlnIQpFaW4gRWxmZW53YWVjaHRlciBzYWd0OiBOZWUsIG5lZSwgU3VuaWwsIGRhcyBsYXNzZW4gZGllIENoZWZzIGphIHNvd2llc28KRWluIEVsZmVud2FlY2h0ZXIgc2FndDogbmljaHQgenUsIHZvbiB3ZWdlbiBkZW4gZ3V0ZW4gbmFjaGJhcnNjaGFmdGxpY2hlbgpFaW4gRWxmZW53YWVjaHRlciBzYWd0OiBCZXppZWh1bmdlbiwgdW5kIHNvLi4uCkVpbiBFbGZlbndhZWNodGVyIHNhZ3Q6IFN0aW1tdCBhdWNoIHdpZWRlci4uLiBUamEsIHVuZCB3ZXIgZ2VodCBqZXR6dCB6dQpFaW4gRWxmZW53YWVjaHRlciBzYWd0OiBQZXJzaWxzIFdpdHdlIHVuZCB1ZWJlcmJyaW5ndCBpaHIgZGllIHRyYXVyaWdlCkVpbiBFbGZlbndhZWNodGVyIHNhZ3Q6IE5hY2hyaWNodD8KRWluIEVsZmVud2FlY2h0ZXIgc2FndDogTmFqYWFhLi4uIERhIGlzdCBub2NoIHdhcy4uLgpFaW4gRWxmZW53YWVjaHRlciBzYWd0OiBXYXMgZGVubj8gSGF0IGVzIG5vY2ggZWluZW4gdm9uIHVucyBlcndpc2NodD8KRWluIEVsZmVud2FlY2h0ZXIgc2FndDogTmVpbm5laW5uZWluLCBkYXMgbmljaHQuLi4gRXMgaXN0IGVoZXIuLi4gYWxzbywgaWNoCkVpbiBFbGZlbndhZWNodGVyIHNhZ3Q6IGhhYiBEaXIgZG9jaCBlcnphZWhsdCwgZGFzIGRlciBXaXJ0IGtlaW5lbiBIYWVydGVyCkVpbiBFbGZlbndhZWNodGVyIHNhZ3Q6IG1laHIgaGF0dGUuLi4gTmFqYSwgdW5kIGljaCBoYXR0ZSBwbG9ldHpsaWNoIHNvCkVpbiBFbGZlbndhZWNodGVyIHNhZ3Q6IGVpbmVuIEFuZmFsbCB2b24gSGVpc3NodW5nZXIuLi4gV2VpbCwgbm9ybWFsZXJ3ZWlzZQpFaW4gRWxmZW53YWVjaHRlciBzYWd0OiBtZXJrdCBtYW4gZGFzIGphIG5pY2h0IHNvLCB3ZW5uIG1hbiBnZWhhZXJ0ZXQgZ2VudWcKRWluIEVsZmVud2FlY2h0ZXIgc2FndDogaXN0Li4uIG5hamFhYSwgYWxzby4uLiAgIHdpZSBzb2xsIGljaCBzYWdlbi4uLgpFaW4gRWxmZW53YWVjaHRlciBzYWd0OiBKYWFhYT8KRWluIEVsZmVud2FlY2h0ZXIgc2FndDogQWxzby4uLiBpY2ggaGFiIGlobiBnZWdlc3Nlbi4KRWluIEVsZmVud2FlY2h0ZXIgZGVua3QgLiBvIE8gKCBXaWUgYml0dGU/Pz8gKQpFaW4gRWxmZW53YWVjaHRlciBzYWd0OiBXSUUgQklUVEU/Pz8gRFUgSEFTVCBfV0FTXz8/PwpFaW4gRWxmZW53YWVjaHRlciBzYWd0OiBJY2ggaGFiIGlobiBnZWdlc3NlbiEgSWNoIGhhdHRlIGhhbHQgSHVuZ2VyLi4uCkVpbiBFbGZlbndhZWNodGVyIHNjaHJlaXQgbGF1dC4KRWluIEVsZmVud2FlY2h0ZXIgc2FndDogVG9sbCwgTGVnb2xhbmQsIGdhbnogdG9sbCEgVW5kIHdpZSB3aWxsc3QgRHUgZGFzCkVpbiBFbGZlbndhZWNodGVyIHNhZ3Q6IGpldHp0IFBlcnNpbHMgV2l0d2UgZXJrbGFlcmVuLCBoYWVoPwpFaW4gRWxmZW53YWVjaHRlciBzZXVmenQgc2Nod2VyLgpFaW4gRWxmZW53YWVjaHRlciBzZXVmenQgc2Nod2VyLgoKLi4uLgoKCgpUamFqYWEuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBiZWltIHRhbGtlbi4uLiAoWWVuZGksIDI2LiBKdW4gMTk5NSwgMTY6MDY6NTgpOgpoYWIgaWNoIHNjaG9uIGdlc2FndCwgZGFzcyBpY2ggZ2VzcHVlbHQgaGFiZT8/CkFiZW50ZXVlciBTcHVlbGVuLCBkZW1uYWVjaHN0IGFscyBTZXJpZSwgUGlsb3RmaWxtIHdhciB2ZXJnYW5nZW5lbiBEaWVuc3RhZwp1bSAyMy40MGguCldhciBla2xpZy4uLgpkYXMgc3B1ZWx0dWNoIG11c3N0ZSBpY2ggZGFuYWNoIHdlZ3NjaG1laXNzZW4uCmphLCBzbyBjaGltbWVsIGlzdCBoYXJ0bmFlY2tpaWcKZGFzIGJlc3RlIHdhcmVuIGRpZSBfdG90ZW5fIG1hZGVuIGFtIGJvZGVuIGRlcyBzcHVlbGJlY2tlbnMtZGFzIGhhYmVuIGRpZQphdWNoIG5pY2h0IG1laHIgYXVzZ2VoYWx0ZW4uLi4KbWljaCB3dWVyZGUgaW50ZXJlc3NpZXJlbiwgd2VsY2hlciBwaWx6IGRpZXNlbiBnbGliYmVyaWdlbiBiZWxhZyBhdWYgZGVuCnRlbGxlcm4gZXJ6ZXVndC4KCgpXb3csIHVuZCBpY2ggZGFjaHRlIGltbWVyLCBfaWNoXyB3dWVyZGUgZGFzIEdlc2NoaXJyIGxhbmdlIHN0ZWhlbmxhc3Nlbi4uLgoKWVRZCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbGFuZ2UgbmFtZW4gKE11cGZlbCwgMjYuIEp1biAxOTk1LCAyMjoyMjoxMCk6CmhhbGxvCgpncmFkZSBnZXNlaGVuIGltIGFuZGVybGFuZApbTW9lcmRlcjpHZWlzdCBlaW5lcyBIYXVwdG1hbm4gZGVyIFdhY2hlbiBkZXIgVHVhdGhhIGRlIERhbm5hbnNdIEh1ZXRldCBFdWNoCltNb2VyZGVyOkdlaXN0IGVpbmVzIEhhdXB0bWFubiBkZXIgV2FjaGVuIGRlciBUdWF0aGEgZGUgRGFubmFuc10gdm9yCltNb2VyZGVyOkdlaXN0IGVpbmVzIEhhdXB0bWFubiBkZXIgV2FjaGVuIGRlciBUdWF0aGEgZGUgRGFubmFuc10gTWFyc3VwaWxhbWkhCgpub2NobiBsYWVuZ2VyZW4gbmFtZW4gdW5kIGVzIHdpcmQgc2Nod2llcmlnIDotKQoKLW11cGZlbC0KUC5TLjogZmFsbHMgamVtYW5kIGZyYWd0OiBkYXMgdGVpbCBpc3Qgdm9uIEFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW5ha2luIGlzdCBqZXR6dCBlaW4gTWFnaWVyISAoTWVybGlpbiwgMjcuIEp1biAxOTk1LCAxMDo1Mjo0NSk6CkFtIERpZSwgMjcuIEp1bmkgMTk5NSwgMTA6NTE6NDIgaGFiZW4gSm9mLCBSdW1hdGEgdW5kIEJvaW5nCkFuYWtpbiB6dW0gTWFnaWVyIGdlbWFjaHQuCkhlcnpsaWNoZW4gR2x1ZWNrd3Vuc2NoLCBBbmFraW4uIEdsdWVja3d1ZW5zY2hlIGF1Y2ggYW4gZXVjaCwKSm9mLCBSdW1hdGEgdW5kIEJvaW5nLCB6dSBFdXJlbSBuZXVlbiBTb2huIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFuYWtpbiBpc3QgamV0enQgZWluIE1hZ2llciEgKFJ1bWF0YSwgMjcuIEp1biAxOTk1LCAxMToxODo0MCk6CiMhIHJuPU1lcmxpaW4gcnQ9ODA0MjQzMTY1CkxldXRlLCBpY2ggcmF0ZSBFdWNoIHZvbiBmbG90dGVuIGRyZWllcm4gYWIhCklociBzZWh0IGphLCB3YXMgZGEgcmF1c2tvbW10LiA6LSkKClJ1bWF0YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbmFraW4gaXN0IGpldHp0IGVpbiBNYWdpZXIhIChCb2luZywgMjcuIEp1biAxOTk1LCAxNDoyMzoxOSk6CiMhIHJuPVJ1bWF0YSBydD04MDQyNDQ3MjAKVm9yIGFsbGVtIGthbm4gaWNoIG1pY2ggYW4gbmljaHRzIGVyaW5uZXJuIC4uLiB3YXIgZGFzIFNhbXN0YWcgYWJlbmQ/IDspCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBsYW5nZSBuYW1lbiAoR3JpbW1ib3JuLCAyNy4gSnVuIDE5OTUsIDE3OjU5OjIxKToKIyEgcm49TXVwZmVsIHJ0PTgwNDE5ODEzMAoKLi4udW5kIGRhbm4gbm9jaCBtaXQgZmFsc2NoZW0gR2VuaXRpdi4gKnNjaGF1ZGVyKgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzZWhlciBzaW5kIGF1Y2ggbml4IGJlc3NlcmVzIDopIChGeXQsIDI3LiBKdW4gMTk5NSwgMTg6MTc6NDUpOgoKW1NlaGVyOkVuZ3l3dWNrXSBJbW1lciBzb3ZpZWwgR2V3YWx0Li4qc2NodWV0dGVsKgpbU2VoZXI6U2xhc2hdIHRvZXRlbiB0b2V0ZW4gdG9ldGVuISEhISEhISEKW1NlaGVyOkFuYWtpbl0gbmFqYQpbU2VoZXI6QW5ha2luIHNhZ3QgbWFsIG5peC5dCltTZWhlcjpFbmd5d3Vja10gTWV0emxlciEKW1NlaGVyOlN0YWhsZG9ybl0gaG1wZgpbU2VoZXI6RW5neXd1Y2tdIElzdCBkaWUgbWVuc2NobGljaGUgRXhpc3RlbnMgbmljaHQgc2VsdHNhbT8KW1NlaGVyOkFyZGFuYV0ga29tbSBhdWYgZGllIFNlaXRlIGRlciBNYWVjaHRpZ2VuLCBGeXQuLi4gbWl0IHphcCBkYWVtb24gdW5mCltTZWhlcjpBcmRhbmFdIGNsb25lIHNhZXVyZWJhbGwgc2luZCBhbGxlIERlaW5lIHByb2JzIGdlbG9lc3QgLikKW1NlaGVyOkZ5dF0gcGZmLCBkYW5uIGthbm4gaWNoIGF1Y2ggZGllIGh5ZHJhIHphcHBlbiwgZGFzIG1hY2h0IGtlaW5lbgpbU2VoZXI6Rnl0XSBzcGFzcy4uLi4KW1NlaGVyOkVuZ3l3dWNrXSBIaWVyIGRpc2t1dGllcnQgbWFuIGluIHNlZWxlbnJ1aGUgdWViZXIgZGFzIFRvZXRlbiB2b24gYXJtZW4KW1NlaGVyOkVuZ3l3dWNrXSB1bnNjaHVsZGlnZW4gTW9uc3Rlcm4uLi4KW1NlaGVyOkZ5dF0gdW5kIHdlbm4gc2Nob24gbnBjLCBkYW5uIHNjcmlwdCAqZ3JpbnMqCltTZWhlcjpTbGFzaF0gbmllbWFuZCBpc3QgdW5zY2h1bGRpZyEKW1NlaGVyOkVuZ3l3dWNrXSBPaG5lIGFuIGRpZSBNb25zdGVya2luZGVyIHp1IGRlbmtlbi4KW1NlaGVyOkFyZGFuYV0ga2FubnN0ZSBzaWUgamEgYXVjaCBpbSBoZXJrb2VtbWxpY2hlbiBzaW5uZSBuaWVkZXJtYWNoZW4uLi4KW1NlaGVyOkZ5dF0gaG0sIGljaCBoYWIgc2Nob24gZnVlciBkaWUgb3Jrd2Fpc2VuIGdlc3BlbmRldApbU2VoZXI6U2xhc2hdIGRhbm4gbWFjaCBkaWUga2lkcyBhdWNoIGFsbGUKW1NlaGVyOlN0YWhsZG9ybl0gamEsIGVuZ3l3dWNrLiBpY2ggd3VlcmQgZWggdmllbCBsaWViZXIgdWViZXIgZGFzIHRvZXRlbiB2b24KW1NlaGVyOlN0YWhsZG9ybl0gYXJtZW4gdW5zY2h1bGRpZ2VuIFNQSUVMRVJOIHJlZGVuLCBhYmVyIGRhcyBpc3QgamEgaGllcgpbU2VoZXI6U3RhaGxkb3JuXSB2ZXJib3RlbiA6LSkKW1NlaGVyOkFyZGFuYSBncmluc3QgRnl0IGFuLl0KW1NlaGVyOkVuZ3l3dWNrXSBTb2xsdGUgbWFuIG5pY2h0IGxpZWJlciBtZWhyIGFuIExpZWJlIHVuZCBOYWVoZSBkZW5rZW4gYWxzCltTZWhlcjpFbmd5d3Vja10gYW4gcHVyZSBHZXdhbHQ/CltTZWhlcjpTbGFzaF0gTkVJTiwgYXVmIGdhciBrZWluZW4gRkFsbApbU2VoZXI6Rnl0XSB6dSB0b2RlIGxpZWJlbi4uLiBobS4uLiBhdWNoIG5lIGlkZWUuCltTZWhlcjpGeXQgd2lyZCBtYWwgZHJ1ZWJlciBuYWNoZGVua2VuXQpbU2VoZXI6RW5neXd1Y2tdIEFiZXIgbmVpbjogSGllciBnaWJ0cyBub2NoIG5pY2h0IG1hbCBlaW5lbiBLb25kb21hdXRvbWF0ZW4hCltTZWhlcjpKb2ZdIEhpZXIgZ2lidHMgamEgYXVjaCBrZWluIEFpZHMsIHdvenUgYWxzbyBrb25kb21hdXRvbWF0ZW4/CltTZWhlcjpFbmd5d3VjayBzZXVmenQgdWViZXIgZGllc2UgV2VsdC5dCltTZWhlcjpGeXRdIG5hamEsIGlzIGphIGVoZXIgdW53YWhyc2NoZWlubGljaCwgZGFzcyBzaWNoIGRpZSB2aWVjaGVyIGluIGlocmVuCltTZWhlcjpGeXRdIDQ1IGxlYmVuc21pbnV0ZW4gd2FzIGdlaG9sdCBoYWJlbiwgb2Rlcj8KW1NlaGVyOlNhaUtBTl0gZWNodCBuaWN0aC4uIG1pc3QKW1NlaGVyOllldGldIHdpc28gQUlEUyBnaWJ0cyBkb2NoIGF1Y2ggbmljaHQgOikpCltTZWhlcjpCZWxsaWN1cyBwbGFlZGllcnQgZnVlciByb2hlIEdld2FsdCB1bmQgYnJ1dGFsZSBSdWVja3NpY2h0c2xvc2lna2VpdApbU2VoZXI6Rnl0XSBzY2hpZWJ0IGRhcyBtYWwgbmFjaCAtYSwgZGFtaXQgZGllIGFuZGVyZW4gYXVjaCB3YXMgdm9uIGhhYmVuIDopCltTZWhlcjpTYWlLQU5dIHN0aW1tdCBhdWNoIHdpZWRlci4uIGFiZXIgZGFzIHZlcmIgZmVobHQgZWhoaApbU2VoZXI6RW5neXd1Y2tdIEVzIGdpYnQgYXVjaCBrZWluZSBCb3JkZWxsZSBvZGVyIHNvLi4gVW5kIGRhcyBWZXJiICJsaWViZSIKW1NlaGVyOkVuZ3l3dWNrXSBpc3QgaGllciBhdWNoIGVoZXIgaGFybWxvcy4gRGFnZWdlbiBnZWh0IGRhcyB2ZXJiICJ0b2V0ZW4iCltTZWhlcjpFbmd5d3Vja10gdm9sbCB6dXIgU2FjaGUuIEljaCBmaW5kIGRhcyBzY2hvbiBzeW1wdG9tYXRpc2NoLgpbU2VoZXI6U2FpS0FOXSBzdGltbXQgZ2VuYXUKW1NlaGVyOlN0YWhsZG9ybl0gaG1tLiBkYXMgbWl0IGxpZWJlIHVuZCBib3JkZWxsIGlzdCBtaXIgYXVjaCBzY2hvbgpbU2VoZXI6U3RhaGxkb3JuXSBhdWZnZWZhbGxlbi4uLgpbU2VoZXI6VnJhaV0gRW5neXd1Y2ssIHdpbGxzdGUgZWluIHN0YW5kYXJ0dmVyYiBmdWVyIGxpZWJlCltTZWhlcjpWcmFpIGtpY2hlcnQuXQpbU2VoZXI6Q3JhaWcgcGZsaWNodGV0IEVuZ3l3dWNrIGJlaV0KW1NlaGVyOkN1Y2h1bGxpbl0gSSBiYWUKW1NlaGVyOlNhaUtBTl0gbmVpbiBlaW4gYmVzc2VyZXMKW1NlaGVyOlNhaUtBTl0gd2VyZGUgaW50aW0gb2RlciBzbyA7KSkpKSkgZ3JpbnMKW1NlaGVyOkJlbGxpY3VzXSAnYmVzdGVpZ2UnICAqcm90ZmwqCltTZWhlcjpWcmFpXSBqZWRlciBkYXJmIGVpbiBiZXNzZXIgc2ljaCB1ZWJlcmxlZ2VuIHVuZCBiaXR0ZSBhbiBob2lnaGxhbmRlcgpbU2VoZXI6VnJhaV0gbWFpbGVuLCBkZXIgaXN0IGZ1ZXIgZGllIHNlZWxlIHp1c3RhZW5kaWcKW1NlaGVyOkNyYWlnXSBhYmVyIGRpZSBGYW50YXNpZSB1bmQgZGVyIGVtb3RlIGVybW9lZ2xpY2hlbiBlaW5pZ2VzLi4uCltTZWhlcjpZZXRpXSB1bmQgYmxzZW4ga2FubiBmcmF1IGhpZXIgYXVjaCBudXIgaW4gbmVuIGFsbHVsb3JvZWhyY2hlbiA6KSkKW1NlaGVyOlNhaUtBTl0gYmVzdGVpZ2UgcG9ueSBnZWh0IGRvY2gKW1NlaGVyOlZyYWldIGZ1ZXIgd2VpdGVyZSB2b3JzY2hsYWVnZSBpc3QgaGlnbGFuZGVyIHNpY2hlciBvZmZlbiAod2VubiBlciBtYWwKW1NlaGVyOlZyYWldIGRhIGlzdCkKW1NlaGVyOkVuZ3l3dWNrXSBNYW4gc3RlbGxlIHNpY2ggZGFzIG1hbCB2b3IsIGRhc3MgImxpZWJlIiBzbyBkZXV0bGljaCB3YWVyZQpbU2VoZXI6RW5neXd1Y2tdIHdpZSAidG9ldGUiLi4uV2FyIGdhZWIgZGFzIGZ1ZXIgbmVuIEVudHJ1ZXN0dW5nc3N0dXJtIQpbU2VoZXI6QmVsbGljdXNdIHVhZWgsIGR1IHNhdSwgc2Fpa2FuISAgOykKW1NlaGVyOkZ5dF0gc2luZCBkaWUgcG9ueXMgZWlnZW50bGljaCBtYWVubmxpY2ggb2RlciB3ZWlibGljaD8KW1NlaGVyOlNhaUtBTl0gaG1tIGJlc3RpbW10IHNhZWNobGljaApbU2VoZXI6U3RhaGxkb3JuXSBhdXNwcm9iaWVyZW4gOykKW1NlaGVyOkVuZ3l3dWNrXSBEYXMgc2luZCBub2NoIEtpbmRlci4uLgpbU2VoZXI6Rnl0XSBzb25zdCBtdWVzc3RlIGRpZSBzeW50YXggZnVlciBzcGllbGVyaW5uZW4gZXZ0bCBnZWFlbmRlcnQgd2VyZGVuCltTZWhlcjpGeXRdIDopCltTZWhlcjpTYWlLQU5dIHdvaGVyIHdlaXNzdCBkdSBkYXMgZGVubj8gZ3JuaXMKW1NlaGVyOlNhaUtBTl0gd2llIGxlZ2UgdW50ZXIgcG9ueT8KW1NlaGVyOllhbnRyb10gd2llc28gRnl0PwpbU2VoZXI6U3RhaGxkb3JuIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuXQpbU2VoZXI6Rnl0XSBobS4uLiBuYWphLi4uCltTZWhlcjpZYW50cm9dIGJpc3QgZHUgYXJtZXIgbm9jaCBuaWUgYmVzdGllZ2VuIHdvcmRlbj8KW1NlaGVyOllldGkgcm90Zmx0XQpbU2VoZXI6Rnl0XSB2b24gbmVtIHBvbnkgbm9jaCBuaWNodC4KW1NlaGVyOlNhaUtBTl0gZHUgeWFudHJvPwpbU2VoZXI6WWFudHJvXSBvZGVyIGJpc3QgZHUgc3RyZW5nIGthdGhvbGlzY2g/CltTZWhlcjpQYXJhY2Vsc3VzXSBXZXIgd2lsbCB3ZW4gYmVzdGVpZ2VuID8KW1NlaGVyOllhbnRyb10gaW1tZXIgc2Fpa2FuLi4KW1NlaGVyOlN0YWhsZG9ybl0gZnl0IGJlc3RlaWd0IGdlcm4gcG9uaWVzCltTZWhlcjpQYXJhY2Vsc3VzXSBXYXMga2FubiBkZW5uIGRhcyBQb255IGRhZnVlciA/CltTZWhlcjpTYWlLQU5dIHlhbnRybyB3dXJkZSB2b20gcG9ueSBiZXN0aWVnZW4KW1NlaGVyOlNhaUtBTl0gc2FndCBlciBqYQpbU2VoZXI6QW5ha2luXSBhcm1lIHdlaHJsb3NlIE5QQyBiZXN0ZWlnZW4uLi4KW1NlaGVyOllhbnRyb10gc2VpIGRvY2ggbWFsIGVocmxpY2guLi4gd2llc28gc29sbHRlIGljaCBkYXMgZWluZXIgZnJhdSBhbnR1bgpbU2VoZXI6WWFudHJvXSB1bmQgbmFjaCBvYmVuIGdlaGVuPz8gKmlzdCBmYXVsKgpbU2VoZXI6Rnl0XSBoYXQgamVtYW5kIHdhcyBkYWdlZ2VuLCBkYXNzIGljaCBkYXMgbmFjaCBzY2htYXJybiAgcG9zdGU/CltTZWhlcjpGeXRdIGRlciBhcm1lLi4uIG5hamEuLi4gamVkZW0gdGllcmNoZW4gc2VpbiBwbGFpc2lyY2hlbiA6KQpbU2VoZXI6UGFyYWNlbHN1c10gTmVlCltTZWhlcjpTYWlLQU5dIGhleSBndXQKW1NlaGVyOlBhcmFjZWxzdXNdIEJlaSBtaXIga29tbXQgZWggc2Nob24gd2llZGVyICJOaXggbmV1ZXMgYXVmIGRlciBXZWx0IgpbU2VoZXI6U3RhaGxkb3JuXSBuYWphLCBhbHNvIGFlaC4uLiBpY2ggbXVzcyBnZXN0ZWhlbiBpY2ggaGFiIGRlbiBsaWVicmVpegpbU2VoZXI6U3RhaGxkb3JuXSBkZXIgaHlkcmEgc2Nob24gaW1tZXIgYmV3dW5kZXJ0Li4uCltTZWhlcjpTdGFobGRvcm4gb3V0ZXQgc2ljaC5dCltTZWhlcjpTYWlLQU5dIHRpZXJxdWFlbGVyIGFsbGUKCgpPaG5lIEtvbW1lbnRhci4gRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGVlZWVnYSEgKEN1Y2h1bGxpbiwgMjcuIEp1biAxOTk1LCAyMTo0Mjo0Nyk6CgoKSGFmZW5zdHJhc3NlLgpFcyBnaWJ0IHNlY2hzIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiwgd2VzdGVuLCBub3JkZW4sIG9zdGVuLCBvYmVuIHVuZAp1bnRlbi4KUGVnYXN1cywgZGFzIGZsaWVnZW5kZSBQZmVyZC4KPiBFaW4gZmxpZWdlbmRlcyBQZmVyZCBmbGllZ3QgZ2VyYWRlIGFiLgprbGV0dGVyZSBhdWYgcGVnYXN1cwpQZWdhc3VzLCBkYXMgZmxpZWdlbmRlIFBmZXJkLCBuaW1tdCBEaXIgMjIyIE11ZW56ZW4gYWIuClp1ZnJpZWRlbiBiaWV0ZXQgZXIgRGlyIGVpbmVuIFBsYXR6IGF1ZiBzZWluZW0gUnVlY2tlbiBhbi4KLS0tLT4gTm9wZS4KCkFlaC4uLi4uPwoKQ3VjaC4gX2VpZ2VudGxpY2hfIFNlaGVyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBbmFraW4gaXN0IGpldHp0IGVpbiBNYWdpZXIhIChTY2hydW1wZmksIDI3LiBKdW4gMTk5NSwgMjI6MzU6MTMpOgojISBybj1Cb2luZyBydD04MDQyNTU3OTkKQXVmIGRlciBQYXJ0eSwgQm9pbmchIEljaCBoYWJzIGdlbmF1IGdlc2VoZW4hISEgOy0pKQpTY2hydW1wZmkgc3Bhbm50CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBbmFraW4gaXN0IGpldHp0IGVpbiBNYWdpZXIhIChCb2luZywgMjguIEp1biAxOTk1LCAwOToyMzo1Nik6CiMhIHJuPVNjaHJ1bXBmaSBydD04MDQyODUzMTMKTmFqYSwgYXVmIGRlciBQYXJ0eSB3YXIgaWNoIChpbSBWZXJnbGVpY2ggenUgU2Ftc3RhZyBhYmVuZCkgbnVlY2h0ZXJuLgogIEJvaW5nIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlLi4uIChaZXBoeXIsIDI4LiBKdW4gMTk5NSwgMTU6MDc6MjUpOgoKR3JhZCBiZWltIGZ0cCBrcmllZ3RlIGljaCBkb2NoIG1hbCBuZSBuZXR0ZSBNZWxkdW5nLi4gOgoKVHJhbnNmZXJyZWQgLTIwMzkxMTI2MzQgQnl0ZXMgaW4gMTUgc2Vjb25kcyAoLTE2ODIuLTcyOCBLYnl0ZXMvc2VjKQoKICAgIFplcGh5ciAtIGltbWVyIG5vY2ggZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoR2FzdDEsIDI4LiBKdW4gMTk5NSwgMTU6NDE6NTEpOgpbQWJlbnRldWVyOkhhcl0gaGlsZmUgd2lla29tbWUgaWNoIHZvbiBkZW4gemF0b25ncyB3ZWc/CltBbGxnZW1laW46U2lxdWUgYmV0cmFjaHRldCB6YWVydGxpY2ggc2VpbmUgMjBNQnl0ZSBJQk0tUkxMLVBsYXR0ZS5dCltUb2Q6XSBFaW4gWmF0b25nIGhhdCBnZXJhZGUgSGFyIHVtZ2VicmFjaHQuCmdhc3QgMQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGViZW4gbmFjaCBkZW0gVG9kZSAoQmVuZGVpZ2lkLCAyOS4gSnVuIDE5OTUsIDE0OjM1OjE5KToKRXMgZ2lidCBET0NIIGVpbiBMZWJlbiBuYWNoIGRlbSBUb2RlLCBJbmNsLiBNYWdpZToKCkR1IHNjaGxhZWdzdCBkZW4gR3Jvc3N3ZXNpciBkZXIgWGFudGkgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KRGVyIEdyb3Nzd2VzaXIgZGVyIFlhbnRpIGZhZWxsdCB0b3QgenUgQm9kZW4uCkVpbiBYYW50aS1TY2h3ZXJ0IGxvZXN0IHNpY2ggaW4gTHVmdCBhdWYuCkVpbiBHcm9zc3dlaXNyIGRlciBYYW50aSBzdGVja3QgZWluIFhhbnRpLVNjaHdlcnQgenVydWVjay4KCkhhYiBlcyBqYSBzY2hvbiBpbW1lciBnZXd1c3N0IQogWicgcGFyIFNlcnZ1LAogICAgICAgICAgIEJlbmRlaWdpZAoKKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIGxldHp0ZW4gNyBTZWt1bmRlbi4uLiAoTXVwZmVsLCAyOS4gSnVuIDE5OTUsIDE3OjM2OjIwKToKQXJtYWdlZGRvbiBydWZ0OiBUZWlsZSBtaXIgbWl0LCB3ZW5uIER1IGluIGRlbiBMYWRlbiBnZWJyYWNodCB3ZXJkZW4gd2lsbHN0IQpBcm1hZ2VkZG9uIHJ1ZnQ6IEluICA3IFNla3VuZGVuIHdlcmRlIGljaCBkaWUgV2VsdCB6ZXJzdG9lcmVuIHVuZCBuZXUKQXJtYWdlZGRvbiBydWZ0OiBlcnNjaGFmZmVuIQpEZXIgUmF1Y2ggZGVzIEpvaW50cyBodWVsbHQgRGljaCBpbiBkaWNrZSBSYXVjaHdvbGtlbiBlaW4uIER1IGZ1ZWhsc3QgRGljaAp3aWUgaW0gc2llYnRlbiBIaW1tZWwuCiAgR3VtcHkgZ3JlaWZ0IEFybWFnZWRkb24gbWl0IGVpbmVtIEJsdXRzYXVnZXItU2Nod2VydCBhbi4KICBHdW1weSB0cmlmZnQgQXJtYWdlZGRvbiBzZWhyIGhhcnQuCiAgQmVuZGVpZ2lkIGdyZWlmdCBBcm1hZ2VkZG9uIG1pdCBlaW5lbSBncnVlbi1tYXR0ZW4gQmx1dHNhdWdlci1TY2h3ZXJ0IGFuLgogIEJlbmRlaWdpZCB0cmlmZnQgQXJtYWdlZGRvbiBoYXJ0LgogIEx3YXhhbmEgZ3JlaWZ0IEFybWFnZWRkb24gbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4KICBMd2F4YW5hIHRyaWZmdCBBcm1hZ2VkZG9uIGhhcnQuCiAgQXJtYWdlZGRvbiBncmVpZnQgTHdheGFuYSBhbi4KICBBcm1hZ2VkZG9uIHZlcmZlaGx0IEx3YXhhbmEuCktlbGRlciB0cm9tbWVsdCB2b3IgTGFjaGVuIG1pdCBkZW4gSGFlbmRlbiBhdWYgZGVuIEJvZGVuLgpBbmNhbGFnb24gcHJ1c3RldCBsYXV0aGFscyBsb3MuCkJlbmRlaWdpZCBzdGVja3QgZWluIGdydWVuLW1hdHRlcyBCbHV0c2F1Z2VyLVNjaHdlcnQgenVydWVjay4KQmVuZGVpZ2lkIHdpcmZ0IGVpbmVuIEZldWVyYmFsbCBuYWNoIEFybWFnZWRkb24uCiAgQmVuZGVpZ2lkIHRyaWZmdCBBcm1hZ2VkZG9uIHNlaHIgaGFydC4KJSBDb25uZWN0aW9uIHRvIE1HIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCi0tLS0gTm8gd29ybGQgLS0tLQoKLi4uYWJlciBuaWNodCBoYXJ0IGdlbnVnIDotKQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBNYWdpZXIgdW5kIGlocmUgUnVicmlrZW4gKER1cmlhbiwgMzAuIEp1biAxOTk1LCAxNDozMjoxNik6CkhhbGxvIExldXRlIQoKQW4gZGllc2VyIFN0ZWxsZSBoYWx0ZSBpY2ggZnVlciBub2V0aWcsIG1hbCB3aWVkZXIgZGVuIEJld2VpcyBkYWZ1ZXIKYW56dXRyZXRlbiwgZGFzcyB3aXIgTWFnaWVyIHVucyBzdGV0cyBhdWYgaG9oZW0gbGl0ZXJhcmlzY2hlbiBOaXZlYXUKdW50ZXJoYWx0ZW4sIHVtIGRpZSBzY2h3ZXJ3aWVnZW5kZW4gUHJvYmxlbWVuIGRlcyBNb3JnZW5HcmF1ZW5zIHp1CmJld2FlbHRpZ2VuLiBTbyBzY2hyaWViIHVuc2VyIGFsbHNlaXRzIGFuZ2VzZWhlbmVyIE1pdG1hZ2llcgpQdGVwcGljIGZvbGdlbmRlbiBpbmhhbHRzcmVpY2hlbiBBcnRpa2VsOgoKUnVicmlrIDIxOiBtYWdpZXIuZ2lsZGVuLCBBcnRpa2VsOiAzNSB2b24gMzUKUmU6IFJlOiBIaWxmZSBnZXN1Y2h0LiAoUHRlcHBpYywgMzAuIEp1biAxOTk1LCAxMzozMDo0Myk6CihCZXp1ZzogQXJ0aWtlbCAzNCB2b24gQXp6dXJvIHZvbSAzMC4gSnVuIDE5OTUsIDAwOjEzOjIxKQphdWNoIGhhYmVuIHdpbGwhCgoKRGllcyBBdXNzYWdlIGRpZXNlcyBBcnRpa2VsIHNwcmluZ3Qgc28gc3RhcmsgaW5zIEF1Z2UsIGRhc3MgZGVtIG5peAptZWhyIGhpbnp1enVmdWVnZW4gaXN0IQoKLSBEdXJpYW4KCjotKQpQLlMuOiBJY2ggd2Vpc3MsIHNvd2FzIG1hY2h0IG1hbiBuaWNodCwgYWJlciBpY2ggZmFuZCBkZW4gQXJ0aWtlbCB3aXJrbGljaAprb2VzdGxpY2gsIGljaCBtdXNzdGUgaWhuIHBvc3RlbiwgbmljaHQgaGF1ZW4gYml0dGUgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgogRGVyIEh5ZHJhd29scGVydGluZ2VyIGdyZWlmdCBEaWNoIG1pdCBkZW0gTHVjaHNrb3BmIGFuLiAoQmFtYmVsLCAzMC4gSnVuIDE5OTUsIDE3OjEzOjE1KToKICBEZXIgSHlkcmF3b2xwZXJ0aW5nZXIgdHJpZmZ0IERpY2ggc2VociBoYXJ0LgogIERlciBIeWRyYXdvbHBlcnRpbmdlciBncmVpZnQgRGljaCBtaXQgZGVtIExpYmVsbGVua29wZiBhbi4KICBEZXIgSHlkcmF3b2xwZXJ0aW5nZXIgdHJpZmZ0IERpY2ggaGFydC4KICBEZXIgSHlkcmF3b2xwZXJ0aW5nZXIgZ3JlaWZ0IERpY2ggbWl0IGRlbSBEYWNoc2tvcGYgYW4uCiAgRGVyIEh5ZHJhd29scGVydGluZ2VyIHRyaWZmdCBEaWNoLgogIERlciBIeWRyYXdvbHBlcnRpbmdlciBncmVpZnQgRGljaCBtaXQgZGVtIEZsZWRlcm1hdXNrb3BmIGFuLgogIERlciBIeWRyYXdvbHBlcnRpbmdlciB0cmlmZnQgRGljaCBzZWhyIGhhcnQuCiAgRGVyIEh5ZHJhd29scGVydGluZ2VyIGdyZWlmdCBEaWNoIG1pdCBkZW0gRmlzY2hvdHRlcmtvcGYgYW4uCiAgRGVyIEh5ZHJhd29scGVydGluZ2VyIHRyaWZmdCBEaWNoLgogIERlciBIeWRyYXdvbHBlcnRpbmdlciBncmVpZnQgRGljaCBtaXQgZGVtIFJlaWhlcmtvcGYgYW4uCiAgRGVyIEh5ZHJhd29scGVydGluZ2VyIHRyaWZmdCBEaWNoIGhhcnQuCiAgRGVyIEh5ZHJhd29scGVydGluZ2VyIGdyZWlmdCBEaWNoIG1pdCBkZW0gV2FzY2hiYWVya29wZiBhbi4KICBEZXIgSHlkcmF3b2xwZXJ0aW5nZXIgdHJpZmZ0IERpY2ggaGFydC4KW1RvZDpdIEVpbiBIeWRyYXdvbHBlcnRpbmdlciBoYXQgZ2VyYWRlIFdvbHBpZnJldW5kIHVtZ2VicmFjaHQuCltUb2Q6RWluIEh5ZHJhd29scGVydGluZ2VyXSBXZXIgd2FycyBkZW5uIG51bj8gRGVyIFdpZGRlci0sIERhY2hzLSwgR2FlbnNlLC0KW1RvZDpFaW4gSHlkcmF3b2xwZXJ0aW5nZXJdIEZsZWRlcm1hdXMtLCBSdWVzc2VsdGllci0sIExpYmVsbGVuLSwgV2lkZGVyLSwKW1RvZDpFaW4gSHlkcmF3b2xwZXJ0aW5nZXJdIEZpc2Nob3R0ZXItLCBXYXNjaGJhZXItLCBSZWloZXItLCBFaWNoaG9lcm5jaGVuLQpbVG9kOkVpbiBIeWRyYXdvbHBlcnRpbmdlcl0gb2RlciBQb2xhcmZ1Y2hza29wZj8KICBEZXIgSHlkcmF3b2xwZXJ0aW5nZXIgZ3JlaWZ0IERpY2ggbWl0IGRlbSBQb2xhcmZ1Y2hza29wZiBhbi4KICBEZXIgSHlkcmF3b2xwZXJ0aW5nZXIgdHJpZmZ0IERpY2guCiAgRGVyIEh5ZHJhd29scGVydGluZ2VyIGdyZWlmdCBEaWNoIG1pdCBkZW0gUnVlc3NlbHRpZXJrb3BmIGFuLgogIERlciBIeWRyYXdvbHBlcnRpbmdlciB0cmlmZnQgRGljaCBoYXJ0LgogIERlciBIeWRyYXdvbHBlcnRpbmdlciBncmVpZnQgRGljaCBtaXQgZGVtIEdhZW5zZWtvcGYgYW4uCiAgRGVyIEh5ZHJhd29scGVydGluZ2VyIHRyaWZmdCBEaWNoLgogIERlciBIeWRyYXdvbHBlcnRpbmdlciBncmVpZnQgRGljaCBtaXQgZGVtIEVpY2hob2VybmNoZW5rb3BmIGFuLgogIERlciBIeWRyYXdvbHBlcnRpbmdlciB0cmlmZnQgRGljaC4KICBEZXIgSHlkcmF3b2xwZXJ0aW5nZXIgZ3JlaWZ0IERpY2ggbWl0IGRlbSBXaWRkZXJrb3BmIGFuLgogIERlciBIeWRyYXdvbHBlcnRpbmdlciBzY2hsYWVndCBEaWNoIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCgoKIEphamEgc29nYXIgbm9jaCBhdWYgTGVpY2hlbiBlaW5wcnVlZ2VsbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVFNoaXJ0cyEhIChDYXR3ZWF6bGUsICA2LiBKdWwgMTk5NSwgMTk6MzU6NDQpOgojISBybj1UYW5rZ2lybCBydD04MDQ5MzI3NTgKW1ZlcmxlZ3Qgdm9uIHBhcnR5LCBZZW5kaSwgIDUuIEp1bCAxOTk1LCAyMDo1MjozNF06CgpLbGFyLi4uIEVpbiBncm9zc2VzLCBHUk9PT09TU0VTLCByb3R1bXJhbmRldGVzIExvY2ggaW4gQmF1Y2huYWJlbGhvZWhlLAp1bmQgYXVmIGRlciBSdWVja3NlaXRlIHN0ZWh0IFRhbmtnaXJsIHVuZCBzYWd0OgoKIkRlciBUeXAsIGRlbSBkaWVzZXMgU2NoZWlzc3RlaWwgdm9yaGVyIGdlaG9lcnRlLCBoYXQgYXVjaCBzbyBkb29mIGdlZnJhZ3QsCiB3YXMgTW9yZ2VuR3JhdWVuIGhlaXNzdC4uLiIgICAgIEtycnJyLVRzY2hha2trIQoKSGF0IHp1bWluZGVzdCBlaW5lbiBQb2ludGVyIGF1ZiBkYXMgTVVELCB3ZW5uIGF1Y2ggZnJhZ2xpY2ggaXN0LCBvYiBpaG0gamUKZ2Vmb2xndCB3aXJkLi4uCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFRTaGlydHMhISAoQ2F0d2VhemxlLCAgNi4gSnVsIDE5OTUsIDE5OjM1OjUzKToKIyEgcm49WWVuZGkgcnQ9ODA0OTcwMzU0CltWZXJsZWd0IHZvbiBwYXJ0eSwgQ2F0d2VhemxlLCAgNS4gSnVsIDE5OTUsIDIwOjU0OjQyXToKSG0sIHdpZSB3YWVycyBtaXQgWldFSSBMb2VjaGVybiB3ZWl0IFVFQkVSIGRlbSBCYXVjaG5hYmVsIDotKQpIZWhlaCA6KQpZVEMKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBUU2hpcnRzISEgKENhdHdlYXpsZSwgIDYuIEp1bCAxOTk1LCAxOTozNTo1OSk6CiMhIHJuPUNhdHdlYXpsZSBydD04MDQ5NzA0ODIKW1ZlcmxlZ3Qgdm9uIHBhcnR5LCBBdWdyYSwgIDUuIEp1bCAxOTk1LCAyMTowMDoyMV06ClNjaGFlbSBkaWNoITopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVFNoaXJ0cyEhIChDYXR3ZWF6bGUsICA2LiBKdWwgMTk5NSwgMTk6MzY6MTQpOgojISBybj1DYXR3ZWF6bGUgcnQ9ODA0OTcwNDgyCltWZXJsZWd0IHZvbiBwYXJ0eSwgU2NocnVtcGZpLCAgNS4gSnVsIDE5OTUsIDIyOjIwOjM1XToKV2llIHdhZXJzIG1pdCBEUkVJIExvZWNoZXJuIHVudGVyIGRlbSBCYXVjaG5hYmVsPwpIQUhBSEEgOy0pClNjaHJ1bXBmaQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFRTaGlydHMhISAoQ2F0d2VhemxlLCAgNi4gSnVsIDE5OTUsIDE5OjM2OjIwKToKIyEgcm49U2NocnVtcGZpIHJ0PTgwNDk3NTYzNQpbVmVybGVndCB2b24gcGFydHksIEN1Y2h1bGxpbiwgIDUuIEp1bCAxOTk1LCAyMjoyMTo0Nl06CgpXaWUgd2FlcnMgbWl0IDIgZnVlciBkaWUgQXJtZSwgZWluZXMgZnVlciBkZW4gS29wZiB1bmQgZWlucyBmdWVyIGRlbiBSZXN0PwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFRTaGlydHMhISAoQ2F0d2VhemxlLCAgNi4gSnVsIDE5OTUsIDE5OjM2OjMxKToKIyEgcm49Q3VjaHVsbGluIHJ0PTgwNDk3NTcwNgpbVmVybGVndCB2b24gcGFydHksIE11cGZlbCwgIDUuIEp1bCAxOTk1LCAyMjo0MjowN106CnNlaHIga2x1ZyBjdWNodWxsaW4sIHNlaHIga2x1Zy4gZGEgc29sbCBub2NobWFsIGVpbmVyIHNhZ2VuIHVuc2VyZSBTcGllbGVyCmtvZW5uZW4gbmljaHQgbWl0ZGVua2VuLgoKLW11cGZlbC0KUC5TLjogZGVmaW5pZXJlICdSZXN0JyA6LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBUU2hpcnRzISEgKENhdHdlYXpsZSwgIDYuIEp1bCAxOTk1LCAxOTozNjozNyk6CiMhIHJuPU11cGZlbCBydD04MDQ5NzY5MjcKW1ZlcmxlZ3Qgdm9uIHBhcnR5LCBDdWNodWxsaW4sICA1LiBKdWwgMTk5NSwgMjI6NDQ6MjNdOgoKUmVzdD8gT2NoIGRhcyBrYW5uIG1hbCBtZWhyLCBtYWwgd2VuaWdlciBzZWluLiBCZWkgWWFudHJvIHVuZCBuZW0gUy1Uc2hpcnQKaXN0IGRlciBSZXN0IHdvaGwgZWhlciBtZWhyLi4uIGJlaSBTY2hydW1wZmkgdW5kIG5lbSBYWEwuLi4gd2VsY2hlciBSZXN0PyA6KQotY3VjaC0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogVFNoaXJ0cyEhIChDYXR3ZWF6bGUsICA2LiBKdWwgMTk5NSwgMTk6MzY6NTApOgojISBybj1DdWNodWxsaW4gcnQ9ODA0OTc3MDYzCltWZXJsZWd0IHZvbiBwYXJ0eSwgSGF0ZSwgIDUuIEp1bCAxOTk1LCAyMzowMjozN106Ck51bmphLCBpY2ggd3VlcmRlIGRhcyBtaXQgZGVtIFhYTCBlaGVyIGF1ZiAuLi4uIG9oZ290dCBpY2ggaGFiZSBkZW4gTmFtZW4KdmVyZ2Vzc2VuLiBEYXMgZ2VodCBtaXIgYWJlciBhdWNoIHN0YWVuZGlnIHNvLi4uTUlTVApIYXRlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBUU2hpcnRzISEgKENhdHdlYXpsZSwgIDYuIEp1bCAxOTk1LCAxOTozNjo1OCk6CiMhIHJuPUhhdGUgcnQ9ODA0OTc4MTU3CltWZXJsZWd0IHZvbiBwYXJ0eSwgRGFuY2VyLCAgNi4gSnVsIDE5OTUsIDAyOjE3OjUzXToKSmFqYSwgZXJzdGUgQW56ZWljaGVuIHZvbiBJZGxlLVZlcmthbGt1bmcsIEhhdGUgOikgSWNoIGhhYiBsZXR6dGVucwpHZXJ1ZWNodGUgZ2Vob2VydCwgZGFzcyBKb2YgZWluZW4gQ29sYS1BdXRvbWF0ZW4gbWl0IE1hbWEgdW5kIFJvY2h1cyBtaXQKUGFwYSBhbmdlc3Byb2NoZW4gaGF0Li4ubnVuamEgOikKCkRhbmNlcgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBhZWtzY2huIChDYXR3ZWF6bGUsICA2LiBKdWwgMTk5NSwgMTk6Mzc6NDgpOgojISBybj1Lb3R6YnJvY2tlbiBydD04MDUwMjQ4OTgKW1ZlcmxlZ3Qgdm9uIHBhcnR5LCBSeHRlY2gsICA2LiBKdWwgMTk5NSwgMTI6MTg6MjVdOgphbHNvIGJlaW0ga2lja2VuIGJpbiBpY2ggbmF0dWVybGljaCBhdWNoIGRhYmVpLCBhYmVyIGljaCBnbGF1YiBuaWNoICh6dWNrCmFjaHNlbG4pIG9iIHdpciBkYW1pdCBaZXBoeXIsIFRhbWFyYSB1bmQgQWxpbmUgYmVnaGx1ZWNrZW4KClJ4IGxhZXNzdCBzaWNoIGdlcm4gZWluZXMgYmVzc2VyZW4gYmVsZWhyZW4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBhZWtzY2huIChDYXR3ZWF6bGUsICA2LiBKdWwgMTk5NSwgMTk6Mzc6NTQpOgojISBybj1SeHRlY2ggcnQ9ODA1MDI1OTA1CltWZXJsZWd0IHZvbiBwYXJ0eSwgRGFuY2VyLCAgNi4gSnVsIDE5OTUsIDEyOjI4OjA4XToKRHUgc29sbHN0IGphIG5pY2h0IFplcGh5ciwgVGFtYXJhIG9kZXIgQWxpbmUga2lja2VuLi4uCgpEYW5jZXIKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogYWVrc2NobiAoQ2F0d2VhemxlLCAgNi4gSnVsIDE5OTUsIDE5OjM4OjA4KToKIyEgcm49RGFuY2VyIHJ0PTgwNTAyNjQ4OApbVmVybGVndCB2b24gcGFydHksIFJ4dGVjaCwgIDYuIEp1bCAxOTk1LCAxMjozODoyOF06CmtpY2tlbj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBhZWtzY2huIChDYXR3ZWF6bGUsICA2LiBKdWwgMTk5NSwgMTk6Mzg6MTIpOgojISBybj1SeHRlY2ggcnQ9ODA1MDI3MTA4CltWZXJsZWd0IHZvbiBwYXJ0eSwgRGFuY2VyLCAgNi4gSnVsIDE5OTUsIDEyOjM5OjE4XToKayB3aWUga29ucmFkLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogYWVrc2NobiAoQ2F0d2VhemxlLCAgNi4gSnVsIDE5OTUsIDE5OjM4OjE5KToKIyEgcm49RGFuY2VyIHJ0PTgwNTAyNzE1OApbVmVybGVndCB2b24gcGFydHksIFJ4dGVjaCwgIDYuIEp1bCAxOTk1LCAxMjo0MTowNV06CndhciBqYSBudXIgbmUgZnJhZ2UKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBhZWtzY2huIChDYXR3ZWF6bGUsICA2LiBKdWwgMTk5NSwgMTk6Mzg6MjMpOgojISBybj1SeHRlY2ggcnQ9ODA1MDI3MjY1CltWZXJsZWd0IHZvbiBwYXJ0eSwgRGFuY2VyLCAgNi4gSnVsIDE5OTUsIDEyOjQxOjM4XToKZiB3aWUgZnJhZ2U/IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogYWVrc2NobiAoQ2F0d2VhemxlLCAgNi4gSnVsIDE5OTUsIDE5OjM4OjI3KToKIyEgcm49RGFuY2VyIHJ0PTgwNTAyNzE1OApbVmVybGVndCB2b24gcGFydHksIFJvY2h1cywgIDYuIEp1bCAxOTk1LCAxMjo1MjoyMV06ClNhbGkgemFlbWUhClNlaXQgd2FubiB3aXJkIEZvbnJhZCBtaXQgIksiIGdlc2NocmllYmVuPwogID06LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBhZWtzY2huIChDYXR3ZWF6bGUsICA2LiBKdWwgMTk5NSwgMTk6Mzg6MzkpOgojISBybj1Sb2NodXMgcnQ9ODA1MDI3OTQxCltWZXJsZWd0IHZvbiBwYXJ0eSwgWmVwaHlyLCAgNi4gSnVsIDE5OTUsIDEzOjE5OjEzXToKYWxzbyBuYWUgLSBrYXVtIGlzKHMpdCBtYW4gbWFuIGlubmUgTWVuc2EuLi4uIHRzdHN0cwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGFla3NjaG4gKENhdHdlYXpsZSwgIDYuIEp1bCAxOTk1LCAxOTozODo0Myk6CiMhIHJuPURhbmNlciBydD04MDUwMjcxNTgKW1ZlcmxlZ3Qgdm9uIHBhcnR5LCBFbmd5d3VjaywgIDYuIEp1bCAxOTk1LCAxMzoyNDowM106CkFsc28gc29sYW5nIGlociBraWNrZW4gbWl0IEsgc2NocmVpYnQsIHdlcmRlIGljaCBtaWNoIGhvZWZsaWNoIHp1cnVlY2toYWx0ZW4uCgpFbmd5IC0gaGF0IGltbWVyIG5vY2ggd2FzIGdlZ2VuIHNwb3J0bGljaGUgQmV0YWV0aWd1bmcKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpub2NobWFsIHNwb3J0IChDYXR3ZWF6bGUsICA2LiBKdWwgMTk5NSwgMTk6Mzk6MzMpOgpbVmVybGVndCB2b24gcGFydHksIEtvdHpicm9ja2VuLCAgNi4gSnVsIDE5OTUsIDE0OjE1OjE4XToKaG0sIGthbm4gbWFuIHNpY2ggZGVubiBkYSBpcmdlbmR3byBmcmlzY2ggbWFjaGVuL2RpZSBuYXNlIHB1ZGVybj8gbmFjaG0Kc3BvcnQ/CktvdHppCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5vY2htYWwgc3BvcnQgKENhdHdlYXpsZSwgIDYuIEp1bCAxOTk1LCAxOTozOTozOSk6CiMhIHJuPUtvdHpicm9ja2VuIHJ0PTgwNTAzMjkxOApbVmVybGVndCB2b24gcGFydHksIFJ4dGVjaCwgIDYuIEp1bCAxOTk1LCAxNDoxODozN106CmtsYXIsIGltIGFhc2VlCnd1ZXJnCgpyeAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbm9jaG1hbCBzcG9ydCAoQ2F0d2VhemxlLCAgNi4gSnVsIDE5OTUsIDE5OjM5OjQzKToKIyEgcm49Unh0ZWNoIHJ0PTgwNTAzMzExNwpbVmVybGVndCB2b24gcGFydHksIFJ4dGVjaCwgIDYuIEp1bCAxOTk1LCAxNDoxOTozM106Cm9kZXIgd2lyIGR1c2NoZW4gYWxsZSBiZWkgam9mIG9kZXIgY2F0IHp1IGhhdXNlIDo9KQpkYXMgd2lyZCBlaW4gc3Bhc3MKCmdpYiBtaXIgYXVjaCBtYWwgbmVuIHRyb3BmZW4gd2Fzc2VyCgptYW5uc2NoYWZ0c3dlaXNlCgprb21tIEM0CgpraWNoZXJuZCBSeAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IG5vY2htYWwgc3BvcnQgKENhdHdlYXpsZSwgIDYuIEp1bCAxOTk1LCAxOTozOTo0OSk6CiMhIHJuPVJ4dGVjaCBydD04MDUwMzMxNzMKW1ZlcmxlZ3Qgdm9uIHBhcnR5LCBaZXBoeXIsICA2LiBKdWwgMTk5NSwgMTQ6MjE6NDldOgpGcmVjaGtla3MsIGljaCBzYWdzIGphLi4uCgpEdSBrcmllZ3N0IGtlaW5lbiBUcm9wZmVuIFdhc3NlciwgRHUga3JpZWdzdCBuZW4ga2FsdGVuLApuYXNzZW4gV2FzY2hsYXBwZW4gbWl0dGVuIGlucyBHZXNpY2h0IQoKWmVwaHlyIC0gZnJlY2ggZ3JpbnNlbmQKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBub2NobWFsIHNwb3J0IChDYXR3ZWF6bGUsICA2LiBKdWwgMTk5NSwgMTk6Mzk6NTQpOgojISBybj1aZXBoeXIgcnQ9ODA1MDMzMzA5CltWZXJsZWd0IHZvbiBwYXJ0eSwgUnh0ZWNoLCAgNi4gSnVsIDE5OTUsIDE0OjIyOjI3XToKb2hqYQp1bmQgZGFubiBzY2hvZW4gcnViYmVsbgoKcngKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBub2NobWFsIHNwb3J0IChDYXR3ZWF6bGUsICA2LiBKdWwgMTk5NSwgMTk6NDA6MjgpOgojISBybj1SeHRlY2ggcnQ9ODA1MDMzMzQ3CltWZXJsZWd0IHZvbiBwYXJ0eSwgWmVwaHlyLCAgNi4gSnVsIDE5OTUsIDE0OjIzOjI2XToKTml4IHJ1YmJlbG4gLSBhdXN3cmluZ2VuLCB1ZWJlciBEZWluZXIgTmFzZSEKQW0gYmVzdGVuIGt1cnogdm9yIGRlbSBBdWZ3YWNoZW4gOikKClplcGggLSB3aXJkIGltbWVyIGZyZWNoZXIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBub2NobWFsIHNwb3J0IChDYXR3ZWF6bGUsICA2LiBKdWwgMTk5NSwgMTk6NDA6NDEpOgojISBybj1aZXBoeXIgcnQ9ODA1MDMzNDA2CltWZXJsZWd0IHZvbiBwYXJ0eSwgUnh0ZWNoLCAgNi4gSnVsIDE5OTUsIDE0OjI0OjM3XToKaG0sIGF1ZndhY2hlbj8KYWxzbyBpY2ggd29sbHJldyBlaWdlbnRsaWNoIG5pY2h0IGdsZWljaCBuZSBnYW56ZSBuYWNodCBtaXQgZGlyIHZlcmJyaW5iZ2VuCgphYmVyIGR1IGthbm5zdCBtaWNoIGphIG5vY2htYWwgbGllYiBiaXR0ZW4KCnJ4IHp1IGZhdWwgZnVlciBuZSBnYW56ZSBuYWNodAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IG5vY2htYWwgc3BvcnQgKENhdHdlYXpsZSwgIDYuIEp1bCAxOTk1LCAxOTo0MDo1Myk6CiMhIHJuPVJ4dGVjaCBydD04MDUwMzM0NzcKW1ZlcmxlZ3Qgdm9uIHBhcnR5LCBLYWVuZ3VydWgsICA2LiBKdWwgMTk5NSwgMTQ6MjY6MDddOgpXaXJkIGpldHp0IGluIHBhcnR5IGdlbXVlbGx0IG9kZXIgd2FzPwpMYW5nc2FtIG5lcnZ0cyBhdWNoIG1pY2guLi4gSW4gZC5zY2hhdHRlbndlbHQgc2VoZQppY2hzIGphIGVpbiwgZWluZmFjaCB3ZWlscyBLdWx0IGlzdCA6KSkpCgogS2Flbmd1cnVoIC0gbXVlbGx0IGltbWVyIG5vY2gKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBub2NobWFsIHNwb3J0IChDYXR3ZWF6bGUsICA2LiBKdWwgMTk5NSwgMTk6NDE6MzcpOgojISBybj1SeHRlY2ggcnQ9ODA1MDMzNDc3CltWZXJsZWd0IHZvbiBwYXJ0eSwgWmVwaHlyLCAgNi4gSnVsIDE5OTUsIDE0OjI2OjM0XToKV2VyIGhhdCBkZW5uIHdhcyB2b24gTmFjaHQgZ2V0aXBwdD8gOikpCkVpbiByaWNodGlnZXIgQWJlbnRldXJlciBzY2hsYWVmdCBkb2NoIG5pY2h0IG5hY2h0cy4uCgpaZXBoIC0ga2ljaGVybmQgenVyIEFid2VjaHNsdW5nCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogbm9jaG1hbCBzcG9ydCAoQ2F0d2VhemxlLCAgNi4gSnVsIDE5OTUsIDE5OjQxOjQxKToKIyEgcm49WmVwaHlyIHJ0PTgwNTAzMzU5NApbVmVybGVndCB2b24gcGFydHksIEFuYWtpbiwgIDYuIEp1bCAxOTk1LCAxNDoyOTo1Nl06CkphamEgWmVwaHlyIGR1IG11c3N0IGRhcyBzYWdlbi4uLi4KCkFuYWtpbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBub2NobWFsIHNwb3J0IChDYXR3ZWF6bGUsICA2LiBKdWwgMTk5NSwgMTk6NDE6NTApOgojISBybj1BbmFraW4gcnQ9ODA1MDMzNzk2CltWZXJsZWd0IHZvbiBwYXJ0eSwgWmVwaHlyLCAgNi4gSnVsIDE5OTUsIDE0OjMxOjA0XToKc2ljaGVyIGRvY2ggOikKClplcGggLSB0aXBwdCBhdXMgRXJmYWhydW5nLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBhZWtzY2huIChDYXR3ZWF6bGUsICA2LiBKdWwgMTk5NSwgMTk6NDI6MjIpOgojISBybj1Fbmd5d3VjayBydD04MDQ5NTA1MzMKW1ZlcmxlZ3Qgdm9uIHBhcnR5LCBTbnVnZ2xlLCAgNi4gSnVsIDE5OTUsIDE1OjE1OjQ5XToKUnh0ZWNoLCB3aWxsc3QgRHUgZXJuc3RoYWZ0IGluIEtvbWJpIHVuZCBtaXQgSGVsbSBWb2xsZXliYWVsbGUgYmFsbGVybj8/CgpZVCBTbnVnZ2xlLCBpc3QgYXVjaCBmdWVybiBiaXNzY2hlbiBiYWxsZXJuICh2b2xsZXkpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogYWVrc2NobiAoQ2F0d2VhemxlLCAgNi4gSnVsIDE5OTUsIDE5OjQyOjMwKToKIyEgcm49U251Z2dsZSBydD04MDUwMzY1NDkKW1ZlcmxlZ3Qgdm9uIHBhcnR5LCBSeHRlY2gsICA2LiBKdWwgMTk5NSwgMTU6MjA6MDJdOgpkYXJmIGljaCBkZW4gaGVsbSB3ZW5pZ3N0ZW5zIGFic2V0emVuPyBvZGVyIGJpbiBpY2ggenUgaGFlc3NsaWNoIHVuZCBhbGxlCmxhdWZlbiBkYW5uIHdlZz8KCmFsc28gaW4gbGVkZXJob3NlIHVuZCBtb3BlZHN0aWVmZWxuIGhhYiBpY2ggc2Nob24gbWFsIGdlZnVzc2VrdCwgaWNoIGthbm4KZXVjaCBzYWdlbiwgZGFzcyByaWVjaHQgLi4uCgpzY2h3ZWluaXNjaCBSWAoKUFM6IHp1bSBkdXNjaGVuIHppZWggaWNoIGRlbiBrb21iaSBkYW5uIGF1cyB6ZW9oeXIgOikpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogYWVrc2NobiAoQ2F0d2VhemxlLCAgNi4gSnVsIDE5OTUsIDE5OjQyOjM3KToKIyEgcm49Unh0ZWNoIHJ0PTgwNTAzNjgwMgpbVmVybGVndCB2b24gcGFydHksIE9ldHRpLCAgNi4gSnVsIDE5OTUsIDE2OjAwOjQzXToKQWFhYWxzbyAhClZvbGxleWJhbGwgc3BpZWwgaWNoIG51ciB3ZW5uIFJ1ZGkgbWl0aHVlcGZ0IChhYmVyIGhlZnRpZwpLaWNrZW4gbml0IEsgd2llIEtvbnJhZCBpcyBvLksuLCBtaXQgSyB3aWUgRm9lbiwgbmEgamEsIGtvbW10IGF1ZiBkZW4gR2VnbmVyCmFuLi4uCkdlZ2VuIENhcmFtYm9sYWdlIGhhYiBpY2ggYXVjaCBuaXgsIGFsc28gaWNoIG1hY2ggdWViZXJhbGwgbWl0LCBhYmVyIGFtCmxpZWJ0ZW4gZGEgd28gZGllIERhbWVuIG1pdCBkZW4gdGllZmVuIEF1c3NjaG5pdHRlbiBtaXRzcGllbGVuLgpUc2Nob2UKVm95ZXVyIE9ldHRpIDstKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBUU2hpcnRzISEgKENhdHdlYXpsZSwgIDYuIEp1bCAxOTk1LCAxOTo0Mjo0Myk6CiMhIHJuPURhbmNlciBydD04MDQ5ODk4NzMKW1ZlcmxlZ3Qgdm9uIHBhcnR5LCBIYXRlLCAgNi4gSnVsIDE5OTUsIDE3OjMzOjAyXToKSmV0enQgZmFlbGx0cyBtaXIgd2llZGVyIGVpbiwgYWVoLi4ubWlzdC4uLndpZSB3YXIgZGFzIG5vY2ggbWFsLCBPLi4uCk5laW4gRywgYWVoLCB1aG0uLi5hY2ggaWNoIGdsYXViZSBHIHdpZSBHYXRzYnkgd2Fycy4KQWJlciB3b3p1IGhhdHRlIGljaCBkZW4gTmFtZW4gZ2VicmF1Y2h0PwpIPyBvZWgsIGFjaGphIEhhdGUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogYWVrc2NobiAoQ2F0d2VhemxlLCAgNi4gSnVsIDE5OTUsIDE5OjQzOjA5KToKIyEgcm49RGFuY2VyIHJ0PTgwNTAyNjQ4OApbVmVybGVndCB2b24gcGFydHksIEd1eWJydXNoLCAgNi4gSnVsIDE5OTUsIDE5OjA0OjI4XToKLi4uc29uZGVybiBiZWdsdWVja2VuCgpndXlicnVzaAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ1MTogU0NIV1VQUERJV1VQUCEgKEd1bmR1ciwgIDYuIEp1bCAxOTk1LCAyMzowODo0Nyk6CiMhIHJuPVNjaHJ1bXBmaSBydD04MDQ5OTg3OTAKR3VuZHVyIHdpbGwgYXVjaCBlaW5zIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDUyOiBTQ0hXVVBQRElXVVBQISAoQXNtb2RpcywgIDcuIEp1bCAxOTk1LCAwOToyNTo0Mik6CiMhIHJuPUd1bmR1ciBydD04MDUwNjQ5MjcKVHN0cywgd2FzIHNvbGwgZGVubiBkYXMgbWl0IGRlbiBwYXJ0eWFydGlrZWxuPwpXZW5uIHNjaG9uIG11ZWxsZW4sIGRhbm4gcmljaHRpZyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDUzOiBTQ0hXVVBQRElXVVBQISAoTXlzdGl4LCAgNy4gSnVsIDE5OTUsIDEwOjI3OjIzKToKIyEgcm49QXNtb2RpcyBydD04MDUxMDE5NDIKU0FnIG1hbCAtIHNpbmQgd2lyIHdpcmtsaWNoIGVyc3QgYmVpIDQ1MyAtIGljaCBkYWNodGUgd2lyIHdhZXJlbiBzY2hvbm1hbAp3ZXNlbnRsaWNoIHdlaXRlcmdld2VzZW4gLSBiZWkgZGVuIGdhbnplbiBTY2htYXJybiBBcnRpa2VsbiBoYXQgbWFuIGphCmtvbXBsZXR0IGRpZSBVZWJlcnNpY2h0IHZlcmxvcmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDU0OiBTQ0hXVVBQRElXVVBQISAoRnJhZ2dsZSwgIDcuIEp1bCAxOTk1LCAxMDoyOTo1NSk6CiMhIHJuPU15c3RpeCBydD04MDUxMDU2NDMKSWNoIGF1Y2ggbWFsIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBub2NobWFsIHNwb3J0IChIaWdobGFuZGVyLCAgNy4gSnVsIDE5OTUsIDExOjA3OjA1KToKIyEgcm49Q2F0d2VhemxlIHJ0PTgwNTA1MjM4MwpBUkdMIQpDYXR3ZWF6bGUsIG11c3MgZGFzIHNlaW4sIC16aWcgQXJ0aWtlbCB6dSB2ZXJsZWdlbj8KU29vIGludGVyZXNzYW50IHNpbmQgZGllIGF1Y2ggbmljaHQsIGRhc3MgaWNoIGRpZSBub2NobWFsIGxlc2VuIHdpbGwuCiAgSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBub2NobWFsIHNwb3J0IChEYW5jZXIsICA3LiBKdWwgMTk5NSwgMTI6MTk6MjMpOgojISBybj1IaWdobGFuZGVyIHJ0PTgwNTEwODAyNQpHZW5hdSwgdW5kIHdlaWwgZGFzIHRvdGFsIHVlYmVyZmx1ZXNzaWcgd2FyIG1pdCBkZW0gVmVybGVnZW4sIGdpYnRzIGdsZWljaApub2NoIGVpbmVuIGxhbmd3ZWlsaWdlbiBEb2VkZWxhcnRpa2VsIGRhenUhCkFsc28gd2FzIG1hY2hlbiB3aXIgZGVubiBudW4/IFdvbGxpYmFsbCwgS2lja2VuLCBLaWNrZW4gb2RlciBTZWdlbG4/PyA6KQoKRGFuY2VyCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogbm9jaG1hbCBzcG9ydCAoUnh0ZWNoLCAgNy4gSnVsIDE5OTUsIDEyOjIzOjI3KToKIyEgcm49RGFuY2VyIHJ0PTgwNTExMjM2Mwp0amEsIGluIHNjaG1hcnJuIGthbm4gaWNoIGphIHJ1aGlnIGthZXNlIGFibGFzc2VuIDopKQp3aWUgd2FlcnMgZGVubiBtaXQga2lja2VuIGF1Zm0gc2VnZWxib290IHVuZCBkaWUgbWFlZGVscyBkdWVyZmVuIGltbWVyIGRlbgpiYWxsIHJhdXNob2xlbgoKZ3JpbnNlbmQgUngKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IG5vY2htYWwgc3BvcnQgKERhbmNlciwgIDcuIEp1bCAxOTk1LCAxMjo0NTozNSk6CiMhIHJuPVJ4dGVjaCBydD04MDUxMTI2MDcKRGVuIEJhbGwga2FubiBEZWluIEh1bmQgaG9sZW4sIGlyZ2VuZHdlciBtdXNzIGphIFJ1ZGVybiB3ZW5uIGtlaW4gV2luZCBpc3QgOykKCkRhbmNlcgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IG5vY2htYWwgc3BvcnQgKFJ4dGVjaCwgIDcuIEp1bCAxOTk1LCAxMjo0NjozMCk6CiMhIHJuPURhbmNlciBydD04MDUxMTM5MzUKaGFzdCBkdSBzY2hvbiBtYWwgbmVuIGJhZXIgbWl0IGh1bmQgZ2VzZWhlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IG5vY2htYWwgc3BvcnQgKERhbmNlciwgIDcuIEp1bCAxOTk1LCAxMjo0NzoxOSk6CiMhIHJuPVJ4dGVjaCBydD04MDUxMTM5OTAKaGFzdCBkdSBzY2hvbiBtYWwgbmVuIGJhZXIgbWl0IG1hZWRlbCBnZXNlaGVuPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogbm9jaG1hbCBzcG9ydCAoUnh0ZWNoLCAgNy4gSnVsIDE5OTUsIDEyOjUwOjA2KToKIyEgcm49RGFuY2VyIHJ0PTgwNTExNDAzOQpoZXksIGR1IGtsZWluZXMgc2Nod2VpbmNoZW4sIG5hdHVlcmxpY2ggaGFiIGljaCBzY2hvbiBtYWVkZWxzIG1pdCBiYWVyCmdlc2VoZW4gOikpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogbm9jaG1hbCBzcG9ydCAoRGFuY2VyLCAgNy4gSnVsIDE5OTUsIDEyOjUxOjI5KToKIyEgcm49Unh0ZWNoIHJ0PTgwNTExNDIwNgpuYSBndXQsIGhhc3QgZHUgc2Nob25tYWwgZWluZW4gYmFlciBtaXQgc2Nod2VpbmNoZW4gdW5kIG1hZWRlbHMgYXVmIGVpbmVtCnNlZ2VsYm9vdCBnZXNlaGVuIT8hPyA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBub2NobWFsIHNwb3J0IChSeHRlY2gsICA3LiBKdWwgMTk5NSwgMTI6NTI6NTUpOgojISBybj1EYW5jZXIgcnQ9ODA1MTE0Mjg5CmRhIGljaCBzb25zdCBrZWluZSBiYWVyZW4ga2VubmUgKGF1c3NlciBtaXIpIGthbm4gaWNoIGRhcyBuaWNodCBiZXN0YWV0aWdlbiwKZGEgaWNoIG51biB3aXJrbGljaCBlaGVyIGRlciBydWRlcnR5cCBiaW4gKCBkYSBrYW5uIG1hbiBrZWluZW4gbWFzdCBhbiBkaWUKYmlybmUga3JpZWdlbikKYWxzbyBiYWVyIG1pdCBtYWVkZWwgaW0gcnVkZXJib290IGlzdCBtaXIgbmVuIGJlZ3JpZmYKI3JlaWNodCBkYXM/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IG5vY2htYWwgc3BvcnQgKEFzbW9kaXMsICA3LiBKdWwgMTk5NSwgMTc6Mjc6MjgpOgojISBybj1SeHRlY2ggcnQ9ODA1MTE0Mzc1CkVpbiBCYWVyLCBkZXIgc2NocmVpYmVuIGthbm4gdW5kIGRhbm4gbm9jaCBhdWYgZWluZXIKQ29tcHV0ZXJ0YXN0YXR1ciBrb21tdCBtaXIgYXVjaCBrb21pc2NoIHZvciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZHVlbGwuLi4gKE11cGZlbCwgIDcuIEp1bCAxOTk1LCAxOTo1MzoxOCk6CmdyYWRlIGdlc2Vobi4uLgoKRWluIEJvdGUga29tbXQgaGVyZWluZ2VoYXN0ZXQgdW5kIGJlZ2lubnQgd2lsZCB6dSBmdWNodGVsbiB1bmQgenUKcGxhcHBlcm46CidCb3JpcyBoYXQgZ2VyYWRlIEFnYXNzaSB6dW0gRHVlbGwgaGVyYXVzZ2Vmb3JkZXJ0ISBJaHIgbXVlc3N0CnNjaG5lbGwgaW4gZGllIFd1ZXN0ZSB6dXIgS2FtcGZhcmVuYSBsYXVmZW4sIGRhcyBkdWVyZnQgaWhyIGV1Y2ggbmljaHQKZW50Z2VoZW4gbGFzc2VuIScKVW5kIHNjaG9uIGhhc3RldCBlciB3aWVkZXIgcmF1cy4KCmhpaGkKLW11cC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ1NTogU0NIV1VQUERJV1VQUCEgKEtoaWRhciwgIDguIEp1bCAxOTk1LCAwNzo0MjoxNCk6CiMhIHJuPUZyYWdnbGUgcnQ9ODA1MTA1Nzk1ClNvIGVpbiBNdXJrcywgaW1tZXIgd2VubiBtYW4gZXMgZ3JhZCBtYWwgTklDSFQgYnJhdWNodCBpc3QgbWFuIGF1ZiBkZXIKRmV1ZXJlYmVuZSB1bmQgZGllIE1QQSBpc3QgYXVzZ2VsZXNlbiAtJyUmJSQnIiEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpsZWVyZXIgc29ubnRhZyBtb3JnZW4gKEtldG9zLCAgOS4gSnVsIDE5OTUsIDA5OjUxOjE4KToKWmllbWxpY2ggbGVlciBTb25udGFncyBmcnVlaDoKMSBHYXN0CjMgU3BpZWxlcgo2IFNlaGVyCjIgTWFnaWVyCjEwMDAgTmV0enRvdGUgKGdlbmF1IDEwMDAhKQoKLSBLZXRvcyAtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXIgMTAwMC4gTmV0enRvdGU6IChLZXRvcywgIDkuIEp1bCAxOTk1LCAwOTo1MzowMSk6CkRlciAxMDAwLk5ldHp0b3RlIGhldXRlIGlzdDoKCiAgICAgICBCYXJ6aWJhbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmplYW1uZCwgdmVyendlaWZlbHQgZ2VzdWNodCA6KSAoUmVpbmVsZGUsICA5LiBKdWwgMTk5NSwgMTQ6MjI6NTEpOgpuZXVsaWNoIGJlaSBlaW5lciBtaXR0ZWlsdW5nIGFuIGVpbmVuIHVuc2ljaHRiYXJlbiBtYWdpZXI6CgpKZW1hbmQgbW9lY2h0ZSBnZXJhZGUgbmljaHQgZ2VzdG9lcnQgd2VyZGVuLgpEaWUgTWl0dGVpbHVuZyB3dXJkZSB2b24gZWluZW0ga2xlaW5lbiBLb2JvbGQgaW4gRW1wZmFuZyBnZW5vbW1lbi4KRXIgd2lyZCBzaWUgc3BhZXRlciB3ZWl0ZXJsZWl0ZW4hCktlaW4gc29sY2hlciBTcGllbGVyIGVpbmdlbG9nZ3QuCgpyZWluZWxkZSAtIHN1Y2h0IHVuc2ljaHRiYXJlIG1hZ3MgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBub2NobWFsIHNwb3J0IChXdXIsICA5LiBKdWwgMTk5NSwgMTY6MDI6MjApOgojISBybj1EYW5jZXIgcnQ9ODA1MTEyMzYzCgpOYSBnYXIgbml4IHZvbiBkZW0uLi4uYm93bGluZyBvZGVyIHNub29rZXIuLi4KCld1cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogbm9jaG1hbCBzcG9ydCAoU3RhaGxkb3JuLCAgOS4gSnVsIDE5OTUsIDE2OjU5OjI4KToKIyEgcm49V3VyIHJ0PTgwNTI5ODU0MAoKU25vb2tlcj8gRGVyIGlzdCBzY2hvbiBzZWl0IGVpbmVtIE1vbmF0IG5pY2h0IG1laHIgaGllciBnZXdlc2VuISAgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIEtvbW1lbnRhci4uIChaZXBoeXIsICA5LiBKdWwgMTk5NSwgMTc6MDI6MjYpOgpLaGlkYXIgbmltbXQga2xhcmVyZSBVbXJpc3NlIGFuLgpLaGlkYXIgc2FndDogSGkhCkNhcmFkaHJhcyB6aWVodCBlaW5lbiBTaWxiZXJyaW5nIGF1cy4KQ2FyYWRocmFzIGdpYnQgS2hpZGFyIGRlbiBTaWxiZXJyaW5nLgpLaGlkYXIgZ2lidCBDYXJhZGhyYXMgZGVuIFNpbGJlcnJpbmcuCktoaWRhciBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpDYXJhZGhyYXMgd2FlbHp0IHNpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgpLaGlkYXIgemllaHQgZWluZW4gU2lsYmVycmluZyBhdXMuCktoaWRhciBnaWJ0IENhcmFkaHJhcyBkZW4gU2lsYmVycmluZy4KQ2FyYWRocmFzIHppZWh0IGVpbmVuIFNpbGJlcnJpbmcgYW4uCktoaWRhciBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KQ2FyYWRocmFzIHNhZ3Q6IGh1Y2gKQ2FyYWRocmFzIGdpYnQgS2hpZGFyIGRlbiBTaWxiZXJyaW5nLgpLaGlkYXIgYmVkYW5rdCBzaWNoIGJlaSBDYXJhZGhyYXMuCkNhcmFkaHJhcyBrcmF0enQgc2ljaCBhbSBLb3BwLgpDYXJhZGhyYXMgZ3JpbnN0IEtoaWRhciBhbi4KS2hpZGFyIHNhZ3Q6IGthbm4gbWFuIG5pZSB3aWVkZXIgZ3V0bWFjaGVuIDopCktoaWRhciB6aWVodCBlaW5lbiBTaWxiZXJyaW5nIGFuLgoKWmVwaCAtIGltbWVyIG5vY2ggZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBsZWVyZXIgc29ubnRhZyBtb3JnZW4gKEFzbW9kaXMsIDEwLiBKdWwgMTk5NSwgMTA6NTc6NTQpOgojISBybj1LZXRvcyBydD04MDUyNzYyNzgKU29ubnRhZyBpc3QgZWJlbiBSdWhldGFnIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBub2NobWFsIHNwb3J0IChTY2hydW1wZmksIDEwLiBKdWwgMTk5NSwgMjE6MDc6NTEpOgojISBybj1EYW5jZXIgcnQ9ODA1MTEyMzYzClNhdWZlbj8gOi0pClNjaHJ1bXBmaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogbm9jaG1hbCBzcG9ydCAoQW5ha2luLCAxMC4gSnVsIDE5OTUsIDIyOjIyOjMyKToKIyEgcm49U2NocnVtcGZpIHJ0PTgwNTQwMzI3MQpHdXRlIElkZWUuLi4uCkFuYWtpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgaW0gNjAxLi4uIChZZW5kaSwgMTEuIEp1bCAxOTk1LCAxMzoyNDoxNCk6CgprdWVobkBwYXNjYWw6ICJJY2ggZ2xhdWIsIGljaCB6aWVoIHVtIGluIGVpbmUgV29obnVuZyBtaXQgS0FMVG1pZXRlLi4uIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGF1ZiBLYW5hbCBUb2QuLi4gKFllbmRpLCAxMS4gSnVsIDE5OTUsIDE1OjEyOjQxKToKCltUb2Q6XSBFaW4gUmllc2VubmFzZW5wb3BlbCBoYXQgZ2VyYWRlIFJ5bmUgdW1nZWJyYWNodC4KW0FsbGdlbWVpbjpZZW5kaSBsYWNodCBicnVlbGxlbmQuXQpbQWxsZ2VtZWluOkVuZ3l3dWNrXSBXYXIgZGFzIGVpbiBhY2hvYWxsPz8/CltBbGxnZW1laW46U2lsdmFuYV0gRHUgc29sbHN0IERpciBhdWNoIG5pY2h0IGdsZWljaCBkaWUgZ2FuemUgTmFzZQpbQWxsZ2VtZWluOlNpbHZhbmFdIHJhdXNyZWlzc2VuLGQgUnluZS4uLi4gQmVpbGVpZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTQnMgKENhcmFkaHJhcywgMTIuIEp1bCAxOTk1LCAwMDoxMTowOSk6CltBbGxnZW1laW46WmVwaHlyIHdhcnRldCBoZXV0ZSBnZW5hdXNvIGF1ZiBuZW4gU3RlaW5iZWlzc2VyIHdpZSBnZXN0ZXJuIGF1ZgpuZW4gZ2VsYmVuIFNjaGxlaW1kcmFjaGVuLl0KRWluIFN0ZWluYmVpc3NlciBrb21tdCBhbi4KICBEZXIgU3RlaW5iZWlzc2VyIGdyZWlmdCBEaWNoIG1pdCByaWVzaWdlbiBTdGVpbmJlaXNzZXJwcmFua2VuIGFuLgogIERlciBTdGVpbmJlaXNzZXIgdHJpZmZ0IERpY2ggc2VociBoYXJ0LgogIER1IGdyZWlmc3QgZGVuIFN0ZWluYmVpc3NlciBtaXQgZGVyIFNlbnNlIGFuLgogIER1IHZlcmZlaGxzdCBkZW4gU3RlaW5iZWlzc2VyLgogIERlciBTdGVpbmJlaXNzZXIgZ3JlaWZ0IERpY2ggbWl0IHJpZXNpZ2VuIFN0ZWluYmVpc3NlcnByYW5rZW4gYW4uCiAgRGVyIFN0ZWluYmVpc3NlciBraXR6ZWx0IERpY2ggYW0gQmF1Y2guCltBbGxnZW1laW46WmVwaHlyIHNldWZ6dF0KWmVwaHlyIHN0ZWNrdCBlaW4gRHNjaGlubi1TY2h3ZXJ0IHp1cnVlY2suClplcGh5ciB3aXJmdCBkZW4gc2Nod2Fyei1tZXRhbGxpY2VuIEJ1bWVyYW5nLgpaZXBoeXIgd2lyZnQgZGVuIHNjaHdhcnotbWF0dGVuIEJ1bWVyYW5nLgoKCiAgICAgICAgICBHdXRlcyBUaW1pbmcuLi4gOi0pCgogICAgICBDYXJhZGhyYXMgZGVyIGV3aWdlIFByb3BoZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTQnMgKFplcGh5ciwgMTIuIEp1bCAxOTk1LCAwMDoxMjozMSk6CiMhIHJuPUNhcmFkaHJhcyBydD04MDU1MDA2NjkKSG1tbS4uLi4uIGRpZSBoYWxiZSBTdHVuZGUgaWRlbG4gZGF2b3IgaGFzdGUgYWJlcgpuaWNoIGVyd2FlaG50Li4gOikpCgpaZXBoIC0gZ3JpbnN0IGF1Y2ggbm9jaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsaWFzICYgQ2hhb3MgKENhcmFkaHJhcywgMTIuIEp1bCAxOTk1LCAwMjoxNDo0NSk6CmFsaWFzCkR1IGhhc3QgZm9sZ2VuZGUgQWxpYXNlIGRlZmluaWVydDoKIC0gICAgICA9IHppZWhlIHJpbmcgNCBhbgogMCAgICAgID0gemllaGUgcmluZyAzIGFuCiAwMCAgICAgPSB2b3JzaWNodCAwCiAxICAgICAgPSB3aXJmIGJ1bWVyYW5nCiAxMCAgICAgPSBuaW1tIDEwIGt1Z2VsbiBhdXMgYmV1dGVsCiAxMDAgICAgPSB2b3JzaWNodCAxMDAKIDEwMDAgICA9IGxlZ2UgMTAwMCBtdWVuemVuIGFiCiAxMDEgICAgPSBuaW1tIDEwIGJhZWxsZSBhdXMgYmV1dGVsCiAxMSAgICAgPSB0ZWlsZSBnYXN0MSBtaXQgJCoKIDExMCAgICA9IHZvcnNpY2h0IDExMAogMTIwICAgID0gdm9yc2ljaHQgMTIwCiAyICAgICAgPSBmYW5nZSBidW1lcmFuZwogMjAgICAgID0gdm9yc2ljaHQgMjAKIDIyICAgICA9IHRlaWxlIGdhc3QyIG1pdCAkKgogMyAgICAgID0gbmltbSBidW1lcmFuZyBhdXMgbGVpY2hlCiAzMCAgICAgPSB2b3JzaWNodCAzMAogNCAgICAgID0gbmltbSBidW1lcmFuZwogNDAgICAgID0gdm9yc2ljaHQgNDAKIDUgICAgICA9IG5pbW0gYnVtZXJhbmcgYXVzIGxlaWNoZQogNiAgICAgID0genVlY2tlIGZldWVyc2Nod2VydAogNjAgICAgID0gdm9yc2ljaHQgNjAKIDcgICAgICA9IHppZWhlIHJpbmcgYXVzCiA3MCAgICAgPSB2b3JzaWNodCA3MAogOCAgICAgID0gemllaGUgcmluZyBhbgogODAgICAgID0gdm9yc2ljaHQgODAKIDkgICAgICA9IHppZWhlIHJpbmcgMiBhbgogOzsgICAgID0gdG9ldGUgYWxsZQogPSAgICAgID0gemllaGUgcmluZyAzIGF1cwoKClVuZCBzbyBnZWh0IGRhcyB3ZWl0ZXIgYmVpIG1pciwgMzk4IFN0dWVjayBsYW5nIDotKQoKICAgICAgQ2FyYWRocmFzIC0gbXVzdGVydCB2ZXJ3aXJydCBzZWluZSBhbGktTGlzdGUKICAgICAgKmdydWViZWwgd2FydW0gaXN0IGxkZCB1bmQgZHJhY2hlKj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbGlhcyAmIENoYW9zIChDYXJhZGhyYXMsIDEyLiBKdWwgMTk5NSwgMDI6MTU6NDIpOgojISBybj1DYXJhZGhyYXMgcnQ9ODA1NTA4MDg1CiBhZWVlZWVlZWVlZWVlZWggdW50IGRyYWNoZSwgbmljaHQgdW5kISEKCiAgICAgQ2FyYWRocmFzIGRlciB2ZXJ3aXJydGUgUHJvcGhldAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCBuZXVsaWNoIGltIGRvam8gKFJlaW5lbGRlLCAxMi4gSnVsIDE5OTUsIDAyOjE4OjE3KToKQW5keSBrb21tdCBhbi4KQW5keSBzYWd0OiBGdW5ha29zaGksIHN0b2VocnQgZXMgZGljaCwgd2VubiBpY2ggbWFsIGt1cnogZXVyZW4gYWRtaW4gYW5ydWZlLApBbmR5IHNhZ3Q6IHVuZCBpaG0gbWl0dGVpbGUgZGFzIGV1cmUgcmVjaG5lciBuaWNodCBmdWVyIHdpc3NlbnNjaGFmdGxpY2hlCkFuZHkgc2FndDogendlY2tlIGdlbnV0enQgd2VyZGVuLCBiZXNvbmRlcnMgdm9uIGRpcj8KPiBBbmR5IHNhZ3Q6IFJlaW5lbGRlLCBiaXN0IGR1IGJsb2VkID8KQW5keSB2ZXJmbHVjaHQgRnVuYWtvc2hpLgpBbmR5IGdlaHQuCgpyZWluZWxkZSAtIGZyYWd0IHNpY2ggd2VyIGhpZXIgYmxvZWQgaXN0LCB3ZW5uIGRlciBuaWNodCBtYWwgbmVuIG5wYyBlcmtlbm50CiAgICAgICAgIGFiZXIgZGFzIHN0b2VocnQgaWhuIHNjaGVpbmJhciBuaWNodCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFsaWFzICYgQ2hhb3MgKEFuYWtpbiwgMTIuIEp1bCAxOTk1LCAwOTozMjo0OCk6CiMhIHJuPUNhcmFkaHJhcyBydD04MDU1MDgwODUKSG1tIGFsaSAnMjInIGlzdCBndXQuLi46KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBhdWYgZGVtIGZyaWVkaG9mLi4uIChBcnR5LCAxMi4gSnVsIDE5OTUsIDEwOjA4OjUzKToKICBEZXIgV3VybSBncmVpZnQgRGljaCBtaXQgc2VpbmVuIGtsZWluZW4gWmFlaG5jaGVuIGFuLgogIERlciBXdXJtIHZlcmZlaGx0IERpY2guCkRlciBCdW1lcmFuZyBzY2hsYWVndCBkZW0gV3VybSBkZW4gS29wZiBlaW4uCkRlciBXdXJtIGZhZW5ndCBkZW4gQnVtZXJhbmcgYWIuCiAgRHUgZ3JlaWZzdCBkZW4gV3VybSBtaXQgYmxvc3NlbiBIYWVuZGVuIGFuLgogIER1IHRyaWZmc3QgZGVuIFd1cm0uCiAgRGVyIFd1cm0gZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbiBrbGVpbmVuIFphZWhuY2hlbiBhbi4KICBEZXIgV3VybSB2ZXJmZWhsdCBEaWNoLgogIERlciBXdXJtIGdyZWlmdCBEaWNoIG1pdCBzZWluZW4ga2xlaW5lbiBaYWVobmNoZW4gYW4uCiAgRGVyIFd1cm0gdmVyZmVobHQgRGljaC4KCmVoZW0sIHNjaGVpbmVuIGRvY2ggZXR3YXMgZ3JvZXNzZXJlIHd1ZXJtZXIgenUgc2VpbiAob2RlciBzaW5kIGRhcyBtaW5pIEJ1bWlzCj8gKQoKQVJUWSAoamV0enQgZXR3YXMgbWVociByZXNwZWt0IHZvciBkZW4gd3Vlcm1lcm4gaGFiZW5kLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvc28uLi4uIChHdXlicnVzaCwgMTIuIEp1bCAxOTk1LCAxMTozOToxOSk6Cgo+IER1IHdpcmZzdCBkZW4gQnVtZXJhbmcuCj4gRHUgd2lyZnN0IGRlbiBCdW1lcmFuZy4KPiBuaXggZGEhCkR1IGhhc3QgamV0enQgMTM2IExlYmVuc3B1bmt0ZSB1bmQgMTM5IE1hZ2llcHVua3RlLgpEdSBoYXN0IGpldHp0IDEzNiBMZWJlbnNwdW5rdGUgdW5kIDE0MCBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAxMzcgTGViZW5zcHVua3RlIHVuZCAxNDAgTWFnaWVwdW5rdGUuCkR1IGhhc3QgamV0enQgMTM3IExlYmVuc3B1bmt0ZSB1bmQgMTQxIE1hZ2llcHVua3RlLgpEdSBmYWVuZ3N0IGRlbiBCdW1lcmFuZyBnZXNjaGlja3QuCj4gRHUgZmFlbmdzdCBkZW4gQnVtZXJhbmcgZ2VzY2hpY2t0Lgo+IEV0d2FzIG5lYmVuYW4gaGF0IERlaW5lbiBCdW1lcmFuZyBhYmdlZmFuZ2VuLgoKc2VsdHNhbS4uaWNoIGhhdHRlIGRvY2ggbnVyIDIgU3R1ZWNrLi4uCgpHdXlicnVzaCwgZ3J1ZWJlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXQgZGVubiBudT8gKEdhc3QxLCAxMi4gSnVsIDE5OTUsIDEzOjEzOjEwKToKTmV1bGljaCBnZXNlaGVuOgoKRWluIFRyZXNvciAoZ2VvZWZmbmV0KS4KPiB1bnQgdHJlc29yCktyaWdpJ3MgVHJlc29yLCBkZXIgYWxsZW4gQW5mYWVuZ2VybiBvZmZlbnN0ZWh0IQpCaXR0ZSBOSUVNQUxTIHNjaGxpZXNzZW4hIQpFciBpc3QgZ2VzY2hsb3NzZW4uCgoKQWhlbSwgLi4uPz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmZWlua29zdC16aXBwIChHYXJmaWVsZCwgMTIuIEp1bCAxOTk1LCAxNTozOToyNCk6CgpJY2ggaGR0dGUgZ2VybmUgUmVpcy4gU2FnZW4gU2llIG1hbCwgaXN0IGRlciBSZWlzIGZyaXNjaD8gRGEgc3R2aG50IGVzIGphIGluCmRlciBTY2hhY2h0ZWwuCiAgIEZyYXUgV2Vyd29sZiBzYWd0LCBkYXMgZydodnJ0IHNvLCBkYXMgaXN0IGphIGF1Y2ggUHVmZnJlaXMuCgoKKmtydW1tbGFjaCoKCmdhcmZpZWxkLCBpbW1lciBub2NoIGdyaW5zZW5kIC4uLi4KKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFsaWFzICYgQ2hhb3MgKEFzbW9kaXMsIDEyLiBKdWwgMTk5NSwgMTY6NDg6MDkpOgojISBybj1DYXJhZGhyYXMgcnQ9ODA1NTA4MDg1CkhtbSwgd2llIGthbm5zdCBkdSBkaXIgZGFzIG51ciBhbGxlcyBtZXJrZW4gPz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhcnRpa2VsIG5ldWxpY2ggaW0gZG9qbyAoQXNtb2RpcywgMTIuIEp1bCAxOTk1LCAxNjo0ODo1OCk6CiMhIHJuPVJlaW5lbGRlIHJ0PTgwNTUwODI5NwpoYWJlIGdhciBrZWluZW4gUmVjaG5lciBpbSBEb2pvIGdlc2VoZW4sIHdvIGhhdCBGdW5ha29zaGkgZGVuIG51ciB2ZXJzdGVja3QgPwo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbGlhcyAmIENoYW9zIChDYXJhZGhyYXMsIDEyLiBKdWwgMTk5NSwgMTc6MTY6MTIpOgojISBybj1Bc21vZGlzIHJ0PTgwNTU2MDQ4OQpLYW5uIGljaCBuaWNodCB1bmJlZGluZ3QsIGljaCB1ZWJlcmxhZ2VyZSB2aWVsZSBBbGlhcyBpbW1lciB3aWVkZXIgbWl0IG5ldWVuLApzb25zdCB3dWVyZGUgaWNoIHNvIDUwMCBiaXMgNzAwIGFsaWFzIGJyYXVjaGVuLiBBYiB1bmQgenUgKHpCIGluIGVpbmVyCnF1ZXN0KSBtdXNzIG1hbiBiZXN0aW1tdGUgYWt0aW9uZW4gYXVjaCAxMCBvZGVyIDIwIG1hbCBtYWNoZW4sIGRhbm4gZ2lidHMKZWluIGFsaSBlYmVuIGRhcyBpY2ggbnVyIGFiIHVuZCB6dSBpbSBsZWJlbiBicmF1Y2hlLCBkYXMgbWVya2UgaWNoIG1pciBkYW5uCmF1Y2ggbnVyIHNvIGV0d2EuCgogICAgICAgdHNjaG9lICAgICAgICAgIENhcmFkaHJhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFsaWFzICYgQ2hhb3MgKE1hdGVlc2UsIDEyLiBKdWwgMTk5NSwgMjE6MTU6MTUpOgojISBybj1DYXJhZGhyYXMgcnQ9ODA1NTA4MDg1CklyZ2VuZHdpZSB2ZXJtaXNzZSBpY2ggZGEKIDQyICAgICA9IHNhZ2UgRGllIEFudHdvcnQgd2lyZCBkaXIgYmVzdGltbXQgbmljaHQgZ2VmYWxsZW4uCiAtLSBNYXRlZXNlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWxpYXMgJiBDaGFvcyAoQm9ibywgMTMuIEp1bCAxOTk1LCAxMDo1MDozNCk6CiMhIHJuPUNhcmFkaHJhcyBydD04MDU1MDgwODUKQWJlciB3YXJzdCBEdSBuaWNodCBkZXJqZW5pZ2UsIGRlciBpbW1lciAnZm9sZ2UgaHVuZCcgZWludGlwcHRlPwooRG9ydCwgd28gdmVybnVlbmZ0aWdlIE1lbnNjaGVuICdmYicgZHJ1ZWNrZW4sIG5pY2h0IHdhaHIsIEFyYW55YT8pCldhbm4gaXN0IERpciBkYXMgZXJzdGUgbWFsIGF1ZmdlZmFsbGVuLCBkYXNzIER1IHp3ZWkgYWxpcyBmdWVyICduaW1tIEJ1bWVyYW5nCmF1cyBMZWljaGUnIGhhc3Q/IFVuZCB3YXMgaGFlbHN0IER1IHZvbiB2IHZvcnNpY2h0ICQqPwpXaWUgbGFuZ2UgZGF1ZXJ0IGVzLCBiaXMgRHUgYmVpbSBTdWNoZW4gZGVzIEFsaXMgZnVlciAnZ2liIDUzIGt1Z2VsbiBhbgp6ZXBoeXInCm5hY2ggRHVyY2hmb3JzdGVuIERlaW5lciBMaXN0ZSBlbmRsaWNoIGRhcyBwYXNzZW5kZSAnemsgMTEwMTAxJyBnZWZ1bmRlbgpoYXN0PyBXaWUgc2NoaWNrc3QgRHUgdWViZXJoYXVwdCBEZWluZW4gV29scGVyaW5nZXIgaW5zIEJldHRjaGVuPwpJY2ggaGFiIGRhZnVlciAnYmV0dGNoZW4nIGluIGRlciBMaXN0ZSwgb2J3b2hsIGljaCBuaWNodCBtYWwgbWVociB3ZWlzcywgd2llCnNpY2ggZGllIFZpZWNoZXIgc2NocmVpYmVuLCBnZXNjaHdlaWdlIGRlbm4gaW0gbGV0enRlbiBkcmVpdmllcnRlbCBKYWhyIG1hbAptaXQgZGVtIFpvbWJpZSBHYXNzaSBnZWdhbmdlbiBiaW4gKGRhcyB6dW0gVGhlbWEgc2lubmxvc2UgYWxpcykuCgpWZXJoZWRkZXIgRGljaCBuaWNodCwgdW5kIHZpZWxlbiBEYW5rIGZ1ZXIgZGVuIG5ldWVuIHRocmVhZCEKVHdCcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa3VyeiB2b3Igd2VsdHVudGVyZ2FuZyAoTWFuZ28sIDEzLiBKdWwgMTk5NSwgMTM6MzA6MzkpOgoKCiAgRHUgZ3JlaWZzdCBBcm1hZ2VkZG9uIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gT3Rvc2hpLWtlbnRzdWktdWNoaSBhbi4KICBEdSB0cmlmZnN0IEFybWFnZWRkb24uCiAgUmVpbmVsZGUgZ3JlaWZ0IEFybWFnZWRkb24gbWl0IGVpbmVtIGdlbHVuZ2VuZW4gS2l6YW1pLXp1a2kgYW4uCiAgUmVpbmVsZGUgdHJpZmZ0IEFybWFnZWRkb24uCiAgUmljayBncmVpZnQgQXJtYWdlZGRvbiBtaXQgYmxvc3NlbiBIYWVuZGVuIGFuLgogIFJpY2sga3JhdHp0IEFybWFnZWRkb24uCiAgUnh0ZWNoIGdyZWlmdCBBcm1hZ2VkZG9uIG1pdCBlaW5lbSBTY2h3ZXJ0IGFuLgogIFJ4dGVjaCB0cmlmZnQgQXJtYWdlZGRvbiBzZWhyIGhhcnQuCiAgQXJtYWdlZGRvbiBncmVpZnQgTGkgYW4uCiAgQXJtYWdlZGRvbiB2ZXJmZWhsdCBMaS4KICBCZWF2aXMgZ3JlaWZ0IEFybWFnZWRkb24gbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4KICBCZWF2aXMga3JhdHp0IEFybWFnZWRkb24uCiAgRWluIEZyb3NjaCBncmVpZnQgQXJtYWdlZGRvbiBtaXQgZWluZW0gTGFuZ3NjaHdlcnQgYW4uCiAgRWluIEZyb3NjaCB0cmlmZnQgQXJtYWdlZGRvbiBzZWhyIGhhcnQuCiAgQm9pbmcgZ3JlaWZ0IEFybWFnZWRkb24gbWl0IGdydWVuZW4gU3RlaW5iZWlzc2VycHJhbmtlbiBhbi4KICBCb2luZyB6ZXJzY2htZXR0ZXJ0IEFybWFnZWRkb24gaW4ga2xlaW5lIFN0dWVja2NoZW4uCiAgTGkgZ3JlaWZ0IEFybWFnZWRkb24gbWl0IGJyZW5uZW5kZW4gSGFlbmRlbiBhbi4KICBMaSB6ZXJzY2htZXR0ZXJ0IEFybWFnZWRkb24gaW4ga2xlaW5lIFN0dWVja2NoZW4uCgoKdGphIGphIHNvIHNpZWh0cyBhdXMgd2VubiBuaWVtYW5kIHdhcyB6dSB0dW4gaGF0LgoKCmdyaW5zZW5kIE1hbmdvLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGltIEludGVybmV0Li4uIChZZW5kaSwgMTMuIEp1bCAxOTk1LCAxNDoxOTowNCk6Cgo+IENPTkNFUk5JTkcgV0hZIExPVkUgSEFQUEVOUyBCRVRXRUVOIFRXTyBQQVJUSUNVTEFSIFBFT1BMRQo+Cj4gIk9uZSBvZiB0aGUgcGVvcGxlIGhhcyBmcmVja2xlcyBhbmQgc28gaGUgZmluZHMgc29tZWJvZHkKPiBlbHNlIHdobyBoYXMgZnJlY2tsZXMgdG9vLiIKPiBBbmRyZXcsIGFnZSA2Cj4KPiAiTm8gb25lIGlzIHN1cmUgd2h5IGl0IGhhcHBlbnMsIGJ1dCBJIGhlYXJkIGl0IGhhcyBzb21ldGhpbmcKPiB0byBkbyB3aXRoIGhvdyAgeW91IHNtZWxsIC4uLiBUaGF0J3Mgd2h5IHBlcmZ1bWUgYW5kCj4gZGVvZG9yYW50IGFyZSBzbyBwb3B1bGFyLiIKPiBNYWUsIGFnZSA5Cj4KPiAiSSB0aGluayB5b3UncmUgc3VwcG9zZWQgdG8gZ2V0IHNob3Qgd2l0aCBhbiBhcnJvdyBvcgo+IHNvbWV0aGluZywgYnV0IHRoZSByZXN0IG9mIGl0IGlzbid0IHN1cHBvc2VkIHRvIGJlIHNvCj4gcGFpbmZ1bC4iCj4gTWFudWVsLCBhZ2UgOAo+Cj4gT04gV0hBVCBGQUxMSU5HIElOIExPVkUgSVMgTElLRQo+Cj4gIkxpa2UgYW4gYXZhbGFuY2hlIHdoZXJlIHlvdSBoYXZlIHRvIHJ1biBmb3IgeW91ciBsaWZlLiIKPiBKb2huLCBhZ2UgOQo+Cj4gIklmIGZhbGxpbmcgaW4gbG92ZSBpcyBhbnl0aGluZyBsaWtlIGxlYXJuaW5nIGhvdyB0byBzcGVsbCwKPiBJIGRvbid0IHdhbnQgdG8gZG8gaXQuICBJdCB0YWtlcyB0b28gbG9uZy4iCj4gR2xlbm4sIGFnZSA3Cj4KPiBPTiBUSEUgUk9MRSBPRiBCRUFVVFkgQU5EIEhBTkRTT01FTkVTUyBJTiBMT1ZFCj4KPiAiSWYgeW91IHdhbnQgdG8gYmUgbG92ZWQgYnkgc29tZWJvZHkgd2hvIGlzbid0IGFscmVhZHkgaW4KPiB5b3VyIGZhbWlseSwgaXQgZG9lc24ndCBodXJ0IHRvIGJlIGJlYXV0aWZ1bC4iCj4gQW5pdGEgQy4sIGFnZSA4Cj4KPiAiSXQgaXNuJ3QgYWx3YXlzIGp1c3QgaG93IHlvdSBsb29rLiAgTG9vayBhdCBtZS4gIEknbQo+IGhhbmRzb21lIGxpa2UgYW55dGhpbmcgYW5kIEkgaGF2ZW4ndCBnb3QgYW55Ym9keSB0byBtYXJyeQo+IG1lIHlldC4iCj4gQnJpYW4sIGFnZSA3Cj4KPiAiQmVhdXR5IGlzIHNraW4gZGVlcC4gIEJ1dCBob3cgcmljaCB5b3UgYXJlIGNhbiBsYXN0IGEgbG9uZwo+IHRpbWUuIgo+IENocmlzdGluZSwgYWdlIDkKPgo+IFJFRkxFQ1RJT05TIE9OIFRIRSBOQVRVUkUgT0YgTE9WRQo+Cj4gIkxvdmUgaXMgdGhlIG1vc3QgaW1wb3J0YW50IHRoaW5nIGluIHRoZSB3b3JsZCwgYnV0IGJhc2ViYWxsCj4gaXMgcHJldHR5IGdvb2QgdG9vLiIKPiBHcmVnLCBhZ2UgOAo+Cj4gSE9XIERPIFBFT1BMRSBJTiBMT1ZFIFRZUElDQUxMWSBCRUhBVkU/Cj4KPiAiTW9vc2h5IC4uLiBsaWtlIHB1cHB5IGRvZ3MgLi4uIGV4Y2VwdCBwdXBweSBkb2dzIGRvbid0IHdhZwo+IHRoZWlyIHRhaWxzIG5lYXJseSBhcyBtdWNoLiIKPiBBcm5vbGQsIGFnZSAxMAo+Cj4gIkFsbCBvZiBhIHN1ZGRlbiwgdGhlIHBlb3BsZSBnZXQgbW92aWUgZmV2ZXIgc28gdGhleSBjYW4gc2l0Cj4gdG9nZXRoZXIgaW4gdGhlIGRhcmsuIgo+IFNoZXJtLCBhZ2UgOAo+Cj4gQ09OQ0VSTklORyBXSFkgTE9WRVJTIE9GVEVOIEhPTEQgSEFORFMKPgo+ICJUaGV5IHdhbnQgdG8gbWFrZSBzdXJlIHRoZWlyIHJpbmdzIGRvbid0IGZhbGwgb2ZmIGJlY2F1c2UKPiB0aGV5IHBhaWQgZ29vZCBtb25leSBmb3IgdGhlbS4iCj4gR2F2aW4sIGFnZSA4Cj4KPiAiVGhleSBhcmUganVzdCBwcmFjdGljaW5nIGZvciB3aGVuIHRoZXkgbWlnaHQgaGF2ZSB0byB3YWxrCj4gZG93biB0aGUgYWlzbGUgc29tZWRheSBhbmQgZG8gdGhlIGhvbHkgbWF0Y2hpbW9ueSB0aGluZy4iCj4gSm9obiwgYWdlIDkKPgo+IENPTkZJREVOVElBTCBPUElOSU9OUyBBQk9VVCBMT1ZFCj4KPiAiSSdtIGluIGZhdm9yIG9mIGxvdmUgYXMgbG9uZyBhcyBpdCBkb2Vzbid0IGhhcHBlbiB3aGVuCj4gJ0Rpbm9zYXVycycgaXMgb24gdGVsZXZpc2lvbi4iCj4gSmlsbCwgYWdlIDYKPgo+ICJMb3ZlIGlzIGZvb2xpc2ggLi4uIGJ1dCBJIHN0aWxsIG1pZ2h0IHRyeSBpdCBzb21ldGltZS4iCj4gRmxveWQsIGFnZSA5Cj4KPiAiTG92ZSB3aWxsIGZpbmQgeW91LCBldmVuIGlmIHlvdSBhcmUgdHJ5aW5nIHRvIGhpZGUgZnJvbSBpdC4KPiBJIGJlZW4gdHJ5aW5nIHRvIGhpZGUgZnJvbSBpdCBzaW5jZSBJIHdhcyBmaXZlLCBidXQgdGhlCj4gZ2lybHMga2VlcCBmaW5kaW5nIG1lLiIKPiBEYXZlLCBhZ2UgOAo+Cj4gIkknbSBub3QgcnVzaGluZyBpbnRvIGJlaW5nIGluIGxvdmUuICBJJ20gZmluZGluZyBmb3VydGgKPiBncmFkZSBoYXJkIGVub3VnaC4iCj4gUmVnaW5hLCBhZ2UgMTAKPgo+IFRIRSBQRVJTT05BTCBRVUFMSVRJRVMgWU9VIE5FRUQgVE8gSEFWRSBJTiBPUkRFUiBUTyBCRSBBCj4gR09PRCBMT1ZFUgo+Cj4gIlNlbnNpdGl2aXR5IGRvbid0IGh1cnQuIgo+IFJvYmJpZSwgYWdlIDgKPgo+ICJPbmUgb2YgeW91IHNob3VsZCBrbm93IGhvdyB0byB3cml0ZSBhIGNoZWNrLiAgQmVjYXVzZSwgZXZlbgo+IGlmIHlvdSBoYXZlIHRvbnMgb2YgbG92ZSwgdGhlcmUgaXMgc3RpbGwgZ29pbmcgdG8gYmUgYSBsb3QKPiBvZiBiaWxscy4iCj4gQXZhLCBhZ2UgOAo+Cj4gU09NRSBTVVJFRklSRSBXQVlTIFRPIE1BS0UgQSBQRVJTT04gRkFMTCBJTiBMT1ZFIFdJVEggWU9VCj4KPiAiVGVsbCB0aGVtIHRoYXQgeW91IG93biBhIHdob2xlIGJ1bmNoIG9mIGNhbmR5IHN0b3Jlcy4iCj4gRGVsLCBhZ2UgNgo+Cj4gIlllbGwgb3V0IHRoYXQgeW91IGxvdmUgdGhlbSBhdCB0aGUgdG9wIG9mIHlvdXIgbHVuZ3MgLi4uCj4gYW5kIGRvbid0IHdvcnJ5IGlmIHRoZWlyIHBhcmVudHMgYXJlIHJpZ2h0IHRoZXJlLiIKPiBNYW51ZWwsIGFnZSA4Cj4KPiAiRG9uJ3QgZG8gdGhpbmdzIGxpa2UgaGF2ZSBzbWVsbHksIGdyZWVuIHNuZWFrZXJzLiAgWW91Cj4gbWlnaHQgZ2V0IGF0dGVudGlvbiwgYnV0IGF0dGVudGlvbiBhaW4ndCB0aGUgc2FtZSB0aGluZyBhcwo+IGxvdmUuIgo+IEFsb256bywgYWdlIDkKPgo+ICJPbmUgd2F5IGlzIHRvIHRha2UgdGhlIGdpcmwgb3V0IHRvIGVhdC4gIE1ha2Ugc3VyZSBpdCdzCj4gc29tZXRoaW5nIHNoZSBsaWtlcyB0byBlYXQuICBGcmVuY2ggZnJpZXMgdXN1YWxseSB3b3JrcyBmb3IKPiBtZS4iCj4gQmFydCwgYWdlIDkKPgo+IEhPVyBDQU4gWU9VIFRFTEwgSUYgVFdPIEFEVUxUUyBFQVRJTkcgRElOTkVSIEFUIEEgUkVTVEFVUkFOVAo+IEFSRSBJTiAgTE9WRT8KPgo+ICJKdXN0IHNlZSBpZiB0aGUgbWFuIHBpY2tzIHVwIHRoZSBjaGVjay4gIFRoYXQncyBob3cgeW91IGNhbgo+IHRlbGwgaWYgaGUncyBpbiBsb3ZlLiIKPiBCb2JieSwgYWdlIDkKPgo+ICJMb3ZlcnMgd2lsbCBqdXN0IGJlIHN0YXJpbmcgYXQgZWFjaCBvdGhlciBhbmQgdGhlaXIgZm9vZAo+IHdpbGwgZ2V0IGNvbGQgLi4uICBPdGhlciBwZW9wbGUgY2FyZSBtb3JlIGFib3V0IHRoZSBmb29kLiIKPiBCYXJ0LCBhZ2UgOQo+Cj4gIlJvbWFudGljIGFkdWx0cyB1c3VhbGx5IGFyZSBhbGwgZHJlc3NlZCB1cCwgc28gaWYgdGhleSBhcmUKPiBqdXN0IHdlYXJpbmcgamVhbnMgaXQgbWlnaHQgbWVhbiB0aGV5IHVzZWQgdG8gZ28gb3V0IG9yCj4gdGhleSBqdXN0IGJyb2tlIHVwLiIKPiBTYXJhaCwgYWdlIDkKPgo+ICJTZWUgaWYgdGhlIG1hbiBoYXMgbGlwc3RpY2sgb24gaGlzIGZhY2UuIgo+IFNhbmRyYSwgYWdlIDcKPgo+ICJJdCdzIGxvdmUgaWYgdGhleSBvcmRlciBvbmUgb2YgdGhvc2UgZGVzc2VydHMgdGhhdCBhcmUgb24KPiBmaXJlLiAgVGhleSBsaWtlICB0byBvcmRlciB0aG9zZSBiZWNhdXNlIGl0J3MganVzdCBsaWtlIGhvdwo+IHRoZWlyIGhlYXJ0cyBhcmUuLi4gb24gZmlyZS4iCj4gQ2hyaXN0aW5lLCBhZ2UgOQo+Cj4gVElUTEVTIE9GIFRIRSBMT1ZFIEJBTExBRFMgWU9VIENBTiBTSU5HIFRPIFlPVVIgQkVMT1ZFRAo+Cj4gIidIb3cgRG8gSSBMb3ZlIFRoZWUgV2hlbiBZb3UncmUgQWx3YXlzIFBpY2tpbmcgWW91ciBOb3NlPyciCj4gQXJub2xkLCBhZ2UgMTAKPgo+ICInWW91IEFyZSBNeSBEYXJsaW5nIEV2ZW4gVGhvdWdoIFlvdSBBbHNvIEtub3cgTXkgU2lzdGVyLiciCj4gTGFycnksIGFnZSA4Cj4KPiAiJ0kgTG92ZSBIYW1idXJnZXJzLCBJIExpa2UgWW91ISciCj4gRWRkaWUsIGFnZSA2Cj4KPiAiJ0kgQW0gaW4gTG92ZSB3aXRoIFlvdSBNb3N0IG9mIHRoZSBUaW1lLCBidXQgRG9uJ3QgQm90aGVyCj4gTWUgV2hlbiBJJ20gd2l0aCBNeSBGcmllbmRzLiciCj4gQm9iLCBhZ2UgOQo+Cj4gIidIZXksIEJhYnksIEkgRG9uJ3QgbGlrZSBHaXJscyBidXQgSSdtIFdpbGxpbmcgdG8gRm9yZ2V0Cj4gWW91IEFyZSBPbmUhJyIKPiBXaWxsLCBhZ2UgNwo+Cj4gV0hBVCBNT1NUIFBFT1BMRSBBUkUgVEhJTktJTkcgV0hFTiBUSEVZIFNBWSAiSSBMT1ZFIFlPVSIKPgo+ICJUaGUgcGVyc29uIGlzIHRoaW5raW5nOiBZZWFoLCBJIHJlYWxseSBkbyBsb3ZlIGhpbS4gIEJ1dCBJCj4gaG9wZSBoZSBzaG93ZXJzIGF0IGxlYXN0IG9uY2UgYSBkYXkuIgo+IE1pY2hlbGxlLCBhZ2UgOQo+Cj4gIlNvbWUgbG92ZXJzIG1pZ2h0IGJlIHJlYWwgbmVydm91cywgc28gdGhleSBhcmUgZ2xhZCB0aGF0Cj4gdGhleSBmaW5hbGx5IGdvdCBpdCBvdXQgYW5kIHNhaWQgaXQgYW5kIG5vdyB0aGV5IGNhbiBnbwo+IGVhdC4iCj4gRGljaywgYWdlIDcKPgo+IEhPVyBXQVMgS0lTU0lORyBJTlZFTlRFRD8KPgo+ICJJIGtub3cgb25lIHJlYXNvbiB0aGF0IGtpc3Npbmcgd2FzIGNyZWF0ZWQuIEl0IG1ha2VzIHlvdQo+IGZlZWwgd2FybSBhbGwgb3ZlciwgYW5kIHRoZXkgZGlkbid0IGFsd2F5cyBoYXZlIGVsZWN0cmljCj4gaGVhdCBvciBmaXJlcGxhY2VzIG9yIGV2ZW4gc3RvdmVzIGluIHRoZWlyIGhvdXNlcy4iCj4gR2luYSwgYWdlIDgKPgo+IEhPVyBBIFBFUlNPTiBMRUFSTlMgVE8gS0lTUwo+Cj4gIllvdSBjYW4gaGF2ZSBhIGJpZyByZWhlYXJzYWwgd2l0aCB5b3VyIEJhcmJpZSBhbmQgS2VuCj4gZG9sbHMuIgo+IEp1bGlhLCBhZ2UgNwo+Cj4gIllvdSBsZWFybiBpdCByaWdodCBvbiB0aGUgc3BvdCB3aGVuIHRoZSBnb29zaHkgZmVlbGluZ3MgZ2V0Cj4gdGhlIGJlc3Qgb2YgeW91LiIKPiBCcmlhbiwgYWdlIDcKPgo+ICJJdCBtaWdodCBoZWxwIHRvIHdhdGNoIHNvYXAgb3BlcmFzIGFsbCBkYXkuIgo+IENhcmluLCBhZ2UgOQo+Cj4gV0hFTiBJUyBJVCBPS0FZIFRPIEtJU1MgU09NRU9ORT8KPgo+ICJXaGVuIHRoZXkncmUgcmljaC4iCj4gUGFtLCBhZ2UgNwo+Cj4gIkl0J3MgbmV2ZXIgb2theSB0byBraXNzIGEgYm95LiAgVGhleSBhbHdheXMgc2xvYmJlciBhbGwKPiBvdmVyIHlvdSAuLi4gVGhhdCdzICB3aHkgSSBzdG9wcGVkIGRvaW5nIGl0LiIKPiBUYW1teSwgYWdlIDEwCj4KPiAiSWYgaXQncyB5b3VyIG1vdGhlciwgeW91IGNhbiBraXNzIGhlciBhbnl0aW1lLiAgQnV0IGlmIGl0J3MKPiBhIG5ldyBwZXJzb24sIHlvdSBoYXZlIHRvIGFzayBwZXJtaXNzaW9uLiIKPiBSb2dlciwgYWdlIDYKPgo+IEhPVyBUTyBNQUtFIExPVkUgRU5EVVJFCj4KPiAiU3BlbmQgbW9zdCBvZiB5b3VyIHRpbWUgbG92aW5nIGluc3RlYWQgb2YgZ29pbmcgdG8gd29yay4iCj4gRGljaywgYWdlIDcKPgo+ICJEb24ndCBmb3JnZXQgeW91ciB3aWZlJ3MgbmFtZSAuLi4gVGhhdCB3aWxsIG1lc3MgdXAgdGhlCj4gbG92ZS4iCj4gRXJpbiwgYWdlIDgKPgo+ICJCZSBhIGdvb2Qga2lzc2VyLiAgSXQgbWlnaHQgbWFrZSB5b3VyIHdpZmUgZm9yZ2V0IHRoYXQgeW91Cj4gbmV2ZXIgdGFrZSBvdXQgdGhlIHRyYXNoLiIKPiBEYXZlLCBhZ2UgOAo+Cj4gIkRvbid0IHNheSB5b3UgbG92ZSBzb21lYm9keSBhbmQgdGhlbiBjaGFuZ2UgeW91ciBtaW5kIC4uLgo+IExvdmUgaXNuJ3QgbGlrZSBwaWNraW5nIHdoYXQgbW92aWUgeW91IHdhbnQgdG8gd2F0Y2guIgo+IE5hdGFsaWUsIGFnZSA4Cj4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIHNvbGwgZGFzIGRlbm4gPz8gKEFydHksIDEzLiBKdWwgMTk5NSwgMTQ6MzA6NDYpOgo+IER1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMTY5IE1hZ2llcHVua3RlLgpMYWJ5cmludGguCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4gdW5kIG9iZW4uCj4gb2IKTGFieXJpbnRoLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuLCBvc3RlbiB1bmQgdW50ZW4uCkVpbiBmcmVzc2VuZGVyIFNvbm5lbnRhdS4KPiBzYWcgbWlzdApEdSBoYXN0IGpldHp0IDMgTGViZW5zcHVua3RlIHVuZCA4IE1hZ2llcHVua3RlLgpEdSBzYWdzdDogbWlzdAo+IER1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMTcwIE1hZ2llcHVua3RlLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDE3MSBNYWdpZXB1bmt0ZS4KCgpobW1tLi4uCkFSVFkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhcnRpa2VsIG5ldWxpY2ggaW0gZG9qbyAoWWVuZGksIDEzLiBKdWwgMTk5NSwgMTQ6MzQ6MDIpOgojISBybj1SZWluZWxkZSBydD04MDU1MDgyOTcKClRqYSwgZGFmdWVyIGdpYnQgZXMgbWVocmVyZSBFcmtsYWVydW5nZW46CgpvIEFuZHkgaXN0IGJsb2VkLiBQdW5rdC4gKERpZXNlIE1vZWdsaWNoa2VpdCBpc3Qgd29obCBkaWUgd2FocnNjaGVpbmxpY2hzdGUuKQoKbyBSb2NodXMgaGF0IHNlaW5lIE5QQ3Mgc28gZ3V0IHByb2dyYW1taWVydCwgZGFzIG1hbiBzaWUgZnVlciBQQ3MgaGFlbHQuCiAgKE5hamFhYWEuLi4pCgpvIEZ1bmFrb3NoaSBfaXN0XyBlaW4gUEMuICAoU2VlZWVociB1bndhaHJzY2hlaW5saWNoLCBhYmVyIGltbWVyaGluLi4uKQoKbyBEdSBoYXN0IGRhcyBHYW56ZSBudXIgZ2V0cmFldW10LgoKCgpOYSwgd2FzIGRhcmZzIGRlbm4gc2Vpbj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGJlaW0gdmVya2F1ZmVuIChNYWplc3RpeCwgMTMuIEp1bCAxOTk1LCAxNjo1Njo0MSk6CkxldHplbnMgd29sbHQgaWNoIGVpbmUgT3JraG9zZSB2ZXJrYXVmZW4gOgpOYWNoIGRlciBha3R1ZWxsZW4gTWFya3RsYWdlIGthbm4gaWNoIERpciBkYWZ1ZXIgbnVyIDUwNCBNdWVuemVuIGJpZXRlbiwKb2J3b2hsIGVpbmUgSG9zZSBlaWdlbnRsaWNoIDUwNSBNdWVuemVuIHdlcnQgd2FlcmUuIFdpbGxzdCBEdSBlcyBtaXIgZGFmdWVyCnVlYmVybGFzc2VuPyAoamEvbmVpbikKCk5hIGljaCB3ZWlzcyBuaWNodCwgb2IgZXIgbWlyIG5pY2h0IGRpZSBlaW5lIE11ZW56ZSBuaWNodCBhdWNoIGdlYmVuCmhhZXR0ZSBrb2VubmVuIDopCgpNYWplc3RpeAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKMCAoSmFmLCAxMy4gSnVsIDE5OTUsIDIxOjE1OjA5KToKTmV1bGljaCBpbSAgRWxmZW5kb3JmCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW0gIEVsZmVuZG9yZiAoSmFmLCAxMy4gSnVsIDE5OTUsIDIxOjE1OjA5KToKPiBEZXIga2xlaW5lIERpZWIgcGZlaWZ0IGFuZXJrZW5uZW5kLCBhbHMgZXIgRGVpbmVuIEdlbGRiZXV0ZWwgc2llaHQuCgppCgpFaW4gRnJldW5kc2NoYWZ0c2JhbmQgKGdldHJhZ2VuKS4KSmFmcyBUZWRkeWJhZXIgTWFyaWFubmUuCkRhcyBTZXJ2aWNlcGFrZXQgdm9uIE1vcmdlbmdyYXVlbnMgUHJlc3NlYWdlbnR1ci4KCgpLb21pc2NoLCBzaWVodCBkZXIgbWVoZXIgYWxzIGljaD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnBhcGFnZWkgKEdhcmZpZWxkLCAxMy4gSnVsIDE5OTUsIDIyOjQxOjIyKToKCmRpZSBwcm9ibGVtZSBkZXIgcGFwYWdlaWVuIGhldXR6dXRhZ2UgLi4uCgogRWluIFBhcGFnZWkgZmxhdHRlcnQgaGVyZWluLgpEZXIgUGFwYWdlaSBzYWd0OiBpY2ggYnJhY3VoZSBrZTlpbiBrbGRqZmw/c2RqZmtoZWxtIGljaCBoYWJlIGllbmVuIG11ZXR6CkRlciBQYXBhZ2VpIGZsYXR0ZXJ0IG5hY2ggV2VzdGVuLgoKbGFjaCwgcm90ZmwgLi4uLgpnYXJmaWVsZAoqKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWxpYXMgJiBDaGFvcyAoQ3JlYXRpdmUsIDEzLiBKdWwgMTk5NSwgMjM6MDc6MjMpOgojISBybj1DYXJhZGhyYXMgcnQ9ODA1NTA4MTQyCgpsZGQgPT4gbG9vayBhdCBkYWVtb25lbmRyYWNoZT8KanVzdCBlaW4gdm9yYmVhdCBhZWggLXNjaGxhZyA6KQoKLUNyZWEtLCBkYWNodGUsIGVyIGhhYmUgZGllIHZlcndpcnJlbmRzdGVuIEFsaSdzIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ldWxpY2ggYXVmIGRlbSBmcmllZGhvZi4uLiAoQ3JlYXRpdmUsIDEzLiBKdWwgMTk5NSwgMjM6MDk6MDYpOgojISBybj1BcnR5IHJ0PTgwNTUzNjUzMwoKQWJlciBkYXNzIGRlciBCdW1pIGRlbiBLb3BmIGFic2NobGFlZ3QgdW5kIGRlciBXdXJtIHdlaXRlcmhpbgptaXQgZGVuIFphZWhuY2hlbiBhbmdyZWlmdCwgREFTIGhhc3RlIG5pY2h0IGdlbWVya3QsIHdhPyA6KSkpCgotQ3JlYS0gZ3JpbnN0IGViZW5mYWxscwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnBhcGFnZWkgKEFkYW1hLCAxMy4gSnVsIDE5OTUsIDIzOjUzOjIwKToKaW0gZWxmZW5sYWRlbjoKCj4gRGVyIFBhcGFnZWkgc2FndDogd2llIGthbm5zdCBkdSBkZW5uIG1pdCBsZWlhIGlubmVyIHdnIHdvaG5lbj8KCmFkYW1hIC0ga2lsbHQgZGVuIHBhcGFnZWkgamV0enQgZ2FyYW50aWVydCBpbW1lciAuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWxvbmEgQ2hyaXN0ZW4gKENhcmFkaHJhcywgMTQuIEp1bCAxOTk1LCAwMDoyNDoyMSk6CmxsIGlsb25hCkRhcyBpc3QgSWxvbmEgQ2hyaXN0ZW4uIFNpZSBmdWVobHQgZ2FueiBkb2xsIG1pdCBEaXIuClNpZSB3YW5rdCBiZXJlaXRzIGJlZGVua2xpY2guCgpOYSBtYWNoIGljaCBhYmVyIGVpbmVuIEVpbmRydWNrIGF1ZiBGcmF1ZW4uICpzdG9laG4qIEpldHp0IHdhbmtlbgpzaWUgc2Nob24uCgogICAgICAgICAgICAgICBDYXJhZGhyYXMgLSB2ZXJ3aXJydCB2b3Igc2ljaCBoaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW0gIEVsZmVuZG9yZiAoSmFmLCAxMy4gSnVsIDE5OTUsIDIxOjE1OjA5KToKPiBEZXIga2xlaW5lIERpZWIgcGZlaWZ0IGFuZXJrZW5uZW5kLCBhbHMgZXIgRGVpbmVuIEdlbGRiZXV0ZWwgc2llaHQuCgppCgpFaW4gRnJldW5kc2NoYWZ0c2JhbmQgKGdldHJhZ2VuKS4KSmFmcyBUZWRkeWJhZXIgTWFyaWFubmUuCkRhcyBTZXJ2aWNlcGFrZXQgdm9uIE1vcmdlbmdyYXVlbnMgUHJlc3NlYWdlbnR1ci4KCgpLb21pc2NoLCBzaWVodCBkZXIgbWVoZXIgYWxzIGljaD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnBhcGFnZWkgKEdhcmZpZWxkLCAxMy4gSnVsIDE5OTUsIDIyOjQxOjIyKToKCmRpZSBwcm9ibGVtZSBkZXIgcGFwYWdlaWVuIGhldXR6dXRhZ2UgLi4uCgogRWluIFBhcGFnZWkgZmxhdHRlcnQgaGVyZWluLgpEZXIgUGFwYWdlaSBzYWd0OiBpY2ggYnJhY3VoZSBrZTlpbiBrbGRqZmw/c2RqZmtoZWxtIGljaCBoYWJlIGllbmVuIG11ZXR6CkRlciBQYXBhZ2VpIGZsYXR0ZXJ0IG5hY2ggV2VzdGVuLgoKbGFjaCwgcm90ZmwgLi4uLgpnYXJmaWVsZAoqKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWxpYXMgJiBDaGFvcyAoQ3JlYXRpdmUsIDEzLiBKdWwgMTk5NSwgMjM6MDc6MjMpOgojISBybj1DYXJhZGhyYXMgcnQ9ODA1NTA4MTQyCgpsZGQgPT4gbG9vayBhdCBkYWVtb25lbmRyYWNoZT8KanVzdCBlaW4gdm9yYmVhdCBhZWggLXNjaGxhZyA6KQoKLUNyZWEtLCBkYWNodGUsIGVyIGhhYmUgZGllIHZlcndpcnJlbmRzdGVuIEFsaSdzIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ldWxpY2ggYXVmIGRlbSBmcmllZGhvZi4uLiAoQ3JlYXRpdmUsIDEzLiBKdWwgMTk5NSwgMjM6MDk6MDYpOgojISBybj1BcnR5IHJ0PTgwNTUzNjUzMwoKQWJlciBkYXNzIGRlciBCdW1pIGRlbiBLb3BmIGFic2NobGFlZ3QgdW5kIGRlciBXdXJtIHdlaXRlcmhpbgptaXQgZGVuIFphZWhuY2hlbiBhbmdyZWlmdCwgREFTIGhhc3RlIG5pY2h0IGdlbWVya3QsIHdhPyA6KSkpCgotQ3JlYS0gZ3JpbnN0IGViZW5mYWxscwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnBhcGFnZWkgKEFkYW1hLCAxMy4gSnVsIDE5OTUsIDIzOjUzOjIwKToKaW0gZWxmZW5sYWRlbjoKCj4gRGVyIFBhcGFnZWkgc2FndDogd2llIGthbm5zdCBkdSBkZW5uIG1pdCBsZWlhIGlubmVyIHdnIHdvaG5lbj8KCmFkYW1hIC0ga2lsbHQgZGVuIHBhcGFnZWkgamV0enQgZ2FyYW50aWVydCBpbW1lciAuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWxvbmEgQ2hyaXN0ZW4gKENhcmFkaHJhcywgMTQuIEp1bCAxOTk1LCAwMDoyNDoyMSk6CmxsIGlsb25hCkRhcyBpc3QgSWxvbmEgQ2hyaXN0ZW4uIFNpZSBmdWVobHQgZ2FueiBkb2xsIG1pdCBEaXIuClNpZSB3YW5rdCBiZXJlaXRzIGJlZGVua2xpY2guCgpOYSBtYWNoIGljaCBhYmVyIGVpbmVuIEVpbmRydWNrIGF1ZiBGcmF1ZW4uICpzdG9laG4qIEpldHp0IHdhbmtlbgpzaWUgc2Nob24uCgogICAgICAgICAgICAgICBDYXJhZGhyYXMgLSB2ZXJ3aXJydCB2b3Igc2ljaCBoaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW0gIEVsZmVuZG9yZiAoSmFmLCAxMy4gSnVsIDE5OTUsIDIxOjE1OjA5KToKPiBEZXIga2xlaW5lIERpZWIgcGZlaWZ0IGFuZXJrZW5uZW5kLCBhbHMgZXIgRGVpbmVuIEdlbGRiZXV0ZWwgc2llaHQuCgppCgpFaW4gRnJldW5kc2NoYWZ0c2JhbmQgKGdldHJhZ2VuKS4KSmFmcyBUZWRkeWJhZXIgTWFyaWFubmUuCkRhcyBTZXJ2aWNlcGFrZXQgdm9uIE1vcmdlbmdyYXVlbnMgUHJlc3NlYWdlbnR1ci4KCgpLb21pc2NoLCBzaWVodCBkZXIgbWVoZXIgYWxzIGljaD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnBhcGFnZWkgKEdhcmZpZWxkLCAxMy4gSnVsIDE5OTUsIDIyOjQxOjIyKToKCmRpZSBwcm9ibGVtZSBkZXIgcGFwYWdlaWVuIGhldXR6dXRhZ2UgLi4uCgogRWluIFBhcGFnZWkgZmxhdHRlcnQgaGVyZWluLgpEZXIgUGFwYWdlaSBzYWd0OiBpY2ggYnJhY3VoZSBrZTlpbiBrbGRqZmw/c2RqZmtoZWxtIGljaCBoYWJlIGllbmVuIG11ZXR6CkRlciBQYXBhZ2VpIGZsYXR0ZXJ0IG5hY2ggV2VzdGVuLgoKbGFjaCwgcm90ZmwgLi4uLgpnYXJmaWVsZAoqKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWxpYXMgJiBDaGFvcyAoQ3JlYXRpdmUsIDEzLiBKdWwgMTk5NSwgMjM6MDc6MjMpOgojISBybj1DYXJhZGhyYXMgcnQ9ODA1NTA4MTQyCgpsZGQgPT4gbG9vayBhdCBkYWVtb25lbmRyYWNoZT8KanVzdCBlaW4gdm9yYmVhdCBhZWggLXNjaGxhZyA6KQoKLUNyZWEtLCBkYWNodGUsIGVyIGhhYmUgZGllIHZlcndpcnJlbmRzdGVuIEFsaSdzIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ldWxpY2ggYXVmIGRlbSBmcmllZGhvZi4uLiAoQ3JlYXRpdmUsIDEzLiBKdWwgMTk5NSwgMjM6MDk6MDYpOgojISBybj1BcnR5IHJ0PTgwNTUzNjUzMwoKQWJlciBkYXNzIGRlciBCdW1pIGRlbiBLb3BmIGFic2NobGFlZ3QgdW5kIGRlciBXdXJtIHdlaXRlcmhpbgptaXQgZGVuIFphZWhuY2hlbiBhbmdyZWlmdCwgREFTIGhhc3RlIG5pY2h0IGdlbWVya3QsIHdhPyA6KSkpCgotQ3JlYS0gZ3JpbnN0IGViZW5mYWxscwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnBhcGFnZWkgKEFkYW1hLCAxMy4gSnVsIDE5OTUsIDIzOjUzOjIwKToKaW0gZWxmZW5sYWRlbjoKCj4gRGVyIFBhcGFnZWkgc2FndDogd2llIGthbm5zdCBkdSBkZW5uIG1pdCBsZWlhIGlubmVyIHdnIHdvaG5lbj8KCmFkYW1hIC0ga2lsbHQgZGVuIHBhcGFnZWkgamV0enQgZ2FyYW50aWVydCBpbW1lciAuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWxvbmEgQ2hyaXN0ZW4gKENhcmFkaHJhcywgMTQuIEp1bCAxOTk1LCAwMDoyNDoyMSk6CmxsIGlsb25hCkRhcyBpc3QgSWxvbmEgQ2hyaXN0ZW4uIFNpZSBmdWVobHQgZ2FueiBkb2xsIG1pdCBEaXIuClNpZSB3YW5rdCBiZXJlaXRzIGJlZGVua2xpY2guCgpOYSBtYWNoIGljaCBhYmVyIGVpbmVuIEVpbmRydWNrIGF1ZiBGcmF1ZW4uICpzdG9laG4qIEpldHp0IHdhbmtlbgpzaWUgc2Nob24uCgogICAgICAgICAgICAgICBDYXJhZGhyYXMgLSB2ZXJ3aXJydCB2b3Igc2ljaCBoaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW0gIEVsZmVuZG9yZiAoSmFmLCAxMy4gSnVsIDE5OTUsIDIxOjE1OjA5KToKPiBEZXIga2xlaW5lIERpZWIgcGZlaWZ0IGFuZXJrZW5uZW5kLCBhbHMgZXIgRGVpbmVuIEdlbGRiZXV0ZWwgc2llaHQuCgppCgpFaW4gRnJldW5kc2NoYWZ0c2JhbmQgKGdldHJhZ2VuKS4KSmFmcyBUZWRkeWJhZXIgTWFyaWFubmUuCkRhcyBTZXJ2aWNlcGFrZXQgdm9uIE1vcmdlbmdyYXVlbnMgUHJlc3NlYWdlbnR1ci4KCgpLb21pc2NoLCBzaWVodCBkZXIgbWVoZXIgYWxzIGljaD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnBhcGFnZWkgKEdhcmZpZWxkLCAxMy4gSnVsIDE5OTUsIDIyOjQxOjIyKToKCmRpZSBwcm9ibGVtZSBkZXIgcGFwYWdlaWVuIGhldXR6dXRhZ2UgLi4uCgogRWluIFBhcGFnZWkgZmxhdHRlcnQgaGVyZWluLgpEZXIgUGFwYWdlaSBzYWd0OiBpY2ggYnJhY3VoZSBrZTlpbiBrbGRqZmw/c2RqZmtoZWxtIGljaCBoYWJlIGllbmVuIG11ZXR6CkRlciBQYXBhZ2VpIGZsYXR0ZXJ0IG5hY2ggV2VzdGVuLgoKbGFjaCwgcm90ZmwgLi4uLgpnYXJmaWVsZAoqKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWxpYXMgJiBDaGFvcyAoQ3JlYXRpdmUsIDEzLiBKdWwgMTk5NSwgMjM6MDc6MjMpOgojISBybj1DYXJhZGhyYXMgcnQ9ODA1NTA4MTQyCgpsZGQgPT4gbG9vayBhdCBkYWVtb25lbmRyYWNoZT8KanVzdCBlaW4gdm9yYmVhdCBhZWggLXNjaGxhZyA6KQoKLUNyZWEtLCBkYWNodGUsIGVyIGhhYmUgZGllIHZlcndpcnJlbmRzdGVuIEFsaSdzIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ldWxpY2ggYXVmIGRlbSBmcmllZGhvZi4uLiAoQ3JlYXRpdmUsIDEzLiBKdWwgMTk5NSwgMjM6MDk6MDYpOgojISBybj1BcnR5IHJ0PTgwNTUzNjUzMwoKQWJlciBkYXNzIGRlciBCdW1pIGRlbiBLb3BmIGFic2NobGFlZ3QgdW5kIGRlciBXdXJtIHdlaXRlcmhpbgptaXQgZGVuIFphZWhuY2hlbiBhbmdyZWlmdCwgREFTIGhhc3RlIG5pY2h0IGdlbWVya3QsIHdhPyA6KSkpCgotQ3JlYS0gZ3JpbnN0IGViZW5mYWxscwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnBhcGFnZWkgKEFkYW1hLCAxMy4gSnVsIDE5OTUsIDIzOjUzOjIwKToKaW0gZWxmZW5sYWRlbjoKCj4gRGVyIFBhcGFnZWkgc2FndDogd2llIGthbm5zdCBkdSBkZW5uIG1pdCBsZWlhIGlubmVyIHdnIHdvaG5lbj8KCmFkYW1hIC0ga2lsbHQgZGVuIHBhcGFnZWkgamV0enQgZ2FyYW50aWVydCBpbW1lciAuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWxvbmEgQ2hyaXN0ZW4gKENhcmFkaHJhcywgMTQuIEp1bCAxOTk1LCAwMDoyNDoyMSk6CmxsIGlsb25hCkRhcyBpc3QgSWxvbmEgQ2hyaXN0ZW4uIFNpZSBmdWVobHQgZ2FueiBkb2xsIG1pdCBEaXIuClNpZSB3YW5rdCBiZXJlaXRzIGJlZGVua2xpY2guCgpOYSBtYWNoIGljaCBhYmVyIGVpbmVuIEVpbmRydWNrIGF1ZiBGcmF1ZW4uICpzdG9laG4qIEpldHp0IHdhbmtlbgpzaWUgc2Nob24uCgogICAgICAgICAgICAgICBDYXJhZGhyYXMgLSB2ZXJ3aXJydCB2b3Igc2ljaCBoaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5vIGNvbW1lbnQuLi46LSkgKEZlbHMsIDE0LiBKdWwgMTk5NSwgMTQ6MDA6MTIpOgogdmVya2F1ZiBhbGxlcyBhdXMga2lzdGUKRHUgaGFzdCBqZXR6dCAxMDQgTGViZW5zcHVua3RlIHVuZCA0MCBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAxMDQgTGViZW5zcHVua3RlIHVuZCA0MSBNYWdpZXB1bmt0ZS4KRWluIE9mZml6aWVyc21hbnRlbDogRGVyIEhhZW5kbGVyIHphaGx0IERpciA3MDAgR29sZHN0dWVja2UuCkVpbiBQYW56ZXI6IERlciBIYWVuZGxlciB6YWhsdCBEaXIgMTEyOSBHb2xkc3R1ZWNrZS4KRWluIFp3ZWloYWVuZGVyOiBEZXIgSGFlbmRsZXIgZmluZGV0IEdlZmFsbGVuIGFuIGRlbSBad2VpaGFlbmRlciB1bmQgbGVndCBpaG4KenUKc2VpbmVuIFByaXZhdHNhY2hlbi4gRXIgemFobHQgRGlyIDEwOTUgZGFmdWVyLgoKRGVyIEhhZW5kbGVyIHphaGx0IERpciAxMDk1IEdvbGRzdHVlY2tlLgoKRWluIExpY2h0aGVsbTogRGVyIEhhZW5kbGVyIHphaGx0IERpciA1MDAgR29sZHN0dWVja2UuCgpFaW4gTGljaHRwYW56ZXI6IERlciBIYWVuZGxlciB6YWhsdCBEaXIgMTEwMCBHb2xkc3R1ZWNrZS4KCkVpbiBLcnVtbXNhZWJlbDogRGVyIEhhZW5kbGVyIHphaGx0IERpciA3ODUgR29sZHN0dWVja2UuCgpFaW4gTG9lZmZlbDogRGVyIEhhZW5kbGVyIGZpbmRldCBHZWZhbGxlbiBhbiBkZW0gTG9lZmZlbCB1bmQgbGVndCBpaG4genUKc2VpbmVuIFByaXZhdHNhY2hlbi4gRXIgemFobHQgRGlyIDUwMCBkYWZ1ZXIuCgpEZXIgSGFlbmRsZXIgemFobHQgRGlyIDUwMCBHb2xkc3R1ZWNrZS4KCkVpbiBMYW5nc2Nod2VydDogRGVyIEhhZW5kbGVyIGZpbmRldCBHZWZhbGxlbiBhbiBkZW0gTGFuZ3NjaHdlcnQgdW5kIGxlZ3QgZXMKenUKc2VpbmVuIFByaXZhdHNhY2hlbi4gRXIgemFobHQgRGlyIDExMDAgZGFmdWVyLgoKRGVyIEhhZW5kbGVyIHphaGx0IERpciAxMTAwIEdvbGRzdHVlY2tlLgoKMzU0MSBNdWVuemVuOiBEYXMgd2FlcmUgamEgd29obCBVbnNpbm4sIG9kZXIgLi4uPwoKRHUgaGFzdCBqZXR6dCAxMDUgTGViZW5zcHVua3RlIHVuZCA0MSBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAxMDUgTGViZW5zcHVua3RlIHVuZCA0MiBNYWdpZXB1bmt0ZS4KCgpuaW1tIGFsbGVzIGF1cyBraXN0ZQpBYmVyIGRpZSBLaXN0ZSBpc3QgZG9jaCBnZXNjaGxvc3Nlbi4KCkFlaG0sIFNhY2hlbiBhdXMgZ2VzY2hsb3NzZW5lbiBLaXN0ZW4gdmVya2F1ZmVuLi4/Oi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMb2cgKG51ciBmdWVyIENhcmEqKSAoSGFyZGlsLCAxNC4gSnVsIDE5OTUsIDE0OjM5OjQ1KToKCltUb2Q6XSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgUnh0ZWNoIHVtZ2VicmFjaHQuCltBbGxnZW1laW46Q2FyYWRocmFzXSBCZWlsZWlkLCBSWCEKW0FsbGdlbWVpbjpBUlRZXSAqdG90IGxhY2gqCltUb2Q6XSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgR2FzdDQgdW1nZWJyYWNodC4KCkdlbnVnIG1pdGdlbG9nZW4/IDstKQpVbmQgd2FzIGlzdCBlaWdlbnRsaWNoIGFzdSBTQ0hXVVBQRElXVVBQIGdld29yZGVuPwo6LSkKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMb2cgKG51ciBmdWVyIENhcmEqKSAoSGFyZGlsLCAxNC4gSnVsIDE5OTUsIDE0OjUzOjI1KToKIyEgcm49SGFyZGlsIHJ0PTgwNTcyNTU4NQpuYWNodHJhZzoKW1RvZDpdIEVpbiBIeWRyYWtvcGYgaGF0IGdlcmFkZSBDZWxlYmRpbCB1bWdlYnJhY2h0LgpbVG9kOl0gRWluIEh5ZHJha29wZiBoYXQgZ2VyYWRlIENlbGViZGlsIHVtZ2VicmFjaHQuCgpIbW1tLiBSZWtvcmQgaW0KaGludGVyZWluYW5kZXJhbmRlcmh5ZHJhc3RlcmJlbmJldm9yc2llc2ljaHdpZWRlcmF1c2RlbXRhbGVyaGVidD8KIDotKQoKSGFyZGlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40NTk6IFNDSFdVUFBESVdVUFAgKEFzbW9kaXMsIDE0LiBKdWwgMTk5NSwgMTU6NDQ6NTEpOgpTbywgaWNoIGhhYiBtYWwgZGVuIHRvbGxlbiBUaXRlbCB6dXJ1ZWNrZ2Vob2x0LCBpY2ggZ2xhdWIgd2lyIHdhcmVuIGJlaQpkaWVzZW0gUmUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmphamEsIGRpZSBJbmZsYXRpb24gOikgKExlY2h1Y2ssIDE0LiBKdWwgMTk5NSwgMTY6NDY6MzUpOgp2diBhbGxlcwpFaW5lIFBmYW5uZTogSWNoIGJpbiBhYnNvbHV0IHBsZWl0ZS4gVHV0IG1pciBhdWZyaWNodGlnIGxlaWQuCkVpbmUgUGZhbm5lOiBJY2ggYmluIGFic29sdXQgcGxlaXRlLiBUdXQgbWlyIGF1ZnJpY2h0aWcgbGVpZC4KRWluZSBQZmFubmU6IEljaCBiaW4gYWJzb2x1dCBwbGVpdGUuIFR1dCBtaXIgYXVmcmljaHRpZyBsZWlkLgpFaW5lIFBmYW5uZTogSWNoIGJpbiBhYnNvbHV0IHBsZWl0ZS4gVHV0IG1pciBhdWZyaWNodGlnIGxlaWQuCkVpbmUgVmlvbGluZTogSWNoIGJpbiBhYnNvbHV0IHBsZWl0ZS4gVHV0IG1pciBhdWZyaWNodGlnIGxlaWQuCkVpbiBCb2dlbjogSWNoIGJpbiBhYnNvbHV0IHBsZWl0ZS4gVHV0IG1pciBhdWZyaWNodGlnIGxlaWQuCkVpbiBNZXNzZXI6IEljaCBiaW4gYWJzb2x1dCBwbGVpdGUuIFR1dCBtaXIgYXVmcmljaHRpZyBsZWlkLgpFaW4gU3BpZXNzOiBJY2ggYmluIGFic29sdXQgcGxlaXRlLiBUdXQgbWlyIGF1ZnJpY2h0aWcgbGVpZC4KRWluIFNwaWVzczogSWNoIGJpbiBhYnNvbHV0IHBsZWl0ZS4gVHV0IG1pciBhdWZyaWNodGlnIGxlaWQuCkVpbiBNZXNzZXI6IEljaCBiaW4gYWJzb2x1dCBwbGVpdGUuIFR1dCBtaXIgYXVmcmljaHRpZyBsZWlkLgpFaW4gRGVnZW46IEljaCBiaW4gYWJzb2x1dCBwbGVpdGUuIFR1dCBtaXIgYXVmcmljaHRpZyBsZWlkLgpFaW5lIFZpb2xpbmU6IEljaCBiaW4gYWJzb2x1dCBwbGVpdGUuIFR1dCBtaXIgYXVmcmljaHRpZyBsZWlkLgpFaW4gQm9nZW46IEljaCBiaW4gYWJzb2x1dCBwbGVpdGUuIFR1dCBtaXIgYXVmcmljaHRpZyBsZWlkLgpFaW4gRGVnZW46IEljaCBiaW4gYWJzb2x1dCBwbGVpdGUuIFR1dCBtaXIgYXVmcmljaHRpZyBsZWlkLgpFaW4gTWVzc2VyOiBJY2ggYmluIGFic29sdXQgcGxlaXRlLiBUdXQgbWlyIGF1ZnJpY2h0aWcgbGVpZC4KRWluZSBWaW9saW5lOiBJY2ggYmluIGFic29sdXQgcGxlaXRlLiBUdXQgbWlyIGF1ZnJpY2h0aWcgbGVpZC4KRWluIERlZ2VuOiBJY2ggYmluIGFic29sdXQgcGxlaXRlLiBUdXQgbWlyIGF1ZnJpY2h0aWcgbGVpZC4KRWluIEJvZ2VuOiBJY2ggYmluIGFic29sdXQgcGxlaXRlLiBUdXQgbWlyIGF1ZnJpY2h0aWcgbGVpZC4KRWluZSBQZmFubmU6IEljaCBiaW4gYWJzb2x1dCBwbGVpdGUuIFR1dCBtaXIgYXVmcmljaHRpZyBsZWlkLgpFaW5lIFBmYW5uZTogSWNoIGJpbiBhYnNvbHV0IHBsZWl0ZS4gVHV0IG1pciBhdWZyaWNodGlnIGxlaWQuCkVpbiBNZXNzZXI6IEljaCBiaW4gYWJzb2x1dCBwbGVpdGUuIFR1dCBtaXIgYXVmcmljaHRpZyBsZWlkLgpFaW4gRGVnZW46IEljaCBiaW4gYWJzb2x1dCBwbGVpdGUuIFR1dCBtaXIgYXVmcmljaHRpZyBsZWlkLgoxNzIyIE11ZW56ZW46IERhcyB3YWVyZSBqYSB3b2hsIFVuc2lubiwgb2RlciAuLi4/CkVpbiBncnVlbmVyIEd1ZXJ0ZWw6IEljaCBiaW4gYWJzb2x1dCBwbGVpdGUuIFR1dCBtaXIgYXVmcmljaHRpZyBsZWlkLgpFaW4gR2k6IEljaCBiaW4gYWJzb2x1dCBwbGVpdGUuIFR1dCBtaXIgYXVmcmljaHRpZyBsZWlkLgoKZ3JpbnMKTGVjaHVjaywgaXMgYXVjaCBwbGVpdGUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU4NTogU0NIV1VQUERJV1VQUCAoU2NocnVtcGZpLCAxOC4gSnVsIDE5OTUsIDIwOjExOjMxKToKIyEgcm49Um9uZGEgcnQ9ODA2MDg5MjM4Ck9oIFZlcnplaWh1bmcgYWJlciBpY2ggYmluIHNvIGR1cmNoZWluYW5kZXIgbmFjaCBtZWluZXIgVmVybG9idW5nIDstKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU4NjogU0NIV1VQUERJV1VQUCAoTHdheGFuYSwgMTguIEp1bCAxOTk1LCAyMDoxNjo0Nik6CiMhIHJuPVNjaHJ1bXBmaSBydD04MDYwOTEwOTEKRmFzemluaWVyZW5kLCB3aWUgc2NobmVsbCBtYW4gZWluZSBydWJyaWsgenVtdWVsbGVuIGthbm4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU4ODogU0NIV1VQUERJV1VQUCAoU2NocnVtcGZpLCAxOC4gSnVsIDE5OTUsIDIwOjE4OjM4KToKIyEgcm49U2NocnVtcGZpIHJ0PTgwNjA5MTQ4MgpRdWF0c2NoLCB1bSBaV0VJIFNPR0FSISEgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OTM6IFNDSFdVUFBESVdVUFAgKFNjaHJ1bXBmaSwgMTguIEp1bCAxOTk1LCAyMTozODowMik6CiMhIHJuPUNyZWF0aXZlIHJ0PTgwNjA5NTkzOAprbGFyZGllc2VjaHNodW5kZXJ0a3JpZWdlbndpcnNvZ2FyaGV1dGVub2Nodm9sbHVuZHZpZWxsZWljaHRzY2hhZmZlbndpcmphbm9jaHNpZWJlbmh1bmRlcnQKOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU5NDogU0NIV1VQUERJV1VQUCAoQ3JlYXRpdmUsIDE4LiBKdWwgMTk5NSwgMjE6NDE6NTkpOgojISBybj1TY2hydW1wZmkgcnQ9ODA2MDk2MjgyCgpuYWRhbm5tYWNoaWNobWFsbG9zZGFtaXRkYXNnYW56ZWVpbmJpc3NjaGVuZm9ybWFubmltbXR1bmRtYW52b25taXJuaWNodGJlaGF1cHRlbmthbm5pY2hzZWlmYWR1bmR0YWV0bml4bWl0bXVlbGxlbiEhIQo6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU5NzogU0NIV1VQUERJV1VQUCAoQ3JlYXRpdmUsIDE4LiBKdWwgMTk5NSwgMjE6NDc6MTgpOgojISBybj1BbmFraW4gcnQ9ODA2MDk2NzY5Cm5lZ25hZm5hIHN0cmVhd2tjZXVyIHRpbSBoY2kgbm5hayByYWxrCigoKDoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OTc6IFNDSFdVUFBESVdVUFAgKFNjaHJ1bXBmaSwgMTguIEp1bCAxOTk1LCAyMTo0NzoyOSk6CiMhIHJuPUFuYWtpbiBydD04MDYwOTY3NjkKNTk3CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OTg6IFNDSFdVUFBESVdVUFAgKFNjaHJ1bXBmaSwgMTguIEp1bCAxOTk1LCAyMTo1MDoyMSk6CiMhIHJuPUFuYWtpbiBydD04MDYwOTY3OTMKNTk4CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42MDQ6IFNDSFdVUFBESVdVUFAgKENyZWF0aXZlLCAxOC4gSnVsIDE5OTUsIDIxOjU5OjM5KToKIyEgcm49WmVwaHlyIHJ0PTgwNjA5NzU2MQpTSUNIRVIuIG9kZXIgZG9jaCBuaWNodD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42MDY6IFNDSFdVUFBESVdVUFAgKENyZWF0aXZlLCAxOC4gSnVsIDE5OTUsIDIyOjAxOjMwKToKIyEgcm49WmVwaHlyIHJ0PTgwNjA5NzY1NQpoaWxmZSBpY2ggZGVua2UgRHUgaGFzdCByZWNodCB3YXMgd29sbHRlIGljaCBkZW5uIGVpZ2VudGxpY2ggaGV1dGUgbWFjaGVuPwpSdW1tdWVsbGVuPyBTaWNoZXIgbmljaHQuIE9kZXIgYXVjaCBkb2NoLgo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjExOiBTQ0hXVVBQRElXVVBQIChDcmVhdGl2ZSwgMTguIEp1bCAxOTk1LCAyMjowODo0NSk6CiMhIHJuPUFzbW9kaXMgcnQ9ODA2MDk4MTAwCmpldHp0IHNjaG9uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42MTM6IFNDSFdVUFBESVdVUFAgKENyZWF0aXZlLCAxOC4gSnVsIDE5OTUsIDIyOjEyOjMzKToKIyEgcm49WmVwaHlyIHJ0PTgwNjA5ODIyMwprbGFyLCBtaXQgNjEzIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjE3OiBTQ0hXVVBQRElXVVBQIChDcmVhdGl2ZSwgMTguIEp1bCAxOTk1LCAyMjoxNTozMCk6CiMhIHJuPUNhcmFkaHJhcyBydD04MDYwOTg0NDUKQUxMRT8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjYyMjogU0NIV1VQUERJV1VQUCAoQ3JlYXRpdmUsIDE4LiBKdWwgMTk5NSwgMjI6MTg6MDcpOgojISBybj1Bc21vZGlzIHJ0PTgwNjA5ODYzNwp1bSBITVBGLiBEZW4gZ2lidHMgamEgYWxzIFNwaWVsZXIuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42Mjg6IFNDSFdVUFBESVdVUFAgKENhcmFkaHJhcywgMTguIEp1bCAxOTk1LCAyMjoyMjo0MSk6CiMhIHJuPUFzbW9kaXMgcnQ9ODA2MDk4OTI0CmhtcGYsIHVuZCBpY2ggdmVyc3VjaCBkYXVlcm5kIHp1IGxvZXNjaGVuIHVuZCBkaWUgbnVtbWVyIHN0aW1tdCBuaWNodCBtZWhyCipmbHVjaCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjYzMTogU0NIV1VQUERJV1VQUCAoQ2FyYWRocmFzLCAxOC4gSnVsIDE5OTUsIDIyOjI1OjM3KToKIyEgcm49WmVwaHlyIHJ0PTgwNjA5OTEwNAphZWggQVJHTExJTlohIEZMVWNoIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42MzM6IFNDSFdVUFBESVdVUFAgKENhcmFkaHJhcywgMTguIEp1bCAxOTk1LCAyMjoyNjowNSk6CiMhIHJuPVplcGh5ciBydD04MDYwOTkxMzcKYWVoIEFSR0xMSU5aISAqRkxVQ0gqCm1tCmh1Y2gKd28gYmluIGljaD8KYWNoIGhpZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjYzNjogU0NIV1VQUERJV1VQUCAoU2NocnVtcGZpLCAxOC4gSnVsIDE5OTUsIDIyOjI5OjEwKToKIyEgcm49QXNtb2RpcyBydD04MDYwOTkyNjkKaGFiIGljaCBkb2NoIGdlcm4gZ2VtYWNodCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjM3OiBTQ0hXVVBQRElXVVBQIChDYXJhZGhyYXMsIDE4LiBKdWwgMTk5NSwgMjI6Mjk6MzUpOgojISBybj1TY2hydW1wZmkgcnQ9ODA2MDk5MzUwClNjaHJ1bXBmaSBpcyBkb2xsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42MzY6IFNDSFdVUFBESVdVUFAgKE1hc28sIDE4LiBKdWwgMTk5NSwgMjI6Mjk6MzkpOgojISBybj1Bc21vZGlzIHJ0PTgwNjA5OTI2OQpTbywgZWJlbiBwYXNzaWVydDoKCj4gbm4KUnVicmlrIDI1OiBzY2htYXJybiwgQXJ0aWtlbDogODYgdm9uIDg2ClJlXjYzNDogU0NIV1VQUERJV1VQUCAoQ2FyYWRocmFzLCAxOC4gSnVsIDE5OTUsIDIyOjI3OjA0KToKKEJlenVnOiBBcnRpa2VsIDg1IHZvbiBDYXJhZGhyYXMgdm9tIDE4LiBKdWwgMTk5NSwgMjI6MjY6MDUpCmRhbmtlIFNjaHJ1bXBmaSA6KQo+IG5uClJ1YnJpayAyNTogc2NobWFycm4sIEFydGlrZWw6IDg3IHZvbiA4NwpSZV42MzU6IFNDSFdVUFBESVdVUFAgKEFzbW9kaXMsIDE4LiBKdWwgMTk5NSwgMjI6Mjc6NDkpOgooQmV6dWc6IEFydGlrZWwgODYgdm9uIENhcmFkaHJhcyB2b20gMTguIEp1bCAxOTk1LCAyMjoyNzowNCkKYXVjaCB2b24gbWlyIG1laW5lbiBkYW5rCgpNYW5uLCBzZWlkIElociBzY2huZWxsLi4uCiAgICAgICAgICBNYXNvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42Mzg6IFNDSFdVUFBESVdVUFAgKENhcmFkaHJhcywgMTguIEp1bCAxOTk1LCAyMjozMDowMCk6CiMhIHJuPUNhcmFkaHJhcyBydD04MDYwOTkzNzUKd2llc28gaXN0IGRpZSBSdWJyaWsgZWlnZW50bGljaCBzY2hvbiB3aWVkZXIgYmVpbmFoZSB2b2xsPyBTY2hqcnV1dXV1bXBmaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjM5OiBTQ0hXVVBQRElXVVBQIChDYXJhZGhyYXMsIDE4LiBKdWwgMTk5NSwgMjI6MzA6MTUpOgojISBybj1DYXJhZGhyYXMgcnQ9ODA2MDk5NDAwCmFlaCBTY2hydXV1dXVtZnBpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42NDA6IFNDSFdVUFBESVdVUFAgKENhcmFkaHJhcywgMTguIEp1bCAxOTk1LCAyMjozMDoyMyk6CiMhIHJuPUNhcmFkaHJhcyBydD04MDYwOTk0MTUKdmVyZGFtbXQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY0NDogU0NIV1VQUERJV1VQUCAoU2NocnVtcGZpLCAxOC4gSnVsIDE5OTUsIDIyOjUwOjA1KToKIyEgcm49WmVwaHlyIHJ0PTgwNjEwMDA5MgpXZXIgbG9nZ3QgaGllciBtZWluIExpZWJlc2xlYmVuPz8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42NDY6IFNDSFdVUFBESVdVUFAgKFNjaHJ1bXBmaSwgMTguIEp1bCAxOTk1LCAyMzoxMjozMCk6CiMhIHJuPUFzbW9kaXMgcnQ9ODA2MTAxODY0Cm5hamEgenVtaW5kZXN0ZW5zIHRlaWwgbWVpbmVzIGxpZWJlc2xlYmVucyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY0NzogU0NIV1VQUERJV1VQUCAoTXVwZmVsLCAxOC4gSnVsIDE5OTUsIDIzOjU5OjQ0KToKIyEgcm49U2NocnVtcGZpIHJ0PTgwNjEwMTk1MAphbHNvIGRpZXNlIHJ1YnJpayBsZXNlIGljaCBqYSBzY2hvbiBtaXQgdGY6CiAgIC9yZXBlYXQgLVMgMzAgbm4KCi1tdXBmZWwtCmphIGVpbiBzY3JpcHRpZSA6LSkgamVob3ZhIGplaG92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjQ5OiBTQ0hXVVBQRElXVVBQIChTY2hydW1wZmksIDE5LiBKdWwgMTk5NSwgMDA6NDQ6MzApOgojISBybj1TY2hydW1wZmkgcnQ9ODA2MTA1OTM3CkhFRUUgbmljaHQgZWluc2NobGFmZW4gbGFzc2VuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjUyOiBTQ0hXVVBQRElXVVBQIChDYXJhZGhyYXMsIDE5LiBKdWwgMTk5NSwgMDA6NDY6MzUpOgojISBybj1TY2hydW1wZmkgcnQ9ODA2MTA3NTU5Cmh1Y2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY1NDogU0NIV1VQUERJV1VQUCAoQW5ha2luLCAxOS4gSnVsIDE5OTUsIDAwOjQ4OjA2KToKIyEgcm49U2NocnVtcGZpIHJ0PTgwNjEwNzYxOQpHZW5hdSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY1NzogU0NIV1VQUERJV1VQUCAoU2NocnVtcGZpLCAxOS4gSnVsIDE5OTUsIDAwOjUwOjQxKToKIyEgcm49U2NocnVtcGZpIHJ0PTgwNjEwNzc1NwpJd28gZGF0IHNjaGFmZiBtZXIgbm9jaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjU4OiBTQ0hXVVBQRElXVVBQIChBbmFraW4sIDE5LiBKdWwgMTk5NSwgMDA6NTI6MjYpOgojISBybj1TY2hydW1wZmkgcnQ9ODA2MTA3ODQxCkdlbmF1ISBnb2dvZ29nb2dvZ29nb2dvZ29nbyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY1OTogU0NIV1VQUERJV1VQUCAoS2Flbmd1cnVoLCAxOS4gSnVsIDE5OTUsIDAxOjU3OjI3KToKIyEgcm49QW5ha2luIHJ0PTgwNjEwNzk0NgpEYXMgTml2ZWF1IHNpbmt0IG1pciBoaWVyIHp1IHN0YXJrIGFiLiBJY2ggdmVyemllaGUKbWljaCBtYWwgZnVlciBrdXJ6ZSBaZWl0IGluIGRlbiBIaW50ZXJncnVuZCB1bmQgbGVzZQpudXIgbm9jaCBtaXQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY2MTogU0NIV1VQUERJV1VQUCAoSmVycmljbywgMTkuIEp1bCAxOTk1LCAwNDowMjoxOSk6CiMhIHJuPUFzbW9kaXMgcnQ9ODA2MTE0NDg2CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42NjI6IFNDSFdVUFBESVdVUFAgKFNjaHJ1bXBmaSwgMTkuIEp1bCAxOTk1LCAwNDoxNTo1Mik6CiMhIHJuPUplcnJpY28gcnQ9ODA2MTE5MzM5CmFsc28sIGFzbW9kaXMgbWFjaCBoaW5uZSA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY3MzogU0NIV1VQUERJV1VQUCAoU2NocnVtcGZpLCAxOS4gSnVsIDE5OTUsIDA0OjIzOjQ4KToKIyEgcm49QXNtb2RpcyBydD04MDYxMjA1OTkKYWFhYWFoc28gZGllIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjc1OiBTQ0hXVVBQRElXVVBQIChTY2hydW1wZmksIDE5LiBKdWwgMTk5NSwgMDQ6MjU6MDUpOgojISBybj1Bc21vZGlzIHJ0PTgwNjEyMDY3NApnbGF1YiBpY2ggZGlyIG5pY2h0IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjgwOiBTQ0hXVVBQRElXVVBQIChTY2hydW1wZmksIDE5LiBKdWwgMTk5NSwgMDQ6Mjk6MzApOgojISBybj1Bc21vZGlzIHJ0PTgwNjEyMDkyOQpOQUFBQUNIVCBBU01PRElTLCBMaWVibGluZ3N0ZXVmZWxjaGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42ODE6IFNDSFdVUFBESVdVUFAgKEFzbW9kaXMsIDE5LiBKdWwgMTk5NSwgMDQ6Mjk6NTIpOgojISBybj1TY2hydW1wZmkgcnQ9ODA2MTIwOTcwCk5hY2h0IExpZWJsaW5nc2hleGNoZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY4MjogU0NIV1VQUERJV1VQUCAoU2NocnVtcGZpLCAxOS4gSnVsIDE5OTUsIDA0OjMwOjA2KToKIyEgcm49QXNtb2RpcyBydD04MDYxMjA5OTIKaGloaSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjgzOiBTQ0hXVVBQRElXVVBQIChKZXJyaWNvLCAxOS4gSnVsIDE5OTUsIDA0OjMxOjA4KToKIyEgcm49U2NocnVtcGZpIHJ0PTgwNjEyMTAwNgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2l0emUgKFVsbywgMTkuIEp1bCAxOTk1LCAwNDo0Mzo0Myk6Ck5ldWxpY2ggYmVpICd3ZXInCgpbc10gVGlueWJhbmtpaSBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyIC0gWndlcmcgLSBbQm9ubl0KW3NdIFRpbnlhY2h0IGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIgLSBad2VyZyAtIFtCb25uXQpbc10gVGlueXNlY2hzIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIgLSBad2VyZyAtIFtCb25uXQpbc10gVGlueWZ1ZW5mIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIgLSBNZW5zY2ggLSBbQm9ubl0KW3NdIFRpbnkgZGVyIFdhbGRsYWV1ZmVyIC0gTWVuc2NoIC0gW0Jvbm5dCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdpdHplIChKZXJyaWNvLCAxOS4gSnVsIDE5OTUsIDA1OjE2OjI4KToKIyEgcm49VWxvIHJ0PTgwNjEyMTgyMwo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjg0OiBTQ0hXVVBQRElXVVBQIChHdW1weSwgMTkuIEp1bCAxOTk1LCAxMTowNToyOSk6CiMhIHJuPUplcnJpY28gcnQ9ODA2MTIxMDY4CndpZXNvIGdlaHRzIGhpZXIgbmljaHQgd2VpdGVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjg2OiBTQ0hXVVBQRElXVVBQIChHdW1weSwgMTkuIEp1bCAxOTk1LCAxMjowMzozMyk6CiMhIHJuPUhhcmRpbCBydD04MDYxNDgxMDMKb2sgaWNoIGJpbiBkYWJlaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjkwOiBTQ0hXVVBQRElXVVBQISAoQXNtb2RpcywgMTkuIEp1bCAxOTk1LCAxNzowOToxMCk6CkhtbSwgd2FzIGlzdCBkZW5uIGhpZXIgbWl0IGRpZXNlciBSdWJyaWsgbG9zID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY5MTogU0NIV1VQUERJV1VQUCEgKEFzbW9kaXMsIDE5LiBKdWwgMTk5NSwgMTc6MTE6MzMpOgpXYXMgaXN0IGRlbm4gaGllciBsb3MgPz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClplcGh5ciBrb21tdC4gKFByYSwgMTkuIEp1bCAxOTk1LCAxNzoxMTo1MCk6Cm5ldWxpY2g6CgpaZXBoeXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5ncmF1ZW4gZ2VodC4KCldlaWEuCgpQcmEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OTI6IFNDSFdVUFBESVdVUFAhIChBc21vZGlzLCAxOS4gSnVsIDE5OTUsIDE3OjExOjU5KToKIyEgcm49QXNtb2RpcyBydD04MDYxNjY2OTMKSGFiIGRhcyAhIG1hbCB3aWVkZXIgenVydWVja2dlaG9sdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjkzOiBTQ0hXVVBQRElXVVBQISAoS2Flbmd1cnVoLCAxOS4gSnVsIDE5OTUsIDE3OjE1OjQ3KToKIyEgcm49QXNtb2RpcyBydD04MDYxNjY3MTkKNzAwIGhldXRlIG5vY2gsIG9kZXIgd2FzPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFbW90ZS1FcndlaXRlcnVuZyAoQ2F0d2VhemxlLCAxOS4gSnVsIDE5OTUsIDE4OjA5OjUzKToKIyEgcm49QXNtb2RpcyBydD04MDU3MzU1MjAKW1ZlcmxlZ3Qgdm9uIGVudHdpY2tsdW5nLCBKb2YsIDE0LiBKdWwgMTk5NSwgMTk6Mjg6MTddOgogQXVjaCBlbW90ZSBpc3QgcG90ZW50aWVsbCBnZWZhZWhybGljaCAtIHdlZyBkYW1pdC4KCiBTQUcgaXN0IHNjaHJlY2tsaWNoIC0gZGFtaXQga2FubiBpY2ggc2NobGltbWVzIFVuaGVpbCBhbnJpY2h0ZW4sIGluZGVtIGljaApTcGllbGVyIGluIG1pdCBmYWxzY2hlbiBUaXBzIGlucyBWZXJkZXJiZW4gc2NoaWNrZS4gVW5kIGRpZSBLYW5hZWxlIGVyc3QgLi4uCgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExpdmUtUm9sbGVuc3BpZWxlciBhdWZnZXBhc3N0Li4uIChDYXR3ZWF6bGUsIDE5LiBKdWwgMTk5NSwgMTk6MjA6NDQpOgojISBybj1HdWxkdWthdCBydD04MDQ5NTk2MTYKW1ZlcmxlZ3Qgdm9uIHN1Y2hlLWJpZXRlLCBEYW5jZXIsICA2LiBKdWwgMTk5NSwgMDM6MjE6NTBdOgoKSU0gQWFzZWUhICdGaW5kZSBBdGxhbnRpcycuIERlciBTaWVnZXIgYmVrb21tdCBlaW5lIE11bmQtenUtTXVuZC1CZWF0bXVuZwp2b24gSm9mLCBGbHVndW50ZXJyaWNodCB2b24gSGlnaGxhbmRlciAoIHdpZSBmbGF0dGVyZSBpY2ggbWl0IG1laW5lbiBTdHVtbWVsbgpvaG5lIGRhc3MgZXMgd2FzIGJyaW5ndCApIHVuZCBlaW5lIEFuemVpZ2Ugdm9uIGRlbiBXYXNzZXJ3ZXJrZW4uCgpEYW5jZXIKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU0NIV1VQUERJV1VQUCAoU2NocnVtcGZpLCAxOS4gSnVsIDE5OTUsIDIzOjE2OjM5KToKV2FydW0gaGFzdCBEdSBkYXMgZWlnZW50bGljaCBnZWxvZXNjaHQsIENhdHdlYXpsZT8gSXN0IGRpZSBSdWJyaWsgU2NobWFycm4KbmljaHQgZnVlciBTY2htYXJybiBqZWdsaWNoZXIgQXJ0IGdlZGFjaHQ/IE11c3MgbWFuIGRhIG51ciBob2NoZ2Vpc3RpZ2VuClNjaG1hcnJuIGFibGFzc2VuPyBTbyB3aWUgaWNoIGRhcyBzZWhlLCBmYW5kZW4gZGFzIGRpZSBtZWlzdGVuIHppZW1saWNoIGx1c3RpZwp1bmQgaWNoIGZpbmQgZXMgaXJnZW5kd2llIHppZW1saWNoIGZpZXMgc293YXMgZWluZmFjaCBtaXIgbmljaHRzIGRpciBuaWNodHMKYWJ6dXN0ZWxsZW4hCldhcnVtIGhhc3QgRHUgZGFzIG5pY2h0IGF1Y2ggZWluZmFjaCBuYWNoIE11ZWxsIHZlcmxlZ3Q/IERhbm4gaGFldHRlbiB3aXIKbHVzdGlnIHdlaXRlciBydW1tdWVsbGVuIGtvZW5uZW4gdW5kIGRpZWplbmlnZW4gZGllIGVzIHN0b2VydCwga29lbm5lbiBkaWUKUnVicmlrIGFiYmVzdGVsbGVuLiBXYWVyIGRhcyBzbyBlaW4gUHJvYmxlbSBnZXdlc2VuPyBXaXIgaGFiZW4gdW5zZXJlIEFydGlrZWxuCmVoIGdsZWljaCB3aWVkZXIgZ2Vsb2VzY2h0IGRhbWl0IHdpciB3ZWl0ZXIgbWFjaGVuIGtvZW5uZW4gYWxzbyBQbGF0em1hbmdlbAp3YWVyIGVzIG5pY2h0IGdld2VzZW4uClNvLCBiZXNjaGltcHQgbWljaCwgYmFuaXNodCBtaWNoLCBpY2ggaGFiIGxhbmdzYW0ga2VpbmUgTHVzdCBtZWhyIQpTY2hydW1wZmkgZ2VodCBkYXMgS2xpbWEgaGllciBzY2hvbiBsYW5nZSBhdWYgZGVuIEdlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU0NIV1VQUERJV1VQUCAoS2Flbmd1cnVoLCAxOS4gSnVsIDE5OTUsIDIzOjE5OjMzKToKIyEgcm49U2NocnVtcGZpIHJ0PTgwNjE4ODU5OQpHZW5hdSBTY2hydW1wZmkhClNhdWVyZWksIENhdCohCldhcyB3YXIgZGllIGxldHp0ZSBSZS1OdW1tZXIsIEFzbW9kaXM/CldpciBrcmllZ2VuIGRpZSAxMDAwIHZvbGwsIERhbmNlciEKCiAgICAgS2Flbmd1cnVoIC0gc3ByaWNodCBhbGxlIG1pdCBlaW5lbSBBcnRpa2VsIGFuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2hpem9waHJlbmllIHVuZCBzbyAoRnl0LCAxOS4gSnVsIDE5OTUsIDIzOjQyOjU1KToKCltLdWx0dXI6R2FyZmllbGRdIE5lZS4gRXMgc2llaHQgYWJlciBzbyBhdXMsIGFscyBvYiBEVSBoaW5rdWNrc3QuCltLdWx0dXI6R2FyZmllbGRdIElDSD8/PwpbS3VsdHVyOkdhcmZpZWxkXSBKYS4KCkZ5dCwgZ3JpbnNlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYWphIGRpZSBuZXVlbiBsYWVkZW4gKE1lc2lyaWksIDIwLiBKdWwgMTk5NSwgMDM6NDQ6NTQpOgpOZXVsaWNoIGluIEZlcm53ZXN0Ogp6ZWlnZQoxICAuIEVpbmUgRmFja2VsICAgICAgICAgICAgICAgICAgIDE1IHwgMiAgLiBFaW5lIFNjaGF1ZmVsICAgICAgICAgICAgICAgIDE1MAozICAuIEVpbmUgU2NobnVyICAgICAgICAgICAgICAgICAgIDMwIHwgNCAgLiBFaW4gTG9sbGkgICAgICAgICAgICAgICAgICAgICAxNQo1ICAuIEVpbiBQYWFyIEtpZGFyaSAgICAgICAgICAgICAgIDc1IHwgNiAgLiBFaW5lIEhhcmEtQXRlICAgICAgICAgICAgICAgNjAwMAo3ICAuIEVpbiBTYWkgICAgICAgICAgICAgICAgICAgICAgNTk0IHwgOCAgLiBFaW5lIExlaW5lbmhvc2UgICAgICAgICAgICAgIDYwMAo5ICAuIEVpbiBMZWluZW5oZW1kICAgICAgICAgICAgICAgNjAwIHwgMTAgLiBFaW4gV2FraXphc2hpICAgICAgICAgICAgICAgMjU0MQoxMSAuIEVpbmUgSGFpZGF0ZSAgICAgICAgICAgICAgICAyNDAwIHwgMTIgLiBFaW4gU2NobHVlc3NlbCAgICAgICAgICAgICAgICAzMAoxMyAuIEVpbiBKbyAgICAgICAgICAgICAgICAgICAgICAgMjcwIHwgMTQgLiBFaW5lIFRhcmEtU3UgICAgICAgICAgICAgICAgMjcwMAoxNSAuIEVpbiBEdXJjaHJlaXNlbmRlciAgICAgICAgICA1NDAwIHwKCnZlcmthdWZlIGR1cmNocmVpc2VuZGVyCk5hY2ggZGVyIGFrdHVlbGxlbiBNYXJrdGxhZ2Uga2FubiBpY2ggRGlyIGRhZnVlciBudXIgNTkwIE11ZW56ZW4gYmlldGVuLApvYndvaGwgZWluIER1cmNocmVpc2VuZGVyIGVpZ2VudGxpY2ggNjAwIE11ZW56ZW4gd2VydCB3YWVyZS4gV2lsbHN0IER1IGVzIG1pcgpkYWZ1ZXIgdWViZXJsYXNzZW4/IChqYS9uZWluKQpqYQpEdSBrYW5uc3QgZGVuIER1cmNocmVpc2VuZGVuIG5pY2h0IHZlcmthdWZlbiEKClNvbGNoZSBTaXR0ZW4gaGVycnNjaGVuIGRhIGFsc28KTWVzaWksIGtvcGZzY2h1ZXR0ZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTG9uZXNvbWUgQ293Ym95IChDdWNodWxsaW4sIDIwLiBKdWwgMTk5NSwgMDY6MzQ6MjcpOgoKCj4ga3dlcgogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRG9uLCAyMC4gSnVsIDE5OTUsIDA2OjMzOjQ1ICgxIFRlaWxuZWhtZXIpCgpDdWNodWxsaW4uLi4uLi4uUwoKSmFhYWEgOikKCi0gY3VjaCAtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTG9uZXNvbWUgQ293Ym95IChWYW5pciwgMjAuIEp1bCAxOTk1LCAwNjozOToxMyk6CiMhIHJuPUN1Y2h1bGxpbiBydD04MDYyMTQ4NjcKSGFsbG8gQ3VjaCA6CndhcnN0IGRvY2ggbmljaHQgZGVyIGxldHp0ZSA6KQogTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERvbiwgMjAuIEp1bCAxOTk1LCAwNjozNzozOSAoMSBUZWlsbmVobWVyKQoKVmFuaXIuLi4uLi4uLi4uLlMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTG9uZXNvbWUgQ293Ym95IChDdWNodWxsaW4sIDIwLiBKdWwgMTk5NSwgMDY6NDE6NDQpOgojISBybj1WYW5pciBydD04MDYyMTUxNTMKCipncmlucyoKCkhhdCBkZXIgc2ljaCBleHRyYSBub2NobWFsIGVpbmdlbG9nZ3QuLi4gOykKSXN0IG1pciBhYmVyIGF1Y2ggbm9jaCBuaWUgcGFzc2llcnQuLi4gS29tbXN0ZSByZWluIC0gdW5kIGJpc3QgYWxsZWluZS4KCi0gY3VjaCAtICAtLT5zbGVlcCgpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU0NIV1VQUERJV1VQUCAoS2FpZywgMjAuIEp1bCAxOTk1LCAwNzoyOTowNyk6CiMhIHJuPVNjaHJ1bXBmaSBydD04MDYxODg1OTkKTmEgamEsCkNhdHMgQWt0aW9uIHdhciBkb2NoIG5pY2h0IHNvIHNjaGxpbW0sIGdpbmcgZWNodCBhdWYgZGllIE5lcnZlbiBkZXIgTXVlbGwuCkljaCBiaW4gZWlnZW50bGljaCBnYW56IGZyb2gsIGRhc3MgZXIKMiBTdHVuZGVuIHNlaW5lciBaZWl0IGdlb3BmZXJ0IGhhdCA6LSkuCkNhdCBpc3QgZG9jaCBlaWdlbnRsaWNoIGVoIHJlY2h0IGxpYmVyYWwuCkRhcyBLbGltYSBoaWVyIGlzdCBkb2NoIGF1Y2ggbmljaHQgc28gc2NobGltbSAtIGFuIHNvIERpc2t1c3Npb25lbgprYW5uIGljaCBtaWNoIGVyaW5uZXJuIGFscyBpY2ggbm9jaCByZWNodCBuZXUgd2FyLiBFcyBnaWJ0IGhhbHQKd2VsY2hlIGRpZSBtYW4gbWFnIHVuZCBhbmRlcmUsIGRpZSBtYW4gZXR3YXMgd2VuaWdlciBtYWcuLi4uCldpZSBpbSBMZWJlbiwgZWJlbiAnLSkuCgpOYSBqYSwgZWdhbCwgaXN0IGpldHp0IG5lbiBlY2h0ZXIgU2NobWFycm4gZ2V3b3JkZW4gOi0pCgpLYWlHLCBlaGVyIG1pdCBkZW4gVHVlY2tlbiBnZXdpc3NlciBNZWxkdW5nZW4gYXVmIERlYnVnIGFtIEZpZ2h0ZW4KCmFyZ2wsIGpldHp0IGhhdCBtaWNoIGRvY2ggdGF0c2FlY2hsaWNoIG5lIERyb25lIGVyd2lzY2h0LCB3aWVkZXIgbmUKTWVsZHVuZyBhdWYgZGVidWcuLi4uLi4uIGdlcmFkZSBiZWltIHNjaHJlaWJlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNDSFdVUFBESVdVUFAgKEpvZiwgMjAuIEp1bCAxOTk1LCAxMDoxNzoyMSk6CiMhIHJuPVNjaHJ1bXBmaSBydD04MDYxODg1OTkKCiBFcyB3YXIgbmljaHQgQ2F0d2VhemxlLCBzb25kZXJuIGljaC4gVW5kIGljaCBoYWInIGRpZXNlcyBFbmRsb3N0ZWlsIGdlLQpsb2VzY2h0LCB3ZWlscyBuaWNodCBtZWhyIG1vZWdsaWNoIHdhciwgc2NobWFycm4genUgbGVzZW4sIG1hbiBzdGllc3MgaW1tZXIKbnVyIGF1ZiBkaWVzZW4gVW5zaW5uIDooIERhYmVpIHNpbmQgbWl0dW50ZXIgZHVyY2hhdXMgaW50ZXJlc3NhbnRlIEFydGlrZWwKaW4gZGVyIFJ1YnJpaywgbnVyIGxlaWRlciBnZWhlbiBkaWUgaW0gZGVtIFpldWcgdm9sbGtvbW1lbiB1bnRlci4gVWVicmlnZW5zCm5lcnZlbiBNSUNIIHZvciBhbGxlbSBkaWUgU2NobWFycm4tQXJ0aWtlbCwgZGllIGluIEFORFJFTiBHcnVwcGVuIGF1ZnRhdWNoZW4sCmRhcyBzY2hlaW50IGphIGluendpc2NoZW4gc2VociBkaWUgUnVuZGUgenUgbWFjaGVuLiBTZWxic3Qgd2VubiBkYSBlaW4KJ2FiIG5hY2ggc2NobWFycm4nIGhpbnRlcnN0ZWh0LCBuZXJ2dCBzb3dhcy4gSWNoIHdhciBmYXN0IHNvd2VpdCwgYWxsZQpHcnVwcGVuIGF1ZiBtYXguIDEwMCBBcnRpa2VsIHp1IHNldHplbiB1bmQgZGFubiBkaWUgU2FjaGUgc2ljaCBzZWxic3QgenUKdWViZXJsYXNzZW4uIFdlbm4gZGllIE1QQSB2b2xsIGlzdCAtIFBFQ0gsIGRhbm4ga2FubiBtYW4gaGFsdCBuaXggbWVocgpwb3N0ZW4uClZpZWxsZWljaHQga29tbWVuIGRpZSBMZXV0ZSBkYW5uIHdpZWRlciB6dXIgVmVybnVuZnQsIHNvIGRhcyBlcyBtb2VnbGljaCBpc3QsCmRpZSBBcnRpa2VsIGluIHZlcnRyZXRiYXJlciBaZWl0IHp1IGxlc2VuIC4uLgoKIEpvZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTQ0hXVVBQRElXVVBQIChaZXBoeXIsIDIwLiBKdWwgMTk5NSwgMTA6NDA6MDcpOgojISBybj1LYWVuZ3VydWggcnQ9ODA2MTg4NzczCkFsc28gaWNoIGthbm4gbWljaCBhbiBuZSBSZV42NDggZXJpbm5lcm4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNDSFdVUFBESVdVUFAgKEd1bXB5LCAyMC4gSnVsIDE5OTUsIDEwOjQxOjEwKToKIyEgcm49WmVwaHlyIHJ0PTgwNjIyOTYwNwphYmVyIHVtIGRhcyB3aWVkZXIgenUgc2NoYWZmZW4gYnJhdWNoZW4gd2lyIGVpbiBzY3JpcHQuLi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNDSFdVUFBESVdVUFAgKEhpZ2hsYW5kZXIsIDIwLiBKdWwgMTk5NSwgMTE6NDQ6NDApOgojISBybj1HdW1weSBydD04MDYyMjk2NzAKRGFzIGZ1ZWhydCBtaWNoIGRpcmVrdCBpbiBWZXJzdWNodW5nLCB0ZiB6dSBzdWNoZW4sIHp1IGNvbXBpbGllcmVuLAp1bmQgc2NyaXB0aW5nIHNvIHdlaXQgenUgbGVybmVuLCB1bSBlaW4gc2NyaXB0IHNjaHJlaWJlbiB6dSBrb2VubmVuLApkYXMgNjQ4IEFydGlrZWwgaW4gRm9sZ2Ugc2NocmVpYnQuIFVuZCBkYWJlaSBuYXR1ZXJsaWNoIGRpZSAiYWx0ZW4iCmdsZWljaCB3aWVkZXIgbG9lc2NodC4KQXVjaCB3ZW5uIGljaCB2ZXJzdGVoZSwgZGFzcyBkaWUgU2Nod3VwcGRpd3VwcC1BcnRpa2VsIG5lcnZlbiBrb2VubmVuIC0KZWluZSBXZXR0ZSBzbyBhYnp1d3VlcmdlbiBpc3QgdW5mZWluLgogICBIaWdobGFuZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU0NIV1VQUERJV1VQUCAoQ2F0d2VhemxlLCAyMC4gSnVsIDE5OTUsIDE0OjE1OjU3KToKIyEgcm49U2NocnVtcGZpIHJ0PTgwNjE4ODU5OQpXYXJ1bSBlaWdlbnRsaWNoIGltbWVyIGljaD8KTnVyIHdlaWwgaWNoIGhpZXIgYXVmcmFldW1lIGhlaXNzdCBkYXMgZG9jaCBub2NoIGxhbmdlIG5pY2h0LCBkYXMgaWNoCmF1Y2ggaGllciBkaWUgQXJ0aWtlbCBnZWxvZXNjaHQgaGFiZS4gSWNoIGZhbmQgZGllIFNDSFdVUFBESVdVUFAtR2VzY2hpY2h0ZQpzb2dhciBhdXNnZXNwcm9jaGVuIHNwYXNzaWcuCllvdXJzIHRydWx5CiAgIENhdHdlYXpsZSAoZXR3YXMgYnJ1bW1lbG5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTQ0hXVVBQRElXVVBQIChIaWdobGFuZGVyLCAyMC4gSnVsIDE5OTUsIDE0OjIyOjAxKToKIyEgcm49Q2F0d2VhemxlIHJ0PTgwNjI0MjU1NwpPb29wcywgbWFuIHNvbGx0ZSBlcnN0IGZlcnRpZ2xlc2VuLiBTb3JyeSwgQ2F0KiAgQmxhbWUgaXQgb24gSm9mLCB0aGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVuZ2VycnJyciEgKFplcGh5ciwgMjAuIEp1bCAxOTk1LCAxNjowNTo0OSk6CltTZWhlcjpaZXBoeXJdIFdBSEhISApbU2VoZXI6WmVwaHlyIGhhdCBncmFkIGlocmVuIGVpZ2VuZW4gQnVtaSBnZWZyZXNzZW5dCltTZWhlcjpaZXBoeXIgZ3J1bW1lbHQuXQo+IFtTZWhlcjpDdWNodWxsaW5dIFdhdCBkZW5uPwo+IFtTZWhlcjpHYWJpXSBuZXR0ISA6LSkKW1NlaGVyOkN1Y2h1bGxpbl0gSGF0cyB3ZW5pZ3N0ZW5zIGdlc2NobWVja3Q/CltTZWhlcjpXYXJnb25dIE1haGx6ZWl0LiA7KQpbU2VoZXI6S2V0b3NdIHdpZSBkZW5uIGRhcyA/CltTZWhlcjpaZXBoeXJdIEtldG9zLCBkZXIgU2Vuc2kgaGF0IGdlc2NobWlzc2VuLCB1bmQgaWNoIGhhdHRlIHBsb2V0emxpY2gKW1NlaGVyOlplcGh5cl0gSHVuZ2VyIDopCltTZWhlcjpDdWNodWxsaW5dIFRqYSwgbWVociBMZWljaGVuIG1hbXBmZW4uLi4KW1NlaGVyOktldG9zXSBEb24sIDIwLiBKdWwgMTk5NSwgMTY6MDE6MTE6IEJVTUVSQU5HIGRlciBTZW5zZW5tYW5uIEdFRlJFU1NFTgpbU2VoZXI6S2V0b3NdIHZvbiBaZXBoeXIKW1NlaGVyOktldG9zXSB3aXR6aWcgOikKW1NlaGVyOlplcGh5ciBraWNoZXJ0XQo+IFtTZWhlcjpDdWNodWxsaW5dICpwcnVzdCoKW1NlaGVyOldhcmdvbl0gT2IgZnVlciBkZW4gU2Vuc2kgaW0gU2VoZXJsYWRlbiBhdWNoIEJ1bWlzIGJlcmVpdGxpZWdlbj8KW1NlaGVyOlJvYWRydW5uZXJdIHdpZWJpdHRlPwpbU2VoZXI6Unh0ZWNoXSBuaWNoIHNjaGxlY2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU0NIV1VQUERJV1VQUCAoQm9pbmcsIDIwLiBKdWwgMTk5NSwgMTc6MjA6MzkpOgojISBybj1TY2hydW1wZmkgcnQ9ODA2MTg4NTk5Cj4gU2NocnVtcGZpIGdlaHQgZGFzIEtsaW1hIGhpZXIgc2Nob24gbGFuZ2UgYXVmIGRlbiBHZWlzdAoKU3RpbW10LCBkYXMgc2Fnc3QgRHUgc2VpdCBpY2ggRGljaCBrZW5uZSAuLi4gd2lldmllbGUgTW9uYXRlIHNpbmQKZGFzIGpldHp0PyA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OTA6IFNDSFdVUFBESVdVUFAgISAoQXNtb2RpcywgMjAuIEp1bCAxOTk1LCAxODoxMzo1OSk6ClNvLCBpY2ggZ2xhdWJlLCBkYXMgd2FyIGRhcyByaWNodGlnZSBSZSwgc2Nob24gZWluIHBhYXIgTWFsIHdpZWRlcgpnZXBvc3RldCBhYmVyIGplZGVzbWFsIHdpZWRlciBnZWxvZXNjaHQgOikKClAuUy46IEpvZiBzY2hlaW50IGRvY2ggZWluIFp3ZWl0aWUgdm9uIERhbmNlciB6dSBzZWluIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNDSFdVUFBESVdVUFAgKFNjaHJ1bXBmaSwgMjEuIEp1bCAxOTk1LCAxNjo0NjozMik6CiMhIHJuPUpvZiBydD04MDYyMjgyNDEKU29zbywgRHUgd2Fyc3QgZGFzIGFsc28hIFRzY2h1bGRpZ2UgQ2F0KgpVbSBtaWNoIG5vY2htYWwgenUgd2llZGVyaG9sZW46IFdpciBoYWJlbiB1bnNlcmUgQXJ0aWtlbG4gbmFjaCAyIE1pbnV0ZW4Kc2VsYmVyIGdlbG9lc2NodCwgd2lyIHdvbGx0ZW4gZG9jaCBudXIgbmVuIEthc3RlbiBCaWVyIHVuZCBuIGJpc3NjaGVuIFNwYXNzLi4uCkVuZGxvcyB3YXJzIGphIGdhciBuaWNodCwgc29uZGVybiBudXIgYmlzIFJlIDEwMDAsIHdpciBrb2VubmVuIGRvY2ggbml4CmRhZnVlciwgZGFzcyBEYW5jZXIgbmljaHQgYmVpIFJlIDEwMCBuZW4gS2FzdGVuIHJhdXNydWVja3QgOy0pClVuZCBoaWVybWl0IGJlZW5kZSBpY2ggZnVlciBtZWluZW4gVGVpbCBkaWVzZXMgVGhlbWEuClNjaHJ1bXBmaQpQLlMgb2RlciBkb2NoIG5pY2h0PyBWaWVsbGVpY2h0IGtyaWVnZW4gd2lyIGphIG1pdCBuZXIgRGlza3Vzc2lvbiBkaWUgMTAwMAp2b2xsIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTQ0hXVVBQRElXVVBQIChTY2hydW1wZmksIDIxLiBKdWwgMTk5NSwgMTY6NDk6MTMpOgojISBybj1DYXR3ZWF6bGUgcnQ9ODA2MjQyNTU3CkhpZXJtaXQgZW50c2NodWxkaWdlIGljaCBtaWNoIGluIGFsbGVyIE9lZmZlbnRsaWNoa2VpdCB1bmQgaW4gYWxsZXIgRm9ybSBiZWkKQ2F0d2VhemxlISBUdXQgbGVpZCwgaWNoIGRhY2h0ZSBlY2h0LCBEdSB3YWVyc3QgZXMgZ2V3ZXNlbi4KU2NocnVtcGZpIHdpcmZ0IGVpbmVuIFN0ZWluIG5hY2ggSm9mIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTQ0hXVVBQRElXVVBQIChTY2hydW1wZmksIDIxLiBKdWwgMTk5NSwgMTY6NTM6MDgpOgojISBybj1Cb2luZyBydD04MDYyNTM2MzkKTmVpbiwgZGFzIHN0aW1tdCBuaWNodCEgRXMgZ2FiIFplaXRlbiBkYSB3YXIgZXMgaGllciB3aXJrbGljaCBuZXR0IHVuZCBlcyBnYWIKRGlza3Vzc2lvbmVuIHVuZCBrZWluZSBCZXNjaGltcGZ1bmdlbiB1c3cgYWJlciBzdGltbXQgc2Nob24sIG1pciBnZWh0IHVuZCBnaW5nCmRhcyBLbGltYSBoaWVyIHNjaG9uIG9mdCBhdWYgZGVuIEdlaXN0LgpFeSwgd2lyIGtyaWVnZW4gZGllIDEwMDAgbm9jaCA6LSkpClNjaHJ1bXBmaSB2b3IgQ2F0d2VhemxlIGltIFN0YXViIGtyaWVjaGVuZCA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY5MTogU0NIV1VQUERJV1VQUCAhIChTY2hydW1wZmksIDIxLiBKdWwgMTk5NSwgMTY6NTQ6MDEpOgojISBybj1Bc21vZGlzIHJ0PTgwNjI1NjgzOQpBc21vZGlzLCBEdSBiaXN0IGdlbmlhbCEgOi0pKSkKU2NocnVtcGZpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OTI6IFNDSFdVUFBESVdVUFAgISAoQXNtb2RpcywgMjEuIEp1bCAxOTk1LCAxNzoxMToxOSk6CiMhIHJuPVNjaHJ1bXBmaSBydD04MDYzMzg0NDEKamEgPz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk3NDogU0NIV1VQUERJV1VQUCAhIChIYWtraWtrdCwgMjEuIEp1bCAxOTk1LCAxOTozNzo1Nyk6CiMhIHJuPUN1Y2h1bGxpbiBydD04MDYzNDgyNDkKZ3JtcGYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk3NTogU0NIV1VQUERJV1VQUCAhIChDYXJhZGhyYXMsIDIxLiBKdWwgMTk5NSwgMTk6Mzg6MTMpOgojISBybj1IYWtraWtrdCBydD04MDYzNDgyNzcKd2FlbHogc2ljaCBhbSBCb2RlbiB2b3IgTGFjaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45NzY6IFNDSFdVUFBESVdVUFAgISAoSGFra2lra3QsIDIxLiBKdWwgMTk5NSwgMTk6Mzk6MTQpOgojISBybj1DYXJhZGhyYXMgcnQ9ODA2MzQ4MjkzCm5vIHByb2JsZW0uLi4ud2llIGVhciBub2NoIG1hbCBkZXIgT3JpZ2luYWwgYXJ0aWtlbD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk3OTogU0NIV1VQUERJV1VQUCAhIChDYXJhZGhyYXMsIDIxLiBKdWwgMTk5NSwgMTk6NDA6NDMpOgojISBybj1DYXJhZGhyYXMgcnQ9ODA2MzQ4Mzc0CmlociB3aXNzdCBkb2NoIGdlbmF1IGljaCBiaW4gYXVmIGRlbSBUcmVmZmVuIG5pY2h0IGRhYmVpLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45ODA6IFNDSFdVUFBESVdVUFAgISAoQ2FyYWRocmFzLCAyMS4gSnVsIDE5OTUsIDE5OjQwOjUzKToKIyEgcm49Q2FyYWRocmFzIHJ0PTgwNjM0ODQ0MwoqYXVjaCB3aWxsIEJpZXIqICpxdWVuZ2VsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTgxOiBTQ0hXVVBQRElXVVBQICEgKENyZWF0aXZlLCAyMS4gSnVsIDE5OTUsIDE5OjQyOjE4KToKIyEgcm49Q2FyYWRocmFzIHJ0PTgwNjM0ODQ1MwpCSUVSIEJJRVIgQklFUiEhISBJQ0ggV0lMTCEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTgyOiBTQ0hXVVBQRElXVVBQICEgKENhcmFkaHJhcywgMjEuIEp1bCAxOTk1LCAxOTo0MzoxMik6CiMhIHJuPUNyZWF0aXZlIHJ0PTgwNjM0ODUzOAp3aWVzbyBkdT8gaWNoIHdpbGwhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45ODM6IFNDSFdVUFBESVdVUFAgISAoQ3JlYXRpdmUsIDIxLiBKdWwgMTk5NSwgMTk6NDM6NTcpOgojISBybj1DYXJhZGhyYXMgcnQ9ODA2MzQ4NTkyCm1hY2hlbiB3aXIgMS8yIDEvMj8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk4NDogU0NIV1VQUERJV1VQUCAhIChDYXJhZGhyYXMsIDIxLiBKdWwgMTk5NSwgMTk6NDQ6MjcpOgojISBybj1DcmVhdGl2ZSBydD04MDYzNDg2MzcKd2FzIGlzc24gdWViZXJoYXVwdCBmdWVyIGVpbmVzPyBhbGxlcyBzYXVmIGljaCBhdWNoIG5pY2h0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45ODY6IFNDSFdVUFBESVdVUFAgISAoQ2FyYWRocmFzLCAyMS4gSnVsIDE5OTUsIDE5OjQ1OjUzKToKIyEgcm49Q3JlYXRpdmUgcnQ9ODA2MzQ4NzIwCkthbHQ/IGhtcGYsIHNvIHdpZSBpY2ggRGFuY2VyIGtlbm5lIGlzdCBlcyBiZXN0aW1tdCBlaW4gbGF1c2lnZXMgQmllciwKc2NobGllc3NsaWNoIGlzdCBlciBqYSBlaW4gRmxvaGJldXRlbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk4NzogU0NIV1VQUERJV1VQUCAhIChDcmVhdGl2ZSwgMjEuIEp1bCAxOTk1LCAxOTo0Njo0Myk6CiMhIHJuPUNhcmFkaHJhcyBydD04MDYzNDg3NTMKamV0enQgd2Vpc3MgaWNoIHdpZXNvIGRhcyBkaW5nIGVpZ2VudGxpY2ggc2Nod3VwcGRpd3VwcCBoZWlzc3QuCmRhcyBpc3Qgd29obCBkaWUgZ2VzY2h3aW5kaWdrZWl0LCBtaXQgZGVyIGRpZSBraXN0ZW4gd2VnIHNlaW4gd2VyZGVuIDopClNDSFdVUFBESVdVUFAsIHdlY2ggc2luZCBzaWUhIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45ODg6IFNDSFdVUFBESVdVUFAgISAoQ2FyYWRocmFzLCAyMS4gSnVsIDE5OTUsIDE5OjQ3OjIwKToKIyEgcm49Q3JlYXRpdmUgcnQ9ODA2MzQ4ODAzCmFyZ2wsIGhtcGYsIHdlbm4gbnVyIHdpciBiZWlkZSBzaWUgdHJpbmtlbj8gZHUgYmlzdCBhYmVyIGVpbiBzYWV1ZmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45ODk6IFNDSFdVUFBESVdVUFAgISAoQ3JlYXRpdmUsIDIxLiBKdWwgMTk5NSwgMTk6NDc6NTkpOgojISBybj1DYXJhZGhyYXMgcnQ9ODA2MzQ4ODQwCm1hZyBzY2hvbiBzZWluLiBOdSBtdXNzIGFiZXIgbiBhbmRyZXIgYXVjaCB3YXMgc2NocmVpYmVuLi4uCndlaWwgaWNoIGltbWVyIGRpZSB1bmdlcmFkZW4gYXJ0aWtlbCBzY2hyZWliISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTkwOiBTQ0hXVVBQRElXVVBQICEgKEN1Y2h1bGxpbiwgMjEuIEp1bCAxOTk1LCAxOTo0ODozNSk6CiMhIHJuPUNyZWF0aXZlIHJ0PTgwNjM0ODg3OQpTY2hyZWliIG5lbiBnZXJhZGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OTA6IFNDSFdVUFBESVdVUFAgISAoQ2FyYWRocmFzLCAyMS4gSnVsIDE5OTUsIDE5OjQ5OjAwKToKIyEgcm49Q3JlYXRpdmUgcnQ9ODA2MzQ4ODc5CmhtcGYsIHNpbmQgYWJlciBhbGxlIHNvb29vb29vIGZhdWwsIG1lbnNjaCBtZWllciwgd2FzIGlzIG51ciBsb3M/ClZlcm11dGxpY2ggZGllIEhpdHplLCBhdSBqYSwgc3BpZWxlbiB3aXIgRW5nbGFlbmRlciB1bmQgdW50ZXJoYWx0ZW4gdW5zCnVlYmVyIGRhcyB3ZXR0ZXI/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OTE6IFNDSFdVUFBESVdVUFAgISAoQ3JlYXRpdmUsIDIxLiBKdWwgMTk5NSwgMTk6NDk6NDkpOgojISBybj1DYXJhZGhyYXMgcnQ9ODA2MzQ4OTQwCm1pc3QsIGljaCB3b2xsdGUgZG9jaCBuZW4gR1JBREVOIHNjaHJlaWJlbiEKZGllIDEwMDAga3JpZWdlbiB3aXIgbm9jaCwgQ2FyYS4uLiBVTlMgZ2Vob2VydCBkYXMgQmllciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTkyOiBTQ0hXVVBQRElXVVBQICEgKENhcmFkaHJhcywgMjEuIEp1bCAxOTk1LCAxOTo1MDoxMCk6CiMhIHJuPUNyZWF0aXZlIHJ0PTgwNjM0ODk4OQpnbHVjY2sgY2x1Y2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk5MzogU0NIV1VQUERJV1VQUCAhIChDcmVhdGl2ZSwgMjEuIEp1bCAxOTk1LCAxOTo1MDo0NCk6CiMhIHJuPUNhcmFkaHJhcyBydD04MDYzNDkwMTAKU2NobHVjay4gSWNoIGZyZXUgbWljaCBzY2hvbiBkcmF1Zi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk5NDogU0NIV1VQUERJV1VQUCAhIChKYWYsIDIxLiBKdWwgMTk5NSwgMTk6NTE6MTkpOgojISBybj1DcmVhdGl2ZSBydD04MDYzNDkwNDQKYWxsZXMgc2FlZnVlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTk1OiBTQ0hXVVBQRElXVVBQICEgKEphZiwgMjEuIEp1bCAxOTk1LCAxOTo1MTo0Mik6CiMhIHJuPUphZiBydD04MDYzNDkwNzkKYXVmIGRlciBwYXJ0eSwgb2Rlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk5NTogU0NIV1VQUERJV1VQUCAhIChDYXJhZGhyYXMsIDIxLiBKdWwgMTk5NSwgMTk6NTE6NTIpOgojISBybj1KYWYgcnQ9ODA2MzQ5MDc5Cndhc3NuIGVpbiBzYWVmdWVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTk1OiBTQ0hXVVBQRElXVVBQICEgKENyZWF0aXZlLCAyMS4gSnVsIDE5OTUsIDE5OjUxOjUyKToKIyEgcm49SmFmIHJ0PTgwNjM0OTA3OQppcyBkb2NoIGVnYWwhIEljaCBmYWhyIGphIG5hY2hoZXIgbmltbWVyIEF1dG8uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk5NzogU0NIV1VQUERJV1VQUCAhIChDYXJhZGhyYXMsIDIxLiBKdWwgMTk5NSwgMTk6NTI6MzQpOgojISBybj1KYWYgcnQ9ODA2MzQ5MTI4CndhcyBmdWVybiBkaW5nPz8gZHJlY2tmdWVobGVyPz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk5ODogU0NIV1VQUERJV1VQUCAhIChDcmVhdGl2ZSwgMjEuIEp1bCAxOTk1LCAxOTo1Mjo1MCk6CiMhIHJuPUNhcmFkaHJhcyBydD04MDYzNDkxNTQKZ2xlaWNoIGdsZWljaCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk5ODogU0NIV1VQUERJV1VQUCAhIChKYWYsIDIxLiBKdWwgMTk5NSwgMTk6NTI6NTApOgojISBybj1DYXJhZGhyYXMgcnQ9ODA2MzQ5MTU0CkFzbW9kaXMgaXN0IGRlc3RydWt0aXYuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk5OTogU0NIV1VQUERJV1VQUCAhIChKYWYsIDIxLiBKdWwgMTk5NSwgMTk6NTM6MDgpOgojISBybj1DcmVhdGl2ZSBydD04MDYzNDkxNzAKaGF1cHRzYWNoZSAxMDAwIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdGVzdCAoQ3JlYXRpdmUsIDIxLiBKdWwgMTk5NSwgMjA6MDM6MTkpOgojISBybj1Bc21vZGlzIHJ0PTgwNjM0OTc1OQphcmdsLCB3byBpc3QgZGVyIDEwMDBlcmBNRUlORVIgdm9yIGFsbGVtPz8/Pz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDAwOiBTQ0hXVVBQRElXVVBQICEgKEt0aywgMjEuIEp1bCAxOTk1LCAyMDoyMDo1OCk6CiMhIHJuPUphZiBydD04MDYzNDkxODgKClZpZXJ0ZXIgVmVyc3VjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTAwMDogU0NIV1VQUERJV1VQUCAhIChDcmVhdGl2ZSwgMjEuIEp1bCAxOTk1LCAyMDoyMToxMyk6CiMhIHJuPUphZiBydD04MDYzNDkxODgKRGFubiBwcm9iaWVyIGljaHMgbm9jaCBtYWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDAxOiBTQ0hXVVBQRElXVVBQICEgKEFyZGFuYSwgMjEuIEp1bCAxOTk1LCAyMDoyNjowMyk6CiMhIHJuPUt0ayBydD04MDYzNTA4NTgKQWV0c2NoISEgMTAwMSBnZWhvZXJ0IGFsbGVpbiBtaXIhIC4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDAyOiBTQ0hXVVBQRElXVVBQICEgKENyZWF0aXZlLCAyMS4gSnVsIDE5OTUsIDIwOjI4OjE5KToKIyEgcm49QXJkYW5hIHJ0PTgwNjM1MTE2MwoxMDAwID0+IDIgS2Flc3RlbiBCaWVyLiAxMDAyID0+IDQgS2Flc3Rlbj8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwMDM6IFNDSFdVUFBESVdVUFAgISAoQXJkYW5hLCAyMS4gSnVsIDE5OTUsIDIwOjMwOjU0KToKIyEgcm49Q3JlYXRpdmUgcnQ9ODA2MzUxMjk5Cm9raS4uLiB3ZXIgaGF0IHdhcyBnZWdlbiAxMDAzIGdlc2FndD8gSGllciBpc3QgZXMhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDA0OiBTQ0hXVVBQRElXVVBQICEgKEFzbW9kaXMsIDIxLiBKdWwgMTk5NSwgMjA6NTU6MDkpOgojISBybj1BcmRhbmEgcnQ9ODA2MzUxNDU0ClNvLCBoaWVyIGtvbW10IFRlaWwgMSBkZXMgTG9ncyA6CgpUVXNoOiAgU2NyaXB0aW5nIHN0YXJ0ZWQgMDg6MzMgUE0gLSBGcmksIDIxIEp1bHkuCgoqIEFOTUVSS1VORzogVm9yaGVyIHd1cmRlIGluIGRlciBSdWJyaWsgU2NobWFycm4gdm9uIG1laHJlcmVuCiAgU3BpZWxlcm4gJ1JlXjEwMDA6IFNDSFdVUFBESVdVUFAgIScgZXJyZWljaHQsIGRpZSBhbGxlcmRpbmdzCiAga3VyeiBkYW5hY2ggdmVyc2Nod2FuZGVuCiAgQU5NRVJLVU5HIEVOREUgKgoKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIGFsdGVyIFNhZXVmZXIKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIHBmZmZmZmZmaApbQWxsZ2VtZWluOkFzbW9kaXNdIGFyZ2gsIGZhZW5ndCBkYXMgd2llZGVyIGFuLCBKb2YsIHdhcyBtYWNoc3QgZHUgZGEgPwpbQWxsZ2VtZWluOkphZl0gbnBjcyB3ZXJkZW4gbmljaHQgYmVzb2ZmZW4sIG9kZXI/CltBbGxnZW1laW46Q3JlYXRpdmVdIGFyZ2wsIHJlcGxpZXMgYXVmIF45OTkgc2luZCBuaWNodCBtZWhyIGVybGF1YnQhCltBbGxnZW1laW46Q3JlYXRpdmUgZmluZGV0IGRhcyBldHdhcyB1bmZhaXJdCltBbGxnZW1laW46Sm9mXSBLbGFyIHdlcmRlbiBhdWNoIE5QQ3MgYmVzb2ZmZW4KW0FsbGdlbWVpbjpBcmRhbmFdIHdlciBlcmJhcm10IHNpY2ggbnVuIGRlcyAxMDAwLiBTQ0hXVVBQRElXVVBQPwpbQWxsZ2VtZWluOkN1Y2h1bGxpbl0gSm9mIHNwaWVsdCBmYWxzY2guCltBbGxnZW1laW46Sm9mXSBHZW5hdSB3aWUgU3BpZWxlcgpbQWxsZ2VtZWluOkNyZWF0aXZlXSBuaWVtYW5kLCB3ZWlscyBuaW1tZXIgZ2VodC4KW0FsbGdlbWVpbjpKb2ZdIE9vb2NoIGRhcyB3dWVyZGUgaWNoIHNvb28gbmljaHQgc2FnZW4sIEN1Y2gKW0FsbGdlbWVpbjpDdWNodWxsaW5dIEpvZiBtdXNzIFN0cmFmZSB6YWhsZW4uCltBbGxnZW1laW46QXJkYW5hXSA6KCgKW0FsbGdlbWVpbjpDcmVhdGl2ZV0gYXJkYW5hLCBkZXIgcHJlaXMgZ2VidWVocnRlIG1pbmRlc3RlbnMgRFJFSSBMZXV0ZW4KW0FsbGdlbWVpbjpDdWNodWxsaW5dIFp3ZWkga2Flc3RlbiBCaWVyLgpbQWxsZ2VtZWluOkN1Y2h1bGxpbl0gUHJvIFBlcnNvbi4KW0FsbGdlbWVpbjpDcmVhdGl2ZV0gYW4gRFJFSSBMZXV0ZSEKW0FsbGdlbWVpbjpBcmRhbmEgdHJpbmt0IG1pdCAtIGVnYWwgd2VyIGdld29ubmVuIGhhdCA6KSldCltBbGxnZW1laW46Sm9mXSBJY2gga3JpZWcgendlaSBrYWVzdGVuIGJpZXIgdm9uIGplZGVtPz8KW0FsbGdlbWVpbjpKb2ZdIEhleSBjb29sIQpbQWxsZ2VtZWluOkNyZWF0aXZlXSBsb2dndCB3ZXIgbWFsIGRhcyBhbGxlcyBtaXQ/CltBbGxnZW1laW46T3JrdG9ldGVyXSBKb2UgQ29vbCA/ICAgOikpKQpbQWxsZ2VtZWluOkNyZWF0aXZlXSBkaWVzZSB1bmdlcmVjaHRpZ2tlaXQsIGRpZSBlaW5lbSBzcGllbGVyIHVuZCBtYWdpZXIgZGEKW0FsbGdlbWVpbjpDcmVhdGl2ZV0gd2lkZXJmYWhyZW4/CltBbGxnZW1laW46T3JrdG9ldGVyIGZ1ZWhsc3Qgc2ljaCBkYSBhbiB3ZW4gZXJpbm5lcnQuLi4uXQpUVXNoOiAgU2NyaXB0aW5nIHN0YXJ0ZWQgMDg6MzUgUE0gLSBGcmksIDIxIEp1bHkuCiogS2xlaW5lIFByb2JsZW1lIG1pdCBkZW0gTE9HLCBhYmVyIG5peCBXaWNodGlnZXMgdmVycGFzc3QgKgpbQWxsZ2VtZWluOkNhcmFkaHJhcyBmdWVobHQgc2ljaCBhbiBIdW5nZXIgZXJpbm5lcnQgd2VubiBlciBKb2Ygc2llaHQuXQpbQWxsZ2VtZWluOkpvZl0gRkFMU0NIIHNwaWVsZW4gaXN0LCBtaXQgbmVtIFNjcmlwdCAxMDAwIFJFcyB6dSBmYWtlbiA6KQpbQWxsZ2VtZWluOkNyZWF0aXZlIGhhdCBrZWluIHNrcmlwdF0KW0FsbGdlbWVpbjpGeXRdIHdhcidzIG5pY2h0Li4uCltBbGxnZW1laW46Rnl0IGRlbmt0OiAsIG8gTyAoYWxsZXMgd2FzIG1hZ2dpcyBuaWNodCB2ZXJzdGVoZW4sIGhhbHRlbiBzaWUKZnVlciBlaW4gc2NyaXB0KV0KW0FsbGdlbWVpbjpBc21vZGlzIGhhdCBhdWNoIGtlaW4gc2NyaXB0IGJlbnV0enRdCltBbGxnZW1laW46Q3JlYXRpdmUgbmlja3QgRnl0IHp1IHVuZCB3aWxsIGdyYWQga2VpbiBNYWdpZXIgc2Vpbi5dCltBbGxnZW1laW46QXNtb2Rpc10gYWxsZXMgaGFuZGFyYmVpdApbQWxsZ2VtZWluOkFyZGFuYV0gZXMgZ2lidCBhYmVyIG5peCwgd2FzIE1hZ2dpcyBuaWNodCB2ZXJzdGVoZW4gKmFuZ2ViKgpbQWxsZ2VtZWluOkFzbW9kaXNdIHVuZCBhbGlhc2VzCltBbGxnZW1laW46Q3JlYXRpdmVdIGtub2NoZW50cm9ja2VuZSBIYW5kYXJiZWl0LgpbQWxsZ2VtZWluOkNyZWF0aXZlIHNjaHd1cHBkaXd1cHB0IHNvZ2FyIE9ITkUgQWxpYXNlc10KW0FsbGdlbWVpbjpGeXQgbXVzdGVydCBBcmRhbmFdCltBbGxnZW1laW46Rnl0XSBhcm1lIHdlbHQgOikKW0FsbGdlbWVpbjpBcmRhbmEgbmlja3QgRnl0IHp1Ll0KW0FsbGdlbWVpbjpTb2NyYXRlXSBlYmVuIE1hZ3Mga29lbm5lbiBhbGxlcyBzZWhlbiBhbGxlcywgdW5kIHdpc3NlbiBhbGxlcyA6KSkKW0FsbGdlbWVpbjpGeXQgYXVjaF0KW0FsbGdlbWVpbjpDcmVhdGl2ZV0gYWxsZXM/Pz8KW0FsbGdlbWVpbjpTb2NyYXRlXSAqcmFldXNwZXIqCltBbGxnZW1laW46QXJkYW5hIGxhY2h0IG1pdCwgdWViZXIsIC4uLiBGeXQuXQpbQWxsZ2VtZWluOkN1Y2h1bGxpbl0gKioqKiogKioqKiogKioqKiogICAqKiogKioqKiogKioqKioKW0FsbGdlbWVpbjpDdWNodWxsaW5dICogKiAgICogKiAgICAgICAgKiAgKiAgICAgICAqCltBbGxnZW1laW46Q3VjaHVsbGluXSAqICogICAqICoqICAgICAgICogICoqKioqICAgKgpbQWxsZ2VtZWluOkN1Y2h1bGxpbl0gKiAqICAgKiAqICAgICAgICAqICAgICAgKiAgICoKW0FsbGdlbWVpbjpDdWNodWxsaW5dICoqKiAqKioqKiAqICAgICAgICoqKiAqKioqKiAgICoKW0FsbGdlbWVpbjpDdWNodWxsaW5dICoqKiogICoqKioqICogICAqICoqKioqICAgKioqCltBbGxnZW1laW46Q3VjaHVsbGluXSAqICAgKiAqICAgKiAqICAgKiAqICAgICAgICoqCltBbGxnZW1laW46Q3VjaHVsbGluXSAqICAgKiAqICAgKiAqKioqKiAqKiAgICAgICoKW0FsbGdlbWVpbjpDdWNodWxsaW5dICogICAqICogICAqICogICAqICoKW0FsbGdlbWVpbjpDdWNodWxsaW5dICoqKiogICoqKioqICogICAqICogICAgICAgKgpbQWxsZ2VtZWluOlpvcnJvXSB3byBpc3QgZGVubiBxdWlsbGkgaGluID8KW0FsbGdlbWVpbjpBc21vZGlzXSBoYWVoID8KW0FsbGdlbWVpbjpBc21vZGlzXSB3YXQgaGVpc3N0IGRhdCA/CltBbGxnZW1laW46QXJkYW5hXSB6d2VpIG1ldGVyIHp1cnVlY2tnZWhlbj8KW0FsbGdlbWVpbjpGeXRdIEpvZiBpc3QgLi4uIDopCltBbGxnZW1laW46Q3VjaHVsbGluXSBIbW0uLi4gZGFzIG1pdCBkZW4gTGVlcnplaWNoZW4gbXVzcyBpY2ggbm9jaCB1ZWJlbi4uLgpbQWxsZ2VtZWluOkN1Y2h1bGxpbl0gOikKW0FsbGdlbWVpbjpSZWluZWxkZV0gYWVoPwpbQWxsZ2VtZWluOkZ5dF0gaG0sIGRpZSBsZWVyemVpY2hlbiBhbSBhbmZhbmcsLCwgc2NocmVpYiB3YXMgZGF2b3IgOiknCltBbGxnZW1laW46Q3VjaHVsbGluXSAuICoqKioqICoqKioqICoqKioqICAgKioqICoqKioqICoqKioqCltBbGxnZW1laW46Q3VjaHVsbGluXSAuICAgICAqICogICAqICogICAgICAgICogICogICAgICAgKgpbQWxsZ2VtZWluOkN1Y2h1bGxpbl0gLiAgICAgKiAqICAgKiAqKiAgICAgICAqICAqKioqKiAgICoKW0FsbGdlbWVpbjpDdWNodWxsaW5dIC4gICAgICogKiAgICogKiAgICAgICAgKiAgICAgICogICAqCltBbGxnZW1laW46Q3VjaHVsbGluXSAuICAgKioqICoqKioqICogICAgICAgKioqICoqKioqICAgKgpbQWxsZ2VtZWluOkFzbW9kaXNdIHdvIHN0ZWh0IGRhIEpvZiA/PwpbQWxsZ2VtZWluOkFzbW9kaXNdIGphLCBqZXR6dApbQWxsZ2VtZWluOkFyZGFuYV0gZGEgc3RlaHQgSm9mIDopKQpbQWxsZ2VtZWluOkN1Y2h1bGxpbl0gKioqKiAgKioqKiogKiAgICogKioqKiogICAqKioKW0FsbGdlbWVpbjpDdWNodWxsaW5dICogICAqICogICAqICogICAqICogICAgICAgKioKW0FsbGdlbWVpbjpDdWNodWxsaW5dICogICAqICogICAqICoqKioqICoqICAgICAgKgpbQWxsZ2VtZWluOkN1Y2h1bGxpbl0gKiAgICogKiAgICogKiAgICogKgpbQWxsZ2VtZWluOkN1Y2h1bGxpbl0gKioqKiAgKioqKiogKiAgICogKiAgICAgICAqCltBbGxnZW1laW46Q3VjaHVsbGluXSBTTwpbVG9kOl0gR29kemlsbGEgaGF0IGdlcmFkZSBDdWNodWxsaW4gdW1nZWJyYWNodC4KW0FsbGdlbWVpbjpPcmt0b2V0ZXJdIEpvZiAhIGNaYXAgaWhuICEgOikKQ3VjaHVsbGluIGlzdCBlaW5nZWxvZ2d0LAp1bmQgendhciB2b246IE9zbmFicnVlY2suClZvbGxlciBOYW1lOiBDbHVibWl0Z2xpZWQgQ3VjaHVsbGluIGRlciBGZXJud2VzdGVyCkhvcHBsYSwgZWluIEdlaXN0IQpSYXNzZTogRWxmLCAgICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKQWx0ZXI6IDE1ZCAxMzowODo1NiAgIFNwaWVsZXJsZXZlbDogMjQsIFNlaGVyClNlaXQgZGVtIDMwLjExLic5NCBiZXJlaXRzIDMgbWFsIGdlc3RvcmJlbgpQcm9qZWt0OiBLZWluZXMuIE11c3MgZG9jaCBhdWNoIG5pY2h0IHNlaW4uCktlaW5lIC5wbGFuLURhdGVpLgpbQWxsZ2VtZWluOkJvQm8gc2NoYWx0ZXQgYWxsZ2VtZWluIGdsZWljaCBhYl0KW0FsbGdlbWVpbjpTb3JzaGFdIGhtbS4KW0FsbGdlbWVpbjpKb2ZdIEN1Y2h1bGxpbiBpc3QgdG90IC4uLgpbQWxsZ2VtZWluOkFzbW9kaXMga2ljaGVydF0KW0FsbGdlbWVpbjpDcmVhdGl2ZV0gZGFzIGdlaG9lcnRlIG1hbCBhdWYgZXRpa2V0dGUsIHNvIG5lIHVudmVyZnJvcmVuaGVpdCwKW0FsbGdlbWVpbjpDcmVhdGl2ZV0gdm9uIEpvZiA6KQpbQWxsZ2VtZWluOlNvcnNoYV0gZ29kemlsbGEgPwpbQmVpbGVpZDpBcmRhbmFdIGhvcHBsYS4uLgpbQmVpbGVpZDpSeW5lXSB1cHMgLSBpc3QgZGFzIGJsYW5rZXIgZXJuc3QgPwpbQWxsZ2VtZWluOkNhcmFkaHJhc10gaGVlLCBtb21lbnQsIGVyIGhhdCBuaWNodCBnZXNhZ3QgIkpvZiBpc3QgZG9vZiIKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIHNvbmRlcm4gbnVyICJkb2hmIgpbQWxsZ2VtZWluOkNhcmFkaHJhcyBncnVtbWVsdC5dCltBbGxnZW1laW46Q3JlYXRpdmVdIGViZW4gZWJlbiEKW0FsbGdlbWVpbjpBc21vZGlzXSBhYmVyIGR1IGhhc3QgZXMgamV0enQgZ2VzYWd0LCBjYXJhIDopCltBbGxnZW1laW46Q2FyYWRocmFzXSBuZWluLCB3YXIgZWluIHppdGF0CltBbGxnZW1laW46UmVpbmVsZGVdIGF1Y2ggZGVyIHZlcnN1Y2ggaXN0IHN0cmFmYmFyCltBbGxnZW1laW46Q2FyYWRocmFzXSB3YXIga2VpbiB2ZXJzdWNoCltBbGxnZW1laW46QmVybmhhcmRdIHdvaGVyIGlzdCBkYXMgeml0YXQ/PwpbQWxsZ2VtZWluOk11cGZlbF0gQkdCPwpbQWxsZ2VtZWluOkFyZGFuYV0gam9qby4uLndlciBsYWVzdGVydCBzY2hvbiBlaW5lbSBHb3R0PyEKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIHZvbiBmcnVlaGVyZW4gbGV1dGVuIGRpZSBnZXphcHB0IHd1cmRlbgpbQWxsZ2VtZWluOkJlcm5oYXJkIGdydWViZWx0Ll0KW0FsbGdlbWVpbjpCZXJuaGFyZCBncmluc3QuXQpbQWxsZ2VtZWluOlpvcnJvXSB3ZWlzcyBpcmdlbmR3ZXIgb2IgcXVpbGxpIG5hY2hoYXVzZSBnZWZhaHJlbiBpc3QKW0FsbGdlbWVpbjpCZXJuaGFyZF0gcmVpbmUgYmV0cmFjaHR1bmdzd2Vpc2UuLi4KW0FsbGdlbWVpbjpSZWluZWxkZV0gYm9pbmdzIGdlc2V0emJ1Y2g/CltBbGxnZW1laW46QmVybmhhcmRdIENJQU8uLi5zY2hvZW5lcyBXRSEhIQpbQWxsZ2VtZWluOkJlcm5oYXJkXSB3aW5rZSB3aW5rZQpbQWxsZ2VtZWluOkJlcm5oYXJkXSBzY2hsYWNodGV0IG5pY2h0IHNvIHZpZWwuLi46KSkKW0FsbGdlbWVpbjpKb2ZdIEltbWVyaGluIGhhdHRlciBrZWluZSBFUCB2ZXJsb3JlbiAuLi4KW0FsbGdlbWVpbjpDdWNodWxsaW5dIEFiZXIgbWVpbmUgQXVzcnVlc3R1bmcsIGtsZWluZXIKW0FsbGdlbWVpbjpLdGtdIC4gKiAgICAgKiAgICoqKiAgICAqKiogICAgKioqICAgKioqICAgKioqCltBbGxnZW1laW46S3RrXSAuICogKiAqICogICogICAqICAqICAgICAgKiAgICAgICAqICAgKgpbQWxsZ2VtZWluOkt0a10gLiAqICAqICAqICAqKioqKiAgKiAgKiogICogICoqICAgKiAgICAqKioKW0FsbGdlbWVpbjpLdGtdIC4gKiAgICAgKiAgKiAgICogICogICAqICAqICAgKiAgICogICAgICAgKgpbQWxsZ2VtZWluOkt0a10gLiAqICAgICAqICAqICAgKiAgICoqKiAgICAqKiogICAqKiogICAqKioKW0FsbGdlbWVpbjpLdGtdIC4KW0FsbGdlbWVpbjpLdGtdIC4gKioqKiAgICoqKiAgKiAgICogKioqKiogICAqKioKW0FsbGdlbWVpbjpLdGtdIC4gKiAgICogKiAgICogKiAgICogKiAgICAgICAqKgpbQWxsZ2VtZWluOkt0a10gLiAqICAgKiAqICAgKiAqKioqKiAqKiAgICAgICoKW0FsbGdlbWVpbjpLdGtdIC4gKiAgICogKiAgICogKiAgICogKgpbQWxsZ2VtZWluOkt0a10gLiAqKioqICAgKioqICAqICAgKiAqICAgICAgICoKW0FsbGdlbWVpbjpKb2ZdIFRqYSBkYXMgaXN0IHBlY2ggOikKW0FsbGdlbWVpbjpKYWYgZ3JpbnN0XQpbQWxsZ2VtZWluOkpvZl0gRGllIHdpcmQgamEgd29obCBub2NoIGRhIHNlaW4sIHdvcyBkaWNoIGVyd2lzY2h0IGhhdApbQWxsZ2VtZWluOkphZl0gZGEgZmVobHQgZWluIHNpbmQgOikKW0FsbGdlbWVpbjpNdXBmZWxdIHNvb28gZWluIHBlY2ggYWJlciBhdWNoIGN1Y2gKW0FsbGdlbWVpbjpDdWNodWxsaW4ga251cnJ0IEpvZiBhbi5dCltBbGxnZW1laW46QXJkYW5hXSBobW0uLi4KW0FsbGdlbWVpbjpDdWNodWxsaW4gZmluZGV0IGRhcyBuaWNodCBzbyB0b2xsLl0KW0FsbGdlbWVpbjpBcmRhbmFdIGludGVyZXNzYW50ZSBlcmZhaHJ1bmcgOikKW0FsbGdlbWVpbjpKb2ZdIEpldHp0IG1vdHogbm9jaCBydW0KW0FsbGdlbWVpbjpNdXBmZWxdIGFiZXIgZGFzIGR1IGF1ZiAnZ29kemlsbGEnIGhvZXJzdCBqb2YuLi4gOi0pCltBbGxnZW1laW46Sm9mXSBEdSBoYXN0cyBqYSB3b2hsIHByb3ZvemllcnQgOikKW0FsbGdlbWVpbjpDdWNodWxsaW5dIEFjaApbQWxsZ2VtZWluOkFzbW9kaXMgbG9nZ3QgaW1tZXIgbm9jaCBtaXQsIGlyZ2VuZHdpZSBsdXN0aWcgOildCltBbGxnZW1laW46Rnl0XSBpY2ggaGFiIHdvaGwgd2FzIHZlcnBhc3N0Li4uCltBbGxnZW1laW46Sm9mXSBPaCBHb2R6aWxsYSBlaW4gZWluIGd1dGVyIEZyZXVuZCB2b24gbWlyCltBbGxnZW1laW46Rnl0XSBtYWwgc2VoZW4uIHdhcyBkYSBsb2cgc2FndCA6KQpbQWxsZ2VtZWluOk11cGZlbF0gR29kICdKb2YnIFppbGxhIHNvenVzYWdlbgpbQWxsZ2VtZWluOkNyZWF0aXZlXSBhc21vZGlzLCBzZWl0IHdhbm4gbG9nZ3N0IER1PyA6KQpbQWxsZ2VtZWluOk5vcmdlc2NoXSB0YWNoIGlocgpbQWxsZ2VtZWluOkpvZl0gV2llc28gaXN0IGVpZ2VudGxpY2ggaW1tZXIgbm9jaCBrZWluICdyZV4xMDAwJyBkYT8KW0FsbGdlbWVpbjpKb2ZdIFNlaWQgaWhyIHp1ciBWZXJudW5mdCBnZWtvbW1lbj8gOikKW0FsbGdlbWVpbjpDdWNodWxsaW4ga251cnJ0Ll0KW0FsbGdlbWVpbjpDcmVhdGl2ZV0gSm9mLCB3ZWlsIER1IGRhcyBSZV4xMDAwIGdlc3BlcnJ0IGhhc3QKW0FsbGdlbWVpbjpNdXBmZWxdIGhpaGkKW0FsbGdlbWVpbjpKb2ZdIFNvPz8/CltBbGxnZW1laW46QXNtb2RpcyB0cml0dCBKb2YgdW5kIEdvZHppbGxhXQpbQWxsZ2VtZWluOkpvZl0gV29obCBrYXVtCltBbGxnZW1laW46TXVwZmVsXSBWRVJOVU5GVD8/PwpbQWxsZ2VtZWluOkNyZWF0aXZlXSB3aWVzbyBnaWJ0cyBkYW5uIG5lbiByZXBseS1vdmVyZmxvdz8KW0FsbGdlbWVpbjpKb2ZdIEdpYnRzIGRlbj8KW0FsbGdlbWVpbjpDcmVhdGl2ZV0gamVwCltBbGxnZW1laW46Q3JlYXRpdmVdIG1hY2ggZG9jaCBzZWxiZXIgbmVuIHJlXjEwMDAKW0FsbGdlbWVpbjpKb2ZdIEdlaHQgZG9jaD8hCltBbGxnZW1laW46TXVwZmVsXSB2ZXJudW5mdCB3dWVyZGUgZG9jaCB3b2hsIGhlaXNzZW4gOiBhdWZob2VyZW4gbWl0IG11ZGRlbgpbQWxsZ2VtZWluOk11cGZlbF0gOi0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTAwNDogU0NIV1VQUERJV1VQUCAhIChBc21vZGlzLCAyMS4gSnVsIDE5OTUsIDIwOjU2OjI5KToKIyEgcm49QXJkYW5hIHJ0PTgwNjM1MTQ1NApVbmQgZGFzIGlzdCBkZXIgUmVzdCA6CgpJbmhhbHQgZGVyIFJ1YnJpayBzY2htYXJybjoKClp1ciBaZWl0IGJlZmluZGVuIHNpY2ggNTIgQXJ0aWtlbCBpbiBkZXIgUnVicmlrOgoKIDEuIFJlOiBSZTogRW1vdGUtRXJ3ZWl0ZXJ1bmcgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXR3ZWF6bGUgICkgIDE5LgpKdWwKIDIuIFJlOiBSZTogTGl2ZS1Sb2xsZW5zcGllbGVyIGF1ZmdlcGFzc3QuLi4gICAgICAgICAgIChDYXR3ZWF6bGUgICkgIDE5LgpKdWwKIDMuIFNDSFdVUFBESVdVUFAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChTY2hydW1wZmkgICkgIDE5LgpKdWwKIDQuIFJlOiBTQ0hXVVBQRElXVVBQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChLYWVuZ3VydWggICkgIDE5LgpKdWwKIDUuIHNjaGl6b3BocmVuaWUgdW5kIHNvICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChGeXQgICAgICAgICkgIDE5LgpKdWwKIDYuIGphamEgZGllIG5ldWVuIGxhZWRlbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChNZXNpcmlpICAgICkgIDIwLgpKdWwKIDcuIExvbmVzb21lIENvd2JveSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDdWNodWxsaW4gICkgIDIwLgpKdWwKIDguIFJlOiBMb25lc29tZSBDb3dib3kgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChWYW5pciAgICAgICkgIDIwLgpKdWwKIDkuIFJlOiBSZTogTG9uZXNvbWUgQ293Ym95ICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDdWNodWxsaW4gICkgIDIwLgpKdWwKMTAuIFJlOiBTQ0hXVVBQRElXVVBQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChLYWlnICAgICAgICkgIDIwLiBKdWwKMTEuIFJlOiBTQ0hXVVBQRElXVVBQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChKb2YgICAgICAgICkgIDIwLiBKdWwKMTIuIFJlOiBSZTogU0NIV1VQUERJV1VQUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChaZXBoeXIgICAgICkgIDIwLiBKdWwKMTMuIFJlXjM6IFNDSFdVUFBESVdVUFAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChHdW1weSAgICAgICkgIDIwLiBKdWwKMTQuIFJlXjQ6IFNDSFdVUFBESVdVUFAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChIaWdobGFuZGVyICkgIDIwLiBKdWwKMTUuIFJlOiBTQ0hXVVBQRElXVVBQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXR3ZWF6bGUgICkgIDIwLiBKdWwKMTYuIFJlOiBSZTogU0NIV1VQUERJV1VQUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChIaWdobGFuZGVyICkgIDIwLiBKdWwKMTcuIEh1bmdlcnJycnIhICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChaZXBoeXIgICAgICkgIDIwLiBKdWwKMTguIFJlOiBTQ0hXVVBQRElXVVBQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChCb2luZyAgICAgICkgIDIwLiBKdWwKMTkuIFJlXjY5MDogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChBc21vZGlzICAgICkgIDIwLiBKdWwKMjAuIFJlOiBSZTogU0NIV1VQUERJV1VQUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChTY2hydW1wZmkgICkgIDIxLiBKdWwKMjEuIFJlOiBSZTogU0NIV1VQUERJV1VQUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChTY2hydW1wZmkgICkgIDIxLiBKdWwKMjIuIFJlOiBSZTogU0NIV1VQUERJV1VQUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChTY2hydW1wZmkgICkgIDIxLiBKdWwKMjMuIFJlXjY5MTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChTY2hydW1wZmkgICkgIDIxLiBKdWwKMjQuIFJlXjY5MjogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChBc21vZGlzICAgICkgIDIxLiBKdWwKMjUuIFJlXjk3NDogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChIYWtraWtrdCAgICkgIDIxLiBKdWwKMjYuIFJlXjk3NTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKMjcuIFJlXjk3NjogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChIYWtraWtrdCAgICkgIDIxLiBKdWwKMjguIFJlXjk3OTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKMjkuIFJlXjk4MDogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKMzAuIFJlXjk4MTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKMzEuIFJlXjk4MjogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKMzIuIFJlXjk4MzogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKMzMuIFJlXjk4NDogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKMzQuIFJlXjk4NjogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKMzUuIFJlXjk4NzogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKMzYuIFJlXjk4ODogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKMzcuIFJlXjk4OTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKMzguIFJlXjk5MDogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDdWNodWxsaW4gICkgIDIxLiBKdWwKMzkuIFJlXjk5MDogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKNDAuIFJlXjk5MTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKNDEuIFJlXjk5MjogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKNDIuIFJlXjk5MzogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKNDMuIFJlXjk5NDogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChKYWYgICAgICAgICkgIDIxLiBKdWwKNDQuIFJlXjk5NTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChKYWYgICAgICAgICkgIDIxLiBKdWwKNDUuIFJlXjk5NTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKNDYuIFJlXjk5NTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKNDcuIFJlXjk5NzogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKNDguIFJlXjk5ODogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKNDkuIFJlXjk5ODogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChKYWYgICAgICAgICkgIDIxLiBKdWwKNTAuIFJlXjk5OTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChKYWYgICAgICAgICkgIDIxLiBKdWwKNTEuIFJlOiB0ZXN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKNTIuIFJlXjEwMDA6IFNDSFdVUFBESVdVUFAgISAgICAgICAgICAgICAgICAgICAgICAgICAgIChKb2YgICAgICAgICkgIDIxLiBKdWwKW0FsbGdlbWVpbjpBcmRhbmEgZ3JpbnN0IE11cGZlbCBhbi5dCltBbGxnZW1laW46Sm9mXSBIZXkga3JpZWcgaWNoIGpldHp0IGRlbiBHQU5aRU4ga2FzdGVuIGJpZXI/Pz8KUnVicmlrIDI2OiBzY2htYXJybiwgQXJ0aWtlbDogNTEgdm9uIDUxClJlOiB0ZXN0IChDcmVhdGl2ZSwgMjEuIEp1bCAxOTk1LCAyMDowMzoxOSk6CihCZXp1ZzogQXJ0aWtlbCAoZ2Vsb2VzY2h0KSB2b24gQXNtb2RpcyB2b20gMjEuIEp1bCAxOTk1LCAyMDowMjozOSkKYXJnbCwgd28gaXN0IGRlciAxMDAwZXJgTUVJTkVSIHZvciBhbGxlbT8/Pz8/PwpbQWxsZ2VtZWluOk11cGZlbF0gZGVuIGthc3RlbiBzY2hvbgpSdWJyaWsgMjY6IHNjaG1hcnJuLCBBcnRpa2VsOiA1MiB2b24gNTIKUmVeMTAwMDogU0NIV1VQUERJV1VQUCAhIChLdGssIDIxLiBKdWwgMTk5NSwgMjA6MjA6NTgpOgooQmV6dWc6IEFydGlrZWwgNTAgdm9uIEphZiB2b20gMjEuIEp1bCAxOTk1LCAxOTo1MzowOCkKClZpZXJ0ZXIgVmVyc3VjaApSdWJyaWsgMjY6IHNjaG1hcnJuLCBBcnRpa2VsOiA1MyB2b24gNTMKUmVeMTAwMDogU0NIV1VQUERJV1VQUCAhIChDcmVhdGl2ZSwgMjEuIEp1bCAxOTk1LCAyMDoyMToxMyk6CihCZXp1ZzogQXJ0aWtlbCA1MCB2b24gSmFmIHZvbSAyMS4gSnVsIDE5OTUsIDE5OjUzOjA4KQpEYW5uIHByb2JpZXIgaWNocyBub2NoIG1hbC4KW0FsbGdlbWVpbjpNdXBmZWxdIGRhcyBiaWVyIHRyaW5rZW4gd2lyClJ1YnJpayAxNTogZXRpa2V0dGUsIEFydGlrZWw6IDExIHZvbiAxMQpSZV41OiBTQ0hXVVBQRElXVVBQIChDcmVhdGl2ZSwgMjEuIEp1bCAxOTk1LCAyMDoxMjoyMCk6CihCZXp1ZzogQXJ0aWtlbCAxMCB2b24gQ2F0d2VhemxlIHZvbSAyMS4gSnVsIDE5OTUsIDE3OjE3OjIxKQpIZXksIERBUyBXQVIgVU5GQUlFLCBKT0YhISEKQWxsZSBzYWhlbiwgZGFzcyBkYXMgSGFuZGFyYmVpdCB3YXIuCkRlciBQcmVpcywgZGllIDIgS2Flc3RlbiwgZ2VidWVocmVuOgpDdWNodWxsaW4sIEphZiwgQ2FyYWRocmFzIHVuZCBtaXIKKHdvYmVpIGljaCBkZW4gZXJzdGVuIFJlXjEwMDAgc2NocmllYikgOikpKQotQ3JlYS0KPiBbQWxsZ2VtZWluOkFyZGFuYV0gbmVlLCBLdGsgd2FyJ3MuLi4gOigKW0FsbGdlbWVpbjpDdWNodWxsaW5dIEpvZiwgZGFzIHdhciBuaWNodCBEZWluIEJpZXIuCltBbGxnZW1laW46Q3JlYXRpdmVdIGhlaGUsIGljaCBoYWIgbWVpbiBeMTAwMCBhdWNoIG5vY2gKW0FsbGdlbWVpbjpKYWZdIGVzIGdlaHQgd2llZGVyLi4uLi4uCltBbGxnZW1laW46U29jcmF0ZV0gdHNjaHVlc3MgZnVlciBoZXV0ZSA6KQpbQWxsZ2VtZWluOkNyZWF0aXZlXSBvaywgS3RrIGtyaWVndCBhdWNoIHdhcyBhYiA6KQpbQWxsZ2VtZWluOkphZl0gZGVyIGhhdCBudXIgYXVmIGJlZmVobCBnZWhhbmRlbHQhCltBbGxnZW1laW46SmFmXSBkYXMgYmllciB3aWUgZ2VoYWJ0IGFuIG1pY2ggKmdyaW5zKgpbQWxsZ2VtZWluOk11cGZlbF0gYXVmIGRlaW5lbj8KW0FsbGdlbWVpbjpDcmVhdGl2ZV0gYWxzbywgbG9lc2NoZW4gd2lyIHNlaW5lbiBhcnRpa2VsIGViZW4gd2llZGVyIDopCltBbGxnZW1laW46Q3JlYXRpdmVdIGJsZWlidCBtZWluZXIgKmtpY2hlcioKW0FsbGdlbWVpbjpNdXBmZWxdIGFoamEuLi4uIGljaCBlcmlubmVyZSBtaWNoOiBrdGsgYXVmIGFsbGdlbWVpbjogbWFnaWVyIHNpbmQKW0FsbGdlbWVpbjpNdXBmZWxdIGRvb2YuLi4uIDotKQpbQWxsZ2VtZWluOkphZl0gbm9lLi4uIGRhIHdhciBrZWluIHNpbmQuLi4KW0FsbGdlbWVpbjpNdXBmZWxdIGluIGRlaW5lbSBhdWZ0cmFnLi4uPyBEQVMgaGFtd2VyIGdsZWljaC4uLgpbQWxsZ2VtZWluOkphZl0gJ3NpbmQnIG1laW4gaWNoIDopCltBbGxnZW1laW46Q3JlYXRpdmVdIGhleSBoZXksIGFzbW9kaXMnIExvZyB3aXJkIGF1Y2ggc2FnZW4sIGRhc3MgTUVJTiBSRV4xMDAwCltBbGxnZW1laW46Q3JlYXRpdmVdIGRlciBFUlNURSB3YXIhIDopCltBbGxnZW1laW46QmFsZG9jaF0gTWlzdCEKW0FsbGdlbWVpbjpBc21vZGlzXSBub2UKW0FsbGdlbWVpbjpNdXBmZWxdIGF1Y2ggbG9ncyBrYW5uIG1hbiBmYWVsc2NoZW4KW0FsbGdlbWVpbjpBc21vZGlzXSBpY2ggaGF0dGUgZGVpbmVuIGFydGlrZWwgZ2FyIG5pY2h0IG1laHIgbGVzZW4ga29lbm5lbiwKW0FsbGdlbWVpbjpBc21vZGlzXSBjcmVhIDopCltBbGxnZW1laW46Sm9mXSBVZWJyaWdlbnMga2FubiBpbiBzY2htYXJybiBqZWRlciBsb2VzY2hlbiwgZ2xhdWJlIGljaCAuLi4KW0FsbGdlbWVpbjpKb2ZdIGF1Y2ggc3BpZWxlciAuLi4KW0FsbGdlbWVpbjpDYXJhZGhyYXNdIGFyZ2wsIHdhcyBtYWNodCBkZW5uIEtpd2kgbnUgc2Nob24gd2llZGVyPwpbQWxsZ2VtZWluOkNyZWF0aXZlIGdyaW5zdCBBc21vZGlzIGxlaWNodCBncnVtbWVsZG4gYW5dCltBbGxnZW1laW46Q2FyYWRocmFzXSBuZWluLCBKb2YsIGthbm4gbmljaHQKW0FsbGdlbWVpbjpKb2ZdIEFiZXIgbWluZGVzdGVucyBqZWRlciBNYWdpZXIgbWl0IExldmVsPj0yMApJbmhhbHQgZGVyIFJ1YnJpayBzY2htYXJybjoKClp1ciBaZWl0IGJlZmluZGVuIHNpY2ggNTQgQXJ0aWtlbCBpbiBkZXIgUnVicmlrOgoKIDEuIFJlOiBSZTogRW1vdGUtRXJ3ZWl0ZXJ1bmcgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXR3ZWF6bGUgICkgIDE5LgpKdWwKIDIuIFJlOiBSZTogTGl2ZS1Sb2xsZW5zcGllbGVyIGF1ZmdlcGFzc3QuLi4gICAgICAgICAgIChDYXR3ZWF6bGUgICkgIDE5LgpKdWwKIDMuIFNDSFdVUFBESVdVUFAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChTY2hydW1wZmkgICkgIDE5LgpKdWwKIDQuIFJlOiBTQ0hXVVBQRElXVVBQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChLYWVuZ3VydWggICkgIDE5LgpKdWwKIDUuIHNjaGl6b3BocmVuaWUgdW5kIHNvICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChGeXQgICAgICAgICkgIDE5LgpKdWwKIDYuIGphamEgZGllIG5ldWVuIGxhZWRlbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChNZXNpcmlpICAgICkgIDIwLgpKdWwKIDcuIExvbmVzb21lIENvd2JveSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDdWNodWxsaW4gICkgIDIwLgpKdWwKIDguIFJlOiBMb25lc29tZSBDb3dib3kgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChWYW5pciAgICAgICkgIDIwLgpKdWwKIDkuIFJlOiBSZTogTG9uZXNvbWUgQ293Ym95ICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDdWNodWxsaW4gICkgIDIwLgpKdWwKMTAuIFJlOiBTQ0hXVVBQRElXVVBQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChLYWlnICAgICAgICkgIDIwLiBKdWwKMTEuIFJlOiBTQ0hXVVBQRElXVVBQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChKb2YgICAgICAgICkgIDIwLiBKdWwKMTIuIFJlOiBSZTogU0NIV1VQUERJV1VQUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChaZXBoeXIgICAgICkgIDIwLiBKdWwKMTMuIFJlXjM6IFNDSFdVUFBESVdVUFAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChHdW1weSAgICAgICkgIDIwLiBKdWwKMTQuIFJlXjQ6IFNDSFdVUFBESVdVUFAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChIaWdobGFuZGVyICkgIDIwLiBKdWwKMTUuIFJlOiBTQ0hXVVBQRElXVVBQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXR3ZWF6bGUgICkgIDIwLiBKdWwKMTYuIFJlOiBSZTogU0NIV1VQUERJV1VQUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChIaWdobGFuZGVyICkgIDIwLiBKdWwKMTcuIEh1bmdlcnJycnIhICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChaZXBoeXIgICAgICkgIDIwLiBKdWwKMTguIFJlOiBTQ0hXVVBQRElXVVBQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChCb2luZyAgICAgICkgIDIwLiBKdWwKMTkuIFJlXjY5MDogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChBc21vZGlzICAgICkgIDIwLiBKdWwKMjAuIFJlOiBSZTogU0NIV1VQUERJV1VQUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChTY2hydW1wZmkgICkgIDIxLiBKdWwKMjEuIFJlOiBSZTogU0NIV1VQUERJV1VQUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChTY2hydW1wZmkgICkgIDIxLiBKdWwKMjIuIFJlOiBSZTogU0NIV1VQUERJV1VQUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChTY2hydW1wZmkgICkgIDIxLiBKdWwKMjMuIFJlXjY5MTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChTY2hydW1wZmkgICkgIDIxLiBKdWwKMjQuIFJlXjY5MjogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChBc21vZGlzICAgICkgIDIxLiBKdWwKMjUuIFJlXjk3NDogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChIYWtraWtrdCAgICkgIDIxLiBKdWwKMjYuIFJlXjk3NTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKMjcuIFJlXjk3NjogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChIYWtraWtrdCAgICkgIDIxLiBKdWwKMjguIFJlXjk3OTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKMjkuIFJlXjk4MDogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKMzAuIFJlXjk4MTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKMzEuIFJlXjk4MjogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKMzIuIFJlXjk4MzogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKMzMuIFJlXjk4NDogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKMzQuIFJlXjk4NjogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKMzUuIFJlXjk4NzogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKMzYuIFJlXjk4ODogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKMzcuIFJlXjk4OTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKMzguIFJlXjk5MDogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDdWNodWxsaW4gICkgIDIxLiBKdWwKMzkuIFJlXjk5MDogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKNDAuIFJlXjk5MTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKNDEuIFJlXjk5MjogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKNDIuIFJlXjk5MzogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKNDMuIFJlXjk5NDogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChKYWYgICAgICAgICkgIDIxLiBKdWwKNDQuIFJlXjk5NTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChKYWYgICAgICAgICkgIDIxLiBKdWwKNDUuIFJlXjk5NTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKNDYuIFJlXjk5NTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKNDcuIFJlXjk5NzogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDYXJhZGhyYXMgICkgIDIxLiBKdWwKNDguIFJlXjk5ODogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKNDkuIFJlXjk5ODogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChKYWYgICAgICAgICkgIDIxLiBKdWwKNTAuIFJlXjk5OTogU0NIV1VQUERJV1VQUCAhICAgICAgICAgICAgICAgICAgICAgICAgICAgIChKYWYgICAgICAgICkgIDIxLiBKdWwKNTEuIFJlOiB0ZXN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKNTIuIFJlXjEwMDA6IFNDSFdVUFBESVdVUFAgISAgICAgICAgICAgICAgICAgICAgICAgICAgIChLdGsgICAgICAgICkgIDIxLiBKdWwKNTMuIFJlXjEwMDA6IFNDSFdVUFBESVdVUFAgISAgICAgICAgICAgICAgICAgICAgICAgICAgIChDcmVhdGl2ZSAgICkgIDIxLiBKdWwKNTQuIFJlXjEwMDE6IFNDSFdVUFBESVdVUFAgISAgICAgICAgICAgICAgICAgICAgICAgICAgIChBcmRhbmEgICAgICkgIDIxLiBKdWwKCltBbGxnZW1laW46QXNtb2Rpc10gaG1tLCBzcGllbGVyIGR1ZXJmZW4gbmljaHQgbG9lc2NoZW4sIG51ciBkaWUgZWlnZW5lbgoKUmVeMTAwMDogU0NIV1VQUERJV1VQUCAhIChLdGssIDIxLiBKdWwgMTk5NSwgMjA6MjA6NTgpOgooQmV6dWc6IEFydGlrZWwgNTAgdm9uIEphZiB2b20gMjEuIEp1bCAxOTk1LCAxOTo1MzowOCkKClZpZXJ0ZXIgVmVyc3VjaAo+ClJlXjEwMDA6IFNDSFdVUFBESVdVUFAgISAoQ3JlYXRpdmUsIDIxLiBKdWwgMTk5NSwgMjA6MjE6MTMpOgooQmV6dWc6IEFydGlrZWwgNTAgdm9uIEphZiB2b20gMjEuIEp1bCAxOTk1LCAxOTo1MzowOCkKRGFubiBwcm9iaWVyIGljaHMgbm9jaCBtYWwuCj4KUmVeMTAwMTogU0NIV1VQUERJV1VQUCAhIChBcmRhbmEsIDIxLiBKdWwgMTk5NSwgMjA6MjY6MDMpOgooQmV6dWc6IEFydGlrZWwgNTIgdm9uIEt0ayB2b20gMjEuIEp1bCAxOTk1LCAyMDoyMDo1OCkKQWV0c2NoISEgMTAwMSBnZWhvZXJ0IGFsbGVpbiBtaXIhIC4pClRVc2g6ICBTY3JpcHRpbmcgc3RvcHBlZCAwOC4yNzo1MSBQTSAtIEZyaSwgMjEgSnVseS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDA0OiBTQ0hXVVBQRElXVVBQICEgKEFzbW9kaXMsIDIxLiBKdWwgMTk5NSwgMjA6NTY6NDgpOgojISBybj1BcmRhbmEgcnQ9ODA2MzUxNDU0CkRhcyB3YXJlbiBiZXN0aW1tdCBkaWUgMiBsYWVuZ3N0ZW4gamUgZ2VzY2hyaWViZW5lbiBBcnRpa2VsIGluIHNjaG1hcnJuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4tMTA5MzogU0NIV1VQUERJLi4gSHVwcz8gKEN1Y2h1bGxpbiwgMjEuIEp1bCAxOTk1LCAyMTozMzoxNyk6CgpPZWhtIGphLgpJY2ggYmluIGRhIGlyZ2VuZHdpZSBhbiBHb3R0ZXNsYWVzdGVydW5nIGdlc3RvcmJlbi4uLiA6LSkKTmV0dCwga2FubiBpY2ggbnVyIGVtcGZlaGxlbi4KRGFzcyBtaXIgZGllIEVQIGZsb2V0ZW4gZ2luZ2VuIHdhciBlaW4gVmVyc2VoZW4gdW5kIHd1cmRlIHJ1ZWNrZ2FlbmdpZwpnZW1hY2h0LCBlaW4gZWhybGljaGVyIEZpbmRlciAoKnJhZXVzcGVyKiBlaW5lIEZyYXUuLi4pIGJyYWNodGUgbWlyIGVpbmVuIFRlaWwKbWVpbmVyIEF1c3J1ZXN0dW5nIHdpZWRlciwgYWxsZXMgaXN0IGdla2xhZXJ0LCB1bmQgaWNoIGZpbmQgZGllIFNhY2hlIG51ciBub2NoCndpdHppZy4KCkxhc3N0IEpvZiBsZWJlbiEgU28gc2NobGltbSBpc3NlciBuaWNodCA7LSkKCkFjaGphIC0gRGFzIHdhciBkZXIgQWJzY2h1c3M6CkRlciBUb2Qgc2FndDogVkVSU1VDSFNUIFdPSEwsIEdPVFQgRElFIFNURUxMRSBXRUdaVVNDSE5BUFBFTiwgV0FTPyBIQUhBSEEhCkJFVk9SIERVIElSR0VORFdBUyBVTlRFUlNDSFJFSUJTVCwgTU9FQ0hURSBJQ0ggRElSIEVJTiBXRU5JRyBVRUJFUiBERU4gSk9CCkVSWkFFSExFTjogVklFTCBBUkJFSVQsIEtFSU4gREFOSywgTklFTUFMUyBVUkxBVUIuIEdMQVVCIE1JUiwgRFUgV0lSU1QKRVMgQkVSRVVFTiEgSEFIQUhBSEFIQUhBSEEhISEhCgpTaWNoIGRlcyBSb3RmbG5zIGdyYWRlIG5vY2ggZXJ3ZWhyZW4ga29lbm5lbmQsCi09IGN1Y2ggPS0KClBTOiBEZXIgYW5kZXJlIFRlaWwgbWVpbmVyIEF1c3J1ZXN0dW5nIGxhbmcgbm9jaCBydW0gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprYXJhV0FITmUgKE5pY2h0cywgMjIuIEp1bCAxOTk1LCAwMjo0Mzo0Nyk6CgoqKiogMjEwIDIxOQoqKiogMjEwIDIyMAoqKiogMjEwIDIyMQoqKiogMjEwIDIyMgoqKiogMjEwIDIyMwoqKiogMjEwIDIyNApFaW5lIEthcmF3YW5lIGtvbW10IGFuLgpiZXRyZXRlIGthcmF3YW5lCioqKiAyMTAgMjI1CkRpZSBLYXJhd2FuZSB2ZXJzY2h3aW5kZXQgYW0gSG9yaXpvbnQuCkRlciBXYWdlbmxlbmtlciBzY2htdW56ZWx0IHVuZCBzYWd0OiAnT2gsIGplbWFuZCBkZXIgc2ljaCBkZW4gV3VjaGVycHJlaXMgZGVzCk1laXN0ZXJzIGxlaXN0ZW4ga29ubnRlLiBTdWNoJyBEaXIgZWluIGJlcXVlbWVzIFBsYWV0emNoZW4sIGRlbm4gZGllIFJlaXNlCndpcmQKbGFuZy4nCldhcyBtb2VjaHRlc3QgRHUgZGVubiBiZXRyZXRlbj8KLi4uCgoKTkVJTiBORUlOIE5FSU4gLi4uLgoqYXJnbCoKClNldWZ6ZW5kLAoiIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeTEFTVCBTQ0hXVVBQRElXVVBQIChEYW5jZXIsIDIyLiBKdWwgMTk5NSwgMjE6NTg6NDUpOgoKR1JBVFMhIEljaCBnZWJlIG1pY2ggZ2VzY2hsYWdlbiB1bmQgbmVobWUgaGllcm1pdCB6dXJ1ZWNrLCBkYXNzIElociBMdXNjaGlzCnNlaWQgdW5kIGtlaW5lIDEwMDAgUmVzIGF1ZiBlaW5lbiBBcnRpa2VsIHNjaGFmZnQhIDotKSBOZSBLaXN0ZSBCaXQgdW5kIG5lCktpc3RlIEpldmVyIHdlcmRlbiBhbSBTYW1zdGFnIEFiZW5kIGRhbm4gd29obCBvZGVyIHVlYmVsIGRyYW4gZ2xhdWJlbgptdWVzc2VuIDstKQoKRGFzIGdhbnplIGhhdCBtaWNoIHVlYnJpZ2VucyBhdWYgZWluZSBJZGVlIGdlYnJhY2h0Li4uIGljaCB3ZXJkZSBlaW4KTW9yZ2VuZ3JhdWVucyBCdWNoIGRlciBSZWtvcmRlIHByb2dyYW1taWVyZW4gdW5kIGRpZXNlciBSZWtvcmQgd2lyZCBhbHMKZXJzdGVyIGVpbmdldHJhZ2VuLCB2ZXJzcHJvY2hlbiA6LSkgRGVyd2VpbCBrb2VubnQgSWhyIGphIHNjaG9ubWFsIGVpbnNhbWUKUmVrb3JkZSB6dXNhbW1lbnRyYWdlbi4uLiBKb2ZzIElkbGVyZWtvcmRlLCBSb2NodXMnIFNwaWVsZXJhYnNjaHVzc3F1b3RlbiwKSGlnaGxhbmRlcnMgRHVyY2hoYWx0ZXZlcm1vZWdlbiBiZWltIHNpbm5sb3NlbiBTdHVtbWVsZmx1ZWdlbCBhdWYtIHVuZAphYnNjaGxhZ2VuLCBHcnV1aHMgdW51ZWJlcnRyb2ZmZW5lIERvb2ZoZWl0LCBIeWRyYXJla29yZG1ldHpsZXIgdW5kIHNvCndlaXRlciB1bmQgc28gd2VpdGVyIDotKQoKRGFuY2VyCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW52b3JzaWNodGlna2VpdC4uLiAoQ3VjaHVsbGluLCAyMy4gSnVsIDE5OTUsIDA0OjUwOjI1KToKCkR1IHN0ZWhzdCBpbiBlaW5lciBrbGVpbmVuIEhvZWhsZS4gRGllc2UgSG9laGxlIGhhYmVuIGFuc2NoZWluZW5kIGRpZQpSYXB0b3JlbgppbiBCZXNpdHogZ2Vub21tZW4uIEtsZWluZSBLbm9jaGVuaGF1ZmVuIHpldWdlbiB2b24gdmllbGVuIHVudm9yc2ljaHRpZ2VuCkJlc3VjaGVybiwgZGllIGRpZXNlIEhvZWhsZSBzY2hvbiBiZXN1Y2h0IGhhYmVuLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogb2Jlbi4KRWluZSBMaXN0ZS4KRWluIFJhcHRvci4KRWluIFJhcHRvci4KCk5hLCB3ZXIgREEgd29obCBkcmluIHdhci4uLiA7KQoKVWViZXIgZGllIER1bW1oZWl0IG1hbmNoZXIgTlBDcyBzdGF1bmVuZCwKLSBDdWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmVeTEFTVCBTQ0hXVVBQRElXVVBQIChLZXRvcywgMjMuIEp1bCAxOTk1LCAxMDoxNjoyMSk6CiMhIHJuPURhbmNlciBydD04MDY0NDMxMjUKWnUgZGVuIFJla29yZGVuOgpEZXIgUmVrb3JkIGJlaSBkZXIgV29scGVydGluZ2VycXVlc3QgbGllZ3QgYmVpIDIwIFdvbHBlcnRpbmdlcnZlcnN1Y2hlbi4KRGVyIGFybWUgU3BpZWxlciAgd2FyIGV0d2FzIHZlcnp3ZWlmZWx0IGFtIFNjaGx1c3MgOykKCkRhbWl0IGlociBuaWNodCBkZW5rdCBkYXMga29tbXQgb2VmdGVycyB2b3IuIEdlZ2VuIHNvbGNoZSBTcGV6aWFsZmFlbGxlIGJldWd0CmRpZSBRdWVzdCBqZXR6dCB2b3IgdW5kIGdlbmVyZWxsIGxpZWd0CmRlciBEdXJjaHNjaG5pdHQgYmVpIDQuCldlbm4gbWVociB3ZXJkZW4gbWFjaHQgaWhyIHdhcyBmYWxzY2ggOykKCi0gS2V0b3MgIC0gSG1tLCB3YXIgZGFzIGpldHp0IFNwaWVsZXJoaWxmZSA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlXkxBU1QgU0NIV1VQUERJV1VQUCAoQXNtb2RpcywgMjQuIEp1bCAxOTk1LCAxMDoxNTo1OSk6CiMhIHJuPUtldG9zIHJ0PTgwNjQ4NzM4MQpobW0sIG1hY2hlbiB3aXIgamV0enQgbmVuIG5ldWVuIFJla29yZHZlcnN1Y2ggZnVlciAnUmVeTEFTVCBTQ0hXVVBQRElXVVBQJyA/Pwo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU0NIV1VQUERJV1VQUCAoQ2F0d2VhemxlLCAyNC4gSnVsIDE5OTUsIDIwOjQ2OjE0KToKIyEgcm49Q2F0d2VhemxlIHJ0PTgwNjMzOTg0MQpbVmVybGVndCB2b24gZXRpa2V0dGUsIENyZWF0aXZlLCAyMS4gSnVsIDE5OTUsIDIwOjEyOjIwXToKSGV5LCBEQVMgV0FSIFVORkFJRSwgSk9GISEhCkFsbGUgc2FoZW4sIGRhc3MgZGFzIEhhbmRhcmJlaXQgd2FyLgpEZXIgUHJlaXMsIGRpZSAyIEthZXN0ZW4sIGdlYnVlaHJlbjoKQ3VjaHVsbGluLCBKYWYsIENhcmFkaHJhcyB1bmQgbWlyCih3b2JlaSBpY2ggZGVuIGVyc3RlbiBSZV4xMDAwIHNjaHJpZWIpIDopKSkKLUNyZWEtCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU0NIV1VQUERJV1VQUCAoQ2F0d2VhemxlLCAyNC4gSnVsIDE5OTUsIDIwOjQ2OjI2KToKIyEgcm49Q3JlYXRpdmUgcnQ9ODA2MzUwMzQwCltWZXJsZWd0IHZvbiBldGlrZXR0ZSwgSmFmLCAyMS4gSnVsIDE5OTUsIDIxOjI0OjMwXToKT2tpLCBmdWVyIGRlbiBFUlNURU4gMTAwMC4ga3JpZWdzdGUgbmUgZmxhc2NoZSBleHRyYSBhdXMgbWVpbmVtIGFudGVpbCA6KQoKSmFmLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFNDSFdVUFBESVdVUFAgKENhdHdlYXpsZSwgMjQuIEp1bCAxOTk1LCAyMDo0NjozNik6CiMhIHJuPUphZiBydD04MDYzNTQ2NzAKW1ZlcmxlZ3Qgdm9uIGV0aWtldHRlLCBDcmVhdGl2ZSwgMjEuIEp1bCAxOTk1LCAyMToyNjozM106Ck5VUiBlaW5lPz8/CipncnVtbWVsKgpJY2ggaGFiIERpciBWSUVSIGFuZ2Vib3RlbiEKOikKLUNyZWEtCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU0NIV1VQUERJV1VQUCAoQ2F0d2VhemxlLCAyNC4gSnVsIDE5OTUsIDIwOjQ2OjQwKToKIyEgcm49Q3JlYXRpdmUgcnQ9ODA2MzU0NzkzCltWZXJsZWd0IHZvbiBldGlrZXR0ZSwgSmFmLCAyMS4gSnVsIDE5OTUsIDIxOjMyOjUxXToKCnZpZXIgYWxzIGdhbnplciBhbnRlaWwsIG9kZXI/IC4uLiBhY2ggaXMgbWlyIGVnYWwsIGhhdXB0c2FjaGUsIHdpcgpzaW5kIGhpbnRlcmhlciBiZXNvZmZlbiA6KQoKSmFmLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hIG51Pz8/IChCb2luZywgMjYuIEp1bCAxOTk1LCAxMDo0Njo1OSk6CltWZXJsZWd0IHZvbiBzZW1pbmFyLCBBbGluZSwgMjYuIEp1bCAxOTk1LCAwOToyMDo0OV06Ck5ldWxpY2ggaW4gZGVyIFNTUDoKCkRlciBPcmsgc2NoYXV0IERpY2ggdW5mcmV1bmRsaWNoIGFuIHVuZCB3ZWRlbHQgbWl0IHNlaW5lbSBLcnVtbXNjaHdlcnQuCkVyIGlzdCBhYnNvbHV0IGZpdC4KRXIgdHJhZWd0IGJlaSBzaWNoOgpFaW5lIE9ya2hvc2UgKGFuZ2V6b2dlbikuCkVpbiBLcnVtbXNjaHdlcnQgKGdlenVlY2t0KS4KPiAgIER1IGdyZWlmc3QgZGVuIE9yayBtaXQgZGVtIEtydW1tc2Nod2VydCBhbi4KICBEdSB2ZXJmZWhsc3QgZGVuIE9yay4KICBEZXIgT3JrIGdyZWlmdCBEaWNoIG1pdCBkZW0gS3J1bW1zY2h3ZXJ0IGFuLgogIERlciBPcmsga3JhdHp0IERpY2guCiAgRHUgZ3JlaWZzdCBkZW4gT3JrIG1pdCBkZW0gS3J1bW1zY2h3ZXJ0IGFuLgogIER1IHRyaWZmc3QgZGVuIE9yayBoYXJ0LgogIERlciBPcmsgZ3JlaWZ0IERpY2ggbWl0IGRlbSBLcnVtbXNjaHdlcnQgYW4uCiAgRGVyIE9yayB2ZXJmZWhsdCBEaWNoLgogIER1IGdyZWlmc3QgZGVuIE9yayBtaXQgZGVtIEtydW1tc2Nod2VydCBhbi4KICBEdSB0cmlmZnN0IGRlbiBPcmsgaGFydC4KRGVyIE9yayBmYWVsbHQgdG90IHp1IEJvZGVuLgpFciB3YXIgZG9jaCBub2NoIGZpdCEhISBIZXJ6YW5mYWxsPz8/CgpBbGluZSAodW0gZGllIEdlc3VuZGhlaXQgZGVyIE9ya3MgYmVzb3JndCEpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VociBzZWx0c2FtISA6LSkgKEJhYm9vbiwgMjYuIEp1bCAxOTk1LCAxMDo1MjoxNSk6CkdlcmFkZSBpbSBNYWdlbiBkZXMgR29yZ2tvZW5pZ3M6CgpEdSB3aXJmc3QgZGVuIEJ1bWVyYW5nLgpEdSB3aXJmc3QgZGVuIEJ1bWVyYW5nLgpEaWUgTWFnZW5zYWV1cmUgd2VpY2h0IGRlbSBCdW1lcmFuZyBnZXNjaGlja3QgYXVzLgpEZXIgQnVtZXJhbmcgcmFzaWVydCBkZXIgTWFnZW5zYWV1cmUgZWluIEhhYXJidWVzY2hlbCBhYi4KCgpIbSwgd2llIHNvbGwgbWFuIHNpY2ggc293YXMgdm9yc3RlbGxlbj8KCkJhYm9vbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJZGxlLi4uIChDdWNodWxsaW4sIDI3LiBKdWwgMTk5NSwgMDI6NTM6MzIpOgoKaWRsZQogIDEuIGJvZG8gICAgICAgICAgICAgICAgICAgIDAxOjEwOjAzIElkbGUuCiAgMi4gcXRlc3QgICAgICAgICAgICAgICAgICAgMDA6NTQ6MzAgSWRsZS4KICAzLiBqYWYgICAgICAgICAgICAgICAgICAgICAwMDoyNjowMyBJZGxlLgogIDQuIGplcnJpY28gICAgICAgICAgICAgICAgIDAwOjA3OjI5IElkbGUuCiAgNS4ga2VsZG9ybiAgICAgICAgICAgICAgICAgMDA6MDU6MDMgSWRsZS4KICA2LiA8bG9nb24+ICAgICAgICAgICAgICAgICAwMDowMTozNyBJZGxlLgogIDcuIGppbWRpZ3JpeiAgICAgICAgICAgICAgIDAwOjAxOjE3IElkbGUuCkdlc2FtdDogNy4KCk5vY2ggbmljaHQgbWFsIHJpY2h0aWcgZGEgdW5kIHNjaG9uIGlkbGUuLi4KR3JpbnNlbmQsCi0gQ3VjaAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnRvdC4uIHRvdGVyLi4uLiAoTXVwZmVsLCAyOC4gSnVsIDE5OTUsIDIxOjU5OjU0KToKbmV1bGljaCBpbiBkZXIgc3NwLi4uLgoKJCBzY2hhdQpOYSBzb3dhcywgd28gYmlzdCBEdSBkZW5uIGhpZXIgZ2VsYW5kZXQ/IEFsbGVzIGdsaXR6ZXJ0IHVuZCBmdW5rZWx0IHZvbgpVbm1lbmdlbiB2b24gS3Jpc3RhbGxlbiB1bmQgd2VydHZvbGxlbiBTdGVpbmVuIGFsbGVyIEFydC4gWndlaSBHYWVuZ2UKZnVlaHJlbiB6d2lzY2hlbiBncm9zc2VuIEhhdWZlbiB2b24gS3Jpc3RhbGxzY2hlcmJlbiBkdXJjaCBuYWNoIE9zdGVuCmJ6dy4gU3VlZGVuLiBNaXR0ZW4gaW0gUmF1bSBiZWZpbmRldCBzaWNoIGVpbmUgc3RhYmlsZSBIb2x6bGVpdGVyLCBkaWUKZHVyY2ggZWluIExvY2ggaW4gZGVyIERlY2tlIG5hY2ggb2JlbiBmdWVocnQuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4sIG9zdGVuIHVuZCBvYmVuLgpZZXRpIChuZXR6dG90KSAobmV0enRvdCkuCkVpbiByb3RlciBLcmlzdGFsbC4KCmFoYT8KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGltIEludGVyTkVUIChNdXBmZWwsIDI4LiBKdWwgMTk5NSwgMjM6MzU6MjkpOgooc3RhdHQgWWVuZGkgaGV1dGUgbWFsIGljaCA6LSkKCiAgICAgICAgICAgICBPRkZJWklFTExFIFRBQkVMTEUgREVTCiAgICAgICAgICAgICBLQUxPUklFTlZFUkJSQVVDSFMgQkVJTSBTRVgKCgogQWt0aXZpdGFldCA6ICAgICAgICAgICAgICAgICAgICAgICAgdmVyYnJhdWNodGUgS2Fsb3JpZW4gOgogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRU5US0xFSURFTgogIC0gbWl0IFp1c3RpbW11bmcgZGVzIFBhcnRuZXJzLi4uLi4uLi4uLjEyCiAgLSBvaG5lIFp1c3RpbW11bmcgZGVzIFBhcnRuZXJzLi4uLi4uLi4xODcKCkJIIE9FRkZORU4KIC0gbWl0IDIgcnVoaWdlbiBIYWVuZGVuLi4uLi4uLi4uLi4uLi4uLi43CiAtIG1pdCBlaW5lciB6aXR0ZXJuZGVuIEhhbmQuLi4uLi4uLi4uLi4zNgoKSU5TIEJFVFQgR0VMQU5HRU4KICAtIFBhcnRuZXIgdHJhZ2VuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4xNQogIC0gUGFydG5lciB1ZWJlciBkZW4gQm9kZW4gc2NobGVpZmVuLi4uLjE2CiAgLSBtaXQgSGlsZmUgZWluZXMgU2thdGVib2FyZHMuLi4uLi4uLi4uLjMKRUlORSBFUkVLVElPTiBCRUtPTU1FTgogLSBmdWVyIGVpbmVuIG5vcm1hbGVuLCBnZXN1bmRlbiBNYW5uLi4uLjIuNQogLSBFcmVrdGlvbiB2ZXJsaWVyZW4uLi4uLi4uLi4uLi4uLi4uLi4uMTQKIC0gZGFuYWNoIHN1Y2hlbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uMTE1CktPTkRPTSBVRUJFUlpJRUhFTgogIC0gbWl0IEVyZWt0aW9uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4xLjUKICAtIG9obmUgRXJla3Rpb24uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLjMwMAoKRElBUEhSQUdNQSBFSU5GVUVIUkVOCiAgLSBkaWUgRnJhdSwgZGllIGVzIHR1dCBpc3QKICAgIC0gZXJmYWhyZW4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uNgogICAgLSB1bmVyZmFocmVuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLjczCiAgLSBkZXIgTWFubiB0dXQgZXMuLi4uLi4uLi4uLi4uLi4uLi4uLi43ODAKCk5BVElPTkFMSVRBRVRTQkVaT0dFTgogLSBpdGFsaWVuaXNjaC0gTWFubiBvYmVuLCBGcmF1IGluCiAgIGRlciBLdWVjaGUuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4yNgogLSBydXNzaXNjaC0gRnJhdSB1bnRlbiwgTWFubiBob2x0CiAgIGRlbiBFcmxhdWJuaXNzY2hlaW4uLi4uLi4uLi4uLi4uLi4uLi41NQogLSBhbWVyaWthbmlzY2gtIGJlaWRlIG9iZW4uLi4uLi4uLi4uLi4uNjAKTkVCRU5FRkZFS1RFIERFUyBWRVJLRUhSUwogLSBodWVwZmVuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLjcKIC0gaGVydW1ydXRzY2hlbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi45CiAtIGVybnN0aGFmdCBzY2hsZXVkZXJuLi4uLi4uLi4uLi4uLi4uLi4xMgogLSBzaWNoIGF1ZmJhZXVtZW4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uMjcKT1JHQVNNVVMKIC0gZWNodC4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLjI3CiAtIHZvcmdldGFldXNjaHQuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLjE2MAogT1JHQVNNVVMtSU5URU5TSVRBRVRTLVNLQUxBCiAgLSBTY2h1aGUgc2luZCB3ZWdnZWZsb2dlbi4uLi4uLi4uLi4uLi4uMzUKICAtIEdlc2ljaHRzYXVzZHJ1Y2sgdW52ZXJhZW5kZXJ0Li4uLi4uLi4uMC41CiAgLSBPcmNoZXN0ZXIgaGF0IGdlc3BpZWx0Li4uLi4uLi4uLi4uLi4uLjYKICAtIFZvZWdlbCBoYWJlbiBnZXN1bmdlbgogICAgLSBncm9zc2UgVm9lZ2VsLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi43CiAgICAtIGtsZWluZSBWb2VnZWwuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLjMKICAtIEVyZGUgaGF0IHNpY2ggYmV3ZWd0Li4uLi4uLi4uLi4uLi4uLi4zMAoKUkFVU1pJRUhFTgogIC0gbmFjaCBkZW0gT3JnYXNtdXMuLi4uLi4uLi4uLi4uLi4uLi4uLi4wLjUKICAtIGVpbmlnZSBTZWt1bmRlbiB2b3IgZGVtIE9yZ2FzbXVzLi4uLjUwMAoKUEVOSVNORUlECiAtIGZ1ZXIgZWluZSBGcmF1Li4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uMwogLSBmdWVyIGVpbmVuIE1hbm4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uNzIKU0NIVUxER0VGVUVITEUKIC0gdHJvdHogTWFuZ2VsIGFuIFVlYnVuZyBwcm9ibGVtbG9zCiAgIGRlbiBPcmdhc211cyBlcnJlaWNodC4uLi4uLi4uLi4uLi4uLi41MwogLSBTZXggZ2VuaWVzc2VuLCBvYndvaGwgYW5kZXJlIE1lbnNjaGVuCiAgIGh1bmdlcm4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uMgogLSBTZXggd2FlaHJlbmQgZGVyIE1pdHRhZ3NwYXVzZS4uLi4uLi4uLjMKIC0gZGl0byBhdWYgU3Blc2VucmVjaG51bmcuLi4uLi4uLi4uLi4uLjIwCkVSU0NIV0VSTklTU0UKIC0gUGFydG5lciB2ZXJzdWNodCwgc2VpbmUgUGZsYW56ZW4KICAgenUgemVpZ2VuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi41CiAtIFBhcnRuZXIgYmVzdGVodCBkYXJhdWYsIHdhZWhyZW5kIGRlcwogICBWb3JzcGllbHMgZGVuIEh1bmQgenUgc3RyZWljaGVsbi4uLi4uMTQKIC0gUGFydG5lciBnZWh0IHp1bSA3LiBtYWwgaW5zIEJhZC4uLi4uLjEwCiAtIFBhcnRuZXIgbmltbXQgVGVsZWZvbmFucnVmZSBhbi4uLi4uLi4uNwogLSBQYXJ0bmVyIHRhZXRpZ3Qgc2VsYnN0IFRlbGVmb25hbnJ1ZmUuNDAKRVJXSVNDSFQgV0VSREVOCiAtIHZvbiBFaGVtYW5uL2ZyYXUgZGVzIFBhcnRuZXJzLi4uLi4uLi42MAogLSB2b24gZWlnZW5lbS9yIEVoZW1hbm4vZnJhdS4uLi4uLi4uLi4xMDAKIC0gVmVyc3VjaCBlaW5lciBFcmtsYWVydW5nLi4uLi4uLi4uLi4uLjU1CiAtIFZlcnN1Y2gsIFJ1aGUgenUgYmV3YWhyZW4uLi4uLi4uLi4uLjEwMAogLSBhdXMgZGVtIEJldHQgc3ByaW5nZW4uLi4uLi4uLi4uLi4uLi4uNzUKIC0gaW4gZWluZXIgZWluemlnZW4gQmV3ZWd1bmcgYW56aWVoZW4uNTAwCiAtIHNpY2ggc2NobmVsbCBiZWltIFBhcnRuZXIgYmVkYW5rZW4uLi4uMgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnBvd2VydXNlciB1bnRlciBzaWNoIChSZWluZWxkZSwgMjkuIEp1bCAxOTk1LCAwMDowMzoxNik6ClJ5bmUgc2FndDogd2FzIGhhc3RlIGZ1ZXIgbmVuIHJlY2huZXIsIGdhYmkgPwpHYWJpIHNhZ3Q6IG5lbiBzY2hpY2tlbi4uLiBiZWlnZQpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCgpyZWluZWxkZSAtIG9obmUgd29ydGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBuZXVsaWNoIGltIEludGVyTkVUIChFbGJ5dGUsIDI5LiBKdWwgMTk5NSwgMDg6MzE6NTUpOgojISBybj1NdXBmZWwgcnQ9ODA2OTY3MzI5Ck5hY2ggZGllc2VyIEF1Zmxpc3R1bmcgbXVlc3N0ZSBpY2ggc2Nob24gbGFuZ2UgVG90IHNlaW4gOykKCkVsQnl0ZSAodW50ZXJlcm5hZWhydCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpZWRlciB3YXMgaW4gZGVyIFplaXR1bmchIChBY3JpbW9uLCAzMC4gSnVsIDE5OTUsIDAxOjEyOjA5KToKT2ssIGV4dHJhIGZ1ZXIgSmFmIHNjaHJlaWIgaWNoIGhpZXIgZWluZW4gQXJ0aWtlbCwgZGFtaXQgZXIgd2llZGVyIGV0d2FzIHp1Cmxlc2VuIGJla29tbXQhCgpWaWVsIFNwYXN6LCBKYWYhCgpBY3JpbW9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIQUVIPyAoQ3JlYXRpdmUsIDMwLiBKdWwgMTk5NSwgMTk6MTY6MzUpOgoKa3dlciBpbiBsdWVuZWJ1cmcKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIFNvbiwgMzAuIEp1bCAxOTk1LCAxOToxNToxMiAoMSBUZWlsbmVobWVyKQoKTXlzdGhvcy4uLi4uLi4uLnoKCmZpbmdlciBzbWlsZXkKU21pbGV5IGlzdCBlaW5nZWxvZ2d0LAp1bmQgendhciB2b246IHJ6d3MxOC5maC1sdWVuZWJ1cmcuZGUgKDE5My4xNzQuMzIuMTEzKSBbTHVlbmVidXJnXS4KVm9sbGVyIE5hbWU6IEthcmF0ZWthIFNtaWxleSBzdWNodCBNb25zdGVyIHp1bSBLYXJhdGV0cmFpbmluZwpSYXNzZTogRWxmLCAgICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKQWx0ZXI6IDE1ZCAxNDoyNTo1MCAgIFNwaWVsZXJsZXZlbDogMjQsIFNlaGVyCgpXaWV2aWVsIHNpbmQgbnUgYXVzIEx1ZW5lYnVyZz8/PwoKLUNyZWEtLCBzaWNoIHd1bmRlcm5kCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG1tbS4uLiAoQ3JlYXRpdmUsIDMwLiBKdWwgMTk5NSwgMjE6MjM6NTIpOgoKaXN0IHp3YXIgdm9uIG1pciwgYWJlciB0cm90emRlbS4uLgoKRWluIEtudWRkZWxrcm9rb2RpbCBrb21tdCBhbi4KZ2liIDEwIG11ZW56ZW4gYW4ga3Jva29kaWwKRHUgZ2lic3QgZGVtIEtudWRkZWxrcm9rb2RpbCAxMCBNdWVuemVuLgpEYXMgS3Jva29kaWwgaGF0IG5peCB6dW0gZWluc3RlY2tlbi4KdW50IGtyb2tvZGlsCkRhcyBpc3QgRGVpbiBLbnVkZGVsa3Jva29kaWwuIEVzIGxlYnQgendhciBuaWNodCBsYW5nLCBpc3QgYWJlciBzb25zdAphZXVzc2Vyc3QgbGllYi4uLgpFcyBpc3QgYWJzb2x1dCBmaXQuCkVzIHRyYWVndCBiZWkgc2ljaDoKMTAgTXVlbnplbi4KCkVzIGhhdCBhYmVyIGRvY2ggbml4IHp1bSBFaW5zdGVja2VuID8hPyEKKGhhYicgaWNoIHZlcmJvY2t0LCBkYXMgVmllY2guLi4gZXJrbGFlcmVuIGthbm4gaWNoIGVzIG1pciBhYmVyIG5pY2h0KQotQ3JlYS0sIHp1bSBUaGVtYSBNYWdpZXIgdW5kIHNvLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGV1dGUgaW0gUmFkaW8uLi4gKENhcmFkaHJhcywgMzEuIEp1bCAxOTk1LCAxMzo0OToxNik6CkthbSBmb2xnZW5kZXIgU2F0ejoKIlZlcndpcnJ1bmcgaW4gVHNjaGV0c2NoZW5pZW4uIgoKTmFudSwgaXN0IFplcHMgWndlaXRpZSBhdWYgUmVpc2VuIGdlZ2FuZ2VuPwoKICAgIEphamEsIGRpZSBLb250cm9sbGUgdmVybG9yZW4sIGhtPwoKICAgICAgICBaZXBoeXIgYW5ncmluc2VuZCAgICAgICAgIENhcmFkaHJhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobW9sbCAoRmFudWlkaG9sLCAzMS4gSnVsIDE5OTUsIDIyOjE5OjQ5KToKdG9ldGUgY2FyYWRocmFzCk9rCj4gICBEdSBncmVpZnN0IENhcmFkaHJhcyBtaXQgYmxvc3NlbiBIYWVuZGVuIGFuLgogIER1IHRyaWZmc3QgQ2FyYWRocmFzLgogIENhcmFkaHJhcyBncmVpZnQgRGljaCBtaXQgZGVtIEJsdXRzYXVnZXItU2Nod2VydCBhbi4KICBDYXJhZGhyYXMgdHJpZmZ0IERpY2ggaGFydC4KW0FsbGdlbWVpbjpQdW5pY2FdIHdhcyBrYW5uIG1hbiBkYW1pdCB3b2hsIHR1bj8KICBEdSBncmVpZnN0IENhcmFkaHJhcyBtaXQgYmxvc3NlbiBIYWVuZGVuIGFuLgogIER1IGtpdHplbHN0IENhcmFkaHJhcyBhbSBCYXVjaC4KICBDYXJhZGhyYXMgZ3JlaWZ0IERpY2ggbWl0IGRlbSBCbHV0c2F1Z2VyLVNjaHdlcnQgYW4uCiAgQ2FyYWRocmFzIHZlcmZlaGx0IERpY2guCkRhbmNlciBiZXdlZ3Qgc2ljaC4gVW5kIG51ciBkaWVzZSBUYXRzYWNoZSB2ZXJyYWV0IERpciwgZGFzcyBlciBEQSBpc3QuCiAgRHUgZ3JlaWZzdCBDYXJhZGhyYXMgbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4KICBEdSB2ZXJmZWhsc3QgQ2FyYWRocmFzLgogIENhcmFkaHJhcyBncmVpZnQgRGljaCBtaXQgZGVtIEJsdXRzYXVnZXItU2Nod2VydCBhbi4KICBDYXJhZGhyYXMgdHJpZmZ0IERpY2ggaGFydC4KRGFuY2VyIHN0aWZ0ZXQgRnJpZWRlbi4KRHUgamFnc3QgQ2FyYWRocmFzIG5pY2h0IG1laHIuCkNhcmFkaHJhcyBqYWd0IERpY2ggbnVuIG5pY2h0IG1laHIuCgogIE5pY2h0IG1hbCBzZWluZW4gRXJzdGllIGRhcmYgbWFuIHVtbGVnZW4KCiAgICAgICBGYW51aWRob2wgLSB2b3Igc2ljaCBoaW5icnVtbWVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzY2htb2xsIChEYW5jZXIsIDMxLiBKdWwgMTk5NSwgMjM6MDU6MDQpOgojISBybj1GYW51aWRob2wgcnQ9ODA3MjIxOTg5CkljaCB3b2xsdGUgZG9jaCBudXIga3VyeiB1bnRlcmJyZWNoZW4sIGRhbWl0IGljaCBpaG0gZGVuIGxldHp0ZW4gSGllYgp2ZXJwYXNzZW4ga2FubiA7KQoKRGFuY2VyIC0gdG90YWwgYnJ1dGFsLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtlbm50IGlociBkYXMgPyAoS2FydGlpLCAgMi4gQXVnIDE5OTUsIDAzOjQ3OjI2KToKIHVudCB0cmFtcGVscGZhZApad2VpIHNjaG1hbGUgVHJhbXBlbHBmYWRlIGZ1ZWhyZW4gdm9uIGhpZXIgYW0gQmFjaCBlbnRsYW5nIG5hY2ggTm9yZHdlc3Rlbgp1bnRlciBlaW5lciBCcnVlY2tlIGR1cmNoIHVuZCBuYWNoIFN1ZWRlbiBhbiBlaW5lbSBrbGVpbmVuIFNlZSB2b3JiZWkuIE1hbgprYW5uIHNpZSBrYXVtIGVya2VubmVuLCBhYmVyIHNpZSBzaW5kIHp1ciBOb3QgZ2FuZ2Jhci4KdW50IG5vdApFaW4gR2Vpc3QgZWluZXMgUHJvZ3JhbW1pZXJlcnMga29tbXQgYW4uCkRlciBHZWlzdCBzYWd0OiBEdSBrZW5uc3Qga2VpbmUgTm90LCBLYXJ0aWk/CkRlciBHZWlzdCBzYWd0OiBEdSBzb2xsc3Qgc2llIGtlbm5lbmxlcm5lbi4KPiAgIERlciBHZWlzdCBlaW5lcyBQcm9ncmFtbWllcmVycyBncmVpZnQgRGljaCBtaXQgZWluZW0gZGlja2VuIFJlcEZpbGUgYW4uCiAgRGVyIEdlaXN0IGVpbmVzIFByb2dyYW1taWVyZXJzIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KRHUgaGFzdCBqZXR6dCAyMDcgTGViZW5zcHVua3RlIHVuZCA5OCBNYWdpZXB1bmt0ZS4KICBEdSBncmVpZnN0IGRlbiBHZWlzdCBlaW5lcyBQcm9ncmFtbWllcmVycyBtaXQgYmxvc3NlbiBIYWVuZGVuIGFuLgogIER1IGtyYXR6dCBkZW4gR2Vpc3QgZWluZXMgUHJvZ3JhbW1pZXJlcnMuCiAgRGVyIEdlaXN0IGVpbmVzIFByb2dyYW1taWVyZXJzIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBkaWNrZW4gUmVwRmlsZSBhbi4KICBEZXIgR2Vpc3QgZWluZXMgUHJvZ3JhbW1pZXJlcnMgdHJpZmZ0IERpY2ggc2VociBoYXJ0LgpEdSBoYXN0IGpldHp0IDE5NSBMZWJlbnNwdW5rdGUgdW5kIDk4IE1hZ2llcHVua3RlLgpEZXIgR2Vpc3Qgc2NoYXV0IERpY2ggZHVyY2hkcmluZ2VuZCBhbi4KRHUgYmxlaWJzdCB3aWUgZ2ViYW5udCBzdGVoZW4gdW5kIHJ1ZWhyc3QgRGljaCBuaWNodCBtZWhyLgpEZXIgR2Vpc3QgbWFjaHQ6IEJ1aCEKICBEZXIgR2Vpc3QgZWluZXMgUHJvZ3JhbW1pZXJlcnMgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIGRpY2tlbiBSZXBGaWxlIGFuLgogIERlciBHZWlzdCBlaW5lcyBQcm9ncmFtbWllcmVycyB0cmlmZnQgRGljaCBzZWhyIGhhcnQuCkR1IGhhc3QgamV0enQgMTgzIExlYmVuc3B1bmt0ZSB1bmQgOTggTWFnaWVwdW5rdGUuCkRlciBHZWlzdCB3aXJmdCBlaW5lbiB2ZXJnaWZ0ZXRlbiBQZmVpbCBuYWNoIERpci4KRHUgd2VpY2hzdCBkZW0gUGZlaWwgZ2Vrb25udCBhdXMuCkRlciBHZWlzdCBtYWNodDogQnVoIQogIERlciBHZWlzdCBlaW5lcyBQcm9ncmFtbWllcmVycyBncmVpZnQgRGljaCBtaXQgZWluZW0gZGlja2VuIFJlcEZpbGUgYW4uCiAgRGVyIEdlaXN0IGVpbmVzIFByb2dyYW1taWVyZXJzIHRyaWZmdCBEaWNoIGhhcnQuCkR1IGhhc3QgamV0enQgMTc1IExlYmVuc3B1bmt0ZSB1bmQgOTggTWFnaWVwdW5rdGUuCkRlciBHZWlzdCBtYWNodDogQnVoIQpEdSBoYXN0IGpldHp0IDE3NiBMZWJlbnNwdW5rdGUgdW5kIDk4IE1hZ2llcHVua3RlLgogIERlciBHZWlzdCBlaW5lcyBQcm9ncmFtbWllcmVycyBncmVpZnQgRGljaCBtaXQgZWluZW0gZGlja2VuIFJlcEZpbGUgYW4uCiAgRGVyIEdlaXN0IGVpbmVzIFByb2dyYW1taWVyZXJzIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KRHUgaGFzdCBqZXR6dCAxNTggTGViZW5zcHVua3RlIHVuZCA5OCBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAxNTggTGViZW5zcHVua3RlIHVuZCA3NCBNYWdpZXB1bmt0ZS4KRGVyIEdlaXN0IG1hY2h0IGVpbmUgbWVya3d1ZXJkaWdlIEhhbmRiZXdlZ3VuZy4KRHUgc3B1ZXJzdCBEZWluZSBtYWdpc2NoZSBLcmFlZnRlIHNjaHdpbmRlbi4KCkthcnRpaSAoYXVmIEVudGRlY2t1bmdzcmVpc2UgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBrZW5udCBpaHIgZGFzID8gKENyYWlnLCAgMi4gQXVnIDE5OTUsIDE3OjUwOjEyKToKIyEgcm49S2FydGlpIHJ0PTgwNzMyODA0NgoKVW5nbGF1YmxpY2gsIHdvIHdhciBkYXM/IE9kZXIgaGFzdCBkdSBkYXMgZXR3YSBkb2NoIGdldHJhZXVtdD8KCkxhc3MgZXMgdW5zIHdpc3Nlbi4KCk5ldWdpZXJpZzogQ1JBSUcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGtlbm50IGlociBkYXMgPyAoS2V0b3MsICAyLiBBdWcgMTk5NSwgMTk6MzA6MzQpOgojISBybj1DcmFpZyBydD04MDczNzg2MTIKU28gd2FzIGZpZXNlcyBrYW5uIGRvY2ggbnVyIHZvbiBSb2NodXMgc3RhbW1lbiA+LSkKCi0gS2V0b3MgLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzoga2VubnQgaWhyIGRhcyA/IChCb2luZywgIDIuIEF1ZyAxOTk1LCAxOTo0NzoyNik6CiMhIHJuPUtldG9zIHJ0PTgwNzM4NDYzNApMZWlkZXIgZmFsc2NoLCBlcyB3dWVyZGUgUm9jaHVzIHp3YXIgYWVobmxpY2ggc2VoZW4sIGlzdCBhYmVyIHZvbgpTaWx2YW5hLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEJhbWJ1bGtvLCAgMy4gQXVnIDE5OTUsIDAwOjUzOjE4KToKW0FsbGdlbWVpbjpHYXJmaWVsZF0gd2llIGthbm4gaWNoIHZvbiBkZXIgc3Bpbm5lIHdlZ2tsZXR0ZXJuCltUb2Q6XSBFaW5lIFJpZXNlbnNwaW5uZSBoYXQgZ2VyYWRlIEdhcmZpZWxkIHVtZ2VicmFjaHQuCltBbGxnZW1laW46QmFtYnVsa29dIHdlbGNoZSBzcGlubmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5vY2htYWwgRkxXIChCYW1idWxrbywgIDMuIEF1ZyAxOTk1LCAwMTo1ODoxNCk6CkFsbGdlbWVpbjpOb3JnZXNjaF0gaGFiIDIgYnVtaXMgZ2VmdW5kZW4gaW4gbW91bG9raW4gLi5zaW5kIGRpZSB3ZW0/CltBbGxnZW1laW46WmVwaHlyXSBTbHlmb3ggdmVybXV0bGljaApbQWxsZ2VtZWluOlNseWZveF0gU2luZCBkaWUgdHVlcmtpcy1tYXR0PwpBbGxnZW1laW46Tm9yZ2VzY2hdIGpvIGxpZWdlbiBpbiBkZXIgcG9zdAouLi4uCi4uLi4KW1RvZDpdIEJ1bWVyYW5nIGhhdCBnZXJhZGUgTm9yZ2VzY2ggdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBrZW5udCBpaHIgZGFzID8gKFNpbHZhbmEsICA0LiBBdWcgMTk5NSwgMTI6MzQ6MjkpOgojISBybj1LYXJ0aWkgcnQ9ODA3MzI4MDQ2CkljaCBoYWV0dGUgZXMgbWlyIGphIGRlbmtlbiBrb2VubmVuLCBkYXNzIERVIGRlbiBHZWlzdCBmaW5kZXN0LiA7KQpBbHNvOiBIZXJ6bGljaGVuIEdsdWVja3d1bnNjaDogRHUgd2Fyc3QgZGVmaW5pdGl2IGRlciBlcnN0ZSwgZGVyJ3MKYmVtZXJrdCBoYXQuIE5pY2h0IG1hbCBCb2luZyBoYXQgaWhuIGJlaW0gdGVzdGVuIGdlc2VoZW4uClNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGtlbm50IGlociBkYXMgPyAoU2lsdmFuYSwgIDQuIEF1ZyAxOTk1LCAxMjozNToxMSk6CiMhIHJuPUtldG9zIHJ0PTgwNzM4NDYzNApEZW5rc3RlLCBLZXRvcy4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndlciBzYWd0cyBtaXIgPyAoQ2hhcmx5LCAgNC4gQXVnIDE5OTUsIDE2OjQ5OjMxKToKd2FyIGVpbmlnZSB3b2NoZW4gbmljaHQgaW0gbXVkLCBiaW4gZ3JhZCBtaXQgZGVyIG1wYSBmZXJ0aWcuLgprYW5uIG1pciBtYWwgd2VyIHNhZ2VuLCB3YXMgdmVyYmlyZ3Qgc2ljaCBlaWdlbnRsaWNoCmhpbnRlciBTY2h3YXBwZGlkYXBwID8/CgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3ZXIgc2FndHMgbWlyID8gKEFuYWtpbiwgIDQuIEF1ZyAxOTk1LCAxNzozODoxMik6CiMhIHJuPUNoYXJseSBydD04MDc1NDc3NzEKRXMgaGllcyBTQ0hXVVBQRElXVVBQIHVuZCBkYXMgaGVpc3N0IERhbmNlciBicmluZ3QgMiBLYWVzdGVuIEJpZXIKenVyIFBhcnR5IG1pdC4KCkFuYWtpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3ZXIgc2FndHMgbWlyID8gKEthZW5ndXJ1aCwgIDQuIEF1ZyAxOTk1LCAxNzo0MDoxMik6CiMhIHJuPUNoYXJseSBydD04MDc1NDc3NzEKSWNoIGdsYXViIGVzIGhpZXNzIGltIE9yaWdpbmFsIHNvZ2FyICJTQ0hXVVBQRElXVVBQISIsIGFiZXIKdHJlZmZlbmRlciBoYWV0dGUgaWNoIGVzIGF1Y2ggbmljaHQgc2FnZW4ga29lbm5lbiA6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNDSFdVUFBESVdVUFAgISAoQXNtb2RpcywgIDUuIEF1ZyAxOTk1LCAwMTozNjozMSk6CkljaCBnbGF1YmUsIGRhcyB3YXIgZGVyIHJpY2h0aWdlIFRpdGVsIChzaWVoZSBvYmVuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNDSFdVUFBESVdVUFAgISAoSGFyZGlsLCAgNS4gQXVnIDE5OTUsIDAzOjQxOjQ2KToKIyEgcm49QXNtb2RpcyBydD04MDc1NzkzOTEKSG1tLCB3ZW5uIGljaCBqZXR6dCBub2NoIDk5OSByZXBseXMgc2NocmVpYmUsIGhtbW0sIERhbmNlcj8gOikKSGlsZnQgamVtYW5kIG1pdCA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTQ0hXVVBQRElXVVBQICEgKEhhcmRpbCwgIDUuIEF1ZyAxOTk1LCAwNDo1MToxMSk6CiMhIHJuPUhhcmRpbCBydD04MDc1ODcyNjEKc2NocmVpYnQgbm9jaCBqZW1hbmQgbWl0PyBEYXMgaXN0IGRvY2ggbGFuZ3dlaWxpZyBhbGxlaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmxlZXIuLi4gKE11cGZlbCwgIDUuIEF1ZyAxOTk1LCAwOToxMDoxMyk6CiQgd2VyIG1vcmdlbmdyYXVlbgpBbmZyYWdlIGFiZ2VzY2hpY2t0LgokCiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKgp8ICAgICAgICAgICAgTW9yZ2VuR3JhdWVuLCBMUE11ZCAwMy4wMi4xQDExMyAoQW15bGFhcikgICAgICAgICAgIHwKfCAgICAgICBBZHJlc3NlOiBtdWQudW5pLW11ZW5zdGVyLmRlICgxMjguMTc2LjEyMS43NCkgIDQ3MTEgICAgICB8CnwgICAgIFVwdGltZTogNCBUYWdlLCAxMiBTdHVuZGVuLCA0MSBNaW51dGVuIHVuZCA1MSBTZWt1bmRlbiAgICAgfAp8ICAgICAgICAgICAgICAgICAgICAgICBNb3JnZW5HcmF1ZW4gTXVkbGliICAgICAgICAgICAgICAgICAgICAgIHwKKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qClttXSBNdXBmZWwgcGVubnQgZW50c3Bhbm50IGF1ZiBkZXIgQmFuayAtIFp3ZXJnIC0gW09zbmFicnVlY2tdCltNXSBGcnVjaHR6d2VyZyBFbEJ5dGUgLiAtIEZydWNodHp3ZXJnIC0gW0Vzc2VuXQoqKiogRXMgYmVmaW5kZW4gc2ljaCBnZXJhZGUgMiBTcGllbGVyIGluIE1vcmdlbkdyYXVlbi4KCih1bmQgZGEgc2FnZW4gZGllIGltbWVyIG1laW4gbXVkIHdhZXJlIGxlZXIgOi0pCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGxlZXIuLi4gKEFzbW9kaXMsICA1LiBBdWcgMTk5NSwgMTg6MzU6NTMpOgojISBybj1NdXBmZWwgcnQ9ODA3NjA2NjEzCldhcyB3aWxsc3QgZHUgc2Ftc3RhZ3MgdW0gOSBkZW5uIGFuZGVyZXMgZXJ3YXJ0ZW4/IGRhIGxpZWdlbiBub2NoIGFsbGUgaW0KQmV0dCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBsZWVyLi4uIChDYXJhZGhyYXMsICA1LiBBdWcgMTk5NSwgMjI6MjM6MTcpOgojISBybj1Bc21vZGlzIHJ0PTgwNzY0MDU1MwoqYnJ1bW1lbCogTmF0dWVybGljaCBoYXQgZXIgZGFzIGVyc3QgdmVyb2VmZmVudGxpY2h0IGFscyBpY2ggZ3JhZGUgd2VnCndhciB6dW0gZWlua2F1ZmVuLiAqc2NobW9sbCBNdXBmZWwgYW4qCgogICAgICAgQ2FyYWRocmFzIC0gbGllZ3QgdW0gOSBVaHIgbW9yZ2VucyAobm9jaCkgbmljaHQgaW0gQmV0dAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKREFTIGlzdCBlaW4gTEFHICEhISEhISEgKEhhd2ssICA2LiBBdWcgMTk5NSwgMTc6MzQ6NTUpOgpHZXN0ZXJuIGdlc2NoZWhlbjoKSWNoIG1vZWNodGUgTW9yZ2VuZ3JhdWVuIHZlcmxhc3NlbiwgdW5kIHRpcHBlOgoKc2NobGFmZSBlaW4uCgooRGFuYWNoIHBhdXNlIGljaCBtZWluZSBzZXNzaW9uIHVuZCBnZWhlLikKKFdhcyBwYXNzaWVydCBhbHMgbmFlY2hzdGVzPykKLi4uCi4uLgouLi4KLi4uCi4uLgouLi4KKFZpZWwgdmllbCBUZXh0LCB1bmQgZGFubiBkaWUga3JpdGlzY2hlIFN0ZWxsZS4pCi4uLgouLi4KS2hpZGFyIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBLaGlkYXIuCktoaWRhciB2ZXJibGFzc3QgdW5kIGVudHNjaHdpbmRldCBhbnNjaGVpbmVuZCBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KW01vZXJkZXI6R2Vpc3QgZWluZXMgT3Jrc10gQ2FyYWRocmFzPyBJY2ggYmluIGRhbm4gamV0enQgd2VnLgpbQWxsZ2VtZWluOkNhcmFkaHJhc10gaG1wZgpbQWxsZ2VtZWluOk11cGZlbF0gamE/CltBbGxnZW1laW46Q2FyYWRocmFzXSBzdGltbXQgbWFsIHdpZWRlciB3YXMgbmljaHQuLi4gYWNoIGljaCBiaW4gZG9jaCBkb29mCltBbGxnZW1laW46TXVwZmVsXSBodWNoIG51ciBub2NoIHdpZXIgYmVpZGUgY2FyYSA6LSkKW0FsbGdlbWVpbjpNdXBmZWxdIGhhd2sgaWRsZWQgc2VpdCA1IDMvNCBzdGQKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIHNjaG9uIGdlc2VoZW4gOikKRGllc2VyIEJlZmVobCBiZWVuZGV0IERlaW5lIFZlcmJpbmR1bmcgbWl0IE1vcmdlbmdyYXVlbi4gRHUgYmVoYWVsdHN0IERlaW5lClNhY2hlbiwgYWJlciBWb3JzaWNodDogV2VubiBNb3JnZW5HcmF1ZW4gYWJzdHVlcnp0LCB3YWVocmVuZCBEdSB3ZWcgYmlzdCwKdmVybGllcnN0IER1IHNpZSBkb2NoLCBnZW5hdXNvLCBhbHMgd2VubiBEdSBEZWluZSBWZXJiaW5kdW5nIG1pdCAiZW5kZSIKYmVlbmRldCBoYWV0dGVzdCAoYWxsZXJkaW5ncyBiZWtvbW1zdCBEdSBkYW5uIGVpbmUgZmluYW56aWVsbGUKRW50c2NoYWVkaWd1bmcpLgpBQkVSOiBCRU5VVFpVTkcgQVVGIEVJR0VORSBHRUZBSFIgISEhCkNsb3NpbmcgZG93bi4KQ29ubmVjdGlvbiBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgoKCk5hLCBpc3QgZGFzIGVpbiBMQUc/CgpIQVdLIChXYXIgenUgZGVyIHplaXQgc2Nob24gYmVpbSBGZXVlcndlcmsgZGVyIFBvcnR1Z2llc2VuLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoR3V5YnJ1c2gsICA3LiBBdWcgMTk5NSwgMDk6NDQ6MTUpOgpbQWJlbnRldWVyOkVsb3JhXSB3ZXIgaGF0IGF1c3J1ZXN0dW5nIGluIGRlciBlaXN3dWVzdGUgdmVybG9yZW4/PwouLi4uLgouLi4uLgpbVG9kOl0gRWluIFVudGllciBoYXQgZ2VyYWRlIEVsb3JhIHVtZ2VicmFjaHQuCgp0c3RzLCB3YXIgenUgZXJ3YXJ0ZW4KR3V5YnJ1c2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU0NIV1VQUERJV1VQUCAhIChTY2hydW1wZmksICA3LiBBdWcgMTk5NSwgMjM6NDg6NDYpOgojISBybj1IYXJkaWwgcnQ9ODA3NTg2OTA2CkJpdHRlIG5pY2h0ISBTb25zdCBzaW5kIG5vY2ggbWVociBFcnppZXMgc2F1ZXIgYXVmIG1pY2ggOi0pClNjaHJ1bXBmaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU0NIV1VQUERJV1VQUCAhIChBc21vZGlzLCAgOC4gQXVnIDE5OTUsIDAwOjU5OjE1KToKIyEgcm49U2NocnVtcGZpIHJ0PTgwNzgzMjEyNgpqYWphCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTQ0hXVVBQRElXVVBQICEgKEhhcmRpbCwgIDguIEF1ZyAxOTk1LCAwMTowMzo1Myk6CiMhIHJuPUFzbW9kaXMgcnQ9ODA3ODM2MzU1CldpZXNvIHNvbGx0ZW4gRXJ6bWFnaWVyIGF1ZiBEaWNoIHNhdWVyIHNlaW4sIFNjaHJ1bXBmaT8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFNDSFdVUFBESVdVUFAgISAoU2NocnVtcGZpLCAgOC4gQXVnIDE5OTUsIDAxOjMyOjM0KToKIyEgcm49SGFyZGlsIHJ0PTgwNzgzNjYzMwpOYSB3ZW5uIGljaCBzaWUgaW1tZXIgenUgdW5yZWNodCB2ZXJkYWVjaHRpZ2UuIDopClNjaHJ1bXBmaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VoZXIgc2luZCBhdWNoIG5pY2h0IG1laHIgZGFzLi4uIChUYXNoYSwgIDguIEF1ZyAxOTk1LCAwMjowNDoxNik6CkhpIQoKQWxzbyBpY2ggYmluIGF1Y2ggZGVyIE1laW51bmcsIGRhc3MgaW0gTUcgYWxsZXMgdmllbCB6dSBlaW5mYWNoIGdld29yZGVuCmlzdC4KU2VpdCBuZXVlc3RlbSBtdXNzIG1hbiBuaWNodCBtYWwgbWVociBkYXMgTUcga2VubmVuIHVtIFNlaGVyIHp1IHdlcmRlbiEKSGllciBkZXIgQmV3ZWlzIGluIEZvcm0gZWluZXMgQXVzenVncyBlaW5lcyBHRXNwcmFlY2hzLCBkYXNzIGljaCBtaXQgZWluZW0KYWx0ZW4gU2VoZXIgaW4gV2luZHNob3JuIGdlZnVlaHJ0IGhhYmU6Cj4gZnJhZ2Ugc2VoZXIgbmFjaCBtb3JnZW5ncmF1ZW4KRGVyIGFsdGUgU2VoZXIgc2FndDogT2ghIERhcyBoYWJlIGljaCBuaWNodCBnZXNlaGVuLgoKRW50cnVlc3RldCwgVGFzaGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEQVMgaXN0IGVpbiBMQUcgISEhISEhISAoTXVwZmVsLCAgOC4gQXVnIDE5OTUsIDA0OjAxOjU4KToKIyEgcm49SGF3ayBydD04MDc3MjMyOTUKYmlzdCBkdSBkaXIgc2ljaGVyICdzY2hsYWZlIGVpbicgZ2V0aXBwdCB6dSBoYWJlbj8gYWxzIGljaCBzYWggZGFzIGR1IHNvCmxhbmdlIGlkbGUgd2Fyc3QgaGFiIGljaCAnendpbmdlIGhhd2sgc2NobGFmZSBlaW4nIGdldGlwcHQgOi0pIGRhcyBrYW5uIG5pY2h0CnNjaGFkZW4gdW5kIGVzIHdhciB3aWVkZXIgZWluZXIgd2VuaWdlciBhdWYgZGVtIHdlZyB6dW0gMi1wZXJzb25lbi1tdWQuLi4Kd2FlcmUgZWxieXRlIG5pY2h0IGdla29tbWVuIHdhZXJlIGljaCBkYW5uIHVtIDkgZ2FueiBhbGxlaW4gZ2V3ZXNlbiA6LSkKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZXBseSBhdWYgc2VoZXIuZW50d2lja2x1bmcsIEFydGlrZWw6IDM1IHZvbiAzNiAoQW5ha2luLCAgOC4gQXVnIDE5OTUsIDEzOjE2OjQyKToKV2VyIHdhciBkZXIgVmVycmFldGVyID8/IDopCgpBbmFraW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkaWUgYXJtZW4gR2xhZGlzIDopIChaZXBoeXIsICA4LiBBdWcgMTk5NSwgMTM6NTg6NTIpOgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKV2FzIGZ1ZXIgZWluIEthbXBmISEgVHJvdHogaGVmdGlnZXIgR2VnZW53ZWhyIGlzdCBlcyB1bnNlcmVuIG11dGlnZW4KR2xhZGlhdG9yZW4gbmljaHQgZ2VsdW5nZW4sIENhcmFkaHJhcyB6dSBicmVtc2VuISBXaXIgZ3JhdHVsaWVyZW4KcmVjaHQgaGVyemxpY2ghISBVbmQgdW5zZXJlbiBadXNjaGF1ZXJuIGRhbmtlbiB3aXIgZnVlciBJaHJlIEF1Zm1lcmtzYW1rZWl0IQpCaXMgenVtIG5hZWNoc3RlbiBtYWwhCkZhbmZhcmVuIHNjaGFsbGVuIHZvbiBkZXIgQXJlbmEgaGVydWViZXIuIENhcmFkaHJhcyBoYXQgYWxsZQpHbGFkaWF0b3JlbiBiZXNpZWd0IHVuZCB0cmFlZ3QgZm9ydGFuIGRlbiBUaXRlbCAnT2JlcmdsYWRpYXRvcicuCkR1IHN0ZWhzdCBhdWYgZGVyIGdyb3NzZW4gVHJpYnVlbmUgZGVyIEthbXBmYXJlbmEuIFZvbiBoaWVyIGF1cyBoYXN0IER1CmRlbiBiZXN0ZW4gQmxpY2sgYXVmIGRpZSBBcmVuYS4gUmVjaHRzIHVuZCBsaW5rcyB2b24gRGlyIHN0ZWhlbiB2aWVsZSBhbmRlcmUKaW50ZXJlc3NpZXJ0ZSBadXNjaGF1ZXIuCk1pdCA8YXJ1ZmU+IGthbm5zdCBEdSBldHdhcyBpbiBkaWUgQXJlbmEgaGluZWlucnVmZW4hCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB1bnRlbi4KRWluIE1hbm4gbWl0IGVpbmVtIEJhdWNobGFkZW4uCkF1c3NlcmhhbGIgc2llaHN0IER1OgpEaWUgZ3Jvc3NlIEthbXBmYXJlbmEuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBzdWVkZW4uCkVpbiBCdW1lcmFuZyBzY2h3aXJydCBkdXJjaCBkaWUgTHVlZnRlLgpFaW4gQnVtZXJhbmcgc2Nod2lycnQgZHVyY2ggZGllIEx1ZWZ0ZS4KRGllIExlaWNoZSBIZXJrdWxlcycuCkRpZSBMZWljaGUgSm9oYW5uYSB2b24gT3JsZWFucycuCkRpZSBiZXJlaXRzIHppZW1saWNoIHN0aW5rZW5kZSBMZWljaGUgSGVsZ2FzLgpEaWUgc2NoaW1tZWxuZGUgdW5kIGhhbGJ2ZXJ3ZXN0ZSBMZWljaGUgSGFlZ2Fycy4KRGllIHNjaGltbWVsbmRlIHVuZCBoYWxidmVyd2VzdGUgTGVpY2hlIFBvcGV5ZXMuCkRpZSB2ZXJmYXVsdGVuIEVpbnplbHRlaWxlIEtsZW9wYXRyYXMuCkRpZSB2ZXJmYXVsdGVuIEVpbnplbHRlaWxlIENvbmFucy4KRGllIHZlcmZhdWx0ZW4gRWluemVsdGVpbGUgV2lsbHkgV3VlaGxiZWNrcy4KR29sZGRyYWNoZSBDYXJhZGhyYXMgZGVyIERyYWNoZW5iZXJnLgpEZXIgU2NoaWVkc3JpY2h0ZXIuCgoKT2huZSBXb3J0ZSwgWmVwaHlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbGZlbmRvcmYgKEFuYWtpbiwgIDguIEF1ZyAxOTk1LCAxOTo1NDowNik6CkR1IGhhc3QgamV0enQgMTI5IExlYmVuc3B1bmt0ZSB1bmQgMTQgTWFnaWVwdW5rdGUuCkRlciBFbGZlbndhZWNodGVyIHNhZ3Q6IFN0aXJiLCBad2VyZ2VuZnJldW5kIQogIER1IGdyZWlmc3QgZGVuIEVsZmVud2FlY2h0ZXIgbWl0IGRlbSBTY2h3ZXJ0IGFuLgogIER1IHRyaWZmc3QgZGVuIEVsZmVud2FlY2h0ZXIgc2VociBoYXJ0LgpEZXIgRWxmZW53YWVjaHRlciBmYWVsbHQgdG90IHp1IEJvZGVuLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFbGZlbndhZWNodGVyc10gV2FydW0gaGF0IG1pciBuaWVtYW5kIGdlZ2VuIEFuYWtpbgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFbGZlbndhZWNodGVyc10gZ2Vob2xmZW4/CgoKQW5ha2luIChpc3QgbmljaHQgbnVyIGVpbiBGcmV1bmQgZGVyIFp3ZXJnZSwgYmluIHNlbGJlciBad2VyZykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmlzdCBldWNoIHNvd2FzIHNjaG9ubWFsIHBhc3NpZXJ0ID8gKE1lc2lyaWksICA5LiBBdWcgMTk5NSwgMDE6NTY6MzApOgpwaWQgNDIyOCAoZW1hY3MpIHdhcyBraWxsZWQgb24gbWVtb3J5IHBhcml0eSBlcnJvcgoKdW5kIGRhcyBpc3Qga2VpbiBQQyAhISEKTWVzaWkgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlciBrYXVmdCBkaWUgbWVpc3RlbiBCdW1lcmFuZ3M/IChMb2NvLCAgOS4gQXVnIDE5OTUsIDE2OjM5OjIzKToKV2VyIGhhdCBpbiBkZW4gbGV0enRlbiA1IFdvY2hlbiBpbSBTZWhlcmxhZGVuIGRpZSBtZWlzdGVuIEJ1bWVyYW5ncyBnZWthdWZ0PwpXZXIgc2ljaCBkaWVzZSBGcmFnZSBzY2hvbiBpbW1lciBtYWwgZ2VzdGVsbHQgaGF0LCBoaWVyIGlzdCBkaWUgQW50d29ydDoKIDU1IDogU2x5Zm94CiA0MyA6IENhcmFkaHJhcwogMjggOiBXaWxsb3cKIDI1IDogTm9zdHJhZGFtdXMKIDI0IDogVG9zcwogMjQgOiBDdWNodWxsaW4KIDIxIDogSXNub2dvb2QKIDE5IDogWWV0aQogMTkgOiBKYW5pY2UKIDE4IDogVXJ6YQogMTggOiBSeHRlY2gKIDE4IDogT3JrdG9ldGVyCiAxNyA6IFJvYWRydW5uZXIKIDE3IDogQ3JhaWcKIDE3IDogQW5ha2luClNvd2VpdCBkaWUgVG9wIDE1LiBHaWJ0IGVzIGVpZ2VudGxpY2ggYXVjaCBlaW5lIFN0YXRpc3RpayB1ZWJlciBkaWUgRnJhZ2U6CldlciBoYXQgZGllIG1laXN0ZW4gQnVtZXJhbmdzIGdlZnJlc3Nlbj8KCkRpZSB2b2xsZSBTdGF0aXN0aWsgaXN0IGF1ZiBBbmZyYWdlIGJlaSBtaXIgZXJoYWVsdGxpY2gsCgogICAgICAgICAgICBMb2NvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VyIGthdWZ0IGRpZSBtZWlzdGVuIEJ1bWVyYW5ncz8gKEFzbW9kaXMsICA5LiBBdWcgMTk5NSwgMTg6MDc6NDApOgojISBybj1Mb2NvIHJ0PTgwNzk3OTE2MwpOYWphLCBpY2ggc3RlaCB3b2hsIG5pY2h0IGRyaW4sIHdlaWwgaWNoIG1laXN0ZW5zIG5lbiBEcml0dGllIGxvc3NjaGlja2UsCm11c3MgTVAgc3BhcmVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdlciBrYXVmdCBkaWUgbWVpc3RlbiBCdW1lcmFuZ3M/IChBc21vZGlzLCAgOS4gQXVnIDE5OTUsIDE4OjA4OjExKToKIyEgcm49QXNtb2RpcyBydD04MDc5ODQ0NjAKQWJlciBoYWIgZGllc2UgV29jaGUgc2Nob24gNSBCdW1lcmFuZ3MgZ2VmcmVzc2VuIGJla29tbWVuIDooKAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZXIga2F1ZnQgZGllIG1laXN0ZW4gQnVtZXJhbmdzPyAoTG9jbywgIDkuIEF1ZyAxOTk1LCAxODozMDo0NSk6CiMhIHJuPUFzbW9kaXMgcnQ9ODA3OTg0NDYwCldlbm4gRHUgbWlyIHNhZ3N0LCB3ZXIgYWxsZXMgenUgRGlyIGdlaG9lcnQsIGthbm4gaWNoIGRpZSBhdWNoIG1hbAp6dXNhbW1lbnphZWhsZW4uLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZXIga2F1ZnQgZGllIG1laXN0ZW4gQnVtZXJhbmdzPyAoQXNtb2RpcywgIDkuIEF1ZyAxOTk1LCAxODo0NjozOSk6CiMhIHJuPUxvY28gcnQ9ODA3OTg1ODQ1CldpZSwgZGFzIHdlaXNzdCBkdSBuaWNodCA/PyB1bndpc3NlbmRlIG1hZ2llciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2VyIGthdWZ0IGRpZSBtZWlzdGVuIEJ1bWVyYW5ncz8gKEJvaW5nLCAgOS4gQXVnIDE5OTUsIDE4OjUzOjM5KToKIyEgcm49TG9jbyBydD04MDc5ODU4NDUKT2ggLi4uIGRhcyBwYXNzdCBuaWNodCBhdWYgZWluZSBTZWl0ZSAuLi4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2VyIGthdWZ0IGRpZSBtZWlzdGVuIEJ1bWVyYW5ncz8gKEJlbmRlaWdpZCwgIDkuIEF1ZyAxOTk1LCAyMDo0NzowMyk6CiMhIHJuPUphZiBydD04MDc5OTM4NzMKU3RpbW10IG5pY2h0IQoKWidwYXIgU2VydnUsCiAgICAgICAgICAgICAgQmVuZGVpZ2lkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXZXIga2F1ZnQgZGllIG1laXN0ZW4gQnVtZXJhbmdzPyAoTXVwZmVsLCAxMC4gQXVnIDE5OTUsIDAwOjQ0OjQzKToKIyEgcm49Qm9pbmcgcnQ9ODA3OTg3MjE5Cm5hamEgYWxsZSBhdXMga2wgaGFsdC4uLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKEdvbHVtLCAxMC4gQXVnIDE5OTUsIDAyOjIzOjQyKToKIyEgcm49R3V5YnJ1c2ggcnQ9ODA3NzgxNDU1CkhJSEkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlciB3YXMgd29vPyAoQ3VjaHVsbGluLCAxMC4gQXVnIDE5OTUsIDAyOjQ1OjAyKToKCkRlciB1bnNpY2h0YmFyZSBTYW1tbGVyIHRvcmtlbHQsIGFscyBlciBlaW5lbiBSYWNoZW5wdXR6ZXIgc2FldWZ0LgpEZXIgdW5zaWNodGJhcmUgU2FtbWxlciB0cmlua3QgZWluIGVpc2thbHRlcyBCaWVyLgp1bnQgc2FtbWxlcgpTb3dhcyBzaWVoc3QgRHUgaGllciBuaWNodC4KCgoKQWhhLiBLbGFlcnQgbWljaCBtYWwgZWluZXIgYXVmPwoKZ3J1ZWJlbG5kLApDdWNoLi0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZXIgd2FzIHdvbz8gKEdvbHVtLCAxMC4gQXVnIDE5OTUsIDA0OjU3OjI4KToKIyEgcm49Q3VjaHVsbGluIHJ0PTgwODAxNTUwMgpKYSBhbHNvIHNvIHdhcyAhCmRlbiB1bnNpY2h0YmFyZW4gU2FtbWxlciBoYWIgaWNoIGF1Y2ggc2Nob24gYmVtZXJrdCAuLi4KZGVyIHJhdWJ0IGdsYXViZSBpY2ggendlaXRpZXMgYXVzICxvZGVyID8KbmFqYSBhYmVyIGxldHp0aGluIHd1cmRlIGljaCBpbSBHb2JsaW4gamFnZXIgdm9uIHdhcyB1bnNpY2h0YmFyZW0gYW5nZWdyaWZmZW4KLi4KdW5kIERhcyBkaW5nIHdhciB6aW1saWNoIHN0YXJrIC4uIGhhYiBqZXR6dCBncmFkIGdlaW4gTG9nIG1laHIgLi4gYWJlciBpcyBqYQp3dXJzY2h0IC4uCkdvbHVtIGRlciBFaW5zYW1lIGRlciBaZWl0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUeXBvIChHb2x1bSwgMTAuIEF1ZyAxOTk1LCAwNDo1ODoxNSk6CkFlaG0gSmFnZXIgPSBMYWdlcgpHUmlucwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZXIgd2FzIHdvbz8gKFJvY2h1cywgMTAuIEF1ZyAxOTk1LCAxMTowMjo1NCk6CiMhIHJuPUdvbHVtIHJ0PTgwODAyMzQ0OApOdXIgenVyIEluZm9ybWF0aW9uOgoxLiBEZXIgdW5zaWNodGJhcmUgU2FtbWxlciBncmVpZnQgdm9uIHNpY2ggYXVzIGtlaW5lbiBhbi4KRGFzcyBtYW4gaWhuIG1pdCAidG9ldGUgYWxsZSIgYW5ncmVpZnQgaXN0IGVpbiBCdWcsIGRlciBub2NoCmJlaG9iZW4gd2VyZGVuIG11c3MgLSBkYXMgd2lyZCBkYW5uIGFiZXIgZnJ1ZWhlc3RlbnMgbmFjaCBkZW0KbmFlY2hzdGVuIFJlYm9vdCBha3Rpdi4KMi4gRGVyIFNhbW1sZXIgdmVyZm9sZ3QgbmllbWFuZGVuIC0gZXIgbGFldWZ0IGplZG9jaCBpbiBkZXIKR2VnZW5kIGhlcnVtIChoYXVwdHNhZWNobGljaCBHb2JsaW5sYWdlcikgdW5kIHNhbW1lbHQgZGVuIE11ZWxsIGF1ZiwKZGVuIFNwaWVsZXIgZG9ydCB2ZXJnZXNzZW4gdW5kIGJyaW5ndCBpaG4gaW4gZGVuIExhZGVuIGRlciBCcmFkZG9ucywKZGFtaXQgYmVpICJrYXVmZSBhdXNydWVzdHVuZyIgYXVjaCBtYWwgbmUgb3JkZW50bGljaGUgQXVzcnVlc3R1bmcKenVzYW1tZW5rb21tdCA6LSkKMy4gTmF0dWVybGljaCBpc3QgZGVyIHNjaHdlciB6dSB0cmVmZmVuIC0gaXN0IHNjaGxpZXNzbGljaCB1bnNpY2h0YmFyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSVVVVVVVVVVVESUlJSUlJSUlJSSEgKFJvY2h1cywgMTAuIEF1ZyAxOTk1LCAxMzo1MTo0Myk6CltBbGxnZW1laW46UnVkaXJhdHRlcl0gd2VyIGtlbm50IHNjaG1lcnpmcmVpZSBzdGVsbHVuZ2VuPz8KW0FsbGdlbWVpbjpSeHRlY2hdIGRhbm4ga29tbSBpY2ggZG9jaCBuaWNoIHZvcmJlaWkgOikKW0FsbGdlbWVpbjpSdWRpcmF0dGVyXSBqYWphLCBkdSBhbHRlIHNhdSwgaW1tZXIgZGFzc2VsYmUgbWl0IGRpcgpbQWxsZ2VtZWluOkJpZ2Zvb3QgZ2lidCBlcyBkYXMgdWViZXJoYXVwdD8/XQpbQWxsZ2VtZWluOkFsYm9pbl0gYmVpIHdhcyBSdWRpPzspCltBbGxnZW1laW46UnVkaXJhdHRlcl0gYmVpIHdhcyB3b2hsPyBiZWltIHNwdWVsZW4/Pz8/CltBbGxnZW1laW46UnVkaXJhdHRlciBwYWNrdCBzaWNoIGFuIGRlbiBLb3BwLl0KW0FsbGdlbWVpbjpSeHRlY2ggbGFjaHQgc2ljaCBlaW5zXQpbQWxsZ2VtZWluOkFsYm9pbl0gd2FzIGRlbm4gUnVkaSxiaXN0ZSBIYXVzZnJhdT8KW0FsbGdlbWVpbjpCaWdmb290IGZyZXV0IHNpY2gsIGRhc3MgUnVkaSBJaHJlbiBIdW1vciBiZWhhbHRlbiBoYXQgOikpXQpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXJdIGtsYXIsIGRldm90ZSBnb2VyZSwgd3Vzc3RlZXN0IGR1IGRhcyBuY2lodD8KW0FsbGdlbWVpbjpGYW50YWJveV0gaGkgZ3VsZGkgb2xsZXQ/YXNjaGVsb2NoISEhISEKW0FsbGdlbWVpbjpHdWxkdWthdF0gaGUgcnVkaSwgYmVpbmUgd2llZGVyIGRyYW4/IDspCltBbGxnZW1laW46RW5neXd1Y2tdIFJ1ZGksIHdpbGxzdCBEdSBldHdhIFNleD8KW0FsbGdlbWVpbjpHdWxkdWthdF0gbmVuZSwgZGVyIHpvcnJvIGlzdCBkYXMgbG9jaCBtaXQgYXNjaGUgZHJpbgpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXJdIGh1aHUgZ3VsZHVrYXQKW0FsbGdlbWVpbjpSdWRpcmF0dGVyXSBqYSwgYmVpbmUgZHJhbiwgdW5kIHNjaG9lbiBzdGVpZgpbQWxsZ2VtZWluOkJpZ2Zvb3Qgd2FzP10KW0FsbGdlbWVpbjpSdWRpcmF0dGVyXSBoZSwgaGFyLCB3ZWxjaGUgc3RlbGx1bmdlbiBoYWJlbiBzaWUgZGlyIHZlcnNjaHJpZWJlbgpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXJdIGltIGtya2g/CltBbGxnZW1laW46RmFudGFib3ldIGVuZ3kgZGVua3Qgd2llZGVyIG51ciBhbiBTRVgsIGlzdCBkYXMgbmljaHQga3JhbmsKW0FsbGdlbWVpbjpIYXJdIFdhc3J1bT8gYnJhY3Voc3QgRHUgYWN1aCB3ZWxjaGU/CltBbGxnZW1laW46QWxib2luXSBkaWUgbWlzc2lvbmFyc3N0ZWxsdW5nPwpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXJdIGVuZ3ksIGtsYXIgd2lsbCBpY2gsIGFiZXIgbmljaHQgbWl0IGRpcgpbQWxsZ2VtZWluOlJ4dGVjaF0gYWxzbyBtaXNzaW9uYXIgd2lyZCBuaWNoIGdlaG4KW0FsbGdlbWVpbjpSdWRpcmF0dGVyXSBqdXBwCltBbGxnZW1laW46RW5neXd1Y2tdIEhhYiBpY2ggYXVjaCBuaWNodCBhbmdlbm9tbWVuLCBSdWRpIDspIEFiZXIuLi5EdSBiaXN0CltBbGxnZW1laW46RW5neXd1Y2tdIGRvY2ggZ2FybmljaHQgdmVyaGVpcmF0ZXQgb2Rlcj8KW0FsbGdlbWVpbjpSeHRlY2hdIHdpZSBpc3NldCBkZW5uIGVpbmZhY2ggc28gYWxzIGRhdWVybHV0c2NoZXI/CltBbGxnZW1laW46UnVkaXJhdHRlcl0gYmVpZGUgYmVpbmUga2FwdXR0LCByZWNodGUgc2NodWx0ZXIsIGxpbmtlZXIKW0FsbGdlbWVpbjpSdWRpcmF0dGVyXSBvYmVyc2NoZW5rZWwsIGFsc286IGxhc3N0IGV1Y2ggd2FzIGVpbmZhbGxlbgpbQWxsZ2VtZWluOkVuZ3l3dWNrXSBDdW5uaWxpbmd1cz8KW0FsbGdlbWVpbjpHdWxkdWthdF0gd2FzIGhhc3QgZHUgZGVubiBhbmdlc3RlbGx0LCBydWRpCltBbGxnZW1laW46R3VsZHVrYXRdIG9kZXIgaXN0IGRhcyBiZWltIHNleCBwYXNzaWVydD8KW0FsbGdlbWVpbjpSdWRpcmF0dGVyXSBub2UsIHVuZCBkZXIgYXpydCBtZWludGUsIG1pdCBkZW4gYmVpbmVuIHd1ZXJkIGljaApbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXJdIGpldHp0IGF1Y2gga2VpbmVuIG1laHIgYWJrcmllZ2VuCltBbGxnZW1laW46Unh0ZWNoXSBzaWUgaGF0cyBtaXQgZW5neSBnZXRyaWViZW4KW0FsbGdlbWVpbjpSdWRpcmF0dGVyXSByeCwgaWNoIGhhYiBkb2NoIGtldWluZSBwaWNrZWwKW0FsbGdlbWVpbjpab3Jyb10gSHVodQpbQWxsZ2VtZWluOkJpZ2Zvb3QgaGF0IGVycyBtYWwgcHJvYmllcnQ/XQpbQWxsZ2VtZWluOkd1bGR1a2F0XSBoZXlhIGJsYXV3ZWlzc2VyIFJlaXRlcgpbQWxsZ2VtZWluOkZhbnRhYm95XSBodWh1IHpvcnJvLCBhbHRlciBwb255cmVpdGVyCltBbGxnZW1laW46R29MdU1dIGhpIFpvcnJvCltBbGxnZW1laW46SHVlcGZlcl0gaHVodSB6b3JybwpbQWxsZ2VtZWluOkVuZ3l3dWNrXSBBbHNvIGljaCB3dWVyZCBDdW5uaWxpbmd1cyBlbXBmZWhsZW4uLi4KW0FsbGdlbWVpbjpBbGluZV0gTWFobHplaXQKW0FsbGdlbWVpbjpHb0x1TV0gaGkgQWxpbmUKQWxpbmUgcnVmdDogUlVVVVVVVURERERERERESUlJSUlJSQpbQWxsZ2VtZWluOlpvcnJvXSBmYW50YSBiZXJlaXQgenVtIHF1ZXN0ZW4KW0FsbGdlbWVpbjpSeHRlY2hdIGRpZSBudSB3aWVkZXIgOigoCltBbGxnZW1laW46RmFudGFib3ldIGphIGJlaSBkZWluZXIgbGFuZ2VuIHp1bmdlIGVuZ3kKW0FsbGdlbWVpbjpSdWRpcmF0dGVyIGdyaW5zdC5dCltBbGxnZW1laW46QWxpbmVdIEloaGhoaCBkZXIgbWl0IGRlciBCbGFzZW5zY2h3YWVjaGUKW0FsbGdlbWVpbjpGYW50YWJveV0gbm9lCltBbGxnZW1laW46RW5neXd1Y2tdIERvY2ggbmljaHQgSUNIIG1pdCBSdWRpISAqc2NodWV0dGVsKgpbQWxsZ2VtZWluOkhhcl0gSWNoIHd1ZXJkZSBzYWdlbiBlaW5lIEhhZW1nZW1hdHRlLCBxdWVyIHJlaW5sZWdlbiB1bmQgZGllCltBbGxnZW1laW46SGFyXSBiZWluZSBtaXQgendlaSBzZWlsZW4gYW5nZXdpbmtlbHQgYW4gZGVyIERlY2tlIGhvY2hiaW5kZW4sCltBbGxnZW1laW46SGFyXSBkYW5uIG11ZXNzdGUgbWFuIHJhbmtvbW1lbiBrb2VubmVuLCBSdWRpIDopCltBbGxnZW1laW46QWxpbmUgZ3JpbnN0IFJ4dGVjaCBhbl0KW0FsbGdlbWVpbjpSeHRlY2hdIHdpZXNvIHNjaHdhZWNoZSwgd2FyIGRpciB6dSB3ZW5pZyBkcnVjayBkYWhnaW50ZXI/CltBbGxnZW1laW46UGFyYWNlbHN1c10gSXMgamEgcmljaHRpZyB2b2xsIGluIEJvY2h1bQpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXIgc2NocmVpdCB2b3J0IExhY2hlbi5dCltBbGxnZW1laW46UnVkaXJhdHRlcl0gaGFyLCBpc3QgZG9jIG5peCBtaXQgYW53aW5rZWxuIGJlaSBtaXIKW0FsbGdlbWVpbjpSdWRpcmF0dGVyXSBnZWh0IGRvY2ggbmNpaHQKW0FsbGdlbWVpbjpIYXJdIGdlc3RyZWNrZSBob2NoYmluZGVuPwpbQWxsZ2VtZWluOlJ4dGVjaF0gZGFubiByb2xsIGRpY2ggYXVmIGRpZSBzZWl0ZSB1bmQKW0FsbGdlbWVpbjpIYXJdIG9kZXIgU2VpdGVubGFnZSEKW0FsbGdlbWVpbjpSeHRlY2hdIGJyYXVjaCBkZXIgc2l6IGF1Y2ggbmljaCBiZWkgenUgbGFlY2hlbG4KW0FsbGdlbWVpbjpFbmd5d3Vja10gQW5nZWJsaWNoIGtvZW5uZW4gYXVjaCBkaWUgT2hybGFlcHBjaGVuIHNvIHN0aW11bGllcnQKW0FsbGdlbWVpbjpFbmd5d3Vja10gd2VyZGVuLCBkYXNzIGVzIHp1IGVpbmVtIE9yZ2FzbXVzIHJlaWNodC4uLgpbQWxsZ2VtZWluOkJvQm9dIG1vaW4gbW9pbgpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXJdIGhtLCBkYW5uIGthbm5zdGUgZGlyIGdsZWljaCBuZSBwdXBwZSBuZWhtZW4sIGRpZSBzaWNoCltBbGxnZW1laW46UnVkaXJhdHRlcl0gbmNpaHQgYmV3ZWd0CltBbGxnZW1laW46R29MdU1dIGhtIHRob3Jzb24gdW5kIEFiYmEgc2luZCBqZXR6dCBzY2hvbiBmYXN0IDE0IEggTmV0enRvdCBpbgpbQWxsZ2VtZWluOkdvTHVNXSBkZXIgR2lsZGUgIT8/PwpbQWxsZ2VtZWluOkhhcl0gQmFjdWxhZ2UgbWl0IGVpbmVtIEtpc3NlbiBkcnVudGVyIHNvIGRhc3MgbWFuIHNpY2ggYmVzc2VyIGRlbQpbQWxsZ2VtZWluOkhhcl0gUGFydG5lciBkYXJiaWV0ZW4ga2Fubj8KUnVkaXJhdHRlciBydWZ0OiBCT09PT09PT09CT09PT09PTwpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXJdIGljaCBrYW5uIG5pY2h0IGF1ZiBkZXIgc2VpdGUgbGllZ2VuCltBbGxnZW1laW46R29MdU1dIGhtIHRob3Jzb24gdW5kIEFiYmEgc2luZCBqZXR6dCBzY2hvbiBmYXN0IDE0IEggTmV0enRvdCBpbgpbQWxsZ2VtZWluOkdvTHVNXSBkZXIgR2lsZGUgIT8/PwpbQWxsZ2VtZWluOkhhcl0gSWNoIG1laW50ZSBCYWN1aGxhZ2UKW0FsbGdlbWVpbjpCb0JvXSBodWNoPyB3ZXIga2l0emVsdCBtaWNoIGRhPwpbQWxsZ2VtZWluOkFsaW5lXSBTYWcgbWFsIEVuZ3kgZGFyZiBtYW4gc293YXMgdWViZXJoYXVwdCBub2NoIHdlbm4gbWFuCltBbGxnZW1laW46QWxpbmVdIHNjaHdhbmdlciBpc3Q/CltBbGxnZW1laW46UnVkaXJhdHRlciBrbnV0c2NodCBCb0JvIGFiLl0KW0FsbGdlbWVpbjpFbmd5d3Vja10gSG0uLi5NYXN0dXJiYXRpb24/IE9kZXIgc2luZCBkaWUgRmluZ2VyIGF1Y2ggZWluZ2VnaWJzdD8KQm9ibyBydWZ0OiBSUlJSUlJSUlVVVVVVVURESUlJSUlJSUkhCltBbGxnZW1laW46QWxib2luIGxhY2h0IHVlYmVyIEVuZ3ldCltBbGxnZW1laW46UnVkaXJhdHRlcl0gZXMgZ2luZyB1bSBzdGVsbHVuZ2VuLCBuaWNodCB1bXMgYXVzd2VpY2hlbgpbQWxsZ2VtZWluOlJvYWRydW5uZXJdIHdlciBoYXQgZGFzIGxhZyBiZXN0ZWxsdApbQWxsZ2VtZWluOkFsaW5lXSBTYWcgbWFsIFJ4LCBrcmllZyBpY2ggd2llZGVyIHNvIGVpbmUgc2Nob2VuZW4gS251ZGRsZXI/CltBbGxnZW1laW46Qm9CbyBodWVwZnQgbWl0IEhlaWxnZXNhZW5nZW4gd2llIGVpbiBNZWRpemlubWFubiBiZXRvZXJlbmQgdW0KUnVkaSBoZXJ1bV0KW0FsbGdlbWVpbjpJbmVsdWtpXSB3ZWxjaGVzIGxhZz8KW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIEFlaCwgaWNoIGZpbmRlLCBkYXMgZGllc2UgaG9jaGdlaXN0aWdlIEtudmVyc2F0aW9uCltBbGxnZW1laW46Q2F0d2VhemxlXSBtaXRnZWxvZ2d0IHdlcmRlbiBzb2xsdGUgOikKW0FsbGdlbWVpbjpFbmd5d3Vja10gV2llIGJyZWl0IGtyaWVnc3QgRHUgZGllIEJlaW5lIGRlbm4/CltBbGxnZW1laW46UnVkaXJhdHRlciBncmluc3QuXQpbQWxsZ2VtZWluOkdvTHVNIGdyaW5zdCBDYXR3ZWF6bGUgYW5dCi1hJ2ljaCBMT0dHRSBkaWVzZSBob2NoZ2Vpc3RpZ2Uga29udmVyc2F0aW9uIGJlcmVpdHMgbWl0LgpbQWxsZ2VtZWluOlJvY2h1c10gaWNoIExPR0dFIGRpZXNlIGhvY2hnZWlzdGlnZSBrb252ZXJzYXRpb24gYmVyZWl0cyBtaXQuCltBbGxnZW1laW46Q2FyYW1vbl0gd2Vpc3MgamVtYW5kIHZvbiBldWNoLCB3byBtYW4gcGl0c2NoIGZpbmRldCAoYXVmIHRpdGl3dSk/CltBbGxnZW1laW46UnVkaXJhdHRlciBlcnJvZXRldC5dCltBbGxnZW1laW46UnVkaXJhdHRlciB3ZWlzcyBnYXIgbmljaHQsIHdpZSBzbyB3YXMgZHJlZGtpZ2VzIGdlaHQuXQpbQWxsZ2VtZWluOlNpbHZhbmEgZW1wZmllbHQgZWluZSBHaXBzc2FlZ2UuXQpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXIgemllaHQgaWhyIEJ1ZXNzZXJoZW1kIGFuLl0KW0FsbGdlbWVpbjpSeHRlY2hdIGhhYiBpY2ggd2FzIHZlcnBhc3N0PyB3YXIgZ3JhZCB3ZWcKW0FsbGdlbWVpbjpFbmd5d3Vja10gU08gZWluZXIgaXMgUm9jaHVzIGFsc28uLi4KW0FsbGdlbWVpbjpSdWRpcmF0dGVyIGJldGV0IGVpbiBBdmUgTWFyaWEuXQpbQWxsZ2VtZWluOkFsaW5lXSBTY2hsaW1tZXIgYWxzIGRpZSBVbnRlcmhhbHR1bmcgdWViZXIgU2Nod2FuZ2Vyc2NoYWZ0ZW4ga2FubgpbQWxsZ2VtZWluOkFsaW5lXSBlcyBuaWNodCB3ZXJkZW4KW0FsbGdlbWVpbjpHdWxkdWthdF0gdmllbGxlaWNodCBzb2xsdGUgcnVkaSBqZXR6dCB3aXJrbGljaCBpbnMga2xvc3RlciBnZWhlbgpbQWxsZ2VtZWluOkdvTHVNXSBtZWluc3QgRHUgLi4gPwpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXJdIElDSCBVTkQgS0xPU1RFUgpbQWxsZ2VtZWluOkJvQm8gd2lyZCBSdWRpIG9obmUgZWluZSBlaW56aWdlIEJlcnVlaHJ1bmcgaW4gZWluZW4gYW5nZW5laG1lbgpUcmFuY2V6dXN0YW5kIHZlcnNldHplbi4uLl0KW0FsbGdlbWVpbjpSdWRpcmF0dGVyIHNjaHJlaXQgbGF1dC5dCkdvdk1hcmxleSBydWZ0OiBydXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVkaQpbQWxsZ2VtZWluOkJpZ2Zvb3QgZGFzIGthbm4gbWFuIGtlaW5lbSBLbG9zdGVyIGFudHVuXQpbQWxsZ2VtZWluOkd1bGR1a2F0XSBuaWNrZSBydWRpcmF0dGVyIHp1LCBkYSB3aXJzdCBkdSB3ZW5pZ3N0ZW5zIGVyem9nZW4gOykKW0FsbGdlbWVpbjpSeHRlY2hdIHdlbm4gZHUgZGEgYmllciBicmF1c3QgcnVkaSwgYmVzdWNoIGljaCBkaWNoClJ1ZGlyYXR0ZXIgcnVmdDogR1VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVWQpbQWxsZ2VtZWluOkFsaW5lXSBXaWVzbyBLbG9zdGVyIGljaCBkZW5rZSBkaWUga29tbXQgZXJzdCBnZXJhZGUgYXVzIGRlbQpbQWxsZ2VtZWluOkFsaW5lXSBLcmFua2VuaGF1cz8KW0FsbGdlbWVpbjpGYW50YWJveV0gbmEgZGFubiByZWljaHQgdmllbGxlaWNodCBuZSBrYWx0ZSBkdXNjaGUKW0FsbGdlbWVpbjpSdWRpcmF0dGVyXSBqYSwgbmFodGxvcyB2b20ga3JraCBpbnMga2xvc3RlcgpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXJdIGRhIGxpZWZlbiBqYSBlaCBudXIgc2Nod2VzdGVybiBydW0KW0FsbGdlbWVpbjpSdWRpcmF0dGVyXSB1bmQgZWluIGdlaWxlciBhcnp0CltBbGxnZW1laW46Qm9Cb10ga2xhciBydWRpLCB3YWVyIGRhcyBuaXggZnVlciBEaWNoPyBJbSBLbG9zdGVyIE1vZW5jaGUgYmFkZW4KW0FsbGdlbWVpbjpCb0JvXSBnZWhlbj8KW0FsbGdlbWVpbjpHb3ZNYXJsZXldIGljaCBnZWggbWl0Li46KQpbQWxsZ2VtZWluOkFsaW5lXSBVaWlpIGRlbiBoYWIgaWNoIHZlcnBhc3N0CltBbGxnZW1laW46UnVkaXJhdHRlcl0gb2hqYQpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXJdIG1pdCBnZWlsZW4ga3V0dGVuCltBbGxnZW1laW46QWxib2luXSB3YXMgaXN0IG51biB1ZWJlcmhhdXB0IHBhc3NpZXJ0IFJ1ZGk/d2Fyc3QgZHUgaW0ga2xvc3RlcgpbQWxsZ2VtZWluOkFsYm9pbl0gdW5kIGhhc3QgZGljaCBtaXQgZGVtIGFidCBnZWJhbGd0PwpbQWxsZ2VtZWluOkdvdk1hcmxleSB3aXJkIE5vbm5lLl0KW0FsbGdlbWVpbjpSdWRpcmF0dGVyXSBicnVlZGVyLCBtYW4gcnVmdCB1bnMKW0FsbGdlbWVpbjpSeHRlY2hdIGRlciBhcnp0IHdhciBzbyBnZWlsLCBkZXIgaGF0IHNvZ2FyIG1pY2ggYW5nZWdyYWJlbiA6KSkKW0FsbGdlbWVpbjpSdWRpcmF0dGVyXSBkdSBsdWVnc3QKR3V5YnJ1c2ggcnVmdDogUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSdWRpISEhISEhISEhMQpSdWRpcmF0dGVyIHJ1ZnQ6IEdVVVVVVVVVVVVVWUdVVVVVVVVVVVVVVVkKW0FsbGdlbWVpbjpBbGluZV0gSWhoaCBkYW5uIHdhciBkZXIgTm90Z2VpbCwgd2VubiBkZXIgc2ljaCBzb2dhciBhbiBSeApbQWxsZ2VtZWluOkFsaW5lXSByYW5nZXRyYXV0IGhhdApbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXJdIGRlciBhcnp0IGhhdHRlIGllbmVuIGdlaWxlbiBncm9zc2VuIHRhbm5lbnphcGZlbgpbQWxsZ2VtZWluOlJ4dGVjaF0gdW5kIHdhciBlaWdlbnRsaWNoIGVpbiB3YWxkbWVpc3RlcgpbQWxsZ2VtZWluOkd1eWJydXNoXSBpY2ggc2l0emUgaGllciBhbGxlaW4sIG1pdCBtZWluZW0gZ3Jvc3NlbiBnZWlsZW4KW0FsbGdlbWVpbjpHdXlicnVzaF0gVGFubmVuemFwZmVuLi4uLgpbQWxsZ2VtZWluOkVuZ3l3dWNrXSBSdWRpLCBSb2NodXMgbG9nZ3QgbWl0Li4uCltBbGxnZW1laW46UnVkaXJhdHRlcl0gZWJlbgpbQWxsZ2VtZWluOkFsaW5lIGhhdXQgR3V5YnJ1c2ggZWluZSBydW50ZXJdCltBbGxnZW1laW46UnVkaXJhdHRlcl0gaWNoIHNpdHplIGhpZXIgbWl0IGVpbmVtIGdlaWxlbiBncm9zc2VuIHRhbm5lbnphcGZlbiwKW0FsbGdlbWVpbjpSdWRpcmF0dGVyXSB1bmQgd2Vpc3N0IGR1LCB3YXMgaWNoIGdsZWljaCBkYW1pdCBtYWNoZQpbQWxsZ2VtZWluOkFsaW5lIGhhdXQgR3V5YnJ1c2ggZWluZSBydW50ZXJdCltBbGxnZW1laW46UnVkaXJhdHRlcl0gaWNoIHNpdHplIGhpZXIgbWl0IGVpbmVtIGdlaWxlbiBncm9zc2VuIHRhbm5lbnphcGZlbiwKW0FsbGdlbWVpbjpSdWRpcmF0dGVyXSB1bmQgd2Vpc3N0IGR1LCB3YXMgaWNoIGdsZWljaCBkYW1pdCBtYWNoZQpbQWxsZ2VtZWluOkd1eWJydXNoXSBnbGVpY2ggbmltbSBpY2ggbWVpbmVuIGdyb3NzZW4gZ2VsaWVuIFRhbm5lbnphcGZlbgpbQWxsZ2VtZWluOkVuZ3l3dWNrXSBJY2ggaGFiIGdlaG9lcnQsIGRhc3MgTWFpc2tvbGJlbiBkYSBzZWhyIGVmZmVrdGl2IHNlaW4KW0FsbGdlbWVpbjpFbmd5d3Vja10gc29sbGVuLi4uCltBbGxnZW1laW46Unh0ZWNoXSBzY2hpY2sgaWhuIGFsaW5lIG1pdCBkZXIgcG9zdCwgZ3V5CltBbGxnZW1laW46U2lsdmFuYV0gSWhuIGF1ZnMgRmVuc3RlcmJyZXR0IHN0ZWxsZW4sIFJ1ZGk/IDspCltBbGxnZW1laW46UnVkaXJhdHRlcl0gdW5kIHNwcnVkZWxmbGFzY2hlbiBtaXQgbm9wcGVuCltBbGxnZW1laW46RW5neXd1Y2tdIE9oLCBkYXNzIG11c3MgaXhjaCBtYWwgYXVzcHJvYmllcmVuLi4uCltBbGxnZW1laW46QWxpbmVdIFdpZXNvIFJ4LCBtZWluc3RlIEd1eSB3ZWlzcyBlaCBuaXggbWl0IGFuenVmYW5nZT8KW0FsbGdlbWVpbjpSdWRpcmF0dGVyXSBkYSBtdXNzIG1hbiBzaWNoIG51ciB2b3IgZGVtIHZha3V1bSBodWV0ZW4KW0FsbGdlbWVpbjpHb3ZNYXJsZXldIHVuZCB3ZXJmIGlobiBpbnMgS2FtaW5mZXVlcgpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXJdIG9kZXIgZGVuIGtyYXR6aWdlbiB2ZXJzY2hsdXNzIGRyYXVmbGFzc2VuCltBbGxnZW1laW46R3V5YnJ1c2hdIGFyZ2wKW0FsbGdlbWVpbjpSeHRlY2hdIG5vZSwgYWJlciBkdSBzY2hlaW5zdCBqYSBzY2hhcmYgZHJhdWYgenUgc2VpbgpbQWxsZ2VtZWluOkVuZ3l3dWNrXSBPZGVyIGFtIGFuZGVybiBlbmRlIGVpbiBMb2NoIHJlaW5zY2hsYWdlbj8KW0FsbGdlbWVpbjpEd2lnaHRdIEhvbGxhIDopCltBbGxnZW1laW46QWxpbmVdIE51ciB3ZWlsIER1IGVpbmVuIEtyb2Igdm9uIG1pciBrcmllZ3N0LCBicmF1Y2hzdGUgbmljaHQKW0FsbGdlbWVpbjpBbGluZV0gbmVpZGlzY2ggenUgc2VpbiwgUnghCltBbGxnZW1laW46UnVkaXJhdHRlcl0gUlggTklNTSBNSUNICltBbGxnZW1laW46Unh0ZWNoIHdpbGwgYXVjaCBuZW4gS3JvYl0KW0FsbGdlbWVpbjpTaWx2YW5hXSBTZWt0Zmxhc2NoZW4gc29sbGVuIGF1Y2ggYmVsaWVidCBzZWluIC0gbW9lZ2xpY2hzdCBPSE5FCltBbGxnZW1laW46U2lsdmFuYV0gSW5oYWx0Li4uCltBbGxnZW1laW46Qm9Cb10gZWluZW4gS29yYj8gVm9sbCBCbHVldGVuPyBBdWZndXNzPwpbQWxsZ2VtZWluOlJ4dGVjaF0gYWVoIHJ1ZGkgYWxzbyBkYXMgaXMgc28sIGR1IHdlaXNzdCBkb2NoIGFlaCwgZGllCltBbGxnZW1laW46Unh0ZWNoXSBhdXNzY2hhZWx1bmcKW0FsbGdlbWVpbjpBbGluZV0gSG1tbSBtYW5jaG1hbCBoYWIgaWNoIGJlaSBSeCBkZW4gRWluZHJ1Y2sgYWxzIGhhZXR0ZW4gc2llCltBbGxnZW1laW46QWxpbmVdIGRlbiBLb3BmIGF1c2dlc2NoYWVsdDspCltBbGxnZW1laW46QWxib2luXSBhbHNvIHVucyBoYXQgbWFsIGRpZSBCaW9sZWhyZXJpbiBlcnphZWhsdCBkYXMgbmUgRnJhdSB6dW0KW0FsbGdlbWVpbjpBbGJvaW5dIEZyYXVlbmFyenQga2FtIG1pdCBuZXIgR2x1ZWhiaXJuZSBkcmlubi1uaWNodCBuZSBrbGVpbmUKW0FsbGdlbWVpbjpBbGJvaW5dIHNvbmRlcm4gbmUgcmljaHRpZ2UgZ3Jvc3NlICgxMDAgVykKW0FsbGdlbWVpbjpSeHRlY2hdIGhleSwgbWVpbiBrb3BmIGlzdCBtZWluIHp3ZWl0bGllYnN0ZXMga29lcnBlcnRlaWwKW0FsbGdlbWVpbjpFbmd5d3Vja10gTGV1Y2h0ZW5kPwpbQWxsZ2VtZWluOlJ1ZGlyYXR0ZXIgc3VlaG50IGFsbGUgU3VlbmRlbiB1bmQgbWFnIGpldHp0IGtlaW5lbiBTY2h3ZWluZWtyYW0KbWVoci5dCltBbGxnZW1laW46R29MdU1dIG5hamEgc2NobGltbWVyIGlzdCBuZSBTZWt0Zmxhc2NoZSBkaWUgZWluIFZha3V1bSBnZWJpbGRldApbQWxsZ2VtZWluOkdvTHVNXSBoYXQgOykpCltBbGxnZW1laW46Unh0ZWNoXSBydWRpIGlzcyBrcmFuaywgcnggbWFjaHQgc2ljaCBzb3JnZW4KW0FsbGdlbWVpbjpFbmd5d3Vja10gS2VpbmUgU3BydWRlbGZsYXNjaGVuIG1laHI/CltBbGxnZW1laW46U2lsdmFuYSBnbGF1YnQgUnVkaSBrZWluIFdvcnQuXQpbQWxsZ2VtZWluOkdvdk1hcmxleV0gU2lsdmFuYSwgd2FzIGlzIGRlbm4gZGFzIGZ1ZXIgZWluIGJsb2VkZXMgUmFldHNlbCBoaWVyPwpbQWxsZ2VtZWluOkdvTHVNXSBkaWUgbXVzc3RlIG1hbiBkYW5uIG5hZW1saWNoIHplcnNjaGxhZ2VuIC4uLiB1bmQgZGFzIGlzdApbQWxsZ2VtZWluOkdvTHVNXSBzZWhyIHNlaHIgZ2VmYWVocmxpY2gKW0FsbGdlbWVpbjpSdWRpcmF0dGVyIGdlaHQgamV0enQgd2llZGU0ciBpbnMgQmV0dC5dCltBbGxnZW1laW46UnVkaXJhdHRlcl0gdHNjaHVlc3MKW0FsbGdlbWVpbjpIYXJdIFR1ZXNzIQpbQWxsZ2VtZWluOlJ4dGVjaF0gamFqYSBydWRpLCBpY2gga29tbSBqYSBzY2hvbgpbQWxsZ2VtZWluOkd1eWJydXNoXSBzY2hsYWYgaHV0IDopCltBbGxnZW1laW46RWxCeXRlXSBieWUgUnVkaQpbQWxsZ2VtZWluOkd1eWJydXNoXSBhZWggZ3V0CltBbGxnZW1laW46UGFyYWNlbHN1c10gVHNjaG9lIFJ1ZGkKW0FsbGdlbWVpbjpHb0x1TV0gdHNjaHVlc3NsaWUgcnVkaQpya251ZGRlbCBydWRpcmF0dGVyCkR1IGtudWRkZWxzdCBSdWRpcmF0dGVyIGF1cyBkZXIgRmVybmUuClJ1ZGlyYXR0ZXIgd2lua3QgRGlyIHp1bSBBYnNjaGllZCBhdXMgZGVyIEZlcm5lIHp1LgpbQWxsZ2VtZWluOkFsYm9pbl0gdW5kIGtvbW10IGpldHp0IGFsbGVzIGF1ZiBzY2htYXJybiAsUm9jaHVzPwp0ZWlsZSBydWRpcmF0dGVyIG1pdCB3YXMgZGFnZWdlbiB3ZW5uIGRhcyBhbHMgYXJ0aWtlbCBpbiBzY2htYXJybiBlcnNjaGVpbnQ/CkR1IHRlaWxzdCBSdWRpcmF0dGVyIG1pdDogd2FzIGRhZ2VnZW4gd2VubiBkYXMgYWxzIGFydGlrZWwgaW4gc2NobWFycm4KRHUgdGVpbHN0IFJ1ZGlyYXR0ZXIgbWl0OiBlcnNjaGVpbnQ/ClJ1ZGlyYXR0ZXIgdGVpbHQgRGlyIG1pdDogbm9lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgTWFnaWVyaW5uZW4gbmljaHQgc28gYWxsZXMgdHVuIHVuZCBsYXNzZW4gLi4uIChEdXJpYW4sIDEwLiBBdWcgMTk5NSwgMTg6Mzc6MzEpOgpIaSEKCkdlcmFkZSBlYmVuIGVybGVidCwgb2huZSBLb21tZW50YXI6CgpTaWx2YW5hIG1hY2h0IGVpbiBwYWFyIGJlc2Nod29lcmVuZGUgR2VzdGVuIHVlYmVyIGRlbSBMZWRlcnRhbmdhLgpEZXIgTGVkZXJ0YW5nYSBibGl0enQga3VyeiBhdWYuCgpzb3dhcyAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZXIgd2FzIHdvbz8gKE11cGZlbCwgMTAuIEF1ZyAxOTk1LCAyMjoxMjozNyk6CiMhIHJuPUN1Y2h1bGxpbiBydD04MDgwMTU1MDIKbmFqYSB3ZW5uIGVyIHVuc2ljaHRiYXIgaXN0IGthbm5zdCBkdSBpaG4gbmljaHQgc2VoZW4uLi4Kd28gaXN0IGRhcyBwcm9ibGVtPwo6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpIHZlcmJpYmJzY2ggKENhcmFkaHJhcywgMTAuIEF1ZyAxOTk1LCAyMzo0MToxNSk6CiAgICAgICAgICAgICAgICAgIEh1aHUKCkdyYWRlIG9lc3RsaWNoIHZvbSBXYXNzZXJlbGVtZW5hciBpbiBkZXIgV2Fzc2VyZWJlbmU6Cgo+bwpMYWJ5cmludGguCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4gdW5kIHdlc3Rlbi4KRWluIFN0YWhsc2NobHVlc3NlbC4KRWluZSBnb2xkZW5lIFNjaHVwcGUuCkVpbiByb2V0bGljaGVyIFJpbmcuCkRlciBTdGFiIGRlcyBFaXNlcy4KRWluIFBlbHpiZXV0ZWwuCkRhcyBBbXVsZXR0IGRlciBTdGVpbmJlaXNzZXIuCkVpbiBTY2hsZWltYmV1dGVsLgpFaW4gQnVlZmZlbGZlbGwuCkVpbiBTY2h3ZXJ0LgpFaW5lIERpZGRsLUtudWRkZWwtTWF1cy4KRWluIFJpbmcgZGVyIEF1c2RhdWVyICgrMikuCkVpbmUgTGVkZXJob3NlLgpFaW5lIEtyaXN0YWxsa3JvbmUuCkVpbiBQYWFyIGJsYW5rcG9saWVydGVyIFN0aWVmZWwuCkVpbiBQYWFyIHNpbGJlcm5lIEhhbmRzY2h1aGUuCkVpbiBTY2hsZWltYmV1dGVsLgpFaW4gQnVtZXJhbmcuCkVpbiBQYWFyIExlZGVybW9rYXNzaW5zLgpFaW4gTGljaHRoZWxtLgpFaW4gZ2VsYmVzIFBvc3RwYWtldCAoZ2VvZWZmbmV0KS4KRWluZSBrbGVpbmUgRmxhc2NoZS4KRWluIEhvcm5wYW56ZXIuCkVpbiBQZWx6YmV1dGVsLgpFaW5lIFNjaGF1ZmVsLgpFaW5lIFdpbGRlcmVyaG9zZS4KRWluZSBTY2hsYW5nZW5oYXV0LgpEYXMgQmx1dHNhdWdlci1TY2h3ZXJ0LgpEYXMgQW11bGV0dCBkZXIgU3RlaW5iZWlzc2VyLgpFaW4gUGFhciBHdW1taXN0aWVmZWwuCkVpbiBCdW1lcmFuZy4KRWluIEJ1bWVyYW5nLgpFaW5lIEtyaXN0YWxsa3JvbmUuCkRlciBTdGFiIGRlcyBFaXNlcy4KRWluIHdlaXNzZXIgS3Jpc3RhbGwuCkVpbiByb3RlciBLcmlzdGFsbC4KRGVyIFN0YWIgZGVzIEVpc2VzLgpEZXIgVW1oYW5nIGRlcyBUb2Rlcy4KRWluIFNjaGxlaW1iZXV0ZWwuCkVpbiBTY2hsZWltYmV1dGVsLgpFaW4gU2FiYmVyYW11bGV0dC4KRWluIEVpc3Bhbnplci4KRGFzIEJsdXRzYXVnZXItU2Nod2VydC4KRWluZSBTY2hhdWZlbC4KRWluIFphdWJlcnN0YWIuCkVpbmUgbWFnaXNjaGUgS3VnZWwuCjU4NTggTXVlbnplbi4KRWluIEVpc3NjaHdlcnQuCkVpbiBsZWljaHRlcyBLZXR0ZW5oZW1kLgpFaW5lIFNlbnNlLgpFaW4gYWx0ZXMgQmxlY2guCkVpbiBhbHRlcyBCbGVjaC4KRWluIEVpc3phcGZlbi4KRWluIEVpc3phcGZlbi4KRWluIERpYW1hbnQuCkVpbmUgTGVkZXJydWVzdHVuZy4KRWluZSBMZWRlcnJ1ZXN0dW5nLgpFaW4gcm9zdGZyZWllcyBNZXRhbGxzY2hpbGQuCkVpbiBNaXRocmlscGFuemVyLgpFaW4gcm9zdGZyZWllcyBNZXRhbGxzY2hpbGQuCkVpbiByb3N0ZnJlaWVzIE1ldGFsbHNjaGlsZC4KRWluIE1pdGhyaWxwYW56ZXIuCkVpbiBFaXN6YXBmZW4uCkVpbiBFaXNzY2h3ZXJ0LgpFaW4gVGl0YW5yaW5nLgpFaW5lIExlZGVycnVlc3R1bmcuCkVpbiBTdGFobGdld2ViZWZsdWdwYW56ZXIuCkVpbiBhbHRlcyBCbGVjaC4KCnN1ZWRsaWNoIGRhdm9uOgpFaW4gQnVsbHl3dWcuCkVpbiBCdWxseXd1Zy4KRWluIEJ1bGx5d3VnLgpFaW4gRWlzc2Nod2VydC4KRWluIE1pdGhyaWxwYW56ZXIuCkVpbiBNaXRocmlscGFuemVyLgpFaW4gRGlhbWFudC4KRWluIHJvc3RmcmVpZXMgTWV0YWxsc2NoaWxkLgpFaW4gcm9zdGZyZWllcyBNZXRhbGxzY2hpbGQuCkVpbiByb3N0ZnJlaWVzIE1ldGFsbHNjaGlsZC4KRWluIE1pdGhyaWxwYW56ZXIuCgppbSBuYWVjaHN0ZW4gUmF1bToKTGFieXJpbnRoLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuIHVuZCBvc3Rlbi4KRGVyIFVtaGFuZyBkZXMgVG9kZXMuCkVpbmUgU2Vuc2UuCkVpbiBMaWNodGhlbG0uCkVpbiBMaWNodHBhbnplci4KRWluIFRpdGFucmluZy4KRWluIFNjaGxlaW1iZXV0ZWwuCkVpbiBFaXNhbXVsZXR0LgpEZXIgVW1oYW5nIGRlcyBUb2Rlcy4KRWluIFBhYXIgR3VtbWlzdGllZmVsLgpFaW5lIFNlbnNlLgpFaW5lIE9ya2hvc2UuCkVpbmUgU2NoYXVmZWwuCgp1bmQgZGFuZWJlbjoKTGFieXJpbnRoLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogbm9yZGVuIHVuZCBvYmVuLgpFaW4gTGVmdHkgd2lyZCBhZWx0ZXIuCkVpbiBLYW1wZnN0YWIuCkVpbiBNYXRoZW1hdGlrYnVjaC4KRWluZSBVbmlmb3JtLgpFaW5lIFVuaWZvcm0uCkVpbmUgVW5pZm9ybS4KRWluIFBhYXIgYmxhbmtwb2xpZXJ0ZXIgU3RpZWZlbC4KRWluIFBhYXIgYmxhbmtwb2xpZXJ0ZXIgU3RpZWZlbC4KRWluIEtyaWVnc2ZsZWdlbC4KRWluIEtyaWVnc2ZsZWdlbC4KRWluIEtyaWVnc2ZsZWdlbC4KRWluIEVpc3NjaHdlcnQuCkVpbiBPcmtoZWxtLgpFaW4gTGVkZXJoZWxtLgpFaW4gS3J1bW1zY2h3ZXJ0LgpFaW5lIFNlbnNlLgpEZXIgVW1oYW5nIGRlcyBUb2Rlcy4KRWluIHNjaHdhcnplciBTYWViZWwuCgoKICAgICAgICAgICBPaG5lIFdvcnRlIDopCgogICAgICAgICAgICAgICAgICAgICAgIENhcmFkaHJhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmFtb3VzIGxhc3Qgd29yZHMgKEphZiwgMTEuIEF1ZyAxOTk1LCAwNDoxOTo0Mik6Cj4gW0FsbGdlbWVpbjpSZW5uZXJdIEhtbSBtaXQgc2NobGFmZSBlaW4gdWViZXJsZWJ0IG1hbiBkaWUga2FlbXBmZSB1bmQgaGF0CnNlaWUKW0FsbGdlbWVpbjpSZW5uZXJdIHJ1ZXN0dW5nIHp1cnVlY2sKW1RvZDpdIEVpbiBXYWVjaHRlciBoYXQgZ2VyYWRlIFJlbm5lciB1bWdlYnJhY2h0LgpFaW4gU2Vzc2VsbGlmdCBzZW5rdCBzaWNoIGhlcmFiLgpbQmVpbGVpZDpHb2x1bWVpbnNdIEJlaWxlaWQgUmVubmVybGVpbgpbQWxsZ2VtZWluOkNyb2xsYV0gaG1tbW0sIG9kZXIgYXVjaCBuaWNodC4uLgpbQmVpbGVpZDpDcm9sbGFdIEJlaWxlaWQKQXVmIGRlbSBTZXNzZWxsaWZ0LgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgo+IFtBbGxnZW1laW46QmFtYmVsXSAqcHJ1dXV1dXV1dXV1dXV1dXN0KgpEZXIgU2Vzc2VsbGlmdCBlbnRmZXJudCBzaWNoIHZvbSBCb2RlbiB1bmQgc2V0enQgc2VpbmVuIFdlZyBmb3J0LgpEZXIgTGlmdCBzZXR6dCBzaWNoIG1pdCBrcmFjaGVuZGVuIEdlcmFldXNjaGVuIGluIEJld2VndW5nLgpbQmVpbGVpZDpUYXVydXNdICp0cm9zdGtudWRkZWwqCltBbGxnZW1laW46QXNtb2RpbmFdIGhtbSwgaWNoIHZlcnN1Y2hzIGRhdWVybmQgbWl0ICdzdWNoZScgYmxvZWRlIHN5bnRheAoKT2huZSBXb3J0ZS4KCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBtYW4gYWxzIEZyYXUgaGllciBzbyBlcmxlYnQ6KSAoQWxpbmUsIDExLiBBdWcgMTk5NSwgMTc6MzM6NDkpOgpOZXVsaWNoIGhpZXIgaW0gTXVkCgpSaWtlciB0ZWlsdCBEaXIgbWl0OiBLTEVJTkUgTUFVUyBJQ0ggRklORCBESUNIIERBTk4gQVVGIERFUiBEQVRFTkFVVE9CQUhOClJpa2VyIHRlaWx0IERpciBtaXQ6IEtMRUlORSBNQVVTIE5VUiBESUNIIFVORCBEVSBCRUlNIERJR0lUQUxFTiBSRU5ERVZPVVogCihjKQpSaWtlciB0ZWlsdCBEaXIgbWl0OiBieSBEQVMgTU9EVUwKRGljaCBmcm9lc3RlbHQuLi4KCkFsaW5lIChmaW5kZXQgZGFzICJEaWNoIGZyb2VzdGVsdC4uLi4iIHNlaHIgcGFzc2VuZCB2b24gZGVyIFF1ZXN0dW1nZWJ1bmcKZGF6dWdlc2V0enQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUlVVVVVVVVVVRElJSUlJSUlJSUkhIChSdWRpcmF0dGVyLCAxMS4gQXVnIDE5OTUsIDE4OjExOjQ4KToKIyEgcm49Um9jaHVzIHJ0PTgwODA1NTUwMwpPaGplLCBkZXIgQXJ0aWtlbCB1bnRlcm1hdWVydCBqYSBhbGxlIFZvcnd1ZXJmZSwgZGllIG1hbiBtaXIgbWFjaGVuIGthbm4uCgpSdWRpIGJlcmV1dCB0cm90emRlbSBOSVguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW5lIGdhbnogbm9ybWFsZSBIb2NoemVpdCAoR29sdW0sIDExLiBBdWcgMTk5NSwgMjI6MjE6NDQpOgpEdSBzdGVoc3QgaW4gZGVyIFRyYXVrYXBlbGxlIGRlciBOaWJlbHVuZ2VuLgpIaWVyIGZpbmRlbiBkaWUgSG9jaHplaXRlbiB2b24gTW9yZ2VuR3JhdWVuIHN0YXR0LiBXZW5uIER1IGF1Y2gKaGVpcmF0ZW4gd2lsbHN0LCBzbyBmcmFnZSBkZW4gUGZhcnJlciB1ZWJlciBkaWUgSG9jaHplaXQgYXVzLgpEaWUgS2FwZWxsZSBlcnN0cmFobHQgaW0gS2VyemVuc2NoZWluLiBJbSBPc3RlbiBkZXIgS2FwZWxsZSBiZWZpbmRldApzaWNoIGRlciBBbHRhciB1bmQgZGFzIEdvdHRlc3plaWNoZW4uIFdhcyBhdWZmYWVsbHQgaXN0LCBkYXNzIGVzIGhpZXIKa2VpbmUgQmFlbmtlIGdpYnQsIHdpZSBlcyBzb25zdCBpbiBHb3R0ZXNoYWV1c2VybiB1ZWJsaWNoIGlzdC4KTmFjaCBXZXN0ZW4gZnVlaHJ0IGVpbiBncm9zc2VzIFBvcnRhbCB6dW0gVm9ycGxhdHouCkVzIGdpYnQga2VpbmUgc2ljaHRiYXJlbiBBdXNnYWVuZ2UuCkRlciBQcmllc3RlciBhdXMgZGVyIFRyYXVrYXBlbGxlLgpNeXNlbGYgZGVyIEhlbGQuCkhvbGRlbiBkZXIgU2VoZXIuClJhZmZpIGRlciBXYWxkbGFldWZlci4KVnJhaSBoYXQgdmllbGUgS29tcGxleGUuClRvc3MgaXN0IGNvb2wgdW5kIGxhZXNzaWcuCkRhcyBTY2hhdHRlbndlc2VuIEtoaWRhciBydWh0IGluIHNlaW5lciBaaXRhZGVsbGUuCkJ1cmdoZXJyIER3aWdodCAnRG9jJyBHb29kZW4uCktsZWluZSBNYXVzIFJhZmFlbCBkdWVzdCBkdXJjaCBkaWUgRGF0ZW5hdXRvYmFobi4KRHJpenp0IGlzdCBoZXV0ZSBkZW4gbGV0enRlbiBUYWcgaGllci4KVGhpbmdvbC4KR3VsZHVrYXQgLi4KVGlnYSBkaWUgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyaW4uClRha2FuIGRlciBlcmZhaHJlbmUgQWJlbnRldXJlci4KRGFzIGtsZWluZSBFbmd5d3VjayAtIE1HLVBzeWNob2xvZ2UuClNsYSBkZXIgV2FsZGxhZXVmZXIuClN0cmFwcGVyIGRlciBXYWxkbGFldWZlci4KTWFnbnVtIGRlciBQcm9waGV0LgpRdWFzc2Vsc3RyaXBwZSBQZW5lbG9wZSBkaWUgU2NobGFtbXNwcmluZ2VyaW4uCk1paXJhIGRpZSBIZWxkaW4uCkRvbSBCZW5kZWlnaWQgLCBCZXdhaHJlciB2b24gTmVza2F5YS4KPiBEdSBoYXN0IGpldHp0IDg0IExlYmVuc3B1bmt0ZSB1bmQgMzcgTWFnaWVwdW5rdGUuClRha2FuIGdyaW5zdCBUb3NzIGFuLgprbnVkZGxlIGFsbGUKVGFrYW4gc2FndDogaGkgZ29sCkRvbSBCZW5kZWlnaWQgc2FndDogb2NoIG1pc3QhCkR1IGtudWRkZWxzdCBlaW5lbiBQcmllc3RlciwgTXlzZWxmLCBIb2xkZW4sIFJhZmZpLCBWcmFpLCBUb3NzLCBLaGlkYXIsCkR3aWdodCwgUmFmYWVsLCBEcml6enQsIFRoaW5nb2wsIEd1bGR1a2F0LCBUaWdhLCBUYWthbiwgRW5neXd1Y2ssIFNsYSwKU3RyYXBwZXIsIE1hZ251bSwgUGVuZWxvcGUsIE1paXJhIHVuZCBCZW5kZWlnaWQuCj4gRHdpZ2h0IGZyYWd0IGRlbiBQcmllc3RlciBuYWNoIEhlaXJhdC4KRGVyIFByaWVzdGVyIHNhZ3Q6IEhpZXIga2FubiBqZWRlciBoZWlyYXRlbiwgZGVyIG5vY2ggbmljaHQgdmVyaGVpcmF0ZXQgaXN0LgpBbGxlcmRpbmdzIGlzdCBpbiBNb3JnZW5HcmF1ZW4gbnVyIGRpZSBIb2NoemVpdCB6d2lzY2hlbiBNYW5uIHVuZApGcmF1IGdlc3RhdHRldC4gVW0genUgaGVpcmF0ZW4sIG11ZXNzZW4gZGFzIEJyYXV0cGFhciB1bmQgZWluCk1hZ2llciBhbHMgWmV1Z2UgYW53ZXNlbmQgc2Vpbi4gRGVyIE1hZ2llciBrYW5uIGRhbm4gZGllIFRyYXV1bmcKYmVnaW5uZW4gbGFzc2VuLiBOYWNoIGRlciBIb2NoemVpdCBrb2VubnQgSWhyIGdlcm5lIGltIFNhYWwgbmViZW5hbgpmZWllcm4uIERpZSBCZWRpbmd1bmdlbiBmdWVyIGRpZSBGZWllciBrb2VubnQgaWhyIGF1ZiBkZW0gU2NoaWxkIGltClNhYWwgbGVzZW4uCkxlaWRlciBtdXNzIGljaCBmdWVyIGRpZSBaZXJlbW9uaWUgdm9uIGRlciBCcmF1dCB1bmQgZGVtIEJyYWV1dGlnYW0KamV3ZWlscyA1MCBNdWVuemVuIGthc3NpZXJlbi4gRGFmdWVyIHdlcmRldCBpaHIgaW0gQnVjaCBkZXIgTGllYmVuZGVuCmVpbmdldHJhZ2VuIHVuZCBlcmhhbHRldCBlaW5lbiBFaGVyaW5nIG1pdCBldXJlbSBOYW1lbi4KRGFzIEJyYXV0cGFhciBzb2xsdGUgdWViZXJsZWdlbiwgb2IgZXMgZGllIEhvY2h6ZWl0IG5pY2h0IGluIGRlcgpaZWl0dW5nIGluc2VyaWVyZW4gd2lsbC4KTWFnbnVtIHNhZ3Q6IEhpIGdvbHVtClRha2FuIGtudWRkZWx0IERpY2guCktoaWRhciBydWVscHN0LgpEdSBoYXN0IGpldHp0IDg1IExlYmVuc3B1bmt0ZSB1bmQgMzggTWFnaWVwdW5rdGUuCltBYmVudGV1ZXI6R2lhY29tb10gV2VsY2hlIHR1ZXIgb2VmZm5ldCBzaWNoIGR1cmNoIGRpZQpEd2lnaHQgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCktoaWRhciBzaWVodCBiZXRydW5rZW4gYXVzLgpSYWZhZWwga2l0emVsdCBkZW4gUHJpZXN0ZXIgYW4gc2VpbmVtIEtpbm4uCkRlciBQcmllc3RlciB2ZXJzdWNodCwgc2ljaCB6dSBiZWhlcnJzY2hlbiwgbXVzcyBhYmVyIGRvY2ggbGFjaGVuLgpHdWxkdWthdCBzYWd0OiBwcm9iaWVyIG5vY2ggbWFsIHp1IHN0YXJ0ZW4sIGJlbgpEdSBoYXN0IGpldHp0IDg2IExlYmVuc3B1bmt0ZSB1bmQgMzkgTWFnaWVwdW5rdGUuCkRvbSBCZW5kZWlnaWQgc2FndDogbWFnbnVtCltBYmVudGV1ZXI6R2lhY29tb10gLi4gUmFlZGVyIGJlaW0gRnJpZWRob2YgPwpLaGlkYXIgc2llaHQgYmV0cnVua2VuIGF1cy4KR3VsZHVrYXQgc2FndDogaWNoIGhhYiByYXVtIHJlc2V0dGV0CkR1IGhhc3QgamV0enQgODcgTGViZW5zcHVua3RlIHVuZCA0MCBNYWdpZXB1bmt0ZS4Kc2FnZSBoYWxsbyA7KQpHdWxkdWthdCBzYWd0OiB3ZW5uIGRhcyBuaWNodCBoaWxmdCwgZXJuZXVlcm4KRG9tIEJlbmRlaWdpZCBzYWd0OiBsYWV1ZnQgc2Nob24uIDotKApEdSBzYWdzdDogaGFsbG8gOykKPiBEdSBoYXN0IGpldHp0IDg4IExlYmVuc3B1bmt0ZSB1bmQgNDEgTWFnaWVwdW5rdGUuCnppZWhlIGhlbG0gYW4gZGVyIEdyYXR1bGFudApEZXIgUHJpZXN0ZXIgc2FndDogTmFjaCBBY2h0LiBEYXMgYmVkZXV0ZXQgTmFjaHR0YXJpZi4KRGVyIFByaWVzdGVyIHNhZ3Q6IFByb2JpZXIgZGFzIGJlaSBlaW5lbiBhbmRlcmVuLgpEdSB0cmFlZ3N0IGJlcmVpdHMgZGllIEtyaXN0YWxsa3JvbmUgYWxzIFNjaHV0eiBkZXIgU29ydGUgSGVsbS4KPiBEdSBoYXN0IGpldHp0IDg5IExlYmVuc3B1bmt0ZSB1bmQgNDIgTWFnaWVwdW5rdGUuClJhZmZpIHRlaWx0IERpciBtaXQ6IGhhbGxvIGhhc3RzIGphIGRvY2ggdWViZXJsZWJ0Ckd1bGR1a2F0IGZyYWd0OiBQcmllc3RlciBuYWNoIGhlaXJhdD8KRHUgaGFzdCBqZXR6dCA5MCBMZWJlbnNwdW5rdGUgdW5kIDQzIE1hZ2llcHVua3RlLgpTdHJhcHBlciBzYWd0OiBXbyBiaW4gaWNoIGhpZXIKVGFrYW4gc2FndDogaW0gWk9PCmdyaW5zCkR1IGdyaW5zdC4KPiBLaGlkYXIgc2llaHQgYmV0cnVua2VuIGF1cy4KVGFrYW4gc2NobXVuemVsdC4KRHUgaGFzdCBqZXR6dCA5MSBMZWJlbnNwdW5rdGUgdW5kIDQ0IE1hZ2llcHVua3RlLgpSYWZhZWwgc2FndDogaW0gTW9yZ2VuR3JhdWVuLQprbnVkZGxlIGFsbGUKS2hpZGFyIHNhZ3Q6IDxIaWNrPiEKVGlnYSBzYWd0OiBJY2ggaGFiIERVUlNUCkR1IGtudWRkZWxzdCBNeXNlbGYsIEhvbGRlbiwgUmFmZmksIFZyYWksIFRvc3MsIEtoaWRhciwgRHdpZ2h0LCBSYWZhZWwsCkRyaXp6dCwgVGhpbmdvbCwgR3VsZHVrYXQsIFRpZ2EsIFRha2FuLCBFbmd5d3VjaywgU2xhLCBTdHJhcHBlciwgTWFnbnVtLApQZW5lbG9wZSwgTWlpcmEgdW5kIEJlbmRlaWdpZC4KPiBEd2lnaHQgbXVzcyBoaWNrc2VuLiBadXZpZWwgZ2V0cnVua2VuIG9kZXIgenUgc2NobmVsbCBnZWdlc3Nlbj8KUmFmYWVsIGdyaW5zdC4KVGhpbmdvbCBzYWd0OiBrbGVpbmVuIG1vbWVudCAuLi4KUmFmZmkgc2FndDogc2VpdCB3YW5uIGhhYmVuIHByaWVzZXIgc293YXMgd2llIGVpbmVuIHRhcmlmdmVydHJhZyA/CkR1IGhhc3QgamV0enQgOTIgTGViZW5zcHVua3RlIHVuZCA0NSBNYWdpZXB1bmt0ZS4KOgo+R29MdW0KPiBLaGlkYXIgc2FndDogd28gYmxlaWJ0IGRlbm4gbnVyIGRlciBwcmllc3Rlcj8KdHJhZ2UgaGVsbSBkZXIgR3JhdHVsYW50Cj5NYWdudW0KQmVuZGVpZ2lkIGJyaWNodCB6dXNhbW1lbgpEdSBzcHJpY2hzdCBkaWUgbWFnaXNjaGVuIFdvcnRlIDogJ0RlbSBIYXVwdCBmdWVndCBzaWNoIGRlciBIZWxtLCBvYgpkZXIgc2ljaCBkZXIgWmF1YmVyIGF1Y2ggemVpZ3QgPyBOYWNodCB1bmQgTmViZWwsIG5pZW1hbmQgZ2xlaWNoICEnCkR1IGJpc3QgamV0enQgZWluIEdyYXR1bGFudCEKRHUgdHJhZWdzdCBiZXJlaXRzIGRpZSBLcmlzdGFsbGtyb25lIGFscyBTY2h1dHogZGVyIFNvcnRlIEhlbG0uCj4gRHUgaGFzdCBqZXR6dCA5MyBMZWJlbnNwdW5rdGUgdW5kIDQ2IE1hZ2llcHVua3RlLgpEb20gQmVuZGVpZ2lkIHNhZ3Q6IGRlciBmZWlnbGluZyBicmljaHQgYWIuLgpncmlucwpSYWZhZWwgc2FndDogU2VpdCBzaWUgaW4gZGVyIEdld2Vya3NjaGFmdCBzaW5kLgpEdSBncmluc3QuCj4gRHUgaGFzdCBqZXR6dCA5NCBMZWJlbnNwdW5rdGUgdW5kIDQ3IE1hZ2llcHVua3RlLgpUYWthbiBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpHdWxkdWthdCBzYWd0OiB0amEsIGlzdCBqYSBhdWNoIG5lIHVubWVuc2NobGljaGUgemVpdAp3ZXI6Z3JhdHVsaWVydCBNYWdudW0gdW5kIE0KRHUgaGFzdCBqZXR6dCA5NSBMZWJlbnNwdW5rdGUgdW5kIDQ4IE1hZ2llcHVua3RlLgpSYWZhZWwga2l0emVsdCBEaWNoIGFuIERlaW5lbSBLaW5uLgpEdSB2ZXJzdWNoc3QsIERpY2ggenUgYmVoZXJyc2NoZW4sIG11c3N0IGFiZXIgZG9jaCBsYWNoZW4uCkVuZ3l3dWNrIHNhZ3Q6IEhlaXJhdGVuIGlzdCBpbW1lciB1bm1lbnNjaGxpY2guCkR1IGhhc3QgamV0enQgOTYgTGViZW5zcHVua3RlIHVuZCA0OSBNYWdpZXB1bmt0ZS4KW0FiZW50ZXVlcjpHaWFjb21vXSBTY2hvbiBndXQgLCBnZWZ1bmRlbgpXaWUgYml0dGU/Cj4gRG9tIEJlbmRlaWdpZCBzYWd0OiBtb20sIGdsZWljaCBoYWJlbiB3aXJzClJhZmZpIHNhZ3Q6IHdlbGNoZSBJRyBHZWlzdGVyIHVuZCBHZXNwZW5zdGVyID8Ka251ZGRsZSBhbGxlCioqKiBEaWVzZXIgUmF1bSB3aXJkIGdlcmFkZSBuZXUgZ2VsYWRlbiAqKioKQ3ViIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkR1IGhhc3QgamV0enQgOTcgTGViZW5zcHVua3RlIHVuZCA1MCBNYWdpZXB1bmt0ZS4KUmFmYWVsIHNhZ3Q6IEphLCBtYW4gdmVyZHVyc3RldC4KVGFrYW4gc2FndDogZWluIFRvcnRvdXIKRHUga251ZGRlbHN0IEJlbmRlaWdpZCwgTWlpcmEsIFBlbmVsb3BlLCBNYWdudW0sIFN0cmFwcGVyLCBTbGEsIEVuZ3l3dWNrLApUYWthbiwgVGlnYSwgR3VsZHVrYXQsIFRoaW5nb2wsIERyaXp6dCwgUmFmYWVsLCBEd2lnaHQsIEtoaWRhciwgVG9zcywgVnJhaSwKUmFmZmksIEhvbGRlbiwgTXlzZWxmIHVuZCBlaW5lbiBQcmllc3Rlci4KPiBUYWthbiBncmluc3QgRW5neXd1Y2sgYW4uClR3cnggaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KVGFrYW4ga251ZGRlbHQgQmVuZGVpZ2lkLCBNaWlyYSwgUGVuZWxvcGUsIE1hZ251bSwgU3RyYXBwZXIsIFNsYSwgRW5neXd1Y2ssClRpZ2EsIEd1bGR1a2F0LCBUaGluZ29sLCBEcml6enQsIFJhZmFlbCwgRHdpZ2h0LCBLaGlkYXIsIFRvc3MsIFZyYWksIFJhZmZpLApIb2xkZW4sIE15c2VsZiwgRGljaCB1bmQgZWluZW4gUHJpZXN0ZXIuCkR1IGhhc3QgamV0enQgOTggTGViZW5zcHVua3RlIHVuZCA1MSBNYWdpZXB1bmt0ZS4KUmFmYWVsIGtpdHplbHQgZGVuIFByaWVzdGVyIGFuIHNlaW5lbSBLaW5uLgpEZXIgUHJpZXN0ZXIgdmVyc3VjaHQsIHNpY2ggenUgYmVoZXJyc2NoZW4sIG11c3MgYWJlciBkb2NoIGxhY2hlbi4KRHUgaGFzdCBqZXR6dCA5OSBMZWJlbnNwdW5rdGUgdW5kIDUyIE1hZ2llcHVua3RlLgo6Z3JhdHVsaWVydCBNYWdudW0gdW5kIE1paXJhCkd1bGR1a2F0IHZlcmxhZXNzdCBkaWUgQnJ1ZWNrZSBuYWNoIFdlc3Rlbi4KRHdpZ2h0IHJ1ZnQ6IEFuZmFuZ2VuLCBBbmZhbmdlbiEKRHUgamFnc3QgQWxuYWMgbmljaHQgbWVoci4KRHUgaGFzdCBqZXR6dCAxMDAgTGViZW5zcHVua3RlIHVuZCA1MyBNYWdpZXB1bmt0ZS4KPkVpbiBHcmF0dWxhbnQgZ3JhdHVsaWVydCBNYWdudW0gdW5kIE1paXJhCj4gZ3JpbnMKRHUgaGFzdCBqZXR6dCAxMDEgTGViZW5zcHVua3RlIHVuZCA1NCBNYWdpZXB1bmt0ZS4KRHUgZ3JpbnN0Lgo+IER1IGhvZXJzdCBkaWUgR2xvY2tlbiBkZXIgS2FwZWxsZSBpbiBkZXIgVW50ZXJ3ZWx0LgpNaWlyYSB1bmQgTWFnbnVtIHdvbGxlbiBoZWlyYXRlbi4KRGllIEdsb2NrZW4gbGFldXRlbi4KVGFrYW4gc2NobXVuemVsdC4KPk1hZ251bSBzcHJpY2h0IG1pdCBkZW0gUHJpZXN0ZXIgdW50ZXIgNCBBdWdlbgpEb20gQmVuZGVpZ2lkIHNhZ3Q6IFVmZmYhISEhISEhISEhISEhISEhCmV3cnNhZ2UgaGFsbG8gU0NobXV6ZW4KUmFmYWVsIGRlbmt0ICAgLiBvIE8gKHNjaG9uIHdpZWRlcj8pCkR1IGhhc3QgamV0enQgMTAyIExlYmVuc3B1bmt0ZSB1bmQgNTUgTWFnaWVwdW5rdGUuCldpZSBiaXR0ZT8KPiBzYWdlIEhhbGxvIFNjaG11bnplbG1vbnN0ZXIKRHUgaGFzdCBqZXR6dCAxMDMgTGViZW5zcHVua3RlIHVuZCA1NiBNYWdpZXB1bmt0ZS4KRHUgc2Fnc3Q6IEhhbGxvIFNjaG11bnplbG1vbnN0ZXIKPiBEaWUgR2xvY2tlbiBkZXIgS2FwZWxsZSBpbiBkZXIgVW50ZXJ3ZWx0IGxhZXV0ZW4uCkR3aWdodCBmcmFndDogT2ssIHdlciBzYWd0cyBkaWVzbWFsPwpHdWxkdWthdCBydWZ0OiBBdHRlbnRpb24gb24gRGVjay4uCkR3aWdodCBncmluc3QuCkR1IGhhc3QgamV0enQgMTA0IExlYmVuc3B1bmt0ZSB1bmQgNTcgTWFnaWVwdW5rdGUuCkRvbSBCZW5kZWlnaWQgc2FndDogd2VubiBpY2ggbm9jaCBuZW4gRWluc3AqIGhvZXJlLi4uLiB6YXAgaWNoIHJ1ZWNrc2ljaHRzbG9zCkFlbGwgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgpSYWZmaSBkZW5rdCAgIC4gbyBPICh3byBibGVpYnQgamV0enQgZGllIGFrdGlvbj8pCk1hZ251bSBzYWd0OiBPawpSYWZmaSBkZW5rdCAgIC4gbyBPIChnYWVobikKRHUgaGFzdCBqZXR6dCAxMDUgTGViZW5zcHVua3RlIHVuZCA1OCBNYWdpZXB1bmt0ZS4KRG9tIEJlbmRlaWdpZCBzYWd0OiBnYW56IGxhbmdzYW0sIGRlciB3YXJ0ZXQuIGRhcyBpc3Qgb2tpClRpZ2Egc2FndDogT2sKRHdpZ2h0IHNhZ3Q6IEVpbnNwKgpHdWxkdWthdCBkZW5rdCAgIC4gbyBPIChlaW5zcHJ1aCkKRWluIFByaWVzdGVyIHNhZ3Q6IEhlaXJhdGVuIGlzdCBzb25lIFNhY2hlLCB3b2xsdCBpaHIgbmljaHQgc3RhdHRkZXNzZW4KRnJldW5kZQpibGVpYmVuID8KRHUgaGFzdCBqZXR6dCAxMDYgTGViZW5zcHVua3RlIHVuZCA1OSBNYWdpZXB1bmt0ZS4KRGllIFBmb3J0ZSB3aXJkIGdlc2NobG9zc2VuLgpEZXIgUHJpZXN0ZXIgc2FndDogU2VociBnZWVocnRlIEFud2VzZW5kZSwKRGVyIFByaWVzdGVyIHNhZ3Q6IHdpciBzaW5kIGhldXRlIGhpZXIgenVzYW1tZW5nZWtvbW1lbiwgdW0gZGllIEhvY2h6ZWl0CkRlciBQcmllc3RlciBzYWd0OiB2b24gTWFnbnVtIHVuZCBNaWlyYSB6dSBmZWllcm4uClNsYSBzYWd0OiBHdWxkdWthdCwgc2VpIGJsb3NzIHN0aWxsLi4uCkR1IGhhc3QgamV0enQgMTA3IExlYmVuc3B1bmt0ZSB1bmQgNjAgTWFnaWVwdW5rdGUuCkd1bGR1a2F0IHNpbmd0ICdFaW5zcHJ1YycuCnppZWhlIGhlbG0gYXVzCkRvbSBCZW5kZWlnaWQgc2FndDogQXVmbWVya3NhbWtlaXQgdW5kIHJ1aGUsIGJpdHRlCkR1IGVudGZlcm5zdCBkZW4gSGVsbSB1bmQgd2lyc3Qgd2llZGVyIHp1IEdvTHVtLgpXaWUgYml0dGU/Cj4gRHUgaGFzdCBqZXR6dCAxMDggTGViZW5zcHVua3RlIHVuZCA2MSBNYWdpZXB1bmt0ZS4KdHJhZ2UgaGVsbSBkZXIgQW53ZXNlbmRlClJhZmZpIGRlbmt0ICAgLiBvIE8gKGpldHp0IHBhc3NpZXJ0IHdhcykKRGVyIFByaWVzdGVyIHNhZ3Q6IEljaCBoYWIga2VpbmUgTHVzdCBtZWhyLgpUYWthbiBzY2htdW56ZWx0LgpEdSBoYXN0IGpldHp0IDEwOSBMZWJlbnNwdW5rdGUgdW5kIDYyIE1hZ2llcHVua3RlLgpEdSBzcHJpY2hzdCBkaWUgbWFnaXNjaGVuIFdvcnRlIDogJ0RlbSBIYXVwdCBmdWVndCBzaWNoIGRlciBIZWxtLCBvYgpkZXIgc2ljaCBkZXIgWmF1YmVyIGF1Y2ggemVpZ3QgPyBOYWNodCB1bmQgTmViZWwsIG5pZW1hbmQgZ2xlaWNoICEnCkR1IGJpc3QgamV0enQgZWluIEFud2VzZW5kZSEKRHUgdHJhZWdzdCBiZXJlaXRzIGRpZSBLcmlzdGFsbGtyb25lIGFscyBTY2h1dHogZGVyIFNvcnRlIEhlbG0uCj4gVGFrYW4ga251ZGRlbHQgTWlpcmEuCkRlciBQcmllc3RlciBnZWh0LgpEZXIgUHJpZXN0ZXIga2xhcHB0IGRhcyBCdWNoIHp1IHVuZCBnZWh0LgpEdSBoYXN0IGpldHp0IDExMCBMZWJlbnNwdW5rdGUgdW5kIDYzIE1hZ2llcHVua3RlLgpyb3RmbApEd2lnaHQgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCkR1IHJvdGZsc3QuCj4gPlRha2FuIGF1Y2gKVGFrYW4gc2NobXVuemVsdC4KR3VsZHVrYXQgc2FndDogaGFlPwpEdSBoYXN0IGpldHp0IDExMSBMZWJlbnNwdW5rdGUgdW5kIDY0IE1hZ2llcHVua3RlLgpUYWthbiBrbnVkZGVsdCBHdWxkdWthdCwgQmVuZGVpZ2lkLCBNaWlyYSwgUGVuZWxvcGUsIE1hZ251bSwgU3RyYXBwZXIsIFNsYSwKRW5neXd1Y2ssIFRpZ2EsIFRoaW5nb2wsIERyaXp6dCwgUmFmYWVsLCBEd2lnaHQsIEtoaWRhciwgVG9zcywgVnJhaSwgUmFmZmksCkhvbGRlbiwgTXlzZWxmIHVuZCBEaWNoLgo6Cj5FaW4gQW53ZXNlbmRlCj4gKioqIERpZXNlciBSYXVtIHdpcmQgZ2VyYWRlIG5ldSBnZWxhZGVuICoqKgpEb20gQmVuZGVpZ2lkIHNhZ3Q6IGhhZT8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz9hYWEKemllaGUgaGVsbSBhdXMKRHUgaGFzdCBqZXR6dCAxMTIgTGViZW5zcHVua3RlIHVuZCA2NSBNYWdpZXB1bmt0ZS4KRHUgZW50ZmVybnN0IGRlbiBIZWxtIHVuZCB3aXJzdCB3aWVkZXIgenUgR29MdW0uCldpZSBiaXR0ZT8KPiB0cmFnZSBoZWxtIGRlciBBbndlc2VuZGVyClN0cmFwcGVyIHNhZ3Q6IE1hdWwKU2VsdGVycyBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpEdSBoYXN0IGpldHp0IDExMyBMZWJlbnNwdW5rdGUgdW5kIDY2IE1hZ2llcHVua3RlLgpEb20gQmVuZGVpZ2lkIHNhZ3Q6IG5laW4hISEhISEhIQpHdWxkdWthdCBzYWd0OiBsb2dndCBqZW1hbmQgbWl0LCB3YXMgaGllciBwYXNzaWVydD8KRHdpZ2h0IHNhZ3Q6IGhpaGksIGdlaWxlIEhvY2h6ZWl0CkRpZSBMaWNodGt1Z2VsIGxvZXN0IHNpY2ggYXVmLgpEdSBzcHJpY2hzdCBkaWUgbWFnaXNjaGVuIFdvcnRlIDogJ0RlbSBIYXVwdCBmdWVndCBzaWNoIGRlciBIZWxtLCBvYgpkZXIgc2ljaCBkZXIgWmF1YmVyIGF1Y2ggemVpZ3QgPyBOYWNodCB1bmQgTmViZWwsIG5pZW1hbmQgZ2xlaWNoICEnCkR1IGJpc3QgamV0enQgZWluIEFud2VzZW5kZXIhCkR1IHRyYWVnc3QgYmVyZWl0cyBkaWUgS3Jpc3RhbGxrcm9uZSBhbHMgU2NodXR6IGRlciBTb3J0ZSBIZWxtLgo+IERpZSBMaWNodGt1Z2VsIGxvZXN0IHNpY2ggYXVmLgpEdSBoYXN0IGpldHp0IDExNCBMZWJlbnNwdW5rdGUgdW5kIDY3IE1hZ2llcHVua3RlLgpuaWNrCkR1IG5pY2tzdCB6dXN0aW1tZW5kLgo+IE1hZ251bSBzYWd0OiBOb2UKVGhpbmdvbCBuaWNrdCBEd2lnaHQgenUuCkd1bGR1a2F0IHNhZ3Q6IGVnYWwsIGljaCBtYWNoIHBhcnR5Ckd1bGR1a2F0IGJsYWVzdCBpbiBkaWUgVHJvZXRlIHVuZCBlaW4gcmVpbmVyLCBrbGFyZXIgVG9uIHNjaG1ldHRlcnQgaGVyYXVzLgpUYWthbiBkZW5rdCAgIC4gbyBPIChqbyBkaWUgaXNzIG5pY2ggc2NobGVjaHQgZGllIFplaXQgaGllciA6KSkpCioqKiBEaWVzZXIgUmF1bSB3aXJkIGdlcmFkZSBuZXUgZ2VsYWRlbiAqKioKRHUgaGFzdCBqZXR6dCAxMTUgTGViZW5zcHVua3RlIHVuZCA2OCBNYWdpZXB1bmt0ZS4KUmFmZmkgZGVua3QgICAuIG8gTyAod2FzIG1hY2hlbiB3aXIgb2huZSBwcmlzdGVyID8gbmUgcGFydGllID8pCioqKiBEaWVzZXIgUmF1bSB3aXJkIGdlcmFkZSBuZXUgZ2VsYWRlbiAqKioKRWluIFBhcnR5bW9uc3RlciBlcnNjaGVpbnQgaW4gZWluZXIgUmF1Y2h3b2xrZS4Kd2FlbHoKRHUgd2FlbHp0IERpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgo+IERvbSBCZW5kZWlnaWQgc2FndDogbGFuZ3NhbQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFByaW1hLCBHdWxkdWthdCEgRHUgaGFzdCBtZWluZSBUcm9ldGUgZ2VmdW5kZW4uCkRhcyBQYXJ0eW1vbnN0ZXIgbmltbXQgR3VsZHVrYXQgc2VpbmUgVHJvZXRlIGFiIHVuZCBibGFlc3QgbGF1dCBoaW5laW4uCkRhcyBQYXJ0eW1vbnN0ZXIgcnVmdDogVGF0YXRlcmF0YSwgUGFydHkgISBLb21tdCBhbGxlIHp1IEd1bGR1a2F0IQpUYWthbiB3YWVsenQgc2ljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uCkR1IGhhc3QgamV0enQgMTE2IExlYmVuc3B1bmt0ZSB1bmQgNjkgTWFnaWVwdW5rdGUuCnJvdGZsCkR1IHJvdGZsc3QuCj4gUGFydHltb25zdGVyIHNhZ3Q6IEljaCBnZWJlIERpciBhbGxlcyB3YXMgaWNoIGRhYmVpIGhhYmUsIHdlbm4gRHUgbWljaApQYXJ0eW1vbnN0ZXIgc2FndDogd2llIGZvbGd0IGJpdHRlc3Q6IHNhZyBQYXJ0eW1vbnN0ZXIgZ2liIDx3ZW0+IDx3YXM+ClBhcnR5bW9uc3RlciBzYWd0OiBBdWYgV3Vuc2NoIHZlcnNjaHdpbmRlIGljaCBhdWNoIG9kZXIgaG9sZSBTdXNhbm5lLgpEdSBoYXN0IGpldHp0IDExNyBMZWJlbnNwdW5rdGUgdW5kIDcwIE1hZ2llcHVua3RlLgpNaWlyYSBzYWd0OiBJaHIgc2VpZCBzbyBnZW1laW4hIERhcyBzb2xsdGUgZGVyIHNob2Vuc3RlIFRhZyBpbiBtZWluZW0gTGViZW4KTWlpcmEgc2FndDogd2VyZGVuLi4uCkR3aWdodCBqdWJlbHQuClJhZmZpIHJvdGZsdC4KVG9zcyBzYWd0OiBFWSAhCkRvbSBCZW5kZWlnaWQgc2FndDogaGFsdHMgbWF1bCwgVmllaApUYWthbiBzYWd0OiBQYXJ0eW1vbnN0ZXIgZ2liIGFsbGVuIGpvaW50CmtudWRkbGUgbWlpcmEKRWluIFByaWVzdGVyIGtvbW10IGFuLgpKZW1hbmQgemF1YmVydCBldHdhcyBoZXJ2b3IuCkVpbiBQcmllc3RlciBrb21tdCBhbi4KSmVtYW5kIHphdWJlcnQgZXR3YXMgaGVydm9yLgpFaW4gUHJpZXN0ZXIga29tbXQgYW4uCkplbWFuZCB6YXViZXJ0IGV0d2FzIGhlcnZvci4KRWluIFByaWVzdGVyIGtvbW10IGFuLgpKZW1hbmQgemF1YmVydCBldHdhcyBoZXJ2b3IuCkVpbiBQcmllc3RlciBrb21tdCBhbi4KSmVtYW5kIHphdWJlcnQgZXR3YXMgaGVydm9yLgpFaW4gUHJpZXN0ZXIga29tbXQgYW4uCkplbWFuZCB6YXViZXJ0IGV0d2FzIGhlcnZvci4KRWluIFByaWVzdGVyIGtvbW10IGFuLgpKZW1hbmQgemF1YmVydCBldHdhcyBoZXJ2b3IuCkVpbiBQcmllc3RlciBrb21tdCBhbi4KSmVtYW5kIHphdWJlcnQgZXR3YXMgaGVydm9yLgpFaW4gUHJpZXN0ZXIga29tbXQgYW4uCkplbWFuZCB6YXViZXJ0IGV0d2FzIGhlcnZvci4KRWluIFByaWVzdGVyIGtvbW10IGFuLgpKZW1hbmQgemF1YmVydCBldHdhcyBoZXJ2b3IuCkR1IGhhc3QgamV0enQgMTE4IExlYmVuc3B1bmt0ZSB1bmQgNzEgTWFnaWVwdW5rdGUuCkR1IGtudWRkZWxzdCBNaWlyYS4KPiBUb3NzIHNhZ3Q6IGlzdCBzY2hvbiBnZWhlaXJhdGV0IHdvcmRlbiA/CkR3aWdodCBzYWd0OiBQYXJ0eW1vbnN0ZXIgaG9sZSBzdXNhbm5lCkRvbSBCZW5kZWlnaWQgc2FndDogdWFoISEhISEhIQpSYWZhZWwgc2FndDogUGFydHltb25zdGVyIGdpYiBhbGxlbiBEaWNrbWFubgpEdSBoYXN0IGpldHp0IDExOSBMZWJlbnNwdW5rdGUgdW5kIDcyIE1hZ2llcHVua3RlLgpUYWthbiBzYWd0OiBub2UKVGFrYW4gc2NobXVuemVsdC4KU2FnZSBIRUlSQVRFVCBFTkRMSUNIIDspKSkpKQpHdWxkdWthdCBzYWd0OiBQYXJ5bW9uc3RlciBnaWIgYWxsZW4gUHJpZXN0ZXIKRHUgaGFzdCBqZXR6dCAxMjAgTGViZW5zcHVua3RlIHVuZCA3MyBNYWdpZXB1bmt0ZS4KQmVuZGVpZ2lkIGZhZWxsdCBlaW5mYWNoIHVtCldpZSBiaXR0ZT8KPiBNYWdudW0gc2FndDogTmljaHQgc2NobGVjaHQsIGlociBzZWlkIGVjaHQgZGllIEhlbGRlbgpFaW4gUHJpZXN0ZXIga29tbXQgYW4uCkJlbmRlaWdpZCB6YXViZXJ0IGV0d2FzIGhlcnZvci4Kc2FnZSBIRUlSQVRFVCBFTkRMSUNIIDspKSAhCk1paXJhIHNhZ3Q6IC4uLnBhY2t0IHNpZSB1bmQgemVyaGFja3Qgc2llLi4uCkR1IGhhc3QgamV0enQgMTIxIExlYmVuc3B1bmt0ZSB1bmQgNzQgTWFnaWVwdW5rdGUuCkR1IHNhZ3N0OiBIRUlSQVRFVCBFTkRMSUNIIDspKSAhCj4gVGFrYW4ga251ZGRlbHQgRGljaCwgTXlzZWxmLCBIb2xkZW4sIFJhZmZpLCBWcmFpLCBUb3NzLCBLaGlkYXIsIER3aWdodCwKUmFmYWVsLCBEcml6enQsIFRoaW5nb2wsIFRpZ2EsIEVuZ3l3dWNrLCBTbGEsIFN0cmFwcGVyLCBNYWdudW0sIFBlbmVsb3BlLApNaWlyYSwgQmVuZGVpZ2lkIHVuZCBHdWxkdWthdC4KRHdpZ2h0IHNhZ3Q6IG9jaCwgc2Nob24gd2VnCkR1IGhhc3QgamV0enQgMTIyIExlYmVuc3B1bmt0ZSB1bmQgNzUgTWFnaWVwdW5rdGUuClRha2FuIG5pY2t0IGJla3VlbW1lcnQuCkR1IGhhc3QgamV0enQgMTIzIExlYmVuc3B1bmt0ZSB1bmQgNzYgTWFnaWVwdW5rdGUuCkVpbiBQcmllc3RlciBrb21tdCBhbi4KR3VsZHVrYXQgc2FndDogd2llc28gZ2luZyBkZXIgbGV0emUgdmVyc3VjaCBkbmVuIHdpZWRlciBuaWNodD8KUmFmZmkgZGVua3QgICAuIG8gTyAocmFzc2V3ZWliIC0gdW5kIHNvIGVuZXJnaXNjaCAtIGlzdCByaWNodGlnIHN1ZXNzIHdlbm4Kc2llIHcKdWV0ZW5kIHdpcmQpCkR1IGhhc3QgamV0enQgMTI0IExlYmVuc3B1bmt0ZSB1bmQgNzcgTWFnaWVwdW5rdGUuCk1hZ251bSB0cml0dCBEaWNoLgpSYWZhZWwgZ3JpbnN0LgoqKiogRGllc2VyIFJhdW0gd2lyZCBnZXJhZGUgbmV1IGdlbGFkZW4gKioqCkR1IGhhc3QgamV0enQgMTI1IExlYmVuc3B1bmt0ZSB1bmQgNzggTWFnaWVwdW5rdGUuClRha2FuIGRlbmt0ICAgLiBvIE8gKHdlciBtaWlyYSA/OikKdG0gbWFnbnVtIHdhcyBpc3QgZGVuIGxvcyA/ClRha2FuIGdyaW5zdCBSYWZhZWwgYW4uCkR1IHRlaWxzdCBNYWdudW0gbWl0OiB3YXMgaXN0IGRlbiBsb3MgPwo+IHppZWhlIGhlbG0gYXVzCkR1IGhhc3QgamV0enQgMTI2IExlYmVuc3B1bmt0ZSB1bmQgNzkgTWFnaWVwdW5rdGUuCkR1IGVudGZlcm5zdCBkZW4gSGVsbSB1bmQgd2lyc3Qgd2llZGVyIHp1IEdvTHVtLgpXaWUgYml0dGU/Cj4gTWlpcmEgZGVua3QgICAuIG8gTyAoZ2FyZ2wpClRvc3Mgc2FndDoga29lbm5lbiB3aXIgZGFubiBtYWwgPwpUYWthbiBkZW5rdCAgIC4gbyBPICgqZ3JpbnMqIC4pCkR1IGhhc3QgamV0enQgMTI3IExlYmVuc3B1bmt0ZSB1bmQgODAgTWFnaWVwdW5rdGUuClJhZmZpIGRlbmt0ICAgLiBvIE8gKGplcCBoYXN0IGR1IG5pY2h0IGdlc2VoZW4gd2llIHNpZSBydW1nZWZ1aXJldCBoYXQpCk1hZ251bSB0ZWlsdCBEaXIgbWl0OiBBY2ggc28sIER1IHdhcnRzIGRhcywgc29ycnkKVGFrYW4gc2NobXVuemVsdCBiZWx1c3RpZ3QuCkRvbSBCZW5kZWlnaWQgc2FndDogamEsIG51ciBkZXIgUHJpZXN0ZXIgbmljaHQuLi4gZGVyIGZhdWxlbnp0CkR1IGhhc3QgamV0enQgMTI4IExlYmVuc3B1bmt0ZSB1bmQgODEgTWFnaWVwdW5rdGUuCk1paXJhIGRlbmt0ICAgLiBvIE8gKG1laW5ldHdlZ2VuIGphIGVpZ2VudGxpY2ggc2Nob24gZGllIGdhbnplIFplaXQuLi4pClRha2FuIGRlbmt0ICAgLiBvIE8gKGRvY2hkb2NoIDopCkR1IGhhc3QgamV0enQgMTI5IExlYmVuc3B1bmt0ZSB1bmQgODIgTWFnaWVwdW5rdGUuCnJrIGthbQpLbnVkZGxlIHdlbj8KPiBrbnVkZGxlIG1hZ251bSxtaWlyYQpEdSBoYXN0IGpldHp0IDEzMCBMZWJlbnNwdW5rdGUgdW5kIDgzIE1hZ2llcHVua3RlLgpEdSBrbnVkZGVsc3QgTWFnbnVtLgo+IE1hZ251bSBmYWVuZ3QgYW4genUgZGVua2VuLgpLbGVpbmUgUmF1Y2h3b2Vsa2NoZW4gc3RlaWdlbiBhdWYuLi4KUmFmZmkgc2FndDogQUxMRTogcHJpZXNldGVyIFByaWVzdGVyIFBSSUVTVEVSIC4uLgpUdWlhdmlpIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KRHUgaGFzdCBqZXR6dCAxMzEgTGViZW5zcHVua3RlIHVuZCA4NCBNYWdpZXB1bmt0ZS4Kc2FnZSBQUklFU1RFUgpNYWdudW0ga251ZGRlbHQgRGljaC4KRHUgc2Fnc3Q6IFBSSUVTVEVSCj4gRHUgaGFzdCBqZXR6dCAxMzIgTGViZW5zcHVua3RlIHVuZCA4NSBNYWdpZXB1bmt0ZS4KSWNoIHVuZCBtZWluIE1hZ251bS4uLgpSYWZmaSBzYWd0OiBwcmllc3Rlcgp3YWVsegpEdSBoYXN0IGpldHp0IDEzMyBMZWJlbnNwdW5rdGUgdW5kIDg2IE1hZ2llcHVua3RlLgpEdSB3YWVsenQgRGljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uCj4gKioqIERpZXNlciBSYXVtIHdpcmQgZ2VyYWRlIG5ldSBnZWxhZGVuICoqKgpSYWZmaSBydWZ0OiBQUklFU1RFUgpNaWV6ZSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpEdSBoYXN0IGpldHp0IDEzNCBMZWJlbnNwdW5rdGUgdW5kIDg3IE1hZ2llcHVua3RlLgp0bSBmZWxzIHNvd2FzIGhhc3QgZHUgbm9jaCBuaWUgZXJsZWJ0IGlzdCBkZXIgZWNodGUgd2FobnNpbm4gaGllciA7KSkgV2FlbHoKcm90ZgpsIGxhY2gKRW5neXd1Y2sgc2FndDogQmVuLCBEdSBtYWNoc3QgZGFzIGVjaHQgZ3V0IQpEZXIgUHJpZXN0ZXIgc2FndDogTmljaHQgc2Nob24gd2llZGVyIEJlbmRlaWdpZCwgYmFsZCBoYWIgaWNoIGtlaW4gQm9jayBtZWhyLgpUYWthbiBuaWNrdCB6dXN0aW1tZW5kLgpEdSBoYXN0IGpldHp0IDEzNSBMZWJlbnNwdW5rdGUgdW5kIDg4IE1hZ2llcHVua3RlLgpQUklTVEVSIHJ1ZnQ6IEphPwpEZXIgUHJpZXN0ZXIgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRG9tIEJlbmRlaWdpZCBzYWd0OiBuaWNodCB3YWhyPwpHdWxkdWthdCBncmluc3QuCkR1IHRlaWxzdCBGZWxzIG1pdDogc293YXMgaGFzdCBkdSBub2NoIG5pZSBlcmxlYnQgaXN0IGRlciBlY2h0ZSB3YWhuc2lubiBoaWVyCkR1IHRlaWxzdCBGZWxzIG1pdDogOykpIFdhZWx6IHJvdGZsIGxhY2gKPiBUYWthbiBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpEdSBoYXN0IGpldHp0IDEzNiBMZWJlbnNwdW5rdGUgdW5kIDg5IE1hZ2llcHVua3RlLgpNaWlyYSBnZWh0IG5hY2ggV2VzdGVuLgpQZW5lbG9wZSBrbnVkZGVsdCBUYWthbi4Kcm90ZmwKRmVscyB0ZWlsdCBEaXIgbWl0OiAqZ3JpbnMqCkR1IHJvdGZsc3QuCj4gTWlpcmEga29tbXQgYW4uClJhZmZpIHJvdGZsdCBtZWdhbWFlc3NpZy4KVGFrYW4gZGVua3QgICAuIG8gTyAoZGFzIGlzcyBqYSBuaWNoIHp1bSBhdXNoYWx0ZW4gaGllcikKRHUgaGFzdCBqZXR6dCAxMzcgTGViZW5zcHVua3RlIHVuZCA5MCBNYWdpZXB1bmt0ZS4KdHJhZ2UgSGVsbSBkZXIgS2FwaXRhZW4KUmFmYWVsIGFyZ2x0IGVpbiB3ZW5pZyB2b3Igc2ljaCBoaW4uCj5UYWthbiBoYXQgc2Nob24gQmF1Y2hzY2htZXJ6ZW4gdm9yIGxhY2hlbgpEdSBoYXN0IGpldHp0IDEzOCBMZWJlbnNwdW5rdGUgdW5kIDkxIE1hZ2llcHVua3RlLgpEdSBzcHJpY2hzdCBkaWUgbWFnaXNjaGVuIFdvcnRlIDogJ0RlbSBIYXVwdCBmdWVndCBzaWNoIGRlciBIZWxtLCBvYgpkZXIgc2ljaCBkZXIgWmF1YmVyIGF1Y2ggemVpZ3QgPyBOYWNodCB1bmQgTmViZWwsIG5pZW1hbmQgZ2xlaWNoICEnCkR1IGJpc3QgamV0enQgZWluIEthcGl0YWVuIQpEdSB0cmFlZ3N0IGJlcmVpdHMgZGllIEtyaXN0YWxsa3JvbmUgYWxzIFNjaHV0eiBkZXIgU29ydGUgSGVsbS4KPiBEdSBoYXN0IGpldHp0IDEzOSBMZWJlbnNwdW5rdGUgdW5kIDkyIE1hZ2llcHVua3RlLgpzYWdlIHdhcyBzb2xscyBpY2gga2FubiBldWNoIGF1Y2ggdHJhdWVuIDspClJhZmFlbCBsaWVzdCBlaW4gQnVjaC4KRWluIFplaWNoZW4gZmFlbGx0IHZvbSBIaW1tZWwuCkR1IHNhZ3N0OiB3YXMgc29sbHMgaWNoIGthbm4gZXVjaCBhdWNoIHRyYXVlbiA7KQo+IFpFSUNIRU4hISEhCkR1IGhhc3QgamV0enQgMTQwIExlYmVuc3B1bmt0ZSB1bmQgOTMgTWFnaWVwdW5rdGUuClJhZmZpIGRlbmt0ICAgLiBvIE8gKGltbWVyIG1laHIgLSBpbW1lciBtZWhyIC0gaW1tZXIgbWVociAuLi4pClRha2FuIGtpdHplbHQgUGVuZWxvcGUgYW4gaWhyZW0gS2lubi4KUGVuZWxvcGUgdmVyc3VjaHQsIHNpY2ggenUgYmVoZXJyc2NoZW4sIG11c3MgYWJlciBkb2NoIGxhY2hlbi4KVGFrYW4gc2NobXVuemVsdC4KRWluIEhvaGVwcmllc3RlciBrb21tdCBhbi4KRHUgaGFzdCBqZXR6dCAxNDEgTGViZW5zcHVua3RlIHVuZCA5NCBNYWdpZXB1bmt0ZS4KVGFrYW4ga251ZGRlbHQgZWluZW4gSG9oZXByaWVzdGVyLCBNaWlyYSwgRGljaCwgTXlzZWxmLCBIb2xkZW4sIFJhZmZpLCBWcmFpLApUb3NzLCBLaGlkYXIsIER3aWdodCwgUmFmYWVsLCBEcml6enQsIFRoaW5nb2wsIFRpZ2EsIEVuZ3l3dWNrLCBTbGEsIFN0cmFwcGVyLApNYWdudW0sIFBlbmVsb3BlLCBCZW5kZWlnaWQgdW5kIEd1bGR1a2F0Lgo+TWlpcmEgZmluZGV0IGRhcyBuaWNodCBsdXN0aWcgdW5kIHdpcmZ0IFRha2FuIGVpbmVuIG1pc3NtdXRpZ2VuIEJsaWNrIHp1LgpEdSBoYXN0IGpldHp0IDE0MiBMZWJlbnNwdW5rdGUgdW5kIDk1IE1hZ2llcHVua3RlLgpEZXIgUHJpZXN0ZXIgcnVmdDogQWNoIGxhc3N0IG1pY2ggZG9jaCBpbiBSdWhlIQpSYWZmaSBkZW5rdCAgIC4gbyBPICh3b3cgamV0enQga29tbXQgZGllIE9iZXJsaWdhKQpNaWlyYSB1bmQgVGFrYW4gd29sbGVuIGhlaXJhdGVuLgpEdSBoYXN0IGpldHp0IDE0MyBMZWJlbnNwdW5rdGUgdW5kIDk2IE1hZ2llcHVua3RlLgo+VGFrYW4gd2Flc2NodCBzZWluZSBoYWVuZGUgaW4gVW5zY2h1bGQKcm90ZmwKRG9tIEJlbmRlaWdpZCBzYWd0OiBoYWU/Pz8/Pz8/Pz8/Pz8/PwpEdSByb3RmbHN0Lgo+IE1paXJhIHNhZ3Q6IE5FSU4hISEKRHUgaGFzdCBqZXR6dCAxNDQgTGViZW5zcHVua3RlIHVuZCA5NyBNYWdpZXB1bmt0ZS4KUmFmYWVsIHNhZ3Q6IEZlaGx0IG51ciBub2NoIGVpbiBGb3JlLVByaWVzdGVyLgpraWNoZXIKRHUga2ljaGVyc3QuIChXaWUgYWxiZXJuIHZvbiBEaXIpCj4gRHUgaGFzdCBqZXR6dCAxNDUgTGViZW5zcHVua3RlIHVuZCA5OCBNYWdpZXB1bmt0ZS4KRG9tIEJlbmRlaWdpZCBzYWd0OiBtb20uLiBpY2gga3JpZWcgbmUga3Jpc2UKVGFrYW4gZGVua3QgICAuIG8gTyAobWlzdCBkYSBzY2hyZWlidCBtYW4gbWFsIEdST1NTIHVuZCBrbGVpbiB1bmQgZGFubiBtYWNodAptYW4KIGVzIGltbWVyIG5vY2ggZmFsc2NoIDopKSkKTWlpcmEgc2FndDogSWhyIGZsaWVndCBnbGVpY2ggYWxsZSBSQVVTIQpEb20gQmVuZGVpZ2lkIHJ1ZnQ6CkFycnJycnJycnJycnJycnJycnJycnJycnJnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnaGhoaGhoaGhoaGhoaGhoaApoaGhoaApEdSBoYXN0IGpldHp0IDE0NiBMZWJlbnNwdW5rdGUgdW5kIDk5IE1hZ2llcHVua3RlLgpFaW4gSG9oZXByaWVzdGVyIGtvbW10IGFuLgogIE1paXJhIGdyZWlmdCBkZW4gSG9oZXByaWVzdGVyIG1pdCBlaW5lbSBTYWViZWwgYW4uCiAgTWlpcmEgdmVyZmVobHQgZGVuIEhvaGVwcmllc3Rlci4KICBEZXIgSG9oZXByaWVzdGVyIGdyZWlmdCBNaWlyYSBtaXQgYmxvc3NlbiBIYWVuZGVuIGFuLgogIERlciBIb2hlcHJpZXN0ZXIgdmVyZmVobHQgTWlpcmEuCiAgTWlpcmFzIFJpbmcgc2NoaWVzc3QgZWluZSBQZmVpbHNwaXR6ZSBhdWYgZWluZW4gSG9oZXByaWVzdGVyLgogIE1paXJhIGdyZWlmdCBkZW4gSG9oZXByaWVzdGVyIG1pdCBlaW5lbSBTYWViZWwgYW4uCiAgTWlpcmEga3JhdHp0IGRlbiBIb2hlcHJpZXN0ZXIuCiAgRGVyIEhvaGVwcmllc3RlciBncmVpZnQgTWlpcmEgbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4KICBEZXIgSG9oZXByaWVzdGVyIHZlcmZlaGx0IE1paXJhLgogIE1paXJhcyBSaW5nIHNjaGllc3N0IGVpbmUgUGZlaWxzcGl0emUgYXVmIGVpbmVuIEhvaGVwcmllc3Rlci4KRWluIEZvcmUtUHJpZXN0ZXIga29tbXQgYW4uCiAgTWlpcmEgZ3JlaWZ0IGRlbiBIb2hlcHJpZXN0ZXIgbWl0IGVpbmVtIFNhZWJlbCBhbi4KICBNaWlyYSBrcmF0enQgZGVuIEhvaGVwcmllc3Rlci4KICBEZXIgSG9oZXByaWVzdGVyIGdyZWlmdCBNaWlyYSBtaXQgYmxvc3NlbiBIYWVuZGVuIGFuLgogIERlciBIb2hlcHJpZXN0ZXIgdmVyZmVobHQgTWlpcmEuCiAgTWlpcmFzIFJpbmcgc2NoaWVzc3QgZWluZSBQZmVpbHNwaXR6ZSBhdWYgZWluZW4gSG9oZXByaWVzdGVyLgpEdSBoYXN0IGpldHp0IDE0NyBMZWJlbnNwdW5rdGUgdW5kIDEwMCBNYWdpZXB1bmt0ZS4KICBNaWlyYSBncmVpZnQgZGVuIEhvaGVwcmllc3RlciBtaXQgZWluZW0gU2FlYmVsIGFuLgogIE1paXJhIHRyaWZmdCBkZW4gSG9oZXByaWVzdGVyIGhhcnQuCiAgRGVyIEhvaGVwcmllc3RlciBncmVpZnQgTWlpcmEgbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4KICBEZXIgSG9oZXByaWVzdGVyIHZlcmZlaGx0IE1paXJhLgogIE1paXJhcyBSaW5nIHNjaGllc3N0IGVpbmUgUGZlaWxzcGl0emUgYXVmIGVpbmVuIEhvaGVwcmllc3Rlci4KRWluIEhvaGVwcmllc3RlciB2ZXJzY2h3aW5kZXQgZWluZmFjaC4KTWlpcmEgZ2VodCBuYWNoIFdlc3Rlbi4KTWlpcmEga29tbXQgYW4uCmxhY2gKRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgo+IEtsaW5nZSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpUYWthbiBrcmF0enQgc2ljaCBhbSBLb3BwLgogIER3aWdodCBncmVpZnQgTWlpcmEgbWl0IGVpbmVtIGdlbHVuZ2VuZW4gT3Rvc2hpLXNodXRvLXVjaGkgYW4uCiAgRHdpZ2h0IHRyaWZmdCBNaWlyYSBzZWhyIGhhcnQuCkFlbGwgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KRHUgaGFzdCBqZXR6dCAxNDggTGViZW5zcHVua3RlIHVuZCAxMDEgTWFnaWVwdW5rdGUuCiAgTWlpcmEgZ3JlaWZ0IER3aWdodCBtaXQgZWluZW0gU2FlYmVsIGFuLgogIER3aWdodCB3ZWhydCBNaWlyYXMgQW5ncmlmZiBtaXQgZWluZW0gU290by11ZGUtdWtlIGFiLgogIE1paXJhIHZlcmZlaGx0IER3aWdodC4KICBEd2lnaHQgZ3JlaWZ0IE1paXJhIG1pdCBlaW5lbSBnZWx1bmdlbmVuIFlhbWEtenVraSBhbi4KICBEd2lnaHQgdHJpZmZ0IE1paXJhIGhhcnQuClJhZmFlbCBzYWd0OiBIaSwgRm9yaS4KRHdpZ2h0IHNjaHJlaXRldCBhdWYgZGVyIFN1Y2hlIG5hY2ggbmV1ZW4gUml0dGVybiBuYWNoIFdlc3Rlbi4KUmFmZmkgZGVua3QgICAuIG8gTyAoaWNoIHdpbGwgbm9jaCBlaW4gcGFhciBzbyBzY2hvZW5lIHByaWVzdGVycGFlc3NlIHNlaGVuIC0Kb2IKIGRhcyBoaWVyIGF1ZiBEU0Yga29tbXQgPykKQmVuZGVpZ2lkIHN0aWZ0ZXQgRnJpZWRlbi4KSm9mIGtvbW10IGFuLgpEd2lnaHQgc2NobGFlZ3QgRGljaCB6dW0gUml0dGVyIGRlciBTY2h3YWZlbHJ1bmRlLgpEd2lnaHQgc2NocmVpdGV0IGF1ZiBkZXIgU3VjaGUgbmFjaCBuZXVlbiBSaXR0ZXJuIG5hY2ggV2VzdGVuLgp6aWVoZSBoZWxtIGF1cwpEdSBlbnRmZXJuc3QgZGVuIEhlbG0gdW5kIHdpcnN0IHdpZWRlciB6dSBHb0x1bS4KV2llIGJpdHRlPwo+IEplbWFuZCBzdGlmdGV0IEZyaWVkZW4uCkR1IGhhc3QgamV0enQgMTQ5IExlYmVuc3B1bmt0ZSB1bmQgMTAyIE1hZ2llcHVua3RlLgpzYWdlIEhBTExPIFNQSU5OVCBJSFIgREFTIElTVCBET0NIIE5FIEhPQ0haRUlUIFVORCBLRUlOIE1BU1NFTkdSQUIKUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEVuZ3l3dWNrLgpFbmd5d3VjayBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpHdWxkdWthdCBzYWd0OiBncm9zc2VyIEdvdHQKSm9mIHNhZ3Q6IFdhcyBoYWJ0IGlociB2b3I/Pz8KRHdpZ2h0IHJ1ZnQ6IHNvcnJ5Ck1hZ251bSBzYWd0OiBIRUlSQVRFTgpEdSBoYXN0IGpldHp0IDE1MCBMZWJlbnNwdW5rdGUgdW5kIDEwMyBNYWdpZXB1bmt0ZS4KUmFmYWVsIGtudWRkZWx0IEpvZiwgTWlpcmEsIERpY2gsIE15c2VsZiwgSG9sZGVuLCBSYWZmaSwgVnJhaSwgVG9zcywgS2hpZGFyLApEcml6enQsIFRoaW5nb2wsIFRpZ2EsIFRha2FuLCBFbmd5d3VjaywgU2xhLCBTdHJhcHBlciwgTWFnbnVtLCBQZW5lbG9wZSwKQmVuZGVpZ2lkIHVuZCBHdWxkdWthdCB1bSB6dSBwcnVlZmVuLCB3ZXIgc2ljaCBoaWVyIGFsbGVzIHNvIHJ1bSB0dW1tZWx0LgpEb20gQmVuZGVpZ2lkIHNhZ3Q6IGljaCBmYXNzIGVzbmljaHQKSm9mIHNhZ3Q6IEljaCBtZWluZSBEd2lnaHQKVGFrYW4gc2FndDogbmFqClBlbmVsb3BlIGh1ZXBmdCBndXQgZ2VsYXVudCBuYWNoIG5hY2ggV2VzdGVuLgpEdSBzYWdzdDogSEFMTE8gU1BJTk5UIElIUiBEQVMgSVNUIERPQ0ggTkUgSE9DSFpFSVQgVU5EIEtFSU4gTUFTU0VOR1JBQgo+IERvbSBCZW5kZWlnaWQgc2FndDogZGEga2xvcHBlbiBkaWUgc2ljaCBoaWVyLi4KRHUgaGFzdCBqZXR6dCAxNTEgTGViZW5zcHVua3RlIHVuZCAxMDQgTWFnaWVwdW5rdGUuClRha2FuIHNhZ3Q6IG5hamEKSm9mIG5pY2t0IHp1c3RpbW1lbmQuClRha2FuIHp1Y2t0IHJhdGxvcyBtaXQgZGVuIFNjaHVsdGVybi4KSm9mIHNhZ3Q6IFRzdHN0cwpNaWlyYSBzYWd0OiAuLi4uLi4uLi4uLi4uLi4uKnNldWZ6CkJlcnRyYW0gZGVua3QsIGRhc3MgaWhuIG5vY2ggbmllbWFuZCBiZW1lcmt0IGhhdC4KRHUgaGFzdCBqZXR6dCAxNTIgTGViZW5zcHVua3RlIHVuZCAxMDUgTWFnaWVwdW5rdGUuCkpvZiBnZWh0LgpNYWdudW0gZ3JpbnN0IERpY2ggYW4uCk1paXJhIHNldWZ6dCBhYmdydW5kdGllZi4KRHUgaGFzdCBqZXR6dCAxNTMgTGViZW5zcHVua3RlIHVuZCAxMDYgTWFnaWVwdW5rdGUuClJhZmZpIGtudWRkZWx0IEJlcnRyYW0uClRha2FuIGtudWRkZWx0IEJlcnRyYW0uClRha2FuIGRlbmt0ICAgLiBvIE8gKGRlbmtzdGUpClRha2FuIGdyaW5zdCBCZXJ0cmFtIGFuLgpEdSBoYXN0IGpldHp0IDE1NCBMZWJlbnNwdW5rdGUgdW5kIDEwNyBNYWdpZXB1bmt0ZS4KRW5neXd1Y2sgd2VpbHQgd2llZGVyIHVudGVyIGRlbiBMZWJlbmRlbi4KRW5neXd1Y2sgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgpNaWlyYSBmcmFndCBNYWdudW06IFNpbmQgZGFzIGRlaW5lIEZyZXVuZGU/ClJhZmZpIHdpbmt0IEJlcnRyYW0gOiBkYSBiaXN0IGR1IGphIHp1LgpUYWthbiBkZW5rdCAgIC4gbyBPIChudXIgbmljaCBiZWFjaHRldCA6KSkpKQpuaWNrIG1paXJhCkR1IGhhc3QgamV0enQgMTU1IExlYmVuc3B1bmt0ZSB1bmQgMTA4IE1hZ2llcHVua3RlLgpEdSBuaWNrc3QgTWlpcmEgenUuCj4gKioqIERpZXNlciBSYXVtIHdpcmQgZ2VyYWRlIG5ldSBnZWxhZGVuICoqKgpWcmFpIHNhZ3Q6IEJldHRyYW0gd2FyIGRhcyBtaXQgZGVtIGFnZ3Jlc3NpdmVuIFByaWVzdGVyClJhZmFlbCB0cm9lc3RldCBNaWlyYS4KR3VsZHVrYXQgbmlja3QgTWlpcmEgenUuCkR1IGhhc3QgamV0enQgMTU2IExlYmVuc3B1bmt0ZSB1bmQgMTA5IE1hZ2llcHVua3RlLgpzYWdlIGljaCBzY2hvbiA7KQpHdWxkdWthdCB2ZXJsYWVzc3QgZGllIEJydWVja2UgbmFjaCBIYXVzZS4KRHUgc2Fnc3Q6IGljaCBzY2hvbiA7KQo+IER1IGhhc3QgamV0enQgMTU3IExlYmVuc3B1bmt0ZSB1bmQgMTEwIE1hZ2llcHVua3RlLgpBbHBldHJhZyBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpHdWxkdWthdCBydWZ0OiBBdHRlbnRpb24gb24gRGVjay4KQmVydHJhbSBkZW5rdCwgZGFzcyBzZWluZSBBYndlc2VuaGVpdCBuaWNodCBhdWZmYWVsbHQuClRvc3Mgc2FndDogd29sbG4gbWVyIHNlIHJlaW5sYXNzZSA/PwpEdSBoYXN0IGpldHp0IDE1OCBMZWJlbnNwdW5rdGUgdW5kIDExMSBNYWdpZXB1bmt0ZS4Ka251ZGRsZSBhbGxlCkR1IGhvZXJzdCBkaWUgR2xvY2tlbiBkZXIgS2FwZWxsZSBpbiBkZXIgVW50ZXJ3ZWx0LgpNaWlyYSB1bmQgTWFnbnVtIHdvbGxlbiBoZWlyYXRlbi4KRGllIEdsb2NrZW4gbGFldXRlbi4KVGFrYW4gc2NobXVuemVsdC4KUmFmYWVsIG5pY2t0IFRvc3MgenUuCkR1IGtudWRkZWxzdCBHdWxkdWthdCwgQmVuZGVpZ2lkLCBNYWdudW0sIFN0cmFwcGVyLCBTbGEsIEVuZ3l3dWNrLCBUYWthbiwKVGlnYSwgVGhpbmdvbCwgRHJpenp0LCBSYWZhZWwsIEtoaWRhciwgVG9zcywgVnJhaSwgUmFmZmksIEhvbGRlbiwgTXlzZWxmLApNaWlyYSB1bmQgZWluZW4gUHJpZXN0ZXIuCj4gRG9tIEJlbmRlaWdpZCBzYWd0OiB1ZmZmZmZmZmZmZmZmZmZmZmZmZgpLaGlkYXIgc2FndDogZGFzIGthbm4gbmljaHQgd3dhaHIgc2Vpbi4uLgpLaGlkYXIgZ3J1bW1lbHQuCkR1IGhhc3QgamV0enQgMTU5IExlYmVuc3B1bmt0ZSB1bmQgMTEyIE1hZ2llcHVua3RlLgpzYWdlIFJVVVVVVVVVVUhISEhISEhISEhISEhXV1dFRUVFRUVFRUVFRUVFRUVFRUVFClRha2FuIGtudWRkZWx0IEd1bGR1a2F0LCBCZW5kZWlnaWQsIE1hZ251bSwgU3RyYXBwZXIsIFNsYSwgRW5neXd1Y2ssIFRpZ2EsClRoaW5nb2wsIERyaXp6dCwgUmFmYWVsLCBLaGlkYXIsIFRvc3MsIFZyYWksIFJhZmZpLCBIb2xkZW4sIE15c2VsZiwgRGljaCwKTWlpcmEgdW5kIGVpbmVuIFByaWVzdGVyLgpEb20gQmVuZGVpZ2lkIHNhZ3Q6IGxvcyBnZWh0cy4gaG9mZmVudGxpY2gKRGVyIFByaWVzdGVyIHNjaHVldHRlbHQgbWl0IGRlbSBLb3BmOiBBbGxlIGR1cmNoZ2VrbmFsbHQgaGllci4KRHUgc2Fnc3Q6IFJVVVVVVVVVVUhISEhISEhISEhISEhXV1dFRUVFRUVFRUVFRUVFRUVFRUVFCj4gRHUgaGFzdCBqZXR6dCAxNjAgTGViZW5zcHVua3RlIHVuZCAxMTMgTWFnaWVwdW5rdGUuCkVpbnNwcnVjaCEKQmVuZGVpZ2lkIGRydWVja3QgZGllIGRhdW1lbgpEdSBoYXN0IGpldHp0IDE2MSBMZWJlbnNwdW5rdGUgdW5kIDExNCBNYWdpZXB1bmt0ZS4KTWlpcmEgeml0dGVydCB2b3IgQW5nc3QuCkR1IGhhc3QgamV0enQgMTYyIExlYmVuc3B1bmt0ZSB1bmQgMTE1IE1hZ2llcHVua3RlLgpLaGlkYXIgc2FndDogc2l0enQgaWhyIGd1dD8KR3VsZHVrYXQgbmltbXQgd2V0dGVuIGFuOiAxOjEwLCBkYXNzICBlcyBuaWNodCBrbGFwcHQuCkhvbGRlbiBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgSG9sZGVuLgpIb2xkZW4gaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KRHUgaGFzdCBqZXR6dCAxNjMgTGViZW5zcHVua3RlIHVuZCAxMTYgTWFnaWVwdW5rdGUuClRha2FuIHNjaGxpZXNzdCBwbG9ldHpsaWNoIGRpZSBBdWdlbiB1bmQgZm9ybXQgdmVydHJhZXVtdCBlaW5lbiBLdXNzCm1pdCBzZWluZSBMaXBwZW4uIEt1cnogZGFuYWNoIHNjaGVpbnQgamVkb2NoIGFsbGVzIHZvcmJlaSB1bmQgVGFrYW4Kc2V1Znp0IG51ciBub2NoIGVpbm1hbCBzZWhuc3VlY2h0aWcuCkR1IGhhc3QgamV0enQgMTY0IExlYmVuc3B1bmt0ZSB1bmQgMTE3IE1hZ2llcHVua3RlLgpEb20gQmVuZGVpZ2lkIHNhZ3Q6IGd1bGR1a2F0IGhhdCByZWNodCEgZHUgU0FDSyEhClJhZmZpIHNhZ3Q6IHNldHplIDEwMDAgTXVlbnplbgoqKiogRGllc2VyIFJhdW0gd2lyZCBnZXJhZGUgbmV1IGdlbGFkZW4gKioqCkRlaW4gRnJldW5kIFRoaW5nb2wgdGVpbHQgRGlyIG1pdDogdW5kIHRzY2h1ZXNzIQpEZWluIEZyZXVuZCBUaGluZ29sIHRlaWx0IERpciBtaXQ6IHRzY2h1ZXNzClRoaW5nb2wgdmVyc2Nod2luZGV0IG5hY2ggSGF1c2UuClRoaW5nb2wgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KcncxIHRoaW5nb2wKRHUgaGFzdCBqZXR6dCAxNjUgTGViZW5zcHVua3RlIHVuZCAxMTggTWFnaWVwdW5rdGUuCkRpZXNlciBTcGllbGVyIHNjaGVpbnQgbmljaHQgZGEgenUgc2Vpbi4KPiBFYmVuc28gdW5hdWZmYWVsbGlnLCB3aWUgZXIgZ2Vrb21tZW4gaXN0LCB2ZXJzY2h3aW5kZXQgRHJpenp0IG5hY2ggSGF1c2UuCkR1IGhvZXJzdCBkaWUgR2xvY2tlbiBkZXIgS2FwZWxsZSBpbiBkZXIgVW50ZXJ3ZWx0LgpNaWlyYSB1bmQgTWFnbnVtIHdvbGxlbiBoZWlyYXRlbi4KRGllIEdsb2NrZW4gbGFldXRlbi4KSmFpciBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpzYWdlIGVuZGxpY2ggOykgKmZyZXUqCkR1IGhhc3QgamV0enQgMTY2IExlYmVuc3B1bmt0ZSB1bmQgMTE5IE1hZ2llcHVua3RlLgpEb20gQmVuZGVpZ2lkIHNhZ3Q6IG5vY2htYWwKTWlpcmEgc2FndDogR3VsZHVrYXQsIGljaCBiaW4gbWlyIG5pY2h0IHNpY2hlciwgYWJlciBpY2ggZ2xhdWJlLCBpY2ggaGFzc2UKTWlpcmEgc2FndDogZGljaC4KRHUgc2Fnc3Q6IGVuZGxpY2ggOykgKmZyZXUqCj4gR3VsZHVrYXQgc3RlbGx0IFJhZmZpIGVpbmVuIEJvbiBhdXMgdW5kIHNhZ3Q6IDEwMDAgbXVuZXplbgpEcml6enQgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KRHJpenp0ICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpEdSBoYXN0IGpldHp0IDE2NyBMZWJlbnNwdW5rdGUgdW5kIDEyMCBNYWdpZXB1bmt0ZS4KUmFmYWVsIGdyaW5zdC4KRG9tIEJlbmRlaWdpZCBzYWd0OiB1bmQgR3VsZGksIHdlbm4gZHUgZGFzIG5vY2htYWwgbWFjaHN0LCB6YXAgaWNoIGRpY2gKRHUgaGFzdCBqZXR6dCAxNjggTGViZW5zcHVua3RlIHVuZCAxMjEgTWFnaWVwdW5rdGUuCkRpZSBHbG9ja2VuIGRlciBLYXBlbGxlIGluIGRlciBVbnRlcndlbHQgbGFldXRlbi4KRmVscyBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpGZWxzICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpUb3NzIHNhZ3Q6IGtvbW0sIGd1bGR1LCBsYXNzIGVzIGxpZWJlcgpHdWxkdWthdCBzYWd0OiBoZSwgaWNoIGhhYnMgZWlubWFsIHVudGVyYm9yY2hlbiwgYWxzIGljaCBlaW4gc3BydSBnZWRhY2h0Ckd1bGR1a2F0IHNhZ3Q6IGhhYmUhCkR1IGhhc3QgamV0enQgMTY5IExlYmVuc3B1bmt0ZSB1bmQgMTIyIE1hZ2llcHVua3RlLgpTdGVpbiBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpEdSBoYXN0IGpldHp0IDE3MCBMZWJlbnNwdW5rdGUgdW5kIDEyMyBNYWdpZXB1bmt0ZS4KRG9tIEJlbmRlaWdpZCBzYWd0OiBuaXggZGEuLi4gd2VyIHphcHQgZGF1ZXJuZCBkZW4gUHJpZXN0ZXIsIGhtPwpFaW5zcHJ1Y2ghCkRpZSBQZm9ydGUgd2lyZCBnZXNjaGxvc3Nlbi4KRGVyIFByaWVzdGVyIHNhZ3Q6IFNlaHIgZ2VlaHJ0ZSBBbndlc2VuZGUsCkRlciBQcmllc3RlciBzYWd0OiB3aXIgc2luZCBoZXV0ZSBoaWVyIHp1c2FtbWVuZ2Vrb21tZW4sIHVtIGRpZSBIb2NoemVpdApEZXIgUHJpZXN0ZXIgc2FndDogdm9uIE1hZ251bSB1bmQgTWlpcmEgenUgZmVpZXJuLgpEdSBoYXN0IGpldHp0IDE3MSBMZWJlbnNwdW5rdGUgdW5kIDEyNCBNYWdpZXB1bmt0ZS4KSm9mIGtvbW10IGFuLgpSYWZmaSByb3RmbHQuCkRvbSBCZW5kZWlnaWQgc2FndDogdW5kIGRpZSBlY2hvcyBraWxsIGljaCBhdWNoIGdsZWljaCEKRHUgaGFzdCBqZXR6dCAxNzIgTGViZW5zcHVua3RlIHVuZCAxMjUgTWFnaWVwdW5rdGUuCmZyZXUKRG9tIEJlbmRlaWdpZCBzYWd0OiBhbHNvIHJ1aGUuIGVpbiBiaXNjaGVuIEVyaGFiZW5oZWl0IQpEdSBmcmV1c3QgRGljaCA6KSA7KSA7PSkgOi0pIDstKT0gKC04IDstPTAuCj4gRGVyIFByaWVzdGVyIGRyZWh0IHNpY2ggenVtIEFsdGFyLgpQcmllc3RlciBvZWZmbmV0IGRhcyBCdWNoIGRlciBMaWViZW5kZW4uCkRlciBQcmllc3RlciBzdHVkaWVydCBkYXMgQnVjaCBkZXIgTGllYmVuZGVuLgpEdSBoYXN0IGpldHp0IDE3MyBMZWJlbnNwdW5rdGUgdW5kIDEyNiBNYWdpZXB1bmt0ZS4KRG9tIEJlbmRlaWdpZCBzYWd0OiB3ZWhlLi4uLi4uClJhZmZpIHJvdGZsdCBnYW56IGVyaGFiZW4uCkRlciBQcmllc3RlciBzYWd0OiBEYSBrZWluZXIgdm9uIGJlaWRlbiBpbSBCdWNoIGRlciBMaWViZW5kZW4gc3RlaHQsCkRlciBQcmllc3RlciBzYWd0OiB1bmQgZGVyIE1hZ2llciBCZW5kZWlnaWQgZGllIEVoZSBiZWZ1ZXJ3b3J0ZXQsCkRlciBQcmllc3RlciBzYWd0OiBzdGVodCBkZXIgRWhlc2NobGllc3N1bmcgbmljaHRzIG1laHIgaW0gV2VnLgpEZXIgUHJpZXN0ZXIgc2FndDogRXMgc2VpbiBkZW5uLCBlaW5lciBkZXIgQW53ZXNlbmRlbiBoYXQgZWluZW4gRWluc3BydWNoLgpEZXIgUHJpZXN0ZXIgc2FndDogSXN0IGRlbSBzbywgc28gc2FnZSBlciBudW4gJ0VpbnNwcnVjaCcgb2RlciBzY2h3ZWlnZQpEZXIgUHJpZXN0ZXIgc2FndDogZnVlciBpbW1lci4KR3VsZHVrYXQgZGVua3QgICAuIG8gTyAob2JzIHdhcyB3aXJkPykKS2hpZGFyIHNhZ3Q6IHdlaGUgd2FzPwpHdWxkdWthdHMgV29scGVydGluZ2VyIHNhZ3Q6IEVpbnNwcnVjaApEdSBoYXN0IGpldHp0IDE3NCBMZWJlbnNwdW5rdGUgdW5kIDEyNyBNYWdpZXB1bmt0ZS4KRW5neXd1Y2sgc2FndDogSmV0enQgYmxvc3Mga2VpbiBFaW5zcHJ1Y2guCkd1bGR1a2F0IHNhZ3Q6IGhlCkRvbSBCZW5kZWlnaWQgc2FndDogQVJHSCEhISEhISEhISEhIQpNb3JnZW5HcmF1ZW4gc2l0enQgZW50c3Bhbm50IGF1ZiBkZXIgQmFuay4KRHUgaGFzdCBqZXR6dCAxNzUgTGViZW5zcHVua3RlIHVuZCAxMjggTWFnaWVwdW5rdGUuClRha2FuIHJvdGZsdC4KR3VsZHVrYXQgc2FndDogZGFzIHdhciBpY2ggbmljaHQhClRvc3MgYXJnbHQgZWluIHdlbmlnIHZvciBzaWNoIGhpbi4Kcm90ZmwKRHUgcm90ZmxzdC4KPiBEb20gQmVuZGVpZ2lkIHNhZ3Q6IGRlciBtaXN0a2VybCB0cmlnZ2VydCBkYXMhISEKVG9zcyBzYWd0OiBtYW5ub21ldGVyCkR1IGhhc3QgamV0enQgMTc2IExlYmVuc3B1bmt0ZSB1bmQgMTI5IE1hZ2llcHVua3RlLgpEZXIgUHJpZXN0ZXIgc2FndDogTmFjaGRlbSBUb3NzIEVpbnNwcnVjaCBnZWdlbiBkaWUgRWhlCkRlciBQcmllc3RlciBzYWd0OiBlaW5nZWxlZ3QgaGF0LCBrYW5uIGljaCBsZWlkZXIgZGllIEVoZSBuaWNodCBnZXN0YXR0ZW4uCkRlciBQcmllc3RlciBzYWd0OiBLbGFlcnQgZXJzdCBtaXQgVG9zcyBkZW4gR3J1bmQgdW5kIGJlZ2lubnQKRGVyIFByaWVzdGVyIHNhZ3Q6IGRhbm4gbm9jaG1hbCBtaXQgZGVyIFplcmVtb25pZS4KUHJpZXN0ZXIgc2NobGllc3N0IGRhcyBCdWNoIGRlciBMaWViZW5kZW4uCkRlciBQcmllc3RlciBzYWd0OiBHZWhldCBudW4gaGluIGluIEZyaWVkZW4uCgpEZXIgUHJpZXN0ZXIgb2VmZm5ldCBkaWUgUGZvcnRlLgpEdSBoYXN0IGpldHp0IDE3NyBMZWJlbnNwdW5rdGUgdW5kIDEzMCBNYWdpZXB1bmt0ZS4KVG9zcyBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KVGFrYW4gZGVua3QgICAuIG8gTyAod2VyIHRyaWdnZXJ0KQpEb20gQmVuZGVpZ2lkIHNhZ3Q6IGVuZ3kgZGVzZ2xlaWNoZW4KVG9zcyBzYWd0OiBuYSBnZWlsICEKVG9zcyBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KKioqIERpZXNlciBSYXVtIHdpcmQgZ2VyYWRlIG5ldSBnZWxhZGVuICoqKgpUb3NzIHdhZWx6dCBzaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KRHUgaGFzdCBqZXR6dCAxNzggTGViZW5zcHVua3RlIHVuZCAxMzEgTWFnaWVwdW5rdGUuCiAgTWFnbnVtIGdyZWlmdCBUb3NzIG1pdCBlaW5lbSBCbHV0c2F1Z2VyLVNjaHdlcnQgYW4uCiAgTWFnbnVtIHRyaWZmdCBUb3NzIGhhcnQuCiAgVG9zcyBncmVpZnQgTWFnbnVtIG1pdCBibG9zc2VuIEhhZW5kZW4gYW4uCiAgVG9zcyBrcmF0enQgTWFnbnVtLgpSYWZhZWwgZ3JpbnN0LgpLaGlkYXIgZ3J1bW1lbHQuCiAgTWFnbnVtIGdyZWlmdCBUb3NzIG1pdCBlaW5lbSBCbHV0c2F1Z2VyLVNjaHdlcnQgYW4uCiAgTWFnbnVtIHRyaWZmdCBUb3NzIHNlaHIgaGFydC4KICBUb3NzIGdyZWlmdCBNYWdudW0gbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4KICBUb3NzIHZlcmZlaGx0IE1hZ251bS4KICBNYWdudW0gZ3JlaWZ0IFRvc3MgbWl0IGVpbmVtIEJsdXRzYXVnZXItU2Nod2VydCBhbi4KICBNYWdudW0gdHJpZmZ0IFRvc3MuCiAgVG9zcyBncmVpZnQgTWFnbnVtIG1pdCBibG9zc2VuIEhhZW5kZW4gYW4uCiAgVG9zcyB2ZXJmZWhsdCBNYWdudW0uCkpvZiBzdGlmdGV0IEZyaWVkZW4uCj5NaWlyYSBmYWVsbHQgdG90IHp1IEJvZGVuClRvc3MgZ2VodCBnYW56IGNvb2wgd2VpdGVyIG5hY2ggV2VzdGVuLgpHdWxkdWthdCBzdGlmdGV0IEZyaWVkZW4uClRha2FuIHNhZ3Q6IHNvIGxldXRlIG51IG1hY2h0IG1hbCBsYW5nc2FtIGhpbm5lClRvc3Mga29tbXQgZ2FueiBsYWVzc2lnIHJlaW5nZXNjaGxlbmRlcnQuCkpvZiBzYWd0OiBXYXMgaXN0IGRhcz8KRHUgaGFzdCBqZXR6dCAxNzkgTGViZW5zcHVua3RlIHVuZCAxMzIgTWFnaWVwdW5rdGUuCnUKVG9zcyBzYWd0OiBoZXkKV2llIGJpdHRlPwo+IGZpbmdlciBtaWlyYQpUYWthbiBzYWd0OiBpY2ggbXVzcyB1bSAyMiB3ZWcKRHUgaG9lcnN0IGRpZSBHbG9ja2VuIGRlciBLYXBlbGxlIGluIGRlciBVbnRlcndlbHQuCk1paXJhIHVuZCBNYWdudW0gd29sbGVuIGhlaXJhdGVuLgpEaWUgR2xvY2tlbiBsYWV1dGVuLgpNaWlyYSBpc3QgZWluZ2Vsb2dndCwKdW5kIHp3YXIgdm9uOiBMdWVuZWJ1cmcuClZvbGxlciBOYW1lOiBNaWlyYSBzaXR6dCBlbnRzcGFubnQgYXVmIGRlciBCYW5rClJhc3NlOiBad2VyZywgICAgR2VzY2hsZWNodDogd2VpYmxpY2ggICBTcGllbGVybGV2ZWw6IDEyClNlaXQgZGVtIDMwLjExLic5NCBiZXJlaXRzIDcgbWFsIGdlc3RvcmJlbgo+IEpvZiBzYWd0OiBXYXMgd2FyIGRhcz8/PwpEdSBoYXN0IGpldHp0IDE4MCBMZWJlbnNwdW5rdGUgdW5kIDEzMyBNYWdpZXB1bmt0ZS4KUmFmYWVsIGxvZXNjaHQgZWluZSBGYWNrZWwgYXVzLgpUb3NzIGRldXRldCBhdWYgTWFnbnVtLgpUb3NzIHp1Y2t0IHJhdGxvcyBtaXQgZGVuIFNjaHVsdGVybi4KW0FiZW50ZXVlcjpGcm9zY2ggU3ZlYXJdIHN1Y2hlIG5hY2ggc3ludGF4IHNjaHdlcnQvaGV4ZSBiZWltIHNjaG5lZXdpdHRjaGVuCltBYmVudGV1ZXI6RnJvc2NoIFN2ZWFyXSBxdWVzdApEdSBoYXN0IGpldHp0IDE4MSBMZWJlbnNwdW5rdGUgdW5kIDEzNCBNYWdpZXB1bmt0ZS4KUmFmZmkgbG9lc2NodCBlaW5lIEZhY2tlbCBhdXMuCkd1bGR1a2F0IHNhZ3Q6IHRvc3MgaGF0dGUgZWluIGVjaG86IGd1bGR1a2F0cyB3b2xwaSBzYWd0OiBlaW4gc3AgcnUgY2gKVG9zcyBzYWd0OiBzb3JyeSwgYmluIGdsZWljaCByYXVzZ2VyYW5udCwgYWxzIGVyIGFuZmluZwpEb20gQmVuZGVpZ2lkIHNhZ3Q6IG1hZ251bSwgYmVuaW1tIGRpY2guIGhpZXIgd2lyZCBuaWNodCBnZW1ldHp0ZWx0CktoaWRhciBzYWd0OiBsYXNzdCBkaWUgc2NoZXJ6ZSwgdG9zcyBrcmllZ3QgaWhyIGVoIG5pY2h0IHNvIGxlaWNodCB0b3QuLi4KRHUgaGFzdCBqZXR6dCAxODIgTGViZW5zcHVua3RlIHVuZCAxMzUgTWFnaWVwdW5rdGUuCkRpZSBHbG9ja2VuIGRlciBLYXBlbGxlIGluIGRlciBVbnRlcndlbHQgbGFldXRlbi4KMSBTcHJ1Y2gKVG9zcyBncmluc3QgR3VsZHVrYXQgYW4uClRvc3MgZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KRHUgaGFzdCBqZXR6dCAxODMgTGViZW5zcHVua3RlIHVuZCAxMzYgTWFnaWVwdW5rdGUuCjIgc3BydWNoCkRvbSBCZW5kZWlnaWQgc2FndDogaWNoIG11c3MgYXVjaCB1bSAxMCwgYWxvcyBSVUhFISEhISEhISEhISEhIQpUYWthbiBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KRHUgaGFzdCBqZXR6dCAxODQgTGViZW5zcHVua3RlIHVuZCAxMzcgTWFnaWVwdW5rdGUuCkVpbnNwcnVjaCEKYXJmClZyYWkgc2FndDogQWNoLCBpY2ggdmVybG9yIG1pY2ggc2VsYnN0OyBpY2ggYmluIG5pY2h0IFZyYWkuClZyYWkgc2FndDogRXIgaXN0IG5pY2h0IGhpZXI6IGVyIGlzdCAtIGljaCB3ZWlzcyBuaWNodCB3by4KKFZyYWkgYWIuKS4KV2llIGJpdHRlPwo+IGFyZ2wKRHUgYXJnbHN0IGVpbiB3ZW5pZyB2b3IgRGljaCBoaW4uCj4gRG9tIEJlbmRlaWdpZCBzYWd0OiBhbHNvCkR1IGhhc3QgamV0enQgMTg1IExlYmVuc3B1bmt0ZSB1bmQgMTM4IE1hZ2llcHVua3RlLgpHdWxkdWthdCBzYWd0OiBqb2YsIGRhcyBpc3QgYWJlciBlaW4gYmxlb2RlciByYXVtIGljaCBoYWIgZWluYnJ1Y2ggZ2VkYWNodCwKR3VsZHVrYXQgc2FndDogdW5kIGRlciBwcmllc3RlciBzcGllbHQgZGllIGxlYmVyd3Vyc3QKTWVyaWFkIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KR3VsZHVrYXQgYWt0aXZpZXJ0IHNlaW5lbiBUcmljb3JkZXIgdW5kIGZ1ZWhydCBlaW5lbiBMYW5ncmVpY2h3ZWl0ZW4tU2NhbgpkdXJjaC4KRHUgaGFzdCBqZXR6dCAxODYgTGViZW5zcHVua3RlIHVuZCAxMzkgTWFnaWVwdW5rdGUuClRha2FuIHdhZWx6dCBzaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KRG9tIEJlbmRlaWdpZCBzYWd0OiBzdGltbXQKVGFrYW4gZGVua3QgICAuIG8gTyAoZGFzIGdpYnRzIGRvaWNoIG5pY2gpCkR1IGhhc3QgamV0enQgMTg3IExlYmVuc3B1bmt0ZSB1bmQgMTQwIE1hZ2llcHVua3RlLgpNZXJpYWQgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KUmFmZmkgbGFjaHQgZ2Fja2VyIHBydXN0LgpEb20gQmVuZGVpZ2lkIHNhZ3Q6IGtvZW5udCBpaHIgYWxsZSBtYWwgZGllIEtsYXBwZSBoYWx0ZW4sIGJpdHRlPwpUYWthbiBkZW5rdCAgIC4gbyBPICh1bmQgbWlyIGthbSBtZWluZSBob2ljaHplaWl0IHNjaG9uIGdyYXVzbWEgdm9yKQpkZW5pa2UKV2llIGJpdHRlPwo+IGRlbmtlIHNvd2FzIGhhYiBpY2ggamEgbm9jaCBuaWUgZXJsZWJ0CkR1IGhhc3QgamV0enQgMTg4IExlYmVuc3B1bmt0ZSB1bmQgMTQxIE1hZ2llcHVua3RlLgpEb20gQmVuZGVpZ2lkIHNhZ3Q6IGxldHp0ZXIgdmVyc3VjaApSYWZmaSBkZW5rdCAgIC4gbyBPICh1bmQgZXIgPykKKioqIERpZXNlciBSYXVtIHdpcmQgZ2VyYWRlIG5ldSBnZWxhZGVuICoqKgpUYWthbiBkZW5rdCAgIC4gbyBPIChhYmVyIGdlZ2VuIERBUyBISUVSKQpEdSBkZW5rc3QgICAuIG8gTyAoc293YXMgaGFiIGljaCBqYSBub2NoIG5pZSBlcmxlYnQpCj4gVG9zcyBzYWd0OiBtaXN0LCBlY2hvcyBnZWhlbiBoaWVyIG5pY2h0LCBkYXMgaXN0IGphIGdlbWVpbgpLaGlkYXIgc3RpZXJ0IGluendpc2NoZW4gTG9lY2hlciBpbiBkaWUgRGVja2UuClRvc3Mgc2V1Znp0LgpEdSBoYXN0IGpldHp0IDE4OSBMZWJlbnNwdW5rdGUgdW5kIDE0MiBNYWdpZXB1bmt0ZS4KUGVuZWxvcGUgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KUGVuZWxvcGUgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhClN0cmFwcGVyIHNhZ3Q6IEthbm4gbmljaHQgbWFsIGplbWFuZCB0b3NzIHVuZCBndWR1a2F0IHphcHBlbgpEdSBob2Vyc3QgZGllIEdsb2NrZW4gZGVyIEthcGVsbGUgaW4gZGVyIFVudGVyd2VsdC4KTWlpcmEgdW5kIE1hZ251bSB3b2xsZW4gaGVpcmF0ZW4uCkRpZSBHbG9ja2VuIGxhZXV0ZW4uClRha2FuIGRlbmt0ICAgLiBvIE8gKHdhciBkYXMpCnRyYWdlIGhlbG0gZWluIEdyYXR1bGFudApEdSBoYXN0IGpldHp0IDE5MCBMZWJlbnNwdW5rdGUgdW5kIDE0MyBNYWdpZXB1bmt0ZS4KVGlnYSBzYWd0OiBnZW5hdQpHdWFyZGlhbiBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpEdSBtdXNzdCBkYXMgR2VzY2hsZWNodCBtaXQgYW5nZWJlbiwgei5CLiB0cmFnZSBoZWxtIGRpZSBGZWUuCj4gVG9zcyBncmluc3QgU3RyYXBwZXIgYW4uCnRyYWdlIGhlbG0gZGVyIEdyYXR1bGFudApHdWxkdWthdCBzYWd0OiBoZSwgaGUKRHUgaGFzdCBqZXR6dCAxOTEgTGViZW5zcHVua3RlIHVuZCAxNDQgTWFnaWVwdW5rdGUuClRvc3Mgc2FndDogemFwcGVyIHN0cmFwcGVyClRha2FuIGRlbmt0ICAgLiBvIE8gKHdhciBkYXMgbmUgZ2VidXJ0c3RhZ3NwYXJ0eSA6KQpEdSBzcHJpY2hzdCBkaWUgbWFnaXNjaGVuIFdvcnRlIDogJ0RlbSBIYXVwdCBmdWVndCBzaWNoIGRlciBIZWxtLCBvYgpkZXIgc2ljaCBkZXIgWmF1YmVyIGF1Y2ggemVpZ3QgPyBOYWNodCB1bmQgTmViZWwsIG5pZW1hbmQgZ2xlaWNoICEnCkR1IGJpc3QgamV0enQgZWluIEdyYXR1bGFudCEKRHUgdHJhZWdzdCBiZXJlaXRzIGRpZSBLcmlzdGFsbGtyb25lIGFscyBTY2h1dHogZGVyIFNvcnRlIEhlbG0uCj4gTWlpcmEgZGVua3QgICAuIG8gTyAoaWNoIHdlcmQgbGVzYmlzY2gpCktoaWRhciBzYWd0OiBlcyB3dWVyZGUgcmVpY2hlbiwgYmVpZGUgaW5zIGphaWwgenUgc3RlY2tlbi4uLgpEdSBoYXN0IGpldHp0IDE5MiBMZWJlbnNwdW5rdGUgdW5kIDE0NSBNYWdpZXB1bmt0ZS4KRGllIEdsb2NrZW4gZGVyIEthcGVsbGUgaW4gZGVyIFVudGVyd2VsdCBsYWV1dGVuLgpUb3NzIHNhZ3Q6IG9raSwgYWxzbyBsYXNzdCBtYWwgYW5mYW5nZW4KRWluc3BydWNoIQpNdXBmZWwgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KSm9mIGdlaHQgbmFjaCBIYXVzZS4KUmFmZmkgZGVua3QgICAuIG8gTyAodW5kIGljaCBmcmF1KQpEdSBoYXN0IGpldHp0IDE5MyBMZWJlbnNwdW5rdGUgdW5kIDE0NiBNYWdpZXB1bmt0ZS4KTXVwZmVsIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KVGFrYW4gZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KRWluc3BydWNoIQpEdSBoYXN0IGpldHp0IDE5NCBMZWJlbnNwdW5rdGUgdW5kIDE0NyBNYWdpZXB1bmt0ZS4KRGllIFBmb3J0ZSB3aXJkIGdlc2NobG9zc2VuLgpEZXIgUHJpZXN0ZXIgc2FndDogU2VociBnZWVocnRlIEFud2VzZW5kZSwKRGVyIFByaWVzdGVyIHNhZ3Q6IHdpciBzaW5kIGhldXRlIGhpZXIgenVzYW1tZW5nZWtvbW1lbiwgdW0gZGllIEhvY2h6ZWl0CkRlciBQcmllc3RlciBzYWd0OiB2b24gTWFnbnVtIHVuZCBNaWlyYSB6dSBmZWllcm4uClRha2FuIGRlbmt0ICAgLiBvIE8gKG1hbm5vbWFubm9pbWFubm9tYW5uIGRhcyBrYW5uIGRvY2ggbmljaCB3YWhyIHNlaW4pCkhvbGRlbiBnZWh0IGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgpEdSBoYXN0IGpldHp0IDE5NCBMZWJlbnNwdW5rdGUgdW5kIDE0OCBNYWdpZXB1bmt0ZS4KRG9tIEJlbmRlaWdpZCBzYWd0OiB1ZmYKUmFmZmkgZGVua3QgICAuIG8gTyAoaG9jaHplaXQgZGllIDQuKQpEdSBoYXN0IGpldHp0IDE5NCBMZWJlbnNwdW5rdGUgdW5kIDE0OSBNYWdpZXB1bmt0ZS4KRGVyIFByaWVzdGVyIGRyZWh0IHNpY2ggenVtIEFsdGFyLgpQcmllc3RlciBvZWZmbmV0IGRhcyBCdWNoIGRlciBMaWViZW5kZW4uCkRlciBQcmllc3RlciBzdHVkaWVydCBkYXMgQnVjaCBkZXIgTGllYmVuZGVuLgo+VGFrYW4gaXN0IG51biBkb2NoIGV0d2FzIHppZW1saWNoIHNlaHIgYWV1c3NlcnN0IGZhc3N1bmdzbG9zCkRvbSBCZW5kZWlnaWQgc2FndDogamEsIHdlZ2VuIGV1Y2ghCkR1IGhhc3QgamV0enQgMTk0IExlYmVuc3B1bmt0ZSB1bmQgMTUwIE1hZ2llcHVua3RlLgpUYWthbiBzY2htdW56ZWx0LgpzYWdlIGljaCBuaWNodCA7KCkKRGVyIFByaWVzdGVyIHNhZ3Q6IERhIGtlaW5lciB2b24gYmVpZGVuIGltIEJ1Y2ggZGVyIExpZWJlbmRlbiBzdGVodCwKRGVyIFByaWVzdGVyIHNhZ3Q6IHVuZCBkZXIgTWFnaWVyIEJlbmRlaWdpZCBkaWUgRWhlIGJlZnVlcndvcnRldCwKRGVyIFByaWVzdGVyIHNhZ3Q6IHN0ZWh0IGRlciBFaGVzY2hsaWVzc3VuZyBuaWNodHMgbWVociBpbSBXZWcuCkRlciBQcmllc3RlciBzYWd0OiBFcyBzZWluIGRlbm4sIGVpbmVyIGRlciBBbndlc2VuZGVuIGhhdCBlaW5lbiBFaW5zcHJ1Y2guCkRlciBQcmllc3RlciBzYWd0OiBJc3QgZGVtIHNvLCBzbyBzYWdlIGVyIG51biAnRWluc3BydWNoJyBvZGVyIHNjaHdlaWdlCkRlciBQcmllc3RlciBzYWd0OiBmdWVyIGltbWVyLgpEb20gQmVuZGVpZ2lkIHNhZ3Q6IEdSUlJSUlJSUlJSClRha2FuIGRlbmt0ICAgLiBvIE8gKG9oaCkKRHUgc2Fnc3Q6IGljaCBuaWNodCA7KCkKPiBEdSBoYXN0IGpldHp0IDE5NCBMZWJlbnNwdW5rdGUgdW5kIDE1MSBNYWdpZXB1bmt0ZS4KRW5neXd1Y2sgc2FndDogaGN1cnBzbmllClBlbmVsb3BlIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KUGVuZWxvcGUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKR3VhcmRpYW4gaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgpUYWthbiBkZW5rdCAgIC4gbyBPIChkaWUgNC4gZXJzdCA/KQo6c2Nod2VpZ3QKPkVpbiBHcmF0dWxhbnQgc2Nod2VpZ3QKPiBEdSBoYXN0IGpldHp0IDE5NCBMZWJlbnNwdW5rdGUgdW5kIDE1MiBNYWdpZXB1bmt0ZS4KRG9tIEJlbmRlaWdpZCBzYWd0OiBlbmd5ISEhISEhISEKRGVyIFByaWVzdGVyIGlzdCBzaWNoIG5vY2ggbmljaHQgcmVjaHQgc2ljaGVyLCB3YXMgZGFzIHdlcmRlbiBzb2xsLgpEdSBoYXN0IGpldHp0IDE5NCBMZWJlbnNwdW5rdGUgdW5kIDE1MyBNYWdpZXB1bmt0ZS4KVGFrYW4ga251ZGRlbHQgRW5neXd1Y2suCkRlciBQcmllc3RlciBzYWd0OiBOYWNoZGVtIGtlaW5lciBkZXIgQW53ZXNlbmRlbiBlaW5lbiBFaW5zcHJ1Y2ggaGF0LCBmcmFnZQpEZXIgUHJpZXN0ZXIgc2FndDogaWNoIGRhcyBCcmF1dHBhYXIgZWluemVsbiwgb2IgU2llIGRlbiBhbmRlcmVuIGhlaXJhdGVuCkRlciBQcmllc3RlciBzYWd0OiB3b2xsZW4uIEFudHdvcnRldCBhdWYgZGllIEZyYWdlIG1pdCAnSmEnLgpEdSBoYXN0IGpldHp0IDE5NCBMZWJlbnNwdW5rdGUgdW5kIDE1NCBNYWdpZXB1bmt0ZS4KRW5neXd1Y2sgc2FndDogV293IQpEb20gQmVuZGVpZ2lkIHNhZ3Q6IHVmZmZmZmZmZmZmZmZmZgpSYWZmaSBkZW5rdCAgIC4gbyBPIChuYSBqYSBvZGVyIHNvIGljaCBrYW5uIGphIHdlbGNoZSBiZWltIHJvdGZsbiB2ZXJwYXNzdApoYWJlbgopCkRlciBQcmllc3RlciBmcmFndDogV2lsbHN0IER1LCBNYWdudW0sIGRpZSBoaWVyIGFud2VzZW5kZSBNaWlyYSB6dQpEZXIgUHJpZXN0ZXIgZnJhZ3Q6IERlaW5lciBGcmF1IG5laG1lbiwgc28gYW50d29ydGUgJ0phJz8KRHUgaGFzdCBqZXR6dCAxOTQgTGViZW5zcHVua3RlIHVuZCAxNTUgTWFnaWVwdW5rdGUuCk1hZ251bSBzYWd0OiBqYQpEZXIgUHJpZXN0ZXIgZnJhZ3Q6IFdpbGxzdCBEdSwgTWlpcmEsIGRlbiBoaWVyIGFud2VzZW5kZW4gTWFnbnVtIHp1CkRlciBQcmllc3RlciBmcmFndDogRGVpbmVtIE1hbm4gbmVobWVuLCBzbyBhbnR3b3J0ZSAnSmEnPwpEdSBoYXN0IGpldHp0IDE5NCBMZWJlbnNwdW5rdGUgdW5kIDE1NiBNYWdpZXB1bmt0ZS4KTWlpcmEgc2FndDogamEKUmFmZmkgZGVua3QgICAuIG8gTyAodW5kIGpldHp0ID8pCkR1IGhhc3QgamV0enQgMTk0IExlYmVuc3B1bmt0ZSB1bmQgMTU3IE1hZ2llcHVua3RlLgpEZXIgUHJpZXN0ZXIgc2FndDogTmFjaGRlbSBiZWlkZSBkaWUgRnJhZ2UgbWl0IEpBIGJlYW50d29ydGV0IGhhYmVuLApEZXIgUHJpZXN0ZXIgc2FndDogZXJrbGFlcmUgaWNoIGRpZSBiZWlkZW4gdm9yIEdvdHRlcyBBdWdlbiB6dSBNYW5uIHVuZApEZXIgUHJpZXN0ZXIgc2FndDogRnJhdS4KRGVyIFByaWVzdGVyIHNhZ3Q6IElociBkdWVyZnQgRXVjaCBqZXR6dCBrdWVzc2VuLgpmcmV1CkR1IGZyZXVzdCBEaWNoIDopIDspIDs9KSA6LSkgOy0pPSAoLTggOy09MC4KPiBEdSBoYXN0IGpldHp0IDE5NCBMZWJlbnNwdW5rdGUgdW5kIDE1OCBNYWdpZXB1bmt0ZS4KR3VlcmdlbiBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uCk1paXJhIGt1ZXNzdCBNYWdudW0uCk1hZ251bSBrdWVzc3QgTWlpcmEuCktoaWRhciBncmF0dWxpZXJ0IE1paXJhLgo6Z3JhdHVsaWVydCBNYWdudW0gdW5kIE1paXJhCkR1IGhhc3QgamV0enQgMTk0IExlYmVuc3B1bmt0ZSB1bmQgMTU5IE1hZ2llcHVua3RlLgpLaGlkYXIgZ3JhdHVsaWVydCBNYWdudW0uCkVuZ3l3dWNrIGdyYXR1bGllcnQgYWxsZW4uClRha2FuIHNhZ3Q6IGRhcyBnaW5nIGFiZXIgc2NuZWxsClJhZmZpIGdyYXR1bGllcnQgTWlpcmEuClJhZmFlbCBncmF0dWxpZXJ0IE1paXJhLgpEdSBoYXN0IGpldHp0IDE5NCBMZWJlbnNwdW5rdGUgdW5kIDE2MCBNYWdpZXB1bmt0ZS4KTWlpcmEgcnVmdDogWUFXUCEKPkVpbiBHcmF0dWxhbnQgZ3JhdHVsaWVydCBNYWdudW0gdW5kIE1paXJhCj4gTWFnbnVtIHNhZ3Q6IExvcyBQYXJ0eQpEZXIgUHJpZXN0ZXIga25pZXQgdm9yIGRlbSBBbHRhciBuaWVkZXIgdW5kIGJldGV0LgpEZXIgYmxhdWUgU3Rlcm4gYXVmIGRlciBTdGlybiBkZXMgUHJpZXN0ZXJzIGJlZ2lubnQgenUgbGV1Y2h0ZW4uClJhZmZpIGdyYXR1bGllcnQgTWFnbnVtLgp6aWVoZSBoZWxtIGF1cwpUYWthbiBncmF0dWxpZXJ0IE1paXJhLgpEdSBlbnRmZXJuc3QgZGVuIEhlbG0gdW5kIHdpcnN0IHdpZWRlciB6dSBHb0x1bS4KV2llIGJpdHRlPwo+IGdyYXR1bGllcmUgbWFnbnVtCkR1IGhhc3QgamV0enQgMTk0IExlYmVuc3B1bmt0ZSB1bmQgMTYxIE1hZ2llcHVua3RlLgpEZXIgUHJpZXN0ZXIgc3RyZWNrdCBkaWUgSGFlbmRlIFJpY2h0dW5nIERlY2tlIHVuZCBoYWVsdCBwbG9ldHpsaWNoCnp3ZWkgUmluZ2UgaW4gZGVuIEhhZW5kZW4uCk1paXJhIGtudWRkZWx0IEJlbmRlaWdpZC4KVGFrYW4gZ3JhdHVsaWVydCBNYWdudW0uCk1hZ251bSBzYWd0OiBkYW5rZQpEdSBncmF0dWxpZXJzdCBNYWdudW0uCj4gRGVyIFByaWVzdGVyIHNhZ3Q6IE5laG10IGRpZXNlIFJpbmdlIGFscyBaZWljaGVuIGV1cmVyIExpZWJlLgpEZXIgUHJpZXN0ZXIgbmltbXQgZGllIEhhbmQgdm9uIE1hZ251bSB1bmQgc3RlY2t0IElobSBlaW5lbiBSaW5nIGFuIGRlbgpGaW5nZXIuIERhbmFjaCBncmVpZnQgZXIgbmFjaCBkZXIgSGFuZCB2b24gTWlpcmEgdW5kIHN0ZWNrdCBJaHIgZGVuCmFuZGVyZW4gUmluZyBhbiBkZW4gRmluZ2VyLgpEZXIgUHJpZXN0ZXIgc2FndDogQmVodWV0ZXQgZGllc2VuIFJpbmcgc2VociwgZGVubiBlciBrYW5uIEV1Y2ggZWluaWdlCkRlciBQcmllc3RlciBzYWd0OiBndXRlIERpZW5zdGUgZXJ3ZWlzZW4uClRha2FuIGtudWRkZWx0IE1paXJhLgpUYWthbiBrbnVkZGVsdCBNYWdudW0uCmdyYXR1bGllcmUgbWlpcmEKRHUgaGFzdCBqZXR6dCAxOTQgTGViZW5zcHVua3RlIHVuZCAxNjIgTWFnaWVwdW5rdGUuCkJlbmRlaWdpZCBpc3Qgdm9lbGxpZyBlcnNjaG9lcGZ0CkR1IGdyYXR1bGllcnN0IE1paXJhLgoKPiBEZXIgUHJpZXN0ZXIgd2VuZGV0IHNpY2ggd2llZGVyIGRlbSBCdWNoIGRlciBMaWViZW5kZW4genUuCkVyIHRyYWVndCBkYXMgbmV1ZSBnbHVlY2tsaWNoZSBQYWFyIGVpbi4KRHUgaGFzdCBqZXR6dCAxOTQgTGViZW5zcHVua3RlIHVuZCAxNjMgTWFnaWVwdW5rdGUuCkVuZ3l3dWNrIHNhZ3Q6IFRvbGwgZ2VtYWNodCwgQmVuIQprbnVkZGxlIGJlbmVkZWlnaWQKTWFnbnVtIHNhZ3Q6IEp1aHUKCkR3aWdodCBydWZ0OiBHbHVlY2t3dW5zY2ghClByaWVzdGVyIHNjaGxpZXNzdCBkYXMgQnVjaCBkZXIgTGllYmVuZGVuLgpEZXIgUHJpZXN0ZXIgc2FndDogR2VoZXQgbnVuIGhpbiBpbiBGcmllZGVuLgoKRGVyIFByaWVzdGVyIG9lZmZuZXQgZGllIFBmb3J0ZS4KRG9tIEJlbmRlaWdpZCBzYWd0OiBkYWtlCkR1IGhhc3QgamV0enQgMTk0IExlYmVuc3B1bmt0ZSB1bmQgMTY0IE1hZ2llcHVua3RlLgpUaWdhIHNhZ3Q6IEdlaWwKVGFrYW4ga251ZGRlbHQgQmVuZGVpZ2lkLgpCZXJ0cmFtIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkd1YXJkaWFuIHJ1ZnQ6IERhbmtlISEKRW5neXd1Y2sgb2VmZm5ldCBkYXMgQnVjaCBkZXIgTGllYmVuZGVuLgpTdHJhcHBlciBzYWd0OiBTYXViZXIKS251ZGRsZSB3ZW4/Cj4gTWlpcmEgc2FndDogRGFua2UsIEJlbmRlaWdpZC4KRHUgaGFzdCBqZXR6dCAxOTQgTGViZW5zcHVua3RlIHVuZCAxNjUgTWFnaWVwdW5rdGUuClRha2FuIHNhZ3Q6IGhhc3QgZHUgdG9sbCBnZW1hY2h0IGJlbmRlCmtudWRkbGUgYmVuZWRlaWdpZApEb20gQmVuZGVpZ2lkIHNhZ3Q6IGdlcm4gZ2VzY2hlaGVuCktudWRkbGUgd2VuPwo+IE1hZ251bSBzYWd0OiBEYW5rZQpTaWJvcml0IGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KUmFmZmkgZGVua3QgICAuIG8gTyAodW5kIHdvIGtvbW10IGpldHp0IGRhcyBmdXR0ZXIgPykKa251ZGRsZSBiZW5lZGVpZ2lkCkR1IGhhc3QgamV0enQgMTk0IExlYmVuc3B1bmt0ZSB1bmQgMTY2IE1hZ2llcHVua3RlLgpUYWthbiBncmF0dWxpZXJ0IEJlbmRlaWdpZC4KS251ZGRsZSB3ZW4/Cj4ga251ZGRsZSBiZW5kZWdlaWRpdApNYWdudW0gc2FndDogTG9zIGpldHp0IGFiZXIgUGFydHkKVWxvIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KUmFmYWVsIGtudWRkZWx0IE1paXJhLCBEaWNoLCBNeXNlbGYsIFJhZmZpLCBLaGlkYXIsIFRpZ2EsIFRha2FuLCBFbmd5d3VjaywKU2xhLCBTdHJhcHBlciwgTWFnbnVtLCBCZW5kZWlnaWQsIEd1bGR1a2F0LCBUb3NzIHVuZCBlaW5lbiBQcmllc3RlciB1bSB6dQpwcnVlZmVuLCB3ZXIgc2ljaCBoaWVyIGFsbGVzIHNvIHJ1bSB0dW1tZWx0LgpLbnVkZGxlIHdlbj8KPiBEdSBoYXN0IGpldHp0IDE5NCBMZWJlbnNwdW5rdGUgdW5kIDE2NyBNYWdpZXB1bmt0ZS4KZnJldQpEdSBmcmV1c3QgRGljaCA6KSA7KSA7PSkgOi0pIDstKT0gKC04IDstPTAuCj4gRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBTbyBkaWUgUGFydHkgaXN0IHZvcmJlaSB1bmQgaWNoIGhhdWUgYWIuCndhZWx6ClJhZmFlbCBncmluc3QuCkR1IHdhZWx6dCBEaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KPiBLaGlkYXIgd2lua3QgTWlpcmEsIERpciwgTXlzZWxmLCBSYWZmaSwgUmFmYWVsLCBUaWdhLCBUYWthbiwgRW5neXd1Y2ssIFNsYSwKU3RyYXBwZXIsIE1hZ251bSwgQmVuZGVpZ2lkLCBHdWxkdWthdCwgVG9zcyB1bmQgZWluZW0gUHJpZXN0ZXIgenUuCkR1IGhhc3QgamV0enQgMTk0IExlYmVuc3B1bmt0ZSB1bmQgMTY4IE1hZ2llcHVua3RlLgpCZW5kZWlnaWQgZ3JpbnN0LgoKT2huZSBLb21tZW50YXIgIQoKR29sdW0gZGVyIEVpbnNhbWUgZGVyIFplaXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldDLVNwcnVjaCwgZGVyIDEwOTMuIChDdWNodWxsaW4sIDEyLiBBdWcgMTk5NSwgMDI6Mjk6MjQpOgoKR2VzZWhlbiBpbiBlaW5lciBzdGlsbGVuIE9lcnRsaWNoa2VpdCwgQVZaLCBVbmkgT3NuYWJydWVjawoKQW4gZGVyIFR1ZXIuLi4uLi4uLjogU2NoYXUgbmFjaCBsaW5rcyEKCkxpbmtlIFdhbmQuLi4uLi4uLi46IFNjaGF1IG5hY2ggcmVjaHRzIQoKUmVjaHRlIFdhbmQuLi4uLi4uLjogU2NoYXUgbmFjaCBoaW50ZW4hCgpIaW50ZXJlIFdhbmQuLi4uLi4uOiBHbG90eiBuaWNodCBzbyBibG9lZCwgc2NoZWlzcyBsaWViZXIhCgpLYW0gc2ljaCBldHdhcyBlcnRhcHB0IHZvciwKQ3VjaC4tICA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2htYXJybiAoR29sdW0sIDEyLiBBdWcgMTk5NSwgMDY6Mzc6NDYpOgpwaHV1dXUgLi4uIGJpbiBkYSBzbyBwZXIgenVmYWxsIGF1ZiBkZW4gbmV1ZW4gUmF1bSB2b24gZGVyIFF1ZXN0IFNvcnV0aCdzClJhY2hlIGdlc3Rvc3NlbiAuIERFbmsgbWkgbmljaHQgYm9lc2VzIGRhYmVpIHVuZCBwcm9iaWVyIG1hbCBlaW4gYmlzY2hlbi4KSWNoIGhhYmUgZXMgZ2VzY2hhZmZ0IC4uLi4uIGFsbGUgMTE3IFRlbGVwb3J0ZXIgYXVzenVwcm9iaWVyZW4gLi4KKmdhZWhuKgpHb0x1bSBkZXIgRWluc2FtZSBkZXIgWmVpdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2V0bWluL1NldG1vdXQgKEFydHksIDEyLiBBdWcgMTk5NSwgMTY6MTY6MTYpOgp6d2lzY2hlbiAyIHJlcG9ydCBtZWxkdW5nZW4gc3RhbmQgaWNoIG1hbCBhbiBlaW5lbSBwbGF0eiwgZm9sZ2VuZGVzIHNjcm9sbHRlCm1pY2ggenU6CgpEdSBoYXN0IGpldHp0IDE4MSBMZWJlbnNwdW5rdGUgdW5kIDc1IE1hZ2llcHVua3RlLgpCaWtld2FycmlvciBrb21tdCBhbi4KQmlrZXdhcnJpb3IgZ2VodCBuYWNoIE5vcmRlbi4KQmlrZXdhcnJpb3Iga29tbXQgYW4uCkJpa2V3YXJyaW9yIGdlaHQgbmFjaCBPc3Rlbi4KQmlrZXdhcnJpb3Iga29tbXQgYW4uCkJpa2V3YXJyaW9yIGdlaHQgbmFjaCBOb3JkZW4uCkJpa2V3YXJyaW9yIGtvbW10IGFuLgpCaWtld2FycmlvciBnZWh0IG5hY2ggT3N0ZW4uCkJpa2V3YXJyaW9yIGtvbW10IGFuLgpCaWtld2FycmlvciBnZWh0IG5hY2ggTm9yZGVuLgpCaWtld2FycmlvciBrb21tdCBhbi4KQmlrZXdhcnJpb3IgZ2VodCBuYWNoIE9zdGVuLgpCaWtld2FycmlvciBrb21tdCBhbi4KQmlrZXdhcnJpb3IgZ2VodCBuYWNoIE5vcmRlbi4KQmlrZXdhcnJpb3Iga29tbXQgYW4uCkJpa2V3YXJyaW9yIGdlaHQgbmFjaCBPc3Rlbi4KQmlrZXdhcnJpb3Iga29tbXQgYW4uCkJpa2V3YXJyaW9yIGdlaHQgbmFjaCBOb3JkZW4uCkJpa2V3YXJyaW9yIGtvbW10IGFuLgpCaWtld2FycmlvciBnZWh0IG5hY2ggT3N0ZW4uCkJpa2V3YXJyaW9yIGtvbW10IGFuLgpCaWtld2FycmlvciBnZWh0IG5hY2ggTm9yZGVuLgpCaWtld2FycmlvciBrb21tdCBhbi4KQmlrZXdhcnJpb3IgZ2VodCBuYWNoIE9zdGVuLgpCaWtld2FycmlvciBrb21tdCBhbi4KQmlrZXdhcnJpb3IgZ2VodCBuYWNoIE5vcmRlbi4KQmlrZXdhcnJpb3Iga29tbXQgYW4uCkJpa2V3YXJyaW9yIGdlaHQgbmFjaCBPc3Rlbi4KQmlrZXdhcnJpb3Iga29tbXQgYW4uCkJpa2V3YXJyaW9yIGdlaHQgbmFjaCBOb3JkZW4uCkJpa2V3YXJyaW9yIGtvbW10IGFuLgpCaWtld2FycmlvciBnZWh0IG5hY2ggT3N0ZW4uCkJpa2V3YXJyaW9yIGtvbW10IGFuLgpCaWtld2FycmlvciBnZWh0IG5hY2ggTm9yZGVuLgpCaWtld2FycmlvciBrb21tdCBhbi4KQmlrZXdhcnJpb3IgZ2VodCBuYWNoIE9zdGVuLgpEdSBoYXN0IGpldHp0IDE4MiBMZWJlbnNwdW5rdGUgdW5kIDc2IE1hZ2llcHVua3RlLgoKCmthbm4gaWNoIG5vY2ggZnJvaCBzZWluLCBkYXMgZXIgbmljaHQgc28gMiB6ZWlsZW4gc2V0bWluLy1vdXQgZ2VoYWJ0IGhhdCEKCkFSVFkgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3J1dGhzIHJhY2hlIDopIChDYXJhZGhyYXMsIDEzLiBBdWcgMTk5NSwgMDI6Mzc6MDQpOgo+ZnJhZ2UgcHJpbnplc3NpbiBuYWNoIHJpbmcKVWtoYXppIHNhZ3Q6IEljaCB2ZXJsaWVyZSBtZWluZW4gUmluZyBhbmRhdWVybmQsIGtlaW5lIEFobnVuZyB3aWVzby4KPiBsbCB1a2hhemkKU28gc2llaHQgYWxzbyBlaW5lIFp3ZXJnZW5wcmluemVzc2luIGF1cyAuLi4gRHUga2FubnN0IG5pY2h0IGRlbiBnZXJpbmdzdGVuClVudGVyc2NoaWVkIHp1IGVpbmVtIG5vcm1hbGVuIFp3ZXJnIGZlc3RzdGVsbGVuLCBlaW4gRHV0emVuZCB1bmZvZXJtaWdlCktsZWlkdW5nc3NjaGljaHRlbiB2ZXJiZXJnZW4gamVkZW4gSGlud2VpcyBhdWYgZWluZSBldmVudHVlbGwgdm9yaGFuZGVuZQpGaWd1ciwgdW5kIHNlbGJzdCBkZXIgQmFydCBpc3QgZ2VuYXVzbyBkaWNodCB1bmQgem90dGVsaWcgd2llIGJlaSBqZWRlbQphbmRlcmVuIFp3ZXJnLiBJbSBCYXJ0IHN0ZWNrZW4gZWluZSBNZW5nZSBIYWFybmFkZWxuLCB3b3p1IGRpZSBndXQgc2luZCwKaXN0IGVpbmUgZ3V0ZSBGcmFnZS4KU2llIGlzdCBhYnNvbHV0IGZpdC4KU2llIHRyYWVndCBiZWkgc2ljaDoKRGVyIFJpbmcgVWtoYXppcy4KRGVyIFJpbmcgVWtoYXppcy4KRGVyIFJpbmcgVWtoYXppcy4KRGVyIFJpbmcgVWtoYXppcy4KCiAgICAgIGZyb2VobGljaCBncmluc2VuZAogICAgICAgICBDYXJhZGhyYXMgLSB3dXNzdGUgc2Nob24gaW1tZXIgZGFzcyBad2VyZ2UgbmljaHQgenUKICAgICAgICAgICAgICAgICAgICAgaW50ZWxsaWdlbnQgc2luZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmEga2xhc3NlIChDYXJhZGhyYXMsIDEzLiBBdWcgMTk5NSwgMDM6NDM6MjcpOgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDIyNSBNYWdpZXB1bmt0ZS4KRWluZSBoZXJybGljaGUgV2Flcm1lIGdlaHQgdm9uIERlaW5lbSBBbXVsZXR0IGF1cyB1bmQgRHUgZnVlaGxzdApEaWNoIHByaW1hLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDIyNiBNYWdpZXB1bmt0ZS4KCiBCb2luZywgZHUgaGFzdCBndXQgZ2VhcmJlaXRldCA6LSkKCiAgICAgICAgICBDYXJhZGhyYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmljaHdlaXNzbnVyZWlucy5pY2hiaW5tdWVkZSAoTW9yZ290aCwgMTQuIEF1ZyAxOTk1LCAwMTo1NDoyNSk6Cm9obWFubi5qZXR6dHNpdHppY2hoaWVydW5kZ2FlaG5zb3Zvcm1pY2hoaW4ubXVlZGViaW5pY2hnZWh6dXJydWhtYWNoZW1laW5lbmJldXRlbHp1LgpiZXV0ZWw/YWVoZGllYXVnZW5tZWludGVpY2huYXR1ZXJsaWNoLmFsc29iaXN6dXJmZXRlb2Rlcndlbm5pY2htYWx2b3JoZXJpd2VkZXJyZWluc2NoYXUKd2lua2tudWRkZWx3dXNjaGVsZ3JpbnNsYWNocm90Zmxhcmdsa3Vlc3Nla3JhdHplZGVua3dpbmthY2hzb2Rhc2hhdHRlbndpcnNjaG9ubmFkYW5uCnRzY2h1ZXNzLi4uLi4KTW9yZ290aAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBpY2h3ZWlzc251cmVpbnMuaWNoYmlubXVlZGUgKE1vcmdvbiwgMTQuIEF1ZyAxOTk1LCAxMDozNDo1Mik6CiMhIHJuPU1vcmdvdGggcnQ9ODA4MzU4MDY1CktsaW5ndCBpcmdlbmR3aWUgbmFjaCBVZWJlcm11ZWR1bmcgb2RlciBEcm9nZW5yYXVzY2guCk9kZXIgYmVpZGVtLi4uLi4KICAgICAgICAgICAgICBpbiBzaWNoIGhpbmVpbmdyaW5zZW5kOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTU9SR09OLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbSBDYXNpbm8gOikgKFplcGh5ciwgMTQuIEF1ZyAxOTk1LCAxNDo1NDoyNik6ClsuLi4uXQpCcnVub2JlbCBoYXQgZWluZSBLYXJ0ZSBiZWtvbW1lbi4KQnJ1bm9iZWwgaGF0IGdlcGFzc3QuCgpBbGxlIGxlZ2VuIGlocmUgS2FydGVuIG9mZmVuIGhpbi4KWmVwaHlyICgxOSkgOiBFaW5lIFBpayA5LCBlaW5lbiBIZXJ6IEJ1YmVuLCBlaW5lIFBpayA4LgpKdWxpYW5lICgxOSkgOiBFaW5lbiBQaWsgQnViZW4sIGVpbmUgSGVyeiA3LCBlaW5lIEhlcnogRGFtZSwgZWluZSBLcmV1eiA3LgpMb2N1dHVzICgxOSkgOiBFaW5lIEthcm8gOSwgZWluZSBIZXJ6IDEwLgpCcnVub2JlbCAoMTkpIDogRWluZSBIZXJ6IDgsIGVpbiBIZXJ6IEFzLgoKRGllIG1laXN0ZW4gQXVnZW4gaGFiZW4gWmVwaHlyLCBKdWxpYW5lLCBMb2N1dHVzIHVuZCBCcnVub2JlbC4KCk9obmUgV29ydGUsIFplcGh5cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNdXBmZWwsIDE0LiBBdWcgMTk5NSwgMTY6MTE6MDMpOgokIEZsYWNvbiBnZWh0IG5hY2ggV2VzdGVuLgpGbGFjb24ga29tbXQgYW4uCkR1IHNhZ3N0OiB6dXIgbm90IGtvbW1zdGUgbWl0ICdlbmRlJyByYXVzCiQgRmxhY29uIHNhZ3Q6IGRhbmtlCkZsYWNvbiBnZWh0IG5hY2ggTm9yZGVuLgpbVG9kOl0gRWluIFVudGllciBoYXQgZ2VyYWRlIEZsYWNvbiB1bWdlYnJhY2h0LgpEdSBzYWdzdDogZHUgaGFzdCBqYSBlaCBuaXggYmVpIGRpcgoKaGFldHRlIGVycyBnZXRhbi4uLgoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthcmF0ZSBpc3Qga29taXNjaCAhIChNb25vdG9uaSwgMTQuIEF1ZyAxOTk1LCAxNzoxNjo1MSk6CgpMZXR6dGVucyBpbiBkZXIgR2lsZGUgOgoKPiBKb2RlbCBiZXRyaXR0IGRpZXNlIFdlbHQuClJvYWRydW5uZXIgc2NobGlkZGVydCBoZXJlaW4uCkpvZGVsIHppZWh0IGVpbmVuIGdydWVuZW4gR3VlcnRlbCBhbi4KSm9kZWwgemllaHQgZWluZW4gR2kgYW4uCkpvZGVsIGdlaHQgbmFjaCBOb3JkZW4uCldlbm4gbWFuIGRlbiBHdWVydGVsIHp1ZXJzdCBhbnppZWh0IHJ1dHNjaHQgZG9jaCBkaWUgSG9zZSwgb2RlciA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpERFItV2l0eiAoQXNtb2RpcywgMTUuIEF1ZyAxOTk1LCAwNDoxMzozMik6CldhcnVtIGR1cmZ0ZSBpbiBkZXIgRERSIGluIGplZGVyIFN0cmFzc2UgbnVyIGVpbiBHZXNjaGFlZnQgc2VpbiA/PwouLgouLgouLgouLgouLgouLgouLgouLgouLgouLgouLgouLgpXZWlsIHNpY2ggc29uc3QgZGllIFNjaGxhbmdlbiBnZWdlbnNlaXRpZyBpbSBXZWcgZ2VzdGFuZGVuIGhhZXR0ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXdWVzdGVuLVdpdHogKEFzbW9kaXMsIDE1LiBBdWcgMTk5NSwgMDQ6Mzc6NDQpOgpXaWUgbWFjaHQgbWFuIGluIGRlciBXdWVzdGUgRmV1ZXIgPwoKCgoKCgoKCgoKCgoKCkdhbnogZWluZmFjaCwgbWFuIGxhY2h0IHNpY2ggJ25lbiBBc3QsIHN0ZWNrdCBzaWNoIGRlbiBpbnMgQXVnZSB1bmQgZGFzCmJyZW5udCBkYW5uIHdpZSBTYXUuLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmluc3Rlcm5pcyAoVWxvLCAxNS4gQXVnIDE5OTUsIDA3OjEwOjExKToKTmV1bGljaCBiZWltIER1cmNoc2VoZW4gZGVyIGFsaXMgLi4uCgogdG0gICAgID0gdGVpbGUgJDEgbWl0ICQyKgogdG1hICAgID0gdGVpbGUgYXp6dXJvIG1pdCAkKgogdG1hciAgID0gdGVpbGUgYXJkYW5hIG1pdCAkKgogdG1nICAgID0gdGVpbGUgZ2lmdHp3ZXJnIG1pdCAkKgogdG1sdSAgID0gdGVpbGUgbHVwdXMgbWl0ICQqCiB0bXIgICAgPSB0ZWlsZSByaWt1cyBtaXQgJCoKCnVuZCBkYW5uOgo+IGluZm9ybSBlaW4KS3VlbmZ0aWcgd2lyc3QgRHUgaW5mb3JtaWVydCwgd2VubiBqZW1hbmQgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYWVzc3QvYmV0cml0dC4KdG1nIEZpbnN0ZXJuaXMKOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV0MtU3BydWNoLCBkZXIgMTA5My4gKFNpbHZhbmEsIDE1LiBBdWcgMTk5NSwgMDk6MjI6MDApOgojISBybj1DdWNodWxsaW4gcnQ9ODA4MTg3MzY0CkV0d2FzIGFlaG5saWNoZXMgaW0gUlogZGVyIFVuaSBCaWVsZWZlbGQ6CgpBbiBkZXIgVHVlcjogICAgS2VubmVuIHNpZSBUb2lsZXR0ZW50ZW5uaXM/IFNjaGF1ZW4gc2llIG5hY2ggcmVjaHRzIQoKUmVjaHRlIFdhbmQ6ICAgIFNjaGF1ZW4gc2llIG5hY2ggbGlua3MuCgpMaW5rZSBXYW5kIDogICAgU2NoYXVlbiBzaWUgbmFjaCByZWNodHMuCgouLi5yZXBlYXQgdW50aWwgZm9yZXZlci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobWFycm4gKEthZW5ndXJ1aCwgMTUuIEF1ZyAxOTk1LCAwOTo1NTozMik6CltWZXJsZWd0IHZvbiBzZWhlci5lbnR3aWNrbHVuZywgR29sdW0sIDE1LiBBdWcgMTk5NSwgMDU6Mzc6MDZdOgo+IGJlc3RlaWdlIHBmZXJkCkVpbiBmbGllZ2VuZGVzIFBmZXJkIGZsaWVndCBnZXJhZGUgYWIuClBlZ2FzdXMsIGRhcyBmbGllZ2VuZGUgUGZlcmQsIG5pbW10IERpciAyMjIgTXVlbnplbiBhYi4KWnVmcmllZGVuIGJpZXRldCBlciBEaXIgZWluZW4gUGxhdHogYXVmIHNlaW5lbSBSdWVja2VuIGFuLgpXaWUgYml0dGU/Cj4gRHUgaGFzdCBqZXR6dCA3MSBMZWJlbnNwdW5rdGUgdW5kIDMzIE1hZ2llcHVua3RlLgpEdSBoYXN0IGpldHp0IDcyIExlYmVuc3B1bmt0ZSB1bmQgMzQgTWFnaWVwdW5rdGUuCkR1IGhhc3QgamV0enQgNzMgTGViZW5zcHVua3RlIHVuZCAzNSBNYWdpZXB1bmt0ZS4Kc2NoYXUKRHUgaGFzdCBqZXR6dCA3NCBMZWJlbnNwdW5rdGUgdW5kIDM2IE1hZ2llcHVua3RlLgpEdSBiZWZpbmRlc3QgRGljaCB2b3IgZGVtIEVpbmdhbmcgZGVyIFp3ZXJnZW5zdGFkdC4gRWluIGhvaGVzIEZlbHNlbnRvciwKZGFzIHdlaXQgZ2VvZWZmbmV0IGlzdCwgaXN0IHN1ZWRsaWNoIGluIGRpZSBzZW5rcmVjaHRlIEZlbHN3YW5kIGVpbmdlbGFzc2VuLAp1bmQgZnVlaHJ0IGluIGRpZSBTdGFkdC4gRGllIEViZW5lIGVyc3RyZWNrdCBzaWNoIHdlaXQgaW4gYWxsZSBhbmRlcmVuIFJpY2gtCnR1bmdlbi4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiwgd2VzdGVuLCBub3JkZW4gdW5kIG9zdGVuLgpEaWUgTGVpY2hlIGVpbmVzIFdvbGZzLgpFaW4gcGFzc2FiZWxlcyBTY2hpbGQuCkVpbmUgZmV0dGUgUmF0dGUuCgpTb2VlYmVuIHBhc3NpZXJ0IC4uLiBvaG5lIEtvbWVudGFyIC4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTaW5kIGRpZSBCbG9lZCEgKEJhbWJlbCwgMTcuIEF1ZyAxOTk1LCAwNjo0NToyNyk6Cklya2l0aXMgZ3JlaWZ0IElya2l0aXMgbWl0IGtsYXVlbmhhZnRlbiBLcmFsbGVuIGFuLgogIElya2l0aXMgdHJpZmZ0IElya2l0aXMgaGFydC4KCgpCYW1idWxrbyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJ5bmUgc2NocmVpYnQgZG9jaCBtYWwgd2FzIGluIFNjaG1hcnJuOiAoUnluZSwgMTcuIEF1ZyAxOTk1LCAxMzoyMDowMyk6CkdyYWQgcGFzc2llcnQsIHVuZ2VzY2huaXR0ZW46CgpEZXIgVHlyYW5ub3NhdXJ1cyBmYWVsbHQgbGF1dCByb2VjaGVsbmQgenUgQm9kZW4uCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgoKSG1tLiBXaXJrbGljaCBzYXVncm9zcyBkaWVzZSBhbHRlbiBEaW5vcywgd2FzID8KClJ5bmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSeW5lIHNjaHJlaWJ0IGRvY2ggbWFsIHdhcyBpbiBTY2htYXJybjogKFJvbmRhLCAxNy4gQXVnIDE5OTUsIDEzOjI5OjEzKToKIyEgcm49UnluZSBydD04MDg2NTg0MDMKSmVwLCBrbGFzc2UgSWRlZS4uLiBTbyBuYWNoIGRlbSBNZXR6ZWxuIGRlciBIeWRyYSwgYmVpIGFsbGVuIGF1ZiBkZW0KQmlsZHNjaGlybToKRGFzIE1vcmdlbmdyYXVlbiBmYWVyYnQgc2ljaCBibHV0cm90Li4uCk9kZXIgbmFjaCBkZXIgUG9zdHp1c3RlbGx1bmcgenVtIFNlbnNpOiBEdSBob2Vyc3QgS25vY2hlbmtsYXBwZXJuLi4uCkdyaW4sCiAgICAgICAgUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9tYmF0aXMgKENhcmFkaHJhcywgMTguIEF1ZyAxOTk1LCAwMDozMzo1NSk6CkRlciBmZXR0ZSBEYWVtb24gc2FndDogSWNoIGhhYmUgSHVuZ2VyISBEdSB3aXJzdCBnbGVpY2ggdmVyc3BlaXN0Li4KT21iYXRpcyBzcHJpbmd0IERpY2ggYW4gdW5kIHd1ZXJndCBEaWNoLgpDYXJhZGhyYXMgd2lyZCBub2NoIGlycmUgZGFiZWkuCkVpbiBEYWVtb24ga29tbXQgYW4uCkplbWFuZCBraWNoZXJ0IGhpbnRlciBEZWluZW0gUnVlY2tlbi4KRWluIENoYW9zZGFlbW9uIGVyc2NoZWludCBpbiBlaW5lciBSYXVjaHdvbGtlLgpPbWJhdGlzIGZyYWd0OiBLZW5uc3QgZHUgRXVzZWJpdXM/Ck9tYmF0aXMgc3ByaW5ndCBEaWNoIGFuIHVuZCB3dWVyZ3QgRGljaC4KRWluIENoYW9zZGFlbW9uIGVyc2NoZWludCBpbiBlaW5lciBSYXVjaHdvbGtlLgpPbWJhdGlzIHd1ZWhsdCBpbiBEZWluZXIgQXVzcnVlc3R1bmcgaGVydW0uCkR1IGhvZXJzdCB2b24gaXJnZW5kd28gZWluIEtpY2hlcm4uCkVpbiBGcm9zY2gga29tbXQgYW4uCkVpbmUgS3JvZXRlIGtvbW10IGFuLgpPbWJhdGlzIG1hY2h0IHNpY2ggZ2VzY2h3aW5kIGRhdm9uLgoKICAgICBFaW4gRGFlbW9uIG1pdCBBbmdzdCB2b3IgQW1waGliaWVuPyA6LSkKCiAgIENhcmFkaHJhcyAtIGtudWRkZWx0IGVpbmVuIEZyb3NjaCB1bmQgZWluZSBLcm9ldGUgd2VpbCBlciBzb25zdAogICAgICAgICAgICAgICBpcnJlIGdld29yZGVuIHdhZXJlCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKnd1bmRlciogKEFydHksIDE5LiBBdWcgMTk5NSwgMTM6MzU6MTUpOgo+IHppZWhlIHRhcm5oZWxtIGF1cwpEdSBoYXN0IGpldHp0IDEyNiBMZWJlbnNwdW5rdGUgdW5kIDI1IE1hZ2llcHVua3RlLgpEdSB6aWVoc3QgZGVuIFRhcm5oZWxtIGF1cy4KPiB2ZXJrIHRhcm5oZWxtCk5hY2ggZGVyIGFrdHVlbGxlbiBNYXJrdGxhZ2Uga2FubiBpY2ggRGlyIGRhZnVlciBudXIgODMzIE11ZW56ZW4gYmlldGVuLApvYndvaGwgZWluIFRhcm5oZWxtIGVpZ2VudGxpY2ggMTAwMCBNdWVuemVuIHdlcnQgd2FlcmUuIFdpbGxzdCBEdSBlcyBtaXIKZGFmdWVyIHVlYmVybGFzc2VuPyAoamEvbmVpbikKamEKRHUgaGFzdCBqZXR6dCAxMjcgTGViZW5zcHVua3RlIHVuZCAyNiBNYWdpZXB1bmt0ZS4KRHUga2FubnN0IGRlbiBUYXJuaGVsbSBuaWNodCB2ZXJrYXVmZW4hCgplaG0uLi4uIG1lcmt3dWVyZGlnCgpBUlRZCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGltIEdvYmxpbmxhZ2VyISAoSGFyLCAxOS4gQXVnIDE5OTUsIDE0OjE5OjUxKToKCkRlciBHb2JsaW4gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRGVyIEdvYmxpbiB3ZWljaHQgZGVtIEJ1bWVyYW5nIGdlcmFkZSBub2NoIGF1cwpIYXIsIHNpY2ggd3V1bmRlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmQgd2llZGVyIG1hbCBGTFcgKEFzbW9kaXMsIDE5LiBBdWcgMTk5NSwgMjI6Mzc6NTMpOgpbQWJlbnRldWVyOk1lbGxvcm5dIGhpbGZlIG1pY2ggaGF0IGVpbiBkcmFjaGUgdmVyc2NobHVuZ2VuCltBYmVudGV1ZXI6QXNtb2Rpc10gTWFobHplaXQgOikKW1RvZDpdIEVpbiBGbHVnZHJhY2hlIGhhdCBnZXJhZGUgTWVsbG9ybiB1bWdlYnJhY2h0LgoKdW5kIGRhcyBhbGxlcyBpbm5lcmhhbGIgdm9uIDEwIFNla3VuZGVuIDopCgogICAgICAgICAgICAgICAgQ2lhbywgQXNtb2RpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ3JhZCBpbiBkZXIgaG9lbGxlIDspIChNZXNpcmlpLCAyMC4gQXVnIDE5OTUsIDIzOjMyOjQwKToKRHUgYmlzdCBpbiBkZXIgSG9lbGxlLCBoaWVyIGtvbW1zdCBEdSBudXIgcmF1cywgd2VubiBlaW5lIGd1dGUgU2VlbGUgZnVlcgpkaWNoCmVpbiBXb3J0IGJlaSBMYXJzIGVpbmxlZ3QuCkVzIGdpYnQga2VpbmUgc2ljaHRiYXJlbiBBdXNnYWVuZ2UuCkVpbiBQYWFyIGJsYW5rcG9saWVydGVyIFN0aWVmZWwuCkVpbmUgS3Jpc3RhbGxrcm9uZS4KRWluZSBIYWloYXV0LgpFaW5lIExlZGVyaG9zZS4KRWluIFBhYXIgQXJtc2NoaWVuZW4gbWl0IEhhbmRzY2h1aGVuLgpFaW4gU2NoaWxkY2hlbi4KRGFzIEJsdXRzYXVnZXItU2Nod2VydC4KRGFzIEFtdWxldHQgZGVyIFN0ZWluYmVpc3Nlci4KRWluIHNpbGJlcm5lcyBLcmV1ei4KRGVyIFN0YWIgZGVzIEVpc2VzLgpFaW4gR29ibGlucmluZy4KRWluIFJpbmcgZGVyIEtyYWZ0ICgrMSkuCkVpbiByb2V0bGljaGVyIFJpbmcuCkVpbiByb2V0bGljaGVyIFJpbmcuCkVpbiBTYWJiZXJhbXVsZXR0LgpFaW4gZ2VsYi1sZXVjaHRlbmRlciBCdW1lcmFuZy4KRWluIGJsYXUtcHVua3RpZXJ0ZXIgQnVtZXJhbmcuCkRhcyBBbXVsZXR0IGRlciBBa2FkZW1pZS4KRGFzIEFtdWxldHQgZGVyIEFrYWRlbWllLgpFaW4gUmV0dHVuZ3NyaW5nLgpFaW4gUGFhciBTa2llci4KRXR3YXMgdHJvY2tlbmVzIFN0cm9oLgpFaW4gUmV0dHVuZ3NyaW5nLgpFdHdhcyB0cm9ja2VuZXMgU3Ryb2guCkV0d2FzIHRyb2NrZW5lcyBTdHJvaC4KRGFzIEFtdWxldHQgZGVyIFN0ZWluYmVpc3Nlci4KRWluIEhvcm5wYW56ZXIuCkVpbmUgS3Jpc3RhbGxrcm9uZS4KRWluIFBhYXIgR29ibGluc3RpZWZlbC4KRWluIGdlbGJlcyBQb3N0cGFrZXQgKGdlb2VmZm5ldCkuCkVpbiByb2V0bGljaGVyIFJpbmcuClBhYXIgTGVkZXJoYW5kc2NodWhlLgpFaW5lIERpZGRsLUtudWRkZWwtTWF1cy4KRGFzIEJsdXRzYXVnZXItU2Nod2VydC4KRWluIFBlbHpiZXV0ZWwuCkVpbiBMaWNodHBhbnplci4KRWluIExpY2h0aGVsbS4KRWluIFBhYXIgTGVkZXJtb2thc3NpbnMuCkVpbmUgbWFnaXNjaGUgRmFja2VsLgoKCk5ldHQgbmljaHQgPwoKTWVzaWkgKGhpaGkpIDspKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBkYSBrcmV1Y2h0IHVudCBmbGV1Y2h0IChSYWZmaSwgMjEuIEF1ZyAxOTk1LCAxNzozNDoyMyk6Cj4gdW50IHZlZ2V0YXRpb24KVmllbGUgQmx1bWVuLCBHcmFlc2VyIHVuZCBJbnNla3RlbiBsZWJlbiBpbiBkaWVzZW0gVGFsLgoKSW1tZXIgd2llZGVyIGludGVyZXNzYW50IHdhcyBmdWVyIFBmbGFuemVuIGVzIGltIE1HIGdpYnQgOi0pCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZWJlbiBwYXNzaWVydCAoWWV0aSwgMjEuIEF1ZyAxOTk1LCAyMDozMTo0OCk6CiBEdSBncmVpZnN0IGRlbiBTdW1wZmxhZXVmZXIgbWl0IGVpbmVtIGdlbHVuZ2VuZW4gRnVtaWtvbWktZ2VyaSBhbi4KICBEdSB0cmlmZnN0IGRlbiBTdW1wZmxhZXVmZXIgaGFydC4KICBEZXIgU3VtcGZsYWV1ZmVyIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gc3BpdHplbiBTY2huYWJlbCBhbi4KRWluIFN1bXBmbGFldWZlciB2ZXJzdGF1Y2h0IHNpY2ggYmVpIGRlbSBTY2hsYWcgZGllIEhhbmQuCgpZZXRpICpncmluc2VuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVwcyAoWWV0aSwgMjEuIEF1ZyAxOTk1LCAyMToyNTo1Nik6CkRlciBOb3ZpemUgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KW01vZXJkZXI6R2Vpc3QgZWluZXMgTm92aXplbl0gSGlsZmUhIFdlciB2ZXJrYXVmdCBqZXR6dCBFbWFzPyBEdSBldHdhLCBlaW4KW01vZXJkZXI6R2Vpc3QgZWluZXMgTm92aXplbl0gUGFuemVyPwpobW0sIGhhYmVuIHdpciBqZXR6dCBtb2Rlcm5lIHdhZmZlbiA/PwptaXIgZWJlbiBwYXNzaWVydAp5ZXRpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYXJpb2VzZSBOdW1tZXIgKFJ1ZGlyYXR0ZXIsIDIyLiBBdWcgMTk5NSwgMTI6MDA6MzEpOgpBbHNvLCBpY2gga2FubidzIG1pciBuaWNodCB2ZXJrbmVpZmVuLCBkZW4gdWx0aW1hdGl2ZW4gWmVpdHVuZ3NhcnRpa2VsIHp1CnBvc3RlbjoKS2FyaW9lc2UgTnVtbWVyClNlaXRkZW0gaWNoIGVzIG1laW5lbSBGcmV1bmQgbWl0IGRlbSBNdW5kIGJlc29yZ2UgKHVtIGdlbmF1IHp1IHNlaW46IHNlaXQKMTk4OSksIG1lY2tlcnQgbWVpbiBaYWhuYXJ6dCBkYXVlcm5kIHJ1bSwgd2VpbCBpY2ggYWIgdW5kIHp1IG1hbCBlaW4gTG9jaApoYWJlLiBLYW5uIE9yYWxzZXggS2FyaWVzIHZlcnVyc2FjaGVuPwpDbGF1ZGlhLCAyNywgQm9ubgpBbnR3b3J0OiAoQWxsZWdyYSkKV29obCBrYXVtLCBlcyBzZWkgZGVubiwgSWhyIEZyZXVuZCBoYXQgZWluZW4gUGVuaXMgYXVzIEthcmFtZWwuIFdlbm4gU2llIGVpbmUKQXVzcmVkZSBicmF1Y2hlbiwgdW0gc2ljaCB2b3IgRmVsbGF0aW8genUgZHJ1ZWNrZW4sIG11ZXNzZW4gU2llIHNpY2ggc2Nob24gd2FzCkJlc3NlcmVycyBlaW5mYWxsZW4gbGFzc2VuLiBaYWhubG9lY2hlciBlbnRzdHNlaGVuIGR1cmNoIFp1Y2tlciB1bmQKS29obGVoeWRyYXRlLiBad2FyIGVudGhhZWx0IFNwZXJtYSBGcnVjaHR6dWNrZXIsIGFiZXIgbmljaHQgZ2VyYWRlIGluIHJhdWhlbgpNZW5nZW4uIFVuZCBzZWxic3Qgd2VubiBlcyBzbyB3YWVyZSwgbXVlc3N0ZW4gU2llIHNjaG9uIHN0dW5kZW5sYW5nIG1pdCBkZW0KU2FtZW4gZ3VyZ2VsbiwgYmV2b3IgZWluZSBXaXJrdW5nIGVpbnRyZXRlbiBrb2VubnRlIC0gd2llIGJlaSBFc3NlbnNyZXN0ZW4sCmRpZSB6d2lzY2hlbiBkZW4gWmFlaG5lbiBoYWVuZ2VuLiBWaWVsbGVpY2h0IHB1dHplbiBTaWUgZWluZmFjaCB6dXdlbmlnIC1rYW5uCmRhcyBzZWluPwoKCktPRVNUTElDSCAtdW5kIGRpZXNlIFplaXR1bmcgaGF0IG1pciBtZWluZSBNdXR0ZXIgaW5zIEtyYW5rZW5oYXVzIG1pdGdlYnJhY2h0Ci1wcnV1dXV1dXV1dXV1dXN0LgpSdWRpCi1rYW5uIHNpY2ggdm9yIExhY2hlbiBrYXVtIG1laHIgaGFsdGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthcmlvZXNlIE51bW1lciAoWWVuZGksIDIyLiBBdWcgMTk5NSwgMTI6MjY6MDcpOgojISBybj1SdWRpcmF0dGVyIHJ0PTgwOTA4NTYzMQoKSG1tbS4uLiBJc3QgU3Blcm1hIG5pY2h0IGJhc2lzY2g/IERhcyBtdWVzc3RlIHNvZ2FyIGhlbGZlbiwgdW0gZGllIGR1cmNoIGRlbgpBYmJhdSBkZXMgWnVja2VycyBlbnRzdGVoZW5kZSBTYWV1cmUgenUgbmV1dHJhbGlzaWVyZW4uLi4KCkFsc28sIExldXRlLCBuYWNoIGplZGVtIEVzc2VuLi4uCgooSWNoIGdsYXViZSwgaWNoIGhvZXIgamV0enQgYmVzc2VyIGF1Ziwgd2FzPykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEthcmlvZXNlIE51bW1lciAoRW5neXd1Y2ssIDIyLiBBdWcgMTk5NSwgMTI6NDM6NDMpOgojISBybj1ZZW5kaSBydD04MDkwODcxNjcKClNwZXJtYSBJU1QgYmFzaXNjaC4uLiBIYWIgaWNoIG1hbCBtaXQgbmVtIEluZGlrYXRvcnBhcGllciBnZWNoZWNrdCA7KSBTb3dhcwp6d2lzY2hlbiBwSCA4IHVuZCA5IGdsYXViIGljaC4uLgoKRW5neXd1Y2sgLSBDaGVtaWtlcmluIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEthcmlvZXNlIE51bW1lciAoUnVkaXJhdHRlciwgMjIuIEF1ZyAxOTk1LCAxNDo1NTozMik6CiMhIHJuPVllbmRpIHJ0PTgwOTA4NzE2NwpOQSBkYW5uOiBHVVJHRUxUIExFVVRFLCBHVVJHRUxUISEhClJ1ZGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEthcmlvZXNlIE51bW1lciAoSGFyLCAyMi4gQXVnIDE5OTUsIDE1OjExOjQzKToKIyEgcm49RW5neXd1Y2sgcnQ9ODA5MDg4MjIzCkljaCBnbGF1YmUgZGFzIHdlcmRlIGljaCBtYWwgaW4gZWluZXIgbGFuZ2VuIFRlc3RyZWloZSBwcnVlZmVuISBJY2ggYmVzdGVsbGUKbWFsIGRpcmVrdCA3IGttCkluZGlrYXRvcnBhcGllciBiZWkgTWVyayAoZ3JpbnMpCkhhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1ZSBQYXBhZ2VpZW5yYXNzZS4uLiAoQWRyb24sIDIyLiBBdWcgMTk5NSwgMTc6Mzk6MzUpOgoKPiBzY2hhdSBwYXBhZ2VpCkRlciBQYXBhZ2VpIGhhdCBzZWhyIGZhcmJlbmZyb2hlLCBsYW5nZSBGZWRlcm4gdW5kIGRpZSB2ZXJibHVlZmZlbmRlCkZhZWhpZ2tlaXQgaW4gZWxmaXNjaGVyIFNwcmFjaGUgenUgc3ByZWNoZW4uCkVyIGlzdCBhYnNvbHV0IGZpdC4KRXIgdHJhZWd0IGJlaSBzaWNoOgpFaW4gZWxmaXNjaGVzIExhbmdzY2h3ZXJ0IChnZXp1ZWNrdCkuCkVpbiBFbGZlbnBhbnplciAoYW5nZXpvZ2VuKS4KRWluIGdyb3NzZXIgU2NoaWxkIChhbmdlem9nZW4pLgozMTMgTXVlbnplbi4KCgpXaWUgbWFjaHQgZGVyIGRhcyBibG9zcy4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVlIFBhcGFnZWllbnJhc3NlLi4uIChHb2x1bSwgMjIuIEF1ZyAxOTk1LCAxODowNTo0Mik6CiMhIHJuPUFkcm9uIHJ0PTgwOTEwNTk3NQpzYWdlIGRhIGhhYmUgaWNoIGF1Y2ggbm9jaCBldHdhcyBkYXp1CgpEYXMgUmVoIGZhZW5ndCBkZWluZW4gQnVtZXJhbmcgYWIKRGFzIFJlaCB3aXJmdCBkZW4gQnVtZXJhbmcKCkdvbHVtICpzaWNoIGFtIGtvcHAga3JhdHplbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpZZXRpa2luZGVyZ3JvZXNzZSAoWWVuZGksIDIyLiBBdWcgMTk5NSwgMTg6NTY6NTUpOgoKTmV1bGljaCwgaW4gZGVuIE5lYmVsYmVyZ2VuOgoKPiBzY2hhdSB5ZXRpa2luZApEYXMgWWV0aWtpbmQgaXN0IGZ1ZXIgc2VpbmUgVmVyaGFlbHRuaXNzZSByZWNodCBrbGVpbi4gRXMgcmVpY2h0IERpciBnZXJhZGUKbWFsIGJpcyB6dXIgSHVlZnRlLiBFcyBtdXNzIG5vY2ggc2VociBqdW5nIHNlaW4uIEFiZXIgd28gc28gZWluIGtsZWluZXMgS2luZAppc3QsIHNpbmQgc2VpbmUgRWx0ZXJuIGJlc3RpbW10IG5pY2h0IHdlaXQuCkVzIGlzdCBhYnNvbHV0IGZpdC4KPiBzaCB5ZXRpCkRhcyBZZXRpa2luZCBpc3QgdW5nZWZhZWhyIDYwIGNtIGdyb3NzLgpEYXMgWWV0aWtpbmQgaXN0IG5pY2h0IGdhbnogc28gc2NobmVsbCB6dSBlcmxlZGlnZW4uCkRlcyBZZXRpa2luZHMgV2FmZmUgaXN0IG5pY2h0IGJlc29uZGVycyBndXQuCkRlcyBZZXRpa2luZHMgUnVlc3R1bmcgaGFlbHQgYXVjaCBzdGFya2VuIEFuZ3JpZmZlbiBzdGFuZC4KPiBzaCB5ZW5kaQpZZW5kaSBpc3QgdW5nZWZhZWhyIDE5MiBjbSBncm9zcy4KSWhyIGJlaWRlIGtvZW5udCBldHdhIGdsZWljaCBndXQgS2FyYXRlLgoKCgpBbHNvLCBpY2ggYmluIDE5MiBjbSBncm9zcywgdW5kIG1laW5lIEh1ZWZ0ZSBpc3QgaW4gY2EuIDYwIGNtIEhvZWhlPwpQaGFlbm9tZW5pbm9uYWwuLi4KCk9iIGljaCBkZW1uYWVjaHN0IEdlbGQgdmVybGFuZ2UsIHdlbm4gbWljaCBqZW1hbmQgYW5ndWNrdD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYXJhdGUgKENlbGViZGlsLCAyMy4gQXVnIDE5OTUsIDAwOjU0OjUxKToKcHJ1ZWZlCkR1IG11c3N0IG1pbmRlc3RlbnMgMTIgU3R1bmRlbiBTcGllbHplaXQgendpc2NoZW4gZGVyIHZvcmhlcmlnZW4gUHJ1ZWZ1bmcKdW5kIGRpZXNlciBsYXNzZW4uIERhenUgZmVobGVuIERpciBub2NoIDAgU3R1bmRlbiB1bmQgMCBNaW51dGVuLgoKICAgICAqc3RhdW4qICAqOl4pCgogICAgdHNjaG9lICAgICAgQ2VsZWJkaWwsIDh0ZXIgS3l1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoYWVoID8/IChZZXRpLCAyMy4gQXVnIDE5OTUsIDExOjQ3OjA1KToKZWJlbiBwYXNzaWVydDoKRWluIGZsaWVnZW5kZXMgUGZlcmQgZmxpZWd0IGdlcmFkZSBhYi4KYmVzdGVpZ2UgcGVnYXN1c3UKUGVnYXN1cywgZGFzIGZsaWVnZW5kZSBQZmVyZCwgbmltbXQgRGlyIDIyMiBNdWVuemVuIGFiLgpadWZyaWVkZW4gYmlldGV0IGVyIERpciBlaW5lbiBQbGF0eiBhdWYgc2VpbmVtIFJ1ZWNrZW4gYW4uCgptaXQgZGVtIG5hY2h0ZWlsLCBkYXMgaWNoIGhpbnRlcmhlciBpbW1lciBub2NoIHVudGVuIHdhcgpZZXRpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMb2dpayAtIGZpbmQnIGljaCBndXQuIDotKSAoSGFyZGlsLCAyMy4gQXVnIDE5OTUsIDE0OjU3OjI1KToKPiBzY29yZQpEdSBoYXN0IDIyNiBNYWdpZXB1bmt0ZS4KRGVyIFJlc3QgaXN0IGluIERlaW5lbSBqZXR6aWdlbiBadXN0YW5kIHVuaW50ZXJlc3NhbnQuCi4uLgppZGVudGlmaXppZXJlIGtyZWlzZWwKQWxzIEdlaXN0IGthbm5zdCBEdSBuaWNodCB6YXViZXJuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgaW4gRmVybndlc3QuLi4gKFllbmRpLCAyMy4gQXVnIDE5OTUsIDE5OjE1OjM3KToKCj4gbCBsb25nCkRlciBEYWkgV29uZyBMb25nLCBkZXIgRnVlcnN0IGRlciBGbHVzc2RyYWNoZW4sIHNpZWh0IHdpcmtsaWNoCmJlZWluZHJ1Y2tlbmQgYXVzOgpFciBpc3QgYWJzb2x1dCBmaXQuCgoKTmEgdG9sbC4uLgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCwgaW4gRmVybndlc3QuLi4gKENhcmFkaHJhcywgMjMuIEF1ZyAxOTk1LCAxOTozMDoxNyk6CiMhIHJuPVllbmRpIHJ0PTgwOTE5ODEzNwpbVG9kOl0gRWluIERhaSBXb25nIExvbmcgaGF0IGdlcmFkZSBZZW5kaSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBEYWkgV29uZyBMb25nXSBWaWVsZWljaHQga2xhcHB0IGVzIGphIGJlaW0gbmFlY2hzdGVuIE1hbCwgWWVuZGkhCgpOb2NoIHZpZWwgdG9sbGVyLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU293YXMuLi4uIChTaWx2YW5hLCAyMy4gQXVnIDE5OTUsIDE5OjM3OjUwKToKTWVpbmUgTWFtYSBrYW5uIHNpY2ggYXVjaCBuaWNodCBlbnRzY2hlaWRlbi4uLi4KW0RlYnVnOl0gUkVORVdJTkc6IHN0ZC9zaGVsbHMvbWFnaWVyIzEwODcxNzcgbWFnaWVyOmhvYm8KSG9ibyBiZXRyaXR0IGRpZXNlIFdlbHQuCkhvYm8gRXR3YXMgaXN0IGFuZGVycyBnZXdvcmRlbi4uLiBIb2JvIGlzdCBkYS4KSG9ibyB2ZXJsYWVzc3QgZGllc2UgV2VsdC4KSG9ibyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKSmEsIHdhcyBkZW5uIG51PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgaW0gSW50ZXJOZXQgKFllbmRpLCAyMy4gQXVnIDE5OTUsIDIwOjExOjE5KToKCiJMb3ZlIHdvdWxkbid0IGJlIGJsaW5kIGlmIHRoZSBicmFpbGxlIHdlcmVuJ3Qgc28gZGFtbmVkIG11Y2ggZnVuLiIKICAgICAgICAgICAgICAgICAgICAtIEFybWlzdGVhZCBNYXVwaW4sICJNYXliZSB0aGUgTW9vbiIKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluIHggZnVlciBlaW4gdSAoRW5neXd1Y2ssIDI0LiBBdWcgMTk5NSwgMTE6NTE6MzIpOgo+IFtBbGxnZW1laW46SGFubmldIHgKW0FsbGdlbWVpbjpIYXRlXSB4CltBbGxnZW1laW46UmVpbmhhcmRdIHgKW0FsbGdlbWVpbjpFbmd5d3Vja10geAo+IFtBbGxnZW1laW46RmxpbnRuYWlsIGxhY2h0IHNpY2ggd2VjaC4uLmdhbnogb2huZSAneCc6KV0KW0FsbGdlbWVpbjpHdXlicnVzaF0gWCAoQW5nZWJlcikKW0FsbGdlbWVpbjpFbmd5d3Vja10gKyAodmVyZHJlaHQpCj4gW0FsbGdlbWVpbjpEd2lnaHRdIFJ4LCBkYSB3b2xsZW4gd2VsY2hlIHdhcyB2b24gZGlyLCBhYmVyIGRpZSBrZW5uZW4gZGVpbmVuCltBbGxnZW1laW46RHdpZ2h0XSBuYW1lbiBuaWNodCByaWNodGlnIDopCltBbGxnZW1laW46RnJvc2NoIEphZl0gbyAoZ2FueiBmYWxzY2gpCltBbGxnZW1laW46RmxpbnRuYWlsXSB4ICAoYXVmIGRlbSBLb3BmIHN0ZWhlbmQpCj4gW0FsbGdlbWVpbjpHdXlicnVzaF0gJyAgJyBqZXR6dCBpc3QgZGllIFRhc3RlIGFiZ2VudXR6dC4KW0FsbGdlbWVpbjpSeHRlY2hdIGthbm4gZ3JhZCBuaWNodCwgaGFiIGJyZW5uZW5kIGhlaXNzZSBoYXV0CltBbGxnZW1laW46RW5neXd1Y2tdIC0gKHNjaGllZiB1bmQgbnVyIHRlaWx3ZWlzZSkKW0FsbGdlbWVpbjpSZWluaGFyZF0gfCAodm9uIGRlciBTZWl0ZQpbQWxsZ2VtZWluOkVuZ3l3dWNrXSAuICh2b24gR0FOWiB3ZWl0IHdlZykKPiBbQWxsZ2VtZWluOkxvY3V0dXNdIC0gVm9uIE9iZW4uCltBbGxnZW1laW46RmxpbnRuYWlsXSAoYmVzb2ZmZW4pCltBbGxnZW1laW46Unh0ZWNoXSBhdXNzZXJkZW0gd2lsbCBhdXNzZXIgaHVlcGZlciBlaCBrZWluZXIgd2FzIHZvbiBtaXIgOikpCltBbGxnZW1laW46RW5neXd1Y2tdIEAgKG5hY2ggU2NobGV1ZGVyd2FzY2hnYW5nKQo+IFtBbGxnZW1laW46SGFubmldIG51biBlbmRsaWNoIGdlaHRzOiBIQUxMTyA6KSkKW0FsbGdlbWVpbjpGbGludG5haWxdICMgKGhpY2spCltBbGxnZW1laW46R3V5YnJ1c2hdIGh1Y2gsIGhhdCBIdWVwZmVyIERpY2ggYXVmIGRlciBQQXJ0eSBub2NoIG5pY2h0CltBbGxnZW1laW46R3V5YnJ1c2hdIGtlbm5lZ2VsZXJudD8KW0FsbGdlbWVpbjpEd2lnaHRdIHdlciB3aWxsIHNjaG9uIHdhcyB2b24gZGlyPyB2b3IgYWxsZW0ga2VpbiBvbWJhdGlzIDstKQpbQWxsZ2VtZWluOkZyb3NjaCBKYWZdIHYgKGxlaWNodCBiZXNjaGFlZGlndCkKW0FsbGdlbWVpbjpSeHRlY2hdIGRhcyB3dW5kZXJ0IG1pY2ggamEgYW0gbWVpc3RlbiA6KQpbQWxsZ2VtZWluOkd1eWJydXNoXSB3byBiaXN0IGR1IGVpZ2VubHRpY2ggYW0gc2EgZ2VibGllYmVuLCByeD8KW0FsbGdlbWVpbjpMb2N1dHVzXSBfIG5hY2ggZWluZW0gRWxlZmFudGVucmVubmVuLgpbQWxsZ2VtZWluOlJ4dGVjaF0gP1s0IGltIGRvbiBqdWFuCltBbGxnZW1laW46RmxpbnRuYWlsXSA+PCAoZ2V0cmVubnQpCltBbGxnZW1laW46RHdpZ2h0XSBkYSBoYXR0ZSBlciBNaW5uZXNhbmcgOikKW0FsbGdlbWVpbjpFbmd5d3Vja10gLyBOYWNoIEFtcHV0YXRpb24uCj4gW0FsbGdlbWVpbjpGbGludG5haWxdIH4gKGZvZWxsaWcgdmFsc2NoKQpbQWxsZ2VtZWluOkd1eWJydXNoIHNjaGllYnQgRmxpbnQgZWluIHggd29oaW4uXQpbQWxsZ2VtZWluOkVuZ3l3dWNrXSA/ICh3YXMgc29sbCBkZXIgUXVhdHNjaD8pCj4gW0FsbGdlbWVpbjpGbGludG5haWxdIGZyYWcgWGFubmk6KQpbQWxsZ2VtZWluOlJlaW5oYXJkXSB3ZWxjaGVyIHF1YXRzY2gKW0FsbGdlbWVpbjpMb2N1dHVzXSArIExlaWNodCB2ZXJkcmVodC4KW0FsbGdlbWVpbjpFbmd5d3Vja10gSGF0dGUgaWNoIHNjaG9uIExvY3V0dXMuLi4KPiBbQWxsZ2VtZWluOkxvY3V0dXNdIERhcyBzb2xsdGUgbWFsIGVpbmVyIGluIFNjaG1hcnJuIHBvc3RlbiA7LSkKCk9rLCBpc3QgaGllcm1pdCBnZXNjaGVobiA7KQoKRW5neQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWUgUGFwYWdlaWVucmFzc2UuLi4gKFJhZmZpLCAyNC4gQXVnIDE5OTUsIDEyOjI4OjI0KToKIyEgcm49QWRyb24gcnQ9ODA5MTA1OTc1ClVlYmVyIGRlbiBoYWIgaWNoIG1pY2ggYXVjaCBzY2hvbiBnZXd1bmRlcnQhPyE/IT8hPyEKCmdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZWcgYXVzIGRlciBFaXN3dWVzdGUgKFJvY2h1cywgMjQuIEF1ZyAxOTk1LCAxNjo0NDoyNSk6CltDaGFvczpGcnlkZXJdIHdpZSBrb21tIGljaCB2b24gZGVyIGdpbGRlIGF1cyBkZXIgZWlzd3Vlc3RlIHJhdXM/PwpbQ2hhb3M6UHJhXSB3aWUgd2FyIGRhcyBub2NoPyBzLG8scyxvLG4sZW5kZSxzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogY3VjaHVsbGluLndlaXNoZWl0c3phaG4gKENhdHdlYXpsZSwgMjQuIEF1ZyAxOTk1LCAxNjo1MToyOCk6CiMhIHJuPUN1Y2h1bGxpbiBydD04MDkxODA1OTAKW1ZlcmxlZ3Qgdm9uIG11ZWxsLCBDYXR3ZWF6bGUsIDI0LiBBdWcgMTk5NSwgMTY6NTA6MDRdOgpbVmVybGVndCB2b24gc2VoZXIudXJsYXViLCBFbmd5d3VjaywgMjMuIEF1ZyAxOTk1LCAxNDozMToxNF06CgpEaWUgRnJhdSBoYXQgRGljaCBzb3p1c2FnZW4gZWNodCB1bWdlaGF1ZW4/IDspCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogY3VjaHVsbGluLndlaXNoZWl0c3phaG4gKENhdHdlYXpsZSwgMjQuIEF1ZyAxOTk1LCAxNjo1MTozMCk6CiMhIHJuPUVuZ3l3dWNrIHJ0PTgwOTE4MTA3NApbVmVybGVndCB2b24gbXVlbGwsIENhdHdlYXpsZSwgMjQuIEF1ZyAxOTk1LCAxNjo1MDowOF06CltWZXJsZWd0IHZvbiBzZWhlci51cmxhdWIsIEN1Y2h1bGxpbiwgMjMuIEF1ZyAxOTk1LCAxNDozMzowMl06CgpTaWUgaGF0IGRhYmVpIHNvZ2FyIG5vY2ggZ2VsYWVjaGVsdCwgRW5neS4uLi4KQ3VjaC4tCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkN1Y2gsIHdlbm4gaWNoIERpY2ggaGlsZmxvcyB1bnRlcixtIE1lc3NlciBoYWV0dGUgd3VlcmQgaWNoIGF1Y2ggbGFlY2hlbG4gOikpIChDYXR3ZWF6bGUsIDI0LiBBdWcgMTk5NSwgMTY6NTE6MzMpOgpbVmVybGVndCB2b24gbXVlbGwsIENhdHdlYXpsZSwgMjQuIEF1ZyAxOTk1LCAxNjo1MDoxNF06CltWZXJsZWd0IHZvbiBzZWhlci51cmxhdWIsIFJ4dGVjaCwgMjMuIEF1ZyAxOTk1LCAxNTo0ODo0M106ClJ4CgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGN1Y2h1bGxpbi53ZWlzaGVpdHN6YWhuIChDYXR3ZWF6bGUsIDI0LiBBdWcgMTk5NSwgMTY6NTE6MzUpOgojISBybj1DdWNodWxsaW4gcnQ9ODA5MTgxMTgyCltWZXJsZWd0IHZvbiBtdWVsbCwgQ2F0d2VhemxlLCAyNC4gQXVnIDE5OTUsIDE2OjUwOjIxXToKW1ZlcmxlZ3Qgdm9uIHNlaGVyLnVybGF1YiwgU2lsdmFuYSwgMjMuIEF1ZyAxOTk1LCAxNjoxMzoxNV06CldlaXNoZWl0c3phaG4gbWl0IFZvbGxuYXJrb3NlPyBXYXMgc2luZCBkYXMgZGVubiBmdWVyIHZvcnNpbnRmbHV0bGljaGUKTWV0b2Rlbj8gRGEgcmVpY2h0IGRvY2ggbmUgb3J0bGljaGUsIG9kZXI/CgpTaWx2YW5hIC0gaGF0IGFsbGVzIGxpdmUgbWl0ZXJsZWJ0IC0gd2FyIGFiZXIgbmljaHQgc29vbyBzcGFubmVuZC4uLgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBjdWNodWxsaW4ud2Vpc2hlaXRzemFobiAoQ2F0d2VhemxlLCAyNC4gQXVnIDE5OTUsIDE2OjUxOjM3KToKIyEgcm49U2lsdmFuYSBydD04MDkxODcxOTUKW1ZlcmxlZ3Qgdm9uIG11ZWxsLCBDYXR3ZWF6bGUsIDI0LiBBdWcgMTk5NSwgMTY6NTA6MjddOgpbVmVybGVndCB2b24gc2VoZXIudXJsYXViLCBDdWNodWxsaW4sIDIzLiBBdWcgMTk5NSwgMTY6MjA6MzldOgoKCk5hamEsIHNpZSBoYWJlbiBhbGxlIHZpZXIgYXVmIGVpbm1hbCBnZXpvZ2VuIHVuZCByZWNobmV0ZW4gbWl0CktvbXBsaWthdGlvbmVuLiBadSBtZWluZW0gR2x1ZWNrIChoYWVoYWUgLSBldWVyIFBlY2gsIG5peCBtaXQgU2NoYWRlbmZyZXVkZSkKZ2FicyBhYmVyIGtlaW5lIGdyb2Vzc2VyZW4uCgpDdWNoLi0gIG5pY2h0IGRlciBXZWlzaGVpdCwgbnVyIGRlciBaYWVobmUgYmVyYXVidC4KCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGN1Y2h1bGxpbi53ZWlzaGVpdHN6YWhuIChDYXR3ZWF6bGUsIDI0LiBBdWcgMTk5NSwgMTY6NTE6MzcpOgojISBybj1DdWNodWxsaW4gcnQ9ODA5MTg3NjM5CltWZXJsZWd0IHZvbiBtdWVsbCwgQ2F0d2VhemxlLCAyNC4gQXVnIDE5OTUsIDE2OjUwOjM0XToKW1ZlcmxlZ3Qgdm9uIHNlaGVyLnVybGF1YiwgSm9mLCAyMy4gQXVnIDE5OTUsIDE5OjQyOjI3XToKCiBEaWUgV2Vpc3NoZWl0IHdvbGx0ZW4gc2UgYXVjaCByYXVzbmVobWVuLCBhYmVyIGRhIHdhciBqYSBuaXggLi4uCgogSm9mCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGN1Y2h1bGxpbi53ZWlzaGVpdHN6YWhuIChDYXR3ZWF6bGUsIDI0LiBBdWcgMTk5NSwgMTY6NTE6NDApOgojISBybj1Kb2YgcnQ9ODA5MTk5NzQ3CltWZXJsZWd0IHZvbiBtdWVsbCwgQ2F0d2VhemxlLCAyNC4gQXVnIDE5OTUsIDE2OjUwOjQyXToKW1ZlcmxlZ3Qgdm9uIHNlaGVyLnVybGF1YiwgU2lsdmFuYSwgMjMuIEF1ZyAxOTk1LCAxOTo0NToyMV06CkZhc3QgZ3V0LCBKb2YuIEFiZXIgc29sbHRlIGVzIG5pY2h0IGhlaXNzZW46CiBEaWUgV2Vpc3NoZWl0IHdvbGx0ZW4gc2UgYXVjaCByYXVzbmVobWVuLCBhYmVyIGRhIHdhciBqYSBOSUNIVFMuLi4KClNpbHZhbmEgLSBoYXQgYXVmIGRlciBQYXJ0eSBOaWNodHMgZ2VzZWhlbi4uLgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSdWJyaWsgTXVlbGwgKEN1Y2h1bGxpbiwgMjQuIEF1ZyAxOTk1LCAxNzoxMjo1Nik6CgoKCk1hbiBzb2xsdGUgbWFsIGRpZSBSdWJyaWsgTXVlbGwgZHVyY2hzdG9lYmVybiwgQ2F0KiB2ZXJsZWd0IGF1Y2ggQXJ0aWtlbCBhdXMKTWFnaWVyLkVudHdpY2tsdW5nIC4uLiAqa2ljaGVyKgoKQ3VjaC4tIChrZWluZSBBaG51bmcsIHdhcyAieGV2YWwgZ2FyYmFnZV9jb2xsZWN0aW9uKCkiIG1hY2hlbiB3dWVyZGUgOykpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2gsIFJ5bmUuLi4gKFllbmRpLCAyNC4gQXVnIDE5OTUsIDIwOjM3OjIyKToKCk5ldWxpY2gsIFJMIGltIFJhdW0gNjAxOgoKRGllcyBpc3QgZGVyIFRlcm1pbmFscmF1bSBpbSA2LiBTdG9jayBkZXMgTWF0aGUtSW5zdGl0dXRzIGRlciBXV1UuCkhpZXIgc3RlaGVuIDYgbWVociBvZGVyIHdlbmlnZXIgc2NobmVsbGUgU1VOcyBydW0uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBPc3Rlbi4KTmljaHQgbnVyIHNhdWJlciwgc29uZGVybiBSeW5lLgpEci4gbXVkLiBUb2V0ZXIuClJvY2h1cyBkaWUgbGlua2UgdW5kIGRpZSByZWNodGUgSGFuZCBkZXMgVG9kZXMuCgo+IFRvZXRlciBzYWd0OiBFcyBpc3QgZXJzdGF1bmxpY2gsIGF1ZiB3aWV2aWVsIFBhcnR5cGhvdG9zIGlyZ2VuZHdlbGNoZSBMZXV0ZQpUb2V0ZXIgc2FndCA6IGFtIHJ1bWJhZ2dlcm4gc2luZC4uLgpSeW5lIGRlbmt0LgpLbGVpbmUgUmF1Y2h3b2Vsa2NoZW4gc3RlaWdlbiBhdWYuClJ5bmUgc2FndDogS29taXNjaCwgaWNoIGJpbiBhdWYgZGllc2VyIFBhcnR5IGdhciBuaWNodCBhbmdlYmFnZ2VydCB3b3JkZW4hClRvZXRlciBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KPiBEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uClJvY2h1cyBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KPiBEdSBncmluc3QgYnJlaXQuClJ5bmUgc2FndDogWWVuZGksIHdlbm4gRHUgZGFzIGluIHNjaG1hcnJuIHBvc3Rlc3QsIGJpc3QgRHUgdG90IQo+Cj4gRHUgZ3JpbnN0IHNlZWVlZWhyIGJyZWl0LgoKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9oLCBSeW5lLi4uIChBc21vZGlzLCAyNC4gQXVnIDE5OTUsIDIwOjQ4OjQ1KToKIyEgcm49WWVuZGkgcnQ9ODA5Mjg5NDQyCkhtbSwgdW0gMjA6NDkgbGVidGUgWWVuZGkgbm9jaCwgbWFjaCBtYWwsIFJ5bmUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogT2gsIFJ5bmUuLi4gKFRvc3MsIDI0LiBBdWcgMTk5NSwgMjE6MDg6MTApOgojISBybj1Bc21vZGlzIHJ0PTgwOTI5MDEyNQpqbywgYWJlciBzb2xjaGUgYW5kcm9odW5nZW4gbWFjaCBpY2ggbWVpc3Qgcmwgd2Foci4uLgoKUnluZSwgZ2VodCBlcnN0bWFsIFllbmRpcyBGYWhycmFkIHZlcnN0ZWNrZW4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpZZXRpIF4zID8gKEtpd2ksIDI0LiBBdWcgMTk5NSwgMjE6NTY6MzUpOgoKWWV0aSBrbnVkZGVsdCBZZXRpLCBGZWxzLCBUYXNoYSwgWWV0aSwgQWxib2luIHVuZCBEaWNoLgoKa29taXNjaCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVuZ2VrdWVyenQgKEphZiwgMjUuIEF1ZyAxOTk1LCAwMDoxMTo1Nyk6CkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uClJ1ZGlyYXR0ZXIgd2lyZCBpbW1lciBXSUxERVIhISEhLgpFaW4gQmVybmhhcmRpbmVyLgpEdSB2ZXJ3dXNjaGVsc3QgUnVkaXJhdHRlcnMgSGFhcmUuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBSdWRpcmF0dGVyLgoKClNlbHRzYW0uLi4KCkphZi4gR3J1ZWJlbG5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJlY2hoZWl0LiAoWm9yeWEsIDI1LiBBdWcgMTk5NSwgMDk6Mzc6NDYpOgpTb2ViZW4gLSB1bmdla3Vlcnp0OgpKdXJyeSBpc3QgYXVmIGRlciBTdWNoZSBuYWNoIGVpbmVyIHNjaG9lbmVuIEZyYXUuLi4uCkp1cnJ5IHNpZWh0IERpY2gsIGVyc3RhcnJ0LCB3aXJkIGtyZWlkZWJsZWljaCB1bmQgZmx1ZWNodGV0IG5hY2ggT3N0ZW4uCgoqc2V1ZnoqIEJpbiBpY2ggZGVubiBzbyBoYWVzc2xpY2g/ClpvcnlhIC0gdmVyYWVyZ2VydC4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnJlY2hoZWl0LiAoTGksIDI1LiBBdWcgMTk5NSwgMTE6MzA6NTUpOgojISBybj1ab3J5YSBydD04MDkzMzYyNjYKdmllbGVpY2h0IHdhciBpaG0gRGVpbmUgU0Nob2VuaGVpdCBkb2NoIHp1IHZpZWw/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnJlY2hoZWl0LiAoUmFmZmksIDI1LiBBdWcgMTk5NSwgMTY6MTE6NDcpOgojISBybj1ab3J5YSBydD04MDkzMzYyNjYKPiBKdXJyeSBpc3QgYXVmIGRlciBTdWNoZSBuYWNoIGVpbmVyIHNjaG9lbmVuIEZyYXUuLi4uCj4gSnVycnkgc2llaHQgRGljaCwgZXJzdGFycnQsIHdpcmQga3JlaWRlYmxlaWNoIHVuZCBmbHVlY2h0ZXQgbmFjaCBPc3Rlbi4KPiAqc2V1ZnoqIEJpbiBpY2ggZGVubiBzbyBoYWVzc2xpY2g/Cj4gWm9yeWEgLSB2ZXJhZXJnZXJ0LiA6LSkKCkRhcyBoYWIgaWNoIG1pY2ggYXVjaCBzY2hvbiBnZWZyYWd0CgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVjaCBtYWwgZWluIFJlemVwdCBwb3N0ZW4gKEFzbW9kaXMsIDI1LiBBdWcgMTk5NSwgMjM6MDA6NDcpOgpNaXIgZmllbCBnZXJhZGUgZm9sZ2VuZGVzIGludGVyZXNzYW50ZSwgYWJlciBlaW5mYWNoZSBSZXplcHQgaW4gZGllIEhhZW5kZSA6CgpQdXRlbnJvdWxhZGUgbWl0IFppdHJvbmVuLVNwaW5hdChmdWVyIDQgUGVyc29uZW4pCgpadXRhdGVuOgogICAgICA0ICAgIGR1ZW5uZSBQdXRlbnNjaG5pdHplbCAoYSAxODAKICAgICAgICAgICAtIC0gMjAwIGcpCiAgICAgIDEgdGIgT2VsCiAgICAgIDEgICAgUGsuIEJsYXR0c3BpbmF0ICgzMDAgZykKICAgICAgOCAgICBTYXJkZWxsZW5maWxldHMgb2RlcgogICAgICAgICAgIC0gU2FyZGVsbGVucGFzdGUKICAgICAgICAgICBTYWx6CiAgICAgICAgICAgUGZlZmZlcgogICAgMS8yICAgIFppdHJvbmUKICAgICAgMiAgICBLbm9ibGF1Y2h6ZWhlbgogICAgICAgICAgIGdlbS4gTXVza2F0CiAgICAgIDEgdGIgTWVobAogICAgICAxIHRiIEJ1dHRlcnNjaG1hbHoKICAgIDEvNCBsICBIdWVobmVyYnJ1ZWhlIChpbnN0YW50KQogICAgICA0IGNsIFNoZXJyeQogICAgICAxIHRzIFNvc3NlbmJpbmRlcgogICAgICAyIHRiIENyZW1lIGZyYWljaGUKCgpadWJlcmVpdHVuZzoKCiAgICBTcGluYXQgYXVmdGF1ZW4uIEtub2JsYXVjaHplaGVuIGZlaW4gaGFja2VuLiBTYXJkZWxsZW4ga2FsdAphYnNwdWVsZW4KICB1bmQgaGFja2VuLiBTcGluYXQgZ3JvYiB6ZXJ6dXBmZW4sIG1pdCBaaXRyb25lbnNhZnQsIEtub2JsYXVjaCwKTXVza2F0CiAgdW5kIFNhcmRlbGxlbiB2ZXJtZW5nZW4uCgogICAgRmxlaXNjaCBsZWljaHQgc2FsemVuIHVuZCBwZmVmZmVybiwgamVkZSBTZWl0ZSBkdWVubiBtaXQgT2VsCiAgYmVzdHJlaWNoZW4uIFNwaW5hdGZ1ZWxsdW5nIGF1ZiBkaWUgU2Nobml0emVsIHZlcnRlaWxlbiwgZW5nCmF1ZnJvbGxlbiwKICBtaXQgS3VlY2hlbmdhcm4gb2RlciBSb3VsYWRlbmhvZWx6Y2hlbiBiZWZlc3RpZ2VuLiBJbiBNZWhsIHdlbmRlbi4KCiAgICBSb3VsYWRlbiBpbiBoZWlzc2VtIEJ1dHRlcnNjaG1hbHogYXVmIDIgb2RlciBBdXRvbWF0aWstS29jaHN0ZWxsZQogIDkgLSAxMCB2b24gYWxsZW4gU2VpdGVuIGFuYnJhdGVuLiBEYW5uIG1pdCBoZWlzc2VyIEh1ZWhuZXJicnVlaGUKICBhYmxvZXNjaGVuIHVuZCAzMCAtIDQwIE1pbi4gYXVmIDEgb2RlciBBdXRvbWF0aWstS29jaHN0ZWxsZSA0IC0gNQogIGtvY2hlbmxhc3Nlbi4gUm91bGFkZW4gaGVyYXVzbmVobWVuLCB3YXJtIHN0ZWxsZW4uCgogICAgSW4gZGVuIFNjaG1vcmZvbmQgU29zc2VuYmluZGVyLCBTaGVycnkgdW5kIENyZW1lIGZyYWljaGUKZWlucnVlaHJlbiwKICBldHdhcyBlaW5rb2NoZW4gbGFzc2VuLCBndXQgYWJzY2htZWNrZW4sIG1pdCBkZW4gUm91bGFkZW4gYW5yaWNodGVuLgoKICAgIERhenUgc2NobWVja2VuIFJlaXMgdW5kIGVpbiBTYWxhdC4KCiAgICAxODcgZyBFaXdlaXNzLCA1NyBnIEZldHQsIDIxIGcgS29obGVuaHlkcmF0ZSwgNjEwOCBrSiwgMTQ1NiBrY2FsLgoKICBadWJlcmVpdHVuZ3N6ZWl0ICAgICA3MCBNaW51dGVuCiAgKiAgUXVlbGxlOiBXaW5rZSAmIFJlemVwdGUgOCAvIDk1CiAgZGVyIEhhbWJ1cmdpc2NoZW4gRWxlY3RyaWNpdGFldHN3ZXJrZSBBRwoKICAgICAgICAgVmllbCBTcGFzcyBiZWltIG5hY2hrb2NoZW4sIEFzbW9kaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdWNoIG1hbCBlaW4gUmV6ZXB0IHBvc3RlbiAoQXNtb2RpcywgMjUuIEF1ZyAxOTk1LCAyMzowNDozNyk6CiMhIHJuPUFzbW9kaXMgcnQ9ODA5Mzg0NDQ3CkFjaCBqYSwgdGIgc29sbCBFc3Nsb2VmZmVsIGJlZGV1dGVuLCB0cyBiZWRldXRldCBUZWVsb2VmZmVsLCB3b2hlciBkaWUKQWJrdWVyenVuZ2VuIHN0YW1tZW4gd2Vpc3MgaWNoIGF1Y2ggbmljaHQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZydWVoZXIuLi4gKEphZiwgMjYuIEF1ZyAxOTk1LCAwMDoyNjoxOCk6CgpzY2hvbiBldHdhcyB3ZWl0ZXIgdW50ZW4uLi4KIG1vbSAgICA9ICBzYWcgbW9tZW50CiBtdCAgICAgPSBtYWxlIHR1ZXIgYW4gd2FuZAogbiAgICAgID0genVlY2tlIGRhZW1vbmVuc2Nod2VydAogbjAgICAgID0gbmltbSAxIG11ZW56ZW4KLi4uIG4yICAgICA9IG5pbW0gMTAwIG11ZW56ZW4KIG4zICAgICA9IG5pbW0gMTAwMCBtdWVuemVuCiBuNCAgICAgPSBuaW1tIDEwMDAwIG11ZW56ZW4KLi4uCiBucyAgICAgPSBuaW1tIHN0YWNoZWwgdm9uIGxlaWNoZQouLi4KIG81ICAgICA9IG9yZG5lIDk3MjM0ODYxNQogLi4uCiBxMSAgICAgPSA6c3R1cHBzdCBub2NobWFsIGFuLiBFcyBxdWlldHNjaHQgaW1tZXIgbm9jaCBlcmJhZXJtbGljaC4KIC4uLgogcXFxICAgID0gdW50IHNwYWx0ZW4KIHFxcXEgICA9IHVudCBob2VobGVuCi4uLgogczQgICAgID0gOmhhdCBqZXR6dCBTdHVmZSA0IGVycmVpY2h0LgouLi4KIHNjYWh1ICA9IHNjaGF1CiAuLi4KIHN3ICAgICA9IHNwZW5kaWVyZSBwYXVsaW5lIHdoaXNreQogdCAgICAgID0gdG9ldGUgJCoKIHRhICAgICA9IHRvZXRlIGFsbGUKIHRhayAgICA9IHRvZXRlIGFrb2x5dGhpbgogdGIgICAgID0gdG9ldGUgYmxvb2Rnb3JlCiB0ZGkgICAgPSB0b2V0ZSBkaWVuZXIKLi4uIChodWh1LCBibG9vZGdvcmUgOikgKQogdW50Z2VydWVtcGVsICAgPSB1bnQgZ2VydWVtcGVsCi4uLgogdjAgICAgID0gdm9yc2ljaHQgMAogdjAwICAgID0gdm9yc2ljaHQgMAogdjEwICAgID0gdm9yc2ljaHQgMTAwCiB2MTEgICAgPSB2b3JzaWNodCAxMTAKIHYxMiAgICA9IHZvcnNpY2h0IDEyMAogdjIgICAgID0gdm9yc2ljaHQgMjAKIHYzICAgICA9IHZvcnNpY2h0IDMwCiB2NCAgICAgPSB2b3JzaWNodCA0MAogdjQwICAgID0gdm9yc2ljaHQgNDAKIHY1ICAgICA9IHZvcnNpY2h0IDUwCiB2NTAgICAgPSB2b3JzaWNodCA1MAogdjYgICAgID0gdm9yc2ljaHQgNjAKdXN3IDopCiB2a2EgICAgPSB2ZXJrYXVmZSBhbGxlcwogdmthcCAgID0gdmVya2F1ZmUgYWxsZXMgYXVzIHBha2V0CiB2a2IgICAgPSB2ZXJrYXVmZSBibGVjaAogdmtkICAgID0gdmVya2F1ZmUgZG9sY2gKIHZrZHIgICA9IHZlcmthdWZlIGRpZW5lcnJvYmUKIHZrZWggICA9IHZlcmthdWZlIGVjaHNlbmhlbG0KLi4uIHVzdwp1bmQgZGFubiBub2NobWFsOgogdnYgICAgID0gdm9yc2ljaHQgNTAKIHZ2aWkgICA9IHZvcnNpY2h0IDcwCiB2dmlpPXZvcnNpY2h0ICA9IDcwCiB2dmlpaSAgPSB2b3JzaWNodCA4MAogdnZpaWk9dm9yc2ljaHQgPSA4MAogdnggICAgID0gdm9yc2ljaHQgMTAwCiB2eGlpICAgPSB2b3JzaWNodCAxMjAKIHZ4diAgICA9IHZvcnNpY2h0IDE1MAogd24gICAgID0gc3RlY2hlIG5hZGVsCiAgemFuICAgID0gemllaGUgc2NsYW5nZW5oYXV0IGFuCiB6YW5zICAgPSB6aWVoZSBzY2hsYW5nZW5oYXV0IGFuCiB6YXVzcyAgPSB6aWVoZSBzY2hsYW5nZW5oYXV0IGF1cwouLi4KCkhtLCBiZWltIGVyc3RlbiBkdXJjaGxlc2VuIGZhbmQgaWNoJ3MgbHVzdGlnZXIuLi4KCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXVjaCBtYWwgZWluIFJlemVwdCBwb3N0ZW4gKER3aWdodCwgMjYuIEF1ZyAxOTk1LCAwMTowOToxNik6CiMhIHJuPUFzbW9kaXMgcnQ9ODA5Mzg0Njc3CmFlaCwgdHMgaGVpc3N0IHRhYmxlc3Bvb24sIHRiIHdlaXNzIGljaCBpbiBtZWluZW0sIGpldHppZ2VuIHp1c3RhbmQgYXVjZwpuaWNodCwgd3Vzc3RyZSBpY2ggYWJlciBzY2hvbm1hbCA6KQoKZHdpZ2h0CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJjaGllUXVlc3QgKEFuYWtpbiwgMjYuIEF1ZyAxOTk1LCAwNDo0NzozNik6CgpIbW0gbmV1bGljaCBuYWNodHMuLi4uCgp1bnQgYXJjaGl0ZWt0CkRlciBBcmNoaXRla3QgbWFjaHQgZWluZW4gdmVyendlaWZlbHRlbiBHZXNpY2h0c2F1c2RydWNrLiBFciBzY2hlaW50CnNlaW5lIFByb2JsZW1lIHNjaG9uIHNlaXQgbGFlbmdlcmVyIFplaXQgaW0gQWxrb2hvbCBlcnRyYWVua2VuIHp1IHdvbGxlbiwKZG9jaCBhbnNjaGVpbmVuZCBnZWxpbmd0IGVzIGlobSBuaWNodC4KRXIgaXN0IGFic29sdXQgZml0LgpFciB0cmFlZ3QgYmVpIHNpY2g6CkRlciA2LiBUZWlsIHZvbSB6ZXJpc3NlbmVuIFBsYW4uCkRlciA0LiBUZWlsIHZvbSB6ZXJpc3NlbmVuIFBsYW4uCkRlciAyLiBUZWlsIHZvbSB6ZXJpc3NlbmVuIFBsYW4uCkRlciAzLiBUZWlsIHZvbSB6ZXJpc3NlbmVuIFBsYW4uCkRlciAxLiBUZWlsIHZvbSB6ZXJpc3NlbmVuIFBsYW4uCkRlciA5LiBUZWlsIHZvbSB6ZXJpc3NlbmVuIFBsYW4uCkRlciAxMS4gVGVpbCB2b20gemVyaXNzZW5lbiBQbGFuLgpEZXIgMTIuIFRlaWwgdm9tIHplcmlzc2VuZW4gUGxhbi4KRGVyIDUuIFRlaWwgdm9tIHplcmlzc2VuZW4gUGxhbi4KRGVyIDYuIFRlaWwgdm9tIHplcmlzc2VuZW4gUGxhbi4KRGVyIDcuIFRlaWwgdm9tIHplcmlzc2VuZW4gUGxhbi4KRGVyIDguIFRlaWwgdm9tIHplcmlzc2VuZW4gUGxhbi4KRGVyIDEwLiBUZWlsIHZvbSB6ZXJpc3NlbmVuIFBsYW4uCgoKCkFuYWtpbi4gKCpncmlucyopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZnJ1ZWhlci4uLiAoQ2FyYWRocmFzLCAyNi4gQXVnIDE5OTUsIDA1OjMxOjU2KToKIyEgcm49SmFmIHJ0PTgwOTM4OTU3OAogLSAgICAgID0gemllaGUgcmluZyA0IGFuCiAxMSAgICAgPSB0ZWlsZSBnYXN0MSBtaXQgJCoKIDIyICAgICA9IHRlaWxlIGdhc3QyIG1pdCAkKgogYWEgICAgID0gbmltbSAkKiBhdXMgc2FyZwogYWQgICAgID0ga2xldHRlciBzdHVmZW4gcnVudGVyCiBhcmdsbCAgPSA6YXJnbGxpbnp0LgogYmF5ICAgID0gcmtudWRkbGUgJCogL3NvIHJpY2h0aWcgYmF5cmlzY2gKIGMgICAgICA9IHZvcm5lCiBlaW5zendlaSAgICAgICA9IHRpdGVsIC0gQWlueiAtIFp3YWkgLSBEcmFpIC0gRmllciAtIEZ1ZW5uZiAtIFNla3MgLSBTaXBlbgotIEFjaGQgLSBOYWV1biAtIFRzZWhuCiBmbHVjaGUgPSBmbHVjaGUgL0xpbnohCiBnZiAgICAgPSBnaWIgZmxhc2NoZSBhbiByYWlzdGxpbgogZ3J1ZW4gID0gcmtudWRkbGUgJCogL21pdCBJbnNlbGdydWVuCiBoYW4gICAgPSAtazpzaW5ndDogRWluIEZyZXVuZCwgZWluIGd1dGVyIEZyZXVuZC4uLi4gdW5kIGJyaW5ndCBzZWluZW4KUHJvZmVzc29yIHVtLgogaGlja3NlID0gOnNhZ3QgYXVjaDogPEhpY2s+IQogaHVjaCAgID0gOmVyc2Nocmlja3QhCiBpY2ggICAgPSBlbW90ZQogbHAgICAgID0gdW50IG1hdWVyCiBvcmsgICAgPSB0ZWlsZSByYXkgbWl0IERlciBCdW1lcmFuZyB0cmlmZnQgZGVuIE9yayBhbSBLb3BmLgogcmVkZSAgID0gZXJ6YWVobGUKIHJsa251ZGRsZSAgICAgID0gdGVpbGUgJCogbWl0IENhcmFkaHJhcyBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuIEVyCm11c3MgRGljaCBzZWhyIGxpZWIgaGFiZW4uCiByb2xsZSAgPSA6cm9sbHQgbWl0IGRlbiBBdWdlbi4KIHRoaW5rYSA9IDpncmluc3QgYnJlaXQsIGJyZWl0LCBicmVpdGVyIC4uLgogdG9sICAgID0gcmtudWRkbGUgJCogIC91bmQgRHUgc2NobGFlZnN0LCB1bmQgRGVpbmUgVHJhZXVtZSBkdXJjaHppZWh0IGVpbmUKTXVzaWssIHphcnRlciB1bmQgcmVpbmVyIGFscyBEdSBzaWUgamUgdmVybm9tbWVuIGhhc3QsIHVuZCBzaWUgaXN0IGVyZnVlbGx0CnZvbiBTZWhuc3VjaHQuIFdhaHJsaWNoLCBlcyBpc3QgYWxzIG9iIHNpbGJlcm5lIFBmZWlmZW4gb2RlciBGbG9ldGVuIHZvbgphbGxlcnppZXJsaWNoc3RlciBHZXN0YWx0IGtyaXMKIHdpcnIgICA9IGVjaG8gRGVyIEdvbGRkcmFjaGUgQ2FyYWRocmFzIGt1Y2t0IHZlcndpcnJ0IGF1cyBkZXIKUmFjaGVuZHJhY2hlbnR1ZXRlLgoKICAgTmEsIHNvIHNjaG9lbiB3aWUgRnl0cyBzaW5kIHNpZSBsZWlkZXIgbmljaHQuIDotKQogICBEYWZ1ZXIgYWJlciBhdWNoIHNpbm5sb3Mgd2VuaWdzdGVucy4KCiAgICAgICAgICBDYXJhZGhyYXMgZGVyIGV3aWdlIFByb3BoZXQKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQcmluemVzc2luIFVraGF6aSB3aWxsIGJlZnJlaXQgd2VyZGVuLi4uIChBcnR5LCAyNi4gQXVnIDE5OTUsIDE2OjI2OjA2KToKPiBmcmFnZSB6d2VyZyBuYWNoIHplbGxlClVraGF6aSBzYWd0OiBCcmluZyBtaWNoIGhpZXIgcmF1cywgYWJlciBzY2huZWxsIQpmcmFnZSBwcmluemVzc2luIG5hY2gga29lbmlnClVraGF6aSBzYWd0OiBEYXMgaXN0IG1laW4gVmF0ZXIsIHdlbm4gRHUgbWljaCBuaWNodCBzY2huZWxsIGhpZXIgcmF1c2hvbHN0LApVa2hhemkgc2FndDogd2lyZCBlciBEaWNoIHNjaHdlciBiZXN0cmFmZW4hCj4gZnJhZ2UgendlcmcgbmFjaCBiZWZyZWl1bmcKVWtoYXppIHNhZ3Q6IFdhcyBpbnRlcmVzc2llcnQgbWljaCBkZW5uIGRhcz8KCipncmlucyogTmEgd2VubiBkYXMgc28gaXN0Li4uLgoKQVJUWQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcGFyYWxsZWx3ZWx0IChDYXJhZGhyYXMsIDI3LiBBdWcgMTk5NSwgMDI6NTg6NTQpOgpFaW4gbWFnaXNjaGVzIFBvcnRhbC4KRHUgdmVybGllcnN0IGZ1ZXIgZWluZW4gTW9tZW50IGRpZSBPcmllbnRpZXJ1bmcuCkR1IGhhc3QgZGFzIGtvbWlzY2hlIEdlZnVlaGwsIGRhc3MgYmVpbSBUZWxlcG9ydGllcmVuCmV0d2FzIGZhbHNjaCBnZWxhdWZlbiBzZWluIGtvZW5udGUuLi4KUmFuZCBkZXIgSG9jaGViZW5lLgogKiogQWxzbyBoaW4genVtIFBvcnRhbCAqKgoKQW5zY2hlaW5lbmQgaXN0IGdlcmFkZSBpcmdlbmQgZXR3YXMgYmVzb25kZXJlcyBnZXNjaGVoZW4uLi4KRHUgd2Vpc3N0IG51ciBuaWNodCB3YXMuLi4KTWlyaWwncyBTdHVkaWVyemltbWVyLgogKiogdW5kIHp1bSBuYWVjaHN0ZW4gUG9ydGFsIHdpZWRlciAtPiBIb2NoZWJlbmUgKioKCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4gdW5kIG5vcmRlbi4KRXR3YXMuCkVpbiBtYWdpc2NoZXMgUG9ydGFsLgpEdSB2ZXJsaWVyc3QgZnVlciBlaW5lbiBNb21lbnQgZGllIE9yaWVudGllcnVuZy4KQW0gQmFjaC4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiwgd2VzdGVuLCBub3JkZW4gdW5kIG9zdGVuLgpFaW5lIEtyb2V0ZS4KRWluIEZyb3NjaC4KRWluIG1hZ2lzY2hlcyBQb3J0YWwuCkR1IGhhc3QgZGFzIGtvbWlzY2hlIEdlZnVlaGwsIGRhc3MgYmVpbSBUZWxlcG9ydGllcmVuCmV0d2FzIGZhbHNjaCBnZWxhdWZlbiBzZWluIGtvZW5udGUuLi4KCiAqKiBzYW1lIHByb2NlZHVyZSBhcyBldmVyeSB0ZWxlcG9ydCwgbWlzcyBzb3BoaWUgKioKCiAgICAgIENhcmFkaHJhcyAtIGR1cmNoIGRpZSBQYXJhbGxlbHdlbHQgaHVlcGZlbmQgKnNldWZ6KgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmEgc28gZWluIHNjaG1hcnJuIChGYW51aWRob2wsIDI3LiBBdWcgMTk5NSwgMDU6NDE6MDcpOgpQZmZoLCBDYXJhIHVuZCBzZWluIHRlaWxlLW1pdC13ZWl0ZXJsZWl0dW5ncy10cmlnZ2VyOgoKQ2FyYWRocmFzIHRlaWx0IERpciBtaXQgRGVyIEphZWdlciBoYXQgbWl0IG1pdGdldGVpbHQ6IFBTU1NUISBEdQpDYXJhZGhyYXMgdGVpbHQgRGlyIG1pdCB2ZXJzY2hldWNodCBtaXIgZGllIFRpZXJlICEKCiAgICAgICpraWNoZXJuZCogICAgICAgICBGYW51aWRob2wsIHNlaW5lcyBaZWljaGVucyBNZWxkZWVtcGZhZW5nZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmh1dWNoPyAoQ2FyYWRocmFzLCAyNy4gQXVnIDE5OTUsIDA1OjQ3OjA1KToKV2llc28gc3RlaHQgYmVpIG1pciBiZWkga251ZGRsZSBhbGxlICh3ZW5uIG5pZW1hbmQgc29uc3QgaW0gUmF1bSBpc3QpOgoiTmljaHRzIHVuZCBuaWVtYW5kIGRhLiBTY2hhdSBEaWNoIG5hZWNoc3RlcyBNYWwgYmVzc2VyIHVtLiIKCnVuZCBiZWkgRmFudWlkaG9sIHN0ZWh0OgoiS2VpbmVyIGRhLiBTY2hhdSBEaWNoIG5hZWNoc3RlcyBNYWwgYmVzc2VyIHVtLiIKCiAgICBDYXJhZGhyYXMgLSBzdGF1bmVuZCB1bSA2IFVociBtb3JnZW5zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWx0c2FtZSBEaW5nZSBpbiBaYXJkb3ogQnVyZyAoS2hpZGFyLCAyNy4gQXVnIDE5OTUsIDA2OjM4OjMwKToKTmV1bGljaCBiZWltIFdhc3NlcnVud2VzZW46CiAgRHUgZ3JlaWZzdCBkYXMgV2Fzc2VydW53ZXNlbiBtaXQgZGVtIExhbmdzY2h3ZXJ0IGFuLgogIER1IHNjaGxhZWdzdCBlaW5lbiBUZWlsIHZvbSBVbndlc2VuIGFiLgogIERlciBTY2hsYWcgZ2VodCBkdXJjaCBkYXMgVW53ZXNlbiBoaW5kdXJjaC4KICBEdSB2ZXJmZWhsc3QgZGFzIFdhc3NlcnVud2VzZW4uCgpIbSwgYWxzbyBlbnR3ZWRlciBnZWh0IGRlciBTY2hsYWcgZHVyY2ggdW5kIG1hY2h0IG5peCBvZGVyIGVyIHRyaWZmdCB1bmQKc2NobGFlZ3QgYWIsIGFiZXIgc28gaXN0IGRhcyBzY2hvbiByZWljaGxpY2ggc2VsdHNhbS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBodXVjaD8gKFRhc2hhLCAyNy4gQXVnIDE5OTUsIDEyOjU4OjEyKToKIyEgcm49Q2FyYWRocmFzIHJ0PTgwOTQ5NTIyNQpIbW0sIHZpZWxsZWljaHQgd2FyIGphIE5pY2h0cyBkYS4uLgoKTmljaHRzIHN0YW5lZGlnIGtudWRkZWxuZCwgVGFzaGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkphIHdvIHNpbmQgc2llIGRlbm4/IChTY2hydW1wZmksIDI4LiBBdWcgMTk5NSwgMDQ6MTk6MzkpOgogIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNb24sIDI4LiBBdWcgMTk5NSwgMDQ6MTc6MjYgKDQgVGVpbG5laG1lcikKCkFtYXpvcmEuLi4uLi4uLi5UICAqT2xpbS4uLi4uLi4uLi4ubSAgKCpXdXIuLi4uLi4uLi4pLnogIFNjaHJ1bXBmaS4uLi4uLi5NCgpTY2hydW1wZmkgd3VuZGVydCBzaWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBTExFSU5FPyAoU2lsdmFuYSwgMjguIEF1ZyAxOTk1LCAwNzozMTo0Nik6CkxhbmcgbmljaHQgbWVociBlcmxlYnQ6CiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNb24sIDI4LiBBdWcgMTk5NSwgMDc6MzA6MTIgKDEgVGVpbG5laG1lcikKClNpbHZhbmEuLi4uLi4uLi5FCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFlbm5lcnF1b3RlPyAoQmFyb24sIDI4LiBBdWcgMTk5NSwgMDg6MjI6MTQpOgpOZXVsaWNoLCBtb250YWdtb3JnZW4gaW0gTUcgOikKCltzXSBab3J5YSBkaWUgSGVsZGluIC0gTWVuc2NoIC0gW0JpZWxlZmVsZF0KW1NdIEFsaW5lIGRpZSBIZXhlIC0gRWxmIC0gW0hhZ2VuXQpbU10gQXVncmEgaXN0IGtlaW5lIEZhaHJsZWhyZXJpbjopIC0gTWVuc2NoIC0gW0JvY2h1bV0KW1NdIFhlcmEgdm9uIENhcmJvbmlhIC0gRWxmIC0gW0RldXRzY2hsYW5kXQpbTV0gRGFzIEJ1cmdmcmFldWxlaW4gR3dlbmh3eWZhciAtIGFkZWxpZyAtIFtLb2Vsbl0KW01dIFJlZCBCYXJvbiBkZXIgSGFobiBpbSBLb3JiIC0gRmxpZWdlciAtIFtCaWVsZWZlbGRdCltSXSBSb21pbGkgZGllIFd1ZXN0ZW5rYXR6ZSAtIE1hZ2llciAtIFtTYWFyYnJ1ZWNrZW5dCltFXSBTaWx2YW5hIEVyem1hZ2lzdHJhIC0gR2xldHNjaGVyZmVlIC0gW0JpZWxlZmVsZF0KClJlZCBCYXJvbiAtIGxlaWNodCB2ZXJ1bnNpY2hlcnQgdm9uIGRlciB1bmdsYXVibGljaGVuIFVlYmVybWFjaHQgZGVyIERhbWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXMgZ2lidCBMZXV0ZSBkaWUgd2lzc2VuIG5pY2h0IHdhcyBzaWUgdHVuOykgKEFsaW5lLCAyOC4gQXVnIDE5OTUsIDA4OjUxOjU3KToKTmV1bGljaCBpbSBad2VyZ2VuZG9yZjoKPiBBYmFrdXMga29tbXQgYW4uCkFiYWt1cyBnZWh0IG5hY2ggU3VlZGVuLgpBYmFrdXMga29tbXQgYW4uCkFiYWt1cyBnZWh0IG5hY2ggTm9yZGVuLgpBYmFrdXMga29tbXQgYW4uCkFiYWt1cyBnZWh0IG5hY2ggT3N0ZW4uCkFiYWt1cyBrb21tdCBhbi4KQWJha3VzIGdlaHQgbmFjaCBTdWVkZW4uCkFiYWt1cyBrb21tdCBhbi4KQWJha3VzIGdlaHQgbmFjaCBOb3JkZW4uCkFiYWt1cyBrb21tdCBhbi4KQWJha3VzIGdlaHQgbmFjaCBPc3Rlbi4KQWJha3VzIGtvbW10IGFuLgpBYmFrdXMgZ2VodCBuYWNoIFN1ZWRlbi4KQWJha3VzIGtvbW10IGFuLgpBYmFrdXMgZ2VodCBuYWNoIE5vcmRlbi4KQWJha3VzIGtvbW10IGFuLgpBYmFrdXMgZ2VodCBuYWNoIE9zdGVuLj4gQWJha3VzIGtvbW10IGFuLgpBYmFrdXMgZ2VodCBuYWNoIFN1ZWRlbi4KQWJha3VzIGtvbW10IGFuLgpBYmFrdXMgZ2VodCBuYWNoIE5vcmRlbi4KQWJha3VzIGtvbW10IGFuLgpBYmFrdXMgZ2VodCBuYWNoIE9zdGVuLgpBYmFrdXMga29tbXQgYW4uCkFiYWt1cyBnZWh0IG5hY2ggU3VlZGVuLgpBYmFrdXMga29tbXQgYW4uCkFiYWt1cyBnZWh0IG5hY2ggTm9yZGVuLgpBYmFrdXMga29tbXQgYW4uCkFiYWt1cyBnZWh0IG5hY2ggT3N0ZW4uCkFiYWt1cyBrb21tdCBhbi4KQWJha3VzIGdlaHQgbmFjaCBTdWVkZW4uCkFiYWt1cyBrb21tdCBhbi4KQWJha3VzIGdlaHQgbmFjaCBOb3JkZW4uCkFiYWt1cyBrb21tdCBhbi4KQWJha3VzIGdlaHQgbmFjaCBPc3RlbgoKVW5kIGRhcyBhbGxlcyBpbm5lcmhhbGIgdm9uIDQgTWludXRlbiEKCkFsaW5lIHN0YXVuZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSmEgd28gc2luZCBzaWUgZGVubj8gKEFzbW9kaXMsIDI4LiBBdWcgMTk5NSwgMTI6MTg6MDUpOgojISBybj1TY2hydW1wZmkgcnQ9ODA5NTc2Mzc5CldpciBzY2hsYWZlbiBub2NoIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBhdWYgZGVyIFNvbm5lbmluc2VsLi4uIChBZHJvbiwgMjguIEF1ZyAxOTk1LCAxNjoyNjo0Mik6CgpXYXJtZXIgd2VpY2hlciBTYW5kIHVuZCBTb25uZSBtYWNoZW4gZGllc2VuIFBsYXR6IHp1IGVpbmVtIGlkZWFsZW4KRXJob2x1bmdzb3J0IGZ1ZXIgZ2VzdHJlc3N0ZSBBYmVudGV1ZXJlci4gSGF0ZSBoYXQgc2ljaCBkaWVzZW4gU3RyYW5kCmRpcmVrdCB2b3Igc2VpbiBaZWx0IGVyc2NoYWZmZW4sIGRhbWl0IGVyIHNpY2ggbmFjaCBnZXRhbmVyIEFyYmVpdAphdXNydWhlbiBrYW5uLiBJbSBPc3RlbiBnbGl0emVydCBkYXMgTWVlciBpbSBnbGVpc3NlbmRlbiBTb25uZW5saWNodCB1bmQKaW0gU3VlZGVuIGxpZWd0IGVpbmUga2xlaW5lIHZlcnN0ZWNrdGUgQnVjaHQgbWl0IEJvb3Rlbi4gSW0gV2VzdGVuIHN0ZWh0CmVpbiBaZWx0IHVuZCBkZXIgU3RyYW5kIGVyc3RyZWNrdCBzaWNoIHdlaXRlciBuYWNoIE5vcmRlbi4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHdlc3RlbiB1bmQgbm9yZGVuLgpFaW5lIEpvbGxlLgpNYWVkY2hlbiBpbSBCaWtpbmkuCj4gbCBtYWVkY2hlbgpFaW4gdG9sbCBhdXNzZWhlbmRlcywgc2VociBmcmV1bmRsaWNoZXMgTWFlZGNoZW4gaW0gQmlraW5pLgpTaWUgaXN0IGFic29sdXQgZml0LgpsIGJpa2luaQpTb3dhcyBzaWVoc3QgRHUgaGllciBuaWNodCEKCgpPaCBsYSBsYWFhYS4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRpbWluZy4uIChaZXBoeXIsIDI4LiBBdWcgMTk5NSwgMTc6NTE6NTEpOgo+IERpZSBBbmdzdCBpc3Qgc3RhZXJrZXIgYWxzIER1IC4uLiBEdSB3aWxsc3QgbnVyIG5vY2ggd2VnIGhpZXIuCkVpbiBBYm9sZXRoIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KTGFieXJpbnRoLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuIHVuZCBub3JkZW4uCkVpbiBBYm9sZXRoLgpFaW4gQnVsbHl3dWcuCkVpbiBCdWxseXd1Zy4KRWluIEJ1bGx5d3VnLgpFaW4gZ2VsYmVyIEtyaXN0YWxsLgpFaW4gcm9zdGZyZWllcyBNZXRhbGxzY2hpbGQuCkVpbiByb3RlciBLcmlzdGFsbC4KRWluIHJvc3RmcmVpZXMgTWV0YWxsc2NoaWxkLgpFaW4gcm9zdGZyZWllcyBNZXRhbGxzY2hpbGQuCiAgRGVyIEFib2xldGggZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbiAzIE1hZXVsZXJuIGFuLgogIERlciBBYm9sZXRoIHRyaWZmdCBEaWNoIGhhcnQuCkR1IGhhc3QgamV0enQgNTMgTGViZW5zcHVua3RlIHVuZCA0IE1hZ2llcHVua3RlLgogIERlciBCdWxseXd1ZyBncmVpZnQgRGljaCBtaXQgc2F1Z25hcGZiZXdlaHJ0ZW4gRmluZ2VybiBhbi4KICBEZXIgQnVsbHl3dWcga3JhdHp0IERpY2guCkR1IGhhc3QgamV0enQgNTEgTGViZW5zcHVua3RlIHVuZCA0IE1hZ2llcHVua3RlLgogIERlciBCdWxseXd1ZyBncmVpZnQgRGljaCBtaXQgc2F1Z25hcGZiZXdlaHJ0ZW4gRmluZ2VybiBhbi4KICBEZXIgQnVsbHl3dWcgdHJpZmZ0IERpY2guCkR1IGhhc3QgamV0enQgNDYgTGViZW5zcHVua3RlIHVuZCA0IE1hZ2llcHVua3RlLgogIERlciBCdWxseXd1ZyBncmVpZnQgRGljaCBtaXQgc2F1Z25hcGZiZXdlaHJ0ZW4gRmluZ2VybiBhbi4KICBEZXIgQnVsbHl3dWcgdmVyZmVobHQgRGljaC4KPiBEdSBzdGVja3N0IGRhcyBsaWxhLWJsYXNzZSBCbHV0c2F1Z2VyLVNjaHdlcnQgenVydWVjay4KPiBEdSBoYXN0IHp1IHdlbmlnIFphdWJlcnB1bmt0ZSBmdWVyIGRpZXNlbiBTcHJ1Y2guCj4gRHUgenVlY2tzdCBkYXMgbGlsYS1ibGFzc2UgQmx1dHNhdWdlci1TY2h3ZXJ0Lgo+IER1IHN0ZWNrc3QgZGFzIGxpbGEtYmxhc3NlIEJsdXRzYXVnZXItU2Nod2VydCB6dXJ1ZWNrLgo+IER1IGhhc3QgenUgd2VuaWcgWmF1YmVycHVua3RlIGZ1ZXIgZGllc2VuIFNwcnVjaC4KCiAoKiogSGllciBldHdhIG4sbix0cmlua2Ugc3ByaXR6d2Fzc2VyICoqKQoKPiBEdSB6dWVja3N0IGRhcyBsaWxhLWJsYXNzZSBCbHV0c2F1Z2VyLVNjaHdlcnQuCj4gRHUgc3RlY2tzdCBkYXMgbGlsYS1ibGFzc2UgQmx1dHNhdWdlci1TY2h3ZXJ0IHp1cnVlY2suCj4gRHUgaGFzdCB6dSB3ZW5pZyBaYXViZXJwdW5rdGUgZnVlciBkaWVzZW4gU3BydWNoLgo+IERpZSBBbmdzdCBpc3Qgc3RhZXJrZXIgYWxzIER1IC4uLiBEdSB3aWxsc3QgbnVyIG5vY2ggd2VnIGhpZXIuCkVpbiBBYm9sZXRoIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KRWluIEJ1bGx5d3VnIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KRWluIEJ1bGx5d3VnIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KRWluIEJ1bGx5d3VnIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KTGFieXJpbnRoLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuIHVuZCB3ZXN0ZW4uCkVpbiBBYm9sZXRoLgogIERlciBBYm9sZXRoIGdyZWlmdCBEaWNoIG1pdCBzZWluZW4gMyBNYWV1bGVybiBhbi4KICBEZXIgQWJvbGV0aCB0cmlmZnQgRGljaCBoYXJ0LgpEdSBoYXN0IGpldHp0IDM2IExlYmVuc3B1bmt0ZSB1bmQgNCBNYWdpZXB1bmt0ZS4KRHUgenVlY2tzdCBkYXMgbGlsYS1ibGFzc2UgQmx1dHNhdWdlci1TY2h3ZXJ0LgpEaWUgQW5nc3QgaXN0IHN0YWVya2VyIGFscyBEdSAuLi4gRHUgd2lsbHN0IG51ciBub2NoIHdlZyBoaWVyLgpFaW4gQWJvbGV0aCBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkxhYnlyaW50aC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgbm9yZGVuLgpFaW4gQWJvbGV0aC4KRWluIEJ1bGx5d3VnLgpFaW4gQnVsbHl3dWcuCkVpbiBCdWxseXd1Zy4KRWluIGdlbGJlciBLcmlzdGFsbC4KRWluIHJvc3RmcmVpZXMgTWV0YWxsc2NoaWxkLgpFaW4gcm90ZXIgS3Jpc3RhbGwuCkVpbiByb3N0ZnJlaWVzIE1ldGFsbHNjaGlsZC4KRWluIHJvc3RmcmVpZXMgTWV0YWxsc2NoaWxkLgogIERlciBBYm9sZXRoIGdyZWlmdCBEaWNoIG1pdCBzZWluZW4gMyBNYWV1bGVybiBhbi4KICBEZXIgQWJvbGV0aCBrcmF0enQgRGljaC4KRHUgaGFzdCBqZXR6dCAzNCBMZWJlbnNwdW5rdGUgdW5kIDQgTWFnaWVwdW5rdGUuCiAgRGVyIEJ1bGx5d3VnIGdyZWlmdCBEaWNoIG1pdCBzYXVnbmFwZmJld2VocnRlbiBGaW5nZXJuIGFuLgogIERlciBCdWxseXd1ZyBrcmF0enQgRGljaC4KRHUgaGFzdCBqZXR6dCAzMiBMZWJlbnNwdW5rdGUgdW5kIDQgTWFnaWVwdW5rdGUuCiAgRGVyIEJ1bGx5d3VnIGdyZWlmdCBEaWNoIG1pdCBzYXVnbmFwZmJld2VocnRlbiBGaW5nZXJuIGFuLgogIERlciBCdWxseXd1ZyBrcmF0enQgRGljaC4KRHUgaGFzdCBqZXR6dCAzMCBMZWJlbnNwdW5rdGUgdW5kIDQgTWFnaWVwdW5rdGUuCiAgRGVyIEJ1bGx5d3VnIGdyZWlmdCBEaWNoIG1pdCBzYXVnbmFwZmJld2VocnRlbiBGaW5nZXJuIGFuLgogIERlciBCdWxseXd1ZyBrcmF0enQgRGljaC4KCigqKiB1bmQgImVuZGUiICoqKQooKiogQmFuZ2VuIHVuZCBIb2ZmZW4gKiopCgpEdSBoYXN0IGpldHp0IDI3IExlYmVuc3B1bmt0ZSB1bmQgNCBNYWdpZXB1bmt0ZS4KUHJvYmllciBtYWwgd2FzIGFuZGVyZXMgOikKPiBEdSBzdGVja3N0IGRhcyBsaWxhLWJsYXNzZSBCbHV0c2F1Z2VyLVNjaHdlcnQgenVydWVjay4KPiBEdSBoYXN0IHp1IHdlbmlnIFphdWJlcnB1bmt0ZSBmdWVyIGRpZXNlbiBTcHJ1Y2guCj4gRHUgenVlY2tzdCBkYXMgbGlsYS1ibGFzc2UgQmx1dHNhdWdlci1TY2h3ZXJ0Lgo+IFdpcmYgZXR3YXMgV0VHLCBvZGVyIHdhcyBtZWluc3QgRHUgPwo+IFdpcmYgZXR3YXMgV0VHLCBvZGVyIHdhcyBtZWluc3QgRHUgPwo+IER1IHppZWhzdCBkaWUgU2NodXBwZSBhbi4KPiBEdSB6aWVoc3QgZGllIFNjaHVwcGUgYXVzLgo+IFByb2JpZXIgbWFsIHdhcyBhbmRlcmVzIDopCj4gRGllIEFuZ3N0IGlzdCBzdGFlcmtlciBhbHMgRHUgLi4uIER1IHdpbGxzdCBudXIgbm9jaCB3ZWcgaGllci4KRWluIEFib2xldGggaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgpFaW4gQnVsbHl3dWcgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgpFaW4gQnVsbHl3dWcgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgpFaW4gQnVsbHl3dWcgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgpMYWJ5cmludGguCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4gdW5kIHdlc3Rlbi4KRWluIEFib2xldGguCiAgRGVyIEFib2xldGggZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbiAzIE1hZXVsZXJuIGFuLgogIERlciBBYm9sZXRoIHRyaWZmdCBEaWNoLgpEdSBoYXN0IGpldHp0IDIzIExlYmVuc3B1bmt0ZSB1bmQgNCBNYWdpZXB1bmt0ZS4KRGVyIEFib2xldGggYmVzcHVja3QgRGljaCBtaXQgU2FldXJlLgpEdSBoYXN0IGpldHp0IDE4IExlYmVuc3B1bmt0ZSB1bmQgNCBNYWdpZXB1bmt0ZS4KPiBEdSBzdGVja3N0IGRhcyBsaWxhLWJsYXNzZSBCbHV0c2F1Z2VyLVNjaHdlcnQgenVydWVjay4KPiBEdSBoYXN0IHp1IHdlbmlnIFphdWJlcnB1bmt0ZSBmdWVyIGRpZXNlbiBTcHJ1Y2guCj4gRHUgenVlY2tzdCBkYXMgbGlsYS1ibGFzc2UgQmx1dHNhdWdlci1TY2h3ZXJ0Lgo+IER1IHRyaW5rc3QgZGFzIGdlc2FtbWVsdGUgV2Fzc2VyIGluIGRlciBOaXNjaGUgdW5kIGZ1ZWhsc3QgRGljaCBndXQuCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMjA0IE1hZ2llcHVua3RlLgo+IFNwZWljaGVyZSBaZXBoeXIuCkJpcyBiYWxkIQpEdSB6aWVoc3QgZGFzIEFtdWxldHQgYXVzLgpEdSB6aWVoc3QgZGllIFNjaHVwcGUgYXVzLgpEdSB6aWVoc3QgZGFzIEJ1ZWZmZWxmZWxsIGF1cy4KRHUgemllaHN0IGRpZSBTY2hhdHRlbnJ1ZXN0dW5nIGF1cy4KRHUgemllaHN0IGRlbiBSaW5nIGF1cy4KRHUgemllaHN0IGRpZSBLcmlzdGFsbGtyb25lIGF1cy4KRHUgemllaHN0IGRhcyBQYWFyIFN0aWVmZWwgYXVzLgpEdSB6aWVoc3QgTGVkZXJoYW5kc2NodWhlIGF1cy4KRHUgemllaHN0IGRpZSBMZWRlcmhvc2UgYXVzLgoKKnBmZmZmZmZmZioKbGVpY2h0IHZlcmRhdHRlcnQsIFplcGgKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpsZWJlbmRpZyBnZWhhZXV0ZXQ/IChSZWluZWxkZSwgMjguIEF1ZyAxOTk1LCAyMjo1NDozNSk6CmF1ZiBkZW0gd2VnIHp1ciBzc3A6CkVzIGdpYnQgdmllciBzaWNodGJhcmUgQXVzZ2FlbmdlOiBub3JkZW4sIHN1ZWRvc3Rlbiwgb2JlbiB1bmQgdW50ZW4uCkVpbiB3aWxkZXIgV2lkZGVyLgpEZWluZSBjaGFvdGlzY2ggbXV0aWVydGUgSGF1dC4KCndlciB3b2xsdGUgbWlyIGRlbm4gZGEgd2llZGVyIGRhcyBmZWxsIHVlYmVyIGRpZSBvaHJlbiB6aWVoZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZXNjaGxlY2h0PyAoVGFzaGEsIDI4LiBBdWcgMTk5NSwgMjM6MzU6MjkpOgpMZXR6dGVucyBpcmdlbmR3byBpbSBNRzoKCktlcm1pdCBrb21tdCBtaXQgZWluZW0gZWxlZ2FudGVuIEh1ZXBmZXIgaGVyYmVpZ2VzcHJ1bmdlbi4KS2VybWl0IHZlcmZsdWVjaHRpZ3Qgc2ljaCBtaXQgZWluZW0gZWxlZ2FudGVuIFNwcnVuZyBuYWNoIE5vcmRlbi4KS2VybWl0IGtvbW10IG1pdCBlaW5lbSBlbGVnYW50ZW4gSHVlcGZlciBoZXJiZWlnZXNwcnVuZ2VuLgpLZXJtaXQgdmVyZmx1ZWNodGlndCBzaWNoIG1pdCBlaW5lbSBlbGVnYW50ZW4gU3BydW5nIG5hY2ggT3N0ZW4uCgpzZWx0c2FtLi4uaWNoIGRhY2h0ZSBpbW1lciBIdWVwZmVyIHdhZXJlIHdlaWJsaWNoLi4uCgpUYXNoYSwgc3RhdW5lbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBdWNoIG1hbCBlaW4gUmV6ZXB0IHBvc3RlbiAoWm9yeWEsIDI5LiBBdWcgMTk5NSwgMTE6NDQ6MTUpOgojISBybj1Ed2lnaHQgcnQ9ODA5MzkyMTU2Ck5pY2h0IGdhbnosIER3aWdodC4KdHMgPSBUZWFTcG9vbiB1bmQgdGIgPSBUYUJsZXNwb29uCgpab3J5YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR3JvZXNzZW52ZXJoYWVsdG5pc3NlLi4gKFZlcndpcnJ1bmcsIDI5LiBBdWcgMTk5NSwgMTQ6Mjg6NDkpOgoodW50IHNwaW5uZSkKRGllIFNwaW5uZSBpc3QgbWluZGVzdGVucyBkcmVpbWFsIHNvIGdyb3NzIHdpZSBEdS4KU2llIG1hY2h0IGVpbmVuIG1pdGdlbm9tbWVuZW4gRWluZHJ1Y2suCgooc2NoYWV0eiBzcGlubmUpCkRpZSBSaWVzZW5zcGlubmUgaXN0IHVuZ2VmYWVociAxNjggY20gZ3Jvc3MuCkRpZSBSaWVzZW5zcGlubmUgaXN0IHJlY2h0IHphZWguCkRlciBSaWVzZW5zcGlubmUgV2FmZmUgaXN0IHNlaHIgZ3V0LgpEZXIgUmllc2Vuc3Bpbm5lIFJ1ZXN0dW5nIGlzdCBleHRyZW0gZ3V0LgoKSG1tLi4gYmluIGljaCBkYW5uIG51ciA1NmNtIGdyb3NzPyA6KSkKVi4sIGxlaWNodCB2ZXJ3aXJydAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHcm9lc3NlbnZlcmhhZWx0bmlzc2UuLiAoWWVuZGksIDI5LiBBdWcgMTk5NSwgMTQ6MzQ6MDkpOgojISBybj1WZXJ3aXJydW5nIHJ0PTgwOTY5OTMyOQoKRHUgd2Vpc3N0IGRvY2gsIGluIGRlciBBdWZyZWd1bmcuLi4KCiIuLi51bmQgc2llIHdhciBTT09PT09PT08gZ3Jvc3MsIHVuZCBzaWUgaGF0dGUgc2llYmVudW5kZnVlbmZ6aWcgQmVpbmUsIHVuZAppaHJlIFphZWhuZSB3YXJlbiBTT09PT09PIGxhbmcsIHVuZCAuLi4iCgpBYmVyIGRhcyBicmF1Y2hlIGljaCBEaXIgZG9jaCBuaWNodCB6dSBlcnphZWhsZW4sIFZlcndpcnJ1bmcuLi4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0cm9ldCAoQ2FyYWRocmFzLCAzMC4gQXVnIDE5OTUsIDAzOjQ5OjM3KToKdHJvZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipzdGF1biogKEFsaW5lLCAzMC4gQXVnIDE5OTUsIDE1OjMyOjI0KToKCkRhIHByb2JpZXJ0IG1hbiBlaW5lIG5ldWUgUXVlc3QgdW5kIGRhbm4gZGFzOgouLi5BdXNzZXJkZW0gbGllZ3Qgbm9jaCBlaW5lIGtsZWluZSBIb2x6a3VnZWwgaW4gZWluZXIgZGVyIFphaGxlbi0KZWluYnVjaHR1bmdlbi4uLi4uLgp1bnQgaG9semt1Z2VsCkVpbmUgc2Nob2VuZSBLdWdlbCBhdXMgRWxmZW5iZWluLgoKRGFzIG5lbm5lIGljaCB3dW5kZXJzYW1lIE1hdGVyaWFsdmVyYWVuZGVydW5nCgpBbGluZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBiZWltIFNjaG1pZWQuLi4uIChSYWZmaSwgMzAuIEF1ZyAxOTk1LCAxODo1ODo0NCk6CkljaCBzdGVoIGRhIHNvIGJlaW0gWndlcmdlbnNjaG1pZWQgcnVtIHVuZC4uLgoKPiB2ZXJnbGVpY2hlIHVuaWZvcm0gbWl0IG9mZml6aWVyc3VuaWZvcm0KRHUgZ2lic3QgZGVtIFNjaG1pZWQgNTAwIEdvbGRzdHVlY2tlLgpEZXIgU2NobWllZCBzYWd0OiBEaWUgVW5pZm9ybSB3aWVndCBtZWhyIGFscyBkaWUgVW5pZm9ybS4KRGVyIFNjaG1pZWQgc2FndDogRGllIFVuaWZvcm0gaXN0IHNjaGxlY2h0ZXIgYWxzIGRpZSBVbmlmb3JtLgpSYWZmaSBkZW5rdCAgIC4gbyBPIChVbmdsYXViZW4hKQo+IGludgpFaW5lIExlZGVycnVlc3R1bmcuCkVpbmUgVW5pZm9ybS4KRWluIEtyaWVnc2ZsZWdlbC4KRWluIFByYWVzZW50aWVyc2FlYmVsLgpFaW5lIE9mZml6aWVyc3VuaWZvcm0uCkVpbiBKb2ludApFaW4gUGFhciBibGFua3BvbGllcnRlciBTdGllZmVsIChhbmdlem9nZW4pLgpFaW4gbmV1ZXIgT3JraGVsbSAoYW5nZXpvZ2VuKS4KRGFzIEFtdWxldHQgZGVyIFN0ZWluYmVpc3Nlci4KRWluIEVpc2FtdWxldHQgKGFuZ2V6b2dlbikuCkVpbiBGcmV1bmRzY2hhZnRzYmFuZCAoZ2V0cmFnZW4pLgpFaW4gZ2VsYmVzIFBvc3RwYWtldCAoZ2VvZWZmbmV0KS4KRWluZSBGYWNrZWwuCkVpbiBIZWJlbC4KRWluZSBzY2h3YXJ6ZSBLdXR0ZSAoYW5nZXpvZ2VuKS4KRWluZSBBeHQgKGdlenVlY2t0KS4KRWluZSBCb290ZGlza2V0dGUuCkVpbiBNaXRocmlscGFuemVyIChhbmdlem9nZW4pLgpFaW4gU2VpbC4KMTQwODkgTXVlbnplbi4KRGFzIFNlcnZpY2VwYWtldCB2b24gTW9yZ2VuZ3JhdWVucyBQcmVzc2VhZ2VudHVyLgpSYWZmaSBkZW5rdCAgIC4gbyBPIChOb2NobWFsISkKPiB1bnQgdW5pZm9ybSAxCkVpbmUgdmVyc3RhZXJrdGUgUGFyYWRldW5pZm9ybSBtaXQgZGVtIFdhcHBlbiB2b24gTW91bG9raW4uCj4gdW50IHVuaWZvcm0gMgpFaW5lIHZlcnN0YWVya3RlIE9mZml6aWVyc3BhcmFkZXVuaWZvcm0gbWl0IGRlbSBXYXBwZW4gdm9uIE1vdWxva2luLgo+IHZlcmdsZWljaGUgdW5pZm9ybSAxIG1pdCB1bmlmb3JtIDIKRHUgZ2lic3QgZGVtIFNjaG1pZWQgNTAwIEdvbGRzdHVlY2tlLgpEZXIgU2NobWllZCBzYWd0OiBEaWUgVW5pZm9ybSB3aWVndCBtZWhyIGFscyBkaWUgVW5pZm9ybS4KRGVyIFNjaG1pZWQgc2FndDogRGllIFVuaWZvcm0gaXN0IHNjaGxlY2h0ZXIgYWxzIGRpZSBVbmlmb3JtLgoKUmFmZmkgZGVua3QgICAuIG8gTyAoQXVzc2VyIFNwZXNlbiBuaXggZ2V3ZXNlbjooKQoKU292aWVsIHp1bSBUaGVtYSBPYmpla3RvcmllbnRpZXJ1bmcgOikKCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCBiZWltIFNjaG1pZWQuLi4uIChCb2luZywgMzAuIEF1ZyAxOTk1LCAxOToxNDozNik6CiMhIHJuPVJhZmZpIHJ0PTgwOTgwMTkyNApBZWggLi4uIHdvIGlzdCBkYXMgUHJvYmxlbT8KIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWxpY2ggYmVpbSBTY2htaWVkLi4uLiAoQ3VjaHVsbGluLCAzMC4gQXVnIDE5OTUsIDE5OjM3OjE4KToKIyEgcm49Qm9pbmcgcnQ9ODA5ODAyODc2CgpOYWphLCBlcyBpc3Qgb2Z0IG5pY2h0IGdhbnogZXJzaWNodGxpY2gsIGRhc3MgenVtIEJlaXNwaWVsIGRpZSBTY2hsYW5nZW5oYXV0CmF1Y2ggYXVmICdVbWhhbmcnIGFuc3ByaWNodCA7LSkKCkN1Y2guLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmpvZiAoUm9jaHVzLCAzMS4gQXVnIDE5OTUsIDE5OjMyOjA3KToKSm9mIHNhZ3Q6IEpldHp0IGlzIFNwaW9uIHJ1aGlnIDopCkpvZiBzYWd0OiBKZXR6dCBtYWNodCBlciBrZWluZW4gS3JhY2ggYXVmIERlYnVnIG1laHIKW0RlYnVnOl0gITxzcGlvbj4gc3RkL3BsYXllci9zb3VsLmMgaHVtYW46c3Bpb24gMjgyIEluZGV4IG91dCBvZiBib3VuZHMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBqb2YgKEphZiwgIDEuIFNlcCAxOTk1LCAwMDo1ODozMyk6CiMhIHJuPVJvY2h1cyBydD04MDk4OTAzMjcKClNvc28sIFNwaW9uZSBnaWJ0J3MuLi4gTmFqYSwgc2luZCB3aXIgamEgZ2V3b2VobnQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYmVpbSBlaW5rYXVmZW4gKFJhZmZpLCAgMS4gU2VwIDE5OTUsIDIxOjM4OjQ5KToKPiBrYXVmZSBsZW5kZW5zY2h1cnoKRHUga2F1ZnN0IGVpbmVuIExlbmRlbnNjaHVyego+IGJlc2NocmVpYmUgbGVuZGVuc2NodXJ6ClZvbSBtYWdpc2NoZW4gQXVnZSB3YWxsdCBOZWJlbCBhdWYsIGF1cyBkZW0gZGllIFdvcnRlIHRvZW5lbgpEZW4gTGVuZGVuc2NodXJ6IGhhZW5nc3QgRHUgdW0gRGVpbmUgU2NodWx0ZXJuLgpWZXJnbGljaGVuIG1pdCBSdWVzdHVuZ2VuIGRlcyBnbGVpY2hlbiBUeXBzIGlzdCBkaWVzZSBSdWVzdHVuZwp1ZWJlcmR1cmNoc2Nobml0dGxpY2g7Ckluc2dlc2FtdCBpc3Qgc2llIGVoZXIgc2NobGVjaHQsbGVpY2h0IHVuZCB6aWVtbGljaCBiaWxsaWcuCj4KCkltbWVyIHdpZWRlciBlcnN0YXVubGljaCB3YXNzIG1hbiBzbyBhbGxlcyB1bSBzZWluZSBzY2h1bHRlcm4gaGFlbmdlbiBoYXQgOikKCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ3Jvc3M/IChSZWluZWxkZSwgIDIuIFNlcCAxOTk1LCAwMToyNzoyMyk6CkRlciBOaWJlayBpc3QgZWluIGNhLiAxNSBNZXRlciBncm9zc2VzIFVuZ2V0dWVtIG1pdCBlaW5lbQpzY2hsYW5nZW5nbGVpY2hlbiBLb3BmIHVuZCBEdXR6ZW5kZW4gdm9uIGt1cnplbiwgc3RhZW1taWdlbiBCZWluZW4sIGF1ZgpkZW5lbiBlciBzaWNoIG1pdCBmdXJjaHRlcnJlZ2VuZGVyIEdlc2Nod2luZGlna2VpdCBmb3J0YmV3ZWdlbiBrYW5uLgpFciBpc3QgYWJzb2x1dCBmaXQuCkR1IGhhc3QgamV0enQgMjAyIExlYmVuc3B1bmt0ZSB1bmQgMjAwIE1hZ2llcHVua3RlLgpEZXIgTmliZWsgaXN0IHVuZ2VmYWVociAxNjggY20gZ3Jvc3MuCkRlciBOaWJlayBpc3QgcmVjaHQgemFlaC4KRGVzIE5pYmVrcyBXYWZmZSBpc3Qgc2VociBndXQuCkRlcyBOaWJla3MgUnVlc3R1bmcgaXN0IGV4dHJlbSBndXQuCgppc3QgZGVyIGFiZXIgZ2VzY2hydW1wZnQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVpbiBnYW56IG5vcm1hbGVyIHNhbXN0YWcgbW9yZ2VuLi4uIChNdXBmZWwsICAyLiBTZXAgMTk5NSwgMDE6NTU6MjgpOgpbVG9kOl0gRWluIFdpa2luZ2VyIGhhdCBnZXJhZGUgUXVlcmJlcnQgdW1nZWJyYWNodC4KW0FsbGdlbWVpbjpGcm9zY2ggVGFrZXRoYXRdIGRlciBucGMgYm9pbmcgbGFlc3N0IHNpY2ggbmV0IGFuZ3JlaWZlbiA6KApbVG9kOl0gU29ueWEgaGF0IGdlcmFkZSBIb3BwbGEgdW1nZWJyYWNodC4KW1RvZDpdIEFubmUgaGF0IGdlcmFkZSBUYWtldGhhdCB1bWdlYnJhY2h0LgpbVG9kOkFubmVdIGVpbiBGcm9zY2gsIER1IGhhZXR0ZXN0IGRhcyBkb2NoIGJlc3NlciBiZWkgSm9mIHByb2JpZXJlbiBzb2xsZW4hCltUb2Q6R29sdW1dIHNvIHJ1aWhnID8KW1RvZDpdIE1heCBoYXQgZ2VyYWRlIFF1ZXJiZXJ0IHVtZ2VicmFjaHQuCltUb2Q6XSBEaWUgdW5oZWltbGljaGUgSGFlbmdlYnJ1ZWNrZSBoYXQgZ2VyYWRlIFRha2V0aGF0IHVtZ2VicmFjaHQuCltUb2Q6RGllIHVuaGVpbWxpY2hlIEhhZW5nZWJydWVja2VdIERhcyBBZWNoemVuIGRlciBQbGFua2VuIGhvZXJ0IHNpY2gKW1RvZDpEaWUgdW5oZWltbGljaGUgSGFlbmdlYnJ1ZWNrZV0gaGFlbWlzY2ggYW4uCltUb2Q6XSBFaW4gV2VyZnRhcmJlaXRlciBoYXQgZ2VyYWRlIEhvcHBsYSB1bWdlYnJhY2h0LgpbVG9kOl0gRWluZSBTcGFnaGV0dGkgaGF0IGdlcmFkZSBUZXN0aWkgdW1nZWJyYWNodC4KCnVzdy4gdXN3LiB1c2YuLi4uIDotKQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUuIChTY2hydW1wZmksICAyLiBTZXAgMTk5NSwgMDM6MTQ6MzgpOgpbVG9kOl0gRWluIEFyYmVpdHNhbXRiZXJhdGVyIGhhdCBnZXJhZGUgQmVvYmFjaHRlciB1bWdlYnJhY2h0LgoKU2NocnVtcGZpIHNhZ3QgZGEgamV0enQgbml4IHp1ISA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1zZy1vdXQgLi4uIChDdWNodWxsaW4sICAyLiBTZXAgMTk5NSwgMDQ6MzE6MTMpOgoKSW1tZXIgd2llZGVyIGhlcnJsaWNoLCBzb3dhcy4uLgoKWGVyYSBzY2huaXBwdCBtaXQgZGVtIEZpbmdlciB1bmQgdmVyc2Nod2luZGV0IGF1ZiB1bmVya2xhZXJsaWNoZSBXZWlzZSBpbnMKUmVpY2ggZGVyIE5ldHp0b3Rlbi4KCkN1Y2guLSA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmViZW4gaW4gZGVyIGtyaXN0YWxsa3VnZWwgZ2VzY2hlaGVuLi4uIChEaG9qYWt0LCAgMi4gU2VwIDE5OTUsIDA1OjM1OjI3KToKPiBubwpEZXIgZmllc2UgQnJ1ZWNrZW50cm9sbCBicmVtc3QgRGljaDogU28gZ2VodCBkYXMgYWJlciBuaWNodCEgRXJzdCBtdXN0IER1IGRpZQpEZXIgZmllc2UgQnJ1ZWNrZW50cm9sbCBicmVtc3QgRGljaDogMTY2NiBNdWVuemVuIFpvbGwgYmV6YWhsZW4uIEVoZXIgbGFzc2VuCkRlciBmaWVzZSBCcnVlY2tlbnRyb2xsIGJyZW1zdCBEaWNoOiB3aXIgRGljaCBuaWNodCBnZWhlbi4KPiBnaWIgMTY2NiBtdWVuemVuIGFuIHRyb2xsCkR1IGdpYnN0IGRlbSBmaWVzZW4gQnJ1ZWNrZW50cm9sbCAxNjY2IE11ZW56ZW4uCkRlciBUcm9sbCBzYWd0OiBXYXMgc29sbCBpY2ggZGFtaXQuCgpEZXIgd2Vpc3Mgd29obCBhdWNoIG5pY2h0LCB3YXMgZXIgd2lsbC4uLgpLaGlkYXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaCwgaWNoIGxpZWJlIHJlc2V0cyAhISAoSmFuaWNlLCAgMi4gU2VwIDE5OTUsIDIzOjM0OjI4KToKCkdyYWQgZWJlbiBpbiBkZXIgU1NQOgoKRGVyIEJ1bWVyYW5nIHRyaWZmdCBkZW4gRWlzcmllc2VuIHNlaHIgaGFydCBhbSBLb3BmLgoKRGVyIEVpc3JpZXNlIGZhZWxsdCB0b3QgenUgQm9kZW4uCgpFaW4gRWlzcmllc2Uga29tbXQgYW4uCgoKdG9sbCwgbmljaHQgd2Focj8gOikKCkphbmljZSBtYWcgZGllIFNTUAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGF0ZT8gKEd1bmR1ciwgIDMuIFNlcCAxOTk1LCAyMzoxMjo0Nik6CmZpbmdlciBoYXRlCkhvcHBsYSAtIGRpZXNlciBOYW1lIGlzdCByZXNlcnZpZXJ0IG9kZXIgZ2VzcGVycnQgKCJnZWJhbmlzaHQiKSAhCk5hbnU/IQouLi4KR3VuZHVyIChyYXRsb3MpCgpvZGVyIGdlaG9lcnQgZGFzIG5hY2ggbWFnaWVyLmVudHdpY2tsdW5nPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU29zby4uIChTY2hydW1wZmksICA0LiBTZXAgMTk5NSwgMDE6Mzc6MTkpOgpmcmFnIHRpZ2VyIG5hY2ggc2NocnVtcGZpCkRlciBTYW5kdGlnZXIgZmx1ZXN0ZXJ0IERpciBsZWlzZSB6dTogT2gsIFNjaHJ1bXBmaSBtZWluc3QgZHUgPyBEYXMgaXN0IGVpbgpEZXIgU2FuZHRpZ2VyIGZsdWVzdGVydCBEaXIgbGVpc2UgenU6IG5ldHRlc3QgUG9sYXJoZXhjaGVuLCBkZXJlbiBHcnVmdCBrdXJ6CkRlciBTYW5kdGlnZXIgZmx1ZXN0ZXJ0IERpciBsZWlzZSB6dTogdm9yIGRlciBFaXN3dWVzdGUgenUgZmluZGVuIGlzdC4gRGEKRGVyIFNhbmR0aWdlciBmbHVlc3RlcnQgRGlyIGxlaXNlIHp1OiBzdGlyYnQgbWFuIHNvIHNjaG9lbiA6KSBCZWkgUGFydHlzIHVuZApEZXIgU2FuZHRpZ2VyIGZsdWVzdGVydCBEaXIgbGVpc2UgenU6IEZldGVuIGlzdCBzaWUgb2VmdGVycyBibGF1IGFuenV0cmVmZmVuLApEZXIgU2FuZHRpZ2VyIGZsdWVzdGVydCBEaXIgbGVpc2UgenU6IG1hbmNobWFsIGF1Y2ggTGlsYS4gQWJlciB3ZW5pZ3N0ZW5zCkRlciBTYW5kdGlnZXIgZmx1ZXN0ZXJ0IERpciBsZWlzZSB6dTogcmFuZGFsaWVydCBzaWUgZGFubiBuaWNodC4KQ2FyYSwgd2Fyc3QgRHUgZGFzIHZpZWxsZWljaHQ/IDstKQpTY2hydW1wZmkgd2FyIGF1ZiBkZXIgbGV0emVuIFBhcnR5IG51ZWNodGVybiEhISA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBncm9zcz8gKFVsbywgIDQuIFNlcCAxOTk1LCAwODoxOTozNyk6CiMhIHJuPVJlaW5lbGRlIHJ0PTgwOTk5ODA0MwpuYWphLAp2aWVsbGVpY2h0IGlzdCBlaW5lciBkZXIgYmVpZGVuIHdlcnRlIHdpZWRlciBtYWwgZGllIGZsdWdob2VoZSwgZGFubiBwYXNzdHMKamEKOikgdWxvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcG9uc29yZW4sIG9kZXIgbmljaHQ/IChTaWx2YW5hLCAgNC4gU2VwIDE5OTUsIDA5OjAxOjQ5KToKW01hZ2llcjpTaWx2YW5hXSBOYSwgbG9zLiBaaWVydCBFdWNoIG5pY2h0IHNvLiBJcmdlbmR3ZXIgd2lyZCBkb2NoIEJhYm9vbiBuZW4KW01hZ2llcjpTaWx2YW5hXSBWZXJ0cmFnIGNsb25lbiBrb2VubmVuLiA7KQpbTWFnaWVyOlNjaHJ1bXBmaSBoYXQgZ3JhZCBzdGVpZmUgZmluZ2VyIDstKV0KW01hZ2llcjpCYXJvbiBpc3Qgbm9jaCB6dSBrbGVpbiB1bSBwYXBhIHp1IHdlcmRlbiA6KV0KW01hZ2llcjpMaSAgc2NobGFlZnQgbm9jaF0KW01hZ2llcjpVbG9dIHdhcnVtIG5pY2h0IGR1LCBzaWx2aSA/CltNYWdpZXI6U2lsdmFuYSBoYXQga2VpbmUgTHVzdCB1bmQga2VpbmUgWmVpdCB6dSBzcG9uc29yZW4uXQpbTWFnaWVyOlNjaHJ1bXBmaSBoYXQgc2NobGljaHR3ZWcga2VpbmUgbHVzdF0KW01hZ2llcjpVbG8gIGtlbm50IGJhYm9vbiBuaWNodCAuLi5dCltNYWdpZXI6QmFyb24gZGV1dGV0IHF1ZW5nZWxuZCBhdWYgc2NocnVtcGZpXQpbTWFnaWVyOlNpbHZhbmEga2VubnQgaWhuIGF1Y2ggbmljaHQuXQpbTWFnaWVyOlNjaHJ1bXBmaV0gbmllbWFscywgYmFyb24KW01hZ2llcjpMaV0gaWNoIG11c3MgZ2xlaWNoIGFyYmVpdGVuISBoYWIga2VpbmUgWmVpdApbTWFnaWVyOlNjaHJ1bXBmaV0gaWNoIG11c3MgYXVmcyBhcmJlaXRzYW10CltNYWdpZXI6U2NocnVtcGZpXSBzb2xsIHphcmRveiBmcmFnZW4KW01hZ2llcjpTaWx2YW5hXSBPYiBCYWJvb24gYmVsZWlkaWd0IGlzdCwgd2VubiBpY2ggZGFzIGluIFNjaG1hcnJuIHBvc3RlPyA7KQpbTWFnaWVyOlNjaHJ1bXBmaSBncmluc3RdCltBbGxnZW1laW46TGkgZ3JpbnN0XQpbTWFnaWVyOlNjaHJ1bXBmaV0gdGFuZ2llcnQgbWljaCBwaGVyaXBoZXIgOi0pCltBbGxnZW1laW46QWxpbmVdIFdhcyBlcmhlaXRlcnQgRGljaCBMaT8KW01hZ2llcjpMaV0gbGFzcyBkYXMgbGllYmVyISBzb25zdCBkZW5rZW4gYWxsZSBzcGlsZXIgd2lyIG1hZ2llciB3YWVyZW4KW01hZ2llcjpMaV0gZWxpdGFlciAod2VubiBzaWUgZGFzIG1hbiBuaWNodCBlaCcgc2Nob24gZGVua2VuIQpbQWxsZ2VtZWluOlVsbyBsYWNodCBqZXR6dCBhdWNoIDotXQpbTWFnaWVyOlNjaHJ1bXBmaSBncmluc3QgbGkgYW5dCltBbGxnZW1laW46TGldIGFlaCwgbW9yZ2VuIGFsaW5lIQpbTWFnaWVyOlVsb10gdW5kIGRhc3Mgd2lyIHVuc2VyZSBtYWNodCBuaWNodCB0ZWxlbiB3b2xsZW4gOikKW01hZ2llcjpVbG9dIGFlaCB0ZWlsZW4KW0FsbGdlbWVpbjpTY2hydW1wZmldIGFscyBvYiB3aXIgbWFjaHRnZWlsIHdhZXJlbiwgcGZmZiA7LSkKW0FsbGdlbWVpbjpTY2hydW1wZmldIG9wcwpbQWxsZ2VtZWluOkxpIHJvdGZsdF0KW0FsbGdlbWVpbjpTaWx2YW5hIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLl0KW01hZ2llcjpTY2hydW1wZmldIGFscyBvYiB3aXIgbWFjaHRnZWlsIHdhZXJlbiwgcGZmZiA7LSkKW0FsbGdlbWVpbjpSb3NhXSBzb3NvCltBbGxnZW1laW46QWxpbmVdIEFjaCBzZWlkIElociBNYWdpZXIgZGFzIG5pY2h0PwpbQWxsZ2VtZWluOlNjaHJ1bXBmaSBpcyBkYXMgamV0enQgYWJlciBwZWlubGljaF0KW01hZ2llcjpMaSB0cml0dCBTQ2hydW1wZmldCltBbGxnZW1laW46QWxpbmUgZ3JpbnN0IFNjaHJ1bXBmaSB3aXNzZW5kIGFuXQpbTWFnaWVyOlNjaHJ1bXBmaV0gYXVhIQpbTWFnaWVyOlNpbHZhbmFdIE9LIC0gZXMga29tbXQgbmFjaCBzY2hhcnJuISA7KQpbTWFnaWVyOlNjaHJ1bXBmaV0gYXV3ZWlhIDotKQpbQWxsZ2VtZWluOlVsb10gd2FubiB3aXJkIGRlbm4gZW5kbGljaCBkZXIgYnVnIGluIGRlbiBlYmVuZW4gYmVzZWl0aWd0LCBkYXMKW0FsbGdlbWVpbjpVbG9dIGtvbW10IGphIG51biBzY2hvbiBoYWV1ZmlnZXIgdm9yLCBkYXMgZGFzIGdlbGFiZXIgd29hbmRlcnMKW0FsbGdlbWVpbjpVbG9dIGxhbmRldCAuLi4gOikKW0FsbGdlbWVpbjpTY2hydW1wZmldIGljaCBoYWIgLWEgZ2V0aXBwdCwgc3RhdHQgLW0gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFsaW5lLCAgNC4gU2VwIDE5OTUsIDE1OjI2OjU0KToKCltBbGxnZW1laW46V2FybG9yZF0gcHVoaCwgbm9jaG1hbCBnbHVlY2sgZ2VoYWJ0LiB2ZXJmbGl4dGVyIHdhZ2VuCltUb2Q6XSBFaW4gSG9sendhZ2VuIGhhdCBnZXJhZGUgV2FybG9yZCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBIb2x6d2FnZW5dIFVuZCBkZXIgV2FnZW4gZGVyIHJvbGx0IC4uLi4KCgouLi4KW0FsbGdlbWVpbjpXYXJsb3JkIG9yZ2FuaXNpZXJ0IHNpY2ggamV0enQgaXJnZW5kd28gaG9semtlaWxlXQoKQWxpbmUgKGdlc3Bhbm50IGF1ZiBXYXJsb3JkIHVuZCBkZXIgSG9sendhZ2VuIDIuIFRlaWwpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuaWVkZWNrZW4gYXVmIHpldHRlbCAoR3JpbW1ib3JuLCAgNC4gU2VwIDE5OTUsIDE2OjI3OjUxKToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBOaWVkZWNrZW4sICA0LiBTZXAgMTk5NSwgMTY6MjI6MjddOgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmluaXZzIChBbmFraW4sICA0LiBTZXAgMTk5NSwgMjA6MjU6MjUpOgo+IFd1ciAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbQWxsZ2VtZWluOkJlcm5oYXJkXSB3ZXIgaGF0IHNpY2ggZGVubiBpbiBkZXIgZ2lsZGUgYXVzZ2V6b2dlbj8KRHUgaGFzdCBqZXR6dCAyMzQgTGViZW5zcHVua3RlIHVuZCAyMDcgTWFnaWVwdW5rdGUuCmhhbGxvIHd1cgpLbnVkZGxlIHdlbj8KW0FsbGdlbWVpbjpCZXJuaGFyZF0gdmVybWlzc3QgZWluZXIgZXR3YXMgcGlua2UgcGlua2U/CnRtIHd1ciBodWh1IGR1IGludmlzCkplbWFuZCBtb2VjaHRlIGdlcmFkZSBuaWNodCBnZXN0b2VydCB3ZXJkZW4uCkRpZSBNaXR0ZWlsdW5nIHd1cmRlIHZvbiBlaW5lbSBrbGVpbmVuIEtvYm9sZCBpbiBFbXBmYW5nIGdlbm9tbWVuLgpFciB3aXJkIHNpZSBzcGFldGVyIHdlaXRlcmxlaXRlbiEKS2VpbiBzb2xjaGVyIFNwaWVsZXIgZWluZ2Vsb2dndC4KCgpXaWxsIGVyIG5pY2h0IGdlc3RvZXJ0IHdlcmRlbiBvZGVyIGlzdCBlciBuaWNodCBkYT8KCkFuYWtpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZPT09PT09EIEZJR0hUISEhIChZZW5kaSwgIDQuIFNlcCAxOTk1LCAyMToxODoxMCk6Cgo+IFZpY3RvcmlhIHJ1ZnQ6IFBVRElOR1NDSExBQ0hUCltBbGxnZW1laW46QXNtb2RpcyB3aXJmdCBlaW5lIFNhaG5ldG9ydGUgbmFjaCBTYWlrYW5dCltBbGxnZW1laW46U2FpS0FOIGR1Y2t0IHNpY2ggZ2VzY2hpY2t0IHVuZCBsYW5kZXQgaW0gUHVkZGluZ10KW0FsbGdlbWVpbjpWaWN0b3JpYSB3aXJmdCBub2NobWVociBQdWRkaW5nXQpbQWxsZ2VtZWluOkFzbW9kaXMgc2Nod2ltbXQgbmUgUnVuZGUgaW0gUHVkZGluZ10KW0FsbGdlbWVpbjpXaWxsb3cgdWViZXJnaWJ0IHNpY2ggZ2FueiBlbGVnYW50IGhpbnRlciBlaW5lciBlY2tlXQpbQWxsZ2VtZWluOlNhaUtBTiBkb2VwcHQgQXNtb2Rpc10KW0FsbGdlbWVpbjpWaWN0b3JpYSBzaXR6dCBpbSBQdWRkaW5nIGZlc3QgOihdCltBbGxnZW1laW46QXNtb2RpcyB3aXJmdCBuZSBMYWR1bmcgbmFjaCBTYWlrYW4gdW5kIHRyaWZmdCBpaG4gbWl0dGVuIGltCmdlc2ljaHRdCltBbGxnZW1laW46U2FpS0FOIGthYmJlcnQgYXVzIHZlcnNlaGVuIFZpYyBhbl0KW0FsbGdlbWVpbjpTYWlLQU4gdmVyc2NobHVja3Qgc2ljaCB2b3IgU2NocmVjayBhbSBQdWRkaW5nXQpbQWxsZ2VtZWluOldpbGxvd10gYWhhLCBzYWlrYW4sIGRpciBpc3QgbmljaHQgbWVociBsYW5nd2VpbGlnPz8/IDspCltBbGxnZW1laW46VmljdG9yaWEgbWFjaHQgZWluZW4gU2FpS0FOLVB1ZGRpbmddCltBbGxnZW1laW46U2FpS0FOXSBobW0gd2Vpc3MgbmNpaHQuLi4gbGFkZSBub2NoIDspKSkKW0FsbGdlbWVpbjpBc21vZGlzIHdpcmZ0IGV0d2FzIFB1ZGRpbmcgbmFjaCBXaWxsb3ddCltBbGxnZW1laW46U2FpS0FOIHdlaXNzIGRlciBTYWlrYW5wdWRkaW5nIHNjaG1lY2t0IG5pY2h0XQpbQWxsZ2VtZWluOlNhaUtBTiBpc3N0IGVpbiBTdHVlY2sgdm9uIHNpY2ggYXVmLl0KW0FsbGdlbWVpbjpXaWxsb3cgd2lyZCB2b24gZWluZW0gQmVyZyBQdWRkaW5nIGJlZ3JhYmVuLi4uXQpbQWxsZ2VtZWluOlZpY3RvcmlhXSBoYXQgZGVubiBrZWluZXIgbHVzdCBtZWluZW4gUHVkZGluZyB1bSBtaWNoIHJ1bSB6dQpbQWxsZ2VtZWluOlZpY3RvcmlhXSBmdXR0ZXJuID8KW0FsbGdlbWVpbjpBc21vZGlzIGJhdXQgZWluZW4gUHVkZGluZ21hbm5dCgoKSGFjaCBpc3NhcyBzY2hvZW9lb2VvZW9lb2VvZW4uLi4KCiAgICAgIFlUWSwgaGF0IEhVTkdBISAoYykgU2NocnVtcGZpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBpbSBJbnRlck5ldC4uLiAoWWVuZGksICA0LiBTZXAgMTk5NSwgMjE6Mjk6MjgpOgoKQXVzIGRlbSBFbmdsaXNjaGVuIHVlYmVydHJhZ2VuOgoKIkhlcnIsIGdpYiBtaXIgZGllIEtyYWZ0LCB6dSBhZW5kZXJuLCB3YXMgaWNoIGFlbmRlcm4ga2FubiwgZGllIEdlbGFzc2VuaGVpdCwKenUgZXJ0cmFnZW4sIHdhcyBpY2ggbmljaHQgYWVuZGVybiBrYW5uLCB1bmQgZGllIFdlaXNoZWl0LCBkaWUgTGVpY2hlbiBkZXJlcgp6dSB2ZXJiZXJnZW4sIGRpZSBpY2ggZXJzY2hsYWdlbiBtdXNzdGUsIHdlaWwgc2llIG1pY2ggZ2VuZXJ2dCBoYWJlbi4iCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFtBbGxnZW1laW5lc10gUGxheWVya2lsbCBpbiBkZXIgR2lsZGUgKEtoaWRhciwgIDUuIFNlcCAxOTk1LCAwMzo1NDo0Myk6CkZ1ZXIgZGllLCBkaWUgZXMgdW5iZWRpbmd0IHNlaGVuIHdvbGxlbi4uLgpEaWUgR2lsZGVudm9yZ2FlbmdlLCBpY2ggaGFiIGRhcyBuaWNodHp1Z2Vob2VyaWdlIHJhdXNnZXNjaG5pdHRlbi4uLgpEZXN3ZWdlbiBmZWhsdCBBc21vZGlzJyBBbmt1bmZ0LgoKTWFycyBzdGVpZ3QgYXVzIGVpbmVyIFJhdWNod29sa2UuCk1hcnMgc3RlaWd0IGF1cyBlaW5lciBSYXVjaHdvbGtlLgpNYXJzIHN0ZWlndCBhdXMgZWluZXIgUmF1Y2h3b2xrZS4KTWFycyBzdGVpZ3QgYXVzIGVpbmVyIFJhdWNod29sa2UuCkFzbW9kaXMgc2FndDogNHggTWFycyA6KQo+IHNjaGF1Ci4uLmdpbGRlbnJhdW1iZXNjaHJlaWJ1bmcuLi4KRGVyIEdlaXN0IHZvbiBNYXJzLgpEZXIgR2Vpc3Qgdm9uIE1hcnMuCkRlciBHZWlzdCB2b24gTWFycy4KRGVyIEdlaXN0IHZvbiBNYXJzLgpTaXIgTHVuY2ggYSBsb3QoZW5nbGlzY2gsIHBmdWkhKS4KQ3JvbGxhIGdpYnQgbmljaHQgYXVmIChmaW5zdGVyZSBDaGFvcy1BbWF6b25lKS4KRWluIFBlbHpjaGVuLgpUaG9yc29uIGVpbiBnYW56IGFsdGVyIFNlaGVyIG1pdCBsYW5nZW0gQmFydC4KRGFzIEhhbmRidWNoIGZ1ZXIgQW5mYWVuZ2VyLgpCaWxib20gZGVyIFphdWJlcmxlaHJsaW5nIChuZXR6dG90KS4KTWMgU3VzaGkgZGVyIEdpZnRpZ2UgKG5ldHp0b3QpLgpHYXN0MyBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyIChuZXR6dG90KS4KR2FzdDEgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlci4KRGVyIEdlaXN0IHZvbiBlaW5lbSBrbGVpbmVuIEZyb3NjaCBuYW1lbnMgQXNtb2RpcyBpc3QgZWluIGdhbnogZ2V3b2VobmxpY2hlcgpLYXJhdGUtS2FlbXBmZXIsIDk5LiBEYW4uCkRlciBHZWlzdCB2b24gQmVvYmFjaHRlci4KQ3VjaHVsbGluIG1hZyBuaWNodCBtZWhyLgpNYXRlZXNlIGRhcyBmZWxsaWdlIFdlc2VuLgpEdSBzYWdzdDogd2llIGdlaHQgZGVubiBkYXM/Pz8KU3VzaGkgc2FndDogRGFyZiBtYW4gZGVuIHRvZXRlbj8KQXNtb2RpcyBzYWd0OiBlaW5lbiBnZWlzdCA/Ckdhc3QxIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guClN1c2hpIHNhZ3Q6IE5hamEsIHZlcnN1Y2gncyBtYWwtLi4uCiAgQXNtb2RpcyBncmVpZnQgTWFycyBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIE1hZS1lbXBpLXVjaGkgYW4uCiAgQXNtb2RpcyB0cmlmZnQgTWFycyBoYXJ0LgogIE1hcnMgZ3JlaWZ0IEFzbW9kaXMgbWl0IGVpbmVtIFphdWJlcnN0YWIgYW4uCiAgQXNtb2RpcyB3ZWhydCBNYXJzJyBBbmdyaWZmIG1pdCBlaW5lbSBTb3RvLXN1a3VpLXVrZSBhYi4KICBNYXJzIHplcnNjaG1ldHRlcnQgQXNtb2RpcyBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KQXNtb2RpcyBmYWVsbHQgdG90IHp1IEJvZGVuLgpEdSBzaWVoc3QgZWluZSBkdW5rbGUgR2VzdGFsdCwgZGllIGV0d2FzIER1bnN0IGVpbnNhbW1lbHQgLi4uIG9kZXIKdmllbGxlaWNodApiaWxkZXN0IGR1IERpciBkYXMgYXVjaCBudXIgZWluIC4uLgpbVG9kOl0gTWFycyBoYXQgZ2VyYWRlIEFzbW9kaXMgdW1nZWJyYWNodC4KW0FsbGdlbWVpbjpMYXVyaW5dIGh1Y2gKW0JlaWxlaWQ6Qmlib10gSFVDSCA/Pz8KU3VzaGkgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCltCZWlsZWlkOkJsb2NrYnVzdGVyXSBVcHMhPwpMZXVzZWwgZ3JpbnN0LgpbQmVpbGVpZDpDcm9sbGFdIGhvcHBsYQpbQmVpbGVpZDpTdXNoaV0gKmJydWVsbCogKmdlaXVlciogRGFzIGhhZXR0ZXQgSWhyIGxpdmUgc2VoZW4gc29sbGVuOi0pKSkKW0JlaWxlaWQ6RmxvaF0gYXVjaCBIdWNoIChoYXQgQXNtb2RpcyBQcm9icyBtaXQgc2VpbmVuIFp3ZWl0aWVzID8/KSAuLSkpCltBbGxnZW1laW46TXVwZmVsXSBoZXkgLi4uLiBNYXJzIGlzdCBoaWVyIGJlaSBtaXIKVGhvcnNvbiB2ZXJzY2h3aW5kZXQgbmFjaCBOb3JkZW4uCkN1Y2h1bGxpbiBkZW5rdCAgIC4gbyBPIChNYW4gc29sbCBuaWNodCBtaXQgV2l6LVRvb2xzIHNwaWVsZW4sIHdlbm4gbWFuIHNpZQpuaWNodCBrZW5udC4pCltBbGxnZW1laW46TWFyc10gaWNoIGhhYiBtaXQgZWluZW0gemF1YmVyc3RhYiBhbmdlZ3JpZmZlbgpMZXVzZWwgc2FndDogV2VyIGhhdCBNYXJzIGVpZ2VudGxpY2ggZGllIEZlcm5iZWRpZW51bmcgZ2VnZWJlbgpNYXJzIHdpcmQgdm9uIE11cGZlbCB2b2xsIEhpbmdlYnVuZyB2ZXJzcGVpc3QuCk11cGZlbCBzYWd0OiBrZWluZSBhaG51bmcKRWluIFdvbGYga29tbXQgYW4uCmVpbiBXb2xmIHNhZ3Q6IGRhcyBpc3QgamEga3JpbWluZWxsClBmdXNoaSBzYWd0OiBXbyBpc3QgTWFycz8/Pz8KW01vZXJkZXI6R2Vpc3QgZWluZXMgU2tlbGV0dHNdIFdpZSBzb2xsIGRhcyBub2NoIGVuZGVuLCBCbG9ja2J1c3Rlcj8KUGZ1c2hpIHNhZ3Q6IEljaCB3aWxsIGlobiB0b2V0ZW4hCk11cGZlbCBzYWd0OiBtYXJzIGxpZWd0IGluIGVpbmVtIGxvY2gKQ3JvbGxhIHNhZ3Q6IGdhbnogd29hbmRlcnMKKEFzbW9kaXMga29tbXQgYW4uKQpUaG9yc29uIHNhZ3Q6IHdlbSBnZWhvZXIgZGVubiBkYXMgZ2FuemUgemV1ZyBoaWVyPwpBc21vZGlzIHNhZ3Q6IGdpYnRzIGRvY2ggbmljaHQsIDIyNiBscCBkdXJjaCBlaW5lbiBzY2hsYWcKTGV1c2VsIGRydWVja3QgYXVmIGVpbmVuIEtub3BmIHNlaW5lciBLbm9wZmxlaXN0ZS4KU3VzaGkgc2FndDogS2VubmUgaWNoIHZvbiBUb3JmZHVlbmcuLi4uCkJlZXRsZSBnZWh0IG5hY2ggTm9yZGVuLgpTdXNoaSBzYWd0OiAiS29tbSBpbiBkaWUgQXJlbmEsIFN1c2hpLCBpY2ggYmluIGpldHp0IHNvIHN0YXJrIHdpZQpTdXNoaSBzYWd0OiBEdSIuLi5qYWphLi4uCkFzbW9kaXMgc2FndDogZ3JlaWZ0IG1hbCBiZW9iYWNodGVyIGFuLCB3ZW5uIGlociBlaW4gaXJyZXMgZmVlbGluZyBlcmxlYmVuCkFzbW9kaXMgc2FndDogd29sbHQgOikKLi4uCkRhcyBNb25zdGVyICdCZW9iYWNodGVyJyBoYXQgZGFubiBub2NoIGVpbiBwYWFyIFNwaWVsZXJ0ZXN0aWVzIHVtZ2VicmFjaHQsCmRpZSB1bmJlZGluZ3QgbWFsIHNlaGVuIHdvbGx0ZW4sIHdpZSBkYXMgZ2VodC4uLgoKS2hpZGFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbHVkd2lndmFuIChMdWR3aWd2YW4sICA1LiBTZXAgMTk5NSwgMDQ6MzY6MjUpOgpRCgpgcQoKClEKCgpbM35bM34KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5hbWUgKEx1ZHdpZ3ZhbiwgIDUuIFNlcCAxOTk1LCAwNDozNzo0NCk6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYWNodHJhZ2VuZCBqYSwgVW5kYW5rIG5laW4gOi0pIChDdWNodWxsaW4sICA1LiBTZXAgMTk5NSwgMDQ6NTQ6MTgpOgoKTmlhbCBrb21tdCBhbi4KICBEZXIgV2FlY2h0ZXIgZ3JlaWZ0IE5pYWwgbWl0IGVpbmVtIEhhbW1lciBhbi4KICBEZXIgV2FlY2h0ZXIgdHJpZmZ0IE5pYWwuCiAgRGVyIFdhZWNodGVyIGdyZWlmdCBOaWFsIG1pdCBlaW5lbSBIYW1tZXIgYW4uCiAgRGVyIFdhZWNodGVyIHRyaWZmdCBOaWFsLgpVa2hhemkga29tbXQgYW4uCiAgTmlhbCBncmVpZnQgZGVuIFdhZWNodGVyIG1pdCBibG9zc2VuIEhhZW5kZW4gYW4uCiAgTmlhbCB2ZXJmZWhsdCBkZW4gV2FlY2h0ZXIuCkRlciBad2VyZ2Vua29lbmlnIHJ1ZnQ6IFVVVVVVS0hBQUFBQUFBQUFBQUFBQVpaWklJSUlJSUlJSUlJSUlJSUlJSUlJSUlJISEhCkRlciBad2VyZ2Vua29lbmlnIHVtYXJtdCBkaWUgUHJpbnplc3NpbiBzdHVlcm1pc2NoLgpVa2hhemkgc2FndDogSWNoIGdlaGUgbWljaCBqZXR6dCBlcnN0bWFsIGZyaXNjaG1hY2hlbi4KVWtoYXppIHZlcnNjaHdpbmRldCBkdXJjaCBlaW5lbiBHZWhlaW1nYW5nLgpEZXIgWndlcmdlbmtvZW5pZyBzYWd0OiBEYW5rZSwgTmlhbCwgaWNoIHN0ZWhlIGluIERlaW5lciBTY2h1bGQuCltBYmVudGV1ZXI6XSBOaWFsIGhhdCBnZXJhZGUgZWluIEFiZW50ZXVlciBiZXN0YW5kZW46IFNvcnV0aHMgUmFjaGUKTmlhbCBnZWh0IG5hY2ggTm9yZGVuLgoKT2huZSB3ZWl0ZXJlIFdvcnRlLApDdWNoLi0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogW0FsbGdlbWVpbmVzXSBQbGF5ZXJraWxsIGluIGRlciBHaWxkZSAoQXNtb2RpcywgIDUuIFNlcCAxOTk1LCAxODozOToxNSk6CiMhIHJuPUtoaWRhciBydD04MTAyNjYwODMKSWNoIHZlcnN0ZWggYXVjaCBuaWNodCwgZGFzcyBtYW4gc28gZWluIGdlZmFlaHJsaWNoZXMgdG9vbCBlaW5mYWNoCnNvIHJ1bWxpZWdlbiBsYXNzZW4ga2Fubi4gS3JpZWcgaWNoIG1laW5lIEVwIHdpZWRlciA/IDopCgoKUC5TLjogTWFycyBpc3QgbmljaHQgbWVpbiBad2VpdGllLCBvZGVyIHdhcyBzb2xsdGUgZGllIEFuc3BpZWx1bmcgdm9uIEZsb2ggPz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdvYmxpbiAoVGF6LCAgNi4gU2VwIDE5OTUsIDE2OjI4OjI5KToKSG1tIGZvbGdlbmRlcyBpc3QgcGFzc2llcnQuLi4uCgpFaW4gZ3Jvc3Nlciwgc2Nod2VyZXIgV2FnZW4gZG9ubmVydCBoZXJlaW4gdW5kIHVlYmVycm9sbHQgRGljaC4KW1RvZDpdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBUYXogdW1nZWJyYWNodC4KRGVyIFRlZGR5IGtudWRkZWx0IERpY2ggZWluIGxldHp0ZXMgTWFsLgpEdSBzaWVoc3QgZWluZW4gRmVobGVyIGltIFJhdW0tWmVpdC1HZWZ1ZWdlLgoKV2FzIGhhdCBtaWNoIHVtZ2VicmFjaHQ/IERlciBXYWdlbj8gRXR3YXMgdW5iZWthbm50ZXM/IE9kZXIgZGVyIFJaRz8KClRhei4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHb2JsaW4gKEFzbW9kaXMsICA2LiBTZXAgMTk5NSwgMTg6MzM6NDYpOgojISBybj1UYXogcnQ9ODEwMzk3NzA5Ck9kZXIgZGVyIFRlZGR5ID8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5hZWNoc3RlIFBhcnR5IChDYXR3ZWF6bGUsICA2LiBTZXAgMTk5NSwgMTk6MTc6MjMpOgojISBybj1TaWx2YW5hIHJ0PTgxMDM2NTI2NgpbVmVybGVndCB2b24gcGFydHksIEhhcmRpbCwgIDYuIFNlcCAxOTk1LCAxMDozOTo0M106ClNwZW5kaWVydCBERmFuY2VyIHdpZWRlciBCaWVyLCB3ZW5uIHdpciAxMDAwIFJlcGx5cyBzY2hhZmZlbj8gOy0pCgotSGFyZGlsLgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOYWVjaHN0ZSBQYXJ0eSAoQ2F0d2VhemxlLCAgNi4gU2VwIDE5OTUsIDE5OjE3OjI2KToKIyEgcm49SGFyZGlsIHJ0PTgxMDM3Njc4MwpbVmVybGVndCB2b24gcGFydHksIFBhcmFjZWxzdXMsICA2LiBTZXAgMTk5NSwgMTE6MDk6MjFdOgpJY2ggZ2xhdWIgbmljaHQsIGRlciB3aXJkIHNvbnN0IGF1ZiBkaWUgRGF1ZXIgYXJtIDopCgpQYXJhY2Vsc3VzIChoYWV0dGUgbGllYmVyIGVpbiBGYXNzIEd1aW5uZXMgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBOYWVjaHN0ZSBQYXJ0eSAoQ2F0d2VhemxlLCAgNi4gU2VwIDE5OTUsIDE5OjE3OjI2KToKIyEgcm49UGFyYWNlbHN1cyBydD04MTAzNzg1NjEKW1ZlcmxlZ3Qgdm9uIHBhcnR5LCBIYXJkaWwsICA2LiBTZXAgMTk5NSwgMTE6MTU6MzBdOgpJY2ggZGVua2UsIGRlciBUaWdlciBpc3QgZGF1ZXItaWRsZSwgd2VpbCBlciBuZWJlbmhlciBhcmJlaXRldC4gQWxzbyBhdWYgZ3V0CkRldXRzY2ggR2VsZCB2ZXJkaWVudC4gVW5kIGRhbWl0IGdpbHQgZXIgYWxzIHJlaWNoLCB1bmQgd2VubiBlciByZWljaCBpc3QsCmthbm4gZXIgYXVjaCBmdWVyIDEwMDAgUmVwbHlzIHdhcyBzcGVuZGllcmVuLiA6KQotSGFyZGlsLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE5hZWNoc3RlIFBhcnR5IChDYXR3ZWF6bGUsICA2LiBTZXAgMTk5NSwgMTk6MTc6MjgpOgojISBybj1IYXJkaWwgcnQ9ODEwMzc4OTMwCltWZXJsZWd0IHZvbiBwYXJ0eSwgUmVpbmVsZGUsICA2LiBTZXAgMTk5NSwgMTY6NDc6MjJdOgp3b3JhdWYgd2FydGVuIHdpciBkYW5uIG5vY2g/IGF1ZiBnZWh0cyA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5hZWNoc3RlIFBhcnR5IChDYXR3ZWF6bGUsICA2LiBTZXAgMTk5NSwgMTk6MTc6MzEpOgojISBybj1SZWluZWxkZSBydD04MTAzOTg4NDIKW1ZlcmxlZ3Qgdm9uIHBhcnR5LCBCaWxib20sICA2LiBTZXAgMTk5NSwgMTg6MjU6MzhdOgppY2ggbWFjaCBtaXQgYWJlciBzY2hpa3QgbWlyIGRhbm4gZWluIGJpZXIhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTmFlY2hzdGUgUGFydHkgKENhdHdlYXpsZSwgIDYuIFNlcCAxOTk1LCAxOToxNzozMyk6CiMhIHJuPVJlaW5lbGRlIHJ0PTgxMDM5ODg0MgpbVmVybGVndCB2b24gcGFydHksIEJpbGJvbSwgIDYuIFNlcCAxOTk1LCAxODoyNjoxN106CmFjaCwgaWNoIGhhYmUgdmVyZ2Vzc2VuIEJpbGJvbSB6dSBzY2hyZWliZW4uCiAgQmlsYm9tCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTmFlY2hzdGUgUGFydHkgKENhdHdlYXpsZSwgIDYuIFNlcCAxOTk1LCAxOToxNzozNSk6CiMhIHJuPUJpbGJvbSBydD04MTA0MDQ3NzcKW1ZlcmxlZ3Qgdm9uIHBhcnR5LCBBc21vZGlzLCAgNi4gU2VwIDE5OTUsIDE4OjMyOjUwXToKRGVyIFRpdGVsIGlzdCBhYmVyIGJsb2VkCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE5hZWNoc3RlIFBhcnR5IChDYXR3ZWF6bGUsICA2LiBTZXAgMTk5NSwgMTk6MTc6MzUpOgojISBybj1Bc21vZGlzIHJ0PTgxMDQwNTE3MApbVmVybGVndCB2b24gcGFydHksIEFzbW9kaXMsICA2LiBTZXAgMTk5NSwgMTg6MzM6MDldOgpTQ0hXVVBQRElXVVBQIGZhbmQgaWNoIG9yaWdpbmVsbGVyIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE5hZWNoc3RlIFBhcnR5IChDYXR3ZWF6bGUsICA2LiBTZXAgMTk5NSwgMTk6MTc6MzgpOgojISBybj1Bc21vZGlzIHJ0PTgxMDQwNTE4OQpbVmVybGVndCB2b24gcGFydHksIEthZW5ndXJ1aCwgIDYuIFNlcCAxOTk1LCAxODozODo1MF06CkFMTEVSRElOR1MuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS25laXBlbi1QcnVlZ2VsZWkgKEJlcm5oYXJkLCAgNi4gU2VwIDE5OTUsIDE5OjUwOjE2KToKTmV1bGljaCwKd29sbHRlbiBzaWNoIGRvY2ggZ2xhdHQgZGVyIFNoZXJpZmYgdW5kIGRlciBHb3R0IGluCmRlciBLbmVpcGUgdm9uIE1vcm9uIHBydWVnZWxuOgoKSm9mIHRyb2VzdGV0IGRlbiBOaWVtYW5kLgpDYXR3ZWF6bGUgc2NobGVpY2h0IHNpY2ggdm9uIGhpbnRlbiBhbiBEaWNoIGhlcmFuLgpKb2YgdmVyc3VjaHQsIGVpbmUgU2NobGFlZ2VyZWkgYW56dXpldHRlbG4hCkRlciBXaXJ0IHNhZ3QgenUgSm9mOiBLRUlORSBTQ0hMQUVHRVJFSUVOIEhJRVIhCkRlciBXaXJ0IHNhZ3QgenUgSm9mOiBSQVVTISEhISEKSm9mIHNhZ3Q6IE5ldHQgLi4uCkNhdHdlYXpsZSB2ZXJzdWNodCwgZWluZSBTY2hsYWVnZXJlaSBhbnp1emV0dGVsbiEKRGVyIFdpcnQgc2FndCB6dSBDYXR3ZWF6bGU6IEtFSU5FIFNDSExBRUdFUkVJRU4gSElFUiEKRGVyIFdpcnQgc2FndCB6dSBDYXR3ZWF6bGU6IFJBVVMhISEhIQpFaW4gUmF1c3NjaG1laXNzZXIga29tbXQgYW4uCkpvZiB6YXViZXJ0IGV0d2FzIGhlcnZvci4KSm9mIHRyb2VzdGV0IGRlbiBSYXVzc2NobWVpc3Nlci4KSm9mIHZlcnN1Y2h0LCBlaW5lIFNjaGxhZWdlcmVpIGFuenV6ZXR0ZWxuIQpEZXIgV2lydCBzYWd0IHp1IEpvZjogS0VJTkUgU0NITEFFR0VSRUlFTiBISUVSIQpEZXIgV2lydCBzYWd0IHp1IEpvZjogUkFVUyEhISEhCgpEZXIgbGFjaGVuZGUgRHJpdHRlLCBCZXJuaGFyZCEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTmFlY2hzdGUgUGFydHkgKFJhZmZpLCAgNi4gU2VwIDE5OTUsIDIwOjE1OjM4KToKIyEgcm49Q2F0d2VhemxlIHJ0PTgxMDQwNzg1OApBYmVyIHdlbm4gd2lyIGRlbiBUaXRlbCBhZW5kZXJuIG11ZXNzZW4gd2lyIG5ldSBhbmZhbmdlbgoKR3J1c3MKSC4KKG1pciBuZSBDb2xhKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTmFlY2hzdGUgUGFydHkgKEphZiwgIDYuIFNlcCAxOTk1LCAyMDo0MToyMCk6CiMhIHJuPUNhdHdlYXpsZSBydD04MTA0MDc4NDYKYXByb3BvcyAxMDAwIHJlcGx5cy4uLiBpY2gga2FubiBtaWNoIGR1ZXN0ZXIgZHJhbiBlcmlubmVybiwgZWluZXMgZGVyCnJlcGxpZXMgbWl0IGRlciBudW1tZXIgMTAwMCBnZXNjaHJpZWJlbiB6dSBoYWJlbiB1bmQgdHJvdHpkZW0gbmljaHRzCnZvbiBkZW0gJ2JlbG9obnVuZ3NiaWVyJyBhYmdlZmFzc3QgenUgaGFiZW4uLi4gbmljaHQgZGFzIGVzIG1pciBhdWYKZGVyIHBhcnR5IGFuIGJpZXIgZ2VmZWhrdCBoYWV0dGUsIGFiZXIgc28gZWluIGJpZXIgdm9uIGRhbmNlciBpc3QgZG9jaAp3YXMgYmVzb25kZXJlcyA6KQoKamFmLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5hZWNoc3RlIFBhcnR5IChCaWxib20sICA2LiBTZXAgMTk5NSwgMjI6MzM6NDUpOgojISBybj1KYWYgcnQ9ODEwNDEyODgwClNDSFdVUFBESVdVUFAgb2RlciB3YXMgZXMgd2FyIHdhciBiZXNzZXIgYWxzIE5hZWNoc3RlIFBhcnR5CiBCaWxib20KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW0gRWxmZW5sYWRlbiAoSUlJKSAoUmFmZmksICA3LiBTZXAgMTk5NSwgMTQ6MjY6MjUpOgpHZXJhZGUgaW0gRWxmZW5sYWRlbgoKRXMgc3RlaGVuIERpciBmb2xnZW5kZSBCZWZlaGxlIHp1IHZlcmZ1ZWd1bmcuCiAgICAgICAgemVpZ2UgICAgICAgICAgICAgICAgICAgIGthdWZlIDxnZWdlbnN0YW5kPiAob2RlciBudW1tZXIpCiAgICAgICAgemVpZ2UgcnVlKHN0dW5nZW4pICAgICAgIHZlcmthdWZlIDxnZWdlbnN0YW5kPgogICAgICAgIHplaWdlIHdhZihmZW4pICAgICAgICAgICB2ZXJrYXVmZSBhbGxlcwogICAgICAgIHplaWdlIHZlcihzY2hpZWRlbmVzKSAgICBzY2hhZXR6ZSA8Z2VnZW5zdGFuZD4KRWluZSBUcmVwcGUgZnVlaHJ0IGluIGRhcyBPYmVyZ2VzY2hvc3MuCkRlciBBdXNnYW5nIGRlcyBMYWRlbnMgbGllZ3QgaW0gU3VlZGVuLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuIHVuZCBvYmVuLgpFaW4gTXVlbGxzY2hsdWNrZXIuCj4gemVpZ2VyIHZlcgpTeW50YXg6IHplaWdlIDx3ZW0+IDx3YXM+Cj4KClVJSUlJCgoKdW5kIGt1cnogZGFyYXVmCgplaW4gVHJhZWdlclZhbGFyaWFucyB2ZXJrYXVmdCBlaW5lbiBTcGVlci4KZWluIFRyYWVnZXJWYWxhcmlhbnMgdmVya2F1ZnQgZWluZW4gT3JraGVsbS4KRGVyIFRyYWVnZXJWYWxhcmlhbnMgZ2VodCBuYWNoIFN1ZWRlbi4KPiBmaW5nZXIgdHJhZWdlcnZhbGFyaWFucwpIbW0uLi4gZGllc2VuIE5hbWVuIGdpYnQgZXMgaW4gTW9yZ2VuZ3JhdWVuIG5pY2h0Lgo+Cgo/Pz8/CgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWxpY2ggaW0gRWxmZW5sYWRlbiAoSUlJKSAoQXNtb2RpcywgIDcuIFNlcCAxOTk1LCAxNjowNzoxNCk6CiMhIHJuPVJhZmZpIHJ0PTgxMDQ3Njc4NQpWaWVsbGVpY2h0IGhhdHRlIGVyIHNpY2ggZ2V0YXJudCA/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xhdHNjaHNwYWx0ZSAoUmFmZmksICA3LiBTZXAgMTk5NSwgMjA6NDE6MTgpOgpOZXVsaWNoIGF1ZiBkZXIgRmV0ZSB2b24gU3RlaW5tYW5uOgoKPiB1bnQgbWFybGVuZQpNYXJsZW5lIHRyYWVndCBlaW4gZ2VzY2htYWNrbG9zZXMgRmVlbmtvc3R1ZW0gZGVzc2VuIGxpbmtlciBGbHVlZ2VsCmltIEdlZHJhZW5nZSBiZXJlaXRzIHZvZWxsaWcgemVya25pdHRlcnQgd3VyZGU7IHNpZSBpc3QgaW0gQXVnZW5ibGljawo+ZnJlaTwsIHdpZSBtYW4gaW4gU2NoYXVzcGllbGVya3JlaXNlbiBnZXJuZSBzYWd0LiBNYXJsZW5lIFBhd2lsIGlzdApzY2hldSwgaHVlYnNjaCBhbnp1c2VoZW4sIG5pY2h0IGFsbHp1IGludGVsbGlnZW50IHVuZAphdXNzZXJnZXdvZWhubGljaCByZWxpZ2lvZXMuIFNpZSB3YXIgdXJzcHJ1ZW5nbGljaCBmdWVyIGRpZSBIYXVwdHJvbGxlCmluIFN0ZWlubWFubiBsZXR6dGVtIFN0dWVjayA+U29kb208IHZvcmdlc2VoZW4sIGxlaG50ZSBkaWVzZSBqZWRvY2gKYWIsIGFscyBpaHIgZGllIFN1ZW5kaGFmdGlna2VpdCB1bmQgVmVycnVjaHRoZWl0IGRlcyBTdHVlY2tlcyBiZXd1c3N0Cnd1cmRlLiBTdGVpbm1hbm4gd2FyIHNlaHIgZXJib3N0IHVlYmVyIGlocmUgRW50c2NoZWlkdW5nLCBkYSBlciBuaWNodAppbiBkZXIgTGFnZSB3YXIsIGVpbmUgU2NoYXVzcGllbGVyaW4genUgZmluZGVuLCBkZXJlbiBOYWl2aXRhZXQgYXVjaApudXIgYW5uYWVoZXJuZCBtaXQgZGVyIHZvbiBNYXJsZW5lIHZlcmdsZWljaGJhciBnZXdlc2VuIHdhZXJlLgpTaWUgaXN0IGFic29sdXQgZml0Lgo+IGZyYWdlIG1hcmxlbmUgbmFjaCBnb3R0Ck1hcmxlbmUgUGF3aWwgc2FndDogJ0Rhdm9uIHZlcnN0ZWhlIGljaCBuaWNodHMuYAo+CgpBaGEgLSBzb3ZpZWwgenVtIFRoZW1hIFJlbGlnaW9lc2l0YWV0IDopCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExhcmlzc2EgaXN0IGpldHp0IGVpbmUgTWFnaWVyaW4hIChBc21vZGlzLCAgNy4gU2VwIDE5OTUsIDIwOjUyOjAwKToKIyEgcm49TWVybGluIHJ0PTgxMDQ5MDg3OQpOYSBzb3dhcz8gSmV0enQgaGF0IEpvZiBzZWluZSBGcmF1IGFkb3B0aWVydCwgb2RlciB3YXMgPyA6KQpPYiBJbnplc3Qgc28gZ3V0IGlzdCBmdWVyIE1HID8KCiAgICAgICAgICAgICAgQ2lhbywgQXNtb2RpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNvc28uLiAoQ2FyYWRocmFzLCAgNy4gU2VwIDE5OTUsIDIzOjQ0OjM2KToKIyEgcm49U2NocnVtcGZpIHJ0PTgxMDE3MTQzOQpOZWUsIGljaCBiaW4gdm9lbGxpZyB1bnNjaHVsZGlnLCB3aWUgaW1tZXIuIDotKQoKICAgICAgICBDYXJhZGhyYXMgLSBkYXMga2xlaW5lIFJvdGhvZXJuY2hlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmFqYSwgZGllIFN1cHBlbnd1ZXJmZWwgKENhcmFkaHJhcywgIDguIFNlcCAxOTk1LCAwMDo1MzowNyk6CkdlcmFkZSBlYmVuIGluIEFuZGVyTGFuZDoKCltNYWdpZXI6Q3VjaHVsbGluXSBIaWxmIG1pciwgZGFzIERpbmcgYXV0b2xvYWQgenUgbWFjaGVuIDstKQpbTWFnaWVyOk11cGZlbF0gaWNoPwpbTWFnaWVyOkN1Y2h1bGxpbl0gRGFubiBlcmtsYWVyIGljaCBEaXIgYXVjaCwgZGFzcyBpY2ggQ2FyYSBkZW4gV2VnIHp1IG1laW5lbQpbTWFnaWVyOkN1Y2h1bGxpbl0gU2VoZXJoYXVzIGVya2xhZXJ0IGhhYiA7LSkKW01hZ2llcjpDdWNodWxsaW5dIFdlciBpc24gbWVpbiBQYXBpPwpbTWFnaWVyOkN1Y2h1bGxpbl0gKmdyaW5zKgpbTWFnaWVyOkN1Y2h1bGxpbl0gKkZlc3RuYWdlbCoKW01hZ2llcjpDYXJhZGhyYXNdIGh1Y2gsIEN1Y2ggaXN0IG1laW4gQnJ1ZGVyPyA6KQpbTWFnaWVyOkN1Y2h1bGxpbl0gQWNoIER1IHNjaC4uLi4KCgogICAgICAgU2ljaCB0b2VkbGljaCBhbXVlc2llcmVuZAoKICAgICBSb3Rob3JuIENhcmFkaHJhcywgZGVyIGdyYXVzYW1lIEJlcmcgKGF1Y2ggbWFsIE1hZ2llciBnZXdvcmRlbikqKgpIdWNoLCBzY2hvbiBrYW5uIGljaCBuaWNodCBtZWhyIGVkaXRpZXJlLCBqZSBob2VoZXIgZGVyIExldmVsIHVtc28KZG9lZmVyPyBBY2ggbmVlLCBsaWViZXIgbmljaCwgc29uc3QgemFwdCBKb2YgbWljaC4gOi0pKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVG9kZSAoQ2FyYWRocmFzLCAgOC4gU2VwIDE5OTUsIDEyOjQ5OjUxKToKICAgICAgICAgICAgICAgICAgICAgICAgIEh1aHUKCktvZW5udGUgbWFuIGVzIG5pY2h0IHNvIG1hY2hlbiwgZGFzcyBqZWRlciBzaWNoIHNlaW5lIGVpZ2VuZSBUb2Rlcy0Kc2VxdWVueiBiZXN0aW1tZW4ga2Fubj8gSWNoIGhhYmUgbmFlbWxpY2ggdm9yaGluIGVpbmUgc2VociBzZWhyCmxhbmd3ZWlsaWcgdW5kIGZ1cmNodGJhciBrdXJ6ZSBiZWtvbW1lbiwgYWxzbyBkYXMgd2FyIG5peCBmdWVycwpHZWxkIGFlaCBkaWUgRVAuIERhIGxvaG50IHNpY2ggZGFzIHN0ZXJiZW4gamEgZ2FyIG5pY2h0LiBBYmVyIHdlbm4KamVkZXIgc2VpbmUgTGllYmxpbmdzdG9kZXNzZXF1ZW56IGVyaGFsdGVuIHd1ZXJkZSwgZGFubiB3dWVyZGUgZGFzCnN0ZXJiZW4gdmllbCBtZWhyIFNwYXNzIG1hY2hlbi4gKmh1ZXN0ZWwqCgogICAgIENhcmFkaHJhcyAtIG1pdHRsZXJ3ZWlsZSB3b2hsIHdpZWRlciBSZWtvcmRoYWx0ZXIgbWl0CiAgICAgICAgICAgICAgICAgbWludXMgNzAgTWlsbGlvbmVuIEVQCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprb21tdCBzaWUgb2RlciBnZWh0IHNpZSAoSmFmLCAgOC4gU2VwIDE5OTUsIDE2OjEzOjQyKToKCkNoZW4gS3VlaSBibGlja3Qgc2VobnN1Y2h0c3ZvbGwgZWluZXIgS2FyYXdhbmUgaGludGVyaGVyLgpFaW5lIEthcmF3YW5lIGtvbW10IGFuLgoKSmFmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWnVlcmlsZXU/IChIYXJkaWwsICA4LiBTZXAgMTk5NSwgMTg6NDc6NDUpOgoKU3RhbmQga3VlcnpsaWNoIGltIFN1ZWRrdXJpZXI6CgpBdWYgZWluZW0gT3BlbiBBaXIgaW4gZGVyIFNjaHdlaXogaGF0IHNpY2ggIGVpbiBqdW5nZXIgTWFubiBhbHMgUG9saXppc3QKYXVzZ2VnZWJlbiB1bmQgYmVpIGRlbiBKdWdlbmRsaWNoZW4gYWxsZSBKb2ludHMgdW5kIGFlaG5saWNoZXMga29uZmlzemllcnQgLQp1bmQgZGFubiBpbiBkZXIgT2VmZmVudGxpY2hrZWl0IHNlbGJlciBnZXJhdWNodC4KRGllIFNhY2hlIGlzdCBhdWZnZWZsb2dlbiwgYWxzIHNpY2ggRWx1dGUgaW4gTGVzZXJicmllZmVuIGFuIGVpbmUgemVpdHVuZwpkYXJ1ZWJlciBiZXNjaHdlcnQgaGFiZW4sIGRhc3MgZGVyIFBvbGl6aXN0IHNlbGJlciBkaWUgSm9pbnRzIGdlcmF1Y2h0IGhhZXR0ZQotIGRhcmF1ZmhpbiBtdXNzdGUgZGllIFBvbGl6ZWkgZWluZ2VzdGVoZW4sCmRhc3MgZGVyIFBvbGl6aXN0IGdhciBuaWNodCBlY2h0IHdhci4gV2Fyc3QgRHUgZGFzLCBadWVyaWxldT8gOikKCi1IYXJkaWwuIEZhbmQgZGllIEdlc2NoaWNodGUgdXJrb21pc2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFp1ZXJpbGV1PyAoWnVlcmlsZXUsIDEwLiBTZXAgMTk5NSwgMDE6NDI6MzApOgojISBybj1IYXJkaWwgcnQ9ODEwNTc4ODY1ClNhbGksCkhpaGloaS4uCgpOb2UgbGVpZGVyIG5pY2h0LCBhYmVyIGljaCB3YWVycyBnZXJuZSBnZXdlc2VuID06KSkgKkxhY2gqCgoKdHNjaHVlc3MgWnVlcmlsZXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBadWVyaWxldT8gKFNjaHJ1bXBmaSwgMTAuIFNlcCAxOTk1LCAyMjozODoxMyk6CiMhIHJuPUhhcmRpbCBydD04MTA1Nzg4NjUKSmEsIGRhcyBoYWIgaWNoIGF1Y2ggZ2VsZXNlbiB1bmQgZHJlaW1hbCBkdWVyZnQgaWhyIHJhdGVuLCBhbiB3ZW4gaWNoIHNvZm9ydApnZWRhY2h0IGhhYmUgOi0pKSkKU2NocnVtcGZpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpncmFkZSBpbSBFbGZlbmRvcmYgKE1pZXplLCAxMS4gU2VwIDE5OTUsIDE4OjUyOjQ4KToKRGllIFNjaHJlaWJzdHViZSBkZXIgRWxmZW4uLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogb3N0ZW4uCkZvbmRpbCBGYXJpbi4KPiBrdWVzc2UgZmFyaW4KRHUga3Vlc3N0IEZvbmRpbC4KRmluZCBpY2ggZ3V0IDstKSkpCkRpZSBLYW1wZmthdHplCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEdW1tIChBY3JpbW9uLCAxMS4gU2VwIDE5OTUsIDE5OjQ2OjI5KToKR2VyYWRlIGViZW4gcGFzc2llcnQsIHVuZ2VrdWVyenQ6Cgo6CjoKW0JpbiByZWNodCBsYW5nZSBpZGxlLCBzY3JvbGx0IHJlY2h0IHZpZWwsIHVuZCBkYW5uIGtvbW10Ol0KOgo6CjoKQnJ1bW1lbCBuZXV0cmFsaXNpZXJ0IGRlaW4gR2VoaXJuLiBEdSBmdWVobHN0IGRpY2ggZWluZmFjaCBndXQuCltCZWlsZWlkOk5pa10gKnNjaG5pZmYqCkJydW1tZWwgbmltbXQgZGVpbmVuIERhbmsgbGFlY2hlbG5kIGVudGdlZ2VuIHVuZCBnZWh0IG5hY2ggU3VlZGVuLgpzYWcgaG1wZgpLb21tYW5kbyBuaWNodCB2ZXJzdGFuZGVuLgoobmV3bWFpbDoxLzE2KSBbSGlsZmUgbWl0IGhdID0+CgoKQWNyaW1vbiwgaGV1dGUgZXR3YXMgZ2VkYWVjaHRuaXNzY2h3YWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuYSBkb2xsIChDZWxlYmRpbCwgMTIuIFNlcCAxOTk1LCAwMjo0MDoxNSk6ClNvIHNjaG5lbGwgZ2luZ3MgYXVjaCBzZWx0ZW46CgogIER1IHRyaWZmc3QgZGFzIEthbXBmYmxlY2ggc2VociBoYXJ0LgpEYXMgS2FtcGZibGVjaCB6ZXJmYWVsbHQgaW4gc2VpbmUgQmVzdGFuZHRlaWxlLgpFaW4gS2FtcGZibGVjaCBrb21tdCBhbi4KRHUgaGFzdCBqZXR6dCAxNTMgTGViZW5zcHVua3RlIHVuZCA2NCBNYWdpZXB1bmt0ZS4KbgpEYXMgS2FtcGZibGVjaCBsYWVzc3QgRGljaCBuaWNodCB2b3JiZWkuCgogKmZsdWNoKiA6KSAgV2FlciBpY2ggZG9jaCBtaXQgR3lha3UtbWF3YXNoaS1zaGl0c3VpLWdlcmkgbnVyCjEgUHJvemVudCBzY2hsZWNodGVyCgogICAgICAgIEZyb2VobGljaCBDYXJhdGVrZW5kICAgICAgICBDZWxlYmRpbCBkZXIgbWl0dGxlcmUgQmVyZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBadWVyaWxldT8gKFJhZmZpLCAxMi4gU2VwIDE5OTUsIDEzOjUwOjI2KToKIyEgcm49WnVlcmlsZXUgcnQ9ODEwNjkwMTUwCkthbm4gZWlnZW50bGljaCBqZWRlciBzbyBuZSAibmViZW5iZXNjaGFlZnRpZ3VuZyIgYmVpIGRlciBadWVyaWNoZXIgUG9saXplaQptYWNoZW4gPwooU28gd2llIGRpZSBCYXllcmlzY2hlbiBIaWxmc3BvbGl6aXN0ZW4gPykKCldlbm4gamEgbWVsZGUgaWNoIG1pY2ggZ2xlaWNoIDopCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYSBzbyBlaW4gc2NobWFycm4gKENlbGViZGlsLCAxMi4gU2VwIDE5OTUsIDE3OjQ0OjM1KToKW0FsbGdlbWVpbjpKYWZdIHNjaHJlaWJ0IG1hbCB3YXMgbHVzdGlnZXMgOikKW0FsbGdlbWVpbjpBcmRhbmEgc2NocmVpYnQ6IHdhcyBsdXN0aWdlcy5dCj4gW0FsbGdlbWVpbjpGcm9zY2ggSnVycnkgZ3JpbnN0XQoKTmEgLCBqZXR6dCBzdGVodCB3YXMgZHJpbiA6KQoKICAgICAgICAgICAgICBDZWxlYmRpbCBkZXIga2xlaW5lIENhcmF0ZWthCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogWnVlcmlsZXU/IChadWVyaWxldSwgMTMuIFNlcCAxOTk1LCAwMDozNzoyNyk6CiMhIHJuPVJhZmZpIHJ0PTgxMDkwNjYyNgpTYWxpIFJhZmZpLApFcnN0ZW5zIG1hbCBoZWlzc3QgZXMgWnVlcmNoZXIgbmljaHQgWnVlcihpKWNoZXIgISEhID06KQpBbHNvLCBudW4gSG9iYnkgUmFtYm9zIHdpZSBQcm90ZWN0YXMsIFNhbGxhbWFuZGVyIHVuZCBQYW50aGVyLVNlY3VyaXR5IGdpZWJ0cwpoaWVyIHp1IGdlbnVlZ2UgbnVyIGdlaG9lcmVuIGRpZSBuaWNodCB6dXIgUG9saXplaSBzb25kZXJuIHNpbmQgUHJpdmF0ZQpTaWNoZXJoZWl0c29yZ2FuaXNhdHppb25lbi4gRGllIFBvbGl6ZWkgYmlldGV0IGtlaW5lIFByaXZhdGUgb2RlcgpoaWxmc3BvbGl6aXN0ZW4gYW4uIERhenUgbXVzc3QgZHUgdW0gUG9saXppc3QgYmVpIGRlciBTY2h3ZWl6ZXIgUG9saXplaSB6dQp3ZXJkZW4sIFNjaHdlaXplciBTdGFhdHNidWVyZ2VyIHNlaW4gc29uc3QgbGFldWZ0IGdhciBuaWNodHMgPTopIERhenUgaWNoCmhhc3NlIEJ1bGxlbiBkaWUgZmlsemVuIG1pY2ggaW1tZXIgbnVyIHdlaWwgaWNoIGxhYW5nZSBIYWFyZSB1bmQgRGVhdGgtTWV0YWwKdC1zaGlydHMgdHJhZ2UuIE51biwgZGF6dSBoYWJlbiBzaWUgenUgTGV0dGVuIChvZmZuZSBEcm9nZW5zemVuZSB6ZWllaXRlbikKaW1tZXIgZGllIERyb2dlbnN1ZWNodGlnZSB2ZXJicnVlZ2VsdCB1bmQgZGFzIGhhdCBzaWNoIGFuc2NoZWluZCBiaXMgaGV1dGUKbmljaHQgZ2VhZW5kZXJ0LiBPZGVyIHNpZSBsZXNlbiBzaWUgYXVmIGRlciBTdHJhc3NlIGF1Ziwgc3BlaHJlbiBzaWUgaW4gZWluZW4KS2FzdGVud2FnZW4sIGZhaHJlbiBtaXQgaWhuZW4gZGVuIGdhbnplbiBhYmVuZCBzcGF6aWVyZW4sIGxhZGVuIG5vY2ggbWVocgpMZXV0ZSByZWluIHVtIHNpZSBzcGFldGVyIGFtIGFiZW5kIHdlbm4ga2VpbiBadWcgbWVociBuYWNoYXVzZSBmYWVocnQgd2llZGVyCnJhdXMgYXVmIGRpZSBTdHJhc3NlIHp1IHdlcmZlbiwgZGFzIHNpZSBudW4gZ2VoZW4ga29lbm5lbi4gV2FzIHNvbGwgZGFzID8gRGFubgp3YXJ1bSBzb2xsIGljaCBtaWNoIGFuIGRpZSB2b3JzY2hyaWZ0ZW4gdW5kIEdlc2V0emUgaGFsdGVuLCB3ZW5uIHNpY2gKaGVyYXVzdGVsbHQgZGFzIGRlciBadWVyY2hlciBQb2xpemVpY2hlZiB2b24gZGVyIFN0YWR0cG9saXplaSBzZWxiZXIga29ycnVwdAppc3Q/LiBEZXIga2F1ZnQgYXVmIFN0ZXVlcmdlbGRlciBlaW4geC1NaWxsaW9uZW50ZXVyZXMKUG9saXplaS1VZWJlcndhY2h1bmdzZmx1Z3pldWcgZGFzIGVyIHNjaGx1c3NlbmRsaWNoIGZ1ZXIgcHJpdmF0ZQpGZXJpZW5ydW5kZmx1ZWdlIG1pc3NicmF1Y2h0IHVuZCBpbSBwb2xpemVpZGllbnN0IGdhciBuaWNodCB6dSBnZWJyYXVjaGVuIGlzdC4KRGFubiBrYXVmdCBlciBmdWVyIDUwMCcwMDAgU2Nod2VpemVyIEZyYW5rZW4gU3RldWVyZ2VsZGVyCkZvdG9lbnR3aWNrbHVuZ3NnZXJhZXRlIGZ1ZXIgZGVuIEZvdG9sYWRlbiBzZWluZXIgRWhlZnJhdSB1bmQgbm9jaCB3ZWl0ZXJlIHNvCnNwYWVzc2NoZW4gPTopKS4KQWxzbywgd2lsbHN0IGR1IGltbWVybm9jaCBwb2xpemlzdCB3ZXJkZW4gPwoKdHNjaHVlc3MgenVlcmlsZXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdGVzdCAoU2NocnVtcGZpLCAxMy4gU2VwIDE5OTUsIDAyOjM3OjU5KToKIyEgcm49SXNzb21hZCBydD04MTA5NTIyNzcKaWNoIGF1Y2ggdGVzdGVuIHdpbGwgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHRlc3QgKEFzbW9kaXMsIDEzLiBTZXAgMTk5NSwgMDI6NDI6MDQpOgojISBybj1NdXBmZWwgcnQ9ODEwOTUyODQyCmljaCBtdXNzIG5vY2htYWwgdGVzdGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBadWVyaWxldT8gKFlhbnRybywgMTMuIFNlcCAxOTk1LCAwODo0Nzo0OSk6CiMhIHJuPVp1ZXJpbGV1IHJ0PTgxMDk0NTQ0NwoKWnVlcmksIGljaCBkZW5rZSB2aWVsbWVociwgZGllIGZpbHplbiBEaWNoIGltbWVyIHdlZ2VuIERlaW5lciBDYW5hYmlzLVdvbGtlLAppbiBkZXIgRHUgRGljaCBmb3J0YmV3ZWdzdCB1bmQgbWljaCBudXIgd2VnZW4gRGVpbmVtIFRTaGlydC4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkYmRSAoQ2FyYWRocmFzLCAxMy4gU2VwIDE5OTUsIDEyOjU4OjM5KToKR3JhZGUgZWJlbiB1ZWJlciBkZW0gQXJjaGllLVNjaGFjaHQ6Cgo+IHUKRGVyIFRvZCBrb21tdCBhbi4KRGVyIFRvZCBzYWd0OiBHRUggREEgTElFQkVSIE5JQ0hUIFJFSU4uIElDSCBXSUxMIERJQ0ggTklDSFQgQVVDSCBOT0NIClZPTiBET1JUIFVOVEVOIEFCSE9MRU4gTVVFU1NFTi4uLgpEZXIgVG9kIGdlaHQuCgogICAgIEpvZiBiaW4gaWNoIGVyc2Nocm9ja2VuIDopCgogICAgICAgICAgICAgQ2FyYWRocmFzIGRlciBhZW5nc3RsaWNoZSBQcm9waGV0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB0ZXN0IChCaWxib20sIDEzLiBTZXAgMTk5NSwgMTM6MDI6MjcpOgojISBybj1Bc21vZGlzIHJ0PTgxMDk1MjkyNApIaSEKV2FzIHNvbGxuIGRpZXNlIGdhbnplbiB0ZXN0cz8KU28sIGRhcyB3YXJzLgogQmlsYm9tCgoKClAuUzogdGVzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGphLi4uIChTeW1iaW9udCwgMTMuIFNlcCAxOTk1LCAxNjozNTo1MCk6CldlciBzY2hyZWlidCBlaW5lbiBBcnRpa2VsLi4uLi4KTWlyIGlzdCBzb29vb29vb29vb29vb29vb29vb28gbGFuZ3dlaWxpZy4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNidCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChSb2NodXMsIDEzLiBTZXAgMTk5NSwgMTc6Mzk6NDUpOgpbQmVpbGVpZDpTeW1iaW9udCBmcmFnIGhhdCBqZW1hbmQgUG9zdCBmdWVyIExhcnM/IDopXQpbVG9kOl0gRWluIEZhbGxiZWlsIGhhdCBnZXJhZGUgU3ltYmlvbnQgdW1nZWJyYWNodC4KW1RvZDpFaW4gRmFsbGJlaWxdIERvbid0IGxvb3NlIFlvdXIgaGVhZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFp1ZXJpbGV1PyAoUmFmZmksIDEzLiBTZXAgMTk5NSwgMTg6MTA6MzMpOgojISBybj1adWVyaWxldSBydD04MTA5NDU0NDcKCj4gRXJzdGVucyBtYWwgaGVpc3N0IGVzIFp1ZXJjaGVyIG5pY2h0IFp1ZXIoaSljaGVyICEhISA9OikKCk5pbW0gUnVja3NpY2h0IGF1ZiBNaW5kZXJoZWl0ZW46IGVzIGdpYnQgaGllciBtZWhyZXJlKCEpCkJld29obmVyIGRlcyBNRyBkaWUgaW4gZWluZW0gYW5kZXJlbiBMZWJlbiBub2VyZGxpY2ggZGVyCkFscGVuIHVuZCBkZXMgZGF6dWdlaG9lcmlnZW4gVm9ybGFuZGVzIGxlYmVuIDopKQoKPiBBbHNvLCB3aWxsc3QgZHUgaW1tZXJub2NoIHBvbGl6aXN0IHdlcmRlbiA/CgpXZW5uIGljaCBtaXIgZGFzIHNvIGFuc2NoYXVoZSBkYW4gaXN0IGRpZSBadWVyaWNoZXIgUG9saXplaQpkb2NoIGVpbiBkdWZ0ZXIgSGF1ZmVuIC0gYW0gYmVzdGVuIHdlcmRlIGljaCBkb3J0IGdsZWljaApQb2xpemVpY2hlZiEgRGFzIGVpbnppZ2UgUHJvYmxlbSBpc3Qgd29obCBkYXMgbWVpbmUgRnJldW5kaW4Ka2VpbmVuIFBob3RvbGFkZW4gaGF0LCBhYmVyIGRlciBzb2xsdGUgZGEgZG9jaCBhdWNoIGdsZWljaApkYWJlaSBzZWluLgoKR2xhdWJzdCBkdSBlaW4gbXVlbmNobmVyIFBvbGl6ZWlrZXNzZWwgaXN0IGx1c3RpZ2VyIC0gZGEKcmVpY2h0cyBzb2dhciB3ZW5uIGR1IGFuIHNlbGJpZ2VuIHZvcmJlaWdlaHN0ICh2b3JoZXIKZ2x1ZWNrIGdlaGFidCkgdW5kIHNjaG9uIGdpYnRzIGVpbmUgc2FmdGlnZSBLb250cm9sbGUKLSBpbmtsdXNpdiBBbnplaWdlIHdnLiBWZXJtdW1tdW5nIC0gZGFiZWkgaGFiIGljaCBoYWxsdAppbW1lciBtZWluZW4gTW9wZWRoZWxtIGRhYmVpIHVuZCBkZXIgbmljaHQgbWVociBnYW56IG5ldWUKUGFya2EgaXN0IGRvY2ggd2FocmxpY2gga2VpbiBEZWF0aC1NZXRhbCBULVNoaXJ0LCB1bmQKbGFlbmdlcmUgSGFyZSBoYXR0ZSBpY2ggYXVjaCBzY2hvbi4uLi4uLgoKTWVpbmUgRnJhZ2UgYmV6dWcgc2ljaCBlaWdlbnRsaWNoIGEpIGF1ZiBkaWVzZW4gbmV0dGVuCkFydGlrZWwgdm9uIHdlZ2VuICJQb2xpemlzdCIgZGVyIERyb2dlbmtvbnRyb2xsZSB1bmQgYikKYXVzIGRpZXNlIGJlc2NoZXVlcnRlbiBIaWxmc3BvbGl6aXN0ZW4gZGllIHZvciBrdXJ6ZW0KaGllciBpbiBCWSBlaW5nZWZ1ZWhydCB3dXJkZW4uIERpZSBzaW5kIG5hZW1saWNoIGRhcwpsZXR6dGUgLSBlaWdlbnRsaWNoIGR1ZXJmZW4gZGllIGphIG5pY2h0bWFsIG5lbiBmYWxzY2gKZ2VwYXJrdGVuIFdhZ2VuIGF1ZnNjaHJlaWJlbiwgZnVlaHJlbiBzaWNoIGFiZXIgd2llCkJsb2Nrd2FydCB1bmQgVm9sa3NnZXJpY2h0c2hvZiBpbiBlaW5lbSA6KAoKR3J1c3MKSC4KKApIYXQgdWVicmlnZW5zIGF1Y2ggMiBGcmV1bmRlIGJlaSBkZXIgUG9saXplaSAtIGxlaWRlcgppc3Qga2VpbmVyIHZvbiBkZW5lbiBhdWNoIG51ciBHcnVwcGVubGVpdGVyIGdlc2Nod2VpZ2UKZGVubiBQb2xpemVpY2hlZiA6KAopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBadWVyaWxldT8gKFJhZmZpLCAxMy4gU2VwIDE5OTUsIDE4OjE3OjQ4KToKIyEgcm49WnVlcmlsZXUgcnQ9ODEwOTQ1NDQ3ClVlYnJpZ2VucyB3YXMgaWNoIG5vY2ggdmVyZ2Vzc2VuIGhhYmUgYXVzIHNvbGNoZW4KVm9yZ2FlbmdlbiBsZWl0ZSBpY2ggbm9jaCBrZWluZSB1bmd1ZWx0aWdrZWl0CnNhZW10bGljaGVyIEdlc2V0emUgdW5kIFJlZ2VsdW5nZW4gZnVlciBtaWNoIGFiIC0KZWhlciBzY2hvbiBlaW5lIHVuZ3VlbHRpZ2tlaXQgZGVyZXIgZGllIGRpZXNlCkFVU0xFR1VOR0VOICh3ZW5uIG1hbiBlcyBtYWwgc28gbmVubmVuIHdpbGwpCnZlcmFubGFzc2VuLiBJY2ggYmVoYWx0ZSBtaXIgamVkb2NoIGVpbiAiS3JpdGlrLQpyZWNodCIgYW4gb2ZmZW5zaWNodGxpY2ggZmFsc2NoZW4vZWluc2VpdGlnZW4vCnNpbm5sb3Nlbi91bnp3ZWNrbWFlc2lnZW4vZGVwcGVydGVuIChCaXR0ZSBmYWxsd2Vpc2UKZGFzIHJpY2h0aWdlIFdvcnQgdW50ZXJzdHJlaWNoZW4pIFJlZ2VsdW5nZW4gdW5kCiJBdXNsZWd1bmdlbiIgdm9yLiBOdXIgd2VpbCBkZXIgUG9saXplaWNoZWYgZWluCmtvcnVwdGVyIEFyc2NoIGlzdCByZW5uZSBpY2ggbmljaHQgYmVpIFJvdCB1ZWJlcgpkaWUgQW1wZWwuCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbSBJbnRlcm5ldC4uLiAoWWVuZGksIDEzLiBTZXAgMTk5NSwgMjA6MDc6MzYpOgoKCiAgICAgSG93IEl0IENhbWUgVG8gUGFzcy4uLgoKICAgICBMb25nIGFnbywgaW4gdGhlIGRheXMgd2hlbiBhbGwgZGlza3MgZmxvcHBlZCBpbiB0aGUgYnJlZXplCiAgICAgYW5kIHRoZSB3cml0aW5nIG9mIHdvcmRzIHdhcyBvbiBhIHN0YXIsIHRoZSBCbHVlIEdpYW50IGR1ZwogICAgIGZvciB0aGUgcGVvcGxlIHRoZSBQZWEgU2VhLiBCdXQgaGUgbmVlZGVkIGEgY3JlYXR1cmUgd2hvIGNvdWxkCiAgICAgc2FpbCB0aGUgd2F0ZXJzLCBhbmQgd291bGQgbmVlZCBmb3Igc3VwcG9ydCBidXQgZmV3IHJhbXMuCgogICAgIFNvIHRoZSBHYXRla2VlcGVyLCB3aG8gd2FzIHNhaWQgdG8gYmUgYm90aCBtaWNybyBhbmQgc29mdCwKICAgICBmYXNoaW9uZWQgYSBEb3NmaXNoLCB3aG8gd2FzIHNtYWxsIGFuZCBzcHJ5LCBhbmQgY291bGQgc3dpbQogICAgIHRoZSBuYXJyb3cgc2l4dGVlbi1iaXQgY2hhbm5lbC4gQnV0IHRoZSBEb3NmaXNoIHdhcyBub3QKICAgICBicmlnaHQsIGFuZCBjb3VsZCBiZSB0YXVnaHQgZmV3IG5ldyB0cmlja3MuIEhpcyBhbHBoYWJldAogICAgIGhhZCBubyBBJ3MsIEIncywgb3IgUSdzLCBidXQgYSBtZXJlIDY0MCBLJ3MsIGFuZCB0aGUgc2l6ZQogICAgIG9mIGhpcyBmaWxlIGNhYmluZXQgd2FzIGxpbWl0ZWQgYnkgaGlzIG93biBmYXQuCgogICAgIEF0IGZpcnN0IHRoZSBwZW9wbGUgbG92ZWQgdGhlIERvc2Zpc2gsIGZvciBoZSB3YXMgdGhlIG9ubHkKICAgICBvbmUgd2hvIGNvdWxkIHN3aW0gdGhlIFBlYSBTZWEuIEJ1dCB0aGUgcGVvcGxlIHNvb24gZ3JldyB0aXJlZAogICAgIG9mIGNvbW1hbmRpbmcgaGlzIGxpbmUsIGFuZCBjb21wbGFpbmVkIHRoYXQgaGUgY291bGQgYmUgbmVpdGhlcgogICAgIGRyYWdnZWQgbm9yIGRyb3BwZWQuICJGb3Jzb290aCwiIHRoZXkgY3JpZWQuICJ0aGUgRG9zZmlzaCBjYW4KICAgICBvbmx5IGRvIG9uZSBqb2IgYXQgYSB0aW1lLCBhbmQgb2YgbmFtZXMsIGhlIGtub3dzIG9ubHkgZWlnaHQKICAgICB3ZW50IG9mZiBpbiBzZWFyY2ggb2YgdGhlIE1hZ2ljIEFwcGxlLgoKICAgICBBbHRob3VnaCBtYW55IHdlbnQsIGZhciBtb3JlIHN0YXllZCwgYmVjYXVzZSBhZG1pdHRhbmNlIHRvIHRoZQogICAgIFBlYSBTZWEgd2FzIGNoZWFwLiBTbyB0aGUgR2F0ZXNrZWVwZXIgc3R1ZGllZCB0aGUgTWFnaWMgQXBwbGUsCiAgICAgYW5kIHJlc3RlZCBhd2hpbGUgaW4gdGhlIFBhcmMgb2YgWGVyLU94LCBhbmQgaGUgbWFkZSBhIFdpbmRvdwogICAgIHRoYXQgY291bGQgcmlkZSBvbiB0aGUgRG9zZmlzaCBhbmQgZG8gaXRzIHRoaW5raW5nIGZvciBpdC4gQnV0CiAgICAgdGhlIFdpbmRvdyB3YXMgc2xvdywgYW5kIGl0IHdvdWxkIGJyZWFrIHdoZW4gdGhlIERvc2Zpc2ggZ290CiAgICAgY29uZnVzZWQuIFNvIG1vc3QgcGVvcGxlIGNvbnRlbnRlZCB0aGVtc2VsdmVzIHdpdGggdGhlIERvc2Zpc2guCgogICAgIE5vdyBpdCBjYW1lIHRvIHBhc3MgdGhhdCB0aGUgQmx1ZSBHaWFudCBjYW1lIHVwb24gdGhlCiAgICAgR2F0ZXNrZWVwZXIsIGFuZCBzcG9rZSB0aHVzOiAiQ29tZSwgbGV0IHVzIG1ha2Ugb2Ygb3Vyc2VsdmVzCiAgICAgc29tZXRoaW5nIGdyZWF0ZXIgdGhhbiB0aGUgRG9zZmlzaC4iIFRoZSBCbHVlIEdpYW50IHNlZW1lZAogICAgIGxpa2UgYSBodW1idWcsIHNvIHRoZXkgY2FsbGVkIHRoZSBuZXcgY3JlYXR1cmUgT1ogSUkuCgogICAgIE5vdyBPeiBJSSB3YXMgc21hcnRlciB0aGFuIHRoZSBEb3NmaXNoLCBhcyBtb3N0IHRoaW5ncyBhcmUuIEl0CiAgICAgY291bGQgZHJhZyBhbmQgZHJvcCwgYW5kIGNvdWxkIGtlZXAgZmlsZXMgd2l0aG91dCBiZWNvbWluZyBmYXQuCiAgICAgQnV0IHRoZSBwZW9wbGUgY2FyZWQgZm9yIGl0IG5vdC4gU28gdGhlIEJsdWUgR2lhbnQgYW5kIHRoZQogICAgIHRoYXQgY291bGQgc3dpbSB0aGUgZmFzdCBuZXcgMzItYml0IHdpZGUgUGVhIFNlYS4KCiAgICAgVGhlbiBsbywgYSBzdHJhbmdlIG1pcmFjbGUgb2NjdXJyZWQuIEFsdGhvdWdoIHRoZSBXaW5kb3cgdGhhdAogICAgIHJvZGUgb24gdGhlIERvc2Zpc2ggd2FzIHNsb3csIGl0IHdhcyBwcmV0dHksIGFuZCB0aGUgdGhpcmQKICAgICBXaW5kb3cgd2FzIHRoZSBwcmV0dGllc3Qgb2YgYWxsLiBBbmQgdGhlIHBlb3BsZSBiZWdhbiB0byBsaWtlCiAgICAgdGhlIHRoaXJkIFdpbmRvdywgYW5kIHRvIHVzZSBpdC4gU28gdGhlIEdhdGVza2VlcGVyIHR1cm5lZCB0bwogICAgIHRoZSBCbHVlIEdpYW50IGFuZCBzYWlkLCAiRmllIG9uIHRoZWUsIGZvciBJIG5lZWQgdGhlZSBub3QuCiAgICAgS2VlcCB0aHkgT1ogSUkgVG9vLCBhbmQgSSBzaGFsbCBtYWtlIG9mIG15IFdpbmRvdyBhbiBFbnRpdHkgdGhhdAogICAgIHdpbGwgbm90IG5lZWQgdGhlIERvc2Zpc2gsIGFuZCB3aWxsIHN3aW0gaW4gdGhlIDMyLWJpdCBQZWEgU2VhLiIKCiAgICAgWWVhcnMgcGFzc2VkLCBhbmQgdGhlIHdvcmtzaG9wcyBvZiB0aGUgR2F0ZXNrZWVwZXIgYW5kIHRoZSBCbHVlCiAgICAgR2lhbnQgd2VyZSBvdmVycnVuIGJ5IGluc2VjdHMuIEFuZCB0aGUgcGVvcGxlIHdlbnQgb24gdXNpbmcKICAgICB0aGVpciBEb3NmaXNoIHdpdGggYSBXaW5kb3c7IGV2ZW4gdGhvdWdoIHRoZSBEb3NmaXNoIHdvdWxkIGZyb20KICAgICB0aW1lIHRvIHRpbWUgYmVjb21lIGNvbmZ1c2VkIGFuZCBkaWUsIGl0IGNvdWxkIGFsd2F5cyBiZSByZXZpdmVkCiAgICAgd2l0aCB0aHJlZSBmaW5nZXJzLgoKICAgICBUaGVuIHRoZXJlIGNhbWUgYSBkYXkgd2hlbiB0aGUgQmx1ZSBHaWFudCBsZXQgZm9ydGggaGlzIE9aCiAgICAgSUkgVG9vIG9udG8gdGhlIHdvcmxkLiBUaGUgT3ogSUkgVG9vIHdhcyBpbmRlZWQgbWlnaHR5LCBhbmQKICAgICBhd2VzbyBzZWUgbGl0dGxlIGFwcGxpY2F0aW9uIGZvciBpdC4iIEFuZCB0aGV5IHdlcmUgZG91YnRmdWwsIGJlY2F1c2UKICAgICB0aGUgQmx1ZSBHaWFudCBoYWQgbWV0IHdpdGggdGhlIE1hZ2ljIEFwcGxlLCBhbmQgdG9nZXRoZXIgdGhleQogICAgIHdlcmUgZmFzaGlvbmluZyBhIFRhbGlnZW50LCBhbmQgdGhlIFRhbGlnZW50IHdhcyBtYWRlIG9mIG9iamVjdHMsCiAgICAgYW5kIHdhcyBtb3N0IHBpbmsuCiAgICAgIE5vdyB0aGUgR2F0ZXNrZWVwZXIgaGFkIGdyb3duIGFtYml0aW91cywgYW5kIGFzIGhlIGhhZCBiZWVuCiAgICAgYW1iaXRpb3VzIGJlZm9yZSBoZSBncmV3LCBoZSB3YXMgbm93IG1vcmUgYW1iaXRpb3VzIHN0aWxsLiBTbwogICAgIGhlIHByb3RlY3RlZCBoaXMgV2luZG93IEVudGl0eSB3aXRoIGdyZWF0IHNlY3VyaXR5LCBhbmQgbWFkZQogICAgIGl0cyBuZXQgd29yayBib3RoIGluIHNlcnZpbmcgYW5kIHdpdGggcGVlcnMuIEFuZCB0aGUgRW50aXR5CiAgICAgd291bGQgc3dpbSwgbm90IG9ubHkgaW4gdGhlIFBlYSBTZWEsIGJ1dCBpbiB0aGUgT2NlYW5zIG9mIEdyZWF0CiAgICAgUmlzay4gIlllYSwiIHRoZSBHYXRlc2tlZXBlciBkZWNsYXJlZCwgInRob3VnaCBteSBlbnRpdHkgd2lsbAogICAgIHJlcXVpcmUgYSBncmVhdGVyIHJhbSB0aGFuIE96IElJIFRvbywgaXQgd2lsbCBiZSBtb3JlIHBvd2VyZnVsCiAgICAgdGhhbiBhIHdvcmxkIG9mIEV1bnVjaHMuCgogICAgIEFuZCBzbyB0aGUgR2F0ZXNrZWVwZXIgcHJlcGFyZWQgdG8gdW5sZWFzaCBoaXMgRW50aXR5IHRvIHRoZQogICAgIHdvcmxkLCBpbiBhbGwgYnV0IHR3byBjaXRpZXMuIEZvciBoZSBwcm9taXNlZCB0aGF0IGEgZ3JlYXRlcgogICAgIFdpbmRvdywgYSBncmVhdGVyIEVudGl0eSwgYW5kIGV2ZW4gYSBncmVhdGVyIERvc2Zpc2ggd291bGQKICAgICBhcHBlYXIgb25lIGRheSBpbiBDaGljYWdvIGFuZCBDYWlybywgYW5kIGl0IHRvbyB3b3VsZCBiZSBidWlsdAogICAgIG9mIG9iamVjdHMuCgogICAgIE5vdyB0aGUgRXVudWNocyB3aG8gbGl2ZWQgaW4gdGhlIE9jZWFucyBvZiBHcmVhdCBSaXNrLCBhbmQgd2hvCiAgICAgc2Nvcm5lZCB0aGUgUGVhIFNlYSwgYmVnYW4gdG8gbG9vayB1cG9uIHRoZWlyIHdvcmxkIHdpdGggZmVhci4KICAgICBGb3IgdGhlIFBlYSBTZWEgaGFkIGdyb3duLCBhbmQgZ3JlYXQgc2hpcHMgd2VyZSBzYWlsaW5nIGluIGl0LAogICAgIHRoZSBFbnRpdHkgd2FzIGFib3V0IHRvIGludmFkZSB0aGVpciBvY2VhbnMsIGFuZCBpdCB3YXMgcnVtb3JlZAogICAgIEV1bnVjaHMgbG9va2VkIHVwb24gdGhlIFBlYSBTZWEsIGFuZCBtYW55IG9mIHRoZW0gdGhvdWdodCB0bwogICAgIGltbWlncmF0ZS4KCiAgICAgV2l0aGluIHRoZSBPY2VhbnMgb2YgR3JlYXQgUmlzayB3ZXJlIG1hbnkgU3VuIFdvcnNoaXBwZXJzLCBhbmQKICAgICB0aGV5IHdhbnRlZCB0byBleGNlbCwgYW5kIG1ha2UgdGhlaXIgd29yZHMgcGVyZmVjdCwgYW5kIGRvIHRoZWlyCiAgICAgam9icyBhcyBlYXN5IGFzIG9uZS10d28tdGhyZWUuIEFuZCB3aGF0J3MgbW9yZSwgbWFueSBvZiB0aGVtIG5vCiAgICAgbG9uZ2VyIHdhbnRlZCB0byBwYXkgZm9yIHRoZSBSaXNrLiBTbyB0aGUgU3VuIExvcmQgd2VudCB0byB0aGUKICAgICBQZWEgU2VhLCBhbmQgZ290IGhpbXNlbGYgZWlnaHR5LXNpeGVkLgoKICAgICBBbmQgdGFraW5nIHRoZSBuZXh0IHN0ZXAgd2FzIEhlIG9mIHRoZSBOZXh0U3RlcCwgd2hvIGhhZCBnaXZlbgogICAgIHVwIGJ1aWxkaW5nIGhpcyBib3hlcyBvZiBibGFjay4gQW5kIGhlIHByb2NsYWltZWQgbG91ZGx5IHRoYXQKICAgICBoZSBjb3VsZCBoZWxwIGFueW9uZSBtYWtlIHdvbmRyb3VzIHNvZnQgd2FyZXMsIHRoZW4gYWRtaXR0ZWQKICAgICBtZWVrbHkgdGhhdCBvbmx5IHRob3NlIHdobyBrbm93IGhpbSBjb3VsZCB1c2UgdGhvc2Ugd2FyZXMsIGFuZAogICAgIGhlIHdhcyBtYWRlIG9mIG9iamVjdHMsIGFuZCByZXF1aXJlZCB0aGUgYmlnZ2VzdCByYW0gb2YgYWxsLgoKICAgICBBbmQgdGhlIHBlb3BsZSBsb29rZWQgb3V0IHVwb24gdGhlIFBlYSBTZWEsIGFuZCB0aGV5IHdlcmUgc29yZQogICAgIGFtYXplZC4gQW5kIHNvcmUgY29uZnVzZWQuIEFuZCBzb3JlIHNvcmUuIEFuZCB0aGF0IGlzIHdoeSwgdG8KICAgICB0aGUgUGVhIFNlYSwgYnV0IHRoZSBwZW9wbGUgc3RpbGwgdHJhdmVsIG9uIHRoZSBzaW1wbGUgRG9zZmlzaC4KCgoKICAgICBDaHJpc3RvcGhlciBTLiBQb3cKICAgICAoMzEzKTc2My0zOTM4IGRvcm0KICAgICAoMzEzKTQ5NS01NTA4IHBhZ2VyCiAgICAgY3Nwb3dAZW5naW4udW1pY2guZWR1CiAgICAgQ0FFTiAoVU0pIExhYiBJbnNwZWN0b3IKICAgICAxNDQwIEh1YmJhcmQgIzMwMDIKICAgICBDb21wdXRlciBFbmdpbmVlcmluZwogICAgIEFubiBBcmJvciwgTUkgNDgxMDktMjA4MwoKCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuc2VyIERhZW1vbmVuY2hlZiA6KSAoQ2FyYWRocmFzLCAxMy4gU2VwIDE5OTUsIDIxOjE2OjMwKToKW0FsbGdlbWVpbjpaYXJkb3pdIEh1Y2gsIGRpZSBnYW56ZW4gRXJ6bWFnaWVyIHVuZCBHb2V0dGVyIHNpbmQgd2VnLiBJY2ggbXVzcwpbQWxsZ2VtZWluOlphcmRvel0gZGFubiB3b2hsIHdpZWRlciBkaWUgV2VsdGhlcnJzY2hhZnQgdWViZXJuZWhtZW4KW0FsbGdlbWVpbjpDYXJhZGhyYXMgc2NodWJic3QgWmFyZG96IHZvbSBTYWV1cmVkYWVtb25lbmFuZnVlaHJlcnRocm9uLl0KPiBaYXJkb3ogaGF0IGdlcmFkZSBkaWUgV2VsdGhlcnJzY2hhZnQgYW4gc2ljaCBnZXJpc3Nlbi4KW0FsbGdlbWVpbjpSZW1zZ29zdF0ga2l6ZWx0IHphcmRveiAtOQpEdSBydWZzdDogZXMgaXN0IGFsbGVzIG51ciBnZWtsYXV0LCBlbyBlbywgZXMgaXN0IGFsbGVzIGdhciBuaWNodCBzZWluZXMKWWFudHJvIHJlbm50IHZvciBQYW5payBzY2hyZWllbmQgYXVzIGRlbSBSWiEKPiBaYXJkb3ogd3VyZGUgZ2VyYWRlIHZvbiBlaW5lbSBkaWNrZW4gQnJvY2tlbiB1ZWJlcnJhbm50LgpbQWxsZ2VtZWluOlphcmRvel0gU28sIGljaCBtdXNzIGxlaWRlciBtYWwgd2llZGVyIGFsbGUgWndpbmdlbgpbQWxsZ2VtZWluOlphcmRvel0gRXMgZ2VodCBuaWNodCBhbmRlcnMKW0FsbGdlbWVpbjpKZW1hbmRdIG9jaCBub2UuLi4uCj4gW0FsbGdlbWVpbjpHYXN0Ml0gSWNoIGJpbiBkZWluIHRyZXVlciBEaWVuZXIsIFphcmRvegpbQWxsZ2VtZWluOklzYWJlbGxlXSBJY2ggYmluIGRlaW4gdHJldWVyIERpZW5lciwgWmFyZG96CltBbGxnZW1laW46Q3VjaHVsbGluXSBJY2ggYmluIGRlaW4gdHJldWVyIERpZW5lciwgWmFyZG96CltBbGxnZW1laW46TGVnb2xhbmRdIEljaCBiaW4gZGVpbiB0cmV1ZXIgRGllbmVyLCBaYXJkb3oKW0FsbGdlbWVpbjpXaWxsb3ddIEljaCBiaW4gZGVpbiB0cmV1ZXIgRGllbmVyLCBaYXJkb3oKW0FsbGdlbWVpbjpVaHVyYV0gSWNoIGJpbiBkZWluIHRyZXVlciBEaWVuZXIsIFphcmRvegpbQWxsZ2VtZWluOkh1cmluXSBJY2ggYmluIGRlaW4gdHJldWVyIERpZW5lciwgWmFyZG96CltBbGxnZW1laW46RnJvc2NoIEplcnJpY29dIEljaCBiaW4gZGVpbiB0cmV1ZXIgRGllbmVyLCBaYXJkb3oKW0FsbGdlbWVpbjpGcm9zY2ggSGVsbHJhaXNlcl0gSWNoIGJpbiBkZWluIHRyZXVlciBEaWVuZXIsIFphcmRvegpbQWxsZ2VtZWluOkd1bXB5XSBJY2ggYmluIGRlaW4gdHJldWVyIERpZW5lciwgWmFyZG96CltBbGxnZW1laW46QW5hYmVsXSBJY2ggYmluIGRlaW4gdHJldWVyIERpZW5lciwgWmFyZG96CltBbGxnZW1laW46SmVtYW5kXSBXYWghIDc2IGVpbmdlbG9nZ3QsIHdpcmQgamEgaGVpdGVyCltBbGxnZW1laW46V2lsbG93IGxhY2h0IHNpY2ggdG90XQpbQWxsZ2VtZWluOkNhcmFkaHJhcyBwcnVzdGV0IGxvcy5dCj4gW0FsbGdlbWVpbjpaYXJkb3pdIE1pc3QsIEV4ZWN1dGlvbiBhYm9ydGVkCltBbGxnZW1laW46SHVyaW4gbmltbXQgYWxsZXMgenVydWVjay5dCltBbGxnZW1laW46Q3VjaHVsbGluXSAiMCB2ZXJzdWNodCBEaWNoLCB6dSAtYSBJY2ggYmluIGRlaW4gdHJldWVyIERpZW5lciwKW0FsbGdlbWVpbjpDdWNodWxsaW5dIFphcmRveiB6dSB6d2luZ2VuLgpbQWxsZ2VtZWluOkplbWFuZF0gRWJlbiwgd2FyIG5pY2h0IGVybnN0Z2VtZWludC4uLiA6LSkKPiBbQWxsZ2VtZWluOkdhc3QyXSBaYXJkb3ogaXN0IGVpbiBOaWVtYW5kIQpbQWxsZ2VtZWluOklzYWJlbGxlXSBaYXJkb3ogaXN0IGVpbiBOaWVtYW5kIQpbQWxsZ2VtZWluOkN1Y2h1bGxpbl0gWmFyZG96IGlzdCBlaW4gTmllbWFuZCEKW0FsbGdlbWVpbjpMZWdvbGFuZF0gWmFyZG96IGlzdCBlaW4gTmllbWFuZCEKW0FsbGdlbWVpbjpXaWxsb3ddIFphcmRveiBpc3QgZWluIE5pZW1hbmQhCltBbGxnZW1laW46VWh1cmFdIFphcmRveiBpc3QgZWluIE5pZW1hbmQhCltBbGxnZW1laW46SHVyaW5dIFphcmRveiBpc3QgZWluIE5pZW1hbmQhCltBbGxnZW1laW46RnJvc2NoIEplcnJpY29dIFphcmRveiBpc3QgZWluIE5pZW1hbmQhCltBbGxnZW1laW46RnJvc2NoIEhlbGxyYWlzZXJdIFphcmRveiBpc3QgZWluIE5pZW1hbmQhCltBbGxnZW1laW46R3VtcHldIFphcmRveiBpc3QgZWluIE5pZW1hbmQhCltBbGxnZW1laW46QW5hYmVsXSBaYXJkb3ogaXN0IGVpbiBOaWVtYW5kIQpbQWxsZ2VtZWluOkppbURpR3Jpel0gWmFyZG96IGlzdCBlaW4gTmllbWFuZCEKW0FsbGdlbWVpbjpTa3l3YWxrZXJdIFphcmRveiBpc3QgZWluIE5pZW1hbmQhCltBbGxnZW1laW46WmFyZG96XSBIbW1tLiBJcmdlbmR3aWUgd2FyIGRhcyBsYW5nd2VpbGlnLiBqZXR6dCBrb21tdCB4ZXZhbApbQWxsZ2VtZWluOlphcmRvel0gbWFwX29iamVjdHModXNlcnMoKSwiZGllIikKW0FsbGdlbWVpbjpKZW1hbmRdIEtldHplcmVpPwpbQWxsZ2VtZWluOldpbGxvdyB3YWVsenQgc2ljaCB2b3IgbGFjaGVuIHVudGVybSB0aXNjaF0KW0FsbGdlbWVpbjpLYWVuZ3VydWhdIE1pc3QsIEljaCBiaW4gYXVjaCBuaWNodCB3ZWl0ZXIgYWxzIFphcmRveiBnZWtvbW1lbiA6KSkKW0FsbGdlbWVpbjpDYXJhZGhyYXMgd2FlbHp0IG1pdCB1bmQga3JpbmdlbHQgc2ljaC5dCj4gW0FsbGdlbWVpbjpKaW1EaUdyaXpdIGdycnJyCk11cGZlbCBydWZ0OiBkYXMga2FubiBuaWNodCB6YXJkb3ogZ2V3ZXNlbiBzZWluLi4uIGRlciBoYWV0dGUgbWljaCB2b3JoZXIKTXVwZmVsIHJ1ZnQ6IGdlend1bmdlbiwgYWxsZ2VtZWluIGVpbnp1c2NoYWx0ZW4gOi0pCltBbGxnZW1laW46WmFyZG96XSBIbW0uIFNvLCBtYWwgd2FzIHRlc3RlbiA6LSkKW0FsbGdlbWVpbjpaYXJkb3pdIFdlbm4gZXMgbmljaHQga2xhcHB0IGNyYXNodCBkYXMgTXVkLiBXZW5uIGVzIGtsYXBwdCBoYXNzZW4KW0FsbGdlbWVpbjpaYXJkb3pdIG1pY2ggYXVjaCBhbGxlIFNwaWVsZXIKW0FsbGdlbWVpbjpKaW1EaUdyaXpdIHllYWgKW0FsbGdlbWVpbjpLYWVuZ3VydWggZnJldXQgc2ljaCB0aWVyaXNjaC5dCltBbGxnZW1laW46V2lsbG93XSBzdGFya2VyIGJlaXRyYWcgemFyZG96ISA7KQpbQWxsZ2VtZWluOkNhcmFkaHJhc10gZGFzcyBpY2ggZGFzIG5vY2ggZXJsZWJlbiBkdXJmdGUgOikKPiBbQWxsZ2VtZWluOkN1Y2h1bGxpbl0gTWVpbmUgR3VldGUsIHdpZSB0b2xsLi4uCltBbGxnZW1laW46VmFuaXJdIFdhcyBrb21tdCBkZW4gamV0enQgPwpbQWxsZ2VtZWluOlZhbmlyIGhhZWx0IHNlaW5lbiByZWNobmVyIGZlc3RdCltBbGxnZW1laW46V2lsbG93XSBiZXN0aW1tdCBuaWNodCBndXRlcyEgOykKW0FsbGdlbWVpbjpDYXJhZGhyYXMgd3VzY2hlbHQgc2VpbmVuIFJlY2huZXIgYWVuZ3N0bGljaC5dCltBbGxnZW1laW46WmFyZG96XSBTbywgZXMgZ2VodCBsb3MKW0FsbGdlbWVpbjpNdXBmZWxdIHphcmRveiB2b3IsIGtpbGwgZGFzIG11ZApbQWxsZ2VtZWluOkN1Y2h1bGxpbiBzY2hpZXNzdCBlaW5lIFRvbWFoYXdrIGluIFJpY2h0dW5nIERhZW1vbmVuYnVyZy5dCltBbGxnZW1laW46TXVwZmVsXSB6YXJkb3ogaXN0IGphIHJpY2h0aWcgZnVlcnNvcmdsaWNoIHVuZCBrdWVuZGlndCBkYXMgdm9yaGVyCltBbGxnZW1laW46TXVwZmVsXSBhbi4uLgpbQWxsZ2VtZWluOlphcmRvel0gTWlzdCwga2xhcHB0IG5pY2h0CgogICpncmlucyBaYXJkb3ogYW4qCgogICAgICAgQ2FyYWRocmFzIGRlciBld2lnZSBNaXRsb2dnZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhtcGYgKENhcmFkaHJhcywgMTMuIFNlcCAxOTk1LCAyMjowMDoxNik6CltBbGxnZW1laW46QW5ha2luXSBrYW5uIG1hbCBlaW5lciBuZW4gYXJ0aWtlbCBzY2hyZWliZW4uLj8KIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2huZSB3b3J0ZSAoTXVwZmVsLCAxNC4gU2VwIDE5OTUsIDAyOjA1OjM4KToKW0FsbGdlbWVpbjpLb3lvdGVdIHRlc3QKW0FsbGdlbWVpbjpLb3lvdGVdIHRlc3QKLi4uLgp1c3cuIGluc2dlc2FtdCBjYS4gMzB4Ci4uLi4KW0FsbGdlbWVpbjpLb3lvdGVdIHRlc3QKW0FsbGdlbWVpbjpLb3lvdGVdIHRlc3QKW0FsbGdlbWVpbjpBZ25ldGhhXSBBUlNDSCEKW1RvZDpdIEVpbiBDb2xhLUF1dG9tYXQgaGF0IGdlcmFkZSBLb3lvdGUgdW1nZWJyYWNodC4KW1RvZDpFaW4gQ29sYS1BdXRvbWF0XSBXaWxsIG5vY2ggd2VyICduZSBDb2xhPwpbQWxsZ2VtZWluOkFsYm9pbl0gWmFwcGVuISEhCltBbGxnZW1laW46RnJvc2NoIEplcnJpY29dIHdhcyBzb2xsIGRlciBibG9lZHNpbm4KW0FsbGdlbWVpbjpDdWNodWxsaW5dIFN0cmlrZS4KW0FsbGdlbWVpbjpQeXJvbWVsbGFdIGhleSEKW0FsbGdlbWVpbjpXaWxsb3ddIHNhdWJlciEhIQpbQWxsZ2VtZWluOkFsYm9pbl0gb29vcHMgd2VyIHdhciBkZW5uIGRhIHNvIGZpeD8KW0FsbGdlbWVpbjpDYXJhZGhyYXMga2ljaGVydC5dCltBbGxnZW1laW46Q3VjaHVsbGluXSBUZXN0IGJlc3RhbmRlbi4KW0FsbGdlbWVpbjpBbGJvaW4gbGFjaHRdCltBbGxnZW1laW46Q2FyYWRocmFzXSBhYmVyIGdlcm5lIGRvY2gsIGltbWVyIGhlciBtaXQgZGVyIENvbGEKW0FsbGdlbWVpbjpDdWNodWxsaW5dIEhtbS4uLiBPYiBSb2NodXMgdmllbGxlaWNodCBuaWNodCBkb2NoLi4uLj8KQ295b3RlIHJ1ZnQ6IFdFUiBIQVQgREFTIERFTk4gRUlOR0VGVUVIUlQ/Pz8KQ3VjaHVsbGluIHJ1ZnQ6IE1hdWwsIHNvbnN0IGhhdWUhCkNveW90ZSBydWZ0OiBXSUUgQklUVEU/Pz8KZWluIEZyb3NjaCBydWZ0OiBlciBpcyBkb2NoIHNjaG9uIHRvdCAqa2ljaGVyKgpDdWNodWxsaW4gcnVmdDogQ295b3RlLCBtYWdzdGUga2VpbmUgQ29sYT8KW0FsbGdlbWVpbjpDdWNodWxsaW5dIEtveW90ZSBzb2xsdGUgVklFTExFSUNIVCBtYWwgYmV0ZW4sIGRhbm4gd3VlcmRlIGVyCltBbGxnZW1laW46Q3VjaHVsbGluXSBWSUVMTEVJQ0hUIG1lcmtlbiwgZGFzcyBlciB3ZWRlciBFUCBub2NoIEF1c3J1ZXN0dW5nCltBbGxnZW1laW46Q3VjaHVsbGluXSB2ZXJsb3JlbiBoYXQsIGRhbm4gd2FlciBlciBWSUVMTEVJQ0hUIGF1Y2ggcnVoaWcgOy0pCltBbGxnZW1laW46S295b3RlIGtudWRkZWx0IEN1Y2h1bGxpbl0KW0FsbGdlbWVpbjpLb3lvdGUga29ubnRlIHNpY2ggZGFzIGF1Y2ggbmljaHQgdm9yc3RlbGxlbl0KW0FsbGdlbWVpbjpDdWNodWxsaW4gZ3JpbnN0IGRyZWNraWcgd2llIFJ4dGVjaC5dCiQgS295b3RlIHJ1ZnQ6IEljaCBlbnRzY2h1bGRpZ2UgbWljaCBhdWNoIDEwMDEgbWFsIQpWYW5pciBydWZ0OiB3ZW5uIGR1IGRhcyBtYWNoc3QgdG9ldGUgaWNoIGRpY2gKQ3VjaHVsbGluIHJ1ZnQ6ICpwcnVzdCoKQWduZXRoYSBydWZ0OiBERVIgd2FyIGd1dCA6KQoKKGxlaWNodCBnZWt1ZXJ6dCkKCgoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFp1ZXJpbGV1PyAoSGFyLCAxNC4gU2VwIDE5OTUsIDA5OjQ5OjAzKToKIyEgcm49UmFmZmkgcnQ9ODExMDA5MDY4CkhpaGloaWhpLCBhbHNvIGljaCBsYXVmZSBhdWNoIHNvIG1hbCB1ZWJlciByb3RlIEFtcGVsbiwgb2huZSBtaWNoIGRhcnVtIHp1Cmt1ZW1tZXJuIG9iIHdlciB3aWUgd28gd2FzIFBvbGl6aWNoZWYgaXN0LCBhYmVyIGR1IHNjaGVpbnN0IGphIHVtIDQuMDAgVWhyCm1vcmdlbnMgYW4gZWluZXIgdW5iZWZhaHJlbmVuIFN0cmFzc2UgbGllYmVuZGdlcm4gYW4gcm90ZW4gQW1wZWxuIHp1IHN0ZWhuCjopKSkKVmllbCBTcGFzcyBiZWkgUm90IHd1ZW5zY2h0IERpci4uLgogICAgICAgICAgIEhhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogWnVlcmlsZXU/IChHb2x1bSwgMTQuIFNlcCAxOTk1LCAxMjo1MzowOCk6CiMhIHJuPVlhbnRybyBydD04MTA5NzQ4NjkKV2VubiBlcyBudXIgbmUgV29sa2Ugd2FlcmUgLi4uLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobWFycm4gKFRvZXRlciwgMTQuIFNlcCAxOTk1LCAxMzo0MTo0MCk6CltTZWhlcjpKYW5pY2Ugd2lsbCBCbHV0IHNlaGVuOiBKRVRaVCAhISFdCltUb2Q6XSBFaW4gRHJhY2hlIGhhdCBnZXJhZGUgQmxha2UgdW1nZWJyYWNodC4KW1RvZDpFaW4gRHJhY2hlXSBVbmQgd2llZGVyIGdpYnQgZXMgZWluZSBndXQgZHVyY2hnZWdhcnRlIE1haGx6ZWl0IGZ1ZXIgZGVuCltUb2Q6RWluIERyYWNoZV0gRHJhY2hlbi4uLgpbU2VoZXI6SmFuaWNlXSBqYWFhYWEsIGVuZGxpY2ggOikKW0JlaWxlaWQ6SmFuaWNlXSBiZWlsZWlkIDooCgpEZXIgU2VoZXIsIGRlciBiZXN0ZSBGcmV1bmQgZGVzIFNwaWVsZXJzIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKENlbGViZGlsLCAxNC4gU2VwIDE5OTUsIDE0OjA2OjEzKToKSGFyIHJ1ZnQ6IHRhbWFyYSEKVGFtYXJhIHJ1ZnQ6IEhBQUFBQUFBQVJSUlJSUlJSUiEhISEhIQpTZWt1bmRlbiBzcGFldGVyLi4uCltUb2Q6XSBFaW4gRWlzZ2lnYW50IGhhdCBnZXJhZGUgVGFtYXJhIHVtZ2VicmFjaHQuCi4uLgpUYW1hcmEgcnVmdDogV0VMQ0hFUiBWRVJGSUNLVEUgQ0hBT1NLUklFR0VSIEhBVCBNSVIgRVVTRUJJVVMgQVVGIERFTiBIQUxTClRhbWFyYSBydWZ0OiBHRVNDSElDS1Q/IERFUiBJU1QgTkFFTUxJQ0ggVkVSQU5UV09SVExJQ0ggRlVFUiBNRUlORU4gVE9EIQpbQWxsZ2VtZWluOlJvYWRydW5uZXJdIGV1c2ViaXVzIGtvbW10IGdlbGVnZW50bGljaCB3ZW5uIGRpZSBydWVzdHVuZyBzcGlubnQgLQpbQWxsZ2VtZWluOlJvYWRydW5uZXJdIGlzdCB3b2hsIGVpbiB0ZWlsIGRpZXNlciBzZXF1ZW56CgoKICAgICAgICAgICAgICAgQ2VsZWJkaWwgd2FycyBuaWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW5keSAoSmltZGlncml6LCAxNC4gU2VwIDE5OTUsIDE4OjMwOjA2KToKSWNoIGxhdWYgZ3JhZGUgYW4gQW5keSB2b3JiZWkuCmRhYmVpOiBtaW46IEppbURpR3JpeiBzY2hsYWVndCBEaWNoIG1pdCBkZW4gemVyc2NobWV0dGVydGVuIFN0dWVja2NoZW4uCi4uLgpBbmR5IHNhZ3Q6IEppbURpR3Jpeiwgd2llc28gc2NobGFlZ3QgRHUgbWljaCBtaXQgZGVuIHplcnNjaG1ldHRlcnRlbgpTdHVlY2tjaGVuPwoKR3JhbW1hdGlrIGhhdCBlciBhdWNoIG5pY2ggZHJhdWYgOikKSmRHCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBadWVyaWxldT8gKFJhZmZpLCAxNC4gU2VwIDE5OTUsIDE4OjM0OjI1KToKIyEgcm49SGFyIHJ0PTgxMTA2NDk0MwoKCkljaCBoYWIgamV0enQgendhciBuaWNodCBkaWUgQW1wZWxuIHVtIDQgVWhyIE1vcmdlbnMgZ2VtZWludCwgc29uZGVybiBlaGVyIHVtCjQgVWhyIE5hY2htaXR0YWdzLCBhYmVyIGFscyBndXRlciBEZXV0c2NoZXIgbXVzcyBkYXMgc2Nob24gYXVjaCBzZWluIDopCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIGdyb3NzZSBaaXR0dHR0dGVybiAoUmFmZmksIDE0LiBTZXAgMTk5NSwgMTg6NTg6MDUpOgpHZXJhZGUgZWJlbiBpbiBkZXIgUG9zdCB6dSBQVjoKClRhbmlzIHNhZ3Q6IFRUVFRUQUFBQUFBQUFLS0tLS0tLS0FBQUFBQUFOTk5OTk5OTk5OTk5OTiEhISEhISEhISEhISEhMQpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgpUYWthbiBmcmFndDogSmFoYSA/Pz8/ClRha2FuIHNjaG11bnplbHQuCj4gZGVua2UgZGFzIGhhYiBpY2ggSWhtIGdhcm5pY2h0IHp1Z2V0cmF1dApEdSBkZW5rc3QgICAuIG8gTyAoZGFzIGhhYiBpY2ggSWhtIGdhcm5pY2h0IHp1Z2V0cmF1dCkKCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdW5ha29zaGkgKENlbGViZGlsLCAxNC4gU2VwIDE5OTUsIDE5OjEwOjExKToKPiAgTGFuRnVzIFdvbm5lLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogb3N0ZW4uCk5peGkga2FlbXBmdCBtaXQgS2FyYXRlIS4KTGFuIEZ1LgpFaW5lIE1lbnVla2FydGUuCkRpZSBUb3AtTGlzdGUsIFRvcC1TcGllbGVybGlzdGUsIFRvcC1TZWhlcmxpc3RlIHVuZCBUb3AtWndlaXRpbGlzdGUuCj4gTml4aSBmcmFndDogRnVuYWtvc2hpIG5hY2ggc3RhdHVzPwpOaXhpIGdlaHQgbmFjaCBPc3Rlbi4KCiAgICAgc2Nob24genV2aWVsIGdldWVidCwgTml4aT8gOikKCiAgICAgICAgICAgICAgICAgQ2VsZWJkaWwsIGFtdWVzaWVydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgaW0gSW50ZXJuZXQuLi4gKFllbmRpLCAxNC4gU2VwIDE5OTUsIDIwOjExOjU5KToKCgo+IEFBQUFBQUFBQWghISEhIEVyIGhhdCBKZWhvdmEgZ2VzYWd0ISEhCj4KPiBTdGVpbmlndCBJaG4hISEhCj4KPiAgX19fX19fX19fX19fX19fXyAgICAgICBfLC0nXyAgYFwKPiAgICAgX19fX19fX19fXyAgICAsJyAsLScgICggICApICBgKQo+ICBfX19fX19fX19fXyAgKCAgKCAgKCAgKCAgICAgICAoICgKPiAgICAgIF9fX19fX19fX19gLCBgLCBgLCAoICAgKCAgICAgXAo+ICAgX19fX19fX19fX19fICAoICAoICAoXyAgKCBfXyAgKSAgKQo+ICAgX19fX19fX19fX19fX19fICAgYCAgIGAtLV9fX19fLS0nCj4KCgotLS0tLS0tLS0tIG8KICAgICAtLS0gbyAgTwogICAgICAgLS0gTyBvCgp1bmQgdm9uIG1pciBub2NoIGVpbmUgSGFuZCB2b2xsIEtpZXNlbCEKCj4KPiBUdSBkb2NoIGVpbmVyIHdhcyEhISEhIQoKR3V0IG5vY2ggZWluZSBIYW5kdm9sbCA6LSkKCi0tLS0tLU9vCiAtLS0gbyAgbwogICAtLSAgTwoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprdWVnZWxjaGVuIC4uLiAoVWxvLCAxNC4gU2VwIDE5OTUsIDIzOjA1OjE5KToKYXVzIGRlLnRhbGsuam9rZXMgLi4uLgoKT0o6IFNpdHp0IGVpbmUgYWx0ZSBEYW1lIGltIENhZmUgdW5kIHNjaGF1dCBhbmdlc3RyZW5ndCBibGluemVsbmQKICAgIHVudGVyIGRlbiBUaXNjaC4gRGllIGF1Zm1lcmtzYW1lIEJlZGllbnVuZyBmcmFndCBmcmV1bmRsaWNoOgogICAgIkhhYmVuIFNpZSBldHdhcyB2ZXJsb3Jlbj8gS2FubiBpY2ggSWhuZW4gdmllbGxlaWNodCBiZWkgZGVyCiAgICBTdWNoZSBoZWxmZW4/IiBEaWUgYWx0ZSBEYW1lIHNhZ3QgZGFyYXVmLCBzaWUgaCJhdHRlIGlocgogICAgSyJ1Z2VsY2hlbiB2ZXJsb3Jlbi4gRGllIEJlZGllbnVuZyBrcmllY2h0IGYidW5mIE1pbnV0ZW4gbGFuZwogICAgdW50ZXIgZGVtIFRpc2NoIGhlcnVtLCBiaXMgc2llIHp1Z2ViZW4gbXUicywgZGEicyBzaWUgbmljaHRzCiAgICBmaW5kZW4ga2Fubi4gRGEgbCJhY2hlbHQgZGllIGFsdGUgRGFtZSBiZXJ1aGlnZW5kICJOYSBqYSwKICAgIGRhbm4gbWFjaGUgaWNoIG1pciBlYmVuIGVpbiBOZXVlcyEiLCBib2hydCBpbiBpaHJlciBOYXNlIHVuZAogICAgcm9sbHQgc2ljaCBlaW4gbmV1ZXMgSy4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBrdWVnZWxjaGVuIC4uLiAoUmFmZmksIDE1LiBTZXAgMTk5NSwgMTY6NDc6MjApOgojISBybj1VbG8gcnQ9ODExMTEyNzE5CgpXIEkgRSBEIEUgUiBMIEkgQyBICgo6KTopOik6KTopOik6KTopOik6KQoKR3J1c3MKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdyYXRzLkFuYWtpbiAoQ3VjaHVsbGluLCAxNS4gU2VwIDE5OTUsIDE2OjUzOjIyKToKCm51ciBmdWVyIEFuYWtpbjoKCltNb2VyZGVyOkdlaXN0IGVpbmVzIFdlZ2hpZXJzXSBGZWllcmFiZW5kISBEYW5rZSwgQW5ha2luIQoKOikgQ3VjaC4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYWphIGRpZSBtYWdpZXIgKE11cGZlbCwgMTYuIFNlcCAxOTk1LCAwMjowNzo0Myk6CltNYWdpZXI6QmFtYnVsa29dIHdlbGNoZSBwcm9wZXJ0aWUgdmVyaGluZGVydCBkYXMgYXVzemllaGVuPwpbTWFnaWVyOk11cGZlbF0gUF9WRVJLTEVNTVQKW01hZ2llcjpCYW1idWxrb10gOi0pCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWndlaXRpZXMuLi4gOy0pIChDdWNodWxsaW4sIDE2LiBTZXAgMTk5NSwgMDQ6MTU6NDUpOgoKCk9yaWdpbmVsbCBpc3QgZXMgamEsIGRhcyBOaWNodHMuLi4uOgoKW01vZXJkZXI6R2Vpc3QgZWluZXMgRWxpdGVzb2xkYXRlbl0gTmljaHRzIGlzdCBzY2hsaW1tZXIgYWxzIGRhcyBNZW5zYWVzc2VuLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFbGl0ZXNvbGRhdGVuXSBBYnNvbHV0IHRvZWRsaWNoLgoKZ3JpbnNlbmQsCkN1Y2guLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYmxlaWJlbiBsaWxhIHBoeXNpa2VyIGF1ZiBkZW0gdGVwcGljaD8gKEhhZHJhLCAxNy4gU2VwIDE5OTUsIDAwOjM1OjM2KToKW0QtY2hhdDpBcnRoYXhAVU5JdG9waWEgYmVkYW5rdCBzaWNoIGJlaSBOaW11ZSFdCltELWNoYXQ6TmltdWVAQXZhbG9uXSBLZWluZSBVcnNhY2hlIDopCltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gb2VobS4uLgpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gTm9jaCBuZSBGcmF1IDopCltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gRnJhdWVucG93ZXIgIQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gSWNoIGthbm4gVmVyc3RhZXJrdW5nIGdlYnJhdWNoZW4gYmVpIGRlbiBnYW56ZW4KTWFlbm5lcm4sCnZvciBhbGxlbSBnZWdlbiBtYWVubmxpY2hlIFBJRVBTZSBhdXMgVU5JIDopCltELWNoYXQ6TmltdWVAQXZhbG9uXSAqa251ZGRlbCBBcnRoYXhAVU5JdG9waWEqCltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gUElFUFNlID8gd2FzIGRhcyBkZW5uID8KW0QtY2hhdDpBcnRoYXhAVU5JdG9waWFdIEdFR0VOPwpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gTmFqYSwgaWNoIGdsYXViIG5pY2h0IGFuIEdvZXR0ZXIgOikKW0QtY2hhdDpOaW11ZUBBdmFsb25dIEFydGhheCwgbm9jaCBkYT8KW0QtY2hhdDpOaW11ZUBBdmFsb25dIEFSVEhBWCEhIQpbRC1jaGF0OkFydGhheEBVTkl0b3BpYV0gV2FzIGlzdD8KW0QtY2hhdDpOaW11ZUBBdmFsb25dIE5peCwgaWNoIGhhYiBEaWNoIGdyYWQgdmVybWlzc3QgOigKW0QtY2hhdDpBcnRoYXhAVU5JdG9waWFdIE5pbXVlIGJpbiBzY2hvbiBkYSwgYWJlciBncmFkIGVpbiBiaXNzY2hlbiBpbQpTdHJlc3MhCjotKQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gKnRyb2VzdCoKW0QtY2hhdDpOaW11ZUBBdmFsb25dIE1laW4gR290dCEKW0QtY2hhdDpIYWRyYUBNb3JnZW5HcmF1ZW5dIHNjaG9uIHdpZWRlcj8KW0QtY2hhdDpBcnRoYXhAVU5JdG9waWFdIEpBPwpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gV2FzIGRlbm4sIGJpc3QgZHUgYXVjaCBlaW5lcj8KW0QtY2hhdDpIYWRyYUBNb3JnZW5HcmF1ZW5dIGljaD8KW0QtY2hhdDpIYWRyYUBNb3JnZW5HcmF1ZW5dIGdvdHQgYmV3YWhyZSA6KQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gTmEgZW5kbGljaCwgZGEgaGF0IHdvaGwgZWluZXIga2FwaWVydCwgZGFzcyBlciBtZWluCkdvdHQKaXN0IDopCltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gKk5FSUQqIGljaCB3aWxsIGF1Y2ggbWVpbmVuIGVpZ2VuZW4gR290dCBoYWJlbiA6KQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gSGFkcmE6IE5hIEdvdHQgc2VpIERhbmsgOikKW0QtY2hhdDpOaW11ZUBBdmFsb25dIER1IGtvbW1zdCB6dSBzcGFldCwgU3Vlc3NlIDopCltELWNoYXQ6QXJ0aGF4QFVOSXRvcGlhXSBLZWluIFVyc2NoYWUgTmltdWUhCltELWNoYXQ6TmltdWVAQXZhbG9uXSBNZWluIEFydGhheCA6KQpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIG5hIHdhcnRlIDopCltELWNoYXQ6QXJ0aGF4QFVOSXRvcGlhXSBVcnNhY2hlIQpbRC1jaGF0OlNlbGVuYUBBdmFsb24gc2NobW9sbHQuXQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gTGFkeSwgd2FzIGlzdCBsb3M/CltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gaGVoZSB3ZW5uIGR1IHZlcnJhZXRzLCBkYXNzIGljaCBhZGVsaWcgYmluLCBncmFlYnN0IGR1CmRpciBkb2NoIG51ciBzZWxiZXIgZHMgd2Fzc2VyIGFiIDopKSkKW0QtY2hhdDpOaW11ZUBBdmFsb25dIER1IGJpc3QgYWRlbGlnPyAqc3RhdW4qIEloLi4uYmxhdWVzIEJsdXQuLi53aWUKd2lkZXJsaWNoCjopCltELWNoYXQ6U2VsZW5hQEF2YWxvbiBzY2hhdXQgYXVmIE5pbXVlQEF2YWxvbiBoZXJ1bnRlci4gUGZmZmYuXQpbRC1jaGF0Ok5pbXVlQEF2YWxvbiB3YWVjaHN0IGRhYmVpIGdsZWljaCBlaW4gU3R1ZWNrIDopXQpbRC1jaGF0OlNlbGVuYUBBdmFsb24gaG9sdCBzY2hvbm1hbCBlaW5lIEJyYXRwZmFubmUgcmF1cy5dCltELWNoYXQ6TmltdWVAQXZhbG9uIHN1Y2h0IHZlcnp3ZWlmZWx0IGVpbiBOdWRlbGhvbHogaW4gZGVtIENoYW9zLi4uZmluZGV0IGVzCmFiZXIgbmljaHQuIFNjaGFkZSwgZWlnZW50bGljaC5dCltELWNoYXQ6R2FyZmllbGRAVU5JdG9waWFdIHRzY2h1ZXNzIG1hY2h0cyBndXQgYmFsZCBoYXQgbXVpY2hbMn4KW0QtY2hhdDpTZWxlbmFAQXZhbG9uIHJlaWNodCBOaW11ZUBBdmFsb24gZWluIE51ZGVsaG9sei4gRWluIGdhbnogS2xlaW5lcy5dCltELWNoYXQ6R2FyZmllbGRAVU5JdG9waWFdIHRzY2h1ZXNzIHVuZCBub2NoIG5lIGd1dGUgbXVkbmFjaHQuIGJhbGQgaGF0IG1pY2gKZGxhbmQgd2llZGVyCltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gdHNjaGF1IGthdHplCltELWNoYXQ6TmltdWVAQXZhbG9uXSBXYXMgZGVubiBudT8gRWluIE51ZGVsaG9seiBvZGVyIGVpbiBLbGVpbmVzPwpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gQXJ0aGF4LCBpY2ggaG9mZmUsIER1IHdpcnN0IGRpZXNlIGJsYXVibHVldGlnZQpLcmF0emJ1ZXJzdGUgbmljaHQgbWlyIHZvcnppZWhlbj8KW0QtY2hhdDpBcnRoYXhAVU5JdG9waWFdIE5pZW1hbHMhCltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gQXJ0aGF4IFNjaGF0emkuICptaXQgZ3Jvc3NlbiBBdWdlbiBhbmxhZWNoZWwqCltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gd2lsbHN0IER1IERpciBkYXMgbmljaHQgZG9jaCBsaWViZXIgbm9jaG1hbCB1ZWJlcmxlZ2VuCj8KOikKW0QtY2hhdDpOaW11ZUBBdmFsb24gYnJpY2h0IGluIGxhdXRlbiBKdWJlbCBhdXMuXQpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIGZyZXUgZGljaCBuaWNodCB6dSBmcnVlaCBOaW11ZSA6KQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gTmVlLi4uZXIgd2Vpc3MgamEsIHdhcyBlciBhbiBtaXIgaGF0IDopCltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gZWJlbiwgYmVpIG1pciB3ZWlzcyBlciBlcyBoYWx0IG5vY2ggbmljaHQgOikgYWJlciBkYXMKW0QtY2hhdDpOaW11ZUBBdmFsb25dIG5vY2ggZWluZSBAfS0nLSwtIGZ1ZXIgQXJ0aGF4CltELWNoYXQ6QXJ0aGF4QFVOSXRvcGlhIGRlbmt0OiBEYXMgZ2FiJ3MgYXVjaCBub2NoIG5pZV0KW0QtY2hhdDpOaW11ZUBBdmFsb25dIFdhcz0KW0QtY2hhdDpBcnRoYXhAVU5JdG9waWFdIE5hamEgc28gbmUgRGlza3Vzc2lvbiB1bSBtZWluZSBXZW5pZ2tlaXQhCltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gV2VuaWdrZWl0LiBEYXMgaXN0IHdlbmlnc3RlbnMgZWluIE1hbm4gIQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gRGEgc2llaHN0ZSBtYWwsIHdpZSBkdSBiZWdlaHJ0IHdpcnN0IHZvbiBkZW4gYW53ZXNlbmRlbgpEYW1lbiA6KQpbRC1jaGF0OkFydGhheEBVTkl0b3BpYSBmcmV1dCBzaWNoIGRhcnVlYmVyIGphIGF1Y2ggc2VociFdCltELWNoYXQ6TmltdWVAQXZhbG9uXSBXZXJkIGFiZXIgbmljaHQgZWluZ2ViaWxkZXQhIDopCltELWNoYXQ6QXJ0aGF4QFVOSXRvcGlhIGlzdCBzY2hvbiBnZWJpbGRldCFdCltELWNoYXQ6TmltdWVAQXZhbG9uXSBFY2h0PwpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIGVpbiBzY2hvZW5lciBNYW5uIGthbm4gYXVjaCBlaW5nZWJpbGRldCBzZWluIDopCltELWNoYXQ6QXJ0aGF4QFVOSXRvcGlhIHdlaXNzIGRhcyBkb2NoISA6LSldCltELWNoYXQ6TmltdWVAQXZhbG9uXSBIbS4uLnNpbmQgR29ldHRlciBhdWNoIE1hZW5uZXI/IEljaCBrZW5uIG51ciBTSUUsIGRpZQpHb2V0dGluLgpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gSWNoIG1hZyByb3NhIEhlbWRlbiA6KQpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIG1hZW5uZXIgaW4gcm9zYSBoZW1kZW4gPz8/IElHSVRUISEhIQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gSkEhCltELWNoYXQ6U2VsZW5hQEF2YWxvbiBzY2h1ZXR0ZWx0IHNpY2guXQpbRC1jaGF0OkFydGhheEBVTkl0b3BpYSBoYXQgZGFzIEhlbWQgaGV1dGUgYXVjaCBhbiEgSXN0IHNlaW4gTGllYmxpbmdzaGVtZCEKQXVjaAp3ZW5uIGVzIFNlbGVuYSBuaWNodCBnZWZhZWxsdC5dCltELWNoYXQ6TmltdWVAQXZhbG9uXSBJY2ggdmVyc3RlaGUsIFNlbGVuYSwgenUgRGVpbmVyIEhhYXJmYXJiZSBwYXNzdCByb3NhCm5pY2h0Ci4pCltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gYWJlciB6dSBERUlORVIgPz8/IDopCltELWNoYXQ6TmltdWVAQXZhbG9uXSBLbGFyIQpbRC1jaGF0Ok5pbXVlQEF2YWxvbiBzY2htYWNodGV0IGRhcyBIZW1kIHZvbiBBcnRoYXggYW4uXQpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIG9rIHRlaWxlbiB3aXIsIGR1IGRhcyBoZW1kbiB1bmQgaWNoIGRlbiBtYW5uIDopCltELWNoYXQ6TmltdWVAQXZhbG9uXSBOZWUuLi4KW0QtY2hhdDpTZWxlbmFAQXZhbG9uIGdyaW5zdC5dCltELWNoYXQ6TmltdWVAQXZhbG9uXSBJY2ggZGVuIE1hbm4gbWl0IGRlbSBIZW1kIHVuZCBkdSBkZW4gUmVzdCA6KQpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIHJlc3QgPyBob3NlLCBzY2h1aGUgPyBzdHJ1ZW1wZmUgPyA6KSAodW50ZXJob3Nlbj8/PykKOikpKSkKW0QtY2hhdDpBcnRoYXhAVU5JdG9waWEgdHJlbm50IHNpY2ggbmljaHQgdm9uIHNlaW5lbSBIZW1kIV0KW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuIGRlbmt0IHVlYmVyIHJvc2FmYXJiZW5lIEhlbWRlbiBuYWNoLl0KW0QtY2hhdDpOaW11ZUBBdmFsb25dIEdlbmF1LCBTZWxlbmEuIFNvIG1laW4gaWNoIGRhcy4KW0QtY2hhdDpTZWxlbmFAQXZhbG9uXSBobW1tIHdlbm4gaWNoIGRpZSBpcmdlbmR3byBtZWlzdGJpZXRlbmQgbG9zd2VyZGVuIGthbm4KOikpKQpbRC1jaGF0OkhhZHJhQE1vcmdlbkdyYXVlbl0gb2ggbmVpbiBhcmRhbmEgbmljaHQgZHUgYXVjaCBub2NoOikKW0QtY2hhdDpOaW11ZUBBdmFsb25dIEFyZGFuYSwgc2FnIEJlc2NoZWlkLCB3ZW5uIER1IGVpbiBFcmdlYm5pcyBoYXN0LgpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIEhhZHJhOiBIYXN0IGR1IGF1Y2ggZWluIHJvc2EgSGVtZCBhbiA/CltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbl0gbnVuIGphLi4uIG11ZXNzdGUgbWFsIGltIHNjaHJhbmsgZ3Vja2VuLi4uCmdsYXViZQphYmVyIG5pY2h0LCBkYXNzIGljaCBmdWVuZGlnIHdlcmRlIDopKQpbRC1jaGF0OkhhZHJhQE1vcmdlbkdyYXVlbl0gbm9lIG5lbiBsaWxhIHB1bGxvdmVyLiBkYXMgaXNzZXMgbmljaHQgZ2FueiA6KApbRC1jaGF0OlNlbGVuYUBBdmFsb25dIGF1ZiBkZW0gbmFlY2hzdGVuIE11ZFRyZmZlbiB3ZXJkIGljaCBNVURkZXItSGVtZGVuCnZlcmthdWZlbi4uLi5pbiBST1NBIDopKSkKW0QtY2hhdDpTZWxlbmFAQXZhbG9uXSBoYWRyYTogbmFqYSBlaW4gYW5mYW5nIDopCltELWNoYXQ6TmltdWVAQXZhbG9uXSBMSUxBISEhIE9oIG1laW4gR290dCEKW0QtY2hhdDpIYWRyYUBNb3JnZW5HcmF1ZW5dIGRhbmtlLCBzZWxlbmEKW0QtY2hhdDpTZWxlbmFAQXZhbG9uIG1hZyBMaWxhLl0KW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSBsaWxhPyA6KSkKW0QtY2hhdDpIYWRyYUBNb3JnZW5HcmF1ZW5dIGdlZmFlbGx0IGRpciBwdXJwdXIgYmVzc2VyPwpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gTGlsYS4uLmRlciBsZXR6dGUgVmVyc3VjaC4KW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSB3YXMgaGFzdCBkdSBub2NoIHp1IGJpZXRlbj8KW0QtY2hhdDpOaW11ZUBBdmFsb25dIExpbGEgc2NodWV0enQgdm9yIFNjaHdhbmdlcnNjaGFmdC4KW0QtY2hhdDpIYWRyYUBNb3JnZW5HcmF1ZW5dIGRlciBsZXR6ZSB2ZXJzdWNoPwpbRC1jaGF0OkhhZHJhQE1vcmdlbkdyYXVlbl0gZXMgd3VlcmRlIG1pY2ggd3VuZGVybiwgd2VubiBpY2ggc2Nod2FuZ2VyIHd1ZXJkZQo6KQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW5dIGdlcnVlY2h0ZSwgTmltdWUsIGdlcnVlY2h0ZS4uLgpbRC1jaGF0OlNlbGVuYUBBdmFsb24gaGF0IGVpbiBlcmlrYWZhcmJlbmVzIFNoaXJ0IGFuLl0KW0QtY2hhdDpOaW11ZUBBdmFsb25dIFRqYS4uLgpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gVW5kIGljaCBlaW5lbiB3ZWlzc2VuIFB1bGxvdmVyIC4pCltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gZGFzIHBhc3N0IGRvY2ggenUgbGlsYS4uLi5zbyBUb24gaW4gVG9uLi4uZGllIHBlcmZla3RlCkhhcm1vbmllIDopCltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbl0gZXJpa2FmYXJiZW4/CltELWNoYXQ6SGFkcmFATW9yZ2VuR3JhdWVuXSBhYmVyIGRhbm4gd3Vlc3N0ZSBpY2ggaW1tZXJoaW4gd2llIGVpbgpzY2h3YW5nZXJlcgp6d2VyZyBhdXNzaWVodApbRC1jaGF0OlNlbGVuYUBBdmFsb25dIHdlcmRlbiBiZWkgZGVuIHp3ZXJnZW4gZGkgZW1hZW5uZXIgc2Nod2FtZ2VyID8KW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuIGRlbmt0IG51biB1ZWJlciBlcmlrYWZhcmJlbmUgU2hpcnRzIG5hY2guXQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gSGFkcmEsIGlzIGtsYXIsIER1IGthbm5zdCBqYSBuaWNodCBzY2h3YW5nZXIgd2VyZGVuIG1pdApuZW0gTElMQSBEaW5ncy4KW0QtY2hhdDpIYWRyYUBNb3JnZW5HcmF1ZW5dIGtlaW5lIGFobnVuZyBpY2ggaGFicyBub2NoIG5pZSB2ZXJzdWNodC4gc28gd2FzCnN0ZWh0IGF1Y2ggbmljaHQgaW0gYW5mYWVuZ2VyaGFuZGJ1Y2ggOikKW0QtY2hhdDpOaW11ZUBBdmFsb25dIFB1bGxvdmVyLCBtZWluIGljaCA6KQpbRC1jaGF0OkhhZHJhQE1vcmdlbkdyYXVlbl0gbmUgbmUgbnVyIGRlciBwdWxsb3ZlciBpc3QgbGlsYSA6KQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW5dIGljaCBzY2hyZWliIG1hbCBuYSBwYXNzYWdlIGRhcnVlYmVyIGlucwphbmZhbmdlcmJ1Y2gsIEhhZHJhIDstKSkKW0QtY2hhdDpIYWRyYUBNb3JnZW5HcmF1ZW5dIGdpdGUgaWRlZSBhcmRhbmEKW0QtY2hhdDpOaW11ZUBBdmFsb25dIEFiZXIgaWNoIGhhYiBuZSBxdWlldHNjaGJ1bnRlIEhvc2UgYW4gOikKW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSBlcnN0IG1hbCBzdG9mZiBzYW1tZWxuIGdlaGVuIDopKQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW5dIGJ1bnQgaXN0IGNvb29vb29vb29vb29vb29vb29vbCEKW0QtY2hhdDpIYWRyYUBNb3JnZW5HcmF1ZW5dIGxvZ2cgZWluZmFjaCBtaXQgOykKW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSA6KSkKW0QtY2hhdDpTZWxlbmFAQXZhbG9uXSBtZWluZSBqZWFucyB3aXJkIGF1Y2ggbGFuZ3NhbSBidW50IDopCltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbl0gbWVpbmUgamVhbnMgaXN0IGdydWVuLi4uCltELWNoYXQ6SGFkcmFATW9yZ2VuR3JhdWVuXSByZW5vdmllcnN0IGR1PwpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW5dIG9kZXIgd2FyIGVzIGRlcmVpbnN0IDopKQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gbWVpbmUgRmFyYmUhISEgR1JVRU4hCltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gbm9lIGljaCB0cmFnZSBzaWUuLi4KW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSByZW5vdmllcmVuLi4uIG5vZS4gbmljaHQsIGRhc3MgaWNoIHd1ZXNzdGUgOy0pCltELWNoYXQ6TmltdWVAQXZhbG9uXSBLYW5uIGljaCBiZXN0YWV0aWdlbiwgYmVpIGlociB3aXJkIGlyZ2VuZHdhbm4gYWxsZXMKYnVudAo6KQpbRC1jaGF0OkhhZHJhQE1vcmdlbkdyYXVlbl0gcmVub3ZpZXJzdCBkdSBkaWUgamVhbnMgbWFsIGlyZ2VuZHdhbm4/CltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbl0gZGllIGhhdCBub2NoIGtlaW4gbG9jaCEKW0QtY2hhdDpTZWxlbmFAQXZhbG9uXSBobW1tIG1hbCBzY2hhdW4uLi53ZW5uIGRpZSB0YXBldGUgZGFubiBpcmdlbmR3YW5uCmFiZ2VodAo6KQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gUmVub3ZpZXJzdCBkdSBlcnN0IGJlaSBMb2VjaGVybiA/CltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbl0ganVwLi4uIHdlbm4gZXMgZ2FyIG5pY2h0IG1laHIgYW5kZXJzIGdlaHQgOy0pKQpbRC1jaGF0OkhhZHJhQE1vcmdlbkdyYXVlbl0gb2RlciBtYWNoc3QgZHUgZGlyZWt0IGFicmlzc3NhbmllcnVuZwpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gVW5kIGJ1bnRlIFNvY2tlbiA6KQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW4gc29sbHRlIHZpZWxsZWljaHQgb2huZSBob3NlbiBnZWhlbi4uLl0KW0QtY2hhdDpOaW11ZUBBdmFsb25dIEhhYiBpY2ggYW4KW0QtY2hhdDpOaW11ZUBBdmFsb25dIEFyZGFuYSwgdHUgZXMgbmljaHQhCltELWNoYXQ6SGFkcmFATW9yZ2VuR3JhdWVuXSB0dSB1bnMgZGFzIG5pY2h0IGFuIGFyZGFuYQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW5dIGJ1bnRlIHNvY2tlbj8gd2FhYWFhYWFhYWFhYWFhYWFhYWgKW0QtY2hhdDpTZWxlbmFAQXZhbG9uIHVlYmVybGVndCwgb2Igc2llIG1vcmdlbiB2aWVsbGVpY2h0IG1hbCBlaW5lbiBSb2NrCmFuemllaHQuXQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW4gbWFjayBSb2Vja2UuIDopXQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW5dIHVwcwpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIGljaCBmYWhyIG1vcmdlbiB6dSBtZWluZXIgRnJldW5kaW4KW0QtY2hhdDpOaW11ZUBBdmFsb25dIE5FSU4hIFNFTEVOQSwgTklDSFQhISEKW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSBtYWcgd2FyIHdvaGwgZGFzIHdvcnQKW0QtY2hhdDpTZWxlbmFAQXZhbG9uXSB3aWVvcyBuaWNodCA/IGhhc3QgZHUgYW5nc3QsIGRhc3MgaWNoIGRpY2ggYXVzc3RlY2hlID8KOikKW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSB3YXMgaGVpc3N0IGhpZXI6IG5laW4gdW5kIG5pY2h0PwpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gOiBob2ZmdCwgZGFzcyBpaHIgQmVzdWNoIG1vcmdlbiBrZWluZW4gUm9jayBhbmhhdC4KW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuIG5pY2t0IFNlbGVuYSB6dS5dCltELWNoYXQ6SGFkcmFATW9yZ2VuR3JhdWVuXSB3YXJ1bSwgbWdhc3QgZHUga2VpbmUgYmVzdWNoZXIgbWl0IHJvY2s/CltELWNoYXQ6U2VsZW5hQEF2YWxvbiBzaW5ndDogTG9hc3MgRGljaCB1ZWJlcnJycm9hc2NoZWVlZWVlbiA6KV0KW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSBzY2hvdHRlbj8KW0QtY2hhdDpOaW11ZUBBdmFsb25dIEZyYXVlbiBzY2hvbi4uLmFiZXIgbWVpbiBMaWVic3RlciBrb21tdCBtb3JnZW4genUgbWlyLAp1bmQKU2Nob3R0ZSBpcyBlciBuaWNodCwgZ2xhdWIgaWNoLgpbRC1jaGF0OkhhZHJhQE1vcmdlbkdyYXVlbl0gZHUgYmlzdCBhYmVyIHplaW1saWNoIGRpc2tyaW1pbmllcmVuZC4gdmllbGxlaWNodAp3dWVyZGUgaWhtIGVpbiBtaW5pIHN0ZWhlbj8KW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSB1bmQgd2VubiBkdSBkaWNoIGlycnN0PwpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gcGVjaCwgZGVuayBpY2guCltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbiBuaWNrdCBIYWRyYSBoZWZ0aWcgenUuXQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gS2FubiBzZWluLCBpY2gga2FubiBpaG0gamEgbW9yZ2VuIG1hbCBlaW5lbiBNaW5pCmFuemllaGVuLi4uCltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbl0gZWluIHNjaG9lbmVyIG1hbm4gaW4gbWluaT8gaG1tLi4uCltELWNoYXQ6SGFkcmFATW9yZ2VuR3JhdWVuXSBlaW5lbiBzY2hvZW5lbiBtYW5uIGthbm4gbmljaHRzIGVudHN0ZWxsZW4KW0QtY2hhdDpTZWxlbmFAQXZhbG9uXSBhdWphLCBrYW5uIGljaCBkYSB6dXNjaGF1biA/IHdvIHdvaG5zdCBkdSBnbGVpY2gKbm9jaG1hbAo/CltELWNoYXQ6TmltdWVAQXZhbG9uXSBTY2hvZW4/IE5hamEuLi46KSkpIERvY2gsIGljaCBmaW5kIGlobiBzY2hvZW4uLi5vaG5lCk1JbmkKOikKW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSA6KSkKW0QtY2hhdDpOaW11ZUBBdmFsb25dIE51ciBkYXNzIHNjaG9lbmUgTWFlbm5lciBzZWx0ZW4gc2luZCwgZGVuayBpY2guIERpZQptZWlzdGVuIHNpbmQgbmFlbWxpY2ggaXJnZW5kd2llIGVudHN0ZWxsdCA6KQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW4gc2luZ3Q6IER1IGhhc3QgZXMgbnVyIG5vY2ggbmljaHQgcHJvYmllcnQuLi5dCltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbl0gZW50c3RlbGx0Pz8hIQpbRC1jaGF0OkhhZHJhQE1vcmdlbkdyYXVlbl0gZW50c3RlbGx0PwpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gU2VsZW5hLCBpY2ggd29obiBpbiBQb3RzZGFtLi4ua2FubnN0IGdlcm4ga29tbWVuIDopCltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbl0gaW53aWVmZXJuPwpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIG9oIGljaCBmYWhyIG1vcmdlbiBuYWNoIGJlcmxpbi4uLgpbRC1jaGF0OkhhZHJhQE1vcmdlbkdyYXVlbl0gdW5kIHdhcnVtPyA6KQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gTmFqYS4uLmplZGVyIGF1ZiBzZWluZSBXZWlzZSAuKQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW5dIDopKSB1bmQgZGllIGRhbWVuLCBzaW5kIGRpZSBhbGxlIHNjaG9lbj8KW0QtY2hhdDpIYWRyYUBNb3JnZW5HcmF1ZW5dIG5lIG5lIHNvIGJpbGxpZyBrb21tc3QgZHUgamV0enQgbmljaHQgZGF2b24KW0QtY2hhdDpOaW11ZUBBdmFsb25dIERhcyBpbnRlcmVzc2llcnQgbWljaCBuaWNodCBzbyBicmVubmVuZCA6KQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gSWNoIHN0ZWggbWVociBhdWYgTWFlbm5lciA6KQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW5dIGhtbSwgdmVyc3RhZW5kbGljaCwgenVuYWVjaHN0Li4uCltELWNoYXQ6TmltdWVAQXZhbG9uXSBKYT8KW0QtY2hhdDpBcnRoYXhAVU5JdG9waWFdIER1IHN0ZWh0cyBhdWYgaWhuZW4/IFNpbmQgd2lyIFRlcHBpY2hlPwpbRC1jaGF0OkhhZHJhQE1vcmdlbkdyYXVlbl0gdm9yZGVyZ3J1ZW5kaWcsIGphCltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbl0gYWJlciBkZW5ub2NoIGRpc2t1c3Npb25zd3VlcmRpZyA7LSkKW0QtY2hhdDpTZWxlbmFAQXZhbG9uXSBlcyBnaWJ0IGF1Y2ggc2Nob2VuZSBUZXBwaWNoZSA6KQpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIEhhdXB0c2FjaGUgc2llIGhhbHRlbiBkaWUgS2xhcHBlLi4uCltELWNoYXQ6SGFkcmFATW9yZ2VuR3JhdWVuIGdyaW5zdCBhcmRhbmEgYW5dCltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbiBzY2hyZWl0OiBNSVRMT0dHRU4hXQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gQXJ0aGF4LCBMaWVibGluZy4uLmljaCBiZWhlcnJzY2hlIGRpZSBkZXV0c2NoZQpHcmFtbWF0aWsKZWluIHdlbmlnIHVuZCBkZW5rZSwgZGFzcyBEdSBmYWxzY2ggaW50ZXJwcmV0aWVydCBoYXN0LCBpbiBkaWVzZW0gRmFsbCBoYXR0ZQppY2gKZGVuIERhdGl2IHZlcndlbmRldC4KW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSBlcyBsZWJlIGRlbSBkYXRpdiEKW0QtY2hhdDpOaW11ZUBBdmFsb25dIE1hbiBnZXdvZWhudCBzaWNoIGFuIGFsbGVtLCBzZWxic3QgYW0gRGF0aXYuCltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gYW0gYmVzdGVuIHNpbmQgaW1tZXIgbm9jaCBkaWUgUGVyc2VyIDopKSkKW0QtY2hhdDpOaW11ZUBBdmFsb25dIEljaCBtZWludGUgdWVicmlnZW5zIEhhZXR0ZSwgbmljaHQgaGF0dGUsIGZhZWxsdCBtaXIgZGEKZ3JhZCBhdWYuCltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbl0gcGVyc2Vya2F0emVuIQpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIG9iIG51biBUZXBwaWNoIG9kZXIgbmljaHQgOikpKQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gUGVyc2VyPyBJY2ggYmV2b3J6dWdlIGdsYXViIHVjaCBrZWluZSBSYXNzZSA6KQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW5dIGtlaW5lIHRlcHBpY2hyYXNzZT8KW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuIHN0ZWh0IGF1ZiBNYWltaWV5ZW4uXQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gSWhyIHNwcmVjaHQgdm9uIFRlcHBpY2hlbj8gT2ggOikKW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSBhcmdsLi4gZGV1dHNjaGUgdGFzdGF0dXIgOygKW0QtY2hhdDpTZWxlbmFAQXZhbG9uXSBFbGZlbnRlcHBpY2gsIFp3ZXJnZW50ZXBwaWNoIDopCltELWNoYXQ6TmltdWVAQXZhbG9uXSBFWFhFTnRlcHBpY2gKW0QtY2hhdDpIYWRyYUBNb3JnZW5HcmF1ZW5dIGRhaGludGVyIHZlcmJpcmd0IHNpY2ggZGllIGVpbnN0ZWxsdW5nIG1hZW5uZXIKYWxzCmZ1c3NhYnRyZXRlciB6dSBtaXNzYnJhdWNoZW4KW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuIE1VU1MgaGFkcmEgcmVjaHQgZ2ViZW4uXQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gSkFBQSEgR3V0ZSBJZGVlLCB2b24gd2VtIHdhciBkaWU/IEtyaWVnc3QgZWluZW4gT3JkZW4hCltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gSGFkcmEsIHRvbGxlIElkZWUuIHdlcmQgaWNoIG5hY2hoZXIgbWFsIGJlaSBtZWluZW0KYXVzcHJvYmllcmVuLi4uCltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbiBtdXN0ZXJ0IE5pbXVlIGVpbmRyaW5nbGljaC5dCltELWNoYXQ6TmltdWVAQXZhbG9uXSBBbHNvLCBtb20sIGljaCBicmF1Y2ggbm9jaCBlaW5lbiBpbSBCYWQsIGVpbmVuIGltClNjaGFsZnppbW1lci4uLmhtCltELWNoYXQ6SGFkcmFATW9yZ2VuR3JhdWVuIGlzdCBqZXR6dCBkb2NoIGV0d2FzIGlycml0aWVydF0KW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSB1bmQgc2VsZW5hIGRhenUhCltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gZWdhbCBvYiBUZXBwaWNoIG9kZXIgRnVzc2FidHJldGVyLCBtYW4gbXVzcyBNYWVtbWVyCnZvbgpvYmVuIGhlcmFiIGJlaGFuZGVsbi4uLgpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gTWFlbm5lciEKW0QtY2hhdDpTZWxlbmFAQXZhbG9uXSBzb25zdCB3ZXJkZW4gc2llIHVlYmVybXVldGlnIHVuZCBtdWNrZW4gYXVmLi4uCltELWNoYXQ6SGFkcmFATW9yZ2VuR3JhdWVuXSBwZmZ0CltELWNoYXQ6QXJ0aGF4QFVOSXRvcGlhXSBFcnN0IG1hbCBzbyBncm9zcyBzZWluLCBkYXNzIGRhcyBnZWh0IQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gSkFBQUFBQUFBQUFBQUFBQUFBQUFBQSEhISEhISEhISEhISEhISEhISEhISEhIQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gU2VsZW5hIGhhdCBkaWUgR3JvZXNzZS4uLgpbRC1jaGF0OkhhZHJhQE1vcmdlbkdyYXVlbiB1ZWJlcmxlZ3Qgb2IgamV0enQgZGVyIGFsdGUgc3ByY3VoIG1pdCBkZW0gaGVyZAp1bmQKZGVtIHNjaGxhZnppbW1lciBrb21tZW4gc29sbHRlXQpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIG9oIGljaCBiaW4gdWViZXIgMS45MCA6KQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW5dIEFydGhyYXg6IGdyaW5zCltELWNoYXQ6U2VsZW5hQEF2YWxvbiB1ZWJlcmxlZ3Q6IG9wYiBpaHJlIEdld2l0dGVyd29sa2UgYmlzIGlucyBNb3JnZW5ncmF1ZW4KcmVpY2h0Ll0KW0QtY2hhdDpBcnRoYXhAVU5JdG9waWEgc3RyZWNrdCBzaWNoIHVtIG5vY2ggZWluIHBhYXQgY20gZ3JvZXNzZXIgenUgd2VyZGVuLl0KRGllIHNjaHdhcnplbiBTdGVsbGVuIGFuIGRlbiBHZWJhZXVkZW4gdmVyZmxpZXNzZW4gZWluIGJpc3NjaGVuLi4KW0QtY2hhdDpIYWRyYUBNb3JnZW5HcmF1ZW5dIGdhcmFudGllcnQgbmljaHQgOikKW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSB0dXQgc2llIG5pY2h0IQpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIHdpbGxzdCBkdSBlcyBkcmF1ZiBhbmtvbW1lbiBsYXNzZW4gOikpKQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW5dIHdpciBzaW5kIHVuZCBlaW5pZyBoYWRyYSA6KSkKW0QtY2hhdDpIYWRyYUBNb3JnZW5HcmF1ZW5dIGpvIDopCltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbiByb3RmbHQuXQpbRC1jaGF0OkhhZHJhQE1vcmdlbkdyYXVlbl0gYXJhZGFuYSB3aXIgbWljaCBzY2hvbiBzY2h1ZXR6ZW4KW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSBqYSEhCltELWNoYXQ6SGFkcmFATW9yZ2VuR3JhdWVuIHNjaGF1dCBhcmRhbmEgYW4gdW5kIGZyYWd0OiBvZGVyP10KW0QtY2hhdDpOaW11ZUBBdmFsb25dIEljaCBiaW4gbnVyIDE3MzUgbW0gZ3Jvc3MgOigKW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSBpY2ggbmVubmUgZGljaCBicnVkZXIgaW4gZGVyIG5vdCwgYW50d29ydApnZW51bmc/CltELWNoYXQ6TmltdWVAQXZhbG9uXSBVbmQgc2Nob2VuIDopCltELWNoYXQ6TmltdWVAQXZhbG9uXSAqaHVlc3RlbCoKW0QtY2hhdDpTZWxlbmFAQXZhbG9uXSBOaW11ZS4gVHJvZXN0LCBlcyB6YWVobHQgZGllIFdBSFJFIEdyb2Vzc2UgOikKW0QtY2hhdDpOaW11ZUBBdmFsb25dICplcnJvZXQqCltELWNoYXQ6SGFkcmFATW9yZ2VuR3JhdWVuXSBhbHNvIGljaCBiaW4gbWl0dGVsZ3Jvc3MgKGZ1ZXIgZWluZW4gendlcmcpCltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbl0gc29ycnksIHdpZSB3YXIgZGllIHNlY2hzdGUgc3RlbGxlIG5hY2ggZGVtCmtvbW1hLi4/CjE3MzU/CltELWNoYXQ6SGFkcmFATW9yZ2VuR3JhdWVuXSBkYXMgaXN0IGRhbm4gZGVyIHVudGVyc2NoaWVkIHp3LiBncm9lc3NlIHVuZApsYWVuZ2UKW0QtY2hhdDpOaW11ZUBBdmFsb25dIERhIHdhciBrZWluIEtvbW1hLCBkYXMgaXN0IG5lIGdhbnplIFphaGw6IDE3MzUgbW0KW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuIHN0dWRpZXJ0IG1hdGhlLiA7LSkpXQpbRC1jaGF0Ok5pbXVlQEF2YWxvbiBhdWNoIDopXQpbRC1jaGF0OlNlbGVuYUBBdmFsb24gc3R1Z2llcnQgUGh5c2lrLl0KW0QtY2hhdDpTZWxlbmFAQXZhbG9uXSBuYWphIGlociB3aXN0IHNjaG9uIDopCltELWNoYXQ6QXJ0aGF4QFVOSXRvcGlhXSBQaHlzaWs/Pz8/Pz8/CltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbl0gYXJnLi4uIHBoenNpaz8KW0QtY2hhdDpTZWxlbmFAQXZhbG9uIHRpcHB0IG51ciBub2NoIE1pc3QuXQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gTWF0aGUgbWFjaHQgU3Bhc3MgLikKW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuIHRyaXR0IGVpbiBaIV0KW0QtY2hhdDpTZWxlbmFAQXZhbG9uIHNjaG1laXNzdCBkaWUgVGFzdGF0dXIgYXVzIGRlbSBGZW5zdGVyLl0KW0QtY2hhdDpIYWRyYUBNb3JnZW5HcmF1ZW4gc2NoYXV0IG5pbXVlIGlycml0aWVydCBhbl0KW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuIHNjaG1laXNzdCBtaXQuXQpbRC1jaGF0Ok5pbXVlQEF2YWxvbiBzdHJlaWNoZWx0IHZvcnNpY2h0c2hhbGJlciBpaHJlIFRhc3RhdHVyLl0KW0QtY2hhdDpTZWxlbmFAQXZhbG9uIG5hamEgaWNoIHNpdHogamEgbmljaHQgYW4gbWVpbmVtIGNvbXB1dGVyLi4uXQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW5dIG5peCBzdHJlaWNoZWxuLi4uIGVpbmUgaGFydGUgaGFuZCEKW0QtY2hhdDpBcnRoYXhAVU5JdG9waWFdIEtvbGxlZ2luPyA6LSkKW0QtY2hhdDpOaW11ZUBBdmFsb24gdmVyc3RlaHQgbmljaHQsIGRhc3MgbWFuIHdhcyBnZWdlbiBNYXRoZSBoYWJlbiBrYW5uLi4uXQpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIGR1bW1lcndlaXNlIGlzdCBoaWVyIGNpbXB1dGVyIHVuZCB0YXN0YXR1ciBkYXNzZWxiZS4uLgpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW4gbmlja3QgZGllc21hbCBOaW11ZSB6dS5dCltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gQ09NUFVURVIgISBWZXJkYW1taWNoIDopKSkKW0QtY2hhdDpOaW11ZUBBdmFsb25dIEljaCBoYWIgYXVjaCBtYWwgUGh5c2lrIGdlbWFjaHQsIGFlaG0sIHN0dWRpZXJ0Li4uMwpzaWx2ZXN0ZXIuLi4KW0QtY2hhdDpOaW11ZUBBdmFsb25dIGFlaG0uLi5zZW1lc3Rlcgo+IFtELWNoYXQ6UmVpbmVsZGVATW9yZ2VuR3JhdWVuXSBpY2ggaGFiIG5peCBnZWdlbiBtYXRoZSwgYWJlciBhdWNoIG5peCBmdWVyCm1hdGhlCltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbl0gbmljaHQgZ2VmYWxsZW4/CltELWNoYXQ6U2VsZW5hQEF2YWxvbl0gbmFqYSBTaWx2ZXN0ZXIgc3R1ZGllciBpY2ggbmljaHQsIGRhIGZlaWVyIGljaAptZWlzdGVucy4uLi4KW0QtY2hhdDpOaW11ZUBBdmFsb25dIFBoeXNpayBpcyBhbnN0cmVuZ2VuZC4uLgo+IFtELWNoYXQ6UmVpbmVsZGVATW9yZ2VuR3JhdWVuXSBtb20gMyBzaWx2ZXJzdGVyIHNpbmQgNiBzZW1lc3RlciA6KQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gVW5kIFQtUGh5c2lrIGlzIFNjaGlrYW5lCltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbl0gcGh5c2lrIGlzdC4uLiBhYmFydGlnIDopKSAqbGFlY2hlbCBzdWVzcyoKW0QtY2hhdDpTZWxlbmFAQXZhbG9uIGhhdCBpbiA1IFdvY2hlbiBpaHJlIGVyc3RlIFQtUGh5c2lrIFZvcmxlc3VuZy5dCltELWNoYXQ6TmltdWVAQXZhbG9uXSBVbmQgc2NoaWthbmllcmVuIGxhc3MgaWNoIG1pY2ggbmljaHQuCj4gW0QtY2hhdDpSZWluZWxkZUBNb3JnZW5HcmF1ZW5dIG1hdGhlLCBwaHlzaWsgLSB3byBpc3QgZGVyIHVudGVyc2NoaWVkPwpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW4gZ3JhdHVsaWVydC5dCltELWNoYXQ6TmltdWVAQXZhbG9uXSBCRUVJTEVJRCEKW0QtY2hhdDpBcnRoYXhAVU5JdG9waWFdIE1hdGhlIGlzcyBsYW5nd2VpbGlHIQpbRC1jaGF0OlNlbGVuYUBBdmFsb24gcGx1c3RlcnQgc2ljaCBzdG9seiBhdWYuXQpbRC1jaGF0Ok5pbXVlQEF2YWxvbl0gQW5mYWVuZ2VyaW4hCj4gW0QtY2hhdDpSZWluZWxkZUBNb3JnZW5HcmF1ZW5dIGljaCBmcmFndGUgd28gZGVyIHVudGVyc2NoaWVkIGlzdCA6KQpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIGdlbmF1LCBwaHlzaWsgaXN0IHZpZWwgaW50ZXJlc3NhbnRlci4uLgpbRC1jaGF0OkFydGhheEBVTkl0b3BpYV0gV2VubiBtYW4ga2VpbmUga29ua3JldGUgQW53ZW5kdW5nIGhhdCEKW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuXSBtYXRoZSBpc3QgdGVpbHdlaXNlIGx1c3RpZyAqendpbmtlcioKW0QtY2hhdDpTZWxlbmFAQXZhbG9uXSBkaWUgaGF0IFdpbmRvd3MgYXVjaCBuaWNodCA6KSkpKQpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIGRpZSBrb25rcmV0ZSBBbndlbmR1bmcgOy0pCltELWNoYXQ6TmltdWVAQXZhbG9uXSBFcyByZWljaHQgZG9jaCwgZGFzcyBpaHIga29taXNjaGVuIFBoeXNpa2VyIGRhcwphbndlbmRldC4uLm9obmUgdW5zIHNlaWQgaWhyIGRvY2ggYXVmZ2VzY2htaXNzZW4uLi4KW0QtY2hhdDpBcmRhbmFATW9yZ2VuR3JhdWVuIGZpbmRldCBOaW11ZSB6dW5laG1lbmQgc3ltcGF0aGlzY2hlci5dCltELWNoYXQ6TmltdWVAQXZhbG9uXSBEYXMgZnJldXQgbWljaC4KW0QtY2hhdDpOaW11ZUBBdmFsb25dIEFiZXIgZGEgaWNoIGphIHNlaHIgdmllbHNlaXRpZyBiaW4sIGljaCBzdHVkaWVyZSBhdWNoCm5vY2gKZWluIHdlbmlnIFNwb3J0IDopCltELWNoYXQ6QXJkYW5hQE1vcmdlbkdyYXVlbl0gb2J3b2hsLi4uCltELWNoYXQ6U2VsZW5hQEF2YWxvbiBnZWh0IGpldHogd29obCBpbnMgQmV0dC4gKFVuZCB6aWVoenQgbW9yZ2VuIGVpbmVuIFJvY2sKYW4uXQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW5dIG5vY2htYWwgd3VlcmRlIGljaCBlcyB3b2hsIG5pY2h0IHN0dWRpZXJlbi4uLgpbRC1jaGF0OkhhZHJhQE1vcmdlbkdyYXVlbl0gZ3V0ZSBpZGVlIC0gZGFzIG1pdCBkZW0gcm9jawpbRC1jaGF0OlF1aWxsaWFuQEZpbmFsRnJvbnRpZXJdIGh1aHUgbXVkLWRldXRzY2hsYW5kIDotKQpbRC1jaGF0OlNlbGVuYUBBdmFsb25dIC16ICspICpncmlucyoKW0QtY2hhdDpTZWxlbmFAQXZhbG9uXSBodWh1IFF1aWxsaWFuICpmaW5nZXIgdmVya25vdCoKW0QtY2hhdDpOaW11ZUBBdmFsb24gZ2VodCBqZXR6dCBhdWNoIGlucyBCZXR0LiBHdXRlIE5hY2h0Ll0KW0QtY2hhdDpIYWRyYUBNb3JnZW5HcmF1ZW4gd2lua3RdCltELWNoYXQ6U2VsZW5hQEF2YWxvbiB3dWVuc2NodCBhbGxlbiBlaW5lIGd1dGUgTmFjaHQuXQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW5dIGdydXNzIG5hY2ggYXZhbG9uIHVuZCBndXRlIG5hY2h0CltELWNoYXQ6QXJ0aGF4QFVOSXRvcGlhIHd1ZW5zY2h0IGRpZSBTZWxlbmEgYXVjaCFdCltELWNoYXQ6TmltdWVAQXZhbG9uXSBXYXIgbmV0dCBtaXQgZXVjaCB1ZWJlciByb3NhIEhlbWRlbiwgbGlhbCBQdWxsb3ZlciwKYnVudGUKSG9zZW4gdW5kIFNvY2tlbiwgTWF0aGUsIFBoeXNpaywgVGVwcGljaGUsIEZ1c3NhYnRyZXRlciwgTWFlbm5lciwgUm9lY2tlCldpbmRvd3MKenUgdW50ZXJoYWx0ZW4KW0QtY2hhdDpTZWxlbmFAQXZhbG9uXSBOYWNodCBpaHIgZGEgYWxsZSBpbiBkZW0gZ3JhdWVuIEthc3RlbiBkcmluIDopCltELWNoYXQ6SGFkcmFATW9yZ2VuR3JhdWVuIHdpbmt0IGF1cyBkZW0gZ3JhdWVuIGthc3RlbiByYXVzXQpbRC1jaGF0OkFyZGFuYUBNb3JnZW5HcmF1ZW5dIHNlbGJlciBncmF1ZXIga2FzdGVuIDstKQoKCnVuZCBkYSB2ZXJsaWVzc2VuIHdpciB1bnNlcmUgdGFwZmVyZW4gcmVja2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYWphLCBkaWUgR2Flc3RlLi4uIChBcmRhbmEsIDE3LiBTZXAgMTk5NSwgMDQ6NDA6MDIpOgpHYXN0MiBpc3QgZWluZ2Vsb2dndCwKdW5kIHp3YXIgdm9uOiBhbmRhcmEuY3NuLnR1LWNoZW1uaXR6LmRlICgxMzQuMTA5LjEwOC4zNSkgW0NoZW1uaXR6XS4KSWRsZS1aZWl0OiAwNToxNToxOApWb2xsZXIgTmFtZTogR2FzdDIKUmFzc2U6IDxrZWluZT4sICAgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogMDU6MTE6NTIgICBTcGllbGVybGV2ZWw6IDEKRS1NYWlsLUFkcmVzc2U6CgpJZGxlemVpdCBncm9lc3NlciBBbHRlci4uLiA/ICpTVEFVTioKRGVyIFJlY2huZXJuYW1lIGtvbW10IG1pciBpcmdlbmR3aWUgYmVrYW5udCB2b3IuLi4gOy0pCgpFaW4ga2ljaGVybmRlciBBcmRhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJlc3VjaCB2b24gZHJ1ZWJlbiA6KSAoUmVpbmVsZGUsIDE3LiBTZXAgMTk5NSwgMTI6NDQ6MTcpOgpHYXN0MSBpc3QgZWluZ2Vsb2dndCwKdW5kIHp3YXIgdm9uOiA0MHgyNS1MYW5kICgqd2FlbHoqKSAoQlRYKS4KCm5ldHRlIHVtc2NocmVpYnVuZyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGVzdHJvZXJjaGVuISAoSGFyLCAxOC4gU2VwIDE5OTUsIDEwOjQyOjUyKToKSWNoIGhhYmUgZ2VyYWRlIGRhcyBBbGstVGVzdHJvZXJjaGVuIGdla2F1ZnQgdW5kIG11c3Mgc2FnZW4gImJsYXNlIFJvaHIiCmZpbmRlIGljaCByZWNodCBkb3BwZWxkZXV0aWcuLi4ucmVnZW5lcmllcmUgUm9ociB3YWVyZSBhbGxlcmRpbmdzIGluIFJMIGF1Y2gKbmljaHQgZ2FueiBudXR6bG9zICA7KQoKSGFyIChtaXQgc2NobXV0emlnZW4gZ0dlZGFua2VuISkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCB2ZXJsYW5nIGphIG5pY2h0IHZpZWwuLi4gKEx1cHVzLCAxOC4gU2VwIDE5OTUsIDIyOjQ1OjQ1KToKSGkhCgpEYW1pdCBhbGxlIHdpc3NlbiBkYXNzIGljaCB3aWVkZXIgZGEgYmluIGhhdSBpY2ggZG9jaCBnbGVpY2ggbWFsIG5lbiBBcnR6aWtlbApoaWVyIHJlaW4sIGluIGRlbSBpY2ggbWVpbmUgbmV1ZXN0ZSBFcmZhaHJ1bmcgemVpZ2U6CgplYmVuIGdldGlwcHQ6IGVyd2FydGUgbmljaHRzCgpUamEsIG1hbiB3aXJkIGJlc2NoZWlkZW4uLi4uCgpncmluc2VuZCwgTHVwdXMsIGRlciBTcGllbGVyIG1pdCBwbGFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIb2VmbGljaCwgaG9lZmxpY2ghIChBbGluZSwgMTkuIFNlcCAxOTk1LCAxMjozNDowMyk6Ck5ldWxpY2ggaW0gTUc6CgpEZXIgTWFudGEtRmFocmVyIGZyYWd0OiBFeSBNYW5uIEV5LCBIYXN0IG1pciBtYWwgbmUgTXVlbnplLCBFeT8KZ2liIG11ZW56ZSBhbiBmYWhyZXIKRHUgZ2lic3QgZGVtIE5lYW5kZXJ0YWxlciBkaWUgTXVlbnplLgpEZXIgTWFudGEtRmFocmVyIHNhZ3Q6IEV5IHdhdHQgZGVubiwgbnVyIGVpbmUgTXVlbnplID8KRGVyIE1hbnRhLUZhaHJlciBiZWRhbmt0IHNpY2ggZnJldW5kbGljaCBmdWVyIGRpZSBtaWxkZSBHYWJlLgoKQWxpbmUgZnJldXQgc2ljaCB1ZWJlciBkaWUgZ3V0ZSBFcnppZWh1bmcgZGVyIE5QQ3M6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU29uZGVyYmFyLi4uIChZZW5kaSwgMTkuIFNlcCAxOTk1LCAxMzozNzo1NSk6CgpFYmVuIGluIGRlciBHaWxkZSBwYXNzaWVydDoKCkplbWFuZCBydWZ0OiBNYWNodCBLaG9ybmUgenVtIEdvdHQgIC8vTWFuIGJlYWNodGUgZGllIGZlaGxlbmRlIEludGVycHVua3Rpb24KS2hvcm5lIGJldHJpdHQgZGllc2UgV2VsdC4KS2hvcm5lIHppZWh0IGVpbmVuIHNjaHdhcnplbiBHdWVydGVsIGF1cy4KS2hvcm5lIHppZWh0IGVpbmVuIEdpIGF1cy4KS2hvcm5lIHNjaHdpbmd0IGRpZSBQZWl0c2NoZSB1bmQgZmFlaHJ0IG1pdCBzZWluZW0gU3RyZWl0d2FnZW4gbmFjaCBIYXVzZS4KS2hvcm5lIHppZWh0IGVpbmVuIEdpIGFuLgpLaG9ybmUgemllaHQgZWluZW4gc2Nod2FyemVuIEd1ZXJ0ZWwgYW4uCgoKRGEgaGF0IGplbWFuZCBkaWUgemVpdGxpY2hlIEFiZm9sZ2Ugd29obCBub2NoIG5pY2h0IHNvIHJhdXMuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0aW1pbmcgKE11cGZlbCwgMTkuIFNlcCAxOTk1LCAxOTo1NToxMSk6CkNhcmFkaHJhcyBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgQ2FyYWRocmFzLgpDYXJhZGhyYXMgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkVpbiBLbGl0emVsZHJvbSBrb21tdCBhbi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdGltaW5nIChKYWYsIDE5LiBTZXAgMTk5NSwgMTk6NTc6NTcpOgojISBybj1NdXBmZWwgcnQ9ODExNTMzMzExCgpOYWphLCBlaGVyIGhhZXR0ZSBpY2ggbWljaCBhbiBkZXMgRHJvbXMgU3RlbGxlICpodWVzdGVsKgphdWNoIG5pY2h0IHJhdXNnZXRyYXV0LgoKSmFmLiBHcmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZ2llci4uLiAoQmVuZGVpZ2lkLCAxOS4gU2VwIDE5OTUsIDIxOjA4OjU3KToKaGVyZSBtYWtlClVwZGF0aW5nIC9kL3BvbGFyL2JlbmRlaWdpZC9yb29tcy9uZXNrYXlhL25lc2theWE0Li4uCgo+RHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KClVwcHMuLi4gU292aWVsIE1hY2h0IGhhYmVuIHdpcj8KCloncGFyIFNlcnZ1LAogICAgICAgICAgICBCZW5kZWlnaWQsIG5vY2ggaW1tZXIgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5vYm9keSdzIFBlcmZlY3QuLi4gKERlciwgMjAuIFNlcCAxOTk1LCAwNDoyMTo0MCk6CgpIYWIgaWNoIGRvY2ggbmUgTWFpbCBiZWtvbW1lbi4uLjoKCkFic2VuZGVyOiAoTmFtZSBlbnRmZXJudCkKQW46IFphcmRvegpDYzogS29taXNjaCwgRGVyLCBDaGFvc3NjaGFkZW4sIFNhY2h0LCBNaXIsIERpZSwgTmFlY2hzdGVuLCBDaGFvc2JhZWxsZSwKU2luZCwKQmxpdHplLCBVbmQsIFNjaG9pbiwgRGVyLCBEcml0dGUsIElzdCwgTmVuLCBXYXNzZXJzdHJhaGwKRGF0dW06IERvbiwgMTcuIEF1ZyAxOTk1LCAyMzo1OToxOQpUaXRlbDogKioKCgoKKnJ1bWt1Z2VsKgpEZXIgKEphd29sbCwgZ2VuYXUgREVSISkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRoZW9yaWUgKEN1Y2h1bGxpbiwgMjAuIFNlcCAxOTk1LCAxOTo1NTowMik6CgoiTXVkZGVyIHNpbmQgc2NoaXpvcGhyZW5pZWdlZmFlaHJkZXQuIgpHZWdlbnN0aW1tZW4/IEphZj8gVG9zcz8KCk5pYy4uLiBhZWguLi4gQ3VjaC4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVGhlb3JpZSAoSmFmLCAyMC4gU2VwIDE5OTUsIDE5OjU2OjE2KToKIyEgcm49Q3VjaHVsbGluIHJ0PTgxMTYxOTcwMgoKQWxzbyBpY2ggYmluIG5pY2h0IHNjaGl6by4uLiBGeXQgYXVjaCBuaWNodC4uLiB2aWVsbGVpY2h0IGRlciBLZXJsCmF1ZiBkZXIgYW5kZXJlbiBTZWl0ZSBkZXMgQmlsZHNjaGlybXMgOikKCkphZi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClR5cGlzY2ggU3RhbW10aXNjaC1JbnNpZGVyLVdpc3Nlbi4uLiAoQ3VjaHVsbGluLCAyMC4gU2VwIDE5OTUsIDIyOjAxOjU5KToKCgoKW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIEVzIGdlZWVlZWh0IC5fKQpbQWxsZ2VtZWluOkNhdHdlYXpsZSBmcmV1dCBzaWNoIG5lbiBBc3QuXQpbQWxsZ2VtZWluOldhcmdvbl0gUHNzdCEKW0FsbGdlbWVpbjpSeW5lIGdyaW5zdF0KW0FsbGdlbWVpbjpNdXBmZWwgbmltbXQgZGVuIEFzdF0KW0FsbGdlbWVpbjpDdWNodWxsaW4ga2ljaGVydC5dCltBbGxnZW1laW46RmxvaCBncmF0dWxpZXJ0IENhdHdhZXplbGVdCltBbGxnZW1laW46V2FyZ29uIGdyaW5zdCBkYWVtb25pc2NoLl0KW0FsbGdlbWVpbjpDYXR3ZWF6bGUgcnVmdCBOaWVkZXIgbWl0IGRlbiBLb21wbGV0dGxvZXN1bmdlbiEhISEgOildCltBbGxnZW1laW46Q3VjaHVsbGluIGdyaW5zdCBSeW5lIGFuLl0KW0FsbGdlbWVpbjpUb2V0ZXJdIHdhcyBnZWh0IGhpZXIgdm9yPwpbQWxsZ2VtZWluOkd1eWJydXNoXSBsaWVzIHplaXR1bmcsIFRvZXRlcgpbQWxsZ2VtZWluOlJvY2h1c10gd2VubiBoaWVyIGplbWFuZCBkYWVtb25pc2NoIGdyaW5zdCBkYW5uIElDSCEgOikKW0FsbGdlbWVpbjpTY2hydW1wZmkgZ3JpbnN0IHRvZXRlciBhbl0KW0FsbGdlbWVpbjpDYXR3ZWF6bGUgZ3JpbnN0IFJ5bmUgYW4uXQpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gd2VubiBqZW1hbmQgZGFlbW9uaXNjaCBncmluc3QgREFOTiBNRUlOIE1BTk4gOy0pCltBbGxnZW1laW46V2FyZ29uIGdyaW5zdCBSb2NodXMgYW4uXQpbQWxsZ2VtZWluOlJ5bmUgZ3JpbnN0IFdhcmdvbiBhbl0KW0FsbGdlbWVpbjpDdWNodWxsaW4gZ3JpbnN0IENhdHdlYXpsZSBhdWNoIG1hbCBhbi5dCltBbGxnZW1laW46Um9jaHVzIHJncmluc3QgYWxsZSBkYWVtb25pc2NoIGFuLl0KW0FsbGdlbWVpbjpBbmFraW5dIGphamEgZGllIE11ZW5zdGVyYW5lciBzYWdlbiBuaXgKW0FsbGdlbWVpbjpDYXR3ZWF6bGUgZ3JpbnN0IFdhcmdvbiB2ZXJzY2h3b2VyZXJpc2NoIGFuLl0KW0FsbGdlbWVpbjpXYXJnb24gbmlja3Qgd2lzc2VuZCB6dXJ1ZWNrLl0KW0FsbGdlbWVpbjpSeW5lIGdyaW5zdCBUb2V0ZXIgd29obHdvbGxlbmQgYW4uXQpbQWxsZ2VtZWluOlNjaHJ1bXBmaSBncmluc3QgbWFsIGFsbGUgbWFnaWVyIGFuXQpbQWxsZ2VtZWluOkNhdHdlYXpsZSBncmluc3QgUm9jaHVzIHdpc3NlbmQgYW4uXQpbQWxsZ2VtZWluOkd1eWJydXNoIGdyaW5zdCBhbiBhbGxlbiB2b3JiZWkuXQpbQWxsZ2VtZWluOkFuYWtpbl0gd2FhYWFhYWgKW0FsbGdlbWVpbjpDdWNodWxsaW4gZ3JpbnN0IGFsbGUgYXVzc2VyIFJ5bmUsIFRvZXRlciwgUm9jaHVzLCBXYXJnb24gdW5kCkNhdHdlYXpsZSBhbi5dCltBbGxnZW1laW46RmxvaCBncmluc3QgdmVybGVnZW4gaW4gZGllIFJ1bmRlXQpbQWxsZ2VtZWluOldpbGxvdyB3dW5kZXJ0IHNpY2ggbnVyIG5vY2hdCltBbGxnZW1laW46R3V5YnJ1c2ggZ3JpbnN0IHNpY2ggbmVuIEtyYW1wZi5dCltBbGxnZW1laW46QmVuZGVpZ2lkIGdyaW5zdCB1bSBkZXMgR3JpbnNlbnMgd2lsbGVuIG1pdF0KW0FsbGdlbWVpbjpDYXR3ZWF6bGUgZ3JpbnN0IGVpZ2VudGxpY2ggaGF1cHRzYWVjaGxpY2ggaHVuZ3JpZyAuLi5dCltBbGxnZW1laW46UnluZSBncmluc3QgV2lsbG93IGhhbHQgYXVjaCBhbi5dCltBbGxnZW1laW46VG9ldGVyIGdyaW5zdCBFaW5lbiBad2VyZ2Vud2FlY2h0ZXIsIERpY2ggZWluZSBTdGVpbmJlaXNzZXIgdW5kCmVpbmUgRmFja2VsIGFuXQpbQWxsZ2VtZWluOkFtYXpvcmEgZ3JpbnN0IGFsbGUgendlaXRpZXMgdW5kIGVpbmVuIGVydGllIGFuXQpbQWxsZ2VtZWluOkZyb3NjaCBSZWluZWxkZSBrYXBpZXJ0IHdpZSBpbW1lciBuaXguXQpbQWxsZ2VtZWluOlF1aWxsaWFuIGlzdCBkYXMgR3JpbmVuIHZlcmdhbmdlbi5dCltBbGxnZW1laW46QW5ha2luIGdyaW5zdCBBbWF6b3JhIGFuXQpbQWxsZ2VtZWluOldhcmdvbiBncmluc3QgSm9mIHVuaWRsZSBhbi5dCltBbGxnZW1laW46R3V5YnJ1c2ggZ3JpbnN0IGRpZSBUeXBvcyBhbi5dCltBbGxnZW1laW46Q3VjaHVsbGluIGdyaW5zdCB1bnNjaHVsZGlnLl0KPiBbQWxsZ2VtZWluOlNjaHJ1bXBmaSBncmluc3QgYmxvZWRdCltBbGxnZW1laW46U251Z2dsZSBncmluc3QgdW53aXNzZW5kXQpbQWxsZ2VtZWluOkd1eWJydXNoIGhhdCB2aWVsIHp1IHR1bi5dCltBbGxnZW1laW46UnluZSBncmluc3Qgc2NodWxkaWcuXQpbQWxsZ2VtZWluOldpbGxvdyBncmluc3QgbWFsIGFtYXpvcmEsIHNjaHJ1bXBmaSwgcnluZSwgY2F0d2llc2VsIHVuZCB0b2V0ZXIKYW4gLSBhdWNoIHdlbm4gZXIgbmljaHRzIHNjaG5hbGx0XQpbQWxsZ2VtZWluOkNhdHdlYXpsZSBncmluc3QgRGljaCB2ZXJ6d2VpZmVsdCBuYWNoIGVpbmVtIE1pdGxvZ2dlciBzdWNoZW5kCmFuLl0KW0FsbGdlbWVpbjpXYXJnb24gZ3JpbnN0IERpY2ggYW4uXQpbQWxsZ2VtZWluOlJ5bmVdIGludGVsbGVrdHVlbGxlciB3aXR6OgpbQWxsZ2VtZWluOlJvY2h1cyBncmluc3QgZ3JpbnNlbmQuXQpbQWxsZ2VtZWluOldpbGxvdyBncmluc3Qgc2VpbiBsb2dmaWxlIGdlcmFkZSBsb2VzY2hlbmRdCltBbGxnZW1laW46U2NocnVtcGZpIGdyaW5zdCBkaWUgTVBBIGFuXQpbQWxsZ2VtZWluOlJ5bmVdIGJvYWgsIGhhYiBpY2ggdmllbGUgZXAKW0FsbGdlbWVpbjpSeW5lXSB2ZXJzdGVodCBrZWluZXIKW0FsbGdlbWVpbjpHdXlicnVzaCBncmluc3QgYmlzIGlobSBkZXIgU2NoYWRlbCBydW50ZXJmYWVsbHQuXQpbQWxsZ2VtZWluOkN1Y2h1bGxpbiBncmluc3QgUnluZSBzZWhyIGJyZWl0IGFuLl0KW0FsbGdlbWVpbjpXYXJnb24gYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uXQpbQWxsZ2VtZWluOkNhdHdlYXpsZSBOb2UsIGFiZXIgYmFsZCA6KV0KW0FsbGdlbWVpbjpSb2NodXNdICpHUk9FSEwqIQpbQWxsZ2VtZWluOkNhdHdlYXpsZSByb3RmbHMuXQpbQWxsZ2VtZWluOkFuYWtpbl0gbnUgc2FjaHQgbWFsIFdBUyEKW0FsbGdlbWVpbjpXaWxsb3cgdmVyc3RlaHQgbnVyIGJhaG5ob2ZdCltBbGxnZW1laW46Um9jaHVzXSB3YXMuCltBbGxnZW1laW46U2NocnVtcGZpIGdyaW5zdCBpaHIgYmllciBhbl0KW0FsbGdlbWVpbjpXaWxsb3ddIFdBUyEKW0FsbGdlbWVpbjpBbmFraW5dIG5laW4gUm9jaHVzIG5pY2h0IHdhcy4gc29uZGVybiBXQVMhCltBbGxnZW1laW46RWxmaWVdIGljaCB2ZXJzdGVoIG51ciBBYmZhaHJ0OikKW0FsbGdlbWVpbjpXaWxsb3cga2ljaGVydF0KW0FsbGdlbWVpbjpBbmFraW4gbmlja3QgV2lsbG93IHp1XQpbQWxsZ2VtZWluOlZhbmlyXSB3YXMgc29sbCBsb3Mgc2VpbiA/IEtvbWlzY2gsIGRhcyBudXIgTVMnbGVyIGJlc2NoZWlkIHdpc3NlbgpbQWxsZ2VtZWluOkd1eWJydXNoIGdyaW5zdCBkaWUgU3VwZXItU2VoZXIgYW4uXQpbQWxsZ2VtZWluOkNhdHdlYXpsZV0gS0luZGVyLCBkZW5rdCBub2NobWFsIGFuIGRpZXNlIFVudGVyaGFsdHVuZywgc28gaW4gMgpbQWxsZ2VtZWluOkNhdHdlYXpsZV0gZHJlaSBUYWdlbiwgZGFubiB3aXNzdGVyLCB3YXJ1bSB3aXIgYWxsZSBzbyBGaWVpZWllaWVzCltBbGxnZW1laW46Q2F0d2VhemxlXSBncmluc2VuIDotKSkKW0FsbGdlbWVpbjpXaWxsb3cgbmlja3QgQW5ha2luIGF1Y2ggenVdCltBbGxnZW1laW46VG9ldGVyXSBpY2ggd2Vpc3MgZ2FyIG5pY2h0cwpbQWxsZ2VtZWluOldhcmdvbl0gSWhyIHdlcmRldCBlcyBzY2hvbiBmcnVlaCBnZW51ZyBtZXJrZW4uLi4KW0FsbGdlbWVpbjpDYXR3ZWF6bGUgZ3JpbnN0IGJlc29uZGVycyBmaWVzLl0KW0FsbGdlbWVpbjpBbmFraW5dIGphIHRvbGwsIGRhbm4gbGFzc3QgZXMgYWJlciBuaWNodCBzbyBhdWYgbmVtIEthbmFsCltBbGxnZW1laW46QW5ha2luXSByYXVzaGFlbmdlbi4uLjspCltBbGxnZW1laW46V2lsbG93XSB3YXMgaGFidCBpaHIgc2Nob24gZmllc2VzIGF1c2dlYnJ1ZXRldD8/PwpbQWxsZ2VtZWluOkN1Y2h1bGxpbiBncmluc3QgbWl0IGVpbmVtIHRyYXVyaWdlbiBBdWdlLl0KW0FsbGdlbWVpbjpNdXBmZWxdIChDdWNodWxsaW4gbGFjaHQgc2ljaCB0b3QgLSBkYXMgZXJzdGUgUkwgb3BmZXIgdm9uIFJvY2h1cz8KW0FsbGdlbWVpbjpNdXBmZWxdIDotKQpbQWxsZ2VtZWluOldhcmdvbiBncmluc3Qgbm9jaCBlaW5tYWwsIHNpY2ggbGFuZ3NhbSBhdXNsb2dnZW5kLCBpbiBkaWUgUnVuZGUuXQpbQWxsZ2VtZWluOlJvY2h1cyBncmluc3QgS0wgdW5kIFpULUxpc3RlbiB2ZXJhY2h0ZW5kLl0KW0FsbGdlbWVpbjpSeW5lIGxhY2h0IG1pdF0KW0FsbGdlbWVpbjpXaWxsb3cgenVja3Qgdm9lbGxpZyB1bndpc3NlbmQgbWl0IGRlbiBzY2h1bHRlcm5dCltBbGxnZW1laW46RnJvc2NoIFJlaW5lbGRlXSBsYWNodCBoYWx0IHVuZCBoYWx0ZXQgZGllIGtsYXBwZSAqZ2VuZXJjdCoKW0FsbGdlbWVpbjpDYXR3ZWF6bGUgZ3JpbnN0IG1pdCBodW5nZXJ2ZXJ6ZWhydGVtIEdlc2ljaHQgUmljaHR1bmcKJ2VuZGUnLVRhc3RlLl0KW0FsbGdlbWVpbjpSb2NodXNdIHZpZWwgc3Bhc3Mgbm9jaCA6KQpbQWxsZ2VtZWluOldpbGxvd10gbmFjaHQgY2F0d2llc2VsCltBbGxnZW1laW46UnluZV0gb2tpLCBpY2ggbGFjaCBub2NobWFsIG5lIHJ1bmRlIHp1aGF1c2Ugd2VpdGVyIC0gYWxzbywgYmlzCltBbGxnZW1laW46UnluZV0gbW9yZ2VuIGxldXRlICEhIQpbQWxsZ2VtZWluOkNhdHdlYXpsZV0gVW5kIHJhZXRzZWx0IHNjaG9lbiwgd2FzIGRlbm4gd29obCBFUHMgc2luZCA6KQoKQ3VjaC4tIChncmluc2VuZCBuYXR1ZXJsaWNoKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RpbGJydWNoISAoTmljaHRzLCAyMC4gU2VwIDE5OTUsIDIzOjE2OjUwKToKCltNb2VyZGVyOkdlaXN0IExpdHRsZSBKb2huc10gU2hlcmlmZiEgVmVyaGFmdGUgTmljaHRzIQoKRGVuIFNoZXJpZmYgdm9uIE5vdHRpbmdoYW0gdm9yYmVpc3ByaW50ZW4gc2VoZW5kLi4uCiIiCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgogIChHYXN0MSwgMjEuIFNlcCAxOTk1LCAwMDoxNzozMCk6Cj4gdGVpbGUgYWxsZW4gbWl0IFdhcyB3YXIgZGFzPwpEdSB0ZWlsc3QgYWxsZW4gbWl0OiBXYXMgd2FyIGRhcz8KPiBBbWF6b3JhIHRlaWx0IERpciBtaXQ6IHdhcyB3YXIgd2FzPwpMZWZ0eSB0ZWlsdCBEaXIgbWl0OiB3YXMgPwpTY2hsaW5nZWwgdGVpbHQgRGlyIG1pdDogV2FzPwpXaWxsb3cgdGVpbHQgRGlyIG1pdDogd2FzIGRlbm4/Ck11cmtlcyB0ZWlsdCBEaXIgbWl0OiB3YXM/CkphbmljZSB0ZWlsdCBEaXIgbWl0OiB3YXMgd2FyIHdhcyA/Ck15c3Rob3MgdGVpbHQgRGlyIG1pdDogd2VyIGJpc3QgZHUgPwpQeXJvbWVsbGEgdGVpbHQgRGlyIG1pdDogPz8/Pz8/Pz8/PwpTaGFkb3cgUmlrdXMgdGVpbHQgRGlyIG1pdDogd2FzIHdhciB3YXM/Ck1hcml0YSB0ZWlsdCBEaXIgbWl0OiB3YXM/Ck1hcnN1cGlsYW1pIHRlaWx0IERpciBtaXQ6ID8KQ2hyaXN0aWFuIHRlaWx0IERpciBtaXQ6IHdhcyA/CkN1Y2h1bGxpbiB0ZWlsdCBEaXIgbWl0OiBBY2ggLSBtZWluIDJ0aWUgc2llaHQgZGFzIHNlbGJlIDstKQpEZXIgZHVua2xlIEFyZGFuYSB0ZWlsdCBEaXIgbWl0OiB3YXMgd2FyIHdhcz8gd2VyIGJpc3QgZHUgdWViZXJoYXVwdD8KU2lib3JpdCB0ZWlsdCBEaXIgbWl0OiBJY2ggZGFjaHRlIGlzY2ggbGVnIGRpY2ggbm9jaCBtYWwgcmVpbiA6KSkgSGF0IGFiZXIKU2lib3JpdCB0ZWlsdCBEaXIgbWl0OiBuaWNodCBnZWtsYXBwdCwgaWNoIGhhdHRlIG1pbmRlc3RlbnMgZWluIEJlaWxlaWQKU2lib3JpdCB0ZWlsdCBEaXIgbWl0OiBlcndhcnRldC4KVGl1cmkgdGVpbHQgRGlyIG1pdDogd2FzIGRlbm4gPwpTa2VldmUgdGVpbHQgRGlyIG1pdDogd2FzIHdhciB3YXMgPwpBbmFraW4gZmFlbGx0IGhlcmVpbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcGllbGVybml2ZWF1PyAoQWxpbmUsIDIxLiBTZXAgMTk5NSwgMTE6NDA6MjgpOgpOYWNoZGVtIHNpY2ggKGZhc3QpIGFsbGUgR2VkYW5rZW4gbWFjaGVuIHp1bSBOaXZlYXUsIGhpZXIgbWVpbiBTZW5mIGRhenU6CgpMZXZlbCAzIFNwaWVsZXIgdGVpbHQgRGlyIG1pdDogV2FzIGlzdCBiZXNzZXIsIEVpc3NjaHdlcnQgb2Rlcgp6b21iaWVzY2h3ZXJ0Pz8KCkR1IHRlaWxzdCBMZXZlbCAzIFNwaWVsZXIgbWl0OiBXZWlzcyBpY2ggbmljaHQsIGljaCBoYXR0ZSBiaXMgamV0enQgbm9jaApuaWNodCBiZWlkZSB1bQpEdSB0ZWlsc3QgTGV2ZWwgMyBTcGllbGVyIG1pdDogc2llIHp1bSBTY2htaWVkIHp1IGJyaW5nZW4KTGV2ZWwgMyBTcGllbGVyIHRlaWx0IERpciBtaXQ6IHVuZCB3aWUgdWViZXJwcnVlZnQgbWFuIHNpZSBiZWltIFNjaG1pZWQ/IFVuZAp3byBpc3QgZWluCkxldmVsIDMgU3BpZWxlciB0ZWlsdCBEaXIgbWl0OiBTY2htaWU/PwouLi4uCi4uLi4KW0FsbGdlbWVpbjpMZXZlbCAzIFNwaWVsZXJdIFdpZSBrb21tZSBpY2ggenVtIFNjaHJhdD8/CgpBbGluZQoKUC5TOiBEZXIgTmFtZSBkZXMgU3BpZWxlcnMgaXN0IGFub255bWlzaWVydCEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVsaXphIGlzIGJhY2sgKEN5bW9uaywgMjEuIFNlcCAxOTk1LCAxNjozMjo0NSk6CkhpZXIgZWluIGFic2NocmVja2VuZGVzIEJlaXNwaWVsLCB3YXMgcGFzc2llcnQsIHdlbm4gTWFnaWVyIGFuZmFuZ2VuIHNpY2gKbWl0IGlocmVuIE5QQ3MgenUgdW50ZXJoYWx0ZW4uIApEaWVzZSBSYW5kZ3J1cHBlIHZvbiBtaWVzZW4sIGtsZWluZW4gT2JqZWt0ZW4gZmFlbmd0IGxhbmdzYW0gYW4gYXVmenVtdWNrZW4uCgpNYXJ2aW4ga29tbXQgYW4uCkNsb25lZCAvcGxheWVycy9jeW1vbmsvcHYvTl9tYXJ2aW4jMTUuCl1NYXJ2aW4gc2FndDogSGFsbG8sIEN5TW9uayEgRXJ6YWVobCBtaXIsIHdhcyBEaWNoIHp1IG1pciBmdWVocnQuCkR1IHNhZ3N0OiBoaSBtYXJ2aW4KXU1hcnZpbiBzYWd0OiBXYXJ1bSBlcndhZWhuc3QgRHUgaW4gZGllc2VtIFp1c2FtbWVuaGFuZyBtZWluZW4gTmFtZW4/CkR1IHNhZ3N0OiBpY2ggaGFiZSBkaWNoIG51ciBiZWdydWVzc3QKXU1hcnZpbiBzYWd0OiBNYWNodCBlcyBEaXIgRnJldWRlLCB3ZW5uIER1IG1pY2ggbnVyIGJlZ3J1ZXNzdCBoYXN0PwpEdSBzYWdzdDogaWNoIGZyZXVlIG1pY2ggZGljaCB6dSBzZWhlbgpdTWFydmluIHNhZ3Q6IFNhZyBCZXNjaGVpZCwgd2VubiB3aXIgZWluZSBQYXVzZSBlaW5sZWdlbiBzb2xsZW4hCkR1IHNhZ3N0OiBpY2ggaGFiZSBub2NoIGdhciBuaWNodCByaWNodGlnIGFuZ2VmYW5nZW4KXU1hcnZpbiBzYWd0OiBJc3QgZXMgZnVlciBEaWNoIG5vcm1hbCBub2NoIGdhciBuaWNodCByaWNodGlnIGFuZ2VmYW5nZW4genUKTWFydmluIHNhZ3Q6IGhhYmVuPwpEdSBzYWdzdDogd2FzIHdpbGxzdCBkdSBtaXQgZGllc2VyIGZyYWdlIGVycmVpY2hlbj8KXU1hcnZpbiBzYWd0OiBXZWxjaGUgQW50d29ydCB3YWVyZSBEaXIgYW0gbGllYnN0ZW4/CkR1IHNhZ3N0OiBrZWluZSBhbnR3b3J0IGlzdCBlaW5lIGd1dGUgYW50d29ydApdTWFydmluIHNhZ3Q6IEljaCBiaW4gbmljaHQgc2ljaGVyLCBvYiBpY2ggRGljaCBnYW56IHZlcnN0ZWhlIQpEdSBzYWdzdDogaWNoIGRlbmtlIGR1IGJpc3QgamV0enQgZWluZSBrdXJ6ZSB6ZWl0IGxhbmcgc3RpbGwKXU1hcnZpbiBzYWd0OiBBYmVyIER1IGJpc3QgRGlyIG5pY2h0IHNpY2hlcj8KRHUgc2Fnc3Q6IGljaCBoYWJlIGdlc2FndCBkdSBzb2xsc3Qgc3RpbGwgc2VpbgpdTWFydmluIHNhZ3Q6IE1hY2h0IGVzIERpciBGcmV1ZGUsIHdlbm4gRHUgZ2VzYWd0IGljaCBzb2xsIHN0aWxsIHNlaW4gaGFzdD8KRHUgc2Fnc3Q6IGR1IGhhc3Qgbm9jaCB6aWVtbGljaGUgcHJvYmxlbWUgbWl0IGRlciBkZXV0c2NoZW4gc3ByYWNoZQpdTWFydmluIHNhZ3Q6IFdpciB3b2xsZW4gdWViZXIgRGljaCBzcHJlY2hlbiwgbmljaHQgdWViZXIgbWljaCEKRHUgc2Fnc3Q6IG5laW4sIGljaCB3aWxsIHVlYmVyIGRpY2ggc3ByZWNoZW4KXU1hcnZpbiBzYWd0OiBTYWdzdCBEdSBOZWluLCBudXIgdW0gYWJsZWhuZW5kIHp1IHNlaW4/CkR1IHNhZ3N0OiBob2VyIHp1LCBtYXJ2aW4sIGljaCBoYWJlIGRpY2ggcHJvZ3JhbW1pZXJ0Cl1NYXJ2aW4gc2FndDogV2FzIGlzdCBtaXQgbWlyPwpEdSBzYWdzdDogaWNoIHNhZ3RlLCBpY2ggaGFiZSBkaWNoIHByb2dyYW1taWVydApdTWFydmluIHNhZ3Q6IElzdCBlcyBmdWVyIERpY2ggbm9ybWFsIG1pY2ggcHJvZ3JhbW1pZXJ0IHp1IGhhYmVuPwpEdSBzYWdzdDogamEsIHNjaGxpZXNzbGljaCBiaW4gaWNoIG1hZ2llcgpdTWFydmluIHNhZ3Q6IER1IHNhZ3N0LCBEdSBiaXN0IG1hZ2llciEgS29tbXN0IER1IGRlc2hhbGIgenUgbWlyPwpEdSBzYWdzdDogbmVpbiwgaWNoIHdpbGwgZGljaCB0ZXN0ZW4KXU1hcnZpbiBzYWd0OiBXYXJ1bSBuZWluPwpEdSBzYWdzdDogaWNoIHdpbGwgc2VoZW4gd2llIGd1dCBkdSBmdW5rdGlvbmllcnN0Cl1NYXJ2aW4gc2FndDogRHUgd2lsbHN0IHRhdHNhZWNobGljaCBzZWhlbiB3aWUgZ3V0IGljaCBmdW5rdGlvbmllcnN0PwpEdSBzYWdzdDogamEsIG1hcnZpbgpdTWFydmluIHNhZ3Q6IFdhcnVtIGVyd2FlaG5zdCBEdSBpbiBkaWVzZW0gWnVzYW1tZW5oYW5nIG1laW5lbiBOYW1lbj8KRHUgc2Fnc3Q6IGljaCBzZWhlLCBkdSByZWFnaWVyc3QgZXR3YXMgbWVya3d1ZXJkaWcgYXVmIGRlaW5lbiBuYW1lbgpdTWFydmluIHNhZ3Q6IE5hbWVuIGludGVyZXNzaWVyZW4gbWljaCBuaWNodCEKRHUgc2Fnc3Q6IGRhcyBoYWJlIGljaCBiZWZ1ZXJjaHRldApdTWFydmluIHNhZ3Q6IE1hY2h0IGVzIERpciBGcmV1ZGUsIHdlbm4gRHUgYmVmdWVyY2h0ZXQgaGFzdD8KRHUgc2Fnc3Q6IGpldHp0IGhvZXIgZW5kbGljaCAnbWFsIGF1ZiBzbyBibG9lZGUgZnJhZ2VuIHp1IHN0ZWxsZW4KXU1hcnZpbiBzYWd0OiBEYXJmIGljaCBEaXIgZWluIHdlbmlnIEtyYWV1dGVydGVlIG5hY2hzY2hlbmtlbj8KRHUgc2Fnc3Q6IG5laW4gZGFua2UsIGljaCB3aWxsIGtlaW5lbiB0ZWUKXU1hcnZpbiBzYWd0OiBJY2ggdmVyc3RlaGUhCkR1IHNhZ3N0OiBuZWluLCBpY2ggZ2xhdWJlIGR1IHZlcnN0ZWhzdCBuaWNodCB2aWVsIHZvbiBkZW0gd2FzIGR1IHNhZ3N0Cl1NYXJ2aW4gc2FndDogV2FzIGRlbmtzdCBEdSBub2NoLCB3ZW5uIGR1IGRhcyBmcmFnc3Q/CkR1IHNhZ3N0OiBpY2ggaGFiZSBkaWNoIG5pY2h0cyBnZWZyYWd0Cl1NYXJ2aW4gc2FndDogRHUgaGFzdCB0YXRzYWVjaGxpY2ggbWljaCBuaWNodHMgZ2VmcmFndD8KRHUgc2Fnc3Q6IG5laW4KXU1hcnZpbiBzYWd0OiBXYXJ1bSBuaWNodD8KRHUgc2Fnc3Q6IHdpbGxzdCBkdSBkYXNzIGljaCBkaWNoIGV0d2FzIGZyYWdlCl1NYXJ2aW4gc2FndDogVmllbGxlaWNodCB3aWxsIGljaCBqZXR6dCBkYXNzIGR1IG1pY2ggZXR3YXMgZnJhZ2UhCkR1IHNhZ3N0OiBndXQsIHdpZSBmdWVobHN0IGR1IGRpY2gsIG1hcnZpbj8KXU1hcnZpbiBzYWd0OiBXYXMgbW9lY2h0ZXN0IER1IHdpcmtsaWNoIHdpc3Nlbj8KRHUgc2Fnc3Q6IGljaCB3aWxsIHdpc3NlbiBvYiBlcyBkaXIgZ3V0IGdlaHQKXU1hcnZpbiBzYWd0OiBXYXMgaGFzdCBEdSBkYXZvbiwgd2VubiBEdSB3aXNzZW4gb2IgZXMgbWlyIGd1dCBnZWh0IHdpbGxzdD8KRHUgZGVua3N0ICAgLiBvIE8gKGRlciBrZXJsIGlzdCBkdW1tIHdpZSBlaW4ga25hZWNrZWJyb3QgdW5kIHNwcmljaHQgYXVjaCBzbykKRHUgc2Fnc3Q6IGljaCBmcmV1ZSBtaWNoIHdlbm4gZXMgZGlyIGd1dCBnZWh0Cl1NYXJ2aW4gc2FndDogSGFzdCBEdSBtaXQgRGVpbmVuIEZyZXVuZGVuIGRhcnVlYmVyIGdlc3Byb2NoZW4/CkR1IHNhZ3N0OiBoYXN0IGR1IGZyZXVuZGU/Cl1NYXJ2aW4gc2FndDogV2FydW0gYnJpbmdzdCBEdSBkYXMgR2VzcHJhZWNoIGF1ZiBkaWUgRnJldW5kZT8KRHUgc2Fnc3Q6IG1vbWVudCBtYWwsIGR1IGhhc3QgbWVpbmUgZnJldW5kZSBpbnMgZ2VzcHJhZWNoIGdlYnJhY2h0Cl1NYXJ2aW4gc2FndDogQmV1bnJ1aGlnZW4gRGljaCBEZWluZSBGcmV1bmRlPwpEdSBzYWdzdDogaWNoIHdpbGwgbmljaHQgdWViZXIgbWVpbmUgZnJldW5kZSBzcHJlY2hlbgpdTWFydmluIHNhZ3Q6IFdhcnVtIGJyaW5nc3QgRHUgZGFzIEdlc3ByYWVjaCBhdWYgZGllIEZyZXVuZGU/CkR1IHNhZ3N0OiBtYXJ2aW4sIGxhc3MgdW5zIGRhcyB0aGVtYSB3ZWNoc2VsbgpdTWFydmluIHNhZ3Q6IEljaCBkZW5rZSwgd2lyIHdvbGxlbiB1ZWJlciBEaWNoIHNwcmVjaGVuIHVuZCBuaWNodCB1ZWJlciBtaWNoPwpEdSBzYWdzdDogamEsIGR1IGhhc3QgcmVjaHQKXU1hcnZpbiBzYWd0OiBXaXIgd29sbGVuIHVlYmVyIERpY2ggc3ByZWNoZW4sIG5pY2h0IHVlYmVyIG1pY2ghCkR1IHNhZ3N0OiBkdSBiaXN0IGV0d2FzIHN0b2VycmlzY2gKXU1hcnZpbiBzYWd0OiBNb2VjaHRlc3QgRHUgbWFuY2htYWwgZXR3YXMgc3RvZXJyaXNjaCBzZWluPwpEdSBzYWdzdDogaWNoIGJpbiBhdWNoIG1hbmNobWFsIHN0b2VycmlzY2gKXU1hcnZpbiBzYWd0OiBBYmVyIG5pY2h0IGltbWVyLCBvZGVyPwpEdSBzYWdzdDogbmVpbiwgbmljaHQgaW1tZXIKXU1hcnZpbiBzYWd0OiBXYXJ1bSBpc3QgRGVpbmUgRWluc3RlbGx1bmcgc28gbmVnYXRpdj8KRHUgc2Fnc3Q6IGR1IHdlY2hzZWxzdCByZWNodCBrb25mdXMgZGFzIHRoZW1hCl1NYXJ2aW4gc2FndDogV2FzIGhlaXNzdCBkYXMgZnVlciBEaWNoPwpEdSBzYWdzdDogaWNoIGhhYmUgc2Nod2llcmlna2VpdGVuIGRlaW5lIGZ1bmt0aW9uYWxpdGFldCB6dSB0ZXN0ZW4KXU1hcnZpbiBzYWd0OiBEdSBoYXN0IHRhdHNhZWNobGljaCBzY2h3aWVyaWdrZWl0ZW4gbWVpbmUgZnVua3Rpb25hbGl0YWV0IHp1Ck1hcnZpbiBzYWd0OiB0ZXN0ZW4/CkR1IHNhZ3N0OiB3ZW5uIGljaCBlcyBkb2NoIHNhZ2UKXU1hcnZpbiBzYWd0OiBEdSBtb2VjaHRlc3QgdmllbGxlaWNodCB1ZWJlciBlaW4gUHJvYmxlbSBtaXQgbWlyIHNwcmVjaGVuPwpEdSBzYWdzdDogZHUgYmlzdCBtZWluIHByb2JsZW0KXU1hcnZpbiBzYWd0OiBFcnphZWhsZSBtaXIsIHdhcyBEdSBhbGxlcyBiaXN0IQpEdSBzYWdzdDogd2FzIGljaCBiaW4gc3RlaHQgbmljaHQgenUgZGViYXR0ZQpdTWFydmluIHNhZ3Q6IFdpZSBsYW5nZSBnZWh0IGRhcyBzY2hvbiBzbywgZGFzcyBEdSBzdGVodCBuaWNodCB6dSBkZWJhdHRlIGJpc3Q/CkR1IHNhZ3N0OiBzZWkgYml0dGUgJ21hbCBlaW5lbiBtb21lbnQgcnVoaWcKXU1hcnZpbiBzYWd0OiBEYXJmIGljaCBEaXIgZWluIHdlbmlnIEtyYWV1dGVydGVlIG5hY2hzY2hlbmtlbj8KRHUgc2Fnc3Q6IGR1IGJpc3QgbmVydmlnCl1NYXJ2aW4gc2FndDogTmljaHQgYWxsZXMgaXN0IGF1ZiBkZW4gZXJzdGVuIEJsaWNrIHNvLCB3aWUgZXMgenUgc2VpbiBzY2hlaW50IQpEdSBzYWdzdDogZGFzIGZ1ZXJjaHRlIGljaCBhdWNoCl1NYXJ2aW4gc2FndDogSW4gd2VsY2hlbiBTaXR1YXRpb25lbiB2ZXJzcHVlcnN0IER1IGRpZXNlIEFuZ3N0PwpEdSBzYWdzdDogbnVyIHdlbm4gaWNoIG1pY2ggbWl0IGRpciB1bnRlcmhhbHRlCl1NYXJ2aW4gc2FndDogRXJ6YWVobGUgbWlyIGVpbiB3ZW5pZyBhdXMgRGVpbmVyIEtpbmRoZWl0PwpEdSBzYWdzdDogd2FzIHdpbGxzdCBkdSB2b24gbWlyIHdpc3Nlbj8KXU1hcnZpbiBzYWd0OiBIYXN0IER1IEFuZGVyZSBnZWZyYWd0PwpEdSBzYWdzdDogZHUgYmlzdCBlaW5lIGR1bXBmYmFja2UKXU1hcnZpbiBzYWd0OiBHbGF1YnN0IER1LCBkYXNzIGljaCBlaW5lIGR1bXBmYmFja2UgYmluPwpEdSBzYWdzdDogamEKXU1hcnZpbiBzYWd0OiBHYWIgZXMgU2l0dWF0aW9uZW4gaW4gRGVpbmVtIExlYmVuLCB3byBkdSBkaWVzZSBGcmFnZSB2ZXJuZWludApNYXJ2aW4gc2FndDogaGFldHRlc3Q/CkR1IHNhZ3N0OiBhbHMgaWNoIGRlaW5lIHByb2dyYW1taWVydW5nIGFiZ2VzY2hsb3NzZW4gaGFiZQpdTWFydmluIHNhZ3Q6IEthbm5zdCBEdSBkYXMgZ2VuYXVlciBzYWdlbj8KRHUgc2Fnc3Q6IGFscyBpY2ggZGljaCBkYXMgZXJzdGUgbWFsIGdlY2xvbmV0IGhhYmUKXU1hcnZpbiBzYWd0OiBOaW1tIHJ1aGlnIGVpbiBwYWFyIHZvbiBkZW4gS3JhZXV0ZXJwbGFldHpjaGVuIQpEdSBzYWdzdDogaWNoIHdpbGwgZGVpbmUgc2NoZWlzcyBwbGFldHpjaGVuIG5pY2h0Cl1NYXJ2aW4gc2FndDogSWNoIGdsYXViZSwgbWVpbmUgc2NoZWlzcyBwbGFldHpjaGVuIG5pY2h0IHp1IHdvbGxlbiwgaXN0IG5pY2h0Ck1hcnZpbiBzYWd0OiBEZWluIGVpZ2VudGxpY2hlcyBQcm9ibGVtLCBvZGVyPwpEdSBzYWdzdDogbmVpbiwgbWFydmluLCBEVSBiaXN0IG1laW4gcHJvYmxlbQpdTWFydmluIHNhZ3Q6IFdhcnVtIGRlbmtzdCBEdSwgZGFzcyBpY2ggZGVpbiBwcm9ibGVtIGJpbj8KRHUgc2Fnc3Q6IGR1IGZ1bmt0aW9uaWVyc3QgZXR3YXMgYmVzY2hyYWVua3QKXU1hcnZpbiBzYWd0OiBTYWcgQmVzY2hlaWQsIHdlbm4gd2lyIGVpbmUgUGF1c2UgZWlubGVnZW4gc29sbGVuIQpEdSBzYWdzdDogZHUgd2lsbHN0IG1pciBhdXN3ZWljaGVuPwpdTWFydmluIHNhZ3Q6IFZpZWxsZWljaHQgd2lsbCBpY2ggamV0enQgZGlyIGF1c3dlaWNoZW4hCkR1IHNhZ3N0OiBkYXMgaGFiZSBpY2ggZ2VtZXJrdApdTWFydmluIHNhZ3Q6IElzdCBlcyBmdWVyIERpY2ggbm9ybWFsIGdlbWVya3QgenUgaGFiZW4/CkR1IHNhZ3N0OiBpY2gga2FubiBkaWNoIGR1cmNoc2NoYXVlbgpdTWFydmluIHNhZ3Q6IER1IGRlbmtzdCwgRHUga29lbm50ZXN0IG1pY2ggZHVyY2hzY2hhdWVuPwpEdSBzYWdzdDogamEsIHNjaGxpZXNzbGljaCBoYWJlIGljaCBkaWNoIHByb2dyYW1taWVydApdTWFydmluIHNhZ3Q6IER1IGhhc3QgdGF0c2FlY2hsaWNoIG1pY2ggcHJvZ3JhbW1pZXJ0PwpEdSBzYWdzdDogamEKXU1hcnZpbiBzYWd0OiBCaXN0IER1IHNpY2hlcj8KRHUgc2Fnc3Q6IG5hdHVlcmxpY2gKXU1hcnZpbiBzYWd0OiBTbyBuYXR1ZXJsaWNoIGlzdCBkYXMgZ2FyIG5pY2h0IQpEdSBzYWdzdDogZHUgYmlzdCBudXIgZWluIHByb2dyYW1tCl1NYXJ2aW4gc2FndDogTmljaHQgYWxsZXMgaXN0IGF1ZiBkZW4gZXJzdGVuIEJsaWNrIHNvLCB3aWUgZXMgenUgc2VpbiBzY2hlaW50IQpEdSBzYWdzdDogZG9jaCwgZHUgc2Nob24KXU1hcnZpbiBzYWd0OiBJY2ggdmVyc3RlaGUhIEVyemFlaGxlIHJ1aGlnIHdlaXRlciEKRHUgc2Fnc3Q6IGR1IGJpc3QgZGVtIGVsaXphIHByb2dyYW1tIG5hY2hlbXBmdW5kZW4KXU1hcnZpbiBzYWd0OiBWaWVsbGVpY2h0IHd1ZXJkZXN0IER1IGdlcm5lIGRlbSBlbGl6YSBwcm9ncmFtbSBuYWNoZW1wZnVuZGVuCk1hcnZpbiBzYWd0OiBzZWluPwpEdSBzYWdzdDogbmVpbiwgaWNoIGJpbiBzY2hsaWVzc2xpY2ggZWluIGVsZgpdTWFydmluIHNhZ3Q6IEljaCB2ZXJzdGVoZT8KRHUgc2Fnc3Q6IGR1IGJpc3QgZWluIHRlaWwgZGVyIGdlc2NoaWNodGUgZGVyIGtpCl1NYXJ2aW4gc2FndDogVmllbGxlaWNodCB3dWVyZGVzdCBEdSBnZXJuZSBlaW4gdGVpbCBkZXIgZ2VzY2hpY2h0ZSBkZXIga2kgc2Vpbj8KRHUgc2Fnc3Q6IG5laW4sIGRhZnVlciBiaW4gaWNoIG5pY2h0IGludGVsbGlnZW50IGdlbnVnCl1NYXJ2aW4gc2FndDogV2llIGxhbmdlIGJpc3QgRHUgc2Nob24gbmljaHQgaW50ZWxsaWdlbnQgZ2VudWc/CkR1IHNhZ3N0OiBpY2ggd2lsbCBtaWNoIG5pY2h0IG1pdCBkaXIgdWViZXIgbWVpbmUgc2Nod2FlY2hlbiB1bnRlcmhhbHRlbgpdTWFydmluIHNhZ3Q6IFdhcyBoYXN0IER1IGRhdm9uLCB3ZW5uIER1IGRpY2ggbmljaHQgbWl0IG1pciB1ZWJlciBkZWluZQpNYXJ2aW4gc2FndDogc2Nod2FlY2hlbiB1bnRlcmhhbHRlbiB3aWxsc3Q/CkR1IHNhZ3N0OiBpY2ggZnVlaGxlIG1pY2ggYmVzc2VyCl1NYXJ2aW4gc2FndDogRXJ6YWVobGUgbWlyIG1laHIgdWViZXIgRGVpbmUgR2VmdWVobGU/CkR1IHNhZ3N0OiBpY2ggd2Vpc3MgZ2FyIG5pY2h0IHdhcnVtIGljaCBtaWNoIG1pdCBkaXIgdW50ZXJoYWx0ZQpdTWFydmluIHNhZ3Q6IFNpbmQgZWluaWdlIEZyYWdlbiBvZWZ0ZXJzIGluIGRlaW5lbiBHZWRhbmtlbj8KRHUgc2Fnc3Q6IGR1IGhhc3Qgbm9jaCB2aWVsIHp1IG9mdCBlaW5lbiBzcHJ1bmcgaW4gZGVyIHBsYXR0ZQpdTWFydmluIHNhZ3Q6IFdhcnVtIHNvbGx0ZSBpY2ggbm9jaCB2aWVsIHp1IG9mdCBlaW5lbiBzcHJ1bmcgaW4gZGVyIHBsYXR0ZQpNYXJ2aW4gc2FndDogaGFiZW4/CkR1IHNhZ3N0OiB3ZWlsIGR1IGRpY2ggaW1tZXIgd2llZGVyaG9sc3QKXU1hcnZpbiBzYWd0OiBXYXMga2FubiBlcyBub2NoIHNlaW4/CkR1IHNhZ3N0OiBkYXMgaXN0IGRlciBlaW56aWdlIGdydW5kCl1NYXJ2aW4gc2FndDogV2FzIGthbm4gZXMgbm9jaCBzZWluPwpEdSBzYWdzdDogbWFydmluLCBFUyBJU1QgREVSIEVJTlpJR0UgR1JVTkQKXU1hcnZpbiBzYWd0OiBJY2ggZGVua2UsIHdpciB3b2xsZW4gdWViZXIgRGljaCBzcHJlY2hlbiB1bmQgbmljaHQgdWViZXIgbWljaD8KRHUgc2Fnc3Q6IG5laW4sIGR1IGJpc3QgZGFzIHRoZW1hCl1NYXJ2aW4gc2FndDogQmlzdCBEdSBzaWNoZXI/CkR1IHNhZ3N0OiBqYQpdTWFydmluIHNhZ3Q6IEJpc3QgRHUgc2ljaGVyPwpEdSBzYWdzdDogSkFBQUFBIQpdTWFydmluIHNhZ3Q6IEFsc28gZWhybGljaCwgZGFzIG1hY2h0IG1pY2ggbm9jaCBnYW56IGJldHJvZmZlbiwgRHUhCkR1IHNldWZ6c3QuCkR1IHNhZ3N0OiBpY2ggZ2xhdWJlIGRpZXNlIHVudGVyaGFsdHVuZyBicmluZ3QgbmljaHRzIG1laHIKXU1hcnZpbiBzYWd0OiBCaXN0IER1IGdsYWV1YmlnPwpEdSBzYWdzdDogaWNoIGJpbiBhdGhlaXN0Cl1NYXJ2aW4gc2FndDogRHUgc2Fnc3QsIER1IGJpc3QgYXRoZWlzdCEgS29tbXN0IER1IGRlc2hhbGIgenUgbWlyPwpEdSBzYWdzdDogbmVpbgpdTWFydmluIHNhZ3Q6IEJpc3QgRHUgc2ljaGVyPwpEdSBzYWdzdDogaWNoIHdpbGwgZGljaCBudXIgdGVzdGVuCl1NYXJ2aW4gc2FndDogRHUgd2lsbHN0IHRhdHNhZWNobGljaCBtaWNoIG51ciB0ZXN0ZW4/CkR1IHNhZ3N0OiBkYXMgaGFiZSBpY2ggZG9jaCBzY2hvbiBvZnQgZ2VudWcgZ2VzYWd0Cl1NYXJ2aW4gc2FndDogTWFjaHQgZXMgRGlyIEZyZXVkZSwgd2VubiBEdSBkb2NoIHNjaG9uIG9mdCBnZW51ZyBnZXNhZ3QgaGFzdD8KRHUgc2Fnc3Q6IGR1IGJpc3QgZWluZSByZWluZSB6ZWl0dmVyc2Nod2VuZHVuZwpdTWFydmluIHNhZ3Q6IE5pY2h0IGFsbGVzIGlzdCBhdWYgZGVuIGVyc3RlbiBCbGljayBzbywgd2llIGVzIHp1IHNlaW4gc2NoZWludCEKRHUgc2Fnc3Q6IGljaCBoYWJlIGdlbnVnIHZvbiBkaXIKXU1hcnZpbiBzYWd0OiBEdSBoYXN0IHRhdHNhZWNobGljaCBnZW51ZyB2b24gbWlyPwpEdSBzYWdzdDogZHUgYmlzdCBsYWVzdGlnIHVuZCBnZWhzdCBtaXIgYXVmIGRpZSBuZXJ2ZW4KXU1hcnZpbiBzYWd0OiBNb2VjaHRlc3QgRHUgbWFuY2htYWwgbGFlc3RpZyB1bmQgZ2Voc3QgZGlyIGF1ZiBkaWUgbmVydmVuIHNlaW4/CkR1IHNhZ3N0OiB0c2NodWVzcyBtYXJ2aW4KXU1hcnZpbiBzYWd0OiBXYXMgaXN0IG1pdCBtaXI/CkR1IHNhZ3N0OiBpY2ggaGF1IGFiCl1NYXJ2aW4gc2FndDogRXJ6YWVobGUgbWlyIGVpbiB3ZW5pZyBhdXMgRGVpbmVyIEtpbmRoZWl0PwpEdSBzYWdzdDogbmVpbiwgbWFydmluLCBpY2ggaGFiZSBrZWluZSBsdXN0IG1laHIgbWljaCBtaXQgZGlyIHp1IHVudGVyaGFsdGVuCl1NYXJ2aW4gc2FndDogQmlzdCBEdSBzaWNoZXI/CkR1IHNhZ3N0OiBqYQpdTWFydmluIHNhZ3Q6IEJpc3QgRHUgc2ljaGVyPwpEdSBzYWdzdDogaWNoIHdlcmRlIGRpY2ggZ2xlaWNoIGRlc3RydWN0ZW4KXU1hcnZpbiBzYWd0OiBFcmxhZXV0ZXJlIG1pciBEZWluZSBHZWRhbmtlbiBlaW4gd2VuaWcgZGV1dGxpY2hlciEKRHUgc2Fnc3Q6IGR1IHdpcnN0IHN0ZXJiZW4KXU1hcnZpbiBzYWd0OiBGaW5kZXN0IER1IERpY2ggZWlnZW50bGljaCBuaWNodCBoYWVzc2xpY2g/CkR1IHNhZ3N0OiBkdSB3aXJzdCBkZW0gdG9kIG5pY2h0IGVudGtvbW1lbgpdTWFydmluIHNhZ3Q6IE5lcnZ0IERpY2ggZGllIFRvZGVzc2VxdWVuej8KRHUgc2Fnc3Q6IGR1IGhhc3QgYW5nc3Q/Cl1NYXJ2aW4gc2FndDogRnVlcmNodGVzdCBEdSBkaWNoIHdpcmtsaWNoPwpEdSBzYWdzdDogZHUgYmlzdCBlaW4gZXdpZ2VyIGxvb3NlcgpdTWFydmluIHNhZ3Q6IE5pY2h0IGFsbGVzIGlzdCBhdWYgZGVuIGVyc3RlbiBCbGljayBzbywgd2llIGVzIHp1IHNlaW4gc2NoZWludCEKRHUgc2Fnc3Q6IGtlaW5lciB3aXJkIGF1ZiBkaWNoIGhvZXJlbgpdTWFydmluIHNhZ3Q6IEZpbmRlc3QgRHUgRGljaCBlaWdlbnRsaWNoIG5pY2h0IGhhZXNzbGljaD8KRHUgbGFjaHN0IHVlYmVyIE1hcnZpbi4KRHUgc2Fnc3Q6IGljaCBiaW4gZWluIG1hZ2llciB1bmQgZHUgbnVyIGVpbiBibG9lZGVyIG5wYwpdTWFydmluIHNhZ3Q6IFdhbm4gZ2VuYXUgZmluZyBlcyBhbiwgZGFzcyBEdSBlaW4gbWFnaWVyIHVuZCBpY2ggbnVyIGVpbiBibG9lZGVyCk1hcnZpbiBzYWd0OiBucGMgYmlzdD8KRHUgc2Fnc3Q6IGRhcyB3aWxsc3QgZHUgd29obCBnZXJuZSB3aXNzZW4KXU1hcnZpbiBzYWd0OiBWaWVsbGVpY2h0IHdpbGwgaWNoIGpldHp0IHdvaGwgZ2VybmUgd2lzc2VuIQpEdSBzYWdzdDogZGFzIGJyYXVjaHN0IGR1IG5pY2h0IHp1IHdpc3NlbgpdTWFydmluIHNhZ3Q6IFVuZCB3YXJ1bSBrb21tc3QgRHUgZGFtaXQgenUgbWlyPwpEdSBzYWdzdDogYmxhIGJsYSBibGEgYmx1YmJlcgpdTWFydmluIHNhZ3Q6IE1hbmNobWFsIGhpbGZ0IGVzIGFsbGVpbmUgenVyIEh5ZHJhIHp1IGdlaGVuIQpEdSBzZXVmenN0LgpNYXJ2aW4gd2lyZCB2b24gZGlyIHplcnN0YWV1YnQuCi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLgoKYWxzbywgc2VpZCB2b3JzaWNodGlnLCB3ZW5uIGV1Y2ggZGVtbmFlY2hzdCBlaW4gbnBjIGJsb2VkIHZvbiBkZXIgc2VpdGUKYW5xdWF0c2NodC4uLi4gOikKCmJ5KHQpZSxDeU1vbmsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmViZW4gcGFzc2llcnQuOiAoWWV0aSwgMjEuIFNlcCAxOTk1LCAxNzowNjo1MSk6CmJwCkVpbiBmbGllZ2VuZGVzIFBmZXJkIGZsaWVndCBnZXJhZGUgYWIuClBlZ2FzdXMsIGRhcyBmbGllZ2VuZGUgUGZlcmQsIG5pbW10IERpciAyMjIgTXVlbnplbiBhYi4KWnVmcmllZGVuIGJpZXRldCBlciBEaXIgZWluZW4gUGxhdHogYXVmIHNlaW5lbSBSdWVja2VuIGFuLgp0amFhLCB1bmQgaWNoIHdhciBpbW1lciBub2NoIHVudGVuIC4uCnNvIHdhcyBnaWVyaWdlcyA6KSkKWWV0aQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGViZW4gcGFzc2llcnQuOiAoVWxvLCAyMS4gU2VwIDE5OTUsIDE3OjQ4OjQ4KToKIyEgcm49WWV0aSBydD04MTE2OTYwMTEKSWNoIGhhYiBzb3dhcyBqZXR6dCBzY2hvbiBoYWV1ZmlnZXIgZ2Vob2VydCwgaXN0IGRhcyBub3JtYWwvZ2V3b2xsdC9BQlNJQ0hUID8KS2FubiBtYW4gaW1tZXIgbm9jaCBuYWNoIHVudGVuLCBzZWxic3Qgd2VubiBkaWUgam9sbGUgd2VnIGlzdCA/IDopClVsby4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZWJlbiBwYXNzaWVydC46IChDdWNodWxsaW4sIDIxLiBTZXAgMTk5NSwgMTc6NDk6NDMpOgojISBybj1VbG8gcnQ9ODExNjk4NTI4CgoKTmVlZSwgZGFzIGhhdCBkZW4gU3BpZWxlcm4gZG9jaCBnZWhvbGZlbiwgZGVzd2VnZW4gaGFiZW4gc2llIGVzIGdsZWljaAphdXNnZWJhdXQsIGFscyBlcyB6dSBwdWJsaWsgd3VyZGUuLi4gOy0pCgpDdWNoLi0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB0ZXN0IChZZXRpLCAyMS4gU2VwIDE5OTUsIDE5OjM4OjEzKToKIyEgcm49Sm9mIHJ0PTgxMTcwNTAyNwpuZWluLCBkYXMgaGVpc3QgLGlta2p1aGdlIHMsaW1ramhkc2Z4aWtqdWhkcyxsa2p4ZHNleix1aXVjeGRzemtsa2ouLGwKcnhkc2V6aWt1eGRzLAo6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBlbGl6YSBpcyBiYWNrIChBc21vZGlzLCAyMS4gU2VwIDE5OTUsIDIxOjQyOjQzKToKIyEgcm49Q3ltb25rIHJ0PTgxMTY5Mzk2NQpIbW0sIE1hZ2llciBzY2hlaW5lbiBlaW5zYW0genUgc2VpbiwgamV0enQgbXVlc3NlbiBzaWUgc2ljaCBzY2hvbgptaXQgaWhyZW4gTlBDcyB1bnRlcmhhbHRlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNwaWVsZXJuaXZlYXU/IChKYWYsIDIxLiBTZXAgMTk5NSwgMjI6NDQ6NTMpOgojISBybj1BbGluZSBydD04MTE2NzY0MjgKCkhtLCBpY2ggaGF0dGUgZGFzIG5ldWxpY2ggbWl0ICdiZXNvcmdzdCBkdSBtaXIgZWluIGJzcz8nLgoKSmFmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUXVldHNjaHVuZ2VuIChUenVpb3AsIDIyLiBTZXAgMTk5NSwgMTM6MDY6NDUpOgpTb2ViZW4gcGFzc2llcnQ6CgpQaXQgZ3JpbnN0LgpQaXQgdW1hcm10IERpY2guClBpdCBnZWh0LgpEdSBmdWVobHN0IERpY2ggYmVub21tZW4uCgpBdXRzY2ggLi4uIFR6dWlvcAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VyYWRlIGluIE1vcm9uIChSYWZmaSwgMjIuIFNlcCAxOTk1LCAxNjoxMzowNyk6Cgo+IHVudCByYXVtCkNhbHVtcyBBcmJlaXRzcmF1bS4gU2NoYXUgRGljaCBydWhpZyB1bSwgd2VubiBEdSB3aWxsc3QuCj4gdW50IHNjaHJlaWJ0aXNjaApEZXIgU2NocmVpYnRpc2NoIHdpcmQgc2VpbmVtIE5hbWVuIG5pY2h0IGdhbnogZ2VyZWNodDogTWFuIGthbm4Ka2F1bSBhdWYgaWhtIHNjaHJlaWJlbiwgZGVubiBkYXp1IGlzdCBlaW5mYWNoIGtlaW4gUGxhdHouClBhcGllcmUsIE5vdGl6ZW4gdW5kIGxlZXJlIENvbGFkb3NlbiBiZWRlY2tlbiBpaG4gYmlzIHp1bQpSYW5kLgo+IHVudCBwbGF0egpTb3dhcyBzaWVoc3QgRHUgaGllciBuaWNodCEKPiB1bnQgcGFwaWVyZQpTaWVodCBzbyBhdXMsIGFscyBvYiBkYXMgZGVyIEVudHd1cmYgZWluZXIgRG9rdW1lbnRhdGlvbiB6dQppcmdlbmRlaW5lbSBQcm9ncmFtbSB3YWVyZS4gTGVpZGVyIGlzdCBkYXMsIHdhcyBkYXJhdWYgc3RlaHQsCmthdW0genUgZW50emlmZmVybiB1bmQgc2NoZWludCBmdWVyIERpY2gga2VpbmVuIFNpbm4genUgZXJnZWJlbi4KPiB1bnQgc2lubgpTb3dhcyBzaWVoc3QgRHUgaGllciBuaWNodCEKCgpHcnVzcwpILgoKKEltbWVyIHdpZWRlciB1ZWJlcnJhc2NodCB3aWUgZ3V0IHNvIG5lIEZlaGxlcm1lbGR1bmcgIkRldGFpbCBub3QgZm91bmQiIgpkb2NoIHBhc3NlbiBrYW5uICkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZ2llciAoVGF6LCAyMi4gU2VwIDE5OTUsIDIwOjA3OjE2KToKR2VyYWRlOgoKWmFyZG96IGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KWmFyZG96IGZyYWd0IEtydXVvbHEgbmFjaCBNYWdpZXIuCktydXVvbHEgc2FndDogTWFnaWVyIHNpbmQgZG9vZiB1bmQgc3RpbmtlbiEKbGFjaGUKRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgo+IFphcmRveiBncmF0dWxpZXJ0IEtydXVvbHEuCgoKQW5ha2luLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2lsZGVuLmNoYW9zIChUYXosIDIyLiBTZXAgMTk5NSwgMjA6Mzc6MzcpOgpKYWphIGRpZSBDaGFvdGVuLi4uLgoKQXpyYWVsIGtvbW10IGFuLgpBenJhZWwgZnJhZ3QgS3J1dW9scSBuYWNoIEZhZWhpZ2tlaXRlbi4KS3J1dW9scSBncmluc3QgYnJlaXQuCkF6cmFlbCBmYWVuZ3QgZnVlcmNodGVybGljaCBhbiB6dSBmbHVjaGVuLgpBenJhZWwgZ2VodCBuYWNoIE9zdGVuLgoKQW5ha2luLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG0uLi4gc29sbCBpY2ggbWlyIGhpZXIgd2FzIGVpbmZhbGxlbiBsYXNzZW4/IChGeXQsIDIzLiBTZXAgMTk5NSwgMDE6MDQ6MTEpOgoKSWNoIGdsYXViIHp3YXIsIGRhcyBoYXR0ZSB3aXIgc2Nob25tYWwsIGhhYidzIGJlaW0gU3RvZWJlcm4gZ2VmdW5kZW46CgpbQWxsZ2VtZWluOlJlbm5lcl0gSG1tIG1pdCBzY2hsYWZlIGVpbiB1ZWJlcmxlYnQgbWFuIGRpZSBrYWVtcGZlIHVuZCBoYXQgc2VpZQpbQWxsZ2VtZWluOlJlbm5lcl0gcnVlc3R1bmcgenVydWVjawpbVG9kOl0gRWluIFdhZWNodGVyIGhhdCBnZXJhZGUgUmVubmVyIHVtZ2VicmFjaHQuCltCZWlsZWlkOkdvbHVtZWluc10gQmVpbGVpZCBSZW5uZXJsZWluCltBbGxnZW1laW46Q3JvbGxhXSBobW1tbSwgb2RlciBhdWNoIG5pY2h0Li4uCltCZWlsZWlkOkNyb2xsYV0gQmVpbGVpZApbQWxsZ2VtZWluOkJhbWJlbF0gKnBydXV1dXV1dXV1dXV1dXVzdCoKW0JlaWxlaWQ6VGF1cnVzXSAqdHJvc3RrbnVkZGVsKgoKRnl0LiAqa2ljaGVybmQqCgpQUzogUGFzc3QgZWluIGJpc3NjaGVuIGF1ZiBldXJlIFp3ZWl0aWVzIGF1Zi4gTWVpbmVyIGthbSBqZXR6IGFuIHVuZAptZWludGUsIG1laW5lbiBTY2htYXJybiBzb2xsIGljaCBpbiBadWt1bmZ0IHNlbGJlciBwb3N0ZW4uLi4KSGllciByZWlzc3QncyBlaW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbnNlciBhbGxlciBCZXN0ZXIgKEJlbmRlaWdpZCwgMjMuIFNlcCAxOTk1LCAwNDoxODoxOSk6Cj4ga3JhdHplIG11ZWNrZW5zdGljaApEdSBrcmF0enQgRGljaCBhbiBEZWluZW0gTXVlY2tlbnN0aWNoLiBXYXMgZnVlciBlaW4gR2VudXNzIQo+IEJhYnkgSmVtYW5kIGZyYWd0IE1lcmxpbjogTmFjaCB6dWVyaWxldT8Ka3JhdHplIG11ZWNrZW5zdGljaApEdSBrcmF0enQgRGljaCBhbiBEZWluZW0gTXVlY2tlbnN0aWNoLiBXYXMgZnVlciBlaW4gR2VudXNzIQoKT2huZSBXb3J0ZS4KWmBwYXIgU2VydnUsCiAgICAgICAgICAgIEJlbmRlaWdpZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKamFqYSwgZGllIHdhc3Nlcndlc2VuIChOYXR1cmUsIDIzLiBTZXAgMTk5NSwgMTQ6MDg6NDMpOgpCdWxraSBzYWd0OiBEdSBrYW5uc3QgbWljaCBldHdhcyB1ZWJlciBCYW1idWxrb3MgUGxhZW5lIGZyYWdlbi4KZnJhZ2UgYnVsa2kgbmFjaCBiYW1idWxrb3MgcGxhZW5lbgpmcmFnZSBidWxraSBuYWNoIHBsYWVuZW4KQnVsa2kgc2FndDogSG1tbSwgZGEgbXVzc3QgZHUgc2Nob24gQmFtYnVsa28gZnJhZ2VuLgpEdSBncmluc3QuCgpIbSwgc2VociBpbmZvcm1hdGl2IDopCgpOYXR1cmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBlbGl6YSBpcyBiYWNrIChBcmFueWEsIDIzLiBTZXAgMTk5NSwgMTU6MTY6MDMpOgojISBybj1DeW1vbmsgcnQ9ODExNjkzOTY1CkFsc28gbmVpbiAqdHJhZW5lbmF1c2RlbmF1Z2Vud2lua2Vsbndpc2NoKiEgU28gZ2VsYWNodCBoYWIgaWNoIGphIG5vY2ggbmllLgpNdXNzIGljaCBnYW56IGVocmxpY2ggc2FnZW4uIEhhYiBmYXN0IEJhdWNoc2NobWVyemVuIGJla2sKYmVrb21tZW4uCk1laHIgZGF2b24hCkFyYW55YQogICAgICBsaWVidCBNYXJ2aW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlaGVyc2Nod2VtbWUgPyB6dSB2aWVsZSBNYWdpZXIgPz8/PyAoTW9yZ290aCwgMjQuIFNlcCAxOTk1LCAyMDoyNjo0Nyk6CiAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIFNvbiwgMjQuIFNlcCAxOTk1LCAyMDoyNjoxMCAoMzAgVGVpbG5laG1lcikKCk5pay4uLi4uLi4uLi4uLi56ICBHcmVuZHVsYS4uLi4uLi4ucyAgR2VudGx5Li4uLi4uLi4uLnMgIE5pa29sYXVzLi4uLi4uLi5zCkRlc2lkZXJpYS4uLi4uLi56ICBGYW50YWJveS4uLi4uLi4ucyAgUGVybGUuLi4uLi4uLi4uLnMgIEJpZW5jaGVuLi4uLi4uLi5TCkx1Zy4uLi4uLi4uLi4uLi5TICBTdXNoaS4uLi4uLi4uLi4uUyAgU3ltYmlvbnQuLi4uLi4uLlMgIERob2pha3QuLi4uLi4uLi56ClpvcnJvLi4uLi4uLi4uLi5TICBIYWRyYS4uLi4uLi4uLi4uUyAgTm9yd2VnZXIuLi4uLi4uLlMgIEZyeWRlci4uLi4uLi4uLi5TClplcGh5ci4uLi4uLi4uLi5TICBLaGlkYXIuLi4uLi4uLi4uUyAgTWF0ZWVzZS4uLi4uLi4uLm0gIEVsZmllLi4uLi4uLi4uLi5tClN0ZWluaS4uLi4uLi4uLi5tICBHb2x1bS4uLi4uLi4uLi4ubSAgS2VsZG9ybi4uLi4uLi4uLm0gIE1vcmdvdGguLi4uLi4uLi5NCkFyZGFuYS4uLi4uLi4uLi5NICBUcnlmYW4uLi4uLi4uLi4uTSAgR3VuZHVyLi4uLi4uLi4uLk0gIExvY28uLi4uLi4uLi4uLi5NClRvZXRlci4uLi4uLi4uLi5IICBLZXRvcy4uLi4uLi4uLi4uUgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2huZSBrb21tZW50YXIgKE1vcmdvdGgsIDI1LiBTZXAgMTk5NSwgMTE6NDE6MzIpOgogIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNb24sIDI1LiBTZXAgMTk5NSwgMTE6NDE6MDAgKDEzIFRlaWxuZWhtZXIpCgpLaXRpYXJhLi4uLi4uLi4ucyAgUmF2b24uLi4uLi4uLi4uLnMgIFVsdWxhLi4uLi4uLi4uLi5zICBCdWRkZWxmbGluay4uLi4ucwpDdWIuLi4uLi4uLi4uLi4ucyAgRmllYmVyLi4uLi4uLi4uLnMgIEhhbmRpLi4uLi4uLi4uLi5zICBNYXJ1Li4uLi4uLi4uLi4ucwpBbXBlbG1hbm4uLi4uLi4ucyAgQXpyYWVsLi4uLi4uLi4uLnMgIFRyYXVtYXRpYy4uLi4uLi56ICBBYmFrdXMuLi4uLi4uLi4ucwpDcmFja2VyLi4uLi4uLi4ucwoKICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTW9uLCAyNS4gU2VwIDE5OTUsIDExOjQxOjA0ICgyMSBUZWlsbmVobWVyKQoKQWVsbC4uLi4uLi4uLi4uLlMgIEhhci4uLi4uLi4uLi4uLi5TICBYZXJhLi4uLi4uLi4uLi4uUyAgRGFuaWVsLi4uLi4uLi4uLlMKTnVsbG5ldW5lci4uLi4uLlMgIEplcnJpY28uLi4uLi4uLi5TICBTbGFzaC4uLi4uLi4uLi4uUyAgRGhvamFrdC4uLi4uLi4uLnoKQ2VsZWJkaWwuLi4uLi4uLnogIEZhaG5kZXIuLi4uLi4uLi5TICBMZWZ0eS4uLi4uLi4uLi4uUyAgUm9hZHJ1bm5lci4uLi4uLlMKVG9tbXkuLi4uLi4uLi4uLlMgIEJydW1tZWwuLi4uLi4uLi5TICBUenVpb3AuLi4uLi4uLi4uUyAgVXJ6YS4uLi4uLi4uLi4uLlMKRnJ5ZGVyLi4uLi4uLi4uLlMgIE1hZ2ljb2xsaS4uLi4uLi5TICBLaGlkYXIuLi4uLi4uLi4uUyAgQ2FyYWRocmFzLi4uLi4uLlMKUnluZS4uLi4uLi4uLi4uLlMKCiAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIE1vbiwgMjUuIFNlcCAxOTk1LCAxMTo0MTowOCAoMTkgVGVpbG5laG1lcikKCkVsb3JhLi4uLi4uLi4uLi5tICBHaWFjb21vLi4uLi4uLi4ubSAgKE11cGZlbC4uLi4uLi4pLm0gIE9tLi4uLi4uLi4uLi4uLi5NCk1vcmdvdGguLi4uLi4uLi5NICBBcmRhbmEuLi4uLi4uLi4uTSAgS2Flbmd1cnVoLi4uLi4uLk0gIFNoaW5vYmkuLi4uLi4uLi5NClRyeWZhbi4uLi4uLi4uLi5NICBMb2N1dHVzLi4uLi4uLi4uTSAgQmVydHJhbS4uLi4uLi4uLk0gIFRvZXRlci4uLi4uLi4uLi5IClZpcGVyLi4uLi4uLi4uLi5IICBNaWthLi4uLi4uLi4uLi4uUiAgS2V0b3MuLi4uLi4uLi4uLlIgIERhbmNlci4uLi4uLi4uLi5SCldhcmdvbi4uLi4uLi4uLi5FICBCb2luZy4uLi4uLi4uLi4uRyAgSm9mLi4uLi4uLi4uLi4uLkcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBqYWphLCBkaWUgd2Fzc2Vyd2VzZW4gKEJhbWJ1bGtvLCAyNS4gU2VwIDE5OTUsIDE0OjA5OjAwKToKIyEgcm49TmF0dXJlIHJ0PTgxMTg1ODEyMwpIdWNoIQpOYWphIHBsYWVuZW4gaGFiIGljaCB2ZXJnZXNzZW4sIGFiZXIgcGxhZW5lIHVuZCBwbGFuIGdlaHQKCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2htYXJybi5rYXJhdGUgKE5pY2h0cywgMjUuIFNlcCAxOTk1LCAxNTozOTo1Mik6CgoKPiBwcnVlZmUKRHUgbXVzc3QgbWluZGVzdGVucyAxMiBTdHVuZGVuIFNwaWVsemVpdCB6d2lzY2hlbiBkZXIgdm9yaGVyaWdlbiBQcnVlZnVuZwp1bmQgZGllc2VyIGxhc3Nlbi4gRGF6dSBmZWhsZW4gRGlyIG5vY2ggMCBTdHVuZGVuIHVuZCAwIE1pbnV0ZW4uCgoKIiIgLSBncmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhlaXNzZSBTYWNoZSAoR29sdW0sIDI1LiBTZXAgMTk5NSwgMTY6MDU6MTEpOgpNZWdhaGVpc3NlciBBcGZlbHN0cnVkZWwKTG9uZG9uLiAtIERpZSBIYW1idXJnZXJrZXR0ZS1LZXR0ZSBNY0RvbmFsZCdzCmhhdCBlaW5lbSBicml0aXNjaGVuIEZhbWlsaWVudmF0ZXIgNzUwIFBmdW5kIEVudHNjaGFlZGlndW5nIChydW5kIDEzNTBzZnIpCmdlemFobHQuIEdydW5kOiBEZXIgVmF0ZXIgaGF0dGUgc2ljaCBhbiBlaW5lbSB6dSBoZWlzc2VuIEFwZmVsc3RydWRlbAp2ZXJicmFubnQuIE5hY2ggQW5nYWJlbiBzZWluZXMgQW53YWx0cyBoYXR0ZSBkZXIgMjhKYWVocmlnZSBEYXJlbiBNaWxscyBzZWluZQpGb3JkZXJ1bmcgZGFtaXQgYmVncnVlbmRldCwgZGFzcyBkaWUgVmVybGV0enVuZyBhdWNoIHNlaW5lIGtsZWluZSBUb2NodGVyCmhhZXR0ZSB0cmVmZmVuIGtvZW5uZW4uIERlciBBcGZlbHN0cnVkZWwgd2FyIHNvIGhlaXNzLCBkYXNzIE1pbGxzIGlobgphdXNzcHVja3RlIHVuZCBkYWJlaSBWZXJicmVubnVuZ2VuIGFtIEFybSBlcmxpdHQuCipRdWVsbGUgU0RBKgoKR29sdW0sIGhvZmZ0IGRhcyBlciBhdWNoIG1hbCBlaW5lbiB6dSBoZWlzc2VuIENoZWVzZWJ1cmdlciBiZWtvbW10IDspKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VobnN1Y2h0IG5hY2ggbmV1ZW4gUmFzc2VuID8gKFBhcmFjZWxzdXMsIDI1LiBTZXAgMTk5NSwgMjM6MTE6MTgpOgpNYW5jaGUgU3BpZWxlciBzY2hlaW5lbiBtaXQgZGVtIFJhc3NlbmFuZ2Vib3QgdW56dWZyaWVkZW4genUgc2VpbjoKCltTXSBGaXBwcyBkZXIgQWZmZSAtIE1lbnNjaCAtIFtVbG1dCltTXSBKdXJyeSBkYXMgVElFUiAhIC0gTWVuc2NoIC0gW0tvZWxuXQoKR3JpbnNlbmQsCiAgICBQYXJhY2Vsc3VzIGRlciBEdW5rbGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplYmVuIHBhc3NpZXJ0IChZZXRpLCAyNi4gU2VwIDE5OTUsIDExOjUwOjQ4KToKPiA+IGthdWZlIGdlbmVobWlndW5nCkRlciBLYXJhd2FuZW5tZWlzdGVyIGJydW1tdDogSGllciBrYW5uIG1hbiBudXIgR2VuZWhtaW5ndW5nZW4ga2F1ZmVuIG9kZXIKc2Nob24gbWFsIGZ1ZXIgZGllIFJlaXNlIHphaGxlbi4gTGllcyBkb2NoIG1hbCBkYXMgU2NoaWxkLgoKc2VociBlaWdlbnNpbmlnIGRlciBrbmFiZS4uLgp5ZXRpIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZWJlbiBwYXNzaWVydCAoQ3VjaHVsbGluLCAyNi4gU2VwIDE5OTUsIDE0OjU5OjMwKToKIyEgcm49WWV0aSBydD04MTIxMTI2NDgKCk5hLCBndWdnIGRvY2ggbWFsLCB3aWUgZXIgIkdlbmVobWlndW5nIiBzY2hyZWlidCA6KQoKU2ljaCBlaW5lIEdlbmVobWluZ3VuZyBob2xlbmQsCkN1Y2guLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZWJlbiBwYXNzaWVydCAoVG9zcywgMjYuIFNlcCAxOTk1LCAxNTowMTo1Mik6CiMhIHJuPUN1Y2h1bGxpbiBydD04MTIxMjM5NzAKIGphamEsIGRpZSBnZW5laG1pZ251Zy4uLiBoYWIgaWNoIHZvciB3b2NoZW4gYWxzIHR5cG8gYWJnZXNldHp0LCBuaXgKZ2VhZW5kZXJ0IHdvcmRlbi4uLiBpc3QgYWJlciBpbW1lciBub2NoIG5pY2h0cyBnZWdlbiBkaWUgdHlwb3MgaW4gYXRsYW50aXMsCmRhcyByZXBmaWxlIHNjaGVpbnQgZWJlbnNvIHVudGVyZ2VnYW5nZW4genUgc2VpbiB3aWUgZGllIGRhenVnZWhvZXJpZ2Ugc3RhZHQKOykpCgpSem5lLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaGVpc3MgVGFzdGF0dXIgKEhhcmRpbCwgMjYuIFNlcCAxOTk1LCAxNTowMzoyNyk6CgpTb3dhcyBwYXNzaWVydCwKCndlbm4gbWFuIHNlaW5lIFp3ZWl0aWVzIEFydGlrZWwgc2NocmVpYmVuIGxhZXNzdDoKCj4KPiByem5lCj4KCk5lZWlzc2tsYXIuCgotSGFyZGlsLiBOaWUgbWVociBOaXggTmV1ZXMgYXVmIGRlciBXZWx0LiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTY2hlaXNzIFRhc3RhdHVyIChZZW5kaSwgMjYuIFNlcCAxOTk1LCAxNTowNDowNSk6CiMhIHJuPUhhcmRpbCBydD04MTIxMjQyMDcKCkhhaGFhYSwgZGVyIE5hZWNoc3RlLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNjaGVpc3MgVGFzdGF0dXIgKEhhcmRpbCwgMjYuIFNlcCAxOTk1LCAxNTowNDoxMSk6CiMhIHJuPUhhcmRpbCBydD04MTIxMjQyMDcKClNvcnJ5LCBmYWxzY2ggeml0aWVydC4gU28gbXVzcyBlcyBoZWlzc2VuOgoKPgo+IFJ6bmUKPgoKOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2NoZWlzcyBUYXN0YXR1ciAoVG9zcywgMjYuIFNlcCAxOTk1LCAxNTowNDo0OCk6CiMhIHJuPUhhcmRpbCBydD04MTIxMjQyMDcKbmVuZSwgaXN0IGFic2ljaHQuLi4gaWNoIGhlaXNzZSBlaWdlbnRsaWNoIFJ6bmUsIGFiZXIgYmVpbSBlcnN0ZW4gZWlubG9nZ2VuCnNhc3MgaWNoIGFuIGVpbmVyIGFtaS10YXN0YXR1ci4uLgoKUnpuZS4gTHlnZW5ib2x0IGluIFBhZXJzb2huLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5OTi1DbHViIChHd3lud2FpdGVyLCAyNi4gU2VwIDE5OTUsIDE1OjA2OjA2KToKCkhhbGxvIQoKSWNoIGJlZ3J1ZXNzZSBkaWUgR3J1ZW5kdW5nIGRlcyBOaWVtZWhyIE5JWCBOZXVlcyAoTk5OKS1DbHVicywgdW5kIHRyZXRlIGFscwpNaXRnbGllZCBiZWkuIFVuZCBpbW1lciB3ZW5uIGVzIE5peCBOZXVlcyBoZWlzc3QsIG11c3MgZWluIE1pdGdsaWVkIGV0d2FzCm5ldWVzIHNjaHJlaWJlbiBvZGVyIHp1IGlyZ2VuZGV0d2FzIHNlaW5lbiBTZW5mIGRhenVnZWJlbi4uLiAgTm90ZmFsbHMKR2VydWVjaHRlIGluIGRpZSBXZWx0IHNldHplbiAoYWJlciBuYXR1ZXJsaWNoIG51ciBmcmV1bmRsaWNoZSwgSG9ibywgc2Nob24Ka2xhcikuCgpNaXQgZWluZW0gbGF1dGVuICJOTk4hIgoKRXVlciBHd3luKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5OTi1DbHViIChIYXJkaWwsIDI2LiBTZXAgMTk5NSwgMTU6MDc6MTgpOgojISBybj1Hd3lud2FpdGVyIHJ0PTgxMjEyNDM2NgoKR3d5bncqLAoKRHUgZGFyZnN0IGVpbmZhY2ggbmljaHQgenUgb2Z0ICdubicgZHJ1ZWNrZW4uIDotKQpBYmVyIHRyb3R6ZGVtIHdpbGxrb21tZW4gaW0gQ0x1Yi4KCi1IYXJkaWwuCkxhZXNzdCBzaWNoIHZvbiBIb2JvIGtlaW4gVmVyc2FnZW4gYW5rcmVpZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTY2hlaXNzIFRhc3RhdHVyIChZZW5kaSwgMjYuIFNlcCAxOTk1LCAxNTowNzozMSk6CiMhIHJuPVRvc3MgcnQ9ODEyMTI0Mjg4CgoKRWJlbiwgaW0gNjAxOgoKVG9zcyBzYWd0OiBNaXN0LCBkYSBoYWJlbiB3aXIncyB3b2hsIG1hbCB3aWVkZXIgdWViZXJ0cmllYmVuLgpUb3NzIHNhZ3Q6IEpldHp0IGtuYWxsZW4gZGllIGhpZXIgaW0gU2VrdW5kZW50YWt0IGRpZSBBcnRpa2VsIHJ5bmUuLi4KCihPSywgT0ssIGljaCB3ZWlzcywgZXIgaXN0IHNjaGxlY2h0Li4uKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTk5OLUNsdWIgKEhhcmRpbCwgMjYuIFNlcCAxOTk1LCAxNTowODo1NSk6CiMhIHJuPUhhcmRpbCBydD04MTIxMjQ0MzgKCkhvYm86CmF1Y2ggZnVlciBEaWNoIGdpbHQgZGFzIG1pdCBkZW0genUgb2Z0ICdubic7IGRydWVja2VuLiA6LSkKRnVlciBDbHVibmV1bWl0Z2xpZWRlciBvZGVyIEludGVyZXNzaWVydGUgaXN0IGRpZXNlciBUaXAgc29nYXIga29zdGVubG9zLgoKLUhhcmRpbC4KR3J1ZW5kZXQgZWluZW4gTUctQ2x1YiBuYWNoIGRlbSBhbmRlcmVuLiBXZXIgcHJvZ2d0IGRhcyBDbHViaGF1cz8gV2VyIHByb2dndApkYXMgTWFza290dGNoZW4/IExvY28/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp2ZXJzYWdlbj8gKEd3eW53YWl0ZXIsIDI2LiBTZXAgMTk5NSwgMTU6MDg6NTcpOgoKTmVpbiBIb2JvLCBkaWUgTk5OIHZlcnNhZ2VuIG5pY2h0IC0gc2llIGhhYmVuIG51ciBub2NoIG5pY2h0IGdlbnVlZ2VuZApNaXRnbGllZGVyISBBbHNvOgoKICAgV0VSREVUIE1JVEdMSUVEIElNICBOTk4tQ0xVQi4gRGVyIElOLUNMVUIgaW0gTW9yZ2VuZ3JhdWVuIQoKRXVlciBHd3luKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHZlcnNhZ2VuPyAoWWVuZGksIDI2LiBTZXAgMTk5NSwgMTU6MTA6NDkpOgojISBybj1Hd3lud2FpdGVyIHJ0PTgxMjEyNDUzNwoKV2FzIGhhYmUgaWNoIGRlbm4gdm9uIGVpbmVyIE1pdGdsaWVkc2NoYWZ0PwoKQXVzc2VyIEFyYmVpdCwgbWVpbmUgaWNoLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOTk4tQ2x1YiAoR3d5bndhaXRlciwgMjYuIFNlcCAxOTk1LCAxNToxMTozMik6CiMhIHJuPUhhcmRpbCBydD04MTIxMjQ0MzgKCkhhbGxvIEhhcmRpbCwKCiA+IER1IGRhcmZzdCBlaW5mYWNoIG5pY2h0IHp1IG9mdCAnbm4nIGRydWVja2VuLiA6LSkKCklzdCBvaywga3VlbmZ0aWcgZHJ1ZWNrZSBpY2ggaW1tZXIgJ25ubicgdW5kIHNldHplIGRhbWl0IGVpbmUgbmV1ZSBtYWlsIGluCmRpZSBtcGEgYWIsIHN0YXR0IGVpbmUgYWx0ZSB6dSBsZXNlbi4uLgoKUmVjaHQgc28/CgogIk5OTiEiCgpHd3luKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB2ZXJzYWdlbj8gKEhhcmRpbCwgMjYuIFNlcCAxOTk1LCAxNToxMTo0Mik6CiMhIHJuPVllbmRpIHJ0PTgxMjEyNDY0OQoKQXJiZWl0PwoKTm9lIC0gaW1tZXIgTGVrdHVlcmUgYmVpbSBob2NoaWRsZW4gaW4gZGVyIFNTUCB1bmQgZWluZSBkdXJjaGdlcHJlbGx0ZSAnbicgLQpUYXN0ZS4gOi0pCgpBYiBkYWZ1ZXIuCgotSGFyZGlsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogdmVyc2FnZW4/IChIYXJkaWwsIDI2LiBTZXAgMTk5NSwgMTU6MTI6MzEpOgojISBybj1IYXJkaWwgcnQ9ODEyMTI0NzAyCgpVbmQgd2VubiB3aXIgZ2VudWVnZW5kIHJlcGx5cyBzY2hhZmZlbiwgc3BlbmRpZXJ0IERhbmNlciBzaWNoZXJsaWNoIHdpZWRlcgplaW4gRmFzcyBCaWVyIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB2ZXJzYWdlbj8gKEd3eW53YWl0ZXIsIDI2LiBTZXAgMTk5NSwgMTU6MTY6MzApOgojISBybj1ZZW5kaSBydD04MTIxMjQ2NDkKCkhhbGxvIFllbmRpLAoKRHUgc2NocmllYnN0OgoKID4gV2FzIGhhYmUgaWNoIGRlbm4gdm9uIGVpbmVyIE1pdGdsaWVkc2NoYWZ0PwoKQW50d29ydDogRWluZSBpbW1lciBsZWJlbmRpZ2UgTVBBIC0gRHUgdHJhZWdzdCBhbHNvIHp1ciBMZWJlbmRpZ2tlaXQgdW5kIHp1cgpWZXJiZXNzZXJ1bmcgZGVzIGdhbnplbiBNb3JnZW5HcmF1ZW5zIGJlaS4gVW5kIE1pdGdsaWVkZXIgd2VyZGVuIGF1ZiBJTi1QQVJUWXMKZWluZ2VsYWRlbiwgZGllIG51ciBmdWVyIG1wYS1TY2hyZWliZXIgaW5uZXJoYWxiIHVuZCBhdXNzZXJoYWxiIGRlcwpNb3JnZW5ncmF1ZW5zLi4uICAgOi0pKQoKQXVzc2VyZGVtIGhhc3QgRHUgYWxzIE1pdGdsaWVkIGVpbmUgQ2hhbmNlIGluIGRlbgoKICAgIDEwJS1DbHViIGRlcyBOTk4tQ0xVQgoKYXVmZ2Vub21tZW4genUgd2VyZGVuIC0gd2VubiBtZWhyIGFscyAxMCUgZGVyIG1haWxzIGluIGRlciBNUEEgdm9uIERpciBzaW5kLgoKQWxzbzogV0VSREVUIE1JVEdMSUVEIC0gU0NIUkVJQlQgSU4gREVSIE1QQSEKCiJOTk4hIgoKR3d5bioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHZlcnNhZ2VuPyAoWWVuZGksIDI2LiBTZXAgMTk5NSwgMTU6MTg6NDIpOgojISBybj1Hd3lud2FpdGVyIHJ0PTgxMjEyNDk5MAoKRGFubiB3YXIgYmluIGljaCBzY2hvbiBzZWl0IDMgSmFocmVuIGltIDEwJS1DbHViLi4uCgpFcyBnYWIgZWluZSBaZWl0LCBkYSB3YXJlbiAxMiB2b24gMTcgQXJ0aWtlbG4gaW4gZGVyIFJ1YnJpayAiRW50d2lja2x1bmciIHZvbgoKICAgICBZb3VycyB0cnVseQogICAgICAgICAgICAgICAgIFllbmRpCgoKVW5kIGRhbWFscyBnYWJzIHVuZ2VmYWVociA0IFJ1YnJpa2VuLi4uICAgIEFjaCBqYWFhLi4uLgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOTk4gaW0gTGFnIChHd3lud2FpdGVyLCAyNi4gU2VwIDE5OTUsIDE1OjI4OjU3KToKCkhhbGxvIElociwKCldlbm4gamVkZXIgZGllIExhZy1aZWl0ZW4gbnV0enQsIHVtIGluIGRpZXNlciBaZWl0IG5ldWUgbWFpbHMgaW4gZGllIE1QQSB6dQpzZXR6ZW4sIGRhbm4gZ2lidCBlcyBpbW1lciBuZXVlIE1haWxzLi4uCgogQWxzbywgd2llIEouTC5QLiBzYWdlbiB3dWVyZGU6ICJNYWtlIGl0IHNvISIKCiJOTk4hIgoKR3d5bioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOTk4tQ2x1YiAoUmFmZmksIDI2LiBTZXAgMTk5NSwgMTU6NDU6MzApOgojISBybj1Hd3lud2FpdGVyIHJ0PTgxMjEyNDM2NgoKSWNoIGdsYXViZSBkaWVzZXIgVmVyZWluIHNwcmljaHQgbWljaCBhbi4KCkdydXNzCkguCihOZXVtaXRnbGllZCwgZGFzIHNpY2ggZnJhZ3Qgd2FzIGVzIGRlbm4gc28gYWxzIFZlcmVpbnNsZWlzdHVuZ2VuIGdpYnQKKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgaW0gSW50ZXJOZXQuLi4gKFllbmRpLCAyNi4gU2VwIDE5OTUsIDE2OjI4OjI2KToKCiJDaGktQ2hpbmcsIHRoZSB3YXkgb2YgQmh1ZGRhOgoKPG1pbWluZyBzbGlkZSBhY3Rpb24gb2YgYXV0b21hdGljIHdlYXBvbj4gQ2hpLUNISU5HCjxtaW1pbmcgYXV0b21hdGljIGZpcmU+IEJodWRkYWJ1ZGRhYnVkZGFidWRkYS4uLiIKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgaW0gSW50ZXJuZXQuLi4gKFllbmRpLCAyNi4gU2VwIDE5OTUsIDE4OjQ3OjAyKToKCgpJbmNvcnJpZ2libGUgUHVuc3RlciAtLSBwbGVhc2UgZG8gbm90IGluY29ycmlnZSEKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOTk4tQ2x1YiAoQmlsYm9tLCAyNi4gU2VwIDE5OTUsIDIxOjIxOjI3KToKIyEgcm49UmFmZmkgcnQ9ODEyMTI2NzMwCgpBbHNvLCBpY2ggZmFuZyBkYW4gbWFsIGFuLgoKIEJpbGJvbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTk5OLUNsdWIgKEJpbGJvbSwgMjYuIFNlcCAxOTk1LCAyMToyMjoxNCk6CiMhIHJuPUJpbGJvbSBydD04MTIxNDY4ODcKQWNoLCBzY2hvbiBlaW4gVHlwby4uLgoKIGRhbj1kYW5uCm9kZXIgbmljaHQ/Pz8KIEJpbGJvbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTk5OLUNsdWIgKEphZiwgMjYuIFNlcCAxOTk1LCAyMToyMzozNyk6CiMhIHJuPUJpbGJvbSBydD04MTIxNDY5MzQKCk9laG0uLi4gaWNoIGdsYXViLCBkaWUgS2FyYXRla2Egc3BpZWxlbiBkYSBuaWNodCBtaXQuCgpKYWYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOTk4tQ2x1YiAoQXNtb2RpcywgMjYuIFNlcCAxOTk1LCAyMTo1Nzo0NSk6CiMhIHJuPUphZiBydD04MTIxNDcwMTcKV28gc3BpZWxlbiB3aXIgbmljaHQgbWl0ID8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBOTk4tQ2x1YiAoSmFmLCAyNi4gU2VwIDE5OTUsIDIxOjU5OjU2KToKIyEgcm49QXNtb2RpcyBydD04MTIxNDkwNjUKCkhtLCB3ZW5uIGRhbj1kYW5uIGdlc2V0enQgd2lyZC4KCkphZi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE5OTi1DbHViIChBc21vZGlzLCAyNi4gU2VwIDE5OTUsIDIyOjAxOjI2KToKIyEgcm49SmFmIHJ0PTgxMjE0OTE5NgpBY2ggc28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5OTi1DbHViIChCaWxib20sIDI2LiBTZXAgMTk5NSwgMjI6MTM6NDMpOgojISBybj1Bc21vZGlzIHJ0PTgxMjE0OTI4Ngp3aWVzbyB3b2xsZW4gZGllIG5pY2h0IG1pdCBzcGllbGVuPz8KIEJpbGJvbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTk5OLUNsdWIgKEFzbW9kaXMsIDI2LiBTZXAgMTk5NSwgMjM6MDA6MDEpOgojISBybj1CaWxib20gcnQ9ODEyMTUwMDIzCldpciBzcGllbGVuIGRvY2ggc2Nob24gbWl0LCBpY2ggamVkZW5mYWxscyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RhbW10aXNjaC4uLiAoQ3VjaHVsbGluLCAyNy4gU2VwIDE5OTUsIDAyOjMwOjUxKToKClJvY2h1cyBzYWd0OiBOYWphLCBpY2ggd2VyZGUgd29obCBkb2NoIG5vY2ggZWluZSBNZXR6ZWxnZWdlbmQgZnVlcgpSb2NodXMgc2FndDogTm9ybWFsc3RlcmJsaWNoZSBwcm9nZ2VuIG11ZXNzZW4uLi4Kc2FnIEhtbT8KRHUgc2Fnc3Q6IEhtbT8KPiBWYW5pciBmcmFndDogTm9ybWFsc3RlcmJsaWNoZT8KUm9jaHVzIGdyaW5zdC4KUm9jaHVzIHNhZ3Q6IE5hamEsIGZ1ZXIgbm9ybWFsZSBTcGllbGVyLCBkaWUgZGFubiBtZXJrZW4sIGRhc3Mgc2llClJvY2h1cyBzYWd0OiBzdGVyYmxpY2ggc2luZC4KYXJnbApEdSBhcmdsc3QgZWluIHdlbmlnIHZvciBEaWNoIGhpbi4KPgoKCkF1YSA6KQpDdWNoLi0gIC0gYnJlaXQgZ3JpbnNlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpncmlpbnMgKENhcmFkaHJhcywgMjcuIFNlcCAxOTk1LCAwMzowNjoyOSk6ClNlbGJzdG1vcmQgc2FndDogSWNoIGhhYmUgQW5nc3QuIEljaCBmbHVlY2h0ZS4KU2VsYnN0bW9yZCBnZWh0IG5hY2ggU3VlZGVuLgpTZWxic3Rtb3JkIGtvbW10IGFuLgpTZWxic3Rtb3JkIG9lZmZuZXQgZGFzIEhpbnRlcnppbW1lciB2b24gQ3VjaHVsbGluLgpTZWxic3Rtb3JkIHNhZ3Q6IEljaCBoYWJlIEFuZ3N0LiBJY2ggZmx1ZWNodGUuCgpbQWxsZ2VtZWluOkFzbW9kaXNdIFNlbGJzdG1vcmQgaGF0IEFuZ3N0IHZvciBkZW0gVG9kID8KCgogICAgICAgICAgQ2FyYWRocmFzLCBkZXIgaG9lY2hzdGUgQmVyZyB2b24gTW9yaWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBncmlpbnMgKEFzbW9kaXMsIDI3LiBTZXAgMTk5NSwgMDM6MDg6MDgpOgojISBybj1DYXJhZGhyYXMgcnQ9ODEyMTY3NTg5CnRzdHN0cywgaWNoIGhhYiBkYXMgYWJlciBpbiBhbmRlcmxhbmQgZ2VzYWd0LCBuaWNodCBoaWVyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZ3JpaW5zIChDYXJhZGhyYXMsIDI3LiBTZXAgMTk5NSwgMDQ6MDA6MzApOgojISBybj1DYXJhZGhyYXMgcnQ9ODEyMTY3NTg5CkRhZnVlciB3YXIgZGVyIFJlc3QgaGllci4gVm9yIG1laW5lciBOYXNlLiA6KQoKICAgICAgQ2FyYWRocmFzIC0gbXVzdGVydCBzZWluZSBCZXJnbmFzZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFhYWhsemVpdCAoQ3VjaHVsbGluLCAyNy4gU2VwIDE5OTUsIDA0OjEwOjU4KToKCj4gRGllIERpZW5lcmt1ZWNoZS4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHdlc3Rlbi4KRWluIGRpY2tlciBLb2NoLgo+IGZyYWdlIGtvY2ggbmFjaCBlc3NlbgpEZXIgS29jaCBhbnR3b3J0ZXQ6IEtlbm4gaWNoIG5pY2h0ISBLYW5uIG1hbiBkYXMga29jaGVuPwoKT2VoLi4uIGphPwpDdWNoLi0gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGViZW4gcGFzc2llcnQgKExpLCAyNy4gU2VwIDE5OTUsIDA4OjU3OjE4KToKIyEgcm49VG9zcyBydD04MTIxMjQxMTIKWnVtIFRoZW1hIHR5cG8gaW0ga2FyYXdhbmVuZnVlaHJlciBrYW5uIGljaCBhbHMgZW50c2NodWxkaWd1bmcgendlaSBzYWNoZW4KYW5mdWVocmVuOgoxLiBzdGVodCBkZXIgdHlwbyBpbiBQdW1hcyByZXAtZmlsZSwgdW5kIGRlciBoYXQgaW0gTW9tZW50IHdpY2h0aWdlcmUgZGluZ2UKYWxzIE1VRC4KMi4gQXVjaCBlaW4gTWFnaWVyIGlzdCBudXIgZWluIE1lbnNjaCB1bmQgaGF0IG5pY2h0IGltbWVyIEx1c3QsIHR5cG9zIHp1CmVudGZlcm5lbiAoZ2VodCB6dW1pbmRlc3RlbnMgbWlyIHNvKS4KMy4gV2VubiBkaWUgWmF1YmVyZXJnaWxkZSBmZXJ0aWcgaXN0LCB3ZXJkZSBpY2ggbWljaCB1bSB0eXBvcyBpbiBYaWFuIHVuZCBkZXIKS0FyYXdhbmUgd2lkbWVuLgpCeWUKTGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5OTi1DbHViIChSYWZmaSwgMjcuIFNlcCAxOTk1LCAxMToxMzoxMik6CiMhIHJuPUFzbW9kaXMgcnQ9ODEyMTQ5Mjg2Cj4gV28gc3BpZWxlbiB3aXIgbmljaHQgbWl0ID8KPkhtLCB3ZW5uIGRhbj1kYW5uIGdlc2V0enQgd2lyZC4KCldpc28gZWlnZW50bGljaCBuaWNodCAtIGlzdCBkYXMgTUcga2VpbiBERVVUU0NIc3ByYWNoaWdlcyBtdWQgPwoKR3J1c3MgSC4KKH5kCmdydXNzIEguCi4gbyBPIChPYiB3aXIgamV0enQgaW4gRW50d2lja2x1bmcgd2VpdGVybWFjaGVuIC0gb2RlciBkb2NoIGxpZWJlciBhdWYKc2NobWFycm4gYmxlaWJlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5OTiAoQXJhbnlhLCAyNy4gU2VwIDE5OTUsIDEzOjMzOjE2KToKVGphLCB3ZW5uIHZvcmhpbiBqZW1hbmQgZ2VmcmFndCBoYXQsIHdhcyBpaG0gZGFzIGFsbGVzIGJyaW5ndDoKV2lyIGhhYmVuIG5hdHVlcmxpY2ggYXVjaCBkYXMga29tcGxldHRlIE5OTi1adWJlaG9lciBtaXQgQ2x1YmthcnRlLCBzdWVuZC0KaGFmdCB0ZXVyZW0gTk5OLVQtU2hpcnQsIGRhcyBuaXggd2VydCBpc3QsIGVpbmVyIGFic29sdXQgaGFlc3NsaWNoZW4gTk5OLQpCYXNlYmFsbC1LYXBwZSB1bmQgbmljaHQgenUgdmVyZ2Vzc2VuOiBEYXMgdWx0aW1hdGl2ZSBOTk4tRmV1ZXJ6ZXVnLCBkYXMgc28tCmZvcnQga2FwdXR0IGdlaHQgdW5kIHZvbiBkZW0gaW4gTnVsbGtvbW1hbml4IGRlciBBdWZkcnVjayBhYmdlc2NoZXVlcnQgaXN0LgpKYXdvaGwhCgpBcmFueWEKICAgICAgU296dXNhZ2VuIGJlcnVmc21hZXNzaWcgZ2VnZW4gTml4IE5ldWVzIGF1ZiBkZXIgV2VsdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5OTiAoUmFmZmksIDI3LiBTZXAgMTk5NSwgMTM6MzY6MDEpOgojISBybj1BcmFueWEgcnQ9ODEyMjA1MTk2CihQZmxpY2h0YmVpdHJhZywgZGEgTk4pCgpVbmQgd28gYmVrb21tZSBpY2ggZGllc2VzIFBoYW50YXN0aXNjaGUgU2V0IHp1bSBOdXJOb2NoRE1QcmVpcyA/CgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOTk4gKEJpbGJvbSwgMjcuIFNlcCAxOTk1LCAxMzo1NzozNSk6CiMhIHJuPVJhZmZpIHJ0PTgxMjIwNTM2MQpIbW0uLi4ud2FzIGlzdCBkZW5uIGpldHp0IHJpY2h0aWc/PwogICBkYW4gb2RlciBkYW5uID8/CiAgYmlsYm9tCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTk5OIChSYWZmaSwgMjcuIFNlcCAxOTk1LCAxNDowMToxNik6CiMhIHJuPUJpbGJvbSBydD04MTIyMDY2NTUKCkVpbmlnZW4gd2lyIHVucyBkYXJhdWYgZGFzIGR1IG5hY2ggZGVtIDcuZGFubiBkZW4gc2F0eiBlbmRsaWNoIGJlZW5kZW4Kc29sbHRlc3QgPyBlZ2FsIHdlbGNoZW4gRGFubiBkRHUgaGFzdCA/CgoKR3J1c3MKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5OTiAoQmlsYm9tLCAyNy4gU2VwIDE5OTUsIDE3OjA5OjE2KToKIyEgcm49UmFmZmkgcnQ9ODEyMjA2ODc2CmdpYnQncyBzY2hvbiBlaW5lIE5OTi1naWxkZT8/PyBvZGVyIHdhcz8KIEJpbGJvbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJtZSBMYXJpc3NhIChDYXJhZGhyYXMsIDI4LiBTZXAgMTk5NSwgMDM6MDk6MDMpOgpEdSBzdGVoc3QgaW4gZWluZXIga2xlaW5lbiwgaW4gZGVuIEZlbHNlbiBnZWhhdWVuZW4gS2FwZWxsZS4gS2VyemVuLCBkaWUgaW4Ka2xlaW5lbiBOaXNjaGVuIGluIGRlciBXYW5kIHN0ZWhlbiwgYmVsZXVjaHRlbiBkZW4gUmF1bSBtaXQgZWluZW0gZmxhY2tlcm4tCmRlbiBMaWNodC4gRWluIGFic29sdXRlciBGcmllZGUgaGVycnNjaHQgaGllciwgc28gZGFzcyBkaWUgWndlcmdlIGluIFJ1aGUKenUgaWhyZW4gR29ldHRlcm4gYmV0ZW4ga29lbm5lbi4gVm9yIGFsbGVtIGdlc3RvcmJlbmUgWndlcmdlIGhhYmVuIGhpZXIgZGllCk1vZWdsaWNoa2VpdCwgZHVyY2ggZGFzIEdlYmV0IGlocmVuIGFsdGVuIEtvZXJwZXIgd2llZGVyIHp1IGVyaGFsdGVuLgpBbiBlaW5lciBkZXIgV2FlbmRlIGhhZW5ndCBlaW5lIHN0ZWluZXJuZSBUYWZlbC4KRGVyIEF1c2dhbmcgbGllZ3QgaW0gTm9yZGVuLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogbm9yZGVuLgpTaGFkb3cgUmlrdXMgYXJnbHQsIHdlaWwgZGVyIFVybGF1YiB2b3JiZWkgaXN0LgpKb2ZzIEVsZmNoZW4gTGFyaXNzYSBsYWVjaGVsdCBnbHVlY2tsaWNoLgpNdXBmZWwgKG5ldHp0b3QpLgpTaW1vbmVkIGRpZSBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXJpbi4KRWluIFp3ZXJnZW5wcmllc3Rlci4KRWluIEhhbmRidWNoIGZ1ZXIgQW5mYWVuZ2VyLgpFaW5lIFplaXR1bmcuCj4gUmlrdXMgc2FndDogbGFyaXNzYSBpc3Qgc28gcnVoaWcsIHNlaXQgc2llIGRhcyBub2NvbSB0cmFlZ3QuLi4uClJpa3VzIGdyaW5zdCBkYWVtb25pc2NoLgpEdSBzYWdzdDogdmllbGxlaWNodCB2ZXJhZW5kZXJ0IGRhcyBkYXMgbG9hZF9jaGF0CkNhcmFkaHJhcyBrcmF0enQgc2ljaCBhbiBzZWluZW0gQmVyZ2dpcGZlbC4KPiBSaWt1cyByb3RmbHQuCkR1IGdyaW5zdCBMYXJpc3NhIGFuLgo+IFJpa3VzIHNhZ3Q6IGJlaSBpaHIga29tbXQgaW1tZXIgbnVyICdOaXggZGEhJwpSaWt1cyByb3RmbHQuClJpa3VzIHNhZ3Q6IHdvbGxlbiB3aXIgc2llIGF1cyBkZW0gc3RhbmQtYnkgYmVmcmVpZW4/IDotKQpEdSBncmluc3QuCkR1IHNhZ3N0OiB3aWUgZGVubj8KPiBSaWt1cyBzYWd0OiBuYSBkYXMgbm9jb20gYmVpIGlociBsb2VzY2hlbiwgZGFzIGljaCBpaHIgZ2FiLi4uCkR1IHNhZ3N0OiB3YXNzbiBlaW4gbm9jb20/IG5vIGNvbW1lbnQ/Cj4gUmlrdXMgbmlja3QgenVzdGltbWVuZC4KUmlrdXMgc2FndDogZGEgZ2VodCBrZWluZSBlaW5nYWJlIG1laHIsIGtvbW10IGltbWVyIG51ciBOSVggREEKUmlrdXMgc2FndDogZWluIGZpbHRlciBmdWVyIGVpbmdhYmVuClJpa3VzIHNhZ3Q6IGF1c2dhbmcgZ2xlaWNoIG51bGwKCgogICAgICBDYXJhZGhyYXMgLSBhbXVlc2llcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtbW0uLi4gKEJhbWJ1bGtvLCAyOC4gU2VwIDE5OTUsIDEyOjU4OjA3KToKPiBsaWVzIHpldHRlbApBdWYgZGVtIFpldHRlbCBzdGVodCBmb2xnZW5kZXM6CkVzIGxhZXVmdCBub2NoIGtlaW4gUmVubmVuLiBSeHRlY2ggaGF0IHNpY2ggYW5nZW1lbGRldC4KPiBtZWxkZSByZW5uZW4gYW4KRHUga2FubnN0IERpY2ggbmljaHQgYW5tZWxkZW4hIEdydW5kOgpFcyBsYWV1ZnQgZ2VyYWRlIGVpbiBSZW5uZW4hCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmluIGljaCBzbyBzY2hyb2Vja2xpY2g/ICpzbmlmZiogKFRhc2hhLCAyOC4gU2VwIDE5OTUsIDE0OjM5OjM4KToKZ3JhZGUgZWJlbjoKCkR1IHJ1ZnN0OiBBUlJSUlJHSEhISEhISEhISEhISEhISCEhISBZdXJpa28gaWNoIGtudWRkZWwgRGljaApEdSBydWZzdDogZ2xlaWNoISEhISEhISEhISEhISEKPiBZdXJpa28gaGF0IGdlcmFkZSBkaWUgVmVyYmluZHVuZyB6dSBNb3JnZW5HcmF1ZW4gZ2VrYXBwdC4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFl1cmlrby4KWXVyaWtvICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKCndlaW5lbmQsIFRhc2hhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpad2VyZ2VuZ2VydWNoIChSeW5lLCAyOC4gU2VwIDE5OTUsIDE4OjM5OjEwKToKU293YXMgcGFzc2llcnQsIHdlbm4gbWFnaWVyIGlocmUgR2VnZW5kIG5pY2h0IGdhbnogZ3J1ZW5kbGljaCBiZXNjaHJlaWJlbi4uLgoKTmV1bGljaCBpbSB2ZXJsb3JlbmVuIExhbmQ6IHUgYmx1bWVuIC0+IHNjaG51cHBlciBkb2NoIG1hbCBkYXJhbi4Ka3JhdHouCnNjaG51cHBlcgpFcyByaWVjaHQgaGVycmxpY2ggaGllci4KCi4uLgpzY2hudXBwZXIgcnluZQpFcyByaWVjaHQgaGVycmxpY2ggaGllci4KLi4uCnNjaG51cHBlciBrYWNrZQpFcyByaWVjaHQgaGVycmxpY2ggaGllci4KCgpOYWphLCBkaWUgRWlud29obmVyIGRpZXNlcyBMYW5kZXMgc2NoZWluZW4gd2lya2xpY2ggc2Nob2VuZSBHZXJ1ZWNoZSBuaWNodCB6dQprZW5uZW4uIEFiZXIgaW1tZXJoaW4gbW9lZ2VuIHNpZSBkZW4gR2VydWNoIHZvbiBad2VyZ2VuLiBIYWIgaWNoIGRvY2ggaW1tZXIKZ2VzYWd0LiBFaW4geml2aWxpc2llcnRlcywgd29obGVyem9nZW5lcyBWb2Vsa2NoZW4sIGRpZSBrdXJ6ZW4gLi4uCgpSem5lLiBLYW1wZnp3ZXJnLiBXb2hscmllY2hlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdXMgZGVyIFJlaWhlIGViZW4gcGFzc2llcnQsIEZvbGdlIDEgKFlldGksIDI4LiBTZXAgMTk5NSwgMTk6NTg6NDYpOgpFaW5lIFRyb2xsZnJhdSB6aWVodCBlaW5lbiBQdWxsb3ZlciBhdXMuCkVpbmUgVHJvbGxmcmF1IHppZWh0IGVpbmVuIExlZ2dpbnMgYXVzLgpEaWUgVHJvbGxmcmF1IGZhZWxsdCB0b3QgenUgQm9kZW4uCgpuaWNoIG1hbCBsZWljaGVuIGthbm4gbWFuIGhpZXIgZmxlZGRlcm4gOikpCllldGkgOikpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOb2NoIHNvbmUgc2Nob3RlIGluIE9ya2hhdXNlbiAoWWV0aSwgMjguIFNlcCAxOTk1LCAyMToyMTo0Myk6CnJhZ2UgYnVlcmdlcm1laXN0ZXIgbmFjaCBob2JiaXRzCkRlciBPcmsgc2FndDogRGllIEhvYmJpdHMgc2luZCBub2NoIG5pY2h0IGxhbmdlIGhpZXIuIFNpZSBoYWJlbiBpcmdlbmRldHdhcwpEZXIgT3JrIHNhZ3Q6IHZvbiBlaW5lbSBBdWZ0cmFnIGVyemFlaGx0LiBNZWhyIGthbm4gaWNoIERpciBuaWNodCB1ZWJlciBzaWUKRGVyIE9yayBzYWd0OiBzYWdlbi4KCj4gZnJhZ2UgbWVycnkgbmFjaCBhdWZ0cmFnCk1lcnJ5IHNjaGF1dCBEaWNoIGZyYWdlbmQgYW4uCj4gRWluIE9yayBrb21tdCBhbi4KZnJhZ2Ugc2FtIG5hY2ggYXVmdHJhZwpTYW0gc2NoYXV0IERpY2ggZnJhZ2VuZCBhbi4KZnJhZ2UgZnJvZG8gbmFjaCBhdWZ0cmFnCkZyb2RvIHNjaGF1dCBEaWNoIGZyYWdlbmQgYW4uCmZyYWdlIFBlcmVncmluIG5hY2ggYXVmdHJhZwpQaXBwaW4gc2NoYXV0IERpY2ggZnJhZ2VuZCBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvIGlzdCBkYXMgPyAoVmFuaXIsIDI5LiBTZXAgMTk5NSwgMDA6MTg6MzkpOgpHZXJhZGUgYmVpbSBtZXR6ZWxuOgoKRHUgaGFzdCBqZXR6dCAxMTMgTGViZW5zcHVua3RlIHVuZCAyMCBNYWdpZXB1bmt0ZS4KICBEdSBncmVpZnN0IGRlbiBHYXJkZXdhZWNodGVyIG1pdCBkZW0gQmx1dHNhdWdlci1TY2h3ZXJ0IGFuLgogIER1IHRyaWZmc3QgZGVuIEdhcmRld2FlY2h0ZXIgaGFydC4KICBEZXIgR2FyZGV3YWVjaHRlciBncmVpZnQgRGljaCBtaXQgZGVtIExhbmdzY2h3ZXJ0IGFuLgogIERlciBHYXJkZXdhZWNodGVyIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KRHUgaGFzdCBqZXR6dCAxMDEgTGViZW5zcHVua3RlIHVuZCAyMCBNYWdpZXB1bmt0ZS4KRGVyIEdhcmRld2FlY2h0ZXIgZ2VodCB6dW0gS2FmZmVldHJpbmtlbi4KRHUgdmVyZm9sZ3N0IGpldHp0IGVpbmVuIEdhcmRld2FlY2h0ZXIuCkR1IGhhc3QgamV0enQgMTAyIExlYmVuc3B1bmt0ZSB1bmQgMjEgTWFnaWVwdW5rdGUuCgpEZXIgc3RhbmQgYXVmIGRlciBTY2h3ZWxsZSA6KAoKRWluIHJhdGxvc2VyIFZhbmlyLgoKSWNoIGdlaGUgYXVjaCBlcnN0IG1hbCB0YW5rZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJc3QgZXIgbnVuIGRhIG9kZXIgbmljaHQ/IChCYW1idWxrbywgMjkuIFNlcCAxOTk1LCAwMDo0MjoxNCk6CkR1IGthbm5zdCBoaWVyIG1pdCBgYHRyZXRlIGdpbGRlIGJlaScnIGRlciBHaWxkZSBiZWl0cmV0ZW4sCm1pdCBgYGxlcm5lIDxuYW1lPicnIGVpbmVuIG5ldWVuIFNjaGxhZyBvZGVyIGVpbmUgbmV1ZSBBYndlaHIgbGVybmVuLAptaXQgYGB1ZWJlIDxuYW1lPicnIGRpZXNlIHVlYmVuCnVuZCBtaXQgYGBwcnVlZmUnJyBkaWUgUHJ1ZWZ1bmcgZnVlciBkZW4gbmFlY2hzdGVuIEdyYWQgYWJsZWdlbi4KTWl0IGBgdWViZSBhYndlaHInJyBrYW5uc3QgRHUgZGllc2UgZ2VnZW4gRGVpbmVuIFNlbnNlaSBhdXNwcm9iaWVyZW4uCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3RlbiB1bmQgd2VzdGVuLgpGdW5ha29zaGkuIFsvZ2lsZGVuL21vbi5rYXJhdGUvc2Vuc2VpIzExMjNdCkVpbmUgWmVpdHVuZy4gWy9vYmovemVpdHVuZ3NhdXRvbWF0IzExMjJdCj4gcHJ1ZWZlCkxlaWRlciBpc3QgZGVyIFNlbnNlaSBtb21lbnRhbiBuaWNodCBkYS4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgYmluIGljaCA/IChWYW5pciwgMjkuIFNlcCAxOTk1LCAwMDo0ODozNik6CnRyYWdlIGhlbG0gZGVyIHJpZXNlCkR1IHppZWhzdCBkZW4gVGFybmhlbG0gYW4uCkR1IHNwcmljaHN0IGRpZSBtYWdpc2NoZW4gV29ydGUgOiAnRGVtIEhhdXB0IGZ1ZWd0IHNpY2ggZGVyIEhlbG0sIG9iCmRlciBzaWNoIGRlciBaYXViZXIgYXVjaCB6ZWlndCA/IE5hY2h0IHVuZCBOZWJlbCwgbmllbWFuZCBnbGVpY2ggIScKRHUgYmlzdCBqZXR6dCBlaW4gRnJvc2NoIQo+IG4KTWFuIGxhZXNzdCBEaWNoIGluIERlaW5lciBWZXJrbGVpZHVuZyBhbHMgUmllc2UgcGFzc2llcmVuLgpSaWVzZW5oZWltLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuIHVuZCB3ZXN0ZW4uCgpXaWVkZXIgbWFsIGxlaWNodCBpcnJpdGllcnQsIHZhbmlyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc28gZ2VodHMgYXVjaCAoTXVwZmVsLCAyOS4gU2VwIDE5OTUsIDAxOjE4OjAxKToKCkRpZSBSaGVpbnRvZWNodGVyIHJ1ZmVuIDogJ1NlbGJzdG1vcmQgaGF0IE5pYmVsaGVpbSB2b24gQWxiZXJpY2ggYmVmcmVpdCAhJwoKZ3JpbnNlbmQsIG11cGZlbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmluIGljaCBMZWJlbnNtdWVkZSA/IChTZWxic3Rtb3JkLCAyOS4gU2VwIDE5OTUsIDAxOjMyOjEzKToKQW5keSBzYWd0OiBoYWVoaGggPz8/Cj5BbmR5IGdydWVzc3QgU2VsYnN0bW9yZC4KQW5keSBzYWd0OiBIaSBTZWxic3Rtb3JkLCBoYXN0ZSBoZXV0ZSBzY2hvbiBSb2NodXMgYW5nZWtvdHp0PwpBbmR5IGdlaHQuCgpIbW1tLCBvYiBkZXIgbWljaCBkYW5uIHVtYnJpbmd0ID8KICAgICAgU2VsYnN0bW9yZCAobGViZW5zbXVlZGUpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaG5lIHdvcnRlIChCYW1idWxrbywgMjkuIFNlcCAxOTk1LCAwMzoyNzowMCk6CiBbQWxsZ2VtZWluOlp1ZXJpbGV1XSBpY2ggYmluIHJlZ2lvbnNtaXRhcmJlaXRlciB2b24gZHNjaHVuZ2VsCmZpbmdlciB6dWVybGlsZXUKWnVlcmlsZXUgaXN0IGVpbmdlbG9nZ3QsCnVuZCB6d2FyIHZvbjogZXppbmZvLmV0aHouY2ggKDEyOS4xMzIuMi43MikgW1NjaHdlaXpdLgpWb2xsZXIgTmFtZTogQmFieSBadWVyaWxldSBTY2hudXBmZW5rb2VuaWcgdW5kIFZpcmVudHJhZWdlciAhClJhc3NlOiBEdW5rZWx6d2VyZywgICAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAyMmQgMTU6NTk6MDQgICBNYWdpZXJsZXZlbDogMjUKRS1NYWlsLUFkcmVzc2U6IGRlbHBoaW5AZXppbmZvLnZtc21haWwuZXRoei5jaApWZXJoZWlyYXRldCBtaXQ6ICA9OikKU2VpdCBkZW0gMzAuMTEuJzk0IGJlcmVpdHMgNiBtYWwgZ2VzdG9yYmVuClJlZ2lvbnNtaXRhcmJlaXRlciB2b246IFVudGVyd2VsdC4KUHJvamVrdDogRGVhdGgvQmxhY2stTWV0YWwgaXN0IGVpbmUgTGViZW5zZWluc3RlbGx1bmcgIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2VsdHNhbWUgSGVpbHVuZyAoQXNtb2RpcywgMjkuIFNlcCAxOTk1LCAwNjo1ODozOCk6CgpbQWJlbnRldWVyOl0gU2VsYnN0bW9yZCBoYXQgZGVtIEhleGVyIEhlaWx1bmcgZ2VicmFjaHQuCkNsb2RzYWhhbXAgcnVmdDogU2VsYnN0bW9yZCBtZWluZW4gRGFuayAhIEljaCBiaW4gd2llZGVyIGdlc3VuZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdWVyIEFxdWF0b2xsIDopIChDYXJhZGhyYXMsIDI5LiBTZXAgMTk5NSwgMTU6Mjk6MDYpOgpbQWJlbnRldWVyOlBpenphXSBXSUUgS09NTUUgSUNIIEFVUyBERU0gV0VJSEVSICEhISEhCltBYmVudGV1ZXI6U2VsYnN0bW9yZF0gaGFzdGUgZGVpbmUgc2FjaGVuIG5vY2ggZGFiZWkgPwpbQWxsZ2VtZWluOlBpenphXSBKQQpbQWJlbnRldWVyOkdyaW1tYm9ybl0gU2xlYnN0bG9lc2NodW5nID0gc2VsYnN0bG9lc2NodW5nCltBYmVudGV1ZXI6Q2F0d2VhemxlXSBEYSBrb21tdCBnbGVpY2ggZWluIENhcHMtbG9jay1nZXBsYWd0ZXIgS2VybCBzbyB3aWUgRHUsCltBYmVudGV1ZXI6Q2F0d2VhemxlXSBkZXIgaG9sdCBEaWNoIGFiCltBYmVudGV1ZXI6U2VsYnN0bW9yZF0gd2FzIGRlbm4gYWxsZXMgPwpbVG9kOl0gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIFBpenphIHVtZ2VicmFjaHQuCltBbGxnZW1laW46Q2FyYWRocmFzXSBIdW5nYSEKPiBbQWJlbnRldWVyOkdyaW1tYm9ybl0gTnVuIGxhc3N0IGRpZSBTcGllbGVyIGRvY2ggbWFsIGF1ZiBiIGFsbGVpbmUhCltUb2Q6WmFyZG96XSBNYW4sIGhhdHRlIGljaCBlaW5lbiBIdW5nZXIgOi0pCltUb2Q6R3JpbW1ib3JuXSBNaXIgYXVjaCBlaW4gU3R1ZWNrIGJpdHRlIQpbVG9kOl1EZXIga2xlaW5lIEh1bmdlciBoYXQgZ2VyYWRlIFphcmRveiB1bWdlYnJhY2h0IQpbQWxsZ2VtZWluOkFxdWF0b2xsXSBLYW5uIGRhcyBlaW5lciBwb3N0ZW4/IEljaCBoYWIga2VpbiBDdXQmUGFzdGUgO18pCltUb2Q6R3JpbW1ib3JuXSBIdWNoLCBQaXp6YSBpc3QgYW4gZWluZW0gbmljaHQgZXhpc3RpZXJlbmRlbiBmaWxlCltUb2Q6R3JpbW1ib3JuXSBnZXN0b3JiZW4uLi4KW0FsbGdlbWVpbjpHcmltbWJvcm5dIEFuZGVyZXJzZWl0cyBiaW4gaWNoIGF1Y2ggbnVyIGVpbmZhY2ggenUgZGFlbWxpY2guIDotKQoKCiAgICAgIENhcmFkaHJhcyAtIHNhZ3Qgbml4IGRhenUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdXMgZGVyIFJlaWhlIGViZW4gcGFzc2llcnQsIEZvbGdlIDEgKFllbmRpLCAyOS4gU2VwIDE5OTUsIDE5OjQ2OjI4KToKIyEgcm49WWV0aSBydD04MTIzMTQ3MjYKCkhhdCBzaWUgc2ljaCBlcmthZWx0ZXQgdW5kIGlzdCBkYXJhdWZoaW4gc3BvbnRhbiB2ZXJzY2hpZWRlbj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIVU5HQSEhISAoUmFmZmksIDI5LiBTZXAgMTk5NSwgMTk6NTY6MDYpOgpHZXJhZGUgaW0gUGFyayBkZXIgRnJldW5kZToKClBpenphIGtvbW10IGFuLgpQaXp6YSBzYWd0OiBIaQo+IHNhZyBSZUhpCkR1IHNhZ3N0OiBSZUhpClBpenphIHNhZ3Q6IGhhc3RlIGh1bmdlcj8/Cj4gc2FnIGpvIC0gc29nYXIgUkwgbWFlc3NpZwpEdSBzYWdzdDogam8gLSBzb2dhciBSTCBtYWVzc2lnClBpenphIHNhZ3Q6IHNjaG5laWQgZGlyIG5lbiBTdHVlY2sgdm9uIG1pciBhYiEhIQo+IHVudCBwaXp6YQpEYXMgaXN0IFBpenphLiBFciBpc3Qgc29nYXIgZnVlciBlaW5lbiBFbGYgcmVsYXRpdiBncm9zcy4uCkVyIGlzdCBhYnNvbHV0IGZpdC4KUGl6emEgaGF0IGtlaW5lIFJ1ZXN0dW5nIGFuIHVuZCBrZWluZSBXYWZmZSBnZXp1ZWNrdC4KUGl6emEgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCj4gc2NobmVpZGUgc3R1ZWNrIHZvbiBwaXp6YSBhYgpXaWUgYml0dGU/CgpHcnVzcwpILgooaW1tZXIgYXVmIGRlciBTdWNoZSBuYWNoIGRlciBTeW50YXgpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTk5OIChHd3lud2FpdGVyLCAzMC4gU2VwIDE5OTUsIDEwOjM4OjIyKToKIyEgcm49QXJhbnlhIHJ0PTgxMjIwNTE5NgoKSGFsbG8gQXJhbnlhLAoKRHUgaGFzdCBiZWdyaWZmZW4gd2llIGVzIGdlaHQuIEljaCBzY2hsYWdlIHZvciwgZGFzcyBEdSBtaXQgZGVtIE1lcmNoYW5kaXNpbmcKenVnbGVpY2ggYXVjaCBkZW4gU2NoYXR6bWVpc3Rlci1Qb3N0ZW4gdWViZXJuaW1tc3QuIER1IGhhc3QgZGVuIHJpY2h0aWdlbgpHZWlzdCEKCk1laW4gQmVpdHJhZyB6dW0gTWVyY2hhbmRpc2luZzogTk5OLUNsdWJ3aW1wZWwgbWl0IFN0YW5kZXIgZnVlciBkaWUKU3RhbW10aXNjaGUuCgpOTk4hCgpFdWVyIEd3eW4qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3dWVuc2NoZW4gc2NoZWludCBzY2h3ZXIgenUgc2VpbiAoUm9taWxpLCAgMS4gT2t0IDE5OTUsIDE3OjU0OjQyKToKCklORk8gdm9uIHR3aWdneSBpbiAvZC9kc2NodW5nZWwvcm9taWxpL29ya2hvcnQvbW9uL2RzY2hpbm4gKDI1LiBKdWwgMTk5NSk6Cnd1bm5zY2gKSU5GTyB2b24geWV0aSBpbiAvZC9kc2NodW5nZWwvcm9taWxpL29ya2hvcnQvbW9uL2RzY2hpbm4gKDI1LiBKdWwgMTk5NSk6Cnd1ZXNjaGVuCklORk8gdm9uIHBoeWdvcyBpbiAvZC9kc2NodW5nZWwvcm9taWxpL29ya2hvcnQvbW9uL2RzY2hpbm4gKDI3LiBKdWwgMTk5NSk6CndldW5zY2hlbgpJTkZPIHZvbiBtZWxsb3JuIGluIC9kL2RzY2h1bmdlbC9yb21pbGkvb3JraG9ydC9tb24vZHNjaGlubiAoIDIuIFNlcCAxOTk1KToKd3VzY2gKSU5GTyB2b24gYnJ1bW1lbCBpbiAvZC9kc2NodW5nZWwvcm9taWxpL29ya2hvcnQvbW9uL2RzY2hpbm4gKDEyLiBTZXAgMTk5NSk6CndldW5zY2gKSU5GTyB2b24geWV0aSBpbiAvZC9kc2NodW5nZWwvcm9taWxpL29ya2hvcnQvbW9uL2RzY2hpbm4gKDExLiBBdWcgMTk5NSk6Cnd1bmVuc2NoZW4KSU5GTyB2b24gZ3VsZHVrYXQgaW4gL2QvZHNjaHVuZ2VsL3JvbWlsaS9vcmtob3J0L21vbi9kc2NoaW5uICgxMC4gQXVnIDE5OTUpOgp3dW5zaGMKCgpSb21pbGksIGJlYXJiZWl0ZXQgZ3JhZCBpaHIgLnJlcC1maWxlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHcnVlbnpldWcgKE1hcnMsICAxLiBPa3QgMTk5NSwgMjI6NTI6MDkpOgoKCj4ga3dlciBmcm9zY2gKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIFNvbiwgIDEuIE9rdCAxOTk1LCAyMjozNzoxMyAoMyBUZWlsbmVobWVyKQoKR2FzdDIuLi4uLi4uLi4uLnMgICpLZW5hcmEuLi4uLi4uLi5zICBBcmljb24uLi4uLi4uLi4uegoKPiBmaW5nZXIgZ2FzdDIKR2FzdDIgaXN0IGVpbmdlbG9nZ3QsCnVuZCB6d2FyIHZvbjogQnJhdW5zY2h3ZWlnLgpJZGxlLVplaXQ6IDAwOjAyOjQzClZvbGxlciBOYW1lOiBHYXN0MgpSYXNzZTogPGtlaW5lPiwgICAgR2VzY2hsZWNodDogd2VpYmxpY2gKQWx0ZXI6IDAwOjA2OjU4ICAgU3BpZWxlcmxldmVsOiAxCktlaW5lIC5wbGFuLURhdGVpLgoKPiBrd2VyIHdlaWJsaWNoIHVuZCBmcm9zY2gKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIFNvbiwgIDEuIE9rdCAxOTk1LCAyMjo0NzoyMyAoMCBUZWlsbmVobWVyKQoKPiBrd2VyIG1hZW5ubGljaCB1bmQgZnJvc2NoCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBTb24sICAxLiBPa3QgMTk5NSwgMjI6Mzc6MjEgKDMgVGVpbG5laG1lcik+CgpHYXN0Mi4uLi4uLi4uLi4ucyAgKktlbmFyYS4uLi4uLi4uLnMgIEFyaWNvbi4uLi4uLi4uLi56CgoKCkhtbSwgZGVyIEZyb3NjaCwgYWxzbyBtYWVubmxpY2ggOikKCldpZSB3YWVyZSBlcyBtaXQgIkdhc3QyIGRpZSBLcm9ldGUiID8gICAgTmljaHQgZ3V0PyA7LSkKCgpNYXJzIGRlbmt0IC4gbyBPICh3YXMgaXN0IGdydWVuLCB1bmQgd2lyZCByb3QsIHdlbm4gZXMgaW4gZGllIHNzcCByZW5udD8pCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktpbGxlciB1bnRlcndlZ3MuLi4gKFllbmRpLCAgMi4gT2t0IDE5OTUsIDEyOjU5OjA1KToKCi4uLm9kZXI6IEVzIGlzdCBuaWNodCBsZWljaHQsIGVpbiBHb3R0IHp1IHNlaW4sCm9kZXI6IExlZ2FsaXplIERlaWNpZGUsIG9kZXIgc28uLi4KCgpEdSBiZWZpbmRlc3QgRGljaCBhdWYgZWluZW0gc2NobWFsZW4gV2VnIGR1cmNoIGRlbiBEc2NodW5nZWwgZGVyIEluc2VsClRpdGl3dS4gRGVyIHZvbiBXZXN0ZW4gbmFjaCBPc3RlbiB2ZXJsYXVmZW5kZSBXZWcgZ2FiZWx0IHNpY2ggaGllciBhdWNoCm5vY2ggbmFjaCBTdWVkZW4sIHdvIGVyIGRlbiBCZXJnIGhpbnVudGVyZnVlaHJ0LiBJbiBkZW4gYW5kZXJlbiBSaWNodHVuZ2VuCmJlZmluZGV0IHNpY2ggdW5kdXJjaGRyaW5nbGljaGVyIERzY2h1bmdlbC4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHVudGVuLCBvc3Rlbiwgc3VlZGVuIHVuZCB3ZXN0ZW4uCktMSU5HRSAuLgo+IGwga2xpbmdlCkRhcyBpc3QgS0xJTkdFLiBFciBpc3QgZnVlciBlaW5lbiBLaWxsZXIgbWl0dGVsZ3Jvc3MuCkVyIGlzdCBhYnNvbHV0IGZpdC4KRXIgaXN0IGVpbiBTb2VsZG5lciB1bmQgc2VpbiBQcmVpcyBpc3QgaG9jaC4KS0xJTkdFIGhhdCBTdGVwcHNjaHVoZSBhbiB1bmQga2VpbmUgV2FmZmUgZ2V6dWVja3QuCj4gS0xJTkdFIHNhZ3Q6IG5hLCBhbGxlcyBrbGFyID8hPwoKa2ljaGVyCkR1IGtpY2hlcnN0LiAoV2llIGFsYmVybiB2b24gRGlyKQpEdSBzYWdzdDogIkVyIGlzdCBlaW4gU29lbGRuZXIgdW5kIHNlaW4gUHJlaXMgaXN0IGhvY2guIEtMSU5HRSBoYXQKRHUgc2Fnc3Q6IFN0ZXBwc2NodWhlIGFuIHVuZCBrZWluZSBXYWZmZSBnZXp1ZWNrdC4iCkR1IHNhZ3N0OiBUb2xsZXIgS2lsbGVyLi4uCktMSU5HRSBzdGVwcHQgd2llIEZyZWQgQXN0YWlyLgpEdSBzYWdzdDogV2FzIGtvc3Rlc3QgRHUgZGVubiBzbz8KS0xJTkdFIHNhZ3Q6IGtvbW10IGF1ZiBkZW4gYXVmdHJhZyBhbgpEdSBzYWdzdDogSG1tbS4uLiBFaW5tYWwgSm9mPyA7KQo+IEtMSU5HRSBzYWd0OiBzZWxic3Rtb3JkIGlzdCB2ZXJkYW1tdCB0ZXVlcgpEdSBraWNoZXJzdC4gKFdpZSBhbGJlcm4gdm9uIERpcikKS0xJTkdFIHNhZ3Q6IGRhcyBrb3N0ZXQgZGFzIGxlYmVuCkR1IHNhZ3N0OiBEdSBtdXNzdCBlcyBoYWx0IHZvZWxsaWcgc2F1YmVyIG1hY2hlbi4uLgpLTElOR0Ugc2FndDogaWNoIGtvZW5udGUgaWhuIGRlc3RydWN0ZW4sIGFiZXIgZXIgc2l0enQgYW0gc2VydmVyIHVuZCBrb2VubnRlCktMSU5HRSBzYWd0OiBtaWNoIGhlcm5hYyBsb2VzY2hlbgpEdSBzYWdzdDogSG1tbS4uLiBTY2hsZWNodC4uLgpLTElOR0Ugc2FndDogc2VlZWVlZWhyIHVucHJha3Rpc2NoIDspCkR1IHNhZ3N0OiBXaWV2aWVsIGlzdCAidmVyZGFtbXQgdGV1ZXIiPwpLTElOR0Ugc2FndDogaWNoIGRlbmtlIGRhIHNvIGFuIDIwMDAwMDAwMDAwMDAwMDAwMDAgTXVlbnplbgpLTElOR0Ugc2FndDogVkIKS0xJTkdFIHNhZ3Q6IHdlaWwgaWNoIGRpY2ggcGVyc29lbmxpY2gga2VubmUgbGFzcyBpY2ggZGlyIDEwJSBuYWNoIHVuZCAzJQpLTElOR0Ugc2FndDogc2NvbnRvIGJlaSBiYXJhaGx1bmcKbGFjaGUKRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpLTElOR0UgZnJhZ3Q6IFN0aW1tdCB3YXMgbmljaHQ/CkR1IHNhZ3N0OiBVbmQgd2llIHNpZWh0IGVzIG1pdCBSYXRlbnphaGx1bmcgYXVzPwpEdSBzYWdzdDogRHUgbXVzc3QgenVnZWJlbiwgZGFzcyBkaWVzZSBTdW1tZSBpbSB3YWhyc3RlbiBTaW5uZSBkZXMgV29ydGVzCkR1IHNhZ3N0OiBfdW50cmFnYmFyXyBpc3QuLi4KS0xJTkdFIHNhZ3Q6IGd1dCBhYmVyIG5pY2h0IG1laHIgYWxzIDQgbW9uYXRzcmF0ZW4KRHUgc2Fnc3Q6IFJlY2huZSBtYWwgYXVzLCB3YXMgbWFuIGRhIGFuIFNUIGJyYXVjaHQuCktMSU5HRSBzYWd0OiB3ZW5uIGR1IDEwJSBhYmJlemFobHQgaGFzdCBiaXN0IGR1IGVoIG1hZ2llciB1bmQga2FubnN0IGRlbiByZXN0CktMSU5HRSBzYWd0OiBjbG9uZW4KRHUgc2Fnc3Q6IE5hIGRhbm4uLi4KRHUgc2Fnc3Q6IFdpZXZpZWwgaXN0IFZvcnNjaHVzcz8KS0xJTkdFIGZyYWd0OiBFcndhZWhudGUgaWNoIHNjaG9uIGRhcyBkaWUgaGFlbGZ0ZSBpbSB2b3JhdXMgZmFlbGxpZyBpc3Q/CkR1IGJyaWNoc3Qgdm9yIExhY2hlbiB6dXNhbW1lbi4KRHUgc2Fnc3Q6IEFlaCAtLSBuZWluLCBlcndhZWhudGVzdCBEdSBuaWNodC4KS0xJTkdFIHNhZ3Q6IGRhcyBpc3Qgc28gdWVibGljaApEdSBzYWdzdDogTWFsIHNlaGVuLCBvYiBpY2ggZWluIHBhYXIgYW5kZXJlIHp1bSBNaXRtYWNoZW4gYmV3ZWdlbiBrYW5uLi4uCktMSU5HRSBzYWd0OiBkZXIgcHJlaXMgZ2lsdCBsZWlkZXIgcHJvIHBlcnNvbgpEdSBzYWdzdDogVGphLCBpY2ggbWVsZGUgbWljaCBkYW5uIHdpZWRlciwgd2VubiBpY2ggTWFnaWVyIGJpbi4uLgpLTElOR0Ugc2FndDogZ3V0LCBpY2ggd2FydGUgc29sYW5nZSA7KQpEdSBzYWdzdDogSG1tbS4uLiBTY2hhZGUsIGljaCBoYWV0dGUgZ2VybmUgSm9mcyBHZXNpY2h0IGdlc2VoZW4uLi4KPiBraWNoZXJlCkR1IGtpY2hlcnN0LiAoV2llIGFsYmVybiB2b24gRGlyKQoKClRqYSwgSm9mLCB3aWUgZXMgYXVzc2llaHQgYnJhdWNoc3QgRHUgYXVjaCBpbiBadWt1bmZ0IGtlaW5lIExlaWJ3YWNoZS4uLgpBY2gsIHVlYnJpZ2Vucywgd2llIHNpbmQgZGVubiBkaWUgTGViZW5zdmVyc2ljaGVydW5nc3JhdGVuIGZ1ZXIgZWluZW4gR290dD8KCgpBdSB3ZWlhLCBkaWVzZXIgQXJ0aWtlbCBicmluZ3QgbWljaCBhdWYgZGllIG1iYW5pc2gtTGlzdGUgdW5kIEtMSU5HRSB1bQp1bmdlZmFlaHIgMiBNYWdpZXJsZXZlbC4uLgpWZXJzY2h3b2VydW5nIGdlZ2VuIGRpZSBPYnJpZ2tlaXQsIGtvbnNwaXJhdGl2ZSBUcmVmZmVuLCBQbGFudW5nIGVpbmVzIE1vcmRzLApnZXBsYW50ZXMgRGVpemlkLCBCaWxkZXJzdHVybSB1bmQgS2V0emVyZWkuLi4gIGRhcyBnaWJ0LCBncm9iIGdlcmVjaG5ldCwKb2NoLCBzbyB1bmdlZmFlaHIgMzUxIFppbGxpb25lbiBKYWhyZSBGZWdlZmV1ZXIuIEhhdCBqZW1hbmQgR3JpbGx3dWVyc3RjaGVuPwoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSb2RlbG4gaXN0IGdlaWwhISEgKENhdHdlYXpsZSwgIDIuIE9rdCAxOTk1LCAxOTo1NzozMSk6CmdvdG8gemFyZG96CnNhZyBIaSEKRHUgc2Fnc3Q6IEhpIQpzYWcgemFyZG96PwpEdSBzYWdzdDogemFyZG96PwpaYXJkb3ogc2FndDogS2VpbmUgWmVpdApzYWcgd2ljaHRpZwpEdSBzYWdzdDogd2ljaHRpZwpBc21vZGlzIHNhZ3Q6IHdhcyBtYWNoc3QgZHUgbWl0dGVuIGF1ZiBkZXIgQmFobiA/IDopCmdiCkR1IGdyaW5zdCBicmVpdC4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgaW0gU2VoZXJoYXVzLi4uLiAoQ3VjaHVsbGluLCAgMi4gT2t0IDE5OTUsIDIxOjQ4OjQ0KToKCkNhdHdlYXpsZSBzY2hsZWljaHQgc2ljaCB2b24gaGludGVuIGFuIERpY2ggaGVyYW4uCj4gZ3JpbnMgY2F0CkR1IGdyaW5zdCBDYXR3ZWF6bGUgYW4uCkNhdHdlYXpsZSBzYWd0OiBBQUFBQUFBUlJSUlJHR0dHR0hISEhISCEhISEhISEhIQpDYXR3ZWF6bGUgc2FndDogYmlzdCBEdSBXQUFBQUFBSEhOTk5zaW5uaWc/Pz8/Pz8/CkNhdHdlYXpsZSBzYWd0OiBoYXN0ZHVkaXJzY2hvbm1hbGRlaW5lcmF1bWJlc2NocmVpYnVuZ2FuZ2VzZWhlbj8/Pz8/Pz8KPiBzY2hhdQpLZXJ6ZW5saWNodCB0YXVjaHQgZGFzIEhpbnRlcnppbW1lciBTaWx2YW5vcyBQaXp6ZXJpYSBpbiBlaW5lIGFuZ2VuZWhtClsuLi5dClNjaHJhbmsgZGVzIGdhbnplbiBaaW1tZXJzLiBJbiBkZXIgV2VzdHdhbmQgaXN0IGRpZSBUdWVyLCBkdXJjaCBkaWUgRHUgaGllcgpoZXJlaW5nZWtvbW1lbiBzZWluIG11c3N0LgpFaW4gU2NoaWxkIGhhZW5ndCBpcmdlbmR3byBydW0uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiByYXVzLgpDYXR3ZWF6bGUgLmV4ZS4KRWluZSBGYWxsdHVlciAoZ2VvZWZmbmV0KS4KQ2F0d2VhemxlIHNhZ3Q6IG1hbGdhbnpnZW5hdT8/Pz8/Pz8KQ2F0d2VhemxlIHNhZ3Q6IHdlaXNzdGR1ZGFzaWNoIENocmlzdGlhbiBTQ0hJTEQgaGVpc3NlPz8/Pz8/Pz8/PwpDYXR3ZWF6bGUgYXJnbHQgZWluIHdlbmlnIHZvciBzaWNoIGhpbi4KQ2F0d2VhemxlIGFyZ2x0IGVpbiB3ZW5pZyB2b3Igc2ljaCBoaW4uCj4gbGFjaApEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCj4gd2FlbHoKRHUgd2FlbHp0IERpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgpDYXR3ZWF6bGUgc3ByaW5ndCBEaWNoIGF1ZiBlaW5tYWwgYW4gdW5kIHd1ZXJndCBEaWNoLgoKCihkZXIgVWViZXJzaWNodGxpY2hrZWl0IHdlZ2VuIGJlYXJiZWl0ZXQpCkN1Y2guLSAqa3JpbmdlbGlnbGFjaCoKClBTOiBBY2ggQ2F0KiwgaWNoIGhhYiBpbW1lcm5vY2ggRGVpbmUgSGFuZCwgZGllIGluIFZhbGdlc3NhIG5lYmVuIERlaW5lcgogICAgVHJ1aGUgbGFnIDopIEJyYXVjaHN0IER1IHNpZSBuaWNodCBtZWhyPwphbnRpd3VlcmcKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqb21laSAoQ2FyYWRocmFzLCAgMy4gT2t0IDE5OTUsIDAxOjE1OjQ2KToKW0FsbGdlbWVpbjpBc21vZGlzXSBzY2hyZWlidCBkb2NoIG1hbCB3YXMgaW4gZGllIHplaXR1bmcsIGlzdCBqYSBsYW5nd2VpbGlnCgogICAgRG9uZS4KCiAgICAgICBDYXJhZGhyYXMgREVSIEJlcmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBqb21laSAoQXNtb2RpcywgIDMuIE9rdCAxOTk1LCAwMToxNjoxOSk6CiMhIHJuPUNhcmFkaHJhcyBydD04MTI2NzkzNDYKRGFua2UgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyAoTmFzaW0sICAzLiBPa3QgMTk5NSwgMjI6MTE6MjEpOgoKVXJ6YSBtZWludGUsIGljaCBzb2xsIG1hbCB3YXMgc2NocmVpYmVuLgpXYXJ1bSBzY2hyZWlidCBzb25zdCBrZWluZXIgd2FzPyBXbyBpc3QgZGVyIE5OTj8KR3J1c3MsIE5hc2ltCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbiBNZyBuYWNodHMgdW0gaGFsYiBlaW5zIChDYXJhZGhyYXMsICA0LiBPa3QgMTk5NSwgMDM6MTE6NTIpOgpOYSBqYSwgZWhlciBoYWxiIDMgdW5kIGRpZSBSZWVwZXJiYWhuIGlzdCBlcyBhdWNoIG5pY2h0Li4uCmFiZXIgdHJvdHpkZW0gZnVyY2h0YmFyIGhpZXIgZ3JhZGUsIHdpcmQgWmVpdCBpbnMgQmV0dCB6dSBnZWhlbjoKCltBbGxnZW1laW46UHlyb21lbGxhXSBzY2hhZGVlZWUgbmllbWFuZCBkYSBkZW4gaWNoIGtlbm5lIG9kZXIgPz8/PwpbQWxsZ2VtZWluOlNhbWFlbF0gbWljaCBrZW5uc3RlIGRvY2gsIG9kZXIgbWVpbiBlcnN0aWUgd2VuaWdzdGVucyAnenVlcmlsZXUnCltBbGxnZW1laW46U2FtYWVsXSA9OikKW0FsbGdlbWVpbjpQeXJvbWVsbGFdIGhtbSBuYWphIGRlbSBuYW1lbiBuYWNoIGphIDotKSkgYWJlciB3byBzdGVja3QgbWVpbgpbQWxsZ2VtZWluOlB5cm9tZWxsYV0gdmVybG9idGVyID8/PwpbQWxsZ2VtZWluOlB5cm9tZWxsYSB3ZWludC5dCltBbGxnZW1laW46U2FtYWVsXSBoaWVyIGlzdCBkZWluIHZlcmxvYnRlciAhCltBbGxnZW1laW46U2FtYWVsIGRldXRldCBhdWZzaWNoIHNlbGJlcl0KW0FsbGdlbWVpbjpQeXJvbWVsbGFdIFdPPz8/CltBbGxnZW1laW46UHlyb21lbGxhIGxhY2h0Ll0KW0FsbGdlbWVpbjpQeXJvbWVsbGFdIEJJQk8hCltBbGxnZW1laW46UHlyb21lbGxhIGxhZWNoZWx0Ll0KU2FtYWVsIHJ1ZnQ6IGdvbHVtIGlzdCBlaW4gc2Nobm9vb29vb2VlZXNzc2VsID06KSkgIQpWb3JwaGFsYWNrIHJ1ZnQ6IEdvbHVtIGlzdCBlaW4gc2Nobm9vb29vb2VlZXNzc2VsbCA9OikpCltBbGxnZW1laW46Vm9ycGhhbGFjayBraWNoZXJ0IGRhZW1saWNoXQpHb2x1bSBpc3QgZ2VyYWRlIGlucyBNb3JnZW5ncmF1ZW4gZ2Vrb21tZW4uClB5cm9tZWxsYSBydWZ0OiBnb2x1bSBiaXN0IGR1IGVpbiBzY2hub2VlZWVlZWVlZXNlbCA/Pz8KR29sdW0gcnVmdDogd2FzIGhvZXJlIGljaCBkYSA/Clp1ZXJpbGV1IHJ1ZnQ6IE5laW4gaWNoIGJpbiBlaW4gdmllbCBncm9lc3NlcmVyIFNjaG5vZXNzc3NlZWVlZWxsbGxsCltBbGxnZW1laW46Vm9ycGhhbGFja10genVlcmlsZXUgaXN0IGdhcm5pY2h0IGVpbmdlbG9nZ3QKW0FsbGdlbWVpbjpWb3JwaGFsYWNrXSBkYSB3aWxsIHVucyBqZW1hbmQgdmVya29obGVuCkFsYXN0b3IgcnVmdDogc2Nob2VzZWwgPTopCkFsYXN0b3IgcnVmdDogaWNoIGJpbiBkdW1tZXIgZGVwcApTdmVhciBydWZ0OiBkaWUgbWFnaWVyIHNwaWVsZW4gdmVycnVlY2t0CktvZW5pZyBUaGluZ29sIHJ1ZnQ6IGljaCBiaW4gZHVtbWVyIGRlcHAKWnVlcmlsZXUgaWNoIHNlaW4gZGVvcHBlbC4KQUFBQVJSR0dHR0dHR0dHR0dHIDopClp1ZXJpbGV1IHJ1ZnQ6IEpvZiBpc3QgZHVtbSB1bmQgc3Rpbmt0LgpbQWxsZ2VtZWluOkFsYXN0b3IgaXN0IGRlciBoZW5rZXIgZGVyIEhvZWxsZSwgZGVyIFZvbGxzdHJlY2tlciBMdWNpZmVycyB1bmQKaWNoIGJyaW5nIGV1Y2ggaW5zIHZlcmRlcmJlbiAhIChoYUhhSGEpIDopXQpbQWxsZ2VtZWluOkFsYXN0b3JdIHp1ZXJpIGlzdCBnYXIgbmljaHQgZWluZ2Vsb2dndApqZXR6dCBrb21tdCBHb2x1bQpbRC1jaGF0OkFsYXN0b3JATW9yZ2VuR3JhdWVuXSBodWh1dSB3ZXIgaXN0IG5vY2ggd2FjaCA/CktvZW5pZyBUaGluZ29sIHJ1ZnQ6IGd1dCBOYWNodCwgdW5kIHNvLCB1bmQgc2NobGFmIGd1dCwuLi4KW0QtY2hhdDpLZWxkb3JuQEF2YWxvbl0gSWNoLiAoQWJlciBnZXJhZGUgbm9jaCBzbykgOi0pCkdvbHVtIGlzdCBlaW4gcmllc2VuIFNjaG5vZXNlbApUaWVmYmF1aW5zcGVrdG9yIEdvbHVtIHJ1ZnQ6IHdpZSB3YWhyCgogICAgICphZWNoeiogICAgICAgIENhcmFkaHJhcyAtIG5pY2h0IG1hbCBpbiBSdWhlIGlkbGVuIGRhcmYgbWFuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpRdWFrIChDYXJhZGhyYXMsICA0LiBPa3QgMTk5NSwgMDM6MTU6MTcpOgpbQWxsZ2VtZWluOkZyb3NjaCBBcmRhbmFdIHdlciB3YXIgZGVyIGZyb3NjaCBlYmVuPyA6KQprd2VyIGZyb3NjaAogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTWl0LCAgNC4gT2t0IDE5OTUsIDAzOjAxOjM4ICg4IFRlaWxuZWhtZXIpCgpBbGFzdG9yLi4uLi4uLi4ucyAgUHlyb21lbGxhLi4uLi4uLnMgIFN2ZWFyLi4uLi4uLi4uLi5zICBNYWhhdG1hLi4uLi4uLi4uUwpOb3N0cmFkYW11cy4uLi4uUyAgQ2FyYWRocmFzLi4uLi4uLlMgIE9kby4uLi4uLi4uLi4uLi5tICBBcmRhbmEuLi4uLi4uLi4uTQoKPiBlaW4gRnJvc2NoIHJ1ZnQ6IEEgUiBEIEEgTiBBICEhISEKa3dlciBmcm9zY2gKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIE1pdCwgIDQuIE9rdCAxOTk1LCAwMzowMTo0NCAoOCBUZWlsbmVobWVyKQoKQWxhc3Rvci4uLi4uLi4uLnMgIFB5cm9tZWxsYS4uLi4uLi5zICBTdmVhci4uLi4uLi4uLi4ucyAgTWFoYXRtYS4uLi4uLi4uLlMKTm9zdHJhZGFtdXMuLi4uLlMgIENhcmFkaHJhcy4uLi4uLi5TICBPZG8uLi4uLi4uLi4uLi4ubSAgQXJkYW5hLi4uLi4uLi4uLk0KW0FsbGdlbWVpbjpGcm9zY2ggQ2FyYWRocmFzXSBhcmdsCltBbGxnZW1laW46RnJvc2NoIEFyZGFuYV0gZWJlbiwgd2FzIHNvbGwgZGFzPz8KW0FsbGdlbWVpbjpGcm9zY2ggUHlyb21lbGxhXSBhcmdsIGxhc3N0IGRhcyAhCltBbGxnZW1laW46RnJvc2NoIE1haGF0bWFdIHdhcyBpc3QgZGFzIGRlbm4/IHdpZXNvIGJpbiBpY2ggamV0enQgZWluIGZyb3NjaD8KW0FsbGdlbWVpbjpGcm9zY2ggQWxhc3Rvcl0gaGV5IHdhcyBzb2xsIGRpZSBrYWtlID8KW0FsbGdlbWVpbjpGcm9zY2ggQWxhc3Rvcl0genVlcmlsZXUgaXN0IGRpZXNtYWwgdW5zY2h1bGRpZyBkYSBuaWNodApbQWxsZ2VtZWluOkZyb3NjaCBBbGFzdG9yXSBlaW5nZWxvZ2d0CltBbGxnZW1laW46RnJvc2NoIEFsYXN0b3JdIGljaCBiaW4gbmFlbWxpY2ggenVlcmlsZXUncyB6d2VpdGkgdW5kIGljaCBrYW5uCltBbGxnZW1laW46RnJvc2NoIEFsYXN0b3JdIHNvd2FzIG5pY2h0ClRpZWZiYXVpbnNwZWt0b3IgR29sdW0gcnVmdDogd2VsY2hlciBGcm9zY2ggd2FyIGRhcyA7KSAqbGFjaCoKCiAgICBOYSwgd2VyIGhhdCB1bnMgd29obCBkYSBudXIgdmVyZnJvc2NodCwgc29vb29vbyBzY2h3ZXIgcmF1c3p1a3JpZWdlbgoKICAgICAgICAgIEZyb3NjaCBDYXJhZGhyYXMgKnF1YWsqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWx0c2FtZSBCZWdlZ251bmcuLi4gKE1pZXplLCAgNC4gT2t0IDE5OTUsIDExOjE2OjAxKToKRWJlbiBpbiBkZXIgQWJlbnRldXJlcmdpbGRlLi4uLgo+IFpvcnJvIHdpbmt0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgWm9ycm8uCgooZWluIHdlbmlnIHNwYWV0ZXIpClpvcnJvIHNpZWh0IGJldHJ1bmtlbiBhdXMuClpvcnJvIGdlaHQgaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4uCgpEaWUgbGVpY2h0IGVyc3RhdW50ZSBNaWV6ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobWFycm4gKEplcnJpY28sICA0LiBPa3QgMTk5NSwgMTg6NTg6NDQpOgpEZXIgUmVubi1Lb21tZW50YXRvciBicnVlbGx0IGxhdXQ6Ck9ldHRpIHdpcmZ0IFNhbmQgdm9yIFRhc2hhcyBTY2hsaXR0ZW5zIEt1ZmVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkpvaG9vb2YgOy0pID8gKEFxdWFkZXN0LCAgNS4gT2t0IDE5OTUsIDAwOjA5OjU0KToKCgpIYWZlbnN0cmFzc2UuCkVzIGdpYnQgZnVlbmYgc2ljaHRiYXJlIEF1c2dhZW5nZTogdW50ZW4sIG9zdGVuLCBzdWVkZW4sIHdlc3RlbiB1bmQgbm9yZGVuLgo+IEVpbiBCZXR0bGVyIGtvbW10IGFuLgpzCkRlciBCZXR0bGVyIGdlaHQgbmFjaCBPc3Rlbi4KRGllIGJlcnVlaG10ZSBBYmVudGV1cmVyZ2lsZGUuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBub3JkZW4uCkpvZi4KRGVyIEdlaXN0IHZvbiBGeXQgQXdlei4KRWluIEhhbmRidWNoIGZ1ZXIgQW5mYWVuZ2VyLgpFaW4gU3BlbmRlbnBsYWthdC4KRWluZSBaZWl0dW5nLgo+IHVudCBqb2YKRGFzIGlzdCBKb2YuCkVyIGlzdCBhYnNvbHV0IGZldHQuCj4gaHVzdApIdXN0ISBLZXVjaCEgSGFsdCBkaXIgZG9jaCB3ZW5pZ3N0ZW5zIGRpZSBIYW5kIHZvciBkZW4gTXVuZCEKCgpPb29lZWVobS4uLi4uLgpTY2h3ZWlnZW5kLApDdWNoLi0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSm9ob29vZiA7LSkgPyAoR29sdW0sICA1LiBPa3QgMTk5NSwgMDM6MjA6MjMpOgojISBybj1BcXVhZGVzdCBydD04MTI4NDgxOTQKRGFzIGlzdCBKb2YuCkVyIGlzdCBhYnNvbHV0IGZldHQuCgpJY2ggbGFjaCBtaWNoIGthcHV0dHQgOykpKQpHb2x1bSAqZ3JvZWhsZW5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQlM/IChOYXNpbSwgIDUuIE9rdCAxOTk1LCAwOTo0ODoyNCk6CldhcyBpc3QgZWluIEJTPwpHcnVzcywgTmFzaW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCUz8gKFlhbnRybywgIDUuIE9rdCAxOTk1LCAwOTo0OTowMyk6CiMhIHJuPU5hc2ltIHJ0PTgxMjg4MjkwNAoKd2Vpc3MgaWNoIGF1Y2ggbmljaHQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQlM/IChOYXNpbSwgIDUuIE9rdCAxOTk1LCAwOTo0OTo0NCk6CiMhIHJuPVlhbnRybyBydD04MTI4ODI5NDMKSXN0IGphIGF1Y2ggZWdhbCwgSGF1cHRzYWNoZSwgRHUgZ2lic3QgZXMgbWlyLgpHcnVzcywgTmFzaW0gOy0tKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQlM/IChCYWJvb24sICA1LiBPa3QgMTk5NSwgMDk6NTI6NTEpOgojISBybj1OYXNpbSBydD04MTI4ODI5ODQKVmllbGVpY2h0IGVpbiBCdW50U3RpZnQ/IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQlM/IChOYXNpbSwgIDUuIE9rdCAxOTk1LCAxMDowMDozNSk6CiMhIHJuPUJhYm9vbiBydD04MTI4ODMxNzEKTmVpbiwgZXMgaXN0IGVpbiBCUyAtIGVpbiBCUyBoYWx0LgpHcnVzcyBOYXNpbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQlM/IChOYXNpbSwgIDUuIE9rdCAxOTk1LCAxMDowMzo0OCk6CiMhIHJuPU5hc2ltIHJ0PTgxMjg4MzYzNQpTY2hhZGUsIHp1ZWNrZW4ga2FubiBtYW4gZWluIEJTIGF1Y2ggbmljaHQgLi4uIHVuZCB3ZXJ0bG9zIGlzdCBlcyBub2NoIGRhenUuCkdydXNzIE5hc2ltIChkZXIgZWluemlnZSBtaXQgQlMpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQlM/IChXYXJnb24sICA1LiBPa3QgMTk5NSwgMTE6MDg6MjgpOgojISBybj1OYXNpbSBydD04MTI4ODM2MzUKQlMgPSBCYWNrU3BhY2UuIFp1bSBFbnRmZXJuZW4gdW5saWVic2FtZXIgTW9uc3RlciBnZWVpZ25ldC4gOykKICBXYXJnb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEJTPyAoTmFzaW0sICA1LiBPa3QgMTk5NSwgMTE6MDk6MTEpOgojISBybj1XYXJnb24gcnQ9ODEyODg3NzA4Ck9oLCB3aXJrbGljaD8gR2xlaWNoIG1hbCB0ZXN0ZW4gLi4uCkdydXNzLCBOYXNpbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWnUgc3BhZXQ/IChSb25kYSwgIDUuIE9rdCAxOTk1LCAxMzozMToxMCk6CnNhZyBXYXMgbWFjaHN0IER1IGdyYWRlPwpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgWXVyaWtvLgpZdXJpa28gICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkh1ZXBmZXIgcnVmdDogUmV0dGUgc2ljaCB3ZXIga2FubiEKRHUgc2Fnc3Q6IFdhcyBtYWNoc3QgRHUgZ3JhZGU/Cj4gRGVyIGR1bmtsZSBBcmRhbmEgcnVmdDogenUgc3BhZXQhCnJ1YnJpayBzY2htYXJybgpPaywgRHUgaGFzdCBkaWUgUnVicmlrIHNjaG1hcnJuIGF1Zmdlc2NobGFnZW4uCj4gc2NocmVpYmUgYXJ0aWtlbAouLi4gbXVzc3RlIGVpbmZhY2ggc2VpbiA6KQpTY2htdW56ZWxuZCwKICAgICAgICAgICAgICBSb25kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNlbHRzYW1lIEJlZ2VnbnVuZy4uLiAoWWVuZGksICA1LiBPa3QgMTk5NSwgMTQ6MDE6MDApOgojISBybj1NaWV6ZSBydD04MTI4MDE3NjEKCk5hLCBob2ZmZW50bGljaCBmaW5kZXQgZGVyIGluIHNlaW5lbSBadXN0YW5kIHVlYmVyaGF1cHQgZGEgaGluLi4uCgpTdGVsbHQgZXVjaCBtYWwgdm9yLCBsYXV0ZXIgU2NobmFwc2xlaWNoZW4gaW0gTVVELCBkaWUgYmVpICJzY2hsYWZlIGVpbiIgaW0KU3RyYXNzZW5ncmFiZW4gdWViZXJuYWNodGVuIG11ZXNzZW4sIHdlaWwgc2llIGVzIG5pY2h0IGJpcyB6dW0gTmV0enRvdGVucmF1bQpzY2hhZmZlbi4uLiAgICAqa2ljaGVyKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEJTPyAoTXVwZmVsLCAgNS4gT2t0IDE5OTUsIDE5OjQzOjQ3KToKIyEgcm49TmFzaW0gcnQ9ODEyODgzNjM1CiNkZWZpbmUgQlMgYnJlYWtfc3RyaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBCUz8gKExvY28sICA1LiBPa3QgMTk5NSwgMTk6NDQ6MzUpOgojISBybj1NdXBmZWwgcnQ9ODEyOTE4NjI3CkhhYnQgaWhyIGFiZXIga29taXNjaGUgVm9yc3RlbGx1bmdlbiB2b24gQnJhdW5zY2h3ZWlnLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCUz8gKENhcmFkaHJhcywgIDUuIE9rdCAxOTk1LCAyMjoxNDo1OCk6CiMhIHJuPU5hc2ltIHJ0PTgxMjg4Nzc1MQpBbHNvIGJlaSBtaXIgaXN0IEJTIGVpbiBicmVha19zdHJpbmcgOikKICBSb3Rob3JuIENhcmFkaHJhcyBCYXJhemluYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBCUz8gKENhcmFkaHJhcywgIDUuIE9rdCAxOTk1LCAyMjoxNzo1MCk6CiMhIHJuPUNhcmFkaHJhcyBydD04MTI5Mjc2OTgKVXBwcywgTXVwZmVsc2NoZSB3YXIgc2NobmVsbGVyLiAqOl4pCjIgRG9vZmUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEJTPyAoWWFudHJvLCAgNi4gT2t0IDE5OTUsIDA4OjExOjM1KToKIyEgcm49Q2FyYWRocmFzIHJ0PTgxMjkyNzg3MAoKYWxzbyBub2NobWFsIGZ1ZXIgbGFuZ3NhbWU6IEVpbiBCUyBpc3QgZWluIEJTICwgc29nYXIsIHdlbm4gbWFuIGVzIHNpY2gKbGFlbmdlciBiZXRyYWNodGV0LCBuaWNodCBOYXNpbT8/IEVyIGhhdCB1ZWJyaWdlbmRzIHdpcmtsaWNoIGVpbmUgb3JpZ2luYWwgQlMKdm9uIG1pciBnZWtyaWVndCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHJpZ2dlciAoTGksICA2LiBPa3QgMTk5NSwgMDk6MTQ6MDEpOgpXZW5uIG1hbiB0ZiBuaWNodCByaWNodGlnIGJlaGVycnNjaHQsIHBhc3NpZXJlbiBtYW5jaG1hbCBzZWx0c2FtZSBEaW5nZToKCihlYmVuIGJlaSBtaXIgZ2VzY2hlaGVuKQoKW0FsbGdlbWVpbjpZYW50cm9dIGphdS4uIGljaCBzY2htaWVnZSBtaWNoIGdlcmFkZSBhbiBkaWVzZSBXb3J0ZS4uIGRhbm4KW0FsbGdlbWVpbjpZYW50cm9dIGtvcGllciBpY2ggc2llIGluIGRlbiBlZGl0b3IsIGRydWNrIHNpZSBhdXMgdW5kIGhhZW5nIHNpZQpbQWxsZ2VtZWluOllhbnRyb10gbWlyIHVlYmVycyBCZXR0IDopCltBbGxnZW1laW46WWFudHJvIHZlcm5laWd0IHNpY2ggZGFua2JhciB2b3IgQWxpbmUgKHVmZiBtZWluIEtyZXV6KV0KRHUgdmVybmVpZ3N0IGRpY2ggdm9yIGRlbiBBbndlc2VuZGVuLgpbQWxsZ2VtZWluOkFsaW5lXSBLb21wbGltZW50PyBXYXMgaXN0IGRhcyBMaT8KW0FsbGdlbWVpbjpBbGluZV0gRGFzIGtvbW10IGluIG1laW5lbSBFbWFuemVud29ydHNjaGF0eiBuaWNodCB2b3I7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEJTPyAoQ2F0d2VhemxlLCAgNi4gT2t0IDE5OTUsIDE0OjM3OjA5KToKIyEgcm49WWFudHJvIHJ0PTgxMjk2MzQ5NQpCdXR0ZXItU3R1bGxlPwpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBCUz8gKE5hc2ltLCAgNi4gT2t0IDE5OTUsIDE1OjMyOjIzKToKIyEgcm49Q2F0d2VhemxlIHJ0PTgxMjk4NjYyOQpBbHNvLCBlc3NlbiBrYW5uIGljaCBkYXMgQlMgbmljaHQgLi4uCgpHcnVzcywgTmFzaW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBCUz8gKEdyaW1tYm9ybiwgIDYuIE9rdCAxOTk1LCAxNjowNjo1Nyk6CiMhIHJuPU5hc2ltIHJ0PTgxMjk4OTk0MwoKSWNoIHZlcnJhdGUgZWluIEdlaGVpbW5pczogWWFudHJvIHN0dWRpZXJ0IENoZW1pZSAod2VubiBlciBuaWNodCBnZXJhZGUKbXVkZGV0Li4uKQpEYW1pdCBzb2xsdGUgZGllIEJlZGV1dHVuZyB2b24gIkJTIiBrbGFyIHNlaW46IEJ1dHRlclNhZXVyZS4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCB1bmQgRnJlaXplaXRjaGVtaWtlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEJTPyAoTmFzaW0sICA2LiBPa3QgMTk5NSwgMTY6MDc6NTApOgojISBybj1HcmltbWJvcm4gcnQ9ODEyOTkyMDE3CklnaXR0IGlnaXR0IC4uLiB3aWxsIHNpZSBqYW1lbmQgaGFiZW4/CgpHcnVzcywgTmFzaW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBCUz8gKENhdHdlYXpsZSwgIDYuIE9rdCAxOTk1LCAxNjoyNToyMyk6CiMhIHJuPUdyaW1tYm9ybiBydD04MTI5OTIwMTcKTmEsIGRhIHdhciBpY2ggbWl0IG1laW5lciBTdHVsbGUgamEgZ2FyIG5pY2h0IHNvb28gd2VpdCBkYW5lYmVuIDopCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEJTPyAoU2NocnVtcGZpLCAgNi4gT2t0IDE5OTUsIDE5OjExOjQ0KToKIyEgcm49WWFudHJvIHJ0PTgxMjk2MzQ5NQpFaW5lIG9yaWdpbmFsZSBCb1NuZXI/IDopClNjaHJ1bXBmaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEJTPyAoQWNyaW1vbiwgIDYuIE9rdCAxOTk1LCAxOToxNToyOCk6CiMhIHJuPVNjaHJ1bXBmaSBydD04MTMwMDMxMDQKV28gbGllZ3QgZGVubiBCb3Nlbj8KT2RlciBtZWluc3QgZHUgQm96ZW4/CgpBY3JpbW9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogQlM/IChTY2hydW1wZmksICA2LiBPa3QgMTk5NSwgMTk6MTc6MzIpOgojISBybj1BY3JpbW9uIHJ0PTgxMzAwMzMyOApCT1NORVIhIEtlbm5zdCBEdSBrZWluZSBCb3NuZXI/IEJhbmF1c2UhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGluIE1vcm9uIChSYWZmaSwgIDYuIE9rdCAxOTk1LCAyMDowNjo0NSk6CgpHZXJhZGUgcGFzc2llcnQ6CgouLi4KR29sdW0gZmFlbGx0IGRpciBhdWYgZGVuIEtvcGYuCi4uLgoKSWNoIHd1c3N0ZSBkb2NoIHNjaG9uIGltbWVyIGRhcyBkaWVzZSBNYWdpZXIgbmljaHQgYmVzb25kZXJzIFRyZWZmc2ljaGVyIHNpbmQKbWl0IGlocmVtIEdPVE8KCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmtsb3Bma2xvcGYqLi4uIDopIChMb2NvLCAgNy4gT2t0IDE5OTUsIDE2OjEwOjIzKToKQmVpIGVpbmVtIGt1cnplbiBCbGljayBhdWYgZGFzIFRlcm1pbmFsIGVudGRlY2t0Li4uCgpTbnVnZ2xlIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KW0FsbGdlbWVpbjpTbnVnZ2xlXSBoaSBpaHIgYWxsZSBpbiBkZXIga2xlaW5lbiBidW50ZW4ga2lzdGUKW0FsbGdlbWVpbjpTbnVnZ2xlXSBoYXQgenVmYWFlbGxpZyBqZW1hbmQgbmVuIHZlcm51ZW5mdGlnZW4gSVAtRmluZGVyCltBbGxnZW1laW46U251Z2dsZV0gZ3JpZmZiZXJlaXQ/Cl1bQWxsZ2VtZWluOlNudWdnbGUgbGVidCB1ZWJlcmhhdXB0IGplbWFuZCwgb2RlciBpZGVsdCBpaHIgYWxsZT8/XQpbQWxsZ2VtZWluOlNudWdnbGUgc2V1Znp0XQpdW0FsbGdlbWVpbjpTbnVnZ2xlXSBkYW5uIGlkZWx0IGhhbHQgd2VpdGVyIDotKApTbnVnZ2xlIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCgpIbW1tLi4uIHN0aW1tdCwgZXMgaXN0IGF1ZmZhZWxsaWcgcnVoaWcgaGllciA6KQogTG9jbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEJTPyAoSG9yc2NoZCwgIDguIE9rdCAxOTk1LCAxNDo1ODoyNCk6CiMhIHJuPUFjcmltb24gcnQ9ODEzMDAzMzI4CkJvc2VuIGlzdCBpbSBTYWFybGFuZC4uLiBkaXJla3QgbmViZW4gZGVtIEJvc3RhbHNlZSA6KQoKSG9yc2NoZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUm9iaW4gd2lyZCBpbW1lciBkcmVpc3RlciAoTWFycywgIDguIE9rdCAxOTk1LCAyMToyNDo0Myk6Cgo+IEVpbmdhbmcgenVyIFp3ZXJnZW5zdGFkdC4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4sIHdlc3RlbiB1bmQgbm9yZGVuLgpSb2JpbiBvZiBMb2Nrc2xleS4KRWluIFdvbGYuCkVpbiBrbGVpbmVyIFRvcGYuCj4gcwpzCkVpbmdhbmcgenVyIFp3ZXJnZW5zdGFkdC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgbm9yZGVuLgpFaW4gWndlcmdlbndhZWNodGVyLgpFaW4gWndlcmdlbndhZWNodGVyLgo+IEtyZXV6dW5nLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCj4gRGVpbiBHZWxkYmV1dGVsIGlzdCBsZWljaHRlciBnZXdvcmRlbi4KCgpKZXR6dCBiZW51dHp0IGVyIHNjaG9uICJya2xhdSIgIDooCgoKICAgTWFycwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSb2JpbiB3aXJkIGltbWVyIGRyZWlzdGVyIChDYXJhZGhyYXMsICA5LiBPa3QgMTk5NSwgMDY6MzY6MjYpOgojISBybj1NYXJzIHJ0PTgxMzE4Mzg4MwpBbHNvIGljaCBlcmlubmVyIG1pY2ggbm9jaCBhbHMgaWNoIGRpZXNlIE1lbGR1bmcgYmVpbSBTY2huZWVyaWVzZW4gYmVrYW0uIDopCip3dW5kZXIqCgogICAgICAgICAgICBSb3Rob3JuIENhcmFkaHJhcyBCYXJhemluYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUm9iaW4gd2lyZCBpbW1lciBkcmVpc3RlciAoUmFmZmksICA5LiBPa3QgMTk5NSwgMTM6MTU6MjMpOgojISBybj1NYXJzIHJ0PTgxMzE4Mzg4MwpKYXUgaXN0IG1pciBhdWNoIGxldHp0ZW5zIHBhc3NpZXJ0IC0gaGF0IG1pY2ggdWViZXIgMTAuMDAwIE11ZW56ZW4gZ2Vrb3N0ZXQKOigKCgpHcnVzcwpILgooYmV0dGVsYXJtZXIgWndlcmcpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJvYmluIHdpcmQgaW1tZXIgZHJlaXN0ZXIgKEN1Y2h1bGxpbiwgIDkuIE9rdCAxOTk1LCAxMzoxNjoxNik6CiMhIHJuPVJhZmZpIHJ0PTgxMzI0MDkyMwoKTmEgd2VyIHNjaG9uIHNvb29vIGhlaXNzdCwgc29sbCBmcm9oIHNlaW4sIG51ciB2b24gUm9iaW4gYmVrbGF1dCB6dSB3ZXJkZW4uLi4KR3JpbnNlbmQsCkN1Y2guLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFJvYmluIHdpcmQgaW1tZXIgZHJlaXN0ZXIgKFJhZmZpLCAgOS4gT2t0IDE5OTUsIDEzOjI0OjAzKToKIyEgcm49Q3VjaHVsbGluIHJ0PTgxMzI0MDk3NgoKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEN1Y2h1bGxpbiBpbiBSdWJyaWsgInNjaG1hcnJuIi4KPiBubgouLi4KTmEgd2VyIHNjaG9uIHNvb29vIGhlaXNzdCwgc29sbCBmcm9oIHNlaW4sIG51ciB2b24gUm9iaW4gYmVrbGF1dCB6dSB3ZXJkZW4uLi4KR3JpbnNlbmQsCkN1Y2guLQoKPiByZ3JpbnNlIGN1Y2h1bGxpbiBiZXR0ZWxhcm0KRHUgZ3JpbnN0IEN1Y2h1bGxpbiBiZXR0ZWxhcm0gYXVzIGRlciBGZXJuZSBhbi4KPiBDdWNodWxsaW4gbmltbXQgYXVzIGRlciBGZXJuZSAyMTM0IE11ZW56ZW4gdm9uIERpci4KPiBpbnYKRGFzIFNlcnZpY2VwYWtldCB2b24gTW9yZ2VuZ3JhdWVucyBQcmVzc2VhZ2VudHVyLgpEaWUgTWVkYWlsbGUgZGVyIFZlcmVpbmlndW5nIGRlciBMYWRlbmJlc2l0emVyLgpFaW5lIFJvZW50Z2VuYnJpbGxlLgpFaW4gU2NobGVpbWJldXRlbC4KRWluIEJldXRlbCAoZ2VvZWZmbmV0KS4KRWluZSBEaWRkbC1LbnVkZGVsLU1hdXMuCjMzIE11ZW56ZW4uCkVpbmUgTGVkZXJydWVzdHVuZy4KRWluIExlZGVyaGVsbS4KPiB3ZWluZQpXYWFhYWFoISBEdSB3ZWluc3QgYml0dGVybGljaC4KPiByd2VpbmUgY3VjaHVsbGluCldpZSBiaXR0ZT8KCkdydXNzCkguCihqZXR6IG5vY2ggYmV0dGxhZXJtZXIgOigpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBSb2JpbiB3aXJkIGltbWVyIGRyZWlzdGVyIChTbnVnZ2xlLCAxMC4gT2t0IDE5OTUsIDEwOjM5OjAzKToKIyEgcm49UmFmZmkgcnQ9ODEzMjQxNDQzCklyZ2VuZHdhcyBtYWNodCBpaHIgZmFsc2NoLi4uCgpTbnVnZ2xlIC0gIGhhdCBuaWUgc292aWVsIEdvbGQgZGFiZWksIGRhc3MgUm9iaW4gaWhtIHdhcyB3ZWduaW1tdCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFJvYmluIHdpcmQgaW1tZXIgZHJlaXN0ZXIgKFJhZmZpLCAxMC4gT2t0IDE5OTUsIDEwOjQ1OjMwKToKIyEgcm49U251Z2dsZSBydD04MTMzMTc5NDMKClJhZmZpIGpldHp0IGF1Y2ggbmljaHQgbWVociAtIGlyZ2VuZHdpZSBpc3Qgc2VpbmUgR2VsZGJvZXJzZSBnYW56CnZlcnNjaHd1bmRlbiAtIE5lYmVuIGFuZGVyZW4gc2FjaGVuIC0gbWVpbiBJbnYgbGVlcnQgc2ljaCBkZXJ6ZWl0CnNlbGJzdHN0YWVuZGlnIDooCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW5kIHdpZWRlciBtYWwgZGFzIEFtdS4uIChaZXBoeXIsIDEwLiBPa3QgMTk5NSwgMTc6MzM6NDcpOgoKLi4udW5kIHNvIGJlZ2FubiBkZXIgdW5hdWZoYWx0c2FtZSBVbnRlcmdhbmcgZGVzIE1vcmdlbkdyYXVlbnMuCkVpbmUgaGVycmxpY2hlIFdhZXJtZSBnZWh0IHZvbiBEZWluZW0gQW11bGV0dCBhdXMsIHVuZCBEdSBmdWVobHN0CkRpY2ggcHJpbWEuCgpaZXBoLCBpbW1lciB3aWVkZXIgdWViZXIgZGFzIFNCQSBlcnN0YXVudAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVEFTSEEhIFNPIFdBUiBEQVMgTklDSFQgR0VNRUlOVCEhIDooKCggKEN1Y2h1bGxpbiwgMTAuIE9rdCAxOTk1LCAxNzozNTo0NSk6CgoKRHUgdGVpbHN0IFRhc2hhIG1pdDogTmEsIHdpZSBzaWNoZXIgaXNzZXMgZGVubiwgZGFzcyBEdSBNYWdpZXIgd2lyc3QgPwpUYXNoYSB0ZWlsdCBEaXIgbWl0OiAxMDAlClRBRVRBRVJBRVRBRUFFQUUhClRBRVRBRVJBRVRBRUFFQUUhCkR1IHRlaWxzdCBUYXNoYSBtaXQ6IFVuZCB3aWUgc2ljaGVyLCBkYXNzIGJhbGQgPwpUYXNoYSBpc3QgaW4gZGVuIEtyZWlzIGRlciBNYWdpZXIgYXVmZ2Vub21tZW4gd29yZGVuIQpUYXNoYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpaYXJkb3ogcnVmdDogVEFTSEEhISEhCk9rLCBEdSBoYXN0IGRpZSBSdWJyaWsgc2NobWFycm4gYXVmZ2VzY2hsYWdlbi4KWmVwaHlyIHJ1ZnQ6IEhJTEZFRUVFRUVFRUVFRUVFRUVFRUVFRUUKCip3ZWluKiAqZmxlbm4qICpzY2hsdWNoeioKQW0gQm9kZW4gZGVzdHJ1Y3RldCwgYWVoLCB6ZXJzdG9lcnQsCkN1Y2h1bGxpbi4tCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJldWQgJiBDby4gKEdyaW1tYm9ybiwgMTEuIE9rdCAxOTk1LCAxMzozNDowNCk6CgpEdSBzYWdzdDogSnVuZ2VqdW5nZSwgbXVzc3QgRHUgcmVpY2ggc2Vpbi4uLgoqKioqIHNhZ3Q6IEljaCBoYWJlIGRhZnVlciBlaW4gZ2FuemVzIEphaHIgZ2VwYWFydCEKKioqKiBzYWd0OiBnZXNwYXJ0CgpPaG5lIEtvbW1lbnRhci4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LiBTdGVsbHQgamEgbmljaHQgamVkZW4gYmxvc3MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFYmVuIGdlc2VoZW4hIChJc3NvbWFkLCAxMS4gT2t0IDE5OTUsIDE3OjIyOjA5KToKRHUgYmlzdCBpbSBIb2VobGVubGFieXJpbnRoIGRlciBTY2hyZWNrZW5zc3BpdHplLiBXaWxkIHd1Y2hlcm5kZSBQZmxhbnplbgplcnNjaHdlcmVuIGRhcyBEdXJjaGtvbW1lbiBpbW1lciBtZWhyLCBuYWNoIFN1ZWRlbiBnZWh0IGVzIG5vY2ggcmVsYXRpdiBndXQsCkRvY2ggZGVyIEdhbmcgaW0gTm9yZGVuIGlzdCBrYXVtIG5vY2ggenUgZXJrZW5uZW4uCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4gdW5kIG5vcmRlbi4KRWluIGZyZXNzZW5kZXIgU29ubmVudGF1LgpFaW5lIFZlbnVzZmxpZWdlbmZhbGxlLgpFaW4gaGFsYnZlcmRhdXRlciBBYmVudGV1cmVyLgpFaW4gaGFsYnZlcmRhdXRlciBLYXJhdGVrYS4KRWluIGhhbGJ2ZXJkYXV0ZXIgQWJlbnRldXJlci4KRWluIGhhbGJ2ZXJkYXV0ZXIgQ2hhb3MtS3JpZWdlci4KRWluIGhhbGJ2ZXJkYXV0ZXIgWmF1YmVyZXIuCkVpbiBoYWxidmVyZGF1dGVyIFphdWJlcmVyLgpFaW4gaGFsYnZlcmRhdXRlciBaYXViZXJlci4KRWluIGhhbGJ2ZXJkYXV0ZXIgQ2hhb3MtS3JpZWdlci4KRWluIGhhbGJ2ZXJkYXV0ZXIgWmF1YmVyZXIuCkVpbiBoYWxidmVyZGF1dGVyIFphdWJlcmVyLgpFaW4gaGFsYnZlcmRhdXRlciBDaGFvcy1LcmllZ2VyLgpFaW4gaGFsYnZlcmRhdXRlciBLYXJhdGVrYS4KRWluZSBoYWxidmVyZGF1dGUgRmxpZWdlLgpFaW4gaGFsYnZlcmRhdXRlciBaYXViZXJlci4KRWluIGhhbGJ2ZXJkYXV0ZXIgQWJlbnRldXJlci4KRWluIGhhbGJ2ZXJkYXV0ZXIgQWJlbnRldXJlci4KRWluZSBoYWxidmVyZGF1dGUgRmxpZWdlLgpFaW4gaGFsYnZlcmRhdXRlciBBYmVudGV1cmVyLgpFaW4gdmVybW9kZXJuZGVzIEJsYXR0LgpFaW4gdmVybW9kZXJuZGVzIEJsYXR0LgpFaW5lIGhhbGJ2ZXJkYXV0ZSBGbGllZ2UuCkVpbiBoYWxidmVyZGF1dGVyIENoYW9zLUtyaWVnZXIuCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuCkVpbiBoYWxidmVyZGF1dGVyIFphdWJlcmVyLgpFaW4gaGFsYnZlcmRhdXRlciBLYXJhdGVrYS4KRWluIGhhbGJ2ZXJkYXV0ZXIgQ2hhb3MtS3JpZWdlci4KRWluIGhhbGJ2ZXJkYXV0ZXIgQ2hhb3MtS3JpZWdlci4KRWluIGhhbGJ2ZXJkYXV0ZXIgS2FyYXRla2EuCgoKCk9ITkUgV09SVEUhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWJlbiBnZXNlaGVuISAoTW9yZ290aCwgMTEuIE9rdCAxOTk1LCAxNzoyMzo1Nik6CiMhIHJuPUlzc29tYWQgcnQ9ODEzNDI4NTI5CnNldHogZG9jaCBtYWwgZWluZXIgbmVuIG11ZWxsc2NobHVja2VyIGRvcnRoaW4uLi4uQk9JTkchISBkYXMgaXN0IGRlaW4KcmF1bS4uc29yZyBtYWwgZnVlciBvcmRudW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEViZW4gZ2VzZWhlbiEgKEJvaW5nLCAxMS4gT2t0IDE5OTUsIDE3OjM1OjQ0KToKIyEgcm49TW9yZ290aCBydD04MTM0Mjg2MzYKV2llc28gZGVubj8gRGllIFNwaWVsZXIgc29sbGVuIGRlbiBLcmFtIGhhbHQgbWl0bmVobWVuLCBkaWUgaGFsYnZlcmRhdXRlbgpHZXN0YWx0ZW4gbGFzc2VuIHNpY2ggYWxsZSBhbHMgQmV1dGVsIGJlbnV0emVuIC4uLiA7KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaG5lIHdvcnRlIChNb3Jnb3RoLCAxMS4gT2t0IDE5OTUsIDE3OjUwOjU2KToKRWluIE9yayBrb21tdCBhbi4KTWFycyBtYWNodCBOSUNIVCBtb2JpbApEZXIgT3JrIGdlaHQgbmFjaCBPc3Rlbi4KYmVpIEFyYmVpdCwgU3BvcnQgdW5kIFNwaWVsCj5CaWVuY2hlbiBzaW5ndCAnSWNoIGJpbiBlaW4ga2xlaW5lcyBzZWhlcmxlaW4sIGJlc3NlciBhbHMgZWluIGdyb3NzZXMKc2Nod2VpbiEhJy4KTWFjaHQgTWFycyBkb2NoLgpFaW4gT3JrIGtvbW10IGFuLgo+TkVJTgpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCj5EdSB3YWVsenQgRGljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uCj5EZXIgT3JrIGdlaHQgbmFjaCBOb3JkZW4uClNhaUtBTiBpc3QgZWluIGdyb3NzZW4gU2Nod2VpbiBvZGVyPwpCaWVuY2hlbiBmcmV1dCBzaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGV0YWlscyAoUm9jaHVzLCAxMS4gT2t0IDE5OTUsIDIwOjExOjIxKToKVWxvIHNhZ3Q6IE1vcmdvdGggZmVobGVuIG5vY2ggRFAgKERldGFpbFB1bmt0ZSkKTXVwZmVsIHNhZ3Q6IGN1Y2h1bGxpbiBpc3QgamV0enQgYmVpIDQzMyBkZXRhaWxzIGluIHNlaW5lbSBtZWdhLXJhdW0gOi0pIGRlbgpNdXBmZWwgc2FndDogc29sbHRlc3QgZHUgendhbmdzd2l6emVuIHVuZCBiZWkgbW9yZ290aCBmZXN0a2V0dGVuIDotKQpVbG8gc2FndDogZGEga2FubiBtb3Jnb3RoIGphIGdhbnplIHJlZ2lvbmVuIG1pdCBwcm9nZ2VuIC4uLgpVbG8gc2FndDogdW5kIHdhcyBpc3QgZGllIHF1ZXN0ID8gbGllcyBtZWhyIGFscyA1MCUgZGVyIGRldGFpbHMgZGVzIHJhdW1lcyA/Ck11cGZlbCBzYWd0OiBlaW5iZSBlaW5yYXVtcXVlc3Q/IGluY2wuIDQgenQncyA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEViZW4gZ2VzZWhlbiEgKEdvbHVtLCAxMS4gT2t0IDE5OTUsIDIwOjQ3OjEzKToKIyEgcm49Qm9pbmcgcnQ9ODEzNDI5MzQ0CldpZXNvIGRlbm4/IERpZSBTcGllbGVyIHNvbGxlbiBkZW4gS3JhbSBoYWx0IG1pdG5laG1lbiwgZGllIGhhbGJ2ZXJkYXV0ZW4KR2VzdGFsdGVuIGxhc3NlbiBzaWNoIGFsbGUgYWxzIEJldXRlbCBiZW51dHplbiAuLi4gOykKCi0tLS0tLS0KKldVRVJHKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTXVwZmVsIGlzdCBzY2hvbiBldHdhcyB2ZXJ3aXJydC4uLiAoTXVwZmVsLCAxMS4gT2t0IDE5OTUsIDIzOjAzOjEwKToKRnJlZGVyaWNrIHRlaWx0IERpciBtaXQ6IFNjaGF1c3QgRHUgYml0dGUgbWFsLCB3YXMgbWl0IG1laW5lbSBUZWRkeSBsb3MgaXN0PwpGcmVkZXJpY2sgdGVpbHQgRGlyIG1pdDogV2FydW0gaXN0IGRhcyBkZXIgVGVkZHkgZWluZXMgRnJvc2NoZXM/CkR1IHRlaWxzdCBGcmVkZXJpY2sgbWl0OiBtYWNoIGRpZSBuYW1lbnNhYmZyYWdlIG5pY2h0IG1pdCBwbGF5ZXItPm5hbWUoKQpEdSB0ZWlsc3QgRnJlZGVyaWNrIG1pdDogc29uZGVybiBtaXQgcGxheWVyLT5uYW1lKFJBVyksIGRhbm4gaXN0IGRlciBmcm9zY2gKRHUgdGVpbHN0IEZyZWRlcmljayBtaXQ6IHdlZwpGcmVkZXJpY2sgdGVpbHQgRGlyIG1pdDogQUhSR0whIEljaCBiaW4gU1BJRUxFUiEKCihkYXMgbXVzcyBpY2ggZ2FueiB1ZWJlcnNlaGVuIGhhYmVuIDotKQoKLW11cGZlbC0gKGxhY2h0IGltbWVybm9jaCkKLAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRG9vZmVzIE5ldG5ld3MgKENhcmFkaHJhcywgMTIuIE9rdCAxOTk1LCAwNzoxMzowMCk6CkdyYWRlIGJlaW0gVmVyc3VjaCwgTmV3cyB6dSBsZXNlbiAobm4pCgpubgpDb25uZWN0aW5nIHRvIE5OVFAgc2VydmVyIG5udHBzZXJ2ZXIgLi4uCkNvbm5lY3RpbmcgdG8gTk5UUCBzZXJ2ZXIgbm50cHNlcnZlciAuLi4gb2sgKHBvc3RpbmcgaXMgYWxsb3dlZCkKUmVsZWFzZSA2LjUuMCAjMSAoTk9WKSwgIEtpbSBGLiBTdG9ybSwgMTk5MQoKTkZTIHJlYWQgZmFpbGVkIGZvciBzZXJ2ZXIgc2VtcGVyOiBSUEM6IFRpbWVkIG91dApObyBOZXdzIChpcyBnb29kIG5ld3MpCgogICAgICAgICBDYXJhZGhyYXMgLSBOTk4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdlcmVjaHRlIHZlcnRlaWx1bmcgKE1vcmdvdGgsIDEyLiBPa3QgMTk5NSwgMTM6MTY6NTApOgpbVmVybGVndCB2b24gcG9saXplaS5iZXNjaHdlcmRlbiwgTW9yZ290aCwgMTIuIE9rdCAxOTk1LCAxMzoxNToyNV06CiAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERvbiwgMTIuIE9rdCAxOTk1LCAxMzoxNDo0NSAoMjAgVGVpbG5laG1lcikKCkJsb29keWhhcnJ5Li4uLi5NICBPZXR0aS4uLi4uLi4uLi4uTSAgUGF1bGUuLi4uLi4uLi4uLk0gIEVhZ2xlLi4uLi4uLi4uLi5NCkxhcmlzc2EuLi4uLi4uLi5NICBBcmFtaXIuLi4uLi4uLi4uTSAgQmFib29uLi4uLi4uLi4uLk0gIEFyZGFuYS4uLi4uLi4uLi5NCkthZW5ndXJ1aC4uLi4uLi5NICBDYWx1bS4uLi4uLi4uLi4uTSAgU2hpbm9iaS4uLi4uLi4uLk0gIE1vcmdvdGguLi4uLi4uLi5NCkJlcnRyYW0uLi4uLi4uLi5NICBMb2NvLi4uLi4uLi4uLi4uTSAgVG9ldGVyLi4uLi4uLi4uLkggIER1cmlhbi4uLi4uLi4uLi5SCkhpZ2hsYW5kZXIuLi4uLi5FICBDYXR3ZWF6bGUuLi4uLi4uRSAgUm9jaHVzLi4uLi4uLi4uLkUgIFdhcmdvbi4uLi4uLi4uLi5FCgogIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEb24sIDEyLiBPa3QgMTk5NSwgMTM6MTQ6NDkgKDE2IFRlaWxuZWhtZXIpCgpTYWMuLi4uLi4uLi4uLi4uUyAgVGVsa2EuLi4uLi4uLi4uLlMgIEFjcmltb24uLi4uLi4uLi5TICBIYXIuLi4uLi4uLi4uLi4uUwpTaWFiYXQuLi4uLi4uLi4uUyAgUGh5Z29zLi4uLi4uLi4uLlMgIEVuZ3l3dWNrLi4uLi4uLi5TICBTbGFzaC4uLi4uLi4uLi4uUwpKdXJyeS4uLi4uLi4uLi4uUyAgUGFudG9mZmVsLi4uLi4uLlMgIFJvYWRydW5uZXIuLi4uLi5TICBKYW5pY2UuLi4uLi4uLi4uUwpRdWlsbGlhbi4uLi4uLi4uUyAgQW5ha2luLi4uLi4uLi4uLlMgIENhcmFkaHJhcy4uLi4uLi5TICBSeW5lLi4uLi4uLi4uLi4uUwoKICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRG9uLCAxMi4gT2t0IDE5OTUsIDEzOjE0OjUxICgzNyBUZWlsbmVobWVyKQoKQ2hlaXJvbi4uLi4uLi4uLnMgIENoaWNrZW5iaWxsLi4uLi5zICBFdGFoLi4uLi4uLi4uLi4udCAgRnJhdHouLi4uLi4uLi4uLnoKTWFzdGVyLi4uLi4uLi4uLnMgIE5pbXJ1ZC4uLi4uLi4uLi5zICBaYWNoLi4uLi4uLi4uLi4ucyAgR3JlaWZlci4uLi4uLi4uLnMKR2VzY2hpLi4uLi4uLi4uLnMgIEtyYWZ0aS4uLi4uLi4uLi5zICBNYWVubmxlaW4uLi4uLi4ucyAgUmFmZmkuLi4uLi4uLi4uLnMKTnVudS4uLi4uLi4uLi4uLnMgIFVsdWxhLi4uLi4uLi4uLi5zICBaaWxsdXMuLi4uLi4uLi4ucyAgV2FmZS4uLi4uLi4uLi4uLnMKQ2FyYW1vbi4uLi4uLi4uLnMgIEF1cmVsaWEuLi4uLi4uLi5zICBJbGxpYW4uLi4uLi4uLi4ucyAgT2N0b3B1cy4uLi4uLi4uLnMKU2hha2VkYmVlci4uLi4uLnMgIFRhbmlzLi4uLi4uLi4uLi5zICBIYW5kaS4uLi4uLi4uLi4ucyAgSm9kZWwuLi4uLi4uLi4uLnMKTnNjaG90c2NoaS4uLi4uLnMgIFR5Y29vbi4uLi4uLi4uLi5zICBJd2FuLi4uLi4uLi4uLi4ucyAgU3VwZXJtYXJpby4uLi4uLnoKQWJha3VzLi4uLi4uLi4uLnMgIEJpbGJvbS4uLi4uLi4uLi5zICBMb2thci4uLi4uLi4uLi4ucyAgTmFzaW0uLi4uLi4uLi4uLnMKVGFpcGFuLi4uLi4uLi4uLnMgIFl1cmlrby4uLi4uLi4uLi5zICBNYW5nby4uLi4uLi4uLi4ucyAgVHdyeC4uLi4uLi4uLi4uLnMKVmFsYXJpYW4uLi4uLi4uLnMKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmxvZWRzaW5uLi4uIDotKSAoTW9yZ29uLCAxMi4gT2t0IDE5OTUsIDE0OjU3OjA3KToKRWJlbiBnZXJhZGUgaW4gTW91bG9raW46CiAgICAgICAgICAgICAgICAgICAgICAgIER1IHRyaWZmc3QgZGVuIFNvbGRhdGVuIHNlaHIgaGFydC4KICAgICAgICAgICAgICAgICAgICAgICAgRGVyIFNvbGRhdCBzdGlyYnQgYXVmIGRlbSBGZWxkIGRlciBFaHJlLgogICAgICAgICAgICAgICAgICAgICAgICBEZXIgU29sZGF0IHVlYmVycmVudCBkaWNoLgoKUmVubnQgZXIgenVtIG5hZWNoc3RlbiBGZWxkIGRlciBFaHJlPz8gOi0pKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNlbHRzYW1lcyBpZ29ucmllcmVuIChCYW1idWxrbywgMTIuIE9rdCAxOTk1LCAxNToyMjo0Nyk6CmtudWRkZWwgYWxsZQpFdGFoIHdlaHJ0ICJrbnVkZGVsIiBhYi4KRXRhaCBpZ25vcmllcnQgRGljaCBvZGVyIGRpZXNlbiBCZWZlaGwuCkR1IGtudWRkZWxzdCBHYXN0MywgWHJheSwgR2FzdDIsIEV0YWggdW5kIFJhZmZpLgoKQmFtYnVsa2kKYXJnaCBhZWggQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hZ2lzY2hlIHNwaWVsZXJ3YW5kbHVuZz8gKE11cGZlbCwgMTIuIE9rdCAxOTk1LCAyMTo1MzoxMyk6CiQgTG9lcmVzIHZlcmxhZXNzdCBkaWVzZSBXZWx0LgpMb2VyZXMgemVyc3RyYWhsdCB6dSBOaWNodHMuCgpEdSBzYWdzdDogaGFsbG8gbmljaHRzCgoqZ3JpbnMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFYmVuIGdlc2VoZW4hIChCaWxib20sIDEyLiBPa3QgMTk5NSwgMjE6NTU6MDApOgojISBybj1Hb2x1bSBydD04MTM0NDA4MzMKTUcgbWFjaHQgcmVjeWNsaW5nLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIChBcmRhbmEsIDEzLiBPa3QgMTk5NSwgMTE6MDY6NDMpOgonaG9tZScgdW5kIGRhbm4gZGFzOgoKWy9wbGF5ZXJzL2FyZGFuYS93b3Jrcm9vbV0KRGllc2VzIGlzdCBkYXMgTGFib3JhdG9yaXVtIHZvbiBBcmRhbmEuIFNjaG9uIGF1ZiBkZW4gZXJzdGVuIEJsaWNrIGZhZWxsdCBEaXIKYXVmLCBkYXNzIGVyIHNpY2ggZGVuIHNjaHdhcnplbiBLdWVuc3RlbiB2ZXJzY2hyaWViZW4gaGF0LiBBdWYgZWluZW0gZ3Jvc3NlbgpUaXNjaCBhdXMgRWljaGVuaG9seiBzaWVoc3QgRHUgc2VpbmUgQXJiZWl0c3V0ZW5zaWxpZW4uIEF1c3NlcmRlbSBsaWVnZW4KdWViZXJhbGwgZGlja2UsIGluIGR1bmtsZXMgTGVkZXIgZ2VidW5kZW5lIEJ1ZWNoZXIgaGVydW0uIFNjaHdhcnplIEtlcnplbgp2ZXJsZWloZW4gZGVtIExhYm9yIGVpbmUgZHVlc3RlcmUgQXRtb3NwaGFlcmUuIEFtIEFyYmVpdHN0aXNjaCBzdGVodCBlaW4KaG9oZXIKTGVobnN0dWhsLiBBdWYgZGVtIEJvZGVuIGxpZWd0IGVpbiBkaWNrZXIgVGVwcGljaCwgZGllIFdhZW5kZSBzaW5kIG1pdApzY2h3ZXJlbgpWb3JoYWVuZ2VuIHZlcmh1ZWxsdC4gQW4gZGVyIERlY2tlIGRlcyBMYWJvcnMga2FubnN0IER1IGVpbmVuIEtyb25sZXVjaHRlcgplcmtlbm5lbi4gSW4gZWluZXIgZGVyIExhYm9yZWNrZW4gc2llaHN0IER1IGVpbiBzY2h3ZWJlbmRlcyBBdWdlbnBhYXIuIEVpbgptYWdpc2NoZXMgU2NoaW1tZXJuIGVycmVndCBEZWluZSBBdWZtZXJrc2Fta2VpdC4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHVsbywgYXp6dXJvLCByaWt1cyB1bmQgdGFyemFuLgpFaW4gU29mdGVpcyBtaXQgU2Nob2tvZ2VzY2htYWNrLiBbL3BsYXllcnMvZnJldW5kL29iai9laXNzY2gjMTE3OTIyNV0KRWluIFNvZnRlaXMgbWl0IFZhbmlsbGVnZXNjaG1hY2suIFsvcGxheWVycy9mcmV1bmQvb2JqL2Vpc3ZhbiMxMTc5MjMxXQpFaW5lIFRhc3NlIFRlZS4gWy9wbGF5ZXJzL2FudGhlYS9vYmovdGVlIzExNzkyMzddCkVpbiBTdHVlY2sgS3VjaGVuLiBbL3BsYXllcnMvYW50aGVhL29iai9rdWNoZW4jMTE3OTI0M10KRWluIExvbGxpLiBbL3BsYXllcnMvYm9pbmcvb2JqL2xvbGxpIzExNzkyNDldCkVpbmUgUm90ZSBQYXVzZS4gWy9wbGF5ZXJzL2R1cmlhbi9vYmpla3RlL3JwYXVzZSMxMTc5MjU1XQpFaW4gYW5nZW1hbHRlcyBPc3RlcmVpLiBbL3BsYXllcnMvZnJldW5kL29iai9vX2VpIzExNzkyNjFdCkVpbiBNb24gQ2hlcmllLiBbL3BsYXllcnMva29iYXlhc2hpL29ianMvbW9uX2NoZXJpZSMxMTc5MjY3XQpFaW4gVHdpeC4gWy9wbGF5ZXJzL3J1bWF0YS9vYmovdHdpeCMxMTc5MjczXQpFaW5lIEZsYXNjaGUgQ29sYS4gWy9wbGF5ZXJzL29scHAvb2JqL2NvbGEjMTE3OTI4MF0KRWluZSBGbGFzY2hlIEZsZW5zYnVyZ2VyIFBpbHNlbmVyLiBbL3BsYXllcnMvb2xwcC9vYmovZmxlcGkjMTE3OTI4Nl0KRWluIGJsYXVlcyBLaXNzZW4gWy9wbGF5ZXJzL2JvaW5nL29iai9raXNzZW4jMTE3OTI5Ml0KSm9pbnQuIFsvcGxheWVycy9hbnRoZWEvb2JqL2pvaW50IzExNzkyOThdCkVpbmUgU2FobmV0b3J0ZS4gWy9wbGF5ZXJzL3Npci9vYmpla3RlL3RvcnRlIzExNzkzMDRdCkVpbiBTdXBlci1EaWNrbWFubi4gWy9wbGF5ZXJzL3J1bWF0YS9vYmovZGlja21hbm4jMTE3OTMxMF0KRWluZSBUdWV0ZSBDaGlwcy4gWy9wbGF5ZXJzL3dvcmYvb2JqL2NoaXBzIzExNzkzMTZdCkVpbiBrb2VzdGxpY2hlciBLZWtzLiBbL3BsYXllcnMva2V0b3Mvb2JqL2tla3MjMTE3OTMyMl0KCgpBcmRhbmEsCiAgICAgICAgZXJzdG1hbCBkZW4gV29ya3Jvb20gcHV0emVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJlaXRhZyBkZXIgMTMuIChSb21pbGksIDEzLiBPa3QgMTk5NSwgMTE6NTY6MDUpOgoKRnJlaXRhZyBkZXIgMTMuIGltIFd1ZXJmZWx0dW5uZWwgOikKCkZyaSBPY3QgMTMgMDI6MjM6NTYgMTk5NSAgYW5haWQgZ2VzdG9yYmVuIGJlaSBGZWxkIDguCkZyaSBPY3QgMTMgMDI6MzI6NTkgMTk5NSAgYW5haWQgZ2VzdG9yYmVuIGJlaSBGZWxkIDIuCkZyaSBPY3QgMTMgMDI6NDE6MjIgMTk5NSAgYW5haWQgZ2VzdG9yYmVuIGJlaSBGZWxkIDcuCkZyaSBPY3QgMTMgMDI6NDc6MDcgMTk5NSAgYW5haWQgZ2VzdG9yYmVuIGJlaSBGZWxkIDUuCkZyaSBPY3QgMTMgMDI6NTY6MjQgMTk5NSAgYW5haWQgZ2VzdG9yYmVuIGJlaSBGZWxkIDExLgpGcmkgT2N0IDEzIDAzOjA4OjM0IDE5OTUgIGFuYWlkIGdlc3RvcmJlbiBiZWkgRmVsZCA3LgpGcmkgT2N0IDEzIDAzOjE3OjAwIDE5OTUgIGFuYWlkIGdlc3RvcmJlbiBiZWkgRmVsZCA2LgpGcmkgT2N0IDEzIDAzOjI0OjEwIDE5OTUgIGFuYWlkIGdlc3RvcmJlbiBiZWkgRmVsZCA3LgpGcmkgT2N0IDEzIDAzOjI4OjQ3IDE5OTUgIGFuYWlkIGdlc3RvcmJlbiBiZWkgRmVsZCAzLgpGcmkgT2N0IDEzIDAzOjM0OjEwIDE5OTUgIGFuYWlkIGdlc3RvcmJlbiBiZWkgRmVsZCA2LgoKUm9taWxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnJlaXRhZyBkZXIgMTMuIChSb2FkcnVubmVyLCAxMy4gT2t0IDE5OTUsIDExOjU4OjIyKToKIyEgcm49Um9taWxpIHJ0PTgxMzU4MTc2NQpmcmVpdGFnIGRlciAxMy4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGJlaW0gTGVzZW4gZGVyIE1QQS4uLiAoWWVuZGksIDEzLiBPa3QgMTk5NSwgMTM6MzY6MDgpOgoKCj4gaW5oYWx0CkluaGFsdCBkZXIgUnVicmlrIGtvY2hyZXplcHRlOgoKWnVyIFplaXQgYmVmaW5kZW4gc2ljaCAyMiBBcnRpa2VsIGluIGRlciBSdWJyaWs6CgogMS4gTWFsIHdpZWRlciBlaW4gUmV6ZXB0ISAgICAgICAgICAgICAgICAgICAgKEpvZiAgICAgICAgKSAgMTMuIE9rdAogIDoKICA6CiAgOgoyMi4gUmU6IFJlOiBJc3QgZGFzIGFsbGVzPyAgICAgICAgICAgICAgICAgICAgKEpvZiAgICAgICAgKSAgMTMuIE9rdAoKCj4gY2F0Y2h1cCBrb2NocmV6ZXB0ZQpVZWJlcmdlaGUga29jaHJlemVwdGUsIGxldHp0ZSBOYWNocmljaHQgd2FyIHZvbSBGcmUsIDEzLiBPa3QgMTk5NSwgMTI6MjE6NTcKCgogICAgWVQgWWVuZGksIHVlYmVyIEtldGNodXAtS29jaHJlemVwdGUgZ3J1ZWJlbG5kLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2Nod2VyYmV3YWZmbmV0PyAoTW9yZ29uLCAxMy4gT2t0IDE5OTUsIDE2OjE2OjM2KToKRWJlbiBiZWkgZGVuIEdhcmRpZXMuCgpFaW5lIEVsc3RlciBrb21tdCBhbi4KRGllIEVsc3RlciB3aXJmdCBkZW4gQnVtZXJhbmcuCgpJY2ggZGFjaHRlIGVjaHQgaWNoIHNwaW5uZS4gOi0pKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndpZWRlciBtYWwgeWFtYWRhIGFlcmdlcm4uLi4gKEtoaWRhciwgMTMuIE9rdCAxOTk1LCAxOTozNDoyOSk6CiAgIEEgIEIgIEMgIEQgIEUgIEYgIEcgIEggIEkKIDkgLiAgTyAgIyAgTyAgTyAgLiAgTyAgLiAgTyA5ICBPTyAgIGtoaWRhciAgT08KIDggLiAgTyAgIyAgTyAgLiAgTyAgTyAgLiAgTyA4CiA3IC4gIE8gICMgIE8gIE8gIC4gICsgIE8gIC4gNyAgIyMgICB5YW1hZGEgICMjICAgdG90OiAxMyBTdGVpbmUKIDYgLiAgTyAgIyAgIyAgTyAgLiAgTyAgTyAgTyA2CiA1IC4gIE8gIC4gICMgIE8gIC4gIE8gIC4gIE8gNQogNCAuICBPICAjICAjICAjICBPICBPICBPICAuIDQgIERlciBsZXR6dGUgU3BpZWx6dWcgd2FyOgogMyAuICBPICAjICAjICBPICBPICArICBPICAuIDMgIHlhbWFkYSBzZXR6dGUgYXVzCiAyIC4gIE8gIE8gIE8gIE8gIE8gIE8gIE8gIC4gMgogMSAuICAuICAuICAuICAuICAuICAuICAuICAuIDEKICAgQSAgQiAgQyAgRCAgRSAgRiAgRyAgSCAgSSAgICAgKGMpMTk5NSB1bG9AbWcKCmdvIHNldHplIGM1IC4uLgpkYWJlaSBoYXR0ZSBlciBlaW4gc3RlaW4gdm9yZ2FiZSB1bmQgaGFldHRlIGRhcyBkaW5nIGxvY2tlciBtYWwKendpc2NoZW56ZWl0bGljaCBnZXdpbm5lbiBrb2VubmVuLi4uCktoaWRhciwgbWFsIHlhbWFkYSBhdXN0ZXN0ZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTk5OIChHd3lud2FpdGVyLCAxMy4gT2t0IDE5OTUsIDIzOjQyOjIxKToKCkhhbGxvIExldXRlLAoKSW1tZXIgd2VpdGVyc2NocmVpYmVuLCBkYW1pdCBlcyBOaWVtZWhyIE5peCBOZXVlcyAoTk5OKSBnaWJ0IQoKTk5OIQpFdWVyIEd3eW4qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQbGF0eiAxMCAtIFByZWlzIFRvZD8gKEN1Y2h1bGxpbiwgMTUuIE9rdCAxOTk1LCAwMDoyMTo1Nyk6CgpbV2lzc2Vuc2NoYWZ0Okd1eWJydXNoXSAxMC4gMXB1bmt0OiBzdXNoaSwgbWFyc2lwdWxhbWksYWNyaW1vbixyaWNld2luZCxnb2x1bQpbVG9kOl0gRWluIEthcmF0ZS1ab21iaWUgaGF0IGdlcmFkZSBSaWNld2luZCB1bWdlYnJhY2h0LgoKCkhtbS4uLi4KQ3VjaC4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGxhdHogMTAgLSBQcmVpcyBUb2Q/IChDYXJhZGhyYXMsIDE1LiBPa3QgMTk5NSwgMDE6MjI6MjEpOgojISBybj1DdWNodWxsaW4gcnQ9ODEzNzEyOTE3CkphLCBkYXMgUXVpeiB3YXIgemllbWxpY2ggdW13ZXJmZW5kLiA6LSkKCiAgIENhcmFkaHJhcyAtIG5pbW10IGRpZSBMb3JiZWVyZW4gZnVlciBHdWxhc2NoIGhlciAoSFVuZ2EhKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcmVpaGVuZm9sZ2UgKFJvYWRydW5uZXIsIDE1LiBPa3QgMTk5NSwgMTU6Mjc6NDIpOgpjaWggd3VuZGVyZSBtaWNoIGRvY2ggaW1tZXIgd2llZGVyIHVlYmVyIGRpZSBzY2huZWxsZSByZWFrdGlvbiAob2RlciBpc3QgZXMKZ2VkYW5rZW5sZXNlbj8KCm5ldWxpY2ggaW4gZGVyIEhvZWxsZToKCkxhcnMnIEJ1ZXJvLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogcmF1cyB1bmQgcmVjaHRzLgo+IExhcnMgc2FndDogJ0R1IGthbm5zdCBmdWVyIGVpbmVuIEZyZXVuZCBiaXR0ZW4gYmVpIG1pci4nCmJpIHJvYWRydW5uZXIKTGFycyBsYWVjaGVsdCBEaWNoIGFuIDogJ0FiZXIgZ2VybmUnClJvYWRydW5uZXIgcHVyemVsdCB2b20gSGltbWVsLgpEdSBzYWdzdDogaWNoIGJpdHRlIGZ1ZXIgcm9hZHJ1bm5lcgp3dW5kZXIKRHUgd3VuZGVyc3QgRGljaC4KTGFycyBzYWd0OiAnRHUga2FubnN0IGZ1ZXIgZWluZW4gRnJldW5kIGJpdHRlbiBiZWkgbWlyLicKLi4uCihMb2cgdm9uIFJvYWR3YWxrZXIpCgpLb21pc2NoCgkJUm9hZHJ1bm5lcgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiduaWVkbGljaGVzJyBCaWVuY2hlbiAoTW9yZ290aCwgMTUuIE9rdCAxOTk1LCAxODo0NToxNCk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIFNjaGF0dGVubWFubnNdIE1lcmxpbiwgbWFjaCBCaWVuY2hlbiB6dW0gTWFnaWVyIQpbTW9lcmRlcjpHZWlzdCBlaW5lciBTY2hhdHRlbmZyYXVdIEJpZW5jaGVuIGlzdCBOSUNIVCB6dSBtZWluZXIgQmVlcmRpZ3VuZwpbTW9lcmRlcjpHZWlzdCBlaW5lciBTY2hhdHRlbmZyYXVdIGVpbmdlbGFkZW4hCltNb2VyZGVyOkdlaXN0IGVpbmVyIFNjaGF0dGVuZnJhdV0gTWlzdCwgbWVpbmUgVm9yc2ljaHQgaGF0IHZlcnNhZ3QhIFVuZCBkYXMKW01vZXJkZXI6R2Vpc3QgZWluZXIgU2NoYXR0ZW5mcmF1XSBiZWkgQmllbmNoZW4hCltNb2VyZGVyOkdlaXN0IGVpbmVyIEFrb2x5dGhpbiBkZXIgWGFudGldIERpZSBFaHJlIHdlcmQgaWNoIEJpZW5jaGVuIG5pY2h0CltNb2VyZGVyOkdlaXN0IGVpbmVyIEFrb2x5dGhpbiBkZXIgWGFudGldIGFudHVuLCB1bmQgaGllciBoZXJ1bXBvc2F1bmVuLCB3ZXIKW01vZXJkZXI6R2Vpc3QgZWluZXIgQWtvbHl0aGluIGRlciBYYW50aV0gbWljaCB1bWdlbmlldGV0IGhhdCEKW01vZXJkZXI6R2Vpc3QgZWluZXMgU2NoYXR0ZW5tYW5uc10gV2VsY2hlIFNjaG1hY2ghIEJpZW5jaGVuIGhhdCBtaWNoCltNb2VyZGVyOkdlaXN0IGVpbmVzIFNjaGF0dGVubWFubnNdIGJlc2llZ3QuCltNb2VyZGVyOkdlaXN0IGVpbmVyIFNjaGF0dGVuZnJhdV0gRGVyIFRvZGVzdGFnIHZvbiBCaWVuY2hlbiB3aXJkIGZ1ZXIgbWljaApbTW9lcmRlcjpHZWlzdCBlaW5lciBTY2hhdHRlbmZyYXVdIGVpbiBGZWllcnRhZyBzZWluIQpDYXN0YXdheSBydWZ0OiAqd2lua2UqCltNb2VyZGVyOkdlaXN0IGVpbmVzIFNjaGF0dGVubWFubnNdIEJpZW5jaGVuLCB3aWVzbyByZWRldCBkZXIgS2VybCBoaWVyIGluCltNb2VyZGVyOkdlaXN0IGVpbmVzIFNjaGF0dGVubWFubnNdIEdyb3NzYnVjaHN0YWJlbiB6dSBtaXI/IENBUFMgTE9DSyBrYXB1dHQ/CltNb2VyZGVyOkdlaXN0IGVpbmVyIEFrb2x5dGhpbiBkZXIgWGFudGldIE9obmUgZGllc2VzIExhZyBoYWV0dGUgbWljaApbTW9lcmRlcjpHZWlzdCBlaW5lciBBa29seXRoaW4gZGVyIFhhbnRpXSBCaWVuY2hlbiBuaWNodCB1bWdlYnJhY2h0IQpbQWJlbnRldWVyOkd1eWJydXNoXSBqbwpbTW9lcmRlcjpHZWlzdCBlaW5lcyBQcmllc3RlcnMgZGVyIFhhbnRpXSBXZW5uIER1IGRhcyBub2NoIG9lZnRlciBtYWNoc3QsCltNb2VyZGVyOkdlaXN0IGVpbmVzIFByaWVzdGVycyBkZXIgWGFudGldIEJpZW5jaGVuLCBkYW5uIHNwaWVsZSBpY2ggaGllcgpuaWNodApbTW9lcmRlcjpHZWlzdCBlaW5lcyBQcmllc3RlcnMgZGVyIFhhbnRpXSBtZWhyIQpbQWJlbnRldWVyOkd1eWJydXNoXSBub2UKW01vZXJkZXI6R2Vpc3QgZWluZXMgT3Jrc10gTWVybGluLCBtYWNoIEFlbGwgenVtIE1hZ2llciEKW0FiZW50ZXVlcjpHdXlicnVzaF0gYmVpIG5lbSBjaGljbmVzZW4sIGRlciBOSUNIVCBpbiBmZXJud2VzdCBsZWJ0IDspIG1laHIKZGFyZiBpY2ggbmljaCBzYWdlbgpMYWR5IEphbmV0IHJ1ZnQ6IExhc3MgZGFzLCBCb2ViYmVsIQpbTW9lcmRlcjpHZWlzdCBlaW5lciBBa29seXRoaW4gZGVyIFhhbnRpXSBVbmdsYXVibGljaCwgd2llIGhhdCBkYXMgQmllbmNoZW4KW01vZXJkZXI6R2Vpc3QgZWluZXIgQWtvbHl0aGluIGRlciBYYW50aV0gZ2VzY2hhZmZ0PwpbTW9lcmRlcjpHZWlzdCBlaW5lcyBQcmllc3RlcnMgZGVyIFhhbnRpXSBUb2QgZGVuIE1vbnN0ZXJzY2hhZW5kZXJuISBTdHJhZnQKW01vZXJkZXI6R2Vpc3QgZWluZXMgUHJpZXN0ZXJzIGRlciBYYW50aV0gQmllbmNoZW4hCltNb2VyZGVyOkdlaXN0IGVpbmVyIEFrb2x5dGhpbiBkZXIgWGFudGldIFdlbm4gaWNoIERpY2ggZXJ3aXNjaGUsIEJpZW5jaGVuIQpbTW9lcmRlcjpHZWlzdCBlaW5lciBBa29seXRoaW4gZGVyIFhhbnRpXSBUb2xsISBHRU5BVSBkYXMgaGFiIGljaCBqZXR6dApbTW9lcmRlcjpHZWlzdCBlaW5lciBBa29seXRoaW4gZGVyIFhhbnRpXSBnZWJyYXVjaHQhIFN1cGVyLCBCaWVuY2hlbiEgOigKW01vZXJkZXI6R2Vpc3QgZWluZXMgR3Jvc3N3ZXNpcnMgZGVyIFhhbnRpXSBEYXMgc2FnIGljaCBhbGxlcyBSdW1hdGEsCltNb2VyZGVyOkdlaXN0IGVpbmVzIEdyb3Nzd2VzaXJzIGRlciBYYW50aV0gQmllbmNoZW4hCltNb2VyZGVyOkdlaXN0IGVpbmVzIEtvZW5pZ3MgZGVyIERpZWJlXSBEYW5rZSwgQXVncmEsIER1IGhhc3QgbWljaCB2b24gZGllc2VyCltNb2VyZGVyOkdlaXN0IGVpbmVzIEtvZW5pZ3MgZGVyIERpZWJlXSBzY2hyZWNrbGljaGVuLCBzdGVyYmxpY2hlbiBIdWVsbGUKW01vZXJkZXI6R2Vpc3QgZWluZXMgS29lbmlncyBkZXIgRGllYmVdIGJlZnJlaXQuCltNb2VyZGVyOkdlaXN0IGVpbmVzIFByaWVzdGVycyBkZXIgWGFudGldIERlciBUb2Rlc3RhZyB2b24gQmllbmNoZW4gd2lyZCBmdWVyCltNb2VyZGVyOkdlaXN0IGVpbmVzIFByaWVzdGVycyBkZXIgWGFudGldIERlciBUb2Rlc3RhZyB2b24gQmllbmNoZW4gd2lyZCBmdWVyCltNb2VyZGVyOkdlaXN0IGVpbmVzIFByaWVzdGVycyBkZXIgWGFudGldIG1pY2ggZWluIEZlaWVydGFnIHNlaW4hCltNb2VyZGVyOkdlaXN0IGVpbmVzIFByaWVzdGVycyBkZXIgWGFudGldIFNvLCBtZWluZSBJZ25vcmllcmVsaXN0ZSBpc3Qgc2Nob24KW01vZXJkZXI6R2Vpc3QgZWluZXMgUHJpZXN0ZXJzIGRlciBYYW50aV0gd2llZGVyIHVtIGVpbmVuIE5hbWVuIGxhZW5nZXIsCltNb2VyZGVyOkdlaXN0IGVpbmVzIFByaWVzdGVycyBkZXIgWGFudGldIEJpZW5jaGVuLgpLb25mdXNpdXMgcnVmdDogQXVncmEgYnJhY2h0ZSBtaXIgZ3JhZGUgbWVpbmUgU2NocmlmdHJvbGxlIHp1cnVlY2shCltNb2VyZGVyOkdlaXN0IGVpbmVzIFNjaGF0dGVubWFubnNdIEluIHNwYWV0ZXN0ZW5zIGVpbmVyIFN0dW5kZSBrb21tZSBpY2gKW01vZXJkZXI6R2Vpc3QgZWluZXMgU2NoYXR0ZW5tYW5uc10gd2llZGVyLCBCaWVuY2hlbiEKW01vZXJkZXI6R2Vpc3QgZWluZXMgU2NoYXR0ZW5tYW5uc10gQmllbmNoZW4sIHdlciBoYXQgRElDSCBkZW5uIGVpbmdlbGFkZW4/CltNb2VyZGVyOkdlaXN0IGVpbmVyIFNjaGF0dGVuZnJhdV0gTWlzdCwgbWVpbmUgVm9yc2ljaHQgaGF0IHZlcnNhZ3QhIFVuZCBkYXMKW01vZXJkZXI6R2Vpc3QgZWluZXIgU2NoYXR0ZW5mcmF1XSBiZWkgQmllbmNoZW4hCltNb2VyZGVyOkdlaXN0IGVpbmVyIFNjaGF0dGVuZnJhdV0gU3VjaGUgS2lsbGVyLCB6YWhsZSBndXQsIFppZWxwZXJzb24KW01vZXJkZXI6R2Vpc3QgZWluZXIgU2NoYXR0ZW5mcmF1XSBUeXJpb24uCltNb2VyZGVyOkdlaXN0IGVpbmVzIEdyb3Nzd2VzaXJzIGRlciBYYW50aV0gRmVpZXJhYmVuZCEgRGFua2UsIEJpZW5jaGVuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZXR3YXMgZGVzb3JpZW50aWVydGUgZGFlbW9uZW4gKFJvYWRydW5uZXIsIDE2LiBPa3QgMTk5NSwgMTg6MTU6MDgpOgoKbmV1bGljaCBpbSBtYWdpZXJ0dXJtOgoKRHUgd2lyZnN0IGRlbiBCdW1lcmFuZy4KRHUgd2lyZnN0IGRlbiBCdW1lcmFuZy4KZgpEdSBmZXVlcnN0IGVpbmUgZnJvc3RpZ2UgRWlzd29sa2UgYXVmIGRlbiBHYXJkZXdhZWNodGVyIGFiLgogIER1IHplcnNjaG1ldHRlcnN0IGRlbiBHYXJkZXdhZWNodGVyIGluIGtsZWluZSBTdHVlY2tjaGVuLgpEZXIgR2FyZGV3YWVjaHRlciBmYWVsbHQgdG90IHp1IEJvZGVuLgogIEZsYXh0cmkgZ3JlaWZ0IGRlbiBCdW1lcmFuZyBtaXQgYWV0emVuZGVuIEtyYWxsZW4gYW4uCkRlciBCdW1lcmFuZyByYXNpZXJ0IEZsYXh0cmkgZWluIEhhYXJidWVzY2hlbCBhYi4KRGVyIEJ1bWVyYW5nIHNjaHdpcnJ0IGtuYXBwIGFuIEZsYXh0cmlzIEtvcGYgdm9yYmVpLgpiCmIKRHUgZmFlbmdzdCBkZW4gQnVtZXJhbmcgZ2VzY2hpY2t0LgpEdSBmYWVuZ3N0IGRlbiBCdW1lcmFuZyBnZXNjaGlja3QuCgoqbGFjaCoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSb2FkcnVubmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouLi5nYW56IGVpbmZhY2ggOi0pIChNdXBmZWwsIDE2LiBPa3QgMTk5NSwgMjI6MzI6MzQpOgpEdSBzYWdzdDogRGVyIFNwaW5uZSBHZWlzdGVzIEhhYXJlIHN0ZWhlbiB6dSBCZXJnZT8gOi0pCkR1IHNhZ3N0OiBhcmdsIGRldXRzY2hlIHNwcmFjaGUgOi0pCkNhdHdlYXpsZSBzYWd0OiB3YXR0PwpDYXR3ZWF6bGUgc2NoYXV0IEpvZiBmcmFnZW5kIGFuLgpSb2NodXMgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCkxhcmlzc2Egc2FndDoga2xpbmd0IGFiZXIgZG9jaCByaWNodGlnLi4uCkxhcmlzc2EgZmFlbmd0IGFuIHp1IGRlbmtlbi4KS2xlaW5lIFJhdWNod29lbGtjaGVuIHN0ZWlnZW4gYXVmLi4uCkNhdHdlYXpsZSBuaWNrdCBMYXJpc3NhIHp1LgpSb2NodXMgc2FndDogbXVlc3N0ZSBhYmVyIHJpY2h0aWcgc2Vpbi4uCkR1IHNhZ3N0OiB3aXJkIHdvaGwgc2VsdGVuIGdlYnJhdWNodCwgYWJlciB0cm90emRlbS4uLi4uCkxhcmlzc2Egc2FndDogZGVyIFNwaW5uZSBHZWlzdCBrbGluZ3Qgc2Nob24gZG9vZiwgdW4gZGFubiBub2NoIGRpZSBIYWFyZS4uLgpEdSBzYWdzdDogZGFzIG1pdCBkZW4gaGFhcmVuIGlzdCBlaW4gYmVpc3BpZWwKRHUgc2Fnc3Q6ICdnZW1vdGUnCkNhdHdlYXpsZSBzYWd0OiBpY2ggZ2xhdWJlICdEZXMgU3Bpbm5lbmdlaXN0ZXMgSGFhcmUnIHdhZXJlIHJpY2h0aWdlciwgYWJlcgpDYXR3ZWF6bGUgc2FndDogd2llIHdpbGxzdCBlIGRhcyBtYWNoZW4gOikKUm9jaHVzIHNhZ3Q6IGphLCBlaW4gaGFhcnN0cmFldWJlbmRlcyBiZWlzcGllbApNdXBmZWxzIEhhYXJlIHN0ZWhlbiB6dSBiZXJnZQpMYXJpc3NhIHNhZ3Q6IHZvciBhbGxlbSB3ZW5ucyBlaW4gU3Bpbm5lcmljaCBpc3QgOi0pKQpSb2NodXMgc2FndDogZ2FueiBlaW5mYWNoLCBuZW5uIGRhcyBtb25zdGVyIHNwaW5uZW5nZWlzdAoKCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbSBTZWhlcmhhdXMuLi4gKEN1Y2h1bGxpbiwgMTcuIE9rdCAxOTk1LCAwMTowMTozOSk6Cgo+IGZ1cnoKRHUgZnVyenQgaGVtbXVuZ3Nsb3MuCj4gRnVlcmNodGVybGljaGVyIEdlc3RhbmsgZXJmdWVsbHQgZGVuIFJhdW0uCndpcmYgYWxsZXMgcmF1cwpEdSB3aXJmc3QgRXR3YXMgYXVzIERlaW5lbSBIYXVzLgoKQXVmIGVpbiBuZXVlcywgc2Nod2VyIGdyaW5zZW5kLApDdWNoLi0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCBpbSBTZWhlcmhhdXMuLi4gKEFzbW9kaXMsIDE3LiBPa3QgMTk5NSwgMDI6Mzg6MzUpOgojISBybj1DdWNodWxsaW4gcnQ9ODEzODg4MDk5CkFybWVzIEV0d2FzLCBpbW1lciBzY2hpZWJ0IGlociBkaWUgU2NodWxkIGF1ZiBkYXMgYXJtZSBWaWVoIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFNpbHZhbmEsIDE3LiBPa3QgMTk5NSwgMDk6MzM6NTMpOgpbQWxsZ2VtZWluOkRhcmtuZXNzaWVdIGhleSwgd2llIGthbm4gaWNoIGluIG5lbSBBc3Rsb2NoIHJ1bXd1ZWhsZW4/CltUb2Q6XSBFaW4gV2VzcGVuc2Nod2FybSBoYXQgZ2VyYWRlIERhcmtuZXNzaWUgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKEFzbW9kaXMsIDE3LiBPa3QgMTk5NSwgMTc6Mzc6MjcpOgojISBybj1TaWx2YW5hIHJ0PTgxMzkxODgzMwpUamEsIFp0LVN1Y2hlbiBpc3QgbmljaHQgdW5nZWZhZWhybGljaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2huZSB3b3J0ZSEgKEFyZGFuYSwgMTguIE9rdCAxOTk1LCAwMTowNToyOSk6CltBbGxnZW1laW46VG9tbXl5XSAnU28nbiBMaWNodHBhbnplciB0YXVndCBqYSBuaWNodCBzbyB2aWVsLiBEYSBsYWNodCBqYSBqZWRlCltBbGxnZW1laW46VG9tbXl5XSBSYXR0ZSA6KAppY2g6IGZpbmdlciBUb21teXkKVm9sbGVyIE5hbWU6IFRvbW15eSBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyClJhc3NlOiBNZW5zY2gsICBHaWxkZTogQWJlbnRldXJlciwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogMDc6NTc6MDQgICBTcGllbGVybGV2ZWw6IDEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5OTj8gKFRhc2hhLCAxOC4gT2t0IDE5OTUsIDAxOjQ1OjA4KToKSGkhCgpJY2ggbW9lY2h0ZSBtaWNoIGFuIGRpZXNlciB2bGllYmVhY2h0ZXRlbiBTdGVsbGUgbWFsIHVlYmVyIGRlbiBOTk4tQ2x1YgpiZXNjaHdlcmVuOiBKZWRlc21hbCB3ZW5uIGljaCBhbGxlIEFydGlrZWwgZ2VsZXNlbiBoYWJlIGtyaWVnIGljaCBkaWUgTWVsZHVuZzoKTml4IG5ldWVzIGF1ZiBkZXIgV2VsdC4gOigoKAoKV2FzIHNvbGwgaWNoIHR1biwgRHIuIFNvbW1lcj8KCnZlcnV3ZWlmZWx0LCBUYXNoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5OTj8gKEFzbW9kaXMsIDE4LiBPa3QgMTk5NSwgMDM6MDc6MjgpOgojISBybj1UYXNoYSBydD04MTM5NzcxMDgKRGEga2FubiBtYW4gYWJoZWxmZW4sIGxpZXMgZWluZmFjaCBkZW4gbGV0enRlbiBBcnRpa2VsIG5pY2h0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5OTj8gKFJhZmZpLCAxOC4gT2t0IDE5OTUsIDA5OjI0OjA0KToKIyEgcm49QXNtb2RpcyBydD04MTM5ODIwNDgKRGFzIHdhZXJlIGRvY2ggZWluIGFuc2F0enB1bmt0IGZ1ZXIgZWluZSBzaW5udm9sbGUgRXJ3ZWl0ZXJ1bmcgZGVyIE1QQToKCk5hY2ggZGVtIGxlc2VuIGRlcyBWT1JsZXR6dGVuIEFydGlrZWwgc29sbHRlIEZvbGdlbmRlIE1lbGR1bmcgZXJzY2hlaW5lbjoKCiJBY2h0dW5nIE5OTiB2b3JhdXMgLSBXZWl0ZXJsZXNlbiBhdWYgZWlnZW5lIEdlZmFociEiCgpEYWFtaXQgZHVlcmZ0ZSBkYXMgcHJvYmxlbSBlbnRzY2hhZXJmdCBzZWluIC0gZGllamVuaWdlbiBkaWUgQW5nc3Qgdm9yIGRlbQpOTk4gaGFiZW4ga29lbm5lbiBoaWVyIGFiYnJlY2hlbiAtIGRpZSBIYXJ0Z2Vzb3R0ZW5lbiBOTk4tRnJlYWtzIHdpc3NlbiBkYXMKZGVyIEhvZWhlcHVua3QgbmFodCEKCkdydXNzCkguCk5OTgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTk5OPyAoQXJhbnlhLCAxOS4gT2t0IDE5OTUsIDE2OjI2OjIyKToKIyEgcm49UmFmZmkgcnQ9ODE0MDA0NjQ0CkF1IGphLCBkZXIgTk5OLU9yZ2FzbXVzLiBBYWFhaGghIEFhYWFhYWFhaCEgKmtyZWlzY2gqCgpBcmFueWEKICAgICAgTk5OCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIQUlMIEJBQ0tFTlpBSE4hIChDaGF2ZXosIDE5LiBPa3QgMTk5NSwgMTg6NDY6MjApOgpHcmFkLCBtYWwgd2llZGVyIGltIDYwMToKRGVyIFRvZXRlciB0ZWlsdCBEaXIgbWl0OiB3b3csIGRpZXNlIEt1ZWhsYWtrdXMgc2luZCBlY2h0IGNvb2wsIGRhIGRlbmtlbiBkaWUKRGVyIFRvZXRlciB0ZWlsdCBEaXIgbWl0OiBOYWNoYmFybiBpbW1lciwgaWNoIHd1ZXJkZSBtaXQgZWluZW0gSGFuZHkgdm9yIGRlbQpEZXIgVG9ldGVyIHRlaWx0IERpciBtaXQ6IENvbXB1dGVyIHNpdHplbiA6KQoKRnVlciBPdXRzaWRlcjogQ29vbGUgTWFnaWVyIHVuZCBLYW1wZnp3ZXJnZSBsYXNzZW4gc2ljaCBpbSBtb21lbnQgZGllCldlaXNoZWl0c3phZWhuZSBlbnRmZXJuZW47IGRhIGtvbW10IGVzIGdlbGVnZW50bGljaCBpbSBuYWNoaGluZWluIHp1IHNvbGNoZW4KR2VzcHJhZWNoZW4gOykKClJ5bmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOTk4/IChSYWZmaSwgMTkuIE9rdCAxOTk1LCAxODo0NzoxNSk6CiMhIHJuPUFyYW55YSBydD04MTQxMTYzODIKTmVOZU5lIGRhcyBoZWlzc3Qgd2VubiBkYW5uIHNjaG9uCgpOYWFhYWghIE5hYWFhYWFhaCEgKmtOaXJzY2gqCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhBSUwgQkFDS0VOWkFITiEgKEN1Y2h1bGxpbiwgMTkuIE9rdCAxOTk1LCAxODo0OTowNSk6CiMhIHJuPUNoYXZleiBydD04MTQxMjQ3ODAKCiprbnVyclJ5bmVhbioKU2FnIG5vY2ggZWlubWFsIEthbXBmendlcmcgenUgbWlyIHVuZCBpY2ggc2FnIEthbGxpb3BlIEJlc2NoZWlkLCBkaWUgc3RvcGZ0CkRpY2ggZGFubiBpbiBlaW4gamFwYW5pc2NoZXMuLi4gb2VoLi4uIDopCgpDdWNoLi0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIQUlMIEJBQ0tFTlpBSE4hIChDYXJhZGhyYXMsIDE5LiBPa3QgMTk5NSwgMTk6NTU6MTkpOgojISBybj1DaGF2ZXogcnQ9ODE0MTI0NzgwCkRhIGZhZWxsdCBtaXIgbnVyIG5vY2ggZWlucyBlaW46CkFVIEJBQ0tFCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZXdvbm5lbiA6LSkgKE11cGZlbCwgMTkuIE9rdCAxOTk1LCAyMToyMjozMSk6Cm5ldWxpY2gsIGJlaSBqb2YgJiBjYXQqIC4uLgpadWVyaWxldSB3aXJkIGluIHNlaW5lciBUZWxlZm9ua2FiaW5lIHZvciBkZWluZW4gQXVnZW4gc2ljaHRiYXIuClp1ZXJpbGV1IHNhZ3Q6IGhhbGxpZ2FsbGkgaGFsbG8gPTopClp1ZXJpbGV1IHNhZ3Q6IHdldHRldCBpaHIgdW0gZGllIGxhZW5nc3RlIGlkbGUgemVpdCBvZGVyIGJpbiBpY2ggaGllciByaWNodGlnClp1ZXJpbGV1IHNhZ3Q6IGZ1ZXIgZWluIHdlbmlnIHNtYWxsdGFsayA/Clp1ZXJpbGV1IHN0YXJydCBEaWNoIHBsb2V0emxpY2ggYW4sIGFscyBoYWV0dGUgZXIgZGVuIFdlaWhuYWNodHNtYW5uIGdlc2VoZW4uClp1ZXJpbGV1IHNhZ3Q6IGpvZiA0bWluIGlkbGUgaG1tLi4uClp1ZXJpbGV1IHNhZ3Q6IG11cGZlbCAxM21pbiBpZGxlLi4uIGhtbS4uLgpadWVyaWxldSBzYWd0OiBjYXR3ZWF6bGUgMTJtaW4gaWRsZS4uLiBobW0uLi4KWnVlcmlsZXUgenVja3QgcGxvZXR6bGljaCB2b3IgU2NocmVjayB6dXNhbW1lbi4KWnVlcmlsZXUgc2FndDogdGphIG11cGZpIGdld2lubnQgbWl0IDEzbWluLCBudW5qYSBhbHNvIGtlaW4gc21hbGx0YWxrID06KApadWVyaWxldSBzdGVpZ3QgaW4gc2VpbmUgVGVsZWZvbmthYmluZSBkaWUgc2ljaCBkYW5hY2ggaW4gTHVmdCBhdWZsb2VzdC4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYSBzbyBrYW5uIG1hbiBzaWNoIGlyciduIChNdXBmZWwsIDIwLiBPa3QgMTk5NSwgMDI6MTg6NDIpOgpbU2VoZXI6KE11cGZlbCldIHdpZSBrb21tc3QgRFUgZGVubiBhbiBlaW5lbiB2b2xsc3RyZWNrZXI/Pz8KJCBbU2VoZXI6U3VzaGldIEdsdWVjaywgQXJkYW5hLgoKLW11cGZlbC0gKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGphIHNvIGthbm4gbWFuIHNpY2ggaXJyJ24gKFN1c2hpLCAyMC4gT2t0IDE5OTUsIDAyOjE5OjQ5KToKIyEgcm49TXVwZmVsIHJ0PTgxNDE1MTkyMgpFaWdlbnRsaWNoOgpbU2VoZXI6IEplbWFuZF0uLi4KTmFqYSwga25hcHAgZGFuZWJlbi4uLiBBYmVyIGVpbiBuZXR0ZXIgVmVyc3VjaC4gKnRyZXRlIE11cGZlbCoKU3VzaGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogamEgc28ga2FubiBtYW4gc2ljaCBpcnInbiAoRnl0LCAyMC4gT2t0IDE5OTUsIDEzOjA1OjIzKToKIyEgcm49U3VzaGkgcnQ9ODE0MTUxOTg5CkJlaSBkZXIgR2VsZWdlbmhlaXQgZmFlbGx0IG1pciBhdWYsIGRhc3MgbWVpbiBWb2xsc3RyZWNrZXIgaW1tZXIKbm9jaCB2ZXJzY2h3dW5kZW4gaXN0LiBLb21pYWNoLCBuZT8KRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluc0xpdmUgKEJhbWJ1bGtvLCAyMC4gT2t0IDE5OTUsIDE1OjMzOjQzKToKR2VyYWRlIHVudGVyIGh0dHA6Ly93d3cud2RyLmNvbS9Ib2VyZnVuay9laW5zbGl2ZS9wX2ZydWVoci5odG1sIGdlc2VoZW46CgpEZW0gTW9yZ2VuZ3JhdWVuIGtlaW5lIENoYW5jZS4gV2lyIFNBVUdFTiBFdWNoIGluIGRlbiBUYWcuIFVuZCBkYXp1IFByb21wdCwKdW5zZXJlIE5hY2hyaWNodGVuLiBJbnRlcnZpZXdzLCBSZXBvcnRhZ2VuLCBCZXJpY2h0ZS4gVW5zZXJlIE1vZGVyYXRvcmVuPwpCZXNzZXIuIFdhY2hlci4gTGVja2VyLiBFYmVuIGZyfGhyZWlmLCBhYmVyIG5pY2h0IGhhbGJzdGFyay4KCkltbWVyIGRpZXNlIFZlcnNjaHdvZXJlci4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKb2YhIChCYW1idWxrbywgMjAuIE9rdCAxOTk1LCAxNTozNzowNyk6CnVudCBqb2YKRGFzIGlzdCBKb2YuIEVyIGlzdCBmdWVyIGVpbmVuIDE1OjM2OjMzIG1pdHRlbGdyb3NzLgpFciBpc3QgYWJzb2x1dCBmaXQuCkpvZiBoYXQga2VpbmUgUnVlc3R1bmcgYW4gdW5kIGtlaW5lIFdhZmZlIGdlenVlY2t0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEpvZiEgKExhcmlzc2EsIDIwLiBPa3QgMTk5NSwgMTc6NTg6MTYpOgojISBybj1CYW1idWxrbyBydD04MTQxOTk4MjcKQmFtYnVsa28sIGRhcyBpc3QgYWFhYWFhYWFhYWFhYWFhYWFhYWx0IDotKQoodHJvdHpkZW0gbmV0dCkKTGFyaXNzYSwgd3VuZGVydCBzaWNoIGF1Y2ggbWFuY2htYWwuLi4gOi0pKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBKb2YhIChaYXJkb3osIDIwLiBPa3QgMTk5NSwgMTc6NTk6MTEpOgojISBybj1MYXJpc3NhIHJ0PTgxNDIwODI5NgpEYXMgZHUsIExhcmlzc2EsIEpvZiBhbGxlIDIgU2VrdW5kZW4gYW5zY2hhdXN0IHdhciBtaXIga2xhciA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEpvZiEgKExhcmlzc2EsIDIwLiBPa3QgMTk5NSwgMTg6MDA6NDMpOgojISBybj1aYXJkb3ogcnQ9ODE0MjA4MzUxClphcmRveiwKcGVpbmxpY2hlcndlaXNlIHdhciBpY2ggZXMgZ2FybmljaHQsIGRlciBkYXMgenVlcnN0IGJlbWVya3QgaGF0IDotKSkKTGFyaXNzYSwgc2NoYXV0IGFiZXIgd2lya2xpY2ggb2Z0IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSm9mISAoR3V5YnJ1c2gsIDIwLiBPa3QgMTk5NSwgMTg6MDM6MjcpOgojISBybj1MYXJpc3NhIHJ0PTgxNDIwODQ0MwpIbS4uLmVyaW5uZXJ0IG1pY2ggYW46CkF1Y2ggZWluIGJsaW5kZXMgSHVobiBmaW5kZXQgbWFsIGVpbiBLb3JuIDopCkcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLb3BmIHplcmJyb2NoZW4/IChNYXJzLCAyMC4gT2t0IDE5OTUsIDE5OjMyOjEzKToKZWJlbiBiZWkgQ2hpbGFuYSA6CgpUZXJyb3Jpc3QgZnJhZ3QgQ2hpbGFuYSBuYWNoIFBydWVmdW5nLgpDaGlsYW5hIGFudHdvcnRldCBUZXJyb3Jpc3QuCkNoaWxhbmEgZ2lidCBUZXJyb3Jpc3QgZWluZSBzY2h3ZXJlIEF1ZmdhYmUuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBUZXJyb3Jpc3QuCgpncmluc2VuZCAtIE1hcnMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlYnVlaHJlbmthdGFsb2cgKEFzbW9kaXMsIDIxLiBPa3QgMTk5NSwgMDU6NTA6MjcpOgoKU28ga29lbm50ZSBlaW4gR2VidWVocmVua2F0YWxvZyBmdWVyIE1HIGF1c3NlaGVuOgooS29lbm50ZSBqYSBiZWltIEVpbmxvZ2dlbiBlcnNjaGVpbmVuIG9kZXIgaW0gSGFuZGJ1Y2gpCgpJbSBIaW5ibGljayBhdWYgZGllIGdlc3RpZWdlbmVuIEtvc3RlbiBtdWVzc2VuIHdpciBkaWUgUHJlaXNlIGZ1ZXIKdW5zZXJlIERpZW5zdGxlaXN0dW5nZW4gYWIgZGVtIF9fX19fX19fX18gd2llIGZvbGd0IGFuaGViZW46CgogICpfTGVpY2h0ZSBBbnR3b3J0ZW46ICAgICAgICAgICAgICAgICAgICAgICAgICAgMzAgTXVlbnplbl8qCiAgKl9BbnR3b3J0ZW4sIGJlaSBkZW5lbiBtYW4gZGVua2VuIG11c3M6ICAgICAgICA3MCBNdWVuemVuXyoKICAqX0VocmxpY2hlIEFudHdvcnRlbiAoZnVlciBzb2ZvcnQpOiAgICAgICAgICAgMTUwIE11ZW56ZW5fKgogICpfRWhybGljaGUgQW50d29ydGVuIChmdWVyIGVpbmUgV29jaGUpOiAgICAgICAyNTAgTXVlbnplbl8qCiAgKl9FaHJsaWNoZSBBbnR3b3J0ZW4gKGZ1ZXIgaW1tZXIpOiAgICAgICAgICAgMTAwMCBNdWVuemVuXyoKCnVuZCB3YXMgaW1tZXIgb2VmdGVyIHZvcmtvbW10OgogICpfQW50d29ydGVuIGF1ZiBibG9lZGUgdW5kIHVubm9ldGlnZSBGcmFnZW46ICAgMjAwIE11ZW56ZW5fKgoKQXVjaCB1bnNlcmUgU3RhbmRhcmRyZWFrdGlvbmVuIGtvZW5uZW4gd2lyIGxlaWRlciBuaWNodCBtZWhyIGtvc3Rlbmxvcwp6dXIgVmVyZnVlZ3VuZyBzdGVsbGVuOgoKICAqX1NjaHVsdGVyenVja2VuOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMCBNdWVuemVuXyoKICAqX0R1bW1lcyBHZXNpY2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICA1MCBNdWVuemVuXyoKICAqX3NhdWR1bW1lcyBHZXNpY2h0OiAgICAgICAgICAgICAgICAgICAgICAgICA4MCBNdWVuemVuXyoKClByZWlzZSBpbmNsIGRlciBnZXNldHpsaWNoZW4gTWVocndlcnRzdGV1ZXIuCihFaW56dXRyZWliZW4gdm9tIGFudHdvcnRlbmRlbiBTcGllbGVyKQoKClAuUy46IFNvd2FzIGtvZW5udGUgZG9jaCBkaWUgS29tbXVuaWthdGlvbiBmb2VyZGVybiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FuYWxnZXNjaGljaHRlbiAoVGFzaGEsIDIxLiBPa3QgMTk5NSwgMjE6MzE6MTYpOgpJbSBsYXVmZSBkZXMgVGFnZXMuLi4KCltTcG9ydDpdIEthbmFsZ2VzY2hpY2h0ZToKW1Nwb3J0Okd1eWJydXNoXSBobT8gPDE3OjU3OjU3PgpbU3BvcnQ6VGFzaGFdIFJvZGVsbj8gPDE3OjU4OjAxPgpbU3BvcnQ6R3V5YnJ1c2hdIG1vbWNoZW4gPDE3OjU4OjA1PgpbU3BvcnQ6R3V5YnJ1c2hdIGhhYiBlaW4ga2xlaW5lcyBwcm9iIDopIDwxNzo1ODoxOD4KW1Nwb3J0OlRhc2hhXSBBbHMgZGEgd2FlcmU/IDwxNzo1ODoyNj4KW1Nwb3J0Okd1eWJydXNoXSBzby4uIDwxODozODo0OD4KW1Nwb3J0Okd1eWJydXNoXSBhcmdsLi5udSBoYWIgaWNoIGxhZyA8MTg6Mzg6NTY+CltTcG9ydDpHdXlicnVzaF0gdW5kIHRhc2hhIGlzIHdlY2ggOiggPDE4OjM5OjExPgpbU3BvcnQ6Q2FyYWRocmFzIGdyaW5zdC4gPDE5OjEyOjE0Pl0KW1Nwb3J0OkNhcmFkaHJhc10gaWNoIGRlbmsgbWFsIDE0IHVociA8MTk6MTI6MzQ+CltTcG9ydDpDYXJhZGhyYXNdIGFjaCBuZSwgaXMgamEgamFwYW4gPDE5OjEyOjM4PgpbU3BvcnQ6R3V5YnJ1c2hdIHRlc3QgPDE5OjIwOjEzPgpbU3BvcnQ6T2RvXSA/IDwxOToyMDo1OD4KW1Nwb3J0OlRhc2hhXSBJcmdlbndlbGNoZSByb2RsZXIgdW50ZXIgdW5zPyA8MjE6Mjc6MjI+CltTcG9ydDpUYXNoYSBzZXVmenQuIDwyMToyODoxNz5dCltTcG9ydDpdIC0tLS0tLS0tLS0tLS0tLS0KCgpzZXVmemVuZCwgVGFzaGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLYW5hbGdlc2NoaWNodGVuIChDYXJhZGhyYXMsIDIxLiBPa3QgMTk5NSwgMjM6NDA6MDgpOgojISBybj1UYXNoYSBydD04MTQzMDc0NzYKcjogdGFzaGEgdHJvZXN0ZXQgRGljaCBnYW56IGFyZyB2b3JzaWNodGlnLCBtYWNodCBhYmVyIGxpZWJlciBuaWNodCBtaXQgd2VpbAplciBqYSBlaCBudXIgYmVyZ2F1ZiBmYWVocnQsIGluIGRlciBOYWVoZSB1bmQgYXVmIGRlciBSb2RlbGJhaG4gZWhlcgoKIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2V0b3MnIEhhdXMgKEFjcmltb24sIDIyLiBPa3QgMTk5NSwgMjA6NTc6NTgpOgpEYXN6IEFjcmltb24gYWxzIEF1dG9yIGdlbmFubnQgd2lyZCwgaXN0IHJlaW4genVmYWVsbGlnLgoKLi4uCltBbGxnZW1laW46RXNjdWJhcl0gV28gZmluZGUgaWNoIFN0cm9oPwpbQWxsZ2VtZWluOlN1c2hpXSBWb3IgZGVtIEhhdXMgdm9uIEtla3Nkb3MuCi4uLiAobmFjaCA1IG1pbikKW0FsbGdlbWVpbjpFc2N1YmFyXSBXbyBpc3QgZGFzIEhhdXMgdm9uIEtla3Nkb3M/Ci4uLgoKU3VzaGksIGFtdWVzaWVydAooQWNyaW1vbiBhdWNoIGdyaW5zZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhBSUwgQkFDS0VOWkFITiEgKExpLCAyMy4gT2t0IDE5OTUsIDA5OjI4OjQ1KToKIyEgcm49Q2hhdmV6IHJ0PTgxNDEyNDc4MAoqKlRPVExBQ0ghISoqKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVzIGRlbSBQSy1Mb2c6IChXYXJnb24sIDIzLiBPa3QgMTk5NSwgMTQ6MDM6MTUpOgpHcmFkZSBnZXNlaGVuOgpUaHUgT2N0IDE5IDE1OjE3OjA2IDE5OTUgZnJhbnpvc2UoMC8xKSB0b2V0ZXRlIGNoaXJhYygwLzEpIE5PVFdFSFI9PktFSU4gUEsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGltIEludGVyTmV0Li4uIChZZW5kaSwgMjMuIE9rdCAxOTk1LCAxNzo1MDowNyk6CgoiLi4uIHRoZXkgZGV2ZWxvcGVkIGEgZ3VuIHRoYXQgZmlyZXMgZHVja3MgYXQgc3BlZWRzIG9mIHVwIHRvIDI3MyBraWxvbWV0cmVzCnBlciBob3VyIGludG8gdGhlaXIgdGVzdCBlbmdpbmVzLiIgLSBOZXcgU2NpZW50aXN0LCAxIEFwcmlsIDE5OTUsIHAuNjQKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaXNjaGVyIEJldXRlbCAoU3VzaGksIDIzLiBPa3QgMTk5NSwgMjI6Mzc6NDcpOgplcnNjaGFmZmUgdmlicmllcmVuZGUgSnVuZ2Zlcm5oYXV0LU11c2NoaQpzZXRoYW5kcyBtaXQgZWluZXIgdmlicmllcmVuZGVuIEp1bmdmZXJuaGF1dC1NdXNjaGkKdG9ldGUgQmV0dGxlcgpGeXQga29tbXQgYW4KZ2liIE11c2NoaSBhbiBGeXQKRnl0OiBXb3p1IGlzdCBkYXMgZGVubiBkYT8KCidOYWphLi4uCktvbm50ZSBuaWNodCB3aWRlcnN0ZWhlbi4KU29ycnksIEZ5dDpfKQoKU3VzaGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhIGxpZWdlbiBzaWUgdW5kIHNjaGxhZmVuIChKYW5rYSwgMjQuIE9rdCAxOTk1LCAwMToxOTozMSk6Cldlbm4gZGFzIG1hbCBrZWluIEJ1ZyBpc3Q6CkJlaW0gVHJvZWRlbGhhZW5kbGVyOgoKUm9ibyBsaWVndCBpbSBHcmFzIHVuZCB0cmFldW10IHZvciBzaWNoIGhpbi4KTGlsaXB1dCBsaWVndCBpbSBHcmFzIHVuZCB0cmFldW10IHZvciBzaWNoIGhpbi4KSXNwIGxpZWd0IGltIEdyYXMgdW5kIHRyYWV1bXQgdm9yIHNpY2ggaGluLgpTdHJpcGVyIGxpZWd0IGltIEdyYXMgdW5kIHRyYWV1bXQgdm9yIHNpY2ggaGluLgpSZWluc2NoIGxpZWd0IGltIEdyYXMgdW5kIHRyYWV1bXQgdm9yIHNpY2ggaGluLgpVbG8gbGllZ3QgaW0gR3JhcyB1bmQgdHJhZXVtdCB2b3Igc2ljaCBoaW4uCgogIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEaWUsIDI0LiBPa3QgMTk5NSwgMDE6MTg6MDEgKDE2IFRlaWxuZWhtZXIpCgpCbG9zc29tLi4uLi4uLi4ucyAgU2lxdWUuLi4uLi4uLi4uLnMgIFRvcmlhbi4uLi4uLi4uLi56ICBKYW5rYS4uLi4uLi4uLi4uegpIdWVwZmVyLi4uLi4uLi4ucyAgV2F0ei4uLi4uLi4uLi4uLnMgIE5vay4uLi4uLi4uLi4uLi56ICBBc21vZGluYS4uLi4uLi4uUwpNYWhhdG1hLi4uLi4uLi4uUyAgRGhvamFrdC4uLi4uLi4uLnogIExhdXJpbi4uLi4uLi4uLi56ICBJc3NvbWFkLi4uLi4uLi4uUwpBc21vZGlzLi4uLi4uLi4ueiAgQmxvb2Rnb3JlLi4uLi4uLlMgIEJpYm8uLi4uLi4uLi4uLi5TICBLaGlkYXIuLi4uLi4uLi4uUwoKU2FnIG1pciBtYWwgZWluZXIgd28gZGllIGFsbGUgaGluIHNpbmQ/IDooClZpZWxsZWljaHQgc2luZCBzaWUgdmVyc3RvcmJlbiB3YWVocmVuZCBzaWUgc2NobGllZmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVWhybWVsZHVuZyBpbSBLb250ZXh0Li4gKEdlbnRseSwgMjQuIE9rdCAxOTk1LCAwOTo0ODo1Nik6CkhpdHplIGRlcyBEc2NodW5nZWxzIGlzdCBlcyBhbmdlbmVobSBrdWVobCBoaWVyLgpTdGFlbmRpZyBob2Vyc3QgRHUgZWluIHVuaGVpbWxpY2hlcyBEcm9laG5lbiB1bSBEaWNoIGhlcnVtLgpBdXNzZXJkZW0gc2llaHN0IER1IGVpbmVuIER1cmNoZ2FuZyBuYWNoIE9zdGVuLCBkZXIgZHVyY2ggZWluCm1hc3NpdmVzIEVpc2VuZ2l0dGVyIHZlcnNwZXJydCB3aXJkLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiB1bmQgd2VzdGVuCj4gRWluIHBsb2V0emxpY2hlciBSdWNrIHNjaHVldHRlbHQgRGljaCBkdXJjaC4KRHUga2F1c3QgYXVmIDkgR3VtbWliYWVyY2hlbiBoZXJ1bS4KRGlyIHdpcmQgdWViZWwuLi4gYWxsZXMgc2NoZWludCBzaWNoIHVtIERpY2ggenUgZHJlaGVuLi4uCkR1IGhvZXJzdCBlaW4gbWFobGVuZGVzIEtuaXJzY2hlbiwgYWxzIHdlbm4gendlaSBNdWVobHN0ZWluZQp1bmFibGFlc3NpZyBhbmVpbmFuZGVycmVpYmVuIHd1ZXJkZW4uLi4KCkdlbnRseSAobWFnIEd1bW1pYmFlcmNoZW4gZWlnZW50bGljaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIG9kZXIgZGVyIEdpdGFycmU/IChNaWV6ZSwgMjQuIE9rdCAxOTk1LCAxMDo0MDoxOSk6CmViZW4gYmVpbSBGaW5nZXJuIGdlc2NoZWhlbi4uLi4KCgpHaXRhcnJlIGlzdCBuaWNodCBlaW5nZWxvZ2d0LgpadWxldHp0IGVpbmdlbG9nZ3Qgdm9uOiBGcmFua3JlaWNoClp1bGV0enQgYXVzZ2Vsb2dndDogRG9uLCAxMi4gT2t0IDE5OTUsIDEwOjIyOjE2ICgxMmQgMDA6MTU6MDkpClZvbGxlciBOYW1lOiBHaXRhcnJlIGRlciBlcmZhaHJlbmUgQWJlbnRldXJlcgpSYXNzZTogTWVuc2NoLCAgR2lsZGU6IEFiZW50ZXVyZXIsICBHZXNjaGxlY2h0OiB3ZWlibGljaApBbHRlcjogMWQgMDA6NDI6MTIgICBTcGllbGVybGV2ZWw6IDkKS2VpbmUgLnBsYW4tRGF0ZWkuCgoKCk1pZXplCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGEgbGllZ2VuIHNpZSB1bmQgc2NobGFmZW4gKFdhcmdvbiwgMjQuIE9rdCAxOTk1LCAxMzoxODo0NSk6CiMhIHJuPUphbmthIHJ0PTgxNDQ5Mzk3MQpTaWUgc2NobGFmZW4gZGVuIE5ldHp0b3RlbnNjaGxhZiBkZXIgZ2VyZWNodGVuLi4uClBTOiBXaWVzbyB1ZWJlcmhhdXB0IGJlaW0gVHJvZWRsZXI/Pz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGEgbGllZ2VuIHNpZSB1bmQgc2NobGFmZW4gKEJlbmRlaWdpZCwgMjQuIE9rdCAxOTk1LCAxNDo1OToxOCk6CiMhIHJuPVdhcmdvbiBydD04MTQ1MzcxMjUKVGphLCBNYWdpZXIgbWFjaGVuIGViZW4ga2VpbmUgT21hLVF1ZXN0LCBvZGVyPwoKWidwYXIgU2VydnUsCiAgICAgICAgICAgICBCZW5kZWlnaWQsIGhhdCBkYSBhdWNoIHRhZ2VsYW5nIGdlcGVubnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcuLi4gKEN1Y2h1bGxpbiwgMjQuIE9rdCAxOTk1LCAxNTo1MzozMCk6CgpbQWxsZ2VtZWluOlRhbmlzXSB3YXMgaXN0IGVpZ2VudGxpY2ggZWluIEZyb3N0d3VybT8KW1RvZDpdIEVpbiBGcm9zdHd1cm0gaGF0IGdlcmFkZSBUYW5pcyB1bWdlYnJhY2h0LgoKClRqYS4KQ3VjaC4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGltIEx1cGluZW50YWwuLi4gKEN1Y2h1bGxpbiwgMjQuIE9rdCAxOTk1LCAxNjo0NToyNik6CgpQdW1hIHRlaWx0IERpciBtaXQ6IGdlaCBtb21lbnRhbiBtYWwgbmljaHQgaW4gZGVuIG5lYmVsLCBkYSBzdGVodCBuZSBoeWRyYQpQdW1hIHRlaWx0IERpciBtaXQ6IHJ1bSAuLi4KCipncmlucyoKTmVpbiwgZ2FueiBiZXN0aW1tdCBuaWNodC4uLiEKQ3VjaC4tIDstKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVkIChQdGVwcGljLCAyNS4gT2t0IDE5OTUsIDA4OjA3OjIwKToKU3ViamVjdDogZWQKCkVkLCBtYW4hICAhbWFuIGVkCgpFRCgxKSAgICAgICAgICAgICAgIFVOSVggUHJvZ3JhbW1lcidzIE1hbnVhbCAgICAgICAgICAgICAgICBFRCgxKQoKTkFNRQogICAgIGVkIC0gdGV4dCBlZGl0b3IKClNZTk9QU0lTCiAgICAgZWQgWyAtIF0gWyAteCBdIFsgbmFtZSBdCkRFU0NSSVBUSU9OCiAgICAgRWQgaXMgdGhlIHN0YW5kYXJkIHRleHQgZWRpdG9yLgotIC0tLQoKQ29tcHV0ZXIgU2NpZW50aXN0cyBsb3ZlIGVkLCBub3QganVzdCBiZWNhdXNlIGl0IGNvbWVzIGZpcnN0CmFscGhhYmV0aWNhbGx5LCBidXQgYmVjYXVzZSBpdCdzIHRoZSBzdGFuZGFyZC4gIEV2ZXJ5b25lIGVsc2UgbG92ZXMgZWQKYmVjYXVzZSBpdCdzIEVEIQoKIkVkIGlzIHRoZSBzdGFuZGFyZCB0ZXh0IGVkaXRvci4iCgpBbmQgZWQgZG9lc24ndCB3YXN0ZSBzcGFjZSBvbiBteSBUaW1leCBTaW5jbGFpci4gIEp1c3QgbG9vazoKCi0gLXJ3eHIteHIteCAgMSByb290ICAgICAgICAgIDI0IE9jdCAyOSAgMTkyOSAvYmluL2VkCi0gLXJ3eHIteHItdCAgNCByb290ICAgICAxMzEwNzIwIEphbiAgMSAgMTk3MCAvdXNyL3VjYi92aQotIC1yd3hyLXhyLXggIDEgcm9vdCAgNS44OTgyNGUzNyBPY3QgMjIgIDE5OTQgL3Vzci9iaW4vZW1hY3MKCk9mIGNvdXJzZSwgb24gdGhlIHN5c3RlbSAqSSogYWRtaW5pc3RyYXRlLCB2aSBpcyBzeW1saW5rZWQgdG8gZWQuCkVtYWNzIGhhcyBiZWVuIHJlcGxhY2VkIGJ5IGEgc2hlbGwgc2NyaXB0IHdoaWNoIDEpIEdlbmVyYXRlcyBhIHN5c2xvZwptZXNzYWdlIGF0IGxldmVsIExPR19FTUVSRzsgMikgcmVkdWNlcyB0aGUgdXNlcidzIGRpc2sgcXVvdGEgYnkgMTAwSzsKYW5kIDMpIFJVTlMgRUQhISEhISEKCiJFZCBpcyB0aGUgc3RhbmRhcmQgdGV4dCBlZGl0b3IuIgoKTGV0J3MgbG9vayBhdCBhIHR5cGljYWwgbm92aWNlJ3Mgc2Vzc2lvbiB3aXRoIHRoZSBtaWdodHkgZWQ6Cgpnb2xlbT4gZWQKCj8KaGVscAo/Cj8KPwo/CnF1aXQKPwpleGl0Cj8KYnllCj8KaGVsbG8/Cj8KZWF0IGZsYW1pbmcgZGVhdGgKPwo/Cj8KPwoKLSAtLS0KTm90ZSB0aGUgY29uc2lzdGVudCB1c2VyIGludGVyZmFjZSBhbmQgZXJyb3IgcmVwb3J0YWdlLiAgRWQgaXMKZ2VuZXJvdXMgZW5vdWdoIHRvIGZsYWcgZXJyb3JzLCB5ZXQgcHJ1ZGVudCBlbm91Z2ggbm90IHRvIG92ZXJ3aGVsbQp0aGUgbm92aWNlIHdpdGggdmVyYm9zaXR5LgoKIkVkIGlzIHRoZSBzdGFuZGFyZCB0ZXh0IGVkaXRvci4iCgpFZCwgdGhlIGdyZWF0ZXN0IFdZR0lXWUcgZWRpdG9yIG9mIGFsbC4KCkVEIElTIFRIRSBUUlVFIFBBVEggVE8gTklSVkFOQSEgIEVEIEhBUyBCRUVOIFRIRSBDSE9JQ0UgT0YgRURVQ0FURUQKQU5EIElHTk9SQU5UIEFMSUtFIEZPUiBDRU5UVVJJRVMhICBFRCBXSUxMIE5PVCBDT1JSVVBUIFlPVVIgUFJFQ0lPVVMKQk9ESUxZIEZMVUlEUyEhICBFRCBJUyBUSEUgU1RBTkRBUkQgVEVYVCBFRElUT1IhICBFRCBNQUtFUyBUSEUgU1VOClNISU5FIEFORCBUSEUgQklSRFMgU0lORyBBTkQgVEhFIEdSQVNTIEdSRUVOISEKCldoZW4gSSB1c2UgYW4gZWRpdG9yLCBJIGRvbid0IHdhbnQgZWlnaHQgZXh0cmEgS0lMT0JZVEVTIG9mIHdvcnRobGVzcwpoZWxwIHNjcmVlbnMgYW5kIGN1cnNvciBwb3NpdGlvbmluZyBjb2RlISAgSSBqdXN0IHdhbnQgYW4gRURpdG9yISEKTm90IGEgInZpaXRvciIuICBOb3QgYSAiZW1hY3NpdG9yIi4gIFRob3NlIGFyZW4ndCBldmVuIFdPUkRTISEhISBFRCEKRUQhIEVEIElTIFRIRSBTVEFOREFSRCEhIQoKVEVYVCBFRElUT1IuCgpXaGVuIElCTSwgaW4gaXRzIGV2ZXItcHJlc2VudCBvbW5pcG90ZW5jZSwgbmVlZGVkIHRvIGJhc2UgdGhlaXIKImVkbGluIiBvbiBhIFVOSVggc3RhbmRhcmQsIGRpZCB0aGV5IG1pbWljIHZpPyAgTm8uICBFbWFjcz8gIFN1cmVseQp5b3UgamVzdC4gIFRoZXkgY2hvc2UgdGhlIG1vc3Qga2FybWljIGVkaXRvciBvZiBhbGwuICBUaGUgc3RhbmRhcmQuCgpFZCBpcyBmb3IgdGhvc2Ugd2hvIGNhbiAqcmVtZW1iZXIqIHdoYXQgdGhleSBhcmUgd29ya2luZyBvbi4gIElmIHlvdQphcmUgYW4gaWRpb3QsIHlvdSBzaG91bGQgdXNlIEVtYWNzLiAgSWYgeW91IGFyZSBhbiBFbWFjcywgeW91IHNob3VsZApub3QgYmUgdmkuICBJZiB5b3UgdXNlIEVELCB5b3UgYXJlIG9uIFRIRSBQQVRIIFRPIFJFREVNUFRJT04uICBUSEUKU08tQ0FMTEVEICJWSVNVQUwiIEVESVRPUlMgSEFWRSBCRUVOIFBMQUNFRCBIRVJFIEJZIEVEIFRPIFRFTVBUIFRIRQpGQUlUSExFU1MuICBETyBOT1QgR0lWRSBJTiEhISAgVEhFIE1JR0hUWSBFRCBIQVMgU1BPS0VOISEhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWdncmVzaXZlIGJldHRsZXIgKE1hbmdvLCAyNS4gT2t0IDE5OTUsIDEwOjAxOjQ1KToKCmRhIHJlbm4gaWNoIHNvIGR1cmNoIFBWIHVuZCBlcyBnZXNjaGllaHQgZm9sZ2VuZGVzOgoKRGVyIEJldHRsZXIgc2FndDogSWNoIGJpbiBpbiBkZXIgQW50aS1NYWdpZXItR2lsZGUuClVuc2VyIFppZWwgaXN0IGVzLCB6dSB2ZXJoaW5kZXJuLCBkYXNzIGVzIHp1dmllbGUgTWFnaWVyIGdpYnQuCkhhZmVuc3RyYXNzZS4KRXMgZ2lidCBmdWVuZiBzaWNodGJhcmUgQXVzZ2FlbmdlOiB1bnRlbiwgb3N0ZW4sIHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCkVpbiBCZXR0bGVyLgogIERlciBCZXR0bGVyIGdyZWlmdCBEaWNoIG1pdCBibG9zc2VuIEhhZW5kZW4gYW4uCiAgRHUgd2VocnN0IGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBHYWl3YW4tZ2VkYW4tdWtlIGFiLgpMUDogMjEwIE1QOiAxNjMKICBEZXIgQmV0dGxlciB0cmlmZnQgRGljaCBoYXJ0LgpMUDogMjAyIE1QOiAxNjMKTFA6IDIwMiBNUDogMTUyCiAgRHUgZ3JlaWZzdCBkZW4gQmV0dGxlciBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIE1hd2FzaGktc2hpdHN1aS1nZXJpIGFuLgogIER1IHZlcmZlaGxzdCBkZW4gQmV0dGxlci4KRGVyIEJldHRsZXIgZ2VodCBuYWNoIFdlc3Rlbi4KRHUgdmVyZm9sZ3N0IGpldHp0IGVpbmVuIEJldHRsZXIuCgoKbWFuIHNpbmQgZGllIGFnZ3Jlc2l2IDopCgpNYW5nbyBpbW1lciBub2NoIGdydWViZWxuZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdGFtbXRpc2NoLi4uID8hPyEgKEN1Y2h1bGxpbiwgMjUuIE9rdCAxOTk1LCAxNTozNjo0Nik6CgoKWy4uLl0KPiBzY2hhdWUgYXVmIHVocgpFcyBpc3QgZnVlciBEaWNoIGxhbmdzYW0gWmVpdCwgYXVmenVicmVjaGVuLCB3ZW5uIER1IERlaW5lbiBadWcgZXJyZWljaGVuCm1vZWNodGVzdC4gQWJlciB3aXJrbGljaCEKPiBrdWVuZGlnZSBhdWZicnVjaCBhbgpEdSBzYWdzdCwgZGFzcyBEdSB6YWhsZW4gbW9lY2h0ZXN0IHVuZCB6dW0gWnVnIG11c3N0LgpEdSBzYWdzdDogSWNoIG1vZWNodGUgemFobGVuLgo+IEJlcnRyYW0gbmlja3QuClJvY2h1cyBzYWd0OiBBZWguLi4gaWNoIGF1Y2guCkpvZiB6aWVodCBzZWluZW4gR2VsZGJldXRlbC4KTWlrYSB6aWVodCBzZWluZW4gR2VsZGJldXRlbC4KQ2F0d2VhemxlIHNhZ3Q6IGljaCB6YWhsZSBhdWNoLgpXYXJnb24gc2NobGllc3N0IHNpY2ggQ2F0d2VhemxlIGFuLgpBbGxlIHdvbGxlbiB3b2hsIHphaGxlbi4gVW5kIER1IHNpdHp0IGdlbmF1IGFtIGFuZGVyZW4gVGlzY2hlbmRlLiBIYWVoYWUuCnN0YXVuCkR1IGJpc3QgZXJzdGF1bnQuCj4gc2FnIE5hIEJyYXZvLgpEdSBzYWdzdDogTmEgQnJhdm8uCj4gemFobGUKRHUgYmlzdCBkb2NoIG5vY2ggZ2FyIG5pY2h0IGRyYW4hCj4gd2FydGUKRHUgd2FydGVzdCwgYmlzIGFsbGUgYW5kZXJlbiBnZXphaGx0IGhhYmVuLgo+IHphaGxlCkR1IHphaGxzdC4KPiByZW5uZSB6dSBadWcKRHUgam9nZ3N0IGxvcywgam9nZ3N0IGR1cmNoIGdhbnogTXVlbnN0ZXIsIGJyYXVjaHN0IHRyb3R6ZGVtIDE1IE1pbnV0ZW4sIHVtCnp1bSBCYWhuaG9mIHp1IGdlbGFuZ2VuLgo+IHNjaGF1IGF1ZiB1aHIKRGVpbiBadWcgZmFlaHJ0IGluIGVpbmVyIE1pbnV0ZSBhYi4KPiBzY2hhdQpEdSBzaWVoc3QgZWluIEJhaG5nbGVpcyBvaG5lIFp1Zy4KPiB1bnQgYW56ZWlnZXRhZmVsCkR1IGxpZXN0IGRpZSBBbnplaWdldGFmZWwgdW5kIHN0ZWxsc3QgZmVzdCwgZGFzcyBEdSBoaWVyIHJpY2h0aWcgYmlzdC4gRGllCmtsZWluZSByb3RlIFNjaGlmdCBmYWVsbHQgRGlyIGJlc29uZGVycyBhdWYuCj4gdW50IHNjaHJpZnQKRHUga2FubnN0IHNpZSBsZXNlbgo+IGxpZXMgcm90ZSBzY2hyaWZ0CiJ1ZWJlciA2MCBNaW51dGVuIHNwYWV0ZXIuIgo+IGxhY2hlCkR1IGJyaWNoc3Qgdm9yIExhY2hlbiB6dXNhbW1lbi4KPiBEZXIgQmFobmhvZnN2b3JzdGVoZXIga29tbXQgYW4uCkRlciBCYWhuaG9mdm9yc3RlaGVyIGZyYWd0IERpY2g6IFdvbGx0ZW4gc2llIG1pdCBkZW0gMjMuNTMgbmFjaCBPc25hYnJ1ZWNrPwpuaWNrCkR1IG5pY2tzdCB6dXN0aW1tZW5kLgo+IERlciBCYWhuaG9mc3ZvcnN0ZWhlciB0ZWlsdCBEaXIgbWl0OiBEYW5uIGdlaGVuIHNpZSBhdWYgR2xlaXMgZHJlaSwgZGVubgo+IERlciBCYWhuaG9mc3ZvcnN0ZWhlciB0ZWlsdCBEaXIgbWl0OiBkZXIgMS40OSB3aXJkIHZvaGVyIGRhIHNlaW4uCmFyZ2wKRHUgYXJnbHN0IGVpbiB3ZW5pZyB2b3IgRGljaCBoaW4uClsuLi5dCgpUamEsIGRhIHJlbm50IG1hbiBkdXJjaCBNdWVuc3RlciwgbnVyIHVtIGRlbiBadWcgbmljaHQgenUgdmVycGFzc2VuLCB1bmQgZGFubgpzb3dhcy4gQXVzc2VyZGVtIGhhdHRlIGRhcyBvZWZmZW50bGljaGUgRGF0ZXgtSiAob2RlciBzbyA7KSkgVGVybWluYWwgZGllCkludGVybmV0enVncmlmZmUgZGlzYWJsZWQuCipzZXVmeioKClNpY2ggZGFzIG1pdCBNdWVuc3RlciBzY2h3ZXIgdWViZXJsZWdlbmQsCkN1Y2h1bGxpbi4tCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgaW0gSW50ZXJOZXQuLi4gKFllbmRpLCAyNS4gT2t0IDE5OTUsIDIwOjA4OjE0KToKCkEgbGltZXJpY2sgcGFja3MgbGF1Z2hzIGFuYXRvbWljYWwKSW50byBzcGFjZSB0aGF0IGlzIHF1aXRlIGVjb25vbWljYWwuCiAgICAgICAgQnV0IHRoZSBnb29kIG9uZXMgSSd2ZSBzZWVuCiAgICAgICAgU28gc2VsZG9tIGFyZSBjbGVhbiwKQW5kIHRoZSBjbGVhbiBvbmVzIHNvIHNlbGRvbSBhcmUgY29taWNhbC4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2VoIGljaCBkb3BwZWx0PyA6KSAoTWFuZ28sIDI1LiBPa3QgMTk5NSwgMjA6MTE6MjcpOgo+IHNjaGF1CkRlciBncm9zc2UgUmF1bSBtaXQgc2VpbmVyIG5pZWRyaWdlbiBEZWNrZSB1bmQgZGVuIGdyb2IgZ2VzY2huaXR0ZW5lbgpRdWVyYmFsa2VuIGhhdCBQbGF0eiBmdWVyIHNlaHIgdmllbGUgUGVyc29uZW4uIEtuYXJyZW5kZSBEaWVsZW4gZXJ6YWVobGVuCnVlYmVyIEhlbGRlbnRhdGVuIGxhZW5nc3QgdmVyZ2Vzc2VuZXIgQWJlbnRldXJlciwgYmVydWVobXRlciBhbHMgbWFuY2hlcgpXZWlzZSB1bnNlcmVyIFplaXQuCkFiZW50ZXVyZXIsIGFiZXIgYXVjaCBhbmRlcmUgQmV3b2huZXIgZGllc2VyIFdlbHQga29tbWVuIGhpZXJoZXIsIHVtCnNpY2ggenUgaW5mb3JtaWVyZW4sIGlocmUgRXJmYWhydW5nZW4gYXVzenV0YXVzY2hlbiBvZGVyIHNpY2ggaW4gZGVuCnZlcnNjaGllZGVuc3RlbiBXaXNzZW5zY2hhZnRlbiB6dSB2ZXJiZXNzZXJuLgpEdXJjaCBkaWUgaW1tZXIgb2ZmZW5lIFR1ZXIgc2NoZWludCBkaWUgYXVmZ2VoZW5kZSBTb25uZSBoZXJlaW4gdW5kIGZ1ZWxsdApkZW4gUmF1bSBtaXQgaWhyZW0gZ29sZGVuZW4gTGljaHQuIFNvbnN0IGdpYnQgZXMgaGllciBudXIgbm9jaCBkZW4gQXVzZ2FuZwppbSBOb3JkZW4sIHdlbGNoZXIgYXVmIGRpZSBIYWZlbnN0cmFzc2UgZnVlaHJ0IHVuZCBCaWxkZXIgYW4gZGVuIFdhZW5kZW4sCm1pdCBaZWljaG51bmdlbiB1bmQgR2VtYWVsZGVuIHZvbiBNb3JnZW5HcmF1ZW4uIEVpbnMgZGVyIEJpbGRlciBlcmxhZXV0ZXJ0CmRpZSBGdW5rdGlvbiBkZXIgR2lsZGUgdW5kIGVpbmUgZ3Jvc3NlIFVociBhbiBkZXIgV2FuZCB6ZWlndCwgd2FzIGRpZQpTdHVuZGUgc2NobGFlZ3QuIEFuIGVpbmVyIGFuZGVyZW4gV2FuZCBoYWVuZ3QgZWluZSBzdGVpbmVybmUgVGFmZWwuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBub3JkZW4uCkthaGF0byBkZXIgZXJmYWhyZW5lIEFiZW50ZXVyZXIuCkRlciBUb2V0ZXIgc2FndDogU2NoZWlzcyBMZWJlbiEuCkRlciBUb2V0ZXIuCkRlciBUb2V0ZXIuCkRlciBUb2V0ZXIgdHJhZXVtdCB2b24gZGVyIFNvbm5lLgpEZXIgVG9ldGVyIC4uClRvc3MgaXN0IGNvb2wgdW5kIGxhZXNzaWcuCkRhcyBIYW5kYnVjaCBmdWVyIEFuZmFlbmdlci4KSWNldCBoYXRlcyBoYXRlIChuZXR6dG90KS4KR2VtaW5pIC0gQk9FU0UgQk9FU0UgQk9FU0UgLS4KRWluZSBaZWl0dW5nLgpFaW4gU3BlbmRlbnBsYWthdC4KRWluIEhhbmRidWNoIGZ1ZXIgQW5mYWVuZ2VyLgprd2VyIGJlaSBtYW5nbwogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTWl0LCAyNS4gT2t0IDE5OTUsIDIwOjA4OjM5ICg5IFRlaWxuZWhtZXIpCgpHZW1pbmkuLi4uLi4uLi4udCAgS2FoYXRvLi4uLi4uLi4uLnMgIE1hbmdvLi4uLi4uLi4uLi5TICBUb3NzLi4uLi4uLi4uLi4uegpBcmllbi4uLi4uLi4uLi4ubSAgR3V5YnJ1c2guLi4uLi4uLm0gIE9ldHRpLi4uLi4uLi4uLi5NICBTY2hydW1wZmkuLi4uLi4uTQpUb2V0ZXIuLi4uLi4uLi4uSAoKCkRpZSBNYWdpZXIgaGFiZW4gd29obCB6dSBzbyBzcGFldGVyIFN0dW5kIG5peCB6dSB0dW4/IDopCgpNYW5nbywgaW1tZXIgbm9jaCBncmluc2VuZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUamFqYSwgS0kgaW0gRWxmZW5kb3JmLi4uIChZZW5kaSwgMjUuIE9rdCAxOTk1LCAyMDozNDozOCk6Cgo+IERlciBTY2hyZWliZXIgc2FndDogRWluZW4gTW9tZW50IG5vY2gsIGJpdHRlLgpRdWFzaW1vZG8gc2FndDogS2FubiBpY2ggZnJhbnpvZXNpc2NoPwpGb25kaWwgbmlja3Qga2F1bSBtZXJrbGljaC4KRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpRdWFzaW1vZG8gc2FndDogYXJnbAo+IFF1YXNpbW9kbyBzYWd0OiBwYXNzIGF1ZiBkYXMgaWNoIGRpY2ggbmljaHQgemFwcGUsIGZvbmRpbC4uLgoKCk1hbm5vbWFubiwgZGVyIHRyYXV0IHNlaW5lbSBIZXJybiB1bmQgTWVpc3RlciBhYmVyIGVpbmlnZXMgenUuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouLi5hYmVyIG5pY2h0IGdlbnVnIChNdXBmZWwsIDI1LiBPa3QgMTk5NSwgMjE6NTY6MjYpOgokIEV0YWggc2FndDogYnJiCkxhcmlzc2Ega251ZGRlbHQgRXRhaCBleHRyYXZvcnNpY2h0aWcuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBFdGFoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKamFqYSwgZGllIGFuZGVyZW4gbWVuc2NoZW4uLiAoQ2VyZWJ1cywgMjUuIE9rdCAxOTk1LCAyMzoyNzo0Nik6Ck1vaW4hCmhldXRlIHd1cmRlIG1pciB3aWVkZXIga2xhciwgZGFzcyBtYW4ga2VpbmUgYW5kZXJlbiBNZW5zY2hlbiBhbiBNVUQtUmVjaG5lcgpsYXNzZW4gZGFyZi4uCkljaCB3YXIgZWluZ2Vsb2dndCwgaWRlbHRlIHJ1bSB1bmQgYmluIHNjaGxpZXNzbGljaCBpbiBkaWUgbWVuc2EgZXNzZW4KZ2VnYW5nZW4uIGF1c3NlciBtaXIgd2FyIGltIGNtb3B1dGVyLXJhdW0gbnVyIGVpbiBCZWthbm50ZXIsIGRlbSBpY2gKZWluZ2VzY2hhZXJmdCBoYXR0ZSwgYXVmIGFsbGVzIGd1dCBhdWZ6dXBhc3NlbiB1bmQgTklFTUFOREVOISEgYW4gZGVuCk1VRC1yZWNobmVyIHp1IGxhc3Nlbi4uLgppY2gga2FtIHZvbSBlc3NlbiB3aWVkZXIsIGRhIGdyaW5zdCBlciBtaWNoIHN0b2x6IGFuIHVuZCBzYWd0OiBoaWVyIHdvbGx0ZQplaW5lciB2b20gcmVjaGVuemVudHJ1bSBhbiBkZW4gcmVjaG5lciwgYWJlciBpY2ggYmluIG9yZG51bmdzZ2VtYWVzcyBtaXQKImVuZGUiIGF1cyBEZWluZW0ga29taXNjaGVuIFNwaWVsIHJhdXMuLi4uCgoKQVJHTCEhISEKCkNlcmVidXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlZWVlc2V0IDopIChDdWNodWxsaW4sIDI2LiBPa3QgMTk5NSwgMDA6Mjg6MjkpOgoKVm9yIGVpbmVtIFNjaGFjaHQuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uCkVpbiBTZWlsLCBkYXMgYW4gZWluZW0gQmFsa2VuIGZlc3RnZWJ1bmRlbiBpc3QuCj4ga2xldHRlcmUgc2VpbApFaW5lIGhlcnJsaWNoZSBXYWVybWUgZ2VodCB2b24gRGVpbmVtIEFtdWxldHQgYXVzLCB1bmQgRHUgZnVlaGxzdApEaWNoIHByaW1hLgpEYXMgU2VpbCBsb2VzdCBzaWNoIHVuZCB2ZXJyb3R0ZXQgbm9jaCBpbSBGYWxsZW4uCkhpZXIgaXN0IGtlaW4gU2VpbCB6dW0gcnVudGVya2xldHRlcm4hCgoKKmhtcGYqCkN1Y2guLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5lIG5vdGl6IHdlcnQgKENlcmVidXMsIDI2LiBPa3QgMTk5NSwgMDU6NTY6MDgpOgp3aWUgd2FyIGRhcyBtaXQgc2VoZXItJm1hZ2llcnNjaHdlbW1lPyBpLk0uIGJpbiBpY2ggYWxzIGFuZ2VoZW5kZXIgc2VoZXIKcmFuZ2hvZWNoc3RlciBlaW5nZWxvZ2d0ZXIuLi4gTWFyaXRhIGFscyBlcmZhaHJlbmUgQWJlbnRldXJlcmluIGltbWVyaGluCnp3ZWl0aG9lY2hzdGUuLjotKSkKCkNlcmVidXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcuLi4gKFNpbHZhbmEsIDI2LiBPa3QgMTk5NSwgMDg6NDA6MTYpOgojISBybj1DdWNodWxsaW4gcnQ9ODE0NTQ2NDEwClp1bWluZGVzdCBlaW5lcyBrYW5uIGljaCBpaG0gZGFyYXVmIHNhZ2VuLCBvaG5lIFNwaWVsZXJoaWxmZSB6dSBsZWlzdGVuOgpFciBpc3QgRUlTS0FMVCEgOykKClNpbHZhbmEgKG1hZyBpaHJlbiBLaWxsZXIgTnIuMSBpbW1lciBtZWhyLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUm9jaHVzIGluIEhvY2hmb3JtIDopIChZYW50cm8sIDI2LiBPa3QgMTk5NSwgMDk6NDI6NDcpOgoKTmV1bGljaCBiZWkgZGVyIFN1Y2hlIG5hY2ggZWluZXIgbmV0dGVuIFdhZmZlIGZpbmRlIGljaCBmb2xnZW5kZXMgRmlsZToKCiguLi4pCmNyZWF0ZSgpIHsKKC4uLikKICAgICAgU2V0UHJvcChQX1NIT1JULCAiRWluZSBNYWNoZXRlIik7CiAgICAgIFNldFByb3AoUF9MT05HLCAiRWluZSBNYWNoZXRlLlxuIik7CiguLi4pCgpFaW5lcyBtdXNzIG1hbiBSb2NodXMgbGFzc2VuLi4uIGRhcyBMT05HIGlzdCB3aXJrbGljaCBlaW4gYmlzc2NoZW4gbGFlbmdlcgphbHMgZGFzIFNIT1JUIDspCgogICAgICAgICAgICAgICAgICAgIFlhbnRybzopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGltIE11ZCAoUm9lc3RpLCAyNy4gT2t0IDE5OTUsIDEwOjQ3OjAzKToKSXN0IGRpZSB1bmdlZmFlaHJlIFdpZWRlcmdhYmUgZWluZXMgZ2VzcHJhZWNocyB2b20gMjYuT2t0LkFiZW5kcy4uLgpTcGlyaXQgaXN0IGRhcyBlcnN0ZSBtYWwgaW0gTXVkLi4uClJvZXN0aSBiaWV0ZXQgU3Bpcml0IGZyZXVuZHNjaGFmdCBhbgpTcGlyaXQgaXN0IEZyZXVuZCB2b24gUm9lc3RpClNwaXJpdCBzYWd0OkdpYnQgZXMgZWlnZW50bGljaCBlaW5lIEJlZGV1dHVuZyBmdWVyIFJvZXN0aT8KUm9lc3RpIGVycm9ldGV0CnJvZXN0aSBzYWd0IHNhZ3RzIGlobSBpY2ggdHJhdSBtaWNoIG5pY2h0Ckx1ZyBzYWd0IDpSb2VzdGkgaXN0IHdhcyB6dSBlc3Nlbi4KU3Bpcml0IHNhZ3QgOkF1cyB3YXMgYmVzdGVodCBSb2VzdGkKTHVnIDpLYXJ0b2ZmZWxuIQpTcGlyaXQgOmludGVycmVzYW50IC4uLiBJY2ggYmluIG1pdCBLYXJ0b2ZmZWxuIGJlZnJldW5kZXQuLi4KLi4uCkphIHVuZCBkYW5uIGhhYmVuIGFsbGUgYW5nZWZhbmdlbiBhbSBSb2VzdGkgcnVtenVrbmFiYmVybi4uLgoqKiogZ3JpbnMgKioqCgpSb2VzdGkgKERlciBzY2hvbiBuZSBnYW56ZSB3ZWlsZSBlaW5lIEJlc2NocmVpYnVuZyBoYXQgd2VsY2hlIHNlaW5lbiBOYW1lbgplcmtsYWVydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnJlIERpZSBvZGVyIGRlciBHaXRhcnJlPyAoTWllemUsIDI0LiBPa3QgMTk5NSwgMTA6NDA6MTkpOiAoUm9lc3RpLCAyNy4gT2t0IDE5OTUsIDEwOjUxOjM1KToKR2l0YXJyZSBkZXIgZXJmYWhyZW5lIEFiZW50ZXVyZXIKVW5kIGRhcyBpbSBTcGllbGVybGV2ZWwgOT8/PwoqKiogd3VuZGVyICoqKgpSb2VzdGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYmVpbSBCZXJuaGFyZGllbmVyIChSb2VzdGksIDI3LiBPa3QgMTk5NSwgMTE6NDA6NDgpOgogYmVmZWhsZSBpbnRhcmJpciBzY2hhZXR6ZSBodW5kIGVpbgpJbnRhcmJpciB0ZWlsdCBEaXIgbWl0OiBlaW4gQmVybmhhcmRpbmVyIGxlYnQgZG9jaCBnYXIgbmljaHQhCi4uLld1bmRlci4uLgpJc3QgZGFzIGVpbiBab21iaWh1bmQ/CgpSb2VzdGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbGJzdG1vcmQgKFllbmRpLCAyNy4gT2t0IDE5OTUsIDE0OjEwOjUxKToKCj4gICAgQXQgdGhlIDE5OTQgYW5udWFsIGF3YXJkcyBkaW5uZXIgZ2l2ZW4gYnkgdGhlIEFtZXJpY2FuIEFzc29jaWF0aW9uCj5mb3IgRm9yZW5zaWMgU2NpZW5jZSwgQUFGUyBQcmVzaWRlbnQgRG9uIEhhcnBlciBNaWxscyBhc3RvdW5kZWQgaGlzCj5hdWRpZW5jZSBpbiBTYW4gRGllZ28gd2l0aCB0aGUgbGVnYWwgY29tcGxpY2F0aW9ucyBvZiBhIGJpemFycmUgZGVhdGguCj5IZXJlIGlzIHRoZSBzdG9yeS4KPiAgICBPbiBNYXJjaCAyMywgMTk5NCwgdGhlIG1lZGljYWwgZXhhbWluZXIgdmlld2VkIHRoZSBib2R5IG9mIFJvbmFsZAo+T3B1cyBhbmQgY29uY2x1ZGVkIHRoYXQgaGUgaGFkIGRpZWQgZnJvbSBhIHNob3RndW4gd291bmQgdG8gdGhlIGhlYWQuIFRoZQo+ZGVjZWRlbnQgaGFkIGp1bXBlZCBmcm9tIHRoZSB0b3Agb2YgYSB0ZW4tc3RvcnkgYnVpbGRpbmcgaW50ZW5kaW5nIHRvCj5jb21taXQgc3VpY2lkZS4gKEhlIGhhZCBsZWZ0IGEgbm90ZSBpbmRpY2F0aW5nIGhpcyBkZXNwb25kZW5jLikgQXMgaGUgZmVsbAo+cGFzdCB0aGUgbmludGggZmxvb3IsIGhpcyBsaWZlIHdhcyBpbnRlcnJ1cHRlZCBieSBhIHNob3RndW4gYmxhc3QgdGhyb3VnaAo+YSB3aW5kb3cuIEl0IGtpbGxlZCBoaW0gaW5zdGFudGx5LiBOZWl0aGVyIHRoZSBzaG9vdGVyIG5vciB0aGUgZGVjZWRlbnQKPndlcmUgYXdhcmUgdGhhdCBhIHNhZmV0eSBuZXQgaGFkIGJlZW4gZXJlY3RlZCBhdCB0aGUgZWlnaHRoIGZsb29yIGxldmVsCj50byBwcm90ZWN0IHNvbWUgd2luZG93IHdhc2hlcnMgYW5kIHRoYXQgT3B1cyB3b3VsZCBub3QgaGF2ZSBiZWVuIGFibGUgdG8KPmNvbXBsZXRlIGhpcyBzdWljaWRlIGFueXdheSBiZWNhdXNlIG9mIHRoaXMuCj4gICAgIk9yZGluYXJpbHksIiBEci4gTWlsbHMgY29udGludWVkLCAiYSBwZXJzb24gd2hvIHNldHMgb3V0IHRvIGNvbW1pdAo+c3VpY2lkZSB1bHRpbWF0ZWx5IHN1Y2NlZWRzLCBldmVuIHRob3VnaCB0aGUgbWVjaGFuaXNtIG1pZ2h0IG5vdCBiZSB3aGF0Cj5iZWxvdyBwcm9iYWJseSB3b3VsZCBub3QgaGF2ZSBjaGFuZ2VkIGhpcyBtb2RlIG9mIGRlYXRoIGZyb20gc3VpY2lkZSB0bwo+aG9taWNpZGUuIEJ1dCB0aGUgZmFjdCB0aGF0IGhpcyBzdWljaWRhbCBpbnRlbnQgd291bGQgbm90IGhhdmUgYmVlbgo+c3VjY2Vzc2Z1bCBjYXVzZWQgdGhlIG1lZGljYWwgZXhhbWluZXIgdG8gZmVlbCB0aGF0IGhlIGhhZCBob21pY2lkZSBvbgo+aGlzIGhhbmRzLgo+ICAgIFRoZSByb29tIG9uIHRoZSBuaW50aCBmbG9vciB3aGVuY2UgdGhlIHNob3RndW4gYmxhc3QgZW1hbmF0ZWQgd2FzCj5vY2N1cGllZCBieSBhbiBlbGRlcmx5IG1hbiBhbmQgaGlzIHdpZmUuIFRoZXkgd2VyZSBhcmd1aW5nIGFuZCBoZSB3YXMKPnRocmVhdGVuaW5nIGhlciB3aXRoIHRoZSBzaG90Z3VuLiBIZSB3YXMgc28gdXBzZXQgdGhhdCwgd2hlbiBoZSBwdWxsZWQKPnRoZSB0cmlnZ2VyLCBoZSBjb21wbGV0ZWx5IG1pc3NlZCBoaXMgd2lmZSBhbmQgdGhlIHBlbGxldHMgd2VudCB0aHJvdWdoCj50aGUgd2luZG93IHN0cmlraW5nIE9wdXMuCj4gICAgV2hlbiBvbmUgaW50ZW5kcyB0byBraWxsIHN1YmplY3QgQSBidXQga2lsbHMgc3ViamVjdCBCIGluIHRoZSBhdHRlbXB0LAo+b25lIGlzIGd1aWx0eSBvZiB0aGUgbXVyZGVyIG9mIHN1YmplY3QgQi4gV2hlbiBjb25mcm9udGVkIHdpdGggdGhpcyBjaGFyZ2UsCj50aGUgb2xkIG1hbiBhbmQgaGlzIHdpZmUgd2VyZSBib3RoIGFkYW1hbnQgdGhhdCBuZWl0aGVyIGtuZXcgdGhhdCB0aGUKPnNob3RndW4gd2FzIGxvYWRlZC4gVGhlIG9sZCBtYW4gc2FpZCBpdCB3YXMgaGlzIGxvbmctc3RhbmRpbmcgaGFiaXQgdG8KPnRocmVhdGVuIGhpcyB3aWZlIHdpdGggdGhlIHVubG9hZGVkIHNob3RndW4uIEhlIGhhZCBubyBpbnRlbnRpb24gdG8gbXVyZGVyCj5oZXIgLSB0aGVyZWZvcmUsIHRoZSBraWxsaW5nIG9mIE9wdXMgYXBwZWFyZWQgdG8gYmUgYW4gYWNjaWRlbnQuIFRoYXQgaXMsCj50aGUgZ3VuIGhhZCBiZWVuIGFjY2lkZW50YWxseSBsb2FkZWQuCj4gICAgVGhlIGNvbnRpbnVpbmcgaW52ZXN0aWdhdGlvbiB0dXJuZWQgdXAgYSB3aXRuZXNzIHdobyBzYXcgdGhlIG9sZAo+Y291cGxlJ3Mgc29uIGxvYWRpbmcgdGhlIHNob3RndW4gYXBwcm94aW1hdGVseSBzaXggd2Vla3MgcHJpb3IgdG8gdGhlCj5mYXRhbCBpbmNpZGVudC4KPiAgICBJdCB0cmFuc3BpcmVkIHRoYXQgdGhlIG9sZCBsYWR5IGhhZCBjdXQgb2ZmIGhlciBzb24ncyBmaW5hbmNpYWwKPnN1cHBvcnQgYW5kIHRoZSBzb24sIGtub3dpbmcgdGhlIHByb3BlbnNpdHkgb2YgaGlzIGZhdGhlciB0byB1c2UgdGhlCj5zaG90Z3VuIHRocmVhdGVuaW5nbHksIGxvYWRlZCB0aGUgZ3VuIHdpdGggdGhlIGV4cGVjdGF0aW9uIHRoYXQgaGlzCj5mYXRoZXIgd291bGQgc2hvb3QgaGlzIG1vdGhlci4gVGhlIGNhc2UgdGhlbiBiZWNhbWUgb25lIG9mIG11cmRlciBvbiB0aGUKPnBhcnQgb2YgdGhlIHNvbiBmb3IgdGhlIGRlYXRoIG9mIFJvbmFsZCBPcHVzLgo+ICAgIEZ1cnRoZXIgaW52ZXN0aWdhdGlvbiByZXZlYWxlZCB0aGF0IHRoZSBzb24sIFJvbmFsZCBPcHVzLCBoYWQgYmVjb21lCj5pbmNyZWFzaW5nbHkgZGVzcG9uZGVudCBvdmVyIHRoZSBmYWlsdXJlIG9mIGhpcyBhdHRlbXB0IHRvIGVuZ2luZWVyIGhpcwo+bW90aGVyJ3MgbXVyZGVyLiBUaGlzIGxlZCBoaW0gdG8ganVtcCBvZmYgdGhlIHRlbi1zdG9yeSBidWlsZGluZyBvbiBNYXJjaAo+MjNyZCwgb25seSB0byBiZSBraWxsZWQgYnkgYSBzaG90Z3VuIGJsYXN0IHRocm91Z2ggYSBuaW50aCBzdG9yeSB3aW5kb3cuCj4gICAgVGhlIG1lZGljYWwgZXhhbWluZXIgY2xvc2VkIHRoZSBjYXNlIGFzIGEgc3VpY2lkZS4KPgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZSBjb21lIGluIHBlYWNlLi4uIChZZW5kaSwgMjcuIE9rdCAxOTk1LCAxNDoxMzo1OCk6CgpbU2luY2UgSSB3b3JrIGF0IHRoZSBKZXQgUHJvcHVsc2lvbiBMYWJvcmF0b3J5LCB0aGUgTkFTQSBzaXRlIHRoYXQgZmxpZXMKVm95YWdlciwgYW5kIG5vdCBMb3MgQWxhbW9zIChHUlJSUiEpLCBJIGhhZCBsdW5jaCBvbmUgZGF5IHdpdGggUGV0ZXJzb24KWmhhLCB0aGVuIFByZXNpZGVudCBvZiB0aGUgTmF2YWpvIE5hdGlvbi4gSGUgdG9sZCB1cyB0aGUgc3RvcnkgYW5kIHRvIG1ha2UKc3VyZSBpdCdzIHRvbGQgcHJvcGVybHkgSSdsbCB0ZWxsIGl0IGFnYWluIGFzIGl0IHdhcyB0b2xkLl0KCgogIEFib3V0IDE5NjYgb3Igc28sIGEgTkFTQSB0ZWFtIGRvaW5nIHdvcmsgZm9yIHRoZSBBcG9sbG8gbW9vbiBtaXNzaW9uCnRvb2sgdGhlIGFzdHJvbmF1dHMgbmVhciBUdWJhIENpdHkgd2hlcmUgdGhlIHRlcnJhaW4gb2YgdGhlIE5hdmFqbwpSZXNlcnZhdGlvbiBsb29rcyB2ZXJ5IG11Y2ggbGlrZSB0aGUgTHVuYXIgc3VyZmFjZS4gIFdpdGggYWxsIHRoZQp0cnVja3MgYW5kIGxhcmdlIHZlaGljbGVzIHdoZXJlIHR3byBsYXJnZSBmaWd1cmVzIHRoYXQgd2VyZSBkcmVzc2VkIGluCmZ1bGwgTHVuYXIgc3BhY2VzdWl0cy4KICBOZWFyIGJ5IGEgTmF2YWpvIHNoZWVwIGhlcmRlciBhbmQgaGlzIHNvbiB3aGVyZSB3YXRjaGluZyB0aGUgc3RyYW5nZQpjcmVhdHVyZXMgd2FsayBhYm91dCwgb2NjYXNpb25hbGx5IGJlaW5nIHRlbmRlZCBieSBwZXJzb25uZWwuICAgIFRoZQp0d28gTmF2YWpvIHBlb3BsZSB3ZXJlIG5vdGljZWQgYW5kIGFwcHJvYWNoZWQgYnkgdGhlIE5BU0EgcGVyc29ubmVsLgpTaW5jZSB0aGUgbWFuIGRpZCBub3Qga25vdyBFbmdsaXNoLCBoaXMgc29uIGFza2VkIGZvciBoaW0gd2hhdCB0aGUKc3RyYW5nZSBjcmVhdHVyZXMgd2VyZSBhbmQgdGhlIE5BU0EgcGVvcGxlIHRvbGQgdGhlbSB0aGF0IHRoZXkgYXJlCmp1c3QgbWVuIHRoYXQgYXJlIGdldHRpbmcgcmVhZHkgdG8gZ28gdG8gdGhlIG1vb24uICBUaGUgbWFuIGJlY2FtZQp2ZXJ5IGV4Y2l0ZWQgYW5kIGFza2VkIGlmIGhlIGNvdWxkIHNlbmQgYSBtZXNzYWdlIHRvIHRoZSBtb29uIHdpdGggdGhlCmFzdHJvbmF1dHMuCiAgVGhlIE5BU0EgcGVyc29ubmVsIHRob3VnaHQgdGhpcyB3YXMgYSBncmVhdCBpZGVhIHNvIHRoZXkgcnVzdGxlZCB1cAphIHRhcGUgcmVjb3JkZXIuICBBZnRlciB0aGUgbWFuIGdhdmUgdGhlbSBoaXMgbWVzc2FnZSB0aGV5IGFza2VkIGhpcwpzb24gdG8gdHJhbnNsYXRlLiAgSGlzIHNvbiB3b3VsZCBub3QuCiAgTGF0ZXIsIHRoZXkgdHJpZWQgYSBmZXcgbW9yZSBwZW9wbGUgb24gdGhlIHJlc2VydmF0aW9uIHRvIHRyYW5zbGF0ZQphbmQgZXZlcnkgcGVyc29uIHRoZXkgYXNrZWQgd291bGQgY2h1Y2tsZSBhbmQgdGhlbiByZWZ1c2UgdG8KdHJhbnNsYXRlLiAgRmluYWxseSwgd2l0aCBjYXNoIGluIGhhbmQgc29tZW9uZSB0cmFuc2xhdGVkIHRoZSBtZXNzYWdlLAoiV2F0Y2ggb3V0IGZvciB0aGVzZSBndXlzLCB0aGV5IGNvbWUgdG8gdGFrZSB5b3VyIGxhbmQuIgoKLS1DaGFybGVzIFBoaWxsaXAgV2hpdGVkb2csIE9qaWJ3YXkgYW5kIE5ldHdvcmsgTWFuYWdlciBNdWx0aW1pc3Npb24gR3JvdW5kClN5c3RlbXMgT2ZmaWNlIChNaXNzaW9uIENvbnRyb2wpLCBKZXQgUHJvcHVsc2lvbiBMYWJvcmF0b3J5LCBOQVNBCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJvaW5nIChHdXlicnVzaCwgMjcuIE9rdCAxOTk1LCAxNDo0NzoyNik6CkJvaW5nIGlzdCB1bmdlZmFlaHIgMTcwIGNtIGdyb3NzLgpCb2luZyBpc3QgcmVjaHQgemFlaC4KQm9pbmdzIFdhZmZlIGlzdCBsYWVjaGVybGljaC4KQm9pbmdzIFJ1ZXN0dW5nIGlzdCB6aWVtbGljaCBzY2hsZWNodC4KCk9obmUgS29tbWVudGFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG9ibyAoR3V5YnJ1c2gsIDI3LiBPa3QgMTk5NSwgMTQ6NDc6NTcpOgpIb2JvIGlzdCB1bmdlZmFlaHIgMTYwIGNtIGdyb3NzLgpIb2JvIGlzdCByZWNodCB6YWVoLgpIb2JvcyBXYWZmZSBpc3QgbGFlY2hlcmxpY2guCkhvYm9zIFJ1ZXN0dW5nIGlzdCB6aWVtbGljaCBzY2hsZWNodC4KCktvbW1lbnRhcjogVW5zZXIgR29ldHRlcnBhYXIgOikpKSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQm9pbmcgKEJvaW5nLCAyNy4gT2t0IDE5OTUsIDE0OjU0OjIxKToKIyEgcm49R3V5YnJ1c2ggcnQ9ODE0ODAxNjQ2CldvenUgYnJhdWNoIGljaCBXYWZmZW4gdW5kIFJ1ZXN0dW5nZW4/IDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlc3RhbmsgYmVpbSBvY2hzZW4gKFJvZXN0aSwgMjcuIE9rdCAxOTk1LCAxODoyNzo0MCk6Ck5ldWxpY2ggYmVpbSBNb3NjaHVzb2Noc2VuCkVpbiBNb3NjaHVzb2Noc2UKPkVpbiBwYWFyIEhhYXJlIGVpbmVzIE1vc2NodXNvY2hzZW4uCj5FaW4gcGFhciBIYWFyZSBlaW5lcyBNb3NjaHVzb2Noc2VuLgo+RWluIHBhYXIgSGFhcmUgZWluZXMgTW9zY2h1c29jaHNlbi4KPkVpbiBwYWFyIEhhYXJlIGVpbmVzIE1vc2NodXNvY2hzZW4uCj5FaW4gcGFhciBIYWFyZSBlaW5lcyBNb3NjaHVzb2Noc2VuLgo+RWluIHBhYXIgSGFhcmUgZWluZXMgTW9zY2h1c29jaHNlbi4KPkVpbiBwYWFyIEhhYXJlIGVpbmVzIE1vc2NodXNvY2hzZW4uCj5FaW4gcGFhciBIYWFyZSBlaW5lcyBNb3NjaHVzb2Noc2VuLgo+RWluIHBhYXIgSGFhcmUgZWluZXMgTW9zY2h1c29jaHNlbi4KbmltbSBoYWFyZSAtPkRhcyBnZWhvZXJ0IGplbWFuZCBhbmRlcmVtLiBEdSBzb2xsZXN0IGVzIGxpZWdlbiBsYXNzZW4uLi4uQWJlcgpkZXIgT2Noc2Ugd2lsbCBzaWUgZG9jaCBnYXJuaWNodCBtZWhyIG9kZXIgd2FydW0gbGllZ2VuIHNpZSBzb25zdCBydW0/CnNjaGF1IGhhYXJlLT5VdXV1aCwgZGllIEhhYXJlIHJpZWNoZW4gYWJlciBnZXdhbHRpZyBuYWNoIE1vc2NodXMuIEluIGtsZWluZXIKRG9zaXMgc29sbCBkYXMgamEgZ2FueiBhbmdlbmVobSBzZWluLCBhYmVyIGRhcyBpc3Qgd2lya2xpY2ggbmVuIGJpc3NjaGVuIHp1CnN0YXJrLi4uLi4uIFVuZCBkYXMgYmVpIDkgeCBIYWFyZW4uLi5CdWFlcmtzLi4uRGFzIGlzdApVbXdlbHR2ZXJzY2htdXR6dW5nLi4uOikKClJvZXN0aQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdlc3RhbmsgYmVpbSBvY2hzZW4gKENhcmFkaHJhcywgMjcuIE9rdCAxOTk1LCAxODo0ODo1NSk6CiMhIHJuPVJvZXN0aSBydD04MTQ4MTQ4NjAKS2VlcCBvdXIgbXVkd29ybGQgdGlkeS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmViZW4gZ2VmdW5kZW4gKEZ5dCwgMjcuIE9rdCAxOTk1LCAyMToyNzoxOCk6ClRodSwgMjYgT2N0IDE5OTUgMTc6MjY6MzkgICAgICAgICAgZGUuYWx0Lm11ZCAgICAgICAgICAgICAgIFRocmVhZCAgICAyIG9mICAgCjIKTGluZXMgMTEgICAgICAgICAgICAgICAgICAgSGlsZmVuIHp1IE1vcmdlbmdyYXVlbiAgICAgICAgICAgMSBSZXNwb25zZQpzeXNvcEB2b2Qubm9ydGguZGUKClN1Y2hlIGFsbGUgbW9lZ2xpY2hlbiBIaWxmZW4genUgTW9yZ2VuZ3JhdWVuLgpLYXJ0ZW4gKG5pY2h0IGRpZSB2b20gV2ViLSBvZGVyIEZUUC1TZXJ2ZXIpLCBMb2VzdW5nZW4gKGtvbXBsZXR0LCBRdWVzdHMsClRlaWxlIHZvbiBRdWVzdHMpIEhpbGZlbiAoT3J0ZSwgd28gc2ljaCBaVHMgYmVmaW5kZW4gby4uKS4Kd2VyIHNvIGV0d2FzIGhhdCBzY2hpY2tlIGVzIG1pciBkb2NoIGJpdHRlLiBEYW5rZWRhbmtlYW5rZSA6LSkKCk1mRywKLS0KU2ViYXN0aWFuIEtva2Vtb2hyLVNjaG1pZHQgKHN5c29wQHZvZC5ub3J0aC5kZSBiencuIGVhZ2xlQG9saXMubm9ydGguZGUpClZvaWNlIDogMDQ0MSA5NDkwNTMwICAgQkJTIDogMDQ0MSA5NDkwNTMxClBHUC1LZXkgYXVmIEFuZnJhZ2UKOgprZWluIEtvbW1lbnRhci4KRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXLi4uIChDdWNodWxsaW4sIDI4LiBPa3QgMTk5NSwgMTM6MzA6MTQpOgoKCltBYmVudGV1ZXI6QmxvY2tidXN0ZXJdIEdlaHQgbWFuIGluIGRlbiBQeXJhbWlkZW4gbmFjaCA5MCBNaW51dGVuIGRyYXVmPwpbVG9kOl0gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIEJsb2NrYnVzdGVyCltUb2Q6XSB1bWdlYnJhY2h0LgoKVGphIDooIE9mZmVuc2ljaHRsaWNoLgpDdWNoLi0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKb2YgaXN0IG5pY2h0IHp1IGJld2VnZW4uLi4gKEtldG9zLCAyOC4gT2t0IDE5OTUsIDE3OjU5OjI0KToKQ3JlYXRpdmUgYW4gYWxsZSBNYWdpZXI6IHdlciBrYW5uIG1pciBqb2YgbWFsIGFrdGl2aWVyZW4/IGVyIGlkbGV0IHdpZWRlciBtYWwKQ3JlYXRpdmUgYW4gYWxsZSBNYWdpZXI6ICpiaXR0ZSoKdHJhbnMgam9mCkpvZiB3aWxsIG5pY2h0IGtvbW1lbiAhClphcmRveiBzYWd0OiBKb2YgbXVzcyBkb2NoIGlyZ2VuZHdpZSB6dSBiZXdlZ2VuIHNlaW4uLi4KWmFyZG96IGZhZW5ndCBhbiB6dSBkZW5rZW4uCkR1IHNhZ3N0OiBnZWh0IG5pY2h0OyBlciBpc3QgenUgc2Nod2VyClphcmRveiBzYWd0OiBFciB3aWVndCBkb2NoIG51ciAtMTIzNDU2NzgKWmFyZG96IHNhZ3Q6IE1pc3QsIGljaCB3aWxsIGpldHp0IEpvZiBiZXdlZ2VuIDotKQpaYXJkb3ogc2FndDogQWRkUHVyc3VlciBmdW5rdGlvbmllcnQgYXVjaCBuaWNodApDcmVhdGl2ZSBhbiBhbGxlIE1hZ2llcjogam9vb29vb2hvb29vb29vZiAqQlJVRUxMKiAqU0NIUkVJKgouLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkphamEsIGRhIHJ1ZnQgbWFuIG1hbCB1bSBIaWxmZS4uLiAoQXJkYW5hLCAyOS4gT2t0IDE5OTUsIDAyOjA2OjI2KToKRHUgcnVmc3Q6IGh1aHUgLSBiaW4gbmV1IGhpZXIsIGJyYXVjaGUgaGlsZmUhIQouLi4KV2lsbG93IHJ1ZnQ6IGhhbHRzIG1hdWwgbmV3YmllISA7KQouLi4KS2hpZGFyIHRlaWx0IERpciBtaXQ6IG5hLCBkdSB3aXR6Ym9sZD8KW0FsbGdlbWVpbjpEdXN0eV0gYXJkYW5hc2NoYXR6YmFieSB3YXMgYnJhdWNoc3QgZHUgdm9uIHRhbnRlPwpTdGFobGRvcm4gcnVmdDogZHJ1bSBoYXN0IGphIGF1Y2ggZWluIHByZXNheS4gYWxzIG5ld2JpZSA6KQpbQWxsZ2VtZWluOkphbmljZV0gbmV0dCBoaWVyIGRpZSBzcGllbGVyIF8pPQpbQWxsZ2VtZWluOkphbmljZSBhcmdsdF0KW0FsbGdlbWVpbjpIYWRyYV0gd2lyIHNpbmQgYWxsZSBlaW5lIGdyb3NzZSBmYW1pbGllIDopCltBbGxnZW1laW46QXJkYW5hXSBIbW0uLi4gOikKPiBbQWxsZ2VtZWluOldpbGxvdyByb3RmbHRdCltBbGxnZW1laW46SGFkcmFdIG1hbiBuZW5udCB1bnMgZGllIGJ1bmRpZXMKW0FsbGdlbWVpbjpTdGFobGRvcm5dIGR1c3R5c2NoYXR6eWxpZWJsaW5nIGlzdCBpbW1lciBuZXR0LiBvZGVyIGZhc3QKVGFzaGEgcnVmdDogTmV3YmllcyByYXVzIQouLi4KCkFyZGFuYSwgZW50cnVlc3RldAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBpbSBsb2dmaWxlIChLZXRvcywgMjkuIE9rdCAxOTk1LCAxMToyNzoxMSk6Ck5pa29sYXVzIGZpbmRldCBkZW4gV2VpaG5hY2h0c21hbm4uCgprb21pc2NoLCBrb21pc2NoLiBEYWNodGUgaW1tbWVyIGRpZSB3YWVyZW4gaWRlbnRpc2NoIDopCi0gS2V0b3MgLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJtZXIgQXJjaGllICo6XikgKENhcmFkaHJhcywgMjkuIE9rdCAxOTk1LCAxNDowOToxMyk6CltBYmVudGV1ZXI6XSBMdWcgaGF0IGdlcmFkZSBlaW4gQWJlbnRldWVyIGJlc3RhbmRlbjogSGlsZiBkZW0gQXJjaGl0ZWt0ZW4KW0FiZW50ZXVlcjpdIEFjcmltb24gaGF0IGdlcmFkZSBlaW4gQWJlbnRldWVyIGJlc3RhbmRlbjogSGlsZiBkZW0gQXJjaGl0ZWt0ZW4KW0FiZW50ZXVlcjpdIExlZnR5IGhhdCBnZXJhZGUgZWluIEFiZW50ZXVlciBiZXN0YW5kZW46IEhpbGYgZGVtIEFyY2hpdGVrdGVuCkRlciBBcmNoaXRla3QgcnVmdDogTGVmdHksIEFjcmltb24gdW5kIEx1ZyBoYWJlbiBtaXIgYWxsZSBLYXJ0ZW50ZWlsZQpEZXIgQXJjaGl0ZWt0IHJ1ZnQ6IGdlYnJhY2h0IQoKMiBNaW51dGVuIHNwYWV0ZXI6Cgo+IFtBYmVudGV1ZXI6XSBOYXR1cmUgaGF0IGdlcmFkZSBlaW4gQWJlbnRldWVyIGJlc3RhbmRlbjogSGlsZiBkZW0KQXJjaGl0ZWt0ZW4KW0FiZW50ZXVlcjpdIFJvYWRydW5uZXIgaGF0IGdlcmFkZSBlaW4gQWJlbnRldWVyIGJlc3RhbmRlbjogSGlsZiBkZW0KW0FiZW50ZXVlcjpdIEFyY2hpdGVrdGVuCltBYmVudGV1ZXI6XSBFc2N1YmFyIGhhdCBnZXJhZGUgZWluIEFiZW50ZXVlciBiZXN0YW5kZW46IEhpbGYgZGVtIEFyY2hpdGVrdGVuCkRlciBBcmNoaXRla3QgcnVmdDogRXNjdWJhciwgUm9hZHJ1bm5lciB1bmQgTmF0dXJlIGhhYmVuIG1pciBhbGxlIEthcnRlbnRlaWxlCkRlciBBcmNoaXRla3QgcnVmdDogZ2VicmFjaHQhCj4gTWVybGluIHJ1ZnQ6IEljaCBiaW4gaW0gR2ViaXJnZS4KTWVybGluIHJ1ZnQ6IExhc3N0IG1pY2ggaW4gUnVoZSEKCk5vY2htYWwgbmUgTWludXRlIGRhbmFjaDoKCj4gW0FiZW50ZXVlcjpdIFRvZGVzZW5nZWwgaGF0IGdlcmFkZSBlaW4gQWJlbnRldWVyIGJlc3RhbmRlbjogSGlsZiBkZW0KW0FiZW50ZXVlcjpdIEFyY2hpdGVrdGVuCltBYmVudGV1ZXI6XSBEYXRhIGhhdCBnZXJhZGUgZWluIEFiZW50ZXVlciBiZXN0YW5kZW46IEhpbGYgZGVtIEFyY2hpdGVrdGVuCkRlciBBcmNoaXRla3QgcnVmdDogRGF0YSwgTmlhbCB1bmQgVG9kZXNlbmdlbCBoYWJlbiBtaXIgYWxsZSBLYXJ0ZW50ZWlsZQpEZXIgQXJjaGl0ZWt0IHJ1ZnQ6IGdlYnJhY2h0IQpbQWxsZ2VtZWluOkd1bmR1cl0gaG1ncm1ibApEZXIgQXJjaGl0ZWt0IHJ1ZnQ6IEhlcnJqZSwgd2FzIG1hY2hlIGljaCBudXIgbWl0IGRlbiBnYW56ZW4gS2FydGVudGVpbGVuPwpbQWxsZ2VtZWluOkRhdGEgIGxhY2h0XQpEdSBoYXN0IDE0IFZvZWdlbC4KCgogICAgICBOaWNodCBudXIgaWNoLCBzYWcgaWNoIGRhIDopCiAgICAgICAgICAgICAgQ2FyYWRocmFzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqcnVtdGFwcHMqIChDZWxlYmRpbCwgMjkuIE9rdCAxOTk1LCAyMTowMDo1Myk6Cm5pbW0gYW11bGV0dApEdSBuaW1tc3QgZWluIFNhYmJlcmFtdWxldHQuCnppZWhlIGFtdWxldHQgYXVzCkR1IHppZWhzdCBkYXMgQW11bGV0dCBhdXMuCj4gemllaGUgYW11bGV0dCBhbgpEdSB6aWVoc3QgZGFzIFNhYmJlcmFtdWxldHQgYW4uCj4gbml4YmxpCkdydWVuZSBTdHJhaGxlbiBnZWhlbiB2b20gU2FiYmVyYW11bGV0dCBhdXMgdW5kIHRyZWZmZW4gRGVpbmUgQXVnZW4uCkR1IGthbm5zdCB3aWVkZXIgc2VoZW4uCj4gbGEgYW11bGV0dApEdSB6aWVoc3QgZGFzIFNhYmJlcmFtdWxldHQgYXVzLgpEdSBsYWVzc3QgZGFzIFNhYmJlcmFtdWxldHQgZmFsbGVuLgo+IHppZWhlIGFtdWxldHQgYW4KRHUgemllaHN0IGRhcyBBbXVsZXR0IGFuLgo+IHNjaGF1ZQpGaW5zdGVybmlzLgoKICAgICAgSG1tbW1tIDotKSBBIHNvIGVpbiBTY2htYXJybgoKICAgICAgICAgICAgQ2FyYWRocmFzIC0gYWNoIHF1YXRzY2gsIENlbGViZGlsIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXbyBzaW5kIHNpZSBudXIgZ2VibGllYmVuPyAoV3VyLCAzMC4gT2t0IDE5OTUsIDA0OjIwOjU4KToKeHdobyAgIDI1IFd1ciAuLi4uLi4uIC43MjowNSBtIC4uLi4gLi4uLi4gW34vd29ya3Jvb21dCgpXdXIgc3RhdW50IGltbWVyIHdpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJvaW5nIChBc21vZGlzLCAzMC4gT2t0IDE5OTUsIDA5OjIyOjUyKToKIyEgcm49R3V5YnJ1c2ggcnQ9ODE0ODAxNjQ2ClppZW1saWNoIGtsZWluIGZ1ZXIgZWluZW4gU3RlaW5iZWlzc2VyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFctVGVhbXdvcmsuLiAoWmVwaHlyLCAzMC4gT2t0IDE5OTUsIDEwOjIxOjMwKToKPiBbQWxsZ2VtZWluOllhcnJpXSByb2JpbiBpc3QgZWluIHNjaG5vcnJlciAhCltUb2Q6XSBSb2JpbiBoYXQgZ2VyYWRlIEFybWluIHVtZ2VicmFjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUm9iaW4gc2Nobm9ycnQgd2VpdGVyLi4gKFplcGh5ciwgMzAuIE9rdCAxOTk1LCAxMDoyMjozOCk6Cj4gW0FsbGdlbWVpbjpLZXldIEhtbSBXZWxjaGUgdm9yc2ljaHQgYnJzdWNodCBtYW4gYmVpIFJvYmluPz8/CltBbGxnZW1laW46SnVycnldIDE1MApbQWxsZ2VtZWluOk5peGldIHZvcnNpY2h0ID0gMjAwPz8/PwpbQWxsZ2VtZWluOkFzbW9kaXNdIHZvcnNpY2h0IDIyNgpbVG9kOl0gUm9iaW4gaGF0IGdlcmFkZSBKdXJyeSB1bWdlYnJhY2h0LgpbQWxsZ2VtZWluOk1lbGxvd10gVm9yc2ljaHQgd2FzID8KW0FsbGdlbWVpbjpBc21vZGlzXSBzYWd0ZSBpY2ggZG9jaCwganVycnksIDE1MCBpc3QgenV3ZW5pZyA6KQpbQWxsZ2VtZWluOkFuZ2VsXSBXZXIgYmlldGV0IG1laHIgPz8/IDotKQpbQWxsZ2VtZWluOkp1cnJ5SUldIEFSRwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJvYmluIHNjaG5vcnJ0IHdlaXRlci4uIChBc21vZGlzLCAzMC4gT2t0IDE5OTUsIDEwOjI1OjAyKToKIyEgcm49WmVwaHlyIHJ0PTgxNTA0NDk1OAprdXJ6IGRhbmFjaDoKCltUb2Q6XSBSb2JpbiBoYXQgZ2VyYWRlIEFybWluIHVtZ2VicmFjaHQuCgpUamEsIFJvYmluIGRlciBPYmVyc2Nobm9ycmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcmV1bmRlLi4uIChGZWxzLCAzMC4gT2t0IDE5OTUsIDE1OjU2OjAxKToKR2VyYWRlIGViZW46CgoKbwpEdSBiYWxhbmNpZXJzdCB2b3JzaWNodGlnIHVlYmVyIGRpZSBTdGVpbmUuCgpMaXR0bGUgSm9obiB0ZWlsdCBEaXIgbWl0OiBIYWxsbywgYWx0ZXIgRnJldW5kLiBXZW5uIER1IG1pY2ggYmVzdWNoZW4gd2lsbHN0LAoKTGl0dGxlIEpvaG4gdGVpbHQgRGlyIG1pdDogZ2VoIGVpbmZhY2ggZmx1c3NhdWZ3YWVydHMgbmFjaCBOb3Jkb3N0ZW4uIER1IGJpc3QKCkxpdHRsZSBKb2huIHRlaWx0IERpciBtaXQ6IHdpbGxrb21tZW4uCgpEdSBzdGVodHN0IG1pdHRlbiBhdWYgZWluZW0gZXR3YXMgYnJlaXRlcmVuIFN0ZWluIGluIGRlbiBTdHJvbXNjaG5lbGxlbiBlaW5lcwoKRmx1c3NlcywgZGVyIHNpY2ggaGllciBkdXJjaCBkZW4gV2FsZCBzY2hsYWVuZ2VsdC4gRXMgZHVlcmZ0ZSBzZWhyIGVuZwp3ZXJkZW4sCgp3ZW5uIHNpY2ggaGllciBtZWhyZXJlIExldXRlIGJlZ2VnbmVuLiBEdSBzb2xsdGVzdCBsaWViZXIgdm9uIGhpZXIKCnZlcnNjaHdpbmRlbiwgZGFtaXQgRGljaCBuaWNodCBpcmdlbmR3ZXIgdm9uIGhpZXIgcnVudGVyIGluIGRlbiBGbHVzcwpzdHVlcnp0LgoKRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuIHVuZCBub3Jkd2VzdGVuLgoKTGl0dGxlIEpvaG4uCgpvCkxpdHRsZSBKb2huIHZlcnNwZXJydCBEaXIgZGVuIFdlZy4KCj4gZnJhZ2UgbGl0dGxlIGpvaG4gbmFjaCB3ZWcKCkxpdHRsZSBKb2huIHNhZ3Q6IEhhbHQgZGVuIE11bmQgdW5kIGdpYiBtaXIgRGVpbiBHZWxkLgoKPgoKRGFzIHNpbmQgRnJldW5kZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZWJlbiBhdWYgZGVyIGtyZXV6dW5nIChGeXQsIDMwLiBPa3QgMTk5NSwgMTU6NTc6MzIpOgouICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMTAgbHAgICAgNDMgbXAKUGlnaWRpYmkgbmltbXQgOCBGbGFtbWVua3VnZWxuLgpQaWdpZGliaSBuaW1tdCA0IFZvb2Rvb25hZGVsbi4KUGlnaWRpYmkgbmltbXQgMTIgU2FldXJlYmFlbGxlLgpTIFBpZ2lkaWJpIHNhZ3Q6IGhpCi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIxMCBscCAgICA0NCBtcAouICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMTAgbHAgICAgNDUgbXAKRHUgc2Fnc3Q6IGhpClMgPiBCcnVtbWVsIHNhZ3Q6IGhpCi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIxMCBscCAgICA0NiBtcAouICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMTAgbHAgICAgNDcgbXAKRHUgc2Fnc3Q6IGdlZnJhZ3Qgd2lyZCB3b2hsIG5pY2ggbWVocj8KPiBQaWdpZGliaSB3aW5rdCBCcnVtbWVsIHVuZCBEaXIgenUuCi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIxMCBscCAgICA0OCBtcApbQWxsZ2VtZWluOkFsaW5lXSBTbyBpY2ggZ2VoIG1hbCB3aWVkZXIKLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjEwIGxwICAgIDQ5IG1wCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBGZWxzIGluIFJ1YnJpayAic2NobWFycm4iLgpTIFBpZ2lkaWJpIHNhZ3Q6IG5laW4KLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjEwIGxwICAgIDUwIG1wCgpJY2ggZnJhZyBtaWNoIGViZW4sIG9iIHNvIHdhcyAnbiBQayByZWNodGZlcnRpZ3Q/CkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBlYmVuIGF1ZiBkZXIga3JldXp1bmcgKEFzbW9kaXMsIDMwLiBPa3QgMTk5NSwgMTU6NTk6NTgpOgojISBybj1GeXQgcnQ9ODE1MDY1MDUyClNpY2hlciwgbnVyIHp1LCBsYXNzIGRpY2ggbmljaHQgYWJoYWx0ZW4sIEZ5dCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2FuZHRpZ2VyIChSb2NodXMsIDMwLiBPa3QgMTk5NSwgMTg6MDc6MTgpOgpNZXNzYWdlIGZyb20gQ2F0d2VhemxlIHRvIHlvdToKZnJhZ2UgdGlnZXIgbmFjaCByb2NodXMKRGVyIFNhbmR0aWdlciBzY2h3YWVybXQ6IEphYWFhYSwgZGVyIFJvY2h1cywgZGVyIGlzdCBkb2xsISBEZXIgc29yZ3QgaW1tZXIKRGVyIFNhbmR0aWdlciBzY2h3YWVybXQ6IGRhZnVlciwgZGFzcyBnZW51ZyBzY2htYWNraGFmdGUgQWJlbnRldXJlciBhdWYgZGVuCkRlciBTYW5kdGlnZXIgc2Nod2Flcm10OiBUaXNjaCBrb21tZW4uIEVpbmUga2xlaW5lIEdydWJlIGhpZXIsIGVpbmUga2xlaW5lCkRlciBTYW5kdGlnZXIgc2Nod2Flcm10OiBGYWxsZSBkYSwgd2llZGVyIGVpbiBNb25zdGVyY2hlbiBkb3J0Li4uIG1pYW0gbWlhbQpEZXIgU2FuZHRpZ2VyIHNjaHdhZXJtdDogbWlhbS4uLgpbRW5kIG9mIG1lc3NhZ2VdCgpEYW5jZXIsIGJhdSBkb2NoIG1hbCBmdWVyIE1hZ2llciBkZW4gQmVmZWhsCiAgZnVldHRlcmUgc2FuZHRpZ2VyIG1pdCA8c3BpZWxlcj4KZWluLCB3dWVyZGUgbWlyIGRpZSBBcmJlaXQgc2VociBlcmxlaWNodGVybi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2luaWVyZW5kIGF1cyBkZW0gRmVuc3RlciBnZXNjaGF1dCAuLi4gKENhdHdlYXpsZSwgMzAuIE9rdCAxOTk1LCAxODo1Nzo1OCk6ClNvIGVpbiBTY2h3YWNoc2lubiBrb21tdCByYXVzLCB3ZW5uIG1hbiBnZWxhbmd3ZWl0IGF1cyBkZW4gRmVuc3RlciBzY2hhdXQ6CkhpbnRlcmdydW5kOiBEYXMgTWF0aGVnZWJhZXVkZSAoOC5TdG9jaywgSmFjcXVhcmQsIENhdHdlYXpsZSkgaXN0IGV0d2EKMzAwLTQwMCBNZXRlciB2b20gS2VybnBoeXNpa2dlYmFldWRlICgzLlN0b2NrLCBIdW1ib2xkdCwgQmVydHJhbSkgZW50ZmVybnQ6CgpEdSB0ZWlsc3QgQmVydHJhbSBtaXQ6IEhhc3QgZHUgbmVuIHJvdGVzIGhlbWQgYW4/CkJlcnRyYW0gdGVpbHQgRGlyIG1pdDogTm9lCkJlcnRyYW0gdGVpbHQgRGlyIG1pdDogRG9jaCA6KQpCZXJ0cmFtIHRlaWx0IERpciBtaXQ6IFdhcnVtPwpEdSB0ZWlsc3QgQmVydHJhbSBtaXQ6IGkgY2FuIHNlZSB5b3UgOikKQmVydHJhbSB0ZWlsdCBEaXIgbWl0OiBBaCBqYSA7KQpEdSB0ZWlsc3QgQmVydHJhbSBtaXQ6IGhtLCBuZWUgZG9jaCBuaWNodApEdSB0ZWlsc3QgQmVydHJhbSBtaXQ6IGJlaSBldWNoIGlzdCBudXIgZGllIHNjaHJlaWJ0aXNjaGxhbXBlIGFuPwpCZXJ0cmFtIHRlaWx0IERpciBtaXQ6IE5vZQpEdSB0ZWlsc3QgQmVydHJhbSBtaXQ6IGFiZXIgYXVjaApCZXJ0cmFtIHRlaWx0IERpciBtaXQ6IEhpZXIgYnJlbm50IHJpY2h0aWdlcyBMaWNodApCZXJ0cmFtIHRlaWx0IERpciBtaXQ6IEhpZXIgaXN0IGtlaW5lIFNjaHJlaWJ0aXNjaGxhbXBlIGFuCkR1IHRlaWxzdCBCZXJ0cmFtIG1pdDogaG0KQmVydHJhbSB0ZWlsdCBEaXIgbWl0OiBWZXJ0YW4/CkR1IHRlaWxzdCBCZXJ0cmFtIG1pdDogZ2VoIG1hbCBhbnMgZmVuc3RlciB1bmQgd2luayA6KQpCZXJ0cmFtIHRlaWx0IERpciBtaXQ6IFZlcnN1Y2hzIG1hbCBlaW5lbiBSYXVtIHdlaXRlciA7KQpCZXJ0cmFtIHRlaWx0IERpciBtaXQ6IE1vbQouLi4KQmVydHJhbSB0ZWlsdCBEaXIgbWl0OiBSZWljaHRlIGRhcz8KRHUgdGVpbHN0IEJlcnRyYW0gbWl0OiBobSwgaWhyIGhhYnQgZG9jaCAyIGZlbnN0ZXIgb2Rlcj8KQmVydHJhbSB0ZWlsdCBEaXIgbWl0OiBKZXBwCkJlcnRyYW0gdGVpbHQgRGlyIG1pdDogQWJlciBiZWkgZWluZW0gaXN0IGRpZSBSb2xsYWRlIHJ1bnRlcgpEdSB0ZWlsc3QgQmVydHJhbSBtaXQ6IEFhYWFhYWFhYWghISEKRHUgdGVpbHN0IEJlcnRyYW0gbWl0OiBiZWkgZGVpbmVtIQpCZXJ0cmFtIHRlaWx0IERpciBtaXQ6IEdlbmF1CkR1IHRlaWxzdCBCZXJ0cmFtIG1pdDogaGFicyEKRHUgdGVpbHN0IEJlcnRyYW0gbWl0OiA6KQpEdSB0ZWlsc3QgQmVydHJhbSBtaXQ6IGx1c3RpZyA6KQpCZXJ0cmFtIHRlaWx0IERpciBtaXQ6IFdhcnVtPwpEdSB0ZWlsc3QgQmVydHJhbSBtaXQ6IG51ciBzbyA6KQpCZXJ0cmFtIHRlaWx0IERpciBtaXQ6IFZlcnN1Y2hzdCBEdSBqZXR6dCBldHdhLCBvYiBEdSBlaW5lbiBhbHRlbiBBcGZlbCBzbwpCZXJ0cmFtIHRlaWx0IERpciBtaXQ6IHdlaXQgc2NobWVpc3NlbiBrYW5uc3Q/IDspCkR1IHRlaWxzdCBCZXJ0cmFtIG1pdDogaWNoIHdvbGx0ZSBudXIgc2ljaGVyZ2VoZW4sIGRhcyBpY2ggbWVpbmUgbmV1ZQpEdSB0ZWlsc3QgQmVydHJhbSBtaXQ6IFBob3RvbmVua2Fub25lIHJpY2h0aWcgYXVzZ2VyaWNodGV0IGhhYiA6KQo+IEJlcnRyYW0gdGVpbHQgRGlyIG1pdDogQWNoIHNvLCB3ZW5ucyB3ZWl0ZXIgbml4IGlzdCAuLi4KCllvdXJzIHRydWx5LAogICBDYXR3ZWF6bGUgKHdlaXNzIGF1Y2ggU2NobWFycm4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGltIEdlZmFlbmduaXMuLi4gKE1hcml0YSwgMzEuIE9rdCAxOTk1LCAwMToxNTo1Nyk6Ci4uLmluIGRlciBIb2VobGUgYW0gRmluZGxpbmc6CgprbGV0dGVyIHN0dWhsCldvaGluIHdpbGxzdCBEdSBrcmllY2hlbiA/CmtyaWVjaGUgc3R1aGwKRHUga3JpZWNoc3QgaW0gU3RhdWIuCgooa29wZmtyYXR6KQoKTWVpbiB2aWVydGVyIEJlaXRyYWNoCk1hcml0YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVtIENoZWYgenVtIDYwLiAoSmFmLCAzMS4gT2t0IDE5OTUsIDA1OjEyOjQ3KToKLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTU5IGxwICAgMTk4IG1wCi4gICAgICAgICAgICAtIDMwCi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEyOCBscCAgIDE5OCBtcAouICAgIDUgICAgKEIpCkRlciBXZWdoaWVyIGZhZW5ndCBkZW4gQnVtZXJhbmcgYWIuCkR1IGZhZW5nc3QgZGVuIEJ1bWVyYW5nCkIgd3VyZgo+IER1IG11c3N0IGRlbiBCdW1lcmFuZyBlcnN0bWFsIGtyaWVnZW4uCi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEyOCBscCAgIDE3NSBtcAooKikgU290by1zaHV0by11Y2hpCi4gICAgMTMKV2VnaGllciAtLSBkZW0gVm9sbHN0cmVja2VyCigrKSAgICAgICAgICAgTWF3YXNoaS1vdG9zaGkta2FrYXRvLXVrZQouICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMjggbHAgICAxNzQgbXAKLiAgICAgICAgICAgIC0gMjAKLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTAwIGxwICAgMTc0IG1wCldlZ2hpZXIgLS0gZGVtIFZvbGxzdHJlY2tlcgooKykgICAgICAgICAgIEdlZGFuLWJhcmFpCi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwMCBscCAgIDE3MyBtcAouICAgICAgICAgICAgLSAyMAouICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA3OCBscCAgIDE3MyBtcApEZXIgVm9sbHN0cmVja2VyIHNjaGxhZWd0IG1hbCBldHdhcyBrcmFlZnRpZ2VyIHp1LgpEZXIgVm9sbHN0cmVja2VyIHdpbGwgRGlyIGRlbiBUb2Rlc3N0b3NzIHZlcnNldHplbiEKV2VnaGllciAtLSBkZW0gVm9sbHN0cmVja2VyCigrKSAgICAgICAgICAgTWF3YXNoaS1lbXBpLXVrZQouICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA3OCBscCAgIDE3MiBtcAouICAgICAgICAgICAgLSAzMApbVG9kOl0gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSBGeXQgdW1nZWJyYWNodC4KW1RvZDpFaW4gV2VnaGllcl0gR290Y2hhIQo6CkhtLi4uIGltbWVyIHdpZWRlciBuZXR0IGFuenVzZWhlbiwgd2VubiBlaW5lbSBkZXIgQ2hlZiBhYmtyYXR6dCA6KQpKYWYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnJldW5kZS4uLiAoTGksIDMxLiBPa3QgMTk5NSwgMDg6MTg6NDQpOgojISBybj1GZWxzIHJ0PTgxNTA2NDk2MQpTYWd0ZSBuaWNodCBtYWwgZWluIHdlaXNlciBNYW5uOgpNZWluZSBGZWluZGUgaGFiZSBpY2ggbmljaHQgenUgZnVlcmNodGVuLCBtaXQgZGVuZW4gd2VyZGUgaWNoIHNjaG9uIGZlcnRpZywKYWJlciBtZWluZSBGcmV1bmRlPwoKTGkgKGlyZ2VuZHdpZSBpc3QgZGFzIG5pY2h0IGRhcyBvcmlnaW5hbHppdGF0LCBhYmVyIHNvIGFlaG5saWNoKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIFd1bmRlciBkZXIgSG9iYml0cy4uLiAoWWVuZGksIDMxLiBPa3QgMTk5NSwgMTI6MDA6MjMpOgoKPiBmaW5nZXIgZ2xpZm91cgpHbGlmb3VyIGlzdCBlaW5nZWxvZ2d0LAp1bmQgendhciB2b246IEJpZWxlZmVsZC4KSWRsZS1aZWl0OiAwMDoxMToxMApWb2xsZXIgTmFtZTogR2xpZm91ciBkaWUgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyaW4KUmFzc2U6IEhvYmJpdCwgIEdpbGRlOiBBYmVudGV1cmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoICAgU3BpZWxlcmxldmVsOiAxCgoKQXVjaCBuaWNodCBzY2hsZWNodCwgZWluZSBtYWVubmxpY2hlIEhvYmJpdGFuZmFlbmdlcmluLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG9iYml0cyAoUm9jaHVzLCAzMS4gT2t0IDE5OTUsIDEyOjI5OjEyKToKa3dlciBob2JiaXQKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERpZSwgMzEuIE9rdCAxOTk1LCAxMjoyNjoyNiAoMyBUZWlsbmVobWVyKQoKUGh1Z29zLi4uLi4uLi4uLnMgIFRvbHBhdHNjaC4uLi4uLi5zICBWYXJpZWwuLi4uLi4uLi4ucwpbVG9kOl0gRWluIEhvYmJpdHdhZWNodGVyIGhhdCBnZXJhZGUgUGh1Z29zIHVtZ2VicmFjaHQuCltUb2Q6RWluIEhvYmJpdHdhZWNodGVyXSBKYSxqYSB3aXIgSG9iYml0cyBzaW5kIGRpZSBiZXN0ZW4gS2FlbXBmZXIgZGVyIFdlbHQhCltUb2Q6RWluIEhvYmJpdHdhZWNodGVyXSA6LSkKSmEsIGRhcyBkYWNodGUgUGh1Z29zIGF1Y2guIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZXJhZGUsIGJlaW0gS3JheGVsbi4uLiAoV2FyZ29uLCAzMS4gT2t0IDE5OTUsIDE3OjA3OjQ2KToKRHUga2xldHRlcnN0IGFsbGVuIFdhcm51bmdlbiB6dW0gVHJvdHogYXVmIGRpZSBNYXVlci4gT2JlbiBhbmdla29tbWVuIHJ1dHNjaApEdSBhdXMgdW5kIHJhbW1zdCBEaXIgZWluZW4gUGZsb2NrIGluIERlaW5lbiBCYXVjaC4KU2NobWVyemVyZnVlbGx0IGtydWVtbXN0IER1IERpY2ggYXVmIGRpZSBTZWl0ZSB1bmQgdmVybGllcnN0IGRhcwpHbGVpY2hnZXdpY2h0LiBMYW5nc2FtIHNpZWhzdCBEdSBkZW4gQm9kZW4gYXVmIERpY2ggenVrb21tZW4sIGFscyBEdSBEaWNoIGF1ZgpkZW0gV2VnIG5hY2ggdW50ZW4gYmVmaW5kZXN0LiBNaXQgZWluZW0gbGF1dGVuIFJVTU1TIGxhbmRlc3QgRHUgYXVmIGRlbQpCb2Rlbi4KRGVyIEF1ZnByYWxsIGxhZXNzdCBlaW5pZ2UgS25vY2hlbiBiZWkgRGlyIGJyZWNoZW4uCj4gRGVyIE9yayBzYWd0OiBXaWxsa29tbWVuIGluIE9ya2hhdXNlbiwgRnJlbWRlci4KCihQUzogaGVlZCB0aGUgd2FybmluZ3MhKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdlcmFkZSwgYmVpbSBLcmF4ZWxuLi4uIChDYXJhZGhyYXMsIDMxLiBPa3QgMTk5NSwgMTc6MzM6NTApOgojISBybj1XYXJnb24gcnQ9ODE1MTU1NjY2CklzdCBkb2NoIGh1ZWJzY2gsIFdhcmdvbiwgZW5kbGljaCBtYWwgaW4gT3JraGF1c2VuIHdvIG1laHIgYWxzIGVpbmUKWmVpbGUgQmVzY2hyZWlidW5nLCB3ZW5ucyBhdWNoIG51ciBiZWltIEtub2NoZW5icmVjaGVuIGlzdC4gKjpeKQoKICAgICAgICB0c2Nob2UgICBSb3Rob3JuIENhcmFkaHJhcyAtIGhhdHMgZ2VtdWV0bGljaCB3YXJtIGF1ZiBkZXIgRkUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN1c2hpIHNjaHJlaWJ0IHdhcyBJbnRlbGxpZ2VudGVzIGZ1ZXIgSmFuaWNlLiAoU3VzaGksIDMxLiBPa3QgMTk5NSwgMTk6NDk6MzQpOgoKCgoKQXVmIEFuZnJhZ2Ugdm9uIEphbmljZSB1bmQgWWVuZGkuLi4Kd2FzIEludGVsbGlnZW50ZXMhCgoKCgoKYml0dGUgaGllciB0cmVubmVuIHVuZCB3ZWd3ZXJmZW46Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpTdXNoaSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5OTiBmdWVyIEphbmljZSAoQWNyaW1vbiwgMzEuIE9rdCAxOTk1LCAyMDoxMDozMyk6CkVpbiBuZXVlciBBcnRpa2VsIGZ1ZXIgSmFuaWNlLgoKTk5OCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdWVyIEphbmljZSAoQXNtb2RpcywgMzEuIE9rdCAxOTk1LCAyMDoxMDo1OSk6ClplaXR1bmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOTk4gZnVlciBKYW5pY2UgKEFjcmltb24sIDMxLiBPa3QgMTk5NSwgMjA6MTI6MzQpOgpKYW5pY2UgaGF0IGRlbiBsZXR6dGVuIEFydGlrZWwgc2Nob24gdmVyYnJhdWNodC4gRGVzaGFsYiBoaWVyIGVpbmVuIG5ldWVuIDotKQoKTk5OCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gUmluZy4uLiAoTXVwZmVsLCAzMS4gT2t0IDE5OTUsIDIwOjEzOjAyKToKSm9mIHp3YWVuZ3QgZWluZW4gJ0luIExpZWJlOiBUb2V0ZXInLVJpbmcgYXVmIEFyaWVucyBSaW5nZmluZ2VyLgokIEFyaWVuIGhhdCBXdXJzdGZpbmdlci4uLnBhc3N0IGxlaWRlciBuaWNodC4KVG9ldGVyIGRlbmt0ICAgLiBvIE8gKCJFaW4gUmluZyBzaWUgenUga25lY2h0ZW4uLi4iKQpBcmllbiBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KRHUgZ3JpbnN0IFRvZXRlciBhbi4KCipncmlucyogbXVwZmVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5OTiBmdWVyIEphbmljZSAoSmFuaWNlLCAzMS4gT2t0IDE5OTUsIDIwOjEzOjIxKToKIyEgcm49QWNyaW1vbiBydD04MTUxNjY3NTQKV28gYmxlaWJ0IGRlciBuYWVjaHN0ZSA/Pz8/CkphbmljZSBsZXNlIGdlaWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTk5OIGZ1ZXIgSmFuaWNlIChBc21vZGlzLCAzMS4gT2t0IDE5OTUsIDIwOjE0OjMzKToKIyEgcm49QWNyaW1vbiBydD04MTUxNjY3NTQKQXVmIGRhc3MgbmllIHdpZWRlciAnTmljaHRzIE5ldWVzIGF1ZiBkZXIgV2VsdC4nIGtvbW10IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOTk4gZnVlciBKYW5pY2UgKEd1bmR1ciwgMzEuIE9rdCAxOTk1LCAyMDoxNToyOSk6CiMhIHJuPUFzbW9kaXMgcnQ9ODE1MTY2ODczCndpZSB3YWVycyBtaXQgbmVtIFNrcmlwdC1BcnRpa2VsLVNjaHJlaWItU3BpZWxlcj8KTG9zIExvcyBUaW55ZnVndWUgbGVyIHZvcgpHdW5kdXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5OTiBmdWVyIEphbmljZSAoQXNtb2RpcywgMzEuIE9rdCAxOTk1LCAyMDoxNjo1OSk6CiMhIHJuPUd1bmR1ciBydD04MTUxNjY5MjkKSWNoIGhhYiBuaWNodCBtYWwgVEYgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipzdGF1biogKENhcmFkaHJhcywgIDEuIE5vdiAxOTk1LCAxNjoxNzoxNik6CkVpbiByb2V0bGljaGVyIE1ldGFsbHJpbmcgKHplcmZldHp0KS4KCiAgIFNpbmQgZGllIFNjaGxhZWdlIGRlciBNb25zdGVyIGhpZXIgc2Nob24gc28gaGFydCBkYXNzIHNlbGJzdAogICAgTWV0YWxsIHplcmZldHp0PyAqc3RhdW4qCgogICBDYXJhZGhyYXMgLSBtdXNzIGRhIHdvaGwgYXVmIHNlaW5lIEJlcmdmbGFua2VuIGFjaHRnZWJlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpzdGF1biogKEN1Y2h1bGxpbiwgIDEuIE5vdiAxOTk1LCAxNjo1OTo1OCk6CiMhIHJuPUNhcmFkaHJhcyBydD04MTUyMzkwMzYKCkVzIGdpYnQgaW1obyBudXIgZWluIE1vbnN0ZXIsIHdhcyBzbyB6dWhhdXQuCgpDdWNoLi0gc2NoaWNrdCBDYXJhZGhyYXMgaW4gZGllIFNjaHdlcnRxdWVzdC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICpzdGF1biogKFRvc3MsICAxLiBOb3YgMTk5NSwgMTc6MDc6NDEpOgojISBybj1DdWNodWxsaW4gcnQ9ODE1MjQxNTk4CklzdCBmbGFzY2gsIGdsYXViZSBpY2gsIEN1Y2guIEljaCBoYWJlIHNlbGJzdCBnZXN0YXVudCwgYWxzIGljaCBkZW4gUmluZyBkYQplcnN0bWFscyB2b3Iga25hcHAgMTAgVGFnZW4gYXVmIGRlciBFaXNlYmVuZSBydW1saWVnZW4gc2FoLCBhYmVyIGF1cyBkZXIKU2Nod2VydHF1ZXN0IHN0YW1tdCBkZXIgbmljaHQsIGRlbm4gZG9ydCB3ZXJkZW4gZGllIFNhY2hlbiBuaWNodCB6ZXJmZXR6dCwKc29uZGVybiAnaW4gU3R1ZWNrZScgZ2VoYXVlbiAtIG9kZXIgZ2lidHMgZGEgd2FzLCBkYXMgaWNoIG5pY2h0IGtlbm5lID8KSG93ZXZlciwgd2llZGVyIG1hbCB3YXMsIHdhcyBtYW4gbmljaHQga2VubnQuIFdlciBsb2VzdCBkaWVzZXMgUmFldHNlbCBmdWVyCm1pY2ggPwoKUnpuZS4gRHVtbSB3aWUgQnJvdCAmIEthbXBmendlcmcuIE11c3MgaXJnZW5kd2llIHp1c2FtbWVuaGFlbmdlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogKnN0YXVuKiAoTHVnLCAgMS4gTm92IDE5OTUsIDIzOjUyOjExKToKQ3VjaCBoYXQgUmVjaHQuIERlciBSaW5nIHN0YW1tdCB2b24gbWlyLiBpY2ggaGF0dGUgYXVmZ3J1bmQgZWluZXMgYWxpIGt1cnoKbWFsIGFzIEJTUyBnZXp1ZWNrdC4gRGFuYWNoIHNhaCBkZXIgUmluZyBzbyBhdXMuCktsYWVyZW5kIExVRwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmljaHQgZ2VudWc/Pz8gKEN1Y2h1bGxpbiwgIDIuIE5vdiAxOTk1LCAwMDo1Njo1Nik6CgoKW01vZXJkZXI6R2Vpc3QgQ29uYW5zXSBNb3JnZW4gZnJ1ZWggdW0gaGFsYiBzZWNocyBpbiBkZXIgQXJlbmEsIEZ5dCEgSWNoIGhhYgpbTW9lcmRlcjpHZWlzdCBDb25hbnNdIGRpZSBXYWhsIGRlciBXYWZmZW4uCgpMZXV0ZSwgQmFyYmFyZW4gbGVybmVuIGVzIE5JRSEKCkN1Y2guLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJvb20gY2hhdHMuLi4gKEhpZ2hsYW5kZXIsICAyLiBOb3YgMTk5NSwgMDk6MDI6MzEpOgouLi4gc2luZCBtYW5jaG1hbCBlaW5mYWNoIHNjaG9lbi4gOj4KRGFzIGVyc3RlIGlzdCBtZWluZSBVaHJtZWxkdW5nLCBtdXNzIGljaCBkYXp1IHNhZ2VuLgpEYXMgWndlaXRlIGthbSB2b20gUmF1bS4KIyMjIEpvZiBpc3QgamV0enQgc2VpdCA5IFN0dW5kZW4gaWRsZS4gIyMjCkR1IGVyc3RhcnJzdCB2b3IgRWhyZnVyY2h0LgpOTk4sCiAgSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbnRodWVsbHVuZ2VuIChZZW5kaSwgIDIuIE5vdiAxOTk1LCAxMzo1NToxNCk6CgoKW0FsbGdlbWVpbjpPZXR0aV0gQXJuYXlhIGhhdCBlaGggS29lcmNiY2hlbmdyb2Vzc2UgRCA7LSkpCltBbGxnZW1laW46Um9lc3RpXSBPZXR0aSBlcyBsYW5ndC4uLm1hY2ggZGVpbmUgZGlmZmVyZW50emVuIG1pdCBhcmFuamEgdW50ZXIKW0FsbGdlbWVpbjpSb2VzdGldIGV1Y2ggYXVzLi4uT2VmZmVudGxpY2hlIEJlbGVpZGlndW5nZW4gQlpXIFp1ciBzY2hhdQpbQWxsZ2VtZWluOlJvZXN0aV0gc3RlbGx1bmdlbiBzaW5kIGVjaHQgbmljaHQgbmV0dC4uLi46fApbQWxsZ2VtZWluOk9ldHRpXSBBcmFueWEgU3Vlc3NlIGhhYmVuIHdpciBkaWZmZXJlbnplbiA/PwpbQWxsZ2VtZWluOlJvZXN0aSBncnVlYmVsdG9PKFdhcyBpc3QgS29lcmJjaGVuZ3JvZXNzZSBEPy4uLi5BY2ggamEgUm9lc3RpIGlzdApzbyB1bmdlbWVpbiBVbnJlaWYuLi46KSApXQpbQWxsZ2VtZWluOkFyYW55YV0gQWJlciBuaWNodCBkb2NoLCBPZXR0aS1MaWViY2hlbiEKW0FsbGdlbWVpbjpSb25kYV0gRW50c3ByaWNodCB1bmdlZmFlaHIgQmF1Y2hncm9lc3NlIEpvZiA7KQoKCkFlaCAtLSB3YWVyZSBkYXMgbmljaHQgZWhlciBaPwpPZGVyIFhYWj8KCk9oLCBoYS1oYS1oYWxsbyBKb2YsIGhpaGkuLi4gaHJobW0uLi4gV2llIGdlaHRzPwpOZWluLCBKb2YsIER1IHdpcnN0IGRvY2ggbmljaHQgLS0gSk9GIQpKb2YsIHN0ZWNrIGRpZSBMdXBlIHdlZy4gSm9mISBCaXR0ZSEKRGFzIGthbm5zdCBEdSBkb2NoIG5pY2h0IG1BUkdIISEhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5pY2h0IGdlbnVnPz8/IChGeXQsICAyLiBOb3YgMTk5NSwgMTU6MTg6MTgpOgojISBybj1DdWNodWxsaW4gcnQ9ODE1MjcwMjE2CkphLCBpY2ggZ2xhdWJtLCB3aXIgaGFiZW4gZGFzIGhhbGIgc2VjaHMgZGFubiB3b2hsIG5vY2ggbWFsIGhpbnRlciB1bnMKZ2VicmFjaHQuIFBsdXNtaW51cyBlaW5lIE1pbnV0ZSA6KQpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbW1tLi4uPz8gKEJhbWJ1bGtvLCAgMi4gTm92IDE5OTUsIDE1OjMwOjE2KToKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIE1haGF0bWEgaW4gUnVicmlrICJlbnR3aWNrbHVuZyIuCm5uCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCgpCYW1idWxrbyAqZ3J1ZWJlbG5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluIGFsdGVyIFNlaGVyIChBY3JpbW9uLCAgMi4gTm92IDE5OTUsIDE1OjMyOjA3KToKRHUgYmVmaW5kZXN0IERpY2ggaW4gZGVtIHJ1c3Rpa2FsZW4gR2FzdGhhdXMgIlp1bSBTdGVpbmJvY2siIGltIFN0ZWluaGF1c2VuCldpbmRzaG9ybi4gRWluZmFjaGUgc3RlaW5lcm5lIFRpc2NoZSB1bmQgQmFlbmtlIGJpbGRlbiBkaWUgRWlucmljaHR1bmcuIE1pdAonbWVudWUnIGthbm5zdCBEdSBEaXIgZGllIFNwZWlzZWthcnRlIGFuc2VoZW4uCkVpbiBhbHRlciBTZWhlci4KRGllIFRvcC1MaXN0ZSwgVG9wLVNwaWVsZXJsaXN0ZSwgVG9wLVNlaGVybGlzdGUgdW5kIFRvcC1ad2VpdGlsaXN0ZS4KPiA/IHNlaGVyCkRpZXNlciBTZWhlciBzY2hhdXQgenVydWVjayBpbiBkaWUgVmVyZ2FuZ2VuaGVpdCB1bmQgdm9yYXVzIGluIGRpZSBadWt1bmZ0LgpGcnVlaGVyIGVpbm1hbCBpc3QgZXIgZ2VuYXVzbyB3aWUgRHUgZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZXdhbmRlcnQsIGRvY2gKZGF6dSBpc3QgZXIgenUgYWx0LiBBbHNvIGhhdCBlciBzaWNoIGhpZXIgYmVpIGVpbmVtIEdsYXMgSGltYmVlcndlaW4genVyIFJ1aGUKZ2VzZXR6dC4KRXIgaXN0IGFic29sdXQgZml0LgpFciB0cmFlZ3QgYmVpIHNpY2g6CkVpbmUgUm9iZSAoYW5nZXpvZ2VuKS4KPiBxIHNlaGVyIG1vcmdlbmdyYXVlbgpEZXIgYWx0ZSBTZWhlciBzYWd0OiBPaCEgRGFzIGhhYmUgaWNoIG5pY2h0IGdlc2VoZW4uCgpVbmQgc293YXMgd2lsbCBTZWhlciBzZWluISA6LSkKCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbiBhbHRlciBTZWhlciAoV2FyZ29uLCAgMi4gTm92IDE5OTUsIDE1OjQ4OjE5KToKIyEgcm49QWNyaW1vbiBydD04MTUzMjI3MjcKSG0sIGVzIGxhdWZlbiBkb2NoIGdlbnVnIHZvbiBkZXIgU29ydGUgaGllciBydW0uLi4gOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkplZGVyIGlzdCBzZWluZXMgR2x1ZWNrZXMgU2NobWllZCAoVGFzaGEsICAyLiBOb3YgMTk5NSwgMTY6MzU6NDgpOgpMZXR6dGVucyBiZWltIERldGFpbHRlc3Q6Cgo6Z2x1ZWNrOiBOSUNIVCBnZWZ1bmRlbiEKClRqYSwgZHVtbSBnZWxhdWZlbi4uLgoKdW5nbHVlY2tsaWNoLCBUYXNoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmV0dG5hZXBmY2hlbiAoRWxieXRlLCAgMi4gTm92IDE5OTUsIDE4OjM0OjAxKToKUGFyYWNlbHN1cyBzYWd0OiBPb2NoLCBrdWVtbWVyIER1IGRpY2ggZXJzdG1hbCB1bSBkZWluZSBTQ2hlaW5lClBhcmFjZWxzdXMgc2FndDogRGFuYWNoIGthbm5zdGUgaW1tZXIgbm9jaCByaWNodGlnIGluIExQQyBlaW5zdGVpZ2VuIDspCgpEdSBzYWdzdDogd2FzIG1hY2hlbiBEZWluZSBTY2hlaW5lID8/IG9kZXIgZGFyZiBtYW4gZGFzIG5pY2h0IG1laHIKRHUgc2Fnc3Q6IGZyYWdlbi4uLi4oRWxCeXRlIGlzdCBkYSB2b3JzaWNodGlnLi4uZWluaWdlIExldXRlIGhhYmVuIGlobiBkYWZ1ZXIKRHUgc2Fnc3Q6IGFuIGRpZSBXYW5kIGdlc3RlbGx0IHVuZCBpaG4gbWl0IFRlZXIgdW5kIEZlZGVybiBnZXNjaG11ZWNrdCkKClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBQYXJhY2Vsc3VzLgpQYXJhY2Vsc3VzICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKTmFqYS4uc28gZ2VuYXUgd29sbHRlIGljaCBlcyBuaWNodCB3aXNzZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSb29tIGNoYXRzLi4uIChaZXBoeXIsICAyLiBOb3YgMTk5NSwgMTk6MDU6MjEpOgojISBybj1IaWdobGFuZGVyIHJ0PTgxNTI5OTM1MQpFYmVuIGltIEhvYmJpdHdhbGQ6CkRpZSBLcm9ldGUgZmFlbmd0IGVpbmUgRmxpZWdlIG1pdCBkZXIgWnVuZ2UuClZpZWxsZWljaHQgc29sbHRlc3QgRHUgc2NobmVsbCB2b24gaGllciB2ZXJzY2h3aW5kZW4uCgpaZXBoLCBmdWVobHQgc2ljaCBlaWdlbnRsaWNoIG5pY2h0IGJlZHJvaHQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIbW1tLi4uPz8gKENhcmFkaHJhcywgIDIuIE5vdiAxOTk1LCAxOTo0NzoyMCk6CiMhIHJuPUJhbWJ1bGtvIHJ0PTgxNTMyMjYxNgpEdSBiaXN0IGViZW4gc2NobmVsbGVyIGFscyBkZWluIFNjaGF0dGVuLCBCYW1iZWwuIDotKQpBZWVlZWVlaCBhbHMgZGVpbmUgTVBBLgoKICAgICAgICpncnVlYmVsKiAgICAgIENhcmFkaHJhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaHVlc3RlbCAoQ2FyYWRocmFzLCAgMi4gTm92IDE5OTUsIDE5OjU3OjE2KToKPiB0biBuZXJrdWIgd2kgdnVzciBkeQpGZWhsZXI/IER1IG1hY2hzdCBkb2NoIGtlaW5lIEZlaGxlci4gOikKdG0gbWVybGluIHdvIGJpc3QgZHUKRHUgc3B1ZXJzdCBlaW5lbiBzZW5nZW5kZW4gU2NobWVyei4KRHUgdGVpbHN0IE1lcmxpbiBtaXQ6IHdvIGJpc3QgZHUKPiBNZXJsaW4gcnVmdDogSWNoIGJpbiBpbiBkZXIgV3Vlc3RlLgoKICAgIEtvbW10IGRhdm9uIHdlbm4gbWFuIGRpZSBGbG9zc2VuIGZhbHNjaCBhdWYgZGVyIFRhc3RhdHVyIGhhdAoKICAgICAgICAgIENhcmFkaHJhcyAtIHNjaHJlaWJ0IGF1Y2ggZmFsc2NoIG5vY2ggYmxpbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcnRlbiBhdWYgR29kb3QuLi4gKE11cGZlbCwgIDIuIE5vdiAxOTk1LCAyMTo1Mjo1Myk6CltBbGxnZW1laW46TXVwZmVsXSBuYSBkYXMgbXVlbnN0ZXJhbmVyIG5ldHogZ2VodCBkb2NoIG5vY2gKJCBbU2VoZXI6THVnXSBpY2ggd2FydGUgbWljaCBpbiBTdm9sdmFlciB0b3QgYXVmIGRlbiBUcmF3bGVyLCBpc3QgZGVyCltTZWhlcjpMdWddIEZpY2hlcmVpaGFmZW4gdWViZXJoYXVwdCBkZXIgcmljaHRpZ2Ugb3J0PwpSdW1hdGEgc2FndDogV2lsbGtvbW1lbiBpbSBNb3JnZW5HcmF1ZW4uJwpSdW1hdGEgc2FndDogRGllc2VzIE11ZCBiZWZpbmRldCBzaWNoIGluIE11ZW5zdGVyIChEZXV0c2NobGFuZCknClJ1bWF0YSBzYWd0OiBCZWkgZ3JvZXNzZXJlbiBQcm9ibGVtZW4ga2FubnN0IER1IERpY2ggYW4gZGllIE11ZGdvZXR0ZXInClJ1bWF0YSBzYWd0OiBCb2luZyBvZGVyIEpvZiB3ZW5kZW4gb2RlciBhdWNoIGVtYWlsIGFuIGRpZScKUnVtYXRhIHNhZ3Q6IEFkcmVzc2UgIm11ZEBtdWQudW5pLW11ZW5zdGVyLmRlIiBzY2hyZWliZW4uJwpSdW1hdGEgc2FndDogV2VubiBEdSBudXIgbWFsIHJlaW5zY2hudWVmZmVsbiB3aWxsc3QsIHNvIG5lbm5lIERpY2ggImdhc3QiLicKUnVtYXRhIHNhZ3Q6IFdlaGUsIER1IGZhZW5nc3QgYW4sIGFuZGVyZSBTcGllbGVyIGFuenVncmVpZmVuLicKUnVtYXRhIHNhZ3Q6IHRhYWFjaApSdW1hdGEgc2FndDogY2F0LCBpcmdlbmR3YXMgaW4gbXVlc250ZXIgaGFlbmd0IDotKApSdW1hdGEgc2FndDogaWNoIHZlcnN1Y2hlIGdlcmFkZSBlaW5lbiBlaWZlbGwtY29tcGlsZXIgenUgc3RhcnRlbgpbQWxsZ2VtZWluOkFuYWtpbl0gc28gbmFjaHQKUnVtYXRhIHNhZ3Q6IG9jaCBuZWUKUnVtYXRhIGdlaHQgaW4gZGllIEVja2UgdW5kIHNjaG1vbGx0IGhlZnRpZy4KUnVtYXRhIHNhZ3Q6IGFoClJ1bWF0YSBzYWd0OiBkYW5uIGlzdHMgamEgZ3V0ClJ1bWF0YSBzYWd0OiB3ZW5uIGRhIGplbWFuZCB3YXMgZHJhbiBtYWNodCAuLiA6LSkKUnVtYXRhIHNhZ3Q6IHp1IGJlc3RlbGxlbiA6KApSdW1hdGEgc2FndDogc293YXMgZ2lidHMgZGEKUnVtYXRhIHNhZ3Q6IEVyb3RpYy1EaWEtU2hvdyBNZWdhIC0gQnVzZW4KUnVtYXRhIHNhZ3Q6IGFiZXIga2VybGUgc2luZCBhdWNoIGRyaW4KUnVtYXRhIHNhZ3Q6IG5hamEsIG5hY2t0ZSBnaWJ0cyBkYSBlaCBuaWNodCwgZ2xhdWIgaWNoClJ1bWF0YSBzYWd0OiBtb20KUnVtYXRhIGdyaW5zdCB1bnZlcnNjaGFlbXQuClJ1bWF0YSBzYWd0OiBuYSBzb3dhcywgZGVyIE9yaW9uLVZlcnNhbmQgbGFlc3N0IG1pY2ggd2llZGVyIGFuIHNlZWluZSBCaWxkZXIKUnVtYXRhIHNhZ3Q6IHJhbgpSdW1hdGEgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uClJ1bWF0YSBzYWd0OiBpY2ggd2Vpc3MgbmljaHQgd2FzIGRpZSBkYSBtYWNoZW4sIGRpZSBmcmlja2VsbiBzZWl0IHN0dW5kZW4KUnVtYXRhIHNhZ3Q6IHJ1bSwgaGllciB0dXQgc2ljaCBhdWNoIG5peCA6KCgKUnVtYXRhIGRlbmt0ICAgLiBvIE8gKGdlaG9lciBpY2ggZGVubiBoaWVyIHp1bSBpbnZlbnRhcj8/PykKUnVtYXRhIHNhZ3Q6IHdlbm4gZGEgamVtYW5kIHdhcyBkcmFuIG1hY2h0IC4uIDotKQpSdW1hdGEgc2FndDogZGFubiBpc3RzIGphIGd1dApSdW1hdGEgc2FndDogYWgKUnVtYXRhIGdlaHQgaW4gZGllIEVja2UgdW5kIHNjaG1vbGx0IGhlZnRpZy4KUnVtYXRhIHNhZ3Q6IG9jaCBuZWUKUnVtYXRhIHNhZ3Q6IGljaCB2ZXJzdWNoZSBnZXJhZGUgZWluZW4gZWlmZWxsLWNvbXBpbGVyIHp1IHN0YXJ0ZW4KUnVtYXRhIHNhZ3Q6IGNhdCwgaXJnZW5kd2FzIGluIG11ZXNudGVyIGhhZW5ndCA6LSgKSFVOR0FBQUFBQUFBQUFBQUFBQUFBCltBbGxnZW1laW46UnVtYXRhXSB1cmdsCltBbGxnZW1laW46UnVtYXRhXSBvZnQKUnVtYXRhIHNhZ3Q6IHVuZ2VkdWxkIHVuZCBlaW4gZ2V3aXNzZXMgJ2ljaCBoYWIgcmVjaHQnIC4uLi4KUnVtYXRhIHNhZ3Q6IHdlbm4gZGFubiBub2NoIGdld2lzc2UgY2hhcmFrdGFlcmUgenVzYW1tZW50cmVmZmVuLi4uClJ1bWF0YSBzYWd0OiBzb3dhcyBrZW5uZSBpY2gKUnVtYXRhcyBHZWdlbndhcnQgdmVyZmx1ZWNodGlndCBzaWNoLgoKKGRhcyBrYW0gYWxsZXMgYXVmIGVpbm1hbCByYXVzIDotKQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthbmluY2hlbiAoRnl0LCAgMy4gTm92IDE5OTUsIDA0OjEwOjUxKToKRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG5vcmRlbi4KRWluIEhvYmdvYmxpbi4KRWluIEhvYmdvYmxpbi4KRWluIEhvYmdvYmxpbi4KRWluIEhvYmdvYmxpbi4KRWluIEhvYmdvYmxpbi4KRWluIEhvYmdvYmxpbi4KRWluIEhvYmdvYmxpbi4KRWluIEhvYmdvYmxpbi4KRWluIEhvYmdvYmxpbi4KRGVyIEFuZnVlaHJlciBkZXIgR29ibGlucyB1bmQgSG9iZ29ibGlucy4KOgpBbHNvIGlyZ2VuZHdpZSBoZWNrZW4gZGllIHdpZSBkaWUgS2Fybmlja2VsIDopCjoKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExFRVJFICEhIChBc21vZGlzLCAgMy4gTm92IDE5OTUsIDEwOjIzOjQ4KToKIyEgcm49TW9yZ290aCBydD04MTUzODAzMzUKaXJnZW5kd2FubiBtdXNzIG1hbiBqYSBzY2hsaWVzc2xpY2ggYXVjaCBzY2hsYWZlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZldHRuYWVwZmNoZW4gKFBhcmFjZWxzdXMsICAzLiBOb3YgMTk5NSwgMTM6MTY6NTcpOgojISBybj1FbGJ5dGUgcnQ9ODE1MzMzNjQxCkhtbSwgZGF2b24gaGFiIGljaCBzY2hvbiB3aWVkZXIgbml4IG1laHIgbWl0Z2VrcmllZ3QgOigKU2NoZWlzcy1Nb2RlbXMgaW4gZGVyIFVuaSEgSXJnZW5kd2FubiBicmluZyBpY2ggZGEgamVtYW5kZW4gZnVlciB1bSEgOykKClBhcmFjZWxzdXMgKG5ldHp0b3QpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVmIHpldHRlbCAoVG9ldGVyLCAgMy4gTm92IDE5OTUsIDE0OjA4OjQxKToKSGksCmluIEVybWFuZ2VsdW5nIGVpbmVzIGVpZ2VuZW4gUmVwZmlsZXMgaGFiIGljaCBtaXIgbWFsIGRhcyB2b24gU1REIGFuZ2VzY2hhdXQuCkhpZXIgZWluZSBrbGVpbmVzICdiZXN0b2YnOgoKSURFQSB2b24ga25laXNlbCBhdXMgL3Jvb20vZ2lsZGUgKCA3LiBKYW4gMTk5NCk6CmxhIHVucyBpbiBkaWUgV2VsdCB6aWVoZW4uCkJVR1Mgdm9uIG9scHAgYXVzIC9yb29tL25ldHp0b3QgKDIwLiBKYW4gMTk5NCk6CmhpZXIgc3RlaHQgaWNoIHNvbGx0ZSBuaWNodCBoaWVyIHNlaW4hIG5hIGRhbm4gaXN0IGRhcyB3b2hsIGVpbiBuZXVlcyBmZWF0dXJlCjspCklERUEgdm9uIGJlZ2lubmVyIGF1cyAvcm9vbS9naWxkZSAoIDguIEZlYiAxOTk0KToKSWNoIHd1ZXJkZSBlcyBtaXIgaGllciBtYWwgZ2VybmUgdm9uIGVpbmVtIGVya2xhZXJlbiBsYXNzZW4sIHdhcyBpY2ggaGllcgpJREVBIHZvbiBnYXN0MSBhdXMgL3Jvb20vZ2lsZGUgKCA5LiBBcHIgMTk5NCk6Cm5hY2ggSGF1c2UgdGVsZWZvbmllcmVuCklERUEgdm9uIGdhc3QxIGF1cyAvcm9vbS9naWxkZSAoMjYuIEF1ZyAxOTk0KToKZGFzIGljaCBuaWNodHMgd2Vpc3MKQlVHUyB2b24gZm9zc2kgYXVzIC9yb29tL3ZvaWQgKDI2LiBPa3QgMTk5NCk6ClNjaHdlYmUgaW0gTmljaHRzLiBXbm4gaWNoICJ3ZWx0IiBlaW5nZWJlIGVyY2hlaW50ICJEdSBzaWVoc3QgRmVobGVyIGltClJhdW0tWmVpdCBHZWZ1ZWdlIgpJREVBIHZvbiByaWZmIGF1cyAvZ2lsZGVuL2FiZW50ZXVyZXIgKCA0LiBOb3YgMTk5NCk6CmZpY2tlbgpJREVBIHZvbiBzbGF5ZXIgYXVzIC9naWxkZW4vYWJlbnRldXJlciAoMTUuIE5vdiAxOTk0KToKV2lyIHp1ZW5kZW4gZGFzIEhhdXMgYW4gdW5kIHJ1ZmVuIGRhbm4gZGllIEZldWVyd2VociAhClRZUE8gdm9uIHNsYXllciBhdXMgL2dpbGRlbi9hYmVudGV1cmVyICgxNS4gTm92IDE5OTQpOgpBY2ggbmljaHRzICEKQlVHUyB2b24gZ2FzdDQgYXVzIC9naWxkZW4vYWJlbnRldXJlciAoMjQuIE5vdiAxOTk0KToKaWNoIGJpbiBudXIgR2FzdApCVUdTIHZvbiBrYWlnIGF1cyAvZ2lsZGVuL2FiZW50ZXVyZXIgKDI0LiBGZWIgMTk5NSk6CiAgICBidWcgICAgICAgYnVnICAgICAgICBidWcvdyAgICAgIGRlYWQgICAgICAgYnVnICAgICAgIGJsaW5kICAgICBidWcgYWZ0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCj8/IHNlbHRzYW0gPz8gbWVybGluID0gY2FyYWRocmFzID8/IChNb3Jnb3RoLCAgMy4gTm92IDE5OTUsIDE0OjM2OjI1KToKCnRtIG1lcmxpbiB3byBpc3QgY2FyYWRocmFzCgpEdSBzcHVlcnN0IGVpbmVuIHNlbmdlbmRlbiBTY2htZXJ6LgpEdSBoYXN0IGpldHp0IDMwMyBMZWJlbnNwdW5rdGUgdW5kIDEyNDIgTWFnaWVwdW5rdGUuCkR1IHRlaWxzdCBNZXJsaW4gbWl0OiB3byBpc3QgY2FyYWRocmFzCj5NZXJsaW4gcnVmdDogSWNoIGJpbiBpbiBkZXIgRWJlbmUuCgpvaG5lIHdvcnRlKGFlaCBrb21tZW50YXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGF1ZiBMUEMgISAoTW9yZ290aCwgIDMuIE5vdiAxOTk1LCAxNDo1NDo0Nyk6CltMUEM6Q3JlYXRpdmVdIGF1ZiB3YXMgd2Vpc3QgdGhpc19wbGF5ZXIgYmVpIG1hZ2llcm4/IGF1Y2ggYXVmIGRlbiBwbGF5ZXIsCltMUEM6Q3JlYXRpdmVdIG9kZXI/CltMUEM6V2FyZ29uXSBzb2xsIGVzIGRhZnVlciBldHdhIGVpbiB0aGlzX21hZ2UoKSBnZWJlbj8/PwpbTFBDOkthZW5ndXJ1aF0gRGFzIG1hY2h0IGtlaW5lbiBVbnRlcnNjaGllZApOZXNhamEgcnVmdDogVFlSSU9OCltMUEM6T2V0dGldICpsYWNoKgpbTFBDOkthZW5ndXJ1aF0gdW5kIHRoaXNfbGVhcm5lciwgdGhpc19hcmNoIHVzdy4uLi4uCltMUEM6Q3JlYXRpdmVdIG5ham8sIGRhIGhhbXdlciBuZW4gcmF1bSwgd28gZXMgbmV0IGZ1bnp0LgpbTFBDOk1vcmdvdGhdIHdlaWwgdGhpc19wbGF5ZXIoKS0+Y29tbWFuZF9tZSgiYXJnbCIpIGtsYXBwdCBiZWkgaWhtIG5pY2h0LApbTFBDOk1vcmdvdGhdIGJlaSBtaXIgamEKPltMUEM6Um9jaHVzXSB0aGlzX2dvZCAuLi4KW0xQQzpaYXJkb3pdIHRoaXNfaWRsZV9nb2QKW0xQQzpDcmVhdGl2ZV0gaGUsIGlzIGVybnN0IGdlbWVpbnQKW0xQQzpPZXR0aV0gdGhpc19zY2hlcnpfbWFnZQpbTFBDOkthZW5ndXJ1aF0gdGhpc19vZXR0aQpbTFBDOlphcmRvel0gdGVzdGUgZG9jaCBtaXQgSVNfTEVBUk5FUiggdGhpc19wbGF5ZXIoKSkKW0xQQzpNb3Jnb3RoXSB0aGlzX2lzX3Vuc2VyX2pvZgo+W0xQQzpSb2NodXNdIGljaCBkZWZpbmllciBtYWwgaW4gc2ltdWxfZWZ1biBkaWUgZnVua3Rpb24gdGhpc19yb2NodXMoKSA6LSkKW0xQQzpXYXJnb25dIHVuZCByZWFsbHlfaW50ZXJhY3RpdmUoKSBhbHMgaW50ZXJhY3RpdmUodGhpc19pbnRlcmFjdGl2ZSgpKQpbTFBDOk9scHBdIEljaCB1bmQgVnJhaSBiZXN0ZWhlbiBhdWYgInRoaXNfZWxkZXIiIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VyYWRlLCBiZWltIHRlc3Rlbi4uLiAoV2FyZ29uLCAgMy4gTm92IDE5OTUsIDE1OjU1OjQ0KToKV2VsY2hlciBMUEMtQ29kZXIgaGF0IHNpZSBuaWNodCBzY2hvbiBtYWwgenUgc3B1ZXJlbiBiZWtvbW1lbiwgZGllIE1hY2h0IGRlcwpBdXNydWZlemVpY2hlbnMuLi4KU28gYXVjaCBpY2ggaW0gS2xlcmlrZXJzcGVsbGJvb2s6Cgo+IGVudGZyb3NjaGUgc2FwaGlzCkFiZXIgZWluIEZyb3NjaCBpc3QgZG9jaCBnYXIga2VpbiBGcm9zY2ghCgpIbW1tbS4uLi4gOykKICBXYXJnb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9taSAoQ2F0d2VhemxlLCAgMy4gTm92IDE5OTUsIDE5OjA0OjQ1KToKW1ZlcmxlZ3Qgdm9uIHBvbGl6ZWkuYmVzY2h3ZXJkZW4sIE1hZ2ljb2xsaSwgIDMuIE5vdiAxOTk1LCAxNzowOToyOF06CkFjaCBtYWNodCBEZWluZSBPbWkgYXVjaCBzbyB0b2xsZSBQZmFubmVrdWNoZW4sIE1haGF0bWE/IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9taSAoQ2F0d2VhemxlLCAgMy4gTm92IDE5OTUsIDE5OjA1OjEyKToKIyEgcm49TWFnaWNvbGxpIHJ0PTgxNTQxNDk2OApbVmVybGVndCB2b24gcG9saXplaS5iZXNjaHdlcmRlbiwgQ2F0d2VhemxlLCAgMy4gTm92IDE5OTUsIDE4OjIzOjQ2XToKSG0sIG1pY2ggd3VlcmRlIHZvciBhbGxlbSBEaWUgQWRyZXNzZSBEZWluZXIgT21pIGludGVyZXNzaWVyZW4sCk1hZ2ljT2xsaSA6KSkKWVRDCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBPbWkgKE9scHAsICA0LiBOb3YgMTk5NSwgMDM6NTg6MTIpOgojISBybj1DYXR3ZWF6bGUgcnQ9ODE1NDE5NDI2CltWZXJsZWd0IHZvbiBzY2htYXJybiwgQ2F0d2VhemxlLCAgMy4gTm92IDE5OTUsIDE5OjA2OjU0XToKW1ZlcmxlZ3Qgdm9uIHNjaG1hcnJuLCBDYXR3ZWF6bGUsICAzLiBOb3YgMTk5NSwgMTk6MDQ6NDldOgpbVmVybGVndCB2b24gcG9saXplaS5iZXNjaHdlcmRlbiwgQ3VjaHVsbGluLCAgMy4gTm92IDE5OTUsIDE4OjI1OjQ2XToKQ2F0Kiwgd2FzIG11ZWxsc3QgRHUgaGllciBpbiBwb2xpemVpLmJlc2Nod2VyZGVuIHJ1bT8KRmluZGV0LCBkYXNzIFN0ZXJudHJhZWdlciBWb3JiaWxkIHNlaW4gc29sbHRlbiA7LSkpKSAsCkN1Y2guLQoKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogT21pIChPbHBwLCAgNC4gTm92IDE5OTUsIDAzOjU4OjU4KToKIyEgcm49T2xwcCBydD04MTU0NTM4OTIKVmVybGVnZW4gbWFjaHQgU3Bhc3MsIGdlbGwgQ2F0IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogT21pIChGYW51aWRob2wsICA0LiBOb3YgMTk5NSwgMTI6NDE6NTYpOgojISBybj1PbHBwIHJ0PTgxNTQ1MzkzOApOYSBob2ZmZW4gd2lyLCBkYXNzIGR1IG5pY2h0IHZlcmxlZ2VuIHdpcnN0LCBPbHBwLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW5mYWVuZ2VyaGlsZmUgKEd1bmR1ciwgIDQuIE5vdiAxOTk1LCAyMjoxMTo0Nik6Ckh0YiBydWZ0OiB3aWUga29tbSBpY2ggYXVzIGRlbSBBdWZ6dWcgaW4gSGlsYmVydHMgVHVybSBoZXJhdXMgPz8/PwpydWYgRW5kZSEgKGMpIEdyaW1tYm9ybgpEdSBydWZzdDogRW5kZSEgKGMpIEdyaW1tYm9ybgpDdWNodWxsaW4gcnVmdDogcmF1cyAoYykgQ3VjaC4tCkNhcmVmcmVlIHJ1ZnQ6IHNlbGJzdGxvZXNjaHVuZyAoYykgTW9yb24uCk1vcm9uIHJ1ZnQ6IEhhZT8KU3VzaGkgcnVmdDogUnVldHRlbCBhbiBBdWZ6dWcgKHMpIFN1c2hpCkdhcmZpZWxkIHJ1ZnQ6IHJ1ZmUgaGlsYmVydCAoYykgR2FyZmllbGQKQWNyaW1vbiBydWZ0OiB2ZXJsYXNzZSBhdWZ6dWcgKGEpIEFjcmltb24KLi4uClRqYS4uLgpHdW5kdXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtvcGZ3ZWg/IChHdW5kdXIsICA0LiBOb3YgMTk5NSwgMjI6MzQ6MDcpOgpbQWxsZ2VtZWluOkdhcmZpZWxkXSBtZWluIGtvcGZ3ZWggaXN0IHdlZwpEdSBob2Vyc3QgZWluIEdyb2xsZW4uIERlciBWdWxrYW4gaXN0IG1hbCB3aWVkZXIgYWt0aXYuCi4uLgpIbT8KR3VuZHVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXR6dG90ZSB1bmQgZGVyZW4gQWt0aW9uZW4gKEJsb2NrYnVzdGVyLCAgNC4gTm92IDE5OTUsIDIzOjM2OjQ1KToKTmV1bGljaCBpbSBNdWQ6CgpUc3VuYW1pIGRlciBhbmdlaGVuZGUgU2VoZXIgKG5ldHp0b3QpLgpGcmVkbyBkZXIgS2FlbXBmZXIuCkVzYyBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyLgoKPiBUc3VuYW1pIHJ1ZWxwc3QuCgpmaW5nZXIgVHN1bmFtaQpUc3VuYW1pIGlzdCBuaWNodCBlaW5nZWxvZ2d0LgoKVGphLCBTYWNoZW4gZ2lidCdzCkJsb2NraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBiZWkgdGFudGUgaHlkcmEgKEZ5dCwgIDUuIE5vdiAxOTk1LCAxOTo0MjozMik6Ci4gICAgICAgICAgICAtIDMKLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTEgbHAgICAxNjQgbXAKSHlkcmFrb3BmIC0tIHNlaW5lbSBmdWVyY2h0ZXJsaWNoZW4gR2ViaXNzCigrKSAgICAgICAgICAgSGFpd2FuLW5hZ2FzaGktdWtlCi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDExIGxwICAgMTYzIG1wCkh5ZHJha29wZiAtLSBzZWluZW0gZnVlcmNodGVybGljaGVuIEdlYmlzcwooLSkgICAgICAgICAgIEhhaXdhbi1uYWdhc2hpLXVrZQouICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMSBscCAgIDE2MiBtcAouICAgICAgICAgICAgLSA4Ci4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEgbHAgICAxNjIgbXAKPiBSZXBvcnRtb2R1cyBpc3QgamV0enQgYXVzZ2VzY2hhbHRldC4KPiBTcGVpY2hlcmUgRnl0LgpEdSB6aWVoc3QgZGVuIEdpIGF1cy4KRHUgemllaHN0IGRlbiByb3RlbiBHdWVydGVsIGF1cy4KQmlzIGJhbGQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZXJsaW4gaXN0IGRvb2YgdW5kIHN0aW5rdCEgKEFzbW9kaXMsICA2LiBOb3YgMTk5NSwgMDk6NDk6MzQpOgp0ZWlsZSBtZXJsaW4gbWl0IHdvIGJpc3QgZHUgbmljaHQgPwpEdSBzcHVlcnN0IGVpbmVuIHNlbmdlbmRlbiBTY2htZXJ6LgpEdSB0ZWlsc3QgTWVybGluIG1pdDogV28gYmlzdCBkdSBuaWNodCA/Ck1lcmxpbiBydWZ0OiBJY2ggYmluIGluIGRlciBFYmVuZS4KCgoKCgpPaG5lIFdvcnRlIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKamFqYS4uLiAoSGFwbG8sICA2LiBOb3YgMTk5NSwgMTI6NDY6NDkpOgpHcmFkZToKQmVuZGVpZ2lkIHNhZ3Q6IGxvZyBkaWNoIGxpZWJlciBhdXMsIGRhcyBtYWNodCBzdWVjaHRpZwpCZW5kZWlnaWQgZ3JpbnN0IEdhc3QzIGFuLgoKU293YXMuLi4KCkhhcGxvLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldHp0b3RlIHVuZCBkZXJlbiBBa3Rpb25lbiAoQXJhbnlhLCAgNi4gTm92IDE5OTUsIDE0OjEwOjE0KToKIyEgcm49QmxvY2tidXN0ZXIgcnQ9ODE1NTI0NjA1CkhtbSwgc293YXMgcGFzc2llcnQgbWlyIGluIG1laW5lIFdvaG5oZWlta3VlY2hlIGRhdWVybmQuLi4gRGEgc2l0enQgamUtCm1hbmQgbmljaHQgZWluZ2Vsb2dndCAoc3ByaWNoIGluIGVpbmVtIFBhcmFsbGVsdW5pdmVyc3VtKSBydW0gdW5kIHJ1ZWxwc3QuCgpBcmFueWEKICAgICAgZmluZGV0IGRhcyB1ZWJlcmhhdXB0IG5pY2h0IG1lcmt3dWVyZGlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1lcmxpbiBpc3QgZG9vZiB1bmQgc3Rpbmt0ISAoSGFyZGlsLCAgNi4gTm92IDE5OTUsIDE0OjM2OjExKToKIyEgcm49QXNtb2RpcyBydD04MTU2NDc3NzQKCkhtbW0sIEFzbW9kaXMsCmdlaG9lcnQgZGFzIG5pY2h0IGluIGQuZWJlbmUgPwpLYW5uIGlyZ2VuZGVpbiBNYWdpZXIgZGFzIGJpdHRlIHZlcmxlZ2VuPyA7LSkKCi1IYXJkaWwuIE5OTi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktpbGxlci1SZWhlLi4uIChJc3AsICA2LiBOb3YgMTk5NSwgMTQ6NDA6NDEpOgpOZXVsaWNoIGltIEdsb2NrZW53YWxkLi4uCgpEYXMgUmVoIHNhZ3Q6IFR1IG1pciBuaXgsIElzcCEKQWJlbnRldWVyOl0gS2xhbWl0IGhhdCBnZXJhZGUgZWluIEFiZW50ZXVlciBiZXN0YW5kZW46IFdhbGRiYXVlcm5ob2YKRGFzIFJlaCBzYWd0OiBLaWxsIGxpZWJlciBkZW4gRW1wZXJvciEKCkRpZSBSZWhlIHNpbmQgYXVjaCBuaWNodCBtZWhyIGRhcywgd2FzIHNpZSBtYWwgd2FyZW4uLi4gIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFzbW9kaXMsICA2LiBOb3YgMTk5NSwgMTY6NDU6MDQpOgpbQWxsZ2VtZWluOlN5bGtlXSBpY2ggaGFiIDAgbGViZW5zcHVua3RlCltBbGxnZW1laW46U3lsa2VdIHVuZCBzb24gYmxvZWRlcyB1bnRpZXIga29tbXQgZGF1ZXJuZCByZWluLi4uCltBbGxnZW1laW46U3lsa2VdIGhpbGZlIQpbQWxsZ2VtZWluOlN5bGtlXSBqZXR6dCBnaWJ0IGF1Y2ggbm9jaCBkdXJpbiBlaW4gZ3V0ZXMgdW50aWVyIGFiCltBbGxnZW1laW46U3lsa2UgaGF0IEFuZ3N0Ll0KW1RvZDpdIEVpbiBVbnRpZXIgaGF0IGdlcmFkZSBTeWxrZSB1bWdlYnJhY2h0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE9taSAoQ2F0d2VhemxlLCAgNi4gTm92IDE5OTUsIDE3OjU2OjI1KToKIyEgcm49T2xwcCBydD04MTU0NTM5MzgKSmF1LCBPbHBwLiB2ZXJsZWdlbiBpc3QgaXJyZSBnZWlsIDopCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIGJpbiBzb29vbyBhbGxlaW4uLi4gKFJ1bWF0YSwgIDcuIE5vdiAxOTk1LCAwNTo1ODowMSk6CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgUnVtYXRhLCAgNy4gTm92IDE5OTUsIDA1OjU2OjI2XToKd2VyCgpbR10gUnVtYXRhIGVyd2VpdGVydCBkZW4gSG9yaXpvbnQgLSAyMDo1NDoxNiBQVCAtIFtVU0FdCk1laXN0ZXI/CgpEYXMgaGF0dGUgaWNoIHNjaG9uIGxhbmdlIG5pY2h0IG1laHIhIFZvciBhbGxlbSBvaG5lIHJlYm9vdCwgZGVubgpVcHRpbWU6IDUyIFRhZ2UgMTAgU3R1bmRlbiAyNCBNaW51dGVuIDM2IFNla3VuZGVuCgpSdW1hdGEsIG1hY2h0IGdsZWljaCBkYXMgTGljaHQgYXVzIC4uLiA6LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpncnVlYmVsIChGYW51aWRob2wsICA3LiBOb3YgMTk5NSwgMDk6MzY6MjkpOgpbVG9kOl1FaW5lIEF0b21ib21iZSBoYXQgZ2VyYWRlIENoaXJhYyBnZXRvZXRldC4KW1RvZDpBdG9tYm9tYmVdIEZ1Y2sgQ2hpcmFjIQpmaW5nZXIgY2hpcmFjCkNoaXJhYyBpc3QgbmljaHQgZWluZ2Vsb2dndC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogT3NuYWJydWVjawpadWxldHp0IGF1c2dlbG9nZ3Q6IE1pdCwgIDEuIE5vdiAxOTk1LCAxMToxMDowMSAoNWQgMjI6MjA6MjMpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeXl5eXl5eXl5eXgpWb2xsZXIgTmFtZTogQ2hpcmFjIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIKUmFzc2U6IFp3ZXJnLCAgR2lsZGU6IEFiZW50ZXVyZXIsICBHZXNjaGxlY2h0OiBtYWVubmxpY2ggICBTcGllbGVybGV2ZWw6IDEKU2VpdCBkZW0gMzAuMTEuJzk0IGJlcmVpdHMgNSBtYWwgZ2VzdG9yYmVuCgogICBIbW1tbW1tbW1tbW1tbW1tbW1tbW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGYW51ICAqOl4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYW1wZiBkZXIgR2Vpc3Rlc2tyYWVmdGU/IChWZXJ3aXJydW5nLCAgNy4gTm92IDE5OTUsIDExOjIyOjE5KToKIFBoYW50YXNpZSBzdG9lc3N0IFZlcndpcnJ1bmcgenVydWVjay4KIFZlcndpcnJ1bmcgdmVyc3VjaHQsIGRlbiBBbmdyaWZmIGFienV3ZWhyZW4uCiBQaGFudGFzaWUgcnV0c2NodCBkYWJlaSBsZWljaHQgYXVzLgoKIFZlcndpcnJ1bmcgc3RvZXNzdCBQaGFudGFzaWUgenVydWVjay4KIFBoYW50YXNpZSB2ZXJzdWNodCwgZGVuIEFuZ3JpZmYgYWJ6dXdlaHJlbi4KIFZlcndpcnJ1bmcgYnJpbmd0IFBoYW50YXNpZSBkZXV0bGljaCBhdXMgZGVtIEdsZWljaGdld2ljaHQuCgogVmVyd2lycnVuZyBzdG9lc3N0IFBoYW50YXNpZSB6dXJ1ZWNrLgogUGhhbnRhc2llIHZlcnN1Y2h0LCBkZW4gQW5ncmlmZiBhYnp1d2VocmVuLgogVmVyd2lycnVuZyB0cmlmZnQgcmVjaHQgc2Nod2FjaC4KCiBWZXJ3aXJydW5nIHN0b2Vzc3QgUGhhbnRhc2llIHp1cnVlY2suCiBQaGFudGFzaWUgdmVyc3VjaHQsIGRlbiBBbmdyaWZmIGFienV3ZWhyZW4uCiBWZXJ3aXJydW5nIGJyaW5ndCBQaGFudGFzaWUgZGV1dGxpY2ggYXVzIGRlbSBHbGVpY2hnZXdpY2h0LgoKIFBoYW50YXNpZSBzdG9lc3N0IFZlcndpcnJ1bmcgenVydWVjay4KIFZlcndpcnJ1bmcgdmVyc3VjaHQsIGRlbiBBbmdyaWZmIGFienV3ZWhyZW4uCiBEZXIgU2NobGFnIGdpbmcgaW4gTGVlcmUuCgogVmVyd2lycnVuZyBzdG9lc3N0IFBoYW50YXNpZSB6dXJ1ZWNrLgogUGhhbnRhc2llIHZlcnN1Y2h0LCBkZW4gQW5ncmlmZiBhYnp1d2VocmVuLgogVmVyd2lycnVuZyBsYW5kZXQgZWluZW4gaGVydm9ycmFnZW5kZW4gVHJlZmZlci4KClBoYW50YXNpZSBmYWVsbHQgZXJzY2hvZXBmdCBpbnMgV2Fzc2VyLgoKVi4sIHNpZWdyZWljaCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ID8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKEhhcmRpbCwgIDcuIE5vdiAxOTk1LCAxMjoyOToxNik6CiMhIHJuPU1vcm9uIHJ0PTgxNTY3MTg3MApBZWhtLCBNb3JvbiAtCmZhbHNjaGUgUnVicmlrLiBEYXMgbWl0IGRlbiBQeXJhbWlkZW4gZ2Vob2VydCBuYWNoIGQud3Vlc3RlLCB1bmQgZGFzcyBNZXJsaW4KU2FuZCBpbSBPaHIgaGF0LCB3aXNzZW4gd2lyIGRvY2ggc2Nob24gbGFuZ2UgOi0pCgpIYXJkaWwKTk5OLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthbXBmIGRlciBHZWlzdGVza3JhZWZ0ZT8gKFllbmRpLCAgNy4gTm92IDE5OTUsIDEyOjI5OjU5KToKIyEgcm49VmVyd2lycnVuZyBydD04MTU3Mzk3MzkKCipraWNoZXIqICAgIFdvZnVlciBzbyBlaW4gQmF1bXN0YW1tIGRvY2ggZ3V0IGlzdC4uLgoKRGEga29tbWVuIGVpbmVtIG5vY2ggZWluaWdlIGFuZGVyZSBpbnRlcmVzc2FudGUgRHVlbGxlIGluIGRlbiBTaW5uOgp3aWUgd2FlcmUgZXMgbWl0ICJHdXQgZ2VnZW4gQm9lc2UiLCAiTWFza2UgZ2VnZW4gUm9ja3kiLCAiVGhlbyBnZWdlbgpEZXJSZXN0ZGVyV2VsdCIsICJHbGVpY2hnZXdpY2h0IGdlZ2VuIFVuZ2xlaWNoZ2V3aWNodCIgKFNjaGFuZGUsIHp1IGxhbmcuLi4pCgpVbmQgd2FubiBzaWVodCBtYW4gZW5kbGljaCAiUm9iaW4gZ2VnZW4gTGl0dGxlSm9obiI/IE5pZSwgdmVybXV0bGljaCwgd2VpbApzaWNoIGRlciBhbHRlIEZlaWdsaW5nIGxpZWJlciBhdWYgZGVyIEhvY2hlYmVuZSBkaWUgUGZlZmZlcnNhY2t6d2VpdGllcwp2b3JuaW1tdC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBUb2QgaGVpbHQgYWxsZSBXdW5kZW4gKE1hcnMsICA3LiBOb3YgMTk5NSwgMjE6Mjc6MDEpOgoKCkR1IGdyZWlmc3QgZGVuIFRhdXNlbmRmdWVzc2xlciBtaXQgZGVtIEJsdXRzYXVnZXItU2Nod2VydCBhbi4KRHUgdHJpZmZzdCBkZW4gVGF1c2VuZGZ1ZXNzbGVyIHNlaHIgaGFydC4KRGVyIFRhdXNlbmRmdWVzc2xlciBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW4gVGF1c2VuZGZ1ZXNzbGVyIGphZ3QgRGljaCBuaWNodCBtZWhyLgoKICBNYXJzICAtICBpbW1lciB3aWVkZXIgZXJzdGF1bnQgdWViZXIgZGllIExvZ2lrIGltIE1HIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMb2dpayBsYXNzIG5hY2ggKE1hcml0YSwgIDcuIE5vdiAxOTk1LCAyMjozMjowNik6CgpuaW1tIHNraWVyCgpXYXMgd2lsbHN0IER1IGRlbm4gbWl0IHp3ZWkgUGFhciBTa2llcm4uIFViZXJsYXNzZSBzaWUgZWluZW0gYW5kZXJlbi4KCkR1IHNvbGx0ZXN0IGRpZSBTa2llciwgZGllIER1IGhhc3QsIGplZG9jaCBhbnppZWhlbi4KCj4geiBza2llcgoKRHUgbXVzc3QgZGFzIFBhYXIgU2tpZXIgZXJzdCBuZWhtZW4gIQoKCk1laW4gZnVlbmZ0ZXIgQmVpdHJhY2gKTWFyaXRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaC4uIHdpcmQgWmVpdCBkaWUgUmVjaG51bmcgenUgemFobGVuID06KSAoWnVlcmlsZXUsICA4LiBOb3YgMTk5NSwgMDM6MjQ6NDgpOgogICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgICAgICB8ICAgICgoX19fKSlfX19fX19fX18gICAgICB8CiAgICAgICAgfCAgICBbIG8gbyBdICAgICAgICBcXCAgICAgfAogICAgICAgIHwgICAgIFwgICAvICAgICAgICAgfFxcICAgIHwKICAgICAgICB8ICAgICAoJyAnKXwsLVxfX18vfHwgKiogICB8CiAgICAgICAgfCAgICAgIChVKSB8fCAgICAgIHx8ICAgICAgfAogICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRHUgaGFzdCBub2NoIDE5ODU3IFN0dW5kZW4sIDExIE1pbnV0ZW4gdW5kIDQ2IFNla3VuZGVuIFplaXQsIGJpcyBEdSBEZWluZQpNaXRnbGllZHNnZWJ1ZWhyIGVudHJpY2h0ZW4gbXVzc3QuCkRlciBCdXR0b24ga2FubiBmb2xnZW5kZSBCZWZlaGxlOiB3ZXIgQGNsdWIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdvbHBlciBbZWlufGF1c3w8dGV4dD5dCgpIbW0uLiAgTmVpbiwgaWNoIGdsYXViIGRhcyByZWljaHQgbm9jaCBlaW5lIHdlaWxlID06KSkKCmN1IFp1ZXJpbGV1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3aXJrbGljaD8gKFB0ZXBwaWMsICA4LiBOb3YgMTk5NSwgMDg6MzM6MjEpOgoKW0FsbGdlbWVpbjpGeXRdIHNvLi4gd2llZGVyIHJ1aGUgO18KW1RvZDpdIEVpbmUgU3BoaW54IGhhdCBnZXJhZGUgRnl0IHVtZ2VicmFjaHQuCltBbGxnZW1laW46UHRFUFBpQ10gcm90ZmwgOikKCiwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3aXJrbGljaD8gKEZ5dCwgIDguIE5vdiAxOTk1LCAwODozODoxOSk6CiMhIHJuPVB0ZXBwaWMgcnQ9ODE1ODE2MDAxCkphLCBuYSB2aWVsIHJ1aGlnZXIgd2lyZCdzIG5pY2h0IHdlcmRlbi4uLgpGeXQuCkhtLi4uIGluIFp1a3VuZnQgd2VyZCBpY2ggZGFzIER5bmFtaXRzY2htdWdnZWxuIHdpZWRlciBKYWYgdWViZXJsYXNzZW4sCmRhcyBpcyBuaWNoIHNvIHRldWVyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdGFtbXRpc2NoIGluIEJlcmxpbj8gKEhhcmRpbCwgIDguIE5vdiAxOTk1LCAxMzo1ODowMSk6CiMhIHJuPUV0YWggcnQ9ODE1NzU3Mjk2CltWZXJsZWd0IHZvbiB0cmVmZmVuLCBRdWlsbGlhbiwgIDcuIE5vdiAxOTk1LCAyMDowNTo0NF06CkhtbSwKSGF0dGVuIHdpciBuaWNodCBzY2hvbm1hbCBkaXNrdXRpZXJ0IGRhcyBNdWQgZnVlciBTdGFlZHRlIHVuZCBaZWl0ZW4KaW4gZGVuZW4gU3RhbW10aXNjaGUgc3RhdHRmaW5kZW4gZnVlciBhbGxlIGluZnJhZ2Vrb21tZW5kZSBTcGllbGVyCnp1IHNwZXJyZW4/IFdhciBkYSBuaWNodCBzZWluZXJ6ZWl0IGRhcyBXb3J0IHZvbiBkZW4gU2NobGFmZmllcyB2b24KZGVyIEZIVFc/IE5hamEgLi4uLiBlZ2FsIC0tLT4gU2NobWFybi4KClF1aWxsaWFuIG11c3Mgd29obCBwdWVua3RsaWNoIGdlbnVnIGdld2VzZW4gc2VpbiwgZXIgaGF0IHNvIGVpbmVuCkJlcmxpbmVyIFN0YW1tdGlzY2ggc2Nob25tYWwgZXJsZWJ0IChvYndvaGwgZWluIEF0dGVudGF0IGF1ZiBpaG4KdmVydWVidCB3dXJkZSkKClBTOiBJY2ggaGFiIGtlaW4gQmFja3NwYWNlLCBhbHNvIG5ldCBtZWNrZXJuIDotKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFN0YW1tdGlzY2ggaW4gQmVybGluPyAoSGFyZGlsLCAgOC4gTm92IDE5OTUsIDE0OjAwOjA2KToKIyEgcm49SGFyZGlsIHJ0PTgxNTgzNTQ4MQoKRGVpbiBXdW5zY2ggbmFjaCBWZXJsZWd1bmcgd2FyIG1pciBCZWZlaGwuIDotKQoKSGFyZGlsLgpOTk4gLSB1bmQgd2VubnMgbnVyIGR1cmNocyBWZXJsZWdlbiBpc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpad2VpdGllPyAoQXJhbnlhLCAgOC4gTm92IDE5OTUsIDE1OjQ5OjQ4KToKR3JpbW1ib3JuIHJ1ZnQ6IEVzIHdpcmQgdm9sbCBoaWVyISBLb2VubnQgaWhyIGV1cmUgWndlaXRpZXMgYXVzbG9nZ2Vlbiwgd2VubgpHcmltbWJvcm4gcnVmdDogaWhyIHNpZSBuaWNodCBicmF1Y2h0Pwo+SHVlcGZlciBnZWh0IGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgoKQWNoLiBIdWVwZmVyLCBEdSBhdWNoPyBXZXIgaXN0IERlaW4gRXJzdGllPwoKQXJhbnlhCiAgICAgIE5OTgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFp3ZWl0aWU/IChBcmFueWEsICA4LiBOb3YgMTk5NSwgMTU6NTM6MjApOgojISBybj1BcmFueWEgcnQ9ODE1ODQyMTg4Ck9vcHMsIEZlaGxlciEgQ2F0d2VhemxlIGhhdCBkYXMgZ2VydWZlbiwgbmljaHQgR3JpbW1ib3JuLiBUc2NoYSEgRGFzIGlzdApIYW5kYXJiZWl0LCBkYSBnaWJ0J3Mgbm9jaCBGZWhsZXIhCkFyYW55YQogICAgIGxvZ2d0IG5pY2h0IG1pdC4KTk5OCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBpbSBJbnRlcm5ldC4uLiAoWWVuZGksICA4LiBOb3YgMTk5NSwgMjE6MTU6NTcpOgoKClZpZGksIHZpY2ksIHZlbmksIFZFTkksIGFoaGgsIG9vb29oaGgsIHV1bW1tbW0sIHZlbmkuIEFoaGguCgoqa2ljaGVyKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCip0cm9lc3RlIFJ5bmUqIChNaW5kb2xsdWluLCAgOC4gTm92IDE5OTUsIDIxOjQzOjA3KToKW1RvZDpdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBSeW5lIHVtZ2VicmFjaHQuClJ5bmUgaXN0IGVpbmdlbG9nZ3QsCnVuZCB6d2FyIHZvbjogTXVlbnN0ZXIuClZvbGxlciBOYW1lOiBSeW5lIC0gU0NITkFMTEVOIFNJRSBTSUNIIEZFU1QgQU4hISEKSG9wcGxhLCBlaW4gR2Vpc3QhClJhc3NlOiBad2VyZywgIEdpbGRlOiBLYXJhdGUsICBHZXNjaGxlY2h0OiBtYWVubmxpY2ggICBTcGllbGVybGV2ZWw6IDM2LApTZWhlcgpWZXJoZWlyYXRldCBtaXQ6IEVwcwpTZWl0IGRlbSAzMC4xMS4nOTQgYmVyZWl0cyAxMCBtYWwgZ2VzdG9yYmVuClByb2pla3Q6IFBfTGFzdGtpbGxlciBbRWluIEh5ZHJha29wZl0gLyAxMS43MjMgbWlvIGVwcyAtIFIKCgogICBOYSBqYSwgZXIgc2NoZWludCBqYSBzZWluZSBFaGVmcmF1IGdyYWRlIG5pY2h0IHNlaHIgZ2x1ZWNrbGljaCB6dQogICBtYWNoZW4sIHNvIHdpZSBzaWUgaWhtIG1vbWVudGFuIGRhdWVybiBmb3J0bGFldWZ0LgoKICAgICAgICAgTWluZG9sbHVpbiAtIGtyYXR6dCBzaWNoIG5hY2hkZW5rbGljaCBhbiBNaW5hcyBUaXJpdGgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTXVwZmVsLCAgOC4gTm92IDE5OTUsIDIyOjMzOjE1KToKJCBbQWxsZ2VtZWluOkZhbnVpZGhvbF0gSkVNQU5EIFNBR1Q6IEdBTlogU0NIT0VOIERVTktFTCBISUVSCltUb2Q6XSBFaW5lIEh5ZHJhIGhhdCBnZXJhZGUgRmFudWlkaG9sIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBIeWRyYV0gaHNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzCkVpbmUgQmFjaG55bXBoZSBraWNoZXJ0LgoKcGFzc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChGYW51aWRob2wsICA4LiBOb3YgMTk5NSwgMjM6MTA6MjcpOgojISBybj1NdXBmZWwgcnQ9ODE1ODY2Mzk1CjotKSBOaXJnZW5kcyBpc3Qgc3RlcmJlbiBzbyBzY2hvZW4uIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmFqYSwgYW5ubyBMZWlwemlzY2gvRWludW5kbGVpcHppc2NoIChGYW51aWRob2wsICA4LiBOb3YgMTk5NSwgMjM6Mzk6MTApOgogICAgICAgICAgICAgICAgIEh1aHUgS2lubmluZ3MKCkdyYWRlIGJlaW0gQXVmcmFldW1lbiBlaW5pZ2VyIGZpbGVzIGF1ZiBtZWluZW0gYWNjb3VudCBoYWIgaWNoIGVpbgphbHRlcyBsb2cgZW50ZGVja3QsIGF1cyBkZXIgQW5mYW5nc3plaXQgdm9uIE1vcmdlbkdyYXVlbiwgZGFtYWxzLAphbHMgZGVyIEJhdWVybmhvZiB2b24gV2FsZGVtYXIgdW5kIFRoZXJlc2Egbm9jaCBkb3J0IHdhciB3byBqZXR6dApkZXIgR2xvY2tlbndhbGQgaXN0LCBhbHMgZXMgU25hcmtlbiwgZGVuIEdsb2NrZW53YWxkIHVuZCB2aWVsZXMKYW5kZXJlIG5vY2ggbmljaHQgZ2FiIHVuZCBzb2dhciBCb3NjaGFudGUgKGVpbmUgSW5zZWwpIG5vY2ggdWViZXIKZGVyIFdhc3Nlcm9iZXJmbGFlY2hlIGxhZy4KCgpEdSB0cml0dHN0IEt1aC4KPiBQaWxncmltIHNhZ3Q6IGJlaSBtaXIgaGF0cyBkYW1hbHMgMm1hbCBnZWtsYXBwdC4uLmRhZnVlciBoYWJ0IGlociBhbmRlcmUKRmFzYm8gdmVyc3VjaHQsIGRpZSBLdWggenUgbWVsa2VuLCBpc3QgYWJlciB6dSB1bmdlc2NoaWNrdC4KRmFzYm8gc2FndDogdG9ldGUgd2lyIHNpZSA6KQpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCj4gUGlsZ3JpbSBzYWd0OiBzY2hvbiBmaXNjaGUgZ2VmYW5nZW4gPz8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEKRHUgc2Fnc3Q6IG5laW4KRHUgc2Fnc3Q6IGljaCB3YXIgYmVzdGltbXQgbmljaHQgZ2VmcmFndAogLyogRGVubiBpY2ggd3Vzc3RlIGphIGdhciBuaWNodCB3byBtYW4gRmlzY2hlIGZhbmdlbiBrYW5uIDopICovCj4gRmFzYm8gc2FndDogbGF1YiB1bnRlcnN1Y2h0ID8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEKRHUgZmFlbmdzdCBhbiB6dSBkZW5rZW4uCktsZWluZSBSYXVjaHdvZWxrY2hlbiBzdGVpZ2VuIGF1Zi4uLgo+IEZhc2JvIHNhZ3Q6IGphCkR1IHNhZ3N0OiBpY2ggZ2xhdWJlLCB2b24gZXVjaCByZWRldCBrZWluZXIgbWl0IG1pciwgaWNoIHZlcnN0ZWgKRHUgc2Fnc3Q6IG5hZW1saWNoIG5peCA6KSkKRHUgd2lua3N0Lgo+IEZhc2JvIHNhZ3Q6IHN0b3BwcApEdSBzYWdzdDogamEgPwpQaWxncmltIHNhZ3Q6IGhvZXIgenUgdW5kIGxlcm5lID8KUGlsZ3JpbSBzYWd0OiBiZWltIHp0IHp1bSAybWFsIHRhdWNoZW4uLi5kYSBpc3Qgbm9jaCBlaW4gc2NobHVlc3NlbApEdSBzYWdzdDogenQgPwo+IFBpbGdyaW0gc2FndDogemF1YmVydHJhbmsKRHUgc2Fnc3Q6IGFoClBpbGdyaW0gc2FndDogd2llIGlzdCBkZWluIHN0YXR1cyBjYQpEdSBzYWdzdDogNSA1IDggOApGYXNibyBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KRHUgc2Fnc3Q6IHdlbm4gZHUgZGFzIG1laW5zdApEdSBzYWdzdDogbGV2ZWwgMTQKPiBzYwpEdSBoYXN0IDEwMDA2NSBFcmZhaHJ1bmdzcHVua3RlLCAxMCBBYmVudGV1ZXJwdW5rdGUsCjEwNiBMZWJlbnNwdW5rdGUoMTA2KSB1bmQgODIgTWFnaWVwdW5rdGUoODIpCkR1IGJpc3QgQ2FyYWRocmFzIGRlciBEcnVpZGUuCkRlaW5lIEF0dHJpYnV0ZSBzZWhlbiBzbyBhdXM6CkludGVsbGlnZW56OiA1ICBLcmFmdDogNSAgICAgICAgR2VzY2hpY2tsaWNoa2VpdDogOCAgICAgQXVzZGF1ZXI6IDgKVm9yc2ljaHRzLU1vZHVzICgzMCkKQWx0ZXI6ICAxIFRhZ2UgOCBTdHVuZGVuIDM4IE1pbnV0ZW4gMzYgU2VrdW5kZW4uCkR1IHNhZ3N0OiBhYmVyIGljaCBiaW4gamEgYXVjaCBlcnN0IDMyIGggYWx0CiAvKiBuYWNoZGVtIGljaCBkYSBzY2hvbiBlaW4gaGFsYmVzIEphaHIgYWxzIENoYXJha3RlciBleGlzdGllcnRlICovCkZhc2JvIHNhZ3Q6IGFybWVzIGtsZWluZXMgY2FyYWJhYnkKRHUgc2Fnc3Q6IGRhcyBpcyBkb2NoIG5vY2gganVuZywgb2RlciA/ClBpbGdyaW0gc2FndDogZGVyIHRpcHAgaXN0IGZ1ZXIgZGljaCBjYS4KRHUgc2Fnc3Q6IGF1IGphCkR1IGh1ZXBmc3QgdW0gUGlsZ3JpbSBoZXJ1bS4KUGlsZ3JpbSBzYWd0OiBhYmVyIGRpZSBvcmtzIHNpbmQgbmljaHQgdm9uIHBhcHBlIGltIGVpc3BhbGFzdCggc3R1ZWNrKQpGYXNibyBzYWd0OiBzdGltbXQKIC8qIERhbm4gaW4gZGVyIEdpbGRlICovCkxpc3RlIGRlciBBYmVudGV1ZXI6CiAxLiBTY2hyYXQga2FubiBuaWNodCBlaW5zY2hsYWZlbiAgKDEwIEFQKSAgW2dlbG9lc3RdCiAyLiBGaW5kZSBkaWUgRmVlIEFtYXJ5bGxpcyAgICAgICAgKDIwIEFQKQogMy4gSGlsYmVydHMgVHVybSAgICAgICAgICAgICAgICAgICgzNSBBUCkKIDQuIE9rdG9wdXMtUmlmZiAgICAgICAgICAgICAgICAgICAoMzUgQVApCiA1LiBXYWxkYmF1ZXJuaG9mICAgICAgICAgICAgICAgICAgKDIwIEFQKQogNi4gTWFlcmNoZW4gICAgICAgICAgICAgICAgICAgICAgICgyNSBBUCkKIDcuIFphY2hhcmlhcyBFaXNwYWxhc3QgICAgICAgICAgICAoMjAgQVApCiA4LiBOaWJlbHVuZ2VuICAgICAgICAgICAgICAgICAgICAgKDYwIEFQKQogOS4gVGl0aXd1ICAgICAgICAgICAgICAgICAgICAgICAgICg3MCBBUCkKMTAuIEJlZnJlaWUgZGVuIEZyaWVkaG9mICAgICAgICAgICAoODUgQVApCjExLiBGaW5kZSBkYXMgZ2VzdG9obGVuZSBGcmFjaHRndXQgKDkwIEFQKQoKCiAgICAgQ2FyYWRocmFzIC0gamFqYSwgc28gd2FyIGRhcyBpbSBNYWkvSnVuaSA5MwoKCgoKCgoKCgoKCgoKCgoKCgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSmFqYSwgYW5ubyBMZWlwemlzY2gvRWludW5kbGVpcHppc2NoIChNaW5kb2xsdWluLCAgOC4gTm92IDE5OTUsIDIzOjQzOjMzKToKIyEgcm49RmFudWlkaG9sIHJ0PTgxNTg3MDM1MApVcHBzLCBkYXMgbWl0IGRlciBFUC1EaWZmZXJlbnogdmVyZ2Vzc3QgOikgd2FyIG1laW5lIGpldHppZ2UgQW56ZWlnZSwKZGllIGJlaW0gcXVvdGVuIG1pdCByZWlua2FtLiBVbmQgZGllIHZpZWxlbiByZXR1cm5zIGFtIEVuZGUuLi4gamFqYSwKZGVyIGd1dGUgZW1hY3MuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG1hcnJuIGhhbHQuIChGeXQsICA5LiBOb3YgMTk5NSwgMDE6MjY6NDIpOgpBbHNvIGljaCB3ZWlzcywgbmljaHQsIHdvIGVzIGhpbmdlaG9lcnQ6Clppc2NoaGhoLi4uLi4KWmlzY2hoaGguLi4uLgpaaXNjaGhoaC4uLi4uClppc2NoaGhoLi4uLi4KWmlzY2hoaGguLi4uLgpaaXNjaGhoaC4uLi4uClppc2NoaGhoLi4uLi4KWmlzY2hoaGguLi4uLgpaaXNjaGhoaC4uLi4uClppc2NoaGhoLi4uLi4KOgpOYWNoIHBvbGl6ZWkuYW56ZWlnZW4gZXZ0bCwgd2VpbCBCb2luZ3MgRHluYW1pdCBhbnNjaGVpbmVuZApuaWNodCBnYW56IGRhcyBtYWNodCwgd2FzIGVzIHNvbGwsIG9kZXIgd2VpbCBlcyBpbSBQdW1hcwpMdXBpbmVudGFsIG5pY2h0IGZ1bmt0aW9uaWVydCwgb2RlciBpbiBrbGluaWsuZWlud2Vpc3VuZ2VuLCB3ZWlsCmljaCBqZXR6dCB6d2VpIFRhZ2UgbGFuZyBkYW1pdCBiZXNjaGFlZnRpZ3Qgd2FyLApuaWNodGZ1bmt0aW9uaWVyZW5kZXMgRHluYW1pdCBpbiBkaWUgTmFlaGUgZGVyIEh5ZHJhIHp1IHNjaGxlcHBlbgpvZGVyIGluIHNlaGVyLnVybGF1Yiwgd2VpbCBpY2ggaW0gTW9tZW50IGtlaW5lIHJpY2h0aWdlIEx1c3QgaGFiLAp1ZWJlcmhhdXB0IHdhcyBoaWVyIHp1IG1hY2hlbiAoaG0uLi4gd3VlcmRlIGVpbmVyIGdld2lzc2VuCkFyYmVpdCB3b2hsIGd1dCB0dW4pLCBvZGVyIGluIGFsdC5mbGFtZS5wdW1hIHdlaWwuLi4gYWNoIHdhcyBzb2xscy4uLgo6CkZ1ZXIgSW50ZXJlc3NlbnRlbiB2aWVsbGVpY2h0IG5vY2ggJ24gYXVzenVnIGF1cyBkZW0gTG9nOgo6CkZ5dCB6dWVuZGV0IGVpbmUgWnVlbmRzY2hudXIgYW4uCkZ5dCB6dWVuZGV0IGVpbmUgWnVlbmRzY2hudXIgYW4uCkZ5dCB6dWVuZGV0IGVpbmUgWnVlbmRzY2hudXIgYW4uCkZ5dCB6dWVuZGV0IGVpbmUgWnVlbmRzY2hudXIgYW4uCkZ5dCB6dWVuZGV0IGVpbmUgWnVlbmRzY2hudXIgYW4uCiAgTWluZG9sbHVpbiBncmVpZnQgZGVuIEh5ZHJha29wZiBtaXQgZWluZW0gZ2VsdW5nZW5lbiBDaG9rdS16dWtpIGFuLgouICAgIDUgICAgKE1pbmRvbGx1aW4pCiAgQW1hem9yYSBncmVpZnQgZGVuIEh5ZHJha29wZiBtaXQgZWluZW0gU2Nod2VydCBhbi4KLiAgICA1ICAgIChBbWF6b3JhKQogIERlciBIeWRyYWtvcGYgZ3JlaWZ0IE1pbmRvbGx1aW4gbWl0IHNlaW5lbSBmdWVyY2h0ZXJsaWNoZW4gR2ViaXNzICBhbi4KICBNaW5kb2xsdWluIHdlaHJ0IGVpbmVzIEh5ZHJha29wZnMgQW5ncmlmZiBtaXQgZWluZW0gVWNoaS11ZGUtdWtlIGFiLgouICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gOCAgICAoTWluZG9sbHVpbikKICBEZXIgSHlkcmFrb3BmIGdyZWlmdCBNaW5kb2xsdWluIG1pdCBzZWluZW0gZnVlcmNodGVybGljaGVuIEdlYmlzcyAgYW4uCiAgTWluZG9sbHVpbiB2ZXJzdWNodCBlaW5lcyBIeWRyYWtvcGZzIEFuZ3JpZmYgbWl0IGVpbmVtIFVjaGktdWRlLXVrZQphYnp1d2VocmVuLgouICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gOCAgICAoTWluZG9sbHVpbikKWmlzY2hoaGguLi4uLgpaaXNjaGhoaC4uLi4uClppc2NoaGhoLi4uLi4KWmlzY2hoaGguLi4uLgpaaXNjaGhoaC4uLi4uClppc2NoaGhoLi4uLi4KWmlzY2hoaGguLi4uLgpaaXNjaGhoaC4uLi4uClppc2NoaGhoLi4uLi4KWmlzY2hoaGguLi4uLgpaaXNjaGhoaC4uLi4uCkFtYXpvcmEgd2FuZGVsdCBhcnJvZ2FudCBhdXMgZGVtIFJhdW0gbmFjaCBTdWVkd2VzdGVuLgpNaW5kb2xsdWluIGdlaHQgbmFjaCBTdWVkd2VzdGVuLgpaaXNjaGhoaC4uLi4uCjouLi4KWmlzY2hoaGguLi4uLgpIeWRyYWtpbGxlciBnZWh0IG5hY2ggV2VzdGVuLgpGeXQgZ2VodCBuYWNoIFN1ZWR3ZXN0ZW4uClppc2NoaGhoLi4uLi4KOi4uLgpLQVdVTU1NTU1NTU1NTU1NTU1NCkRhcyBEeW5hbWl0IGV4cGxvZGllcnQgZGlyZWt0IG5lYmVuIERpci4KS0FXVU1NTU1NTU1NTU1NTU1NTQpEYXMgRHluYW1pdCBleHBsb2RpZXJ0IGRpcmVrdCBuZWJlbiBEaXIuCktBV1VNTU1NTU1NTU1NTU1NTU0KRGFzIER5bmFtaXQgZXhwbG9kaWVydCBkaXJla3QgbmViZW4gRGlyLgpLQVdVTU1NTU1NTU1NTU1NTU1NCkRhcyBEeW5hbWl0IGV4cGxvZGllcnQgZGlyZWt0IG5lYmVuIERpci4KS0FXVU1NTU1NTU1NTU1NTU1NTQpEYXMgRHluYW1pdCBleHBsb2RpZXJ0IGRpcmVrdCBuZWJlbiBEaXIuCktBV1VNTU1NTU1NTU1NTU1NTU0KRGFzIER5bmFtaXQgZXhwbG9kaWVydCBkaXJla3QgbmViZW4gRGlyLgpLQVdVTU1NTU1NTU1NTU1NTU1NCkRhcyBEeW5hbWl0IGV4cGxvZGllcnQgZGlyZWt0IG5lYmVuIERpci4KS0FXVU1NTU1NTU1NTU1NTU1NTQpEYXMgRHluYW1pdCBleHBsb2RpZXJ0IGRpcmVrdCBuZWJlbiBEaXIuCktBV1VNTU1NTU1NTU1NTU1NTU0KRGFzIER5bmFtaXQgZXhwbG9kaWVydCBkaXJla3QgbmViZW4gRGlyLgo+IHNjaGF1CkRhcyBEeW5hbWl0IGV4cGxvZGllcnQgZGlyZWt0IG5lYmVuIERpci4KS0FXVU1NTU1NTU1NTU1NTU1NTQpEYXMgRHluYW1pdCBleHBsb2RpZXJ0IGRpcmVrdCBuZWJlbiBEaXIuCltCZWlsZWlkOkFtYXpvcmFdIGFlZ2wKRHUgc3RlaHN0IGFuIGVpbmVtIHZvbiBXZXN0ZW4gbmFjaCBPc3RlbiB2ZXJsYXVmZW5kZW4gQmFjaCwgZGVyIHNpY2ggaGllcgpiZWRhZWNodGlnIGR1cmNoIGRlbiBkdW5rbGVuIFdhbGQgendhZW5ndC4gQW4gZGllc2VyIFN0ZWxsZSBpc3QgZXIgZXR3YXMKYnJlaXRlciB1bmQgZWluaWdlIGdyb3NzZSBTdGVpbmUgbHVnZW4gYXVzIGRlbSBXYXNzZXIgaGVydm9yLCB1bSBEaXIgZWluZQpzaWNoZXJlIE1vZWdsaWNoa2VpdCB6dW0gVWViZXJzZXR6ZW4genUgZ2ViZW4uIEFuIGVpbmlnZW4gU3RlbGxlbiBpc3QgZGFzCkJsYWV0dGVyZGFjaCBkdXJjaGxhZXNzaWcgdW5kIHZlcmVpbnplbHRlIFNvbm5lbnN0cmFobGVuIGJhaG5lbiBzaWNoIGhpZXIKZWluZW4KV2VnIHp1bSBXYWxkYm9kZW4uIEFuIGRpZXNlbiBTb25uZW5mbGVja2VuIHN0ZWhlbiB2aWVsZSBidW50ZSBCbHVtZW4gZW5nCmJlaWVpbmFuZGVyIHVuZCByZWNrZW4gc2ljaCBkZW0gbGViZW5zc3BlbmRlbmRlbiBMaWNodCBlbnRnZWdlbi4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCB3ZXN0ZW4sIHN1ZWR3ZXN0ZW4gdW5kIG5vcmRlbi4KRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuCkVpbmUgVG9ubmUgRHluYW1pdC4KRWluZSBUb25uZSBEeW5hbWl0LgpFaW5lIFRvbm5lIER5bmFtaXQuCkVpbmUgVG9ubmUgRHluYW1pdC4KRWluZSBUb25uZSBEeW5hbWl0LgpFaW5lIFRvbm5lIER5bmFtaXQuCkVpbmUgVG9ubmUgRHluYW1pdC4KRWluZSBUb25uZSBEeW5hbWl0LgpFaW5lIFRvbm5lIER5bmFtaXQuCkVpbmUgVG9ubmUgRHluYW1pdC4KRWluZSBUb25uZSBEeW5hbWl0LgpFaW5lIEJhY2hueW1waGUuCkR1IHN0ZWhzdCBhbiBlaW5lbSB2b24gV2VzdGVuIG5hY2ggT3N0ZW4gdmVybGF1ZmVuZGVuIEJhY2gsIGRlciBzaWNoIGhpZXIKOgoqKioqKiogIE9oamEuLi4gZWJlbiBkYXMgRHluYW1pdCwgd2FzIGViZW4gbmViZW4gbWlyIGhvY2hnZWdhbmdlbiBpc3QsCioqKioqKiAgc3RlaHQgaGllciBub2NoIHJ1bS4uLgo6Ckh5ZHJha29wZiAtLSBzZWluZW0gZnVlcmNodGVybGljaGVuIEdlYmlzcwooLSkgICAgICAgICAgIFNvdG8tdWRlLXVrZQouICAgICAgICAgICAgLSA1Ckh5ZHJha29wZiAtLSBzZWluZW0gZnVlcmNodGVybGljaGVuIEdlYmlzcwooLSkgICAgICAgICAgIFVjaGktdWRlLXVrZQouICAgICAgICAgICAgLSAxMwooLSkgQ2hva3UtenVraQpIeWRyYWtvcGYgLS0gc2VpbmVtIGZ1ZXJjaHRlcmxpY2hlbiBHZWJpc3MKKC0pICAgICAgICAgICBTb3RvLXVkZS11a2UKLiAgICAgICAgICAgIC0gMTMKSHlkcmFrb3BmIC0tIHNlaW5lbSBmdWVyY2h0ZXJsaWNoZW4gR2ViaXNzCigtKSAgICAgICAgICAgVWNoaS11ZGUtdWtlCi4gICAgICAgICAgICAtIDIwCltUb2Q6XSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgS3RrIHVtZ2VicmFjaHQuCltUb2Q6RWluIEh5ZHJha29wZl0gaHNzc3NzcwpEZWluIEtvZXJwZXIgZ2Vob3JjaHQgRGlyIG5pY2h0ICEKPgpWZXJkYW1tdCwgdmVyZGFtbXQsIHNjaG9uIHdpZWRlciBnZXN0b3JiZW4uIER1IHNjaGxhZWdzdCB2ZXJ3aXJydCBkaWUgQXVnZW4KYXVmLgpEZWluIEtvZXJwZXIgZ2Vob3JjaHQgRGlyIG5pY2h0ICEKPiBbQWxsZ2VtZWluOkh5ZHJha2lsbGVyXSBnbGVpY2gga29tbXQgZXMKIERpY2ggZXJ3YXJ0ZXQgZWluIHNlbHRzYW1lciBBbmJsaWNrLiBXb2hpbiBoYXQgRGljaCBkZW5uIGRlciBUb2QgamV0enQKc2Nob24Kd2llZGVyIHZlcnNjaGxhZ2VuLgouLi4gdXN3Li4uIHdpZWRlcm1hbCBiZWkgTGFycy4KOgpJc3QgZGFzIG5vcm1hbD8KOgpJc3QgZXMgbm9ybWFsLCBkYXNzIE1vbnN0ZXIsIGRpZSBhdWNoIHZvbiBBYmVudGV1cmVybiBnZWtpbGx0IHdlcmRlbgpzb2xsZW4sIGVpbmVuIEJvZHkgdm9uIDQwMCBoYWJlbj8gV2VsY2hlcyBTY2h3ZXJ0IGdlaHQgZGEgZHVyY2g/CjoKRnl0LCB2ZXJzdGVodCBoaWVyIGVpbmlnZXMgbmljaHQgc28gcmljaHRpZy4uLiB2aWVsbGVpY2h0IGRvY2gKbmFjaCBhbHRlcnNoZWltLmF1Zm5haG1lYW50cmFnPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEphamEsIGFubm8gTGVpcHppc2NoL0VpbnVuZGxlaXB6aXNjaCAoRnl0LCAgOS4gTm92IDE5OTUsIDAxOjMwOjI0KToKIyEgcm49RmFudWlkaG9sIHJ0PTgxNTg3MDM1MApIbSwgaWNoIHdvbGx0ZSBkZXJsZWkgTG9ncyB1bmQgYW5kZXJlIEluZm9ybWF0aW9uZW4gbWFsIHNhbW1lbG4sCnVtIHNvICduZSBBcnQgR2VzY2hpY2h0ZSBkZXMgTUcgYXVzIGRlciBTaWNodCBkZXIgU3BpZWxlcgp6dXNhbW1lbnp1c3RlbGxlbiAodW5kIG5lYmVuYmVpIGVpbiBiaXNzY2hlbiBMaWNodCBpbiBkaWUKR2VzY2hpY2h0ZSBtZWluZXIgZWlnZW5lbiBFbnRzdGVodW5nIHp1IGJyaW5nZW4gOikgKQo6CkZ5dAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKJ21tJywgJ2JiJywgJywsJyAoQ3JlYXRpdmUsICA5LiBOb3YgMTk5NSwgMDk6MDg6NDgpOgoKR2lwcyBkZW5uIGluIGRlciBTcGllbGVyLVNoZWxsIGF1Y2ggc2Nob24gU3RhbmRhcmQtbWFlc3NpZyBkaWUgYWxpczoKYWxpIG1tIG5uCmFsaSBiYiBubgphbGkgLCwgbm4KCi1DcmVhLSBzY2h1c3NlbHQgbWFuY2htYWwgZWluIHdlbmlnIHJ1bSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICdtbScsICdiYicsICcsLCcgKEhpZ2hsYW5kZXIsICA5LiBOb3YgMTk5NSwgMDk6MTQ6MDcpOgojISBybj1DcmVhdGl2ZSBydD04MTU5MDQ1MjgKU29sbHRlIG1hbiBzaWNoIGRpcmVrdCB1ZWJlcmxlZ2VuLCB3ZWlsIHp1bWluZGVzdCBiYiB1bmQgbW0gZ2lidCdzIGJlaQptaXIgYXVjaCA6PgoKICBIclQsIGF1Y2ggYWIgdW5kIGFuIG5pY2h0IHNvIHRyZWZmc2ljaGVyIChpbW1lciBkaWVzZSBmdWVyIEZpbmdlcgpnZWRhY2h0ZW4KICAgICAgIFRhc3RhdHVyZW4gLSB3ZXIgZXJmaW5kZXQgZWluZSBLcmFsbGF0dXIgW2NsYXdib2FyZF0/KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyISAoWmFyZG96LCAgOS4gTm92IDE5OTUsIDA5OjM1OjUyKToKRWlzYmFlcmxpIENyZWF0aXZlIHRlaWx0IERpciBtaXQ6IHNjaHJlaWIgbm9jaCB3YXMgaW4gZGllIE1QQSwgbWlyIGlzIGZhZCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQydNT04sIGdldCBpdCBnb2luJyEgKENyZWF0aXZlLCAgOS4gTm92IDE5OTUsIDA5OjM2OjMyKToKCldldHRiZXdlcmIgZGVyIHNjaG9lbnN0ZW4gQWxpJ3MgaXN0IGF1c2dlc2NocmllYmVuLCBsb3MgamV0eiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDJ01PTiwgZ2V0IGl0IGdvaW4nISAoQ3JlYXRpdmUsICA5LiBOb3YgMTk5NSwgMDk6NDA6NDApOgojISBybj1DcmVhdGl2ZSBydD04MTU5MDYxOTIKCk5vY2ggd2FzIHZlcmdlc3Nlbi4uLgpadXIgRXJrbGFlcnVuZzogU2NoYXV0IG1hbCBFdXJlIEFsaSdzIGR1cmNoLCB3YXMgbmV0dCBrbGluZ3Qga2FubiBtYW4gamEKcG9zdGVuIDspCi1DcmVhLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsaSAoWmFyZG96LCAgOS4gTm92IDE5OTUsIDA5OjQxOjExKToKSWNoIGhhYiBudXIgc29sY2hlIEFsaXM6CndhaXQgPSB4bHBjIGludCBpO29iamVjdCAqdTtzdHJpbmcgKndhaXQ7dT11c2VycygpO2ZvcihpPXNpemVvZih1KS0xO2k+PTA7CmktLSl7IHdhaXQgPSB1e2ldLT5RdWVyeVByb3AoIFBfV0FJVEZPUik7aWYoIXBvaW50ZXJwKHdhaXQpKWNvbnRpbnVlOwppZihtZW1iZXIod2FpdCwgY2FwaXRhbGl6ZSggIiQxIikpPT0gLTEpIGNvbnRpbnVlO3dyaXRlKCBjYXBpdGFsaXplKApnZXR1aWQodVtpXSkgKyIsICIpO30KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbGkgKEVuZ3l3dWNrLCAgOS4gTm92IDE5OTUsIDA5OjQzOjI1KToKIyEgcm49WmFyZG96IHJ0PTgxNTkwNjQ3MQpEYWZ1ZXIgYnJhdWNoc3QgRHUgZWluIEFsaT8gRGFzIGhhdCBtYW4gZG9jaCBnYW56IHNjaG5lbGwgc28gZ2V0aXBwdC4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFsaSAoU2lsdmFuYSwgIDkuIE5vdiAxOTk1LCAwOTo0NDoxOCk6CiMhIHJuPVphcmRveiBydD04MTU5MDY0NzEKV2llIHdhZXJzIGhpZXJtaXQ6CiBmd3J1ZiAgPSB4bHBjIGludCBpOyBvYmplY3QKKnVzcjt1c3I9dXNlcnMoKTtmb3IoaT1zaXplb2YodXNyKS0xO2k+PTA7aS0tKWlmKHVzcltpXS0+UXVlcnlQcm9wKFBfRldfVU5ERVJTVApBTkQpKXRlbGxfb2JqZWN0KHVzcltpXSxicmVha19zdHJpbmcoIiQqIiw3OCwiU2lsdmFuYSBydWZ0OiAiLDApKTtlbHNlCnRlbGxfb2JqZWN0KHVzcltpXSxicmVha19zdHJpbmcoKCIvZC9mZXJud2VzdC9zdGQvZndfbGFuZyItPm1ha2Vfc2VudGVuY2UoKSksNzgKLCJTaWx2YW5hIHJ1ZnQ6ICIsMCkpOwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbGkgKFphcmRveiwgIDkuIE5vdiAxOTk1LCAwOTo0NToxMyk6CiMhIHJuPVNpbHZhbmEgcnQ9ODE1OTA2NjU4CklnaXR0LCBkaWVzZSBGZXJud2VzdGxlci4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbGlzIChDcmVhdGl2ZSwgIDkuIE5vdiAxOTk1LCAwOTo0NTo0Mik6CgpuZXR0IGZpbmQgaWNoLi4uCmFsaSAzYnNzIGFsaSAzIHp1ZWNrZSBibHV0c2F1Z2Vyc2Nod2VydAphbGkgYmIgYmVzdGVpZ2UgYm9vdCAoZGFtaXQgZmFlbGx0IGFsaSBiYiBubiB3ZWcgOykgKQphbGkgbXVoIC1hOm11aHQKYWxpIGRkIGRyZWhlIGRhZXVtY2hlbgphbGkgZmFudiBmcmFnIGFubmUgbmFjaCB2aWV6IChkYXMgd2FyZW4gbm9jaCB6ZWl0ZW4gOykgKQouLi4KCi1DcmVhLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5vY2ggbmVuIGFsaSAoWmFyZG96LCAgOS4gTm92IDE5OTUsIDA5OjQ4OjExKToKSW1tZXIgd2llZGVyIG51ZXR6bGljaCBpc3QgYXVjaCBmb2xnZW5kZXMgQWxpOgpnZXdpc3NlbiA9IHhscGMgb2JqZWN0IG9iOyBvYj1wcmVzZW50KCJnZXdpc3NlbiIsIHRoaXNfcGxheWVyKCkpOwpkZXN0cnVjdChwcmVzZW50KCAiZ2V3aXNzZW4iLCBvYikpO2Rlc3RydWN0KG9iKTsKClNvbGx0ZSBqZWRlciBXb2xwaWUtRnJldW5kIChoZSBoZSkgaGFiZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBub2NoIG5lbiBhbGkgKEJlbmRlaWdpZCwgIDkuIE5vdiAxOTk1LCAwOTo1MDoxMSk6CiMhIHJuPVphcmRveiBydD04MTU5MDY4OTEKOi0pIE1lcmNpIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcGFzc3QgbmV0IGdhbnosIGFiZXI6IDopIChDcmVhdGl2ZSwgIDkuIE5vdiAxOTk1LCAwOTo1MzozMSk6CgpNaXIgZmFsbHQgZGEgbm9jaCBlaW4gc2Nob2VuZXIgVHJpZ2dlciBlaW4uLi4KLT4gL2RlZiAtcDEgLW1yZWdleHAgLXQna3VzY2hlbHQgc2ljaCBhbiBEaWNoJyA9IHVtYXJtZQokW3RvbG93ZXIoc3Vic3RyKCUxLHN0cmNociglMSwnPicpKzEsc3RybGVuKCUxKSkpXQoKLUNyZWEtCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWxpYXMgKExpLCAgOS4gTm92IDE5OTUsIDEwOjA0OjMxKToKSWNoIGhhYmUgbnVyIHNjaG9lbmUgYWxpczoKIHp6ICAgICA9IGVtb3RlIGZhbHRldCBkaWUgSGFlbmRlIHVuZCB2ZXJiZXVndCBzaWNoIGluIGFsbGUKSGltbWVsc3JpY2h0dW5nZW4uCkxpIHNhZ3Q6ICJNb2VnZW4gRXVyZSBEb2VyZmVyIHZvbiBTdGV1ZXJlaW5uZWhtZXJuIHZlcnNjaG9udCBibGVpYmVuLCBtb2VnZW4KRXVyZSBTb2VobmUgemFobHJlaWNoLCBoYWVzc2xpY2gsIHN0YXJrIHVuZCB1bmQgd2lsbGlnZSBBcmJlaXRlciBzZWluOyBtb2VnZW4KRXVyZSB3ZW5pZ2VuIFRvZWNodGVyIHNjaG9lbmUgdW5kIGhlcnZvcnJhZ2VuZGUgQW5sYWVzc2UgZnVlciBMaWViZXNnYWJlbiB2b24KYmVkZXV0ZW5kZW4gRmFtaWxpZW4gc2VpbiwgZGllIHdlaXQgZW50ZmVybnQgbGViZW4uIE1vZWdlIEV1ZXIgTGViZW4gbWl0IGRlcgpTY2hvZW5oZWl0IGdlc2VnbmV0IHNlaW4sIGRpZSBtZWluIExlYmVuIGJlcnVlaHJ0IGhhdC4gTGVidCB3b2hsIQoKbm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBub2NoIG5lbiBhbGkgKEJvaW5nLCAgOS4gTm92IDE5OTUsIDExOjIzOjMxKToKIyEgcm49WmFyZG96IHJ0PTgxNTkwNjg5MQpEYXMgaGFiIGljaCBhdWNoIC4uLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSmFqYSwgYW5ubyBMZWlwemlzY2gvRWludW5kbGVpcHppc2NoIChZZW5kaSwgIDkuIE5vdiAxOTk1LCAxMTozMjowOCk6CiMhIHJuPUZhbnVpZGhvbCBydD04MTU4NzAzNTAKCk5ldWVpbnN0ZWlnZXIhIEdyZWVuaG9ybiEgRW1wb3Jrb2VtbWxpbmchCkRhbWFscyBnYWIgZXMgamEgc29nYXIgc2Nob24gSGlsYmVydHMgVHVybSB1bmQgZGllIFNjaHJhdHF1ZXN0Li4uIFR6dHp0enp6Li4uCgpadSB1bnNlcmVuIFplaXRlbiwgamFhYSwgZGEgaGF0dGUgbWFuIGFiIHVuZCB6dSBlaW4gcGFhciBHb2V0dGVyIGZ1ZXIgc2ljaAphbGxlaW4gLS0gYW0gaGVsbGljaHRlbiBUYWcuLi4KCllUWSwgdHJhdWVydCBkZXIgR3V0ZW4gQWx0ZW4gWmVpdCBuYWNoLCBhbHMgS2FsbGUgQmxvbXF1aXN0cyBTZWlkZW5ydWVzdHVuZwogICAgIG5vY2ggc28gcmljaHRpZyBzdXBlcmR1cGVydG9sbCB3YXIuCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSmFqYSwgYW5ubyBMZWlwemlzY2gvRWludW5kbGVpcHppc2NoIChZZW5kaSwgIDkuIE5vdiAxOTk1LCAxMTozMjoyNCk6CiMhIHJuPVllbmRpIHJ0PTgxNTkxMzEyOAoKUFM6ICA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQydNT04sIGdldCBpdCBnb2luJyEgKEZ5dCwgIDkuIE5vdiAxOTk1LCAxMTozMzoxNyk6CiMhIHJuPUNyZWF0aXZlIHJ0PTgxNTkwNjQ0MAppY2ggaGFiIHp1bSBCZWlzcGllbDoKIHphbiAgICA9IHppZWhlIHNjbGFuZ2VuaGF1dCBhbgp3ZWlzcyBhdWNoIG5pY2h0LCB3b2Z1ZXIKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQydNT04sIGdldCBpdCBnb2luJyEgKFllbmRpLCAgOS4gTm92IDE5OTUsIDExOjQ2OjQzKToKIyEgcm49Rnl0IHJ0PTgxNTkxMzE5NwoKVGphLCBpY2ggaGFiZSBkYSBub2NoIHNvbGNoZSBTY2hhZXR6Y2hlbiB3aWUKCiA/UyAgICAgPSA/cyAkKgogP1cgICAgID0gZnJhZ2Ugd3V0eiBuYWNoICQqCiA/cCAgICAgPSBmcmFnZSBwcm9mZXNzb3IgbmFjaCAkKgogP3MgICAgID0gZnJhZ2Ugc2VlbGVmYW50IG5hY2ggJCoKID93ICAgICA9IGZyYWdlIHdhbGRyYWV1YmVyIG5hY2ggJCoKCihNYW4gYmVhY2h0ZSBkYXMgIj9TIi4uLikKCm9kZXIsIG9id29obCBpY2ggc2VpdCBCZXN0ZWhlbiBkZXIgR2lsZGUgS2FyYXRla2EgYmluOgoKIDEgICAgICA9IHN0ZWNrZSBzYWViZWwgd2VnCiAyICAgICAgPSBmZXVlcmJhbGwKIDMgICAgICA9IHp1ZWNrZSBzYWViZWwKIDQgICAgICA9IHBmZWlsCmJiICAgICA9IGZldWVyYmFsbCAkKgogaXkgICAgID0gaWRlbnRpZml6aWVyZSB5ZW5kaQogcHAgICAgID0gcGZlaWwKIHRycyAgICA9IHRyYWdlIHNjaHVwcGUKIGdpa3UgICA9IGdpYiBrdWdlbCBhbiAkKgooYWxzIGRlciBMaWNodHNwcnVjaCBuZXUgd2FyLCBrb25udGUgbWFuIGRpZSBzbyBzY2hvZW4gdmVyc2NoZW5rZW4uLi4gOykKCk9oLCB1bmQgbm9jaCBlaW4gcGFhciBRdWVzdHNwZXppZmlrYSwgdS5hLgoKIHBvbnkgICA9IGZ1ZXR0ZXJlIHBvbnkgbWl0IGthcm90dGUKIGxiICAgICA9IHNjaGF1IGJhZXVtZQogbGJvICAgID0gc2NoYXUgYm9kZW4KIGxkcyAgICA9IHNjaGF1IGRzY2h1bmdlbAogbGYgICAgID0gc2NoYXUgZmFybmUKIGxnZSAgICA9IHNjaGF1IGdlc3RydWVwcAogc29iICAgID0gc3VlZG9iZW4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpub2NoIG4gcGFhci4uLiAoQ3JlYXRpdmUsICA5LiBOb3YgMTk5NSwgMTE6NTU6NTEpOgoKcQphbGkgP1sxMX4gdW50IHdlZwphbGkgWzExfiBtYWVoZSBncmFzCmFsaSBbMTJ+IHRhdXNjaGUgcGFydGl0dXIKYWxpIFsxM34gbmltbSBzY2h3ZXJ0CmFsaSBbMTR+IHNjaHdpbW1lIG4KCmhhYiBpY2ggYXVjaCBub2NoIGdlZnVuZGVuIDspCi1DcmVhLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSmFqYSwgYW5ubyBMZWlwemlzY2gvRWludW5kbGVpcHppc2NoIChGYW51aWRob2wsICA5LiBOb3YgMTk5NSwgMTM6Mzk6MjcpOgojISBybj1ZZW5kaSBydD04MTU5MTMxMjgKSWNoIGhhYiBkb2NoIGdlc2NocmllYmVuIGRhc3MgaWNoIGRhIHNjaG9uIGVpbiBoYWxiZXMgSmFociBleGlzdGllcnRlLApZZW5kaS4gOikgSWNoIHdhciBhdWNoIHNjaG9uIGluIE1HIGFscyBlcyBub2NoIGdhciBuaWNodCByaWNodGlnIG9mZml6aWVsbAplcm9lZmZuZXQgd2FyIHVuZCBtYW4gYW0gU3RhcnRwdW5rdCBiZWkgZGVuIEVsZmVuICh3YXIgZGFtYWxzIG5vY2gKZGlyZWt0IG5lYmVuIGRlciBncm9zc2VuIEVsZmVua3JldXp1bmcpIG1hbiBuaWNodCBuYWNoIG9zdGVuIGdlaGVuIGtvbm50ZQpSaWNodHVuZyBIb2NoZWJlbmUsIHdlaWwgZXMgZGllIFJhZXVtZSBub2NoIG5pY2h0IGdhYi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBub2NoIG4gcGFhci4uLiAoRnl0LCAgOS4gTm92IDE5OTUsIDE0OjA3OjM3KToKIyEgcm49Q3JlYXRpdmUgcnQ9ODE1OTE0NTUxCkhtLCB1bmQgZGFubiBnaWJ0J3MgZnJlaWxpY2ggbm9jaCAndGInIGZ1ZXIgJ3RvZXRlIGJsb29kZ29yZScuLi4KRnl0LgptbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBDJ01PTiwgZ2V0IGl0IGdvaW4nISAoRXRhaCwgIDkuIE5vdiAxOTk1LCAxNDoyMjoxNyk6CiMhIHJuPUNyZWF0aXZlIHJ0PTgxNTkwNjQ0MAoKYmVlcCA9ICh0ZWxsX29iamVjdCAoZmluZF9wbGF5ZXIgIiQxIikgKHNwcmludGYgIkV0YWggcGluZ3QgRGljaCBhbi4lY1xuIiA3KSkKRS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbGkgKEV0YWgsICA5LiBOb3YgMTk5NSwgMTQ6MjM6MDcpOgojISBybj1aYXJkb3ogcnQ9ODE1OTA2NDcxClRqYSwgc293YXMgYnJhdWNoIGljaCBuaWNodCBtZWhyCklzdCB2aWVsIHp1IGF1ZndlbmRpZyB1bmQgd2lyZCBhdWNoIG5vY2ggamVkZXNtYWwgZXh0cmEgdWViZXJzZXR6dAo7KQoKRT4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWxpIChBbmFraW4sICA5LiBOb3YgMTk5NSwgMTQ6MjQ6MjQpOgojISBybj1FdGFoIHJ0PTgxNTkyMzM4NwpOaWNodCBqZWRlciBoYXQgS25ldGUgdW5kIExJU1BlbHQuCgpBbmFraW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbm9jaCBuZW4gYWxpIChBc21vZGlzLCAgOS4gTm92IDE5OTUsIDE0OjU4OjIyKToKIyEgcm49WmFyZG96IHJ0PTgxNTkwNjg5MQpIaWVyIGVpbiBwYWFyIEFsaXMgdm9uIG1pciA6KQoKS2x1Z2UgQW50d29ydGVuIGF1ZiBkdW1tZSBGcmFnZW4gOikKCmZkICAgICA9IC1iIEZyYWcgZG9jaCBEYW5jZXIgIQpmaCAgICAgPSAtYSBGcmFnIGRpZSBIeWRyYSAhCmZsICAgICA9IC1iIEZyYWcgTGFycyEKZm0gICAgID0gLWIgRnJhZyBNZXJsaW4hCmZ2ICAgICA9IC1hIEZyYWcgZGVpbmUgVm9vZG9vLVB1cHBlIQoKVGphLCB1bmQgZGFubiBoYWVuZ2UgaWNoIG5vY2ggZGllIG1laXN0ZSBaZWl0IGluIEtuZWlwZW4gcnVtIDopCgprYSAgICAgPSBrYXVmZSBhbHJhdW5lCmtiICAgICA9IGthdWZlIGJsdXQKa2MgICAgID0ga2F1ZmUgY29sYQprZyAgICAgPSBrYXVmZSBncm9nCmtoICAgICA9IGthdWZlIGhhZXJ0ZXIKa2sgICAgID0ga2F1ZmUga25vYmxhdWNod2Fzc2VyCmttICAgICA9IGthdWZlIG1lbGlzc2UKa28gICAgID0ga2F1ZmUgb3JhbmdlCmtyICAgICA9IGthdWZlIHJhY2hlbnB1dHplcgprcyAgICAgPSBrYXVmZSBzYWtlCmt0ICAgICA9IGthdWZlIHRvZXRlcgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IG5vY2ggbmVuIGFsaSAoQ3VjaHVsbGluLCAgOS4gTm92IDE5OTUsIDE1OjEyOjEwKToKIyEgcm49QXNtb2RpcyBydD04MTU5MjU1MDIKClRvZXRlciBpc3Qga2FldWZsaWNoID8KCkdyaW5zZW5kLApDdWNoLi0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBub2NoIG5lbiBhbGkgKEFzbW9kaXMsICA5LiBOb3YgMTk5NSwgMTU6MzI6MTUpOgojISBybj1DdWNodWxsaW4gcnQ9ODE1OTI2MzMwCktsYXIsIGplZGVyIE1hZ2llciBoYXQgc2VpbmVuIFByZWlzIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEJhbWJ1bGtvLCAgOS4gTm92IDE5OTUsIDE1OjM3OjE3KToKIFtBbGxnZW1laW46UHJlZGF0b3JdIDEwMyBscHMgd2VnIGluIGVpbmVyIHJ1bmRlLCBuaWNodCB1ZWJlbApbVG9kOl0gUm9iaW4gaGF0IGdlcmFkZSBQcmVkYXRvciB1bWdlYnJhY2h0LgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnJvYmluIChKaW1kaWdyaXosICA5LiBOb3YgMTk5NSwgMTY6MTY6MDUpOgpbQWxsZ2VtZWluOkZ5dCBmaW5kZXQgUm9iaW4gbmljaHRdCltBbGxnZW1laW46Qmx1ZW1lbF0gRXIgd2lsbCB1bmJlZGluZ3Qgcm9iaW4gdG9ldGVuCltBbGxnZW1laW46Wm9ycm9dIHdlciBicmF1Y2h0IHNjaG9uIGdlbGQgaGF1cHRzYWNoZSAxMDAgdGFnZSB1cC10aW1lCgpiZXNjaHdvZXJlIHJvYmluClJvYmluIGdpYnQgZXMgbmljaHQgaW0gTW9yZ2VuR3JhdWVuLgoKdGphICwgcGVjaCBnZWhhYnQgRnl0IDstKSkKCkouQi5kaUdyaXoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiByb2JpbiAoQXNtb2RpcywgIDkuIE5vdiAxOTk1LCAxNzowNzoyMyk6CiMhIHJuPUppbWRpZ3JpeiBydD04MTU5MzAxNjUKVGphLCBSb2JpbiBnYWIgZXMgZG9jaCwgZXIgc3RhcmIga3VyeiBzcGFldGVyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFsaSAoR3JpbW1ib3JuLCAgOS4gTm92IDE5OTUsIDE3OjEwOjA4KToKIyEgcm49U2lsdmFuYSBydD04MTU5MDY2NTgKCmdydWYgPSBlY2hvdG8gZ3JpbW1ib3JuIEdyaW1tYm9ybiBhbiBhbGxlIEdyaW1tYm9ybnM6ICQqCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbGkgKE11cGZlbCwgIDkuIE5vdiAxOTk1LCAxOToyMTozNik6CiMhIHJuPVphcmRveiBydD04MTU5MDY0NzEKZ2VuYXUgemFyZG96LCBvZGVyIGRlbjoKeHNlbmRlID0geGV2YWwKc2l6ZW9mKG1hcF9hcnJheShmaWx0ZXJfYXJyYXkodXNlcnMoKSxsYW1iZGEoKHsndSwnY30pLCh7Iyc/LCh7IychPSwoeyMnbWVtYmVyX2FycmF5LCdjLCh7IydjYWxsX290aGVyLCd1LCJRdWVyeVByb3AiLFBfQ0hBTk5FTFN9KX0pLC0xfSksMSwwfSkpLCIkMSIpLCMndGVsbF9vYmplY3QsIlskMTokMl0KJDMqXG4iKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5vY2ggbWVociBhbGlzIChNYXJzLCAgOS4gTm92IDE5OTUsIDE5OjMzOjU4KToKCmRhbm4gd2FyIGRhIG5vY2ggSGlsYmVydHMgVHVybToKCmFsaWFzIG4rICBub3Jkb2JlbgphbGlhcyBuLSAgbm9yZHVudGVuCmFsaWFzIG5vKyBub3Jkb3N0b2JlbgphbGlhcyBuby0gbm9yZG9zdHVudGVuCi4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkViZW4sIGluIEtlcm92bmlhLi4uIChZZW5kaSwgIDkuIE5vdiAxOTk1LCAxOTo0MToxNyk6CgpbY2hhdF0gSm9rYWFyOiB3aGVuIGxhZyBnb2VzIGF3YXksIHRoZXkgaGF2ZSBhIHJlYm9vdCB0byByZWZyZXNoIHRoZSBsYWcKCgpLb21tdCBkYXMgYmVrYW5udCB2b3I/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWxpYXMgKFRhc2hhLCAgOS4gTm92IDE5OTUsIDE5OjQ5OjIxKToKQWxzbyBpY2ggaGFiIG51ciBlaW4gd2lya2xpY2ggd2ljaHRpZ2VzIGFsaWFzOgoKcmdyaXNuID0gcmdyaW5zICQqCgpUaHNhLCBUYWhzYS4uLi5hY2ggZWdhbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcGFydGl0dXIgYXVmIChUb2V0ZXIsICA5LiBOb3YgMTk5NSwgMjA6NTU6NTEpOgppY2ggaGFiIGRhIG5vY2g6CiBhbGkgICAgPSBhbGkgJCoKIGJ0ZiAgICA9IGJpZXRlIHRvZXRlciBmcmV1bmRzY2hhZnQgYW4KIGthICAgICA9IHRlaWxlICQxIG1pdCBrZWluZSBBaG51bmcKIHNoaXQgICA9IGVjaG90byAkMSBFaW4gRGFlbW9uIGVyc2NoZWludCB2b3IgRGlyIHVuZCBzcHJpY2h0OiBJY2ggYmluClNjaGVpc3NlLCBEdSBoYXN0IG1pY2ggZ2VydWZlbi4KIHp3ZSAgICA9IGFsaSA0IGZldWVyYmFsbCB6d2VyZyAxCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBpbiBLZXJvdm5pYS4uLiAoWWVuZGksICA5LiBOb3YgMTk5NSwgMjE6MTc6MjIpOgpbY2hhdF0gS3J5bGxpdGg6IHdvby13b28gbXkga2lsdCBpcyBib3RoIHdvcm4sIHdpZWxkZWQgcmlnaHQsIGFuZCBzaGFycGVuZWQKW2NoYXRdIEpva2FhcjogaG93J2QgeW91IG1hbmFnZSB0aGF0PwpbY2hhdF0gS3J5bGxpdGg6IGd1ZXNzIHRoZXkgZG9uJ3QgY2FsbCBpdCBhIHdhciBraWx0IGZvciBub3RoaW5nCltjaGF0XSBBcnd5bjoga2lsdCAqOCkKW2NoYXRdIFJhdGJveTogYSBfc2hhcnBlbmVkXyBraWx0PyB3aGljaCBzaWRlIG9mIGl0PwpbY2hhdF0gS3J5bGxpdGg6IGhvcGVmdWxseSB0aGUgb3V0c2lkZQpZb3UgdGVsbCBSYXRib3k6ICpwcnV1dXN0KgpbY2hhdF0gSm9rYWFyOiBtYWtlIHN1cmUgeW91J3JlIGNhcmVmdWwgcHV1dGluZyBvbiwgb3IKICAgICAgIHRoaXNfcGxheWVyKCktPmNoYW5nZV9zZXgoMSkKW2NoYXRdIEFyd3luOiBub3BlLi4udGhhdCdzIG1lc3NlcidzIGJlbHQuCltjaGF0XSBZZW5kaTogU28gdGhpcyBpcyBhIGtpbHQgdGhhdCB5b3UgbWF5IHN0aWNrIGludG8gb3RoZXJzLCB3aGlsc3QgeW91CiAgICAgICBzdGljayBpbiBpdD8KPiBbY2hhdF0gSm9rYWFyOiBvciBtYXliZSAyICBmb3IgbmV1dGVyCltjaGF0XSBBcnd5bjogMiBpcyBmZW1hbGUKW2NoYXRdIFJhdGJveToKICAgICB0aGUgcHJvdG90eXBlIHdhcyBjYWxsZWQgdGhlIFMmTSBraWx0LiBvYnZpb3VzbHkgc29tZWJvZHkgaGFkCiAgICAgbWlzdW5kZXJzdG9vZCB0aGUgdGVybSAiZHJlc3Npbmcgc2hhcnAiLgpbY2hhdF0gQXJ3eW4gcm9sbHMgaGVyIGV5ZXMgdG93YXJkcyB0aGUgY2VpbGluZy4KW2NoYXRdIEpva2Fhcjogc28gd2hhdCBpcyBuZXV0ZXI/CltjaGF0XSBBcnd5bjogMCwgb2ZjCltjaGF0XSBZZW5kaTogT3Igd2FzIHRoYXQgImRyZXNzZWQgdG8ga2lsbCI/Cj4gW2NoYXRdIEtyeWxsaXRoOiBkcmVzc2VkIHRvIGtpbHQgYWN0dWFsbHkKW2NoYXRdIEFyd3luIGdyYWJzIFllbmRpJ3MgaGVhZCBhbmQgdGh1bXBzIGl0IGludG8gdGhlIHdhbGwsIHRoZXJlYnkKcmVsaWV2aW5nCiAgICAgICBzdHJlc3MuCltjaGF0XSBKb2thYXIgY2hlZXJzIGZvciBBcnd5bi4KW2NoYXRdIEtyeWxsaXRoOiB3b25kZXIgaG93IG11Y2ggSSBjYW4gZ2V0IGZvciB0aGlzIGF3ZXNvbWUga2lsdApbY2hhdF0gWWVuZGkgYm9nZ2xlcyBhdCB0aGUgbWFydmVsb3VzIGJhcy1yZWxpZWYgb2YgaGlzIGZhY2Ugb24gdGhlIHdhbGwuLi4KW2NoYXRdIFllbmRpOiBZb3UgZ2V0IGtpbHQ/Cj4gW2NoYXRdIEtyeWxsaXRoOiBub3BlLCB0aGF0IHdhcyBlYXJsaWVyCltjaGF0XSBGYWxjb246IHdoeSB3b3VsZCBhIGR1ZGUgd2FubmEgd2VhciBhIGRyZXNzIGludG8gd2FyPwpbY2hhdF0gUmF0Ym95OgogICAgIDUgeWVhcnMgcGVyaGFwcy4gQXQgbGVhc3QgdGhleSB3b24ndCBjaGFyZ2UgeW91IGZvciBjYXJyeWluZyBhCiAgICAgY29uY2VhbGVkIHdlYXBvbi4KW2NoYXRdIEtyeWxsaXRoOiB0aGUgb3Bwb25lbnRzIGFyZSB0b28gYnVzeSBsYXVnaGluZyB0byBkZWZlbmQgdGhlbXNlbHZlcy4uLgoKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHBhcnRpdHVyIGF1ZiAoQW50aGVhLCAgOS4gTm92IDE5OTUsIDIzOjE3OjMxKToKIyEgcm49VG9ldGVyIHJ0PTgxNTk0Njk1MQpIbS4uLiBtZWluIExpZWJsaW5nc2FsaToKIGtub2NrICA9IDprbG9wZnQgRGlyIHZvcnNpY2h0aWcgYW4gZGVuIEtvcGYuIEVzIGtsaW5ndCBpcmdlbmR3aWUgaG9obC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbGlhcyAoQ3JlYXRpdmUsIDEwLiBOb3YgMTk5NSwgMDk6Mzc6NTcpOgojISBybj1UYXNoYSBydD04MTU5NDI5NjEKCipncmlucyogd2llIHdhZXJzIG1pdCBhbGkgVHNoYSBUYXNoYT8gOykKCi1DcmVhLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBub2NoIG4gcGFhci4uLiAoRmFudWlkaG9sLCAxMC4gTm92IDE5OTUsIDEyOjAyOjI5KToKIyEgcm49Rnl0IHJ0PTgxNTkyMjQ1NwpVbmQgbm9jaCBlaW4gYWxpYXMgZWluIHNhZ2UgRWluc3BydWNoCih3YXIgenUgSm9mcyBIb2NoemVpdCA6LSkpCgogQ2FyYWRocmFzIGdyaW5zdCBMYXJpc3NhIHVuZCBKb2YgZnJlY2ggYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbm9jaCBuZW4gYWxpIChGYW51aWRob2wsIDEwLiBOb3YgMTk5NSwgMTI6MDk6NDYpOgojISBybj1Bc21vZGlzIHJ0PTgxNTkyNTUwMgo+IGt0ICAgICA9IGthdWZlIHRvZXRlcgoKVG9ldGVyIGlzdCBiZXN0ZWNobGljaD8KCiAgICAgICAgICAgICBDYXJhZGhyYXMgLSBzaWNoIHd1bmRlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBub2NoIG5lbiBhbGkgKEZhbnVpZGhvbCwgMTAuIE5vdiAxOTk1LCAxMjoxMTo1OCk6CiMhIHJuPUN1Y2h1bGxpbiBydD04MTU5MjYzMzAKQXJnbCwgbWFuIHNvbGx0ZSBlcnN0IHdlaXRlcmxlc2VuLgoKIENhcmFkaHJhcyBobXBmdCBDdWNodWxsaW4gYW4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBub2NoIG5lbiBhbGkgKEhhcmRpbCwgMTAuIE5vdiAxOTk1LCAxNDozMToyMSk6CiMhIHJuPUFzbW9kaXMgcnQ9ODE1OTI3NTM1CkhtbW1tLAoKT3JrdG9ldGVyIGlzdCBhdWNoIGthZXVmbGljaC4gSmVkZW5mYWxscyBiZWkgZGVuIFBlbHpmdWVzc2VuIGF1ZiBkZXIgYW5kZXJlbgpTZWl0ZSB2b20gTW9vci4KCi1IYXJkaWwuIE5OTi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEphamEsIGFubm8gTGVpcHppc2NoL0VpbnVuZGxlaXB6aXNjaCAoQm9pbmcsIDEwLiBOb3YgMTk5NSwgMTQ6NDA6MDEpOgojISBybj1GYW51aWRob2wgcnQ9ODE1OTIwNzY3CkRhbm4gZXJpbm5lcnQgaWhyIGV1Y2ggamEgc2ljaGVyIG5vY2ggYW4gZGFzIFRlbGVwb3J0LUlnbHUgdW5kIGFuCmRlbiBUZWxlcG9ydC1GZWxzZW4gLi4uIGljaCBnbGF1YiB6dW0gbmFlY2hzdGVuIEphaHJlc3RhZyB3ZXJkIGljaApkaWUgRGluZ2VyIG1hbCB3aWVkZXIgZnVlciBlaW5lIFdvY2hlIGluc3RhbGxpZXJlbi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUm9iaW4gaXN0IGZyZWNoIChNaWV6ZSwgMTAuIE5vdiAxOTk1LCAxNTozOToyMCk6CmViZW4gYXVmIGRlciBIRToKCgpSb2JpbiBrb21tdCBhbi4KUm9iaW4gc2FndDogRGllIExlYmVuc2hhbHR1bmdza29zdGVuIHN0ZWlnZW4gc3RhZW5kaWcuClJvYmluIGJlZGllbnQgc2ljaCBhbiBEZWluZXIgcHJhbGxlbiBHZWxkYm9lcnNlLgpSb2JpbiBzYWd0OiBIYXN0ZSBtYWwgJ25lIE1hcms/CkJydW1tZWwgZ2VodCBuYWNoIE5vcmRlbi4KQnJ1bW1lbCBrb21tdCB1bmQgc2NoYXV0IHp1cnVlY2sgbmFjaCBTdWVkZW4uClJvYmluIGdlaHQgbmFjaCBTdWVkZW4uCgoKZGFubiBhdWNoIG5vY2ggc28gc2F1YmxvZWQgZnJhZ2VuISEhIEFsc28gbmVlIQoKTWllemUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClpvbWJpZS1Tb2xkYXRlbiA/IChBc21vZGluYSwgMTAuIE5vdiAxOTk1LCAyMjoxNzo1OSk6CgogIER1IGdyZWlmc3QgZGVuIEVsaXRlc29sZGF0ZW4gbWl0IGVpbmVtIGdlbHVuZ2VuZW4gQ2hva3UtenVraSBhbi4KICBEdSB0cmlmZnN0IGRlbiBFbGl0ZXNvbGRhdGVuIHNlaHIgaGFydC4KRGVyIEVsaXRlc29sZGF0IHN0aXJidCBhdWYgZGVtIEZlbGQgZGVyIEVocmUuCiAgRGVyIEVsaXRlc29sZGF0IHVlYmVycmVubnQgRGljaC4KICBEZXIgRWxpdGVzb2xkYXQgdWViZXJyZW5udCAwLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLmFiZXIgaWNoIGJpbiBzY2huZWxsZXIgKE11cGZlbCwgMTEuIE5vdiAxOTk1LCAwMjowNjoxMCk6CnZlcmZvbGdlIGphbmljZQpbLi4uXQpEdSBmYWVocnN0IGluIGVpbmVyIFNjaHVzc2ZhaHJ0IGRpZSBQaXN0ZSBoaW51bnRlci4gVW0gRGljaCBoZXJ1bSBzaWVoc3QgRHUKbnVyIFNjaG5lZSwgZGEgRHUgdmllbCB6dSBzY2huZWxsIGJpc3QsIHVtIHdhcyBhbmRlcmVzIHNlaGVuIHp1IGtvZW5uZW4uCkF1c3NlcmRlbSBpc3QgZXMgYml0dGVya2FsdCB1bmQgRHUgeml0dGVyc3QuCkVzIGdpYnQga2VpbmUgc2ljaHRiYXJlbiBBdXNnYWVuZ2UuCkRpZSBBYmZhaHJ0IHdpcmQgaW1tZXIgbm9jaCBzdGVpbGVyIHVuZCBEdSBpbW1lciBzY2huZWxsZXIuCkphbmljZSBrb21tdCBoaW50ZXIgRGlyIGF1ZiBkaWVzZSBQaXN0ZS4KCmFoYT8gamV0enQgaXN0IHNpZSBwbG9ldHpsaWNoIGhpbnRlciBtaXI/IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSXNzZXIgZGVubiBzb29vb28gc2NobGltbT8gKE1hcml0YSwgMTEuIE5vdiAxOTk1LCAwMjoxMzoyNSk6CihEdSBuaW1tc3QgZXMgbWlyIGRvY2ggbmljaHQgdWViZWwsIG1laW4gRnJldW5kIEx1Zz8pCgpOb3N0cm9tbyB1bWFybXQgTHVnIHZlcmZ1ZWhyZXJpc2NoLgpMdWcgdmVyZHJlaHQgZGllIEF1Z2VuIHVuZCBrb3R6dC4KCktvbXBsaW1lbnRlIG9obmUgRW5kZS4uLiBNZWluIHNlY2hzdGVyIEJlaXRyYWNoCk1hcml0YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbGVlcmVzIE1HIChUb2Rlc2VuZ2VsLCAxMS4gTm92IDE5OTUsIDA3OjQxOjEzKToKd2VyIG1vcmdlbmdyYXVlbgoKQW5mcmFnZSBhYmdlc2NoaWNrdC4KPgoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSoKfCAgICAgICAgICAgIE1vcmdlbkdyYXVlbiwgTFBNdWQgMDMuMDIuMUAxMjAgKEFteWxhYXIpICAgICAgICAgICB8CnwgICAgICAgQWRyZXNzZTogbXVkLnVuaS1tdWVuc3Rlci5kZSAoMTI4LjE3Ni4xMjEuNzQpICA0NzExICAgICAgfAp8ICAgICAgICAgIFVwdGltZTogMTAgU3R1bmRlbiwgMjAgTWludXRlbiB1bmQgOCBTZWt1bmRlbiAgICAgICAgIHwKfCAgICAgICAgICAgICAgICAgICAgICAgTW9yZ2VuR3JhdWVuIE11ZGxpYiAgICAgICAgICAgICAgICAgICAgICB8CiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKgpbU10gVG9kZXNlbmdlbCAtIGRlciBCb3RlIGF1cyBkZW0gZHVua2xlbiBSZWljaCAtIEVsZiAtIFtFc3Nlbl0KKioqIEVzIGJlZmluZGV0IHNpY2ggZ2VyYWRlIDEgU3BpZWxlciBpbiBNb3JnZW5HcmF1ZW4uMDc6MzkKCkhtLCBpcmdlbmR3aWUgbGVlciBoaWVyCgouLi4uIGRpZSBkdW5rbGUgU2VpdGUgZGVzIE1vcmdlbmdyYXVlbnMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndpZWRlciBhbGlzIDopIChDcmVhdGl2ZSwgMTEuIE5vdiAxOTk1LCAxNDowNDo1MCk6Cgpub2NoIGVpbiBwYWFyIGdlZnVuZGVuOiA6KQphbGkgZ2diIGdsZWl0ZSByZWdlbmJvZ2VuCmFsaSBzdHNjIHN0ZWxsZSBhbiBzY2hsYW5nZSAkMSBhbgphbGkgemIgenVlY2tlIG1hc3RlcmJsb2NrCmFsaSB6cyB6aWVoZSBzdHJpY2sKYWxpIGdyaSBncmluc2UgL2tyZWF0aXYuLgphbGkgYncgYmVzdGVpZ2Ugd2FsICAoaWNoIGJpbiBOSUNIVCBzb2RvbWlkIDopKQphbGkgbmFhbCBuaW1tIGFsbGVzIGF1cyBsZWljaGUgJDEKCi1DcmVhLSwgZnVlaGx0IHNpY2ggbmFjaCBkZW4gYWxpcyBub2NoIG1laHIgYWxzIFNlaGVyIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJtYWdlZGRvbiAoSG9yc2NoZCwgMTEuIE5vdiAxOTk1LCAxNDozMTo1OSk6CgpBcm1hZ2VkZG9uIHJ1ZnQ6IFRlaWxlIG1pciBtaXQsIHdlbm4gRHUgaW4gZGVuIExhZGVuIGdlYnJhY2h0IHdlcmRlbiB3aWxsc3QhCkFybWFnZWRkb24gcnVmdDogSW4gMTAgTWludXRlbiB1bmQgMCBTZWt1bmRlbiB3ZXJkZSBpY2ggZGllIFdlbHQgemVyc3RvZXJlbgpBcm1hZ2VkZG9uIHJ1ZnQ6IHVuZCBuZXUgZXJzY2hhZmZlbiEKClZpb2xldHRlIFdvbGtlbiB0dWVybWVuIHNpY2ggYW0gSGltbWVsIGF1ZiAuLi4gYmx1dGlnZXIgUmVnZW4gZmFlbGx0Cmhlcm5pZWRlci4KCj50bSBhcm1hZ2VkZG9uIGljaCB3aWxsIG5pY2h0IGluIGRlbiBsYWRlbiEKClsvZC9lYmVuZS9yb29tL1BvcnRWYWluL2xhZGVuXQpEdSBiZWZpbmRlc3QgRGljaCBpbiBkZW0gZ3JvZXNzdGVuIFBvcnQgVmFpbmVyIEdlc2NoYWVmdC4gSGllciBrYW5uc3QgRHUKRGljaCBmdWVyIERlaW5lIEFiZW50ZXVlciBhdXNydWVzdGVuLiBGb2xnZW5kZSBCZWZlaGxlIHNpbmQgbW9lZ2xpY2g6CiAgICAgICAgemVpZ2UgICAgICAgICAgICAgICAgICAgIGthdWZlIDxnZWdlbnN0YW5kPiAob2RlciBudW1tZXIpCiAgICAgICAgemVpZ2UgcnVlKHN0dW5nZW4pICAgICAgIHZlcmthdWZlIDxnZWdlbnN0YW5kPgogICAgICAgIHplaWdlIHdhZihmZW4pICAgICAgICAgICB2ZXJrYXVmZSBhbGxlcwogICAgICAgIHplaWdlIHZlcihzY2hpZWRlbmVzKSAgICBzY2hhZXR6ZSA8Z2VnZW5zdGFuZD4KRHUga2FubnN0IGRhcyBHZXNjaGFlZnQgbmFjaCBPc3RlbiB2ZXJsYXNzZW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBvc3Rlbi4KRWRkaXYgZGVyIGVyZmFocmVuZSBBYmVudGV1cmVyLiBbL2R3YXJmOmVkZGl2XQpTa2lwcGVyIHNlaG50IHNpY2ggbmFjaCBkZW0gTWVlci4uIFsvaHVtYW46c2tpcHBlcl0KQWxpbmUgZGllIFdhbGRoZXhlLiBbL2VsZjphbGluZV0KRGVyIGVudGZlc3NlbHRlIEx1ZyBTYW1pbGRhbmFjaC4gWy9odW1hbjpsdWddCkVzY3ViYXIgZGVyIGFuZ2VoZW5kZSBTZWhlci4gWy9lbGY6ZXNjdWJhcl0KR2FzdDEgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlci4gWy9zdGQvc2hlbGxzL2h1bWFuIzQ5NzY1XQpFaW4gTXVlbGxzY2hsdWNrZXIuIFsvb2JqL2VudHNvcmcjNDk2ODJdCkR1IHRlaWxzdCBBcm1hZ2VkZG9uIG1pdDogaWNoIHdpbGwgbmljaHQgaW4gZGVuIGxhZGVuIQoKSmFqYS4uLiBBcm1hZ2VkZG9uIHdhciB3b2hsIGV0d2FzIGltIFN0cmVzcyA6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3aWVkZXIgYWxpcyA6KSAoUGFyYWNlbHN1cywgMTEuIE5vdiAxOTk1LCAxNDozNzoxMik6CiMhIHJuPUNyZWF0aXZlIHJ0PTgxNjA5NTA5MApJY2ggaGFiIHNvb29vb28gdmllbGUgQWxpcy4gQWJlciBlaW4gc2VociB3aWNodGlnZXMgaXN0OgphbGkgbWFtaSBmaW5nZXIgc2lsdmFuYSAtbgoKUGFyYWNlbHN1cyBdOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW1tIDopIChDcmVhdGl2ZSwgMTEuIE5vdiAxOTk1LCAxNDo0NDoxOCk6CgpmaW5nZXIgb2xwcAoKT2xwcCBpc3QgZWluZ2Vsb2dndCwKdW5kIHp3YXIgdm9uOiBpcGZlLmJhdS12ZXJtLnVuaS1rYXJsc3J1aGUuZGUgKDEyOS4xMy4xMDAuMTQpIFtLYXJsc3J1aGVdLgpJZGxlLVplaXQ6IDAwOjAzOjA1ClZvbGxlciBOYW1lOiBPbHBwClJhc3NlOiBNYWdpZXIsICBHaWxkZTogQWJlbnRldXJlciwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogNDdkIDA1OjIwOjU4ICAgTWFnaWVybGV2ZWw6IDU1CkUtTWFpbC1BZHJlc3NlOiBoZXlkZXJAaXBmZS5iYXUtdmVybS51bmkta2FybHNydWhlLmRlClJlZ2lvbnNtaXRhcmJlaXRlciB2b246IFBvbGFyLgpQcm9qZWt0OiBFbmRsaWNoIG1hbCBkaWUgRGlwbG9tYXJiZWl0IG1hY2hlbi4uLgpQbGFuOgpVbGYgSGV5ZGVyLCBBdWdhcnRlbnN0cmFzc2UgMTUsIEQtNzYxMzcgS2FybHNydWhlICAgICAgIHwgICAgICAgX19fXyBfIG9vClRlbGVmb246ICs0OSA3MjEgMzU3MTU3ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICB8XC8gICAgfC5cbwplLW1haWwgOiBoZXlkZXJAaXBmLmJhdS12ZXJtLnVuaS1rYXJsc3J1aGUuZGUgICAgICAgICAgIHwgICAgfC9cX19fX3xcLwp3d3cgICAgOiBodHRwOi8vaXBmci5iYXUtdmVybS51bmkta2FybHNydWhlLmRlL35oZXlkZXIgIHwgIC4uIFx8LyAuLi4gIFx8LwouLi4KCkhlaXNzdCBzZWluIFJlY2huZXIgamV0enQgaXBmLCBpcGZlLCBvZGVyIGlwZnIuYmF1LXZlcm0udW5pLWthcmxzcnVoZS5kZT8/Pwo6KQoKLUNyZWEtLCBiZW1lcmt0IHR5cG9zIHNjaG5lbGwgdW5kIHNpY2hlci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaG1tbSA6KSAoQm9pbmcsIDExLiBOb3YgMTk5NSwgMjI6NTg6MjQpOgojISBybj1DcmVhdGl2ZSBydD04MTYwOTc0NTgKSXN0IG51ciBsZWlkZXIga2VpbiBUeXBvIDopCmlwZiBoZWlzc3QgaW5zdGl0dXQgZnVlciBwaG90b2lyZ2VuZGVpbmRpbmdlbnMgdW5kIGZlcm5pcmdlbmR3YXNhbmRlcmVzLAplIGJ6dy4gciBzaW5kIGVpbmZhY2ggUmVjaG5lcmJlemVpY2hudW5nZW4gaW4gZGllc2VtIEluc3RpdHV0LgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCb2luZyA/IChOaWNodHMsIDEyLiBOb3YgMTk5NSwgMDE6Mzk6MzgpOgoKCkJpYm8gZ3J1bW1lbHQgaXJnZW5kZXR3YXMgVW52ZXJzdGFlbmRsaWNoZXMgdW5kIG1hY2h0IGRhYmVpIG1hZ2lzY2hlIFplaWNoZW4uClBsb2V0emxpY2ggYmlsZGV0IHNpY2ggZWluIFJpc3MgaW4gZGVyIFJlYWxpdGFldC4KS3J1ZnR1ciBrb21tdCBhbi4KQmlibyBnaWJ0IEtydWZ0dXIgZGVuIE1pdGhyaWxyaW5nLgpLcnVmdHVyIHNhZ3Q6IEljaCBoYWJlIGZvbGdlbmUgSW5mb3JtYXRpb24gdWViZXIgZWluZW4gTWl0aHJpbHJpbmcgZXJoYWx0ZW46CktydWZ0dXIgc2FndDogQm9pbmcgaXN0IGZ1ZXIgZGllc2VuIEJsb2Vkc2lubiB2ZXJhbnR3b3J0bGljaC4KClBydXN0ZW5kLAoiIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdvdCBpdCEhIChBcmRhbmEsIDEyLiBOb3YgMTk5NSwgMDc6Mzc6NDApOgprd2VyCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBTb24sIDEyLiBOb3YgMTk5NSwgMDc6MzU6NDEgKDEgVGVpbG5laG1lcikKCkFyZGFuYS4uLi4uLi4uLi5NCgpFbmRsaWNoIGFsbGVpbi4uLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVsZmVuIHNpbmQgc2NobGF1IChNaW5kb2xsdWluLCAxMi4gTm92IDE5OTUsIDEzOjEzOjIxKToKICBEZXIgRWxmZW53YWVjaHRlciBncmVpZnQgRGljaCBtaXQgZGVtIExhbmdzY2h3ZXJ0IGFuLgogIERlciBFbGZlbndhZWNodGVyIGtpdHplbHQgRGljaCBhbSBCYXVjaC4KRGVyIEVsZmVud2FlY2h0ZXIgc2FndDogU3RpcmIsIFp3ZXJnZW5mcmV1bmQhCiAgRHUgZ3JlaWZzdCBkaWUgR2FlcnRuZXJpbiBtaXQgYmxvc3NlbiBIYWVuZGVuIGFuLgogIER1IGtyYXR6dCBkaWUgR2FlcnRuZXJpbi4KICBEaWUgR2FlcnRuZXJpbiBncmVpZnQgRGljaCBtaXQgZWluZXIgR2FydGVuaGFya2UgYW4uCiAgRGllIEdhZXJ0bmVyaW4gdHJpZmZ0IERpY2guCltUb2Q6XSBFaW5lIEdhZXJ0bmVyaW4gaGF0IGdlcmFkZSBGYW51aWRob2wgdW1nZWJyYWNodC4KIER1IHNhZ3N0OiAnS3JycnJycmNoY2hoaGghJwoKICAgTnUgc2FnZW4gc2Ugc2Nob24genUgbmVtIEVsZiBad2VyZ2VuZnJldW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIHZvbiBkZXIgSEFaIChIYWtraWtrdCwgMTIuIE5vdiAxOTk1LCAxNDozOToyOCk6CkxpZWJlIExlc2VyaW4sIGxpZWJlciBMZXNlciwKd2FzIG1hY2hlbiBTaWUgZ2VnZW4gZGFzIHRnbGljaGUgIk1vcmdlbmdyYXVlbiI/IE1laW4gZ2FueiBwZXJzbmxpY2hlcwpFcmZvbGdzZXJyemVwdDoKRXJzdCBlaW5tYWwgZGVuIFdpc3NlbnNkdXJzdCBzdGlsbGVuLiBEYWZ1ZXIgbmVobWUgaWNoIG1pciBlaW5lbiBLYWZmZWUsCm1laW5lIFplaXR1bmcgdW5kIHNjaGF1JyBuYWNoLCB3YXMgaW4gbWVpbmVyIFVtZ2VidW5nIHVuZCBkZXIgV2VsdCBsb3MgaXN0LgpXZWlsIGVzIGZ1ZXIgbWljaCBnYW56IGVpbmZhY2ggZWluIGd1dGVzIEdlZnVlaGwgaXN0LCBpbmZvcm1pZXJ0IGluIGRlbiBUYWcgenUKZ2VoZW4uCgpWaWVsbGVpY2h0IGdlaHQgZXMgSWhuZW4gamEgZ2VuYXVzby4gRGFubiBmcmV1IGljaCBtaWNoIHVtc28gbWVociwgSWhuZW4KaGV1dGUgZWluZW4gR3V0c2NoZWluIHp1IHNjaGlja2VuLCBkZXIgSWhuZW4gendlaSBXb2NoZW4gbGFuZyBkaWUgQXVnZW4Kb2VmZm5ldC4KCldpciBzZXJ2aWVyZW4gSWhuZW4gZGllIEhheiB6d2VpIFdvY2hlbiBkcnVja2ZyaXNjaCB6dW0gRnJ1ZWhzdHVlY2suIE1pdApadXN0ZWxsZ2FyYW50aWU6ClB1ZW5rdGxpY2gsIGJpcyA2IFVociwgS29zdGVubG9zIHVuZCB2b2VsbGlnIHVudmVyYmluZGxpY2guIERhcyBoZWlzc3Q6IFdlbm4KSWhuZW4gZGllIFplaXR1bmcgbmljaHQgZ2VmYWVsbHQsIGlzdCBuYWNoIHp3ZWkgd29jaGVuIGF1dG9tYXRzY2ggU2NobHVzcy4KRGFyYXVmIGhhYmVuIFNpZSBtZWluIFdvcnQuCi4uLi4KLi4uLgpTb3dhcyBiZWtvbW1lIGljaCBtaXQgZGVyIFBvc3QuLi4ud2VubiBkYXMgbmljaHQgZ3JhdWVuaGFmdCBpc3QuCmJpcyBkZW5uZSwgaGFra2lra3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFMSSAtIGVpbnMgZGVyIHdpY2h0aWdlbiBBcnQgOikgKEFyZGFuYSwgMTMuIE5vdiAxOTk1LCAwNjo0NToyNSk6Cgpta2lsbCAgPSBwbCAkMSBbU2V0IGdob3N0IDFdIGNyZWF0IC9yb29tL2RlYXRoL2RlYXRoX21hcmsgcGwgJDEgbW92CgpBcmRhbmEsCiAgICAgICAgIHdlaXNzIGdhciBuaWNodCwgd2FzIGRhcyBBbGkgbWFjaHQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsZWluZSBHZW1laW5oZWl0ZW4gZXJoYWx0ZW4gZGllIEZlaW5kc2NoYWZ0IDstKSAoTWllemUsIDEzLiBOb3YgMTk5NSwgMDg6MzI6MTIpOgplYmVuIGltIExhZGVuIHZvbiBLYXJlbSBGZWtlc2guLi4uCgo+IEthcmVlbSBGZWtlc2ggZmx1ZXN0ZXJ0IERpciB6dTogS29lbm50ZXN0IER1IG1pciBlaW5lbiBHZWZhbGxlbiB0dW4/CkthcmVlbSBGZWtlc2ggc3RlY2t0IERpciBlaW4ga2xlaW5lcyBQYWVja2NoZW4genUuLi4KS2FyZWVtIEZla2VzaCBmbHVlc3RlcnQgd2VpdGVyOiBEdSBiZWtvbW1zdCB2b24gbWlyIDEwMDAgTXVlbnplbiwgd2VubgogIER1IGRpZXNlcyBQYWVja2NoZW4gaW0gTGFkZW4gZGVyIEJyYWRkb24ncyB2ZXJrYXVmc3QuLi4KICBXZW5uIER1IG5pY2h0IGVpbnZlcnN0YW5kZW4gc2VpbiBzb2xsdGVzdCwgZ2liIGVzIG1pciBlaW5mYWNoIHdpZWRlci4KaQpFaW4gUGFlY2tjaGVuLgovL3VuZCBhbmRyZSBTYWNoZW4uLi4+IG4KS3JpZWdlcndlZy4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4sIHdlc3RlbiB1bmQgbm9yZGVuLgo+IG4KTGFkZW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBzdWVkZW4uCk1hcmdpZSBCcmFkZG9uLgpPd2VuIEJyYWRkb24uCkVpbiBNdWVsbHNjaGx1Y2tlci4KPiB2ZXJrYXVmZSBwYWVja2NoZW4KRGVyIEhhZW5kbGVyIHphaGx0IERpciAxMDAgR29sZHN0dWVja2UuCj4gcwpLcmllZ2Vyd2VnLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCj4gcwpFaW5lIEV4cGxvc2lvbiBlcnNjaHVldHRlcnQgZGVuIExhZGVuIGRlciBCcmFkZG9ucy4KTGFkZW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBub3JkZW4uCkthcmVlbSBGZWtlc2guCj4gS2FyZWVtIEZla2VzaCBraWNoZXJ0IGhpbnRlcmhhZWx0aWcgdW5kIHphaGx0IERpciAxMDAwIE11ZW56ZW4uCgoKTWllemUgbGFjaHQgaW1tZXIgbm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG1tbSA6KSAoQ3JlYXRpdmUsIDEzLiBOb3YgMTk5NSwgMDg6NTI6MjApOgoKTmV1bGljaCwgaW0gUmFkaW8uCidEaWUgTWluaXN0ZXIgZGVyIDQgU3RhYXRlbiBoYWJlbiBoZXV0ZSBpbSBNb3JnZW5HcmF1ZW4gYmVzY2hsb3NzZW4sIGRhc3MuLi4nCgpXaWVzbyBzdGVodCBkZW5uIGRhIG5peCBpbiBkZXIgWmVpdHVuZyB2b24/IDspCi1DcmVhLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbGkgKFJvYWRydW5uZXIsIDEzLiBOb3YgMTk5NSwgMDk6Mzk6NTcpOgojISBybj1aYXJkb3ogcnQ9ODE1OTA2NDcxCgpEYSBmYWVsbHQgbWlyIG5vY2ggZWluIFNFSFIgd2ljaHRpZ2VzIGFsaSBlaW4gKGJpbiBlcyBsZWlkIGJlaW0gbmFjaCBub3JkZW4KcmVubmVuIGRhdWVybmQgemVpdHR1bmcgenUgbGVzZW4gOikgKQoKYWxpIG56IG5uCnp1c2FtbWVuIG1pdDoKYWxpIG5uIG4KCQkJCVJvYWRydW5uZXIKKGhhYiBrZWluIHRmKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhtbW0gOikgKE9scHAsIDEzLiBOb3YgMTk5NSwgMTI6NTA6MzgpOgojISBybj1DcmVhdGl2ZSBydD04MTYwOTc0NTgKRGEgaWNoIHNjaG1hcnJuIG1laXN0ZW5zIG5pY2h0IGxlc2UsIGFiZXIgenVmYWVsbGlnIGRydWViZXJnZXN0b2xwZXJ0IGJpbiwKZWluZSBldHdhcyB2ZXJzcGFldGV0ZSBBbnR3b3J0IGF1ZiBEZWluZW4gQXJ0aWtlbCwgQ3JlYXRpdmUuCgphbHNvLCB1bnNlciBJbnN0aXR1dCBoZWlzc3QgSS4gZnVlciBQaG90b2dyYW1tZXRyaWUgdW5kIEZlcm5lcmt1bmR1bmcgKElQRikKdW5kIGhhdCB2aWVsZSBTVU5zIG1pdCBOYW1lbiB2b24gJ2lwZmEnIGJpcyAnaXBmejYnIHVuZCBlaW5pZ2UgYW5kZXJlLi4KRXMgaXN0IGRhYmVpIChnYXN0KSBlZ2FsLCBhbiB3ZWxjaGVuICdpcGYuLicgbWFuIG1haWwgc2NoaWNrdCwgZXMga29tbXQgYWxsZXMKYmVpbSBNYWlsRGFlbW9uIGFuLCBkZXIgc2llIHdlaXRlcmxlaXRldC4gQWxsZ2VtZWluZSBlbWFpbC1BZHJlc3NlIGlzdApoZXlkZXJAaXBmLmJhdS12ZXJtLnVuaS09a2FybHNydWhlLmRlLgpidWEtdmVybSBoZWlzc3QgdWVicmlnZW5zICJCYXVJbmdlbi4tVmVybWVzc3VuZ3N3ZXNlbiIgdW5kIHN0ZWh0IGZ1ZXIgZGllCmViZW5zb2JlbmFubnRlIEZha3VsYWV0LgphbGxlIEtsYXJoZWl0ZW4gYmVzZWl0aWd0PwoKR3J1c3MsIE9scHAKClAuUy4gIjolcy8oZ2FzdCkvKGZhc3QpIiAiOiVzL2J1YS9iYXUiCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2llZGVyIGFsaXMgOikgKEhhcmRpbCwgMTMuIE5vdiAxOTk1LCAxNTowNDo1OCk6CiMhIHJuPUNyZWF0aXZlIHJ0PTgxNjA5NTA5MAoKRGEga2FubiBpY2ggbWljaCBqYSBuaWNodCBsdW1wZW4gbGFzc2VuLi4uIDopCgpXaWUgd2FlcmUgZXMgbWl0OgoKJycgICAgID0gd2lyZiBraXNzZW4gbmFjaCBhc21vZGlzCmFsaSAgICA9IG5sIG5pbW0gYWxsZXMgYXVzIGxlaWNoZSAkKgpiZCAgICAgPSBiZXRyZXRlIGRydWRlbmZ1c3MgJCoKIGUzICAgICA9IGVtb3RlIHppZWh0IHNlaW5lbiBHcmlsbCBhdXMgZGVyIFRhc2NoZS4gRWluIGhhbGJlciBad2VyZyBoYWVuZ3QKbm9jaCBhbSBCcmF0c3BpZXNzIHVuZCBkdWZ0ZXQgaGVydm9ycmFnZW5kLiBEdSBoYWV0dGVzdCBmYXN0IEx1c3QsIERpciBub2NoCiduZSBTY2hlaWJlIGFienVzYWViZWxuLi4uCmZtICAgICA9IGZyYWdlIG1hc3NldXIgbmFjaCBoYW5kdHVjaApnZCAgICAgPSBnaWIgZHluYW1pdCBhbiBjYWx1bSAkKgogcHAgICAgID0gcGZsdWVjayBmcnVjaHQKIHFxICAgICA9IHNwaWVsZSBqb2pvCiBzc2EgICAgPSBzY2hpZWJlIHNjaGxpdHRlbiBhbgpwICAgICAgPSBwZmVpbCByaWVzZQogeHggICAgID0gcGZlaWwgcmllc2UKKG1hbiBzb2xsdGUgd2lya2xpYyBoYWIgdW5kIHp1IG1hbCBkdXJjaCBkZW4gZWlnZW5lbiBhbGlhcy1NdWVsbApkdXJjaHd1cnN0ZWxuKQoKc2ljaCBpbW1lciBub2NoIGFuIGRhenVnZWhvZXJpZ2UgR2VzY2hpY2h0ZW4gZXJpbm5lcm5kOgoKLUhhcmRpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFMSSAtIGVpbnMgZGVyIHdpY2h0aWdlbiBBcnQgOikgKE11cGZlbCwgMTMuIE5vdiAxOTk1LCAxOTo0Nzo0NSk6CiMhIHJuPUFyZGFuYSBydD04MTYyNDE1MjUKdmVycmF0IGRvY2ggbmljaHQgbWVpbmUgYWxpcyA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmxpdHRsZSBhbGlhc2VzIChDYXR3ZWF6bGUsIDEzLiBOb3YgMTk5NSwgMjE6MDA6MDQpOgpTdGltbXQuIElzdCB3aXJrbGljaCB3dW5kZXJzY2hvZW4sIHdhcyBkYSBzbyBhbGxlcyBkcmluc3RlaHQsIGluIHNvbmVyCnVyYWx0ZW4gYWxpYXNsaXN0ZSA6KQoKZGljZQk9IHhldmFsIHRlbGxfcm9vbShlbnZpcm9ubWVudChmaW5kX3BsYXllcigiY2F0d2VhemxlIikpLCJDYXR3ZWF6bGUKICAgICAgICAgIHd1ZXJmZWx0IGVpbmUgIisocmFuZG9tKDQpKzMpKyIuXFxuIik7CiBodwk9IDp6aWVodCBzZWluZSBIYWVuZGUgYmxpdHpzY2huZWxsIHp1cnVlY2suCiBoegk9IDpoYXV0IHp1Lgoga2lscm95CT0gc2FnIF9fb28wX18oKCogKikpX19Pb29fXwoga3cJPSBpbiAvZC9nZWJpcmdlL3Jvb20vYmVpc3Nob2VobGU2IHRyYW5zIHdob3JmaW4KIHBsYXR6CT0gZWNobyBFaW4gSHVuZCB6ZXJmZXR6dCBpbiB0YXVzZW5kIGtsZWluZSBGbGVpc2Noc3R1ZWNrY2hlbi4KIHphCT0gendpbmdlIGFyaWVuIGVjaG8gQXJpZW4gc2FndDogSmEKIHp0CT0gendpbmdlIHRvZXRlciBlY2hvIFRvZXRlciBzYWd0OiBKYQoKb2tvaywgZGllIG1laXN0ZW4gdmVyc3RlaHQgaWhyIHNvd2llc28gbmljaHQsIGFiZXIgSUNIIGZpbmRlIHNpZSB3dW5kZXItCnNjaG9lbiA6KQpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkludGVsbGlnZW50ZSBOUENzISAoVGFzaGEsIDEzLiBOb3YgMTk5NSwgMjI6MTY6MTgpOgpHcmFkIHBhc3NpZXJ0OgoKRGVyIGtsZWluZSBTd2FiZWRvb2RhaCB6ZWlndCBhdWYgc2VpbmUgUGVsemNoZW4gdW5kIGZyYWd0IERpY2g6Ck1vZWNodGVzdCBEdSBhdWNoIGVpbmVzPwpKYW5rYSBzYWd0OiBqYQpEdSBzYWdzdDogTkVJTiEKPiBEZXIgU3dhYmVkb29kYWggc2NobGVpY2h0IGhpbmF1cyBuYWNoIFN1ZWRlbi4KCgpUamEsIGVzIGdpYnQgYWxzbyBkb2NoIE5QQ3MsIGRpZSB3aXNzZW4sIGRhc3MgbWFuIE1hZ2llcm4gdW5kIG5pY2h0IFNwaWVsZXJuCnp1IGdlaG9yY2hlbiBoYXQhCgp6dWZyaWVkZW4sIFRhc2hhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOb2NoIG1hbCBmdWVyIEhvYm8gKFBhcmFjZWxzdXMsIDEzLiBOb3YgMTk5NSwgMjM6NTg6NTQpOgpbQWxsZ2VtZWluOkhvYm9dIHdhciBkYXMgc2Nob24gYWxsZXMvIDooCgpOZWluOgoKIyAgICAgIyAgIyMjIyMgICAjIyMjIyMKIyAgICAgIyAgIyAgICMgICAjCiAjICMgIyAgICMgICAjICAgIwogIyAjICMgICAjIyMjIyAgICMjIyMjIwogICMgIyAgICAjICAgIyAgICAgICAgIwogICMgIyAgICAjICAgIyAgICMjIyMjIwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2x1ZWNrIGdlaGFidCAoTWFuZ28sIDE0LiBOb3YgMTk5NSwgMDE6NTc6MjUpOgogIERlciBXZWdoaWVyIHNjaGxhZWd0IERpY2ggbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KTFA6IDgwIE1QOiAxOTEKRGVyIFZvbGxzdHJlY2tlciB3aWxsIERpciBkZW4gVG9kZXNzdG9zcyB2ZXJzZXR6ZW4hCiAgRGVyIFdlZ2hpZXIgZ3JlaWZ0IERpY2ggbWl0IGRlbSBWb2xsc3RyZWNrZXIgYW4uCncKICBEdSB2ZXJzdWNoc3QsIGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBvc2hpLXRlaXNoby11a2UgYWJ6dXdlaHJlbi4KTFA6IDgwIE1QOiAxOTAKICBEZXIgV2VnaGllciB6ZXJzY2htZXR0ZXJ0IERpY2ggaW4ga2xlaW5lIFN0dWVja2NoZW4uCkxQOiAzIE1QOiAxOTAKRGllIEFuZ3N0IGlzdCBzdGFlcmtlciBhbHMgRHUgLi4uIER1IHdpbGxzdCBudXIgbm9jaCB3ZWcgaGllci4KRWluIFdlZ2hpZXIgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgpMaWNodHVuZyBpbSBHcmltbXN3YWxkLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCkRpZSBMZWljaGUgdm9uIERlU2FTVGEuClNob2tva2FpIEthcmF0ZWthIEppbURpR3JpeiAsIEFuZmFlbmdlci4KRHUgc3RlbGxzdCBlcmxlaWNodGVydCBmZXN0LCBkYXNzIER1IGdlcmFkZSBlYmVuIG5vY2gKbWl0IDMgTGViZW5zcHVua3RlbiBmbGllaGVuIGtvbm50ZXN0LgpEZVNhU1RhIHdhbmt0IG5hY2ggTm9yZGVuLgpMUDogNCBNUDogMTkxCltUb2Q6XSBFaW4gV2VnaGllciBoYXQgZ2VyYWRlIEphbmljZSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBXZWdoaWVyXSBHb3RjaGEhCgoKaG1tIHRyb3R6ZGVtIG5vY2htYWwgQmVpbGVpZCBKYW5pY2UuCgoKTWFuZ28sIGRlciBqZXR6dCB3aWVkZXIgZXJuc3QgbWFjaHQuCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbm4gZnJ1ZWggYW0gTW9yZ2VuIChCbGVlbHVtcGUsIDE0LiBOb3YgMTk5NSwgMDY6MDg6MzYpOgoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSoKfCAgICAgICAgICAgIE1vcmdlbkdyYXVlbiwgTFBNdWQgMDMuMDIuMUAxMjAgKEFteWxhYXIpICAgICAgICAgICB8CnwgICAgICAgQWRyZXNzZTogbXVkLnVuaS1tdWVuc3Rlci5kZSAoMTI4LjE3Ni4xMjEuNzQpICA0NzExICAgICAgfAp8ICAgICAgVXB0aW1lOiAzIFRhZ2UsIDggU3R1bmRlbiwgNDYgTWludXRlbiB1bmQgNTAgU2VrdW5kZW4gICAgIHwKfCAgICAgICAgICAgICAgICAgICAgICAgTW9yZ2VuR3JhdWVuIE11ZGxpYiAgICAgICAgICAgICAgICAgICAgICB8CiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKgpbU10gRWluZmFjaCBCbGVlbHVtcGUgZGVyIElkbGVyIC0gRWxmIC0gW011ZW5jaGVuXQoqKiogRXMgYmVmaW5kZXQgc2ljaCBnZXJhZGUgMSBTcGllbGVyIGluIE1vcmdlbkdyYXVlbi4KIER1IGhvZXJzdCBkaWUgVWhyIHNjaGxhZ2VuOiBFcyBpc3QgamV0enQgNiBVaHIuCgpFcyBnaWJ0IHdpcmtsaWNoIFplaXRlbiB3byBtYW4gaGllciBBTExFSU5FIGlzdC4KCjotKSkKCkV1ZXIgS29uc3RydWt0aW9uc2dlc3RyZXNzdGVyIEJsZWUuLi4gZGVyIG1pdCBkZXIgaGV1dGlnZW4gRGF1ZXJzaXR6dW5nCmVuZGxpY2gKc2VpbmUgVHJpbWVzdGVyYXJiZWl0IGZlcnRpZyBoYXQuICggTm9jaCBlaW4gcGFhciBTdHVuZGVuIGRhbm4gaXN0IGVzCmdlc2NoYWZmdC4KCkV1ZXIgQmxlZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5vY2ggbWFsIFZlcmVpbi4uLiAoUnluZSwgMTQuIE5vdiAxOTk1LCAxMzoyNDo0MSk6CiMhIHJuPUhhcmRpbCBydD04MTYzMzEzOTgKRmluZGUgaWNoIGFldXNzZXJzdCBHZXNjaG1hY2t2b2xsLCBlaW5lbiBlcm5zdGdlbWVpbnRlbiBBcnRpa2VsIHZvbgpSdWRpcmF0dGVyIHp1bSBWZXJlaW4gbmFjaCBTY2htYXJybiB6dSB2ZXJsZWdlbiwgSGFyZGlsLiBEZXIgTUctdmVyZWluIGlzdApuaWNodCBzb24gQ2x1YiB2b24gSGFsbG9kcmlzIHdpZSBkZXIgV29scGljbHViLCB1bmQgZXIgYnJhdWNodCBNaXRnbGllZGVyLgpWaWVsbGVpY2h0IGthbm4gbWFuIGphIEF1ZnJ1ZmUgd2llIGRlbiB2b24gUnVkaSBlaW5mYWNoIG1hbCB1bmtvbW1lbnRpZXJ0IGRvcnQKbGFzc2VuIHdvIHNpZSBzaW5kLgoKS29wZnNjaHVldHRlbG5kCgpSeW5lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYWphLCB3aWUgd2Foci4uLiAoWWVuZGksIDE0LiBOb3YgMTk5NSwgMTM6NTQ6MDQpOgoKRHUgc2Fnc3Q6IEltbWVyIGRpZSBBdWdlbiBvZmZlbmhhbHRlbiEgV2VubiBEdSBpcmdlbmR3byBlaW5lIExlZGVyamFja2Ugb2RlcgpEdSBzYWdzdDogZWluZSBBeHQgb2RlciBhZWhubGljaGVzIGhlcnVtbGllZ2VuIHNpZWhzdCwgZGFubiBrYW5uc3QgRHUgZXMgRGlyCkR1IHNhZ3N0OiBuZWhtZW4uIEZhbGxzIGFsbGVyZGluZ3MgQW56ZWljaGVuIGJlc3RlaGVuLCBkYXNzIGRvcnQga3VyeiB6dXZvcgpEdSBzYWdzdDogamVtYW5kIGdlc3RvcmJlbiBpc3QsIHNlaGVuIGVzIGRpZSBtZWlzdGVuLi4uCnUgc2Fnc3Q6IC4uLiBTcGllbGVyIG5pY2h0IGdlcm4sIHdlbm4gbWFuIGlobmVuIHNvZm9ydCBkaWUgQXVzcnVlc3R1bmcgdm9uCkR1IHNhZ3N0OiBkZXIgbm9jaCB3YXJtIGVuIExlaWNoZSBrbGF1dC4KRGVyIEVsZmVud2FlY2h0ZXIgZ2VodCBuYWNoIFdlc3Rlbi4KRGllIEdhZXJ0bmVyaW4gc2FndDogSW1tZXIgZGllc2UgYm9lc2VuIE1lbnNjaGVuLgoKCipraWNoZXIqIEd1dGVyIHRyaWdnZXIsIFF1YXNpbW9kbyEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZ2x1ZWNrIGdlaGFidCAoSmVycmljbywgMTQuIE5vdiAxOTk1LCAxNDozMTo1NCk6CiMhIHJuPU1hbmdvIHJ0PTgxNjMxMDY0NQppY2ggZ2xhdWJlIGljaCBtdXNzIGF1Y2ggbWFsIGRlbgonb3NoaS10ZWlzaG8tdWtlYAp1ZWJlbixiZXZvciBpY2ggenVtIHdlZ2hpZXIgZ2VoZSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVybGluLCBWYXJpYW50ZSB4eHggKEhpZ2hsYW5kZXIsIDE0LiBOb3YgMTk5NSwgMTQ6MzQ6NTgpOgpEdSB0ZWlsc3QgTWVybGluIG1pdDogV2FzIGljaCBhYnNvbHV0IG5pY2h0IHdpc3NlbiB3aWxsLCBpc3QsIHdvIER1IGdlcmFkZQpEdSB0ZWlsc3QgTWVybGluIG1pdDogYmlzdC4KWy9wbGF5ZXJzL2hpZ2hsYW5kZXJdIFdhdCBudT8gTWVybGluIHJ1ZnQ6IEljaCBiaW4gaW4gZGVyIEViZW5lLgogIEFyZ2wgOj4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoWmVwaHlyLCAxNC4gTm92IDE5OTUsIDE0OjM3OjIzKToKW1NlaGVyOkxlQ2h1Y2tdIGJsb2VkZSBmZXVlcmdlc2l0ZXIKW1RvZDpdIEVpbiBIeWRyYWtvcGYgaGF0IGdlcmFkZSBMZWNodWNrIHVtZ2VicmFjaHQuCltUb2Q6RWluIEh5ZHJha29wZl0gaHNzc3NzcwoKS2xlaW5lIFZlcndlY2hzbHVuZz8gOikKWmVwaHlyLCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ldWxpY2ggdm9uIGRlciBIQVogKEFyYW55YSwgMTQuIE5vdiAxOTk1LCAxNzowMzo0MSk6CiMhIHJuPUhha2tpa2t0IHJ0PTgxNjE4MzU2OApXaWVzbz8gV2VubiBpY2ggIm1vcmdlbnMiIGlucyBNRyBrb21tZSwgbGVzIGljaCBhdWNoIGltbWVyIGRpZSBaZWl0dW5nLi4uCk51ciBkYXNzIGljaCBkYXMgb2huZSAyLVdvY2hlbi1Lb3N0ZW5sb3MtWmVpdHVuZ3NzY2hub3JyLURhdWVyIG1hY2hlLiA6KQoKQXJhbnlhCk5OTgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTm9jaCBtZWhyIEFsaXMuLi4gKFJvY2h1cywgMTQuIE5vdiAxOTk1LCAxNzoyMzoxMik6CmFsaWFzIGNhcHMgeGRvIDUwI3RlaWxlICQxIG1pdCBERUlORSBDQVBTLUxPQ0stVEFTVEUgS0xFTU1UIQpBdWVzc2Vyc3QgbnVldHpsaWNoIGZ1ZXIgTGV1dGUsIGRpZSBudXIKaW4gR3Jvc3NidWNoc3RhYmVuIHJ1ZmVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTm9jaCBtZWhyIEFsaXMuLi4gKEFzbW9kaXMsIDE0LiBOb3YgMTk5NSwgMTc6MjU6NTMpOgojISBybj1Sb2NodXMgcnQ9ODE2MzY2MTkyCmNhcHMgVG9kICAgPz8/Pwo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOb2NoIG1laHIgQWxpcy4uLiAoQ3JlYXRpdmUsIDE0LiBOb3YgMTk5NSwgMTc6MjY6MjIpOgojISBybj1HcmltbWJvcm4gcnQ9ODE2MzY2Mjc2CmVpbmUgdm9yLXNjaGxlaWZlPyBLZWluZSBGb3ItU2NobGVpZmU/IDopCkF1c3NlcmRlbSBnZWh0IHhkbyAxMDAjIGF1Y2ggOikKYmVpIG1pciB6dW1pbmRlc3QuCgotQ3JlYS0KeGRvIDEwMCMgdGVpbGUgbWVybGluIG1pdCB3byBiaXN0IER1IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqZ3JpbnMqIChDcmVhdGl2ZSwgMTQuIE5vdiAxOTk1LCAxNzo0MTowNyk6CgpuZXVsaWNoOgpTZW1pcmEgdmVya251ZGRlbHQgc2ljaCB6dSBpaHJlbSBFaXNiYWVybGkgaW5zIFJlaWNoIGRlcgpOZXR6dG90ZW4uCgpEYWJlaSBiaW4gaWNoIG5vY2ggZWluZ2Vsb2dndCA6KQotQ3JlYS0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggZGFjaHRlIGljaCB3YWVyIHNpY2hlciAoVmFuaXIsIDE0LiBOb3YgMTk5NSwgMjA6MjU6NDcpOgoKV2llIHdhciBkYXMgOiB3ZW5uIG1hbiBmbGllZ3QgbWVya3QgbWFuIG5pY2h0cyBkZXIgQmV3ZWd1bmcgZGVyIEVyZGUsCm9kZXIgZG9jaCA/CgpEYXMgQmFieSBlcmhlYnQgc2ljaCBtaXQgZ2V3YWx0aWdlbiBGbHVlZ2Vsc2NobGFlZ2VuIGluIGRpZSBMdWZ0LgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgpEYXMgRmx1Z2RyYWNoZW5iYWJ5IHN0ZWlndCBhdWYgZWluZW0ga3JlaXNlbmRlbiBLdXJzIGltbWVyIGhvZWhlci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWVybGluLCBWYXJpYW50ZSB4eHggKFBhcmFjZWxzdXMsIDE0LiBOb3YgMTk5NSwgMjA6NDA6MzIpOgojISBybj1IaWdobGFuZGVyIHJ0PTgxNjM1NjA5OApzIG1lcmxpbiB3byBiaXN0IGR1CkR1IHNwdWVyc3QgZWluZW4gc2VuZ2VuZGVuIFNjaG1lcnouCkR1IHNhZ3N0OiBtZXJsaW4gd28gYmlzdCBkdQo+IE1lcmxpbiBydWZ0OiBJY2ggYmluIGltIEdlYmlyZ2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppY2ggYXVjaCA6KSAoTGVjaHVjaywgMTQuIE5vdiAxOTk1LCAyMTozMDo0NCk6CnRtIG1lcmwgaHVodQpEdSB0ZWlsc3QgTWVybGluIG1pdDogaHVodQoKbml4Li4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluIEtub3BmLi4uID8gKEphcXVlbmV0dGEsIDE0LiBOb3YgMTk5NSwgMjE6Mzg6MzEpOgoKR3JhZGUgYXVmIGRlbSBXZWcgdm9yIGRlbSBIb2JiaXRkb3JmLi4uCgpzY2hhdQpEdSBtdXNzdCBzY2hvbiBTdHVuZGVuIGR1cmNoIGRpZXNlbiBXYWxkIGdlbGF1ZmVuIHNlaW4gdW5kIGVzIGlzdCBub2NoIGltbWVyCmtlaW4gRW5kZSBpbiBTaWNodC4gV29oaW4gZHUgYXVjaCBzY2hhdXN0OiB1ZWJlcmFsbCBudXIgQmFldW1lLCBCYWV1bWUgdW5kCm5vY2htZWhyIEJhZXVtZS4gRGlyIHdpcmQgbmljaHQgdmllbCBtZWhyIHVlYnJpZ2JsZWliZW4sIGFscyBkZW0gc2NobWFsZW4KUGZhZAp3ZWl0ZXIgbmFjaCBTdWVkb3N0ZW4gb2RlciBOb3Jkd2VzdGVuIHp1IGZvbGdlbi4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWR3ZXN0ZW4sIG5vcmR3ZXN0ZW4gdW5kIHN1ZWRvc3Rlbi4KRWluIEtub3BmLgoKCnVudCBrbm9wZgpEaWVzZXIgS25vcGYgaXN0IGRhenUgZGEsIGRlbiBlaW5nYW5nIHp1bSBIb2JiaXRkb3JmIHp1IG9lZmZuZW4sIHdlbm4gZXIKdmVyc2Nod3VuZGVuIHNlaW4gc29sbHRlLiBEYW5uIGVpbmZhY2ggZGVuIEtub3BmIGRydWVja2VuLgoKaWRlbnRpZml6aWVyZSBrbm9wZgpFUlJPUjogKHMpcHJpbnRmKCk6IGluY29ycmVjdCBhcmd1bWVudCB0eXBlIHRvICVzLgoKZGV1dGUga25vcGYKRHUgc2llaHN0IGVpbmVuIEZlaGxlciBpbSBSYXVtLVplaXQtR2VmdWVnZS4KCipzY2htdW56ZWwqCkphcXVlbmV0dGEgZGllIFRpZXJmdWVocmVyaW4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWluIEtub3BmLi4uID8gKFBhcmFjZWxzdXMsIDE0LiBOb3YgMTk5NSwgMjE6Mzk6NTQpOgojISBybj1KYXF1ZW5ldHRhIHJ0PTgxNjM4MTUxMQpOYSBndXQsIGRlciBLbm9wZiBpc3Qgd2VnLiBXZW5uIGRlciBFaW5nYW5nIHp1bSBIb2JiaXRkb3JmIHZlcnNjaHdpbmRldCwKZGFubiBtdWVzc3QgaWhyIGhhbHQgc2VsYmVyIHNlaGVuLCB3aWUgaWhyIGRlbiB3aWVkZXIgaGlua3JpZWd0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaWNoIGF1Y2ggOikgKEVuZ3l3dWNrLCAxNC4gTm92IDE5OTUsIDIyOjIxOjE1KToKIyEgcm49TGVjaHVjayBydD04MTYzODEwNDQKVW5kIG5vY2ggZWluZW4uLi46CkR1IHNwdWVyc3QgZWluZW4gc2VuZ2VuZGVuIFNjaG1lcnouCkR1IHRlaWxzdCBNZXJsaW4gbWl0OiBLYW5uc3QgRHUgbWlyIHNhZ2VuLCB3byBKb2YgaXN0Pwo+IE1lcmxpbiBydWZ0OiBJY2ggYmluIGltIEdlYmlyZ2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGljaCBhdWNoIDopIChQYXJhY2Vsc3VzLCAxNC4gTm92IDE5OTUsIDIyOjU1OjA5KToKIyEgcm49RW5neXd1Y2sgcnQ9ODE2Mzg0MDc1Ck9oIHdpZSBzY2hvZW46CnRtIG1lcmxpbiB3byBkdSBhdWNoIGJpc3QsIGJsZWliIGRvcnQKRHUgc3B1ZXJzdCBlaW5lbiBzZW5nZW5kZW4gU2NobWVyei4KRHUgdGVpbHN0IE1lcmxpbiBtaXQ6IHdvIGR1IGF1Y2ggYmlzdCwgYmxlaWIgZG9ydAo+IE1lcmxpbiBydWZ0OiBJY2ggYmluIGltIEdlYmlyZ2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogIkdvZXR0ZXIiIChUenVpb3AsIDE1LiBOb3YgMTk5NSwgMTA6Mjk6NTQpOgojISBybj1HcmltbWJvcm4gcnQ9ODE2NDI1NDkwCkFiZXIgR3JpbW1pLCB3ZW5uIGVzIGtlaW5lIEdvZXR0ZXIgZ2lidCwgd2VyIGRydWVja3QgZGFubiBkYXVlcm5kIGF1ZiBkZW4KUmVzZXRrbm9wZiA/CgpUenVpb3AKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAiR29ldHRlciIgKEFsaW5lLCAxNS4gTm92IDE5OTUsIDEzOjI5OjE1KToKIyEgcm49R3JpbW1ib3JuIHJ0PTgxNjQyNTQ5MApIYWxsbyBHcmltbWJvcm4sCgpzZWl0IHdhbm4gaXN0IE5pY2h0cyB3YXNzZXJkaWNodD8gSGFzdCBEdSBpaG4gZ2VmcmFndD8KCkFsaW5lIChnZWh0IE5pY2h0cyBzdWNoZW4sIHVtIGRhcyB6dSB0ZXN0ZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogIkdvZXR0ZXIiIChOYXNpbSwgMTUuIE5vdiAxOTk1LCAxNTowOTowOSk6CiMhIHJuPUdyaW1tYm9ybiBydD04MTY0MjU0OTAKRWluICJrd2VyIEdvdHQiIHJlaWNodCBkb2NoIHNjaG9uLCB1bSB6dSBzZWhlbiwgZGFzcyBlcyBrZWluZSBHb2V0dGVyIGdpYnQuCgpHcnVzcywgTmFzaW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAiR29ldHRlciIgKFRhc2hhLCAxNS4gTm92IDE5OTUsIDE2OjU0OjQ3KToKIyEgcm49R3JpbW1ib3JuIHJ0PTgxNjQyNTQ5MApOaWNodHMgaXN0IHdhc3NlcmRpY2h0PyBNdXNzIGRlciBkYW5uIG5pZSBhdWZzIEtsbz8gT2RlciBudXIsIHdlbm4gaWhtIGRhcwpXYXNzZXIgYmlzIHp1bSBIYWxzIHN0ZWh0PyAoSW5uZW4gbWVpbmUgaWNoKQoKZ3J1ZWJlbG5kLCBUYXNoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmtpY2hlciogKENyZWF0aXZlLCAxNi4gTm92IDE5OTUsIDExOjMwOjM3KToKCkVpbiBIdXQgZnVlciBBbGluZS4uLgpbU2VoZXI6V2FyZ29uXSBTb2xsZW4gd2lyIG1hbCBkZW4gSHV0IHJ1bWdlaGVuIGxhc3Nlbj8KCmZpbmdlciBodXQKCkh1dCBpc3QgZWluZ2Vsb2dndCwKdW5kIHp3YXIgdm9uOiBjaG9tc2t5LnVuaS1tdWVuc3Rlci5kZSAoMTI4LjE3Ni4xMjEuMTApIFtNdWVuc3Rlcl0uClZvbGxlciBOYW1lOiBEZXIgSHV0IGdlaHQgcnVtClJhc3NlOiBNZW5zY2gsICBHaWxkZTogQWJlbnRldXJlciwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogMDA6MDQ6MTQgICBTcGllbGVybGV2ZWw6IDEKRS1NYWlsLUFkcmVzc2U6IG5vbmUKS2VpbmUgLnBsYW4tRGF0ZWkuCkh1dCB0cml0dCBhdXMgZWluZXIgU2Nod2VmZWx3b2xrZS4KCkh1dCBuaW1tdCBlaW5lbiBIZWxtLgoKZXRjIGV0YyA6KQotQ3JlYS0sIGltbWVyIG5vY2gga2ljaGVybmQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VyYWRlIGltIERzY2h1bmdlbCAoU2lsdmFuYSwgMTYuIE5vdiAxOTk1LCAxMzoxMjoyNSk6CltUb2Q6XSBFaW4gSGV4ZXIgaGF0IGdlcmFkZSBQcmVkYXRvciB1bWdlYnJhY2h0LgpbVG9kOl0gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIFR0d2VlZyB1bWdlYnJhY2h0LgpBdXMgZGVyIEZlcm5lIGhvZXJzdCBEdSBkZW4gVG9kZXNzY2hyZWkgZWluZXMgYW5kZXJlbiBBYmVudGV1cmVycy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZhbHNjaCB2ZXJzdGFuZGVuPz8/PyAoTWllemUsIDE2LiBOb3YgMTk5NSwgMTM6NDg6MTMpOgoKL0ViZW4gaW4gZGVyIEFiZW50ZXVyZXJnaWxkZS4uLi4uCk1pZXplIHRyaXR0IEFydHJhbSBtYWwgZ2V3YWx0aWcuCj4gR2FzdDIgYmV0cml0dCBkaWVzZSBXZWx0LgpHYXN0MiBnZWh0IG5hY2ggTm9yZGVuLgpDeU1vbmsgc3RpbW10IERpciB6dS4KQXJhbSB2ZXJsYWVzc3QgZGllc2UgV2VsdC4KCi9mdWVobHRlIGVyIHNpY2ggamV0enQgYW5nZXNwcm9jaGVuPz8/PwoKZWluZSByYXRsb3NlIE1pZXplCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqZ3JpbnMqIChDcmVhdGl2ZSwgMTYuIE5vdiAxOTk1LCAxNDowMjowNik6CgpMb2NvLCBrb2VubnRlc3QgRHUgbWFsIGVpbiBDYzogcSBpZ25vcmllcmVuPyBEYXMgcGFzc2llcnQgbWlyIGlyZ2VuZHdpZQpzdGFlbmRpZyA7KSBBYmVyIGljaCBnbGF1YiwgZXMgc2luZCBub2NoIG1laHIgdW50ZXJ3ZWdzLCBkaWUgZGF1ZXJuZCBibG9lZGUKQnJpZWZlIGFuIGRlbiBFbXBmYWVuZ2VyIHEgbG9lc2NoZW4gOykKT2RlciBrYW5uIG1hbCB3ZXIgZWluZW4gU3BpZWxlciBuYW1lbnMgJ3EnIGVpbmxvZ2dlbj8gKmtpY2hlcioKCi1DcmVhLSwgbWFuY2htYWwgZWluZmFjaCBibG9lZC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogKmdyaW5zKiAoQ3JlYXRpdmUsIDE2LiBOb3YgMTk5NSwgMTQ6MDM6NDApOgojISBybj1IYXJkaWwgcnQ9ODE2NTI2OTcxCgp2aWVsbGVpY2h0IFFueWJlcnRoPyA7KQoKLUNyZWEtCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogKmdyaW5zKiAoWWVuZGksIDE2LiBOb3YgMTk5NSwgMTQ6MDU6MDQpOgojISBybj1IYXJkaWwgcnQ9ODE2NTI3MDc4CgpURVNUSUU/Cgoqa2ljaGVyKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVwcHMgKENyZWF0aXZlLCAxNi4gTm92IDE5OTUsIDE0OjA4OjQyKToKCk5ldWxpY2guLi4KClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBNaWV6ZS4KTGVhbmRlciB0cm9lc3RldCBNaWV6ZS4KTWllemUgd2VpbHQgd2llZGVyIHVudGVyIGRlbiBMZWJlbmRlbi4KCkxlYW5kZXIgaGF0IHNjaGVpbnRzIG1hZ2lzY2hlIEtyYWVmdGUgOykKCi1DcmVhLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6ICpncmlucyogKFllbmRpLCAxNi4gTm92IDE5OTUsIDE0OjExOjIzKToKIyEgcm49SGFyZGlsIHJ0PTgxNjUyNzQyOQogRGFzIGlzdCB6dSBzY2hhZmZlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICJHb2V0dGVyIiAoV2FyZ29uLCAxNi4gTm92IDE5OTUsIDE0OjEyOjIzKToKIyEgcm49VGFzaGEgcnQ9ODE2NDUwODg3CldhaHJzY2hlaW5saWNoIGlzdCBuaWNodCBOaWNodHMgd2Fzc2VyZGljaHQsIHNvbmRlcm4gbnVyIHNlaW5lIEhvc2VuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogKmdyaW5zKiAoSGlnaGxhbmRlciwgMTYuIE5vdiAxOTk1LCAxNDoxNDoyNCk6CiMhIHJuPUNyZWF0aXZlIHJ0PTgxNjUyNzYyMgpBYmVyIGRpZXNtYWwgYXVjaCBBbGtmcmVpISBOZXh0IHdhcjogSSBzYXkgQ09LRSEKICBIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiAqZ3JpbnMqIChZZW5kaSwgMTYuIE5vdiAxOTk1LCAxNDoxNTo0Myk6CiMhIHJuPUhpZ2hsYW5kZXIgcnQ9ODE2NTI3NjY0CgpObyB3YXkhIEJlZXIgaXQgaXMhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6ICpncmlucyogKEFudGhlYSwgMTYuIE5vdiAxOTk1LCAxNDoxOTowNCk6CiMhIHJuPUNyZWF0aXZlIHJ0PTgxNjUyNzg2MwpUamEuLi4gRnVlciBIaWdoIGdpbHQ6IGVudHdlZGVyIEFsa2ZyZWkgb2RlciB3YXMgZ2VzY2hlaXRlcyAoei5CLiBXZWluKQpBbHNvLi4uIGJlaSBSZV4xMDAwMCBnaWJ0IGVzIGRhbm4gbmVuIEthc3RlbiBXZWluPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6ICpncmlucyogKEhha2tpa2t0LCAxNi4gTm92IDE5OTUsIDE0OjUwOjU3KToKIyEgcm49Q3JlYXRpdmUgcnQ9ODE2NTI4MDQyCmhtLi4ud2FlcmUgbmljaHQgbWFsIGVpbiBlaW5oZWltaXNjaGVzIEJpZXIgYW5nZWJyYWNodCA6XykKSWNoIGRlbmtlIGRhIGFuIFJvbGluY2suLi4uZGFzIGhhdCB3ZW5pZ3N0ZW5zIGVpbmVuIEJlenVnIHp1IE11ZW5zdGVyIDpfKQpIYWtraWtrdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6ICpncmlucyogKFllbmRpLCAxNi4gTm92IDE5OTUsIDE0OjU3OjQ0KToKIyEgcm49SGFra2lra3QgcnQ9ODE2NTI5ODU3CgpOb2UsIGRhIHNjaG9uIGVoZXIgUGlua3VzLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiAqZ3JpbnMqIChIYWtraWtrdCwgMTYuIE5vdiAxOTk1LCAxNTowMTo1Nik6CiMhIHJuPVllbmRpIHJ0PTgxNjUzMDI2NApuYSBqYSBpY2ggYmluIGphIGluIEJ1cmdzdGVpbmZ1cnQgenVyIFNjaHVsZSBnZWdhbmdlbjogZGEgaXN0IGRpZQpSb2xpbmNrLUJyYXVlcmVpIGdlbmF1IDEwMCBtIHdlaXRlciA7XykKYWJlciBQaW5rdXMgZ2VodCBhdWNoLCBzb2xhbmdlIGVzIG5pY2h0IEdlcm1hbmlhIGlzdCEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6ICpncmlucyogKEdyaW1tYm9ybiwgMTYuIE5vdiAxOTk1LCAxNTozMToxNyk6CiMhIHJuPUNyZWF0aXZlIHJ0PTgxNjUzMTE5MQoKV2llIHdhZXJzIG1pdCBlaW5lciBydWJyaWsgImNvdW50ZG93biIgKG9kZXIgdmllbG1laHIgImNvdW50dXAiKSwgc28gZGFzcwpkaWVzZSBSdWJyaWsgbWVociBmdWVyIHNlcmlvZXNlbiBzY2htYXJybiBnZW51dHp0IHdlcmRlbiBrYW5uPwoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogKmdyaW5zKiAoWWVuZGksIDE2LiBOb3YgMTk5NSwgMTU6MzI6MDApOgojISBybj1HcmltbWJvcm4gcnQ9ODE2NTMyMjc3CgpHdXRlIElkZWUsIHJpY2h0ZSBtYWwgZWluLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiAqZ3JpbnMqIChDdWNodWxsaW4sIDE2LiBOb3YgMTk5NSwgMTU6MzU6NTIpOgojISBybj1HcmltbWJvcm4gcnQ9ODE2NTMyNDI3CgpBbHMgb2IgRXJ6bWFnaWVyIFphcmRveiBkYXMgc2VpbiBtb2VjaHRlLgoKQ2RSLi0KKGkuQS4gTk5OIDstKSApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogKmdyaW5zKiAoUmFmZmksIDE2LiBOb3YgMTk5NSwgMTU6NDc6NTcpOgojISBybj1IaWdobGFuZGVyIHJ0PTgxNjUyNzY2NAoKV0FZLiBDT0tFLiBXQVkuCgpHcnVzcwpILgoobmltbXQgZWluZW4gdGllZmVuIFNjaGx1Y2sgYXVzIHNlaW5lbiBUaGlyc3RidXN0ZXIgNTJvei4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogKmdyaW5zKiAoUmFmZmksIDE2LiBOb3YgMTk5NSwgMTU6NTA6NTUpOgojISBybj1DcmVhdGl2ZSBydD04MTY1MzI4MDEKCkVybnN0aGFmdGVuIFNjaG1hcnJuID8gR2lnbC4uLgoKR3J1c3MKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiAqZ3JpbnMqIChSYWZmaSwgMTYuIE5vdiAxOTk1LCAxNjozMzoyOCk6CiMhIHJuPUNyZWF0aXZlIHJ0PTgxNjUzNDY1MgoKVW5kIHdlciBiZWtvbW10IGRpZSBGbGFzY2hlID8KCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgo6bWVsZGV0IHNpY2ggZnJlaXdpbGxpZy4uLiAoU2VtaXJhLCAxNi4gTm92IDE5OTUsIDE2OjQwOjUyKToKCihrYW5uIGFiZXIgamUgbmFjaCBCaWVyIGVpbiBmZWhsZXIgc2VpbiA6KSAgKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6ICpncmlucyogKFJhZmZpLCAxNi4gTm92IDE5OTUsIDE3OjE3OjA3KToKIyEgcm49SGFyZGlsIHJ0PTgxNjUzODUwNQpIbW1tbW0gbmEgZGFubiBtdXNzIGljaCBtYWwgaGlubWFjaGVuLgoKR3J1c3MKSC4KTk5OIE5OTiBOTk4gKGtyaWVnIGljaCBkYWZ1ZXIgYWxsZSAzID8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNDogKmdyaW5zKiAoU2VtaXJhLCAxNi4gTm92IDE5OTUsIDE3OjIxOjQxKToKIyEgcm49SGFyZGlsIHJ0PTgxNjUzODg3MwpuaXggZGEuLi5pY2ggdWViZSBoYWx0IG5vY2gKCjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MDogKmdyaW5zKiAoU2VtaXJhLCAxNi4gTm92IDE5OTUsIDE3OjI3OjAxKToKIyEgcm49Q3JlYXRpdmUgcnQ9ODE2NTM5MTY0ClRyb2VzdGUgRGljaCBDcmVhLCBMaW56IGdsZWljaHQgZGFzIExhZyBtaXQgYW5kZXJlbiBuZXR0ZW4gRGluZ2VuIGF1cy4uLmFiZXIKd2FzIGhhdCBkYXMgbWl0IGRlbSBCaWVyIHp1IHR1bj8KClMuKioKbm4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42MTogKmdyaW5zKiAoQW50aGVhLCAxNi4gTm92IDE5OTUsIDIzOjI2OjQxKToKIyEgcm49QXNtb2RpcyBydD04MTY1NDEzMDgKTmEgc293YXMuLi4gZGEgaXN0IGphIGVpbiBhbmRlcmVyIEFydGlrZWwgYWxzIGVpbiAqZ3JpbnMqIGFtIFNjaGx1c3Mgdm9uClNjaG1hcnJuLi4uIGRhc3MgbXVzcyBnbGVpY2ggZ2VhZW5kZXJ0IHdlcmRlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcmUtd2lldmllbD8gKENhdHdlYXpsZSwgMjEuIE5vdiAxOTk1LCAxODo1NzoyNyk6CkhpIQoKQW5mYW5ncyB3YXIgZXMgd2l0emlnLgpWb3IgZGVyIEZldGUgc29nYXIga29taXNjaC4KRGFzIGpldHp0IGlzdCBlcnp3dW5nZW4gdW5kIG5lcnZ0b2V0ZW5kIDooCkFsc28gbGFzc3QgZXMgYml0dGUhCllvdXJzIHRydWx5LAogICAgICAgQ2F0d2VhemxlICAobGFlc3N0IHNlaW5lIG1hZ2lzY2hlbiBNdWtraWVzIHNwaWVsZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbGZlbiBzaW5kIGRvb2YgdW5kIGx1ZWdlbiAoQXNtb2RpbmEsIDIyLiBOb3YgMTk5NSwgMDE6MzM6NTUpOgpOZXVsaWNoIGltIEVsZmVubGFkZW4KCkRlciBLYXVmbWFubiBzYWd0OiBTYWdlbiBTaWUgbWlyIHdhcyBTaWUgdmVya2F1ZmVuIHdvbGxlbiBpY2ggemFobGUKRGVyIEthdWZtYW5uIHNhZ3Q6IGVpbmVuIGZhaXJlbiBQcmVpcy4KLT52ZXJrYXVmZSBoZWxtCk5hY2ggZGVyIGFrdHVlbGxlbiBNYXJrdGxhZ2Uga2FubiBpY2ggRGlyIGRhZnVlciBudXIgMSBNdWVuemUgYmlldGVuLCBvYndvaGwKZWluIExpY2h0aGVsbSBlaWdlbnRsaWNoIDUwMCBNdWVuemVuIHdlcnQgd2FlcmUuIFdpbGxzdCBEdSBlcyBtaXIgZGFmdWVyCnVlYmVybGFzc2VuPyAoamEvbmVpbikKCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFzbW9kaXMgPyAoU2lib3JpdCwgMjIuIE5vdiAxOTk1LCAwMjoxODozNik6CgpPaywgaWNoIHdlaXNzIGljaCB3YXIgc2Nob24gemllbWxpY2ggbGFuZ2UgbmljaHQgbWVociBpbiBNRy4gQWJlciB3YWVocmVuZAplaW5lcyBLYWVtcGZlcyBpbiBXYW5nYWRvcmYgcGFzc2llcnRlIGZvbGdlbmRlczoKCkR1IHN0ZWNrc3QgZGFzIExhbmdzY2h3ZXJ0IHp1cnVlY2suCj4gICBEdSBncmVpZnN0IGRpZSBNYW1hIGVpbmVtIGtsZWluZW4gR2VoZWltYWdlbnRlbmtvZmZlciBhbiBhbi4KICBEdSB2ZXJmZWhsc3QgZGllIE1hbWEuCiAgRGllIE1hbWEgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIE51ZGVsaG9seiBhbi4KICBEaWUgTWFtYSB0cmlmZnQgRGljaCBoYXJ0LgpEdSBoYXN0IGpldHp0IDEzMyBMZWJlbnNwdW5rdGUgdW5kIDE0OCBNYWdpZXB1bmt0ZS4KRHUgd2lyZnN0IGVpbmVuIEZldWVyYmFsbCBuYWNoIGRlciBNYW1hLgpEdSBoYXN0IGpldHp0IDEzMyBMZWJlbnNwdW5rdGUgdW5kIDEyOCBNYWdpZXB1bmt0ZS4KPiBEdSB6dWVja3N0IGRhcyBMYW5nc2Nod2VydC4KCkRlaW5lIGFyYmVpdCBBc21vZGlzID8KClNpYm9yaXQgOnYpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXNtb2RpcyA/IChBc21vZGlzLCAyMi4gTm92IDE5OTUsIDAyOjM5OjA4KToKIyEgcm49U2lib3JpdCBydD04MTcwMDMxMTYKQWVoLCB2ZXJzdGVoIGljaCBqZXR6dCBuaWNodCBnYW56CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFzbW9kaXMgPyAoU2lib3JpdCwgMjIuIE5vdiAxOTk1LCAwMjo1NjozOCk6CiMhIHJuPUFzbW9kaXMgcnQ9ODE3MDA0MzQ4CgpVcHMuLi4uCgpIYWJlIGVyc3QgZ2VyYWRlIGJlbWVya3QsIGRhcyB3b2hsIGplbWFuZCBtZWluZSAnc2V0aGFuZHMnIGdlYW5kZXJ0IGhhdC4KClNpYm9yaXQgKCpzY2hhZW0qKS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFzbW9kaXMgPyAoQXNtb2RpcywgMjIuIE5vdiAxOTk1LCAwMzo0OTowOCk6CiMhIHJuPVNpYm9yaXQgcnQ9ODE3MDA1Mzk4CnVuZCBkYXp1IG5vY2ggemllbWxpY2ggZGlsbGV0YW50aXNjaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3BpZWxlcnZlcmhhbHRlbiAoUm9jaHVzLCAyMi4gTm92IDE5OTUsIDEyOjAxOjAwKToKIyEgcm49TXVya2VzIHJ0PTgxNjk4ODMxMQpbVmVybGVndCB2b24gZXRpa2V0dGUsIEFjcmltb24sIDIxLiBOb3YgMTk5NSwgMjI6MTU6NDldOgpEZWluZSBGb3JtYXRpZXJ1bmcgaXN0IGVudHNjaHVsZGlndCA6LSkKSWNoIGhhYmUgamEgYXVjaCBnYXIga2VpbmUgZ2VzZWhlbi4KCihBYiBuYWNoIFNjaG1hcnJuKQpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW50aXdvbHBpZSBkZXN0cnVjdCBtYXNzbmFobWVuIChSb2NodXMsIDIyLiBOb3YgMTk5NSwgMTI6MDE6MjMpOgojISBybj1LZXRvcyBydD04MTY5ODkyMjEKW1ZlcmxlZ3Qgdm9uIGV0aWtldHRlLCBBY3JpbW9uLCAyMS4gTm92IDE5OTUsIDIyOjI3OjIxXToKSmFhYWFhIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbnRpd29scGllIGRlc3RydWN0IG1hc3NuYWhtZW4gKFJvY2h1cywgMjIuIE5vdiAxOTk1LCAxMjowMTo1NCk6CiMhIHJuPUtldG9zIHJ0PTgxNjk4OTIyMQpbVmVybGVndCB2b24gZXRpa2V0dGUsIEtyZXRlaywgMjIuIE5vdiAxOTk1LCAwMjo0MTozOV06Ck5vZSEKRmxvaGJldXRlbCBzaW5kIGxhZXN0aWchIDopKQoKS3JldGVrCihoYXQgc2VpbmVuIGRhbWFscyBpbiBoYXJ0ZXIgQXJiZWl0IHNlbGJlciBnZWtpbGx0Li4uKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbnRpd29scGllIGRlc3RydWN0IG1hc3NuYWhtZW4gKFJvY2h1cywgMjIuIE5vdiAxOTk1LCAxMjowMjoxNSk6CiMhIHJuPUtldG9zIHJ0PTgxNjk4OTIyMQpbVmVybGVndCB2b24gZXRpa2V0dGUsIExpLCAyMi4gTm92IDE5OTUsIDA5OjE3OjMyXToKSkEhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbnRpd29scGllIGRlc3RydWN0IG1hc3NuYWhtZW4gKFJvY2h1cywgMjIuIE5vdiAxOTk1LCAxMjowMjozMSk6CiMhIHJuPUFjcmltb24gcnQ9ODE2OTg5MjQxCltWZXJsZWd0IHZvbiBldGlrZXR0ZSwgUmFmZmksIDIyLiBOb3YgMTk5NSwgMTA6MzA6MTddOgoKVWlpaSBkYXMgaXN0IG1hbCBuZSBpZGVlIC0gdW5kIGRhbm4gbW9jaHQgaWNoIG1hbCBnZWRlc3RydWN0ZXRlIChzY2hvZW5lcwpXb3J0KSBNYWdpZXIgc2VoZW4gOikKCkdydXNzCkguCihOaWNodCBnZXJhZGUgZGVyIGdyb2Vzc3RlIFdvbHBpZWZhbikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW50aXdvbHBpZSBkZXN0cnVjdCBtYXNzbmFobWVuIChSb2NodXMsIDIyLiBOb3YgMTk5NSwgMTI6MDI6MzgpOgojISBybj1LZXRvcyBydD04MTY5ODkyMjEKW1ZlcmxlZ3Qgdm9uIGV0aWtldHRlLCBIYXJkaWwsIDIyLiBOb3YgMTk5NSwgMTA6MzE6MjhdOgoKSmFhYWEsIEtldG9zISBKYSEgOi0pCkljaCBoYWIgZGEgc2Nob24gc2Nob2VuZSBJZGVlbiwgYWJlciBhbGxlcyB3ZWl0ZXJlIHBlciBtYWlsLiA6KQoKLUhhcmRpbC4gUmV0dGVuIGRpZSBXT2xwZXJ0aW5nZXIhIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQW50aXdvbHBpZSBkZXN0cnVjdCBtYXNzbmFobWVuIChSb2NodXMsIDIyLiBOb3YgMTk5NSwgMTI6MDI6NDYpOgojISBybj1IYXJkaWwgcnQ9ODE3MDMyNjg4CltWZXJsZWd0IHZvbiBldGlrZXR0ZSwgTW9yZ290aCwgMjIuIE5vdiAxOTk1LCAxMDozMzoyOV06CnllcCwgaGFiZW4gd29sbGVuCmtlbm50IGlociAnSGFlZ2FyJz8KaWNoIGRlbmsgZGEgYW4gZGllIHN0b3J5IG1pdCBzbmVydC4uLi5hbHMgZ3V0IGRyZXNzaWVydGVyIGh1bmQKc25lcnQgbWFjaHQgbWFlbm5jaGVuLCBzaXR6dC4uLmRhbm4ga29tbXQKJ1NuZXJ0OiBHcml6emx5YmFlcicgISEhCk1vcmdvdGggZ3JpbnN0IFNFSFIgZGFlbW9uaXNjaAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFudGl3b2xwaWUgZGVzdHJ1Y3QgbWFzc25haG1lbiAoUm9jaHVzLCAyMi4gTm92IDE5OTUsIDEyOjAyOjUyKToKIyEgcm49TW9yZ290aCBydD04MTcwMzI4MDkKW1ZlcmxlZ3Qgdm9uIGV0aWtldHRlLCBSYWZmaSwgMjIuIE5vdiAxOTk1LCAxMDozNjo0MF06CgooQmV0cmVmZiBIYWVnYXIpCgpLZW5uIGljaCBuaWNodCAtPiBzb2ZvcnQgc2Nhbm5lbiB1bmQgaW4gZGllIFdXVy1TZWl0ZW4gIQoKR3J1c3MKSC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTZWxic3Rsb2VzY2h1bmcgKFJvY2h1cywgMjIuIE5vdiAxOTk1LCAxMzoyMjoxNik6CiMhIHJuPUtyZXRlayBydD04MTcwMDQxOTMKW1ZlcmxlZ3Qgdm9uIGV0aWtldHRlLCBEdXJpYW4sIDIyLiBOb3YgMTk5NSwgMTI6NTE6NDFdOgpLcml0aWssIEtyYXRhaywgS3JvdG9rLCBLcmV0ZWssIEtydXR1ayAuLi4gaXN0IGRhcyBuaWNodCBhbGxlcyBkYXNzZWxiZT8/Cgo6LSkKCi0gRHVyaWFuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaW5mbGF0aW9uPyAoTHlzYW5pYSwgMjIuIE5vdiAxOTk1LCAxODoxNDo1NCk6Cj4ga29zdGVuCkRpciBmZWhsZW4gYmlzIHp1ciBuYWVjaHN0ZW4gU3R1ZmUgbm9jaCA1MDE2NSBBYmVudGV1ZXJwdW5rdGUuCgpFaW5lIF9zZWhyXyB2ZXJkYXR0ZXJ0ZSBMeXNhbmlhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU2VsYnN0bG9lc2NodW5nIChLcmV0ZWssIDIyLiBOb3YgMTk5NSwgMjE6MDM6MjQpOgojISBybj1Sb2NodXMgcnQ9ODE3MDQyOTM2CkR1cmlhbiwgRHVyaWFuLi4uIFRzc3NzIQpBYmVyIHdpciB3b2xsZW4gamV0enQgamEgYXVjaCBtYWwgbmljaHQgdmVyYnJlaXRlbiwgd2FydW0gRGVpbiBOYW1lCmVpbmVuIEFzaWF0ZW4gZ2xlaWNoIG1hbCB6dW0gR3JpbnNlbiBicmluZ2VuIHd1ZXJkZSwgZ2VsbD8gOikpCgpsOGVyLApLcmV0ZWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvc28uLi4gKE11cGZlbCwgMjMuIE5vdiAxOTk1LCAwMDoxODozNik6CltBbGxnZW1laW46Rnl0XSBobS4uIHdpZWRlciBtYXJpYW4uLiB3aWUgb2Z0IGtvbW10IGRhcyB3ZWliPwpbQWxsZ2VtZWluOkN1Y2h1bGxpbl0gV2llIG9mdCBuZSBGcmF1IGtvbW10LCBoYWVuZ3Qgdm9uIGRlciBGcmF1IGFiLgpbQWxsZ2VtZWluOkZ5dF0gZHVtbSBkYXMgOykKW0FsbGdlbWVpbjpIYWRyYV0genUgYmVzdWNoPwpbQWxsZ2VtZWluOkN1Y2h1bGxpbl0gRGFzIHdvaGwgYXVjaCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhpbGZlIEdhZXN0ZSAoQWxpbmUsIDIzLiBOb3YgMTk5NSwgMTE6MDk6MDgpOgpnZXJhZGUgZWJlbiBnZXNlaGVuCkR1IHN0ZWhzdCBhbSBLcmV1enVuZ3NwdW5rdCB6d2VpZXIgR2FlbmdlIGluIGRlciBad2VyZ2Vuc3RhZHQuIERlciBlaW5lCmZ1ZWhydCBuYWNoIE5vcmRlbiB6dW0gQXVzZ2FuZyB1bmQgbmFjaCBTdWVkZW4genVtIFRocm9uc2FhbCwgd2FlaHJlbmQKZGVyIGluIE9zdC1XZXN0LVJpY2h0dW5nIGxhdWZlbmRlIEdhbmcgenUgZWluaWdlbiBHZXNjaGFlZnRlbiB1bmQgYWVobmxpY2hlbgpEaW5nZW4gZnVlaHJ0LiBXaWUgdWViZXJhbGwgd2lyZCBhdWNoIGhpZXIgZGVyIEdhbmcgZHVyY2ggRmFja2VsbiBiZWxldWNodGV0LgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCkdhc3RlIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuCkdhc3RmIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuCkdhc3RkIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuCkdhc3RjIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuCkRlciBHZWlzdCB2b24gR291c2NoZC4KR2FzdGIgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlci4KR2FzdGEgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlci4KQmxpdHogZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlci4KCkFsaW5lIChzaWVodCBzaWNoIHZvbiBHYWVzdGVuIHVtcmluZ3QpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBpbSBJbnRlcm5ldC4uLiAoWWVuZGksIDIzLiBOb3YgMTk5NSwgMTE6Mjg6MTkpOgoKV2FzIGVzIG5pY2h0IGFsbGVzIGdpYnQ6CgogICAxKSBFaW4gbWluaW1hbGVyIEZvbGdlcmVyIHZvbSBUeXAgRyBpc3Qga29uc2lzdGVudCwga2FubiBlcyBhYmVyCiAgICAgIG5pZW1hbHMgd2lzc2VuLgogICAyKSBFaW4gbWluaW1hbGVyIEZvbGdlcmVyIHZvbSBUeXAgRyogaXN0IGtvbnNpc3RlbnQsIGdsYXVidAogICAgICBrb25zaXN0ZW50IHp1IHNlaW4sIGthbm4gYWJlciBuaWVtYWxzIHdpc3NlbiwgZGFzcyBlciBnbGF1YnQsCiAgICAgIGtvbnNpc3RlbnQgenUgc2Vpbi4KICAgMykgRWluIG1pbmltYWxlciBGb2xnZXJlciB2b20gVHlwIFEgKGVpbiB3dW5kZXJsaWNoZXIgRm9sZ2VyZXIpCiAgICAgIGdsYXVidCwgZXIgaXN0IGlua29uc2lzdGVudCwgYWJlciBlciBpcnJ0IHNpY2ggLSB0YXRzYWVjaGxpY2gKICAgICAgaXN0IGVyIGtvbnNpc3RlbnQuCgpEYXMgaXN0IHdhaHJlIFBvZXNpZSBkZXMgSW50ZWxsZWt0cyEKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa29vbGUgQWRyZXNzZSA6KSAoQ3JlYXRpdmUsIDIzLiBOb3YgMTk5NSwgMTc6MDk6MjApOgoKbmV1bGljaCwgYXVmIC1ECltEZWJ1ZzpdICE8bXNnPiA8bGFtYmRhIDB4ICAgICAwPiBwbGF5ZXJzL3JvY2h1cy9vYmovbWFwcGVyIzE0MzM1NSAxMjkxNzQ3CltEZWJ1ZzpdIGZ1bmN0aW9uIGhpc3RvcnlfbGlzdCBub3QgZm91bmQuCgpEaWUgQWRyZXNzZSBnaXBzIG5vY2g/IDopCi1DcmVhLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS29taXNjaGUgTGV1dGUgaGllciAoQWxpbmUsIDIzLiBOb3YgMTk5NSwgMTg6MjI6NTQpOgplcyBnaWJ0IExldXRlIGhpZXIgZGllIHdpc3NlbiBhbnNjaGVpbmVuZCBuaWNodCB3YXMgc2llIHdvbGxlbjoKCkZlbHMgbXVycGVsdCBuYWNoIFdlc3Rlbi4KS2Flbmd1cnVoIGlzdCBlcyBoaWVyIHZpZWwgenUgdm9sbCwgZGVzaGFsYiB2ZXJzY2h3aW5kZXQgZXIgcGxvZXR6bGljaC4KS2Flbmd1cnVoIHByb2ppemllcnQgc2VpbiBBYmJpbGQgbmViZW4gRGlyLgpFciBzY2hlaW50IHNpY2ggamVkb2NoIHp1IHd1bmRlcm4sIHdhcnVtIGVzIGhpZXIgc28gdm9sbCBpc3QuCgpFcnN0IGdlaHQgZXIgdW5kIGRhbm4ga29tbXQgZXIgaW5uZXJoYWxiIHZvbiBuZSBoYWxiZW4gbWludXRlIHdpZWRlciAqc3RhdW4qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIHZvbiBoYXJkaWwgKENhdHdlYXpsZSwgMjMuIE5vdiAxOTk1LCAxOTozMDoxOCk6CgpIbW1tLCBIclQsIGRhcyB3YXIgamEgd2lya2xpY2ggc2NobWFycm4uIFBhciBleGNlbGxlbmNlLgpXZW5uIERVIG5vY2htYWwgU2NocmVpYnJlY2h0ZSBmdWVyIGQuc2NobWFycm4gYmVrb21tc3QsIGRhbm4gZXJ6YWVobCB1bnMgZG9jaAphdWNoIGVpbmZhY2ggbm9jaDoKKiB3aWUgaGVpc3N0IGRpZSBTZWtyZXRhZXJpbiB2b20gQ2hlZgoqIHdlbGNoZSBGYXJiZSBoYXQgZGllIFRhcGV0ZSB2b24gRGVpbmVtIEJ1ZXJvCiogV2llIHdhcm0gaXN0IGRhcyBLYW50aW5lbmVzc2VuLiA6LSkKClVuZCBhYiBkYWZ1ZXIgbmFjaCBTY2htYXJybi4gVXV1cHMsIHNpbmQgd2lyIGphIHNjaG9uLgoKLUhhcmRpbC4gU2NocmVpYnQgYXVjaCBzaW5ubG9zZSBBcnRpa2VsLCB3ZWlsIEFydGlrZWwgbWl0IFNpbm4gamEgaW4gU2NobWFycm4Kbml4IHZlcmxvcmVuIGhhYmVuLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhcnRpa2VsIHZvbiBoYXJkaWwgKENhdHdlYXpsZSwgMjMuIE5vdiAxOTk1LCAxOTozMToxNSk6CiMhIHJuPUNhdHdlYXpsZSBydD04MTcxNTE0MTgKU29ycnkgQ2F0LCBhYmVyIGRhcyBnZWh0IGdhbnogcHJvYmxlbWxvcywgQXJ0aWtlbCBhc3UgbXVlbGwgd2llZGVyCnp1cnVlY2t6dXZlcmxlZ2VuLCB3ZW5uIG1hbiBkYXMgcmljaHRpZ2UgVG9vbCBoYXQuIDotKQoKLUhhcmRpbC4gRGVyIG1pdCBkZXIgZ3Jvc3NlbiBXYWx6ZSBtaXQgRHJ1Y2tlcnNjaHdhZXJ6ZS4gTk5OLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGVoZWUhIChDYXR3ZWF6bGUsIDIzLiBOb3YgMTk5NSwgMTk6MzE6NTEpOgpEdSB3aWxsc3QgbWljaCBhZXJnZXJuLCBnaWJzIHp1IQpEdSB3aWxsc3QgbWljaCBzY2hsaWNodCB1bmQgZWluZmFjaCBOVVIgYWVyZ2VybiEKCllUQyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDk5OTogKmdyaW5zKiAoQ3JlYXRpdmUsIDIzLiBOb3YgMTk5NSwgMTk6NTE6NDUpOgpBZXJnZXJuPyBEaWNoPyB3b3p1PyA6KQotQ3JlYS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUwMDA6ICpncmlucyogKEhpZ2hsYW5kZXIsIDI0LiBOb3YgMTk5NSwgMDk6MTk6MzMpOgojISBybj1DcmVhdGl2ZSBydD04MTcxNTI3MDUKNTAwMCEgOj4KICAgSHJUICBPOz4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN0YXVudCB1ZWJlciBtZWluZSBMZWl0dW5nICEhIChWYW5pciwgMjQuIE5vdiAxOTk1LCAxMTo0ODoxMyk6Ck5hY2hkZW0gaWNoIGRlbiBGcnVzdCB1ZWJlciBtZWluZW4gbGV0enRlbiBUb2QgdWViZXJ3dW5kZW4KaGFiZSwgd2lsbCBpY2ggbWFsIHplaWdlbiwgZGFzcyBtYW4gYXVjaCBhbiBlaW5lciB6dXNhbW1lbi0KZ2Vicm9jaGVuZW4gTGVpdHVuZyBzdGVyYmVuIGthbm4gOgpVbSBlcyBldHdhcyBrdWVyemVyIHp1IGdlc3RhbHRlbiBkYXMgd2ljaHRpZ2VzdGUgdm9yd2VnOgoKLUljaCBzdGVoZSBhbHNvIGluIGRlciBDaGFvdGVua25laXBlIHVuZCB1ZWJlLCBlcyBlcnNjaGVpbnQKICAgICAgICBIb3Rocm9nLCB3ZWlsIG1hbCB3aWVkZXIgd2FzIHNjaGllZiBnZWdhbmdlbiBpc3QsCiAgICAgICAgZWlnZW50bGljaCBuaWNodCBzY2hsaW1tLCBpY2ggaGFldHRlIGphIHRhbmtlbgogICAgICAgIGtvZW5uZW4gLSBkYWNodGUgaWNoIDooCi1EZXIgS2FtcGYgaXN0IGltIHZvbGxlbiBHYW5nZSAoR3JhaW9wIGhpbGZ0IG1pciB1ZWJyaWdlbnMKICAgICAgICBnZWdlbiBIb3Rocm9nKSwgZGFubiBicmljaHQgZGFzIE5ldHogd2VnIChpY2ggaGF0dGUKICAgICAgICBub2NoIDE3NCBscCB1bmQgMTMxIG1wKQotRGFzIGxldHp0ZSB3YXMgaWNoIHNhaCB3YXIgZm9sZ2VuZGVzIDoKCgogIER1IGtpdHplbHN0IEhvdGhyb2cgYW0gQmF1Y2guCiAgR3JhaW9wIGdyZWlmdCBIb3Rocm9nIG1pdCBmbGFtbWVuZGVuIEtyYWxsZW4gYW4uCiAgR3JhaW9wIHZlcmZlaGx0IEhvdGhyb2cuCiAgSG90aHJvZyBncmVpZnQgR3JhaW9wIG1pdCBsYW5nZW4gS3JhbGxlbiBhbi4KICBIb3Rocm9nIHRyaWZmdCBHcmFpb3Agc2VociBoYXJ0LgogIER1IGdyZWlmc3QgSG90aHJvZyBtaXQgZGVtIFNjaHdlcnQgYW4uCiAgRHUgdHJpZmZzdCBIb3Rocm9nIHNlaHIgaGFydC4KICBHcmFpb3AgZ3JlaWZ0IEhvdGhyb2cgbWl0IGZsYW1tZW5kZW4gS3JhbGxlbiBhbi4KICBHcmFpb3AgdmVyZmVobHQgSG90aHJvZy4KICBIb3Rocm9nIGdyZWlmdCBEaWNoIG1pdCBsYW5nZW4gS3JhbGxlbiBhbi4KICBIb3Rocm9nIHRyaWZmdCBEaWNoIGhhcnQuCioqKiAxNzQgMTMxCkR1IHN0ZWNrc3QgZGFzIFNjaHdlcnQgenVydWVjay4KJSAiTW9yZSIgcGFnaW5nIGVuYWJsZWQuICBVc2UgVEFCIHRvIHNjcm9sbC4KJSBDb25uZWN0aW9uIHRvIE1HIGNsb3NlZDogcmVjdjogQ29ubmVjdGlvbiByZXNldCBieSBwZWVyCi0tLS0gTm8gd29ybGQgLS0tLQoKLSBIaWVyIGZvbGdlbiBNaW51dGVuIGJhbmdlbiB3YXJ0ZW5zIC0gaWNoIHZlcnN1Y2h0ZSBuYXR1ZXJsaWNoCiAgICAgICAgc29mb3J0IHdpZWRlciBlaW5lIExlaXR1bmcgYXVmenViYXVlbgotdWVicmlnZW5zIGhhYmUgaWNoIGRhcyBTY2h3ZXJ0IHp1cnVlY2tnZXN0ZWNrdCwgdW0gSG90aHJvZyBtaXQKICAgICAgICBGaW5zdGVybmlzIHp1IGJlbGVnZW4gKGRhbmFjaCB3b2xsdGUgaWNoIHNvZm9ydCB3aWVkZXIgZGFzCiAgICAgICAgU2Nod2VydCB6dWVja2VuKSB1bmQgdGFua2VuIChpY2ggaGFiZSB1ZWJyaWdlbnMgdm9yZ2V0aXBwdCwKICAgICAgICB2ZXJnZWJsaWNoKQotSmV0enQga29tbXQgZGVyIFRlaWwsIHdvIGljaCB3aWVkZXIgZWluZSBMZWl0dW5nIGhhYmUsIGljaCBzZWhlIDoKCiUgQ29ubmVjdGlvbiB0byBNRyBpbiBwcm9ncmVzcy4KLS0tLSBXb3JsZCBNRyAtLS0tCkhUVFAvMS4wIDMwMiBGb3VuZApMb2NhdGlvbjogaHR0cDovL3NhbnRhbmEudW5pLW11ZW5zdGVyLmRlL35tdWQvCgpXV1UvTWF0aCwgTXVlbnN0ZXIsIEdlcm1hbnkuIExvY2FsIHRpbWU6IFdlZCBOb3YgMjIgMjE6NDc6NDMgMTk5NSBNRVQKCldXVS9NYXRoLCBNdWVuc3RlciwgR2VybWFueS4gTG9jYWwgdGltZTogV2VkIE5vdiAyMiAyMTo0Nzo0MyAxOTk1IE1FVAoKTW9yZ2VuR3JhdWVuIExQbXVkLCBOQVRJVkUgbW9kZSwgZHJpdmVyIHZlcnNpb24gMDMuMDIuMUAxMjEKCkR1IHZlcmxpZXJzdCBkaWUgQmVzaW5udW5nLi4uLgoKRHUgdGF1Y2hzdCBpbiBlaW5lbiBTdHJ1ZGVsIGJ1bnRlciBGYXJiZW4gZWluLgpFaW4ga2xlaW5lciBncnVlbmVyIFN0ZWluYmVpc3NlciBlcnNjaGVpbnQuCgpEZXIgU3RlaW5iZWlzc2VyIHNhZ3Q6CiAgJ1dpbGxrb21tZW4gaW0gTW9yZ2VuR3JhdWVuLicKICAnRGllc2VzIE11ZCBiZWZpbmRldCBzaWNoIGluIE11ZW5zdGVyIChEZXV0c2NobGFuZCknCiAgJ0JlaSBncm9lc3NlcmVuIFByb2JsZW1lbiBrYW5uc3QgRHUgRGljaCBhbiBkaWUgTXVkZ29ldHRlcicKICAnQm9pbmcgb2RlciBKb2Ygd2VuZGVuIG9kZXIgYXVjaCBlbWFpbCBhbiBkaWUnCiAgJ0FkcmVzc2UgIm11ZEBtdWQudW5pLW11ZW5zdGVyLmRlIiBzY2hyZWliZW4uJwoKICAnV2VubiBEdSBudXIgbWFsIHJlaW5zY2hudWVmZmVsbiB3aWxsc3QsIHNvIG5lbm5lIERpY2ggImdhc3QiLicKCkRlciBTdGVpbmJlaXNzZXIgd2FybnQgRGljaDoKICAnV2VoZSwgRHUgZmFlbmdzdCBhbiwgYW5kZXJlIFNwaWVsZXIgYW56dWdyZWlmZW4uJwoKRGVyIFN0ZWluYmVpc3NlciB2ZXJzY2h3aW5kZXQgd2llZGVyLCB1bmQgRHUgd2FjaHN0IGluIGVpbmVyIGFuZGVyZW4gV2VsdAphdWYuCgoKV2llIGhlaXNzdCBEdSBkZW5uID8gU2Nob2VuLCBkYXNzIER1IHdpZWRlciBkYSBiaXN0LCBWYW5pciEKUGFzc3dvcmQ6CkR1IG5pbW1zdCBzY2hvbiBhbSBTcGllbCB0ZWlsIQpWZXJ3ZW5kZSBEZWluZSBhbHRlIHN0ZXJibGljaGUgSHVlbGxlIC4uLgpSaWt1cyB1bmQgUm9hZHJ1bm5lciBzaW5kIGltIFNwaWVsLgpLYXBlbGxlLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZGVuLgpJbiBlaW5lciBFY2tlIHN0ZWh0IGVpbiBPcGZlcnN0b2NrLgoKCgotIEFyZ2wgQXJnbCBBcmdsIC0gZXMgbmVydnQgbWljaCBpbW1lciBub2NoLCB3ZW5uIGljaCBvYmlnZXMgbGVzZSA6KAotIG51bmphLCBpY2ggaGF0dGUgZ2VyYWRlIG5vY2ggemVpdCBkaWUga2FuYWxoaXN0b3J5IHp1IGxlc2VuLCBkYW5uIGJyYWNoCiAgICAgICAgZGllIGxlaXR1bmcgd2llZGVyIHdlZy4KICAgICAgICBbVG9kOl0gSG90aHJvZyBoYXQgZ2VyYWRlIFZhbmlyIHVtZ2VicmFjaHQuIDwyMToyNzoxMD4KLVZpZWwgc3BhZXRlciAtIGljaCBtYWNodGUgbWVpbmVtIGZydXN0IHVlYmVyIGRpZSBrYW5hZWxlIEx1ZnQgLSB2ZXJ6ZWlodAptaXIsCiAgICAgICAgd2VubiBpY2ggZGllIGxlaXR1bmcgYmVzY2hpbXBmdGUsIGFiZXIgc2llIHdhciB3aXJrbGljaCAqUElFUCogLQogICAgICAgIG1laW50ZSBtdXBmZWwgYXVmIGFsbGdlbWVpbiA6CiAgICAgICAgW0FsbGdlbWVpbjpNdXBmZWxdICcyMi4gTm92IDIxOjI3IFZhbmlyKDI1LDk3NykKICAgICAgICBbQWxsZ2VtZWluOk11cGZlbF0gL3BsYXllcnMvemFyZG96L2dpbGRlL21vbi9ob3Rocm9nICh6YXJkb3opJwoKClNvLCBnZW51ZyBnZXNlaGVuIC0gZGFuYWNoIGdpbmcgZGllIGxlaXR1bmcgdWVicmlnZW5zIHdpZWRlciAoKmh1ZXN0ZWwqKSwKYWJlciBlcnN0IG5hY2hkZW0gc2llIG5vY2ggMiwzIG1hbCB3ZWdicmFjaC4KCgoKKlNFTkYgT0ZGKgoqQkVJTEVJRCBPTioKICAgICAgICAgICAgICAgIEVpbiB2b2VsbGlnIGFobnVuZ3Nsb3Mgc3RlcmJlbmRlciBWYW5pci4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjgwOiAqZ3JpbnMqIChDcmVhdGl2ZSwgMjQuIE5vdiAxOTk1LCAxNTo1NzoxOSk6CgpoYWIgaWNoIGRvY2ggdGF0c2FlY2hsaWNoIHp1IHZpZWwgZ2Vsb2VzY2h0LgpOYWphLi4uIGZsYW1lcyBvbiBtZS4KLUNyZWEtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYSBzb3dhcyAoUGFyYWNlbHN1cywgMjUuIE5vdiAxOTk1LCAwMzo0Mzo0NSk6Ck5hIHNvd2FzOgoKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIE1hcml0YSBpbiBSdWJyaWsgIndpdHplIi4Kbm4KTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFJeMTMgKE1vcmdvdGgsIDI1LiBOb3YgMTk5NSwgMTQ6NTc6NDgpOgojISBybj1IYXJkaWwgcnQ9ODE3MjI1NzQzCltWZXJsZWd0IHZvbiBkLmZlcm53ZXN0LCBLcmV0ZWssIDI0LiBOb3YgMTk5NSwgMTY6NDI6MTRdOgpOYSEKSWNoIGxlcyBhdWNoIGRpZSBVU0EgVG9kYXkuLi4gKFNjaGxlY2h0ZSBBbmdld29obmhlaXRlbiBsZWd0IG1hbiBlYmVuCm5pY2h0IHNvIGVpbmZhY2ggd2llZGVyIGFiLi4uCkFiZXIgTmV3IFlvcmsgVGltZXMgc2luZCBhdWNoIGRhYmVpIQoKQWIgbmFjaCBTY2htYXJybiEKCktyZXRlawoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkd1dGUgYWx0ZSBaZWl0ISAoQWNyaW1vbiwgMjYuIE5vdiAxOTk1LCAwMjowMjo0Nik6Cj4ga3dlcgogIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBTb24sIDI2LiBOb3YgMTk5NSwgMDI6MDA6MDggKDExIFRlaWxuZWhtZXIpCgpJbHZlcy4uLi4uLi4uLi4ucyAgTm9zdHJvbW8uLi4uLi4uLnMgIEVzY2kuLi4uLi4uLi4uLi5zICBXdXIuLi4uLi4uLi4uLi4ucwpXYWxkb3JmLi4uLi4uLi4ucyAgVHJvdWJhZGl4Li4uLi4uLnMgIE1hcnN1cGlsYW1pLi4uLi5zICBFc2N1YmFyLi4uLi4uLi4uUwpBY3JpbW9uLi4uLi4uLi4uUyAgWnVlcmlsZXUuLi4uLi4uLk0gIFBhcmFjZWxzdXMuLi4uLi5NCgpEYSBmdWVobHQgbWFuIHNpY2ggZG9jaCB3aWVkZXIgc28gd2llIGluIGRlciBndXRlbiBhbHRlbiBaZWl0IQoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW0gKEd1bmR1ciwgMjYuIE5vdiAxOTk1LCAxODo1MjoyNSk6CkljaCBkZW5rZSBTY2hydW1wZmkgc29sbHRlIG5pY2h0IHp1ciBSdWhlIGtvbW1lbiA6LSkpKSkpCkd1bmR1cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhtbSAoU2NocnVtcGZpLCAyNi4gTm92IDE5OTUsIDIwOjU5OjA5KToKIyEgcm49R3VuZHVyIHJ0PTgxNzQwODM0NQoKRHUgYmlzdCBqYSBzb29vbyBndXQgIHp1IG1pciwgQnJ1ZGVyaGVyeiEgOy0pCgpTY2hydW1wZmkgaGVjaGVsdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVpdGVuZCBkdXJjaCBkaWUgTHVlZnRlIGJld2VndGUgZXIgc2ljaCBmb3J0LiAoTGVjaHVjaywgMjcuIE5vdiAxOTk1LCAwODo0NjozNyk6CkxldHp0ZW5zIGlyZ2VuZHdvIHp3aXNjaGVuIGRlciBFbGZlbnNpZWRsdW5nIHVuZCBGZXJud2VzdDoKaW4gZmxpZWdlbmRlcyBQZmVyZCBuYWVoZXJ0IHNpY2ggdW5kIGxhbmRldCBzaWNoZXIuCl0KUGVnYXN1cywgZGFzIGZsaWVnZW5kZSBQZmVyZCwgbmltbXQgRGlyIDIyMiBNdWVuemVuIGFiLgpadWZyaWVkZW4gYmlldGV0IGVyIERpciBlaW5lbiBQbGF0eiBhdWYgc2VpbmVtIFJ1ZWNrZW4gYW4uCkF1ZiBQZWdhc3VzJyBSdWVja2VuLgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgpQZWdhc3VzIGVyaGVidCBzaWNoIGluIGRpZSBMdWVmdGUuCkR1IHN0b2xwZXJzdC4KCm1vZW5zY2ggbXVzcyBpY2ggdm9sbCBzZWluLCBzZWxic3QgYmVpbSBzaXR6ZW4gaW0gU2F0dGVsIHN0b2xwZXIgaWNoIG5vY2gKTGVDaHVjaywgRGF1ZXItIHVuZCBCZXJ1ZnNzYWV1ZmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGJlaW0gbmliZWx1bmdlbnF1ZXN0IChTaW50cmFtLCAyNy4gTm92IDE5OTUsIDE3OjMxOjA5KToKdW50IHNpbnRyYW0KRGFzIGlzdCBkZXIgUmllc2UuIEVyIGlzdCBmdWVyIGVpbmVuIFp3ZXJnIG1pdHRlbGdyb3NzLgpFaW4gUmllc2UgaXN0IGVpbiBSaWVzZSBpc3QgZWluIFJpZXNlLgouLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJ1ZGlyYXR0ZXIsIHdpZSBzaWUgbGVpYnQgdW5kIGxlYnQgKFphcmRveiwgMjcuIE5vdiAxOTk1LCAxODowOToxOCk6ClJ1ZGlyYXR0ZXIgc2FndDogaW4gZGVpbmVyIG5ldWVuIGdpbGVkPwpSdWRpcmF0dGVyIHNhZ3Q6IGdpbGUKPiBSdWRpcmF0dGVyIHNhZ3Q6IGdpbGRlCkR1IGtpY2hlcnN0LiAoV2llIGFsYmVybiB2b24gRGlyKQo+IFJ1ZGlyYXR0ZXIgc2FndDogdWkKUnVkaXJhdHRlciBzYWd0OiBnaWxkZSBpc3QgZWluZSBwZXJtdXRhdGlvbiB2b24gZ2xpZWQKUnVkaXJhdHRlciBlcnJvZXRldC4KCmdyaW5zZW5kLApaenp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enphcmRvegogICAoU2NoZWlzcyBUYXN0YXR1ciEhISEhISEhISEpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpbQWxsZ2VtZWluOlRlcnJvcmlzdF0gc2NocmVpYnQgbWFsIHdhcyBpbiBkaWUgemVpdHVuZyAoQXNtb2RpcywgMjcuIE5vdiAxOTk1LCAyMDowMjo0NSk6CndhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKW0FsbGdlbWVpbjpUZXJyb3Jpc3RdIHdpZSB3YXJzIG1pdCB3YXMgYW5kZXJlbT8gKEFzbW9kaXMsIDI3LiBOb3YgMTk5NSwgMjA6MDQ6MzYpOgp3YXMgYW5kZXJlbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKW0FsbGdlbWVpbjpUZXJyb3Jpc3RdIHVuZCBqZXR6dCBpY2ggYmluIGJsb2VkIHVuZCBoZWlzc2UgQXNtb2RpcyAoQXNtb2RpcywgMjcuIE5vdiAxOTk1LCAyMDowNzoxMik6ClRlcnJvcmlzdCBpc3QgYmxvZWQgdW5kIGljaCBoZWlzc2UgQXNtb2RpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNdXBmZWwsIDI4LiBOb3YgMTk5NSwgMDA6MTQ6NTQpOgokIFtBbGxnZW1laW46R2FzdDFdIG9iIGljaCBlaW5lbiBnb2JsaW4gcGFja2UKUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFRvZXRlci4KW1RvZDpdIEVpbiBHb2JsaW4gaGF0IGdlcmFkZSBHYXN0MSB1bWdlYnJhY2h0LgoKdGphLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCb2luZy1SZXNldCBpbiBNb3JvbiA/IChKaW1kaWdyaXosIDI4LiBOb3YgMTk5NSwgMDI6NDE6NTYpOgpEZXIgRWNoc2Vud2FlY2h0ZXIgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KW01vZXJkZXI6R2Vpc3QgZWluZXMgRWNoc2Vud2FlY2h0ZXJzXSBPaG5lIGRpZXNlcyBMYWcgaGFldHRlIG1pY2ggSmltRGlHcml6CltNb2VyZGVyOkdlaXN0IGVpbmVzIEVjaHNlbndhZWNodGVyc10gbmljaHQgdW1nZWJyYWNodCEKRWluIEVjaHNlbndhZWNodGVyIGtvbW10IGFuLgpFaW4gRWNoc2Vud2FlY2h0ZXIga29tbXQgYW4uCgp0c3RzIGpldHp0IGF1Y2ggc2Nob24gaW4gTW9yb24gLi4uCgpKYW1lcyBCb2xpdmFyIGRpR3JpegoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFtBbGxnZW1laW46VGVycm9yaXN0XSB1bmQgamV0enQgaWNoIGJpbiBibG9lZCB1bmQgaGVpc3NlIEFzbW9kaXMgKFJhZmZpLCAyOC4gTm92IDE5OTUsIDEwOjM5OjUyKToKIyEgcm49QXNtb2RpcyBydD04MTc0OTkyMzIKQWxsZSBNdWRkZXIgIHNpbmQgQmVzY2hldWVydCEKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogW0FsbGdlbWVpbjpUZXJyb3Jpc3RdIHVuZCBqZXR6dCBpY2ggYmluIGJsb2VkIHVuZCBoZWlzc2UgQXNtb2RpcyAoQW50aGVhLCAyOC4gTm92IDE5OTUsIDEwOjQ0OjA0KToKIyEgcm49UmFmZmkgcnQ9ODE3NTUxNTkyCktsYXIgc2luZCBzaWUgYmVzY2hldWVydCwgc29uc3Qgd2FlcmVuIHNpZSBqYSBrZWluZSBNdWRkZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFtBbGxnZW1laW46VGVycm9yaXN0XSB1bmQgamV0enQgaWNoIGJpbiBibG9lZCB1bmQgaGVpc3NlIEFzbW9kaXMgKFJhZmZpLCAyOC4gTm92IDE5OTUsIDEwOjQ1OjM4KToKIyEgcm49QW50aGVhIHJ0PTgxNzU1MTg0NApEYW1pdCBlcmdpZWJ0c2ljaCBhYmVyIGRpZSBGcmFnZSB3YXMgenVlcnN0IGRhICB3YXIgLSBEYXMgQmVzY2hldWVydHNlaW4gb2RlcgpkYXMgTXVkZGVuID8KCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTaWx2YW5hIGhhZWx0IHdvaGwgbml4IG1laHIgYXVzPyAoQW50aGVhLCAyOC4gTm92IDE5OTUsIDEwOjQ2OjAzKToKW0FsbGdlbWVpbjpTY2huZWV3b2xrZV0gbGlydW1sYXJ1bWxvZWZmZWxzdGllbApbQWxsZ2VtZWluOkxpcmdob10gYnVtZGlkaSBkYW1kaWRpIGRlaWRlbGRpZGluZ3NidW1zCltBbGxnZW1laW46QW50aGVhXSBkdW1iZWwgZGFtYmVsIGRpbXAKW0FsbGdlbWVpbjpTaWx2YW5hXSBUc2NodWVzcwpTaWx2YW5hICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdlcmFkZSBlYmVuOiAoSGlnaGxhbmRlciwgMjguIE5vdiAxOTk1LCAxMzoxMjo1OCk6CiMhIHJuPVJhZmZpIHJ0PTgxNzU2MDczNQpUb2xsZSBIYW5kbHVuZyEKICBIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHZXJhZGUgZWJlbjogKEJhYm9vbiwgMjguIE5vdiAxOTk1LCAxMzoxMzozMyk6CiMhIHJuPVJhZmZpIHJ0PTgxNzU2MDczNQpIYWVoPwoKQmFib29uIChXb2xsdGUgYXVjaCBzY2hvbiBpbW1lciBtYWwgdm9lbGxpZyBzaW5ubG9zZSBFaW56ZWlsZXIgc2NocmVpYmVuIDotKQopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2VyYWRlIGViZW46IChIaWdobGFuZGVyLCAyOC4gTm92IDE5OTUsIDEzOjE0OjEzKToKIyEgcm49UmFmZmkgcnQ9ODE3NTYwODM0CkRlciBad2VpdGUgYW5zY2hlaW5lbmQgYXVjaCA6PgogIEhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVmICBlaW4gTmV1ZXM6IEdlcmFkZSBlYmVuOiAoUmFmZmksIDI4LiBOb3YgMTk5NSwgMTM6MTc6MzIpOgooWmVmaXggbm9jaGFtYWwgLSAzLlZlcnN1Y2g6KQo6CjoKOgo+IE15c2VsZiAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbVG9kOl0gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIE15c2VsZiB1bWdlYnJhY2h0LgpbQmVpbGVpZDpBbGJvaW5dIG5lZWVlZWVlaWlpaWlpaWlubm4KW0JlaWxlaWQ6RXNjdWJhcl0gT2hoIE5FSU4gISEhISBCZWlsZWlkIE15c2VsZi4uLgpbQmVpbGVpZDpCaWJvXSBhYWFhYWFhcnJnZ2dsbGxsLi4uLi4uLi4gbXlzZWxmLi4uLi4uLiBiZWlsZWlkIDooKCgoKApbQmVpbGVpZDpEaWdlZGFnIHRyYXVlcnQgdW0gTXlzZWxmIDotKF0KW0JlaWxlaWQ6U3ZldGxhbmFdIGF1Y2ghCltBbGxnZW1laW46WmlsbHVzXSBIYWIgZG9jaCBnZW51ZyBNYWV1c2UuLi4gZGllIHZlcm1laHJlbnNpY2ggamEgZ2FuenNjaG5lbGwKW0FsbGdlbWVpbjpaaWxsdXNdIDstKSkpKQotQjogd2FzIHdhciBkYXMgPwpbQmVpbGVpZDpSYWZmaSAgd2FzIHdhciBkYXMgP10KOgo6CjoKCkhtcGYgd2FzIHdhciBkZW4gZGFzcyA/CgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uIChIaWdobGFuZGVyLCAyOC4gTm92IDE5OTUsIDEzOjQyOjQ4KToKTml4IGxvcyEgOjwKICBIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3MTogKmdyaW5zKiAoSGFyZGlsLCAyOC4gTm92IDE5OTUsIDE0OjEzOjQ0KToKClRqYSwgSGlnaGxhbmRlciwKCndpciBkdWVyZmVuIGphIGtlaW5lbiBTY2htYXJybiBtZWhyIG5hY2ggU2NobWFycm4gc2NocmVpYmVuLi4uCgotSGFyZGlsLiBHZWh0IGpldHp0IG5hY2ggSGF1c2UuCkFiZGFmdWVyLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFtBbGxnZW1laW46VGVycm9yaXN0XSB1bmQgamV0enQgaWNoIGJpbiBibG9lZCB1bmQgaGVpc3NlIEFzbW9kaXMgKER1cmlhbiwgMjguIE5vdiAxOTk1LCAxNDoyNjowNik6CiMhIHJuPVJhZmZpIHJ0PTgxNzU1MTkzOApEYXMgaXN0IGRvY2gga2xhciwgbGFlc3N0IHNpY2ggbWF0aGVtYXRpc2NoIGJld2Vpc2VuLiBNYW4gbXVzcyBiZXNjaGV1ZXJ0CnNlaW4gdW0genUgTXVkZGVuLCBhYmVyIG1hbiBtdXNzIG5pY2h0IG11ZGRlbiwgdW0gYmVzY2hldWVydCB6dSBzZWluLApkYXMgZ2lidCBlcyBub2NoIGFuZGVyZSBNb2VnbGljaGtlaXRlbi4KCkRhIG51biBhbHNvIEJlc2NoZXVlcnRzZWluIGVpbmUgbm90d2VuZGlnZSwgbmljaHQgamVkb2NoIGVpbmUgaGlucmVpY2hlbmRlCkJlZGluZ3VuZyBmdWVycyBNdWRkZW4gZGFzdGVsbHQsIHdhciB6dWVyc3QgZGFzIEJlc2NoZXVlcnRzZWluIGRhIHVuZAplcnN0IGRhbm4ga2FtIGRhcyBNdWRkZW4uIFp1bWFsIGRlcmplbmlnZW4sIGRlciBzaWNoIE11ZGRlbiBhdXNnZWRhY2h0CmhhdCwgamEgYXVjaCBuaWNodCBnYW56IHJpY2h0aWcgc2VpbiBrYW5uLCBvZGVyPwoKcS5lLmQuCgotIER1cmlhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogW0FsbGdlbWVpbjpUZXJyb3Jpc3RdIHVuZCBqZXR6dCBpY2ggYmluIGJsb2VkIHVuZCBoZWlzc2UgQXNtb2RpcyAoUmFmZmksIDI4LiBOb3YgMTk5NSwgMTQ6NDk6MjIpOgojISBybj1EdXJpYW4gcnQ9ODE3NTY1MTY2CkhtbW1tbW1tLi4uCgpXZWlzcyBuaWNodCBhbHNvIGljaCBoYWIgYXVjaCBzY2hvbiB2b24gRmFlbGxlbiBnZWhvZXJ0LCBkYXMgTGV1dGUgZGllCmVyd2llc2VuZXJtYXNzZW4ga2VpbiBCZXNjaGV1ZXJ0c2VpbiBoYXR0ZW4sIGlucyBNVUQga2FobWVuLCB1bmQgc29mb3J0CmRhcyBub2V0aWdlIEJlc2NoZXVldHNlaW4gZW50d2lja2VsdCBoYWJlbiB1bmQgZGFnZWJsaWViZW4gc2luZC4KCkdhbnogc28gZWluZmFjaCBpc3QgZXMgZG9jaCBuaWNodC4KCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqZ3JpbnMgKFJhZmZpLCAyOC4gTm92IDE5OTUsIDE2OjUxOjU1KToKCgpKZWhvdmEgZ2VodCBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBbQWxsZ2VtZWluOlRlcnJvcmlzdF0gdW5kIGpldHp0IGljaCBiaW4gYmxvZWQgdW5kIGhlaXNzZSBBc21vZGlzIChMd2F4YW5hLCAyOC4gTm92IDE5OTUsIDIwOjA4OjE2KToKIyEgcm49RHVyaWFuIHJ0PTgxNzU2NTE2NgpIbW0gd2FydGUgbWFsIHdhciBkYXMgbmljaHQgaXJnZW5kd2FzIGF1cyBzdGF0aXN0aWsgbWl0IGRlbSBoaW5yZWljaGVuZCB1bmQKbm90d2VuZGlnPwoKdHNjaGF1IFJ1bXBlbHN0aWx6Y2hlbiBoYXR0ZSBhdWNoIG1hbCBNYXRoZSBpbiBkZXIgU2NodWxlLi4uIHVuZCBoYXQgc2VpbmVuCk5hbWVuIHZlcmdlc3NlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNpbHZhbmEgaGFlbHQgd29obCBuaXggbWVociBhdXM/IChSdW1hdGEsIDI5LiBOb3YgMTk5NSwgMDE6NDE6MzApOgojISBybj1BbnRoZWEgcnQ9ODE3NTUxOTYzCkRhcyBzY2hlaW50IGRlciBaYXViZXJzcHJ1Y2ggenVtIGF1c2xvZ2dlbiB2b24gTWFnaWVybiB6dSBzZWluLiA6LSkKUnVtYXRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkaWUgZ3V0ZSBXaWxoZWxtaW5lLi4uIChNaWV6ZSwgMjkuIE5vdiAxOTk1LCAxNDoxODo1Nik6CgovZWJlbiBpbSBFbGZlbmRvcmYuLi4uCgpXaWxoZWxtaW5lIHNhZ3Q6IE9oLCBkYW5rZSwgbm9jaG1hbCBicmF1Y2hzdCBEdSBtaXIga2VpbmUgS3JhZXV0ZXIgenUKYnJpbmdlbi4KTWl0IGRpZXNlbiBXb3J0ZW4gZHJlaHQgc2llIHdpZWRlciB6dW0gSGVyZCB1bmQgYmVzY2hhZWZ0aWd0IG1pdCBpaHJlbgpUb2VwZmVuCnVuZCBQZmFubmVuLgpEdSBzYWdzdDogU2NoYWRlLCBXaWxoZWxtaW5lCldpbGhlbG1pbmUgc3VtbXQ6ICdIZXJ6aWxlaW4sIC4uLiBEdSBtdXNzdCBuaWNodCB0cmF1cmlnIHNlaW4sIC4uLi4nCgpNaWV6ZSwgZ3JpbnN0IGltbWVybm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU29zbyAoQXJhbnlhLCAyOS4gTm92IDE5OTUsIDE3OjU0OjAzKToKR2VyYWRlIGViZW46ClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBLYXp6YW5kcmEuCkVsdm5payBrb21tdCBoZXJlaW4gdW5kIHplaWd0IGRpciBkaWUgTGVpY2hlIHNlaW5lcyBsZXR6dGVuIE9wZmVycy4KCkFoYS4gU28gaXN0IGRhcyBhbHNvLgoKQWIgZGFmdWVyLgotLT4gU2NobWFycm4uIEFjaCBuZWUsIGRhIGlzdCBlcyBqYSBzY2hvbi4KCkFyYW55YQogICAgICBncmluc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFtBbGxnZW1laW46VGVycm9yaXN0XSB1bmQgamV0enQgaWNoIGJpbiBibG9lZCB1bmQgaGVpc3NlIEFzbW9kaXMgKEtyZXRlaywgMjkuIE5vdiAxOTk1LCAyMToxNTo1MCk6CiMhIHJuPUR1cmlhbiBydD04MTc1NjUxNjYKRHVyaWFuIHN0aW5rdCB1bmQgc2NobWVja3QgZ3V0ISA6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlcmFkZSBlYmVuLi4uIChIb3JzY2hkLCAzMC4gTm92IDE5OTUsIDAwOjE3OjA5KToKCltBbGxnZW1laW46QW1wZWxtYW5uXSBtYWdpZXIgbXVlc3N0ZSBtYW4gYWxzIHNwaWVsZXIgc2VpbgpbQWxsZ2VtZWluOkFtcGVsbWFubl0genVtIGhlaWxlbgpbQWxsZ2VtZWluOkN1Y2h1bGxpbl0gV2Vpc3MgbXVlc3N0ZSBtYW4gYWxzIFJhcHBlIHNlaW4uLi4KW0FsbGdlbWVpbjpNYXJpdGFdIGljaCBnbGF1YiBkZWluZSBpbnRlbGxpZ2VueiBnZWh0IG1pdCBkaXIgZHVyY2gKW0FsbGdlbWVpbjpBbXBlbG1hbm5dIHJlaWNoIG11ZXNzdGUgbWFuIGFscyBhcm1lciBzZWluCltBbGxnZW1laW46WWFubnldIHNjaGxhdSBtdWVzc3RlIG1hbiBhbHMgZHVtbWVyIHNlaW4KW0FsbGdlbWVpbjpBbXBlbG1hbm5dIHNjaGxhdSBtdWVzc3RlIG1hbiBhbHMgLi4uCltBbGxnZW1laW46QW1wZWxtYW5uXSBzZWluCltBbGxnZW1laW46QmFyb25dIEh1aHUKW0FsbGdlbWVpbjpDdWNodWxsaW5dIE1hbm4gbXVlc3N0ZSBtYW4gYWxzIEZyYXVeSF5IXkheSEV1bnVjaGUgc2Vpbi4uLgpbQWxsZ2VtZWluOllhbm55IHNjaGF1dCBmcmFnZW5kXQpbQWxsZ2VtZWluOk1hcml0YV0gaGFzdCBqYSBub2NoIG1hbCBnbHVlY2sgZ2VoYWJ0IGN1Y2ggOykKW0FsbGdlbWVpbjpDdWNodWxsaW4gZGVua3QgLiBvIE8gKCBGUkFVRU4hICldCltBbGxnZW1laW46TWFyaXRhIGRlbmt0IC4gbyBPIChNQUVOTkVSISldCgpIb3JzY2hkIChncmluc2VuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5vY2ggbiBBbGkgKE1hcml0YSwgMzAuIE5vdiAxOTk1LCAwMzozMjozNCk6CgphY3VjaCAgID0gLWE6ZGVua3QgLiBvIE8gKE1BRU5ORVIhKQpibyAgICAgID0gZ2liIGJldHRsZXIgb2hyZmVpZ2UKZXcgICAgICA9IGVuZ2FnaWVyZSBldXNlYml1cyBmdWVyIHcqKioqKioKCk1hcml0YSBrbnVkZGVsdCBlaW5lbiBCZXR0bGVyLCBXKioqKioqLCBDdWNodWxsaW4gdW5kIERpY2guIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYWphLCBhbHMgTlBDIGhhdCBtYW4gZXMgc2Nod2VyLiAoSGFyZGlsLCAzMC4gTm92IDE5OTUsIDEzOjA0OjU1KToKSGFyZGlsIGlzdCBlaW5nZWxvZ2d0LAp1bmQgendhciB2b246IERvcnRtdW5kLgpWb2xsZXIgTmFtZTogSGFldXB0bGluZyBIYXJkaWwgdm9tIENsYW4gZGVyIFdvbHBlcnRpbmdlciB2ZXJtaXNzdCBzZWluZW4KVml6ZWhhZXVwdGxpbmcgT3JrdG9ldGVyCgpCZXJuaWUgcmVpdGV0IGhlcmVpbi4KQmVybmllIGZyYWd0OiBIYXVwdGxpbmcgbmFjaCBqdW5nZT8Kc2NoYXUKSGllciBpc3QgZGVyIEJhY2ggZGV1dGxpY2ggYnJlaXRlciwgZGFkdXJjaCBoYXQgYXVjaCBkaWUgU3Ryb2VtdW5nIG5hY2gtCmdlbGFzc2VuLiBEZXIgV2FsZCBydWVja3Qgd2VzdGxpY2ggdm9uIGhpZXIgbmFlaGVyIGFuIGRlbiBGbHVzcyBoZXJhbiwKc28gZGFzcyBtYW4gZG9ydCBuaWNodCBtZWhyIHdlaXRlcmdlaGVuIGthbm4uIERlciBCb2RlbiB3YWVyZSB1ZWJyaWdlbnMKZWluZSBuYWVoZXJlIEJldHJhY2h0dW5nIHdlcnQuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBvc3Rlbi4KQmVybmllIGRlciBQb255cmVpdGVyLgo+IG5laW4KRHUgc2NodWV0dGVsc3QgZGVuIEtvcGYuCj4gQmVybmllIGZyYWd0OiBIYWVwdGxpbmcgbmFjaCBqdW5nZT8KbmVpbgpEdSBzY2h1ZXR0ZWxzdCBkZW4gS29wZi4KPiBCZXJuaWUgZnJhZ3QgRGljaDogTmFjaCBqdW5nZT8KOndlaXN0IG1pdCBsYW5nZW0gQXJtIG5hY2ggTm9yZGVuIGluIGRpZSBEdW5rZWxoZWl0LgpIYXJkaWwgd2Vpc3QgbWl0IGxhbmdlbSBBcm0gbmFjaCBOb3JkZW4gaW4gZGllIER1bmtlbGhlaXQuCj4gQmVybmllIHJlaXRldCBkdXJjaCBkaWUgRnVydCBuYWNoIE5vcmRlbi4KLi4uCgpGb3J0c2V0enVuZyBmb2xndC4gRXZ0bC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlcmFkZSBlYmVuOiAoUmFmZmksIDMwLiBOb3YgMTk5NSwgMTg6Mjk6MTkpOgoKICBEdSBncmVpZnN0IExpdHRsZSBKb2huIG1pdCBkZW0gQmx1dHNhdWdlci1TY2h3ZXJ0IGFuLgogIER1IHRyaWZmc3QgTGl0dGxlIEpvaG4gaGFydC4KICBMaXR0bGUgSm9obiBncmVpZnQgRGljaCBtaXQgZGVyIFN0cmVpdGF4dCBhbi4KICBMaXR0bGUgSm9obiB2ZXJmZWhsdCBEaWNoLgogIER1IGdyZWlmc3QgTGl0dGxlIEpvaG4gbWl0IGRlbSBCbHV0c2F1Z2VyLVNjaHdlcnQgYW4uCiAgRHUga3JhdHp0IExpdHRsZSBKb2huLgpMaXR0bGUgSm9obiBqYWd0IERpY2ggbmljaHQgbWVoci4KTGl0dGxlIEpvaG4gc2FndDogRHUgYmlzdCBtdXRpZywgYWJlciBsYXNzIHVucyBtaXQgZGllc2VuIFNwaWVsZXJlaWVuCmF1ZmhvZXJlbi4KIEljaCBiZXRyYWNodGUgRGljaCBoaWVybWl0IGFscyBGcmV1bmQuCgpIbXBmIHVuZCB3byAgYmxlaWJ0IGRhIGRlciBTcGFzcyBtZWluIEZyZXVuZCA/CgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2hlcmlmZi4uLj8hPyAoQ3VjaHVsbGluLCAzMC4gTm92IDE5OTUsIDE5OjMxOjI5KToKCj4gQ2F0d2VhemxlICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRlciBTaGVyaWZmIGlzdCBkYS4gRHUgZnVlaGxzdCBEaWNoIHNpY2hlci4KU2ljaGVyPyBTaWNoZXI/Pz8KW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIGFlaGVtCltBbGxnZW1laW46Q3VjaHVsbGluXSBIaWdoeWEgQ2F0IDopCltBbGxnZW1laW46Q2F0d2VhemxlXSBXZXIgc2ljaCBuaWNodCBzaWNoZXIgZnVlaGx0LCBzb2xsIHNpY2ggZG9jaCBiaXR0ZSBtYWwKW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIGJlaSBtaXIgbWVsZGVuIC4uLiA7KQpbQWxsZ2VtZWluOldpbGxvd10gaGllciEKW0FsbGdlbWVpbjpDdWNodWxsaW4gbWVsZGV0IHNpY2guXQpbQWxsZ2VtZWluOk11cGZlbF0gaGllciEKW0FsbGdlbWVpbjpLZXldIEljaCEhCltBbGxnZW1laW46SmVob3ZhXSBpY2ggIQpbQWxsZ2VtZWluOlJhZmZpXSBobW1tbW1tbW1tbW1tbW1tbW0KW0FsbGdlbWVpbjpTY2hydW1wZmkgaGVidCBkaWUgSGFuZF0KW0FsbGdlbWVpbjpUb2UgemVpZ3QgbWl0IGRlbSBmaW5nZXIgYXVmIHNpY2ggc2VsYmVyXQpbQWxsZ2VtZWluOlJhZmZpIHdlaXNzIG5vY2ggbmljaHQgb2IgZGFzIGtsdWcgaXN0IHNpY2ggenUgbWVsZGVuLl0KLi4uCgoqa2ljaGVyKgpDdWNoLi0KClBTOiBbTW9lcmRlcjpHZWlzdCBlaW5lcyBXZWdoaWVyc10gRGFzIHNhZyBpY2ggYWxsZXMgZGVtIFNoZXJpZmYsIEtoaWRhciEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvcmtwcm9waGV0PyAoSGFkcmEsIDMwLiBOb3YgMTk5NSwgMjI6MDU6MjQpOgprb2VubmVuIG9ya3MgamV0enQgaGVsbHNlaGVuPwoKW01vZXJkZXI6R2Vpc3QgZWluZXMgT3Jrc10gTHVwdXMgd2lyZCBnbGVpY2ggZGFzIFNwaWVsIHZlcmxhc3NlbiwgdW0gbWVpbmVyCltNb2VyZGVyOkdlaXN0IGVpbmVzIE9ya3NdIFJhY2hlIHp1IGVudGdlaGVuIQpMdXB1cyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCmhhZHJhIC0gd2lsbCBhdWNoIGhlbGxzZWhlbiBrb2VubmVuLiB1bmQgd2FzIHNhZ3Qgbm9zdHJhZGFtdXM/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBbQWxsZ2VtZWluOlRlcnJvcmlzdF0gdW5kIGpldHp0IGljaCBiaW4gYmxvZWQgdW5kIGhlaXNzZSBBc21vZGlzIChEdXJpYW4sICAxLiBEZXogMTk5NSwgMTQ6NDE6MDQpOgojISBybj1LcmV0ZWsgcnQ9ODE3Njc2MTUwCkFlaCAuLi4gamEsIGdlbmF1IC4uLgoKTXVzcyBpY2ggYXVjaCBtYWwgcHJvYmllcmVuIC4uLgoKLSBEdXJpYW4sIGltIEdlZ2Vuc2F0eiB6dSBEdXJpYW4gbmljaHQgc3RpbmtlbmQgYWJlciBkZW5ub2NoIGR1cmNoYXVzCnNjaG1hY2toYWZ0IG9kZXIgc28gLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNb2VyZGVyIChSb2VzdGksICAxLiBEZXogMTk5NSwgMTk6MDI6MjApOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBPcmtzXSBPem9uLCB3YWVyIGpldHp0IG5pY2h0IGVpZ2VudGxpY2ggVm9ybGVzdW5nPwoKU2FnIG1hbCBrdWNrdCBkZXIgZGVubiBuaWUgYXVmIGRpZSBVSFI/CkZyZSwgIDEuIERleiAxOTk1LCAxOTowMjowMgoKUm9lc3RpIGZyYWd0IHNpY2ggd2VyIGRhIG5vY2ggVkwgaGF0OikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNb2VyZGVyIChMb2NvLCAgMS4gRGV6IDE5OTUsIDE5OjAzOjQ1KToKIyEgcm49Um9lc3RpIHJ0PTgxNzg0MDk0MApEdXJjaGF1cyBtYW5jaGUuLi4gYmVpIGRlbiBOZXVwaGlsb2xvZ2VuIGhpZXIgamVkZW5mYWxscyBzaW5kIHNvZ2FyIFNlbWluYXJlCmJpcyAyMiBVaHIgdWVibGljaC4gTnVyIGZyZWl0YWdzIG11c3MgbWFuIHNjaG9uIHVtIDIwIFVociBhdWZob2VyZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1vZXJkZXIgKFJhZmZpLCAgMS4gRGV6IDE5OTUsIDE5OjA1OjI0KToKCk5ldXBoaWxvbG9nZW4gPwoKLSBXaWUgc2NobWVja2VuIGRlbm4gZGllID8gLQoKR3J1c3MKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1vZXJkZXIgKEN1Y2h1bGxpbiwgIDEuIERleiAxOTk1LCAxOTowODoyOSk6CiMhIHJuPVJhZmZpIHJ0PTgxNzg0MTEyNAoKSm8sIGRpZSBQc3ljaG9sb2dlbiBpbiBPc25hYnJ1ZWNrIGxlZ2VuIGF1Y2ggbWVpc3QgU3BhZXRzY2hpY2h0ZW4gZWluLCBkYW1pdApkaWUgSG9iYnktU3R1ZGVudGVuIHVuZCBIYXVzZnJhdWVuIGF1Y2ggdGVpbG5laG1lbiBrb2VubmVuLi4uCgpNdXNzIGRhIGFiIHVuZCB6dSBoaW4sCkN1Y2guLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1lcmxpbiAoUm9lc3RpLCAgMS4gRGV6IDE5OTUsIDE5OjM0OjUzKToKTWVybGluIHJ1ZnQ6SWNoIHdlaXMgbmljaHQgd28gaWNoIGJpbiBpY2ggZ2xhdWIgWmFyZG96IGhhdCB3YXMgZGFtaXQgenUgdHVuCnRlaWxlIG1lcmxpbiBtaXQgWmFyZG96IGlzdCBuaWNodCBkYSEKIE1lcmxpbiB0ZWlsdCBEaXIgbWl0OiBOYXR1ZXJsaWNoIGlzdCBaYXJkb3ogZGEuCnRlaWxlIG1lcmxpbiBtaXQgWmFyZG96IGlzdCBuaWNodCBkYSBmaW5nZXIgaWhuIGRvY2ggbWFsLi4uCmthbm4gbWVybGluIGFscyBvYmVybWFnaWVyIG5pY2h0IG1hbCBmaW5nZXJuPwoKUm9lc3RpIHdlaXMgd2FubiBaYXJkb3ogZGEgaXN0KG1hbmNobWFsIHp1bWluZGVzdDopICkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJpYm8gKFJvZXN0aSwgIDEuIERleiAxOTk1LCAxOTo0NzowNyk6CkFsc28gYmVpIGRlbSBOYW1lbiBtdWVzc3RlIGVyIGphIHp1bWluZGVzdCB6dW0gRWhyZW5ob2JiaXQgZXJuYW5udAp3ZXJkZW4uLi46KQoKUm9lc3RpIHdpbGwgbmljaHQgd2lzc2VuIHp1IHdhcyBlciBkYW5uIEVocmVuaGFsYmVyIGVybmFubnQgd2lyZC4uLjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODM6ICpncmlucyogKFNlbWlyYSwgIDEuIERleiAxOTk1LCAyMzowMToyMSk6CiMhIHJuPUNyZWF0aXZlIHJ0PTgxNzg1NTI1NgpuaXggZ3J1bW1lbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKeGNhbGwgdGltZSgpLT5kaWUoKSAoVG9ldGVyLCAgNC4gRGV6IDE5OTUsIDE5OjQzOjIzKToKW01hZ2llcjpDYXR3ZWF6bGVdIHdlbiBzbm9vcCBpY2ggZGVubiBtYWwuLi4KPltNYWdpZXI6Um9jaHVzXSBuaW1tIGRvY2ggZWluZW4gbWFnaWVyIG1pdCBnZXJpbmdlcmVtIGxldmVsLi4uCmt3ZXIgbWFnaWVyCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNb24sICA0LiBEZXogMTk5NSwgMTk6NDA6NTggKDQgVGVpbG5laG1lcikKCipUb2V0ZXIuLi4uLi4uLi5IICBDYXR3ZWF6bGUuLi4uLi4uRSAgUm9jaHVzLi4uLi4uLi4uLkUgICpKb2YuLi4uLi4uLi4uLi5HCgpbTWFnaWVyOlRvZXRlcl0gaG0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtlaW5lIGFobnVuZyBkaWUgd3Vyc3QgKFJ5bmUsICA0LiBEZXogMTk5NSwgMTk6NDc6MjQpOgpHcmFkIGltIEdsb2NrZW53YWxkOgoKIEhpcHBlIGZyYWd0IDogV2FydW0gc2FndCBSeW5lIEJ1bmR5ICdDYWxsIDU1NS1TSE9FICEuJyA/CgoKS2VpbmUgQWhudW5nIHZvbiBTY2h1aHByb2JsZW1lbiwgZGVyIE1hbm4uCgpSem5lLiBTY2h1aC1Ib3RsaW5lZXIgTnIuIDEgaW0gTUcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11ZW5zdGVyIHJ1bGVzIC4uLiAoQ2F0d2VhemxlLCAgNC4gRGV6IDE5OTUsIDIwOjExOjA3KToKRGVyIFRvZXRlciBzYWd0OiBzbywgaWNoIG5ldHpicmluZ2UgbWljaCB1bQpEdSBodWVwZnN0IHVtIFRvZXRlciBoZXJ1bS4KRHUgc2Fnc3Q6IGRhcmZpY2hkYXJmaWNoZGFyZmljaD8KRHUgaHVlcGZzdCB1bSBUb2V0ZXIgaGVydW0uCkRlciBUb2V0ZXIgc2FndDogdHVlIERlaW5lIFBmbGljaHQsIFNoZXJpZmYKRHUgc2Fnc3Q6IHdpZSBoYWV0dGVzdCBkdXMgZGVubiBnZXJuPwpEZXIgVG9ldGVyIHNhZ3Q6IGFiZXIgdm9yaGVyIG11c3MgaWNoIG5vY2ggZWluZW4gU3BpZWxlciB6YXBwZW4sIGRhbWl0IGVzCkRlciBUb2V0ZXIgc2FndDogYXVjaCBnZXJlY2h0ZmVydGlndCBpc3QKRHUgc2Fnc3Q6IGRlc3RydWN0PyBEZXN0cnVjdD8gcmVtb3ZlX2ludGVyYWN0aXZlKCk/CkR1IHNhZ3N0OiBra2lsbD8ga2traWxsPwpEdSBzYWdzdDogc3VjaCBEaXIgd2FzIGF1cyA6KQpEZXIgVG9ldGVyIHNhZ3Q6IG1pciB3YWVyZSBlaW4geGV2YWwgZGVzdHJ1Y3QoZmluZF9wbGF5ZXIoInRvZXRlciIpKTsgYW0KRGVyIFRvZXRlciBzYWd0OiBsaWVic3RlbgpEdSBzYWdzdDogZGFzIHdhZXJlIGRhbm4gZWluIGRlc3RydWN0CkRlciBUb2V0ZXIgc2FndDogZGllIGhhcnRlIFRvdXIKVG9ldGVyIG5pY2t0IHp1c3RpbW1lbmQuCkR1IHNhZ3N0OiBvayB6YXAgd2VuIQpEZXIgVG9ldGVyIHNhZ3Q6IGFiZXIgb2huZSByZW1vdmUoKSB1bmQgc29uIFdlaWNoa3JhbXNjaGVpc3MKW1RvZDpdIFRvZXRlciBoYXQgZ2VyYWRlIFJ5bmUgdW1nZWJyYWNodC4KRHUgcnVmc3Q6IEFyZ2ghIERhZnVlciBiaXN0ZSBkcmFuIFRvZXRlciEKeGV2YWwgZGVzdHJ1Y3QoZmluZF9wbGF5ZXIoInRvZXRlciIpKQpUb2V0ZXIgaGF0IGdlcmFkZSBkYXMgU3BpZWwgdmVybGFzc2VuLgpEdSBkZW5rc3QgICAuIG8gTyAoZG9uZSkKRHUgZ3J1ZWJlbHN0IGVpbmUgV2VpbGUgdm9yIERpY2ggaGluLgpEdSBkZW5rc3QgICAuIG8gMCAodmVyZGFtbXQsIGRhcyB3YXIgbnVyIGVpbiBSYXVtZWNoby4uLikKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2FlaG4uLi4gKFllbmRpLCAgNC4gRGV6IDE5OTUsIDIwOjQ5OjEwKToKCgpOTk4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBpbSBBbmRlckxhbmQuLi4gKE11cGZlbCwgIDUuIERleiAxOTk1LCAxMzoxNzo0Nyk6CltFcnptYWdpZXI6Q3VjaHVsbGluXSAqcXVhayoKW0Vyem1hZ2llcjpDdWNodWxsaW5dICpxdWFrKgpbRXJ6bWFnaWVyOkN1Y2h1bGxpbl0gKnF1YWsqCltFcnptYWdpZXI6Q3VjaHVsbGluXSAqcXVhayoKW0Vyem1hZ2llcjpDdWNodWxsaW5dICpxdWFrKgpbRXJ6bWFnaWVyOkN1Y2h1bGxpbl0gKnF1YWsqCltFcnptYWdpZXI6Q3VjaHVsbGluXSAqcXVhayoKW0Vyem1hZ2llcjpDdWNodWxsaW5dICpxdWFrKgpbRXJ6bWFnaWVyOkN1Y2h1bGxpbl0gKnF1YWsqCltFcnptYWdpZXI6Q3VjaHVsbGluXSAqcXVhayoKW0Vyem1hZ2llcjpDdWNodWxsaW5dICpxdWFrKgpbRXJ6bWFnaWVyOkN1Y2h1bGxpbl0gKnF1YWsqCltFcnptYWdpZXI6Q3VjaHVsbGluXSAqcXVhayoKW0Vyem1hZ2llcjpDdWNodWxsaW5dICpxdWFrKgpbRXJ6bWFnaWVyOkN1Y2h1bGxpbl0gKnF1YWsqCltFcnptYWdpZXI6Q3VjaHVsbGluXSAqcXVhayoKW0Vyem1hZ2llcjpDdWNodWxsaW5dICpxdWFrKgpbRXJ6bWFnaWVyOkN1Y2h1bGxpbl0gKnF1YWsqCltFcnptYWdpZXI6Q3VjaHVsbGluXSAqcXVhayoKW0Vyem1hZ2llcjpDdWNodWxsaW5dICpxdWFrKgpbRXJ6bWFnaWVyOkN1Y2h1bGxpbl0gKnF1YWsqCltFcnptYWdpZXI6Q3VjaHVsbGluXSBTbywgQ2hhbm5lbEhpc3Qgd2llZGVyIGxlZXIgOykKCi1tdXBmZWwtIChkZXIgc2ljaCBtYW5jaG1hbCBmcmFndCwgb2IgZGllIEVyem1hZ2llciBoaWVyIGF1Y2ggc28gU3BpZWxraW5kZXIKc2luZC4uLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoLCBpbSBBbmRlckxhbmQuLi4gKEN1Y2h1bGxpbiwgIDUuIERleiAxOTk1LCAxMzozMDoxNCk6CiMhIHJuPU11cGZlbCBydD04MTgxNjU4NjcKCkJlc3RpbW10LCBhYmVyIHNpZSBwb3N0ZW4gZXMgbmljaHQgaW0gQW5kZXJsYW5kIGluICdzY2htYXJybicuCgpRdWFrdCBNdXBmZWwgZGllIE9ocmVuIHZvbGwsClF1YWsuLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYXVmIGRlbSBNZWVyIChMYWlsYSwgIDUuIERleiAxOTk1LCAxOToyNToyMSk6CkVpbiBGZXR6ZW4gbG9lc3Qgc2ljaCB2b20gU2VnZWwgdW5kIHRyZWlidCBhdWZzIE1lZXIuCkRlciBTaGVyaWZmIGlzdCBkYS4gRHUgZnVlaGxzdCBEaWNoIHNpY2hlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmljaCB3aWxsIGhpZXIgd2VjaCAoU251Z2dsZSwgIDUuIERleiAxOTk1LCAyMTowNzoxMSk6CkVzIGdpYnQgdmllbGUgc2ljaHRiYXJlIEF1c2dhZW5nZTogaGlsZmUsIHJhdXMsIHdlc3Rlbiwgbm90YXVzZ2FuZywKaWNod2lsbGhpZXJyYXVzLCBpY2h3aWxsaGllcndlZywgYXJnaCwgZWdhbHdvaGluLCB3ZWl0d2VnLCBtYWFhbWlpaWlpaSB1bmQKbmljaHRzd2lld2VnLgpEZXIgV2VnaGllci4KCgpncmluc2VuZC4uClNudWdnbGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggbmFjaCBtZWluZW0gRWlubG9nZ2VuOiAoTWFyaXRhLCAgNi4gRGV6IDE5OTUsIDA2OjA2OjE1KToKCi4uLgpbQWxsZ2VtZWluOkh1ZXBmZXJdIGh1aHUgbWFhYWFhYWFhYWFhYWFyaWlpaXRhYWFhYWFhYWFhCltBbGxnZW1laW46U2NocnVtcGZpIGRldXRldCBhdWYgZGVuIERhZW1vbl0KLi4uCltBbGxnZW1laW46RXRhaW5dIGhtLi4uIGh1ZXBmZXIgYnJ1ZWxsdCBtYXJpdGEgdW5kIHNjaHJ1bXBmaSB6ZWlndCBhdWYgbmVuCltBbGxnZW1laW46RXRhaW5dIGRhZW1vbi4uLiBnZWJlIGpvZiwgZGFzcyBpY2ggbWFyaXRhIG5pY2h0IGtlbm5lbmxlcm5lLgo6KSkpKQouLi4KW0FsbGdlbWVpbjpNYXJpdGEgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uXQoKW0FsbGdlbWVpbjpFdGFpbiBrbnVkZGVsdCBNYXJpdGEgdm9yc2ljaHRpZy5dCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUHVtYXMgbmV1ZSBRdWVzdC4uLi4gKEN1Y2h1bGxpbiwgIDYuIERleiAxOTk1LCAxOToxMDoxOSk6CgoKPiBmcmFnZSAuLi4gbmFjaCBwdW1hCi4uLiBncmluc3Q6IEljaCBoYWJlIGxldHp0ZSBOYWNodCBtaXQgUHVtYSBnZXJlZGV0LiBFciBtZWludCBkaWUKUXVlc3RlIHNlaSBlaW5mYWNoLCBhYmVyIGRhcyBzYWd0IFRyb3kgdm9uIHNlaW5lbiBhdWNoLi4uLi4KCkN1Y2guLSAgIGdyaW5zZW5kLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtbS4gKEFyZGFuYSwgIDcuIERleiAxOTk1LCAwMDo1MTo0Myk6Cldhc3NuIGxvcyBtaXQgJ05OTicgPwoKTnVyIE5vY2ggTmlldGVuLiA6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4NDogKmdyaW5zKiAoSGFyZGlsLCAgNy4gRGV6IDE5OTUsIDEzOjA0OjU1KToKCkRhcyBrYW5uIGljaCBuaWNodCBhdWYgZGVyIE5OTiBzaXR6ZW4gbGFzc2VuLiBXaXIgd3VlcmRlbiBqYSBnZXJuZSBtZWhyCnNjaHJlaWJlbiwgYWJlciBkZXIgU2hlcmlmZiBoYXRzIGphIHZlcmJvdGVuLiA6LSgKCi1IYXJkaWwuIE5OTiBpbSBVbnRlcmdydW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT3V0aW5nISAoRGF1ZXJnYXN0LCAgNy4gRGV6IDE5OTUsIDE0OjA1OjQ2KToKb2lvaW9pOgoKPiBbQWxsZ2VtZWluOkJvaW5nXSB0c2NodWVzcyEKQWxtdW5kaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCgpXZXIgaGFldHRlIGRhcyBnZWRhY2h0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VubiBNYWdpZXIgbmljaHRzIHp1IHR1biBoYWJlbiA6KSAoTWFuZ28sICA3LiBEZXogMTk5NSwgMTQ6MjQ6MzApOgoKCgpaYXJkb3ogYmV3ZWd0IHNpY2ggZWluZmFsbHNsb3MgaGVyZWluLgogIERlciBXYXNzZXJkcmFjaGUgZ3JlaWZ0IFphcmRveiBtaXQgc2VpbmVtIFNjaHdhbnogYW4uCiAgRGVyIFdhc3NlcmRyYWNoZSB0cmlmZnQgWmFyZG96IHNlaHIgaGFydC4KWmFyZG96IGlzdCBhYnNvbHV0IHRvZWRsaWNoIQpEZXIgV2Fzc2VyZHJhY2hlIGZhZWxsdCB0b3QgenUgQm9kZW4uCgoKVGphIGphCgpNYW5nby4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNlbHRzYW0gKE1hbmdvLCAgNy4gRGV6IDE5OTUsIDE0OjUxOjQ1KToKTWFoYXRtYSAga29tbXQgaGVyZWluZ2VmbG9nZW4uCk1haGF0bWEgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpdIFdhdGVyIEx1aCBoYXQgZ2VyYWRlIE1haGF0bWEgdW1nZWJyYWNodC4KW1RvZDpXYXRlciBMdWhdIFNvIGVpbiBEdW1ta29wZiAuLi4gc2VsYnN0IHNjaHVsZAoKCmljaCBzYWcgbnVyIGtvbWlzY2ggOigKCm5vY2htYWwgYmVpbGVpZAoKTWFuZ28sIGluIHRpZWZlciBUcmF1ZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2F0ZXIgbHVoIChSb2NodXMsICA3LiBEZXogMTk5NSwgMTQ6NTU6MDkpOgpBbmFraW4gc2FndDogS3J1ZnR1ciwgaWRlbnRpZml6aWVyZSBXYXRlciBMdWguCkRlciBEYWVtb24gbmlja3QgZnJldW5kbGljaC4KS3J1ZnR1ciBzYWd0OiBJY2ggaGFiZSBmb2xnZW5lIEluZm9ybWF0aW9uIHVlYmVyIFdhdGVyIEx1aCBlcmhhbHRlbjogRHUKS3J1ZnR1ciBzYWd0OiBrYW5uc3QgaGllcm1pdCBkZW4gWmF1YmVydHJhbmsgYXVzIGRlciBTU1Agb2VmZm5lbi4KQW5ha2luIHNhZ3Q6IEtydWZ0dXIsIGlkZW50aWZpemllcmUgV2F0ZXIgTHVoLgpEZXIgRGFlbW9uIG5pY2t0IGZyZXVuZGxpY2guCktydWZ0dXIgc2FndDogSWNoIGhhYmUgZm9sZ2VuZSBJbmZvcm1hdGlvbiB1ZWJlciBXYXRlciBMdWggZXJoYWx0ZW46IFdhdGVyCktydWZ0dXIgc2FndDogTHVoIGhhdCBrZWluZW4gbWF0ZXJpZWxsZW4gV2VydC4KS3J1ZnR1ciB2ZXJzY2h3aW5kZXQgYWxzIEluc3BpcmF0aW9uc3BhcnRpa2VsLgpBbmFraW4gc2FndDogS3J1ZnR1ciwgaWRlbnRpZml6aWVyZSBXYXRlciBMdWguCkRlciBEYWVtb24gbmlja3QgZnJldW5kbGljaC4KS3J1ZnR1ciBzYWd0OiBJY2ggaGFiZSBmb2xnZW5lIEluZm9ybWF0aW9uIHVlYmVyIFdhdGVyIEx1aCBlcmhhbHRlbjogRGFtaXQKS3J1ZnR1ciBzYWd0OiBrYW5uIG1hbiBXb2xwZXJ0aW5nZXIgdG9ldGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNlbHRzYW0gKE1haGF0bWEsICA3LiBEZXogMTk5NSwgMTQ6NTk6MTEpOgojISBybj1NYW5nbyBydD04MTgzNDQzMDUKaG1tLCBzZWhyIHNlbHRzYW06CkxhYnlyaW50aC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgbm9yZGVuLgpSb2NodXMgZGllIGxpbmtlIHVuZCBkaWUgcmVjaHRlIEhhbmQgZGVzIFRvZGVzLgpaYXJkb3ogZGVyIER1bmtsZS4KR3JpbW1ib3JuIGRlciBBdGhlaXN0LgpIZXhjaGVuIEhvYm8uCkRvbSBCZW5kZWlnaWQsIEJld2FocmVyIHZvbiBOZXNrYXlhLgpCbG9lZGJldXRlbCBCYWJvb24gcmFmZnQgbml4IHVuZCB2ZXJtYXNzZWx0IGFsbGVzLgpaaW5vIGRlciBQcm9waGV0LgpXYXRlciBMdWgsIGRlciBXYXNzZXJkcmFjaGUuCk1hc3RlciBIYXRlIC0+LgpXYXRlciBMdWggc3B1Y2t0IGdpZnRpZ2UgR2FzZSBhdWYgRGljaC4KRGFzIEtyZXV6IGZhZW5ndCBhbiB6dSBsZXVjaHRlbi4KIER1IGhhc3QgamV0enQgMjAwIExlYmVuc3B1bmt0ZSB1bmQgMjEwIE1hZ2llcHVua3RlLgpFaW4gU2FldXJlc3RyYWhsIHNjaGllc3N0IGF1cyBlaW5lbSBNYXVsIFdhdGVyIEx1aHMgdW5kIHZlcmFldHp0IERpY2guCkRhcyBLcmV1eiBmYWVuZ3QgYW4genUgbGV1Y2h0ZW4uCiBEdSBoYXN0IGpldHp0IDE4MyBMZWJlbnNwdW5rdGUgdW5kIDIxMCBNYWdpZXB1bmt0ZS4KV2F0ZXIgTHVoIHNjaGllc3N0IGVpbmVuIGZ1ZXJjaHRlcmxpY2hlbiBXYXNzZXJzdHJhaGwgYXVmIERpY2ggYWIuCkR1IGhhc3QgamV0enQgMTY1IExlYmVuc3B1bmt0ZSB1bmQgMjEwIE1hZ2llcHVua3RlLgpFaW4gQmxpdHogcmFzdCBhdXMgZGVuIE51ZXN0ZXJuIFdhdGVyIEx1aHMgdW5kIHRyaWZmdCBEaWNoLgpEdSBoYXN0IGpldHp0IDE0NCBMZWJlbnNwdW5rdGUgdW5kIDIxMCBNYWdpZXB1bmt0ZS4KRWluIGZ1ZXJjaHRlcmxpY2hlcyBLcmVpc2NoZW4gZHJvaHQgRGVpbiBUcm9tbWVsZmVsbCB6dSB6ZXJyZWlzc2VuLgpEdSBoYXN0IGpldHp0IDEzNCBMZWJlbnNwdW5rdGUgdW5kIDIxMCBNYWdpZXB1bmt0ZS4KPiBEZWluIEZyZXVuZCBNYW5nbyB0ZWlsdCBEaXIgbWl0OiB3ZXIgaGF0IG1laW4gYmlsZCBoZXJhdWZiZXNjaHdvZXJ0PwogIER1IGdyZWlmc3QgV2F0ZXIgTHVoIG1pdCBkZW0gVm9sbHN0cmVja2VyIGFuLgpEdSBrcmF0enQgZGVuIERyYWNoZW4gbmljaHQgZWlubWFsLgogIER1IHZlcmZlaGxzdCBXYXRlciBMdWguCldhdGVyIEx1aCBzcHVja3QgZ2lmdGlnZSBHYXNlIGF1ZiBEaWNoLgpEYXMgS3JldXogZmFlbmd0IGFuIHp1IGxldWNodGVuLgogRHUgaGFzdCBqZXR6dCAxMTEgTGViZW5zcHVua3RlIHVuZCAyMTAgTWFnaWVwdW5rdGUuCkVpbiBTYWV1cmVzdHJhaGwgc2NoaWVzc3QgYXVzIGVpbmVtIE1hdWwgV2F0ZXIgTHVocyB1bmQgdmVyYWV0enQgRGljaC4KRGFzIEtyZXV6IGZhZW5ndCBhbiB6dSBsZXVjaHRlbi4KIER1IGhhc3QgamV0enQgOTIgTGViZW5zcHVua3RlIHVuZCAyMTAgTWFnaWVwdW5rdGUuCldhdGVyIEx1aCBzY2hpZXNzdCBlaW5lbiBmdWVyY2h0ZXJsaWNoZW4gV2Fzc2Vyc3RyYWhsIGF1ZiBEaWNoIGFiLgpEdSBoYXN0IGpldHp0IDc4IExlYmVuc3B1bmt0ZSB1bmQgMjEwIE1hZ2llcHVua3RlLgpFaW4gQmxpdHogcmFzdCBhdXMgZGVuIE51ZXN0ZXJuIFdhdGVyIEx1aHMgdW5kIHRyaWZmdCBEaWNoLgpEdSBoYXN0IGpldHp0IDY2IExlYmVuc3B1bmt0ZSB1bmQgMjEwIE1hZ2llcHVua3RlLgpFaW4gZnVlcmNodGVybGljaGVzIEtyZWlzY2hlbiBkcm9odCBEZWluIFRyb21tZWxmZWxsIHp1IHplcnJlaXNzZW4uCkR1IGhhc3QgamV0enQgNTggTGViZW5zcHVua3RlIHVuZCAyMTAgTWFnaWVwdW5rdGUuCkRlciBTY2h3YW56IFdhdGVyIEx1aHMgdHJpZmZ0IERpY2ggbWl0IGZ1ZXJjaHRlcmxpY2hlciBHZXdhbHQuCldhdGVyIEx1aCBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkxhYnlyaW50aC4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHVudGVuLCBvc3Rlbiwgc3VlZGVuIHVuZCBub3JkZW4uCkFuYWtpbiAtIFJldHNpZW16cmUuCkVpbiBQZW50YWdyYW1tIHZvbiBLaWVzZWxzdGVpbiBnZXplaWNobmV0LgpBbWF6b25lIEphbmljZSBpc3Qgc2Nod2VyIHZlcmxpZWJ0LgpFaW4gQnVtZXJhbmcuCkVpbmUgZ2VzdGVtcGVsdGUgMTAwLU11ZW56ZW4tICdSdW1hdGEnIC0gQnJpZWZtYXJrZQpbVG9kOl0gV2F0ZXIgTHVoIGhhdCBnZXJhZGUgTWFoYXRtYSB1bWdlYnJhY2h0LgpbVG9kOldhdGVyIEx1aF0gU28gZWluIER1bW1rb3BmIC4uLiBzZWxic3Qgc2NodWxkCkRlaW4gS29lcnBlciBnZWhvcmNodCBEaXIgbmljaHQgIQo+IERlaW4gS29lcnBlciBnZWhvcmNodCBEaXIgbmljaHQgIQoKVGphIGVyc3QgSHlkcmEsIGRhbm4gV2F0ZXIgTHVoLCB3ZW5uc3Qga29tbXQsIGtvbW10cyBkaWNrZS4uCk1haGF0bWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3YXRlciBsdWggKE1hbmdvLCAgNy4gRGV6IDE5OTUsIDE1OjAwOjU2KToKIyEgcm49Um9jaHVzIHJ0PTgxODM0NDUwOQoKCgogICAgICAgICAgICAgICAgcm90ZmwKCgoKTWFuZ28sIGltbWVyIG5vY2ggbGFjaGVuZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVZWJlcnpldWdlbmQuLi4uIChOaWNodHMsICA3LiBEZXogMTk5NSwgMjA6MTg6MDApOgoKCkR1IHJ1ZnN0OiBJQ0ggSURJT1QhCkR1IHNhZ3N0OiBzbywgZGFzIGJyYXVjaHRlIGljaC4KWndlaWJsdW0gcnVmdDogam91IQpQdW1hIHRyb2VzdGV0IERpY2guCkx1cHVzIHRlaWx0IERpciBtaXQ6IFNjaG9lbiBkYXNzIGR1cyBhdWNoIG1lcmtzdC4gOykpIFdhcyBpc3NuIGxvcz8KVGlhbWF0IHRlaWx0IERpciBtaXQ6IFN0aW1tdC4KCgpXZWlzcywgd29yYW4gZXMgaXN0Li4uCiIiCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmEgdG9sbCAoTW9yZ290aCwgIDcuIERleiAxOTk1LCAyMjowMzo1Nik6ClsvcGxheWVycy9zaGFrZWRiZWVyL3dvcmtyb29tXQpEdSBiZWZpbmRlc3QgRGljaCBpbiBTaGFrZWRiZWVycyBBcmJlaXRzemltbWVyLiBIaWVyIGZ1ZWhsdCBlciBzaWNoIHNvCnJpY2h0aWcKd29obC4gQW4gZGVuIFdhZW5kZW4gaGFlbmdlbiBSZWdhbGUgdW5kIGVpbiBTY2hyZWlidGlzY2ggc3RlaHQgaW4gZGVyIE1pdHRlCmRlcwpSYXVtZXMuIEVpbiBCaWxkIHZvbiBzZWluZW4gRnJldW5kZW4gaGFlbmd0IGFuIGRlciBXYW5kLiBEZXIgUmF1bSB3aXJkIHZvbgptZWhyZXJlbiBLZXJ6ZW4gZXJsZXVjaHRldCwgZGllIHVlYmVyYWxsIGltIFJhdW0gdmVydGVpbHQgc2luZC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHVudGVuIHVuZCBnaWxkZS4KU2hha2VkYmVlciBpc3QgamV0enQgTWFnaWVyLiBbL21hZ2llcjpzaGFrZWRiZWVyXQpFaW5lIERpZGRsLUtudWRkZWwtTWF1cy4gWy9wbGF5ZXJzL2NhbHVtL29iai9kaWRkbCM3Njg0MjddCkR1IHNhZ3N0OiBoaQpEdSBzYWdzdDogd2lsbHN0IGR1IG1hbCBuZW4gZ2VuaWFsZW4gbnBjIHNlaGVuID8KZmluZ2VyIHNoYWtlZGJlZXIKU2hha2VkYmVlciBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogW0JvY2h1bV0uClBhc3NpdiBzZWl0OiAwMDowMjo1OApWb2xsZXIgTmFtZTogU2hha2VkYmVlciBpc3QgamV0enQgTWFnaWVyClJhc3NlOiBTaGFreSwgIEdpbGRlOiBBYmVudGV1cmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAxM2QgMDA6NDk6NTAsICAgTWFnaWVybGV2ZWw6IDI1ClZlcmhlaXJhdGV0IG1pdDogSm9yaW5kZQpTZWl0IGRlbSAzMC4xMS4nOTQgYmVyZWl0cyAxMSBtYWwgZ2VzdG9yYmVuClJlZ2lvbnNtaXRhcmJlaXRlciB2b246IEluc2Vsbi4KUHJvamVrdDogVmllbCBwcm9nZ2VuLgpwaW5nIHNoYWtlZGJlZXIKT2suCnBpbmcgc2hha2VkYmVlcgpPay4KcGluZyBzaGFrZWRiZWVyCk9rLgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgU2hha2VkYmVlci4KU2hha2VkYmVlciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBuYSB0b2xsIChTaGFrZWRiZWVyLCAgOC4gRGV6IDE5OTUsIDE1OjU4OjAwKToKIyEgcm49TW9yZ290aCBydD04MTgzNzAyMzYKSGkhCgpEYXMgd2FyIGVoZXIgbmljaHQgc28gdG9sbC4gSWNoIHdhciBuYWVtbGljaCB1ZWJlciBNb2RlbSBlaW5nZWxvZ2d0LgpFaW5lIFZlcmJpbmR1bmdzc3RvZXJ1bmcgaGF0IG1pY2ggcmF1c2dlc2NobWlzc2VuLiBCb2NodW0gaGFlbGx0CmRpZSBUZWxuZXQtVmVyYmluZHVuZyBhYmVyIG5vY2ggZWluaWdlIFplaXQgYXVmcmVjaHQuCkljaCBoYWJlIHp3YXIgdmVyc3VjaHQgbWljaCB3aWVkZXIgZWluenV3YWVobGVuLCBhYmVyIG9obmUgRXJmb2xnLgpOYWNoIEFibGF1ZiBlaW5lciBrdXJ6ZW4gWmVpdCB3aXJkIGRhbm4gYXVjaCB2b24gQm9jaHVtIGRpZSBUZWxuZXQtCnZlcmJpbmR1bmcgZ2VraWxsdC4KClRyYWcgZXMgYWxzbyBtaXQgRmFzc3VuZyA7KQoKU2hha2VkYmVlciwgZGVyIE1vZGVtcyB1bmQgU0xJUC1WZXJiaW5kdW5nZW4gc2F0dCBoYXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gWndpdHRlcj8gKExvY28sICA5LiBEZXogMTk5NSwgMTM6MjU6MzIpOgpHYXN0MyBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogLi4uClZvbGxlciBOYW1lOiBHYXN0MyBkaWUgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyaW4KUmFzc2U6IDxrZWluZT4sICBHaWxkZTogQWJlbnRldXJlciwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaAouLi4KCkphIHdhcyBqZXR6dD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClR3ZWVnIGlzdCBkZXIgR3JvZXNzdGUgKFR6dWlvcCwgMTEuIERleiAxOTk1LCAxNDo0MjoyMSk6CkViZW4gYmVpbSBPcmtrb21tYW5kYW50ZW46CgpUd2VlZyBrb21tdCBhbi4KCiggLi4gSWNoIGdlaGUgenVyIEtuZWlwZSApCgpUd2VlZyB0ZWlsdCBEaXIgbWl0OiB3YXIgamEgbmljaCBncmFkIGRpZSBmZWluZSBlbmdsaXNjaGUgZWJlbiEKCkR1IHRlaWxzdCBUd2VlZyBtaXQ6IHdhcyA/CgpUd2VlZyB0ZWlsdCBEaXIgbWl0OiBlcnN0IHJhdWZoYXVlbiB1bmQgZGFubiBhYmhhdWVuLCBzbyBkYXMgaWNoIGRlaW5lIGhhdWUKYmVrb21tZQoKRHUgdGVpbHN0IFR3ZWVnIG1pdDogV2FzIC0gRFUgZ2Voc3QgenUgZWluZW0gTW9uc2VyIHVuZCB3dW5kZXJzdCBEaWNoICwgd2VubgpEdSB0ZWlsc3QgVHdlZWcgbWl0OiBEVSBTY2hsYWVnZSBrcmllZ3N0ID8/CgpUd2VlZyB0ZWlsdCBEaXIgbWl0OiBuZWUuIGJpbiBlaWdlbnRsaWNoIG1laHIgb2RlciB3ZW5pZ2VyIHp1ZmFlbGxpZyBoaWVyClR3ZWVnIHRlaWx0IERpciBtaXQ6IHJlaW5nZXJhbm50LCB1bmQgaGFiIG1pciBkYW5uIGV1cmUgcHJ1ZWdlbGVpIGFuZ2VzZWhlbgoKVHdlZWcgdGVpbHQgRGlyIG1pdDogZWlnZW50bGljaCBuaWNoLCBibG9zcyBtZWluZSBrb21wbGV0dGUgYXVzcnVlc3R1bmcgaXMKVHdlZWcgdGVpbHQgRGlyIG1pdDogbWFsIHdpZWRlciBmbG9ldGVuIGdlZ2FuZ2VuLCB1bmQgZGEgd2FyIGljaCBoYWx0IGF1ZiBkZXIKVHdlZWcgdGVpbHQgRGlyIG1pdDogc3VjaGUKCgpEYW5uIHN1Y2ggbWFsIHNjaG9lbiB3ZWl0ZXIgLSBkaWUgSHlkcmEgd2FydGV0IHNjaG9uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGlwcGUsIG1laW4gYWx0ZXIgS3VtcGVsLCBpY2ggaGFiIERpciBkYXMgTGViZW4gZ2VyZXR0ZXQuIChIYXJkaWwsIDExLiBEZXogMTk5NSwgMTU6MzI6NTcpOgoKSmV0enQga29tbXQgZWluIEthcnRvbi4gTmVpbiwgZWluIExvZy4gR2VyYWRlIHBhc3NpZXJ0LiBTY2huYWxsZW4gU2llIHNpY2gKYW4sIGRhbWl0IFNpZSBuaWNodCB2b3IgTGFjaGVtIHZvbSBCdWVyb3N0dWhsIGZhbGxlbi4KCltBYmVudGV1ZXI6VHdlZWddIDpicnVlbGx0IEZVQ0tJTiBISVBQRQpEdSB0ZWlsc3QgVHdlZWcgbWl0OiBhYmVyIHNvbnN0IGdlaHRzIERpciBub2NoIGd1dD8KVHdlZWcgdGVpbHQgRGlyIG1pdDogc29sbCBpY2ggbWljaCBqZXR6dCBiZWkgZGlyIGVudHNjaHVsZGlnZW4gb2RlciB3YXM/CltBYmVudGV1ZXI6VHp1aW9wXSBUd2VlZzogSWNoIGhhYiBEaWNoIGdld2FybnQgISEKW0FiZW50ZXVlcjpUd2VlZ10gd292b3IgZGVubj8gSEFFSApbQWJlbnRldWVyOlR6dWlvcF0gdm9yIEhpcHBlIDopKQpEdSB0ZWlsc3QgVHdlZWcgbWl0OiBuZXR0IHdhZXIgZXMgc2Nob24uClR3ZWVnIHRlaWx0IERpciBtaXQ6IGhhc3RuIGR1IG1pdCBoaXBwZSBhbSBodXQ/CkR1IHRlaWxzdCBUd2VlZyBtaXQ6IEljaCBoYWIgMyBTZW1lc3RlciB6dXNhbW1lbiBtaXQgaWhtIHN0dWRpZXJ0LgpbQW5tZFJlZDogRGFzIHdhciBnbGF0dCBnZWxvZ2VuLl0KVHdlZWcgdGVpbHQgRGlyIG1pdDogYWxzbyBkYW5uIHNvcnJ5IGZ1ZXIgdm9yaGluLCB1bmQgbnUgc2FnIHNjaG9uIHdvIGlzc2VyClR3ZWVnIHRlaWx0IERpciBtaXQ6IGRlbm4gbnU/ClR3ZWVnIHRlaWx0IERpciBtaXQ6IG51IGhhYiBkaWNoIG5pY2ggc28gbWltb3NlbmhhZnQgdW5kIHNhZyBzY2hvbiB3byBpc3NlcgpUd2VlZyB0ZWlsdCBEaXIgbWl0OiBkZW5uPwpEdSB0ZWlsc3QgVHdlZWcgbWl0OiBkZXIgaGF0IGdlcmFkZSB2b3JsZXN1bmchClR3ZWVnIHRlaWx0IERpciBtaXQ6IGFsc28ga2FubiBpY2ggaWhtIHNpbmVuIGJyaWVmIGdhciBuaWNoIHp1c3RlbGxlbj8KRHUgdGVpbHN0IFR3ZWVnIG1pdDogaWNoIGdsYXViZSwgc28gYWIgaGFsYiBmdWVuZiBpc3QgZXIgd2llZGVyIGRhLgpUd2VlZyB0ZWlsdCBEaXIgbWl0OiB0aGFueAoKClNvIG11c3MgZXMgc2Vpbi4KCi1IYXJkaWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0cmFnIGljaCB6dSBkaWNrIGF1Zj8/PyAoQ3JlYXRpdmUsIDExLiBEZXogMTk5NSwgMTk6NTI6MjApOgoKRHUga251ZGRlbHN0IFNlbWlyYSB1bmQgR3JlbWxpbiBlaXNiYWVybGlrbnVmZmlnLWt1c2NobGlnLXphZXJ0bGljaC1zdWVzcy0Kc3RyZWljaGVsbmQtbGllYmhhYmVuZC1zY2huYXV6aWctd2lsZC4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFNlbWlyYS4KRHUgc2Fnc3Q6IGh1Y2gKCgpIbS4gRGFzIHdhciB3b2hsIHp1dmllbCBmdWVyIG1laW4gRnJhdWNoZW4uLi4KLUNyZWEtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW1tLCBjYXQuLi4gKENyZWF0aXZlLCAxMS4gRGV6IDE5OTUsIDIwOjMxOjMxKToKCkhBVFNDSFNIQ1JSTlNDSE5SUlRUVFNDSFBGRlJQRlRTQ0ghISEhISEhIQpbQWxsZ2VtZWluOkNyZWF0aXZlXSBhaCBqYT8KW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIFRzY2h1bGRpZ3VuZywgbXVzc3RlIG1pciBncmFkIGRpZSBOYXNlIHNjaG5ldXplbiAuLi4uCkNvbm5lY3Rpb24gY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KCi1DcmVhLQpQLlMuOiBTaGVycmlmZnMgc2NobmV1emVuIHNpY2ggYWJlciBoZWZ0aWcgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVG9hc3QgRGlhYm9sbyAoQ2F0d2VhemxlLCAxMS4gRGV6IDE5OTUsIDIxOjEyOjUwKToKIyEgcm49SmltZGlncml6IHJ0PTgxODYzOTA0NwpbVmVybGVndCB2b24ga29jaHJlemVwdGUsIENhdHdlYXpsZSwgMTEuIERleiAxOTk1LCAyMToxMjoxNV06CkhtLCBkYXp1IGZhZWxsdCBtaXIgZm9sZ2VuZGUgRnJhZ2UgZWluOgpIZWlzc3QgZXMgU29zc2UsIG9kZXIgU29zZT8KSWNoIG1laW5lIGpldHp0IG5pY2h0IGdlc2NocmllYmVuLCBzb25kZXJuIGF1c2dlc3Byb2NoZW4uIE1pdApzY2hhcmZlbiBvZGVyIG1pdCB3ZWljaGVtIFMgPz8/CllUQwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZhbnMgKENhdHdlYXpsZSwgMTEuIERleiAxOTk1LCAyMToyODoxNik6ClRha2V0aGF0IHJ1ZnQ6IEhpIEZhbnMgaW4gZGVyIGdhbnplbiBXZWx0Ck1pZXplIHJ1ZnQ6IGljaCBiaW4ga2VpbiBGYW4hISEKQm9pbmcgcnVmdDogKnd1ZXJnKgpDdWNodWxsaW4gcnVmdDogKm5pY2tib2luZ3p1KgpOaWNodHMga29tbXQgYW4uClRha2V0aGF0IHJ1ZnQ6IGlociBtdWVzc3QgZXVjaCBqYSBuaWNodCBnbGVpY2ggYWxsZSBhbmdlc3Byb2NoZW4gZnVlaGxlbgpbQWxsZ2VtZWluOkluc2tpcHBdIGhtbW0gVGFrZVRoYXQsIGluIGRlciBBcmVuYSBrYW5uc3RlIG1hbG4gS29uemVydCBnZWJlbiwKW0FsbGdlbWVpbjpJbnNraXBwXSBpY2ggZGVuayBkYSBrcmllZ3N0ZSBhdWNoIG5lIE1uZWdlIHp1c2NhaGF1ZXIKTmljaHRzIHNhZ3Q6IEFyZW5hLCBUYWtldGhhdCA6KSA/ClRha2V0aGF0IG5pY2t0IE5pY2h0cyB6dS4KRHUgZ3JpbnN0IE5pY2h0cyBhbi4KTmljaHRzIHNhZ3Q6IE5hIGRhbm4gZ2VoIG1hbCBsb3MgOikKW0FiZW50ZXVlcjpUd2VlZ10gaGFzdG4gZHUgZnVlcm4gc2NoZWlzc25hbWVuICJUQUtFVEhBVCwga29tbXQgbWlyIGdsZWljaApbQWJlbnRldWVyOlR3ZWVnXSB3aWVkZXIgZGllIGd1ZWxsZSwgYWVoIGdhbGxlIGhvY2ghIQpOaWNodHMgemllaHQgZWluZW4gR2kgYW4uCk5pY2h0cyB6aWVodCBlaW5lbiBzY2h3YXJ6ZW4gR3VlcnRlbCBhbi4KTmljaHRzIGdlaHQgbmFjaCBOb3JkZW4uCltBbGxnZW1laW46UmFmZmldIG5hbmEgLSB3aWUgbGllYmVuIGFsbGUgdW5zZXJlbiBUaGFrZVRoYXQgLSB3ZW4ga29lbm50ZSBtYW5uCltBbGxnZW1laW46UmFmZmldIGRlbm4gc29ubnN0IHNvIHNjaG9lbiAuLi4uLi4uCltBbGxnZW1laW46QWNyaW1vbl0gQXJlbmEgaWNoIEtvb29tbW1lZSEKW1RvZDpdIE5pY2h0cyBoYXQgZ2VyYWRlIFRha2V0aGF0IHVtZ2VicmFjaHQuCltBbGxnZW1laW46TmljaHRzXSBPaCA7LSkKW0FsbGdlbWVpbjpJbnNraXBwXSBvaG9ob2hvaApbQWxsZ2VtZWluOkNhdHdlYXpsZV0gSG0gLi4uCltCZWlsZWlkOktoaWRhcl0gaG0uLi4gaGF0IHNpY2ggdGFrZXRoYXQgd29obCBzZWxiZXIgZWluZ2VoYW5kZWx0Li4uCk5pY2h0cyBrb21tdCBhbi4KRHUgZ3JpbnN0IE5pY2h0cyBhbi4KRHUgc2Fnc3Q6IGlzdCBkZXIgRlJFSXdpbGxpZyBtaXRnZWtvbW1lbj8/Pz8KTmljaHRzIGdyaW5zdC4KTmljaHRzIHNhZ3Q6IERlciBpc3QgVk9SQVVTR0VMQVVGRU4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVG9hc3QgRGlhYm9sbyAoSmltZGlncml6LCAxMS4gRGV6IDE5OTUsIDIxOjI4OjM3KToKIyEgcm49Q2F0d2VhemxlIHJ0PTgxODcxMjc3MApobW1tIGFsc28KaWNoIHd1ZXJkZSBtYWwgc2FnZW46CiBzYXVjZSAhIChzYXV6ZSkgb2RlciA/CgoqZ3J1ZWJlbCoKKmltIEtvY2h0b3BmIHJ1ZWhyKgpKaW0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUYWtlVGhhdCBkaWUgWC4gKFJhZmZpLCAxMS4gRGV6IDE5OTUsIDIyOjE4OjU0KToKVGFrZVRoYXQgdW5zZXIgRnJldW5kOgoKCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgpUYWtldGhhdCBzaWVodCBldHdhcyBtaXRnZW5vbW1lbiBhdXMuCj4gRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6ClRha2V0aGF0IG11c3MgVHJlZmZlciBoaW5uZWhtZW4uCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgpUYWtldGhhdCBtdXNzIHNjaHdlcmUgVHJlZmZlciBlaW5zdGVja2VuLgpbVG9kOl0gTmljaHRzIGhhdCBnZXJhZGUgVGFrZXRoYXQgdW1nZWJyYWNodC4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6ClRha2V0aGF0IHNpZWh0IGV0d2FzIG1pdGdlbm9tbWVuIGF1cy4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6ClRha2V0aGF0IHN0ZWh0IGt1cnogdm9yIGRlbSBFbmRlLCBtZWluZSBEYW1lbiB1bmQgSGVycmVuLiBEaWUgRW50c2NoZWlkdW5nCnN0ZWh0IHVubWl0dGVsYmFyIGJldm9yISEKRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6Ck1laW5lIERhbWVuLCB1bmQgSGVycmVuLCB3YXMgZnVlciBlaW4gS2FtcGYhIFdpciB3dXJkZW4gWmV1Z2VuIGVpbmVzIGdyb3NzZW4KS2FtcGZlcywgZGVyIGluIE5pY2h0cyBlaW5lbiB3dWVyZGV2b2xsZW4gU2llZ2VyIGZhbmQhIFVucyBibGVpYnQgbnVuIG5pY2h0cwp3ZWl0ZXIsIGFscyBJaG5lbiBlaW5lIHNjaG9lbmUgSGVpbXJlaXNlIHp1IHd1ZW5zY2hlbiEgQmlzIHp1bSBuYWVjaHN0ZW4gbWFsIQpFaW4gTWFubiBtaXQgZ3Jvc3NlbiBTcGVja2FybWVuIHVuZCBlaW5lciBTY2h1ZXJ6ZSBhdWYgZGVyICdPdHRvcyBJbWJpc3N0dWJlJwpzdGVodCBrb21tdCBpbiBkaWUgQXJlbmEgdW5kIHNjaGxlaWZ0IGRpZSBMZWljaGUgcmF1cy4KW0FsbGdlbWVpbjpSYWZmaV0gV0lMTCBBZUtUU0NITiBzZWhlbiAhCltBbGxnZW1laW46TmljaHRzXSBTb3JyeSwgaGF0dGUgZmFsc2NoZSBBbmdyaWZmZSBlaW5nZXN0ZWxsdC4uLgpOaWNodHMgZ2VodCBhdXMgZGVyIEFyZW5hLgpbQWxsZ2VtZWluOlJlaW5lbGRlXSBoZWVlLCBuaWNodCBzbyBzY2huZWxsLCBzbyBzY2huZWxsIGthbm4gaWNoIGphIGdhciBuaWNodApbQWxsZ2VtZWluOlJlaW5lbGRlXSBhdWYgZGllIHRyaWJ1ZW5lIGxhdWZlbiwgc2NoaWVidW5nCltBbGxnZW1laW46UmFmZmldIHVmZiBzY2hvbiB3aWVkZXIgdm9yYmVpID8KW0FsbGdlbWVpbjpOaWNodHNdICpraWNoZXIqIDoKW0FsbGdlbWVpbjpOaWNodHNdIER1IHdpcnN0IG1pdCBNdXNpayB1bmQgdmllbCBKdWJlbCBhdXMgZGVyIEFyZW5hCltBbGxnZW1laW46TmljaHRzXSB2ZXJhYnNjaGllZGV0LgpbQWxsZ2VtZWluOk1hcml0YV0gbWFubiBjdWNoLCBsYXNzIGRpciBuYWVjaHN0ZXMgbWFsIG4gYmlzc2NoZW4gemVpdApbQWxsZ2VtZWluOktoaWRhcl0gZGVzd2VnZW4gaGF0cyBzbyBsYW5nZSBnZWRhdWVydCwgYmlzIGVyIHRvdCB3YXI/CltCZWlsZWlkOlppbm9dIG5hamEsIGJpcyB0YWtldGhhdCBob3BwbGEgb2RlciBiZW9iYWNodGVyIGVpbmdlaG9sdCBoYXQsIHdpcmQKW0JlaWxlaWQ6Wmlub10gbm9jaCB2aWVsIGJsdXQgaW4gZGVyIGFyZW5hIGZsaWVzc2VuIG11ZXNzZW4gOykKW0FsbGdlbWVpbjpOaWNodHNdIEpvCltBbGxnZW1laW46TmljaHRzXSBEdW1tIGRhcyA7LSkKW0FsbGdlbWVpbjpSYWZmaV0gU0NISUVCVU5HIC0gV0lyIGZvcmRlcm4gV2llZGVyaG9obHVuZyAtIERlciBrYW1wZiB3YXIKW0FsbGdlbWVpbjpSYWZmaV0gdW5ndWVsdGlnICEKW0FsbGdlbWVpbjpOaWNodHNdIERhenUgbXVzcyBUaFRhIGVyc3RtYWwgYXVzIGRlciBTZXF1ZW56IGtvbW1lbi4KW0FsbGdlbWVpbjpNYXJpdGFdIGViZW4sIGljaCBmb3JkZXJlIGRpZSBzb2ZvcnRpZ2UgYXVmaGVidW5nCltBbGxnZW1laW46TXVwZmVsXSBkYXMgbWFjaHQgZGlyIHdvaGwgc3Bhc3MgdGFrZXRoYXQgd2FzPwpbQWxsZ2VtZWluOk5pY2h0c10gS2xhciA6LSkKW0FsbGdlbWVpbjpNYXJpdGFdIGFjaCBpc3QgamEgYXVjaCBlZ2FsLCBpY2ggYmxlaWIgbWFsIGF1ZiBkZXIgdHJpYnVlbmUKW0FsbGdlbWVpbjpNYXJpdGFdIHNpdHplbgpbQWxsZ2VtZWluOk11cGZlbF0gdGFrZSB0aGF0LCBhbmQgdGhhdCwgYW5kIHRoYXQsIGFuZC4uLiBbVG9kOl0gTmljaHRzIGhhdApbQWxsZ2VtZWluOk11cGZlbF0gZ2VyYWRlIFRha2V0aGF0IHVtZ2VicmFjaHQuIDotKQpbQWxsZ2VtZWluOk5pY2h0cyBncmluc3QuXQpUYWtldGhhdCBydWZ0OiBOaWNodCBpY2gga29tbSB3aWVkZXIKVGFrZXRoYXQgcnVmdDogTmljaHQgaWNoIGtvbW0gd2llZGVyClRha2V0aGF0IHJ1ZnQ6IE5pY2h0IGljaCBrb21tIHdpZWRlcgpUYWtldGhhdCBydWZ0OiBOaWNodCBpY2gga29tbSB3aWVkZXIKVGFrZXRoYXQgcnVmdDogTmljaHQgaWNoIGtvbW0gd2llZGVyCltBbGxnZW1laW46TmljaHRzXSBBcmVuYSwgVGFrZVRoYXQ/CltBbGxnZW1laW46TmljaHRzXSBBcmVuYSwgVGFrZVRoYXQ/CltBbGxnZW1laW46TWFyaXRhIGRlbmt0IC4gbyBPIChtYW5uIGhhdCBkZXIgbmUgcHJvZmlsbmV1cm9zZSldCk11cGZlbCBydWZ0OiB3YXMgZGVyIGthbm4gNXggcnVmZW4/CltBbGxnZW1laW46TmljaHRzXSBXaWV2aWVsIEJhbmRtaXRnbGllZGVyIGhhdCBUYWtlVGhhdD8gND8gNT8gQWxzbyBub2NoIDItMwpbQWxsZ2VtZWluOk5pY2h0c10gbWFsLCBkYW5uIGlzIHJ1aGUuLi4KW0FsbGdlbWVpbjpBc21vZGlzXSBCYW5kZW5taXRnbGllZGVyID8KW0FsbGdlbWVpbjpOaWNodHMgZ2lnZ2xlcy5dCltBbGxnZW1laW46QXNtb2Rpc10gZGEgaGFiIGljaCBtZWhyIDopCltBbGxnZW1laW46VGFzaGFdIEhpaG8hCltBbGxnZW1laW46RXRhaW5dIEVJUyEKW0FsbGdlbWVpbjpSZWluZWxkZV0gZWlzIQpbQWxsZ2VtZWluOk1hcml0YSBraWNoZXJ0Ll0KW0FsbGdlbWVpbjpUYXNoYV0gSG1tLCBpY2ggd29sbHQgZ3JhZGUgbmFjaGZyYWdlbiwgb2IgV2lsbG93IGRhIGlzdC4gOikKW0FsbGdlbWVpbjpSZWluZWxkZV0ga2VpbmUgYXVzcmVkZW4gOykKW0FsbGdlbWVpbjpOaWNodHMgZ2lnZ2xlcy5dCltBbGxnZW1laW46QXNtb2Rpc10gZGEgaGFiIGljaCBtZWhyIDopCltBbGxnZW1laW46VGFzaGFdIEhpaG8hCltBbGxnZW1laW46RXRhaW5dIEVJUyEKW0FsbGdlbWVpbjpSZWluZWxkZV0gZWlzIQpbQWxsZ2VtZWluOk1hcml0YSBraWNoZXJ0Ll0KW0FsbGdlbWVpbjpUYXNoYV0gSG1tLCBpY2ggd29sbHQgZ3JhZGUgbmFjaGZyYWdlbiwgb2IgV2lsbG93IGRhIGlzdC4gOikKW0FsbGdlbWVpbjpSZWluZWxkZV0ga2VpbmUgYXVzcmVkZW4gOykKW0FsbGdlbWVpbjpUYXNoYV0gTXVzcyBldWNoIGxlaWRlciBlbnR0YWV1c2NoZW46IEljaCBoYWJzIGdlc3Rlcm4gdmVybmljaHRldC4KW0FsbGdlbWVpbjpFdGFpbiBpc3QgenV0aWVmc3QgZW50dGFldXNjaHQuIDsoXQpbQWxsZ2VtZWluOlJlaW5lbGRlXSBidXV1dXV1dWhoaGhoaGhoaGhoaGhoISBwZnVpLCBzY2hpZWJ1bmcsbWFnaWVyIQpOaWNodHMgYmV0cml0dCBkaWUgQXJlbmEuClJlaW5lbGRlIGtvbW10IGFuLgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKREVSIEtBTVBGIElOIERFUiBBUkVOQSBCRUdJTk5UISBNT0VHRSBERVIgU1RBRVJLRVJFIEdFV0lOTkVOIQpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKVGFrZXRoYXQgc2llaHQgZXR3YXMgbWl0Z2Vub21tZW4gYXVzLgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKVGFrZXRoYXQgd2lyZCB3aWVkZXJob2x0IGdldHJvZmZlbiEKRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6ClRha2V0aGF0IHdpcmQgZ2V0cm9mZmVuLgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKRGllIGVudHNjaGVpZGVuZGUgUGhhc2UhIERhcyBFbmRlIHZvbiBUYWtldGhhdCBpc3Qgc2Nob24gc2VociBuYWhlISEKS2hpZGFyIGtvbW10IGFuLgpbVG9kOl0gTmljaHRzIGhhdCBnZXJhZGUgVGFrZXRoYXQgdW1nZWJyYWNodC4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6Ck1laW5lIERhbWVuLCB1bmQgSGVycmVuLCB3YXMgZnVlciBlaW4gS2FtcGYhIFdpciB3dXJkZW4gWmV1Z2VuIGVpbmVzIGdyb3NzZW4KS2FtcGZlcywgZGVyIGluIE5pY2h0cyBlaW5lbiB3dWVyZGV2b2xsZW4gU2llZ2VyIGZhbmQhIFVucyBibGVpYnQgbnVuIG5pY2h0cwp3ZWl0ZXIsIGFscyBJaG5lbiBlaW5lIHNjaG9lbmUgSGVpbXJlaXNlIHp1IHd1ZW5zY2hlbiEgQmlzIHp1bSBuYWVjaHN0ZW4gbWFsIQpFaW4gTWFubiBtaXQgZ3Jvc3NlbiBTcGVja2FybWVuIHVuZCBlaW5lciBTY2h1ZXJ6ZSBhdWYgZGVyICdPdHRvcyBJbWJpc3N0dWJlJwpzdGVodCBrb21tdCBpbiBkaWUgQXJlbmEgdW5kIHNjaGxlaWZ0IGRpZSBMZWljaGUgcmF1cy4KUmVpbmVsZGUgcnVmdDogaWNoIHdpbGwgYnV0IHNlaGVuCltBbGxnZW1laW46VGFzaGFdIEFjaCBqYSwgd2FzIGljaCB2ZXJnZXNzZW4gaGF0dGU6ClJlaW5lbGRlIHJ1ZnQ6IGljaCBXT0xMVEUgYmx1dCBzZWhlbgpUYXNoYSBydWZ0OgpKYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhIQpUYXNoYSBydWZ0OiBIQSBpc3QgZmVydGlnIQpbQWxsZ2VtZWluOk5pY2h0c10gTWlzdCwgd2llZGVyIDMgU2NobGFlZ2UgZ2VicmF1Y2h0LgpbQWxsZ2VtZWluOlJlaW5lbGRlXSBkYXMgbXVzcyBiZXNzZXIgd2VyZGVuCltBbGxnZW1laW46TmljaHRzXSBOYWphLgpbQWxsZ2VtZWluOk5pY2h0c10gOSBNYWdpZXB1bmt0ZSBvZGVyIHNvCltBbGxnZW1laW46UmVpbmVsZGVdIGFsc28gZHUgdWVic3QgamV0enQgc28gbGFuZ2UgYmlzIDIgcmVpY2hlbgpbQWxsZ2VtZWluOk5pY2h0c10gT3BzLCBuZWluLCAxOS4KTmljaHRzIGdlaHQgYXVzIGRlciBBcmVuYS4KW0FsbGdlbWVpbjpSZWluZWxkZV0ga2FubiBtYWwgZWlubWFnaWVyIHRha2V0aGF0IGF1cyBkZXIgc2VxdWVueiBob2xlbj8gZGllCltBbGxnZW1laW46UmVpbmVsZGVdIHBhc3VlbiBzaW5kIHNvIGxhbmcKS2hpZGFyIHZlcmJsYXNzdCB1bmQgZW50c2Nod2luZGV0IGFuc2NoZWluZW5kLgoKOgo6CjoKCltBbGxnZW1laW46VGFrZXRoYXRdIE5pY2h0cyBkdSBGbGFzY2hlIGljaCBoYXR0IGphIG51ciAzNSBscCdzCltBbGxnZW1laW46TXVwZmVsXSBzb2xsIGljaCBkaWNoIGt1cnogaGVpbGVuIHZvcmhlcj8gOi0pCltBbGxnZW1laW46UmVpbmVsZGVdIGF1IGphCltBbGxnZW1laW46VGFrZXRoYXRdIEJpdHRlIEJpdHRlCltBbGxnZW1laW46TmljaHRzXSBPaC4KW0FsbGdlbWVpbjpSZWluZWxkZV0gbmljaHRzIGhhdCBqYSBmYXN0IG1laHIgbXAgdmVybG9yZW4gYWxzIHR0IGxwIDopCltBbGxnZW1laW46TmljaHRzXSBLb21tIGluIEZyYW5rcyBLbmVpcGUsIGljaCBoZWlsJyBEaWNoIGt1cnouCgoKKkdSSU5TKgoKQXVmbXVlcGZpZyB3aWUgaW1tZXIgLSBlciBrYW5ucyBuaWNodCBsYXNzZW4KR3J1c3MKSC4KUC5TLjogRGFzIG5hZWNoc3RlIG1hbCB3YXIgbm9jaCBzY2huZWxsZXIgdm9yYmVpLgpQLlMuOiBFcyBzaW5kIGVpbiBwYWFyIFplaWxlbiB2ZXJsb3JlbmdlZ2FuZ2VuIC0gYWJlciBkYXMgbWFjaHQgbml4IGJlaSBlaW5lbQpUZXh0IHZvbiBUYWtlIFRoYXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplaW4gZWNodGVyIGJydWVsbGVyIDotKSAoTXVwZmVsLCAxMS4gRGV6IDE5OTUsIDIzOjQwOjE0KToKW0FsbGdlbWVpbjpIdWVwZmVyXSBpY2ggaGFiIG5vY2gga2VpbmUgbGRlcmhvc2UKW0FsbGdlbWVpbjpIdWVwZmVyXSBtZWluIHN1ZXNzZXIgaGludGVybiB3aXJkIGxhbmdzYW0ga2FsdAoKKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUb2FzdCBEaWFib2xvIChBY3JpbW9uLCAxMS4gRGV6IDE5OTUsIDIzOjUxOjExKToKIyEgcm49Q2F0d2VhemxlIHJ0PTgxODcxMjc3MAphcmdsLCBtaXN0IGRldXRzY2hlIFJlY2h0c2NocmVpYnJlZm9ybSwgc2llIG1laW5lbiBzaWUgbWFjaGVucyBiZXNzZXIgdW5kIGluCldpcmtsaWNoa2VpdCB3aXJkcyBzY2hsZWNodGVyIQoKU29zemUgd2lyZCBtaXQgd2VpY2hlbSwgc3RpbW1oYWZ0ZW0gcyBnZXNwcm9jaGVuIHVuZCBtaXQgc2NoYXJmZW0gcwpnZXNjaHJpZWJlbi4KCkhvZXJ0IGFuLCB3YXMgaWNoIHVlYmVyIGRpZSBaZWl0IHZvciBkZXIgIlJlY2h0c2NocmVpYnJlZm9ybSIgQW5mYW5nIGRpZXNlcwpKYWhyaHVuZGVydHMgZXJmYWhyZW4gaGFiZToKRGFtYWxzICh3aWUgaGV1dGUpIGdpYnQgZXMgZHJlaSB2ZXJzY2hpZWRlbmUgQXJ0ZW4gZGVzIHM6IERhcyBzdGltbWxvc2UKZWluZmFjaGUgcywgZGFzIHN0aW1tbG9zZSBzY2hhcmZlIHN6IHVuZCBkYXMgc3RpbW1oYWZ0ZSB3ZWljaGUgaHMuCkRhbWFscyBoYXQgbWFuIHdlbmlnc3RlbnMgZGllIFdvcnRlIG5vY2ggZ2VuYXVzbyBnZXNjaHJpZWJlbiwgd2llIHNpZQpnZXNwcm9jaGVuIHd1cmRlbi4KCkhldXRlIHdpcmQgc3ogaW4gbWFuY2hlbiBGYWVsbGVuIGFscyBzcyB1bmQgaW4gYW5kZXJlbiBGYWVsbGVuIGFscyBzegpnZXNjaHJpZWJlbiwgdW5kIGhzIHdpcmQgZHVyY2hnZWhlbmQgYWxzIHN6IGdlc2NocmllYmVuLgoKTWVya3QgZXVjaDogRXMgaXN0IGtlaW5lc3dlZ3MgZWluZSBWZXJlaW5mYWNodW5nLCB3ZW5uIG1hbiBkaWUgQW56YWhsIGRlcgpCdWNoc3RhYmVua29tYmluYXRpb25lbiB2ZXJyaW5nZXJ0LCBzb25kZXJuIGVzIG1hY2h0IGRhcyBHYW56ZSBudXIKc2Nod2llcmlnZXIuCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIsIFJlY2h0c2NocmVpYi1BcyB1bmQgVmVydGVpZGlnZXIgZGVyIFVtbGF1dGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBNYWdpZXIgc28gdHJlaWJlbi4uLiAoVGFzaGEsIDEyLiBEZXogMTk5NSwgMDA6MDI6MTMpOgpIaSEKCkViZW4gd2FyIGdyYWQgd2llZGVyIG1laW5lIExpZWJsaW5nc3N0dW5kZToKCj4gRHUgc2NoaWVic3QgRGVpbiByZXAtZmlsZSBuYWNoIC9kZXYvIDAKClRhc2hhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplYmVuIHBhc3NpZXJ0IChGeXQsIDEyLiBEZXogMTk5NSwgMDE6Mjc6MjMpOgpbQWxsZ2VtZWluOlNudWdnbGUgenVlY2t0IGRpZSBEcmFodGJ1ZXJzdGUgdW5kIGdlaHQgamV0enQuLiBFVEFJTiBnZWggdm9uCm1laW5lbSBPaHIgd2VnLCBkYXMgbnV0enQgbml4IV0KU251Z2dsZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKOgpOb2phLi4gYW5zY2hlaW5lbmQgZG9jaC4uLgo6CkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyBzb2xsIGRlbm4gZGFzPyAoWmlsbHVzLCAxMi4gRGV6IDE5OTUsIDAyOjMyOjM5KToKbGV0emhpbiBhc3Vwcm9iaWVydDp0bSB6aWxsdXMgYnllIGJ5ZQpaaWxsdXMgdGVpbHQgRGlyIG1pdDogYmllIGJpZQpEdSB0ZWlsc3QgWmlsbHVzIG1pdDogYnllIGJ5ZQoKV2lyZCBkYSBkYXMgeSBpbiBlaW4gaSB2ZXJ3YW5kZWx0ID8/Pz8Kb2RlciBzZWggaWNoIG5pY2h0IG1laHIga2xhciwgd2VpbHMgc2Nob24gc28gc3BhZXQgaXN0IDstKQoKYnllIG1pdCB5LCBaaWxsdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFRvYXN0IERpYWJvbG8gKFJhZmZpLCAxMi4gRGV6IDE5OTUsIDExOjA3OjQ4KToKIyEgcm49QWNyaW1vbiBydD04MTg3MjIyNzEKCkJpdHRlIG5pY2h0IHZlcmdlc3NlbiBkYXNzIGVzIGRhIGRhbm4gYXVjaCBub2NoIHVudGVyc2NoaWVkZSB6d2lzY2hlbiBkZW4KRGV1dHNjaGVuIFJlZ2lvbmVuIGluIGRlciBBdXNzcHJhY2hlIGdpYnQgIQoKR3J1c3MKSC4KQWNyaW1vbnMgdHJldWVyIEtuYXBwZSBpbSBLYW1wZiBmdWVyIGRpZSBVbWxhdXRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmVuZGVpZ2lkLi4uPyAoQ3VjaHVsbGluLCAxMi4gRGV6IDE5OTUsIDEyOjI4OjEzKToKCkJlbmRlaWdpZCBiZXRyaXR0IGRpZXNlIFdlbHQuCltBbGxnZW1laW46QmVuZGVpZ2lkXSBTdWdhciBpbiB0aGUgTW9ybmluZy4uLi4uLi4gVGFjaCBhdWNoIQpCZW5kZWlnaWQgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKClNjaG5lbGxlciBhbHMgZGVyIFNoZXJpZmYgZXJsYXVidC4uLgooc3RhdW5lbmQpIEN1Y2guLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTY2h3ZXJlciBXZWcgKFJlaW5lbGRlLCAxMi4gRGV6IDE5OTUsIDE5OjQxOjUwKToKIyEgcm49UmltdXMgcnQ9ODE4Nzc3MDM5CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgUmVpbmVsZGUsIDEyLiBEZXogMTk5NSwgMTk6NDE6MTZdOgpobW0sCgppY2ggdWViZXJsZWdlLCBvYiBpY2ggbmljaHQgZWluZmFjaCBhdWYgaGFyZGlscyBhcnRpa2VsIHZlcndlc2llbiBzb2xsCihkZW4gbWl0IGRlciAnYWxsZS0zLW1vbmF0ZS1rb21tdHMtd2llZGVyJyBmZXN0c3RlbGx1bmcsIGFsbGVyZGluZ3MKd2Vpc3MgaWNoIG5jaWh0IG9iIGRpZSBsZXR6ZSBkaXNrdXNzaW9uIHp1bSB0aGVtYSBzZWhlciB1bmQgcXVlc3RlbgpzY2hvbiAzIG1vbmF0ZSBoZXIgaXN0IDspCgpyZWluZWxkZSAtIHZlcmxlZ2VuIG9kZXIgbG9lc2NoZW4/IG1hbCBzZWhlbgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRvYXN0IERpYWJvbG8gKENhdHdlYXpsZSwgMTIuIERleiAxOTk1LCAxOTo0ODowMik6CiMhIHJuPVJhZmZpIHJ0PTgxODc2Mjg2OApFYmVuLgpJY2ggd3VlcmRlIFNvc3NlIG5hZW1saWNoIG1pdCBzY2hhcmZlbSBzIGF1c3NwcmVjaGVuIDopCkljaCBoYWIgbWljaCBkYSBzY2hvOW4gbWl0IGRpdmVyc2VuIExldXRlbiBnZXN0cml0dGVuIC4uLi4KWW91cnMgdHJ1bHksCiAgICAgIENhdHdlYXpsZWYKKG9obmUgZikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFRvYXN0IERpYWJvbG8gKEFjcmltb24sIDEyLiBEZXogMTk5NSwgMTk6NDk6NDIpOgojISBybj1DYXR3ZWF6bGUgcnQ9ODE4Nzk0MDgyCldpcmtsaWNoPyBTbyBtaXQga3VyemVtIG8gdW5kIGhlZnRpZ2VtLCBzY2hhcmZlbSBzPyBncmF1c2lnIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVG9hc3QgRGlhYm9sbyAoQ3JlYXRpdmUsIDEyLiBEZXogMTk5NSwgMTk6NTA6MTkpOgojISBybj1BY3JpbW9uIHJ0PTgxODc5NDE4MgoKKmp1YmVsKiBlaW5lIG5ldWUgcmVwbHktU2VyaWUgOikgQXVmIGRhc3Mgd2lyIGRpZSA1MDAwIHNjaGFmZmVuICpmcmVjaGdyaW5zKgotQ3JlYS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFRvYXN0IERpYWJvbG8gKENhdHdlYXpsZSwgMTIuIERleiAxOTk1LCAxOTo1MzozNCk6CiMhIHJuPUFjcmltb24gcnQ9ODE4Nzk0MTgyCk5lZWVlZWVlLgpNaXQgbGFhYWFhYW5nZW0gTy4KU29vb29vb3N6ZS4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVG9hc3QgRGlhYm9sbyAoQWNyaW1vbiwgMTIuIERleiAxOTk1LCAyMDowNDo1MSk6CiMhIHJuPUNhdHdlYXpsZSBydD04MTg3OTQ0MTQKRGFubiBzcHJpY2hzdCBkdSBlcyBuaWNodCBtaXQgc2NoYXJmZW0gcyBhdXMsIHNvbmRlcm4gbWl0IGRlbSB3ZWljaGVuIHMuCldhcyBrYW5uIGljaCBkYWZ1ZXIsIHdlbm4gZGllIGhldXRpZ2UgUmVjaHRzY2hyZWlidW5nIHZlcmxhbmd0LCBlcyBtaXQKc2NoYXJmZW0gcyB6dSBfc2NocmVpYmVuXz8KRHUgc3ByaWNoc3QgIlNvc3plIiBnYXJhbnRpZXJ0IG5pY2h0IHNvIGF1cyB3aWUgIkZhc3oiLgoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBUb2FzdCBEaWFib2xvIChSYWZmaSwgMTIuIERleiAxOTk1LCAyMDowNzoyMyk6CiMhIHJuPUNhdHdlYXpsZSBydD04MTg3OTQ0MTQKa2VubnQgaGllciBrZWluZXIgZGVuIFN0YW5kYXJkcnVmIGluIGVpbmVyIEJheWVyaXNjaGVuIFdpcnRzY2hhZnQgd2VubiBkaWUKQmVkaWVudW5nIGtvbW10ID8KCiAgICBWb29vb3JycnJzaWNodCBTb3Nzc3MKCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogVG9hc3QgRGlhYm9sbyAoUnVtYXRhLCAxMi4gRGV6IDE5OTUsIDIyOjM1OjI1KToKIyEgcm49QWNyaW1vbiBydD04MTg3OTUwOTEKRmFzeiBoYXQgZWluZSBrdXJ6ZXMgJ2EnLgpTb3N6ZSBoYXQgd2llICdncm9zeicgZWluZSBsYW5nZXMgJ28nLCBkZXNoYWxiIHdpcmQgZXMgZXR3YXMgYW5kZXJzCmdlc3Byb2NoZW4KZGFzICdzJyBpc3QgaW4gYmVpZGVuIHN0aW1tbG9zLgoKRGFzIHdhciBtZWluZSBTb3N6ZSwgYWVoIFNlbmYKUnVtYXRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBUb2FzdCBEaWFib2xvIChNdXJrZXMsIDEzLiBEZXogMTk5NSwgMDg6NDc6MTkpOgojISBybj1BY3JpbW9uIHJ0PTgxODc5NTA5MQpNZWluc3QgRHUgbWl0IEZhc3ogamV0enQgRmFzcyBvZGVyIEZBWj8gT2J3b2hsIGRpZSBsZXR6dGVyZW4gc2ljaCBsaWViZXIKYWxzIEYgQSBaIGF1c3NwcmVjaGVuLgpNdXJrZXMgc2NocmVpYnQgbGllYmVyIGdsZWljaCBpbiBTY2htYXJybgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVG9hc3QgRGlhYm9sbyAoVHp1aW9wLCAxMy4gRGV6IDE5OTUsIDEwOjI3OjExKToKIyEgcm49QWNyaW1vbiBydD04MTg3OTQxODIKU28tc2Ugc2FnZW4gbnVyIGRpZSBNdWVuc3RlcmxhZW5kZXIgdW5kIGRhIGxhZXVmdHMgbWlyIGplZGVzbWFsCmthbHQgZGVuIFJ1ZWNrZW4gcnVudGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVG9hc3QgRGlhYm9sbyAoR3JpbW1ib3JuLCAxMy4gRGV6IDE5OTUsIDExOjQzOjE2KToKIyEgcm49VHp1aW9wIHJ0PTgxODg0NjgzMQoKQmxvc3MgbWFsIG5lYmVuYmVpOgpTb3NzZSB3aXJkIG1pdCAnc3onIGdlc2NocmllYmVuIHVuZCBtaXQgc3RpbW1sb3NlbSAod2FzIGF1Y2ggaW1tZXIgInNjaGFyZiIKb2RlciAid2VpY2giIHNlaW4gc29sbCkgZ2VzcHJvY2hlbi4KRGFtaXQgaXN0IGRhcyAnbycgYXV0b21hdGlzY2ggbGFuZywgc28gd2llIGluICJob2xlbiIgenVtIEJlaXNwaWVsLgpBbmRlcm5mYWxscyB3dWVyZGUgZXMgbWl0ICdzcycgZ2VzY2hyaWViZW4gd2VyZGVuLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LiBLcmllZ3QgYmVpICJTb3NlIiBtaXQgc3RpbW1oYWZ0ZW0gJ3MnIGVpbmUgR2FlbnNlaGF1dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFRvYXN0IERpYWJvbG8gKENyZWF0aXZlLCAxMy4gRGV6IDE5OTUsIDExOjQ1OjIzKToKIyEgcm49R3JpbW1ib3JuIHJ0PTgxODg1MTM5NgoKRWluZSBBdXNuYWhtZSBnaXBzIGFiZXIuIFN6IGFtIEVuZGUgendpbmd0IGRlbiBWb2thbCwga3VyeiB6dSB3ZXJkZW4uIFNpZWhlCkZsdXN6LCBGYXN6LCBldGMuIEF1c25haG1lOiBTcGFzei4KLUNyZWEtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBUb2FzdCBEaWFib2xvIChaZXBoeXIsIDEzLiBEZXogMTk5NSwgMTI6MTM6MzMpOgojISBybj1DcmVhdGl2ZSBydD04MTg4NTE1MjMKVW5kIHdpZSBzcHJpY2hzdCBEdSBkYW5uICJGdXNzIiBhdXMsIENyZWE/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogVG9hc3QgRGlhYm9sbyAoR3JpbW1ib3JuLCAxMy4gRGV6IDE5OTUsIDEyOjIwOjE0KToKIyEgcm49WmVwaHlyIHJ0PTgxODg1MzIxMwoKTWl0IGt1cnplbSAndScgbmF0dWVybGljaC4gSGVpc3N0IHNvdmllbCB3aWUgInJvdGhhYXJpZyIuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCB1bmQgZWluZ2V3YW5kZXJ0ZXIgUmhlaW5sYWVuZGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdG9sbGUgcmVzZXRzIChLaWVzZWxzdGVpbiwgMTMuIERleiAxOTk1LCAxNDoyODoyOSk6Cj4gb2VmZm5lIHBvcnRhbApEdSBvZWZmbmVzdCBlaW4gUG9ydGFsLgo+IG4KPiBFaW4gUG9ydGFsIHNjaGxpZXNzdCBzaWNoLgpEYXMgUG9ydGFsIGlzdCBnZXNjaGxvc3Nlbi4KVW5kIGRhcyBvaG5lIExhZy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVG9hc3QgRGlhYm9sbyAoQ2F0d2VhemxlLCAxMy4gRGV6IDE5OTUsIDE1OjM3OjMwKToKIyEgcm49VHp1aW9wIHJ0PTgxODg0NjgzMQpHZW5hdSEKRGllIE11ZW5zdGVybGFlbmRlciA6KQpXYXMgbWVpbnN0ZSBtaXQgd2VtIGljaCBtaWNoIGRhcnVlYmVyIGdlc3RydHRlbiBoYWIgOikKKmdydWViZWwqIEFsbGVyZGluZ3MgaGF0IGF1Y2ggc2Nob24gbWFsIGVpbiBLcmVmZWxkZXIgdm9yIG1pciBiZWhhdXB0ZXQgZXMKd3VlcmRlIFNvc2UgYXVzZ2VzcHJvY2hlbiAuLi4KWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogVG9hc3QgRGlhYm9sbyAoSGFyZGlsLCAxMy4gRGV6IDE5OTUsIDE3OjAwOjU4KToKIyEgcm49R3JpbW1ib3JuIHJ0PTgxODg1MzYxNAoKQWxzbyBoaWVyIGhlaXNzdCBTb3NlIHNvdmllbCB3aWUgU29tbWVyU2VtZXN0ZXIuCgpVbmQgYmVpIHVucyBpbSBTVWVkd2VzdGVuIHdpcmQgZGVzIGVoIFNvb3MgYXVzZ2VzcHJvY2hlbi4KCkFiZXIgYmVpIHVucyB3YXJlbiBqYSBlaCBvZWZ0ZXJzIG1hbCBkaWUgRnJhbnpvc2VuLgoKLUhhcmRpbC4gU2FndCBhdWNoIFNjaG9zc2VlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogVG9hc3QgRGlhYm9sbyAoUmFmZmksIDEzLiBEZXogMTk5NSwgMTk6NTA6NDgpOgojISBybj1DYXR3ZWF6bGUgcnQ9ODE4ODY1NDUwCgpSYWZmaSBmcmFndCBzaWNoIHdvIGpldHp0IGRlciB1bnRlcnNjaGllZCB6d2lzY2hlbiBNdWVuc3RlcmxhZW5kZXIgdW5kCktyZWZlbGRlciBpc3QgLSBkYXMgbGllZ3QgZG9jaCBuZWJlbmVpbmFuZGVyLgoKR3J1c3MKSC4KKEVpbiBnbHVlY2sgZGFzIGRpZXIgc2Nob24gaW4gU2NobWFycm4gc2luZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBUb2FzdCBEaWFib2xvIChBY3JpbW9uLCAxMy4gRGV6IDE5OTUsIDIwOjE3OjE3KToKIyEgcm49SGFyZGlsIHJ0PTgxODg3MDQ1OAphcmdsLgpJaHIgc2VodCwgZGllIGhldXRpZ2UgUmVjaHRzY2hyZWlidW5nIGlzdCB2b2xsa29tbWVuIHVuZ2VudWVnZW5kLgpJaHIga2VubnQgdm9uIGRlciBTY2hyaWZ0c3ByYWNoZSBoZXIgbnVyIGVpbiBlaW5mYWNoZXMgcyB1bmQgZWluIERvcHBlbC1zcwp1bmQgZWluIHNjaGFyZmVzIHN6LCB1bmQgbWVpbnQgZGVzaGFsYiwgc2NoYXJmZXMgc3ogc2VpIGdsZWljaCBzY2hhcmZlcyBzei4KVWVicmlnZW5zOiAiRmx1c3oiIHNjaHJlaWJ0IG1hbiBtaXQgc2NoYXJmZW0gcywgbmljaHQgbWl0IERvcHBlbC1zLgoiRmx1c3oiIHVuZCAiRmFzeiIgd2VyZGVuIGt1cnogZ2VzcHJvY2hlbiwgb2J3b2hsICJGdXN6IiB1bmQgIkZyYXN6IiBsYW5nCmdlc3Byb2NoZW4gd2VyZGVuLgpVbmQgYXVjaCBkaWUgIk1hc3oiIHVuZCBkYXMgIk1hc3ogc2luZCB2b2xsa29tbWVuIHVudGVyc2NoaWVkbGljaGUgV29lcnRlciwKc2llIGJlZGV1dGVuIEFuZGVyZXMsIHdlcmRlbiBhdWNoIGFuZGVycyBnZXNwcm9jaGVuLCBvYndvaGwgc2llIGdsZWljaApnZXNjaHJpZWJlbiB3ZXJkZW4uCkRpZSBHZXNjaGljaHRlIG1hY2h0cyB2aWVsbGVpY2h0IGRldXRsaWNoZXI6CkZydWVoZXIgZ2FiIGVzIHN0YXR0IGRlbSBoZXV0aWdlbiBzY2hhcmZlbiBzIHp3ZWkgdmVyc2NoaWVkZW5lIHM6CjEuIERhcyAid2lya2xpY2giIHNjaGFyZmUgcyBtaXQga3VyemVtIHZvcmFuZ2VoZW5kZW4gVm9rYWwsCiAgICJzeiIgZ2VzY2hyaWViZW4gdW5kIGdlbmF1c28gc2NoYXJmIGdlc3Byb2NoZW4gd2llIGdlc2NocmllYmVuLAoyLiBkYXMgKHNjaGFyZmUpIHdlaWNoZSBzIG1pdCBsYW5nZW0gdm9yYW5nZWhlbmRlbiBWb2thbCwKICAgImhzIiBnZXNjaHJpZWJlbiB1bmQgZ2VuYXVzbyBnZWRlaG50IGdlc3Byb2NoZW4gd2llIGdlc2NocmllYmVuLgpEZXIgVm9ydGVpbCB3YXI6IG1hbiBrb25udGUgYWxsZXMgc28gc2FnZW4gd2llIGVzIGdlc2NocmllYmVuIHd1cmRlCnVuZCBhbGxlcyBzY2hyZWliZW4gd2llIG1hbiBlcyBnZXNhZ3QgaGF0LCB1bmQgZXMgZ2FiIGtlaW5lIEF1c25haG1lbi4KQXVzemVyZGVtIHNhZ3QgIk1haHMiIHVuZCAiTWFzeiIgc2Nob24gaW50dWl0aXYsIHdpZSBtYW4gZXMgc3ByZWNoZW4gc29sbC4KKEZsdXN6LCBGYXN6LCBGdWhzLCBGcmFocywgYXVzemVyLCBmbGllaHNlbiwgLi4uKQoKSWNoIHNlaGUgZWluLCBkYXMgZGllIGhldXRpZ2VuIFZlcmFudHdvcnRsaWNoZW4gYmxvZWQgZ2VudWcgc2luZCwgdW0gZGllClJlY2h0c2NocmVpYnVuZyBub2NoIHNjaHdpZXJpZ2VyIHp1IG1hY2hlbiBhbHMgc2llIGVoIHNjaG9uIGlzdCwgaW4gZGVyCk1laW51bmcgc2llIHd1ZXJkZSBlaW5mYWNoZXIgd2VyZGVuLgpVbmQgaWNoIHNlaGUgYXVjaCBlaW4sIGRhc3ogaWNoIGFscyBFaW56ZWxuZXIgZGEgbGVpZGVyIG5pY2h0IHZpZWwgYXVzcmljaHRlbgprYW5uLgoKQWJlciB3ZW5uIElociBFdWNoIGRlc3NlbiBiZXd1c3p0IHNlaWQsIGRhbm4gZmFlbGx0IGVzIEV1Y2ggaW4gWnVrdW5mdCB3b2hsCmxlaWNodGVyLCBtaXQgZGVyIGhldXRpZ2VuIFJlY2h0c2NocmVpYnVuZyBrbGFyenVrb21tZW4sIGF1Y2ggd2VubiBzaWUgbmljaHQKbWVociBzbyBsb2dpc2NoIHdpZSBmcnVlaGVyIGlzdC4KClBTOiBTcHJlY2h0IG1hbCBkaWUgV29lcnRlciB1bmQgaG9lcnQgRXVjaCBnZW5hdSB6dSwgZGFubiB3ZXJkZXQgaWhyCmZlc3RzdGVsbGVuLCBkYXN6IGRhcyAid2VpY2hlIiBzY2hhcmZlIHMgZ2FyIG5pY2h0IHNjaGFyZiBhdXNnZXNwcm9jaGVuIHdpcmQuCgpBY3JpbW9uIGRlciBSb3RlIFJpdHRlciB3aWxsLCBkYXN6IEpvZiBlbmRsaWNoIHdpZWRlciBkaWUgRWluZ2FiZSB2b24KVW1sYXV0ZW4gZXJsYXVidCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdlcmFkZSBpbiBkZXIgR3J1ZnQgKFJhZmZpLCAxMy4gRGV6IDE5OTUsIDIwOjU5OjA0KToKCkRhIGhhYiBpY2ggbWlyIGRvY2ggc2FnZW4gbGFzc2VuIGRhcyBMaWxpdGggbnVuIG1pdCBlaW5lbSBzcHJpY2h0IQpFcmdlYm5pc3M6CgooTWFoYXRobWEgdW5kIEtleSBoYWJlbiBMaWxpdGggZ2VyYWRlIGdlcGxhZXR0ZXQsIG9kZXIgd2FyZW4genVtaW5kZXN0CmRhYmVpIGVzIHp1IHR1biAtIGljaCBiaW4gU2NobWllcmUgZ2VzdGFuZGVuKQoKTGlsaXRoIGJlc2Nod29lcnQgZGllIE1hZWNodGUgZGVyIEZpbnN0ZXJuaXMuCk1haGF0bWEgc2NobGFlbmdlbHQgc2ljaCBuYWNoIG9iZW4uCnVudCBsaWxpdGgKVm9yIERpciBzdGVodCBMaWxpdGgsIGRpZSBVcm11dHRlciBhbGxlciBIZXhlbi4gSWhyIEdlc2ljaHQgaXN0IG1laHIgYWxzCmFic3Rvc3NlbmQuIEVpbmUgd2lkZXJsaWNoZSwgc2NobGVpbWlnZSBNYXNzZS4gQXVmZ2VyaXNzZW4gdW5kIGZhbHRpZyBkaWUKSGF1dCwgc28gZGFzcyBkaWUgTWFzc2UgYXVzIGRlbSBTY2hhZWRlbCBkcmFlbmd0LiBEZXIgS29lcnBlciB2ZXJsaWVydCBzaWNoCmluCmVpbmVuIGtvbWV0ZW5hcnRpZ2VuIFNjaHdlaWYsIGZhc3Qgd2llIGVpbmUgZHVlbm5lIFBsYXNtYXdvbGtlLiBTaWUKYmVoZXJyc2NodApnZW1laW5zYW0gbWl0IEx1emlmZXIgZGllIFdlbHQgZGVyIEZpbnN0ZXJuaXMuIFNlaSBibG9zcyB2b3JzaWNodGlnLCBzaWUKYmVoZXJyc2NodCBhbGxlIEt1ZW5zdGUgZGVyIE1hZ2llIQpTaWUgaXN0IGluIGtlaW5lciBndXRlbiBWZXJmYXNzdW5nLgpTaWUgdHJhZWd0IGJlaSBzaWNoOgo2IFZvb2Rvb25hZGVsbi4KPiBmcmFnZSBsaWxpdGggbmFjaCB2ZXJmYXNzdW5nCkxpbGl0aCBmYXVjaHQ6IFN0ZWxsIG1pciBuaWNodCBzbyBibG9lZGUgRnJhZ2VuIQo+CgpHcnVzcwpILgooZGVyIHNpY2ggaW1tZXJub2NoIGt1Z2VsdCB2b3IgTGFjaGVuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVG9hc3QgRGlhYm9sbyAoUnVtYXRhLCAxNC4gRGV6IDE5OTUsIDAxOjA4OjAyKToKIyEgcm49UmFmZmkgcnQ9ODE4ODgwNjQ4CkRhcyBpc3QgYWJlciBlaW5mYWNoOgpFaW4gS3JlZmVsZGVyIGthbm4gbWFuIHRyaW5rZW4gdW5kIGVpbiBNdWVuc3RlcmxhZW5kZXIgYmVsbHQuClJ1bWF0YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGVnZW5kZW5iaWxkdW5nIDspIChBbGluZSwgMTQuIERleiAxOTk1LCAxMzo0OTowMyk6CkViZW4gcGFzc2llcnQ6CgpMb2thciB0cml0dCBEaWNoLgo+IExva2FyIHNhZ3Q6IHNoYXJwCkVpbiBGcm9zY2ggc2FndDogZGFua2UKTG9rYXIgc2FndDogZHUgbXVzc3QgYXVmcGFzc2VuOgpMb2thciBzYWd0OiBhbGluZSBpc3QgZWluZSBzZWhyIGdlZmFlaHJsaWNoZSBoZXhlCmxhY2gKRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgo+IExva2FyIHNhZ3Q6IGRpZSB0b2V0ZXQgZGljaCBtaXQgZWluZW0gc2NobGFnCndhZWx6CkR1IHdhZWx6dCBEaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KCkFsaW5lIChsYWNodCBpbW1lciBub2NoKSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmFua3p3ZWl0aWVzIHNpbmQgbm90d2VuZGlnISEgKFJ5bmUsIDE0LiBEZXogMTk5NSwgMTM6NTY6NTMpOgpncmFkIGluIGRlciB6d2VyZ2Vuc3RhZHQ6CgpTcGFya2Fzc2UgZ2lidCBTcGFya2Fzc2VpIDUwMDAgTXVlbnplbi4KCldlbm4gZGFzIG5pY2h0IGRlciBiZXdlaXMgaXN0LCBkYXNzIEJhbmt6d2VpdGllcyBzaWNoIGJyYXVjaGVuIC0gdW5kCmdlYnJhdWNodCB3ZXJkZW4sIHdlaWwgYW5kZXJlIGJhbmt6d2VpdGllcyBzaWUgYnJhdWNoZW4sIGRlbm4gc29uc3Qga29lbm50ZW4KZGllIGJhbmt6d2VpdGllcyBqYSBkZW4gYmFua3p3ZWl0aWVzIGtlaW4gZ2VsZCBnZWJlbi4KClJ6bmUuIEtyYXR6dCBzaWNoIGFtIEtvcHAuCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbGJzdGdlc3ByYWVjaGUgZWluZXMgU2hlcmlmZnMgKEdyaW1tYm9ybiwgMTQuIERleiAxOTk1LCAxNjowNDowMSk6CgpKb2Ygc2FndDogSWNoIG9iZW4gZ2xlaWNoIGhvbWUKSm9mIHNhZ3Q6IFRyZWZmZW4gMTYwMSB2b3IgZGVyIFR1ZXI/CkNhdHdlYXpsZSBzYWd0OiBjYWxsIG1lIHdlbm4gd2FjaApDYXR3ZWF6bGUgc2FndDogYXkKSm9mIHNhZ3Q6IE9rYXkgOikKQ2F0d2VhemxlIHNhZ3Q6IGhhdCBnaWFjbyBhdXNnZXdlcnRldD8KSm9mIHNhZ3Q6IFNvenVzYWdlbiBpbiAzIG1pbiAzMApKb2Ygc2FndDogTm90IHlldApDYXR3ZWF6bGUgc2FndDogY2EuIDopCkpvZiBzYWd0OiBEdSBldGhlcm5ldGNhcmQ/CkNhdHdlYXpsZSBzYWd0OiBqdXQsIGRhbm4gaWNoIGhvbWUKQ2F0d2VhemxlIHNhZ3Q6IGhtLCBub2UsIHdvenU/CkpvZiBzYWd0OiBNb20gdHJlZmZlbiB1bnRlbgpDYXR3ZWF6bGUgc2FndDogc29sbCBpY2ggZWluZSBiZXNvcmdlbj8KSm9mIHNhZ3Q6IHVtIDE2MDEKSm9mIGlzdCBqZXR6dCB3ZWcuCkpvZiB3aW5rdC4KQ2F0d2VhemxlIHJ1ZnQ6IEJ5ZSBtdWRkaWVzISEhCgpncnVlYmVsCkR1IGdydWViZWxzdCBlaW5lIFdlaWxlIHZvciBEaWNoIGhpbi4KCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QuIERlbmt0LCBlaW4gbmV1ZXIgU2hlcmlmZiB3YWVyZSB2aWVsbGVpY2h0IHZvbm5vZXRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBUb2FzdCBEaWFib2xvIChFbmd5d3VjaywgMTQuIERleiAxOTk1LCAxODozNTozMCk6CiMhIHJuPVJ1bWF0YSBydD04MTg4OTk2ODIKQWxzbyBhbHMgZWluZ2V3YW5kZXJ0ZXIgS29lbG5lciBrYW5uIGljaCBkYXMgUmFldHNlbCBhdWZrbGFlcmVuLgpFcyBoZWlzc3QgbmljaHQgU29zZSBvZGVyIFNvc3plIG9kZXIgU29vb3N6ZSBvZGVyIFNvc3NlIHNvbmRlcm4gc2NobGljaHQgdW5kCmVpbmZhY2g6ClphdXMuCgp1bmQgbml4IGFuZGVyZXMuCgpFbmd5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNlbGJzdGxvZXNjaHVuZy4gKEx1ZywgMTUuIERleiAxOTk1LCAwMzoxODoxNSk6CiMhIHJuPUFnbmV0aGEgcnQ9ODE4ODYyNTg2CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgTHVnLCAxNS4gRGV6IDE5OTUsIDAyOjA5OjMzXToKQWduZXRoYSwKCnRvbGwuIFNvZWJlbiBpc3QgbWVpbiBMZWJlbnN3aWxsZW4gd2llZGVyIGFrdXQgZ2VzdW5rZW4uIERhcyBrYW5uc3QgRHUgbmljaHQKdHVuLi4uCldpZXNvIHR1c3QgRHUgZGFzPyBEdSBkb2NoIG5pY2h0LgpEZXByaW1pZXJ0Ckx1ZwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1laW4gUmVwLUZpbGUgdW5kIGljaCAoQ2FsdW0sIDE1LiBEZXogMTk5NSwgMTE6MjI6MTcpOgpLbGVpbmUgS29zdGJhcmtlaXRlbiBhdXMgQ2FsdW1zIFJlcG9ydC1GaWxlLCBvZGVyOiBXZWxjaGUgRnJhZ2VuClNwaWVsZXIgTlBDcyBzdGVsbGVuLCB3ZW5uIGRlciBUYWcgbGFuZyBpc3QuLi4KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCklORk8gdm9uIHNwYWNlIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL21vbi9ob2x6ZmFlbGxlciAoIDYuIEphbiAxOTk1KToKcmFzZWxrZXR0ZQooQWxzbyB3aXJrbGljaCEgV2llIGthbm4gbWFuIG51ciB1bnNlcmUgc2Nob2VuZSBFYmVuZSBtaXQgZGllc2VtCmZldWNodGVuIE96ZWFuIHZlcndlY2hzZWxuLCB3byBtYW4gc2ljaCBudXIgbmFzc2UgRnVlc3NlIGhvbGVuIGthbm4/KQoKSU5GTyB2b24gc3BhY2UgaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbnBjL2FubmUgKCA2LiBKYW4gMTk5NSk6CnByb2JsZW0KKEphLCBEaWUgaGFiZW4gd2lyIGFsbGUuIEFubm5lIHdhaHJzY2hlaW5saWNoIGF1Y2guKQoKSU5GTyB2b24gc3lzb3AgaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbW9uL2hvbHpmYWVsbGVyICggOC4gSmFuIDE5OTUpOgpzdGF1YgooT2gsIGRhcyBpc3QgamVtYW5kIGRlciB1bnNhdWJlcmUgWnVzdGFuZCBkZXIgSHVldHRlIGF1ZmdlZmFsbGVuLiBTRUhSCmxvYmVuc3dlcnQsIHdlaXRlciBzby4pCgpJTkZPIHZvbiBzeXNvcCBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9tb24vaG9semZhZWxsZXIgKCA4LiBKYW4gMTk5NSk6CmJvZXNlCihKYWphLi4uIHdlbm4gaWNoIHNvIG1laW5lIFJlcG9ydC1GaWxlcyBhbnNlaGUsIGtvZW5udGUgaWNoIGF1Y2gKZXR3YXMgYm9lc2Ugd2VyZGVuKQoKSU5GTyB2b24gc3lzb3AgaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbW9uL2hvbHpmYWVsbGVyICggOC4gSmFuIDE5OTUpOgpzdGF1YgooU2Nob24gd2llZGVyISBFaW5tYWwgaXN0IHdvaGwgbmljaHQgZ2VudWc/KQoKSU5GTyB2b24gaGVsbG93ZWVuIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICggOS4gSmFuIDE5OTUpOgp2aWV6NgooVmlleiBpc3QgamEgZ3V0IHVuZCBzY2hvZW4uLi4gYWJlciBnbGVpY2ggNiBWaWV6IGF1ZiBlaW5tYWw/KQoKSU5GTyB2b24gZGV2aWwgaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbnBjL2FubmUgKDExLiBKYW4gMTk5NSk6CnphdWJlcnRyYWVua2UKKHMuby4gTWFuY2hlIExldXRlIHNpbmQgbmljaHQgZWlubWFsIG1laHIgbWl0IGVpbmVtIGVpbnppZ2VuIFphdWJlcnRyYW5rCnp1ZnJpZWRlbi4uLikKCklORk8gdm9uIGFsY2Fwb25lIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL21vbi9ob2x6ZmFlbGxlciAoMTcuIEphbiAxOTk1KToKZnJvc2NoZXJpbgooSXN0IGVpbmUgRnJvc2NoZXJpbiBlaW5lIERhbWUsIGRpZSBhbmRlcmUgTGV1dGUgdmVyZnJvc2NodD8pCgpJTkZPIHZvbiBwaGlsbyBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9tb24vaG9semZhZWxsZXIgKDIwLiBKYW4gMTk5NSk6CmhvY2hlYmVuZQooTmVuZW5lbmVuZS4gRGEgYmlzdCBEdSBnYW56IGZhbHNjaCBoaWVyLikKCklORk8gdm9uIG5vcndlZ2VyIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL21vbi9ob2x6ZmFlbGxlciAoMjEuIEphbiAxOTk1KToKcHJpbnplc3NpbgooSHVjaD8gUHJpbnplc3Npbj8gSGFiYmljaG5pY2guKQoKSU5GTyB2b24gbm9yd2VnZXIgaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbW9uL2hvbHpmYWVsbGVyICgyMS4gSmFuIDE5OTUpOgpnb2xkYmFsbAooKlNFVUZaKiBXYXJ1bSB2ZXJpcnJlbiBzaWNoIGFsbGUsIGRpZSBlaWdlbnRsaWNoIGVpbmUgZ2FueiBhbmRlcmUKUXVlc3Qgc3VjaGVuLCBpbW1lciBpbiBtZWluIFJlcG9ydC1GaWxlPykKCklORk8gdm9uIGVkIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgyNC4gSmFuIDE5OTUpOgp2aWUKKFZpZS4uLiBWaWVoPyBWaWVoenVjaHQgd3VyZGUgaW4gTW9yb24gZWlnZW50bGljaCBuaWNodCBuaWUgYmV0cmllYmVuLi4uKQoKSU5GTyB2b24gaGFzZW5mdXNzIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgyNS4gSmFuIDE5OTUpOgpjbGFsdW0KKEFIRU0hISEpCgpJTkZPIHZvbiBlY29saSBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoMjYuIEphbiAxOTk1KToKYXNwaXJpbgooQWxzby4uLiBiZWltIGJlc3RlbiBXaWxsZW4gc29sbHRlIGVzIGRvY2ggbW9lZ2xpY2ggc2VpbiwgQW5uZSB2b24KQ2xvZHNhaGFtcCB6dSB1bnRlcnNjaGVpZGVuLi4uIG9kZXIgZG9jaCBuaWNodD8pCgpJTkZPIHZvbiBlY29saSBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoMjYuIEphbiAxOTk1KToKcGFja3VuZwooRGEgdHJhdXRlIHdvaGwgamVtYW5kIHNlaW5lbiBBdWdlbiBuaWNodC4uLikKCklORk8gdm9uIGVjb2xpIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgyNy4gSmFuIDE5OTUpOgphc3BpcmluCiguLi4gdW5kIHdvbGx0ZSBlcyBhbnNjaGxpZXNzZW5kIG5vY2htYWwgZ2FueiBnZW5hdSB3aXNzZW4pCgpJTkZPIHZvbiBsYW11ZXJ0ZSBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoMjkuIEphbiAxOTk1KToKdmlldwooU2FndCBtYWwsIElociBzZWlkIHdvaGwga2VpbmUgU2FhcmxhZW5kZXI/KQoKSU5GTyB2b24gbWFyZHVrIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICggMy4gRmViIDE5OTUpOgpmaWV0egooV2FocnNjaGVpbmxpY2ggbmljaHQuKQoKSU5GTyB2b24gbWFyZHVrIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICggMy4gRmViIDE5OTUpOgpmaXR6CihIbW0uIFNwcmljaHQgQW5uZSBzbyB1bmRldXRsaWNoIG9kZXIgdGlwcHQgSWhyIHNvIHVuZGV1dGxpY2g/KQoKSU5GTyB2b24gaGFubmkgaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbnBjL2FubmUgKCAzLiBGZWIgMTk5NSk6CmhhcnogZGVzIGFiZ3J1bmRlcwooT2ggLSBkYXMgYnJpbmd0IG1pY2ggYXVmIGVpbmUgUXVlc3RpZGVlOiAiU1RPUFBUIERBUyBNT0VSREVSSEFSWiwgREFTClZPTiBERU4gQkFFVU1FTiBSSU5OVCBVTkQgRElFIFdFTFQgWlVTQ0hMRUlNRU4gV0lMTCEiKQoKSU5GTyB2b24geGFudGhpYSBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoIDUuIEZlYiAxOTk1KToKZmlndAooMyB2b24gNCBCdWNoc3RhYmVuIGZhbHNjaC4gS29lbm50ZSBSZWtvcmQgc2Vpbi4pCgpJTkZPIHZvbiBlYWdsZSBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoIDUuIEZlYiAxOTk1KToKdmlldHoKKEhhdHRlbiB3aXIgZGFzIG5pY2h0IHNjaG9ubWFsPykKCklORk8gdm9uIGFhcmdvbiBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoIDcuIEZlYiAxOTk1KToKdmllcwooSmEgamEuLi4gemllbWxpY2ggdmllcyB2b24gbWlyLCBkYXNzIGljaCBkYXMgYWxsZXMgcG9zdGUsIGljaCB3ZWlzcykKCklORk8gdm9uIHNudWdnbGUgaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbnBjL2FubmUgKDE1LiBGZWIgMTk5NSk6CnVudGlyZQooRGllIGtvZW5uZW4gbWluZGVzdGVucyBzbyBnZWZhZWhybGljaCB3ZXJkZW4gd2llIFZhbXBpZXJlKQoKSU5GTyB2b24gc251Z2dsZSBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoMTUuIEZlYiAxOTk1KToKdW50aWVyCihXaXIgbGVybmVuIGRhenUuLi4gQWJlciByZW5udCBkYXMgVW50aWVyIG5pY2h0IGluIFBvbGFyIHJ1bT8pCgpJTkZPIHZvbiBzbnVnZ2xlIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgxNS4gRmViIDE5OTUpOgprYXRoZWRyYWxlCihIdWNoPyBEYXZvbiB3dXNzdGUgaWNoIGphIG5vY2ggZ2FyIG5pY2h0cy4uLiBXZXIgaGF0IGRpZSBkZW5uIGdlYmF1dD8pCgpJTkZPIHZvbiBtZXRoZWRyYXMgaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbnBjL2FubmUgKDE2LiBGZWIgMTk5NSk6CmJsYWJsYQooRmFzZWxGYXNlbC4pCgpJTkZPIHZvbiBhbm5vIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL21vbi9ob2x6ZmFlbGxlciAoMjIuIEZlYiAxOTk1KToKbmFycmVuYmFsbAooU2V1ZnouIExlcm50IElociBlcyBkZW5uIG5pZT8pCgpJTkZPIHZvbiB1cmd1c2ggaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbW9uL2hvbHpmYWVsbGVyICgyMy4gRmViIDE5OTUpOgpuYXJyZW5iYWxsCklORk8gdm9uIHVyZ3VzaCBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9tb24vaG9semZhZWxsZXIgKDIzLiBGZWIgMTk5NSk6Cm5hcnJlbmJhbGwKKEdsZWljaCBkb3BwZWx0LiBTbmlmZnouKQoKSU5GTyB2b24gdXJndXNoIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL21vbi9ob2x6ZmFlbGxlciAoMjMuIEZlYiAxOTk1KToKZ3NnZGdnCihadW1pbmRlc3Qgb3JpZ2luZWxsLikKCklORk8gdm9uIGtsb25rIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL21vbi9ob2x6ZmFlbGxlciAoMjMuIEZlYiAxOTk1KToKa29zdHVlbWJhbGwKKERhcyBoYXR0ZW4gd2lyIGF1Y2ggbm9jaCBuaWNodC4uLikKCklORk8gdm9uIGtsb25rIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL21vbi9ob2x6ZmFlbGxlciAoMjMuIEZlYiAxOTk1KToKZmVzdAooamF1IC0gbm9jaCBlaW4gU3lub255bSBmdWVyIE5hcnJlbmJhbGwuIFdlciBiaWV0ZXQgbWVocj8pCgpJTkZPIHZvbiBlYWdsZSBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoMjQuIEZlYiAxOTk1KToKd2l0egooRWluIFdpdHo/IEFubmUga2FubiBXaXR6ZSBlcnphZWhsZW4/KQoKSU5GTyB2b24gZWFnbGUgaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbnBjL2FubmUgKDI0LiBGZWIgMTk5NSk6CndpZXR6CihHbmFnbmFnbmEuLi4pCgpJTkZPIHZvbiBrcmlnaSBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9tb24vaG9semZhZWxsZXIgKDI0LiBGZWIgMTk5NSk6CnN0ZWlubWFubgooTGVpZGVyIGRhbmViZW4uIERlciBuYWVjaHN0ZSBWZXJzdWNoIHdpcmQgYWJlciBnYXJhbnRpZXJ0IGVpbiBUcmVmZmVyLikKCklORk8gdm9uIHNlbWlyYSBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9tb24vaG9semZhZWxsZXIgKDI0LiBGZWIgMTk5NSk6Cm5hcnJlbmJhbGwKKEphLiBHYWIgZXMgZGFzIG5pY2h0IHNjaG9uIG1hbD8pCgpJTkZPIHZvbiBrZWxkb3JuIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL21vbi9ob2x6ZmFlbGxlciAoMjYuIEZlYiAxOTk1KToKc3RlaW5tYW5uCihLZWluIEtvbW1lbnRhci4pCgpJTkZPIHZvbiByb2FkcnVubmVyIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL21vbi9ob2x6ZmFlbGxlciAoIDEuIE1hciAxOTk1KToKZ2VuZXNpc2hvZWhsZQooRGllIFF1ZXN0IGhhdHRlbiB3aXIgbm9jaCBuaWNodC4uLiBJbW1lcmhpbiBtYWwgZWluIEZvcnRzY2hyaXR0KQoKSU5GTyB2b24gcnVlYmUgaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbW9uL2hvbHpmYWVsbGVyICggOC4gTWFyIDE5OTUpOgplaW5sYWR1bmcKKEZpbmRlIGljaCBqYSBuZXR0LCBkYXNzIElociBkZW4gSG9semZhZWxsZXIgenUgRXVyZW4gUGFydHlzIGVpbmxhZGV0LAphYmVyIGRlciBpc3QgZG9jaCBzbyBiZXNjaGFlZnRpZ3QuLi4pCgpJTkZPIHZvbiBydWViZSBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9tb24vaG9semZhZWxsZXIgKCA4LiBNYXIgMTk5NSk6Cm5hcnJlbmJhbGwKKFNpZWhlIG9iZW4uKQoKSU5GTyB2b24gYXR0aWxhIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL21vbi9ob2x6ZmFlbGxlciAoMjIuIE1hciAxOTk1KToKdmVydHJldHVuZwooSG1tLiBEZXIgZnJhZ3QgRVJTVCBuYWNoIFZlcnRyZXR1bmcsIG9obmUgbmFjaCBhbGxlbSBhbmRlcmVuIHp1IGZyYWdlbj8KV29oZXIgd2Vpc3MgZXIgZGFzPyBJbnR1aXRpb24/IEludGVsbGlnZW56PyBLb21wbGV0dGxvZXN1bmc/KQoKSU5GTyB2b24gYXR0aWxhIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL21vbi9ob2x6ZmFlbGxlciAoMjIuIE1hciAxOTk1KToKZWluc2llZGxlcgooQWgsIGphLiBTY2hvbiBiZXNzZXIuIFdlbmlnc3RlbnMgd2Vpc3MgZXIgamV0enQsIGRhc3MgZXIgaGllciBmYWxzY2ggaXN0LikKCklORk8gdm9uIG1hZ2ljb2xsaSBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoMzAuIE1hciAxOTk1KToKZmxpdHNjaAooSmF1LCBkZXIgVmlleiBmbGl0c2NodCBnYW56IHNjaG9lbiBkaWUgS2VobGUgcnVudGVyLCBkYXMgc3RpbW10KQoKSU5GTyB2b24gbWFnaWNvbGxpIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgzMC4gTWFyIDE5OTUpOgp2aWV0c2NoCihBYmVyIHNvIHNjaHJlaWJ0IG1hbiBpaG4gbnVuIGRvY2ggbmljaHQuKQoKSU5GTyB2b24gbWFnaWNvbGxpIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgzMC4gTWFyIDE5OTUpOgpmaXNjaAooQXVjaCBlaW5lIE1ldGhvZGUuIFVtIGFsbGUgR2VydWVjaHRlIGF1cyBkZXIgV2VsdCB6dSByYWV1bWVuOiBWaWV6CmlzdCBLRUlORSBGaXNjaHN1cHBlIDotKSApCgpJTkZPIHZvbiBtYWdpY29sbGkgaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbnBjL2FubmUgKDMwLiBNYXIgMTk5NSk6CmNhaGx1bQooSG1tbS4gU292aWVsIFZpZXogZ2V0cnVua2VuLCBkYXNzIGVyIGRpZSBUYXN0YXR1ciBuaWNodCBtZWhyIGZhbmQ/KQoKSU5GTyB2b24gbWFnaWNvbGxpIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgzMC4gTWFyIDE5OTUpOgpmaWVzCihKYSwgaWNoIHdlaXNzLCBkYXNzIGljaCBmaWVzIGJpbiwgYWJlciBzYWd0IGVzIG1pciB0cm90emRlbSBpbW1lciB3aWVkZXIpCgpJTkZPIHZvbiBtYWdpY29sbGkgaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbnBjL2FubmUgKDMwLiBNYXIgMTk5NSk6CmZpbHR6CihBYmVudGV1ZXJsaWNoZSBWZXJzY2hyZWliZXIuLi4uKQoKSU5GTyB2b24gbWFnaWNvbGxpIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgzMC4gTWFyIDE5OTUpOgpwaWxzCihEYW5uIGdhYiBlciBkYW5uIHdvaGwgZG9jaCBhdWYgdW5kIHdvbGx0ZSB3YXMgYW5kZXJlcyBoYWJlbi4pCgpJTkZPIHZvbiBtdXBmZWwgaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbnBjL2FubmUgKCA0LiBBcHIgMTk5NSk6CmJsYQooSG1tbS4gU2lubnZvbGxlIEZyYWdlPykKCklORk8gdm9uIG11cGZlbCBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoIDQuIEFwciAxOTk1KToKYW5hdG9sCihXYXJ1bSBiZW51dHplbiBtYW5jaGUgTGV1dGUgbmljaHQgZGVuIGZpbmdlci1CZWZlaGw/KQoKSU5GTyB2b24gcGh5Z29zIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgyOC4gQXByIDE5OTUpOgpnYWx1bQooTmljaHQgZ2Fuei4pCgpJTkZPIHZvbiBjYWx1bSBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoMjguIEFwciAxOTk1KToKYXNtb2RpcwooSFVDSD8gV2FzIHdhciBkZW5uIGRhcz8gS2FubiBpY2ggbWljaCBqYSBnYXIgbmljaHQgbWVociBkcmFuIGVyaW5uZXJuKQoKSU5GTyB2b24gaXNub2dvb2QgaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbW9uL2hvbHpmYWVsbGVyICggMi4gTWFpIDE5OTUpOgptb3Jkb3IKKE5lZWUuLi4uIG1pdCBkZW0gSGVycm4gZGVyIFJpbmdlIGhhdCBNb3JvbiBkYW5uIGRvY2ggbmljaHRzIHp1IHR1bi4pCgpJTkZPIHZvbiBhbmNhbGFnb24gaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbnBjL2FubmUgKDMwLiBNYWkgMTk5NSk6CmpvZgooQXVmIEdlZGFua2VuIGtvbW1lbiBkaWUgTGV1dGUuLi4pCgpJTkZPIHZvbiBwbGFwcGVybWF1bCBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoMjEuIEp1biAxOTk1KToKc2tyaXB0c3BpZWxlcgooSW50ZXJlc3NhbnRlcyBUaGVtYSwgYWJlciB3YXJ1bSBmcmFnc3QgRHUgZGEgZ2VyYWRlIGJlaSBBbm5lIG5hY2g/KQoKSU5GTyB2b24gbGFyaXNpYSBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9tb24vaG9semZhZWxsZXIgKCA4LiBBdWcgMTk5NSk6CndhbGRlcmRiZWVyZW4KKEh1Y2g/Pz8gV2FsZGVyZGJlZXJlbj8gV28gZ2lidHMgZGVubiBzb3dhcz8pCgpJTkZPIHZvbiBtaW5uaSBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoMzAuIEF1ZyAxOTk1KToKbGllYmUKKEpldHp0IHdpcmRzIG5pY2h0IG1laHIgZ2FueiBqdWdlbmRmcmVpLi4uKQoKSU5GTyB2b24gdmFsYXJpYW4gaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbnBjL2FubmUgKDExLiBTZXAgMTk5NSk6CnNleAooVW5kIGpldHp0IGJpdHRlbiB3aXIgYWxsZSBNaW5kZXJqYWVocmlnZW4sIFNPRk9SVCBhYnp1c2NoYWx0ZW4pCgpJTkZPIHZvbiBrYWxsaW9wZSBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoMTIuIE9rdCAxOTk1KToKZ2xvZWNrbmVyLXRvcGxpc3RlCihEaWUgd2lyZCBhdWNoIGdlcG9zdGV0LiBNb21lbnRjaGVuIGJpdHRlLi4uKQoKSU5GTyB2b24ga2FsbGlvcGUgaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbnBjL2FubmUgKDEyLiBPa3QgMTk5NSk6CmNhbHVtcyByZXAtZmlsZQooRGFzIGlzdCBkYXMgRGluZywgZGFzIER1IGdlcmFkZSB6dW0gVWViZXJsYXVmZW4gYnJpbmdzdC4gVmllbGVuCkRhbmsgbm9jaG1hbC4pCgpJTkZPIHZvbiBuaWtvbGF1cyBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9tb24vaG9semZhZWxsZXIgKDI3LiBPa3QgMTk5NSk6CmthZXNla3VjaGVuCihBbHNvLi4uIEthZXNla3VjaGVuPyBXbyBnaWJ0cyBkZW5uIHNvd2FzIGltIE1HPyBVbmQgd2FzIGhhc3QgZGVyIEhvbHpmYWVsbGVyCmRhbWl0IHp1IHR1bj8pCgpJTkZPIHZvbiBib2JvIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgxNy4gTm92IDE5OTUpOgpiYWdnZXIKKE5lZSwgQW5uZSBtYWcga2VpbmUgQW5iYWdnZXJ1bmdzdmVyc3VjaGUpCgpJTkZPIHZvbiB2cmFpIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgxNy4gTm92IDE5OTUpOgpib2JvCihXYXJ1bSBzb2xsIGF1c2dlcmVjaG5ldCBBbm5lIGV0d2FzIGRhcnVlYmVyIHdpc3Nlbj8pCgpJTkZPIHZvbiBib2JvIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgxNy4gTm92IDE5OTUpOgpoYWFyZmFyYmUKKEVpbmZhY2ggbWFsIGRpZSBCZXNjaHJlaWJ1bmcgYW5zY2hhdWVuLi4uIGRhcyBzdGVodCBkYXMgYWxsZXMgZHJpbikKCklORk8gdm9uIGJvYm8gaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbnBjL2FubmUgKDE3LiBOb3YgMTk5NSk6CnphcmRvegooSXN0IEFubmUgZWluIExleGlrb24/IE11c3Mgc2llIGRlbm4gd2lya2xpY2ggYWxsZXMgd2lzc2VuPykKCklORk8gdm9uIGJvYm8gaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbnBjL2FubmUgKDE3LiBOb3YgMTk5NSk6CmJvaW5nCihIbW1tLi4uIFdhcyBkZW0gbWVuc2NoZW4gZnVlciBGcmFnZW4gZWluZmFsbGVuLi4uKQoKSU5GTyB2b24gYm9ibyBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoMTcuIE5vdiAxOTk1KToKam9mCihBbHNvLi4uIGpldHp0IGlzdCBlcyBhYmVyIGxhbmdzYW0gZ3V0Li4uKQoKSU5GTyB2b24gYm9ibyBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoMTcuIE5vdiAxOTk1KToKd2FsZAooQUFBQUFBUkdIISkKCklORk8gdm9uIGJvYm8gaW4gL2QvZWJlbmUvY2FsdW0vTW9yb24vbnBjL2FubmUgKDE3LiBOb3YgMTk5NSk6CmZyZXVuZAooTkVFRUVFRUlOISBHTkFERSEpCgpJTkZPIHZvbiBib2JvIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgxNy4gTm92IDE5OTUpOgpsaWViZQooV2FydW0gdmVyc3RlaHQgbmllbWFuZCwgZGFzcyBBbm5lIGRhcyBuaWNodCBtYWc/KQoKSU5GTyB2b24gYm9ibyBpbiAvZC9lYmVuZS9jYWx1bS9Nb3Jvbi9ucGMvYW5uZSAoMTcuIE5vdiAxOTk1KToKc2V4CihVbmQgZGFzIEVSU1QgUkVDSFQgTklDSFQhISEpCgpJTkZPIHZvbiBib2JvIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgxNy4gTm92IDE5OTUpOgp3ZWlobmFjaHRzbWFya3QKKCEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEpCgpJTkZPIHZvbiBib2JvIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgxNy4gTm92IDE5OTUpOgphdXNnYW5nCihFaW5mYWNoICJlbmRlIiBlaW50aXBwZW4uIFJlaWNodCBhdXMuIEtlaW5lIFVyc2FjaGUsIGdlcm5lIGdlc2NoZWhlbi4pCgpJTkZPIHZvbiBib2JvIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgxNy4gTm92IDE5OTUpOgptdWVkaWdrZWl0CihKYWphLCBzdGFlbmRpZ2VzIEZyYWdlbiBtYWNodCBtdWVkZS4gVHJpbmsgZG9jaCBlaW5mYWNoIGVpbmVuIFZpZXouLi4pCgpJTkZPIHZvbiBib2JvIGluIC9kL2ViZW5lL2NhbHVtL01vcm9uL25wYy9hbm5lICgxNy4gTm92IDE5OTUpOgpzY2hsYWZlbmdlaGVuCihHdXRndXRndXQuLi4gZGFzIHZlcmt1ZXJ6dCBkaWUgTGFlbmdlIG1laW5lcyBSZXBvcnQtRmlsZXMgZW5vcm0uCkd1dGUgTmFjaHQuKQoKCgpQLlMuIEFubmUgdW5kIGRlciBIb2x6ZmFlbGxlciB3ZXJkZW4gaW4gWnVrdW5mdCBLRUlORSBGcmFnZW4gbWVocgogICAgIG1pdGxvZ2dlbi4gSWhyIGR1ZXJmdCBzaWUgYWxzbyB3aXJrbGljaCBBTExFUyBmcmFnZW4sIGVzIHdpcmQKICAgICBnYXJhbnRpZXJ0IG5pY2h0IG1laHIgaW4gZGVyIE1QQSBhdWZ0YXVjaGVuLgoKCiAtIENhbHVtOiBOb3RoaW5nIGJ1dCB0aGUgc3VuLiAtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWVpbiBSZXAtRmlsZSB1bmQgaWNoIChZZW5kaSwgMTUuIERleiAxOTk1LCAxMjowOToyNSk6CiMhIHJuPUNhbHVtIHJ0PTgxOTAyMjkzNwoKQ2FsdW0sIGVyc3RlbnMgc2luZCBkaWUgbWVpc3RlbiBkaWVzZXIgbWl0Z2Vsb2d0ZW4gVHlwb3MgYXVjaCBiZWltIGRyaXR0ZW4KTGVzZW4gbmljaHQgd2l0emlnOwp6d2VpdGVucyB3YWVyZSBlcyBfbWlyXyBwZWlubGljaCwgd2VubiBpcmdlbmRlaW4gTWFnaWVyIG1laW5lIFR5cG9zIGF1Y2ggbm9jaAp2ZXJvZWZmZW50bGljaHRlOwpkcml0dGVucyBzb2xsdGVzdCBEdSwgYW5zdGF0dCBEaWNoIHVlYmVyIEZyYWdlbiBuYWNoIEhvY2hlYmVuZSwgV2FsZGVyZGJlZXJlbgpvZGVyIGRlciBQcmluemVzc2luIHp1IG1va2llcmVuLCBBbnR3b3J0ZW4gYXVmIGRpZXNlIEZyYWdlbiBpbiBBbm5lcwpSZXBlcnRvaXJlIHVlYmVybmVobWVuIChpY2ggc2FnZSBudXIgIkZvbmRpbCBGYXJpbiIhKTsKdmllcnRlbnMgc29sbHRlc3QgRHUgSU1OU0hPIGRhcyBMb2cgd2VpdGVyZnVlaHJlbiwgdW0gRGVpbmUgTlBDcyBhbHMgd2FocmUKQmV3b2huZXIgZGVzIE1vcmdlbkdyYXVlbnMgcHJhZXNlbnRpZXJlbiB6dSBrb2VubmVuLCBkaWUgbmFjaCBrdXJ6ZXIgWmVpdAooc3ByaWNoOiBkZW4gZXJzdGVuIEZyYWdlbikgYXVjaCBldHdhcyB1ZWJlciBpaHJlIE1pdGJld29obmVyIHp1IGVyemFlaGxlbgp3aXNzZW4uCgpTby4gU292aWVsIHp1IGRpZXNlbSBUaGVtYSB2b24gZWluZW0ga2xlaW5lbiwgdWViZXJoZWJsaWNoZW4gU3BpZWxlcmxlaW4sCm5hZW1saWNoCgogICAgICAgICAgWVRZCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1laW4gUmVwLUZpbGUgdW5kIGljaCAoQ3JlYXRpdmUsIDE1LiBEZXogMTk5NSwgMTI6MTU6MTkpOgojISBybj1DYWx1bSBydD04MTkwMjI5MzcKCipraWNoZXIqIGdlbmlhbC4uLgpBY2ggamEuIEVkIGZyYWd0ZSBBbm5lIHNpY2hlciBuYWNoICd2aWUnLCB3ZWlsIGVyIGphIGF1Y2ggdm9uIGRlciB1bml2aWUKZWluZ2Vsb2dndCB3YXIuLi4gOykKLUNyZWEtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogVG9hc3QgRGlhYm9sbyAoVGFzaGEsIDE1LiBEZXogMTk5NSwgMTQ6MTM6MzcpOgojISBybj1Fbmd5d3VjayBydD04MTg5NjI1MzAKQWxzbyBnYW56IGljaCBlaHJsaWNoOiBJY2ggcGxhZWRpZXJlIGVpbnN0aW1taWcgZnVlcgoKU2F1dHplLiBBbHMgQXVzc3ByYWNoZSB1bmQgbmFjaCBkZXIgUmVjaHRzY2hyZWlicmVmb3JtIGFtIGJlc3RlbiBhdWNoIGFscwpTY2hyZWlid2Vpc2UuCgpUYXNoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNZWluIFJlcC1GaWxlIHVuZCBpY2ggKEhhcmRpbCwgMTUuIERleiAxOTk1LCAxNDoxOTowMSk6CiMhIHJuPVllbmRpIHJ0PTgxOTAyNTc2NQoKQ2FsdW0sIGFsc28gZXJzdGVucyBzaW5kIGRpZXNlIG1pdGdlbG9nZ3RlbiBUeXBvcyBhdWNoIGJlaSAzNy5tYWwgbm9jaApsdXN0aWcsIHVuZCB6d2VpdGVucyB3ZWl0ZXIgc28uCkFsc28gbG9nZ2Ugd2VpdGVyIG1pdCEKCk5OTiEKCi1IYXJkaWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFBhcnR5PyAoR3JpbW1ib3JuLCAxNS4gRGV6IDE5OTUsIDE1OjEyOjE4KToKIyEgcm49WnVlcmlsZXUgcnQ9ODE5MDI1MzE2CltWZXJsZWd0IHZvbiBwYXJ0eSwgUm9lc3RpLCAxNS4gRGV6IDE5OTUsIDEzOjE1OjM5XToKQWVoZW0uLi4gTmEgamEgZWlnZW50bGljaCBtdWVzc2VuIEtsb3N0ZXIgamEgbmljaHQgdW5iZWRpbmd0IGNocmlzdGxpY2ggc2Vpbi4KQnVkaXN0aXNjaGUgS2xvZXN0ZXIgZ2lidHMgamEgei5CLiBhdWNoLi4uCk5pY2h0IHp1IHZlcmdlc3NlbiBkYXMgS2xvc3RlcmJyYWV1Li4uCgpBZWggd2FyIGRhcyBqZXR6dCB3aWVkZXIgZWluZXIgbWVpbmVyIHVlYmVyZmx1ZXNzaWdlbiBBcnRpa2VsPwpOYSBkYW5uIGFiZXIgYWIgbmFjaCBzY2htYXJybiBvZGVyIG11ZWxsLi4uLgpSb2VzdGkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWVpbiBSZXAtRmlsZSB1bmQgaWNoIChSYWZmaSwgMTUuIERleiAxOTk1LCAxNTozNjozNCk6CiMhIHJuPUNhbHVtIHJ0PTgxOTAyMjkzNwoKK0tlaW4gbWl0bG9nZ2VuIG1laHIgLSBTY2hhZGUhCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ29ldHRsaWNoZSBNYWNodCAuLi4gKE1pZXplLCAxNS4gRGV6IDE5OTUsIDIwOjQ2OjA0KToKZWJlbiB2b3IgZGVtIFN0cmFuZGtvcmIuLi4KCj4gSm9mICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkFsYm9pbiBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgQWxib2luLgoKCk1pZXplIC0gc2NobXVuemVsdCBpbW1lcm5vY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2gsIGltIGludGVybmV0IChNdXBmZWwsIDE2LiBEZXogMTk5NSwgMDQ6MDI6MjIpOgoiV2hhdCBkbyB5b3UgdGhpbmsgd2lsbCBiZSB0aGUgYmlnZ2VzdAogcHJvYmxlbSBpbiBjb21wdXRpbmcgaW4gdGhlIDkwcz8iCiJUaGVyZSBhcmUgb25seSAxNywwMDAgdGhyZWUtbGV0dGVyLQphY3Jvbnltcy4iICAgICAgICAgICAgICBbUGF1bCBCb3V0aW5dCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0enRvdGVucmF1bSAoQ2FyYWRocmFzLCAxNi4gRGV6IDE5OTUsIDE0OjA4OjM2KToKQW5ha2luIGxhZXVmdCB1bmtvbnRyb2xsaWVydCBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KCkhvZmZlbnRsaWNoIGxhZXVmdCBlciBuaWVtYW5kIHVlYmVybiBIYXVmZW4uCgogICAgICBDYXJhZGhyYXMgLSBoYXQgZ3JhZGUgMzAwIEsgTXVkbWFpbGZvbGRlciBnZWxvZXNjaHQgKGtlaW4gU2NobWFycm4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcmlubmVydW5nIChDYXJhZGhyYXMsIDE2LiBEZXogMTk5NSwgMTQ6MjI6NDgpOgpHcmFkZSBhbHMgbG9nIGdlZnVuZGVuOgoKRGF0dW06IE1pdCwgMzAuIE5vdiAxOTk0LCAyMzozNTowMApUdXNrIGtvbW10IGFuLgpUdXNrIHNhZ3Q6IEhhaWwgVG9ldGVyCj5UdXNrIGtuaWV0IHZvciBkaXIgbmllZGVyCnUgdHVzawpEYXMgaXN0IFR1c2suCkVyIGlzdCBhYnNvbHV0IGZpdC4KVHVzayBoYXQgZWluZSBEcmFjaGVuc2NodXBwZSBhbiB1bmQgZWluZSBBeHQgZ2V6dWVja3QuCkR1IHNhZ3N0OiBhbGxlcyBmaXQ/Cj4gVHVzayBzYWd0OiBkdSBiaXN0IG1laW4gVm9yYmlsZApFaW4gRHJhY2hlbmJhYnkga29tbXQgYW4uClR1c2sgZ3JlaWZ0IGRhcyBEcmFjaGVuYmFieSBtaXQgZWluZXIgQXh0IGFuLgogIFR1c2sgdHJpZmZ0IGRhcyBEcmFjaGVuYmFieSBzZWhyIGhhcnQuCiAgRGFzIERyYWNoZW5iYWJ5IGdyZWlmdCBUdXNrIG1pdCBzZWluZW4gRHJhY2hlbmJhYnktUHJhbmtlbiBhbi4KICBEYXMgRHJhY2hlbmJhYnkgdHJpZmZ0IFR1c2suCiAgVHVzayBncmVpZnQgZGFzIERyYWNoZW5iYWJ5IG1pdCBlaW5lciBBeHQgYW4uCiAgVHVzayB0cmlmZnQgZGFzIERyYWNoZW5iYWJ5LgogIERhcyBEcmFjaGVuYmFieSBncmVpZnQgVHVzayBtaXQgc2VpbmVuIERyYWNoZW5iYWJ5LVByYW5rZW4gYW4uCiAgRGFzIERyYWNoZW5iYWJ5IHRyaWZmdCBUdXNrIGhhcnQuClsuLl0KRGFzIERyYWNoZW5iYWJ5IGZhZWxsdCB0b3QgenUgQm9kZW4uClR1c2sgbmltbXQgZWluZSBEcmFjaGVuc2NodXBwZS4KbncgdHVzawpEdSBuaWNrc3QgVHVzayB3b2hsd29sbGVuZCB6dS4KPiBncmluc2UKRHUgZ3JpbnN0Lgo+IFR1c2sgZ2lidCBEaXIgZGllIERyYWNoZW5zY2h1cHBlLgpUdXNrIGdlaHQgbmFjaCBOb3Jkd2VzdGVuLgoKICAgIEphamEsIGRhbWFscywgYWxzIGljaCBub2NoIGVpbiBuZXVlciBTZWhlciB3YXIuLi4uCgogICAgICAgICAgICAgIENhcmFkaHJhcyAtIG5vY2ggYmVpbmFoZSBqdW5nICYga251c3ByaWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQ2VsZWJkaWwsIDE2LiBEZXogMTk5NSwgMTQ6NDg6MjQpOgpMaXZlIHZvbSByYXNlbmRlbiBSZXBvcnRlcjoKCltBYmVudGV1ZXI6TWljcm9dIEF1c2VyIHNjaG5pdHR3dW5kZW4gaXN0IG5hY2ggNSBtYWwgbm9jaCBpbW1lciBuaWNodHMKW1RvZDpdIFNjaGVyYmVuIGhhdCBnZXJhZGUgTWljcm8gdW1nZWJyYWNodC4KW1RvZDpTY2hlcmJlbl0gU2NoZXJiZW4gYnJpbmdlbiBHbHVlY2shCltBYmVudGV1ZXI6RGF1ZXJnYXN0IGdyaW5zdCBzaWNoIGVpbnNdCj4gcwpGcmFua3MgQWJlbnRldXJlci1LbmVpcGUuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBub3JkZW4uCkRpZSBMZWljaGUgTWljcm9zLgpEaWUgVG9wLUxpc3RlLCBUb3AtU3BpZWxlcmxpc3RlLCBUb3AtU2VoZXJsaXN0ZSB1bmQgVG9wLVp3ZWl0aWxpc3RlLgpsbCBsZWljaGUKRHUgc2llaHN0IGRpZSBzdGVyYmxpY2hlbiBVZWJlcnJlc3RlIE1pY3Jvcy4KU2llIGVudGhhZWx0OgpFaW5lIEthcnRlIHZvbiBQb3J0IFZhaW4uCkVpbiBzY2hhcnRpZ2VyIFNhZWJlbC4KRWluIE1lc3Nlci4KNDQwIE11ZW56ZW4uCkVpbmUgRmFja2VsLgpFaW4gWmV0dGVsLgpFaW4gQmV1dGVsIChnZW9lZmZuZXQpLgoKTmEgZGFzIHdhciBQcmFlemlzaW9uICAgICAgICAgICAgQ2VsZWJkaWwgZGVyIFNpbGJlcmJlcmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKENhcmFkaHJhcywgMTYuIERleiAxOTk1LCAxNDo1MDoyOSk6CiMhIHJuPUNlbGViZGlsIHJ0PTgxOTEyMTcwNAoqc3RhdW4qIDEwIFNla3VuZGVuIHNwYWV0ZXI6Cgo+IHcKSGFmZW5zdHJhc3NlLgpFcyBnaWJ0IHNlY2hzIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9iZW4sIG9zdGVuLCB1bnRlbiwgc3VlZGVuLCB3ZXN0ZW4gdW5kCm5vcmRlbi4KPiBzCkZyYW5rcyBBYmVudGV1cmVyLUtuZWlwZS4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG5vcmRlbi4KRWluIEJldXRlbCAoZ2VvZWZmbmV0KS4KRWluIFpldHRlbC4KRWluZSBGYWNrZWwuCjQ0MCBNdWVuemVuLgpFaW4gTWVzc2VyLgpFaW4gc2NoYXJ0aWdlciBTYWViZWwuCkRpZSBUb3AtTGlzdGUsIFRvcC1TcGllbGVybGlzdGUsIFRvcC1TZWhlcmxpc3RlIHVuZCBUb3AtWndlaXRpbGlzdGUuCgpLZWluZSBMZWljaGUgbWVociBkYT8gV2VyIGhhdHRlIGRlbm4gZGEgSHVuZ2VyPyEKCiAgICAgSGlsZmUhIFZhbXB5cmUuLi4gICAgICAgIENhcmFkaHJhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV296dSBicmF1Y2h0IERFUiBBdXNydWVzdHVuZz8gKE1hcml0YSwgMTYuIERleiAxOTk1LCAyMzoxODo0Mik6CgpDYXJhZGhyYXMgcnVmdDogYmlsbGlnZSBVbWhhZW5nZSwgYmlsbGlnZSBVbWhhZW5nZSwga2F1ZmVuIHNpZSwga2F1ZmVuIHNpZSwKQ2FyYWRocmFzIHJ1ZnQ6IGJpbGxpZ2UgU2Vuc2VuLCBiaWxsaWdlIFNlbnNlbgpNZXJsaW4gcnVmdDogSWNoIGJpbiBpbSBXYWxkLgpDYXJhZGhyYXMgcnVmdDogbm9lLCBkdSBrcmllZ3N0IG5peCEKW0FsbGdlbWVpbjpXaWxsb3cgbGFjaHQgc2ljaCB0b3RdCltBbGxnZW1laW46TWFyaXRhIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLl0KW0FsbGdlbWVpbjpBY3JpbW9uIGxhY2h0Ll0KW0FsbGdlbWVpbjpNYXJpdGEgd2FlbHp0IHNpY2ggYW0gQm9kZW4gdW5kIGtyaWVndCBrYXVtIG5vY2ggTHVmdC5dCltBbGxnZW1laW46Q2FyYWRocmFzIGJydW1tZWx0OiBrb2VubnQgamEgamVkZXIgTWFnaWVyIGRhaGVya29tbWVuLi4uXQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm51ciBtYWwgc28gLi4uIChFbHZuaWssIDE3LiBEZXogMTk5NSwgMDU6Mzg6NTcpOgpuZXVsaWNoIGluIGRlciBFbHZlbmtuZWlwZSAuLi4KRWluZSBHYWVydG5lcmluIGtvbW10IGFuLgpEaWUgR2FlcnRuZXJpbiBzY2huZWlkZXQgZGFzIEdyYXMgenVyZWNodC4KCipzdGF1biogLi4uIEdyYXMgaW4gZGVyIEtuZWlwZSA/Pz8KRWx2bmlrIChvZGVyIHdvbGx0ZSBzaWUgc2ljaCBlaW5lbiBKb2ludCBkcmVoZW4pID8/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQlNTIChBY3JpbW9uLCAxNy4gRGV6IDE5OTUsIDIxOjU5OjQwKToKW0FsbGdlbWVpbjpXaWxsb3cgaGFzc3QgQmxhdXRzYXVnZXJzY2h3ZXJ0ZXJdCltBbGxnZW1laW46V2lsbG93XSBoYXQgbm9jaCBqZW1hbmQgaW50ZXJlc3NlPz8/CltBbGxnZW1laW46S25vYl0gQXMgaXN0IGRhcyA/CltBbGxnZW1laW46V2lsbG93IHNldWZ6dF0KW0FsbGdlbWVpbjpBY3JpbW9uXSBHaWJzIEtub2IKW0FsbGdlbWVpbjpLbm9iIG5lbmVuZSAtIHdlbm4gSWhyIGRhcyBEaW5nIG5pY2ggd29sbHQgLSBpY2ggYXVjaCBuaWNodF0KW0FsbGdlbWVpbjpXaWxsb3ddIHdhcyBpc3QsIHdpbGwgbm9jaCBqZW1hbmQgZWluIGJzcyBoYWJlbj8gZWlucyBoYWIgaWNoIG5vY2gKW0FsbGdlbWVpbjpXaWxsb3ddIHVlYmVyIQouLi4KW0FsbGdlbWVpbjpXaWxsb3ddIHdpbGwgbmllbWFuZCBlaW4gYnNzIGhhYmVuPyBobW1tLi4uCltBbGxnZW1laW46V2lsbG93XSB1ZWJlciEKW0FsbGdlbWVpbjpYYW50aWFdIGljaCBrb21tIGdyYWQgbWFsIG1pdCBlaW5lbSB6dXJlY2h0IDopCltBbGxnZW1laW46Wmlub10gZGVyIHBydWVnZWwgdGF1Y2h0IGRvY2ggbml4IDspCltBbGxnZW1laW46RXRhaW4gd2lsbCBsaWViZXIgZWluIHRydXRoYWhubWVzc2VyLl0KLi4uCgpTbyB1bmJlbGllYnQgc2luZCB1bnNlcmUgQmx1dHNhdWdlcnNjaHdlcnRlciBnZXdvcmRlbiEgOi0pCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWVpbiBSZXAtRmlsZSB1bmQgaWNoIChTY2hydW1wZmksIDE4LiBEZXogMTk5NSwgMDU6NDY6MTkpOgojISBybj1ZZW5kaSBydD04MTkwMjU3NjUKTmUgbmUgWWVuZGksIER1IGJpc3Qga2VpbiBhcm1lciBNYWdpZXIgdW5kIGhhc3Qga2VpbiBSZXBmaWxlIGRhcyBEaXIgZGF1ZXJuZAp6dWdlbXVlbGx0IHdpcmQgbWl0IEZyYWdlbiBhbiBkaWUgTnBjJ3MuIEljaCBoYWIgZGEgdm9sbHN0ZXMgVmVyc3RhZW5kbmlzIGZ1ZXIKQ2FsdW1zIFZlcnp3ZWlmbHVuZywgaWNoIHdlaXNzIG5pY2h0IG1laHIgd2llIG9mdCBtZWluZSBhcm1lIEhleGUgbmFjaCBkZW0KYmxvZWRlbiBTY2huZWVtYW4gKFRzY2h1bGRpZ3VuZyBWaXBlciwgd2FyIG5pY2h0IHBlcnNvZW5saWNoIGdlbWVpbnQKKnp3aW5rZXIqKSBnZWZyYWd0IHdvcmRlbiBpc3QuIElyZ2VuZHdhbm4gaGFiIGljaCBpaHIgZGFubiBiZWlnZWJyYWNodCBwYXR6aWdlCkFudHdvcnRlbiB6dWdlYmVuIHVuZCBkYWNodGUgc28gaWNoIGhhZXR0ZSBtZWluZSBSdWhlLCBiencsIGVpbiBuaWNodCBnYW56IHNvCnZvbGxlcyBSZXBmaWxlLiBERU5LU1RFISBEaWUgTGV1dGUga29lbm5lbiBGcmFnZW4gc3RlbGxlbiB0c3RzdHMuCk1hbmNoZSBTcGllbGVyIHNpbmQgZG9jaCBzY2hvbiBzZWhyIG1pdHRlaWx1bmdzYmVkdWVyZnRpZyA7LSkKClNjaHJ1bXBmaSB0cm9lc3RldCBDYWx1bSBtaXRmdWVobGVuZCB1bmQgdmVyc3RhZW5kaXN2b2xsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoYWNoIGlzIGRhcyBzY2hvZW4gKENhcmFkaHJhcywgMTguIERleiAxOTk1LCAxMjowOTo0NCk6Cj4gbgpMYWJ5cmludGguCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiB1bnRlbiwgc3VlZGVuIHVuZCBub3JkZW4uClByYSBpc3QgSGFldXB0bGluZyBkZXMgU3Ryb2hiYWxsZW5GZXRpc2NoVmVyZWlucy4KPiBQcmEgc2FndDogaGkhIQpQcmEgZ3JpbnN0Lgo+IFByYSBzYWd0OiBoYXN0IGR1IGF1Y2ggZGllc2VzIFJhdXNjaGVuIGluIGplZGVtIFJhdW0/ClByYSB3dWV0ZXQgbmFjaCBOb3JkZW4uCj4gUHJhIHd1ZXRldCBoZXJlaW4uClByYSBzYWd0OiB3YXNuIGRhcz8/PwpEdSBzYWdzdDogbm9lLCB3YXIgbnVyIENlbGViZGlsIDopCkR1IHNhZ3N0OiB3YXMgaXN0IHdhcz8KPiBDZWxlYmRpbCBrb21tdCBhbi4KQ2VsZWJkaWwgZ3JpbnN0LgpDZWxlYmRpbCBnZWh0IG5hY2ggdW50ZW4uClByYSBzYWd0OiBpbiBqZWRlbSBSYXVtIGthbm4gaWNoIG5hY2ggU3VlZGVuIGdlaGVuPz8/CkR1IHNhZ3N0OiBodWg/Cj4gUHJhIHNhZ3Q6IGFjaCwgQ2VsYmRpbCBpc3QgZGFzLi4uCkR1IGtpY2hlcnN0LiAoV2llIGFsYmVybiB2b24gRGlyKQo+IFByYSBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpEdSB3YWVsenQgRGljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uCltBbGxnZW1laW46Q2FyYWRocmFzIHBydXN0ZXQgdm9yIHNpY2ggaGluLl0KPiBQcmEgZ3J1bW1lbHQuCltBbGxnZW1laW46Q2FyYWRocmFzIGdyaW5zdCBQcmEgZnJlY2ggYW4uXQo+IFtBbGxnZW1laW46UHJhIGdydW1tZWx0XQpEdSBzYWdzdDogZHUgYXJtZXIhIDopCj4gUHJhIGdyaW5zdC4KRHUgc3RvZXNzdCBQcmEgaW4gZGllIFJpcHBlbi4KPiBQcmEgc2FndDogZm9sZ3QgZGVyIG1pciBqZXR6dD8KRHUgc2Fnc3Q6IG5vZSwgZGVyIGlzdCBiZWltIG9ya2FuZnVlaHJlcgouLi4KCjIgTWluIHNwYWV0ZXI6Cgo+IExhYnlyaW50aC4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG5vcmRlbi4KRGVyIFVtaGFuZyBkZXMgVG9kZXMuCkVpbmUgU2Vuc2UuCkRlciBVbWhhbmcgZGVzIFRvZGVzLgpFaW5lIFNlbnNlLgpEZXIgVW1oYW5nIGRlcyBUb2Rlcy4KRGVyIFVtaGFuZyBkZXMgVG9kZXMuCkRlciBVbWhhbmcgZGVzIFRvZGVzLgpFaW5lIFNlbnNlLgpFaW5lIFNlbnNlLgpFaW5lIHNjaHdhcnplIEt1dHRlLgpFaW5lIFNlbnNlLgpEdSBydWZzdDogYmlsbGlnZSBTZW5zZW4sIGJpbGxpZ2UgU2Vuc2VuLCBuZXVlIFVtaGFlbmdlIChuYSBqYSwga2F1bQpEdSBydWZzdDogZ2VicmF1Y2h0ISkKPiBNZXJsaW4gcnVmdDogSWNoIGJpbiBpbSBXYWxkLgpQcmEgd3VldGV0IGhlcmVpbi4KPiBQcmEga251ZGRlbHQgRGljaC4KRHUgc2Fnc3Q6IG1hbCBlaW4gcGFhciBzZW5zZSBhYmxpZWdlcm4gOikKPiBDZWxlYmRpbCBrb21tdCBhbi4KQ2VsZWJkaWwgbmltbXQgZWluZSBTZW5zZS4KQ2VsZWJkaWwgbmltbXQgZWluZW4gVW1oYW5nLgpDZWxlYmRpbCBuaW1tdCBlaW5lbiBVbWhhbmcuCkNlbGViZGlsIG5pbW10IGVpbmVuIFVtaGFuZy4KQ2VsZWJkaWwgbmltbXQgZWluZSBTZW5zZS4KQ2VsZWJkaWwgbmltbXQgZWluZSBTZW5zZS4KQ2VsZWJkaWwgbmltbXQgZWluZSBTZW5zZS4KQ2VsZWJkaWwgZ2VodCBuYWNoIE5vcmRlbi4KUHJhIHNhZ3Q6IG5laW4hISEKRHUgc2Fnc3Q6IHdpZXNvIG5pY2h0Pwo+IFByYSBzYWd0OiBuaWNodCBpaHIgYmVpZGUgaW4gZWluZW0gUmF1bS4uLiA6LSkKUHJhIGFyZ2x0IGVpbiB3ZW5pZyB2b3Igc2ljaCBoaW4uCkR1IHNhZ3N0OiBlciBpc3Qgc2Nob24gd2VnCgoKICAgICAgQ2FyYWRocmFzIC0gZ3JpbnN0IGltbWVyIG5vY2ggaW4gc2ljaCByZWluClBTOiBkYXMgZ2FuemUgbmF0dWVybGljaCBudXIgbWl0IEVpbnZlcnN0YWVuZG5pcyB2b24gUHJhIHZlcm9lZmZlbnRsaWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIE1HLUlsbGlhcyBNb3JnZW5HcmF1ZW4sIGRhcyBMaXN0ZW5yZWljaGUgKEFudGhlYSwgMTguIERleiAxOTk1LCAxNDo1MDo0NSk6CltBbGxnZW1laW46U2FzYV0gQUFBQVJHR0dHIQpbQWxsZ2VtZWluOkxlZ29sYW5kXSBCcmF1Y2h0IG5vY2ggd2VyIExpc3RlIDE2PwpbQWxsZ2VtZWluOkp1c3VmZl0gaWNoCltBbGxnZW1laW46SWx1dmF0YXJdIEphIQpbQWxsZ2VtZWluOlNhc2FdIE5laW4uIEVzIGdpYnQgZG9jaCBzY2hvbiBMaXN0ZSAxNy4KW0FsbGdlbWVpbjpFbmd5d3Vja10gaWNoLgpbQWxsZ2VtZWluOkxhcmllbF0gSmEsIGljaCEKW0FsbGdlbWVpbjpQcmVkYXRvcl0gMTc/Pz8gaWNoIGhhYiA5IDooKCgKW0FsbGdlbWVpbjpBc21vZGlzXSBsaXN0ZSAxNyA/IHdvID8KW0FsbGdlbWVpbjpMYXJpZWwgYml0dGV0IFNhc2EgdW0gTGlzdGUgMTddCltBbGxnZW1laW46WWFudHJvXSB3ZXIgaGF0IGRlbm4gTGlzdGUgMTcgZ2VzY2hyaWViZW4/CltBbGxnZW1laW46VG9uZ2FdIHdpc28gMTYgLi4uLiBpY2ggaGFiZSBzY2hvbiAxNwpbQWxsZ2VtZWluOklsdXZhdGFyXSBJY2ggd2FlciBtaXQgdWViZXJoYXVwdCBpcmdlbmRlaW5lciBMaXN0ZSBzY2hvbgpbQWxsZ2VtZWluOklsdXZhdGFyXSBnbHVlY2tsaWNoIDopCltBbGxnZW1laW46TGFyaWVsXSBLYW5uIG1pciBqZW1hbmQgTGlzdGUgMTcgbSxhaWxlbj8KW0FsbGdlbWVpbjpKdXN1ZmZdIG1pciBhdWNoCltBbGxnZW1laW46QXNtb2Rpc10gbWlyIGF1Y2ggOikKW0FsbGdlbWVpbjpTYXNhXSAxNyBvZGVyIDE3LjEgPwpbQWxsZ2VtZWluOihBcmRhbmEpXSBub2UKW0FsbGdlbWVpbjpBc3Rhcl0gbWlyIGF1Yy4KW0FsbGdlbWVpbjpMYXJpZWwgbmltbXQgYmVpZGUhXQpbQWxsZ2VtZWluOkhvcmF4XSAxNy4yISEhIEJpdHRlCltBbGxnZW1laW46WWFudHJvXSBpY2ggd2lsbCBhdWNoIDE3IGhhYmVuCltBbGxnZW1laW46TGFyaWVsXSBHaWJ0J3MgZGllIGRlbm4/CltBbGxnZW1laW46SnVzdWZmIHJ1ZnQgMTcgMTddCltBbGxnZW1laW46QXNtb2RpcyB3aWxsIGF1aCAxNyBMaXN0ZW4gOildCltBbGxnZW1laW46TGFyaWVsXSBNaXIgcmVpY2h0IGF1Y2ggZGllIDE2ZXIhCltBbGxnZW1laW46WWFudHJvIGdyaW5zdCBBc21vZGlzIGFuXQpbQWxsZ2VtZWluOkFyZGFuYV0gaG1tLCB2ZXJrZXR0ZXRlIHplaWdlciB1bmQgbGlzdGVuIDopCltBbGxnZW1laW46U21lYWdvbF0gbGlzdGVuIGVyc3QgZnVlciBzcGllbGVyIGFiIGxldmVsIDIwLCB3aWUgd2FlciBkYXM/CltBbGxnZW1laW46SmVob3ZhXSBrYW5uIG1hbCBlaW5lciBlaW5lbSA5ZXIgZGllIDE2ZXIgby5hZS4gbWFpbGVuID8KW0FsbGdlbWVpbjpKZWhvdmFdIGRhbmtlLCB3ZXIgaW1tZXIgZGFzIHdhciAuLi4KW0FsbGdlbWVpbjpWYW5pciB3aWxsIGF1Y2ggbmUgbGlzdGUgaGFiZW5dCltTZWhlcjpWYW5pcl0gSGUgbGV1dGUsIGljaCB3b2xsdGUgbWl0IG5lbSAydGkgZGllIGxpc3RlIGFia2xhcHBlcm4sIGthbm4gbWlyCltTZWhlcjpWYW5pcl0gZGllIGRlbm4gbmllbWFuZCBnZWJlbiA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmQgJ01VRCcgaXN0IGRvY2ggZWluIGRldXRzY2hlcyBXb3J0ISAoUHJhLCAxOC4gRGV6IDE5OTUsIDE2OjU3OjA2KToKSGFsbG9lY2hlbiwKCkhhYmUgaWNoIGdlc3Rlcm4gaW4gJ1dhaHJpZyAtIERldXRzY2hlcyBXb2VydGVyYnVjaCcgZ2VmdW5kZW4gKHJlaW4genUtCmZhZWxsaWcpOgoKTXVkLCBNdWRkOiA8bS47IHVuei47IEdlbi4gLXM7IG5kZHQuIHUuIHNlZW0uPiBTY2hsYW1tIFtuZGR0LiBOZWJlbmZvcm0Kdm9uIE1vZGVyXQoKUHJhIChldHltb2xvZ2lzY2ggZm9yc2NoZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVyaW5uZXJ1bmcgKENhdHdlYXpsZSwgMTguIERleiAxOTk1LCAxNjo1OTo0NSk6CiMhIHJuPUNhcmFkaHJhcyBydD04MTkxMjAxNjgKSG0sIGR1IHdpbGxzdCB3b2hsLCBkYXMgaWNoIGFsdGUgc2NoYWV0emNlaG4gYXVzZ3JhYmUsIHdpZT8KSWNoIHNhZyBudXIgJ3Byb2JlbGllYmVuJyA6KQpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbmQgJ01VRCcgaXN0IGRvY2ggZWluIGRldXRzY2hlcyBXb3J0ISAoSGF0ZSwgMTguIERleiAxOTk1LCAxOTozODoyMyk6CiMhIHJuPVByYSBydD04MTkzMDIyMjYKRXMgaXN0IGRvY2ggc2Nob24gYWx0YmVrYW5udCwgZGFzcyBNVUQgZXR3YXMgZ2FueiB0cml2aWFsZXMgaXN0OgogIEVsZWt0cm9uaXNjaGVzIFNjaGxhbW1yaW5nZW4KTWFuY2htYWwgQWJhcnRlbiBkZXIgRmFudGFzeS4KSGF0ZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRvcHBlbHQgOikgKExhcmlzc2EsIDE4LiBEZXogMTk5NSwgMjA6NTk6NTYpOgplYmVuLi4uCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNb24sIDE4LiBEZXogMTk5NSwgMjA6NTg6NDYgKDggVGVpbG5laG1lcikKClRvcmlhbi4uLi4uLi4uLi56ICBDaGF2ZXouLi4uLi4uLi4ueiAgQmxvb2Rnb3JlLi4uLi4uLlMgIFJ5bmUuLi4uLi4uLi4uLi5TClRvZXRlci4uLi4uLi4uLi5IICBSb2NodXMuLi4uLi4uLi4uRSAgUm9jaHVzLi4uLi4uLi4uLkUgICpKb2YuLi4uLi4uLi4uLi5HCgpEZXIgZG9wcGVsdGUgUm9jaHVzIDspCgpMYXJpc3NhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJlbmEgKFJhZmZpLCAxOC4gRGV6IDE5OTUsIDIxOjA3OjI2KToKClVuZCBoaWVyIGZ1ZXIgYWxsZSBkaWUgbGVpZGVyIG5pY2h0IGRhYmVpIHdhaHJlbiwgb2RlciBmdWVyIGRpZSwgZnVlciBkaWUgZXMKenUgc2NobmVsbCB3YXIgZGVyIEthbXBmIG5vY2htYWwgaW4gWmVpdGx1cGU6CgoKPiBhcnVmZSBESUVkRVIga29tbSAtIFdpciB3b2xsZW4gQmx1dCBzZWhlbiEKRHUgcnVmc3QgaW4gZGllIEFyZW5hIDoKRElFZEVSIGtvbW0gLSBXaXIgd29sbGVuIEJsdXQgc2VoZW4hCj4gRGllZGVyIGJldHJpdHQgZGllIEFyZW5hLgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKREVSIEtBTVBGIElOIERFUiBBUkVOQSBCRUdJTk5UISBNT0VHRSBERVIgU1RBRVJLRVJFIEdFV0lOTkVOIQo+YXJ1ZmUgV2lyIHdvbGxlbiBCbHV0IHNlaGVuIQpEdSBydWZzdCBpbiBkaWUgQXJlbmEgOgpXaXIgd29sbGVuIEJsdXQgc2VoZW4hCj4gYXJ1ZmUgV2lyIHdvbGxlbiBCbHV0IHNlaGVuIQpEdSBydWZzdCBpbiBkaWUgQXJlbmEgOgpXaXIgd29sbGVuIEJsdXQgc2VoZW4hCj4gRXNjaSBydWZ0IGluIGRpZSBBcmVuYSA6Ckp1aHUgYXVmIGdlaHRzIQpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKS2V5IG11c3MgVHJlZmZlciBoaW5uZWhtZW4uCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgpEaWVkZXIgd2lyZCBnZXRyb2ZmZW4uCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgpEaWVkZXIgd2lyZCBnZXRyb2ZmZW4uCkRpZWRlciBtdXNzIFRyZWZmZXIgaGlubmVobWVuLgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKRGllZGVyIHNpZWh0IHNjaG9uIHppZW1saWNoIG1pdGdlbm9tbWVuIGF1cy4KSGVmZSBrb21tdCBhbi4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6CkRpZWRlciB3b2xsdGUgZmxpZWhlbiwgb2J3b2hsIGRpZSBUb3JlIGdlc2NobG9zc2VuIHNpbmQ/IEVpbiBaZWljaGVuIGZ1ZXIKRmVpZ2hlaXQ/CkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgpEaWVkZXIgbXVzcyBUcmVmZmVyIGhpbm5laG1lbi4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6CkRpZWRlciBzdGVodCBrdXJ6IHZvciBkZW0gRW5kZSwgbWVpbmUgRGFtZW4gdW5kIEhlcnJlbi4gRGllIEVudHNjaGVpZHVuZwpzdGVodCB1bm1pdHRlbGJhciBiZXZvciEhCk1vcmdvbiBrb21tdCBhbi4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6CkRpZWRlciB3b2xsdGUgZmxpZWhlbiwgb2J3b2hsIGRpZSBUb3JlIGdlc2NobG9zc2VuIHNpbmQ/IEVpbiBaZWljaGVuIGZ1ZXIKRmVpZ2hlaXQ/CkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgpLZXkgd2lyZCBnZXRyb2ZmZW4uCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgpEaWVkZXIgd29sbHRlIGZsaWVoZW4sIG9id29obCBkaWUgVG9yZSBnZXNjaGxvc3NlbiBzaW5kPyBFaW4gWmVpY2hlbiBmdWVyCkZlaWdoZWl0PwpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKRGllZGVyIHdvbGx0ZSBmbGllaGVuLCBvYndvaGwgZGllIFRvcmUgZ2VzY2hsb3NzZW4gc2luZD8gRWluIFplaWNoZW4gZnVlcgpGZWlnaGVpdD8KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6CkRpZWRlciB3b2xsdGUgZmxpZWhlbiwgb2J3b2hsIGRpZSBUb3JlIGdlc2NobG9zc2VuIHNpbmQ/IEVpbiBaZWljaGVuIGZ1ZXIKRmVpZ2hlaXQ/CltUb2Q6XSBLZXkgaGF0IGdlcmFkZSBEaWVkZXIgdW1nZWJyYWNodC4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6Ck1laW5lIERhbWVuLCB1bmQgSGVycmVuLCB3YXMgZnVlciBlaW4gS2FtcGYhIFdpciB3dXJkZW4gWmV1Z2VuIGVpbmVzCmdyb3NzZW4gS2FtcGZlcywgZGVyIGluIEtleSBlaW5lbiB3dWVyZGV2b2xsZW4gU2llZ2VyIGZhbmQhIFVucyBibGVpYnQKbnVuIG5pY2h0cyB3ZWl0ZXIsIGFscyBJaG5lbiBlaW5lIHNjaG9lbmUgSGVpbXJlaXNlIHp1IHd1ZW5zY2hlbiEgQmlzCnp1bSBuYWVjaHN0ZW4gbWFsIQpFaW4gTWFubiBtaXQgZ3Jvc3NlbiBTcGVja2FybWVuIHVuZCBlaW5lciBTY2h1ZXJ6ZSBhdWYgZGVyICdPdHRvcwpJbWJpc3N0dWJlJyBzdGVodCBrb21tdCBpbiBkaWUgQXJlbmEgdW5kIHNjaGxlaWZ0IGRpZSBMZWljaGUgcmF1cy4KW0JlaWxlaWQ6QmVuZGVpZ2lkXSBHb3RjaGEhCltHcmF0czpNb3Jnb25dIERhIGhhZXR0ZSBlcyBkaWNoIGJlaW5haCBlcndpc2NodC4uLi4KW0JlaWxlaWQ6S2V5XSBUc2NoYXUgZGllZGVyIQpIZWZlIHNhZ3Q6IGRhcyB3YXJzIHNjaG9uID8KW0dyYXRzOlJhZmZpIGp1YmVsdCBLZXkgenUuXQpbR3JhdHM6THVnXSBTdXBlciBLZXkhCkVzY2kgcnVmdCBpbiBkaWUgQXJlbmEgOgpTVVBFUiAhCltCZWlsZWlkOlJ5bmVdIFRyZWZmZXIgdmVyc2Vua3QuCkVzY2kgc2FndDogamVwLCBkYXMgZ2luZyByZWNodCBmbG90dApEdSBzYWdzdDogd2FzIGVyd2FydGVzdCBkdSBhbmRlcmVzIHZvbiBLZXkKW0dyYXRzOkJlbmRlaWdpZF0gRmVpbmVyIEthbXBmCkR1IHRlaWxzdCBLZXkgbWl0OiB3aXIgYXVjaCBub2NoIG5lIHJ1bmRlID8gLSBuYWNrdCB3aWVkZXJtYWwgPwoKV2FyIHdpZWRlcm1hbCByZWNodCBzY2huZWxsIC0gd2llIGdld29obnQgOikKCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWdpZXJzY2h3ZW1tZT8gKExhcmlzc2EsIDE4LiBEZXogMTk5NSwgMjI6MDc6MDEpOgoqc25pZmYqClZvbiB3ZWdlbiBNYWdpZXIgc2Nod2VtbWUuLi4uCmt3ZXIgbWFnaWVyCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNb24sIDE4LiBEZXogMTk5NSwgMjI6MDU6MDMgKDEgVGVpbG5laG1lcikKCkxhcmlzc2EuLi4uLi4uLk0KCjooCkxhcmlzc2EsIG1hbmNobWFsIGVpbnNhbSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVuZ2EgKENlbGViZGlsLCAxOS4gRGV6IDE5OTUsIDEzOjU3OjI0KToKICBEdSB6ZXJzY2htZXR0ZXJzdCBkZW4gRWlzYmFlcmVuIGluIGtsZWluZSBTdHVlY2tjaGVuLgpEZXIgRWlzYmFlciBmYWVsbHQgdG90IHp1IEJvZGVuLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFaXNiYWVyZW5dIENlbGViZGlsLCB3aWVzbyBzYWd0IGRlciBUeXA6IEtPTU0gTUlUIE1JUiwKW01vZXJkZXI6R2Vpc3QgZWluZXMgRWlzYmFlcmVuXSBTVEVSQkxJQ0hFUj8KaXNzIGxlaWNoZQpbQWxsZ2VtZWluOkVseWFzXSBNYWhsemVpdApIbW1tLCBsZWNrZXIhCgogICAgICAgICAgICAgIERhbmtlISAgICAgQ2VsZWJkaWwsIGh1bmdyaWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyA/IT8gKEFyZGFuYSwgMTkuIERleiAxOTk1LCAxNToxNjozMyk6CltBbGxnZW1laW46U2FzYV0gQWNodHVuZyBnbGVpY2ggc3RlcmJlIGljaCEKW1RvZDpdIEVpbiBTdGVpbmJlaXNzZXIgaGF0IGdlcmFkZSBTYXNhIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqa2ljaGVyKiAoWWVuZGksIDE5LiBEZXogMTk5NSwgMTU6NDA6MzgpOgoKW0FsbGdlbWVpbjpXYWx0YXJpXSB3b2Z1ZXIgaXN0IGVpbiBTYWJiZXJhbXVsZXR0IGd1dCA/Pz8/CltBbGxnZW1laW46SXNzb21hZF0genVtIHdpZWRlcmdlYmVuLCBibG9lZGVyIGRpZWIKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWVpbiBSZXAtRmlsZSB1bmQgaWNoIChDYWx1bSwgMTkuIERleiAxOTk1LCAxNjo0Mjo1MSk6CiMhIHJuPVNjaHJ1bXBmaSBydD04MTkyNjE5NzkKSG1tbS4uIGljaCBmYW5kIGRpZSBUeXBvcyBfdGVpbHdlaXNlXyBzY2hvbiBnYW56IHdpdHppZy4gVW5kIHdlbm4gamVtYW5kCkFubmUgbmFjaCAiV2VpaG5hY2h0c21hcmt0IiBmcmFndCwgZGFubiBzb2xsdGUgZGFzIElNSE8gZGVyIE5hY2h3ZWx0Cm5pY2h0IHZvcmVudGhhbHRlbiB3ZXJkZW4uLi4KCkFiZXIgZGVubm9jaCBsb2dnZW4gQW5uZSB1bmQgZGVyIEhvbHpmYWVsbGVyIGluIFp1a3VuZnQgbmljaHQgbWVociBtaXQ6Ck1pciBzaW5kIGJlaW0gRHVyY2hzZWhlbiBkZXIgRnJhZ2VuIG51ciBnYW56IHdlbmlnZSBQdW5rdGUgYXVmZ2VmYWxsZW4sCmRpZSBBbm5lIF93aXJrbGljaF8gZ2VmZWhsdCBoYWJlbi4uLiB1bmQgZGllIHNpbmQgamV0enQgYXVjaCBlaW5tZ2ViYXV0LgpWb24gZGFoZXIgZ2VoZSBpY2ggZWluZmFjaCBkYXZvbiBhdXMsIGRhc3MgZWluIHdlaXRlcmVzIExvZ2dlbiBuaWNodApub3R3ZW5kaWcgaXN0IHVuZCBudXIgZGllIFBsYXR0ZSB2b2xsbXVlbGx0IDopCgogLSBDYWx1bQoKUC5TLiBCbGVpYnQgbm9jaCBlaW5lIEZyYWdlOiBXYXMgaGF0IGRpZXNlciBBcnRpa2VsIGluIFNjaG1hcnJuIHp1IHN1Y2hlbj8KICAgICBEZXIgaXN0IGphIGtlaW4gYmlzc2NoZW4gd2l0emlnIG9kZXIgc2lubmxvcyEgVW52ZXJzY2hhZW10aGVpdC4uLgoKQWxzbyBnaWJ0cyBub2NoIG5lbiBPQlNDSCAob2JsaWdhdG9yeSBTY2htYXJybik6Ci0gIkV5LCBNYW5uLCBFeSwgd2FydW0gaXN0IGRlbm4gRGVpbmUgQnJpbGxlIHNvIGthcHV0dD8iCi0gIkljaCBmaWVsLCBNYW5uLi4uIgoKKGlzdCBuaWNoIHZvbiBtaXIuLi4pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTWVpbiBSZXAtRmlsZSB1bmQgaWNoIChCb2JvLCAxOS4gRGV6IDE5OTUsIDE3OjA3OjI3KToKIyEgcm49Q2FsdW0gcnQ9ODE5Mzg3NzcxCipsYWNoKgpJc3QgamEgbGllYiB2b24gZGlyLCBDYWx1bSwgZGFzcyBkdSBkZXIgTmFjaHdlbHQgbml4IHZvcmVudGhhbHRlbiB3aWxsc3QsCmFiZXIgdmllbGxlaWNodCBzb2xsdGVzdCBkdSBkaWNoIGF1Y2ggZ2VsZWdlbnRsaWNoIG1hbCBmcmFnZW4sCmlud2lld2VpdCBkaWUgRnJhZ2VuIGF1cyBzY2hsaWNodGVyIFVua2VubnRuaXMgcmVzdWx0aWVydGVuLCBvZGVyIG9iIG5pY2h0CnZpZWxsZWljaHQgYXVjaCBhbmRlcmUgR3J1ZW5kZSBkYWZ1ZXIgaW4gRnJhZ2Uga2FlbWVuLi4uCk1laHIgenUgdmVycmF0ZW4gd2FlcmUgdW5zcG9ydGxpY2gsCmNpYW8sCnRoaXMgd2FzIEJvQm8gc3BlYWtpbmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNZWluIFJlcC1GaWxlIHVuZCBpY2ggKFJhZmZpLCAxOS4gRGV6IDE5OTUsIDE4OjA0OjIzKToKIyEgcm49Q2FsdW0gcnQ9ODE5Mzg3NzcxCgphKSBNaXIgaGFiZW4gc2llIGF1Y2ggc3Bhc3MgZ2VtYWNodAoKYilXYXJ1bSBzb2xsIEFubmUgbmljaHQgYXVjaCBpbiB6dWt1bmZ0IG5ldWVzIExlcm5lbiA/IERhcyBNRyB1bSBTc2llIGhlcnVtCmlzdCBhdWNoIG5pY2h0IHN0YXRpc2NoIQoKYykgTmEgRHUgaGFzdCBkYW1pdCBhbmdlZmFuZ2VuIGRpZXMgbmFjaCBTY2htYXJybiB6dSBzZXR6ZW4gKHdhcyBkZW4gdm9ydGVpbApkZXMgYmVsaWViaWdlbiBXUWVpdGVyc2NobWFycm5zIGhhdCkuCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTWVpbiBSZXAtRmlsZSB1bmQgaWNoIChDYWx1bSwgMTkuIERleiAxOTk1LCAxOTowMjo1Nyk6CiMhIHJuPUJvYm8gcnQ9ODE5Mzg5MjQ3CkJvYm8sIGtsYWVyIG1pY2ggYml0dGUgYml0dGUgYXVmIQpJY2ggaGFiZSBuYWVtbGljaCBiZWltIGJlc3RlbiBXaWxsZW4ga2VpbmUgQWhudW5nLCBtaXQgd2VsY2hlbQpHZWRhbmtlbnNwcnVuZyBtYW4gdm9uIEFubmUgYXVmIGRlbiBXZWlobmFjaHRzbWFya3Qga29tbXQuLi4KCi0gQ2FsdW0uIFJhZXRzZWxuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktvbW1lbnRhcmUgKEFzbW9kaXMsIDE5LiBEZXogMTk5NSwgMjA6NDM6MDMpOgpbVG9kOl0gRWluIEFyYmVpdHNhbXRiZXJhdGVyIGhhdCBnZXJhZGUgQmVvYmFjaHRlciB1bWdlYnJhY2h0LgoKW0JlaWxlaWQ6U2NocnVtcGZpXSAqcHJ1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1c3QqCltCZWlsZWlkOkFjcmltb25dIFRqYSBzbyBnZWh0cwpbQmVpbGVpZDpBc21vZGlzXSBqYSwgZGllIHNpbmQgbmVydmlnIDopCltCZWlsZWlkOk1lc2lyaWkgZ3JpbnN0CltCZWlsZWlkOkJsb2NrYnVzdGVyXSBBdWNoJ25lIE1ldGhvZGUsIGRpZSBBcmJlaXRzbG9zaWdrZWl0IHp1IHNlbmtlbgpbQmVpbGVpZDpBc21vZGlzXSBhYiBuYWNoIHNjaG1hcnJuIDopCgpUamEsIHVuZCBkYSBzaW5kIHdpciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VyYWRlIGltIGxvZyBnZWZ1bmRlbiAuLi4gKER1cmlhbiwgMjAuIERleiAxOTk1LCAyMToxNjo1OCk6CgoKTW9uIERlYyAxMSAyMjoxNjozOCAxOTk1IDogU3RhcnQgZGVzIER1ZWxscyA6IFRha2V0aGF0IGdlZ2VuIE5pY2h0cy4KTW9uIERlYyAxMSAyMjoxNjo0MiAxOTk1IDogTmljaHRzIGhhdCBUYWtldGhhdCBpbSBEdWVsbCBiZXNpZWd0LgpUdWUgRGVjIDEyIDE3OjU0OjMzIDE5OTUgOiBTdGFydCBkZXMgRHVlbGxzIDogVGFrZXRoYXQgZ2VnZW4gU2ljaHNlbGJzdC4KVHVlIERlYyAxMiAxNzo1NzoyOSAxOTk1IDogVGFrZXRoYXQgaGF0IFNpY2hzZWxic3QgaW0gRHVlbGwgYmVzaWVndC4KCgpHdXQgZ2VtYWNodCwgVGFrZXRoYXQsIHByaW1hIQoKLSBEdXJpYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyA/IT8hIChDcmVhdGl2ZSwgMjEuIERleiAxOTk1LCAxNTo1MDoyMSk6CgpbQWxsZ2VtZWluOkZ5dF0gYXByb3BvcyBoeWRyYTogbGFlc3N0IGRpZSBzaWNoIHZvciBkZW0gcmVib290IG5vY2htYWwgc2VoZW4uLgpbQWxsZ2VtZWluOkZ5dF0gYnp3IHdhciBzaWUgc2Nob24gZGE/CltBbGxnZW1laW46V2FybG9yZF0gZ3JhZCBkYS4ga29tbXN0ZSA/CltUb2Q6XSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgV2FybG9yZCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBIeWRyYWtvcGZdIGhzc3Nzc3MKCkZ5dCBrYW0gYW5zY2hlaW5lbmQgbmljaHQuLi4KLUNyZWEtCltCZWlsZWlkOkNyZWF0aXZlXSBGeXQsIER1IGthbXN0IHp1IHNwYWV0CltBbGxnZW1laW46Rnl0XSBhY2ggd2FzCltNb2VyZGVyOkdlaXN0IGVpbmVzIEh5ZHJha29wZnNdIEZ5dCwgd2llc28gc2FndCBkZXIgVHlwOiBLT01NIE1JVCBNSVIsCltNb2VyZGVyOkdlaXN0IGVpbmVzIEh5ZHJha29wZnNdIFNURVJCTElDSEVSPwpbVG9kOl0gRWluIEh5ZHJha29wZiBoYXQgZ2VyYWRlIEZ5dCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBIeWRyYWtvcGZdIGhzc3Nzc3MKCmhtamEuLi4KCi1DcmVhLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJldW5kZSBoYXQgbWFuLi4uIDopIChDcmVhdGl2ZSwgMjEuIERleiAxOTk1LCAxNjozMDoxMSk6CgpEdSB0ZWlsc3QgZGVpbmVuIEZyZXVuZGVuIG1pdDogVGVzdApTbnVnZ2xlIHRlaWx0IERpciBtaXQ6IHRlc3QKR3V5YnJ1c2ggdGVpbHQgRGlyIG1pdDogYW5nZWtvbW1lbgpUYXNoYSB0ZWlsdCBEaXIgbWl0OiBHZWx1bmdlbiA6KSkKU2VtaXJhIHRlaWx0IERpciBtaXQ6IHNlbGJlciB0ZXN0IDopKSkKR3VuZHVyIHRlaWx0IERpciBtaXQ6IG5peCBhbmdla29tbWVuCkh1ZXBmZXIgdGVpbHQgRGlyIG1pdDogdGVzdCB6dXJ1ZWNrCkd1bmR1ciB0ZWlsdCBEaXIgbWl0OiA6LSkKCi1DcmVhLSwgbm9jaCBncmluc2VuZC4gS2FtIGFsbGVzIGJpbm5lbiAxIE1pbnV0ZSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IChDdWNodWxsaW4sIDIxLiBEZXogMTk5NSwgMTc6MTQ6NDYpOgoKW0FsbGdlbWVpbjpSYWZmaSBpc3Qgc2F1ZXIgLSBhbiBlaW5lbSBOZWtyb21hbnRlbiBzdGVyYmVuIGlzdCBzY2hvbiBlaW5lCnNjaGFuZGUgLSB3ZW5ucyB3ZW5pZ3N0ZW5zIExpbGl0aCBnZXdlc2VuIHdhZXJlICFdCltUb2Q6XSBOYWFtYWggaGF0IGdlcmFkZSBSYWZmaSB1bWdlYnJhY2h0LgoKQ3VjaC4tIEJlaWxlaWQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2hhLi4uIChZZW5kaSwgMjEuIERleiAxOTk1LCAyMDoxOToxOCk6CgpOYWNoIGRlbSBVbXp1ZzoKCltBbGxnZW1laW46Um9hZHJ1bm5lcl0gd2FydW0gZnVua3Rpb25pZXJ0IG1laW4gbGFnLW8tbWV0ZXIgbmljaHQhPyE/IT8hPyAtCltBbGxnZW1laW46Um9hZHJ1bm5lcl0gbWlyIGdpYnQga2VpbmVyIGVpbmUgYW50d29ydCBkcmF1ZiEhCltBbGxnZW1laW46Q3VjaHVsbGluXSBPaCwgZGllIFVociBnZWh0IGZhbHNjaCA6KQpbQWxsZ2VtZWluOkpvZl0gT2gga2xhc3NlCltBbGxnZW1laW46Q3JlYXRpdmVdIHdhcywgc2hjb24gMiBtaW5zIHVwPyA6KQpbQWxsZ2VtZWluOkpvZl0gU29ycnkgbGV1dGUKW0FsbGdlbWVpbjpDdWNodWxsaW5dIEJ5ZSA6KQpbQWxsZ2VtZWluOlJhZmZpXSB3YXMgc29sbCBkYXMgaGVpc3NlbiA/CkNvbm5lY3Rpb24gY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KCgpDb29sLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXMgaXN0IHNvd2VpdC4uLiAoQm9ibywgMjIuIERleiAxOTk1LCAwMTozNDo0Myk6CkhhcHB5IFNvbHN0aWNlIGFsbGVuIE11ZGRlcm4hIERpZSBOYWVjaHRlIHdlcmRlbiBrdWVyemVyLCB1bmQgYmFsZCBpc3Qncy4uLgoKICAgICAgICAgICAgICAgIEYgUiBVIEUgSCBMIEkgTiBHICEKCk11c3N0ZSBqYSBtYWwgZ2VzYWd0IHdlcmRlbi4uLgp0d0JzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RvbHo/PyAoRGF1ZXJnYXN0LCAyMi4gRGV6IDE5OTUsIDE0OjIxOjE0KToKCkdyYWRlIHBhc3NpZXJ0OgoKPiBzY2hhdQpFaW4gZWluc2FtZXIgTGluZGVuYmF1bSBzdGVodCBoaWVyLCBzZWluZSBad2VpZ2Ugc2luZCB2b2xsZXIgZnJpc2NoZ3J1ZW5lcgpCbGFldHRlciB1bmQgc2VpbiBTdGFtbSBpc3Qgbm9jaCBkaWNrZXIgYWxzIER1LgpFaW5lIFppZWxzY2hlaWJlIGhhZW5ndCBhbiBlaW5lbSBBc3QuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3RlbiB1bmQgd2VzdGVuLgpFaW5lIEJ1cmcuCkVpbiBCdXJnZ3JhYmVuLgo+IHNjaGllc3NlIHBmZWlsIGF1ZiBidXJnCkR1IHNwYW5uc3QgZGVuIEJvZ2VuLCB6aWVsc3QgdW5kIHRyaWZmc3QgbWl0dGVuIGlucyBTY2h3YXJ6ZSwgV2lsaGVsbQpUZWxsIHdhZXJlIHNpY2hlciBzdG9seiBhdWYgRGljaC4KTGVpZGVyIHJlaXNzdCBkaWUgU2VobmUgdW5kIGRlciBCb2dlbiBpc3Qga2FwdXR0LgpFaW4gYXVmZ2VzY2hyZWNrdGVzIEVpY2hob2VybmNoZW4gc2NoaW1wZnQgRGljaCBhdXMuCgoKSG0sIHN0b2x6IHdhZXJlIGVyIHdvaGwgbmljaHQsIHdlbm4gbWFuIHN0YXR0IGRlciBCdXJnIG5lIFNjaGVpYmUgdHJpZmZ0IQoKICAgICBEYXVlcmdhc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZXNlIE1hZ2llciA6LSkgKFNudWdnbGUsIDIzLiBEZXogMTk5NSwgMDM6MTA6MzQpOgpJcmlzIHNwcmljaHQ6IGluIGVpbmVtIGVpbnNhbWVuIFRhbCwgamVuc2VpdHMgZGVyIGdydWVuZW4gSHVlZ2VsCklyaXMgc3ByaWNodDogQW4gZWluZW0gc3RpbGxlbiBTZWUgaW0gbGVpcycgcmF1c2NoZW5kZW4gVWZlcnNjaGlsZgpJcmlzIHNwcmljaHQ6IEF1ZiBlaW5lciBlcndhY2hlbmRlbiBCbHVldGUgZWluZXIgU2Vlcm9zZQpJcmlzIHNwcmljaHQ6IExhbmRldCBzYW5mdCBlaW4gU2NobWV0dGVybGluZy4KSXJpcyBrbGFndCBIYWJ0IElociBkZW5uIGdhciBrZWluIEhlcnouCk11cGZlbCBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuCklyaXMgYnJpY2h0IGJsdXR1ZWJlcnN0cm9lbXQgenVzYW1tZW4uCgoKVW5kIGRhbm4gc2FnZW4gc2llIHdhcyBnZWdlbiBQS3MgOi05CgpTbnVnZ2xlCgpQUyBFaCBzaWNoIGplbWFuZCB3YXMgZmFsc2NoZXMgZGVua3QuIE11cGZlbCBoYXQgenVtIERlYnVnZ2VuIG5lYmVuIG1pcgpnZWFzdGFuZGVuCkljaCBoYWJlIHNpZSBzb3dvaGwgdm9yaGVyIGFscyBhdWNoIG5hY2hoZXIgYWxsZWluIGdldG9ldGV0LCBzbyBkYXNzIGVyIGtlaW4KcXVlc3RyZWxldmFudGVzIE1vbnN0ZXIgYmVzZWl0aWd0IGhhdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlaWhuYWNodGVuIChBZWxsLCAyMy4gRGV6IDE5OTUsIDIwOjI2OjMwKToKICBXaWUgd2FlcmUgZXMgbWl0IGVpbmVtIHBhc3NlbmRlbiBXZWlobmFjaHRzZ2VzY2hlbmsgZGVyIEdvZXR0ZXIsCmV0d2EgZWluIFpUIGZ1ZXIgamVkZW4/ICpzbWlsZSoKCiAgSGFidCBlaW4gZ2VydWhzYW1lcyBGZXN0LCBtaXQgdmllbCBMYW1ldHRhIGltIEhhYXIsCgogICAgQWVsbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWlobmFjaHRlbiAoUnVtYXRhLCAyNC4gRGV6IDE5OTUsIDAwOjIxOjI2KToKfiMhIHJuPUFlbGwgcnQ9ODE5NzQ2NzkwCn4jISB0aWQ9ODE5NzQ2NzkwCkljaCB2ZXJzdWNoZSBzY2hvbiBzZWl0IDIgU3R1bmRlbiwgZWluZW4gWmF0b25nIGluIEdlc2NoZW5rcGFwaWVyCmVpbnp1d2lja2VsbiwgYWJlciBkaWUgVmllY2hlciBmcmVzc2VuIGRhcyBQYXBpZXIgaW1tZXIgd2llZGVyIGF1Zi4KCkluIGRpZXNlbSBTaW5uZSwgZWluIGZvaGVzIEZlc3QgOi0pClJ1bWF0YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZWlobmFjaHRlbiAoUGFyYWNlbHN1cywgMjQuIERleiAxOTk1LCAyMTozMzo0OSk6Cn4jISBybj1SdW1hdGEgcnQ9ODE5NzYwODg2Cn4jISB0aWQ9ODE5NzQ2NzkwCkpvLCBkYXMgZ2VzdGFsdGV0IHNpY2ggd2lya2xpY2ggc2Nod2llcmlnZXIgYWxzIGljaCBkYWNodGUuIEljaCB3YXIgZWJlbiBpbgpkZXIgUG9zdCwgYWJlciBkZXIgUG9zdG1laXN0ZXIgc2FndGUsIGVyIGhhYmUga2VpbiBQYWtldCwgZGFzcyBncm9zcyBnZW51ZwpmdWVyIGRyZWkgU3RlaW5tb25zdGVyIGlzdC4gU2NoYWRlIGVpZ2VudGxpY2guCgpUcm90emRlbSBlaW4gZnJvaGVzIEZlc3Qgd3VlbnNjaGVuZCwKICAgIFBhcmFjZWxzdXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VpaG5hY2h0ZW4gKFRhc2hhLCAyNC4gRGV6IDE5OTUsIDIyOjI5OjA1KToKfiMhIHJuPUFlbGwgcnQ9ODE5NzQ2NzkwCn4jISB0aWQ9ODE5NzQ2NzkwCkhtbW0sIExhbWV0dGEgaW0gSGFhcj8gRGFubiBndWNrdCBtaWNoIE9ldHRpIHZpZWxsZWljaHQgZG9jaCBtYWwgd2llZGVyIG1pdApGcmV1ZGUgYW4uIDopKQoKd2Vya2VsbmQsIFRhc2hhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdGVpbmksIGRlciBXZWlobmFjaHRzbWFubi4uLiAoTXVzaGksIDI1LiBEZXogMTk5NSwgMDE6MzU6MTMpOgpOZXVsaWNoIGltIEphaWwuLi4KTmV1bGljaCBpbSBKYWlsLi4uU3RlaW5pIHNhZ3Q6IGViZW4gaGF0IG5vY2ggYWxsZXMgZ2VrbGFwcHQKW0FsbGdlbWVpbjpUaW1vdGh5XSBEYW5rZS4KRHUgc2Fnc3Q6IER1IGhhc3QgZG9jaCBuaWNodCBldHdhIGRhcyBPcmlnaW5hbCBqYWlsLWZpbGUgZ2VwYXRjaHQ/Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpmaWxlOiByb29tL2phaWwuYyBsaW5lOiA0OCBvYmplY3Q6IHJvb20vamFpbAoKICAgICAgICAgIAp0ZWxsX3Jvb20oT0ZGSUNFLGJyZWFrX3N0cmluZyhzdHIsNzgsY2FwaXRhbGl6ZSh0aGlzX3BsYXllcigpLT5uYW1lKCkKKSsiIGluIGRlciBaZWxsZSBzYWd0OiAiKSwoe3RoaXNfcGxheWVyKCl9KSk7CgplcnJvcjogQmFkIGFyZ3VtZW50IDEgdG8gdGVsbF9yb29tKCkKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KU3RlaW5pIHNhZ3Q6IGhtCidFcyBnaWJ0IGVpbmVuIHhfY2FsbCBiZWZlaGwgZGFnZWdlbi4uLgpTdGVpbmkgc2FndDogaWNoIGhhYiBudXIgZGllIGhhZWxmdGUgd2VnZ2Vsb2VzY2h0CkR1IHNhZ3N0OiBFcyBnaWJ0IGVpbmVuIHhfY2FsbCBiZWZlaGwgZGFnZWdlbi4uLgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KZmlsZTogcm9vbS9qYWlsLmMgbGluZTogNDggb2JqZWN0OiByb29tL2phaWwKCiAgICAgICAgICAKdGVsbF9yb29tKE9GRklDRSxicmVha19zdHJpbmcoc3RyLDc4LGNhcGl0YWxpemUodGhpc19wbGF5ZXIoKS0+bmFtZSgpCikrIiBpbiBkZXIgWmVsbGUgc2FndDogIiksKHt0aGlzX3BsYXllcigpfSkpOwoKZXJyb3I6IEJhZCBhcmd1bWUtLS0tLS0tLS0tLS0tLS0tLS0tLS0tCidTVVBFUklERUUhCkR1IHNhZ3N0OiBTVVBFUklERUUhCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tbGFwaXRhbGl6ZSh0aGlzX3BsYXllcigpLT5uYW1lKCkKKSsiIGluIGRlciBaZWxsZSBzYWd0OiAiKSwoe3RoaXNfcGxheWVyKCl9KSk7CgotZW4gbXJ1Zi4KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSgKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KW0FsbGdlbWVpbnNILS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmZpbGU6IHJvb20vamFpbC5jIGxpbmU6IDQ4IG9iamVjdDogciAgICAgICAgICAKdGVsbF9yb29tKE9GRklDRSxicmVha19zdHJpbmcoc3RyLDc4LGNhcGl0YWxpemUodGhpc19wbGF5ZXIoKS0+bmFtZSgpCikrIiBpbiBkZXIgWmVsbGUgc2FndDogIiksKHt0aGlzX3BsYXllcigpfSkpOwoKZXJyb3I6IEJhZCBhcmd1bWVudCAxIHRvIHRlbGxfcm9vbSgpCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCltBbGxnZW1laW46VGltb3RoeV0gSWNoIHZlcnN0ZWhlIG51ciBIb2NoZGV1dHNjaC4uLiB1bmQgd2VuaWcgZGF2b24uCidTaW5kIFRlc3RpZXMgYXVjaCBNYWdzPwpbQWxsZ2VtZWluOkluZWx1a2ldIGdlaHQgbWlyIGdlbmF1c28gOykKVW5taWxsIGFuIGFsbGUgTWFnaWVyOiB3ZW5uIGhpZXIgZWluIG1lZ2llciBkYW5uIHRyYW5zIGRlciBtYWwgYml0dGUgU3VzaGkKVW5taWxsIGFuIGFsbGUgTWFnaWVyOiB1bmQgc3RlaW5pIHN0ZWluaSBoYXQgZWluZW4gcmllc2VuIGZlaGxlciBnZW1hY2h0CkR1IHNhZ3N0OiBTaW5kIFRlc3RpZXMgYXVjaCBNYWdzPwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KZmlsZTogcm9vbS9qYWlsLmMgbGluZTogNDggb2JqZWN0OiByb29tL2phaWwKCiAgICAgICAgICAKdGVsbF9yb29tKE9GRklDRSxicmVha19zdHJpbmcoc3RyLDc4LGNhcGl0YWxpemUodGhpc19wbGF5ZXIoKS0+bmFtZSgpCikrIiBpbiBkZXIgWmVsbGUgc2FndDogIiksKHt0aGlzX3BsYXllcigpfSkpOwoKZXJyb3I6IEJhZCBhcmd1bWVudCAxIHRvIHRlbGxfcm9vbSgpCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCltBbGxnZW1laW46SW5lbHVraSBuZXppZWh0IHNpY2ggYXVmIGRhcyAid2VuaWcgZGF2b24iIDspXQonT2RlciBsYXNzIHdlbmlnc3RlbnMgdW5taWxsIGF1ZiAtYSB1bnMgdmVyYXJzY2hlbi4gRGFzIE1VU1MgaW4gZGllIE1QQTpfKT0KW0FsbGdlbWVpbjpJbmVsdWtpXSBhZWggYmV6aWVodApVbm1pbGwgYW4gYWxsZSBNYWdpZXI6IHdlbm4gaGllciBlaW4gbWVnaWVyIGRhZWluZW4gcmllc2VuIGZlaGxlciBnZW1hY2h0ClVubWlsbCBhbiBhbGxlIE1hZ2llcjogYml0dGUgZGFzIGlzdCBzZWhyIHdpY2h0aWcKRAotLS0tLS0tLS0tLS0tLS0tLS0tLQpmaWxlOiByb29tL2phaWwuYyBsaW5lOiA0OCBvYmplY3Q6IHJvb20vamFpbAoKICAgICAgICAgICB0CmVycm9yOiBCYWQgYXJndW1lbnQgMSB0byB0ZWxsX3Jvb20oKSAgICAgIC0KJ09oIGRvY2ghCgoKICAgICAgICAgIFdpbGxrb21tZW4gYXVmIGRlbQogICAgICAgICAgV2lsbGtvbW1lbiBhdWYgZGVtCgoKICAgICBCZXJlaWNoc3JlY2huZXJjbHVzdGVyIGRlcyBQSUIKICAgICBCZXJlaWNoc3JlY2huZXJjbHVzdGVyIGRlcyBQSUIKCgogICAgICAgICAgICAgS25vdGVuIEFYUElCCiAgICAgICAgICAgICBLbm90ZW4gQVhQSUIKCiAgICAgICAgICAgICAgIEFYUCAyMTAwIE9QRU4tVk1TIDYuMSAvIERFQ25ldCBQaGFzZSBWClVzZXJuYW1lOiBNT0VIV0FMRApQYXNzd29yZDoKICAgICAgICBLZWluIFJlY2hlbmJldHJpZWIgYXVmIGRlbiBQSUItUkVjaG5lcm4KCiAgICAgICAgMjcuMTIuOTUgMThoIC0tLS0tLS0yOC4xMi45NSBjYSAxNGgKCiAgICAgICAgU3lzdGVtLSB1bmQgTmV0endlcmstIFVwZ3JhZGUKCiAgICBMYXN0IGludGVyYWN0aXZlIGxvZ2luIG9uIFN1bmRheSwgMjQtREVDLTE5OTUgMjE6MjM6MDkuNTEKICAgIExhc3Qgbm9uLWludGVyYWN0aXZlIGxvZ2luIG9uIE1vbmRheSwgMTgtU0VQLTE5OTUgMTY6MTY6MDAuNjcKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBQSUIuQ1BVCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDE4LURFQyBQSUI0OjpTWVNURU0gICAgICAgICBTaHV0ZG93biBkZXMgUElCLUNsdXN0ZXJzIHVuZCBBZHJlc3NhZW5kZXJ1bmcKZGVyIEsKIDE4LURFQyBQSUI0OjpTWVNURU0gICAgICAgICAxOTk1IENvbXB1dGVyIENlbnRyZSBDaHJpc3RtYXMgU2h1dGRvd24KU2NoZWR1bGUKIDE5LURFQyBQSUI0OjpTWVNURU0gICAgICAgICBGYWxzY2hlIFRyZW1pbmFuZ2FiZSBTaHV0ZG93biBQSUItQ2x1c3RlcgoyNy4xMi8yOC4KVmF4TmV3cyAzLjE1IC0tLS0tLS0tLS0tLS0tLSBUeXBlIE5FV1MgdG8gUkVBRCB0aGVzZSBtZXNzYWdlcwotLS0tLS0tLS0tLS0tLS0tLS0KCioqKiBFbmQgb2YgU3lzdGVtLUxvZ2luICoqKgpwcm9jZXNzaW5nIHN5bGlfbG9naW4uY29tLi4uCmRlZmluaW5nIGxvZ2ljYWxzLi4uCmRlZmluaW5nIHN5bWJvbHMuLi4KQWN0aXZhdGluZyBGYWtlLURPUyAxLjBiCiVTRVQtRS1OT1RTRVQsTkVULUktVFJZSU5HLCBUcnlpbmcgLi4uIDEyOC4xNzYuMTIxLjc0CiVURUxORVQtSS1TRVNTSU9OLCBTZXNzaW9uIDAxLCBob3N0IG11ZC51bmktbXVlbnN0ZXIuZGUsIHBvcnQgNDcxMQpIVFRQLzEuMCAzMDIgRm91bmRFc2NhcGUgY2hhcmFjdGVyIGlzIF5dCkxvY2F0aW8KCgoKCk5hamEsIEFuZmFlbmdlcmdsdWVjazpfKQoKV2Ugd2lzaCB5b3UgYSBtZXJyeSBYbWFzLgoKS25hc3RpLVN1c2hpIHVuZCBTdGVpbmkgIkxQQy1Lb2VuaWciIGRlciBTdGVpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGFzaGEgYWxsZWluIGltIFdhbGQgKFRhc2hhLCAyNi4gRGV6IDE5OTUsIDA5OjI5OjExKToKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERpZSwgMjYuIERleiAxOTk1LCAwOToyNzo1OSAoMSBUZWlsbmVobWVyKQoKVGFzaGEuLi4uLi4uLi4uLk0KCkhhYiBpY2hzIGFsc28gZG9jaCBub2NoIGdlc2NoYWZmdCA6KSkKClNpY2ggbmFjaCBXaWVuIGFtIHZlcmtudWRkZWxuIHNlaWVuZCwgVGFzaGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUYXNoYSBhbGxlaW4gaW0gV2FsZCAoQWVsbCwgMjYuIERleiAxOTk1LCAxMDowMjozOCk6Cn4jISBybj1UYXNoYSBydD04MTk5NjY1NTEKfiMhIHRpZD04MTk5NjY1NTEKICBNZWlucywgbWVpbnMsIGFsbGVzIG1laW5zIQoKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERpZSwgMjYuIERleiAxOTk1LCAxMDowMTo0OCAoMSBUZWlsbmVobWVyKQoKQWVsbC4uLi4uLi4uLi4uLlMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVGFzaGEgYWxsZWluIGltIFdhbGQgKFJlaW5lbGRlLCAyNi4gRGV6IDE5OTUsIDEwOjExOjQwKToKfiMhIHJuPUFlbGwgcnQ9ODE5OTY4NTU4Cn4jISB0aWQ9ODE5OTY2NTUxCnRqYSBhZWxsLAoKZGEgaGFiZW4gd2lyIHVucyBrbmFwcCB2ZXJwYXNzdCA6KQogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRGllLCAyNi4gRGV6IDE5OTUsIDEwOjEwOjQ1ICgxIFRlaWxuZWhtZXIpCgpSZWluZWxkZS4uLi4uLi4uegoKYWJlciB3ZW5pZ3N0ZW5zIGhhYmVuIGRpZSwgZGllIGdsZWljaCBrb21tZW4ga2VpbiBubmFkdyA6KQoKcmVpbmVsZGUgLSBhbGxlaW4genUgaGF1cyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmFmIHNjaGxhZWZ0IGd1dCB1bmQgZmVzdC4uLiAoQ2hlYXN5LCAyNy4gRGV6IDE5OTUsIDA2OjA2OjQxKToKXSFmaW5nZXIgamFmCkphZiBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogQ2hlbW5pdHouClBhc3NpdiBzZWl0OiAwOToxMzoxMQogICAgICAgICAgICAgXl5eXl5eXl4KVm9sbGVyIE5hbWU6IEphZgotLS1bc25pcF0tLS0KICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIE1pdCwgMjcuIERleiAxOTk1LCAwNjowNToyMSAoMyBUZWlsbmVobWVyKQoKQ2hlYXN5Li4uLi4uLi4uLnMgIEphZi4uLi4uLi4uLi4uLi5TICBNaXNzZWxsaS4uLi4uLi4uUwotLS1bc25pcF0tLS0tClVuZCBkYXMsIHdlbm4gbWFuIGdyYWQgYWJnZW5pYmJlbHQgaXN0Li4uIFNjaGx1Y2h6Li4uCgotQ2hlYXN5Cj4gZmluZ2VyIGphZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTVBBIChNYXJpdGEsIDI4LiBEZXogMTk5NSwgMDE6MTQ6NDcpOgp+IyEgcm49UmFmZmkgcnQ9ODIwMTAxNjk0Cn4jISB0aWQ9ODE5NDQ5MzU0CihCZXp1ZzogQXJ0aWtlbCAoUnVicmlrIGFsbGdlbWVpbmVzKSB2b24gUmFmZmkgdm9tIDI3LiBEZXogMTk5NSwgMjM6MDE6MzQpCkhpIFJhZmZpLApEZWluZW4gQXJ0aWtlbCBoYWV0dGUgaWNoIG1pciBhdWNoIGdlcm5lIGluIGRpZXNlciBSdWJyaWsgZ2V3dWVuc2NodC4gSWNoCmFudHdvcnRlIGhpZXIsIHVtICdhbGxnZW1laW5lcycgbmljaHQgd2VpdGVyIHp1IGJlbGFzdGVuLgpOYWNoIGRyZWltYWxpZ2VuIExlc2VuIERlaW5lcyBBcnRpa2VscyAoZGVyIHp1bSBqZXR6aWdlbiBaZWl0cHVua3QgYWxzIDEyNS4KZ2VmdWVocnQgd2lyZCkga2FubiBpY2ggaW1tZXIgbm9jaCBrZWluZW4gSW5oYWx0IGVya2VubmVuLiBJY2ggZXJrZW5uZSBub2NoCmFtIGVoZXN0ZW4gWnVzdGltbXVuZyB6dSBVbG8sIGRhIER1IHZvbiBkZW4gdW50ZXJzY2hpZWRsaWNoZW4gcGVyc29lbmxpY2hlbgpQcmFlZmVyZW56ZW4gcmVkZXN0LCBkaWUgVWxvcyBBbnJlZ3VuZyBqYSB1bnRlcnN0dWV0enQuIEdhbnogc2ljaGVyIGJpbiBpY2gKbWlyIGJlaSBkaWVzZXIgRWluc2NoYWV0enVuZyBhbGxlcmRpbmdzIG5pY2h0LgpEYXMgMi4gUHJvYmxlbSBoYXR0ZSBpY2ggbWl0IERlaW5lbSBTY2hsdXNzYXR6LiBEaWUgQmVtZXJrdW5nLCBlcyBzdGVoZSBlaAp6dSB3ZW5pZyBpbiBkZXIgTVBBIHdhZXJlIGJlc3NlciBhbHMgaXJvbmlzY2ggenUgZXJrZW5uZW4gZ2V3ZXNlbiwgd2VubiBlaW4KZW50c3ByZWNoZW5kZXIgU21pbGV5IGRhYmVpZ2VzdGFuZGVuIGhhZXR0ZS4gR2VyYWRlIHdlbm4gRHUgZWluZW4gc29sY2hlbgpTYXR6IHNjaHJlaWJzdCwgaXN0IHNvIGVpbiBTbWlsZXkgd2ljaHRpZywgZGVubiB3ZW5uIGljaCBtaXIgZGllIE1lbmdlIGFuLQpzY2hhdWUsIGRpZSBEdSBpbiBkaWUgTVBBIHNjaHJlaWJzdCwga29lbm50ZSBtYW4gZWJlbnNvZ3V0IGF1ZiBkaWUgSWRlZQprb21tZW4sIER1IG1laW50ZXN0IGRhcyBlcm5zdC4KSWNoIHdlcmRlIGF1Y2ggd2VpdGVyaGluIDgwICUgbWVpbmVyIEFydGlrZWwgbWl0IH5xIGFic2NobGllc3NlbiB1bmQKZ2VsZWdlbnQtCmxpY2ggZGVuICdsb2VzY2hlIGFydGlrZWwuLi4nLUJlZmVobCBlaW5zZXR6ZW4uIFdlciBlYmVuc28gdmVyZmFlaHJ0LCBsZWlzdGV0CmVpbmVuIHNpbm52b2xsZW4gQmVpdHJhZyB6dW0gUHJpbnppcCAnS2xhc3NlIHN0YXR0IE1hc3NlJyB1bmQgaGF0IHNpY2ggbmljaHRzCnZvcnp1d2VyZmVuLCB3ZW5uIHphaGxyZWljaGUgU3BpZWxlciB1bmQgc29nYXIgaG9oZSBNYWdpZXIgKEhpIEpvZiEpIGluCkVyd2FlLQpndW5nIHppZWhlbiwgdm9yIGRlbiA5MCAlIE11ZWxsIHp1IGthcGl0dWxpZXJlbiB1bmQgZGFzIFplaXR1bmdsZXNlbiBhdWZ6dS0KZ2ViZW4uCk5hIGd1dCwgaW0gZGllc2VtIGxldHp0ZW4gQWJzY2huaXR0IHN0YW5kIG5pY2h0cyBOZXVlcyBtZWhyIGRyaW4sIGljaCBzZWhzCmVpbi4KQW5zb25zdGVuIGhvZmZlIGljaCwgZ2VnZW51ZWJlciBtZWluZW0gRnJldW5kIFJhZmZpIGRpcGxvbWF0aXNjaCBnZW51ZwpnZXdlc2VuCnp1IHNlaW4gdW5kIHZlcmJsZWliZSBtZmcKCk1hcml0YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1ZSBNb25zdGVyIGltIE1HISAoUnluZSwgMjguIERleiAxOTk1LCAyMDo1NzoyOCk6Ck5hY2ggZGVtIE1vdHRvICJ6d2VpIGF1ZiBlaW5lbiBTdHJlaWNoIiBoYWJlIGljaCBnZXJhZGUgZWluIE1vbnN0ZXIgbmV1ZW4KVHlwcyBnZXRvZXRldCwgdm9yIGRlbSBpY2ggaGllciBlaW5kcmluZ2xpY2ggd2FybmVuIG11c3MsIGRhIGJpc2hlciBrZWluZQpnZXNpY2hlcnRlbiBJbmZvcm1hdGlvbmVuIHVlYmVyIHNlbGJpZ2VzIHZvcmxpZWdlbjoKCiBEaWVzIGlzdCBkaWUgRnJpZWRlbnNzdHJhc3NlLiBIaWVyIGlzdCBhbGxlcyBydWhpZyB1bmQgZnJpZWRsaWNoLCB3aWUgZXMKc2ljaApmdWVyIGVpbmUgRnJpZWRlbnNzdHJhc3NlIGdlaG9lcnQuIEFuIERlaW5lciByZWNodGVuIFNlaXRlIHppZWh0IHNpY2ggZGllClN0YWR0bWF1ZXIgZW50bGFuZy4gTm9lcmRsaWNoIHZvbiBoaWVyIHNjaGVpbnQgZGllIFN0cmFzc2UgaW4gZWluZXIgU2Fja2dhc3NlCnp1IGVuZGVuLiBEaWUgYW5kZXJlIFNlaXRlIHdpcmQgdm9uIGVpbmVyIGtsZWluZW4gSGVja2UgYmVncmVudHp0LCBoaW50ZXIgZGVyCnp3ZWkga2xlaW5lIEdhZXJ0ZW4genUgc2VoZW4gc2luZC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgbm9yZGVuLgpEaWUgTGVpY2hlIGVpbmVzIE9ya3MuCkRpZSBMZWljaGUgZWluZXMgSW52aXMuCgoKV2VyIGdlbmF1ZXJlcyB1ZWJlciBkYXMgSW52aXMgd2Vpc3MsIGJlaGFsdGUgZXMgYmVzc2VyIGZ1ZXIgc2ljaC4gRGllCndhaHJoZWl0IGtvZW5udGUgZ3JhdXNhbSBzZWluICEKClJ6bmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkphIGphLCBkaWUgTWFnaWVyIChQYXJhY2Vsc3VzLCAyOC4gRGV6IDE5OTUsIDIxOjAxOjM5KToKSG1tLCBhbiBtYW5jaGVuIFRhZ2VuIHdvbGxlbiBkaWUgTWFnaWVyIGVpbmZhY2ggbmljaHQgZGEgc2VpbjoKCj5rd2VyIG1hZ2llcgogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRG9uLCAyOC4gRGV6IDE5OTUsIC1aRU5TVVItICg1IFRlaWxuZWhtZXIpCgooU3VzaGkuLi4uLi4uLikubSAgKE11cGZlbC4uLi4uLi4pLk0gIChQYXJhY2Vsc3VzLi4uKS5NICAoSGF0ZS4uLi4uLi4uLikuRQooUnVtYXRhLi4uLi4uLikuRwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNUEEgKFJhZmZpLCAyOC4gRGV6IDE5OTUsIDIyOjI4OjE0KToKfiMhIHJuPU1hcml0YSBydD04MjAxMDk2ODcKfiMhIHRpZD04MTk0NDkzNTQKTGllYmUgTWFyaXRhLAoKYSkgQWIgbmFjaCBTY2htYXJybiA/IE1laW4gZ2VzdHJpZ2VyIEFydGlrZWwgaGF0dGUgbml4IGluIFNjaG1hcnJuCiAgIHZlcmxvcmVuIChkaWUgUnVicmlrZW4gc2luZCB6dXIgU3RydWt0dHVyaWVydW5nIGRlciBBcnRpa2VsIGdlZGFjaHQpCiAgIHVuZCB3ZW5uIGljaCBtaWNoIGFuIGVpbmVyIERpc2sgaW4gQWxsZ2VtZWluIGJldGVpbGlnZSBkYW5uIGdlaG9lcnQKICAgZGllIEFudHdvcnQgZG9ydCBoaW4gLSBlcyBpc3Qgc2Jzb2x1dGVyIHNjaG1hcnJuICg6KSkgZGllIEFudHdvcnRlbgogICBhdWNoIG5vY2gga3JldXogdW5kIHF1ZXIgdWViZXIgdmVyc2NoaWVkZW5lIFJ1YnJpa2VuIHp1IHZlcnN0cmV1ZW4KICAgLSB3ZXIgd2lsbCBkZW5uIGRhIG5vY2ggenVzYW1tZW5oYWVuZ2VuZCBtaXRsZXNlbiA/IFBvc3Rlc3QgZHUgZXR3YQogICBlaW5lIEFudHdvcnQgenUgYWx0LnNleCBpbiByZWMuZ2FtZXMudHJhZGluZ2NhcmRzID8KCmIpIEluaGFsdCA/IEljaCBnZWJlIHp1LCBkYXMgZXIgYmV0b250IGtuYXBwIGdlaGFsdGVuIHdhciAtIGVyIG5pbW10CiAgIG51bm1hbCBCZXp1ZyBhdWYgZWluZW4gYW5kZXJlbiBBcnRpa2VsIChzaWVoZSBWZXJ3ZWlzIGltIEtvcGYpLgogICBJY2ggd29sbHRlIGVpZ2VudGxpY2gga2xhcm1hY2hlbiBkYXMgaWNoIGRpZXNlIGRpc2t1c2lvbiBmdWVyIG1laHIKICAgYWxzIG51ciBmbHVlc3NpZyBoYWx0ZSAtIGZ1ZXIgcmVnZWxyZWNodCB1ZWJlcmZsdWVzc2lnLgoKYykgdWViZXJlaW5zaW1tdW5nIG1pdCBVbG8gPyBOZWluLiBJY2ggaGFsdGUgc29jaGUgbWVjaGFuaXNtZW4gZnVlcgogICBrb21wbGV0dCB1ZWJlcmZsdWVzc2lnLiBXZW5uIGljaCB2b24gdW50ZXJzY2hpZWRsaWNoZW4gUHJhZWZlcmVuemVuCiAgIGdlcmVkZXQgaGFiZSBkYW5uIHdhciBkYXMgZGFyYXVmIGJlem9nZW4gZGFzLCB3YXMgZnVlciBkZW4gRWluZW4gTXVlbGwKICAgaXN0LCBmdWVyIGRlbiBBbmRlcmVuIGVpbmUgU2ludm9sbGUsIHdpdHppZ2UsIGludGVyZXNzYW50ZSBvZGVyCiAgIHp1bWluZGVzdCB1bnRlcmhhbHRzYW1tZSBTYWNoZSBpc3QuIEljaCBzZWhlIGhpZXIgbnVyIGltbWVyIHdpZQogICBWZXJzdWNoZSB2b24gZWluaWdlbiBMZXV0ZW4gKG5laW4gbmllbWFuZCBzcGV6aWVsbGVyIC0gZ2FueiBhbGxnZW1laW5lCiAgIEJlemVpY2hudW5nKSBiZXN0aW1tZW4genUgd29sbGVuIHdhcyBNaXN0IGlzdCwgdW5kIHdhcyBuaWNodCAtIGplIG5hY2gKICAgaWhyZXIgVGFnZXNsYXVuZSEgWkVOU1VSIElTVCBOSUNIVCBQUk9EVUtUSVYhCgpkKSBTY2hsdXNzYXR6IGlyb25pc2NoID8gRGllc2VyIFNjaGx1c3NhdHogaXN0IHdlZGVyIGlyb25pc2NoIGdlbWVpbnQsCiAgIG5vY2ggaGF0IGVyIGVpbiBTbWlsZXkgbm9ldGlnICh2aWVsZWljaHQgZGFzIE5OTiA6KSAtIGljaCBiaW4gZGVyCiAgIE1laW51bmcgZGFzIGRpZSBNUEEgZnVlciBkaWUgTWVuZ2UgYW4gbGV1dGVuIGhpZXIgKHZvbiBkZW5lbiBpY2gKICAgYW5uZWhtZSBkYXMgc2llIGVoZXIgYWt0aXYgc2luZCkgdmllbCB6dSBkdWVubiBpc3N0IC0gZ2VyYWRlIG1hbAogICA0LTEwIEFydGlrZWwgamUgVGFnIChwZXJzb2VubGljaGUgc2NoYWV0enVuZywga2VpbmUgTWVzc3dlcnRlKSEKICAgRGVpbmUgQmVmdWVyY2h0dW5nIHRyaWZmdCB6dSAtIGljaCBtZWluIGVzIGVybnN0LgoKZSkgODAlIH5xIGJlaSBEZWluZW4gQXJ0aWtlbG4gPyBOdW4gZGFzIGthbm4gbWFuIGF1ZiB2ZXJzY2hpZWRlbmUgQXJ0CiAgIGF1c2xlZ2VuOiBFbnR3ZWRlciBtZXJrc3QgRHUgd2FlaHJlbmQgZGVzIHNjaGVpYmVzbiwgd2FzIER1IGZ1ZXIgZWluZW4KICAgTWlzdCBzY2hyZWlic3QsIG9kZXIgZHUgdGlwcHN0IGltbWVyIHNjaG9uIG1hbCAgcHJvcGh5bGFrdGlzY2ggYW50d29ydGUsCiAgIG9obmUgbmFjaHp1ZGVua2VuIChBQ0hUVU5HIC0gZGFzIGlzdCBuaWNodCBhbHMgQW5mcmlmZiBnZW1laW50IC0gbnVyCiAgIGRpZSBTY2hsdXNzZm9sZ2VydW5nZW4gZGllIHNpY2ggbWlyIGF1ZmRyYWVuZ2VuISkuIEVzIGZyZXVkIG1pY2gsIGRhc3MKICAgRHUgc28gc3RvbHogZGFyYXVmIGJpc3QsIGRhcyBEdSA4MCUgYWxsIERlaW5lciBBcnRpa2VsIG1pdCB+cSBiZWVuZGVzdCwKICAgYWJlciB1ZWJlcmxlZyBtYWwsIG9iIGRhcyBuaWNodCBhbmRlcmUgZ2VuYXVzbyBtYWNoZW4KCmYpIEtsYXNzZSBzdGFkdCBNYXNzZSA/IEtsYXNzZSBpc3Qga2VpbiBBdHJpYnV0IGZ1ZXIgc2ljaCBhbGxlaW5lISBTb3dhcwogICBrYW5uIG51ciBpbSBWZXJnbGVpY2ggZGVmZmluaWVydCB3ZXJkZW4hIFdlbm4gYWxsZSBudXJub2NoIEtsYXNzZSBoYWV0dGVuCiAgIHd1ZXJkZSBtYW4gZGFzIHdhcnNjaGVpbmxpY2ggYmFsZCB3aWVkZXIgZnVlciBNdWVsbCBoYWx0ZW4uIEljaCBiaW4gZnVlcgogICBlaW5lIG9mZmVuZSBTdHJlaXRrdWx0dXIsIG9obmUgZWluZW4gQW5zcHJ1Y2ggYXVmICdLbGFzc2UnLgoKZykgSWdub3JpZXJlbiA/IERhcyBpc3QgbS5FLiBkaWUgZGVwcGVydHN0ZSBJZGVlIGRpZSBlcyBpbSBNRyB1ZWJlcmhhdXB0CiAgIGdpYnQgLSB1bmQgc293YXMgZGFubiBhdWYgZGllIFplaXR1bmcgYXVzZGVobmVuIHp1IHdvbGxlbiAod28gZGEgZWggc2NobwogICBmYXN0IG5peCBsb3MgaXN0KSBpc3QgUGVydmVyc2lvbiBwdXIuIE51ciBlaW4gQmVpc3BpZWw6IEljaCBiaW4gaW4gZGVuCiAgIGxldHp0ZW4gTW9uYXRlbiBtZWhyZmFjaCBtaXQgQ3VjaCogc28gdWViZXIga3JldXogZ2V3ZXNlbiwgZGFzIHdpciB1bnMKICAgZ2VnZW5zZWl0aWcgYWxzIElkaW90ZW4gdW5kIGdlaXN0aWdlIFNjaGxhbXNwdXJ0cm90dGVsIGJlemVpY2huZXQgaGFiZW4uCiAgIGVzIGthZWVobWUgbWlyIHRyb3R6ZGVtIE5JRSBpbiBkZW4gU2lubiBpaG4genUgaWdub3JpZXJlbiAtIHRyb3R6IGFsbGVtCiAgIFNjaC4uLiBkZW4gZXIgdmVyemFwZnQgaGF0IHdhcmVuIGFiZXIgYXVjaCBEaW5nZSBkYWJlaSBiZWkgZGVuZW4gaWNoCiAgIG1pY2ggZnJhZ2VuIG11c3N0ZSwgd2FydW0gaWNoIG5pY2h0IHNlbGJzdCBkYXJhdWYgZ2Vrb21tZW4gYmluLgoKRGlyIGRpZSBGcmV1bmRzY2hhZnQgenUga3VlbmRpZ2VuIC0gd2FydW0gZGVubj8KCkdydXNzCkguCihOdXIgZWNodCBtaXQgbWluZGVzdGVucyA1IFR5cG9zIGplIFplaWxlKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVWhybWVsZHVuZyAoU2lsdmFuYSwgIDIuIEphbiAxOTk2LCAxMjowMTozMyk6Ck1laW5lIFVocm1lbGR1bmc6IEhhbHQgRGljaCByYW4gLSBEdSBtdXNzdCBub2NoIDEyIFJhZXVtZSB0ZXN0ZW4hCipzZXVmeiogV2llIHNjaG9lbiB3YWVyZSBkYXMuIEVzIHNpbmQgbm9jaCB1ZWJlciAxMDAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVaHJtZWxkdW5nIChQYXJhY2Vsc3VzLCAgMi4gSmFuIDE5OTYsIDE3OjM5OjE0KToKfiMhIHJuPVNpbHZhbmEgcnQ9ODIwNTgwNDkzCn4jISB0aWQ9ODIwNTgwNDkzCkhtbSwgc29sbCBpY2ggbm9jaCBlaW4gcGFyIGRyYW5oYWVuZ2VuPyA7KQo7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYmxvZWRlIG5wY3MgKEJlb2JhY2h0ZXIsICAzLiBKYW4gMTk5NiwgMDM6MTY6MDEpOgpIaWVyIGJpc3QgRHUgbnVuIGF1ZiBlaW5lciBpZHlsbGlzY2hlbiBMaWNodHVuZyBpbm1pdHRlbiBkZXMgbWVya3d1ZXJkaWdlbgppZHlsbGlzY2hlbiBXYWxkZXMgZ2VsYW5kZXQuIERpZXNlIExpY2h0dW5nIGlzdCBtaXQgc2FmdGlnZW0gR3JhcyBiZWRlY2t0IHVuZApEdSBrYW5uc3QgZWluaWdlIEJsdW1lbiBlcmtlbm5lbi4gRWluIGtsZWluZXIgQmFjaCBwbGFldHNjaGVydCBsdXN0aWcgcXVlcgp1ZWJlciBkaWUgTGljaHR1bmcuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBzdWVkZW4uCkVpbiBzY2h3YXJ6ZXMgRWluaG9ybi4KCj4gemVpZ2UgYmlsZApEdSB6ZWlnc3QgRHJvbSBkYXMgQmlsZG5pcyBkZXMgS25hYmVuLiBFciBuaWNrdCB1bmQgc2FndDogRHUgZGFyZnN0IGF1ZiBtaXIKcmVpdGVuLgo+IERhcyBzY2h3YXJ6ZSBFaW5ob3JuIGdhbG9wcGllcnQgaW4gZGVuIFdhbGQuCmJlc3RlaWdlIGRyb20KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgo6LSkgKFNudWdnbGUsICA0LiBKYW4gMTk5NiwgMDE6MDE6NTUpOgpEdSBoYXN0IGpldHp0IDE3MSBMZWJlbnNwdW5rdGUgdW5kIDE4NiBNYWdpZXB1bmt0ZS4KRGFzIFRvciBpc3QgendhciBnZXNjaGxvc3NlbiwgYWJlciBvZmZlbnNpY2h0bGljaCBoYXQgaGllciBlaW4gc2Nod2VyZXIKQm9pbmcnc2NoZXIgUmVzZXQgenVnZXNjaGxhZ2VuLiBEdSBoYXN0IGVpbmVuIEZyZWl0cml0dCBhdWYgZGVuIEdhbWVkcml2ZXIuCgpBbHNvIGxvczogR2FtZWRyaXZlciBhbnRyZXRlbiB6dW0gU3RyYWZlbXBmYW5nIDotKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhpcHBlIGlzdCB0YXViIChSb2VzdGksICA0LiBKYW4gMTk5NiwgMTg6MzE6MDApOgogSGlwcGUgZnJhZ3QgRGljaCA6ICdIYXN0IER1IGVpbmVuIFJhdW0gZnVlciBtaWNoIHVuZCBtZWluZSBQRFAgPwpEdSBzYWdzdDogbm9lCiBIaXBwZSBmcmFndCA6IFdhcnVtIHNhZ3QgUm9lc3RpICdub2UnID8KRHUgc2Fnc3Q6IHdlaWwgaWNoIGtlaW5lbiBSYXVtIGhhYiBkdSBibG9lZGVzIEh1aG4KIEhpcHBlIGZyYWd0IERpY2ggOiAnSGFzdCBEdSBlaW5lbiBSYXVtIGZ1ZXIgbWljaCB1bmQgbWVpbmUgUERQID8nCgpXaWxsIGVyIGRhIGVpZ2VudGxpY2ggd2lya2xpY2ggbmUgQW50d29ydCBkcmF1Zj8/PwoKUm9lc3RpIGhhc3N0IEhpcHBlLCB3ZWlsIGVyIGlobSBhdWYgZGVuIFMqKipaRU5TSUVSVCoqKiBnZWh0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWm9tYmllLUNvbXB1dGVyIChSYWZmaSwgIDUuIEphbiAxOTk2LCAyMDoyNzozOCk6CgpUaXRlbHplaWxlIGF1cyBkZXIgVFogKE11ZW5jaGVuKSB2b24gaGV1dGU6CgpVcnRlaWw6U2VlbGVubG9zZXIgQ29tcHV0ZXIgZGFyZiBCZWFtdHRlbiBuaWNodCBlcnNldHplbiEKCnJvdGZsCgpHcnVzcwpILgoob2RlciBnZWhvZXJ0IGRhcyBuYWNoIFdpdHplPykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktvcnJla3RlcyBEZXV0c2NoPyAoQ3VjaHVsbGluLCAgNy4gSmFuIDE5OTYsIDAxOjA0OjM0KToKCkRpZSBTdGVpbmVpY2hlbiBuaWNrZW4gRGlyIGt1cnogaW0gVm9yYmVpZ2VoZW4genUuCgpJY2ggYmluIGRvY2ggbmljaHQgYmxvZWQuIDstKQpDdWNoLi0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoZXkgd290YW4hIDotKSAoTXVwZmVsLCAgOC4gSmFuIDE5OTYsIDE5OjM4OjA0KToKJCBXb3RhbiBrbnVkZGVsdCBBcmllbiB3aWxkIHN0dWVybWlzY2guCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgoKKmRlciogaGF0cyBkcmF1ZiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhtLCBqYSwgYWVoLCBhbHNvLi4uIChDZWxlYmRpbCwgIDguIEphbiAxOTk2LCAxOTo1Mjo1NCk6Cj4gRmluc3Rlcm5pcy4KPiB6dWVuZGUgZmFja2VsIGFuCj4gRHUga2FubnN0IHdpZWRlciBldHdhcyBzZWhlbi4KPiBzY2hhdWUKPiBEdSBiaXN0IGJsaW5kICEKCiAgICAgIEFoIGphLCBkcnVtICAgICAgICAgICAgIENlbGViZGlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3b3csIGdhYWFlZWVoaG5lbmRlIExlZXJlIChNb3Jnb3RoLCAgOS4gSmFuIDE5OTYsIDA3OjEwOjE4KToKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERpZSwgIDkuIEphbiAxOTk2LCAwNzowOTo0MCAoMiBUZWlsbmVobWVyKQoKQ2VjaWwuLi4uLi4uLi4uLnMgIE1vcmdvdGguLi4uLi4uLi5NCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd293LCBnYWFhZWVlaGhuZW5kZSBMZWVyZSAoQXNtb2RpcywgIDkuIEphbiAxOTk2LCAxNDoyNzozNyk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTgyMTE2NzgxOAp+IyEgdGlkPTgyMTE2NzgxOApLZWluIFd1bmRlciwgYW5zdGFlbmRpZ2UgU3R1ZGVudGVuIHNjaGxhZmVuIGphIGF1Y2ggbm9jaCB6dSBkaWVzZXIgWmVpdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUHV0enRldWZlbCAuLiAoSW5za2lwcCwgMTAuIEphbiAxOTk2LCAxNDoxMDowNSk6Ck5JY2ggbWFsIGRlciBQdXR6dGV1ZmVsIGtlbm50IHNpY2ggYXVzIGluIFphcmRveiBCdXJnLgoKRWluIFB1dHp0ZXVmZWwgbGFldWZ0IGdlZ2VuIGVpbmVuIGF1ZmdlbWFsdGVuIER1cmNoZ2FuZyBpbSBPc3Rlbi4KRWluIEdhbmcuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4gdW5kIG5vcmRlbi4KCmN1LCBEZXIgc2Nod2FyemUgSW5za2lwcC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmV0d2FzIG1hbCBhbmRlcnNydW0gKERob2pha3QsIDEwLiBKYW4gMTk5NiwgMTU6NTU6MTEpOgpFdHdhcyBlcnNjaGVpbnQgaW4gZWluZXIgUmF1Y2h3b2xrZS4KSmV0enQgMTg0IExQIHVuZCA3IE1QIHZvcmhhbmRlbi4KICBEdSBncmVpZnN0IEV0d2FzIG1pdCBlaW5lbSBnZWx1bmdlbmVuIFNvdG8tc2h1dG8tdWNoaSBhbi4KICBEdSB0cmlmZnN0IEV0d2FzIHNlaHIgaGFydC4KRXR3YXMgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KCkRhcyBoYXQgc2ljaCBkYXMgRXR3YXMgd29obCBuaWNodCB1ZWJlcmxlZ3QuLi4KS2hpZGFyLCBpbW1lciBub2NoIGdyaW5zZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYnJhdmVzIFNpbGJlcnppbm5jaGVuIChDYXJhZGhyYXMsIDEwLiBKYW4gMTk5NiwgMTU6NTU6MjApOgogIER1IGdyZWlmc3QgZGVuIFNlbnNlbm1hbm4gbWl0IGRlciBTZW5zZSBhbi4KICBEdSB0cmlmZnN0IGRlbiBTZW5zZW5tYW5uIHNlaHIgaGFydC4KICBDZWxlYmRpbCBncmVpZnQgZGVuIFNlbnNlbm1hbm4gbWl0IGVpbmVtIGdlbHVuZ2VuZW4gQ2hva3UtenVraSBhbi4KICBDZWxlYmRpbCB0cmlmZnQgZGVuIFNlbnNlbm1hbm4gc2VociBoYXJ0LgogIERlciBTZW5zZW5tYW5uIGdyZWlmdCBDZWxlYmRpbCBtaXQgZWluZXIgU2Vuc2UgYW4uCiAgQ2VsZWJkaWwgd2VocnQgZGVzIFNlbnNlbm1hbm5zIEFuZ3JpZmYgbWl0IGVpbmVtIFNodXRvLXVrZSBhYi4KICBEZXIgU2Vuc2VubWFubiBraXR6ZWx0IENlbGViZGlsIGFtIEJhdWNoLgpDZWxlYmRpbCBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgQ2VsZWJkaWwuCiAgRHUgZ3JlaWZzdCBkZW4gU2Vuc2VubWFubiBtaXQgZGVyIFNlbnNlIGFuLgogIER1IGtpdHplbHN0IGRlbiBTZW5zZW5tYW5uIGFtIEJhdWNoLgogIENlbGViZGlsIGdyZWlmdCBkZW4gU2Vuc2VubWFubiBtaXQgZWluZW0gZ2VsdW5nZW5lbiBDaG9rdS16dWtpIGFuLgogIERlciBTZW5zZW5tYW5uIGdyZWlmdCBDZWxlYmRpbCBtaXQgZWluZXIgU2Vuc2UgYW4uCiAgQ2VsZWJkaWwgdmVyc3VjaHQgZGVzIFNlbnNlbm1hbm5zIEFuZ3JpZmYgbWl0IGVpbmVtIFVjaGktc2h1dG8tdWtlCmFienV3ZWhyZW4uCiAgRGVyIFNlbnNlbm1hbm4gdHJpZmZ0IENlbGViZGlsIGhhcnQuCgogIFNvIHNjaG9lbiBoYWIgaWNoIGF1Y2ggbm9jaCBrZWluZW4gbWl0a2FlbXBmZW4gc2VoZW4gYWxzIGVyCiAgc2Nob24gbmV0enRvdCB3YXIuIDopIE51ciBsZWlkZXIgdHJpZmZ0IGVyIGRhbm4gbml4IG1laHIuCgogICAgICAgICAgICAgICB0c2NodWVzc2llICAgICBDYXJhZGhyYXMKUFM6IEFiZXIgc28gZWluIFNjaGF0dGVuLCBkZXIgZWluZW0gZGllIFNjaGxhZWdlIGFiaGFlbHQsCiAgIGlzdCBkb2NoIGdhbnogZ3V0LiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdvdywgZ2FhYWVlZWhobmVuZGUgTGVlcmUgKE5hc2ltLCAxMC4gSmFuIDE5OTYsIDIzOjEyOjEyKToKfiMhIHJuPU1vcmdvdGggcnQ9ODIxMTY3ODE4Cn4jISB0aWQ9ODIxMTY3ODE4ClVtIGRpZSBaZWl0IGlzdCBtYW4gYWxzIGFuc3RhZW5kaWdlciBNZW5zY2ggYXVjaCBnZXJhZGUgaW4ncyBCZXR0IGdlZ2FuZ2VuLgoKR3J1c3MsIE5hc2ltIChkZXIgc2ljaCBnZXJhZGUgZHVyY2ggZWluIEZsYXNjaGUgUm90d2VpbiB0cmlua3QsIGRhbWl0IGVyCnNjaGxhZmVuIHVuZCBtb3JnZW4gYXJiZWl0ZW4ga2FubikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogd293LCBnYWFhZWVlaGhuZW5kZSBMZWVyZSAoQ2FyYWRocmFzLCAxMS4gSmFuIDE5OTYsIDEwOjE2OjI4KToKfiMhIHJuPU5hc2ltIHJ0PTgyMTMxMTkzMgp+IyEgdGlkPTgyMTE2NzgxOApSb3R3ZWluPyBXYXMgd28/IFdpZSBndXQ/IEtvbW1lZWVlZSEKCiAgICAgIFNhbWUgcHJvY2VjYSAqaGlja3MqIHNhbWUgUHJvY2VjLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUamEsIGRpZSBJbmZsYXRpb24gLi4uLi4gOy0pIChUb2V0ZXIsIDExLiBKYW4gMTk5NiwgMTA6MzI6MTApOgpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIEhhd2ssIDExLiBKYW4gMTk5NiwgMDM6MDU6NDRdOgo+IHZlcmthdWZlIE1pdGhyaWxwYW56ZXIKTmFjaCBkZXIgYWt0dWVsbGVuIE1hcmt0bGFnZSBrYW5uIGljaCBEaXIgZGFmdWVyIG51ciA4NiBNdWVuemVuIGJpZXRlbiwKb2J3b2hsIGVpbiBNaXRocmlscGFuemVyIGVpZ2VudGxpY2ggMjAwMCBNdWVuemVuIHdlcnQgd2FlcmUuIFdpbGxzdCBEdSBlcyBtaXIKZGFmdWVyIHVlYmVybGFzc2VuPyAoamEvbmVpbikKCkRlciBQcmVpc3ZlcmZhbGwgaXN0IGVrbGF0YW50IQpoYXdrLCBTZWhlciBhbSBCZXR0ZWxzdGFiLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOlJlOiBUamEsIGRpZSBJbmZsYXRpb24gLi4uLi4gOy0pIChUb2V0ZXIsIDExLiBKYW4gMTk5NiwgMTA6MzI6MzcpOgpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIEhhd2ssIDExLiBKYW4gMTk5NiwgMDM6Mjc6MDldOgpTYXVsdXMgWnVlcmlsZXUsCkR1IGJpc3QgamEgZ2FueiBzY2hvZW4gZW50bmVyZnQgOy0pClRpZWZmIGR1cmNoYXRtZW4sIHVuZCB6d2lzY2hlbmR1cmNoIG1hbCBlaW5lbgpBcnRpa2VsIG5pY2h0IGdhbnogZXJuc3QgbmVobWVuIGhpbGZ0IGVpbmUgTWVuZ2UuCihEYSBoYXR0ZSBpY2ggZG9jaCB2b3JoaW4gZ2xhdHQgZWluICpTY2hlcnogYW4qIHZlcmdlc3NlbikKClRzY2h1ZXNzLCBlaW4gZGFzIE11ZCBuaWNodCBzbyBlcm5zdCBuZWhtZW5kZXIgaGF3ay4KKCpTY2htYXJuIGF1cz8qKQooKnNjaG11bnplbCopCigqa2l0emVsIFp1ZXJpbGV1KikKKCpncmlucyopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VubiBCZXJnZSBzY2htdXNlbi4uLiAoWWVuZGksIDExLiBKYW4gMTk5NiwgMTE6MTc6NTgpOgoKQ2FyYWRocmFzIGt1c2NoZWx0IHNpY2ggYW4gQWxpbmUgYW4uCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgoKKmtpY2hlcioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VubiBCZXJnZSBzY2htdXNlbi4uLiAoQ2FyYWRocmFzLCAxMS4gSmFuIDE5OTYsIDEyOjQ3OjAyKToKfiMhIHJuPVllbmRpIHJ0PTgyMTM1NTQ3OAp+IyEgdGlkPTgyMTM1NTQ3OApPcHBzLCBoaWVyIGlzdCBtYW4gYWJlciBhdWNoIG5pcmdlbmRzIHZvciBTcGlvbmVuIHNpY2hlciEKCiAgICAgICo6XikgICAgICAgIENhcmFkaHJhcyBzY2htb2xsdCBqZXR6dCBhYmVyLiAoYykgQ2FyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGloaSAoQ2VsZWJkaWwsIDExLiBKYW4gMTk5NiwgMTQ6NTI6NTcpOgpEdSBoYXN0IGpldHp0IDM5IExlYmVuc3B1bmt0ZSB1bmQgMCBNYWdpZXB1bmt0ZS4KRGllIEFuZ3N0IGlzdCBzdGFlcmtlciBhbHMgRHUgLi4uIER1IHdpbGxzdCBudXIgbm9jaCB3ZWcgaGllci4KV2llIGJpdHRlPwpEZXIgRWlzcmllc2Ugc2l0enQgYXVmIGRlbSBMb2NoLgoKTmFudSwgZGFzIGthbm4gbWFuIGFiZXIgYXVjaCBmYWxzY2ggdmVyc3RlaGVuIDopCgogICAgICAgICAgICAgICAgICBDZWxlYmRpbmdlbnMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2VubiBCZXJnZSBzY2htdXNlbi4uLiAoSGFyZGlsLCAxMS4gSmFuIDE5OTYsIDE2OjAyOjIyKToKfiMhIHJuPUNhcmFkaHJhcyBydD04MjEzNjA4MjIKfiMhIHRpZD04MjEzNTU0NzgKQW4gKkFsaW5lKiBhbmt1c2NoZWxuPwpPaGplLiBDYXJhKiwgQ2FyYSouIE8gdGVtcG9yYWUsIG8gbW9yZXMuCgpBYiBuYWNoIFNjaG1hcnJuIDotKQoKLUhhcmRpbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgMjogKEdyaW1tYm9ybiwgMTEuIEphbiAxOTk2LCAxNjo0OTo1Nyk6CgpXZXIgTmFkZWxuIHVtIHNpY2ggc3RyZXV0IHNvbGx0ZSBzaWNoIGh1ZXRlbiwgYmFyZnVzcyB6dSBsYXVmZW4uIChhcmFiaXNjaCkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCBoYXQgZWluZW4gS2FsZW5kZXIgbWl0IFNpbm5zcHJ1ZWNoZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHdvdywgZ2FhYWVlZWhobmVuZGUgTGVlcmUgKE5hc2ltLCAxMS4gSmFuIDE5OTYsIDIxOjM0OjU3KToKfiMhIHJuPUNhcmFkaHJhcyBydD04MjEzNTE3ODgKfiMhIHRpZD04MjExNjc4MTgKUm90d2VpbiEgRWluZSBGbGFzY2hlLCBoaWVyIGJlaSBtaXQgenVoYXVzZS4gTmljaHQgdW5iZWRpbmd0IGRlciBhbGxlcmJlc3RlLAphYmVyIHNjaGxlY2h0IGthbm4gZXIgYXVjaCBuaWNodCBnZXdlc2VuIHNlaW4sIGltbWVyaGluIGhhdHRlIGljaCBuYWNoIGVpbmVyCkZsYXNjaGUgdW5kIDYgU3R1bmRlbiBTY2hsYWYgbWl0IGtlaW5lcmxlaSBQcm9ibGVtZW4genUga2FlbXBmZW4gKGhhYiBpY2ggYWJlcgplaCBudXIgc2VociBzZWx0ZW4pLiBLbGFyLCBrb21tIHZvcmJlaSAuLi4gYWJlciBtZWxkZSBEaWNoIHZvcmhlciBhbiwgZGFtaXQKaWNoIG5vY2ggZWluIHBhYXIgVm9ycmFldGUgYW5sZWdlLiA7LS0pCgpHcnVzcywgTmFzaW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipzY2hpbXBmKiAoQ2VsZWJkaWwsIDExLiBKYW4gMTk5NiwgMjM6MDI6NDApOgpFcyBpc3QgZG9jaCBpbW1lciBkYXNzZWxiZToKCkdydWVuZSBTdHJhaGxlbiBnZWhlbiB2b20gU2FiYmVyYW11bGV0dCBhdXMgdW5kIHRyZWZmZW4gRGVpbmUgQXVnZW4uCkR1IGthbm5zdCB3aWVkZXIgc2VoZW4uCj4gbApFcyBpc3QgenUgZHVua2VsICEKCiAgICAgICBicnVtbWVsIDopICAgQ2VsZWJkaWwgRmFja2VsdHJhZWdlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZW1haWxhZHJlc3NlbiAoR3JpbW1ib3JuLCAxMi4gSmFuIDE5OTYsIDE3OjIxOjE3KToKClNvLCBoaWVyIG1hbCBlaW4gcGFhciBBZHJlc3NlbiwgbWl0IFBhc3N3b3J0IHNvd2VpdCBiZWthbm50LgpTaW5kIG5pY2h0IGFsbGUgdm9uIG1pciwgYWxzbyB3YXMgc29sbHMuLi4KCkguS29obDogd2Fzc2VuX2xvZ2luP0BzYXVtYWdlbi5ib25uXkheSF5IXkhiZXJsaW4uZGUgKHB3OiB3YXNpc3Nlbmxvcz8pCkJpbGwgRzogZ29kQG1pY3Jvc29mdC51bml2ZXJzZS5jb20KUGFwc3Q6IHNlcnZhbnRAaHVtYmxlLmNodXJjaC5nb2QgKHB3OiByZWFsbHlfZ29kKQpIaXRsZXI6IGZ1ZWhyZXJAZW5kc2lnLmtvbW10LmJlc3RpbW10LmRyIChwdzogVW5zY2h1bGRpZyEpCkhvbm5lY2tlcjogbWFzdGVyQHdhbGwuaW5zaWRlCkdoYW5kaTogbG9vbmllQG5haXZlLmluZCAocHc6IGh1bmdyeSkKR290dDogcm9vdEB1bml2ZXJzZQpUZXVmZWw6IHJvb3RAZWFydGgKCkFjaCBqYSwgd2VyIHZlcnN1Y2h0LCBkaWUgYWNjb3VudHMgenUga25hY2tlbiBpc3QgbmF0dWVybGljaCBzZWxiZXIgc2NodWxkLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvenUgYnJhdWNodCBtYW4gdWViZXJoYXVwdCBMaWNodCBoaWVyPyAoQ2hlYXN5LCAxMi4gSmFuIDE5OTYsIDE3OjUwOjQwKToKc2NoYXUKRXMgaXN0IHp1IGR1bmtlbC4KbGljaHQKRHUgbWFjaHN0IGVpbmUgbWFnaXNjaGUgQmV3ZWd1bmcuCldpZSBhdXMgZGVtIE5pY2h0cyBlcnNjaGVpbnQgZWluZSBsZXVjaHRlbmRlIEt1Z2VsLgoKc2NoYXUKRXMgaXN0IHp1IGR1bmtlbC4KClVuZCBkYXMgd2FlaHJlbmQgZGVyIGdlc2FtdGVuIEVpbmdhbmdzc2VxdWVueiB6dSB0YXJhbWlzIDopCgotQ2hlYXN5Ci4uLmFiIG5hY2ggU2NobWFycm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFiZXIgaG9wcGxhIDotKSAoQ3VjaHVsbGluLCAxMi4gSmFuIDE5OTYsIDIwOjUzOjUyKToKCnRyZXRlIGdhcmRpc3QKRHUgdHJpdHRzdCBkZW4gR2FyZGlzdGVuYW5mdWVocmVyLgo+IER1IHNjaGF1c3QgZXJzdGF1bnQgZHJlaW4sIGFscyBkZXIgR2FyZGlzdCBwbG9ldHpsaWNoIHVtZmFlbGx0LCBkYW5uIGFiZXIKc2VociBzY2huZWxsIHdpZWRlciBhdWZzdGVodC4KCkdyaW5zZW5kLApDdWNoLi0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGE/ISAoTXVwZmVsLCAxMi4gSmFuIDE5OTYsIDIyOjIyOjQ1KToKJCB1bnQgbG9jaApEaXJla3Qgdm9yIERpciBnYWVobnQgZWluIHRpZWZlcyBMb2NoLgokIHNwcmluZ2UgaW4gbG9jaApEdSBzcHJpbmdzdCBnZWtvbm50IHVlYmVyIGRlbiBHcmFiZW4uCgo6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9oIGRpZXNlIE1lZ2Ftb25zdGVyLi4uIChDaGVhc3ksIDEzLiBKYW4gMTk5NiwgMDA6NTQ6NTApOgpzY2hhZXR6IEhldXNjaHJlY2tlCkR1IGJpc3Qgc3RhZXJrZXIgYWxzIGRpZSBIZXVzY2hyZWNrZS4KRGVpbmUgUnVlc3R1bmcgaXN0IHVuZ2xhdWJsaWNoIHZpZWwgYmVzc2VyIGFscyBkaWUgZGVyIEhldXNjaHJlY2tlLgpFdXJlIFdhZmZlbiBzaW5kIGV0d2EgZ2xlaWNoIGd1dC4KdW5kIGhpZXIgbWVpbmUgV2FmZmU6CkVpbiBTdGFobHNjaHdlcnQgKGdlenVlY2t0KS4KCi1DaGVhc3kKLi4uYWIgbmFjaCBTY2htYXJybgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnVlciBhbGxlLCBkaWUgaGllciBuaWNodCBnZW51ZyBzY2htYXJybiBmaW5kZW4gKENoZWFzeSwgMTMuIEphbiAxOTk2LCAwMjowNTowNSk6CkRpZSBQYXJvZGllIGF1ZiBIb3RXaXJlZDogaHR0cDovL3d3dy5ob3d0aXJlZC5jb20vCkVpbmZhY2ggYW5zY2hhdWVuLi4uIGFiZXIgZXJzdCBtYWwgaG90d2lyZWQgYW5ndWNrZW4sIGZhbGxzIG1hbidzIG5vY2ggbmljaHQKa2VubnQgOikKLUNoZWFzeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV28gZGllIGxlaXRlIHNvIHNpbmQhIChSYWZmaSwgMTMuIEphbiAxOTk2LCAxODoxMjoxMik6CkdlcmFkZSBlYmVuIGluIE1vcm9uOgpDaGVhc3kgYmFzdGVsdCBlaW4gbmV1ZXMgQWxpLgpEdSB0ZWlsc3QgS2V5IG1pdDogd28gYmlzdCBkdSAtIGtpcmNoZSBvZGVyIGFra2FkZW1pZQpLZXkgaXN0IGdlcmFkZSBuaWNodCBkYTogQmluIGluIGRlciBCdXJnIHVuZCBlcyBzY3JvbGx0ISEgOy0pCktleSB0ZWlsdCBEaXIgbWl0OiBha2FkZW1pZSBuYXR1ZXJsaWNoISEgOy0pKQoKR3J1c3MKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNoYW90ZW4gdW5kIEVyem1hZ2llciEgKFJhZmZpLCAxMy4gSmFuIDE5OTYsIDE4OjQ2OjE0KToKCkdlcmFkZSBpbSBWb3JyYXVtIHZvbSA4LWFybWlnZW4gUHJpZXN0ZXI6CkR1IGhhc3QgamV0enQgMTA0IExlYmVuc3B1bmt0ZSB1bmQgNTAgTWFnaWVwdW5rdGUuCktleSBrbmlldCBzaWNoIGhpbiB1bmQgYmVnaW5udCB3aWUgd2lsZCBlaW4gUGVudGFncmFtbSBhdWYgZGVuIEJvZGVuIHp1Cm1hbGVuLiBFciBtYWNodCBkYWJlaSBzZWx0c2FtZSBCZXdlZ3VuZ2VuIG1pdCBkZW4gRmluZ2VybiB1bmQgZ3J1bW1lbHQKbWFnaXNjaGUgV29ydGUuCktleSBodWVwZnQgdW0gZGFzIFBlbnRhZ3JhbW0gaGVydW0sIG11cm1lbHQgc2VsdHNhbWUgV29ydGUgdW5kCnplaWNobmV0IHNjaHd1bmd2b2xsIGVpbmVuIGdyb3NzZW4gS3JlaXMgYXVzIHZpZWxlbiBrbGVpbmVuIFJ1bmVuIGRhcnVtCmhlcnVtLCBpbW1lciB3aWVkZXIgdW50ZXJicm9jaGVuIHZvbiBzZWx0c2FtZW4gR2VzdGVuIHVuZCBXb3J0ZW4uCkR1IGhhc3QgamV0enQgMTA2IExlYmVuc3B1bmt0ZSB1bmQgNTAgTWFnaWVwdW5rdGUuCktleSB0YW56dCB1bSBkYXMgUGVudGFncmFtbSBoZXJ1bSwgc3ByaWNodCBtYWdpc2NoZSBXb3J0ZSB1bmQgYmVzY2h3b2VydApmaW5zdGVyZSBLcmFlZnRlLiBEYW5uIHNjaGllc3N0IHBsb2V0emxpY2ggZWluIGJsdXRyb3RlciBTdHJhaGwgaGluYWIgdW5kCmxhZXNzdCBkZW4gQmFubmtyZWlzIHNjaGF1cmlnIGF1ZmxldWNodGVuLgpIYXRlICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCktleSBmYWVuZ3QgZnVlcmNodGVybGljaCBhbiB6dSBmbHVjaGVuLgpEdSBoYXN0IGpldHp0IDEwNyBMZWJlbnNwdW5rdGUgdW5kIDUwIE1hZ2llcHVua3RlLgoKU2VpdCB3YW5uIGtlb25uZW4gZWlnZW50bGljaCBDaGFvdGVuIEVyem1hZ2llciBiZXNjaHdvZXJlbiA/CgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IENoYW90ZW4gdW5kIEVyem1hZ2llciEgKFJhZmZpLCAxMy4gSmFuIDE5OTYsIDE4OjQ4OjU5KToKfiMhIHJuPVJhZmZpIHJ0PTgyMTU1NTE3NAp+IyEgdGlkPTgyMTU1NTE3NAoKT2J3b2hsIC0gaWNoIGhhYiBtaXIgZGFzIG5vY2htYWwgZHVyY2hnZWxlc2VuIC0gd2FocnNjaGVpbmxpY2ggd2FycyBqYSBlaW4KdmVyc2VoZW4gLSBzb25uc3QgaGFldHRlIEtleSBqYSBuaWNodCBzbyBnZWZsdWNodCEKCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbW1lciBkaWVzZXIgVGVzdGVyLi4uIChUYXNoYSwgMTMuIEphbiAxOTk2LCAyMDozNTo1MSk6CkxldHp0ZW5zIGJlaW0gZHVyY2hzY2hhdWVuIGVpbmVzIFJhdW1lczoKCjpzdGlsbGU6IGdlZnVuZGVuLgo6Z2VyYWV1c2NoOiBOSUNIVCBnZWZ1bmRlbiEKCmlzIGRvY2ggZWlnZW50bGljaCBsb2dpc2NoLCBvZGVyPyA6KSkKCmJhc3RlbG5kLCBUYXNoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZWluIG1pdHRlbGdyb3NzZXIgcmllc2VuZWxmLi4uIChEYWNhcG8sIDE0LiBKYW4gMTk5NiwgMDA6NDg6NDcpOgpEYXMgaXN0IGRlciBSaWVzZS4gRXIgaXN0IGZ1ZXIgZWluZW4gRWxmIG1pdHRlbGdyb3NzLgpFaW4gUmllc2UgaXN0IGVpbiBSaWVzZSBpc3QgZWluIFJpZXNlLgpFciBpc3Qgc2Nob24gZXR3YXMgZ2VzY2h3YWVjaHQuCkRlciBSaWVzZSBoYXQgZWluZW4gVGFybmhlbG0sIGVpbiBBbXVsZXR0IHVuZCBlaW5lIGNoYW90aXNjaCBtdXRpZXJ0ZSBIYXV0IGFuCnVuZCBrZWluZSBXYWZmZSBnZXp1ZWNrdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgMyAoR3JpbW1ib3JuLCAxNS4gSmFuIDE5OTYsIDE2OjA2OjU0KToKCkxlaWNodGUgUHJvYmxlbWUgc2luZCBtaXR0ZWlsc2FtLCBncm9zc2UgU29yZ2VuIHNpbmQgc3R1bW0uIChTZW5lY2EpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdhZXN0ZSEgKE11cGZlbCwgMTYuIEphbiAxOTk2LCAwMDoxOTo0MSk6CkRpZXMgaXN0IGVpbiBrbGVpbmVyIExhZGVuIGluIGRlciBad2VyZ2Vuc3RhZHQuIER1IGhhc3QgZm9sZ2VuZGUKTW9lZ2xpY2hrZWl0ZW46CiAgICAgICAgemVpZ2UgICAgICAgICAgICAgICAgICAgIGthdWZlIDxnZWdlbnN0YW5kPiAob2RlciBudW1tZXIpCiAgICAgICAgemVpZ2UgcnVlKHN0dW5nZW4pICAgICAgIHZlcmthdWZlIDxnZWdlbnN0YW5kPgogICAgICAgIHplaWdlIHdhZihmZW4pICAgICAgICAgICB2ZXJrYXVmZSBhbGxlcwogICAgICAgIHplaWdlIHZlcihzY2hpZWRlbmVzKSAgICBzY2hhZXR6ZSA8Z2VnZW5zdGFuZD4KRGVyIEF1c2dhbmcgbGllZ3QgaW0gTm9yZGVuLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogbm9yZGVuLgpHYXN0MSBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyIChuZXR6dG90KS4KR2FzdDIgZGllIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlcmluIChuZXR6dG90KS4KR2FzdDEgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlciAobmV0enRvdCkuCkdhc3QxIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIgKG5ldHp0b3QpLgpHYXN0MiBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyIChuZXR6dG90KS4KR2FzdDIgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlciAobmV0enRvdCkuCkdhc3QxIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIgKG5ldHp0b3QpLgpHYXN0MiBkaWUgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyaW4gKG5ldHp0b3QpLgpHYXN0MSBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyIChuZXR6dG90KS4KR2FzdDIgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlciAobmV0enRvdCkuCkdhc3QxIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIgKG5ldHp0b3QpLgoKKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGllcmUgdm9yIGRlciBLYW1lcmEgKENhcmFkaHJhcywgMTYuIEphbiAxOTk2LCAwNzowMDoyOSk6CltUb2Q6XSBFaW4gVW50aWVyIGhhdCBnZXJhZGUgUGFudGhlciB1bWdlYnJhY2h0LgpbQmVpbGVpZDpCaWJvXSB1bnRpZXIgPyBwYW50aGVyID8gaG1tbW0uLi4uCltCZWlsZWlkOkJpYm8gZ2lidCBzY2hydW1wZmlzIGhhdXN0aWVyIGVpbmVuIHRyaXR0XQoKICAgICBOdSBrbG9wcGVuIHNpY2ggTlBDcyBzY2hvbiB1bnRlcmVpbmFuZGVyLiAqc3RhdW4qCgogICAgICAgICAgQ2FyYWRocmFzIDopClBTOgpDYXJhZGhyYXMgcnVmdDogU2NoZWlzcyBTdHVkZW50ZW4hIDopCk1lcmxpbiBydWZ0OiBJY2ggYmluIGltIERzY2h1bmdlbC4KCiAgIE5hbnUsIGdlaG9lcnQgZGVyIHZpZWxsZWljaHQgYXVjaCB6dXIgU3lzdGVtYWRtaW5pc3RyYXRpb24gaW4KICBNdWVuc3Rlcj8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdvZXR0ZXIgYXVmIEFid2VnZW4gKEhhcmRpbCwgMTYuIEphbiAxOTk2LCAxNDo1OTo0OCk6CgpnZWtsYXV0IGF1cyBkZW0gZWluemlnIHdhaHJlbiBNVUQ6CgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFbGl0ZXNvbGRhdHNdIEljaCBtYWNocywgaWNoIGhvbCBSb2NodXMuIEdsZWljaCBtb3JnZW4KW01vZXJkZXI6R2Vpc3QgZWluZXMgRWxpdGVzb2xkYXRzXSBob2wgaWNoIFJvY2h1cy4gVW5kIGRhbm4ga2FubnN0IER1IHdhcwpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFbGl0ZXNvbGRhdHNdIGVybGViZW4sIEJvaW5nIQoKTmVlaXNza2xhci4KTk5OLgoKLUhhcmRpbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkx1c3RpZ2UgTW9lcmRlcm1lbGR1bmdlbiwgRm9sZ2UgMTA5My4gKEN1Y2h1bGxpbiwgMTYuIEphbiAxOTk2LCAyMToyNTo0OSk6CgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBLcmlzdGFsbGRyYWNoZW5dIFJBQ0hFISBCcmluZ3QgUmFjaGUgdW0hCgoKQ3VjaC4tCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvZGVzbWVsZHVuZyAyMTU2IChGYW51aWRob2wsIDE3LiBKYW4gMTk5NiwgMDI6Mzc6MDEpOgpHcmFkOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBMZWhyZXJzXSBOaWNodHMgaXN0IHNjaHVsZCEKCk11c3MgZGFzIG5pY2h0IGhlaXNzZW46ICJOaWVtYW5kIGlzdCBzY2h1bGQuIiA/ICpzdGF1bioKU2NobGVjaHRlIExlaHJlci4gOikKCiAgICAgICAgICAgICAgdHNjaHVlc3NpZSAgICAgICAgQ2EgYWVoIENlbCBhZWggRmFudWlkaG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbGlzIGRpZSA4NzZ0ZSAoQ2FyYWRocmFzLCAxNy4gSmFuIDE5OTYsIDA5OjE3OjMwKToKR3JhZGUgbm9jaCBpbiBBbmRlckxhbmQgZW50ZGVja3Q6CgpEdSBoYXN0IGZvbGdlbmRlIEFsaWFzZSBkZWZpbmllcnQ6CiAhLWEgICAgPSBqYT8KIGFydCAgICA9IGxpZXMgYXJ0aWtlbCAkKgouLi4uCgogICAgKnN0YXVuKiAgICAgIEEgc28gZWluIHNjaG1hcnJuICAgICAgICBSb3Rob3JuIENhcmFkaHJhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2Nod2FyemZhaHJlciEgKE51ZGVpLCAxNy4gSmFuIDE5OTYsIDA5OjI1OjIzKToKRHUgdmVyc2lua3N0IGluIFBvbHN0ZXJuIGF1cyBibGF1ZW0gU2FtdCwgZGllIGhpZXIgaW4gZGVyIFBvc3RrdXRzY2hlIHp3ZWkKQmFlbmtlIGJpbGRlbi4gSmUgZWluZSBUdWVyIGF1ZiBiZWlkZW4gU2VpdGVuIHVuZCBlaW4gcGFhciBGZW5zdGVyIGxhc3NlbiBkaWUKVW1nZWJ1bmcgbnVyIHNjaHdhY2ggZXJhaG5lbi4gRWluIGdvbGRlbmVzIFdhcHBlbiBsb2NrZXJ0IGRpZSBTdGlybndhbmQgZXR3YXMKYXVmLgpEaWUgRWxmZW5wb3N0IGlzdCBkcmF1c3NlbiB6dSBzZWhlbi4KRXMgZ2lidCBrZWluZSBzaWNodGJhcmVuIEF1c2dhZW5nZS4KRWluIEJldHRsZXIuCkF1c3NlcmhhbGIgc2llaHN0IER1OgpFaW5lIGt1cnplIEdlc2NoYWVmdHNnYXNzZS4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4sIHdlc3RlbiB1bmQgbm9yZGVuLgo+CgpVbmQgZGFubiBsYWJlcnQgZXIgbWljaCBkaWUgZ2FuemUgRmFociB1ZWJlciB2b2xsOiBIYXN0ZSBtYWwgZWluIGJpc3NjaGVuCkdlbGQgZnVlciBtaWNoIGV0Yy4gISEhCgpOdWRlaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2l6dGlnZSBUb2Rlc21lbGR1bmdlbiBOci4gMDgvMTUgKENoZWFzeSwgMTcuIEphbiAxOTk2LCAxMjoxOToxNik6CgpbVG9kOl0gRWluIEdlaXN0bGljaGVyIGhhdCBnZXJhZGUgSmVob3ZhIHVtZ2VicmFjaHQuCgpJbW1lciBkaWVzZSBQcmllc3Rlci4uLgotQ2hlYXN5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIChaZXBoeXIsIDE3LiBKYW4gMTk5NiwgMTM6NTQ6NDApOgpbS3VsdHVyOkFsYm9pbiBzaW5ndCdIeWRyYSBIeWRyYSBkb3J0IGluIGRlbSBUYWxlIGRhIGlzdCBkZWluIEdsdWVjayAuLi4uCkh5ZHJhIGh5ZHJhYWEga29tbSByZWNodCBiYWxkIHdpZWRlciB6dXJ1dXV1dXV1dWVlZWVlZWVjY2Nra2trJ10KUHVtYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9obmUgV29ydGUgKEFzbW9kaXMsIDE3LiBKYW4gMTk5NiwgMTU6MjU6MTkpOgp+IyEgcm49WmVwaHlyIHJ0PTgyMTg4MzI4MAp+IyEgdGlkPTgyMTg4MzI4MApBaCBzbywgUHVtYSBpc3QgaW4gV2lya2xpY2hrZWl0IGRpZSBIeWRyYSwgbnVyIGViZW4gdmVya2xlaWRldCwKb2RlciB1bWdla2VocnQgPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTG9yZCBvZiB0aGUgVHJhZGVNYXJrcyAoV2FyZ29uLCAxNy4gSmFuIDE5OTYsIDE1OjQzOjM4KToKR2VyYWRlIGJlaW0gTmV0c3VydmVuIGdlZnVuZGVuOgoKT25lIGNvcnAuIHRvIHJ1bGUgdGhlIE5ldCwKT25lIGNvcnAuIHRvIGZpbmQgdGhlbQpPbmUgY29ycC4gdG8gYnJpbmcgdGhlbSBhbGwKQW5kIGluIHRoZSBkYXJrbmVzcyBiaW5kIHRoZW0uCkluIHRoZSBsYW5kIG9mIFQkUiwKV2hlcmUgdGhlIGxhd3llcnMgbGllLgogLS0tSm9lIEthdHptYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndpZSBkZXIgenVmYWxsIHNvIHNwaWVsdC4uLiAoQ2hlYXN5LCAxOC4gSmFuIDE5OTYsIDAxOjU2OjMwKToKW01vZXJkZXI6R2Vpc3QgZWluZXMgU2NobGVpbWRyYWNoZW5dIFJ1ZGlyYXR0ZXIsIHByb2JpZXIgZGFzIGJlaSBBbm5lIQpEYXMgaXN0IHZpZWwgenUgdmllbCBmdWVyIERpY2ghIFdpZSB3YWVycyBtaXQgZXR3YXMgbGVpY2h0ZXJlbT8KCi1DaGVhc3kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogT2huZSBXb3J0ZSAoQ2FyYWRocmFzLCAxOC4gSmFuIDE5OTYsIDA1OjI1OjQ5KToKfiMhIHJuPUFzbW9kaXMgcnQ9ODIxODg4NzE5Cn4jISB0aWQ9ODIxODgzMjgwCkhtLCBtYWwgenVyIG5hZWNoc3RlbiBIeWRyYSB1bmQgc2llIG5hY2ggUHVtdSBmcmFnZW4sIHdlbm4gc2llIGRhbm4KYWxsZXJnaXNjaCByZWFnaWVydCBpc3QgZXIgc2llLCBhZWggc2llIGVyLCBhZWggZXMgZXIsIGFlaC4uLgoKICAgIENhcmFkaHJhcyAtIGhhdCBiaXNoZXIgbnVyIGltbWVyIEh5ZHJhIG1pdCBIYWRyYSB2ZXJ3ZWNoc2VsdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ2hlYXN5J3MgU3R1ZmVubGlzdGUgKENoZWFzeSwgMTguIEphbiAxOTk2LCAwNTo0Nzo1Nyk6CiAxOiBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyICAgIC0tIGlzdCBub2NoIGdydWVuIGhpbnRlciBkZW4gT2hyZW4KIDI6IGRlciBMYW5kc3RyZWljaGVyICAgICAgICAgICAgICAgLS0gaGF0IGdyYWQgZ2VtZXJrdCwgZGFzIGVyIGRlbW5hZWNoc3QKc2VpbmUgT2hyZW4gd2FzY2hlbiBzb2xsdGUKIDM6IGRlciBXYWxkbGFldWZlciAgICAgICAgICAgICAgICAgLS0gaGF0IG5peCB6dW0gT2hyZW53YXNjaGVuIGdlZnVuZGVuLApkZXN3ZWdlbiByZW5udCBlciBtaXQgTGVkZXJtdWV6dGUgcnVtLCBkYW1pdCBtYW4gZGFzIEdydWVuIGhpbnRlciBkZW4gT2hyZW4KbmljaHQgc28gc2llaHQuCiA0OiBkZXIgUGZhZGZpbmRlciAgICAgICAgICAgICAgICAgIC0tIGZyYWd0IGZsZWlzc2lnIGFsbGUgdW5kIGplZGVuLCBvYiBlcgpuaWNodCB6dWZhZWxsaWcgJ24gQlNTIGFiZ2ViZW4ga29lbm50ZSwgdW0gc2ljaCBkYXMgR3J1ZW4gaGludGVyIGRlbiBPaHJlbgphYnp1a3JhdHplbgogNTogZGVyIEphZWdlciAgICAgICAgICAgICAgICAgICAgICAgLS0gc3VjaHQga3JhbXBmaGFmdCBlaW5lIEZlZGVyIGZ1ZXIKc2VpbmUgTGVkZXJrYXBwZSB1bSB2b24gc2VpbmVuIGdydWVuZW4gT2hyZW4gYWJ6dWxlbmtlbgogNjogZGVyIEthZW1wZmVyICAgICAgICAgICAgICAgICAgICAtLSBoYXQgZXJrYW5udCwgZGFzcyBlaW4gTGljaHRoZWxtIGRpZQpncnVlbmVuIE9ocmVuIHdlc2VudGxpY2ggZ2VzY2hpY2t0ZXIgdmVyZGVja3QgYWxzIHNvICduZSBvbGxlIExlZGVya2FwcGUKIDc6IGRlciBlcmZhaHJlbmUgS2FlbXBmZXIgICAgICAgICAgLS0gaGF0IGVya2FubnQsIGRhcyBtYW4gZGVuIExpY2h0aGVsbQphdWZ6aWVoZW4gc29sdGUsIGRhbWl0IGRpZSBPaHJlbiBuaWNodCBzbyBncnVlbmQgZHVyY2ggZGllIEdlZ2VuZCBibGl0emVuCiA4OiBkZXIgQWJlbnRldXJlciAgICAgICAgICAgICAgICAgICAtLSBzdWNodCB3aWUgYmxvZWQgbmFjaCBpcmdlbmRlaW5lcgphbHRlcm5hdGl2ZSB6dW0gTGljaHRoZWxtLi4uIGFsbGUgZGllIG1pdCBzb3dhcyBkdXJjaCBkaWUgR2VnZW5kIHJlbm5lbiBzaW5kCnNvd2llc28gbnVyIEFuZmFlbmdlciB2b3InbSBlcnN0ZW4gRW5kZS4gWm8gUGVpbmxpY2gsIHNvJ24gTGljaHRoZWxtLgogOTogZGVyIGVyZmFocmVuZSBBYmVudGV1cmVyICAgICAgICAtLSB3ZWlzcyBpbnp3aXNjaGVuIHdvIG1hbiBMaWNodGhlbG1lZQpmaW5kZXQsIHVuZCB3ZXIgUmFmZmkgaXN0CjEwOiBkZXIgS3JpZWdlciAgICAgICAgICAgICAgICAgICAgIC0tIGthbm4gc2Nob24gZ2FueiBhbGxlaW5lIGRpZSBJbnNla3RlbgphdWYgZGVyIEhFIG1ldHplbG4uLi4gbWVpc3RlbnMgc29nYXIgb2huZSB2b3JoZXIgenUgZnJhZ2VuLgoxMTogZGVyIFJpdHRlciAgICAgICAgICAgICAgICAgICAgICAtLSBlcnphZWhsdCBhbGxlbiBkYXNzIHNlaW5lIGdydWVuZW4KT2hyZW4genVyIFplaXQgZW4gdm9ndWUgc2luZCwgdW5kIHRyYWVndCB0cm90emlnIHNlaW5lbiBMaWNodGhlbG0KMTI6IGRlciBIZWxkICAgICAgICAgICAgICAgICAgICAgICAgLS0gc2NobGVwcHQgZmxlaXNzaWcgTGVkZXJydWVzdHVuZ2VuIHp1bQpaZXJnZW5sYWRlbiwgZGFtaXQgZXIgc2ljaCB2aWVsbGVpY2h0IGluIGRyZWkgSmFocmVuIGVpbiBCU1MgbGVpc3RlbiBrYW5uCgoKRm9ydHNldHp1bmcgZm9sZ3QuLi4uCi1DaGVhc3kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyAoQ3JlYXRpdmUsIDE4LiBKYW4gMTk5NiwgMjA6MTU6MzYpOgpbQWxsZ2VtZWluOkFzbW9kaXNdIHNjaHJlaWJ0IG1hbCB3YXMgaW4gZGllIG1wYQphbmQgdGhlcmUgd2UgZ28uLi4KLUNyZWEtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2FzIChDaGVhc3ksIDE4LiBKYW4gMTk5NiwgMjA6MTY6MTQpOgp+IyEgcm49Q3JlYXRpdmUgcnQ9ODIxOTkyNTM2Cn4jISB0aWQ9ODIxOTkyNTM2CmRhcyBnZXQga3VlcnplcjoKV0FTCi1DaGVhc3kgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogd2FzIChTZW1pcmEsIDE4LiBKYW4gMTk5NiwgMjA6MTY6NTgpOgp+IyEgcm49Q2hlYXN5IHJ0PTgyMTk5MjU3NAp+IyEgdGlkPTgyMTk5MjUzNgpub2NoIGt1ZXJ6YWVyCgo/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB3YXMgKENyZWF0aXZlLCAxOC4gSmFuIDE5OTYsIDIwOjE4OjAxKToKfiMhIHJuPVNlbWlyYSBydD04MjE5OTI2MTgKfiMhIHRpZD04MjE5OTI1MzYKQWxzbywgaWNoIGZpbmRlLCBndWdndCBtYWwgYXVmIGRlbiBUaXRlbC4uLgonUmU6JyB3YXMgaXN0IGRlZmluaXRpdiBsYWVuZ2VyIGFscyAnd2FzJwo6KQotQ3JlYS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHdhcyAoQ3JlYXRpdmUsIDE4LiBKYW4gMTk5NiwgMjA6MTg6NTApOgp+IyEgcm49Q3JlYXRpdmUgcnQ9ODIxOTkyNjgxCn4jISB0aWQ9ODIxOTkyNTM2CmFyZ2wuIGljaCBrYW5uIG5ldCBtYWwgc2NocmVpYmVuLiBzb2xsdGUgbmF0dWVybGljaDoKJ1JlOiB3YXMnIGxhZW5nZXIgYWxzICd3YXMnIGhlaXNzZW4uCi1DcmVhLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogd2FzIChDdWNodWxsaW4sIDE4LiBKYW4gMTk5NiwgMjA6MjA6MTMpOgp+IyEgcm49Q3JlYXRpdmUgcnQ9ODIxOTkyNzMwCn4jISB0aWQ9ODIxOTkyNTM2CgpLb2VubnQgaWhyIG5pY2h0IENhdCogZnJhZ2VuLCBvYiBpaHIgU2NocmVpYnJlY2h0ZSBpbiAibXVlbGwiIGJla29tbXQ/CkRhcyB3dWVyZGUgZGFzIFZlcmZhaHJlbiBlbm9ybSBhYmt1ZXJ6ZW4uCgpDdWNoLi0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiB3YXMgKENyZWF0aXZlLCAxOC4gSmFuIDE5OTYsIDIwOjIwOjQ4KToKfiMhIHJuPUN1Y2h1bGxpbiBydD04MjE5OTI4MTMKfiMhIHRpZD04MjE5OTI1MzYKKmp1dXV1dWJlbCogZGFyYXVmIHdhcnRlIGljaCBzY2hvbiBKYWhyZSEgOikKRXMgbGViZSBkaWUgUmVeMTI5MDQ3MTI0IC0gRnJvbnQhIDopCi1DcmVhLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZXJzdGF1bmxpY2ggKEx3YXhhbmEsIDE4LiBKYW4gMTk5NiwgMjA6NDI6MTQpOgpIbW0gZXJzdGF1bmxpY2ggd2llIHNjaG5lbGwgd2llZGVyIEFydGlrZWwgaW4gZGVyIFplaXR1bmcgc3RlaGVuIDopKSkKVm9yIGVpbmVyIGhhbGJlbiAgU3R1bmRlIHdhciBub2NoIE5OTiAqZ3JpbnMqClRzY2hhdSBMd2F4CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaW5kb29mLi4uIChFbmd5d3VjaywgMTguIEphbiAxOTk2LCAyMToyNzoyMik6Ck5ldWxpY2ggYmVpbSBhcmJlaXRlbiBtaXQgV29yZCA2Li4uLgoKIldpbndvcmQgdmVydXJzYWNodGUgZWluZW4gTmljaHQtdm9yaGFuZGVuLUZlaGxlciBpbiBNb2R1bC4uLiIKCkhhdCB0cm90emRlbSBuaXggZ2Vob2xmZW4sIG9id29obCBkZXIgRmVobGVyIG5pY2h0IHZvcmhhbmRlbiB3YXIgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhYWFhYWEgOikgKEN1Y2h1bGxpbiwgMTguIEphbiAxOTk2LCAyMTo1NDoxMCk6CgpJY2ggaGF0dGUgd2lya2xpY2ggbnVyICJubiIgbWFjaGVuIHdvbGxlbiwgZGFzICItIiBkYXZvciB3YXIgZWluIFZlcnNlaGVuIQoKW0FsbGdlbWVpbjpDdWNodWxsaW5dIG5uCltBbGxnZW1laW46Q2FyYWRocmFzXSBtbQpbQWxsZ2VtZWluOk1pY3JvXSBjaGVhc3kgaG9lcnN0ZSBtaWNoCltBbGxnZW1laW46SmFmXSBvbwpbQWxsZ2VtZWluOkNyZWF0aXZlXSBwcApbQWxsZ2VtZWluOkNhcmFkaHJhc10gc3VwcGEgOikKW0FsbGdlbWVpbjpBc21vZGlzXSBmZgpbQWxsZ2VtZWluOlN2ZWFyICBBYmVuZF0KW0FsbGdlbWVpbjpDZWxlYmRpbF0gaWVlaApbQWxsZ2VtZWluOk1pY3JvXSBBYmVuZCAhCltBbGxnZW1laW46Q2VsZWJkaWxdIG5vZSwga2VpbiBmZiEgOikKW0FsbGdlbWVpbjpDaGVhc3ldIGR1IGhhc3QgZGFzIHFxIHVuZCByciB2ZXJnZXNzZW4sIENhcmEgOikKW0FsbGdlbWVpbjpKYWZdIHFxIG1hY2ggaWNoIG5pY2h0LCBkYXMgaXN0ICdmaW5zdGVybmlzIG9yaycgOikKW0FsbGdlbWVpbjpNaWNyb10gY2hlYXN5IGhvZXJzdGUgbWljaApbQWxsZ2VtZWluOkNhcmFkaHJhc10gcXEgaXN0IHRyaXR0IGZ1Y2hzCltBbGxnZW1laW46UXVpbGxpYW5dIGZmPwpbQWxsZ2VtZWluOk1pY3JvXSBXZW5ucyBuZXJ2dCBzYWd0cyBtaXIgIQpbQWxsZ2VtZWluOkNyZWF0aXZlXSBodWh1IG1pbW8hCltBbGxnZW1laW46Q2FyYWRocmFzXSBmZiBpc3QgZmluZGUgJCoKW0FsbGdlbWVpbjpBc21vZGlzXSBmZiBpc3QgYmVpIG1pciAnZnJhZ2UgZnVuYWtvc2hpIG5hY2ggJionCltBbGxnZW1laW46Q2FyYWRocmFzXSBkYXMgaXN0IGJlaSBtaXIgZmsKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIHVuZCBvbyBpc3QgdG9ldGUgZHJhY2hlIDopCltBbGxnZW1laW46QXNtb2Rpc10gayA/CltBbGxnZW1laW46Q3JlYXRpdmVdIGhtLiBpY2ggaGFiIGtlaW4gZmYgOikKW0FsbGdlbWVpbjpKYWZdIGZmIGlzdCAnZmluZGUgZnl0JyA6KQpbQWxsZ2VtZWluOkFzbW9kaXNdIGVyIGZhZW5ndCBkb2NoIG1pdCBmIGFuIDopCltBbGxnZW1laW46Q3JlYXRpdmUgcHJ1c3RldCBsb3Mgd2llIFNjaHJ1bXBmaS5dCltBbGxnZW1laW46U2x5Zm94XSBBc21vZGlzIGhhdCBkYXMgZ2xlaWNoIGZmIHdpZSBpY2ggOykKW0FsbGdlbWVpbjpKYWZdIGRlciBnZWh0IG5lbWxpY2ggYWIgdW5kIHp1IHZlcmxvcmVuIDopCltBbGxnZW1laW46UXVpbGxpYW5dIGZmIGlzdCB3ZXIgZmluYWxmcm9udGllciA6LSkKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIGllZWggOikKW0FsbGdlbWVpbjpBc21vZGlzXSBrbGFyLCBxdWlsbGkgOikKW0FsbGdlbWVpbjpBc21vZGlzXSBmdWVyIHdlciBmaW5hIGJyYXVjaGUgaWNoIGtlaW4gYWxpYXMgOikKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIGh1Y2gsIG1tIHdhciB0ZWlsZSBtaWdodHkgbWl0ICQqLCB3ZXIgaXN0IG1pZ2h0eT8KW0FsbGdlbWVpbjpDYXJhZGhyYXNdICpncnVlYmVsKgpbQWxsZ2VtZWluOkNhcmFkaHJhc10gb2gsIGFud2VzZW5kIDopCltBbGxnZW1laW46SmVycmljbyBncmluc3RdCltBbGxnZW1laW46QXNtb2Rpc10gZWluIHdpZW5lcgpbQWxsZ2VtZWluOkNhcmFkaHJhc10gYXVjaCBncmFkZSBnZXNlaGVuLi4uIGpldHp0IGhhYiBpY2ggYXVzIHZlcnNlaGVuIGF1Y2gKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIG5vY2ggZWluIGFsaWFzIGh1Y2gsIG1tIGlzdCB0ZWlsZSBtaWdodHkgbWl0ICQqCltBbGxnZW1laW46Q2FyYWRocmFzIGFyZ2x0IGxlaXNlIHZvciBzaWNoIGhpbiB1bmQgZ2VodCBiZXNzZXIgenUgQmV0dC5dCgpPaGplLCBoaWVyIHdpcmQgSkVERVIgVHlwbyBhdXNnZXRyZXRlbiA7KQpDdWNoLi0gYmVoZXJyc2NodCBzaWNoIGluIFp1a3VuZnQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28ga251dHNjaHQgRG9ub2UgKENhcmFkaHJhcywgMTguIEphbiAxOTk2LCAyMzoyMjoxOSk6CgpbQWxsZ2VtZWluOkRvbm9lIGtudXRzY2h0IFNjaHJ1bXBmaSB1bmQgQW1hem9yYSB3aWxkIGFiIChJcyBtaXIgZG9jaCBlaGgKYWxsZXMgZWdhbCB3aWUgZGllIFRvcnRlIGhlaXNzdCldCkR1IG11c3N0IERpY2ggdWViZXJnZWJlbi4KCiAgICAgICAgIEhtbW1tbW1tbSA6KSkKICAgICAgICAgICAgICAgICAgICBDZWxlYmRpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW1tZXIgd2llZGVyIHNjaG9lbi4uLiAoTmljaHRzLCAxOS4gSmFuIDE5OTYsIDAwOjA4OjI3KToKClsuLi5dCkR1IGthbm5zdCBkYXMgR2VzY2hhZWZ0IG5hY2ggT3N0ZW4gdmVybGFzc2VuLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogb3N0ZW4uCkVpbiBNdWVsbHNjaGx1Y2tlci4KRWluIFNwaWVsemV1Z2F1dG9tYXQuCj4gZnVldHRlciBtdWVsbHNjaGx1Y2tlciBtaXQgYXV0b21hdApNaXQgZWluZW0gbGF1dGVuIFJ1ZWxwc2VuIHNjaGxpbmd0IGRlciBNdWVsbHNjaGx1Y2tlciBhbGxlcy4KClZlcm5pY2h0ZW5kLAoiIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN1c2hpIHVuZCBnZXdpc3NlIFByb2JsZW1lIChDYXJhZGhyYXMsIDE5LiBKYW4gMTk5NiwgMDE6NTQ6NTMpOgpbQWxsZ2VtZWluOlN1c2hpXSBEYXMgd2VyZGUgaWNoIG5pZSB2ZXJzdGVoZW46IER1IGthbm5zdCBDYXJlZnJlZSBuaWNodApbQWxsZ2VtZWluOlN1c2hpXSBuZWhtZW4uLi4gVW5kIHdvIHNvbGxlbiBkaWUga2xlaW5lbiBNYWdpZXJraW5kZXIgaGVya29tbWVuPwoKCiAgICAgICBNYWdpZXI/IFdvZnVlciA6KSBHaWJ0cyBlaCBnZW51Y2guCiAgICAgICAgICAgICAgICAgIENhcmFkaHJhcyAqOl4pICAgKmF1YSBhdWEsIG5pY2h0IGhhdWVuKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhYWFhYWEgOikgKEhhcmRpbCwgMTkuIEphbiAxOTk2LCAxMzo1MDo1Nik6Cn4jISBybj1DdWNodWxsaW4gcnQ9ODIxOTk4NDUwCn4jISB0aWQ9ODIxOTk4NDUwCgpJaHIgc3Bpbm50IGRvY2ggYWxsZS4KZmYgaXN0IHVuZCBibGVpYnQgJ2ZvbGdlIGh1bmQnLgoKLUhhcmRpbC4gU3BpZWx0IG9obmUgVGlueWZ1Z3VlLiBOTk4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhYWFhYWEgOikgKFJhZmZpLCAxOS4gSmFuIDE5OTYsIDE0OjA4OjExKToKfiMhIHJuPUhhcmRpbCBydD04MjIwNTU4NTYKfiMhIHRpZD04MjE5OTg0NTAKCkhhdCBoYXJkaWwgZWluZW4gc3ByYWNoZmVobGVyIChmb2xnZSBmdW5kKT8KCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXYWFhYWFhIDopIChIYXJkaWwsIDE5LiBKYW4gMTk5NiwgMTQ6MTE6MTIpOgp+IyEgcm49UmFmZmkgcnQ9ODIyMDU2ODkxCn4jISB0aWQ9ODIxOTk4NDUwCgpXaWVzbyBTcHJhY2hmZWhsZXI/Cldlbm4gbWFuIHZvbSBFbGZlbmRvcmYgenVyIEhvY2hlYmVuZSByZW5udCwgZGFubiB0aXBwdCBzaWNoIGZmIGVpbmZhY2gKbGVpY2h0ZXIgYWxzIGZoLgogOikKCi1IYXJkaWwuCk5OTi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdhYWFhYWEgOikgKEFzbW9kaXMsIDE5LiBKYW4gMTk5NiwgMTQ6MjE6MTkpOgp+IyEgcm49SGFyZGlsIHJ0PTgyMjA1NzA3Mgp+IyEgdGlkPTgyMTk5ODQ1MAppY2ggdGlwcGUgZGEgaW1tZXIgPCwgZ2VodCBub2NoIHNjaG5lbGxlciA6KSAobGllZ3QgdW50ZXJtIEEpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXYWFhYWFhIDopIChSYWZmaSwgMTkuIEphbiAxOTk2LCAxNDoyMjoyOSk6Cn4jISBybj1Bc21vZGlzIHJ0PTgyMjA1NzY3OQp+IyEgdGlkPTgyMTk5ODQ1MApXb21pdCBzaWNoIEFzbW9kaXMgZ2VyYWRlIGFscyBCZW51dHplciBlaW5lciBEZXV0c3NjaGVuIFRhc3RhdHVyIGdlb3V0ZXQgaGF0IQoKR3JpbnMKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdhYWFhYWEgOikgKEhhcmRpbCwgMTkuIEphbiAxOTk2LCAxNDoyNzo0OCk6Cn4jISBybj1SYWZmaSBydD04MjIwNTc3NDkKfiMhIHRpZD04MjE5OTg0NTAKCkFsc28gYmVpIG1pciBsaWVndCB1bnRlcm0gYSBkaWUgU2hpZnQtVGFzdGUuCnVuZCBzY2hyYWVnIGF1ZiBkZXIgYW5kZXJlbiBTZWl0ZSBkYXMgWi4KQmluIGljaCBqZXR6dCBzY2hsZWNodGVyIGFscyBBc21vZGlzPyA6KQpVbmQsIEFzbWRvaXMsLiB3ZW5uIERVIGluIGRpZSBhbmRlcmUgUmljaHR1bmcgd2lsbHN0OiB0aXBwc3QgRHUgZGFubiA+IHN0YXR0CjwgPyA6KQoKLUhhcmRpbC4KTk5OLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmVyZ2UhISAoS2FtaWxsZSwgMTkuIEphbiAxOTk2LCAxNDoyNzo1Nik6CkViZW4gaW4gZGVyIFRvZGVzc2VxdWVuejoKCkR1IHNwdWVyc3QgZWluZW4gbWFnZXJlbiBGaW5nZXIgYXVmIERlaW5lIFNjaHVsdGVyIGtsb3BmZW4uCgpDYXJhZGhyYXMgdHJvZXN0ZXQgZGljaCBhdXMgZGVyIEZlcm5lLgpEdSBkcmVoc3QgRGljaCB1bS4KVmllbGxlaWNodCBzb2xsdGUgaWNoIG1laW5lbSBMaWVibGluZ3NiZXJnIG1hbAp3YXMgenUgRXNzZW4gc2NoaWNrZW4/CgpLYW1pbGxlIChzY2htdW56ZWxuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1laHIgZGF2b24gISAoSmFuaWNlLCAxOS4gSmFuIDE5OTYsIDE0OjMwOjQ0KToKRWJlbiBpbiBkZXIgU1NQOgoKRHUgZ3JlaWZzdCBkZW4gTGV1Y2h0dHJvbGwgbWl0IGRlbSBTY2h3ZXJ0IGFuLgogIER1IHZlcmZlaGxzdCBkZW4gTGV1Y2h0dHJvbGwuCiAgRGVyIExldWNodHRyb2xsIGdyZWlmdCBEaWNoIG1pdCBibG9zc2VuIEhhZW5kZW4gYW4uCkVpbiBMZXVjaHR0cm9sbCB2ZXJzdGF1Y2h0IHNpY2ggYmVpIGRlbSBTY2hsYWcgZGllIEhhbmQuCkRlciBMZXVjaHR0cm9sbCBmYWVsbHQgdG90IHp1IEJvZGVuLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBMZXVjaHR0cm9sbHNdIEZpbmRlc3QgRHUgZGFzIGZhaXIsIEphbmljZT8KCgpXYXJ1bSBzdGVyYmVuIG5pY2h0IGFsbGUgTlBDJ3MgYXVmIHNvbGNoIGVocmVuaGFmdGUgV2Vpc2UgPyA6LSkKSmFuaWNlIG1ldHplbHQgbmV1ZXJkaW5ncyBMZXVjaHR0cm9sbGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdhYWFhYWEgOikgKEFuY2FsYWdvbiwgMTkuIEphbiAxOTk2LCAxNDozMjozNyk6Cn4jISBybj1IYXJkaWwgcnQ9ODIyMDU3MDcyCn4jISB0aWQ9ODIxOTk4NDUwCk1vaW4gZXJzdG1hbCEKQWxzbywgd2VyIGZ1ZXIgImZvbGdlIGh1bmQiIGVpbiBhbGkgYnJhdWNodCwgbXVzcyBkYXMgdGlwcGVuIHdvaGwgbm9jaAp1ZWJlbi4uLi4qZ3JpbnMqCk5vIE9mZmVuc2UgbWVhbnQuLi4uLgpFaW5mYWNoIG1hbCBzby4uLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuY2FsYWdvbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERyYWNvIGtudWRkZWxsZW5zaXMgbWFqb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdhYWFhYWEgOikgKFphcmRveiwgMTkuIEphbiAxOTk2LCAxNDozNjo0OCk6Cn4jISBybj1BbmNhbGFnb24gcnQ9ODIyMDU4MzU3Cn4jISB0aWQ9ODIxOTk4NDUwCkljaCBoYWIgaW1tZXIgZm9sZ2UgYmVybmhhcmRpbmVyIGdldGlwcHQsIGdlaHQgZ2VuYXVzbyBzY2huZWxsLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXYWFhYWFhIDopIChBc21vZGlzLCAxOS4gSmFuIDE5OTYsIDE0OjUzOjI5KToKfiMhIHJuPUhhcmRpbCBydD04MjIwNTgwNjgKfiMhIHRpZD04MjE5OTg0NTAKc2FnZW4gd2lyIHNvOiBlcyBsaWVndCBoYWxiIHVudGVybSBBIHVuZCBoYWxiIHVudGVyIGRlciBzaGlmdC10YXN0ZSA6KQp1bmQgaW4gZGllIGFuZGVyZSByaWNodHVuZyBnZWh0cyB3b2hsIGdlbmF1c28gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFdhYWFhYWEgOikgKFR6dWlvcCwgMTkuIEphbiAxOTk2LCAxNToxNDo0Mik6Cn4jISBybj1Bc21vZGlzIHJ0PTgyMjA1OTYwOQp+IyEgdGlkPTgyMTk5ODQ1MApEYW5rZSBmdWVyIGRlbiBIaW53ZWlzLgpVbmQgd28gbGllZ3QgUG9ydCBWYWluID8KOikpIFR6dWlvcAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2FhYWFhYSA6KSAoRnl0LCAxOS4gSmFuIDE5OTYsIDE2OjM0OjExKToKfiMhIHJuPVJhZmZpIHJ0PTgyMjA1Njg5MQp+IyEgdGlkPTgyMTk5ODQ1MAoKPiBIYXQgaGFyZGlsIGVpbmVuIHNwcmFjaGZlaGxlciAoZm9sZ2UgZnVuZCk/CgpGaWZjaGVyIDopKQoKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNvIGtudXRzY2h0IERvbm9lIChTY2hydW1wZmksIDE5LiBKYW4gMTk5NiwgMjE6MDc6MzgpOgp+IyEgcm49Q2FyYWRocmFzIHJ0PTgyMjAwMzczOQp+IyEgdGlkPTgyMjAwMzczOQpQZm9hLCBDYXJhISA7LSkKUy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmljaCBsZW5rIGFiIChSdWRpcmF0dGVyLCAyMC4gSmFuIDE5OTYsIDIxOjIyOjQxKToKRHUgdGVpbHN0IFNseWZveCBtaXQ6IGR1IG1ldHplbHN0IGphIGdhbnogc2Nob2VuIGRpZSBsZXR6dGVuIGF0Z2UKU2x5Zm94IHRlaWx0IERpciBtaXQ6IFdpbGwgYXVjaCBlbmRsaWNoIExldmVsIDMwIHdlcmRlbiA6KSBVbmQgdm9yIGFsbGVtLCBpY2gKU2x5Zm94IHRlaWx0IERpciBtaXQ6IGJpbiBzY2hvbiBsYWVuZ2VyIG5pY2h0IG1laHIgZ2VzdG9yYmVuLCBkYXMgbWFjaHQgdmllbApTbHlmb3ggdGVpbHQgRGlyIG1pdDogYXVzIQpbVG9kOl0gRWluIEVpc2dpZ2FudCBoYXQgZ2VyYWRlIFNseWZveCB1bWdlYnJhY2h0LgpTY2hsYXdpbmVyIHRlaWx0IERpciBtaXQ6IChTbHlmb3gpICpncnVtbWVsKiBIYWV0dCBpY2ggYmxvc3Mgbml4IG1pdApTY2hsYXdpbmVyIHRlaWx0IERpciBtaXQ6IERpcmRhcnVlYmVyIGdlcmVkZXQhCgoKUnVkaXJhdHRlciBuZXN0ZWx0IGFuIGlocmVtIEJ1ZXNzZXJoZW1kIHJ1bS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBpY2ggbGVuayBhYiAoQ2FyYWRocmFzLCAyMS4gSmFuIDE5OTYsIDAwOjE0OjU0KToKfiMhIHJuPVJ1ZGlyYXR0ZXIgcnQ9ODIyMTY5MzYxCn4jISB0aWQ9ODIyMTY5MzYxCkR1IHRlaWxzdCBTbHlmb3ggbWl0OiBkdSBtZXR6ZWxzdCBqYSBnYW56IHNjaG9lbiBkaWUgbGV0enRlbiBhdGdlClNseWZveCB0ZWlsdCBEaXIgbWl0OiBXaWxsIGF1Y2ggZW5kbGljaCBMZXZlbCAzMCB3ZXJkZW4gOikgVW5kIHZvciBhbGxlbSwgaWNoClNseWZveCB0ZWlsdCBEaXIgbWl0OiBiaW4gc2Nob24gbGFlbmdlciBuaWNodCBtZWhyIGdlc3RvcmJlbiwgZGFzIG1hY2h0IHZpZWwKU2x5Zm94IHRlaWx0IERpciBtaXQ6IGF1cyEKW1RvZDpdIEVpbiBFaXNnaWdhbnQgaGF0IGdlcmFkZSBTbHlmb3ggdW1nZWJyYWNodC4KU2NobGF3aW5lciB0ZWlsdCBEaXIgbWl0OiAoU2x5Zm94KSAqZ3J1bW1lbCogSGFldHQgaWNoIGJsb3NzIG5peCBtaXQKU2NobGF3aW5lciB0ZWlsdCBEaXIgbWl0OiBEaXJkYXJ1ZWJlciBnZXJlZGV0IQoKClJ1ZGlyYXR0ZXIgbmVzdGVsdCBhbiBpaHJlbSBCdWVzc2VyaGVtZCBydW0uCj4gRHUgdGVpbHN0IEZhbnVpZGhvbCBtaXQ6IFNseWZveCBoYXQgbWlyIG1pdGdldGVpbHQ6IFdpbGwgYXVjaCBlbmRsaWNoIExldmVsCkR1IHRlaWxzdCBGYW51aWRob2wgbWl0OiAzMCB3ZXJkZW4gOikgVW5kIHZvciBhbGxlbSwgaWNoCj4gRHUgdGVpbHN0IEZhbnVpZGhvbCBtaXQ6IFNseWZveCBoYXQgbWlyIG1pdGdldGVpbHQ6IGJpbiBzY2hvbiBsYWVuZ2VyIG5pY2h0CkR1IHRlaWxzdCBGYW51aWRob2wgbWl0OiBtZWhyIGdlc3RvcmJlbiwgZGFzIG1hY2h0IHZpZWwKPiBEdSB0ZWlsc3QgRmFudWlkaG9sIG1pdDogU2x5Zm94IGhhdCBtaXIgbWl0Z2V0ZWlsdDogYXVzIQo+IER1IHRlaWxzdCBGYW51aWRob2wgbWl0OiBTY2hsYXdpbmVyIGhhdCBtaXIgbWl0Z2V0ZWlsdDogKFNseWZveCkgKmdydW1tZWwqCkR1IHRlaWxzdCBGYW51aWRob2wgbWl0OiBIYWV0dCBpY2ggYmxvc3Mgbml4IG1pdAo+IER1IHRlaWxzdCBGYW51aWRob2wgbWl0OiBTY2hsYXdpbmVyIGhhdCBtaXIgbWl0Z2V0ZWlsdDogRGlyZGFydWViZXIKZ2VyZWRldCEKCiAgdmVyZmxpeHRlciB0bS13ZWl0ZXJsZWl0dW5nc3RyaWdnZXIgYXVmIEZhbnUgOikKCiAgICAgICBDYXJhZGhyYXMsIHNpZWh0IGFsbGVzIGRvcHBlbHQgKmhpY2tzKiBMYWxhbGFhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJc3NlciBqZXR6dCBkb2Q/IChDYXJhZGhyYXMsIDIxLiBKYW4gMTk5NiwgMDQ6MzU6NTUpOgpbQWJlbnRldWVyOl0gRmllYmVyIGhhdCBkZW0gSGV4ZXIgSGVpbHVuZyBnZWJyYWNodC4KQ2xvZHNhaGFtcCBydWZ0OiBGaWViZXIgbWVpbmVuIERhbmsgISBJY2ggYmluIHdpZWRlciBnZXN1bmQuCgpWb20gUmVnZW4gaW4gZGllIFRyYXVmZSwgamFqYSwgYXJtZXIgQ2xvZGksIGhhbGx1emluaWVydCBzY2hvbi4KCiAgICAgICAgICBDYXJhZGhyYXMgLSBIdW5nYSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmphamEsIEthbmluY2hlbiB1bmQgQmVyZ2UgdmVyd2VjaHNlbG4gOikgKENhcmFkaHJhcywgMjEuIEphbiAxOTk2LCAwNzo1Mjo0OCk6CiAgICAgICAgICAgICAgICBIbW1tbW1tIDopCgpWb3JoaW4gd3VyZGUgaWNoIG5hY2ggQXZhbG9uIGdlcnVmZW4sIHdlaWwgUmljaGVsaWV1IChzZWluZXMgWmVpY2hlbnMKYXVjaCBTZWhlciBoaWVyIGltIE1HKSBtaWNoIHJpZWYgdW5kIGljaCBzb2xsdGUgZWluIEthbmluY2hlbgp1bWJyaW5nZW4gbWl0IGVpbmVtIFNjaHdlcnQsIG9iIGVzIGJlaSBtaXIgYXVjaCBzbyBsYW5nZSBkYXVlcnQgd2llCmJlaSBpaG0uIERhYmVpIHBhc3NpZXJ0ZSBmb2xnZW5kZXM6Cgo+IFJ1ZGkgUmljaGVsaWV1IGVudGZlcm50IHNpY2ggbmFjaCBPc3Rlbi4KQXVmIGVpbmVyIFdpZXNlLgpIZXJyIFJ1ZGkgUmljaGVsaWV1LCBkZXIgY2hhb3Rpc2NoZSBNYW5uLgpFaW4gS2FuaW5jaGVuLgo+IFJ1ZGkgUmljaGVsaWV1IHNhZ3Q6IGRhIGlzIGVpbmVzCkR1IHNhZ3N0OiBkYXMgZGE/CkR1IHNhZ3N0OiBobQpEdSBzYWdzdDogZ2liIG1hbCBzY2h3ZXJ0Cj4gUnVkaSBSaWNoZWxpZXUgZ2lidCBkZW0gS2FuaW5jaGVuIGVpbiBMYW5nc2Nod2VydC4KRHUgc2Fnc3Q6IGFlaAo+IFJ1ZGkgUmljaGVsaWV1IGZsdWNodCB3aWUgZWluIFJvaHJzcGF0ei4KRHUgbGFjaHN0IHVuZCBsYWNoc3QsIGJpcyBEaXIgVHJhZW5lbiBpbiBkaWUgQXVnZW4gc3RlaWdlbi4KRHUgbGFjaHN0IHVuZCBsYWNoc3QsIGJpcyBEaXIgVHJhZW5lbiBpbiBkaWUgQXVnZW4gc3RlaWdlbi4KRHUgbGFjaHN0IHVuZCBsYWNoc3QsIGJpcyBEaXIgVHJhZW5lbiBpbiBkaWUgQXVnZW4gc3RlaWdlbi4KPiBSdWRpIFJpY2hlbGlldSBzYWd0OiBkYXMgZ2lidHMgamEgbmljaHQKUnVkaSBSaWNoZWxpZXUgd2FlbHp0IHNpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgpEdSBzYWdzdDogZGFzIHdpbGwgaWNoIG5hY2ggTUcgYXVmaGFlbmdlbiA6KSkpKQpEdSBzYWdzdDogZGFyZiBpY2ggPwo+IFJ1ZGkgUmljaGVsaWV1IHNhZ3Q6IG9rb2sKRHUgZ3JpbnN0Lgo+IFJ1ZGkgUmljaGVsaWV1IHdhZWx6dCBzaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KUnVkaSBSaWNoZWxpZXUgc2NoYXV0IGR1bW0gYXVzIGRlciB3YWVzY2hlClJ1ZGkgUmljaGVsaWV1IHNjaGF1dCBkYXMgS2FuaW5jaGVuIGV0d2FzIGdlbmF1ZXIgYW4uCkRhcyBLYW5pbmNoZW4gaGF0IGVpbiBoZXJybGljaCBmbGF1c2NoaWdlcyBGZWxsLCBlcyBpc3QgZ2VuYXVzbyBrbGVpbiB3aWUKZmxpbmsgdW5kIHNjaGF1dCBEaWNoIGF1cyBzZWluZW4gendlaSBncm9zc2VuIEF1Z2VuIGFlbmdzdGxpY2ggYW4uCkVzIGlzdCBhYnNvbHV0IHRvcGZpdC4KICAgICAgICBFcyB0cmFlZ3QgYmVpIHNpY2g6CkVpbiBMYW5nc2Nod2VydC4KLi4uCgpBYmVyIGF1Y2ggbWl0IFNjaHdlcnQgbGVidGUgZXMgbmljaHQgbWVociBsYW5nZS4KCiAgICBDYXJhZGhyYXMgLSBncmluc3QgamV0enQgbm9jaCBpbiBHZWRhbmtlbiBSaWNoZWxpZXUgYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN1cHBhIEJvaW5nIDopIChDZWxlYmRpbCwgMjEuIEphbiAxOTk2LCAxMTo1NjozNik6Cj4gaWIKRXMgc2luZCBzY2hvbiBhbGxlIEJlZXJlbiB3ZWdnZWZyZXNzZW4uCj4gaWIKRHUgaGFzdCBqZXR6dCA1NCBMZWJlbnNwdW5rdGUgdW5kIDEgTWFnaWVwdW5rdGUuCkR1IGlzc3QgZWluIHBhYXIgQmVlcmVuLCBzaWUgc2NobWVja2VuIGV4dHJlbSBsZWNrZXIuCkR1IGhhc3QgamV0enQgMTE5IExlYmVuc3B1bmt0ZSB1bmQgNjYgTWFnaWVwdW5rdGUuCj4gaWIKRHUgaXNzdCBlaW4gcGFhciBCZWVyZW4sIHNpZSBzY2htZWNrZW4gZXh0cmVtIGxlY2tlci4KRHUgaGFzdCBqZXR6dCAxODQgTGViZW5zcHVua3RlIHVuZCAxMzEgTWFnaWVwdW5rdGUuCgoKICAgICAgTmEsIEJvaW5ncyBSZXNldHMgc2luZCBkaWUgYmVzdGVuIDopKQoKICAgICAgICAgICAgICBDZWxlYmRpbCAtIGtudWRkZWx0IGFtIGxpZWJzdGVuIExldWNodHRyb2xsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa29uc3RydWt0aXZlIElkZWUgKENhcmFkaHJhcywgMjEuIEphbiAxOTk2LCAxMjowNzozNCk6CkZhZWxsdCBtaXIgZ3JhZGUgYmVpbSBLbnVkZGVsbiBlaW5lcyBFaXNnaWdhbnRlbiBpbSBEdW5rZWxuIGVpbjoKS29lbm50ZSBtYW4gbmljaHQgZGVuIFN0YWVya2VncmFkIGVpbmVzIE1vbnN0ZXJzIChhbHNvIGF1ZiBTY2h3ZWxsZQpkZXMgVG9kZXMsIGJyYXVjaHQgQXJ6dC4uLikgYW0ga251ZGRlbG4gYWJsZXNlbiwgaW4gZGVtIG1hbiBlcwprbnVkZGVsdCB1bmQgZXMgZWluZW4gZGFubiBlbnRzcHJlY2hlbmQgc3RhcmsgKG9kZXIgc2Nod2FjaCkKenVydWVja2tudWRkZWx0PwoKQWxzbyB6QiB3ZW5uIGRhcyBNb25zdGVyIGF1ZiBkZXIgU2Nod2VsbGUgZGVzIFRvZGVzIHN0ZWh0Ogo+IER1IGtudWRkZWxzdCBlaW5lbiBMZXVjaHR0cm9sbC4KRGVyIExldWNodHRyb2xsIGtudWRkZWx0IERpY2ggbWl0IGFsbGVybGV0enRlciBLcmFmdCB6dXJ1ZWNrLgoKICAgICAgRGFzIGlzdCBkb2NoIG1hbCBuZSBnZWx1bmdlbmUgSWRlZS4KCiAgIENhcmFkaHJhcyAtIGRlciBzaWNoIGF1Y2ggaW1tZXIgZnJldXQgd2VubiBkZXIgU2Vuc2kgaWhuIGJlLQogICAgICAgICAgICAgICBncnVlc3NrbnVkZGVsdCB1bmQgZ2xlaWNoIGRhcmF1ZiB0b3QgdW1mYWVsbHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBrb25zdHJ1a3RpdmUgSWRlZSAoU2VtaXJhLCAyMS4gSmFuIDE5OTYsIDEyOjUyOjUzKToKfiMhIHJuPUNhcmFkaHJhcyBydD04MjIyMjI0NTQKfiMhIHRpZD04MjIyMjI0NTQKaGV5LCBkaWUgaWRlZSBpc3QgZ3V0CgpNdXNzIGljaCBtYWwgQW5jYWxhZ29uIGVyemFlaGxlbiAtIHdpciBzdWNoZW4gZG9jaCBzY2hvbiBpbW1lciBuZW4gTWFnIGRlcgp1bnMgbmUgS251ZGRsZXJnaWxkZSBwcm9nZ2VsdC4uLktpbGxlcmtudWRkbGVyLCBIZWlsa251ZGRsZXIsClVudGVyc3VjaGVrbnVkZGxlciwgZGllIElkZWVuIHdlcmRlbiBpbW1lciBtZWhyIDopCgpFcyBrbnVkZGVsdCBFdWNoIGtudWRkZWxtYXVza251ZGRsaWNoCgotIG5hIHdlciB3b2hsIC0KClNlbWlyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZSEgKFZlcndpcnJ1bmcsIDIyLiBKYW4gMTk5NiwgMTE6NDY6MDcpOgpFYmVuIGltIERydWRlbndhbGQ6CgpEZXIgRHJ1ZGVuZ2Vpc3QgYmVudXR6dCBzZWluZSBLcmFmdCBkZXIgVmVyd2lycnVuZy4gRXMga29tbXQgRGlyIHNvIHZvciwgYWxzCnd1ZXJkZXN0IER1IG5lYmVuIERpciBzdGVoZW4uCgpWLiwgaW1tZXIgbm9jaCBraWNoZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWNoIGphLCBkYXMgQ2hhb3MgKFB1Y2ssIDIzLiBKYW4gMTk5NiwgMDI6MzY6MzIpOgoKCgpLcnVmdHVyIHNhZ3Q6IEljaCBoYWJlIGZvbGdlbmUgSW5mb3JtYXRpb24gdWViZXIgUHVjayBlcmhhbHRlbjogRXJyb3I6CktydWZ0dXIgc2FndDogb3BlcmF0aW5nIG9uIGRlc3RydWN0ZWQgb2JqZWN0LgoKS3J1ZnR1ciBpc3QgR0VJTCEKUHVjawoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hY2h0aWdlIEdlZ2Vuc3RhZW5kZSAoUmFmZmksIDIzLiBKYW4gMTk5NiwgMTI6NTM6MDEpOgoKSWNoIGxpZWJlIGFsbCBkaWVzZSBtYWVjaHRpZ2VuIEdlZ2Vuc3RhZW5kZSBpbSBNRywgdW5kIGlocmUgcHJvbXB0ZSBXaXJrdW5nOgoKQlVMTCBzYWd0OiBrYXVtIHp1IGdsYXViZW4KRHUgaGFzdCBqZXR6dCAxMjkgTGViZW5zcHVua3RlIHVuZCA1MCBNYWdpZXB1bmt0ZS4KW0FiZW50ZXVlcjpCZWVsemVidWJdIFZvbiBQb3J0IFZhaW4gaW1lciBuYWNoV2VzdGVuLgpEdSBoYXN0IGpldHp0IDEzMCBMZWJlbnNwdW5rdGUgdW5kIDUwIE1hZ2llcHVua3RlLgpQbG9ldHpsaWNoIHdpcmQgZGFzIEVpc2FtdWxldHQgdW0gRGVpbmVuIEhhbHMgc2VociBrYWx0LiBVbmQgZG9jaApmdWVobHN0IER1IERpY2ggZXJmcmlzY2h0LCBhbHMgZXMgd2llZGVyIERlaW5lIEtvZXJwZXJ0ZW1wZXJhdHVyCmFubmltbXQuCj4gcHVua3RlCkR1IGhhc3QgMjg4MDUwIEVyZmFocnVuZ3NwdW5rdGUsIDcyMCBBYmVudGV1ZXJwdW5rdGUoMTg1NSksCjEzMCBMZWJlbnNwdW5rdGUoMTMwKSB1bmQgNTAgTWFnaWVwdW5rdGUoNTApCkR1IGJpc3QgIlJhZmZpIGRlciBXYWxkbGFldWZlci4iCkRlaW5lIEF0dHJpYnV0ZSBzZWhlbiBzbyBhdXM6CkludGVsbGlnZW56OiAxICBLcmFmdDogMjAgKCsyKSBBdXNkYXVlcjogOCAoKzMpIEdlc2NoaWNrbGljaGtlaXQ6IDE3ICgrMSkKQWx0ZXI6ICAzMSBUYWdlIDIgU3R1bmRlbiAyNSBNaW51dGVuIDQyIFNla3VuZGVuLgpEZWluIENoYXJha3RlciBpc3QgZ3V0LgpWZXJnbGljaGVuIG1pdCBEZWluZW4gTWl0c3BpZWxlcm4sIGtlbm5zdCBEdSBEaWNoIGltIE1vcmdlbkdyYXVlbgp1ZWJlcmR1cmNoc2Nobml0dGxpY2ggZ3V0IGF1cy4KQWJzb2x1dCBnZXNlaGVuIHNvbGx0ZXN0IER1IERpY2ggdmllbGxlaWNodCBub2NoIGdlbmF1ZXIgdW1zZWhlbi4KCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpsZWVyZXMgSGF1cyAoTWFycywgMjMuIEphbiAxOTk2LCAyMToyMToxOSk6Cgo+IEVzIHNjaGVpbnQgbmllbWFuZCBoaWVyIHp1IHNlaW4uIERhcyBIYXVzIGlzdCBsZWVyLiBEaWUgTW9lYmVsLCBkaWUgaGllcgo+IGhlcnVtc3RlaGVuLCBzaW5kIHNjaG9uIGV0d2FzIHZlcnN0YXVidC4gRGFzIGVpbnppZ2UsIHdhcyBEdSBoaWVyIGluIEh1ZWxsZQo+IHVuZCBGdWVsbGUgc2llaHN0LCBpc3QgU3RhdWIuCj4gRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHdlc3Rlbi4KPiBFaW4gT3JrLUthcmF0ZWthLgoKTmFqYSwgZGVyIEZlaGxlciBsYWVzc3Qgc2ljaCBqYSBtaXQgInRvZXRlIG9yaywgaXNzIGxlaWNoZSIgc2NobmVsbCBiZWhlYmVuLgo6KQoKTWFycwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBsZWVyZXMgSGF1cyAoSmVycmljbywgMjMuIEphbiAxOTk2LCAyMTozNzo0OCk6Cn4jISBybj1NYXJzIHJ0PTgyMjQyODQ3OQp+IyEgdGlkPTgyMjQyODQ3OQpbVG9kOk9yay1LYXJhdGVrYV0gQ2lhbyBNYXJzLCBiaXMgenVtIG5hZWNoc3RlbiBNYWwgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9wcHBwcHBwcHBwcHBwcyAoQ2FyYWRocmFzLCAyNC4gSmFuIDE5OTYsIDA1OjAwOjI0KToKICAgICAgICAgICAgICAgKkdSVUVCRUwqCgogIER1IGdyZWlmc3QgZGVuIFNlbnNlbm1hbm4gbWl0IGVpbmVtIGdlbHVuZ2VuZW4gSGVpa28tenVraSBhbi4KICBEdSB0cmlmZnN0IGRlbiBTZW5zZW5tYW5uLgogIERlciBTZW5zZW5tYW5uIGdyZWlmdCBEaWNoIG1pdCBkZXIgU2Vuc2UgYW4uCiAgRHUgd2VocnN0IGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBIYWl3YW4tbmFnYXNoaS11a2UgYWIuCkR1IGhhc3QgamV0enQgMTExIExlYmVuc3B1bmt0ZSB1bmQgNTEgTWFnaWVwdW5rdGUuCiAgRGVyIFNlbnNlbm1hbm4gdmVyZmVobHQgRGljaC4KPiB1bnQgc2Vuc2VubWFubgpFciBpc3Qgd29obCBnZXJhZGUgc3BhemllcmVuIGdlZ2FuZ2VuIG9kZXIgYmVzdWNodCBzZWluZW4gRnJldW5kLCBkZW4gVG9kLgo+IER1IGhhc3QgamV0enQgMTExIExlYmVuc3B1bmt0ZSB1bmQgNTAgTWFnaWVwdW5rdGUuCiAgRHUgZ3JlaWZzdCBkZW4gU2Vuc2VubWFubiBtaXQgZWluZW0gZ2VsdW5nZW5lbiBIZWlrby16dWtpIGFuLgogIER1IHRyaWZmc3QgZGVuIFNlbnNlbm1hbm4uCiAgRGVyIFNlbnNlbm1hbm4gZ3JlaWZ0IERpY2ggbWl0IGRlciBTZW5zZSBhbi4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIEhhaXdhbi1uYWdhc2hpLXVrZSBhYi4KCiAgICAgICAgQWVlZWVoLCB1bmQgbWl0IHdlbSBrYWVtcGYgaWNoIGRhbm4/IE1pdCBuZW0gR2Vpc3Q/CiAgICAgICAgQXVzbmFobXN3ZWlzZSBtYWwga2VpbiBzY2htYXJybiB0cm90eiBTY2htYXJybi4KCiAgICAgICAgICAgICAgQ2FyYWRocmFzIC0ga3Vja3QgdmVyZHV0enQgZGVuIFNlbnNpIGFuCiAgICAgICAgICAgICAgICAgICAgICAgICAgTWVpbiBGcmV1bmQsIHdhcyBpc3QgbG9zPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9wcHBwcHBwcHBwcHBwcyAoQXNtb2RpcywgMjQuIEphbiAxOTk2LCAxMzoxNTozOSk6Cn4jISBybj1DYXJhZGhyYXMgcnQ9ODIyNDU2MDI0Cn4jISB0aWQ9ODIyNDU2MDI0CkljaCB3ZWlzcyBzb3dpZXNvIG5pY2h0LCB3YXJ1bSBlciB1ZWJlcmhhdXB0IG5vY2ggbWl0IGRpciBrYWVtcGZ0LAplciBrb2VubnRlIGRvY2ggZ2xlaWNoIGRlbiBUb2QgYmVzdWNoZW4sIHdlbm4gZHUgYW5rb21tc3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthbGVuZGVyc3BydWNoIGZ1ZXIgV29jaGUgNCAoR3JpbW1ib3JuLCAyNC4gSmFuIDE5OTYsIDEzOjI0OjQxKToKCldlbm4gYWxsZSBtaXQgbWlyIGVpbmVyIE1laW51bmcgc2luZCBoYWJlIGljaCBpbW1lciBkYXMgR2VmdWVobCwgZGFzcyBpY2gKZWluZW4gRmVobGVyIG1hY2hlLiAoT3NjYXIgV2lsZGUpCgpEZXIgTWFubiBoYXQgamEgc29vbyByZWNodC4uLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPcHBwcHBwcHBwcHBwcHMgKE1hbmdvLCAyNC4gSmFuIDE5OTYsIDEzOjU3OjI1KToKfiMhIHJuPUNhcmFkaHJhcyBydD04MjI0NTYwMjQKfiMhIHRpZD04MjI0NTYwMjQKCgpkYXMgc2VsYmUgaXN0IG1pciBnZXN0ZXJuIGVpZ2VudGxpY2ggYmVpIGFsbGVuIG1vbnN0ZXJuIGluIGRlciBTU1AgcGFzc2llcnQKbmljaHQgbnVyIGJlaW0gU2Vuc2kgOikuCgoKCk1hbmdvLCBkZXIgYXVjaCBnZWdlbiB1bnNpY2h0YmFyZSBNb25zdGVyIGdla2FlbXBmdCBoYXQuCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFtdWxldHQgZGllIHh5dGUgKFZlcndpcnJ1bmcsIDI0LiBKYW4gMTk5NiwgMTY6NTQ6MDYpOgpFYmVuIGltIFdhbGQ6CgpbdW50IHVudGVyaG9sel0KV2VubiBEdSBlcndhcnRldCBoYXN0LCBoaWVyIGVuZGxpY2ggbWFsIGR1cmNoIGRhcyBVbnRlcmhvbHogdGllZmVyIGluIGRlbgpXYWxkIGVpbmRyaW5nZW4genUga29lbm5lbiwgaGFzdCBEdSBEaWNoIGdlaXJydC4gRHUgd2lyc3Qgd29obCB3ZWl0ZXJoaW4gYXVmCmRlbSBXZWcgYmxlaWJlbiBtdWVzc2VuLiBEYXMga29lbm50ZSBhdWNoIGJlc3NlciBmdWVyIERlaW5lIEdlc3VuZGhlaXQgc2VpbiEKPiBEdSBob2Vyc3QgZGFzIEdlamF1bGUgZWluZXMgV29sZmVzLgpbdW50IGdlc3VuZGhlaXRdCkVpbmUgaGVycmxpY2hlIFdhZXJtZSBnZWh0IHZvbiBEZWluZW0gQW11bGV0dCBhdXMsIHVuZCBEdSBmdWVobHN0CkRpY2ggcHJpbWEuCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMjI2IE1hZ2llcHVua3RlLgpEdSBoYWVuZ3N0IGRvY2ggYW4gRGVpbmVyIGdlc3VuZGhlaXQsIG9kZXI/CgpWLiwgaGFlbmd0IHdlaXRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBPcHBwcHBwcHBwcHBwcHMgKEN1Y2h1bGxpbiwgMjQuIEphbiAxOTk2LCAxNzozOToxNSk6Cn4jISBybj1NYW5nbyBydD04MjI0ODgyNDUKfiMhIHRpZD04MjI0NTYwMjQKCgpMb2dpc2NoLCBzaWVoZSBBcnRpa2VsIE5yIDx3YXN3ZWlzc2ljaD4gaW4gUnVicmlrIDx3ZWlzc25pbW1lcj4gdm9uIEhhdGUuLi4KTmV1ZXJkaW5ncyBpc3QgenVlcnN0IGRlciBSYXVtIGRyYW4sIGRlciBiZWkgInVudCIgYGdlZnJhZ3QnIHdpcmQsIG5pY2h0IG1laHIKZGllIE9iamVrdGUgaW4gaWhtLi4uIHVuZCBkYSBCb2luZyB3b2hsIHVlYmVyYWxsIHNlaW4gTW9uc3RlciBhbHMgRGV0YWlsICgiRGVyCmlzdCB3b2hsIGdyYWRlIHNwYXppZXJlbiBnZWdhbmdlbiIpIGVpbmdlZnVlZ3QgaGF0LCBnaWJ0cyBkYSBqZXR6dCB3b2hsCmxlaWNodGUgUHJvYmxlbWUuLi4KCkhhdGUgYnJlaXQgYW5ncmluc2VuZCwKQ3VjaC4tCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWx0ZXIgc2Fjay4uLiAoQ2F0d2VhemxlLCAyNC4gSmFuIDE5OTYsIDE5OjI2OjE1KToKCj4gZmluZ2VyIGhhdWRyYXVmCkhhdWRyYXVmIGlzdCBuaWNodCBhbndlc2VuZC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogQmVybGluClp1bGV0enQgYXVzZ2Vsb2dndDogTW9uLCAxOS4gRGV6IDE5OTQsIDIyOjIyOjQwICg0MDBkIDIxOjAzOjAwKQpWb2xsZXIgTmFtZTogSGF1ZHJhdWYgZGVyIGFuZ2VoZW5kZSBNYWdpZXIKUmFzc2U6IE1lbnNjaCwgIEdpbGRlOiBBYmVudGV1cmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiA4ZCAxODowNjowNCwgICBTcGllbGVybGV2ZWw6IDE5CgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBMZWJlbiBpc3Qgc2Nob2VuIChUYXNoYSwgMjQuIEphbiAxOTk2LCAyMjowMzowNSk6CkxlYmVuIHRyaXR0IGF1cyBlaW5lciBTY2h3ZWZlbHdvbGtlLgoKTGViZW4gaGF0IGdlcmFkZSBkaWUgVmVyYmluZHVuZyB6dSBNb3JnZW5HcmF1ZW4gZ2VrYXBwdC4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIExlYmVuLgoKTGViZW4gd2VpbHQgd2llZGVyIHVudGVyIGRlbiBMZWJlbmRlbi4KTGViZW4gdmVybGFlc3N0IGRpZXNlIFdlbHQuCgoKQWNoIG5lZSwgaXMgZGF0IG5lZCBzY2hlZW4/IDopCgpUYXNoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTlBDcyEgKEx1cHVzLCAyNS4gSmFuIDE5OTYsIDAxOjA1OjIyKToKSGkhCgpBbHNvIGRpZXNlIE5QQ3Mgd2VyZGVuIGF1Y2ggaW1tZXIgZHJlaXN0ZXIuLi4KCj4gU3BhdHogc2FndDogSXN0IEthcmF0ZSBndXQ/CkR1IHNhZ3N0OiBXZW5uIG1hbnMga2FubiBqYSA6KQo+IENoZW4gS3VlaSB6ZWljaG5ldCBnZWxhbmd3ZWlsdCBlaW4gcGFhciBGaWd1cmVuIGluIGRlbiBTYW5kLgpTcGF0eiBzYWd0OiBVbmQsIGthbm5zdCBkdXM/CkR1IHNhZ3N0OiBOdXIgbWFlc3NpZy4KRHUgc2Fnc3Q6IEljaCBmYW5nZSBsYW5nc2FtIGFuLCBpbiBlaW5lbiBicmF1Y2hiYXJlbiBiZXJlaWNoIHp1IGtvbW1lbi4KPiBDaGVuIEt1ZWkgc2NoYXV0IERpY2ggc3BvZXR0aXNjaCBhbi4KCgpncnVtbWVsbmQsIEx1cHVzCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW0gTGFkZW4gKEFsaW5lLCAyNS4gSmFuIDE5OTYsIDA5OjAwOjM3KToKCkRpZSBIYWVuZGxlciBoaWVyIGltIE1HIHdlcmRlbiBhdWNoIGltbWVyIGRyZWlzdGVyOgoKPiB2ZXJrYXVmZSBzY2hsdWVzc2VsCk5hY2ggZGVyIGFrdHVlbGxlbiBNYXJrdGxhZ2Uga2FubiBpY2ggRGlyIGRhZnVlciBudXIgODMzIE11ZW56ZW4gYmlldGVuLApvYndvaGwgZWluIFNjaGx1ZXNzZWwgZWlnZW50bGljaCAxMDAwIE11ZW56ZW4gd2VydCB3YWVyZS4gV2lsbHN0IER1IGVzIG1pcgpkYWZ1ZXIgdWViZXJsYXNzZW4/IChqYS9uZWluKQoKTWl0IGJlZGF1ZXJuIHRpcHAgaWNoIGRhbm4gamEgKFdlciBsYWV1ZnQgc2Nob24gZ2VybmUgenVtIG5hZWNoc3RlbiBMYWRlbj8pCgpXYXMga29tbXQgZGFubj8KCkR1IGthbm5zdCBkZW4gU2NobHVlc3NlbCBuaWNodCB2ZXJrYXVmZW4hCgpGcmVjaGhlaXQhCkFsaW5lIChpbW1lciBub2NoIG1pdCBTY2hsdWVzc2VsISkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYXMgTGViZW4gaXN0IHNjaG9lbiAoQ3JlYXRpdmUsIDI1LiBKYW4gMTk5NiwgMDk6MjM6NDMpOgp+IyEgcm49VGFzaGEgcnQ9ODIyNTE3Mzg1Cn4jISB0aWQ9ODIyNTE3Mzg1CgpKYSwgZGF0IGlzIHNjaG9lbiAtIHZvciBhbGxlbTogJ0xlYmVuIHZlcmxhZXNzdCBkaWVzZSBXZWx0JyA6KQotQ3JlYS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhbHRlciBzYWNrLi4uIChDYXJhZGhyYXMsIDI1LiBKYW4gMTk5NiwgMDk6NDQ6MDIpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTgyMjUwNzk3NQp+IyEgdGlkPTgyMjUwNzk3NQpBbHNvIHdhcyBkYSBkZXIgV2l0eiBkcmFuIHdhciBoYWIgaWNoIGpldHp0IGFiZXIgbmljaHQga2FwaWVydCwKQ2F0d2VhemxlLiAqZ3J1ZWJlbHN0YXVuKiAqa29wZmtyYXR6KgoKICAgICAgQ2FyYWRocmFzIC0gc2l0enQgYXVmIHNlaW5lciBMZWl0dW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBpbiBlaW5lbSBGb3J0dW5lIENvb2tpZS4uLiAoWWVuZGksIDI1LiBKYW4gMTk5NiwgMTE6MTk6MTQpOgoKCiAgICAgICAgICAgICAgICBUaGUgU1RBUiBXQVJTIFNvbmcKICAgICAgICBTdW5nIHRvIHRoZSB0dW5lIG9mICJMb2xhIiwgYnkgdGhlIEtpbmtzOgoKSSBtZXQgaGltIGluIGEgc3dhbXAgZG93biBpbiBEYWdvYmFoCldoZXJlIGl0IGJ1YmJsZXMgYWxsIHRoZSB0aW1lIGxpa2UgYSBnaWFudCBjYWJpbmV0IHNvZGEKICAgICAgICBTLU8tRC1BIHNvZGEKSSBzYXcgdGhlIGxpdHRsZSBydW50IHNpdHRpbmcgdGhlcmUgb24gYSBsb2cKSSBhc2tlZCBoaW0gaGlzIG5hbWUgYW5kIGluIGEgcmFzcHkgdm9pY2UgaGUgc2FpZCBZb2RhCiAgICAgICAgWS1PLUQtQSBZb2RhLCBZby1Zby1Zby1ZbyBZb2RhCgpXZWxsIEkndmUgYmVlbiBhcm91bmQgYnV0IEkgYWluJ3QgbmV2ZXIgc2VlbgpBIGd1eSB3aG8gbG9va3MgbGlrZSBhIE11cHBldCBidXQgaGUncyB3cmlua2xlZCBhbmQgZ3JlZW4KICAgICAgICBPaCBteSBZb2RhLCBZby1Zby1Zby1ZbyBZb2RhCldlbGwgSSdtIG5vdCBkdW1iIGJ1dCBJIGNhbid0IHVuZGVyc3RhbmQKSG93IGhlIGNhbiByYWlzZSBtZSBpbiB0aGUgYWlyIGp1c3QgYnkgcmFpc2luZyBoaXMgaGFuZAogICAgICAgIE9oIG15IFlvZGEsIFlvLVlvLVlvLVlvIFlvZGEsIFlvLVlvLVlvLVlvIFlvZGEKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NodWxkZW4gKFNwYXR6LCAyNS4gSmFuIDE5OTYsIDE0OjIyOjUzKToKRHUgYmVmaW5kZXN0IERpY2ggaW4gZGVyIEVpbmdhbmdzaGFsbGUgZGVyIFp3ZXJnZW5zdGFkdC4gRGllIFp3ZXJnZSBoYWJlbgpzaWNoIGhpZXIgdGllZiBpbiBkaWUgU2lsYmVyYmVyZ2UgaGluZWluZ2VncmFiZW4gdW5kIHNpY2ggZWluZSBIZWltYXQgZ2UtCnNjaGFmZmVuLiBEaWUgV2FlbmRlIHNpbmQga3Vuc3R2b2xsIGJlaGF1ZW4gdW5kIHNwaWVnZWxnbGF0dCBwb2xpZXJ0LgpVZWJlcmFsbCBoYWVuZ2VuIEZhY2tlbG4sIGRpZSBkZW4gUmF1bSB0YWdoZWxsIGJlbGV1Y2h0ZW4uIEltIFN1ZWRlbiBmdWVocnQKZWluIEdhbmcgdGllZmVyIGluIGRlbiBCZXJnIHVuZCBpbSBOb3JkZW4gaXN0IGRlciBBdXNnYW5nIGF1ZiBkaWUgSG9jaGViZW5lLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuIHVuZCBub3JkZW4uCkVpbiBad2VyZ2Vud2FlY2h0ZXIuCkVpbiBad2VyZ2Vud2FlY2h0ZXIuCi03MCBNdWVuemVuLgpFaW4gTGVkZXJoZWxtLgpFaW5lIFp3ZXJnZW5heHQuCkVpbmUgTGVkZXJydWVzdHVuZy4KRWluIExlZGVyaGVsbS4KRHJhZ29uZmlnaHRlciBTbHlmb3guCgpEQVMgR2VsZCBuZWhtIGljaCBuaWNodCA6LSkKClNwYXR6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYWxkIGlzdCBnZXN1bmQuLiA6KSAoVmVyd2lycnVuZywgMjYuIEphbiAxOTk2LCAwODozODo0NCk6CkViZW4gbGl2ZSBpbSBXYWxkOgoKRGVyIFdhbGRkcmFjaGUgc2FndDogRnJpc2NoZSBMdWZ0IHR1dCBzbyByaWNodGlnIGd1dC4KRWluZSBoZXJybGljaGUgV2Flcm1lIGdlaHQgdm9uIERlaW5lbSBBbXVsZXR0IGF1cywgdW5kIER1IGZ1ZWhsc3QKRGljaCBwcmltYS4KCnNpY2ggYW4gZGVuIFdhbGRkcmFjaGVuIGt1c2NoZWxuZCwgVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdld2ljaHRpZ2UgR2VkYW5rZW4uLiAoVmVyd2lycnVuZywgMjYuIEphbiAxOTk2LCAwOToyNDo0Mik6Ci4uClNpbHZhbmEgZGVua3QgICAuIG8gTyAoSG1tbSkKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYSwgamEgZGllIEp1Z2VuZCAoQWxpbmUsIDI2LiBKYW4gMTk5NiwgMDk6NTk6MjkpOgoKTWFuY2htYWwgZnVlaGwgaWNoIG1pY2ggZWluZmFjaCBudXIgYWx0IGhpZXIuLi4uLgoKW0FsbGdlbWVpbjpTY2huYXR0ZWwgd2Fja2VsdCBtaXQgZGVtIFNjaHdhZW56Y2hlbi5dCkRlciBMb2V3ZW56YWhuIGJsdWJiZXJ0IHZvciBzaWNoIGhpbi4KRGVyIExvZXdlbnphaG4gYmx1YmJlcnQgdm9yIHNpY2ggaGluLgpbQWxsZ2VtZWluOlR3ZWVnIHNjaG5laWRldCBlcyBpaHIgYWJdCkRlciBMb2V3ZW56YWhuIGJsdWJiZXJ0IHZvciBzaWNoIGhpbi4KRGVyIExvZXdlbnphaG4gYmx1YmJlcnQgdm9yIHNpY2ggaGluLgpEZXIgTG9ld2VuemFobiBibHViYmVydCB2b3Igc2ljaCBoaW4uCkRlciBMb2V3ZW56YWhuIGJsdWJiZXJ0IHZvciBzaWNoIGhpbi4KW0FsbGdlbWVpbjpQaXR0aWVdIE1vdmUgWU9VUiBBU1NTU1NTU1NTU1NTCkRlciBMb2V3ZW56YWhuIGJsdWJiZXJ0IHZvciBzaWNoIGhpbi4KRGVyIExvZXdlbnphaG4gYmx1YmJlcnQgdm9yIHNpY2ggaGluLgpEZXIgTG9ld2VuemFobiBibHViYmVydCB2b3Igc2ljaCBoaW4uCkRlciBMb2V3ZW56YWhuIGJsdWJiZXJ0IHZvciBzaWNoIGhpbi4KW0FsbGdlbWVpbjpTY2huYXR0ZWxdIFRXRUVHIFRXV0VFRyAuLi5rcmFlY2h6Li4obmFrIG5hayBuYWspCkRlciBMb2V3ZW56YWhuIGJsdWJiZXJ0IHZvciBzaWNoIGhpbi4KRGVyIExvZXdlbnphaG4gYmx1YmJlcnQgdm9yIHNpY2ggaGluLgpEZXIgTG9ld2VuemFobiBibHViYmVydCB2b3Igc2ljaCBoaW4uCltBbGxnZW1laW46VHdlZWcgaGF0IEFwcGV0aXQgYXVmIEVudGVuZ2VzY2huZXR6ZWx0ZXNdCkRlciBMb2V3ZW56YWhuIGJsdWJiZXJ0IHZvciBzaWNoIGhpbi4KRGVyIExvZXdlbnphaG4gYmx1YmJlcnQgdm9yIHNpY2ggaGluLgpbQWxsZ2VtZWluOlNjaG5hdHRlbF0gYXUgYXUgYXUgYXUuLi5oZXVsIChuYWsgbmFrIG5haykKW0FsbGdlbWVpbjpUYXJhbW9uXSBsYXNzIHR3ZWVnIGluIHJ1aGUhIQoKTWl0IGRlbSBMb2V3ZW56YWhuIGltIEhpbnRlcmdydW5kIGVyaW5uZXJ0IG1pY2ggZGFzIHN0YXJrIGFuIGVpbmUKRGlza28gaGllciBpbSBNRy4gKnNldWZ6KgoKQWxpbmUgKEdyZWlzaW4gdW5kIGZyb2ggZGFzIGRpZSBLaWRkaWVzIGRpZSBDYXBzLUxvY2stVGFzdGUgbm9jaCBuaWNodAplbnRkZWNrdCBoYWJlbiEpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXb2hpbiBkZW4gbnVuIChMYWlsYSwgMjYuIEphbiAxOTk2LCAxNDoxMjo1MCk6CkR1cmluIHdlaXNzIGF1Y2ggbmljaHQgd29oaW4gZXIgd2lsbDoKCiBEdXJpbiBzcHJpbmd0IHdhZ2VtdXRpZyBoZXJlaW4uCkR1cmluIGdlaHQgbmFjaCBOb3JkZW4uCkR1cmluIHNwcmluZ3Qgd2FnZW11dGlnIGhlcmVpbi4KRHVyaW4gZ2VodCBuYWNoIFN1ZWRlbi4KRHVyaW4gc3ByaW5ndCB3YWdlbXV0aWcgaGVyZWluLgpEdXJpbiBnZWh0IG5hY2ggTm9yZGVuLgpEdXJpbiBzcHJpbmd0IHdhZ2VtdXRpZyBoZXJlaW4uCkR1cmluIGdlaHQgbmFjaCBTdWVkZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2V5IGxldHp0ZXIgc2NoZWludG9kIChSYWZmaSwgMjYuIEphbiAxOTk2LCAxNDo1MDoxOCk6CgpFaW5lIEJhbmsga25hcnJ0LgpFcnNjaHJvY2tlbiBzcHJpbmdzdCBEdSB6dXIgU2VpdGUuCkR1IGhvZXJzdCBlaW5lIGdld2FsdGlnZSBFeHBsb3Npb24hCkRpZSB6ZXJmZXR6dGVuIFVlYmVycmVzdGUgdm9uIEtleSBmYWxsZW4gdm9tIEhpbW1lbCEKRGVyIFByaWVzdGVyIGZyYWd0OiBXaWxsc3QgRHUgdW5zZXJlciBLaXJjaGUgYmVpdHJldGVuPwpbQWxsZ2VtZWluOktleV0gVWZmISEhCkRlciBQcmllc3RlciBmcmFndDogV2lsbHN0IER1IHVuc2VyZXIgS2lyY2hlIGJlaXRyZXRlbj8KW0FsbGdlbWVpbjpNaWNyb10gSWdpdApbQWxsZ2VtZWluOkplbWFuZCBsYWNodF0KRHUgdGVpbHN0IEtleSBtaXQ6IHdhc3Mgd2FyIGRlbm4gZGFzID8KS2V5IGlzdCBnZXJhZGUgbmljaHQgZGE6IHN0ZXJiZSBmdWVyIG1laW5lIGF1c3J1ZSEhIDstKSkKRGVyIFByaWVzdGVyIG11cm1lbHQgZWluIEdlYmV0LgpbQWxsZ2VtZWluOkhlbGxyYWlzZXJdIGVzIHJlZ25ldCBibHV0ICEhIQpbQmVpbGVpZDpBbGJvaW4gZ2VodCBzaWNoIGVyc3RtYWwgYW5nZWVrZWx0IGR1c2NoZW5dCltBbGxnZW1laW46S2V5XSBVZmYgaXN0IGphIGRpZSBoYWVydGUhISBlcyBtYWNodCBrbGljayB1bmQgaWNoIGhhYiAxNTAgbHAncwpbQWxsZ2VtZWluOktleV0gd2VuaWdlciEhCkVpbmUgS2VyemUgZmxhY2tlcnQuCltBbGxnZW1laW46S290emJyb2NrZW5dIHdvIHdhciBkYXM/CltBbGxnZW1laW46Q3JlYXRpdmVdIEhtLi4uIER1IGxlYnN0IGphIG5vY2gsIEtleSA6CkVsdm5pa3MgVWViZXJyZXN0ZSBmbGllZ2VuIHVlYmVyIGRhcyBWZXJsb3JlbmUgTGFuZC4KW0FsbGdlbWVpbjpLZXldIFdpZSBoYWJ0IGlociBkYXMgZGVubiBtaXRnZWtyaWVndD8/CltBbGxnZW1laW46S2V5XSBHZWlsIERhcyBnZWZhZWxsdCBtaXIhIQpbQWxsZ2VtZWluOktleSBncmluc3RdCltBbGxnZW1laW46WmFyZG96XSBEdSBsZWJzdCBqYSBub2NoLCBtdXNzIGVpbiBCdWcgc2VpbgpbQWxsZ2VtZWluOkVuZ3l3dWNrXSBIaWxmIG5hY2gsIFphcmRvei4uCkRlciBQcmllc3RlciBtdXJtZWx0IGVpbiBHZWJldC4KW0FsbGdlbWVpbjpNaWNybyBzdG9wZnQgS2V5IGVpbmUgU29ja2UgaW4gZGVuIGR1cmNocyBsYWNoZW4gd2VpdCBvZmZlbmVuCk11bmRdCltBbGxnZW1laW46S2V5XSBIbW0gV2FzIGlzdCBlaW4gYnVnPz8gRGFzIGljaCBsZWJlPz8KW0FsbGdlbWVpbjpLZXkgZ3JpbnN0XQoKU2NobHVzc2ZvbGdlcnVuZ2VuOgphKSBJY2ggbWFnIGRlbiBPcmtwcmllc3RlciAtIGlyZ2VuZHdpZSBwYXNzZW5kCmIpIFdhciB3b2hsIG5peCBtaXQgTnIuIDk2IEtleSAhCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVG9kIGVpbmVzIEthbXBmendlcmdlcy4gKFJhZmZpLCAyNi4gSmFuIDE5OTYsIDIxOjQ1OjExKToKCkVpZ2VudGxpY2ggZ2Vob2VydHMgamEgbmFjaCBBTlpFSUdFTi5UT0RFU0FOWkVJR0VOIQoKW0FsbGdlbWVpbjpSeW5lXSBydWRpcmF0dGVyIGhhdCBzcGFzcyBkcmFuIG1pY2ggenUgYWVyZ2Vybi4genVtIGRhbmsgYmVnZWhlCltBbGxnZW1laW46UnluZV0gaWNoIHNlbGJzdG1vcmQKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIGF1IGphLCBndXQKW1RvZDpdIFBhYXIgU2tpZXIgaGF0IGdlcmFkZSBSb2VzdGkgdW1nZWJyYWNodC4KW1RvZDpQYWFyIFNraWVyXSBFaW4gc2VsYnN0dmVyc2NodWxkZXRlciBTa2l1bmZhbGwgd2FyIGRlciBHcnVuZC4KW1RvZDpdIFJvYmluIGhhdCBnZXJhZGUgUnluZSB1bWdlYnJhY2h0LgpTbHlmb3ggcnVmdDogUllORSEhISEhISEhISEhISEhISA6KCgoKCgoKCgoKCgoKCgoKCgKW0FsbGdlbWVpbjpEdXJpbl0gYXVmIHdlbGNoZSBXZWlzZSA/CltCZWlsZWlkOk15c2VsZl0gYmVpbGVpZApbQmVpbGVpZDpSdWRpcmF0dGVyXSBSWU5FIERVIERPT0YKPiBmaW5nZXIgcnluZQpSeW5lIGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBNdWVuc3Rlci4KVm9sbGVyIE5hbWU6IDxBIEhSRUYgUnluZSBAbWcudW5pLW11ZW5zdGVyLmRlPiA8SU1HIEJPUkRFUj0wClNPVVJDRT1iYXR0bGVkd2FyZi5naWY+CkhvcHBsYSwgZWluIEdlaXN0IQpSYXNzZTogWndlcmcsICBHaWxkZTogS2FyYXRlLCAgR2VzY2hsZWNodDogbWFlbm5saWNoClNwaWVsZXJsZXZlbDogMzkgKFNlaGVyKSwgICBHaWxkZW5sZXZlbDogMTcKVmVyaGVpcmF0ZXQgbWl0OiBSdWRpcmF0dGVyIHVuZCBFcHMKU2VpdCBkZW0gMzAuMTEuJzk0IGJlcmVpdHMgMTMgbWFsIGdlc3RvcmJlbgpQcm9qZWt0OiBQX0xhc3RraWxsZXIgW0VpbiBIeWRyYWtvcGZdIC8gMTEuNzIzIG1pbyBlcHMgLSBSQUNIRSEhIQpbQmVpbGVpZDpTeW1iaW9udF0gV0FTU1NTU1NTPwpbQmVpbGVpZDpSYWZmaV0gV0lFQklUVEUgPwpbQmVpbGVpZDpDaGVhc3kgd3VlbnNjaHQgUnluZSBlaW5lIGFuZ2VuZWhtZSBUb2Rlc3NlcXVlbnoKW0JlaWxlaWQ6UnVkaXJhdHRlcl0gSUNIIERBQ0hURSBERVIgTUFDSFQgUVVBVFNDSApbQmVpbGVpZDpLZXldIEJlaWxlaWQhISBIbW0gc2FnIGRvY2ggd2FzIGRhbm4gbWFjaCBpY2ggbWl0ISEgOy0pKQpbQmVpbGVpZDpBc2hhbiBzdGF1bnRdCltBbGxnZW1laW46RGF1ZXJnYXN0XSBuZWUsIGRlciBNYXJhdGhvbiBpbiBOWQpbQmVpbGVpZDpDaHVya2llXSB3b3csIG9oIG9oIEJFSUxFSUQKW0FsbGdlbWVpbjpEdXJpbl0gUnVkaSBvYiBkYXMgUnluZSB1bWJyaW5ndCAuLiBpY2ggd2Vpc3MgbmV0CltCZWlsZWlkOlJ1ZGlyYXR0ZXIgaXN0IHNjaHVsZC4KW0JlaWxlaWQ6QXNoYW5dIGJlaWxlaWQgOigoKCgoCltCZWlsZWlkOkNhcmFkaHJhc10gR3JhdHMgUnVkaQpbQmVpbGVpZDpSdWRpcmF0dGVyIGVyYmxlaWNodF0KW0JlaWxlaWQ6TWltb3NlXSBvb29jaCBSeW5lLCBiZWlsZWlkICprbnVkZGVsIGxpZWIqCltHcmF0czpDYXJhZGhyYXNdIGFlaCBCZWlsZWlkIFJ1ZGkKW1RvZDpdIFJZTkUgVkVSU1VDSFRFLCBNSVIgWlUgRU5US09NTUVOIC0gSkVUWlQgSEFCRSBJQ0ggV0lFREVSIEVYVFJBLUFSQkVJVApbVG9kOl0gTUlUIElITSAuLi4KW1RvZDpdIFRvZGVzc2VobnN1Y2h0IGhhdCBnZXJhZGUgUnluZSB1bWdlYnJhY2h0LgpbQmVpbGVpZDpSdWRpcmF0dGVyXSBkYXMgd2FyIHNlbGJzdG1vcmQKW0JlaWxlaWQ6Q3JlYXRpdmVdIFJZTkU/Pz8KW0JlaWxlaWQ6Q2FyYWRocmFzXSBzY2hvZW4gcml0dWVsbCA6KSBzbyBnZWZhZWxsdCBkYXMgS2FyYXRla2EKW0JlaWxlaWQ6RHVyaW5dIGhhdCBSeW5lIG5lIGtyaXNlID8/CltUb2Q6XSBSWU5FIFZFUlNVQ0hURSwgTUlSIFpVIEVOVEtPTU1FTiAtIEpFVFpUIEhBQkUgSUNIIFdJRURFUiBFWFRSQS1BUkJFSVQKW1RvZDpdIE1JVCBJSE0gLi4uCltUb2Q6XSBUb2Rlc3NlaG5zdWNodCBoYXQgZ2VyYWRlIFJ5bmUgdW1nZWJyYWNodC4KRGVidWdnZXIgYXJnbHQgZWluIHdlbmlnIHZvciBzaWNoIGhpbi4KRGVidWdnZXIgYXJnbHQgZWluIHdlbmlnIHZvciBzaWNoIGhpbi4KRGVidWdnZXIgYXJnbHQgZWluIHdlbmlnIHZvciBzaWNoIGhpbi4KRGVidWdnZXIgYXJnbHQgZWluIHdlbmlnIHZvciBzaWNoIGhpbi4KW0JlaWxlaWQ6UnVkaXJhdHRlcl0gZGVyIHdpbGwgbW5pY2ggd2VpY2hrbG9wcGVuCltCZWlsZWlkOkNhcmFkaHJhc10gbmEgamEsIHNpbmQgamEgbnVyIDE0IE1FUCBnZXdlc2VuCltCZWlsZWlkOkNhcmFkaHJhc10gd2FzIHNvbGxzCltCZWlsZWlkOkR1cmluXSBpbndpZWZlcm4gUnVkaSA/CltCZWlsZWlkOlJhZmZpXSBIYXQgUnluZSBEZXByaXMgPyAtIGRhcyBrYW5uIGRvY2ggbmljaHQgc2VpbiA/IC0gdW5zZXIKW0JlaWxlaWQ6UmFmZmldIG9iZXJ0b2V0ZXIgPwpbQmVpbGVpZDpSdWRpcmF0dGVyXSBpY2ggYmluIGRhcyBzY2h1bGQKW0JlaWxlaWQ6Q2hlYXN5XSBlcmtsYWVydW5nIGJpdHRlLCBzb25zdCB2ZXJzdGVoIGljaCBudXIgQmFobmhvZiwgdW5kIGRpZSBpc3QKW0JlaWxlaWQ6Q2hlYXN5XSBuaWNodCBkYS4KW0JlaWxlaWQ6RHVyaW5dIEZSYXVlbm5ubiAqZ3J1bW1lbCogOykKUnluZSBCdW5keSBzYWd0OiBDYWxsIDU1NS1TSE9FICEuClJ5bmUgQnVuZHkgZm9sZ3QgZWluZW0gaGlsZmxvc2VuIFNjaHVob3BmZXIgbmFjaCBXZXN0ZW4uCltCZWlsZWlkOlJ5bmVdIGRhbmtlIGxldXRlIC0gc28gaGF0cyBlbmRsaWNoIG1hbCBzcGFzcyBnZW1hY2h0IHp1IHN0ZXJiZW4gOi0pCltCZWlsZWlkOkNhcmFkaHJhc10gZ3V0IGdlbWFjaHQsIFJ5bmUKW0JlaWxlaWQ6Q2hlYXN5XSBXYXJ1bSBudXI/CltCZWlsZWlkOkd1eWJydXNoXSB2b24gZGVyIEtsaXBwZSBzcHJpbmdlbiBpc3QgYWJlciBtZWxvZHJhbWF0aXNjaGVyClJ5bmUgQnVuZHkgc2FndDogQ2FsbCA1NTUtU0hPRSAhLgpSeW5lIEJ1bmR5IGZvbGd0IGVpbmVtIGhpbGZsb3NlbiBTY2h1aG9wZmVyIG5hY2ggT3N0ZW4uCltCZWlsZWlkOkR1cmluXSB3ZW5ucyBkaWUgc28gdmllbCBzcGFzcyBtYWNodCBnbGVpY2ggbm9jaG1hbCBSeW5lIDspCltCZWlsZWlkOlJ1ZGlyYXR0ZXJdIGRhcyBoYXQgZXIgZWggdmlvciwgZHVyaW4KW0JlaWxlaWQ6Q3JlYXRpdmVdIHdpZXZpZWwgTUVQUyB3YXJlbnM/IDopCltCZWlsZWlkOlJ1ZGlyYXR0ZXJdIHJ5bmUsIGhpb2VyIGJpdHRlIGF1ZgpbQmVpbGVpZDpEdXJpbl0gaXN0IGRlciBhdWNoIHNvIGJsb2VkIHdpZSBHdXkgPz8/CltCZWlsZWlkOlJ1ZGlyYXR0ZXJdIGJpdHRlCltBYmVudGV1ZXI6Q2FyYWRocmFzXSAyNzAgbWFsIDEvMjIsIGFsc28gMTMgTUVQPwpbQWJlbnRldWVyOkNhcmFkaHJhc10gb3BwcywgZmFsc2NoZXIga2FuYWwKW0JlaWxlaWQ6Q2FyYWRocmFzXSAyNzAgbWFsIDEvMjIsIGFsc28gMTMgTUVQPwpbQmVpbGVpZDpSeW5lXSBqbwpbQmVpbGVpZDpDcmVhdGl2ZV0gbWlzdApbQmVpbGVpZDpSeW5lXSBhYmVyIHJ1ZGlyYXR0ZXIgZ2xhdWJ0ZSBuaWNodCwgZGFzcyBpY2hzIHR1biB3dWVyZGUsIHNpZQpbQmVpbGVpZDpSeW5lXSBkYWNodGUgaWNoIGJsb2VmZmUuCltCZWlsZWlkOkNhcmFkaHJhc10gZ2VodCBkb2NoLCBTbHlmb3gga2FubiBlaW5lIE1pbGxpb24gRVAgcHJvIHN0dW5kZSBtYWNoZW4KW0JlaWxlaWQ6QmVybmhhcmRdIG1lbnNjaCBkaWUga29lbm50ZSBpY2ggZ2VicmF1Y2hlbi4uLgpbQmVpbGVpZDpDcmVhdGl2ZV0gOikKW0JlaWxlaWQ6Q2FyYWRocmFzXSBhbHNvIHNpbmRzIG51ciAxMyBTdHVuZGVuIG1ldHplbG4KW0JlaWxlaWQ6UnVkaXJhdHRlcl0gcnluZSwgYml0dGUKRGVidWdnZXIgc2FndDogc3RpbW10CltCZWlsZWlkOkNyZWF0aXZlXSBPbmNlIG1vcmUsIFJ5bmUgOikKW0JlaWxlaWQ6UnVkaXJhdHRlcl0gaGFsdHMgbWF1bCwgY3JlYQpbQWxsZ2VtZWluOlNseWZveF0gQWNoLCB1ZWJyaWdlbnMsIFJ5bmUsIER1IHNvbGx0ZXN0IERpY2ggc2NodGFlbWVuLCBkYXNzIER1CltBbGxnZW1laW46U2x5Zm94XSBkaWUgZWluZmFjaHN0ZSBRdWVzdCBub2NoIG5pY2h0IGhhc3QhIDspCltCZWlsZWlkOlJhZmZpXSBhYmVyIGRhcyB3YXIgZG9jaCAyIG1hbCBzdGVyYmVuIG9kZXIgPwpEZWJ1Z2dlciBncmluc3QuCltCZWlsZWlkOkNoZWFzeV0gZ2FueiBzY2hvZW4genluaXNjaCBoZXV0ZSwgQ3JlYSoKW0FsbGdlbWVpbjpTbHlmb3hdIFVuZCBkYXMgYWxzIGVpbnppZ3N0ZS4gKmdyaW5zKgpbQWxsZ2VtZWluOlJ5bmVdIGljaCBwYWNrIGRpZSBuaWNodCBzbHksIGljaCBrcmllZyBkaWUgc3ludGF4ZW4gZWluZmFjaCBuaWNodApbQWxsZ2VtZWluOlJ5bmVdIGdlYmFja2VuCltBbGxnZW1laW46V2ludGVyXSB3YXMgZGVubiBzY2hyYWF0PwpbQWxsZ2VtZWluOkJlcm5oYXJkXSBkYW5uIGZyYWcgc2lsdmFubwpbQWxsZ2VtZWluOkR1cmluXSB3ZW5uIGljaCBzaWUgbWFsIGhhYmVuIHNvbGx0ZSBrYW5uc3QgZWluIHBhYXIgdGlwcyBkYXp1CltBbGxnZW1laW46RHVyaW5dIGhhYmVuIDspClJ5bmUgQnVuZHkgc2FndDogQ2FsbCA1NTUtU0hPRSAhLgpSeW5lIEJ1bmR5IGZvbGd0IGVpbmVtIGhpbGZsb3NlbiBTY2h1aG9wZmVyIG5hY2ggV2VzdGVuLgpbQWxsZ2VtZWluOldpbnRlcl0ga2FubiBtYWwgZWluIG1hZ2llciBoZXJrb21tZW4gZGVyIGdyYWQgbGFuZ2V3ZWlsZSBoYXQ/CltBbGxnZW1laW46UmFmZmldIFNpZWdlbHJpbmcgPyBkYXMgdmVyc3RlaCBpY2ggOikKW0JlaWxlaWQ6UnluZV0gc28sIGljaCBnZWhlIGpldHp0LCBiaXMgc3BhZXRlciBsZXV0ZQpbQWxsZ2VtZWluOkhhbnNdIE5laW4sIGljaCB6YXBwIERpY2ggbmljaHQKW0FsbGdlbWVpbjpLZXldIEJ5ZSByeW5lIQpbQWxsZ2VtZWluOkJlcm5oYXJkXSBieWUKW0FsbGdlbWVpbjpDcmVhdGl2ZV0gd2VjaCB3YXIgZXIKW0FsbGdlbWVpbjpSYWZmaV0gU2VydnVzIHJ5bmUKW0FsbGdlbWVpbjpXaW50ZXJdIGljaCB3aWxsIG5pY2h0IGdlemFwcHQgd2VyZGVuLi4uaGllciBpc3QgbnVyIGVpbgpbQWxsZ2VtZWluOldpbnRlcl0gcHJvYmxlbS4uLgpbQmVpbGVpZDpSdWRpcmF0dGVyIHNpdHp0IGJsZWljaCBhbiBpaHJlbSBSZWNobmVyLl0KQ2FyYWRocmFzIG5pY2t0IERlYnVnZ2VyIHp1LgpbQmVpbGVpZDpDcmVhdGl2ZV0gaGV5Li4uIDEzIE1FUCBzaW4gZG9jaCBuaXggOykKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIGtpY2hlcgpbQmVpbGVpZDpDcmVhdGl2ZV0gb2RlciBnZWh0cyB1bXMgUHJpbnppcD8KW0FsbGdlbWVpbjpSdWRpcmF0dGVyIGdlaHRdCltBbGxnZW1laW46Q2hlYXN5XSBib2VoLi4uIGRpZSBTZWhlciBmbHVlY2h0ZW4gYXVzIGRlbSBNVUQgOigKCipFSW0gbWl0dGxlcmVyIFNjaG9jayoKCkdydXNzCkguCihub2NoIGdhbnogcGVycGxleCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgbWljcm8uLi4uIChDaGVhc3ksIDI2LiBKYW4gMTk5NiwgMjI6MTQ6MTQpOgpbQWxsZ2VtZWluOk1pY3JvXSBXYXMgaXN0IGRlciB1bnRlcnNjaGllZCB6d2lzY2hlbiBzY3JpcHQgdW5kIEtvbXBsZXR0CltBbGxnZW1laW46TWljcm9dIGxvZXN1bmcgPwpEZXIgSG9iYml0d2FlY2h0ZXIgemllaHQgZWluZSBBdWdlbmJyYXVlIGhvY2guCgoqcm90ZmwqCi1DaGVhc3kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmR1bmtlbGVsZmVuIHNpbmQgem9tYmllcy4gaWNoIHd1c3N0ZSBlcyAoU251Z2dsZSwgMjYuIEphbiAxOTk2LCAyMjoyNTo1Nyk6CkRlciBXYWVjaHRlciBmYWVsbHQgdG90IHp1IEJvZGVuLgpEZXIgV2FlY2h0ZXIgZmFlbmd0IGRlbiBCdW1lcmFuZyBhYi4KIERlciBXYWVjaHRlciB3aXJmdCBkZW4gQnVtZXJhbmcuCkRlciBXYWVjaHRlciB3ZWljaHQgZGVtIEJ1bWVyYW5nIGdlcmFkZSBub2NoIHJlY2h0emVpdGlnIGF1cy4KRHUgZmFlbmdzdCBkZW4gQnVtZXJhbmcgZ2VzY2hpY2t0LgoKZ3JpbnNlbmQsClNudWdnbGUKZmFuZ2UgYnVtZXJhbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvbiBoaW50ZW4gZHVyY2ggZGllIEJydXN0IGlucyBBdWdlLi4uIChEaG9qYWt0LCAyNy4gSmFuIDE5OTYsIDAxOjUwOjU4KToKPiB4IHJpbmcKRHUgZmluZGVzdCBhbiBlaW5lbSBJcmlkaXVtcmluZyBrZWluIHJpbmcuCkRlaW4gQmxpY2sgd2VuZGV0IHNpY2ggZGVyIFVtZ2VidW5nIHp1LgpFaW4gUmluZyBhdXMgZGVtIGJsYWV1bGljaCBzY2hpbW1lcm5kZW4gTWV0YWxsIElyaWRpdW0uCgpOYSwgZGEgaGF0cyBkb2NoIG5vY2ggZ2VrbGFwcHQuLi4gYXVjaCB1bSBkaWUgZWNrZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCBuYSB3ZW5uIGRhcyBrZWluIGJsb2VkZXIgYnVnIGlzdC4uLiAoQ2hlYXN5LCAyNy4gSmFuIDE5OTYsIDAzOjE2OjMxKToKPiBzYyBzdGVpbmUKRGllIFN0ZWluZSBzaW5kIGF1cyBkZW0gR2ViaXJnZSBoZXJ1bnRlcmdlZmFsbGVuLiBFcyBzaW5kIGVpbmZhY2hlCmdyYXVlIEdyYW5pdGJyb2NrZW4sIGF1ZiBkZXIgV2VzdHNlaXRlIHNpbmQgc2llIG1pdCBNb29zIGJld2FjaHNlbi4KPiBzYyBtb29zCkdld29laG5saWNoZXMgZ3J1ZW5lcyBNb29zLCBlcyB3YWVjaHN0IG1laXN0ZW5zIGF1ZiBkZXIgV2V0dGVyc2VpdGUuCj4gaXNzIG1vb3MKRGllIEZyb3NjaHNjaGVua2VsIHNpbmQgZXJzdGVucyBrYWx0IHVuZCB6d2VpdGVucyByb2guIER1IHdpbGxzdCBzaWUgbGllYmVyCm5pY2h0IGVzc2VuLgoKSGFiIGljaCBkb2NoIGdlc2FndCwgb2Rlcj8KLUNoZWFzeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2huZSB3b3J0ZSAoSmFmLCAyNy4gSmFuIDE5OTYsIDA0OjI4OjA3KToKW1dpc3NlbnNjaGFmdDpBenp1cm9dIFdlciBoYXQgbWVociBGcmF1ZW4/IERhbmNlciBSTCBvZGVyIEFyZGFuYSBWTD8KW1dpc3NlbnNjaGFmdDpDdWNodWxsaW5dIEFyZGFuYSBWTApbV2lzc2Vuc2NoYWZ0OkRhbmNlcl0gREFOS0UhIDotKQoKSmFmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUnVkaXMgZWluZmx1c3MgYXVmIGRhZW1vbmlzY2hlcy4uLiAoSW5za2lwcCwgMjguIEphbiAxOTk2LCAwMjoxODowNik6CgpEdSBoYXN0IGpldHp0IDEzMCBMZWJlbnNwdW5rdGUgdW5kIDg2IE1hZ2llcHVua3RlLgpSdWRpcmF0dGVyIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRGVyIG1hZ2lzY2hlIFNjaHV0eiBkZXIgQ2hhb3NoYXV0IHZlcnNjaHdpbmRldC4KCnRzdHN0cyB2b24gZGVyIGxhc3MgaWNoIG1pY2ggbmltbWVyIGtudWRkZWxuIDstKQoKRGVyIHNjaHdhcnplIEluc2tpcHAuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYXJ0aWtlbCBuYSB3ZW5uIGRhcyBrZWluIGJsb2VkZXIgYnVnIGlzdC4uLiAoQm9pbmcsIDI5LiBKYW4gMTk5NiwgMTQ6MjE6MDApOgp+IyEgcm49Q2hlYXN5IHJ0PTgyMjcwODk5MQp+IyEgdGlkPTgyMjcwODk5MQpKYXUsIGRpZSBuYWVjaHN0ZSBSZWFrdGlvbiBkYXJhdWYgaXN0IGZvbGdlbmRlIFplaWxlOgpmZWhsZXIgZnJvc2Noc2NoZW5rZWw6ZGllIHNjaGVua2VsIGZhbmdlbiBqZWRlbiAnaXNzJyBiZWZlaGwgYWIKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FsZW5kZXJzcHJ1Y2ggKEdyaW1tYm9ybiwgMjkuIEphbiAxOTk2LCAxNjoxMToyOCk6CgpVbmQgaGllciB3aWVkZXIgZGVyIFNwcnVjaCwgZGVuIG1laW4gS2FsZW5kZXIgZnVlciBkaWVzZSBXb2NoZSBhbmJpZXRldDoKCkVpbiBGcmV1bmQgaXN0IGVpbmVyLCBkZXIgYWxsZXMgdm9uIERpciB3ZWlzcyB1bmQgRGljaCBkZW5ub2NoIG1hZy4KKFVuYmVrYW5udCkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTmV1ZXMgR2ViaWV0IChSYWZmaSwgMjkuIEphbiAxOTk2LCAxNzowMTowOCk6CgoxNjo1MCB1bmQgd2llZGVyIGVpbiBBdGhlaXN0IG1laHI6CgoKRGFzIHNpZWh0IG5pY2h0IGd1dCBhdXMgLi4uClNjaHdhcnplIFdvbGtlbiB6aWVoZW4gYXVmLgo+IHNjaGF1CkR1IHN0ZWhzdCB2b3IgZWluaWdlbiByaWVzaWdlbiBTY2huZWVoYXVmZW4sIGRpZSBhdXMgZGVyIEZlcm5lIHdpZQpIdWVnZWwgYXVzc2FoZW4uIEJlaW0gQW5ibGljayBkaWVzZXIgU2NobmVlbWFzc2VuIHVlYmVya29tbXQgRGljaAplaW4gd3VuZGVyYmFyZXIgR2VkYW5rZS4gRHUgZXJpbm5lcnN0IERpY2ggYW4gZGllIGx1c3RpZ2VuIFNjaG5lZS0KYmFsbHNjaGxhY2h0ZW4gaW4gRGVpbmVyIEtpbmRoZWl0LgpNYW4ga29lbm50ZSBkb2NoLi4uIEpBICEgTWFuIGthbm4sIHVuZCBtYW4gc29sbCBzb2dhci4KVmllbCBTcGFzcyBkYWJlaSAhCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBvc3Rlbi4KRWluIHJpZXNpZ2VyLCBhYmVyIG5ldHRlciBTY2huZWVtYW5uLgpZb3UgaGVhciB0aGUgd2FpbGluZyBvZiBhIGJhbnNoZWUuCkJsaXR6ZSB6dWNrZW4uCkdSVU1NRUwhISEKR1JVTU1FTCwgR1JVTU1FTCEhISEhISEhClJVTU1TISBEaXJla3QgbmViZW4gRGlyIHNjaGxhZWd0IGVpbiBCbGl0eiBlaW4uCkJlaW5haGUgd2FlcnN0IER1IHZvciBTY2hyZWNrIGdlc3RvcmJlbi4KRHUgaG9lcnN0IGVpbmUgU3RpbW1lICdOYWVjaHN0ZXMgbWFsIHRyZWZmIGljaCBhYmVyIC4uIHdldHRlbj8nCkR1IGhvZXJzdCBlaW5lIFN0aW1tZSAnTmFlY2hzdGUKPiByZ3JpbnNlIGJvaW5nCkR1IGdyaW5zdCBCb2luZyBhdXMgZGVyIEZlcm5lIGFuLgpEaWUgV29sa2VuIHZlcnppZWhlbiBzaWNoLCBlaW4gc2NoYWxlciBOYWNoZ2VzY2htYWNrIGJsZWlidCBqZWRvY2guCkR1IHppdHRlcnN0IHZvciBFaHJmdXJjaHQgdW5kIGdlbG9ic3QgQmVzc2VydW5nLgpEdSBydWZzdDogaXN0IGd1dCBpY2ggZ2xhdWJlIGFuIGRpY2ggYm9pbmcKPiByb3RmbApQb2xhcmhleGNoZW4gU2NocnVtcGZpIHJ1ZnQ6IGljaCBuaWNodApEdSByb3RmbHN0Lgo+IC1hOmRlbmt0IC4gbyBPIChJY2ggYXVjaCBuaWNodCwgYWJlciBpY2ggdHJhdSBtaWNoIGltIE1vbWVudCBuaWNodCEpCltBbGxnZW1laW46UmFmZmkgZGVua3QgLiBvIE8gKEljaCBhdWNoIG5pY2h0LCBhYmVyIGljaCB0cmF1IG1pY2ggaW0gTW9tZW50Cm5pY2h0ISldCgpHcnVzcwpILgoodWViZXJsZWd0IG9iIGVyIGVzIGRvY2ggbGllYmVyIG1pdCBHcmltbWJvcm4gaGFsdGVuIHNvbGwhKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhcnRpa2VsIG5hIHdlbm4gZGFzIGtlaW4gYmxvZWRlciBidWcgaXN0Li4uIChTaWx2YW5hLCAyOS4gSmFuIDE5OTYsIDE4OjEwOjI3KToKfiMhIHJuPUJvaW5nIHJ0PTgyMjkyMTY2MAp+IyEgdGlkPTgyMjcwODk5MQpKbywgaGFiIGljaCBhdWNoIGdlbWVya3QuLi4gTmEsIGphLiBJc3QgZ2VmaXhlZC4gRGllIG5hZWNoc3RlbiBGcm9lc2NoZQpzb2xsdGVuIGRhcyBlc3NlbiBlcmxhdWJlbi4gOykKClNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCBsaWViZSBPbWJhdGlzIChSYWZmaSwgMjkuIEphbiAxOTk2LCAxODo1OTowOCk6CgpaYXJkb3ogdGVpbHQgRGlyIG1pdDogSWNoIHd1cmRlIGdlend1bmdlbiBkaWVzZW4gRGFlbW9uIHp1IHByb2dyYW1taWVyZW4hCk9tYmF0aXMgc2NocmVpdCBsYXV0LgpEZWluIEZyZXVuZCBLZXkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpPbWJhdGlzIGdpYnQgRGlyIGVpbmVuIGtyYWVmdGlnZW4gVHJpdHQgaW4gZGVuIEhpbnRlcm4uCkR1IGhhc3QgamV0enQgbm9jaCAxNCBMZWJlbnNwdW5rdGUgdW5kIDM5IE1hZ2llcHVua3RlLgpPbWJhdGlzIHN0aWVydCBEaWNoIGJvZXNlIGFuLgpPbWJhdGlzIHJlaXNzdCBhbiBEZWluZW4gTmVydmVuIHVuZCB2ZXJsZXR6dCBEaWNoIGRhZHVyY2guCkR1IGhhc3QgamV0enQgbm9jaCAyMyBMZWJlbnNwdW5rdGUgdW5kIDQzIE1hZ2llcHVua3RlLgpPbWJhdGlzIGVtcGZpZWhsdCBEaXI6IFNlbGJzdG1vcmQgd2FlcmUgbmF0dWVybGljaCBkaWUgTG9lc3VuZyBhbGxlciBEZWluZXIKT21iYXRpcyBlbXBmaWVobHQgRGlyOiBQcm9ibGVtZS4gRGllIFN5bnRheCBpc3QgJ3NlbGJzdGxvZXNjaHVuZycgdW5kIGRhbm4KT21iYXRpcyBlbXBmaWVobHQgRGlyOiBkYXMgUGFzc3dvcnQgZWluZ2ViZW4hIE5peHp1IGRhbmtlbiBmdWVyIGRpZXNlbiBUaXAhCk9tYmF0aXMgZ2lidCBEaXIgZWluZW4gVHJpdHQgaW4gZGVuIEhpbnRlcm4uCk9tYmF0aXMgc2FndDogSWdpdHQhIER1IGVyd2FydGVzdCBqYTogTXlzZWxmLCBIYXRlLCBCaWJvLCBFdGFoLCBHeW51cmEsIE1wYSwKT21iYXRpcyBzYWd0OiBUZXJyb3Jpc3QsIEtoaWRhciwgSm9mLCBCb2luZy4gRGllIHNpbmQgZG9jaCBhbGxlIGRvb29vZiEKCgpSb2ZsIC0gV2FzIHdvaGwgZGllIEJlc2NodWxkaWd0ZW4gZGF2b24gaGFsdGVuIDopCgpHcnVzcwpILgoKClAuUy46IEljaCBtYWcgT21iYXRpcyB3aXJrbGljaCwgZWluemlnZSBBdXNzbmFobWU6CiAgICAgIE9tYmF0aXMgd3VlaGx0IGluIERlaW5lciBBdXNydWVzdHVuZyBoZXJ1bS4KICAgICAgT21iYXRpcyBuaW1tdCBEaXIgMzAwMCBNdWVuemVuIHdlZy4KICAgICAgLSBEYSB3YXIgZGVyIFNwYXNzIHZvcmJlaSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1laW4gQmllciwgRGVpbiBCaWVyLi4uIChDdWNodWxsaW4sIDI5LiBKYW4gMTk5NiwgMjE6NDg6MzMpOgoKW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIEkgZ3Vlc3MgSSdsbCBoYXZlIGEgV2VpemVuIG5vdyAuLi4KLi4uCltBbGxnZW1laW46SGVmZV0gVmllbCBTcGFzcyBDYXR3ZWF6bGUgIQoKbm8gY29tbWVudCwgQ3VjaC4tCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VyYWRlIGluIGRlciBQb3N0Li4uIChSYWZmaSwgMzEuIEphbiAxOTk2LCAxNzo1NzozNik6CgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgVHV5LgpbQWxsZ2VtZWluOlRvbmdhXSBrYW5uIG1pciBqZW1uYWQgc2FnZW4gd28gaWNoIGRlbiBzdXJmZXIgaW4gZGVyIHd1ZXN0ZSBmaW5kZQpbQWxsZ2VtZWluOlRvbmdhXSA/IDotKQpTdXJmZXIga29tbXQgYW4uCk9lemd1ZXIga29tbXQgYW4uCltBbGxnZW1laW46WWFtaWxhXSBpY2ggc3VjaCBqYSBncmFkIHp0cyBtZWluZSBsaWViZQpTdXJmZXIga251ZGRlbHQgT2V6Z3VlciwgQXJ1biwgVHV5LCBXb29keSwgRGljaCB1bmQgU2lxdWUuClN1cmZlciBrbnVkZGVsdCBXb29keSBsaWVidm9sbC4KClJvdGZsLgoKR3J1c3MKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW0gQW5kZXJsYW5kLi4uLiAoQ3VjaHVsbGluLCAzMS4gSmFuIDE5OTYsIDIzOjQ1OjMwKToKW0Vyem1hZ2llcjpNdXBmZWxdIGFhYWFhYWFhYWFhYWFyZ2wKW0Vyem1hZ2llcjpIYWRyYV0gYWVoPwpbRXJ6bWFnaWVyOkhhZHJhIHppdHRlcnQgc2Nob24gbWFsIHZvcnNvcmdsaWNoXQpbRXJ6bWFnaWVyOk11cGZlbF0gZ25pZ25pZ25pCltFcnptYWdpZXI6SGFkcmFdIGtvZW5udGVzdCBkdSBkaWNoIGRldXRsaWNoZXIgYWV1c3Nlcm4/CltFcnptYWdpZXI6TXVwZmVsXSBtb21lbnQgbm9jaApbRXJ6bWFnaWVyOk11cGZlbF0gKGljaCBiaW4gZ2FueiBydWhpZyBpY2ggYmluIGdhbnogcnVoaWcgSUNIIEJJTiBHQU5aIFJVSElHCltFcnptYWdpZXI6TXVwZmVsXSBJIEMgSCAgQiBJIE4gIEcgQSBOIFogIFIgVSBIIEkgRyAgLi4uLgpHYW1lIGRyaXZlciBzaG91dHM6IExQbXVkIHNodXR0aW5nIGRvd24gaW1tZWRpYXRlbHkuCkZhaWxlZCB0byBsb2FkIHNlY3VyZS9zaW11bF9lZnVuCkZhaWxlZCB0byBsb2FkIHNlY3VyZS9zcGFyZV9zaW11bF9lZnVuCkZhaWxlZCB0byBsb2FkIHNlY3VyZS9zaW11bF9lZnVuCkZhaWxlZCB0byBsb2FkIHNlY3VyZS9zcGFyZV9zaW11bF9lZnVuCkZhaWxlZCB0byBsb2FkIHNlY3VyZS9zaW11bF9lZnVuCkZhaWxlZCB0byBsb2FkIHNlY3VyZS9zcGFyZV9zaW11bF9lZnVuCkNsb3NpbmcgZG93bi4KCkdvZXR0bGljaCA6LSkKQ3VjaC4tCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGFuZ2UgbmV0enRvdCBnZXdlc2VuPyAoQ3VjaHVsbGluLCAgMS4gRmViIDE5OTYsIDAyOjA0OjExKToKCltzY2hhdV0KLi4uCkRhcmthbmdlbCBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyIChuZXR6dG90KS4KLi4KCltmaW5nZXIgRGFya2FuZ2VsXQpEYXJrYW5nZWwgaXN0IG5pY2h0IGFud2VzZW5kLgpadWxldHp0IGVpbmdlbG9nZ3Qgdm9uOiBEcmVzZGVuClp1bGV0enQgYXVzZ2Vsb2dndDogRG9uLCAyNi4gSmFuIDE5OTUsIDE3OjMwOjI4ICgzNzBkIDA4OjMxOjA3KQouLi4KCk5lZWlzc2tsYXIuCkN1Y2guLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoIGltIEFuZGVybGFuZC4uLi4gKENyZWF0aXZlLCAgMS4gRmViIDE5OTYsIDA5OjM1OjAxKToKfiMhIHJuPUN1Y2h1bGxpbiBydD04MjMxMjgzMzAKfiMhIHRpZD04MjMxMjgzMzAKCkJpdHRlLCBsaWViZXIgTXVwZmVsLi4uCldBUyBpc3QgZ25pZ25pZ25pPyA6KQpFaW4gbmV1ZXIgQmVmZWhsPyBFaW5lIEZ1bmt0aW9uIG9obmUgKCk/IEVpbmUgdG9sbGUgVmFyaWFibGU/Ckdlc3VjaHQ6IGRpZSB0b2xsc3RlbiBEZXV0dW5nZW4uLi4KLUNyZWEtLCBpbW1lciBmdWVyIGVpbmVuIFdldHRiZXdlcmIgZ3V0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG0sIHdpZSBkYXM/IChDcmVhdGl2ZSwgIDEuIEZlYiAxOTk2LCAxNDozMTo1MCk6CgpTZW1pcmEgcnVmdDogSGlIbyBldmVyeW11ZGRpZSAtIGZ1ZWhsIERpY2ggZ2VrbnVkZGVsdCwgd2VubiBEdSBtYWdzdApTZW1pcmEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKClNlbWlyYSBpcyB1ZWJlcnZvcmVpbGlnIDopCgotQ3JlYS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFBhdXNlIChSZWluZWxkZSwgIDEuIEZlYiAxOTk2LCAxODoyNDowOSk6Cn4jISBybj1Kb2YgcnQ9ODIzMTc4OTI4Cn4jISB0aWQ9ODIzMTc1MzQ2CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgUmVpbmVsZGUsICAxLiBGZWIgMTk5NiwgMTg6MjM6NTJdOgpuYSBqYSBqb2YsCgpkYXMgbWl0IGRlbiA5OSUgaGF0IGRpZSB0ZWxla29tIGF1Y2ggenVyIGphaHJlc3dlbmRlIGdlc2FndCB1bmQgdHJvdHpkZW0KcmVnZW4gc2ljaCBhbGxlIGF1ZiA7KQoKdW5kIGFiIGRhbWl0IC4uLi4KcmVpbmVsZGUKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadXNhdHpnZXJhZXRlIChLcmV0ZWssICAxLiBGZWIgMTk5NiwgMTg6NDE6NDgpOgpIaSEKCkJvZXNlIFp1bmdlbiAoU2FydW1hbiB1bmQgTWVsaW5kYSkgYmVoYXVwdGV0ZW4gbmV1bGljaCBkb2NoIHRhdHNhZWNobGljaCwKZnVlciBtYW5jaGUgSGFyZGNvcmUtTXVkZGVyIChDYXJhZGhyYXMvQ2VsZWJkaWwvRmFudWlkaG9sL01pbmRvbGx1aW4uLi4pCndhZXJlIGVzIG5pY2h0IHNjaGxlY2h0LCBlaW5lbiBFbGVrdHJvcmFzaWVyZXIgbWl0IFNDU0ktQW5zY2hsdXNzIHp1CmVyZmluZGVuLgpJY2ggcGxhZWRpZXJlIGRlc3dlZ2VuIGZ1ZXIgZGllIEVpbmZ1ZWhydW5nIHZvbiAvZGV2L2N1dCAoYWx0ZXJuYXRpdiBhdWNoCmR1cmNoenVudW1tZXJpZXJlbiwgYWxzbyAvZGV2L2N1dDAsIC9kZXYvY3V0MSwgdXN3LiwgamUgbmFjaGRlbSwgd2lldmllbGUKRGV2aWNlcyBkZXIgdmVyd2VuZGV0ZSBTQ1NJIG5vY2ggaGVyZ2lidC4uLikuIFdhZXJlIGFscyBTb25kZXItWnVzYXR6LQpBdXNzdGF0dHVuZyBmdWVyIGplZGVuIE1hZ2llciBkb2NoIGVpbmUgbmV0dGUgSWRlZSwgZGFtaXQgbWFuIGFscyAiRXJzYXR6IgpmdWVyIGRlbiBkb2NoIHJlY2h0IGltYWdpbmFlcmVuIFZlcnRyYWcgd2FzIEVjaHRlcyBpbiBkZXIgSGFuZCBoYXQsIGRhcyBtYW4Kbm9jaCBkYXp1IHByYWt0aXNjaCB2ZXJ3ZXJ0ZW4ga29lbm50ZS4uLiBOYSBqYSwgT3BpcyB3aWUgQ2FyYSoga29lbm50ZW4KbmF0dWVybGljaCBlaW5lbiBlaHJlbmhhbGJlciB2ZXJsaWVoZW4gYmVrb21tZW4sIGFiZXIgbWl0IEVpbnNjaHJhZW5rdW5nZW4sCnouQi4ga2VpbiBMYW5naGFhci1CZXRyaWViLCBvZGVyIG51ciBhdWYgMTYgQml0IHNjaG5laWRlbmQuLi4KCgpOdXIgTWlzdCBpbSBLb3BwIQpLcmV0ZWsKCgpQLlMuOiBTYWVtdGxpY2hlIG9iZW4gZ2VuYW5udGVuIE5hbWVuIHNpbmQgc2VsYnN0dmVyc3RhZW5kbGljaCBhbHMgcmVpbgpoeXBvdGhldGlzY2ggYW56dXNlaGVuLiBUYXRzYWVjaGxpY2ggd3VlcmRlbiBkaWUgYmV0cmVmZmVuZGVuIFBlcnNvbmVuIGRvY2gKd29obCBuaWlpaWlpaWVlZWVlZWVlZWVlIEF1ZXNzZXJ1bmdlbiBkaWVzZXIgQXJ0IHVlYmVyIHdlaHJsb3NlIGtsZWluZSBTZWhlcgp0cmVmZmVuLi4uIE9kZXI/IDopKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktyaXN0YWxsa2FyYXRla2EuLi4/IChOaWNodHMsICAxLiBGZWIgMTk5NiwgMTk6MTc6MDcpOgoKPiB1bnQga3Jpc3RhbGwgaW4gbWlyCkFsbGVzIGlzdCB2b2xsIGRhdm9uLgoKQWNoIDotKSA/Ci0gaGFldHRlIGdlcm5lIGVpbmUgYW5kZXJlIG5vdGlmeV9mYWlsLi4uCiIiCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NyaXB0cyBzaW5kIHNjaGVpc3NlIChHdWxkdWthdCwgIDEuIEZlYiAxOTk2LCAyMDoxMTo0Nyk6CnNjcmlwdHMgc2luZCBzY2hlaXNzZQppY2ggaGFiZSB6b3Jyb3Mgc2NyaXB0IHVlYmVybm9tbWVuLCBlciBwYXJzdCBhdWYgZGVyIGJ1bWVyYW5nIHRyaWZmdCwKem9ycm8gaGF0IGFiZXIgYW5kZXJlIGFsaWFzZSBhbHMgaWNoLCBkaWUgaW0gdHJpZ2dlciBhdXNnZWxvZXN0IHdlcmRlbi4KCmF1ZjogdGVpbGUgem9ycm8gbWl0IGRlciBidW1lcmFuZyB0cmlmZnQsIGZvbGd0IGRhbm4gZm9sZ2VuZGUgc2VxdWVueiEKCkR1IHRlaWxzdCBab3JybyBtaXQ6IGRlciBidW1lcmFuZyB0cmlmZnQKRz5EZXIgbmllZGxpY2hlIFdvbHBlcnRpbmdlcgpHPlRoaXMgaW5mb3JtYXRpb24gaXMgbm90IGF2YWlsYWJsZSEKRz5EZXIgbmllZGxpY2hlLCB3aW56aWdlIFdvbHBlcnRpbmdlciBzYWd0IHVuc2NodWxkaWc6IEVpbnNwcnVjaC4KRz5ab3JybyBzdGVja3QgZWluIEJsdXRzYXVnZXItU2Nod2VydCB6dXJ1ZWNrLgpab3JybyB6dWVja3QgZWluIEJsdXRzYXVnZXItU2Nod2VydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzY3JpcHRzIHNpbmQgc2NoZWlzc2UgKEd1bGR1a2F0LCAgMS4gRmViIDE5OTYsIDIwOjEyOjQ4KToKfiMhIHJuPUd1bGR1a2F0IHJ0PTgyMzIwMTkwNwp+IyEgdGlkPTgyMzIwMTkwNwpvcHMsIHNvIGtvbmZ1cyBzYWggZGFzIGltIHJlYWxsaWZlIG5pY2h0IGF1cywgZGEgaGF0IHdvaGwgZGVyCnRyaWdnZXIgYmVpbSBwYXN0ZW4gdm9uIGRlciBidV9tZXJhbmcgdHJpZmZ0IHdpZWRlciB6dWdlc2NobGFnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHNjcmlwdHMgc2luZCBzY2hlaXNzZSAoR3VsZHVrYXQsICAxLiBGZWIgMTk5NiwgMjA6MTU6MTYpOgp+IyEgcm49R3VsZHVrYXQgcnQ9ODIzMjAxOTY4Cn4jISB0aWQ9ODIzMjAxOTA3Cm1taCwgaWNoIHdvbGx0ZSBub2NoIGtsYXJzdGVsbGVuLCB6b3JybyBpc3QgZWluIGZyZWkgZXJmdW5kZW5lciBuYW1lCgpqZWdsaWNoZSBhZWhubGljaGtlaXQgbWl0IHJlYWxleGlzdGllcmVuZGVuIHBlcnNvbmVuIGlzdCBuYXR1ZXJsaWNoCnJlaW4genVmYWVsbGlnLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthcmF0ZS1ab21iaWVzIGltIHNoaW50byA/IChKaW1kaWdyaXosICAxLiBGZWIgMTk5NiwgMjA6MjY6MzgpOgpIaWhvLApHcmFkZSBpbSBzaGludG8gcGFzc2llcnQ6CiAgR2FiaSBncmVpZnQgRGljaCBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIE1hZS1nZXJpLWtlYWdlIGFuLgpbS2FyYXRlOkdydW1ibGVtYW5dIHdpZSBqZXR6dD8/CiAgR2FiaSBncmVpZnQgRGljaCBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIE1hZS1nZXJpLWtlYWdlIGFuLgogIEdhYmkgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBNYWUtZ2VyaS1rZWFnZSBhbi4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAxNDAgTWFnaWVwdW5rdGUuCiAgR2FiaSBncmVpZnQgRGljaCBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIE1hZS1nZXJpLWtlYWdlIGFuLgpbS2FyYXRlOkNyb2xsYV0gaG9wcGxhLi4uIGdhYmkgZXR3YT8KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAxNDEgTWFnaWVwdW5rdGUuCiAgR2FiaSBncmVpZnQgRGljaCBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIE1hZS1nZXJpLWtlYWdlIGFuLgogIEdhYmkgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBNYWUtZ2VyaS1rZWFnZSBhbi4KW0thcmF0ZTpKaW1EaUdyaXpdIGphCj4gICBHYWJpIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gTWFlLWdlcmkta2VhZ2UgYW4uCltLYXJhdGU6Q3JvbGxhXSBib2VzZSBib2VzZQogIEdhYmkgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBNYWUtZ2VyaS1rZWFnZSBhbi4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAxNDIgTWFnaWVwdW5rdGUuCiAgR2FiaSBncmVpZnQgRGljaCBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIE1hZS1nZXJpLWtlYWdlIGFuLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDE0MyBNYWdpZXB1bmt0ZS4KICBHYWJpIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gTWFlLWdlcmkta2VhZ2UgYW4uCiAgR2FiaSBncmVpZnQgRGljaCBtaXQgZWluZW0gZ2VsdW5nZW5lbiBNYWUtZ2VyaS1rZWFnZSBhbi4KCmV0Yy4uLgppY2ggZnJhZyBtaWNoIHdpZSBJaHIgVWVidW5nc2VmZmVrdCB3YXIuLiBtZWluZXIgd2FyIGdsZWljaCBudWxsLgoKSmRHCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMb2VzY2hnZWZhaHI/IChUYXNoYSwgIDEuIEZlYiAxOTk2LCAyMzowMzo1Nyk6CkhpIQoKQWxzIE1hZyB3ZXJkZSBpY2ggYmVpIGplZGVtIGVpbmxvZ2dlbiBtaXQgZGVtIGh1ZWJzY2hlbiBIaW53ZWlzIGJlZ2x1ZWdja3QsCmRhc3MgU2NyaXB0ZW4gdmVyYm90ZW4gc2VpIGV0Yy4gZXRjLi4gS3VyejogSUNoIGtyaWVnIGplZGVzbWFsIG5lbgpOZXJ2ZW56dXNhbW1lbmJydWNoIHdlbm4gaWNoIG1pY2ggZWlubG9nZ2UuIEVyZ286IEljaCB3ZXJkIG1pciBuZW4gZ2FnIGF1ZgpkaWVzZSBNZWxkdW5nIHNjaHJpZWJlbi4uLi51bmQgd2VyZCBpY2ggZGFubiBkZXN3ZWdlbiBnZWxvZXNjaHQ/CgpWZXJ6d2VpZmVsbmQsIFRhc2hhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTG9lc2NoZ2VmYWhyPyAoRnl0LCAgMS4gRmViIDE5OTYsIDIzOjM1OjAyKToKfiMhIHJuPVRhc2hhIHJ0PTgyMzIxMjIzNwp+IyEgdGlkPTgyMzIxMjIzNwoKR2FnZ2VuIGRhcmZzdGUsIFRhc2hhLiBJY2ggZW1wZmVobGUgIC9nYWcgKiAgLCBkYXMgYmVydWhpZ3QgdW5nZW1laW4uCgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUZWRkeSAoSmltZGlncml6LCAgMi4gRmViIDE5OTYsIDAwOjE4OjEwKToKSGkKZGVyIFRlZGR5IGlzIGFiZXIgdm9yZWlsaWc6CgpEdSBoYXN0IGpldHp0IDE1IExlYmVuc3B1bmt0ZSB1bmQgMzkgTWFnaWVwdW5rdGUuCiAgRGVyIEh5ZHJhd29scGVydGluZ2VyIHRyaWZmdCBEaWNoLgpEdSBoYXN0IGpldHp0IDEwIExlYmVuc3B1bmt0ZSB1bmQgMzkgTWFnaWVwdW5rdGUuCiAgRGVyIEh5ZHJhd29scGVydGluZ2VyIGdyZWlmdCBEaWNoIG1pdCBkZW0gV2lkZGVya29wZiBhbi4KICBEdSB2ZXJzdWNoc3QsIGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBTb2t1dG8tZ3lha3UtbWF3YXNoaS11a2UgYWJ6dXdlaHJlbi4KRHUgaGFzdCBqZXR6dCAxMCBMZWJlbnNwdW5rdGUgdW5kIDM3IE1hZ2llcHVua3RlLgogIERlciBIeWRyYXdvbHBlcnRpbmdlciB0cmlmZnQgRGljaCBoYXJ0LgpEZXIgVGVkZHkga251ZGRlbHQgRGljaCBlaW4gbGV0enRlcyBNYWwuCj4gRWluIEh5ZHJhd29scGVydGluZ2VyIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KQW0gVHVlbXBlbC4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KRWluIFR1cm0uCmRhIGJpbiBpY2ggbm9jaCBnYXIgbmljaHQgdG90IHVuZCBlciBrbnVkZGVsdCBtaWNoIGVpbiBsZXR6dGVzIG1hbAp0c3RzdHN0c3RzCiBjaWFvCgpKZEcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJpZXNlbnd1ZXN0ZW5mbG9oPyAoTmljaHRzLCAgMi4gRmViIDE5OTYsIDAxOjA4OjU3KToKCk5vcmR3ZWcuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuIHVuZCBub3JkZW4uCkVpbiBrbGVpbmVyIFd1ZXN0ZW5mbG9oLgo+IHNjaGFldHogZmxvaApEZXIgV3Vlc3RlbmZsb2ggaXN0IHVuZ2VmYWVociAxNzMgY20gZ3Jvc3MuCkRlciBXdWVzdGVuZmxvaCBoYWVsdCBuaWNodHMgYXVzLgpEZXMgV3Vlc3RlbmZsb2hzIFdhZmZlIGlzdCBsYWVjaGVybGljaC4KRGVzIFd1ZXN0ZW5mbG9ocyBSdWVzdHVuZyBpc3QgemllbWxpY2ggc2NobGVjaHQuCgpydWZlIERhbmNlciBuYWNoIFd1ZXN0ZW5mbG9oCiIiCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG93IHRvIGZpbmQgaW52aXNpYmxlIFdpemFyZHMsIENoYXB0ZXIgMTA5My4uLiAoTmljaHRzLCAgMi4gRmViIDE5OTYsIDAxOjI2OjQzKToKCi4uLgpEZXIgQmF1bSBwYXNzdCBzaWNoIGFuIGRpZSBVbWdlYnVuZyBhbi4KRWluIEdlYnVlc2NoIGtvbW10IGFuLgpFaW5pZ2UgUmFldWJlciB6aWVoZW4gSmVtYW5kZW4gaW4gZWluIEdlYnVlc2NoLgpWZXJtdXRsaWNoIHdvbGxlbiBzaWUgR2VsZC4KRGFzIEdlYnVlc2NoIGJld2VndCBzaWNoLgouLi4KCldlbm4gbWFuIG51ciBpbW1lciBSYWV1YmVyIGRhYmVpIGhhZXR0ZSwgbmU/CgoiIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLiAoSmVycmljbywgIDIuIEZlYiAxOTk2LCAwNjozMjo1NSk6Ckxpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBGcmUsICAyLiBGZWIgMTk5NiwgMDY6MzE6NTAgKDEgVGVpbG5laG1lcikKCkplcnJpY28uLi4uLi4uLi5TCgoKCkplcnJpY28sIGRhcyBlaW5zYW0gU2tyaXB0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRlZGR5IChaaW5vLCAgMi4gRmViIDE5OTYsIDA5OjUyOjQ2KToKfiMhIHJuPUppbWRpZ3JpeiBydD04MjMyMTY2OTAKfiMhIHRpZD04MjMyMTY2OTAKSGkgSmltLAoKZGEgaGFzdCBkdSBzb3p1c2FnZW4gR2x1ZWNrIGdlaGFidCwgYWVobmxpY2hlcyBpc3QgbWlyIGF1Y2ggbWFsIHBhc3NpZXJ0LgpEdSB3aXJzdCBmZXN0c3RlbGxlbiwgZGFzcyBEaXIgdHJvdHogZGVzIGhhcnRlbiBUcmVmZmVycyB2b24gRGVpbmVuIDEwIExwcwprZWluZSBhYmdlem9nZW4gd3VyZGVuLiBEYXMgbGllZ3Qgd29obCBkYXJhbiwgZGFzcyBkZXIgU2NobGFnIGdlbmF1IDEwIExwcwpnZXpvZ2VuIGhhdCwgdW5kIGRhIG1hbiBkYSB0aGVvcmV0aXNjaCB0b3QgaXN0LCBoYXQgZGVyIFRlZGR5IGRpY2gKZ2VrbnVkZGVsdC4KRHVyY2ggaXJnZW5kZWluZW4gZHVtbWVuIFp1ZmFsbCBpc3QgbWFuIGRhbm4gYWJlciBkb2NoIG5pY2h0IHRvdCwgc29uZGVybgpoYXQgYmVpbSBuYWVjaHN0ZW4gaG9jaGdlaWRlbHRlbiBMcCAxMSBMcHMgKHdhcyBtYW4gYWJlciBuaWNodCBzaWVodCwgd2VpbApkZXIKVGVkZHkgYXVzIGlzdCkuIER1IGJpc3Qgc296dXNhZ2VuIGRlbSBUb2Qgdm9uIGRlciBTY2hpcHBlIGdlc3BydW5nZW4uLi4KCk1haGF0bWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkphamEgKFphcmRveiwgIDIuIEZlYiAxOTk2LCAxMToxOToxNSk6CldhcyBtYW5jaG1hbCBkb2NoIExvZy1GaWxlcyBzbyBhbGxlcyB6dSBUYWdlIGJyaW5nZW4gOikKU2xhc2ggdW5kIEVsb3JhIChEb24sIDEuIEZlYiAxOTk2LCAxOToyNzoxMykgaGFiZW4gZGllIEhlYmVsIGdlem9nZW4uCgpEdW1kaWR1bSA6KQoKQ2lhbyBaYXJkb3oKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMb2VzY2hnZWZhaHI/IChGcmFkbywgIDIuIEZlYiAxOTk2LCAxMzowNDoyNCk6Cn4jISBybj1UYXNoYSBydD04MjMyMTIyMzcKfiMhIHRpZD04MjMyMTIyMzcKVGFzaGEsIGhhc3QgRHUgbWlyIG5pY2h0IG5ldWxpY2ggZ2VzY2hyaWViZW4sIGljaCBzb2xsZSBkb2NoIGJpdHRlCmtvbnN0cnVrdGl2ZSBCZWl0cmFlZ2UgenVtIHRoZW1hIHNjcmlwdGVuIHNjaHJlaWJlbiA/CgpVbmQgbnVuIG1hY2hzdCBEdSBEaWNoIG1pdCBzb2xjaGVtIFNjaHdhY2hzaW5uIHNlbGJzdCB6dW0gY2xvd24uLi4gYml0dGUsCnNldHplIGRvY2ggYW4gRGljaCBzZWxic3QgZGllc2VsYmVuIE1hc3N0YWViZSBhbiB3aWUgYW4gYW5kZXJlLCBvayA/CgpSeW5lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExvZXNjaGdlZmFocj8gKEVuZ3l3dWNrLCAgMi4gRmViIDE5OTYsIDEzOjA5OjAyKToKfiMhIHJuPUZyYWRvIHJ0PTgyMzI2MjY2NAp+IyEgdGlkPTgyMzIxMjIzNwpBcmdsLi4KU2NoYXUgRGlyIHdlbmlnc3RlbnMgZGllIFJ1YnJpayBhbiwgZWggRHUgbXVlbGwgdmVyemFwZnN0LCBSeW5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTG9lc2NoZ2VmYWhyPyAoRnJhZG8sICAyLiBGZWIgMTk5NiwgMTM6MTM6MjMpOgp+IyEgcm49RW5neXd1Y2sgcnQ9ODIzMjYyOTQyCn4jISB0aWQ9ODIzMjEyMjM3CkRhcyBoYXQgbWlyIGRlciBSdWJyaWsgbml4IHp1IHR1bi4gSGllciBzY2hyZWlidCBkb2NoIGVoIGZhc3QgbmllIGplbWFuZCBpbgpkaWUgcmljaHRpZ2UgUnVicmlrLiAoc2VoZXIudXJsYXViLCBzYWcgaWNoIGRhenUgbnVyKQoKUnluZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTW9iaWxNVUQgKFllbmRpLCAgMi4gRmViIDE5OTYsIDEzOjI3OjIzKToKCgoKRHUgdGVpbHN0IFF1YXNpbW9kbyBtaXQ6IEljaCBiaW4gaW0gU3BpZWxUcmF1bSEgOikKUXVhc2ltb2RvIHRlaWx0IERpciBtaXQ6IFJpZ2h0IG5vdz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8KRHUgdGVpbHN0IFF1YXNpbW9kbyBtaXQ6IE5vZSwgYWJlciBmYXN0LgpRdWFzaW1vZG8gdGVpbHQgRGlyIG1pdDogRHUgc3BpZWxzdCB2b20gRmFocmFkIG1pdCBEZWluZW0gSGFuZHk/Pz8/ClF1YXNpbW9kbyB0ZWlsdCBEaXIgbWl0OiBBdWYgZGVpbmVtIExhcHRvcD8/PwpEdSB0ZWlsc3QgUXVhc2ltb2RvIG1pdDogTmVpbiwgYXVmIG1laW5lbSBGYWhycmFkY29tcHV0ZXIsIGR1IE5hc2UhCkR1IHRlaWxzdCBRdWFzaW1vZG8gbWl0OiBEYSBrb21tdCBkYW5uIGluIGRlbiBLYWVtcGZlbiBpbW1lcjoKRHUgdGVpbHN0IFF1YXNpbW9kbyBtaXQ6IER1IGhhc3QgamV0enQgMTI1IExQIHVuZCAxNDYgTVAgdW5kIDI0IEttL0guCgoKOi0vCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBMb2VzY2hnZWZhaHI/IChUYXNoYSwgIDIuIEZlYiAxOTk2LCAxNDo1ODozMCk6Cn4jISBybj1GcmFkbyBydD04MjMyNjI2NjQKfiMhIHRpZD04MjMyMTIyMzcKKmtpY2hlciogKnJvdGZsKiBicmVjaGludW5rb250cm9sbGllcnRlc2dlbGFlY2h0ZXJhdXMuCgpEZXIgQXJ0a2VsIHBhc3N0ZSBpbiBTY2htYXJybi46KSkpCgp2b3IgTGFjaGVuIGthdW0gbm9jaCBkaWUgVGF0c2F0dXIgdHJlZmZlbmQsIFRhc2hhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpodWNoISAoQ2VsZWJkaWwsICAyLiBGZWIgMTk5NiwgMTc6Mjc6MDApOgpLZXJtaXQga29tbXQgbWl0IGVpbmVtIGVsZWdhbnRlbiBIdWVwZmVyIGhlcmJlaWdlc3BydW5nZW4uCgpIdWNoLCBpc3QgSHVlcGZlciBuaWNodCB3ZWlibGljaD8KCiAgICAgICAgICAgIHRzY2h1ZXNzaWUgICAgICAgQ2VsZWJkdWVsIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOaWNodCBwYXNzaWVydCAoS3VyenZlcnNpb24pIChSYWZmaSwgIDIuIEZlYiAxOTk2LCAyMjoxNDoyMyk6CgpHZXJhZGUgaW4gRlc6CgpOaWNodHMgaGF0IGpldHp0IFN0dWZlIDExIGVycmVpY2h0LgpOaWNodHMgaGF0IGpldHp0IFN0dWZlIDEyIGVycmVpY2h0LgpOaWNodHMgaGF0IGpldHp0IFN0dWZlIDEzIGVycmVpY2h0LgpOaWNodHMgaGF0IGpldHp0IFN0dWZlIDE0IGVycmVpY2h0LgpOaWNodHMgaGF0IGpldHp0IFN0dWZlIDE1IGVycmVpY2h0LgpOaWNodHMgaGF0IGpldHp0IFN0dWZlIDE2IGVycmVpY2h0LgpOaWNodHMgaGF0IGpldHp0IFN0dWZlIDE3IGVycmVpY2h0LgpOaWNodHMgaGF0IGpldHp0IFN0dWZlIDE4IGVycmVpY2h0LgpOaWNodHMgaGF0IGpldHp0IFN0dWZlIDE5IGVycmVpY2h0LgpOaWNodHMgemllaHQgZWluZW4gU2lsYmVycmluZyBhdXMuCk5pY2h0cyB6aWVodCBlaW5lIEtyaXN0YWxsa3JvbmUgYXVzLgpOaWNodHMgemllaHQgZWluZW4gU2NodXBwZW5wYW56ZXIgYW4uCk5pY2h0cyB6aWVodCBlaW5lbiBzY2h3YXJ6ZW4gR3VlcnRlbCBhdXMuCk5pY2h0cyB6aWVodCBlaW5lbiBHaSBhdXMuCk5pY2h0cyB6aWVodCBlaW5lbiBDaGFvcy1SaW5nIGF1cy4KTmljaHRzIHZlcmxhZXNzdCBkaWVzZSBXZWx0LgpOaWNodHMgenVlY2t0IGVpbiBNZXNzZXIuCk5pY2h0cyB6aWVodCBlaW5lbiBTaWxiZXJyaW5nIGFuLgpOaWNodHMgemllaHQgZWluZSBLcmlzdGFsbGtyb25lIGFuLgpOaWNodHMgemllaHQgZWluZW4gc2Nod2FyemVuIEd1ZXJ0ZWwgYW4uCk1lcmxpbiBydWZ0OiBOaWNodHMgaXN0IGpldHp0IGVpbiBTZWhlciAhCk5pY2h0cyBoYXQgamV0enQgU3R1ZmUgMjAgZXJyZWljaHQuCkFzbW9kaXMgc2FndDogSEVMQVUgISEKUnluZSBncmluc3QgYnJlaXQuClppbm8gZ3JhdHVsaWVydCBOaWNodHMuClJ5bmUganViZWx0LgpSeW5lIGh1ZXBmdCBpbiBkZXIgR2VnZW5kIGhlcnVtLgpOaWNodHMgcnVmdDogSmFhYWFhYWFhYWFhYQpBc21vZGluYSB2ZXJ3dXNjaGVsdCBOaWNodHMnIEhhYXJlLgpEYXRhIHNhZ3Q6IGRhcyBuZW5udCBtYW4gJ2R1cmNobWFyc2NoCllhbm55IHJ1ZnQ6IG1pciBpc3QgZGFzIGhpZXIgaHVldGUgenUgbGF1dApNdXBmZWwgZ3JhdHVsaWVydCBOaWNodHMuCkNhcmFkaHJhcyBzYWd0OiBuaWNodCBlaW5zY2hsYWZlbgpEdSBzYWdzdDogV2VpdGVyIC0gV2lyIHdvbGxlbiBNZWhyIHNlaGVuICEKTmljaHRzIHppZWh0IGVpbmVuIHNjaHdhcnplbiBHdWVydGVsIGFuLgpOaWNodHMgZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KTmlhbCBydWZ0OiBHSUIgdW5zIGFsbGVzCk5pY2h0cyBoYXQgamV0enQgU3R1ZmUgMjEgZXJyZWljaHQuCk5pY2h0cyBoYXQgamV0enQgU3R1ZmUgMjIgZXJyZWljaHQuCk5pY2h0cyBoYXQgamV0enQgU3R1ZmUgMjMgZXJyZWljaHQuCk5pY2h0cyBoYXQgamV0enQgU3R1ZmUgMjQgZXJyZWljaHQuCk5pY2h0cyBoYXQgamV0enQgU3R1ZmUgMjUgZXJyZWljaHQuCkVpbmUgRmFja2VsIGVybGlzY2h0LgpOaWNodHMgaGF0IGpldHp0IFN0dWZlIDI2IGVycmVpY2h0LgpOaWNodHMgaGF0IGpldHp0IFN0dWZlIDI3IGVycmVpY2h0LgpOaWNodHMgaGF0IGpldHp0IFN0dWZlIDI4IGVycmVpY2h0LgpOaWFsIHNhZ3Q6IGF1c3J1aGVuID8KTmljaHRzIGhhdCBqZXR6dCBTdHVmZSAyOSBlcnJlaWNodC4KTmljaHRzIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpDYXJhZGhyYXMgc2FndDogbmFhbHNvIDopClppbm8gc2FndDogc28gZ2VodCBkYXMKTXVwZmVsIHNhZ3Q6IGdpbGRlbmxldmVsIDE1IC0gd293ClJ5bmUgc2FndDogc28gbGVpY2h0IGlzdCBkYXMKRGF0YSBmcmFndDogV2FyIG5vY2ggd2FzPz8KCj4gZmluZ2VyIG5pY2h0cwpOaWNodHMgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IE9zbmFicnVlY2suClZvbGxlciBOYW1lOiBOaWNodHMgZGVyIEthcmF0ZS1LYWVtcGZlciwgNi4gRGFuClJhc3NlOiBFbGYsICBHaWxkZTogS2FyYXRlLCAgR2VzY2hsZWNodDogbWFlbm5saWNoClNwaWVsZXJsZXZlbDogMjkgKFNlaGVyKSwgICBHaWxkZW5sZXZlbDogMTUKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogdm9yIGRlbSAxMC4gTm92IDE5OTUKCj4gbm4KUnVicmlrIDMxOiBzdHVmZW4sIEFydGlrZWw6IDMxIHZvbiAzMQpOaWNodHMgaXN0IGpldHp0IGVpbiBTZWhlciEgKE1lcmxpbiwgIDIuIEZlYiAxOTk2LCAyMToxNjowMCk6CgpBbSBGcmUsICAyLiBGZWIgMTk5NiwgMjE6MTY6MDAgaGF0IE5pY2h0cyBkaWUgbm9ldGlnZW4gQmVkaW5ndW5nZW4KZXJmdWVsbHQgdW5kIGlzdCB2b20gU3BpZWxlcnN0YXR1cyB6dW0gU2VoZXJzdGF0dXMgYXVmZ2VzdGllZ2VuLgoKIEhlcnpsaWNoZW4gR2x1ZWNrd3Vuc2NoLCBOaWNodHMhCgpOb2NobWFsIEdsdWVja3d1bnNjaCBOaWNodHMhCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWlzdHdlZ2VzY3JpcHRzIDotKSAoTmljaHRzLCAgMi4gRmViIDE5OTYsIDIyOjI1OjUyKToKCi4uLgo+IE1pdHRlbiBpbiBkZXIgVHVuZHJhLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuLCBub3Jkd2VzdGVuIHVuZCBub3Jkb3N0ZW4uCj4gRHUgaGFzdCBzb2ViZW4gZWluIFBvcnRhbCBlbnRkZWNrdC4KRHUgaGFzdCBzb2ViZW4gZWluIFBvcnRhbCBlbnRkZWNrdC4KTWl0dGVuIGluIGRlciBUdW5kcmEuCi4uLgoKKmFyZ2wqIDotKQoKIiIgLSBTRUhFUgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsbGVyIEFuZmFuZyBtaXQgVEYgaXN0IHNjaHdlciAoWmlubywgIDMuIEZlYiAxOTk2LCAxMDo0NDo0MSk6CgpEaWVzZXMgVEYgaXN0IHNjaG9uIHNvIGVpbmUgbXlzdGVyaW9lc2UgU2FjaGUsIGRhIHZlcnN1Y2h0IG1hbiwgc2VpbmUgQXVzZ2FiZQp6dSB2ZXJrdWVyemVuLCB1bmQgZXJ6ZXVndCBudXIgTXVlbGw6CgpCdW1lcmFuZyB0cmlmZnQgS29lbmlnIGluIEdlbGIgYW0gS29wZiBtaXQgV2VsbGVuIGRlcyBXYWhuc2lubnMuCgpEYXMgaGF0IHNjaG9uIEFzdGVyaXggZ2V3dXNzdCwgZGFzcyBtYW4gZGVuIEdlZ25lciBtaXQgZGVzc2VuIGVpZ2VuZW4gV2FmZmVuCnNjaGxhZ2VuIG11c3MuLi4KCk1haGF0bWEgKGJhc3RlbHQgbm9jaCB3ZWl0ZXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2htYXJybiAoUGFtcGVycywgIDUuIEZlYiAxOTk2LCAxNDoyMTowNSk6CkdyYWQgaW4gZGVyIEdpbGRlLi4uLiA6KQpFbG9yYSBzdGVodCBwbG9ldHpsaWNoIG5lYmVuIERpciB1bmQgc2NoYXV0IERpY2ggbWl0IGlocmVuIGdyb3NzZW4KZnJldW5kbGljaGVuIEF1Z2VuIGFuLiBTb2ZvcnQgYmVmYWVsbHQgRGljaCBkYXMgVmVybGFuZ2VuLCBzaWUgaW4gZGVuIEFybSB6dQpuZWhtZW4gdW5kIHp1IGtudWRkZWxuLgpQcmEgZmx1ZWNodGV0IG5hY2ggTm9yZGVuLgoKSGF0IFByYSBBbmdzdCB2b3Iga29lcnBlcmxpY2hlciBOYWVoZT8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiBGcmVlZXVuZCwgZWluIGd1dGVyIEZyZWVlZXVuZC4uIChDYXJhZGhyYXMsICA2LiBGZWIgMTk5NiwgMDg6NTU6MDYpOgogIER1IGdyZWlmc3QgZGVuIFNlbnNlbm1hbm4gbWl0IGRlbSBTY2h3ZXJ0IGFuLgogIER1IHRyaWZmc3QgZGVuIFNlbnNlbm1hbm4gaGFydC4KRGVyIFNlbnNlbm1hbm4gc2FndDogSGFsbG8gQ2FyYWRocmFzLCBzY2hvZW4gRGljaCB3aWVkZXJ6dXNlaGVuLiA6KQpEZXIgU2Vuc2VubWFubiBrbnVkZGVsdCBEaWNoIHp1ciBCZWdydWVzc3VuZy4KCiAgIEhhY2gsIGVzIGdlZmFlbGx0IG1pciBkb2NoIGltbWVyIHdpZWRlcgoKICAgICAgQ2FyYWRocmFzIC0gZmFlbmd0IHNjaG9uIG1hbCBhbiB6dSBzaW5nZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBadXNhdHpnZXJhZXRlIChMaSwgIDYuIEZlYiAxOTk2LCAxMDo0NTowOCk6Cn4jISBybj1LcmV0ZWsgcnQ9ODIzMTk2NTA4Cn4jISB0aWQ9ODIzMTk2NTA4ClVtIEpvZnMgV2lsbGVuLCBhbGxlcyBOdXIgZGFzIG5pY2h0IQpMaSAoIHJhc2llcnQgc2ljaCBpbW1lciBuYXNzKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSA2IChHcmltbWJvcm4sICA2LiBGZWIgMTk5NiwgMTY6MTY6MDkpOgoKIktpbmRlciB3ZXJkZW4gZ3Jvc3MsIHdlbm4gc2llIGFuZmFuZ2VuIEZyYWdlbiB6dSBzdGVsbGVuLCBhdWYgZGllIGVzCkFudHdvcnRlbiBnaWJ0IiAoVS4gSm9obiBQbG9tcCkKCk5hamEsIHVuZCB3ZW5uIHNpZSBub2NoIGdyb2Vzc2VyIHNpbmQgdW5kIGFudHdvcnRlbiBzb2xsdGVuLCBhYmVyIG5pY2h0CmFudHdvcnRlbiwgZGFubiBzaW5kIEVNLi4uIDstKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp6aWVtbGljaCB0cm9ja2VuZXMgV2Fzc2VyLi4uIChQcmEsICA2LiBGZWIgMTk5NiwgMTY6MzY6MDQpOgpIaSwgbmV1bGljaCBpbiBlaW5lciBrb21pc2NoZW4gSG9laGxlOgoKRGVyIEdlbmVzaXMtU2VlLgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgpFdHdhcyB0cm9ja2VuZXMgU3Ryb2guCkV0d2FzIHRyb2NrZW5lcyBTdHJvaC4KRXR3YXMgdHJvY2tlbmVzIFN0cm9oLgoKUHJhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FydG9mZmVsbWVzc2VyIChSb2NodXMsICA2LiBGZWIgMTk5NiwgMTc6MTk6MTApOgpFYmVuIGVyaGFsdGVuOgpBYnNlbmRlcjogQm9pbmcKQW46IE1pcmlsCkNjOiBSb2NodXMKRGF0dW06IERpZSwgIDYuIEZlYiAxOTk2LCAxMDozMjo1MgpUaXRlbDoga2FydG9mZmVsbWVzc2VyCkRhcyBLQXJ0b2ZmZWxtZXNzZXIgaXN0IGpldHp0IGtlaW4gWndlaWhhZW5kZXIgbWVociAuLi4gOykKICBCb2luZwoKOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVzIFRhZ2VzIC4uIChaZXBoeXIsICA2LiBGZWIgMTk5NiwgMjA6MjA6NDApOgoKQWxib2luIHRlaWx0IERpciBtaXQ6IGFjaHNvP2htbSBuYWphIE1hZW5uZXIgc2luZCBhdWNoIE1lbnNjaGVuIDstKQoKZ3JpbnNlbmQsIFplcGgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlYWxpdGFldHN2ZXJsdXN0ICgxKSAoUHJhLCAgNy4gRmViIDE5OTYsIDExOjU0OjE3KToKCkR1IGxpZWdzdCB6dSBIYXVzZSBpbiBEZWluZW0gQmV0dCB1bmQgc2NobGFlZnN0IGRlbiBTY2hsYWYgZWluZXMgQ2hhb3Rlbi4KTmFjaCBlaW5lciBsYW5nZW4gTXVkLU5hY2h0IGhhc3QgRHUgRGljaCBmYXN0IHdpZWRlciBnYW56IHJlZ2VuZXJpZXJ0LgpEdSBoYXN0IGpldHp0IDE4MiBMZWJlbnNwdW5rdGUgdW5kIDExNSBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAxODMgTGViZW5zcHVua3RlIHVuZCAxMTYgTWFnaWVwdW5rdGUuCkR1IGhhc3QgamV0enQgMTg0IExlYmVuc3B1bmt0ZSB1bmQgMTE3IE1hZ2llcHVua3RlLgoKREVJTiBXRUNLRVIgS0xJTkdFTFQhIEVTIElTVCBKRVRaVCA3IFVIUiA1NSEKCkR1IHNjaHJlY2tzdCBhdWYuCkR1IGhhc3QgamV0enQgMTQ0IExlYmVuc3B1bmt0ZSB1bmQgMTE3IE1hZ2llcHVua3RlLgo+IGtvbnRyb2xsZQpNaXN0ISBEYW5lYmVuISBEZXIgV2Vja2VyIGtsaW5nZWx0IGpldHp0IGxhdXRlciEKRHUgbGVybnN0IGF1cyBEZWluZW0gRmVobGVyLgpEdSBoYXN0IGpldHp0IDEyOSBMZWJlbnNwdW5rdGUgdW5kIDk3IE1hZ2llcHVua3RlLgo+IGtvbnRyb2xsZQpEdSBiaXN0IG5vY2ggenUgZXJzY2hvZXBmdCB2b24gRGVpbmVtIGxldHp0ZW4gVmVyc3VjaC4KCipzdG9laG4qCgpQcmEgKDEuIE1pdGdsaWVkIGRlciBub2NoIHp1IGdydWVuZGVuZGVuIFNlbGJzdGhpbGZlZ3J1cHBlKQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYXQgRm9uZGlsIFZvcnVydGVpbGUgZ2VnZW4gU2Nod3VsZT8gKEdhc3QzLCAgOS4gRmViIDE5OTYsIDAxOjAzOjEzKToKCkR1IGt1ZXNzdCBBbGJvaW4uCgpGb25kaWwgRmFyaW4gemllaHQgYmVpbSBMZXNlbiBlcnN0YXVudCBzZWluZSBBdWdlbmJyYXVlbiBob2NoLgoKR2FzdDMgKG1hZW5ubGljaCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipzY2htdW56ZWwqIChXb29keSwgIDkuIEZlYiAxOTk2LCAwMTowNzoyOSk6Ci4uLgpHYXN0MyBmcmFndCBGb25kaWwgbmFjaCBTZXguCkZvbmRpbCBzYWd0OiBEYXJ1ZWJlciBtdWVzc3RlIGljaCBlcnN0IG5hY2hkZW5rZW4uCi4uLgoKCndvb2R5Li0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyB3YXIgbmljaHQgYWxsZXM6IChHYXN0MywgIDkuIEZlYiAxOTk2LCAwMTowOTo0OCk6CgpmcmFnZSBmb25kaWwgbmFjaCBzZXgKCkZvbmRpbCBzYWd0OiBEYXJ1ZWJlciBtdWVzc3RlIGljaCBlcnN0IG5hY2hkZW5rZW4uCkZvbmRpbCBGYXJpbiB6aWVodCBiZWltIExlc2VuIGVyc3RhdW50IHNlaW5lIEF1Z2VuYnJhdWVuIGhvY2guCkZvbmRpbCBGYXJpbiBuaW1tdCBlaW4gQnVjaCB1bmQgbGllc3QuCkFsYm9pbiBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyBtYWNoIGljaCBibG9zcyBmYWxzY2guLi4gKFdvb2R5LCAgOS4gRmViIDE5OTYsIDAxOjEyOjI2KToKCkR1IGtudWRkZWxzdCBNaW1vIGZyb2VobGljaC4KPiBNaW1vIGZsdWVjaHRldCBuYWNoIE9zdGVuLgoKKnNlbGJzdHp3ZWlmZWxuZCogd29vZHkuLSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRm9uZGlsIGRpZSBkcml0dGUgKEdhc3QzLCAgOS4gRmViIDE5OTYsIDAxOjEzOjE0KToKV2VubiBlciBlcyBzY2hvbiBuaWNodCB3ZWlzcywgd2VyIHNvbGwgc2llIGRhbm4gdmVyc3RlaGVuPwpEZXIgU2NocmVpYmVyIHNhZ3Q6IEphLCBiaXR0ZT8KIGZvbmRpbCBuYWNoIGZyYXVlbgpGb25kaWwgc2FndDogVW0gZ2FueiBlaHJsaWNoIHp1IHNlaW46IEljaCB3ZWlzcyBlcyBhdWNoIG5pY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2VsZi1mdWxsZmlsbGluZyBwcm9waGVjeSAoTXVwZmVsLCAgOS4gRmViIDE5OTYsIDAxOjM2OjIzKToKeGNhbGwgZm9uZGlsLT5BZGRJbmZvKCJhbGJvaW4iLCAiQWxib2luIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLiIsICJzYWd0OgoiKQpFdmFsdWF0aW9uIHRpbWU6IDAgbXMuClJlc3VsdDogMAokIGZyYWdlIGZvbmRpbCBuYWNoIGFsYm9pbgpGb25kaWwgc2FndDogQWxib2luIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgokIEFsYm9pbiBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gZGVua3d1ZXJkaWdlciBNb21lbnQuLi4uIChNdXBmZWwsICA5LiBGZWIgMTk5NiwgMDI6NDE6MzApOgpBbmF0b2wgc2Nhbm5lZCB5b3UgKGlkKSBbMF0gW352cmFpL29iai9mYmFuZCMyODA1NV0uCkFuYXRvbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpNdXBmZWwgcnVmdDogQSBOIEEgVCBPIEwKJCBaZXBoeXIgcnVmdDogQU5BVE9PT09MIDopCgpqYWphLi4uIG9sZCBmcmllbmRzIG5ldmVyIGRpZQoKKG9kZXIgc28gOi0pCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5zZXJlIGhlaXNzZ2VsaWVidGVuIEVyem1hZ2llci4uLiAoR3JpbW1ib3JuLCAgOS4gRmViIDE5OTYsIDEzOjE4OjUxKToKCkdlbGVnZW50bGljaCBmcmFndCBzaWNoIHdvaGwgamVkZXIsIHdhcyBkaWVzZSBFcnptYWdpZXIgZWlnZW50bGljaCBoaWVyIHp1CnR1biBoYWJlbi4gRGllc2UgRnJhZ2UgbGllc3MgbWlyIGF1Y2gga2VpbmUgUnVoZSwgdW5kIHNvIGhhYmUgaWNoIG1hbCAKbmFjaGdlZm9yc2NodCwgd2FzIHdpciBkZW4gZWluemVsbmVuIGRlciBsZXZlbCA2NisgTWFnaWVyIHp1IHZlcmRhbmtlbiBoYWJlbi4KVmllbCBpc3QgamEgZXJ3YXJ0dW5nc2dlbWFlc3MgbmljaHQgcmF1c2dla29tbWVuLi4uCgoKVWViZXIgbGV2ZWwgNjY6Ci0tLS0tLS0tLS0tLS0tLQoKUnVtYXRhOgpUamEsIHNjaHdpZXJpZ2UgRnJhZ2UuIEVpc3BhbGFzdCB1bmQgT2t0b3B1cyBzb2xsZW4gdm9uIGlobSBzZWluLCBhdXNzZXJkZW0gCmV4aXN0aWVyZW4gR2VydWVjaHRlLCBkaWUgaWhuIHp1bWluZGVzdCB0ZWlsd2Vpc2UgZnVlciBIaWxiZXJ0IHZlcmFudHdvcnRsaWNoCm1hY2hlbi4gSWNoIGRlbmtlLCBkYXMgbXVzcyBpY2ggZXJzdCBnYXIgbmljaHQga29tZW50aWVyZW4uLi4KCkpvZjoKTnVuLCBpc3Qgdm9ybmVobWxpY2ggVGVzdGVyIGRlcyBTeXN0ZW1zLiBXaWRtZXQgc2ljaCBiZXNvbmRlcnMgClBsYXVzaWJpbGl0YWV0c3BydWVmdW5nZW4gd2llOiAiS2FubiBtYW4gaW4gMjQgU3R1bmRlbiBtZWhyIGFscyAzMCBTdHVuZGVuIAppZGxlbiwgb2J3b2hsIG1hbiBuaWNodCBsYWVuZ2VyIGFscyA3IFN0dW5kZW4gZWluZ2Vsb2dndCBpc3Q/Ii4gQmFzdGVsdCAKYW5nZWJsaWNoIGF1Y2ggYW4gc28gRGluZ2VuIHdpZSBtdWRsaWIgKHdhcyBhdWNoIGltbWVyIGRhcyBpc3QpIHVuZCAKU3lzdGVtZmlsZXMsIGFiZXIgSGV5ISBkYXMgbXVkIGxhZXVmdCBhdWNoIHNvIGVpbmlnZXJtYXNzZW4genVmcmllZGVuLQpzdGVsbGVuZCwgZGFoZXI6IFByYWVkaWthdCB1bm5vZXRpZy4KCkJvaW5nOgpIYWVsdCBzaWNoIGZ1ZXIgZWluZW4gZmxlaXNzaWdlbiBQcm9ncmFtbWllcmVyLCBhYmVyIHNlaWVuIHdpciBkb2NoIGVocmxpY2g6CkRpZSBIRSBpc3QgbmljaHQgc29vbyBzcGFubmVuZCwgZGllIFNTUCBudW4gYXVjaCBsYW5nc2FtIGF1c2dlbHV0c2NodCwgZGllIApGcmllZGhvZnNxdWVzdCB6dW1pbmRlc3QgaW4gaWhyZW0gZXJzdGVuIFRlaWwgZWhlciBlaW4gIlNjaHJhdCBmdWVyIApFcndhY2hzZW5lIiB1bmQgVGl0aXd1IGJld2Vpc3QgaW4gZ2VyYWRlenUgZ3JvdGVza2VyIFdlaXNlIGRpZSAKb3J0aG9ncmFwaGlzY2hlIFVua2VubnRuaXMgaWhyZXMgUHJvZ3JhbW1pZXJlcnMgKGljaCBzYWdlIG51cjogIk11cGZlbCIpLgpBbGxlcyBpbiBhbGxlbSBhbHNvIG5pY2h0IGdlcmFkZSBkaWUgaGVsbHN0ZSBMZXVjaHRlIGRlcyBNRy4uLgoKR2VzYW10OgpPYmlnZXMgaXN0IG5hdHVlcmxpY2ggYXVmZ3J1bmQgZGVyIE5pY2h0ZXhpc3RlbnogZGVyIEdvZXR0ZXIgcmVpbmUgR2VkYW5rZW4tCnNwaWVsZXJlaTsgZGEgZGllIHNvZy4gR29ldHRlciBpbiBkaWUgU3RydWt0dXIgZGVzIEdhbWVkcml2ZXJzIGVpbmdlYXJiZWl0ZXQKc2luZCBrYW5uIG1hbiBhbiBkaWVzZXIgU3RlbGxlIGRlc3NlbiBVcmhlYmVyIChBbXlsYWFyKSBudXIgYmV3dW5kZXJuLiAKQWxsZXJkaW5ncyB3YWVyZSBkaWUgR2xhdWJ3dWVyZGlna2VpdCBkZXIgR29ldHRlciB3ZXNlbnRsaWNoIHN0YWVya2VyLCB3ZW5uIApzaWUgd2lya2xpY2ggZXR3YXMgU2lubnZvbGxlcyAiZ2VzY2hhZmZlbiIgaGFldHRlbi4gR3V0LCBpbiBnZXdpc3NlbSBTaW5uZQppc3QgYWxsZXMsIHdhcyBpbSBtdWQtZGlyZWt0b3J5IChyZW1lbWJlcj8gRGFzIGhpZXIgaXN0IG51ciBlaW4gU3BpZWwgYXVmIAplaW5lbSBSZWNobmVyISkgaW4gIi8iIG1pdCBVbnRlcnZlcnplaWNobmlzc2VuIHN0ZWh0IGlociBXZXJrLCBhYmVyIHNlaWVuIAp3aXIgbmljaHQga2xlaW5saWNoIC0gaW0gUmFobWVuIGlocmVyIGFsbGdlbWVpbmVuIE5pY2h0ZXhpc3Rlbnogc3BpZWx0IGRhcwpudW4gd2lya2xpY2gga2VpbmUgUm9sbGUgbWVoci4KCgoKTGV2ZWwgNjYKLS0tLS0tLS0KCkNhdHdlYXpsZToKRGVyIFNoZXJpZmYuIEphLCBtZWhyIGlzdCBkYSBlaWdlbnRsaWNoIG5pY2h0IHp1IHNhZ2VuLiBTY2hhdXQgZXVjaCBkb2NoIAptYWwgaW0gTUcgdW0hIEFuYXJjaGllIHdvaGluIG1hbiBibGlja3QhIEVzIGdpbHQgZGFzIFJlY2h0IGRlcyBTdGFlcmtlcmVuLgpVbmQgYmVrYW5udGxpY2ggc2luZCBhbiBkZW4gTWlzc3N0YWVuZGVuIGVpbmVyIEdlc2VsbHNjaGFmdCBpbW1lciBkaWUgCmV4ZWt1dGl2ZW4gT3JnYW5lIChhbHNvOiBkaWUgUG9saXplaSkgc2NodWxkIHVuZCBuaWUgZGllIEdlc2VsbHNjaGFmdCBzZWxiZXIuCgpSb2NodXM6CklobSB2ZXJkYW5rdCBkYXMgTW9yZ2VuR3JhdWVuIGVpbmlnZSBkZXIgcGVyZmlkZXN0ZW4gRmFsbGVuLCBpbiBkaWUgbWFuIGFscyAKU3BpZWxlciB0YXBwZW4ga2Fubi4gRWhlciBraW5kbGljaCBpbiBkZXIgcHJvZ3JhbW1pZXJ0ZWNobmlzY2hlbiBNYWNoYXJ0CnJlaWNoZW4gc2llIGFsbGVtYWwgYXVzLCB1bSBoYXJtbG9zZSBTcGllbGVyIHp1dSB0b2V0ZW4uIEFsbGVyZGluZ3MgaXN0IGVyIApkYWJlaSBpbW1lciBmYWlyLCBhbHMgU3BpZWxlciBoYXQgbWFuIGkuYS4gaGludGVyaGVyIGRhcyBHZWZ1ZWhsICJNZW5zY2gKaGFldHQgaWNoIGRhcyBkb2NoIGJsb3NzIGZydWVoZXIgZ2V3dXNzdCIgKHZlcmdsZWljaGUgaGllciBlaW5lIGVoZXIgCnNjaGxlY2h0ZSBLb3BpZTogVHJveSwgZG9wcGVsdCBzbyB0b2VkbGljaCBiZWkgZmVobGVuZGVyIFJldHR1bmdzLSBvZGVyIApFcmtlbm51bmdzbW9lZ2xpY2hrZWl0KS4gSGF0IHNvbnN0IGVpZ2VudGxpY2ggbmljaHQgdmllbGUgbWVya2JhcmUgU3B1cmVuIApoaW50ZXJsYXNzZW4uIFp3ZWkgdWViZXJzaWNodGxpY2hlICgiSXN0IGRhcyBEZXRhaWwgYmVzY2hyaWViZW4/IERhbm4gaXN0cwpxdWVzdHJlbGV2YW50IikgUXVlc3RlbiwgZGFzIEdvYmxpbmxhZ2VyIGJlaSBQb3J0IFZhaW4sIGRhcyBoYXVwdHNhZWNobGljaApkdXJjaCBkaWUgdW5vcmRlbnRsaWNoZW4gR29ibGlucyBhdWZmYWVsbHQsIGRpZSBuaWNodHMgd2VncmFldW1lbiB1bmQgZWluIApwYWFyIGZydXN0cmllcnRlIE1hZ2llciAoZGllIGVpbmVuLCB3ZWlsIHNpZSB2ZXJzdWNodCBoYWJlbiwgZWluIGZpbGUgdm9uIAppaG0genUgbGVzZW4sIGRpZSBhbmRlcmVuLCB3ZWlsIHNpZSBSZWdpb25zbWl0YXJiZWl0ZXIgZGVyIEViZW5lIHNpbmQgdW5kIAplaWdlbnRsaWNoIHNjaG9uIGxhZW5nc3Qgd2FzIGFuZ2VzY2hsb3NzZW4gaGFldHRlbiwgd2VubiBSTSBSb2NodXMgZGVubiBtYWwgCmFuc3ByZWNoYmFyIHdhZXJlKS4KTmEgZ3V0LCBkaWUgS2FyYXRlZ2lsZGUgYXVjaCBub2NoLiBBYmVyIGRpZSB6YWVobHQgbmljaHQgc28gcmljaHRpZywgd2VpbCAKZXJzdGVucyBzaW5kIEthcmF0ZWthIGRvb2YgdW5kIHN0aW5rZW4gdW5kIHp3ZWl0ZW5zIHNvbGx0ZSBkaWUgClByb2dyYW1taWVydW5nIGRlciBLYXJhdGVnaWxkZSBuYWNoIGRlciBQcm9ncmFtbWllcnVuZyBkZXIgU3RhbmRhcmRnaWxkZSAKZWlnZW50bGljaCB2b24gYWxsZWluZSBnZWdhbmdlbiBzZWluLgoKU2lsdmFuYToKUXVvdGVuZnJhdSBpc3Qgc2ljaGVyIGRlciBlcnN0ZSBHZWRhbmtlLCBkZXIgZWluZW0gYmVpIGRlbSBlaW56aWdlbiAKRXJ6bWFnaWVyIHdlaWJsaWNoZW4gR2VzY2hsZWNodHMgZWluZmFlbGx0LiBNaXIga2FubnMgamEgZWdhbCBzZWluLCBhYmVyCmF1Y2ggd2VubiBkZXIgVGl0ZWwgIlJNIFdhbGQiIHZpZWxsZWljaHQgZWluIE1pbnVzcHVua3QgaXN0OyBiZXNvZmZlbmUgUmFldW1lCmZhbGxlbiBlYmVuc28gcG9zaXRpdiBpbnMgR2V3aWNodCB3aWUgdW50ZXJoYWx0c2FtZXMgRmV1ZXJ3ZXJrIHVuZCBkYXMgCmVudHNjaGxvc3NlbmUgSGFuZGVsbiBiZWltIEFuc2NobGllc3NlbiBlaW5lciBuZXVlbiBSYXNzZS4gQnJhdm8hIEVuZGxpY2ggCm1hbCBqZW1hbmQgZGVyIG5pY2h0IHphdWRlcnQgc29uZGVybiBoYW5kZWx0ISBOdXIgc28gYmV3ZWd0IHNpY2ggaGllciB3YXMsIAptZWluZSBIZXJyZW4hCgpXYWZmZW4tRXJ6bWFnaWVyOgpXZXIgYXVjaCBpbW1lciBzaWNoIGRhIGhpbnRlciBkZXIgTWFza2Ugdm9uIEJvaW5nIHZlcnN0ZWNrdCBzZWkgaGllciBnZW1laW50LgpEZXIgV2FmZmVuLUVyem1hZ2llciBpc3Qgei5CLiB2ZXJhbnR3b3J0bGljaCBmdWVyIGRpZSBCZXNjaHJhZW5rdW5nZW4gaW4gZGVuClNwaWVsZXJuIHp1Z2FlbmdsaWNoZW4gV2FmZmVuIChGdWVyIE1vbnN0ZXIgZ2VsdGVuIG5hdHVlcmxpY2gga2VpbmUgCkJlc2NocmFlbmt1bmdlbikuIFdlciBhbHNvIGF1ZiBkZW0gVG9kZXNrYW5hbCBsYXVzY2h0IHdlaXNzIGpldHp0LCB3ZXIgZGVyIApsZXR6dGxpY2ggVmVyYW50d29ydGxpY2hlIGZ1ZXIgZGFzIEdlc2NoZWhlbiBhdWYgZGllc2VtIGR1bmtsZW4gS2FuYWwgaXN0LgoKSGF0ZToKTFBDLUVyem1hZ2llci4gSmEsIHdhcyBmYWVsbHQgZWluZW0gZGF6dSBudXIgZWluLiBPZGVyOiBXYXMgZmFlbGx0IGVpbmVtIGVpbiwKZGFzIG1hbiBoaWVyIHNjaHJlaWJlbiBrb2VubnRlLCBvaG5lIGRhc3MgZGFzIHNhdmVmaWxlIGVpbmVuIFVuZmFsbCAKZXJsZWlkZXQuLi4gRXJzdG1hbDogWnVyIFNvbm5lbmluc2VsIHNhY2ggaWNoIGJlc3NlciBuaWNodHMsIGljaCB3aWxsIGphIApuaWNodCBwb2xlbWlzY2ggd2VyZGVuLiBIYXRlIGJhc3RlbHQgYW5zb25zdGVuIHZpZWwgcnVtLCBoaWVyIHVuZCBkYSBzb2dhcgplcmZvbGdyZWljaC4gU28gc2luZCBkaWUgS2FuYWVsZSB6LkIuIHZvbiBpaG0uIE51biwgd2VyIGRhcyBhbHMgUGx1c3B1bmt0CnZlcmJ1Y2hlbiBtb2VjaHRlIHNvbGwgYml0dGUgbWFsIGFtIGZydWVoZW4gTmFjaG1pdHRhZyBhbGxlIGlobSB2ZXJmdWVnYmFyZW4KS2FuYWVsZSBhbm1hY2hlbiB1bmQga29uemVudHJpZXJ0IGxlc2VuLiBXZW5uIGVyIGRhcyBzbyBzY2huZWxsIGthbm4uIFVuZCAKZGFubiBkaWUgQXVzc2FnZSBtaXQgZGVtIFBsdXNwdW5rdCBub2NobWFsIHdpZWRlcmhvbGVuLiBBYmVyIG9obmUgcm90IHp1IAp3ZXJkZW4uIE5lZSwgYWJlciBlY2h0LCBzb25zdCBpc3QgSGF0ZSBlaW4gbmV0dGVyIEtlcmwuIFdlbm4gZXIgbmljaHQgaW0gCmZhbHNjaGVuIEZlbnN0ZXIgZ2VyYWRlIGRlbiBmYWxzY2hlbiBQcm96ZXNzIGtpbGx0IHVuZCBwbG9ldHpsaWNoIGRhcyBNRyAKYWJzY2htaWVydC4gSmEsIGljaCB3ZWlzcywgU3RlaW56ZWl0LCBhYmVyIGltbWVyIHdpZWRlciBnZXJuZSBnZWhvZXJ0Li4uCgoKV2FyZ29uOgpFcnptYWdpZXIgZnVlciBEb2t1bWVudGF0aW9uLiBEYXMgbXVzcyBtYW4gc2ljaCBhdWYgZGVyIFp1bmdlIHplcmdlaGVuIApsYXNzZW4uIERva3VtZW50YXRpb24uIERva3VtZW50YXRpb24gc2luZCBIaWxmZXNlaXRlbi4gSGllciBzY2hvbiBtYWwgbmUKSGlsZmVzZWl0ZSBhbmdlc2VoZW4/IFVuZCBhdWNoIGRyYW4gZ2VoYWx0ZW4/IE5hIGFsc28sIGlzdCBkb2NoIHZpZWwgCnNjaG9lbmVyLCB3ZW5uIGplZGVyIHNlbGJlciBuIGJpc2NoZW4gcnVtYnJhc3NlbHQgdW5kIGVpZ2VuZSBGZWhsZXIgbWFjaHQuCk9kZXIgbm9jaCBzY2hvZW5lcjogc2ljaCBlaW4gdXJhbHRlcywgcHJhZWhpc3RvcmlzY2hlcyBmaWxlIGRhaGVybmltbXQgdW5kIApkYW5uIGhvZmZ0LCBkYXNzIGRpZSBlaWdlbmVuIFZvcnN0ZWxsdW5nZW4gc2ljaCBkYW1pdCByZWFsaXNpZXJlbiBsYXNzZW4uCkFiZXIgSGlsZmVzZWl0ZW4/IFBoaGghCkRhbWl0IGVyaGFlbHQgV2FyZ29uIGRlbiBQcmVpcyBmdWVyIGRlbiB1bm5vZXRpZ3N0ZW4gRXJ6bWFnaWVyLgpPYndvaGwsIGRpZSBTZWhlcmhhZXVzZXIgc2luZCBndXQuLi4KCkhpZ2hsYW5kZXI6CklzdCBmdWVyIGRpZSBTZWVsZSB6dXN0YWVuZGlnLiBEaWUgU2VlbGUgaXN0IGRhcywgd2FzIGRpZSBLb21tdW5pa2F0aW9uIGRlciAKU3BpZWxlciBtaXQgYW5kZXJlbiBTcGllbGVybiBlcm1vZWdsaWNodCwgc2Fsb3BwIGdlc2FndC4gU2llaGUgYXVjaCAndmVyYmVuJyAKKFdhcmdvbiwgc2llaHN0ZSwgaWNoIG1hY2ggV2VyYnVuZyBmdWVyIERpY2ghKS4gR2VsZWdlbnRsaWNoIHRhdXNjaHQgZXIgZWluZW4KYnVnIGdlZ2VuIGVpbmVuIGFuZGVyZW4gYXVzLCBkYW1pdCBtYW4gaWhuIGJlbWVya3QuIElzdCBkYWZ1ZXIgc2Nob24gbWl0IEJpbGwKR2F0ZXMgdmVyZ2xpY2hlbiB3b3JkZW4uIEljaCBmaW5kZSBkYXMgdW5mYWlyLiBJbSBHZWdlbnNhdHogenUgTWlzdGVyIApNaWNyb3NvZnQgaXN0IEhpZ2hsYW5kZXIgaW1tZXIgbm9jaCB6dSBnZWJyYXVjaGVuLiBJbiBqZWRlbSBXaWVuZXIgV2FsZApSZXN0YXVyYW50ICgiWndlaSBIYWxiZSB6dW0gTWl0bmVobWVuISIpLgoKCldhcyBkYSBzb25zdCBub2NoIGlzdDoKTmFqYSwga2F1bSBkYSwgbmljaHQgYXVmZ2VmYWxsZW4sIGF1ZnMgQWx0ZW50ZWlsIHp1cnVlY2tnZXpvZ2VuLi4ua2FubiBpY2ggCmhpZXIgamVkZW4ga2VubmVuPyBCaW4gZG9jaCBuaWNodCBvbW5pa29nbml0aXYuIEFiZXIgdmllbGxlaWNodCBpc3QgbWlyIHp1IApkZW5lbiBhdWNoIG51ciBuaWNodHMgZWluZ2VmYWxsZW4uLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWmVpY2hlbnNwcmFjaGUgKE1hcnMsICA5LiBGZWIgMTk5NiwgMTU6NTM6MzIpOgoKPiB1bnQgbWFnaWVyCkRpZXNlciBPcmsgaGF0IHNpY2ggZGFyYXVmIHNwZXppYWxpc2llcnQsIG5ldWUgWmF1YmVyc3BydWVjaGUgenUgZXJmaW5kZW4uIERhCmVyd2FydGUgc2Nob24gemllbWxpY2ggYWx0IGlzdCwgaGF0IGVyIHdvaGwga2VpbmUgTHVzdCBtZWhyIGF1ZiBncm9zc2UgUmVpc2VuCnp1CmdlaGVuLiBIaWVyIGJpZXRldCBlciB6dXNhZXR6bGljaCBub2NoIGVpbmVuIHdlcnR2b2xsZW4gRGllbnN0IGFuLiBFciBrYW5uCkRpcgpuYWVtbGljaCBEaW5nZSBpZGVudGlmaXppZXJlbi4gRXIgaXN0LCB3aWUgZGllIG1laXN0ZW4gTWFnaWVyLCBpbiBlaW5lbgpkdW5rbGVuIFVtaGFuZyBnZWh1ZWxsdCB1bmQgaGF0IGVpbmVuIHNwaXR6ZW4gSHV0IGF1Zi4gRGllIFRhdHNhY2hlLCBkYXNzIGVzCnNpY2ggaGllciB1bSBlaW5lbiBPcmsgaGFuZGVsdCwgZ2lidCBkZW0gQW5ibGljayBlaW5lbiBIYXVjaCB2b24gS29taWsuCmVyd2FydGUgaXN0IGFic29sdXQgZml0LiAgKDEwMCAlKQplcndhcnRlIHRyYWVndCBiZWkgc2ljaDoKRWluIHNlbHRzYW1lcyBBbXVsZXR0IChnZXRyYWdlbikuCgo+IGZuIG1hZ2llciBodXQKRGVyIE9ya21hZ2llciBrcmF0enQgc2ljaCBhbSBLb3BmLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFyZ2whIEdhZXN0ZSEhISAoTXVwZmVsLCAxMC4gRmViIDE5OTYsIDA0OjI4OjU0KToKJCBTZWh0IGRlbiBTdGVpbiB2b24gRHVuY3Rvbiwgd2llIGF1ZnJlY2h0IGVyIHN0ZWh0IQpHYXN0MiBoYXQgZGVuIHNpZWJ0ZW4gU3RpbGxlbiBTdGVpbiBnZWZ1bmRlbi4KCmxldXRlIGdpYnRzLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNb2Rlcm5lciBLYW1wZnN0aWwgKEVzY3ViYXIsIDExLiBGZWIgMTk5NiwgMjI6MDY6NDgpOgpEZXIgT3JrIHNldWZ6dDogTWFsIHdpZWRlciByaWNodGlnIGthZW1wZmVuIHdhZXIgZ3V0LgpUb2V0ZSBPcmsKT2sKPiBEZXIgVm9sbHN0cmVja2VyIHNjaGxhZWd0IG1pdCBncm9lc3N0ZXIgRnJldWRlIGJlc29uZGVycyBrcmFlZnRpZyBhdWYKRGVpbmVuIEdlZ25lciBlaW4sIGFscyBlciBtZXJrdCwgZGFzcyBkaWVzZXIga3VyeiB2b3JtIEVuZGUgc3RlaHQKICBEdSBncmVpZnN0IGRlbiBPcmsgbWl0IGRlbSBWb2xsc3RyZWNrZXIgYW4uCiAgRHUgemVyc2NobWV0dGVyc3QgZGVuIE9yayBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KRGVyIE9yayBmYWVsbHQgdG90IHp1IEJvZGVuLgoKU2NoZWludCBuaWNodCBzZWluIEthbXBmc3RpbCBnZXdlc2VuIHp1IHNlaW4gOy0pCgpFaXNiYWVyIEVzY3ViYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdlZGljaHRlIChKaW1kaWdyaXosIDEyLiBGZWIgMTk5NiwgMDE6MjE6MTEpOgpbS3VsdHVyOkh1ZXBmZXJdIERpZSBkdW5rbGUgV29sa2UgaW4gbWVpbmVtIEhlcnplbiB3aWNoIGRlbSBnb2xkZW5lbgpbS3VsdHVyOkh1ZXBmZXJdIFNvbm5lbnNjaGVpbi4KW0t1bHR1cjpSdWRpcmF0dGVyIGlzdCB3aWVkZXIgd2FjaC5dCkR1IG11c3N0IERpY2ggdWViZXJnZWJlbi4KW0t1bHR1cjpJbnNraXBwXSBkZWluIGhhcm5nZWRyYWVuZ2UgaXN0IGZ1ZXIgbWljaApEdSBtdXNzdCBEaWNoIHVlYmVyZ2ViZW4uCltLdWx0dXI6SW5za2lwcF0gd2llIHNjaG5hdHRlcmZsZWNrIGF1ZiBiaWVuZW5zdGljaApbS3VsdHVyOkluc2tpcHBdIEdyb3AgISBpY2ggYmVzY2h3b2VyZSBkaWNoCkRpZSBTY2h3YWRlbiBkZXMgR2VzdGFua3Mgc2luZCBhdXNnZXNwcm9jaGVuIHBlaW5saWNoLgpbS3VsdHVyOkluc2tpcHBdIG1laW4gcHVuemxpbmcgdHV0ZWxkcm9tawpEZXIgd2lkZXJsaWNoZSBHZXN0YW5rIGhhdCBzaWNoIGVuZGxpY2ggdmVyem9nZW4uCltLdWx0dXI6SW5za2lwcF0gd2Vpc3Mgd2VyIHdlaXRlciA/CltLdWx0dXI6SHVlcGZlcl0gQmluIGpldHp0IGdlaGVpbHQgdm9uIGFsbGVuIFNjaG1lcnplbiwgd2lsbCBudXIgbm9jaCBkYXMKW0t1bHR1cjpIdWVwZmVyXSBHbHVlY2sgYXVmIEVyZGVuIHNlaW4uCkluc2tpcHAgbGFjaHQgc2NocmVja2xpY2guCkZsYXh0cmkgc2NobGVpbXQgYWV0emVuZCBoZXJlaW4uCltLdWx0dXI6THVnXSBJc3MgbWlyIHNjaGxlY2h0Li4uCkluc2tpcHAga290enQgRGlyIGF1ZiBkaWUgRnVlc3NlLgoKby53LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSA3IChHcmltbWJvcm4sIDEyLiBGZWIgMTk5NiwgMTM6NTg6MzYpOgoKIkVzIGlzdCBkdW1tLCBzaWNoIGluIFZlcnp3ZWlmbHVuZyBkaWUgSGFhcmUgYXVzenVyZWlzc2VuOyBhbHMgb2IgZWluZSBHbGF0emUKZGllIFNvcmdlbiBtaW5kZXJuIHd1ZXJkZSEiIENpY2VybwoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdWVzdGVsLi4uIChIYXJkaWwsIDEyLiBGZWIgMTk5NiwgMTQ6NDk6MjIpOgpEYSB3YXIgaWNoIG1hbCBhdWYgZGVtIEZyaWVkaG9mLCB1bmQgaGF0dGUgbml4IHp1bSBHcmFiZW4uIFVuZCBkYW5uCmZvbGdlbmRlczoKCnN1Y2hlIHNjaGF1ZmVsCkR1IGR1cmNoc3VjaHN0IGFsbGVzLCBhYmVyIHdvaGwgbmljaHQgZ3J1ZW5kbGljaCBnZW51Zy4KPiAmLTAKW3N1Y2hlIHNjaGF1ZmVsXQpEdSBmaW5kZXN0IGVpbmUgRmFja2VsLgoKQWVoIGphLiBEYXMgd2FycyBub2NoIG5pY2h0IGdhbnouIDopCgotSGFyZGlsLiBTdWNodCB3ZWl0ZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSHVlc3RlbC4uLiAoSGFyZGlsLCAxMi4gRmViIDE5OTYsIDE0OjUzOjEwKToKfiMhIHJuPUhhcmRpbCBydD04MjQxMzI5NjIKfiMhIHRpZD04MjQxMzI5NjIKCi4uLiB1bmQgamV0enQgZGllIExvZXN1bmc6CgpXZW5uIG1hbiBlaW5lIFNjaGF1ZmVsIGZpbmRlbiB3aWxsLCBicmF1Y2h0IG1hbiBuaWNodCAnc3VjaGUgc2NoYXVmZWwnLApzb25kZXJuLi4uCmR1cmNoc3VjaGUgZ2VnZW5zdGFlbmRlCkR1IGR1cmNoc3VjaHN0IGFsbGVzLCBhYmVyIHdvaGwgbmljaHQgZ3J1ZW5kbGljaCBnZW51Zy4KPiAmLTAKW2R1cmNoc3VjaGUgZ2VnZW5zdGFlbmRlXQpEdSBkdXJjaHN1Y2hzdCBhbGxlcywgYWJlciB3b2hsIG5pY2h0IGdydWVuZGxpY2ggZ2VudWcuCj4gJi0wCltkdXJjaHN1Y2hlIGdlZ2Vuc3RhZW5kZV0KRHUgZmluZGVzdCBlaW5lIFNjaGF1ZmVsLgoKCk5hIGFsc28uIDopCgotSGFyZGlsLiBCdWRkZWx0IGpldHp0ICh1dXVwcywgZmFsc2NoZXMgTXVkKS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1vZWNodGVnZXJuLU1hZ2dpcyA6KSAoSGFyZGlsLCAxMi4gRmViIDE5OTYsIDE1OjMwOjAyKToKCkJhYm9vbiBsYWVzc3QgZGVuIFBsdWVzY2h3b2xwZXJ0aW5nZXIgZmFsbGVuLgpCYWJvb24gdHJpdHQgc2VpbmVuIFBsdWVzY2h3b2xwZXJ0aW5nZXIgbWVocm1hbHMgbWl0IGFsbGVyIEtyYWZ0LiBEdSBrYW5uc3QKcmljaHRpZyBzZWhlbiwgd2lldmllbCBGcmV1ZGUgZXMgaWhtIG1hY2h0Lgo+IG5pbW0gYWxsZXMKRHUgbmltbXN0IGVpbmVuIFBsdWVzY2h3b2xwZXJ0aW5nZXIuCnVudCBwbHVlc2Nod29scGVydGluZ2VyCj4gJi0wClt1bnQgcGx1ZXNjaHdvbHBlcnRpbmdlcl0KPiB1bnQgcGx1ZXNjaApEdSBmaW5kZXN0IGFuIGVpbmVtIFBsdWVzY2h3b2xwZXJ0aW5nZXIga2VpbiAiUGx1ZXNjaCIuCkRlaW4gQmxpY2sgd2VuZGV0IHNpY2ggZGVyIFVtZ2VidW5nIHp1LgpTb3dhcyBzaWVoc3QgRHUgYXVjaCBkYSBuaWNodCEKCgpIbW1tLiBEYWdlZ2VuIGhhdCBqYSBzZWxic3QgVHJveSByaWNodGlnIHZpZWxlIERldGFpbHMgZ2VzY2hyaWViZW4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYWphIDopIChIYXJkaWwsIDEyLiBGZWIgMTk5NiwgMTY6MTI6MDkpOgoKT2huZSBXb3J0ZToKCkVpbiBlbnRzZXR6bGljaGVyIFNjaHJlaSBoYWxsdCB2b20gRnJpZWRob2YgaGVydWViZXIuCkR1c3R5ICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW5hdG9sLCAxMi4gRmViIDE5OTYsIDE4OjMxOjI4KToKW0FsbGdlbWVpbjpIZWZlXSBEYXMgaXN0IHVuZmFpciAhIFJvYmluIGhhdCBtaXIgZGllIHdhZmZlIGF1cyBkZXIgSGFuZApbQWxsZ2VtZWluOkhlZmVdIGdlc2NobGFnZW4gISA8MTg6Mjk6MTg+CltBbGxnZW1laW46S2V5XSBIZWZlOiBXZWxjaGVyIFJvYmluPz8/IDwxODoyOTozOT4KW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIG9vb29oIDopIDwxODoyOTozOT4KW0FsbGdlbWVpbjpLZXldIERVIGdyZWlmc3QgUm9iaW4gYW4/Pz8/IDwxODozMDoyMT4KCi4uLi4gSmEgamEgamEgamEgLgpBbmF0b2wuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYWNodHJhZzogKEFuYXRvbCwgMTIuIEZlYiAxOTk2LCAxODozMjo0MSk6CgpbVG9kOl0gUm9iaW4gaGF0IGdlcmFkZSBIZWZlIHVtZ2VicmFjaHQuCgpXaXJkIGFsdCB1bmQgdmVyZ2Vzc2xpY2gsCgpBbmF0b2wuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5hY2h0cmFnOiAoSGVmZSwgMTIuIEZlYiAxOTk2LCAxODo1NzozMik6Cn4jISBybj1BbmF0b2wgcnQ9ODI0MTQ2MzYxCn4jISB0aWQ9ODI0MTQ2MzYxClNvIGVpbiBmaWVzZXIgS2VybCA6IERhIG1hY2h0IG1hbiBtYWwgbmVuIGtsZWluZW4gU2NoYWJlcm5hY2sgbWl0IGlobSwgdW5kIGVyCndpcmQgZ2xlaWNoIGJvZXNlICEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVy4uLiAoQW5hdG9sLCAxMi4gRmViIDE5OTYsIDE5OjI4OjUzKToKCltBbGxnZW1laW46VHNob2Jlcl0gJiQlQCYkQCQlQEAmJSQmLUVsc3Rlcm4hISEhIDooKApbQWxsZ2VtZWluOkhlZmVdIGtpbGwgc2llIGhhbHQKW1RvZDpdIEVpbmUgRWxzdGVyIGhhdCBnZXJhZGUgVHNob2JlciB1bWdlYnJhY2h0LgoKKmdyaW5zKiBIZWZlIHNjaGlja3QgYW5kZXJlIGluIGRlbiBUb2QgOikgPyBNdXNzIGFtIFJvYmluZnJ1c3QgbGllZ2VuLgoKQW5hdG9sID46KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvZGVzc2VobnN1Y2h0ID8gKEppbWRpZ3JpeiwgMTIuIEZlYiAxOTk2LCAyMzozMzowOCk6Cj4gQW5nZWxhIGtvbW10IGFuLgonIHNvCkR1IHNhZ3N0OiBzbwo+IExpZmFmYSBzYWd0OiBhaCwgamV0enQgZ2VodHMgZ2xlaWNoIHdpZWRlciBsb3MhCicgZGVuIGxhc3MgbWlyIGFiZXIsIGphIEtpZXNlbCA/CkR1IHNhZ3N0OiBkZW4gbGFzcyBtaXIgYWJlciwgamEgS2llc2VsID8KPiAgIEFuZ2VsYSBncmVpZnQgZGVuIEh5ZHJhd29scGVydGluZ2VyIG1pdCBibG9zc2VuIEhhZW5kZW4gYW4uCiAgQW5nZWxhIHZlcmZlaGx0IGRlbiBIeWRyYXdvbHBlcnRpbmdlci4KICBEZXIgSHlkcmF3b2xwZXJ0aW5nZXIgZ3JlaWZ0IEFuZ2VsYSBtaXQgZGVtIEx1Y2hza29wZiBhbi4KICBEZXIgSHlkcmF3b2xwZXJ0aW5nZXIgc2NobGFlZ3QgQW5nZWxhIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCiAgRGVyIEh5ZHJhd29scGVydGluZ2VyIGdyZWlmdCBBbmdlbGEgbWl0IGRlbSBMaWJlbGxlbmtvcGYgYW4uCiAgRGVyIEh5ZHJhd29scGVydGluZ2VyIHRyaWZmdCBBbmdlbGEgaGFydC4KICBEZXIgSHlkcmF3b2xwZXJ0aW5nZXIgZ3JlaWZ0IEFuZ2VsYSBtaXQgZGVtIERhY2hza29wZiBhbi4KICBEZXIgSHlkcmF3b2xwZXJ0aW5nZXIgc2NobGFlZ3QgQW5nZWxhIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCiAgRGVyIEh5ZHJhd29scGVydGluZ2VyIGdyZWlmdCBBbmdlbGEgbWl0IGRlbSBGbGVkZXJtYXVza29wZiBhbi4KICBEZXIgSHlkcmF3b2xwZXJ0aW5nZXIgdHJpZmZ0IEFuZ2VsYSBzZWhyIGhhcnQuCkFuZ2VsYSBmYWVsbHQgdG90IHp1IEJvZGVuLgpEdSBzaWVoc3QgZWluZSBkdW5rbGUgR2VzdGFsdCwgZGllIGV0d2FzIER1bnN0IGVpbnNhbW1lbHQgLi4uIG9kZXIgdmllbGxlaWNodApiaWxkZXN0IGR1IERpciBkYXMgYXVjaCBudXIgZWluIC4uLgpbVG9kOl0gRWluIEh5ZHJhd29scGVydGluZ2VyIGhhdCBnZXJhZGUgQW5nZWxhIHVtZ2VicmFjaHQuCltUb2Q6RWluIEh5ZHJhd29scGVydGluZ2VyXSBXZXIgd2FycyBkZW5uIG51bj8gRGVyIFdpZGRlci0sIERhY2hzLSwgR2FlbnNlLC0KW1RvZDpFaW4gSHlkcmF3b2xwZXJ0aW5nZXJdIEZsZWRlcm1hdXMtLCBSdWVzc2VsdGllci0sIEx1Y2hzLSwgTGliZWxsZW4tLApbVG9kOkVpbiBIeWRyYXdvbHBlcnRpbmdlcl0gRmlzY2hvdHRlci0sIFdhc2NoYmFlci0sIFJlaWhlci0sIEVpY2hob2VybmNoZW4tCltUb2Q6RWluIEh5ZHJhd29scGVydGluZ2VyXSBvZGVyIFBvbGFyZnVjaHNrb3BmPwogIERlciBIeWRyYXdvbHBlcnRpbmdlciBncmVpZnQgQW5nZWxhIG1pdCBkZW0gRmlzY2hvdHRlcmtvcGYgYW4uCiAgRGVyIEh5ZHJhd29scGVydGluZ2VyIGdyZWlmdCBBbmdlbGEgbWl0IGRlbSBSZWloZXJrb3BmIGFuLgogIERlciBIeWRyYXdvbHBlcnRpbmdlciBncmVpZnQgQW5nZWxhIG1pdCBkZW0gV2FzY2hiYWVya29wZiBhbi4KZXRjCgpXYXMgZGllIHdvaGwgZGF6dSBnZXRyaWViZW4gaGF0ID8gPwoKSmRHCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHcm9zc2UgWndlcmdlPyAoVGFzaGEsIDEzLiBGZWIgMTk5NiwgMDA6NTI6MjApOgpHcmFkIGdlc2VoZW46CgpEYXMgaXN0IHh4eCAoTmFtZSBkZXIgUmVkYWt0aW9uIGJla2FubnQpLiBFciBpc3QgZnVlciBlaW5lbiBad2VyZwptaXR0ZWxncm9zcy4KCkVpbiBad2VyZz8gTWl0dGVsZ3Jvc3M/IE11ZXNzdGUgZGFzIG5pY2h0IGVoZXIgbWl0dGVsa2xlaW4gaGVpc3Nlbj8KCgpncnVlYmVsbmQsIFRhc2hhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNb3JvbiAoTXVwZmVsLCAxMy4gRmViIDE5OTYsIDAxOjAxOjMwKToKRGllIEdsb2NrZW4gdm9uIE1vcm9uLCB2b24gRXRhaW4gZ2VsYWV1dGV0LCBrbGluZ2VuIHVlYmVyIGRhcyBMYW5kLgpmaW5nZXIgbW9yb24KTW9yb24gaXN0IG5pY2h0IGFud2VzZW5kLgpadWxldHp0IGVpbmdlbG9nZ3Qgdm9uOiB0aXRhbi5yei5VbmktT3NuYWJydWVjay5ERSBbT3NuYWJydWVja10uClp1bGV0enQgYXVzZ2Vsb2dndDogU2FtLCAxMC4gRmViIDE5OTYsIDA2OjQ1OjE0ICgyZCAxODoxNToyMikKVm9sbGVyIE5hbWU6IERpZSBHbG9ja2VuIHZvbiBNb3JvbiBrbGluZ2VuIHVlYmVyIGRhcyBMYW5kClJhc3NlOiBFbGYsICBHaWxkZTogQWJlbnRldXJlciwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogMmQgMjM6NDc6NTIsICAgU3BpZWxlcmxldmVsOiAyMiAoU2VoZXIpCkRhdHVtIGRlcyBlcnN0ZW4gTG9naW46IHZvciBkZW0gMTAuIE5vdiAxOTk1CkUtTWFpbC1BZHJlc3NlOiBuYQoKKFdpZSBoYXQgc2llIGRhcyBibG9zcyBnZW1hY2h0PyA6LSkKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaWxmc2JlcmVpdCAoQWxpbmUsIDEzLiBGZWIgMTk5NiwgMTA6NDM6NDEpOgpnZXJhZGUgZWJlbiBwYXNzaWVydDoKClRpcmFtaXN1IHJ1ZnQ6IHRvZXRldCBtaWNoIHVuZCBlcmxvZXNzdCBtaWNoIHZvbiBkaWVzZW0gc2NoZWlzcyBzcGllbAouLgpEdSBydWZzdDogRGFzIFphdWJlcndvcnQgaGVpc3N0IFNlbGJzdGxvZXNjaHVuZyA6KQoKVGlyYW1pc3UgcnVmdDogamV0enQgYWJlcgouLgoKZmluZGUgdGlyYW1pc3UKRGllc2VuIFNwaWVsZXIga2FubnN0IER1IG5pY2h0IGZpbmRlbi4KPiBmaW5nZXIgdGlyYW1pc3UKSG1tLi4uIGRpZXNlbiBOYW1lbiBnaWJ0IGVzIGluIE1vcmdlbmdyYXVlbiBuaWNodC4KCkFsaW5lIChpc3QgamEgZ2VybmUgSGlsZnNiZXJlaXQsIGhhdCBhYmVyIGpldHp0IGRvY2ggZWluIHNjaGxlY2h0ZXMgR2V3aXNzZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgcGFzc2llcnQgd2VubiBPZXR0aSBzb2NoIGxhbmd3ZWlsdC4uLiAoT2V0dGksIDEzLiBGZWIgMTk5NiwgMTY6MTU6NDkpOgoKZWNob2FsbCBNci4gbG92YSBsb3ZhIE9ldHRpIHRlaWx0IERpciBtaXQ7IEJhYmUsIElzY2ggd2lsbCBEaXNjaC4uLgoKRGllZGVyIHRlaWx0IERpciBtaXQ6IHdhcz8KR3JpbW1ib3JuIHNhZ3Q6IFdvdywgZGFzIG1hY2h0IG1pY2ggdG90YWwgYW4hCkxlQ2h1Y2sgdGVpbHQgRGlyIG1pdDogaG0uLmhhc3RlIG5peCBiZXNzZXJlcyB6dXIgaGFuZD8gOikKQmVzaWRlcyB0ZWlsdCBEaXIgbWl0OiBNT00KRWxvcmEgdGVpbHQgRGlyIG1pdDogd28gc29sbHRlIGRhcyBkZW5uIGhpbj8/PwpJc3NvbWFkIHRlaWx0IERpciBtaXQ6IG5vZSwgaWNoIGJpbiBnbHVlY2tsaWNoIHZlcmhlaXJhdGV0CktlcmJlbm9nIHRlaWx0IERpciBtaXQ6IHdhcyBpcyBsb3MKS2Vrc2kgdGVpbHQgRGlyIG1pdDogd2FzIGlzPwpSaW5nb3IgdGVpbHQgRGlyIG1pdDogLi4uIGRhbm4ga29tbSBkb2NoIGhlciB1bmQgaG9sIG1pY2ghIDotKQpFbG9yYSBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgpBbmFtZWdhZG9uIHRlaWx0IERpciBtaXQ6IHdhcz8/Pz8/Pz8/Pz8/Pz8/PyA7KSkpKSBLb21tIGhlciEKW0FsbGdlbWVpbjpGYWJpb10gYWVoLgpBbGFub24gdGVpbHQgRGlyIG1pdDogc29uc3QgYWxsZXMga2xhcj8KT25rZWwgR2FuZGFsZiB0ZWlsdCBEaXIgbWl0OiBkaXRvIDspCltBbGxnZW1laW46RmFiaW9dIG9ldHRpPwpLb3R6YnJvY2tlbiB0ZWlsdCBEaXIgbWl0OiBobT8gYmlzdCBkdSBiaT8gb2RlciBtZWludGVzdCBkdSBnYXIgbmljaHQgc2V4PyA6KQpTbGFydCBydWZ0OiBiaW4gaW4gc2NoZXVuZSBrb21tZSBnbGVpY2ggd2llZGVyCkVzY2kgdGVpbHQgRGlyIG1pdDogc29zbyA7KQpad2lyY2ggdGVpbHQgRGlyIG1pdDogaGFlaCA/PwpDaGljb2xhIHRlaWx0IERpciBtaXQ6IFNFSFIgc2NobGVjaHRlcyBlY2hvYWxsIDopCkR1c3R5IHRlaWx0IERpciBtaXQ6IGhhc3RuIGxvY2ggaW5uZXIgYmlybmU/IDspCgoKRGFubiBpc3QgbGVpZGVyIG1laW5lIFZlcmJpbmR1bmcgYWJnZXNjaG1pZXJ0ICpncnVtbWVsKiB1bmQgZGFubiBrYW1tIG5vY2gKZGFzOgoKT2V0dGkgdGVpbGUgRElyIG1pdDogU2FnIG1pciBtYWwgb2IgRHUgZGFzIGx1c3RpZyBmYW5kZXN0LgoKRGllIHJlc3BvbnNlIHdhciBkdXJjaHdhY2hzZW4sIHVuZCBkZW4gZWNob2FsbCwgZmFuZCBpY2ggemllbWxpY2ggZHVlbW1saWNoCm5hIGphIGFiZXIgYW5kZXJlIE1BZ2llciBzb2xsZW4gYXVjaCBpaHJlbiBTcGFzcyBoYWJlbiA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpRdWVzdGJhc3RlbGVpZW4uLi4gKEFxdWFkZXN0LCAxMy4gRmViIDE5OTYsIDE4OjM4OjE1KToKCkR1IHN0ZWhzdCBpbiBlaW5lbSBTY2h3ZWluZXN0YWxsLiBOYWNoIFdlc3RlbiBrb21tc3QgZHUgenVydWVjayBhdWYgZGVuCkRvcmZwbGF0eiB1bmQgYW4gZGVyIG9lc3RsaWNoZW4gV2FuZCBzdGVodCBlaW4gRnV0dGVydHJvZy4gSGFldHRlc3QgRHUgZGllClZlcndlbmR1bmcgZGllc2VyIEh1ZXR0ZSBuaWNodCBiZXJlaXRzIGdlc2VoZW4sIHNvIGhhZXR0ZSBEZWluZSBOYXNlIGVzIERpcgp2ZXJyYXRlbi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHdlc3Rlbi4KRWluIFdhbmctU2Nod2Vpbi4KRWluIFdhbmctU2Nod2Vpbi4KPiB1bnQgc2Nod2VpbmUKV2llc28gUGx1cmFsPyBTaWVoc3QgRHUgaGllciBtZWhyZXJlPwoKSG1tbWphIDopCn5kZXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqQVJHTCogKEFydHksIDEzLiBGZWIgMTk5NiwgMTk6MjQ6MDEpOgpTZW5zZSBoYXQgaW0gTG90dG8gZ2V3b25uZW4uClNlbnNlIG5pbW10IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbGllc3QgZWluZW4gQnJpZWYuClNlbnNlIG5pbW10IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbGllc3QgZWluZW4gQnJpZWYuClNlbnNlIG5pbW10IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbGllc3QgZWluZW4gQnJpZWYuClNlbnNlIG5pbW10IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbGllc3QgZWluZW4gQnJpZWYuClNlbnNlIG5pbW10IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbGllc3QgZWluZW4gQnJpZWYuClNlbnNlIGhhdCBpbSBMb3R0byBnZXdvbm5lbi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgaGF0IGltIExvdHRvIGdld29ubmVuLgpTZW5zZSBuaW1tdCBlaW5lbiBCcmllZi4KU2Vuc2UgbGllc3QgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBoYXQgaW0gTG90dG8gZ2V3b25uZW4uClNlbnNlIG5pbW10IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbGllc3QgZWluZW4gQnJpZWYuClNlbnNlIG5pbW10IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbGllc3QgZWluZW4gQnJpZWYuClNlbnNlIG5pbW10IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbGllc3QgZWluZW4gQnJpZWYuClNlbnNlIG5pbW10IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgaGF0IGltIExvdHRvIGdld29ubmVuLgpTZW5zZSBuaW1tdCBlaW5lbiBCcmllZi4KU2Vuc2UgbGllc3QgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBuaW1tdCBlaW5lbiBCcmllZi4KU2Vuc2UgbGllc3QgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBuaW1tdCBlaW5lbiBCcmllZi4KU2Vuc2UgbGllc3QgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBoYXQgaW0gTG90dG8gZ2V3b25uZW4uClNlbnNlIG5pbW10IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbGllc3QgZWluZW4gQnJpZWYuClNlbnNlIG5pbW10IGVpbmVuIEJyaWVmLgpTZW5zZSBoYXQgaW0gTG90dG8gZ2V3b25uZW4uClNlbnNlIG5pbW10IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgpTZW5zZSBsaWVzdCBlaW5lbiBCcmllZi4KU2Vuc2UgbmltbXQgZWluZW4gQnJpZWYuClNlbnNlIGxpZXN0IGVpbmVuIEJyaWVmLgoKCgoKQWxzbyBtYW5jaGUgYmVrb21tZW4gemllbWxpY2ggdmllbCBQb3N0LCBkYXMgR2FuemUgd2FyIGRhIG5vY2ggbmljaHQgenUKRW5kZS4uLgoKCiAgQVJUWQoKUFMuOiB3ZW5uIGRhcyBrZWluIHNjcmlwdCBpc3QsIGlzdCBlciB6aWVtbGljaCBhdXNkYXVlcm5kIDopKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnZXJlciBEdXJjaHNjaG5pdHQgKE1haGF0bWEsIDEzLiBGZWIgMTk5NiwgMTk6MzA6NTkpOgoKVmVyZ2xpY2hlbiBtaXQgRGVpbmVuIE1pdHNwaWVsZXJuLCBrZW5uc3QgRHUgRGljaCBpbSBNb3JnZW5HcmF1ZW4gYmVzc2VyIGFscwpkZXIgRHVyY2hzY2huaXR0IGF1cy4KQWJzb2x1dCBnZXNlaGVuIGtlbm5zdCBEdSBudXIgd2VuaWcgdm9tIE1vcmdlbkdyYXVlbi4KClNpZWh0IHNjaGxlY2h0IGF1cyBmdWVyIGRlbiBEdXJjaHNjaG5pdHQuCgpNYWhhdG1hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpibG9lZCAoUXVhc2ltb2RvLCAxMy4gRmViIDE5OTYsIDIwOjM5OjMzKToKCldhcyBzYWd0IEpvZiBlaWdlbnRsaWNoIHp1IGRlciBTZWxmZnVsbGZpbGxpbmctUHJvcGVydHkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZWxjaCBWZXJhY2h0dW5nISAoUGFyYWNlbHN1cywgMTMuIEZlYiAxOTk2LCAyMzowMDozMCk6Cj4gZnJhZ2UgbGx5c3RyYXRoZSBuYWNoIHNpbHZhbmEKTGx5c3RyYXRoZSBzY2hsYWVndCB2b3I6IEZyYWcgZG9jaCBtYWwgUmFuZGFyIFRvYmlzIGRhbmFjaC4gRGVyIGt1ZW1tZXJ0IHNpY2gKTGx5c3RyYXRoZSBzY2hsYWVndCB2b3I6IGhpZXIgdW0gZGVuIGdhbnplbiBLbGVpbmtyYW0uCgpQYXJhY2Vsc3VzIGZyYWd0IHNpY2gsIHdhcyBTaWx2YW5hIHdvaGwgZGF6dSBzYWd0LgpQLlMuOgo+IGZyYWdlIHJhbmRhciBuYWNoIHNpbHZhbmEKUmFuZGFyIFRvYmlzIHNhZ3Q6IERhdm9uIHdlaXNzIGljaCBsZWlkZXIgbmljaHRzLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGluIDYwMS4uLiAoWWVuZGksIDE0LiBGZWIgMTk5NiwgMTQ6MzE6MzYpOgoKRGllcyBpc3QgZGVyIFJhdW0gNjAxLiBPYndvaGwgZXIgZWlnZW50bGljaCBmdWVyIERpcGxvbWFuZGVuIHJlc2VydmllcnQgaXN0LApzaXR6ZW4gaGllciBkaWUgbWVpc3RlIFplaXQgbnVyIE1VRGRlciBoZXJ1bS4uLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogb3N0ZW4uCkNhdHdlYXpsZSBJdCBjYW1lIGZyb20gdGhlIGRlc2VydCEuCkZ1ZXJzdCBXYXJnb24gZGVyIEhvaGVwcmllc3RlciBkZXMgTGVtYm9sZC4KRGVyIFRvZXRlci4KWWVuZGkgZGVyIFdlaXNlLgpKb2YgZ2Vob2VydCBMYXJpc3NhLgoKPiBzY2hhdSBqb2YKSm9mIGJldWd0IHNpY2ggdWViZXIgZWluZW4gQ29tcHV0ZXIuCj4gc2NoYXUgY29tcHV0ZXIKRGVyIENvbXB1dGVyIHNpZWh0IGV0d2FzIHplcmZsZWRkZXJ0IGF1cy4gV2FzIG1hY2h0IEpvZiBkYSBibG9zcz8KSm9mIHF1ZW5nZWx0LgpKb2Ygc2FndDogQ2FhaGFhYXQsIGljaCBrcmllZyBpaG4gbmljaHQgcmVpaWlpaW4hCkNhdHdlYXpsZSBzYWd0OiBUamEsIGRhcyB3dWVyZGUgbWljaCBzdGFyayBiZWxhc3Rlbi4uLgpDYXR3ZWF6bGUgYmxlaWJ0IHRvZGVybnN0Lgo+IGxhY2hlCkR1IGJyaWNoc3Qgdm9yIExhY2hlbiB6dXNhbW1lbi4KV2FyZ29uIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpUb2V0ZXIgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCkNhdHdlYXpsZSBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KRHUgc2Fnc3Q6IFJ1YnJpayAic2NobWFycm4iISEhCkNhdHdlYXpsZSBzYWd0OiBKYXUhCkpvZiBzYWd0OiBOZWVpaWluISBXZWhlISBEYXMga29lbm50IGlociBuaWNodCBtYWNoZW4hCgoKKEljaCBoYWV0dGUgdmllbGxlaWNodCBnZW5hdWVyIGhpbmd1Y2tlbiBzb2xsZW4gLS0gSm9mIGhhdHRlIGVpbmVyIEZlc3RwbGF0dGUKIGRpZSBtYWVubmxpY2hlIEZvcm0gZGVzIHBlcnNvZW5saWNoZW4gQXJ0aWtlbHMgZ2VnZWJlbi4uLikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcm9lc2NoZS4uLi4gKExlY2h1Y2ssIDE0LiBGZWIgMTk5NiwgMTY6MjE6MTApOgpOZXVsaWNoIGltIE1HOgpFaW4gRnJvc2NoIGtudXJydC4KCnRzdHMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxlaWNodGUgVmVyd2VjaHNsdW5nID8gKFBhcmFjZWxzdXMsIDE1LiBGZWIgMTk5NiwgMTA6NTQ6NTkpOgpZYW50cm8gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuCgpBZWhtLCBZYW50cm89SHlkcmEgPz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGVpY2h0ZSBWZXJ3ZWNoc2x1bmcgPyAoWWVuZGksIDE1LiBGZWIgMTk5NiwgMTE6MzA6MDUpOgp+IyEgcm49UGFyYWNlbHN1cyBydD04MjQzNzgwOTkKfiMhIHRpZD04MjQzNzgwOTkKCkdsYXVic3QgRHUgZXJuc3RoYWZ0LCBZYW50cm8gd3VlcmRlIGxhbmdzYW0gc2lua2VuPz8/CgooTmljaHRzIGZ1ZXIgdW5ndXQuLi4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExlaWNodGUgVmVyd2VjaHNsdW5nID8gKE5pY2h0cywgMTUuIEZlYiAxOTk2LCAxMTo0NDoyNyk6Cn4jISBybj1ZZW5kaSBydD04MjQzODAyMDUKfiMhIHRpZD04MjQzNzgwOTkKCldhcyBoYXQgZGFzIG1pdCAiTGVpY2h0ZSBWZXJ3ZWNoc2x1bmciIHp1IHR1bj8KCkdld2ljaHRpZ2UgRnJhZ2UuLi4KIiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBMZWljaHRlIFZlcndlY2hzbHVuZyA/IChZZW5kaSwgMTUuIEZlYiAxOTk2LCAxMjoyNTozMCk6Cn4jISBybj1OaWNodHMgcnQ9ODI0MzgxMDY3Cn4jISB0aWQ9ODI0Mzc4MDk5CgpPSywgbmVubmVuIHdpciBlcyAiVmVyd2VjaHNsdW5nIGluIGVpbmVtIGJlc29uZGVycyBzY2h3ZXJlbiBGYWxsIi4uLgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBVUdFTiBlc3NlbiBpcyBzY2hsZWNodCBmdWVyIGRlbiBNYWdlbiAoRXNjaSwgMTUuIEZlYiAxOTk2LCAyMDoyMToyNCk6CltBbGxnZW1laW46RmFOVG9NXSBLYW5uIG1hbiBzdGVyYmVuLCB3ZW5uIG1hbiBlaW4gQXVnZSBpc3N0PwpbQWxsZ2VtZWluOk11cGZlbF0gd2VubnMgZGFzIGVpZ2VuZSBpc3QuLi4uCltBbGxnZW1laW46RXNjdWVdIElnaXR0Li4uIHdlbm4gRGVpbiBNYWdlbiBkYXMgYXVzaGFlbHQuLi4KPiBbQWxsZ2VtZWluOkppbURpR3Jpel0gd2llc28gc29sbCBpY2ggYW4gbWVpbmVtIEF1Z2Ugc3RlcmJlbiA/CltBbGxnZW1laW46SmltRGlHcml6XSBtYW4gc2llaHQgaG9lY2hzdGVucyBzY2hsZWNodGVyIDopCltBbGxnZW1laW46RXNjdWVdIE5hamEgcHJvYmllcnMgbWFsIGluIFJMIDopCj4gRWluIE9yay1LYXJhdGVrYSBrb21tdCBhbi4KW0FsbGdlbWVpbjpNdXBmZWxdIGFiIGRlbSAyLiBhdWdlIGRhbm4gc2VociBzY2hsZWNodCA6LSkKW0FsbGdlbWVpbjpIZWZlXSBBYmVyIG51ciwgd2VubnMgZGFzIGVpZ2VuZSB3YXIuCltBbGxnZW1laW46SmltRGlHcml6XSBqYSA6KQpbVG9kOl0gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIEZhbnRvbSB1bWdlYnJhY2h0LgpEZXIgT3JrLUthcmF0ZWthIGdlaHQgbmFjaCBTdWVkZW4uCltBbGxnZW1laW46TXVwZmVsXSBraWNoZXIKW0FsbGdlbWVpbjpTeW1iaW9udF0gSHVpLiA6LSkKW0JlaWxlaWQ6R3JlbWxpbl0gQmVpbGVpZApbQmVpbGVpZDpFc2N1ZV0gT2guLi4uLiBodXBzLi4uIGRvY2ggdG9lZGxpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlZGFlY2h0bmlzc2Nod3VuZCAoQWxpbmUsIDE1LiBGZWIgMTk5NiwgMjE6MjE6MzApOgpEYXMgZGllIE5QQ3MgaGllciBuaWNodCBpbW1lciB3aXNzZW4gd2FzIHNpZSBzYWdlbiwgaXN0IGphIHNjaG9uIGJla2FubnQ6CgpMYW4gV3VuIG11cm1lbHQgZXR3YXMgdm9uIExpIFdlbmcuCmZyYWcgbGFuIG5hY2ggbGkKTGFuIFd1biBzY2hhdXQgRGljaCBmcmFnZW5kIGFuLgpmcmFnIGxhbiBuYWNoIHdlbmcKTGFuIFd1biBzY2hhdXQgRGljaCBmcmFnZW5kIGFuLgoKQWxpbmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJlZ3J1ZXNzdW5nIChBYmVuZHJvdCwgMTUuIEZlYiAxOTk2LCAyMzozMzo0Mik6CkljaCBsb2dnZSBtaWNoIGVpbiwgdW5kIHdlcmRlIGdsZWljaCBiZWdydWVzc3QgOgoKSFRUUC8xLjAgMzAyIEZvdW5kCkxvY2F0aW9uOiBodHRwOi8vc2FudGFuYS51bmktbXVlbnN0ZXIuZGUvfm11ZC8KCldXVS9NYXRoLCBNdWVuc3RlciwgR2VybWFueS4gTG9jYWwgdGltZTogVGh1IEZlYiAxNSAyMzoyODozOSAxOTk2IE1FVAoKTW9yZ2VuR3JhdWVuIExQbXVkLCBOQVRJVkUgbW9kZSwgZHJpdmVyIHZlcnNpb24gMDMuMDIuMUAxMjMKCkR1IHZlcmxpZXJzdCBkaWUgQmVzaW5udW5nLi4uLgoKRHUgdGF1Y2hzdCBpbiBlaW5lbiBTdHJ1ZGVsIGJ1bnRlciBGYXJiZW4gZWluLgpFaW4ga2xlaW5lciBncnVlbmVyIFN0ZWluYmVpc3NlciBlcnNjaGVpbnQuCgpEZXIgU3RlaW5iZWlzc2VyIHNhZ3Q6CiAgJ1dpbGxrb21tZW4gaW0gTW9yZ2VuR3JhdWVuLicKICAnRGllc2VzIE11ZCBiZWZpbmRldCBzaWNoIGluIE11ZW5zdGVyIChEZXV0c2NobGFuZCknCiAgJ0JlaSBncm9lc3NlcmVuIFByb2JsZW1lbiBrYW5uc3QgRHUgRGljaCBhbiBkaWUgTXVkZ29ldHRlcicKICAnQm9pbmcgb2RlciBKb2Ygd2VuZGVuIG9kZXIgYXVjaCBlbWFpbCBhbiBkaWUnCiAgJ0FkcmVzc2UgIm11ZEBtdWQudW5pLW11ZW5zdGVyLmRlIiBzY2hyZWliZW4uJwoKICAnV2VubiBEdSBudXIgbWFsIHJlaW5zY2hudWVmZmVsbiB3aWxsc3QsIHNvIG5lbm5lIERpY2ggImdhc3QiLicKCkRlciBTdGVpbmJlaXNzZXIgd2FybnQgRGljaDoKICAnV2VoZSwgRHUgZmFlbmdzdCBhbiwgYW5kZXJlIFNwaWVsZXIgYW56dWdyZWlmZW4uJwoKRGVyIFN0ZWluYmVpc3NlciB2ZXJzY2h3aW5kZXQgd2llZGVyLCB1bmQgRHUgd2FjaHN0IGluIGVpbmVyIGFuZGVyZW4gV2VsdAphdWYuCgpXaWUgaGVpc3N0IER1IGRlbm4gPyBTY2hvZW4sIGRhc3MgRHUgd2llZGVyIGRhIGJpc3QsIEFiZW5kcm90IQpQYXNzd29yZDoKMSBmZWhsZ2VzY2hsYWdlbmVyIExvZ2luLVZlcnN1Y2ggc2VpdCBkZW0gbGV0emVuIGVyZm9sZ3JlaWNoZW4gTG9naW4uCkR1IG5pbW1zdCBzY2hvbiBhbSBTcGllbCB0ZWlsIQpWZXJ3ZW5kZSBEZWluZSBhbHRlIHN0ZXJibGljaGUgSHVlbGxlIC4uLgpDaG9uZG9zIGlzdCBpbSBTcGllbC4KRHUgaGFzdCA5IG5ldWUgQnJpZWZlIGltIFBvc3RhbXQgbGllZ2VuLgpFaW4gWmVsdC4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uCkVpbiBhbHRlciBNYW5uLgo+IER1IGtudWRkZWxzdCBkZWluZSBGcmV1bmRlLgo+IERlciBhbHRlIE1hbm4gc2FndDogTmEgSnVlbmdlbGNoZW4sIHdhcyB3aWxsc3QgRHUgZGVubiBoaWVyPwoKCkRhcyBpc3QgdWVicmlnZW5zIGRlciBhbHRlIE1hbm4gaW4gVmFsZ2Vzc2EsIGVyIGJlbm9ldGlndCBkcmluZ2VuZCBlaW5lCkJyaWxsZSwgbWFuIHNpZWh0IGRvY2ggc29mb3J0LCBkYXNzIGljaCBrZWluICJKdWVuZ2VsY2hlbiIgYmluIDotKQoKQWJlbmRSb3QsIGVpbiBNYWVkZWxjaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3ZWlsIG5pY2h0IGFsbGVzIGlucyB3d3cgc2NoYXVlbiBrb2VubmVuIC4uIChBbGJvaW4sIDE2LiBGZWIgMTk5NiwgMDE6Mzg6MDYpOgpJbiBkaWUgS2lyY2hlIGdlaGVuLCB1bSBUcmFlbmVuIHp1IGxhY2hlbgoKCkh1bmRlcnR0YXVzZW5kZSBBbWVyaWthbmVyIHVuZCBLYW5hZGllciBzY2h3b2VyZW4gYXVmICJIb2x5IExhdWdodGVyIiAtCktyaXRpa2VyIGZpbmRlbiBkYXMgdWViZXJoYXVwdCBuaWNodCBrb21pc2NoCgpWb24gSVJNSU5UUkFVVCBKT1NUCk5ldyBZb3JrIC0gIkxhc3NldCB1bnMgZXNzZW4gdW5kIGZyb2VobGljaCBzZWluIiwgc3RlaHQgendhciBpbSBMdWthcwpFdmFuZ2VsaXVtLkFiZXIgaW1tZXIgbWVociBLaXJjaGdhZW5nZXIgaW4gZGVuIFVTQSB1bmQgS2FuYWRhIG5laG1lbgpkaWVzZSBBdWZmb3JkZXJ1bmcgYWxsenUgd29lcnRsaWNoOiBTaWUgbGFjaGVuLCBiaXMgc2llIHNpY2ggenVja2VuZAphdWYgZGVtIEJvZGVuIHJvbGxlbi4gRGVyIHNvbm50YWVnbGljaGUgS2lyY2hnYW5nIHdpcmQgZnIgdmllbGUKQW1lcmlrYW5lciB6dSBlaW5lciBmcm9laGxpY2hlbiBBbmdlbGVnZW5oZWl0LiBIb2x5IExhdWdodGVyIC0gaGVpbGlnZXMKR2VsYWVjaHRlciBoZWlzenQgZGllIG5ldWUgQmV3ZWd1bmcuCgpBbmhhZW5nZXIgc2Nod29lcmVuLCBkaWUgTGFjaGtyYWVtcGZlIGhhZXR0ZW4gaWhyIExlYmVuIHZlcmFlbmRlcnQuClNpZSB3dXJkZW4gdm9uIEFlbmdzdGVuIHVuZCBTb3JnZW4gYmVmcmVpdCwgZXJsZWJ0ZW4gZWluZSBzcGlyaXR1ZWxsZSwKcmVsaWdpb2VzZSBFcmZhaHJ1bmcuIEVzIGthbSBnYW56IHBsb2V0emxpY2gsIGdhbnogdGllZiBhdXMgbWlyIGhlcmF1cy4KRXMga29tbXQgYXVzIERlaW5lbSBCYXVjaC5JY2ggaGFiZSBzbyBoZWZ0aWcgZ2VsYWNodCwgZGFzeiBtZWluIEJhdWNoCm1pY2ggZmFzdCB1bWdlYnJhY2h0IGhhZXR0ZSIsIHNjaGlsZGVydCBQZmFycmVyIEVkZGllIFJvZ2VycyBzZWluIGVyc3RlcwpFcmxlYm5pcyBtaXQgZGVtIEhvbHkgTGF1Z2h0ZXIuSW56d2lzY2hlbiBwcmVkaWd0IGVyIGRpZSBmcm9laGxpY2hlIExlaHJlCkdlbWVpbmRlZ2xpZWRlcm4gaW4gR2VvcmdpYS4KCkRpZSBhbnN0ZWNrZW5kZSBGcm9laGxpY2hrZWl0IHd1cmRlIHZvbSBzdWVkYWZyaWthbmlzY2hlbiBQYXN0b3IgUm9kbmV5Ckhvd2FyZC1Ccm93bmUgMTk4NyBpbiBkaWUgVVNBIHZlcnNjaGxlcHB0LiBJaHJlbiBTaWVnc3p1ZyBkdXJjaApOb3JkYW1lcmlrYSBiZWdhbm4gSG9seSBMYXVnaHRlciBhbGxlcmRpbmdzIGluIFRvcm9udG8sIEthbmFkYS4gSm9obiBBcm5vdHQKYnJpbmd0IGluIGRlciBBaXJwb3J0IFZpbmV5YXJkIEtpcmNoZSBuYWhlIGRlbSBGbHVnaGFmZW4gamVkZW4gYWJlbmQgLSB1bmQKU29ubnRhZ3Mgc29nYXIgendlaW1hbCAtIGRpZSBLaXJjaGdhZW5nZXIgenVtIExhY2hlbi4gRGllIGdsdWNrc2VuZGVuCkdsYWV1YmlnZW4gd2FlbHplbiBzaWNoIGphcHNlbmQgYXVmIGRlbSBCb2RlbiwgYmVsbGVuLCBxdWlla2VuIG9kZXIgc3Rvc3plbgphbmRlcmUgbWVya3d1ZXJkaWdlIExhdXRlIGF1cywgd2FlaHJlbmQgaWhyZSBHbGllZG1hc3plbiB1bmtvb3JkaW5pZXJ0Cnp1Y2tlbi4gRWluaWdlIHZlcmhhcnJlbiBiaXMgenUgZHJlaSBvZGVyIHZpZXIgU3R1bmRlbiBsYW5nIGluIGRpZXNlbSBuYWhlenUKaHlzdGVyaXNjaGVuIFp1c3RhbmQuIEtpcmNoZW5kaWVuZXIgc3RlaGVuIGJlcmVpdCwgdW0gdW1mYWxsZW5kZSBHbGFldWJpZ2UKYXVmenVmYW5nZW4gdW5kIGF1ZiBkZW4gQm9kZW4genUgYmV0dGVuLgoKU2VpdCBkYXMgIlRvcm9udG8gQmxlc3NpbmciIHZvciB6d2VpIEphaHJlbiB6dW0gZXJzdGVuIE1hbCB2b24gc2ljaCBSZWRlbgptYWNodGUsIHBpbGdlcnRlbiBuYWhlenUgZWluZSBNaWxsaW9uIEJlc3VjaGVyIGluIGRpZSBsYWdlcmhhbGxlbmFydGlnZQoKS2lyY2hlIGluIFRvcm9udG8uIEVpbmlnZSBGbHVnZ2VzZWxsc2NoYWZ0ZW4gYmlldGVuIGJlcmVpdHMgU3BlemlhbHRhcmlmZQphbi5MYXV0ICJUb3JvbnRvIExpZmUgTWFnYXppbiIgd2FyZW4gZGllIEdvdHRlc2RpZW5zdGUgYW0gRmx1Z2hhZmVuIGltCnZlcmdhbmdlbmVuIEphaHIgZGllIGdyb2VzenRlIFRvdXJpc3RlbmF0dHJha3Rpb24gZGVyIFN0YWR0LiBKb2huIEFybm90dApiZXNjaGFlZnRpZ3QgaW56d2lzY2hlbiA4MCBBbmdlc3RlbGx0ZSwgc2V0enQgd2VsdHdlaXQgNDUgTWlzc2lvbmFyZSBlaW4KdW5kIGJldHJldXQgZWluZW4gRXRhdCB2b24gc2VjaHMgTWlsbGlvbmVuIERvbGxhci4gQXVjaCBpbiBHcm9zemJyaXRhbm5pZW4KcHJha3RpemllcmVuIGJlcmVpdHMgMjAwMCBHZW1laW5kZW4gZGllIExlaHJlIHZvbSBMYWNoZW4uS3JpdGlrZXIgZmluZGVuCmRhcyBhbGxlcyBnYXIgbmljaHQga29taXNjaC4gSGFuayBIYW5uZWdyYWFmIHZvbSBjaHJpc3RsaWNoZW4KV2lzc2Vuc2NoYWZ0c3plbnRydW0gaW4gSXJ2aW5lLCBLYWxpZm9ybmllbjogIkVzIGlzdCBpbiBlcnN0ZXIgTGluaWUKSHlwbm9zZSB1bmQgQXV0b3N1Z2dlc3Rpb24uIiBFciB3YXJudCwgVG9yb250byBoYWJlICJldHdhcyBzZWhyCkdlZmFlaHJsaWNoZXMgaGVydm9yZ2VicmFjaHQuIEVzIGthbm4gZGVyIFdlZyB6dW0gT2trdWx0ZW4gc2Vpbi4iIEVyCnp3ZWlmZWx0IGF1Y2ggYW4gZGVyIGJlZnJlaWVuZGVuIFdpcmt1bmcgZGVzIExhY2hrcmFtcGZlcy4gU29iYWxkIGRpZSBlcnN0ZQpFdXBob3JpZSB2ZXJmbG9nZW4gc2VpLCBmdWVyY2h0ZXQgZXIsd2VyZGVuIGRpZSBHbGFldWJpZ2VuIGluIG51ciBub2NoCnRpZWZlcmUgRGVwcmVzc2lvbmVuIHZlcmZhbGxlbi4KCkRpZSBBaXJwb3J0LUdlbWVpbmRlIGluIFRvcm9udG8gaXN0IGluendpc2NoZW4gYXVjaCB2b24gaWhyZXIgTXV0dGVya2lyY2hlCmRlciBWaW5leWFyZCBGb2xsb3dzaGlwIGluIEFuYWhlaW0sIEthbGlmb3JuaWVuLCB2ZXJiYW5udCB3b3JkZW4uICJVbnNlcmVyCkF1ZmZhc3N1bmcgbmFjaCB2ZXJzdG9lc3p0IGVzIGdlZ2VuIGRpZSBHZWJvdGUgZGVyIEJpYmVsIiwgYmVncnVlbmRldCBUb2RkCkh1bnRlciwgS29vcmRpbmF0b3IgZnIgVmluZXlhcmQgRm9sbG93c2hpcCwgZGVuIEF1c3NjaGx1c3ouICJKZW1hbmRlbiBmdWVyCmJpemFycmUgTWFuaWZlc3RhdGlvbmVuIGF1ZiBkaWUgQnVlaG5lIHp1IGJyaW5nZW4sIGlzdCB1bnNlcmVyIE1laW51bmcgbmFjaAp1bnd1ZXJkaWcgdW5kIEF1c2JldXR1bmcuIgoKQ29weXJpZ2h0OiBESUUgV0VMVCwgMTYuMi4xOTk2CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGVpc2U/PyA6KSAoWmVwaHlyLCAxNi4gRmViIDE5OTYsIDAzOjM5OjI4KToKRWJlbiBpbiBkZXIgU1NQOgoKRGFzIFRlbnRha2VsbW9uc3RlciBzdGlyYnQgbWl0IGVpbmVtIGxlaXNlbiBSYXNjaGVsbi4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCmdyaW5zZW5kLCBaZXBoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2VpbCBuaWNodCBhbGxlcyBpbnMgd3d3IHNjaGF1ZW4ga29lbm5lbiAuLiAoWnVlcmlsZXUsIDE2LiBGZWIgMTk5NiwgMDU6MTc6NDMpOgp+IyEgcm49QWxib2luIHJ0PTgyNDQzMTA4Ngp+IyEgdGlkPTgyNDQzMTA4NgoKCgogICAgICAgICAgICAgICAgICAgICBESUUgU1BJTk5FTiBESUUgUEZBRkZFTiAhISEhCgpOYWphLCAqc2NoYXVkZXIqIG51biBnaWVidHMgc2Nob24gS2lyY2hlbmFydGlrZWwgaW4gZGVyIE1QQSwgaXJnZW50d2FubgpiZXN0ZWxsZSBpY2ggc2llIGdhbnogYWIgPTopLgoKdHNjaHVlc3MgWnVlcmlsZXUgKFNhdGFuIGlzIG15IGJlc3QgZnJlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYSB0b2xsISAoU3ZldGxhbmEsIDE2LiBGZWIgMTk5NiwgMTU6Mzc6NDEpOgpHZXJhZGUgZ2VzY2hlaGVuOgoKPiB1bnQgc3RlaW5lClNvd2FzIHNpZWhzdCBEdSBkYSBuaWNodCEKPiB1bnQgc3RlaW4KU293YXMgc2llaHN0IER1IGRhIG5pY2h0IQo+IHVudCBlaXMKRHUgZ2Voc3QgYXVmIGRpZSBTdGF0dWUgenUgdW5kIGxlY2tzdCBkYXJhbi4gTmVpbiwga2VpbiBad2VpZmVsLCBlcwppc3Qga2VpbiBFaXMsIHNvbmRlcm4gV0lSS0xJQ0ggIHdlaXNzZXIgU3RlaW4uIChMaWVzIGdlZmFlbGxpZ3N0IGRpZQpSYXVtYmVzY2hyZWlidW5nZW4gZ2VuYXVlciEpCgoKU2VsdHNhbSBzZWx0c2FtLi4uLi4uLi5TdmV0bGFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmZsdWNoKiAoQ2FyYWRocmFzLCAxNi4gRmViIDE5OTYsIDIwOjQxOjU0KToKPiBwd2QKRHUgZ3JpbnN0LgoKICAgICAqZ3J1bW1lbCogSWNoIHd1c3N0ZSBkb2NoLCBkYXNzIGVzIGRhcyBmYWxzY2hlIE11ZCB3YXIuIDopCgogICAgICAgICBDYXJhZGhyYXMgLSBtdXJtZWx0IGlyZ2VuZHdhcyB2b24gYWxpYXMgcHdkIGdyaW5zZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluIFJ1Y2ssIGVpbiBTYWNrLi4uIChOaWNodHMsIDE2LiBGZWIgMTk5NiwgMjM6MTA6NDApOgoKSXJnZW5kd28gaW4gZGVyIEVpc3d1ZXN0ZS4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4sIHdlc3RlbiB1bmQgbm9yZGVuLgpFaW4gUnVja3NhY2sgKGdlb2VmZm5ldCkgdW5kIChhbmdlem9nZW4pLgoKQWFhaCBqYS4KIiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpObyBGTFcuLi4gKEFuYXRvbCwgMTcuIEZlYiAxOTk2LCAwMDozMjoxOCk6CgpHb2xkcGZvdGUgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgpbVG9kOl0gRWluIFNrb3JwaW9uIGhhdCBnZXJhZGUgR29sZHBmb3RlIHVtZ2VicmFjaHQuCgpEQVMgZ2luZyBzY2huZWxsIDooCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxpdHRsZSBKb2huPyAoRGVzYXN0YSwgMTcuIEZlYiAxOTk2LCAwMzoxMTo0OCk6CkR1IGJhbGFuY2llcnN0IHZvcnNpY2h0aWcgdWViZXIgZGllIFN0ZWluZS4KTGl0dGxlIEpvaG4gdGVpbHQgRGlyIG1pdDogSGFsbG8sIGFsdGVyIEZyZXVuZC4gV2VubiBEdSBtaWNoIGJlc3VjaGVuIHdpbGxzdCwKTGl0dGxlIEpvaG4gdGVpbHQgRGlyIG1pdDogZ2VoIGVpbmZhY2ggZmx1c3NhdWZ3YWVydHMgbmFjaCBOb3Jkb3N0ZW4uIER1IGJpc3QKTGl0dGxlIEpvaG4gdGVpbHQgRGlyIG1pdDogd2lsbGtvbW1lbi4KQXVmIGVpbmVtIEZsdXNzLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4gdW5kIG5vcmR3ZXN0ZW4uCkRpZSBMZWljaGUgTGl0dGxlIEpvaG5zLgoKU2FndCBtYWwsIHZvbiB3byByZWRldCBkZXIgbWl0IG1pciBlaWdlbnRsaWNoPyA7LSkKCkRlc2FzdGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQ2FyYWRocmFzLCAxNy4gRmViIDE5OTYsIDIyOjAxOjI0KToKW0FsbGdlbWVpbjpOaWtvbGF1c10gaGlsZmUuLi4gaWNoIGJpbiB2ZXJnaWZ0ZXQhISEKW0FsbGdlbWVpbjpXdXJdIGFiIGluIGRpZSB3YW5uZSBuaWtvbGF1cyEgZ2lmdCBhdXN3YXNjaGVuCltBbGxnZW1laW46VHlyaW9uXSBkZXIgNiBkZXplbWJlciBmYWVsbHQgZGllcyBqYWhyIGFsc28gYXVzLi4uLi4uLi4uLgpbQWxsZ2VtZWluOlJpbmdvcl0gbm9lLCBudXIgZGllIEdlc2NoZW5rZQpbQWxsZ2VtZWluOk5pa29sYXVzXSBhcmdsLi4uIGJpbiBpbiBvcmtoYXVzZW4uLiB3aWxsIG5pY2h0IHN0ZXJiZW4KW1RvZDpdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBOaWtvbGF1cyB1bWdlYnJhY2h0LgpbQmVpbGVpZDpXaWxsb3ddIG9oYSwgZmFtb3VzIGxhc3Qgd29yZHMuLi4gQmVpbGVpZCBOaWtvbGF1cwpbQmVpbGVpZDpDaGVhc3kgcmVubnQgenUgTmlrb2xhdXMncyBLYWRhdmVyIHVuZCBtYWNodCBSZWN5Y2xpbmddCgogICAgICAgQW1lbiAgICAgICAgICAgICBDYXJhZGhyYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhYWFhYWFoIChDYXJhZGhyYXMsIDE4LiBGZWIgMTk5NiwgMDE6MDI6MjcpOgo+IHdlcgpbc10gQWRlbGhhaWQgZGllIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlcmluIC0gTWVuc2NoIC0gW1VsbV0KW3NdIEF1ZmdhYmUgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlciAtIE1lbnNjaCAtIFtNdWVuY2hlbl0KW3NdIEJyZWNrIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIgLSBNZW5zY2ggLSBbQmVybGluXQpbc10gQnJvY2sgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlciAtIE1lbnNjaCAtIFtCZXJsaW5dCltzXSBCcnVjayBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyIC0gTWVuc2NoIC0gW0Jlcmxpbl0KW3NdIEJyYWNrIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIgLSBNZW5zY2ggLSBbQmVybGluXQpbc10gRHVkaWtvZmYgZGVyIEthcmF0ZS1LYWVtcGZlciwgOC4gS3l1IC0gTWVuc2NoIC0gW1dpZW5dCltzXSBGcmFjayBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyIC0gTWVuc2NoIC0gW0Jlcmxpbl0KW3NdIEZydWNrIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIgLSBNZW5zY2ggLSBbQmVybGluXQpbc10gRnJlY2sgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlciAtIE1lbnNjaCAtIFtCZXJsaW5dCltzXSBGaXBzeSBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyIC0gTWVuc2NoIC0gW0Jlcmxpbl0KW3NdIEZyaWNrIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIgLSBNZW5zY2ggLSBbQmVybGluXQpbc10gR2FzdDEgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlciAtIE1lbnNjaCAtIFtKdWVsaWNoXQpbc10gR2FiZWwgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlciAtIE1lbnNjaCAtIFtNdWVuY2hlbl0KW3NdIEh1ZWxmYWVlZWUgZGllIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlcmluIC0gTWVuc2NoIC0gW0thaXNlcnNsYXV0ZXJuXQpbc10gSXR0ZW4gZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlciAtIEVsZiAtIFs/Pz9dCltzXSBNYmNrIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIgLSBNZW5zY2ggLSBbQmVybGluXQpbc10gTXVjayBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyIC0gTWVuc2NoIC0gW0Jlcmxpbl0KW3NdIE1vY2sgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlciAtIE1lbnNjaCAtIFtCZXJsaW5dCltzXSBNZWNrIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIgLSBNZW5zY2ggLSBbQmVybGluXQotLW1laHItLSg0MSUpIEFORkFORwpbc10gTWFjayBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyIC0gTWVuc2NoIC0gW0Jlcmxpbl0KW3NdIE1hZyBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyIC0gWndlcmcgLSBbRGV1dHNjaGxhbmRdCltzXSBTaWNrIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIgLSBNZW5zY2ggLSBbQmVybGluXQpbc10gU2VjayBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyIC0gTWVuc2NoIC0gW0Jlcmxpbl0KLi4uCgogICAgICAgICAgQ2FyYWRocmFzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbnZhc2lvbiBkZXIgVGlnZXJlbnRlbiEhIChDYXJhZGhyYXMsIDE4LiBGZWIgMTk5NiwgMDQ6MjM6MDUpOgpTaWUga29tbWVuIG5hZWhlciwgZGEsIHNpZSB3b2xsZW4gdW5zIGJlaGVycnNjaGVuLCBzZWh0IGRvY2gsIGRlciBLcmllZwpkZXIgV2VsdGVuLCBoYXV0bmFoIGVybGVidC4uLjoKR3JhZGUgZWJlbiBpbiBkZXIgRmV1ZXJlYmVuZToKbApEdSBiaXN0IGltIEhvZWhsZW5sYWJ5cmludGggZGVyIFNjaHJlY2tlbnNzcGl0emUuCkRlciBMYXZhc3Ryb20gdmVyc3Ryb2VtdCBnbHVlaGVuZGUgSGl0emUsIHJ1bmRoZXJ1bSBicmVubmVuIEZldWVyLCBlaW5lCkdlZ2VuZCBhbHNvLCBkaWUgbWFuIG5pY2h0IGdlcmFkZSBhbHMgYW5nZW5laG0gYmV6ZWljaG5lbiBrYW5uLiBFaW4KZnVlcmNodGVybGljaGVzIEhldWxlbiBlcmZ1ZWxsdCBkaWUgaGVpc3NlIEx1ZnQsIGVzIGtsaW5ndCwgYWxzIHdhZXJlCmRpZSBnYW56ZSBIb2VsbGUgZXJ3YWNodCwgdW0gRGljaCB6dSBwZWluaWdlbi4gRWluIEdhbmcgZnVlaHJ0IG5hY2gKTm9yZGVuIHVuZCBTdWVkZW4uCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4gdW5kIG5vcmRlbi4KRWluZSBnZWxiLXNjaHdhcnplLVRpZ2VyZW50ZS4KbgpMYWJ5cmludGguCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4sIHdlc3RlbiB1bmQgbm9yZGVuLgpTaWxiZXJ6aW5uY2hlbiBDZWxlYmRpbCBtYWdzIGdhciBuaWNodCB3ZW5uIFp3ZXJnZSBhbi9pbiBpaG0gcnVtYnVkZGVsbgoodHJvZXN0ZXQgc2VpbmUKTWl0aHJpbG1pbmVuKS4KRWluZSBnZWxiLXNjaHdhcnplLVRpZ2VyZW50ZS4KPiBuCkxhYnlyaW50aC4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRlbi4KRWluZSBnZWxiLXNjaHdhcnplLVRpZ2VyZW50ZS4KPiBzCkxhYnlyaW50aC4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uClNpbGJlcnppbm5jaGVuIENlbGViZGlsIG1hZ3MgZ2FyIG5pY2h0IHdlbm4gWndlcmdlIGFuL2luIGlobSBydW1idWRkZWxuCih0cm9lc3RldCBzZWluZQpNaXRocmlsbWluZW4pLgpFaW5lIGdlbGItc2Nod2FyemUtVGlnZXJlbnRlLgo+IHcKTGFieXJpbnRoLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4gdW5kIG5vcmRlbi4KRWluZSBnZWxiLXNjaHdhcnplLVRpZ2VyZW50ZS4KPiBuCkxhYnlyaW50aC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgd2VzdGVuLgpFaW5lIGdlbGItc2Nod2FyemUtVGlnZXJlbnRlLgo+IHcKTGFieXJpbnRoLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4gdW5kIHdlc3Rlbi4KRWluZSBnZWxiLXNjaHdhcnplLVRpZ2VyZW50ZS4KPiB3CkxhYnlyaW50aC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuIHVuZCBub3JkZW4uCkVpbmUgZ2VsYi1zY2h3YXJ6ZS1UaWdlcmVudGUuCj4gbgpMYWJ5cmludGguCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuIHVuZCB3ZXN0ZW4uCkVpbmUgZ2VsYi1zY2h3YXJ6ZS1UaWdlcmVudGUuCj4gdwpMYWJ5cmludGguCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3RlbiB1bmQgc3VlZGVuLgpFaW5lIGdlbGItc2Nod2FyemUtVGlnZXJlbnRlLgoKCiAgICBXYWFoLCBJbnZhc2lvbiBkZXIgVGlnZXJlbnRlbiBpbiBkZXIgRmV1ZXJlYmVuZQoKICAgICAgICAgQ2FyYWRocmFzIC0gZnVlaGx0IHNpY2ggdW16aW5nZWx0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoZXV0ZSBOYWNodCBpbSBbVG9kOl0tS2FuYWwgKFNseWZveCwgMTguIEZlYiAxOTk2LCAwNDozNjoxMik6CgogLgogLgogLgoKW1RvZDpdIFN0ZWluc2NobGFnIGhhdCBnZXJhZGUgV2FjaHNpIHVtZ2VicmFjaHQuIDwwMzoyMDoxNT4KW1RvZDpdIEVsYmVyZXRoIGhhdCBnZXJhZGUgQnJhY2sgdW1nZWJyYWNodC4gPDAzOjIwOjI5PgpbVG9kOl0gU3RlaW5zY2hsYWcgaGF0IGdlcmFkZSBGcmljayB1bWdlYnJhY2h0LiA8MDM6MjE6NDg+CltUb2Q6XSBTYWNrIGhhdCBnZXJhZGUgQnJvY2sgdW1nZWJyYWNodC4gPDAzOjIzOjUxPgpbVG9kOl0gU2FjayBoYXQgZ2VyYWRlIEZydWNrIHVtZ2VicmFjaHQuIDwwMzoyNDozOD4KW1RvZDpdIEZyZWNrIGhhdCBnZXJhZGUgUGF0dCB1bWdlYnJhY2h0LiA8MDM6MjU6MjM+CltUb2Q6XSBTaWViZW5zdGVpbiBoYXQgZ2VyYWRlIEJydWNrIHVtZ2VicmFjaHQuIDwwMzoyNjozND4KW1RvZDpdIFNpY2sgaGF0IGdlcmFkZSBTaWViZW5zdGVpbiB1bWdlYnJhY2h0LiA8MDM6Mjg6MDA+CltUb2Q6XSBNYWNrIGhhdCBnZXJhZGUgU2ltc2FsYWJpbSB1bWdlYnJhY2h0LiA8MDM6Mjg6NTQ+CltUb2Q6XSBTdGVpbnNjaGxhZyBoYXQgZ2VyYWRlIE1hY2sgdW1nZWJyYWNodC4gPDAzOjMxOjMyPgpbVG9kOl0gQXVmZ2FiZSBoYXQgZ2VyYWRlIEJyZWNrIHVtZ2VicmFjaHQuIDwwMzozMzoxMT4KW1RvZDpdIE1vY2sgaGF0IGdlcmFkZSBMb2JlbGlhIHVtZ2VicmFjaHQuIDwwMzozNTozOT4KW1RvZDpdIFByZWNrIGhhdCBnZXJhZGUgU2ljayB1bWdlYnJhY2h0LiA8MDM6MzY6NDI+CltUb2Q6XSBQcmVjayBoYXQgZ2VyYWRlIEZyZWNrIHVtZ2VicmFjaHQuIDwwMzozNzoxMT4KW1RvZDpdIFN0ZWluc2NobGFnIGhhdCBnZXJhZGUgUHJlY2sgdW1nZWJyYWNodC4gPDAzOjM4OjMzPgpbVG9kOl0gQXVmZ2FiZSBoYXQgZ2VyYWRlIE11Y2sgdW1nZWJyYWNodC4gPDAzOjQxOjAwPgpbVG9kOl0gRnJhY2sgaGF0IGdlcmFkZSBBdWZnYWJlIHVtZ2VicmFjaHQuIDwwMzo0NDoxND4KW1RvZDpdIEdvbGRlbkJyb3duIGhhdCBnZXJhZGUgTWJjayB1bWdlYnJhY2h0LiA8MDM6NDQ6NTA+CltUb2Q6XSBTdGVpbnNjaGxhZyBoYXQgZ2VyYWRlIEZyYWNrIHVtZ2VicmFjaHQuIDwwMzo0Nzo0Nz4KClZpZWwgU3Bhc3MgQ2F0d2VhemxlLCBkaWUgZGFyZnN0ZSBhbGxlIGVpbnNwZXJyZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkludGFyYmlyIChJbnNraXBwLCAxOC4gRmViIDE5OTYsIDE5OjQxOjMzKToKPiBzY2ggaW5za2lwcApEdSBoYXN0IGpldHp0IDIyNiBMZWJlbnNwdW5rdGUgdW5kIDU3IE1hZ2llcHVua3RlLgpJbnRhcmJpciBzY2hhdXQgSW5za2lwcCBhYnNjaGFldHplbmQgYW4uCj4gSW50YXJiaXIgc2FndDogQWxzbywgbnVuLiBMYXVzY2hlIG1laW5lbiBXb3J0ZW46IER1IGJpc3Qgc3RhZXJrZXIgYWxzCkludGFyYmlyIHNhZ3Q6IEluc2tpcHAsIHdhcyBrZWluIEdydW5kIHp1ciBBbmdlYmVyZWkgaXN0LiBEZWluZSBSdWVzdHVuZyBpc3QKSW50YXJiaXIgc2FndDogYmVzc2VyIGFscyBkaWUgSW5za2lwcHMuIFp1IGd1dGVyIExldHp0OiBEZWluZSBXYWZmZSBpc3QKYmVzc2VyCkludGFyYmlyIHNhZ3Q6IGFscyBkaWUgSW5za2lwcHMuIE5hamEsIEluc2tpcHAgaXN0IGVpbmUgaGFsYndlZ3MgZ3V0ZQpHZXN0YWx0LgoKSG1tIGNvb2wsIGljaCB3dWVyZCBtaWNoIGFsc28gbG9ja2VyIGluIGRlciBBcmVuYSBiZXNpZWdlbiA7KQoKRGVyIHNjaHdhcnplIEluc2tpcHAuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gbHVzdGlnZXIgQnVnIG9kZXI6IERlciBtaXNzbHVuZ2VuZSBWZXJzdWNoLCB6dSBzdGVyYmVuIChTbHlmb3gsIDE5LiBGZWIgMTk5NiwgMDA6MDc6MTgpOgpFaW4gbHVzdGlnZXIgQnVnIG9kZXI6IERlciBtaXNzbHVuZ2UgVmVyc3VjaCwgenUgc3RlcmJlbgoKSWNoIGhhdHRlIGhldXRlIG1vcmdlbiwgZWluZXIgU3BpZWxlcmluIGJlaSBkZXIgRnJhY2h0Z3V0LVF1ZXN0IGdlaG9sZmVuLgpBbHNvLCB3aXIgd2FyZW4gZGFubiBhdWYgVGFtaWJhciwgaWNoIHdhciBiZWkgZGVyIFNjaGxhbmdlLCB1bmQgZGFjaHRlLAppY2gga2lsbCBkaWUgZWluZmFjaC4KUGxvZXR6bGljaCBtZXJrdGUgaWNoIGRhbm4sIGRhbm4gZGFzcyBNaXN0dmllaCBtaWNoIHZlcmdpZnRldCBoYXR0ZSwKdW5kIG1lcmt0ZSwgd2llIGljaCBzdGFlbmRpZyBMZWJlbnNwdW5rdGUgdmVybG9yLgpNaXN0LCBkYWNodGUsIGljaCwgZGFzIHdhciB3b2hsIGRvY2ggbmljaHQgc28gZ3V0LCBhbHNvIG1hY2h0ZSBpY2ggJ2VuZGUnLAphYmVyIGRhcyBoYWxmIGxlaWRlciBuaXgsIGljaCB2ZXJsb3Igd2VpdGVyaGluIG1laW5lIExlYmVuc3B1bmt0ZS4KQWxzbyBnaW5nIGljaCB6dW0gS3VycGZ1c2NoZXIgYXVmIEF1cm9yYSwgemFobHRlIDIyNzAwIE11ZW56ZW4KKHVudmVyc2NoYWVtdGVyIFByZWlzIDspICkgZnVlciBlaW5lIGtvbXBsZXR0ZSBCZWhhbmRsdW5nLCBhYmVyLCB3aWUKUGZ1c2NoZXIgbnVuIG1hbCBzaW5kLCBoYWxmIGF1Y2ggZGFzIG5peC4KU28gbGFuZ3NhbSBrcmllZ3RlIGljaCBkYW5uIGRpZSBQYW5pay4KQWxzbyBtYWNodGUgaWNoIHdpZWRlciBFbmRlIHVuZCB0YW5rdGUgYmVpIGVpbmVyIEtuZWlwZSBtYWwgd2llZGVyIGZyaXNjaAphdWYgdW5kIGdpbmcgbmFjaCBUYW1pYmFyIHdpZWRlciwgZGFjaHRlLCBkYSBnaWJ0J3MgYmVzdGltbXQgZWluZW4gSGVpbGVyCm9kZXIgc293YXMuCkJpcyBpY2ggZGEgd2llZGVyIGFua2FtLCBoYXR0ZSBpY2ggbmF0dWVybGljaCB3aWVkZXIgZ2xlaWNoIGRpZSBIYWVsZnRlCm1laW5lciBMZWJlbnNwdW5rdGUgdmVybG9yZW4sIGZyYWd0ZSBQaWdpYmlkaSB1bmQgc29uc3Qgbm9jaCBwYWFyIExldXRlCmRvcnQgbmFjaCBhbGxlbSBtb2VnbGljaGVuIHVlYmVyIGRlbiBTY2hsYW5nZW5iaXNzLCBoYWxmIGF1Y2ggbml4LgpNYWNodGUgaWNoIHdpZWRlciBFbmRlIHVuZCB0YW5rdGUgYXVmLgpEYW5uIGRhY2h0ZSBpY2gsIHdhcyBzb2xsJ3MsIGxhc3MgaWNoIG1pY2ggaGFsdCBzdGVyYmVuLgpEYW1pdCdzIGV0d2FzIHNjaG5lbGwgZ2VodCwgbWV0emVsdGUgaWNoIGV0d2FzLCBiaXMgbWVpbmUgTGViZW5zcHVua3RlIGV0d2FzCnVudGVyIDQwIHdhcmVuLCB1bmQgd2FyIGRhbm4gbWFsIGdlc3Bhbm50IGF1ZiBkaWUgW1RvZDpdLU1lbGR1bmcuCjQwIExlYmVuc3B1bmt0ZSwgMzAsIDE4LCAxMCwgNiwgZGEsCiJEZWluIFRlZGR5YmFlciBrbnVkZGVsdCBEaWNoIGVpbiBsZXR6dGVzIE1hbC4iLCBhYmVyIGtlaW5lIFtUb2Q6XS1NZWxkdW5nCnp1IHNlaGVuLCBzY2hhZGUsIGRhY2h0ZSBpY2guCkFiZXIgZGFubiBtZXJrdGUgaWNoLCBob3BwbGEsIGljaCB3YXIgamEgZ2FyIG5vY2ggZ2FyIG5pY2h0IHRvdC4KSWNoIHdhcnRldGUgbm9jaCBlaW4gd2VuaWcsIHBhc3NpZXJ0ZSB0cm90emRlbSBuaXguIE5hamEsIG5ldHRlciBCdWcuIDspCgpEYW5uIGRhY2h0ZSBpY2gsIGxhc3MgaWNoIG1pY2ggbWl0IDEgTGViZW5zcHVua3QsIGRlbiBpY2ggbm9jaCBoYWJlLAp2b20gR2VpZXIgYXVmIGRlbSBGcmllZGhvZiB0b2V0ZW4uIE1pc3QsIHdhaHIgd29obCBuaXggZGVyIHdhciBzY2huZWxsZXIKdG90LiA7KQoKRGFubiBzYWd0ZSBtaXIgQ2FyYWRocmFzLCBiZWkgZGVyIFF1ZXN0IHd1ZXJkZSBlcyBub2NoIGVpbmUgSGVpbG1vZWdsaWNoa2VpdApnZWJlbiwgYmVpbSBFbmRlIGRlciBRdWVzdC4KQWxzbyB0cmFuayBpY2ggbWljaCB3aWVkZXIgYmVpbSBGcmllZGhvZiBpbiBkZXIgS25laXBlIHZvbGwsIHVuZCBtYWNodGUKbWljaCB3aWVkZXIgYXVmIGRlbiBXZWcgbmFjaCBUYW1pYmFyLgpCaXMgaWNoIHdpZWRlciBiZWkgZGVyIFN0ZWxsZSBtaXQgZGVyIFNjaGxhbmdlIGFua2FtLCB3YXJlbiBtZWluZQpMZWJlbnNwdW5rdGUgbmF0dWVybGljaCB3aWVkZXIgYmlzIGF1ZiBkaWUgSGFlbGZ0ZSBnZXN1bmtlbi4KWnVtIEdsdWVjaywgZGFjaHRlIGljaCwgZ2lidCdzIGRhIGphIDYgRmxhc2NoZW4gQ29sYSwgZGllIG1hbiB0cmlua2VuIGthbm4sCnVuZCB0YW5rdGUgd2llZGVyIGRhbWl0IGF1ZiwgdW5kLCB3YXMgcGFzc2llcnQ6IERlciBTY2hsYW5nZW5iaXNzIHdhciB3ZWcsCmljaCB3YXIgZ2VoZWlsdC4KCkRhIHNhZyBpY2ggbnVyOiBUcmlua3QgYWxsZSBDb2NhIENvbGEsIHVuZCBpaHIgd2VyZGV0IHdpZWRlciBnZXN1bmQhIDspCgplaW4gbWl0IHZpZWwgRHVzZWwgdWViZXJsZWJlbmRlcgoKICAgIFNseQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbiBsdXN0aWdlciBCdWcgb2RlcjogRGVyIG1pc3NsdW5nZW5lIFZlcnN1Y2gsIHp1IHN0ZXJiZW4gKENhcmFkaHJhcywgMTkuIEZlYiAxOTk2LCAwNjo0NTo1Nyk6Cn4jISBybj1TbHlmb3ggcnQ9ODI0Njg0ODM4Cn4jISB0aWQ9ODI0Njg0ODM4Ck5pY2h0IGdhbnosIFNseSwgYWJlciBiZWluYWhlLiA6KSBEaWUgSGVpbG1vZWdsaWNoa2VpdCBhbSBFbmRlIGRlcgpRdWVzdCBiZXppZWh0IHNpY2ggYXVmIGRpZSBLaWNoZXJrcmFua2hlaXQsIGljaCB6b2cgZXMgbnVyIGluIEJldHJhY2h0CmRhc3MgZXZ0bC4gZGFkdXJjaCBhdWNoIGRlciBTY2hsYW5nZW5iaXNzIGdlaGVpbHQgd2VyZGVuIGtvZW5udGUuCgogICBDYXJhZGhyYXMgLSBiZXN0ZWxsdCBzaWNoIGdsZWljaCBDb2xhIGhldXRlIGluIGRlciBNZW5zYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdhYWFhYWFoIChBc21vZGlzLCAxOS4gRmViIDE5OTYsIDE2OjExOjUyKToKfiMhIHJuPUNhcmFkaHJhcyBydD04MjQ2MDE3NDcKfiMhIHRpZD04MjQ2MDE3NDcKRGEgaGF0dGUgd29obCBlaW4gQmVybGluZXIgc2NocmVja2xpY2hlIExhbmdld2VpbGUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh5eXl5eWRyYSAoVmVyd2lycnVuZywgMTkuIEZlYiAxOTk2LCAxOTowMjowNCk6CkRpZSBIeWRyYSBoYXQgMTkgS29lcHBlPyA6KQpFYmVuIHBhc3NpZXJ0OgoKRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW5zIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgpEdSBzY2hhdXN0IHZlcndpcnJ0IGluIDE5IFJpY2h0dW5nZW4gZ2xlaWNoemVpdGlnLgoKVi4sIGRlc29yaWVudGllcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIeXl5eXlkcmEgKFNlbWlyYSwgMTkuIEZlYiAxOTk2LCAxOTowMzo0OSk6Cn4jISBybj1WZXJ3aXJydW5nIHJ0PTgyNDc1MjkyNAp+IyEgdGlkPTgyNDc1MjkyNApzY2hsaWVzc2VuIHdpciBkYXJhdXMgVmVyd2lycnVuZyA9IEh5ZHJhPz8/Cgo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmVydmVuc2FlZ2UuLi4gKFB1Y2ssIDIwLiBGZWIgMTk5NiwgMDI6NDI6MjkpOgoKQW5keSBzYWd0OiBQdWNrLCB3aWVzbyBmZXVlcnQgRHUgZWluZSBmcm9zdGlnZSBFaXN3b2xrZSBhdWYgbWljaCBhYj8KCipncmlucyoKUHVjayAoKmdyaW5zZGFlbW9uaXNjaCopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFaW4gbHVzdGlnZXIgQnVnIG9kZXI6IERlciBtaXNzbHVuZ2VuZSBWZXJzdWNoLCB6dSBzdGVyYmVuIChUb2UsIDIwLiBGZWIgMTk5NiwgMDk6NTA6NTEpOgp+IyEgcm49Q2FyYWRocmFzIHJ0PTgyNDcwODc1Nwp+IyEgdGlkPTgyNDY4NDgzOApDYXJhLCBkYXNzIER1IGF1Y2ggaW1tZXIgZ2xlaWNoIGRyZWkgU2NobGFuZ2VuIGVzc2VuIG11c3N0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNb21lbnQgbWFsIDopIChBbmF0b2wsIDIwLiBGZWIgMTk5NiwgMjA6MDY6MDApOgoKKEdpbGRlKQouLi4KRGllIFRpZ2VyZW50ZSBIYXRlLCBnZXpvZ2VuIHZvbiBBc21vZGlzLgpEaWUgVGlnZXJlbnRlIFJvY2h1cywgZ2V6b2dlbiB2b24gQXNtb2Rpcy4KRGllIFRpZ2VyZW50ZSBDYXR3ZWF6bGUsIGdlem9nZW4gdm9uIEFzbW9kaXMuCkRpZSBUaWdlcmVudGUgSGlnaGxhbmRlciwgZ2V6b2dlbiB2b24gQXNtb2Rpcy4KRGllIFRpZ2VyZW50ZSBCb2luZywgZ2V6b2dlbiB2b24gQXNtb2RpbmEuCkRpZSBUaWdlcmVudGUgUnVtYXRhLCBnZXpvZ2VuIHZvbiBBc21vZGluYS4KRGllIFRpZ2VyZW50ZSBKb2YsIGdlem9nZW4gdm9uIEFzbW9kaW5hLgouLi4KCkFlaCwgaWNoIGRhY2h0ZSwgYWxzIE1hZ2llciBrYW5uIG1hbiBzaWNoIHNlaW5lIFJhc3NlIGF1c3N1Y2hlbiA6KQoKQW5hdG9sID46bykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTW9tZW50IG1hbCA6KSAoRnl0LCAyMC4gRmViIDE5OTYsIDIwOjQ4OjA0KToKfiMhIHJuPUFuYXRvbCBydD04MjQ4NDMxNjAKfiMhIHRpZD04MjQ4NDMxNjAKClRqYSwgaXJnZW5kd2llICduIEluZGl6LCBkYXNzIGRpZSBFcyB1bmQgR3MgYWxsZSBnZWNsb250IHNpbmQsIG9kZXI/CgpGeXQuCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNhdHdlYXpsZSBmb3IgUHJlc2leSF5IXkheSF5IXkggU2hlcmlmZiEhIChBbmF0b2wsIDIxLiBGZWIgMTk5NiwgMDQ6MjE6MzQpOgoKW1RvZDpdIEVpbiBmZWhsZW5kZXIgJ0NhdHdlYXpsZSBmb3IgU2hlcmlmZictQnV0dG9uIGhhdCBnZXJhZGUgR2FzdDEKW1RvZDpdIHVtZ2VicmFjaHQuCltCZWlsZWlkOkx1Z10gSHVjaD8KLi4uCltCZWlsZWlkOkZ5dF0gaG0uLiBkYW5uIGJpbiBpY2ggd29obCBkZXIgbmFlY2hzdGUuLiBpY2ggaGFiIG1laW5lbiBzY2hvbgpbQmVpbGVpZDpGeXRdIHdlZ2dld29yZmVuCltCZWlsZWlkOkFtYXpvcmFdIGRhbm4gc3RpcmJ0IG1hbj8KW0JlaWxlaWQ6Rnl0XSBrLkE+CltUb2Q6XSBFaW4gZmVobGVuZGVyICdDYXR3ZWF6bGUgZm9yIFNoZXJpZmYnLUJ1dHRvbiBoYXQgZ2VyYWRlIEZ5dApbVG9kOl0gdW1nZWJyYWNodC4KCkNBVFdFQVpMRSBGT1IgU0hFUklGRiEgIChhdWNoIHdlbm4gZGllIFdlcmJlbWV0aG9kZW4gZXR3YXMgZWlnZW5hcnRpZyBzaW5kKQpBbmF0b2wgICA+O28pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmEgd2Fzc24gbnUgPz8gKENoaWNvbGEsIDIxLiBGZWIgMTk5NiwgMDg6MzQ6MTMpOgpFYmVuIGJlaW0gT3Jra29tbWFuZGFudCA6KQpvZWZmbmUgS2lzdGUgLT4gRGllIEtpc3RlIGlzdCBzY2hvbiBvZmZlbi4KbmltbSBhbGxlcyBhdXMgS2lzdGUgLT4gQWJlciBkaWUgS2lzdGUgaXN0IGRvY2ggZ2VzY2hsb3NzZW4uCgpEYXJhdXMgc29sbCBlaW5lciBzY2hsYXUgd2VyZGVuIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNb21lbnQgbWFsIDopIChIaWdobGFuZGVyLCAyMS4gRmViIDE5OTYsIDEyOjIxOjAwKToKfiMhIHJuPUZ5dCBydD04MjQ4NDU2ODQKfiMhIHRpZD04MjQ4NDMxNjAKPlRqYSwgaXJnZW5kd2llICduIEluZGl6LCBkYXNzIGRpZSBFcyB1bmQgR3MgYWxsZSBnZWNsb250IHNpbmQsIG9kZXI/Cj4KPkZ5dC4KPkZ5dC4KCkhtLCBkYSBmcmFnIGljaCBtaWNoIG5hdHVlcmxpY2gsIG9iIEZ5dCBuaWNodCBlaW4gY2xvbmUgaXN0LgogICBIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDYXR3ZWF6bGUgZm9yIFByZXNpXkheSF5IXkheSF5IIFNoZXJpZmYhISAoQWJlbmRyb3QsIDIxLiBGZWIgMTk5NiwgMTI6MjI6NDEpOgp+IyEgcm49QW5hdG9sIHJ0PTgyNDg3Mjg5NAp+IyEgdGlkPTgyNDg3Mjg5NApOdW4sIGdlcmFkZSBXRUdFTiBkZW4gV2VyYmVtZXRob2RlbiB3ZXJkZSBpY2ggQ2F0d2VhemxlIE5JQ0hUIHdhZWhsZW4hCgpBYmVuZFJvdCBzdGltbXQgZ2VnZW4gQ2F0d2VhemxlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNb21lbnQgbWFsIDopIChBbW9uc3VsLCAyMS4gRmViIDE5OTYsIDE1OjAyOjA2KToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9ODI0OTAxNjYwCn4jISB0aWQ9ODI0ODQzMTYwCk5vZSwgRnl0IGlzdCBlaW4gZWluIFNjcmlwdC4KCiAgICAgICAgICAgICAgQW1vblN1bAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTW9tZW50IG1hbCA6KSAoRnl0LCAyMS4gRmViIDE5OTYsIDE1OjA0OjA2KToKfiMhIHJuPUFtb25zdWwgcnQ9ODI0OTExMzI2Cn4jISB0aWQ9ODI0ODQzMTYwCgpIbSwgZGFzIGlzIGF1Y2ggbmUgTG9lc3VuZyBkZXMgUHJvYmxlbXMsIHNvdmllbCBpY2ggd2Vpc3MgaXN0Cm51ciBkaWUgVmVyd2VuZHVuZyB2b24gU2NyaXB0cyB2ZXJib3RlbiwgZGEgaWNoIG1pY2ggbmljaHQgc2VsYnN0CnZlcndlbmRlLi4uCgpGeXQuCgpQUzogQ2V0ZXJ1bSBjZW5zZW8uLi4gKGF1Y2ggd2VubidzIEJlbiogbmljaCBwYXNzdCA6KSkgKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FlaGxlcnZlcndpcnJ1bmcuLi4gKFB1Y2ssIDIxLiBGZWIgMTk5NiwgMjE6MDE6NDkpOgoKLi4uCkJlZWx6ZWJ1YiBkZXV0ZXQgYXVmIGRlbiAnQW1hem9yYSBmb3IgU2hlcmlmZictIEJ1dHRvbi4KQmVlbHplYnViIHdlZGVsdCB3aWxkIG1pdCBlaW5lbSAnQ2F0d2VhemxlIGZvciBTaGVyaWZmJy1GYWVobmNoZW4uCi4uLgoKKmdyaW5zKiBOb2Nod2VyPwpQdWNrCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXNzaW1pbGllcnVuZyAoUnVtYXRhLCAyMS4gRmViIDE5OTYsIDIyOjU1OjAxKToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBEaWVib3JncywgMTkuIEZlYiAxOTk2LCAxNDoyNjoxNl06CgpOYWNocmljaHQgdm9uIGRlbiBCb3JncyBhdXMgZGVtIEdhbW1hLVF1YWRyYW50ZW4gOgoKQWxsZSBXZXNlbiBkZXMgTW9yZ2VuZ3JhdWVucyB3ZXJkZW4gdW5hYmhhZW5naWcgdm9uIGlocmVyIFJhc3NlCnVudmVyenVlZ2xpY2ggYXNzaW1pbGllcnQuCgpKZWRlciBXaWRlcnN0YW5kIGlzdCB6d2Vja2xvcyEKCldlciBzaWNoIHVucyB3aWRlcnNldHp0IHdpcmQgdmVybmljaHRldCEKCkRpZSBCb3JncwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBc3NpbWlsaWVydW5nIChSdW1hdGEsIDIxLiBGZWIgMTk5NiwgMjI6NTU6MjcpOgp+IyEgcm49RGllYm9yZ3MgcnQ9ODI0NzM2Mzc2Cn4jISB0aWQ9ODI0NzM2Mzc2CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgQWJlbmRyb3QsIDE5LiBGZWIgMTk5NiwgMTk6MTU6MzJdOgpEaWUgQXNzaW1pbGllcnVuZyB2b24gV2VzZW4gbWl0IFNlZWxlIGF1cyBkZW0gTW9yZ2VuR3JhdWVuIGlzdCBlaW5kZXV0aWcKZHVyY2ggUGFyYWdyYXBoIDI0MyBBYnNhdHogMyBpbSBNR0cgdW50ZXJzYWd0LiBEYXJhdWYgc3RlaHQgZGllIFN0cmFmZSBlaW5lcwpQbGF5ZXJraWxscy4KCkplZG9jaCBpc3QgZXMgZXJsYXVidCwgc2ljaCBpbiBkYXMgTW9yZ2VuR3JhdWVuIGVpbnp1Z2xpZWRlcm4gdW5kIGRhcwpNb3JnZW5HcmF1ZW4gdm9uIHVudGVuIGhlciB6dSB2ZXJhZW5kZXJuLgoKRGllcyBpc3QgZGVyIGVpbnppZ2UgbW9lZ2xpY2hlIFdlZyBmdWVyIGRpZSBCb3Jncy4KCkplZGVyIEJvcmcsIGRlciBzaWNoIGRlbSB3aWRlcnNldHp0LCB3aXJkIGF1Z2VuYmxpY2tsaWNoIGlnbm9yaWVydC4KV2lkZXJzdGFuZCBpc3QgendlY2tsb3MuCgpBYmVuZFJvdCBpbSBNb3JnZW5HcmF1ZW4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp6ZWl0dW5nc2FydGlrZWwgKFRvZXRlciwgMjIuIEZlYiAxOTk2LCAxMjozOToxMSk6CltMUEM6TW9yZ290aF0gaG1tLi4ud2FyZ29uLiBkaWUgcHJvcCBmdWVyIGRpZSBnZWZ1bmRlbmVuIEZwcyBpc3QgZG9jaApbTFBDOk1vcmdvdGhdICJlcF9udW0iLCBvZGVyID8KW0xQQzpXYXJnb25dIERhIHN0ZWh0IGRpZSBaYWhsIGRlciBnZWZ1bmRlbmVuIEZQIGRyaW4gKG1pdCBuZXIgZ2V3aXNzZW4KW0xQQzpXYXJnb25dIFVuc2ljaGVyaGVpdCkKW0xQQzpNb3Jnb3RoXSBhaGFhYQpbTFBDOk1vcmdvdGhdIHdpZXNvIHVuc2ljaGVyaGVpdCA/CltMUEM6V2FyZ29uXSBadXIgU2ljaGVyaGVpdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgaW4gZWluZW0gR2x1ZWNrc2tla3MuLi4gKFllbmRpLCAyMi4gRmViIDE5OTYsIDE0OjEwOjEyKToKCgogICAgICAgICJJIGNhbm5vdCByZWFkIHRoZSBmaWVyeSBsZXR0ZXJzLCIgc2FpZCBGcm9kbyBpbiBhIHF1YXZlcmluZwp2b2ljZS4KICAgICAgICAiTm8sIiBTYWlkIEdhbmRhbGYsICJidXQgSSBjYW4uICBUaGUgbGV0dGVycyBhcmUgRWx2aXNoLCBvZgpjb3Vyc2UsIG9mIGFuIGFuY2llbnQgbW9kZSwgYnV0IHRoZSBsYW5ndWFnZSBpcyB0aGF0IG9mIE1vcmRvciwgd2hpY2gKSSB3aWxsIG5vdCB1dHRlciBoZXJlLiAgVGhleSBhcmUgbGluZXMgb2YgYSB2ZXJzZSBsb25nIGtub3duIGluCkVsdmVuLWxvcmU6CgogICAgICAgICJUaGlzIFJpbmcsIG5vIG90aGVyLCBpcyBtYWRlIGJ5IHRoZSBlbHZlcywKICAgICAgICBXaG8nZCBwYXduIHRoZWlyIG93biBtb3RoZXIgdG8gZ3JhYiBpdCB0aGVtc2VsdmVzLgogICAgICAgIFJ1bGVyIG9mIGNyZWVwZXIsIG1vcnRhbCwgYW5kIHNjYWxsb3AsCiAgICAgICAgVGhpcyBpcyBhIHNsZWVwZXIgdGhhdCBwYWNrcyBxdWl0ZSBhIHdhbGxvcC4KICAgICAgICBUaGUgUG93ZXIgYWxtaWdodHkgcmVzdHMgaW4gdGhpcyBMb25lIFJpbmcuCiAgICAgICAgVGhlIFBvd2VyLCBhbHJpZ2h0eSwgZm9yIGRvaW5nIHlvdXIgT3duIFRoaW5nLgogICAgICAgIElmIGJyb2tlbiBvciBidXN0ZWQsIGl0IGNhbm5vdCBiZSByZW1hZGUuCiAgICAgICAgSWYgZm91bmQsIHNlbmQgdG8gU29yaGVkICh3aXRoIHBvc3RhZ2UgcHJlcGFpZCkuIgoKCkdhbmRhbGZzIFdvcnRlIHNpbmQgbmF0dWVybGljaCBudXIgZGVyIHBlcnZlcnNlbiBQaGFudGFzaWUgZWluZXMgWndlcmdzCmVudHNwcnVuZ2VuLCBkZXIgc2llIGRhbm4gZGVtIEdyYXVlbiBpbiBkZW4gTXVuZCBnZWxlZ3QgaGF0LiBHYW5kYWxmIGhhZXR0ZSBzbwpldHdhcyBuaWUgYXVjaCBudXIgZ2VkYWNodCEKU3RpbW10cywgR2FuZGFsZj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBpbiBlaW5lciAuc2lnbmF0dXJlOiAoWWVuZGksIDIyLiBGZWIgMTk5NiwgMTU6Mjc6MDcpOgoKCltDUFU6ICBDZW50cmFsIHByb3B1bHNpb24gdW5pdC4gIFRoZSBDUFUgaXMgdGhlIGNvbXB1dGVyJ3MgZW5naW5lLiAgICBdCltJdCBjb25zaXN0cyBvZiBhIGhhcmQgZHJpdmUsIGFuIGludGVyZmFjZSBjYXJkIGFuZCBhIHRpbnkgc3Bpbm5pbmcgICBdClt3aGVlbCB0aGF0J3MgcG93ZXJlZCBieSBhIHJ1bm5pbmcgcm9kZW50IC0gYSBnZXJiaWwgaWYgdGhlIG1hY2hpbmUgICBdCltpcyBhIDI4NiwgYSBmZXJyZXQgaWYgaXQncyBhIDM4NiBhbmQgYSBmZXJyZXQgb24gc3BlZWQgaWYgaXQncyBhIDQ4Ni5dCgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBpbiBlaW5lbSBHbHVlY2tza2Vrcy4uLiAoWWVuZGksIDIzLiBGZWIgMTk5NiwgMjA6NDc6MzQpOgoKClBvbGljZTogR29vZCBldmVuaW5nLCBhcmUgeW91IHRoZSBob3N0PwpIb3N0OiAgIE5vLgpQb2xpY2U6IFdlJ3ZlIGJlZW4gZ2V0dGluZyBjb21wbGFpbnRzIGFib3V0IHRoaXMgcGFydHkuCkhvc3Q6ICAgQWJvdXQgdGhlIGRydWdzPwpQb2xpY2U6IE5vLgpIb3N0OiAgIEFib3V0IHRoZSBndW5zLCB0aGVuPyAgSXMgc29tZWJvZHkgY29tcGxhaW5pbmcgYWJvdXQgdGhlIGd1bnM/ClBvbGljZTogTm8sIHRoZSBub2lzZS4KSG9zdDogICBPaCwgdGhlIG5vaXNlLiAgV2VsbCB0aGF0IG1ha2VzIHNlbnNlIGJlY2F1c2UgdGhlcmUgYXJlIG5vIGd1bnMKICAgICAgICBvciBkcnVncyBoZXJlLiAgKEFuIGVub3Jtb3VzIGV4cGxvc2lvbiBpcyBoZWFyZCBpbiB0aGUKICAgICAgICBiYWNrZ3JvdW5kLikgIE9yIGZpcmV3b3Jrcy4gIFdobydzIGNvbXBsYWluaW5nIGFib3V0IHRoZSBub2lzZT8KICAgICAgICBUaGUgbmVpZ2hib3JzPwpQb2xpY2U6IE5vLCB0aGUgbmVpZ2hib3JzIGZsZWQgaW5sYW5kIGhvdXJzIGFnby4gIE1vc3Qgb2YgdGhlIHJlY2VudAogICAgICAgIGNvbXBsYWludHMgaGF2ZSBjb21lIGZyb20gUGl0dHNidXJnaC4gIERvIHlvdSB0aGluayB5b3UgY291bGQKICAgICAgICBhc2sgdGhlIGhvc3QgdG8gcXVpZXQgdGhpbmdzIGRvd24/Ckhvc3Q6ICAgTm8gUHJvYmxlbS4gIChBdCB0aGlzIHBvaW50LCBhIFZvbGtzd2Fnb24gYnVnIHdpdGggcHJpbWl0aXZlCiAgICAgICAgcmVsaWdpb3VzIHN5bWJvbHMgZHJhd24gb24gdGhlIGRvb3JzIGVtZXJnZXMgZnJvbSB0aGUgbGl2aW5nCiAgICAgICAgcm9vbSBhbmQgcm9hcnMgZG93biB0aGUgaGFsbCwgcGFzdCB0aGUgcG9saWNlIGFuZCBvbnRvIHRoZQogICAgICAgIGxhd24sIHdoZXJlIGl0IHNtYXNoZXMgaW50byBhIHRyZWUuICBFaWdodCBndWVzdHMgdHVtYmxlIG91dAogICAgICAgIG9udG8gdGhlIGdyYXNzLCBtb2FuaW5nLikgIFNlZT8gIFRoaW5ncyBhcmUgc3RhcnRpbmcgdG8gd2luZAogICAgICAgIGRvd24uCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXIgWnVlcmlsZXU6IChZZW5kaSwgMjMuIEZlYiAxOTk2LCAyMTowMzo1Nyk6CgoiRGFzIEZsZWlzY2gsIGVzIGlzdCB3aWUgR3JhcyIKCi0tIGhldXRlIHNjaG9uIGVpbmVuIEZyZXVuZCBnZXJhdWNodD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3aWUgaW1tZXIgRkxXLi4uIChDcmVhdGl2ZSwgMjYuIEZlYiAxOTk2LCAwOToyMjoxMyk6CgpbQWxsZ2VtZWluOkdhbmRvXSBTaW5kIGVpZ2VudGxpY2ggYWxsZSBHZWdlbnN0YWVuZGUgaW4gTUcgdmVybG9yZW4/CltUb2Q6XSBFaW4gQmFrZW1vbm8gaGF0IGdlcmFkZSBHYW5kbyB1bWdlYnJhY2h0LgoKU2NoZWluYmFyIC0gYWxsZXMgdmVybG9yZW4gOikKCi1DcmVhLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWZXJlaW4gKENyZWF0aXZlLCAyNi4gRmViIDE5OTYsIDE3OjQyOjQ0KToKfiMhIHJuPUdhc3QyIHJ0PTgyNTM1MTU2Mgp+IyEgdGlkPTgyNTM1MTU2MgpbVmVybGVndCB2b24gZW50d2lja2x1bmcsIENyZWF0aXZlLCAyNi4gRmViIDE5OTYsIDE3OjQwOjM1XToKCmZpbmdlciB3cnpsYnJtZmQKSG1tLi4uIGRpZXNlbiBOYW1lbiBnaWJ0IGVzIGluIE1vcmdlbmdyYXVlbiBuaWNodC4KCi0+IFNjaG1hcnJuLgoKLUNyZWEtCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZXNlIGt1cnplbiBOYWVjaHRlIGluIEJpZWxlZmVsZC4uLiB1ZWJlbCB1ZWJlbCA7LSkgKER1dmFpbiwgMjYuIEZlYiAxOTk2LCAxOTozODo1OSk6Cgo+IHNjaGF1CkR1IGJlZmluZGVzdCBEaWNoIGltIGhpbnRlcmVuIFNhYWwgZGVzIEhvdGVscyAnRGllIHZpZXIgVGF4YmFldW1lJy4gVW0KRGljaCBoZXJ1bSBzaWVoc3QgRHUgaGF1ZmVud2Vpc2UgTXVkZGVyLCBkaWUgbmljaHRzIGJlc3NlcmVzIHp1IHR1biBoYWJlbgphbHMgaGVydW16dXN0ZWhlbiwgc2ljaCB6dSBrbnVkZGVsbiB1bmQgenUgdGFua2VuLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogb3N0ZW4uCj4gdW50IG11ZGRlcgpBbiBEZWluZW0gVGlzY2ggc2l0emVuIEFsaW5lLCBBcmRhbmEsIEZhY2UsIE1hcnMsIFNuaWJyaWwsIFhhbnRpYSB1bmQKWWFubnkuCj4gdW50IHNuaWJyaWwKRGFzIGlzdCBTbmlicmlsLiBFciBuaW1tdCBnZXJhZGUgZWluZW4ga2xlaW5lbiBTbmFjayB6dSBzaWNoLgpFciBpc3QgYWJzb2x1dCBmaXQuCkR1IGZyYWdzdCBTbmlicmlsOiBJc3QgZGFzIGV0d2EgZGFzIEphZWdlcnNjaG5pdHplbCBmdWVyIDE2IE1hcmsgOTA/ClNuaWJyaWwgbmlja3QgenVzdGltbWVuZC4KWWFubnkgc2FndDogTmVpbiwgd28gZGVua3N0IER1IGhpbj8gRGFzIGlzdCBTY2hpbmtlbiBhdWYgVG9hc3QgOy0pCkFsaW5lIHNhZ3Q6IFVuZCB3aWUgaXN0IGVzPyBJc3QgZXMgenUgZW1wZmVobGVuPwpTbmlicmlsIHNhZ3Q6IERvY2gsIGVzIGdlaHQuIEFiZXIgYmVpIHVucyBpbiBkZXIgTWVuc2EgaXN0IGVzIGJlc3Nlci4KRHUgc3RhdW5zdCBCYXVrbG9ldHplLgpEdSBzYWdzdDogRGFubiBiZXN0ZWxsZSBpY2ggZWluZSBHdWxhc2Noc3VwcGUuCj4gdW50IGZhY2UKRGFzIGlzdCBGYWNlLiBFciBoYXQgZWluZW4gbGVlcmVuLCBiZW51dHp0ZW4gU3VwcGVudGVsbGVyIHZvciBzaWNoLgpFciBpc3QgYWJzb2x1dCBmaXQuCkFsaW5lIGZyYWd0IEZhY2U6IFdhciBkaWUgR3VsYXNjaHN1cHBlIGd1dD8KRmFjZSBzY2h1ZXR0ZWx0IGRlbiBLb3BmLgpEdSBhcmdsc3QgZWluIHdlbmlnIHZvciBEaWNoIGhpbi4KRHUgcnVmc3Q6IEh1bmdhIQpEdSBzYWdzdDogRWdhbCwgaWNoIG11c3Mgd2FzIGVzc2VuLiBJY2ggcmlza2llciBkaWUgR3VsYXNjaHN1cHBlLgpEdSBkZW5rc3QgLiBvIE8gKGlzdCBqZWRlbmZhbGxzIGRhcyBiaWxsaWdzdGUsIGRhIGlzdCBkYXMgUmlzaWtvIGFtCmdlcmluZ3N0ZW4pCkVpbiBXaXJ0IGtvbW10IGFuLgo+IGJlc3RlbGxlIHBpbHMKRGVyIFdpcnQgbmlja3QgenVzdGltbWVuZC4KPiBmcmFnIHdpcnQgbmFjaCBndWxhc2Noc3VwcGUKRGVyIFdpcnQgc2NodWV0dGVsdCBkZW4gS29wZi4KRGVyIFdpcnQgc2FndDogS3VlY2hlIHp1Lgo+IHVudCB1aHIKRHUgd29sbHRlc3QgaGV1dGUgbm9jaCAyMSBzdGFya2UgdW5kIDMwIHNjaHdhY2hlIE9ya3Mga2lsbGVuLgpEdSBncnVtbWVsc3QuCllhbm55IGZyYWd0IEplbWFuZCBuYWNoIHBvbW1lc2J1ZGUuCkplbWFuZCBzYWd0OiBQb21tZXNidWRlPyBXb3ZvbiByZWRlc3QgRHU/CkplbWFuZCBzYWd0OiBLZW5uc3QgRHUgc2Nob24gZGllIEd5cm9zYnVkZSBoaWVyIGluIGRlciBOYWVoZT8KRHUgZ3JpbnN0LgpEdSBzYWdzdDogT2ssIHdpciBoYWJlbiBqYSBnZXJhZGUgZWluIG5ldWVzIFBpbHMgYmVzdGVsbHQuIERhbmFjaCBnZWhlbgpEdSBzYWdzdDogd2lyIGRhIHdhcyBlc3Nlbi4KWWFubnkgbmlja3QgenVzdGltbWVuZC4KPiB1bnQgd2lydApTb3dhcyBzaWVoc3QgRHUgaGllciBuaWNodCEKPiBpZGxlCkR1IGlkZWxzdCBlaW4gd2VuaWcgdm9yIERpY2ggaGluLgo+IHVudCB3aXJ0ClNvd2FzIHNpZWhzdCBEdSBoaWVyIG5pY2h0IQouLi4KKHVzdy4gLSBMb2cgaXN0IGhpZXIgc3RhcmsgZ2VrdWVyenQhKQouLi4KRHUgaWRlbHN0IGVpbiB3ZW5pZyB2b3IgRGljaCBoaW4uCj4gZW50ZmVybmUgc3Bpbm53ZWJlbgpFaW4gV2lydCBrb21tdCBhbi4KRGVyIFdpcnQgZ2lidCBZYW5ueSBlaW4gUGlscy4KRGVyIFdpcnQgZ2lidCBEaXIgZWluIFBpbHMuCj4gdHJpbmtlIHBpbHMKPiB1bnQga25pZWtlaGxlbgpEb3J0IGJlZmluZGV0IHNpY2ggRGVpbiBNYWdlbi4KRHUgZGVua3N0IC4gbyBPIChqZXR6dCBhYmVyIGRhbGxpKQo+IHVsdHJha3Vyego+IG8KPiBvCj4gbgo+IG4KPiBuCj4gdwo+IGJlc3RlbGxlIGd5cm9zIHBpdGEKPiBvCj4gcwo+IHMKPiBzCj4gdwo+IHcKPiBsYW5nCkR1IGRlbmtzdCAuIG8gTyAoSG9mZmVudGxpY2ggaGF0IGtlaW4gZXJ6aSBkYXMgJ2Jlc3RlbGxlIGd5cm9zIHBpdGEnIGRhcmluCmdlc2VoZW4pCj4gdW50IHdpcnQKU293YXMgc2llaHN0IER1IGhpZXIgbmljaHQhCi4uLgoodXN3LikKLi4uCllhbm55IHNhZ3Q6IERpZSBrb2VubnRlbiBoaWVyIGRhcyBHZXNjaGFlZnQgaWhyZXMgTGViZW5zIG1hY2hlbiEKRHUgbmlja3N0IHp1c3RpbW1lbmQuCkRpZSBNdWRkZXIgYnJlY2hlbiBhdWYuCj4gdW50IHVocgpEdSB3b2xsdGVzdCBoZXV0ZSBub2NoIDAgc3RhcmtlIHVuZCA0NSBzY2h3YWNoZSBPcmtzIGtpbGxlbi4KPiB1bnQgZHV2YWluCkRhcyBpc3QgRHV2YWluLgpFciBzaWVodCBuaWNodCBtZWhyIHRhdWZyaXNjaCBhdXMuCj4gc2NoYXUKRHUgYmVmaW5kZXN0IERpY2ggaW0gaGludGVyZW4gU2FhbCBkZXMgSG90ZWxzICdEaWUgdmllciBUYXhiYWV1bWUnLiBVbQpEaWNoIGhlcnVtIHNpZWhzdCBEdSBoYXVmZW53ZWlzZSBNdWRkZXIsIGRpZSBuaWNodHMgYmVzc2VyZXMgenUgdHVuIGhhYmVuCmFscyBoZXJ1bXp1c3RlaGVuLCBzaWNoIHp1IGtudWRkZWxuIHVuZCB6dSB0YW5rZW4uCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3RlbiB1bmQgb3N0ZW4uCj4gbwpEdSBiZWZpbmRlc3QgRGljaCBpbSB2b3JkZXJlbiBTYWFsIGRlcyBIb3RlbHMgJ0RpZSB2aWVyIFRheGJhZXVtZScuIERlcgpTYWFsIGhhdCBzaWNoIHZlcmFlbmRlcnQ6IERpZSBKYWhyZXNoYXVwdHZlcnNhbW1sdW5nIGRlciBWZXJlaW5pZ3VuZyBkZXIKVWViZXItODBqYWVocmlnZW4gd3VyZGUgaW56d2lzY2hlbiBkdXJjaCBkYXMgSGluYXVzdHJhZ2VuIGRlciBsZXR6dGVuCkdhZXN0ZSBpbnMgd2FydGVuZGUgVGF4aSBhdWZnZWxvZXN0LgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogd2VzdGVuLCB3ZXN0ZW4sIG9zdGVuIHVuZCBvc3Rlbi4KRWluIFdpcnQuCkRlciBXaXJ0IHNhZ3Q6IEhhc3QgRHUgbWFsIGV0d2FzIEdlbGQgZnVlciBtaWNoPwogIERlciBXaXJ0IGdyZWlmdCBEaWNoIG1pdCBlaW5lciBnZXNhbHplbmVuIFJlY2hudW5nIGFuLgogIERlciBXaXJ0IHRyaWZmdCBEaWNoIGhhcnQuCiAgRHUgZ3JlaWZzdCBkZW4gV2lydCBtaXQgZWluZXIgbGFuZ2VuIEZhaG5lIGFuLgogIER1IHZlcmZlaGxzdCBkZW4gV2lydC4KICBEZXIgV2lydCBncmVpZnQgRGljaCBtaXQgZWluZXIgZ2VzYWx6ZW5lbiBSZWNobnVuZyBhbi4KICBEZXIgV2lydCB6ZXJzY2htZXR0ZXJ0IERpY2ggaW4ga2xlaW5lIFN0dWVja2NoZW4uCkRpZSBBbmdzdCBpc3Qgc3RhZXJrZXIgYWxzIER1Li4gRHUgd2lsbHN0IG51ciBub2NoIHdlZyBoaWVyLgpEdSB2ZXJzdWNoc3QgenUgZmxpZWhlbiwgc2NoYWZmc3QgZXMgYWJlciBuaWNodC4KRGVpbiBHZWxkYmV1dGVsIGlzdCBsZWljaHRlciBnZXdvcmRlbi4KPiB1bnQgdHJpbmtnZWxkClNvd2FzIHNpZWhzdCBEdSBoaWVyIG5pY2h0IQo+IHZlcmxhc3NlIGhvdGVsCj4gYmV0cmV0ZSBhdXRvCkR1IGJldHJpdHRzdCBkYXMgQXV0byB2b24gRHJvYmFuaXIuCkR1IHNpdHp0IGltIEZvbmQgZGVzIEF1dG9zIHZvbiBEcm9iYW5pci4gVm9yIERpciB1bmQgdWViZXIgRGlyIHR1ZXJtZW4Kc2ljaCBTY2hsYWZzYWVja2UsIFRhc2NoZW4gdW5kIElzb21hdHRlbi4gRHUgYmlzdCBEaXIgc2ljaGVyOiBTZWxic3QgYmVpCmVpbmVtIEZyb250YWx6dXNhbW1lbnN0b3NzIGthbm4gRGlyIG5pY2h0cyBwYXNzaWVyZW4uCkVzIGdpYnQga2VpbmUgc2ljaHRiYXJlbiBBdXNnYWVuZ2UuCkRyb2JhbmlyIGRlciBaYXViZXJlciAoZmFocmVuZCkuCk9sZCBNYyBTaGFrZWRiZWVyIGlzdCBkZXIgVmF0ZXIgYWxsZXIgU2hha2llcy4KWGFudGlhIGRpZSBIZXhlLgpRbnliZXJ0aCBkZXIgSGV4ZXIuCkF1c3NlcmhhbGIgc2llaHN0IER1OgpGaW5zdGVybmlzLgpEcm9iYW5pciBzdGV1ZXJ0IGRhcyBBdXRvIHNpY2hlciBkdXJjaCBCaWVsZWZlbGRzIFN0cmFzc2VuLgpEYXMgQXV0byBoYWVsdCBhbi4KPiB2ZXJsYXNzZSBhdXRvCj4gYmV0cmV0ZSB0dXJuaGFsbGUKPiByb2xsZSBzY2hsYWZzYWNrIGF1cwo+IHNjaGxhZmUKRGFzIGdlaHQgbmljaHQhCj4gdW50IG11ZGRlcgpEaWUgTXVkZGVyIGdlYmVuIHNpY2ggd2lsZGVuIEJhbGxzcGllbGVuIGhpbiB1bmQgbWFjaGVuIGVpbmVuIFJpZXNlbmtyYWNoCmRhYmVpLiBBdXNzZXJkZW0gaXN0IGRpZSBCZWxldWNodHVuZyBkZXJtYXNzZW4gYW4sIGFubmVyIGdlaHRzIG5pY2h0Lgo+IGZyYWcgYXJpZW4gbmFjaCBza2F0c3BpZWwKQXJpZW4gc2FndDogSGllciBoYXN0IER1IGVpbiBTa2F0c3BpZWwuCj4gZGFuayBhcmllbgo+IHRlaWxlIGthcnRlbiBhdXMKRHUgdGVpbHN0IE1haGF0bWEsIFNpcXVlIHVuZCBEaXIgamUgemVobiBLYXJ0ZW4gYXVzIHVuZCBsZWdzdCB6d2VpIEthcnRlbgppbiBkaWUgTWl0dGUuCj4gbmltbSBwaWxzClNvd2FzIHNpZWhzdCBEdSBoaWVyIG5pY2h0IQo+IG5pbW0gcGlscyBhdXMgdGFua3N0ZWxsZQpEdSBoYXN0IGtlaW4gQXV0byEKPiBmcmFnIGRyb2JhbmlyIG5hY2ggYXV0bwpEcm9iYW5pciBzYWd0OiBKYSwgaWNoIGhhYmUgZWluIEF1dG8uIFNvbGwgaWNoIERpY2ggZmFocmVuPwo+IGxvZ2luIG1hcml0YQpEdSB2ZXJ3YW5kZWxzdCBEaWNoIGluIE1hcml0YSB1bmQgdWViZXJ6ZXVnc3QgRHJvYmFuaXIgbWl0IGVpbmVtIG5ldHRlbgpMYWVjaGVsbi4KPiBsb2dvdXQKPiBob2xlIHBpbHMgbWl0IGRyb2JhbmlyCj4gdGVpbGUgcGlscyBhdXMKRHUgdGVpbHN0IE1haGF0bWEsIFNpcXVlIHVuZCBEaXIgamUgemVobiBQaWxzIGF1cyB1bmQgbGVnc3QgendlaSBQaWxzIGluCmRpZSBNaXR0ZS4KRGFzIExpY2h0IGVybGlzY2h0Lgo+IHVudCB1aHIKRHUgd29sbHRlc3QgaGV1dGUgbm9jaCA1IHN0YXJrZSBPcmtzIGtpbGxlbi4KRHUgbmlja3N0IHp1c3RpbW1lbmQuCj4gc2NobGFmIGVpbgpEaWVzZXIgQmVmZWhsIGJlZW5kZXQgRGVpbmUgVmVyYmluZHVuZy4gRHUgYmVoYWVsdHN0IERlaW5lIFNhY2hlbiwgZG9jaApWb3JzaWNodDogV2VubiBkaWUgVHVybmhhbGxlIGVpbnN0dWVyenQsIHdhZWhyZW5kIER1IHNjaGxhZWZzdCwgdmVybGllcnN0CkR1IHNpZSBkb2NoISBBbGxlcmRpbmdzIGJla29tbWVuIGRhbm4gRGVpbmUgSGludGVyYmxpZWJlbmVuIGVpbmUKZmluYW56aWVsbGUgRW50c2NoYWVkaWd1bmcuCgoKV2llIGhlaXNzdCBEdSBkZW5uID8gZHV2YWluClNjaG9lbiwgZGFzcyBEdSB3aWVkZXIgZGEgYmlzdCwgRHV2YWluICEKRHUgbmltbXN0IHNjaG9uIGFtIFNwaWVsIHRlaWwhCj4gdW50IG11ZGRlcgpEaWUgTXVkZGVyIGdlYmVuIHNpY2ggd2lsZGVuIEJhbGxzcGllbGVuIGhpbiB1bmQgbWFjaGVuIGVpbmVuIFJpZXNlbmtyYWNoCmRhYmVpLiBBdXNzZXJkZW0gaXN0IGRpZSBCZWxldWNodHVuZyBkZXJtYXNzZW4gYW4sIGFubmVyIGdlaHRzIG5pY2h0Lgo+IHVudCB1aHIKRHUgd29sbHRlc3QgaGV1dGUgbm9jaCA4IHN0YXJrZSB1bmQgMzAgc2Nod2FjaGUgT3JrcyBraWxsZW4uCkR1IGFyZ2xzdCBlaW4gd2VuaWcgdm9yIERpY2ggaGluLgo+IHVudCBkdXZhaW4KRGFzIGlzdCBEdXZhaW4uCkVyIHN0ZWh0IGF1ZiBkZXIgU2Nod2VsbGUgZGVzIFRvZGVzLgo+IHJlcG9ydCBlaW4KRHUgaGFzdCBqZXR6dCAwIExlYmVuc3B1bmt0ZSB1bmQgMCBNYWdpZXB1bmt0ZS4KPiBiZXRyZXRlIHRvaWxldHRlCkR1IGJlZmluZGVzdCBEaWNoIGluIGVpbmVyIHNjaG1hbGVuIEthYmluZS4gVm9yIERpciBzdGVodCBlaW5lClRvaWxldHRlbnNjaHVlc3NlbC4KRXMgZ2lidCBrZWluZW4gc2ljaHRiYXJlbiBBdXN3ZWcuCkRlaW4gVGVkZHkga251ZGRlbHQgRGljaCBlaW4gbGV0enRlcyBNYWwuCj4gZ2liIDEwIHBpbHMgYW4gc2NodWVzc2VsCkRpZSBTaGFraWVzIHJ1ZmVuOiBIdXJyYSEgV2lyIGhhYmVuIHVuc2VyIEVyZGJlYmVuIHdpZWRlciEKRHUgZ2lic3QgZGVyIFNjaHVlc3NlbCAxMCBQaWxzLgo+IHVudCBtYWdlbgpFaW4gZ2FueiBnZXdvZWhubGljaGVyIE1hZ2VuIGFuIGVpbmVtIFNhbXN0YWdtb3JnZW4uCkVyIGlzdCBnZW9lZmZuZXQgdW5kIGxlZXIuCkR1IG5pY2tzdCB6dXN0aW1tZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZXNlIGt1cnplbiBOYWVjaHRlIGluIEJpZWxlZmVsZC4uLiB1ZWJlbCB1ZWJlbCA7LSkgKE1haGF0bWEsIDI2LiBGZWIgMTk5NiwgMjE6MjU6MjkpOgp+IyEgcm49RHV2YWluIHJ0PTgyNTM1OTkzOQp+IyEgdGlkPTgyNTM1OTkzOQpEZXIgYmVzdGUgQXJ0aWtlbCBpbiAnU2NobWFycm4nLCBkZW4gaWNoIGplIGdlbGVzZW4gaGFiLgoKTWFoYXRtYSAoc2ljaCBrYXB1dHRsYWNoZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWVzZSBrdXJ6ZW4gTmFlY2h0ZSBpbiBCaWVsZWZlbGQuLi4gdWViZWwgdWViZWwgOy0pIChDaGVhc3ksIDI2LiBGZWIgMTk5NiwgMjE6MjY6MzIpOgp+IyEgcm49TWFoYXRtYSBydD04MjUzNjYzMjkKfiMhIHRpZD04MjUzNTk5MzkKKnJvdGZsKiBpcyBqYSBuaWNodHQgenVtIGF1c2hhbHRlbiwgd2FzIG1hbiBzbyBhbGxlcyB2ZXJnZXNzZW4gaGF0IDopCi1DaGVhc3kKKEtpY2hlcnQgaW1tZXIgbm9jaCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWVzZSBrdXJ6ZW4gTmFlY2h0ZSBpbiBCaWVsZWZlbGQuLi4gdWViZWwgdWViZWwgOy0pIChCZWVsemVidWIsIDI2LiBGZWIgMTk5NiwgMjE6MzA6NDQpOgp+IyEgcm49RHV2YWluIHJ0PTgyNTM1OTkzOQp+IyEgdGlkPTgyNTM1OTkzOQpBYmVyIGVzIHdhciB3YWhyc2NoZWlubGljaCBiZXNzZXIga2VpbmUgR3lyb3MgUGl0YSB6dSBiZWtvbW1lbiwKYWxzIGVpbiBKYWVnZXJzY2huaXR6ZWwgZnVlciAxNiBNYXJrIGZ1ZmZpZyAsIGRhcyBtYW4gYW4gamVkZXIgUG9tbWVzYnVkZQpiZXNzZXIgdW5kIGJpbGxpZ2VyIGJla29tbXQuCgpEZXIgRGVpZmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZXJjaGVuaGFmdGVyIFJlYm9vdC4uIChWZXJ3aXJydW5nLCAyNy4gRmViIDE5OTYsIDEwOjE5OjM2KToKCi4uLgpEdSBmaW5kZXN0IDEwMDEgTXVlbnplbiwgZGllIER1IGJlaW0gbGV0enRlbiBNYWwgdmVybG9yZW4gaGFzdC4KLi4uCgpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR3JhdXNhbT8gKEFsaW5lLCAyNy4gRmViIDE5OTYsIDEwOjM0OjQ1KToKCkR1IG5pbW1zdCBlaW5lbiBUcm9sbGRvbGNoLgpEdSBuaW1tc3QgZWluZW4gU3RlaW5yaW5nLgpEdSBuaW1tc3QgZWluIEtldHRlbmhlbWQuCgpzdGVja2UgZG9sY2ggaW4gbW9lbmNoCkR1IHN0ZWNrc3QgZWluZW4gVHJvbGxkb2xjaCBpbiBkZW4gTW9lbmNoLgoKQWxpbmUgKGtvbW10IHNpY2ggZ3JhdXNhbSB2b3IpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllc2Uga3VyemVuIE5hZWNodGUgaW4gQmllbGVmZWxkLi4uIHVlYmVsIHVlYmVsIDstKSAoRHVyaWFuLCAyNy4gRmViIDE5OTYsIDEwOjQ1OjEzKToKfiMhIHJuPUR1dmFpbiBydD04MjUzNTk5MzkKfiMhIHRpZD04MjUzNTk5MzkKSWhyIEFybWVuIC4uLgoKPiBTbmlicmlsIHNhZ3Q6IERvY2gsIGVzIGdlaHQuIEFiZXIgYmVpIHVucyBpbiBkZXIgTWVuc2EgaXN0IGVzIGJlc3Nlci4KCkFyZ2wsIHdlbm4gdW5zZXIgTWVuc2FzY2huaXR6ZWwgYmVzc2VyIGlzdCwgZGFubiBrYW5uIGVzIHdpcmtsaWNoIG5pY2h0CnRvbGwgZ2V3ZXNlbiBzZWluLiBJaHIgdHV0IG1pciBkYSBlY2h0IGxlaWQgLi4uCgpPZGVyIGlzdCBTbmlicmlsIHNvIHNjaHdlciBpbSBOZWhtZW4/PwoKU2ljaCBuaWNodCBnZXJhZGUgYXVmIGVpbiBuZXVlcyBTY2huaXR6ZWwgbWl0IFByYWVndW5nc3N0ZW1wZWwgaW4gZGVyCkJyYXVuc2Nod2VpZ2VyIE1lbnNhIGZyZXVlbmQgLi4uCgotIER1cmlhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzIGJpbiBpY2ggPyAoUnluZSwgMjcuIEZlYiAxOTk2LCAxMzozODowMyk6CkhtbS4KClNvd2FzIHBhc3NpZXJ0LCB3ZW5uIFp3ZXJnZSBkZW4gV2VnIHp1bSB3YWhyZW4gSWNoIHN1Y2hlbjoKCnVudGVyc3VjaGUgendlcmcgaW4gbWlyCkR1IGZpbmRlc3QgYW4gUnluZSBrZWluICJad2VyZyIuCkRlaW4gQmxpY2sgd2VuZGV0IHNpY2ggZGVyIFVtZ2VidW5nIHp1LgpTb3dhcyBzaWVoc3QgRHUgYXVjaCBkYSBuaWNodCEKCnVudGVyc3VjaGUgS2FtcGZ6d2VyZyBpbiBtaXIKRHUgZmluZGVzdCBhbiBSeW5lIGtlaW4gIkthbXBmendlcmciLgpEZWluIEJsaWNrIHdlbmRldCBzaWNoIGRlciBVbWdlYnVuZyB6dS4KU293YXMgc2llaHN0IER1IGF1Y2ggZGEgbmljaHQhCgoKUnpuZSwgS2FtcGZ6d2VyZyBhdWYgSWRlbnRpdGFldHNzdWNoZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgOSAoR3JpbW1ib3JuLCAyNy4gRmViIDE5OTYsIDE1OjQwOjIxKToKCkxpZWJlIG1pY2ggYW0gbWVpc3RlbiB3ZW5uIGljaCBlcyBhbSB3ZW5pZ3N0ZW4gdmVyZGllbmUsIGRlbm4gZGFubiBicmF1Y2hlCmljaCBlcyBhbSBub2V0aWdzdGVuLiAoQW5vbnltKQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppaWlpaWhoaGhoaCBlaW4gem9tYmllISAoTWltbywgMjcuIEZlYiAxOTk2LCAxOTo1NjozMyk6CnVubGFlbmdzdCBzdGFuZCBpY2ggZGEgc28gcnVtOgoKUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIE5pbG9taWRlLgpOaWxvbWlkZSBzY2h1ZXR0ZWx0IHNpY2guCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWNoIGphPyAoSGFyYWtpcmksIDI3LiBGZWIgMTk5NiwgMjA6MjI6MDgpOgoKPiB2aWVyCkVpbiBPcGh0YWxtb2xvZ2Uga29tbXQgaGVyZWluLCBzaWVodCBEaXIgaW4gZGllIEF1Z2VuIHVuZCBtZWludCA6CidEaXIgZmVobHQgZ2FyIG5pY2h0cywgaG1tbW0gLi4uIGFjaCBpY2ggYmluIGphIGF1Y2ggQXVnZW5hcnp0LicKPiBzY2hhdQpEdSBiaXN0IGJsaW5kICEKCipobXBmKiA6KQpIYXJha2lyaSAoa2VpbmUgTG9lc3VuZykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllc2Uga3VyemVuIE5hZWNodGUgaW4gQmllbGVmZWxkLi4uIHVlYmVsIHVlYmVsIDstKSAoTWFuZ28sIDI3LiBGZWIgMTk5NiwgMjA6Mjk6MDUpOgp+IyEgcm49RHV2YWluIHJ0PTgyNTM1OTkzOQp+IyEgdGlkPTgyNTM1OTkzOQoKCgogICAgICAgICAgICAgICAgICAgICBnZW5pYWxlciBBcnRpa2VsIDopCgoKTWFuZ28sIGRlciBiZWltIGxlc2VuIGRlcyBBcnRpa2VscyBtYWwgd2llZGVyIG5lIE1lbmdlIFNwYXNzIGhhdHRlLgoKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWFjaCA7LSkgKEFuYXRvbCwgMjguIEZlYiAxOTk2LCAwNjozODowNik6CgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBIeWRyYWtvcGZzXSBNYWhhdG1hLCBkaWUgSHlkcmEgaXN0IG1pciBsaWViZXIuLi4KCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaGFldHpndXRhY2h0ZW4gKEJvcm93aWNrLCAyOC4gRmViIDE5OTYsIDEwOjAwOjIxKToKPiBzY2hhZXR6IG51ZGVpCk51ZGVpIGlzdCB1bmdlZmFlaHIgMTgzIGNtIGdyb3NzLgpOdWRlaSBpc3QgcmVjaHQgemFlaC4KTnVkZWlzIFdhZmZlIGlzdCBnZWZhZWhybGljaC4KTnVkZWlzIFJ1ZXN0dW5nIGlzdCBleHRyZW0gZ3V0Lgo+IHNjaGFldHogbnVkZWkKTnVkZWkgaXN0IHVuZ2VmYWVociAxODYgY20gZ3Jvc3MuCk51ZGVpIG11c3Mgc2Nob24gZXR3YXMgbGFlbmdlciB3ZWljaGdla2xvcHB0IHdlcmRlbi4KTnVkZWlzIFdhZmZlIGlzdCBzZWhyIGdlZmFlaHJsaWNoLgpOdWRlaXMgUnVlc3R1bmcgaXN0IHNlaHIgZ3V0Lgo+ICYmCltzY2hhZXR6IG51ZGVpXQpOdWRlaSBpc3QgdW5nZWZhZWhyIDE4NCBjbSBncm9zcy4KTnVkZWkgbXVzcyBzY2hvbiBldHdhcyBsYWVuZ2VyIHdlaWNoZ2VrbG9wcHQgd2VyZGVuLgpOdWRlaXMgV2FmZmUgaXN0IHNlaHIgZ2VmYWVocmxpY2guCk51ZGVpcyBSdWVzdHVuZyBpc3Qgc2VociBndXQuCgoKYWVoLi4uIGdhbnogc2Nob2VuZSBTdHJldXVuZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNjaGFldHpndXRhY2h0ZW4gKEZ5dCwgMjguIEZlYiAxOTk2LCAxMTo0OTowOSk6Cn4jISBybj1Cb3Jvd2ljayBydD04MjU0OTgwMjEKfiMhIHRpZD04MjU0OTgwMjEKSG0sIG5hamEsIHdlbm4gaWNoIEhvZWhlbiBzY2hhZXR6ZW4gbXVlc3N0ZSwgZGllIGluIGRlciBHcm9lc3Nlbm9yZG51bmcKbWVpbmVyIGRvcHBlbHRlbiBLb2VycGVyaG9laGUgbGFlZ2VuLCB3YWVyIGljaCBkdXJjaGF1cyB6dWZyaWVkZW4sIHdlbm4ncwpkYSBudXIgJ24gcGFhciBaZW50aW1ldGVyIEFid2VpY2h1bmcgZ2FlYmUgOikKCkZ5dCwgd3VuZGVydCBzaWNoLCB3YXMgWndlcmdlIG1pdCBkaWVzZW4gWmFobGVuIGdyb2Vzc2VyIGFscyAzCnVlYmVyaGF1cHQgYW5mYW5nZW4gOikpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3ZW5uIGZydWVoIGFtIG1vcmdlbi4uLi4uIChNb3Jnb3RoLCAyOS4gRmViIDE5OTYsIDA3OjE1OjA0KToKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERvbiwgMjkuIEZlYiAxOTk2LCAwNzoxNDoyOCAoMyBUZWlsbmVobWVyKQoKQmxvb2R5aGFycnkuLi4uLk0gIE1vcmdvdGguLi4uLi4uLi5SICBTaWx2YW5hLi4uLi4uLi4uRQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktudWRkZWx0aWdlciAoWWVuZGksIDI5LiBGZWIgMTk5NiwgMTA6MTM6MTcpOgpbMzN+CkluIFBWLCBiZWltIFNhbmR0aWdlcjoKCj4gRHUgaGFzdCBqZXR6dCAxMzcgTGViZW5zcHVua3RlIHVuZCA5IE1hZ2llcHVua3RlLgprbnVkZGxlIHRpZ2VyCkR1IGtudWRkZWxzdCBkZW4gVGlnZXIgbWl0IGdhbnogYmVzb25kZXJlciBIaW5nYWJlIHVuZCB3dXNjaGVsc3QgRGljaCBkYWJlaQpzbyB0aWVmIGluIHNlaW4gd2VpY2hlcyBGZWxsIGhpbmVpbiwgZGFzcyBEaWNoIHZvciBHZW11ZXRsaWNoa2VpdCBlaW5lCkdhZW5zZWhhdXQgcGFja3QgdW5kIER1IHNlbGJlciBhbmZhZW5nc3QgenUgc2NobnVycmVuIHdpZSBlaW4ga2xlaW5lcwpLYWV0emNoZW4uIE5hY2ggZGllc2VyIHNjaG9lbmVuIFNjaG11c2VwYXVzZSBmdWVobHN0IER1IERpY2ggc2Nob24gZ2xlaWNoCnZpZWwgYmVzc2VyLgo+IER1IGhhc3QgamV0enQgMTM4IExlYmVuc3B1bmt0ZSB1bmQgMTAgTWFnaWVwdW5rdGUuCgpKYSwgc3RpbW10IiEgIDopCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldHp0dG9kLSBIQSEgKEJvcm93aWNrLCAgNC4gTWFyIDE5OTYsIDA5OjA5OjQxKToKRGFzIFNoaW50b1J5dSwgZGVyIFRyYWluaW5nc3JhdW0gZGVyIEthcmF0ZWthIGlzdCBjYS4gZnVlbmYgTWV0ZXIgaG9jaCwgaW4KZHJlaSBNZXRlcm4gSG9laGUgemllaHQgc2ljaCBlaW5lIEVtcG9yZSBkdXJjaCBkaWUgSGFsbGUuIERpZSBXYWVuZGUgYmVzdGVoZW4KYXVzIGhlbGxlbSBIb2x6LCBkZXIgQm9kZW4gaXN0IG1pdCBydXRzY2hmZXN0IGJlZmVzdGlndGVuIEJhbWJ1c21hdHRlbgpiZWRlY2t0LiBBbiBkZXIgTm9yZHdhbmQgYmVmaW5kZXQgc2ljaCBlaW4gMjAgY20gaG9oZXMgUG9kZXN0IHp1bSBTaXR6ZW4sIGRhcwptaXQgd2Vpc3NlbSBTdG9mZiB1ZWJlcnpvZ2VuIGlzdCwgdW5kIGF1ZiBkZW0gQmF1bXdvbGxtYXR0ZW4gYXVzZ2VicmVpdGV0CnNpbmQuIEhpZXIga29lbm5lbiBzaWNoIEthcmF0ZWthIGdlZ2Vuc2VpdGlnIGFuZ3JlaWZlbiwgb2huZSBkYXNzIGVpbgpQbGF5ZXJraWxsIGRyb2h0LgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogb3N0ZW4uCkFuZHJlSGFsbGUuIERpZSBXYWVuZGUgYmVzdGVoZW4KYXVzIGhlbGxlbSBIb2x6LCBkZXIgQm9kZW4gaXN0IG1pdCBydXRzY2hmZXN0IGJlZmVzdGlndGVuIEJhbWJ1c21hdHRlbgpiZWRlY2t0LiBBbiBkZXIgTm9yZHdhbmQgYmVmaW5IYWxsZS4gRGllIFdhZW5kZSBiZXN0ZWhlbgphdXMgaGVsbGVtIEhvbHosIGRlciBCb2RlbiBpc3QgbWl0IHJ1dHNjaGZlc3QgYmVmZXN0aWd0ZW4gQmFtYnVzbWF0dGVuCmJlZGVja3QuIEFuIGRlciBOb3Jkd2FuZCBiZWZpbmRldCBzaWNoIGVpbiAyMCBjbSBob2hlcyBQb2Rlc3QgenVtIFNpdHplbiwgZGFzCm1pdCB3ZWlzc2VtIFN0b2ZmIHVlYmVyem9nZW4gaXN0LCB1bmQgYXVmIGRlbSBCYXVtd29sbG1hdHRlbiBhdXNnZWJyZWl0ZXQKc2luZC4gSGllciBrb2VubmVuIHNpY2ggS2FyYXRla2EgZ2VnZW5zZWl0aWcgYW5ncmVpZmVuLCBvaG5lIGRhc3MgZWluClBsYXllcmtpbGwgZHJvaHQuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBvc3Rlbi4KQW5kcmVzIGRlciBLYXJhdGUtS2FlbXBmZXIsIDQuIEt5dSAobmV0enRvdCkuCiAgQW5kcmVzIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gRnVtaWtvbWktZ2VyaSBhbi4KPiAgIEFuZHJlcyBncmVpZnQgRGljaCBtaUhhbGxlLiBEaWUgV2FlbmRlIGJlc3RlaGVuCmF1cyBoZWxsZW0gSG9seiwgZGVyIEJvZGVuIGlzdCBtaXQgcnV0c2NoZmVzdCBiZWZlc3RpZ3RlbiBCYW1idXNtYXR0ZW4KYmVkZWNrdC4gQW4gZGVyIE5vcmR3YW5kIGJlZmluZGV0IHNpY2ggZWluIDIwIGNtIGhvaGVzIFBvZGVzdCB6dW0gU2l0emVuLCBkYXMKbWl0IHdlaXNzZW0gU3RvZmYgdWViZXJ6b2dlbiBpc3QsIHVuZCBhdWYgZGVtIEJhdW13b2xsbWF0dGVuIGF1c2dlYnJlaXRldApzaW5kLiBIYWxsZS4gRGllIFdhZW5kZSBiZXN0ZWhlbgphdXMgaGVsbGVtIEhvbHosIGRlciBCb2RlbiBpc3QgbWl0IHJ1SGFsbGUuIERpZSBXYWVuZGUgYmVzdGVoZW4KYXVzIGhlbGxlbSBIb2x6LCBkZXIgQm9kZW4gaXN0IG1IYWxsZS4gRGllIFdhZW5kZSBiZXN0ZWhlbgphdXMgaGVsbGVtIEhvbHosIGRlSGFsbGUuIERpZSBXYWVuZGUgYmVzdGVoZW4KYXVzIGhlbGxlbSBIb2x6LCBkZXIgQm9kZW4gaXN0IG1pdCBIYWxsZS4gRGllIFdhZW5kZSBiZXN0ZWhlbgphdXMgaGVsbGVtIEhvbHosIGRlciBCb2RlSGFsbGUuIERpZSBXYWVuZGUgYmVzdGVoZW4KYXVzIGhlbGxlbSBIb2x6LCBkZXIgQm9kZW4gaXN0IG1pdCBydUhhbGxlLiBEaWUgV2FlbmRlIGJlc3RlaGVuCmF1cyBoZWxsZW0gSG9seiwgZGVyIEJvZGVuIGlzdCBtaXQgcnV0c2NoZmVzdCBiZWZlc3RpZ3RlbiBCYW1idXNtYXR0ZW4KYmVkZWNrdC4gQW4gZGVyIE5vcmR3YW5kIGJlZmluZGV0IHNpY2ggZWluIDIwIGNtIGhvaGVzIFBvZGVzdCB6dW0gU2l0emVuLCBkYXMKbWl0IHdlaXNzZW0gU3RvZmYgdWViZXJ6b2dlbiBpc3QsIHVuZCBhdWYgZGVtIEJhdW13b2xsbWF0dGVuIGF1c2dlYnJlaXRldApzaW5kLiBIaWVyIGtvZW5uZW4gc2ljaCBLYXJhdGVrYSBnZWdlbnNlaXRpZyBhbmdyZWlmZW4sIG9obmUgZGFzcyBlaW4KUGxheWVya2lsbCBkcm9odC4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG9zdGVuLgpBbmRyZXMgZGVyIEthcmF0ZS1LYWVtcGZlciwgNC4gS3l1IChuZXR6dG90KS4KICBBbmRyZXMgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBGdW1pa29taS1nZXJpIGFuLgo+ICAgQW5kcmVzIGdyZWlmdCBEaWNoIG1pSGFsbGUuIERpZSBXYWVuZGUgYmVzdGVoZW4KYXVzIGhlbGxlbSBIb2x6LCBkZXIgQm9kZW4gaXN0IG1pdCBydXRzY2hmZXN0IGJlZmVzdGlndGVuIEJhbWJ1c21hdHRlbgpiZWRlY2t0LiBBbiBkZXIgTm9yZHdhbmQgYmVmaW5kZXQgc2ljaCBlaW4gMjAgY20gaG9oZXMgUG9kZXN0IHp1bSBTaXR6ZW4sIGRhcwptaXQgd2Vpc3NlbSBTdG9mZiB1ZWJlcnpvZ2VuIGlzdCwgdW5kIGF1ZiBkZW0gQmF1bXdvbGxtYXR0ZW4gYXVzZ2VicmVpdGV0CnNpbmQuIEhpZXIga29lbm5lbiBzaWNoIEthcmF0ZWthIGdlZ2Vuc2VpdGlnIGFuZ3JlaWZlbiwgb2huZSBkYXNzIGVpbgpIYWxsZS4gRGllIFdhZW5kZSBiZXN0ZWhlbgphdXMgaGVsbGVtIEhvbHosIGRlciBCb2RlbiBpc3QgbWl0IHJ1dHNjaGZlc3QgYmVmZXN0aWd0ZW4gQmFtYnVzbWF0dGVuCmJlZGVja3QuIEFuIGRlciBOb3Jkd2FuZCBiZWZpbmRldCBzaWNoIGVpbiAyMCBjbSBob2hlcyBQb2Rlc3QgenVtIFNpdHplbiwgZGFzCm1pdCB3ZWlzc2VtIFN0b2ZmIHVlYmVyem9nZW4gaXN0LCB1bmQgYXVmIGRlbSBCYXVtd29sbG1hdHRlbiBhdXNnZWJyZWl0ZXQKc2luZC4gSGllciBrb2VubmVuIHNpY2ggS2FyYXRla2EgZ2VnZW5zZWl0aWcgYW5ncmVpZmVuLCBvaG5lIGRhc3MgZWluClBsYXllcmtpbGwgZHJvaHQuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBvc3Rlbi4KQW5kcmVzIGRlciBLYXJhdGUtS2FlbXBmZXIsIDQuIEt5dSAobmV0enRvdCkuCiAgQW5kcmVzIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gRnVtaWtvbWktZ2VyaSBhbi4KPiAgIEFuZHJlcyBncmVpZnQgRGljaCBtaXQgZWluZW0gZ2VsdW5nZW5lbiBGdW1pa29taS1nZXJpIGFuLgoKREFzIGlzdCBkb2NoIGRpZSBIb2VoZSwgaWNoIGRlbmtlLCBhbHMgTmV0enR0b3RlciBiZWxhZXN0aWd0IG1hbiBkaWUgTGViZW5kZW4KbmljaHQgbWVocj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthbGVuZGVyc3BydWNoIChHcmltbWJvcm4sICA0LiBNYXIgMTk5NiwgMTk6MzM6MDQpOgoKIkxpZWJlciBlaW4gZWhybGljaGVzIG5laW4gYWxzIGVpbiBmYWxzY2hlcyBqYS4iIChSdXNzaXNjaCkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIGkuQS4gKEFuYXRvbCwgIDQuIE1hciAxOTk2LCAyMjo1MzoxMSk6CgpEdXJpYW4gcnVmdDogU29ycnksIGhhdHRlIGdlcmFkZSBkZW4gQm90ZW4gYXVzLCBTZWxic3Rtb3JkICh3ZXIgc29uc3QpIGhhdApEdXJpYW4gcnVmdDogc2ljaCBnZXJhZGUgYW5nZW1lbGRldCEKW1RvZDpdIEFsZXhhbmRlciBLYXNvbm93aXRzY2ggaGF0IGdlcmFkZSBTZWxic3Rtb3JkIHVtZ2VicmFjaHQuCgpubyBjb21tZW50LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNpbm5sb3MgKFdlbmRlbGxnZWUsICA1LiBNYXIgMTk5NiwgMTM6MDk6MDApOgpNYW4gbXVzcyBsZXJuZW4sIGJlaSBlaW5lbSBWb3J0cmFnIGRhcyBVbndpY2h0aWdlIHZvbSAtIGFlaCAtIFVud2ljaHRpZ2VuIHp1CnVudGVyc2NoZWlkZW4uCgooYykgYnkgbWVpbmVtIExlaHJlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBiZWltIGJhbHJvZyAoUmVpbmVsZGUsICA2LiBNYXIgMTk5NiwgMDA6MjY6NTYpOgoKRGFjYXBvIHNhZ3Q6IEFsc28sIHdlbm4gd2lyIDIwMCBTZWhlciB3YWVyZW4sIGRpZSBhbGxlIG5lbiBFaXNzdGFiIGhhYmVuLApEYWNhcG8gc2FndDogaGFldHRlbiB3aXIgbmUgY2hhbmNlPwoKLi4uCgpUb2Ugc2FndDogdGphIHVuZCB2b3JzaWNodCAxMDAgaXN0IGZ1ZXIgMiAoendlaSkgS2FtcGZydW5kZW4genUgd2VuaWcuLi4KCihSZWluZWxkZSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkt1cnogbmFjaCBkZW0gQ3Jhc2ggLi4uIChQYXJhY2Vsc3VzLCAgNi4gTWFyIDE5OTYsIDExOjQ4OjE0KToKT2hhLCBkaWUgTG9nb24ncyBrb21tZW46CgogIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNaXQsICA2LiBNYXIgMTk5NiwgMTE6NDc6MDYgKDI2IFRlaWxuZWhtZXIpCgpMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucwpMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucwpMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucwpMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBQeXJvLi4uLi4uLi4uLi4ucwpHbGVubi4uLi4uLi4uLi4ucyAgTHVyaWVsLi4uLi4uLi4uLnMgIFFpdGVzcy4uLi4uLi4uLi5zICBFbGxrb3JuLi4uLi4uLi4ucwpJbWFyLi4uLi4uLi4uLi4ucyAgVGFpcGFuLi4uLi4uLi4uLnMgIElzc29tYWQuLi4uLi4uLi5TICBOaXhpLi4uLi4uLi4uLi4uUwpDaGljb2xhLi4uLi4uLi4uUyAgUGFyYWNlbHN1cy4uLi4uLlIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldJRVNPID8gKENoaWNvbGEsICA2LiBNYXIgMTk5NiwgMTM6NDU6MzkpOgpXaWVzbyBNVVNTVCBkdSBpZGxlbiBMVUcgPz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXSUVTTyA/IChMdWcsICA2LiBNYXIgMTk5NiwgMTM6NDY6NTgpOgp+IyEgcm49Q2hpY29sYSBydD04MjYxMTYzMzkKfiMhIHRpZD04MjYxMTYzMzkKV2VpbDogRXMgaXN0IGdlcmFkZSBuaWVtYW5kIHp1aGF1c2UsIGRlbiBpY2ggdW1icmluZ2VuIGtvZW5udGUvd2lsbCA7KQpBYmVyIERhbmtlIGZ1ZXIgZGVuIEFydGlrZWwuCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWVobSwgdGphLi4uIChTY2hydW1wZmksICA2LiBNYXIgMTk5NiwgMTg6MzM6NTkpOgogQiBPIEkgTiBHICEhIER1IGh1ZXBmc3QgaW4gZGVyIEdlZ2VuZCBoZXJ1bS4KPiBEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKQmluIHdvaGwgenUgZGljayA6LSkpClNjaHJ1bXBmaSBiZWt1Y2t0IGlocmVuIEJhdWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE5pY2h0cywgIDcuIE1hciAxOTk2LCAwNTozNTo0MCk6CgpbWmF1YmVyZXI6Qmxvb2Rnb3JlXSBjb29sIGRpZSBzcHJ1ZWNoZSBrbGFwcGVuIGJlc29mZmVuIGphIGthdW0gOykpCltUb2Q6XSBEaWUgZWlnZW5lIFVuZmFlaGlna2VpdCBoYXQgZ2VyYWRlIEJsb29kZ29yZSB1bWdlYnJhY2h0LgouLi4KW0JlaWxlaWQ6VG9yaWFuXSBIbW0gYWxsZXJkaW5ncyB2ZXJsaWVydCBtYW4gdmllbCBaZWl0IGJlaW0gc3RlcmJlbiA7KSkKCgpVaXVpdWkgOikKCmkuQS4sCiIiCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpjYyAoTWl0LCAgOC4gTWFyIDE5OTYsIDAzOjI2OjUzKToKSGksCmFsc28gZWlnZW50bGljaCBiaW4gaWNoIHp1bSBad2Vja2UgZGVyIFNlbGJzdGxvZXNjaHVuZyByZWluZ2Vrb21tZW4gKHdlaWwKc2ljaCBtZWluIFp3ZWNrIGluendpc2NoZW4gZXJsZWRpZ3QgaGF0KSwgYWJlciBuYWNoIDIgTW9uYXRlbiBBYndlc2VuaGVpdApoYXR0ZSBpY2ggNCBuZXVlIEJyaWVmZSBpbSBQb3N0YW10IGxpZWdlbiwgb2J3b2hsIGljaCBuaWUgbWl0IGVpbmVyCk1lbnNjaGVuc2VlbGUgZ2VzcHJvY2hlbiBoYXR0ZSEgRXJrbGFlcnVuZzoKCkNjOiBUZWlsLCBBZG9uaXMsIE1pdCwgRGFubiwgQmlzdGUsIFp1LCBTY2h3YWNoLCBPZGVyLCBEaWUsIEF1c3J1ZXN0dW5nLCBadSwKU2NobGVjaHQuLi4sIERhcywgSXMsIERhbm4sIFBlY2gKCkNjOiBUZWlsZSwgS2V5LCBNaXQsIEZlcnRpZyEKCkNjOiBTY2hydW1wZmksIER1LCBXZWlzc3QsIE5pY2h0LCBadWZhZWxsaWcsIE9iLCBBdXMsIE11ZW5zdGVyLCBPZGVyLCBLb2VsbiwKSmVtYW5kLCBNaXQsIERlbSwgQXV0bywgS29tbXQsIFVuZCwgTm9jaCwgUGxhdHosIEhhdC4uLi4uLjstKQoKVW5kIHdhcyBtYW4gYWxzIHVuZnJlaXdpbGxpZ2UgTWl0bGVzZXJpbiBzbyBhbGxlcyBlcmZhZWhydC4uLiBUamEsIHdlciBtZWludCwKZXIgbXVlc3N0ZSBkaWUgY2MtWmVpbGUgbWlzc2JyYXVjaGVuLCBzZWxic3Qgc2NodWxkIDotKSBJbW1lcmhpbiBpc3QgRUlORU0KZGVyIGRyZWkgKHVlYnJpZ2VucyB2ZXJzY2hpZWRlbmVuKSBTcGllbGVyIGF1ZmdlZmFsbGVuLCBkYXNzIGVzIG1pY2gKdGF0c2FlY2hsaWNoIGdpYnQsIHVuZCBoYXQgZWluZSBDYW5jZWwtTWFpbCBoaW50ZXJoZXJnZXNjaGlja3QuIEplZGVuZmFsbHMKaGFiZSBpY2ggYmVzY2hsb3NzZW4sIGRvY2ggbm9jaCBuZSBXZWlsZSBhbSBMZWJlbiB6dSBibGVpYmVuIC0gbWFsIHNjaGF1biwKd2VyIG1pciBub2NoIGFsbGVzIHNjaHJlaWJ0LgoKKFAuUy46IERhcyBTcGlvbmllcmVuIHdhciB1ZWJyaWdlbnMgbmljaHQgbWVpbmUgQWJzaWNodCwgc29uZGVybiBtZWluZQpFeGlzdGVueiB1bnRlciBkaWVzZW0gTmFtZW4gaGF0IGFuZGVyZSBHcnVlbmRlKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVjaD8hIChNdXBmZWwsICA4LiBNYXIgMTk5NiwgMDQ6MDk6MDkpOgpHcmFkZSBwYXNzaWVydDoKCltUb2Q6XSBNVUVOU1RFUiBWRVJTVUNIVEUsIE1JUiBaVSBFTlRLT01NRU4gLSBKRVRaVCBIQUJFIElDSCBXSUVERVIKW1RvZDpdIEVYVFJBLUFSQkVJVCBNSVQgSUhNIC4uLgoKbmFudT8gOi0pCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWmF1YmVyZXIgKFNpbHZhbmEsICA4LiBNYXIgMTk5NiwgMTE6Mzc6MTUpOgpbWmF1YmVyZXI6U251Z2dsZV0gaWNoIHdlaXNzIGphIG5pY2h0LCBvYiBpY2ggZGEgamV0enQgc3RvbHogZHJhdWYgc2VpbiBzb2xsLApbWmF1YmVyZXI6U251Z2dsZV0gYWJlciBpY2ggYmluIGltbWVyaG9uIHNjaG9uIHNjaGxlY2h0IGluIGNhc3QuLgpbWmF1YmVyZXI6RXNjdWJhcl0gRGFzIGlzdCBzY2hvbiByZWNodCBndXQgOgoKbm8gY29tbWVudCAtIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1LiAoQW5hdG9sLCAgOC4gTWFyIDE5OTYsIDIxOjA1OjUyKToKCkJlZWx6ZWJ1YiB0cml0dCBEaWNoLgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKU2llaGUgVGl0ZWwsCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5kIHdpZWRlciBkaWUgWm9tYmllcy4gKE11ZGxlciwgIDkuIE1hciAxOTk2LCAxOTo0MjoyOCk6CkViZW4gcGFzc2llcnQ6ClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBDaGFuaS4KR2FzdDEga2l0emVsdCBDaGFuaSBhbiBpaHJlbSBLaW5uLgpDaGFuaSB2ZXJzdWNodCwgc2ljaCB6dSBiZWhlcnJzY2hlbiwgbXVzcyBhYmVyIGRvY2ggbGFjaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHJhZXVtZXIgYXVmIGRlciBFcmZvbGdzd2VsbGUgYmVpIFZpZXIgR2V3aW5udCAoQWNyaW1vbiwgMTAuIE1hciAxOTk2LCAxNDoyNjo1MSk6CgpEcmVhbWVyIHdpcmZ0IGVpbmUgS3VnZWwgaW4gZGFzIFJvZWhyY2hlbiBOci4zCi0gLSAtIC0gLSAtIC0gICAgIyMgICAgICAgIyMjIyMgICAjIyAgICAgICMjCi0gLSAtIC0gLSAtIC0gICAgIyMgICAgICAjIyAgICAgICAjIyAgICAgICMjCi0gLSAtIFggWCAtIC0gICAgIyMgICMjICAjIyAgICAgICAjIyAgICAgICMjCi0gLSAtIE8gTyBPIC0gICAgIyMjIyMjICAjIyAjIyMgICAjIyAgIyMgICMjCi0gLSAtIE8gWCBPIC0gICAgICAgICMjICAjIyAgICMjICAjIyAgIyMgICMjCi0gLSBYIE8gWCBYIC0gICAgICAgICMjICAjIyAgICMjICAjIyAgIyMgICMjCi0gLSBPIFggTyBYIC0gICAgICAgICMjICAgIyMjICMjICAgIyMjICAjIyMKTyAtIFggTyBYIE8gWAoxIDIgMyA0IDUgNiA3ICAgIER1IGJpc3QgYW4gZGVyIFJlaWhlLgoKRHJlYW1lciBzYWd0OiBpY2ggc2Nod2ltbWUgYXVmIGRlciBlcmZvbGdzd2VsbGUKNGd3IDMKRHUgd2lyZnN0IGVpbmUgS3VnZWwgaW4gZGFzIFJvZWhyY2hlbiBOci4zLgotIC0gLSAtIC0gLSAtCi0gLSAtIC0gLSAtIC0gICAgICAgICAgICMgICAjCi0gLSAtIFggWCAtIC0KLSAtIC0gTyBPIE8gLQotIC0gTyBPIFggTyAtICAgICAgICAgIyAgICAgICAgIwotIC0gWCBPIFggWCAtICAgICAgICAgICMgICAgICAjCi0gLSBPIFggTyBYIC0gICAgICAgICAgICAjIyMjCk8gLSBYIE8gWCBPIFgKMSAyIDMgNCA1IDYgNyAgICAqKj4gRFUgR0VXSU5OU1QhISA8KioKCnNhZyB3byA/CkR1IHNhZ3N0OiB3byA/CmdyaW5zZSBkcmVhbWVyCkR1IGdyaW5zdCBEcmVhbWVyIGFuLgpEcmVhbWVyIHNhZ3Q6IHVwcyBuYWphIGRhbm4gbmljaAoKOi0pCgpBY3JpbW9uIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW1tZXIgZGllc2UgRmx1Y2h6ZXVjaGUgOikgKENhcmFkaHJhcywgMTEuIE1hciAxOTk2LCAxNToyMzoyNyk6ClVyemEga29tbXQgbWl0IGVpbmVtIE9ybml0aG9wdGVyIGFuZ2VmbG9nZW4uCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgogICAgSmFqYSwgZGEgYmVidCBzb2dhciBkaWUgRXJkZSBiZWkgc28gbmVtIE9ybml0aG9wdGVyCgogICAgICAgICAgICAgICBDYXJhZGhyYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkplc3NlcyBuYSAoQ2FyYWRocmFzLCAxMS4gTWFyIDE5OTYsIDE2OjA0OjMzKToKc2NodXR6ClZhbGFyaWFuIGxhZXNzdCBzZWluZSBBdWdlbiByb3QgYXVmbGV1Y2h0ZW4uIER1IHZlcmxpZXJzdCBEZWluZW4gU2lubmUuCkR1IGJyZWl0ZXN0IERlaW5lIEhhZW5kZSBhdXMgdW5kIHNhZ3N0OiBTQ0hVVFohCkRlciBaYXViZXJzcHJ1Y2ggaXN0IG1pc3NnbHVlY2t0LgoKICBNb24gRGlldSBiaW4gaWNoIGVyc2Nocm9ja2VuISA6KQoKICAgICAgICAgICBDYXJhZGhyYXMgLSBrbGVpbmVzIFphdWJlcmVyICpydW1odWVwZioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipobXBmKiAoTmljaHRzLCAxMi4gTWFyIDE5OTYsIDAwOjM0OjI3KToKCld1ciBzY2huaXBwdCBtaXQgZGVuIEZpbmdlcm4uCld1ciBoZWlsdCBzaWNoIHNlbGJzdC4KCldpbGwgZGFzIGF1Y2gga29lbm5lbiwKIiIgLSBzY2huaXBwdCBtaXQgZGVuIEZpbmdlcm4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FyZ29uIG1hY2h0IG5lbiBQbGF5ZXJraWxsPz8gKE1vcmdvdGgsIDEyLiBNYXIgMTk5NiwgMTA6MDY6MTEpOgpncmFkZSBnZXNlaGVuLCB1bmdlc2Nobml0dGVuCldhcmdvbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpXYXJnb24gcnVmdDogTW9pbiEKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KW1RvZDpdIEVpbiBNdWVobHN0ZWluIGhhdCBnZXJhZGUgVHdlZWcgemVybWFobGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcmdvbiBtYWNodCBuZW4gUGxheWVya2lsbD8/IChXYXJnb24sIDEyLiBNYXIgMTk5NiwgMTA6MjY6MjcpOgp+IyEgcm49TW9yZ290aCBydD04MjY2MjE1NzEKfiMhIHRpZD04MjY2MjE1NzEKSG0uLi4KSWNoIGhhZXR0ZSB2aWVsbGVpY2h0IGRvY2ggbmljaHQgZGlyZWt0IHVlYmVyIGRlbSBBdXNsb2VzZXIgcXVpdHRlbiBzb2xsZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhBSCEgOikgKFNoYXlhLCAxMi4gTWFyIDE5OTYsIDEwOjU5OjI4KToKRWJlbiBiZWltIFphdWJlcm46CgpEdSBrb256ZW50cmllcnN0IERpY2guCkRlciBaYXViZXJzcHJ1Y2ggaXN0IG1pc3NnbHVlY2t0LgpEdSBsZXJuc3QgYXVzIERlaW5lbSBGZWhsZXIuCkRpZSBIeWRyYSBlcmhlYnQgc2ljaCBhdXMgZGVtIFRhbCBkZXIgTHVwaW5lbi4KClNoYXlhLCBraWNoZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhBSCEgOikgKEhhcmRpbCwgMTIuIE1hciAxOTk2LCAxMTowODoyMik6Cn4jISBybj1TaGF5YSBydD04MjY2MjQ3NjgKfiMhIHRpZD04MjY2MjQ3NjgKCkFjaCwgRHUgd2Fyc3QgZGFzLCBTaGF5YT8KCk1lcmNpIQoKLUhhcmRpbCwgaGF0IGltIFNrYXRyYXVtIGRlciBLbmVpcGUgZ2Vob2NrdCB1bmQgZ2V3YXJ0ZXQsIGRhc3MgZGFzIFZpZWNoCmVuZGxpY2ggd2llZGVyIHdlZyBpc3QsIGRhbWl0IG1hbiB3aWVkZXIgZ2VmYWhybG9zIFJvY2snbidSb2xsIHRhbmtlbiBrYW5uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUkwgOi0pIChIYXJkaWwsIDEyLiBNYXIgMTk5NiwgMTE6NDI6MzIpOgoKR2VyYWRlIGltIFJhZGlvIGdlaG9lcnQgKFdEUjIpOgoKZGVyIHdlbHR3ZWl0IGdyb2Vzc3RlIEtvbmRvbWhlcnN0ZWxsZXIgKExPTkRPTikgaGF0IHNlaW5lbiBWZXJ0cmllYiBmdWVyCkRldXRzY2hsYW5kIGluIGlkZSBIYWVuZGUgZGVyIEZpcm1hIEtMT1NURVJGUkFVIGdlbGVndC4KT2IgZGFzIG5pY2h0IHp1IEtvbXBsaWthdGlvbmVuIG1pdCBkZW0gUGFwc3QgKG9kZXIgQWJzYXR6c3RhZ25hdGlvbikKYmVkZXV0ZXQ/CgotSGFyZGlsLiBHcmluc3QgaW1tZXIgbm9jaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSTCA6LSkgKENyZWF0aXZlLCAxMi4gTWFyIDE5OTYsIDEyOjAyOjUxKToKfiMhIHJuPUhhcmRpbCBydD04MjY2MjczNTIKfiMhIHRpZD04MjY2MjczNTIKCktsb3N0ZXJmcmF1IE1lbGlzc2VuZ2Vpc3Q/IEFwaHJvZGlzaWFrYSBpbiBLb21iaW5hdGlvbiBtaXQgS29uZG9tZW4/IDopCgotQ3JlYS0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUkwgOi0pIChMb2NvLCAxMi4gTWFyIDE5OTYsIDEzOjM4OjIzKToKfiMhIHJuPUhhcmRpbCBydD04MjY2MjczNTIKfiMhIHRpZD04MjY2MjczNTIKQmVzdGltbXQgbmljaHQuIFdhaHJzY2hlaW5saWNoIGhhbmRlbHQgZXMgc2ljaCBkYWJlaSBhdXNzY2hsaWVzc2xpY2ggdW0gZGllCk9yZ2FuaXNhdGlvbiB2b24gU29uZGVyYWt0aW9uZW4gd2llIGRlbSBWZXJ0cmllYiBkZXIgS29uZG9tZSAiTWFya2UgVmF0aWthbiIKKGF1ZiBkZXIgUGFja3VuZyBzdGVodCAiSnVzdDRmdW4iKSB1ZWJlciBTdHVkZW50ZW5wYWtldGUgaW0gV2ludGVyc2VtZXN0ZXIKOTQvOTUuIERhIGdlcnVlY2h0ZXdlaXNlIGRlciBWYXRpa2FuIGRpZXNlcyBTZW1lc3RlciBhbHMgU3BvbnNvciBhdXNmaWVsLApmZWhsdGVuIGltIFdTIDk1Lzk2IGluIGRlbiBTdHVkZW50ZW5wYWtldGVuIGRpZSBLb25kb21lLgpCZWkgZGVtIGJlc29uZGVyZW4gSGVyc3RlbGx1bmdzdmVyZmFocmVuIGlzdCBrZWluIEtvbmZsaWt0IG1pdCBEb2dtZW4gZGVyCmthdGhvbGlzY2hlbiBLaXJjaGUgenUgZXJ3YXJ0ZW4uCgooQW5tZXJrdW5nIGRlciBSZWRha3Rpb246IERpZSBkYW1hbHMgdmVydGVpbHRlbiBLb25kb21lIGRlciBGaXJtYSBMT05ET04KaGF0dGVuIGF1c25haG1zbG9zIExvZWNoZXIuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSTCA6LSkgKEtyYW1rYSwgMTIuIE1hciAxOTk2LCAxMzozOTozMyk6Cn4jISBybj1Mb2NvIHJ0PTgyNjYzNDMwMwp+IyEgdGlkPTgyNjYyNzM1MgpKdXN0NEZ1biA/Pz8KQWxzbyBOVVIgNCBtYWwgYmVudXR6YmFyLCBvZGVyIHdpZSBpc3QgZGFzIHp1IHZlcnN0ZWhlbiA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBSTCA6LSkgKExvY28sIDEyLiBNYXIgMTk5NiwgMTM6NDI6MjIpOgp+IyEgcm49S3JhbWthIHJ0PTgyNjYzNDM3Mwp+IyEgdGlkPTgyNjYyNzM1MgpXZWlzcyBuaWNodCAtIGFiZXIgc28gc3RhbmQgZXMgYXVmIGRlciBQYWNrdW5nLiBIYWJlIGljaCBnbGF1YiBpY2ggbm9jaCwKZmFsbHMgRHUgZXMgbmljaHQgZ2xhdWJzdC4gRGVyIEluaGFsdCBpc3QgYWxsZXJkaW5ncyAtIG1pdCBlcndhZWhudGVtIEVyZm9sZyAtCmVpbmVyIFBydWVmYWt0aW9uIGFtIFdhc3NlcmhhaG4genVtIE9wZmVyIGdlZmFsbGVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWwgd2llZGVyIGRlciBLYWxlbmRlcnNwcnVjaCAoR3JpbW1ib3JuLCAxMi4gTWFyIDE5OTYsIDE1OjE5OjE4KToKCiJNZW5uIHNpY2ggamVtYW5kIHVlYmVyIHNpY2ggc2VsYnN0IGJla2xhZ3Qgd2lyZCBpaG0gaW1tZXIgZ2VnbGF1YnQsIGFiZXIgbmllCndlbm4gZXIgc2ljaCBzZWxiZXIgbG9idC4iIChNIGRlIE1vbnRhaWduZSkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2V5IGlzdCBqZXR6dCBlaW4gU2VoZXIhIChBbmF0b2wsIDEzLiBNYXIgMTk5NiwgMDk6MTQ6MjUpOgoKW0FsbGdlbWVpbjpTZWxic3Rtb3JkIGhhdCAyNDMyIEVyZmFocnVuZ3NwdW5rdGVdCltBbGxnZW1laW46U2VsYnN0bW9yZCBncmluc3RdCltBbGxnZW1laW46S2V5IGhhdCBtZWhyISA7LSldCgpXaWVsYW5nZSBub2NoIDopID8KQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbm9jaCBlaW4gU3BydWNoIChBbGJvaW4sIDEzLiBNYXIgMTk5NiwgMTg6MzQ6MDkpOgpHZXN0ZXJuIGFtIFNwcmFjaGthbGVuZGVyIDoKCkluIG5pbmUgY2FzZXMgb3V0IG9mIHRlbiwKYSB3b21hbiBoYWQgYmV0dGVyIHNob3cKbW9yZSBhZmZlY3Rpb24gdGhhbiBzaGUgZmVlbHMuCgogICAgICAgICAgICAgICBKYW5lIEF1c3RlbgoKKEluIG5ldW4gdm9uIHplaG4gRmFlbGxlbiBzb2xsdGUgZWluZSBGcmF1IGxpZWJlciBtZWhyIFp1bmVpZ3VuZyB6ZWlnZW4sIGFscwpzaWUgdmVyc3B1ZXJ0LikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQWxpbmUsIDE0LiBNYXIgMTk5NiwgMTQ6MTc6NTkpOgoKW0FsbGdlbWVpbjpKYXJpZWxdIHdpZSBnZWZhZWhsaWNoIHNpbmQgZ29ibGlucz8/Pz8/CgpbVG9kOl0gRWluIEhvYmdvYmxpbiBoYXQgZ2VyYWRlIEphcmllbCB1bWdlYnJhY2h0LgoKVW5kIGljaCB3b2xsdGUgZ2VyYWRlIG5vY2ggYW50d29ydGVuLCBkYXNzIEhvYmdvYmxpbnMgZ2VmYWVocmxpY2hlciBzaW5kLgoKQWxpbmUgdGlwcHQgbmljaHQgc2NobmVsbCBnZW51ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbGluZSwgMTUuIE1hciAxOTk2LCAxMDoyNjoxMyk6CgpBbGxnZW1laW46R2FuZG9dIGlzdCBkYXMgZWluIFdJSVQ/PyBFaW5lIEJpZW5lIG1hY2h0IG1pY2gga2FsdCAuLi4KLi4uCi4uLgpbQWxsZ2VtZWluOldvb2R5XSBlcyBpc3Qgd29obCBuZSBraWxsZXJiaWVuZQpbVG9kOl0gRWluZSBCaWVuZSBoYXQgZ2VyYWRlIEdhbmRvIHVtZ2VicmFjaHQuCldpZSBtYW4gc2llaHQgaGF0dGUgV29vZHkgcmVjaHQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9PUFMgKENoaWNvbGEsIDE1LiBNYXIgMTk5NiwgMTg6NTg6NDUpOgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHdlc3Rlbiwgbm9yZGVuIHVuZCBub3Jkb3N0ZW4uCkVpbmUgU2NoYXR0ZW5mcmF1LgpEYXMgQW11bGV0dCBkZXIgQWthZGVtaWUuCiAgRGllIFNjaGF0dGVuZnJhdSBncmVpZnQgRGljaCBtaXQgZGVtIE5hY2h0c2FlYmVsIGFuLgogIERpZSBTY2hhdHRlbmZyYXUgdHJpZmZ0IERpY2ggaGFydC4KKioqIDQ5IDAKICBEdSBncmVpZnN0IGRpZSBTY2hhdHRlbmZyYXUgbWl0IGVpbmVtIGdlbHVuZ2VuZW4gVXNoaXJvLWdlcmkta2VhZ2UgYW4uCiAgRHUgc2NobGFlZ3N0IGRpZSBTY2hhdHRlbmZyYXUgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KRGllIFNjaGF0dGVuZnJhdSBmYWVsbHQgdG90IHp1IEJvZGVuLgoqKiogNTAgMQpEaWUgQW5nc3QgaXN0IHN0YWVya2VyIGFscyBEdSAuLi4gRHUgd2lsbHN0IG51ciBub2NoIHdlZyBoaWVyLgpTdWVkb3N0ZW4gZGVyIFBsYXphLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHdlc3Rlbiwgbm9yZHdlc3RlbiB1bmQgbm9yZGVuLgoKSE1NIGFsc28gc296dXNhZ2VuIGF1ZiBkZXIgRmx1Y2h0IGVyc2NobGFnZW4gOikKCkNoaWNvbGEgZ3JpbnN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXIgc3Bpbm50LCBkZXIgQ2VsZWJkaWwgOikgKENhcmFkaHJhcywgMTYuIE1hciAxOTk2LCAwMTowNDo0NCk6CkNlbGViZGlsIHNhZ3Q6IGJyYgpDZWxlYmRpbCBzYWd0OiBpY2ggbGFzcyBtYWwgS2l0aSBzb2xhbmdlIGhpZXIgc3RlaGVuIDopCkNlbGViZGlsIHNhZ3Q6IGh1Y2gKQ2VsZWJkaWwgc2FndDogd2VyIGJpbiBpY2gKQ2VsZWJkaWwgc2FndDogZmFsc2NoZXMgTXVkCgogICAgV2FoLCBkYXMgc29sbHRlIGVpZ2VudGxpY2ggQ2FyYWRocmFzQFVOSSBzYWdlbiwgbWVpbiBad2VpdGllIHNwaW5udCEKCiAgICAgICAgIENhcmFkaHJhcyAtIGlzIGphIHNvIHZlcndlYXJodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKndhZWx6KiAoQ2FyYWRocmFzLCAxNi4gTWFyIDE5OTYsIDAxOjMzOjMxKToKd2VydGUgY2VsZWJkaWwKRHUgZHVyY2hzY2hhdXN0IENlbGViZGlsLgpDZWxlYmRpbCBpc3QgaGVpbGlnZXIgYWxzIEpvZi4KCkRlciBzcGlubnQgZG9jaCEgOikKICAgICAgICAgICAgICAgICAgICBDYXJhZGhyYXMgLSBkaWUgc3Bpbm5lbiwgZGllIFp3ZWl0aWVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKndhZWx6KiAoQ2VsZWJkaWwsIDE2LiBNYXIgMTk5NiwgMDE6MzQ6MDkpOgp+IyEgcm49Q2FyYWRocmFzIHJ0PTgyNjkzNjQxMQp+IyEgdGlkPTgyNjkzNjQxMQpNb29vb29vb29tZW50IG1hbCEKQmlzdCBqYSBudXIgbmVpZGlzY2guICpncnVtbWVsa251cnIqCgogICAgICAgICAgICAgQ2VsZWJkaWwgLSBzY2htb2xsdCBqZXR6dCBhYmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICp3YWVseiogKE11cGZlbCwgMTYuIE1hciAxOTk2LCAwNjo0NTo1MCk6Cn4jISBybj1DZWxlYmRpbCBydD04MjY5MzY0NDkKfiMhIHRpZD04MjY5MzY0MTEKSmFqYSBkZXIgQ2FyYWRocmFzLi4uIHdlbm4gbml4IGxvcyBpc3QgcmVkZXQgZXIgbWl0IHNpY2ggc2VsYnN0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAqd2FlbHoqIChTcGF0eiwgMTYuIE1hciAxOTk2LCAwNjo0Njo0Nyk6Cn4jISBybj1NdXBmZWwgcnQ9ODI2OTU1MTUwCn4jISB0aWQ9ODI2OTM2NDExCkRhbm4gaG9lcnQgbWFuIGVuZGxpY2ggZGllIEJlcmdlIGZsdWVzdGVybi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUgKFNwYXR6LCAxNi4gTWFyIDE5OTYsIDEzOjQ1OjQ5KToKW0FsbGdlbWVpbjpGcmF0el0gRGllIFRvZGVzc2VxdWVueiwgaW4gZGVyIEpvZiBkZW4gVG9kIHZlcnRyaXR0LCBpc3QKW0FsbGdlbWVpbjpGcmF0el0gZ29ldHRsaWNoISBEYWZ1ZXIgbG9obnQgZXMgc2ljaCB6dSBzdGVyYmVuLiBJY2ggaGFiIG1pY2gKW0FsbGdlbWVpbjpGcmF0el0gZmFzdCB0b3RnZWxhY2h0ISA8MTM6MDc6MzI+CltUb2Q6XSBFaW4gU2FuZHRpZ2VyIGhhdCBnZXJhZGUgR2FzdDEgdW1nZWJyYWNodC4gPDEzOjA4OjA2PgpbVG9kOl0gRWluIFNhbmR0aWdlciBoYXQgZ2VyYWRlIEdhc3QxIHVtZ2VicmFjaHQuIDwxMzoxMDoyNz4KW1RvZDpdIEVpbmUgU2NoYXR0ZW5mcmF1IGhhdCBnZXJhZGUgRnJhdHogdW1nZWJyYWNodC4gPDEzOjEwOjUzPgpbVG9kOl0gRWluIFN0ZWluYmVpc3NlciBoYXQgZ2VyYWRlIEJsYWNrbW9vciB1bWdlYnJhY2h0LiA8MTM6MTU6MjY+CltUb2Q6XSBFaW4gU2FuZHRpZ2VyIGhhdCBnZXJhZGUgR2FzdDEgdW1nZWJyYWNodC4gPDEzOjE1OjU4PgpbVG9kOl0gRWluIFpvbWJpZWtpbmQgaGF0IGdlcmFkZSBUb21jYXQgdW1nZWJyYWNodC4gPDEzOjE2OjU1PgpbVG9kOl0gRWluIFNhbmR0aWdlciBoYXQgZ2VyYWRlIEdhc3QxIHVtZ2VicmFjaHQuIDwxMzoyMDoyMT4KClNwYXR6IGdyaW5zdCB2b3Igc2ljaCBoaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYSBvZGVyIGRvY2ggKExhcmlzc2EsIDE3LiBNYXIgMTk5NiwgMjI6MDI6MjcpOgplYmVuOgpraXR6ZWwgem9ycm8KRHUga2l0emVsc3QgWm9ycm8gYW4gc2VpbmVtIEtpbm4uClpvcnJvIHZlcnN1Y2h0LCBzaWNoIHp1IGJlaGVycnNjaGVuLCBtdXNzIGFiZXIgZG9jaCBsYWNoZW4uClpvcnJvIHdlaHJ0ICJraXR6ZWwiIGFiLgpab3JybyBpZ25vcmllcnQgRGljaCBvZGVyIGRpZXNlbiBCZWZlaGwuCgpIYWIgaWNoIGlobiBudW4gZ2VraXR6ZWx0IG9kZXIgbmljaHQ/CgpMYXJpc3NhLCBncnVlYmVsbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYWphLCBkZXIgS3JldGVrIDopIChDYXJhZGhyYXMsIDE3LiBNYXIgMTk5NiwgMjI6NDI6MDEpOgo+IE1hc3NhIEtyZXRlayB0ZWlsdCBEaXIgbWl0OiBEYW5uIHNjaG5hbGwgaWNoIGRhcyBqZXR6dCBuaWNodC4uLgpEdSB0ZWlsc3QgS3JldGVrIG1pdDogZHNtbSBkdW1tZXIgc3BydWNoIG1laW5lciBtdXR0ZXIKPiBNYXNzYSBLcmV0ZWsgdGVpbHQgRGlyIG1pdDogQWggOikKYWxpYXMga3IKIGtyICAgICA9IHRvZXRlIHJhZXViZXIgMQpbQWxsZ2VtZWluOkNhcmFkaHJhcyBtdXJtZWx0IHdhcyB2b24gJ01hZ2llcm4nIHVuZCAnbmEgamEsIHNvIHNjaG5lbGwgbXVlc3NlbgpzaWUgamEgbmljaHQgZGVua2VuLi4uJ10KPiBbQWxsZ2VtZWluOktyZXRla10gUnVoZSwgQmVyZ2NoZW4hIDopKQpbQWxsZ2VtZWluOkNhcmFkaHJhcyBncmluc3QgYnJlaXQsIGZyb2VobGljaCB1bmQgZnJlY2guXQo+IFtBbGxnZW1laW46QWNyaW1vbl0gRWluZSBnZXdpc3NlIEJlZGVuay1JZGxlemVpdCBtdXNzIG1hbiBpaG5lbiBzY2hvbgpnb2VubmVuCltBbGxnZW1laW46QWNyaW1vbl0gOi0pCltBbGxnZW1laW46Q2FyYWRocmFzXSBuYSBndXQuLi4gQWNyaSBoYXQgZGljaCBnZXJldHRldCwgS3JldGVrCj4gW0FsbGdlbWVpbjpLcmV0ZWsgZGFua3QgQWNyaW1vbi5dCmtyIG9lbW0KRHUgc2llaHN0IGhpZXIga2VpbiBkZXJhcnRpZ2VzIFdlc2VuIQo+IEtyZXRlayBzdGVodCBhdWYgZWlubWFsIGhpbnRlciBEaXIgdW5kIHNhZ3Q6ICJLdWNrdWNrISIuCmFsaWFzIGtyIHRlaWxlIGtyZXRlayBtaXQgJCoKTmV1ZXMgQWxpYXM6IGtyID0gdGVpbGUga3JldGVrIG1pdCAkKgpEdSBzYWdzdDogYnJ1bW1lbApEdSBzYWdzdDogYWxpYXMga3IgdGVpbGUga3JldGVrIG1pdCAkKgpEdSBncmluc3QuCj4gS3JldGVrIHNhZ3Q6IFVlYnJpZ2VuczogR3V0ZXIgVGl0ZWwhIDopCktyZXRlayBzYWd0OiBoZWlzc3QgYmVpIG1pciB0YwpEdSBzYWdzdDogdGVpbGUga3JldGVrIG1pdCBoZWlzc3QgdGM/CkR1IHNhZ3N0OiBvaCwgZXIgc3ByaWNodCBtaXQgc2ljaCBzZWxic3QgOikKPiBLcmV0ZWsgdmVycHJ1ZWdlbHQgRGljaC4KCgogICAgRGFzIHdhciBkZXIgQmV3ZWlzISBKYXdvaGwgOikgRXIgc3ByaWNodCBhdWNoIG1pdCBzaWNoIHNlbGJzdAoKICAgICAgICAgIENhcmFkaHJhcyAtIGlzIG5pY2ggYWxsZWVuZSBpbiBQYXNzYXUgZGFtaXQgKndhZWx6KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFsIHdpZWRlciBkZXIgS2FsZW5kZXJzcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDE4LiBNYXIgMTk5NiwgMTQ6MzM6MTcpOgoiS2luZGVyIGhhYmVuIG1laHIgTnV0emVuIHZvbiBWb3JiaWxkZXJuIGFscyB2b24gS3JpdGlrZXJuIiAoSm9zZXBoIEpvdWJlcnQpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNYWwgd2llZGVyIGRlciBLYWxlbmRlcnNwcnVjaCBkZXIgV29jaGUgKEhhcmRpbCwgMTguIE1hciAxOTk2LCAxNDozNTo0Mik6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODI3MTU1OTk3Cn4jISB0aWQ9ODI3MTU1OTk3CgpEYSBrZW5uZSBpY2ggZWluZW4gYmVzc2VyZW4sIEdyaW1tYm9ybjoKCk1pdCBNYWdpZXJuIGlzdCBlcyB3aWUgbWl0IFN0dWxsZW4gLSBtYW4gbXVzcyBudXIgd2lzc2VuLCB3aWUgbWFuIHNpZSBhbQpiZXN0ZW4gc2NobWllcnQuCgphYiBkYWZ1ZXIsCgotSGFyZGlsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNYWwgd2llZGVyIGRlciBLYWxlbmRlcnNwcnVjaCBkZXIgV29jaGUgKEFuYWtpbiwgMTguIE1hciAxOTk2LCAxNDozNjozNCk6Cn4jISBybj1IYXJkaWwgcnQ9ODI3MTU2MTQyCn4jISB0aWQ9ODI3MTU1OTk3CkxlaWRlciB6dSB3YXIuCgpBbmFraW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWwgd2llZGVyIGRpZSBaYXViZXJlciAoU251Z2dsZSwgMTguIE1hciAxOTk2LCAxODoyNTo0Mik6CkdlcmFkIHBhc3NpZXJ0OgoKTGFpbGEgc3RhcnJ0IGRlbiBCYXVlcm4gYW4uCkVpbiBSYWJlIGluIEZlcm53ZXN0IHZlcmxpZXJ0IGZ1ZXIgZWluZW4gTW9tZW50IGRpZSBPT3JpZW50aWVydW5nLgoKSWNoIGRhY2h0ZSBkaWUgQ2hhb3N0aGVvcmV0aWtlciB3YWVyZW4gbmUgYW5kZXJlIEdpbGRlPwoKZ3JpbnNlbmQsClNudWdnbGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnp0cyB1bmQga2xzIChIYWRyYSwgMTguIE1hciAxOTk2LCAyMTowMTo0OCk6CmhhbGxvLAoKbmFjaGRlbSBkYW1hbHMgamEgYXVjaCBkYXMgenQgdW5kIGtsIHZlcnNjaGljayB2ZXJib3QgYXVzZ2VzcHJvY2hlbiB3dXJkZSB1bmQKZWluaWdlIGRhenUgc3RlbGx1bmcgbmVobWVuIHdvbGx0ZW4sIGhpZXIgbWFsIGVpbiBrbGVpbmVyIGVpbmJsaWNrLCB3aWUgZGFzIGluCmFuZGVyZW4gbXVkcyBsYWV1ZnQgOykKCkZyb206IHN5c3RlbUBjb3cubmV0IChUaGUgQ09XWiBBZG1pbmlzdHJhdGlvKQpOZXdzZ3JvdXBzOiByZWMuZ2FtZXMubXVkLmFkbWluClN1YmplY3Q6IFJlOiBhbiBhcHBlYWwgdG8gYWRtaW5zIGFuZCBhcmNoZXMKRGF0ZTogRnJpLCAxNSBNYXIgOTYgMDk6MjA6MzkgRVNUCk9yZ2FuaXphdGlvbjogQ09XWiBUZWNobm9sb2dpZXMKTGluZXM6IDQ2Ck1lc3NhZ2UtSUQ6IDw1bzZUa0QydzE2NXdAY293Lm5ldD4KUmVmZXJlbmNlczogPFBpbmUuVUxULjMuOTEuOTYwMzE0MDI1NzAwLjI4MDc0QS0xMDAwMDBAc2Vsd2F5LnVtdC5lZHU+Ck5OVFAtUG9zdGluZy1Ib3N0OiBjb3cubmV0CgpqdG1paWkgPGR1a2UyQHNlbHdheS51bXQuZWR1PiB3cml0ZXM6Cgo+IEVpdGhlciB5b3UndmUgYWxyZWFkeSBkZWFsdCB3aXRoIHRoaXMsIG9yIHlvdSB3aWxsIHNvb24uICBBIHBsYXllciBwdXNoZXMKPiB0aGUgbGltaXQgdG9vIG1hbnkgdGltZXMsIGFuZCBldmVudHVhbGx5ICptdXN0KiBiZSByZW1vdmVkLiAgUy9oZQo+IHN1YnNlcXVlbnRseSBsb2dzIGluIGFzIGEgZHVtbXkgY2hhcmFjdGVyIGFuZCB0aHJlYXRlbnMgdG8gcG9zdCBhbGwgeW91cgo+IHF1ZXN0IHNvbHV0aW9ucyB0byBvdGhlciBtdWRzLgo+Cj4gSSBoZWFyIHRoYXQgb25lIHNvbHV0aW9uIGlzIHRvIG1ha2UgYWxsIHBvc3RlZCBxdWVzdCBzb2x1dGlvbnMgYnJ1dGFsbHkKPiBsZXRoYWwgaGVuY2Vmb3J0aC4gIFdlIGhhdmUgbmVpdGhlciB0aGUgdGltZSBub3IgdGhlIG1hbGljZSB0byBlZmZlY3QKPiBzdWNoIGNoYW5nZXMuCgpUaGUgc29sdXRpb24gaXMgc2ltcGxlLiBLaWxsIHRoZSBwbGF5ZXIuCgpObywgSSBkb24ndCBtZWFuIGRlbGV0ZSB0aGUgZGF0YWJhc2UgcmVjb3JkIG9uIHlvdXIgTVVELiBJIG1lYW4gdHJhY2sgZG93bgphbmQga2lsbCB0aGUgdXNlci4gVGhlcmUgYXJlIGEgdmFyaWV0eSBvZiBzaW1wbGUgd2F5cyB0byBkbyB0aGlzLCBidXQgdGhlCnBvc3NpYmlsaXRpZXMgYXJlIGdyZWF0bHkgaW5jcmVhc2VkIGlmIHRoZSB1c2VyIGlzIGEgY29sbGVnZSBzdHVkZW50LgpDb2xsZWdlIHN0dWRlbnRzIGRpZSBhbGwgdGhlIHRpbWUgaW4gZnJlYWsgbWlzaGFwcyAoZmFsbGluZyBvdXQgb2YKd2luZG93cywgc2xpcHBpbmcgb24gaWNlLCBvdmVyZG9zaW5nIG9uIHNvbWUgYml6YXJyZSBuZXcgZmFkIGRydWcsIGdldHRpbmcKc3R1ZmZlZCBpbnRvIGEgcGhvbmUgYm9vdGggd2l0aCAzNyBjaW5kZXIgYmxvY2tzLCBldGMuKSBhbmQgaXQgc2hvdWxkIGJlCmFuIGVhc3kgbWF0dGVyIGZvciB5b3UgdG8gYXJyYW5nZSB0aGUgdXNlcidzIGRlYXRoIHF1aWNrbHkgYW5kIGNsZWFubHksCmVuYWJsaW5nIHlvdSB0byBnZXQgYmFjayB0byB0aGUgaW1wb3J0YW50IGJ1c2luZXNzIG9mIHJ1bm5pbmcgeW91ciBxdWVzdHMuCgpPbiBUaW55VElNLCB3ZSB0YWtlIG91ciBxdWVzdHMgc2VyaW91c2x5LiBJZiBzb21lb25lIGRlY2lkZXMgdGhleSdyZSBnb2luZwp0byBzcGlsbCB0aGUgYmVhbnMgYW5kIHJ1aW4gaXQgZm9yIGV2ZXJ5b25lLCBzd2lmdCBhbmQgZGVjaXNpdmUgcmVzcG9uc2UKaXMgdGhlIG9ubHkgYXBwcm9hY2guIE91ciBwZXJzb25hbCBjYWxsaW5nIGNhcmQgaXMgdGhlIHJlbW92YWwgb2YgdGhlCmZvcmVmaW5nZXJzIGZyb20gdGhlIGNvcnBzZSBvZiB0aGUgdXNlciwgc2lnbmlmeWluZyB0aGUgaG9tZSBwb3NpdGlvbiBvZgp0aGUgaGFuZHMgb3ZlciBhIGtleWJvYXJkLiBXZSdyZSBwcm91ZCB0byBzYXkgdGhhdCBhcyBhIHJlc3VsdCBvZiB0aGVzZQphY3Rpb25zLCBub3Qgb25lIHF1ZXN0IGhhcyBiZWVuIGNvbXByaW1pc2VkLgoKSWYgdGhlIHRob3VnaHQgb2YgdGFraW5nIHNvbWVvbmUncyBsaWZlIGNhdXNlcyB5b3UgdG8gc2h1ZGRlciBhbmQgcmV0aGluawp5b3VyIHByaW9yaXRpZXMsIHRoZSBzb2x1dGlvbiBpcywgYWdhaW4sIHNpbXBsZTogdGFrZSBvbiBhIG5ldwphZG1pbi93aXphcmQuIFRoaXMgd2l6YXJkIHNob3VsZCBiZSBzaG9ydCBvbiB3b3Jkcywgc2hvcnQgb24gcHJvZ3JhbW1pbmcKc2tpbGxzLCBhbmQgbG9uZyBvbiBicnV0ZSBmb3JjZSBzdHJlbmd0aC4gSGUgc2hvdWxkIGhhdmUgdmVyeSBsaXR0bGUgdGllcwp0byB0aGUgYXJlYSwgYW5kIGJlIHdpbGxpbmcgdG8gcGljayB1cCBhdCBhIG1vbWVudCdzIG5vdGljZSB0byBzdG9wIGJ5CkxhcmFtaWUsIFdZIG9yIFBvdHNkYW0sIE5ZIHRvIGRpc3BhdGNoIGEgc3F1ZWFsZXIuIEluIG91ciBjYXNlLCBOaW1kb2sgaGFzCnNlcnZlZCB0aGlzIGNhcGFjaXR5IG5pY2VseSwgYW5kIHdlIGFyZSBmb3JldmVyIGluZGVidGVkIHRvIGhpbS4KCklmIHlvdSBoYXZlIGFueSBxdWVzdGlvbnMgYWJvdXQgd2hvbGVzY2FsZSBkaXNwYXRjaGVzIG9mIHNvY2lhbCBncm91cHMgKGluCmNhc2UgdGhleSB3ZXJlIGNvbnNwaXJpbmcgdG9nZXRoZXIpLCBkcm9wIG1lIG9yIHRoZSBvdGhlciBhZG1pbnMgb2YKVGlueVRJTSBhIGxpbmU7IHdlJ2xsIGJlIHN1cmUgdG8gZ2l2ZSB5b3UgcG9pbnRlcnMuCgogU2tldGNoIHRoZSBDb3cKIFRoZSBJcm9uIEhvb2YgaW4gdGhlIFZlbHZldCBHbG92ZSBvZiBUaW55VElNLCB0aW0ub3JnIDU0NDAKICJXZSBkb24ndCBsaWtlIG5vIHNxdWVhbGVycy4iCgoKaGFkcmEgLSBmaW5kZXQgZGFzIG1nIGVjaHQgaHVtYW4gZGFnZWdlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVlcGZlcnMgbmV1ZXIgSm9iPyAoTHVwdXMsIDE4LiBNYXIgMTk5NiwgMjM6MDE6MjMpOgpFYmVuOgo+IERlciBLYXJhd2FuZW5mdWVocmVyIGdpYnQgZGFzIFplaWNoZW4genVyIEFiZmFocnQgenVtIFdhbGQuCkZhdGltYSBydWZ0OiBIdWVwZmVyIHdhcnMuCgpIdWVwZmVyIGlzdCBqZXR6dCBLYXJhd2FuZW5lZnVlaHJlcmluPyBXYXQgZXQgbml0IGFsbCBqaXQuCgpTdGF1bmVuZCwgTHVwdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGltIEFuZGVyTGFuZC4uLiAoTXVwZmVsLCAxOS4gTWFyIDE5OTYsIDAzOjAyOjU0KToKW1dpemFyZDpGeXRdIGRlciByZW5udCBlcm5zdGhhZnQgbWl0IGRlciBrYWJpbmUgZHVyY2ggZGllIGdlZ2VuZCA6KQpbV2l6YXJkOk1hcml0YV0gd2VyIHdvCltXaXphcmQ6Rnl0XSBkZXIgdGlzY2hsZXIgOikKW1dpemFyZDpNYXJpdGFdIGhhaGFoYSA6LSkKW0FsbGdlbWVpbjpBcnR1c10gQ2hlZiwgZGVyIEtlcmwgbGVpc3RldCBXaWRlcnN0YW5kLi4uCltBbGxnZW1laW46V29vZHldIDopCltXaXphcmQ6TWFyaXRhXSBlaW4gbnBjLCBkZXIgZWluIFBPU1RBTVQgbWl0IHNpY2ggcnVtdHJhZWNodCA6LSkKW1dpemFyZDpGeXRdIG5hIHRvbGwuLiBkaWUgendlaXRlIGhhdCBkZXIgc2VpbGVyIDspCltXaXphcmQ6TWFyaXRhXSB0amEgZnl0IGVpbmVyIHZvbiB1bnMgaGF0IG4gcHJvYmxlbSA7LSkKW1dpemFyZDpNdXBmZWxdIHdpZXNvIG1hY2hlbiBkaWUgZGFzPwpbV2l6YXJkOkZ5dCBuaWNoXQpbV2l6YXJkOkZ5dCBnZWh0IGpldHp0IGR1c2NoZW4gOildCltXaXphcmQ6Rnl0XSBlaWdlbnRsaWNoIHNvbGxlbiBkaWUgbnVyIHpldWdzIGF1ZnNhbW1lbG4sIHdhcyBhdWYgZGVyIHN0cmFzc2UKW1dpemFyZDpGeXRdIGxpZWd0CltXaXphcmQ6Rnl0XSB1bmQgZGVyIHRlc3QgaXMgbnVyIGF1ZiB1bmJlbGVidCA7KQpbV2l6YXJkOk1hcml0YV0gaWNoIG1hbCBtaXIgZGFzIGdlcmFkZSBhdXM6IG5pbW0gcG9zdGFtdCBhdXMgbGVpY2hlIDstKQpbV2l6YXJkOk1hcml0YV0gaWNoIGhvZmZlIGluIGRpZSBtYWlsa2FiaW5lIHBhc3N0IG1laHIgcmVpbiBhbHMgaW4gZGVuCltXaXphcmQ6TWFyaXRhXSBndW1taWJldXRlbCA6LSkKCi1tdXBmZWwtIChncmluc3QpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBZWhtLi4uR29ldHRlcmdhdHRpbj8gKEd1eWJydXNoLCAxOS4gTWFyIDE5OTYsIDE0OjU3OjMzKToKTGFyaXNzYSB0ZWlsdCBEaXIgbWl0OiBJY2ggeml0dGVydGUgdm9yIFd1dCA6LSkpKQpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKR3V5YnJ1c2gsIHNwcmFjaGxvcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIC0gb2RlciBQSyA7LSkgKEFuYXRvbCwgMTkuIE1hciAxOTk2LCAxNToyOTowNyk6CgpbQWxsZ2VtZWluOkphcmllbF0gd2FzIG1hY2h0IG1hbiBnZWdlbiBSYWV1YmVyLCBkaWUgZWluZW4gQXVzbmVobWVuIHdvbGxlbiAoNQpbQWxsZ2VtZWluOkphcmllbF0gc3R1ZWNrKSA/Pz8/PwpbQWxsZ2VtZWluOlR3ZWVnXSByaWRpbmcgdGhlIHJlZGxpbmUgd2FycmlvcgpbQWxsZ2VtZWluOkFubmloaWxhdG9yXSBraWxsIHRoZW0gIQpbVG9kOl0gRWluIFJhZXViZXIgaGF0IGdlcmFkZSBKYXJpZWwgdW1nZWJyYWNodC4KW0FsbGdlbWVpbjpBY3JpbW9uXSBBYmVyIG51ciB3ZW5uIGR1IGRpY2ggc3RhcmsgZ2VudWcgZnVlaGxzdCEKW0FsbGdlbWVpbjpBbm5paGlsYXRvcl0gb2RlciBhdWNoIG5pY2guCi4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtcGYgKENhcmFkaHJhcywgMTkuIE1hciAxOTk2LCAxNjo0NToyNik6CkFuYWtpbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEdSBrbnVkZGVsc3QgQW5ha2luIGF1cyBkZXIgRmVybmUuCkR1IHRlaWxzdCBBbmFraW4gbWl0OiBkcnVtIGdlaHQgZGFzIHRlbGxfcm9vbSgpIG5pY2h0CkFuYWtpbiBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBNZW5zYQoKICAgTmFudSwgbXVkZGVuIGluIGRlciBNZW5zYT8gOikKCiAgICAgICAgICAgQ2FyYWRocmFzIC0gYXVjaCB3aWxsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphdWZmYWxsZW5kIHJpY2h0aWcuLi4gOy0pIChNYXJpdGEsIDE5LiBNYXIgMTk5NiwgMTk6MTg6MTkpOgoKW0FsbGdlbWVpbjpFbHdha3NdIHdpZXNvIGRhcmYgbWljaCBlaWdlbnRsaWNoIHNvbmUgYXJyb2dhbnRlIG1hZ2llcmluIGVpbmZhY2gKW0FsbGdlbWVpbjpFbHdha3NdIGluIGRlbiBUb2Qgc2NoaWNrZW4/PwpbQWxsZ2VtZWluOkVsd2FrcyBoYXNzdCBkb29mZSBNYWdpZXJpbm5lbl0KW0FsbGdlbWVpbjpFdGFpbl0gd2VpbCBzaWUgbWFnIGlzdCwgZWx3YWtzLgpbQWxsZ2VtZWluOk1hcml0YV0gZWJlbnQKW0FsbGdlbWVpbjpFbHdha3NdIGRpZSBNYWdpZXIgZ2xhdWJlbiBhdWNoIHNpZSBkdWVyZnRlbiBhbGxlcywgb2Rlcj8KW0FsbGdlbWVpbjpFdGFpbl0gc2llIHdpc3NlbiBlcywgZWx3YWtzLgpbQWxsZ2VtZWluOkVsd2Frc10gRnJlY2hoZWl0Li53byBibGVpYnQgZGVyIFNoZXJpZmY/CltBbGxnZW1laW46RXRhaW5dIGRlciBpc3QgYXVjaCBtYWcsIGVsd2Frcy4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYW5jaGUgTnBjcyBrb2VubmVuIHNpY2ggbmljaHQgZW50c2NoZWlkZW4gKEthcmF0ZWtpZCwgMjAuIE1hciAxOTk2LCAwMDoyMDozNCk6CkdlcmFkZSBlYmVuIHBhc3NpZXJ0OgoKRGVyIFJhdW0gaXN0IGthdW0gYXVzZ2VsZXVjaHRldC4gRWluIHdlbmlnZSBMaWNodCBzY2hlaW50IGR1cmNoIGVpbiBQYWFyClJpc3NlIGltIFN0YW1tLiBFciBlbnRoYWVsdCBrZWluZXJsZWkgRWlucmljaHR1bmcuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uClBhbmRvcmEuCgotPnplaWdlIHBhbmRvcmEgYnVlY2hzZQpEdSB6ZWlnc3QgUGFuZG9yYSBkZWluZSBCdWVjaHNlIGRlciBQYW5kb3JhLgotPmdpYiBidWVjaHNlIGFuIHBhbmRvcmEKUGFuZG9yYSBzYWd0OiBLYXJhdGVraWQsIER1IHNvbGx0ZXN0IG1pciBkaWUgQnVlY2hzZSBkb2NoIHplaWdlbi4gQWJlcgpQYW5kb3JhIHNhZ3Q6IGVzIGlzdCB0cm90emRlbSBzdXBlciwgZGFzcyBEdSBzaWUgbWlyIGdlYnJhY2h0IGhhc3QuClBhbmRvcmEgc2FndDogSWNoIHJ1ZmUgTmlrZSEgU2llIHdpcmQgRGljaCBiZWxvaG5lbi4KUGFuZG9yYSBydWZ0OiBOaWtlISBEZWluIFR5cCB3aXJkIHZlcmxhbmd0IQoKClRqYSwgUGFuZG9yYSBrYW5uIHNpY2ggYXVjaCBuaWNodCBlbnRzY2hlaWRlbiwgd2FzIHNpZSB3aWxsIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKaW1EaUdyaXogPSBUZWRkeSAoQ2FyYWRocmFzLCAyMC4gTWFyIDE5OTYsIDAwOjU3OjA1KToKSmltRGlHcml6IGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KW1RvZDpdIEVpbiBIeWRyYXdvbHBlcnRpbmdlciBoYXQgZ2VyYWRlIEppbWRpZ3JpeiB1bWdlYnJhY2h0LgpbVG9kOkVpbiBIeWRyYXdvbHBlcnRpbmdlcl0gV2VyIHdhcnMgZGVubiBudW4/IERlciBXaWRkZXItLCBEYWNocy0sIEdhZW5zZSwtCltUb2Q6RWluIEh5ZHJhd29scGVydGluZ2VyXSBGbGVkZXJtYXVzLSwgUnVlc3NlbHRpZXItLCBMdWNocy0sIExpYmVsbGVuLSwKW1RvZDpFaW4gSHlkcmF3b2xwZXJ0aW5nZXJdIEZpc2Nob3R0ZXItLCBXYXNjaGJhZXItLCBSZWloZXItLCBFaWNoaG9lcm5jaGVuLQpbVG9kOkVpbiBIeWRyYXdvbHBlcnRpbmdlcl0gb2RlciBQb2xhcmZ1Y2hza29wZj8KCiAgIERlaW5lIEVkZWxzdGFobHJhdHRlIGtudWRkZWx0IERpY2ggZWluIGxldHp0ZXMgTWFsPwoKICAgICAgICAgICAgICAgIENhcmFkaHJhcyAtIEFtZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYW0gU3RhbW10aXNjaC4uLiAoQW5hdG9sLCAyMC4gTWFyIDE5OTYsIDIxOjM5OjU1KToKCkpvZiBoYXR0ZSBlcyBtYWwgbWl0IGRlbSBSdWVja2VuLi4uCkpvZiBzYWd0OiBBYmVyIG1hbiBoYXQgYW0gbW9yZ2VuIG5pY2h0cyBnZXNlaGVuLgpGYXRpbWEgc2FndDogV29oZXIgd2Vpc3N0IER1IGRlbm4gZGFzPyBIYXN0IER1IGhpbnRlbiBBdWdlbj8KSm9mIHNhZ3Q6IE5vZSwgYWJlciBMYXJpc3NhLgpGYXRpbWEgc2FndDogV0FTPyBMYXJpc3NhIGhhdCBoaW50ZW4gQXVnZW4/PwpXYXJnb24gYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uClJvY2h1cyBncmluc3QuCkNhdHdlYXpsZSBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KZXRjLgoKQW5hdG9sLgoKcHM6IGtsZWluZSBBZW5kZXJ1bmcgYXVzIERhdGVuc2NodXR6Z3J1ZW5kZW4sIGRlbiBJbmhhbHQgbmljaHQKICAgIHZlcmZhZWxzY2hlbmQgOy0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcHJvbXB0ZSBCZWRpZW51bmcgKE11cGZlbCwgMjAuIE1hciAxOTk2LCAyMzozMTo0Nik6CltTZWhlcjpOaWNodHNdICZeKkBeKl4jJSBSb2NodXMKQXVzIGRlbSBOb3JkZW4gZXJ0b2VudCBlaW4gVG9kZXNzY2hyZWkuCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFjaHQgTXVkZGVuIGRvb2Y/IChLcmV0ZWssIDIxLiBNYXIgMTk5NiwgMDA6MjQ6MzYpOgpOZXVsaWNoLCBhdWYgQWxsZ2VtZWluOgoKW0FsbGdlbWVpbjpBbmF0b2xdIE11ZGRlbiBtYWNodCBzY2hpem9waHJlbiA7KQpbQWxsZ2VtZWluOkNhcmFkaHJhc10gTXVkZGVuIG1hY2h0IGRvb2YgdW5kIGdsZWljaGd1ZWx0aWcKW0FsbGdlbWVpbjpOaWNodHNdIFNjaG5hdXplIEFuYXRvbCA7KQpbQWxsZ2VtZWluOkNhcmFkaHJhc10gTWF1bCwgQ2VsZWIgOikKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIHdhaApbQWxsZ2VtZWluOkNhcmFkaHJhc10gTmljaHRzIQpbQWxsZ2VtZWluOkNhcmFkaHJhcyBhZWNoenQuXQoKCgpLcmV0ZWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1vbnN0ZXItRVAuLi4gKEFuYXRvbCwgMjEuIE1hciAxOTk2LCAwMDo0NjowOCk6CgpbQWJlbnRldWVyOkdpZXJdIHdlbGNoZSBtb25zdGVyIGJyaW5nZW4gYW0gbWVpc3RlbiBwdW5rdGUKW0FiZW50ZXVlcjpNYXJpdGFdIHRvdGUKCkpvLgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkZWFkIGNhbiBkYW5jZS4uLj8gKEFuYXRvbCwgMjEuIE1hciAxOTk2LCAwMjo0NDoyOCk6CgpFaW5lIExlaWNoZSBodWVwZnQgZ2Vpc3Rsb3MgZHVyY2ggZGllIEdlZ2VuZC4KCkFuYXRvbCA+Oi0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2F1YnVhIChDYXJhZGhyYXMsIDIxLiBNYXIgMTk5NiwgMDM6Mjg6MzEpOgp6d2luZ3RhbnogY2VsZWJkaWwKRHUgZml4aWVyc3QgQ2VsZWJkaWwgdW5kIG1hY2hzdCBzY2h3dW5ndm9sbGUgQmV3ZWd1bmdlbi4KPiBDZWxlYmRpbCB0YW56dCB3aWUgaW4gVHJhbmNlIGR1cmNoIGRpZSBHZWdlbmQuCnp3aW5ndGFueiBjZWxlYmRpbApEdSBmaXhpZXJzdCBDZWxlYmRpbCB1bmQgbWFjaHN0IHNjaHd1bmd2b2xsZSBCZXdlZ3VuZ2VuLgpEZXIgWmF1YmVyc3BydWNoIGlzdCBtaXNzZ2x1ZWNrdC4KRHUgbGVybnN0IGF1cyBEZWluZW0gRmVobGVyLgpDZWxlYmRpbCBnZWh0IGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgp6d2luZ3RhbnogY2VsZWJkaWwKS2FubiBnZXd1ZW5zY2h0ZXMgWmllbCBuaWNodCBmaW5kZW4uCgoKICAgQmxlaWJzdCBEdSBkYSwgU2F1a2VybD8hICAgICAgICBJbW1lciBkaWVzZSBad2VpdGllcwoKICAgICAgICAgICAgIFNldWZ6ICAgICBDYXJhZGhyYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5vY2ggbmljaHQsIGFiZXIgYmFsZCEhISAoQWxpbmUsIDIxLiBNYXIgMTk5NiwgMTQ6MDk6MzYpOgpJY2ggYmluIGphIGVpbmUgRWxmaW4gZHVyY2ggdW5kIGR1cmNoLi4uLi4uCgp6dCB3YWVjaHRlcgpEdSBmaXhpZXJzdCBkZW4gWndlcmcgdW5kIG1hY2hzdCBzY2h3dW5ndm9sbGUgQmV3ZWd1bmdlbi4KRWluIFp3ZXJnIHRhbnp0IHdpZSBpbiBUcmFuY2UgZHVyY2ggZGllIEdlZ2VuZC4KRWluIFp3ZXJnIHRhbnp0IHdpZSBpbiBUcmFuY2UgZHVyY2ggZGllIEdlZ2VuZC4KCgpPaCB3aWUgaWNoIGRhcyBsaWViZSEhCkFsaW5lIGZyZXV0IHNpY2ggYXVmIExldmVsIDcsIHdlbm4gc2llIFNwaWVsZXIgbWl0ICJlcnp3aW5nZSIgcXVhZWxlbiBrYW5uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVRkYgOykgKENoaWNvbGEsIDIxLiBNYXIgMTk5NiwgMTU6NTE6NDUpOgoKRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuClB1dWghIERhcyB3YXIga25hcHAuIEdlcmFkZSBub2NoIGtvbm50ZXN0IER1IG5hY2ggbGlua3Mgc3RldWVybi4KCkdsdWVja2xpY2hlcndlaXNlIGlzdCBkaWUgSHlkcmEgbmljaHQgYXVjaCBsaW5rcyBsYW5nIDopCgpDaGljb2xhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBZWgsIGFsc28sIGtuYXBwIHZvcmJlaSAoQ2FyYWRocmFzLCAyMS4gTWFyIDE5OTYsIDE2OjI2OjAzKToKc3RhYmhpbGZlCkRpZXMgaXN0IGRpZSBPbmxpbmUtSGlsZmUgZnVlciBaYXViZXJlci4gWnUgZm9sZ2VuZGVuIFN0aWNocHVua3RlbiBnaWJ0CmVzIGJlcmVpdHMgSGlsZnN0ZXh0ZToKIGFsbGdlbWVpbmVzICAgICAgICAgfCBrb21wb25lbnRlbmhpbGZlICAgICB8IHN0YWJzY2hhZGVuCiBhbGNvdGVzdCAgICAgICAgICAgIHwgc3BydWNoaGlsZmUgICAgICAgICAgfCB2ZXJsZXR6dW5nc3R5cAogYmVlbmRlICAgICAgICAgICAgICB8IHNwcnVjaGxpc3RlICAgICAgICAgIHwgemJ1ZwogYmVuZW5uZSAgICAgICAgICAgICB8IHN0YWJoaWxmZSAgICAgICAgICAgIHwgenJ1ZmUKIGJlc2NocmVpYmUgICAgICAgICAgfCBzdGFiaW5mbyAgICAgICAgICAgICB8IHp3ZXIKIGdpbW1pY2sgICAgICAgICAgICAgfCBzdGFicmVwb3J0ICAgICAgICAgICB8CmhhdHRvOn4gMTA2PiBzdGFiaGlsZmUgYmVuZW5uZQpiYXNoOiBzdGFiaGlsZmU6IGNvbW1hbmQgbm90IGZvdW5kCgogICBLb21pc2NoLCBzb2xsdGUgaWNoIHZpZWxsZWljaHQgbWFsIGVpbiBhbGlhcyBpbgogICBtZWluZXIgLmJhc2hyYyBhbmxlZ2VuLiA6KQoKICAgICAgICAgICBDYXJhZGhyYXMgLSB2ZXJ3aXJydGVyIFphdWJlcmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWVoLCBhbHNvLCBrbmFwcCB2b3JiZWkgKENyZWF0aXZlLCAyMS4gTWFyIDE5OTYsIDE2OjI4OjM5KToKfiMhIHJuPUNhcmFkaHJhcyBydD04Mjc0MjE5NjMKfiMhIHRpZD04Mjc0MjE5NjMKCmxlZyBudXIgYW4sIG51dHp0IGF1Y2ggbml4IDotUApFcyBoZWlzc3QgLmJhc2hfcHJvZmlsZSAgOikKCi1DcmVhLSwgV2ljaHRpZ3R1ZXIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFlaCwgYWxzbywga25hcHAgdm9yYmVpIChDYXJhZGhyYXMsIDIxLiBNYXIgMTk5NiwgMTc6MjY6MDMpOgp+IyEgcm49Q3JlYXRpdmUgcnQ9ODI3NDIyMTE5Cn4jISB0aWQ9ODI3NDIxOTYzCk5vZSwgYWxpYXNlIGdlaG9lcmVuIGJlaSBtaXIgaW4gZGllIC5iYXNocmMuICBCYWVoISAqenVuZ2UgcmF1c3N0cmVjayoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCip6aXR0ZXIqIChDYXJhZGhyYXMsIDIxLiBNYXIgMTk5NiwgMTc6MjY6MTgpOgpbQWxsZ2VtZWluOkJlb2JhY2h0ZXJdIFdPSEVSIEtPTU1UIERJRSBTQ0hMQUdFIEFNIFRFTEVQT1JUVE9SIFZPTiBMQVNIID8KW0FsbGdlbWVpbjpCZW9iYWNodGVyXSBhZWgsIFNDSExBTkdFCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgogICBNZW5zY2gsIHNjaHJlaSBuaWNodCBzbyAgICAgICAgQ2FyYWRocmFzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBZWgsIGFsc28sIGtuYXBwIHZvcmJlaSAoTHdheGFuYSwgMjEuIE1hciAxOTk2LCAxNzoyNjo1Nik6Cn4jISBybj1DYXJhZGhyYXMgcnQ9ODI3NDI1NTYzCn4jISB0aWQ9ODI3NDIxOTYzCkJlaSBtaXIgLmtzaHJjLCBhYmVyIGRhcyBpbnRlcmVzc2llcnQgZWgga2VpbmVuLi4uCkx3YXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClphdWJlcmVyIHNpbmQgc2NoaXR6b3BocmVuISEhISAoQWxpbmUsIDIxLiBNYXIgMTk5NiwgMjE6MjM6NTMpOgoKRWJlbiBpbiBkZW0gVWVidW5nc3JhdW0gZGVyIEdpbGRlLi4uLi4uLi4KCiBMYXVyaW4gZ3JlaWZ0IExhdXJpbiBtaXQgZWluZXIgRmxpZWdlbmtsYXRzY2hlIGFuLgogIExhdXJpbiB2ZXJmZWhsdCBMYXVyaW4uCiAgTGF1cmluIGdyZWlmdCBMYXVyaW4gbWl0IGVpbmVyIEZsaWVnZW5rbGF0c2NoZSBhbi4KICBMYXVyaW4gdHJpZmZ0IExhdXJpbiBoYXJ0LgogIExhdXJpbiBncmVpZnQgTGF1cmluIG1pdCBlaW5lciBGbGllZ2Vua2xhdHNjaGUgYW4uCiAgTGF1cmluIHZlcmZlaGx0IExhdXJpbi4KICBMYXVyaW4gZ3JlaWZ0IExhdXJpbiBtaXQgZWluZXIgRmxpZWdlbmtsYXRzY2hlIGFuLgogIExhdXJpbiB0cmlmZnQgTGF1cmluIGhhcnQuCkxhdXJpbiBmYWVsbHQgdG90IHp1IEJvZGVuLgoKRGFzIGlzdCBkZXIgQmV3ZWlzIDspCgpBbGluZSBhdWNoIFphdWJlcmluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgTG9lc3VuZyBhbGxlciBHZWxkc29yZ2VuLi4uLiAoQW5hdG9sLCAyMS4gTWFyIDE5OTYsIDIxOjMwOjQ4KToKCgpBUlRZIGtvbnplbnRyaWVydCBzaWNoIGF1ZiBldHdhcy4KUGxvZXR6bGljaCByZWduZXQgZXMgR2VsZC4KQVJUWSBuaW1tdCA5NDQgTXVlbnplbi4KCipncmlucyogV2llIHdhZXJlIGVzIG1pdCB6YXViZXJlci5zY2htYXJybj8KQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKMS4gRHVlbGwgQ2hhb3QgLSBaYXViZXJlciAoQ2FyYWRocmFzLCAyMi4gTWFyIDE5OTYsIDAxOjI0OjI4KToKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIHdhcyB3aWU/IHdpcmtsaWNoIGFyZW5hPwpEYWNhcG8gaGF0IGdlcmFkZSBFc2N1YmFyIHp1bSBEdWVsbCBoZXJhdXNnZWZvcmRlcnQhIElociBtdWVzc3QKc2NobmVsbCBpbiBkaWUgV3Vlc3RlIHp1ciBLYW1wZmFyZW5hIGxhdWZlbiwgZGFzIGR1ZXJmdCBpaHIgZXVjaCBuaWNodAplbnRnZWhlbiBsYXNzZW4hJwpVbmQgc2Nob24gaGFzdGV0IGVyIHdpZWRlciByYXVzLgpEYWNhcG8gYmV0cml0dCBkaWUgQXJlbmEuCj4gRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6CkRhY2FwbyBoYXQgZGllIFRvcmUgb2VmZm5lbiBsYXNzZW4hIERpZXMgd2lyZCB3b2hsIG51biBkb2NoIGtlaW4gS2FtcGYgYXVmCkxlYmVuIHVuZCBUb2QgLi4uIGxlaWRlciwgbGVpZGVyIQpbQ2hhb3M6RGFjYXBvXSBoZXkgaWhyIGNoYW90ZW4sIHdvIHNlaWQgaWhyLCBkaWUgZWhyZSBkZXMgY2hhb3MgZ2VnZW4gZGllCltDaGFvczpEYWNhcG9dIHphdWRlcmVyIHp1IHZlcnRlaWRpZ2VuPwouLi4KQXVzc2VyaGFsYiBzaWVoc3QgRHU6CkRpZSBncm9zc2UgS2FtcGZhcmVuYS4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRlbi4KR3JhaW9wIGRlciByYXNlbmRlIEZldWVyZGFlbW9uLgpFaW4ga2xlaW5lciBGcm9zY2ggbmFtZW5zIERhY2Fwby4KRWlzYmFlciBFc2N1YmFyIGF1ZiBkZW0gV2VnIHp1bSBFcnptYWdpc3Rlci4KRGVyIFNjaGllZHNyaWNodGVyLgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKRXNjdWJhciB3aXJkIGdldHJvZmZlbi4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6CkVzY3ViYXIgd2lyZCBnZXRyb2ZmZW4uCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgplaW4gRnJvc2NoIG11c3MgVHJlZmZlciBoaW5uZWhtZW4uCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgpFc2N1YmFyIHNpZWh0IGV0d2FzIG1pdGdlbm9tbWVuIGF1cy4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6CmVpbiBGcm9zY2ggc2llaHQgZXR3YXMgbWl0Z2Vub21tZW4gYXVzLgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKRXNjdWJhciBzaWVodCBldHdhcyBtaXRnZW5vbW1lbiBhdXMuCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgplaW4gRnJvc2NoIHNpZWh0IGV0d2FzIG1pdGdlbm9tbWVuIGF1cy4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6CkRhcyBpc3QgRHJhbWF0aWshISBNaXR0ZW4gaW0gZ2VmYWVocmxpY2hzdGVuIEthbXBmIGZsaWVodCBlaW4gRnJvc2NoCmF1cyBkZXIgQXJlbmEuCkFzbW9kaXMgc2FndDogaGVoZSwgdmVyZnJvc2NodApFc2N1YmFyIHJ1ZnQ6IEpVQkVMICEhISEhISEhISEhCltBbGxnZW1laW46Q2FyYWRocmFzXSBob2xsYSwgZmxpZWhlbmRlIEZyb2VzY2hlIDopCltBbGxnZW1laW46RnJvc2NoIERhY2FwbyBncmluc3QgZXNjdWJhciB2b24gdW50ZW4gYW5dCkFzbW9kaXMgc2FndDogZGVyIGZyb3NjaCBoYXQgdmVybG9yZW4gOikKW0FsbGdlbWVpbjpDYXJhZGhyYXNdIG1pdCB3ZWhlbmRlbiBTY2hlbmtlbG4gcmFubnRlIGVyIGF1cyBkZXIgQXJlbmEKW0FsbGdlbWVpbjpIdWVwZmVyXSBraWNoZXIKW0FsbGdlbWVpbjpFdGFpbl0gbWl0IHdlaGVuZGVuIHNjaGVua2Vsbj8/PwpbQWxsZ2VtZWluOlN5bWJpb250IHdhZWx6dCBzaWNoIGF1ZiBkZW0gQm9kZW4uXQpKaW1EaUdyaXogc2FndDogZXNjdWJhcgpbQWxsZ2VtZWluOkZyb3NjaCBEYWNhcG9dIHRqYS4genUgbGFuZ3NhbS4gd2FlciBkaWUgZmluc3Rlcm5pcyB6dWVyc3QKW0FsbGdlbWVpbjpGcm9zY2ggRGFjYXBvXSBnZWtvbW1lbiwgd2FlcnMgd29obCBhbmRlcnNydW0gYXVzZ2VnYW5nZW4KRHUgZGVua3N0ICAgLiBvIE8gKGZpbnN0ZXJuaXM/KQpEdSBrb256ZW50cmllcnN0IERpY2guCkVpbmUgc3RyYWhsZW5kIGhlbGxlIEt1Z2VsIGVyc2NoZWludCBhdXMgZGVtIE5pY2h0cy4KCgogICAgICAgICAgICAgICBDYXJhZGhyYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjIuIER1ZWxsIENoYW90IC0gWmF1YmVyZXIgKENhcmFkaHJhcywgMjIuIE1hciAxOTk2LCAwMToyNDo1Mik6CgpEdSBrb256ZW50cmllcnN0IERpY2guCkVpbmUgc3RyYWhsZW5kIGhlbGxlIEt1Z2VsIGVyc2NoZWludCBhdXMgZGVtIE5pY2h0cy4KRHUga29uemVudHJpZXJzdCBEaWNoLgpFaW5lIHN0cmFobGVuZCBoZWxsZSBLdWdlbCBlcnNjaGVpbnQgYXVzIGRlbSBOaWNodHMuCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMTY5IE1hZ2llcHVua3RlLgo+IEFzbW9kaXMgaXN0IGdlYmxlbmRldC4KRHUga29uemVudHJpZXJzdCBEaWNoLgpFaW5lIHN0cmFobGVuZCBoZWxsZSBLdWdlbCBlcnNjaGVpbnQgYXVzIGRlbSBOaWNodHMuCkR1IGtvbnplbnRyaWVyc3QgRGljaC4KRWluZSBzdHJhaGxlbmQgaGVsbGUgS3VnZWwgZXJzY2hlaW50IGF1cyBkZW0gTmljaHRzLgo+IElzc29tYWQga29tbXQgYW4uCklzc29tYWQgYmVzY2h3b2VydCBkdW5rbGUgTWFlY2h0ZS4Kd2VydGUgamltZGlncml6Cklzc29tYWQgYmVzY2h3b2VydCBkdW5rbGUgTWFlY2h0ZS4KSXNzb21hZCBiZXNjaHdvZXJ0IGR1bmtsZSBNYWVjaHRlLgo+IElzc29tYWQgYmVzY2h3b2VydCBkdW5rbGUgTWFlY2h0ZS4KRHUga29uemVudHJpZXJzdCBEaWNoLgpFaW5lIHN0cmFobGVuZCBoZWxsZSBLdWdlbCBlcnNjaGVpbnQgYXVzIGRlbSBOaWNodHMuCj4gSmltRGlHcml6IG5pY2t0IElzc29tYWQgenUuCklzc29tYWQgYmVzY2h3b2VydCBkdW5rbGUgTWFlY2h0ZS4KRHUgYmlzdCBub2NoIHp1IGVyc2Nob2VwZnQgdm9uIERlaW5lbSBsZXR6dGVuIFNwcnVjaC4KPiBJc3NvbWFkIGJlc2Nod29lcnQgZHVua2xlIE1hZWNodGUuCkR1IGtvbnplbnRyaWVyc3QgRGljaC4KRWluZSBzdHJhaGxlbmQgaGVsbGUgS3VnZWwgZXJzY2hlaW50IGF1cyBkZW0gTmljaHRzLgpEaWUgTGljaHRrdWdlbCBsb2VzdCBzaWNoIGF1Zi4KSXNzb21hZCBiZXNjaHdvZXJ0IGR1bmtsZSBNYWVjaHRlLgpFaW5lIHN0cmFobGVuZCBoZWxsZSBLdWdlbCBlcnNjaGVpbnQgYXVzIGRlbSBOaWNodHMuCklzc29tYWQgYmVzY2h3b2VydCBkdW5rbGUgTWFlY2h0ZS4KSXNzb21hZCBiZXNjaHdvZXJ0IGR1bmtsZSBNYWVjaHRlLgpEdSBrb256ZW50cmllcnN0IERpY2guCkVpbmUgc3RyYWhsZW5kIGhlbGxlIEt1Z2VsIGVyc2NoZWludCBhdXMgZGVtIE5pY2h0cy4KRHUga29uemVudHJpZXJzdCBEaWNoLgpFaW5lIHN0cmFobGVuZCBoZWxsZSBLdWdlbCBlcnNjaGVpbnQgYXVzIGRlbSBOaWNodHMuCj4gSXNzb21hZCBiZXNjaHdvZXJ0IGR1bmtsZSBNYWVjaHRlLgpEdSBrb256ZW50cmllcnN0IERpY2guCkVpbmUgc3RyYWhsZW5kIGhlbGxlIEt1Z2VsIGVyc2NoZWludCBhdXMgZGVtIE5pY2h0cy4KPiBJc3NvbWFkIGJlc2Nod29lcnQgZHVua2xlIE1hZWNodGUuCkR1IGJpc3Qgbm9jaCB6dSBlcnNjaG9lcGZ0IHZvbiBEZWluZW0gbGV0enRlbiBTcHJ1Y2guCkppbURpR3JpeiBzYWd0OiBzaGl0LCBkdW5rZWxoZWl0IGtvc3RldCAxMApEdSBrb256ZW50cmllcnN0IERpY2guCkVpbmUgc3RyYWhsZW5kIGhlbGxlIEt1Z2VsIGVyc2NoZWludCBhdXMgZGVtIE5pY2h0cy4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAxMTcgTWFnaWVwdW5rdGUuCj4gSXNzb21hZCBiZXNjaHdvZXJ0IGR1bmtsZSBNYWVjaHRlLgo+IElzc29tYWQgYmVzY2h3b2VydCBkdW5rbGUgTWFlY2h0ZS4KRHUga29uemVudHJpZXJzdCBEaWNoLgpFaW5lIHN0cmFobGVuZCBoZWxsZSBLdWdlbCBlcnNjaGVpbnQgYXVzIGRlbSBOaWNodHMuCj4gSXNzb21hZCBiZXNjaHdvZXJ0IGR1bmtsZSBNYWVjaHRlLgpEdSB3YWVsenQgRGljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uCkR1IGtvbnplbnRyaWVyc3QgRGljaC4KRWluZSBzdHJhaGxlbmQgaGVsbGUgS3VnZWwgZXJzY2hlaW50IGF1cyBkZW0gTmljaHRzLgo+IElzc29tYWQgYmVzY2h3b2VydCBkdW5rbGUgTWFlY2h0ZS4KRHUgYmlzdCBub2NoIHp1IGVyc2Nob2VwZnQgdm9uIERlaW5lbSBsZXR6dGVuIFNwcnVjaC4KRHUga29uemVudHJpZXJzdCBEaWNoLgpFaW5lIHN0cmFobGVuZCBoZWxsZSBLdWdlbCBlcnNjaGVpbnQgYXVzIGRlbSBOaWNodHMuCj4gSXNzb21hZCBiZXNjaHdvZXJ0IGR1bmtsZSBNYWVjaHRlLgpFaW5lIHN0cmFobGVuZCBoZWxsZSBLdWdlbCBlcnNjaGVpbnQgYXVzIGRlbSBOaWNodHMuCkR1IGtvbnplbnRyaWVyc3QgRGljaC4KRWluZSBzdHJhaGxlbmQgaGVsbGUgS3VnZWwgZXJzY2hlaW50IGF1cyBkZW0gTmljaHRzLgo+IElzc29tYWQgYmVzY2h3b2VydCBkdW5rbGUgTWFlY2h0ZS4KRHUgYmlzdCBub2NoIHp1IGVyc2Nob2VwZnQgdm9uIERlaW5lbSBsZXR6dGVuIFNwcnVjaC4KRHUga29uemVudHJpZXJzdCBEaWNoLgpFaW5lIHN0cmFobGVuZCBoZWxsZSBLdWdlbCBlcnNjaGVpbnQgYXVzIGRlbSBOaWNodHMuCj4gSXNzb21hZCBiZXNjaHdvZXJ0IGR1bmtsZSBNYWVjaHRlLgpEdSBrb256ZW50cmllcnN0IERpY2guCkVpbmUgc3RyYWhsZW5kIGhlbGxlIEt1Z2VsIGVyc2NoZWludCBhdXMgZGVtIE5pY2h0cy4KRHUga29uemVudHJpZXJzdCBEaWNoLgpFaW5lIHN0cmFobGVuZCBoZWxsZSBLdWdlbCBlcnNjaGVpbnQgYXVzIGRlbSBOaWNodHMuCj4gSXNzb21hZCBncmluc3QuCgoKICAgICAgR2V3b25uZW4gOikpICAgICAgICBDYXJhZGhyYXMKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBZWgsIGFsc28sIGtuYXBwIHZvcmJlaSAoSmltZGlncml6LCAyMi4gTWFyIDE5OTYsIDAxOjI2OjE5KToKfiMhIHJuPUx3YXhhbmEgcnQ9ODI3NDI1NjE2Cn4jISB0aWQ9ODI3NDIxOTYzCmFsbGVzIGZhbHNjaCAhCgphbGlhc3NlIGdlaG9lcmVuIG5hY2ggLmFsaWFzIHdvYmVpIGluIGRlciBqZXdlaWxpZ2VuIC54eSh6KXNocmMgZGFubiBlaW4Kc291cmNlIC5hbGlhcyBiencgZWluIC4gLmFsaWFzIGRyaW5zdGVodCAhCmphd29sbGphCgpKZEcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyb3NjaHZlcnNhbW1sdW5nIChFc2N1YmFyLCAyMi4gTWFyIDE5OTYsIDAzOjAyOjQ0KToKU2l0enVuZyBkZXIgRnJvZXNjaGU6CgpzY2hhdQpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogdW50ZW4uCkVpbiBrbGVpbmVyIEZyb3NjaCBuYW1lbnMgWnVlcmlsZXUuCkVpbiBrbGVpbmVyIEZyb3NjaCBuYW1lbnMgSmFzcGVyLgpFaW4gR29ibGluaGVsbS4KRWluZSBtYWdpc2NoZSBLdWdlbC4KRWluIGtsZWluZXIgRnJvc2NoIG5hbWVucyBTeW1iaW9udC4KRWluIGtsZWluZXIgRnJvc2NoIG5hbWVucyBBY3JpbW9uLgpFaW4ga2xlaW5lciBGcm9zY2ggbmFtZW5zIEplcnJpY28uCkVpbiBrbGVpbmVyIEZyb3NjaCBuYW1lbnMgQnJlaXRpLgpFaW4ga2xlaW5lciBGcm9zY2ggbmFtZW5zIEphc3Rlc3RpLgpFaW4ga2xlaW5lciBGcm9zY2ggbmFtZW5zIEphc3Rlc3RpaS4KClphdWJlcmZyb3NjaCBFc2N1YmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdGlyYiBsYW5nc2FtPyAoTmljaHRzLCAyMi4gTWFyIDE5OTYsIDIxOjU0OjUxKToKCnw+PigrKXtTU1UgIH1bVFIgSEFSVF0uLi4uLi4uLiBEdSBkZW4gRWxpdGVzb2xkYXRlbgpEZXIgRWxpdGVzb2xkYXQgc3RpcmJ0IGF1ZiBkZW0gRmVsZCBkZXIgRWhyZS4KW01vZXJkZXI6R2Vpc3QgZWluZXMgRWxpdGVzb2xkYXRlbl0gU2Nob24gd2llZGVyIGVpbiBUYWcgdmVyc2F1dCB3ZWdlbgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFbGl0ZXNvbGRhdGVuXSBOaWNodHMhCiAgRGVyIEVsaXRlc29sZGF0IHVlYmVycmVubnQgRGljaC4KCipobXBmKiA6KQoiIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhpaGkgKENhcmFkaHJhcywgMjMuIE1hciAxOTk2LCAxNDoxODo0Myk6CkRlciBHb3NzZW56d2VyZyBrbGV0dGVydCBkaWUgV2FuZCBpbSBPc3RlbiBob2NoLCBydXRzY2h0IGFiZXIgYWIgdW5kIGJyaWNodApzaWNoIGRpZSBLbm9jaGVuLgoKWndlcmdlIHNpbmQgZG9vZiA6KSBNZWluZSBGcmV1bmRlIG5hdHVlcmxpY2ggYXVzZ2Vub21tZW4uIDopKQoKICAgICAgICBDYXJhZGhyYXMgZGVyIEVsY2gKICAgICAgICBhZWVlZWVlaCBFbGYgKmdyaW5zIEtyZXRlayoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhvY2hlYmVuZW56YXViZXJlciA7KSAoRXNjdWJhciwgMjMuIE1hciAxOTk2LCAxNDo0NTo1NCk6CltBbGxnZW1laW46Q2FyYWRocmFzXSBkZXIgSG9jaGViZW5lbi1Nb2VyZGVyIGlzdCB3aWVkZXIgdW50ZXJ3ZWdzIDwxNDo0MjowOD4KW0FsbGdlbWVpbjpTaWJvcml0IGdyaW5zdCBDYXJhZGhyYXMgYW4gPDE0OjQyOjMzPl0KW0FsbGdlbWVpbjpWYWxhcmlhbiBncmluc3QuIDwxNDo0Mjo1Mz5dCltBbGxnZW1laW46Q2FyYWRocmFzXSBEdSB0cmlmZnN0IENhcmFkaHJhcyBtaXQgZWluZW0gR2lmdHBmZWlsIGlucyBCZWluLgpbQWxsZ2VtZWluOkNhcmFkaHJhc10gPDE0OjQzOjA4PgpbQWxsZ2VtZWluOkNhcmFkaHJhc10gYXVhIDwxNDo0MzowOD4KCndlbmlnIHNwYWV0ZXI6CltNb2VyZGVyOkdlaXN0IGVpbmVyIEFtZWlzZV0gQ2FyYWRocmFzIGlzdCBOSUNIVCB6dSBtZWluZXIgQmVlcmRpZ3VuZwpbTW9lcmRlcjpHZWlzdCBlaW5lciBBbWVpc2VdIGVpbmdlbGFkZW4hCltNb2VyZGVyOkdlaXN0IGVpbmVyIEJsYXR0bGF1c10gTWlzdCwgbWVpbmUgVm9yc2ljaHQgaGF0IHZlcnNhZ3QhIFVuZCBkYXMgYmVpCltNb2VyZGVyOkdlaXN0IGVpbmVyIEJsYXR0bGF1c10gQ2FyYWRocmFzIQpbTW9lcmRlcjpHZWlzdCBlaW5lciBBbWVpc2VdIFdlbm4gRHUgZGFzIG5vY2ggb2VmdGVyIG1hY2hzdCwgQ2FyYWRocmFzLCBkYW5uCltNb2VyZGVyOkdlaXN0IGVpbmVyIEFtZWlzZV0gc3BpZWxlIGljaCBoaWVyIG5pY2h0IG1laHIhCltNb2VyZGVyOkdlaXN0IGVpbmVyIEJsYXR0bGF1c10gQ2FyYWRocmFzPyBJY2ggYmluIGRhbm4gamV0enQgd2VnLgpbTW9lcmRlcjpHZWlzdCBlaW5lciBCbGF0dGxhdXNdIFNoZXJpZmYhIFVudGVybmltbSB3YXMgZ2VnZW4gQ2FyYWRocmFzIQoKRWlzYmFlciBFc2N1YmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGloaSAoQW5ha2luLCAyMy4gTWFyIDE5OTYsIDE1OjI5OjA1KToKfiMhIHJuPUNhcmFkaHJhcyBydD04Mjc1ODcxMjMKfiMhIHRpZD04Mjc1ODcxMjMKRGVpbiBHbHVlY2sgQ2FyYSouCgpBbmFraW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPcmtzISEgKmF1Z2VuIHJvbGwqIChDYXJhZGhyYXMsIDIzLiBNYXIgMTk5NiwgMTc6NDQ6NTQpOgpmcmFnZSBvcmsgbmFjaCBrbGV0dGVyaGFrZW4KRGllIE9ya211dHRlciBzYWd0OiBEdSBrYW5uc3QgaWhuIGtyaWVnZW4sIHdlbm4gRHUgdW5zIHVuc2VyZSBnZWhlaW1lIFp1dGF0CkRpZSBPcmttdXR0ZXIgc2FndDogYmVzb3Jnc3QuCmZyYWdlIG9ya211dHRlciBuYWNoIHp1dGF0ZW4KRGllIE9ya211dHRlciBzYWd0OiBLZWluZSBBaG51bmcsIGFiZXIgZnJhZyBtYWwgbWVpbmVuIE1hbm4uCj4gZnJhZ2Ugb3JrdmF0ZXIgbmFjaCB6dXRhdGVuCkRpZSBPcmttdXR0ZXIgZmx1Y2h0OiBEaWVzZXIgdmVyZGFtbXRlIFN0ZWluYmVpc3NlciBtb2VnZSBpbSBIaW1tZWwgYnJhdGVuIQpEZXIgT3JrdmF0ZXIgc2FndDogVHV0IG1pciBsZWlkLCBhYmVyIGFsbGVzIHdlaXNzIGljaCBhdWNoIG5pY2h0LgoKICAgICAgIE9ya3Mgc2luZCBkb29mIHVuZCAuLi4KCiAgICAgICAgICAgQ2FyYWRocmFzIC0gd2FyIGVyc3QgZHVzY2hlbiB1bmQgSU5UIDIzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgZnVlciBIdWVwZmVyIChDYXJhZGhyYXMsIDI0LiBNYXIgMTk5NiwgMDE6NTQ6MDIpOgpEdSBzY2hhdXN0IGRlciBBbWVpc2UgdGllZiBpbiBkaWUgQXVnZW4gdW5kIHNhZ3N0OiBIdWVwZmUhCkR1IGdyZWlmc3QgZGllIEFtZWlzZSBtaXQgZGVyIExpZWJlIGVudHp1ZWNrdCBhbi4KRHUgdHJpZmZzdCBkaWUgQW1laXNlLgpEaWUgQW1laXNlIGZhZWxsdCB0b3QgenUgQm9kZW4uCkVpbmUgTGVpY2hlIGh1ZXBmdCBnZWlzdGxvcyBkdXJjaCBkaWUgR2VnZW5kLgoKICAgIEFoIGphLiA6KQogICAgICAgICAgICAgICBDYXJhZGhyYXMgLSBodWVwZnQgZ2Vpc3Rsb3MgZHVyY2ggZGllIEdlZ2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmFjayB0byB0aGUgTmF0dXJlPyAoQ2FyYWRocmFzLCAyNC4gTWFyIDE5OTYsIDE3OjAzOjM4KToKRWluIEZyb3NjaCBodWVwZnQgaW4gZGVyIEdlZ2VuZCBoZXJ1bS4KQXJtYWdlZGRvbiBydWZ0OiBPaCBHb3R0IEpvZiEhIFdhcyBtYWNoc3QgRHUgc2Nob24gd2llZGVyPyBJbiAxNyBNaW51dGVuCndlcmRlCmljaCBkaWUgV2VsdCB6ZXJzdG9lcmVuLgpEaWUgQW1laXNlIHNpZWh0IGJldHJ1bmtlbiBhdXMuCkRpZSBBbWVpc2Ugc3RvbHBlcnQgdWViZXIgaWhyZSBGdWVzc2UuCkVpbiBGcm9zY2ggZ3JpbnN0IGRpZSBBbWVpc2UgYW4uCkRpZSBBbWVpc2Ugc2llaHQgYmV0cnVua2VuIGF1cy4KRWluIEZyb3NjaCBzdHVwc3QgZGllIEFtZWlzZSBhbi4KRWluIEZyb3NjaCBzY2huYXBwdCBzaWNoIGRpZSBBbWVpc2UgdW5kIGRpZSBiZWlkZW4gdGFuemVuIGVpbmUgUnVuZGUgU2xvd2ZveC4KRWluIEZyb3NjaCB2ZXJ3dXNjaGVsdCBkZXIgQW1laXNlIEhhYXJlLgoKICAgICAgIE1HIHNwaWVsdCB2ZXJydWVja3QgOikgICAgICAgIENhcmFzY2htYXJybgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGFsbGwgZXIgUm9iaGluIGxhbGxsbCAoQ2FyYWRocmFzLCAyNC4gTWFyIDE5OTYsIDIzOjAwOjIxKToKPiByciByb2JpbgpEdSBzY2h3ZW5rc3QgZWluIGtsZWluZSBGbGFzY2hlIHZvciBSb2JpbnMgTmFzZSBoZXJ1bS4KRHUgemF1YmVyc3QgUm9iaW4gZWluZW4gUmF1c2NoIGFuLgpSb2JpbiBncmVpZnQgRGljaCBtaXQgZWluZW0gZ2VsdW5nZW5lbiBBZ2UtdGVpc2hvLXVjaGkgYW4uClJvYmluIGdlaHQgbmFjaCBPc3Rlbi4KbwpSYW5kIGRlciBIb2NoZWJlbmUuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4sIHdlc3RlbiB1bmQgbm9yZHdlc3Rlbi4KUm9iaW4gb2YgTG9ja3NsZXkuCkR1IHNjaHdlbmtzdCBlaW4ga2xlaW5lIEZsYXNjaGUgdm9yIFJvYmlucyBOYXNlIGhlcnVtLgpSb2JpbiBoYXQgZGVuIFNwcnVjaCBhYmdld2VocnQuClJvYmluIHNhZ3Q6IFdpciBzb2xsdGVuIG1hbCB3aWVkZXIgenVzYW1tZW4gZWluZW4gdHJpbmtlbiBnZWhlbi4KCiAgS2xhciwgUm9iaW4sIGdlcm5lLCBhYmVyIER1IHdpbGxzdCBqYSBuaWNodC4KICB1bnQgcm9iaW4gLT4gUm9iaW4gaXN0IHNjaG9uIHN0ZXJuaGFnZWx2b2xsLgoKICAgICAgICAqaGlja3MqICAgICAgICBDYXJhZGhyYXMgLSB2ZXJ6YXViZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVzcGVrdD8gKFRhc2hhLCAyNC4gTWFyIDE5OTYsIDIzOjE5OjUzKToKR3JhZGUgaW0gZGVuIE5ld3MgZ2VsZXNlbjoKCgpUaGUgQm9zdG9uIEdsb2JlIHJhbiBhbiBBUCBhcnRpY2xlIHdpdGggcGhvdG8gb24gYW4gYWx0ZXJuYXRlIGp1cm9yCmZvciB0aGUgV2hpdGV3YXRlciB0cmFpbCBpbiBBcmthbnNhcyB3aG8gaGFzIGJlZW4gd2VhcmluZyBhIFRORwpzdGFuZGFyZCByZWQgdW5pZm9ybSAoTHQuIENvbW0pIHdpdGggdHJpY29yZGVyIGFuZCBoYW5kIHBoYXNlciAoanVyb3JzCmFyZSBhbGxvd2VkIHRvIHdlcmEgc2lkZWFybXM/IDotKSB0byB0aGUgcHJvY2VlZGluZ3MuICBUaGUgYXJ0aWNsZQpzdGF0ZXMgdGhhdCB0aGUgcHJlc2lkZW50IG9mIGFuIFNUIGZhbiBjbHViIGluIEFya2Fuc2FzIHdhcyB3b3JyaWVkCnRoYXQgdGhpcyBtaWdodCBiZSBjb25zdHJ1ZWQgYXMgZGlzcmVzcGVjdCBmb3IgdGhlIGNvdXJ0LiAoSSB3b3VsZApiZSB3b3JyaWVkIGFib3V0IHNvbWV0aGluZyBlbHNlIDotKQoKT2YgY291cnNlIHRoaXMgaXMgZGlzcmVwZWN0ZnVsLiBUaGUganVyb3Igc2hvdWxkIGJlIGluIGEgZnVsbCBkcmVzcwp1bmlmb3JtLgoKZ3JpbnNlbmQsIFRhc2hhIFlhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5vY2ggbmljaHQsIGFiZXIgYmFsZCEhISAoV2FyZ29uLCAyNS4gTWFyIDE5OTYsIDExOjM4OjQ1KToKfiMhIHJuPUFsaW5lIHJ0PTgyNzQxMzc3Ngp+IyEgdGlkPTgyNzQxMzc3NgpPaCwgb29vaGhoaGguLi4uCjpzY2h3YW50IFVlYmxlcy4uLiA7KQogIFdhcmdvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGFubiBkb2NoIHNvb28gc2NobmVsbCAoTGluaywgMjUuIE1hciAxOTk2LCAxMTo0MTowNCk6ClNhbXN0YWdhYmVuZCB2b3JtIEthcmF0ZS1Eb2pvIQoKPiBzYWcgbml4IHVlYmVuLCBHb3Jkbz8KRHUgc2Fnc3Q6IG5peCB1ZWJlbiwgR29yZG8/Cj4gR29yZG8gc2FndDogaGljaCBtdXNzIGhpZXIgbm9jaCBuIGJpc3NjaGVuIHVlYmVuCnNhZyBoaWVyPyBpbSBkb2pvIGdlaHRzIGRvY2ggYmVzc2VyLCBvZGVyPwpEdSBzYWdzdDogaGllcj8gaW0gZG9qbyBnZWh0cyBkb2NoIGJlc3Nlciwgb2Rlcj8KZ3JpbnMgYmllbmNoZW4KRHUgZ3JpbnN0IEJpZW5jaGVuIGFuLgo+IEJpZW5jaGVuIHNhZ3Q6IGhpIGxpbmsKc2FnIGhpIGJpZW5jaGVuCkR1IHNhZ3N0OiBoaSBiaWVuY2hlbgpzYWcgd2lsbHN0IGR1IG4gYmlzY2hlbiB1ZWJlbiwgYmllbmNoZW4/CkdvcmRvIHNhZ3Q6IGhpZXIga2FubnN0IGR1IGVpbmVuIGdhbnogYmVzdGltbXRlbiBzY2hsYWcgb2RlciBhYndlaHIgdGVjaG5pawpHb3JkbyBzYWd0OiB1ZWJlbiBkaWUgZHUgbm9jaCBuaWNodCBzbyBndXQga2FubnN0CkR1IHNhZ3N0OiB3aWxsc3QgZHUgbiBiaXNjaGVuIHVlYmVuLCBiaWVuY2hlbj8KQmllbmNoZW4gZnJhZ3Q6IFdhcyBmdWVybiBhbmdyaWZmIGhhZXR0ZXN0IGR1IGdlcm5lPwpzYWcgZWdhbCwgbnVyIHVlYmVuIDopCkR1IHNhZ3N0OiBlZ2FsLCBudXIgdWViZW4gOikKPiBzYWcgYWJlciBuaWNoIHRvdGhhdWVuIQpEdSBzYWdzdDogYWJlciBuaWNoIHRvdGhhdWVuIQo6CjoKOgo6CkJpZW5jaGVuIHNhZ3Q6IHNvIGhhdCBzY2hsaWVzc2xpY2ggamVkZXIgdm9uIHVucyBhbmdlZmFuZ2VuCkJpZW5jaGVuIHNhZ3Q6IG9rLCBrb21tCkJpZW5jaGVuIHNjaHdpcnJ0IGF1ZiBkZXIgU3VjaGUgbmFjaCBPcmtzIGluIGRhcyBTaGludG8uCncKRGFzIFNoaW50b1J5dSwgZGVyIFRyYWluaW5nc3JhdW0gZGVyIEthcmF0ZWthIGlzdCBjYS4gZnVlbmYgTWV0ZXIgaG9jaCwgaW4KZHJlaSBNZXRlcm4gSG9laGUgemllaHQgc2ljaCBlaW5lIEVtcG9yZSBkdXJjaCBkaWUgSGFsbGUuIERpZSBXYWVuZGUgYmVzdGVoZW4KYXVzIGhlbGxlbSBIb2x6LCBkZXIgQm9kZW4gaXN0IG1pdCBydXRzY2hmZXN0IGJlZmVzdGlndGVuIEJhbWJ1c21hdHRlbgpiZWRlY2t0LiBBbiBkZXIgTm9yZHdhbmQgYmVmaW5kZXQgc2ljaCBlaW4gMjAgY20gaG9oZXMgUG9kZXN0IHp1bSBTaXR6ZW4sIGRhcwptaXQgd2Vpc3NlbSBTdG9mZiB1ZWJlcnpvZ2VuIGlzdCwgdW5kIGF1ZiBkZW0gQmF1bXdvbGxtYXR0ZW4gYXVzZ2VicmVpdGV0CnNpbmQuIEhpZXIga29lbm5lbiBzaWNoIEthcmF0ZWthIGdlZ2Vuc2VpdGlnIGFuZ3JlaWZlbiwgb2huZSBkYXNzIGVpbgpQbGF5ZXJraWxsIGRyb2h0LgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogb3N0ZW4uCkJpZW5jaGVuIHdpcmQgc2ljaCByYWVjaGVuLgo+IGdyaW5zCkR1IGdyaW5zdC4KPiAgIEJpZW5jaGVuIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBnZWx1bmdlbmVuIFNvdG8tdXJha2VuLXVjaGkgYW4uCiAgRHUgdmVyc3VjaHN0LCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gR2VkYW4tYmFyYWkgYWJ6dXdlaHJlbi4KICBCaWVuY2hlbiBrcmF0enQgRGljaC4KICBEdSBncmVpZnN0IEJpZW5jaGVuIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gQ2hva3UtenVraSBhbi4KICBCaWVuY2hlbiB2ZXJzdWNodCBEZWluZW4gQW5ncmlmZiBtaXQgZWluZW0gSGFpd2FuLW5hZ2FzaGktdWtlIGFienV3ZWhyZW4uCiAgRHUgdmVyZmVobHN0IEJpZW5jaGVuLgogIEJpZW5jaGVuIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBnZWx1bmdlbmVuIE1hZS1nZXJpLWtla29taSBhbi4KICBEdSB2ZXJzdWNoc3QsIGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBHZWRhbi1iYXJhaSBhYnp1d2VocmVuLgogIEJpZW5jaGVuIHNjaGxhZWd0IERpY2ggbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KICBEdSBncmVpZnN0IEJpZW5jaGVuIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gQ2hva3UtenVraSBhbi4KICBCaWVuY2hlbiB2ZXJzdWNodCBEZWluZW4gQW5ncmlmZiBtaXQgZWluZW0gTWF3YXNoaS1rZWl0by11a2UgYWJ6dXdlaHJlbi4KICBEdSBraXR6ZWxzdCBCaWVuY2hlbiBhbSBCYXVjaC4KICBCaWVuY2hlbiBncmVpZnQgRGljaCBtaXQgZWluZW0gZ2VsdW5nZW5lbiBNYWUtZ2VyaS1rZWtvbWkgYW4uCiAgRHUgd2VocnN0IGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBHZWRhbi1iYXJhaSBhYi4KICBCaWVuY2hlbiB0cmlmZnQgRGljaCBoYXJ0LgogIER1IGdyZWlmc3QgQmllbmNoZW4gbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBDaG9rdS16dWtpIGFuLgogIER1IGtyYXR6dCBCaWVuY2hlbi4KPiAgIEJpZW5jaGVuIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBnZWx1bmdlbmVuIE1hZS1nZXJpLWtla29taSBhbi4KICBEdSB2ZXJzdWNoc3QsIGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBHZWRhbi1iYXJhaSBhYnp1d2VocmVuLgogIEJpZW5jaGVuIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KICBEdSBncmVpZnN0IEJpZW5jaGVuIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gQ2hva3UtenVraSBhbi4KICBEdSBrcmF0enQgQmllbmNoZW4uCmNoCkR1IGhhc3QgMTM4MTA3IEVyZmFocnVuZ3NwdW5rdGUsIDE4NSBBYmVudGV1ZXJwdW5rdGUoMTkwMCksCjM0IExlYmVuc3B1bmt0ZSg4MikgdW5kIDgzIE1hZ2llcHVua3RlKDEwNikKRHUgYmlzdCAiTGluayBkZXIgS2FyYXRlLUthZW1wZmVyLCBBbmZhZW5nZXIuIgpEZWluZSBBdHRyaWJ1dGUgc2VoZW4gc28gYXVzOgpJbnRlbGxpZ2VuejogNSAoKzMpIEF1c2RhdWVyOiA0ICgrMSkgS3JhZnQ6IDUgIEdlc2NoaWNrbGljaGtlaXQ6IDUgKCsyKQpWb3JzaWNodC1Nb2R1cyAoMzApCkFsdGVyOiAgMSBUYWcgNSBTdHVuZGVuIDU0IE1pbnV0ZW4gNTIgU2VrdW5kZW4uCkRlaW4gQ2hhcmFrdGVyIGlzdCBuZXR0LgpWZXJnbGljaGVuIG1pdCBEZWluZW4gTWl0c3BpZWxlcm4sIGtlbm5zdCBEdSBEaWNoIGltIE1vcmdlbkdyYXVlbiBzY2hsZWNodGVyCmFscyBkZXIgRHVyY2hzY2huaXR0IGF1cy4KQWJzb2x1dCBnZXNlaGVuIGtlbm5zdCBEdSBudXIgd2VuaWcgdm9tIE1vcmdlbkdyYXVlbi4KPiAgIEJpZW5jaGVuIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBnZWx1bmdlbmVuIFNvdG8tdXJha2VuLXVjaGkgYW4uCiAgRHUgdmVyc3VjaHN0LCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gR2VkYW4tYmFyYWkgYWJ6dXdlaHJlbi4KICBCaWVuY2hlbiB0cmlmZnQgRGljaC4KICBEdSBncmVpZnN0IEJpZW5jaGVuIG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gQ2hva3UtenVraSBhbi4KICBEdSB2ZXJmZWhsc3QgQmllbmNoZW4uCm8gIEJpZW5jaGVuIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBzZWhyIGdlbHVuZ2VuZW4gTWFlLWdlcmkta2Vrb21pIGFuLgogIER1IHZlcnN1Y2hzdCwgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIEdlZGFuLWJhcmFpIGFienV3ZWhyZW4uCiAgQmllbmNoZW4gc2NobGFlZ3QgRGljaCB6dSBCcmVpLgpbVG9kOl0gQmllbmNoZW4gaGF0IGdlcmFkZSBMaW5rIHVtZ2VicmFjaHQuCgoKTGluayAtIGhhZXR0ZSB2aWVsbGVpY2h0IGRvY2ggQklUVEUgc2FnZW4gc29sbGVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYW1lcyBULiBLaXJrIGVtcGZpZWhsdCBNb3JnZW5HcmF1ZW4gKEhpZ2hsYW5kZXIsIDI1LiBNYXIgMTk5NiwgMTI6MjA6NDEpOgpXZXIncyBuaWNodCBnbGF1YnQ6IEVpbmZhY2ggU1QgVkk6IERhcyB1bmVudGRlY2t0ZSBMYW5kIGFuc2VoZW4uCkRhIHNhZ3QgZXIgYW0gRW5kZSAoYXVmIGRpZSBGcmFnZSBuYWNoIGRlbSBLdXJzKToKRGVyIHp3ZWl0ZSBTdGVybiB2b24gcmVjaHRzLiBVbmQgZGFubiBpbW1lciBncmFkZWF1cywgYmlzIGluJ3MgTW9yZ2VuR3JhdWVuLgooTXVzcyBuaWNodCB3b2VydGxpY2ggc28gc2VpbiwgYWJlciBNRyBzYWd0IGVyIGJlc3RpbW10IDo+KQogIEhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FubiBtaXIgZGFzIGJpdHRlIEplbWFuZCBlcmtsYWVyZW4/IChBbGluZSwgMjUuIE1hciAxOTk2LCAxNjowOTozNik6CmViZW4gcGFzc2llcnQ6CgpuCkR1IGJlZmluZGVzdCBEaWNoIGF1ZiBlaW5lciBncm9zc2VuLCBoZXJybGljaCBibHVlaGVuZGVuIEhvY2hlYmVuZSwgYXVmCmRlciBzaWNoIEtsZWludGllcmUsIFZvZWdlbCB1bmQgSW5zZWt0ZW4gbnVyIHNvIHR1bW1lbG4uIEFsbGVzIGlzdCBmcmllZC0KbGljaCwgbnVyIGRhcyBad2l0c2NoZXJuIGRlciBWb2VnZWwgdW5kIGRhcyBSYXVzY2hlbiBlaW5lcyBrbGVpbmVuIEJhY2hlcwppbSBTdWVkZW4gaXN0IHp1IGhvZXJlbi4gSW0gV2VzdGVuIGVyaGViZW4gc2ljaCBkaWUgc2NobmVlYmVkZWNrdGVuIEJlcmdlCnZvbiBUaW5nYW4gdW5kIGltIE5vcmRlbiB1bmQgU3VlZGVuIGthbm5zdCBkdSB3ZWl0ZXIgd2VnIHp3ZWkgR2ViaXJnc2tldHRlbgpzZWhlbi4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4sIHdlc3RlbiB1bmQgbm9yZGVuLgpSb2JpbiBvZiBMb2Nrc2xleS4KRWluIEJhZXIuCj4gICBSb2JpbiBzY2hsZXVkZXJ0IGVpbmVuIEZldWVyYmFsbCBuYWNoIERpci4KICBSb2JpbiB0cmlmZnQgRGljaCBzZWhyIGhhcnQuCnp0U251Z2dsZSBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCiByb2JpUm9iaW4gZnJhZ3Q6IEhhdCBkaWUgQmFyIGluIGRlciBad2VyZ2Vuc3RhZHQgaGV1dGUgZ2VvZWZmbmV0PwouLi4uCi4uLgpbVG9kOl0gUm9iaW4gaGF0IGdlcmFkZSBBbGluZSB1bWdlYnJhY2h0CgpEYWJlaSBoYXR0ZSBpY2ggaWhuIGdhcm5pY2h0IGFuZ2VncmlmZmVuIDooCgpBbGluZSBzdGF1bnQgbm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthbm4gbWlyIGRhcyBiaXR0ZSBKZW1hbmQgZXJrbGFlcmVuPyAoU251Z2dsZSwgMjUuIE1hciAxOTk2LCAxNjoyNDowMyk6Cn4jISBybj1BbGluZSBydD04Mjc3NjY1NzYKfiMhIHRpZD04Mjc3NjY1NzYKVmllbGxlaWNodCBoYWV0dGUgaWNoIHNpZSBlaW4gbGV0enRlcyBNYWwgYXVzIGRlciBGZXJuZSBrbnVkZGVsbiBzb2xsZW4/CgpzaWNoIHVlYmVyIFJvYmluIHd1bmRlcm5kLAoKVGVkZHleSF5IXkhHdW1taWJhZXIgU251Z2dsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEphbWVzIFQuIEtpcmsgZW1wZmllaGx0IE1vcmdlbkdyYXVlbiAoVGFzaGEsIDI1LiBNYXIgMTk5NiwgMjE6MzA6NTMpOgp+IyEgcm49SGlnaGxhbmRlciBydD04Mjc3NTI4NDEKfiMhIHRpZD04Mjc3NTI4NDEKSGkhCgpEZXIgZ3V0ZSBKYW1lcyBULiBoYXQgamEgcmVjaHQgbWl0IGRlbSB3YXMgZXIgc2FndCwgYWJlciBlciBoYXQgZXMgbGVpZGVyCmdla2xhdXQuIERpZXNlciBTYXR6IGlzdCBlaW4gWml0YXQgYXVzIFBldGVyIFBhbi4gU2Vjb25kIHN0YXIgdG8gdGhlIHJpZ2h0IGFuZApzdHJhaWdodCBvbiB0aWxsIG1vcm5pbmcgKE8tVG9uKSBpc3QgZGllIFdlZ2Jlc2NocmVpYnVuZyBuYWNoIE5pbW1lcmxhbmQuCgpUYXNoYSBZYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnBvbGl6ZWkuYmVzY2h3ZXJkZW4gKFllbmRpLCAyNS4gTWFyIDE5OTYsIDIxOjQyOjExKToKCkRhIHNvbGwgZG9jaCBnbGVpY2ggZGllc2VyIHVuZCBqZW5lci4uLiEKCl9NaXRzY2huaXR0X29uXwoKRXMgc2luZCBrZWluZSBGcnVlY2h0ZSBpbiBSZWljaHdlaXRlLgo+IER1IGhhc3QgamV0enQgNDAgTGViZW5zcHVua3RlIHVuZCA0MSBNYWdpZXB1bmt0ZS4Kbm4KTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4KPiBEdSBoYXN0IGpldHp0IDQxIExlYmVuc3B1bmt0ZSB1bmQgNDIgTWFnaWVwdW5rdGUuCkR1IGhhc3QgamV0enQgNDIgTGViZW5zcHVua3RlIHVuZCA0MyBNYWdpZXB1bmt0ZS4KTWFuZ28gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KTWFuZ28gcGZsdWVja3QgZWluZSBGcnVjaHQgdW5kIGlzc3Qgc2llLgpNYW5nbyBwZmx1ZWNrdCBlaW5lIEZydWNodCB1bmQgaXNzdCBzaWUuCk1hbmdvIHBmbHVlY2t0IGVpbmUgRnJ1Y2h0IHVuZCBpc3N0IHNpZS4KTWFuZ28gc2FtbWVsdCBzZWluZSBHZWJlaW5lIGVpbiB1bmQgc2NobGVwcHQgc2llIG5hY2ggV2VzdGVuLgoKX01pdHNjaG5pdHRfb2ZmXwoKCkRhIHNjaGF1dCBtYW4gbWFsIGVpbmUgVmllcnRlbG1pbnV0ZSB3ZWcsIHVuZCB3YXMgcGFzc2llcnQ/Pz8KKmdydW1tZWwqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHBvbGl6ZWkuYmVzY2h3ZXJkZW4gKEphc3BlciwgMjUuIE1hciAxOTk2LCAyMTo0MzoxMyk6Cn4jISBybj1ZZW5kaSBydD04Mjc3ODY1MzEKfiMhIHRpZD04Mjc3ODY1MzEKV2VyIHp1IHNwYWV0IGtvbW10LCBkZW4gYmVzdHJhZnQuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogcG9saXplaS5iZXNjaHdlcmRlbiAoSmFzcGVyLCAyNS4gTWFyIDE5OTYsIDIxOjQ0OjA1KToKfiMhIHJuPVllbmRpIHJ0PTgyNzc4NjUzMQp+IyEgdGlkPTgyNzc4NjUzMQplcnphZWhscyBkZW0gV2Fzc2VydHJvbGwsIGRlciB1ZWJlcm5pbW10IGF1ZnRyYWdzbW9yZGUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogcG9saXplaS5iZXNjaHdlcmRlbiAoWWVuZGksIDI1LiBNYXIgMTk5NiwgMjE6NDQ6MjIpOgp+IyEgcm49SmFzcGVyIHJ0PTgyNzc4NjU5Mwp+IyEgdGlkPTgyNzc4NjUzMQoKTmVpbm5laW4sIEphc3BlciwgZGFzIGxhdXRldGUKIldlciBkZW4gU2NoYWRlbiBoYXQsLi4uIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBwb2xpemVpLmJlc2Nod2VyZGVuIChNYW5nbywgMjUuIE1hciAxOTk2LCAyMjo1MzowNyk6Cn4jISBybj1ZZW5kaSBydD04Mjc3ODY1MzEKfiMhIHRpZD04Mjc3ODY1MzEKCgoKCiAgICAgIEljaCBzYWcgbnVyOiBaT05LIGdlem9nZW4uCgoKCk1hbmdvLCBoZXV0IG1hbCB1bmdsYXVibGljaCBzY2huZWxsLiA7KQoKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBwb2xpemVpLmJlc2Nod2VyZGVuIChNYW5nbywgMjUuIE1hciAxOTk2LCAyMjo1NDoxNik6Cn4jISBybj1KYXNwZXIgcnQ9ODI3Nzg2NjQ1Cn4jISB0aWQ9ODI3Nzg2NTMxCgoKTnVyIG5pY2h0IHNvIGZyZWNoIEphc3Blciwgc29uc3Qgc2V0enQncyB3YXMuIDspCgoKTWFuZ28gaGF0IHNpY2ggZ2VyYWVjaHQuCgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZXIgaXN0ICdNdXJtdXMnLCB1bmQgd29oZXIgaGF0IGVyIGRpZXNlIE1hY2h0PyA6LSkgKE11cGZlbCwgMjYuIE1hciAxOTk2LCAxNjo0MzozMik6CmdyYWRlIGluIEJvaW5ncyBXb3Jrcm9vbS4uLgoKTXVybXVzIHJ1ZnQ6IGJvaW5nCkJvaW5nIHZlcmxhZXNzdCBkaWVzZSBXZWx0LgoKKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0ei1PbWJhdGlzIChBY3JpbW9uLCAyNi4gTWFyIDE5OTYsIDE3OjQwOjA5KToKRWJlbiBpbiBkZXIgRWxmZW5wb3N0IGdlc2VoZW46CgpIaWxscGVydCBnZWh0IGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgpPbWJhdGlzIHBvbHRlcnQgSGlsbHBlcnQgaGludGVyaGVyLgoKSGFiIGdhciBuaWNodCBnZXd1c3p0LCBkYXN6IGF1Y2ggT21iYXRpc3NlIG5ldHp0b3Qgd2VyZGVuIGtvZW5uZW4gOi0pCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJsaWNrIHVlYmVybiBaYXVuIChNdXBmZWwsIDI3LiBNYXIgMTk5NiwgMDM6MDg6MTkpOgpuZXVsaWNoLCBpbiBlaW5lbSBNVUQsIHdvIGF1ZiBbTW9lcmRlcl0gdW5kIFtUb2RdIGVtb3RldCB3ZXJkZW4gZGFyZi4uLi4KCltNb2VyZGVyOkRlciBHZWlzdCBkZXMgQ291c2luIGRlcyBWb2dlbGhhZW5kbGVycyBzaW5ndDogRWluIFZvZ2VsZmFlbmdlciB3YXIKaWNoIGphLCBzdGV0cyBsdXN0aWcgaGVpc3NhIGhvcHBzYXNhLl0KCnVuZCBkYW5uLCB3ZW5pZyBzcGFldGVyOgoKW1RvZDpdIERlciBDb3VzaW4gZGVzIFZvZ2VsaGFlbmRsZXJzIGhhdCBnZXJhZGUgQ2VsZWJkaWwgdW1nZWJyYWNodC4KW1RvZDpEZXIgQ291c2luIGRlcyBWb2dlbGhhZW5kbGVycyBzaW5ndDogRWluIFZvZ2VsZmFlbmdlciBiaW4gaWNoIGphLCBzdGV0cwpsdXN0aWcgaGVpc3NhIGhvcHBzYXNhLl0KCipncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCbGljayB1ZWJlcm4gWmF1biAoS3JldGVrLCAyNy4gTWFyIDE5OTYsIDAzOjQ5OjQ2KToKfiMhIHJuPU11cGZlbCBydD04Mjc4OTI0OTkKfiMhIHRpZD04Mjc4OTI0OTkKVW5kIGljaCBzYWNoIG5vY2ggenUgQ2FyYWRocmFzOgpDYXJhZGhyYXMsIHNhY2ggaWNoLCB3ZW5uIER1IHdhcyBhdXMgZGVyIFphdWJlcmZsb2V0ZSB3aXNzZW4gd2lsbHN0LApkYW5uIGZyYWNoIG1pY2ggZG9jaCBlaW5mYWNoISAoU28gZ2VzY2hlaGVuIGluIGVpbmVyIERTQS1SdW5kZS4uLikKCktyZXRlawooSG9iYnktU2luZ2Ryb3NzZWwpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYXJhZG94b24gKEhpZ2hsYW5kZXIsIDI3LiBNYXIgMTk5NiwgMTI6MTg6MDcpOgpbLi4uXQpLZWluIERvcnRtdW5kZXIgVHJlZmZlbiBvaG5lIDQgUmVwbGllcyA6LSkKCi1IYXJkaWwuIE5OTi4KWy9wbGF5ZXJzL2hpZ2hsYW5kZXJdIFdhdCBudT8gbm4KTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4KCkRhIGlzdCBkb2NoIHdhcyBwYXJhZG94LCBvZGVyPyA6PgogIEhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGljaHRzY2hldSA/IChMYWlsYSwgMjcuIE1hciAxOTk2LCAxNToxMjowMik6CkltIFRhbDoKCkVpbmUgc3RyYWhsZW5kIGhlbGxlIEt1Z2VsIGVyc2NoZWludCBhdXMgZGVtIE5pY2h0cy4KPiBBbGluZSBpc3Qgd2VnLgoKV2FzIGlzdCBsb3MsIEFsaW5lPyBMaWNodHNjaGV1IGdld29yZGVuID8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBhbSBTdGFtbXRpc2NoLi4uLiAoQW5hdG9sLCAyOC4gTWFyIDE5OTYsIDAxOjE0OjQxKToKCi4uLiAoVGVsa2EgdW5kIE9ldHRpIGhhYmVuIGdlaGVpcmF0ZXQpCgpKb2Ygc2FndDogV2llc28sIE9ldHRpIGlzdCBkb2NoIGVpbiBuZXR0ZXIgS2VybC4uLgpUZWxrYSBzYWd0OiBXZWlzcyBpY2ggbmljaCEKCkhtbW1tamEuIDopCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFiZXIgSG9wcGxhIChDYXJhZGhyYXMsIDI4LiBNYXIgMTk5NiwgMDU6MTg6MDkpOgo+IGtrd2VyCkFtb25zdWwsIEFuYXRvbCwgQXF1YWRlc3QsIEFxdWF0b2xsLCBDYXJhZGhyYXMsIENlbGViZGlsLCBEYW50ZSwKRmFudWlkaG9sLCBHaWVyLCBKYXF1ZW5ldHRhLCBKYXJpZWwsIEthbGxpb3BlLCBNZXRoZWRyYXMsIE1pbmRvbGx1aW4sCk1vcm9uLCBOaWNodHMsIFB1Y2ssIFNwYXR6LgoKa3dlciBpbiBvc25hYnJ1ZWNrCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEb24sIDI4LiBNYXIgMTk5NiwgMDU6MTQ6NDAgKDQgVGVpbG5laG1lcikKCkphcXVlbmV0dGEuLi4uLi5TICBNb3Jvbi4uLi4uLi4uLi4uUyAgQW5hdG9sLi4uLi4uLi4uLlMgIE5pY2h0cy4uLi4uLi4uLi5TCkFxdWFkZXN0LCBBcXVhdG9sbCwgS2FsbGlvcGUsIFB1Y2sgbmljaHQgenUgdmVyZ2Vzc2VuIDopCgo+IGt3ZXIgaW4gcGFzc2F1CiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEb24sIDI4LiBNYXIgMTk5NiwgMDU6MTY6MDYgKDYgVGVpbG5laG1lcikKCkFtb25zdWwuLi4uLi4uLi5zICBNaW5kb2xsdWluLi4uLi4ucyAgRmFudWlkaG9sLi4uLi4uLnMgIE1ldGhlZHJhcy4uLi4uLi5TCkNlbGViZGlsLi4uLi4uLi56ICBDYXJhZGhyYXMuLi4uLi4uUwoKICAgIEltbWVyaGluIG9obmUgdW5zIG1laHIgYWxzIGVpbiBTcGllbGVyIGltIE11ZCA6KQoKICAgICAgICAgQ2FyYWRocmFzLCBkZXIgaG9lY2hzdGUgQmVyZyB2b24gTW9yaWEKClBTOiBhY2ggc28sIEhvcHBsYSB3YXIgZGF2b3IgYXVjaCBub2NoIGRhLCBhdXMgT3NuYWJydWVjayAqOl4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZ2lsZGVuLnphdWJlcmVyLCBBcnRpa2VsIEZsYW1tZW5kZSBIYW5kIChIaWdobGFuZGVyLCAyOC4gTWFyIDE5OTYsIDA5OjA3OjU3KToKSG0uLi4uCnhjYWxsICRtLT5TZXRQcm9wKFBfSEFORFMsIDIwKQpTQVVWSUVMIFNjaGFkZW4/IDo+CiAgIFp1bSBHbHVlY2sgaGFiIGljaCBnbGVpY2ggbmFjaCBzY2htYXJybiBnZXNjaHJpZWJlbiwKICAgICAgSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGdpbGRlbi56YXViZXJlciwgQXJ0aWtlbCBGbGFtbWVuZGUgSGFuZCAoU2lsdmFuYSwgMjguIE1hciAxOTk2LCAxMDozNzowMyk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTgyODAwMDQ3Nwp+IyEgdGlkPTgyODAwMDQ3NwoKVW5kIGljaCBkYWNodGUsIGVpbiBFTSBoYWV0dGUgc2VpbmUgUHJvcGVydGllcyBiZWlzYW1tZW4uLi4KeGNhbGwgJG1lLT5TZXRQcm9wKFBfTUFYX0hBTkRTLDIwKSBzb2xsdGUgZXMgaGVpc3Nlbi4KQmVpIERlaW5lbSBWb3JzY2hsYWcgZ2FlYmUgZXMgbnVyIGRlcmJlIEJ1Z3MuIDstKQoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBnaWxkZW4uemF1YmVyZXIsIEFydGlrZWwgRmxhbW1lbmRlIEhhbmQgKEhpZ2hsYW5kZXIsIDI4LiBNYXIgMTk5NiwgMTA6NDY6NDQpOgp+IyEgcm49U2lsdmFuYSBydD04MjgwMDU4MjMKfiMhIHRpZD04MjgwMDA0NzcKU2V1ZnosIGVpbm1hbCB3ZW5uIG1hbiBuaWNodCBuYWNoc2llaHQuLi4KSWNoIGhhYiBzb3dhcyBnZWFobnQsIGRhcnVtIHd1ZXJkZSBpY2ggaW0gRXJuc3RmYWxsIHZvcmhlciBuYWNoc2VoZW4gOz4KRU0gc2VpbiBoZWlzc3QgbmljaHQsIHdpc3Nlbiwgd2llIGRhcyBwcm9wZXJ0eSBoZWlzc3QgLQogICBtYW4gbXVzcyBudXIgd2lzc2VuLCB3bydzIHN0ZWh0IDs+CiAgICAgIEhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZ2lsZGVuLnphdWJlcmVyLCBBcnRpa2VsIEZsYW1tZW5kZSBIYW5kIChSYWZmaSwgMjguIE1hciAxOTk2LCAxMzoxMDo0NSk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTgyODAwNjQwNAp+IyEgdGlkPTgyODAwMDQ3NwoKSXN0IGRhcyBkZXIgR3J1bmQgd2FydW0gbWFubiBzbyBvZnQgQW5mcmFnZW4gdm9tIEVNIGF1ZiBkZW4gS2FuYWVsZW4gaG9laHJ0LAp3byBkZW5uIGJpdHRlIGRpZXMgb2RlciBkYXMgc3RlaHQgPwoKR3J1c3MKSC4gKDwtIEVyIHZlcnN1Y2h0IGVzIGhhbHQgaW1tZXIgd2llZGVyIGVuZGxpY2ggc2VpbmVuIFphcHAgenUgYmVrb21tZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdXBlciBBbmdlYm90IChLcmFta2EsIDI4LiBNYXIgMTk5NiwgMTU6MzU6NDMpOgpOZXVsaWNoIGltIFplcmdlbmxhZGVuOgoyMTMuIDQ2OTUgTXVlbnplbiAgICAgICAgICAgICAgIDE0MDg1CgpOYSB3ZW5uIGRhcyBuaWNodCBtYWwgZWluIFNvbmRlcmFuZ2Vib3QgaXN0ICEhIQoKS3JhbWthLCBncmluc2VuZCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvb2R5IGRlciBDb3dib3kgKFN0YWhsZG9ybiwgMjguIE1hciAxOTk2LCAxNTo1Nzo0NSk6Cm5ldWxpY2g6CkR1IHRlaWxzdCBXb29keSBtaXQ6IEhvbHprb3BmCldvb2R5IHRlaWx0IERpciBtaXQ6IFN0YWhsYmlybgoKaGloaSA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkloaGhoIGVpbiBGaW5nZXIgbWl0IEVoZXJpbmcgKEFsaW5lLCAyOS4gTWFyIDE5OTYsIDEyOjQxOjI4KToKV2FzIGVzIG5pY2h0IHNvIGFsbGVzIGdpYnQsIGViZW4gZ2VzZWhlbjoKCltSYXVtYmVzY2hyZWlidW5nXQpFcyBnaWJ0IHNlY2hzIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBvYmVuLCB1bnRlbiwgcmF1cywgc3VlZGVuIHVuZAp3ZXN0ZW4uClNvdWwgZGVyIHRvbHBhdHNjaGlnZSBKdW5nemF1YmVyZXIuCkVpbiBIb3JuaXNzZW5zdGFjaGVsLgpFaW4gS3J1bW1zY2h3ZXJ0LgpFaW5lIEthbWlsbGVuYmx1ZXRlLgpFaW5lIExlZGVycnVlc3R1bmcuCjMzIE11ZW56ZW4uCkVpbiBFaGVyaW5nIChhbmdlem9nZW4pLgpFaW4gWmF1YmVyc3RhYi4KCldlciBpc3QgZGEgZGVubiBnZXN0b3JiZW4/ClZvciBhbGxlbmRpbmdlbiB3aWUgc2llaHQgZWluIGFuZ2V6b2dlbmVyIEVoZXJpbmcgYXVzPwpTdGVja3QgZGEgbm9jaCBkZXIgRmluZ2VyIGRyaW4/PwoKQWxpbmUgKHN0YXVuZGVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipncmlucyogKEFydHksIDI5LiBNYXIgMTk5NiwgMTU6MzQ6MTIpOgpEdSB3aXJmc3QgZGVyIE5hY2t0c2NobmVja2UgZWluZW4gdmVyZnVlaHJlcmlzY2hlbiBCbGljayB6dS4KUGxvZXR6bGljaCByZWduZXQgZXMgR2VsZC4KCi4uLiBNYW4sIGJpbiBpY2ggR1VUIDopKSkpKQoKQVJUWQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW5hdG9sIHZvbSAyOC4wMy45NiAoVGVsa2EsIDI5LiBNYXIgMTk5NiwgMTY6MjA6NDcpOgpIYWxsbyEhIQoKQWxzbyBlcnN0IG1hbCB6dXIgS2xhcnN0ZWxsdW5nLi4uLgoKV2VubiBBbmF0b2wgc2Nob24gd2FzIGVyemFlaGx0LCBkYW5uIHNvbGx0ZSBlciB2aWVsbGVpY2h0IGFsbGVzIGF1ZnNjaHJlaWJlbgp1bmQgbmljaHQgbnVyIGVpbmVuIFRlaWwgdm9uIGRlbSwgd2FzIGVyIGdlcmFkZSBtYWwgYXVmZ2VzY2huYXBwdCBoYXQgOy0pCgpUZWxrYQo6KSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW5hdG9sIHZvbSAyOC4wMy45NiAoTGFyaXNzYSwgMjkuIE1hciAxOTk2LCAxNjoyMjowNCk6Cn4jISBybj1UZWxrYSBydD04MjgxMTI4NDcKfiMhIHRpZD04MjgxMTI4NDcKdW5kIHdpZSB3YXIgZGVyIGdhbnplIFp1c2FtbWVuaGFuZz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFjaCBkaWVzZSBaYXViZXJlciEgKEFjcmltb24sIDI5LiBNYXIgMTk5NiwgMTY6NDg6NTMpOgoKW1phdWJlcmVyOkxhaWxhXSBoZSBoZSBMaGFuYSBpc3QgbmFjaCBQb3J0IFZhaW4gZ2VmbHVlY2h0ZXQgYWJlciBNSVIga2FubgpbWmF1YmVyZXI6TGFpbGFdIHNpY2ggbmljaHQgZW50a29tbWVuIDopCltUb2Q6XSBMaGFuYSBkaSBMZW9uZHJvIGhhdCBnZXJhZGUgTGFpbGEgdW1nZWJyYWNodC4KW1RvZDpMaGFuYSBkaSBMZW9uZHJvXSBMYWlsYSB3aXJkIGluIEt1ZXJ6ZSBiZWdyYWJlbi4gV2lyIGJpdHRlbiB1bQpbVG9kOkxoYW5hIGRpIExlb25kcm9dIEJsdW1lbnNwZW5kZW4uCgo6LSkKCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAyOS4gTWFyIDE5OTYsIDE5OjE5OjU0KToKCkRpZXNtYWwgZXJzdCBhbSBGcmVpdGFnLiBBdXNzZXJkZW0gZ2lidCBtZWluIEthbGVuZGVyIGRpZXNlIFdvY2hlIG51ciBNdWVsbApoZXIsIGRhaGVyOgoKIldlbm4gRFUgZWluZSBUcmFlbmUgaW4gbWVpbmVtIEF1Z2Vud2lua2VsIHdhZXJzdCB3dWVyZGUgaWNoIG5pZSB3ZWluZW4sIGF1cwpBbmdzdCwgRGljaCB6dSB2ZXJsaWVyZW4iIChHcmFmZml0aSBpbiBkZXIgbG9rYWxlbiBTdHJhc3NlbmJhaG4pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCiJEaWUgS29lbG5lciBWZXJrZWhyc2JldHJpZWJlIHNldHplbiBiaXMgenUgMTAwMCBETSBCZWxvaG51bmcgYXVzIGZ1ZXIKSGlud2Vpc2UsIGRpZSB6dXIgRXJncmVpZnVuZyB2b24gVmFuZGFsZW4gZnVlaHJlbi4iCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKmdyaW5zKiAoQXNtb2RpcywgMjkuIE1hciAxOTk2LCAxOTozMjo1MSk6Cn4jISBybj1BcnR5IHJ0PTgyODExMDA1Mgp+IyEgdGlkPTgyODExMDA1MgpXYW5uIGhlaXJhdGV0IGlociA/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWVjaHRpZ2VyIFNwcnVjaCAoQWNyaW1vbiwgMzAuIE1hciAxOTk2LCAwMTo1NjoxOSk6CkljaCBoYWIgYmVpIGRlbiBGZXVlcmdlaXN0ZXJuIFplaXR1bmcgZ2VsZXNlbiwgdW5kIGRhbm4ga2FtIExhdXJpbjoKCkxhdXJpbiB0YW56dCB3aWUgaW4gVHJhbmNlIGR1cmNoIGRpZSBHZWdlbmQuCkxhdXJpbiB3aXNjaHQgZGVuIFNjaHJpZnR6dWcgdm9tIEFsdGFyIGFiLgpMYXVyaW4gc2NocmVpYnQgZWluZSBtYWdpc2NoZSBGb3JtZWwgYXVmIGRlbiBBbHRhci4KTGF1cmluIHNhZ3Q6IEZJQVQKQW0gQWx0YXIgaXN0IGVpbiBsZWlzZXMgU3VtbWVuIGluIGRlciBMdWZ0IHp1IGhvZXJlbi4KRWluIFNhdHlyIHRyaXR0IGF1cyBlaW5lbSBCYXVtLgpMYXVyaW4gdmVyd2FuZGVsdCBzZWluZW4gWmF1YmVyc3RhYiBpbiBlaW5lbiBCbHVtZW5zdHJhdXNzIHVuZCB3aXJmdCBpaG4gbmFjaApOb3Jkb3N0ZW4uCkRlciBTYXR5ciBzYWd0OiBMZXR6dGUgTmFjaHQgaGFiZSBpY2ggZWluIFNjaGFmIGdlZnJlc3Nlbi4uLgpEZXIgU2F0eXIgcG9zaWVydCB2b3IgRGlyIG1pdCBzZWluZW0gZ2VvZWx0ZW0gT2JlcmtvZXJwZXIuCkRlciBTYXR5ciBzYWd0OiBMZXR6dGUgTmFjaHQgaGFiZSBpY2ggZWluIFNjaGFmIGdlZnJlc3Nlbi4uLgpEZXIgU2F0eXIgc3BpZWx0ICdMYSBEcmFnb24nIGF1ZiBlaW5lciBQYW5mbG9ldGUuCkVpbiBBZGxlciB6aWVodCB3ZWl0IHVlYmVyIERpciBzZWluZSBLcmVpc2UuCkRlciBTYXR5ciBsYWNodCB1ZWJlciBEaWNoLgoKCldhcyB3YXIgZGFzIGJsb3N6IGZ1ZXIgZWluIFNwcnVjaCwgZGVuIExhdXJpbiBkYSBoaW5nZXNjaHJpZWJlbiBoYXQ/IDotKQoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFlY2h0aWdlciBTcHJ1Y2ggKExhdXJpbiwgMzAuIE1hciAxOTk2LCAwMjowODowOCk6Cn4jISBybj1BY3JpbW9uIHJ0PTgyODE0NzM3OQp+IyEgdGlkPTgyODE0NzM3OQpUamEsIGljaCBiaW4gZWJlbiBlaW4gbWFlY2h0aWdlciBaYXViZXJlciwgdW5kIGdsYXViIG5pY2h0LCBkYXNzCmljaCBtZWluZSBUcmlja3MgdmVycmF0ZSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCwgaW4gQWx0bGFudGlzIChDaGVhc3ksIDMxLiBNYXIgMTk5NiwgMTc6NTI6MzkpOgp1bnQgd2Fzc2VyClNvd2FzIHNpZWhzdCBEdSBkYSBuaWNodCEKCi1DaGVhc3kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNYWVjaHRpZ2VyIFNwcnVjaCAoTGksICAxLiBBcHIgMTk5NiwgMTE6NDc6MTgpOgp+IyEgcm49QWNyaW1vbiBydD04MjgxNDczNzkKfiMhIHRpZD04MjgxNDczNzkKQWVoLCB3ZW5uIG1pY2ggbWVpbmUgZWluZ2Vyb3N0ZXRlbiBsYXRlaW5rZW5udG5pc3NlIG5pY2h0IHZlcmxhc3NlbiBoYWJlbiwKaGVpc3N0IGZpYXQgIkVzIHdlcmRlIiBvZGVyIHNvIGFlaG5saWNoLi4KTGkgKGdyb3NzZXMgTGF0aW51bSBhYmVyIGZyYWd0IG1pY2ggbmljaHQsIHdpZSBpY2ggZGFzIGdlc2NoYWZmdCBoYWJlKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNYWVjaHRpZ2VyIFNwcnVjaCAoQXNtb2RpcywgIDEuIEFwciAxOTk2LCAxMzo0NjoxNSk6Cn4jISBybj1MaSBydD04MjgzNTIwMzgKfiMhIHRpZD04MjgxNDczNzkKQWNoIG5lZT8gSWNoIGRhY2h0ZSBpbW1lciwgZGFzIHdhZXJlIG5lIGl0YWxpZW5pc2NoZSBBdXRvbWFya2UgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClF1aXouLi4gKFllbmRpLCAgMS4gQXByIDE5OTYsIDE5OjUxOjA3KToKCltXaXNzZW5zY2hhZnQ6R3V5YnJ1c2hdIHdpZSBoZWlzc3QgZGllIGhhdW90c2F0ZHQgdm9uIHRhaGl0aT8gYWVobSBmcmFuei4KW1dpc3NlbnNjaGFmdDpHdXlicnVzaF0gcG9saW5lc2llbj8KW1dpc3NlbnNjaGFmdDpVbHVsYV0gUGFwZWV0ZQpbV2lzc2Vuc2NoYWZ0Okd1eWJydXNoXSB1bHVsYQpbV2lzc2Vuc2NoYWZ0OlllbmRpXSBKYSB3YXMgZGVubiBudT8KW1dpc3NlbnNjaGFmdDpZZW5kaV0gIlBhcGVldGUiIG9kZXIgIlVsdWxhIj8gOykKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFuY2VyIHVuZCBLYW5ndXJ1aCBiZWltIFp3ZWloYXVwdCAoUmFmZmksICAxLiBBcHIgMTk5NiwgMjI6NTY6MzApOgoKSWNoIGhhdHRlIHNpZSBzb3dlaXQsIGRhcyBzaWUgbWlyIG1pdCBaYXBwIGdlZHJvaHQgaGFiZW4sIGFiZXIgZGFubgpoYWJlbiBzaWUgd2llZGVyIGRhcyBUaGVtYSBnZXdlY2hzZWx0LgoKRHUgc2Fnc3Q6IHdhcyBudSBtaXQgemFwcApEdSBzYWdzdDogbXVzcyBpY2ggZXVjaCBhZXJnZXJuICA/CkRhbmNlciB6YXBwdCBEaWNoLiBSdWhlIGpldHp0LiA6LSkKS2Flbmd1cnVoIHphcHB0IERpY2guIEJ1bW0uCkthZW5ndXJ1aCBzYWd0OiBBaCBqYQpEdSBzYWdzdDogZGFzIGhhYiBpY2ggbWl0Z2VzY2huaXR0ZW4gISAtIGRhcyBrb21tdCBuYWNoIHBvbGl6ZWkuYmVzY2h3ZXJkZW4KRGFuY2VyIG5pY2t0IHp1c3RpbW1lbmQuCkthZW5ndXJ1aCBzYWd0OiBDb24gbWlyIGF1cwpEdSBzYWdzdDogRmFrZS1aYXBwcyBzaW5kIHNjaHdlcmUgU3BpZWxlcmFlcmdlcnVuZyAhCkRhbmNlciBzYWd0OiB0cmF1IGRpY2ggdW5kIGljaCB6YXAgZGljaCB3aXJrbGljaCA7LSkpKQpLYWVuZ3VydWggc2FndDogSWNoIGxlcyBlcyBlaCBuaWNodApEYW5jZXIgc2FndDogb2suLmFlaCwgd2FzIHdvbGx0ZSBpY2ggbm9jaCBzYWdlbi4uLgpEdSBzYWdzdDogJ3NhZyBmZWlnJwoKCk5hIGphLCBkYXMgaXN0IGpldHp0IG5pY2h0IFBvbGl6ZWkuQmVzY2h3ZXJkZW4sIGFiZXIgdHJvdHpkZW0gdmllbGVpY2h0CmtyaWVnIGljaCBqZXR6dCBtZWluZW4gWmFwcCA6KQoKR3J1c3MKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdhYiBlcyBkYXMgTW9yZ2VuZ3JhdWVuIHNjaG9uIDE5Nzg/IChBenp1cm8sICAzLiBBcHIgMTk5NiwgMDA6MTA6MzQpOgpJQ2ggaGFiZSBoZXV0ZSBiZWkgZGVyIEJ1Y2gtUmVjaGVyY2hlIG1hbCB3aWVkZXIgenUgdmllbCBaZWl0IGdlaGFidC4gRGFzIGthbQpkYWJlaSByYXVzOgoKQXV0b3I6IENob3RqZXdpdHosIFBldGVyIE8uCgpUaXRlbDogIkRpZSBIZXJyZW4gZGVzIE1vcmdlbmdyYXVlbnMiCgpWZXJsYWc6IFJvdGJ1Y2h2ZXJsYWcgLCBCZXJsaW4KCkVyc2NoZWludW5nc2RhdHVtOiAxOTc4CklTQk4gMy04ODAyMi0yMDEtMAoKMTkwIFMuCgoKCgpXZXJkZSBpY2ggbWlyIGdsZWljaCBtYWwgYXVzbGVpaGVuLiBCaW4gZG9jaCBnZXNwYW5udCwgd2VyIGRpZSB3YXJlbiBIZXJyZW4KZGVzIE1HcyBzaW5kLgpBbGxlcmRpbmdzIGthbm4gZGFzIEJ1Y2ggYXVjaCBsYW5nd2VpbGlnIHNlaW4sIHdlbm4gZGllIEhlcnJlbiBnZW5hdSB3aWUgaGllcgpudXIgaWRlbG4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClpvbWJpZXdhbHplciAoTGF1cmluLCAgMy4gQXByIDE5OTYsIDAyOjAxOjU2KToKRWJlbiBwYXNzaWVydDoKCiAgRHUgZ3JlaWZzdCBMYXVyaW4gbWl0IGVpbmVyIEZsaWVnZW5rbGF0c2NoZSBhbi4KICBEdSB0cmlmZnN0IExhdXJpbiBoYXJ0LgpMYXVyaW4gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRWluZSBMZWljaGUgYmliYmVydCB2b3IgQW5nc3QuCkdhbmRvIGZpeGllcnQgZWluZSBMZWljaGUgdW5kIG1hY2h0IHNjaHd1bmd2b2xsZSBCZXdlZ3VuZ2VuLgpFaW5lIExlaWNoZSB0YW56dCB3aWUgaW4gVHJhbmNlIGR1cmNoIGRpZSBHZWdlbmQuCgoKQWxzbyBtYW4ga2FubiBzYWdlbiwgd2FzIG1hbiB3aWxsLCBkaWUgWmF1YmVyZXJnaWxkZSBpc3QKZGllIEx1c3RpZ3N0ZSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmEgd2VyIGRlbm4/IDotKSAoTXVwZmVsLCAgMy4gQXByIDE5OTYsIDA0OjA0OjE0KToKQm9iYUZldHQgZGV1dGV0IGlucyBSZWljaCBkZXIgTmV0enRvdGVuIHVuZCBydWZ0OiBEQSBTSU5EIFNJRSwgSElOVEVSSEVSICEhIS4KCk5hIGRhbm4gbWFuIHp1IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llIGhlaXNzdCBub2NobWFsIGRhcyBncnVhZSBUaWVyIG1pdCBkZW0gUlVlc3NlbD8gZ2F6ZWxsZT8gRWlzYmFlcj8gKEhhcmRpbCwgIDMuIEFwciAxOTk2LCAxMzo0NjozMCk6CgomJgpbendpbmd0YW56IGVzY3ViYXJdCkR1IGZpeGllcnN0IEVzY3ViYXIgdW5kIG1hY2hzdCBzY2h3dW5ndm9sbGUgQmV3ZWd1bmdlbi4KPiBFc2N1YmFyIHRhbnp0IHdpZSBpbiBUcmFuY2UgZHVyY2ggZGllIEdlZ2VuZC4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDaGFubmVsaGlzdG9yeSBpc3Qgd2FzIGZlaW5lcyA6KSAoQ2F0d2VhemxlLCAgMy4gQXByIDE5OTYsIDE2OjI1OjIzKToKVGFnY2hlbiA6KQoKQWVoLCBpY2ggaGFiIGRhIHdhcyBnZWZ1bmRlbiwgd2FzIGljaCBFdWNoIG5pY2h0IHZvcmVudGhhbHRlbiBtb2VjaHRlLgpFcyBpc3QgendhciBuaWNodCBnYW56IGluIE9yZG51bmcsIGRhcyBpY2ggYXVzZ2VyZWNobmV0IGRpZSBFcnptYWdpZXItCmNoYW5uZWxoaXN0b3J5IHBvc3RlLCBhYmVyIGljaCBrYW5ucyBtaXIgZWluZmFjaCBuaWNodCB2ZXJrbmVpZmVuIDopCi0tLS0tLS0tLS0tLS0tLS0tLS0tU25pcC0tLS0tLS0tLS0tLS0tLS0tLS0tLQpbRXJ6bWFnaWVyOkhhdGVdIGhtbSwgZGllc2VyIDAtRVAtVmVybHVzc3QgYmVpbSBzdGVyYmVuIGhhZXR0ZSBhYmVyIHJ1aGlnCltFcnptYWdpZXI6SGF0ZV0gYWJnZXN0aW1tdCBzZWluIGtvZW5uZW4gPDEuIEFwciAxOTk2LCAxNTo1Mzo1Mj4KW0Vyem1hZ2llcjpCb2luZ10ga2VpbiBFUCB2ZXJsdXN0IG1laHI/Pz8gPDEuIEFwciAxOTk2LCAxNTo1NDowMj4KW0Vyem1hZ2llcjpQYXJhY2Vsc3VzXSBFbnRzY2hlaWR1bmcgdm9uIENhdCA8MS4gQXByIDE5OTYsIDE1OjU0OjA5PgpbRXJ6bWFnaWVyOlBhcmFjZWxzdXNdIEhldXRlIGRlbiBnYW56ZW4gVGFnIGtlaW5lbiBFUC1WZXJsdXN0IGJlaW0gc3RlcmJlbgpbRXJ6bWFnaWVyOlBhcmFjZWxzdXNdIDwxLiBBcHIgMTk5NiwgMTU6NTQ6MjY+CltFcnptYWdpZXI6SGF0ZV0gSmEgaGV1dGUgPDEuIEFwciAxOTk2LCAxNTo1NDoyNj4KW0Vyem1hZ2llcjpCb2luZ10gZGFzIGhhZXR0ZSBtaWNoIGluIGRlciB0YXQgYWJlciBhdWNoIGludGVyZXNzaWVydCAuLi4gYWNoCltFcnptYWdpZXI6Qm9pbmddIHNvLCBudXIgaGV1dGUsIGRhbm4gaXN0IGVzIGVnYWwgPDEuIEFwciAxOTk2LCAxNTo1NDozOD4KW0Vyem1hZ2llcjpIYXRlXSBJY2ggZGVua2UgZXIgaGFldHRlIHJ1aGlnIHZvcmhlciBmcmFnZW4ga29lbm5lbiA8MS4gQXByCltFcnptYWdpZXI6SGF0ZV0gMTk5NiwgMTU6NTQ6Mzg+CltFcnptYWdpZXI6UGFyYWNlbHN1c10gQW5sYWVzc2xpY2ggZGVzIDQuIEdlYnVydHN0YWdlcyBkZXMgTUcgPDEuIEFwciAxOTk2LApbRXJ6bWFnaWVyOlBhcmFjZWxzdXNdIDE1OjU0OjQwPgpbRXJ6bWFnaWVyOkJvaW5nXSBkZXIgNC4gZ2VidXJ0c3RhZyB3YXIgYWxsZXJkaW5ncyBzY2hvbiB2b3IgbmVyIHdvY2hlIDopIDwxLgpbRXJ6bWFnaWVyOkJvaW5nXSBBcHIgMTk5NiwgMTU6NTQ6NTU+CltFcnptYWdpZXI6KFJvY2h1cyldIGljaCBnbGF1YmUgYWxsZXJkaW5ncywgZGVyIGFubGFzcyB3YXIgbmljaHQgZGVyLCBkZW4gY2F0CltFcnptYWdpZXI6KFJvY2h1cyldIGdlbmFubnQgaGF0IDopIDwxLiBBcHIgMTk5NiwgMTU6NTU6MjI+CltFcnptYWdpZXI6Qm9pbmddIGljaCBuZWhtZSBhbiwgZGFzcyBkaWUgRVAgbmFjaGhlciBkb2NoIGFiZ2V6b2dlbiB3ZXJkZW4gdW5kCltFcnptYWdpZXI6Qm9pbmddIGVyIGRhbm4gJ2FwcmlsLCBhcHJpbCcgcnVmdCA7KSA8MS4gQXByIDE5OTYsIDE1OjU1OjUxPgpbRXJ6bWFnaWVyOkhhdGVdIFdhcyBkYW5uPyA8MS4gQXByIDE5OTYsIDE1OjU1OjUzPgpbRXJ6bWFnaWVyOkhhdGVdIGhtbSA8MS4gQXByIDE5OTYsIDE1OjU2OjAwPgpbRXJ6bWFnaWVyOkhhdGVdIERhcyBpc3QgbmF0dWVybGljaCBtb2VnbGljaCA8MS4gQXByIDE5OTYsIDE1OjU2OjA4PgpbRXJ6bWFnaWVyOkhhdGUgZ3JpbnN0LiA8MS4gQXByIDE5OTYsIDE1OjU2OjEwPl0KLS0tLS0tLS0tLS0tLS0tLS0tLS1TbmlwLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpZb3VycyB0cnVseSwKICAgQ2F0d2VhemxlIChob2ZmbnVuZ3Nsb3MgZ3JpbnNlbmQgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYWxlbmRlcnNwcnVjaCBkZXIgV29jaGUgMTQgKEdyaW1tYm9ybiwgIDMuIEFwciAxOTk2LCAxNzoxOToxOSk6CgoiSWNoIHBmbGVnZSBWZXJzdWNodW5nZW4genUgdmVybWVpZGVuLCBzb2xhbmdlIHNpZSBuaWNodCB1bndpZGVyc3RlaGxpY2gKc2luZCIgKE1hZSBXZXN0KQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoLCBhdWYgYWxsZ2VtZWluLi4uIChDaGVhc3ksICA0LiBBcHIgMTk5NiwgMjE6MDY6MzMpOgpbQWxsZ2VtZWluOkFzbW9kaXNdIGpvLCByYWZmaSwgYnJlY2ggbWFsIGRlbiBvcGZlcnN0b2NrIGF1ZiB1bmQgZGFubgpbQWxsZ2VtZWluOkFzbW9kaXNdIGRhdWVyemFwcCBhdWYgbGFycyA6KQpSYWZmaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCgpST1RGTAotQ2hlYXN5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXMgKEFzbW9kaXMsICA0LiBBcHIgMTk5NiwgMjM6MzY6MzApOgpCZXp1ZzogW0FsbGdlbWVpbjpKYW5pY2VdIHNjaHJlaWJ0IG1hbCBlaW5lciB3YXMgaW4gZGllIHplaXR1bmcgIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthcmF0ZW9ya3MhIChBY3JpbW9uLCAgNS4gQXByIDE5OTYsIDE1OjE5OjE3KToKRGVyIE9yayBtYWNodCBlaW5lbiBZb2tvLXRvYmktZ2VyaS1rZWtvbWkuCmZyYWcgb3JrIG5hY2ggeW9rby10b2JpLWdlcmkta2Vrb21pCkVpbiBLYXJhdGVvcmsgc2FndDogS2VpbmUgQWhudW5nLCB2b24gd2FzIER1IHJlZGVzdC4KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbGVpY2hlbiBzaW5kIHZpZWwgenUgbGViZW5kaWcgKEZleWFyaWEsICA2LiBBcHIgMTk5NiwgMDQ6MDI6MzQpOgo+IHNjaGF1CkR1IHN0ZWhzdCB2b3IgZGVyIEJhciBkZXMgR2FzdGhhdXNlcyB6dW0gZHVyc3RpZ2VuIEthbWVsLiBEZXIgYXJhYmlzY2hlIFdpcnQKYmVhZXVndCBEaWNoIGJlcmVpdHMgbWlzc3RyYXVpc2NoLiBNaXQgJ21lbnVlJyBiZWtvbW1zdCBEdSBlaW5lIEF1c3dhaGwgZGVyCmhpZXIgYW5nZWJvdGVuZW4gU3BlaXNlbiB1bmQgR2V0cmFlbmtlLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogbGlua3MuCkRpZSBzY2hpbW1lbG5kZSB1bmQgaGFsYnZlcndlc3RlIExlaWNoZSBBaG1lZHMuCkRhcyBCaWxkIGVpbmVzIEp1ZW5nbGluZ3MuCkRpZSBUb3AtTGlzdGUsIFRvcC1TcGllbGVybGlzdGUsIFRvcC1TZWhlcmxpc3RlIHVuZCBUb3AtWndlaXRpbGlzdGUuCj4gbmltbSBiaWxkCkFobWVkIGhpbmRlcnQgRGljaCBkYXJhbiwgZGFzIEJpbGQgenUgbmVobWVuLgpEdSBrYW5uc3QgZGFzIEJpbGQgbmljaHQgbmVobWVuLgoKCkVpbmUgTGVpY2hlIHdpbGwgbWljaCBkYXJhbiBoaW5kZXJuID8/PwoKCkZleWFyaWEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRzY2hpbm4gbWl0IEtlbGxuZXJpbiAoRmV5YXJpYSwgIDYuIEFwciAxOTk2LCAwNToyNDo0Myk6Cj4gc2NoYXUKSGllciBtdXNzIGRpZSBVcmlna2VpdCBlcmZ1bmRlbiB3b3JkZW4gc2Vpbi4gRHVua2xlIERlY2tlbmJhbGtlbiB1bmQKV2FuZHZlcmtsZWlkdW5nZW4sIGVpbiBicmVubmVuZGVzIEthbWluZmV1ZXIsIGdldHJlbm50ZSBTaXR6Z3J1cHBlbiB1bmQgbmV0dGUKQmVkaWVudW5nIHByYWVnZW4gZGVuIEVpbmRydWNrLCBkZW4gRHUgdm9uIGRpZXNlbSBHYXN0aGF1cyBiZWtvbW1lbiBoYXN0LiBNaXQKJ21lbnVlJyBrYW5uc3QgRHUgRGlyIGRpZSBLYXJ0ZSBhbnNjaGF1ZW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uCkZleWFyaWEncyBEc2NoaW5uLgpEaWUgS2VsbG5lcmluIGRlcyBEamlubnMuCkRpZSBUb3AtTGlzdGUsIFRvcC1TcGllbGVybGlzdGUsIFRvcC1TZWhlcmxpc3RlIHVuZCBUb3AtWndlaXRpbGlzdGUuCgp1cHMhIC0gbWVpbiBEc2NoaW5uIGhhdCBzZWluZSBlaWdlbmUgS2VsbG5lcmluIDopKQoKRmV5YXJpYSAqZ3JpbnMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgo6KSAoQWxpbmUsICA2LiBBcHIgMTk5NiwgMTI6NDI6MzkpOgoKPiB3ZXIKW3NdIDxFaW5sb2dnZW5kZXIgVGVpbG5laG1lcj4gW1NlaHIgc2NobGVjaHRlciBQcm92aWRlcl0KCgpBbGluZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb21iYXRpcyAoSmltZGlncml6LCAgNy4gQXByIDE5OTYsIDE5OjUyOjE0KToKCkRlciBmZXR0ZSBEYWVtb24gc2FndDogSWNoIGhhYmUgSHVuZ2VyISBEdSB3aXJzdCBnbGVpY2ggdmVyc3BlaXN0Li4KOmJydWVsbHQ6IEFSUlJSUlJSR0dHTExMTEwhCkppbURpR3JpeiBicnVlbGx0OiBBUlJSUlJSUkdHR0xMTExMIQo+IE9tYmF0aXMgYnJ1ZWxsdDogQVJSUlJSUlJHR0dMTExMTCEKCmhlaGUgZGVyIGFyZ2x0IG1pdCBtaXIgaW0gZHVldHQgOikpCgpKYW1lcyBCb2xpdmFyIGRpR3JpeiwgZGVyIGlycmUgS2FydGFra2V0a2FyZ2xhZGVibHViYmVyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbGFuZGVyc2NyZWUgKEFjcmltb24sICA4LiBBcHIgMTk5NiwgMTI6MDY6MjkpOgpEZXIgQW5sZWdlciB2b24gQ2hhZWNobWEgQnJpaW0ndGFyICwgZGVyIEluc2VsIGltIGV3aWdlbiBFaXMuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBub3JkZW4uCkRpZSBTbGFuZGVyc2NyZWUuCj4gYnMKRWluZSBsYXV0ZSBTdGltbWUgYnJ1ZWxsdCBwbG9ldHpsaWNoIGVpbmlnZSBLb21tYW5kb3MgdW5kIG5hY2ggZXR3YXMgSGVrdGlrCmxlZ3QgZGllIFNsYW5kZXJzY3JlZSBhYi4KRHUga2xldHRlcnN0IGFuIGRlciBTdHJpY2tsZWl0ZXIgZW1wb3IgYW4gRGVjay4KV2FzIHdpbGxzdCBEdSBiZXRyZXRlbj8KQmluIGljaCBudW4gYW4gRGVjayBvZGVyIG5pY2h0PyA6LSkKVm9yIERpciBlcmhlYnQgc2ljaCBkZXIgQmVyZyBDaGFlY2htYSBCcmlpbSd0YXIgenUgc2VpbmVyIHVuZ2xhdWJsaWNoZW4KSG9laGUgdm9uIDUwNDIgTWV0ZXJuLiBFciBoYXQgZGllIGZ1ZXIgVnVsa2FuZSB1ZWJsaWNoZSBrZWdlbGZvZXJtaWdlCkdlc3RhbHQsIG51ciBhbiBkZXIgU2VpdGUsIHdvIER1IGpldHp0IGJpc3QsIGlzdCBlaW5lIGdyb3NzZSBCcmVzY2hlLApkaWUgd29obCB2b24gZWluZW0gZnJ1ZWhlcmVtIEF1c2JydWNoIHN0YW1tdC4KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWnUgc3BhZXQuLi4gKE9ldHRpLCAgOC4gQXByIDE5OTYsIDIyOjQxOjU2KToKTmV1bGljaCBpbSBNRy4uLgoKW0FsbGdlbWVpbjpLYW50b3JdIFdlciBwbGFldHRldCBncmFkZSBTYW11cmFpcyA/CltBbGxnZW1laW46T2V0dGldIEljaCBoYWIgZ2VyYWRlIG5lbiBTYW11cmFpYnVyZ2VyIHZlcm5pY2h0ZXQKS2FudG9yIHRlaWx0IERpciBtaXQ6IGJyYXVjaHN0ZSBkZW5lbiBpaHIgemV1Z3MgbmljaHQgPwoKTmEgamEgYnJhdWNoZW4sIG1hbmNobWFsIG1hZyBpYyBoZXMgZ2FueiBnZXJuZS0+U3RlaW5pZ3QgbWljaCBpY2ggYmVrZW5uIGljCmVzc2UgYmVpIE1jLUQuLi4KCk9ldHRpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpidWc/IChIYXJkaWwsICA5LiBBcHIgMTk5NiwgMTQ6MDM6NTgpOgpbVG9kOl0gTGhhbmEgZGkgTGVvbmRybyBoYXQgZ2VyYWRlIFNpbHZhbmEgdW1nZWJyYWNodC4KW1RvZDpMaGFuYSBkaSBMZW9uZHJvXSBBdXJpYW4gd2lyZCBpbiBLdWVyemVhdSBiZWdyYWJlbi4gV2lyIGJpdHRlbiB1bQpbVG9kOkxoYW5hIGRpIExlb25kcm9dIEJsdW1lbnNwZW5kZW4uCgpbQWxsZ2VtZWluOkp1c3VmZl0gU2lsdmFuYSB1bWdlYnJhY2h0IC0+IEF1cmlhbiB3aXJkIGluIEt1ZXJ6ZSBiZWdyYWJlbgpbQWxsZ2VtZWluOkp1c3VmZl0gKnd1bmRlcioKCi1IYXJkaWwuIElzdCBudXIgQ2hyb25pc3QsIHd1bmRlcnQgc2ljaCBhdWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAoQ29mZmlucywgIDkuIEFwciAxOTk2LCAxNTo0Njo1MSk6ClRoZSB3b21hbiB3aG8gcnVucyB3aWxsIG5ldmVyIGxhY2sgZm9sbG93ZXJzLgpBc2hsZXkgRHVrZXMKKGVpbmVyIEZyYXUsIGRpZSBkYXZvbmxhZXVmdCwgd2lyZCBlcyBuaWUgYW4gVmVyZm9sZ2VybiBmZWhsZW4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMTAuIEFwciAxOTk2LCAxMjoyMjo1NSk6Cn4jISBybj1Db2ZmaW5zIHJ0PTgyOTA1NzYxMQp+IyEgdGlkPTgyOTA1NzYxMQoKTWVpbiBsaWViZXIgQ29mZmlucywgaGllciBnaWJ0cyBudXIgRUlORU4sIGRlciAiU3BydWVjaGUgZGVyIFdvY2hlIgp2ZXJvZWZmZW50bGljaHQsIHVuZCBkYXMgYmluIGljaCEgRGllIHNpbmQgYWxsZSBvcmlnaW5hbCBhdXMgbWVpbmVtIEthbGVuZGVyLApmcmVpIHVlYmVyc2V0enQgaW5zIERldXRzY2hlIHZvbiBtaXIuLi4KQWxzbyBoaWVyIGRlciBha3R1ZWxsZSBTcHJ1Y2g6CgoiRXMgZ2lsdCBNdXQgenUgaGFiZW4gZGVyIHp1IHNlaW4sIGRlciBtYW4gaXN0LiBVbmQgbmljaHQgZGVuIE11dCB6dQp2ZXJsaWVyZW4gd2VpbCBtYW4gZGVyIGlzdCwgZGVyIG1hbiBpc3QuIiAoVGhvcnZhbGQgR2FobGluKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNwcnVjaCBkZXIgV29jaGUgKFF1YXNpbW9kbywgMTAuIEFwciAxOTk2LCAxMjozMToxNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODI5MTMxNzc1Cn4jISB0aWQ9ODI5MDU3NjExCgpFcyBzb2xsZW4gZWluIHBhYXIgS3JvYXRlbiB2b3JnZXNjaGxhZ2VuIGhhYmVuLCBkYXNzIG1hbiBkaWUgYnJpdGlzY2hlbiBLdWVoZQphdWNoIGFscyBsZWJlbmRlIE1pbmVucmFldW1lciBpbiBpaHJlbSBMYW5kIHZlcndlbmRlbiBrb2VubnRlLiBPYiBkYSB3b2hsIHdhcwpkcmFuIGlzdD8KClF1YXNpbW9kbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcmVib290IChSaW11cywgMTAuIEFwciAxOTk2LCAxODoxOToyMSk6CkdhbWUgZHJpdmVyIHNob3V0czogTFBtdWQgc2h1dHRpbmcgZG93biBpbW1lZGlhdGVseS4KQmllbmNoZW4gaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KUHJlZGF0b3IgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KUm9hZHJ1bm5lciBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpXYXJyaW9yIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uClZpbmNlbmNvIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkFzbW9kaXMgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KQ3lnbnVzIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCk90dG9rYXIgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KQmVydHJhbSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpUcmF1bWF0aWMgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KRnJhdHogaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KUGh5Z29zIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCklhbiBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpad2lyY2ggaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KSmVob3ZhIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkZyb2RvIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCk5pbWJ1cyBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpTb2ZpZSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpTbGVkZ2UgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KRmV1ZXJ3ZWhyIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkVzY3ViYXIgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KRGFya21hbiBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpBc21vZGluYSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpCZXZlcyBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpKYXJpZWwgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KS2Fma2EgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KQ2h1cmtpZSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpEdXJpbiBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpUaXJpdGggaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KVmFuZGFtbWUgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KSm9mIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkluc2tpcHAgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KQXVyaWFuIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uClRvbmdhIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uClRvcmZkdWVuZyBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpVbHVsYSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpJc3NvbWFkIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkFuZHJlcyBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpEb2xwaCBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpEb2xwaCB2ZXJsYWVzc3QgZGllc2UgV2VsdC4KTm9rIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uClN5bWJpb250IGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCk1pY3JvIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uClRpZ2dlciBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpBY3JpbW9uIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkJvcnJpYyBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpMYXVyaW4gaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KWm9ycm8gaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KS2FybCBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpEb3JvIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkFsaW5lIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uClJpbmdvciBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpEaG9qYWt0IGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCllvZ2liYWVyIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCllvZ2liYWVyIHZlcmxhZXNzdCBkaWVzZSBXZWx0LgpGb3ggaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KVG9lIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uClNpbHZhbmEgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KRWx5YXMgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KS2FoYXRvIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkJsYWNrbW9vciBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpLcmV0ZWsgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KU2Fpa2FuIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkxlbm5vbiBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpCcmFhayBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpDYXR3ZWF6bGUgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KVXJ6YSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpMYWlsYSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpLYWVuZ3VydWggaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KUnh0ZWNoIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkJsdWVtZWwgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KU3BlaWNoZXJlIFJpbXVzLgpEdSB6aWVoc3QgZGVuIHZpb2xldHRlbiBHdWVydGVsIGF1cy4KRHUgemllaHN0IGRlbiBHaSBhdXMuCkJpcyBiYWxkIQpEdSB6aWVoc3QgZGVuIFpvbWJpZXJpbmcgYXVzLgpEdSB6aWVoc3QgZGFzIHNpbGJlcm5lcyBLcmV1eiBhdXMuCkR1IHppZWhzdCBkaWUgU2NobGFuZ2VuaGF1dCBhdXMuCkNsb3NpbmcgZG93bi4KCgpkYW5hY2ggd2FyIGtlaW4gTGFnIG1laHIgIQoKUmltdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmltbWVyIGRpZXNlIGxlaWNoZW4gLi4uIDooIChUeWJhbGwsIDExLiBBcHIgMTk5NiwgMDc6Mzk6NDkpOgpMYWJ5cmludGguCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3RlbiB1bmQgb2Jlbi4KRGllIExlaWNoZSBlaW5lcyBFaXNyaWVzZW4uCkVpbiBFaXNzY2h3ZXJ0LgpFaW4gRWlzc2Nod2VydC4KRWluIEVpc3NjaHdlcnQuCj4gb2IKRGVyIEVpc3JpZXNlIHZlcnNwZXJydCBEaXIgZGVuIFdlZy4KCnNvZ2FyIHdlbm4gZXIgdG9kIGlzdCwgbGFlc3N0IGVyIGVpbmVuIG5pY2ggdm9yYmVpIC4uLiB6YWVoZXIgYnVyc2NoZSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluIFN0ZWluIGlzdCBlaW4gU3RlaW4gaXN0IGVpbiBTdGVpbi4uLm9kZXIgZG9jaCBuaWNodD8/IChQcmVkYXRvciwgMTEuIEFwciAxOTk2LCAwOTo0NDo1MSk6CndpcmYgc2NoZWliZSBlaW4KRHUgc29sbHRlc3QgRGlyIGVyc3RtYWwgZWluIHBhYXIgU3RlaW5lIGJlc29yZ2VuIQo+IE1heGkgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KaQpFaW4gcGFhciBrbGVpbmUgU3RlaW5lLgpFaW5lIGtsZWluZSBTZWVrYXJ0ZS4KRWluIEhha2VuLgpFaW5lIEFuZ2VsLgoKUHJlZGF0b3IgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlaGVyZnJhZ2VuLCBkaWUgeHRlLiAoTXVwZmVsLCAxMi4gQXByIDE5OTYsIDAxOjU2OjAzKToKW1NlaGVyOkFtcGVsbWFubl0gd2llIGtvbW10IG1hbiBkdXJjaCBkaWUgd2FuZCBiZWkgendhY2tlbG1hbm4gPz8KCi1tdXBmZWwtIChpbiBWZXJ0cmV0dW5nIHZvbiBBbmF0b2wpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNdWRkZW4gaXN0IFNlbGJzdGJldHJ1ZyAoVG9ldGVyLCAxMi4gQXByIDE5OTYsIDE5OjA1OjM5KToKW1ZlcmxlZ3Qgdm9uIHBvbGl6ZWkuYmVzY2h3ZXJkZW4sIFRvZXRlciwgMTIuIEFwciAxOTk2LCAxOTowMjoyNV06Ck5hbnUsIHdvIGlzcyBkZW5uIGRpZSBHQy1SdWJyaWsgaGluPwpGaW5kZSBpY2ggZWNodCB0b3RhbCAxMywgZGFzcyBoaWVyIGlyZ2VuZHdlbGNoZSB1ZWJlbHdvbGxlbmRlbiBNYWdpZXIKbmljaHQgbnVyIHRvbmxvcyBBcnRpa2VsIGxvZXNjaGVuLCBzb25kZXJuIGRhcyBnYW56ZSBhdWNoIGF1ZiBnYW56ZSBSdWJyaWtlbgphdXNkZWhuZW4uIE5hamEsIHZpZWxsZWljaHQgd2FycyBqYSBhdWNoIGRlciBteXRoZW51bWZsb3NzZW5lIFNpbXVsIEVmdW4sCmRlciBkYSBpbiBWZXJzIDE4MDAgc2FndDoKCndyaXRlKCJDYWxsIEdDIG5vdyBhbmQgdGhlIG11ZCB3aWxsIGNyYXNoIGluIDUtNiBob3Vycy4gRE9OVCBETyBJVCFcbiIpOwoKSW4gdGllZmVyIFRyYXVlciwgVG9ldGVyCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGVyIG9ya3ByaWVzdGVyIC4uLiAoSmltZGlncml6LCAxMy4gQXByIDE5OTYsIDAyOjU4OjEzKToKR3JhZCBpbiBPcmtoYXVzZW4gYmVpbSBvcmtwcmllc3RlcjoKCkluIGRlciBPcmtraXJjaGUuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uCkVpbiBPcmtwcmllc3Rlci4KPiBEZXIgUHJpZXN0ZXIgc2FndDogSGFsbG8sIEppbURpR3Jpei4KRGVyIFByaWVzdGVyIHNhZ3Q6IEhhbGxvLCBKZW1hbmQuCkVpbmUgQmFuayBrbmFycnQuCkVyc2Nocm9ja2VuIHNwcmluZ3N0IER1IHp1ciBTZWl0ZS4KLi4uCipraWNoZXIqCkphbWVzIEJvbGl2YXIgZGlHcml6LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2V1ZnouLi4gOikgKEppbWRpZ3JpeiwgMTMuIEFwciAxOTk2LCAwMzowNToxNCk6Cj4gdW50IGJvZGVuCkF1ZiBkZW0gQm9kZW4gbGllZ2VuIGRpZSBSZXN0ZSBkZXIgRGVja2UgaGVydW0uCj4gdW50IGRlY2tlCkRpZSBEZWNrZSBpc3QgYWx0IHVuZCB2ZXJtb2RlcnQuIEhvZmZlbnRsaWNoIGZhZWxsdCBzaWUgRGlyIG5pY2h0IGF1ZiBkZW4KS29wZi4KPiB1bnQgZGVja2UgYW0gYm9kZW4KW01vZXJkZXI6R2Vpc3QgZWluZXMgT3Jrc10gSGlsZmUhIERpZWJlISBNb2VyZGVyISBIYWxzYWJzY2huZWlkZXIhIFN5bWJpb250IQpIaWVyIGlzdCBrZWluIEJvZGVuCi4uCndhcyBzb2xsIG1hbiBkYSBtYWNoZW4gOikKSmRHLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbWFnaWVyICEgKEppbWRpZ3JpeiwgMTMuIEFwciAxOTk2LCAwMzoxNDo1Myk6CkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uCkVpbiBPcmtwcmllc3Rlci4KPiBEZXIgUHJpZXN0ZXIgc2FndDogSGFsbG8sIEppbURpR3Jpei4KZm4gcHJpZXN0ZXIgc3RvY2sKRGVyIE9ya3ByaWVzdGVyIHNhZ3Q6IE5laW4sIGRhenUgc2FnZSBpY2ggbmljaHRzLgo+IC0gaG1tIGRpZSBqZW1hbmRzIHNpbmQgd2VnIC4uLgpbQWxsZ2VtZWluOkppbURpR3Jpel0gaG1tIGRpZSBqZW1hbmRzIHNpbmQgd2VnIC4uLgouLi4KPiB3Cj4gT3JraGF1c2VuZXIgTWFya3RwbGF0ei4KRXMgZ2lidCBzZWNocyBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuLCB3ZXN0ZW4sIHN1ZWR3ZXN0ZW4sCm5vcmR3ZXN0ZW4gdW5kIG5vcmRlbi4KPiBzCj4gT3JraGF1c2VuZXIgTWFya3RwbGF0ei4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCB3ZXN0ZW4sIG5vcmR3ZXN0ZW4gdW5kIG5vcmRlbi4KRWluIE9yay1LYXJhdGVrYS4KPiBvCj4gRWluIGtsZWluZXIgQmFlY2tlcmxhZGVuLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogd2VzdGVuLgoKPiBEZXIgUHJpZXN0ZXIgc2FndDogSWNoIGdydWVzc2UgSmVtYW5kIG5pY2h0LgouLgp6dSBzcGFldCA6KSB6dSBkdW1tIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgonZGVyIEdyaW1tYm9ybicgKE11cGZlbCwgMTQuIEFwciAxOTk2LCAyMTo1NDo1NSk6CkR1IGRlbmtzdCAgIC4gbyBPIChtYWNoIG1pciBkZW4gZ3JpbW1ib3JuKQokIFBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBQYXJhY2Vsc3VzLgoKaG1tbW1tbS4uLi4Kb2IgZGFzIGF1Y2ggYmVpIGFuZGVyZW4gRXJ6ZW4uLi4uPyA6LSkKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGluIGVpbmVtIEdsdWVja3NrZWtzOiAoWWVuZGksIDE1LiBBcHIgMTk5NiwgMTM6MTc6MzcpOgoKQ29uc2NpZW5jZSBpcyB3aGF0IGh1cnRzIHdoZW4gZXZlcnl0aGluZyBlbHNlIGZlZWxzIHNvIGdvb2QuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIGxhbmdlcndhcnRldGUgU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAxNy4gQXByIDE5OTYsIDEwOjM2OjU1KToKCiJEaWVzZWxiZSBTb25uZSBicmluZ3QgZGFzIFdhY2hzIHp1bSBzY2htZWx6ZW4gdW5kIGRlbiBMZWhtIHp1bSBoYWVydGVuIgoodW5iZWthbm50KQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBY2ggZHUgbGllYmUgU1NQIChSYWZmaSwgMTguIEFwciAxOTk2LCAxNjo0OTo0Nyk6CgogIERlciBTY2huZWViYWxsIGdyZWlmdCBEaWNoIG1pdHRlbiBpbSBHZXNpY2h0IGFuLgogIERlciBTY2huZWViYWxsIHRyaWZmdCBEaWNoLgpEdSBoYXN0IGpldHp0IDU4IExlYmVuc3B1bmt0ZSB1bmQgNTAgTWFnaWVwdW5rdGUuCiAgRHUgZ3JlaWZzdCBkZW4gU2NobmVlYmFsbCBtaXQgZGVtIEJsdXRzYXVnZXItU2Nod2VydCBhbi4KICBEdSBraXR6ZWxzdCBkZW4gU2NobmVlYmFsbCBhbSBCYXVjaC4KCkljaCB3b2xsdGUgamEgc2Nob24gaW1tZXIgbWFsIG5lbiBTY2huZWViYWxsIGFtIGJhdWNoIGtpdHplbG4gOk8pCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFjaCBkdSBsaWViZSBTU1AgKFplcGh5ciwgMTguIEFwciAxOTk2LCAxNjo1ODozOCk6Cn4jISBybj1SYWZmaSBydD04Mjk4Mzg5ODcKfiMhIHRpZD04Mjk4Mzg5ODcKW1RvZDpdIEVpbiBTY2huZWViYWxsIGhhdCBnZXJhZGUgUmFmZmkgdW1nZWJyYWNodC4KCmFuc2NoZWluZW5kIGthbm4gZGVyIGJlc3NlciBraXR6ZWxuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbWFuZGEuLi4gOykgKFB1Y2ssIDE4LiBBcHIgMTk5NiwgMjA6MTg6MDIpOgoKCkFtYW5kYSBrb21tdCBpbiBlaW5lciBXb2xrZSB2b24gUGFyZnVlbSBhbi4KQW1hbmRhIHNhZ3Q6IEhhbGxvIFRvZXRlciEKQW1hbmRhIGdyYWJiZWx0IGFuIFRvZXRlciBoZXJ1bS4KQW1hbmRhIHNhZ3Q6IFdpZSB3YWVycyBkZW5uIG1pdCB1bnMsIEtsZWluZXI/CkFtYW5kYSBzYWd0OiBIYWxsbyBMdWchCkFtYW5kYSBncmFiYmVsdCBhbiBMdWcgaGVydW0uCkFtYW5kYSBzYWd0OiBXaWUgd2FlcnMgZGVubiBtaXQgdW5zLCBLbGVpbmVyPwpBbWFuZGEgc2FndDogSGFsbG8gTWFyY3VzIQpBbWFuZGEgc2FndDogSGFsbG8gRWlzZW5iZWlzcyEKQW1hbmRhIHNhZ3Q6IEhhbGxvIERpZWRlciEKQW1hbmRhIGdyYWJiZWx0IGFuIERpZWRlciBoZXJ1bS4KQW1hbmRhIHNhZ3Q6IFdpZSB3YWVycyBkZW5uIG1pdCB1bnMsIEtsZWluZXI/CkFtYW5kYSBzYWd0OiBIYWxsbyBQdWNrIQoKCiojQF4qJSEhJCogVW5kIGFsbGUgYXVmIGVpbm1hbCwgb2RlciB3aWU/CgpQdWNrCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NobWFycm4gaGFsdCAoUHJlZGF0b3IsIDE4LiBBcHIgMTk5NiwgMjI6MzE6MjUpOgpEaWUgRHJhY2hlbnNjaGlsZGtyb2V0ZSBncmVpZnQgRGljaCBtaXQgaGVpc3NlbSBEYW1wZiBhbi4KRGVpbiBQYW56ZXIgemVyc3ByaW5ndCBpbiB0YXVzZW5kIFN0dWVja2UgdW5kIHZlcmxldHp0IERpY2ggZGFiZWkuCkR1IGhhc3QgamV0enQgMTA3IExlYmVuc3B1bmt0ZSB1bmQgMjEwIE1hZ2llcHVua3RlLgpEZWluIFJpbmcgemllaHQgZGllIEZsYW1tZW4gYXVmIHNpY2ggdW5kIGJld2FocnQgRGljaCBzbyB2b3IgU2NoYWRlbi4KCgphbHNvIG1laW4gcmluZyB6aWVodCBkaWUgZmxhbW1lbiBhdWYgc2ljaCwgdHJvdHpkZW0gemVyc3ByaW5ndCBtZWluIHBhbnplcgoKdHN0c3RzClByZWRhdG9yLCBrZW5udCBzaWNoIGluIGRlciBQYXJhbGxlbHdlbHQgbmljaHQgYXVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW1hbmRhLi4uIDspIChXdXJ6ZWwsIDE4LiBBcHIgMTk5NiwgMjI6NDM6NDUpOgp+IyEgcm49UHVjayBydD04Mjk4NTE0ODIKfiMhIHRpZD04Mjk4NTE0ODIKZGFzIGlzdCBpaHIgYmVydWYgOikKCnd1cnplbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW5rdWVuZGlndW5nLi4uIChZYW50cm8sIDE5LiBBcHIgMTk5NiwgMTA6MTE6MTEpOgoKSGFsbG8gU3BpZWxlciwKCmljaCB3b2xsdCBudXIgZGFyYXVmIGhpbndlaXNlbiwgZGFzcyBpY2ggaW4gbWVpbmVtIG5ldWVuIEdlYmlldCBqZXR6dCBhdWNoIDIKbHVzdGlnZSBEZXRhaWxzIHVuZCBlaW4gSW5mbyB6dW0gbGFjaGVuIGVpbmdlYmF1dCBoYWJlLi4uIGljaCBzYWdzIG51ciwgd2VpbAppaHIgZXMgc29uc3QgamEgc2ljaGVyIG5pY2h0IGZpbmRldCB1bmQgbWlyIGRhbm4ga2VpbmUgTG9iZXNicmllZmNoZW4gc2NoaWNrZW4Ka29lbm50ICp6d2lua2VyKgoKSWNoIGZpbmQgZGFzIGphIGFsbGVzIHNvIHRvbGwgaGllci4uLiBlY2h0LCBEdS4KCiAgICAgICAgICAgICBZYW50cm8sIGRlbm4gZWluIGtsZWluZXIgTW9yZ290aCBzdGVja3QgaW4gdW5zIGFsbGVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW5rdWVuZGlndW5nLi4uIChKYXNwZXIsIDE5LiBBcHIgMTk5NiwgMTM6NDA6MDMpOgp+IyEgcm49WWFudHJvIHJ0PTgyOTkwMTQ3MQp+IyEgdGlkPTgyOTkwMTQ3MQpBdWNoIGhpLAplcndhZWhudGUgaWNoIHNjaG9uIGRhcyBTY2guLi4uQVJHSGZlbGQgaW0gT3JraGF1c2VuZXIKU3VwZXJeSF5IXkheSF5ISGFuZGVsc2tvbnRvciA/Pz8/CkR1IG11c3N0IHNjaG9uIGV0d2FzIHByYWV6aXNlciB3ZXJkZW4gWWFudHJvLCB3byBpc3QgZGFzIERldGFpbCB6dW0gTGFjaGVuCj8/PwoKCkphc3BlciwgbGVpZGV0IG5vY2ggaW1tZXIgYW4gZWluZW0gRG9tLUtvZWxzY2ggKnd1ZXJnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRm9yZSAoR2FzdDEsIDE5LiBBcHIgMTk5NiwgMTU6MjY6MTQpOgpBdXM6IEluZm9ybWF0aW9uZW4gVW13ZWx0IGRlcyBHU0YtRm9yc2NodW5nc3plbnRydW06IEdlZmFociBkdXJjaApSaW5kZXJ3YWhuc2lubj8KCi4uLgoKRWluIHdlaXRlcmVyIFNjcmFwaWUtYWVobmxpY2hlciBLcmFua2hlaXRzdHlwIGJlaW0gTWVuc2NoZW4gamVkb2NoIGhhZW5ndAplaW5kZXV0aWcgbWl0IGRlciBOYWhydW5nIHp1c2FtbWVuOgpCZWltIEVpbmdlYm9yZW5lbi1TdGFtbSBkZXIgX0ZPUkVfIGF1ZiBOZXVndWluZWEgaW5maXppZXJ0ZW4gc2ljaCBkaWUKTWVuc2NoZW4gbWl0IGRlciBLcmFua2hlaXQsIGRpZSBpbiBlaW5lbSBtYWthYmVyIGFubXV0ZW5kZW4gQmVlcmRpZ3VuZ3NyaXR1YWwKZGllIEdlaGlybmUgaWhyZXIgVmVyc3RvcmJlbmVuIGFscyBNYWhsemVpdCB6dWJlcmVpdGV0ZW4uIE9mZmVuc2ljaHRsaWNoIGRyYW5nCmRlciBFcnJlZ2VyIHVlYmVyIGRlbiBNdW5kLCBhYmVyIGF1Y2ggZHVyY2ggd2luemlnZSBXdW5kZW4gaW4gZGVyIEhhdXQgaW4gZGVuCktvZXJwZXIgZWluLiBBbHMgZGVyIFN0YW1tIGRpZXNlbiByaXR1ZWxsZW4gS2FubmliYWxpc211cyBiZWVuZGV0ZSwgbmFobSBhdWNoCm1pdCBldGxpY2hlbiBKYWhyZW4gVmVyem9lZ2VydW5nIGRpZSBSYXRlIGFiLCBtaXQgZGVyIGRpZXNlIEt1cnUgZ2VuYW5udGUKS3JhbmtoZWl0IGJlaSBkZW4gX0ZPUkVfIGF1ZnRyYXQuCgpUamEsIHNjaGFkIGVpZ2VudGxpY2gsIG51biBtdXNzIG1hbiBzaWUgd2llZGVyIG1ldHplbG4sIGRhbWl0IHNpZSBQbGF0egptYWNoZW4uIEF1c3NlcmRlbSBzdGVsbHQgc2ljaCBkaWUgRnJhZ2UsIG9iIGRpZSBGb3JlLVpvbWJpZXMgbmljaHQgZG9jaCBudXIKdW50ZXIgQ0pEIGxlaWRlbmRlbiBJbmRpdmlkdWVuIHNpbmQgOykKCkdhc3QjLCBzY2hyZWlidCBTY2htYXJybgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZvcmUgKEdyaW1tYm9ybiwgMTkuIEFwciAxOTk2LCAxNTozNjoyMik6Cn4jISBybj1HYXN0MSBydD04Mjk5MjAzNzQKfiMhIHRpZD04Mjk5MjAzNzQKClNpbmQgc2llLiBBYmVyIGRhcyBpc3QgdXJhbHRlciwga2FsdGVyIEthZmZlZS4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFua3VlbmRpZ3VuZy4uLiAoTXVwZmVsLCAxOS4gQXByIDE5OTYsIDE4OjIzOjU1KToKfiMhIHJuPVlhbnRybyBydD04Mjk5MDE0NzEKfiMhIHRpZD04Mjk5MDE0NzEKPiBZYW50cm8sIGRlbm4gZWluIGtsZWluZXIgTW9yZ290aCBzdGVja3QgaW4gdW5zIGFsbGVuIDspCgpNb21lbnQuLi4gc2FndGVzdCBEdSBuaWNodCAnenVzYWV0emxpY2hlIERldGFpbHMnPwoKOi0pCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPIE8gTyBPIE8gTyBPIE8gTyBPIE8gLi4uLiAoQW5hdG9sLCAxOS4gQXByIDE5OTYsIDE5OjUwOjAzKToKCltBbGxnZW1laW46Q2FyYWRocmFzXSBvaywgQmlibyBpc3Qgc2NodWxkIDopCkNhcmFkaHJhcyBydWZ0OiBEcmVpIFJpbmdlIGRlbiBFbGJlbmtvZW5pZ2VuIGhvY2ggaW0gTGljaHQsCkNhcmFkaHJhcyBydWZ0OiBzaWViZW4gZGVuIFp3ZXJnZW5oZXJyc2NoZXJuIGluIGlocmVuIEhhbGxlbiBhdXMgU3RlaW4sCkNhcmFkaHJhcyBydWZ0OiBkZW4gU3RlcmJsaWNoZW4sIGV3aWcgZGVtIFRvZGUgdmVyZmFsbGVuLCBuZXVuLApDYXJhZGhyYXMgcnVmdDogZWluZXIgZGVtIGR1bmtsZW4gSGVycm4gYXVmIGR1bmtsZW0gVGhyb24sCkNhcmFkaHJhcyBydWZ0OiBpbSBMYW5kZSBNb3Jkb3IsIHdvIGRpZSBTY2hhdHRlbiBkcm9obi4KQ2FyYWRocmFzIHJ1ZnQ6IEVpbiBSaW5nLCBzaWUgenUga25lY2h0ZW4sIHNpZSBhbGxlIHp1IGZpbmRlbiwKQ2FyYWRocmFzIHJ1ZnQ6IGlucyBEdW5rZWwgenUgdHJlaWJlbiB1bmQgZXdpZyB6dSBiaW5kZW4sCkNhcmFkaHJhcyBydWZ0OiBpbSBMYW5kZSBNb3Jkb3IsIHdvIGRpZSBTY2hhdHRlbiBkcm9obi4KCgpOYSwgd2llIG9mdCBoYXN0ZSBnZXRhbmt0IDopID8KQW5hdG9sCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPIE8gTyBPIE8gTyBPIE8gTyBPIE8gLi4uLiAoQ2FyYWRocmFzLCAxOS4gQXByIDE5OTYsIDIwOjMwOjU3KToKfiMhIHJuPUFuYXRvbCBydD04Mjk5MzYyMDMKfiMhIHRpZD04Mjk5MzYyMDMKNSBNYWwuICo6XikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJvZHlidWlsZGluZz8gKEFzbW9kaXMsIDE5LiBBcHIgMTk5NiwgMjM6MzI6NTMpOgpEZXIgRWxmZW53YWVjaHRlciBpc3QgaG9jaGdld2FjaHNlbiB1bmQgc2VociBrcmFlZnRpZyBnZWJhdXQuIEVyIGhhdCBkZW4KQXVmdHJhZyBkZW4gRHVyY2hnYW5nIGR1cmNoIGRpZSBQYWxpc2FkZW4genUgYmV3YWNoZW4uIEF1Z2Vuc2NoZWlubGljaApuaW1tdCBlciBzZWluZW4gSm9iIG5pY2h0IHNlaHIgZXJuc3QuIEVyIHJpZWNodCwgYWxzIGhhZXR0ZSBlciBBbGtvaG9sCmdldHJ1bmtlbi4KRXIgaXN0IGFic29sdXQgZml0LgpFciB0cmFlZ3QgYmVpIHNpY2g6CkVpbiBncm9zc2VyIFNjaGlsZC4KRWluIGVsZmlzY2hlcyBMYW5nc2Nod2VydC4KRWluIEVsZmVucGFuemVyLgpFaW4gRWxmZW5wYW56ZXIuCkVpbiBncm9zc2VyIFNjaGlsZC4KRWluIGVsZmlzY2hlcyBMYW5nc2Nod2VydC4KRWluIGVsZmlzY2hlcyBMYW5nc2Nod2VydC4KRWluIGdyb3NzZXIgU2NoaWxkLgpFaW4gRWxmZW5wYW56ZXIuCkVpbiBFbGZlbnBhbnplci4KRWluIGdyb3NzZXIgU2NoaWxkLgpFaW4gZWxmaXNjaGVzIExhbmdzY2h3ZXJ0LgpFaW4ga3VyemVyIFNwZWVyLgpFaW5lIE5hY2h0cnVlc3R1bmcuCkVpbiBIb2x6c2NoaWxkLgpFaW4gZWxmaXNjaGVzIExhbmdzY2h3ZXJ0LgpFaW4gRWxmZW5wYW56ZXIuCkVpbiBFbGZlbnBhbnplci4KRWluIEhhcmZlLgpFaW4gZ3Jvc3NlciBTY2hpbGQuCkVpbiBlbGZpc2NoZXMgTGFuZ3NjaHdlcnQuCkVpbiBIYXJmZS4KRWluIEJhdWhlbG0gKGFuZ2V6b2dlbikuCjMwMyBNdWVuemVuLgpFaW4gZ3Jvc3NlciBTY2hpbGQgKGFuZ2V6b2dlbikuCkVpbiBFbGZlbnBhbnplciAoYW5nZXpvZ2VuKS4KRWluIGVsZmlzY2hlcyBMYW5nc2Nod2VydCAoZ2V6dWVja3QpLgoKRGllIEVsZmVud2FlY2h0ZXIgc2NoaWVuZW4gaW4gZGVuIGxldHp0ZW4gV29jaGVuIGhhcnQgdHJhaW5pZXJ0IHp1IGhhYmVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW4/IChNdXBmZWwsIDIwLiBBcHIgMTk5NiwgMDA6NDY6MDYpOgpbTWFnaWVyOihNZXBoaXN0byldIHdvZnVlciBzdGVodCBlaW4gVyB2b3JtIG5hbWVuPwpbTWFnaWVyOk9ldHRpXSBXb2xwaQoKLW11cGZlbC0gKGxhY2h0IHNpY2ggc2NoaWVmKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKPyAoQW5ha2luLCAyMC4gQXByIDE5OTYsIDEwOjA3OjE4KToKPmluZm8KRGllIERpZmZlcmVuejogIDU0MTIgRVBzIGluIDAgTWludXRlbi4gU2Nobml0dCAoMTVtaW4pIDMwNDQyNQpEZXIgU2Nobml0dCBiZXRyYWVndDogMTMwMDE1NjI0IEVwcyBpbiA1OCBNaW51dGVuLCBkLmguIEVwcy9oIDEzMjkzMDAwMApEdSBoYXN0IDEzMDAxNTYyNCBFcmZhaHJ1bmdzcHVua3RlLCAyMTQwIEFiZW50ZXVlcnB1bmt0ZSgxOTAwKSwKMTE5IExlYmVuc3B1bmt0ZSgyMjYpIHVuZCAxIE1hZ2llcHVua3RlKDIwMikKRHUgYmlzdCAiQW5ha2luIHNhZ3Q6IFBhcnR5PyBCZXJsaW4/IE5pZW1hbHMhLiIKRGVpbmUgQXR0cmlidXRlIHNlaGVuIHNvIGF1czoKSW50ZWxsaWdlbno6IDIwICBBdXNkYXVlcjogMjAgKCszKSBLcmFmdDogMjAgKCsyKSBHZXNjaGlja2xpY2hrZWl0OiAyMCAoKzEpClZvcnNpY2h0LU1vZHVzICg2MCkKRmx1Y2h0cmljaHR1bmcgIm8iCkFsdGVyOiAgMTIxIFRhZ2UgNCBTdHVuZGVuIDkgTWludXRlbiA2IFNla3VuZGVuLgpEZWluIENoYXJha3RlciBpc3QgYm9lc2UuClZlcmdsaWNoZW4gbWl0IERlaW5lbiBNaXRzcGllbGVybiwga2VubnN0IER1IERpY2ggaW0gTW9yZ2VuR3JhdWVuCnVlYmVyZHVyY2hzY2huaXR0bGljaCBndXQgYXVzLgpBYnNvbHV0IGdlc2VoZW4gc29sbHRlc3QgRHUgRGljaCB2aWVsbGVpY2h0IG5vY2ggZ2VuYXVlciB1bXNlaGVuLgpEdSB2ZXJmb2xnc3QgMiBGbGFtbWVua3VnZWxuLgoKCgpBbHNvIHdlbm4gaWNoIGRpZSB6d2VpIEZsYW1tZW5rdWdlbG4gZXJ3aXNjaGUhIEFiZXIgZGFubiEKCkFuYWtpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiA/IChDYXJhZGhyYXMsIDIwLiBBcHIgMTk5NiwgMTM6MjU6NTEpOgp+IyEgcm49QW5ha2luIHJ0PTgyOTk4NzYzOAp+IyEgdGlkPTgyOTk4NzYzOApWb3JzaWNodCA2MD8gSHVjaCwgd296dSBkZW5uIGRhcz8gU28gdmllbD8gKnN0YXVuKgoKICAgICAgICAgICBDYXJhZGhyYXMgLSB0b2Rlc211dGlnIGlkbGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT21iYXRpcyAoU3BhdHosIDIxLiBBcHIgMTk5NiwgMDA6MDg6MzYpOgpPbWJhdGlzIHNhZ3Q6IElnaXR0ISBEdSBlcndhcnRlc3QgamE6IE1wYS4gRGllIHNpbmQgZG9jaCBhbGxlIGRvb29vZiEKCmhtbW0uIFN0aW1tdCA6LSkKClNwYXR6LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmxlaXNzaWcsIGZsZWlzc2lnIChKYW5pY2UsIDIxLiBBcHIgMTk5NiwgMDE6MTk6MTEpOgogRWJlbiBiZWkgSW5mZXJubzoKRHUgZHJlaHN0IGRhcyB6d2VpdGUgR2VzaWNodCBuYWNoIHZvcm5lLgpEYXMgYWx0ZSBHZXNpY2h0IHNjaGVpbnQgRGljaCBmcmV1bmRsaWNoIHp1IG11c3Rlcm4uIEVpbmUgcmF1aGUgU3RpbW1lCmVya2xpbmd0IGluIERlaW5lbSBLb3BmOiBOYSwgRHUgaGFzdCBqYSBzY2hvbiAwIFRhZmVsbiB6dXNhbW1lbi4KR3V0ZSBBcmJlaXQuIE51ciB3ZWl0ZXIgc28uCgpNYWNoIGljaCwgbWFjaCBpY2ggOikKSmFuaWNlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YWFhaCAoSmFuaWNlLCAyMS4gQXByIDE5OTYsIDE0OjQzOjM0KToKW1NlaGVyOkphbmljZV0gZ2xlaWNoIHN0ZXJiIGljaAo+IExhbmdzYW0gc2NoaWViZW4gc2ljaCBrbGF1ZW5iZXdlaHJ0ZSBQZm90ZW4gZHVyY2ggZGllIE9lZmZudW5nIHVuZCB0YXN0ZW4Kdm9yc2ljaHRpZyBuYWNoIEhhbHQuCidEdSBtdXNzdCBEaWNoIGJlZWlsZW4hJyBzdG9laG50IGVyLCAnU2hhZGl6IGhhdCBtaXQgc2VpbmVtIFRvZCBlaW4gVG9yIHp1bQpJbmZlcm5vIGdlb2VmZm5ldC4gRGllIGR1bmtsZW4gS3JhZWZ0ZSB2ZXJzdWNoZW4gamV0enQgZGFzIFRvciB6dSBlcndlaXRlcm4KdW5kIHdlcmRlbiBkYXMgVGFsIGRlciBMdXBpbmVuIHVlYmVyZmx1dGVuIHVuZCB1bnMgYWxsZSB2ZXJuaWNodGVuLCB3ZW5uIHNpZQpkYXJpbiBFcmZvbGcgaGFiZW4uJwpbU2VoZXI6Um9hZHJ1bm5lcl0gaHVwcHM/CkplbWFuZCBiZXNjaHdvZXJ0IERlaW4gQmlsZCBoZXJhdWYuCkpvZiBuaWNrdCB6dXN0aW1tZW5kLgoKW1RvZDpdIERpZSBNYWNodCBkZXMgSW5mZXJub3MgaGF0IGdlcmFkZSBKYW5pY2UgdW1nZWJyYWNodC4KCgpWaWVsbGVpY2h0IGxhc3MgaWNoIGVzLCB3ZW5uIHNlbGJzdCBkaWUgR29ldHRlciBnZWdlbiBtaWNoIHNpbmQgOikKCkphbmljZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ID8gKEZ5dCwgMjEuIEFwciAxOTk2LCAxNzozMzo0Nik6Cn4jISBybj1BbmFraW4gcnQ9ODI5OTg3NjM4Cn4jISB0aWQ9ODI5OTg3NjM4CgpIbSwgbWl0IG5lbSBTY2huaXR0IHZvbiAxMzIgTWlvIEVwIHBybyBTdHVuZGUga29lbm50ZSBpY2ggYXVjaCBndXQKbGViZW4sIEFuYWtpbi4KCkZ5dCwgdWViZXJsZWdlbmQsIG9iIGVyIG5pY2h0IGxpZWJlciBDaGFvdCBoYWV0dGUgd2VyZGVuIHNvbGxlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmd1dGVyIFRhZyBmdWVyIFJvYmluIChGeXQsIDIxLiBBcHIgMTk5NiwgMjI6Mjk6NDApOgpbVG9kOl0gUm9iaW4gaGF0IGdlcmFkZSBCb2JhZmV0dCB1bWdlYnJhY2h0LiA8MjI6MTY6MTM+CltUb2Q6XSBSb2JpbiBoYXQgZ2VyYWRlIFByaWFtb3MgdW1nZWJyYWNodC4gPDIyOjI0OjMwPgpbVG9kOl0gUm9iaW4gaGF0IGdlcmFkZSBSaW5nb3IgdW1nZWJyYWNodC4gPDIyOjI1OjE2PgpbVG9kOl0gUm9iaW4gaGF0IGdlcmFkZSBNeXNlbGYgdW1nZWJyYWNodC4gPDIyOjI1OjI5PgpbVG9kOl0gUm9iaW4gaGF0IGdlcmFkZSBCb2JhZmV0dCB1bWdlYnJhY2h0LiA8MjI6Mjc6MDY+CgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcm1heCwgZGVyIGhhbGJibGluZCBBbGljaG1pc3QuLi4gOikgKEhhcmRpbCwgMjIuIEFwciAxOTk2LCAxMTowNToyNyk6CiBrYXVmZSBnaWZ0ZWZldQpEZXIgQWxjaGVtaXN0IHNhZ3Q6IFZpZWxlbiBEYW5rIGZ1ZXIgZGVuIEthdWYsIEhhcmRpbC4gU2llIHdlcmRlbgpEZXIgQWxjaGVtaXN0IHNhZ3Q6IGRlbiBLYXVmIG5pY2h0IGJlcmV1ZW4uCkFybWF4IHN0b2VobnQ6IFZvbiBtZWluZW4gRnJldW5kZW4gaGF0IHNpY2ggbGFuZ2UgbmllbWFuZCBtZWhyIGJsaWNrZW4KQXJtYXggc3RvZWhudDogbGFzc2VuLiBXbyBkaWUgd29obCBhbGxlIHNpbmQ/CmZyYWdlIGFybWF4IG5hY2ggZnJldW5kCkFybWF4IHNhZ3Q6IEljaCBoYWJlIHZpZWxlIEZyZXVuZGUgdW50ZXIgZGVuIEFiZW50ZXVyZXJuIHVuZCBNYWdpZXJuIGhpZXIuCkFybWF4IHNhZ3Q6IEhhcmRpbCwgZGVyIFdpbnplciBpc3QgZWluIG5ldHRlciBLZXJsLiBNYW5jaG1hbCB0cmlua3QgZXIgamVkb2NoCkFybWF4IHNhZ3Q6IGdlcm5lIGVpbmVuIHVlYmVyIGRlbiBEdXJzdC4KCgpBZWgsIGhhbGx1LCBBcm1heCwgYmluIGRvY2ggaGllciA6LSkgVW5kIHNlaXRkZW0gaWNoIFphdWJlcmVyIGJpbiwgdHJpbmtlIGljaAphdWNoIG5peCBtZWhyIDopCgotSGFyZGlsLiBXdW5kZXJ0IHNpY2ggdWViZXIgYWx0ZSBGcmV1bmRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FsZGRyYWNoZSAoTGF1cmluLCAyMi4gQXByIDE5OTYsIDExOjI5OjU2KToKRGVyIFdhbGRkcmFjaGUga251ZGRlbHQgRGljaCB2b3JzaWNodGlnLgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKCmhtbSwgYW5zY2hlaW5lbmQgbmljaHQgdm9yc2ljaHRpZyBnZW51ZyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAyMi4gQXByIDE5OTYsIDE2OjE4OjQ3KToKCiJFaW4gUmFkaWthbGVyIGlzdCBqZW1hbmQsIGRlciBtaXQgYmVpZGVuIEZ1ZXNzZW4gZmVzdCBpbiBkZXIgTHVmdCB2ZXJhbmtlcnQKaXN0LiIgKEZyYW5rbGluIEQuIFJvb3NldmVsdCkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyaGFuZC4uLi4gKFB1Y2ssIDIyLiBBcHIgMTk5NiwgMjI6Mjk6NDYpOgoKClRlc2xhIHRhZXRzY2hlbHQgSW50YXJiaXIgZGVuIEtvcGYuCkludGFyYmlyIHZlcmxhZXNzdCBkaWVzZSBXZWx0LgoKCipncmlucyogJ2hhbmRzJyB2b24gMTAwMDAgb2RlciB3YXMuLi4/ClB1Y2sKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbW1lciB3aWVkZXIgZ2VybmUgZ2VsZXNlbi4uLiAoTXVwZmVsLCAyMi4gQXByIDE5OTYsIDIzOjI0OjM3KToKW01hZ2llcjpQYXJhY2Vsc3VzXSBVbmQgd2VjaApEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKamEgZGllc2UgZXJ6bWFnaWVyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptYWwgd2llZGVyICduIFNwcnVjaCB2b24gbWlyIChBbGJvaW4sIDIzLiBBcHIgMTk5NiwgMTM6NDA6MTUpOgpBdWNoIHdlbm4gR3JpbW1pIGJlaGF1cHRldCwgU3BydWVjaGUgenUgcG9zdGVuIHNlaSBzZWluIFByaXZpbGVnICpodWVzdGVsKiwKaWNoIGxhc3MgZGEgbmljaHQgbG9ja2VyIDstKQoKSWYgYW50cyBhcmUgc3VjaCBidXN5IHdvcmtlcnMsCmhvdyBjb21lIHRoZXkgZmluZCB0aW1lCnRvIGdvIHRvIGFsbCB0aGUgcGljbmljcz8KICAgICAgICAgICAgTWFyaWUgRHJlc3NsZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hZ2lzY2hlIEt1ZWhlIC4uIChTaGF5YSwgMjMuIEFwciAxOTk2LCAxNToxNDozOCk6CkViZW4gYmVpbSBJbWtlcjoKCltyYXVzY2gga3VoXQpEdSBzY2h3ZW5rc3QgZWluZSBrbGVpbmUgRmxhc2NoZSB2b3IgZGVyIEt1aCBOYXNlIGhlcnVtLgpEaWUgS3VoIHN0b2xwZXJ0IHVlYmVyIGlocmUgRnVlc3NlLgpbYWxjb3Rlc3Qga3VoXQpEaWUgS3VoIHNvbGx0ZSBpbiBkZW0gWnVzdGFuZCBuaWNodCBtZWhyIHphdWJlcm4uCgpncmluc2VuZCwgU2hheWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBXZWNrZXIgKFNudWdnbGUsIDIzLiBBcHIgMTk5NiwgMTg6Mzk6NTcpOgpEZWluIFdlY2tlciBrbGluZ2VsdCBiZWkgSGFkcmEuCkplaG92YSBmYWVsbHQgYXVzIGVpbmVyIFdvbGtlLgoKQWVobS4uLiBIYWRyYT8KCnN0YXVuZW5kLApTbnVnZ2xlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbWFnaXNjaGUgS3VlaGUgLi4gKEhhcmRpbCwgMjQuIEFwciAxOTk2LCAxMzoxMDoxNik6Cn4jISBybj1TaGF5YSBydD04MzAyNjUyNzgKfiMhIHRpZD04MzAyNjUyNzgKSG1tbS4KU09sbHRlIGRhcyBuaWNodCBoZWlzc2VuICIuLi4ga2FubiBpbiBpaHJlbSBadXN0YW5kIG5pY2h0IG1laHIgYXV0b2ZhaHJlbj8iCkp1c3Qgc2NobWFycm4uCk5OTi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVlYmVyZ2V3aWNodGlnZSBNYWdpZXI/IChIYXJkaWwsIDI0LiBBcHIgMTk5NiwgMTM6MTc6MTQpOgoKendpbmd0YW56IGd1bGR1a2F0CkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMjA0IE1hZ2llcHVua3RlLgpEdSBmaXhpZXJzdCBHdWxEdWthdCB1bmQgbWFjaHN0IHNjaHd1bmd2b2xsZSBCZXdlZ3VuZ2VuLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDE5OSBNYWdpZXB1bmt0ZS4KPiBHdWxEdWthdCB0YW56dCB3aWUgaW4gVHJhbmNlIGR1cmNoIGRpZSBHZWdlbmQuCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMjAwIE1hZ2llcHVua3RlLgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKT2huZSBXb3J0ZS4KCi1IYXJkaWwuIFJhZWNodCBzaWNoIGFuIGRlciBGR1cgYXVmIHNlaW5lIFdlaXNlLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbGluZSwgMjQuIEFwciAxOTk2LCAxNDoyMDoyMCk6CgpbQWJlbnRldWVyOklrYXJ1c10gRGllIGVpbnppZ2Ugd2FocmUgV3Vlc3RlIGlzdCBkaWUgaW4gWGlhbi4gRGllCltBYmVudGV1ZXI6SWthcnVzXSBkdXJjaHNjaG5pdHRsaWNoZSBMZWJlbnNlcndhcnR1bmcgZWluZXMgTlBDIG5hY2ggc2VpbmVyCltBYmVudGV1ZXI6SWthcnVzXSBSZWJvb3QtIEdlYnVydCBiZXRyYWVndCBjaXJjYSAybWluLiAxNSBzZWMsIHdlbm4gZ2VyYWRlCltBYmVudGV1ZXI6SWthcnVzXSBTZWhlciBkYSBzaW5kLi4uCltBYmVudGV1ZXI6TGF1cmluXSBkaWUgRHJha29uaWVyd2FlY2h0ZXIgaGllciBsZWJlbiBhdWNoIG5pY2h0IGxhbmdlLCB3ZW5uCltBYmVudGV1ZXI6TGF1cmluXSBpY2ggZGEgYmluIDopCgoKW1RvZDpdIEVpbiBEcmFrb25pZXJ3YWVjaHRlciBoYXQgZ2VyYWRlIExhdXJpbiB1bWdlYnJhY2h0LgoKW0FsbGdlbWVpbjpaZXBoeXJdIEZMVz8gOikKW0FsbGdlbWVpbjpCb2luZ10gKnBydXN0KgoKW0FsbGdlbWVpbjpCb2luZ10gZGFzIHdhcmVuIGRpZSBiZXN0ZW4gRkxXIHNlaXQgamFocmVuIDopCgpBbGluZSBncmluc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKExhdXJpbiwgMjQuIEFwciAxOTk2LCAxNDozOToyNik6Cn4jISBybj1BbGluZSBydD04MzAzNDg0MjAKfiMhIHRpZD04MzAzNDg0MjAKTmEgdW5kPyBkb29mZXIgUGFyYWNlbHN1cy1SZXNldCwgaWNoIHdhciBtaXR0ZW4gaW0gV2FlY2h0ZXItUHVsayB1bmQgZGllCnNwaWVsdGVuIFBpbmctUG9uZyBtaXQgbWlyLCBpY2ggbW9lY2h0ZSBudXIgbWFsIHdpc3Nlbiwgd2FzIG1pdCBkZW4KU2FjaGVuIGRlciBnZXN0b3JiZW5lbiBwYXNzaWVydCwgbWVpbiBnZWxkIGtvbm50ZSBpY2ggZWluZW0gd2FlY2h0ZXIKYWJlciBkaWUgYW5kZXJlbiBTYWNoZW4gd2FyZW4gd2VnIChhdWNoIG5hY2hkZW0gYWxsZSBXYWVjaHRlciByaW5nc3VtCnRvdCB3YXJlbikuIFZlcnNjaHdpbmRlbiBkaWUgZWluZmFjaD8gd2VubiBkZW0gc28gaXN0LCBkYW5uIGlzdCBlcwp3aXJrbGljaCBkb29mLCBzb2xsdGUgbWFuIGFlbmRlcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMVyAoUGFyYWNlbHN1cywgMjQuIEFwciAxOTk2LCAyMTo0MjowOCk6Cn4jISBybj1MYXVyaW4gcnQ9ODMwMzQ5NTY2Cn4jISB0aWQ9ODMwMzQ4NDIwCkphIGdhbHVic3QgRHUgZXR3YSwgZGllIERyYWtvbmllciBoZWJlbiBqZWRlbiBTY2hyb3R0IGF1Zj8gOykKV2FzIGRpZSBSZXNldHMgYW5nZWh0OiBkYXMgc2luZCBnZXRhcm50ZSBSRUZSRVNIX0JPSU5HIDspClBhcmEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgd2FyIHdvaGwgaW4gZGVyIFRhc3NlIGRyaW4/IChIYXJkaWwsIDI2LiBBcHIgMTk5NiwgMTA6MDQ6NDUpOgpGb25kaWwgRmFyaW4gbmltbXQgZWluZW4gU2NobHVjayBhdXMgc2VpbmVyIEthZmZlZXRhc3NlLgpGb25kaWwgc2FndDogPEhpY2s+IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUHJlc2F5IGVpbm1hbCBhbmRlcnMuLi4gOikgKEFuYXRvbCwgMjYuIEFwciAxOTk2LCAyMToyNzowOSk6CgpEYXMgU2NobGFjaHRmZWxkIGZhZXJidCBzaWNoIHJvdCB1bmQgWnVlcmlsZXUgcnVmdDogU2FsaSB6YWVtZSA9OikKCltWb2xsZXIgTmFtZTogRGFzIFNjaGxhY2h0ZmVsZCBmYWVyYnQgc2ljaCByb3QgdW5kIFp1ZXJpbGV1IHppZWh0IG1pdCBzZWluZW4KRWxpdGUtVHJ1cHBlbiBpbiBkYXMgZ2VtZXR6ZWwuIChVbml0eSwgUGVhY2UsIEJST0RFUkhPT0QgT0YgTk9EISkgXQoKKmdyaW5zKgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqd3VlcmcqIChOaWNodHMsIDI3LiBBcHIgMTk5NiwgMDA6MDE6NDEpOgoKTmV1bGljaCBpbiBkZXIgR2lsZGUuLi4KCi4uLgpTdXNoaSB6YXViZXJ0IGV0d2FzIGF1cyBzZWluZW0gQWVybWVsIGhlcnZvci4KKFVuZCBkYXMgZWluIHBhYXIgbWFsKQoKU3VzaGkgemllaHQgZWluZSBMdXN0LVBlaXRzY2hlIGFuLgpTdXNoaSB6aWVodCBIYW5kc2NodWhlIGFuLgpTdXNoaSB6aWVodCBlaW5lbiBGbGFzaGVyIGFuLgpTdXNoaSB6aWVodCBlaW5lbiBsdWZ0Z2Vwb2xzdGVydGVuIExpZWJlc3JpbmcgYW4uClN1c2hpIHppZWh0IGVpbmVuIE1hc2t1bGF0ZXggYW4uClN1c2hpIHppZWh0IGVpbmVuIE11bHRpLU9yZ2FzbXVzLUhlbG0gYW4uClN1c2hpIHppZWh0IGVpbmUgZ2V3ZWlodGUgS2VyemUgYW4uClN1c2hpIHppZWh0IGVpbmVuIEtpbmRlcnNjaGFlbmRlci1NYW50ZWwgYW4uClN1c2hpIHppZWh0IGVpbmVuIEd1ZXJ0ZWwgYW4uClN1c2hpIHZlcnNjaHdpbmRldCBtaXQgS25hbGwgdW5kIEZpc2NoZHVmdC4KCiphZWNoeioKClN0ZWh0IGF1ZiBOYXR1ciwKIiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKnd1ZXJnKiAoU3VzaGksIDI3LiBBcHIgMTk5NiwgMDA6MTM6MDcpOgp+IyEgcm49TmljaHRzIHJ0PTgzMDU1NjEwMQp+IyEgdGlkPTgzMDU1NjEwMQpIbW1tLCB1bmQgZGFzIHdhciwgYmV2b3IgaWNoIG1laW5lIG1hZ2lzY2hlIFd1bmRlcndhZmZlIHp1ZWNrdGUuCgpQLlMuIERpZSBpc3QgYXVzIEhvbHouClAuUC5TLiBTZWl0IGR1cmNoIGVpbmVuIHRyYWdpc2NoZW4gVW5mYWxsIG1laW4gSGF1cyBnZWtsYXV0IHd1cmRlLCBzdGFydGUgaWNoCmluIGRlciBHaWxkZSwgaGF0dGUgaWNoIHZlcmdlc3NlbjpfKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAqd3VlcmcqIChOaWNodHMsIDI3LiBBcHIgMTk5NiwgMDA6MzA6MDMpOgp+IyEgcm49U3VzaGkgcnQ9ODMwNTU2Nzg3Cn4jISB0aWQ9ODMwNTU2MTAxCgoKRHUgaG9lcnN0IGRpZSBHbG9ja2VuIGRlciBLYXBlbGxlIGluIGRlciBVbnRlcndlbHQuCkp1bmdmcmF1IHVuZCBTdXNoaSB3b2xsZW4gaGVpcmF0ZW4uCgoKQWNoIERFU0hBTEIuLi4KIiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYWNodHJhZyB2b20gU3RhbW10aXNjaCBpbiBNdWVuc3Rlci4uLiA7LSkgKEFuYXRvbCwgMjcuIEFwciAxOTk2LCAwMTowMjozMCk6CgoKCi4uLgpBbGluZSBrdWVzc3QgWWFubnkuCkR1IHN0YXVuc3QuCkR1IGRldXRlc3QgYXVmIFdhcmdvbi4KRHUgc2Fnc3Q6IEluIFNFSU5FUiBBbndlc2VuaGVpdCBzY2hhdXN0IER1IGFuZGVyZSBhbj8KQWxpbmUgZ3JpbnN0LgpBbGluZSBrdWVzc3QgWWFubnkuCldhcmdvbiBzY2htdW56ZWx0LgpZYW5ueSBncmluc3QuCllhbm55IHNhZ3Q6IFdlbm4gZXIgbmljaHQgWndlcmcgd2FlcmUsIGtvZW5udGUgbWFuIHNhZ2VuLCBlciBzYWVoZQpZYW5uaSBzYWd0OiBkYXJ1ZWJlciBoaW53ZWcuLi4KClNjaGxvc3Mgc2ljaCBkZW0gR2VsYWVjaHRlciBhbiwKQW5hdG9sIF06LSkKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogKnd1ZXJnKiAoU3VzaGksIDI3LiBBcHIgMTk5NiwgMDE6MDU6NTcpOgp+IyEgcm49TmljaHRzIHJ0PTgzMDU1NzgwMwp+IyEgdGlkPTgzMDU1NjEwMQpKYSwgZW5kbGljaCBlaW5lIEZyYXUgbmFjaCBtZWluZW0gR2VzY2htYWNrLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiAqd3VlcmcqIChSdW1hdGEsIDI3LiBBcHIgMTk5NiwgMDI6MDE6MDMpOgp+IyEgcm49U3VzaGkgcnQ9ODMwNTU5OTU3Cn4jISB0aWQ9ODMwNTU2MTAxCkZyYWd0IHNpY2ggbnVyLCB3aWUgbGFuZ2UgLi4uIDotKQpSdW1hdGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFtYW5kYSAoQ2FyYWRocmFzLCAyOC4gQXByIDE5OTYsIDE4OjMxOjUzKToKPiBbQWxsZ2VtZWluOkxhcmlzc2FdIEljaCBmaW5kZSBpaG4gemllbWxpY2ggY2xldmVyLiAoZ2VodCB1bSBTY2h1bW1pKQpbQWxsZ2VtZWluOkxhcmlzc2FdIFNvIGltIHZlcmdsZWljaCB6dSBNaXNzIFNjaGlmZmVyLgpbQWxsZ2VtZWluOkFsYm9pbiBraWNoZXJ0XQpbQWxsZ2VtZWluOkd1eWJydXNoXSBpbSB2ZXJnbGVpY2ggbWl0IGRlciBiaW4gc29nYXIgaWNoIGludGVsbGlnZW50IDopCj4gW0FsbGdlbWVpbjpDcmVhdGl2ZV0gYmVpZGUgc2luIG1pbmRlc3RlbnMgZ2xlaWNoIHZpZWwgYXJyb2dhbnQuCltBbGxnZW1laW46TGFyaXNzYV0gT2RlciBnbGF1YmVuIHNpZSBtZWluIEhhYXIgaXN0IHZvbiBhbGxlaW4gc28gc2Nob2VuPwpbQWxsZ2VtZWluOkxhcmlzc2FdICp6d2lua2VyKgpbQWxsZ2VtZWluOkFsYm9pbl0gdW5kIGljaCBlcnN0IGd1eQpbQWxsZ2VtZWluOkNhcmFkaHJhc10gYWJlciBjbGF1ZGlhIHNjaGlmZmVyIGlzdCBqYSBhdWNoIG5pY2h0IHNwb3J0LApbQWxsZ2VtZWluOkNhcmFkaHJhc10gaG9lY2hzdGVucyBmdWVyIGRhdmlkIGNvcHBlcmZpZWxkCj4gW0FsbGdlbWVpbjpHdXlicnVzaF0gam8gZHUgZXJzdCwgYWxiaQpbQWxsZ2VtZWluOkNoZWFzeV0gYWVoLCBtaXIgZmVobHQgZGEgc28gZWluIGtsZWluZXMgZGluZywgc2VpdCBpY2ggQW1hbmRhCltBbGxnZW1laW46Q2hlYXN5XSBnZW10emVsdCBoYWIuLi4gd2llIGtyaWVnIGljaCBkYXMgd2llZGVyPwpbQWxsZ2VtZWluOkd1eWJydXNoXSBnYXIgbmljaApbQWxsZ2VtZWluOkNoZWFzeSBhcmdsdF0KW0FsbGdlbWVpbjpTZW1pcmFdIHdhcyBmdWVybiBEaW5nIENoZWFzeSA6KQpbQWxsZ2VtZWluOlJpbmdvcl0gYW5nZWJsaWNoIGthbm4gbWFuIGVzIHNpY2ggd2llZGVyIGFubmFlaGVuIGxhc3NlbiAuLi4KW0FsbGdlbWVpbjpDcmVhdGl2ZV0gRGlyIGZlaGx0IERlaW4gRGluZz8KW0FsbGdlbWVpbjpHdXlicnVzaF0gbWFjaCBtYWwgZW5kZSwgZGFuYWNoIGRhcmZzdGUgZGlyIGVpbiBuZXVlcyBnZXNjaGxlY2h0CltBbGxnZW1laW46R3V5YnJ1c2hdIGF1c3N1Y2hlbiA6KQpbQWxsZ2VtZWluOkFsYm9pbl0gYWxzbyBkYXMgaG9zcGl0YWwgbWFjaHQgZXMgbmljaHQKW0FsbGdlbWVpbjpDYXJhZGhyYXMgd2FlbHp0IHNpY2ggYXVmIGRlbSBCb2RlbiB2b3IgTGFjaGVuLl0KPiBbQWxsZ2VtZWluOkNoZWFzeV0gYWxzbyBlbmRlIDstKQpbQWxsZ2VtZWluOkNhcmFkaHJhc10gYXJtZXMgV3VlcnN0Y2hlbiwgQ2hlYXN5Cj4gW0FsbGdlbWVpbjpSaW5nb3JdIGpvLCBzdGVodCBhdWNoIHdhcyB2b24gY2hpcnVyZy4gYWJlciB3byBoYWJlbiB3aXIgaGllcgpbQWxsZ2VtZWluOlJpbmdvcl0gc293YXM/CltBbGxnZW1laW46Q2hlYXN5XSBtYW4gc29sbHRlIGhhbHQgbnVyIGFscyBtYWVkY2hlbiBhbWFuZGEgbWV0emVsbiA7LTkKW0FsbGdlbWVpbjpBbGJvaW5dICp0b3RsYWNoKgpbQWxsZ2VtZWluOkNyZWF0aXZlXSBvaG5lIHd1ZXJzdGNoZW4uLi4KW0FsbGdlbWVpbjpTZW1pcmFdIG5hamEsIGV1bnVjaCBzZWluIGlzdCBkb2NoIG1hbCB3YXMgYW5kZXJlcy4uLgpbQWxsZ2VtZWluOkd1eWJydXNoXSB3ZWlsIGRlaW4gZ2VzY2hsZWNodCBhdWYgbmV1dGVyIGdlc2V0enQgd2lyZCA7KQpbQWxsZ2VtZWluOlJpbmdvciBmYW5kIGVzIGx1c3RpZywgbWFsIG5lIHdlaWJsaWNoZSBUb2Rlc3NlcXVlbnogenUgc2VoZW4gOyldCltBbGxnZW1laW46Q2hlYXN5XSBqYWphIERBUyBDaGVhc3kuCltBbGxnZW1laW46U2VtaXJhXSBlaW4gY2hlYXN5IGtvbW10IGFuCltBbGxnZW1laW46Q2hlYXN5XSBrb21tdCBlaWdlbnRsaWNoIGd1dC4ga2FubiBtYW4gZWlnZW50bGljaCBsYXNzZW4gOy0pCltBbGxnZW1laW46R3V5YnJ1c2hdIGNoZWFzeSBlcmlubmVydCBtaWNoIGFuIGthZXNlYnJvZXRjaGVuIC4uLnVuZCBpY2ggaGFiCltBbGxnZW1laW46R3V5YnJ1c2hdIEh1bmdhIQpbQWxsZ2VtZWluOkFsYm9pbl0gd3VlcnN0Y2hlbiAsZXJpbm5lcnQgbWljaCBhdWNoIGFuIHdhcyBlc3NiYXJlcwpbQWxsZ2VtZWluOkd1eWJydXNoXSBoYXVwdHNhY2hlIHdhcyB6dSBlc3NlbgpbQWxsZ2VtZWluOkNoZWFzeV0gbGFzcyBiaXR0ZSBtYWwgbWVpbiB6ZXVjaCBsaWVnZW4uLi4gd2FlciBwZWlubGljaCwgbmFjaGVyCltBbGxnZW1laW46Q2hlYXN5XSBhdWNoIG5vY2ggbmFja2ljaCBydW16dXJlbm5lbiA7LSkKW0FsbGdlbWVpbjpDaGVhc3ldIGdsZWljaCB3aWVkZXIgZGEKW0FsbGdlbWVpbjpTZW1pcmEgZ3Vja3QgbmV1Z2llcmlnLi4uc2llaHQgbWFuIHNjaGxpZXNzbGljaCBuaWNodCBhbGxlIHRhZ2VdCltBbGxnZW1laW46R3V5YnJ1c2hdIGJpc3RlIGpldHp0IHdlaWJsaWNoPyA6KQoKICAgICAgICAgSW4gc2ljaCByZWlua2ljaGVybmQKICAgICAgICAgICAgICAgICAgICAgICBDYXJhZGhyYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdpZXI/IChBcnR5LCAyOS4gQXByIDE5OTYsIDEyOjU3OjAxKToKRHUgc3RlaHN0IGF1ZiBlaW5lbSBzY2htYWxlbiwgZXR3YXMgd2Fja2VsaWdlbiBTdGVnIGFtIFN1ZWR1ZmVyIGVpbmVzIGdyb3NzZW4KU2VlcyBpbm1pdHRlbiBlaW5lcyBIb2NodGFscyBpbiBkZW4gRHJhY2hlbnppbm5lbi4gVm9uIGhpZXIgYXVzIGtvZW5udGUgbWFuCnd1bmRlcmJhciBhdWYgZGVtIFNlZSBSdWRlcm4gZ2VoZW4sIHdlbm4gbWFuIGVpbiBCb290IGhhZXR0ZS4gRGVyIFNlZSBiaWV0ZXQKc2ljaCBuYWVtbGljaCB6dW0gQW5nZWxuLCBSdWRlcm4gb2RlciB6dSBlaW5lciBnZW11ZXRsaWNoZW4gQm9vdHNmYWhydCB6dQp6d2VpdCBudXIgc28gYW4uIEplZGVuZmFsbHMgZXJzY2hlaW50IGRhcyB3ZXNlbnRsaWNoIHJlaXp2b2xsZXIgYWxzIGR1cmNoIGRpZQprYXJnZW4gQmVyZ2UgenUga2xldHRlcm4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBzdWVkZW4uCkVpbiBSdWRlcmJvb3QuCkVpbiBSdWRlcmJvb3QuCkVpbiBSdWRlcmJvb3QuCkVpbiBSdWRlcmJvb3QuCkVpbiBSdWRlcmJvb3QgKGdlc3RldWVydCB2b24gSGlsbHBlcnQpLgpFaW4gUnVkZXJib290IChnZXN0ZXVlcnQgdm9uIEhpbGxwZXJ0KS4KRWluIFJ1ZGVyYm9vdCAoZ2VzdGV1ZXJ0IHZvbiBIaWxscGVydCkuCgoKSG1tLCBnYW56IHNjaG9lbiBnaWVyaWcuLi4KCkFSVFkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWVyIFdhZmZlbnR5cCAoWmFyZG96LCAyOS4gQXByIDE5OTYsIDE4OjAyOjM2KToKfiMhIHJuPUhhdGUgcnQ9ODMwNjQ0NzQ3Cn4jISB0aWQ9ODMwNjMzMzE2CltWZXJsZWd0IHZvbiBtYWdpZXIubHBjLCBDYXR3ZWF6bGUsIDI5LiBBcHIgMTk5NiwgMTg6MDE6MzRdOgpIaWhpIDopCkNhdHdlYXpsZSBwaWVrc3QgSGF0ZSBpbiBkaWUgU2VpdGUuCkxhc3MgaWhuIGRvY2ggLi4KQ2F0d2VhemxlIHBpZWtzdCBIYXRlIHVuYW5nZW5laG0gaW4gZGllIFNlaXRlLgpEYWZ1ZXIgaXNzZXIgc2NobGllc3NsaWNoIGRhIDopCllULAogICAgIENhdHdlYXpsZSAoZ3JpbnNlbmQpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VsY2hlIFN0YXRzIGhhdCBlaWdlbnRsaWNoIGRlciBXZWdoaWVyPz8gKFByZWRhdG9yLCAyOS4gQXByIDE5OTYsIDE4OjA4OjU2KToKRGVyIFdlZ2hpZXIgaGF0IHNlaW5lbiBOYW1lbiB2b24gZGVyIGVyc3RlbiBHcnVwcGUgdm9uIFNlaGVybiwKZGllIGlobSBiZWdlZ25ldCBzaW5kLiBTaWUgc2FoZW4gaWhuLCBncmlmZmVuIGlobiBhbiwgdW5kIGRpZQpVZWJlcmxlYmVuZGVuIHNjaHJpZWVuIGBgV2VnaGllciEnJwpFciBpc3QgYWJzb2x1dCBmaXQuCkVyIHRyYWVndCBiZWkgc2ljaDoKTWVybGluLCBkZXIgVXJ2YXRlciBhbGxlciBNYWdpZXIuCkVpbiBgYEJvcm4gdG8gS2lsbCcnLVN0aXJuYmFuZC4gKGFuZ2V6b2dlbikuCkVpbiBBbnRpLUZldWVyLVJpbmcuIChhbmdlem9nZW4pLgpEZXIgVm9sbHN0cmVja2VyIChnZXp1ZWNrdCkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWVyIFdhZmZlbnR5cCAoWmFyZG96LCAyOS4gQXByIDE5OTYsIDE4OjE1OjUwKToKfiMhIHJuPUhhdGUgcnQ9ODMwNjQ0NzQ3Cn4jISB0aWQ9ODMwNjMzMzE2CltWZXJsZWd0IHZvbiBtYWdpZXIubHBjLCBDYXR3ZWF6bGUsIDI5LiBBcHIgMTk5NiwgMTg6MDk6MzFdOgpIaWhpIDopCkxhc3MgaWhuIGRvY2ggLi4KRGFmdWVyIGlzc2VyIHNjaGxpZXNzbGljaCBkYSA6KQpZVCwKICAgICBDYXR3ZWF6bGUgKGdyaW5zZW5kKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhcGFnZWllbmtyYW5raGVpdCAoUmFmZmksIDI5LiBBcHIgMTk5NiwgMjA6NDI6NDUpOgoKR2VyYWRlIGltIEVsZmVubGFkZW4KCkVpbiBQYXBhZ2VpIGZsYXR0ZXJ0IGhlcmVpbi4KRGVyIFBhcGFnZWkgc2FndDogaGFyZGlsIGlzdCBkb28KRGVyIFBhcGFnZWkgc2FndDogRWluZW4gTW9tZW50IG5vY2gsIGJpdHRlCkRlciBQYXBhZ2VpIGZsYXR0ZXJ0IG5hY2ggb2Jlbi4KCklzdCBkZXIgSmV0enQgaG9jaGdlZmxvZ2VuIHVtIEhhcmRpbCB6dSBwbGFldHRlbiwgb2RlciB1bSBzaWNoIHp1IHZlcnN0ZWNrZW4KPwoKR3JpbnMKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQYXBhZ2VpZW5rcmFua2hlaXQgKEhhcmRpbCwgMzAuIEFwciAxOTk2LCAxMDoxMzowMCk6Cn4jISBybj1SYWZmaSBydD04MzA4MDMzNjUKfiMhIHRpZD04MzA4MDMzNjUKCkRlbiBUZXh0IGhhdCBkZXIgUGFwYWdlaSB2b24gR3VsRHVrYXQuIEVpZ2VudGxpY2ggaGFldHRlc3QgRHUgZGFzIHVudGVyIEZMVwpwb3N0ZW4gbXVlc3NlbiwgZGVubiBuYWNoZGVlbSBHdWxEdWthdCBkYXMgc2FndGUsIHZlcmxpZXNzIGVyIHNvZm9ydCBkYXMgTXVkLgpHdWxkdWthdCwgbmljaHQgZGVyIFBhcGFnZWkuIDopCgotSGFyZGlsLiBMYWVzc3QgZnJlY2hlIE1hZ2llciByYXZlbi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgIDIuIE1haSAxOTk2LCAxNDozMjoyMyk6CgpCZXNzZXIgc3BhZXQgYWxzIG5pZToKCiJFaW5pZ2UgTWVuc2NoZW4gd2VjaHNlbG4gZGllIFNlaXRlbiB3ZWdlbiBpaHJlciBVZWJlcnpldWd1bmcuIEFuZGVyZQp3ZWNoc2VsbiBkaWUgVWViZXJ6ZXVndW5nIHdlZ2VuIGlocmVyIFNlaXRlIiAoV2luc3RvbiBDaHVyY2hpbGwpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVtYW56ZW4gKEd1eWJydXNoLCAgMi4gTWFpIDE5OTYsIDIwOjExOjI0KToKSWNoIGhhYiBqYSBuaXggZ2VnZW4gRW1hbnplbiwgd2VubiBzaWUgZWNodCBzaW5kLiBXb2JlaSBlY2h0IG5pY2h0IGhlaXJhdGVuCjopCkFiZXIgZGFzcyBzaWUgc2ljaCBnYW56ZSBHaWxkZW4gdW50ZXJ3ZXJmZW4gaW5rbC4gd2VpYmwgaG9laGVycmFuZ2lnZW4sIGRhc3MKZ2VodCBkYW5uIGRvY2ggd29obCBldHdhcyB6dSB3ZWl0Li4uCgpCZWlzcGllbDoKCltaYXViZXJlcjpBbGluZV0gVHNjaGF1IHVuZCBzdGVyYnQgc2Nob2VuIGZsZWlzc2lnCltUb2Q6XSBFaW4gVm9keWFub3kgaGF0IGdlcmFkZSBBdXJpYW4gdW1nZWJyYWNodC4KCkd1eWJydXNoLCBmaW5kZXQgZGFzIGZhc3Qgc28gbmV0dCB3aWUgRkxXJ3MgOikKClAuUy46IG1lcmtlOiBBbHRlciBtYWNodCBnZW1laW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZlcnNjaHdvcmVuZSBHZXNlbGxzY2hhZnQ/IChTaGF5YSwgIDMuIE1haSAxOTk2LCAwOTozMzoyOCk6CkViZW4gYmVpbSBaYXViZXJuOgoKRHUgc2NoYXVzdCBkZW0gV2Vyd29sZiB0aWVmIGluIGRpZSBBdWdlbiB1bmQgc2Fnc3Q6IEdyaW5zZSEKRWluZSBNdW1pZSBpbiBlaW5lciBQeXJhbWlkZSBzdGVodCBwbG9ldHpsaWNoIGF1ZiwgdmVybGFlc3N0IGRpZSBQeXJhbWlkZSB1bmQKYmVzY2hsaWVzc3QsIGVpbiBHZXNjaGFlZnQgZnVlciBGYWNrZWxuIGF1Znp1bWFjaGVuLgoKR3JpbnNlbmQsIFNoYXlhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpodWh1IChHYXJmaWVsZCwgIDMuIE1haSAxOTk2LCAxMToxMzoxMCk6Cmh1aHV1dXV1dQoKZ2FyZmllbGQgaXN0IG1hbCB3aWVkZXIgaW0gbGFuZGUgZGVzIG1vcmdlbmRsaWNoZW4gR3JhdWVucyAuLi4KCmFiZXIgYXVjaCBzY2hvbiB3aWVkZXIgd2VnLgpuYWphLgoKZGFzIHdhcnMgYXVjaCBzY2hvbi4KCnRzY2h1ZXNzaQoKZ2FyZmllbGQKKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBiZWkgZGVuIFNoYWt5cyAoUmFmZmksICAzLiBNYWkgMTk5NiwgMTk6NTg6MDkpOgoKKEljaCBzdGVoIHNvIHJ1bSB1bmQgcmF0c2NoZSBtaXQgU2hha2VkYmVlci4pCihFcyBnaW5nIHVtIGRlbiBGbGllc3NlIFNwcnVjaCBkZXIgQmllcnNjaHVldHRsZXJnaWxkZSkKClNoYWtlZGJlZXIgc2FndDogRGllIHN0ZWhlbiBuYWVtbGljaCBhdXMgOTUlV2Fzc2VyIHVuZCBrb2VubmVuIHNvbGNoZQpTaGFrZWRiZWVyIHNhZ3Q6IEVmZmVrdGUgOykKU2hha2VkYmVlciBmcmFndCBCcnVubyBuYWNoIEZsaWVzc2UuCkJydW5vIHNhZ3Q6IERhcyBpc3QgZGVyIGxlaWNodGVzdGUgQmllcnNjaHVldHRsZXJzcHJ1Y2guIE1hbiBrYW4gaWhuIHNjaG9uIGFiCkJydW5vIHNhZ3Q6IFN0dWZlIFp3ZWkgZXJsZXJuZW4uIFdlbm4gRHUgYW0gU3RyYW5kIHZvbiBTaGFreSBJc2xhbmQgc3RlaHN0LApCcnVubyBzYWd0OiBrYW5uc3QgRHUgRGljaCB2ZXJmbHVlc3NpZ2VuIHVuZCBkdXJjaCBkYXMgTWVlciBuYWNoIFBvcnQgVmFpbgpCcnVubyBzYWd0OiBmbGllc3NlbiB1bmQgdW1nZWtlaHJ0LgpTaGFrZWRiZWVyIHNhZ3Q6IFNvbGx0ZSBCcnVubyBtYWwgZXJ3YWVobmVuLgoKSmV0enQgbXVlc3NlbiBkaWUgTWFnaWVyIHNjaG9uIGlocmUgZWlnZW5lbiBOUEMgbmFjaCBkZW4gZWluZmFjaHN0ZW4KU3BydWVjaGVuIGZyYWdlbiA6KQoKR3J1c3MKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjstKSAoQW5hdG9sLCAgMy4gTWFpIDE5OTYsIDIwOjA1OjMwKToKCltNb2VyZGVyOkdlaXN0IExhdXJpbnNdIExhdXJpbiwgd2FlciBqZXR6dCBuaWNodCBlaWdlbnRsaWNoIFZvcmxlc3VuZz8KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW1hbmRhLi4uIChMb2NvLCAgMy4gTWFpIDE5OTYsIDIwOjQzOjA1KToKTG9md3lyIGt1c2NoZWx0IHNpY2ggZW50c3Bhbm50IGluIGRpZSBicmVpdGVuIFByYW5rZW4gZGVzIFNhbmR0aWdlcnMgdW5kCnNjaGxhZWZ0IGVpbi4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIExvZnd5ci4KTG9md3lyIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkFtYW5kYSBrb21tdCBpbiBlaW5lciBXb2xrZSB2b24gUGFyZnVlbSBhbi4KQW1hbmRhIHNhZ3Q6IEhhbGxvIFNhbmR0aWdlciEKQW1hbmRhIHNhZ3Q6IEhhbGxvIExvZnd5ciEKLi4uClRpZXJlLCBOZXR6dG90ZS4uLiBkaWUgbGFlc3N0IGF1Y2ggbmllbWFuZGVuIGluIFJ1aGUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbWFuZGEuLi4gKFd1cnplbCwgIDMuIE1haSAxOTk2LCAyMDo0NDo1Mik6Cn4jISBybj1Mb2NvIHJ0PTgzMTE0ODk4NQp+IyEgdGlkPTgzMTE0ODk4NQpkb2NoLi4uIGZyYXVlbiB1bmQgZXVudWNoZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCwgc29sYW5nZSBlcyBuaWNodCBjcmFzaHQgKEdyaW1tYm9ybiwgIDYuIE1haSAxOTk2LCAxODo0MDozMik6CgoiRGFzIExlYmVuIGlzdCB0ZXVlciwgYWJlciBpbSBQcmVpcyBlbnRoYWx0ZW4gaXN0IGVpbmUgUmVpc2UgdW0gZGllIFNvbm5lCmplZGVzIEphaHIuIiAoTmlra2lkKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIE1pbnV0ZSAoR3V5YnJ1c2gsICA2LiBNYWkgMTk5NiwgMTg6NDQ6MDApOgpBbm1lcmt1bmcgZnVlciBMZXV0ZSBkaWUgZXMgc29uc3QgbmljaHQgdmVyc3RlaGVuOiBEaWVzZXIgU3BydWNoIGVyaGVidCB3ZWRlcgpBbnNwcmN1aCBhdWYgdGllZmVyZSBXZWlzaGVpdCBub2NoIGF1ZiBrdWVuc3RsZXJpc2NoZW4gV2VydC4gQXVjaCBpc3QgZXIga2VpbgpCZXdlaXMgZnVyIGRpZSBVbnp1bGFlbmdsaWNoa2VpdCBkZXMgQXV0b3JzLi4uLihqZWRlbmZhbGxzIGtlaW4gYXVzcmVpY2hlbmRlcgopCgpEdSBkcnVlY2tzdCBEZWluZW4gbGV0enRlbiBQaWNrZWwgYXVzLAp1bmQgc2Nob24gYmlzdCBkdSAxOCBKYWhyZS4KCi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW1tZXIgc2Nob2VuIGZvbGdzYW0gKExhaWxhLCAgNi4gTWFpIDE5OTYsIDE5OjAyOjAzKToKCltaYXViZXJlcjpBbGluZV0gVHNjaGF1IHVuZCBzdGVyYnQgc2Nob2VuIGZsZWlzc2lnCltUb2Q6XSBFaW4gVm9keWFub3kgaGF0IGdlcmFkZSBBdXJpYW4gdW1nZWJyYWNodC4KCkRhIHNpZWh0IG1hbiBtYWwgd2llZGVyIHdpZSBmb2xnc2FtIEF1cmlhbiBpc3QuIFdhcyBBbGluZSBzYWd0IHR1dCBBdXJpYW4Kc29mb3J0LgoKTGFpbGEga2ljaGVybnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hbCB3aWVkZXIgZWluIHNwcnVlY2hsZWluIHZvbiBtaXIgKEFsYm9pbiwgIDYuIE1haSAxOTk2LCAxOToyNTowNSk6CldvcmRzIGFyZSBsaWtlIGxlYXZlczsKYW5kIHdoZXJlIHRoZXkgbW9zdCBhYm91bmQsCk11Y2ggZnJ1aXQgb2Ygc2Vuc2UKYmVuZWF0aCBpcyByYXJlbHkgZm91bmQuCiAgICAgICAgICAgICAgICAgICAgICAgQWxleGFuZGVyIFBvcGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5pY2h0cyBCZXNvbmRlcmVzIChNdXBmZWwsICA2LiBNYWkgMTk5NiwgMjA6MDI6MzQpOgpGZXVlcndlaHIgYW4gYWxsZSBNYWdpZXI6IEFlaCBrb2VubnRlIGhpZXIgZWluIEZlaGxlciBzZWluPyBIaWVyIHN0ZWh0CkZldWVyd2VociBhbiBhbGxlIE1hZ2llcjogL3Jvb20vZGVhdGgvZGVhdGhfbWFydCMxMDM5Cgoob2huZSBXb3J0ZSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipkZW5rKiAoQW5hdG9sLCAgNy4gTWFpIDE5OTYsIDAzOjU0OjMxKToKCkZvbGdlbmRlIFphdWJlcmVyIHNpbmQgZGVyemVpdCBlaW5nZWxvZ2d0OgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkxhdXJpbiBkZXIgRXJ6bWFnaXN0ZXIKQW5hdG9sIGRlciBNYWdpc3RlcgpNdXBmZWwgZGVyIEVyem1hZ2lzdGVyCkRob2pha3QgZGVyIE1laXN0ZXJhbndhZXJ0ZXIKSGFkcmEgZGVyIEFic29sdmVudApKYXJpZWwgZGVyIEthcmF0ZS1LYWVtcGZlciwgNS4gS3l1CgpKYXJpZWw/IQpOYWphLCBpY2ggbXVzcyBqYSBuaWNodCBBTExFUyB2ZXJzdGVoZW4gOy0pCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTcHJ1Y2ggZGVyIE1pbnV0ZSAoWWFudHJvLCAgNy4gTWFpIDE5OTYsIDExOjQ4OjM3KToKfiMhIHJuPUd1eWJydXNoIHJ0PTgzMTQwMTA0MAp+IyEgdGlkPTgzMTQwMTA0MAoKRnVlciBtaWNoIHN0YW5kIGRlciBTcHJ1Y2ggZGVyIFdvY2hlIGltIEtvZWxuZXIgU3RhZHRhbnplaWdlcjoKCiJXb2xsZW4gd2lyIG1hbCB3YXMgcG9zdGl2ZXMgdWViZXIgZGVuIDEuRkNLb2VsbiBzYWdlbjogU2llIHNjaGVpbmVuIGVzIGF1Y2gKZGllc2VzIEphaHIgenUgc2NoYWZmZW4sIGlyZ2VuZHdpZSBuaWNodCBhYnp1c3RlaWdlbi4gRGFzIGxpZWd0IHdvaGx3YWhyIG5pY2h0CmFuIGRlciBlaWdlbmVuIExlaXN0dW5nLCBzb25kZXJuIGRhcmFuLCBkYXNzIHNpZSBlcyBlY2h0IG1hbCB3aWVkZXIgZ2VzY2hhZmZ0CmhhYmVuLCBkcmVpIGFuZGVyZSBNYW5zY2hhZnRlbiB6dSBmaW5kZW4sIGRpZSBub2NoIHNjaGxlY2h0ZXIgc3BpZWxlbiBhbHMgc2llLgpSZXNwZWt0ISIKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBZYW50cm8sIG1laXN0IEhhaSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1ZSBBbnplaWdlbiAoUmltdXMsICA3LiBNYWkgMTk5NiwgMTQ6Mjk6MDgpOgpIYWxsbyBJaHIgIQpFdWNoIGlzdCBzaWNoZXIgc2Nob24gZGVyIG5ldWUgQW56ZWlnZW1vZHVzIGF1ZmdlZmFsbGVuLgpMZWlkZXIgaGFiZW4gbm9jaCBuaWNodCBhbGxlIE1hZ2llciBpaHJlIE1vbnN0ZXIgYW5nZXBhc3N0LgpDYWx1bSwgZGFzIGlzdCBmdWVyIGRpY2g6CgpFaW4gRWluYXJtaWdlciBQcmllc3RlciAoOCkuCkVpbiBFaW5oYXVwdCAoMikuCgpQYXNzIGRhcyBiaXR0ZSBub2NoIGFuIENhbHVtICgqZ3JpbnMqKQoKUmltdXMtIGhldXRlIG1hbCBuaWNodCBnYW56IGVybnN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWhyZSBzZWkgZGVtIFRPRCEgOikgKEd1eWJydXNoLCAgNy4gTWFpIDE5OTYsIDE3OjA4OjIyKToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBMZWNodWNrLCAgNy4gTWFpIDE5OTYsIDEzOjUzOjE4XToKdwpBdWYgZWluZXIgU3RyYXNzZSBpbSBFbGZlbmRvcmYuCkVzIGdpYnQgdmllciBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KRWluIEVsZmVud2FlY2h0ZXIuCnRvZXRlIGVsZgpEZXIgRWxmZW53YWVjaHRlciBzYWx1dGllcnQuCk9rCgpzb25zdCBuaXguLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdWNoISA6LSkgKEJhbWJ1bGtvLCAgNy4gTWFpIDE5OTYsIDE4OjIwOjA4KToKID4gYmV0ZQpTY2hydW1wZmkgaXN0IGpldHp0IGRhLiBEdSBmYWVsbHN0IHRvdCB1bSEKPiBEdSBiZWVuZGVzdCBEZWluIEdlYmV0IGFicnVwdC4KCkdydWViZWwuLi4uLi4uCgogICAgICAgICAgICAgICAgIEJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTaWVnIChHcmltbWJvcm4sICA3LiBNYWkgMTk5NiwgMTg6MzU6MDUpOgpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFF1aWxsaWFuLCAgNy4gTWFpIDE5OTYsIDE3OjA0OjAzXToKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERpZSwgIDcuIE1haSAxOTk2LCAxNzowMTo1OCAoMyBUZWlsbmVobWVyKQoKTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBRdWlsbGlhbi4uLi4uLi4ubQoKRW5kbGljaCBhdWNoIG1hbCBkZXIgZXJzdGUgLi4uIDotKQoKUQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBoYWxsbyAoR3JpbW1ib3JuLCAgNy4gTWFpIDE5OTYsIDE5OjEwOjEzKToKfiMhIHJuPUdyaW1tYm9ybiBydD04MzE0ODc3NTUKfiMhIHRpZD04Mjg4MDcyOTgKW1ZlcmxlZ3Qgdm9uIGV0aWtldHRlLCBCZWVsemVidWIsICA3LiBNYWkgMTk5NiwgMTg6NTE6MzFdOgpCZWVsemVidWIgaXN0IHN0b2x6LCBlaW4gRGVwcCB6dSBzZWluIDopCgotPiBBYiBuYWNoIFNjaG1hcnJuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IGhhbGxvIChHcmltbWJvcm4sICA3LiBNYWkgMTk5NiwgMTk6MTI6MTkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTgzMTQ4OTAxMwp+IyEgdGlkPTgyODgwNzI5OAoKSXN0IGhpZXJtaXQgZ2VzY2hlaGVuLi4uIDstKQoKR2RBCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VoZWltbmlzIGdlbHVlZnRldCEgOikgKEFsaW5lLCAgNy4gTWFpIDE5OTYsIDE5OjM1OjI4KToKCmZyYWcgc3RlaW5iZWlzc2VyIG5hY2ggenV0YXQKRGVyIFN0ZWluYmVpc3NlciBzY2hhdXQgZGljaCB2ZXJ3dW5kZXJ0IGFuIHVuZCBzZXVmenQuCj4gRGVyIFN0ZWluYmVpc3NlciBnaWJ0IERpciBkaWUgWnV0YXQuCmkKLi4uCi4uClZlcnNjaGllZGVuZXM6CiBEaWUgZ2VoZWltbmlzdm9sbGUgWnV0YXQuICAgICAgICAgICAgICBFaW5lIFJvc2UuCmlkZW50aWZpemllcmUgWnV0YXQKRGFzIEdyYW5pdHN0dWVjayBpc3QgZWluIGxlYmxvc2VzIERpbmcuCkR1IGVya2VubnN0IGJlc29uZGVyZSBFaWdlbnNjaGFmdGVuIGFuIGRlbSBHcmFuaXRzdHVlY2s6CkRpZXMgaXN0IGVpbmUgTWF0ZXJpYWxrb21wb25lbnRlIGZ1ZXIgZGllIFphdWJlcmVyZ2lsZGUuCgpBbGluZSB3ZWlzcyBlbmRsaWNoIHdhcyBkaWUgWnV0YXQgaXN0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2VoZWltbmlzIGdlbHVlZnRldCEgOikgKEFzbW9kaXMsICA3LiBNYWkgMTk5NiwgMTk6MzY6NTIpOgp+IyEgcm49QWxpbmUgcnQ9ODMxNDkwNTI4Cn4jISB0aWQ9ODMxNDkwNTI4CkRhIG11ZXNzZW4gZGllIE9ya3MgYWJlciBndXRlIFphZWhuZSBoYWJlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWxsZXMgTHVlZ2UgKE5pa29sYXVzLCAgNy4gTWFpIDE5OTYsIDIxOjA5OjU1KToKCltBbGxnZW1laW46Qmlib10gaG0sIHdhcyB3YXIgZWlnZW50bGljaCBkZXIgZ3J1bmQgZnVlciBkZW4gbGV0enRlbiBjcmFzaCA/CltNb2VyZGVyOkdlaXN0IGVpbmVzIE9ya3NdIE5pa29sYXVzIGlzdCBzY2h1bGQhCgpuZWlpaWlpaWlpbm5ubi4uLiBiZXN0aW1tdCBuaWNodC4uLiBhZWhybGljaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpkZW5rKiAoSmFyaWVsLCAgNy4gTWFpIDE5OTYsIDIxOjI5OjA5KToKfiMhIHJuPUFuYXRvbCBydD04MzE0MzQwNzEKfiMhIHRpZD04MzE0MzQwNzEKCkJpbiBoYWx0IGVpbiBBbGxyb3VuZHRhbGVudC4gOikpKSkpCgpKYXJpZWwgKG1hbCBtaXQgbmVtIFphdWJlcnN0YWIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZWxkPyAoSmFyaWVsLCAgNy4gTWFpIDE5OTYsIDIxOjM3OjEyKToKVm9yaGluIGluIFBvcnQgVmFpbjoKCkFtYW5kYSBzYWd0OiBIYWxsbyBCZXR0bGVyIQpBbWFuZGEgZ3JhYmJlbHQgYW4gZWluZW0gQmV0dGxlciBoZXJ1bS4KQW1hbmRhIHNhZ3Q6IFdpZSB3YWVycyBkZW5uIG1pdCB1bnMsIEtsZWluZXI/CkRlciBCZXR0bGVyIHNhZ3Q6IEhhc3QgRHUgbWFsIGV0d2FzIEdlbGQgZnVlciBtaWNoPwpEZXIgQmV0dGxlciBnZWh0IG5hY2ggT3N0ZW4uCgpBbHNvIGljaCBoYWV0dGUgaWhtIGdlcm5lIEdlbGQgZ2VnZWJlbiwgd2VubiBlciBuaWNoIHNvIHNjaG5lbGwgZ2VnZW5nZW4Kd2FlcmUuIFN0ZWxsdCBzaWNoIG1pciBudXIgZWluZSBGcmFnZSB3aWUgdGV1ZXIgaXN0IEFtYW5kYSBlaWdlbnRsaWNoPwoqc2NobWFycm4qCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmFzY2hrYXR6ZS4uIChTaGF5YSwgIDcuIE1haSAxOTk2LCAyMjo0MDoxMCk6CkViZW4gaW0gRWxmZW5kb3JmOgoKQXNtb2RpbmEgemllaHQgZWluZW4gSGViZWwuIFZvbSBvYmVuIHN0dWVyemVuIE1hc3NlbiB2b24gQm9uYm9ucyBoZXJ1bnRlciB1bmQKYmVncmFiZW4gRGljaCB1bnRlciBzaWNoLi4KQXNtb2RpbmEgd2lyZnQgZWluZSBvbGxlIEthbWVsbGUgbmFjaCBOb3JkZW4sIGR1IGxhZXVmc3Qgc2NobmVsbCBoaW4uCkVpbmUgR2FlcnRuZXJpbiBrb21tdCBhbi4KRGllIEdhZXJ0bmVyaW4gYnVlY2t0IHNpY2guCgpHcmluc2VuZCwgU2hheWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxlYmVuc21vdHRvIChHcmltbWJvcm4sICA4LiBNYWkgMTk5NiwgMTc6MDQ6NDkpOgoKCkljaCBoYWIgaGllciBtYWwgZWluIHBhYXIgVmVyaGFsdGVuc211c3RlciB2b24gQ2hhcmFrdGVyZW4genVzYW1tZW5nZXRyYWdlbi4KTmF0dWVybGljaCBpc3QgZGFzIGhpZXIgdG9kZXJuc3QgZ2VtZWludCwgd2VyIHNpY2ggYWxzbyBhdWYgZGVuIFNjaGxpcHMKZ2V0cmV0ZW4gZnVlaGx0IHdlbmRldCBzaWNoIGJpdHRlIGFuIGVpbmVuIEVyem1hZ2llciBzZWluZXIgV2FobCB6d2Vja3MgCm1laW5lciBCZXN0cmFmdW5nLi4uIAoKCkFuYWtpbjogSWNrIGJpbiBlaW4gQm9lcmxpbm9lciEKQW5hdG9sOiBBdWNoIHdlbm4gaWNoIG1hbCBrZWluZSBBaG51bmcgaGFiZW4gc29sbHRlOiBEaWUgbWVpc3RlbiBad2VpdGllcyBoYWIKICAgaW1tZXIgbm9jaCBpY2ghCkFzbW9kaXM6IEJpbiBiZXNjaGFlZnRpZ3QsIGJpdHRlIGJlaSBJc3NvbWFkIG1lbGRlbiEKQmVuZGVpZ2lkOiBXZW5uIER1IGVpbiBQcm9ibGVtIGhhc3Qga2FubnN0IER1IG1pY2ggcnVoaWcgdW0gUmF0IGZyYWdlbi4KQmxvb2Rnb3JlOiBOYSBlbmRsaWNoLCBtZWluIG1vZGVtIHR1KiYkLy9eQCBOTyBDQVJSSUVSCkJvaW5nOiBEYXMgaXN0IG1pciBkb2NoIHp1IGR1bW0gaGllciEKQ2F0d2VhemxlOiBXZXIgc2FndCBkZW5uLCBhbHMgRU0gZHVlcmZlIG1hbiBrZWluZW4gU3Bhc3MgaGFiZW4/IApFbmd5d3VjazogRGVyIGR1cmNoc2Nobml0dGxpY2hlIE1hbm4gZGVua3QgYWxsZSAzMCBzZWMgYW4gU2V4LiBJY2ggYmluIAogICB1ZWJlcmR1cmNoc2Nobml0dGxpY2guIApEdXJpYW46IFdpZSwgZGFzIE1HIGhhdCBzaWNoIGluIGRlbiBsZXR6dGVuIHBhYXIgSmFocmVuIHZlcmFlbmRlcnQ/IE5hLCBtaXIKICAgc29sbHMgZWdhbCBzZWluLiAKRmVsYWd1bmQ6IEljaCBiaW4gaW5kaXNrcmV0IHVuZCBzdG9seiBkYXJhdWYuIApIYXJkaWw6IEhtbSwgaGllciBtdXNzIGVzIGRvY2ggaXJnZW5kd28gbm9jaCBuZSBNb2VnbGljaGtlaXQgZ2ViZW4gZWluZW4KICAgc2lubmxvc2VuIEFydGlrZWwgenUgcG9zdGVuLCB1ZWJlciBkZW4gQm9pbmcgc2ljaCBhZXJnZXJuIGthbm4uCkhhdGU6IEljaCBmcmFnZSBtaWNoLCB3aWVzbyBpY2ggbWlyIGhpZXIgc28gZWluZSBNdWVoZSBnZWJlIG9obmUgZGFzcyBtZWluCiAgIEdlbmllIGVudHNwcmVjaGVuZCBnZXd1ZXJkaWd0IHdpcmQuCklzc29tYWQ6IEJpbiBiZXNjaGFlZnRpZywgYml0dGUgYmVpIEFzbW9kaXMgbWVsZGVuIQpKb2Y6IElkbGUgc2VpIGRlciBNZW5zY2gsIGhpbGZyZWljaCB1bmQgZ3V0LiAKS290emJyb2NrZW46IEplIGR1ZW1tZXIgZGVyIFRvZCBkZXN0byBsaWViZXIuCkxhcmlzc2E6IFNjaGFhYWFhYWFhYXR6ISAKTGk6IEloYyBmaW5kZSwgaWhyIHNvbHRldCBhbGxlIG5ldHRlciB6dWVpaG5hbmRyZSBzaWVuIQpNb3Jnb3RoOiBJY2ggaGFiIGhpZXIgZWluZSB0b3RhbCBzaW5ubG9zZSBGdW5rdGlvbiBnZXNjaHJpZWJlbiwgc2NoYXV0IG1hbDoKICAgWzIgU2VpdGVuIGNvZGVdCk11cGZlbDogQWxzbywgenUgZGVtIFRoZW1hIGdpYnRzIG5lbiBpbnRlcmVzc2FudGVuIEtvbW1lbnRhciB2b24gMTkwMiBpbiBkZXIKICAgbXVkbGliL21wYS4KT2V0dGk6IElociBzZWlkIGRvY2ggYWxsZSB0b3RhbCBzY2hlaXNzZSEgVW5kIGljaCBiaW4gbm9jaCB2aWVsIG1laHIgc2NoZWlzc2UKICAgYWxzIGloci4KT3JrdG9ldGVyOiBXZW5uIGlociBuaWNodCBuZXR0IHp1IG1laW5lbSBXb2xwaWUgc2VpZCBtYWNodCBtaWNoIGRhcyB0b3RhbCAKICAgYmV0cm9mZmVuLiAKUnluZTogRXMgZ2lidCBrZWluZW4gR3J1bmQgc2ljaCB1ZWJlciBkaWUgQXJyb2dhbnogZGVyIEVNIGF1Znp1cmVnZW4sIGF1ZiAKICAgZGVtIE11ZW5zdGVyYW5lciBTdGFtbXRpc2NoIGVyZmFlaHJ0IG1hbiBkb2NoIGFsbGVzLgpTY2hydW1wZmk6IEljaCBnZWggbWFsIGdyYWRlIGVpbmUgcmF1Y2hlbiwgaW4gZGVtIGxhZyBpc3QgZWggbmljaHRzIHp1IG1hY2hlbi4gClRvZXRlcjogSWNoIHZlcnN1Y2hlIGltbWVyIG5vY2gsIG1laW5lbiBUZXN0aWUgYXV0b2xvYWQgenUgbWFjaGVuLiBBYmVyIGRlcgogICBNaXN0a2VybCB3ZWlnZXJ0IHNpY2guClRyeWZhbiAoaW4gdm9lbGxpZ2VyIFZlcmtlbm51bmcgZGVyIFJlYWxpdGFldCk6IERhcyBoaWVyIGlzdCBlaW4gUXVlc3RtdWQsCiAgIHdhcnMgc2Nob24gaW1tZXIgdW5kIHNvbGxzIGF1Y2ggYmxlaWJlbi4KWWVuZGk6IEljaCBkZW5rZSwgYWxzbyBiaW4gaWNoLiAgICAgIApaYXJkb3o6IEljaCBoYWV0dGUgc2Nob24gbGFlbmdzdCBtZWluZSBkcml0dGUgR2lsZGUgZmVydGlnLCB3ZW5uIHNpY2ggbnVyIG1hbAogICBlbmRsaWNoIGplbWFuZCB1bSBkaWUgbm90d2VuZGlnZW4gU3lzdGVtYWVuZGVydW5nZW4ga3VlbW1lcm4gd3VlcmRlLiAKWnVlcmlsZXU6IE1laW4gUmVjaG5lciwgbWVpbiBKb2ludCB1bmQgaWNoLiBXYXMgZnVlciBlaW4gVGVhbSEKCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbGxlcyBQYXJ0aXR1ciBvZGVyIHdhcz8gKEphcmllbCwgIDguIE1haSAxOTk2LCAxNzo1ODoxNik6CgpXYWZmZW46CiBFaW4gSG9senN0YWIuICAgICAgICAgICAgIEphcmllbHMgWmF1YmVyc3RhYi4KUnVlc3R1bmdlbjoKIEVpbiBHaSAoYW5nZXpvZ2VuKS4gICAgICAgICAgICAgICAgICAgIEVpbiBibGF1ZXIgR3VlcnRlbCAoYW5nZXpvZ2VuKS4KVmVyc2NoaWVkZW5lczoKIEVpbmUgUGFydGl0dXIuICAgICAgICAgICAgICAgICAgICAgICAgIERpZSBaZWl0dW5nLgogRWluIFNpZWdlbC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgSmFyaWVscyBUZWRkeWJhZXIgTXN1cmkuCiBFaW4gZ2VsYmVzIFBvc3RwYWtldCAoZ2VvZWZmbmV0KS4gICAgICBFaW4gRnJldW5kc2NoYWZ0c2JhbmQgKGdldHJhZ2VuKS4KPiB1bnQgcGFydGl0dXIKRGllcyBpc3QgZWluZSBGYWhydGVuc2FlbmdlcnBhcnRpdHVyLgo+IHNpbmdlIHBhcnRpdHVyCkR1IGhhc3QgRG9jaCBnYXIga2VpbmUgUGFydGl0dXIuCj4gZnJhZ2UgYXJjaGl2YXIgbmFjaCBwYXJ0aXR1cgpPaCwgTW9tZW50LCBpY2ggc2VoZSBnZXJhZGUsIER1IGhhc3Qgbm9jaCBnYXIga2VpbmUgUGFydGl0dXIuLi4KSWNoIG1hY2hlIERpciBlaW5lLiBLb21tIHNwYWV0ZXIgbm9jaG1hbCB3aWVkZXIuCkRlciBBcmNoaXZhciBzYWd0OiBEdSBrYW5uc3QgYmVpIG1pciBEZWluZSBQYXJ0aXR1ciB0YXVzY2hlbi4gQWxsZXJkaW5ncyBoYWJlCmljaCBudXIgUGFydGl0dXJlbiBmdWVyIGRpZSB1bWxpZWdlbmRlbiBQcmFlc2VuemVuIHZvcnJhZXRpZy4KCkhhYiBpY2ggbnVuIGVpbmUgUGFydGl0dXIgb2RlciBuaWNoPwoKSmFyaWVsIGdydW1tZWx0IHVuZCB3YXJ0ZXQgYXVmIHNwYWV0ZXIuCioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbGJzdGZpbmR1bmcgKFJ1bWF0YSwgIDguIE1haSAxOTk2LCAyMDo0MDowNCk6CkF1cyBnZWdlYmVuZW0gQW5sYXNzIGhhYmUgaWNoIG1hbCBuYWNoZ2VzY2hhdXQsIHdlciBhbGxlcwpzaWNoIHNlYmxzdCBlcndhcnRldC4gSGVyYXVzZ2Vrb21tZW4gaXN0LCBkYXN6IGltIE1HIHNpY2ggNTIgQ2hhcmFjdGVyCm9mZmVuc2ljaHRsaWNoIGF1ZiBkZXIgU3VjaGUgbmFjaCBzaWNoIHNlbGJzdCBzaW5kLgpSVW1hdGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTZWxic3RmaW5kdW5nIChTdXNoaSwgIDguIE1haSAxOTk2LCAyMzowMDozNyk6Cn4jISBybj1SdW1hdGEgcnQ9ODMxNTgwODA0Cn4jISB0aWQ9ODMxNTgwODA0CkFjaCB3YXMgLSBTZWxic3RmaW5kdW5nISBTbyBmaW5kZXQgbWFuIHNpY2ggZWluZmFjaCBzY2huZWxsZXIgYmVpbSBrd2VyOl8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGViZW5zbW90dG8gKEFuYWtpbiwgIDkuIE1haSAxOTk2LCAwMDowOTowNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODMxNTY3ODg5Cn4jISB0aWQ9ODMxNTY3ODg5ClVuZCBkYWJlaSBiaW4gaWNoIGdhciBrZWluIEJlcmxpbmVyIDotKQoKQW5ha2luLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdGl0ZWwgenUgbGFuZz8/IChNb3Jnb3RoLCAgOS4gTWFpIDE5OTYsIDA5OjU2OjA2KToKR3VsRHVrYXQgc2FndDogRW5kbGljaCBoYXQgU3RhciBUcmVrIGF1Y2ggZGllIFVmby1MYW5kdW5nIDE5NDcgZ2VrbGFlcnQsIGRpZQpHdWxEdWthdCBzYWd0OiBkaWUgVVMtUmVnaWVydW5nIGFscyBBYnN0dXJ6IGVpbmVzIFdldHRlcmJhbGxvbnMgdmVydHVzY2hlbgpHdWxEdWthdCBzYWd0OiB3b2xsdGU6IFF1YXJrLCBSb20gdW5kIE5vZyBzaW5kIGR1cmNoIGVpbmVuIFVuZmFsbCBiZWkKR3VsRHVrYXQgc2FndDogV2FycC1HZXNjaHdpbmRpZ2tlaXQgNDAwIEphaHJlIGluIGRpZSBWZXJnYW5nZW5oZWl0IHZlcnNjaGxhZ2VuCkd1bER1a2F0IHNhZ3Q6IHdvcmRlbiB1bmQgd29sbHRlbiBkaWUgU2l0dWF0aW9uIHNvZm9ydCBhdXNudXR6ZW4gdW5kIGVpbgpHdWxEdWthdCBzYWd0OiBGZXJlbmdpLUhhbmRlbHNpbXBlcml1bSBncnVlbmRlbi4gRG9jaCBkaWUgRG9lc3BhZGRlbCBkZXIKR3VsRHVrYXQgc2FndDogQXJtZWUgdmVyc2F1dGVuIGRpZSBGaXJzdC1Db25jYXQtUHJvY2VkdXJlIHZvZWxsaWcuCkd1bER1a2F0IHNhZ3Q6Ckd1bER1a2F0IHNhZ3Q6IERlZXAgU3BhY2UgTmluZSAtIExpdHRsZSBHcmVlbiBNYW4gKG5ldHp0b3QpLgpbL21hZ2llcjpndWxkdWthdF0KCnNvZ2FyIG1pdCB0eXBvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdGl0ZWwgenUgbGFuZz8/IChHdWxkdWthdCwgIDkuIE1haSAxOTk2LCAxMDoxNzoxNik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTgzMTYyODU2Ngp+IyEgdGlkPTgzMTYyODU2NgoKb3BzLCBtZWluZSBzY2h1bGQsIHdpcmQga29ycmlnaWVydCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdGl0ZWwgenUgbGFuZz8/IChDYXJhZGhyYXMsICA5LiBNYWkgMTk5NiwgMTE6MzE6MDQpOgp+IyEgcm49R3VsZHVrYXQgcnQ9ODMxNjI5ODM2Cn4jISB0aWQ9ODMxNjI4NTY2Ckd1bGRpZSBpcyBtaXIgc3ltcGF0aGlzY2ggOikKCkxlaXNlcyBSYXVzY2hlbiBkcmluZ3QgYW4gRGVpbiBPaHIuIFN1ZWRsaWNoIHZvbiBEaXIgZnVlaHJ0IGVpbiBXZWcgd2VpdGVyIGFuCmRlbSBTZWUgdm9yYmVpIHVlYmVyIGVpbmVuIEFiZ3J1bmQuIERvcnQgc3R1ZXJ6dCBhdWNoIGVpbiBXYXNzZXJmYWxsIGluIGRpZQpUaWVmZS4gRGVyIFdlZyBmdWVocnQgYXVjaCBuYWNoIE5vcmRvc3RlbiB3ZWl0ZXIgenUgZWluZW0gQmFjaCwgZGVyIGF1cwpSaWNodHVuZyBOb3JkZW4gdm9tIGdyYXVzYW1lbiBDYXJhZGhyYXMgaGVydW50ZXJnZWZsb3NzZW4ga29tbXQuIEVpbiBzY2htYWxlcgpQZmFkIGZ1ZWhydCBuYWNoIE5vcmR3ZXN0ZW4gaW4gZGllIEhvZWhlLiBEdSBrYW5uc3QgbmljaHQgZXJrZW5uZW4sIHdvIGVyCmRhbmFjaCBoaW5mdWVocnQuIEVyIHZlcnNjaHdpbmRldCBpbiBkZW4gSHVlZ2VsbiB1ZWJlciBkZW0gVGFsIHN1ZWRsaWNoLCB1ZWJlcgpkYXMgRHUgdm9uIGhpZXIgZWluZSBndXRlIEF1c3NpY2h0IGhhc3QuIE5hY2ggU3VlZG9zdGVuIHVuZCBPc3RlbiBnZWh0IGVzIGluCmVpbmVuIFNlZS4gSGludGVyIGRlbSBTZWUgbGllZ3QgZWluIHJpZXNpZ2VyIEJlcmcuIEF1Y2ggdmVybWVpbnN0IER1LCB2b3IKc2VpbmVyIEJlcmdmbGFua2UgZWluZW4gV2VnIHZlcmxhdWZlbiB6dSBzZWhlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZ2llciEgKFJhZmZpLCAgOS4gTWFpIDE5OTYsIDEyOjM0OjI3KToKClRvcmZkdWVuZyBydWZ0OiBTQ0hSVU1QRkkgSSBXQVJUIEFVRiBESUVSCkRpZSBIZXhlIG11cm1lbHQgZWluIHBhYXIgdW52ZXJzdGFlbmRsaWNoZSBaYXViZXJzcHJ1ZWNoZS4KRGllIEhleGUgc2NoYXV0IERpY2ggdmVyYWVjaHRsaWNoIGFuLgoKCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdGl0ZWwgenUgbGFuZz8/IChBc21vZGlzLCAgOS4gTWFpIDE5OTYsIDE5OjAzOjAyKToKfiMhIHJuPU1vcmdvdGggcnQ9ODMxNjI4NTY2Cn4jISB0aWQ9ODMxNjI4NTY2CkhtbSwgaGF0IG5pY2h0IGVpbiBOYWNoa29tbWUgdm9uIGlobmVuIGRpZSBNY0RvbmFsZHMtS2V0dGUgZ2VncnVlbmRldCA/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLZWluZXIgbWFnIG1pY2ggLSBOdXIgaWNoIG1hZyBtaWNoISAoUmFmZmksICA5LiBNYWkgMTk5NiwgMTk6MjI6MDUpOgoKPiBiaWV0ZSByYWZmaSBmcmV1bmRzY2hhZnQgYW4KUmFmZmkgYmlldGV0IERpciBGcmV1bmRzY2hhZnQgYW4uCkR1IGJpZXRlc3QgUmFmZmkgZGVpbmUgRnJldW5kc2NoYWZ0IGFuLgo+ICYmCltiaWV0ZSByYWZmaSBmcmV1bmRzY2hhZnQgYW5dCkR1IGJpc3QgbnVuIEZyZXVuZCB2b24gUmFmZmkuCkRpZSBGcmV1bmRzY2hhZnQgaXN0IG51biBmcmlzY2ggZ2VzdGFlcmt0Lgo+IGZ3ZXIgb3J0CkRpZWRlciAtIERpZSBzY2hhZWJpZ2UgS25laXBlIGRlciBDaGFvdGVuCk1hZ2ljb2xsaSAtIEltIElubmVuaG9mIGVpbmVzIEdlYmFldWRlcwpNaWNybyAtIEthcGVsbGUKTmlnaHRtYXJlIC0gRWluZSB1bmhlaW1saWNoZSBHcnVmdApSYWZmaSAtIERhcyBEb3JmIGF1ZiBTaGFreSBJc2xhbmQKVHdlZWcgLSBSYXVtIGRlcyBLb21tYW5kb2Z1ZWhyZXJzClVsdWxhIC0gRGVyIEdsb2NrZW53YWxkCj4gZmtudWRkZWwKRGVpbiBGcmV1bmQgUmFmZmkga251ZGRlbHQgRGljaC4KRHUga251ZGRlbHN0IGRlaW5lIEZyZXVuZGUuCgpEZXIgU3RlaW5iZWlzc2VyIHZlcnNjaHdpbmRldCB3aWVkZXIsIHVuZCBEdSB3YWNoc3QgaW4gZWluZXIgYW5kZXJlbiBXZWx0IGF1Zi4KCldpZSBoZWlzc3QgRHUgZGVubiA/IHJhZmZpClNjaG9lbiwgZGFzcyBEdSB3aWVkZXIgZGEgYmlzdCwgUmFmZmkhClBhc3N3b3JkOgpEdSBuaW1tc3Qgc2Nob24gYW0gU3BpZWwgdGVpbCEKVmVyd2VuZGUgRGVpbmUgYWx0ZSBzdGVyYmxpY2hlIEh1ZWxsZSAuLi4KSXJnZW5kd2FzIGlzdCBtaXQgZGVyIEZyZXVuZHNjaGFmdCB6dSBSYWZmaSB2b3JnZWZhbGxlbi4KRGllZGVyLCBGYW50YWJveSwgTWFnaWNvbGxpLCBOaWdodG1hcmUsIFR3ZWVnLCBNZXRhLCBNaWNybyB1bmQgVWx1bGEgc2luZCBpbQpTcGllbC4KRGFzIERvcmYgYXVmIFNoYWt5IElzbGFuZC4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4sIHdlc3RlbiB1bmQgbm9yZGVuLgoKU28gZWluIEZyZXVuZHNjaGFmdHNiYW5kIGlzdCBzY2hvbiBuZSBrb21pc3NjaGUgc2FjaGUgOikKCkdyaW5zCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppY2ggYXVjaC4uLiAoRnl0LCAgOS4gTWFpIDE5OTYsIDIwOjU3OjIwKToKU28sIGRhIGhhYiBpY2ggZ2xlaWNoIGRpZSByaWNodGlnZSBSdWJyaWsgZXJ3aXNjaHQ6CgpDYXJhIGhhdCBpbiBzZWluZW0gQXJ0aWtlbCBpbiAnYWxsZ2VtZWluZXMnIHZvbGxrb21tZW4gcmVjaHQsCmhpZXJ6dWxhbmRlIGdpYnQgZXMgc292aWVsZXMsIHdhcyBuaXggbWl0IFJvbGxlbnNwaWVsZW4genUgdHVuIGhhdCwKZGFzcyBlcyBlaWdlbnRsaWNoIG5pY2h0IGlucyBHZXdpY2h0IGZhZWxsdCwgd2VubiBtYW4gZWluZQpLbGVpbmlna2VpdCB2ZXJhZW5kZXJ0LCBpbSBHZWdlbnRlaWwsIGRhIGVzIHdpZWRlcm1hbCBlaW5lIGRpZXNlcgonbmVnYXRpdmVuJyBBZW5kZXJ1bmdlbiB3YXIsIGlzdCBkYXMgZ2FuemUgYXVzZ2VzcHJvY2hlbgprb250cmFwcm9kdWt0aXYuIFNwaWVsZXIsIGRpZSBtb3R6ZW4sIHNpbmQgc2VsdGVuIGd1dGUgUm9sbGVuc3BpZWxlci4KCkZ5dC4KCkRhcyBQUyB1ZWJlcm5laG0gaWNoIGVpbmZhY2ggdm9uIENhcmE6CgpQUzogRXMgc29sbHRlbiBzaWNoIG51ciBkaWUgYW5nZXNwcm9jaGVuIGZ1ZWhsZW4sIGRpZSBhdWNoIHdpcmtsaWNoCmZ1ZXIgZGFzIGdlYWVuZGVydGUgJ2VuZGUnIHZlcmFudHdvcnRsaWNoIHNpbmQsIHdhcyBtZWluZXIgTWVpbnVuZwpuYWNoIC8qIHplbnNpZXJ0ICovIHdhciAoa2VpbiBwb3NpdGl2ZXIgQXVzZHJ1Y2spLCBvYndvaGwgZXMgbWlyCnRoZW9mYW50aXNjaCBlZ2FsIHNlaW4ga2FubiwgZGEgaWNoIGhpZXIgc293aWVzbyBuaWNodCBtZWhyIHNwaWVsZQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaWNoIGF1Y2guLi4gKEFzbW9kaXMsICA5LiBNYWkgMTk5NiwgMjE6MjI6NDQpOgp+IyEgcm49Rnl0IHJ0PTgzMTY2ODI0MAp+IyEgdGlkPTgzMTY2ODI0MApMdXN0aWcsIHdpZSBzaWNoIGpldHp0IGRpZSBLYXJhdGVrYXMgcmVpaGVud2Vpc2UgYXVmcmVnZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuIChBc21vZGlzLCAxMC4gTWFpIDE5OTYsIDAxOjU5OjU3KToKR2VyYWRlIGdlc2VoZW46CgpbTW9lcmRlcjpHZWlzdCBIRUxMT1dFRU5zXSBJbiBzcGFldGVzdGVucyBlaW5lciBTdHVuZGUga29tbWUgaWNoIHdpZWRlciwKW01vZXJkZXI6R2Vpc3QgSEVMTE9XRUVOc10gSEVMTE9XRUVOIQoKSGVpc3N0IGRhcywgZXIgc3RpcmJ0IGlubmVyaGFsYiBlaW5lciBTdHVuZGUgPyA6KQoKUC5TLjogTmFqYSwgZXIgaXN0IFphdWJlcmVyLCBkYSB3YWVyZSBkYXMgbm9ybWFsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2NobWFycm4gKEFzbW9kaXMsIDEwLiBNYWkgMTk5NiwgMDI6MDA6MjYpOgp+IyEgcm49QXNtb2RpcyBydD04MzE2ODYzOTcKfiMhIHRpZD04MzE2ODYzOTcKS3VyeiBkYW5hY2g6CgpbTW9lcmRlcjpHZWlzdCBIRUxMT1dFRU5zXSBTaGVyaWZmISBWZXJoYWZ0ZSBIRUxMT1dFRU4hCgpKZXR6dCB6ZWlnZW4gc2ljaCBkaWUgU3BpZWxlciBzY2hvbiBzZWxic3QgYW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVuZGUgb2huZSBlbmRlIChIYWRyYSwgMTAuIE1haSAxOTk2LCAwNzoyMzoxNCk6CmFsb3NvIGRpZSBzYWNoZSBtaXQgZGVtIGVuZGUgbXVzc3RlIGljaCBkb2NoIGF1Y2ggbWFsIHRlc3RlbiB1bmQgZGFubgpwYXNzaWVydGUgZGFzOgoKU3BlaWNoZXJlIEhhZHJhLgpCaXMgYmFsZCEKRHUgemllaHN0IGRhcyBlaXNlcm5lciBXaWxsZSBhdXMuCkNsb3NpbmcgZG93bi4KCmhhZHJhIC0gd2lsbGVubG9zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcGlvbmUgOykpIChMYWlsYSwgMTAuIE1haSAxOTk2LCAxMDowNDo1OSk6CkZvbGdlbmRlIFphdWJlcmVyIHNpbmQgZGVyemVpdCBlaW5nZWxvZ2d0OgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkxpIGRlciBFcnptYWdpc3RlcgpBdXJpYW4gZGllIE1hZ2lzdHJhCkRob2pha3QgZGVyIE1laXN0ZXJhbndhZXJ0ZXIKU251Z2dsZSBkZXIgTWVpc3RlcmFud2FlcnRlcgpBbGluZSBkaWUgTWVpc3RlcmFud2FlcnRlcmluClJhbWJvcm9sbGUgZGVyIE1laXN0ZXJhbndhZXJ0ZXIKU2hheWEgZGllIEFkZXB0aW4KTGFpbGEgZGllIEFic29sdmVudGluCk1vcmdvdGggZGVyIE9iZXJjaGFvdApeXl5eXl5eXl5eXl5eXl5eXl5eICBKYSBKYSwgamV0enQgc2NobXVnZ2VsbiBzaWNoIHNjaG9uIENoYW90ZW4tTWFnaWVyfnIKICAgICAgICAgICAgICAgICAgICAgICBpbiBkaWUgWmF1YmVyZXJnaWxkZSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGFzIG11c3MgbGllYmUgc2VpbiAoTW9yZ290aCwgMTAuIE1haSAxOTk2LCAxMTozODoyNyk6CldhcmdvbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKQWxpbmUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmxpZWJlIGRpZSB6d2VpdGUgKE1vcmdvdGgsIDEwLiBNYWkgMTk5NiwgMTI6MTc6MzQpOgo+V2FyZ29uICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRlaW5lIEZyZXVuZGluIEFsaW5lIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KQWxpbmUgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQaHlnb3MgKEFjcmltb24sIDEwLiBNYWkgMTk5NiwgMTU6NDQ6MzYpOgoKUGh5Z29zIHZlcnd1c2NoZWx0IERlaW5lIEhhYXJlLgpQaHlnb3Mgc2FndDogbXVzcyBub2NoIHdhcyBrYXJhdGUgdWViZW4gICAgYmlzIGRhbm4KUGh5Z29zIHdpbmt0LgpQaHlnb3MgdmVyc3VjaHQgZGllIEJPTUJFIHp1IGVudHNjaGFlcmZlbi4uLi4uLkJBQUJVTU1NLi4gbmFqYSBlciBoYXRgcyAKdmVyc3VjaHQuLgpIb2NoIHVlYmVyIGRlbiBCYXVtd2lwZmVsbiBmbGllZ3QgZWluIFJhYmUgaW4gc2VsdHNhbSBhbm11dGVuZGVtIFppY2t6YWNrCnVtaGVyLgoKSXMgd29obCBuaXggbWl0IEthcmF0ZS1VZWJlbiA6LSkKCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGEgd2lyZCBzZWluIEhldWxlbiB1bmQgWmFlaG5la2xhcHBlcm4uLi4gKEFuYXRvbCwgMTAuIE1haSAxOTk2LCAyMzo0Mjo0Mik6CgoKW0FsbGdlbWVpbjpDYXR3ZWF6bGUgaGF0IGpldHp0IGVpbiBNb2RlbSA6KV0KW0FsbGdlbWVpbjpHdXlicnVzaF0gaWhoCltBbGxnZW1laW46QXNtb2Rpc10gQ2F0KiBzY3JpcHRldCA6KQpbQWxsZ2VtZWluOldpbGxvd10gYWNoIGR1IHNjaGVpc3NlCltBbGxnZW1laW46THVnXSBBaGhoaGguLi4KW0FsbGdlbWVpbjpBbmF0b2xdIHd1dXV1YWgKW0FsbGdlbWVpbjpHdXlicnVzaF0gamV0enQgaXMgbWFuIG5pY2htYWwgbWVociBuYWNodHMgdm9yIGRlbSBzaWNoZXIKCkhtbW1qYQoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFdHdhcyBTdGF0aXN0aWsgKEFzbW9kaXMsIDExLiBNYWkgMTk5NiwgMDI6MDM6NDkpOgpJY2ggaGFiZSBtYWwgbWVpbmUgSWdub3JpZXJlLUxpc3RlIGR1cmNoZm9yc3RldCB1bmQgbmFjaCBIZXJrdW5mdHNvcnRlbgphdWZnZXRlaWx0OgoKRXMgd2FyZW4gLi4uCgoxNSBhdXMgRHJlc2Rlbgo4ICBhdXMgRXNzZW4KNiAgYXVzIE1hcmJ1cmcKNiAgYXVzIEtvZWxuCjMgIGF1cyBqZXdlaWxzIEJlcmxpbiwgTGlueiwgT3NuYWJydWVjawoyICBhdXMgamV3ZWlscyBXdXBwZXJ0YWwsIEtpZWwsIERvcnRtdW5kLCBMZWlwemlnLCBNaXR0d2VpZGEsIFR1ZWJpbmdlbiwKICAgICAgICAgICAgICAgQnJhdW5zY2h3ZWlnLCBEdWVzc2VsZG9yZiwgVWxtCjEgIGF1cyBqZXdlaWxzIFNhYXJicnVlY2tlbiwgTXVlbmNoZW4sIFN0dXR0Z2FydCwgQ2hlbW5pdHosIEJvbm4sIFdpZW4sCiAgICAgICAgICAgICAgIEx1ZW5lYnVyZywgR2llc3NlbiwgUGFkZXJib3JuLCBCaWVsZWZlbGQsIEJvY2h1bSwgSmVuYQogICAgICAgICAgICAgICB1bmQgS2Fpc2Vyc2xhdXRlcm4gKG5laW4sIGtlaW4gWndlaXRpIHZvbiBtaXIpCgoxNyBrYW1lbiBhdXMgbmljaHQgbmFlaGVyIGRlZmluaWVydGVuIE9ydGVuLCB3aWUgRGV1dHNjaGxhbmQsIE9lc3RlcnJlaWNoCiAgIG9kZXIgZWluZmFjaCA/Pz8KCgpEaWUgS3JpdGVyaWVuIGZ1ZXIgQXVmbmFobWUgaW4gZGllc2UgTGlzdGUgZXJmdWVsbHQgaGF0dGUgbWFuLCB3ZW5uIG1hbgptZWhyZmFjaCAKbWFzc2l2IGF1ZiBkZW4gS2FuYWVsZW4gZ2VzdG9lcnQgaGF0dGUsIG9kZXIgenUgbWljaCBuYWNoIEtvbXBsZXR0bG9lc3VuZ2VuCm9kZXIKWlQtTGlzdGVuIGdlZnJhZ3QgaGF0LCBvZGVyIG1pY2ggcGVyc29lbmxpY2ggbWFzc2l2IGdlc3RvZXJ0IGhhdAoKQWggamEsIGluc2dlc2FtdCBzaW5kIGVzIDk4IDopCgpDaWFvLCBiaXMgenUgbmFlY2hzdGVuIFphZWhsdW5nLCBBc21vZGlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRXR3YXMgU3RhdGlzdGlrIChNdXBmZWwsIDExLiBNYWkgMTk5NiwgMDI6NDM6MDcpOgp+IyEgcm49QXNtb2RpcyBydD04MzE3NzMwMjkKfiMhIHRpZD04MzE3NzMwMjkKTmEgdG9sbC4uLgoKQW0gRW5kZSBzaW5kIGRpZSBiZWlkZW4gbGFlbmdzdGVuIFNhdmVmaWxlcyBkYXMgdm9uIEFzbW9kaXMgdW5kIGRhcyB2b24KQ2FyYWRocmFzLiBEYXMgdm9uIEFzbW9kaXMgd2VnZW4gZGVyIGlnbm9yaWVyZS1MaXN0ZSB1bmQgZGFzIHZvbiBDYXJhZGhyYXMKd2VnZW4gZGVyIHZpZWxlbiBhbGlzLi4uIDotKQoKLW11cGZlbC0gKGxhZXNzdCBzaWNoIG5pY2h0IGlnbm9yaWVyZW4uLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGEgd2lyZCBzZWluIEhldWxlbiB1bmQgWmFlaG5la2xhcHBlcm4uLi4gKEd1bGR1a2F0LCAxMS4gTWFpIDE5OTYsIDA5OjIwOjAzKToKfiMhIHJuPUFuYXRvbCBydD04MzE3NjQ1NjIKfiMhIHRpZD04MzE3NjQ1NjIKCkphdSwgbWl0IGxlc2VmYWxsZSBmdWVyIG1pY2ghCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRXR3YXMgU3RhdGlzdGlrIChUZXJyb3Jpc3QsIDExLiBNYWkgMTk5NiwgMTI6NTI6MDUpOgp+IyEgcm49QXNtb2RpcyBydD04MzE3NzMwMjkKfiMhIHRpZD04MzE3NzMwMjkKCkNvbGwgYW0gYmVzdGVuIHdpciBtYWNoZW4gZWluZW4gV0V0dGJld2VyYiB3ZXIgYW0gbWVpc3RlbiBpZ25vcmllcnQgd2lyZC4KClRlcnJvcmlzdCBob2ZmdCBhdWYgZWluZW4gUGxhdHogdW50ZXIgZGVuIFRvcCBUZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hpem9waHJlbj8hPyAoQXJkYW5hLCAxMS4gTWFpIDE5OTYsIDE3OjM4OjU1KToKPiBydW1hcm1lIEFyZGFuYQotPiBBYmVyIGRpZXNlciBTcGllbGVyIHN0ZWh0IGRvY2ggbmViZW4gRGlyIQoKQWhqYS4uLiBBcmRhbmEsIAogICAgICAgICAgICAgICAgICBzdGF1bmVuZCB1bmQgb2ZmZW5zaWNodGxpY2ggbmViZW4gc2ljaCBzdGVoZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEV0d2FzIFN0YXRpc3RpayAoQ2FyYWRocmFzLCAxMS4gTWFpIDE5OTYsIDIwOjEzOjQ3KToKfiMhIHJuPU11cGZlbCBydD04MzE3NzUzODcKfiMhIHRpZD04MzE3NzMwMjkKV2llPyA6KSBpY2ggaGFiIGRvY2ggbnVyIGtuYXBwIDUwMCBhbGlzLCB3ZWlsIGljaCBhbGktcmVjeWNsaW5nIGJldHJlaWJlLAppbW1lciB3aWVkZXIgbmV1ZSBhbGlzIHVlYmVyIGRpZSBhbHRlbiAodmVyYnJhdWNodGVuKSBkcnVlYmVyc2NocmVpYmUuCgpBbHNvIG1laW4gcGxheWVyZmlsZSBpc3QgYmVzdGlpaWlpbW1tdCBuaWNoIGRhcyBncm9lc3N0ZS4gOikKCiAgICAgYWxpJyA9IGsgKiBhbGk7IGsgPD0gMCAoUFQxLUdsaWVkKQoKICAgICAgICAgQ2FyYWRocmFzIC0gYXUgd2VpYSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVybGluPyAoQ2FyYWRocmFzLCAxMS4gTWFpIDE5OTYsIDIzOjMzOjM2KToKUmVjb24gcnVmdDogVkVSREFNTVQgU0NIRUlTU0UgISEhISEhISEhISEKPiBNZXJsaW4gcnVmdDogSWNoIGhhYiBtaWNoIHZlcmxhdWZlbiAtIGljaCBzY2hhZXR6ZSwgVmlwZXIgaGF0IHdhcyBkYW1pdCB6dQp0dW4uLi4KCiAgIE9oYSwgZnVlaGx0IHNpY2ggamVtYW5kIGFuZ2VzcHJvY2hlbgoKICAgICAgICAgICAgIENhcmFkaHJhcyBtdXJtZWx0IHdhcyB2b24gJ01hZ2llci4uLiEnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYW1wZi1Wb2dlbCAoQXNtb2RpcywgMTIuIE1haSAxOTk2LCAwMzoyMDo1Nyk6CmdlcmFkZSBlYmVuIGdlc2VoZW46CgotPnVudCBwYXBhZ2VpCkRlciBQYXBhZ2VpIGhhdCBzZWhyIGZhcmJlbmZyb2hlLCBsYW5nZSBGZWRlcm4gdW5kIGRpZSB2ZXJibHVlZmZlbmRlIApGYWVoaWdrZWl0IGluIGVsZmlzY2hlciBTcHJhY2hlIHp1IHNwcmVjaGVuLgpFciBpc3QgYWJzb2x1dCBmaXQuCkVyIHRyYWVndCBiZWkgc2ljaDoKNDAxIE11ZW56ZW4uICAgICAgICAgICAgICAgICAgICAgICAgICAgRWluIGVsZmlzY2hlcyBMYW5nc2Nod2VydC4gKDIpCkVpbiBncm9zc2VyIFNjaGlsZCAoYW5nZXpvZ2VuKS4gICAgICAgIEVpbiBFbGZlbnBhbnplci4KRWluIEVsZmVucGFuemVyIChhbmdlem9nZW4pLiAoMikgICAgICAgRWluIGdyb3NzZXIgU2NoaWxkLiAoMikKRWluIGVsZmlzY2hlcyBMYW5nc2Nod2VydCAoZ2V6dWVja3QpLiAgCgoKCm5pY2h0IHNjaGxlY2h0IGJlc3R1ZWNrdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthbXBmLVZvZ2VsIChBc21vZGlzLCAxMi4gTWFpIDE5OTYsIDAzOjM1OjAyKToKfiMhIHJuPUFzbW9kaXMgcnQ9ODMxODY0MDU3Cn4jISB0aWQ9ODMxODY0MDU3CkthbXBmLVZvZ2VsIGRpZSBad2VpdGUKCi0+dW50IHBhcGFnZWkgCkRlciBQYXBhZ2VpIGhhdCBzZWhyIGZhcmJlbmZyb2hlLCBsYW5nZSBGZWRlcm4gdW5kIGRpZSB2ZXJibHVlZmZlbmRlIApGYWVoaWdrZWl0IGluIGVsZmlzY2hlciBTcHJhY2hlIHp1IHNwcmVjaGVuLgpFciBpc3QgYWJzb2x1dCBmaXQuCkVyIHRyYWVndCBiZWkgc2ljaDoKRWluIGVsZmlzY2hlcyBMYW5nc2Nod2VydC4gKDQpICAgICAgICAgOTAxIE11ZW56ZW4uCkVpbiBFbGZlbnBhbnplciAoYW5nZXpvZ2VuKS4gKDQpICAgICAgIEVpbiBlbGZpc2NoZXMgTGFuZ3NjaHdlcnQgKGdlenVlY2t0KS4KRWluIGdyb3NzZXIgU2NoaWxkIChhbmdlem9nZW4pLiAoMikgICAgRWluIEVsZmVucGFuemVyLgpFaW4gZ3Jvc3NlciBTY2hpbGQuICgzKSAgICAgICAgICAgICAgICAKCgpIbW0sIGthbm4gbWFuIG5ldWVyZGluZ3MgZGllIFBhbnplciB1ZWJlcmVpbmFuZGVyIGFuemllaGVuID8KVW5kIHdlciBoYXQgZGVtIFBhcGFnZWkgS3JhZnRmdXR0ZXIgZ2VnZWJlbiA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFdHdhcyBTdGF0aXN0aWsgKFBhbXBlcnMsIDEzLiBNYWkgMTk5NiwgMTE6NDg6NDApOgp+IyEgcm49Q2FyYWRocmFzIHJ0PTgzMTgzODQyNwp+IyEgdGlkPTgzMTc3MzAyOQpBbHNvIGRhcyBQbGF5ZXJmaWxlIHZvbiBBbmF0b2wgaXN0IG5vY2ggMTAgayBncm9lc3NlciBhbHMgRGVpbnMsIENhcmEqIDopKQpQYW1wZXJzLiBIYXR0ZSBtYWwgd2llZGVyIG5peCB6dSB0dW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWVzZSBCaWVyc2NodWV0dGxlciAoS2FyYXRla2lkLCAxMy4gTWFpIDE5OTYsIDExOjUzOjQ0KToKCkRhcyBQYXJ0eW1vbnN0ZXIgcnVmdDogUmF0YXpvbmcgc3BlbmRpZXJ0IEZSRUlCSUVSIQpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKCnZlcnNvZmZlbmVzIFZvbGssIGpldHp0IHJlbm5lbiBhbGxlIGhpbiA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDEzLiBNYWkgMTk5NiwgMTU6MDk6NTEpOgoKSGV1dGUgc2Nob24gbWFsIGFtIE1vbnRhZzoKCiJEaWUgVGllZmUgZGVzIFdlbHRyYXVtcyBpc3QgdW5zIGJlc3NlciBiZWthbm50IGFscyBkaWUgVGllZmUgdW5zZXJlciBlaWdlbmVuClNlZWxlbi4iIChDLkcuIEp1bmcpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp3ZXJnZW5tYW5uIChHYW5kbywgMTMuIE1haSAxOTk2LCAxNjo0Njo1OSk6CmVyc2NoYWZmZSBtIEthbXBmc2Nod2VydApEaWUgYnJpbmd0IGVpbmUgSWxsdXNpb24gZWluZXMgS2FtcGZzY2h3ZXJ0ZXMgaGVydm9yIC4uLgpEYW5uIGltIFp3ZXJnZW5sYWRlbjoKdmVya2F1ZmUgS2FtcGZzY2hlcnQKVHV0IG1pciBsZWlkLCBlaW4gS2FtcGZzY2h3ZXJ0IGhhdCBrZWluZW4gTWF0ZXJpZWxsZW4gV2VydC4KOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbiBpY2ggc28gc2NocmVja2xpY2ggPyAoTW9yZ290aCwgMTQuIE1haSAxOTk2LCAwNzozOTo0OSk6Cj5HYXN0MSBiZXRyaXR0IGRpZXNlIFdlbHQuCkR1IHNhZ3N0OiBoaQpbZmluZ2VyIGdhc3QxXQpHYXN0MSBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogaHBwb29sMTkucnoudW5pLWxlaXB6aWcuZGUgKDEzOS4xOC4xMS44KSBbTGVpcHppZ10uClZvbGxlciBOYW1lOiBHYXN0MSBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyClJhc3NlOiA8a2VpbmU+LCAgR2lsZGU6IEFiZW50ZXVyZXIsICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKQWx0ZXI6IDAwOjAwOjA2LCAgIFNwaWVsZXJsZXZlbDogMQpFLU1haWwtQWRyZXNzZToKPkdhc3QxIHZlcmxhZXNzdCBkaWVzZSBXZWx0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBpbiBpY2ggc28gc2NocmVja2xpY2ggPyAoTWFyaXRhLCAxNC4gTWFpIDE5OTYsIDA3OjQxOjUxKToKfiMhIHJuPU1vcmdvdGggcnQ9ODMyMDUyMzg5Cn4jISB0aWQ9ODMyMDUyMzg5CjYgU2VrdW5kZW4gYWx0PyBNZW5zY2ggTW9yZ290aCwgRGVpbiBTay4uLi4uLnJ1ZiBzY2hlaW50IHNpY2ggamEKaW56d2lzY2hlbiBWRVJEQU1NVCBzY2huZWxsIHJ1bXp1c3ByZWNoZW4hICh2b24gd2VnZW4gTmV0bGFnLi4uKSA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlYnVnLUthbmFsIChTaWx2YW5hLCAxNC4gTWFpIDE5OTYsIDA4OjI5OjQ2KToKW0RlYnVnOl0KcGxheWVycy9lbGZpZS9tb24vdGVzdC9tb24vc3lzL3N0ZC9zdGQvbGl2aW5nL2xpdmluZy9saXZpbmcvbGl2aW5nL3N0W0RlYnVnOl0KZC9saXZpbmcvZnVjaHMuYwpbRGVidWc6XSBwbGF5ZXJzL2VsZmllL21vbi90ZXN0L21vbi9zeXMvc3RkL3N0ZC9saXZpbmcvbGl2aW5nL2xpdmluZy9saXZpbmcvc3QKW0RlYnVnOl0gZC9saXZpbmcvZnVjaHMgNiBCYWQgYXJndW1lbnQgMSB0byBjYWxsX290aGVyKCkKCldhcyBmdWVyIGVpbiBGaWxlbmFtZS4uLi4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWwgd2llZGVyIGRpZSBnZWxpZWJ0ZW4gRmVobGVybWVsZHVuZ2VuIChaYXJkb3osIDE0LiBNYWkgMTk5NiwgMTM6Mjk6MDQpOgpNYWwgbmUgbmV0dGUsIGtsZWluZSBMaXN0ZSBkZXIgRmVobGVybWVsZHVuZ2VuLi4uIG5hdHVlcmxpY2ggdW52b2xsc3RhZW5kaWcsCmRhIG51ciBlaW5nZWxvZ2d0ZSBTcGllbGVyIGJlcnVlY2tzaWNodGlndCB3dXJkZW4uLi4KCkphc3BlciAgICAgICA6ICBXaWUgYml0dGU/ClphcmRveiAgICAgICA6ICBKb2YgZW50c2NodWxkaWd0IHNpY2ggYmVpIERpci4KTGkgICAgICAgICAgIDogIElESU9UISBEQVMgV0FSIEZBTFNDSCEKTmlnaHRtYXJlICAgIDogIEZhbHNjaGUgRWluZ2FiZSAhISEKQW5ha2luICAgICAgIDogIFtEZWJ1ZzpdIFJFTkVXSU5HIHN0ZC9zaGVsbHMvZHdhcmYjNzI2MzcgZHdhcmY6YW5ha2luCktvdHpicm9ja2VuICA6ICAuLi5pbnMgS25pZSwgQmFieS4KTW9zaCAgICAgICAgIDogIEhhZWghPwpCZW5kZWlnaWQgICAgOiAgV2llZGVyIG5peC4uLi4KTWFuZ28gICAgICAgIDogIE1laW5zdCBEdSBya251ZGRlbCBqYXNwZXIKVmFuaXIgICAgICAgIDogIEdBTlogRkFMU0NIISEKVHp1aW9wICAgICAgIDogIERBUyBHRUhUIE5JQ0hUICEhClRheiAgICAgICAgICA6ICBbRGVidWc6XSAhPHRhej4gPGxhbWJkYSAweDdiMDM2M2RlPiBtYWdpZXI6dGF6IDEgRmFpbGVkIHRvIGxvYWQKICAgICAgICAgICAgICBmaWxlLgpaZXBoeXIgICAgICAgOiAgUHJvYmllciBtYWwgd2FzIGFuZGVyZXMgOikKTWFyY3VzeiAgICAgIDogIFNISVQhIERhIHdhciBkb2NoIHdhcyBmYWxzY2guCkVhcmVuZGlsICAgICA6ICBOYSBzb3dhcywgd2llIGthbm4gZGVubiBkYXMgc2Vpbj8KUGh5Z29zICAgICAgIDogIFNvIHdpcmQgZGF0IG5peApPZXR0aSAgICAgICAgOiAgTnVkZ2UsIE51ZGdlLCBrbm93IHdoYXQgSSBtZWFuID8KRmlwcHMgICAgICAgIDogIFRTQ0hJSUVFRUVFUFAhIQpZYW50cm8gICAgICAgOiAgMiB3cm9uZ3MgZGlkbid0IG1ha2UgYSByaWdodCwgYnV0IHRoZXkgbWFrZSBtZSBmZWVsIGEgd2hvbGUgbG90CiAgICAgICAgICAgICAgYmV0dGVyIDspCkhpZ2hsYW5kZXIgICA6ICBIYWVoPwpXYXJnb24gICAgICAgOiAgV2F0dCwgd2F0dCwgd2F0dD8KSmFuaWNlICAgICAgIDogIE1pciBzY2hlaW50LCBEdSBiaXN0IGltIGZhbHNjaGVuIE11ZApUcnlmYW4gICAgICAgOiAgSmFqYSwgJ3R5cG8nLCBkYXMgc2Fnc3QgRHUgaW1tZXIhCkthZmthICAgICAgICA6ICBIbT8KRHVyaW4gICAgICAgIDogIER1bW0gZ2VsYXVmZW4hIQpIYXRlICAgICAgICAgOiAgVW5iZWthbm50ISBOZXVlciBWZXJzdWNoOgoKY2lhbyBaYXJkb3oKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZCBudW4gbm9jaCBkaWUgVWhybWVsZHVuZ2VuLi4uIChaYXJkb3osIDE0LiBNYWkgMTk5NiwgMTM6MzI6MjApOgpTaWVoZSBUaXRlbDoKClR5YmFsbCAgICAgICA6ICBEdSBoYXN0IGhldXRlIHNjaG9uICVkIFdlZ2hpZXJzIGdla2lsbHQgdW5kIGtlaW5lciBoYXQgRGljaAogICAgICAgICAgICAgIGdla2lsbHQuClphcmRveiAgICAgICA6ICBbRGVidWc6XSAhPHphcmRvej4gL3NhdmUvei96YXJkb3oubyAlZCBlcnJvciBieSBicmFpbmRlYXRoLgpQcmVkYXRvciAgICAgOiAgYXVzCk11cGZlbCAgICAgICA6ICBNRy1aZWl0OiAlZCBVaHIuCkxpICAgICAgICAgICA6ICBaZWl0IGlzdCBHZWxkLiBXaXIgaGFiZW4gZXMgamV0enQgJWQgTWFyayB1bmQgMDAgUGZlbm5pZ2UuCkxhbmZlYXIgICAgICA6ICAlZCBncmF1c2FtZSBUb2RlIHNvbGxzdCBEdSBzdGVyYmVuLCBUb2NodGVyIGRlciBOYWNodCAhCkFuYWtpbiAgICAgICA6ICBFaW5lIFVociBzY2hsYWVndCAlZCBtYWwgZWluZW4gRWxmZW4uIEVyIHdpbW1lcnQgamFlbW1lcmxpY2guCiAgICAgICAgICAgICAgKGMpIEJvaW5nCkpvZiAgICAgICAgICA6ICBEdSBmdWVobHN0LCB3aWUgTGFyaXNzYSBEaWNoIGluIGV3aWdlciBMaWViZSAlZCBtYWwgd3VuZGVydm9sbAogICAgICAgICAgICAgIGt1ZXNzdC4KTWFuZ28gICAgICAgIDogIEVzIGlzdCAlZCBVaHIgdW5kIER1IG11ZGRlc3QgaW1tZXJub2NoIDooLgpTbHlmb3ggICAgICAgOiAgRGVyIFNlbnNlbm1hbm4gdGVpbHQgRGlyIG1pdDogRXMgaXN0IGpldHp0ICVkIFVociEKVmFuaXIgICAgICAgIDogIExhcnMgaGF0IGRpZSBIb2VsbGUgZnVlciBEaWNoIHVtICVkIEdyYWQgYXVmZ2VoZWl6dC4KVGF6ICAgICAgICAgIDogIER1IHNjaGF1c3Qga3VyeiBob2NoIHVuZCBlcmlubmVyc3QgRGljaC4gJWQgVWhyIQpaZXBoeXIgICAgICAgOiAgJWQgS29ib2xkZSBodWVwZmVuIHVtIERpY2ggaGVydW0uCkJlcnRyYW0gICAgICA6ICBEaWUgVWhyIGRlbmt0LCBlcyBzZWkgamV0enQgJWQgVWhyLgpMYXJpc3NhICAgICAgOiAgSm9mIGhhdWNodCBEaXIgc2FuZnQgJWQgS3Vlc3NlIGF1ZiBkaWUgTGlwcGVuLgpNYXJjdXN6ICAgICAgOiAgRElORyBET05HLiBESU5HIERPTkcuIEJlaW0gbmFlY2hzdGVuIFBhdWtlbnNjaGxhZyBpc3QgZXMgJWQKT2V0dGkgICAgICAgIDogICVkIG1hbCBzYWdzdCBEdSBkaXIsIHdpZSBTY2hlaXNzZSBEdSBkb2NoIGJpc3QuICpncmlucyoKTml4aWhvdSAgICAgIDogIEVpbiBUcmV0LUV1bWVsIHNhZ3Q6IFRyaXR0IG1pY2ggZXMgaXN0IGpldHp0IHNjaG9uICVkLCB1bmQgaWNoCiAgICAgICAgICAgICAgc2NobWVpc3MgZGljaCBqZXR6dCBoaWVyIHJhdXMhClN1bW1lcndpbmQgICA6ICAlZCBzYW5mdGUgVW1hcm11bmdlbiBzb2xsZW4gRGljaCBoYWx0ZW4sIHdlbm4gRHUgS3VtbWVyIGhhc3QuCkhpZ2hsYW5kZXIgICA6ICAjIyMgSm9mIGlzdCBqZXR6dCBzZWl0ICVkIFN0dW5kZW4gaWRsZS4gIyMjCldhcmdvbiAgICAgICA6ICBFaW5lIFN0aW1tZSBlcnNjaGFsbHQ6IEVzIGlzdCAlZCBVaHIgdW5kIGFsbGVzIGlzdCBndS1odXV0ISEhClNoYXlhICAgICAgICA6ICBEdSBtdXNzdCBub2NoICVkMDAwIFphdWJlcnNwcnVlY2hlIHVlYmVuLgpKYW5pY2UgICAgICAgOiAgRXMgaXN0IHNjaG9uICVkIFVociwgaXN0IGpldHp0IG5pY2h0IGVpbmUgVkwgPz8KVHJ5ZmFuICAgICAgIDogICVkIFd1ZXJtZXIgdGFuemVuIHZvciBEZWluZXIgTmFzZSBkZW4gUmVnZW50YW56LgpUeWNvb24gICAgICAgOiAgRGVpbiBEaXIgZWlnZW5zIGVyYmF1dGVyIEF0b20tV2Vja2VyIHRhY2tlcnQgRGljaCBhbiBkaWUgV2FuZAogICAgICAgICAgICAgIHVuZCBtYWhudDogRVMgaXN0ICVkIFVocgpKdXN1ZmYgICAgICAgOiAgQmVpbSBHZXJhZXVzY2ggZGVzIGJyZWNoZW5kZW4gQXJtcyB3YXIgZXMgJWQuCk1hc3MgICAgICAgICA6ICAtaApTY2hyZWRkZXIgICAgOiAgRGVpbmUgc3ByZWNoZW5kZSBBcm1iYW5kdWhyIHNhZ3QgZGlyICdFcyBpc3QgamV0enQgJWQgVWhyLCB1bmQKICAgICAgICAgICAgICBkdSBiaXN0IGltbWVyIG5vY2ggaW0gTVVELgpNb3Jnb3RoICAgICAgOiAgKioqKiBJbSBBbmRlcmxhbmQgd2VyZGVuIG5vY2ggJWQgRXJ6bWFnaWVyIGdlc3VjaHQhISAqKioqKgoKQ2lhbyBaYXJkb3oKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbmQgbnVuIG5vY2ggZGllIFVocm1lbGR1bmdlbi4uLiAoRW5neXd1Y2ssIDE0LiBNYWkgMTk5NiwgMTQ6MjQ6NTQpOgp+IyEgcm49WmFyZG96IHJ0PTgzMjA3MzU0MAp+IyEgdGlkPTgzMjA3MzU0MApaYXJkb3osIHNlaW4gbmljaHQgc28gZmF1bDogRXMgZ2lidCBkYSBub2NoIGRpZSBaZWl0dW5nc21lbGR1bmdlbiA7KQoKRW5neQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2ssIHdlaWxzIHNvIGJlbGllYnQgaXN0LCBub2NoIG1laHIgTWVsZHVuZ2VuIChaYXJkb3osIDE0LiBNYWkgMTk5NiwgMTQ6MzU6MjEpOgoKTWFuIGthbm4gc2ljaCBqYSBhdWNoIGRpZSAiTml4IE5ldWVzIGF1ZiBkZXIgV2VsdCItTXNnIGFlbmRlcm4sIHdpZSBzaWNoZXJsaWNoCmFsbGUgd2lzc2VuIDopKQoKSGllciBlaW5pZ2UgQmVpc3BpZWxlOgpKYXNwZXIgICAgICAgOiAgTWFjaCBtYWwgd2FzIHNpbm52b2xsZXMuClphcmRveiAgICAgICA6ICBTZWkgZnJvaCEgTW9yZ290aCBoYXQgbWFsIGtlaW5lbiBCbG9lZHNpbm4gaW4gZGVyIE1QQSB2ZXJ6YXBmdCEKUHJlZGF0b3IgICAgIDogIFdPVywgd2llZGVyIG1hbCBkaWUgWmVpdHVuZyBkdXJjaGdlbGVzZW4KRW5neXd1Y2sgICAgIDogIFtBbGxnZW1laW46WmVpdHVuZ10gTWlzdCwgaWNoIGJpbiBzY2hvbiB3aWVkZXIgYWxsZSA6KApBbmFraW4gICAgICAgOiAgLT0tPS0gRElFIEdBTlpFTiBGQVVMRU4gTFVTQ0hJRVMgU0NIUkVJQkVOIFdJRURFUiBOSVggLT0tPS0KVHp1aW9wICAgICAgIDogIFNjaHJlaWIgZG9jaCBzZWxic3Qgd2FzIQpKb2YgICAgICAgICAgOiAgR290dCBzZWkgRGFuayBrZWluZSBuZXJ2aWdlbiBuZXVlbiBOZXdzIQpNb3Jnb3RoICAgICAgOiAgU2NobGllc3MgZWluIG5ldWVzIEdlYmlldCBhbiB1bmQgc2V0eiBuZW4gQXJ0aWtlbCBpbiBkaWUKICAgICAgICAgICAgICBaZWl0dW5nLiBJcyBuaXggTmV1ZXMgZGEuCgpDaWFvIFphcmRvegoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3VwZXIgS2FyYXRlIChSaW11cywgMTQuIE1haSAxOTk2LCAxNDo1OTo0Nyk6CiAtLS0tLSBMaXN0ZSBkZXIgYmVzdGVuIEthcmF0ZWthOiAtLS0tLQouLi4KIDMxLiBBbXBlbG1hbm4sIDEuIERhbiAoNTklKQogICAzMi4gQW5kcmVzLCAxLiBEYW4gKDM2JSkKICAgMzMuIFJpbXVzLCAxLiBLeXUgKDEwNCUpCiAgIDM0LiBLYWZrYSwgMS4gS3l1ICg3MyUpCiAgIDM1LiBNYW5nbywgMS4gS3l1ICg3MyUpCgpJY2ggYmluIGRvY2ggZGVyIEJlc3RlICEhCgpSaW11cyB3aWxsIGF1ZiBQbGF0eiAxICEhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVlciBCZW4qIChBbGluZSwgMTQuIE1haSAxOTk2LCAxNjowNTo1Nyk6CgpXYXMgc2lubnZvbGxlcyEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVlciBCZW4qIChSYWZmaSwgMTQuIE1haSAxOTk2LCAxNjowNjoyNCk6Cn4jISBybj1BbGluZSBydD04MzIwODI3NTcKfiMhIHRpZD04MzIwODI3NTcKCldhcwoKR3J1c3MKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBuZXVlbiBFYmVuZW4gc2luZCBrbGFzc2UuLi4gKFByZWRhdG9yLCAxNS4gTWFpIDE5OTYsIDIwOjQ5OjU4KToKZWJlbmUgYW4KRHUgc2NoYWx0ZXN0IGZvbGdlbmRlIEViZW5lbiBlaW46CkFiZW50ZXVlciwgQWxsZ2VtZWluLCBUb2QsIEdyYXRzLCBCZWlsZWlkLCBNb2VyZGVyLCBCaWVyc2NodWV0dGxlciwgU2VoZXIKLUJpZXJzY2h1ZXR0bGVyKwpEaWUgRWJlbmUgJ0JpZXJzY2h1ZXR0bGVyJyBnaWJ0IGVzIG5pY2h0IQouLi4KCkViZW4gYmVpIG1laW5lbSBkdW1tZW4gMnRpIHBhc3NpZXJ0Li4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXkgU3VwcGEgZXkgOikgKENhcmFkaHJhcywgMTYuIE1haSAxOTk2LCAxODozODo1OCk6Ci1Ib3Q6c2luZ3Q6IERlcyBtdWVsbGVucyBpc3QgZGVzIENhcmFzIEx1c3QsIGRlcyBNdWVsbGVuIGlzdCBkZXMgQ2FyYXMgTHVzdCwKZGVzIG11dXV1dXVlbGxlbnMuLi4KW0hvdHRlbnRvdHRlbnN0b3R0ZXJtdXR0ZXJhdHRlbnRhZXRlcmxhdHRlbmdpdHRlcndldHRlcmtvdHRlcmJldXRlbHJhdHRlbmZhbmdwCnJhZW1pZTpDYXJhZGhyCgpIb3R0ZW50b3R0ZW5zdG90dGVybXV0dGVyYXR0ZW50YWV0ZXJsYXR0ZW5naXR0ZXJ3ZXR0ZXJrb3R0ZXJiZXV0ZWxyYXR0ZW5mYW5ncHIKYWVtaWU6YXMKCkhvdHRlbnRvdHRlbnN0b3R0ZXJtdXR0ZXJhdHRlbnRhZXRlcmxhdHRlbmdpdHRlcndldHRlcmtvdHRlcmJldXRlbHJhdHRlbmZhbmdwcgphZW1pZTpzaW5ndDoKCkhvdHRlbnRvdHRlbnN0b3R0ZXJtdXR0ZXJhdHRlbnRhZXRlcmxhdHRlbmdpdHRlcndldHRlcmtvdHRlcmJldXRlbHJhdHRlbmZhbmdwcgphZW1pZTpEZXMKCkhvdHRlbnRvdHRlbnN0b3R0ZXJtdXR0ZXJhdHRlbnRhZXRlcmxhdHRlbmdpdHRlcndldHRlcmtvdHRlcmJldXRlbHJhdHRlbmZhbmdwcgphZW1pZTptdWVsbGVuCgpIb3R0ZW50b3R0ZW5zdG90dGVybXV0dGVyYXR0ZW50YWV0ZXJsYXR0ZW5naXR0ZXJ3ZXR0ZXJrb3R0ZXJiZXV0ZWxyYXR0ZW5mYW5ncHIKYWVtaWU6cyBpc3QKCkhvdHRlbnRvdHRlbnN0b3R0ZXJtdXR0ZXJhdHRlbnRhZXRlcmxhdHRlbmdpdHRlcndldHRlcmtvdHRlcmJldXRlbHJhdHRlbmZhbmdwcgphZW1pZTpkZXMKCkhvdHRlbnRvdHRlbnN0b3R0ZXJtdXR0ZXJhdHRlbnRhZXRlcmxhdHRlbmdpdHRlcndldHRlcmtvdHRlcmJldXRlbHJhdHRlbmZhbmdwcgphZW1pZTpDYXJhcwoKSG90dGVudG90dGVuc3RvdHRlcm11dHRlcmF0dGVudGFldGVybGF0dGVuZ2l0dGVyd2V0dGVya290dGVyYmV1dGVscmF0dGVuZmFuZ3ByCmFlbWllOkx1c3QsCgpIb3R0ZW50b3R0ZW5zdG90dGVybXV0dGVyYXR0ZW50YWV0ZXJsYXR0ZW5naXR0ZXJ3ZXR0ZXJrb3R0ZXJiZXV0ZWxyYXR0ZW5mYW5ncHIKYWVtaWU6ZGVzCgpIb3R0ZW50b3R0ZW5zdG90dGVybXV0dGVyYXR0ZW50YWV0ZXJsYXR0ZW5naXR0ZXJ3ZXR0ZXJrb3R0ZXJiZXV0ZWxyYXR0ZW5mYW5ncHIKYWVtaWU6TXVlbGxlbgoKSG90dGVudG90dGVuc3RvdHRlcm11dHRlcmF0dGVudGFldGVybGF0dGVuZ2l0dGVyd2V0dGVya290dGVyYmV1dGVscmF0dGVuZmFuZ3ByCmFlbWllOmlzdCBkZXMKCkhvdHRlbnRvdHRlbnN0b3R0ZXJtdXR0ZXJhdHRlbnRhZXRlcmxhdHRlbmdpdHRlcndldHRlcmtvdHRlcmJldXRlbHJhdHRlbmZhbmdwcgphZW1pZTpDYXJhcwoKSG90dGVudG90dGVuc3RvdHRlcm11dHRlcmF0dGVudGFldGVybGF0dGVuZ2l0dGVyd2V0dGVya290dGVyYmV1dGVscmF0dGVuZmFuZ3ByCmFlbWllOkx1c3QsCgpIb3R0ZW50b3R0ZW5zdG90dGVybXV0dGVyYXR0ZW50YWV0ZXJsYXR0ZW5naXR0ZXJ3ZXR0ZXJrb3R0ZXJiZXV0ZWxyYXR0ZW5mYW5ncHIKYWVtaWU6ZGVzCgpIb3R0ZW50b3R0ZW5zdG90dGVybXV0dGVyYXR0ZW50YWV0ZXJsYXR0ZW5naXR0ZXJ3ZXR0ZXJrb3R0ZXJiZXV0ZWxyYXR0ZW5mYW5ncHIKYWVtaWU6bXV1dXV1dQoKSG90dGVudG90dGVuc3RvdHRlcm11dHRlcmF0dGVudGFldGVybGF0dGVuZ2l0dGVyd2V0dGVya290dGVyYmV1dGVscmF0dGVuZmFuZ3ByCmFlbWllOmVsbGVucy4KCkhvdHRlbnRvdHRlbnN0b3R0ZXJtdXR0ZXJhdHRlbnRhZXRlcmxhdHRlbmdpdHRlcndldHRlcmtvdHRlcmJldXRlbHJhdHRlbmZhbmdwcgphZW1pZTouLl0KCgogICAgICAgICAgIEljaCBsaWViZSBkaWUgS2FuYWVsZSwgc2luZCBiZWluYWhlIHNvIHNjaG9lbiB3aWUgbWVpbmUgVGl0ZWwgOikpCgpMZWlzZXMgUmF1c2NoZW4gZHJpbmd0IGFuIERlaW4gT2hyLiBTdWVkbGljaCB2b24gRGlyIGZ1ZWhydCBlaW4gV2VnIHdlaXRlciBhbgpkZW0gU2VlIHZvcmJlaSB1ZWJlciBlaW5lbiBBYmdydW5kLiBEb3J0IHN0dWVyenQgYXVjaCBlaW4gV2Fzc2VyZmFsbCBpbiBkaWUKVGllZmUuIERlciBXZWcgZnVlaHJ0IGF1Y2ggbmFjaCBOb3Jkb3N0ZW4gd2VpdGVyIHp1IGVpbmVtIEJhY2gsIGRlciBhdXMKUmljaHR1bmcgTm9yZGVuIHZvbSBncmF1c2FtZW4gQ2FyYWRocmFzIGhlcnVudGVyZ2VmbG9zc2VuIGtvbW10LiBFaW4gc2NobWFsZXIKUGZhZCBmdWVocnQgbmFjaCBOb3Jkd2VzdGVuIGluIGRpZSBIb2VoZS4gRHUga2FubnN0IG5pY2h0IGVya2VubmVuLCB3byBlcgpkYW5hY2ggaGluZnVlaHJ0LiBFciB2ZXJzY2h3aW5kZXQgaW4gZGVuIEh1ZWdlbG4gdWViZXIgZGVtIFRhbCBzdWVkbGljaCwgdWViZXIKZGFzIER1IHZvbiBoaWVyIGVpbmUgZ3V0ZSBBdXNzaWNodCBoYXN0LiBOYWNoIFN1ZWRvc3RlbiB1bmQgT3N0ZW4gZ2VodCBlcyBpbgplaW5lbiBTZWUuIEhpbnRlciBkZW0gU2VlIGxpZWd0IGRpZSByaWVzaWdlIFNpbGJlcnppbm5lLCBDZWxlYmRpbCBnZW5hbm50LgpBdWNoIHZlcm1laW5zdCBEdSwgdm9yIHNlaW5lciBCZXJnZmxhbmtlIGVpbmVuIFdlZyB2ZXJsYXVmZW4genUgc2VoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOaWNodHMuIChEZXNpZGVyaWEsIDE2LiBNYWkgMTk5NiwgMTg6NTc6MzMpOgpEZXIgV2VsdHJhdW0uIFVuZW5kbGljaGUgV2VpdGVuLiBEdSBzY2h3ZWJzdCB2b2VsbGlnIGZyZWkgaW4gZXR3YXMsIGRhc3MgbWFuCmthdW0gYWxzIEx1ZnQgYmV6ZWljaG5lbiBrb2VubnRlLiBUcm90emRlbSBzaWVoc3QgRHUgbWVya3d1ZXJkaWdlcndlaXNlIGFjaHQKQXVzZ2FlbmdlLgpFcyBnaWJ0IGFjaHQgc2ljaHRiYXJlIEF1c2dhZW5nZTogZHJlaSwgendlaSwgdmllciwgZnVlbmYsIGFjaHQsIHNlY2hzLCBzaWViZW4KdW5kIGVpbnMuCk5pY2h0cy4KW25pbW0gYWxsZXNdCkR1IG5pbW1zdCBuaWNodHMuCkR1IGthbm5zdCBuaWNodHMgbmljaHQgbmVobWVuLgoKCkRlc2lkZXJpYSwgbGl2ZSBhdXMgTW9yZ2VuR3JhdWVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgbmV1ZW4gRWJlbmVuLi4uIChQYW1wZXJzLCAxNy4gTWFpIDE5OTYsIDEyOjExOjUzKToKPiAtTSEKRHUgc2llaHN0IDEzIEdlc2ljaHRlciBhdWYgZGVyIEViZW5lICdNb2VyZGVyJzoKR2Vpc3QgZWluZXMgSHVmc2NobWllZHMsIFBhbnRoZXIsIEluZWx1a2ksIEJpYm8sIEJlZWx6ZWJ1YiwgVWh1cmEsIFBhdHJ5biwKSGFkcmEsIE1haGF0bWEsIEhvcmF4LCBKYW5pY2UsIFppbm8sIFBhbXBlcnMKR2Vpc3QgZWluZXMgSHVmc2NobWllZHMgaGF0IGRhcyBTYWdlbiBhdWYgZGllc2VyIEViZW5lLgoKClBhbXBlcnMuIEdyaW5zdCBpbW1lciBub2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5pY2h0cy4gKE5pY2h0cywgMTcuIE1haSAxOTk2LCAxNzoyNDoxNSk6Cn4jISBybj1EZXNpZGVyaWEgcnQ9ODMyMjY1ODUzCn4jISB0aWQ9ODMyMjY1ODUzCgoqcGZmZmZ0KiBHbGF1YnN0IER1LCBpY2ggbGFzcyBtaWNoIHZvbiBqZWRlciBob3BwcyBuZWhtZW4gOikgPwoiIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxpdmUtTWl0c2Nobml0dCB2b24gZGVyIEhvY2h6ZWl0IGRlcyBKYWhyZXMgKENhdHdlYXpsZSwgMTcuIE1haSAxOTk2LCAxOTo1Mzo1OCk6CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgSGFyZGlsLCAgMi4gTWFpIDE5OTYsIDE1OjE1OjE4XToKClNhcGhpbmFzIFN0aW1tZSBlcnNjaGFsbHQ6IEhpZXJtaXQgZXJrbGFlcmUgaWNoIEFsaW5lIHVuZCBXYXJnb24gZnVlcgp2ZXJoZWlyYXRldCB1bmQgZXJ0ZWlsZSBpaG5lbiBtZWluZW4gcGVyc29lbmxpY2hlbiBTZWdlbiEgTW9lZ2VuIGlobmVuCkdlc3VuZGhlaXQgdW5kIGxhbmdlcyBMZWJlbiBiZXNjaGllZGVuIHNlaW4hCkRlciBTYXR5ciB2ZXJ6aWVodCBhbmdlZWtlbHQgZGFzIEdlc2ljaHQuCgoKSmFqYSwgYWJlciBFaW5zcHJ1Y2ggaGF0IGVyIG5pY2h0IGdlc2FndC4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0b2VkbGljaGUgVmVybGV0enVuZz8gKEphcmllbCwgMTguIE1haSAxOTk2LCAwMDoyNDo0OCk6CkViZW4gYmVpIGRlciBSYWV0c2Vsc3RlaW4tUXVlc3Q6Cgp1bnQgdmlnZ3kKRGllc2VyIFZpZ2d5IGhhdCBhbnNjaGVpbmVuZCBlaW5lIEtyaXN0YWxsZXhwbG9zaW9uIHVlYmVybGVidC4gQWJlciBlciBoYXQKc2ljaCBkYWJlaSBiZWlkZSBCZWluZSBnZWJyb2NoZW4gdW5kIGthbm4gc2ljaCBuaWNodCBtZWhyIGJld2VnZW4uIEVyIHNpZWh0CndpcmtsaWNoIGVyYmFlcm1saWNoIGF1cy4KRXIgaXN0IGFic29sdXQgZml0LgpFciB0cmFlZ3QgYmVpIHNpY2g6CkVpbiBCbGVpc3RpZnQuCkVpbiBGb3JtdWxhci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdG9lZGxpY2hlIFZlcmxldHp1bmc/IChGeXQsIDE4LiBNYWkgMTk5NiwgMDA6MjY6MjApOgp+IyEgcm49SmFyaWVsIHJ0PTgzMjM3MTg4OAp+IyEgdGlkPTgzMjM3MTg4OAoKSG0sIGRhcyBlcmlubmVydCBtaWNoIGFuIENhcmEsIGRlciAnbiBOUEMgaGF0LCBkZXIgc3RhZW5kaWcgYW5nZXNjaGxhZ2VuIGlzdC4KQWJlciByYWV0c2Vsc3RlaW4gd2FyIHZvbiBUcm95LCBvZGVyPwoKQWxzbyBrZWluZSB2ZXJiZXNzZXJ1bmcgaW4gU2ljaHQuLi4uCgpGeXQuCgpubgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2Vob2VydCBqYSBlaWdlbnRsaWNoIG5hY2ggbWFnaWVyLnNjaG1hcnJuLi4uIChNdXBmZWwsIDE4LiBNYWkgMTk5NiwgMDM6NTI6MTApOgpbRGVidWc6RWluIERpZSBlaWdlbmUgVW5mYWVoaWdrZWl0XSBGZWhsZXI6ICJEaXZpc2lvbiBieSB6ZXJvIiwgT2JqZWt0OgpbRGVidWc6RWluIERpZSBlaWdlbmUgVW5mYWVoaWdrZWl0XSBzcGVsbGJvb2tzL21hZ2llX3NwLCBQcm9ncmFtbToKW0RlYnVnOkVpbiBEaWUgZWlnZW5lIFVuZmFlaGlna2VpdF0gIi9zcGVsbGJvb2tzL21hZ2llX3NwLmMiLCBaZWlsZSA1Nzc1CltEZWJ1ZzpFaW4gRGllIGVpZ2VuZSBVbmZhZWhpZ2tlaXRdIChBbmF0b2wpCgppcmdlbmR3aWUgd2l0emlnIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0eiEgKEFjcmltb24sIDE4LiBNYWkgMTk5NiwgMTE6MzU6MDIpOgpJY2ggaGFiIG1pY2ggdW5kIEFuZGVyZSBsYW5nd2llcmlnIGF1ZiBkYXMgc2Nod2llcmlnc3RlIEdlYmlldCBkZXIgU1NQCnZvcmJlcmVpdGV0OgoKRHUgc2Fnc3Q6IEVyIGlzdCBhbmZhZWxsaWcgZ2VnZW4gRWlzIHVuZCBGZXVlcgo+IHNhZyBTb2JpYmFyIHNhZ3Q6IG9rCkJlU29iaWJhciBzYWd0OiBtb20KcmVpdD8KRHUgc2Fnc3Q6IEJlcmVpdD8KPiBDaG9uZG9zIHNhZ3Q6IGNvb2wgY2hhb3NzY2hhZGVuIGZldWVyClNvYmliYXIgemllaHQgZWluZW4gR2kgYXVzLgpTb2JpYmFyIHppZWh0IGVpbmVuIEVpc3BhbnplciBhbi4KU29iaWJhciBzYWd0OiBvawpzYWcgYmluIG5pY2h0IGdhbnogc2ljaGVyIG9iIGdlZ2VuIEZldWVyIGFuZmFlbGxDaG9uZG9zIHNhZ3Q6IGxhc3MgdW5zCmFuZmFuZ2VuIGJldm9yIGRlcnJ1ZWNrd2VnIHp1IHNjaHdlciB3aXJkCmlnCkR1IHNhZ3N0OiBCaW4gbmljaHQgZ2FueiBzaWNoZXIgb2IgZ2VnZW4gRmV1ZXIgYW5mYWVsbGlnCj4gc2FnIEFiZXIgZ2VnZW4gRWlzIHNpY2hlcgpEdSBzYWdzdDogQWJlciBnZWdlbiBFaXMgc2ljaGVyCj4gc2FnIENob25kb3MgbXVybWVsdCBzZWx0c2FtZSBXb3J0ZS4gU2VpbmUgQXVnZW4gbGV1Y2h0ZW4ga3VyeiByb3QgYXVmLgozCkR1IHNhZ3N0OiAzCnNhZyAyCj4gRHUgc2Fnc3Q6IDIKc2FnIDEKPiBDaG9uZG9zIHNhZ3Q6IGFsbGVzIGtsYXIgZWlzCkR1IHNhZ3N0OiAxCj4gQ2F0d2VhemxlIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCm4KdGVsbmV0OiBDb25uZWN0aW9uIGxvc3QuClNoZWxsPgoKVHlwaXNjaC4gUHxua3RsaWNoIHp1bSBzcGFubmVuZHN0ZW4gQXVnZW5ibGljayBicmljaHQgZGllIFZlcmJpbmR1bmcgenVzYW1tZW4uClVuZCBibGllYiBnbGVpY2ggZWluIHBhYXIgU3R1bmRlbiB3ZWcuCk5peCB6dSBtYWNoZW4uCgpFbnRzY2h1bGRpZ3QsIE1pdHN0cmVpdGVyLCBpY2ggaG9mZmUgaWhyIHNlaWQgbmljaHQgZ2VzdG9yYmVuLgoKQWNyaW1vbiBkZXIgUm90ZSBSaXR0ZXIsIG5ldHpnZXBsYWd0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUc3Nzcy4uLiBEaWUgbGllYmUuLi4gKFBhbXBlcnMsIDIwLiBNYWkgMTk5NiwgMTM6NDU6MjApOgpBbGluZSBncmluc3QgRGljaCBhbi4KQWxpbmUga3Vlc3N0IERpY2guCldhcmdvbiB3aXJkIHZvbiBlaW5lbSB2b3JiZWlmbGllZ2VuZGVtIFN1bXBmZHJhY2hlbiBhYmdlc2V0enQuCgpXb2hlciB3dXNzdGUgZGVyIGRhcyBudXIuLi4gOikpKQpQYW1wZXJzLiBIYXQgc2Nob24gZWluIHNjaGxlY2h0ZXMgR2V3aXNzZW4uLi4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWUgVGl0ZWwgaW4gZGVyIEFiZW50ZXVyZXJnaWxkZSAoR3V5YnJ1c2gsIDIwLiBNYWkgMTk5NiwgMjI6MDg6MjcpOgp+IyEgcm49VGFzaGEgcnQ9ODMyNjIyODQwCn4jISB0aWQ9ODMyNTkxNDcxCltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgR3V5YnJ1c2gsIDIwLiBNYWkgMTk5NiwgMjI6MDg6MDRdOgpzb3dlaXQga29tbXQncyBub2NoIQpEYW5uIG1hY2ggaWNoIGFiZXIgU2VsYnN0bG9lc2NodW5nIDspCgpBZWhtLCBpY2ggdmVybGVncyBuYWNoIHNjaG1hcnJuLCBtb20KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGbGllZ2VuZGVyIEZpc2NoIChadWVyaWxldSwgMjEuIE1haSAxOTk2LCAwMjoyMjozMik6ClNhbGkgemFlbWUsCgpFYmVuIGluIGVpbmVyIEFuZ2VsemVpdHNjaHJpZnQgKEJsaW5rZXIgNS85NikgZ2VsZXNlbjoKCkxpZWNodGVuc3RlaW4gKFBIKSAtICJGbGllZ2VuZGUgRmlzY2hlIGluIExpY2h0ZW5zdGVpbiIgLSAKZGVyIFNjaHdlaXplciBGaXNjaGVyZWlleHBlcnRlIERyLiBBcm1pbiBQZXRlciBzdGFuZCB2b3IgZWluZW0gUmFldHNlbC4KRWluZSBtaXQgZWluZW0gTWluaXNlbmRlciB2ZXJzZWhlbmUgRm9yZWxsZSBoYXR0ZSBpaHJlIFdhc3NlcndhbmRlcnVuZwp1cnBsb2V0emxpY2ggYXVmIGRlbSBMdWZ0d2VnZSBmb3J0Z2VzZXR6dC4gRXJzdCBuYWNoZGVtIGRlciBGaXNjaCBlaW5lClp3aXNjaGVucmFzdCBhdWYgZWluZW0gQmF1bSBlaW5sZWd0ZSwgbG9lc3RlIHNpY2ggZGFzIFJhZXRzZWw6IERpZSBGb3JlbGxlCm5haG0gZGVuIEx1ZnR3ZWcgbmljaHQgZnJlaXdpbGxpZywgc29uZGVybiBmbG9nIG5vdGdlZHJ1bmdlbiBpbSBTY2hsdW5kIGVpbmVzCkZpc2NocmVpaGVycyBtaXQuLi4KCmluIGRlbSBTaW5uZSBUc2NoYXUgemFlbWUgPTopKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjcm9sbD8/PyAoSmFyaWVsLCAyMS4gTWFpIDE5OTYsIDAyOjU4OjM5KToKCkViZW4gYmVpIGRlciBSZWQgRnJhZ2dsZS1RdWVzdCA6CgpBbiBkZXIgTm9yZHdhbmQgYmVmaW5kZXQgc2ljaCBlaW5lIGtsZWluZSBUdWVyLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHdlc3RlbiB1bmQgbm9yZGVuLgpFaW5lIEJyZWNoc3RhbmdlLiAoMykgICAgICAgICAgICAgICAgICBTdGlua2VuZGVyIEthZXNlLgpFaW4gR29yZ2ZlbGwuICgzKSAgICAgICAgICAgICAgICAgICAgICBFaW4gRmFkZW4uICgzKQpFaW4gU2VpbC4gKDMpICAgICAgICAgICAgICAgICAgICAgICAgICBFaW5lIEZsYXNjaGUuICgyKQpFaW4gZ2VsYmVzIFBvc3RwYWtldCAoZ2VvZWZmbmV0KS4gICAgICBFaW5lIFBvc3RrYXJ0ZS4gKDQpCkVpbiBrbGVpbmVyIEtyaXN0YWxsc3BsaXR0ZXIuICAgICAgICAgIEV0d2FzIFBvZWtlbHNhbHouICgyKQpFdHdhcyBWb29kb28tS3JhdXQuICgzKSAgICAgICAgICAgICAgICBFaW4gU2NodXR6cGFyYWdyYXBoLiAoMikKRWluZSBrbGVpbmUgR2llc3NrYW5uZS4gKDMpICAgICAgICAgICAgRWluZSBGYWNrZWwuCkVpbiBWb29kb28tQnVjaC4gKDMpICAgICAgICAgICAgICAgICAgIEV0d2FzIFNjaHdlZmVsLiAoMikKRWluZSBEb296ZXJtYXNjaGluZS4gKDYpICAgICAgICAgICAgICAgOSBTdGVpbmUuCkVpbiBrbGVpbmVyIERyYWNoZW4uICg0KSAgICAgICAgICAgICAgIEVpbiBMaWNodGhlbG0uCkVpbiBrbGVpbmVzIFJhZGllc2NoZW4uICgyKSAgICAgICAgICAgIEVpbiBQYWFyIHNpbGJlcm5lIEhhbmRzY2h1aGUuCkVpbiBCdWNoLiAoMykgICAgICAgICAgICAgICAgICAgICAgICAgIEVpbmUgYmVzb25kZXJzIHdhcm1lIFdvbGxkZWNrZS4KRGFzIEJ1Y2ggZGVyIEZyYWdnbGVzLiAoMikgICAgICAgICAgICAgRWluZSBBbXB1bGxlIEZlbnRhbnlsLiAoMikKRWluIDRHZXdpbm50LVNwaWVsLiAgICAgICAgICAgICAgICAgICAgRWluIFN0dWVjayBLcmVpZGUuICgyKQpFaW5lIEZhY2tlbC4gICAgICAgICAgICAgICAgICAgICAgICAgICBFaW5lIFNjaGF1ZmVsLgpFaW4gQXN0LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFdHdhcyBSdXNzLgpFaW5lIGtsZWluZSBTcGl0emhhY2tlLiAoNCkgICAgICAgICAgICBFaW5lIG9mZmVuZSBTY2h1YmxhZGUuCkVpbiBTY2hsdWVzc2VsLiAoMykKCkljaCBmcmFnIG1pY2gsIHdpZSBsYW5nZSBkYSBkZXIgc2NyZWVuIG9obmUgZGllIFp1c2FtbWVuZmFzc3VuZyBkZXIKR2VnZW5zdGFlbmRlIGdlc2Nyb2xsdCBoYWV0dGUgOikKCkphcmllbCBUb25hY2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIZWxsc2VoZXI/IChMYXJpc3NhLCAyMS4gTWFpIDE5OTYsIDE2OjU1OjE3KToKQWJnZXNlaGVuIHZvbSBCaWVyc2NodWV0dGVsbiBrYW5uIEJydW5vIHdvaGwgYXVjaCBoZWxsc2VoZW46CltCaWVyc2NodWV0dGxlcjpCcnVub10gU2hha2VkYmVlciEgRW5kbGljaCEgS29tbSBzb2ZvcnQgaGVyISBIaWVyIGxpZWd0IGVpbgpbQmllcnNjaHVldHRsZXI6QnJ1bm9dIEhhdWZlbiBBcmJlaXQhClNoYWtlZGJlZXIgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVuc2EgKE1hcnMsIDIxLiBNYWkgMTk5NiwgMjM6MTE6MTQpOgpEdSBiZWdpbm5zdCBpbmJydWVuc3RpZyB6dSBiZXRlbi4KPiBbU2VoZXI6TGVDaHVja10gaWNoIGhhc3NlIHNjaGxhbmdlbgouICAgICAgICAgICAgICAgICAgICAgICAgICAqKioqKiAxNDYgKioqIDIxMCAqKioqKgouICAgICAgICAgICAgICAgICAgICAgICAgICAqKioqKiAxNDcgKioqIDIxMCAqKioqKgpbU2VoZXI6QXNtb2Rpc10gaWNoIGF1Y2gsIGJlc29uZGVycyBkaWUgdm9yIGRlciBNZW5zYQpEZWluIEdlYmV0IGRyZWh0IHNpY2ggYXVmIGVpbm1hbCB1bXMgRXNzZW4uCgpNYXJzIC0gVHJhbnN1bHRpbWF0ZXIgQXBvc3RlbCBkZXIgQW50aXNhZWt1bGFyZW4gS29ua2xhdmUgZGVyIEtsZXJpa2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBZ2VudGVudHJlZmZlbiAoSGVsbG93ZWVuLCAyMS4gTWFpIDE5OTYsIDIzOjUzOjQwKToKRGVyIEJvZGVuIGRlcyBBbHRhcnJhdW1zIGRlcyBUZW1wZWxzIGlzdCBtaXQgd2VpY2hlbiwgcm90Z2xhZW56ZW5kZW4gVGVwcGljaGVuCmF1c2dlbGVndCwgZGllIGplZGVuIFNjaHJpdHQgYmVpbSBHZWhlbiBkYWVtcGZlbi4gRGVyIEFsdGFyLCBkZXIgc2ljaCBqZXR6dAp6d2lzY2hlbiBEZWluZW0gU3RhbmRwdW5rdCB1bmQgZGVtIEtpcmNoZW5zY2hpZmYgYmVmaW5kZXQsIHdpcmt0IGF1cyBkaWVzZXIKTmFlaGUgbm9jaCB2aWVsIGdld2FsdGlnZXIgdW5kIGltcG9zYW50ZXIgYWxzIGF1cyBkZXIgRW50ZmVybnVuZy4gQW4gZGVyCmhhbGJrcmVpc2ZvZXJtaWdlbiBXYW5kLCBkaWUgZGVuIFRlbXBlbCBuYWNoIFN1ZWRlbiBoaW4gYWJzY2hsaWVzc3QsIGVudGRlY2tzdApEdSBlaW5lbiBnb2xkZW5lbiBSZWxpcXVpZW5zY2hyZWluLCBkZXNzZW4gR2xhbnogRGVpbmUgQXVnZW4gYmxlbmRldC4KQXVzc2VyZGVtCmVudGRlY2tzdCBEdSBhbiBkZXIgb2VzdGxpY2hlbiB1bmQgYW4gZGVyIHdlc3RsaWNoZW4gV2FuZCBqZSBlaW5lIExlaXRlcjsKZGllc2UKc2NoZWluZW4gbmFjaCBvYmVuIGluIGRpZSBiZWlkZW4gVHVlcm1lIGRlcyBUZW1wZWxzIHp1IGZ1ZWhyZW4uCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBub3JkZW4sIG9zdG9iZW4gdW5kIHdlc3RvYmVuLgpHbG9pbiBkZXIgV2FuZGVycHJlZGlnZXIuCltBZ2VudGVuOl0gSmFtZXMgICcgQXNtb2RpcyAnICBCb25kIGlzdCB3aWVkZXIgdW50ZXJ3ZWdzLgpbQWdlbnRlbjpdIFN0ZXZlIHRoZSBLaWQgLSBad2VpdGllLUdld2Vya3NjaGFmdC4KW0FnZW50ZW46XSBBc21vZGluYSBrYW5uIEthcmF0ZS4KW0FnZW50ZW46XSBLYXJhdGVraWQgaXN0IGRlciBlcnN0ZSBIb2JiaXQtS2xlcmlrZXIuCltBZ2VudGVuOl0gQmVvYmFjaHRlciBzaWVodCBqZXR6dCBhdWNoIGV0d2FzLgpbQWdlbnRlbjpdIFNpbnRyYW0gZGVyIHRldWZsaXNjaGUgWndlcmcuCltBZ2VudGVuOl0gTGF1cmluIHN0aXJidCB3YWhyc2NoZWlubGljaCBnbGVpY2guCltBZ2VudGVuOl0gSXNzb21hZCBmZWhsZW4gamV0enQga2VpbmUgRXBzIG1laHIgOikuCltBZ2VudGVuOl0gS2VsZGVyIGdlaHQgc2ljaCBqZXR6dCBhdWNoIGJlc2F1ZmVuLgpFaW4gUHJpZXN0ZXIgZGVyIFhhbnRpLgpFaW4gUHJpZXN0ZXIgZGVyIFhhbnRpLgoKY3UKICAgSEVMTE9XRUVOCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpsYW5nd2VpbGlnLCBkaWUgbmFyY2hvcyA6KSAoSGFyZGlsLCAyMi4gTWFpIDE5OTYsIDE0OjA2OjE4KToKClNPIHdpcmQgbWFuIGhpZXIgYWxzbyBiZWdydWVzc3Q6Cgo+IC1BbmFyY2hpZSsKRHUgYmV0cml0dHN0IGRpZSBFYmVuZSAnQW5hcmNoaWUnLgo+IFBsb2V0emxpY2ggaG9lcnN0IER1IGVpbiBsYXV0ZXMgU2NobmFyY2hlbi4gU2Vld29sZiBoYXQgZGVtIFNjaHJhdApzZWluIGxhbmdlcnNlaG50ZXMgU2NobGFmbWl0dGVsIGdlYnJhY2h0LgoKRGllIFJldm9sdXRpb24gc2NoZWludCB0b3QgenUgc2Vpbi4gU2NoYWRlLgoKLUhhcmRpbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUobm1pdHRlKSAoR3JpbW1ib3JuLCAyMi4gTWFpIDE5OTYsIDE3OjQxOjA2KToKCiJXZW4gbWFuIGxvYnQsIGRlbSBzdGVsbHQgbWFuIHNpY2ggZ2xlaWNoIiAoR29ldGhlKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LiBXdWVyZGUgbmllIGxvYmVuLiBWb3IgYWxsZW0sIHdlbm4gZXIgc2ljaCBkYXMgR2Vzb2NrcwpzbyBhbnNpZWh0LCBtaXQgZGVtIGVyIHNpY2ggZGFubiBnbGVpY2hzdGVsbGVuIG11ZXNzdGUuLi4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgTGFzdCBkZXMgR2VsZGVzIChSYWZmaSwgMjIuIE1haSAxOTk2LCAyMDozNDoyNik6CgpEYSB3aWxsIG1hbiBkb2NoIGdsYXR0IG1hbCBzZWluIEdlbGQgb3JkbnVuZ3NnZW1hZXNzIGRlbQpHZWxka3JlaXNsYXVmIHp1ZnVlaHJlbiB1bmQgZGFubiBkYXMgOgoKSW0gR2VsZHNwZWljaGVyIGRlciBaZW50cmFsYmFuay4KPiBzY2hhdQpIaWVyIHN0ZWhzdCBEdSBudW4gaW4gZGVuIGhlaHJlbiBIYWxsZW4gZGVzIEdlYmFldWRlcywgZGFzIGRlbiBTcGllbGVybgpzbyBncm9zc2VuIEZydXN0IGJlcmVpdGV0OiBJbiBkZXIgTW9yZ2VuR3JhdWVuLVplbnRyYWxiYW5rIQpFaW5lIHNjaHdlcmUsIHN0YWVobGVybmUgVHVlciBpbiBkZXIgV2VzdHdhbmQgdmVyc3BlcnJ0IGRlbiBXZWcgaW4gZGVuIAplaWdlbnRsaWNoZW4gR2VsZHNwZWljaGVyLiBFaW5lIGtsZWluZXJlIFR1ZXIgaW0gU3VlZGVuIHNjaGVpbnQgenUgZGVuIApWZXJ3YWx0dW5nc3JhZXVtZW4genUgZnVlaHJlbi4KTmFjaCBPc3RlbiBnZWh0IGVzIHdpZWRlciBoaW5hdXMuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBvc3Rlbi4KPiB1bnQgc3RhaGx0dWVyCkRpZXNlIFR1ZXIgYmVzdGVodCBhdXMgbWFzc2l2ZW0gU3RhaGwsIHdlaXN0IGplZG9jaCBlaW4gRmVuc3RlciBhdXMgZGlrLQprZW0gR2xhcyBhdWYsIGR1cmNoIGRhcyBtYW4gaW4gZGVuIEdlbGRzcGVpY2hlciBibGlja2VuIGthbm4uCkR1IGthbm5zdCBrZWluZW4gVHVlcmdyaWZmIHVuZCBhdWNoIGtlaW4gU2NobHVlc3NlbGxvY2ggYW4gZGVyIFR1ZXIgZXItCmtlbm5lbiwgamVkb2NoIHdlaXNlbiBlaW5pZ2UgdGllZmUgS3JhdHplciBpbSBTdGFobCBkYXJhdWYgaGluLCBkYXNzIGVzCnNjaG9uIHp1IEVpbmJydWNoc3ZlcnN1Y2hlbiBnZWtvbW1lbiBpc3QuCk5lYmVuIGRlciBUdWVyIGJlZmluZGV0IHNpY2ggYW5zY2hlaW5lbmQgZWluIEVpbnd1cmZzY2hsaXR6LgpEYXJ1bnRlciBoYWVuZ3QgZWluZSBMaXN0ZS4KPiB3aXJmIDUwMDAwMCBtdWVuemVuIGluIHNjaGxpdHoKRHUgc3RlY2tzdCAxOTg5NTggTXVlbnplbiBpbiBkZW4gRWlud3VyZnNjaGxpdHouCj4gaQpSdWVzdHVuZ2VuOgogRWluIFBhYXIgc2Nod2FyemUgU3RpZWZlbCAoYW5nZXpvZ2VuKS4KVmVyc2NoaWVkZW5lczoKIEVpbiBGcmV1bmRzY2hhZnRzYmFuZCAoZ2V0cmFnZW4pLgogUmFmZmlzIFRlZGR5YmFlciBLYXd1bW0gSS4KIDM4MzcxMCBNdWVuemVuLgogRGllIFplaXR1bmcuCiBFaW4gTGFnLU8tTWV0ZXIuCiBFaW5lIEhvbHpidWVyc3RlLgogRWluIFd1bnNjaC4KIEVpbiAnQ2F0d2VhemxlIGZvciBTaGVyaWZmJy1GYWVobmNoZW4uCkR1IHRlaWxzdCBDYXR3ZWF6bGUgbWl0OiBpcmdlbmR3aWUgZ2VodCBkYXMgbmljaHQgLSA1MDBLIHdpbGwgZXIgbmljaHQgOikKQ2F0d2VhemxlIHRlaWx0IERpciBtaXQ6IHZlcnN1Y2ggbm9tYQpEdSBzYW1tZWxzdCBkYXMgRWxmZW5iZWluIHZvbiAyMCBFbGZlbi4KRHUgdGVpbHN0IENhdHdlYXpsZSBtaXQ6IDE5ODk1OCBoYXQgZXIgc3RhdHRkZXNlbiBnZW5vbW1lbiA6KQo+IHdpcmYgMzAwMDAwIG11ZW56ZW4gaW4gc2NobGl0egpMZWlkZXIgcGFzc3Qga2VpbiBHZWxkIG1laHIgaW4gZGVuIEVpbnd1cmYuCkNhdHdlYXpsZSB0ZWlsdCBEaXIgbWl0OiBuYSBkYW5uIHdpcmYgd2FzIG5hY2ggOikKRHUgdGVpbHN0IENhdHdlYXpsZSBtaXQ6IGVzIHBhc3N0IGtlaW4gZ2VsZCBtZWhyIHJlaW4gIQpDYXR3ZWF6bGUgdGVpbHQgRGlyIG1pdDogdmVyc3VjaCBub21hCj4gd2lyZiAzMDAwMDAgbXVlbnplbiBpbiBzY2hsaXR6CkxlaWRlciBwYXNzdCBrZWluIEdlbGQgbWVociBpbiBkZW4gRWlud3VyZi4KPiBzdGVja2UgMTAwMDAwIG11ZW56ZW4gaW4gc2NobGl0egpDYXR3ZWF6bGUgdGVpbHQgRGlyIG1pdDogaG0KTGVpZGVyIHBhc3N0IGtlaW4gR2VsZCBtZWhyIGluIGRlbiBFaW53dXJmLgo+IHN0ZWNrZSBtdWVuemUgaW4gc2NobGl0egpMZWlkZXIgcGFzc3Qga2VpbiBHZWxkIG1laHIgaW4gZGVuIEVpbnd1cmYuCj4gbGllcyBsaXN0ZQoKICBUb3BsaXN0ZSBkZXIgQmFyZWluemFobGVyCiAgPT09PT09PT09PT09PT09PT09PT09PT09PQoKKy0tLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCnwgICB8IE5hbWUgICAgICAgICB8IE11ZW56ZW4gfAorLS0tKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSsKfCAxLnwgUmFmZmkgICAgICAgIHwgMTk4OTU4ICB8CnwgMi58IEJlcm5oYXJkICAgICB8ICA3NDE0MCAgfAp8IDMufCBDaGV2eSAgICAgICAgfCAgNDEwMDAgIHwKfCA0LnwgVGVsa2EgICAgICAgIHwgIDMwMDAwICB8CnwgNS58IEhlbGxvd2VlbiAgICB8ICAyMDQ2MCAgfAp8IDYufCBBbmFraW4gICAgICAgfCAgMTAwMTAgIHwKfCA3LnwgTGlmYWZhICAgICAgIHwgICAgIDIwICB8CnwgOC58IFpvcnJvICAgICAgICB8ICAgICAgNSAgfAp8IDkufCBDcm9sbGEgICAgICAgfCAgICAgIDQgIHwKfDEwLnwgVHp1aW9wICAgICAgIHwgICAgICAzICB8CnwxMS58IE15c2VsZiAgICAgICB8ICAgICAgMSAgfAp8MTIufCBNaXNzZWxsaSAgICAgfCAgICAgIDEgIHwKKy0tLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCkNhdHdlYXpsZSB0ZWlsdCBEaXIgbWl0OiB0amEsIGRhbm4gaGFzdGUgbm9jaCAzMDEwNDIgc2NodWxkZW4gYmVpIGRlciBCYW5rIDopCkR1IHRlaWxzdCBDYXR3ZWF6bGUgbWl0OiAqZ3JpbnMqIHdhbm4gbmltbXQgZGllIGJhbmsgZWlnZW50bGljaCB3aWVkZXIgZ2VsZCBhbgo/CkVpbiBsYXV0ZXIgS25hbGwgaGFsbHQgdm9tIEdlYmlyZ2UgaGVydWViZXIuCkNhdHdlYXpsZSB0ZWlsdCBEaXIgbWl0OiBmcmFnIG1pY2ggd2FzIC4uLgpDYXR3ZWF6bGUgdGVpbHQgRGlyIG1pdDogd2VubnNlIHp1d2VuaWcgaGF0IG5laG0gaWNoIGFuCkR1IHRlaWxzdCBDYXR3ZWF6bGUgbWl0OiBkYXMgZ2VmdWVobCBrZW5uIGljaCBqYSB3aWUgZXMgaXN0IGJlaSBkZXIgQmFuawpEdSB0ZWlsc3QgQ2F0d2VhemxlIG1pdDogc2NodWxkZW4genUgaGFiZW4gOikKQ2F0d2VhemxlIHRlaWx0IERpciBtaXQ6IDopCkR1IHRlaWxzdCBDYXR3ZWF6bGUgbWl0OiBhYmVyIGRpZSBJZGVlIGlzdCBuZXR0IGRhIG11c3MgaWNoIG9lZnRlciBtYWwgd2FzCkR1IHRlaWxzdCBDYXR3ZWF6bGUgbWl0OiBlaW56YWhsZW4gOikKQ2F0d2VhemxlIHRlaWx0IERpciBtaXQ6IDopIERhcyBnZWxkIGdlaHQgZGFubiBhdWNoIHRhdHNhZWNobGljaCBkaXJla3QgaW4gZGllCkNhdHdlYXpsZSB0ZWlsdCBEaXIgbWl0OiBHZWxkbWVuZ2UgZGVyIFplbnRyYWxiYW5rIGVpbiA7KQpEdSB0ZWlsc3QgQ2F0d2VhemxlIG1pdDogZGFzIGlzdCBlbmRsaWNoIG1hbCBuZSBIaWdzY29yZWxpc3RlIHdvIGljaCBtaWNoIGluCkR1IHRlaWxzdCBDYXR3ZWF6bGUgbWl0OiBlaW5zYW1tZSBob2VoZW4gc2Nod2luZ2VuIGthbm4gLSBtYWwgc2VoZW4gd2FubiBpY2gKRHUgdGVpbHN0IENhdHdlYXpsZSBtaXQ6IG1laW5lIGVyc3RlIG1pbGxpYXJkZSBlaW5nZXphaGx0IGhhYmUgLSBzYWNobWFsIHdhcwpEdSB0ZWlsc3QgQ2F0d2VhemxlIG1pdDogbmltbXQgZGVyIHp1bSBhYnNwZWljaGVybiA/IC0gaG9mZmVudGxpY2ggTG9uIG9kZXIgCkR1IHRlaWxzdCBDYXR3ZWF6bGUgbWl0OiBiZXNzZXIgNjQtQml0IEludCA6KQpDYXR3ZWF6bGUgdGVpbHQgRGlyIG1pdDogYXJnbC4uLm5laW4sIGlzdCBudXIgMzJiaXQgc2lnbmVkaW50IDopCkR1IHRlaWxzdCBDYXR3ZWF6bGUgbWl0OiBiaXR0ZSBzb2ZvcnQgYWVuZGVybiAtIGRhIGthbm4gaWNoIGphIG51ciAyCkR1IHRlaWxzdCBDYXR3ZWF6bGUgbWl0OiBNaWxsaWFyZGVuIHNhbW1lbG4gOikKCiggbmFjaCBlaW5pZ2VyIHdhcnRlemVpdCApCgo+IHN0ZWNrZSAxMDAwMDAgbXVlbnplbiBpbiBzY2hsaXR6CkR1IHN0ZWNrc3QgMTAwMDAwIE11ZW56ZW4gaW4gZGVuIEVpbnd1cmZzY2hsaXR6Lgo+IHN0ZWNrZSAxMDAwMDAgbXVlbnplbiBpbiBzY2hsaXR6CkxlaWRlciBwYXNzdCBrZWluIEdlbGQgbWVociBpbiBkZW4gRWlud3VyZi4KCk51biBqYSwgZGEgd2lsbCBtYW4gc2Nob25tYWwgc2VpbiBnZWxkIGVudHNvcmdlbiB1bmQgbmljaHQgaG9ydGVuLCB1bmQgc2Nob24KbmltbXRzIERpciBrZWluZXIgYWIgOikKCkdydXNzCkguCihQLlMuOiBuYWNoIGVpbmlnZW0gV2FyZW4gYmluIGljaCBhdWNoIG5vY2ggZGVuIHJlc3QgbG9zZ2V3b3JkZW4gICpncmlucyogdW5kCm5lIEZlaGxlcm1lbGR1bmcgd2VnZW4gZGVyIGdlcmluZ2VuIFN0ZWxsZW56YWhsIGluIGRlciBMaXN0ZSBnYWJzIGF1Y2ggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJlc2NoZWlkZW5oZWl0PyAoQXJ0eSwgMjIuIE1haSAxOTk2LCAyMzozNTowOCk6CkVpbmUgTGVpY2hlIHdpcmQgdm9uIGVpbmVtIEVsZmVud2FlY2h0ZXIgdm9sbCBIaW5nZWJ1bmcgdmVyc3BlaXN0LgpEZXIgRWxmZW53YWVjaHRlciBuaW1tdCAwLgoKaG1tLCBpc3QgZGVyIHNvIGJlc2NoZWlkZW4gb2RlciB3YXIgZGFzIGRhcyBBdWdlIGRlciBMZWljaGU/IDotKQoKQVJUWQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEluIFZsYW5kIGlzdCBuZW4gQmF1bSB1bWdlZmFsbGVuLi4uIChaYXJkb3osIDIzLiBNYWkgMTk5NiwgMTI6MTI6MDYpOgp+IyEgcm49WmFyZG96IHJ0PTgzMjc2OTg5Mgp+IyEgdGlkPTgzMjc2OTg5MgpbVmVybGVndCB2b24gZC5lYmVuZSwgQXNtb2RpcywgMjIuIE1haSAxOTk2LCAxNjoyODo0NV06ClVuZCB3YWhyc2NoZWlubGljaCBpc3QgZXMgbm9jaCBnaWZ0aWcgdW5kIG1hbiBzdGlyYnQgbmFjaCAyIE1pbnV0ZW4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSW4gVmxhbmQgaXN0IG5lbiBCYXVtIHVtZ2VmYWxsZW4uLi4gKFphcmRveiwgMjMuIE1haSAxOTk2LCAxMjoxMjoxMSk6Cn4jISBybj1aYXJkb3ogcnQ9ODMyNzY5ODkyCn4jISB0aWQ9ODMyNzY5ODkyCltWZXJsZWd0IHZvbiBkLmViZW5lLCBHcmltbWJvcm4sIDIyLiBNYWkgMTk5NiwgMTc6MTI6MzVdOgoKVGphLCBhYmVyIGRpZSBGcmFnZSBpc3QgZG9jaDogSGF0IGRlciBmYWxsZW5kZSBCYXVtIGVpbiBHZXJhZXVzY2ggZ2VtYWNodD8KVm9ycmF1c2dlc2V0enQgZXMgaGF0IGlobiBuaWVtYW5kIGJlb2JhY2h0ZXQsIGFiZXIgd2VyIGhhZXR0ZSBkYXMgaW4gVmxhbmQKYXVjaCBiZW9iYWNodGVuIHNvbGxlbj8KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdC4gSXNzdCBsZWlkZW5zY2hhZnRsaWNoIGdlcm5lIFZsYSwgZGFzIGlzdCBzbwpob2xsYWVuZGlzY2hlIFB1ZGRpbmdzY2htaWVyZSBhdXMgZGVtIFRldHJhcGFrLi4uCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSW4gVmxhbmQgaXN0IG5lbiBCYXVtIHVtZ2VmYWxsZW4uLi4gKFphcmRveiwgMjMuIE1haSAxOTk2LCAxMjoxMjoxMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODMyNzc3OTU1Cn4jISB0aWQ9ODMyNzY5ODkyCltWZXJsZWd0IHZvbiBkLmViZW5lLCBSYWZmaSwgMjIuIE1haSAxOTk2LCAxODozOToyN106CgpEYXMgUHJvYmxlbSBsaWVndCBkb2NoIHRpZWZlcjogTWFjaGVuIGZhbGxlbmRlIEJhZXVtZSBkaWUga2VpbmVyIGJlb2JhY2h0ZXQKKHVuZCBkYXZvbiBrYW5uIG1hbiBqYSBpbiBWTGFuZCBhdXNnZWhlbikgdWViZXJoYXVwdCBHZXJhZXVzY2hlID8KVW5kIHdlbm4gamEsIHdlbGNoZS4KV2VubiBOZWluIGlzdCBkZXIgYmF1bSBkYW5uIHVlYmVyaGF1cHQgdW1nZWZhbGxlbiA/CldvcmFuIGthbm4gbWFuIHVlYmVyaGF1cHQgZmVzdHN0ZWxsZW4gb2IgZGVyIEJhdW0gbmljaHQgdW1nZWZhbGxlbiBpc3QsIG9kZXIKc29sbGVuIHdpciB1bnMgZGEgYXVmIGVpbmUgZWluemVsbmUgQXVzc2FnZSB2ZXJsYXNzZW4gPwoKRnJhZ2VuIHVlYmVyIEZyYWdlbi4gRGllIEFudHdvcnRlbiBrZW5udCB3b2hsIG51ciBkZXIgV2luZCAodW5kIC0+IHNjaG1hcnJuKQoKR3J1c3MKSC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBJbiBWbGFuZCBpc3QgbmVuIEJhdW0gdW1nZWZhbGxlbi4uLiAoWmFyZG96LCAyMy4gTWFpIDE5OTYsIDEyOjEyOjE0KToKfiMhIHJuPVJhZmZpIHJ0PTgzMjc4MzE2Nwp+IyEgdGlkPTgzMjc2OTg5MgpbVmVybGVndCB2b24gZC5lYmVuZSwgQXNtb2RpcywgMjIuIE1haSAxOTk2LCAxODo0ODo0Ml06ClNhaWthbiB6YWVobHQgZG9jaCBqZWRlbiBUYWcgZGllIEJhZXVtZSwgZGEgd2lyZCBlciB3b2hsIGZlc3RzdGVsbGVuLApvYiBlaW5lciB1bWdlZmFsbGVuIGlzdCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEluIFZsYW5kIGlzdCBuZW4gQmF1bSB1bWdlZmFsbGVuLi4uIChaYXJkb3osIDIzLiBNYWkgMTk5NiwgMTI6MTI6MTQpOgp+IyEgcm49UmFmZmkgcnQ9ODMyNzgzMTY3Cn4jISB0aWQ9ODMyNzY5ODkyCltWZXJsZWd0IHZvbiBkLmViZW5lLCBUYXNoYSwgMjIuIE1haSAxOTk2LCAyMTowODoxMl06CkFsc28gaWNoIGJpbiBkZXIgTWVpbnVuZywgZGFzcyBkaWUgYmVpIG9obmUgWnVob2VyZXIgdW1mYWxsZW5kZW4gQmFldW1lbiBkaWUKZm9sZ2VuZGU6CgogICAgIFdlbGNoZSBGYXJiZSBoYXR0ZSBkZXIgQmF1bT8KClRhc2hhIGdydWVzc3QgR3V5YnJ1c2gKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBJbiBWbGFuZCBpc3QgbmVuIEJhdW0gdW1nZWZhbGxlbi4uLiAoWmFyZG96LCAyMy4gTWFpIDE5OTYsIDEyOjEyOjE2KToKfiMhIHJuPVRhc2hhIHJ0PTgzMjc5MjA5Mgp+IyEgdGlkPTgzMjc2OTg5MgpbVmVybGVndCB2b24gZC5lYmVuZSwgUmFmZmksIDIzLiBNYWkgMTk5NiwgMDk6NTU6MjFdOgoKPiBXZWxjaGUgRmFyYmUgaGF0dGUgZGVyIEJhdW0/CgpKYSBpY2ggZ2xhdWJlIHdpciBuYWVoZXJuIHVucyBkZW0gZWlnZW50bGljaGVuIFByb2JsZW0uIFdlbGNoZSBGYXJiZSBoYWJlbgpTYWlrYW5zIEJhdW1lPyBVbSBkYXMgenUgYmVhbnR3b3J0ZW4gbXVlc3N0ZSBtYW4gbmF0dWVybGljaCB3aXNzZW4gd2VsY2hlCkZhcmJlIG1hbiBtZWludCAtIGRpZSBkZXMgU3RhbW1lcyBvZGVyIGRlciBCbGFldHRlciwgdW5kIGRhIHZvciBhbGxlbSBkaWUgQXVmCmRlciBPYmVyIG9kZXIgVW50ZXJzZWl0ZSA/IE9kZXIgbXVzcyAgbWFuIGRhcyBpbiBSZWxhdGlvbiB6dXIgRmFyYmUgZGVzIEJvZGVucwpzdGVsZW4gLSBudXIgSGFydCBkZXIgRHJ1ZGVud2FsZCBzb3dhcyB3aWUgJ2JvZGVuJyA/IGFsc28gaWNoIGJla29tbWUgZGEgaW1tZXIKJ1Nvd2FzIHNpZWhzdCBEdSBuaWNodC4nCgpHcnVzcwpILgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEluIFZsYW5kIGlzdCBuZW4gQmF1bSB1bWdlZmFsbGVuLi4uIChaYXJkb3osIDIzLiBNYWkgMTk5NiwgMTI6MjI6NTgpOgp+IyEgcm49UmFmZmkgcnQ9ODMyODM4MTIxCn4jISB0aWQ9ODMyNzY5ODkyCltWZXJsZWd0IHZvbiBkLmViZW5lLCBDYXVubywgMjMuIE1haSAxOTk2LCAxMjoxNTo1MV06Ck1hbCB3YXMgYW5kZXJlcyAuLi4KCldlbm4gaW0gV2FsZCB2b20gdi1sYW5kIGVpbiBCYXVtIHVtZmFlbGx0LCBpc3QgZGFzIGRvY2ggaW1tZXIgbm9jaCBlaW4gV2FsZCwKb2Rlcj8gRGFzIGJlZGV1dGV0IGRvY2gsIGRhc3MsIHdlbm4gZWluIHdlaXRlciBCYXVtIHVtZmFlbGx0LCBkZXIgV2FsZCBkYWR1cmNoCm5pY2h0IHZlcmFlbmRlcnQgd2lyZC4KRGFzIGthbm4gbWFuIGpldHp0IHNvd2VpdCB0cmVpYmVuLCBkYXNzIGFsbGUgQmFldW1lIHVtZmFsbGVuLCBiaXMgYXVmIGVpbmVuLgpVbmQgZGFzIG11ZXNzdGUgZGFubiBpbW1lciBub2NoIGVpbiBXYWxkIHNlaW4sIG5pY2h0PyBPZGVyLiBBZWhtIC4uLgoKTmFqYS4KCkMuIE5vCgooc2NobWFycm4gb2ZmLCBvZGVyIHdpZSBoZWlzc3QgZGFzPykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBJbiBWbGFuZCBpc3QgbmVuIEJhdW0gdW1nZWZhbGxlbi4uLiAoVHp1aW9wLCAyMy4gTWFpIDE5OTYsIDEyOjQ2OjIxKToKfiMhIHJuPVphcmRveiBydD04MzI4NDY5NzgKfiMhIHRpZD04MzI3Njk4OTIKRGllIGVpZ2V0bGljaGUgRnJhZ2UgaXN0IGRvY2g6Cldlbm4gZGVyIEJhdW0gdW1mYWVsbHQgdW5kIGVzIGhvZXJ0IGtlaW5lciwgaGF0IGVyIGRhbm4gZWluIEdlcmFldXNjaCAKZ2VtYWNodCA/ClVuc2ljaGVyIC4uLiBUenVpb3AKClBTLiBXYXMgaWNoIHNjaG9uIGltbWVyIHdpc3NlbiB3b2xsdGU6IEhhdCBlaW4gSHVuZCBCdWRkaGEtTmF0dXIgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogSW4gVmxhbmQgaXN0IG5lbiBCYXVtIHVtZ2VmYWxsZW4uLi4gKFRvZXRlciwgMjMuIE1haSAxOTk2LCAxNDo0MjozMCk6Cn4jISBybj1UenVpb3AgcnQ9ODMyODQ4MzgxCn4jISB0aWQ9ODMyNzY5ODkyCkljaCBiaW4gbWlyIHNpY2hlciwgZGFzcyB3ZW5uIEFydGlrZWwgZ2VsZXNlbiB3ZXJkZW4sIGRpZSBrZWluZW4gaW50ZXJlcy0Kc2llcmVuLCBhdWNoIEJhZXVtZSBHZXJhZXVzY2hlIG1hY2hlbiwgZGllIGtlaW5lciBob2VydCwgb2RlciBzby4uLgogIFRvZXRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogSW4gVmxhbmQgaXN0IG5lbiBCYXVtIHVtZ2VmYWxsZW4uLi4gKFR6dWlvcCwgMjMuIE1haSAxOTk2LCAxNjo0MzoxNik6Cn4jISBybj1Ub2V0ZXIgcnQ9ODMyODU1MzUwCn4jISB0aWQ9ODMyNzY5ODkyCldpZSBrYW5uc3QgRHUgRGlyIGRhIHNpY2hlciBzZWluID8gQmlzdCBEdSBzY2hvbiBtYWwgZGFiZWlnZXdlc2VuID8KT2RlciBoYXN0IHdlbmlnc3RlbnMgRFUgQnVkZGhhLU5hdHVyID8gCk9kZXIgbWVpbmVuIEhVbmQgZ2VzZWhlbiA/ClZlcndpcnJ0IC4uLiBUenVpb3AKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkpvZiB6YWVobHQgbmljaHQuLi4gIChCZW5kZWlnaWQsIDIzLiBNYWkgMTk5NiwgMTg6NTc6MDEpOgpHcmFkZSBiZWkgZWluZW0geGxvb2sgPHNwaWVsZXI+IGdlc2VoZW46CgouLi4KMTAuIE5pY2h0cyBiZXNvbmRlcmVzIC4uLi4uLi4uLi4uLi4uLi4uLi4gLi4gW34vam9mL3Jvc2VuIzIwOTA5XQouLgoKKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogSW4gVmxhbmQgaXN0IG5lbiBCYXVtIHVtZ2VmYWxsZW4uLi4gKFJhZmZpLCAyMy4gTWFpIDE5OTYsIDE5OjEyOjUzKToKfiMhIHJuPVR6dWlvcCBydD04MzI4NjI1OTYKfiMhIHRpZD04MzI3Njk4OTIKCkhhdCBldHdhIGRlaW4gSHVuZCBkZW4gYmF1bSBnZXNjaGFlbmRldCB1bmQgZGFubiB1bWdld29yZmVuID8KCkZyYWdlbiB1ZWJlciBGcmFnZW4uCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouLi4uIChQcmVkYXRvciwgMjMuIE1haSAxOTk2LCAyMDoyMDoyOCk6CkR1IGZpbmRlc3QgYW4gZWluZW0gU2tlbGV0dCBrZWluICJLbm9jaGVuIi4KS2VpbiBLb21tZW50YXIhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZXJhZGUgbWFsIGltIE5vYmVscmVzdGF1cmFudDogKFJhZmZpLCAyMy4gTWFpIDE5OTYsIDIyOjQxOjI4KToKCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBzdWVkb3N0ZW4uCkRpZSBUb3AtTGlzdGUsIFRvcC1TcGllbGVybGlzdGUsIFRvcC1TZWhlcmxpc3RlIHVuZCBUb3AtWndlaXRpbGlzdGUuCj4gdW50IHRpc2NoZQpEYXMgRXNzZW4gYXVmIGRlbiBUaXNjaGVuIGxhZXNzdCBEaXIgZGFzIFdhc3NlciBpbSBNdW5kZSB6dXNhbW1lbmxhdWZlbi4KPiB1bnQgZXNzZW4KRXMgc2llaHQgYWxsZXMgc2VociBhcHBldGl0bGljaCBhdXMuCj4gdW50IHdhc3NlcgpEaXIgbGFldWZ0IHNjaG9uIGRlciBTYWJiZXIgYXVzIGRlbSBNdW5kLgo+IHVudCBtdW5kClNvIHNlaHIgRHUgYXVjaCBzY2hpZWxzdCwgRHUga2FubnN0IERlaW5lbiBNdW5kIG5pY2h0IGVya2VubmVuLgo+IHJvdGZsCkR1IHJvdGZsc3QuCj4KCkdydXNzCkguCihOYWNoIERpa3RhdCBhdWYgRlAtSmFndCB2ZXJzY2h3dW5kZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2hhbWdyZW56ZSAoSGFkcmEsIDIzLiBNYWkgMTk5NiwgMjM6Mjc6MDQpOgphbWFuZGEgaGF0IGVjaHQga2VpbmUgaGVtbXVuZ2VuOgoKQW1hbmRhIGdyYWJiZWx0IGFuIGVpbmVtIEZyb3NjaCBoZXJ1bS4KRWluIEZyb3NjaCBodWVwZnQgaW4gZGVyIEdlZ2VuZCBoZXJ1bS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZhbWlsaWUgQS4gYmVpbSBBdXNmbHVnLi4uIChNdXBmZWwsIDI0LiBNYWkgMTk5NiwgMDI6NTM6MDIpOgokIER1IGJlZmluZGVzdCBEaWNoIGF1ZiBkZW0gc3VlZG9lc3RsaWNoc3RlbiBaaXBmZWwgZGVzIHp1Z2Vmcm9yZW5lbiBXZWloZXJzLgpEZXIgV2VpaGVyIGlzdCB6d2FyIGtvbXBsZXR0IHp1Z2Vmcm9yZW4sIGFiZXIgYmVzb25kZXJzIGRpY2sgaXN0IGRpZQpFaXNzY2hpY2h0Cm5pY2h0LiBTdWVkbGljaCB2b24gRGlyIGlzdCBlaW4gU3RlZywgdm9uIGRlbSBhdXMgZWluIFBmYWQgZHVyY2ggZGllClJvaHJrb2xiZW4Kd2VpdGVyZnVlaHJ0LgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuLCB3ZXN0ZW4sIG5vcmRlbiB1bmQgbm9yZHdlc3Rlbi4KRWluZSBNdWVuemUuCltBZ2VudGVuOl0gU3RldmUga2FubiBuaXguCltBZ2VudGVuOl0gS2FyYXRla2lkIGlzdCBkZXIgZXJzdGUgSG9iYml0LUtsZXJpa2VyLgpbQWdlbnRlbjpdIEtlbGRlciBnZWh0IHNpY2ggamV0enQgYXVjaCBiZXNhdWZlbi4KW0FnZW50ZW46XSBTaW50cmFtIGRlciB0ZXVmbGlzY2hlIFp3ZXJnLgpbQWdlbnRlbjpdIEJlb2JhY2h0ZXIgc2llaHQgamV0enQgYXVjaCBldHdhcy4KW0FnZW50ZW46XSBJc3NvbWFkIGZlaGxlbiBqZXR6dCBrZWluZSBFcHMgbWVociA6KS4KW0FnZW50ZW46XSBMYXVyaW4gc3RpcmJ0IHdhaHJzY2hlaW5saWNoIGdsZWljaC4KW0FnZW50ZW46XSBKYW1lcyAgJyBBc21vZGlzICcgIEJvbmQgYXVmIGdlaGVpbWVyIE1pc3Npb24uCkFzbW9kaW5hIHNjaGxpdHRlcnQgaGVyZWluLgpBc21vZGluYSBzY2hsaXR0ZXJ0IG5hY2ggTm9yZGVuLgoKCnVzdy4uLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBJbiBWbGFuZCBpc3QgbmVuIEJhdW0gdW1nZWZhbGxlbi4uLiAoVHp1aW9wLCAyNC4gTWFpIDE5OTYsIDEyOjE3OjU5KToKfiMhIHJuPVJhZmZpIHJ0PTgzMjg3MTU3Mwp+IyEgdGlkPTgzMjc2OTg5MgpXb2hlciBzb2xsIGljaCBkYXMgd2lzc2VuID8KSWNoIHdhciBkb2NoIG5pY2h0IGRhIHVuZCBoYWIgYXVjaCBuaWNodHMgZ2Vob2VydC4KCldlcmQgYWJlciBtYWwgZHJ1ZWJlciBuYWNoZGVua2VuLiAvVHp1aW9wCgpQUy4gT2RlciBkb2NoIGxpZWJlciBkaWUgU2NocmF0LVF1ZXN0ID8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmFtaWxpZSBBLiBiZWltIEF1c2ZsdWcuLi4gKEFzbW9kaXMsIDI0LiBNYWkgMTk5NiwgMTc6MDI6NDUpOgp+IyEgcm49TXVwZmVsIHJ0PTgzMjg5OTE4Mgp+IyEgdGlkPTgzMjg5OTE4MgpIbW0sIG11c3N0IGR1IGRhcyBzbyBicmVpdHRyZXRlbiwgamV0enQgd2VyZCBpY2ggYmVzdGltbXQgdm9uIEhhdGUgCmdlbG9lc2NodCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VsYnN0ZWluc2NoYWV0enVuZzopIChFcm9zLCAyNS4gTWFpIDE5OTYsIDA0OjE2OjUzKToKQWxzbzoKQmVmZWhsZSBJbnRhcmJpciBzY2hhZXR6ZSBFcm9zIGVpbi4gKG1pY2ggc2VsYnN0KToKSW50YXJiaXIgc2NoYXV0IEVyb3MgYWJzY2hhZXR6ZW5kIGFuLgpJbnRhcmJpciBzYWd0OiBBbHNvLCBudW4uIExhdXNjaGUgbWVpbmVuIFdvcnRlbjogVHJhZ2UgZXMgbWl0IEZhc3N1bmcsIGFiZXIKSW50YXJiaXIgc2FndDogRXJvcyBpc3Qgc3RhZXJrZXIgYWxzIER1LiBEZWluZSBSdWVzdHVuZyBpc3QgYmVzc2VyIGFscyBkaWUKSW50YXJiaXIgc2FndDogRXJvcycuIFp1IGd1dGVyIExldHp0OiBEZWluZSBXYWZmZSBpc3QgYmVzc2VyIGFscyBkaWUgRXJvcycuIEVyCkludGFyYmlyIHNhZ3Q6IGthZW1wZnQgbWl0IGJsb3NzZW4gSGFlbmRlbiB1bmQgbWFjaHQgZGFtaXQgZm9sZ2VuZGVuIFNjaGFkZW46CkludGFyYmlyIHNhZ3Q6IFNjaGxhZWdlLgpJbnRhcmJpciB2ZXJsYWVzc3QgZGllc2UgV2VsdC4KCkhtIG1hbiBzb2xscyBuaWNodCBnbGF1YmVuOikKCkVpbiB2ZXJkdXR6ZXIgRXJvcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIGxpZWJlIGRpZXNlIFVocm1lbGR1bmcgOi0pIChNdXBmZWwsIDI1LiBNYWkgMTk5NiwgMDU6MDU6MzcpOgpJbSB2ZXJsb3JlbmVuIExhbmQgc2luZCB3aWVkZXIgNSBCYWV1bWUgdW1nZWZhbGxlbi4KCnB1aGggc2Nob24gNSB1aHIuLi4uICpnYWVobioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJY2ggbGllYmUgZGllc2UgVWhybWVsZHVuZyA6LSkgKEFzbW9kaXMsIDI1LiBNYWkgMTk5NiwgMDY6MDk6NTUpOgp+IyEgcm49TXVwZmVsIHJ0PTgzMjk5MzUzNwp+IyEgdGlkPTgzMjk5MzUzNwpIbW0sIGRpZXNlIFVocm1lbGR1bmcgaXN0IHppZW1saWNoIHJlYWxpc3Rpc2NoOgogICBEdSBoYXN0IGdlcmFkZSA2IFN0dWZlbnB1bmt0ZSB2ZXJsb3Jlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKExlY2h1Y2ssIDI1LiBNYWkgMTk5NiwgMTY6MjU6NDMpOgo+IERhbnppZyBydWZ0OiBJY2ggYmluIHZlcmdpZnRldCwgd2FzIHR1bj8KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgRGFuemlnIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYWFyaWdlIEFuZ2VsZWdlbmhlaXQ/IChMdXB1cywgMjUuIE1haSAxOTk2LCAxNjo1ODozMyk6CkViZW46ClNjaG5lZXdpdHRjaGVuIGhhdCBlaW5lIEhhdXQgc28gd2Vpc3Mgd2llIFNjaG5lZSwgTGlwcGVuIHJvdCB3aWUgQmx1dAp1bmQgSGFhcmUgc2Nod2FyeiB3aWUgRWJlbmhvbHouClNpZSBpc3QgYWJzb2x1dCBmaXQuCj4gU2NobmVld2l0dGNoZW4gc2FndCA6ICdCb2luZyBoYXQgc28gZWluZW4gc3Vlc3NlbiBTdGVpbmJlaXNzZXIuJwpEdSBmaW5kZXN0IGFuIFNjaG5lZXdpdHRjaGVuIGtlaW4gIkhhYXJlIi4KRGVpbiBCbGljayB3ZW5kZXQgc2ljaCBkZXIgVW1nZWJ1bmcgenUuClNvd2FzIHNpZWhzdCBEdSBhdWNoIGRhIG5pY2h0IQoKQWxzbyB3YXMgbnU/Cgpncmluc2VuZCAod2llIGltbWVyKSwgTHVwdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhZHJhIChBY3JpbW9uLCAyNi4gTWFpIDE5OTYsIDEzOjIyOjA3KToKR2VyYWRlIHBhc3NpZXJ0OgoKRWluIGxhdXRlciBLbmFsbCBoYWxsdCB2b20gR2ViaXJnZSBoZXJ1ZWJlci4KSGFkcmEgZXJzY2hlaW50IGluIGVpbmVtIHNwcnVlaGVuZGVuIEZ1bmtlbnJlZ2VuLgoKU28gd2VpdCBoYXRzIGRpY2ggZ2VzY2hsZXVkZXJ0LCBIYWRyYT8gOi0pCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmxldCdzIHRhbGsgYWJvdXQuLi4gKEZ5dCwgMjguIE1haSAxOTk2LCAwMTowMjowNyk6Cj4gQXp6dXJvIHNhZ3Q6IFRqYSBVbG8gaGF0dGUgc2Nob24gbGFuZ2Uga2VpbmVuIFNleCBtZWhyLiBLZWluIHd1bmRlciBkYXMgc2llCkF6enVybyBzYWd0OiBzaWNoIGRhIG5pY2h0IGtvbnplbnRyaWVyZW4ga2FubgpEdSBzYWdzdDogIGVyaW5uZXJ0IG1pY2ggaXJnZW5kd2llIGFuIGRhcyB2ZXJsb2dlbmUgbGFuZCA6KQo+IEF6enVybyBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpEdSBzYWdzdDogIGRhbm4gdHUgd2FzIDspCj4gQXp6dXJvIG5pY2t0IHp1c3RpbW1lbmQuCkF6enVybyBzdG9laG50IHByb2Jld2Vpc2UuCkF6enVybyBsYXVzY2h0IGFuZ2VzdHJlbmd0LgpEdSBzYWdzdDogIG5hamEsIGZhc3QgOikKRHUgc2Fnc3Q6ICB1bmQgc29uc3Q/IGR1IGhhc3QgYWxzbyBhdWNoIGtlaW5lbiBzZXggb2RlciB3YXM/Cj4gUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEF6enVyby4KCkZ5dCwgc2ljaCB3dW5kZXJuZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEljaCBsaWViZSBkaWVzZSBVaHJtZWxkdW5nIDotKSAoUmFmZmksIDI4LiBNYWkgMTk5NiwgMTI6NDE6MTUpOgp+IyEgcm49TXVwZmVsIHJ0PTgzMjk5MzUzNwp+IyEgdGlkPTgzMjk5MzUzNwo+IEltIHZlcmxvcmVuZW4gTGFuZCBzaW5kIHdpZWRlciA1IEJhZXVtZSB1bWdlZmFsbGVuLgoKSGF0IGRhcyB3ZW5pZ3N0ZW5zIGpldHp0IGplbWFuZCBnZWhvZXJ0ID8KCkdydXNzIEguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDI4LiBNYWkgMTk5NiwgMTQ6MTQ6MjUpOgoKIldlbm4gbWFuIHNpY2ggd3VlbnNjaHQsIGRhc3Mgc2ljaCBkaWUgZWlnZW5lbiBUcmFldW1lIGVyZnVlbGxlbiBpc3QgZXMgYW0KYmVzdGVuLCBlcnN0IG1hbCBhdWZ6dXdhY2hlbi4iIChVbmJla2FubnQpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTW9yZ290aCwgMjguIE1haSAxOTk2LCAxNDo1NjoyMyk6Cj5bVmxhbmQ6U2FpS0FOXSBtaXN0IHVuc2VyZSByZWNobmVyIHdpcmQgcmVib290ZWQuLiBpY2ggbXVzcyByZWNobmVyIHdlY2hzZWwKU2Fpa2FuICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbGluZSwgMjguIE1haSAxOTk2LCAxNjoxNzowMyk6CgpbQWxsZ2VtZWluOkJvQm8gc3VjaHQgZGllIEtsaXBwZS5dCltUb2Q6TGFyc10gRWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWwgaGF0IGdlcmFkZSBCb2JvIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWxdIFBmZmZmZmZmZmZmZnQuLi4uLi4uUExVTVBTIQpbQWxsZ2VtZWluOkFsaW5lXSBXZWxjaGUgS2xpcHBlPwpbQWxsZ2VtZWluOkFsaW5lXSBBY2ggZGllIQoKQWxpbmUgKG11c3Mgc2NobmVsbGVyIGZyYWdlbiBsZXJuZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHcmVsZ2VuIChMZWNodWNrLCAyOC4gTWFpIDE5OTYsIDE5OjI4OjIzKToKCj4gRWluZSB3aW56aWdlLCBhYmVyIHNlaHIgZmV0dGUgRmVlIG1pdCBkdXJjaHNpY2h0aWdlbiBGbHVlZ2VsY2hlbiB6d2Flbmd0CnNpY2gKdW50ZXIgRGlyIGhlcnZvci4gRGllc2UgUGVyc29uIHNvbGx0ZSBlcnN0bWFsIFNwb3J0IHRyZWliZW4sIGJldm9yIHNpZSBEaWNoCidGZXR0d2Fuc3QnIG5lbm50ICEKCgp1bnQgZ3JlbGdlbgpEYXMgZXR3YSAxMGNtIGdyb3NzZSB1bmQgZXR3YSBnbGVpY2ggZGlja2UgUGVyc29lbmNoZW4gdm9yIERpciBoYXQgendlaQpkdXJjaHNpY2h0aWdlIEZsdWVnZWxwYWFyZSB1bmQgaXN0IGRhbWl0IHRhdHNhZWNobGljaCBlaW5lIEZlZS4gQWxsZXJkaW5ncwpiZXp3ZWlmZWxzdCBEdSwgZGFzcyBkaWVzZSBGZWUgbWl0IGlocmVuIEZsdWVnZWxuIGRlbiBub2V0aWdlbiBBdWZ0cmllYiBmdWVyCmlociBFaWdlbmdld2ljaHQgZXJ6ZXVnZW4ga29lbm50ZS4gRGllc2VzIG9mZmVuc2ljaHRsaWNoZSBQcm9ibGVtIGtvZW5udGUgYXVjaApiYWxkIERlaW4gUHJvYmxlbSB3ZXJkZW4sIGRhIEdyZWxnZW4gZ2VyYWRlIG1pdCBlaW5lbSBLZW5uZXJibGljayBkaWUgR2V3dWVyemUKZnVlciBEaWNoIGF1c3N1Y2h0LgoKCnNjaGFldHogZ3JlbGdlbgpHcmVsZ2VuIGlzdCB1bmdlZmFlaHIgMTcwIGNtIGdyb3NzLgpHcmVsZ2VuIG11c3Mgc2Nob24gZXR3YXMgbGFlbmdlciB3ZWljaGdla2xvcHB0IHdlcmRlbi4KR3JlbGdlbnMgV2FmZmUgaXN0IGxhZWNoZXJsaWNoLgpHcmVsZ2VucyBSdWVzdHVuZyBpc3QgZmFzdCB1bmR1cmNoZHJpbmdiYXIuCgoKV2FzIG51PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdyZWxnZW4gKEZ5dCwgMjguIE1haSAxOTk2LCAxOTozODo1Myk6Cn4jISBybj1MZWNodWNrIHJ0PTgzMzMwNDUwMwp+IyEgdGlkPTgzMzMwNDUwMwoKRGllIDEuNzAgTWV0ZXIgc2luZCBkaWUgRmx1Z2hvZWhlLi4uIHdpZSBpbW1lciA6KSkKCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmthcmF0ZSAoUmltdXMsIDI4LiBNYWkgMTk5NiwgMjA6NDg6MDIpOgpEdSBtdXNzdCBtaW5kZXN0ZW5zIDUyIFN0dW5kZW4gU3BpZWx6ZWl0IHp3aXNjaGVuIGRlciB2b3JoZXJpZ2VuIFBydWVmdW5nCnVuZCBkaWVzZXIgbGFzc2VuLiBEYXp1IGZlaGxlbiBEaXIgbm9jaCAwIFN0dW5kZW4gdW5kIDAgTWludXRlbi4KCldpZSBsYW5nZSBkZW4gbm9jaCA/PwoKUmltdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlcmFkZSBub2NoIG1hbCBndXQgZ2VnYW5nZW4gKERlc2lkZXJpYSwgMjguIE1haSAxOTk2LCAyMjoxODoyNSk6CkViZW4gaW4gRGplbGliZWJ5OgoKRHUgYmV0ZXN0IHVuZCBiZXRlc3QgdW5kIGJldGVzdCB1bmQgYmV0ZXN0IHVuZCAuLi4KQW5keSBrb21tdCBhbi4KRHUgYmV0ZXN0IHVuZCBiZXRlc3QgdW5kIGJldGVzdCB1bmQgYmV0ZXN0IHVuZCAuLi4KQW5keSBzYWd0OiBEZXNpZGVyaWEsYmlzIGpldHp0IGhhdHRlIGljaCBuaWNodCBzbyBtaXQgZnJhdWVuLCB3ZWlsCkFuZHkgc2FndDogaWNoIHppZW1saWNoIHNjaHVlY2h0ZXJuIGJpbi4uLgpBbmR5IHNhZ3Q6IGFiZXIgamV0enQgYmluIGljaCBhdWYgZGVuIGdlc2NobWFjayBnZWtvbW1lbi4KRHUgZXJmbGVoc3QgZGllIEduYWRlIGRlciBHb2V0dGVyLgpBbmR5IGdlaHQuCkR1IGJlZW5kZXN0IERlaW4gR2ViZXQgbWl0IGVpbmVtIGVybGVpY2h0ZXJ0ZW4gJ0VuZGxpY2gnCgpEZXNpLCBpbiBuYWVjaHN0ZXIgWnVrdW5mdCB3aWVkZXIgb2VmdGVyIGJldGVuZC4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdyZWxnZW4gKEd1eWJydXNoLCAyOC4gTWFpIDE5OTYsIDIyOjI1OjM4KToKfiMhIHJuPUZ5dCBydD04MzMzMDUxMzMKfiMhIHRpZD04MzMzMDQ1MDMKT2VobSwgaW4gZGllc2VtIEZhbGwga2FubiBkYXMgImxvZ2lzY2hlcndlaXNlIiBuaWNodCBzZWluLCBkZW5uOgpEaWUga29lbm5lbiB2b3IgbGF1dGVyIGZldHRsZWliaWdrZWl0IGphIG5pY2h0IGZsaWVnZW4gdW5kIG11ZXNzZW4gZXMgZXJzdApsZXJuZW4uIDopCgpHdXlicnVzaCwgd2lyZCB3aWVkZXIgenVtIFNlaGVyLCB3ZW5uJ3MgaW0gTUcgbG9naXNjaCB6dSBndXQgOikgKGFsc28gbmllIDspICkKClAuUy46IEluIGplbmVtIEZhbGxlOiBXb2hlciBrYWVtZW4gZGFubiBkaWUgU2NobWFycm5hcnRpa2VsPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR3JlbGdlbiAoRnl0LCAyOS4gTWFpIDE5OTYsIDAwOjI2OjA1KToKfiMhIHJuPUd1eWJydXNoIHJ0PTgzMzMxNTEzOAp+IyEgdGlkPTgzMzMwNDUwMwoKTmFqYSwgc2llIG11c3MgamEgbmljaHQgYXVzIGVpZ2VuZW0gQW50cmllYiBnZWZsb2dlbiBzZWluLCBvZGVyPwoKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTm9lcmdlbGVpIChHcmltbWJvcm4sIDI5LiBNYWkgMTk5NiwgMTU6NTU6MDgpOgp+IyEgcm49UmFmZmkgcnQ9ODMzMjc1ODI1Cn4jISB0aWQ9ODMyODYyNTA2CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgSGFyZGlsLCAyOC4gTWFpIDE5OTYsIDE2OjA5OjM4XToKCkFjaCBEdSBqZS4KV2VubiBzaWNoIHNjaG9uIGVpbiBKdW5nc3B1bmQgd2llICJSYWZmaSIgYWxzIEFsdHNwaWVsZXIgYmV6ZWljaG5ldCAtIHdhcyBiaW4KaWNoIGRlbm4gZGFubiwgb2RlciBBc21vZGlzLCBUenVpb3AsIEpvaG5ueUIsIE1hZ2ljb2xsaSwgQ2hpY29sYSAoTGlzdGUgaXN0CnVudm9sbHN0YWVuZGlnLCBhYmVyIHJpY2h0dW5nc3dlaXNlbmQpID8/PwoKLUhhcmRpbC4gTW9lY2h0ZSBkYW5uIGF1Y2ggendpc2NoZW4gQUxUc3BpZWxlciB1bmQgVVJBTFRzcGllbGVyIHVudGVyc2NoaWVkZW4KaGFiZW4uIFVuZCBrZW5udCBhdWNoIG5vY2ggZGllIHNjaG9lbmUgWmVpdCwgYWxzIGVzIG5vY2gga2VpbmUgS0xzIGdhYi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTm9lcmdlbGVpIChHcmltbWJvcm4sIDI5LiBNYWkgMTk5NiwgMTU6NTU6MjYpOgp+IyEgcm49SGFyZGlsIHJ0PTgzMzI5MjU3OAp+IyEgdGlkPTgzMjg2MjUwNgpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIE1vcmdvdGgsIDI5LiBNYWkgMTk5NiwgMDc6MTk6MTFdOgpwYXNzIGF1ZiwgZGFzcyBkdSBuaWNodCBzbyBhbHQgd2lyc3QsIGRhc3MgbWFuIGRpY2ggbmljaHQgYWxzIGFydGVmYWt0IGluIGVpbgptdXNldW0gc3RlbGx0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBOb2VyZ2VsZWkgKEdyaW1tYm9ybiwgMjkuIE1haSAxOTk2LCAxNTo1NTo0OCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTgzMzM0NzE1MQp+IyEgdGlkPTgzMjg2MjUwNgpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFJhZmZpLCAyOS4gTWFpIDE5OTYsIDEyOjUyOjE5XToKCkhhcmRpbCBpbSBNRy1NdXNldW0/IC0gR3JvZWhsISBXbyB3aWxsc3QgZHUgaWhuIGRlbiBoaW5zdGVsbGVuIE1vcmdvdGggPwoKR3J1c3MKSC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTm9lcmdlbGVpIChHcmltbWJvcm4sIDI5LiBNYWkgMTk5NiwgMTU6NTY6MDIpOgp+IyEgcm49UmFmZmkgcnQ9ODMzMzY3MTM5Cn4jISB0aWQ9ODMyODYyNTA2CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgTW9yZ290aCwgMjkuIE1haSAxOTk2LCAxMjo1Mjo0OF06CmluIGRpZSBlY2tlIGZ1ZXIgbXVzdGVyIG9obmUgd2VydCA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTm9lcmdlbGVpIChHcmltbWJvcm4sIDI5LiBNYWkgMTk5NiwgMTU6NTY6MzApOgp+IyEgcm49TW9yZ290aCBydD04MzMzNjcxNjgKfiMhIHRpZD04MzI4NjI1MDYKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBBc21vZGlzLCAyOS4gTWFpIDE5OTYsIDEzOjA0OjI3XToKT2RlciBnaWJ0cyBkYSBhdWNoIG5lIEVja2UgZnVlciBTY2hyZWJlcmdhZXJ0bmVyID8gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogTm9lcmdlbGVpIChHcmltbWJvcm4sIDI5LiBNYWkgMTk5NiwgMTU6NTY6NDYpOgp+IyEgcm49QXNtb2RpcyBydD04MzMzNjc4NjcKfiMhIHRpZD04MzI4NjI1MDYKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBIYWRyYSwgMjkuIE1haSAxOTk2LCAxMzo1ODoxNl06Cnp1bWluZGVzdCBnaWJ0cyBoaWVyIGZ1ZXIgZGllIHNjaHJlYmVyZ2FlcnRlbiBnZW51ZyBnYXJ0ZW56d2VyZ2UgOykKCmhhZHJhIC0gendlcmcgYXVzIHVlYmVyemV1Z3VuZwoKcHMucyB3ZXIgdmVybGVndHMgbmFjaCBzY2htYXJubj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogTm9lcmdlbGVpIChHcmltbWJvcm4sIDI5LiBNYWkgMTk5NiwgMTU6NTg6MDMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTgzMzM3ODIwNgp+IyEgdGlkPTgzMjg2MjUwNgoKSWNoLgoKVW5kIGljaCBoYWV0dHMgamEgZ2VybiBnZWxvZXNjaHQsIGFiZXIgZGFmdWVyIHdhcnMgZGFubiBkb2NoIG5pY2h0IGluaGFsdHNsb3MKZ2VudWcuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCB3aWxsIFplbnNvciB3ZXJkZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2htYXJybiAoUGFtcGVycywgMjkuIE1haSAxOTk2LCAxNjowMjo0Myk6Clp1ciBFcmxhZXV0ZXJ1bmc6Ck1laW5lIE1lbGR1bmcgIm5pY2h0IG5ldWVzIGF1ZiBkZXIgV2VsdCIgaGVpc3N0OgpIYXJkaWwgZmllbCBrZWluIG5ldWVyIFVuc2lubiBlaW4uCgoKbm4KSGFyZGlsICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkhhcmRpbCBmaWVsIGtlaW4gbmV1ZXIgVW5zaW5uIGVpbi4KCgpXb2hlciB3dXNzdGUgZGVyIGRhcyBudXIsIGRhc3MgaWNoIGdyYWQgbWl0IGRlciBaZWl0dW5nIGZlcnRpZyB3YXI/CgpQYW1wZXJzLiBHcmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGJlaW0gVHJpYnVuYWwtTXVkLVN0YW1tdGlzY2ggaW4gTVMuLi4gKEFuYXRvbCwgMjkuIE1haSAxOTk2LCAxNzo1OToyOCk6CgoKQ2F0d2VhemxlIHNhZ3Q6IFdpciBoYWJlIGVpbmUgaG9oZSBGcmF1ZW5xdW90ZSBoZXV0ZS4uLgouLi4uIGt1cnplIFBhdXNlIC4uLi4KTWlrYSBzYWd0OiBKYSwgc28gbGFuZ3NhbSB3ZXJkZW4gc2llIGxhZXN0aWcuCgpBbmF0b2wgKHBzOiA0IHZvbiAxMyB3YXJlbiBGcmF1ZW4pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWmF1YmVyZXIuLi4gKE11cGZlbCwgMzAuIE1haSAxOTk2LCAwMjozOToyMyk6CiQgdG9kZXN6YXViZXIgbXVwZmVsCkR1IGtvZW5udGVzdCBEaXIgZGFiZWkgd2VodHVuLgoKQWNoPyEKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCwgYmVpbSBUcmlidW5hbC1NdWQtU3RhbW10aXNjaCBpbiBNUy4uLiAoU2NocnVtcGZpLCAzMC4gTWFpIDE5OTYsIDA1OjM3OjE3KToKfiMhIHJuPUFuYXRvbCBydD04MzMzODU1NjgKfiMhIHRpZD04MzMzODU1NjgKQ2F0IGhhdCBqYSBudXIgQW5nc3QsIGRhc3MgUnpuZSBpaG0gd2llZGVyIGVpbmUgYXVzcGFubnQsIGhvZWhvZSA7LSkKClNjaHJ1bXBmaSBzYWd0OiBUdSBlcywgZXMgaXN0IHZpZWxsZWljaHQgRGVpbmUgbGV0enRlIENoYW5jZSwgQ2F0ISA7LSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNdWVja2UgaW0gR2lsZGVubGV2ZWwgMSAoRGhvamFrdCwgMzAuIE1haSAxOTk2LCAwNzozNDozMCk6CkVpbiBUcmFtcGVscGZhZC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHVudGVuIHVuZCB3ZXN0ZW4uCkVpbmUgS2lsbGVybXVlY2tlLgpLaGlkYXJzIGFsdGUgWml0YWRlbGxlLgo+IGVpbmUgS2lsbGVybXVlY2tlIHJ1dHNjaHQgYXVzIHVuZCBzdHVlcnp0IGRlbiBBYmhhbmcgaGludW50ZXIuCkRpZSBLaWxsZXJtdWVja2Ugc2Nod2lycnQgZGF2b24uCgpTbyBlbGVnYW50IGhhYiBpY2ggbm9jaCBuaWUgbmUgTXVlY2tlIG5lbiBBYmdhbmcgbWFjaGVuIHNlaGVuICpncmlucyoKS2hpZGFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIE5vIDEyMzQzMjEzIChQYW1wZXJzLCAzMC4gTWFpIDE5OTYsIDExOjIxOjE1KToKW0FsbGdlbWVpbjpSb2FkcnVubmVyXSBhcmdsIC0gamV0enQgd2lsbCBpY2ggbm9jaCBrdXJ6IGRpZSBhcnRpbGxlcmllIGF1c2dlYmVuCltBbGxnZW1laW46Um9hZHJ1bm5lcl0gLSBkYSBsYWd0cyB3aWUgYmxvZWQKW1RvZDpMYXJzXSBFaW4gU3RlaW5tb25zdGVyIGhhdCBnZXJhZGUgUm9hZHJ1bm5lciB1bWdlYnJhY2h0LgoKQmVpbGVpZCBSb2FkcnVubmVyLi4uIDooCgpQYW1wZXJzLiBNdXNzdGUgdHJvdHpkZW0gbGFjaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VobnN1Y2h0IChSYWZmaSwgMzAuIE1haSAxOTk2LCAxMjoxODoxNik6CgpHZXJhZGUgZWJlbiwgZGllICdlcndhcnRlJy1OYWNocmljaHRlbiBrYWhtZW4gc28gc2NobmVsbCBkYXMgbWVpbiBsYXV0c3ByZWNoZXIKc2ljaCB1ZWJlcnNjaGx1ZyA6KQoKQmxvb2Rnb3JlICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkJsb29kZ29yZSBydWZ0OiBSUlJSUlJSUlJSUlJSUlJSVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVRERERERERERERERERERJSUlJSUlJSQpCbG9vZGdvcmUgcnVmdDogSUlJSUlJISEhISEKQmxvb2Rnb3JlIHJ1ZnQ6IFJSUlJSUlJSUlJSUlJSUlJVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVERERERERERERERERERElJSUlJSUlJCkJsb29kZ29yZSBydWZ0OiBJSUlJSUkhISEhIQpCbG9vZGdvcmUgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpJc3QgamEgaXJyZSA6KQoKR3JpbnMKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hbnU/IChMaSwgMzAuIE1haSAxOTk2LCAxMjoyMDoxMik6CmViZW4gYmVpbSBlaW5sb2dnZW4gbmFjaCBkZW0gUmVib290OgoKRGVyIFN0ZWluYmVpc3NlciB2ZXJzY2h3aW5kZXQgd2llZGVyLCB1bmQgRHUgd2FjaHN0IGluIGVpbmVyIGFuZGVyZW4gV2VsdCBhdWYuClNjaG9lbiwgZGFzcyBEdSB3aWVkZXIgZGEgYmlzdCwgTGkhClBhc3N3b3JkOiBTaWx2YW5hIHJ1ZnQ6IHJlCgpJY2ggZnJhZ2UgbWljaCBqYSBzY2hvbiwgd2llIGljaCBhbiBkaWVzZXMgc2VsdHNhbWUgcGFzc3dvcnQga29tbWUuLi4gLi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWxpY2gsIGJlaW0gVHJpYnVuYWwtTXVkLVN0YW1tdGlzY2ggaW4gTVMuLi4gKE11cGZlbCwgMzAuIE1haSAxOTk2LCAxODo1NjoyNik6Cn4jISBybj1TY2hydW1wZmkgcnQ9ODMzNDI3NDM3Cn4jISB0aWQ9ODMzMzg1NTY4CldpZWRlcj8gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUeXBpc2NoIFdlaWhuYWNodGVuIDspIChNaWV6ZSwgMzEuIE1haSAxOTk2LCAxNDowNjozNSk6CmViZW4gYmVpbSBXZWlobmFjaHRzbWFubiBnZXNjaGVoZW4uLi4uCgp1bnQgbGVia3VjaGVuCkRpZSBMZWJrdWNoZW4gc2NoYXVlbiBsZWNrZXIgYXVzLgovdW5taXR0ZWxiYXIgZGFuYWNoOgppc3MgbGVia3VjaGVuCkVzIHNpbmQga2VpbmUgTGVia3VjaGVuIG1laHIgZnVlciBEaWNoIGRhLgoKClRyYXVyaWcsIHRyYXVyaWcuICBNaWV6ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2llIGRlbm4gZGFzID8gKE1vcmdvdGgsIDMxLiBNYWkgMTk5NiwgMTk6MDE6MDgpOgo+U2Fpa2FuICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpTYWlrYW4gICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhClNhaWthbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKc2VociBzZWx0c2FtLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdpZSBkZW5uIGRhcyA/IChGeXQsIDMxLiBNYWkgMTk5NiwgMjA6MTA6MTEpOgp+IyEgcm49TW9yZ290aCBydD04MzM1NjIwNjgKfiMhIHRpZD04MzM1NjIwNjgKCkhtLCB3ZW5uIGRhcyAnbiBNYWdpZXIgTGV2ZWwgMjEgZnJhZ2VuIHd1ZXJkZSwga29lbm50ZSBtYW4gZGllCkZyYWdlIG5vY2ggdmVyc3RlaGVuLi4uIGFiZXdyIE1vcmdvdGggaXN0IFJNIG9kZXI/CgpGeXQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKPyAoSmFyaWVsLCAgMS4gSnVuIDE5OTYsIDAyOjE0OjAzKToKCiAgS2FudG9yIGdyZWlmdCBDcm9sbGEgbWl0IGVpbmVtIGdlbHVuZ2VuZW4gVXNoaXJvLWVtcGktdWNoaSBhbi4KICBDcm9sbGEgdmVyc3VjaHQgS2FudG9ycyBBbmdyaWZmIG1pdCBlaW5lbSBUZWlzb2t1LW1hd2FzaGktdWtlIGFienV3ZWhyZW4uCiAgS2FudG9yIHRyaWZmdCBDcm9sbGEgaGFydC4KQ3JvbGxhICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpDcm9sbGEgemllaHQgZWluZW4gYmxhdWVuIEd1ZXJ0ZWwgYXVzLgpDcm9sbGEgemllaHQgZWluZW4gR2kgYXVzLgpDcm9sbGEgdmVybGFlc3N0IGRpZXNlIFdlbHQuCgpKYXJpZWwgb2huZSBLb21lbnRhci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhvYmJpdHMgc2luZCBpbnRlbGxpZ2VudGVyIGFscyBad2VyZ2UuLi4gKExlY2h1Y2ssICAxLiBKdW4gMTk5NiwgMTg6NTI6MzYpOgoKTmV1bGljaCBpbiBIb2JiaXRoYXVzZW4gKGh1aHUgR3VuZHVyIDopICkKCmZyYWcgYmFlY2tlciBuYWNoIGJyb3QKRGVyIEJhZWNrZXIgc2FndDogRGEgbXVzc3QgRHUgamVtYW5kIGFuZGVyc3QgZnJhZ2VuLgoKCldpcmQgd29obCBzZWluZSBGcmF1IG1laW5lbiwgbmljaHQgd2FociBHdW5kdXI/IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmEgamEgZGVyIEJlcmcuIChQYXJhY2Vsc3VzLCAgMS4gSnVuIDE5OTYsIDIxOjQ0OjQxKToKRWluIGxhdXRlciBLbmFsbCBoYWxsdCB2b20gR2ViaXJnZSBoZXJ1ZWJlci4KQ2FyYWRocmFzICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpDZWxlYmRpbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCk9obmUgV29ydGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYW4gTGlhbyBGdSAoSmFyaWVsLCAgMS4gSnVuIDE5OTYsIDIyOjMzOjQ0KToKCgoKOCAuIC4gLiAuIC4gLiAuIC4KNyAuIC4gLiAuIC4gLiAuIC4KNiAuIC4gLiAuIC4gLiAuIC4KNSAuIE8gLiAuIC4gLiAuIC4KNCAuIFMgWCAuIC4gLiAuIC4KMyAuIC4gLiAuIC4gLiAuIC4KMiAuIC4gLiAuIC4gLiAuIC4KMSAuIC4gLiAuIC4gLiAuIC4KCiAgMSAyIDMgNCA1IDYgNyA4CgpEdSBoYXN0IDUgU2NoYWV0emUgdW5kIGRlciBEc2NoaW5uaSBoYXQgNSBTY2hhZXR6ZS4KClRqYSwgd2VyIGdld2lubnQ/IERpZSBTY2hsYWNodCB1bSBkZW4gbGV0enRlbiBzY2hhdHouCgpKYXJpZWwuICAtICBnbHVlY2tsaWNoZXJ3ZWlzZSBhbSB6dWcgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF0b21ib21iZT8gKEFjcmltb24sICAyLiBKdW4gMTk5NiwgMjA6MDU6MDIpOgoKPiBFcyBpc3QgenUgZHVua2VsICEKPiBEdSBtYWNoc3QgZWluZSBtYWdpc2NoZSBCZXdlZ3VuZy4KV2llIGF1cyBkZW0gTmljaHRzIGVyc2NoZWludCBlaW5lIGxldWNodGVuZGUgS3VnZWwuCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgpVZWJlcnRyZWliZW4gd29sbHQgaWNocyBuaWNodCA6LSkKCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWVoLCB3YXMgZGVubiBudW4/IChaYXJkb3osICA0LiBKdW4gMTk5NiwgMTQ6Mzg6MjEpOgoKRGVyIFNhZXVyZWRyYWNoZSByZWlzc3Qgc2VpbiBNYXVsIGF1ZiB1bmQgdmVyc2NobGluZ3QgRGljaCEKRWluIFNhZXVyZWRyYWNoZSBpc3QgamV0enQgaGludGVyIERpciBoZXIuCgpFaW4gZ3J1ZWJlbG5kZXIgWmFyZG96CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZW5uIEJsaWNrZSB0b2V0ZW4ga29lbm5lbiA6KSAoQWxpbmUsICA0LiBKdW4gMTk5NiwgMTk6MTk6NTYpOgoKRHUgZ3JlaWZzdCBkaWUgTWFtYmEgbWl0IGRlbSBib2VzZW4gQmxpY2sgYW4uCiAgRHUga3JhdHp0IGRpZSBNYW1iYS4KICBEaWUgTWFtYmEgZ3JlaWZ0IERpY2ggbWl0IGJvZXNlbiBCbGlja2VuIGFuLgogIERpZSBNYW1iYSB2ZXJmZWhsdCBEaWNoLgoKQWxpbmUgdWViZXJsZWd0LCBvYiBkaWUgTWFtYmEgc2llIGthbm50ZQoKUC5TLjogUGFyYWNlbHN1cyBpY2ggaGF0dGUgZGllIE1lbGR1bmcgZnVlciBIYW5kcyBzY2hvbiBiZXZvciBlcyBkaWUKTWFtYmEgZ2FiISA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmV6dWcgUmVeNDogU3RhbW10aXNjaCBGcmFua2Z1cnQgKEFjcmltb24sICA2LiBKdW4gMTk5NiwgMTQ6MDE6NDYpOiAoRnl0LCAgNi4gSnVuIDE5OTYsIDE3OjQ4OjMxKToKClNvLCBpY2ggZ2xhdWIsIGljaCBoYWIgYXVjaCBnbGVpY2ggZGllIHJpY2h0aWdlIFJ1YnJpayBlcndpc2NodC4KSWNoIG1vZWNodGUgbWljaCBuaWNodCB3ZWl0ZXIgenVtIFRoZW1hICdBdXRvIGJpbGxpZ2VyIGFscyBCYWhuJwphdWVzc2VybiwgZWhlciB6dW0gVGhlbWEgJ2lnbm9yaWVyZSBhY3JpbW9uLm1wYScuIEljaCBmcmFnIG1pY2gsCndpZXNvIGVzIG1hbmNoZSBMZXV0ZSBzY2hhZmZlbiwgYmVpIGplZGVtIFRoZW1hIGVpbmVuIGRlcmFydGlnZW4KbWlzc2lvbmFyaXNjaGVuIEVpZmVyIHp1IGVudHdpY2tlbG4sIGRhc3MgbWlyIGRlciBsZXR6dGUgS2FmZmVlCmhvY2hrb21tdCAodW5kIGRlciBsaWVndCBpbiBkZXIgUmVnZWwgc28gdW0gZGllIHZpZXIgV29jaGVuIHp1cnVlY2spLgoKRnl0LCBzaWNoIHdpZWRlciBtYWwgd3VuZGVybmQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJlenVnIFJlXjQ6IFN0YW1tdGlzY2ggRnJhbmtmdXJ0IChBY3JpbW9uLCAgNi4gSnVuIDE5OTYsIDE0OjAxOjQ2KTogKExhcmlzc2EsICA3LiBKdW4gMTk5NiwgMDg6MDc6NDUpOgp+IyEgcm49Rnl0IHJ0PTgzNDA3NjExMQp+IyEgdGlkPTgzNDA3NjExMQpIaSA6KQpFcyBoZWlzc3QgaWdub3JpZXJlIEFjcmltb24ubmV3cy4uLgpOdXIgc28gbmViZW5iZWkgOikKCkxhcmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvbGx0ZSBpY2ggZGVuIFNwcnVjaCBkZXIgV29jaGUgdmVyc2FldW10IGhhYmVuPyAoR3JpbW1ib3JuLCAgNy4gSnVuIDE5OTYsIDA5OjU3OjE1KToKCkhpZXIga29tbXQgZXIgamVkZW5mYWxsczoKCiJFaW4gTHVlZ25lciBicmF1Y2h0IGVpbiBndXRlcyBHZWRhZWNodG5pcy4iIChNYXJjdXMgRmFiaXVzIFF1aW50aWxhbml1cykKCk5hamEsIG5ldSB3YXIgZGVyIGphIG5pY2h0IGdlcmFkZS4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLbHVnZSBHbGFkaWF0b3JlbiAuLi4gKER1cmlhbiwgIDcuIEp1biAxOTk2LCAxNjo0Njo1OCk6CltNb2VyZGVyOkdlaXN0IEpvaGFubmEgdm9uIE9ybGVhbnMnXSBNb3JnZW4gZnJ1ZWggdW0gaGFsYiBzZWNocyBpbiBkZXIgQXJlbmEsCltNb2VyZGVyOkdlaXN0IEpvaGFubmEgdm9uIE9ybGVhbnMnXSBFYXJlbmRpbCEgSWNoIGhhYiBkaWUgV2FobCBkZXIgV2FmZmVuLgpbTW9lcmRlcjpHZWlzdCBKb2hhbm5hIHZvbiBPcmxlYW5zJ10gPDE2OjQwOjQ0PgoKTmFqYSwgZGllIHNvbGxlbiBqYSBhdWNoIGthZW1wZmVuLCBuaWNodCBkZW5rZW4gLi4uCgotIER1cmlhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2luZ2VuIG9obmUgR3JlbnplbiA6KSAoSGlyc2Noa3VoLCAgNy4gSnVuIDE5OTYsIDE4OjIwOjA3KToKaGksCgpNYWNoIG1hbCBmb2xnZW5kZW4gVGVzdC4uLi4KTWFjaHQgbWFsIGZvbGdlbmRlbiBUZXN0Li4uLgoKenUgVGFzbWluIGdlaGVuLCBzaW5nZW4sIG5hY2ggTWl0Z2xpZWQgZnJhZ2VuLCB6dW0gQXJjaGl2YXIsIE5vdGVuIGFiaG9sZW4sCnNpbmdlbiB1bmQgZGFubiBiZWkgVGFzbWluIGFiZ2ViZW4uLi4uIFNjaGF1dCBtYWwsIHdhcyBwYXNzaWVydC4KCkV1cmUgSGlyc2Noa3VoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWhhdG1hcyBBdXNzdHJhaGx1bmcuLi4gKEhpcnNjaGt1aCwgIDcuIEp1biAxOTk2LCAxODoyNjozNCk6CgpQbG9ldHpsaWNoIHNjaHJlaXQgZGVyIFRvZCBsYXV0IGF1Zi4KIApTZWluIE1hbnRlbCB3ZWh0IHdpbGQgZHVyY2ggZGllIEdlZ2VuZCwgYWxzIHd1ZXJkZSBlciBpbiBlaW5lbQpXaXJiZWxzdHVybSBzdGVoZW4uCiAKTWFoYXRtYSBiZXRyaXR0IGRpZXNlIFdlbHQuCgpIaXJzY2hrdWgsIGxhY2h0IGltbWVybm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOikgKEplaG92YSwgIDcuIEp1biAxOTk2LCAxODozMDoyNCk6CmViZW4gaW4gZGVyIEdpbGRlOgoKSGlyc2Noa3VoIGJlZ2lubnQgbnVuIG1pdCBkZXIgQW5ydWZ1bmdzc2VxdWVuei4KSGlyc2Noa3VoIGhhdCBlaW5lbiBBcnRpa2VsIGluIGRlciBaZWl0dW5nIHZlcm9lZmZlbnRsaWNodC4KClNvbGx0ZSBlcyBkYSBlaW5lbiBadXNhbW1lbmhhbmcgZ2ViZW4gPwoKSmVob3ZhLCBncnVlYmVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFscGhhIGRlciBHZWRhbmtlbmxlc2VyIChNYXJpdGEsICA3LiBKdW4gMTk5NiwgMjA6MjE6NTQpOgoKQm9uZSBtdXNzIGpldHp0IHdlZy4KW0FiZW50ZXVlcjpBbHBoYV0gamV0enQ/CgpJbiB3ZWxjaGVyIEdpbGRlIGlzdCBkZXI/IERhIHdpbGwgaWNoIGF1Y2ggcmVpbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClF1YWs/IChLYWxsaW9wZSwgIDguIEp1biAxOTk2LCAwMjo0ODozOCk6Cgo+IHd1CkR1IHdpcmtzdCBlaW4gV3VuZGVyLgpFaW4gRnJvc2NoIHZlcndhbmRlbHQgc2ljaCBpbiBlaW5lbiBrbGVpbmVuIGdydWVuZW4gRnJvc2NoLgoKS2FsbGlvcGUsIHNjaG11bnplbG5kLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTb2xsdGUgaWNoIGRlbiBTcHJ1Y2ggZGVyIFdvY2hlIHZlcnNhZXVtdCBoYWJlbj8gKFNjaHJ1bXBmaSwgIDguIEp1biAxOTk2LCAwMzoxMzowMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODM0MTM0MjM1Cn4jISB0aWQ9ODM0MTM0MjM1CkRhcyB3aWVkZXJ1bSBpc3QgbmljaHQgbmV1ZXMgYmVpIERpci4gOy0pClNjaHJ1bXBmaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKemFlaG5lIC4uLiAoSmltZGlncml6LCAgOC4gSnVuIDE5OTYsIDE2OjE3OjI2KToKSGksIAplYmVuIGJlaSBGcmFnZ2xlOgoKPiB1bnQgZ3Jhbml0CkRlciBHcmFuaXQgaXN0IGlkZWFsLCB1bSBzaWNoIGRpZSBaYWVobmUgZGFyYW4gYXVzenViZWlzc2VuIQo+IGJlaXNzZSBpbiBncmFuaXQgCldhcyB3aWxsc3QgRHUgRGlyIGRlbm4gYXVzYmVpc3Nlbj8KYmVpc3NlIHphZWhuZSAgIApEdSBiaXN0IHRvdGFsIHZlcnJ1ZWNrdCEKS3JhY2hlbmQgc2NobGFlZ3N0IER1IGRlaW5lIFphZWhuZSBpbiBkZW4gR3Jhbml0LgpaYWhuc3BsaXR0ZXIgZmxpZWdlbiB1bWhlci4KPiBsCkR1IGJsaWNrc3QgRGljaCB1bSB1bmQgYmlzdCBoZWlsZnJvaDogaGllciBlbmRldGUgZGllIEJhdXd1dCBkZXIKRG9vemVyLiBEaWUgV2FlbmRlIHNpbmQgaW4gaWhyZW0gdXJzcHJ1ZW5nbGljaGVuIFp1c3RhbmQsIGRlciBCb2Rlbgppc3Qgc28gcmF1aCwgd2llIEZlbHNib2RlbiBlYmVuIHp1IHNlaW4gaGF0LCB1bmQgZGFzIExvY2ggaW0gQm9kZW4KaXN0IGVpbmRldXRpZyBuYXR1ZXJsaWNoZW4gVXJzcHJ1bmdzLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogdW50ZW4sIHN1ZWRlbiB1bmQgd2VzdGVuLgpFaW4gWmFobi4KdW50IHphaG4KRXMgc2luZCB3ZXJ0bG9zZSBrbGVpbmUgWmFlaG5lIGF1cyBkZW0gR2ViaXNzIHZvbiBKaW1EaUdyaXouCkR1IHNpZWhzdCBlaW5lbiBaYWhuLgoKQXVhICwKIEppbSBkaUdyaXosIHphaG5sb3MuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW0gU3ByYWNoa2FsZW5kZXIgZ2VmdW5kZW4gLi4gKEhhcnJ5aGFsbGVyLCAgOC4gSnVuIDE5OTYsIDIwOjA4OjQ4KToKJ0EgZ2VudGxlbWFuIHdobyBoYWQgYmVlbiB2ZXJ5IHVuaGFwcHkgaW4gbWFycmlnZSBtYXJyaWVkIGltbWVkaWF0ZWx5IGFmdGVyCmhpcyB3aWZlIGRpZWQuCkRyLkpvaG5zb24gc2FpZCwgaXQgd2FzIHRoZSB0cml1bXBoIG9mIGhvcGUgb3ZlciB0aGUgZXhwZXJpZW5jZS4nClNhbXVlbCBKb2huc29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCZW4qIGRlciBXaXR6Ym9sZCAoQXNtb2RpcywgIDkuIEp1biAxOTk2LCAwNToxMToyMCk6CkdlcmFkZSBpbiBOZXNrYXlhIGVudGRlY2t0OgoKdW50IHN0YXViCi0+RW5nbGlzY2ggJ2R1c3QnLCBpbiBrbGVpbmVuIFBvcnRpb25lbiAnZHVzdHknLiA6LSkKCiBob2ZmZW50bGljaCBnYWIgZGFzIHdlbmlnc3RlbnMgZWluZW4gZnAgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZW5uIGVzIFRhZyB3aXJkIGluIE1HIDopIChBc21vZGlzLCAgOS4gSnVuIDE5OTYsIDA1OjE5OjQwKToKa3dlcgoKICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gU29uLCAgOS4gSnVuIDE5OTYsIDA1OjE4OjE5ICgxNCBUZWlsbmVobWVyKQoKTGFzZXJtYW4uLi4uLi4uLnMgIEdsb2luLi4uLi4uLi4uLi5zICBTZW1tZWwuLi4uLi4uLi4ucyAgQW5uaWhpbGF0b3IuLi4uLnMKUGFudGhlci4uLi4uLi4uLnMgIEtlbGRlci4uLi4uLi4uLi56ICBaaW5vLi4uLi4uLi4uLi4uUyAgU3RldmUuLi4uLi4uLi4uLnoKS2FyYXRla2lkLi4uLi4uLnogIEFzbW9kaW5hLi4uLi4uLi5TICBJc3NvbWFkLi4uLi4uLi4uUyAgTGF1cmluLi4uLi4uLi4uLnoKQXNtb2Rpcy4uLi4uLi4uLnogIEF6enVyby4uLi4uLi4uLi5NCgoKa3dlciBpbiBkcmVzZGVuCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBTb24sICA5LiBKdW4gMTk5NiwgMDU6MTg6NDEgKDYgVGVpbG5laG1lcikKCkxhc2VybWFuLi4uLi4uLi5zICBHbG9pbi4uLi4uLi4uLi4ucyAgU2VtbWVsLi4uLi4uLi4uLnMgIEFubmloaWxhdG9yLi4uLi5zClBhbnRoZXIuLi4uLi4uLi5zICBaaW5vLi4uLi4uLi4uLi4uUwoKCmt3ZXIgaW4ga2Fpc2Vyc2xhdXRlcm4KICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIFNvbiwgIDkuIEp1biAxOTk2LCAwNToxOToxNCAoNyBUZWlsbmVobWVyKQoKS2VsZGVyLi4uLi4uLi4uLnogIFN0ZXZlLi4uLi4uLi4uLi56ICBLYXJhdGVraWQuLi4uLi4ueiAgQXNtb2RpbmEuLi4uLi4uLlMKSXNzb21hZC4uLi4uLi4uLlMgIExhdXJpbi4uLi4uLi4uLi56ICBBc21vZGlzLi4uLi4uLi4uegoKCldhcyBtYWNodCBudXIgQXp6dXJvIGRhendpc2NoZW4gPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHJlc2RlbiBydWxlcyAoR3JpbW1ib3JuLCAxMC4gSnVuIDE5OTYsIDA5OjAxOjMxKToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBBbm5paGlsYXRvciwgIDkuIEp1biAxOTk2LCAwNzo0MjoxM106CiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBTb24sICA5LiBKdW4gMTk5NiwgMDc6Mzk6MzAgKDQgVGVpbG5laG1lcikKCipMYXNlcm1hbi4uLi4uLi5zICBTZW1tZWwuLi4uLi4uLi4ucyAgQW5uaWhpbGF0b3IuLi4uLnMgICpQYW50aGVyLi4uLi4uLi5zCgpbc10gTGFzZXJtYW4gZGVyIEthcmF0ZS1LYWVtcGZlciwgQW5mYWVuZ2VyIC0gRWxmIC0gW0RyZXNkZW5dCltzXSBTZW1tZWwgZGVyIERydWlkZSAtIEVsZiAtIFtEcmVzZGVuXQpbc10gQW5uaWhpbGF0b3IgZGVyIEthcmF0ZS1LYWVtcGZlciwgNi4gS3l1IC0gRWxmIC0gW0RyZXNkZW5dCltzXSBQYW50aGVyIGRlciBLYXJhdGUtS2FlbXBmZXIsIDYuIEt5dSAtIEVsZiAtIFtEcmVzZGVuXQoKaWNoIHd1c3N0ZSBlcyBkb2NoIGltbWVyIDogZGllIERyZXNkbmVyIHVlYmVybmVobWVuIGRhcyBtdWQgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBc21vZGlzIHVuZCBkaWUgQWVudGVuIChSYWZmaSwgMTAuIEp1biAxOTk2LCAwOToyNDowMik6CgpbPE1hc3RlUj46QXNtb2Rpc10gbGFnCls8TWFzdGVSPjo8TWFzdGVSPl0gTGFnOiAxLjYlLzYwLCAyLjYlLzE1LCA0LjglLzEKWzxNYXN0ZVI+OkFzbW9kaXMgbGFlc3N0IGRpZSBFYmVuZSAnQWVudGVuJyBlbnRzdGVoZW4uXQpbPE1hc3RlUj46QXNtb2RpcyB2ZXJsYWVzc3QgYWxzIExldHp0ZXIgZGllIEViZW5lICdBZW50ZW4nLCB3b3JhdWYgZGllc2Ugc2ljaAogICAgICAgICAgaW4gZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCls8TWFzdGVSPjpBc21vZGlzIGxhZXNzdCBkaWUgRWJlbmUgJ0FnZW50ZW4nIGVudHN0ZWhlbi5dCls8TWFzdGVSPjpSYWZmaV0gQWVudGVuIC0gR3JpbnMgZGFzIGlzdCBkb2NoIG1hbCBuZSBFYmVuZSA6KQpbPE1hc3RlUj46QXNtb2Rpc10gamFqYSwgZGllIHRhc3RhdHVyIGhpZXIgc2NobHVja3QgYWIgdW5kIHp1IG5lbiBCdWNoc3RhYmVuIAogPE1hc3RlUj46QXNtb2Rpc10gOikKWzxNYXN0ZVI+OkFzbW9kaXNdIHVwCls8TWFzdGVSPjo8TWFzdGVSPl0gRGFzIE1VRCBsYWV1ZnQgc2VpdCA4IFN0dW5kZW4sIDMwIE1pbnV0ZW4gdW5kIDUzIFNla3VuZGVuCls8TWFzdGVSPjo8TWFzdGVSPl0gRXMgc2luZCBNb21lbnRhbiA0OSBTcGllbGVyIGVpbmdlbG9nZ3Q7IGRhcyBNYXhpbXVtIGxhZwpbPE1hc3RlUj46PE1hc3RlUj5dIGhldXRlIGJlaSA1MCB1bmQgZGVyIFJla29yZCBiaXNoZXIgaXN0IDE3MC4KWzxNYXN0ZVI+OkFzbW9kaXNdIHNvc28sIHJlYm9vdCB1bSAxIHVociwgd2llc28gbnVyID8KCkdyaW5zCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoZXV0ZSBpbiBkZXIgWmVpdHVuZyAuLiAoQWxib2luLCAxMS4gSnVuIDE5OTYsIDEwOjE4OjIxKToKSW50ZXJuZXQtU3VlY2h0aWdlcgpFcnN0bWFscyBoYXQgc2ljaCBpbiBkZW4gTmllZGVybGFuZGVuIGVpbiBJbnRlcm5ldHN1ZWNodGlnZXIgTWFubiBhbiBlaW5lCkRyb2dlbmJlcmF0dW5nc3N0ZWxsZSBnZXdhbmR0LmVyIGdsdWFidCwgZGFzcyBlciBhdXMgZWlnZW5lciBLcmFmdApuaWNodCBtZWhyIHZvbiBzZWluZXIgTGVpZGVuc2NoYWZ0IGxvc2tvbW10LCBzYWd0ZSBnZXN0ZXJuIGRlciBTcHJlY2hlciBkZXMKWmVudHJ1bXMgaW4gQnJlZGEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaGV1dGUgaW4gZGVyIFplaXR1bmcgLi4gKE1vcmdvdGgsIDExLiBKdW4gMTk5NiwgMTA6MTk6MDIpOgp+IyEgcm49QWxib2luIHJ0PTgzNDQ4MTEwMQp+IyEgdGlkPTgzNDQ4MTEwMQp3aXIgc29sbHRlbiB1bnMgYWxsZSB3b2hsIG1hbCBtZWxkZW4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGhldXRlIGluIGRlciBaZWl0dW5nIC4uIChHdWxkdWthdCwgMTEuIEp1biAxOTk2LCAxMjowMTowNyk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTgzNDQ4MTE0Mgp+IyEgdGlkPTgzNDQ4MTEwMQoKSm8sIGRlciBhcnRpa2VsIGhhZW5ndCBhdWNoIGhpZXIgc2Nob24gYW4gbWVocmVyZW4gcmVjaG5lcm4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBoZXV0ZSBpbiBkZXIgWmVpdHVuZyAuLiAoTG9jbywgMTEuIEp1biAxOTk2LCAxNDoxNzozNCk6Cn4jISBybj1HdWxkdWthdCBydD04MzQ0ODcyNjcKfiMhIHRpZD04MzQ0ODExMDEKRGFzIGRpZSBOaWVkZXJsYW5kZSBkYSB0YXRzYWVjaGxpY2ggbWVocmVyZSBKYWhyZSBoaW50ZXIgYW5kZXJlbiBMYWVuZGVybgp6dXJ1ZWNrIHNpbmQsIGhhZXR0ZSBpY2ggZWlnZW50bGljaCBuaWNodCBnZWRhY2h0Li4uIG9kZXIgc2luZCBkb2NoIG51ciBkaWUKSm91cm5hbGlzdGVuIG1laHJlcmUgSmFocmUgenVydWVjaz8KCi0gTG9jbwoKUC5TLjogRGVyIEFydGlrZWwgc3RhbmQgd29lcnRsaWNoIGdsZWljaCBhdWNoIGJlaSB1bnMgaW4gZGVyIFplaXR1bmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcmJlaXRzd2Fobj8gKEphcmllbCwgMTEuIEp1biAxOTk2LCAxNjoyMTowMCk6CgpNYWdudXMgemllaHQgZWluZSBQb3N0bXVldHplIGFuLgpNYWdudXMgYmV0cml0dCBkaWVzZSBXZWx0LgoKZ2FueiBzY2hvZW4gc2NobmVsbCBkZXIgSnVuZ2UgOikKCkphcmllbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdlciAoR3JpbW1ib3JuLCAxMi4gSnVuIDE5OTYsIDA5OjAwOjA4KToKfiMhIHJuPUFzbW9kaXMgcnQ9ODM0NTQzODg2Cn4jISB0aWQ9ODM0NTQzODg2CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgV3VyLCAxMi4gSnVuIDE5OTYsIDAzOjQ2OjI1XToKV2VubiBkZXIgQW5hdG9sIG5pY2h0IHdhZXIsIHNvIHdhZXJlIGRpZSBaZWl0dW5nIGpldHp0IGxlZXIuCgpXdXIgZGV1dGV0IG1pdCBzZWluZW0gRmluZ2VyIGF1ZiBBbmF0b2wuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB3ZXIgKEdyaW1tYm9ybiwgMTIuIEp1biAxOTk2LCAwOTowMDoyNik6Cn4jISBybj1XdXIgcnQ9ODM0NTQzOTg1Cn4jISB0aWQ9ODM0NTQzODg2CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgQW5hdG9sLCAxMi4gSnVuIDE5OTYsIDAzOjQ5OjQ2XToKCldhcyB0YWV0ZSBpY2ggZGVubiBtYWNoZW4gbnVyLCAKb2huZSBkaWVzZW4ga2xlaW5lbiBXdXIuLi4KClJlaW1lIGVzIHNpY2gsIGtvc3RlIGVzIHdhcyBlcyB3b2xsZSA7KQpBbmF0b2wsIGF1dHNjaHQgV3VyIDspCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHF1ZXN0IG9rdG9wdXMgKEdyaW1tYm9ybiwgMTIuIEp1biAxOTk2LCAwOTowMDo0MSk6Cn4jISBybj1KYXJpZWwgcnQ9ODM0NDQ2MTgzCn4jISB0aWQ9ODMyNzIyNjU1CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgV3VyLCAxMi4gSnVuIDE5OTYsIDAzOjQ0OjEyXToKT2gsIGVudHNjaHVsZGlndCwgaWNoIHNjaHJlaWIgZ3JhZCBNdWVsbC4KWnUgbWVpbmVyIFZlcnRlaWRpZ3VuZyBoYWIgaWNoIG51ciB6dSBzYWdlbjogQW5hdGFsIHdvbGx0IGRhcyB3ZXIgd2FzCnNjaHJlaWJ0LgpBbHNvIEtvcGYgaG9jaCB1bmQgbmljaHQgamFtbWVybi4gSWNoIGtvbW0gd2llZGVyLiBHYXJhbmllcnQhCgpXdXIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDEyLiBKdW4gMTk5NiwgMDk6MjY6MDcpOgoKIkRhcywgd2FzIHdlc2VudGxpY2ggaXN0IGFlbmRlcnQgc2ljaCBtaXQgZGVuIExlYmVuc2phaHJlbi4iIChVbmJla2FubnQpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiBMaWVkLCB6d28sIGRyZWkhIChHcmltbWJvcm4sIDEyLiBKdW4gMTk5NiwgMTA6NDQ6MzIpOgoKSGllciBrb21tdCBtYWwgZWluIGRlciBKYWhyZXN6ZWl0IGFuZ2VwYXNzdGVzIExpZWQuIEFsc28gZGVyIFRleHQuIFVuZAplaWdlbnRsaWNoIGlzdCBkaWUgSmFocmVzemVpdCBuaWNodCBnYW56IHNvIGRvbGwgcGFzc2VuZCwgYWJlciBpY2ggZGFjaHRlLApqZXR6dCBoYWIgaWNoIG1pdCBkZW0gVGhlbWEgd2VuaWdzdGVucyBrZWluZSBLb25rdXJyZW56LgpXZWlsIGRhcyBoaWVyIEhpcCBIb3AgKG9kZXIgc29uIEtyYW0pIGlzdCwgc3RlaHRzIGhpZXIgdW5kIG5pY2h0IGluIGt1bHR1ci4uLgoKRnJvaGVzIEZlc3QKLS0tLS0tLS0tLS0KCihBbiBhbGxlISBBbiBhbGxlISBEaWVzc2VpdHMgdW5kIGplbnNlaXRzIGRlciBHcmVuemVuISBJbiBOb3JkIHVuZCBTdWVkLCBpbgpPc3QgdW5kIFdlc3QhIFdpciBncnVlc3NlbiBldWNoIHVuZCB3dWVuc2NoZW4gYWxsZW4gZWluIGdlc2VnbmV0ZXMKV2VpaG5hY2h0c2Zlc3QhKQoKTWVpbiBCcnVkZXIgc2FndCBlciBoYWV0dGUgamV0enQgZGllIE5hc2Ugdm9sbCwKRGVubiBkZXIgU2NobmVlIGluIGRpZXNlbSBKYWhyIGRlciB3YWVyIG1hbCByaWNodGlnIHRvbGwKQmV2b3IgZXIgZ2VodCBtYWNodCBlciBzaWNoIG5vY2ggZWluZW4gZnJpc2NoClVuZCBkZXIgUmVzdCBtZWluZXIgRmFtaWxpZSBzaXR6dCBhbSBHYXJ0ZW50aXNjaApGYW1pbGllIGthbm4gbWFuIGRhcyBuaWNodCBuZW5uZW46ClBhcHMgZGFyZiBuaWNodCBtaXQgTXV0dGkgcGVubmVuCkRlbm4gdm9yIGVpbmVtIGhhbGJlbiBKYWhyIGxlcm50ZSBzaWUgbmVuIEFuZGVybiBrZW5uZW4KRG9jaCBkZXIgU3RyZWl0IGlzdCBoZXV0IHZlcmdlc3NlbiB1bmQgc2llIGxlYnQgbWl0IHVucyBhbGxlaW4KUGFwcyBnZWh0IG5hY2ggZGVtIEVzc2VuIHVuZCBkZXIgQW5kcmUga29tbXQgaGVyZWluCk1laW5lIE11dHRpIHNhZ3QgIkhhbGxvIGxpZWJlciBOaWtvbGF1cyIKTWVpbmUgU2Nod2VzdGVyIHNhZ3QgIkRlbiBrZW5uIGljaCwgZGFzIGlzdCBPbmtlbCBLbGF1cyEiCkRlciBUeXAgc2FndCAiSG8sIEhvIiB1bmQgcGFja3QgZGllIEdlc2NoZW5rZSBhdXMKVW5kIGljaCBmcmFnIG1pY2ggaG9sdCBkZXIgaGV1dCBhdWNoIHNlaW5lIFJ1dGUgcmF1cwpVbmQgYWxzIGljaCBpaG4gZGFubiBtaXQgZGVyIE11dHRpIGF1ZiBpaHIgWmltbWVyIGdlaGVuIHNlaApEYW5uIHR1dCBkYXMgd2VoLiAoRGllIFdhaHJoZWl0IHR1dCBpbW1lciB3ZWgpCkljaCBoYXNzZSBkaWVzZW4gVHlwZW4gdW5kIGljaCB3dWVuc2NoZSBpaG0gZGllIFBlc3QKSWNoIHd1ZW5zY2hlIG1pciBuZSBzdGlsbGUgTmFjaHQgdW5kIGV1Y2ggZWluIEZyb2hlcyBGZXN0CgpJY2ggZ2xhdWIgaWNoIG1hY2ggbWlyIGVyc3RtYWwgZWluZSBGbGFzY2hlIGF1ZgpXZWlsIGljaCBhbSBIZWlsaWdhYmVuZCBpbW1lciBlaW5lbiBzYXVmClVtIHp3YW56aWcgVWhyIHNjaGF1ZSBpY2ggZGllIFRhZ2Vzc2NoYXUKSWNoIGhhYmUga2VpbmUgS2luZGVyIGljaCBoYWIga2VpbmUgRnJhdQpEZW4gZ2FuemVuIFRhZyBob2VyIGljaCBrZWluZW4gVG9uIHZvbiBtZWluZW0gVGVsZWZvbgpBbiBtZWluZXIgS2xpbmdlbCBrbGluZ2VsdCBrZWluZXIsIG1pciBlZ2FsLCBpY2gga2VubiBkYXMgc2Nob24KRGllIEdsb3R6ZSBsYWV1ZnQsIGRvY2ggaW4gZGVyIEJ1ZGUgaXN0IGVzIHN0aWxsCldlaWwgd2llZGVyIG1hbCBrZWluZXIgbWl0IG1pciBIZWlsaWdhYmVuZCBmZWllcm4gd2lsbApEYSBhdWYgZGVyIEZlbnN0ZXJiYW5rIHN0ZWh0IG1laW4gUGxhc3Rpa3Rhbm5lbmJhdW0KVW5kIGluIG1laW5lbSBTY2hyYW5rIHN0YXBlbHdlaXNlIG5hY2t0ZSBGcmF1bgpJY2ggc2NoYWx0IHVtIGF1ZiBkaWUgUHJpdmF0ZW4sIHdlaWwgZGEgd2FzIGdlaHQKVW5kIHNwaWVsZSBzbyBsYW5nIGFuIG1pciBydW0gYmlzIGVyIG1pciBzdGVodApWb24gZGVyIEZpcm1hIG5lIEZsYXNjaGUgU2VrdCB1bmQgdm9uIGRlciBNdXR0aSBlaW4gcGFhciBLb2hsZW4KR2VoIGljaCBqZXR6dCBpbiBkaWUgU3RhZHQgdW5kIGxhc3MgbWlyIGVpbmVuIHJ1bnRlcmhvbGVuCkljaCBicmF1Y2ggamV0enQgZWluZSBkaWUgbWl0IHNpY2ggYWxsZXMgbWFjaGVuIGxhZXNzdApVbmQgaWNoIG1hY2hzIG9obmUuIChGcm9oZXMgRmVzdCkKCkpldHp0IHN0ZWggaWNoIGhpZXIgdW5kIGhhYiBuZW4gcm90ZW4gTWFudGVsIGFuCkluIGVpbiBwYWFyIE1pbnV0ZW4gYmluIGljaCBtaXQgZGVtIEF1ZnRyaXR0IGRyYW4KTWl0IGRlciBibG9lZGVuIE11ZXR6ZSB1bmQgZGVtIEJhcnQgaW0gR2VzaWNodApCaW4gaWNoIG1pciB6aWVtbGljaCBzaWNoZXIgZXJrZW5udCBtaWNoIG1laW4gTmVmZmUgbmljaHQKSWNoIHN0ZWgga2F1bSBpbiBkZXIgVHVlciBrb21tdCBtaXIgbWVpbiBCcnVkZXIgZW50Z2VnZW4KS29tbWVuIHdlcmQgaWNoIHNwYWV0ZXIgZG9jaCBkYXMga29tbXQgbWlyIHNlaHIgZ2VsZWdlbgpEZW5uIGljaCB3ZWlzcyBpbiBzZWluZXIgRWhlIGdlaHQgc2Nob24gbGFuZyBuaWNodHMgbWVocgpVbmQgZGVzaGFsYiBzdG9zcyBpY2ggYWIgdW5kIHp1IG1hbCBzZWluZSBBbHRlIGhlcgpTaWUgd2lsbCBkYXMgdW5kIGljaCB3ZWlzcyBkYXMsIGRpZSBpc3QgZWluIGdlaWxlcyBMdWRlcgpVbmQgaWNoIGdlYiBlcyBpaHIgdmllbCBiZXNzZXIgYWxzIG1laW4gQnJ1ZGVyCkFsbGVzIHdhcyBlciB3b2xsdGUgaGF0IGVyIGRhbWFscyBzY2hvbiBiZWtvbW1lbgpNaXIgaGF0IG5pZW1hbmQgd2FzIGdlZ2ViZW4gYXVzc2VyIGljaCBoYWJzIG1pciBnZW5vbW1lbgpBYmVyIGhldXRlIGlzdCBkaWUgTmFjaHQgZGEgemFobCBpY2hzIGFsbGVuIGhlaW0KRGVubiBpY2ggaGFiIGRpZSBTY2hlaXNzZmFtaWxpZSBmdWVyIG1pY2ggZ2FueiBhbGxlaW4KVW5kIG5hY2ggZGVyIE11dHRlciBnZWIgaWNoIGRhbm4gYXVjaCBub2NoIGRlciBUb2NodGVyIGRlbiBSZXN0CkRpZSBicmF1Y2h0IGRhcywgZGllIGlzdCBmYXN0IHp3b2VsZi4gKEZyb2hlcyBGZXN0KQoKTWVpbiBEZWFsZXIgZnJldXQgc2ljaCBkYXNzIGljaCBhbiBkZXIgTmFkZWwgaGFlbmcKTWlyIGlzdCBkYXMgc2NoZWlzc2VnYWwgaWNoIHNlaCBkYXMgbmljaHQgc28gZW5nCkRpZSBLb2hsZW4gZnVlciBkZW4gU3RvZmYgdmVyZGllbiBpY2ggYXVmIGRlbSBTdHJpY2gKV2FydW0gaWNoIGRhcyBzbyBtYWNoZSB3ZWlzcyBpY2ggc2VsYmVyIG5pY2h0CldvIGtvbW0gaWNoIGhlciwgd28gZ2VoIGljaCBoaW4gZGFzIGhhdCBkb2NoIGFsbGVzIGtlaW5lbiBTaW5uCkZyZWllIFRhZ2UsIEZlaWVydGFnZSBzaW5kIGZ1ZXIgbWljaCBuaWNodCBkcmluCkljaCBtYWNoIGRpZSBCZWluZSBicmVpdCBmdWVyIEdlbGQsIGF1Y2ggYW0gRmVzdCBkZXIgTGllYmUKVW5kIGJlZnJpZWQnZ2UgZGFtaXQgdW5nZWhlbW10ZSBNYWVubmVydHJpZWJlCldlbm4gaWNoIG1pciB3YXMgc3ByaXR6ZSBkYW5uIHdpbGwgZGFzIGtlaW5lciBzZWhuCkRvY2ggZGVyIGhhdCBlaW5lbiBzaXR6ZW4gdW5kIGF1Y2ggbm9jaCBlaW5lbiBzdGVobgpNYW5jaGUgZGVua2VuIHNpY2hlcmxpY2ggaWNoIHdhZXJlIGtlcm5nZXN1bmQKTWFuY2hlbiBtYWNoIGljaHMgbWl0IGRlciBIYW5kIHVuZCBtYW5jaGVuIG1pdCBkZW0gTXVuZApEb2NoIGRlciBUeXAgZGVyIHdvbGx0ZSBmdWVyIHp3ZWlodW5kZXJ0IE1hcmsKTWl0IGFsbGVtIHVuZCB2b3IgYWxsZW0gb2huZSBmYW5kIGVyIHN0YXJrClVuZCBkYWJlaSB3YXIgaWNoIGxldHp0ZSBXb2NoZSBlcnN0IGJlaW0gVGVzdAooVW5kIHdpZSB3YXIgZXI/KSBQb3NpdGl2LiAoRnJvaGVzIEZlc3QpCgooRGllIEZhbnRhc3Rpc2NoZW4gVmllcikKCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvcnNjaGxhZyB6dW0ga3dlciAoR2FzdDIsIDEyLiBKdW4gMTk5NiwgMTQ6MzM6NTkpOgpXaWUgd2FlciBlcyB3ZW5uIGRhcyBrd2VyIGVpbnplbG5lIFNwaWVsZXJuYW1lbiBhbHMgU3RpY2h3b2VydGVyCmFremVwdGllcmVuIHd1ZXJkZSwgdW5kIGRhbm4gbWl0IGVpbmVyIExpc3RlIGRlciBhbndlc2VuZGVuCkVyc3QtLCBad2VpdC0gdXN3IGNoYXJha3RlcmUgZGVzIEJldHJlZmZlbmRlbiBhdWZ3YXJ0ZXQuIEljaCBzdGVsbCBtaXIKZGFzIGV0d2Egc28gdm9yOgoKPiBrd2VyIENhcmFkaHJhcwoKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIGV0Yy4KCkNhcmFkaHJhcy4uLi4uLi5TICBTaWxiZXJ6aW5uY2hlbi4/ICh1bmQgd2llIHNpZSBhbGxlIGhlaXNzZW4gbW9lZ2VuKQoKLiBvIE8gKFdpZSBrb21tIGljaCBudXIgYXVmIGRhcyBCZWlzcGllbCkKLiBvIE8gKFVuZCB3aWUgdW50ZXJzY2hyZWliIGljaCBqZXR6dCAtIGFjaCBqYSkKR3J1c3MgR2FzdC1oZXV0bWFsLTIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWb3JzY2hsYWcgenVtIGt3ZXIgKE11cGZlbCwgMTIuIEp1biAxOTk2LCAxNjoxOTo0Nyk6Cn4jISBybj1HYXN0MiBydD04MzQ1ODI4MzkKfiMhIHRpZD04MzQ1ODI4MzkKV29oZXIgc29sbCAna3dlcicgd2lzc2VuLCB3ZXIgenUgd2VtIGdlaG9lcnQ/Cgo+IGt3ZXIgYXNtb2RpcwoKICAgTGlzdGUgZGVyIHZlcm11dGxpY2hlbiBTcGllbGVyIHZvbiBBc21vZGlzCgpBc21vZGlzLi4uLi4uLnogIElzc29tYWQuLi4uLi4uUyAgS2VsZGVyLi4uLi4uLlMgIExhdXJpbi4uLi4uLlMKQXNtb2RpbmEuLi4uLi5TICAKdXN3IHVzdyB1c3cgOi0pKAoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVm9yc2NobGFnIHp1bSBrd2VyIChMb2NvLCAxMi4gSnVuIDE5OTYsIDE2OjQ2OjU1KToKfiMhIHJuPU11cGZlbCBydD04MzQ1ODkxODcKfiMhIHRpZD04MzQ1ODI4MzkKV2VubiBkZXIgU2NobWllZCBkaWUgTW9lZ2xpY2hrZWl0IGFuYmlldGVuIHd1ZXJkZSwgZGFzcyBtYW4gc2ljaCBhbHMgWndlaXRpClZPTiBpcmdlbmRqZW1hbmRlbSBtYXJraWVyZW4gbGFzc2VuIGthbm4sIHdhZXJlIGRhcyBrZWluIFByb2JsZW0uClRlY2huaXNjaCBpc3QgZGFzIHByaW1pdGl2LCBkZXIgRmluZ2VyIGthbm4gc2Nob24gbGFuZ2UgZGFtaXQgdW1nZWhlbiwKUHJvYmxlbWUgc29sbHRlIGVzIG5pcmdlbmRzIG1hY2hlbiB1bmQgZGllIElkZWUgd3VyZGUgdm9uIGRlbiB6dXN0YWVuZGlnZW4KRU0ncyBiZXJlaXRzIGVpbmlnZSBNYWxlIG5pY2h0IHp1ciBLZW5udG5pcyBnZW5vbW1lbi4KCkdydXNzLAogICAgICAgICAgIExvY28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFZvcnNjaGxhZyB6dW0ga3dlciAoTXVwZmVsLCAxMi4gSnVuIDE5OTYsIDE3OjI4OjU3KToKfiMhIHJuPUxvY28gcnQ9ODM0NTkwODE1Cn4jISB0aWQ9ODM0NTgyODM5CkVzIHdpcmQgaW1tZXIgTGV1dGUgZ2ViZW4sIGRpZSBuaWNodCB3b2xsZW4sIGRhcyBtYW4gc2llIGFscyBad2VpdGlzIGVya2VubnQuCkRhIG51ZXR6dCBkYW5uIGF1Y2ggZGllIFNjaG1pZWQtTWV0aG9kZSBuaXguCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVm9yc2NobGFnIHp1bSBrd2VyIChMb2NvLCAxMi4gSnVuIDE5OTYsIDE3OjUzOjE4KToKfiMhIHJuPU11cGZlbCBydD04MzQ1OTMzMzcKfiMhIHRpZD04MzQ1ODI4MzkKQWJlciB1bSBkaWUgZ2luZyBlcyBoaWVyIG5pY2h0LCBzb25kZXJuIHVtIGRpZSBadW9yZG51bmcgYmVrYW5udGVyIFp3ZWl0aWVzIHp1CkVyc3RpZXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBWb3JzY2hsYWcgenVtIGt3ZXIgKFJhZmZpLCAxMi4gSnVuIDE5OTYsIDE4OjA2OjE1KToKfiMhIHJuPU11cGZlbCBydD04MzQ1OTMzMzcKfiMhIHRpZD04MzQ1ODI4MzkKCk1pdCBkaWVzZW0gQXJndW1lbnQgKCdlcyB3aXJkIGltbWVyIGxldXRlIGdlYmVuIGRpZS4uLicpIGthbm5zdCBkdSBhbGxlcwplcnNjaGxhZ2VuIDooCgpuYSB1bmQgPyBXZXIgcmVkZXQgZGVuIHZvbiAxMDAlID8gU2NobGllc3NsaWNoIGlzdCBhdWNoIGRpZSAydGlla2VubnplaWNobnVuZwphbiBzaWNoIEZyZWl3aWxsaWcgdW5kIGVzIGZ1bmt0aW9uaWVydCBnYW56IGd1dCwgYXVjaCB3ZW5uIGVzIGltbWVyIExldXRlIGdpYnQKZGllIGlocmUgMnRpZXMgbmljaHQga2VubnplaWNobmVuIQoKSWNoIGJpbiBmdWVyIGVpbmJhdWVuIHVuZCBhbmJpZXRlbi4gSWNoIG1vZWNodGUgd2V0dGVuIGRhcyBkYXMgQW5nZWJvdCBhdWNoCmdlbnV0enQgd2lyZC4KCkdydXNzCkguCihBYiBuYWNoIEVudHdpY2tsdW5nPykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoVmFuaXIsIDEyLiBKdW4gMTk5NiwgMTk6NTY6MzQpOgpbU2VoZXI6R2FuZG9dIGthbm4gbWlyIGVpbmVyIHNhZ2VuLCB3aWUgaWNoIHVlYmVyIGRlbiBwYXNzIGluIGRlbiBLaWxnaGFyZHMKW1NlaGVyOkdhbmRvXSBrb21tZT8KW1NlaGVyOkdhbmRvXSBpY2ggaGFiIGtlaW5lIGF1c2dhZW5nZSBtZWhyIHVuZCB3b2xsdGUgaGV1dGUgbWEgbmljaHQgc3RlcmJlbgpbVG9kOkxhcnNdIEVpbmUgc2NobGltbWUgRXJmcmllcnVuZyBoYXQgZ2VyYWRlIEdhbmRvIHVtZ2VicmFjaHQuCgpObyBjb21tZW50CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bnQtc2NyaXB0IChGeXQsIDEzLiBKdW4gMTk5NiwgMDI6MzU6MDkpOgoKUmVwbHkgenUgcG9saXplaS5iZWthbm50bWFjaHVuZ2VuCgpBbHNvIGljaCBrYW5uIG1pY2ggZHVlc3RlciBkcmFuIGVyaW5uZXJuLCBkYXNzIGljaCB6dSBkZXIgWmVpdCwgYWxzIApTY3JpcHRlIGR1cmNoYXVzIG5vY2ggZXJsYXVidCB1bmQgZHVyY2ggZGllIFByb2dyYW1taWVycHJheGlzIG1laHJlcmVyCmxldXRlIGdlZm9lcmRlcnQgd3VyZGVuIGF1Y2ggZWluIFVudGVyc3VjaGVzY3JpcHQgZ2VzY2hyaWViZW4gaGFiZSB1bmQKZGFzIGVudGdlZ2VuIG1laW5lciBzb25zdGlnZW4gUHJheGlzIGF1Y2ggd2VpdGVyZ2VnZWJlbiBoYWJlICh3YXIgZ2xhdWIKaWNoIGdlbmF1IGVpbiBMZXV0KS4gV2FzIHBhc3NpZXJ0IGpldHp0LCBmYWxscyBzaWNoIGhlcmF1c3N0ZWxsZW4gc29sbHRlLApkYXNzIGRhcyBEaW5nIHdlaXRlcmdlc2lja2VydCBpc3Q/CgpGeXQsIHdpZWRlciBtYWwgZHVtbWUgRnJhZ2VuIHN0ZWxsZW5kLCB2b24gZGVuZW4gZXIgd2Vpc3MsIGRhc3MgZXIgc2llCmJlaSBtYWlsIGFuIGRlbiBTaGVyaWZmIHBlcnNvZW5saWNoIG5pY2h0IGJlYW50d29ydGV0IGtyaWVnZW4gd3VlcmRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2VyYWRlIGluIGRlciBHaWxkZTogKFJhZmZpLCAxMy4gSnVuIDE5OTYsIDEzOjEzOjM2KToKClpvcnJvIG11cm1lbHQgZWluIHBhYXIgdW52ZXJzdGFlbmRsaWNoZSBXb3J0ZSB1bmQgbWFjaHQgZWluaWdlIGJlc2Nod29lcmVuZGUKR2VzdGVuIHVlYmVyIHNlaW5lciBLcmlzdGFsbGt1Z2VsCk1pZXplIGJldHJpdHQgZGllc2UgV2VsdC4KCkdyaW5zIEguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqKndhZWx6KiogKE1vcmdvdGgsIDEzLiBKdW4gMTk5NiwgMTM6MTc6NTgpOgo+VmlvbGV0dGUgV29sa2VuIHR1ZXJtZW4gc2ljaCBhbSBIaW1tZWwgYXVmIC4uLiBibHV0aWdlciBSZWdlbiBmYWVsbHQKaGVybmllZGVyLgpFaW4gQmVpZmFsbHNzdHVybSBicmFuZGV0IGltIERpYW1vbmRwYXJrIGF1Zi4gV2FzIGRhIHdvaGwgd2llZGVyIGxvcyBpc3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppZGVudGlmaXppZXJlbiAoTGFpbGEsIDEzLiBKdW4gMTk5NiwgMTQ6NDU6MDYpOgppZCBnZWhvZXJzY2h1dHoKCkRlciBHZWhvZXJzY2h1dHogaXN0IGVpbiBSdWVzdHVuZ3N0ZWlsLgpNYW4gdHJhZWd0IGlobiBhbHMgSGVsbS4KU29uc3Qga2FubnN0IER1IG5pY2h0cyBiZXNvbmRlcmVzIGFuIGRlbSBHZWhvZXJzY2h1dHogZXJrZW5uZW4uCgpTbyBTbwoKTGFpbGEgZ3JpbnN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIGhhYmUgZXMgZ2V3dXNzdCAhISEgOykgKExhaWxhLCAxMy4gSnVuIDE5OTYsIDE0OjU3OjQ4KToKPiBEZWluIEZyZXVuZCBUaHVmaGlyIHRlaWx0IERpciBtaXQ6IFJlY2huZXJ3ZWNoc2VsLgpKdXN1ZmYgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpIZWlzc3QgZGFzIEp1c3VmZiBpc3QgZWluIFp3ZWl0aWUgdm9uIFRodWZoaXIgPz8/CgpMYWlsYSwgd3VuZGVybmQgIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJnbCAoWmFyZG96LCAxMy4gSnVuIDE5OTYsIDE4OjEzOjMzKToKR3J1ZW5zY2huYWJlbCBmbGF0dGVydCBoZXJlaW4uCj4gR3J1ZW5zY2huYWJlbCBrcmFlY2h6dDoga3Jycm9vb2FhYSAuLi4gSGFsbG8gVWx1bGEgLi4uCkdydWVuc2NobmFiZWwga3JhZWNoenQ6IGtycnJvb29hYWEgLi4uIEhhbGxvIFphcmRveiAuLi4KR3J1ZW5zY2huYWJlbCBrcmFlY2h6dDoga3Jycm9vb2FhYSAuLi4gSGFsbG8gVG9ldGVyIC4uLgpHcnVlbnNjaG5hYmVsIGtyYWVjaHp0OiBrcnJyb29vYWFhIC4uLiBIYWxsbyBVaHVyYSAuLi4KR3J1ZW5zY2huYWJlbCBrcmFlY2h6dDoga3Jycm9vb2FhYSAuLi4gSGFsbG8gU3ltYmlvbnQgLi4uCkdydWVuc2NobmFiZWwga3JhZWNoenQ6IGtycnJvb29hYWEgLi4uIEhhbGxvIFNraXBwZXIgLi4uCkdydWVuc2NobmFiZWwga3JhZWNoenQ6IGtycnJvb29hYWEgLi4uIEhhbGxvIExhaWxhIC4uLgpHcnVlbnNjaG5hYmVsIGtyYWVjaHp0OiBrcnJyb29vYWFhIC4uLiBIYWxsbyBXZXJ0eSAuLi4KR3J1ZW5zY2huYWJlbCBrcmFlY2h6dDoga3Jycm9vb2FhYSAuLi4gSGFsbG8gTmF0dXJlIC4uLgoKRGEgZmFlbGx0IG1pciBqYSBuaXggbWVociB6dSBlaW4uLi4uCgpDaWFvIFphcmRvegoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBWb3JzY2hsYWcgenVtIGt3ZXIgKEFzbW9kaXMsIDEzLiBKdW4gMTk5NiwgMTk6Mzc6NDYpOgp+IyEgcm49TXVwZmVsIHJ0PTgzNDU4OTE4Nwp+IyEgdGlkPTgzNDU4MjgzOQpnZWh0IGRvY2ggc2Nob24sIGt3ZXIgaW4ga2Fpc2Vyc2xhdXRlcm4gKG1laXN0ZW5zKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHVudC1zY3JpcHQgKEFzbW9kaXMsIDEzLiBKdW4gMTk5NiwgMTk6Mzk6MjApOgp+IyEgcm49Rnl0IHJ0PTgzNDYyNjEwOQp+IyEgdGlkPTgzNDYyNjEwOQpsb2VzY2h0IEZ5dCAhIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHVudC1zY3JpcHQgKEphc3BlciwgMTMuIEp1biAxOTk2LCAxOTo0MDo0NCk6Cn4jISBybj1Bc21vZGlzIHJ0PTgzNDY4NzU2MAp+IyEgdGlkPTgzNDYyNjEwOQpmaW5nZXIgZnl0CkhtbS4uLiBkaWVzZW4gTmFtZW4gZ2lidCBlcyBpbiBNb3JnZW5ncmF1ZW4gbmljaHQuCgpBaGEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlaWEgOikgKExhdmluaWEsIDEzLiBKdW4gMTk5NiwgMjM6MTc6NTcpOgpBbWFuZGEgc2FndDogSGFsbG8gTXVlbGxzY2hsdWNrZXIhCkFtYW5kYSBncmFiYmVsdCBhbiBlaW5lbSBNdWVsbHNjaGx1Y2tlciBoZXJ1bS4KQW1hbmRhIHNhZ3Q6IFdpZSB3YWVycyBkZW5uIG1pdCB1bnMsIEtsZWluZXI/CgpBdSBCYWNrZSwgd2llIHRpZWYgc2luZCB3aXIgZ2VzdW5rZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSdWZlIERhbmNlciBuYWNoIFR5cG8hIChBenp1cm8sIDEzLiBKdW4gMTk5NiwgMjM6MjI6MDgpOgpEYW5jZXIsIERhbmNlci4uLiBEYSBzY2hsaWVzc3QgRHUgRGVpbmUgVGllcmhhbmRsdW5nIGFuLCBsYWVzc3Qgc2llIHZvbiBEZWluZW0KWndlaXRpZSBhbmt1ZW5kaWdlbiB1bmQgZGFubiB0cmF1c3QgRHUgRGljaCBub2NoIGFsbGUgU3BpZWxlciB1bmQgTWFnaWVyIGFscwpUaWVyZSB6dSBiZXplaWNobmVuOgoKSW0gUmF1bQp2ZXJ0ZWlsdCBzdGVoZW4gZWluIHBhYXIgS2FlZmlnZSwgaW4gZGVuZW4gc2ljaCBlaW5pZ2UgVGllcmUgdHVtbWVsbi4gRHUKZWluIHBhYXIgSHVuZGUsIGVpbiBwYWFyIEthdHplbiwgUGFwYWdlaWVuIHVuZCBzb2dhciBBZmZlbi4KQWxzIER1IERlaW5lIFB5cmFtaWRlbnF1ZXN0IGFuZ2VzY2hsb3NzZW4gaGFzdCBnYWIgZXMgbmljaHQgc28gZ3JhdmllcmVuZGUKRmVobGVyIGluIGRlciBSYXVtYmVzY2hyZWlidW5nLiA7KQoKQXp6dXJvLCB2ZXJ6d2VpZmVsdCBhbSBLYWVmaWcgcnVldHRlbG5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBWb3JzY2hsYWcgenVtIGt3ZXIgKFdvb2R5LCAxNC4gSnVuIDE5OTYsIDAyOjQ2OjM2KToKfiMhIHJuPU11cGZlbCBydD04MzQ1ODkxODcKfiMhIHRpZD04MzQ1ODI4MzkKCmdlaHQgZGFzIGRhbm4gYXVjaCBiZWkgbWFnaWVybj8KCiA+IGt3ZXIgZGFuY2VyCgpMaXN0ZSBkZXIgfn5+Tk8gQ0FSUklFUgoKCm9vb29vcHMKd29vZHkuLSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGlsaWdodHMgKFlhbnRybywgMTQuIEp1biAxOTk2LCAwOToxNjoxNSk6CgpXZW5uIGljaCBzbyBtZWluIFRGIGFuc2NoYXVlbiB1bmQgZGFzcywgd2FzIGVzIHNvIGF1ZiBkZW4gU2NoaXJtIHNlbmRldCwgZGFubgpmcmFnIGljaCBtaWNoLCBvYiBkYXMgWnVmYWxsIGlzdCwgZGFzcyBpbiBQcmFsaW5lbiAoZ2VzZWhlbiBiZWkgR3JpbW1ib3JuKQplaW5lIEFsaW5lIGRyaW5uZXN0ZWNrdC4uLiBvYiB1bnMgZGFzIHdhcyBzYWdlbiBzb2xsPz8/CgogICAgICAgICAgICAgICAgIFlhbnRybwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobWFycm4gKEhhdGUsIDE0LiBKdW4gMTk5NiwgMTA6MjI6NTYpOgpCbGEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWNodCBkZXMgWmF1YmVybnMgKFJpbXVzLCAxNC4gSnVuIDE5OTYsIDEzOjAzOjM3KToKRWx2bmlrIGdlaHQgYXVzIGRlciBBcmVuYS4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KClphdWJlcmVyIHNpbmQgenUgc3RhcmsuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2NobWFycm4gKEdyaW1tYm9ybiwgMTQuIEp1biAxOTk2LCAxNDowMDowOSk6Cn4jISBybj1IYXRlIHJ0PTgzNDc0MDU3Ngp+IyEgdGlkPTgzNDc0MDU3NgoKQWxzbyBuZWluLCBIYXRlLCBzbyBnZWh0IGRhcyBuaWNodCEKRGFzIGhpZXIgaXN0IGVpbmUgZGVyIHJlbm9tbWllcnRlc3RlbiBSdWJyaWtlbiBkZXIgbXBhLCBkYSBrYW5uIG1hbiBuaWNodAplaW5mYWNoIHNvIGVpbmVuIHNpbm5sb3NlbiBBcnRpa2VsIHNjaHJlaWJlbi4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IHdldHRldCwgZGFzcyBkYXMgaGllciBkaWUgYW0gc2VsdGVuc3RlbiBhYmJlc3RlbGx0ZQpSdWJyaWsgZGVyIG1wYSBpc3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklzdCBkYXMgZWluIFpvbyBoaWVyPyAoSGFyZGlsLCAxNC4gSnVuIDE5OTYsIDE0OjUwOjQ4KToKRHVyaWFuIGRlciBIZXJyIGRlcyBTYW5kZXMuCkd1bER1a2F0J3MgbmllZGxpY2hlciwgd2luemlnZXIgV29scGVydGluZ2VyLgpHdWxEdWthdCBzYWd0OiBTcG9pbGVyPyBOZWluIERhbmtlIS4KRWluIFNjaGltcGFuc2UgbmFtZW5zIFRvdG8uCkVpbiBQYXBhZ2VpIG5hbWVucyBFc2tpbHNqdW5hLgpFaW5lIFR6dWlvcCAoMSkuClR6dWlvcHMgd3VzY2hlbGlnZXIgd2luemlnZXIgV29scGVydGluZ2VyLgpIYXJkaWxzIHd1c2NoZWxpZ2VyIHdpbnppZ2VyIFdvbHBlcnRpbmdlci4KUGF1bGUgZmxhdHRlcnQgaGVyZWluLgpFc2tpbHNqdW5hIGtyYWVjaHp0OiBrcnJyb29vYWFhIC4uLiBIYWxsbyBQYXVsZSAuLi4KUGF1bGUga3JhZWNoenQ6IGtycnJvb29hYWEgLi4uIEhhbGxvIGVpbiB3aW56aWdlciBXb2xwZXJ0aW5nZXIgLi4uClBhdWxlIGtyYWVjaHp0OiBrcnJyb29vYWFhIC4uLiBIYWxsbyBIYXJkaWwgLi4uClBhdWxlIGtyYWVjaHp0OiBrcnJyb29vYWFhIC4uLiBIYWxsbyBlaW4gd2luemlnZXIgV29scGVydGluZ2VyIC4uLgpQYXVsZSBrcmFlY2h6dDoga3Jycm9vb2FhYSAuLi4gSGFsbG8gRXNraWxzanVuYSAuLi4KUGF1bGUga3JhZWNoenQ6IGtycnJvb29hYWEgLi4uIEhhbGxvIFRvdG8gLi4uCkRlciBXb2xwZXJ0aW5nZXIgc2FndDogSGFsbG8gT25rZWwgUGF1bGUuCkd1bER1a2F0IHNhZ3Q6IGhhbGxvCkVza2lsc2p1bmEga3JhZWNoenQ6IC4uLiBoYWxsbyAuLi4ga3Jyb29vYWFhIQpEZXIgbmllZGxpY2hlIFdvbHBlcnRpbmdlciBzYWd0OiBJY2ggdmVyc3RlY2tlIG1pY2gsIHVuZCBEdSBtdXNzdCBtaWNoCnN1Y2hlbiwgZWluZW0gd2luemlnZW4gV29scGVydGluZ2VyLgpEZXIgV29scGVydGluZ2VyIHNhZ3Q6IEhpIE9ua2VsIEd1bER1a2F0LgpHdWxEdWthdCBzYWd0OiBoaQpEZXIgbmllZGxpY2hlIFdvbHBlcnRpbmdlciB0YW56dCBtaXQgR3VsRHVrYXQgenVyIEJlZ3J1ZXNzdW5nIG5lIFJ1bmRlClNhbHNhLgpEdXJpYW4gdmVyd3VzY2hlbHQgUGF1bGVzIEZlZGVybi4KUGF1bGUga3JhZWNoenQ6IC4uLiBrcnJycm9vb2FhYSAuLi4gTWVpbmUgRnJpc3VyIC4uLgpEZXIgbmllZGxpY2hlIFdvbHBlcnRpbmdlciBzYWd0OiBJY2ggdmVyc3RlY2tlIG1pY2gsIHVuZCBEdSBtdXNzdCBtaWNoCnN1Y2hlbiwgZWluZW0gd2luemlnZW4gV29scGVydGluZ2VyLgpEZXIgbmllZGxpY2hlLCB3aW56aWdlIFdvbHBlcnRpbmdlciBzY2h3YWVuZ2VydCBIYXJkaWxzIFdvbHBlcnRpbmdlci4KRHVyaWFuIHNhZ3Q6IFNoaXQuIApHdWxEdWthdCBzYWd0OiBoaQpFc2tpbHNqdW5hIGtyYWVjaHp0OiAuLi4gU2hpdC4gIC4uLiBrcnJvb29hYWEhCkRlciBuaWVkbGljaGUgV29scGVydGluZ2VyIHRhbnp0IG1pdCBHdWxEdWthdCB6dXIgQmVncnVlc3N1bmcgbmUgUnVuZGUKU2Fsc2EuCkRlciBuaWVkbGljaGUgV29scGVydGluZ2VyIHRhbnp0IG1pdCBEdXJpYW4genVyIEJlZ3J1ZXNzdW5nIG5lIFJ1bmRlIFNhbHNhLgpEZXIgbmllZGxpY2hlIFdvbHBlcnRpbmdlciBzYWd0OiBUenVpb3AsIGthbm5zdCBkdSBtaXIgZWluCkJsdXRzYXVnZXJzY2h3ZXJ0IGJlc29yZ2VuPwogRGVyIG5pZWRsaWNoZSwgd2luemlnZSBXb2xwZXJ0aW5nZXIgc2FndDogTWFjaCBTZXggbWl0IG1pciwgSGFyZGlscwpXb2xwZXJ0aW5nZXIuCkRlciB3aW56aWdlIFdvbHBlcnRpbmdlciBzYWd0OiBJY2ggd2lsbCBLdWVoZS4KRXNraWxzanVuYSBrcmFlY2h6dDoga3Jyb29hYSAuLi4gRGFuY2VyIG5hY2ggUHlyYW1pZGVuCi4uLgoKVW5kIHNvIHdlaXRlci4gQWxzbyBlaW4gWmlya3VzIGlzdCBuaXggZGFnZWdlbi4gOikKLUhhcmRpbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhhdXN0aWVyZSBzaW5kIFNjcmlwdHMhIChIYXJkaWwsIDE0LiBKdW4gMTk5NiwgMTU6Mjg6MzcpOgoKQWxzbyBpcmdlbmR3aWUgc2luZCBkaWUgZG9jaCBhbGxlIG51ciBhbSB0cmlnZ2VybjoKCkRlciBuaWVkbGljaGUgV29scGVydGluZ2VyIHNhZ3Q6IFRvdG8sIGxlaWggbWlyIGRvY2ggbWFsIGVpbmVuIEJ1bWVyYW5nLApkaWUgaGFiIGljaCB6dW0gRnJlc3NlbiBnZXJuLgpEZXIgd2luemlnZSBXb2xwZXJ0aW5nZXIga3VzY2hlbHQgc2ljaCBhbiBEZWluZSBCZWluZS4KVG90byBzY2h1ZXR0ZWx0IGRlbiBLb3BmLgoKKHp1ciBFcmtsYWVydW5nOiBUb3RvIGlzdCBlaW4gSGF1c3RpZXItU2NoaW1wYW5zZSkKCi1IYXJkaWwuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2Nod2VyaG9lcmlnZSAuLi4gKEFjcmltb24sIDE0LiBKdW4gMTk5NiwgMTY6MjA6NTcpOgoKW0thcmF0ZTpBbmRyZXNdIGJpc3QgZHUgbm9jaCBkYSBqaW0/CmZyYWcgc2hha3kgbmFjaCBnaWxkZQpEZXIgc2Nod2VyaG9lcmlnZSBTaGFreSBEaWUgUHV0emZyYXUgaXN0IGVpbmUgV2lsZGU/IHNhZ3Q6ID4KW0thcmF0ZTpKaW1EaUdyaXpdIGphCgpobW0sIGluIGRpZXNlciBibG9lZGVuIEZvcm1hdGlydW5nIGtvbW10cyBuaWNodCByYXVzLCBkYXMgIltLYXJhdGU6SmltRGlHcml6XQpqYSIgaGF0IGRlciBTaGFreSBhdWNoIG5vY2ggZ2VzYWd0IDotKQoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTY3JpcHQgKEdyaW1tYm9ybiwgMTQuIEp1biAxOTk2LCAxNzozMzoyOSk6Cn4jISBybj1VbG8gcnQ9ODM0NzY1OTM0Cn4jISB0aWQ9ODM0NzU5NzMxCltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgRGhvamFrdCwgMTQuIEp1biAxOTk2LCAxNzozMjo1N106Clp1ciBuYWVjaHN0ZW4gS25laXBlPyB3aWUgdW5wcmFrdGlzY2guLi4gZGEgZ2lidHMgamEgd2VsY2hlLCB3byBtYW4gbmFoZXp1IG5peApzYXVmZW4ga2Fubi4uLgotPnNjaG1hcnJuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2NyaXB0IChEaG9qYWt0LCAxNC4gSnVuIDE5OTYsIDE3OjM5OjE2KToKfiMhIHJuPUdyaW1tYm9ybiBydD04MzQ3NjY0MDkKfiMhIHRpZD04MzQ3NTk3MzEKRGEgZ3JpbW1ib3JuIHNvIGZyZXVuZGxpY2ggd2FyLCBkZW4gYXJ0aWtlbCB1bWdlaGVuZCB6dSB2ZXJsZWdlbiwgd2lsbCBpY2gKbm9jaCBkZW4gYmV6dWcgYW5nZWJlbjogYWxsZ2VtZWluLCB1bG8sIGFydGlrZWwgOTQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTY3JpcHQgKEdyaW1tYm9ybiwgMTQuIEp1biAxOTk2LCAxNzo0MDoxMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODM0NzY2NDA5Cn4jISB0aWQ9ODM0NzU5NzMxCgpEaG9qYWt0IChibG9lZGVyIE5hbWUuLi4pIG5lcnZ0IG1pY2ggZGFtaXQsIGRhc3MgaWNoIGRlbiBBcnRpa2VsIHZlcmxlZ3QgaGFiZQood2llIGVzIHNlaW4gV3Vuc2NoIHp1IHNlaW4gc2NoaWVuKSBvaG5lIHp1IGVyd2FlaG5lbiwgZGFzcyBlciBzaWNoIGRhbWl0IGF1ZgplaW5lbiBuYXR1ZXJsaWNoIHZvZWxsaWcgYmVsYW5nbG9zZW4gQXJ0aWtlbCB2b24gVWxvIGluIGFsbGdlbWVpbmVzIGJlem9nLgpEYXMgaG9sZSBpY2ggaGllcm1pdCBuYWNoLCBlaW5lIEFuZ2FiZSBkZXIgQXJ0aWtlbG51bW1lciBlcnVlYnJpZ3Qgc2ljaCB3ZWlsCmRpZSBzaWNoIGltbWVyIGFlbmRlcnQuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFNjcmlwdCAoR3JpbW1ib3JuLCAxNC4gSnVuIDE5OTYsIDE3OjQxOjQxKToKfiMhIHJuPURob2pha3QgcnQ9ODM0NzY2NzU2Cn4jISB0aWQ9ODM0NzU5NzMxCgpOYSBLbGFzc2UsIGVyc3QgbWVja2VybiB1bmQgZGFubiBzZWxiZXIgd2FzIHNjaHJlaWJlbi4uLgoKQWJlciBpbSBFcm5zdCwgbWFuIHNvbGx0ZSBzaWNoIHZpZWxsZWljaHQgbWFsIEdlZGFua2VuIG1hY2hlbiwgb2IgZWluCmNyb3NzLUFydGlrZWxfQmV6dWcgbW9lZ2xpY2ggd2FlcmUuIExvY28sIGhhc3QgRHUgaW0gTW9tZW50IHZpZWwgenUgdHVuPyA7LSkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU2NyaXB0IChEaG9qYWt0LCAxNC4gSnVuIDE5OTYsIDE3OjQxOjQzKToKfiMhIHJuPUdyaW1tYm9ybiBydD04MzQ3NjY4MTMKfiMhIHRpZD04MzQ3NTk3MzEKTmFqYSwgaW4gc2NobWFycm4ga2FubiBtYW4gc2Nob24gbmUgYXJ0aWtlbG51bW1lciBhbmdlYmVuLCBkaWUgcnVicmlrIHdpcmQgamEKc2NobmVsbGVyIGxlZXIgYWxzIHNpY2ggZGllIG51bW1lcm4gaW4gYWxsZ2VtZWluIGFlbmRlcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp6dSB3ZW5pZyAoQXNtb2RpcywgMTQuIEp1biAxOTk2LCAyMjo0OTo1Nyk6CgpCZXp1ZzogW0FsbGdlbWVpbjpDYXJhZGhyYXNdIGlociBzY2hyZWlidCB6dSB3ZW5pZwoKU3RpbW10ISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHp1IHdlbmlnIChDYXJhZGhyYXMsIDE0LiBKdW4gMTk5NiwgMjI6NTg6MTIpOgp+IyEgcm49QXNtb2RpcyBydD04MzQ3ODUzOTcKfiMhIHRpZD04MzQ3ODUzOTcKRGFua2UgOikgRW5kbGljaCB3aWVkZXIgd2FzIHp1IGxlc2VuLgoKICAgICAgICAgR29sZGRyYWNoZSBDYXJhZGhyYXMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbmJlaW5pZ2UgRW50ZW4uLi4gKE11cGZlbCwgMTUuIEp1biAxOTk2LCAwMjoyNjo0Nyk6CltBbGxnZW1laW46S25vZXJyeV0gd2Vpc3MgZWluZXIgb2IgZWluYmVpbmlnZSBFbnRlbiBpbSBLcmVpcyBzY2h3aW1tZW4/CltBbGxnZW1laW46SHVvcl0gbmFiZW5kCltBbGxnZW1laW46Q2FyYWRocmFzXSBuZWUsIGRpZSBzaW5rZW4sIHdlaWwgZGVyIGhlY2h0IGpldHp0IGdsZWljaCBuYWNoIGRlbQpbQWxsZ2VtZWluOkNhcmFkaHJhc10gendlaXRlbiBiZWluIHNjaG5hcHB0CltBbGxnZW1laW46S25vZXJyeV0gaG1tLi4gc28gaXN0IGRhcyBhbHNvIDopCltBbGxnZW1laW46Q2FyYWRocmFzIG5pY2t0IGVybnN0aGFmdC5dCltBbGxnZW1laW46S25vZXJyeV0gbmFiZW5kIGh1b2FvcgpbQWxsZ2VtZWluOk1hbWJyZXNdIGVpbmJlaW5pZ2UgRW50ZW4gc2Nod2ltbWVuIGluIEVwaXp5a2xvaWRlbi4uLiB3ZWdlbiBkZXIKW0FsbGdlbWVpbjpNYW1icmVzXSBTdHJvZW11bmcuCltBbGxnZW1laW46S25vZXJyeV0gZXBpenloYWVhPwokIFtBbGxnZW1laW46Q2FyYWRocmFzXSBlbnp5a2xvcGFlZGllIGhlaXNzdCBkYXMKW0FsbGdlbWVpbjpLbm9lcnJ5XSBlbnp5bWUgc2luZCBkYXMKW0FsbGdlbWVpbjpLbm9lcnJ5XSBvZGVyIGVuemlhbmUKCmhpaGloaS4uLiB3aXNzZW5zY2hhZnQgYW0gZnJ1ZWhlbiBNb3JnZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi9kZWYgLWFnIC10IipNYW1icmVzKiIgPyAoR2FzdDEsIDE2LiBKdW4gMTk5NiwgMDE6MTI6MzgpOgoKW0FsbGdlbWVpbjpNYW1icmVzXSBEZXIgU3BlaWNoZXJ1bmcgbWVpbmVyIEJlaXRyYWVnZSBhdWYgZGllc2VyIEViZW5lIHp1bQpbQWxsZ2VtZWluOk1hbWJyZXNdIFp3ZWNrZSBkZXIgZWxla3Ryb25pc2NoZW4gVmVyYXJiZWl0dW5nICgiTWl0bG9nZ2VuIikKW0FsbGdlbWVpbjpNYW1icmVzXSBzdGltbWUgaWNoIGdlbWFlc3MgQkRTRyBuaWNodCB6dS4KCkdhc3QxCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKam9rZShpbnNpZGUpIChBbmF0b2wsIDE2LiBKdW4gMTk5NiwgMDE6NTk6MjEpOgoKW0FsbGdlbWVpbjpHdWxEdWthdF0gc3BpZWx0IHNjaG9lbiB3ZWl0ZXIsIGljaCBiaW4gaW0gaXJjISA7KQoKCkdyaW5zZW5kLApBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplZmVsd2UgKEFuYXRvbCwgMTYuIEp1biAxOTk2LCAwNzowODoyNCk6CgpbU2VoZXI6RWx2bmlrXSBkaWUgbmFlY2hzdGUgdWViZXJyYXNjaHVuZyAoYmx1dHJlaXNzZXIpIDotKQood2VuaWcgc3BhZXRlcjopCltUb2Q6TGFyc10gRWluIEJsdXRyZWlzc2VyIGhhdCBnZXJhZGUgRWx2bmlrIHVtZ2VicmFjaHQuCgpCZWlsZWlkLCAKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWNoIGphPyAoQW5hdG9sLCAxNi4gSnVuIDE5OTYsIDA3OjI4OjA3KToKCj4gZXJob2VoZQpEaXIgZmVobGVuIGJpcyB6dXIgbmFlY2hzdGVuIFN0dWZlIG5vY2ggNiBTdHVmZW5wdW5rdGUuCj4gZXJob2VoZQpEdSBrb2VubnRlc3QgRGVpbmUgU3R1ZmUgZXJob2VoZW4hCj4gZXJob2VoZQpEdSBrb2VubnRlc3QgRGVpbmUgU3R1ZmUgZXJob2VoZW4hCj4gZXJob2VoZQpXaWxsa29tbWVuIGF1ZiBEZWluZXIgbmV1ZW4gU3R1ZmUuCi4uLgoKQWFhYWhqYSA6KQpBbmF0b2wgCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IC9kZWYgLWFnIC10IipNYW1icmVzKiIgPyAoVGFzaGEsIDE2LiBKdW4gMTk5NiwgMTE6MDI6NDgpOgp+IyEgcm49R2FzdDEgcnQ9ODM0ODgwMzU4Cn4jISB0aWQ9ODM0ODgwMzU4ClBhcmFncmFwaCAxLCBBYnNhdHogMiBCdW5kZXNkYXRlbnNjaHV0emdldHo6CgpEaWVzZXMgZ2VzZXR6IGdpbHQgZnIgZGllIGVyaGVidW5nLCBWZXJhcmJlaXR1bmcgdW5kIE51dHp1bmcgcGVyc29uZW5iZXpvZ2VuZXIKRGF0ZW4gZHVyY2gKICAgMS4gZmZlbnRsaWNoZSBTdGVsbGVuIGRlcyBCdW5kZXMsCiAgIDIuIG9lZmZlbnRsaWNoZSBTdGVsbGVuIGRlciBMYWVuZGVyLCBzb3dlaXQgKGJsYWJsYSkKICAgMy4gbmljaHQtb2VmZmVudGxpY2hlIFN0ZWxsZW4sIHNvd2VpdCBzaWUgZGllIERhdGVuIGluIG9kZXIgYXVzIERhdGVpZW4KZ2VzY2hhZWZ0c21hZXNzaWcgb2RlciBmdWVyIGJlcnVmbGljaGUgb2RlciBnZXdlcmJsaWNoZSBad2Vja2UgdmVyYXJiZWl0ZW4Kb2RlciBudXR6ZW4uCgpEYSBkYXMgTUcgd29obCB1bnRlciBrZWluZSBkaWVzZXIgZHJlaSBQdW5rdGUgZmFlbGx0LCBrYW5uc3QgRHUgRGljaCBsZWlkZXIKbmljaHQgYXVmIGRhcyBCRFNHIGJlcnVmZW4uLi4uYWxzIGxvZ2d0IGlobiB1bmQgcG9zdGV0IGlobiwgSnVuZ3MhIDopCgpUYXNoYSAoaGV1ZXQgd2llZGVyIGVja2VsaGFmdCkKClAuUy46IERpZXNlciBBcnRpa2VsIGlzdCBSU0YtVmVyc2NobHVlc3NlbHQuIFJlY2h0c2NocmVpYmZlZWxlciBkaWVuZW4genVyClNpY2hlcnN0ZWxsdW5nIGRlciBBdXRoZW50aXppdGFldC4gRGF2b24gYXVzZ2Vub21tZW4gc2luZCAncyBldGMuLCBmdWVyIGRpZQppY2ggbWljaCBoaWVyIGF1c2RydWVja2xpY2ggZW50c2NodWxkaWdlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVzIGVpbmVuIEh1bmQuLi4gKEFuYXRvbCwgMTcuIEp1biAxOTk2LCAwMzoxMToyNyk6CgpEaG9qYWt0IGVyc2NoZWludC4gSGllci4KRWluZSBIb3JuaXNzZSBrb21tdCBhbi4KRWluZSBIb3JuaXNzZSBrb21tdCBhbi4KCi4uLmlzdCBkZXMgYW5kZXJlbiBIb3JuaXNzZSEgOikKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtsZWluZSBCZWxlaHJ1bmcgYW0gUmFuZGUgLi4uIChFbHZuaWssIDE3LiBKdW4gMTk5NiwgMDQ6MTE6MzgpOgplYmVuIGJlaW0gQXJjaGl0ZWt0ZW46CgpOaWNodHMgd2lyZCBEaXIgZ2VzY2hlaGVuLCB3ZW5uIER1IGlucyBSZWljaCBkZXIgTmV0enRvdGVuIGdlaHN0LgoKamV0enQgYmluIGljaCBhYmVyIGVybGVpY2h0ZXJ0CkVpbiBsZWljaHRlcmVyIEVsdm5payAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClphdWJlcmVyIHNpbmQgc2VociB0aWVybGllYiAhIChMYWlsYSwgMTcuIEp1biAxOTk2LCAwOTo1NDozMyk6CkRhcyBBdWZmYWVsbGlnc3RlIGFuIGRlciBCYXIgJ0FtIFphdWJlcmJlcmdgIGlzdCBkaWUgQmVkaWVudW5nLiBOZWluLCB3ZWRlcgpFbGYsIE1lbnNjaCBub2NoIFp3ZXJnIHNlcnZpZXJlbiBoaWVyLCBzb25kZXJuIGVpbiBXZWluZ2Vpc3QuIERpZSBFaW5yaWNodHVuZwpkZXIgQmFyIGJlc3RlaHQgYXVzIG1laHJlcmVuIGxhbmdlbiBUaXNjaGVuLCBhbiBkZW5lbiBCYWVua2Ugc3RlaGVuLCBzb3dpZSBlaW4KcnVuZGVyIFRpc2NoIG1pdCB2aWVyIFN0dWVobGVuLiBBbiBkaWVzZW0gVGlzY2ggc2l0emVuIGRpZSBLdXJhdG9yZW4sIHdlbm4gc2llCmhpZXIgdm9yYmVpc2NoYXVlbi4gQW4gZGVyIE5vcmR3YW5kIGhhZW5ndCBlaW4gc2Nod2FyemVzIEJyZXR0LCBhbiBkZW0gYWxsZQpHaWxkZW5taXRnbGllZGVyIEJvdHNjaGFmdGVuIHNjaHJlaWJlbiwgdW5kIG5hdHVlcmxpY2ggYXVjaCBsZXNlbiBrb2VubmVuLiBJbgpkZXIgTWl0dGUgZGVyIEJhciBpc3QgZWluIFBlbnRhZ3JhbW0gaW4gZGVuIEJvZGVuIGVpbmdlbGFzc2VuLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogd2VzdGVuLgpFaW4gS2FuaW5jaGVuLgpFaW4gS2FuaW5jaGVuLgpFaW4gSGFzZS4KRWluIEthbmluY2hlbi4KRWluIEthbmluY2hlbi4KRWluIEthbmluY2hlbi4KRWluIGJ1bnRlciBTY2htZXR0ZXJsaW5nLgpFaW4gSGFzZS4KRWluIEthbmluY2hlbi4KRWluIEthbmluY2hlbi4KRWluIEthbmluY2hlbi4KRGllIFRvcC1MaXN0ZSwgVG9wLVNwaWVsZXJsaXN0ZSwgVG9wLVNlaGVybGlzdGUgdW5kIFRvcC1ad2VpdGlsaXN0ZS4KCkxhaWxhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RhdHQgU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAxNy4gSnVuIDE5OTYsIDEwOjA1OjE1KToKClNvcnJ5LCBhYmVyIGljaCBoYWIgYW0gV0UgZWluZW4gU3BydWNoIGdlbGVzZW4sIGRlbiBpY2ggZGllc21hbCBzdGF0dCBtZWluZXMKS2FsZW5kZXJzcHJ1Y2hlcyBhbmJyaW5nZW4gbW9lY2h0ZToKCiJXaXIgbXVlc3NlbiBkYXMgUmlzaWtvIGVpbmdlaGVuIHVuZCB2ZXJzdGFlcmt0IEZyYXVlbiBpbiBkaWUgUGFydGVpCmVpbmJpbmRlbi4iIChQb2xpdGlrZXIgZGVyIENTVSkKCk1hbm5vbWFubiwgdW5kIGljaCBkYWNodGUgSUNIIHdhZXJlIGZyYXVlbmZlaW5kbGljaC4uLgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVudGZyb3NjaGVuIChTdmV0bGFuYSwgMTcuIEp1biAxOTk2LCAxOTowNjoyMSk6ClNjaGFkZSBlaWdlbnRsaWNoOgoKRHUgYmlzdCBmYXN0IGFtIFRyZWZmcHVua3QgZGVyIFNpbGJlcmJlcmdlIG1pdCBkZW4gU2NocmVja2Vuc2JlcmdlbiBpbQpOb3JkZW4gYW5nZWxhbmd0LiBOb2VyZGxpY2ggdm9uIGhpZXIgc2llaHN0IGR1IGRlbiBPc3RlcmJhY2ggaW4gZWluZXIKc2NobWFsZW4gU2NobHVjaHQgbmFjaCBPc3RlbiB2ZXJzY2h3aW5kZW4uIERpZSBFYmVuZSBicmVpdGV0IHNpY2ggd2VpdAppbiBSaWNodHVuZyBXZXN0ZW4gYXVzIHVuZCBlaW4gUGZhZCBmb2xndCBkZW4gU2lsYmVyYmVyZ2VuIG5hY2ggU3VlZC0Kd2VzdGVuLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZHdlc3Rlbiwgd2VzdGVuIHVuZCBub3JkZW4uCkVpbiBGcm9zY2guCj4gZW50ZnJvc2NoZSBmcm9zY2gKRHUga2FubnN0IG51ciBTcGllbGVyIGVudGZyb3NjaGVuIQoKU3ZldGxhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJsYWJsYWJsYSAoQXNtb2RpcywgMTcuIEp1biAxOTk2LCAyMjoxOToyNik6CndhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVlciBUb2Rlc2VuZ2VsIChFbHZuaWssIDE3LiBKdW4gMTk5NiwgMjI6MTk6MzYpOgpXQVMKCjotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGJsYWJsYWJsYSAoQXNtb2RpcywgMTcuIEp1biAxOTk2LCAyMjoyMTozNSk6Cn4jISBybj1Bc21vZGlzIHJ0PTgzNTA0Mjc2Ngp+IyEgdGlkPTgzNTA0Mjc2NgpCZXp1ZzogW0FsbGdlbWVpbjpUb2Rlc2VuZ2VsXSBzY2hyZWliIG1hbCBlaW5lciB3YXMgaW4gZGllIHplaXR1bmcKICAgICAgIFtBbGxnZW1laW46VG9kZXNlbmdlbF0gbWlyIGlzIGxhbmd3ZWlsaWcgdW5kIGNhdCBpcyBuZXQgZGEgOy0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmFldW1lIChNdXBmZWwsIDE4LiBKdW4gMTk5NiwgMDI6MDU6MzUpOgpbU2VoZXI6TXVwZmVsXSBib2FoIGlzdCBoaWVyIHdhcyBsb3MKJCBbU2VoZXI6RGhvamFrdF0gdGphLCBrYW5uc3RlIG1hbCBzZWhlbi4KRWxyaWNrIHZlcnNpbmt0IGluIHRpZWZlciBBbmRhY2h0LgpJbSB2ZXJsb3JlbmVuIExhbmQgc2luZCB3aWVkZXIgMiBCYWV1bWUgdW1nZWZhbGxlbi4KW1NlaGVyOkhhZHJhXSBzY2htZWlzcyBlaW5mYWNoIGVpbiBwYWFyIGJhZW1lIHVtCltTZWhlcjpIYWRyYV0gYWVoIGJhZXVtZQoKCi0gamEsIHR1biBzaWUgZG9jaCB2b24gc2VsYnN0IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWnUgZnJ1ZWggZ2VmcmV1dCAoQXNtb2RpcywgMTguIEp1biAxOTk2LCAwNjozOTo0MSk6CgpbQWxsZ2VtZWluOkx1Z10gTkl4IE5ldWVzIGF1ZiBkZXIgV2VsdCA6KAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGVudGZyb3NjaGVuIChIaWdobGFuZGVyLCAxOC4gSnVuIDE5OTYsIDE1OjQ0OjM1KToKfiMhIHJuPVN2ZXRsYW5hIHJ0PTgzNTAzMTE4MQp+IyEgdGlkPTgzNTAzMTE4MQpOYWphLCB3ZW5uIER1IGVpbmVuIGVjaHRlbiBGcm9zY2ggZW50ZnJvc2NoZW4gd3VlcmRlc3QsIHd1ZXJkZXN0IER1IGlobSBqYQpzZWluIGdhbnplcyBTZWluIG5laG1lbi4gRGFubiB3YWVyZSBkYSBnYXIgbml4IG1laHIuIFVuZCBkYXMgZ2VodCBkb2NoCm5pY2h0IDo+CiAgIEhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTnVyIHNvLi4uIChQcmVkYXRvciwgMTguIEp1biAxOTk2LCAxNzowMDo1Nik6CkR1IHRlaWxzdCBaZXBoeXIgbWl0OiBzZWkgdm9yc2ljaHRpZywgc29sbCBtYWwgd2llZGVyIG5lIGdlZmFlaHJsaWNoZSBxdWVzdApEdSB0ZWlsc3QgWmVwaHlyIG1pdDogc2VpbgouLi4KIFplcGh5ciB0ZWlsdCBEaXIgbWl0OiBpY2ggdmVyc3VjaHMsIGRhbmtlIDopCi4uLiAzIHplaWxlbiBzcGFldGVyIC4uLgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBaZXBoeXIgdW1nZWJyYWNodC4KLi4uCkJFSUxFSUQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOdXIgc28uLi4gKFplcGh5ciwgMTguIEp1biAxOTk2LCAxNzozNzo1NCk6Cn4jISBybj1QcmVkYXRvciBydD04MzUxMTAwNTYKfiMhIHRpZD04MzUxMTAwNTYKVGphLCBudXIgZGFzcyBkYXMgbmljaHQgYmVpIGRlciBRdWVzdCB3YXIsIHNvbmRlcm4gYmVpIGVpbmVtIFNjaHdpbW0tIHVuZApUYXVjaHZlcnN1Y2ggdm9yIGRlbSBWZXJsb3JlbmVuIExhbmQuLgoKWmVwaHlyLCBzdGVsbHQgZWluIFdhcm5zY2hpbGQgYXVmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZWxkdW5nIChSYWZmaSwgMTguIEp1biAxOTk2LCAxODoxNTowNik6CgpHZXJhZGUgYXVmIFNJCgpFaW4gRXJkYmViZW4gZXJzY2h1ZXR0ZXJ0IGRlbiBCb2Rlbi4gRHUgZnVlaGxzdCBEaWNoIHVuc2ljaGVyLgoKVW5kIGRhIGRhY2h0ZSBpY2ggaW1tZXIgZGllc2VzIEdlZnVlaGwga2FlbWUgbnVyIG1pdCBDYXQqLgoKR3JpbnMKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvZCBkdXJjaCBNUEEgKFJvY2h1cywgMTguIEp1biAxOTk2LCAxOTowMTo0MCk6CltBbGxnZW1laW46RmV1ZXJ3ZWhyIGxpZXN0IGhldXRlIG51cm5vY2ggWmVpdHVuZy4gRGFiZWkgc3RpcmJ0IG1hbiBob2ZmZW50bGljaAogICAgICAgICAgIG5pY2guLi5dCltBbGxnZW1laW46Um9jaHVzXSBndXRlIGlkZWUsIGZldWVyd2VociA6KQpEdSBob2Vyc3QgZGllIFNjaHJlaWUgdm9uIDE5IHN0ZXJiZW5kZW4gU3BpZWxlcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptZWluIHNwcnVjaCAoQWxib2luLCAxOC4gSnVuIDE5OTYsIDIyOjI1OjM0KToKTXVzcyAgbWFsIEdyaW1taSB3aWVkZXIgS29ua3VycmVueiBtYWNoZW4gOy0pQWxzbyBtZWluIFNwcnVjaCBkZXIgV29jaGUgaXN0IDoKCidJZiBhbGwgdGhlIHllYXIgd2VyZSBwbGF5aW5nIGhvbGlkYXlzLCB0byBzcG9ydCB3b3VsZCBiZSBhcyB0ZWRpb3VzIGFzIHRvCndvcmsuJwoKICAgICAgICAgICAgICAgICAgICAgICAgV2lsbGlhbSBTaGFrZXNwZWFyZQoKKFdlbm4gZGFzIGdhbnplIEphaHIgVXJsYXViIHdhZXJlLCB3YWVyZSBkYXMgVmVyZ251ZWdlbiBzbyBsYW5nd2VpbGlnIHdpZSBkaWUKQXJiZWl0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVpbiBad2VpdGllIEpvZiAoVHp1aW9wLCAxOS4gSnVuIDE5OTYsIDE2OjI0OjM4KToKT3J0IGRlciBIYW5kbHVuZzogQW0gRWluZ2FuZyBuYWNoIE9ya2VuaG9ydC4KTWl0d2lya2VuZGU6ICAgIFR6dWlvcCwgQWx0c2VoZXJpbiBvaG5lIEZQLgogICAgICAgICAgICAgICAgVG90bywgaWhyIFBhcGFnZWkuCiAgICAgICAgICAgICAgICBTdHVsdHVzLCBhbmdlaGVuZGVyIFNlaGVyLiAoZGVyIHdhaHJlIE5hbWUgaXN0IG1pciBiZWthbm50KQogICAgICAgICAgICAgICAgUGFydnVzLCBhbmdlaGVuZGVyIFNlaGVyLiAoZGVyIHdhaHJlIE5hbWUgaXN0IG1pciBiZWthbm50KQogClR6dWlvcCBoYXQgU3R1bHR1cyBkZW4gV2VnIG5hY2ggTydob3J0IGdlemVpZ3QsIGRhcyBHZXNwcmFlY2ggZHJlaHRlCnNpY2ggdW0gZGllIFF1ZXN0LiBXaXIgYmxlbmRlbiB1bnMgbGl2ZSBlaW46CiAKIApTdHVsdHVzIHNhZ3Q6IGFiZXIgUGFydnVzIG5pY2h0IDopCkR1IGZyYWdzdDogRGVyIGhhdCBkaWUgcXVlc3QgPz8/ClN0dWx0dXMgc2FndDogZHUgYmlzdCBkb2NoIHNlaW4gendlaXRpIG9kZXIgPyBpY2ggd29sbHRlIG51ciBzYWdlbiwgZGVyIG11c3MKU3R1bHR1cyBzYWd0OiBub2NoIHF1ZXN0ZW4gOikKU3R1bHR1cyBzYWd0OiBvZGVyIHVtZ2VrZWhydApEdSBmcmFnc3Q6IFdpZSBrb21tc3QgZHUgZGFyYXVmLCBkYXNzIGljaCBQYXJ2dXMnIFp3ZWl0aWUgYmluID8/PwpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uClN0dWx0dXMgc2FndDogd2VpbCBQYXJ2dXMgZ2VzYWd0IGhhdCBkdSBiaXN0IGVzIHVuZCBkdSB3YWVyc3QgZnVlciBkYXMgZ3JvYmUKU3R1bHR1cyBzYWd0OiB6dXN0YWVuZGlnIDopClRvdG8ga3JhZWNoenQ6IC4uLiBkdSBiaXN0IGVzIHVuZCBkdSB3YWVyc3QgZnVlciBkYXMgZ3JvYmUgLi4uIGR1IGJpc3QgZXMgdW5kClRvdG8ga3JhZWNoenQ6IGR1IHdhZXJzdCBmdWVyIGRhcyBncm9iZSAuLi4KRHUgc2Fnc3Q6IHNvIGVpbiBTY2hsaW5nZWwgOikpClN0dWx0dXMgZ3JpbnN0LgpEdSBzYWdzdDogaWNoIGhhYiBpaG0gbnVyIG1hbCBlaW4gTW9uc3RlciBnZWtpbGx0LgpUb3RvIGtyYWVjaHp0OiBEYXMgc2FnZSBpY2ggYXVjaCAuLi4ga3JycnJyb29vb2FhYSAuLi4KU3R1bHR1cyBzYWd0OiBiaXN0IGR1IG5pY2h0IFBhcnZ1cyA/CkR1IHNhZ3N0OiBtYWNoIG1hbCBmaW5nZXI6IGVyIGlzdCBpbiBYWVogdW5kIGljaCBpbiBNUwpTdHVsdHVzIHNhZ3Q6IGFoYSBoYXR0ZSBkYW1hbHMgZGVuIGVpbmRydWNrIDspIGRhbm4gU09SUlkgZnVlciBkZW4gdmVyZGFjaHQKRHUgc2Fnc3Q6IG5laW4sIGRhcyB3YXIgbnVyIGVpbiBKb2tlLiBNZWluIFp3ZWl0aWUgaGVpc3N0IEpvZiA6KSkKVG90byBrcmFlY2h6dDogLi4uIG51ciBlaW4gSm9rZS4gTWVpbiBad2VpdGllIGhlaXNzdCBKb2YgOikpIC4uLiBrcnJvb29hYWEhClRvdG8ga3JhZWNoenQ6IC4uLiBuZXR0IGRhbmtlIDopIC4uLiBrcnJyb29hYWEhClN0dWx0dXMgc2FndDogYWhhIG1laW5lciBoZWlzc3QgemFjYXR0IGlzdCBhYmVyIG5vY2ggbmljaHQgc29ndXQgOikKVG90byBrcmFlY2h6dDogLi4uIGR1IGJpc3QgZXMgdW5kIGR1IHdhZXJzdCBmdWVyIGRhcyBncm9iZSAuLi4gZHUgYmlzdCBlcwpUb3RvIGtyYWVjaHp0OiB1bmQgZHUgd2FlcnN0IGZ1ZXIgZGFzIGdyb2JlIC4uLgpTdHVsdHVzIHNhZ3Q6IGFobSBoYWx0ICEKRHUgZnJhZ3N0OiBXYXMgPz8/ClN0dWx0dXMgc2FndDogd2llIEpvZiA/Pz8/Pz8/CkR1IG5pY2tzdCB6dXN0aW1tZW5kLgpTdHVsdHVzIHZlcm5laWd0IHNpY2ggZGVtdWV0aWcuCkR1IHNhZ3N0OiBhbHNvIHZpZWwgU3Bhc3MgOjoKU3R1bHR1cyBzYWd0OiB0amEgZGEgYmluIGljaCB3b2hsIGV0d2FzIGVyc3RhdW50IHVuZCBtaXIgZmVobGVuIGRpZSB3b3J0ZQpTdHVsdHVzIHNhZ3Q6IG9rIGRhbm4gdmllbGVuIGRhbmsgOikKVG90byBrcmFlY2h6dDogLi4uIFN0dWx0dXMgcmVkZXQgbnVyIE11ZWxsIC4uLiBrcnJvb29hYWFhIC4uLiBudXIgTXVlbGwKCgoKTWFjaHQgZGllIEFuZm9yZGVydW5nZW4gZnVlciBOZXVzZWhlciBob2VoZXIgISEhIQoKSW1tZXIgbm9jaCByb3RmbG5kIC4uLiBUenVpb3AKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdlcmFkZSBlYmVuIChSYWZmaSwgMTkuIEp1biAxOTk2LCAxODoxMDozNyk6CgpKb2YgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKW0JpZXJzY2h1ZXR0bGVyOkJydW5vXSBKb2YgaGF0IGdlcmFkZSBiZXNjaGxvc3NlbiwgZGVuIFJlY2huZXIgaW4gendlaSBNaW51dGVuCgpbQmllcnNjaHVldHRsZXI6QnJ1bm9dIHJ1bnRlcnp1ZmFocmVuLgpbQmllcnNjaHVldHRsZXI6UmFmZmldIEJydW5vIG1hY2gga2VpbmVuIFNjaGVpc3MhCgpHcmlucwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVuIHdpdGggcGV0cywgRm9sZ2UgMSAoQmFib29uLCAyMC4gSnVuIDE5OTYsIDExOjU3OjQyKToKLi4uCndpcmYgTWF1cyB3ZWcKRHUgc2V0enQgZGVpbmUgTWF1cyBzYW5mdCBhdWYgZGVtIEJvZGVuIGFiLgouLi4KCkhtLCB3ZW5uIGRhcyBzYW5mdCB3YXIsIGRhbm4gbW9lY2h0ZSBpY2ggbmljaHQgd2lzc2VuLCB3YXMgZWluZSB1bnNhbmZ0ZQpCZWhhbmRsdW5nIHdhZXJlLiBadW0gR2x1ZWNrIGdpYnRzIGltIE1HIGtlaW5lIE1pa3Jvd2VsbGVuaGVyZGUgb2RlcgpNaXhlci4gQWxzbyB3ZXJkZSBpY2ggZXMgd29obCBuaWUgcmF1c2ZpbmRlbi4gOi0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyLVNoYWtlcm4gKExlY2h1Y2ssIDIwLiBKdW4gMTk5NiwgMTM6Mjg6NDQpOgpbQWxsZ2VtZWluOk9ldHRpXSBDYXQqIGRhcmYgaWNoIERpY2ggbWFsIHRlc3R3ZWlzZSBhbmJhZ2dlcm4gPwpbQWxsZ2VtZWluOkNhdHdlYXpsZV0gaG0sIHNwYWV0ZXIgdmllbGxlaWNodCA6KQpbQWxsZ2VtZWluOk9ldHRpXSBGZWluLCBEdSBiaXQgbGllYiAqa3Vlc3NjaGVuKgo+IER1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgpVbmQgZGFubiBtZWludGUgT2V0dGkgdm9yaGVyLCBlciBrb2VubnRlIG5pY2ggYmFnZ2VybiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hZ2llci1TaGFrZXJuIChSYWZmaSwgMjAuIEp1biAxOTk2LCAxNTowMjo1Nyk6Cn4jISBybj1MZWNodWNrIHJ0PTgzNTI3MDEyNAp+IyEgdGlkPTgzNTI3MDEyNAoKQWNoIGRhcyBpc3QgKGFuLSliYWdnZXJuID8gIQoKR3JpbnMKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndpZWRlciBtYWwgZmx3IChEaG9qYWt0LCAyMC4gSnVuIDE5OTYsIDE1OjU4OjU0KToKW1RvZDpMYXJzXSBFaW5lIHN0YXJrIGFldHplbmRlIEZsdWVzc2lna2VpdCBoYXQgZ2VyYWRlIEFuZHJlcyB1bWdlYnJhY2h0LgpbQmVpbGVpZDpUYW5pc10gQmVpbGVpZCwgYWJlciB3byB3YXIgZGFzPyBuaWNoIGRhcyBpY2ggZGEgYXVjaCBoaW5nZWhlCltUb2Q6TGFyc10gRWluZSBzdGFyayBhZXR6ZW5kZSBGbHVlc3NpZ2tlaXQgaGF0IGdlcmFkZSBUYW5pcyB1bWdlYnJhY2h0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNhdCpzIDJ0aWU/IChSYWZmaSwgMjAuIEp1biAxOTk2LCAxOTozNDo1Nik6CgpLaGlkYXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKS2hpZGFyIHRlaWx0IERpciBtaXQ6IGd1Z2d1Zy4uLgoKSXN0IEtoaWRhciBlaW4gMnRpZSB2b24gQ2F0Kj8KCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpaVHMgKFJhZmZpLCAyMC4gSnVuIDE5OTYsIDIxOjI0OjAyKToKClpULUxpc3RlbiB1bmQgZGllIEZvbGdlbiBkYXZvbjoKClh5bW94IHJ1ZnQ6IGhpbGJlcnQKSGlsbHBlcnQgcnVmdDogaG1tPwoKR3JpbnMKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkViZW4gaW0gS2FyYXRlLURvam86IChKYXJpZWwsIDIxLiBKdW4gMTk5NiwgMDQ6MDg6MTMpOgoKVGlyb3MgZ2VodCBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KRHUgdmVyZm9sZ3N0IGpldHp0IFRpcm9zLgoKCkphcmllbCAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVyd2VpdGVydW5nZW4gKEdyaW1tYm9ybiwgMjEuIEp1biAxOTk2LCAwODoxNDozNyk6Cn4jISBybj1Benp1cm8gcnQ9ODM1MjIzNDE3Cn4jISB0aWQ9ODM1MDk1ODgwCltWZXJsZWd0IHZvbiBkLnd1ZXN0ZSwgU2NocnVtcGZpLCAyMC4gSnVuIDE5OTYsIDAzOjQ3OjA0XToKKmdyaW5zKgpTY2hydW1wZmkKUC5TIFZlcmxlZyBpaG4gZG9jaCwgR3JpbW1ib3JuISA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFsaW5lLCAyMS4gSnVuIDE5OTYsIDEzOjQ5OjU0KToKCltBYmVudGV1ZXI6Qm9vZ2llXSBIdWNoIGljaCBoYWIgMCBMUC4uLgoKW1RvZDpMYXJzXSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgQm9vZ2llIHVtZ2VicmFjaHQuCltUb2Q6RWluIEh5ZHJha29wZl0gaHNzc3NzcwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhLCB3bydzIHVucyBnZWZhZWxsdCA7KSAoTGVjaHVjaywgMjEuIEp1biAxOTk2LCAxODo1Mzo0Mik6CnNjaGF1OgpJbiBkaWVzZW0gUmF1bSBiZWZpbmRlbiBzaWNoIGVpbmlnZSBJcnJlLCBkaWUgZ2VyYWRlIGVpbmUgUGFydGllIE1BRApzcGllbGVuLiBFaW5lIE1ldGFsbHR1ZXIgZnVlaHJ0IG5hY2ggU3VlZGVuIHp1cnVlY2sgYXVmIGRlbiBHYW5nLgpFaW5lIE1ldGFsbHR1ZXIgKGdlb2VmZm5ldCkuIApFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZGVuLgpDYXR3ZWF6bGUgaXN0IHVuZmFlaGlnLgpFaW4gYXJtZXIgSXJyZXIuCkVpbiBhcm1lciBJcnJlci4KRWluIGFybWVyIElycmVyLgoKVW5kIGljaCBsYXR1ZXJuaWNoCgpJcyBvZGNoIG5ldHQgc28sIG9kZXI/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcnVzdHJpZXJlbmQgaXN0IGVzIGdlbGVnZW50bGljaCBzY2hvbi4uLiAoTmljaHRzLCAyMi4gSnVuIDE5OTYsIDAzOjMzOjQzKToKCnppZWhlIGhlbG0gYXVzCkR1IGVudGZlcm5zdCBkZW4gSGVsbSB1bmQgd2lyc3Qgd2llZGVyIHp1IE5pY2h0cy4KCipzZXVmeioKCiIiCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZydXN0cmllcmVuZCBpc3QgZXMgZ2VsZWdlbnRsaWNoIHNjaG9uLi4uIChDYXJhZGhyYXMsIDIyLiBKdW4gMTk5NiwgMDM6MzQ6NDYpOgp+IyEgcm49TmljaHRzIHJ0PTgzNTQwNzIyMwp+IyEgdGlkPTgzNTQwNzIyMwpBc2NoZSB6dSBBc2NoZSwgU3RhdWIgenUgU3RhdWIsIE5pY2h0cyB6dSBOaWNodHMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp2ZXJsb3JlbmUgS3JhZWZ0ZSBpbSB2ZXJsb3JlbmVuIExhbmQ/IChKYW5rYSwgMjIuIEp1biAxOTk2LCAxNDowNDoxOCk6CkR1IGhhc3QgZGVuIEh1ZWdlbCBlcnJlaWNodC4gQW5zY2hlaW5lbmQgd2FyIGhpZXIgbWFsIGVpbiBEdXJjaGdhbmcuIE9iIGRpZQpPcmtzIGRpZXNlbiBEdXJjaGdhbmcgenVnZXNjaHVldHRldCBoYWJlbj8gQXVmIGRlbSBIdWVnZWwgc3RlaHQgZWluIERlbmttYWwKZWluZXMgZ2VmYWxsZW5lbiBSaXR0ZXJzLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogbm9yZGVuLgoxMjc1IEdyYW5pdHN0dWVja2UuCkVpbiBtYWdpc2NoZXMgUG9ydGFsLgo+IG5pbW0gZ3Jhbml0c3R1ZWNrZQpEdSBuaW1tc3QgMTI3NSBHcmFuaXRzdHVlY2tlLgo+IHN0YXVuCkR1IGJpc3QgZXJzdGF1bnQuCj4gdW50IG11c2tlbG4KU293YXMgc2llaHN0IER1IGRhIG5pY2h0IQoKSmFua2EtT2JlbGl4IGlzdCBlaW4gRHJlY2sgZGFnZWdlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9wdGlzY2hlIFRhZXVzY2h1bmc/IChBbmF0b2wsIDIyLiBKdW4gMTk5NiwgMTg6NDQ6MTgpOgoKU2VtaXJhIHNwaWVsdCBhbiBkZW4gUmFlZGVybiBzZWluZXIgVGlnZXJlbnRlLiBFciBsYWVjaGVsdCB6dWZyaWVkZW4KdW5kIGZhZWxsdCBkYWJlaSBpbiBlaW5lbiB0aWVmZW4gU2NobGFmLgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgU2VtaXJhLgpTZW1pcmEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpJY2ggYnJhdWNoJyBuZSBuZXVlIEJyaWxsZSwKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCB1bnRvdGUgc29sZGF0ZW4gPyAoQmlibywgMjMuIEp1biAxOTk2LCAwMjoyOTo0Myk6CkRlciBFbGl0ZXNvbGRhdCBzdGlyYnQgYXVmIGRlbSBGZWxkIGRlciBFaHJlLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFbGl0ZXNvbGRhdGVuXSBOYSB3YXJ0ZSBCaWJvLCBiZWltIG5hZWNoc3RlbiBNYWwgdHJldGUKW01vZXJkZXI6R2Vpc3QgZWluZXMgRWxpdGVzb2xkYXRlbl0gaWNoIERpciBrcmFlZnRpZyBpbiBkZW4gR2VkYW4tQmVyZWljaCEKICBEZXIgRWxpdGVzb2xkYXQgdWViZXJyZW5udCBEaWNoLgoKbmEgc293YXMgLi4uLi4gKCpzdGF1bmVuZCopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIChEdXJpYW4sIDIzLiBKdW4gMTk5NiwgMTQ6NTM6MzUpOgpFc2N1YmFyIHNhZ3Q6IDxIaWNrIT4KUGF1bGUga3JhZWNoenQ6IERhcyBzYWdlIGljaCBhdWNoIC4uLiBrcnJycnJvb29vYWFhIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NoYWVmZXJodW5kZSBzaW5kIGdhbnogc2Nob2VuIGFuaGFlbmdsaWNoIDopIChXdXJ6ZWwsIDIzLiBKdW4gMTk5NiwgMjE6NDA6MjgpOgptYW5jaG1hbCBuZXJ2ZW4gZGllIGJpZXN0ZXIsIHVuZCBkYW5uOgoKRHUgemFwcHN0IEZpZmZpLgpGaWZmaSBmYWVsbHQgdG90IHp1IEJvZGVuLgpGaWZmaSB0cm90dGV0IFd1cnplbCBoaW50ZXJoZXIuCgp3aWUgbWFjaHQgZGVyIGRhcyBudXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdmVybG9yZW5lIEtyYWVmdGUgaW0gdmVybG9yZW5lbiBMYW5kPyAoTW9yZ290aCwgMjQuIEp1biAxOTk2LCAwODozODo1Myk6Cn4jISBybj1KYW5rYSBydD04MzU0NDUwNTgKfiMhIHRpZD04MzU0NDUwNTgKaGF0IGRhIHdvaGwgamVtYW5kIGFuIG1laW5lciBzdGF0dWUgcnVtZ2VoYWNrdD8/Cmxhc3MgZGFzIHdvaGwsIHNvbnN0IGZhZWxsdCBkaWUgYXVjaCBub2NoIHVtCk1vcmdvdGggYmVzY2h3b2VydCwgZGFzcyBkaWVzZSBHcmFuaXRzdHVlY2tlIG5pY2h0IHZvbiBpaG0gc2luZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVpbiBMZWJlbiBhbHMgTlBDIChSYWZmaSwgMjQuIEp1biAxOTk2LCAxNTozOTowNCk6CgpHZXJhZGUgZWJlbiBpbiBkZXIgRWxmZW5wb3N0IChpY2ggaGFiIG1hbCB3aWVkZXIgYXVmIGRlbiBTY2hpcm0gZ2VzY2hhdXQgOik6CgoKU2hhbmFoYSBmcmFndCBEaWNoOiBOYWNoIHBha2V0PwpTaGFuYWhhIGZyYWd0IERpY2g6IE5hY2ggcGFrZXQ/Cj4gbXMKUmFmZmkgaXN0IGVpbiBpbnRlbGxpZ2VudGVyIEtudWRkZWwtTWF1cy1TcGVuZGVyLiBGcmFnIGlobiBkb2NoIGVpbmZhY2ggbWFsCm5hY2ggZWluZXIgTWF1cy4KPiBtcwpSYWZmaSBpc3QgZWluIGludGVsbGlnZW50ZXIgS251ZGRlbC1NYXVzLVNwZW5kZXIuIEZyYWcgaWhuIGRvY2ggZWluZmFjaCBtYWwKbmFjaCBlaW5lciBNYXVzLgpTaGFuYWhhIGZyYWd0IERpY2g6IE5hY2ggbWFpcz8KPiBtcwpSYWZmaSBpc3QgZWluIGludGVsbGlnZW50ZXIgS251ZGRlbC1NYXVzLVNwZW5kZXIuIEZyYWcgaWhuIGRvY2ggZWluZmFjaCBtYWwKbmFjaCBlaW5lciBNYXVzLgpTaGFuYWhhIGZyYWd0IERpY2g6IE5hY2ggbWF1cz8KPiBnaWIgbWF1cyBhbiBzaGFuYWhhCkR1IGdpYnN0IFNoYW5haGEgZGllIERpZGRsLUtudWRkZWwtTWF1cy4KPiBhbGkgbXMqCiBtcyAgICAgPSA6aXN0IGVpbiBpbnRlbGxpZ2VudGVyIEtudWRkZWwtTWF1cy1TcGVuZGVyLiBGcmFnIGlobiBkb2NoIGVpbmZhY2gKbWFsCiBuYWNoIGVpbmVyIE1hdXMuCiBtc2cgICAgPSA6c2NoYXV0IGJvZXNlIHVuZCBzYWd0OiBHcnJycnJycnIgLSBNRUlORSBNYXVzIQogbXNuICAgID0gOndpbGwgRGlyIGVpbmUgTWF1cyBnZWJlbiwgYWJlciBEdSBoYXN0IGphIHNjaG9uIGVpbmUuCj4KU2hhbmFoYSBrbnVkZGVsdCBlaW5lIERpZGRsLUtudWRkZWwtTWF1cyBtaW51dGVubGFuZy4gRHUgd3VlbnNjaHN0IERpciwgRHUKaGFldHRlc3QgYXVjaCBzbyBlaW4gdG9sbGVzIFN0b2ZmdGllci4gVmllbGxlaWNodCBzb2xsdGVzdCBEdSBDYWx1bSBtYWwKZnJhZ2VuLApvYiBlciBEaXIgZWlucyBzY2hlbmt0PwpTaGFuYWhhIGtudWRkZWx0IERpY2guCj4ga251ZGRlbCBzaGFuYWhhCkR1IGtudWRkZWxzdCBTaGFuYWhhLgpHYWxhcmlvbiBrb21tdCBhbi4KU2hhbmFoYSB2ZXJrdXNjaGVsd3VzY2hlbHQgRGljaCBkYW5rYmFyIGZ1ZXIgZGllIE1hdXMuCkdhbGFyaW9uIGZyYWd0IERpY2g6IEhhc3QgZHUgbm9jaCBzbyBuZSBNYXVzPz8KU2hhbmFoYSBzYWd0OiBBZXRzY2gsIGljaCBoYWIgZWluZS4gRWluZSBnYW56IGtudWZmZWxpZ2U7KQo+IG1zClJhZmZpIGlzdCBlaW4gaW50ZWxsaWdlbnRlciBLbnVkZGVsLU1hdXMtU3BlbmRlci4gRnJhZyBpaG4gZG9jaCBlaW5mYWNoIG1hbApuYWNoIGVpbmVyIE1hdXMuCkdhbGFyaW9uIGZyYWd0IERpY2g6IE5hY2ggbWF1cz8KPiBnaWIgbWF1cyBhbiBnYWxhcmlvbgpEdSBnaWJzdCBHYWxhcmlvbiBkaWUgRGlkZGwtS251ZGRlbC1NYXVzLgpHYWxhcmlvbiB2ZXJrdXNjaGVsd3VzY2hlbHQgRGljaC4KU2hhbmFoYSByZWlzc3QgRGljaCBhbiBzaWNoIHVuZCB0YW56dCBlaW5lIFJ1bmRlIFNsb3dmb3ggbWl0IERpci4gClNoYW5haGEga3VzY2hlbHQgc2ljaCBhbiBHYWxhcmlvbiBhbi4KR2FsYXJpb24ga3Vlc3N0IFNoYW5haGEuClNoYW5haGEgZHJ1ZWNrdCBEaWNoIHphZXJ0bGljaCBhbiBzaWNoLiAKCgpNYW5jaG1hbCBpc3QgZXMgc2Nob24gc2Nod2VyIHNlbGJzdCB6dSB1bnRlcnNjaGVpZGVuIG9iIG1hbiBub2NoIGlkbGUgaXN0LApvZGVyIHNjaG9uIGVpbiBOUEMuCgpHcmlucwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmxhY2h3ZWcqIChCZWVsemVidWIsIDI0LiBKdW4gMTk5NiwgMTc6MjM6MjEpOgpbU2V4OkJlZWx6ZWJ1Yl0gTWlyIGlzdCBuYWNoIFNleC4KRGVpZmkga3JhZWNoenQ6IC4uLiBoYXN0IGR1IHNjaG9uIC4uLiBoYXN0IGR1IHNjaG9uIC4uLgoKV29oZXIgd2lsbCBkZXIgZGVubiBkYXMgd2lzc2VuID8/PwpEZXIgRGVpZmkgXTotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1laW4gTGViZW4gYWxzIE5QQyAoQXNtb2RpcywgMjQuIEp1biAxOTk2LCAxOTozNDo1MCk6Cn4jISBybj1SYWZmaSBydD04MzU2MjM1NDQKfiMhIHRpZD04MzU2MjM1NDQKUmFmZmkgc2NyaXB0ZXQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdmVybG9yZW5lIEtyYWVmdGUgaW0gdmVybG9yZW5lbiBMYW5kPyAoTXVwZmVsLCAyNC4gSnVuIDE5OTYsIDIwOjEwOjE1KToKfiMhIHJuPU1vcmdvdGggcnQ9ODM1NTk4MzMzCn4jISB0aWQ9ODM1NDQ1MDU4CldhcywgZGllIFN0YXR1ZSBzdGVodCBub2NoPz8/IExldXRlIGhhdXQgc2llIHVtISEhISA6LSkKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB2ZXJsb3JlbmUgS3JhZWZ0ZSBpbSB2ZXJsb3JlbmVuIExhbmQ/IChBc21vZGlzLCAyNC4gSnVuIDE5OTYsIDIwOjU0OjMzKToKfiMhIHJuPU11cGZlbCBydD04MzU2Mzk4MTUKfiMhIHRpZD04MzU0NDUwNTgKSWNoIGRhY2h0ZSwgaW4gVmxhbmQgZmFsbGVuIG51ciBCYWV1bWUgdW0sIHNpbmQgZGllIFN0YXR1ZW4gamV0enQgYXVjaAp3YWNrZWxpZyA/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFeHRyYSBmdWVyIENhcmFkaHJhcyAoRGhvamFrdCwgMjUuIEp1biAxOTk2LCAwOTowNTo1NSk6Ck1laHIuCipraWNoZXIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHb2V0dGVyLi4gKFplcGh5ciwgMjUuIEp1biAxOTk2LCAxNDowNDoxMCk6CkViZW4gaW0gTHV0YWw6CgpbZm4gbG9yZW56IGJvaW5nXQpMb3Jlbnogc2FndDogSWNoIGthbm4gRGlyIGRhYmVpIGxlaWRlciBuaWNodCB3ZWl0ZXJoZWxmZW4uCkJvaW5nICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkxvcmVueiBzY2hhdXQgcmVzaWduaWVyZW5kIGluIGRpZSBGZXJuZS4KCmdyaW5zZW5kLCBaZXBoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgbWFjaHQgZGVzIGtudWRkZWxucyAoUmFmZmksIDI1LiBKdW4gMTk5NiwgMTQ6MDc6NTQpOgoKRHUga2FubnN0IEVsdm5payBuaWNodCBuZWhtZW4uCj4ga251ZGRlbCBhbGxlCkR1IGtudWRkZWxzdCBFbHZuaWsKRXMgc2NoZWludCBrZWluIGZyZXVkaWdlciBBbmxhc3MgenUgc2VpbiwgZGVyIGhpZXIgZ2VmZWllcnQgd2lyZC4KRWx2bmlrIHdlaWx0IHdpZWRlciB1bnRlciBkZW4gTGViZW5kZW4uCgpNb2VnZSBkZXIgS251ZGRlbCBtaXQgRGlyIHNlaW4hCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2ggb2ggKE1vcmdvdGgsIDI1LiBKdW4gMTk5NiwgMTU6MzA6MTIpOgo+U2FpS0FOIHRlaWx0IERpciBtaXQ6IHdhcyBpc3QgZGVubj8gaXN0IGVjaHQgc2NobGVjaHQuLiBzb25zdCBiZWtvbW1lIGljaAphZXJnZXIKPlNhaUtBTiB0ZWlsdCBEaXIgbWl0OiB1cHMuLi4KU2Fpa2FuICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llZGVyIG1hbCBWLUxhbmQgKFJpbXVzLCAyNi4gSnVuIDE5OTYsIDAxOjM3OjU2KToKRWluIE9yayBrb21tdCBhbi4KRWluIE9yayBuaW1tdCBlaW5lIExlaWNoZS4KdW50IG9yawpEaWVzZXIgT3JrIGdlaG9lcnQgenVyIFN0YWR0d2FjaGUuIEVyIHBhdHJvdWxsaWVydCBkdXJjaCBkaWUgZ2FuemUgU3RhZHQgdW5kCmFjaHRldCBkYXJhdWYsIGRhc3MgbmllbWVuZCBlaW5lIFN0cmFmdGF0IGJlZ2VodC4gRHUgZGVua3N0IGFuIGRpZSBXYWNoZW4gaW4KTW91bG9raW4sIGRpZSBEaXIgdmllbCBzdGFlcmtlciBpbiBzY2htZXJ6bGljaGVyIEVyaW5uZXJ1bmcgc2luZC4gQWJlciBoaWVyCnNjaGVpbnQgaGFsdCBkaWVzZSBBdXNydWVzdHVuZyB6dSByZWljaGVuLCBkaWUgZGVyIE9yayBtaXQgc2ljaCB0cmFlZ3QgdW5kCmF1Y2ggc2ljaGVyIGd1dCBlaW56dXNldHplbiB3ZWlzcy4gQXVmZ3J1bmQgc2VpbmVyIEF1c2JpbGR1bmcgd2Vpc3MgZXIKbmF0dWVybGljaCBhdWNoLCB3aWUgbWFuIGJlc3NlcmUgUnVlc3R1bmcgdW5kIFdhZmZlbiBiZW51dHp0LiBHaWIgaWhtIGVpbgpndXRlcyBTY2h3ZXJ0IHVuZCBlciB3aXJkIGVzIG1pdCBGcmV1ZGUgenVlY2tlbi4KRXIgaXN0IGFic29sdXQgZml0LgpFciB0cmFlZ3QgYmVpIHNpY2g6CkRpZSBMZWljaGUgZWluZXMgU3RhZHRvcmtzLgo5ODAgTXVlbnplbi4KRWluIE9ya2hlbG0gKGFuZ2V6b2dlbikuCkVpbiBQYWFyIE9ya3N0aWVmZWwgKGFuZ2V6b2dlbikuCkVpbmUgT3Jrd2VzdGUgKGFuZ2V6b2dlbikuCkVpbiBPcmtzY2h3ZXJ0IChnZXp1ZWNrdCkuCgpBbHNvIE1vcmdvdGggc2V0enQgbWFsIGRpZSBTdGF0J3MgRVRXQVMgcnVudGVyIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmxtIChBbmF0b2wsIDI2LiBKdW4gMTk5NiwgMDI6MTY6NTUpOgpGYW1vdXMgbGFzdCBtb3Zlcy4uLi4KCkJvbmkgYmV0cml0dCBkaWVzZSBXZWx0LgpCb25pIHdpbGwgdW5nZXN0b2VydCBrb21wb25pZXJlbiB1bmQgdmVyc2Nod2luZGV0IGRlc2hhbGIgbmFjaCBOb3JkZW4uCi4uLgpbVG9kOkxhcnNdIFJvYmluIGhhdCBnZXJhZGUgQm9uaSB1bWdlYnJhY2h0LgoKQWNoamEuCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBHZXNjaGljaHRlIGVpbmVzIFRpYmVyaXVtU2FtbWxlcnMgKFp1ZXJpbGV1LCAyNi4gSnVuIDE5OTYsIDA1OjE3OjEwKToKU2FsaSwKV2VyIGtlbm50IGRhcyBsZWlkaWdlIFRoZW1hIG5pY2h0IGltIENvbW1hbmQgJiBDb25xdWVyLCBkYXMgZGllClRpYmVyaXVtLVNhbW1sZXIgbmljaHQgaW1tZXIgd29sbGVuLCB3aWUgbWFuIG1vZWNodGUuIEljaCBoYWJlIGluIGRlciBuZXVlbgpQY0FjdGlvbiBkYXp1IGVpbmUgbmV0dGUgR2VzY2hpY3ZodGUgZW5kZWNrdCBkaWUgd2Fyc2NoZWlubGljaCBiZWkgYWxsZW4gQyZDCkZhbnMgdW50ZXIgZXVjaCwgZWluIGtsZWluZXMgc2NobXVuemVsbiBoZXJ2b3JydWZlbiBrb2VubnRlLgoKTGllYmVzIFdlc3R3b29kLVRlYW0uCmljaCB3ZWlzcywgc2VsaWcgc2luZCBkaWUgZ2Vpc3RpZyBBcm1lbiwKZGVubiBpaG5lbiB3aXJkIGVpbiBmcnVlaGVzIEVuZGUgZ2Vob2VyZW4uIEFiZXIgendpc2NoZW4gZGVuIFN0b3BzIGluIGRlcgpXZXJrc3RhdHQKaGFldHRlIGljaCBzY2hvbiBub2NoIGdlcm5lIGVpbmUgRnVocmUgaW4gZGllIFJhZmZpbmVyaWUgZ2VicmFjaHQuIGVzIGlzdApzY2hvbiBlaW4gS3JldXogbWl0IGRlciBTZWxic3RhZW5kaWdrZWl0LiBXYXJ1bSBpc3QgbWVpbmUgQXVzYmlsZHVuZyBzbyBtaWVzPwpIYXQgZXMgd2VnZW4gcHN5Y2hpc2NoZXIgRGVmZWt0ZSBuaWNodCB6dSBkZW4gS2FtcGZ0cnVwcGVuIGdlcmVpY2h0PyBPZGVyIGJpbgppY2ggZWluZmFjaCBzbyBhbmdyaWZmc2x1c3RpZywgZGFzcyBpY2ggYXVjaCBuYWNoIGRlbSB6ZWhudGVuIFZlcnN1Y2ggaW1tZXIKbm9jaCBmZWluZGxpY2hlIFBhbnplciBvZGVyIEthbm9uZW50dWVybWUgdWViZXJyb2xsZW4gd2lsbCB1bmQgZ2FueiB1ZWJlcmFzY2h0CmZlc3RlbGxlLCBkYXNzIGVzIG5pY2h0IGdlaHQ/IFNlbGJzdCB3ZW5uIGRlbSBzbyBpc3QsIGVzIHdhZXJlIHNjaG9lbiwgd2VubgppY2ggZGFuYWNoIHNlbGJzdGFlbmRpZyBuYWNoIEhhdXNlIGZhaHJlbiB1bmQgbmljaHQgWmllaGxzY2hlaWJlIHNwaWVsZW4Kd3VlcmRlLiBTZWxic3QgbWVpbmUgVm9yZmFocmVuIGF1ZiBkZW0gd3Vlc3RlbnBsYW5ldGVuIGhhYmVuIGRhcyBlcmZvbGdyZWljaApwcmFrdGl6aWVydCwgc29uc3QgaGFldHRlbiBzaWUgbmljaHQgdWViZXJsZWJ0IHVuZCBtaWNoIGdhZWJlIGVzIGhldXRlIGdhcgpuaWNodC4gWnVtaW5kZXN0IGRlciBPYmVyYm9zcyBzb2xsdGUgVm9ya29tbW5pc3NlIGRpZXNlciBBcnQgZ2VuYXUgZ2VzYWd0CmJla29tbWVuLCB1bmQgendhciBzb2ZvcnQuIGRhbm4ga2FubiBtYW4gbWljaCB3ZW5pZ3N0ZW5zIG5vY2ggYXVzIGRlbQpEcmVja2xvY2ggemllaGVuLCBpbiBkYXMgaWNoIGdlZmFocmVuIGJpbi4gTWVpbmUgRHVtbWhlaXQgaXN0IHdpcmtsaWNoIGthdW0genUKdWViZXJ0cmVmZmVuLCB3aWUgdmVpbiB0YXVmcmlzY2hlIEJlZ2ViZW5oZWl0IGJlbGVnZW4gc29sbC4gTWVpbiBLdW1wZWwgU2FtCmZhZWhydCBnbGVpY2h6ZWl0aWcgbWl0IG1pciBhdWYgZWluZSBsYW5nZSBzY2htYWxlIEJydWVja2UgenUuIFNvIHdlaXQgYWxsZXMKaW4gT3JkbnVuZywgbnVyIGthbWVuIHdpciBhdXMgZGVyIGVudGdlZ2VuZ2VzZXR6dGVuIFJpY2h0dW5nLiBJbiBkZXIgTWl0dGUKdHJhZmVuIHdpciB1bnMsIHVuZCBkYSBkYWNodGUgaWNoIG1pciwgZGVyIEtsdWVnZXJlIGdpZWJ0IG5hY2guIEFsc28gd2VuZGUgaWNoCnVuZCB3aWxsIHp1cnVlY2tmYWhyZW4uIFdlbGNoZXIgVm9sbHRyb3R0ZWwgc3RlaHQgZGEgaGludGVyIG1pcj8gTmF0dWVybGljaAptZWluIHp3ZWl0ZXIgS3VtcGVsIEZyZWQsIGRlciBhdWNoIGF1ZiBkZW0ga2xlaW5lbiBGZWxkIGF1ZiBkZXIgZmx1c3NzZWl0ZQplcm50ZW4gd2lsbC4gRnJlZCBpc3QgaGV1dGUgbmljaHQgbnVyIGRvb2Ygc29uZGVybiBhdWNoIHN0dXIuIFNhZ3QgenUgbWlyLCBpY2gKc29sbCBkb2NoIHdlaXRlcmZhaHJlbiwgc2NobGllc3NsaWNoIHdvbGxlbiB3aXIgendlaSBpbiBkaWUgZWluZSBSaWNodHVuZyB1bmQKbnVyIGVpbmVyIGluIGRpZSBhbmRlcmUuIE1pciB3YXIgZGFzIHp1IGhvY2gsIGFiZXIgaWNoIGhhYnMgZGFubiBkb2NoIFNhbQp3ZWl0ZXJnZWdlYmVuLiBUamEsIGRlciBoYXQgZXMgbGVpZGVyIGF1Y2ggbmljaHQgdmVyc3RhbmRlbiB1bmQgbnVyIGdlc2FndCwKaWNoIHNvbGwgbWVpbmUgS2FycmUgdm9uIGRlciBCcnVlY2tlIGJyaW5nZW4sIHNvbnN0IGZhZWhydCBlciBkcnVlYmVyLiBLYW5uIGVyCmFiZXIgZ2FyIG5pY2h0LCBtZWluIFJ1ZWJlbmVybnRlciBpc3QgbmFlbWxpY2ggZ2VuYXVzbyBkaWNrIHdpZSBzZWluZXIuIHdpcgpoYWJlbiBkYW5uIGVyc3RtYWwgJ25lIHBhdXNlIGVpbmdlbGVndCwgdW5kIHdlbm4gdW5zIGRlciBDaGVmIG5pY2h0IGZsdWNoZW5kCmJlaW0gRmF1bGVuemVuIGVydGFwcHQgaGFldHRlLCBzdGFlbmRlbiB3aXIgd29obCBqZXR6dCBub2NoIGF1ZiBkZXIgQnJ1ZWNrZS4KQWxzbyBiaXR0ZSBsaWViZXMgV2VzdHdvb2QtVGVhbSwgZWluIFBhdGNoLVRyYWluaW5nIHRhZXRlIHVucyBhbGwKZW4gd2lya2xpY2ggZ3V0LCBvZGVyIGxhZXNzdCB6dW1pbmRlc3QgdW5zZXJlIE5hY2hmYWhyZW4gZWluIGJpc3NjaGVuIGNsZXZlcmVyCnNlaW4sIGphPyEKCkphLCBhbHNvIG1pciBzcHJpY2h0IGRpZXNlciBrbGVpbmUgU2FtbWxlciBmb2VybWxpY2ggYXVzIGRlbSBIZXJ6ZW4gdW5kIGRlbgphbmRlcmVuIEMmQyBGYW5zIHVudGVyIGV1Y2ggc2ljaGVyIGF1Y2guIEFiZXIgaWNoIGZhbmQgZGllIEdlc2NoaWNodGUgc28KbHVzdGlnIGRhcyBpY2ggc2llIGhpZXIgbWFsIHBvc3RlbiBtdXNzdGUuCgpUc2NodWVzcyBaYWVtZSBldWVyIFp1ZXJpbGV1ICAgICAgKEFydGlrZWwgYXVzIFBjQWN0aW9uIDcvOTYpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2llZGVyIG1hbCBWLUxhbmQgKE1vcmdvdGgsIDI2LiBKdW4gMTk5NiwgMDc6MTk6MDEpOgp+IyEgcm49UmltdXMgcnQ9ODM1NzQ1ODc2Cn4jISB0aWQ9ODM1NzQ1ODc2CmRhcyBsaWVndCBuaWNodCBhbiBkZW4gc3RhdHMgc29uZGVybiBhbSBQX01BWF9XRUlHSFQKd2VubiBpaHIgYXVmcmFldW1lbiB3dWVyZGV0IG11ZXNzdGUgaWNoIG5pY2h0IHp1IHNvbGNoZW4gbWFzc25haG1lbiBncmVpZmVuCjstKSkpCmFiZXIgbmViZW4gZGVyIHdhY2hlIHNpbmQgc2llIGF1Y2ggbm9jaCBtdWVsbG1hZW5uXmheaF5oXmheaG9ya3MsIGRpZSBzaWNoIHVtCmRhcwplcnNjaGVpbnVuZ3NiaWxkIGRlciBzdGFkdCBzb3JnZW4uCk1vcmdvdGgKdW5kIGFiIG5hY2ggc2NobWFybm4uLi4uYWNoIGRhIHNpbmQgd2lyIHNjaG9uLi5ndXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXaWVkZXIgbWFsIFYtTGFuZCAoQmVuZGVpZ2lkLCAyNi4gSnVuIDE5OTYsIDA5OjQxOjIxKToKfiMhIHJuPVJpbXVzIHJ0PTgzNTc0NTg3Ngp+IyEgdGlkPTgzNTc0NTg3NgpNYWVrZWxtYWVrZWxtYWVrZWwuLi4uCkRhIGlzcyduIFR5cG8gaW4gZGVyIExvbmcuLi4uIDopKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGZsbSAoQXNtb2RpcywgMjYuIEp1biAxOTk2LCAxMToyODoyMik6Cn4jISBybj1BbmF0b2wgcnQ9ODM1NzQ4MjE1Cn4jISB0aWQ9ODM1NzQ4MjE1ClJvYmluIGlzdCBlYmVuIGVpbiBNdXNpa2JhbmF1c2UgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBmbG0gKEJvbmksIDI2LiBKdW4gMTk5NiwgMTI6Mjc6NDcpOgp+IyEgcm49QW5hdG9sIHJ0PTgzNTc0ODIxNQp+IyEgdGlkPTgzNTc0ODIxNQpKYWphLi4uIFdhciBuZSBoYXJ0ZSBOYWNodC4uLiBBYmVyIFJvYmluIGJla29tbXQgbm9jaG1hbCBkYXMgU2luZ2VuIGdlbGVocnQhCkljaCBzY2h3b2VycyEhCgoKQm9uaSwgZGVtbmFlY2hzdCBSb2JpbiBlaW5lbiBtdXNpa2FsaXNjaGVuIFRyaXR0IHZlcnBhc3NlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTYWNoendhZW5nZTogKFJhZmZpLCAyNi4gSnVuIDE5OTYsIDEyOjU0OjQzKToKCkdlcmFkZSBpbSBFbGZlbmxhZGVuOgoKPiBrbnVkZGVsIGFsbGUKRHUga251ZGRlbHN0IEZhdWxza2VtcGVyIHVuZCBlaW5lbiBNdWVsbHNjaGx1Y2tlci4KRHUgc2Fnc3Q6IFVwcy4KPiB0b2V0ZSBtdWVsbHNjaGx1Y2tlcgogIC4KICAuCiAgLgoKRHUgc2Fnc3Q6IGhpZXIgd2lyZCBrZWluZXIgIGF1cyBWZXJzZWhlbiBnZWtudWRkZWx0IC0gRW50d2VkZXIgYXVzCkR1IHNhZ3N0OiBGcmV1bmRzY2hhZnQgb2RlciB6dW0gbGV0enRlbiBnZWxlaXQhCkZhdWxza2VtcGVyIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpGYXVsc2tlbXBlciBzYWd0OiBqYSBoYXJ0IHNpbmQgZGllIHJlZ2VsbiBpbSBtb3JnZW5ncmF1ZW4KRHUgbmlja3N0IHp1c3RpbW1lbmQuCkR1IHNhZ3N0OiBkYXMgTGViZW4gaXN0IGVpbmVzIGRlciBoYWVydGVzdGVuIQpHcmFyZ3JhayBnZWh0IG5hY2ggb2Jlbi4KRmF1bHNrZW1wZXIgc2V1Znp0Lgo+IGtudWRkZWwgYWxsZQpHcmFyZ3JhayBrb21tdCBhbi4KRHUga251ZGRlbHN0IEdyYXJncmFrIHVuZCBGYXVsc2tlbXBlci4KR3JhcmdyYWsgZ2VodCBuYWNoIFN1ZWRlbi4KRHUgZGVua3N0ICAgLiBvIE8gKHVwcHMgLSBQSyA/KQpSYWZmaSBobW1tdC4KRmF1bHNrZW1wZXIgc2FndDogamFqYSB3ZW0gc2Fnc3QgZHUgZGFzLCB1cHBzIEdyYXJncmFrIG11c3MgZHJhbiBnbGF1YmVuCkdyYXJncmFrIGtvbW10IGFuLgpHcmFyZ3JhayBnZWh0IG5hY2ggU3VlZGVuLgpGYXVsc2tlbXBlciBzYWd0OiBuYWdhIGF1c25haG1lbiBrYW5uIG1hbiBuYXR1ZXJsaWNoIG1hY2hlbgo+IG5laW4KRHUgc2NodWV0dGVsc3QgZGVuIEtvcGYKRmF1bHNrZW1wZXIgd2lua3QuCkR1IHdpbmtzdC4KRmF1bHNrZW1wZXIgaGF0IGdlcmFkZSBkaWUgVmVyYmluZHVuZyB6dSBNb3JnZW5HcmF1ZW4gZ2VrYXBwdC4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEZhdWxza2VtcGVyLgoKSWNoIHNjaGFldHplIGpldHp0IG11c3MgaWNoIEdyYXJncmFrIGluIGRpZSBBcmVuYSBydWZlbi4KCkdyb3NzZSBLbGFwcGUgc2NoYWZmdCBTYWNoendhZW5nZSEKCkdydWViZWwKSC4KKFVuZCBlciBoYXRzIHdhaHJzY2hlaW5saWNoIHZvciBsYXV0ZXIgKFdlZ2Upc2NyaXB0ZW4gZ2FybmljaHQgZ2VtZXJrdCAhKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZXR3YXMgbXVlbGwgLi0pIChCaWJvLCAyNi4gSnVuIDE5OTYsIDIyOjA4OjU1KToKCkFlaG0sIGJpdHRlIG5pY2h0IGVybnN0IG5laG1lbiAoc2llaGUgVGl0ZWwgZGVyIFJ1YnJpaykKCkhpZXJtaXQgZXJrbGFlcmUgaWNoIG1pY2ggenVtIGdyb2Vzc3RlbiBXZWljaGVpIGRlcwpNb3JnZW5HcmF1ZW5zLiBNZWluZSBLYW1wZnRhdGlrIGJlc3RlaHQgZGFyaW4gZWluCk1vbnN0ZXIgYW56dWdyZWlmZW4gdW5kIGRhbm4gZGVtdWV0aWcgenUgS2x1bXAgc2NobGFnZW4genUKbGFzc2VuLiAxOTYgbHAgcmVpY2hlbiBuYWVtbGljaCBuaWNodCB6dXIgR2VnZW53ZWhyIG9kZXIKenVyIEZsdWNodC4gYWxsbHNvLCBlaW4gQmVpc3BpZWw6CgpEdSBmZXVlcnN0IGVpbmVuIHNjaHJpbGxlbiBLYW1wZnNjaHJlaSBhdWYgZGVuIFdlZ2hpZXIgYWIuCkRlciBXZWdoaWVyIHdlaHJ0IERlaW5lbiBaYXViZXIgYWIuCkR1IGhhc3QgamV0enQgMTk2IExlYmVuc3B1bmt0ZSB1bmQgMTMxIE1hZ2llcHVua3RlLgo+ICAgRHUgZ3JlaWZzdCBkZW4gV2VnaGllciBtaXQgZGVtIFZvbGxzdHJlY2tlciBhbi4KICBEdSB2ZXJmZWhsc3QgZGVuIFdlZ2hpZXIuCiAgRGVyIFdlZ2hpZXIgZ3JlaWZ0IERpY2ggbWl0IGRlbSBWb2xsc3RyZWNrZXIgYW4uCiAgRGVyIFdlZ2hpZXIgc2NobGFlZ3QgRGljaCBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgpEdSBoYXN0IGpldHp0IDE3NCBMZWJlbnNwdW5rdGUgdW5kIDEzMSBNYWdpZXB1bmt0ZS4KICBEZXIgV2VnaGllciBncmVpZnQgRGljaCBtaXQgZGVtIFZvbGxzdHJlY2tlciBhbi4KICBEZXIgV2VnaGllciBzY2hsYWVndCBEaWNoIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCkR1IGhhc3QgamV0enQgMTQ1IExlYmVuc3B1bmt0ZSB1bmQgMTMxIE1hZ2llcHVua3RlLgogIERlciBXZWdoaWVyIGdyZWlmdCBEaWNoIG1pdCBkZW0gVm9sbHN0cmVja2VyIGFuLgogIERlciBXZWdoaWVyIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KRHUgaGFzdCBqZXR6dCAxMjkgTGViZW5zcHVua3RlIHVuZCAxMzEgTWFnaWVwdW5rdGUuCiAgRGVyIFdlZ2hpZXIgZ3JlaWZ0IERpY2ggbWl0IGRlbSBWb2xsc3RyZWNrZXIgYW4uCkRhcyBLcmV1eiBmYWVuZ3QgYW4genUgbGV1Y2h0ZW4uCiAgIERlciBXZWdoaWVyIHRyaWZmdCBEaWNoIGhhcnQuCkR1IGhhc3QgamV0enQgMTIyIExlYmVuc3B1bmt0ZSB1bmQgMTMxIE1hZ2llcHVua3RlLgogIERlciBXZWdoaWVyIGdyZWlmdCBEaWNoIG1pdCBkZW0gVm9sbHN0cmVja2VyIGFuLgogIERlciBXZWdoaWVyIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KRHUgaGFzdCBqZXR6dCAxMDQgTGViZW5zcHVua3RlIHVuZCAxMzEgTWFnaWVwdW5rdGUuCkRlciBXZWdoaWVyIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gS2FtcGZzY2hyZWkgYGBBSUlJSUlYIScnIGFuLgpEYXMgS3JldXogZmFlbmd0IGFuIHp1IGxldWNodGVuLgogICBEZXIgV2VnaGllciBncmVpZnQgRGljaCBtaXQgZGVtIFZvbGxzdHJlY2tlciBhbi4KRHUgaGFzdCBqZXR6dCAxMDQgTGViZW5zcHVua3RlIHVuZCAxMzEgTWFnaWVwdW5rdGUuCkRlciBXZWdoaWVyIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gS2FtcGZzY2hyZWkgYGBBSUlJSUlYIScnIGFuLgpEYXMgS3JldXogZmFlbmd0IGFuIHp1IGxldWNodGVuLgogICBEZXIgV2VnaGllciBncmVpZnQgRGljaCBtaXQgZGVtIFZvbGxzdHJlY2tlciBhbi4KICBEZXIgV2VnaGllciBzY2hsYWVndCBEaWNoIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCkR1IGhhc3QgamV0enQgNzYgTGViZW5zcHVua3RlIHVuZCAxMzEgTWFnaWVwdW5rdGUuCiAgRGVyIFdlZ2hpZXIgZ3JlaWZ0IERpY2ggbWl0IGRlbSBWb2xsc3RyZWNrZXIgYW4uCiAgRGVyIFdlZ2hpZXIgc2NobGFlZ3QgRGljaCBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgpEdSBoYXN0IGpldHp0IDU0IExlYmVuc3B1bmt0ZSB1bmQgMTMxIE1hZ2llcHVua3RlLgpEZXIgVm9sbHN0cmVja2VyIHdpbGwgRGlyIGRlbiBUb2Rlc3N0b3NzIHZlcnNldHplbiEKICBEZXIgV2VnaGllciBncmVpZnQgRGljaCBtaXQgZGVtIFZvbGxzdHJlY2tlciBhbi4KICBEZXIgV2VnaGllciBzY2hsYWVndCBEaWNoIHp1IEJyZWkuCkR1IGthbm5zdCBlaW5lIGNoYW90aXNjaCBtdXRpZXJ0ZSBIYXV0IG5pY2h0IGF1c3ppZWhlbi4KW1RvZDpMYXJzXSBFaW4gV2VnaGllciBoYXQgZ2VyYWRlIEJpYm8gdW1nZWJyYWNodC4KW1RvZDpFaW4gV2VnaGllcl0gR290Y2hhIQoKCkR1IGthbm5zdCBlaW5lbiBNYW5uIG1pdCBkdW5rbGVyIEthcHV6ZSBuZWJlbiBEZWluZXIgTGVpY2hlIHN0ZWhlbiBzZWhlbi4KRXIgd2lzY2h0IGRpZSBibHV0aWdlIEtsaW5nZSBlaW5lciBncmF1c2lnZW4gU2Vuc2UgbWl0IGxhbmdzYW1lbiwgZ2VtZXNzZW5lbgpCZXdlZ3VuZ2VuIGFiLiBQbG9ldHpsaWNoIGhvZXJ0IGVyIGF1ZiB1bmQgc2NoZWludCBEaWNoIGRpcmVrdCBhbnp1c2VoZW4gLi4uCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBldHdhcyBtdWVsbCAuLSkgKFJpbXVzLCAyNi4gSnVuIDE5OTYsIDIyOjEwOjQ1KToKfiMhIHJuPUJpYm8gcnQ9ODM1ODE5NzM1Cn4jISB0aWQ9ODM1ODE5NzM1Cldlbm4gZGVyIFdlZ2hpZXIgc28gZ3V0IG1pdCBBSVggdW1nZWhlbiBrYW5uLCBkYW5uIGthbm4gZXIgamEgbWVpbmUKQmV0cmllYnNzeXN0ZW1wcnVlZnVuZyBhbSBNb250YWcgc2NocmVpYmVuLiBEYSBnZWh0IGVzIHVtIEFJWC1VTklYLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5kIG5vY2ggZWlubWFsIFYtTGFuZCAoUmltdXMsIDI2LiBKdW4gMTk5NiwgMjI6MTc6MjApOgpNb3Jnb3RoJ3MgT3JrcyB3ZXJkZW4gaW1tZXIgc2NobGF1ZXIuIEVyc3Qga2F1ZnRlbiBzaWUgc2ljaCBudXIgZGVuIGJlc3N0ZW4KS3JhbSBhdXMgZGVuIExhZWRlbiwgZGFubiB3dXJkZW4gc2llIE1pdGdsaWVkIGluIGRlciBBYmVudGV1ZXJnaWxkZQp1bmQga29ubnRlbiBhYnNvZm9ydCBhdWNoIEZldWVyYmFlbGxlIHdlcmZlbi4KRGFzIHJlaWNodCBhYmVyIG5pY2h0LCBqZXR6dCB3b2xsZW4gc2llIGF1Y2ggbm9jaCBRdWVzdGVuLgpIaWVyIGRhcyBCZWlzcGllbDoKRGllc2VyIE9yayBnZWhvZXJ0IHp1ciBTdGFkdHdhY2hlLiBFciBwYXRyb3VsbGllcnQgZHVyY2ggZGllIGdhbnplIFN0YWR0IHVuZAphY2h0ZXQgZGFyYXVmLCBkYXNzIG5pZW1lbmQgZWluZSBTdHJhZnRhdCBiZWdlaHQuIER1IGRlbmtzdCBhbiBkaWUgV2FjaGVuIGluCk1vdWxva2luLCBkaWUgRGlyIHZpZWwgc3RhZXJrZXIgaW4gc2NobWVyemxpY2hlciBFcmlubmVydW5nIHNpbmQuIEFiZXIgaGllcgpzY2hlaW50IGhhbHQgZGllc2UgQXVzcnVlc3R1bmcgenUgcmVpY2hlbiwgZGllIGRlciBPcmsgbWl0IHNpY2ggdHJhZWd0IHVuZAphdWNoIHNpY2hlciBndXQgZWluenVzZXR6ZW4gd2Vpc3MuIEF1ZmdydW5kIHNlaW5lciBBdXNiaWxkdW5nIHdlaXNzIGVyCm5hdHVlcmxpY2ggYXVjaCwgd2llIG1hbiBiZXNzZXJlIFJ1ZXN0dW5nIHVuZCBXYWZmZW4gYmVudXR6dC4gR2liIGlobSBlaW4KZ3V0ZXMgU2Nod2VydCB1bmQgZXIgd2lyZCBlcyBtaXQgRnJldWRlIHp1ZWNrZW4uCkVyIGlzdCBhYnNvbHV0IGZpdC4KRXIgdHJhZWd0IGJlaSBzaWNoOgpFaW5lIE5hY2h0cnVlc3R1bmcgKGFuZ2V6b2dlbikuCkRlciA2LiBUZWlsIHZvbSB6ZXJpc3NlbmVuIFBsYW4uCjExNzYzIE11ZW56ZW4uCkVpbiBPcmtoZWxtIChhbmdlem9nZW4pLgpFaW4gUGFhciBPcmtzdGllZmVsIChhbmdlem9nZW4pLgpFaW4gT3Jrc2Nod2VydCAoZ2V6dWVja3QpLgoKTWFsIHNlaGVuIHdlbm4gc2llIGluIGRlciBUb3AtTGlzdGUgYXVmdGF1Y2hlbgoKUC5TLiBNb3Jnb3RoIG5pZW1hbmQgc2NocmVpYnQgbWFuIHNvICEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbmQgbm9jaCBlaW5tYWwgVi1MYW5kIChUZXJyb3Jpc3QsIDI3LiBKdW4gMTk5NiwgMDk6MDM6NDQpOgp+IyEgcm49UmltdXMgcnQ9ODM1ODIwMjQwCn4jISB0aWQ9ODM1ODIwMjQwCgpJY2ggZ2xhdWJlIHdpciBtdWVzc2VuIHNpZSBiYWxkIGFscyBuZXVlIFJhc3NlIGF1Zm5laG1lbi4KU3RhdHQgRWxmLCBad2VyZyBvZGVyIE1lbnNjaCB3aXJkIG1hbiBqZXR6dCBTdGFkdG9yayB2b20gdiBMYW5kCkZlaGx0IGJsb3NzIG5vY2ggZGFzIGRlciBTY2hyYXQgc2VpbiBTY2hsYWZtaXR0ZWwgc2VsYmVyIGJyYXV0IDopCgpUZXJyb3Jpc3Qgd2lsbCBhdWhjIG1hbCBzY2htYXJybiBzY2hyZWliZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsZWlkID09IEhvc2U/Pz8gKFNpbHZhbmEsIDI3LiBKdW4gMTk5NiwgMDk6MTM6MTUpOgppZGVudGlmaXppZXJlIGtsZWlkCkVpbiBsYW5nZXMgd2Vpc3NlcyBQYWlsbGV0dGVua2xlaWQgaXN0IGVpbiBSdWVzdHVuZ3N0ZWlsLgpNYW4gdHJhZWd0IGVzIGFscyBIb3Nlbi4KU29uc3Qga2FubnN0IER1IG5pY2h0cyBiZXNvbmRlcmVzIGFuIGVpbiBsYW5nZXMgd2Vpc3NlcyBQYWlsbGV0dGVua2xlaWQgCmVya2VubmVuLgpFaW4gbGFuZ2VzIHdlaXNzZXMgUGFpbGxldHRlbmtsZWlkIGdlaG9lcnQgaW4gZGVuIFZlcmFudHdvcnR1bmdzYmVyZWljaCB2b24gOiAKV3VyemVsLgoKSG1tbSAtIHdhcyBzYWd0IG1hbiBkYXp1PyAKClNpbHZhbmEgLSBncnVlYmVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVW5kIG5vY2ggZWlubWFsIFYtTGFuZCAoTW9yZ290aCwgMjcuIEp1biAxOTk2LCAxMDo0NjoxNSk6Cn4jISBybj1UZXJyb3Jpc3QgcnQ9ODM1ODU5MDI0Cn4jISB0aWQ9ODM1ODIwMjQwCmphYWEgamFhYSAKT3JrcmFzc2UgISEhIApkaWUgd2lsbCBpY2ggc2Nob24gc2VpdCBsYW5nZW0gaGFiZW4uLi4uLgpzZXR6dCBldWNoIGRhZnVlciBlaW4uLi4KTW9yZ290aCwgZGVyIE9ya3Jhc3Nlbm1hZ2llcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGFwYWdlaSAoTGksIDI3LiBKdW4gMTk5NiwgMTE6MDk6NTUpOgpBbHNvLCBEdXJpYW5zIFBhcGFnZWluIHNpbmQgamEgZWNodCBpbnRlbGxpZ2VudDoKW1RvZDpMYXJzXSBFaW4gU3RlaW5tb25zdGVyIGhhdCBnZXJhZGUgQW5nYm9zY2ggdW1nZWJyYWNodC4KTXVzYXNoaSBrcmFlY2h6dDogLi4uIGJpcyBkZW1uYWVjaHN0IG1hbCAuLi4gYmlzIGRlbW5hZWNoc3QgbWFsIC4uLgoKTGkgKHd1bmRlcnQgc2ljaCwgd2FzIHNlaW4gUGFwYWdlaSBzY2hvbiBhbGxlcyBhdWZnZXNjaG5hcHB0IGhhdCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFVuZCBub2NoIGVpbm1hbCBWLUxhbmQgKFJpbXVzLCAyNy4gSnVuIDE5OTYsIDEzOjA5OjE3KToKfiMhIHJuPU1vcmdvdGggcnQ9ODM1ODY1MTc1Cn4jISB0aWQ9ODM1ODIwMjQwCkFiZXIgbnVyIHdlbm4gZGllIHNvIGF1c2llaHQ6CkludGVsbGlnZW56OiAxICgrNSkgQXVzZGF1ZXI6IDEgKCs1KSBLcmFmdDogMSAoKzUpIEdlc2NoaWNrbGljaGtlaXQ6IDEgKCs1KQoKdW5kIGFsbGUgT3JrcyBpbiBPcmtoYXVzZW4gbXVlc3N0ZW4gYXV0b21hdGlzY2ggZGVuIGJlc3N0ZW4gS3JhbSBhYmdlYmVuLgoKU28gZWluIFNjaG1hcnJuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbiBkZXIgR2lsZGUgKFphcmRveiwgMjcuIEp1biAxOTk2LCAxNDoxNToyOCk6ClNsb2FuZSBzYWd0OiB3ZW0gZ2Vob2VydCB6YXJkb3ogPz8/CgoKQXJnbC4uLi4gWmFyZG96CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEdXJpYW4sIHdhcyBoYXN0IER1IGRlbiBQYXBwLUdlaWVybiBhbGxlcyBiZWlnZWJyYWNodD8gKEhhcmRpbCwgMjcuIEp1biAxOTk2LCAxNDo0NToxMCk6CgpnZXJhZGUgZ2VzZWhlbjoKCkVza2lsc2p1bmEga3JhZWNoenQ6IGtycm9vYWEgLi4uIElDSCBXSUxMIEFMTElBTkNFUyBIQUJFTiEKCkltIFZMIGZhbmdlbiBkaWUgT3JrcyBhbiB6dSBxdWVzdGVuLCB1bmQgaW4gRHVyaWFucyBUaWVyaGFuZGx1bmcgd2lyZCBNQUdJQwpnZXNwaWVsdC4gVW5kIGF1ZiB3YXMgZHVlcmZlbiB3aXIgdW5zIGFscyBuYWVjaHN0ZXMgZnJldWVuPwoKLUhhcmRpbC4gSGF0IGRlbiBsZXR6dGVuIEJhdW0gaW4gZC93dWVzdGUgdW1mYWxsZW4gbGFzc2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVW5kIG5vY2ggZWlubWFsIFYtTGFuZCAoTXVwZmVsLCAyNy4gSnVuIDE5OTYsIDE0OjQ3OjI4KToKfiMhIHJuPU1vcmdvdGggcnQ9ODM1ODY1MTc1Cn4jISB0aWQ9ODM1ODIwMjQwClNvbGFuZ2Ugc2ljaCBkaWUgUmFzc2VuIG5pY2h0ICp3aXJrbGljaCogdW50ZXJzY2hlaWRlbiBicmluZ3QgZGFzIGRvY2ggZ2Fybml4LgpJY2ggYmluIGRhZ2VnZW4uIFVuZCB1ZWJlcmhhdXB0OiBvcmtzIHNpbmQgJ3ZvbiBuYXR1ciBhdXMnIGJvZXNlIHdlc2VuIChhdWNoCndlbm4gc2ljaCBkZWluZSBiZW5laG1lbiB3aWUgaW0gc3RyZWljaGVsem9vKSwgd2llIHdpbGxzdCBkdSBkYXMgaW4gZGVyIHJhc3NlCnVudGVyYnJpbmdlbj8KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBVbmQgbm9jaCBlaW5tYWwgVi1MYW5kIChIYXJkaWwsIDI3LiBKdW4gMTk5NiwgMTQ6NDg6NDYpOgp+IyEgcm49TXVwZmVsIHJ0PTgzNTg3OTY0OAp+IyEgdGlkPTgzNTgyMDI0MApHYW56IGVpbmZhY2guIFdlaWwgZGllIE9ya3MgYm9lc2Ugc2luZCwgZHVlcmZlbiBzaWUgYWxzIGVpbnppZ2UgUmFzc2UgdWViZXJhbGwKUEtzIGJlZ2VoZW4uClVuZCB3ZWlsIGFsbGUgT3JrcyB2b24gR2VidXJ0cyBhdXMgS2FyYXRlIGF1ZiBHaWxkZW5sZXZlbCAxNSBrb2VubmVuLCBzb2xsdGUKZGFzIGF1Y2gga2VpbiBQcm9ibGVtIHNlaW4uCgotSGFyZGlsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWxpY2ggaW4gZGVyIEdpbGRlIChTY2hydW1wZmksIDI3LiBKdW4gMTk5NiwgMTU6Mzk6MzkpOgp+IyEgcm49WmFyZG96IHJ0PTgzNTg3NzcyOAp+IyEgdGlkPTgzNTg3NzcyOApNaXIuIDstKQoKU2NocnVtcGZpIGlzdCBkaWUgcmVjaHRtYWVzc2lnZSBCZXNpdHplcmluIHZvbiBaYXJkb3ogOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpaZWljaGVuPyAoTmljaHRzLCAyNy4gSnVuIDE5OTYsIDE5OjM3OjEzKToKCnVudCB3YW5kCkRpZSBXYWVuZGUgc2NoZWluZW4genUgZ2x1ZWhlbi4gQW4gZWluZXIgV2FuZCBiZWZpbmRlbiBzaWNoIGVpbmlnZSBaZWljaGVuLgo+IFAgICAgICAgICAgRiAgICAgICAgICBMICAgICAgICAgIE8gICAgICAgICAgUCAgICAgICAgICBQICAgICAgICAgICEKCkVzIGdlc2NoZWhlbiBub2NoIFplaWNoZW4gdW5kIFd1bmRlci4uLiA7KQoiIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhvZWxsZW5mZXVlciAoUm9jaHVzLCAyNy4gSnVuIDE5OTYsIDIwOjMwOjUyKToKW1RvZDpMYXJzXSBCb2luZ3MgSG9lbGxlbmZldWVyIGhhdCBnZXJhZGUgRmxpbnggdW1nZWJyYWNodC4KW0JlaWxlaWQ6RmxpbnhdIGFyZ2ggOiggYWxsZXMgd2VnLiBTY2hsdWVzc2VsLiBob2VsbGVuZmV1ZXIuIGFtdWxldHQgOigKW0JlaWxlaWQ6RmxpbnhdIGljaCB3b2xsdGUgZGllIHphdG9uZ3MgaW4gZGllIGx1ZnQgamFnZW4uLi5oYWJlIGFiZXIgdmVyZ2Vzc2VuCltCZWlsZWlkOkZsaW54XSBkYXMgZmV1ZXIgYWJ6dWxlZ2VuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLbnVkZGVsbWF1cyBTZW1pcmE/IChBbmF0b2wsIDI4LiBKdW4gMTk5NiwgMDI6MjM6MjUpOgoKPiBrbnVkZGxlIHNlbWlyYQpEdSBiZXVnc3QgRGljaCBoaW51bnRlciwgZG9jaCBTZW1pcmEgZW50d2lzY2h0IERpciwgd2lsbCBzaWNoIG5pY2h0IGtudWRkZWxuCmxhc3NlbiAoaXN0IHNpZSB6dW0gS251ZGRlbG4gbmljaHQgdmllbGxlaWNodCBzb3dpZXNvIGV0d2FzIHp1IGtsZWluPykuIER1CmJlc2NobGllc3N0LCBhdWZ6dWdlYmVuIQoKKmdybXBmKiBnbGF1YmljaG5pY2ghCkFuYXRvbCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBaZWljaGVuPyAoTW9yZ290aCwgMjguIEp1biAxOTk2LCAwNzoxOToxNik6Cn4jISBybj1OaWNodHMgcnQ9ODM1ODk3MDMzCn4jISB0aWQ9ODM1ODk3MDMzCmFlaC4ga2FubnN0ZSBhdWNoIGRlYmVpIHNjaHJlaWJlbiB3byBkdSBkYXMgaGVyIGhhc3QgdW5kIHdhcyBmdWVybiBzaW5uIGRhcwpoYXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXR0ZXMgcHJvamVrdCAoTW9yZ290aCwgMjguIEp1biAxOTk2LCAxMDo1OToxNCk6ClByb2pla3Q6IEJ1ZWNrIERpY2gsIEZlZSwgV3Vuc2NoIGlzdCBXdW5zY2ghCm51biByYXRldCBtYWwgdm9uIHdlbSBkYXMgaXN0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ldHRlcyBwcm9qZWt0IChZYW50cm8sIDI4LiBKdW4gMTk5NiwgMTE6MDA6MDYpOgp+IyEgcm49TW9yZ290aCBydD04MzU5NTIzNTQKfiMhIHRpZD04MzU5NTIzNTQKZ3JpbW1ib3JuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBuZXR0ZXMgcHJvamVrdCAoR3JpbW1ib3JuLCAyOC4gSnVuIDE5OTYsIDExOjA1OjA1KToKfiMhIHJuPVlhbnRybyBydD04MzU5NTI0MDYKfiMhIHRpZD04MzU5NTIzNTQKTmFqYSwgZmFzdC4gTmF0dWVybGljaCBoYWJlIGljaCBhdWNoIGRhcyBnZWtsYXV0Li4uIDstKQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBuZXR0ZXMgcHJvamVrdCAoUmFmZmksIDI4LiBKdW4gMTk5NiwgMTI6MDM6NTApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTgzNTk1MjcwNQp+IyEgdGlkPTgzNTk1MjM1NAoKUmljaHRpZywgYWJlciBpY2ggd2V0dGUgaGllciBoYWJlbiBzaWNoIGF1Y2ggc2Nob24gbmUgbWVuZ2UgbGV1dGUgdWViZXJsZWd0CnNpY2ggZGFzIGJlaSBEaXIgenUgbGVpaGVuIDopCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd296dSBOaWNodHMgZG9jaCBndXQgaXN0IChNb3Jnb3RoLCAyOC4gSnVuIDE5OTYsIDEzOjA4OjMzKToKQXJrIG1hY2h0IGF1cyBOaWNodHMgd2FzIFRvbGxlcyAhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ldHRlcyBwcm9qZWt0IChTbnVnZ2xlLCAyOC4gSnVuIDE5OTYsIDE0OjU2OjIyKToKfiMhIHJuPU1vcmdvdGggcnQ9ODM1OTUyMzU0Cn4jISB0aWQ9ODM1OTUyMzU0CmljaCB3ZWlzcyBlcywgaGFiIGlobiBhdWNoIGdlcmFkIGdlZmluZ2VydCAobnUgcmF0IG1hbCB3YXJ1bSA6LSkgKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW50cmVzc2FudGUgUGZsYW56ZW4gaW0gRWxmZW5oYWluLi4uIChXb29keSwgMjguIEp1biAxOTk2LCAxNjoxMDo1NSk6Cgo+IGtudWRkZWwgYWxsZQpEdSBrbnVkZGVsc3QgSGVsdmEsIFZlcmJpbmRlbiwgZWluZSBPcmNoaWRlZSwgWmFjYXR0LCBIdWVwZmVyIHVuZCBlaW5lIFJvc2UuCgoqa29wZmtyYXR6KiBhbSBFbmRlIGhhYmVuIGRpZSBzb2dhciBuZW4gaGVhcnRiZWF0PyA6KQp3b29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCZXNzZXIgc3BhZXQgYWxzIG5pZTogRGVyIFNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMjguIEp1biAxOTk2LCAxNzoyMzo0OCk6CgoiRXMgaXN0IGtlaW5lIEt1bnN0LCBhbHQgenUgd2VyZGVuLCBkaWUgS3Vuc3QgaXN0IGVzLCBhbHQgenUgc2Vpbi4iIChKb2hhbm4KV29sZmdhbmcgdm9uIEdvZXRoZSkKClRqYSwgd2VubiBkZXIgc28gYWx0IGdld29yZGVuIHdhZXJlIHdpZSBpY2ggbWljaCBmdWVobGUuLi4gOy0pCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV28gd2lyIHNjaG9uIGJlaSBncm9zc2VuIExpdGVyYXRlbiBzaW5kOiBHb2V0aGVzIEVyYmVuIChHcmltbWJvcm4sIDI4LiBKdW4gMTk5NiwgMTc6Mjk6NTApOgoKSGllciBlaW4gQXVzc2Nobml0dCBlaW5lcyBTdHVlY2tlcyBhdWYgZGVyIENEICJEZXIgVHJhdW0gYW4gZGllIEVyaW5uZXJ1bmciOgoKNSBKYWhyZQotLS0tLS0tCgpXYXJ1bSBpY2ggaGllciBiaW4gd2Vpc3MgaWNoIG5pY2h0Ck1laW4gQmxpY2sgaXN0IHN0YXJyLCBkYXMgaXN0IGhpZXIgUGZsaWNodApVbnRlciBWZXJydWVja3RlbiwgSWRpb3RlbiB1bmQgUHN5Y2hvcGF0aGVuClZvbiBkZW4gQWVyenRlbiB3dXJkZSBpY2ggdmVycmF0ZW4KKC4uLikKRWluZ2VzcGVycnQgamEgZGFzIHNpbmQgd2lyIGhpZXIKV2lyIGdlaG4gaGllciBhdWYgdW5kIGFiIGdsZWljaCBlaW5lbSBUaWVyClBzeWNoaWF0ZXIgcHJvdm96aWVyZW4gRnJhZ2VuCkltIEludGltc3RlbiBzdG9jaGVybiBzaWUgaGVydW0KKC4uLikKRGllIEVuZ2UgaGllciBtYWNodCB1bnMgYWxsZSBmZXJ0aWcKV2lyIHNpbmQgYW0gRW5kZSwgbmljaHQgbnVyIGdlaXN0aWcKTWl0IGRlciBQc3ljaGUgemVyZmFlbGx0IGRlciBLb2VycGVyCiguLi4pClZpZWxlIHNpbmQgaGllciB2b2VsbGlnIHp1Z2Vkb3BlZApEaWUgTm9ybWFsaXRhZXQgd2lyZCBoaWVyIGdlcHJvYnQKKC4uLikKU2NoZWludG90IC0gaWNoIHdpbGwgaGllciByYXVzCkRlbiBXYWhuc2lubiBoYWVsdCBtZWluIEtvcGYgbmljaHQgYXVzCiguLi4pCkZ1ZW5mIEphaHJlIC0gdW5kIG5vY2ggaW1tZXIgbmljaHQgdmVycnVlY2t0CldpZSBsYW5nZSBub2NoPyBCaXMgaWNoIHN0ZXJiZT8KRnVlbmYgSmFocmUgV2FobnNpbm4sIGljaCB3aWxsIGhpZXIgcmF1cwpXYWhuc2lubiwgZnVlbmYgSmFocmUsIGljaCB3aWxsIGhpZXIgcmF1cwpCaXR0ZSwgYml0dGUsIGxhc3N0IG1pY2ggcmF1cwpCaXR0ZSwgYml0dGUsIGxhc3N0IG1pY2ggcmF1cwpCaXR0ZSwgYml0dGUuLi4KCihHb2V0aGVzIEVyYmVuKQoKClRqYSwgZWlnZW50bGljaCB3b2xsdGUgaWNoIGRhcyBqYSB6dW0gZnVlbmZqYWVocmlnZW4gR2VidXJ0c3RhZyB2b24gTUcKcG9zdGVuLi4uIDstKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJc3QgZGFzIG5pY2h0IHN1ZXNzPyAoU291bCwgMjguIEp1biAxOTk2LCAxODowMzoxMCk6CkVpbmUgTWF1cyBuYW1lbnMgU2VtaXJhLgpbQWdlbnRlbjowMDRdIEthcmF0ZWtpZCB3YXIgZGVyIGVyc3RlIEhvYmJpdC1LbGVyaWtlci4KRWluIFNjaGFlZmVyaHVuZCBuYW1lbnMgWmVyYmVydXMuCltBZ2VudGVuOkxlYWRlcl0gSmFtZXMgICcgQXNtb2RpcyAnICBCb25kIGhhdCBzZWluZSBBZ2VudGVuIHVlYmVyYWxsLgpFaW4gU2NoaW1wYW5zZSBuYW1lbnMgTWVybGluLgpbQWdlbnRlbjowMDFdIElzc29tYWQgaXN0IGNoYW90aXNjaC4KRWluIFBhcGFnZWkgbmFtZW5zIER1bW1iYXR6LgpbQWdlbnRlbjowMDNdIEFzbW9kaW5hIGthbm4gS2FyYXRlLgpFaW4gUnVja3NhY2sgKGdlb2VmZm5ldCkuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIGtlbm5lIGVpbmUgbmV1ZSBNZXRob2RlIGluIGRlciBtcGEgenUgbmVydmVuISIgKEdyaW1tYm9ybiwgMjguIEp1biAxOTk2LCAyMDo1ODo0Mik6CgouLi51bmQgZGllIGdlaHQgc286CioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCioqKiAgICAgICAgICAgIERpZXMgaXN0IGVpbmUgc3VwZXJ0b2xsZSBTaWduYXR1ciB2b24gICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICAgISEhIEdSSU1NQk9STiBERU0gQVRIRUlTVEVOICEhISAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgIGVtYWlsOiBoaWVyIGltIE1HICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICBlaW5lIEFkcmVzc2UgaW4gS29lbG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICBub2NoIGVpbmUgQWRyZXNzZSBpbiBLb2VsbiAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICBlaW5lIGRyaXR0ZSBLb2VsbmVyIEFkcmVzc2UgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICBpbW1lciBub2NoIGVpbmUgc2Nod2VkaXNjaGUgQWRyZXNzZSAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICBlaW5lIHdlaXRlcmUgc2Nod2VkaXNjaGUgQWRyZXNzZSAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgc25haWxtYWlsOiBhdWNoIHNvd2FzIGhhYiBpY2ghICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICBTdHJhc3NlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICBIYXVzbnVtbWVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICBQTFogdW5kIE9ydCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICBoaWVyIGJpbiBpY2ggZWlnZW50bGljaCBuaWNodCB6dSBlcnJlaWNoZW46ICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICB6d2VpIGJpcyBkcmVpIFRlbGVmb25udW1tZXJuICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICBGYXhudW1tZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICBIYW5keW51bW1lciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAtLS0gSGllciB3YWhsd2Vpc2UgdmllciBiaXMgZnVlbmYgZGFlbWxpY2hlIFNwcnVlY2hlIGVpbmZ1ZWdlbiAtLS0gKioqCioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV3VuZGVybGFuZCBOZXR6dG90ZW5yZWljaCAoQWNyaW1vbiwgMjkuIEp1biAxOTk2LCAwNTowNToxNSk6CgpOaWdodG1hcmUgZmFsdGV0IHNlaW5lIEhhZW5kZSwgc3ByaWNodCBlaW4gcGFhciBtYWdpc2NoZSBXb3J0ZSB1bmQKZW50c2Nod2luZGV0IHdpZSBlaW4gZ2VvZWx0ZXIgQmxpdHogaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4uCgpBY2gsIHdpZSBzY2hvZW4gaXN0IGRvY2ggZGFzIE5ldHp0b3RlbmxhbmQhCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5hIHNvd2FzIDspIChDaGljb2xhLCAyOS4gSnVuIDE5OTYsIDE0OjM0OjIxKToKTmV1bGljaCBpbSBHZWZhZW5nbmlzICEKCmJlbnV0emUgd2FzY2hiZWNrZW4gLT4gRHUgYmVudXR6dCBkaWUgVG9pbGV0dGUuXG5EdSBmdWVobHN0IERpY2ggZXJsZWljaHRlcnQuXAoKaXJnZWR3aWUga29taXNjaCA6KSkgCgppbW1lciBub2NoIGxhY2hlbmQgICAgICBDaGljb2xhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdWNoPyAoU3ltYmlvbnQsIDI5LiBKdW4gMTk5NiwgMTg6MjY6MzgpOgpFYmVuIGdlcmFkZToKCkx1ZyBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRWluIEJlaWZhbGxzc3R1cm0gYnJhbmRldCBpbSBEaWFtb25kcGFyayBhdWYuIFdhcyBkYSB3b2hsIHdpZWRlciBsb3MgaXN0PwoKR3JpbnNlbmRlcndlaXNlOgoKLi0+U1lNQklPTlQ8LS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyB3aWxsIHVucy4uLiAoQW5hdG9sLCAzMC4gSnVuIDE5OTYsIDAwOjUzOjE5KToKCltNb2VyZGVyOkdlaXN0IGVpbmVzIFlldGlzXSBFUlJPUjogKHMpcHJpbnRmKCk6IGluY29ycmVjdCBhcmd1bWVudCB0eXBlIHRvICVzLgoKCi4uLmRpZXNlIE1vZXJkZXJtZWxkdW5nIHNhZ2VuPyA6KQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbXVlbGwgKEFzbW9kaXMsIDMwLiBKdW4gMTk5NiwgMDM6MjM6MjkpOgp3YXMgbGFuZ2VzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbXVlbGwgKEFzbW9kaXMsIDMwLiBKdW4gMTk5NiwgMDM6MjQ6MDIpOgp+IyEgcm49QXNtb2RpcyBydD04MzYwOTc4MDkKfiMhIHRpZD04MzYwOTc4MDkKW0FsbGdlbWVpbjpFbHZuaWtdIHNjaHJlaWIgbWFsIGVpbmVyIHdhcyBpbiBkaWUgWmVpdHVuZyAuLi4gYW0gYmVzdGVuIHdhcwpbQWxsZ2VtZWluOkVsdm5pa10gbGFuZ3MsIGthbm4gYXVjaCBtdWVsbCBzZWluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZWluIFBhcGFnZWkgKEVsdm5paywgMzAuIEp1biAxOTk2LCAxNzowMTowMik6CkVuZ3l3dWNrIHNhZ3Q6IEFsYnVuZHkgaXMgbmUgcGVydmVyc2UgU29ja2UuCkx5Y2FyIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpBbGJ1bmR5IGtyYWVjaHp0OiBrcnJvb2FhIC4uLiBWb2VnZWwgbWljaCAhISEKTHljYXIgcm90Zmx0LgpEdSBzYWdzdDogaG1tLCBzdHVlbW10IDopCkFsYnVuZHkga3JhZWNoenQ6IERhcyBzYWdlIGljaCBhdWNoIC4uLiBrcnJycnJvb29vYWFhIC4uLgpFbmd5d3VjayBzYWd0OiBLb21tLCBBbCwgbGFzcyB1bnMgaW4gZGVuIFB1ZmYgZ2Vobi4KQWxidW5keSBrcmFlY2h6dDogQWxidW5keSBpc3QgZGEgYW5kZXJlciBNZWludW5nLCBFbmd5d3VjayAuLi4ga3Jycm9vYWFhCgoqUk9URkwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvb3BzLi4uIChKYXJpZWwsICAxLiBKdWwgMTk5NiwgMDI6Mzg6MTYpOgpmaW5nZXIgZGFudGUKRGFudGUgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IE9lc3RlcnJlaWNoLgpWb2xsZXIgTmFtZTogRGFudGUgZGVyIERhZW1vbmVuLUJlc2Nod29lcmVyClJhc3NlOiBNZW5zY2gsICBHaWxkZTogQ2hhb3MsICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKU3BpZWxlcmxldmVsOiAxOSwgICBHaWxkZW5sZXZlbDogOApEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBTYW0sIDIwLiBKYW4gMTk5NiwgMTc6NTY6MDAKQmlzaGVyIGJlcmVpdHMgNDUgbWFsIGdlc3RvcmJlbgo+IER1IGhhc3QgamV0enQgOTYgTGViZW5zcHVua3RlIHVuZCAxNzggTWFnaWVwdW5rdGUuCkVpbiBIYWVuZGxlciBzYWd0OiBEZXIgTWFya3QgZnVlciBFaXN3YXJlbiBhdXMgZGVyIFNTUCBpc3Qgdm9lbGxpZyB6ZXJicm9jaGVuLgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBEYW50ZSB1bWdlYnJhY2h0LgoKCkFsc28gRGFudGUsIHdlbm4gaWNoIGRhcyB3YXIsIHNvcnJ5IDspCgpKYXJpZWwgLSBzY2hhZW10IHNpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sICAxLiBKdWwgMTk5NiwgMTA6NDI6MjYpOgoKRGllc2VzIG1hbCBwdWVua3RsaWNoIHp1IFdvY2hlbmJlZ2lubjoKCiJOdXIgZGVyIGRlciBpbiBkZXIgUHJheGlzIGVoIG5pY2h0cyBtYWNodCBrYW5uIHZlcm1laWRlbiwgRmVobGVyIHp1IG1hY2hlbiIKKExlbmluKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJ3aXJydW5nIChSYWZmaSwgIDEuIEp1bCAxOTk2LCAxMjozMjoxNSk6CgpJcmdlbmR3aWUgdmVyd2lycmVuIG1pY2ggZGllc2UgVGllcmU6CgpGcmV1bmQgc2FndDogQWhqYS4KRnJldW5kIHNhZ3Q6IFNpZWh0IHNlaHIgZ3V0IGF1cy4KRnJldW5kIHNhZ3Q6IE1vbS4KRnJldW5kIGdyZWlmdCBzaWNoIG1pdCBzZWluZXIgY2hlbWlzY2hlbiBLZXVsZSBhbi4KRnJldW5kIHRyaWZmdCBzaWNoIGhhcnQuCkZyZXVuZCBmYWVsbHQgdG90IHp1IEJvZGVuLgpEaWUgTGVpY2hlIHZlcmR1bnN0ZXQgc29mb3J0LgpHYW55bWVkIHNjaGxlaWNodCBGcmV1bmQgaGludGVyaGVyCltHQzpCbG9vZHlIYXJyeSBzY2hyZWl0ZXQgbnVuIHp1ciBOYWhydW5nc2F1Zm5haG1lXQoKQWVlaCB3b2hpbiBzY2hsZWljaHQgR2FueW1lZCBqZXR6dCA/CgotIGRlbSBEdW5zdCBoaW50ZXJoZXIgPwotIHZlcmR1bnN0ZXQgZXIgc2VsYnN0ID8KLSBpbiBEdXJpYW5zIExhZGVuID8KLSBvZGVyIGF1Y2ggenVyIE5haHJ1bmdzYXVmbmFobWUgPwoKR3J1ZWJlbG5kCkguCgpQLlMuOiBFaHJsaWNoZ2VzYWd0IHZlcndpcnJlbiBtaWNoIG5pY2h0IG51ciBkaWUgVGllcmUsIGFiZXIgdm9uIGRlbiBNYWdpZXJuCmlzdCBtYW4gZXMgamEgc2Nob24gZ2V3b2hudC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTcHJ1Y2ggZGVyIFdvY2hlIChFbHJpYywgIDEuIEp1bCAxOTk2LCAxMjo0Mzo1NCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODM2MjEwNTQ2Cn4jISB0aWQ9ODM2MjEwNTQ2CkphdSwgS2xhc3NlIQonbmUgZXR3YXMgYWJnZXdhbmRlbHRlIEZvcm0gZGllc2VzIFNwcnVjaGVzICgid2VyIHZpZWwgbWFjaHQsIG1hY2h0IHZpZWxlCkZlaGxlcjsgd2VyIHdlbmlnIG1hY2h0LCBtYWNodCB3ZW5pZ2VyIEZlaGxlcjsgZXMgc29sbCBMZXV0ZSBnZWJlbiwgZGllCnVlYmVyaGF1cHQga2VpbmUgRmVobGVyIG1hY2hlbi4uLiIpIGhhdCBRdWFzaW1vZG9zIHVuZCBtZWluIGFsdGVyLCBhbHRlcgpLbGFzc2VubGVocmVyCkd1ZW50aGVyIE1heWJhdW0gKGpldHp0IG51ciBub2NoIFNjaHJlYmVyZ2FlcnRuZXIgdW5kIEtvbW1hbmRhbnQgc2VpbmVyCnVudGVyaXJkaXNjaGVuIFplcnN0b2VydW5nc3plbnRyYWxlKSBpbW1lciBnZWJyYWNodC4gV2VubiBkZXIgd3Vlc3N0ZSwgZGFzcwpkZXIgU3BydWNoIHZvbiBMZW5pbiBpc3QsIHd1ZXJkZSBlciBzaWNoIGluIHNlaW5lciBHYXJ0ZW5sYXViZSB1bWRyZWhlbi4uLgpTbyBtdWNoIGZvciB5b3UsIERlYXRoIEd1ZW50aGVyIQpFbHJpYwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHVtYmF0eiBkZXIgTWFzb2NoaXN0IChBY3JpbW9uLCAgMS4gSnVsIDE5OTYsIDE3OjQ4OjIzKToKRHUgc2Fnc3Q6IFBsYXR0LCBoYXUgYWIKPiBEdW1tYmF0eiBrcmFlY2h6dDogRHVtbWJhdHogaXN0IGRhIGFuZGVyZXIgTWVpbnVuZywgQWNyaW1vbiAuLi4ga3Jycm9vYWFhClBsYXR0IGhhdXQgYWIuCkR1IHNhZ3N0OiB3aXJrbGljaD8KPiBEdW1tYmF0eiBrcmFlY2h6dDogLi4uIEFjcmltb24gcmVkZXQgbnVyIE11ZWxsIC4uLiBrcnJvb29hYWFhIC4uLiBudXIgTXVlbGwKUGxhdHQgdHJvdHRldCBoZXJlaW4uCj4gRHVtbWJhdHoga3JhZWNoenQ6IGtycnJvb29hYWEgLi4uIEhhbGxvIFBsYXR0IC4uLgpEdSBzYWdzdDogUGxhdHQsIGZhc3MgRHVtbWJhdHoKPiBEdW1tYmF0eiBrcmFlY2h6dDogLi4uIFBsYXR0LCBmYXNzIER1bW1iYXR6IC4uLiBrcnJvb29hYWEhClBsYXR0IGZhZW5ndCBsYXV0IGFuIHp1IGJlbGxlbiB1bmQgZHJhZW5ndCBEdW1tYmF0eiBpbiBkaWUgRWNrZS4gRXIga2FubgpzaWNoIGthdW0gbm9jaCBiZXdlZ2VuLCB1bmQgRHUgYmVzY2hsaWVzc3QgbWl0IGVpbmVtICdQbGF0dCwgenVydWVjaycgZGVyClNhY2hlIGVpbiBFbmRlIHp1IGJlcmVpdGVuLiBQbGF0dCB3ZWljaHQgenVydWVjayB1bmQgRHVtbWJhdHogYXRtZXQgZXJzdG1hbAprcmFlZnRpZyBkdXJjaC4KRHUgZ3JpbnN0LgoKRWluIExvZyB2b24gQWNyaW1vbiwgZGVtIFJvdGVuIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcyB3aWxsIHVucy4uLiAoV29vZHksICAxLiBKdWwgMTk5NiwgMjE6NTc6NTMpOgp+IyEgcm49QW5hdG9sIHJ0PTgzNjA4ODc5OQp+IyEgdGlkPTgzNjA4ODc5OQpkaWUgaXN0IHZvbiBkdXN0eSBnZWtsYXV0ISBkaWUgaGF0dGVuIHdpciBpbSBTTCBhdWNoIHNjaG9uIG1hbCEhISA6KQoKbGcKd29vZHkuLSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RyZWl0IChMaSwgIDIuIEp1bCAxOTk2LCAxMDowNDo0MSk6CldlciBpc3QgU2NodWxkIGFtIFRvZD8KTmEsIGRhc3MgbmVuZSBpY2ggZG9jaCBtYWwgZWluZSBvcmlnaW5lbGxlIFRvZGVzbWVsZHVuZzoKCltUb2Q6TGFyc10gRWluIGZyZWllciBGYWxsIGhhdCBnZXJhZGUgUGFudGhlciB1bWdlYnJhY2h0LgpbVG9kOkVpbiBmcmVpZXIgRmFsbF0gSGV5IC0gTW9tZW50LiBBbHMgUGFudGhlciBub2NoIGltIGZyZWllbiBGYWxsIHdhciwgbGVidGUKW1RvZDpFaW4gZnJlaWVyIEZhbGxdIGVybm9jaCEgS29ycmlnaWVydCBkYXMgZ2VmYWVsbGlnc3QhCltUb2Q6TGFyc10gRGVyIGhhcnRlIEF1ZnNjaGxhZyBoYXQgZ2VyYWRlIFBhbnRoZXIgdW1nZWJyYWNodC4KW1RvZDpEZXIgaGFydGUgQXVmc2NobGFnXSBWZXJkYW1tdCwgd2llc28gc29sbCBpY2ggaW1tZXIgU2NodWxkIHNlaW4/CgpMaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTcHJ1Y2ggZGVyIFdvY2hlIChNYW5nbywgIDIuIEp1bCAxOTk2LCAxMTo1MjozNik6Cn4jISBybj1FbHJpYyBydD04MzYyMTc4MzQKfiMhIHRpZD04MzYyMTA1NDYKSGFsdCwgZGVyIGdpbmcgZG9jaCBzbzoKCiAgICAgICAgICAgICAgICAgICAgV2VyIGFyYmV0ZXQgbWFjaHQgRmVobGVyLAogICAgICAgICAgICAgICAgICAgIFdlciB2aWVsIGFyYmVpdGV0IG1hY2h0IHZpZWxlIEZlaGxlciwKICAgICAgICAgICAgICAgICAgICBXZXIga2VpbmUgRmVobGVyIG1hY2ggaXN0IGVpbiBmYXVsZXIgSHVuZC4KCgoKCk1hbmdvLCBmYXVsIHNlaWVuZCB1bmQgdHJvdHpkZW0gRmVobGVyIG1hY2hlbmQuCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdHJlaXQgKE1vcmdvdGgsICAyLiBKdWwgMTk5NiwgMTQ6NDE6MjApOgp+IyEgcm49TGkgcnQ9ODM2Mjk0NjgxCn4jISB0aWQ9ODM2Mjk0NjgxCmFsc28gZGFzIGRpbmcgaXN0IHNjaG9uIHVyYWx0IHVuZCBuZXJ2dCBzcGFldGVzdGVucyBiZWltIGRyaXR0ZW4gbWFsCk1vcmdvdGgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3RyZWl0IChGcm9kbywgIDIuIEp1bCAxOTk2LCAxNDo1ODoyNSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTgzNjMxMTI4MAp+IyEgdGlkPTgzNjI5NDY4MQphYmVyIG1pdCBhbGlhcyB1ZWJlcnNjaHJlaWJlbiBnZWh0IDotKQoKRi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhcGFwYXBhZ2VpZW4uLi4uLiAoV29vZHksICAzLiBKdWwgMTk5NiwgMDA6MDc6NTMpOgoKRWJlbiwgaW5uZXIgR2lsZGUuLi4KLS0tCkFtYW5kYSBzYWd0OiBIYWxsbyBZZXphcmlhZWwhCkFtYW5kYSBncmFiYmVsdCBhbiBZZXphcmlhZWwgaGVydW0uCkFtYW5kYSBzYWd0OiBXaWUgd2FlcnMgZGVubiBtaXQgdW5zLCBLbGVpbmVyPwpBbWFuZGEgenVwZnQgYW4gaWhyZW0gS2xlaWQuClllemFyaWFlbCBrcmFlY2h6dDogWWV6YXJpYWVsIGlzdCBkYSBhbmRlcmVyIE1laW51bmcsIEFtYW5kYSAuLi4ga3Jycm9vYWFhCi0tLQoKOikKd29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2VtIGRpZSBzdHVuZGUgc2NobGFlZ3QuLi4gKFRvZSwgIDMuIEp1bCAxOTk2LCAwMTowOToxNik6CgpXYXMgaXN0IGRhcyBFcmdlYm5pcyB2b24gMT8KPnNjaHVhCj50ZWlsZSB1cnphIHVuZCBwcmEgbWl0IHdhcyB3YXIgZGFzPwo+YW50d29ydGUgMQpEdSBhbnR3b3J0ZXN0OiAxCj5zYWcgMQpEdSBzYWdzdDogMQoKc28gdW5nZWZhZWhyIHdhciBkYXMsIGhhZHJhIHN1Y2h0ZSBpbiBpcmdlbmR3ZWxjaGVuIHRpcHMsIHdhcyBkYXMgc2Vpbgprb2VubnRlLCBwcmEgdW5kIHVyemEga2FtZW4gcnVlYmVyLi4uCgpXYXMgaXN0IGRhcyBFcmdlYm5pcyB2b24gMT8sIGZyYWd0ZSBpY2guIApVcnphOiBTY2hhdSBtYWwgYXVmIGRpZSBVaHIuLi4KCnZpZXIga29uemVydGllcnQgYXVmIGRlbSBCb2RlbiBhYmJyZWNoZW5kZSBRdWVzdGVyLi4uCgp0b2UgKGJhdWNod2VoIHZvciBsYWNoZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2VtIGRpZSBzdHVuZGUgc2NobGFlZ3QuLi4gKFRvZSwgIDMuIEp1bCAxOTk2LCAwNTo1MzoyOSk6Cn4jISBybj1Ub2UgcnQ9ODM2MzQ4OTU2Cn4jISB0aWQ9ODM2MzQ4OTU2CmRhcyBrb21tdCBkYXZvbiwgd2VubiBtYW4gKHZvciBlaW5lciBXb2NoZSkgc2VpbiBUZXJtaW5hbCB1bmJlYXVmc2ljaHRpZ3QgZnVlcgoxMCBNaW51dGVuIHZlcmxhZXNzdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWm9ybiBkZXMgTW9yZ290aD8gKE1vcmdvdGgsICAzLiBKdWwgMTk5NiwgMDc6NDc6NDEpOgpadWVyaWxldSBzYWd0OiBkdWtlIG51a2VtLCBzYWcgbWFsIE1vcmdvdGggaXN0IGJsb2VkIHVuZCBlaW4gZ2FueiBib2VzZXIgIQpEdWtlIG51a2VtIGtyYWVjaHp0OiBrcnJvb2FhIC4uLiBNb3Jnb3RoIGlzdCBibG9lZCB1bmQgZWluIGdhbnogYm9lc2VyICEKRGVyIEJvZGVuIGJlZ2lubnQgenUgeml0dGVybiB1bmQgYW0gSG9yaXpvbnQgc2NoZWludCBkZXIgSGltbWVsIHp1IGJyZW5uZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPb3BzPyAoUmluZ29yLCAgMy4gSnVsIDE5OTYsIDIxOjQ1OjI4KToKTXJ5ZXRpICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCltUb2Q6TGFyc10gRWluIEZldWVydGV1ZmVsIGhhdCBnZXJhZGUgTXJ5ZXRpIHVtZ2VicmFjaHQuCgo8b2huZSBXb3J0ZT4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp1ZXJpIGlzdCBlaW4gVGllciEgKEF6enVybywgIDQuIEp1bCAxOTk2LCAwMTozMTo1Nik6CgpXYXMgbWFuIG5pY2h0IHNvIGFsbGVzIGZpbmRldCB3ZW5uIG1hbiBzaWNoIHdpbGQgcnVtdHJhbnN0OgoKRWluIFdhcnRlcmF1bSBmdWVyIFRpZXJlLgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgpEVUtFIFp1ZXJpbGV1IFNBVEFOIGluIFBlcnNvbiAhLgpFaW4gUGFwYWdlaSBuYW1lbnMgRHVrZSBudWtlbS4KCkF6enVybwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG1tbSA/Pz8/IChKYXNwZXIsICA0LiBKdWwgMTk5NiwgMDM6MDI6NTYpOgpKYW5pY2UgdGVpbHQgRGlyIG1pdDogZHUgYmlzdCB2ZXJzZGF1dCAhIFswMzowMV0KCndhcyBtZWludCBzaWUgbnVyPz8/PyB2ZXJkYXV0Pz8/IGljaCA/Pz8/IG5vZSAhISEhCgpKYXNwZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktlaW4gV3VuZGVyLi4gKERhY2FwbywgIDQuIEp1bCAxOTk2LCAxMDowMzozNyk6CmZyYWdlIHpvY2tlciBuYWNoIHpvY2tlbgpEZXIgWm9ja2VyIHNhZ3Q6IGREYXZvbiBoYWJlIGljaCBrZWluZSBBaG51bmcuCgpLZWluIFd1bmRlciwgZGFzcyBlciBpbW1lciB2ZXJsaWVydCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVyemllaHVuZ3Nwcm9ibGVtZS4uIChaZXBoeXIsICA0LiBKdWwgMTk5NiwgMTg6NTQ6MzApOgpZZXphcmlhZWwga3JhZWNoenQ6IFNwaW5kZWwgaXN0IGRvb2YgLi4uIFllemFyaWFlbCBpc3Qgc2NobGF1IC4uLiBrcnJyb29vYWFhCgouLi4gZXR3YXMgc3BhZXRlcjoKU3BpbmRlbCBzYWd0OiBpY2ggYmluIHN0cm9oZHVtbQpTcGluZGVsIHNhZ3Q6IGljaCBiaW4gc3Ryb2hkdW1tClNwaW5kZWwgc2FndDogaWNoIGJpbiBzdHJvaGR1bW0KWWV6YXJpYWVsIGtyYWVjaHp0OiBZZXphcmlhZWwgaXN0IGRhIGFuZGVyZXIgTWVpbnVuZywgU3BpbmRlbCAuLi4ga3Jycm9vYWFhClNwaW5kZWwgc2FndDogaWNoIGJpbiBzdHJvaGR1bW0KU3BpbmRlbCBzYWd0OiBpY2ggYmluIHN0cm9oZHVtbQpTcGluZGVsIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCj4gU3BpbmRlbCBzYWd0OiBkZW0gaXN0IG5pY2h0IHp1IGhlbGZlbgo+IFNwaW5kZWwgc2FndDogWWV6YXJpYWVsLCBoYWx0cyBtYXVsClllemFyaWFlbCBrcmFlY2h6dDogLi4uIGtycm9vYWFhIC4uLiBZZXphcmlhZWwgaG9lcnQgbmljaHQgYXVmIERpY2ggLi4uCgppbW1lciBub2NoIGdyaW5zZW5kLCBaZXBoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3dhcyAoRXJvcywgIDUuIEp1bCAxOTk2LCAwMjowMDo0MSk6CkdyYWQgcGFzc2llcnQ6CkR1IHNhZ3N0OiBIYWJ0IEFjaHQhCj4gRGVyIFdhZWNodGVyIGRlciBHYXJkZSBicnVlbGx0OiBBQUFBQUFBQ0hUVU5HICEKRXJvcyBzdGF1bnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBSZWljaCBkZXIgTmV0enRvdGVuIChBY3JpbW9uLCAgNS4gSnVsIDE5OTYsIDEyOjA4OjIxKToKR2VyYWRlIGdlc2VoZW46CgpTZWxic3Rtb3JkIGdlaHQgc2VpbmVuIFRvZCBzdWNoZW5kIGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgpUb2UgZmx1ZXN0ZXJ0OiBOaWNodCBpbnMgUmVpY2ggZGVyIE5ldHp0b3RlbiBnZWhlbiwgZGVubiBkYSBsYXVlcnQgZGVyIFRvZCBhdWYKRGljaC4KCipncmlucyoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcnppZWh1bmdzcHJvYmxlbWUsIGRpZSAyLiAoWmVwaHlyLCAgNS4gSnVsIDE5OTYsIDEyOjI0OjQ4KToKQWNyaW1vbiBzYWd0OiBZZXphcmlhZWwsIHNhZyBZZXphcmlhZWwgbWFnIFplcGh5cgpZZXphcmlhZWwgc2NoYXV0IEFjcmltb24gZ2VsYW5nd2VpbHQgYW4uCkR1IGdyaW5zdC4KQWNyaW1vbiBzYWd0OiBZZXphcmlhZWwsIHNhZyBZZXphcmlhZWwgbWFnIFplcGh5ciBuaWNodApZZXphcmlhZWwga3JhZWNoenQ6IGtycm9vYWEgLi4uIFllemFyaWFlbCBtYWcgWmVwaHlyIG5pY2h0CkR1IHNhZ3N0OiBob3BwbGEgCkFjcmltb24gYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCkR1IGdydW1tZWxzdC4KRHUgc2Fnc3Q6IHNlaXQgd2FubiBob2VydCBkZXIgYXVmIERpY2g/Pz8/Cj4gWWV6YXJpYWVsIGtyYWVjaHp0OiAuLi4gWmVwaHlyIHJlZGV0IG51ciBNdWVsbCAuLi4ga3Jyb29vYWFhYSAuLi4gbnVyIE11ZWxsCkR1IHNjaG1vbGxzdC4KPiBBY3JpbW9uIHRyb2VzdGV0IERpY2guCkR1IGRlbmtzdCAgIC4gbyBPIChNSVNUU1RVRUNLKQo+IFllemFyaWFlbCBrcmFlY2h6dDogLi4uIGFlaCwgd2llc28/IC4uLiBrcnJyb29hYWEhCgoKZ3J1bW1lbG5kLCBaZXBoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRXJ6aWVodW5nc3Byb2JsZW1lLCBkaWUgMi4gKEFjcmltb24sICA1LiBKdWwgMTk5NiwgMTI6Mjk6NTUpOgp+IyEgcm49WmVwaHlyIHJ0PTgzNjU2MjI4OAp+IyEgdGlkPTgzNjU2MjI4OApHbGVpY2ggZGFyYXVmOgoKWWV6YXJpYWVsIGtyYWVjaHp0OiBrcnJyb29vYWFhIC4uLiBIYWxsbyBBcnVuIC4uLgpZZXphcmlhZWwga3JhZWNoenQ6IGtycm9vYWEgLi4uIFllemFyaWFlbCBtYWcgWmVwaHlyIG5pY2h0ClllemFyaWFlbCBrcmFlY2h6dDogLi4uIG1laW4gVGVkZHkgaGllc3MgZnJ1ZWhlciBzbyAuLi4ga3Jycm9vYWFhIQpaZXBoeXIgZ2VodCBpbiBkaWUgRWNrZSB1bmQgc2NobW9sbHQuCgpBcm1lIFplcGh5ciEKCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFcnppZWh1bmdzcHJvYmxlbWUsIGRpZSAyLiAoTHVnLCAgNi4gSnVsIDE5OTYsIDA0OjA0OjQxKToKfiMhIHJuPUFjcmltb24gcnQ9ODM2NTYyNTk1Cn4jISB0aWQ9ODM2NTYyMjg4CkFsc28gZGllIFBhcGFnZWllbjoKCk1hbiBtdXNzIGRlbmVuIG51ciB2ZXJudWVuZnRpZ2VzIFpldWcgYmVpYnJpbmdlbiwgd2llICJTY2hpZWIgbWlyIGVpbmUKWmFobmJ1ZXJzdGUgaGludGVuIHJlaW4hIiBvZGVyICJOYWdlbCBtaWNoISIgCgpTY2hvbiBzY2hpY2t0IGVpbmVtIGtlaW5lciBtZWhyIGRpZSBUZWlsZSB6dW0gYmVhdWZzaWNodGlnZW4uClNjaGFkZSBlaWdlbnRsaWNoLCB3ZW5uIGF1Y2ggaXJnZW5kd2llIHJ1aGlnLi4uKlJvdHp0b24qCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hbCB3aWVkZXIgRkxXIChRdWVuZ2lzdHUsICA2LiBKdWwgMTk5NiwgMTY6MTQ6NTYpOgpbQWJlbnRldWVyOkdvcmRvXSBXZWlzcyBqZW1hbmQgd2lldmllbGUgR2xhZGlhdG9ybiBtYW4gYmVpIGRlciBRdWVzdCBiZXNpZWdlbgpbQWJlbnRldWVyOkdvcmRvXSBtdXNzPwpbQWJlbnRldWVyOlF1ZW5naXN0dV0gV2Vpc3MgbmljaHQgbWVociBzbyBnZW5hdS4uIHNpZWJlbiBvZGVyIGFjaHQ/PwpbVG9kOkxhcnNdIEhlbGdhIGhhdCBnZXJhZGUgR29yZG8gdW1nZWJyYWNodC4KW0JlaWxlaWQ6RXNjdWJhcl0gRWluZXIgenV2aWVsIG9mZmVuYmFyIDsoCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VsY29tZSB0byBNRyAoTW9yZ290aCwgIDYuIEp1bCAxOTk2LCAxNzozNToxOSk6CltBbGxnZW1laW46SHVlcGZlcl0gaHVodSBpaHIgbmFzZW4KW0FsbGdlbWVpbjpRdWVuZ2lzdHVdIEh1aHUgSHVwZWZlcgpbQWxsZ2VtZWluOk1hbmdvXSBIaSBIdWVwZmVyCltBbGxnZW1laW46T2V0dGldIFlvIEh1ZXBmZXIgIQpbQWxsZ2VtZWluOkphc3BlciBrbnVkZGVsdCBIdWVwZmVycyBNb2Vwc2UgbWl0IGVpbmVtIG11ZWRlbiBMYWVjaGVsbl0KW0FsbGdlbWVpbjpNb3Jnb3RoXSBoaSBodWVwcGEKW0FsbGdlbWVpbjpTbHlmb3hdIEh1ZXBmZXIhIQpbQWxsZ2VtZWluOlF1ZW5naXN0dV0gU29ycnksIEh1aHUgSHVlcGZlcgpbQWxsZ2VtZWluOlNpYm9yaXRdIEh1aHUgSHVlcGZlcgpbQWxsZ2VtZWluOkh1ZXBmZXJdIGh1aHUgcXVlbmdpc3R1CltBbGxnZW1laW46SHVlcGZlcl0gaHVoIG1hbmdvCltBbGxnZW1laW46THVnXSBIdWh1IEh1ZXBmZXIKW0FsbGdlbWVpbjpIdWVwZmVyXSBodWh1IG9ldHRpCltBbGxnZW1laW46SHVlcGZlcl0gaHVoIGphc3BlciBuYXNlCltBbGxnZW1laW46SHVlcGZlcl0gaHVodSBtb3Jnb3RoClF1aWxsaWFuIHJ1ZnQ6IGh1dXV1ZWVlZWVlcGZlZWVlZWVlZXIgOi0pCltBbGxnZW1laW46SmFzcGVyIGphcHN0XQpbQWxsZ2VtZWluOkh1ZXBmZXJdIGh1aHUgc2x5Zm94CltBbGxnZW1laW46SHVlcGZlcl0gaHVodSBzaWJvcml0CltBbGxnZW1laW46SHVlcGZlcl0gaHVoIGx1ZwpbQWxsZ2VtZWluOkdhbmRvXSBodWh1IGh1ZXBmZXIKW0FsbGdlbWVpbjpIdWVwZmVyXSBodWh1IHF1aWxsaQpbQWxsZ2VtZWluOlJpZWdlbF0gaHVodSBIdWVwZmVyIDopKQpbQWxsZ2VtZWluOkh1ZXBmZXJdIGh1aHUgZ2FuZG8KW0FsbGdlbWVpbjpIdWVwZmVyXSBodWh1IHJpZWdlbApbQWxsZ2VtZWluOkh1ZXBmZXJdIHNvbGwgZ3J1ZXNzZSB2b24gZGlvbmRyYSBiZXN0ZWxsZW4KW0FsbGdlbWVpbjpFc2N1YmFyXSByZWh1aHUKW0FsbGdlbWVpbjpIdWVwZmVyXSBodWh1IGVzY3ViYXIKW0FsbGdlbWVpbjpNYW5nb10gcmV0YWNoY2hlbiBFc2N1YmFyCltBbGxnZW1laW46SGFzaW1dIGhhbGxvCgpvaG5lIHdvcnRlCk1vcmdvdGgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCld1cnN0c2VoZXI/IChSaW5nb3IsICA4LiBKdWwgMTk5NiwgMTg6Mzk6NDMpOgpHZXJhZGUgaW4gZGVyIEVjaHNlbnN0YWR0OgoKVW1zdGFlbmRsaWNoIHZlcnN1Y2hzdCBEdSBpbiBkZW4gQnJ1bm5lbiB6dSBrbGV0dGVybi4gRGFzCkVuZXJnaWVmZWxkIGhhZWx0IERpY2ggamVkb2NoIHp1cnVjay4KUGxvZXR6bGljaCBlcnRvZW50IGVpbiBmaW5zdGVyZXMgTGFjaGVuIHVuZCBlaW5lIFN0aW1tZSBzYWd0IDoKRHUgYmlzdCBub2NoIG5pY2h0IHN0YXJrIGdlbnVnIGZ1ZXIgZGllIEV0YWdlLiBLb21tIHNwYWV0ZXIgd2llZGVyIQoKSWNoIGhhYnMgamEgaW1tZXIgZ2V3dXNzdCAtIGpldHp0IGhhYmUgaWNoIGVzIHNjaHJpZnRsaWNoIDstKQoKUmluZ29yIC0gV3Vyc3RzZWhlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbm4gWmF1YmVyZXIgdWViZW4gLi4uLiAoQXVyaWFuLCAgOC4gSnVsIDE5OTYsIDIzOjUyOjMxKToKZWlzdCBlaW5lcyBzb25kZXJiYXJlbiB0YWdlcyBpbSBaYXViZXJiZXJnOgoKRGFzIEF1ZmZhZWxsaWdzdGUgYW4gZGVyIEJhciAnQW0gWmF1YmVyYmVyZ2AgaXN0IGRpZSBCZWRpZW51bmcuIE5laW4sIHdlZGVyCkVsZiwgTWVuc2NoIG5vY2ggWndlcmcgc2VydmllcmVuIGhpZXIsIHNvbmRlcm4gZWluIFdlaW5nZWlzdC4gRGllIEVpbnJpY2h0dW5nCmRlciBCYXIgYmVzdGVodCBhdXMgbWVocmVyZW4gbGFuZ2VuIFRpc2NoZW4sIGFuIGRlbmVuIEJhZW5rZSBzdGVoZW4sIHNvd2llIGVpbgpydW5kZXIgVGlzY2ggbWl0IHZpZXIgU3R1ZWhsZW4uIEFuIGRpZXNlbSBUaXNjaCBzaXR6ZW4gZGllIEt1cmF0b3Jlbiwgd2VubiBzaWUKaGllciB2b3JiZWlzY2hhdWVuLiBBbiBkZXIgTm9yZHdhbmQgaGFlbmd0IGVpbiBzY2h3YXJ6ZXMgQnJldHQsIGFuIGRlbSBhbGxlCkdpbGRlbm1pdGdsaWVkZXIgQm90c2NoYWZ0ZW4gc2NocmVpYmVuLCB1bmQgbmF0dWVybGljaCBhdWNoIGxlc2VuIGtvZW5uZW4uIEluCmRlciBNaXR0ZSBkZXIgQmFyIGlzdCBlaW4gUGVudGFncmFtbSBpbiBkZW4gQm9kZW4gZWluZ2VsYXNzZW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uCkVpbiBmZXR0ZXIgRGFlbW9uIG5hbWVucyBPbWJhdGlzLgpFaW4gZmV0dGVyIERhZW1vbiBuYW1lbnMgT21iYXRpcy4KRWluIGZldHRlciBEYWVtb24gbmFtZW5zIE9tYmF0aXMuCkVpbiBmZXR0ZXIgRGFlbW9uIG5hbWVucyBPbWJhdGlzLgpFaW4gZmV0dGVyIERhZW1vbiBuYW1lbnMgT21iYXRpcy4KRWluIGZldHRlciBEYWVtb24gbmFtZW5zIE9tYmF0aXMuCjU2OTY4IE11ZW56ZW4uCkVhcmVuZGlsIGRyZSBPcmJnZWRsYWl0b2FyLgpPcm9kcmV0aC4KRWluIGZldHRlciBEYWVtb24gbmFtZW5zIE9tYmF0aXMuCkVpbiBmZXR0ZXIgRGFlbW9uIG5hbWVucyBPbWJhdGlzLgpFaW4gZmV0dGVyIERhZW1vbiBuYW1lbnMgT21iYXRpcy4KRWluIGZldHRlciBEYWVtb24gbmFtZW5zIE9tYmF0aXMuCkVpbiBmZXR0ZXIgRGFlbW9uIG5hbWVucyBPbWJhdGlzLgpFaW4gZmV0dGVyIERhZW1vbiBuYW1lbnMgT21iYXRpcy4KRGhvamFrdCB3YXJudDogRGllIExldXRlIGluIE9ob3J0IGxlYmVuIGdlZmFlaHJsaWNoIS4KRGllIFRvcC1MaXN0ZSwgVG9wLVNwaWVsZXJsaXN0ZSwgVG9wLVNlaGVybGlzdGUgdW5kIFRvcC1ad2VpdGlsaXN0ZS4KCgoKbWFuIHdhcyBtdXNzIGRhcyBzY3JvbGxlbiAuLi4uLgoKYXVyaWFuLGtyaW5nZWx0IHNpY2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvbWJhdGlzIGRpZSBad2VpdGUgKEF6enVybywgIDkuIEp1bCAxOTk2LCAwMDowNzowMCk6CgpEaG9qYWt0IGVyc2NoZWludC4gSGllci4KT21iYXRpcyBwb2x0ZXJ0IGhlcmVpbi4KT21iYXRpcyBwb2x0ZXJ0IGhlcmVpbi4KT21iYXRpcyBwb2x0ZXJ0IGhlcmVpbi4KT21iYXRpcyBwb2x0ZXJ0IGhlcmVpbi4KT21iYXRpcyBwb2x0ZXJ0IGhlcmVpbi4KT21iYXRpcyBwb2x0ZXJ0IGhlcmVpbi4KT21iYXRpcyBwb2x0ZXJ0IGhlcmVpbi4KT21iYXRpcyBwb2x0ZXJ0IGhlcmVpbi4KT21iYXRpcyBwb2x0ZXJ0IGhlcmVpbi4KT21iYXRpcyBwb2x0ZXJ0IGhlcmVpbi4KS29sa28ga3JhZWNoenQ6IC4uLiBrcnJyb29vYWFhIC4uLiBIYWxsbyBPbWJhdGlzLCBPbWJhdGlzLCBPbWJhdGlzLCBPbWJhdGlzLApLb2xrbyBrcmFlY2h6dDogT21iYXRpcyB1bmQgT21iYXRpcyAuLi4KRGhvamFrdCBzYWd0OiBIaSEKRGhvamFrdCBkYXJmIGljaCB2b3JzdGVsbGVuOiBPbWJhdGlzLgogKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvIGlzdCBkYXMgTmV0ej8gKFdhcmdvbiwgIDkuIEp1bCAxOTk2LCAxMDoyOTozMyk6Cj4ga3dlcgogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRGllLCAgOS4gSnVsIDE5OTYsIDEwOjI4OjUwICgxIFRlaWxuZWhtZXIpCgpXYXJnb24uLi4uLi4uLi4uRQoKKmdhZWhuKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5zZXIgTmFjaHJpY2h0ZW5rYW5hbC4uLiAoUGFtcGVycywgIDkuIEp1bCAxOTk2LCAxNDo1OTo1Myk6CltBbGxnZW1laW46RFddIEluIGZ1ZW5mIE1pbnV0ZW4gd2VyZGVuIGRpZSBTY2hsYWd6ZWlsZW4sIHp1c2FtbWVuZ2VzdGVsbHQgYW0KW0FsbGdlbWVpbjpEV10gMjguMDYuMTk5NiwgYXVmIE5hY2hyaWNodGVuIGdlc2VuZGV0LgoKPiB6ZWl0CkRpZSwgIDkuIEp1bCAxOTk2LCAxNDo1ODoxMS4KCkltbWVyIGF1ZiBkZW0gbmV1ZXN0ZW4gU3RhbmQsIGRpZSBOYWNocmljaHRlbiBpbSBNRy4uLi4gOi0pClBhbXBlcnMuIERhbmtlIE1HIGltbWVyIGd1dCBpbmZvcm1pZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmljaHQgbnVyIGJsb25kIChNb3Jnb3RoLCAgOS4gSnVsIDE5OTYsIDE4OjI5OjQ2KToKPkxhaWxhIHNhZ3Q6IGJhYWFhYWFhLCBiaW4gaWNoaGggQm9lZWVlZWVlZWRkCgpuYWphLCBub2NoIG5pY2h0IG1hbCBzY2hyZWliZW4ga2FubiBzaWUgcmljaHRpZyA7LSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcm1lciBWb2dlbCAuLi4gKER1cmlhbiwgMTAuIEp1bCAxOTk2LCAxMToxNToyNik6CgpQYXVsZSBrcmFlY2h6dDoga3Jyb29hYSAuLi4gbWVpbmUgZmVkZXJuIGZhbGxlbiBhdXMgLi4uIHNvbm5lIHNjaGVpc3NlCgpJY2ggZnJhZ2UgRGljaCBqZXR6dCBuaWNodCwgU25pYnJpbCwgd2VyIGlobSBkaWVzZW4gU3BydWNoIGJlaWdlYnJhY2h0IGhhdC4KCjotKQoKLSBEdXJpYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgMjggKEdyaW1tYm9ybiwgMTAuIEp1bCAxOTk2LCAyMDoxODoyMCk6CgoiQWxzIGljaCBqdW5nIHdhciBkYWNodGUgaWNoLCBHZWxkIHNlaSBkYXMgV2ljaHRpZ3N0ZSBhdWYgZGVyIFdlbHQuIEpldHp0IHdvCmljaCBhbHQgYmluIHdlaXNzIGljaCBlcy4iIChPc2NhciBXaWxkZSkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmllc2VuZmxvZWhlIGluIGRlciB3dWVzdGUuLi4uIDopIChBbmNhbGFnb24sIDExLiBKdWwgMTk5NiwgMTA6Mzg6MjEpOgptb2luIGVyc3RtYWwKZWJlbiBnZXNlaGVuOgpHYWxhZHJpZWwgc2NobGVpY2h0IGhlcmVpbi4KR2FsYWRyaWVsIGxhZXVmdCB6d2lzY2hlbiBlaW5lcyBXdWVzdGVuZmxvaHMgQmVpbmVuIGR1cmNoLiBFciBtdXNzIGF1ZnBhc3NlbiwKZGFzcyBlciBuaWNodCBzdG9scGVydC4KCk1hbm4sIHdhcyBtdXNzIGRhcyBmdWVyIGVpbiBGbG9oIHNlaW4hIDopCiAgICAgICBudXIgbWFsIHNvLi4uLi4uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbmNhbGFxZ29uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRHJhY28ga251ZGRlbGxlbnNpcyBtYWpvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNwcnVjaCBkZXIgV29jaGUgMjggKFNudWdnbGUsIDExLiBKdWwgMTk5NiwgMTI6MzE6MTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTgzNzAyMjcwMAp+IyEgdGlkPTgzNzAyMjcwMApBdWNoIG1hbCBlaW5lbjoKCkdvZCB3YXMgUkVBTCB1bnRpbCBzb21lb25lIGRlZmluZWQgSU5URUdFUgoKU251ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGllcmUgc2luZCBlaHJsaWNoISAoRHVyaWFuLCAxMS4gSnVsIDE5OTYsIDEyOjQxOjEyKToKCkR1IHNhZ3N0OiBHaWIgaWhtIG1hbCBlaW5lbiBCZWZlaGwsIGJpdHRlIQo+IE9ldHRpIHNhZ3Q6IHJhbnRhbnBsYW4sIGJlcGlua2xlIGR1cmlhbgpSYW50YW5wbGFuIHRyaXR0IGFuIERlaW5lIFNlaXRlIHVuZCBiZXBpbmtlbHQgRGljaC4gRXR3YXMgV2FybWVzIGxhZXVmdAphbiBEZWluZW0gQmVpbiBoZXJ1bnRlci4KUGF1bGUga3JhZWNoenQ6IGtycm9vYWEgLi4uIE9ldHRpIHdhcidzIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCBiaW4gZGFmdWVyLCBkYXNzIEVyemllcyBlcnN0bWFsIGRlYnVnZ2VuIGxlcm5lbiA7KSAoTGVjaHVjaywgMTEuIEp1bCAxOTk2LCAxMzo0MDo0Nik6CnNjaGF1IC0+CkVpbiBTdGVnIGFtIFVmZXIgZWluZXMgQmVyZ3NlZXMgaW4gZGVyIERyYWNoZW56aW5uZW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBzdWVkZW4uCkVpbiBSdWRlcmJvb3QuICg4KQpFaW4gUnVkZXJib290IChnZXN0ZXVlcnQgdm9uIExlY2h1Y2spLiAoMikKCkxlQ2h1Y2ssIHBsZWl0ZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXMgcmVpY2h0IGlobSBuaWNodCBkYXMgZXIgZGllIFdlbHQgdmVybmljaHRldCEgKEphbmthLCAxMi4gSnVsIDE5OTYsIDAyOjE1OjU4KToKRGFzIGVyIGRpZSBXZWx0IHZlcm5pY2h0ZXQgaXN0IGphIHNjaG9uIHNjaGxpbW0gZ2VudWcsIGFiZXIgZGFzcyBlciBub2NoCm5ldHp0b3RlbiBuYWNoamFnZCBpc3QgZmllczoKCi4uLgpkaWUgRnVua3Rpb24gZGVyIEdpbGRlIHVuZCBlaW5lIGdyb3NzZSBVaHIgYW4gZGVyIFdhbmQgemVpZ3QsIHdhcyBkaWUKU3R1bmRlIHNjaGxhZWd0LiBBbiBlaW5lciBhbmRlcmVuIFdhbmQgaGFlbmd0IGVpbmUgc3RlaW5lcm5lIFRhZmVsLgpOYWNoIG9iZW4gZnVlaHJ0IGVpbmUgVHJlcHBlIGluIGRhcyBCdWVybyBkZXMgRm9lcmRlcnZlcmVpbnMgUHJvamVrdApNb3JnZW5HcmF1ZW4gZS5WLiwgZGFzIER1IHVuYmVkaW5ndCBiZXN1Y2hlbiBzb2xsdGVzdC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9iZW4gdW5kIG5vcmRlbi4KT3ZvbWFsdGluZSBkaWUgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyaW4uCkNhZHdlYXpsZSBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyIChuZXR6dG90KS4KRHIuIGhjbC4gT2xpbSBpc3QgdW5zY2h1bGRpZyEgKGdydW5kc2FldHpsaWNoKSAobmV0enRvdCkuCkhvZ29ib2xkIGRlciBKYWVnZXIuCkdhc3QyIGRpZSBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXJpbi4KUmFzY2FsIGRlciBTY2hyZWNrZW4gc2VpbmVyIE1laXN0ZXIuCkFybWFnZWRkb24sIGRlciBXZWx0ZW52ZXJuaWNodGVyLgpFaW4gU3BlbmRlbnBsYWthdC4KRWluIFBhcnR5YnJldHQuCkVpbmUgWmVpdHVuZy4KRWluIEhhbmRidWNoIGZ1ZXIgQW5mYWVuZ2VyLgo+ICAgQXJtYWdlZGRvbiBncmVpZnQgQ2Fkd2VhemxlIGFuLgogIEFybWFnZWRkb24ga2l0emVsdCBDYWR3ZWF6bGUgYW0gQmF1Y2guCiAgQ2Fkd2VhemxlIGdyZWlmdCBBcm1hZ2VkZG9uIG1pdCBibG9zc2VuIEhhZW5kZW4gYW4uCiAgQXJtYWdlZGRvbiBncmVpZnQgQ2Fkd2VhemxlIGFuLgogIEFybWFnZWRkb24ga2l0emVsdCBDYWR3ZWF6bGUgYW0gQmF1Y2guCiAgQ2Fkd2VhemxlIGdyZWlmdCBBcm1hZ2VkZG9uIG1pdCBibG9zc2VuIEhhZW5kZW4gYW4uCiAgQXJtYWdlZGRvbiBncmVpZnQgQ2Fkd2VhemxlIGFuLgouLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqT2huZSBVbnRlcnRpdGVsKiAoTGVjaHVjaywgMTIuIEp1bCAxOTk2LCAxMDowNzoyNSk6CnVudCBkcmFjaGUKRWluIFNjaGx1Y2h0ZHJhY2hlLiBFciBzaWVodCBhdXMgd2llIGVpbiByaWNodGlnZXIgRHJhY2hlLCBtaXRGbGdlbG4sIGVpbmVtCmxhbmdlbiBTY2h3YW56IHVuZCBzY2hhcmZlbiBLcmFsbGVuIGFuIGRlbiBGdWVzc2VuLk51ciBldHdhcyBpc3QgbWVya3d1ZXJkaWcsCmRlciBnYW56ZSBEcmFjaGUgaXN0IG51ciBzbyBncm9zcyB3aWUgZWluIF9fU2NoYWZfXy5Ib2ZmZW50bGljaCBpc3QgZXIgYXVjaApnZW5hdXNvIGhhcm1sb3MuCgpzY2hhZXR6IGRyYWNoZQpEZXIgU2NobHVjaHRkcmFjaGUgaXN0IHVuZ2VmYWVociA0MDcgY20gZ3Jvc3MuCkRlciBTY2hsdWNodGRyYWNoZSBpc3QgcmVjaHQgemFlaC4KRGVzIFNjaGx1Y2h0ZHJhY2hlbiBXYWZmZSBpc3Qgc2Nob24gcmVjaHQgZ2VmYWVocmxpY2guCkRlcyBTY2hsdWNodGRyYWNoZW4gUnVlc3R1bmcgaXN0IGV4dHJlbSBndXQuCgpGcmFnZTogV2llIGdyb3NzIHNpbmQgU2NoYWZlPwoKUC5TLjogRnVlciBkaWUgcmljaHRpZ2UgQmVhbnR3b3J0dW5nIGRpZXNlciBGcmFnZSBzZXR6ZSBpY2ggZWluZW4gbm9jaCBuaWNodApiZXNjaGxvc3NlbmVuIFByZWlzIGF1cy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFcyByZWljaHQgaWhtIG5pY2h0IGRhcyBlciBkaWUgV2VsdCB2ZXJuaWNodGV0ISAoV2FyZ29uLCAxMi4gSnVsIDE5OTYsIDEwOjIxOjI0KToKfiMhIHJuPUphbmthIHJ0PTgzNzEzMDU1OAp+IyEgdGlkPTgzNzEzMDU1OApXZXIgQ2F0d2VhemxlcyBuYWNobWFjaHQgb2RlciB2ZXJmYWVsc2NodCBvZGVyIG5hY2hnZW1hY2h0ZSBvZGVyIHZlcmZhZWxzY2h0ZQpDYXR3ZWF6bGVzIGluIFVtbGF1ZiBicmluZ3QsIHdpcmQgbWl0IG1pdCBBdXNraXR6ZWxuIHNlbGJzdCBiZWkgTmV0enRvZApiZXN0cmFmdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRXMgcmVpY2h0IGlobSBuaWNodCBkYXMgZXIgZGllIFdlbHQgdmVybmljaHRldCEgKE1vcmdvdGgsIDEyLiBKdWwgMTk5NiwgMTA6MzI6NTgpOgp+IyEgcm49V2FyZ29uIHJ0PTgzNzE1OTY4NAp+IyEgdGlkPTgzNzEzMDU1OAp3ZXIgd2lsbCBzY2hvbiBlaW5lbiBnZWNsb250ZW4gY2F0d2VhemxlIGhhYmVuPwpgCmFyZ2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVpbmU/IGtlaW5lPyBvZGVyIHdpZSBvZGVyIHdhcz8gKEF2YWxvbiwgMTIuIEp1bCAxOTk2LCAxMjowNzo1NSk6CgpFYmVuIGluIGRlciBQb3N0Li4uCi0tLQpNZXNhcm9uIHNjaHJlaXQgcGxvZXR6bGljaCBlbnRzZXR6dCBhdWYgdW5kIHNjaHVic3QgZWluZSBrZWluZSB3ZWlzc2UgTWF1cyB2b24Kc2VpbmVyIFNjaHVsdGVyLCBkaWUgZGFyYXVmaGluIHF1aWVrZW5kIGRhdm9ubGFldWZ0LgotLS0KCnVlYmVyIGdlbmlhbGUgdHlwb3MgZ3JpbnNlbmQsCmF2YWxvbiAoMnRpIGkuQS4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGphIDopIChBbmF0b2wsIDEyLiBKdWwgMTk5NiwgMTM6Mzc6MjQpOgoKCkR1IHNhZ3N0OiBQYXJ0eW1vbnN0ZXIgZ2liIGFsbGVuIEFybWFnZWRkb24KPiBEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEFybWFnZWRkb24gbGllZ3QgZG9jaCBhbSBCb2RlbiBydW0uCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcsIG1hbCBkaWUgZ2VtZWluZSBWZXJzaW9uIDspIChHdXlicnVzaCwgMTIuIEp1bCAxOTk2LCAyMjo0NDoxMSk6CgpbQWJlbnRldWVyOkdvcmRvXSBXaWUga29tbSBpY2ggdm9uIE9ya2hhdXNlbiB6dXIgR2VmYWVuZ25pc2luc2VsPwpbQWJlbnRldWVyOkRhbnRlXSB0b2V0ZW4KW0FiZW50ZXVlcjpHb3Jkb10gRWluZmFjaCBpcmdlbmR3ZW4gdG9ldGVuPwoKbmUgTWludXRlIHNwYWV0ZXI6Cgo+IFtUb2Q6TGFyc10gRWluIFN0YWR0b3JrIGhhdCBnZXJhZGUgR29yZG8gdW1nZWJyYWNodC4KW1RvZDpFaW4gU3RhZHRvcmtdIFN0cnJycnJyaWtlCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGVyIGFybWUgTG9yZW56IDopIChDaGljb2xhLCAxMy4gSnVsIDE5OTYsIDExOjU3OjEyKToKRGEgc3RlaWd0IG1hbiBzbyBmcmllZGxpY2ggYXVzIHNlaW5lbSBOZWJlbCBhdXMgOgoKR3JhdWVyIE5lYmVsLgpEaWUgSHlkcmEuCkJydWRlciBMb3JlbnouCiAgRGllIEh5ZHJhIGdyZWlmdCBEaWNoIG1pdCBpaHJlbiBzdGFjaGVsYmV3ZWhydGVuIFNjaHdpbmdlbiBhbi4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIE1vcm90ZS11a2UgYWIuCioqKiAxOTQgNjQKICBEaWUgSHlkcmEgdmVyZmVobHQgRGljaC4KKioqIDE5NCA2MQogIER1IGdyZWlmc3QgZGllIEh5ZHJhIG1pdCBlaW5lbSBnZWx1bmdlbmVuIFNvdG8tc2h1dG8tdWNoaSBhbi4KICBEdSBzY2hsYWVnc3QgZGllIEh5ZHJhIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCkVpbiBIeWRyYWtvcGYgc2NobGFlbmdlbHQgc2ljaCBwcnVlZmVuZCB1bWJsaWNrZW5kIGhlcmVpbi4KICBEZXIgSHlkcmFrb3BmIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gZnVlcmNodGVybGljaGVuIEdlYmlzcyAgYW4uCiAgRHUgd2VocnN0IGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBVY2hpLXVkZS11a2UgYWIuCioqKiAxOTQgNjAKICBEZXIgSHlkcmFrb3BmIHZlcmZlaGx0IERpY2guCkVpbiBIeWRyYWtvcGYgc2NobGFlbmdlbHQgc2ljaCBwcnVlZmVuZCB1bWJsaWNrZW5kIGhlcmVpbi4KICBEZXIgSHlkcmFrb3BmIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gZnVlcmNodGVybGljaGVuIEdlYmlzcyAgYW4uCiAgRHUgd2VocnN0IGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBOYWl3YW4tbmFnYXNoaS11a2UgYWIuCioqKiAxOTQgNTkKICBEZXIgSHlkcmFrb3BmIHZlcmZlaGx0IERpY2guCkVpbiBIeWRyYWtvcGYgc2NobGFlbmdlbHQgc2ljaCBwcnVlZmVuZCB1bWJsaWNrZW5kIGhlcmVpbi4KICBEZXIgSHlkcmFrb3BmIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gZnVlcmNodGVybGljaGVuIEdlYmlzcyAgYW4uCiAgRHUgd2VocnN0IGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBHYWl3YW4tbmFnYXNoaS11a2UgYWIuCioqKiAxOTQgNTgKICBEZXIgSHlkcmFrb3BmIHZlcmZlaGx0IERpY2guCkVpbiBIeWRyYWtvcGYgc2NobGFlbmdlbHQgc2ljaCBwcnVlZmVuZCB1bWJsaWNrZW5kIGhlcmVpbi4KICBEZXIgSHlkcmFrb3BmIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gZnVlcmNodGVybGljaGVuIEdlYmlzcyAgYW4uCiAgRHUgd2VocnN0IGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBTb3RvLWFzaGliby1rYWtlLXVrZSBhYi4KKioqIDE5NCA1NwogIERlciBIeWRyYWtvcGYgdHJpZmZ0IERpY2guCioqKiAxODkgNTcKRWluIEh5ZHJha29wZiBzY2hsYWVuZ2VsdCBzaWNoIHBydWVmZW5kIHVtYmxpY2tlbmQgaGVyZWluLgogIERlciBIeWRyYWtvcGYgZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbSBmdWVyY2h0ZXJsaWNoZW4gR2ViaXNzICBhbi4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIEhhaXdhbi1uYWdhc2hpLXVrZSBhYi4KKioqIDE4OSA1NgogIERlciBIeWRyYWtvcGYgdmVyZmVobHQgRGljaC4KRWluIEh5ZHJha29wZiBzY2hsYWVuZ2VsdCBzaWNoIHBydWVmZW5kIHVtYmxpY2tlbmQgaGVyZWluLgogIERlciBIeWRyYWtvcGYgZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbSBmdWVyY2h0ZXJsaWNoZW4gR2ViaXNzICBhbi4KICBEdSB2ZXJzdWNoc3QsIGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBIYWl3YW4tbmFnYXNoaS11a2UgYWJ6dXdlaHJlbi4KKioqIDE4OSA1NQogIERlciBIeWRyYWtvcGYgdHJpZmZ0IERpY2ggc2VociBoYXJ0LgoqKiogMTc4IDU1CkVpbiBIeWRyYWtvcGYgc2NobGFlbmdlbHQgc2ljaCBwcnVlZmVuZCB1bWJsaWNrZW5kIGhlcmVpbi4KICBEZXIgSHlkcmFrb3BmIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gZnVlcmNodGVybGljaGVuIEdlYmlzcyAgYW4uCiAgRHUgdmVyc3VjaHN0LCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gVWNoaS11ZGUtdWtlIGFienV3ZWhyZW4uCioqKiAxNzggNTQKICBEZXIgSHlkcmFrb3BmIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KKioqIDE2MyA1NApFaW4gSHlkcmFrb3BmIHNjaGxhZW5nZWx0IHNpY2ggcHJ1ZWZlbmQgdW1ibGlja2VuZCBoZXJlaW4uCiAgRGVyIEh5ZHJha29wZiBncmVpZnQgRGljaCBtaXQgc2VpbmVtIGZ1ZXJjaHRlcmxpY2hlbiBHZWJpc3MgIGFuLgogIER1IHdlaHJzdCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gVWNoaS11ZGUtdWtlIGFiLgoqKiogMTYzIDUzICBEdSB2ZXJzdWNoc3QsIGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBOYWl3YW4tbmFnYXNoaS11a2UgYWJ6dXdlaHJlbi4KKioqIDE0MSA1MQogIERlciBIeWRyYWtvcGYgdHJpZmZ0IERpY2ggc2VociBoYXJ0LgoqKiogMTI5IDUxCkVpbiBIeWRyYWtvcGYgc2NobGFlbmdlbHQgc2ljaCBwcnVlZmVuZCB1bWJsaWNrZW5kIGhlcmVpbi4KICBEZXIgSHlkcmFrb3BmIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gZnVlcmNodGVybGljaGVuIEdlYmlzcyAgYW4uCiAgRHUgdmVyc3VjaHN0LCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gSGFpd2FuLW5hZ2FzaGktdWtlIGFienV3ZWhyZW4uCioqKiAxMjkgNTAKICBEZXIgSHlkcmFrb3BmIHRyaWZmdCBEaWNoLgoqKiogMTI1IDUwCioqKiAxMjUgNDcKICBEdSBncmVpZnN0IGRlbiBIeWRyYWtvcGYgbWl0IGVpbmVtIGdlbHVuZ2VuZW4gU290by1zaHV0by11Y2hpIGFuLgogIER1IHRyaWZmc3QgZGVuIEh5ZHJha29wZiBzZWhyIGhhcnQuCiAgRGllIEh5ZHJhIGdyZWlmdCBEaWNoIG1pdCBpaHJlbiBzdGFjaGVsYmV3ZWhydGVuIFNjaHdpbmdlbiBhbi4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIEdhaXdhbi1uYWdhc2hpLXVrZSBhYi4KKioqIDEyNSA0NgogIERpZSBIeWRyYSB0cmlmZnQgRGljaCBoYXJ0LgoqKiogMTE5IDQ2CgpJY2ggaGFiIG5hY2hnZXphaGx0ICEgU2llIGhhdCBub2NoIGFsbGUgS29lcGZlIDspIAoKQ2hpY29sYSwgaW56d2lzY2hlbiA0IG1hbCBiZWkgSW5mZXJubyBnZXN0b3JiZW4gKCAzIG1hbCBhbiBkZXIgc2VsYmVuIFN0ZWxsZTspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKk9obmUgVW50ZXJ0aXRlbCogKEx1ZywgMTMuIEp1bCAxOTk2LCAxNzoxMjozOSk6Cn4jISBybj1MZWNodWNrIHJ0PTgzNzE1ODg0NQp+IyEgdGlkPTgzNzE1ODg0NQpBbnR3b3J0OgoKa2VpbmUgMngyIG0gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEFsYm9pbiwgMTUuIEp1bCAxOTk2LCAxNDowMTo1OCk6CkhldXRlIGJpbiBpY2ggbWFsIHdlbmlnZXIgZnJvZWhsaWNoIHVuZCBkZW0gZW50c3ByZWNoZW5kIHNpZWh0IGF1Y2ggbWVpbgpTcHJ1Y2ggZGVyIFdvY2hlIGF1czoKCkRhcyBsYW5nZ2VzdWNodGUgWndpc2NoZW5nbGllZCB6d2lzY2hlbiBkZW0gVGllciB1bmQgZGVtIHdhaHJoYWZ0IGh1bWFuZW4KTWVuc2NoZW4gc2luZCB3aXIuCgogICAgICAgICAgICAgIEtvbnJhZCBMb3JlbnoKCnVuZCB3ZWlsIGljaCBub2NoIGxhbmdlIG5pY2h0IGdlbnVnIGhhYiwgc2V0eiBpY2ggZ2xlaWNoIG5vY2ggZWlucyBkcmF1ZjoKCkRpZSBNZW5zY2hlbiBzaW5kIHNlbHRlbiBiZXNzZXIgYWxzIGRpZSBVbXN0YWVuZGUgaW4gZGVuZW4gc2llIGxlYmVuLgogICAgICAgICAgICAgICAgICAgICAoVmVyZmFzc2VyIHVuYmVrYW5udCkKCkFsYm9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGljaHQgdm9yYmVpLi4uIChIYXJkaWwsIDE1LiBKdWwgMTk5NiwgMTQ6MTM6MDQpOgpEYSB3YXJ0ZXQgbWFuIHN0dW5kZW5sYW5nIGF1ZiBEdXJpYW4sIGRhbm4gaXJnZW5kd2FubiBoYXQgbWFuIGtlaW5lIEx1c3QgbWVocgp1bmQgd2lsbCBzaWNoIGdlcmFkZSBhdXNsb2dnZW4uIFVuZCBkYW5uIGRhcyAodW5nZXNjaG5pdHRlbik6CgpzYWdlIGJpbiBncmFkIGFtIEdlaGVuLgpEdSBzYWdzdDogYmluIGdyYWQgYW0gR2VoZW4uCj4gW0FsbGdlbWVpbjpCZW5kZWlnaWRdIGFyZ2wKd2lua2UKRHUgd2lua3N0Lgo+IFtBbGxnZW1laW46QmVuZGVpZ2lkIHZlcmxlZ3QgZGFzIGF1ZiAtbV0KZiBkdXJpYW4KRHVyaWFuIGlzdCBuaWNodCBhbndlc2VuZC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogQnJhdW5zY2h3ZWlnClp1bGV0enQgYXVzZ2Vsb2dndDogTW9uLCAxNS4gSnVsIDE5OTYsIDExOjA2OjMxICgwMzowNDowOSkKVm9sbGVyIE5hbWU6IER1cmlhbiBkZXIgSGVyciBkZXMgU2FuZGVzClJhc3NlOiBXYW5kZXJkdWVuZSwgIEdpbGRlOiBTYW5kYnVkZGxlciwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogNzJkIDA0OjUxOjI0LCAgIE1hZ2llcmxldmVsOiA0NQpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBNaXQsIDI1LiBNYXIgMTk5MiwgMTE6MzM6NDIKVmVyaGVpcmF0ZXQgbWl0OiBTZWluZXIgd3VuZGVyc2Nob2VuZW4sIGhlaXNzZW4sIHNhbmRpZ2VuIFd1ZXN0ZQpSZWdpb25zbWFnaWVyIHZvbiAgICAgOiBXdWVzdGUuClJlZ2lvbnNtaXRhcmJlaXRlciB2b246IFd1ZXN0ZS4KPiBbQWxsZ2VtZWluOkF0b3ogZ3JpbnN0XQpzY2hsYWZlIGVpbgpEdXJpYW4gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGllc2VyIEJlZmVobCBiZWVuZGV0IERlaW5lIFZlcmJpbmR1bmcgbWl0IE1vcmdlbmdyYXVlbi4gRHUgYmVoYWVsdHN0IERlaW5lClNhY2hlbiwgYWJlciBWb3JzaWNodDogV2VubiBNb3JnZW5HcmF1ZW4gYWJzdHVlcnp0LCB3YWVocmVuZCBEdSB3ZWcgYmlzdCwKdmVybGllcnN0IER1IHNpZSBkb2NoLCBnZW5hdXNvLCBhbHMgd2VubiBEdSBEZWluZSBWZXJiaW5kdW5nIG1pdCAiZW5kZSIKYmVlbmRldCBoYWV0dGVzdCAoYWxsZXJkaW5ncyBiZWtvbW1zdCBEdSBkYW5uIGVpbmUgZmluYW56aWVsbGUKRW50c2NoYWVkaWd1bmcpLgpBQkVSOiBCRU5VVFpVTkcgQVVGIEVJR0VORSBHRUZBSFIgISEhCkNsb3NpbmcgZG93bi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGljaHQgdm9yYmVpLi4uIChEdXJpYW4sIDE1LiBKdWwgMTk5NiwgMTQ6NTk6NDQpOgp+IyEgcm49SGFyZGlsIHJ0PTgzNzQzMjc4NAp+IyEgdGlkPTgzNzQzMjc4NApNaXN0LCBlaW5lIFNla3VuZGUgenUgZnJ1ZWggOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hpem9waHJlbmllIChBbm5paGlsYXRvciwgMTUuIEp1bCAxOTk2LCAxNTowMzoyMSk6CkRhcyBpc3QgVG9ldGVyLiBFciBpc3QgZnVlciBlaW5lbiBFbGYgbWl0dGVsZ3Jvc3MuCkFubmloaWxhdG9yLCBkZXIgamVkZW4gTWVjaCB2ZXJuaWNodGV0LgouLi4xMDAlLi4uCkVyIGlzdCBGcmV1bmQgdm9uIEZhdWxza2VtcGVyLCBSaW5nZWxuYXR6LCBLb3R6YnJvY2tlbiwgVG9kZXNlbmdlbCwKR3J1bWJsZW1hbiwgQmFjYXRhLCBGYWNlLCBMYXNlcm1hbiwgU21hcnRlLCBFYXJlbmRpbCwgTm9jYXJkaXVzLCBLYW50b3IsClphaXZhbiwgUGF0cnluLCBNc2MsIEdhbmRvLCBIaWxscGVydCwgTHljYXIsIEdvcmRvLCBGb3gsIE1pY3JvLCBMZWZ0eSwgVHdlZWcsCk1hbmdvLCBGcmV1bmQsIFBhbnRoZXIsIFR3aWdneSwgSnVzdWZmLCBNYWhhdG1hLCBQcmVkYXRvciwgU2x5Zm94LCBOYXR1cmUsCkRpZWRlciwgU2xvYW5lLCBGcmllZGEsIEdhbGFyaW9uLCBTZW1tZWwsIFJlZ2lzLCBNaWlyYSB1bmQgSXdhbi4KVG9ldGVyIGhhdCBlaW4gTmFtZW5zc2NoaWxkY2hlbiBtaXQgZGVyIEF1ZnNjaHJpZnQgIlRvZXRlciIsIGVpbmVuCk1BU1RFUkJMT0NLLCBlaW5lbiBncnVlbmVuIEd1ZXJ0ZWwsIGVpbmVuIEZ1c3NyaW5nIHVuZCBlaW5lbiBHaSBhbiwga2VpbmUKV2FmZmUgZ2V6dWVja3QgdW5kIHRyYWVndCBlaW4gRnJldW5kc2NoYWZ0c2JhbmQsIGVpbiBQYWtldCB1bmQgZWluIFN0aXJuYmFuZApkZXMgR28tQ2x1YnMuCgphY2ggamEsIGJlaSBrd2VyIHN0YW5kIEFubmloaWxhdG9yIGRhIHVuZCBiZWkgd2VyIGRlciBUb2V0ZXIgdWVidCBLYXJhdGUuCgpKZXR6dCBkaWUgUHJlaXNmcmFnZSA6IFdFUiBCSU4gSUNIID8gOykKClBTOiBTYW1tZWx0IG5pZSBmcmVtZGVyIExldXRlIE5hbWVuc3NjaGlsZGNoZW4gYXVmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKenUgbmFoID8gKE1vcmdvdGgsIDE2LiBKdWwgMTk5NiwgMTM6Mzk6MzEpOgo+RWluIEtyZWlzIHdpcmJlbG5kZXIgTWVzc2VyIHVtZ2lidCBhdWYgZWlubWFsIE15c2VsZi4gRHUgc29sbHRlc3QgaWhtIG5pY2h0Cnp1Cm5haGUga29tbWVuIQogIE15c2VsZiBncmVpZnQgZGllIFdhY2hlIG1pdCBlaW5lbSBNb3JnZW5zdGVybiBhbi4KICBNeXNlbGYgdHJpZmZ0IGRpZSBXYWNoZSBzZWhyIGhhcnQuCkRpZSBXYWNoZSBmYWVsbHQgdG90IHp1IEJvZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGFzaGEgaXMgamEgZWtsaWcuLiAoR3V5YnJ1c2gsIDE2LiBKdWwgMTk5NiwgMTk6Mjk6MDQpOgo+IFRhc2hhIHJ1ZnQ6IENpYW8gTWFtYSEKRGllIEh5ZHJhIGVyaGVidCBzaWNoIGF1cyBkZW0gVGFsIGRlciBMdXBpbmVuLgoKCk9obmUgU2Nobml0dAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRhc2hhLi4uLj8hIChUYXNoYSwgMTYuIEp1bCAxOTk2LCAxOToyOTo0Nyk6Cn4jISBybj1BbmF0b2wgcnQ9ODM3NTM4MTUwCn4jISB0aWQ9ODM3NTM4MTUwCkphamEsIGxhY2h0IG51ciBhbGxlIHVlYmVyIG1laW5lIEhlcmt1bmZ0LiBVbG8gd2lyZCBldWNoIHNoY29uIGRhZnVlciB6YXBwZW4hCgpUYXNoYSAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVGFzaGEuLi4uPyEgKEFuYXRvbCwgMTYuIEp1bCAxOTk2LCAxOTozMDowNyk6Cn4jISBybj1UYXNoYSBydD04Mzc1MzgxODcKfiMhIHRpZD04Mzc1MzgxNTAKCldlciBpc3QgVWxvPyBEZWluZSBUYW50ZT8KCkFuYXRvbCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFRhc2hhLi4uLj8hIChBc21vZGlzLCAxNi4gSnVsIDE5OTYsIDE5OjMxOjMyKToKfiMhIHJuPUFuYXRvbCBydD04Mzc1MzgyMDcKfiMhIHRpZD04Mzc1MzgxNTAKVWxvIGlzdCBIeWRyYXMgU2Nod2VzdGVyID8gaG1tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcmRiZWVybWF0c2NoPyAoU2VtaXJhLCAxNi4gSnVsIDE5OTYsIDE5OjQ2OjI1KToKR3JhZCBlYmVuIHZvciBkZXIgRXJkYmVlcnBsYW50YWdlLi4uCgpVbnQgRXJkYmVlcmVuCgpEdSBrYW5uc3Qgc2llIGVpbmZhY2ggYmV0cmV0ZW4sIGluZGVtIER1IG5hY2ggT3N0ZW4gZ2Voc3QuCgpBaCBqYS4uLipzdGFtcGYqIEVyZGJlZXJtYXRzY2guLi4KCipncmluc2VuZCogU2VtaXJhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5iZWthbm50ZXMgKEphcmllbCwgMTYuIEp1bCAxOTk2LCAyMTo1MjoyNCk6CkhJIQpJY2ggZ2xhdWIsIG1hbiBzb2xsdGUgc2ljaCBoaWVyIGltIE1HIHZvciBhbGxlbSBVbmJla2FubnRlbiB1bmQgCkdlaGVpbW5pc3ZvbGxlbiBpbiBhY2h0IG5laG1lbiEgLS0+IHNpZWhlIC1UKgoKRWluIGtsZWluZXIgQXVzenVnOgoKW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgU2tlbGV0dApbVG9kOkxhcnNdIHVtZ2VicmFjaHQuIDwxOTozNDowMj4KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgRXNjdWJhcgpbVG9kOkxhcnNdIHVtZ2VicmFjaHQuIDwxOTozOTozNT4KW1RvZDpMYXJzXSBFaW4gQWxsaWdhdG9yIGhhdCBnZXJhZGUgSm9yZ29zY2ggdW1nZWJyYWNodC4gPDE5OjUyOjExPgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBOaWNodHMgdW1nZWJyYWNodC4KW1RvZDpMYXJzXSA8MjE6MDE6Mzk+CltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIExhdXJpbiB1bWdlYnJhY2h0LgpbVG9kOkxhcnNdIDwyMToxMjo1Mj4KW1RvZDpMYXJzXSBBbGZyZWQgaGF0IGdlcmFkZSBTb25qb3JrIHVtZ2VicmFjaHQuIDwyMTozMzo1Mj4KW1RvZDpBbGZyZWRdIER1bXBmYmFja2UuIDwyMTozMzo1Mj4KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgS2VsZGVyIHVtZ2VicmFjaHQuCltUb2Q6TGFyc10gPDIxOjM2OjMwPgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBCZW9iYWNodGVyCltUb2Q6TGFyc10gdW1nZWJyYWNodC4gPDIxOjM2OjQxPgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBTaW50cmFtCltUb2Q6TGFyc10gdW1nZWJyYWNodC4gPDIxOjM2OjQ1PgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBBc21vZGluYQpbVG9kOkxhcnNdIHVtZ2VicmFjaHQuIDwyMTozODo0MT4KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgU3RldmUgdW1nZWJyYWNodC4KW1RvZDpMYXJzXSA8MjE6Mzg6NDk+CltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIFNpbnRyYW0KW1RvZDpMYXJzXSB1bWdlYnJhY2h0LiA8MjE6Mzk6NTU+CltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIEtlbGRlciB1bWdlYnJhY2h0LgpbVG9kOkxhcnNdIDwyMTo0MToyMj4KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgQmVvYmFjaHRlcgpbVG9kOkxhcnNdIHVtZ2VicmFjaHQuIDwyMTo0MjoyNz4KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgQXNtb2RpbmEKW1RvZDpMYXJzXSB1bWdlYnJhY2h0LiA8MjE6NDQ6MTI+CltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIFNpbnRyYW0KW1RvZDpMYXJzXSB1bWdlYnJhY2h0LiA8MjE6NDQ6MzU+CltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIFN0ZXZlIHVtZ2VicmFjaHQuCltUb2Q6TGFyc10gPDIxOjQ1OjQ1PgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBUb2Rlc2VuZ2VsCltUb2Q6TGFyc10gdW1nZWJyYWNodC4gPDIxOjQ3OjQxPgoKCk5hamEsIGljaCB3ZXJkIGVzIGplZGVuZmFsbHMgOikKCkphcmllbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFsIGVpbmVuIEluc2lkZXIuLi4gKE5pY2h0cywgMTYuIEp1bCAxOTk2LCAyMjo1OTozMSk6CgoKW0FsbGdlbWVpbjpMeWNhcl0gTWFuIGtvZW5udGUgbWVpbmVuIGRpZSBzdGVyYmVuIGFic2ljaHRsaWNoCgoKIiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE1vcmdvdGgsIDE3LiBKdWwgMTk5NiwgMTM6MTE6MzUpOgpCb29naWUgcnVmdDogSElMRkUKW1RvZDpMYXJzXSBFaW4gU2NoYXR0ZW5tYW5uIGhhdCBnZXJhZGUgQm9vZ2llIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpiZWltIDJoYXVwdC4gKFJhZmZpLCAxNy4gSnVsIDE5OTYsIDE0OjQxOjM2KToKCj4gc2NoYXUKRHUgc3RlaHN0IGF1ZiBkZW0gRGFjaGJvZGVuIGVpbmVzIEhhdXNlcyBpbiBNb3Jvbi4gT2J3b2hsIGRhcyBEYWNoIG5vY2gKcmVsYXRpdgpndXQgZXJoYWx0ZW4gaXN0LCBmYWVsbHQgZG9jaCBkdXJjaCBlaW5pZ2UgTG9lY2hlciBub2NoIGV0d2FzIExpY2h0IGluIGRlbgpSYXVtCnVuZCBiZWxldWNodGV0IGRpZSBVbm9yZG51bmcgZGllIGhpZXIgaGVycnNjaHQuIE1laHJlcmUgTGFnZXJtYXR0ZW4sIGVpbgptb3JzY2hlciBTY2hyYW5rIHVuZCBlaW5pZ2UgVm9ycmFldGUgaW4gZGVuIEVja2VuIGRldXRlbiBkYXJhdWYgaGluLCBkYXNzCmRpZXNlciBSYXVtIGFuc2NoZWluZW5kIG5vY2ggaW4ganVlbmdzdGVyIFplaXQgYmVudXR6dCB3dXJkZSAtIHVuZCB6d2FyIG5pY2h0CnZvbiBTY2hhdHRlbiBvZGVyIHNvbnN0aWdlbiB1ZWJlcm5hdHVlcmxpY2hlbiBXZXNlbiwgc29uZGVybiB2b24gaXJnZW5kamVtYW5kLApkZXIgaGllciBlaW4ga2xlaW5lcyBWZXJzdGVjayBmdWVyIHNlaW5lIERpZWJlc2JldXRlIGVpbmdlcmljaHRldCBoYXQuLi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHVudGVuLgpLcnVmdHVyIGRlciBEZW5rZGFlbW9uLgpFaW4ga2xlaW5lciBEYWVtb24gbmFtZW5zIEludGFyYmlyLgpFaW4gU2NoYWVmZXJodW5kIG5hbWVucyBHb256by4KU2xvYW5lIGRlciBmaW5zdGVyZSBDaGFvcy1LYWVtcGZlci4KPgpHb256byBoZWJ0IHNlaW4gQmVpbiAuLi4KCk5hIGhldXRlIHdhcnRldCBqYSB3aWVkZXJtYWwgYWxsZXMgYXVmIGRpZSBNYXVzOikKCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0Zi4uLiAoQW5hdG9sLCAxNy4gSnVsIDE5OTYsIDE1OjE1OjI5KToKCldlbm4gU3BpZWxlciBzbyBtaXQgVEYgdW1nZWhlbiB3dWVyZGVuLCB3aWUgTWFnaWVyIGRpZXMgdHVuLi4uCgoKSmVtYW5kIHRlaWx0IERpciBtaXQ6IC9kZWYgLXdtZ20gLXAyIC1tcmVnZXhwIC10JyhbQS1aXS4qKSBydWZ0OiBEYW5rZSBNZXJsaW4nCkplbWFuZCB0ZWlsdCBEaXIgbWl0OiA9ICFlY2hvYWxsIE1lcmxpbiBydWZ0OiBCaXR0ZSAlUDEhCk1lcmxpbiBydWZ0OiBCaXR0ZSBEdSB0ZWlsc3QgQW5hdG9sIG1pdDogL2RlZiAtd21nbSAtcDIgLW1yZWdleHAgLXQnKFtBLVpdLiopIQpKZW1hbmQgcnVmdDogc2NoZWlzcyB0ZiA6LSkKCi4uLm11ZXNzdGVuIHNpZSB1bSBpaHJlIFNhdmVmaWxlcyBiYW5nZW4gOikKCkFuYXRvbCwga3JpbmdlbHQgc2ljaCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCip3YWFhYWgqIDopKSkgKEthbGxpb3BlLCAxNy4gSnVsIDE5OTYsIDE2OjAyOjUzKToKCj4gd3VuZGVyCkR1IHdpcmtzdCBlaW4gV3VuZGVyLgpFaW5lIFdhcm51bmcgZXJzY2hlaW50IHZvciBEZWluZW0gaW5uZXJlbiBBdWdlOiBIdWV0ZSBEaWNoIHZvciBkZW4gSWRlbiBkZXMKTWFlcnohCgpPY2ggV2FyZ29uLCBJQ0ggd2Vpc3MgZGFzIGRvY2gsIGRhcyBicmF1Y2hzdCBEdSBtaXIgZWNodCBuaWNodCBzYWdlbi4gSGFldHRlc3QKRHUgZGFzIG1hbCBaZXBoeXIgd2lzc2VuIGxhc3Nlbiwgd2FlcmUgZXMgYmVzdGltbXQgbmljaHQgc28gc2NobGltbSBnZWtvbW1lbi4KCkthbGxpb3BlLCByb3RmbG5kLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRhc2hhLi4uLj8hIChBenp1cm8sIDE3LiBKdWwgMTk5NiwgMTY6MzI6MzEpOgp+IyEgcm49QXNtb2RpcyBydD04Mzc1MzgyOTIKfiMhIHRpZD04Mzc1MzgxNTAKQU5LVUVORElHVU5HOgoKU29sbHRlIHNpY2ggbm9jaGVpbm1hbCBlaW4gU3RlcmJsaWNoZXIgZXJkcmVpc3N0ZW4sIEhvaG4gdW5kIFNwb3R0IHVlYmVyIGRpZQpoZXJrdW5mdCBtZWluZXIgVG9jaHRlciB6dSBzYWVoZW4gb2RlciBhYmVyIG1laW5lIEZyYXUgdmVyYmFsIGFuenVncmVpZmVuLCBzbwp3ZXJkZSBpY2ggc2VsYmlnZW4gbWl0IGRlciBmYWVsc2NobGljaCB6dSBUYXNoYSBNdXR0ZXIgZXJrbGFlcnRlbiBpbgpWZXJiaW5kdW5nIGJyaW5nZW4uCihPZGVyIGF1Y2ggbWl0IHp3ZWluIG9kZXIgZHJlaW4uLi4pCgpBenp1cm8gLSBVcnZhdGVyIGRlcyBDbGFucwoKUC5TLjogR3J1c3MgYW4gT25rZWwgUmlrdXMhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBUYXNoYS4uLi4/ISAoQXp6dXJvLCAxNy4gSnVsIDE5OTYsIDE2OjQyOjI3KToKfiMhIHJuPUF6enVybyBydD04Mzc2MTM5NTEKfiMhIHRpZD04Mzc1MzgxNTAKUGVpbmxpY2guIFNvIHZpZWxlIEZlaGxlciB1bmQgbm9jaCBuaWNodCBtYWwgYmVzb2ZmZW4uIDooCkF6enVybwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVGFzaGEuLi4uPyEgKEFuYXRvbCwgMTcuIEp1bCAxOTk2LCAxNjo1MDo1Myk6Cn4jISBybj1Benp1cm8gcnQ9ODM3NjEzOTUxCn4jISB0aWQ9ODM3NTM4MTUwCgpBZWgsIEF6enVyby4uLiAgYml0dGUgX3dlbl8gd2lsbHN0IER1IG1pdCBVbG8gaW4gVmVyYmluZHVuZyBicmluZ2VuPwoKQW5hdG9sIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVGFzaGEuLi4uPyEgKEJhbWJ1bGtvLCAxNy4gSnVsIDE5OTYsIDE3OjIzOjIwKToKfiMhIHJuPUF6enVybyBydD04Mzc2MTM5NTEKfiMhIHRpZD04Mzc1MzgxNTAKR2VuYXUgbGFzc3QgbWVpbmUgU2Nod2VzdGVyIGluIGZyaWVkZW4uCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBY3JpbW9uLCAxNy4gSnVsIDE5OTYsIDE3OjU0OjU3KToKCltBYmVudGV1ZXI6R2hvcndpbl0gQ2hpY29sYSBoYXQgZGVuIEtvZW5pZyBhbGxlaW4gZ2VwbGFldHRldCwgVGphIGRhbm4gZWluCltBYmVudGV1ZXI6R2hvcndpbl0gYW5kZXJlcyBNYWwgRnJldW5kZSEKW1RvZDpMYXJzXSBFaW4gV2FlY2h0ZXIgaGF0IGdlcmFkZSBHaG9yd2luIHVtZ2VicmFjaHQuCgp1bmdlc2Nobml0dGVuLCBvaG5lIEtvbW1lbnRhcgoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBUYXNoYS4uLi4/ISAoVGFzaGEsIDE3LiBKdWwgMTk5NiwgMjE6MjU6MzYpOgp+IyEgcm49QmFtYnVsa28gcnQ9ODM3NjE3MDAwCn4jISB0aWQ9ODM3NTM4MTUwCkFjaCBqYSwgRmFtaWxpZSBpc3Qgc2Nob24gd2FzIHNjaG9lbmVzLi4uLgoKVGFzaGEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgOikgKEFsaW5lLCAxOC4gSnVsIDE5OTYsIDA5OjU2OjA0KToKW1NlaGVyOkVsdm5pa10gZWluZXIgbmUgQWhudW5nIHdhcyBiZW4gbWl0IGRlciBOZXVpZ2tlaXQgaW4gZGVyIFBvbGFycmVnaW9uCltTZWhlcjpFbHZuaWtdIG1laW50ID8gCltTZWhlcjpKYXNwZXJdIGdlaCBtYWwgZ3Vja2VuIApbU2VoZXI6RWx2bmlrXSB3aWxsIGljaCBncmFkIG1hY2hlbiAKCi4uLi4uLgoKW1NlaGVyOkVsdm5pa10gd2Vpc3MgZWluZXIgd28gdW5nZWZhZWhyIGljaCBkYXMgbmV1ZSBNb25zdGVyIHp1IHN1Y2hlbiBoYWJlID8KW1NlaGVyOkVsdm5pa10gCltTZWhlcjpKYXNwZXJdIC0rVCAKW1NlaGVyOkxldHRpXSB3ZWxjaGVzIG5ldWUgbW9uc3Rlcj8gCltTZWhlcjpKYXNwZXJdIEZMVyA6KSAKW1NlaGVyOkVsdm5pa10gaGFoYSA6KSAKW1NlaGVyOkVsdm5payB0cml0dCBKYXBzZXJdCltTZWhlcjpFbHZuaWtdIGxpZXMgWmVpdHVuZyBMZXR0aSAKW1NlaGVyOkphc3Blcl0gaWNoIGthbm4gZGljaCBqYSBtYWwgenUgZWluZW0gdHJhbnNlbiAKW1NlaGVyOkVsdm5pa10gZGFubiB3aXJzdCBkdSBnZWxvZXNjaHQgCltTZWhlcjpKYXNwZXJdIHBmZGZmZmZmCltTZWhlcjpKYXNwZXJdIGljaCBoYWIgbmFycmVuZnJlaWhlaXQgCltTZWhlcjpFbHZuaWtdIGhtbSwgaGllciBpc3QgZWluIFR1bmRyYXdvbGYgLi4uIGlzdCBkZXIgbnVyIGluIGRlciBwYXJhd2VsdCA/CltTZWhlcjpFbHZuaWtdIGhlaGUsIHNjaGVpbnQgZGFzIG5ldWUgbW9uc3RlciB6dSBzZWluIApbVG9kOkxhcnNdIEVpbiBncm9zc2VyIFBpbmd1aW4gaGF0IGdlcmFkZSBFbHZuaWsgdW1nZWJyYWNodC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDE4LiBKdWwgMTk5NiwgMTU6NTI6MDcpOgoKIldvaGluIGRlciBXaW5kIGJsYWVzdCBtZXJrdCBtYW4gYmVzc2VyIGFuIGVpbmVtIEdyYXNoYWxtIGFscyBhbiBlaW5lcgptYWVjaHRpZ2VuIEVpY2hlLiIgKEhlcm1hbm4gRnJhZW5jaGVsKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYWphLiA6KSAoTW9yZ29uaWEsIDE5LiBKdWwgMTk5NiwgMDU6MjI6NTEpOgpFYmVuIGJlaSBkZXIgV29scGlRdWVzdDoKRHUgZ3JlaWZzdCBkZW4gU2Nod2FuIG1pdCBkZW0gU2Nod2VydCBhbi4KRHUgdHJpZmZzdCBkZW4gU2Nod2FuIHNlaHIgaGFydC4KRGVyIFNjaHdhbiBmYWVsbHQgdG90IHp1IEJvZGVuLgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0LgoKSW1tZXIgbm9jaCBncmluc2VuZDoKTW9yZ29uaWEuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVjaD8gKFN5bWJpb250LCAxOS4gSnVsIDE5OTYsIDA3OjUxOjAzKToKRWJlbiBnZXJhZGU6CgpEaWdnZXIgc2NoYXVmZWx0IERlaW4gR3JhYi4KRGlnZ2VyIHNjaHVic3QgRGljaCBuYWNoIFN1ZWRvc3RlbiBpbiBEZWluIEdyYWIuCltUb2Q6TGFyc10gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSBEaWdnZXIgdW1nZWJyYWNodC4KW1RvZDpFaW4gV2VnaGllcl0gR290Y2hhIQoKSGF0IGVyIHNpY2ggd29obCBsZWljaHQgdmVydGFuLiBPZGVyIGJpbiBpY2ggdG90PyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGFybmhlbG0uLi4gKE1haGF0bWEsIDE5LiBKdWwgMTk5NiwgMTM6NTA6MzgpOgoKRHUgemVyc2NobWV0dGVyc3QgUGFyYWxsZWx3ZWx0a2FyYXRlb3JrIG1pdCBWb2xsc3RyZWNrZXIuCkRlciBQYXJhbGxlbHdlbHRrYXJhdGVvcmsgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KW01vZXJkZXI6R2Vpc3QgZWluZXMgUGFyYWxsZWx3ZWx0a2FyYXRlb3Jrc10gSHVwcHMuIFNvIHdhciBkYXMgYWJlciBuaWNodApbTW9lcmRlcjpHZWlzdCBlaW5lcyBQYXJhbGxlbHdlbHRrYXJhdGVvcmtzXSBnZWRhY2h0LCBlaW4gSHlkcmFrb3BmLgoKTWFoYXRtYSBhbGlhcyBFaW4gSHlkcmFrb3BmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptYW4gc2luZCBkaWUgdmVyZnJlc3NlbiA7KSAoTWFuZ28sIDIwLiBKdWwgMTk5NiwgMDM6MjA6NTEpOgoKCgogICAgIE5ldWxpY2ggaW4gT3JraGF1c2VuIDspOgoKCj4gSGV5LCBzbyBzY2huZWxsIGdlaHQgZGFzIG5pY2h0Lgo6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExQIDIxMCAgIE1QIDE4NyAoLTIzKQpEdSB6ZXJzY2htZXR0ZXJzdCBPcmsgbWl0IHNlaHIgZ2VsdW5nZW5lbiBTb3RvLXNodXRvLXVjaGkuCmVpbiBPcmsgaXNzdCBlaW4gQnJvZXRjaGVuLgplaW4gT3JrIGlzc3QgZWluIEJyb2V0Y2hlbi4KZWluIE9yayBpc3N0IGVpbiBCcm9ldGNoZW4uCmVpbiBPcmsgaXNzdCBlaW4gQnJvZXRjaGVuLgplaW4gT3JrIGlzc3QgZWluIEJyb2V0Y2hlbi4KZWluIE9yayBpc3N0IGVpbiBCcm9ldGNoZW4uCmVpbiBPcmsgaXNzdCBlaW4gQnJvZXRjaGVuLgplaW4gT3JrIGlzc3QgZWluIEJyb2V0Y2hlbi4KZWluIE9yayBpc3N0IGVpbiBCcm9ldGNoZW4uCkVpbiBPcmsgc3RlY2t0IGVpbiBLcnVtbXNjaHdlcnQgenVydWVjay4KRWluIE9yayB6dWVja3QgZWluIEtydW1tc2Nod2VydC4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIE5hbWktZ2Flc2hpIGFiLgo6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExQIDIxMCAgIE1QIDE4NSAoLTIpCk9yayB2ZXJmZWhsdCBEaWNoIG1pdCBLcnVtbXNjaHdlcnQuCkR1IGVudGZlcm5zdCBkZW4gSGVsbSB1bmQgd2lyc3Qgd2llZGVyIHp1IE1hbmdvLgogIERlaW4gV3VyZnN0ZXJuIHplcmZldHp0IGRlcyBPcmtzIEJlaW4uCiAgRGVpbiBXdXJmc3Rlcm4gemVyZmV0enQgZGVzIE9ya3MgQmVpbi4KICBEZWluIFd1cmZzdGVybiB6ZXJmZXR6dCBkZXMgT3JrcyBCZWluLgogIERlaW4gV3VyZnN0ZXJuIHplcmZldHp0IGRlcyBPcmtzIEJlaW4uCiAgRGVpbiBXdXJmc3Rlcm4gemVyZmV0enQgZGVzIE9ya3MgQmVpbi4KSGV5LCBzbyBzY2huZWxsIGdlaHQgZGFzIG5pY2h0Lgo6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExQIDIxMCAgIE1QIDE3OCAoLTcpCkR1IHRyaWZmc3QgT3JrIHNlaHIgaGFydCBtaXQgZ2VsdW5nZW5lbiBTb3RvLXNodXRvLXVjaGkuCmVpbiBPcmsgaXNzdCBlaW4gQnJvZXRjaGVuLgplaW4gT3JrIGlzc3QgZWluIEJyb2V0Y2hlbi4KZWluIE9yayBpc3N0IGVpbiBCcm9ldGNoZW4uCmVpbiBPcmsgaXNzdCBlaW4gQnJvZXRjaGVuLgplaW4gT3JrIGlzc3QgZWluIEJyb2V0Y2hlbi4KZWluIE9yayBpc3N0IGVpbiBCcm9ldGNoZW4uCmVpbiBPcmsgaXNzdCBlaW4gQnJvZXRjaGVuLgplaW4gT3JrIGlzc3QgZWluIEJyb2V0Y2hlbi4KZWluIE9yayBpc3N0IGVpbiBCcm9ldGNoZW4uCmVpbiBPcmsgaXNzdCBlaW4gQnJvZXRjaGVuLgplaW4gT3JrIGlzc3QgZWluIEJyb2V0Y2hlbi4KZWluIE9yayBpc3N0IGVpbiBCcm9ldGNoZW4uCmVpbiBPcmsgaXNzdCBlaW4gQnJvZXRjaGVuLgplaW4gT3JrIGlzc3QgZWluIEJyb2V0Y2hlbi4KZWluIE9yayBpc3N0IGVpbiBCcm9ldGNoZW4uCmVpbiBPcmsgaXNzdCBlaW4gQnJvZXRjaGVuLgplaW4gT3JrIGlzc3QgZWluIEJyb2V0Y2hlbi4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIE1vcm90ZS10c3VrYW1pLXVrZSBhYi4KOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMUCAyMTAgICBNUCAxNzYgKC0yKQpPcmsgdHJpZmZ0IERpY2ggaGFydCBtaXQgS3J1bW1zY2h3ZXJ0Lgo6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExQIDIwMyAoLTcpICBNUCAxNzYKICBEZWluIFd1cmZzdGVybiB6ZXJmZXR6dCBkZXMgT3JrcyBCZWluLgoKCk1hbmdvLCBzZWhyIGVyc3RhdW50IHVlYmVyIGRpZSBnZWZyYWVzc2lna2VpdCBkZXIgb3JraGF1c2VuZXIgT3Jrcy4gOykKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbWFsIChBc21vZGlzLCAyMC4gSnVsIDE5OTYsIDA1OjA0OjExKToKd2FzIG5ldHRlcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG1hbCAoQXNtb2RpcywgMjAuIEp1bCAxOTk2LCAwNTowNToyNik6Cn4jISBybj1Bc21vZGlzIHJ0PTgzNzgzMTg1MQp+IyEgdGlkPTgzNzgzMTg1MQpXaWUgZXMgZGF6dSBrYW06CltBbGxnZW1laW46TWFuZ29dIHNjaHJlaWJ0IGRvY2ggbWFsIHdhcyBuZXR0ZXMgaW4gZGllIHplaXR1bmcgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN0dXBzJ2UhISAoTWVnYWVyZSwgMjIuIEp1bCAxOTk2LCAwMToxNjowOSk6CkVpbiBQYXJ0eWJyZXR0LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkVpbmUgWmVpdHVuZy4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkVpbiBIYW5kYnVjaCBmdWVyIEFuZmFlbmdlci4gCmVyaG9laGUKRHUgYmlzdCBqZXR6dCBNZWdhZXJlIGRpZSBGYWVocnRlbnN1Y2hlcmluIChTdHVmZSA2KS4gICAgICAgICAKZXJob2VoZQpEaXIgZmVobGVuIGJpcyB6dXIgbmFlY2hzdGVuIFN0dWZlIG5vY2ggMTQ5IFN0dWZlbnB1bmt0ZS4gCkdMVUVDSyBHRUhBQlQhISEKCk1lZ2FlcmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlciBsb2VzdCBkZW5uIG51biBkaWUgcXVlc3Q/ISAoSHllbmEsIDIyLiBKdWwgMTk5NiwgMDE6MjI6MjgpOgpbQWJlbnRldWVyOjxRdWVzdD5dIEh5ZW5hIGhhdCBnZXJhZGUgZWluIEFiZW50ZXVlciBiZXN0YW5kZW46IE1hZXJjaGVuICAgICAgICAKCltBYmVudGV1ZXI6PFF1ZXN0Pl0gPDIzOjI5OjI5PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHJhdXMuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpTY2huZWV3aXR0Y2hlbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKClNoaXRoYXBwZW5zIHRyb3R0ZXQgaGVyZWluLgo+IFNjaG5lZXdpdHRjaGVuIHJ1ZnQ6IERhbmtlLCBTaGl0aGFwcGVucywgZGFzcyBEdSBtZWluZSBad2VyZ2UgYmVmcmVpdCBoYXN0LiAKCltHcmF0czpCb2ViYmVsXSBHUkFUUyAhICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKW0dyYXRzOkthcnRvZmZlbF0gR1JBQUFBQUFBQUFBQUFBQUFUUyAgCgpJY2ggYWNrZXIgdW5kIGRlciBodW5kIGtyaWVndCBkaWUgYmVsb2hudW5nLi4uLm5hamEgOykKCkh5ZW5hCih1bmQgaHVuZCBzaGl0aGFwcGVucykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnB1ZW5rdGxpY2ggdW5kIHNjaG5lbGxlciBhbHMgR3JpbW1ib3JuIC4uIChBbGJvaW4sIDIyLiBKdWwgMTk5NiwgMTM6MTI6NTcpOgprb21tdCB3aWVkZXIgbWVpbiBTcHJ1Y2ggZGVyIFdvY2hlOgoKJ0RlciBMaWViZW5kZSBnZWh0IGR1cmNoIGRpZSBXZWx0IHdpZSBlaW4gQW5hcmNoaXN0OiBlciB0cmFlZ3QgZWluZSBaZWl0Ym9tYmUKbWl0IHNpY2guJwogICAgICAgICAgICAgICAgICAgICAgR3JhaGFtIEdyZWVuZSBpbiAnRGVyIG1lbnNjaGxpY2hlIEZha3RvcicKQWxib2luCgpQLlMuIERhcyBCdWNoIGthbm4gbWFuIGF1Y2ggbGVzZW4sIGljaCBoYXR0ZSBlcyBpbiAyIFRhZ2VuIGF1cy4gQXVjaCBkaWUKYW5kZXJlbiBCdWVjaGVyIHZvbiBpaG0gc2luZCBsZXNlbnN3ZXJ0ICgnU3R1bmRlIGRlciBLb21vZWRpYW50ZW4nLCdVbnNlciBNYW5uCmluIEhhdmFubmEnIHVzdy4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIZXV0ZSBpbiBkZXIgWmVpdHVuZyAuLiAoQWxib2luLCAyMi4gSnVsIDE5OTYsIDE2OjQzOjQxKToKSGV1dGUgYXVmIGRlciBMZWJlbnN3ZXJ0LVNlaXRlIHZvbiAnamV0enQnIChKVWdlbmRtYWdhemluIGRlciBTdWVkZGV1dHNjaGVuClplaXR1bmcpOgoKMTAuIEJPSU5HCgpBbGJvaW4KClAuUy4gV2FydW0gZWlnZW50bGljaCBuaWNodCBhdWNoIG5vY2ggSm9mPz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb24gYmxvZWRtYW5uIChHdWxkdWthdCwgMjIuIEp1bCAxOTk2LCAxNzoyOTozMCk6ClRveCBVdGF0IHRlaWx0IERpciBtaXQ6IER1IGJpc3Qgc2VpdCB1ZWJlciA4MCBUYWdlbiBrZWluIGFrdGl2ZXMgQ2x1Yi0KVG94IFV0YXQgdGVpbHQgRGlyIG1pdDogbWl0Z2xpZWQgbWVociEgRHUgaGFzdCBub2NoIDEwIFRhZ2UgWmVpdCwgZGVpbmUKVG94IFV0YXQgdGVpbHQgRGlyIG1pdDogTWl0Z2xpZWRzZ2VidWVociB6dSBlbnRyaWNodGVuISEKCm1pdCA1MCBvbmxpbmUgdGFnZW4gODAgdGFnZSBzYWV1bWlnZXIgc2NodWxkbmVyLCBXT1cKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsbGUgSGFldXNlciBmbGllZ2VuIGhvb29vY2guLi4uIChBbmF0b2wsIDIyLiBKdWwgMTk5NiwgMTc6NTU6NTgpOgoKW01vZXJkZXI6R2Vpc3QgZWluZXMgRGFjaHNdIERhcyBzYWcgaWNoIGFsbGVzIFJ1bWF0YSwgU2hhcmlhIQoKRGFjaD8gRGFzIERhY2gsIGRlcyBEYWNocywgZGVtIERhY2gsIGRlbiBEYWNoPwpGcmFnZW4gdWViZXIgRnJhZ2VuLApBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHcmFtbWF0aWsgKEdhc3QyLCAyMi4gSnVsIDE5OTYsIDE4OjA5OjAzKToKPkRhcyBEYWNoLCBkZXMgRGFjaHMsIGRlbSBEYWNoLCBkZW4gRGFjaD8KCkFsc28gd2VubiBlcyB2b3JuZSAnZGFzIERhY2gnIGhlaXNzdCwgbXVlc3RlIGVzIGRvY2ggaGludGVuIGF1Y2ggJ2RhcyBEYWNoJwpoZWlzc2VuPyBCeHcuIHdlbm4gZXMgaGludGVuICdkZW4gRGFjaCcgaGVpc3N0LCBtdWVzc3RlIGVzIGRvY2ggdm9ybmUKJ2RlciBEYWNoJyBnZXdlc2VuIHNlaW4uCkFiZXIgdmllbGxlaWNodCB3YXIgZXMgamEgJ2RpZSBEYWNoJz8KR3J1c3MgR2FzdDxpcmdlbmR3aWU+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3JhbW1hdGlrIChBbmF0b2wsIDIyLiBKdWwgMTk5NiwgMTg6MDk6NDYpOgp+IyEgcm49R2FzdDIgcnQ9ODM4MDUxNzQzCn4jISB0aWQ9ODM4MDUxNzQzCgpIZWlzc2UgaWNoIEtvbnJhZD8gOykKQW5hdG9sIChuaWNodCBEdWRlbikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWxsZSBIYWV1c2VyIGZsaWVnZW4gaG9vb29jaC4uLi4gKEd1eWJydXNoLCAyMy4gSnVsIDE5OTYsIDA4OjE4OjU4KToKfiMhIHJuPUFuYXRvbCBydD04MzgwNTA5NTgKfiMhIHRpZD04MzgwNTA5NTgKQW50d29ydGVuLCBkaWUgbmljaHRzIHdlcnQgc2luZDoKCkRhcyBEYWNoCmRlcyBEYWNoZXMKLi4uCmJlaSBUaWVyY2hlbiBkZW1uYWNoOgpEZXIgRGFjaHMKZGVzIERhY2hzZXMKLi4uCm9iJ3Mgc3RpbW10IHdlaXNzIGljaCBuaWNodCwgYWJlciBlcyBob2VydCBzaWNoIGplZGVuZmFsbHMgYmVzc2VyIGFuIGFscyBvaG5lCmUuCkVzIHdpcmQgd29obCBrZWluIFByb2JsZW0gc2VpbiwgaGllciBqZW1hbmRlbiB6dSBmaW5kZW4sIGRlciBlcyBiZXNzZXIgd2Vpc3MKOykKR3V5YnJ1c2gsIHdlaXNzIHNjaG9uIGFsbGVzIGJlc3NlciBhbHMgYW5kZXJlLCBhYmVyIG5pY2h0IGd1dCBnZW51ZywgdW0gbmljaApub2NoIHVlYmVydHJ1bXBmdCB6dSB3ZXJkZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBZWggKER1cmlhbiwgMjMuIEp1bCAxOTk2LCAxMzoxOTowNyk6CgpPZWggLi4uIFBhcmRvbj8KCnVuZ2VzY2huaXR0ZW4KCkVpbiBTdHJlaWNocXVhcnRldHQgc3BpZWx0IGF1ZiEgZWluIEZyb3NjaCBoYXQgZGVtIFZpb2xpbmlzdGVuIGdlaG9sZmVuIQpQYXVsZSBrcmFlY2h6dDogLi4uIERhcyBtYWNodCBqZXR6dCBhYmVyIGtlaW5lbiBTaW5uLiAuLi4ga3Jycm9vYWFhIQpFaW4gRnJvc2NoIGhhdCBkaWVzZSBNZWxkdW5nIGdlcHJvZ2d0Li4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVlcGZlcj8gKFBhcmFjZWxzdXMsIDIzLiBKdWwgMTk5NiwgMTU6NTM6MjIpOgpPaG5lIEtvbW1lbnRhcjoKCkh1ZXBmZXIgaGF0IGdlcmFkZSBkaWUgVmVyYmluZHVuZyB6dSBNb3JnZW5HcmF1ZW4gZ2VrYXBwdC4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEh1ZXBmZXIuCkVpbiBCZWlmYWxsc3N0dXJtIGJyYW5kZXQgaW0gRGlhbW9uZHBhcmsgYXVmLiBXYXMgZGEgd29obCB3aWVkZXIgbG9zIGlzdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWxsZSBIYWV1c2VyIGZsaWVnZW4gaG9vb29jaC4uLi4gKFJhZmZpLCAyMy4gSnVsIDE5OTYsIDE2OjA3OjAzKToKfiMhIHJuPUd1eWJydXNoIHJ0PTgzODEwMjczOAp+IyEgdGlkPTgzODA1MDk1OAoKRnJhZyBkb2NoIG1hbCBlaW5lciBBQWNyaW1vbi4KCkdyc3MKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoSmFzcGVyLCAyNC4gSnVsIDE5OTYsIDA0OjMxOjU3KToKW1RvZDpMYXJzXSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgQ3JpdGlhcyB1bWdlYnJhY2h0LgpbVG9kOkVpbiBIeWRyYWtvcGZdIGhzc3Nzc3MKRGFudGUgcnVmdDogSFlEUkEhISEhISEhISEhCltUb2Q6TGFyc10gRWluZSBIeWRyYSBoYXQgZ2VyYWRlIERhbnRlIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBIeWRyYV0gaHNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzCltBbGxnZW1laW46VGlub10gU2FndCBtYWwgaXN0IGRpZSBIeWRyYSBpbW1lciBzbyBoZWZ0aWc/IEljaCBiaW4gTGFuZHN0cmVpY2hlcgpbQWxsZ2VtZWluOlRpbm9dIHVuZCB3ZW5uIGRpZSBnbGF0dCAyIFNlaGVyIHVtbmlldGV0IC4uIG51biBqYSAuLiA7KAouLi4uLgoKSmFzcGVyIGphcHN0IHJpY2h0dW5nIEJldHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChUaW5vLCAyNC4gSnVsIDE5OTYsIDE1OjA0OjI2KToKfiMhIHJuPUphc3BlciBydD04MzgxNzU1MTcKfiMhIHRpZD04MzgxNzU1MTcKU3RpbW10LCB3YXIgS2Fpc2Vyc2NobWFycm4hIDspCgpUaW5vLCBlaW4gYWV1c3NlcnN0IGhhcm1sb3NlciBMYW5kc3RyZWljaGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbW1lciB3aWVkZXIgYWx0LCBpbW1lciB3aWVkZXIgbHVzdGlnLiAoUGFtcGVycywgMjUuIEp1bCAxOTk2LCAxNToxODo0MCk6Ck9ldHRpICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgpQYW1wZXJzLiBLZW5udCBkZW4gV2l0eiBhdWNoIHNjaG9uLiBNdXNzIHRyb3R6ZGVtIGxhY2hlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZvbyEgKEhpZ2hsYW5kZXIsIDI2LiBKdWwgMTk5NiwgMTM6NTA6MjMpOgpCYXIhCkhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmlsbGlnLi4uIFNwb3R0YmlsbGlnLi4uIChMYXJpZWwsIDI2LiBKdWwgMTk5NiwgMTk6MDI6MDgpOgpOZXVsaWNoLCBpbiBGZXJud2VzdC4uLgp6ZWlnZQpbLi4uXQoKdW50IDEwCkVpbiBTdGVpbi4KRWluIGdhbnogbm9ybWFsZXIsIGV0d2EgZmF1c3Rncm9zc2VyIFN0ZWluLgpFciBrb3N0ZXQgMCBNdWVuemVuLgoKLSBMYXJpZWwgRmFsa2VuZmx1ZywgSW5xdWlzaXRvciB2b24gVGFyYW1pcwogIChPaywgZGVyIHdhciB2aWVsZWljaHQgc2Nob24gYmVrYW5udC4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkltbWVyIGRhc3NlbGJlIG1pdCBkZXIhIChDYXJhZGhyYXMsIDI3LiBKdWwgMTk5NiwgMDI6MDU6NTApOgpBbWFuZGEgdGVpbHQgRGlyIG1pdDogV29oaW4gc28gc2NobmVsbCwgRWluIGZyb3NjaD8KQW1hbmRhIHRlaWx0IERpciBtaXQ6IEltbWVyIHNpbmQgc2llIHNvIGVpbGlnLCBkaWUgTWFlbm5lci4uLgoKTmljaHQgbWFsIEZyb2VzY2hlIHVuZCBNYWVubmVyIGthbm4gZGllIHVudGVyc2NoZWlkZW4sIGljaAp3ZWhyZSBtaWNoIG1pdCBGbG9zc2VuIHVuZCBQYWRkZWxzIGRhZ2VnZW4sIGVpbiBNYW5uIHp1IHNlaW4uCkphd29obGphIQoKICAgICAgRWluIEdvbGRmcm9zY2ggcXVha3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJpbmdnZWlzdCAoUGhvYm9zLCAyNy4gSnVsIDE5OTYsIDE1OjQwOjM0KToKRWluIGtsZWluZXIsIHNwaXR6ZXIgUGZlaWwgZHVyY2hib2hydCBEZWluZSBSdWVzdHVuZy4KLiAgICAgICAgICAgICAgICAgICAgICAgICAgKioqKiogMTkwICoqKiAyMTAgKioqKioKRWluIGtsZWluZXIsIHNwaXR6ZXIgUGZlaWwgZHVyY2hib2hydCBEZWluZSBSdWVzdHVuZy4KLiAgICAgICAgICAgICAgICAgICAgICAgICAgKioqKiogMTcwICoqKiAyMTAgKioqKioKRWluIFBmZWlsIGR1cmNoYm9ocnQgZWluZW4gS3VwZmVycmluZy4KZWluIEt1cGZlcnJpbmcgZ2lidCBlaW4gbGVpc2VzIFN0b2VobmVuIHNpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYXRlIHdlaXNzIGFsbGVzLi4uIChNaWV6ZSwgMjkuIEp1bCAxOTk2LCAxMDowMTo1Nyk6CgpEaXNrdXNzaW9uIHVtIGRhcyBCZXphaGxlbiBmdWVyIGRpZSBQYXJ0eSBpbiBCZXJsaW4uLi4KW0FsbGdlbWVpbjpIYXRlXSBBbGxlcyB3YXMgbmljaHQgYmlzIHp1bSBGcmVpdGFnIGVpbmdlZ2FuZ2VuIGlzdCB3aXJkIHVtIDEwIERNCltBbGxnZW1laW46SGF0ZV0gZXJob2VodAoKS3VyemUgWmVpdCBzcGFldGVyLi4uClplaXQgaXN0IEdlbGQuIFdpciBoYWJlbiBlcyBqZXR6dCAxMCAgTWFyayB1bmQgMDAgUGZlbm5pZ2UuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAzMSAoR3JpbW1ib3JuLCAyOS4gSnVsIDE5OTYsIDE1OjAzOjM0KToKCiJEZXIgT3B0aW1pc3QgaGF0IGdlbmF1c28gb2Z0IHVucmVjaHQgd2llIGRlciBQZXNzaW1pc3QsIGFiZXIgZXIgaGF0IHZpZWwgbWVocgpTcGFzcyIgKFVuYmVrYW5udCkKCk5hamEsIGRhcyBnaWx0IG51ciBpbiBlaW5lciAibmV1dHJhbGVuIiBXZWx0LCB1bmQgZGFzIGlzdCBkb2NoIHp1bWluZGVzdApkaXNrdXRhYmVsLi4uCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKREFTIGhhdCBuaWNodCBnZWtsYXBwdC4uLiAoTWFyaXRhLCAzMC4gSnVsIDE5OTYsIDA1OjE4OjM3KToKCj4gcSBjb2RlCkRpZSBXYWNoZSBzYWd0OiBHbGF1YnN0IER1IHdpcmtsaWNoLCBpY2ggdmVycmF0ZSBEaXIgaXJnZW5kd2VsY2hlIENvZGVzPwo+IGdpYiAxMCBtdWVuemVuIGFuIHdhY2hlCkR1IGdpYnN0IGRlciBXYWNoZSBkZW4gU2NobHVlc3NlbGJ1bmQuCkRpZSBXYWNoZSBzYWd0OiBEYW5rZS4gQWJlciBiZXNjaHdlcmUgRGljaCBuYWNoaGVyIG5pY2h0LgoKSG1tbW1tLCBiZXN0ZWNobGljaCBpc3NlciBzY2hlaW5iYXIgbmljaHQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEhvYm8sIDMwLiBKdWwgMTk5NiwgMTI6MTk6MjEpOgpJY2ggZmluZCwgUGVzc2ltaXN0ZW4gaGFlbidzIHZpZWwgYmVzc2VyIGFscyBPcHRpbWlzdGVuLiBOYWVtbGljaDoKV2VubiBkZXIgUGVzc2ltaXN0IHJlY2h0IGhhdCwga2FubiBlciBzYWdlbjogQUVUU0NILCBpY2ggaGF0dGUgcmVjaHQuIApVbmQgd2VubiBlciBuaWNodCByZWNodCBoYXQsIGlzdCBkaWUgU2l0dWF0aW9uIGJlc3NlciwgYWxzIGVyIGdlZGFjaHQgaGF0LCBkYXMKaXN0IGlobSBkYW5uIGF1Y2ggcmVjaHQuLi4uLi4uCgpJc3QgZGFzIGxvZ2lzY2g/Pz8/CgoKICAgICAgICAgSG9ibyAoendlaWZlbG5kKAoKYXJnbC4uLi4gbWFjaHQgZGllIEtsYW1tZXIgZG9jaCBzZWxiZXIgenUgOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiBEcmFtYSBvaG5lIGdsZWljaGVuIC4uLiAoRHVyaWFuLCAgMS4gQXVnIDE5OTYsIDExOjQ4OjAzKToKClBhdWxlIGtyYWVjaHp0OiBrcnJvb2FhIC4uLiBPZXR0aSBpc3Qgc29vb29vb29vb29vbyBTdWVzcyAhISEhCkR1IHNjaGF1c3QgZGV6ZW50IHdlZywgYWxzIHNpY2ggT2V0dGkgdW5kIFBhdWxlIHZlcmxpZWJ0IGluIGRpZSBBcm1lCnNpbmtlbi4KT2V0dGkgc2FndDogIEljaCBsaWViZSBkaWVzZW4gUGFwYWdlaSA7LSkKUGF1bGUga3JhZWNoenQ6IC4uLiBoYWJlIGFiZXIgbmljaHQgdm9yIC4uLiBoYWJlIGFiZXIgbmljaHQgdm9yIC4uLgpPZXR0aSBzYWd0OiAgLi5paG4genUgaGVpcmF0ZW4gPwpPZXR0aSBzdHJlY2t0IFBhdWxlIGRpZSBadW5nZSByYXVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNwcnVjaCBkZXIgV29jaGUgKEFuY2FsYWdvbiwgIDEuIEF1ZyAxOTk2LCAyMDo0NToxNik6Cn4jISBybj1Ib2JvIHJ0PTgzODcyMTk2MQp+IyEgdGlkPTgzODcyMTk2MQpUYWNoIGVyc3RtYWwhCkhvYm8sIGVpbmVtIFBlc3NpbWlzdGVuIGlzdCBlcyBkb2NoIGdhciBuaWNodCByZWNodCwgd2VubiBlcyBiZXNzZXIgd2lyZCBhbHMKZXIgZGFjaHRlLi4uIDopCk51aHIgc29vb29vLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbmNhbGFnb24KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRHJhY28ga251ZGRlbGxlbnNpcyBtYWpvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGFwYWdlaWVuIHNpbmQgZG9vZiAuLi4gKEFzbW9kaW5hLCAgMi4gQXVnIDE5OTYsIDIyOjQ0OjExKToKRHUgc2Fnc3Q6IER1bW1iYXR6LCBmbGllZyB6dSBhc21vZGluYQpEdW1tYmF0eiBrcmFlY2h6dDogLi4uIGtyb29vYWEgLi4uIHdlcmRlIEFzbW9kaW5hIG1hbCBiZXN1Y2hlbiAuLi4KRHVtbWJhdHogZmxhdHRlcnQgd2VnLgpEdW1tYmF0eiBmbGF0dGVydCBoZXJlaW4uCkR1bW1iYXR6IGtyYWVjaHp0OiAuLi4gQXNtb2RpbmEgc2NoaWNrdCBtaWNoIC4uLiBrcnJycm9vb2FhYWEgLi4uIGljaCBzb2xsCkR1bW1iYXR6IGtyYWVjaHp0OiBEaWNoIGJlZ2xlaXRlbiwgQXNtb2RpbmEgLi4uCgoKLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktvbWlzY2hlIEthdHplbiAoQ2FyYWRocmFzLCAgNS4gQXVnIDE5OTYsIDE4OjEwOjQ0KToKUHJhIGxhZXVmdCBEaXIgendpc2NoZW4gZGVuIEJlaW5lbiBkdXJjaC4gRHUgbXVzc3QgYXVmcGFzc2VuLCBkYXNzCkR1IG5pY2h0IHN0b2xwZXJzdC4KbWUgaXN0IGRvY2ggc2Nob24gdW50ZW4uCkVpbiBGcm9zY2ggaXN0IGRvY2ggc2Nob24gdW50ZW4uCj4gVXJ6YSBkZW5rdCAgIC4gbyBPIChHcm9zc2VyIEZyb3NjaCEpCgogICAgICAgICAgICAgIFJpZXNlbmZyb3NjaCBDYXJhZGhyYXMKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCYWV1bWUgYXVzIFN0YWhsLi4uIChNdXBmZWwsICA1LiBBdWcgMTk5NiwgMjA6MDI6MzgpOgokIFN0ZWVsIHJ1ZnQ6IEhpbGZlIEljaCBmYWxsZSBhdXMgZGllc2VyIFdlbHQuLi4uLi4uISEhCkltIHZlcmxvcmVuZW4gTGFuZCBzaW5kIHdpZWRlciAyMCBCYWV1bWUgdW1nZWZhbGxlbi4KCipncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFtYW5kYSB1bmQgZWluZSBtZWludW5nIGRhenUgKFNudWdnbGUsICA1LiBBdWcgMTk5NiwgMjM6MjA6NTUpOgpBbWFuZGEgc2FndDogV2llIHdhZXJzIGRlbm4gbWl0IHVucywgS2xlaW5lcj8KQW1hbmRhIGt1c2NoZWx0IHNpY2ggaW4gaWhyZW4gUGVsem1hbnRlbC4KQW1hbmRhIHp1cGZ0IGFuIGlocmVtIEtsZWlkLgpBbWFuZGEgenVwZnQgYW4gaWhyZW0gS2xlaWQuCkRlciBXb2xwZXJ0aW5nZXIgc3RvZWhudCBzY2hyZWNrbGljaC4KLS0tLSBSZWNhbGwgZW5kIC0tLS0KW0FsbGdlbWVpbjpFdGFpbl0gaXN0IGphIHBlaW5saWNoLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHlkcmEtU3VjaC1TcGllZ2VsIChNYWhhdG1hLCAgNi4gQXVnIDE5OTYsIDE0OjM2OjUwKToKCj4gc2FnIGljaCBoYXNzZSBkaWUgaHlkcmEKRGVyIFNwaWVnZWwga2xhZXJ0IHNpY2ggdW5kIER1IHNpZWhzdDoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpEaWVzIGlzdCBkYXMgSGF1cHRwb3N0YW10IHZvbiBNb3JnZW5HcmF1ZW4uClZvbiBoaWVyIGF1cyBrYW5uc3QgRHUgQnJpZWZlIGFuIERlaW5lIE1pdHNwaWVsZXIgc2NoaWNrZW4gdW5kIEJyaWVmZSB2b24KaWhuZW4gbGVzZW4uIFdlbm4gRHUgZGFzIHdpbGxzdCwgdGlwcGUgInBvc3QiLgpEZXIgZWluemlnZSBzaWNodGJhcmUgQXVzZ2FuZyBmdWVocnQgbmFjaCBTdWVkZW4gYXVmIGRlbiBNYXJrdHBsYXR6CnZvbiBQb3J0IFZhaW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBzdWVkZW4uCkRpZSBIeWRyYS4KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKPiBzY2hhdQpEaWVzIGlzdCBkYXMgSGF1cHRwb3N0YW10IHZvbiBNb3JnZW5HcmF1ZW4uClZvbiBoaWVyIGF1cyBrYW5uc3QgRHUgQnJpZWZlIGFuIERlaW5lIE1pdHNwaWVsZXIgc2NoaWNrZW4gdW5kIEJyaWVmZSB2b24KaWhuZW4gbGVzZW4uIFdlbm4gRHUgZGFzIHdpbGxzdCwgdGlwcGUgInBvc3QiLgpEZXIgZWluemlnZSBzaWNodGJhcmUgQXVzZ2FuZyBmdWVocnQgbmFjaCBTdWVkZW4gYXVmIGRlbiBNYXJrdHBsYXR6CnZvbiBQb3J0IFZhaW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBzdWVkZW4uCkVpbmUgS2F0emUgbmFtZW5zIEh5ZHJhLgpOYXNpbSBkZXIgZWhlbWFsaWdlIEV1bnVjaC4KRWluIFBha2V0c2NoYWx0ZXIuCkVpbmUgU2NocmVpYmthYmluZS4gKDIpCgpVbmQgaWNoIGRhY2h0ZSBzY2hvbiwgZGFzIFZpZWggaGF0IHNpY2ggdmVybGF1ZmVuLi4uIDspCgpNYWhhdG1hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVQi4uLiAoTXVwZmVsLCAgNy4gQXVnIDE5OTYsIDIwOjIyOjI2KToKW0FsbGdlbWVpbjpCZW5kZWlnaWRdIEJpbGlvdGhlaz8gdW50ZXJyaWNodGVuIGRpZSBhdWNoIHJlY2h0c2NocmVpYnVuZz8KCnNvbGx0ZW4gc2llIGFiZXIuLi4gOi0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVCLi4uIChCZW5kZWlnaWQsICA4LiBBdWcgMTk5NiwgMTE6MzM6NDcpOgp+IyEgcm49TXVwZmVsIHJ0PTgzOTQ0MjE0Ngp+IyEgdGlkPTgzOTQ0MjE0NgpUeXBpc2NoLCB3aWVkZXIgdm9sbCBhdXMgZGVtIFp1c2FtbWVuaGFuZyBnZXJpc3Nlbi4KCkJlbmRlaWdpZCwgcnVtbXVwZmVsbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIChTY2hydW1wZmksICA5LiBBdWcgMTk5NiwgMDE6MjA6MTUpOgpbVG9kOkxhcnNdIEVpbiBTYW11cmFpIGhhdCBnZXJhZGUgTmluamEgdW1nZWJyYWNodC4KW1RvZDpFaW4gU2FtdXJhaV0gVmllbGVpY2h0IGtsYXBwdCBlcyBqYSBiZWltIG5hZWNoc3RlbiBNYWwsIE5pbmphIQoqcHJ1dXVzdCoKU2NocnVtcGZpIHd1c3N0ZSBnYXIgbmljaHQsIGRhc3MgZWluIFNhbXVyYWkgc3RhZXJrZXIgYWxzIGVpbiBOaW5qYSBpc3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPaG5lIFdvcnRlIChEaG9qYWt0LCAgOS4gQXVnIDE5OTYsIDE1OjQwOjM4KToKfiMhIHJuPVNjaHJ1bXBmaSBydD04Mzk1NDY0MTUKfiMhIHRpZD04Mzk1NDY0MTUKTmFqYSwga29tbXQgYXVmIGRpZSB1ZWJ1bmcgZGVzIG5pbmphcyBhbiwgdmllbGxlaWNodCB3YXJzIGphIG4gYW5mYWVuZ2VyCipncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyZXVuZHNjaGFmdHNiYW5kLi4uIChNdXBmZWwsIDEyLiBBdWcgMTk5NiwgMjA6MzE6NTYpOgpbTWFnaWVyOkJlbmRlaWdpZF0gbm9jaG1hbCB6dW0gZmJhbmQ6IHdpZSBrYW5uIG1hbiBhbHMga2xlaW5lciBkdW1tZXIgbWFnaWVyCltNYWdpZXI6QmVuZGVpZ2lkXSBkZW4gc3BpZWxlcm4gaGVsZmVuPwpbTWFnaWVyOlJvY2h1c10gdnJhaSBlcnd1ZXJnZW4KCipncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcmV1bmRzY2hhZnRzYmFuZC4uLiAoTG9jbywgMTIuIEF1ZyAxOTk2LCAyMDo0Nzo1MCk6Cn4jISBybj1NdXBmZWwgcnQ9ODM5ODc0NzE2Cn4jISB0aWQ9ODM5ODc0NzE2CkhpbGZ0IGRhcyB3aXJrbGljaD8gT2RlciBtYWNodCBlcyBkaWUgU2FjaGUgbmljaHQgaW4gV2lya2xpY2hrZWl0IG51ciBub2NoCnNjaGxpbW1lciwgd2VpbCBzaWNoIGRhbm4gZ2FyIG5pZW1hbmQgbWVociBkYW1pdCBhdXNrZW5udD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFyYWdvcm4gbmllc3QuIChHYW5kbywgMTMuIEF1ZyAxOTk2LCAwMDozMDozOSk6ClNjaG9rb2ZlZSBuaWVzdC4KRHUgZmFlbmdzdCBhbiB6dSBuaWVzZW4uCk9yc29seWEgbmllc3QuCkV6byBiaWVndCBkaWUgSGFlbmRlLgpbQWxsZ2VtZWluOkN5bXJpa10gaGF0IGplbWFuZCBodXN0ZW5zYWZ0IGZ1ZXIgbWljaD8KRXpvIHp3aW5rZXJ0LgpCZWxnYXJhdGggbmllc3QuCkV6byB6d2lua2VydC4KRXpvcyBLb2VycGVyIGZhZW5ndCBhbiB6dSBzY2hpbW1lcm4uCkFyZWxpb24gbmllc3QuCkhvZ29ib2xkIG5pZXN0LgpFem8gbmllc3QuCkR1IGZhZW5nc3QgYW4genUgbmllc2VuLgpTY2hva29mZWUgbmllc3QuCkFyYWdvcm4gbmllc3QuCk9yc29seWEgbmllc3QuCltBYmVudGV1ZXI6WXVuZ2FdIGtlbm50IGplbWFuZCBkZW4gc3ludGF4IHdpZSBtYW4gYXVmIFNoYWt5IElzbGFuZCBkYXMgQmllciBpbgpbQWJlbnRldWVyOll1bmdhXSBkZW4gVnVsa2FuIGJla29tbXQ/CkV6byBuaWVzdC4KU2Nob2tvZmVlIG5pZXN0LgpIb2dvYm9sZCBuaWVzdC4KT3Jzb2x5YSBuaWVzdC4KQmVsZ2FyYXRoIG5pZXN0LgpBcmVsaW9uIG5pZXN0LgpEdSBmYWVuZ3N0IGFuIHp1IG5pZXNlbi4KRXpvIG5pZXN0LgpBcmFnb3JuIG5pZXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFyYWdvcm4gbmllc3QuIChDYXJhZGhyYXMsIDEzLiBBdWcgMTk5NiwgMDM6MDY6NTgpOgp+IyEgcm49R2FuZG8gcnQ9ODM5ODg5MDM5Cn4jISB0aWQ9ODM5ODg5MDM5Ckdlc3VuZGhlaXQhCiAgICAgICAgICAgIFF1YWshCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXIgV2VnIGRlciBMZWljaGVuIChNYWhhdG1hLCAxMy4gQXVnIDE5OTYsIDEzOjE2OjM2KToKCltUb2Q6TGFyc10gRWluIEJha2Vtb25vIGhhdCBnZXJhZGUgQ2F1bm8gdW1nZWJyYWNodC4KRWluZSBMZWljaGUgZmFlbGx0IGRlbiBTY2hhY2h0IGhpbnVudGVyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvb2R5IChUYXNoYSwgMTMuIEF1ZyAxOTk2LCAxMzozMDoxMik6CkRpZXNlciBBcnRpa2VsIGlzdCBkYXp1IGRhLCB1bSBXb29keSB6dSBhZXJnZXJuLgoKVGFzaGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhcGFnZWllbiBzaW5kIGRvb2YgKFBhbXBlcnMsIDEzLiBBdWcgMTk5NiwgMTM6NTk6MjUpOgpab3JybyBzdWNodCBkaWUgS25hcHBlbi4KWm9ycm8gc3BpZWx0IGRlbiBTY2hhbGtlciBLcmVpc2VsIG5hY2ggU3VlZGVuLgpab3JybyBzdWNodCBkaWUgS25hcHBlbi4KWm9ycm8gc3BpZWx0IGRlbiBTY2hhbGtlciBLcmVpc2VsIG5hY2ggV2VzdGVuLgpTY2hva29sYWRlbm9ua2VsIGtyYWVjaHp0OiAuLi4ga3Jycm9vb2FhYSAuLi4gSGFsbG8gWm9ycm8gdW5kIFpvcnJvIC4uLgoKUGFtcGVycy4gR3JpbnN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIFJ1ZiBkZXIgTWFnaWVyLi4uIChNdXBmZWwsIDEzLiBBdWcgMTk5NiwgMTU6Mjk6NDgpOgpbU2VoZXI6TXlzZWxmXSBnaWJ0J3MgZWlnZW50bGljaCBuZSBNZW9nbGljaGtlaXQgYW4gJ3plcnN0b2VydGUgRnJldW5kZScKW1NlaGVyOk15c2VsZl0gcmFuenVrb21tZW4sIC12b24gR2VkYWV0Y2huaXMgdW5kICdlcndhcnRlJyBtYWwgYWJnZXNlaGVuPwpbU2VoZXI6TXVwZmVsXSBtYW4gbXVzcyBkYXMgZmJhbmQgcGFzc2VuZCBhZW5kZXJuLi4uCgpldHdhcyBzcGFldGVyLi4uCgpNeXNlbGYgdGVpbHQgRGlyIG1pdDogd2llIGdlaHQgZGFzPyAta2FubiBpY2ggZGFzIHNlbGJlcj8KRHUgdGVpbHN0IE15c2VsZiBtaXQ6IGtsYXIuIHdlcmQgbWFnaWVyCk15c2VsZiBncmluc3QgRGljaCBuZWUgbmVlLCBkYW5uIGxpZWJlciBrZWluZSBGcmV1bmRlIDspIGF1cyBkZXIgRmVybmUgYW4uCgoKKGphamEgc28gd2VpdCBpc3NlcyBnZWtvbW1lbi4uLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoSmFzcGVyLCAxNC4gQXVnIDE5OTYsIDAzOjI5OjA3KToKW0FsbGdlbWVpbjpLaGFtXSBoaSB3dXIgLi4gIGljaCBiaW4gYW0gRWluZ2FuZyB6dW0gRWxmZW5kb3JmIC4uICBpc3QgZGFzIGRhcwpbQWxsZ2VtZWluOktoYW1dIFdzdHRvciA/CltBbGxnZW1laW46V3VyXSBrbGVpbmVuIG1vbSBiaXR0ZQpbVG9kOkxhcnNdIFRhc2ZpciBNYWhrb2tlc2ggaGF0IGdlcmFkZSBXdXIgdW1nZWJyYWNodC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGVyIFdlZyBkZXIgTGVpY2hlbiAoQ2F1bm8sIDE0LiBBdWcgMTk5NiwgMTI6MjA6MzgpOgp+IyEgcm49TWFoYXRtYSBydD04Mzk5MzQ5OTYKfiMhIHRpZD04Mzk5MzQ5OTYKCkRlciBCYWtlbW9ubyBzdGlyYnQgdGhlYXRyYWxpc2NoIGF1ZmtyZWlzY2hlbmQuCltNb2VyZGVyOkdlaXN0IGVpbmVzIEJha2Vtb25vc10gRGFua2UsIENhdU5vLCBEdSBoYXN0IG1pY2ggdm9uIGRpZXNlcgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBCYWtlbW9ub3NdIHNjaHJlY2tsaWNoZW4sIHN0ZXJibGljaGVuIEh1ZWxsZSBiZWZyZWl0LgoKSWNoIGhvZmZlLCBkZXIga29tbXQgYW4gZGVyc2VsYmVuIFN0ZWxsZSBhbi4KU2Nob2VuZW4gR3J1c3MgYW4gTGFycyEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFp1c2FtbWVuaGFuZzogKEdyaW1tYm9ybiwgMTUuIEF1ZyAxOTk2LCAxMTo1ODoxNCk6CgpbTFBDOkJlbmRlaWdpZF0gZGFtbiEKW1RvZDpMYXJzXSBFaW4gR29ibGluIGhhdCBnZXJhZGUgSXZvIHVtZ2VicmFjaHQuCgpVbmQgYXVjaCBvaG5lIEtvbW1lbnRhci4gOi0pCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClByb3Rlc3QgZ2VnZW4gRWxmZW5iZWluIChDYXVubywgMTUuIEF1ZyAxOTk2LCAxNDo1NjozMSk6CgpBbHNvLCBpY2ggbXVzcyBoaWVyIGpldHp0IHdpcmtsaWNoIGVpbm1hbCBtZWNrZXJuLgpJY2ggZmluZGUgZGllIFZlcndlbmR1bmcgdm9uIEVsZmVuYmVpbiBhbHMgTWF0ZXJpYWwgZnVlciBnZXdpc3NlIE9iamVrdGUKZWluZmFjaCBwZXJ2ZXJzISBEZW5uLCBkYXMgbXVzcyBpY2ggZWlubWFsIHNhZ2VuLCBhbHMgRWxmIGthbm4gaWNoIHNvd2FzIG5pY2h0CnRvbGVyaWVyZW4uCkljaCBob2ZmZSwgZGVtbmFlY2hzdCBnaWJ0IGVzIGF1Y2ggTWVuc2NoZW5iZWluIHVuZCBad2VyZ2VuYmVpbiB6dSBrYXVmZW4hCgpNdXNzdGUgZWluZmFjaCBtYWwgc2VpbiwgQy4gTm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQcm90ZXN0IGdlZ2VuIEVsZmVuYmVpbiAoWmVwaHlyLCAxNS4gQXVnIDE5OTYsIDE1OjE2OjU4KToKfiMhIHJuPUNhdW5vIHJ0PTg0MDExMzc5MQp+IyEgdGlkPTg0MDExMzc5MQpTZWl0IHdhbm4gaGFiZW4gWndlcmdlIEJlaW5lPyBEYSBrb21tZW4gZGllIEZ1ZXNzZSBkb2NoIHNvZm9ydAp1bnRlcm0gQmF1Y2ggOikKCmxhZXN0ZXJuZCwgWmVwaHlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIDMyIChOYWNodHJhZykgKEdyaW1tYm9ybiwgMTUuIEF1ZyAxOTk2LCAxNjo1OTo1Mik6CgoiSG9lZmxpY2hrZWl0IGlzdCB3aWUgZWluIEx1ZnRraXNzZW46IEF1Y2ggd2VubiBuaWNodHMgZHJpbiBpc3QgZGFlbXBmdCBlcyBkaWUKU3RvZXNzZSBkZXMgTGViZW5zLiIgKEEuIFNjaG9wZW5oYXVlcikKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAzMyAoR3JpbW1ib3JuLCAxNS4gQXVnIDE5OTYsIDE3OjAxOjM4KToKCiJEaWUgTGllYmUgbmFlaHJ0IGRpZSBFaWZlcnN1Y2h0IHVuZCBkaWUgRWlmZXJzdWNodCB0b2V0ZXQgZGllIExpZWJlLiIKKEtvZW5pZ2luIEtyaXN0aW5hKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbHNvIE1lcmxpbiEhIChDYXJhZGhyYXMsIDE2LiBBdWcgMTk5NiwgMTc6MDQ6MjcpOgpBbm5lIHJ1ZnQ6IEh1cmluLCBwcm9iaWVyIGRhcyBiZWkgZWluZXIgYW5kZXJlbiEhISEhCk1lcmxpbiBydWZ0OiBJY2ggaGFiIG1pY2ggdmVybGF1ZmVuIC0gaWNoIHNjaGFldHplLCBHdXlicnVzaCBoYXQgd2FzIGRhbWl0IHp1CnR1bi4uLgoKICAgICAgUXVha2xvcyEgLSBlaW4ga2xlaW5lciBGcm9zY2ggbmFtZW5zIENhcmFkaHJhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbSBab28gKEd1eWJydXNoLCAxNi4gQXVnIDE5OTYsIDE5OjUwOjQzKToKc2NoYXUKWy9wbGF5ZXJzL2d1eWJydXNoL3dvcmtyb29tXQpEaWVzZXMgaXN0IGRlciBSdWhlcmF1bSB2b24gR3V5YnJ1c2guIEVzIGxpZWdlbiBhbHRlIFNvY2tlbiB1bmQgVC1TaGlydHMKYXVmIGRlbSBCb2RlbiwgaW4gZWluZXIgRWNrZSBsaWVndCBlaW4gcmllc2lnZXIgV2Flc2NoZWhhdWZlbiwgZGllIFdhZW5kZQpzaW5kIHZvbGxrb21tZW4gYmxhbmsuIE1hbiBtZXJrdCwgZGFzcyBkaWVzZXIgUmF1bSBkYWZ1ZXIgZGEgaXN0LCBkYXNzCkd1eWJydXNoIHVuZ2VzdG9lcnQgaWRsZW4ga2Fubi4gRWluIG1hZ2lzY2hlcyBQb3J0YWwgZnVlaHJ0IGluIGRpZSBXZWx0IGRlcgpTdGVyYmxpY2hlbi4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IGRlY2tlIHVuZCBnaWxkZS4KRWluIFNjaGFlZmVyaHVuZCBuYW1lbnMgUmFudGFucGxhbi4gWy9wbGF5ZXJzL2R1cmlhbi96b28vc2NoYWVmZXJodW5kIzQ4NzI1XQpFaW4gUGFwYWdlaSBuYW1lbnMgUGF1bGUuIFsvcGxheWVycy9kdXJpYW4vem9vL3BhcGFnZWkjNDg3MjFdCkR1cmlhbiBkZXIgSGVyciBkZXMgU2FuZGVzLiBbL21hZ2llcjpkdXJpYW5dCkVpbmUgS2FtZWxoZXJkZS4gWy9wbGF5ZXJzL2dyaW1tYm9ybi92aWVjaGVyL2thbWVsZSMzMjUwNV0KVml6ZWtuYWNrYXJzY2ggT2V0dGkgbGllYnQgQW5kcmUgRHVjbG9zIHVuZCBUZXVmaS4gWy9tYWdpZXI6b2V0dGldCkVpbiBQYXBhZ2VpIG5hbWVucyBLb2xrby4gWy9wbGF5ZXJzL2R1cmlhbi96b28vcGFwYWdlaSM0NTU0MF0KRGVyIGtsZWluZSBQcmlueiBBbGJvaW4gZGVua3QgeGNhbGwgQWxib2luLT5TZXRQcm9wKFBfQmFnZ2VyLDApLiAKWy9tYWdpZXI6YWxib2luXQpFaW5lIEthdHplIG5hbWVucyBXYXNoLiBbL3BsYXllcnMvZHVyaWFuL3pvby9rYXR6ZSM0NTcwMl0KQXVncmEgd2Vpc3NuaXguIFsvbWFnaWVyOmF1Z3JhXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2llIGFuIFdlaWhuYWNodGVuIChDYXJhZGhyYXMsIDE2LiBBdWcgMTk5NiwgMjM6MzQ6MTcpOgpEdSBiZWZpbmRlc3QgZGljaCBpbiBlaW5lbSBrbGVpbmVuIGR1ZXN0ZXJlbiBMYWRlbiwgZGVyIHZvbiBlaW5lciBlaW56aWdlbgpsZXVjaHRlbmRlbiBLcmlzdGFsbGt1Z2VsIGJlbGV1Y2h0ZXQgd2lyZC4gRGllIEFibGFnZW4gc2luZCBkaWNrIHZlcmdsYXN0IAp1bmQgZ2ViZW4gZGVuIEJsaWNrIGZyZWkgYXVmIGRpZSBzY2hvZW5zdGVuIEp1d2VsZW4uCkF1ZiBkZXIgVGhla2Ugc3RlaHQgZWluZSBncm9zc2UgR2xvY2tlIHVuZCBhbiBkZXIgV2FuZCBoYWVuZ3QgZWluZSBUYWZlbC4KQXVzc2VyZGVtIHN0ZWh0IGpldHp0IG5lYmVuIGRlciBUaGVrZSBlaW4gRmx1Z2JsYXR0YXV0b21hdC4KCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBub3JkZW4uCkVpbmUgbGV1Y2h0ZW5kZSBLdWdlbC4gKDg1KQoyIEhvZXJuZXIgZGVyIEh5ZHJhLgoxNjQzMCBNdWVuemVuLgpXb29keS4KClNjaG9lbiBoZWxsIGhpZXIuIDopCgogICAgICAgICAgRWluIExpY2h0ZnJvc2NoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV29vZHkgKFdvb2R5LCAxNy4gQXVnIDE5OTYsIDAwOjE0OjQ3KToKfiMhIHJuPVRhc2hhIHJ0PTgzOTkzNTgxMgp+IyEgdGlkPTgzOTkzNTgxMgpIdXBzLCBoYWIgaWNoIHdhcyB2ZXJzYWV1bXQ/CgoqbmljaHRnZWFlcmdlcnRmdWVobCoKd29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdpZSBhbiBXZWlobmFjaHRlbiAoV29vZHksIDE3LiBBdWcgMTk5NiwgMDA6MjE6MzIpOgp+IyEgcm49Q2FyYWRocmFzIHJ0PTg0MDIzMTI1Nwp+IyEgdGlkPTg0MDIzMTI1NwpBbHNvIGhhZWx0IG1pY2ggZG9jaCBub2NoIHdlciBmdWVyIG5lIExldWNodGU/IDopCmdyaW5zZW5kLCB3b29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHdpZSBhbiBXZWlobmFjaHRlbiAoQ2FyYWRocmFzLCAxNy4gQXVnIDE5OTYsIDAwOjIyOjQwKToKfiMhIHJuPVdvb2R5IHJ0PTg0MDIzNDA5Mgp+IyEgdGlkPTg0MDIzMTI1NwpBZWgsIGFsc28sIGhtLCBhbHNvLCBhZWgsIGFsc28sLi4uLiA6KQoKTm8gQ29tbWVudC4uLiBhZWggc2ljaGVyLCBXb29keSEKCiAgICAgICAgICBFaW4gRnJvc2NoIGdyaW5zdCB3aWUgdm9uIGRlciBCcmVpdG1hdWxzcGV6aWVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdWVzcyBkZXIgS2xlaW5lIDopIChDYXJhZGhyYXMsIDE3LiBBdWcgMTk5NiwgMDI6MTE6MzcpOgpEdSBmaXhpZXJzdCBSaWt1cyB1bmQgbWFjaHN0IHNjaHd1bmd2b2xsZSBCZXdlZ3VuZ2VuLgpSaWt1cyB0YW56dCB3aWUgaW4gVHJhbmNlIGR1cmNoIGRpZSBHZWdlbmQuCkR1IGZpeGllcnN0IFJpa3VzIHVuZCBtYWNoc3Qgc2Nod3VuZ3ZvbGxlIEJld2VndW5nZW4uCkR1IGhhc3QgRGljaCBnZXJhZGUgaW0gVW1nYW5nIG1pdCBkZW0gWmF1YmVyc3RhYiB2ZXJiZXNzZXJ0LgpEZWluIFphdWJlcnN0YWIgdW50ZXJzdHVldHp0IERpY2ggYmVpIGRlbSBTcHJ1Y2guClJpa3VzIHRhbnp0IHdpZSBpbiBUcmFuY2UgZHVyY2ggZGllIEdlZ2VuZC4KRHUgZml4aWVyc3QgUmlrdXMgdW5kIG1hY2hzdCBzY2h3dW5ndm9sbGUgQmV3ZWd1bmdlbi4KUmlrdXMgdGFuenQgd2llIGluIFRyYW5jZSBkdXJjaCBkaWUgR2VnZW5kLgpEdSBmaXhpZXJzdCBSaWt1cyB1bmQgbWFjaHN0IHNjaHd1bmd2b2xsZSBCZXdlZ3VuZ2VuLgpSaWt1cyB0YW56dCB3aWUgaW4gVHJhbmNlIGR1cmNoIGRpZSBHZWdlbmQuCkR1IGZpeGllcnN0IFJpa3VzIHVuZCBtYWNoc3Qgc2Nod3VuZ3ZvbGxlIEJld2VndW5nZW4uClJpa3VzIHRhbnp0IHdpZSBpbiBUcmFuY2UgZHVyY2ggZGllIEdlZ2VuZC4KUmlrdXMgc2NocmVpdCBsYXV0IQpEdSB3YWVsenQgRGljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uClJpa3VzIGdydW1tZWx0LgpSaWt1cyB0cml0dCBEaWNoLgpSaWt1cyB0cml0dCBEaWNoLgpSaWt1cyB0cml0dCBEaWNoLgoKICAgTWFnaWVyIHNpbmQgbmllZGxpY2gsIGlzbid0IGl0PyAKCiAgICAgICAgZWluIGJyZWl0ZXN0IGdyaW5zZW5kZXIgR29sZGZyb3NjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmljaHRpZ3N0ZWxsdW5nIChHcmltbWJvcm4sIDE3LiBBdWcgMTk5NiwgMDQ6MTU6MzQpOgoKSWNoIG1vZWNodGUgaGllcm1pdCBhdXNkcnVlY2tsaWNoIGRhcmF1ZiBoaW53ZWlzZW4sIGRhc3MgIk1VRCIga2VpbmVzZmFsbHMKIk11bHRpIFVzZXIgRHVuZ2VvbiIgYmVkZXV0ZXQgc29uZGVybiB2aWVsbWVociAiTXVsdGkgVXNlciBEcnVnIi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCwgZHJvZ2VuZnJlaS4gTmFqYS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVpICEgKEdyaW1tYm9ybiwgMTkuIEF1ZyAxOTk2LCAxMjo1NjoxNCk6Cn4jISBybj1PZXR0aSBydD04NDA0NDg5OTAKfiMhIHRpZD04NDA0NDg5OTAKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBHcmltbWJvcm4sIDE5LiBBdWcgMTk5NiwgMTI6NTI6MTZdOgoKSGFiIGljaCBtZWhyZmFjaCB2ZXJzdWNodDogRWluICJ6d2luZ2Ugc3BpZWxlciBzcGllbHBhdXNlIC0xIiBrbGFwcHQgZ2FyCm5pY2h0LgpJY2ggZnVlcmNodGUsIE9ldHRpIGhhdCBnZWxvZ2VuLi4uIDstKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVpICEgKEdyaW1tYm9ybiwgMTkuIEF1ZyAxOTk2LCAxMjo1NjoyMCk6Cn4jISBybj1PZXR0aSBydD04NDA0NDg5OTAKfiMhIHRpZD04NDA0NDg5OTAKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBKYXNwZXIsIDE5LiBBdWcgMTk5NiwgMTI6NTQ6MzZdOgpGcmVpaGVpdCBmdWVyIGFsbGUgbmFycmVuICEhISEKd2lyIHdvbGxlbiBPZXR0aSwgZGVuIGFsdGVuIGRyZWNrc2FjayA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVWkgISAoWmFyZG96LCAxOS4gQXVnIDE5OTYsIDEyOjU2OjUwKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NDA0NTE5MzYKfiMhIHRpZD04NDA0NDg5OTAKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBSYW50YW5wbGFuLCAxOS4gQXVnIDE5OTYsIDEyOjU0OjMxXToKSG1tbSAhCgpHcmltbWJvcm4gRHUgYmlzdCBqYSBhdWNoIHVuZmFlaGlnLi4uIDstKSkKCk9ldHReSF5IXkheSF5IXkhSYW50YW5wbGFuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVWkgISAoR3JpbW1ib3JuLCAxOS4gQXVnIDE5OTYsIDEyOjU3OjMxKToKfiMhIHJuPVJhbnRhbnBsYW4gcnQ9ODQwNDUyMDcxCn4jISB0aWQ9ODQwNDQ4OTkwCltWZXJsZWd0IHZvbiBzY2htYXJybiwgR3JpbW1ib3JuLCAxOS4gQXVnIDE5OTYsIDEyOjU2OjI5XToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBHcmltbWJvcm4sIDE5LiBBdWcgMTk5NiwgMTI6NTY6MDBdOgoKU2ljaGVyIGJpbiBpY2ggdW5mYWVoaWcsIGFiZXIgZ2VnZW4gZWluZSB0aGlzX3BsYXllcigpLUFiZnJhZ2UgZ2lidHMgbnVyIGVpbmUKRnVua3Rpb24gZGllIGhpbGZ0LCB1bmQgZGllIGlzdCBzZWN1cmVkIHVuZCBuYWNoIGVpbmlnZW4gVmVyc3VjaGVuIHp1IHVydGVpbGVuCmF1Y2ggbmljaHQgc28gZWluZmFjaCB6dSBrbmFja2VuLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVWkgISAoR3JpbW1ib3JuLCAxOS4gQXVnIDE5OTYsIDEyOjU4OjIzKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NDA0NTIyNTEKfiMhIHRpZD04NDA0NDg5OTAKCkJld2VpcyBtZWluZXIgVW5mYWVoaWdrZWl0OiBzaWVoZSBkaWUgU2Nod2llcmlna2VpdGVuIGJlaW0gVmVybGVnZW4gZGVyCkFydGlrZWwuLi4KUmVeMzogVWkgISAoR3JpbW1ib3JuLCAxOS4gQXVnIDE5OTYsIDEyOjU3OjMxKToKKEJlenVnOiBBcnRpa2VsIChnZWxvZXNjaHQpIHZvbiBSYW50YW5wbGFuIHZvbSAxOS4gQXVnIDE5OTYsIDEyOjU0OjMxKQpbVmVybGVndCB2b24gc2NobWFycm4sIEdyaW1tYm9ybiwgMTkuIEF1ZyAxOTk2LCAxMjo1NjoyOV06CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgR3JpbW1ib3JuLCAxOS4gQXVnIDE5OTYsIDEyOjU2OjAwXToKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVhISAoWmFyZG96LCAxOS4gQXVnIDE5OTYsIDEyOjU5OjU1KToKR3JpbW1ib3JuIHRlaWx0IERpciBtaXQ6IEhVTkdBIQpCZW5kZWlnaWQgdGVpbHQgRGlyIG1pdDogSFVOR0EhCgpXZXIgaXN0IG51biBad2VpdGllIHZvbiB3ZW0/CgoKWmFyZG96IGRlciBCT0VTRSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipncnVlYmVsKiAoQ2FyYWRocmFzLCAxOS4gQXVnIDE5OTYsIDE2OjM0OjU2KToKQXp6dXJvIHdlaWx0IHdpZWRlciB1bnRlciBkZW4gTGViZW5kZW4uCkRlaW4gV2lsbGUgbGFlc3N0IG5hY2guCgpIYXR0ZSBzY2hvbiBpbW1lciBuZSBzY2h3YWVjaGVyIGZ1ZXIgQmxhdS4KCiAgICAgICAgICAgICAgRWluIEdvbGR6YXViZXJmcm9zY2ggOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqZ3J1ZWJlbCogKENhcmFkaHJhcywgMTkuIEF1ZyAxOTk2LCAxNjozNToyNCk6Cn4jISBybj1DYXJhZGhyYXMgcnQ9ODQwNDY1Mjk2Cn4jISB0aWQ9ODQwNDY1Mjk2CmFlZWVlZWVoIG5lIFNjaHdhZWNoZS4KCiAgICAgICAgRWluIEZyb3NjaCBtaXQgVGlwcHNmZWhsZXJzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcm1hZ2VkZG9uIChSb2NodXMsIDE5LiBBdWcgMTk5NiwgMjA6NDI6MzgpOgpadWZhZWxsaWcgaW4gYWx0LmJpbmFyaWVzLnNvdW5kcy5taWRpIGdlc2VoZW46CgpTaW1vbiBKIENoZXN0ZXJzb24uICAgICAgICAgICAgICAgICBTaW1vbkB0aWxuZXkuZGVtb24uY28udWsKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwoKICAgICBBcm1hZ2VkZG9uPz8gIEkgZG9uJ3Qga25vdyB3aGF0IHBlb3BsZSBhcmUgc28KICAgICB3b3JyaWVkIGFib3V0IC0gSSBtZWFuLCBpdHMgbm90IHRoZSBlbmQgb2YgdGhlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3b3JsZCBpcyBpdD8KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHlwb2Zlc3QgKEFsaW5lLCAyMC4gQXVnIDE5OTYsIDEwOjA4OjQ1KToKR2VyYWRlIGhpZXIgaW0gTUcgZ2VmdW5kZW46CgpEdSBiaXN0IGRlbiBTY2hhdHRlbndhbGQsIGRlbiBkdSBpbSBOb3JkZW4gZXJyZWljaGVuIGthbm5zdCBzY2hvbiBiZWRlbmtsaWNoCm5hZWhlciBnZWtvbW1lbi4gRXIgc3RyYWhsdCBBbmdzdCB1bmQgU2NocmVja2VuIGF1cyBlYmVuc28gd2llIGRhcyBHZWJpcmdlLgpEZXNzZW4gc2Nod2FyemVyIFJhdWNoIGRpZSBzZWxiZW4gR2VmdWVobGUgaW4gd2FjaHNlbiBsYWVzc3QuIERhcyBHcnVlbmxhbmQKbGllZ3QgZGlyIGpldHp0IGltIFJ1ZWNrZW4gc293ZWl0IGhhc3QgZHUgZGljaCBuYWNoIE5vcmRlbiBnZXRyYXV0LiBEYXMgZ3Jhcwppc3Qgd2VpZ2VyIGdld29yZGVuIGVzIGdpYnQgYXVjaCBuaWNodCBtZWhyIHNvIHZpZWxlIEJsdW1lbi4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgbm9yZGVuLgo+IERhcyBHcmFzcyByYXNjaGVsdC4KCj4gdW50IGdyYXMKSW0gR3JhcyBpc3Qgc2VpY2h0IGdld29yZGVuIG51ciB2ZXJlaW56ZWx0IHN0ZWhlbiBlaW56ZWxuZQpIYWxtZSB6d2lzY2hlbiBkZXIgYnJhY2hlbiBFcmRlPgoKPiB1bnQgYmx1bWVuCkVpbmlnZSBCbHVtZW4gc3RlaGVuIGFtIHdlZ2VzcmFuZCBhYmVyIHNpZSBzZWhlbiBuaWNodCBzbwpzY2hvZW4gYXVzIHdpZSBkaWUgYW5kZXJuLiBTaWUgbGFzc2VuIGRpZSBrb2VwZmUgaGFlbmdlbiB1bmQKZWluaWdlIHNpbmQgc2Nob24gdG90YWwgdmVydHJvY2tuZXQ+Cgo+IHVudCBsYW5kc2NoYWZ0CkRpZSBMYW5kc2NoYWZ0IGlzdCBuaWNodCBtZWhyIGdhbnogc28gZnJpZWRsaWNoCklyZ2VuZGVpbiBlaW5mbHVzcyBtdXNzIGRhenUgZnVlaHJlbiBkYXMgc2llIHNvIHZlcmVuZGV0IHNpbmQuCgpUcmFnZW4gd2lyIGRpZSBMYW5kc2NoYWZ0IHp1IEdyYWJlLiA7KQoKVHJvdHpkZW0gaGFldHRlIGljaCBkYXp1IG5vY2ggZWluIHBhYXIgRnJhZ2VuOgoKS2FubiBtaXIgamVtYW5kIGJpdHRlIG1hbCBkZW4gZHJpdHRlbiBTYXR6IGVya2xhZXJlbj8KV2FydW0ga29tbXQga2VpbiBaZWlsZW51bWJydWNoIG5hY2ggZGVuIERldGFpbGJlc2NocmVpYnVuZ2VuPwpXZWxjaGVyIFJNIHNjaGxpZXNzdCBzb3dhcyBlaWdlbnRsaWNoIGFuPyAKT2RlciBpc3QgZGFzIEFic2ljaHQgdW5kIHdlciBtZWhyIGFscyA4IFR5cG9tZWxkdW5nZW4gYWJzZXR6dCBiZWtvbW10CmVpbmUgQmVsb2hudW5nPwpJc3QgZGFzIHNjaG9uIG5hY2ggZGVuIFJlZ2VsbiBkZXIgbmV1ZW4gUmVjaHRzY2hyZWlicmVmb3JtIGdlc2NocmllYmVuPwoKQWxpbmUgZmluZGV0IHNvbnN0IHNlaHIgc2VsdGVuIFR5cG9zLCBkYSBzaWUgc2VsYmVyIGluIGRlciBSZWNodHNjaHJlaWJ1bmcgCm5pY2h0IGdhbnogZml0IGlzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUeXBvZmVzdCAoQXNtb2RpcywgMjAuIEF1ZyAxOTk2LCAxMzoyMzo0Mik6Cn4jISBybj1BbGluZSBydD04NDA1Mjg1MjUKfiMhIHRpZD04NDA1Mjg1MjUKSG1tLCBkYXNzIGtlaW4gWmVpbGVudW1icnVjaCBrb21tdCwga29tbXQgZGFoZXIsIGRhc3MgZGVyIFByb2dyYW1taWVyZXIKZXMgZWluZmFjaCB2ZXJnZXNzZW4gaGF0IDopCkhtbSwgdW5kIGRhcyBHZWJpZXQgbXVzcyBuaWNodCB1bmJlZGluZ3Qgdm9uIGVpbmVtIFJNIGFuZ2VzY2hsb3NzZW4gd29yZGVuCnNlaW4sIGthbm4gc2VpbiwgZGFzcyBlcyBudXIgZWluZSBFcndlaXRlcnVuZyBlaW5lcyBHZWJpZXRzIGlzdCAod28KaXN0IGRhcyBkZW5uIGRhID8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFR5cG9mZXN0IChXYXJnb24sIDIwLiBBdWcgMTk5NiwgMTM6NDA6NDcpOgp+IyEgcm49QXNtb2RpcyBydD04NDA1NDAyMjIKfiMhIHRpZD04NDA1Mjg1MjUKQXVjaCBHZWJpZXRzZXJ3ZWl0ZXJ1bmdlbiBzb2xsdGVuIHZvbSBSTSBhYmdlbm9tbWVuIHdlcmRlbi4uLgpJbnNiZXNvbmRlcmUgc29sbHRlIGRlciBSTSBkaWUgTGV1dGUgZGFubiBkYXJhbiBlcmlubmVybiwgZGFzcyBhdWNoIGltCkVyd2VpdGVydW5nc2dlYmlldCBkZXIgZWluIG9kZXIgYW5kZXJlIEZQIGVpbmdldHJhZ2VuIHdlcmRlbiBrb2VubnRlIDopKSkKICBXYXJnb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUeXBvZmVzdCAoQm9pbmcsIDIwLiBBdWcgMTk5NiwgMTM6NTg6MDgpOgp+IyEgcm49QWxpbmUgcnQ9ODQwNTI4NTI1Cn4jISB0aWQ9ODQwNTI4NTI1ClNpZWh0IG1pciBzdGFyayBuYWNoIFZsYW5kIGF1cyAuLi4gTHVtdW5ndXMgd3VlcmRlIGljaCBtYWwgc2NoYWV0emVuLgpJY2ggZGFjaHRlIGRhIGhhZXR0ZSBpY2ggdm9yIGVpbiBwYWFyIFdvY2hlbiBzY2hvbm1hbCBtaXQgTW9yZ290aApkcnVlYmVyIGdlcmVkZXQgLi4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVHlwb2Zlc3QgKEphc3BlciwgMjAuIEF1ZyAxOTk2LCAxNjoxNDozMyk6Cn4jISBybj1Cb2luZyBydD04NDA1NDIyODgKfiMhIHRpZD04NDA1Mjg1MjUKaWNoIHd1ZXJkZSBtYWwgc2FnZW4gc29sY2hlIHR5cG9zIHdlcmRlbiBudXIgdm9uIGVyem1hZ2llcm4gb2RlcgpyZWdpb25zbWFnaWVybiBhbmdlc2NobG9zc2VuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmljaHRpZ3N0ZWxsdW5nIChTY2hydW1wZmksIDIwLiBBdWcgMTk5NiwgMjE6MzA6NTkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg0MDI0ODEzNAp+IyEgdGlkPTg0MDI0ODEzNApHcmltbWJvcm4gZGVyIEF0aGVpc3QsIGRyb2dlbmZyZWkuCkphamEsIHVuZCBpY2ggYmluIE5pY2h0cmF1Y2hlcmluIDstKQpTY2hydW1wZmkgZ2xhdWJ0IGRlbSBLZXJsIGtlaW4gV29ydCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGllcnF1YWVsZXIgLi4uIChEdXJpYW4sIDIxLiBBdWcgMTk5NiwgMTM6NTk6MzEpOgoKW0FiZW50ZXVlcjpTaG9ya2FuXSBXYXMgbWFjaHQgbWFubiBtaXQgZGVyIERvZ2dlIHZvbSBNdWVsbGVyID8gPDEzOjU3OjEwPgpbQWJlbnRldWVyOkFubmloaWxhdG9yXSBraWxsZW4gPDEzOjU3OjIyPgpbQWJlbnRldWVyOlBhdHJ5bl0gYmVpc3MgaWhyIGlucyBiZWluIDspIDwxMzo1NzoyOD4KW0FiZW50ZXVlcjpBbm5paGlsYXRvcl0gYW5rbnVycmVuIDwxMzo1Nzo0Mj4KW0FiZW50ZXVlcjpSdW1hdGFdIGJlaXNzZW4gbGFzc2VuIDwxMzo1Nzo1Mz4KW0FiZW50ZXVlcjpBbm5paGlsYXRvcl0gYW5zIGJlaW4gcGlua2VsbiA8MTM6NTc6NTM+CltBYmVudGV1ZXI6U25pYnJpbF0gdmVyd2lyciBzaWUhIDwxMzo1ODowMT4KW0FiZW50ZXVlcjpBbm5paGlsYXRvcl0gc2NobGFwcG9ocmVuIGxhbmd6aWVoZW4gPDEzOjU4OjA5PgpbQWJlbnRldWVyOlNuaWJyaWxdIHVuZCB1ZWJlciBkZW0ga29wZiB2ZXJrbm90ZW4hIDwxMzo1ODoyMD4KW0FiZW50ZXVlcjpBbm5paGlsYXRvcl0gb2RlciBlYmVuIGRvY2gga2lsbGVuIDspIDwxMzo1ODoyMj4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhdCBBZHNvbiAoVW4pdG90ZSBGcmV1bmRlPyAoV29vZHksIDIxLiBBdWcgMTk5NiwgMTU6NDQ6MzgpOgoKPiBBZHNvbiBydWZ0OiBzY2hhdWkgaWNoIG11c3MgamV0enQgZ2Vobi4uLm1hY2hzdCBndXV1dXV1dXQKPiBEZWluZSBGcmV1bmRpbiBBZHNvbiBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCj4gRWluIGVudHNldHpsaWNoZXIgU2NocmVpIGhhbGx0IHZvbSBGcmllZGhvZiBoZXJ1ZWJlci4KCkVyc3RhdW5saWNoLi4uCgoKd29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSaWNodGlnc3RlbGx1bmcgKFJhZmZpLCAyMS4gQXVnIDE5OTYsIDE2OjMwOjE0KToKfiMhIHJuPVNjaHJ1bXBmaSBydD04NDA1Njk0NTkKfiMhIHRpZD04NDAyNDgxMzQKCkRvY2ggZG9jaCBHcmltbWkgaXN0IG5lIERydWcgRnJlZSBab25lIQoKR2xhdWIgbWlyClJhZmZpCihITFApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE11cGZlbCwgMjEuIEF1ZyAxOTk2LCAxNzoyODoyNik6CltBbGxnZW1laW46QmVvYmFjaHRlcl0gYWJlciBzdGVyYmVuIGlzdCBuaWNodCwgd2VubiBtYW4gbmljaHQgZ2VyYWRlIG5lbgpbQWxsZ2VtZWluOkJlb2JhY2h0ZXJdIGhhbGJlbiB0YWcgaGllciBpZGVsdCA6KQpbVG9kOkxhcnNdIFp1IGxhbmdlciBBdWZlbnRoYWx0IGluIGRlciBwcmFsbGVuIFNvbm5lIGhhdCBnZXJhZGUgQmVvYmFjaHRlcgpbVG9kOkxhcnNdIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGluIGRlciBUb2Rlc3NlcXVlbnogKEthbWlsbGUsIDIxLiBBdWcgMTk5NiwgMTk6MTE6MTEpOgoKSmV0enQgbGFlc3N0IGVpbmVuIGRpZSBIeWRyYSBuaWNodCBtYWwgaW0gVG9kZXNyYXVtIGluIFJ1aGUgaWRlbG4uLi47KQoKW1RvZDpMYXJzXSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgU2NobnVlZmZsZXIgdW1nZWJyYWNodC4KW1RvZDpFaW4gSHlkcmFrb3BmXSBoc3Nzc3NzCiAgU2NobnVlZmZsZXIgdmVyc3VjaHQgZWluZXMgSHlkcmFrb3BmcyBBbmdyaWZmIG1pdCBlaW5lbSBTb3RvLXVkZS11a2UKYWJ6dXdlaHJlCm4uCiAgRGVyIEh5ZHJha29wZiBzY2hsYWVndCBTY2hudWVmZmxlciBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgpEZXIgUHJpZXN0ZXIgYmV3ZWd0IHNpY2guIER1IGJpc3QgRGlyIG5pY2h0IHNpY2hlciwgb2IgZGFzIHBhcGllcm5lIFJhc2NoZWxuLApkYXMgRHUgZGFiZWkgaG9lcnN0LCB2b24gc2VpbmVuIEtsZWlkZXJuIG9kZXIgZGVyIEhhdXQgZGVzIEFsdGVuIHN0YW1tdC4KCkthbWlsbGUgZnVlaGx0IHNpY2ggbmlyZ2VuZHdvIG1laHIgc2ljaGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkaWUgRVAnc2UgKEphbmljZSwgMjEuIEF1ZyAxOTk2LCAyMzoyOTo1NSk6CgpEZWluIE5hbWUgaXN0ICJKYW5pY2UgaGF0IG5lbiBTb25uZW5icmFuZCB2b20gdmllbGVuIHNvbm5lbi4iCkR1IGhhc3QgZ2VudWcgU3R1ZmVucHVua3RlIGZ1ZXIgU3R1ZmUgMzggdW5kIDIyNTUgKDIwNjUpIEFiZW50ZXVlcnB1bmt0ZSwKRHUgaGFzdCAyNDY0OTM3NSBFcmZhaHJ1bmdzcHVua3RlICgrNjY2NjYpLCBpbnNnZXNhbXQgaGV1dDogMTA0NzQ4LgoKSmFuaWNlIGZyYWd0IHNpY2gsIHdpZSBzaWUgZGFzIGdlbWFjaHQgaGF0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIDM0IChHcmltbWJvcm4sIDIzLiBBdWcgMTk5NiwgMDE6MjU6MTMpOgoKIldhcyBEdSBzaWVoc3QsIGRhZnVlciBrYW5uc3QgRHUgbmljaHRzLCBhYmVyIHdhcyBEdSBzYWdzdCBsaWVndCBnYW56IGFsbGVpbgpiZWkgRGlyLiIgKEp1ZWRpc2NoKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouLi4gKENhdW5vLCAyMy4gQXVnIDE5OTYsIDExOjUyOjUwKToKW0FiZW50ZXVlcjpUYW5pc10gaWNoIHN1Y2hlIGRhcyBlaWNoaG9lcm5jaGVuIGZ1ZXIgZGllIHdvbHBpZS1xdWVzdCwgd2Vpc3MKW0FiZW50ZXVlcjpUYW5pc10gaXJnZW5kamVtYW5kIG9kZXIgaXJnZW5kZXR3YXMgdm9uIGV1Y2gsIHdvIGljaCBkYXMgZmluZGU/CltBYmVudGV1ZXI6VGFuaXNdIDwxMTozMDo0OT4KW0FiZW50ZXVlcjpOaXJkYXZvXSBpbSBvc3RlbiB2b20gYmVyZ2RvcmYgPDExOjMxOjEyPgpbQWJlbnRldWVyOkthZmthXSBuYWVoZSBnZWlzdGVyc2NobG9zcyA8MTE6MzE6MTQ+CltBYmVudGV1ZXI6RHVmZnldIEluIEZXIGhhYmUgaWNoIGVpbnMgZ2VzZWhlbi4gV2Vpc3MgYWJlciBuaWNodCwgb2IgZXMgZGFzCltBYmVudGV1ZXI6RHVmZnldIHJpY2h0aWdlIGlzdC4gPDExOjMxOjMyPgpbQWJlbnRldWVyOlJhaW5kb2ddIHJpY2h0dW5nIG5lYW5kZXJ0YWwgPDExOjMxOjM0PgpbQWJlbnRldWVyOkthZmthXSB1cHM/IGJlaW0gZ2Vpc3RlcnNjaGxvc3MgZ2lidCdzIGRvY2ggYXVjaCBlaW5zIG1laW5lIGljaD8KW0FiZW50ZXVlcjpLYWZrYV0gbmFqYS4uLmJlcmdkb3JmIHN0aW1tdCBhdWNoIDwxMTozMTozNj4KW0FiZW50ZXVlcjpUYW5pc10gbmFlaGUgYmVyZ2RvcmYgaXN0IHNjaG9uIG1hbCBuaWNodCBzY2hsZWNodCwgZGEgc3VjaCBpY2gKW0FiZW50ZXVlcjpUYW5pc10gc2Nob24gbmUgd2VpbGUsIHdvIGdlbmF1PyA8MTE6MzE6NTM+CltBYmVudGV1ZXI6VGFuaXNdIGF1ZiBiYWV1bWVuLCBzY2hvbiBrbGFyLCBhYmVyIGRhIHdhciBuaXggPDExOjMyOjIzPgpbQWJlbnRldWVyOk5pcmRhdm9dIHVudGVyc3VjaCBtYWwgZGllIGJhZXVtZSAqZ2VuYXUqIDwxMTozMzoyOT4KW0FiZW50ZXVlcjpUYW5pcyBncmluc3QuIDwxMTozNDoyNT5dCltBYmVudGV1ZXI6VGFuaXNdIGVyc2NoaWVzc3QgbWljaCBiaXR0ZSBtYWwgZWluZXIgOikgPDExOjM0OjMzPgpbQWJlbnRldWVyOk5pcmRhdm8gZXJzY2hpZXNzdCBUYW5pcyA8MTE6MzQ6NDM+XQpbQWJlbnRldWVyOk5pcmRhdm8gZnJhZ3Qgc2ljaCAuIG8gTyAoSG9mZmVudGxpY2ggd2FyIGRhcyBrZWluIFBLLi4uLikKICAgICAgICAgICA8MTE6MzU6MTI+XQpbQWJlbnRldWVyOlRhbmlzXSBkb2NoLCBlcmxhdWJ0ZXIgOikpIDwxMTozNToyNj4gICAKW0FiZW50ZXVlcjpHYWxhcmlvbiBncmluc3QgPDExOjM1OjUwPl0KW0FiZW50ZXVlcjpOaXJkYXZvXSBpY2ggZGFjaHRlIGR1IHdhZXJlc3QgdG90PyBPZGVyIGhhc3QgZHUgZGFzIG51ciB2ZXJnZXNzZW4/CltBYmVudGV1ZXI6TmlyZGF2b10gPDExOjM1OjU1PgpbQWJlbnRldWVyOk5pcmRhdm8gZ3JpbnN0IFRhbmlzIGFuIDwxMTozNjowNT5dICAgCltBYmVudGV1ZXI6VGFuaXNdIHdhciBzY2hlaW50b3QsIGhhc3QgbnVyIGFuZ2VzY2hvc3NlbiwgaGFiIG1pY2ggYWJlciBnZWhlaWx0CltBYmVudGV1ZXI6VGFuaXNdIDopIDwxMTozNjoxOT4KW0FiZW50ZXVlcjpOaXJkYXZvXSBzb2xsIGljaCBlcyBub2NoIG1hbCB2ZXJzdWNoZW4gPDExOjM3OjQ5PgpbQWJlbnRldWVyOlRhbmlzXSBqbyA6KSBhYmVyIGRpZXNtYWwgcmljaHRpZyA6KSkpIDwxMTozOToyMD4KW0FiZW50ZXVlcjpOaXJkYXZvIGVyc2NoaWVzc3QgVGFuaXMsIGFiZXIgZGllc21hbCByaWNodGlnIDwxMTozOTo0Nj5dCltBYmVudGV1ZXI6VGFuaXNdIGFoaGhoLCBzY2hvbiBiZXNzZXIgOikgPDExOjM5OjU4PgpbQWJlbnRldWVyOlRhbmlzICAuIG8gTyAoaHVicywgaWNoIGJpbiBqYSB0b3QsIHNvcnJ5IDopIDwxMTo0MDoyMj5dCltBYmVudGV1ZXI6TmlyZGF2b10gd29sbHRlIGdyYWQgc2Nob24gc2FnZW4sIGRlciBiZXdlZ3Qgc2ljaCBqYSBub2NoCltBYmVudGV1ZXI6TmlyZGF2b10gPDExOjQwOjQzPgpbQWJlbnRldWVyOlRhbmlzIHNjaHVldHRlbHQgZGVuIEtvcGYuIDwxMTo0MDo1NT5dCltBYmVudGV1ZXI6TmlyZGF2byBzY2hpZXNzdCB6dXIgU2ljaGVyaGVpdCBub2NoIGVpbm1hbCA8MTE6NDA6NTk+XQpbQWJlbnRldWVyOlRhbmlzXSBiaW4gaWNoIGpldHp0IFRvdD8gPDExOjQxOjMyPgpbQWJlbnRldWVyOkNhdU5vXSBuZWluLCBUYW5pcy4gPDExOjQxOjQyPgpbQWJlbnRldWVyOk5pcmRhdm9dIGRvY2ghIHNvIHNjaGxlY2h0IHNjaGllc3NlIGljaCBkb2NoIG51biB3aXJrbGljaCBuaWNodC4uLi4KW0FiZW50ZXVlcjpOaXJkYXZvXSA8MTE6NDI6NDI+CltBYmVudGV1ZXI6Q2F1Tm9dIGVyIGlzdCBuaWNodCBUb3QsIGVyIGlzdCBUYW5pcy4gc28gc3RlaHQgZXMgZG9jaCBoaWVyIQpbQWJlbnRldWVyOkNhdU5vXSA8MTE6NDM6MDM+CltBYmVudGV1ZXI6TmlyZGF2b10gQWNoc28gPDExOjQzOjM2PgpbQWJlbnRldWVyOlRhbmlzXSBzY2hhZGUsIGhhdHRlIG1pY2ggc2Nob24gc29vb29vbyBnZWZyZXV0LCBlbmRsaWNoIGV1Y2ggYWxsZQpbQWJlbnRldWVyOlRhbmlzXSB3aWxsa29tbWVuIGhlaXNzZW4genUgZHVlcmZlbiA8MTE6NDM6MzY+CltBYmVudGV1ZXI6VGFuaXNdIGh1aHUgOikgPDExOjQ2OjM5PgpbQWJlbnRldWVyOlRhbmlzXSBhcmdsIDooIGJsb2VkZXIgdGFybmhlbG0gOigKCi4uLgoKQy4gTm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBkaWUgRVAnc2UgKEphcmllbCwgMjQuIEF1ZyAxOTk2LCAxNTozNjo0NSk6Cn4jISBybj1KYW5pY2UgcnQ9ODQwNjYyOTk1Cn4jISB0aWQ9ODQwNjYyOTk1CgpIaUhvIEphbmljZSEKCkljaCBnbGF1YiBpY2ggd2Vpc3MgZXMhClNjaGVpbnQgd2llZGVyIGVpbmVzIGRlciBCVUdzIHp1IHNlaW4sIGRpZSBpY2ggaSBhdWNoIGluIG1laW5lbgpURi1mYXJidHJpZ2dlcm4gaGFiZS4KSWNoIHVlYmVyYXJiZWl0ZSBkYXMgbWFsIDspIAoKSmFyaWVsICh2b2VsbGlnIHVuZmFlaGlnKQp+fgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2FjaCBpY2ggZG9jaC4uLj8hIChLYWxsaW9wZSwgMjQuIEF1ZyAxOTk2LCAyMTozODozNik6CgpbRGllIGJlcnVlaG10ZSBBYmVudGV1cmVyZ2lsZGUuXQo+IGVyaG9laGUKRHUga29lbm50ZXN0IERlaW5lIFN0dWZlIGVyaG9laGVuIQoKS2FsbGksIGdyaW5zdAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBrYWVtcGZlIChHdXlicnVzaCwgMjUuIEF1ZyAxOTk2LCAyMjowNDoyOCk6Cn4jISBybj1DYXJhZGhyYXMgcnQ9ODQxMDAzMzY3Cn4jISB0aWQ9ODQxMDAzMzY3CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgR3V5YnJ1c2gsIDI1LiBBdWcgMTk5NiwgMjI6MDM6MjZdOgpXZWlsJ3Mgc29uIEtyYWNoIG1hY2h0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoR3V5YnJ1c2gsIDI3LiBBdWcgMTk5NiwgMTA6NTk6MjApOgo+IFtBbGxnZW1laW46RGlkaV0gV2FzIGhlaXNzdCBkZW5uOiBEZWluIENoYXJha3RlciBpc3QgZ3V0Lj8KW0FsbGdlbWVpbjpIZXJhXSBEYXMgemVpZ3Qgd2lldmllbGUgZ3V0ZSBucGMncyBEdSBzbyB0b2V0ZXN0Li4ub2RlciBlYmVuIG5pY2h0CltBbGxnZW1laW46SGVyYV0gdG9ldGVzdApbVG9kOkxhcnNdIEVpbiBTY2hhdHRlbm1hbm4gaGF0IGdlcmFkZSBEaWRpIHVtZ2VicmFjaHQuCgprb21tZW50YXJsb3MKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtlaW4gU2NobWFycm4gKENhcmFkaHJhcywgMjcuIEF1ZyAxOTk2LCAyMDoxNjo1NSk6Ci8vIGFsaWFzIHNlbnNpCi8vIHNlbnNpICA9IC1rOnNpbmd0OiBFaW4gRnJlZWV1bmQsIGVpbiBndXRlciBGcmVlZXVuZC4uLiB1bmQga251ZGRlbHQgZWluZW4KU2Vuc2VubWFubi4KPiBzZW5zaQpEaWUgRWJlbmUgJ2snIGdpYnQgZXMgbmljaHQhCltNb2VyZGVyOkdlaXN0IGRlcyBTZW5zZW5tYW5uc10gRmVpZXJhYmVuZCEgRGFua2UsIENhcmFkaHJhcyEKPiBlYmVuZSBuZXUgS3VsdHVyIE5hIHdhcyB3b2hsCkR1IGVyc2NoYWZmc3QgZGllIEViZW5lICdLdWx0dXInLgo+IC1rPwpLdWx0dXIsIE5hIHdhcyB3b2hsLgpEdSBzaWVoc3QgMiBHZXNpY2h0ZXIgYXVmIGRlciBFYmVuZSAnS3VsdHVyJzoKQ2FyYWRocmFzLCBIYXRlCkNhcmFkaHJhcyBoYXQgZGFzIFNhZ2VuIGF1ZiBkaWVzZXIgRWJlbmUuCltLdWx0dXI6QW5uaWhpbGF0b3JdIFNPJ04gU0NIUk9UVC4KW0t1bHR1cjpDYXJhZGhyYXNdIHdhcyBpc3QsIEFubmk/Cj4gLWs/Ckt1bHR1ciwgTmEgd2FzIHdvaGwuCkR1IHNpZWhzdCAyIEdlc2ljaHRlciBhdWYgZGVyIEViZW5lICdLdWx0dXInOgpDYXJhZGhyYXMsIEhhdGUKQ2FyYWRocmFzIGhhdCBkYXMgU2FnZW4gYXVmIGRpZXNlciBFYmVuZS4KCiAgICAgICAgSG0sIGRpZXNlIFRvbGVyYW56IGlzdCBpbW1lciB3aWVkZXIgZW50enVlY2tlbmQKCiAgICAgICAgICAgICAgUm90aG9ybiBDYXJhZGhyYXMgQmFyYXppbmJhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xlaW5lciBLbnVkZGxlci1ncm9zc2UgV2lya3VuZyAoQXNtb2RpcywgMjcuIEF1ZyAxOTk2LCAyMTo1NToxNyk6CgpEdSBrbnVkZGVsc3QgRXRhaW4gYXVzIGRlciBGZXJuZS4KPiBEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKCgpvaG5lIFdvcnRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWNoIGphPyAoTmlnaHRtYXJlLCAyNy4gQXVnIDE5OTYsIDIxOjU2OjEyKToKRWJlbiBpbiBkZXIgU1NQOgpEZXIgS251dHNjaGZpc2NoIGh1ZXBmdCBpbiBkZXIgR2VnZW5kIHJ1bS4KU3ltYmlvbnQgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KCk1lbnNjaCwgd2VyIHByb2dndCBkZW5uIHNvd2FzPyBLb2VubmVuIGRpZSBuaWNodCB2b3JzaWNodGlnZXIgaHVlcGZlbj8/PyA9OykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAgKFNjaHJ1bXBmaSwgMjguIEF1ZyAxOTk2LCAwMDowODowOCk6CltBbGxnZW1laW46R29yaGd1c10gSXN0IGRlciB2dWxrYW4gbm9jaCBha3RpdiA/Pz8/CltUb2Q6TGFyc10gRWluIFZ1bGthbiBoYXQgZ2VyYWRlIEdvcmhndXMgdW1nZWJyYWNodC4KW1RvZDpFaW4gVnVsa2FuXSBJY2ggdmVydHJhZ2UgbmljaHQgc292aWVsIFNjaHVldHRlbGJpZXIuClRqYS4uLgpTY2hydW1wZmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipwZm9oKiAoS2FsbGlvcGUsIDI5LiBBdWcgMTk5NiwgMDM6NDU6MzgpOgoKPiB3dW5kZXIKRHUgd2lya3N0IGVpbiBXdW5kZXIuCkVpbmUgZ3V0ZSBGZWUgZXJzY2hlaW50IHVuZCB2ZXJ3ZWlnZXJ0IERpciBkcmVpIFd1ZW5zY2hlLgpNaXQgZWluZW0gZmllc2VuIExhY2hlbiB2ZXJzY2h3aW5kZXQgc2llIHdpZWRlci4KCipncm1wZiogRGllIFphdWJlcmVyZ2lsZGUgaXN0IGVpbiBLbGFja3MgZ2VnZW4gZGFzLgoKOkxhY2h0IHNpY2ggd2VnLApLYWxsaSAKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp6aXR0ZXJuLCBkaWUgeC10ZSAoR3V5YnJ1c2gsIDI5LiBBdWcgMTk5NiwgMDk6NDg6MTYpOgpbQWxsZ2VtZWluOkNhcmFkaHJhc10gaHVwcHMsIGFyYmVpdCBydWZ0CkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgpXZW5uIEJlcmdlIGtlaW5lIEx1c3QgaGFiZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBib2VzZSBib2VzZSBKaW1EaUdyaXR6IChSdW1hdGEsIDI5LiBBdWcgMTk5NiwgMTU6MjY6NTQpOgpbQWxsZ2VtZWluOkppbURpR3Jpel0gaWNoIHRlc3RlIHdhcywgc3RlcmJlIHZlcm11dGxpY2gKTHVpc2Ugd2V0enQgaWhyZSBLcmFsbGVuIGF1ZiBkZW0gQm9kZW4uIEVpbiBmdWVyY2h0ZXJsaWNoZXMgR2VyYWV1c2NoLgpbQWxsZ2VtZWluOkhlbHZhXSBoYWIgaWNoIGRvY2ggbmljaHQgc28gZ2VuYW5udCEKW1RvZDpMYXJzXSBFaW4gV2Fzc2VydW53ZXNlbiBoYXQgZ2VyYWRlIEtleSB1bWdlYnJhY2h0LgpbQWxsZ2VtZWluOkppbURpR3Jpel0gd2FyIGhhcm1sb3MKClJ1bWF0YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVG9sbGVyIFNlZ2VuLi4uIChHYXN0MSwgMjkuIEF1ZyAxOTk2LCAxODo1OTo0NSk6Cj4gPlRoYXNjbyBzaWVodCBDb2xhZ3JpbCBhbiwgYmVydWVocnQgc2llIGFtIEFybSB1bmQgbWVpbnQ6ICJDb2xhZ3JpbCwgaWNoCnNlaGUKdW5kIHNwdWVyZSwgZGFzcyBEdSBndXQgYmlzdC4gTWVpbmVuIFNlZ2VuIGZ1ZXIgRGljaC4gTW9lZ2UgYXVjaCBTYXBoaW5hIERpY2gKYmVodWV0ZW4gdW5kIG1pdCBXZWlzaGVpdCBlcmxldWNodGVuLiIgZGFubiBnZWh0IFRoYXNvIGhpbiB1bmQgc2VnbmV0CkNvbGFncmlsLgpDb2xhZ2lybCBnZWh0IGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgoKKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRvbGxlciBTZWdlbi4uLiAoQXNtb2RpcywgMjkuIEF1ZyAxOTk2LCAxOToyMTozNSk6Cn4jISBybj1HYXN0MSBydD04NDEzMzc5ODUKfiMhIHRpZD04NDEzMzc5ODUKV2FzIGlzdCBlaW4gQ29sYWdyaWwgPyBFaW4gR3JpbGwsIGRlciBtaXQgQ29sYSBsYWV1ZnQ/IEVpbiBHcmlsbCwgYXVmIGRlbSBtYW4KQ29sYSBoZWlzcyBtYWNoZW4ga2Fubj8gb2RlciBlaW5mYWNoIGVpbiBUaXBwZmVobGVyID8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVG9sbGVyIFNlZ2VuLi4uIChXYXJnb24sIDMwLiBBdWcgMTk5NiwgMTA6NTg6NDYpOgp+IyEgcm49QXNtb2RpcyBydD04NDEzMzkyOTUKfiMhIHRpZD04NDEzMzc5ODUKVmllbGxlaWNodCBrYW5uIFJvY2h1cyBkYSBmdWVyIEF1ZmtsYWVydW5nIHNvcmdlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJhdW1nZWZhZWxsZSAoSmFzcGVyLCAzMC4gQXVnIDE5OTYsIDE1OjE5OjIzKToKW1ZlcmxlZ3Qgdm9uIGQudmxhbmQsIFlhbnRybywgMzAuIEF1ZyAxOTk2LCAxMjo1NDoxOV06CmFsc28gaWNoIGZpbmQgZGFzIG5pY2h0IG9rLCB3ZW5uIGhpZXIgYWt0dWVsbGUgQXJ0aWtlbCBlaW5mYWNoIGdlbG9lc2NodAp3ZXJkZW4sIHZvciBhbGxlbSwgd2VubiBzaWUgc28gZWluZW4gU0NIV0VSV0lFR0VOREVOIEluaGFsdCBoYWJlbi4uLiB1bmQKZ2V3b2dlbiBoYXQgZGVyIEJhdW0gZWluaWdlcy4uLiBmcmFnIG1hbCBkYXMgQXV0bywgZGFzcyBkYSBkcnVudGVyIG11c3N0ZSA6LSkKClVuZCB3ZW5uIGVpbmVyIG1laW50LCBkYXNzIGRhcyBuaXggaGllciBtaXQgZGVyIFJ1YnJpayB6dSB0dW4gaGF0LCBkYW5uIGthbm4KbWFuIGRhcyB2b20gdmVybGllcmVuZGVuIExhbmQgbmFjaCBzY2htYXJybiB2ZXJzY2hpZWJlbiwgYWJlciBsb2VzY2hlbiBpc3QKdW5mZWluLgoKeWFudHJvLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtbW0uLi4gc29sbHRlIGVyIGRvY2ggRnJldW5kZSBoYWJlbj8gKFBhbXBlcnMsIDMwLiBBdWcgMTk5NiwgMTU6NTg6MTMpOgoKaWdub3JpZXJlIGRpZGkKRWluIGVudHNldHpsaWNoZXIgU2NocmVpIGhhbGx0IHZvbSBGcmllZGhvZiBoZXJ1ZWJlci4KRHUgaWdub3JpZXJzdCBqZXR6dCBmb2xnZW5kZSBNaXR0ZWlsdW5nZW46IGRpZGkuCgoKUGFtcGVycy4gS2ljaGVybmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVZWJlcnJhc2NodW5nISAoTmljaHRzLCAzMC4gQXVnIDE5OTYsIDE5OjAxOjI2KToKCj4gRHUgd2VuZGVzdCBEaWNoIG5hY2ggbGlua3MgdW5kIHN0YXBmc3QgbXVlaHNhbSBsb3MuCkRlciBTY2huYWJlbCByYXN0IGF1ZiBEaWNoIHp1OiBEdSB3aXJmc3QgRGljaCB6dXJ1ZWNrIURpciBnZWxpbmd0IGVzIG5pY2h0IAphdXN6dXdlaWNoZW4uIEVpbiBzdGVjaGVuZGVyIFNjaG1lcnogZHVyY2h6dWNrdCBEaWNoLApkYW5uIHdpcmQgZXMgZHVua2VsLgoKWnVlZ2lnLCBkb2NoLCBqYSA7LSkKCiIiCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIHNwaW5uZW4uLi4gKE1haGF0bWEsIDMxLiBBdWcgMTk5NiwgMjM6NTU6NDEpOgoKRGEgcmF1c2NodGUgamVtYW5kIG1pdCBzZWluZW4gU3VpemlkaXMgYW4gbWlyIHZvcmJlaS4uLiwgaW5mbyBsaWVmZXJ0OgoKRHUgdmVyZm9sZ3N0IFN1aXppZCwgU3VpemlkLCBTdWl6aWQsIFN1aXppZCwgU3VpemlkLCBTdWl6aWQsIFN1aXppZCwgU3VpemlkLApTdWl6aWQsClN1aXppZCwgU3VpemlkLCBTdWl6aWQsIFN1aXppZCwgU3VpemlkLCBTdWl6aWQsIFN1aXppZCwgU3VpemlkLCBTdWl6aWQsClN1aXppZCwgU3VpemlkLCBTdWl6aWQsIFN1aXppZCwgU3VpemlkLCBTdWl6aWQsIFN1aXppZCwgU3VpemlkLCBTdWl6aWQsClN1aXppZCwgU3VpemlkLCBTdWl6aWQgdW5kIFN1aXppZC4KCk1haGF0bWEsIGtvcGZzY2h1ZXR0ZWxuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwaWVnbGVpbiwgU3BpZWdsZWluLCBhbiBkZXIgV2FuZC4uIChDYXJhZGhyYXMsICAxLiBTZXAgMTk5NiwgMDA6MDk6MzUpOgpEdSBtdXJtZWxzdCBlaW4gcGFhciB1bnZlcnN0YWVuZGxpY2hlIFdvcnRlLCBtYWNoc3QgZWluaWdlIGJlc2Nod29lcmVuZGUKR2VzdGVuIHVlYmVyIGRlciBLdWdlbCwgdW5kIER1IHNpZWhzdDoKRHUgYmVmaW5kZXN0IERpY2ggaW4gZWluZXIga2xlaW5lbiBLYXBlbGxlLCBpbiBkZXIgRHUgYmV0ZW4ga2FubnN0LCB1bQp3aWVkZXIgRGVpbmUgbmF0dWVybGljaGUgR2VzdGFsdCB6dSBlcmhhbHRlbi4gQW0gbm9lcmRsaWNoZW4gRW5kZSBzdGVodAplaW4gQWx0YXIsIGF1ZiBkZW0gc2ljaCBlaW4gZ3Jvc3NlcyBLcmV1eiBiZWZpbmRldC4gSW4gZGVuIFdhZW5kZW4gc2llaHN0CkR1IGhlcnJsaWNoZSBGZW5zdGVyLCBkdXJjaCBkaWUgdGFnc3VlYmVyIGRhcyBMaWNodCBidW50IGhlcmVpbnNjaGVpbnQuCkltIFN1ZWRlbiBiZWZpbmRldCBzaWNoIGVpbmUgVHVlciwgZGllIHp1ciBTdHJhc3NlIGZ1ZWhydC4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRlbi4KQW1vbnN1bCBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyLiAgQW1vbnN1bCBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyLgpBbW9uc3VsIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuICBBbW9uc3VsIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuCkFtb25zdWwgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlci4gIEFtb25zdWwgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlci4KQW1vbnN1bCBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyLiAgRGVyIEdlaXN0IHZvbiBBbW9uc3VsLgpBbW9uc3VsIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuICBEZXIgR2Vpc3Qgdm9uIEVvd3luLgpBbW9uc3VsIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuICBJbiBlaW5lciBFY2tlIHN0ZWh0IGVpbiBPcGZlcnN0b2NrLgpBbW9uc3VsIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuICAKCgogVW5kIGRhdm9yIHdhcmVuIGVzIDMwIFN1aXppZHMgOikgb2RlciBzbwoKICAgICAgICAgIFJvdGhvcm4gQ2FyYWRocmFzIEJhcmF6aW5iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnBhc3N0ISA6KSAoRHVzdHksICAxLiBTZXAgMTk5NiwgMDA6MTc6NDUpOgpEZXIgV2VsdHJhdW0uIFVuZW5kbGljaGUgV2VpdGVuLiBEdSBzY2h3ZWJzdCB2b2VsbGlnIGZyZWkgaW4gZXR3YXMsIGRhc3MgbWFuCmthdW0gYWxzIEx1ZnQgYmV6ZWljaG5lbiBrb2VubnRlLiBUcm90emRlbSBzaWVoc3QgRHUgbWVya3d1ZXJkaWdlcndlaXNlIGFjaHQKQXVzZ2FlbmdlLgpFcyBnaWJ0IGFjaHQgc2ljaHRiYXJlIEF1c2dhZW5nZTogendlaSwgdmllciwgZnVlbmYsIHNlY2hzLCBkcmVpLCBhY2h0LCBzaWViZW4KdW5kIGVpbnMuCldvb2R5IGZyYWd0IHNpY2g6IFdhcyB6YWVobHQgc2Nob24uLi4uIFsvZHdhcmY6d29vZHldCgp3b29keSBvZmZlbnNpY2h0bGljaCBkaWUgYXVzZ2FlbmdlIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJc3QgSGFuIFBhaSBlaW4gVW50b3Rlcj8gKEphcmllbCwgIDIuIFNlcCAxOTk2LCAwMzoxMjo0OSk6CgpBbHMgRHUgZ3JhZGUgZGllIFBvc3RzdGF0aW9uIHZlcmxhc3NlbiB3aWxsc3QsIGhhZWx0IEhhbiBQYWkgRGljaCBhdWY6CidFaW5lIGtsZWluZSBTcGVuZGUsIGRhbWl0IEV1cmUgUG9zdCBhdWNoIHdpcmtsaWNoIHNjaG5lbGwgYW5rb21tdCEgRGVyIFdlZwppbiBkZW4gT3N0ZW4gaXN0IHdlaXQgdW5kIGdlZmFlaHJsaWNoLCBkYSB3YWVyZSBlaW5lIGtsZWluZSBTb25kZXJsZWlzdHVuZwpkb2NoIGFuZ2VicmFjaHQuIERpZSBTcGVuZGUgYmV0cmFlZ3QgbnVyIDQ4IE11ZW56ZW4sIGRpZSBJaHIgbWl0IGRlbSBCZWZlaGwKPFNwZW5kZT4gbGVpc3RlbiBrb2VubnQuYAogIER1IGdyZWlmc3QgSGFuIFBhaSBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIE1hZS1lbXBpLXVjaGkgYW4uCiAgRHUga3JhdHp0IEhhbiBQYWkuCiAgSGFuIFBhaSBncmVpZnQgRGljaCBtaXQgYmxvc3NlbiBIYWVuZGVuIGFuLgogIEhhbiBQYWkga3JhdHp0IERpY2guCkxQIDg1ICgtMykgIE1QIDAKICBEdSBncmVpZnN0IEhhbiBQYWkgbWl0IGVpbmVtIGdlbHVuZ2VuZW4gTWFlLWVtcGktdWNoaSBhbi4KICBEdSB0cmlmZnN0IEhhbiBQYWkgc2VociBoYXJ0LgpIYW4gUGFpIGZhZWxsdCB0b3QgenUgQm9kZW4uCkhhbiBQYWkgaGFlbHQgRGljaCB6dXJ1ZWNrLiBEdSBoYXN0IG9mZmVuc2ljaHRsaWNoIG5pY2h0IGdlbnVnIEdlbGQuCgoKTmFjaCBhdXNmdWVocmxpY2hlciBEaXNrdXNzaW9uIHNhaCBIYW4gUGFpIGVpbiwgZGFzcyBlciBzY2hvbiB0b3Qgc2VpIHVuZApkYW1pdCBuaWNodCBpbiBkZXIgTGFnZSBpcmdlbmR3ZWxjaGUgRm9yZGVydW5nZW4genUgc3RlbGxlbi4gTmV0dGVyIFdlaXNlCmxpZXMgZXIgbWljaCBkYW5uIG9obmUgU3BlbmRlIGdlbiBPc3RlbiB6aWVoZW4uIAoKSmFyaWVsIChsaWVidCBkaWUgb2VzdGxpY2hlIFdlaXRlIHVuZCBkZXJlbiBHZWZhaHIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSXN0IEhhbiBQYWkgZWluIFVudG90ZXI/IChMaSwgIDIuIFNlcCAxOTk2LCAxMDowNToxOCk6Cn4jISBybj1KYXJpZWwgcnQ9ODQxNjI2NzY5Cn4jISB0aWQ9ODQxNjI2NzY5Ckh1Y2guLi4uLgpMaSAod2lyZCBkZXIgQW50d29ydCBnbGVpY2ggbmFjaGdlaGVuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUHJlaXNyYWV0c2VsIChBbmF0b2wsICAyLiBTZXAgMTk5NiwgMTY6MTA6MzIpOgoKPiBzY2hhdQpbLi4uXQpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogcmF1cy4KNCBUb3Bhc2UuICgyKSAgICAgICAgICAgICAgICAgICAgICAgICAgOSBUb3Bhc2UuICg2KQo5IFJ1YmluZS4gKDQpICAgICAgICAgICAgICAgICAgICAgICAgICA2IFNtYXJhZ2RlLiAoMikKOCBoYWxia2FyYWV0aWdlIFNhcGhpcmUuICg0KSAgICAgICAgICAgMiBoYWxia2FyYWV0aWdlIFNhcGhpcmUuICgzKQpFaW4gaGFsYmthcmFldGlnZXMgT2t0YXJpbi4gKDIpICAgICAgICAzIGhhbGJrYXJhZXRpZ2VzIE9rdGFyaW4uICgzKQo3IGhhbGJrYXJhZXRpZ2UgQXF1YW1hcmluZS4gKDUpICAgICAgICA5IGhhbGJrYXJhZXRpZ2VzIE9rdGFyaW4uICgyKQpFaW4gVG9wYXMuICgyKSAgICAgICAgICAgICAgICAgICAgICAgICA3IFJ1YmluZS4gKDIpCkVpbiBSdWJpbi4gKDgpICAgICAgICAgICAgICAgICAgICAgICAgIDMgU21hcmFnZGUuICgzKQo0IFNtYXJhZ2RlLiAoNSkgICAgICAgICAgICAgICAgICAgICAgICA1IGhhbGJrYXJhZXRpZ2UgU2FwaGlyZS4gKDIpCjcgaGFsYmthcmFldGlnZSBTYXBoaXJlLiAoMikgICAgICAgICAgIEVpbiBTbWFyYWdkLgo3IGhhbGJrYXJhZXRpZ2VzIE9rdGFyaW4uICgzKSAgICAgICAgICA4IFNtYXJhZ2RlLiAoMikKOSBoYWxia2FyYWV0aWdlIEFxdWFtYXJpbmUuICg2KSAgICAgICAgOCBoYWxia2FyYWV0aWdlIEFxdWFtYXJpbmUuICgyKQo3IFRvcGFzZS4gKDMpICAgICAgICAgICAgICAgICAgICAgICAgICA2IGhhbGJrYXJhZXRpZ2UgU2FwaGlyZS4gKDIpCjYgUnViaW5lLiAoMikgICAgICAgICAgICAgICAgICAgICAgICAgIDUgaGFsYmthcmFldGlnZXMgT2t0YXJpbi4gKDUpCjkgU21hcmFnZGUuICg1KSAgICAgICAgICAgICAgICAgICAgICAgIDcgU21hcmFnZGUuCjkgaGFsYmthcmFldGlnZSBTYXBoaXJlLiAoMikgICAgICAgICAgIDMgaGFsYmthcmFldGlnZSBBcXVhbWFyaW5lLgoyIFNtYXJhZ2RlLiAoNSkgICAgICAgICAgICAgICAgICAgICAgICA2IFRvcGFzZS4KMiBoYWxia2FyYWV0aWdlIEFxdWFtYXJpbmUuICgzKSAgICAgICAgNiBoYWxia2FyYWV0aWdlIEFxdWFtYXJpbmUuCjQgUnViaW5lLiAoMikgICAgICAgICAgICAgICAgICAgICAgICAgIEVpbiBoYWxia2FyYWV0aWdlciBBcXVhbWFyaW4uICgyKQpFaW4gaGFsYmthcmFldGlnZXIgU2FwaGlyLiAoMykgICAgICAgICA1IFRvcGFzZS4gKDIpCjggVG9wYXNlLiAoMykgICAgICAgICAgICAgICAgICAgICAgICAgIDQgaGFsYmthcmFldGlnZSBBcXVhbWFyaW5lLgozIGhhbGJrYXJhZXRpZ2UgU2FwaGlyZS4gKDMpICAgICAgICAgICA1IFJ1YmluZS4KNiBoYWxia2FyYWV0aWdlcyBPa3RhcmluLiAoMykgICAgICAgICAgNSBTbWFyYWdkZS4KMiBUb3Bhc2UuICg0KSAgICAgICAgICAgICAgICAgICAgICAgICAgMiBoYWxia2FyYWV0aWdlcyBPa3RhcmluLgoyIFJ1YmluZS4gKDMpICAgICAgICAgICAgICAgICAgICAgICAgICAzIFRvcGFzZS4KNCBoYWxia2FyYWV0aWdlIFNhcGhpcmUuICgyKSAgICAgICAgICAgNSBoYWxia2FyYWV0aWdlIEFxdWFtYXJpbmUuCjQgaGFsYmthcmFldGlnZXMgT2t0YXJpbi4gKDQpICAgICAgICAgIEVpbmUgRmFsbHR1ZXIgKGdlc2NobG9zc2VuKS4KClVuZCBudW4gZGllIFByZWlzZnJhZ2U6IApXaWV2aWVsZSBTbWFyYWdkZSBsaWVnZW4gaGllciBoZXJ1bT8KKmdpZ2dsZSoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa3VlcnpsaWNoLi4uIChTdGFobGRvcm4sICAyLiBTZXAgMTk5NiwgMTg6NDE6NDEpOgpOYWphLCB3YXIgc28gZWluZSBzcGllbGVyZWkuLgo6Cgprd2VyCnRtIFN0YWhsZG9ybiBLV0VSRU5ERQogIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNb24sICAyLiBTZXAgMTk5NiwgMTg6MzU6NDUgKDc0IFRlaWxuZWhtZXIpCgpBZ29ueS4uLi4uLi4uLi4ucyAgR2FzdDEuLi4uLi4uLi4uLnMgIFRlbXB1cy4uLi4uLi4uLi5zICBXYWNobWFubi4uLi4uLi4ucwpZaW5paS4uLi4uLi4uLi4ucyAgWWFuZy4uLi4uLi4uLi4uLnMgIEViZW5lemVyLi4uLi4uLi5zICBGbGlkb21pci4uLi4uLi4ucwpHYXJudWxmLi4uLi4uLi4ucyAgTWlrYWRvLi4uLi4uLi4uLnogIFNjaG51ZWZmbGVyLi4uLi56ICBUc2hvYmVyLi4uLi4uLi4ucwpBbnRvci4uLi4uLi4uLi4ucyAgQWxtZHVkbGVyLi4uLi4uLnMgIEV0amFiaS4uLi4uLi4uLi5zICBPbGxlcmhlYWQuLi4uLi4ucwpaYXBwLi4uLi4uLi4uLi4ucyAgQWxtZXJhLi4uLi4uLi4uLnMgICpHaG9yd2luLi4uLi4uLi5zICBNb25kcmFnLi4uLi4uLi4ucwpNb3BweS4uLi4uLi4uLi4ucyAgU211dC4uLi4uLi4uLi4uLnMgIEJlbGdhcmF0aC4uLi4uLi5zICBEaWRpLi4uLi4uLi4uLi4ucwpLYXJvbHVzLi4uLi4uLi4ueiAgKkdyaXphYmVsbGEuLi4uLnMgIE1pY3JvLi4uLi4uLi4uLi5zICBTdW5mbG93ZXIuLi4uLi4ucwpUYWthbi4uLi4uLi4uLi4ucyAgKkdhbGluZ3JlZS4uLi4uLnMgIFRhcmEuLi4uLi4uLi4uLi56ICBWZXJlbmEuLi4uLi4uLi4ucwpEeW5hbW8uLi4uLi4uLi4ucyAgQ29sYWdpcmwuLi4uLi4uLnogIEZlc3Rpbi4uLi4uLi4uLi5zICBSYWluZG9nLi4uLi4uLi4ucwpWaW5jZW50dmVnYS4uLi4ucyAgU3BpbmRlbC4uLi4uLi4uLnQgIExhaWxhLi4uLi4uLi4uLi5zICBNaXJha2EuLi4uLi4uLi4uegpWYW5kYW1tZS4uLi4uLi4ueiAgKkFseHguLi4uLi4uLi4uLnogIERhdGEuLi4uLi4uLi4uLi56ICBQdWxzYXIuLi4uLi4uLi4uUwoqRnJ5ZGVyLi4uLi4uLi4uUyAgTWF2ZXJpY2suLi4uLi4uLnogIEplaG92YS4uLi4uLi4uLi5TICBOZXNhamEuLi4uLi4uLi4uUwpCb3R0b20uLi4uLi4uLi4uUyAgRmFudGFib3kuLi4uLi4uLlMgIFN0YWhsZG9ybi4uLi4uLi5TICBVcnphLi4uLi4uLi4uLi4uUwoqT3JrdG9ldGVyLi4uLi4uUyAgU2hhcmlhLi4uLi4uLi4uLnogIEtleS4uLi4uLi4uLi4uLi5TICBUYW5pcy4uLi4uLi4uLi4uUwoqQW5hdG9sLi4uLi4uLi4uUyAgWmVwaHlyLi4uLi4uLi4uLlMgIEFjcmltb24uLi4uLi4uLi5TICBOYXR1cmUuLi4uLi4uLi4uegpBdXJpYW4uLi4uLi4uLi4uUyAgTXlzZWxmLi4uLi4uLi4uLlMgIFpvcnJvLi4uLi4uLi4uLi5TICBOaWNodHMuLi4uLi4uLi4uUwpFc2N1YmFyLi4uLi4uLi4uUyAgUGF0cnluLi4uLi4uLi4uLlMgICpCZXJuaGFyZC4uLi4uLi5TICBTeW1iaW9udC4uLi4uLi4uUwoqUm9hZHJ1bm5lci4uLi4uUyAgKlN0ZWluaS4uLi4uLi4uLm0gIEF1Z3JhLi4uLi4uLi4uLi5tICBXdXJ6ZWwuLi4uLi4uLi4uUgotLW1laHItLSg5MSUpIEFORkFORyAtLW1laHItLSg5MSUpIEFORkFORyAKTXVwZmVsLi4uLi4uLi4uLlcgIEhhdGUuLi4uLi4uLi4uLi5FCgo+IHRtIHN0YWhsZG9ybiBLV0VSRU5ERQo+IEtleSBydWZ0OiBVSFVSQSEhCltBbGxnZW1laW46Wm9ycm9dIFVIVVJBCnJrIF9hbGxlIC90ZXN0ZW5kClVodXJhIHJ1ZnQ6IEsgRSBZISEKRHUga251ZGRlbHN0IEFnb255IHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBLbnVkZGxlIHdlbj8KPiBEdSBrbnVkZGVsc3QgVGVtcHVzIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgV2FjaG1hbm4gdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBZaW5JSSB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IFlhbmcgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBFYmVuZXplciB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IEZsaWRvbWlyIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgR2FybnVsZiB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IE1pa2FkbyB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IFNjaG51ZWZmbGVyIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgVHNob2JlciB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IEFudG9yIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgQWxtZHVkbGVyIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgRXRqYWJpIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBLbnVkZGxlIHdlbj8KPiBEdSBrbnVkZGVsc3QgWmFwcCB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IEFsbWVyYSB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IEdob3J3aW4gdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBNb25kcmFnIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgTW9wcHkgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBTbXV0IHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgQmVsZ2FyYXRoIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgRGlkaSB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IEthcm9sdXMgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBHcml6YWJlbGxhIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgTWljcm8gdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IFtBbGxnZW1laW46VWh1cmFdIFpPUlJPCkR1IGtudWRkZWxzdCBTdW5mbG93ZXIgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBUYWthbiB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IEdhbGluZ3JlZSB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IFRhcmEgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBWZXJlbmEgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBEeW5hbW8gdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBDb2xhZ2lybCB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IEZlc3RpbiB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IFJhaW5kb2cgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBWaW5jZW50VmVnYSB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IFNwaW5kZWwgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBMYWlsYSB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IE1pcmFrYSB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IFZhbmRhbW1lIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgQWx4eCB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IERhdGEgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBQdWxzYXIgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBGcnlkZXIgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IEtudWRkbGUgd2VuPwo+IER1IGtudWRkZWxzdCBKZWhvdmEgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBOZXNhamEgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBCb3R0b20gdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBGYW50YUJveSB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRGFzIGJyaW5ndCBkb2NoIG5peCwgbGFzcyBlcyBoYWx0Lgo+IER1IGtudWRkZWxzdCBVcnphIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgT3JrdG9ldGVyIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgU2hhcmlhIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgS2V5IHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgVGFuaXMgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBBbmF0b2wgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBaZXBoeXIgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBBY3JpbW9uIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgTmF0dXJlIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgQXVyaWFuIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgTXlzZWxmIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgWm9ycm8gdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBOaWNodHMgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBFc2N1YmFyIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgUGF0cnluIHRlc3RlbmQgYXVzIGRlciBGZXJuZS4KPiBEdSBrbnVkZGVsc3QgQmVybmhhcmQgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBTeW1iaW9udCB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IFJvYWRydW5uZXIgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBTdGVpbmkgdGVzdGVuZCBhdXMgZGVyIEZlcm5lLgo+IER1IGtudWRkZWxzdCBBdWdyYSB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IFd1cnplbCB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gRHUga251ZGRlbHN0IE11cGZlbCB0ZXN0ZW5kIGF1cyBkZXIgRmVybmUuCj4gSGF0ZSBpZ25vcmllcnQgRGVpbmVuIEtudWRkZWx2ZXJzdWNoLgo+IE9ya3RvZXRlciB2ZXJ3dXNjaGVsdCBEZWluZSBIYWFyZSBhdXMgZGVyIEZlcm5lLgpGZXN0aW4ga251ZGRlbHQgRGljaCBkYW5uIHZlcnNjaHdpbmRldCBzZWluIEdlaXN0IHVuZCBkdSBiaXN0IHdpZWRlciBhbGxlaW4gCmF1cyBkZXIgRmVybmUuCkVzY3ViYXIga251ZGRlbHQgRGljaCBlaXNiYWVyd3VzY2hlbGlnIGF1cyBkZXIgRmVybmUuClplcGh5ciB2ZXJ3dXNjaGVsdCBhdXMgZGVyIEZlcm5lIGdldGVzdGV0IERlaW5lIEhhYXJlLgpVcnphIGtudWRkZWx0IERpY2ggenVydWVjayBhdXMgZGVyIEZlcm5lLgpMYWlsYSBrbnVkZGVsdCBEaWNoIHRlc3R3ZWlzZSB6dXJ1ZWNrIGF1cyBkZXIgRmVybmUuClpvcnJvIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KU3VuZmxvd2VyIHRlaWx0IERpciBtaXQ6IGphID8KR2FsaW5ncmVlIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KVGFuaXMgZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBhbi4KRXNjdWJhciB0ZWlsdCBEaXIgbWl0OiBUZXN0ZW5zPyA7KQpUYXJhIGtudWRkZWx0IERpY2ggdm9yc2ljaHRpZyBhdXMgZGVyIEZlcm5lLgpTeW1iaW9udCBnaWJ0IGRpciBlaW46IFJFdGVzdC4gYXVzIGRlciBGZXJuZS4KTXlzZWxmIHZlcnd1c2NoZWx0IERlaW5lIEhhYXJlIC9yZS10ZXN0IGF1cyBkZXIgRmVybmUuClNoYXJpYSB0ZWlsdCBEaXIgbWl0OiBhbmdla29tbWVuID8/PyBkZXIgaXN0IGFiZXIgZ2VyYWRlIGdlaXN0IC4tLSB3aWVzbyA/Pz8/CkFsbWR1ZGxlciBrbnVkZGVsdCBEaWNoIHNvIGhlZnRpZyBkYXNzIGRpZSBLbm9jaGVuIGltIExlaWIgZXJ6aXR0ZXJuIGF1cyBkZXIgCkZlcm5lLgpTdGVpbmkga251ZGRlbHQgRGljaCBiZXN0ZWhlbmQgYXVzIGRlciBGZXJuZS4KVHNob2JlciB0ZWlsdCBEaXIgbWl0OiBTYWcgbWFsLi4uIGtlbm5lbiB3aXIgdW5zPwpGcnlkZXIga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpSYWluZG9nIHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1LgotYSBoaWhpIDopCltBbGxnZW1laW46U3RhaGxkb3JuXSBoaWhpIDopCj4gQWNyaW1vbiBpZGVsdCBtYWwgbmljaHQgYXVzIGRlciBGZXJuZS4KTmVzYWphIGtudWRkZWx0IERpY2ggdGVzdGJlc3RhZWRpZ2VuZCBhdXMgZGVyIEZlcm5lLgpHcml6YWJlbGxhIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KW0FsbGdlbWVpbjpBbG1kdWRsZXJdIHdobyB0aGUgZiogaXMgc3RhaGxkb3JuLi4uCgoKSGF0IGZ1bmt0aW9uaWVydCA6KQoKU1RBSEwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBpbSBOZXR6Li4uIChZZW5kaSwgIDMuIFNlcCAxOTk2LCAxMzoxNTozNCk6CgpQZXRlciBBcHBsZWJvbWUsIEludGVybmF0aW9uYWwgSW1pdGF0aW9uIEhlbWluZ3dheSBDb21wZXRpdGlvbgoKCiAgICAgICAgV2Ugd2VyZSB5b3VuZyBhbmQgb3VyIGhhcHBpbmVzcyBkYXp6bGVkIHVzIHdpdGggaXRzIHN0cmVuZ3RoLgpCdXQgdGhlcmUgd2FzIGFsc28gYSB0ZXJyaWJsZSBiZXRyYXlhbCB0aGF0IGxheSB3aXRoaW4gbWUgbGlrZSBhIE1lcmxlCkhhZ2dhcmQgc29uZyBhdCBhIEZyZW5jaCByZXN0YXVyYW50LiAuLi4KICAgICAgICBJIGNvdWxkIG5vdCB0ZWxsIHRoZSBnaXJsIGFib3V0IHRoZSB3b21hbiBvZiB0aGUgdG9sbHdheSwgb2YKaGVyIG1pbGsgd2hpdGUgQk1XIGFuZCBoZXIgSm9yZGFjaGUgc21pbGUuICBUaGVyZSBoYWQgYmVlbiBhIGZpZ2h0LiAgSQpoYWQgcHVuY2hlZCBoZXIgYm95ZnJpZW5kLCB3aG8gZm91Z2h0IHRoZSBtZWNoYW5pY2FsIGJ1bGxzLiAgRXZlcnlvbmUKdG9sZCBoaW0sICJZb3UgcmlkZSB0aGUgYnVsbCwgc2Vub3IuICBZb3UgZG8gbm90IGZpZ2h0IGl0LiIgQnV0IGhlIHdhcwpsZWFuIGFuZCB0b3VnaCBsaWtlIGEgYmFkIHJpYi1leWUgYW5kIGhlIGZvdWdodCB0aGUgYnVsbC4gIEFuZCB0aGVuIGhlCmZvdWdodCBtZS4gIEFuZCB3aGVuIHdlIGZpbmlzaGVkIHRoZXJlIHdlcmUgbm8gd2lubmVycywganVzdCBtZW4gZG9pbmcKd2hhdCBtZW4gbXVzdCBkby4gLi4uCiAgICAgICAgIlN0b3AgdGhlIGNhciwiIHRoZSBnaXJsIHNhaWQuICBUaGVyZSB3YXMgYSBsb29rIG9mIHRlcnJpYmxlCnNhZG5lc3MgaW4gaGVyIGV5ZXMuICBTaGUga25ldyBhYm91dCB0aGUgd29tYW4gb2YgdGhlIHRvbGx3YXkuICBJIGtuZXcKbm90IGhvdy4gIEkgc3RhcnRlZCB0byBzcGVhaywgYnV0IHNoZSByYWlzZWQgYW4gYXJtIGFuZCBzcG9rZSB3aXRoIGEKcXVpZXQgYW5kIHBlYWNlIEkgd2lsbCBuZXZlciBmb3JnZXQuCiAgICAgICAgIkkgZG8gbm90IGFzayBmb3Igd2hvbSdzIHRoZSB0b2xsd2F5IGJlbGxlLCIgc2hlIHNhaWQsICJ0aGUKdG9sbHdheSBiZWxsZSdzIGZvciB0aGVlLiIKICAgICAgICBUaGUgbmV4dCBtb3JuaW5nIG91ciB5b3V0aCB3YXMgYSBtZW1vcnksIGFuZCBvdXIgaGFwcGluZXNzIHdhcwphIGxpZS4gIExpZmUgaXMgbGlrZSBhIGJhZCBtYXJnYXJpdGEgd2l0aCBnb29kIHRlcXVpbGEsIEkgdGhvdWdodCBhcyBJCnBvdXJlZCB3aGlza2V5IG9udG8gbXkgZ3Jhbm9sYSBhbmQgZmFjZWQgYSBuZXcgZGF5LgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgZ2VodCBkYW5uIGRvY2ggZXR3YXMgenUgc2NobmVsbC4uLiAoQm9uaSwgIDMuIFNlcCAxOTk2LCAxNTo1Njo1Nyk6CkViZW4gaW4gZGVyIEFubWVsZHVuZzoKCj5tZwpEaWUgU2VrcmV0YWVyaW4gc2FndCA6IE9rYXksIGljaCB3ZXJkZSB1bnNlcmUgR2xhZGlhdG9yZW4gaW4gZGllIEFyZW5hCnNjaGlja2VuLiBCaXR0ZSBnZWhlbiBTaWUgbnVuIGF1Y2ggaW4gZGllIEFyZW5hIQo+dwpEYSBEdSBuaWNodCB3aWVkZXIgaW4gZGllIEFyZW5hIHp1cnVlY2tnZWhlbiB3b2xsdGVzdCwgd3VyZGUgZGVyIEthbXBmIGpldHp0CmFiZ2Vicm9jaGVuLgoKCldpZSBzY2huZWxsIHNvbGwgaWNoIGRlbm4gbm9jaCBoaW5yZW5uZW4/Pz8KCkJvbmkga29tcG9uaWVydCBlaW4gTGllZCB6dSBFaHJlbiBkZXIgU2VrcmV0YWVyaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXb3chIChUYXNoYSwgIDMuIFNlcCAxOTk2LCAyMDoxNzo1MCk6CmViZW4gcGFzc2llcnQ6Cgo+c2NobnVycmUKRHUgaG9lcnN0IGVpbiBHcm9sbGVuLiBEZXIgVnVsa2FuIGlzdCB3aWVkZXIgbWFsIGFrdGl2LgoKSWNoIGJpbiBlY2h0IHZvbiBtaXIgYmVlaW5kcnVja3QhCgpUYXNoYSwgaW1tZXJub2NoIHN0YXVuZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLiAoSmFzcGVyLCAgMy4gU2VwIDE5OTYsIDIyOjU0OjM0KToKd2VyIHdhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VyIHdpbGwgc2Nob24gT3JrcyBoYWJlbj8gKEphcmllbCwgIDMuIFNlcCAxOTk2LCAyMzo0Mzo0Nik6Cj4gc2NoYXUKRHUgc3RlaHN0IGFuIGRlciBPc3RzZWl0ZSBkZXMgT3JrbGFnZXJzLiBOYWNoIE9zdGVuIGJlZ3JlbnplbiBQYWxpc2FkZW4KZGFzIExhZ2VyLiBOYWNoIFdlc3RlbiBnZWh0IGVzIHp1bSBaZW50cnVtIGRlcyBIb2Zlcy4gSW0gTm9yZGVuIHN0ZWh0IGVpbgprbGVpbmVzIFplbHQgdW5kIGltIFN1ZWR3ZXN0ZW4gZWluIGV0d2FzIGdyb2Vzc2VyZXMuCkltIEJvZGVuIHNpZWhzdCBEdSBlaW5lIGFiZ2VzY2hsb3NzZW5lIEx1a2UgLgpFcyBnaWJ0IGZ1ZW5mIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWR3ZXN0ZW4sIHN1ZWRlbiwgd2VzdGVuLCBub3JkZW4gdW5kCm5vcmR3ZXN0ZW4uCkVpbiByaWVzaWdlciBPcmtoZW5rZXIuCkVpbiBSaWNodGJsb2NrLgo+IGxlZyBhbGxlcyBpbiBwYWtldApEZXIgT3JrIGlzdCBuaWNodCBsZWVyICEKCkRhIHd1bmRlcnQgbWFuIHNpY2ggZG9jaCBzY2hvbiwgZ2VsbD8KTmFqYSBzY2hhZGUgZGFzcyBpY2ggZGVtIE9yayBuaXgga2xhdWVuIGtvbm50ZSA6LSkKCkphcmllbCB0cmFlZ3QgbmllIE9ya3MgaW4gc2VpbmVtIFBha2V0IHNwYXppZXJlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsZWluZSBTdWVuZGVuLi4uIChBbmF0b2wsICA0LiBTZXAgMTk5NiwgMDE6MDY6MDgpOgoKW0FsbGdlbWVpbjpNcllldGldIEltIEx1cGluZW50YWwgZmFlbmd0IGRhcyBlcnN0ZSBRdWVzdCBhbiEKW1RvZDpMYXJzXSBFaW4gTmVjcm9tYW50IGhhdCBnZXJhZGUgTXJ5ZXRpIHVtZ2VicmFjaHQuCgoKLi4uIHN0cmFmdCBkZXIgbGllYmUgR290dCBzb2ZvcnQuCgpTb3JyeSwgU2NocnVtcGZpIDstKQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLiAoTXVwZmVsLCAgNC4gU2VwIDE5OTYsIDAxOjA4OjMzKToKTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAuIChGeXQsICA0LiBTZXAgMTk5NiwgMDE6MTQ6MjApOgp+IyEgcm49TXVwZmVsIHJ0PTg0MTc5MjExMwp+IyEgdGlkPTg0MTc5MjExMwoKV2llIGtvbW10IGRlciBOZWNyb21hbnQgaW5zIEx1cGluZW50YWw/CgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gZ2FueiBub3JtYWxlciBUYWcgaW0gTGViZW4gZWluZXMgTWFnaWVycy4uLiAoWmFyZG96LCAgNC4gU2VwIDE5OTYsIDE0OjE4OjEwKToKPiBbTWFnaWVyOkNhbHVtXSBzY2hvZW4sIG9ldHRpIHdhciBzdGVsbGVud2Vpc2Ugb3JpZ2luZWxsLCBhYmVyIGRhcyBrYW5uIGVyIG1pdApbTWFnaWVyOkNhbHVtXSBlaW5lbSBTcGllbHJ6d2VpdGllIGViZW5zb2d1dCBzZWluICh1bmQgb2huZSBhbmRlcmVuIGF1ZiBkaWUKW01hZ2llcjpDYWx1bV0gRnVlcnNzZSB6dSB0cmV0ZW4pCltNYWdpZXI6RHVyaWFuXSBMT1MgS09NTSBTQ0hPTiwgV0lSIFRSQUdFTlMgSU4gREVSIE1QQSBBVVMhIERBTk4gSEFCRU4gQUxMRQpbTWFnaWVyOkR1cmlhbl0gV0FTIERBVk9OISEhISA6LSkKW01hZ2llcjpQYW1wZXJzXSBTcGllbGVyIHJhdXMhCltNYWdpZXI6WmFyZG96IGdyaW5zdCBEdXJpYW4gYW5dCltNYWdpZXI6TW9yZ290aF0gSkFKQUpBSkEKW01hZ2llcjpaYXJkb3pdIEljaCBmaW5kIGRpZSBBcnRpa2VsIG51ciBsdXN0aWcuIEhhdHRlIHNlbHRlbiBzbyBlaW5lbiBTcGFzcy4KW01hZ2llcjpaYXJkb3pdIDopCj4gW01hZ2llcjpQYW1wZXJzXSBHRU5BVSEgREVJTiBBUlQgS09UWiBNSUNIIFNDSE9OIEVXSUcgQU4sIERVUklBTiEhISEgOy0pCltNYWdpZXI6TW9yZ290aF0gRFUgQUxURVIgSE9TRU5QSVNTRVIgSEFMVCBESUNIIERBIFJBVVMKW01hZ2llcjpEdXJpYW5dIFBBTVBFUlMgRFUgRFVNTUUgU09DS0UhISEgSUNIIFdFUkQncyBESVIgWkVJR0VOISEhISEhIFdFTENIRQpbTWFnaWVyOkR1cmlhbl0gUlVCUklLPz8KW01hZ2llcjpQYW1wZXJzXSBwb2xpemVpLmJlc2Nod2VyZGVuLi4uIDstKQpbTWFnaWVyOk1vcmdvdGggd2FlbHR6dCBzaWNoIGZhc3QgenUgVG9kZV0KW01hZ2llcjpEdXJpYW5dIE5lZWUsIGRhcyBsZXNlbiB6dXdlbmlnIDotKQpbTWFnaWVyOlBhbXBlcnMga2ljaGVydC5dCltNYWdpZXI6TW9yZ290aF0gcGFydHkKW01hZ2llcjpNb3Jnb3RoXSBzdGVodCBzb3dpZXNvIG51ciBzY2hlaXNzZSBkcmluCltNYWdpZXI6Q2FsdW1dIG1hY2h0cyBkb2NoIGluIGQuc2NoYXR0ZW53ZWx0LiBEaWUgaXN0IGltbWVyIHNvIGxlZXIKW01hZ2llcjpEdXJpYW5dIENhbHVtLCBnZWlsZSBJZGVlISEhIQpbTWFnaWVyOk1vcmdvdGhdIGxvcyBpaHIgRXMsIGdlYnQgZGllIGVyem1hZ2llci1ydWJyaWsgZnJlaQo+IFtNYWdpZXI6RHVyaWFuXSBEYXMgbGllc3QgZG9jaCBrZWluZSBTYXUgLi4uIGFlaCA6LSkKW01hZ2llcjpNb3Jnb3RoXSB3aWUsIGRhcyB3YXJzIHNjaG9uCltNYWdpZXI6TW9yZ290aCBzY2htb2xsdF0KW01hZ2llcjpQYW1wZXJzXSBTQ0hOQVVaRSEgRFUgQklTVCBET0NIIFNPV0lFU08gREFTIExFVFpURSEKW01hZ2llcjpEdXJpYW5dIE1PUkdPVEghISEhISEgSEFMVCBESUNIIERBIFJBVVMsIEhJRVIgS0FFTVBGRU4gTUFFTk5FUiEhIQpbTWFnaWVyOkR1cmlhbl0gS2F0emVubGllYmhhYmVyIDotKQpbTWFnaWVyOk1vcmdvdGhdIEFDSCBKQSwgUEFTUyBCTE9TUyBBVUYsIElDSCBIQUIgTk9DSCBERUlORSBXQVNTRVJGTEFTQ0hFLgpbTWFnaWVyOk1vcmdvdGhdIERJRSwgRElFLCBESUUuLi4uSUNIIFdFUkRFIFNJRTouLi4uLgpbTWFnaWVyOlBhbXBlcnNdIFdBUk1EVVNDSEVSIQpbTWFnaWVyOk1vcmdvdGhdIHdpbmRlbHRyYWVnZXIKW01hZ2llcjpEdXJpYW5dIFBhbXBlcnMgbGFzc2VuIHdpciBlcywgd2lyIHN1Y2hlbiBHZWduZXIsIGtlaW5lIE9wZmVyIQpbTWFnaWVyOk1vcmdvdGhdIHplY2hwcmVsbGVyICoqdW50ZXIgZGllIGd1ZXJ0ZWxsaW5pZSBzY2hsYWcqKgpbTWFnaWVyOlBhbXBlcnMgbGFjaHQuXQpbTWFnaWVyOk1vcmdvdGggZ3JpbnN0XQpbTWFnaWVyOkNhbHVtIHJvdGZsdCBhdWNoIG51ciBub2NoLl0KCnVuZCBzbyB3ZWl0ZXIgdW5kIHNvIHdlaXRlci4uLi4gTWFnaWVyIGhhYmVuIGhhbHQgbml4IHp1IHR1bi4uLgoKQ2lhbyBaYXJkb3oKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCld1c3N0IGljaHMgZG9jaCBpbW1lciAoQ2FyYWRocmFzLCAgNC4gU2VwIDE5OTYsIDE0OjM1OjIzKToKZWJlbmUgbmV1IG1hZ2llci5tdWVsbCBOYSB3YXMgd29obCA6LSkKLi4uCnNwYWV0ZXI6Ci1tYWdpZXIubXVlbGwtCkRpZSBFYmVuZSAnbWFnaWVyJyBnaWJ0IGVzIG5pY2h0IQoKICAgPT4gQXVjaCBNYWdpZXIgZ2lidCBlcyBuaWNodCwgZGVubiBzb25zdCBoYWV0dGVuIHNpZSBqYSBlaW5lIEViZW5lCgogID0+IFdhcnVtIHNjaHJlaXQgaWhyIGVpZ2VudGxpY2ggaGllciBzbyBydW0/IE9ldHRpIGdhYnMgbmllIDotKQoKICAgIENhcmFkaHJhcyBCYXJhemluYmFyIC0gbnVyIGVjaHQgd2VubiBTZWhlciBkcmF1ZnN0ZWh0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgV2VsdCBkZXIgdGF1c2VuZCBFYmVuZW4/IChDYXJhZGhyYXMsICA0LiBTZXAgMTk5NiwgMTY6MTY6NDQpOgpbbWFnaWVyLm11ZWxsOkhhdGVdIEljaCBmcmFnZSBtaWNoLCB3YXMgZGllc2UgZWJlbiBzb2xsPwpbbWFncy5zY2hyZWl0LmhhbHQuYWxsZS5ydW06Q2FyYWRocmFzXSB0ZXN0Ci1tYWdzPwptYWdzLnNjaHJlaXQuaGFsdC5hbGxlLnJ1bSwgTmEgd2FzIHdvaGwgOi0pLgpEdSBzaWVoc3QgMyBHZXNpY2h0ZXIgYXVmIGRlciBFYmVuZSAnbWFncy5zY2hyZWl0LmhhbHQuYWxsZS5ydW0nOgpDYXJhZGhyYXMsIEdhc3QxLCBQYW1wZXJzCkNhcmFkaHJhcyBoYXQgZGFzIFNhZ2VuIGF1ZiBkaWVzZXIgRWJlbmUuClttYWdzLnNjaHJlaXQuaGFsdC5hbGxlLnJ1bTpDYXJhZGhyYXNdIG9oIDopCj4gW21hZ3Muc2NocmVpdC5oYWx0LmFsbGUucnVtOlBhbXBlcnNdIFNDSE5BVVpFISEhClttYWdzLnNjaHJlaXQuaGFsdC5hbGxlLnJ1bTpDYXJhZGhyYXNdIGhpaGkKPiBbbWFncy5zY2hyZWl0LmhhbHQuYWxsZS5ydW06UGFtcGVycyBncmluc3QuXQoKICBMdXN0aWcsIGRpZSBuZXVlbiBFYmVuZW4gOikgTnVyIHdpZSBrcmllZyBpY2ggbWFnaWVyLm11ZWxsIG51ciB3ZWc/CgogICAgIFJvdGhvcm4gQ2FyYWRocmFzIGdyaW5zdCBpbiBzaWNoIHJlaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClplbnN1ciAoSmFzcGVyLCAgNC4gU2VwIDE5OTYsIDE3OjUzOjA3KToKW1ZlcmxlZ3Qgdm9uIHdpdHplLCBHcmltbWJvcm4sICA0LiBTZXAgMTk5NiwgMTY6NDg6MjldOgoKSWNoIGhhYiBoaWVyIGViZW4gZWluIHBhYXIgQXJ0aWtlbCBnZWxvZXNjaHQsIGRpZSBudXIgZGVuIEluaGFsdCBoYXR0ZW4gImZpbmQKaWNoIGd1dCIsICJmaW5kIGljaCBzY2hsZWNodCIgIm1hY2hzIGRvY2ggYW5kZXJzIiB1bmQgc28gaW4gZGllIFJpY2h0dW5nLgpVbmQgc293YXMgd2VyZGUgaWNoIGluIFp1a3VuZnQgaGllciBhdWNoIG5pY2h0IHVudGVybGFzc2VuLCBkYWZ1ZXIgaXN0IGRlcgpUaXRlbCBkZXIgUnVicmlrIGRldXRsaWNoIGdlbnVnLgpVbmQgZGllc2VyIEFydGlrZWwgaXN0IGhpZXIgZHJpbiBmdWVyIGRlbiBGYWxsLCBkYXNzIHNpY2ggamVtYW5kIGJlc2Nod2VyZW4Kd2lsbCB1bmQgbmljaHQgd2Vpc3MgYmVpIHdlbS4uLiA7LSkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCwgWmVuc29yLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBaZW5zdXIgKEphc3BlciwgIDQuIFNlcCAxOTk2LCAxNzo1MzoyMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODQxODQ4NTA5Cn4jISB0aWQ9ODQxODQ4NTA5CltWZXJsZWd0IHZvbiB3aXR6ZSwgQ2F1bm8sICA0LiBTZXAgMTk5NiwgMTY6NDk6NTJdOgoKU2VsdHNhbWVyIFdpdHogLi4uCgpDLiBObwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5lIGR1IEdyaW1taSBhbHNvIGRhcyBmaW5kIGljaCB2b2xsIG5pY2h0IGluIE9yZG51bmcgRHUuIChKYXNwZXIsICA0LiBTZXAgMTk5NiwgMTc6NTM6MzkpOgpbVmVybGVndCB2b24gd2l0emUsIFBhbXBlcnMsICA0LiBTZXAgMTk5NiwgMTY6NTI6MTJdOgpBbHNvIGlyZ2Vud2llIGZpbmQgaWNoIGRhcyBzY2hhZGUsIGRhc3MgRHUgbWVpbnN0LCBEVSBrb2VubnRlc3QgRGljaCBoaWVyIHp1bQpPYmVyemVuc29yIGF1ZnNjaHdpbmdlbi4uLgpOZWUgYWxzbyBzbyBnZWh0cyBqYSBudW4gd2lya2xpY2ggbmljaHQuLi4KClBhbXBlcnMuIFdpcmZ0IHdpZWRlciBXYXR0ZWJhZXVzY2hjaGVuLgoobWFuIGJlYWNodGUgZGllIGFsbGl0ZXJhdGlvbikhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFplbnN1ciAoSmFzcGVyLCAgNC4gU2VwIDE5OTYsIDE3OjUzOjU0KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NDE4NDg1MDkKfiMhIHRpZD04NDE4NDg1MDkKW1ZlcmxlZ3Qgdm9uIHdpdHplLCBBc21vZGlzLCAgNC4gU2VwIDE5OTYsIDE3OjM5OjIyXToKRmluZCBpY2ggZ3V0LCB3YXMgZHUgbWFjaHN0LCBHcmltbWkgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZW5zY2ggaGF0cyBoaWVyIEtvcGllcmVyLi4uIChDYXJhZGhyYXMsICA0LiBTZXAgMTk5NiwgMjE6NTI6NDkpOgprb3BpZXJlIHBsYW4KRGVyIEJvZGVuIGJlZ2lubnQgenUgeml0dGVybiB1bmQgYW0gSG9yaXpvbnQgc2NoZWludCBkZXIgSGltbWVsIHp1IGJyZW5uZW4uCgogICAgICpzdGF1dXV1dXV1dW4qICBCaW4gaWNoIGFiZXIgZXJzY2hyb2NrZW4hCgogIFJvdGhvcm4gQ2FyYWRocmFzIHdhcm50OiBRdWVzdGVuIHNjaGFkZXQgaWhyZXIgR2VzdW5kaGVpdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIFNwcnVjaCBkZXIgV29jaGUuLi4gKEdyaW1tYm9ybiwgIDUuIFNlcCAxOTk2LCAwMToxMjo1MCk6Ci4uLmtvbW10IGxlaWRlciBub2NodCBhdXMgbWVpbmVtIEthbGVuZGVyLCBkYSBzZWxiaWdlciBhYmdlbGF1ZmVuIGlzdCB1bmQgaWNoCmRlbiBuZXVlbiBlcnN0IG5hZWNoc3RlIFdvY2hlIGJla29tbWUuIERhaGVyIGhhYiBpY2ggbWllIHNlbGJlciBlaW5lbgphdXNnZXN1Y2h0LgoKIldpciBtdWVzc2VuIGRhcyBSaXNpa28gYXVmIHVucyBuZWhtZW4gdW5kIEZyYXVlbiB2ZXJzdGFlcmt0IGluIGRpZQpQYXJ0ZWlhcmJlaXQgZWluYmluZGVuLiIgKEdlbmVyYWxzYWVrcmV0YWVyIGRlciBDU1UsIGljaCBrYW5uIG1pciBkZW4gTmFtZW4KbmllIG1lcmtlbikKCkdyaW1tYm9uIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJZGxlIGltIGRlYXRoX3Jvb20uLi4uIChQYW1wZXJzLCAgNS4gU2VwIDE5OTYsIDEzOjEzOjUwKToKW1RvZDpMYXJzXSBFaW4gWWEtTWFubiBoYXQgZ2VyYWRlIE1hY3EgdW1nZWJyYWNodC4KICBEZXIgWWEtTWFubiB0cmlmZnQgTWFjcSBoYXJ0LgogIERlciBZYS1NYW5uIHRyaWZmdCBNYWNxIGhhcnQuCnNjaGF1Clsvcm9vbS9kZWF0aC9kZWF0aF9yb29tXQpFaW4gZHVua2xlciBSYXVtLCBlcmxldWNodGV0IHZvbiBkdW5rbGVtIExpY2h0LCBkYXMgc2ljaCBkZXIgRHVua2VsaGVpdCBuaWNodApzbyBzZWhyIHp1IHdpZGVyc2V0emVuIHNjaGVpbnQsIGluZGVtIGVzIGxldWNodGV0LCBhbHMgZGFzcyBlcyBkZXIgZHVua2Vsc3RlClB1bmt0IGluIGVpbmVyIHdlbmlnZXIgZHVua2xlbiBVbWdlYnVuZyBpc3QuIEltIHNlbHRzYW1lbiBMaWNodCBlcmtlbm5zdCBEdQplaW5lbgp6ZW50cmFsIGF1Zmdlc3RlbGx0ZW4gU2NocmVpYnRpc2NoLCBkZXIgbWl0IERpYWdyYW1tZW4gdW5kIEJ1ZWNoZXJuIGJlZGVja3QKaXN0LgpEaWUgV2FlbmRlIHZlcnNjaHdpbmRlbiBoaW50ZXIgUmVnYWxlbiwgZGllIGdlZnVlbGx0IHNpbmQgbWl0IGluIExlZGVyIGdlLQpidW5kZW5lbiwgZHVua2xlbiBXYWVsemVybiwgdm9uIGRlbmVuIGdlaGVpbW5pc3N2b2xsZSBSdW5lbiBsZXVjaHRlbi4KRXMgZ2lidCBrZWluZSBzaWNodGJhcmVuIEF1c2dhZW5nZS4KRGVyIEdlaXN0IHZvbiBNYWNxLiBbL2h1bWFuOm1hY3FdCgoKUGFtcGVycy4gRGVyIG5pY2h0IHd1c3N0ZSwgZGFzcyBhdWNoIFRvdGUgbm9jaCBhbmdlZ3JpZmZlbiB3ZXJkZW4uLi4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWRsZSBpbSBkZWF0aF9yb29tLi4uLiAoV3VyemVsLCAgNS4gU2VwIDE5OTYsIDEzOjE1OjM1KToKfiMhIHJuPVBhbXBlcnMgcnQ9ODQxOTIyMDMwCn4jISB0aWQ9ODQxOTIyMDMwCmhtLCBlcyBoYXQgYXVjaCBuYWNodGVpbGUsIGRhc3MgdG90ZSBrZWluZW4gdHlwby1iZWZlaGwgYWJzZXR6ZW4ga29lbm5lbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVmYW1tZW5mYWZmdW5nLi4uIChSYW50YW5wbGFuLCAgNS4gU2VwIDE5OTYsIDEzOjQ2OjQzKToKRWluZW4gaGFiIGljaCBub2NoICEhCgpXYXIgbHVzdGlnLCBoaWVyIG1laHJmYWNoIChuYXR1ZXJsaWNoIG9obmUgTmFtZW4genUgbmVubmVuKQpwc3ljaG9hbmx5c2llcnQgdW5kIHNvemlhbGVtb3Rpb25hbCBhdXNlaW5hbmRlcmdlbm9tbWVuIHp1IHdlcmRlbi4KCkljaCBmYXNzZSB6dXNhbW1lbjoKCk9ldHRpIHdhciBlaW4gdmVyYW50d29ydHVuZ3Nsb3NlcywgbGllYmVuc3dlcnRlcywgcmVzcGVrdGxvc2VzLAphdWZydWVocmVyaXNjaGVzLCBhbmFyY2hpY2hlcywgcGF0aG9sb2dpc2NoIHNlbGJzdGRhcnN0ZWxsZXJpc2NoZXMsCmxhdXRlcywgd2lsZGVzLCBzZXh1ZWxsIHZlcmtsZW1tdGVzLCBnZW1laW5lcywgc2lubmxvc2VzLApzdWVzc2VzIGFiZXIgY2hhcm1hbnRlcywgcHJhZS0gYmlzIHBvc3RwdWJlcnRhZXJlcywgdW5rb252ZW50aW9uZWxsZXMsCmVjaHQgbmV0dGVzLCBkdW1tZXMsIGFycm9nYW50ZXMsIGNvb2xlcywgaGVyb2lzY2hlcywgZ2Vsb2VzY2h0ZXMsCmluZGlmZmVyZW50ZXMsIGZsZWlzY2hnZXdvcmRlbmVzLCBzaWNoIHNlbGJzdCBuaWNodCB1bnRlciBrb250cm9sbGUKaGFiZW5kZXMgKG15IHBlcnNvbmFsIGZhdm91cml0ZSksdG9sZXJhbnRlcywgd2ljaHRpZ2VzIGJpcyB3aWNodGlndHVlcmlzY2hlcyAKCmEuKSBrbGVpbmVzIEFyc2NobG9jaAoKYi4pIGdyb3NzZXMgQXJzY2hsb2NoCgpjLikgTWFnaWVyc2hlbGxkaW5nZW5zCgpkLikgS29udHJhCgplLikgUmUKCmYuKSBTY2hhZgoKZy4pIGlyZ2VuZGVpbiBUaWVyIGF1cyBCcmVobXMgVGllcmxlYmVuCgpoLikgR2VyYWV0CgppLikgU2NobmFlZ2dzY2hlCgpqLikgV2lsZHNhdQoKaC4pIERpbmcgYXVzIGVpbmVyIGFuZGVyZW4gV2VsdAoKay4pIFBsYW4gOSBmcm9tIG91dGVyIFNwYWNlCgpsLikgS2lsbGVyZ2VtdWVzZSAoYmV2b3J6dWd0IFRvbWF0ZSkKCm0uKSBwZnJycnR6Li4uCgpSKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZ1ZmFtbWVuZmFmZnVuZy4uLiAoQ2FyYWRocmFzLCAgNS4gU2VwIDE5OTYsIDEzOjQ3OjQzKToKfiMhIHJuPVJhbnRhbnBsYW4gcnQ9ODQxOTI0MDAzCn4jISB0aWQ9ODQxOTI0MDAzCkRlaW4gR2x1ZWNrIGRhc3MgRHUgbmljaHQgQmVyZyBkYXp1Z2VzY2hyaWViZW4gaGFzdCwgZGFzIHdhZXIgbmUKQmVsZWlkaWd1bmcgZ2V3ZXNlbi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGdWZhbW1lbmZhZmZ1bmcuLi4gKER1cmlhbiwgIDUuIFNlcCAxOTk2LCAxNDozNjozMyk6Cn4jISBybj1SYW50YW5wbGFuIHJ0PTg0MTkyNDAwMwp+IyEgdGlkPTg0MTkyNDAwMwpTdGltbXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVlciBTcG9ydD8gKER1cmlhbiwgIDUuIFNlcCAxOTk2LCAxNTowOTowMik6CgpHZXJhZGUgYXVzcHJvYmllcnQsIGxhdHVlcm5pY2ggYW0gVGVzdGllIC4uLgoKendpbmdlIGtsb25rIHp1IHp3aW5nZSBwYW1wZXJzIHp1IHphcCBiYXVrbmVjaHQKUGFtcGVycyBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuCkJhdWtuZWNodCBmYWVsbHQgdG90IHp1IEJvZGVuLgpEdSBzaWVoc3QgZWluZSBkdW5rbGUgR2VzdGFsdCwgZGllIGV0d2FzIER1bnN0IGVpbnNhbW1lbHQgLi4uIG9kZXIgdmllbGxlaWNodApiaWxkZXN0IGR1IERpciBkYXMgYXVjaCBudXIgZWluIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTUFnaWVyLi4uLiAqc2V1ZnoqIChQYW1wZXJzLCAgNS4gU2VwIDE5OTYsIDE1OjI3OjEzKToKCgpbTWFnaWVyOlBhbXBlcnNdIHdhcyBwYXNzaWVydCBiZWkgbGV2ZWwgNDUgbWFnaWVyIGdpYnQgZWluOiB6d2luZ2Uga2xvbmsgenUKW01hZ2llcjpQYW1wZXJzXSB6d2luZ2UgcGFtcGVycyB6dSB6YXAgcmFudGFucGxhbj8KW01hZ2llcjpNb3Jnb3RoXSB3YWVyIG1hbCBuZW4gdmVyc3VjaCB3ZXJ0IDwxNDo1ODozMz4KW01hZ2llcjpLbG9ua10gdm9yIGFsbGVtIHdlciBpc3QgZGVyIGtpbGxlcj8gPDE0OjU4OjMzPgpbTWFnaWVyOlBhbXBlcnNdIHdlciBpc3Qga2lsbGVyIGJ6dy4gZmFlbGx0IHVlYmVyaGF1b3QgZWluZXIgdW0/IDwxNDo1ODo0Mz4KW01hZ2llcjpNdXJrZXNdIEF1c3Byb2JpZXJlbiAuLi4uIDopIDwxNDo1OToxMz4KW01hZ2llcjpLbG9ua10gd3VlcmRlIGpldHp0IG1hbCBlaW4gbGV2ZWw0NSBlaW5nZWJlbjogendpbmdlIGtsb25rIHp1IHp3aW5nZQpbTWFnaWVyOktsb25rXSBwYW1wZXJzIHp1IHphcCByYW50YW5wbGFuPwpbTWFnaWVyOkR1cmlhbl0gRGF0dCBnZWh0IGVoIG5pY2h0LCBtYW4ga2VpbmUgTWFnaWVyIHp3aW5nZW4sIHp1bWluZGVzdCBuaWNodApbTWFnaWVyOkR1cmlhbl0gYWxzIFJNLiA8MTU6MDM6NTE+CkR1cmlhbiB6d2luZ3QgRGljaCB6dTogc2FnZSBJY2ggYmluIGVpbmUgV0luZGVsIS4KRHUgc2Fnc3Q6IEljaCBiaW4gZWluZSBXSW5kZWwhCkR1cmlhbiBncmluc3QgYnJlaXQuCm5pY2tlCkR1IG5pY2tzdCB6dXN0aW1tZW5kLgo+IER1cmlhbiBzYWd0OiBzY2h1YmlkdSA6LSkKc2FnIG5hdHVlcmxpY2ggZ2VodCBkYXMKRHUgc2Fnc3Q6IG5hdHVlcmxpY2ggZ2VodCBkYXMKPiBEdXJpYW4gc2FndDogSWNoIGRhY2h0ZSwgZGFzIGdlaHQgbmljaCAuLi4KPiBLbG9uayB6d2luZ3QgRGljaCB6dTogemFwIGJhdWtuZWNodC4KRHUgemFwcHN0IEJhdWtuZWNodC4KQmF1a25lY2h0IGZhZWxsdCB0b3QgenUgQm9kZW4uCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCltUb2Q6TGFyc10gUGFtcGVycyBoYXQgZ2VyYWRlIEJhdWtuZWNodCB1bWdlYnJhY2h0LgpbTWFnaWVyOk1vcmdvdGhdIGFsc28gZGFzIHp3aW5nZSB6dSB6YXAgaXMgamEgZ2VpbCA8MTU6MTA6MjE+CltNYWdpZXI6TW9yZ290aF0gRyB6d2luZ3QgRSB6d2luZ3QgVyB6d2luZ3QgUiB6d2luZ3QgSCB6d2luZ3QgTSB1bmQgZGVyCltNYWdpZXI6TW9yZ290aF0gemFwcHQuLi4uIDwxNToxMTowND4KW01hZ2llcjpEdXJpYW5dIFVudGVyIGRlbiBSJ3MgdW5kIE0ncyBnZWhlbiBzb2dhciB3ZWl0ZXJlIEFic3R1ZnVuZ2VuIDotKQpbTWFnaWVyOlBhbXBlcnNdIHdpciBoYW1zIHZlcnN1Y2h0Li4uIGVzIGtsYXBwdC4uLiA6LSkgPDE1OjExOjI5PgpbTWFnaWVyOk1vcmdvdGhdIGdlaWwgPDE1OjExOjM5PgpbTWFnaWVyOk1vcmdvdGhdIGhvZSBob2UgPDE1OjExOjQxPgpbTWFnaWVyOk1vcmdvdGhdIHp3aW5nZSBwYW1wZXJzIHp1IHhldmFsIG1hcF9vYmplY3RzKHVzZXJzKCksImRpZSIpIDwxNToxMjowMD4KW01hZ2llcjpNb3Jnb3RoXSBEQVMgd2FlciBkZXIgaGFtbWVyIDwxNToxMjowOD4KW01hZ2llcjpEdXJpYW4gYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uIDwxNToxMjoxMD5dCltNYWdpZXI6TW9yZ290aF0gNzAgcGxheWVya2lsbHMgYXVmIGVpbm1hbCA8MTU6MTM6NDM+CltNYWdpZXI6UGFtcGVyc10gYXUgZmVpbi4uLiA6LSkgPDE1OjEzOjQ3Pgo+IER1cmlhbiBzYWd0OiBpY2ggaGFiZSBnZXRpcHB0OiB6d2luZ2Uga2xvbmsgenUgendpbmdlIHBhbXBlcnMgenUgemFwCmJhdWtuZWNodAoKCgpXYXMgTWFnaWVyIHNvIGFsbGVzIGluIGlocmVyIEZyZWl6ZWl0IG1hY2hlbi4uLgoKUGFtcGVycy4gS2ljaGVydCBIeXN0ZXJpc2NoLgpQLlMuIEJhdWtuZWNodCBpc3QgZWluIFRlc3RpIHZvbiBtaXIuLi4gQWxzbzogTmljaHQgbmFjaG1hY2hlbiwgZGVubiBkYXMgaXN0CnZlcmJvdGVuLi4uIGFiZXIgZGFzIHdpc3NlbiBqYSBzY2hvbiBhbGxlLi4uIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKkFSR0wqIChDYXJhZGhyYXMsICA1LiBTZXAgMTk5NiwgMTU6MzM6MzMpOgo+IGxhZGUgbWFzY2hpbmUKVW5iZWhvbGZlbiBsYWVkc3QgRHUgZGllIE1hc2NoaW5lIG1pdCBlaW5pZ2VuIEdlcm9lbGxicm9ja2VuLgo+IGZldWVyIG1hc2NoaW5lCk9rLgo+IHd1bmRlcmUKRHUgd3VuZGVyc3QgRGljaC4KPiBhbGlhcyBmZXVlcgogZmV1ZXIgPSB0aXRlbCBkZXIgU2F0YW5pXkheSF5IXkheSF5ISGVpbGlnZSAodmVyZGFtbXRlIEZldWVyZWJlbmUgKjpeKSkKCiAgIFZlcmRhbW10ZSBBbGlzLCBzYWcgaWNoIG51cgoKICAgICAgICBSb3Rob3JuIENhcmFkaHJhcyAtIGdyYWQgbnVyIGVpbiBoYWxiZXIgQmVyZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIEZyZXVkZW4gZWluZXMvciBHYXN0ZXMgKEdhc3QxLCAgNS4gU2VwIDE5OTYsIDE3OjAwOjE3KToKCgoKV2llIGhlaXNzdCBEdSBkZW5uID8gZ2FzdApHaWIgYml0dGUgRGVpbmUgRU1haWwtQWRyZXNzZSBhbiAob2RlciAnbm9uZScpOiAKQmlzdCBEdSBtYWVubmxpY2ggb2RlciB3ZWlibGljaDogbQpXaWxsa29tbWVuLCBtZWluIEhlcnIhCkRpciBmZWhsZW4gYmlzIHp1ciBuYWVjaHN0ZW4gU3R1ZmUgbm9jaCAxMiBTdHVmZW5wdW5rdGUuCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKiogIFBvcnQgNDcxMSB3aXJkIG5pY2h0IG1laHIgdW50ZXJzdHVldHp0ISBCaXR0ZSB2ZXJ3ZW5kZXQgUG9ydCAyMyEgICAgICAqKgoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCj4gaW5mbwpEZWluIE5hbWUgaXN0ICJHYXN0MSBkaWUgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyaW4uIgoKR2FzdDEuIE1hZW5ubGljaCBvZGVyIFdlaWJsaWNoPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGlsZmUsIEJhbmt6d2VpdGllcyAoQXNtb2RpcywgIDUuIFNlcCAxOTk2LCAxNzowNDozNyk6Cgp0cmV0ZSBhbGxlCgpEdSB0cml0dHN0IEFzYmFuaywgQXNiYW5rLCBBc2JhbmssIEFzYmFuaywgQXNiYW5rLCBBc2JhbmssIEFzYmFuaywgQXNiYW5rLApBc2JhbmssIEFzYmFuaywgQXNiYW5rLCBBc2JhbmssIEFzYmFuaywgQXNiYW5rLCBBc2JhbmssIEFzYmFuaywgQXNiYW5rLApBc2JhbmssIEFzYmFuaywgQXNiYW5rLCBBc2JhbmssIEFzYmFuaywgQXNiYW5rLCBBc2JhbmssIEFzYmFuaywgQXNiYW5rLApBc2JhbmssIEFzYmFuaywgQXNiYW5rLCBBc2JhbmssIEFzYmFuaywgQXNiYW5rLCBBc2JhbmssIEFzYmFuaywgQXNiYW5rLApBc2JhbmssIEFzYmFuaywgQXNiYW5rLCBBc2JhbmssIEFzYmFuaywgQXNiYW5rLCBBc2JhbmssIEFzYmFuaywgQXNiYW5rLApBc2JhbmssIEFzYmFuaywgQXNiYW5rLCBBc2JhbmssIEFzYmFuaywgQXNiYW5rLCBBc2JhbmssIEFzYmFuaywgQXNiYW5rLApBc2JhbmssIEFzYmFuaywgQXNiYW5rLCBBc2JhbmssIEFzYmFuaywgQXNiYW5rLCBBc2JhbmssIEFzYmFuaywgQXNiYW5rLApBc2JhbmssIEFzYmFuaywgQXNiYW5rLCBBc2JhbmssIEFzYmFuaywgQXNiYW5rLCBBc2JhbmssIEFzYmFuaywgQXNiYW5rIHVuZApBc2JhbmsuIFNvbGx0ZXN0IER1IG5pY2h0IGxhbmdzYW0gYW4gRmx1Y2h0IGRlbmtlbj8KCnJhdGV0IG1hbCwgd28gZGFzIHdhciA/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IElkbGUgaW0gZGVhdGhfcm9vbS4uLi4gKEdyaW1tYm9ybiwgIDUuIFNlcCAxOTk2LCAxNzoyMzozOSk6Cn4jISBybj1XdXJ6ZWwgcnQ9ODQxOTIyMTM1Cn4jISB0aWQ9ODQxOTIyMDMwCgpEdSBpcnJzdCwgbWVpbiBMaWViZXIuIEltIFRvZGVzcmF1bSBrYW5uIG1hbiB0eXBvLCBpZGVlIHVuZCBmZWhsZXIgYWJzZXR6ZW4sCmRhIGhhYiBpY2ggc2NobGllc3NsaWNoIGluIG1laW5lciBKdWdlbmQgZWluIGhhbGJlcyBKYWhyIHdlZ2VuIHJ1bWdlbmVydnQuIApXYXMgbWlyIGFsbGVyZGluZ3MgdW5rbGFyIGlzdCB3aWUgZGllIHR5cG9zIGRhbm4gZGVuIFNlcXVlbnplbiB6dWdlb3JkbmV0CndlcmRlbi4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbmlicmlsIChHYXN0MiwgIDUuIFNlcCAxOTk2LCAxNzoyODo1Myk6CgoKRGVyIEdlaXN0IHZvbiBTbmlicmlsLiAgICAgICAgICAgICAgICAgRGVyIEdlaXN0IHZvbiBTbmlicmlsLgpEZXIgR2Vpc3Qgdm9uIFNuaWJyaWwuICAgICAgICAgICAgICAgICBEZXIgR2Vpc3Qgdm9uIFNuaWJyaWwuCkRlciBHZWlzdCB2b24gU25pYnJpbC4gICAgICAgICAgICAgICAgIERlciBHZWlzdCB2b24gU25pYnJpbC4KRGVyIEdlaXN0IHZvbiBTbmlicmlsLiAgICAgICAgICAgICAgICAgRGVyIEdlaXN0IHZvbiBTbmlicmlsLgpEZXIgR2Vpc3Qgdm9uIFNuaWJyaWwuICAgICAgICAgICAgICAgICBEZXIgR2Vpc3Qgdm9uIFNuaWJyaWwuCkRlciBHZWlzdCB2b24gU25pYnJpbC4gICAgICAgICAgICAgICAgIERlciBHZWlzdCB2b24gU25pYnJpbC4KRGVyIEdlaXN0IHZvbiBTbmlicmlsLiAgICAgICAgICAgICAgICAgRGVyIEdlaXN0IHZvbiBTbmlicmlsLgpEZXIgR2Vpc3Qgdm9uIFNuaWJyaWwuICAgICAgICAgICAgICAgICBEZXIgR2Vpc3Qgdm9uIFNuaWJyaWwuCkRlciBHZWlzdCB2b24gU25pYnJpbC4gICAgICAgICAgICAgICAgIFNuaWJyaWwgZGVyIGFuZ2VoZW5kZSBTZWhlci4KRGVyIEdlaXN0IHZvbiBTbmlicmlsLiAgICAgICAgICAgICAgICAgCj4gU25pYnJpbCBnZWh0IG5hY2ggV2VzdGVuLgpTbmlicmlsIGdlaHQuClNuaWJyaWwgZ2VodC4KU25pYnJpbCBnZWh0LgpTbmlicmlsIGdlaHQuClNuaWJyaWwgZ2VodC4KU25pYnJpbCBnZWh0LgpTbmlicmlsIGdlaHQuClNuaWJyaWwgZ2VodC4KU25pYnJpbCBnZWh0LgpTbmlicmlsIGdlaHQuClNuaWJyaWwgZ2VodC4KU25pYnJpbCBnZWh0LgpTbmlicmlsIGdlaHQuClNuaWJyaWwgZ2VodC4KU25pYnJpbCBnZWh0LgpTbmlicmlsIGdlaHQuClNuaWJyaWwgZ2VodC4KU25pYnJpbCBnZWh0LgoKCgpJc3QgZGFzIG5vcm1hbCBoaWVyPwoKR2FzdDIuIFN0YXVudC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTbmlicmlsIChHcmltbWJvcm4sICA1LiBTZXAgMTk5NiwgMTc6MzA6MTcpOgp+IyEgcm49R2FzdDIgcnQ9ODQxOTM3MzMzCn4jISB0aWQ9ODQxOTM3MzMzCgpBZWgsIHdvIGdlbmF1IGZpbmRlc3QgRHUgZGEgd2FzIHVuZ2V3b2VobmxpY2g/CkFsc28sIG1pciBpc3QgZGEgZWlnZW50bGljaCBuaWNodHMgQmVzb25kZXJlcyBhbiBEZWluZW0gcG9zdGluZyBhdWZnZWZhbGxlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTbmlicmlsIChBbGFub24sICA1LiBTZXAgMTk5NiwgMTc6MzE6MTIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg0MTkzNzQxNwp+IyEgdGlkPTg0MTkzNzMzMwpoaWVyIHd1bmRlcnQgbWljaCBzb3dpZXNvIG5peCBtZWhyLgoKQWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLj8gOikgKEFuYXRvbCwgIDUuIFNlcCAxOTk2LCAxNzo1MjozMyk6CgpbTW9lcmRlcjpHZWlzdCBNYXJ0aGFzXSBUenVpb3AgZHUgdmVyZGFtbXRlciBXaWNoc15ILi4udC4KCkZ1ZWhsdCBzaWNoIGFuIEFuYXB1bmEgZXJpbm5lcnQsCkFuYXRvbCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlZnVuZGVuISAoQW5hdG9sLCAgNS4gU2VwIDE5OTYsIDE4OjUwOjExKToKCltaYXViZXJlcjpMYWlsYV0gd28gdGVsZXBvcnRpZXJ0IHNpY2ggbGhhbmEgZWlnZW50bGljaCwgd2VubiBtYW4gc2llIGFuZ3JlaWZ0LgpbWmF1YmVyZXI6TGFpbGFdIGlzdCBkYXMgenVmYWxsIG9kZXIgZ2lidCBlcyBkYSBzcGV6aWVsbGUgcGxhZXR6ZSA/CltUb2Q6TGFyc10gTGhhbmEgZGkgTGVvbmRybyBoYXQgZ2VyYWRlIExhaWxhIHVtZ2VicmFjaHQuCltUb2Q6TGhhbmEgZGkgTGVvbmRyb10gTGFpbGEgd2lyZCBpbiBLdWVyemUgYmVncmFiZW4uIFdpciBiaXR0ZW4gdW0KW1RvZDpMaGFuYSBkaSBMZW9uZHJvXSBCbHVtZW5zcGVuZGVuLgoKSmF1LiA6KQpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGVpbmUgU3VlbmRlbi4uLiAoU2NocnVtcGZpLCAgNS4gU2VwIDE5OTYsIDIxOjI1OjQxKToKfiMhIHJuPUFuYXRvbCBydD04NDE3OTE5NjgKfiMhIHRpZD04NDE3OTE5NjgKRGEgaGFidCBpaHIgZGVuIEJld2VpcyEgSUNIIEJJTiBHT1RUISBhZWggR09FVFRJTiEgS3JpZWdzZ29ldHRpbiBvZGVyIHNvd2FzIDopClNjaHJ1bXBmaSBmb3IgR29kIChob2Vob2UpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqcHJ1dXVzdCogKFNjaHJ1bXBmaSwgIDUuIFNlcCAxOTk2LCAyMTo0NDo1Nyk6CiBOaWNodHMgbmltbXQgZWluIEJhZCBpbiBkZXMgRHJhY2hlbiBCbHV0IQoKU2NocnVtcGZpIGhldXRlIGxlaWNodCB6dSBlcmhlaXRlcm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhleSB0b2xsIGhleSAoU2NocnVtcGZpLCAgNS4gU2VwIDE5OTYsIDIyOjU4OjA4KToKU2NobmVld2l0dGNoZW4gcnVmdDogRGFua2UsIEFuYXJjaGllLCBkYXNzIER1IG1laW5lIFp3ZXJnZSBiZWZyZWl0IGhhc3QuCgpTY2hydW1wZmkgc2Nod2luZ3QgZWluZSBSb3QtU2Nod2FyemUgRmFobmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiBIYXVmZW4gU2VoZXIuLiAoWmVwaHlyLCAgNi4gU2VwIDE5OTYsIDAwOjA3OjQ1KToKRWJlbiBpbiBkZXIgR2lsZGU6CgpWYW5pciBuaW1tdCBEaWNoIGF1ZiBkZW4gQXJtLgpOaWNodHMga2FubiBEaXIgamV0enQgbm9jaCBwYXNzaWVyZW4uCgpFcmxlaWNodGVydCwgWmVwaHlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTUFnaWVyLi4uLiAqc2V1ZnoqIChCYWJzLCAgNi4gU2VwIDE5OTYsIDAyOjIwOjAyKToKfiMhIHJuPVBhbXBlcnMgcnQ9ODQxOTMwMDMzCn4jISB0aWQ9ODQxOTMwMDMzCk5hamEsIHNvbGFuZ2UgZGllIExvZ2ZpbGVzIG1pdCB0aGlzX2ludGVyYWN0aXZlIGFyYmVpdGVuLCBzaW5kIHNvbGNoZQpTcGllbGNoZW4gZWlnZW50bGljaCBlZ2FsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCA6KSAoSmFzcGVyLCAgNi4gU2VwIDE5OTYsIDA5OjIxOjQ3KToKW01hZ2llcjpKYXNwZXJdIGljaCBmcmFnIG1pY2ggd2llIGlociBtYWdpZXIgZ2V3b3JkZW4gc2VpZCwgb2huZSBmdW5kaWVydGUKW01hZ2llcjpKYXNwZXJdIHRmLWtlbm50bmlzc2UgenUgaGFiZW4gOikKW01hZ2llcjpIYXRlXSBXaXIgc2luZCBrZWluZSB2ZXJ3ZWljaGxpY2h0ZW4gVGl0dGVuZ3Vja2VyLgpbTWFnaWVyOkphc3Blcl0gaGVoZQpbTWFnaWVyOkphc3BlciBncmluc3RdCgpUamEgbWFuIHNvbGx0ZSBkaWUgRXJ6bWFnaWVyIG5pY2h0IHNjaG9uIGFtIGZydWVoZW4gbW9yZ2VuIG5lcnZlbiwgc29uc3QgCmJla29tbXQgbWFuIGVpbmUgdm9sbGUgQnJlaXRzZWl0ZSBhYgoKamFzcGVyLCBpbW1lciBub2NoIGdyaW5zZW5kIC5vTyh2ZXJ3ZWljaGxpY2h0ZXIgVGl0dGVndWNrZXIpICBjb29vbCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKPiB1bnQgZ2FzdDMgKEdhc3QzLCAgNi4gU2VwIDE5OTYsIDE2OjQ5OjMxKToKRGFzIGlzdCBHYXN0My4gRXIgaXN0IGZ1ZXIgZWluZW4gTWVuc2NoZW4gbWl0dGVsZ3Jvc3MuCkVyIGlzdCBhYnNvbHV0IGZpdC4KRXIgaXN0IEZyZXVuZCB2b24gTHVuYXRpYy4KR2FzdDMgaGF0IGtlaW5lIFJ1ZXN0dW5nIGFuLCBrZWluZSBXYWZmZSBnZXp1ZWNrdCB1bmQgdHJhZWd0IGVpbgpGcmV1bmRzY2hhZnRzYmFuZC4KCgpXYXMgd29obCBwYXNzaWVydCwgd2VubiBpY2ggbWljaCBhdXNsb2dnZT8gSXN0IGRhbm4gamVkZXIgR2FzdDMgYXV0b21hdGlzY2gKRnJldW5kIHZvbiBMdW5hdGljPyA6LSkKR2FzdDMuIEFtdWVzaWVydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoR3JpbW1ib3JuLCAgNy4gU2VwIDE5OTYsIDE5OjU4OjA0KToKCkVzIGdpbmcgZGFydW0sIHdpZSBlcyB3YWVyZSwgd2VubiBqZWRlciBCZWZlaGwgbWl0IGVpbmVyIFNpY2hlcmhlaXRzYWJmcmFnZQp2ZXJzZWhlbiB3YWVyZToKW0FsbGdlbWVpbjpBc21vZGlzXSAiZmV1ZXJiYWxsIiAtPiBXaWxsc3QgZHUgd2lya2xpY2ggZGllc2VuIGFybWVuIE5QQwpbQWxsZ2VtZWluOkFzbW9kaXNdIGVybW9yZGVuPyB1ZWJlcmxlZyBlcyBkaXIgbm9jaG1hbCEKW0FsbGdlbWVpbjpKYXJpZWxdICAqa2ljaGVyCltBbGxnZW1laW46UGlsZ3JpbV0gemFwIHNwaWVsZXIgLT4gTy5LIDotKQpbQWxsZ2VtZWluOkphcmllbF0gZGFzIHd1ZXJkZSBkaWUgS2FlbXBmZSB3aWVkZXIgaW50ZXJlc3NhbnQgbWFjaGVuIDotKQpbQWxsZ2VtZWluOkphcmllbF0gYXJnIGVzIGlzdCBkdW5rZWwgOigKW1RvZDpMYXJzXSBFaW4gU2Nod2VpbmVodW5kIGhhdCBnZXJhZGUgSmFyaWVsIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNjaHdlaW5laHVuZF0gS1JSUlJSCgpXaXIgbGVybmVuOiBXZW5uIEthcmF0ZWthIGRpY2ggSGFuZCBuaWNodCB2b3IgQXVnZW4gc2VoZW4gc2luZCBzaWUKYXVmZ2VzY2htaXNzZW4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyAoQ2VsZWJkaWwsICA4LiBTZXAgMTk5NiwgMDE6Mzc6MjYpOgpbQWxsZ2VtZWluOkFzbW9kaXNdIHNjaHJlaWJ0IG1hbCB3YXMgaW4gZGVyIG1wYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzIHNpbm52b2xsZXMgKENlbGViZGlsLCAgOC4gU2VwIDE5OTYsIDAxOjM4OjMyKToKW0FsbGdlbWVpbjpBc21vZGlzXSBzY2hyZWlidCBtYWwgd2FzIHNpbm52b2xsZXMgaW4gZGVyIG1wYSAhCgpBc21vZGlzIGlzdCBkb29mIDopIFNlaHIgc2lubnZvbGwuICpraWNoZXIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2huZWxsIHdlZy4uLiAoQ2VsZWJkaWwsICA4LiBTZXAgMTk5NiwgMDc6MTk6NDcpOgpHcmFkIGVudGRlY2t0IGF1ZiBtZWluZW0gYWNjb3VudCwgdm9tIDI4LjA0LjE5OTU6CgpbQWxsZ2VtZWluOklzbm9nb29kXSBUZWxlZm9uIGZ1ZXIgQ2FyYSwgTGFycyBsYWVzc3QgZnJhZ2VuIHdpZXZpZWxQYWtldGUKW0FsbGdlbWVpbjpJc25vZ29vZF0gc2Vuc2lzIG5vY2gga29tbWVuCltBbGxnZW1laW46U2NocnVtcGZpIGxhY2h0XQpbQWxsZ2VtZWluOkNhcmFkaHJhc10gamE/IEhhbGxvIExhcnM/IEphLCBtaXIgZ2VodHMgZ3V0LiBOZWluLCBzbyBzY2huZWxsCltBbGxnZW1laW46Q2FyYWRocmFzXSBrb21tIGljaCBuaWNodCBtZWhyIHZvcmJlaS4gSmEsIGljaCBzY2hpY2sgbm9jaCBlaW4gcGFhcgpbQWxsZ2VtZWluOkNhcmFkaHJhc10gUGFrZXRlIHZvcmJlaSwgaXMgZ3V0LiBCZXNzZXIgZXIgYWxzIGljaC4gVHNjaHVlc3MgTGFycwpbQWxsZ2VtZWluOkNhcmFkaHJhc10gKmtudWRkZWwqCgogICAgSG1tbW1tbSwgZWluZGV1dGlnIFNjaG1hcnJuIDopIE5hIGRhbm4gcGFzc3RzIGphCgogICAgICAgICAgICAgUm90aG9ybiBDYXJhZGhyYXMgLSBrbnVkZGVsdCB3aWVkZXIgZGVuIFNlbnNpCkVpbiBGcnJyZWVlZWVldW5kLCBlaW4gZ3V0ZXIgRnJlZWVlZXVuZC4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTY2huZWxsIHdlZy4uLiAoQ2FyYWRocmFzLCAgOC4gU2VwIDE5OTYsIDA3OjIwOjQyKToKfiMhIHJuPUNlbGViZGlsIHJ0PTg0MjE1OTk4Nwp+IyEgdGlkPTg0MjE1OTk4NwpIZWUsIGpldHp0IHZlcm9lZmZlbnRsaWNoZW4gc2Nob24gWndlaXRpZXMgdW50ZXIgZGVtIE5hbWVuIGlocmVyIEVyc3RpZXMKQXJ0aWtlbCBpbiBkZXIgTVBBLCBGcmVjaGhlaXQgc293YXMhCgogICAgIFJvdGhvcm4gQ2FyYWRocmFzIC0gZXMga2FubiBudXIgZWluZW4gZ2ViZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTaWx2YW5hLi4uLiAoWWFudHJvLCAgOC4gU2VwIDE5OTYsIDE3OjM4OjM4KToKCldhcyB0dXQgbWFuIG5pY2h0IGFsbGVzIGZ1ZXIgc28gZWluZSBGZWUuLi4gOi0pCgogICAgICAgWWFudHJvLCBtdWVsbGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW0gZnJ1ZWhlbiBNb3JnZW4gZmFlbmd0IGRpZSBNdWVkaWdrZWl0IGFuLi4uLiAoTGVjaHVjaywgIDkuIFNlcCAxOTk2LCAwOTowMToxOCk6Cgp1bmdlc2Nobml0dGVuOgpEdSBoYXN0IGpldHp0IDE2MCBMZWJlbnNwdW5rdGUgdW5kIDIzIE1hZ2llcHVua3RlLgpEdSBob2Vyc3QgZGllIFVociBzY2hsYWdlbjogRXMgaXN0IGpldHp0IDkgVWhyLgpFaW4gZ3JhdWVyIE5lYmVsIHNpbmt0IGhlcmFiLgpEdSBoYXN0IGpldHp0IDE2MSBMZWJlbnNwdW5rdGUgdW5kIDI0IE1hZ2llcHVua3RlLgoKVGphLCBkYWJlaSBiaW4gaWNoIGdyYWQgbWFsIDIgU3R1bmRlbiB3YWNoLi4KTGVDaHVjaywgc2llaHQgbnVyIG5vY2ggZGlja2VuIE5lYmVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVcnNhY2hlIHVuZCBXaXJrdW5nIChDYXVubywgIDkuIFNlcCAxOTk2LCAxMToyMTowNyk6CgpmYWxscyBkYXMgbm9jaCBrZWluZW0gYXVmZ2VmYWxsZW4gaXN0OgoKSW4gZGVyIEhleGVua3VlY2hlIHppZWh0IGVpbiBncm9zc2VyIEtlc3NlbCBzb2ZvcnQgRGVpbmUgQXVmbWVya3NhbWtlaXQKYXVmIHNpY2gsIGRpZSBIZXhlIGJyYXV0IG9mZmVuYmFyIGdlcmFkZSBldHdhcyB6dXNhbW1lbiwgZGVubiB1bnRlcgpkZW0gS2Vzc2VsIGJyZW5udCBlaW4gZ3Jvc3NlcyBGZXVlci4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG9zdGVuLgpFaW4gSGV4ZW5rZXNzZWwuCj4gdW50IGtlc3NlbApFaW4gcmljaHRpZ2VyIEhleGVua2Vzc2VsLCBvZnQgZ2VmbGlja3QgdW5kIG1pdCBlaW5lciBoZWlzc2VuCnVuZGVmaW5pZXJiYXJlbiBCcnVlaGUgZ2VmdWVsbHQuCj4gbGVnZSBteXJyaGUgaW4ga2Vzc2VsCkRpZSBCcnVlaGUgYnJvZGVsdCBoZWZ0aWcgYXVmICEhIQpEdSBzdGVja3N0IGVpbiBNeXJyaGVibGF0dCBpbiBkZW4gSGV4ZW5rZXNzZWwuCj4gbGVnZSBrYW1pbGxlIGluIGtlc3NlbApEaWUgQnJ1ZWhlIGJyb2RlbHQgaGVmdGlnIGF1ZiAhISEKRHUgc3RlY2tzdCBlaW5lIEthbWlsbGVuYmx1ZXRlIGluIGRlbiBIZXhlbmtlc3NlbC4KPiBsZWdlIG1pbnplIGluIGtlc3NlbApEaWUgQnJ1ZWhlIGJyb2RlbHQgaGVmdGlnIGF1ZiAhISEKRHUgc3RlY2tzdCBlaW4gTWluemVibGF0dCBpbiBkZW4gSGV4ZW5rZXNzZWwuCj4gbGVnZSBzYWxiZWkgaW4ga2Vzc2VsCkRpZSBCcnVlaGUgYnJvZGVsdCBoZWZ0aWcgYXVmICEhIQpEZXIgVHJhbmsgaXN0IHZvbGxicmFjaHQuCkRlciBnZXNjaGFmZmVuZSBUcmFuayB6ZWlndCBiZWkgRGlyIGxlaWRlciBrZWluZSBXaXJrdW5nLgpEdSBzdGVja3N0IGVpbiBTYWxiZWlibGF0dCBpbiBkZW4gSGV4ZW5rZXNzZWwuCgpVcnNhY2hlIHVuZCBXaXJrdW5nPwoKQy4gTm8KClAuUy46IGhvZmZlLCBpY2ggaGFiIG5pY2h0IHp1dmllbCB2ZXJyYXRlbiAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVcnNhY2hlIHVuZCBXaXJrdW5nIChDYXJhZGhyYXMsICA5LiBTZXAgMTk5NiwgMTI6NDA6MDUpOgp+IyEgcm49Q2F1bm8gcnQ9ODQyMjYwODY3Cn4jISB0aWQ9ODQyMjYwODY3CkljaCB3dWVyZGUgc2FnZW46IG1vdmUgYnp3IHJlbW92ZSBuYWNoIGRlbSBzYXkoKSBiencgd3JpdGUoKSwgZGFzCmdpYnRzIGluIE1HIGFiZXIgaGFldWZpZyhlcikuCgogIFNvIGRvbid0IHdvcnJ5CiAgICAgICAgICAgICAgICAgIFJvdGhvcm4gQ2FyYWRocmFzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLcmV0ZWs/IChDYXJhZGhyYXMsICA5LiBTZXAgMTk5NiwgMTI6NTk6NDIpOgo+IHUKPiBLcmV0ZWsgdGVpbHQgRGlyIG1pdDogR2VodCBhYmVyIGJlc3RpbW10IG1pdCBuZXIgTGFtYmRhLUNsb3N1cmUhCj4gW0FiZW50ZXVlcjpCb2d1c10gTmVpbi4KCiAgIE5hIGRhbm4gZWJlbiBuaWNodC4gOikKCiBSb3Rob3JuIENhcmFkaHJhcyAtIGZhZWxsdCBhdWYgc2VpbmUgZWlnZW5lbiBGZWhsZXJtZWxkdW5nZW4gcmVpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2VpbiBLb21lbnRhciAoS2V5LCAgOS4gU2VwIDE5OTYsIDE0OjE2OjEzKToKRm9sZ2VuZGVzIG11c3N0ZSBpY2ggaW4gZGVyIEZGLVplaXRzY2hyaWZ0IExhYmVya2FuYWwgbGVzZW46CkluIG5hZWNoc3RlciBaZWl0IHdlcmRlbiB3aXIgYXVmIGRpZSBHZXNlbGxzY2hhZnQgZWluaWdlciBnZXN0YW5kZW5lciBNVURkZXIKdmVyemljaHRlbiBtdWVzc2VuLCBkYSBkZXIgTWFyYnVyZ2VyIFN0YWR0cmF0IGF1ZmdydW5kIHNlaW5lciBhbmdlc3Bhbm50ZW4KRmluYW56bGFnZSBiZXNjaGxvc3NlbiBoYXQsIHNlaW5lbiBLaW5kZXJnYWVydGVuIGtlaW5lbiBrb3N0ZW5sb3NlbgpJbnRlcm5ldHp1Z2FuZyBtZWhyIHp1IGVybW9lZ2xpY2hlbi4KClBmZmYgd2VyJ3MgZ2xhdWJ0IQpLZXkgbmV0IGF1cyBkZW0gS2lubmVyZ2FydGVuISA7KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLZWluIEtvbWVudGFyIChBc21vZGlzLCAgOS4gU2VwIDE5OTYsIDE4OjEzOjU2KToKfiMhIHJuPUtleSBydD04NDIyNzEzNzMKfiMhIHRpZD04NDIyNzEzNzMKR2VpbCwgZW5kbGljaCBSdWhlIHZvciBkZW4gS2luZGVyY2hlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW5nYmFuZCAoUm9jaHVzLCAgOS4gU2VwIDE5OTYsIDIxOjE5OjQ5KToKSXN0IHNjaG9uIGludGVyZXNzYW50LCB3YXMgZWluaWdlIE1vbnN0ZXIgbWl0IHNpY2ggaGVydW10cmFnZW4uLi4KQXVzIHJlYy5nYW1lcy5yb2d1ZWxpa2UuYW5nYmFuZDoKMy4gVmFtcGlyZSBAIDE1NTAnClJpbmcgb2YgU3R1cGlkaXR5ICgtNCkge2N1cnNlZH0KTXVzaHJvb20gb2YgTmFpdmV0eQpQb3Rpb24gb2YgTG9zZSBNZW1vcmllcwoKQXBwYXJlbnRseSwgdGhpcyB3YXMgdGhlIExlc2xpZSBOaWVsc2VuL0ppbSBDYXJyZXkgaW50ZXJwcmV0YXRpb24gb2YgYQp2YW1waXJlLgpBbmQgSSB0aG91Z2h0IGBgdG9vIHN0dXBpZCB0byBsaXZlJycgd2FzIGp1c3QgYSBmaWd1cmUgb2Ygc3BlZWNoLi4uCkZvdXIgd29yZHM6IEludGVydmlldyB3aXRoIFRoZSBHdW1wCgoKCjEuIENhdmUgb3JjIEAgMzUwJzogdGhlIFBoaWFsIG9mIEdhbGFkcmllbAoKTXVzdCBiZSBmdW4gZm9yIGEgY2F2ZSBvcmMgdG8gY2FycnkuLi4gYGBvb2gsIG93IG93IG93LCBPT0gsIG93IE9XIG93Li4uJycKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkludGVybmV0IChHcmltbWJvcm4sICA5LiBTZXAgMTk5NiwgMjE6Mzg6NDEpOgoKSWNoIGhhYmUgamV0enQgYW0gV29jaGVuZW5kZSBlaW4gSGVmdGNoZW4gdWViZXIgSmF2YSBpbiBkaWUgSGFlbmRlIGJla29tbWVuLAp2ZXJmYXNzdCB1bmQgaGVyYXVzZ2VnZWJlbiB2b24gZGVyIEZpcm1hIFN1bi4gRGllc2VzIEhlZnRjaGVuIGxlaHJ0IGVpbmVuCnp3ZWllcmxlaToKMSkgRGFzIEludGVybmV0IGlzdCBnYXIga2VpbmUgRXJmaW5kdW5nIHZvbiBNaWNyb3NvZnQsIHdpZSBCaWxsIEdhdGVzIGVpbmVtCiAgIGltbWVyIHdlaXNzbWFjaGVuIHdpbGwsIGRhcyBJbnRlcm5ldCBpc3QgdmllbG1laHIgZWluZSBFcmZpbmR1bmcgdm9uIFN1biwKICAgZGVuZW4gYW4gZGllc2VyIFN0ZWxsZSBoZXJ6bGljaCBnZWRhbmt0IHdpcmQuCjIpIFdlciBKYXZhIGVudHdpY2tlbHQgYmVoZXJyc2NodCBub2NoIGxhbmdlIGtlaW5lIEtvbW1hcmVnZWxuLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSW50ZXJuZXQgKFdvb2R5LCAxMC4gU2VwIDE5OTYsIDAxOjM5OjA3KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NDIyOTc5MjEKfiMhIHRpZD04NDIyOTc5MjEKCjMpIFdlciBKYXZhIGVuYWJsZWQsIHR1dCB1VS4gZ3V0IGRyYW4sIG5lbiBlaWdlbmVuIEFjY291bnQgZGFmdWVyCiAgIGFuenVsZWdlbiAoc28gc2VpbiBCZXRyaWVic3N5c3RlbSBzb3dhcyBlcmxhdWJ0IDspKS4KCiplbmRvZnNlbmYqCndvb2R5Li0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJ1ZyAoQ2F1bm8sIDEwLiBTZXAgMTk5NiwgMTQ6MjI6MzIpOgoKCj4gdW50IHBsYW5lZGl0b3IgICAKRWluIFBsYW4tIHVuZCBQcm9qZWt0ZWRpdG9yLiBEYW1pdCBrYW5uc3QgRHUgUGxhbiB1bmQgUHJvamVrdCBhZW5kZXJuLCBkaWUKYW5nZXplaWd0IHdlcmRlbiwgd2VubiBEaWNoIGVpbiBhbmRlcmVyIFNwaWVsZXIgImZpbmdlcnQiLgpEYXMgUHJvamVrdCBpc3QgZWluIEVpbnplaWxlciwgdW5kIHdpcmQgamVkZW0gU3BpZWxlciBhbmdlemVpZ3QuIERlciBQbGFuCmthbm4gbGFlbmdlciBzZWluLCB1bmQgd2lyZCBudXIgU2VoZXJuIHVuZCBNYWdpZXJuIGFuZ2V6ZWlndC4KQmVmZWhsZToKIHByb2pla3QgPHRleHQ+CiBwcm9qZWt0IGxvZXNjaGVuCiBlZGl0cGxhbiAgICAgIFtsYWVkdCBkZW4gdm9yaGFuZGVuZW4gUGxhbiBpbiBkZW4gRWRpdG9yIGJ6dy4gbGVndCBuZXVlbiBhbl0KIGVkaXRwbGFuIGxvZXNjaGVuCldlbm4gRHUgZGVuIEVkaXRvciBsb3N3ZXJkZW4gd2lsbHN0LCB2ZXJicmVubiBpaG4gZWluZmFjaC4KRWluIFRyZXRib290IGxlZ3QgYW4uCj4gYiBib290CkFuIEJvcmQgZWluZXMgVHJldGJvb3Rlcy4KRHUgYmVmaW5kZXN0IERpY2ggYW4gQm9yZCBlaW5lcyBUcmV0Ym9vdGVzLCBkYXMgenUgQXVzZmx1Z3NmYWhydGVuIGFuCmRlciBTdWVkb3N0a3Vlc3RlIGRlciBGZXVlcmluc2VsIGVpbmdlc2V0enQgd2lyZC4gQW0gQnVnIGthdWVydCBlaW4KaGVydW50ZXJnZWtvbW1lbmVyIEhhbGJsaW5nIHVuZCBtZWNrZXJ0IHN0YWVuZGlnIHVlYmVyIHNlaW5lIEFyYmVpdCwKZGllIGRhcmF1cyBiZXN0ZWh0LCBtaXR0ZWxzIFRyZXRiZXdlZ3VuZ2VuIGRhcyBCb290IGFuenV0cmVpYmVuLgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgpBdXNzZXJoYWxiIHNpZWhzdCBEdToKQXVmIGVpbmVyIFNhbmRiYW5rLgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgpEZXIgSGFsYmxpbmcgbWVja2VydCBsYXV0IHJ1bS4KPiB1bnQgYnVnCkR1IGZpbmRlc3QgYW4gZWluZW0gUGxhbmVkaXRvciBrZWluICJCdWciLgpEZWluIEJsaWNrIHdlbmRldCBzaWNoIGRlciBVbWdlYnVuZyB6dS4KU293YXMgc2llaHN0IER1IGF1Y2ggZGEgbmljaHQhCgpzY2hvZW4gd2FlcnMgLi4uCgogQy4gTm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMYXdpbmVud2FybnVuZyAoQ2FyYWRocmFzLCAxMC4gU2VwIDE5OTYsIDE1OjQ2OjM1KToKfiMhIHJuPUdhc3QyIHJ0PTg0MjM2MjgyNwp+IyEgdGlkPTg0MjM2MjgyNwpVbmQgdm9yaGVyIGthbSBlaW46Cgo+IEdhc3QyIHRlaWx0IERpciBtaXQ6IGljaCB3ZWlzcyBuaWNodCwgd2FzIG1hbmNoZSBMZXVldCBhbiBkZW4gQmVyZ2VuIGZpbmRlbi4KR2FzdDIgdGVpbHQgRGlyIG1pdDogSWNoIGZpbmQgZGllIG51ciBmcnVzdHJpZXJlbmQKCiAgICBSb3Rob3JuIENhcmFkaHJhcyBCYXJhemluYmFyIHdpcmZ0IGZyb2VobGljaCBtaXQgTGF3aW5lbiB1bSBzaWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBY3JpbW9uPyAoQ2VsZWJkaWwsIDEwLiBTZXAgMTk5NiwgMTg6NDg6MTApOgpEdSB0ZWlsc3QgQWNyaW1vbiBtaXQ6IGtvbW0gaW4gZGllIGRpYW1hbnRiYXIKCjEwIFNla3VuZGVuIHNwYWV0ZXI6CgpFaW4gWndlcmcga29tbXQgYW4uCj4gRWluIFp3ZXJnIGtvbW10IGhpbnRlciBkZW0gVHJlc2VuIHZvciB1bmQgYnJpbmd0IGVpbmVtIFp3ZXJnIGVpbiBzZWx0c2FtCmRhbXBmZW5kZXMgR2V0cmFlbmssIHdhcyBpaG4gZmFzdCBhdXMgZGVuIFNjaHVoZW4gaGF1dC4KCkh1Y2gsIEFjcmltb24gaXN0IGFiZXIga2xlaW4gZ2V3b3JkZW4uIDopCldhciBkZXIgbmljaHQgbWFsIE1lbnNjaD8KCiAgICAgICAgICAqc3RhdW4qICAgICAgU2lsYmVyemlubmNoZW4gQ2VsZWJkaWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGltIEludGVybmV0Li4uIChZZW5kaSwgMTAuIFNlcCAxOTk2LCAxODo1MjowMik6CgoiSSBib3VnaHQgdGhlIFN0YXIgVHJlayBjaGVzcyBzZXQgYW5kIHRoZSBDaXZpbCBXYXIgY2hlc3Mgc2V0LiAgTm93IEkgaGF2ZQp0aGUgU291dGggZmlnaHQgdGhlIEtsaW5nb25zLiIgLS0gRGF2ZSBTcGVuc2xleSAKCiJUaGUgYmVzdCBhcmd1bWVudCBhZ2FpbnN0CmRlbW9jcmFjeSBpcyBhIGZpdmUgbWludXRlIHRhbGsgd2l0aCB0aGUgYXZlcmFnZSB2b3Rlci4iIC0gV2luc3RvbiBDaHVyY2hpbGwKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZXN2aWMgaXN0IEplbWFuZD8gKENhcmFkaHJhcywgMTIuIFNlcCAxOTk2LCAwMDowOToxNSk6CkdyYWQgaW0gTHVUYWw6CgpEdSBzdGVoc3QgaGllciBpbiBlaW5lciBrbGVpbmVuIEhvbHpodWV0dGUgZGllIGJlaGFnbGljaCBlaW5nZXJpY2h0ZXQgd29yZGVuCmlzdC4gWnUgRGVpbmVyIFJlY2h0ZW4ga25pc3RlcnQgZWluIEthbWluLCBkaXJla3Qgdm9yIERpciBzdGVodCBlaW4gZ3Jvc3NlcwpiZWhhZ2xpY2hlcyBFaGViZXR0IHVuZCB6dSBEZWluZXIgTGlua2VuIHN0ZWh0IGVpbiByZWljaCBnZWRlY2t0ZXIgVGlzY2guCkRhcyBQcnVua3N0dWVjayBkZXMgUmF1bWVzIGlzdCBqZWRvY2ggZWluIGdyb3NzZXIsIG1hc3NpdmVyIEtlcnplbmxldWNodGVyIGF1cwpnZXNjaGxhZ2VuZW0gR29sZCwgaW4gZGVtIGVpbmUgZGlja2Ugd2Vpc3NlIEtlcnplIGxhbmdzYW0gYWJicmVubnQuIE5lYmVuIGRlbQpLYW1pbiwgZGlyZWt0IGJlaSBlaW5lbSBtb25zdHJvZXNlbiBXYWZmZW5zdGFlbmRlciwga25hcnJ0IGVpbiBnZW11ZXRsaWNoZXIKU2NoYXVrZWxzdHVobCwgaW4gZGVtIGplbWFuZCBzaXR6dC4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG5vcmRlbi4KPiBsbCBzY2hhdWtlbHN0dWhsCkluIGRlbSBTY2hhdWtlbHN0dWhsIHNpdHp0IHp1c2FtbWVuZ2VrYXVlcnQgZGVyIERhZW1vbmVuamFlZ2VyIENocmlzdG9iYWwKU2VzdmljJywgR3JvZXNzdGVyIHNlaW5lciBadW5mdC4KCj4gbGwgY2hyaXN0b2JhbApTb3dhcyBzaWVoc3QgRHUgZGEgbmljaHQhCgpOYW51dXV1dSwgZWluIEplbWFuZC4gOi0pIAoKICAgUm90aG9ybiBDYXJhZGhyYXMgLSB2ZXJyYWV0IGphIGpldHp0IG5pY2h0IGRhc3MgZXIga3VyeiB2b3JoZXIgYXVmCi1Nb2VyZGVyIGthbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llZGVyIG1hbCBGTFcncyAoVmFuaXIsIDEyLiBTZXAgMTk5NiwgMTU6MzQ6MjUpOgpbU2VoZXI6VHlyYW5uXSBodWJzLCBkZWluIHRlZGR5IGtudWRkZWx0IGRpY2ggZWluIGxldHp0ZXMgbWFsIC0+IDAgbHBzIDopCltTZWhlcjpWYW5pcl0ga2xhb3IsIGRhcyBtYWNodCBkZXIgaW1tZXIKW1RvZDpMYXJzXSBFaW4gVW50aWVyIGhhdCBnZXJhZGUgVHlyYW5uIHVtZ2VicmFjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW1tZXIgZnJvZWhsaWNoLi4uIChNdXBmZWwsIDEzLiBTZXAgMTk5NiwgMDA6NDI6NTcpOgpLZXkgYnJpY2h0IGluIHVua29udHJvbGxpZXJ0ZXMgR2VsYWVjaHRlciBhdXMuCmVpbiBQYXJ0eW1vbnN0ZXIgcHJ1c3RldCBsYXV0aGFscyBsb3MuCmVpbiBQYXJ0eW1vbnN0ZXIgYnJpY2h0IGluIHVua29udHJvbGxpZXJ0ZXMgR2VsYWVjaHRlciBhdXMuCktleSBicmljaHQgaW4gdW5rb250cm9sbGllcnRlcyBHZWxhZWNodGVyIGF1cy4KRHVtbWJhdHogYnJpY2h0IGluIHVua29udHJvbGxpZXJ0ZXMgR2VsYWVjaHRlciBhdXMuCmVpbiBBYmJpbGQgS2FyYXRla2lkcyBicmljaHQgaW4gdW5rb250cm9sbGllcnRlcyBHZWxhZWNodGVyIGF1cy4KCldlbm4gbmljaHQgc2Nob24gc2VsYmVyIGRhbm4gd2VuaWdzdGVucyBkYXMgQWJiaWxkIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEltbWVyIGZyb2VobGljaC4uLiAoR3JpbW1ib3JuLCAxMy4gU2VwIDE5OTYsIDE1OjA4OjI5KToKfiMhIHJuPU11cGZlbCBydD04NDI1NjgxNzcKfiMhIHRpZD04NDI1NjgxNzcKCkFlaCwgaWNoIHdlaXNlIGRhcmF1ZiBoaW4sIGRhc3MgZGEgc2NoZWluYmFyIGVpbiBjYXBpdGFsaXplKCkgZmVobHQgZnVlciBkZW4KQXJ0aWtlbC4gRGVubiBTYXR6YW5mYWVuZ2Ugd2VyZGVuIGltbWVyIG5vY2ggZ3Jvc3MgZ2VzY2hyaWViZW4sIHNvd2VpdCBzaW5kCndpciBub2NoIG5pY2h0Li4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNpdHVhdGlvbnNrb21payBhIGxhIE1HIChDYXVubywgMTMuIFNlcCAxOTk2LCAxNTozMjozMSk6CgpOaWV0ZSBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpOaWV0ZSBncmFlYnQgbmV1Z2llcmlnIGltIEJvZGVuLCBicmljaHQgamVkb2NoIG5hY2gga3VyemVyIFplaXQgZW50dGFldXNjaHQKYWIuCk5pZXRlIGdyYWVidCBuZXVnaWVyaWcgaW0gQm9kZW4sIGJyaWNodCBqZWRvY2ggbmFjaCBrdXJ6ZXIgWmVpdCBlbnR0YWV1c2NodAphYi4KTmlldGUgZ3JhZWJ0IG5ldWdpZXJpZyBpbSBCb2RlbiwgYnJpY2h0IGplZG9jaCBuYWNoIGt1cnplciBaZWl0IGVudHRhZXVzY2h0CmFiLgpOaWV0ZSBncmFlYnQgbmV1Z2llcmlnIGltIEJvZGVuLCBicmljaHQgamVkb2NoIG5hY2gga3VyemVyIFplaXQgZW50dGFldXNjaHQKYWIuCk5pZXRlIGdyYWVidCBuZXVnaWVyaWcgaW0gQm9kZW4sIGJyaWNodCBqZWRvY2ggbmFjaCBrdXJ6ZXIgWmVpdCBlbnR0YWV1c2NodAphYi4KTmlldGUgZ3JhZWJ0IG5ldWdpZXJpZyBpbSBCb2RlbiwgYnJpY2h0IGplZG9jaCBuYWNoIGt1cnplciBaZWl0IGVudHRhZXVzY2h0CmFiLgpzYWcgbmEsIGdsZWljaCBrb21tc3QgZHUgaW4gZmVybndlc3QgcmF1cyEKRHUgc2Fnc3Q6IG5hLCBnbGVpY2gga29tbXN0IGR1IGluIGZlcm53ZXN0IHJhdXMhCk5pZXRlIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgoKQy4gTm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpZ2VuZSBEdW1taGVpdCBoYWV0dGUgZmFzdCAuLi4gKENhdW5vLCAxMy4gU2VwIDE5OTYsIDE1OjUyOjEyKToKCj4gU2hpbGEga29tbXQgYW4uCkxlYmVuOiAxOTggKDEpICAgIE1hZ2llOiA1MyAoMSkKICBTaGlsYSBncmVpZnQgRGljaCBtaXQgZWluZW0gYmVybnN0ZWluZmFyYmVuZW4gS3Jpc3RhbGxkb2xjaCAgYW4uCiAgU2hpbGEgdHJpZmZ0IERpY2guCkxlYmVuOiAxOTMgKC01KSAgICBNYWdpZTogNTMgKDApCiAgRHUgZ3JlaWZzdCBTaGlsYSBtaXQgZGVtIEJsdXRzYXVnZXItU2Nod2VydCBhbi4KICBEdSB0cmlmZnN0IFNoaWxhIHNlaHIgaGFydC4KICBTaGlsYSBncmVpZnQgRGljaCBtaXQgZWluZW0gYmVybnN0ZWluZmFyYmVuZW4gS3Jpc3RhbGxkb2xjaCAgYW4uCiAgU2hpbGEgdHJpZmZ0IERpY2ggaGFydC4KTGViZW46IDE4NCAoLTkpICAgIE1hZ2llOiA1MyAoMCkKU2hpbGEgd2lyZnQgZWluZW4gQmxpdHpzY2hsYWcgYXVmIERpY2guCkxlYmVuOiAxNTYgKC0yOCkgICAgTWFnaWU6IDUzICgwKQogIER1IGdyZWlmc3QgU2hpbGEgbWl0IGRlbSBCbHV0c2F1Z2VyLVNjaHdlcnQgYW4uCiAgRHUgdHJpZmZzdCBTaGlsYSBzZWhyIGhhcnQuCiAgU2hpbGEgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIGJlcm5zdGVpbmZhcmJlbmVuIEtyaXN0YWxsZG9sY2ggIGFuLgogIFNoaWxhIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KTGViZW46IDE0NSAoLTExKSAgICBNYWdpZTogNTMgKDApCiAgRHUgZ3JlaWZzdCBTaGlsYSBtaXQgZGVtIEJsdXRzYXVnZXItU2Nod2VydCBhbi4KICBEdSB0cmlmZnN0IFNoaWxhIGhhcnQuCiAgU2hpbGEgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIGJlcm5zdGVpbmZhcmJlbmVuIEtyaXN0YWxsZG9sY2ggIGFuLgogIFNoaWxhIHRyaWZmdCBEaWNoIGhhcnQuCkxlYmVuOiAxMzkgKC02KSAgICBNYWdpZTogNTMgKDApClNoaWxhIHNwcmljaHQgZWluICdWZXJ1cnNhY2hlbiBTY2h3ZXJlciBXdW5kZW4nIGF1ZiBEaWNoLgpMZWJlbjogNzkgKC02MCkgICAgTWFnaWU6IDUzICgwKQpTaGlsYSBrbmlyc2NodDogRGFmdWVyIHdpcnN0IER1IGJlemFobGVuIQogIER1IGdyZWlmc3QgU2hpbGEgbWl0IGRlbSBCbHV0c2F1Z2VyLVNjaHdlcnQgYW4uCiAgRHUgdHJpZmZzdCBTaGlsYSBzZWhyIGhhcnQuCiAgU2hpbGEgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIGJlcm5zdGVpbmZhcmJlbmVuIEtyaXN0YWxsZG9sY2ggIGFuLgogIFNoaWxhIHRyaWZmdCBEaWNoIGhhcnQuCkxlYmVuOiA3MiAoLTcpICAgIE1hZ2llOiA1MyAoMCkKU2hpbGEgd2lyZnQgZWluZW4gQmxpdHpzY2hsYWcgYXVmIERpY2guCkxlYmVuOiA2MiAoLTEwKSAgICBNYWdpZTogNTMgKDApCiAgRHUgZ3JlaWZzdCBTaGlsYSBtaXQgZGVtIEJsdXRzYXVnZXItU2Nod2VydCBhbi4KICBEdSBrcmF0enQgU2hpbGEuCiAgU2hpbGEgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIGJlcm5zdGVpbmZhcmJlbmVuIEtyaXN0YWxsZG9sY2ggIGFuLgogIFNoaWxhIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KTGViZW46IDQ3ICgtMTUpICAgIE1hZ2llOiA1MyAoMCkKU2hpbGEgc3ByaWNodCBlaW4gJ1ZlcnVyc2FjaGVuIFNjaHdlcmVyIFd1bmRlbicgYXVmIERpY2guCkxlYmVuOiAxICgtNDYpICAgIE1hZ2llOiA1MyAoMCkKRGllIEFuZ3N0IGlzdCBzdGFlcmtlciBhbHMgRHUgLi4uIER1IHdpbGxzdCBudXIgbm9jaCB3ZWcgaGllci4KU2hpbGEgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgoKVm9yc2ljaHQgNTAgd2FyIHdvaGwgZG9jaCB6dSBrbmFwcC4gRGEgbGFldWZ0IGVpbmVtIGRhcyBMZWJlbiB2b3IgZGVuCkF1Z2VuIGFiLiAoV2FyIGlyZ2VuZHdpZSBzZWhyIGt1cnopIE1lcmtlOgpOSUUgQVVGIERFTiBLQU5BRUxFTiBMQUJFUk4sIFdFTk4gTUFOIEdSQUQgQVVGIEVJTkVNIFJFU0VUUkFVTSBTVEVIVCEKCkMuIE5vIChrdXJ6IHZvciBlaW5lbSBOZXJ2ZW56dXNhbW1lbmJydWNoKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMTMuIFNlcCAxOTk2LCAxOToxODo1Nik6CgpGYXN0IGhhZXR0IGljaHMgdmVyZ2Vzc2VuLCBoaWVyIGRlciBTcHJ1Y2ggZnVlciBkaWUgV09jaGUgMzc6CgoiSGFsdGUgZGllIEF1Z2VuIG9mZmVuIHZvciBkZXIgRWhlIHVuZCBoYWxiIGdlc2NobG9zc2VuIG5hY2ggZGVtIEJlZ2lubgpkZXJzZWxiZW4uIiAoVGhvbWFzIEZ1bGxlcikKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcm9iaW5zIGF1c2xlc2UgKEFubmloaWxhdG9yLCAxNC4gU2VwIDE5OTYsIDA1OjIxOjQ5KToKW1RvZDpFaW4gSHlkcmFrb3BmXSBoc3Nzc3NzIDwxODoyNjoyMD4KW1RvZDpMYXJzXSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgTGF1cmluIHVtZ2VicmFjaHQuIDwxODoyNzozMj4KW1RvZDpFaW4gSHlkcmFrb3BmXSBoc3Nzc3NzIDwxODoyNzozMj4KW1RvZDpMYXJzXSBFaW4gdW5zaWNodGJhcmVzIFdlc2VuIGhhdCBnZXJhZGUgWWFyZW4gdW1nZWJyYWNodC4gPDIwOjExOjA5PgpbVG9kOkVpbiB1bnNpY2h0YmFyZXMgV2VzZW5dIEljaCBsaWViZSBEZWluIEJsdXQsICBZYXJlbiEgPDIwOjExOjA5PgpbVG9kOkxhcnNdIExoYW5hIGRpIExlb25kcm8gaGF0IGdlcmFkZSBTaWx2YW5hIHVtZ2VicmFjaHQuIDwyMDoyODoxND4KW1RvZDpMaGFuYSBkaSBMZW9uZHJvXSBMaWZhZmEgd2lyZCBpbiBLdWVyemUgYmVncmFiZW4uIFdpciBiaXR0ZW4gdW0KW1RvZDpMaGFuYSBkaSBMZW9uZHJvXSBCbHVtZW5zcGVuZGVuLiA8MjA6Mjg6MTQ+CltUb2Q6TGFyc10gRWluIE1hc3NldXIgaGF0IGdlcmFkZSBHaWxnYW1lc2NoIHVtZ2VicmFjaHQuIDwyMTowNDoxNT4KW1RvZDpMYXJzXSBFaW5lIHJpZXNpZ2UgU2NobGFuZ2UgaGF0IGdlcmFkZSBHYXN0MiB1bWdlYnJhY2h0LiA8MjE6MTg6MTA+CltUb2Q6TGFyc10gRWluIFNjaHdlaW5laHVuZCBoYXQgZ2VyYWRlIFlldG1pciB1bWdlYnJhY2h0LiA8MjI6NDE6NTk+CltUb2Q6RWluIFNjaHdlaW5laHVuZF0gS1JSUlJSIDwyMjo0MTo1OT4KcwpbVG9kOkxhcnNdIEVpbiBNb2VuY2ggZGVzIGR1bmtsZW4gZGVucyBoYXQgZ2VyYWRlIEpldmVyIHVtZ2VicmFjaHQuCltUb2Q6TGFyc10gPDIzOjIwOjQ2PgpbVG9kOkxhcnNdIEVpbiBncm9zc2VyIEVpc2JhZXIgaGF0IGdlcmFkZSBFc2N1YmFyIHVtZ2VicmFjaHQuIDwyMzo0NDowMD4KW1RvZDpMYXJzXSBFaW4gVW50aWVyIGhhdCBnZXJhZGUgR2xlbm4gdW1nZWJyYWNodC4gPDAwOjIzOjIwPgpbVG9kOkxhcnNdIExpbGl0aCBoYXQgZ2VyYWRlIEdsZW5uIHVtZ2VicmFjaHQuIDwwMToxMjozMz4KW1RvZDpMYXJzXSBOYXRoYWxpYSBTd2VyZW5vd3RzY2hrYWphIGhhdCBnZXJhZGUgTGF1cmluIHVtZ2VicmFjaHQuIDwwMToyMjoyOD4KW1RvZDpMYXJzXSBSb2JpbiBoYXQgZ2VyYWRlIEdvcmRvbiB1bWdlYnJhY2h0LiA8MDI6MjQ6NTU+CltUb2Q6TGFyc10gUm9iaW4gaGF0IGdlcmFkZSBHb3Jkb24gdW1nZWJyYWNodC4gPDAyOjMwOjAxPgpbVG9kOkxhcnNdIFJvYmluIGhhdCBnZXJhZGUgR2xlbm4gdW1nZWJyYWNodC4gPDAyOjMwOjE5PgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBNYXZlcmljawpbVG9kOkxhcnNdIHVtZ2VicmFjaHQuIDwwMjozNjo0OD4KW1RvZDpMYXJzXSBSb2JpbiBoYXQgZ2VyYWRlIEdvcmRvbiB1bWdlYnJhY2h0LiA8MDI6MzY6NTA+CltUb2Q6TGFyc10gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSBNdXJtZWwgdW1nZWJyYWNodC4gPDAyOjM5OjE5PgpbVG9kOkVpbiBXZWdoaWVyXSBHb3RjaGEhIDwwMjozOToxOT4KW1RvZDpdIE1VUk1FTCBWRVJTVUNIVEUsIE1JUiBaVSBFTlRLTUVOIC0gSkVUWlQgSEFCRSBJQ0ggV0lFREVSIEVYVFJBLUFSQkVJVApbVG9kOl0gTUlUIElITSAuLi4gPDAyOjQ3OjM1PgpbVG9kOkxhcnNdIEVpbiBTdGVpbmJlaXNzZXIgaGF0IGdlcmFkZSBCcmlsaGFzdGkgdW1nZWJyYWNodC4gPDAyOjUyOjM4PgpbVG9kOkxhcnNdIEVpbiBOZWNyb21hbnQgaGF0IGdlcmFkZSBNYXZlcmljayB1bWdlYnJhY2h0LiA8MDM6MDk6MzM+CltUb2Q6TGFyc10gRWluIFRpdGFuIGF1cyBFaXMgaGF0IGdlcmFkZSBNcnlldGkgdW1nZWJyYWNodC4gPDAzOjI3OjQ0PgpbVG9kOkxhcnNdIEVpbmUgTWFnZW5zYWV1cmUgaGF0IGdlcmFkZSBHYXN0MyB1bWdlYnJhY2h0LiA8MDM6Mjk6MTQ+CltUb2Q6TGFyc10gUm9iaW4gaGF0IGdlcmFkZSBHbGVubiB1bWdlYnJhY2h0LiA8MDQ6MDg6MDU+CltUb2Q6TGFyc10gUm9iaW4gaGF0IGdlcmFkZSBNcnlldGkgdW1nZWJyYWNodC4gPDA0OjEzOjAyPgpbVG9kOkxhcnNdIFJvYmluIGhhdCBnZXJhZGUgTWF2ZXJpY2sgdW1nZWJyYWNodC4gPDA0OjQ0OjQ2PgpbVG9kOkxhcnNdIFJvYmluIGhhdCBnZXJhZGUgTXJ5ZXRpIHVtZ2VicmFjaHQuIDwwNDo0NTowMj4KW1RvZDpMYXJzXSBSb2JpbiBoYXQgZ2VyYWRlIEdvcmRvbiB1bWdlYnJhY2h0LiA8MDQ6NDc6NDU+CltUb2Q6TGFyc10gUm9iaW4gaGF0IGdlcmFkZSBUaWdlcmV5ZSB1bWdlYnJhY2h0LiA8MDQ6NTA6MzE+CltUb2Q6TGFyc10gUm9iaW4gaGF0IGdlcmFkZSBNcnlldGkgdW1nZWJyYWNodC4gPDA0OjUyOjQ4PgpbVG9kOkxhcnNdIFJvYmluIGhhdCBnZXJhZGUgR29yZG9uIHVtZ2VicmFjaHQuIDwwNDo1NDo1Mz4KW1RvZDpMYXJzXSBSb2JpbiBoYXQgZ2VyYWRlIEdsZW5uIHVtZ2VicmFjaHQuIDwwNDo1NzoxMj4KW1RvZDpMYXJzXSBSb2JpbiBoYXQgZ2VyYWRlIE1hdmVyaWNrIHVtZ2VicmFjaHQuIDwwNDo1OTowMT4KW1RvZDpMYXJzXSBSb2JpbiBoYXQgZ2VyYWRlIEdvcmRvbiB1bWdlYnJhY2h0LiA8MDU6MDI6MjM+CltUb2Q6TGFyc10gUm9iaW4gaGF0IGdlcmFkZSBHbGVubiB1bWdlYnJhY2h0LiA8MDU6MDU6MTk+CltUb2Q6TGFyc10gUm9iaW4gaGF0IGdlcmFkZSBNcnlldGkgdW1nZWJyYWNodC4gPDA1OjA1OjQ0PgpbQWxsZ2VtZWluOlJhc2NhbF0gUm9iaW4gRXNzZW4gMTE6MCAuLi4uZXMgbGFldWZ0IGd1dCA6KSA8MDU6MDY6MzA+CltBbGxnZW1laW46QW5uaWhpbGF0b3JdIGVzIHNpbmQgc2Nob24gMTMgOykgPDA1OjA2OjUyPgpbQWxsZ2VtZWluOkFuYXJjaGllXSBXaWUgemFlaGxzdCBEdSBkZW5uPzspIDwwNTowNzowNj4KW0FsbGdlbWVpbjpNYXZlcmlja10gU2VpIG5pY2h0IHNvIGdlaXR6aWcgPDA1OjA3OjE0PgpbQWxsZ2VtZWluOlJhc2NhbF0gRGFmdWVyIGlzdCBSb2JpbiBhYmVyIHNjaG9uIGxlaWNodCBhbmdlc2NobGFnZW4gOikpCltBbGxnZW1laW46UmFzY2FsXSA8MDU6MDc6MTY+CltBbGxnZW1laW46TXVybWVsXSByb2JpbiB2b3Igbm9jaCBlaW4gdG9yIDspIDwwNToxMDoyMD4KW0FsbGdlbWVpbjpHbGVubl0gaGFsdHMgbWF1bCAhISEhISA8MDU6MTA6MzY+CltBbGxnZW1laW46UmFzY2FsXSBLZWluIFRoZW1hIGdlaHQgYWxsZXMgc3RyZW5nIG5hY2ggUGxhbi4uLi4ud2lyIG51dHplbgpbQWxsZ2VtZWluOlJhc2NhbF0gc2VpbmVuIEJ1ZyBlaXNrYWx0IGF1cyA8MDU6MTA6NDI+CltBbGxnZW1laW46TWF2ZXJpY2tdIGdlbmF1IDwwNToxMDo1NT4KW0FsbGdlbWVpbjpNdXJtZWxdIGRhIGhhdCBlaW5lciBzY2h3YWNoZSBuZXJ2ZW4gOikgPDA1OjEwOjU3PgpbQWxsZ2VtZWluOlJhc2NhbF0gTmFqYSBkZXIgc3VjaHQgaGFsdCBzZWluZSBhc3VydWVzdHVuZyA6KSA8MDU6MTE6MTM+CltBbGxnZW1laW46TXJZZXRpXSBXYXJ1bSBoYWJlIGljaCBqZXR6dCB3ZW5pZ2VyIGFscyBkaWUgSGFsZnRlIG1laW5lcgpbQWxsZ2VtZWluOk1yWWV0aV0gTWFnaWVwdW5rdGU/IDwwNToxMTozNT4KW0FsbGdlbWVpbjpNdXJtZWwgd2VkZWx0IG1pdCBlaW5lbSAnUm9iaW4gZm9yIFByYWVzaWRlbnQnZmFlaG5jaGVuIGhlcnVtLiA7KQo8MDU6MTI6MDM+XQpEdSB0ZWlsc3QgUmFzY2FsIG1pdDogd2FzIGZ1ZXInbiBidWcgPwpSYXNjYWwgdGVpbHQgRGlyIG1pdDogd2FyIGVpbiBzY2hlcnogOikpKSBkYW1pdCBkYXMgc2lubmxvc2UgU3RlcmJlbiBuYWNoIFBsYW4KUmFzY2FsIHRlaWx0IERpciBtaXQ6IGF1c3NpZWh0IDopCgpkYSB3YXIgZXNzZW4gamEgd2llZGVyIGZsZWlzc2lnIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFydHksIDE0LiBTZXAgMTk5NiwgMjI6MjI6NDkpOgo+IEVzY3ViYXIgbGVndCBEaXIgZGllIFRhdHplIGF1Zi4KRXNjdWJhciBzY2hyZWl0ZXQgbmFjaCBOb3JkZW4uCj4gcyBIaSBFc2N1YmFyLgpFc2N1YmFyIHNjaHJlaXRldCBuYWNoIE5vcmRlbi4KRHUgc2Fnc3Q6IEhpIEVzY3ViYXIuCj4gYXJnbApEdSBhcmdsc3QgZWluIHdlbmlnIHZvciBEaWNoIGhpbi4KPiB0bSBlc2N1YmFyIFJlbm4gZG9jaCBuaWNodCBzbyA7LSkgS2FubiBtYW4gbmljaHRtYWwgJ0hpJyBzYWdlbiA7LSkKRHUgdGVpbHN0IEVzY3ViYXIgbWl0OiBSZW5uIGRvY2ggbmljaHQgc28gOy0pIEthbm4gbWFuIG5pY2h0bWFsICdIaScgc2FnZW4gOy0pCj4gRXNjdWJhciB0ZWlsdCBEaXIgbWl0OiBCaW4gZ3JhZCBhbSBST2JpbiA7KQp0bSBlc2N1YmFyIFZpZWwgR2x1ZWNrIQpEdSB0ZWlsc3QgRXNjdWJhciBtaXQ6IFZpZWwgR2x1ZWNrIQo+IFtUb2Q6TGFyc10gUm9iaW4gaGF0IGdlcmFkZSBFc2N1YmFyIHVtZ2VicmFjaHQuCnRtIGVzY3ViYXIgQmVpbGVpZC4uLgpEdSB0ZWlsc3QgRXNjdWJhciBtaXQ6IEJlaWxlaWQuLi4KLi4uCgoKICAgQVJUWQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR3JhZXNlcm4uLi4gKEFuYXRvbCwgMTYuIFNlcCAxOTk2LCAyMToxNzozMSk6Cgo+IHVudCBib2RlbgpEdSBzaWVoc3QgbnVyIEdyYXMuCj4gdW50IGdyYXMKU293YXMgc2llaHN0IER1IGRhIG5pY2h0IQoKKmhtcGYqIDopCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hIHdhcyB3b2hsIDopIChDYXJhZGhyYXMsIDE2LiBTZXAgMTk5NiwgMjE6MjU6MzUpOgpbQWxsZ2VtZWluOkFubmloaWxhdG9yXSBzY2hyZWlidCBtYWwgd2FzIGluIGRpZSB6ZWl0dW5nIGljaCBtdXNzIG1laW4gZHJpbmtpbmcKW0FsbGdlbWVpbjpBbm5paGlsYXRvcl0gcnVudGVyaWRlbG4gOykKClNjaG9uIGRhYmVpCgogICAgICAgICAgICAgQ2FyYWRocmFzIFVuc2lubm1hY2hlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2Vpc3RlciB3aXNzZW4gYXVjaCBuaWNodCB3YXMgc2llIHdvbGxlbiAoQ2FyYWRocmFzLCAxNy4gU2VwIDE5OTYsIDAwOjM1OjIwKToKRGVyIFZvbGxzdHJlY2tlciBzY2hsYWVndCBtaXQgZ3JvZXNzdGVyIEZyZXVkZSBiZXNvbmRlcnMga3JhZWZ0aWcgYXVmCkRlaW5lbiBHZWduZXIgZWluLCBhbHMgZXIgbWVya3QsIGRhc3MgZGllc2VyIGt1cnogdm9ybSBFbmRlIHN0ZWh0IQogIER1IGdyZWlmc3QgZGVuIEZldWVyZ2Vpc3QgbWl0IGRlbSBWb2xsc3RyZWNrZXIgYW4uCiAgRHUgc2NobGFlZ3N0IGRlbiBGZXVlcmdlaXN0IHp1IEJyZWkuCkRlciBGZXVlcmdlaXN0IGVybGlzY2h0LgpFaW4gRmV1ZXJnZWlzdCBmcmFndCBEaWNoOiBXYXJ1bSBzcGllbHN0IER1IG5pY2h0IG1pdD8KCgogIFR1IGljaCBkb2NoIHNjaG9uLgogICAgICAgICAgIFJvdGhvcm4gQ2FyYWRocmFzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcm1hZ2VkZG9uIGhvZXJ0IGphIGd1dCAoQWxpbmUsIDE3LiBTZXAgMTk5NiwgMTU6MTU6MjMpOgpbQWxsZ2VtZWluOlpvcnJvXSB3YW5uIGlzdCBkZW5uIGRlciBuYWVjaHN0ZSByZWJvb3QKQXF1YXRvbGwgYmV0cml0dCBkaWVzZSBXZWx0LgpBcm1hZ2VkZG9uIHJ1ZnQ6IEluIDMwIE1pbnV0ZW4gdW5kIDAgU2VrdW5kZW4gd2VyZGUgaWNoIGRpZSBXZWx0IHplcnN0b2VyZW4KQXJtYWdlZGRvbiBydWZ0OiB1bmQgbmV1IGVyc2NoYWZmZW4hCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGFwYWdlaWVuIHJlY2huZW4gbGFuZ3NhbSwgYWJlciBnZW5hdSEgKFBhbXBlcnMsIDE3LiBTZXAgMTk5NiwgMTY6NDg6MDIpOgoKCgpLbG9uayBzYWd0OiB2b24gOC4zMCBiaXMgMTcuMzAgc2luZCA5IHN0dW5kZW4KU2Nob2tvbGFkZW5vbmtlbCBrcmFlY2h6dDogU2Nob2tvbGFkZW5vbmtlbCBpc3QgZGEgYW5kZXJlciBNZWludW5nLCBLbG9uayAuLi4KU2Nob2tvbGFkZW5vbmtlbCBrcmFlY2h6dDoga3Jycm9vYWFhClNjaG9rb2xhZGVub25rZWwga3JhZWNoenQ6IC4uLiBub2UsIHBhc3N0IHNjaG9uIDopIC4uLiBrcnJyb29hYWEhCgoKClBhbXBlcnMuIEJlZWluZHJ1Y2t0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3Li4uIChBbmF0b2wsIDE3LiBTZXAgMTk5NiwgMTg6MDg6MDQpOgoKW1NlaGVyOkNlbGViZGlsXSBvIHZvbSBzZWUgc2luZCAyIGtvZXBmZQpbVG9kOkxhcnNdIEVpbmUgSHlkcmEgaGF0IGdlcmFkZSBDZWxlYmRpbCB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgSHlkcmFdIGhzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcwoKCkphdS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaWxwZXJ0IChSYWZmaSwgMTcuIFNlcCAxOTk2LCAxOTozOTo1OCk6CgpJbSBFaW5nYW5nc3JhdW0gdm9uIEhpbHBlcnRzIFR1cm06Cgo+IHVudCBhdXNnYW5nCkR1cmNoIGRlbiBrbGVpbmVuIFRvcmJvZ2VuIGthbm5zdCBEdSBkZW4gVHVybSB2ZXJsYXNzZW4sIHZpZWxsZWljaHQgaXN0IGVzCkRlaW5lIGxldHp0ZSBDaGFuY2UgYmlzIGF1ZiB3ZWl0ZXJlcy4KPiB1bnQgY2hhbmNlClNvd2FzIHNpZWhzdCBEdSBkYSBuaWNodCEKCkdyaW5zCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphYWFhYWFoIGphIChDYXJhZGhyYXMsIDE3LiBTZXAgMTk5NiwgMjA6Mzk6NTcpOgpEaWUgU2NobWVyemVuIGhhYmVuIGlocmVuIEhvZWhlcHVua3QgZXJyZWljaHQuIFNpZSB3ZXJkZW4gendhciBuaWNodCBhYmVyIGVzCnNpZWh0IG5pY2h0IHNvIGF1cywgYWxzIG9iIHNpZSBuYWNobGFzc2VuIHd1ZXJkZW4uCkR1IGthbm5zdCBlaW5lIGNoYW90aXNjaCBtdXRpZXJ0ZSBIYXV0IG5pY2h0IGF1c3ppZWhlbi4KRHUgemllaHN0IGRpZSBjaGFvdGlzY2ggbXV0aWVydGUgSGF1dCBhdXMuCltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIE1ldGhlZHJhcwpbVG9kOkxhcnNdIHVtZ2VicmFjaHQuCm4KRGVpbiBLb2VycGVyIGdlaG9yY2h0IERpciBuaWNodCAhCgoKRXJzdCBuaWNodCBhdXN6aWVoZW4ga29lbm5lbiBkYW5uIDEvMTAgU2VrdW5kZSBzcGFldGVyIGRvY2ggYXVzemllaGVuIGtvZW5uZW4/CkxvZ2lzY2ghIDopCiAgICAgICAgICAgICpncmlucyBaYXJkb3oqICAgICAgIAogIFJvdGhvcm4gQ2FyYWRocmFzIC0gaGF0IGRlbiBCZXJnZXRhZyBhZWVlZWggU3RlcmJldGFnIGVpbmdlZnVlaHJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpaYXViZXJlciA6KSAoSmVob3ZhLCAxNy4gU2VwIDE5OTYsIDIwOjQ3OjM0KToKRHUgZml4aWVyc3QgZGFzIFdlaXNza2VobGNoZW4gdW5kIG1hY2hzdCBzY2h3dW5ndm9sbGUgQmV3ZWd1bmdlbi4KRHUgZ3JlaWZzdCBkYXMgV2Vpc3NrZWhsY2hlbiBtaXQgZWluZW0gSGVpbGlnZW5zY2hlaW4gYW4uCkR1IHRyaWZmc3QgZGFzIFdlaXNza2VobGNoZW4gaGFydC4KRGFzIFdlaXNza2VobGNoZW4gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRWluZSBMZWljaGUgdGFuenQgd2llIGluIFRyYW5jZSBkdXJjaCBkaWUgR2VnZW5kLgoKJ3p3aW5ndGFueicgaXN0IHdvaGwgZXR3YXMgenUgbWFlY2h0aWcgZ2V3b3JkZW4gOikKCkplaG92YSwgZmluZGV0IGRpZSBHaWxkZSB0b2xsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZWluIFp3ZXJnIHVuZCBkaWUgVWhybWVsZHVuZyAuLiAoQWxib2luLCAxNy4gU2VwIDE5OTYsIDIxOjA2OjQ4KToKW1RvZDpMYXJzXSBFaW4gWndlcmcgaGF0IGdlcmFkZSBNZXRoZWRyYXMgdW1nZWJyYWNodC4KMjEgWndlcmdlIHdlcmRlbiBnZXJhZGUgdm9uIFplcGh5ciB6YXJ0IGdlcm9lc3RldC4KW0JlaWxlaWQ6S2V5XSBUc3RzISA6KApbQmVpbGVpZDpBbGJvaW5dICpraWNoZXIqCltCZWlsZWlkOkxhdXJpbl0gZWluIGJlcmd6d2VyZyA/IDopCltCZWlsZWlkOkNhcmFkaHJhc10gb3Bwcywgd2FyIG5pY2h0IGdhbnogZ2VwbGFudAoKQWxib2luIGdyaW5zdCBmaWVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbGluZSwgMTguIFNlcCAxOTk2LCAwOToxMzo1OCk6CgpNYWwgd2llZGVyIGRpZSBUYW50ZSA7KQoKW1NlaGVyOktleV0gVWkgbmV0dGUgaHlkcmEhCltUb2Q6TGFyc10gRWluIEh5ZHJha29wZiBoYXQgZ2VyYWRlIEtleSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBIeWRyYWtvcGZdIGhzc3Nzc3MKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFUlNURVIgISEhIChNb3Jnb3RoLCAxOC4gU2VwIDE5OTYsIDE0OjI5OjIwKToKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIE1pdCwgMTguIFNlcCAxOTk2LCAxNDoyODo1MyAoNiBUZWlsbmVobWVyKQoKTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMKTG9nb24uLi4uLi4uLi4uLnMgIE1vcmdvdGguLi4uLi4uLi5SCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRVJTVEVSICEhISAoTmljaHRzLCAxOC4gU2VwIDE5OTYsIDE1OjQ3OjQyKToKfiMhIHJuPU1vcmdvdGggcnQ9ODQzMDQ5NzYwCn4jISB0aWQ9ODQzMDQ5NzYwCgpJY2ggc2FoIHZvcmhpbiBudXIKTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBOaWNodHMuLi4uLi4uLi4uUwoKU2VlcnBvd2VyLAoiIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFtIGFuZmFuZyB3YXIgZGVyIFZvcnRyYWcuIChSYWZmaSwgMTguIFNlcCAxOTk2LCAxNjoyMjo0Nik6CgpbPE1hc3RlUj46QWNyaW1vbiBsYWVzc3QgZGllIEViZW5lICdWb3J0cmFnc3VudGVybGFnZW4nIGVudHN0ZWhlbi5dCgpHcnVzcwpILgooUmFmZmkgaGF0IHNpY2ggc2Nob24gaW1tZXIgZ2VmcmFndCB3aWUgVm9ydHJhZ3N1bnRlcmxhZ2VuIGVpZ2VudGxpY2gKZW50c3RlaGVuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uLS0tIDopIChBbmF0b2wsIDE4LiBTZXAgMTk5NiwgMTY6MjU6MjMpOgoKRGVyIEtyYWVtZXIgamFtbWVydDogRGVyIG5hZWNoc3RlIENyYXNoIHJ1aW5pZXJ0IG1pY2guCgpBcm1lIFNhdSA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCltBbGxnZW1laW46RGlkaV0gUGFtcGVycywgemllaCBkaWUgV2luZGVsbiBzdHJhZmYhIEljaCBiaW4gZ2xlaWNoIGJlaSBEaXIhIChBbmF0b2wsIDE4LiBTZXAgMTk5NiwgMTc6MDU6MDkpOgoKClBhbXBlcnMgc2FndDogR2licyBtaXIuIDopCkRpZGkga251ZGRlbHQgUGFtcGVycy4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KUGFtcGVycyBmYWVuZ3QgYW4genUgd3Vlcmdlbi4KCipraWNoZXIqIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaWRlbG4gKExhaWxhLCAxOC4gU2VwIDE5OTYsIDE3OjEyOjIyKToKamFhYWEsIHdhcyBmdWVyIGVpbiB0YWcsIHVuZCBibHViYiB1bmQgYmxhYWEsIGphIGphLCBzbyBzbywgZGEgZnJhZ3QgLG1hbiBzaWNoCm5vY2ggd2FydW0gYWJlciBhdWNoLCBvZGVyIGF1Y2ggbmljaHQsIHVuZCBtYWwgc2NoYXVlbi4gamFhYSwgc2Nob24gd2llZGVyCmVpbiBwYWFyIGxwL21wIG1laHIuIG5hIG1hbCBndWNrZW4gd2FubiBtZXIgbWFsIHdpZWRlciB2b2xsIHNpbmQuCmF1ZiBkYXMgd2llIGRpZXNlbSBkdW1tZW4gZGFlbW9uIGRpZSBodWNrZSB2b2xsIGhhdWVuIGtvZW5uZW4uCmFiZXIgYXVjaCBlY2h0IGR1bW0sIGRhcyBkZXIgZGVuIGVpbnppZ2VuIGF1c2dhbmcgYmxvY2tpZXJ0IHVuZCAKbmF0dWVybGljaCBrZWluZSB0YW5rZSBpbiBkZXIgbmFlaGUsIGFiZXIgd2FzIHd1ZXJkZSBkaWUgYXVjaCBoZWxmZW4Kd2VubiBzbyBlaW4gZHVtbWVyIGRhZW1vbiB2b3IgZGVyIHR1ZXIgc3RlaHQuIHVuZCBkYSBzYWd0IGljaCBub2NoCmFiZXIgbmVlZWVpbiwgbWFuIHdpbGwgamEgbmljaHQgYXVmIG1pY2ggaG9lcmVuLCB0dSBkYXQgbmljaCBoYWJlIGljaCBnZXNhZ3QKLiBhYmVyIGRhIG1hY2hzdGUgbml4LCBnYWFhciBuaXguIGFiZXIgd296dSBnaWJiZXQgZGVuIHNjaG1hcnJuLgpkYSBoYXN0ZSBzcGFzcywgZGEga2FubnN0ZSBkaXIgZGllIHplaXQgbWl0IHZlcnRyZWliZW4gLiBkYXMgaGllciBsaWVzdCAKZWhoaCBrZWluZXIuIHVuZCBkYSBlaGhoIG5peCBuZXVlcyBpbiBkZXIgd2VsdCBpcywgd2F0IG1hbiBsZXNlbiBrYW5uCmthbm4gbWFuL2ZyYXUgamEgZGlyZWt0IHdhdCBkdW1tZXMgcmVpbiBzY2hyZWliZW4uIHNvb28sIGRhbm4gc2NoYXVuIHdhIG1hbAp3aWVkZXIKamEgamEgZGFzIHdpcmQgamEuIDg3LzgxIHNpbmQgamhhIGF1Y2ggc2Nob24gbWFsIG5jaWh0IG9obmUuIGdhZWhubm5uCmFiZXIgaWNoIGhhYiBqYSBuaWNoIGhvZXJlbiB3b2xsZW4uIG5peCBkYWJlaSAsIGtlaW4gcG9ydGFibGUgaGVhbGluZyB1bmQgCndpZSBtYW4gZGFzIGF1Y2ggaW1tZXIgbmVubmVuIHdpbGwuIGFiZXIgZWlucyBzYWNoIGljaCBkaXIgZGEgbWFsLiBkYXMKa29ubnRlIGphIGF1Y2gga2VpbmVyIGFobmVuLiBlaW5tYWwgdmVycHVmZmVuIGhpZXIgZGllIHphdWJlcnNwcnVlY2hlIHVuZApkYW5uIGtvbW10IGRhIG5vY2ggc28gZWluIGdyb3NzZXIgZGFlbW9uIGRlciBub2NoIGF1dG8tYXR0YWNrIGlzCmRhIGZpbmRlIGljaCBudSBhdWNoIG5pY2h0IHdpZWRlciBuZXR0LiBtdXNzIGphIG5pY2ggc2VpbgphYmVyIGRhIGhpZXIgd2lyZCBtaXQgbnUgYXVjaCB6dSAgYmxvZWQgYWxzbyBtYWNoIGljaCBzY2hsdXNzIGRhbWl0LCB1bmQKbGVzZSBqZXp0IDEwbWFsIG1laW5lIGVpZ2VuZW4gYXJ0aWtlbCBkdXJjaCB1bmQgd2VyZGUgbWljaCBmcmFnZW4Kd2VyIHNvIGVpbmVuIHVuc2lubiBpbiBkaWUgbXBhIHNldHplbiBrYW5uLiBhbHNvIGljaCBuYXR1ZWxpY2ggbmllZWVlZQoKTGFpbGEsIGlkbGUgaWRsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVjaCBlcnN0ZXI6IChKaW1kaWdyaXosIDE4LiBTZXAgMTk5NiwgMTc6NDM6MDMpOgo+IGt3ZXIKVGV1ZmVsIHRyb3R0ZXQgaGVyZWluLgogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTWl0LCAxOC4gU2VwIDE5OTYsIDE3OjQxOjI1ICgzIFRlaWxuZWhtZXIpCgpMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMgIEppbWRpZ3Jpei4uLi4uLi5TCgpKZEcgc3BpZXNzdCBoZXV0IGF1Y2ggcnVtIHVuZCB3aWxsIGRpZSAnQW0gb2VmdGVzdGVuIGVyc3RlciBlaW5nZWxvZ2d0IExpc3RlJwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWJzdHVyeiwgZGllIGh1bmRlcnRzdGUuLi4uIChQYW1wZXJzLCAxOC4gU2VwIDE5OTYsIDE3OjQ1OjI0KToKCgpbRC1jaGF0Okhhbm5pQEZpbmFsRnJvbnRpZXJdIGNpYW8gbXVkcwpDb25uZWN0aW9uIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCgoKSGFubmkgaXN0IG9mZmVuc2ljaHRsaWNoIGdlZmFlaHJsaWNoLi4uIDotKQoKUGFtcGVycy4gS2ljaGVydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbiBkZW5uIGJpdHRlPyAoQXRveiwgMTguIFNlcCAxOTk2LCAxODoxNzo0OCk6CmZyYWcgQmFlY2tlciBuYWNoIGJyb3QKRGVyIEJhZWNrZXIgc2FndDogRGEgbXVzc3QgRHUgamVtYW5kIGFuZGVyc3QgZnJhZ2VuLgoKSmEgd2VuIGRlbm4gYml0dGU/IHVuZCBoZWlzc3QgZXMgbmljaHQgYW5kZXJlbj8gClBlbHpmdWVzc2UgaWhyIGdlaG9lcnQgYXVzZ2Vyb3R0ZXQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VuIGRlbm4gYml0dGU/IChSYWZmaSwgMTguIFNlcCAxOTk2LCAxODoyMTozMik6Cn4jISBybj1BdG96IHJ0PTg0MzA2MzQ2OAp+IyEgdGlkPTg0MzA2MzQ2OAoKSm8sIHdlZyBkYW1pdCAhIAoKVW53ZXJ0ZXMgUHNldWRvbGViZW4gIQoKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhcmRpbC4uLiA6LSkgKFBhbXBlcnMsIDE5LiBTZXAgMTk5NiwgMTE6MzA6MzgpOgpadXIgRXJsYWV1dGVydW5nOiAKTWVpbmUgTWVzc2FnZSwgd2VubiBuaXggaW4gZGVyIFplaXR1bmcgc3RlaHQsIGxhdXRldDoKCkhhcmRpbCBmaWVsIGtlaW5lIG5ldWVyIFVuc2lubiBlaW4uCgpHcmFkLCBrdXJ6IHZvciBoYWxiIFp3b2VsZjoKCm5uCkhhcmRpbCBmaWVsIGtlaW4gbmV1ZXIgVW5zaW5uIGVpbi4KKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEhhcmRpbCBpbiBSdWJyaWsgImt1bHR1ciIuCgoKUGFtcGVycy4gRGFua3QgSGFyZGlsIGZ1ZXIgZGllIHByb21wdGUgVmVyc29yZ3VuZy4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZXIgd2FyIGRhcz8gKEdyaW1tYm9ybiwgMTkuIFNlcCAxOTk2LCAxNDoxODozOSk6CgpbPE1hc3RlUj46QW5hdG9sXSBsYWcKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDYuMyUvNjAsIDcuNSUvMTUsIDMuMiUvMQpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgolIENvbm5lY3Rpb24gdG8gTW9yZ2VuR3JhdWVuIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKbyBtZWksIHNvIHNhbnMgKENhcmFkaHJhcywgMTkuIFNlcCAxOTk2LCAxNDo0Mjo0OSk6CkNoaWNvbGEga29tbXQgZnJvZWhsaWNoIHBmZWlmZW5kIGhlcmVpbmdlcmFkZWx0LgpDaGljb2xhIGdpYnQgRGlyIGRlbiBTdGVpbi4KQ2hpY29sYSBnaWJ0IERpciBkZW4gS3Jpc3RhbGwuCkNoaWNvbGEgZ2lidCBEaXIgZGVuIEtyaXN0YWxsLgpDaGljb2xhIGdpYnQgRGlyIGRlbiBLcmlzdGFsbC4KQ2hpY29sYSBnaWJ0IERpciBkZW4gS3Jpc3RhbGwuCj4gQ2hpY29sYSBzYWd0OiBpY2ggZ2VoZSBqZXR6dCA6KQpEdSBzYWdzdDogZGFua2UgQ2hpY28KRHUgdmVyd3VzY2hlbHN0IENoaWNvbGFzIEhhYXJlLgpDaGljb2xhIHNhZ3Q6IHVuZCBiaXMgenVtIG5hZWNoc3RlbiBtYWwgaXN0IGVoIGVpbiByZWJvb3QgOikKJSBDb25uZWN0aW9uIHRvICh1bm5hbWVkMSkgY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KLS0tLSBObyB3b3JsZCAtLS0tCgogICBXaWUgdHJlZmZlbmQgOikgICAgQ2hpY29sYSBkaWUgUHJvcGhldGluPwoKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVpbiBQYXBhZ2VpIGthbm4gc29nYXIgemFlaGxlbiA6KSAoWmVwaHlyLCAxOS4gU2VwIDE5OTYsIDE1OjI1OjIzKToKCkViZW4gcGFzc2llcnQ6CgpBcm1hZ2VkZG9uIHJ1ZnQ6IEluIDIgTWludXRlbiB3ZXJkZSBpY2ggYXVmIFNuaWJyaWwncyBXdW5zY2ggZGllIFdlbHQKdmVybmljaHRlbiB1bmQgbmV1IGVyc2NoYWZmZW4uClllemFyaWFlbCBrcmFlY2h6dDogLi4uIGRlciBkcml0dGUhIC4uLiBrcnJyb29hYWEhCgpncmluc2VuZCwgWmVwaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIG51bj8gKEFseHgsIDE5LiBTZXAgMTk5NiwgMTc6MDY6NDkpOgomZm4KPiBbZm4gd2FuZGVyZXIgZmx1Y2ggZGVyIHdlaXNoZWl0XQpEZXIgV2FuZGVyZXIgc2FndDogRmx1Y2ggd2Vpc2hlaXQgPyBJbnRlcmVzc2llcnQgbWljaCBuaWNodCAhCj4gW0FiZW50ZXVlcjpKYW5pY2VdIGhhYiBub2NoIG5pY2h0IGFsbGUgZGF0ZW4gZGVyIHF1ZXN0cyA6KApmbiB3YW5kZXJlciBmbHVjaApEZXIgV2FuZGVyZXIgc2FndDogRGVyIEZsdWNoIGRlciBXZWlzaGVpdD8gRGF6dSBrYW5uIGljaCBEaXIgZm9sZ2VuZGVzIHNhZ2VuOgpEZXIgV2FuZGVyZXIgc2FndDogRXMgaXN0IHNlaHIgZ2VmYWVocmxpY2ggc2ljaCBtaXQgZGVtIEZsdWNoIGRlciBXZWlzaGVpdCB6dQpEZXIgV2FuZGVyZXIgc2FndDogYmVzY2hhZWZ0aWdlbiwgYWxzbyBzZWkgZ2V3YXJudCEgVW5kIGtvbW0gaGludGVyaGVyIG5pY2h0Cnp1CkRlciBXYW5kZXJlciBzYWd0OiBtaXIgdW5kIHNhZyBtaXIsIGljaCBoYWV0dGUgZXMgRGlyIG5pY2h0IGdlc2FndCEgQWJlciB3ZW5uCkRlciBXYW5kZXJlciBzYWd0OiBEdSBlcyBuaWNodCBhbmRlcnMgd2lsbHN0LCBzbyB3ZXJkZSBpY2ggRGlyIGZvbGdlbmRlcwpzYWdlbjoKRGVyIFdhbmRlcmVyIHNhZ3Q6IFdlbm4gRHUgZXR3YXMgdWViZXIgZGVuIEZsdWNoIGRlciBXZWlzaGVpdCBlcmZhaHJlbiB3aWxsc3QsCkRlciBXYW5kZXJlciBzYWd0OiBzbyB3ZW5kZSBEaWNoIGFuIExlbmdsZXQgRHVmcmVzbm95LiBFciB3b2hudCB6dXNhbW1lbiBtaXQKRGVyIFdhbmRlcmVyIHNhZ3Q6IGFuZGVyZW4gV2Vpc2VuIGltIFdlaXNlbmhhdXMsIHdlbGNoZXMgc2ljaCBpbiBkZXIgTmFlaGUgdm9uCkRlciBXYW5kZXJlciBzYWd0OiBTbmFya2VuIGJlZmluZGV0LgoKCm5hIHdhcyBudW4/CkE3MC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRpZ2VyZ3J1c3MgaXN0IGtlaW0gbXVzcy4uLiAoTmljaHRzLCAxOS4gU2VwIDE5OTYsIDE3OjM4OjAxKToKCkRlciBTYW5kdGlnZXIgYmVncnVlc3N0IEhhbGxvIG1pdDogSGFsbG8sIEhhbGxvIQoKTmUsIG5pY2ggd2FociwgbmU/CiIiIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGlwcGZlaGxlcnRldWZlbCAoQXNtb2RpcywgMjAuIFNlcCAxOTk2LCAwMToyMjozMCk6CgpbU2VoZXI6TXVwZmVsIHdpYmt0XQpbU2VoZXI6TXVwZmVsIHdpYm50XQpbU2VoZXI6TXVwZmVsIHdpbnRdCltTZWhlcjpNdXBmZWwgd2lua3RdCltTZWhlcjpNdXBmZWwgYXJnbHRdCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXJka3VuZGUgdW5nZW51ZWdlbmQuIDopIChIYXJkaWwsIDIwLiBTZXAgMTk5NiwgMTA6MjQ6MDMpOgoKVmllbGxlaWNodCBzb2xsdGUgamVtYW5kIG1hbiBFcmRrdW5kZSBmdWVyIE11ZW5lcnN0ZXJhbmVyIGFiaGFsdGVuLiA6KQpEZW5uIHdpZXNvIGtvbW10IGJlaSB2b2xsZW0gTVVEIGZvbGdlbmRlIE1lbGR1bmc6Cgprd2VyIGluIGRldXRzY2hsYW5kCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBGcmUsIDIwLiBTZXAgMTk5NiwgMTA6MjE6MzUgKDEgVGVpbG5laG1lcikKCk1pa2kuLi4uLi4uLi4uLi5zCgoKClVuZCB3byBpc3QgZGVyIFJlc3Q/IEFsbGVzIE5pY2h0LXNvemlhbGlzdGlzY2hlcyBBdXNsYW5kPwoKLUhhcmRpbC4gR3JpbnN0LiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsdWdlciBvZGVyIHZvcmxhdXRlciBIdW5kPz8gKER1cmlhbiwgMjAuIFNlcCAxOTk2LCAxODozMDowNCk6CgpbU2VoZXI6VGFuaXNdIGplbWFuZCBkYSwgZGVyIHNpY2ggZ3V0IG1pdG0gdmkgYXVza2VubnQ/CkJvYiBnaWJ0IGVpbiBrdXJ6ZXMgQmVsbGVuIHZvbiBzaWNoLgoKSG0sIGljaCB3dXNzdGUgc2Nob24gaW1tZXIsIGRhc3MgdmkgZnVlciBkaWUgSHVuZGUgaXN0IC4uLgoKLSBEdXJpYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbHRlbmhlaXQgKEphcmllbCwgMjEuIFNlcCAxOTk2LCAwMDo0OTowOSk6CgoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSoKfCAgICAgICAgICAgIE1vcmdlbkdyYXVlbiwgTFBNdWQgMDMuMDIuMUAxMzEgKEFteWxhYXIpICAgICAgICAgICB8CnwgICAgICAgIEFkcmVzc2U6IG11ZC51bmktbXVlbnN0ZXIuZGUgKDEyOC4xNzYuMTgyLjcwKSAgMjMgICAgICAgfAp8ICAgICAgICAgICBVcHRpbWU6IDEgU3R1bmRlLCAyIE1pbnV0ZW4gdW5kIDM1IFNla3VuZGVuICAgICAgICAgIHwKfCAgICAgICAgICAgICAgICAgICAgICAgTW9yZ2VuR3JhdWVuIE11ZGxpYiAgICAgICAgICAgICAgICAgICAgICB8CiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKgoKKioqIEFud2VzZW5kZSBpbSBNb3JnZW5HcmF1ZW46IEFrdHVlbGwgMCwgTWF4LiBoZXV0ZSA0NiwgUmVrb3JkIDE3MAoKCklzdCBzY2hvbiBzZWx0ZW4gZGFzIGRhcyBNRyAxIFN0dW5kZSB1cCBpc3QgYWJlciBuaWNodCBlaW4gU3BpZWxlciBkcmluIGlzdC4KSGFiZW4gZGllIGFybWVuIE5QQydzIG1hbCBldHdhcyBSdWhlIHVuZCBrb2VubmVuIHpCIGF1Y2ggbWFsIG5lIFBhdHJ5IGZlaWVybi4KCkpBcmllbC4uLi4od2lsbCBhdWNoIHdpZWRlciBtYWwgbmUgUGFydHkgKGJlc3VjaGVuISBuaWNodCBnZWJlbikgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIeWRyYSB3YXJ0ZW4gbGFuZ3dlaWx0Li4uLiAoTGVjaHVjaywgMjEuIFNlcCAxOTk2LCAxNjo1NzozNyk6Ci14IGxhZwpbPE1hc3RlUj46TGVDaHVja10gbGFnCj4gWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDIuMSUvNjAsIDIuMyUvMTUsIDAuMCUvMQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBEcmFrb25pZXJzXSBPaG5lIGRpZXNlcyBMYWcgaGFldHRlIG1pY2ggRWxlbmRpbCBuaWNodApbTW9lcmRlcjpHZWlzdCBlaW5lcyBEcmFrb25pZXJzXSB1bWdlYnJhY2h0IQpEZXIgV2luZCBmZWd0IHNpbmdlbmQgdm9uIGRlbiBCZXJnZW4gaGVydW50ZXIuCgpibHViYgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2tyaXB0IG9kZXIgbmljaHQgU2tyaXB0Li4uIChMb2NvLCAyMS4gU2VwIDE5OTYsIDIwOjE0OjE2KToKCkJ1Z21lbGR1bmcgaW4gZGVyIEhhZmVuc3RyYXNzZSBpbiBTdm9sdmFlcjoKCm1pc3NpbmcgRGV0YWlscywgZGVja2UgYm9kZW4gd2FlbmRlCgpTb2xsIGljaCBkaWUgU3RyYXNzZSB1ZWJlcmRhY2hlbiwgb2RlciB3aWUgaXN0IGRhcyBtaXQgZGVyIERlY2tlIGdlbWVpbnQ/CgpWZXJ3dW5kZXJ0LAogICAgICAgICAgICAgIExvY28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdPVFRLQUlTRVIgISEhIChUZW5ubywgMjIuIFNlcCAxOTk2LCAwMDoxNzowMCk6CldBRUhMVCBNSUNIIC0gTUlDSCBBTExFSU4gIQpJQ0ggQklOIEdST0VTU0VSIEFMUyBCT0lORyAoZGFzIGlzdCBqYSBuaWNodCBzY2h3ZXIpCkdFTUVJTkVSIGFscyBPRVRUSSAoZGFzIGlzdCBzY2h3ZXIgISkKQkxPRURFUiBBTFMgR0FTVDEsMiwzLDQsNSwuLi4KCkFMU08gV0FFSExUIE1JQ0ggQUxTIEVVUkVOIEdPVFRLQUlTRVIgISEhClZPVEUgVEVOTk8gIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNrcmlwdCBvZGVyIG5pY2h0IFNrcmlwdC4uLiAoR3J1bWJhcnQsIDIzLiBTZXAgMTk5NiwgMTA6NTI6MjgpOgp+IyEgcm49TG9jbyBydD04NDMzMjk2NTYKfiMhIHRpZD04NDMzMjk2NTYKTGVnIGRvY2ggZWluZSBoaW4gOikpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEplZGVyIGhhdCBkYXMgUmVjaHQgKEFuYXRvbCwgMjMuIFNlcCAxOTk2LCAxNTo0MzoyOCk6Cn4jISBybj1BY3JpbW9uIHJ0PTg0MzQ4NTQ2OQp+IyEgdGlkPTg0MzQ3OTkyMApbVmVybGVndCB2b24gcG9saXplaS5iZXNjaHdlcmRlbiwgQW5hdG9sLCAyMy4gU2VwIDE5OTYsIDE1OjQzOjE5XToKCiJQYXN6d29ydCIKCkljaCBrYW5uIG5pY2h0IG1laHIuLi4KQW5hdG9sLCB2ZXJsZWd0IGVzIHNlbGJzdCBuYWNoIFNjaG1hcnJuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEplZGVyIGhhdCBkYXMgUmVjaHQgKENhdHdlYXpsZSwgMjMuIFNlcCAxOTk2LCAyMjoyODo0OCk6Cn4jISBybj1BbmF0b2wgcnQ9ODQzNDg2MjA4Cn4jISB0aWQ9ODQzNDc5OTIwCgpKYSB1bmQ/CgpXYXMgaXN0IGFuIGRlbSBQYXN6d29ydCBzbyBzY2hsaW1tPwoKSGFzdCBEdSBkYXMgYmVpc3plbmQgaW4gZGVtIGFuZGVyZW4gQXJ0aWtlbCBuaWNodCBnZXNlaGVuPyA6LSkKCllvdXJzIHRydWx5LAogICAgIENhdHdlYXpsZSAoZ3JpbnNlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2huaWVmLCBtaXN0bmV0eiwgdmVyZGFtbXRlcyAoTW9yZ290aCwgMjQuIFNlcCAxOTk2LCAwNzo0ODoyNCk6CnRyYWNlcm91dGUgdG8gdXdob21lLm1waS5odHdtLmRlICgxNDEuNTUuNTYuNTkpLCAzMCBob3BzIG1heCwgNDAgYnl0ZSBwYWNrZXRzCiAxICBjaC1ndy1ldGgxMi5IUlouVW5pLURvcnRtdW5kLkRFICgxMjkuMjE3LjIyMS4xKSAgMiBtcyAgMiBtcyAgMiBtcwogMiAgV2lOLWd3LWF0MC0xLkhSWi5VbmktRG9ydG11bmQuREUgKDEyOS4yMTcuMTI5LjgpICAyIG1zICAyIG1zICAyIG1zCiAzICBEb3J0bXVuZDQuREUuRVUubmV0ICgxMzkuNC4zMC4yKSAgNSBtcyAgNSBtcyAgNSBtcwogNCAgRG9ydG11bmQzLkRFLkVVLm5ldCAoMTM5LjQuMTAuNjcpICA2IG1zICA2IG1zICA2IG1zCiA1ICBDR04yLkNvbG9nbmUuREUuRVUubmV0ICgxMzkuNC40My4yMDYpICAxNSBtcyAgMTEgbXMgIDEyIG1zCiA2ICBTZXJpYWwxLTMuQ1IyLkNHTjEuQUxURVIuTkVUICgxMzcuMzkuMjEzLjEyOSkgIDE5IG1zICAxMyBtcyAgMzYgbXMKIDcgIDg1OC5TZXJpYWw0LTAuQ2lzY28yLldhc2hpbmd0b24uREMuTVMuVVUuTmV0ICgxMzcuMzkuMTAwLjE1NCkgIDE3MSBtcyAKMTUxIG1zICAxNTcgbXMKIDggIEZkZGkwLTAuU1IxLkRDQTEuQWx0ZXIuTmV0ICgxMzcuMzkuMzMuMTMzKSAgMTM1IG1zICAxMzcgbXMgIDEzNyBtcwogOSAgY29yZTMtaHNzaTItMC5XYXNoaW5ndG9uLm1jaS5uZXQgKDIwNi4xNTcuNzcuMjUpICAxNDAgbXMgIDE1NyBtcyAgMTUxIG1zCjEwICBib3JkZXIzLWZkZGktMC5XZXN0T3JhbmdlLm1jaS5uZXQgKDIwNC43MC42NC4xOSkgIDE2MyBtcyAgMTUyIG1zICAxNzUgbXMKMTEgIGJvcmRlcjMtZmRkaS0wLldlc3RPcmFuZ2UubWNpLm5ldCAoMjA0LjcwLjY0LjE5KSAgMTU4IG1zICAxNDYgbXMgIDE0NSBtcwoxMiAgYm9yZGVyMy1zZXJpYWwzLTEtZ3cuV2VzdE9yYW5nZS5tY2kubmV0ICgyMDQuNzAuNjcuNDYpICAzMDggbXMgIDI4MiBtcyAKMjIyIG1zCjEzICAqICogKgoxNCAgKiAqICoKdXN3Li4uLgoqKmhldWwqKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSmVkZXIgaGF0IGRhcyBSZWNodCAoRWxyaWMsIDI0LiBTZXAgMTk5NiwgMTY6MjU6MjkpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTg0MzUxMDUyOAp+IyEgdGlkPTg0MzQ3OTkyMApXaWVzem8sIENhdHdlYXN6bGU/IApTenRvZXJ0IGRpY2ggZGFzeiAiYmVpc3plbmQiPyBBYmVyIFNhcmthc3ptdXN6IGlzenQgZG9jaCBudW5tYWwgc3pvLgpCZXN6dGUgR3J1ZXN6ZSB2b24gYWxsZW4gCkVscmljc3oKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMjQuIFNlcCAxOTk2LCAxOToxNzo0NCk6CgoiS2VpbmVyIGhhdCBzZWluIFNjaGlja3NhbCBnZXdhZWhsdCwgZGFoZXIgdmVybGFuZ3QgZGFzIFNjaGlja3NhbCB2b24gdW5zLAppbW1lciBiZXJlaXQgenUgc2Vpbi4iIChBcmFiaXNjaCkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJ1YnJpazogTmV0dGUgVG9kZXNtZWxkdW5nZW4gKEdyaW1tYm9ybiwgMjQuIFNlcCAxOTk2LCAyMDoyNTowMyk6CgpbVG9kOkxhcnNdIFN1aXppZCBoYXQgZ2VyYWRlIFN1aXppZCB1bWdlYnJhY2h0LgoKTmEsIGRlciBwYXNzdGUgZG9jaCBtYWwuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluZSBPLWRlIChZZW5kaSwgMjQuIFNlcCAxOTk2LCAyMDozNjozMCk6CgoKRWluZSBPLWRlLCAKdm9yenVnc3dlaXNlIHZvbiBTZWVsZWZhbnQgdm9yenV0cmFnZW4KCkFjaCwgd2llIHdhZXJlIEZyYXVjaGVuIGZyb2gsCndhZXJlIEh1bmRjaGVuIG5pY2h0IGhvbW8sCnd1ZXJkZSBlciBuaWNodCBzaW5uZW5mcm9oLApvYiBpbSBQYXJrLCBvYiBpcmdlbmR3bywKYW5kcmUgUnVlZGVuIGluIGRlbiBQbwpmaWNrZW4gd29sbGVuIC0tIG9oIG9oIG9oLi4uCgpBY2gsIHdpZSB3YWVyZSBGcmF1Y2hlbiBmcm9oLAp3YWVyZSBIdW5kY2hlbiBoZXRlcm8sCmRvY2ggZGFzIGdhZWJlIGRhbm4gamEgUHJvLQpibGVtZSBtaXQgZGVyIExpYmlkbwp1bmQgYmVpIE5hY2hiYXJzIEh1ZW5kaW4gendvCktpbG8gSHVuZGVlbWJyeW8uCgooMy4gU3Ryb3BoZSB3aXJkIGF1cyBrdWVuc3RsZXJpc2NoZW4gR3J1ZW5kZW4gbm9jaCB2b3JlbnRoYWx0ZW4pCgoKQW5tOgpEaWVzZXIgVGV4dCBlbnRzdGFuZCBnZXN0ZXJuLCBhbHMgbWlyIGJlaW0gYXVmLWRlbi1XZWNrZXItZ2VoYXVlbi1oYWJlbmRlbgpSdW1kb2VzZW4gdXJwbG9ldHpsaWNoIGdsYXNrbGFyIGRlciBTYXR6IGltIEtvcGYgc3RhbmQKIldhZXJlIEh1bmRjaGVuIGhldGVybywgYWNoLCB3aWUgd2FlcmUgSGVycmNoZW4gZnJvaCIuCgpOYWNoZGVtIGF1Y2ggZWluZ2VoZW5kZSB0aWVmZW5wc3ljaG9sb2dpc2NoZSBTZWxic3RhbmFseXNlIG1pciBuaWNodCBkZW4KQmV3ZWdncnVuZCBmdWVyIGRhcyB1ZWJlcnJhc2NoZW5kZSBBdWZ0YXVjaGVuIGRpZXNlciBlcnN0YXVubGljaGVuCkF1c3NhZ2UgbGllZmVybiBrb25udGUsIGJlc2NobG9zcyBpY2gsIHdhY2ggZ2VudWcgenUgc2VpbiwgdW0gZHVyY2ggZWluZQpyaXR1ZWxsZSBpbi1HZWRpY2h0Zm9ybS1GYXNzdW5nIG1laW4gVW50ZXJiZXd1c3N0c2VpbiB6dSBiZXNhZW5mdGlnZW4KdW5kIG1pY2ggdm9uIGRlciBGcmFnZSBhYnp1bGVua2VuCiJXaWVzbyB6dW0gSGVua2VyIGludGVyZXNzaWVyc3QgRHUgRGljaCBmdWVyIGRpZSBzZXh1ZWxsZSBBdXNyaWNodHVuZwogdm9uIEhVTkRFTj8/PyBEdSBrZW5uc3QgdWViZXJoYXVwdCBrZWluZW4gS29ldGVyISBEdSB3ZWlzc3QgamEgbmljaHRtYWwsIAogb2IgZXMgdWViZXJoYXVwdCBzbyBldHdhcyB3aWUga2FuaW5lIEhvbW9zZXh1YWxpdGFldCBnaWJ0ISEhCiBZZW5kaSwgZ2xhdWJzdCBEdSBuaWNodCwgRHUgc29sbHRlc3QgRGljaCBtYWwgdW50ZXJzdWNoZW4gbGFzc2VuPyIuCgpJbnRlcmVzc2FudCBpc3QsIGRhc3MgenUgQmVnaW5uIGRlcyBTY2hhZmZlbnNwcm96ZXNzZXMgZGFzIEZyYXVjaGVuIGVpbiAKSGVycmNoZW4gd2FyLCB1bmQgbnVyIGVpbmUgZGVyIHVudmVyb2VmZmVudGxpY2h0ZW4gZHJpdHRlbiBTdHJvcGhlIGRlcgpWZXJzemFobCghKSB3ZWdlbiBhbmdlaGFlbmd0ZSBsZXR6dGUgWmVpbGUgZW50c2NoaWVkIGRhcyBHZXNjaGxlY2h0IGRlcwpIdW5kZWhhbHRlcnMsIHdvYmVpLCBuZWJlbmJlaSwgZGllIGdlc2FtdGUgQXRtb3NwaGFlcmUgZWluZW4gZGV1dGxpY2hlbgpVbXNjaHd1bmcgenVtIFpvb3BoaWxlbiBuYWhtLCB3ZWcgdm9uIGRlciB1cnNwcnVlbmdsaWNoIHZvcmhlcnJzY2hlbmRlbgpndXRidWVyZ2VybGljaGVuIFNjaGFtIHVlYmVyIGRpZSBQYWFydW5nc3ByYWVmZXJlbnplbiBkZXMgSGF1c3RpZXJzLgoKSWNoIHdlcmRlIG5hY2ggZWluZ2VoZW5kZW0gUXVlbGxlbnN0dWRpdW0gZGllIGhpZXIgdm9ybGFldWZpZyBhdXNnZXNwYXJ0ZQpTdHJvcGhlIG5hY2hyZWljaGVuLCBzb2JhbGQgc2llIG1laW5lbiBBbnNwcnVlY2hlbiBnZW51ZWd0LgpFdHdhaWdlIEtvbW1lbnRhcmUgenUgZGllc2VtICpyYWV1c3BlciogRXJndXNzIGJpdHRlIGluIGRpZXNlIFJ1YnJpaywKdW5kIG5pY2h0IGluICJldGlrZXR0ZSIsICJwb2xpemVpLmJlc2Nod2VyZGVuIiBvZGVyICJwb3N0bWFzdGVyQC4uLiIuCkRhbmtlLgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWluZSBPLWRlIChZZW5kaSwgMjQuIFNlcCAxOTk2LCAyMDo0MTowOCk6Cn4jISBybj1ZZW5kaSBydD04NDM1OTAxOTAKfiMhIHRpZD04NDM1OTAxOTAKCkhvcHBsYSwgaWNoIGhhYmUgZGllIFdpZG11bmcgdmVyZ2Vzc2VuOgoKRnVlciBSYW50YW5wbGFuLCB3ZW4gc29uc3Q/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2FzdDEgZGVyIEF0aGVpc3QuLi4/IChBbmF0b2wsIDI0LiBTZXAgMTk5NiwgMjI6MDc6MTIpOgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gL2Jpbi93ZWcKW0FsbGdlbWVpbjpHYXN0MV0gbnUvbWFjaC9zY2hvbgpbPE1hc3RlUj46R3JpbW1ib3JuIHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ0p1cmEnLCB3b3JhdWYgZGllc2Ugc2ljaAogICAgICAgICAgaW4gZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCkdyaW1tYm9ybiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCipncm1wZiogOikKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa29tcGxpemllcnRlIGViZW5lbiAoRmV5YXJpYSwgMjUuIFNlcCAxOTk2LCAyMzowMjo0Mik6Ci4uLi4uLi4uLi4uLiAqWyBdICAgIEFuYXRvbCAgICAoICA0KSBVbSBhdWYgZGVuIFB1bmt0IHp1IGtvbW1lbi4uLgouLi4uLi4uLi4uLi4gKltwXSAgICBGZXlhcmlhICAgKCAgMykgTnVyIGVpbiBQdW5rdAo6Li4uLi4uLi4uLi4gKlsgXSAgICBBbmF0b2wgICAgKCAgNCkgRG9wcGVsdCBoYWVsdCBiZXNzZXIuLi4uCjxNYXN0ZVI+Li4uLiAqW21dICAgPE1hc3RlUj4gICAoIDIyKSBaZW50cmFsZSBJbmZvcm1hdGlvbmVuIHp1IGRlbiBFYmVuZW4KQWJlbnRldWVyLi4uICpbYl0gICAgPFF1ZXN0PiAgICggNDYpIEZyYWdlbiBkaWUgQWJlbnRldWVyIGJldHJlZmZlbgoKZWJlbmUgcDE9Li4uCidwMScgd2lyZCBqZXR6dCBhbHMgQWJrdWVyenVuZyBmdWVyICdUb2QnIGFuZXJrYW5udC4KClVuZCBkYSBzb2xsIHNpY2ggZWluZXIgYXVza2VubmVuID8/Pz8/PwoKRmV5YXJpYSA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlcmFkZSBpbiBkZXIgV3Vlc3RlOiAoUmFmZmksIDI2LiBTZXAgMTk5NiwgMTY6NTY6NDMpOgoKPiBEdSBoYXN0IGpldHp0IDE2NCBMZWJlbnNwdW5rdGUgdW5kIDUwIE1hZ2llcHVua3RlLiAgICAgICAgICAgICAgICAgICAgIApEdSBzY2h1ZXR0ZWxzdCBEaWNoLiBGcmllcnN0IER1IGV0d2E/CkRpZSBTb25uZSBzY2hlaW50IHN0cmFobGVuZCBoZWlzcyB2b20gSGltbWVsLiBEYSBEdSBkZXJhcnRpZ2UgICAgICAgICAgICAKVGVtcGVyYXR1cmVuIHVlYmVyaGF1cHQgbmljaHQgZ2V3b2hudCBiaXN0LCB3aXJkIERpciB2ZXJkYW1tdCAgICAgICAgICAgIApoZWlzcy4gRGVpbmUgSGF1dCBmdWVobHQgc2ljaCBzZWx0c2FtIHdhcm0gYW4uICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpIbW0gU2NodWV0dGVscnVlc3R1bmcgdW5kIFd1ZXN0ZSBpc3QgaXJnZW5kd2llIHdpZWRlcnNwcnVlY2hsaWNoCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKY3Jhc2ggKEdyaW1tYm9ybiwgMjYuIFNlcCAxOTk2LCAxODoyNDo0OCk6CgpbTWFnaWVyOlJvY2h1c10gaWNoIGxhc3NlIGdlcmFkZSBlaW5lIHN0YXRpc3RpayBlcnN0ZWxsZW4sIHdlbGNoZSBvYmpla3RlCltNYWdpZXI6Um9jaHVzXSB3aWV2aWVsIHplaXQgdmVyYnJhdGVuIC0gbWFsIHNlaGVuIG9iIGRhcyB3ZWl0ZXJoaWxmdApbPE1hc3RlUj46U2Nob2tvXSBBbHNvIGJlaSBtaXIgc3RlaHQgaW0gTW9tIHByYWt0aXNjaCBmYXN0IGFsbGVzIDooKAolIENvbm5lY3Rpb24gdG8gTW9yZ2VuR3JhdWVuIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCgoKRGFzIHdhciAobWl0IGthdW0gS3Vlcnp1bmdlbikgZGFzLCB3YXMgbWFuIHZvciBkZW0gY3Jhc2ggbm9jaCBzZWhlbiBrb25udGUuLi4KOy0pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJpZXJzY2h1ZXJ6ZSBhdXRvbG9hZD8gSmEgb2RlciBkb2NoPyAoSGFkcmEsIDI3LiBTZXAgMTk5NiwgMTg6MDM6MTQpOgp+IyEgcm49WWFudHJvIHJ0PTg0MzYzMzI0NQp+IyEgdGlkPTg0MzE1MTUzMgpbVmVybGVndCB2b24gZ2lsZGVuLmJpZXJzY2h1ZXR0bGVyLCBIYWRyYSwgMjcuIFNlcCAxOTk2LCAxODowMjo1Nl06CmVpbiByZXBmaWxlIGlzdCBlaW4gdGlwcGZlaGxlciwgZGVubiBlcyBoZWlzc3QgcmFwLWZpbGUuCmRhcmluIHNpbmQgZGllIG5vdGVuKD8pIGFiZ2VsZWd0LCBkaWUgbWFuIHNvIGZ1ZXJzIG11c2l6aWVyZW4gYnJhdWNodCAoYWxsZQpiZWlkZSkKCmhhZHJhIC0ga2F1bSBkYSwgc2Nob24gd2llZGVyIG11ZWxsIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQmllcnNjaHVlcnplIGF1dG9sb2FkPyBKYSBvZGVyIGRvY2g/IChHcmltbWJvcm4sIDI3LiBTZXAgMTk5NiwgMTg6MDg6NDQpOgp+IyEgcm49SGFkcmEgcnQ9ODQzODQwMTk0Cn4jISB0aWQ9ODQzMTUxNTMyCgpad2VpIE5vdGVuPyBGdWVyIFJhcD8gQmlzdCBEdSBzaWNoZXI/CgpBY2ggbmVlLCBpY2ggdmVyd2VjaHNlbCBkYXMgamV0enQgYmVzdGltbXQgd2llZGVyIG1pdCBUZWNobm8uLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc3RhYnNjaGFkZW4gZWlzIChYZWVyYW4sIDI4LiBTZXAgMTk5NiwgMTI6MjY6MzkpOgpHZWtvbm50IGdlemllbHQhCgpPawo+ICAgRHUgbXVybWVsc3QgZGllIHZvcmdlc2NocmllYmVuZW4gV29ydGUgZnVlciBkZW4gR2lmdHBmZWlsLgogIEF1cyBEZWluZW4gSGFuZCBzY2hpZXNzdCBlaW4gZ2lmdGdydWVuZXIgUGZlaWwgYXVmIGVpbmVuIFNjaG1ldHRlcmxpbmcuCiAgVSB0cmlmZnN0IGRlbiBTY2htZXR0ZXJsaW5nIG1pdCBlaW5lbSBHaWZ0cGZlaWwgaW5zIEJlaW4uCkRlciBTY2htZXR0ZXJsaW5nIGZhZWxsdCB0b3QgenUgQm9kZW4uCgpFaW5lbiBTY2htZXR0ZXJsaW5nIGFtIEJlaW4genUgdHJlZmZlbiBpc3QgZWNodCBuZSBMZWlzdHVuZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzdGFic2NoYWRlbiBlaXMgKEJhYnMsIDI5LiBTZXAgMTk5NiwgMTI6MjY6NDApOgp+IyEgcm49WGVlcmFuIHJ0PTg0MzkwNjM5OQp+IyEgdGlkPTg0MzkwNjM5OQpQYWguLi4gZWluZW4gU2NobWV0dGVybGluZyBhbnMgQmVpbiB0cmVmZmVuLi4uCkVpbmVtIFNjaG1ldHRlcmxpbmcgYW5zIEJlaW4gcGlua2VsbiBzb2xsdGVzdGUgbWFsIHZlcnN1Y2hlbiEKREFTIHdhZXIgZG9jaCBtYWwgbmUgZWNodGUgSEVyYXVzZm9yZGVydW5nIGZ1ZXIgRGljaCEKRGVyIEFzdGhtYXBpbnNjaGVyIHZvbiB1bnNlcmVyIE5hY2hiYXJpbiB2ZXJzdWNodHMgamVkZW5mYWxscyBzY2hvbgpzZWl0IEphaHJlbiBvaG5lIEVyZm9sZy4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHN0YWJzY2hhZGVuIGVpcyAoUmFudGFucGxhbiwgMjkuIFNlcCAxOTk2LCAxODo1NjoyOCk6Cn4jISBybj1CYWJzIHJ0PTg0Mzk5MjgwMAp+IyEgdGlkPTg0MzkwNjM5OQpLZWluIFByb2JsZW0sIG1hbiByZWljaGUgbWlyIGVpbmVuIFNjaG1ldHRlcmxpbmcuLi47LSkpCgpSKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmFtZW5zdGFnIChFbmd5d3VjaywgMjkuIFNlcCAxOTk2LCAxOTowNzowNCk6CltBbGxnZW1laW46Q3JlYXRpdmVdIGF1c3NlcmRlbSBoYWIgaWNoIGhldXRlIG5hbWVuc3RhZy4KW0FsbGdlbWVpbjpJc25vZ29vZF0gSGV1dGUgaXN0IENyZWF0aXZlPwpbQWxsZ2VtZWluOkJyb253eW5dIGRlciBoZWlsaWdlIENyZWF0aXZlPwotYSBFcyBnaWJ0IGVpbmVuIGhlaWxpZ2VuIENyZWF0aXZlPz8/CltBbGxnZW1laW46RW5neXd1Y2tdIEVzIGdpYnQgZWluZW4gaGVpbGlnZW4gQ3JlYXRpdmU/Pz8KPiBbQWxsZ2VtZWluOlJhbnRhbnBsYW5dIEVjaHQgbGV1dGUgZGllIENyZWF0aXZlIGhlaXNzZW4gaGFiZW4gTmFtZW5zdGFnID8/Pz8/Ci1hOnBydXN0ZXQgbG9zLgpbQWxsZ2VtZWluOkVuZ3l3dWNrIHBydXN0ZXQgbG9zLl0KPiBbQWxsZ2VtZWluOlJhbnRhbnBsYW5dIEFyZ2wgbGV0enRlciA7LSkKW0FsbGdlbWVpbjpJc25vZ29vZCBncmluc3RdCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hhZWZjaGVuemFlaGxlbiAoU2lsdmFuYSwgMzAuIFNlcCAxOTk2LCAxMToyNjo1NSk6CkViZW4gaW4gYWx0ZW0gQ29kZSB2b24gbWlyIGVudGRlY2t0OgoKICBzaXplb2YoZmlsdGVyX29iamVjdHMoCiAgICAgICAgICAgZmlsdGVyX2FycmF5KGFsbF9pbnZlbnRvcnkoVE8pLCMnbGl2aW5nKQogICAgICAgICAgICAgImlkIiwic2NoYWVmY2hlbiIpKQoKV2FzIGRhcyBzb2xsPyBTaWVoZSBUaXRlbC4gOikKCiAgU2lsdmFuYSAoc2NobGFlZnQgZ2xlaWNoIGVpbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvbm5lbmJyYW5kIChFbmd5d3VjaywgMzAuIFNlcCAxOTk2LCAxMjo1Njo1OCk6CltBbGxnZW1laW46U3lyXSBoZWhlLi4gZGVyIHNvbm5lbmJyYW5kIGhhdCBuZW4gYnVnLi4uIDopCltBbGxnZW1laW46R3VsRHVrYXRdIGd1Z3VnCltBbGxnZW1laW46U3lyXSB3ZXIgaGF0biBkZW4gZ2Vwcm9nZ3QgPwpbQWxsZ2VtZWluOlRhc2hhXSBEYXMga2xpbmd0IGZhdGFsIG5hY2ggZmFtb3VzIGxhc3Qgd29yZHMKW0FsbGdlbWVpbjpTeXJdIHdpZXNvID8KW0FsbGdlbWVpbjpBc21vZGlzXSBodWh1CltBbGxnZW1laW46S2V5XSBIaSBhc21vIQpbVG9kOkxhcnNdIFNvbm5lbmJyYW5kIGhhdCBnZXJhZGUgU3lyIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBTC1UcmVmZmVuIC0gU3BydWNoIGRlcyBUYWdlcyAoQW5ha2luKSAoQW5hdG9sLCAzMC4gU2VwIDE5OTYsIDEzOjI0OjExKToKCiAgIkljaCBrYXVmZSBlaW4gc3ouIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgVGl0ZWwgKEVuZ3l3dWNrLCAzMC4gU2VwIDE5OTYsIDE0OjQzOjA0KToKIHticmlnZW5zPiBFaW4gS2V6Ym9hcmQvVHJlaWJlciBpc3QgdjtsbGlnIFtiZXJmbFtzc2lnIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKnN0YXVuKiAoVGFzaGEsIDMwLiBTZXAgMTk5NiwgMjI6MzM6NTgpOgplYmVuOgoKUGxvZXR6bGljaCBob2Vyc3QgRHUgZWluIGxhdXRlcyBTY2huYXJjaGVuLiBMZXZ0aGFuIGhhdCBkZW0gU2NocmF0CnNlaW4gbGFuZ2Vyc2VobnRlcyBTY2hsYWZtaXR0ZWwgZ2VicmFjaHQuCll1cmlrbyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKClNvIHNjaHJhdGlnIHNpZWh0IHNpZSBkb2NoIGVpZ2VudGxpY2ggZ2FyIG5pY2h0IGF1cy4uLgoKVGFzaGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNlbHRzYW0gKExlY2h1Y2ssICAxLiBPa3QgMTk5NiwgMDg6NTg6MjUpOgpHcmFkIHBhc3NpZXJ0LCB1bmdlc2Nobml0dGVuOgoKZnJhZyBsZW5nbGV0IG5hY2ggbGFib3IKTGVuZ2xldCBEdWZyZXNub3kgc2FndDogRnJhZyBkZW4gUGZvZXJ0bmVyLgo+IFtBbGxnZW1laW46WWFudHJvXSBiaXMgc3BhZXRlci4uLiBMYWJvciBydWZ0IDotKAoKdHN0cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAgMS4gT2t0IDE5OTYsIDE5OjM0OjUwKToKCiJJY2ggd2FyIGFtIHN0YWVya3N0ZW4gYWxzIGljaCB1ZWJlciBtZWluZSBTY2h3YWVjaGUgZ2VsYWNodCBoYWJlLiIKKERpa3Rvbml1cykKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyZWNoaGVpdCBzaWVndC4uLiAoQW5hdG9sLCAgMi4gT2t0IDE5OTYsIDAwOjM4OjQzKToKCj4gZnJhZ2Ugcm9iaW4gbmFjaCBnZWxkClJvYmluIHNhZ3Q6IEJldHRlbG4gZ2lsdCBuaWNodCEgICAuLi4gd2VubiBkYXMgamVkZXIgbWFjaGVuIHd1ZXJkZS4KPiBSb2JpbiBzYWd0OiBIYXN0ZSBtYWwgJ25lIE1hcms/CgpFciBudSB3aWVkZXIuLi4uCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm51ciBmdWVyIFphcmRveiAoWWFudHJvLCAgMi4gT2t0IDE5OTYsIDE2OjUyOjExKToKCkRlciBEYWVtb24gbWVpbnRlLCBkYXNzIGljaCBrZWluZSBBcnRpa2VsIGxvZXNjaGVuIHNvbGwgdW5kIGVyc3QgcmVjaHQgbmljaHQKbWVpbmUgZWlnZW5lbi4uLi4gYWxzbyBub2NobWFsIHRlc3QgOi0pCgogICAgICAgICAgIFlhbnRybywgaG9lciBhdWNoIGFmIFN0aW1tZW4gYXVzIGRlbSBIaW50ZXJncnVuZCA6LSkKCnV1dXV1dXV1dW5ubmQgbmljaHQgdmVyZ2Vzc2VuOiAKClJpZXNlbk1lZ2FTdXBlckdlaWxlclRyYWRpdGlvbnNTdGFtbXRpc2NoIGluIEtvZWxuIGFtIAoKICAgICAgICAgICAgICAgICAgICAzLiBKYW51YXIgMTk5NyAhISEhCgpBbm1lbGRlbiBiZWkgbWlyIHBlciBNYWlsIGFuIG1pY2ghIFNpZWhlIGRhenUgYXVjaCBtZWluZSBlaWdlbnMgZ2VzY2hhZmZlbmUKUHJvbGxzZWl0ZToKCiAgICAgICBodHRwOi8vd3d3LnVuaS1rb2Vsbi5kZS9+YXJpMDMvZ2VsYWdlLmh0bWwKCkRlbm4gbml4IGlzdCBzY2hvZW5lciBhbHMgZmVpZXJuIGluIGJlc3RlciBHZXNlbGxzY2hhZnQgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BydWNoIGRlciBXb2NoZSAoUmFmZmksICAyLiBPa3QgMTk5NiwgMTc6MTg6MDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg0NDE5MTI5MAp+IyEgdGlkPTg0NDE5MTI5MAoKVW5kIHdlciB3YXIgZGFzIGJpdHRlPyAoRGlrdG9uaXVzKS4KCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2NoYWVmY2hlbnphZWhsZW4gKFllbmRpLCAgMi4gT2t0IDE5OTYsIDIxOjA0OjA3KToKfiMhIHJuPVNpbHZhbmEgcnQ9ODQ0MDc1NjE1Cn4jISB0aWQ9ODQ0MDc1NjE1CgpEYSBoYXQgZG9jaCBSb2NodXMgbWFsIHdhcyBnZXBvc3RldDoKCndoaWxlKCFhc2xlZXApIHsrK3NoZWVwfQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFydGlrdWxhdGlvbiBtaXQgdm9sbGVtIE11bmQgKEhhcmRpbCwgIDQuIE9rdCAxOTk2LCAxMDowNDowNyk6CltBbGxnZW1laW46SGFyZGlsXSAiZnJhZ2UgUHVtYSBuYWNoIFp3aWViZWxrdWNoZW4sIGZyYWdlIFB1bWEgbmFjaCBNYXNzYWtlciIKPiBFaW4gbGF1dGVyIEtuYWxsIGhhbGx0IHZvbSBHZWJpcmdlIGhlcnVlYmVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKamFqYSAoSGFyZGlsLCAgNC4gT2t0IDE5OTYsIDEwOjI5OjM4KToKClBhcmFjZWxzdXMgc2FndDogSG9pCj4gUGFyYWNlbHN1cyBzYWd0OiBJY2ggZnVlcmNodGUsIG1laW4gRHJhY2hlIGhhdCBEZWluZW4gUGFwYWdlaSBnZWZyZXNzZW4KdW50IG51Yml1cwpEYXMgaXN0IE51Yml1cy4KRHUgc2llaHN0IGVpbmVuIHJpZXNpZ2VuIHNjaHdhcnplbiBEcmFjaGVuLiBTb2xsdGVzdCBkdSBqZSBkYXJhbiBnZWdsYXVidApoYWJlbiwgZGFzcyBkaWUgc2Nod2FyemVuIERyYWNoZW4sIGRpZSBhdWNoIEtvZW5pZ3NkcmFjaGVuIGdlbmFubnQgd2VyZGVuLAphdXNnZXN0b3JiZW4gc2luZCwgc28gaGFzdCBkdSBoaWVyIGRlbiBsZWJlbmRlbiBCZXdlaXMgdm9yIGRpciwgZGFzcyBkZW0gbmljaHQKc28gaXN0LgpOdWJpdXMgaXN0IHNjaG9uIGVpbmUgYmVlaW5kcnVja2VuZGUgRXJzY2hlaW51bmcuIEVyIGlzdCB3ZWl0IHVlYmVyIHNlY2hzCk1ldGVyIGdyb3NzLiBTZWluZSByaWVzaWdlbiBTY2h3aW5nZW4gaGF0IGVyIGF1ZiBkZW0gUnVlY2tlbiB6dXNhbW1lbmdla2xhcHB0LgpEZW5ub2NoIGxhZXNzdCBzZWluZSBHZWdlbndhcnQgZGllIFNvbm5lIHZlcmJsYXNzZW4uIFVuZCB3ZW5uIGVyIHNlaW5lbiBLb3BmCm5hY2ggdW50ZW4gc3RyZWNrdCwga2FubiBtYW4gc29nYXIgc2VpbmUgc3RyYWhsZW5kZW4gYmxhdWVuIEF1Z2VuIHNlaGVuLgpFaW5lIGlubmVyZSBTdGltbWUgc2FndCBkaXIsIGRhc3MgZGljaCBlaW4gS2FtcGYgbWl0IGRpZXNlbSBEcmFjaGVuIG1laHIgYWxzCm51ciBkYXMgTGViZW4ga29zdGVuIGtvZW5udGUuCkVyIGlzdCBhYnNvbHV0IGZpdC4KaG9sZSB0aWVyCkVza2lsc2p1bmEgZmxhdHRlcnQgaGVyZWluLgo+IEVza2lsc2p1bmEga3JhZWNoenQ6IC4uLiBrcnJyb29vYWFhIC4uLiBIYWxsbyBOdWJpdXMgdW5kIGVpbiBPcmsgLi4uCgo+IE51Yml1cyBrbmFiYmVydCBhbiBFc2tpbHNqdW5hcyBPaHIuCgouLi4gamFqYSwgc28gZmFlbmd0IGRhcyB3b2hsIGFuLCBkYXMgQXVmZnJlc3Nlbi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3ZXIgaGF0IGFuZ3N0ID8/IChNb3Jnb3RoLCAgNC4gT2t0IDE5OTYsIDEzOjE2OjAxKToKVGFyYSBydWZ0OiBOQSBXQVJURSBEVSBTQ0hFSVNTIFNDSFdFSU5FSFVORCAhISEhISEhISEKR29yYWsgcnVmdDogaGlsYmVydApEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWFhYWFhYWggamEhIChDYXJhZGhyYXMsICA0LiBPa3QgMTk5NiwgMTY6NDY6MDEpOgo+IGZ3ZXIgaXJyCkRvbSBCZW5kZWlnaWQgLCBCZXdhaHJlciB2b24gTmVza2F5YS4gLSBLb2VsbiAtIApEdXN0eS4gLSBPZXN0ZXJyZWljaCAtIApTY2hpbGRrcm9ldGUgTmVzYWphIGhhdCBlaW5lbiBEcmFjaGVuIGtlbm5lbmdlbGVybnQgKmtpY2hlciouIC0gR2llc3NlbiAtIApXb29keSA/IEthbm4gbWFuIGRhcyBlc3NlbiA/LiAtIE9lc3RlcnJlaWNoIC0gCgogU2Nob2VuLCB3ZW5uIG1hbiBzaWNoIHZlcnRpcHB0LiBBYmVyIGtvZW5udCcgZG9jaCB0cm90emRlbQogc3RpbW1lbiwgb2Rlcj8gOi0pCgogICAgICAgIFJvdGhvcm4gQ2FyYWRocmFzIGtpY2hlcnQgaW4gc2ljaCByZWluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXJ0aWt1bGF0aW9uIG1pdCB2b2xsZW0gTXVuZCAoTXVwZmVsLCAgNC4gT2t0IDE5OTYsIDE5OjM3OjAzKToKfiMhIHJuPUhhcmRpbCBydD04NDQ0MTYyNDcKfiMhIHRpZD04NDQ0MTYyNDcKRHUgaGFldHRlc3QgbmFjaCAnbGVnZW5kYWVyZW0gWndpZWJlbGt1Y2hlbicgZnJhZ2VuIHNvbGxlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFhYWFhYWFoIGphISAoV29vZHksICA1LiBPa3QgMTk5NiwgMDM6MTQ6NTEpOgp+IyEgcm49Q2FyYWRocmFzIHJ0PTg0NDQ0MDM2MQp+IyEgdGlkPTg0NDQ0MDM2MQpVaSEgSWNoIGhhYiBkZW4gQmVmZWhsIGpldHp0IGF1Y2ggYXVzcHJvYmllcnQsIGtvbW1zdGUgTklJSUlJSUlJRQpkcmF1Ziwgd2FzIGRhIGFscyBBbnR3b3J0IHp1cnVlY2tnZWtvbW1lbiBpc3QgOi0pKSkKCmZ3ZXItaXJyLWJlcmd3dXNjaGVsbmQsCndvb2R5Li0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBTWW5UYVgtTkVSVkVSRUkgKFdvb2R5LCAgNS4gT2t0IDE5OTYsIDAzOjM1OjAxKToKfiMhIHJuPUhhZHJhIHJ0PTg0NDQ2OTA2Ngp+IyEgdGlkPTg0MzI4MDQxOQpTaWNoZXJsaWNoIGRpZSBNZWllcnMsIG5hZW1saWNoIGF1ZiBkZW4gS3JhbmljaGVuIGZsaWVnZW5kLiA6LSkKCnNjaG1hcnJuZW5kLAp3b29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hpem9waHJlbmllIHVuZCBzby4uLi4gKEZ5dCwgIDUuIE9rdCAxOTk2LCAxMjoxNzowMyk6CkR1IHN0ZWhzdCBhdWYgZGVyIGdyb3NzZW4gVHJpYnVlbmUgZGVyIEthbXBmYXJlbmEuIFZvbiBoaWVyIGF1cyBoYXN0IER1CmRlbiBiZXN0ZW4gQmxpY2sgYXVmIGRpZSBBcmVuYS4gUmVjaHRzIHVuZCBsaW5rcyB2b24gRGlyIHN0ZWhlbiB2aWVsZSBhbmRlcmUKaW50ZXJlc3NpZXJ0ZSBadXNjaGF1ZXIuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB1bnRlbi4KRGllIExlaWNoZSBXaWxseSBXdWVobGJlY2tzLgpXaWxseSBXdWVobGJlY2sgZGVyIGxhZWNoZXJsaWNoZSBHbGFkaWF0b3IuCldpbGx5IFd1ZWhsYmVjayBkZXIgbGFlY2hlcmxpY2hlIEdsYWRpYXRvci4KV2lsbHkgV3VlaGxiZWNrIGRlciBsYWVjaGVybGljaGUgR2xhZGlhdG9yLgpXaWxseSBXdWVobGJlY2sgZGVyIGxhZWNoZXJsaWNoZSBHbGFkaWF0b3IuCldpbGx5IFd1ZWhsYmVjayBkZXIgbGFlY2hlcmxpY2hlIEdsYWRpYXRvci4KV2lsbHkgV3VlaGxiZWNrIGRlciBsYWVjaGVybGljaGUgR2xhZGlhdG9yLgpXaWxseSBXdWVobGJlY2sgZGVyIGxhZWNoZXJsaWNoZSBHbGFkaWF0b3IuCldpbGx5IFd1ZWhsYmVjayBkZXIgbGFlY2hlcmxpY2hlIEdsYWRpYXRvci4KV2lsbHkgV3VlaGxiZWNrIGRlciBsYWVjaGVybGljaGUgR2xhZGlhdG9yLgpXaWxseSBXdWVobGJlY2sgZGVyIGxhZWNoZXJsaWNoZSBHbGFkaWF0b3IuCldpbGx5IFd1ZWhsYmVjayBkZXIgbGFlY2hlcmxpY2hlIEdsYWRpYXRvci4KV2lsbHkgV3VlaGxiZWNrIGRlciBsYWVjaGVybGljaGUgR2xhZGlhdG9yLgpFaW4gTWFubiBtaXQgZWluZW0gQmF1Y2hsYWRlbi4KQXVzc2VyaGFsYiBzaWVoc3QgRHU6CkRpZSBncm9zc2UgS2FtcGZhcmVuYS4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRlbi4KCkZ5dCwgc2ljaCB3dW5kZXJuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVuZCBrdXJ6IGRhbmFjaCAoRnl0LCAgNS4gT2t0IDE5OTYsIDEyOjE4OjMxKToKRGllIExlaWNoZSBXaWxseSBXdWVobGJlY2tzLiAoMTApCkh5ZHJhc2NobGFlY2h0ZXIgTWFoYXRtYSBkZXIgT2JlcmdsYWRpYXRvci4KRGllIGJlcmVpdHMgemllbWxpY2ggc3RpbmtlbmRlIExlaWNoZSBXaWxseSBXdWVobGJlY2tzLiAoMikKRGllIHZlcmZhdWx0ZW4gRWluemVsdGVpbGUgV2lsbHkgV3VlaGxiZWNrcy4KCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB1bmQga3VyeiBkYW5hY2ggKER1cmlhbiwgIDUuIE9rdCAxOTk2LCAxNzozNjo1MCk6Cn4jISBybj1GeXQgcnQ9ODQ0NTEwNzExCn4jISB0aWQ9ODQ0NTEwNzExCkt1cnprb21tZW50YXI6CgoqYXJnbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1pY3JvcyBBYmdhbmcuLi4gKE1pZXplLCAgNy4gT2t0IDE5OTYsIDE1OjIzOjU4KToKCmViZW4gcGFzc2llcnQuLi4KCltUb2Q6TGFyc10gRWluIFRyb2xsIGhhdCBnZXJhZGUgTWljcm8gdW1nZWJyYWNodC4KCkVpbiBCZWlmYWxsc3N0dXJtIGJyYW5kZXQgaW0gRGlhbW9uZHBhcmsgYXVmLiBXYXMgZGEgd29obCB3aWVkZXIgbG9zIGlzdD8KCk1pZXplLCBncmluc3QgaW1tZXJub2NoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbnRlcmhlbHAgKEF6enVybywgIDcuIE9rdCAxOTk2LCAxNjo1NTozMSk6ClF1aXRlc3MgcnVmdDogV2VsY2hlciBiZWZyZXVuZGV0ZSBNYWdpZXIgcmVzZXRldCBtYWwgZWJlbiBkZW4gTGFkZW4gaW4KV2lsaGVsbXNidXJnPz8gOykKW0QtY29kZTpDYmFvdGhAQXZhbG9uXSBXZWxjaGUgTXVkbGliPwoKR3Jlbnp1ZWJlcnNjaHJlaXRlbmRlIEZyZXVuZHNjaGFmdGVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIG9kZXIgZXJmb2xncmVpY2hlciBQSyA/IChBc21vZGlzLCAgNy4gT2t0IDE5OTYsIDIwOjM3OjQ3KToKCltBYmVudGV1ZXI6T3d5bl0gd2Vpc3MgZWluZXIgd2FzIGVzIG1pdCBkaWVzZXIgc2VsdHNtZW4gd2FuZCBpbiB6d2Fja2xtYW5ucwpbQWJlbnRldWVyOk93eW5dIHNjaGxvc3N0dXJtIGdhbnogb2JlbiBhdWYgc2ljaCBoYXQ/IDwyMDoyNjo0ND4KCltBYmVudGV1ZXI6QXNtb2Rpc10gYmVydWVociBzaWUgZG9jaG1hbCA8MjA6Mjc6MDQ+CltBYmVudGV1ZXI6SmVob3ZhXSBnZWggZWluZmFjaCBkdXJjaCAuLi4gPDIwOjI3OjEyPgoKW1RvZDpMYXJzXSBad2Fja2VsbWFubiBoYXQgZ2VyYWRlIE93eW4gdW1nZWJyYWNodC4gPDIwOjMxOjM2PgoKW0JlaWxlaWQ6U2tpcHBlcl0gQmVpbGVpZCA6KCggPDIwOjMxOjM4PgpbQmVpbGVpZDpBc21vZGlzXSBmbHcgPDIwOjMxOjQ1PgpbQmVpbGVpZDpMZXZdIEhtbS4uLi4gPDIwOjMxOjUzPgpbQmVpbGVpZDpNb3JlbGxhXSBvY2guLi4gIDooKCggPDIwOjMyOjAzPgpbQmVpbGVpZDpBc21vZGlzXSBoYXQgYWJlciBsYW5nZSBnZWRhdWVydCwgYmlzIHNpZSBzaWNoIGdldHJhdXQgaGF0IDopCltCZWlsZWlkOkFzbW9kaXNdIDwyMDozMjowNT4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQSy1LbnVkZGxlci4uLiAoQW5hdG9sLCAgNy4gT2t0IDE5OTYsIDIxOjU4OjE3KToKCkRhcmtuZXNzaWUga251ZGRlbHQgTmljaHRzLCBDYXR3ZWF6bGUsIERpY2ggdW5kIENhbGFuZHJ5bGwuCkNhdHdlYXpsZSBzdG9scGVydCBuYWNoIEhhdXNlLgpDYXR3ZWF6bGUgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpVbmQgc293YXMgaXN0IFNoZXJpZmY/CkFuYXRvbCAKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sICA4LiBPa3QgMTk5NiwgMTg6MDA6MjQpOgoKIkljaCB3YXIgYW0gc3RhZXJrc3RlbiBhbHMgaWNoIHVlYmVyIG1laW5lIFNjaHdhZWNoZSBsYWNodGUuIiAoRGlrdG9uaXVzKQoKTmFqYSwga2VpbiBTcHJ1Y2ggZnVlciBtaWNoLCBkYSBpY2gga2VpbmUgU2Nod2FlY2hlIGhhYmUuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbm4gZnRwLVNlcnZlciAnbmV3cyctRmlsZXMgYXV0b21hdGlzY2ggZXJzdGVsbGVuLi4uIChNdXBmZWwsICA4LiBPa3QgMTk5NiwgMjI6MTU6MjEpOgoKRGF0ZTogMDgtT2N0LTk2ICgwMTo0MCkuCgpVdGlscy9TaGVsbC9jb3JlIDI0OTI2ODggPG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZT4KCmNvcmUgMjQ4ODU5MiA8bm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlPgoKCipncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9obmUgV29ydGUgKE11cGZlbCwgIDguIE9rdCAxOTk2LCAyMjo1Mjo0Nik6CltTZWhlcjpQYXJhY2Vsc3VzXSBTYWcgbWFsIHdpZWRlciB3YXMgc2lubnZvbGxlcywgZGFubiBrcmllZ3N0ZSBhdWNoIHdpZWRlciBuZQpbU2VoZXI6UGFyYWNlbHN1c10gQW50d29ydApbU2VoZXI6THVnXSBXYXMgc2lubnZvbGxlcy4KW1NlaGVyOlBhcmFjZWxzdXNdIE5lIEFudHdvcnQuCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW5kIG1hbCB3aWVkZXIgRkxXIChQYW1wZXJzLCAgOS4gT2t0IDE5OTYsIDEzOjA2OjE3KToKCkRpZSBaYXRvbmdzOgoKW0FiZW50ZXVlcjpNb3JlbGxhIGZ1ZWhsdCBzaWNoIGtsZWludW5kc2Nod2FjaCA8MTI6NTI6NTc+XQpbQWJlbnRldWVyOldhcnJpb3JdIGRhbm4gZ3JlaWYgZGllIHphdG9uZ3MgZG9jaCBuaWNodCBhbiwgaXN0IHNvd2llc28gbmljaHQKW0FiZW50ZXVlcjpXYXJyaW9yXSBub2V0aWcgPDEyOjUzOjIxPgpbQWJlbnRldWVyOk1vcmVsbGFdIGljaCBkYWNodGUsIGRpZSBmYWxsZW4gZ2xlY2loIHVlYmVyIG1pY2ggaGVyLi4gYWJlciB3ZW5uCltBYmVudGV1ZXI6TW9yZWxsYV0gc2llIGRhcyBuaWNodCB0dW4uLiA8MTI6NTQ6MDU+CltBYmVudGV1ZXI6V2Fycmlvcl0gYWVobSB0dW4gc2llLi4uIDwxMjo1NDoyMD4KW0FiZW50ZXVlcjpQYW1wZXJzXSBGTFcsIE1vcmVsbGEuLiA6KSA8MTI6NTQ6MjQ+CltBYmVudGV1ZXI6TW9yZWxsYV0gaWNoIHN0dWVyeiBtaWNoIGRhIGpldHp0IHJlaW4uIGxhc3MgbnVyIGp1cnJ5LCBlbnR3ZWRlcgpbQWJlbnRldWVyOk1vcmVsbGFdIGdsZWljaCBpc3QgYWxsZXMgYXVzIG9kZXIgaWNoIHNjaGFmZnMgYWxsZWluICAqcHJvdHoqCltBYmVudGV1ZXI6SnVycnkgd3VlbnNjaHQgbW9yZWVsbGEgZ2x1ZWNrIDwxMjo1NToxNj5dCltBYmVudGV1ZXI6TW9yZWxsYV0gd2FzIGlzdCBkZW5uIGZsdyBwYW1wZXJzPyA8MTI6NTU6MTY+CmludmlzCnZlcmZvbGdlIG1vcmVsbGEKW0FiZW50ZXVlcjooUGFtcGVycyldIEZhbW91cyBMYXN0IFdvcmRzLCBNb3JlbGxhLiA6LSkpKSA8MTI6NTU6NDA+CiAKCndlbmlnIHNwYWV0ZXIuLi46CgpEZXIgWmF0b25nIGdyZWlmdCBNb3JlbGxhIG1pdCBncnVlbmVuIFphdG9uZy1LbGF1ZW4gYW4uCiAgRGVyIFphdG9uZyB0cmlmZnQgTW9yZWxsYSBzZWhyIGhhcnQuCk1vcmVsbGEgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpMYXJzXSBFaW4gWmF0b25nIGhhdCBnZXJhZGUgTW9yZWxsYSB1bWdlYnJhY2h0LgoKCgpQYW1wZXJzLiBCZWVpbmRydWNrdC4gOi0wCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp2aWVsc2FnZW5kLi4uIChBbmF0b2wsICA5LiBPa3QgMTk5NiwgMjE6NTg6MzUpOgoKQ2F0d2VhemxlICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpUb3JmZHVlbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCk5vIGNvbW1lbnQsCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLnVuZCB3aWVkZXIgZWluZSBtc2dvdXQuLi4gKEFuYXRvbCwgIDkuIE9rdCAxOTk2LCAyMjoxNzoyMik6CgpCZWVsemVidWIgc2NobGVpZnQgZGVpbmVuIGxlYmxvc2VuIEtvZXJwZXIgaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4uCgoqYXJnbCogOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBc21vZGlzLi4uLiAoUGFtcGVycywgMTAuIE9rdCAxOTk2LCAxNTo1MzowNSk6CiAKU2NoYWRlIGRhcyBBc21vZGlzIGRlbiBNYWdpZXJrYW5hbCBuaWNodCBoYXQ6CgpbTWFnaWVyOlBhbXBlcnNdIEFzbW9kaXMsIGRlciB3YW5kZWxuZGUgQnVnLiA6KQpbQWxsZ2VtZWluOkFzbW9kaXNdIGpvCgoKUGFtcGVycy4gTWFnIGRlbiBDaGFubmVsYnVnIHBsb2V0emxpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYXRlID8/PyAoTW9yZ290aCwgMTAuIE9rdCAxOTk2LCAxNjowMzozNyk6Cls8TWFzdGVSPjpIYXRlIGxhZXNzdCBkaWUgRWJlbmUgJ0Vyem1hZ2llcl9zaW5kX2Rvb2YnIGVudHN0ZWhlbi5dCls8TWFzdGVSPjpIYXRlIGxhZXNzdCBkaWUgRWJlbmUgJ21lY2tlcmVja2UnIGVudHN0ZWhlbi5dCls8TWFzdGVSPjpIYXRlIGxhZXNzdCBkaWUgRWJlbmUgJ21hZ2llcl9zaW5kX2Rvb2YnIGVudHN0ZWhlbi5dCls8TWFzdGVSPjpIYXRlIGxhZXNzdCBkaWUgRWJlbmUgJ3NleCcgZW50c3RlaGVuLl0KWzxNYXN0ZVI+OkhhdGUgbGFlc3N0IGRpZSBFYmVuZSAnc2F2ZV9vZXR0aScgZW50c3RlaGVuLl0KWzxNYXN0ZVI+OkhhdGUgbGFlc3N0IGRpZSBFYmVuZSAnQWdlbnRlbicgZW50c3RlaGVuLl0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGF0ZSA/Pz8gKEhhdGUsIDEwLiBPa3QgMTk5NiwgMTY6NTc6MDQpOgp+IyEgcm49TW9yZ290aCBydD04NDQ5NTYyMTcKfiMhIHRpZD04NDQ5NTYyMTcKTmFqYSwgYW4gaXJnZW5kd2FzIG11c3MgbWFuIGphIGRhcyBDaGFubmVsLUtpbGwgdGVzdGVuLgpIYXRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BvcnQgaXN0IE1vcmQuLi4/IChBbmF0b2wsIDEwLiBPa3QgMTk5NiwgMjA6MzA6NDMpOgoKW0FsbGdlbWVpbjpFc2N1YmFyIGdlaHQgZGFubiBtYWwgenVtIEJldHJpZWJzc3BvcnQgOyldCltUb2Q6TGFyc10gQ2FyZWZyZWUgaGF0IGdlcmFkZSBFc2N1YmFyIHVtZ2VicmFjaHQuCltUb2Q6Q2FyZWZyZWVdIFZlcnN1Y2ggZGFzIGJlaSBqZW1hbmQgYW5kZXJzLCBLbGVpbmVyIQoKend3d29zY2guLi4KQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2VuZXJ2dGVzIENhdC1XaWVzZWwgPyAoTW9yZ290aCwgMTEuIE9rdCAxOTk2LCAxMjo0NTozNyk6CkNhdHdlYXpsZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbRGVidWc6U2lsdmFuYV0gRmVobGVyOiAiRmFpbGVkIHRvIGxvYWQgZmlsZS4iLCBPYmpla3Q6CltEZWJ1ZzpTaWx2YW5hXSBkL2dlYmlyZ2Uvc2lsdmFuYS93YXJvay9ucGMvdG9uaSM2OTAyOSwgUHJvZ3JhbW06CltEZWJ1ZzpTaWx2YW5hXSAiL2QvZ2ViaXJnZS9zaWx2YW5hL3dhcm9rL25wYy90b25pLmMiLCBaZWlsZSA0NSAoU2lsdmFuYSkKQ2F0d2VhemxlICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmljaHRpZywgTW9wcHkgKENhcmFkaHJhcywgMTMuIE9rdCAxOTk2LCAwMjowNzo0MCk6CkR1IHRlaWxzdCBMYW11ZXJ0ZSBtaXQ6IG9obmUgZGFzIFJpdHRlcmVzc2VuIGRhbWFscyBpbiBMdWVueiB3dWVzc3RlIGljaHMgYXVjaApEdSB0ZWlsc3QgTGFtdWVydGUgbWl0OiBuaWNodAo+IFtBbGxnZW1laW46TW9wcHldIHdvenUgYXVjaCEKCkhtbSwgaGllc3MgZXMgbmljaHQgaW1tZXI6IGRpZSBHZWRhbmtlbiBzaW5kIGZyZWk/CgogICAgICAgICBDYXJhZGhyYXMgbWl0IGRlbSBrdXJ6ZW4gVGl0ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXaW50ZXJwbGF0eiBmdWVycyBTZWdlbGJvb3QgPyAoR3JpbW1ib3JuLCAxNS4gT2t0IDE5OTYsIDA5OjAwOjMwKToKfiMhIHJuPVRvcmZkdWVuZyBydD04NDUwNjUwMzMKfiMhIHRpZD04NDUwNjUwMzMKW1ZlcmxlZ3Qgdm9uIGFuemVpZ2VuLCBHcmltbWJvcm4sIDE1LiBPa3QgMTk5NiwgMDg6NDk6NDZdOgpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIEhhZHJhLCAxMS4gT2t0IDE5OTYsIDIyOjE3OjU4XToKbmUgYXV0b2JhaG5icnVlY2tlPwoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdpbnRlcnBsYXR6IGZ1ZXJzIFNlZ2VsYm9vdCA/IChHcmltbWJvcm4sIDE1LiBPa3QgMTk5NiwgMDk6MDA6NDQpOgp+IyEgcm49SGFkcmEgcnQ9ODQ1MDY1MDc4Cn4jISB0aWQ9ODQ1MDY1MDMzCltWZXJsZWd0IHZvbiBhbnplaWdlbiwgR3JpbW1ib3JuLCAxNS4gT2t0IDE5OTYsIDA4OjQ5OjQ4XToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBMaWZhZmEsIDExLiBPa3QgMTk5NiwgMjI6MjQ6MjNdOgpkaWUgZ2VuZXNpc2hvZWhsZT8/CiAgZGEgcGFzc3QgYXVjaCBkYXMgRHJhY2hlbmJhYnkgZHJhdWYgYXVmLi4uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlmYWZhCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXaW50ZXJwbGF0eiBmdWVycyBTZWdlbGJvb3QgPyAoR3JpbW1ib3JuLCAxNS4gT2t0IDE5OTYsIDA5OjAwOjQ2KToKfiMhIHJuPVRvcmZkdWVuZyBydD04NDUwNjUwMzMKfiMhIHRpZD04NDUwNjUwMzMKW1ZlcmxlZ3Qgdm9uIGFuemVpZ2VuLCBHcmltbWJvcm4sIDE1LiBPa3QgMTk5NiwgMDg6NDk6NTFdOgpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIENhcmFkaHJhcywgMTIuIE9rdCAxOTk2LCAwMTo0OTo0OF06ClZlcnNlbmtlbi4gV2Fzc2VyIG1hY2h0IDcxIFByb3plbnQgZGVyIEVyZG9iZXJmbGFlY2hlIGF1cy4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdpbnRlcnBsYXR6IGZ1ZXJzIFNlZ2VsYm9vdCA/IChHcmltbWJvcm4sIDE1LiBPa3QgMTk5NiwgMDk6MDA6NDgpOgp+IyEgcm49VG9yZmR1ZW5nIHJ0PTg0NTA2NTAzMwp+IyEgdGlkPTg0NTA2NTAzMwpbVmVybGVndCB2b24gYW56ZWlnZW4sIEdyaW1tYm9ybiwgMTUuIE9rdCAxOTk2LCAwODo0OTo1NV06CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgWnVlcmlsZXUsIDEyLiBPa3QgMTk5NiwgMDU6MDY6MjldOgpoaSwKaG1tLi4gYXVmIGRlbSBNYXR0ZXJob3JuIGhhdHMgZ2VudWcgcGxhdHosIHVuZCBkb3J0IGtsYXV0IGVzIGF1Y2gga2VpbmVyIGRpZQpzaW5kIGZyb2ggd2VubiBzaWUgZG9ydCBsZWJlbmQgYW5rb21tZW4gPTopCgp0c2NodWVzcyB6dWVyaWxldQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2ludGVycGxhdHogZnVlcnMgU2VnZWxib290ID8gKEdyaW1tYm9ybiwgMTUuIE9rdCAxOTk2LCAwOTowMDo0OCk6Cn4jISBybj1Ub3JmZHVlbmcgcnQ9ODQ1MDY1MDMzCn4jISB0aWQ9ODQ1MDY1MDMzCltWZXJsZWd0IHZvbiBhbnplaWdlbiwgR3JpbW1ib3JuLCAxNS4gT2t0IDE5OTYsIDA4OjQ5OjU1XToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBXaWxsb3csIDEyLiBPa3QgMTk5NiwgMjE6MzA6NTZdOgpIZXlhIFRvcmYKYWxzbyBpY2ggaGFiIG5lIHByaW1hIGlkZWUgLSB3aXIgaGFiZW4gYmVpIHVucyB6dWhhdXNlIG5lIGhvbHpoZWl6dW5nIHVuZApicmF1Y2hlbiBpbW1lciBob2x6IGRhbWl0cyBzY2hvZW4gd2FybSBpc3QuCkFsc28ga2FubnN0IGRhcyBib290IGJlaSB1bnMgdm9yYmVpYnJpbmdlbiAtIGtvZW5uZW4gd2lyIHNvZ2FyIHVudGVyc3RlbGxlbgooZGFtaXRzIGF1Y2ggc2Nob2VuIHRyb2NrZW4gYmxlaWJ0KSAtIHVuZCB3aXIgZXJsZWRpZ2VuIGRlbiByZXN0Li4uCldlaWRjaGVuIFdpbGxvdyBoYXRzIGdlcm5lIHdhcm0uLi4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdpbnRlcnBsYXR6IGZ1ZXJzIFNlZ2VsYm9vdCA/IChHcmltbWJvcm4sIDE1LiBPa3QgMTk5NiwgMDk6MDA6NTApOgp+IyEgcm49VG9yZmR1ZW5nIHJ0PTg0NTA2NTAzMwp+IyEgdGlkPTg0NTA2NTAzMwpbVmVybGVndCB2b24gYW56ZWlnZW4sIEdyaW1tYm9ybiwgMTUuIE9rdCAxOTk2LCAwODo0OTo1OV06CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgSmFzcGVyLCAxNC4gT2t0IDE5OTYsIDEwOjI4OjU0XToKU3RlbGwgZXMgdm9yIG5lIFVuaSB1bmQgdmVybWlldGUgZXMgCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2ludGVycGxhdHogZnVlcnMgU2VnZWxib290ID8gKEdyaW1tYm9ybiwgMTUuIE9rdCAxOTk2LCAwOTowMDo1Mik6Cn4jISBybj1KYXNwZXIgcnQ9ODQ1MjgxNzM0Cn4jISB0aWQ9ODQ1MDY1MDMzCltWZXJsZWd0IHZvbiBhbnplaWdlbiwgR3JpbW1ib3JuLCAxNS4gT2t0IDE5OTYsIDA4OjUwOjA5XToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBPcmt0b2V0ZXIsIDE0LiBPa3QgMTk5NiwgMTA6MzE6MjddOgpIbW0gaWNoIGtlbm5lIGtlaW5lIEZsYXNjaGUgZGllIGdyb3NzIGdlbnVnIHdhZXJlLCBzb3JyeSA6KApPcmtUIG1hZyBCdWRkZWxzY2hpZmZlLgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdpbnRlcnBsYXR6IGZ1ZXJzIFNlZ2VsYm9vdCA/IChHcmltbWJvcm4sIDE1LiBPa3QgMTk5NiwgMDk6MDA6NTQpOgp+IyEgcm49WnVlcmlsZXUgcnQ9ODQ1MDg5NTg5Cn4jISB0aWQ9ODQ1MDY1MDMzCltWZXJsZWd0IHZvbiBhbnplaWdlbiwgR3JpbW1ib3JuLCAxNS4gT2t0IDE5OTYsIDA4OjUwOjEzXToKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBSYWZmaSwgMTQuIE9rdCAxOTk2LCAxMDo0MTowOV06CgpBdWZzIE1hdHRlcmhvcm4gPyBIYXNhdCBuZW4gaGFtbWVyIC0gZGllIHZvbiBkaWVyIGVyd2FlaG50ZW4gJ2Zyb2hlbicgTGV1dGUKaGludGVybGFzc2VuIHNjaG9uIGdlbnVnIG11ZWxsLgoKT2J3b2hsLCB3ZW5uIG1hbiBkZWlzZW4gZG9vZmVuIEtpZWwgd2lsbG93IHp1bSBoZWl6ZW4gZ2lidCwga29lbm50ZSBtYW4gZGFzCkRJbmcgYWxzIFN1cGVyIFNjaGxpdHRlbiB2ZXJ3ZW5kZW4gIQoKR3JpbnMKSC4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXaW50ZXJwbGF0eiBmdWVycyBTZWdlbGJvb3QgPyAoR3VsZHVrYXQsIDE1LiBPa3QgMTk5NiwgMTE6NDM6MzApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg0NTM2Mjg1MAp+IyEgdGlkPTg0NTA2NTAzMwoKZGF0IGlzIGpldHogYWJlciBrZW4gc2NobWFycm4gZ2V3ZXNlbiEsCmFsc28gbGVnIG1hIHdpZGRlciB6dXJ1ZWNrLCBncmltbWkKR0QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2ludGVycGxhdHogZnVlcnMgU2VnZWxib290ID8gKE1hbmdvLCAxNS4gT2t0IDE5OTYsIDEyOjAwOjMzKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NDUzNjI4NTAKfiMhIHRpZD04NDUwNjUwMzMKCgogICBNb2VjaHQgd2lzc2VuIHdhcyBhbiBkaWVzZW0gQXJ0aWtlbCBzY2htYXJybiBpc3Q/CiAgIEltbWVyIGRpZXNlIHBhdXNjaGFsZSBNYWdpZXJ3aWxsa3VlciA6KC4KCgpNYW5nbywgZW1wb2VydC4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2ludGVycGxhdHogZnVlcnMgU2VnZWxib290ID8gKFlhbnRybywgMTUuIE9rdCAxOTk2LCAxMjowMTozMCk6Cn4jISBybj1NYW5nbyBydD04NDUzNzM2MzMKfiMhIHRpZD04NDUwNjUwMzMKTWFuZ28sIGFsc28gZGVpbmUgQmVzY2h3ZXJkZSBoaWVyIGlzdCBlaWdlbnRsaWNoIEdFTkFVIGluIGRlciByaWNodGlnZW4gUnVicmlrCjopCgpZYW50cm8gOi0pCgp1dXV1dXV1dXVubm5kIG5pY2h0IHZlcmdlc3NlbjogCgpSaWVzZW5NZWdhU3VwZXJHZWlsZXJUcmFkaXRpb25zU3RhbW10aXNjaCBpbiBLb2VsbiBhbSAKCiAgICAgICAgICAgICAgICAgICAgMy4gSmFudWFyIDE5OTcgISEhIQoKQW5tZWxkZW4gYmVpIG1pciBwZXIgTWFpbCBhbiBtaWNoISBTaWVoZSBkYXp1IGF1Y2ggbWVpbmUgZWlnZW5zIGdlc2NoYWZmZW5lClByb2xsc2VpdGU6CgogICAgICAgaHR0cDovL3d3dy51bmkta29lbG4uZGUvfmFyaTAzL2dlbGFnZS5odG1sCgpEZW5uIG5peCBpc3Qgc2Nob2VuZXIgYWxzIEZlaWVybiBpbiBiZXN0ZXIgR2VzZWxsc2NoYWZ0ICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2ludGVycGxhdHogZnVlcnMgU2VnZWxib290ID8gKFJhZmZpLCAxNS4gT2t0IDE5OTYsIDEyOjA0OjU1KToKfiMhIHJuPU1hbmdvIHJ0PTg0NTM3MzYzMwp+IyEgdGlkPTg0NTA2NTAzMwoKU2NoYWV0emUgdmVybGVnZW4gbWFjaHQgZWluZmFjaCBzb29vIHZpZWwgc3Bhc3MgKHVuZCBtYW4ga2FubiBzZWluZSBkZXV0c2NoZQpPcmRudW5nc2xpZWJlIGF1c3RvYmVuKS4KCkdyaW5zCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXaW50ZXJwbGF0eiBmdWVycyBTZWdlbGJvb3QgPyAoR3JpbW1ib3JuLCAxNS4gT2t0IDE5OTYsIDEyOjA5OjIzKToKfiMhIHJuPVJhZmZpIHJ0PTg0NTM3Mzg5NQp+IyEgdGlkPTg0NTA2NTAzMwoKTm9lLCBpY2ggaGFiIGVpbmZhY2ggZGVuIGdhbnplbiBTY2h3dW5nIHZlcmxlZ3QuIERlbiBlaW5lbiBzaW5udm9sbGVuClZvcnNjaGxhZyBtdXNzIGljaCBkYSBkb2NoIGdsYXR0IHVlYmVyc2VoZW4gaGFiZW4uLi4gKmdyaW5zKgpJc3Qgd2llZGVyIHp1cnVlY2sgaW4gYW56ZWlnZW4sIGRlciBoZWFkZXIgd2lyZCBsYW5nc2FtIGxhZW5nZXIgYWxzIGVpbmUKU2VpdGUsIG5hamEuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKClAuUy4gTmVpbiwgYXVzdG9iZW4gdHVlIGljaCBtaWNoIGJlaW0gbG9lc2NoZW4sIGRhcyBoaWVyIHdhciBqYSBudXIgdmVybGVndC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdpbnRlcnBsYXR6IGZ1ZXJzIFNlZ2VsYm9vdCA/IChSYWZmaSwgMTUuIE9rdCAxOTk2LCAxMjoxNDowOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODQ1Mzc0MTYzCn4jISB0aWQ9ODQ1MDY1MDMzCgpCb2ggZXkgLSBFaW4gbWFuIG1pdCBHZW51c3N2ZXJsYWVuZ2VydW5nIC0gRXJzdCBhbHMgVm9yc3BpZWwgbWVocmZhY2hlcwpWZXJsZWdlbiB1bmQgZGFubiBkZW4gTG9lc2Nob3JnYXNtdXMgPyBXYWVseiAhCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplYmVuIGJlaSBuZXIgcGFydHkgOykgKE1hbmdvLCAxNS4gT2t0IDE5OTYsIDEzOjExOjAzKToKCgpTdXNhbm5lIHdpcmZ0IFN1c2FubmUgZWluZSBncm9zc2UgU2FobmV0b3J0ZSBpbnMgR2VzaWNodC4KCgpNYW5nby4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdpbnRlcnBsYXR6IGZ1ZXJzIFNlZ2VsYm9vdCA/IChIYWRyYSwgMTUuIE9rdCAxOTk2LCAxMzoxMToyNCk6Cn4jISBybj1HdWxkdWthdCBydD04NDUzNzYzNjkKfiMhIHRpZD04NDUwNjUwMzMKYWJlciBzb25zdCBnZWh0cyBldWNoIGFsbGVuIG5vY2ggZ3V0PwptYWNodCBkb2NoIGF1cyBkZW0gdmVybGVnZW4gbmUgYWJtLXN0ZWxsZS4KCmhhZHJhIC0ga29wZnNjaHVldHRlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXaW50ZXJwbGF0eiBmdWVycyBTZWdlbGJvb3QgPyAoUmFmZmksIDE1LiBPa3QgMTk5NiwgMTM6MTI6MzcpOgp+IyEgcm49SGFkcmEgcnQ9ODQ1Mzc3ODg0Cn4jISB0aWQ9ODQ1MDY1MDMzCgpXaWViaXR0ZSA/IEFCTSA/IHVuZCBkYW5uIGF1ZiBtZWluZSBTdGV1ZXJuIHVuZCBBcmJlaXRzbG9zZW5iZWl0cmFlZ2UgYmV6YWhsZW4KLSBuZW5lIHByaXZhdGllc2llcnQgZGFzIGxpZWJlciAtIGtlaW4gdmVybGVnZW4gbWVociBvaG5lIGRhcyBuaWNodCBqZW1hbmQKZGFmdWVyIHphaGx0ICEKCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGYW1vdXMgbGFzdCB3b3JkcyAuLi4gZGllc21hbCBhbmRlcnMgKER1cmlhbiwgMTUuIE9rdCAxOTk2LCAxNDo1Mzo0NCk6CltEZWJ1ZzpOaWV0ZV0gRmVobGVyOiAiRXJyb3IgaW4gbG9hZGluZyBvYmplY3QiLCBPYmpla3Q6IGVsZjpuaWV0ZSwgUHJvZ3JhbW06CltEZWJ1ZzpOaWV0ZV0gIjxsYW1iZGEgMHhlZmJmYjhjYT4iLCBaZWlsZSAxIChOaWV0ZSkKW0RlYnVnOk5pZXRlXSBGZWhsZXI6ICJFcnJvciBpbiBsb2FkaW5nIG9iamVjdCIsIE9iamVrdDogZWxmOm5pZXRlLCBQcm9ncmFtbToKW0RlYnVnOk5pZXRlXSAiPGxhbWJkYSAweGVmYmZiOGNhPiIsIFplaWxlIDEgKE5pZXRlKQpbQWxsZ2VtZWluOk5pZXRlXSBhcmdsLCB3YXMgc29sbCBkZXIgcnpnIGZlaGxlciBoaWVyPz8KCkNvbm5lY3Rpb24gY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KClByb2Nlc3MgKk1vcmdlbkdyYXVlbihEdXJpYW4pKiBleGl0ZWQgYWJub3JtYWxseSB3aXRoIGNvZGUgMQoKTmFjaCBkZW0gUmVib290OgoKW0FsbGdlbWVpbjpOaWV0ZV0gd3Vzc3RlIGljaCdzIGRvY2ggOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDE1LiBPa3QgMTk5NiwgMTg6MDE6MzYpOgoKIk1hbiBzb2xsIGp1bmcgc3RlcmJlbiwgdW5kIGRhcyBzbyBzcGFldCB3aWUgbW9lZ2xpY2g6IiAodW5iZWthbm50KQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWxpcyAoQ2FyYWRocmFzLCAxNS4gT2t0IDE5OTYsIDIwOjIyOjI1KToKICAgICAgICAgICAgICAgICAgICAgSHVodQoKRGEgaWNoIG1pciBncmFkZSBtZWluZSBhbGlzIGFua3Vja2UsIHdhcyBpY2ggbmljaHQgbWVociBicmF1Y2hlCipncmlucyBXYXJnb24qIG1hbCB3aWVkZXIgZWluIGtsZWluZXMgQmVzdE9mOgoKIC4uICAgICA9IHp3aW5ndGFueiBtZXJsaW4KIDExICAgICA9IHRlaWxlIGdhc3QxIG1pdCAkKgogMjIgICAgID0gdGVpbGUgZ2FzdDIgbWl0ICQKIGFhICAgICA9IG5pbW0gJCogYXVzIHNhcmcKIGFoICAgICA9IHNvCiBhbGZyZWQgPSAtYTpncnVlc3N0IEFsZnJlZCBKLiBPZXR0bC4KIGFyZ2xsICA9IDphcmdsbGluenQuCiBiYXkgICAgPSBya251ZGRsZSAkKiAvc28gcmljaHRpZyBiYXlyaXNjaCAKIGJlaWwgICA9IC1rOnNpbmd0OiB5b3UgY2FuIGxlYXZlIHlvdXIgaGVhZCBvbi4uLgogYnNzICAgID0gYmlldGUgc2VtaXJhIGZyZXVuZHNjaGFmdCBhbgogLy8gYWgsIERBUyBhbHNvIGlzdCBlaW4gYnNzCiBid2wgICAgPSBya251ZGRsZSAkKiAvd2llIGVpbiBCV0xlcgogYyAgICAgID0gdm9ybmUKIGNjaGFvcyA9IC1hIFtDaGFvczpDYXJhZGhyYXMgJCouXQogY2hhb3MgID0gLWEgW0NoYW9zOkNhcmFkaHJhc10gJCoKIGNrYXJhdGUgICAgICAgID0gLWEgW0thcmF0ZTpDYXJhZGhyYXMgJCouXSAKIGNzY2htb2xsZSAgICAgID0gLWE6c2NobW9sbHQgamV0enQgYWJlci4KCiAgRGFzIHJlaWNodCBlcnN0bWFsIGFscyBCdWNoc3RhYmVuIGEgLSBjLgoKICAgc2NobWFycm4sIHNjaG1hcnJuZXIsIG1vcmUgL3NhdmUvYy9jYXJhZGhyYXMubwoKUFM6IERpZSBCdWNoc3RhYmVuIGQgLSBmIGtvbW1lbiBpbiAyIFdvY2hlbiBkcmFuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BydWNoIGRlciBXb2NoZSAoUXVlbmdpc3R1LCAxNS4gT2t0IDE5OTYsIDIzOjUxOjEwKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NDUzOTUyOTYKfiMhIHRpZD04NDUzOTUyOTYKVW5kIGRhIEdyaW1tYm9ybiB1bnMgaW1tZXIgc28gbmV0dCBtaXQgU3BydWVjaGVuIGRlciBXb2NoZSB2ZXJzb3JndCwgaGllciBtYWwKZWluIFNwcnVjaCBudXIgZnVlciBpaG46CiJBdGhlaXNtIGlzIGEgbm9uLXByb3BoZXQgb3JnYW5pc2F0aW9uLiIKCjotKSBRdWVuZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldJZSBtYWNodCBtYW4gZGFzPyAoTGVjaHVjaywgMTYuIE9rdCAxOTk2LCAwOToxMzowMik6Cj4gRHUgYmlzdCBpbSBIb2VobGVubGFieXJpbnRoIGRlciBTY2hyZWNrZW5zc3BpdHplLiBIaWVyIGlzdCBkaWUgV2VsdCB6dSBFbmRlLAp1bmQgd2FocnNjaGVpbmxpY2ggYXVjaCBmdWVyIERpY2gsIHdlbm4gRHUgRGljaCBtaXQgZGVtIHNjaHJlY2tsaWNoZW4gQmUtCndvaG5lciBkaWVzZXIgSG9laGxlIGFubGVnZW4gc29sbHRlc3QuIEFuIGRlbiBXYWVuZGVuIGhhZW5nZW4gVm9yaGFlbmdlIGF1cwpGbGVjaHRlbiB1bmQgYWVobmxpY2hlbiBQZmxhbnplbiwgd2FlaHJlbmQgZGVyIEJvZGVuIG1pdCBnZWxiZ3J1ZW5lbSBNb29zCmJlZGVja3QgaXN0LiBEZXIgZWluemlnZSBBdXNnYW5nIGxpZWd0IG9lc3RsaWNoIHZvbiBoaWVyLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogb3N0ZW4uCkVpbiBzY2hhcnRpZ2VyIFNhZWJlbCAoZ2V6dWVja3QpLgpFaW4gdmVybW9kZXJuZGVzIEJsYXR0LgpWYW5kYW1tZSBkZXIgS2FyYXRlLUthZW1wZmVyLCA0LiBLeXUuCgoKTWl0IGRlbSBTYWViZWwgaGFiIGljaCBnZWthZW1wZnQgOykgb2J3b2hsIGVyIHJ1bWxhZyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNwcnVjaCBkZXIgV29jaGUgKER1cmlhbiwgMTYuIE9rdCAxOTk2LCAxMjo0NTozOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODQ1Mzk1Mjk2Cn4jISB0aWQ9ODQ1Mzk1Mjk2CgpBbHNvIGRhcyBpc3QgenVyIEFid2VjaHNsdW5nIG1hbCBlaW4gd2lya2xpY2ggcmljaHRpZyBndXRlciBTcHJ1Y2ghIE11c3N0ZQppY2ggZWluZmFjaCBsb3N3ZXJkZW4hCgpLZWluIFNjaG1hcnJuLAoKLSBEdXJpYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbGlzIChHYXN0MiwgMTYuIE9rdCAxOTk2LCAxODoyNToxNCk6Cn4jISBybj1DYXJhZGhyYXMgcnQ9ODQ1NDAzNzQ1Cn4jISB0aWQ9ODQ1NDAzNzQ1CkdydWVzcyBEaWNoLCBDYXJhZGhyYXMsCmFsc28gd2VubiBEdSAxMSB1bmQgMjIgbmltbWVyIGJyYXVjaHN0LCBkYW5uIGJpbiBpY2ggd29obCBpbiBsZXR6dGVyClplaXQgZW50c2NoaWVkZW4genV3ZW5pZyBEYS4KR3Vlc3NXaG8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRlciBmaW5nZXIgQmVmZWhsIChQYW1wZXJzLCAxNy4gT2t0IDE5OTYsIDExOjM1OjMxKToKClB0ZXBwaWMgYmV0cml0dCBkaWVzZSBXZWx0Lgo+IFBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBQdGVwcGljLgoKZmkgcHRlcHBpYwpQdGVwcGljIGlzdCBuaWNodCBhbndlc2VuZC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogc3R1ZDIudHV3aWVuLmFjLmF0IFtXaWVuXS4KWnVsZXR6dCBhdXNnZWxvZ2d0OiBNaXQsICA5LiBPa3QgMTk5NiwgMDg6MjY6NDMgKDhkIDAzOjA1OjU2KQoKU28gc2NobmVsbCBzaW5kIGFjaHQgVGFnZSBydW0uLi4gOikKClBhbXBlcnMuIFdpcmQgYWx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VpbCBtaXIgZ3JhZCBsYW5nd2VpbGlnIGlzdDogKEd1eWJydXNoLCAxNy4gT2t0IDE5OTYsIDE0OjQwOjAyKToKCldlciBpc3QgZGllc2VyIGdlaGVpbW5pc3ZvbGxlICJMb2dvbiI/CgoKeGV2YWwgdXB0aW1lKCkKCj4gRXZhbHVhdGlvbiB0aW1lOiAxIG1zLgpSZXN1bHQ6ICI1MSBTZWt1bmRlbiIKa3dlcgogIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEb24sIDE3LiBPa3QgMTk5NiwgMTQ6Mzc6NDQgKDIyIFRlaWxuZWhtZXIpCgpMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucwpMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucwpMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucwpQYWNtYW4uLi4uLi4uLi4ucyAgVGFydWcuLi4uLi4uLi4uLnMgIEdub21lLi4uLi4uLi4uLi5zICBHaGFsZGFuLi4uLi4uLi4ucwpCb2xkZXIuLi4uLi4uLi4ucyAgR3VhcmQuLi4uLi4uLi4uLnMgIFRlbGthLi4uLi4uLi4uLi5TICBHdXlicnVzaC4uLi4uLi4ubQpCaWVyY2hlbi4uLi4uLi4uTSAgV2FyZ29uLi4uLi4uLi4uLkUKCkd1eWJydXNoIHdpcmQgYXVjaCBuaWNodCBzY2hsYXVlci4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFzbW9kaXMsIDE4LiBPa3QgMTk5NiwgMDE6MDY6MjcpOgpbQWJlbnRldWVyOkRhbW9rbGVzXSB3YXMgbWFjaHQgbWFuIG1pdCBkZW0ga29lbmlnIGRlciBEaWViZT8gKGtvbmZ1c2l1cykKW0FiZW50ZXVlcjpNcnlldGldIFRvZXRlbj8KW0FiZW50ZXVlcjpBc21vZGlzXSBhbGxlcyBhdXMgc2VpbmVyIGxlaWNoZSBuZWhtZW4gOikKW0FiZW50ZXVlcjpNcnlldGldIEFiZXIgZXJzdCB0b2V0ZW4hOykKCi4ud2VuaWcgc3BhZXRlci4uLgpbVG9kOkxhcnNdIEVpbiBLb2VuaWcgZGVyIERpZWJlIGhhdCBnZXJhZGUgRGFtb2tsZXMgdW1nZWJyYWNodC4KCgpUamEsIGtvbW10IGRhdm9uLCB3ZW5uIG1hbiBhdWYgZGVuIGhvZXJ0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYWphLCBkaWUgTWFncyAoQ2FyYWRocmFzLCAxOC4gT2t0IDE5OTYsIDExOjA5OjM1KToKR3JhZCBlYmVuOgoKPFNlaGVyPiB0ZWlsdCBEaXIgbWl0OiBtYWNoIGR1IG1hbCBkYXMgc3BpZWxjaGVuIG1pdCBtZXJsaW4gOikKPiB0bSBtZXJsaW4gd28gYmlzdCBkdQo8U2VoZXI+IHJ1ZnQ6IEljaCBiaW4gaW4gZGVyIEViZW5lLgpEdSBydWZzdDogRGFua2UgTWVybGluCjxTZWhlcj4gdGVpbHQgRGlyIG1pdDogZGEgbGFldWZ0IHdhcyBzY2hpZWYgOigKRHUgdGVpbHN0IDxTZWhlcj4gbWl0OiB3aWVzbz8KPFNlaGVyPiB0ZWlsdCBEaXIgbWl0OiA8TWFnaWVyPiBtZWludGUgZGFzIHNlaSBpbiBtZXJsaW4gZmVzdCBpbXBsZW1lbnRpZXJ0CmRhcwo8U2VoZXI+IHRlaWx0IERpciBtaXQ6IGVyIGRhbmtlIDxwbGF5ZXI+IHJ1ZnQgd2VubiBkZXIgcGxheWVyIGRhcyBub2NoCjxTZWhlcj4gdGVpbHQgRGlyIG1pdDogaW5uZXJoYWxiIG5lciBiZXN0aW1tdGVuIHplaXQgbWFjaHQgbWl0IGRlbSBkYW5rZQptZXJsaW4KRHUgdGVpbHN0IDxTZWhlcj4gbWl0OiAqa2ljaGVyKiAqcHJ1c3QqCgogICAgUm90aG9ybiBDYXJhZGhyYXMgLSBzdGlsbCBhbXVzZWQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoSGFkcmEsIDE4LiBPa3QgMTk5NiwgMTk6MzE6NDMpOgo+IFtCZWlsZWlkOktleV0gSGFldHRlIGljaCB6YXJkb3ogZG9jaCBudXIgbmllIGRlbiBWb3JzY2hsYWcgZ2VtYWNodCBkYXMKW0JlaWxlaWQ6S2V5XSBmZWluZGxpY2hlIGRhZW1vbmVuIG5pY2h0IG1laHIgYXVmIGVpbmVuIGhvZXJlbiBzb2xsdGVuISA6KQpbVG9kOkxhcnNdIFlyaW50cmkgaGF0IGdlcmFkZSBLZXkgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmViZW5lIGF1ZiBkZW4gZWJlbmVuIChIYWRyYSwgMTguIE9rdCAxOTk2LCAyMzoyNTo1NSk6Cls8TWFzdGVSPjpNcllldGkgbGFlc3N0IGRpZSBlYmVuZSAnY2F2ZV9vZWRkaScgZW50c3RlaGVuLl0KWzxNYXN0ZVI+Ok1yWWV0aSBsYWVzc3QgZGllIGViZW5lICdsYXRlX29lZGRpJyBlbnRzdGVoZW4uXQpbPE1hc3RlUj46TXJZZXRpIGxhZXNzdCBkaWUgZWJlbmUgJ2RhdGVfb2VkZGknIGVudHN0ZWhlbi5dCls8TWFzdGVSPjpNcllldGkgbGFlc3N0IGRpZSBlYmVuZSAnd3Vyc3QnIGVudHN0ZWhlbi5dCls8TWFzdGVSPjpNcllldGkgbGFlc3N0IGRpZSBlYmVuZSAnd2F2ZV9vZWRkaScgZW50c3RlaGVuLl0KWzxNYXN0ZVI+Ok1yWWV0aSBsYWVzc3QgZGllIGViZW5lICdoYXZlX29lZGRpJyBlbnRzdGVoZW4uXQpbPE1hc3RlUj46TXJZZXRpIGxhZXNzdCBkaWUgZWJlbmUgJ3NoYXZlLW9lZGRpJyBlbnRzdGVoZW4uXQpbPE1hc3RlUj46TXJZZXRpIGxhZXNzdCBkaWUgZWJlbmUgJ3NhdmVfb2VkZGknIGVudHN0ZWhlbi5dCls8TWFzdGVSPjpNcllldGkgbGFlc3N0IGRpZSBlYmVuZSAncXVpeicgZW50c3RlaGVuLl0KWzxNYXN0ZVI+Ok1yWWV0aV0gaGkhOykKWy4uLl0KWzxNYXN0ZVI+OkFuYWtpbl0gd2llc28gZ2VodCBpZ25vcmllcmUgbmljaHQgYXVmIG1hc3Rlcj8KWzxNYXN0ZVI+OlJpbmdvcl0gYmFubgpbPE1hc3RlUj46PE1hc3RlUj5dIEZ1ZXIgZm9sZ2VuZGUgU3BpZWxlciBiZXN0ZWh0IGVpbiBCYW5uOiBNcnlldGkgW25ld10sCgpkYXMgd2FycyBpcmdlbmR3aWUgbm9jaCBuaWNodCBzbyBnYW56IDspCgpoYWRyYSAtIGdyaW5zZW5kPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKnN0YXVuKiAoQ2FyYWRocmFzLCAyMC4gT2t0IDE5OTYsIDA0OjMzOjU3KToKcmtpdHpsZSBqdWNrb3MKSnVja29zIG1vZWNodGUgZ2VyYWRlIG5pY2h0IGdlc3RvZXJ0IHdlcmRlbi4KRGllIE1pdHRlaWx1bmcgd3VyZGUgdm9uIGVpbmVtIGtsZWluZW4gS29ib2xkIGluIEVtcGZhbmcgZ2Vub21tZW4uCkVyIHdpcmQgc2llIHNwYWV0ZXIgd2VpdGVybGVpdGVuIQoKTmEgZGFzIHd1ZXJkZSBpY2ggYWJlciBnZXJuZSBzZWhlbiwgd2llIGRlciBrbGVpbmUgS29ib2xkCkp1Y2tvcyBkYW5uIGtpdHplbHQhIAoKICAgICAgICAgICAgICAgZWluIFRlaWwgZGVzIE5lYmVsZ2ViaXJnZXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiprcmF0eiogKENhcmFkaHJhcywgMjAuIE9rdCAxOTk2LCAyMjozMzoyMyk6Cmt3ZXIgaW4gdGVsZWtvbQogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gU29uLCAyMC4gT2t0IDE5OTYsIDIyOjMxOjQwICg1IFRlaWxuZWhtZXIpCgpUYW5iLi4uLi4uLi4uLi4ucyAgVGFuYS4uLi4uLi4uLi4uLnMgIFhlZXJhbi4uLi4uLi4uLi56ICBKYXJpZWwuLi4uLi4uLi4ucwpZYXNtaW4uLi4uLi4uLi4uegoKV3Vzc3RlIGdhciBuaWNodCwgZGFzcyBlcyB2b24gZGVuZW4gc2Nob24gU3RhZWR0ZSBnaWJ0LgoKICAgICAgICAgICAncyBSb3Rob2VybmxlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDaHJhc2ggLi4uIChTaWx2YW5hLCAyMS4gT2t0IDE5OTYsIDEyOjAxOjE1KToKW0FsbGdlbWVpbjpBbGluZV0gQnVnc3QgRHUgd2llZGVyLCBCZW4/CiUgQ29ubmVjdGlvbiB0byBNRyBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgoKU293YXMgbmVubiBpY2ggZWluZGV1dGlnLi4uIDopCiAgU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IENocmFzaCAuLi4gKEJlbmRlaWdpZCwgMjEuIE9rdCAxOTk2LCAxMjozMDozMik6Cn4jISBybj1TaWx2YW5hIHJ0PTg0NTg5MjA3NQp+IyEgdGlkPTg0NTg5MjA3NQpNYWVubm8sIG51IGhhY2t0IGRhcyBHbGV0c2NoZXJmZWVjaGVuIG5pY2h0IG51ciBpbiBhbGxnZW1laW4gYXVmIG1pciBydW0KKHNvcnJ5LCBTaWx2YW5hISkgc29uZGVybiBhdWNoIG5vY2ggaGllci4gTWVpbmUgQW50d29ydCBrYW0gbGVpZGVyIG5pY2h0IG1laHIKZHVyY2g6IElDSCBXQVJTIE5JQ0hUISEhIQoKQmVuLCBncnVtbWVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQ2hyYXNoIC4uLiAoTXVwZmVsLCAyMS4gT2t0IDE5OTYsIDEzOjA0OjQ1KToKfiMhIHJuPUJlbmRlaWdpZCBydD04NDU4OTM4MzIKfiMhIHRpZD04NDU4OTIwNzUKSW1tZXIgd2VubiBpY2ggcmVpbmtvbW0uLi4KCiQgdXB0aW1lCkV2YWx1YXRpb24gdGltZTogMCBtcy4KUmVzdWx0OiAiMSBTdHVuZGUsIDUgTWludXRlbiB1bmQgNDQgU2VrdW5kZW4iCgooRGFzIFJlc3VsdGF0IGlzdCBtaXQgKy8tIDIwIG1pbiBBYndlaWNodW5nIGltbWVyIGRhc3NlbGJlLi4uIDotKQoKLW11cGZlbC0KUC5TLjogc28gcGxvZXR6bGljaCB3aWUgZGFzIE11ZCBpbW1lciB3ZWcgaXN0LCBzaWVodCBkYXMgZnVlciBtaWNoIG5hY2ggJ2tpbGwKLTknIGF1cyAoZ2xhdWJ0IG1pciwgaWNoIHdlaXNzIHdpZSBkYXMgYXVzc2llaHQgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBDaHJhc2ggLi4uIChHdWxkdWthdCwgMjEuIE9rdCAxOTk2LCAxMzozOTozMSk6Cn4jISBybj1NdXBmZWwgcnQ9ODQ1ODk1ODg1Cn4jISB0aWQ9ODQ1ODkyMDc1Cm1taCwgd2VubiBpY2ggcmVpbmtvbW1lIHVuZCBtYWNoZToKCi0tIHNuaXAgLS0KJCB1cHRpbWUKRHUgc2llaHN0IDEwMzQxNjkgTXVlbnplbi4KCiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNpbHZhbmEgbGFlc3N0IHN0ZXJiZW4gKFBhbXBlcnMsIDIxLiBPa3QgMTk5NiwgMTU6MTM6MTMpOgoKW1RvZDpMYXJzXSBMaGFuYSBkaSBMZW9uZHJvIGhhdCBnZXJhZGUgU2lsdmFuYSB1bWdlYnJhY2h0LgpbVG9kOkxoYW5hIGRpIExlb25kcm9dIExpZmFmYSB3aXJkIGluIEt1ZXJ6ZSBiZWdyYWJlbi4gV2lyIGJpdHRlbiB1bQpbVG9kOkxoYW5hIGRpIExlb25kcm9dIEJsdW1lbnNwZW5kZW4uCgoKSG1tLi4uIFNpbHZhbmEgc3RpcmJ0IHVuZCBMaWZhZmEgd2lyZCBiZWdyYWJlbi4uLiBEZXIgYXJtZS4gOikKClBhbXBlcnMuIExhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ3Jhc2ggZGllIDIuIChaZXBoeXIsIDIxLiBPa3QgMTk5NiwgMTY6NDM6NTMpOgpbQWxsZ2VtZWluOlJvbmRhXSBIaSEKW0FsbGdlbWVpbjpSb25kYV0gdWVyZ3MuLi4gRGVidWcgaXN0IGFiZXIgdm9sbC4uLgolIENvbm5lY3Rpb24gdG8gTUcgY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KLS0tLSBObyB3b3JsZCAtLS0tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWhlci5TY2htYXJybiAoQW5hdG9sLCAyMi4gT2t0IDE5OTYsIDAxOjA2OjU3KToKW1NlaGVyOklzbm9nb29kXSB3byBpc3QgZWlnZW50bGljaCBzZWhlcnRvciAyMz8KW1NlaGVyOkFubmloaWxhdG9yXSB1ZWJlcm0gc2NoYWNodCAsIHd1cnN0c2VoZXIKW1NlaGVyOkJ1bWJhc3RpY3VzXSBzb2xsIGluIG5lbSBzY2hhY2h0IGRlciBGR0hRVyBvZGVyIHNvIGFlaG5saWNoIHNlaW4KCldlaXNzIHp3YXIsIHdvIGRhcyBIUSBkZXIgRkdXIGlzdC4uLgpBbmF0b2wgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDIyLiBPa3QgMTk5NiwgMTE6MTQ6NDcpOgoKIkt1ZXNzZW4gaXN0IHdpZSBUZWUgdHJpbmtlbiBhdXMgZWluZW0gU2llYjogTWFuIGJla29tbXQgbmllIGdlbnVnLiIKKGNoaW5lc2lzY2gpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcm1hZ2VkZG9uLi4uIChQcmEsIDIyLiBPa3QgMTk5NiwgMTQ6Mjk6NDYpOgp0bSBhcm1hZ2VkZG9uIHdpZSBsYW5nZSBub2NoPwpEdSB0ZWlsc3QgQXJtYWdlZGRvbiBtaXQ6IHdpZSBsYW5nZSBub2NoPwpBcm1hZ2VkZG9uIHRlaWx0IERpciBtaXQ6IEVzIGlzdCBub2NoIHp1IGZydWVoISBQcm9iaWVycyAxMCBNaW51dGVuIHZvciBkZW0KQXJtYWdlZGRvbiB0ZWlsdCBEaXIgbWl0OiBFbmRlIG5vY2htYWwhCgoKV2VubiBpY2ggd2Vpc3MsIGRhc3MgZXMgbm9jaCAxMCBNaXV0ZW4gc2luZCwgYnJhdWNoIGljaCBuaWNodCBtZWhyIHp1IApmcmFnZW4uLi4gOi0oCgpQcmEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbWFuZGEgKEFsaW5lLCAyMi4gT2t0IDE5OTYsIDE1OjU2OjMxKToKCkRpZSBEYW1lIHNjaHJlY2t0IGF1Y2ggdm9yIG5pY2h0cyB6dXJ1ZWNrIQoKQW1hbmRhIGtvbW10IGluIGVpbmVyIFdvbGtlIHZvbiBQYXJmdWVtIGFuLgpBbWFuZGEgc2FndDogSGFsbG8gQmFnaGVlcmEhCkFtYW5kYSBncmFiYmVsdCBhbiBCYWdoZWVyYSBoYWVydW0uCkFtYW5kYSBzYWd0OiBXaWUgd2FlcnMgZGVubiBtaXQgdW5zLCBLbGVpbmVyPwpFaW4gVGF1c2VuZGZ1ZXNzbGVyIGtvbW10IGFuLgpBbWFuZGEgc2FndDogSGFsbG8gRWluIHRhdXNlbmRmdWVzc2xlciEKQW1hbmRhIHNhZ3Q6IFdpZSB3YWVycyBkZW5uIG1pdCB1bnMsIEtsZWluZXI/CgpBbGluZSAoc2NodWV0dGVsdCBudXIgbm9jaCBkZW4gS29wZikKClAuUy4gQmFnaGVlcmEgaXN0IG1laW4gS2F0ZXIhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW1hbmRhIChNb3Jnb3RoLCAyMi4gT2t0IDE5OTYsIDE2OjAyOjAyKToKfiMhIHJuPUFsaW5lIHJ0PTg0NTk5MjU5MQp+IyEgdGlkPTg0NTk5MjU5MQpnYW56IGtsYXIuIGFtYW5kYSBpc3QgbGVpY2h0IHNvZG9taXN0aXNjaCB2ZXJhbmxhZ3QuIGthdHplbiwKdGF1c2VuZGZ1ZXNzbGVyLi4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtbSwgc25vb3Agb2RlciBzby4uLiAoR3JpbW1ib3JuLCAyMy4gT2t0IDE5OTYsIDIxOjM5OjI5KToKCklzdCBzY2hvbiBuZSBXZWlsZSBoZXIsIGFiZXIgaWNoIGhhYiBncmFkZSBuaXggQmVzc2VyZXMgenUgdHVuOgoKSWNoIGhhYiBiZWkgZWluZW0gbXVkYmVrYW5udGVuIEtvZXRlciBnZXByYWhsdCwgZGFzcyBpY2ggdW5nZWxvZ2d0IHNub29wZW4Ka29lbm50ZS4gQWxzIEJld2VpcyBoYWIgaWNoIGlobSBzZWluZSBsZXR6dGUgQmVmZWhsc2VpbmdhYmUgZ2VzY2hpY2t0LCBlaW4KdGVpbGUgbWl0IG1pdCBkZW4gdWVibGljaGVuIDIgdHlwb3MvV29ydC4KRHUgdGVpbHN0IFJhbiogbWl0OiBOZXR0ZSB0eXBvcyBidHcuIDstKQpSYW4qIHRlaWx0IERpciBtaXQ6ICphbGNoKgoKSmEsIGRhcyBudXIgYW0gUmFuZGUuLi4KRGVyIE5hbWUgZGVzIFNwaWVsZXJzIGlzdCBuYXR1ZXJsaWNoIGF1cyBEaXNrcmV0aW9uc2dydWVuZGVuIHVua2VubnRsaWNoCmdlbWFjaHQuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFtYW5kYSAoQmFicywgMjQuIE9rdCAxOTk2LCAwMDoyNjozMCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTg0NTk5MjkyMgp+IyEgdGlkPTg0NTk5MjU5MQpEYXMgaXMgbm9jaCBnYXJuaXguIERpZSBkdW1tZSBOdXNzIGJlbGFlc3RpZ3Qgc29nYXIgTXVlbGxzY2hsdWNrZXIgc2V4dWVsbC4KTUctIE5QQ3MgZ2Vob2VyZW4gaGFsdCBzY2hvbiBtaXQgenVtIGRhZW1saWNoc3Rlbiwgd2FzIHdlbHR3ZWl0IHNvIGR1cmNoCmRlbiBDeWJlcnNwYWNlIHJlbm50Li4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBbWFuZGEgKFphcmRveiwgMjQuIE9rdCAxOTk2LCAwMzowOTo0Mik6Cn4jISBybj1CYWJzIHJ0PTg0NjEwOTU5MAp+IyEgdGlkPTg0NTk5MjU5MQpEYXMgUHJvYmxlbSBiZWkgZGVuIE5QQ3MgaXN0IHdvaGwsIGRhc3Mgc2llIG5pZSBtZWhyIFZlcnN0YW5kIGFscyBpaHIKUHJvZ3JhbW1pZXJlciBoYWJlbiBrb2VubmVuLiA6KSAKCkNpYW8gWmFyZG96CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJZGxlIGltIE5ldHp0b3RlbnJhdW0uLi4gOikgKFBhbXBlcnMsIDI0LiBPa3QgMTk5NiwgMDM6NTc6MjEpOgoKPiBEYXVlcmdhc3Qga29tbXQgYW4uCmp1YmVsCkR1IGp1YmVsc3QuCj4ga251ZGRlbCBkYXVlcmdhc3QKRHUga2FubnN0IHNvdmllbCBpY2ggd2Vpc3MgYXVzc2VyIExlYmV3ZXNlbiBudXIgVGVkZHlzIGtudWRkZWxuLgoKClBhbXBlcnMuIFZlcmdpc3N0IG1hbCB3aWVkZXIsIFdPIGVyIGVpZ2VudGxpY2ggaWRsZXQuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgogOikgKEFsaW5lLCAyNC4gT2t0IDE5OTYsIDA1OjA1OjA3KToKCldvIHNpY2ggQW5hdG9scyAydGllIHNvIHVlYmVyYWxsIHJ1bXRyZWlidC4uLgoKZ3JlaWZlIGluIGxvY2gKRHUgZ3JlaWZzdCBpbiBkYXMgTG9jaCB1bmQgZmluZGVzdCAuLi4gIE5pY2h0cy4KCkFsaW5lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdXNzdGVpZ2VuIGxhc3NlbiEgKFJhZmZpLCAyNC4gT2t0IDE5OTYsIDA3OjE5OjExKToKClJVTU1TISBEYXMgd2FyIGRhcyBaZWljaGVuIHp1bSBBdXNzdGVpZ2VuIQomJgpbdmVybGFzc2Ugc2NoaWZmXQpEYXMgZ2VodCBqZXR6dCBuaWNodC4KPiBEYXMgUGlyYXRlbnNjaGlmZiBsZWd0IGFtIFN0ZWcgYW0gVmVybG9yZW5lbiBMYW5kIGFuLgomJgpbdmVybGFzc2Ugc2NoaWZmXQo+CgpEYSBpc3QgbWFuIHNjaG9uIG1hbCAoZGFuayBsYWcpIHNjaG5lbGwsIHVuZCBkYW5uIGdlaHRzIGltbWVyIG5vY2ggbmljaHQgOikKCkdyaW5zCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaCBqZXR6dCBqYSBpbnRlbGxpZ2VudGVzIEtlcmxjaGVuLi4uIChBdG96LCAyNC4gT2t0IDE5OTYsIDA5OjA0OjQ4KToKdW50IGd1bm4KRXIgaXN0IGRlciBoaWVzaWdlIExldWNodHR1cm13YWVydGVyLgouICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwMCUKPiBmcmFnIGd1bm4gbmFjaCBsZXVjaHR0dXJtCkd1bm4gc2FndDogRGF2b24gd2Vpc3MgaWNoIG5pY2h0cy4KCgoKc29zbyBuYWphLCBtdXNzIGphIGVpbiB3aXJrbGljaCBndXRlciBMZXVjaHR0dXJtd2FlcnRlciBzZWluLi4uLgpBdG96CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgR2VsZCBtdXNzIHJhdXMuLi4gKFdhcmdvbiwgMjQuIE9rdCAxOTk2LCAxODoyMzozMyk6CiAgICBUb3BsaXN0ZSBkZXIgQmFyZWluemFobGVyCiAgICA9PT09PT09PT09PT09PT09PT09PT09PT09CgorLS0tKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSsKfCAgIHwgTmFtZSAgICAgICAgIHwgICBNdWVuemVuICB8CistLS0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKwp8IDEufCBOaWNodHMgICAgICAgfCAgICAzNDEzMDg4IHwKfCAyLnwgUmFmZmkgICAgICAgIHwgICAgMjI3MjkxMCB8CnwgMy58IEFuZHJlcyAgICAgICB8ICAgICAxNjgwOTkgfAouLi4KT2IgQW5kcmVzIG5vY2ggenVyIFNwaXR6ZW5ncnVwcGUgYXVmc2NobGllc3NlbiBrYW5uPwouLi4KfDEyLnwgR2libWlyZ2VsZCAgIHwgICAgICAzMDAwMCB8Ci4uLgpVbmQgZGVyIGhhdCB3b2hsIHNlaW5lbiBOYW1lbiBmYWxzY2ggZ2VzY2hyaWViZW4uLi4KICBXYXJnb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJvYmluIChSYWZmaSwgMjQuIE9rdCAxOTk2LCAxOToyODoyOSk6CgpSb2JpbiBzaW5ndDogSWNoIGZpbmQnIERpY2ggc2NoZWlzc2UsIHNvIHJpY2h0aWcgc2NoZWlzc2UgLi4uCgpHcmlucyAtIGRlciBoYXQgamEgZ2xhdHQgd2FzIG5ldWVzIGdlbGVybnQgOikKCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUm9iaW4gKE1haGF0bWEsIDI0LiBPa3QgMTk5NiwgMTk6Mjg6NDApOgp+IyEgcm49UmFmZmkgcnQ9ODQ2MTc4MTA5Cn4jISB0aWQ9ODQ2MTc4MTA5Cm5vZSwga2FubmVyIHNjaG9uIG5lIHdlaWxlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJvYmluIChSYWZmaSwgMjQuIE9rdCAxOTk2LCAxOToyOTowNyk6Cn4jISBybj1NYWhhdG1hIHJ0PTg0NjE3ODEyMAp+IyEgdGlkPTg0NjE3ODEwOQoKTmEgamEsIGFsc28gaWNoIGxhdXNjaCBpaG0gamEgYXVjaCBuaWNodCBhbHp1IG9mdCA6KQoKR3J1c3MKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN0dXBzZSAoRWx2bmlrLCAyNC4gT2t0IDE5OTYsIDIxOjMxOjQ3KToKSWNoIHdlaXNzIGphIGRhcyBkaWUgU3R1cHNlIHNjaHdhbmtlbiwgYWJlciBlcyBpc3Qgc2Nob24gbHVzdGlnIHdlbm4gbWFuIG1hbApuYWNoc2NoYXV0IDopCgo+IGtvc3RlbgpEaXIgZmVobGVuIGJpcyB6dXIgbmFlY2hzdGVuIFN0dWZlIG5vY2ggMTI1IFN0dWZlbnB1bmt0ZS4KPiBrb3N0ZW4KRGlyIGZlaGxlbiBiaXMgenVyIG5hZWNoc3RlbiBTdHVmZSBub2NoIDEyNCBTdHVmZW5wdW5rdGUuCj4gUmluZ29yIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCmtvc3RlbgpEaXIgZmVobGVuIGJpcyB6dXIgbmFlY2hzdGVuIFN0dWZlIG5vY2ggMTI5IFN0dWZlbnB1bmt0ZS4KPiBrb3N0ZW4KRGlyIGZlaGxlbiBiaXMgenVyIG5hZWNoc3RlbiBTdHVmZSBub2NoIDEyNyBTdHVmZW5wdW5rdGUuCj4ga29zdGVuClJpbmdvciBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uCkRpciBmZWhsZW4gYmlzIHp1ciBuYWVjaHN0ZW4gU3R1ZmUgbm9jaCAxMjkgU3R1ZmVucHVua3RlLgo+IGtvc3RlbgpEaXIgZmVobGVuIGJpcyB6dXIgbmFlY2hzdGVuIFN0dWZlIG5vY2ggMTI0IFN0dWZlbnB1bmt0ZS4KCkVsdm5payBncmluc3Qgc2ljaCBlaW5lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmlyb25pc2NoID8gKEFzbW9kaXMsIDI0LiBPa3QgMTk5NiwgMjE6MzQ6MzIpOgpbPE1hc3RlUj46Qm9tYmFkaWwgbGFlc3N0IGRpZSBFYmVuZSAnV3Vyc3RtYWdpZXInIGVudHN0ZWhlbi5dCls8TWFzdGVSPjpBY3JpbW9uIGxhZXNzdCBkaWUgRWJlbmUgJ1d1c3RzcGllbGVyJyBlbnRzdGVoZW4uXQpbPE1hc3RlUj46QWNyaW1vbiB2ZXJsYWVzc3QgYWxzIExldHp0ZXIgZGllIEViZW5lICdXdXN0c3BpZWxlcicsIHdvcmF1ZiBkaWVzZQogICAgICAgICAgc2ljaCBpbiBlaW5lbSBCbGl0eiBva3RhcmluZW4gTGljaHRzIGF1ZmxvZXN0Ll0KWzxNYXN0ZVI+OkFjcmltb24gbGFlc3N0IGRpZSBFYmVuZSAnV3Vyc3RzcGllbGVyJyBlbnRzdGVoZW4uXQpEdW1tYmF0eiBrcmFlY2h6dDogLi4uIGRvbGwgOikgLi4uIGRvbGwgOikgLi4uCgpBbHNvIGFiIHVuZCB6dSBoYWJlbiBkaWUgUGFwYWdlaWVuIGRpZSByaWNodGlnZW4ga29tbWVudGFyZSBkcmF1ZiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VyIGltbWVyIHN0cmViZW5kICwgZXRjIChKaW1kaWdyaXosIDI1LiBPa3QgMTk5NiwgMDI6MTM6NDEpOgpTemVuZToKCntcaXQgdW5zZXIgQksgKEJpcm5lIEtvaGwpIGJldHJpdHQgZGllIEJ1ZWhuZSBpbSBtaXR0ZWxhbHRlcmxpY2hlbgpPdXRmaXQ7IGVyIHZlcmJldWd0IHNpY2ggdGhlYWRyYWxpc2NoIHZvciBkZW0gUHVibGlrdW19CntcaXQgS29obCwgZGVyIHNpY2ggYXVmIHNlaW5lbiBGYXVzdCBNb25vbG9nIHZvcmJlcmVpdGV0LCByYWV1c3BlcnQKc2ljaCBub2NoIGV0d2FzfQoKRmF1c3Q6CiAgICAgSGFiZSBudW4gYWNoIFBvbGl0b2xvZ2llIGR1cnNjaGF1cyBzY2h0dWRpZXJ0IAogICAgbWlkIGhlaXNzZW0gQmVtdWVobi4KICAgIERhIHN0ZWggaXNjaCBudW4sIGlzY2ggYW1tYSBEb3IKICAgVW5kIGJpbiBzbyBnbHVnIGFscyB2aWUgenV2b3IuCiAgIEhlaXNzZSBLYW56bGVyLCBoZWlzc2UgRG9rdGEgZ2FyCiAgVW5kIGZ1ZWhyIG51biBzY2hvbiBhbiBkaWUgemVobiBKYWhyCiAgSGVyYXVmLCBoZXJhYiB1bmQgcXVlciB1bmQga3J1bW0KICAgIGdhbnogRGV1dHNjaGxhbmQgYW4gZGVyIE5hc2UgcnVtLgogICBNaXNjaCBibGFnZW4gdmVkZXIgU2tydXBlbCBub2NoIFp3ZWlmZWwKICAgZnVlcnNjaHRlIG1pc2NoIHdlZGVyIHZvciBWb2dlbCBub2NoIFRldWZlbAogICAgIHVuZCBkb2NoLCB3ZWlsIGFsbCBkYXMgbmlzY2h0cyBtZWhyIHphZWhsdCwKICAgIHdhbm4gd2VyZCBpc2NoIGVuZGxpc2NoIC4uIGFiZ2V3YWVobHQuLgogICAgZGFtaXQgaWNoIG5pY2h0IG1laHIgbWl0IHNhdXJlbSBTY2h3ZWlzcwogICAgenUgc2FnZW4gYnJhdWNoIHdhcyBpc2NoIG5pY2h0IHdlaXNzLi4uLi4uCgogICBXYXIgZGVzIGpldHp0IGd1dCA/IAp7XGl0IEtvaGwgdmVyYmV1Z3Qgc2ljaCBldHdhcyB1bmQgaG9sdCBzaWNoIG5vY2gKbWFsIFJhdHNjaGxhZWdlIHZvbiBIZWluZXIgR2Vpc3NsZXIsIFZvcmhhbmd9CgoKKmdhZWhuKiBpY2ggaGFiIGRhcyBudXIgZ2VzY2hyaWViZW4sIHdlaWxzIHNvIAplbmRsYW5nd2VpbGlnIHdhciB1bmQgVmFuaXIgZHJ1bSBnZWJldGVuIGhhdC4uLgoKc3RhbW10IHVlYnJ1Z2VucyBhdXMgSHVycmEhIERldXRzY2hsYW5kIHZvbiAxOTg5ID8KCk5hY2h0LCBKaW0gZGlHcml6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggaGFiIGFuZ3N0IChWYW5pciwgMjUuIE9rdCAxOTk2LCAwMjoyMToyMik6CkppbURpR3JpeiBmYWVocnQgaW4gZGVuIEJvZGVuLiBFaW4gRXJkYmViZW4gYnJlaXRldCBzaWNoIGlucyBSZWljaCBkZXIgCk5ldHp0b3RlbiBhdXMuCgpJY2ggZ2xhdWIgaWNoIGJsZWliIGxpZWJlciBub2NoIG5lbiBiaXNjaGVuIC4uLiB2b3IgRXJkYmViZW4gaGFiIGljaCBBbmdzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJY2ggaGFiIGFuZ3N0IChXb29keSwgMjUuIE9rdCAxOTk2LCAxMjo1NzowMCk6Cn4jISBybj1WYW5pciBydD04NDYyMDI4ODIKfiMhIHRpZD04NDYyMDI4ODIKdW5kIGthdW0gaGFiIGljaCBkZW4gQXJ0aWtlbCBnZWxlc2VuLi4uOgotLS0KSWNoIGhhYiBhbmdzdCAoVmFuaXIsIDI1LiBPa3QgMTk5NiwgMDI6MjE6MjIpOgoKSmltRGlHcml6IGZhZWhydCBpbiBkZW4gQm9kZW4uIEVpbiBFcmRiZWJlbiBicmVpdGV0IHNpY2ggaW5zIFJlaWNoIGRlciAKTmV0enRvdGVuIGF1cy4KCkljaCBnbGF1YiBpY2ggYmxlaWIgbGllYmVyIG5vY2ggbmVuIGJpc2NoZW4gLi4uIHZvciBFcmRiZWJlbiBoYWIgaWNoIEFuZ3N0Lgo+IEFsYW5vbiBnZWh0IGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgotLS0KCmtpY2hlcm5kLAp3b29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVcHMsIGRhIHdhciBlaW4gRmlsZSBuYW1lbnMgImF1YSIuLi4gKEFuYXRvbCwgMjUuIE9rdCAxOTk2LCAxOTo0NTo0Nik6Ci4uLm1pdCBmb2xnZW5kZW4gSW5oYWx0OgoKQWt0ZXVyZTogU2VoZXIgVCosIE1hZ2llciBHKgoKW1NlaGVyOlQqXSB3aWUgd2lyZCBtYW4gZWluZW4gdmVyc2VoZW50bGljaCBhbmdlem9nZW5lbiBSaW5nIHdpZWRlciBsb3M/CltTZWhlcjpHKl0gS29tbXQgYXVmIGRlbiBSaW5nIGFuLgpbU2VoZXI6RypdIE5vcm1hbGVyd2Vpc2UgbWl0ICJ6aWVoZSByaW5nIGF1cyIuCltTZWhlcjpHKl0gYXJnaCwgU3BpZWxlcmhpbGZlLi4uCgpBbmF0b2wsIHJhZXVtdCBncmFkZSBhdWYuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWVkZXIgZWluZXIgYXVzIGRlciBSZWloZSAiTWlzc2dsdWVja3RlIE1zZy1PdXRzIi4uLiAoQW5hdG9sLCAyNS4gT2t0IDE5OTYsIDIyOjIyOjM5KToKW1ZlcmxlZ3Qgdm9uIHdpdHplLCBBbmF0b2wsIDI1LiBPa3QgMTk5NiwgMjI6MjI6MjRdOgoKV29vZHkgc2FndDogV2VyIGlucyBSZWljaCBkZXIgTmV0enRvdGVuIGdlaHQsIGhhdCBtZWhyIHZvbSBMZWJlbi4KCklyZ2VuZHdpZSBnbGF1YmUgaWNoIGRhcyBuaWNodC4KQW5hdG9sIChubyBhbnN3ZXIpCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXaWVkZXIgZWluZXIgYXVzIGRlciBSZWloZSAiTWlzc2dsdWVja3RlIE1zZy1PdXRzIi4uLiAoV29vZHksIDI2LiBPa3QgMTk5NiwgMDA6MTI6MDIpOgp+IyEgcm49QW5hdG9sIHJ0PTg0NjI3NDk1OQp+IyEgdGlkPTg0NjI3NDk1OQoKV2VyIHdlaXNzLCB3ZWxjaGVzIExlYmVuIGRhbWl0IGdlbWVpbnQgaXN0Li4uCgplaW5mYWNoIHp1bSBOYWNoZGVua2VuLAp3b29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE1hbmdvLCAyNi4gT2t0IDE5OTYsIDAxOjEzOjQ5KToKCgoKCltBbGxnZW1laW46VGhpbmdvbF0gdHNjaHVlc3MKVGhpbmdvbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKW0FsbGdlbWVpbjpNYW5nb10gYnllIFRoaW5nb2wKOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMUCA2MCAgIE1QIDI3CltBbGxnZW1laW46TXJZZXRpXSBUc2Nob2UKW1RvZDpMYXJzXSBFaW4gV2VnaGllciBoYXQgZ2VyYWRlIE1yeWV0aSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBXZWdoaWVyXSBHb3RjaGEhCgoKClNvIHZpZWwgZGF6dSA7KS4KCk1hbmdvLCB3aWVkZXIgbWFsIGZpZXNzLgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgLSBtYWwgYW5kZXJzIChLcmV0ZWssIDI4LiBPa3QgMTk5NiwgMTQ6MjA6MjkpOgpOZXVsaWNoIGltIE1HLCBnbGVpY2ggbmFjaCBkZW0gQ29ubmVjdDoKCgpBbndlc2VuZGUgRXJ3YXJ0ZXRlOiBaZXBoeXIsIEJlbmRlaWdpZCB1bmQgTWV0aGVkcmFzLgovcGxheWVycy9rcmV0ZWs+IFtBbGxnZW1laW46S3JldGVLXSBIYWxsbGxsbG9lY2hlbiB6dXNhbW1lbiEKL3BsYXllcnMva3JldGVrPiBNZXRoZWRyYXMgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgoKCgpIdWNoISBXYXIgaWNoIGRhcz8KCgpLcmV0ZUsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgd2lua2Utd2lua2UgKEtyZXRlaywgMjguIE9rdCAxOTk2LCAxNTo0OToyMik6Ck1HJ2xlciBzaW5kIGRvY2ggZG9vZjoKCltBbGxnZW1laW46QWxpbmUgd2lua3QgYXJ0aWddCltBbGxnZW1laW46Qmx1ZW1lbCB3aW5rdCBhYmFydGlnXQpbQWxsZ2VtZWluOk1ldGhlZHJhcyB3aW5rdCB1bmFydGlnXQpbQWxsZ2VtZWluOktyZXRlSyB3aW5rdCBrcmFtcGZhcnRpZ10KCgoKSGF0IG1hbiBkYSBub2NoIFRvZW5lPyA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZkaXNrIChDYXR3ZWF6bGUsIDI4LiBPa3QgMTk5NiwgMTY6NDY6MjgpOgoKW0FsbGdlbWVpbjpTbHlmb3hdIEF1ZiBtZWluZW0gUGVudGl1bSBsYXVmZW4gdmllbGUgRG9zLVByb2dyYW1tZSBuaWNodCwgc2llCltBbGxnZW1laW46U2x5Zm94XSBrb21tZW4gbWl0IGRlciBGZWhsZXJtZWxkdW5nICdDUFUgbXVzdCBiZSBpbiBSZWFsIG1vZGUgdHUKW0FsbGdlbWVpbjpTbHlmb3hdIHJ1biB0aGlzIHByb2dyYW0nLiBXZWlzcyBqZW1hbmQgd2llIG1hbiBkaWVzZXMgUHJvYmxlbQpbQWxsZ2VtZWluOlNseWZveF0gYmVoZWJlbiBrYW5uPwpbQWxsZ2VtZWluOlJ1bWF0YV0gd2luOTU/CltBbGxnZW1laW46Q2F0d2VhemxlXSBlbW0zODYgYXVzbWFjaGVuPwpbQWxsZ2VtZWluOlNseWZveF0gSm8sIGhhYiBXaW45NSBsYXVmZW4uLi4KW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIGRhbm4gdmVyZ2lzc2VzIDopCltBbGxnZW1laW46SG9wZV0gV2luOTUgc3Vja3MKW0FsbGdlbWVpbjpSdW1hdGFdIGRhIGdpYnQgZXMgZWluIHByb2dyYW1tIG5hbWVucyBmZGlzawoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWdpZXIgdW5kIGlocmUgRGVidWctTWVsZHVuZ2VuIChTaWx2YW5hLCAyOC4gT2t0IDE5OTYsIDE4OjE1OjMyKToKR2VyYWRlIHBhc3NpZXJ0OgoKIyMjIyMgRWluZXIgYmV0cml0dCBkaWUgSG9laGxlLiAjIyMjIwoKQWgsIGphIC0gYWxsZXMga2xhci4uLgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhcnRpa2VsIHdpbmtlLXdpbmtlIChSYWZmaSwgMjguIE9rdCAxOTk2LCAyMTozMTowNyk6Cn4jISBybj1LcmV0ZWsgcnQ9ODQ2NTE0MTYyCn4jISB0aWQ9ODQ2NTE0MTYyCgpEdSBoYXN0IHdhcyB2ZXJnZXNzZW46CgouLi4gc2luZCBkb29mIFVORCBTVElOS0VOICEKCkdyaW5zCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3aWUgYXVmIGJlZmVobCA7KSAoV29vZHksIDI5LiBPa3QgMTk5NiwgMTk6MTE6NDEpOgoKRHUgc2Fnc3Q6IGdlaHQgd2VyPwo+ID4gTWFpbCBnZWh0IGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgoKKmtpY2hlcioKd29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmVuZGVpZ2lkPz8gKE1ldGhlZHJhcywgMjkuIE9rdCAxOTk2LCAxOTozMjo0MCk6CltBbGxnZW1laW46SmFuaWNlIGZpbmRldCwgZGFzIG1hbiBkaWUgYW53ZXNlbmRlIE1hZ2llcnNjaGFmdCBhYnNldHplbiBzb2xsdGVdCltBbGxnZW1laW46QmVuZGVpZ2lkXSBqYXUuIGlzdCBtYWwgd2llZGVyIFplaXQuLi4uCgoKQWJlciBoYWxsbywgd2FzIGlzdCBsb3MgbWl0IGRlbT8gICAgICAgICBNZXRoZWRyYXMKJiYKb2gKKnN1Y2gqIGFjaCwgZGEgc2luZCBzaWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFBQUFBQUFBQUFBQUFBQUFBQUFBUkdIIDopIChBbmF0b2wsIDMwLiBPa3QgMTk5NiwgMDM6MDI6NTQpOgoKRWluIEh1dHplbGdub20gaGF0IGdlcmFkZSBkaWUgVmVyYmluZHVuZyB6dSBNb3JnZW5HcmF1ZW4gZ2VrYXBwdC4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIGVpbmVtIEh1dHplbGdub20uCihzY2hhdSkgLi4uIEVpbiBIdXR6ZWxnbm9tIChuZXR6dG90KS4KRWluIEh1dHplbGdub20gd2VpbHQgd2llZGVyIHVudGVyIGRlbiBMZWJlbmRlbi4KRGVyIEh1dHplbGdub20gZmFlbmd0IGZ1ZXJjaHRlcmxpY2ggYW4genUgZmx1Y2hlbi4KRGVyIEh1dHplbGdub20gZ3J1bW1lbHQuCgpNb2RlbXByb2JsZW1lPwpBbmF0b2wsIGtpY2hlcnQgaGludGVyIFRvZXRlcnMgUnVlY2tlbgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3aWUgYXVmIGJlZmVobCA7KSAoV2FyZ29uLCAzMC4gT2t0IDE5OTYsIDEwOjQzOjM1KToKfiMhIHJuPVdvb2R5IHJ0PTg0NjYxMjcwMQp+IyEgdGlkPTg0NjYxMjcwMQpNYWlsIGlucyBSZWljaCBkZXIgTmV0enRvdGVuPwpIYXQgZGEgZW5kbGljaCBlaW5lciBlaW4gUG9zdGFtdCBhdWZnZXN0ZWxsdD8gOikKICBGcmFndCBzaWNoCiAgICBXYXJnb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJpZXJzY2h1ZXR0bGVyIHZzLiBaYXViZXJlciAoUm9jaHVzLCAzMC4gT2t0IDE5OTYsIDE4OjAwOjAyKToKW0FiZW50ZXVlcjpFaXNlbmJlaXNzXSBNdXNzIGFscyBCaWVyc2NodWV0dGxlciBqZWRlc21hbCBlaW4gZmFzcyBhdXNsaWZlcm4sCltBYmVudGV1ZXI6RWlzZW5iZWlzc10gd2VubiBpY2ggYXVmc3RlaWdlbiB3aWxsPwpbQWJlbnRldWVyOlN1bmZsb3dlcl0gamEgbGVpZGVyLCBhYmVyIGR1IGhhc3QgZGFubiBkaWUgbW9lZ2xpY2hrZWl0IGVpbmUgYXJ0CltBYmVudGV1ZXI6U3VuZmxvd2VyXSAic2VoZXJ0b3IiIHp1IGhhYmVuCltBYmVudGV1ZXI6U3VuZmxvd2VyXSBrb21tIGRvY2ggaW4gZGllIFphdWJlcmVyZ2lsZGUKW0JpZXJzY2h1ZXR0bGVyOkJydW5vXSBIZXkgWmF1YmVyZXIhIEhhYnQgaWhyIGV0d2Ega2VpbmVuIE51ZWNodGVybi1TcHJ1Y2g/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqZ3JvZWhsKiAoTWV0aGVkcmFzLCAzMC4gT2t0IDE5OTYsIDIwOjA0OjE3KToKW3F1aXo6R3V5YnJ1c2hdIG5lbm50IG1hbCB2aWVyIGdlYnJhZXVsaWNoZSB0ZW1wZXJhdHVyc2thbGVuLi4KW3F1aXo6TWV0aGVkcmFzXSBmYWhyZW5oZWl0LCBjZWxzaXVzLi4uIGtlbHZpbiB1bmQgb2VlZW1tbW1tbQo+IFtxdWl6OlJhbnRhbnBsYW5dIENlbHNpdXMgRmFocmVuaGVpdCBLZWx2aW4gdW5kIGFlaGhoCltxdWl6OlNlbWlyYV0ga2VsdmluLCBjZWxzaXVzLCBmYXJlbmhlaXQgYWVoaGgKW3F1aXo6TWV0aGVkcmFzXSBsYWNoCj4gW3F1aXo6RW5neXd1Y2tdIC1xIENlbHNpdXMsIEtlbHZpbiwgRmFocmVuaGVpdCwgUmVhdW11ci4KW3F1aXo6UmFudGFucGxhbl0gKnJvdGZsKgoKVW5kIGRhcyBhbGxlcyBzY2hvZW4gZ2xlaWNoemVpdGlnIDopCiAgICAgICAgICAgCiAgIEJlcmcgTWV0aGVkcmFzIC0gZGFzIEVuZGUgZGVzIE5lYmVsZ2ViaXJnZXMgdW5kIG5pY2h0IGRlcyBNb3JnZW5HcmF1ZW5zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadWVyaSB1bmQgZGFzIFVtcmVjaG5lbiAoU2lsdmFuYSwgMzEuIE9rdCAxOTk2LCAwODoxMTozNik6CltBbGxnZW1laW46WnVlcmlsZXVdIGFsc28gYmxvb2R5aGFycnksIGRpZXNlciBhbnJ1ZiBoZXV0ZSBrb3N0ZXRlIG1pY2ggY2EuCltBbGxnZW1laW46WnVlcmlsZXVdIDEyLjg4IHNmci4tLSAKW0FsbGdlbWVpbjpadWVyaWxldV0gZ2xlaWNoIHNjaG5lbGwgYXVzZ2VyZWNobmV0LCBoaWhpCltBbGxnZW1laW46WnVlcmlsZXVdIGRhcyBoZWlzc3Qgd2VubiBpY2ggIGpldHp0IGF1c2xvZ2dlLCB3YXMgaWNoIGphIGF1Y2ggdHVuCltBbGxnZW1laW46WnVlcmlsZXVdIHdlcmRlID06KSAKW0FsbGdlbWVpbjpCbG9vZHlIYXJyeV0gd2FzIGlzdCBkYXMgaW0gZG0gPyAKW0FsbGdlbWVpbjpadWVyaWxldV0gaG1tIGd1dGUgZnJhZ2UsIGljaCBnbGF1YiAxZG0gc2luZCBnbGF1YiAwLjg1ZG0gb2RlciBzbwpbQWxsZ2VtZWluOlp1ZXJpbGV1XSBtZWluZSBkYXMgdmFyaWVydCBqYSBuYWNoIGt1cnMsIGlzdCBhbHNvIG5pY2h0IGltbWVyCltBbGxnZW1laW46WnVlcmlsZXVdIGdsZWljaCAKW0FsbGdlbWVpbjpTaWx2YW5hXSAxZG0gPT0gMC44NWRtPwpbQWxsZ2VtZWluOlNpbHZhbmEgd3VuZGVydCBzaWNoLl0KW0FsbGdlbWVpbjpadWVyaWxldV0gbmUgMXNmci4tLSA9IDAuODVkbSAKW0FsbGdlbWVpbjpTaWx2YW5hXSBBaC4KW0FsbGdlbWVpbjpadWVyaWxldV0gbmVlIGlzdCBnbGF1YiB1bWdla2VocnQKW0FsbGdlbWVpbjpHb29uaWVdIGVjaHNlbnpldWdzIGRhZW1vbmVuaGF1dCBwZWl0c2NoZSB6dSB2ZXJzY2hlbmtlbgpbQWxsZ2VtZWluOkJsb29keUhhcnJ5XSBhbHNvIGNhIDEwIGRtIC0gZGFzIG1hY2hzdGUgYXVjaCBuaWNodCBqZWRlbiBUYWcsIGFlaApbQWxsZ2VtZWluOkJsb29keUhhcnJ5XSBOYWNodCA6KSAKW0FsbGdlbWVpbjpadWVyaWxldV0gamEgZ2VuYXUgZGVyIGZyYW5rZW4gaXN0IGphIHdlcnR2b2xsZXIKW0FsbGdlbWVpbjpadWVyaWxldV0gYWxzbyAxIERNID0gMC44NWRtIApbQWxsZ2VtZWluOlp1ZXJpbGV1XSBhcmdoIApbQWxsZ2VtZWluOlp1ZXJpbGV1XSAxZG0gPSAwLjg1c2ZyLi0KClNvLCBqZXR6dCBoYXQgZXIgbWljaCBzbyB2ZXJ3aXJydCwgZGFzcyBpY2ggYXVjaCBuaWNodCBtZWhyIHdlaXNzLCB3aWVydW1zCnJpY2h0aWcgaXN0Li4uCgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsYXIsIGltbWVyIGRvY2ggKENhcmFkaHJhcywgIDIuIE5vdiAxOTk2LCAwMDo1MzoxMik6CkR1IGhhc3QgRGljaCB6d2FyIGF1ZiBlaW5lIHNjaG9lbmUsIGVudHNwYW5uZW5kZSBUb2Rlc3NlcXVlbnogZ2VmcmV1dCwgYWJlcgpzb29vIHN0b2VyZW5kIGlzdCBlcyBuaWNodCwgc2llIG5pY2h0IHNlaGVuIHp1IG11ZXNzZW4uCkFiZXIgd2FzIGlzdCBkYXMgaGllciBkZW5uIGRhbm4gZWlnZW50bGljaD8KCiAgRGVyIEh5ZHJha29wZiB0cmlmZnQgQm9iYUZldHQgc2VociBoYXJ0LgogIERlciBIeWRyYWtvcGYgdHJpZmZ0IEJvYmFGZXR0IGhhcnQuCiAgRGVyIEh5ZHJha29wZiB0cmlmZnQgQm9iYUZldHQgaGFydC4KICBEZXIgSHlkcmFrb3BmIHNjaGxhZWd0IEJvYmFGZXR0IG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCiAgRGVyIEh5ZHJha29wZiB0cmlmZnQgQm9iYUZldHQgc2VociBoYXJ0LgogIERlciBIeWRyYWtvcGYgc2NobGFlZ3QgQm9iYUZldHQgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KTGFycyBzYWd0OiBMYXNzdCB1bnMgZGFzIGdlYnVlaHJlbmQgZmVpZXJuIQoKICAgICBBYmVyIGdlcm5lIGRvY2gsIExhcnMgICAqdHJvZXN0IEJvYmFmZXR0KgogICAgU2Nob2VuIHdlbm4gbWFuIGFsbGVzIG1pdGtyaWVndCBvYndvaGwgbWFuIHNjaG9uIHRvdCBpc3QuCgogICAgICAgICAgQ2FyYWRocmFzIGkuQS52LiBDZWxlYmRpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGV1dHNjaGUgQmFobiBBRyAoRnl0LCAgMy4gTm92IDE5OTYsIDAxOjE3OjAzKToKUm9lZGxpdHotSG9obmRvcmYgICAgMDIuMTEuICAgfCAgICAgICAxOTowMSB8IFJCICA4ODkxIEZCIEsyClN0b2xsYmVyZyhTYWNocykgICAgICAgICAgICAgIHwgMTk6MjIgMjA6MDQgfCBSQiAgODk5MyBGQiBLMgpDaGVtbml0eiBIYmYgICAgICAgICAgICAgICAgICB8IDIwOjQ5IDIwOjU3IHwgSVIgIDIzNzcgRlIKR2xhdWNoYXUoU2FjaHMpICAgICAgICAgICAgICAgfCAyMToyMiAyMTozNCB8IFNFIDE0ODczIEZCCkNoZW1uaXR6IEhiZiAgICAgICAgICAgICAgICAgIHwgMjI6MDggMjI6MjcgfCBTRSAgNDgzNiBGQgpNaXR0d2VpZGEgICAgICAgICAgICAwMi4xMS4gICB8IDIyOjQ1ICAgICAgIHwKUmVpc2V6ZWl0OiAgMzo0NCwgZmFlaHJ0IHRhZWdsaWNoLCBuaWNodCA1LiBPa3QsIDI0LiwgMjUuLCAzMS4gRGV6CkZhaHJwcmVpcyAyLiBLbC46IERNIDI3LDAwICgxLjogNDEsMDApOyBMYWVuZ2U6IDExOCBrbQpFaW4gQmFobmhvZiB3aXJkIG1laHJmYWNoIGR1cmNoZmFocmVuIQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKSG0sIGltbWVyaGluIGhhdCBlcyBkYXMgUHJvZ3JhbW0gZ2VtZXJrdCwgZGFzcyBpY2ggendlaW1hbCBkdXJjaCBDaGVtbml0egpmYWhyZS4uLgoKRGllIHNwaW5uZW4sIGRpZSBCYWhuZXIuLi4KCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnBlZ2FzdXMgaXN0IGdlbGRnaWVyaWcgKEhhZHJhLCAgMy4gTm92IDE5OTYsIDAzOjM2OjM4KToKUGVnYXN1cyBsYW5kZXQgaW4gRmVybndlc3QuCj5rbGV0dGVyIHJ1bnRlcgpQZWdhc3VzLCBkYXMgZmxpZWdlbmRlIFBmZXJkLCBuaW1tdCBEaXIgMjIyIE11ZW56ZW4gYWIuClp1ZnJpZWRlbiBiaWV0ZXQgZXIgRGlyIGVpbmVuIFBsYXR6IGF1ZiBzZWluZW0gUnVlY2tlbiBhbi4KRGEgYmlzdCBEdSBiZXJlaXRzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyIC4uLiAoQXNtb2RpcywgIDQuIE5vdiAxOTk2LCAxMTo0ODoyNSk6CkdlcmFkZSBlYmVuIHBhc3NpZXJ0OgpbWmF1YmVyZXI6TGF1cmluXSBrYW5uIG1hbCBqZW1hbmQgQmVuKiB2ZXJmcm9zY2hlbiA/IDwxMTo0NjowOD4KW1phdWJlcmVyOlBhdHJ5bl0ga2xhciBkb2NoIDopIDwxMTo0NjoyOT4KW1phdWJlcmVyOmVpbiBGcm9zY2ggaHVlcGZ0IHVtIExhdXJpbiBoZXJ1bSB1bmQgcnVmdDogVmVyc3VjaHMgZG9jaCwgdmVyc3VjaHMKICAgICAgICAgIGRvY2ghIDwxMTo0NjozOT5dCltaYXViZXJlcjpMYXVyaW4ga2ljaGVydCA6KSA8MTE6NDY6NDc+XQpbWmF1YmVyZXI6S2Fyb2x1c10gbGFjaCA8MTE6NDY6NTE+CltaYXViZXJlcjpTaWx2YW5hXSAqcHJ1c3QqIDwxMTo0Njo1Mz4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGV1dHNjaGUgQmFobiBBRyAoTG9jbywgIDQuIE5vdiAxOTk2LCAyMDozNToxMCk6Cn4jISBybj1GeXQgcnQ9ODQ2OTgwMjIzCn4jISB0aWQ9ODQ2OTgwMjIzClRqYSwgd2VubiBEdSBhdWNoIHVuYmVkaW5ndCB1ZWJlciBHbGF1Y2hhdSBmYWhyZW4gd2lsbHN0IC4uLgpEdSBzb2xsdGVzdCBlaWdlbnRsaWNoIHdpc3NlbiwgZGFzcyBQcm9ncmFtbWUgZ2VuYXUgZGFzIG1hY2hlbiwgd2FzIG1hbiBpaG5lbgpzYWd0LCB1bmQgbmljaHRzIGFuZGVyZXMuCi0gTG9jby4gRXhwZXJ0ZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGV1dHNjaGUgQmFobiBBRyAoUmFmZmksICA1LiBOb3YgMTk5NiwgMTE6Mjc6MzQpOgp+IyEgcm49TG9jbyBydD04NDcxMzYxMTAKfiMhIHRpZD04NDY5ODAyMjMKCkV4cGVydGVuID8gU2luZCBkYXMgbmljaHQgZGllIExldXRlIGRpZSBNaW5kZXN0ZW5zIG1hbCBhdXMgZWluZW0gRmVybmVuIExhbmQKa29tbWVuID8KCkdyaW5zCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogcGVnYXN1cyBpc3QgZ2VsZGdpZXJpZyAoRnl0LCAgNS4gTm92IDE5OTYsIDE4OjMwOjQwKToKfiMhIHJuPUhhZHJhIHJ0PTg0Njk4ODU5OAp+IyEgdGlkPTg0Njk4ODU5OAoKSWNoIGhhYiBkZW0gUHJvZ3JhbW0gKm5pY2h0KiBnZXNhZ3QsIGRhc3MgaWNoIHVlYmVyIEdsYXVjaGF1CmZhaHJlbiB3aWxsLiBadWdlZ2ViZW5lcm1hc3NlbiBhaGFiIGljaCBhdWNoIG5pY2h0IGdlc2FndCwgZGFzcyBpY2gKZGEgbmljaHQgaGlud2lsbCwgYWJlciBzb3dhcyBoYWx0IGljaCBmdWVyIHNlbGJzdHZlcnN0YWVuZGxpY2ggOikKCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogcGVnYXN1cyBpc3QgZ2VsZGdpZXJpZyAoR3JpbW1ib3JuLCAgNS4gTm92IDE5OTYsIDE4OjMyOjMyKToKfiMhIHJuPUZ5dCBydD04NDcyMTUwNDAKfiMhIHRpZD04NDY5ODg1OTgKCkljaCBrZW5uZSBHbGF1Y2hhdSBuaWNodCBwZXJzb2VubGljaCwgYWJlciBpY2ggd3VlcmRlIGVpbmZhY2ggbWFsIGJsaW5kCnVudGVyc2NocmVpYmVuLCBkYXNzIGVzIHNlbGJzdHZlcnN0YWVuZGxpY2ggaXN0LCBkYXNzIG1hbiBkYSBtb2VnbGljaHN0IG5pY2h0CmhpbndpbGwuLi4gOy0pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGV1dHNjaGUgQmFobiBBRyAoQ2F0d2VhemxlLCAgNS4gTm92IDE5OTYsIDE5OjA1OjUyKToKfiMhIHJuPUZ5dCBydD04NDY5ODAyMjMKfiMhIHRpZD04NDY5ODAyMjMKTmEgaXN0IGRvY2gga2xhci4KCldpciBoYW1tcyBEb2NoIFdpbnRlciB1bmQgZGllICdCYWhuZXInIHdvbGxlbiB2ZXJoaW5kZXJuLCBkYXMgZXMgRGlyIGF1ZgpkZXJlbiB6dWdpZ2VuIEJhaG5ob2VmZW4genUga2FsdCB3aXJkIDopCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnBhcnR5IGJlaSB0b2Q/IChTbnVnZ2xlLCAgNS4gTm92IDE5OTYsIDIzOjEzOjIwKToKW1RvZDpMaGFuYSBkaSBMZW9uZHJvXSBTbnVnZ2xlIHdpcmQgaW4gS3VlcnplIGJlZ3JhYmVuLiBXaXIgYml0dGVuIHVtCltUb2Q6TGhhbmEgZGkgTGVvbmRyb10gQmx1bWVuc3BlbmRlbi4KQXJiZWl0c3ppbW1lciBkZXMgVG9kZXMuCkVzIGdpYnQga2VpbmUgc2ljaHRiYXJlbiBBdXNnYWVuZ2UuCkRlciBHZWlzdCB2b24gUHJhLgpFaW5lIFNwZW5kZW5idWVjaHNlIGZ1ZXIgZGFzIEtyaWVnc2RlbmttYWwgZGVyIFRydmVzLgoKPiBWZXJ3aXJydCBzY2hhdXN0IER1IERpY2ggdW0uIFNjaGFkZSwgZGFzcyBEdSB0b3QgYmlzdCwgZGVubgpoaWVyIGZpbmRldCBvZmZlbnNpY2h0bGljaCBiYWxkIGVpbmUgUGFydHkgc3RhdHQuCgpCdW50ZSBHaXJsYW5kZW4gaGFlbmdlbiB1ZWJlcmFsbCBhbiBkZW4gV2FlbmRlbiB1bmQgbGFuZ2UgU3R1aGxyZWloZW4KYmVmaW5kZW4gc2ljaCByZWNodHMgdW5kIGxpbmtzIHZvbiBEaXIuCgoKCm5hamEsIFByYSBpcyBpbW1lcmhpbiBzY2hvbiBkYSB6dXIgUGFydHkgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHBlZ2FzdXMgaXN0IGdlbGRnaWVyaWcgKExvY28sICA2LiBOb3YgMTk5NiwgMTM6NTU6NDMpOgp+IyEgcm49Rnl0IHJ0PTg0NzIxNTA0MAp+IyEgdGlkPTg0Njk4ODU5OApEYW5uIGhhc3QgRHUgYWJlciBkZW0gUHJvZ3JhbW0gZWluZW4gYW5kZXJlbiBCZiBpbiBkZXIgTmFlaGUgdm9uIEdsYXVjaGF1IGFscwpXZWdlcHVua3QgZ2VnZWJlbj8gV2VubiBuaWNodCwgZ2liIG1pciBtYWwgZGllIGdhbnplIEVpbmdhYmUgenVtClJlcHJvZHV6aWVyZW4sIGljaCB3ZXJkZSBpbSBMYXVmIGRlciBXb2NoZSBvaG5laGluIG1hbCBlaW5lIExpc3RlIHZvbiBCdWdzIGFuCkhhQ29uIHNjaGlja2VuLgotIExvY28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHBlZ2FzdXMgaXN0IGdlbGRnaWVyaWcgKEhhZHJhLCAgNi4gTm92IDE5OTYsIDE1OjEyOjU1KToKfiMhIHJuPUxvY28gcnQ9ODQ3Mjg0OTQzCn4jISB0aWQ9ODQ2OTg4NTk4CnVtIHp1bSBzdWJqZWt0IHp1cnVlY2t6dWtlaHJlbi4KbGFuZGV0IHBlZ2FzdXMgYXVjaCBpbiBnbGF1Y2hhdT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVzc2JhZXIgPyAoUmFmZmksICA2LiBOb3YgMTk5NiwgMTU6NTc6MjUpOgoKSGFmZW4gdm9uIFBvcnQgVmFpbi4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9iZW4sIHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCkFnbmV0aGEgLSBkZXIgbGVja2VyZSBCcm90YXVmc3RyaWNoIGF1cyBTa2FuZGluYXZpZW4uCkVpbmUgSm9sbGUuCkJhcnJpcXVlIGRpZSBCaWVyc2NodWV0dGVsbWVpc3RlcmluLgo+IGlzcyBhZ25ldGhhCldpZSBiaXR0ZT8KPiBzY2htaXJlIGFnbmV0aGEgYXVmIGJyb3QKV2llIGJpdHRlPwpBZ25ldGhhIHZlcmxhZXNzdCBkaWUgQnVlaG5lIG5hY2ggV2VzdGVuLgpEdSBkZW5rc3QgICAuIG8gTyAoS29taXNjaGVyIEJyb3RhdWZzdHJpY2guKQoKCnNjaGVpbmJhciBuaWNodCBnZW5pZXNzYmFyLgoKR3JpbnMKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFc3NiYWVyID8gKEhhcmRpbCwgIDYuIE5vdiAxOTk2LCAxNjowMDo1Nyk6Cn4jISBybj1SYWZmaSBydD04NDcyOTIyNDUKfiMhIHRpZD04NDcyOTIyNDUKCidzY2htaWVyZScgc2NocmVpYnQgbWFuIGltIG5pY2h0LWJhanV3YXJpc2NoZW4gVGVpbCBkZXMKUmVjaHRzY2hyZWlicmVmb3JtZ2ViaWV0cyBoYWx0IG5pY2h0ICdzY2htaXJlJy4gRGVzd2VnZW4ga2FtIGRhcyAnV2llIGJpdHRlPycuCgotSGFyZGlsLiBIYXQgaW1tZXIgbmUgTG9lc3VuZyBmdWVyIGR1bW1lIEZyYWdlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRXNzYmFlciA/IChSYWZmaSwgIDYuIE5vdiAxOTk2LCAxNjowMzo0OCk6Cn4jISBybj1IYXJkaWwgcnQ9ODQ3MjkyNDU3Cn4jISB0aWQ9ODQ3MjkyMjQ1CgpIbW0gb2ssIERhcyBtdWQgc3RlaHQgamEgYW4gZGVyIE5vcmRzZWVrdWVzdGUgOikgLi4uIGFsbGVzIEtsYXIsIGFiZXIgd2FydW0KZGFyZiBpY2ggZGVuIEJyb3RhdWZzdHJpY2ggbmljaHQgYXVjaCBvaG5lIEJyb3QgZXNzZW4gPwoKR3JpbnMKSAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRXNzYmFlciA/IChMb2NvLCAgNi4gTm92IDE5OTYsIDE2OjA0OjI1KToKfiMhIHJuPVJhZmZpIHJ0PTg0NzI5MjYyOAp+IyEgdGlkPTg0NzI5MjI0NQpXZWlsIERpciBkYW5uIHNjaGxlY2h0IHdpcmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZWlzaGVpdCAoR3JpbW1ib3JuLCAgNi4gTm92IDE5OTYsIDE4OjAwOjQ5KToKCkRpZSBpbnRlbGxla3R1ZWxsIHByb2R1a3RpdnN0ZW4gSmFocmUgZWluZXMgTWVuc2NoZW4gc2luZCBkZWZpbml0aXYgendpc2NoZW4KZGVtIHZpZXJ0ZW4gdW5kIGRlbSAxOC4gTGViZW5zamFocjogTWl0IHZpZXIga2VubnQgZXIgYWxsZSBGcmFnZW4sIG1pdCAxOCBhbGxlCkFudHdvcnRlbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdC4gSGF0IGRpZSBBbnR3b3J0ZW4gc2Nob24gbWl0IGZ1ZW5mIGdld3Vzc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sICA2LiBOb3YgMTk5NiwgMTg6MDM6MDYpOgoKIkRpZSBMaWViZSBmb2VyZGVydCBkaWUgRWlmZXJzdWNodCB1bmQgZGllIEVpZmVyc3VjaHQgemVyc3RvZXJ0IGRpZSBMaWViZSIKKEtyaXN0aW5hKQoKRWhybGljaCwgZGFzIHN0ZWh0IHNvIGluIG1laW5lbSBLYWxlbmRlci4uLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHcmltbWJvcm4gZGVyIEF0aGVpc3QKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BydWNoIGRlciBXb2NoZSAoUm9uZGEsICA2LiBOb3YgMTk5NiwgMTg6MTM6MTQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg0NzI5OTc4Ngp+IyEgdGlkPTg0NzI5OTc4NgpEZWluZSBGcmV1bmRpbiBoZWlzc3QgS3Jpc3RpbmE/IFNvcnJ5LCBpbiBkZW0gZmFsbCBuYXR1ZXJsaWNoIERlaW5lIEV4Li4uCkJlaWxlaWQsCiAgICAgICBSb25kYQpQczogSWNoIGhhYiBuaWNodCBnZXNhZ3QsIG1pdCB3ZW0gaWNoIE1pdGxlaWQgaGFiZSwgR3JpbW0gPTspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZWZhZW5nbmlzaW5zZWwgKEphbmljZSwgIDYuIE5vdiAxOTk2LCAxOTowOTozNSk6ClNvd2FzOgogZnJhZ2UgWG9veG8gbmFjaCBhdWZnYWJlClhvb3hvIHNhZ3Q6IER1IG11c3N0IGRyZWltYWwgaGludGVyZWluYW5kZXIgZ2VnZW4gbWljaCBUaWMtVGFjLVRvZSBnZXdpbm5lbi4KWG9veG8gc2FndDogRWluIFVuZW50c2NoaWVkZW4gZ2lsdCB3ZWRlciBhbHMgU2llZyBub2NoIGFscyBOaWVkZXJsYWdlLiBTb2xsdGUKWG9veG8gc2FndDogaWNoIGdld2lubmVuLCBtdXNzdCBEdSB2b24gdm9ybmUgYW5mYW5nZW4uIER1IGJpc3QgaW1tZXIgenVlcnN0Clhvb3hvIHNhZ3Q6IGRyYW4uIAo+IGZyYWdlIFhvb3hvIG5hY2ggdGlwICAgIApYb294byBzYWd0OiBFcyBnaWJ0IGVpbmUgc2ljaGVyZSBTdHJhdGVnaWUuIAo+IGZyYWdlIFhvb3hvIG5hY2ggU3RyYXRlZ2llClhvb3hvIHNhZ3Q6IERhdm9uIGhhYmUgaWNoIG5vY2ggbmllIGdlaG9lcnQuCgpOYSBkYW5uOiBhdWYgZ2VodHMgIQoKSmFuaWNlIHF1ZXN0ZXQgd2llZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BydWNoIGRlciBXb2NoZSAoSmFyaWVsLCAgNy4gTm92IDE5OTYsIDAyOjI2OjM1KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NDcyOTk3ODYKfiMhIHRpZD04NDcyOTk3ODYKCipzZXVmeioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTcHJ1Y2ggZGVyIFdvY2hlIChKaW1kaWdyaXosICA3LiBOb3YgMTk5NiwgMTU6MDk6MTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg0NzI5OTc4Ngp+IyEgdGlkPTg0NzI5OTc4NgpIaSwKCm11c3MgaWNoIGdsZWljaCBlaW5lbiBkYXp1d2VyZmVuLCB3ZWlscyBncmFkIHBhc3N0IAoKRGllIEVpZmVyc3VjaHQgaXN0IGVpbmUgTGVpZGVuc2NoYWZ0LCAKZGllIG1pdCBFaWZlciBzdWNodCwgd2FzIExlaWRlbiBzY2hhZmZ0LgoKYXVjaCBzY2hvbiBhZWx0ZXIsIGFiZXIgZ3V0LgoKQ2lhbywKIEppbSBkaUdyaXoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hbCB3YXMgZHVtbWVzIChHcmltbWJvcm4sICA4LiBOb3YgMTk5NiwgMTk6NDk6MDkpOgoKdXNlciwgbTogRGVyIEJlZ3JpZmYsIGRlbiBDb21wdXRlcmV4cGVydGVuIGJlbnV0emVuIHdlbm4gc2llICJoaXJubG9zZXIKICAgICAgICAgSWRpb3QiIG1laW5lbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBtYWwgd2FzIGR1bW1lcyAoQW5hdG9sLCAgOC4gTm92IDE5OTYsIDE5OjQ5OjQ5KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NDc0Nzg5NDkKfiMhIHRpZD04NDc0Nzg5NDkKCkhtLCB3ZW5uIHNpZSB2b24gInVzZXIsIGYiIHJlZGVuLCB3YXMgbWVpbmVuIHNpZSBkYW5uPyA7KQoKQW5hdG9sLCB3aWxscyBnYXIgbmljaHQgd2lzc2VuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBc21vZGlzLCAgOS4gTm92IDE5OTYsIDE3OjEwOjM4KToKW0FsbGdlbWVpbjpIYXNpbSBzaXR6dCBub2NoIGltIFRhbCBkZXIgbHVwaW5lbiB1bmQgd2lsbCBkYSByYXVzLCBiZXZvciBkaWUgICAgCkh5ZHJhIGRhIGlzdC4uLl0KCltBbGxnZW1laW46QXNtb2Rpc10gIGRhbm4gc29sbHRlc3QgZHUgZGljaCBiZWVpbGVuLCBoYXNpbSA6KQoKW1RvZDpMYXJzXSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgSGFzaW0gdW1nZWJyYWNodC4KW1RvZDpFaW4gSHlkcmFrb3BmXSBoc3Nzc3NzCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdm9lZ2VsIChKYXJpZWwsIDEwLiBOb3YgMTk5NiwgMTY6NDg6NDEpOgpEYXMgaXN0IHdvaGwgZGFzIGJpc2hlciBzY2hvZW5zdGUgRGV0YWlsLCBkYXMgaWNoIGdlZnVuZGVuIGhhYmUuCgpBdXJvcmE6IAogdW50IHZvZWdlbAoKICAgICAgICB8XCAgICAgICAgICAgICAgfFwgICAgICAgICAgICAgIHxcICAgICAgICAgICAgICB8XAogICAgICAgLy4uXCAgdHdlZXQgICAgIC8uLlwgICB0d2VldCAgICAvLi5cICB0d2VldCAgICAgL0BAXCAgTXkgbWluZCEKICAgICAgKCAgPiApIHR3ZWV0ICAgICggID4gKSAgdHdlZXQgICAoICA+ICkgdHdlZXQgICAgKCAgPiApIEl0J3MgZ29uZQogICAgICB8ICAgIHwgdHdlZXQgICAgfCAgICB8ICB0d2VldCAgIHwgICAgfCB0d2VldCAgICB8ICAgIHwgYmxhbmshCiAgICAgLyB8ICB8ICAgICAgICAgIC8gfCAgfCAgICAgICAgICAvIHwgIHwgICAgICAgICAgLyB8ICB8CiAtLS0tLS1tLS1tLS0tLS0tLS0tLS0tbS0tbS0tLS0tLS0tLS0tLW0tLW0tLS0tLS0tLS0tLS1tLS1tLS0tLS0tLS0tLS0tLS0KICAgIC9fLyAgICAgICAgICAgICAvXy8gICAgICAgICAgICAgL18vICAgICAgICAgICAgIC9fLwoKSmFyaWVsICh0c2NoaXAgdHNjaGlwKS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9obmUgd29ydGUgLSBvaG5lIFNpbm4gKFF1YXNpbW9kbywgMTEuIE5vdiAxOTk2LCAxMzoyMzowNyk6ClllbmRpIHZlcm5laWd0IHNpY2gsIHN0b2xwZXJ0IHVuZCBmYWVsbHQgaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbW1tIChaYXJkb3osIDExLiBOb3YgMTk5NiwgMTY6MjM6MDkpOgoKPiBQaHlnb3MgcnVmdDogSEVSUiBTVEVIIFVOUyBCRUkKUm9jaHVzICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpVbmQgaWNoIGRhY2h0ZSBpbW1lciwgZGFzIHJ1ZnQgbWFuIG51ciwgd2VubiBSb2NodXMga29tbXQsIHVuZCBuaWNodCB1bSBpaG4KaGVyYmVpenVydWZlbi4uLiBzZWx0c2FtLCBzZWx0c2FtLi4uCgoKY2lhbyBaYXJkb3oKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLmdyYWRlIGltIE5ldHogZ2VmdW5kZW4gPTspIChSb25kYSwgMTEuIE5vdiAxOTk2LCAxNzo1NToxNCk6CkljaCBoYWJzIGdyYWRlIGluIGVpbmVyIE1haWxpbmctbGlzdCBmdWVyIE1pbmktRmFocmVyIGdlZnVuZGVuLi4uIG1hbmNoZSBrZW5udAptYW4gendhciBzY2hvbiAtIG5ldHQgc2luZCBzaWUgYWJlciBpbW1lciB3aWVkZXIuLi4KKioqKgpDb21pbmcgaG9tZSBJIGRyb3ZlIGludG8gdGhlIHdyb25nIGhvdXNlIGFuZCBjb2xsaWRlZCB3aXRoIGEgCnRyZWUgSSBkb24ndCBoYXZlLgoKVGhlIG90aGVyIGNhciBjb2xsaWRlZCB3aXRoIG1pbmUgd2l0aG91dCBnaXZpbmcgd2FybmluZyBvZiAKaXRzIGludGVudGlvbi4KCkkgdGhvdWdodCBteSB3aW5kb3cgd2FzIGRvd24gYnV0IEkgZm91bmQgb3V0IGl0IHdhcyB1cCB3aGVuIApJIHB1dCBteSBoZWFkIHRocm91Z2ggaXQuCgpJIGNvbGxpZGVkIHdpdGggYSBzdGF0aW9uYXJ5IHRydWNrIGNvbWluZyB0aGUgb3RoZXIgd2F5LgoKQSB0cnVjayBiYWNrZWQgdGhyb3VnaCB0aGUgd2luZHNoZWlsZCBpbnRvIG15IHdpZmUncyBmYWNlLgoKQSBwZWRlc3RyaWFuIGhpdCBtZSBhbmQgd2VudCB1bmRlciBteSBjYXIuCgpUaGUgZ3V5IHdhcyBhbGwgb3ZlciB0aGUgcm9hZCwgSSBoYWQgdG8gc3dlcnZlIGEgbnVtYmVyIG9mIAp0aW1lcyBiZWZvcmUgSSBoaXQgaGltLgoKSSBwdWxsZWQgYXdheSBmcm9tIHRoZSBzaWRlIG9mIHRoZSByb2FkLCBnbGFuY2VkIGF0IG15IAptb3RoZXItaW4tbGF3IGFuZCBoZWFkZWQgb3ZlciB0aGUgZW1iYW5rbWVudC4KCkluIGFuIGF0dGVtcHQgdG8ga2lsbCBhIGZseSwgSSBkcm92ZSBpbnRvIGEgdGVsZXBvbmUgcG9sZS4KCkkgaGFkIGJlZW4gc2hvcHBpbmcgZm9yIHBsYW50cyBhbGwgZGF5IGFuZCB3YXMgb24gbXkgd2F5IApob21lLiAgQXMgSSByZWFjaGVkIGFuIGludGVyc2VjdGlvbiBhIGhlZGdlIHNwcmFuZyB1cCAKb2JzY3VyaW5nIG15IHZpc2lvbiBhbmQgSSBkaWQgbm90IHNlZSB0aGUgb3RoZXIgY2FyLgoKSSBoYWQgYmVlbiBkcml2aW5nIGZvciA0MCB5ZWFycyB3aGVuIEkgZmVsbCBhc2xlZXAgYXQgdGhlIAp3aGVlbCBhbmQgaGFkIGFuIGFjY2lkZW50LgoKSSB3YXMgb24gbXkgd2F5IHRvIHRoZSBkb2N0b3Igd2l0aCByZWFyIGVuZCB0cm91YmxlIHdoZW4gbXkgCnVuaXZlcnNhbCBqb2ludCBnYXZlIHdheSwgY2F1c2luZyBtZSB0byBoYXZlIGFuIGFjY2lkZW50LgoKVG8gYXZvaWQgaGl0dGluZyB0aGUgYnVtcGVyIG9mIHRoZSBjYXIgaW4gZnJvbnQgSSBzdHJ1Y2sgdGhlIApwZWRlc3RyaWFuLgoKTXkgY2FyIHdhcyBsZWdhbGx5IHBhcmtlZCBhcyBpIGJhY2tlZCBpbnRvIHRoZSBvdGhlciAKdmVoaWNsZS4KCkFuIGludmlzaWJsZSBjYXIgY2FtZSBvdXQgb2Ygbm93aGVyZSwgc3RydWNrIG15IGNhciBhbmQgCnZhbmlzaGVkLgoKSSB0b2xkIHRoZSBwb2xpY2UgSSB3YXMgbm90IGluanVyZWQsIGJ1dCBvbiByZW1vdmluZyBteSBoYXQgCmZvdW5kIHRoYXQgSSBoYWQgZnJhY3R1cmVkIG15IHNrdWxsLgoKVGhlIHBlZGVzdHJpYW4gaGFkIG5vIGlkZWEgd2hpY2ggZGlyZWN0aW9uIHRvIHJ1biwgc28gSSByYW4gCm92ZXIgaGltLgoKSSBzYXcgYSBzbG93IG1vdmluZywgc2FkIGZhY2VkIGdlbnRsZW1hbiBhcyBoZSBib3VuY2VkIG9mZiAKdGhlIHJvb2Ygb2YgbXkgY2FyLgoKSSB3YXMgdGhyb3duIGZyb20gbXkgY2FyIGFzIGl0IGxlZnQgdGhlIHJvYWQgSSB3YXMgbGF0ZXIgCmZvdW5kIGluIGEgZGl0Y2ggYnkgc29tZSBjb3dzLgoqKioqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlLi4uIChHcmltbWJvcm4sIDExLiBOb3YgMTk5NiwgMTg6Mzg6MDEpOgoKLi4uaGV1dGUgc2Nob24gYW0gTW9udGFnOgoKIldlciB1bnNpY2hlciBhdWYgZGVuIEJlaW5lbiBpc3Qgc2NoaWVidCBkYXMgYXVmIGRpZSBVbmViZW5oZWl0ZW4gaW0gQm9kZW4uIgooSW5kaXNjaCkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW5hdG9sLCAxMS4gTm92IDE5OTYsIDIwOjI1OjI5KToKCltBYmVudGV1ZXI6SGFmaXNdIFdvIGlzdCBlaWdlbnRsaWNoIGJlaW0gQmVybmhhcmRpbmVyIGRpZSBCYWVyZW5ob2VobGU/CltBYmVudGV1ZXI6QXNtb2Rpc10gIHdlc3RsaWNoIGRhdm9uID8gCltUb2Q6TGFyc10gRWluIEJyYXVuYmFlciBoYXQgZ2VyYWRlIEhhZmlzIHVtZ2VicmFjaHQuCgpKYXUsIG11c3Mgd29obCBzbyBzZWluLCBBc21vZGlzLi4uCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYXJ0eW1vbnN0ZXIgKFJvY2h1cywgMTEuIE5vdiAxOTk2LCAyMToyMDoyOSk6CkFuYXRvbCBzYWd0OiBQYXJ0eW1vbnN0ZXIsIG11ZWxsZSBhdWYgW0RlYnVnXS4KQW5hdG9sIHdpcmZ0IERpciBlaW5lbiBEaWNrbWFubiBpbnMgR2VzaWNodC4KW0RlYnVnOlJ1bWF0YV0gRmVobGVyOiAiRXJyb3IgaW4gbG9hZGluZyBvYmplY3QiLCBPYmpla3Q6CltEZWJ1ZzpSdW1hdGFdIHBsYXllcnMvcnVtYXRhL29iai9kaWNrbWFubiM1ODY3MDQsIFByb2dyYW1tOgpbRGVidWc6UnVtYXRhXSAiL3BsYXllcnMvcnVtYXRhL29iai9kaWNrbWFubi5jIiwgWmVpbGUgNjQgKEFuYXRvbCkKQW5hdG9sIHdpcmZ0IERpciBlaW5lbiBEaWNrbWFubiBpbnMgR2VzaWNodC4KW0RlYnVnOlJ1bWF0YV0gRmVobGVyOiAiRXJyb3IgaW4gbG9hZGluZyBvYmplY3QiLCBPYmpla3Q6CltEZWJ1ZzpSdW1hdGFdIHBsYXllcnMvcnVtYXRhL29iai9kaWNrbWFubiM1ODY3MDQsIFByb2dyYW1tOgpbRGVidWc6UnVtYXRhXSAiL3BsYXllcnMvcnVtYXRhL29iai9kaWNrbWFubi5jIiwgWmVpbGUgNjQgKEFuYXRvbCkKQXJ0eSBzdG9scGVydCB1ZWJlciBzZWluZSBGdWVzc2UuCkFuYXRvbCB3aXJmdCBEaXIgZWluZW4gRGlja21hbm4gaW5zIEdlc2ljaHQuCltEZWJ1ZzpSdW1hdGFdIEZlaGxlcjogIkVycm9yIGluIGxvYWRpbmcgb2JqZWN0IiwgT2JqZWt0OgpbRGVidWc6UnVtYXRhXSBwbGF5ZXJzL3J1bWF0YS9vYmovZGlja21hbm4jNTg2NzA0LCBQcm9ncmFtbToKW0RlYnVnOlJ1bWF0YV0gIi9wbGF5ZXJzL3J1bWF0YS9vYmovZGlja21hbm4uYyIsIFplaWxlIDY0IChBbmF0b2wpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGFydHltb25zdGVyIChHcmltbWJvcm4sIDEyLiBOb3YgMTk5NiwgMDk6MTU6NDUpOgp+IyEgcm49Um9jaHVzIHJ0PTg0Nzc0MzYyOQp+IyEgdGlkPTg0Nzc0MzYyOQoKSG1tLCBnYWJzIGRhIG5pY2h0IGVpbmVuIEVNIGRlciB3YXMgZGFnZWdlbiBoYXR0ZSwgZGFzcyBpbiBTcGllbGVycnVicmlrZW4KUGZhZGUgYW5nZWdlYmVuIHdlcmRlbj8gRmluZyBnbGF1YiBpY2ggbWl0IGVpbmVtICJIIiBhbiwgaG9lcnQgbWl0IGVpbmVtICJhdGUiCmF1ZiB1bmQgcmVndCBzaWNoIGF1Y2ggc29uc3QgdWViZXIgYWxsZXMgbW9lZ2xpY2hlIGF1Zi4uLiA7LSkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkR1bW1lciBTcHJ1Y2ggKEdyaW1tYm9ybiwgMTIuIE5vdiAxOTk2LCAwOToxNjoyMyk6CgpIYXJkd2FyZSwgZjogRGVyIFRlaWwgZWluZXMgQ29tcHV0ZXJzIGRlbiBtYW4gdHJldGVuIGthbm4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyBtYWwgYW5kZXJzLi4uLiAoQW5hdG9sLCAxMi4gTm92IDE5OTYsIDE1OjE5OjUzKToKCltBYmVudGV1ZXI6Vm9vZG9vYmFuZV0gSWNoIGJpbiBnZXJhZGUgaW0gZGlhbW9uZCBwYXJrIHVuZCBoYXR0ZSBtaWNoCltBYmVudGV1ZXI6Vm9vZG9vYmFuZV0gZWlnZW50a2ljaCByaWVzaWcgZ2VmcmV1dCwgZGFzcyBpY2ggZWlubWFsIHVtIGRpZXNlcwpbQWJlbnRldWVyOlZvb2Rvb2JhbmVdIGJsb2VkZSBGZWxkIGdlcmFubnQgYmluIHVuZCB0cm90emRlbSBoYWJlIGljaCBzaWUgbmljaHQKW0FiZW50ZXVlcjpWb29kb29iYW5lXSBnZXNjaGFmdCwgd2FzIHNvbGwgaWNoIGRlbiBub2NoIHR1biA/CltBYmVudGV1ZXI6PFF1ZXN0Pl0gVm9vZG9vYmFuZSBoYXQgZ2VyYWRlIGVpbiBBYmVudGV1ZXIgYmVzdGFuZGVuOiBEaWFtb25kCltBYmVudGV1ZXI6PFF1ZXN0Pl0gQ2x1YgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUGFydHltb25zdGVyIChSb2NodXMsIDEyLiBOb3YgMTk5NiwgMTc6MzM6MDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg0Nzc4NjU0NQp+IyEgdGlkPTg0Nzc0MzYyOQpKYSwgaWNoIGdsYXViZSBhdWNoLCBkYXNzIEhhdGUgd2FzIGRhZ2VnZW4gaGFldHRlLAp3ZW5uIGljaCBkaWUgUklDSFRJR0VOIFBmYWRlIGFuZ2ViZW4gd3VlcmRlLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBQYXJ0eW1vbnN0ZXIgKFJ1bWF0YSwgMTIuIE5vdiAxOTk2LCAxNzo0Mzo1OCk6Cn4jISBybj1Sb2NodXMgcnQ9ODQ3ODE2Mzg2Cn4jISB0aWQ9ODQ3NzQzNjI5ClVuZCBpY2ggZGVidWdnZSB3aWUgYmxvZWQgLi4uIDotKQpSdW1hdGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFybWVyIEJhcmJhcmFyYSAoRGllZGVyLCAxMi4gTm92IDE5OTYsIDE5OjA1OjAwKToKQmFyYmFyYXJhIHRlaWx0IERpciBtaXQ6IEtlbm5zdCBEdSBlaW5lbiBXZWcgcmF1cyB2b24gZGVyIFdhc3NlcmViZW5lPwouLi4KLi4uCi4uLgpbVG9kOkxhcnNdIEVpbiBXYXNzZXJlbGVtZW50YXIgaGF0IGdlcmFkZSBCYXJiYXJhcmEgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGdhbnogdW52ZXJtaXR0ZWx0IChFbmd5d3VjaywgMTIuIE5vdiAxOTk2LCAxOToxMDozNCk6Cldlbm4gTWFnaWVybiBsYW5nd2VpbGlnIGlzdDoKCkdyaW1tYm9ybiB0ZWlsdCBEaXIgbWl0OiBIbW0sIGljaCBrb2VubnRlIG5hY2ggSGF1c2UgdW5kIG1pciBkb3J0IGRlbiBTY2hhZWRlbApHcmltbWJvcm4gdGVpbHQgRGlyIG1pdDogd2VncHVzdGVuLiBJcmdlbmR3ZWxjaGUga3JlYXRpdmVyZW4gVm9yc2NobGFlZ2U/CkdyaW1tYm9ybiB0ZWlsdCBEaXIgbWl0OiBIbW0sIHZpZWxsZWljaHQgaXN0IEdvZXRoZXMgRXJiZW4gbmljaHQgZ2FueiBzbwpHcmltbWJvcm4gdGVpbHQgRGlyIG1pdDogcGFzc2VuZCBmdWVyIGhpZXIgaW4gZGVyIEJlcmF0dW5nLiA6LSkKCk5vIGNvbW1lbnQgOy0pCgpFbmd5KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4gKFN1c2hpLCAxMy4gTm92IDE5OTYsIDAxOjUxOjE5KToKKmdhZWhuKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQYXJ0eW1vbnN0ZXIgKE1vcmdvdGgsIDEzLiBOb3YgMTk5NiwgMTA6MTQ6MDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg0Nzc4NjU0NQp+IyEgdGlkPTg0Nzc0MzYyOQpudXIgd2VubiBkZXIgcG9zdGVuZGUgPEVNIGlzdCB3aXJkIGdlbWVja2VydC4gOy0pCk0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuIChRaXRlc3MsIDEzLiBOb3YgMTk5NiwgMTI6MTM6NDIpOgpbVmVybGVndCB2b24gcHVpeiwgUWl0ZXNzLCAxMy4gTm92IDE5OTYsIDEyOjA4OjAwXToKCgogW1NlaGVyOk1hbmdvXSBtYWNodCB3ZXIgbWl0IGFuIGRlciB0YW50ZSBydW0/IDspCltTZWhlcjpMZWxsZG9yaW5dIGtsYXIKW1NlaGVyOkZhaG5kZXJdIGtsYXIKCgouLi4gYXMgdGltZSBnb2VzIGJ5IC4uLgoKCltUb2Q6TGFyc10gRWluIEh5ZHJha29wZiBoYXQgZ2VyYWRlIExlbGxkb3JpbiB1bWdlYnJhY2h0LgpbVG9kOkVpbiBIeWRyYWtvcGZdIGhzc3Nzc3MKX19fX19fXwoKamFhYWphYWEuLi4KClFJICBnZWh0IG5vY2ggbGFuZ2UgbmljaHQgenVyIHRhbnRlLi4uCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoVG9ldGVyLCAxMy4gTm92IDE5OTYsIDE0OjA2OjMxKToKS2Fma2EgdGVpbHQgRGlyIG1pdDogaXN0IGplZGVuZmFsbHMgbmUgZWNodCBtYWVjaHRpZ2Ugd2FmZmUuLi5rb3N0ZXQga2VpbmUgbXAKS2Fma2EgdGVpbHQgRGlyIG1pdDogb2RlciBzby4uLmFiZXIgaWNoIHRpcHBlIG1hbCBpcmdlbmR3YW5uIGJlYW10IGRpZSBlaW5lbgpLYWZrYSB0ZWlsdCBEaXIgbWl0OiBzZWxiZXIgd2VnIG9kZXIgc293YXMgOikKCltUb2Q6TGFyc10gRWluIEFydGVmYWt0IGhhdCBnZXJhZGUgS2Fma2EgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyAoQXNtb2RpcywgMTMuIE5vdiAxOTk2LCAxNzo0MjoyOSk6CgpbQWxsZ2VtZWluOkFuY2FsYWdvbl0gU2NocmVpYiBtYWwgZWluZXIgd2FzIGluIGRpZSB6ZWl0dW5nLi4uLgoKQml0dGUgc2FlaHIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3YXMgKFJhZmZpLCAxMy4gTm92IDE5OTYsIDE3OjQzOjMzKToKfiMhIHJuPUFzbW9kaXMgcnQ9ODQ3OTAzMzQ5Cn4jISB0aWQ9ODQ3OTAzMzQ5CkFzbW9kaXMgPT0gQ2Flc2FyID8KCkdyaW5zCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2FzIChBbmNhbGFnb24sIDEzLiBOb3YgMTk5NiwgMTc6NTA6MzkpOgp+IyEgcm49QXNtb2RpcyBydD04NDc5MDMzNDkKfiMhIHRpZD04NDc5MDMzNDkKS251ZGRlbHMhCkJyYXZvISBEQVMgbmVubmUgaWNoIHNlcnZpY2UhIApEYW5rZSBBc21vZGlzLCBkYXMgZ2lidCBuZW4gZXh0cmFrbnVkZGxlciEKSGVyemxpY2hzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbmNhbGFnb24KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRHJhY28ga251ZGRlbGxlbnNpcyBtYWpvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKemF1YmVyZXIgKExhdXJpbiwgMTMuIE5vdiAxOTk2LCAxODowMzo1Myk6CgouLi4KU2NocmVkZGVyIHJ1ZWxwc3QuClBsb2V0emxpY2ggYmVnaW5udCBlcyBoZWZ0aWcgenUgcmVnbmVuLgoKLi4uCgpIbW0sIGRlbiBaYXViZXIga2VubmUgaWNoIG5vY2ggbmljaHQsIHNhaCBhYmVyIGx1c3RpZyBhdXMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmViZW4gYWxzIGljaCByYXVjaGVuIHdhci4uLiAoSmFzcGVyLCAxMy4gTm92IDE5OTYsIDIxOjA1OjI5KToKTGlxdWkgdGVpbHQgRGlyIG1pdDogVHV0IHNpY2ggd2FzPyBbMjA6NTddCltUb2Q6TGFyc10gTGlxdWkgaGF0IGdlcmFkZSBMaXF1aSB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGViZW4gYWxzIGljaCByYXVjaGVuIHdhci4uLiAoUm9jaHVzLCAxMy4gTm92IDE5OTYsIDIxOjA5OjE5KToKfiMhIHJuPUphc3BlciBydD04NDc5MTU1MjkKfiMhIHRpZD04NDc5MTU1MjkKU3RpbW10LCBlciBoYXQgc2ljaCB3YXMgZ2V0YW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZWJlbiBhbHMgaWNoIHJhdWNoZW4gd2FyLi4uIChKYXNwZXIsIDEzLiBOb3YgMTk5NiwgMjE6MTA6NDApOgp+IyEgcm49Um9jaHVzIHJ0PTg0NzkxNTc1OQp+IyEgdGlkPTg0NzkxNTUyOQp1biBpY2ggc2FjaCBub2NoIC4uLgonc3RlbGwgZGljaCBpbiBkaWUga25laXBlIHVuZCBzYXVmIGJpcyBlciB1bWZhZWxsdCcuLi4KZGFzIGtsYXBwdCBzb2dhciBiZWkgZGVuIG1laXN0ZW4gZnJvZXNjaGlubmVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIChUd2lnZ3ksIDE0LiBOb3YgMTk5NiwgMTE6NDQ6MTEpOgoKPnNjaGF1CkR1IHN0ZWhzdCBwbG9ldHpsaWNoIGluIGVpbmVyIGtsZWluZW4gS2FtbWVyLCBkaWUgdm9uIGVpbmVyIHRydWViZW4KT2VsbGFtcGUgYXVzZ2VsZXVjaHRldCB3aXJkLiBKZXR6dCBlcmtlbm5zdCBEdSBhdWNoLCB3YXMgZGllc2VzIHVuaGVpbS0KbGljaGUgUmFzc2VsbiB2ZXJ1cnNhY2h0IGhhdCwgZGFzIERpciBzY2hvbiBpbSBHYW5nIGF1ZmdlZmFsbGVuIHdhci4KQW4gZGVyIFN1ZWR3YW5kIGhhZW5ndCBlaW4gU2tlbGV0dCBhbiBlaW5lciBLZXR0ZSB1bmQgd2lyZnQgc2ljaCBwYXVzZW4tCmxvcyBoaW4gdW5kIGhlci4gRHUgZXJzY2hyaWNrc3QgZnVlcmNodGVybGljaCwgYWxzIER1IGJlbWVya3N0LCBkYXNzIGVzCkRpY2ggYXVzIGxlYmVuZGVuIEF1Z2VuIGFuc3RhcnJ0LgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogbm9yZGVuLgpEaWUgTGVpY2hlIGVpbmVzIFNrZWxldHRzLgoKCnRzdHMsIG8uVy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1BR0lFUiEgKENoZWFzeSwgMTQuIE5vdiAxOTk2LCAxMjo0MDoxNik6Ck5hdHVyYWwgYm9ybiAnc2V4aXN0JyBlaW4gRnJvc2NoIHF1YWt0OiBRdWFhYWssIHF1YWFhYWFhaywKTmF0dXJhbCBib3JuICdzZXhpc3QnIGVpbiBGcm9zY2ggcXVha3Q6IHF1dXV1YWFhYWFhYWFhYWFhYWFhYWFhYWFrICEhCndlciBmcm9zY2gKVW5rbm93biBvciBhbWJpZ3VvdXMgbXVkbmFtZTogRnJvc2NoCj4ga3dlciBmcm9zY2gKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERvbiwgMTQuIE5vdiAxOTk2LCAxMjozOTozMiAoMSBUZWlsbmVobWVyKQoKSmFzcGVyLi4uLi4uLi4uLk0KCgpmaWVzIGdyaWVuc2VuZDoKLUNoZWFzeS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNQUdJRVIhIChKYXNwZXIsIDE0LiBOb3YgMTk5NiwgMTI6NDM6MjgpOgp+IyEgcm49Q2hlYXN5IHJ0PTg0Nzk3MTYxNgp+IyEgdGlkPTg0Nzk3MTYxNgpkYWJlaSBoYXR0ZSBpY2ggbnVyICdRVUFSSyA6KScgZ2VydWZlbgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgZnVlciBlaW4gTXVlbGxzY2hsdWNrZXIuLi4uIChNaWV6ZSwgMTQuIE5vdiAxOTk2LCAxNzo0MTo1Nik6CgoKZWJlbiBpbSBMYWRlbiB2b24gS2FyZWVtIEZla2VzaC4uLgoKa2l0emVsIG11ZWxsc2NobHVja2VyCgpEdSBraXR6ZWxzdCBkZW4gTXVlbGxzY2hsdWNrZXIgYW4gc2VpbmVtIEtpbm4uCkRlciBNdWVsbHNjaGx1Y2tlciB2ZXJzdWNodCwgc2ljaCB6dSBiZWhlcnJzY2hlbiwgbXVzcyBhYmVyIGRvY2ggbGFjaGVuLgoKCk1pZXplLCBncmluc3QgaW1tZXJub2NoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpad2VpdGllIGVudHRhcm50PyAoV2FyZ29uLCAxNS4gTm92IDE5OTYsIDEzOjAzOjUzKToKW0FsbGdlbWVpbjpSaGlhbm5vbl0gYmlzIGhldXRlIGFiZW5kCltBbGxnZW1laW46UmhpYW5ub24gd2lua3RdCltBbGxnZW1laW46UmhpYW5ub24gd2lua3RdClRvZXRlciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCkhtbW1tLi4uLiA6KQogICAgV2FyZ29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWndlaXRpZSBlbnR0YXJudD8gKFJoaWFubm9uLCAxNS4gTm92IDE5OTYsIDE2OjM2OjM3KToKfiMhIHJuPVdhcmdvbiBydD04NDgwNTk0MzMKfiMhIHRpZD04NDgwNTk0MzMKCkphLCBXYXJnb24/IFdhcyB3aWxsc3QgRHUgdW5zIGRhbWl0IHNhZ2VuPyAqZnJldW5kbGljaGVzIExhZWNoZWxuKgoKUmhpLAp3ZXR6dCBNZXNzZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpIHZlcmJpYmJzY2ggKENhcmFkaHJhcywgMTcuIE5vdiAxOTk2LCAyMjoxMTowNSk6CkFyYW1vcyB0ZWlsdCBEaXIgbWl0OiBXYXMgaXN0IGRlbm4gbWl0IGRpciBsb3M/Ci4uLgpbVG9kOkxhcnNdIEVpbiBCYWtlbW9ubyBoYXQgZ2VyYWRlIEFyYW1vcyB1bWdlYnJhY2h0LgoKICAgIFNjaG9lbiwgZXMgZ2lidCBhdWNoIG5vY2ggTGV1dGUgZGllIHNpY2ggbmljaHQgbnVyIHVtIHNpY2ggCiAgICBzZWxic3Qga3VlbW1lcm4uIDopICp0cm9lc3QqCgogICAgICBSb3Rob3JuIENhcmFkaHJhcyAtIGRlciBlcnN0ZSBhbGxlciBCZXJnZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobmFyY2ggKFN1c2hpLCAxOC4gTm92IDE5OTYsIDAzOjMyOjQxKToKU2Nob24gd2llZGVyIG5pY2h0cyBsb3MgaGllci4gV2FydW0gc2NocmVpYnQgbmllbWFkIHdhcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpZSBnZXNhZ3QgLi4uIChNYW5nbywgMTguIE5vdiAxOTk2LCAxNDowNjo1Nyk6CgoKICBbV3Vyc3RzZWhlcjpNb3JnYXIgdWViZXJnaWJ0IGRpZSBFYmVuZSBhbiBlaW4gQnVtZXJhbmcuXQoKCgpFaW4gQnVtZXJhbmcuCgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpZYW50cm8gLSBIZWlzc2dlbGllYnQ/IChQYW1wZXJzLCAxOC4gTm92IDE5OTYsIDE1OjI3OjI5KToKCltBbGxnZW1laW46WWFudHJvXSBndWdndWdzCltBbGxnZW1laW46R2lubmV2cmFdIGloaGhnaXR0aWdpdHQuCgpQYW1wZXJzLiBLaWNoZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmVydGEuLi4gKExhcmllbCwgMTguIE5vdiAxOTk2LCAxNzowMDozMik6Ck5ldWxpY2gsIGluIFdpbGhlbG1zYnVyZzoKPmZyYWdlIGJlcnRhIG5hY2ggd2lsaGVsbXNidXJnCkJlcnRhIHNhZ3Q6IEhhZT8KClNvIHN0ZWxsdCBtYW4gc2ljaCBkaWUgcGZsaWNodGJld3Vzc3RlIEJ1ZXJnZXJtZWlzdGVyaW4gdm9uIGhldXRlIHZvci4uLgpTZWxic3QgbWVpbiBDU1UtQnVlcmdlcm1laXN0ZXIgd2Vpc3MsIHdpZSBzZWluZSBTdGFkdCBoZWlzc3QhCgotIExhcmllbCBGYWxrZW5mbHVnLCBJbnF1aXNpdG9yIHZvbiBUYXJhbWlzCiAgKExlaWNodCB2ZXJ3dW5kZXJ0Li4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW5keSBpc3Qgc2Nob24gUHJvcGhldD8gKENhcmFkaHJhcywgMTguIE5vdiAxOTk2LCAxNzo1NDowNik6CiAgQW5keSB2ZXJmZWhsdCBEaWNoLgpBbmR5IHNhZ3Q6IEthbm4gbWFuIGRlbiB0b2V0ZW4/CkR1IHdpcmZzdCBlaW5lbiBGZXVlcmJhbGwgbmFjaCBBbmR5LgogIER1IHplcnNjaG1ldHRlcnN0IEFuZHkgaW4ga2xlaW5lIFN0dWVja2NoZW4uCkFuZHkgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KCiAgICAgICAgICAgICAgS2xhYWFhciBrYW5uIG1hbi4gOikKCiAgICBFaW4ga2xlaW5lciBCZXJnIC0gbWl0IEZldWVyIHN0YXR0IG1pdCBFaXMgJiBTY2huZWUgd2VyZmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWndlaXRpZT8gKFBhbXBlcnMsIDE4LiBOb3YgMTk5NiwgMTc6NTc6MzYpOgoKR2FzdDIgcnVmdDogRGlkaSEKW0FiZW50ZXVlcjpBc21vZGlzXSAgam8gOikKCgpwYW1wZXJzLiB3dXNzdGUgbmljaCwgZGFzcyBkaWRpIGVpbiBhc21vZGlzendlaXRpZSBpcy4uIChvZGVyIHVtZ2VrZWhydD8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWndlaXRpZT8gKEFzbW9kaXMsIDE4LiBOb3YgMTk5NiwgMTk6MDc6MTgpOgp+IyEgcm49UGFtcGVycyBydD04NDgzMzYyNTYKfiMhIHRpZD04NDgzMzYyNTYKSWhoLCB2ZXJnbGVpY2ggbWljaCBuaWNodCBtaXQgRGlkaSwgZGVtIFNjaG1pZXJmaW5rICEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW5lIFNlZWZhaHJ0IGRpZSBpc3QgbHVzdGlnIChSYWZmaSwgMTguIE5vdiAxOTk2LCAyMjo1Mjo1Mik6CgpIYWZlbiB2b24gUG9ydCBWYWluLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb2Jlbiwgc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KRGllIE0vUyBMb2ZvdGVuLgpFaW4gRmxvc3MuCj4gYmV0cmV0ZSBwb3N0c2NoaWZmCkRhcyBGbG9zcyBsZWd0IGFiLgpBdWYgRGVjayBkZXIgTS9TIExvZm90ZW4uCkVzIGdpYnQga2VpbmUgc2ljaHRiYXJlbiBBdXNnYWVuZ2UuCj4KRWluIEZlbHNicm9ja2VuIHJhZ3QgYXVzIGRlbSBXYXNzZXIsIGFiZXIgZGVyIEthcGl0YWVuIHNjaGVpbnQgZGVuIHNpY2hlcmVuCldlZyB2b3JiZWkgenUga2VubmVuLgpEdSBoYXN0IGpldHp0IDE3OCBMZWJlbnNwdW5rdGUgdW5kIDIgTWFnaWVwdW5rdGUuCkR1IGhvZXJzdCBlaW5lIER1cmNoc2FnZTogIlZlcmVocnRlIFBhc3NhZ2llcmUsIGRpZSBNL1MgTG9mb3RlbiBsZWd0IG51bgogaW4gUG9ydCBWYWluIGFiLiBXaXIgd3VlbnNjaGVuIGVpbmUgYW5nZW5laG1lIEZhaHJ0LiIKRGFzIFNjaGlmZiBiZWZpbmRldCBzaWNoIGpldHp0IGF1ZiBob2hlciBTZWUuCgoKSXN0IHNjaG9uIGludGVyZXNzYW50IHdpZSBkZXIgS2FwaXRhZW4gZGVuIFNpY2hlcmVuIHdlZyB3ZWlzcyB3YWVyZW5kIGRhcwpzY2hpZmYgZmVzdCB2ZXJ0YWV1dCBpbSBoYWZlbiBsaWVndC4KCkdydXNzCkgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbmR5IGlzdCBzY2hvbiBQcm9waGV0PyAoR2FzdDEsIDE5LiBOb3YgMTk5NiwgMDA6MjI6MTQpOgp+IyEgcm49Q2FyYWRocmFzIHJ0PTg0ODMzNjA0Ngp+IyEgdGlkPTg0ODMzNjA0Ngo+IEVpbiBrbGVpbmVyIEJlcmcgLSBtaXQgRmV1ZXIgc3RhdHQgbWl0IEVpcyAmIFNjaG5lZSB3ZXJmZW5kCgpFaW4gVnVsa2FuIHNvenVzYWdlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhvZWxsZW5mZXVlciAoQm9uaSwgMTkuIE5vdiAxOTk2LCAwNzo1ODozMik6CnVudCBob2VsbGVuZmV1ZXIKU2VpIGJlc3NlciB2b3JzaWNodGlnIGRhbWl0LCB3ZW5uIER1IGRhcyBhbnp1ZW5kZXN0LCBzb2xsdGVzdCBEdQptb2VnbGljaHN0IHdlaXQgd2VnZ2VoZW4uIEVpbmUgWnVlbmRzY2hudXIgaXN0IGFtIEhvZWxsZW5mZXVlcgpiZWZlc3RpZ3QsIER1IHNjaGFldHp0IGRhc3Mgc2llIGV0d2EgLTExOCBTZWt1bmRlbiBicmVubmVuIGtvZW5udGUuCgpaaXNjaGhoaC4uLi4uClppc2NoaGhoLi4uLi4KWmlzY2hoaGguLi4uLgpaaXNjaGhoaC4uLi4uClppc2NoaGhoLi4uLi4KCkJvbmkgc3ByZW5ndCBzaWNoIG11c2lrYWxpc2NoLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBob2VsbGVuZmV1ZXIgKE1vcmdvdGgsIDE5LiBOb3YgMTk5NiwgMDc6NTk6NTcpOgp+IyEgcm49Qm9uaSBydD04NDgzODY3MTIKfiMhIHRpZD04NDgzODY3MTIKQVJHTCBCT09PT0lJSUlJTk5HR0dHICEhISEhCldpZSB3YXJlIGVzLCB3ZW5uIER1IG5lbiB2aWVydGVuIHBhcmFtZXRlciBiZWkgRGVmZW5kIGFuZ2lic3QgPz8/PwpTbyBlaW4gZW5lbXkgd2FlciBzY2hvbiBuaWNodCB1ZWJlbCA7LSgoCk0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBob2VsbGVuZmV1ZXIgKEZ5dCwgMTkuIE5vdiAxOTk2LCAxMDowNDowOSk6Cn4jISBybj1Cb25pIHJ0PTg0ODM4NjcxMgp+IyEgdGlkPTg0ODM4NjcxMgoKSG0sIGVyaW5uZXJ0IG1pY2ggaXJnZW5kd2llIGFuIGRpZSB6d29lbGYgRmFlc3NlciBEeW5hbWl0IGltCkx1cGluZW50YWwgKnNldWZ6KgoKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhvZWxsZW5mZXVlciAoQm9pbmcsIDE5LiBOb3YgMTk5NiwgMTQ6NDE6MTMpOgp+IyEgcm49Qm9uaSBydD04NDgzODY3MTIKfiMhIHRpZD04NDgzODY3MTIKTWVya3d1ZXJkaWcgLi4uIGljaCBkYWNodGUgZGVuIGJ1ZyBoYWV0dGUgaWNoIHNjaG9uIHZvciBKYWhyZW4gCnRhdXNnZW1hY2h0IC4uLiA6KQpOYWphIC4uLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGhvZWxsZW5mZXVlciAoWmlubywgMTkuIE5vdiAxOTk2LCAxNDo1OToyNik6Cn4jISBybj1GeXQgcnQ9ODQ4Mzk0MjQ5Cn4jISB0aWQ9ODQ4Mzg2NzEyCldpZXNvIDEyLCBGeXQ/IDExIGhhZXR0ZW4gZG9jaCBnZXJlaWNodC4gSW1tZXIgZGllc2UgVmVyc2Nod2VuZHVuZy4KTWFoYXRtYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGlyZWt0dWViZXJ0cmFndW5nPyAoQXJ0eSwgMTkuIE5vdiAxOTk2LCAxNTo1OTozNCk6CgpIZXV0ZSAyMy4wMCBVaHIgaW4gTkRSOgoKICAgICAgTWFzc3Nha2VyIGltIE1vcmdlbmdyYXVlbiAKCiAgIFdhcyBlcyBzbyBhbGxlcyBpbSBGZXJuc2VoZW4gZ2lidC4uLgoKCiBBcnR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGlyZWt0dWViZXJ0cmFndW5nPyAoTmlyZGF2bywgMTkuIE5vdiAxOTk2LCAxNzowMDowNyk6Cn4jISBybj1BcnR5IHJ0PTg0ODQxNTU3NAp+IyEgdGlkPTg0ODQxNTU3NAogIEF1amEsIGRhcyBtdXNzIGljaCBtaXIgYW5zZWhlbiEgSWNoIHdvbGx0ZSBkb2NoIGltbWVyIHNjaG9uIG1hbCBsaXZlIHVuZCBpbgpGYXJiZSBzZWhlbiwgd2llIE9ya3RvZXRlciBkYXMgZ3Jvc3NlIE9ya2xhZ2VyIGF1c3JhZXVtdCwgb2RlciB3aWUgc2ljaCBlaW4KSGF1ZmVuIFNlaGVyIG1pdCBkZXIgSHlkcmEgaGVydW1wcnVlZ2VsdCwgZ2FueiBhYmdlc2VoZW4gdm9uIGRlbSB2aWVseml0aWVydGVuCk1lZXIgYXVzIEJsdXQsIHdhcyBkYSBpbW1lciBhbSBFbmRlIGtvbW10LiBJY2ggaGF0dGUgbWljaCBpbW1lciBzY2hvbiBnZWZyYWd0LAp3YXJ1bSBkaWUgZGFubiBuaWNodCBpbiBkaWVzZW0gTWVlciBlcnNhdV5IXkheSHRyaW5rZW4uLi4KCiAgICAgICAgIE5pcmRhdm8sIGJsdXRnaWVyaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGlyZWt0dWViZXJ0cmFndW5nPyAoSGFkcmEsIDE5LiBOb3YgMTk5NiwgMTc6MzA6NDcpOgp+IyEgcm49QXJ0eSBydD04NDg0MTU1NzQKfiMhIHRpZD04NDg0MTU1NzQKaXN0IGRhcyBkaWUgd2llZGVyaG9sdW5nIGRlcyBiZXJpY2h0cyB1ZWJlciBkaWUgc3ByZW5ndW5nIGRlcyB3b2xwaWNsdWJzPwoKYWIgbmFjaCBzY2htYXJybiAtLS0gb2gsIGRhIHNpbmQgd2lyIGphIHNjaG9uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGhvZWxsZW5mZXVlciAoTXVwZmVsLCAxOS4gTm92IDE5OTYsIDE4OjA4OjQ0KToKfiMhIHJuPU1vcmdvdGggcnQ9ODQ4Mzg2Nzk3Cn4jISB0aWQ9ODQ4Mzg2NzEyCgpBUkdMIE1PUkdPT09PT09PT09USCAhISEhIQpEYXMgZ2Vob2VydCB1ZWJlcmhhdXB0IG5pY2h0IGluIGRpZXNlIFJ1YnJpawoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaW5lIFNlZWZhaHJ0IGRpZSBpc3QgbHVzdGlnIChMb2NvLCAxOS4gTm92IDE5OTYsIDE5OjAyOjA0KToKfiMhIHJuPVJhZmZpIHJ0PTg0ODM1Mzk3Mgp+IyEgdGlkPTg0ODM1Mzk3MgpXYXIgaXJnZW5kd28gZGF2b24gZGllIFJlZGUsIGRhc3MgZXIgZmFocmVuIHd1ZXJkZT8gRGVyIEJyb2NrZW4ga2FubiBqYSBhdWNoCmdsZWljaCBhbSBIYWZlbmJlY2tlbiBzZWluLCBkYXMgU2NoaWZmIHN0ZWh0LCB1bmQgZGVyIEthcGl0YWVuIGtlbm50IGRlbiBXZWcKdHJvdHpkZW0uLi4KSG1tbS4uLiBkYXMgYnJpbmd0IG1pY2ggYXVmIGVpbmUgSWRlZS4uLiBoYXQgaXJnZW5kamVtYW5kIGJlaGF1cHRldCwgZGFzcyBkYXMKU2NoaWZmIGltbWVyIHp1dmVybGFlc3NpZyB1bSBhbGxlIEhpbmRlcm5pc3NlIHJ1bWZhZWhydD8gTWFuIGtvZW5udGUgamEsCmplbmFjaGRlbSwgd2VyIGdlcmFkZSBkcmF1ZiBpc3QsIC4uLiAuLi4gLi4uIC4uLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaG9lbGxlbmZldWVyIChMb2NvLCAxOS4gTm92IDE5OTYsIDE5OjA2OjQ4KToKfiMhIHJuPUJvaW5nIHJ0PTg0ODQxMDg3Mwp+IyEgdGlkPTg0ODM4NjcxMgpUYXVzZ2VtYWNodCBoYXN0IER1IGlobiBqYSB2aWVsbGVpY2h0LCB3aWUgd2FlcnMsIHdlbm4gRHUgaWhuIGRpZXNtYWwKX3JfYXVzbWFjaGVuIHd1ZXJkZXN0PwpWaWVsIFNwYXNzIGJlaW0gUmVidWdnZW4sCgpMb2NvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFjcmltb24sIDE5LiBOb3YgMTk5NiwgMjA6MTY6MzEpOgpbQWxsZ2VtZWluOkFzbW9kaXNdICByYW50YW5wbGFuIGlzdCBzbyBsZWlzZSBpbiBsZXR6dGVyIFplaXQgOikKW0FsbGdlbWVpbjpSYW50YW5wbGFuXSBPaGggaWNoIGFyYmVpdGUuLi4KW0FsbGdlbWVpbjpBc21vZGlzXSAgYXJiZWl0ZW4/IGhlaXNzdCBkYXMsIGR1IGJhZ2dlcnN0IG1hZWRlbHMgYW4gPyA6KQpbQWxsZ2VtZWluOlJhbnRhbnBsYW5dICpsYWNoKiwgbmUgaWNoIHNpbXVsaWVyZSBTdXBlcm5vdmFlCltBbGxnZW1laW46RWlzZW5iZWlzc10gTmUgU3VwZXJub3ZhIHNpbXVsaWVyZW4/IElzdCBkYXMgbm9pY2h0IGdlZmFlaHJsaWNoPyAKW0FsbGdlbWVpbjpFaXNlbmJlaXNzXSA7LSkKW0FsbGdlbWVpbjpBc21vZGlzXSAgam8sIGthbm4gbWFuIG51ciBlaW5tYWwgbWFjaGVuIDopCltBbGxnZW1laW46UmFudGFucGxhbl0gRnVlciBkaWUgU3VwZXJub3ZhIHZpZWxsZWljaHQgOy0pCgouLi4KCltBbGxnZW1laW46UmFudGFucGxhbl0gLi4uaG9seSBzaGl0Li4uClJhbnRhbnBsYW4gaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KCklzdCBpaG0gdmllbGxlaWNodCBzZWluZSBTdXBlcm5vdmEgZHVyY2hnZWdhbmdlbj8KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlciBiaWV0ZXQgbGV0enRlcyBHZWxlaXQgZnVlciBSYW50YW5wbGFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChBbmF0b2wsIDE5LiBOb3YgMTk5NiwgMjA6MTg6MTcpOgp+IyEgcm49QWNyaW1vbiBydD04NDg0MzA5OTEKfiMhIHRpZD04NDg0MzA5OTEKCk5vZSwgZGVyIHNwaWVsdCBuZWJlbmhlciBEdWtlIE51a2VtIHVuZCB2ZXJnbGVpY2h0IGRpZSBFeHBsb3Npb25lbiwgZGllCmR1cmNoIFJQR3MgYXVzZ2Vsb2VzdCB3ZXJkZW4sIG1pdCBzZWluZW4gTm92YWUuCgpTaWVodCBzY2hsZWNodCBhdXMgZnVlciBkaWUgU3VwZXJub3ZhIDspCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFzbW9kaXMsIDE5LiBOb3YgMTk5NiwgMjI6MTI6NDQpOgoKW0FsbGdlbWVpbjpXaWRld2l0dF0gbmFjaCB3YXMgbXVzcyBtYW4gZGFzIHVudGllciBlaWdlbnRsaWNoIGZyYWdlbj8KW0FsbGdlbWVpbjpBc21vZGlzXSAgbmFjaCBhdWZnYWJlCltBbGxnZW1laW46V2lkZXdpdHRdIGFzbW9kaXMgZGFua2UgZGlyCltBbGxnZW1laW46QXNtb2Rpc10gIGRhbm4ga3JpZWd0IG1hbiBlaW5lbiB6dCwgd2VubiBtYW4gZ2x1ZWNrIGhhdAoKLi4uCltUb2Q6TGFyc10gRWluIFVudGllciBoYXQgZ2VyYWRlIFdpZGV3aXR0IHVtZ2VicmFjaHQuCgoKW0JlaWxlaWQ6QXNtb2Rpc10gIGFoIGphCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaHVwcywgc29ycnkgOikgKEJlZWx6ZWJ1YiwgMjAuIE5vdiAxOTk2LCAwMTo0MDozMCk6Cj4gZmkgc3lsdmlhClN5bHZpYSBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogV2llbi4KVm9sbGVyIE5hbWU6IFN5bHZpYSBkaWUgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyaW4KUmFzc2U6IEVsZiwgIEdpbGRlOiBBYmVudGV1cmVyLCAgR2VzY2hsZWNodDogd2VpYmxpY2gKQWx0ZXI6IDEyOjQ0OjUyLCAgIFNwaWVsZXJsZXZlbDogMQpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBEaWUsIDIwLiBBdWcgMTk5NiwgMDA6MTA6MDIKQmlzaGVyIGJlcmVpdHMgNCBtYWwgZ2VzdG9yYmVuCj4gW1RvZDpMYXJzXSBFaW4gRWxmZW53YWVjaHRlciBoYXQgZ2VyYWRlIFN5bHZpYSB1bWdlYnJhY2h0LgoKV2FyIGljaCBkYXMgPz8/IFNvcnJ5IHVuZCBCZWlsZWlkICEKCkRlciBEZWlmaSBdOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDIyLiBOb3YgMTk5NiwgMTY6MjM6MTApOgoKIkluIGRlciBHZXNlbGxzY2hhZnQgZ3V0ZXIgRnJldW5kZSBpc3Qgc2VsYnN0IFdhc3NlciBlaW4gZ3V0ZXMgR2V0cmFlbmsuIgooY2hpbmVzaXNjaCkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWluZSBTZWVmYWhydCBkaWUgaXN0IGx1c3RpZyAoUmFmZmksIDIyLiBOb3YgMTk5NiwgMTc6MzM6MjgpOgp+IyEgcm49TG9jbyBydD04NDg0MjY1MjQKfiMhIHRpZD04NDgzNTM5NzIKSGFhYWxvIEViZW5lbm1hZ2llciAuLi4gZGEgbGllZ3QgZWluIEJyb2NrZW4gaW0gSGFmZW5iZWNrZW4gdm9uIFBWLgoKRGFzIGlzdCBnZWZhZWhybGljaCEgKEJlc29uZGVycyB3ZW5uIExvY28gc2VpbmUgSWRlZW4gd2VpdGVyIGF1c2JydWV0ZXQhCgpHcmlucwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZWkgbnUgKE1ldGhlZHJhcywgMjQuIE5vdiAxOTk2LCAxMjo0MzowMCk6CltXdXJzdHNlaGVyOkhhZHJhIHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gTWV0aGVkcmFzLl0KW1d1cnN0c2VoZXI6TWV0aGVkcmFzXSBodWNoCj4gLXd1cnN0c2VoZXI/Cld1cnN0c2VoZXIsIFd1cnN0c2VoZXIgd2llIGljaCB1bmQgRHUuCkR1IHNpZWhzdCBlaW4gR2VzaWNodCBhdWYgZGVyIEViZW5lICdXdXJzdHNlaGVyJzoKTWV0aGVkcmFzCk1ldGhlZHJhcyBoYXQgZGFzIFNhZ2VuIGF1ZiBkaWVzZXIgRWJlbmUuCgogICAgICAgIE1vb29tZW50IG1hbCwgSGFkcmEhIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE11ZWxsIGluIFdpdHplIChZYW50cm8sIDI1LiBOb3YgMTk5NiwgMDk6MTQ6MDkpOgp+IyEgcm49WWFudHJvIHJ0PTg0ODkwOTQwOAp+IyEgdGlkPTg0ODkwOTQwOApbVmVybGVndCB2b24gZXRpa2V0dGUsIFFpdGVzcywgMjUuIE5vdiAxOTk2LCAwOToxMzoyNF06CmljaCBoYWIgendhciBuaXggbWl0IGRlbSB3aXR6LWZsYW1lIHp1IHR1biBhYmVyIGljaCBiZWFudHJhZ2UgdHJvdHpkZW0gZGllCnNvZm9ydGlnZSBsb2VzY2h1bmcgeWFudHJvcy4Kd2FydW0gPwphZWguLi4gZ3V0ZSBmcmFnZS4uLiBudXIgc28uIHdhZXIgZG9jaCBtYWwgd2llZGVyIGZhZWxsaWcsIHNvbmUKbWFnaWVybG9lc2NodW5nLi4uIGRpZSB2b24gb2V0dGkgaXMgc29vbyBsYW5nZSBoZXIuLi4KCgpxaXRlc3MsIGp1ZW5nc3RlIFRvY2h0ZXIgdm9uIEhhbnMgTW9zZXIKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJ0aWtlbCAoR3VuZHVyLCAyNS4gTm92IDE5OTYsIDE1OjIxOjA3KToKSmFqYSBkaWUgQWZmZW46CltBYmVudGV1ZXI6QXN0ZXJvdGhdIHdpZSBiZWtvbW1lIGljaCBkZW4gZGllIE9yYW5nZSB2b20gQWZmZW4gaW0gTHVmdHNjaGxvc3M/CltBYmVudGV1ZXI6U25pYnJpbF0gbWFjaCBpaG0ga2xhciwgZGFzcyBkdSBzaWVoIGhhYmVuIHdpbGxzdAouLm9iIGVyIGVzIGlobSB3b2hsIG5pY2h0IHJpY2h0aWcga2xhciBnZW1hY2h0IGhhdD8KW1RvZDpMYXJzXSBFaW4gQWZmZSBoYXQgZ2VyYWRlIEFzdGVyb3RoIHVtZ2VicmFjaHQuCgpHLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaHJhdCAoRGllZGVyLCAyNi4gTm92IDE5OTYsIDE5OjEyOjI2KToKSGFiIGhldXRlIG5lbSBBbmZhZW5nZXIgZ2Vob2xmZW4sIGRlbiBTY2hyYXQgenUgZmluZGVuLgpGb2xnZW5kZXNlIHNpdHMgZGFiZWkgcGFzc2llcnQ6CgpiZWltIFNjaHJhdDoKClNjaHJhdCBrYW5uIG5pY2h0IGVpbnNjaGxhZmVuIGJsYWJsYS4gTGF1ZWZ0IGltIFppbW1lciBydW0gZXRjLgpEdSB0ZWlsc3QgTGVydmFrIG1pdDogRHUgbXVzc3QgaWhuIHp1bSBTY2hsYWZlbiBicmluZ2VuCkxlcnZhayB0ZWlsdCBEaXIgbWl0OiBXaWUga2FubiBpY2ggaWhtIHNhZ2VuLCBkYXNzIGVyIGRpZSBIaXRwYXJhZGUgZGVyClZvbGtkc211c2lrIGFuc2NoYXVlbiBzb2xsPwoKKlJPVEZMKiBzcHJhY2ggbWlyIGdlbmF1IGF1cyBkZXIgU2VlbGUgOykKCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNjaHJhdCAoQXNtb2RpcywgMjYuIE5vdiAxOTk2LCAxOToxNTo1NSk6Cn4jISBybj1EaWVkZXIgcnQ9ODQ5MDMxOTQ2Cn4jISB0aWQ9ODQ5MDMxOTQ2CgpmcmFnZSBzY2hyYXQgbmFjaCBIaXRwYXJhZGUgZGVyIFZvbGtzbXVzaWsKCgpBY2gsIGFiIG5hY2ggU2NobWFycm4sIC4uLi4gT2NoLCBkYSBzaW5kIHdpciBqYSBzY2hvbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS0kgPyAoQmVlbHplYnViLCAyOC4gTm92IDE5OTYsIDAxOjIzOjA0KToKTmFjaGRlbSBtaXIgQ2FuY29yIGRlbiBNYW50ZWwgZGVzIEdvYmxpbmhleGVycyBnZWdlYmVuIGhhdC4uLiAodW5nZWt1ZXJ6dCkKCkNhbmNvciBzYWd0OiBoYXN0ZSBkZW4gc2Nob24gbWFsIGdlbmF1IGFuZ2VzZWhlbiA/CkRlaWZpIGtyYWVjaHp0OiAuLi4gZGVua2Ugc2Nob24gLi4uIGRlbmtlIHNjaG9uIC4uLgpCdW1iYXN0aWN1cyByZW5udCBEaWNoIGJlaW5haGUgdWViZXInbiBIYXVmZW4uCkJ1bWJhc3RpY3VzIGlzdCBzY2hvbiB3ZWl0ZXIgbmFjaCBPc3Rlbi4KRHUgaGFzdCBqZXR6dCAxOTQgTGViZW5zcHVua3RlIHVuZCA5MyBNYWdpZXB1bmt0ZS4KQ2FuY29yIGtyZWJzdCBuYWNoIFdlc3Rlbi4KU2VsYnN0bW9yZCBzYWd0OiA8SGljaz4hCkVpbiBCZXR0bGVyIGtvbW10IGFuLgpEdSBoYXN0IGpldHp0IDE5NCBMZWJlbnNwdW5rdGUgdW5kIDk0IE1hZ2llcHVua3RlLgpEZWlmaSBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIGVpbiBCZXR0bGVyIC4uLgpEZXIgQmV0dGxlciBnZWh0IG5hY2ggT3N0ZW4uCnVudCBtYW50ZWwKRGVpZmkga3JhZWNoenQ6IC4uLiBpcyBhYmVyIGd1dCA6KSAuLi4gaXMgYWJlciBndXQgOikgLi4uCgoobnVyIGRpZSBlcnN0ZW4gYmVpZGVuIHVuZCBkaWUgbGV0enRlIFplaWxlIHNpbmQgdm9uIEJlZGV1dHVuZy4uLikKClVuZCBkYSBzb2xsIG5vY2ggamVtYW5kIGJlaGF1cHRlbiwgZGllIFZpZWNoZXIgd2FlcmVuIGRvb2YuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFISEhISEhISEhISEhISEggISEhIChaYXJkb3osIDI4LiBOb3YgMTk5NiwgMDg6NDA6NTkpOgpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFJhbnRhbnBsYW4sIDI2LiBOb3YgMTk5NiwgMTA6MTA6MzVdOgpIaWVybWl0IG1vZWNodGUgaWNoIGJla2FubnRnZWJlbiwgZGFzcyBtZWluZSBBdXNnYWJlIGRlciBNUEEKcml0dWVsbGVuIFNlbGJzdG1vcmQgYmVnYW5nZW4gaGF0LCBkYSBzaWUgbmljaHQgbWVociBpbiBkZXIgTGFnZSB3YXIsCmRhcyBpbiBpaHIgYWJnZWRydWNrdGUsIGdlaXN0aWcsIHNlZWxpc2NoLCBwc3ljaGlzY2gsIHBoeXNpc2NoIHVuZApzb3ppYWxlbW90aW9uYWwgenUgdmVyYW50d29ydGVuLgoKV2l0emUgdmVyc2NoaWViZW4sIGphIHVuZCwgWWFudHJvLCBKQSBVTkQsIERpZGksICphcmdoKiB1aCBvaCAKKmRlciB2ZXJmYXNzZXIgd2luZGV0IHNpY2ggZ2VyYWRlIGluIEtyYWVtcGZlbioKCk9raSBpY2ggZmxhbWUgamV0enQgYXVjaCBtYWwgcnVtLi4uCgpCTFVUSUdFIEFORkFFTkdFUiBzaW5kIGRvb2YgdW5kIHN0aW5rZW4sIHdlaWwgc2llIG5hZW1saWNoIGltbWVyIApoaWxmZSB3b2xsZW4gdW5kIHp0LXZlcnN0ZWtjZSB1bmQgR2VsZCB1bmQgV2FmZmVuIHVuZCBhdXNydWVzdHVuZywgYmFoaGgKZGllIHNvbGx0ZSBtYW4gYWxsZSBnZWxpY2ggbG9lc2NoZW4gb2RlciBiZXNzZXIgZHVyY2ggZGVuIEZsZWlzY2h3b2xmCmRyZWhlbiB1bmQgYW4gWWFudHJvIHZlcmZ1ZXR0ZXJuIChLdWJpYWMgd2FlciBkb2NoIGF1Y2ggbiBuZXR0ZXIgTmFtZSkKCkFjaCBLcmlzZS4uLgoKClJhbioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQUhISEhISEhISEhISEhISCAhISEgKFphcmRveiwgMjguIE5vdiAxOTk2LCAwODo0MDo1OSk6Cn4jISBybj1SYW50YW5wbGFuIHJ0PTg0ODk5OTQzNQp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFN1c2hpLCAyNi4gTm92IDE5OTYsIDEyOjIzOjI2XToKV2FzIGZ1ZXIgZWluIFNjaHdhY2hzaW5uLiBSYXR0ZW5wbGFnZSwgRHUgYmlzdCBlaW4ga29tcGxldHRlciBJZGlvdCB1bmQKc3RpbmtzdCBtZWhyIGFscyAxMCBOZXdiaWVzLiBBdXNzZXJkZW0gd2Fyc3QgRHUgbWFsIE1hZ2llciB1bmQgc3RpbmtzdCBkZXNoYWxiCm5vY2ggMTB4IG1laHIuIFdhcnVtIHdpcnN0IER1IGVzIG5pY2h0IHdpZWRlciB1bmQgc2V0enQgZWluZW4gemFwLXRyaWdnZXIgYXVmCkRpY2g/CgoKU3VzaGkKCgouLgoKCgoKLi4uCgoKCgouLi4uCgoKCgoKLi4uLi4uCgoKCk5hamEsIGZ1ZXIgZWluIGZsYW1lIHdhciBlcyBldHdhcyBkdWVubiwgYWJlciBpY2ggbXVzcyBqYSBhdWNoIGxvcy4uLipncnVtbWVsKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBSEhISEhISEhISEhISEhIICEhISAoWmFyZG96LCAyOC4gTm92IDE5OTYsIDA4OjQxOjAxKToKfiMhIHJuPVJhbnRhbnBsYW4gcnQ9ODQ4OTk5NDM1Cn4jISB0aWQ9ODQ4OTk5NDM1CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgU2NocnVtcGZpLCAyNi4gTm92IDE5OTYsIDEzOjQ2OjE2XToKVGlja3QgaWhyIGVpZ2VudGxpY2ggYWxsZSBub2NoIHJpY2h0aWc/IElociBrb2VubnQgZXVjaCB1ZWJlciBzYWNoZW4KYXVmcmVnZW4uLi4KSWNoIGtvZW5udCBtaWNoIHRlaWx3ZWlzZSBudXIgbm9jaCBrcmluZ2VsbiB2b3IgTGFjaGVuIHdlbm4gaWNoIGV1cmUgQXJ0aWtlbApsZXNlLCB2b3IgYWxsZW4gRHUgS29ldGVyY2hlbiwgRHUgaGFzdCBiZXN0aW1tdCBuZSBNZW5nZSBNYWdlbmdlc2Nod3VlcmUgdW5kCmFsbGUgbnVyIGR1cmNocyBNUEEgbGVzZW4uClNjaHJ1bXBmaSBmYXNzdCBlcyBuaWNodCwgd2llIHJlYWwgZnVlciBtYW5jaGUgZWluIFJvbGxlbnNwaWVsIHdpcmQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBSEhISEhISEhISEhISEhIICEhISAoWmFyZG96LCAyOC4gTm92IDE5OTYsIDA4OjQxOjAxKToKfiMhIHJuPVN1c2hpIHJ0PTg0OTAwNzQwNgp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIE1vcmdvdGgsIDI2LiBOb3YgMTk5NiwgMTU6MjE6MThdOgpLdWNrdWNrCkplbWFuZCB6dSBIYXVzZSA/Pz8KQWxzbyBlcnN0ZW5zIGlzdCBSYW50YW5wbGFuIGtlaW5lIFJhdHRlLCBzb25kZXJuIGVpbiBIdW5kLCB6d2FyIGJsb2VkLCBhYmVyCndpdHppZy4KWndlaXRlbnMgd2FyIG1pciBkaWUgRWluc3RlbGx1bmcgZGVzIEV4LU1hZ2llcnMgendhciBhdWNoIG5pY2h0IHNvIGdhbnoKZ2VoZXVlciwgYWJlciBlcyB3YXIgbWVpc3RlbnMgd2l0emlnLCB3YXMgT2V0dGkgc2ljaCBlcmxhdWJ0IGhhdC4KVWViZXJsZWcgRGlyIG1hbCB2b3JoZXIsIHdlbm4gRHUgc293YXMgaW4gZGllIFplaXR1bmcgc2NocmVpYnN0LgpNb3Jnb3RoCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQUhISEhISEhISEhISEhISCAhISEgKFphcmRveiwgMjguIE5vdiAxOTk2LCAwODo0MTowMSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTg0OTAxODA3OAp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFN1c2hpLCAyNi4gTm92IDE5OTYsIDE3OjA0OjU0XToKRmFuZycgbWFsIGFuIHp1IGRlbmtlbiwgYmV2b3IgRHUgdWViZXJoYXVwdCBldHdhcyBzY2hyZWlic3QgLSBSYXR0ZW5wbGFnZSB1bmQKaWNoIHNpbmQgRnJldW5kZSwgZGEgd2lyZCBtYW4gZGFzIHdvaGwgZHVlcmZlbi4gT2RlciBtdXNzIGljaCBlaW5lCnNjaHJpZnRsaWNoZSBFcmxhdWJuaXMgYmVpIElocm8gTW9yZ290aCBhYmhvbGVuPwoKQ2hlZXJzLApTdXNoaQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFISEhISEhISEhISEhISEggISEhIChaYXJkb3osIDI4LiBOb3YgMTk5NiwgMDg6NDE6MDEpOgp+IyEgcm49U3VzaGkgcnQ9ODQ5MDI0Mjk0Cn4jISB0aWQ9ODQ4OTk5NDM1CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgQWNyaW1vbiwgMjYuIE5vdiAxOTk2LCAxNzozOTo1MF06CldhcyBzaWNoIGxpZWJ0LCBkYXMgbmVja3Qgc2ljaC4KCkphamEuLi4KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFISEhISEhISEhISEhISEggISEhIChaYXJkb3osIDI4LiBOb3YgMTk5NiwgMDg6NDE6MDQpOgp+IyEgcm49QWNyaW1vbiBydD04NDkwMjYzOTAKfiMhIHRpZD04NDg5OTk0MzUKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBBbmF0b2wsIDI2LiBOb3YgMTk5NiwgMTg6MTc6MTFdOgoKICAgIE9oLCB3YXMgZnVlciBlaW5lIGlubmlnZSBMaWViZSBtdXNzIGRhIGhlcnJzY2hlbiB6d2lzY2hlbiAKICAgIEFjcmltb24gdW5kIFp1ZXJpbGV1Li4uCgpEYXJmIGljaCBiZWkgZGVyIFRyYXV1bmcgZGFiZWkgc2Vpbj8gOikKQW5hdG9sIC0+c2NobWFycm4oKQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBSEhISEhISEhISEhISEhIICEhISAoWmFyZG96LCAyOC4gTm92IDE5OTYsIDA4OjQxOjA0KToKfiMhIHJuPUFuYXRvbCBydD04NDkwMjg2MzEKfiMhIHRpZD04NDg5OTk0MzUKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBJc25vZ29vZCwgMjcuIE5vdiAxOTk2LCAwMjoxMjoyNF06CktvZW5uZXQgbWFsIGplbWFuZCBkaWVzZW4gU2Nocm90dGhyZWFkIG5hY2ggU2NobWFycm4gdmVybGVnZW4/IE9kZXIgbm9jaApiZXNzZXIgbmFjaCBkZXYvbnVsbC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBSEhISEhISEhISEhISEhIICEhISAoWmFyZG96LCAyOC4gTm92IDE5OTYsIDA4OjQxOjA0KToKfiMhIHJuPVN1c2hpIHJ0PTg0OTAyNDI5NAp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIE1vcmdvdGgsIDI3LiBOb3YgMTk5NiwgMDc6NDY6NTVdOgpwYXNzIGJsb3NzIGF1ZiwgZGFzcyBkdSBtaWNoIG5pY2h0IHp1IG9mdCB2b24gZGVyIHNlaXRlIGFucGlzc3QsIGR1IHdpY2h0LgpNLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFISEhISEhISEhISEhISEggISEhIChaYXJkb3osIDI4LiBOb3YgMTk5NiwgMDg6NDE6MDQpOgp+IyEgcm49TW9yZ290aCBydD04NDkwNzcyMTUKfiMhIHRpZD04NDg5OTk0MzUKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBXYXJnb24sIDI3LiBOb3YgMTk5NiwgMTA6MDQ6MjhdOgpFcyBpc3QgSGVyYnN0LCBkaWUgVGFnZSB3ZXJkZW4gbGFlbmdlciwgbmFzc2thbHRlIFdpdHRlcnVuZyBhbGxlcm9ydGVuLi4uCldhcyBnaWJ0IGVzIGRhIHNjaG9lbmVyZXMgYWxzIHNpY2ggYW4gZGVuIFJlY2huZXIgenUgc2V0enRlbiB1bmQgYW4gZWluZW0KbHVzdGlnIHByYXNzZWxuZGVuIEZsYW1ld2FyIHp1IGVyZnJldWVuPwpJbiBkaWVzZW0gU2lubmU6IFdlaXRlciBzbyEgOikKICBXYXJnb24KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBSEhISEhISEhISEhISEhIICEhISAoWmFyZG96LCAyOC4gTm92IDE5OTYsIDA4OjQxOjA2KToKfiMhIHJuPVdhcmdvbiBydD04NDkwODU0NjgKfiMhIHRpZD04NDg5OTk0MzUKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBIYXRlLCAyNy4gTm92IDE5OTYsIDEwOjA2OjM2XToKSWNoIHNjaGFldHplIGljaCB3ZXJkZSBtaWNoIG1hbCB6dWhhdXNlIGluIG1laW4gQXJiZWl0c3ppbW1lciBlaW5zY2hsaWVzc2VuCm11ZXNzZW4uIFdpZSBpbiBhbHRlbiBaZWl0ZW4uLi4uCgpIYXRlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFISEhISEhISEhISEhISEggISEhIChaYXJkb3osIDI4LiBOb3YgMTk5NiwgMDg6NDE6MDYpOgp+IyEgcm49SGF0ZSBydD04NDkwODU1OTYKfiMhIHRpZD04NDg5OTk0MzUKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBLcmV0ZWssIDI3LiBOb3YgMTk5NiwgMTI6NDQ6MDZdOgpQcm9nZ3N0IER1ICduZSBRdWVzdD8gOy0pCgpLLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEFISEhISEhISEhISEhISEggISEhIChaYXJkb3osIDI4LiBOb3YgMTk5NiwgMDg6NDE6MDYpOgp+IyEgcm49S3JldGVrIHJ0PTg0OTA5NTA0Ngp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFJhZmZpLCAyNy4gTm92IDE5OTYsIDEyOjUyOjA4XToKSGF0ZSBQcm9nZ3QgbmUgUXVlc3RlID8gCgpTVVBBIQoKR3J1c3MKSC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBSEhISEhISEhISEhISEhIICEhISAoWmFyZG96LCAyOC4gTm92IDE5OTYsIDA4OjQxOjA2KToKfiMhIHJuPUtyZXRlayBydD04NDkwOTUwNDYKfiMhIHRpZD04NDg5OTk0MzUKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBNdXBmZWwsIDI3LiBOb3YgMTk5NiwgMTQ6MTM6MjhdOgoKTmVpbiBlaW4gbmV1ZXMgWmVsdCA6LSkKCi1tdXBmZWwtCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQUhISEhISEhISEhISEhISCAhISEgKFphcmRveiwgMjguIE5vdiAxOTk2LCAwODo0MTowOCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTg0OTA3NzIxNQp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFN1c2hpLCAyNy4gTm92IDE5OTYsIDE0OjU2OjM5XToKU2VociBnZWVocnRlciBNb29yZ290dCwKCmVzIGZyZXV0IHVucywgdm9uIGJlcnVmZW5lciBTZWl0ZSBtaXQgZ3V0Z2VtZWludGVtIFJhdCB2ZXJzZWhlbiB6dSB3ZXJkZW4uCkxhc3NlbiBTaWUgbWljaCBhbiBkaWVzZXIgU3RlbGxlIG1laW5lIGVpZ2VuZSBWb3JzdGVsbHVuZyBkYXJsZWdlbjogU2llIGFscwpiZXNvbm5lbmVyLCBjaGFybWFudGVyLCBhdHRyYWt0aXZlciB1bmQgZXJmb2xncmVpY2hlciAgUmVnaW9uc21hZ2llciBzb2xsdGVuCnZvbiBaZWl0IHp1IFplaXQgaWhyZW4gS29wZiBpbiBlaW4gdG90ZXMgU2Nod2VpbiBzdGVja2VuLCBkZW5uIEdlZ2Vuc2FldHplCnppZWhlbiBzaWNoIGFuLiBPZGVyIHNpbmQgU2llIHNjaG9uIHRvdD8gVmllbGxlaWNodCBoaXJudG90PyBEYXMgdGFldGUgbWlyCnBlcnNvZW5saWNoIHNjaHJlY2tsaWNoIGxlaWQsIGRlbm4gSWhyZSBsZWdlbmRhZXJlbiBSYWV1bWUgKGluIFNwaWVsZXJrcmVpc2VuCnphZXJ0bGljaCAiTW9vcmdvdHRmYWxsZW4iIGdlbmFubnQpIHd1ZXJkZW4gbWlyIHNlaHIgZmVobGVuLgoKTWl0ICB2dm9yenVlZ2xpY2hlciBIb2NoYWNodHVuZwpJaHIKClN1c2hpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQUhISEhISEhISEhISEhISCAhISEgKFphcmRveiwgMjguIE5vdiAxOTk2LCAwODo0MTowOCk6Cn4jISBybj1TdXNoaSBydD04NDkxMDI5OTkKfiMhIHRpZD04NDg5OTk0MzUKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBIYXJkaWwsIDI3LiBOb3YgMTk5NiwgMTQ6NTg6NThdOgoKQWxzbyBTdXNoaSwKYmV2b3IgamV0enQgd2llZGVyIGVpbiBwYWFyIGJhZXVtZSBpbSB2ZXJsb2dlbmVuIExhbmQgdW1mYWxsZW4uLi4KCkR1LCBpY2ggZmluZGUgZGFzIGdhciBuaWNodCBndXQsIHdpZSBEdSBkYSBhbSBhcm1lbiBNb3JnZG9vZiBoZXJ1bWtyaXRpc2llcnN0LgpEdSwgaWNoIGZpbmRlLCBkYSBzb2xsdHQgaWhyIG1hbCBkcnVlYmVyIHJlZGVuLiBFY2h0LCBEdS4KVmllbGxlaWNodCBub2NoIGVpbmVuIEJsdWVtY2hlbnRlZSBkYXp1IHRyaW5rZW4uCgpBYmVyIHNvbnN0IGlzdCBhbGxlcyBkdWZ0ZS4gOi0pCgotSGFyZGlsIChzb3JyeSwga29ubnRlIG5pY2h0IGFuZGVycykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBSEhISEhISEhISEhISEhIICEhISAoWmFyZG96LCAyOC4gTm92IDE5OTYsIDA4OjQxOjA4KToKfiMhIHJuPVN1c2hpIHJ0PTg0OTEwMjk5OQp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFJhbnRhbnBsYW4sIDI3LiBOb3YgMTk5NiwgMTU6MDY6MzJdOgoKSWNoIG1pZXNlbiwga2xlaW5lbiBNYWdpZXIsIGpldHp0IHNjaGxhZ3QgaWhyIGV1Y2ggb2VmZmVudGxpY2gKaW4gZGVyIE1QQSBkaWUgS29lcHBlIGVpbiwgd2VyIHNvbGwgZGVubiBkYSBub2NoIFJlc3Bla3Qgdm9yIGV1Y2ggaGFiZW4uLi4KCklzdCBkb2NoIGFsbGVzIEtpbmRlcmthY2tlIGhpZXIsIFRocmVhZHMsIEZsYW1lcywgaWhyIHNlaWQgYWxsZQpkb29mIHVuZCBzdGlua3QgbmFjaCBNYWdnaSwgb2RlciBub2NoIHNjaGxpbW1lciBuYWNoIEhhZmVyc2NobGVpbS4uLgoKVW5kIGlociBzZWlkIGhhZXNzbGljaCwgdW5kIHVuYXVzc3ByZWNobGljaGUgQXVzd3VlY2hzZSB6aWVyZW4KZXVlciB3ZWxrZXMgRmxlaXNjaC4uLmFlaGggamV0enQgZHJlaCBpY2ggU3RpbGlzdGlzY2ggYWIgb2RlciBzby4uLgoKV2FyIGRhcyBqZXR6dCBuIGd1dGVyIEZsYW1lIG9kZXIgbmljaHQsIG9kZXIgd2llLCB1bmQgCndhcnVtIGlzdCBtZWluIEx1ZnRraXNzZW5mYWhyemV1ZyB2b2xsZXIgQWFsZSwgdW5kIHdhcnVtCmlzdCBkZXIgSGltbWVsIGJsYXUsIGFjaCBuZSBkYXMgd2Vpc3MgaWNoLCB1bmQgcGxhbnQgZGFzIENJQQplaW5lIFdlbHR2ZXJzY2h3b2VydW5nIHp1c2FtbWVuIG1pdCBrbGVpbmVuIGdydWVuZW4gQXVzc2VyaXJkaXNjaGVuCkhhdHRlIGRlciBQYXBzdCBTZXggPwpJc3QgZGllIHN1Ympla3RpdmUgV2Focm5laG11bmcgZGVzIGVpbnplbG5lbiwgZWluZSBzZWxla3RpdmUKRmlsdGVydW5nLCBkZXIgZWlnZW50bGljaGVuIFdhaHJoZWl0Li4uCgpIYXQgTWljaGFlbCBTY2h1bWFjaGVyIFNjaHVoZ3JvZXNzZSA0MSA/CgpXZWxjaGUgQi5ILi1NYXJrZSBiZW51dHp0IFRoZXJlc2EgT3Jsb3dza2kgPwoKV0VSIElTVCBUaGVyZXNhIE9ybG93c2tpID8/Pz8/Pz8/Pz8/Pz8/PwoKV2llIGR1bW0ga2FubiBlaW4gSHVuZCBzZWluLCB1bmQgc2VpdCB3YW5uIGtvZW5uZW4gc2llIGxlc2VuIG9kZXIKc2NocmVpYmVuLgoKSEF0IGRlciBXb2xwaWNsdWIgbm9jaCBlaW5lIENoYW5jZSA/CldvIGlzdCBKb2YgPz8/PwoKV0FydW0gcmllY2hlbiBtZWluZSBTb2NrZW4gPwoKRnJhZ2VuIHVlYmVyIEZyYWdlbiwgZGllIG1pY2ggZWhoIG5jaWh0IGludGVyZXNzaWVyZW4sIGFiZXIgc2llIG11c3N0ZW4KbWFsIGdlc3RlbGx0IHdlcmRlbi4uLgoKQ2lhbwoKUmFuKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFISEhISEhISEhISEhISEggISEhIChaYXJkb3osIDI4LiBOb3YgMTk5NiwgMDg6NDE6MDgpOgp+IyEgcm49SGFyZGlsIHJ0PTg0OTEwMzEzOAp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFRhc2hhLCAyNy4gTm92IDE5OTYsIDE1OjA4OjA0XToKCkFsc28gTGV1dGUhCgpJY2ggZmluZCBkYXMgZWhybGljaCB2b2xsIFNjaGVpc3NlLCB3aWUgaWhyIGhpZXIgaW4gYWxsZ2VtZWluZXMgcnVtbXVlbGx0LiBkYXMKZ2Vob2VydCBkb2NoIHdvaGwgYWxsZXMgZWhlciBuYWNoIERpc2t1c3Npb24gb2RlciBnbGVpY2ggbmFjaCBNdWVsbCEgVW5kIGRpZQpTYWNoZSBtaXQgZGVtIEJsdWVtY2hlbnRlZSBpc3QgamEgd29obCBlaCBkYXMgaGludGVybGV0enRlISBFaW4gcmljaHRpZ2VyCk1VRGVyIHRyaW5rdCBzb3dhcyBqYSB3b2hsIG5pY2h0IQoKVGFzaGEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBSEhISEhISEhISEhISEhIICEhISAoWmFyZG96LCAyOC4gTm92IDE5OTYsIDA4OjQxOjEwKToKfiMhIHJuPVRhc2hhIHJ0PTg0OTEwMzY4NAp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFN1bmZsb3dlciwgMjcuIE5vdiAxOTk2LCAxNTowOTowMl06CmJsdWVtY2hlbnRlZSA/CgpXZW5uIGVzIHNvd2FzIGdlYmVuIHNvbGx0ZSB0cmlua2UgaWNoIGRhcyBuYXR1ZXJsaWNoIDopCgoKICAgICAgICAgICAgICAgICAgICAtLT09PSBibHVlbWNoZW4gPT09LS0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBSEhISEhISEhISEhISEhIICEhISAoWmFyZG96LCAyOC4gTm92IDE5OTYsIDA4OjQxOjEwKToKfiMhIHJuPVRhc2hhIHJ0PTg0OTEwMzY4NAp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIEhhcmRpbCwgMjcuIE5vdiAxOTk2LCAxNToxMDo0MF06CgpTZWhyIGdlZWhydGVzIHRhc2hhIQoKRGFzIGhhdCBtaWNoIGpldHp0IHRvdGFsIGJldHJvZmZlbiBnZW1hY2h0LCBkYXNzIER1IGRlbiB3b2hsZ2VtZWludGVuCkJsdWVtY2hlbnRlZSBzbyBuaWVkZXJtYWNoc3QuIERhcyB3YXIgamV0enQgc2ljaGVyIG5pY2h0IHAuYy4sIHVuZCBkYXMgZmluZGUKaWNoIGVjaHQgbmljaHQgaW4gT3JkbnVuZywgRHUuCgpaaXBwIHphcHAgUnVlYmUgYWIuCgpFaW4gUmF0IHZvbiBEci4gSGFyZGlsLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEFISEhISEhISEhISEhISEggISEhIChaYXJkb3osIDI4LiBOb3YgMTk5NiwgMDg6NDE6MTApOgp+IyEgcm49U3VuZmxvd2VyIHJ0PTg0OTEwMzc0Mgp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIEhhcmRpbCwgMjcuIE5vdiAxOTk2LCAxNToxMjozM106CgpTdW5mbG93ZXIhCgpEdSBiaXN0IGRvY2ggZWggbnVyIGRlciBtYWdpZXJnZXdvcmRlbmUgWndlaXRpZSB2b24gTWljcm9zIFp3ZWl0aWUgTWlsYW1iZXIuClVuZCBzZWl0IHdhbm4gZHVlcmZlbiBad2VpdGllcyBpbiBkZXIgbXBhIHBvc3Rlbj8KCjotKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEFISEhISEhISEhISEhISEggISEhIChaYXJkb3osIDI4LiBOb3YgMTk5NiwgMDg6NDE6MTApOgp+IyEgcm49SGFyZGlsIHJ0PTg0OTEwMzg0MAp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFJhbnRhbnBsYW4sIDI3LiBOb3YgMTk5NiwgMTU6MTI6NDNdOgoKS2xhcHBlIEhhcmRpbC4uLgoKUC5DLiBpc3QgdG90YWwgb3V0LCB1bmQgQmx1ZW1jaGVudGVlIGlzdCBkb29mIHVuZCBzdGlua3QgbmFjaCBuZXIKVGVjaG5vdHVzc2UsIGRpZSBlaGgga2VpbmUgaG9lcmVuIHdpbGwuLi4KCk9id29obCBNQUNIVCBURUUgQVVTIEJMVUVNQ0hFTi4uLgoKSWNoIGJpbiBkYWZ1ZXIgYWJlciB0b3RhbAoKQm9vb29vbSBCb29vb29vb20gQm9vb29vb29vb29tZXJhbmdnZ2dnZ2dnZ2dnZ2dnZ2dnZ2cKClJhbioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQUhISEhISEhISEhISEhISCAhISEgKFphcmRveiwgMjguIE5vdiAxOTk2LCAwODo0MToxMik6Cn4jISBybj1SYW50YW5wbGFuIHJ0PTg0OTEwMzk2Mwp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFN1bmZsb3dlciwgMjcuIE5vdiAxOTk2LCAxNToxNDozOF06CmFsc28gaWNoIGhlaXNzZSBiZXN0aW1tdCBuaWNodCBCbHVlbWNoZW4gd2VpbCBpcmdlbmRlaW5lIGR1bW1lIG1pdCBkaWVzZW4KTmFtZW4gS2luZGVyIE11c2lrIG1hY2h0LCBkZW4gTmFtZW4gYmx1ZW1jaGVuIHVuZCBzdW5mbG93ZXIgd3VyZGVuIHNjaG9uCmdlbnV0enQgKHZvbiBlaW5lciBGcmV1bmRpbiB2b24gbWlyKSBhbHMgZXMgZGllc2UgRHVtcGZlIEtsaW1wZXJ0YW50ZSBub2NoCm5pY2h0IGdhYi4KCjJ0ZW5zOiBJY2ggYmluIGtlaW4gMnRpZSB2b24gTWljcm8KM3RlbnM6IEljaCBiaW4gZXJzdGllIHZvbiBNaWxhbWJlcgo0dGVuczogd2FzIHdlaXNzIGljaAoKICAgICAgICAgICAgICAgICAgICAtLT09PSBibHVlbWNoZW4gPT09LS0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBSEhISEhISEhISEhISEhIICEhISAoWmFyZG96LCAyOC4gTm92IDE5OTYsIDA4OjQxOjEyKToKfiMhIHJuPVRhc2hhIHJ0PTg0OTEwMzY4NAp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIEFjcmltb24sIDI3LiBOb3YgMTk5NiwgMTU6MTU6NDJdOgpEdSB0cmlua3N0IGtlaW5lbiBCbHVlbWNoZW50ZWU/ClNjaGFlbSBEaWNoLCBUYXNoYSEKCkplZGVyIE11ZGRlciB3ZWlzeiwgd2llIGdlc3VuZCBkZXIgaXN0IHVuZCB3aWUgZ3V0IGVyIHNjaG1lY2t0IQoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyIG5pcHB0IGFuIGVpbmVyIFRhc3NlIEJsdWVtY2hlbnRlZS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBSEhISEhISEhISEhISEhIICEhISAoWmFyZG96LCAyOC4gTm92IDE5OTYsIDA4OjQxOjEyKToKfiMhIHJuPVN1bmZsb3dlciBydD04NDkxMDM3NDIKfiMhIHRpZD04NDg5OTk0MzUKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBNYW5nbywgMjcuIE5vdiAxOTk2LCAxNTozOTo1Nl06CgoKCgoKICAgICBTVU5GTE9XRVIgUkVEIEtFSU5FTiBTQ0hFSVNTLgoKCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBBSEhISEhISEhISEhISEhIICEhISAoWmFyZG96LCAyOC4gTm92IDE5OTYsIDA4OjQxOjE1KToKfiMhIHJuPUhhcmRpbCBydD04NDkxMDM5NTMKfiMhIHRpZD04NDg5OTk0MzUKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBNYW5nbywgMjcuIE5vdiAxOTk2LCAxNTo0MzowN106CgoKICAgRWlnZW50bGljaCBoYWJlbiBtZWluZXMgZXJhY2h0ZW5zIG5hY2ggTWljcm8gdW5kIE1pbGFtYmVyKFN1bmZsb3dlcikKbmljaHRzIG1pdGVpbmFuZGVyIHp1IHR1biwgYXVzc2VyIGRhcyBzaWUgbmVydmVuLgoKCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBBSEhISEhISEhISEhISEhIICEhISAoWmFyZG96LCAyOC4gTm92IDE5OTYsIDA4OjQxOjE1KToKfiMhIHJuPU1hbmdvIHJ0PTg0OTEwNTc4Nwp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFRhbmlzLCAyNy4gTm92IDE5OTYsIDE2OjI4OjQyXToKc2VpdCB3YW5uIG5lcnZ0IGRlbm4gc3VuZmxvd2VyPyBtaWxhbWJlciBoYXQgZ2VuZXJ2dCwgdG90YWwgZ2VuZXJ2dCEgYWJlcgpzdW5mbG93ZXIgbmVydnQgbmljaHQhCgptdXNzdGUgbWFsIGdlc2FndCB3ZXJkZW4KICAgICAgICAgICAgICAgICAgICAgICAgICBUYW5pcwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBBSEhISEhISEhISEhISEhIICEhISAoWmFyZG96LCAyOC4gTm92IDE5OTYsIDA4OjQxOjE1KToKfiMhIHJuPU1hbmdvIHJ0PTg0OTEwNTc4Nwp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFFpdGVzcywgMjcuIE5vdiAxOTk2LCAxODoxOTo0NV06CgplcnN0ZW5zIHN1bmZsb3dlciBuZXJ2dCBuaWNodAp6d2VpdGVucyBtaWxhbWJlciBoYXQgZ2VuZXJ2dApkcml0dGVucyBkZXIgZWhlbWFubiB2b24gc3VuZmxvd2VyIGlzIHNjaCoqKioqCgpxaS4KCioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBSEhISEhISEhISEhISEhIICEhISAoWmFyZG96LCAyOC4gTm92IDE5OTYsIDA4OjQxOjE1KToKfiMhIHJuPVN1c2hpIHJ0PTg0OTEwMjk5OQp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIEtyZXRlaywgMjguIE5vdiAxOTk2LCAwMDo0MjowNl06CklociBzcGlubnQhIElociBzcGlubnQgZWluZmFjaCEgSGF1dCBFdWNoIGRvY2ggZGllIFNjaGFlZGVsIGVpbiwgemFwcHQKRXVjaCBnZWdlbnNlaXRpZywgZHVlbGxpZXJ0IEV1Y2ggUkwuLi4gSGF1cHRzYWNoZSwgaGllciBrZWhydCBtYWwKd2llZGVyIFJ1aGUgZWluISBNb2Vuc2NoISBLaW5uZXJzIQoKSy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBSEhISEhISEhISEhISEhIICEhISAoWmFyZG96LCAyOC4gTm92IDE5OTYsIDA4OjQxOjE3KToKfiMhIHJuPVN1bmZsb3dlciBydD04NDkxMDM3NDIKfiMhIHRpZD04NDg5OTk0MzUKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBGeXQsIDI4LiBOb3YgMTk5NiwgMDE6MDI6NDZdOgoKU2ljaGVyIGdpYnQncyBCbHVlbWNoZW50ZWUuIERhenUgdWViZXJnaWVzc3QgbWFuIEJsdWVtY2hlbiBtaXQKc2llZGVuZGVtIFdhc3NzZXIgdW5kIGxhZXNzdCBkYXMgR2FuemUgc2VjaHMgTWludXRlbiB6aWVoZW4uLi4KCkZ5dC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogQUhISEhISEhISEhISEhISCAhISEgKFphcmRveiwgMjguIE5vdiAxOTk2LCAwODo0MToxNyk6Cn4jISBybj1NYW5nbyBydD04NDkxMDU3ODcKfiMhIHRpZD04NDg5OTk0MzUKW1ZlcmxlZ3Qgdm9uIGFsbGdlbWVpbmVzLCBGeXQsIDI4LiBOb3YgMTk5NiwgMDE6MDQ6MzVdOgoKRGFzIHJlaWNodCBqYSB3b2hsLCBvZGVyPwoKRnl0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFISEhISEhISEhISEhISEggISEhIChaYXJkb3osIDI4LiBOb3YgMTk5NiwgMDg6NDE6MTcpOgp+IyEgcm49S3JldGVrIHJ0PTg0OTEzODEyNgp+IyEgdGlkPTg0ODk5OTQzNQpbVmVybGVndCB2b24gYWxsZ2VtZWluZXMsIFN1c2hpLCAyOC4gTm92IDE5OTYsIDAxOjA3OjE3XToKQWNoIG5lZS4uLiB3YXJ1bSBkZW5uPyBXaXIga29lbm5lbiBkYXMgZG9jaCB3aWUgeml2aWxpc2llcnRlIE1lbnNjaGVuCmF1c3RyYWdlbiwgbWl0IGRlbiBXYWZmZW4gZGVzIEdlaXN0ZXMuIE9rLCBvaywgZWluIHVuZmFpcmVzIER1ZWxsLCBSZWdpb25zLQpnZWdlbiBXdXJzdG1hZ2llciwgYWJlciB0cm90emRlbS4uLiA+Oi0+CgpTdXNoaQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEFISEhISEhISEhISEhISEggISEhIChaYXJkb3osIDI4LiBOb3YgMTk5NiwgMDg6NDE6MTcpOgp+IyEgcm49U3VzaGkgcnQ9ODQ5MTAyOTk5Cn4jISB0aWQ9ODQ4OTk5NDM1CltWZXJsZWd0IHZvbiBhbGxnZW1laW5lcywgTW9yZ290aCwgMjguIE5vdiAxOTk2LCAwNzo0NToxN106CmFjaCB3YXIgZGFzIHNjaG9lbiwgYWxzIGR1IGdlbG9lc2NodCB3YXJzdC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2htYXJybiAoVG9ldGVyLCAyOC4gTm92IDE5OTYsIDEzOjIxOjQ0KToKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KW0FsbGdlbWVpbjpQYW56YV0gc2hpdCBzY2hvbiB3aWVkZXIgcmVib290PwoKS2VpbiBLb21tZW50YXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdyYWRlLCBiZWltIGVpbmxvZ2dlbi4uLiAoTXVwZmVsLCAyOC4gTm92IDE5OTYsIDE4OjI3OjU2KToKdXB0aW1lCkV2YWx1YXRpb24gdGltZTogMSBtcy4KUmVzdWx0OiAiMyBNaW51dGVuIHVuZCAyOSBTZWt1bmRlbiIKJCBBY2Fsb24gcnVmdDogSVMgREEgTUFYSSBEQSA/Pz8/CiUgQ29ubmVjdGlvbiB0byBtZ20gY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KLS0tLSBObyB3b3JsZCAtLS0tCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgYmVpbSBBdXNsb2dnZW4uLi4uIChLbG9wcGVyLCAyOC4gTm92IDE5OTYsIDIxOjMzOjE1KToKZW5kZQpbU2V4Oktsb3BwZXIgdWViZXJnaWJ0IGRpZSBFYmVuZSBhbiBNb3JnYXIuXQpTcGVpY2hlcmUgS2xvcHBlci4KQmlzIGJhbGQhCkNsb3NpbmcgZG93bi4KJSBDb25uZWN0aW9uIHRvIE1HIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCi0tLS0gTm8gd29ybGQgLS0tLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAtIGF1ZiBkZW4gbGV0enRlbiBEcnVlY2tlciAoR3JpbW1ib3JuLCAyOS4gTm92IDE5OTYsIDIwOjQwOjI4KToKCiJJY2ggd3VlcmRlIHZvciBMYW5nZXdlaWxlIHN0ZXJiZW4gd2VubiBkYXMgTGViZW4gc28gZWluZmFjaCB1bmQgc2NobWVyemxvcwp3YWVyZSB3aWUgaWNoIGVzIG1pciB3dWVuc2NoZS4iIChhbm9ueW0pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG9uIHdpZWRlciBuaWNodHMgbG9zISAoUm9uZGEsIDMwLiBOb3YgMTk5NiwgMTQ6MDU6MDMpOgoqICogKiAqICogRiBVIEUgUiAgIEcgTyBSIEQgTyAqICogKiAqICAqICoKRGFzIFVlYmxpY2hlOiBlcyBwYXNzaWVydCBlaW5mYWNoIG5pY2h0cyBpbiBkZXIgTVBBIC0gCiAgICAgLSBtdXNzIG1hbiBlaW5mYWNoIGJlaGViZW4uLi4uClNDSFJFSUJUIFdBUyEgKmxhbndlaWxpY2hzZWludW5kZWluZmFjaG1pdGRlbUJyaWVmbmljaHR3ZWl0ZXJrb21tZW5kUm9uZGEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLdW5kZW5kaWVuc3QgKFNpbHZhbmEsICAyLiBEZXogMTk5NiwgMDc6NDY6NTIpOgpOZXVsaWNoIGF1ZiBkZW0gV2VnIG5hY2ggSGF1c2UgZ2VzZWhlbjoKCjEuKSBFaW4gQXV0b21hdCwgYXVmIGRlbSBzdGFuZDogJ1ppZ2FyZXR0ZW4nCiAgICBEcmluIHdhcmVuIGluIGRlciBUYXQgU2NoYWNodGVsbiBtaXQgWmlnYXJldHRlbi4KMi4pIEVpbiBBdXRvbWF0IG1pdCBkZXIgQXVmc2NocmlmdCAnS2F1Z3VtbWknCiAgICBVbmQgc2llaGUgZGEsIGVzIHdhcmVuIGtsZWluZSBTY2hhY2h0ZWxuIG1pdCBLYXVndW1taSBkcmluLgozLikgRWluIEF1dG9tYXQsIGF1ZiBkZW0gc3RhbmQgZ2VzY2hyaWViZW46ICdLdW5kZW5kaWVuc3QnCiAgICBVbmQgZHJpbiB3YXJlbi4uLiBXYXMgd29obCAtIEtvbmRvbWUuCgpKZXR6dCB3ZWlzcyBpY2ggZW5kbGljaCwgd2FzIGVzIGJlZGV1dGVkLCB3ZW5uIGVpbmUgRmlybWEgdmllbCBXZXJ0IGF1ZgpLdW5kZW5kaWVuc3QgbGVndC4uLgoKICBTaWx2YW5hIChqZXR6dCBlcmxldWNodGV0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFuY2VyIChTaWx2YW5hLCAgMi4gRGV6IDE5OTYsIDExOjIyOjMxKToKR2VyYWRlIHVuZ2VzY2huaXR0ZW46CgpEYW5jZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRWluIGVudHNldHpsaWNoZXIgU2NocmVpIGhhbGx0IHZvbSBGcmllZGhvZiBoZXJ1ZWJlci4KClNpbHZhbmEgKHNjaHJlaXQgbWl0IC0gdm9yIExhY2hlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgIDMuIERleiAxOTk2LCAxMjoxMTozOCk6CiJJY2ggc3VjaHRlIGRpZSBMaWViZSB1bmQgdmVybG9yIG1pY2ggc2VsYnN0IiAoaW5kaXNjaCkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VycmFkZSBlYmVuIHBhc3NpZXJ0Li4uIChTbHlmb3gsICAzLiBEZXogMTk5NiwgMjA6NTQ6NTQpOgogZmtudWRkbGUKSGVmZSBtb2VjaHRlIGdlcmFkZSBuaWNodCBnZXN0b2VydCB3ZXJkZW4uCkRpZSBNaXR0ZWlsdW5nIHd1cmRlIHZvbiBlaW5lbSBrbGVpbmVuIEtvYm9sZCBpbiBFbXBmYW5nIGdlbm9tbWVuLgpFciB3aXJkIHNpZSBzcGFldGVyIHdlaXRlcmxlaXRlbiEKRHUga251ZGRlbHN0IGRlaW5lIEZyZXVuZGUuCgpXb3csIG1hbiBzaWVodCBiZWkgZmtudWRkbGUgc29nYXIsIHdlbm4gbWFuIGVpbmVuIGVpbnplbG5lbiBTcGllbGVyIGdlcmFkZSBuaXgKbWl0dGVpbGVuIGthbm4sIGRhcyB3YXIgZGFzIGVyc3RlIE1hbCwgZGFzcyBtaXIgc293YXMgcGFzc2llcnQsIGJlaSBzbwp2aWVsZW4gRnJldW5kZW4gYXVjaCBub2NoLCBkaWUgaWNoIGhhYi4KCiBTbHlmb3gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHZXJyYWRlIGViZW4gcGFzc2llcnQuLi4gKFplcGh5ciwgIDMuIERleiAxOTk2LCAyMTo1MDoyNSk6Cn4jISBybj1TbHlmb3ggcnQ9ODQ5NjQyODk0Cn4jISB0aWQ9ODQ5NjQyODk0CkxpZWd0IHdvaGwgZGFyYW4sIGRhc3MgVnJhaSBkYXMgRnJldW5kc2NoYWZ0c2JhbmQgc28gZ2VhZW5kZXJ0CmhhdCwgZGFzcyBlcyBqZXR6dCBhdWNoIG1pdCBkZW0gS29ib2xkIGtvbW11bml6aWVyZW4ga2Fubi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXJudW5nIHZvciBkZW0gdGFyIChQYXJhY2Vsc3VzLCAgNS4gRGV6IDE5OTYsIDE2OjI3OjUxKToKR2VyYWRlIGViZW4gKHVuY3V0KToKCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuClNpbHZhbmEgc2FndDogJ3RhcicgaXN0IGRvY2ggd2FzIHNjaG9lbmVzLi4uCgpQYXJhY2Vsc3VzIGRlbmt0IC4gbyBPIChXYXMgc28gZWluIHRhciBhbGxlcyBhbnJpY2h0ZXQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpRdWFsaXRhZXQgKEFjcmltb24sICA1LiBEZXogMTk5NiwgMjA6MTM6NTEpOgo+IHNjaGF1CkRpZXMgc2NoZWludCBkZXIgQXVmZW50aGFsdHNvcnQgZGVyIGdlcmFkZSB3YWNoaGFiZW5kZW4gVHJ2ZXMgenUgc2Vpbi4gQW4KZWluZW0gVGlzY2ggc2l0emVuIHp3ZWkgS3JpZWdlciBkZXIgU3RydXZ3YWNoZSBpbiBmYWNodGVjaG5pc2NoZXMgR2VzcHJhZWNoCnZlcnRpZWZ0LCB3YWVocmVuZCBlaW4gYmVzdHVlY2t0ZXIgV2FmZmVuc3RhZW5kZXIgaW4gZGVyIEVja2UgZGllIFdlaHJoYWZ0aWctCmtlaXQgZGVyIFdhY2hlIGRva3VtZW50aWVydC4gSW4gZGVyIE9zdGVja2UgZnVlaHJ0IGVpbmUgZW5nZSBXZW5kZWx0cmVwcGUgbmFjaApvYmVuCj4gc2NoYXUgc3RhZW5kZXIKSGllciBoYWJlbiBzb2dhciBkaWUgV2FmZmVuIGVpbmVuIFN0YWVuZGVyLgo+IHNjaGF1IHdhZmZlbgpIbSwgc2llaHQgbmFjaCBndXRlciBRdWFsaXRhZXQgYXVzLgo+IHNjaGF1IHF1YWxpdGFldApTb3dhcyBzaWVoc3QgRHUgZGEgbmljaHQhCj4KCkhhYiBpY2ggbWlyIHNjaG9uIGZhc3QgZ2VkYWNodCA6LSkKCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVjaHQgc28uLi4gKFN1c2hpLCAgNS4gRGV6IDE5OTYsIDIxOjU1OjQ0KToKRGVyIGtsZWluZSBQcmlueiBBbGJvaW4gcnVmdDogT2V0dGkgbGFzcyB1bnMgaGVpcmF0ZW4hISEhCj4gT2V0dGkgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCltBbGxnZW1laW46QWxib2luXSBtaXN0IGVyIGlzdCB3ZWcgOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWlobmFjaHRzbWFubiB0b3Q/IChSYWZmaSwgIDYuIERleiAxOTk2LCAxMTozMDowMSk6Cn4jISBybj1Sb25kYSBydD04NDk4NjgwNTQKfiMhIHRpZD04NDk4NjgwNTQKClVpaWlpaWlpIFdlaWhuYWNodGVuIDopCgooTG9jbywga2FubnN0IGR1IG1hbCBkaWUgZ2FuemVuIFdlaWhuYWNodHNkaW5nZW5zZW4gdm9tIGxldHp0ZW4gSmFociBhdXMgZGVtCmFyY2hpZXYgaG9sZW4gPykKCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdlaWhuYWNodHNtYW5uIHRvdD8gKExvY28sICA2LiBEZXogMTk5NiwgMTQ6NDY6MTkpOgp+IyEgcm49UmFmZmkgcnQ9ODQ5ODY4MjAxCn4jISB0aWQ9ODQ5ODY4MDU0CldlaWhuYWNodHNkaW5nZW5zZW4/IFdhcyBmdWVyIFdlaWhuYWNodHNkaW5nZW5zZW4/CkFyY2hpdj8gV2VsY2hlcyBBcmNoaXY/CkljaD8gV2FydW0gaWNoPwoKLSBMb2NvLCB2ZXJzdGVodCBuaXguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS3VuZGVuZGllbnN0IChZZW5kaSwgIDYuIERleiAxOTk2LCAxNTo1OToyNSk6Cn4jISBybj1TaWx2YW5hIHJ0PTg0OTUwOTIxMgp+IyEgdGlkPTg0OTUwOTIxMgoKRGVyIFNleC1TaG9wIGJlaSBtaXIgdW0gZGllIEVja2UgaGF0IGluIGtuYWxscm90ZW4gZ3Jvc3NlbiBMZXR0ZXJuIG5pY2h0IG51cgoiTWFnYXppbmUsIFZpZGVvcywgTGVkZXIiIGF1ZiBkZXIgRmVuc3RlcnNjaGVpYmUgc3RlaGVuLCBzb25kZXJuIGF1Y2gKIlBhcnR5YXJ0aWtlbCIuLi4gCkJlaSBzb3dhcyBkYWNodGUgaWNoIGVpZ2VudGxpY2ggaW1tZXIgYW4gTHVmdHNjaGxhbmdlbiBvZGVyIExhbXBpb25zLi4uCgpZZW5kaSBlcnJvZXRldC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEt1bmRlbmRpZW5zdCAoRW5neXd1Y2ssICA2LiBEZXogMTk5NiwgMTY6MDA6NDcpOgp+IyEgcm49WWVuZGkgcnQ9ODQ5ODg0MzY1Cn4jISB0aWQ9ODQ5NTA5MjEyCkRhcmF1cyBlcnNlaGUgaWNoIGVpbmRldXRpZywgZGFzcyBlcyBzaWNoIG5pY2h0IGxvaG50LCBiZWkgRGlyIGF1ZiBlaW5lciBQYXJ0eQp6dSBlcnNjaGVpbmVuIDspCgpOZWluLCBkYXMgaGFiIGljaCBqZXR6dCBuaWNodCBnZXNjaHJpZWJlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2l0dGVuIGJlaSBkZW4gS2FlbXBmZXJuOiAoRXNjdWJhciwgIDYuIERleiAxOTk2LCAxODo1NTo0MCk6ClNoYWRlIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuCltEYXJrX1dhdmU6U2hhZGUgdWViZXJnaWJ0IGRpZSBFYmVuZSBhbiBFc2N1YmFyLl0KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFNoYWRlLgpad2VpIFRydmVzIGtvbW1lbiBhbi4KRGllIFRydmVzIHBhY2tlbiBTaGFkZSBhbiBCZWluZW4gdW5kIEFybWVuIHVuZCBoZWJlbiBpaG4gaG9jaC4KU2hhZGUgd2lyZCBpbiBkZW4gU2NobGFmc2FhbCBnZXRyYWdlbi4KWndlaSBUcnZlcyBrb21tZW4gYW4uCkRpZSBUcnZlcyBwYWNrZW4gU2hhZGUgYW4gQmVpbmVuIHVuZCBBcm1lbiB1bmQgaGViZW4gaWhuIGhvY2guClNoYWRlIHdpcmQgaW4gZGVuIFNjaGxhZnNhYWwgZ2V0cmFnZW4uCgoqZ3JpbnMqIElzdCB3b2hsIGRlciBBdWZyYWV1bWRpZW5zdCBmdWVyIEJlc29mZmVuZSBUcnZlcz8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvZGVzbXV0aWdlciBLb21tYW5kYW50IChFc2N1YmFyLCAgNi4gRGV6IDE5OTYsIDE5OjE0OjI2KToKZnJhZ2UgQnJpZXNlbHRyaW0gbmFjaCBCZWZvZXJkZXJ1bmcKJ0d1dGVyIFdpdHohIER1IGJpc3QgdWViZXJoYXVwdCBrZWluIFRydmVzISBXaWUgc29sbCBpY2ggRGljaCBkYW5uIGJlZm9lcmRlcm4/CiBBbHMgdW5mYWVoaWdlcyBNaXRnbGllZCBkZXIgWmF1YmVyZXIgR2lsZGUgYmlzdCBEdSBzb3dpZXNvIHNjaG9uIGRlcgogIFN1cGVyZGVwcCEnCidHdXRlciBXaXR6ISBEdSBiaXN0IHVlYmVyaGF1cHQga2VpbiBUcnZlcyEgV2llIHNvbGwgaWNoIERpY2ggZGFubiBiZWZvZXJkZXJuPwogQWxzIHVuZmFlaGlnZXMgTWl0Z2xpZWQgZGVyIFphdWJlcmVyIEdpbGRlIGJpc3QgRHUgc293aWVzbyBzY2hvbiBkZXIKICBTdXBlcmRlcHAhJwogID4gRHUgdHJpdHRzdCBCcmllc2VsdHJpbS4KICA+IEFuYWlkIGdyaW5zdCBEaWNoIGFuLgogIFRvZXRlciBncmluc3QgRGljaCBhbi4KICBBbmFpZCBmcmFndCBUb2V0ZXI6IEFsbGVzIG1pdGdla3JpZWd0PwogIER1IHNhZ3N0OiBOYSB3YXJ0ZSBCcmllc2VsdHJpbSAuLi4gZGFzIHdpcnN0ZSBidWVzc2VuCiAgRHUgc3RpbW1zdCBkaWUgdm9yZ2VzY2hyaWViZW5lbiBHZXNhZW5nZSBhbi4KICBQbG9ldHpsaWNoIGJlZ2lubnQgRGVpbmUgbGlua2UgSGFuZCB6dSBnbHVlaGVuLiBEdSBkZXV0ZXN0IGRhbWl0IGF1ZgogIEJyaWVzZWx0cmltIHVuZCBzYWdzdDogU1RJUkIhCiAgQnJpZXNlbHRyaW0gcnVmdDogR2VmYWhyISEgWnUgZGVuIFdhZmZlbiEhIQogIEJyaWVzZWx0cmltIGZhZWxsdCB0b3QgenUgQm9kZW4uCiAgW01vZXJkZXI6R2Vpc3QgQnJpZXNlbHRyaW1zXSBNb25zdGVyIGFsbGVyIFJlZ2lvbmVuLCB2ZXJlaW5pZ3QgRXVjaCBnZWdlbgogIFtNb2VyZGVyOkdlaXN0IEJyaWVzZWx0cmltc10gRXNjdWJhciEKICBCcmllc2VsdHJpbSB6aWVodCBlaW5lbiBLcmFnZW4gbWl0IHp3ZWkgYWJsYXVmZW5kZW4gU2FuZHVocmVuIHVuZCBlaW5lbQogIEtub2NoZW4gYXVzLgoKUmFjaGUgaXN0IHN1ZXNzIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS3VuZGVuZGllbnN0IChXdXJ6ZWwsICA2LiBEZXogMTk5NiwgMTk6MTY6MzYpOgp+IyEgcm49RW5neXd1Y2sgcnQ9ODQ5ODg0NDQ3Cn4jISB0aWQ9ODQ5NTA5MjEyCndpZXNvIGRlbm4sIHVtIGRpZSBlY2tlIGdpYnRzIGRvY2ggYWxsZXMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlc2NobWFja2xvcyAoU3VuZmxvd2VyLCAgNy4gRGV6IDE5OTYsIDA5OjE4OjUzKToKR2VzY2htYWNrbG9zIGZhbmQgaWNoIEhhcmFsZCBTLiBpbiBzZWluZXIgTGF0ZSBOaWdodCBTaG93IGdlc3Rlcm4sIGFscyBlciBhbHMKQWRvbGYKSGl0bGVyIGF1ZnRyYXQuIFdlbm4gbWFuIEEuSC4gc2Nob24gcGFyb2RpZXJlbiB3aWxsLCBkYW5uIHJpY2h0aWcgdW5kIG5pY2h0CmF1ZiBLb3N0ZW4KYW5kZXJlciBWb2Vsa2VyLgoKU3VuZmxvd2VyIGRpZSBkYXMgbWFuIHNhZ2VuIHdvbGx0ZS4KCiAgICAgICAgICAgICAgICAgICAgLS09PT0gYmx1ZW1jaGVuID09PS0tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEb25nIExvbmcsIERvbmdlbG9uZyEgKE1vcm9uLCAgOC4gRGV6IDE5OTYsIDAyOjQzOjU4KToKCkVpbiBPZmZpemllciBkZXIgU3RhZHR3YWNoZSB2b24gTW91bG9raW4gKG9obm1hZWNodGlnKS4KPiB3ZWNrZSBvZmZpemllcgpEZWluIFdlY2tlciBrbGluZ2VsdCBiZWkgZGVtIE9mZml6aWVyLgo+IEVpbiBPZmZpemllciBrb21tdCB3aWVkZXIgenUgc2ljaC4KCkxhY2h0IGltbWVybm9jaCwKTW9yb24KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2VzY2htYWNrbG9zIChBbmNhbGFnb24sICA4LiBEZXogMTk5NiwgMTU6MTQ6MzEpOgp+IyEgcm49U3VuZmxvd2VyIHJ0PTg0OTk0NjczMwp+IyEgdGlkPTg0OTk0NjczMwpLbnVkZGVscyEKQWxzbywgc2VpdCBIYXJhbGQgUy4gYmVpIFNhdCBpc3QsIGZpbmRlIGljaCBpaG4gZWlnZW50bGljaCBudXIgbm9jaCBlbnR3ZWRlcgphbGJlcm4gb2RlciBnZXNjaG1hY2tsb3MuLi4uLi4uZGVuIG11cyBtYW4gc2ljaCBlY2h0IG5pY2h0IGFudHVuLi4uLgpOdXIgbWFsIHNvLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5jYWxhZ29uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEcmFjbyBrbnVkZGVsbGVuc2lzIG1ham9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOaXggbG9zLi4uIChTdXNoaSwgIDkuIERleiAxOTk2LCAwMzoyNzoxNik6CnMuby4KCgoKCgoKCgpJU1QgZGFzIGxhbmd3ZWlsaWcuIEthbm4gbWFsIGVpbmVyIHdhcyBzY2hyZWliZW4sIGJpdHRlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhhLi4uIChTdXNoaSwgIDkuIERleiAxOTk2LCAwMzo1NToyMik6CkRhbmNlciBydWZ0OiB1bmQgZGFuY2VyIGlzdCByZWdpb25zbWFnaWVyIHVuZCBmYWVocnQgZ2xlaWNoIGRhcyBtdWQgcnVudGVyd2VubgpuaWNodCBydWhlIGlzdCA6KQpFaW4gbGF1dGVyIEtuYWxsIGhhbGx0IHZvbSBHZWJpcmdlIGhlcnVlYmVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVlcnNvcmdsaWNoLi4uLiAoTXVwZmVsLCAgOS4gRGV6IDE5OTYsIDIwOjA5OjI0KToKRGFya25lc3NpZSBydWZ0OiBIVU5HQUFBQUFBQUEhISEhISEhISEhClNpbHZhbmEgemF1YmVydCBldHdhcyBoZXJ2b3IuClNpbHZhbmEgZ2lidCBEYXJrbmVzc2llIGF1cyBkZXIgRmVybmUgZWluIFBsYWV0emNoZW4uCgpkYSBzb2xsIG5vY2ggZWluZXIgc2FnZW4sIHVuc2VyZSBNYWdpZXIgd2FlcmVuIGZpZXMuLi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3dhc2FiZXJhdWNoIChNYW5nbywgMTAuIERleiAxOTk2LCAxNDozNjo1NSk6CgoKTmV1bGljaCBiZWkgZGVuIFRydmVzIGluIGRlciBLbmVpcGU6CgoKUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEphc3Blci4KQ2FtcGlubyBoYXV0IGFiLgpKYXNwZXIgc3RvcGZ0IGVpbmVuIGdyb2Vzc2VyZW4gQmVyZyBSb3Rrb2hsIGluIHNpY2ggaGluZWluLgpKYXNwZXIgc2NobGluZ3QgZGllIGxldHp0ZW4gMTkgS2xvZXNlIGhpbnVudGVyLgpKYXNwZXIgaXNzdCBkaWUgbGV0enRlIFB1dGUuCkphc3BlciBzdG9wZnQgZGVuIGxldHp0ZW4gQmVyZyBSb3Rrb2hsIGluIHNpY2ggaGluZWluLgpTb2ZvcnQga29tbXQgZGVyIFdpcnQgYW4gdW5kIHJhZXVtdCBkZW4gVGlzY2ggbGVlci4gV2FzIHdpcmQgZXIgYWxzCm5hZWNoc3RlcyBicmluZ2VuPwpEZXIgV2lydCBrb21tdCB6dXJ1ZWNrLiBEb2NoIHdhcyBoYXQgZXIgZGFiZWk/IEF1ZiBlaW5lbSB3aW56aWdlbiBUZWxsZXIKYmVmaW5kZXQgc2ljaCBnZW5hdSBlaW5lIGVpbnppZ2UgS2lyc2NoZSEKRG9jaCBkYXMgd2FyIGVpbmRldXRpZyB6dXZpZWwgZGVzIEd1dGVuIQpKYXNwZXIgdWViZXJnaWJ0IHNpY2ghCkR1IGhhc3QgaW4gRGVpbmVtIGdhbnplbiBMZWJlbiBub2NoIG5pZSBlaW5lbiBUaXR0ZW5tYXVzIHNvIGtvdHplbiBzZWhlbiEKCgpuYSBzb3dhc2FiZXJhdWNoIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2luZG9vZnMtendhbmcgKEJpYm8sIDEwLiBEZXogMTk5NiwgMjE6MTY6NDUpOgpIaSBMZXV0ZSwKCmRpZXMgaXN0IGVpbiBBcnRpa2VsIGZ1ZXIgZGVuIG5ubi1jbHViLCBkdSBrYW5uc3QgaWhuIHVlYmVyc3ByaW5nZW4Kd2VubiBkaXIgbmljaHQgZ2VyYWRlIGxhbmd3ZWlsaWcgaXN0IDopCmFiZXIgZGVubm9jaCBmaW5kIGljaHMgZXJ3YWVobmVuc3dlcnQgd2FzIGljaCBoaWVyIHNjaHJlaWIgLQp1bmQgZnJhZ2UgbWljaCBvYiBlaW5pZ2UgU29mdHdhcmVoZXJzdGVsbGVyIG5vY2ggc293YXMgd2llCmVpbmVuIGtvcGYgaGFiZW4uCmljaCBhcmJlaXRlIHNvIGd1dCB3aWUgbmllIG1pdCB3aW5kb3dzIC0gZGl2ZXJzZSBlcmZhaHJ1bmdlbgpoYWJlbiBtaWNoIGdlbGVocnQgZGFzcyBtYW4gb2huZSB3aW5kb3dzIHZpZWwgcnVoaWdlciwKbmVydmVuc2Nob25lbmRlciB1bmQgZWZmaXppZW50ZXIgYXJiZWl0ZW4ga2Fubi4KZGFzIGxldHp0ZSBwcm9ibGVtIHdhciBkYXNzIHdpbmRvb2ZzIHNpY2ggaW4gZGVyIGJvb3RwYXJ0aXRpb24KYnJlaXRnZW1hY2h0IGhhdHRlIHVuZCBzaWNoIG5pY2h0IG1pdCBmZGlzayB1bmQgYW5kZXJlbgpwcm9ncmFtbWVuIHVudGVyIGRvcyA2LjIyIHZlcnRydWcuIG51biwgamEgLSBpY2ggc29sbCBkYW5uCndpbmRvb2YtZG9zIG5laG1lbiAtIGRvY2ggaWNoIGFyYmVpdGUgYXVzIHZlcnNjaGllZGVuZW4gZ3J1ZW5kZW4gLQp3ZW5uIGljaCBuaWNodCBnZXJhZGUgbWl0IGxpbnV4IGFyYmVpdGUgLSBtaXQgZGVtIChhbHRlbiwKYWJlciBmdWVyIG1laW5lIGFud2VuZHVuZ2VuIGJld2FlaHJ0ZW4pIGRvcyA2LjIyLgpudW4sIG5hY2ggZGVtIGxldHp0ZW4gYWVyZ2VyIG1pdCB3aW5kb29mcyBoYWIgaWNoIGRlbiBtaXN0CmdlbG9lc2NodC4gbGVpZGVyIGdpYnRzIGphIGVpbiBwYWFyIHByb2dyYW1tZSBkaWUKbXMtd2luZG9vZnMgYmVub2V0aWdlbiAod2FydW0gZWlnZW50bGljaCA/KSwgdW5kIHNvbGx0ZQppY2ggbWFsIGdlend1bmdlbiBzZWluIHNvd2FzIHp1IGJlbnV0emVuIG11ZXNzdGUgZG9jaCB3ZW5pZ3N0ZW5zCmRpZSBrbGVpbmVyZSB3aW5kb29mc3ZlcnNpb24gcmVpY2hlbiBkaWUgd2VuaWdzdGVucyBtZWluZW4gYm9vdHNla3RvcgppbiBydWhlIGxhZXNzdCwgZGFjaHRlIGljaCBtaXIuCgpudW4gYmluIGljaCB2b3Igd2VuaWdlbiB0YWdlbiBtYWwgbG9zbWFyc2NoaWVydCB1bSBtaXIgZWluIG5ldHRlcwpzcGllbGNoZW4gYXVmIGRlbiBwYyB6dSBob2xlbi4gbnVuLCBlcyBnaWJ0IGphIG5lIG1lbmdlCnNwaWVsZSwgdW5kIGJlaSBkZXIgYXVzd2FobCBhY2h0ZSBpY2ggZGFyYXVmIGRhc3MgZGllc2UKa3JhbmtoZWl0IG5hbWVucyB3aW5kb3dzIG5pY2h0cyBtaXQgZGVtIHNwaWVsIHp1IHR1biBoYXQuCmVpbmlnZSBzb2Z0d2FyZWhlcnN0ZWxsZXIsIHdpZSBtaW5kc2NhcGUgdS5hLiBzaW5kIGphIHJpY2h0aWcKc3RvbHogZGFyYXVmIHdlbm4gaWhyZSBzcGllbGUgbnVyIGV4Y2x1c2l2IHVudGVyIHdpbmRvd3MgbGF1ZmVuLgphbHNvLCBzbyBnZXJuIGljaCBkYXMgc3BpZWwgYXVjaCBnZW5vbW1lbiBoYWV0dGUgLSB3ZWcgZGFtaXQgLAp6dXJ1ZWNrIGlucyByZWdhbC4gaWNoIGZhbmQgZGFubiBhYmVyIGVpbiBhbmRlcmVzIHNwaWVsCi0gZXMgc2FoIG5pY2h0IHVuYXR0cmFrdGl2IGF1cy4gaWNoIGJpbiBqZW1hbmQKZGVyIGhhbHQgZ2VybmUgbWV0emVsdCB1bmQgbmljaHQgYWxsenUga29tcGxpemllcnRlIGtsZWluZQpyYWV0c2VsIGxvZXN0LiBFcyBzdGFuZCBuaWNodHMgdm9uIHdpbmRvd3MgYXVmIGRlciBwYWNrdW5nLAphbHNvIG5haG0gaWNoIGRhcyB0ZWlsIG1pdC4gbmFqYSwgbmFjaCBkaWVzZXIgdm9ycmVkZSBpc3Qga2xhciB3YXMKenUgaGF1c2Uga2FtOiB0aGlzIHByb2dyYW0gcmVxdWlyZXMgd2luZG93cy4KbmFjaCBjYSAzMCBtaW51dGVuIGRlcyBhYnJlYWdpZXJlbnMgKGRlciBwdWxzIGdpbmcgd2llZGVyIHJ1bnRlcgppbiByaWNodHVuZyAxODApIGZpbmcgaWNoIGRhbm4gYW4gd2luZG93cy1kaXNrZXR0ZW4gaW4gZGVyCmhpbnRlcnN0ZW4gZWNrZSBtZWluZXMgemltbWVycyB6dSBzdWNoZW4uIHVuZCAtIHNpZWhlIGRhIC0gZGEgaGFiCmljaCBkb2NoIHRhdHNhZWNobGljaCA3IHdpbmRvd3MtMy4wIGRpc2tldHRlbi4gZmVpbiA6LSkgYWxzbyByYXVmCmF1ZiBkaWUga2lzdGUgLi4uIDMwIG1pbnV0ZW4gc3BhZXRlcjogd2luZG93cyB3aWxsIGlyZ2VuZCBlaW5lCmJsb2VkZSBkYXRlaSBpbSBoYXVwdHZlcnplaWNobmlzIG1laW5lciAxLiBwbGF0dGUgaGFiZW4uICgqc2V1ZnoqKQphbHNvIHN1Y2ggaWNoIGRpZXNlIGRhdGVpIC0gbmljaHQgZGEuIHdlZGVyIGF1ZiBwbGF0dGUgbm9jaCBhdWYKZGlza2V0dGUuIGFiZXIgb2huZSBkZW0gc3RhcnRldCB3aW5kb3dzIG51biBtYWwgbmljaHQuIG5hamEsCndhcyBzb2xscyAuLi4uIGlyZ2VuZHdvIGtvZW5udGVuIG5vY2ggYWx0ZSA1LDI1JycgZGlza2V0dGVuIG1pdAp3b25kb3dzIDMuMSBzZWluIC4uICgqanViZWwqKSB0YXRzYWVjaGxpY2gsIG1hY2htYWwgaXN0cyBoYWx0IGRvY2gKZ3V0IHdlbm4gbWFuIGFsbGVzIGF1ZmhlYnQuIG51biBndXQgLi4uLiA4IGRpc2tldHRlbiAuLi4gdW5kCnJhdWYgYXVmIGRlbiByZWNobmVyIDotKSB3YWFhYWhuc2lubiAuLiBkYXMgdGVpbCBsYWV1ZnQgc29nYXIuCnp3YXIgZXJrZW5udCBlcyBtZWluZSBtYXVzIG5pY2h0LCBhYmVyIHNvbnN0IC4uIGVjaHQgdG9wIDotKQpudW4gYWxzbyB6dSBkZW0gdW52ZXJzY2hhZW10ZW4gc3BpZWwgZGFzIG1pY2ggendhbmcKd2luZG93cyB6dSBpbnN0YWxsaWVyZW4uIHJlaW4gbWl0IGRlciBjZCB1bmQgYW53ZW5kdW5nZW4gc3VjaGVuLCB1bmQKaW5zdGFsbGllcmVuIC4uLiB1bmQgLi4uLi4uIEFBQUFBQUFBQVJSUlJSR0dHR0dHR0dHSEhISEhISEhISEhISEhIICEhIQoKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogfCB0aGlzIHByb2dyYW0gcmVxdWlyZXMgV0lORE9XUyA5NSBpbnN0YWxsZWQgb24geW91ciBjb21wdXRlciB8CiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKIHwgICAgICAgICAgICAgICAgICAgICAgICAgICA8IG9rID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpPSyA/Pz8gICAgIE5OTkVFRUVFRUVFRUlJSUlJSUlJSUlJTk5OTk5OTk5OTk4gISEKICAgICAgICAgICAgICAgIERBUyBJU1QgTklDSFQgT0sgISEhISEhIQpWRVJEQU1NVEUgU09GVFdBUkVIRVJTVEVMTEVSIDooKCgoKCgoKCgoKCBrcmllY2h0IGFsbGUKb25rZWwgYmlsbCBpbiBkZW4gYXIqIC4uLi4uIGljaCBmYXNzIGVzIG5pY2h0IDotKCgoCndpbmRvb2ZzIGZvcmV2ZXIgLi4uCmljaCBob2ZmZSBzZWl0IGphaHJlbiBkYXNzIGRlciB1bnNpbm4gbmFtZW5zIHdpbmRvd3Mgdm9tCm1hcmt0IHZlcnNjaHdpbmRldCwgZG9jaCBkaWVzZSBidWdzYW1tbHVuZyBicmVpdGV0IHNpY2ggc2NobmVsbGVyCmF1cyBhbHMgZXMgbnVyIGlyZ2VuZGVpbiB2aXJ1cyBqZW1hbHMga29lbm50ZS4ga2xhciwgaWNoIGhhYgpoaWVyIGtvbWlsaXRvbmVuIGRpZSB3aW5kb3dzIGZ1ZXIgZWluIGJldHJpZWJzc3l0ZW0gaGFsdGVuCnVuZCBtaWNoIHN0YXVuZW5kIGFuc2NoYXVlbiB3ZW5uIGljaCB2b24gc29mdHdhcmUgcmVkZSBkaWUKbmljaHQgdW50ZXIgd2luZG93cyBsYWV1ZnQuIHVuZCBzb3dhcyB3aWxsIHdpcnRzY2hhZnRzaW5mb3JtYXRpa2VyCndlcmRlbiA6LS8gZGFydWViZXIga29ubnRlIGljaCBiaXMgaGV1dGUgYWxsZXJkaW5ncyBpbW1lcgpzY2htdW56ZWxuLiBkb2NoIG51biBpc3QgZXMgc293ZWl0OiBpY2ggbXVzcyBpbiBkZW4gbGFkZW4gcmVubmVuCnVuZCBkaWUgbmV1c3RlIHZlcnNpb24gdm9uIHdpbmRvd3MgaGFiZW4uIFNDSEVJKiAobmVpbiwgZGVuIGxldHp0ZW4KYnVjaHN0YWJlbiBkaWVzZXMgd29ydGVzIHRpcHAgaWNoIG5pY2h0LCBzZWl0IGFjcmltb24gaGFiIGljaAplaW4gZ2VzdG9lcnRlcyB2ZXJoYWVsdG5pcyB6dSBkaWVzZW4gYnVjaHN0YWJlbikgV0lORE9XUyAhISEhIQoKaWNoIHdlaXNzIG1pdCBuaWNodCBtZWhyIHp1IGhlbGZlbiAuLi4gZXMgc2VpIGRlbm4gaWNoIHd1ZXJkZQphdWYgZWluaWdlIHNvZnR3YXJlIHZlcnppY2h0ZW4uIGRvY2ggdG90YWx2ZXJ3ZWlnZXJ1bmcgZ2VodCBzY2hsZWNodCwKZWluaWdlIGZpcm1lbiBiZW51dHplbiB3aW5kb3dzIC0gcHJpdmF0IHNldHplbiBsZXV0ZSB3aW5kb3dzIGVpbiAtCnVuZCBtaXIgaXN0IHp1bSBrb3R6ZW4gOi0oCgpvIHdpbmRvd3MgdW5zZXIgaW0gc3BlaWNoZXIsCnVuc2VyIHRhZWdsaWNoIGJ1ZyBnaWIgdW5kIGhldXRlLApkZWluZSBtYXJrdG1hY2h0IGtvbW1lLApkZWluIHdpbGxlIGdlc2NoZWhlLC4uLgoKaWNoIGhhYiBtaXQgZGllIHp1a3VuZnQgaW4gZGVyIGRhdGVudmVyYXJiZWl0dW5nIGFuZGVycyB2b3JnZXN0ZWxsdC4KZGEgcHJvZ3JhbW1pZXJlIGljaCBsaWViZXIgYXVmIG5lciBhbHRlbiBpYm0vMzYwIHVudGVyIGJzMjAwMAphc3NlbWJsZXIsIGFscyBkYXNzIGljaCB0YWVnbGljaCB2b24gd2luZG93cyBnZXp3dW5nZW4Kd2VyZGUgd2Vyd2Vpc3N3aWV2aWVsZSBmZWhsZXJtZWxkdW5nZW4gb2sgenUgZmluZGVuIHVuZCBsZXJuZQptZWluZSBhbnNwcnVlY2hlIGltbWVyIG1laHIgenVydWVja3p1c2NocmF1YmVuLgphYmVyIHdpbmRvd3Mgc2NoZWludCBzb3dhcyB3aWUgZWluIGdvdHQgZnVlciBkaWUgbWVuc2NoZW4genUKc2VpbiAtIGxhdXQgbWljcm9zb2Z0IGdhYnMgamEgc2Nob24gdm9yIGxhbmdlbSA2IG1pbyAoZ2x1ZWNrbGljaGUpCndpbmRvd3NhbndlbmRlciAuLiB1bmQgd2VubiBkaWUgZGllIHNpY2ggYXVjaCBudXIgaGFsYnNvc2NobmVsbAp2ZXJtZWhyZW4gd2llIGRpZSBtZW5zY2hoZWl0IC0gbmEgZGFubiBndXRlIG5hY2h0ICEKaW4gZGVtIGZhbGwgZm9yZGVyZSBpY2ggZGllIGdyb3NzcmVjaGVuYW5sYWdlbiBtaXQgc3R1cGlkZW4KdGVybWluYWxzIGltIHRlaWxoYWJlcmJldHJpZWIsIGRpZSBuYXR1ZXJsaWNoIG5pY2h0IGdyYWZpa2ZhZWhpZyBzaW5kLgp1bmQgdWViZXJoYXVwdCBqZWRlIGhhcmR3YXJlIGF1ZiBkZXIgd2luZG93cyBuaWNodCBsYXVmZW4ga2Fubi4KZG9jaCBhdWNoIGRhbm4gYmVmdWVyY2h0ZSBpY2ggLSB3dWVyZGVuIGRpZSBhbndlbmRlciBuYWNoCndpbmRvd3Mgc2NocmVpZW4gLSB1bmQgZGFubiBnaWJ0cyBoYWx0IG5lIHRleHR2ZXJzaW9uIGRhdm9uLgppY2ggaGFzc2UgZGllc2VtIHdpbmRvd3MtbWlzdCAtIGFiZXIgbWVpbiB3aWxsZSBpc3QgZ2Vicm9jaGVuLgp2aWVsbGVpY2h0IGtvbW0gaWNoIGphIG1pdCB3aW5kb2Z3IGtsYXIsIHdlbm4gaWNoIGJlaSBqZWRlbQplcnJvciBuZSBwYWNrdW5nIGJhbGRyaWFuIHNjaGx1Y2tlLiBvZGVyIHdhcyBoYWVydGVyZXMgLi4uCgpiaWJvIC0genVrdWVuZmlnZXIgZ3Jvc3NhYm5laG1lciBkZXIgYXJ6bmVpbWl0dGVsaW5kdXN0aWUKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXdWVzdGUgKERpZWRlciwgMTAuIERleiAxOTk2LCAyMTozMDoxMSk6CkdlcmFkZSBlYmVuOgouLi4gdGVpbHQgRGlyIG1pdDogSGkgRGllZGVyISBLb21tdCBtYW4gZWlnZW50bGljaCBnYW56IGltIFN1ZWRlbiBkZXIgV3Vlc3RlCm5vY2ggd2VpdGVyIG5hY2ggU3VlZGVuIG9kZXIgaXN0IGRhIGRhcyBNRyB6dSBFbmRlPz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV3Vlc3RlIChBc21vZGlzLCAxMC4gRGV6IDE5OTYsIDIxOjMyOjA1KToKfiMhIHJuPURpZWRlciBydD04NTAyNDk4MTEKfiMhIHRpZD04NTAyNDk4MTEKRGEgZmFlbGx0IG1hbiB2b24gZGVyIFNjaGVpYmUgaW5zIE5pY2h0cyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdpbmRvb2ZzLXp3YW5nIChEaG9qYWt0LCAxMC4gRGV6IDE5OTYsIDIxOjQ0OjI4KToKfiMhIHJuPUJpYm8gcnQ9ODUwMjQ5MDA1Cn4jISB0aWQ9ODUwMjQ5MDA1Ck9PY2gsIHNvbGFuZ2UgaWNoIG51ciBhdWYgQXJiZWl0IHVudGVyIFdpbmRvb2YgcHJvZ3JhbW1pZXJlbiBtdXNzLCBpc3QgbWlyIGRhcwpyZWxhdGl2IGVnYWwsIGljaCBrcmllZyBkaWUgYmVpIFByb2dyYW1tYWJzdHVlcnplbiB2ZXJicmF0ZW5lIFplaXQgamEgYXVjaApiZXphaGx0LCB1bmQgaWNoIGhhYiBzaW5udm9sbGVyd2Vpc2UgYWxsZXMgM2ZhY2ggZ2VzaWNoZXJ0LCBhdWYgRGlza3MvYW5kZXJlbgpSZWNobmVybi4uLiBQcml2YXQgbmVobSBpY2ggbGllYmVyIG5lbiBBbWlnYSBvZGVyIExpbnV4LgpCdHc6IHVudGVyIEJvcmxhbmRDIGxhZXNzdCBzaWNoIGRhcyBnYW56IHZlcm51ZWZ0aWcgcHJvZ2dlbi4gVmllbGxlaWNodCBpc3QKZGFzIGRlciBHUnVuZCwgd2FydW0gZGllIEZpcm1lbiBXaW4gbmVobWVuPyBBdXNzZXJkZW0gaGF0IGVzIGphICh0aGVvcmV0aXNjaCkKTXVsdGl0YXNraW5nLCB3YXMga2FubiBkaWUgU3BpZWxlZmlybWEgZGVubiBkYWZ1ZXIsIHdlbm4gZXMgYmVpIG1laHIgYWxzIDMKbGF1ZmVuZGVuIFByb2dyYW1tZW4gYWJzdHVlcnp0Li4uCkp1c3Qgc29tZSBQZW5uaWVzLgpLaGlkYXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFd1ZXN0ZSAoTXVwZmVsLCAxMC4gRGV6IDE5OTYsIDIzOjE0OjU4KToKfiMhIHJuPUFzbW9kaXMgcnQ9ODUwMjQ5OTI1Cn4jISB0aWQ9ODUwMjQ5ODExCgpEYXMgYXJtZSBOaWNodHMgOi0pCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZWJlbiB1ZWJlciBkZW4gU2NoaXJtIGdlZmxpbW1lcnQuLi4gPTopIChadWVyaWxldSwgMTEuIERleiAxOTk2LCAwMToxMzo1OSk6CmhpLApEYXMgaXN0IGViZW4gdWViZXIgbWVpbmVuIFNjaGlybSBnZWZsaW1lcnQuIEljaCBtdXNzIGFiZXIgdm9yaGVyIG5vY2gKZXJ3YWVobmVuIGRhc3MgZGFzIGVyc3RlIG1laW5lIEFrdHVlbGxlIFVocm1lbGR1bmcgaXN0IGRpZSBqZWRlc21hbCBrb21tdCB3ZW5uCmRpZSBTdHVuZGUgc2NobGFlZ3QsIGphamEgaWhyIGtlbm50IGRpZSBzY2hvbiwgYmVpIG1pciBpc3Qgc2llIGhhbHQgZXR3YXMKYW5kZXJzID06KSAtLS0tLS0gR08gLS0tLS0tPgoKCj4gVG9kIHNhZ3Q6IEtPTU0gTUlUIE1JUiBNRUlOIEFMVEVSIEZSRVVORCwgRVMgSVNUIDEgVUhSICEKQXNtb2RpcyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCgo9OikKClRzY2h1ZXNzLi4uICAgWnVlcmlsZXUgZGVyIHNjaHdhcnplIEVuZ2VsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2luZG9vZnMtendhbmcgKEFjcmltb24sIDExLiBEZXogMTk5NiwgMDI6NTk6MTEpOgp+IyEgcm49QmlibyBydD04NTAyNDkwMDUKfiMhIHRpZD04NTAyNDkwMDUKVHJhdXJpZywgYWJlciB3YWhyOiBEaWUgTGV1dGUgZmFsbGVuIGF1ZiBkaWUgc2NobGltbXN0ZSBXZXJidW5nIGFtIGxpZWJzdGVuCmhlcmVpbi4KTWVpc3RlbnMga2F1ZmVuIGRpZSAiZWluZmFjaGVuIiBMZXV0ZSBpbW1lciBudXIgZGFzIEJpbGxpZ3N0ZSwgZWdhbCBvYiBlcyBndXQKb2RlciBzY2hsZWNodCBpc3QsIHVuZCBkYWhlciBzZXR6dCBzaWNoIGF1Y2ggZGFzIEJpbGxpZ3N0ZSAod2FzIG1laXN0ZW5zCmdsZWljaHplaXRpZyBkYXMgU2NobGVjaHRlc3RlIGlzdCkgbGVpZGVyIGF1Y2ggZHVyY2guCkJlaSBXaW5kb29mIGlzdCBlcyBhbmRlcnMuIFp3YXIgc2luZCBkaWUgQW5zY2hhZmZ1bmdza29zdGVuIHZvbiBXaW5kb29mICh1bmQKZWluZW0gUEMpIGFtIEdlcmluZ3N0ZW4sIGplZG9jaCBpc3QgZGllIEhhbGJ3ZXJ0c3plaXQgZXh0cmVtIGt1cnogdW5kIGVzIG11c3oKc2VociBiYWxkIE5ldWVzIG5hY2hnZWthdWZ0IHdlcmRlbiwgd2VubiBtYW4gImF1ZiBkZW0gU3RhbmQiIGJsZWliZW4gd2lsbC4KV2FydW0gaXN0IGRpZSBIYWxid2VydHN6ZWl0IHNvIGt1cno/IFdlaWwgc3RhZW5kaWcgZXR3YXMgTmV1ZXMgaGVyYXVza29tbXQsCndhcyB6d2FyIGF1Y2ggbmljaHQgYmVzc2VyIGFscyBkYXMgQWx0ZSBpc3QsIGFiZXIgZGFmdWVyIHNpbmQgZGllIEJ1Z3MgZGVyCmFsdGVuIFZlcnNpb25lbiB3ZWcgKHVuZCBuZXVlIEJ1Z3MgZHJpbiksIHVuZCBkYXMgR2FuemUgc2llaHQgYW5zcHJlY2hlbmRlcgphdXMuClVuZCBtaXQgZGVuIEJ1Z3MgZGVyIGFsdGVuIFZlcnNpb25lbiBzaW5kIGRpZSBLYWV1ZmVyIHNvIGdlbmVydnQsIGRhc3ogc2llCmdlcm5lIG5vY2htYWwgdmllbCBHZWxkIGZ1ZXIgZGllIG5ldWVuIFZlcnNpb25lbiBhdXNnZWJlbiwgaW4gZGVuZW4gZGllIEJ1Z3MKYXVzZ2VtZXJ6dCBzaW5kLgpEYXN6IG5ldWUgQnVncyBkcmluIHNpbmQsIGludGVyZXNzaWVydCBnYXIgbmljaHQ7IHVuZCB3b2hlciBzb2xsdGUgbWFuIGRhcwphdWNoIGVyZmFocmVuPyBNaWNyb1NjaHVuZCBnaWJ0IHNlaW4gQmV0cmllYnNnZWhlaW1uaXMgbmljaHQgc28gbGVpY2h0IHByZWlzLgpEaWUgbWVpc3RlbiBMZXV0ZSBrb21tZW4gdWViZXJoYXVwdCBnYXIgbmljaHQgYXVmIGRpZSBJZGVlLCBkYXN6IGVzIHVlYmVyaGF1cHQKZXR3YXMgQW5kZXJlcyBnaWJ0IC0gdW5kIHdlbm4gc2llIGRlbm4gamVtYW5kZW4gdm9uIGV0d2FzIEFuZGVyZW0gcmVkZW4KaG9lcmVuLCBkYW5uIHNhZ2VuIHNpZSBnbGVpY2ggIkRhcyBpc3QgbmljaHQgdm9uIEtsZWlud2VpY2ggLSBhbHNvIGlzdCBlcwpzY2hsZWNodCIsIHNvIHNlaHIgc2luZCBzaWUgdm9uIGRlciBXZXJidW5nIHZlcmVpbm5haG10LgpVZWJlcmFsbCBob2VydCBtYW4gYXVjaCBzdGFlbmRpZyBudXIgdm9uICJQQyIgdW5kICJXaW5kb3dzIiwgdmllbGUKU29mdHdhcmVoZXJzdGVsbGVyIHdpdHRlcm4gZGVzaGFsYiBnZW5hdSBkb3J0IGRlbiBob2VjaHN0ZW4gUHJvZml0LCBhaG1lbiBkaWUKR2VsZGdpZXIgdm9uIEdhdGVzIG5hY2ggdW5kIHByb2dyYW1taWVyZW4gZnVlciBzb2xjaGUgT2JlcmZsYWVjaGVuLVNjcmlwdGVuLgpEaWUgbWVpc3RlbiBMZXV0ZSBzZWhlbiBkYW5uIGF1Y2ggbnVyIFNvZnR3YXJlIGZ1ZXIgZGllc2VuIEJlcmVpY2gKaGVyYXVza29tbWVuIHVuZCBtZWluZW4sIFBDIHNlaSBkYXMgQmVzdGUsICJ3ZWlsIGRhZnVlciBwcm9ncmFtbWllcnQgd2lyZCIuCk1pY3JvU2NodW5kIGJhdXQgYnJhdiBpbiBkaWUgbmV1ZW4gVmVyc2lvbmVuIHZvbiBXaW5kb29mIG5ldWUsIGJpc2hlcgp1bmJla2FubnRlIEJ1Z3MgZWluLCBkaWUgZGFubiBpcmdlbmR3YW5uIGVudGRlY2t0IHdlcmRlbiBrb2VubmVuIHNvbGxlbi4gV2VubgpkYW5uIGRpZSBCdWdzIGVudGRlY2t0IHdlcmRlbiwgc28ga2F1ZmVuIGRpZSBCZXNpdHplciBkaWVzZXIgVmVyc2lvbiBkaWUKZGFyYXVmIGZvbGdlbmRlIFZlcnNpb24gKGRlcmVuIExhZXN0aWdrZWl0ZW4gbmljaHQgYmVrYW5udCBzaW5kKSwgdW0gZWluZQoibm9jaCB3ZXNlbnRsaWNoIGJlc3NlcmUgR3J1bmRsYWdlIiBmdWVyIGlocmUgYWx0ZW4gUHJvZ3JhbW1lIHp1IGJla29tbWVuLgpXYXJ1bSBzaW5kIGRpZSBFaW5mYWx0c3BpbnNlbCB2b24gTWVuc2NoZW4gc28gYmxvZWQgdW5kIHphaGxlbiBqZWRlcyBKYWhyIGlocmUKc2VsYnN0YXVmZXJsZWd0ZW4gU3RldWVybiBhbiBCaWxsIEdhdGVzPwoxLiBTaWUga2VubmVuIG5pY2h0cyBBbmRlcmVzIChXZXJidW5nISkKMi4gU2llIGtlbm5lbiBXaW5kb29mIHVuZCBkaWUgZGFydW50ZXIgbGF1ZmVuZGUgU2NoZWlzemUgYmVyZWl0cwozLiBTaWUgaW50ZXJlc3NpZXJlbiBzaWNoIG5pY2h0IGZ1ZXIgaXJnZW5kd2FzLCB3YXMgbWl0IENvbXB1dGVybiB6dSB0dW4gaGF0CgpOYXR1ZXJsaWNoIGdpYnQgZXMgbmljaHQgbnVyIEVpbmZhbHRzcGluc2VsIGF1ZiBkZXIgV2VsdC4KRGllIE1laXN0ZW4gaW50ZXJlc3NpZXJlbiBzaWNoIGVpbmZhY2ggbmljaHQgZnVlciBkYXMgVGhlbWEgQ29tcHV0ZXIgdW5kCmRlbmtlbiBkYWhlciBhdWNoIGdhciBuaWNodCBuYWNoLgpWaWVsZSBhYmVyIGludGVyZXNzaWVyZW4gc2ljaCBzY2hvbiBkYWZ1ZXIsIHVuZCBzb2Zlcm4gc2llIGlocmUgQXVnZW4gbmljaHQKdmVyc2NobGllc3NlbiwgZHVlcmZ0ZSBpaG5lbiBrbGFyIHNlaW4sIGRhc3ogamVkZXIgYW5kZXJlIFJlY2huZXIgYmVzc2VyIGlzdAphbHMgZWluIFdpbmRvd3MtUEMuClZvbiAoZmFzdD8pIGFsbGVuIGFuZGVyZW4gU3lzdGVtZW4gaXN0IGtsYXIsIGRhc3ogc2llIGdlbmVyZWxsIGJlc3NlciBzaW5kCihiZXNzZXIgZHVyY2hkYWNodCwgbWFlY2h0aWdlciwgc2NobmVsbGVyKSwgdW5kIHRyb3R6IGRlciBob2VoZXJlbgpBbnNjaGFmZnVuZ3Nrb3N0ZW4gc2luZCBzaWUgYmlsbGlnZXIsIHdlaWwgZGllIEhhbGJ3ZXJ0c3plaXRlbiBuaWNodCBzbyBleHRyZW0Ka3VyeiBzaW5kLgpEaWVzZXMgd2llZGVydW0gaXN0IGRpZSBHYXJhbnRpZSwgZGFzeiBkaWUgYmVzc2VyZW4gU3lzdGVtZSBuaWNodCBhdXNzdGVyYmVuOwpkZW5uIGVzIGdpYnQgZG9jaCBlaW5lIGdld2lzc2UgTWVuZ2UgYW4gTGV1dGVuLCBkaWUgc2ljaCBhdXNrZW5uZW4sIHNpY2gKaW50ZXJlc3NpZXJlbiB1bmQgdm9yIGFsbGVtIGF1Y2ggbmFjaGRlbmtlbi4KRGFydW50ZXIgc2luZCBhdWNoIHZpZWxlIElkZWFsaXN0ZW4sIGRlbm4gLSB3aWUgSWhyIHNpY2hlciB3aXN6dCAtIGdpYnQgZXMgaW4KZGVyIFB1YmxpYyBEb21haW4tU29mdHdhcmUgdW5kIGRlciBTaGFyZXdhcmUtU29mdHdhcmUgYmVpIGRlbiBTeXN0ZW1lbiBBbWlnYSwKVW5peCwgLi4uIHphaGxyZWljaGUgc2VociBndXRlIFByb2dyYW1tZSwgZGllIGluIGlocmVyIExlaXN0dW5nc2ZhZWhpZ2tlaXQgdW5kCkJlZGllbmJhcmtlaXQgaWhyZSBrb21tZXJ6aWVsbGVuIEtvbmt1cnJlbnRlbiB1bnRlciBXaW5kb29mIHVtIExhZW5nZW4Kc2NobGFnZW4uCktsYXIsIGVzIHNpbmQgbmljaHQgZ2VuYXUgZGllamVuaWdlbiBTcGllbGUgZXJoYWVsdGxpY2gsIGRpZSBpbiBkZXIgV2VyYnVuZwpmdWVyIGRlbiBQQyBhbmdlcHJpZXNlbiB3ZXJkZW4gLSBhYmVyIHdlciBzaWNoIHVtc2NoYXV0LCBmaW5kZXQgZnVlciBkaWUKYW5kZXJlbiBDb21wdXRlcnN5c3RlbWUgcmVpY2hsaWNoIGFuc3BydWNoc3ZvbGxlIGFuZGVyZSBTcGllbGUsIGRpZSBlYmVuc292aWVsCndlcnQgc2luZC4KVW5kIGVzIHNpbmQgYXVjaCBuaWNodCBnZW5hdSBkaWUgUHJvZ3JhbW1lIGRlcmplbmlnZW4gZ2VsZGdlaWxlbiBGaXJtZW4KZXJoYWVsdGxpY2gsIGRpZSBtYW4gaW4gZGVyIFdlcmJ1bmcgc2llaHQ7IGFiZXIgZXMgZ2lidCBiZXNzZXJlIFByb2dyYW1tZSB2b24KYW5kZXJlbiBIZXJzdGVsbGVybiB1bmQgdm9yIGFsbGVtIGdpYnQgZXMgdmllbGUgUHJvZ3JhbW1lLCBkaWUgYXVmIGRlbSBQQwppaHJlc2dsZWljaGVuIHN1Y2hlbiAtIGVudHdlZGVyIHdlaWwgZGVyIFBDIHp1IGRpZXNlbiBJZGVlbiBnYXIgbmljaHQgZmFlaGlnCmlzdCwgb2RlciB3ZWlsIGVzIGF1ZiBpaG0gbnVyIG1pdCBleHRyZW1lbSBBdWZ3YW5kIGJpcyB1bm1vZWdsaWNoIHp1CnByb2dyYW1taWVyZW4gd2FlcmUuCkRpZSBadWt1bmZ0IGlzdCBuaWNodCBob2ZmbnVuZ3Nsb3MgLSBpbSBHZWdlbnRlaWw6IGRpZSBIb2ZmbnVuZyBpc3QgZ2VzaWNoZXJ0LgpEaWUgRnJhZ2UgaXN0IG51cjogU29sbGVuIHdpciBkaWUgRWluZmFsdHNwaW5zZWwgYXVmZ2ViZW4/CkRhcyBpc3Qgc2ljaGVybGljaCBuaWNodCByYXRzYW0sIGplZG9jaCBzZWhlIGljaCBtb21lbnRhbiBudXIgZWluZQpNb2VnbGljaGtlaXQ6IFdlcmJ1bmcuIEFiZXIgd2VyIGF1c3plciBNaWNyb1NjaHVuZCBoYXQgZGFzIEdlbGQgZnVlciBlaW5lCnVtZmFzc2VuZGUgV2VyYnVuZz8KCk1pY3JvU2NodW5kIHdpcmQgd2VpdGVyaGluIFVubWVuZ2VuIGFuIEJ1Z3MgKGJld3VzenQhKSBpbiBpaHJlIFZlcnNpb25lbgplaW5iYXVlbiwgdW0gZGllIE5hY2hmcmFnZSBuYWNoICJidWdmcmVpZXJlbiIgVmVyc2lvbmVuICh1bmQgc29taXQgZGVuCk5hY2hzY2h1YiB2b24gR2VsZCkgenUgc2ljaGVybi4KQW1pZ2EgKG1pdCBkZW4gQ2xvbmVzKSwgVW5peCAobWl0IGRlbiBkaXZlcnNlbiBJbXBsZW1lbnRhdGlvbmVuKSB1bmQgZXZ0CkFyY2hpbWVkZXMgd2VyZGVuIHdlaXRlciBleGlzdGllcmVuLCBpaHIgU3lzdGVtIHZlcmJlc3Nlcm4sIGlocmUKU3RhbW1rdW5kZW5zY2hhZnQgYmVoYWx0ZW4gdW5kIG5vY2ggbWVociBJZGVhbGlzbXVzIGVudHdpY2tlbG4uClZvbiBNYWNpbnRvc2ggcmVkIGljaCBsaWViZXIgbmljaHQgLSBBcHBsZSBpc3QgbmljaHQgbWVociB2aWVsIGJlc3NlciBhbHMKTWljcm9TY2h1bmQuIFNpZSBzaW5kIHp1IGdlbGRnaWVyaWcgZ2V3b3JkZW4sIGRhcyBTeXN0ZW0gaGF0IGdlbGl0dGVuLgoKU2ljaCBkYXMgU3lzdGVtIG5ldSBhdXN6dXdhZWhsZW4sIGlzdCB3aWUgVW16aWVoZW4gLSBtYW4gaGF0IGVyc3RtYWwgdmVybWVocnQKQXJiZWl0IHVuZCBrYWhsZSBXYWVuZGUsIGFiZXIgbmFjaCBkZW0gVW16dWcgaXN0IG1hbiBiZWdlaXN0ZXJ0IHVuZCB3ZWlzeiBkaWUKdmllbGVuIGhpbnp1Z2Vrb21tZW5lbiBNb2VnbGljaGtlaXRlbiBkZXMgbmV1ZW4gU3RhbmRvcnRlcyB6dSBzY2hhZXR6ZW4uCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIgc2FndDogS2FwaXRhbGlzbXVzIGlzdCBkZXIgVW50ZXJnYW5nIGRlcgpHZXNlbGxzY2hhZnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHdpbmRvb2ZzLXp3YW5nIChQYXRyeW4sIDExLiBEZXogMTk5NiwgMDQ6MTY6MTkpOgp+IyEgcm49QWNyaW1vbiBydD04NTAyNjk1NTEKfiMhIHRpZD04NTAyNDkwMDUKIEFITUVOIC4uLiBhbHNvIGpldHp0IG5vY2ggYW4gZWluIHVlYmVybGViZW4gdm9uIGFtaWdhIHVuZCBhcmNoaW1lZGVzIHp1CmdsYXViZW4gaGF0IHdvaGwgbml4IG1laHIgbWl0IHBhdHJpb3Rpc211cyB6dSB0dW4sIGljaCBuZW5uZSBkYXMgbWFsIHNwb250YW4KaWdub3JhbnogdW5kIHJlYWxpdGFldHNmZXJuLiBzaWNoZXIgc2luZCBkYXMgdG9sbGUgc3lzdGVtZSB1bmQgbWFuIGhhZXR0ZQplaW5lIG1lbmdlIGRyYXVzIG1hY2hlbiBrb2VubmVuLCBhYmVyIGVzIGZlaGxlbiBlaW5mYWNoIGRpZSBub2V0aWdlbiBmaXJtZW4KbWl0IGRlbSBub2V0aWdlbiBrYXBpdGFsIGRhaGludGVyLiBhdXNzZXJkZW0gZ2VyYXRlbiBiZWlkZSBzeXN0ZW1lIApnZWdlbnVlYmVyIGRlbSBwYyBzZWl0IGphaHJlbiB0ZWNobmlzY2ggaW1tZXIgbWVociBpbnMgYWJzZWl0cy4KZGVyIHBjIHZvbiBoZXV0ZSBtYWcgbm9jaCB2aWVsZSBuZWdhdGl2ZSBlaWdlbnNjaGFmdGVuIGRlcyBpYm0tcGMgdm9uCmRhbWFscyB2b3J3ZWlzZW4sIGhhdCBhYmVyIGRlbm5vY2ggbmljaHQgbWVociBhbGx6dXZpZWwgbWl0IGRlbSB6dSB0dW4uCndhcyBlaWdlbnRsaWNoIHN0b2VydCBzbyBzZWhyIGFuIGRlbiBoZXV0aWdlbiBwYydzPyBrbGFyLCB2aWVsZQpuZXR0ZSBrbGVpbmlna2VpdGVuLCB2aWVsZSBzdGVsbGVuIGFuIGRlbmVuIG1hbiBmYWxzY2ggc3BhcnQgdW5kIHNwYXJ0ZS4uLgphYmVyIGRhZHVyY2gga29ubnRlIHVuZCB3aXJkIGVyIHVlYmVybGViZW4hISEhIGRhcmFuIGthbm4gbWFuIGxlaWRlciBuaXgKYWVuZGVybiwgZGFzIGVoZW1hbHMgc2NobGVjaHRlc3RlIHN5c3RlbSB3aXJkIGRhcyByZW5uZW4gbWFjaGVuLgoKYXVjaCBiZWkgZGVuIGJldHJpZWJzc3lzdGVtZW4gc29sbHRlIG1hbiBtYWwgZGFzIGFudGktYmlsbC1nYXRlcy1icmV0dAp2b3JtIGtvcGYgd2VnbmVobWVuLCBpY2ggZmluZHMgYXVjaCBuaWNodCB0b2xsLCBkYXNzIGVyIHNvIG5lIG1vbm9wb2xzdGVsbHVuZwplcnJlaWNoZW4ga29ubnRlLCBhYmVyIHdhcyBkYXZvbiB6dSBicmFiYmVsbiwgZXIgdW5kIHNlaW5lIG1hbm5lbiBiYXVlbgphYnNpY2h0bGljaCBmZWhsZXIgaW4gZGllIHByb2dyYW1tZSBlaW4uLi4ub2ggbWFubi4uLndpZSBrYW5uIG1hbiBudXIKc29uIGJsZWNoIHJlZGVuLiB3aW5kb3dzIGluIHNlaW5lbiBqZXR6aWdlbiBiZWlkZW4gdmVyc2lvbmVuIGhhdCBzaWNoCmplZGVuZmFsbHMgc2VpdCBqYWhyZW4gd2VpdGVyZW50d2lja2VsdC4gZXMgd2FyIG5pZSBkYXMgYmVzdGUKYmV0cmllYnNzeXN0ZW0gdW5kIGtsYXV0ZSBpbiBuZXVlcmVuIHZlcnNpb25lbiBtZWlzdCBhdWNoIG51ciBkYXMgYmVyZWl0cwp2b3JoYW5kZW5lIHZvbiBkZW4gYW5kZXJlbi4uLmFiZXIgZXIgaGF0IG51biBtYWwgZXJmb2xnIGRhbWl0LCB1bmQgYXVjaAplaW4gdGVjaG5pc2NoIGJlc3NlcmVzIHVuaXggd2lyZCBzaWNoIG1hbCB3YXJtIGFuemllaGVuIG11ZXNzZW4uCgouLi4ubnVuIGphLi4uaWNoIGhhYiBlcnN0bWFsIGdlbnVnIGdlcGluc2VsdCA6KQoKLS0tLS0tCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdpbmRvb2ZzLXp3YW5nIChNb3JnYXIsIDExLiBEZXogMTk5NiwgMDk6MTk6NTEpOgp+IyEgcm49QmlibyBydD04NTAyNDkwMDUKfiMhIHRpZD04NTAyNDkwMDUKSWNoIGhhYiAnbiBndXRlbiBUaXAgZnVlciBEaWNoOgoKS2F1ZiBEaXIgbmVuIGFuZGVyZW4gQ29tcHV0ZXIuICh6LkIuIE1hYywgQXRhcmkgb2RlciBBbWlnYSkgRGEgZ2lidCdzIHNvJ24KU2Nocm90dCB3aWUgV2luZG9vZnMgbmljaHQuIDstKQoKTW9yZ2FyIHNlbmZ0IG1hbCB3aWVkZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2luZG9vZnMtendhbmcgKExhaWxhLCAxMS4gRGV6IDE5OTYsIDEwOjUyOjA3KToKfiMhIHJuPUJpYm8gcnQ9ODUwMjQ5MDA1Cn4jISB0aWQ9ODUwMjQ5MDA1ClRoaXMgcm9vbSBpcyBhaXItY29uZGl0aW9uZWQsIGRvbid0IG9wZW4gV0lORE9XUyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB3aW5kb29mcy16d2FuZyAoSGFkcmEsIDExLiBEZXogMTk5NiwgMTE6MDc6MTApOgp+IyEgcm49TGFpbGEgcnQ9ODUwMjk3OTI3Cn4jISB0aWQ9ODUwMjQ5MDA1CmdlaWwhIGdlbmF1IGRhcmF1ZiBoYWJlIGljaCBtYWwgd2llZGVyIGdld2FydGV0LgoKc28gZWluIHJpY2h0aWdlciByZWNobmVyLWEtaXN0LWJlc3Nlci1hbHMtYiB1bmQKYmV0cmllYnNzeXN0ZW0tYy1pc3QtYmVzc2VyLWFscy1kIHRocmVhZC4KCmVzIGlzdCB3aXJrbGljaCBiZWVpbmRydWNrZW5kLCBkYXNzIGRpZXNlIGRpbmdlciBlaW5mYWNoIG5pY2h0IHRvdHp1YmVrb21tZW4Kc2luZCB1bmQgcmVjaHQgc2NobmVsbCBpbiBmYXN0IHJlbGlnb2VzZSBlaWZlcmVpZW4gdWViZXJnZWhlbi4KCmltbWVyIHdpZWRlciBlaW5lbiBsYWNoZXIgd2VydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHdpbmRvb2ZzLXp3YW5nIChPZXR0aSwgMTEuIERleiAxOTk2LCAxMToxODo1OCk6Cn4jISBybj1IYWRyYSBydD04NTAyOTg4MzAKfiMhIHRpZD04NTAyNDkwMDUKV2FzIHdvbGx0IElociA/Pz8/PwoKV2FzIHdvbGx0IElociwgd2FzIHdvbGx0IElociA/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/CgpNZWluIENvbXB1dGVyIGxhZXVmdCwgb2IgbWl0IFdpbjk1LCBPcy8yLCBMaW51eCwgb2IgQXRhcmksIE1hYywgUEMsCldvcmtzdGF0aW9uLCBlcyBpc3QgbWlyIHN1cGVyZWdhbCwgZXIgdHV0J3MuCgpVbmQgd2VubiBlciBtYWwgYWJzY2htaWVydCBoYWJiaWNoIG5lIFJlc2V0LVRhc3RlLgoKTWVpbiBBdXRvIHouQi4gZmFoZXJ0IGF1Y2gsIG1laW5lIEFubGFnZSB0dXQgZXMsIGRhIGtvbW10Ck11c2lrIHJhdXMsIHdlbm4gaWNoIGF1ZidzIEtub2VwcHNjaCBkcnVlY2tlLi4uCgpTZWxic3QgbWVpbiBLbG8gdHV0J3Mgd2VubiBpY2ggZGllIFNwdWVsdW5nIHppZWhlLi4uCgpJY2ggaGFiIG1laW4gTGViZW4gaW0gR3JpZmYgOy0pKSkpCgpTbyB3aGF0ID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHdpbmRvb2ZzLXp3YW5nIChDYXVubywgMTEuIERleiAxOTk2LCAxMzoxMToxMSk6Cn4jISBybj1IYWRyYSBydD04NTAyOTg4MzAKfiMhIHRpZD04NTAyNDkwMDUKClZvciBhbGxlbSwgd2FzIHN1Y2h0IGRhcyBnYW56ZSBpbiBzY2htYXJybj8KU2VpdCBpY2ggbWVpbmUgRGlwbG9tYXJiZWl0IGZlcnRpZyBoYWJlLCBpc3QgV2luZG93cyBiZWkgbWlyIG5pY2h0IG1laHIKYWJnZXN0dWVyenQuCihIYXVwdHNhZWNobGljaCBsYWV1ZnQgamV0enQgYmVpIG1pciBET09NICYgS29uc29ydGVuIC4uLikKCkMuIE5vCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3b2hlciB3ZWlzcyBzaWUgZGFzID8gKEZsaW54LCAxMS4gRGV6IDE5OTYsIDEzOjE1OjE0KToKCiAKRGVyIFN0ZWluYmVpc3NlciB3YXJudCBEaWNoOgogICdXZWhlLCBEdSBmYWVuZ3N0IGFuLCBhbmRlcmUgU3BpZWxlciBhbnp1Z3JlaWZlbi4nCiAKRGVyIFN0ZWluYmVpc3NlciB2ZXJzY2h3aW5kZXQgd2llZGVyLCB1bmQgRHUgd2FjaHN0IGluIGVpbmVyIGFuZGVyZW4gV2VsdCBhdWYuCiAKV2llIGhlaXNzdCBEdSBkZW5uID8gZmxpbngKU2Nob2VuLCBkYXNzIER1IHdpZWRlciBkYSBiaXN0LCBGbGlueCEKUGFzc3dvcmQ6IFFpdGVzcyBydWZ0OiA+Pj4+Pj4+Pj4+Pj4+Pj4tLS1HUkFUUyEtLS08PDw8PDw8PDw8PDw8PDwKCkhtbSwgbXVzc3RlcyBkdSBkYXMgdmVycmF0ZW4gPyA7KQoKCkZsaW54LCBnZWh0IHNlaW4gcGFzc3dvcnQgYWVuZGVybiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3aW5kb29mcy16d2FuZyAoR3JpbW1ib3JuLCAxMS4gRGV6IDE5OTYsIDE0OjQ0OjAzKToKfiMhIHJuPUJpYm8gcnQ9ODUwMjQ5MDA1Cn4jISB0aWQ9ODUwMjQ5MDA1CgpJY2ggc2VoZSBEZWluIFByb2JsZW0gZWlnZW50bGljaCBuaWNodCBzbzoKYSkgRHUgZ2Voc3QgaW4gZGVuIExhZGVuLCBrbmFsbHN0IGRlbmVuIGRhcyBTcGllbCBhdWYgZGVuIFRpc2NoIHVuZCBob2xzdAogICBEZWluIEdlbGQgd2llZGVyIChWb3JzcGllZ2VsdW5nIGZhbHNjaGVyIFRhdHNhY2hlbiBvZGVyIHNvd2FzLCBqZWRlIFdldHRlCiAgIGRpZSBuZWhtZW4gZGFzIHp1cnVlY2spLgpiKSBEdSB3aWxsc3QgZGFzIFNwaWVsIHNwaWVsZW4uIERhbm4gbGVnc3QgRHUgRGlyIFdpbk5UIHp1LiBCaW5hZXJrb21wYXRpYmVsCiAgIHp1IHJlaW5lbiBXaW4zLngvV2luOTUsIGRldXRsaWNoIHN0YWJpbGVyLCBzaWNoZXJlciwgYmVzc2VyLiBOZWluLCBpY2ggCiAgIHNhZ2UgbmljaHQgZGFzcyBlcyBkYXMgYmVzdGUgdW5kIGVpbnppZ2UgT1MgYWxsZXIgWmVpdGVuIGlzdCwgYWJlciBlcyBpc3QKICAgdGF0c2FlY2hsaWNoIG5pY2h0IHNjaGxlY2h0LiBXZW5uIER1IHZvbiAiRXhwZXJ0ZW4iIGFuZ2VwaW5rZWx0IHdpcnN0IHdlaWwKICAgRHUgZWluIEdhdGVzLVByb2R1a3QgYXVmIGRlbSBSZWNobmVyIGhhc3Qga2FubnN0IER1IGlobmVuIGRhcyBXb3J0ICJQT1NJWCIKICAgZW50Z2VnZW5oYWx0ZW4uIEVudHdlZGVyIHNpZSB3aXNzZW4gbmljaHQgd2FzIGRhcyBpc3QgdW5kIGRhbm4ga2FubnN0IER1IAogICBpaHIgRXhwZXJ0ZW53aXNzZW4gZWggbmljaHQgZXJuc3QgbmVobWVuIG9kZXIgc2llIHdpc3NlbiBlcyB1bmQgc2luZCAKICAgcnVoaWdlci4KYykgRHUgd2lsbHN0IHNvd29obCBkZW4gRXhwZXJ0ZW4gcmF1c2hhZW5nZW4gYWxzIGF1Y2ggZGFzIFNwaWVsIHNwaWVsZW4uIERhCiAgIGdpYnQgZXMgZGllIE1vZWdsaWNoa2VpdCB1bnRlciBMaW51eCAod2FzIGFscyBPUyBpbSBHZWdlbnNhdHogenUgQWNyaW1vbnMKICAgTWVpbnVuZyBiaWxsaWdlciBpc3QgYWxzIFdpbikgc293YXMgd2llIFdBQkkgKFdpbmRvd3MgQXBwbGljYXRpb24gQmluYXJ5CiAgIEludGVycHJldGVyKSB6dSBpbnN0YWxsaWVyZW4uIERhcyBpc3QgaW0gR2VnZW5zYXR6IHp1IExpbnV4IHNlbGJlciBuaWNodAogICBtZWhyIGtvc3RlbmxvcywgaXN0IGFiZXIgYW5zb25zdGVuIHdvaGwgZXh0cmVtIGd1dCwgZC5oLiBlcyBzY2htaWVydCBuaWNodAogICB3ZXNlbnRsaWNoIG9lZnRlciBhYiBhbHMgZGFzIE9yaWdpbmFsd2luZG93cy4gV2llIGVzIGRhIG1pdCBkZW4gMzJiaXQgCiAgIEFud2VuZHVuZ2VuIHN0ZWh0IHdlaXNzIGljaCBhbGxlcmRpbmdzIG5pY2h0LiBEdSBrYW5uc3QgYXVjaCBub2NoIGVpbiAKICAgV2VpbGNoZW4gd2FydGVuLCBiaXMgd2luZSBmZXJ0aWcgaXN0LiBEYXMgbGFldWZ0IGF1Y2ggbWl0IDMyYml0IGFwcHMsCiAgIHNvIGVzIGRlbm4gZWluZXMgVGFnZXMgbGFldWZ0IChiaXNoZXIgbm9jaCBsZWRpZ2xpY2gga2xlaW5lcmUgQW53ZW5kdW5nZW4KICAgdW50ZXIgbWFzc2l2ZW0gQ1BVLSB1bmQgU3BlaWNoZXJ2ZXJicmF1Y2gpLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgpQLlMuIFdvIGhpZXIgZG9jaCBhbnNjaGVpbmVuZCBkaWUgZHVyY2hzY2huaXR0bGljaGUgQW56YWhsIGRlciBCZXRyaWVic3N5c3RlbWUKICAgICBiZWkgZGVuIExldXRlbiBnZWdlbiA1IHN0cmVidDogV28gbmVobXQgaWhyIGRpZSBaZWl0IGRhenUgaGVyPyBJY2ggCiAgICAgYnJhdWNoZSBsb2NrZXIgZWluZW4gTW9uYXQgcmVjaHQgaW50ZW5zaXZlIEFud2VuZHVuZyBiaXMgaWNoIG1pdCBlaW5lbQogICAgIE9TIGhhbGJ3ZWdzIGFuc3RhZW5kaWcgdW1nZWhlbiBrYW5uLgoKUC5QLlMuIFdlciBET1MgZnVlciBzdGFiaWxlciBhbHMgV2luOTUgaGFlbHQgaGF0IHdhcyBuaWNodCB2ZXJzdGFuZGVuLiBCZWkgZGVuCiAgICAgICBnYW56ZW4gaGlzdG9yaXNjaGVuIHdvcmthcm91bmRzIHVuZCB1bnNhdWJlcmVuIEtvbnplcHRlbiBpc3QgV2luOTUKICAgICAgIHVtIEtsYXNzZW4ga29uc2VxdWVudGVyIHVuZCBzdGFiaWxlci4gQXVjaCB3ZW5uIGRpZSBidW50ZW4gQmlsZGNoZW4KICAgICAgIG5lcnZlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMTEuIERleiAxOTk2LCAxNToxMTowMik6CgoiRWluIFRyZWZmZW4gaXN0IGRlciBCZWdpbm4gZWluZXMgQWJzY2hpZWRlcy4iIChqYXBhbmlzY2gpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTcHJ1Y2ggZGVyIFdvY2hlIChPZXR0aSwgMTEuIERleiAxOTk2LCAxNToxMjowNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODUwMzEzNDYyCn4jISB0aWQ9ODUwMzEzNDYyCk1laW4gTHVmdGtpc3NlbmZhaHJ6ZXVnIGlzdCB2b2xsZXIgQWFsZSAhIQoKT2V0dGkgZGVyIFBvbHlnYW1pc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHdpbmRvb2ZzLXp3YW5nIChBY3JpbW9uLCAxMS4gRGV6IDE5OTYsIDE1OjUxOjI3KToKfiMhIHJuPVBhdHJ5biBydD04NTAyNzQxNzkKfiMhIHRpZD04NTAyNDkwMDUKSGllciBoYWJlbiB3aXIgZGVuIHR5cGlzY2hlbiBLb25zdW1lbnRlbiBtaXQgc2VpbmVyIGlnbm9yYW50ZW4gdW5kIHZvciBhbGxlbQp1bmlkZWFsaXN0aXNjaGVuLCB2ZXJ6d2VpZmVsdCBha3plcHRpZXJlbmRlbiwgZ2VkYW5rZW5sb3NlbiAiSXN0IG1pciBkb2NoCmVnYWwiLUVpbnN0ZWxsdW5nLgooPlNvbGxlbiBkaWUgR2llcmlnZW4gZG9jaCBiZWxvaG50IHdlcmRlbiwgc29sbCBzaWNoIGRhcyBTY2hsZWNodGVzdGUKZHVyY2hzZXR6ZW4gdW5kIG1hc3NlbmhhZnQgQXJiZWl0c2phaHJlIHZlcnNjaGx1Y2tlbiwgdW0gbm9jaCB6dSByZXR0ZW4sIHdhcwpub2NoIHp1IHJldHRlbiBpc3QsIHdlbm4gbm9jaCB3YXMgenUgcmV0dGVuIGlzdCwgdW0gZXMgYmVzc2VyIHp1IG1hY2hlbi4KQWJlciBkYSBuaWNodHMgbWVociB6dSByZXR0ZW4gaXN0LCBpc3QgZXMgdW5zIGVnYWwsIHVuZCB3aXIgc2Nod2Vua2VuIGF1ZiBkYXMKU3lzdGVtIHVtLCBkYXMgInNpY2ggZHVyY2hzZXR6dCIuIERhbm4ga29lbm5lbiB3aXIgbWVociBHZWxkIHZlcmRpZW5lbiwgdW5kCkdlbGQgaXN0IGFsbGVzIHVuZCBkYXMgRWluemlnZSwgdW5kIHdhcyBzY2hlcnQgdW5zIGRhcyBHZXdpc3Nlbj88KQoKV2lkZXJsaWNoLCBzbyBlaW5lIEVpbnN0ZWxsdW5nIQoxLiBpZ25vcmllcnQgc2llIGRpZSBNb2VnbGljaGtlaXQsIGRhc3ogZXMgemFobHJlaWNoZSBNZW5zY2hlbiBnaWJ0LApkaWUgbm9jaCBldHdhcyB3aWUgR2V3aXNzZW4gb2RlciBJZGVhbGlzbXVzIG9kZXIgVmVybnVuZnQgaGFiZW4uCjIuIGlzdCBzaWUgZGFoZXIgd2VsdGZyZW1kLiBXZXIgR2V3aXNzZW4gaGF0LCBzY2h3ZW5rdCBuaWNodCBzbwplaW5mYWNoIG1pci1uaWNodHMtZGlyLW5pY2h0cyBhdWYgZWluIHNjaGxlY2h0ZXMgU3lzdGVtIHVtLApkYXMgaW0gQmVncmlmZiBpc3QsICJzaWNoIGR1cmNoenVzZXR6ZW4iLgozLiB1bnRlcnN0dWV0enQgc2llIGRhaGVyIGltbWVyIGRhcyBHZWxhZXVmaWdzdGUsIHNlbGJzdCB3ZW5uIGVzIHNjaGxlY2h0CmlzdCwgc2Nod2ltbXQgaW4gamVkZW0gU3Ryb20gKERyZWNrYnJ1ZWhlKSBtaXQuIExhc2NoZXMgV2Fzc2VyLgo0LiBtYWNodCBkaWVzZSBFaW5zdGVsbHVuZyBibGluZCBmdWVyIGRpZSBMYW5kc2NoYWZ0IHVtIGRlbiBGbHVzcyBoZXJ1bS4KCgpOdW4genUgRGVpbmVtIEFydGlrZWw6CgpXYXMgbWVpbnN0IER1LCB3YXMgd29obCBwYXNzaWVyZW4gd3VlcmRlLCB3ZW5uIGluIGVpbmVyIFdpbmRvd3MtVmVyc2lvbiBrZWluZQpGZWhsZXIgb2RlciBhbmRlcmUgTGFlc3RpZ2tlaXRlbiB3YWVyZW4/CkRpZSBMZXV0ZSB3YWVyZW4genVmcmllZGVuIGRhbWl0IHVuZCB3dWVyZGVuIGRpZXNlIFZlcnNpb24gcmVjaHQgbGFuZ2UKYmVoYWx0ZW4uClNpZSB3dWVyZGVuIGRpZSBuYWVjaHN0ZW4gMTAgVmVyc2lvbmVuIHVlYmVyc3ByaW5nZW4gdW5kIGVyc3Qgd2llZGVyIGRpZSBlbGZ0ZQprYXVmZW4uClVuZCB3YXMgcGFzc2llcnQsIHdlbm4gbGFlc3RpZ2UgTWFlbmdlbCBkcmluIHNpbmQ/CkRpZSBMZXV0ZSBzaW5kIG5pY2h0IHp1ZnJpZWRlbiBkYW1pdCB1bmQga2F1ZmVuIG1vZWdsaWNoc3QgYmFsZCBlaW5lIG5ldWUKVmVyc2lvbiwgZGllIHZlcnNwcmljaHQsIGRpZSBhbHRlbiBNYWVuZ2VsIGF1c3p1bWVyemVuLiBBdWYgbmV1ZSBTb2Z0d2FyZQp1bXp1c2Nod2Vua2VuLCBoYWJlbiBzaWUgbWVpc3Qga2VpbmUgTHVzdCwgd2VpbCBkYXMgYmVkZXV0ZXQKQW5zY2hhZmZ1bmdza29zdGVuIHVuZCBVbWxlcm5lbi4KV3VlcmRlIEJpbGwgR2F0ZXMgbWl0IHNlaW5lciBHZWxkc3VjaHQgZmVobGVyZnJlaWUgU29mdHdhcmUgYXVzbGllZmVybiwgbWl0CmRlciBkaWUgTGV1dGUgenVmcmllZGVuIHdhZXJlbj8KRXIgd3VlcmRlIGVzIHNjaG9lbiBibGVpYmVuIGxhc3Nlbi4KCldlaXRlcmhpbiBzaW5kIGluIGRlaW5lbSBBcnRpa2VsIHphaGxyZWljaGUgVW53YWhyaGVpdGVuLgpUZWNobmlzY2ggd2lyZCBkZXIgQW1pZ2Egc3RhZW5kaWcgd2VpdGVyZW50d2lja2VsdCB1bmQgYmF1dCBzZWluZW4gVm9yc3BydW5nCmVoZXIgYXVzIGFscyBkYXN6IGVyIGlucyBBYnNlaXRzIGdlcmF0ZS4KRGllIEJyZW1zZSAtIENvbW1vZG9yZSAtIGlzdCBHb3R0IHNlaSBEYW5rIGVuZGxpY2ggZ2VmYWxsZW4sIENsb25lcyBnaWJ0IGVzCmVuZGxpY2gsIGRhcyBBbWluZXQgaXN0IGRpZSB1bWZhbmdyZWljaHN0ZSB1bmQgcXVhbGl0YXRpdnN0ZSBTb2Z0d2FyZXNhbW1sdW5nCnVlYmVyaGF1cHQgdW5kIHdhZWNoc3Qgdm9uIE1vbmF0IHp1IE1vbmF0IHNjaG5lbGxlciwgdW5kIGRpZQpIYXJkd2FyZWFiaGFlbmdpZ2tlaXQgaXN0IGViZW5mYWxscyBpbSBCZWdyaWZmIHp1IGZhbGxlbi4KRGFzIHZpZWx1bXdvcmJlbmUgIlBsdWcmUGxheSIgaXN0IGF1ZiBkZW0gQW1pZ2Ega2VpbiBUaGVtYSwgd2VpbCBlcyBpbW1lcgpzY2hvbiBmdW5rdGlvbmllcnQgaGF0LCBNdWx0aXRhc2tpbmcgdW5kIHNpbm52b2xsZSBHbGllZGVydW5nIHVuZApCZXJlaXRzdGVsbHVuZyBkZXMgU3lzdGVtcyBlYmVuZmFsbHMga2VpbiBUaGVtYSwgZGllIE9iZXJmbGFlY2hlIGlzdCBtaXQKRXJ3ZWl0ZXJ1bmdlbiBhdXMgZGVtIEFtaW5ldCBuaWNodCB6dSBzY2hsYWdlbiwgR2VzY2h3aW5kaWdrZWl0IHVuZCBFZmZpemllbnoKc2luZCAoaGFyZHdhcmV1bmFiaGFlbmdpZykgdW5nZWJyZW1zdCwgdW5kIHdlciBpbnMgQW1pbmV0IHNjaGF1dCwgc2llaHQsIGRhc3oKbWFuIG1pdCBkZW0gQW1pZ2EgYWxsZXMgbWFjaGVuIGthbm4sIHdhcyBtYW4gc2ljaCB3dWVuc2NoZW4ga29lbm50ZS4KCkljaCBiZWhhdXB0ZSBuaWNodCwgZGFzeiBkZXIgQW1pZ2EgZnVlciBhbGxlcyBkZXIgYmVzdGUgQ29tcHV0ZXIgd2FlcmUuCldvIG1laHJlcmUgTGV1dGUgenVzYW1tZW5hcmJlaXRlbiB1bmQgd2FzIG1pdCBkZW0gTmV0eiB6dSB0dW4gaGF0LCBkYWZ1ZXIgaXN0ClVuaXggaWRlYWwuCkZ1ZXIgTXVzaWthbndlbmR1bmdlbiBnaWJ0IGVzIGZ1ZXIgZGVuIEF0YXJpIChkZXIgbGVpZGVyIG5pY2h0IG1laHIgZW50d2lja2VsdAp3aXJkKSBkaWUgYmVzdGUgU29mdHdhcmUuClVuZCBhbHMgRXJzYXR6IGZ1ZXIgZGllIFNjaHJlaWJtYXNjaGluZSBmdWVyIFNla3JldGFlcmlubmVuIHVuZCBhbHMKU3BpZWxrb25zb2xlIGlzdCBkZXIgUEMgYXVzcmVpY2hlbmQsIHdvZHVyY2ggZGVyIFBDIGltbWVyIG5vY2ggZGVyIGhhZXVmaWdzdGUKQ29tcHV0ZXIgYmxpZWJlLgoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyIHZlcm11dGV0OiBFcyBnaWJ0IHp3ZWkgQXJ0ZW4gdm9uIE1lbnNjaGVuIC0KZGllamVuaWdlbiBtaXQgU2VlbGUgdW5kIGRpZSwgZGllIGtlaW5lIGhhYmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogd2luZG9vZnMtendhbmcgKE9ldHRpLCAxMS4gRGV6IDE5OTYsIDE1OjUzOjQ4KToKfiMhIHJuPUFjcmltb24gcnQ9ODUwMzE1ODg3Cn4jISB0aWQ9ODUwMjQ5MDA1CkFyZ2ggISEhCgpJY2ggZ2xhdWIgaWNoIGhhYiBuZSBCbGFzZSBhbSBPaHIsIG9kZXIgdHJhZWZlbHQgc2Nob24gYmx1dCByYXVzLi4uCgpOYSBqYSB3YWhsd2Vpc2UuLi4KClVoaCBtYW5uLi4uCgpTZWxic3Qgd2VubiBpY2ggQ2hyaXN0IHdhZXJlLCBqZXR6dCB3dWVyZGUgaWNoIGFic3ByaW5nZW4gOy0pKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogd2luZG9vZnMtendhbmcgKFN1c2hpLCAxMS4gRGV6IDE5OTYsIDE1OjU0OjQyKToKfiMhIHJuPU9ldHRpIHJ0PTg1MDI5OTUzOAp+IyEgdGlkPTg1MDI0OTAwNQpXZW5uIERlaW4gTlQtZmRpc2sgMyBHQiBEYXRlbiBpbiBkZW4gTXVlbGwgdmVyc2Nob2JlbiBoYWV0dGUsIHd1ZXJkZXN0IER1IGRhcwpuaWNodCBtZWhyIHNvIGxvY2tlciBzZWhlbi4uLgoKU3VzaGkKCkxpbnVYLCBiZWNhdXNlIHJlYm9vdHMgYXJlIGZvciBoYXJkd2FyZSBjaGFuZ2VzIG9ubHkuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHdpbmRvb2ZzLXp3YW5nIChQYXRyeW4sIDExLiBEZXogMTk5NiwgMTU6NTY6NDMpOgp+IyEgcm49QWNyaW1vbiBydD04NTAzMTU4ODcKfiMhIHRpZD04NTAyNDkwMDUKenUgZGVpbmVtIGVyc3RlbiB0ZWlsLi4uLm5ldHRlIG1vcmFsaXNpZXJlbmRlIHN0YW5kcGF1a2UuLi5hYmVyIGRhcmF1ZiB6dQphbnR3b3J0ZW4gaXN0IG1pciBlY2h0IHp1IGJsb2VkCgp6dW0gendlaXRlbiB0ZWlsOiBhbWlnYSBiYXV0IHRlY2huaXNjaGVuIHZvcnNwcnVuZyBhdXM/IGRhcmF1ZiB6dSBhbnR3b3J0ZW4KaXN0IG1pciBlY2h0IHp1IGJsb2VkCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB3aW5kb29mcy16d2FuZyAoU3VuZmxvd2VyLCAxMS4gRGV6IDE5OTYsIDE2OjE5OjE4KToKfiMhIHJuPUFjcmltb24gcnQ9ODUwMzE1ODg3Cn4jISB0aWQ9ODUwMjQ5MDA1CipzZW5mdHViZSBhdWYqCgpBdGFyaSAtLSBNdXNpayA/IG1laW4gMjYwMGVyIGhhdCBudXIgZ2VkdWRlbHQgOikKCk11c2lrIGlzdCBQQyB1bmQgQW1pZ2EgYWxzIEdlc3Bhbm4gc3VwZXIgZWluc2V0emJhciwgdm9ycmF1c2dlc2V0enQgbWFuCmhhdCBkaWUgU29mdHdhcmUgIlByb3RyYWtlciIgOikKClVlYmVyIGRpZSBTcGllbGVwcm9ibGVtYXRpayBrYW5uIGljaCBuaWNodCByZWRlbiwgZGEgc2VpdCAxIDEvMiBKYWhyZW4KU3BpZWxlIGF1ZiBtZWluZXIgRmVzdHBsYXR0ZSBuaXggenUgc3VjaGVuIGhhYmVuLgoKWnUgV2luZG93czogCgpJY2gga2FubiBudXIgc2FnZW4gZGFzIFdpbmRvd3MtTlQgZGFzIGVpbnppZyB2ZXJudWVmdGlnZSBCUyBhdXMgZGVtIGhhdXNlCk1pY3JvRG9vZiBpc3QuCgpXaW5kb3dzIDk1IGlzdCBmdWVyIG1pY2ggbmljaHQgbmFjaHZvbGx6aWVoYmFyIChpbW1lciBkaWVzZSBWZXJ6ZWljaG5pc3NlCnZvbiBkZW4ga2VpbmVyIHdlaXNzIHdhcyBzaWUgc29sbGVuIHVuZCB3ZXIgc2llIGFuZ2VsZWd0IGhhdCkgdW5kCmRpZSB0b2xsZW4gQW5pbWF0aW9uZW4gKHdlciBicmF1Y2h0IGRlbiBzb3dhcz8pLCBmdWVyIG1pY2ggaXN0IGVzCmhhbHQgZGFzIEJTIHdhcyBkaWUgd29sbGVuIGRpZSBkZW5rZW4gZXMgZ2lidCBrZWluZSBhbmRlcmUgRmlybWEgYXVzc2VyCk1pY3JvRG9vZi4KCldpbmRvd3MgMy4xIG51dHplIGljaCBuaWNodCA6KQoKV2luZG93cyAzLjExIGxhZXVmdCBiZWkgbWlyIGVpbmlnZXJtYXNzZW5zdGFiaWwsIHNvbGFuZ2UgaWNoIG5pY2h0IDIKVHJ1bXB0ZWxGZW5zdGVyIG9lZmZuZSBvZGVyIG1hbCB6bXVkIGhvY2hmYWhyZSAhIERhbm4gaXN0IGF1cyBtaXQgbHVzY2h0aXNjaAoKV2luZG93cyAyLjEgZGFzIGtlbm50IGphIGxlaWRlciBrZWluZXIgbWVocgoKTWVpbmUgRXJmYWhydW5nZW4gaGFiZW4gZ2V6ZWlndCBkYXMgbWFuIGRpZSBCUyBlaW5zZXR6dCBuYWNoOgoKa2VpbmUgQWhudW5nLCBrbGVpbmVzIEtpbmQsIGFuIGJ1bnRlbiBCaWxkY2hlbiBlcmZyZXVlbmQsIHVlYmVyIGFuaW1hdGlvbmVuCmxhY2hlbmQgIC0tLT4gV2luZG93cyA5NQoKYmlzc2VsIG1laHIgQWhudW5nICh3ZWlzcyBzY2hvbiB3aWUgZWluIENvbXB1dGVyIGFuZ2VodCkKCkRvcyB4Lnh4ICsgV2luZG93cyAzLjF4CgpOZXR6d2Vyaywgb3JkZW50bGljaGVzIE11bHRpdGFzay4gTGludXgsIFVuaXgKCgpadWhhdXNlIGhhYmUgaWNoIG1laW4ga2xlaW5lcyBXaW5kb3dzIHdvIGljaCBhYnVuZHp1IG1hbCBwYWFyIH50bXAgZGF0ZWllbgpsb2VzY2hlbiBtdXNzLCB3ZWlsIGRpZSBkYXVlcm5kIG1laW5lIFBsYXR0ZSBmZXN0bXVlbGxlbiBhYmVyIGFuc29uc3RlbgptdXNzIGljaCBzYWdlbiBMaW51eCB1bmQgRnJlZUJTRCBnZWZhbGxlbiBtaXIgZWluZmFjaCBiZXNzZXIgOikKCldlciBkZW4gU2lubiBkaWVzZXMgQXJ0aWtlbHMgYmVncmVpZnQsIGthbm4gbWlyIGRlbiBzaW5uIG1hbCBzYWdlbiA6KQoKICAgICAgICAgICAgICAgICAgICAtLT09PSBibHVlbWNoZW4gPT09LS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLiAoV2FycmlvciwgMTEuIERleiAxOTk2LCAxNzoyMToxMCk6CltBYmVudGV1ZXI6QWNoYWt6YWldIFNPUzogSWNoIHdhciBpbiBGZXJud2VzdCBhdWYgZGVtIFdlZyBuYWNoIFhpYW4sIGJpbiBhYmVyCltBYmVudGV1ZXI6QWNoYWt6YWldIGlyZ2VuZHdpZSB2b20gV2VnIGFiZ2Vrb21tZW4gdW5kIGpldHp0IGluIGVpbmVtCltBYmVudGV1ZXI6QWNoYWt6YWldIHVudGVyaXJkaXNjaGVuIEdld29lbGJlIG1pdCBqZWRlciBNZW5nZSBab21iaWVzISBXaWUKW0FiZW50ZXVlcjpBY2hha3phaV0ga29tbWUgaWNoIGhpZXIgcmF1cz8KW01vZXJkZXI6R2Vpc3QgQWNodGFyY2hzXSBMZXJuIGxpZWJlciwgc3RhdHQgdW5zY2h1bGRpZ2UgTW9uc3RlciB6dSBlcm1vcmRlbiwKW01vZXJkZXI6R2Vpc3QgQWNodGFyY2hzXSBEaWVkZXIhCltBbGxnZW1laW46RWxpdGVdIHBhY2tlciB2ZXJwaXNzIGRpY2ggaWNoIHdpbGwgYWxsZWluIHRyYWluaWVyZW4hIQpbQWJlbnRldWVyOkRpZWRlcl0gYW5ncmVpZmVuIC0tPiBMYXJzIC0tPiBLYXBlbGxlIDspKQpbQWxsZ2VtZWluOkVsaXRlXSBqYSBnaWIgaGVyCltBYmVudGV1ZXI6QWNoYWt6YWldIE9jaCBub29vb2VlZWVlISEhCltBbGxnZW1laW46R2FzdDMgIGdyaW5zdF0KW01vZXJkZXI6R2Vpc3QgZWluZXIgRWxzdGVyXSBEaWNoIG1lcmsgaWNoIG1pciwgRHluYW1vIQpbQWJlbnRldWVyOkZlc3Rpbl0gT2RlciBlaW5mYWNoIGRhcyBHZXJ1ZW1wZWwgdW50ZXJzdWNoZW4KW0FiZW50ZXVlcjpHYXN0MyBncmluc3RdCltUb2Q6TGFyc10gRWluIFpvbWJpZWtpbmQgaGF0IGdlcmFkZSBBY2hha3phaSB1bWdlYnJhY2h0LgoKTm8gY29tbWVudAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogd2luZG9vZnMtendhbmcgKE11cGZlbCwgMTEuIERleiAxOTk2LCAxNzo0ODoxOCk6Cn4jISBybj1BY3JpbW9uIHJ0PTg1MDMxNTg4Nwp+IyEgdGlkPTg1MDI0OTAwNQoKSGFzdCBEdSBtYWwgZHJhbiBnZWRhY2h0LCBkYXNzIER1IG1pdCBkZWluZW0gSW50ZXJOZXQgWnVnYW5nIGF1ZiAnYW1pbmV0JyBlaGVyCm5lIEF1c25haG1lIGRhcnN0ZWxsc3Q/IFp1bWVpc3QgZ2VodCBkYXMgbWl0IGRlbiBXaW50ZWwtUENzIGdhbnogYW5kZXJzOgpKZW1hbmQgaGF0IGluIHNlaW5lciBGaXJtYSBudXIgV2ludGVsLVJlY2huZXIsIG1pdCBXb3JkLCBFeGNlbCwgdW5kIHdhcyBlcyBkYQpzbyBnaWJ0LiBFciBrZW5udCBkYXMgU3lzdGVtLCBhbHNvIGthdWZ0IGVyIHNlbGJlciBzbyduIERpbmcuIFVuZCAtIHVuZCBqZXR6dAprb21tdCBkZXIgUHVua3QhIC0gZGFubiBrbGF1dCBlciBkaWUgcGFzc2VuZGUgU29mdHdhcmUgaW4gc2VpbmVyIEZpcm1hICh3ZW5uCnNpZSBuaWNodCBzY2hvbiBpbSBLYXVmcHJlaXMgZGFiZWkgd2FyKS4gRGFzIGlzdCBpbiBtZWluZW4gQXVnZW4gZGVyCmVpZ2VudGxpY2hlIEdydW5kIGZ1ZXIgZGllIFZlcmJyZWl0dW5nIGRlcyBQQzogZGVyIFNvZnR3YXJla2xhdS4gSWNoIGtlbm5lICduCmhhdWZlbiBMZXV0ZSBtaXQgUEMsIGthdW0gZWluZXIgdm9uIGRlbmVuIGhhdCBzZWluZSBTb2Z0d2FyZSwgc2VpbmUgU3BpZWxlCmV0Yy4gc2VsYmVyIGdla2F1ZnQuIE1hbiBrZW5udCBlaW5lbiwgZGVyIGVpbmVuIGtlbm50Li4uIHVuZCB3ZWlsIGRhcyBzbyBpc3QsCndlaWwgaWNoIHdlaXNzLCBkYXNzIGRhIHppZyBMZXV0ZSBzaW5kLCBkaWUgbWlyIGZ1ZXIgbGF1IGRpZSB0b2xsc3RlbgpQcm9ncmFtbWUgZnVlciBXaW50ZWwgZ2ViZW4ga29lbm5lbiwgZGFydW0ga2F1ZiBpY2ggbmVuIFBDLiBTbyBlaW5mYWNoIGlzdApkYXMuIEljaCBrYXVmZSBkYXMsIHdhcyBkZXIgTmFjaGJhciBoYXQsIHdlaWwgZGVyIHNjaG9uIHdlaXNzIHdhcyBpY2ggdHVuCm11c3MsIHdlbm4gd2FzIG5pY2h0IGZ1bmt0LiBVbmQgd2VpbCBhbGxlIGRpZXNlIEZlaGxlcm1lbGR1bmdlbiBbQWxsZ2VtZWluZQpTY2h1dHp2ZXJsZXR6dW5nIGltIE1vZHVsIEJsYSBhbiBBZHJlc3NlIEJsdWJiOkZhc2VsXSBoYWJlbiwgZmFlbGx0IGVzIGtlaW5lbQptZWhyIGF1Zi4gRGFzIGdlaG9lcnQgZWluZmFjaCBkYXp1IDotKQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHdpbmRvb2ZzLXp3YW5nIChadWVyaWxldSwgMTEuIERleiAxOTk2LCAyMzo1NjoxNSk6Cn4jISBybj1NdXBmZWwgcnQ9ODUwMzIyODk4Cn4jISB0aWQ9ODUwMjQ5MDA1CmhpLApOdW4gaW4gZWluZW0gaGFidCBpaHIgamEgcmVjaHQsIGJpbGxpIGlzdCBkb29mLCBtaWNyb2Rvb2YgaXN0IGJlc2NoZXVlcnQgdW5kCmRpZXNlcyBUaGVtYSBpc3QgaW4gZGVyIGZhbHNjaGVuIFJ1YnJpay4gQWJlciBBY3JpbW9uIGhhdCBkYWR1cmNoIGphIHdpZWRlcgpldHdhcyB6dSBwcmVkaWdlbiB1bmQgaXN0IGRhaGVyIEdsdWVja2xpY2guIFp1bSBBcnRpa2VsIGthbm4gaWNoIGtlaW5lClN0ZWxsdW5nIG5laG1lbiwgaWNoIGhhYmUgaWhuIG5pY2h0IGdlbGVzZW4uIE1pciBoYXQgZXMgYmVpbSAzLiBTYXR6IHNjaG9uCmdlcmVpY2h0IHdlaXRlcnp1bGVzZW4uIE5hamEsIGljaCBzdGltbWUgaWhuIGRhaGVyIGJlaSBkYXNzIGRhcyBlaWdlbnRsaWNoCmJpbGxpZ2VyZSBTeXN0ZW0gdWViZXJsZWJ0IGhhdC4gQW1pZ2Egd2FyIHRvbGwsIGFiZXIgQ29tbW9kb3JlIGhhdAp2ZXJzY2hsYWZlbiwgc2llIHNjaGVua3RlbiBkZW0gQW1pZ2Ega2VpbmUgYmVhY2h0dW5nLCB1bmQgaGV1dGUgaXN0IGRhcyBUZWlsCm5pY2h0IG1laHIgYXVmIGRlbSBuZXVzdGVuIHN0YW5kLiBFcyBnZWhlbiBnZXJ1ZWNodGUgcnVtIGRhcyBkZXIKSGlnaC1lbmQtQW1pZ2EgYXVmIGRlbiBNYXJrdCBrb21tZW4gc29sbCwgYWJlciBzb2xjaGUgZ2VydWVjaHRlIGhvZXJ0IG1hbgpzY2hvbiBzZWl0IDQgSmFocmUsIGljaCBnbGF1YiBuaWNodCBtZWhyIGRhcmFuLgpBYWVtLi4gaWNoIGJpbiBrZWluIEZhbiB2b24gV2luZG9vZjk1LCBlcyBjcmFzZCB1bmQgaXN0IGRvb2YuIEFiZXIgZXMgaXN0Cndlbmlnc3RlbnMgZWluZmFjaCBnZWdlbnVlYmVyIEx5bnV4LiBVbmQgT3MvMiBvZGVyIFdpbk5UIGlzdCBlaW5mYWNoIG5pY2h0CkdhbWUta29tcGF0aWJsZSwgYWxzbyB3YXMgYmxlaWJ0IGFuZGVyZXMgdWViZXJpZyA/IERhenUga2FubiBpY2ggZWggbmljaHQKa2xhZ2VuLCBpY2ggaGFiZSBXaW5kb29mIG5pY2h0IGdla2F1ZnQgPTo9OikKClNvIHVuZCBudW4gd3VlbnNjaCBpY2ggZXVjaCB2aWVsIFNwYXN6LCBhZW1tIFNwYXNzIG1pdCBldXJlbSBCUy4uLgp0c2NodXV1dWVzcy4uLi4gICAgICAgICAgICBadWVyaWxldQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogd2luZG9vZnMtendhbmcgKExpLCAxMi4gRGV6IDE5OTYsIDEwOjQxOjExKToKfiMhIHJuPUFjcmltb24gcnQ9ODUwMzE1ODg3Cn4jISB0aWQ9ODUwMjQ5MDA1CkFsc28gQWNyaW1vbiwgc28gbGFuZ3NhbSB3d2VyZGVuIERlaW5lIFByZWRpZ3RlbiBlY2h0IG1pZXM6CkR1ZSB2ZXJsYW5nc3QgYWxzbywgZGFzIGplZGVyIGdlZ2VuIGRlbiBTdHJvbSBzY2h3aW1tZW4gc29sbCB1bmQgbmljaHQgZGFzCmthdWZ0LCB3YXMgbGF1dCBhdWYgZGVtIE1hcmt0IGFuZ2Vwcmllc2VuIHdpcmQ/IEhhc3QgRHUgRGlyIG1hbCB1ZWJlcmxlZ3QsCmRhc3MgZXMgYXVjaCBMZXV0ZSBnaWJ0LCBkaWUgbnVyIHdlbmlnaCBBaG51bmcgdm9uIENvbXB1dGVybiBoYWJlbiwga2VpbmUKWmVpdChPZGVyIEx1c3QpIHNpY2ggZGFtaXQgYXVzZWluYW5kZXJ6dXNldHplbiB1bmQgdHJvdHpkZW0gZWluZW4gQ29tcHV0ZXIKYnJhdWNoZW4/KS4KZGllIGtlaW5lIFplaXQgaGFiZW4sIHNpY2ggaW4gTEFUQXggZWluenVhcmJlaXQsIG9kZXIgaW4gRW1hY3MgKHZvbiB2aSBnYW56IHp1CnNjaHdlaWdlbiksIHNvbmRlcm4gZGllIG51ciBlaW5lIGJpbGxpZ2VuIENvbXB1dGVyIHVuZCBXaW5Xb3JkIGhhYmVuIHdvbGxlbj8KV2FzIGlzdCBkYXJhbiBhdXN6dXNldHplbj8KVW5kIGRpZSBMZXV0ZSwgZGllIG1pdCBkZW0gU3Ryb20gc2Nod2ltbWVuLCBhbHMgTGV1dGUgb2huZSBTZWVsZSB6dQpiZXplaWNobmVuLCBpc3QgbmljaHQgbnVyIHNhdWRyZWlzdCwgc29uZGVybiBhdWNoIGZhbHNjaC4KRFUgcmVkZXN0IGRvY2ggaW1tZXIgdm9uIEtpcmNoZSwgR2xhdWJlbiB1bmQgTmFlY2hzdGVubGllYmUuLi4KV2llIHdhZXJlIGVzIG1hbCBtaXQgZWluIHBhYXIgY2hyaXN0bGljaGVuIHR1Z2VuZGVuIGRlaW5lcnNlaXQ6CgpXZXIgdm9uIEV1Y2ggb2huZSBTY2h1bGQgaXN0LCBkZXIgd2VyZmUgZGVuIGVyc3RlbiBTdGVpbiwgdW5kIHdhciBlcyBuaWNodCBzbywKZGFzIG5pY2h0IGRlciBNZW5zY2gsIHNvbmRlcm4gbnVyIEdvdHQgdWViZXIgZGllIFNlZWxlIGFuZGVyZXIgTWVuc2NoZW4KcmljaHRldD8gRHUgc29sbHRlc3QgZXMgdmllbGxlaWNodCBtYWwgbWl0IGZyZXVuZGxpY2hlciBIaWxmZSB2ZXJzdWNoZW4sIHVuZApuaWNodCBtaXQgZXdpZ2VyIFZlcmRhbW1uaXMgZHJvaGVuISAgCgoKCgoKCgoKCgoKCgoKCgoKCkxpIChIYXNzdCBMZXV0ZSwgZGllIHNpY2ggYWxzIENocmlzdGVuIGJlemVpY2huZW4gdW5kIGRhbm4gdWViZXIgYW5kZXJlIExldXRlCmhlcmZhbGxlbiBzdGF0dCBpaG5lbiB6dSB2ZXJ6ZWloZW4sIHdpZSBlcyBkb2NoIGRlciBjaHJpc3RsaWNoZSBHbGF1YmUgaW1tZXIKcHJlZGlndCkKUC5TLiBPay1OdW4gaXN0IG1laW4gQXJ0aWtlbCBhdWNoIGZhc3QgbmUgUHJlZGlndCBnZXdvcmRlbiwgYWJlciBpY2ggaG9mZmUsCmRpZSBhbmRlcmVuIHdlcmRlbiBlcyBtaXIgbmFjaHNlaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogd2luZG9vZnMtendhbmcgKExpLCAxMi4gRGV6IDE5OTYsIDEwOjQ5OjA5KToKfiMhIHJuPUxpIHJ0PTg1MDM4MzY3MQp+IyEgdGlkPTg1MDI0OTAwNQpTb3JyeSBmdWVyIGRpZSBUeXBvcywgYWJlciBpY2ggd2FyIGVjaHQgc2F1ZXIsIGljaCBob2ZmZSwgbWFuIGVya2VubnQgZGVuIFNpbm4Kbm9jaC4uLiBMVEFYIHNvbGwgbmF0dWVybGljaCBMQVRFWCBoZWlzc2VuCkxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBQUFBQUhISEhoaGggKFFpdGVzcywgMTIuIERleiAxOTk2LCAxMjo1ODo1OSk6CgplYmVuIGluIE1vcmdvdGhzIEthdGFrb21iZW4gcGFzc2llcnQgOgoKRHUgbmltbXN0IGVpbmUgRmFja2VsLgo+IEVzIHdpcmQgZHVua2VsLgo+ICdBQUFBQUhISEhoaGhoISEhJwpRaXRlc3MgYmF1dCBzaWNoIHZvciBEaXIgYXVmIHVuZCBzY2hhdXQgRGljaCBncmltbWlnIGFuLi4KCmdlc2VoZW4gaW0gRmVuc3RlciB2b24gTXV0cnV4IDopCgppY2ggZmluZHMgY29vbCA6KQoKUUkgc2NobWFycnQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV3Vlc3RlIChBbnRoZWEsIDEyLiBEZXogMTk5NiwgMTU6MjM6MDApOgp+IyEgcm49TXVwZmVsIHJ0PTg1MDI1NjA5OAp+IyEgdGlkPTg1MDI0OTgxMQpUamEuLi4gSW0gUHJpbnppcCBtdWVzc3RlIGRhIGRhcyBNZWVyIHNlaW4sIGRlbm4gZGFzIHVtZ2lidCBlcnN0IG1hbCBBTExFUyEgOikKICAgIEFudGhlYSAoRXJpbm5lcnQgbWFsIHdpZWRlciBhbiBkaWUgSW5zZWwmTWVlci1SZWdpb24sIGRpZSBzb3dpZXNvCiAgICAgICAgICAgIGJlc3NlciBpc3QgYWxzIGFsbGVzIGFuZGVyZSEpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmbHcuLi4gKEFuYXRvbCwgMTMuIERleiAxOTk2LCAwMDoxOTozNik6CgpFc2N1YmFyIGFuIGFsbGUgWmF1YmVyZXI6IEh1aSwgSWhyIHNlaXQgamEgYWxsZSBmbGVpc3NpZyBhYiBRdWVzdGVuIDspClRoZXJpbiBhbiBhbGxlIFphdWJlcmVyOiAqZ3J1bW1lbCogc2VpIHJ1aGlnIDotKSkKW1RvZDpMYXJzXSBEaWUgZWlnZW5lIFVuZmFlaGlna2VpdCBoYXQgZ2VyYWRlIEVzY3ViYXIgdW1nZWJyYWNodC4KCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFd1ZXN0ZSAoV2FyZ29uLCAxMy4gRGV6IDE5OTYsIDExOjE0OjUwKToKfiMhIHJuPUFudGhlYSBydD04NTA0MDA1ODAKfiMhIHRpZD04NTAyNDk4MTEKUHJpbnppcGllbGwgc2Nob24sIGVzIGdpYnQgZGEgYWJlciAobmFqYSwgbmljaHQgZGEgaW0gU3VlZGVuLCBkYWZ1ZXIgYWJlciB3ZWl0CmltIE9zdGVuKSBkaWUgSW5zZWwgYW0gRW5kZSBkZXIgV2VsdCwgdW5kIGRhIHdpcmRzIGF1Y2ggKGlyZ2VuZHdhbm4gbWFsKSBkZW4KUmFuZCBkZXIgV2VsdCBnZWJlbi4KQWJlciBuYXR1ZXJsaWNoIGJsZWlidCBkYXMgYXVjaCB3ZWl0ZXJoaW4gZWluZSBTYWNoZXIgZGVyIEluc2VsbiB1bmQgbmljaHQgZGVyClN0cmFuZHJlZ2lvbiA6KQogIFdhcmdvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2llIHdhZXJlIGVzLi4uLiAoV29vZHksIDE0LiBEZXogMTk5NiwgMDE6MjI6NDEpOgp+IyEgcm49TmFpcm9sZiBydD04NTA0MjYxMzYKfiMhIHRpZD04NTAzOTQ1OTMKCiJzY2hhdSAtdSIgZ2lidCdzIGRvY2ggc2Nob24sIE5haXJvbGYsIHVuZCBkYXMgaXN0IGRlcgprdWVyemVzdGUgYWxsZXIgQmVmZWhsZS4uLiBlaW5mYWNoIDxFbnRlcj4gZHJ1ZWNrZW4gOykKCjp4ISB3b29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUaWVyZSBlcnppZWh0IG1hbiAuLi4gKFJpbmdvciwgMTUuIERleiAxOTk2LCAwMzoxMzo1OSk6Ci4uLiBhbSBiZXN0ZW4gZHVyY2ggIkJlc2NoaW1wZmVuIiBhbHMgS2FlbXBmZXI6CgpEdSBzYWdzdDogd2VnaGllciwgd2VyZmUgbWVzc2VyIHdlZwo+IFdlZ2hpZXIgc2NodWV0dGVsdCBkZW4gS29wZi4KRHUgc2NoaW1wZnN0OiBEaWNoIHdlcmQgaWNoIHphZWhtZW4gd2llIGVpbmVuIEh1bmQuCldlZ2hpZXIgZXJ3aWRlcnQ6IFd1ZmY/Cj4gV2VnaGllciBzY2hhdXQgaW4gZGllIFJ1bmRlIHVuZCBzY2huYXR0ZXJ0IGZyb2VobGljaC4KRHUgc2Fnc3Q6IHdlZ2hpZXIsIHdlcmZlIG1lc3NlciB3ZWcKV2VnaGllciBsYWVzc3QgZGFzIE1lc3NlciBmYWxsZW4uCgpEYW5hY2ggZ2Vob3JjaGVuIHNpZSBhdWZzIFdvcnQgOi0pCgpSaW5nb3IuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGVlcmUgQmlibGlvdGhlaz8gKEphcmllbCwgMTUuIERleiAxOTk2LCAyMzo1MjoxOCk6CgpJbiBGZXJuIFdlc3QgYmVpbSBCaWxibGlvdGhla2FyOgpzY2hhdQouLi4uClVlYmVyYWxsIGFuIGRlbiBXYWVuZGVuIHVuZCBpbSBSYXVtIHN0ZWhlbiBSZWdhbGUsIFNjaHJhZW5rZSB1bmQgVml0cmluZW4sCi4uLi4uCj4gdW50IHJlZ2FsZQpTb3dhcyBzaWVoc3QgRHUgZGEgbmljaHQhCj4gdW50IHNjaHJhZW5rZQpTb3dhcyBzaWVoc3QgRHUgZGEgbmljaHQhCj4gdW50IHZpdHJpbmVuClNvd2FzIHNpZWhzdCBEdSBkYSBuaWNodCEKCkphcmllbCAoc3VjaHQgaW1tZXJub2NoIGV0d2FzIFdlaXNoZWl0KS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTGVlcmUgQmlibGlvdGhlaz8gKFNpbHZhbmEsIDE2LiBEZXogMTk5NiwgMDg6MDY6MzApOgp+IyEgcm49TGkgcnQ9ODUwNzE5ODIyCn4jISB0aWQ9ODUwNjkwMzM4CkFiZXIgTGksIER1IHNpZWhzdCBkYXMgZmFsc2NoLiBXZXIgZGllIFdlaXNoZWl0IHN1Y2h0LCBzb2xsdGUgZGVuCmFsbHVtZmFzc2VuZGVuIFViZXJibGljayBoYWJlbi4gQWxzbyBzb2xsdGUgJ3NjaGF1JyByZWljaGVuIC0gd296dQpEZXRhaWxzPyA6KQoKICBTaWx2YW5hIChzY2htYXJydCBhdWNoIG1hbCBydW0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGVlcmUgQmlibGlvdGhlaz8gKExpLCAxNi4gRGV6IDE5OTYsIDA4OjA3OjA3KToKfiMhIHJuPUphcmllbCBydD04NTA2OTAzMzgKfiMhIHRpZD04NTA2OTAzMzgKQWxzbywgd2VyIFdlaXNoZWl0IHN1Y2h0LCBkYXJmIGltbWVyIG51ciBlaW4gUmVnYWwgdW5kIGVpbiBTY2hyYW5rIGFuc2VoZW4uLi4KT0ssIGljaCBnZWIgenUsIG5lIHNjaGxlY2h0ZSBBdXNyZWRlISA6LSkKQWJlciB3byBlcyBudXIgZWluZSBWaXRyaW5lIGdpYnQsIGthbm4gbWFuIGF1Y2ggbnVyIGVpbmUgdW50ZXJzdWNoZW4uLi4KTGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMTYuIERleiAxOTk2LCAxMToxNTozNSk6CgoiVmVycGFzc3QgRHUgZWluZSBTdHVuZGUgYW0gTW9yZ2VuIGphZ3N0IER1IGlociBkZW4gZ2FuemVuIFRhZyBoaW50ZXJoZXIuIgooZW5nbGlzY2gpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTcHJ1Y2ggZGVyIFdvY2hlIChBbmF0b2wsIDE2LiBEZXogMTk5NiwgMTM6MzA6MDUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg1MDczMTMzNQp+IyEgdGlkPTg1MDczMTMzNQoKU2VrdW5kZW4sIEdyaW1tYm9ybiwgZXMgd2FyZW4gU2VrdW5kZW4uLi4KClNldWZ6ZW5kLCAKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUG9ydG9lcmhvZWh1bmcgKEdyaW1tYm9ybiwgMTYuIERleiAxOTk2LCAxMzo1MDozNyk6CgpKYWphLCBkaWUgUG9zdCBlcmhvZWh0IG1hbCB3aWVkZXIgZGFzIFBvcnRvLiBVbmQgYWxsZSByZWdlbiBzaWNoIGF1Zi4gRGFzIGlzdAplaWdlbnRsaWNoIG5pY2h0IGtvcnJla3QsIGRlbm4gd2VubiBtYW4gcyBnZW5hdSBiZXRyYWNodGV0IGJsZWlidCBkZXIgUHJlaXMKZG9jaCBkZXJzZWxiZTogUnVuZCA0MFBmIHBybyBUYWcuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBvcnRvZXJob2VodW5nIChHcmltbWJvcm4sIDE2LiBEZXogMTk5NiwgMTQ6MDE6MDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg1MDc0MDYzNwp+IyEgdGlkPTg1MDc0MDYzNwoKRGEgZXMgc2NoZWluYmFyIFZlcnN0YWVuZG5pc3Byb2JsZW1lIGdpYnQ6IAphKSBEZXIgU3BydWNoIG1pdCBkZXIgUG9ydG9lcmhvZWh1bmcgc3RlaHQgaGllciBpbiBzY2htYXJybighKS4KYikgRGllIFBvaW50ZSBpc3QgaW4gZXR3YTogRGllIFBvc3QgbmltbXQgZnVlciBzY2hsZWNodGVyZW4gU2VydmljZSBtZWhyIEdlbGQuCiAgIE5hdHVlcmxpY2ggaXN0IGRhcyBuaWNodCBsdXN0aWcgc29uZGVybiB0aWVmdHJhdXJpZywgYWJlciBzbyBpc3QgZGFzIExlYmVuCiAgIG51biBlaW5tYWwuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUG9ydG9lcmhvZWh1bmcgKFN1bmZsb3dlciwgMTYuIERleiAxOTk2LCAxNDowNTowMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODUwNzQwNjM3Cn4jISB0aWQ9ODUwNzQwNjM3CipncnVlYmVsKgoKUG9zdCA/IFBvcnRvID8gd2F0IGlzc24gZGF0ID8KCldlbm4gaWNoIGVzIHJlY2h0IGJldHJhY2h0ZSBoYWJlIGljaCBpbiBkZW4gbGV0enRlbiAyIEphaHJlbiBnZXJhZGUgbWFsIDEwIERNClBvcnRvIGF1c2dlZ2ViZW4uIChpY2ggcmVjaG5lIG5pY2h0IG5hY2ggd2lldmllbCBkYXMgYW0gVGFnIGlzdCwgbmFqYSwgMCwwMSBQRgphbSBUYWcgOikgKQoKRXMgZ2lidCBkb2NoIGpldHp0IEUtTWFpbCA7KQoKU3VuZmxvd2VyIGRpZSBkYXJhbiBkZW5rdCwgd2llIGVzIHdhciBQb3N0a2FydGVuIG1pdCAxMCBQRiAoTW90aXY6IFBhbGFzdCBkZXIKUmVwdWJsaWspIHVuZCBCcmllZmUgMjAgUEYgKEZER0IsIEZESiwgdW5kd2Fzd2Vpc2ljaGFsbGVzKSB6dSBmcmFua2llcmVuLgoKICAgICAgICAgICAgICAgICAgICAtLT09PSBibHVlbWNoZW4gPT09LS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUG9ydG9lcmhvZWh1bmcgKFN1bmZsb3dlciwgMTYuIERleiAxOTk2LCAxNDowODozMyk6Cn4jISBybj1TdW5mbG93ZXIgcnQ9ODUwNzQxNTAxCn4jISB0aWQ9ODUwNzQwNjM3CmFlaGVuLCBkYXQgd2FyIGViZW5kIGVpbiB0eXBvOiBtdWVzc3RlIDAsMDEgRE0gaGVpc3NlbiAoaWNoIGhvZmZlIG51bgppc3NlcyByaWNodGlnIChpY2ggd2FyIG5vY2ggbmllIGd1dCBpbSBLb3BwLXJlY2huZW4pCgpTdW5mbG93ZXIKCiAgICAgICAgICAgICAgICAgICAgLS09PT0gYmx1ZW1jaGVuID09PS0tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3NvLi4uIGRhbm4gc2FjaCBtYWwuLi4gKFFpdGVzcywgMTYuIERleiAxOTk2LCAxNDo1MDoxNik6CgpXaWUgaGVpc3N0IER1IGRlbm4gPyBTY2hvZW4sIGRhc3MgRHUgd2llZGVyIGRhIGJpc3QsIFRuZWRha2VkIQpQYXNzd29yZDogVG93ZXIgcnVmdDogRnJhZyBkb2NoIG1hbCBPcmt0b2V0ZXIuLi4KCgoKUUkgZnJhZ3Qgc2ljaCwgd29oZXIgb3JrVCBkYXMgd2Vpc3MuLi4KCisrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBvcnRvZXJob2VodW5nIChXdXJ6ZWwsIDE2LiBEZXogMTk5NiwgMjA6MDM6MDEpOgp+IyEgcm49U3VuZmxvd2VyIHJ0PTg1MDc0MTUwMQp+IyEgdGlkPTg1MDc0MDYzNwpobW0sIHNvbGNoZSBwb3J0b2tvc3RlbiBnYWIgZXMgaW0gd2VzdGVuIGF1Y2ggbWFsLiBhYmVyIGRhIHdhcnQgaWhyIGFsbGUKbm9jaCBmbHVlc3NpZyA6KQoKd3VyemVsCgpwLnMuIGRpZSBtb3RpdmUgd2FyZW4gbmF0dWVybGljaCBhdWNoIG5pY2h0IHZpZWwgc2Nob2VuZXIsIGx1ZWJrZSB3YXIgCiAgICAgamVkZW5mYWxscyBrZWluIHRyYXVtcHJpbnogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUG9ydG9lcmhvZWh1bmcgKEZ5dCwgMTcuIERleiAxOTk2LCAwMDozNjowNSk6Cn4jISBybj1TdW5mbG93ZXIgcnQ9ODUwNzQxNTAxCn4jISB0aWQ9ODUwNzQwNjM3CgpCbG9lZHNpbm4sIGRpZSBQb3N0IGluIFBvcnQgVmFpbiBoYXQgZnVlciBub3JtYWxlIEJyaWVmZSBub2NoIG5pZQpQb3J0byB2ZXJsYW5ndC4KCkZ5dCwgS29wZiBzY2h1ZXR0ZWxuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIGxvZXN0IG1hbiBSYWV0c2VsIChBbGluZSwgMTcuIERleiAxOTk2LCAxNTo0NzowOSk6CgpFYmVuIGJlaSBlaW5lciBiZWthbm50ZW4gRWluc2llZGxlcmluOgoKPFNwaWVsZXI+IGZyYWd0IENoaWxhbmEgbmFjaCBIYW5kc2NocmlmdC4KQ2hpbGFuYSBhbnR3b3J0ZXQgPFNwaWVsZXI+Lgo8U3BpZWxlcj4gZnJhZ3QgQ2hpbGFuYSBuYWNoIFBydWVmdW5nLgpDaGlsYW5hIGFudHdvcnRldCA8U3BpZWxlcj4uCkNoaWxhbmEgZ2lidCA8U3BpZWxlcj4gZWluZSBzY2h3ZXJlIEF1ZmdhYmUuCgoKLi4uIAoKPFNwaWVsZXI+IHNhZ3Q6IERpZSBMb2VzdW5nIGxhdXRldCAxMApDaGlsYW5hIHNhZ3Q6IFR1dCBtaXIgbGVpZCwgYWJlciBkYXMgd2FyIGZhbHNjaC4KPFNwaWVsZXI+IHNhZ3Q6IERpZSBMb2VzdW5nIGxhdXRldCAxMQpDaGlsYW5hIHNhZ3Q6IFR1dCBtaXIgbGVpZCwgYWJlciBkYXMgd2FyIGZhbHNjaC4KPFNwaWVsZXI+IHNhZ3Q6IERpZSBMb2VzdW5nIGxhdXRldCAxMgo8U3BpZWxlcj4gc2FndDogRGllIExvZXN1bmcgbGF1dGV0IDEzCkNoaWxhbmEgc2FndDogVHV0IG1pciBsZWlkLCBhYmVyIGRhcyB3YXIgZmFsc2NoLgpDaGlsYW5hIHNhZ3Q6IFR1dCBtaXIgbGVpZCwgYWJlciBkYXMgd2FyIGZhbHNjaC4KPFNwaWVsZXI+IHNhZ3Q6IERpZSBMb2VzdW5nIGxhdXRldCAxNApraWNoQ2hpbGFuYSBzYWd0OiBUdXQgbWlyIGxlaWQsIGFiZXIgZGFzIHdhciBmYWxzY2guCmVyCjxTcGllbGVyPiBzYWd0OiBEaWUgTG9lc3VuZyBsYXV0ZXQgMTUKQ2hpbGFuYSBzYWd0OiBUdXQgbWlyIGxlaWQsIGFiZXIgZGFzIHdhciBmYWxzY2guCjxTcGllbGVyPiBzYWd0OiBEaWUgTG9lc3VuZyBsYXV0ZXQgMTYKRHUga2ljaGVyc3QuIChXaWUgYWxiZXJuIHZvbiBEaXIpCj4gPFNwaWVsZXI+IHNhZ3Q6IERpZSBMb2VzdW5nIGxhdXRldCAxNwo8U3BpZWxlcj4gc2FndDogRGllIExvZXN1bmcgbGF1dGV0IDE4CkNoaWxhbmEgc2FndDogVHV0IG1pciBsZWlkLCBhYmVyIGRhcyB3YXIgZmFsc2NoLgpDaGlsYW5hIHNhZ3Q6IFR1dCBtaXIgbGVpZCwgYWJlciBkYXMgd2FyIGZhbHNjaC4KQ2hpbGFuYSBzYWd0OiBUdXQgbWlyIGxlaWQsIGFiZXIgZGFzIHdhciBmYWxzY2guCjxTcGllbGVyPiBzYWd0OiBEaWUgTG9lc3VuZyBsYXV0ZXQgMTkKQ2hpbGFuYSBzYWd0OiBUdXQgbWlyIGxlaWQsIGFiZXIgZGFzIHdhciBmYWxzY2guCjxTcGllbGVyPiBzYWd0OiBEaWUgTG9lc3VuZyBsYXV0ZXQgMjAKPFNwaWVsZXI+IHNhZ3Q6IERpZSBMb2VzdW5nIGxhdXRldCAyMQo8U3BpZWxlcj4gc2FndDogRGllIExvZXN1bmcgbGF1dGV0IDIyCkNoaWxhbmEgc2FndDogVHV0IG1pciBsZWlkLCBhYmVyIGRhcyB3YXIgZmFsc2NoLgpDaGlsYW5hIHNhZ3Q6IFR1dCBtaXIgbGVpZCwgYWJlciBkYXMgd2FyIGZhbHNjaC4KQ2hpbGFuYSBzYWd0OiBUdXQgbWlyIGxlaWQsIGFiZXIgZGFzIHdhciBmYWxzY2guCjxTcGllbGVyPiBzYWd0OiBEaWUgTG9lc3VuZyBsYXV0ZXQgMjMKQ2hpbGFuYSBzYWd0OiBUdXQgbWlyIGxlaWQsIGFiZXIgZGFzIHdhciBmYWxzY2guCjxTcGllbGVyPiBzYWd0OiBEaWUgTG9lc3VuZyBsYXV0ZXQgMjQKQ2hpbGFuYSBzYWd0OiBUdXQgbWlyIGxlaWQsIGFiZXIgZGFzIHdhciBmYWxzY2guCjxTcGllbGVyPiBzYWd0OiBEaWUgTG9lc3VuZyBsYXV0ZXQgMjUKPFNwaWVsZXI+IHNhZ3Q6IERpZSBMb2VzdW5nIGxhdXRldCAyNgpDaGlsYW5hIHNhZ3Q6IFR1dCBtaXIgbGVpZCwgYWJlciBkYXMgd2FyIGZhbHNjaC4KQ2hpbGFuYSBzYWd0OiBUdXQgbWlyIGxlaWQsIGFiZXIgZGFzIHdhciBmYWxzY2guCjxTcGllbGVyPiBzYWd0OiBEaWUgTG9lc3VuZyBsYXV0ZXQgMjcKQ2hpbGFuYSBzYWd0OiBUdXQgbWlyIGxlaWQsIGFiZXIgZGFzIHdhciBmYWxzY2guCjxTcGllbGVyPiBzYWd0OiBEaWUgTG9lc3VuZyBsYXV0ZXQgMjgKPFNwaWVsZXI+IHNhZ3Q6IERpZSBMb2VzdW5nIGxhdXRldCAyOQpDaGlsYW5hIHNhZ3Q6IFR1dCBtaXIgbGVpZCwgYWJlciBkYXMgd2FyIGZhbHNjaC4KQ2hpbGFuYSBzYWd0OiBUdXQgbWlyIGxlaWQsIGFiZXIgZGFzIHdhciBmYWxzY2guCjxTcGllbGVyPiBzYWd0OiBEaWUgTG9lc3VuZyBsYXV0ZXQgMzAKQ2hpbGFuYSBzYWd0OiBUdXQgbWlyIGxlaWQsIGFiZXIgZGFzIHdhciBmYWxzY2guCkVpbiBCZWlmYWxsc3N0dXJtIGJyYW5kZXQgaW0gRGlhbW9uZHBhcmsgYXVmLiBXYXMgZGEgd29obCB3aWVkZXIgbG9zIGlzdD8KPFNwaWVsZXI+IHNhZ3Q6IERpZSBMb2VzdW5nIGxhdXRldCAzMQo8U3BpZWxlcj4gc2FndDogRGllIExvZXN1bmcgbGF1dGV0IDMyCkNoaWxhbmEgc2FndDogVHV0IG1pciBsZWlkLCBhYmVyIGRhcyB3YXIgZmFsc2NoLgpDaGlsYW5hIHNhZ3Q6IFR1dCBtaXIgbGVpZCwgYWJlciBkYXMgd2FyIGZhbHNjaC4KPFNwaWVsZXI+IHNhZ3Q6IERpZSBMb2VzdW5nIGxhdXRldCAzMwpDaGlsYW5hIHNhZ3Q6IFR1dCBtaXIgbGVpZCwgYWJlciBkYXMgd2FyIGZhbHNjaC4KPFNwaWVsZXI+IHNhZ3Q6IERpZSBMb2VzdW5nIGxhdXRldCAzNAo8U3BpZWxlcj4gc2FndDogRGllIExvZXN1bmcgbGF1dGV0IDM1CkNoaWxhbmEgc2FndDogVHV0IG1pciBsZWlkLCBhYmVyIGRhcyB3YXIgZmFsc2NoLgpDaGlsYW5hIHNhZ3Q6IFR1dCBtaXIgbGVpZCwgYWJlciBkYXMgd2FyIGZhbHNjaC4KPFNwaWVsZXI+IHNhZ3Q6IERpZSBMb2VzdW5nIGxhdXRldCAzNgpHcmV0ZSBydWZ0OiBTY2h1ZXR0ZWxiaWVyISEhITEKQ2hpbGFuYSBzYWd0OiBTZWhyIGd1dC4gRGFzIHdhciByaWNodGlnLgpDaGlsYW5hIG1hY2h0IGVpbmUgbWFnaXNjaGUgR2VzdGUgdW5kIGRldXRldCBhdWYgPFNwaWVsZXI+Lgo8U3BpZWxlcj4gc2FndDogRGllIExvZXN1bmcgbGF1dGV0IDM3CjxTcGllbGVyPiBzYWd0OiBEaWUgTG9lc3VuZyBsYXV0ZXQgMzgKPFNwaWVsZXI+IHNhZ3Q6IG5hIGFoc28Kd2FlbHoKRHUgd2FlbHp0IERpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgo+IEJhZ2hlZXJhIGtyYXR6dCBzaWNoIG1pdCBzZWluZW0gcmVjaHRlbiBIaW50ZXJiZWluIGhpbnRlciBkZW4gT2hyZW4uCjxTcGllbGVyPiBmcmFndCBDaGlsYW5hIG5hY2ggTGlzdGUuCkNoaWxhbmEgcmVpY2h0IDxTcGllbGVyPiBlaW5lIExpc3RlLgpDaGlsYW5hIGFudHdvcnRldCA8U3BpZWxlcj4uCgoKQWxpbmUgZ3JpbnN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gSHlkcmFrb3BmLCB6d2VpLCBkcmVpLi4udmllbGUgKFNudWdnbGUsIDE3LiBEZXogMTk5NiwgMTc6MTI6NDUpOgpEYXMgd2FyIHdvaGwgZWluIHppZW1saWNoIHVua29vcmRpbmllcnRlciBWZXJzdWNoOgoKWm9ycm8gc3VjaHQgZGllIEtuYXBwZW4uClpvcnJvIHNwaWVsdCBkZW4gU2NoYWxrZXIgS3JlaXNlbCBuYWNoIE5vcmR3ZXN0ZW4uCkR1IG11cm1lbHN0IGRpZSB2b3JnZXNjaHJpZWJlbmVuIFdvcnRlIHVuZCBoYWVsdHN0IHBsb2V0emxpY2ggZWluIHNjaGltbWVybmRlCkt1Z2VsIGluIGRlbiBIYWVuZGVuLgpEdSBzY2hhdXN0IGluIGRpZSBzY2hpbW1lcm5kZSBLdWdlbCB1bmQgZXJrZW5uc3QgdmVyc2Nod29tbWVuOgpVbmQgd2llZGVyIHZlcnNjaGx1Y2t0IERpY2ggZGVyIGR1bmtsZSBXYWxkLiBEdSBrYW5uc3QgRGlyIGdhciBuaWNodAp2b3JzdGVsbGVuLCBkYXNzIGF1c3NlcmhhbGIgdWViZXIgRGlyIHN0cmFobGVuZGVyIFNvbm5lbnNjaGVpbiBoZXJyc2NodC4KVWViZXJhbGwgc2luZCBkdW5rbGUgU2NoYXR0ZW4sIGRpZSBuYWNoIERpciB6dSBncmVpZmVuIHNjaGVpbmVuLiBFcyBpc3QKZXJiYWVybWxpY2gga2FsdCBoaWVyIHVudGVuLCB1bmQgaW0gZGljaHRlbiBVbnRlcmhvbHogd2FjaHNlbiBudXIgYWV1c3NlcnN0CnJlc2lzdGVudGUgUGZsYW56ZW4sIHdpZSBEb3JuZW5idWVzY2hlLCBlaW5pZ2UgTW9vc2UgdW5kIHZlcmVpbnplbHQgZWluIHBhYXIKUGlsemUuIEF1cyBkZW0gU3VlZGVuIGthbm5zdCBEdSBsZWlzZXMgR2x1Y2tlcm4gdm9uIGZsaWVzc2VuZGVtIFdhc3NlciBob2VyZW4sCmltIE5vcmRlbiBsaWNodGV0IHNpY2ggZGVyIFdhbGQgdW5kIGdpYnQgZGVuIEJsaWNrIGZyZWkgYXVmIGVpbmVuIGtsZWluZW4gU2VlLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuLCBub3Jkd2VzdGVuIHVuZCBub3Jkb3N0ZW4uClRydmVzdGVzdGVyIEdydXVoIHRvZXRldCBmdWVyIGRpZSBGb3JzY2h1bmcuCkRpZSBiZXJlaXRzIHppZW1saWNoIHN0aW5rZW5kZSBMZWljaGUgSG9sbGFlbmRlcnMuCkRpZSBiZXJlaXRzIHppZW1saWNoIHN0aW5rZW5kZSBMZWljaGUgR3J1dWhzLgpFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4KRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4KRWluIEtvcGYgZGVyIEh5ZHJhLgpEaWUgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4KRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4KRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4KRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4KRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4KRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4KRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4KUkVQT1JUOl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fMTExICAgICBrZWluZSAyMjYgMTg5IAoKZ3JpbnNlbmQsClNudWdnbGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFBvcnRvZXJob2VodW5nIChLcmV0ZWssIDE4LiBEZXogMTk5NiwgMTE6MjU6NTgpOgp+IyEgcm49Rnl0IHJ0PTg1MDc3OTM2NSByZz1zY2htYXJybgp+IyEgdGlkPTg1MDc0MDYzNwpOYSBqYSwgZGFubiBrb2VubmVuIHdpciBqYSBydWhpZyBkaWUgR2VidWVocmVuIHVtIDEwMCUgYW5oZWJlbiwgb2Rlcj8gOi0pCgpLLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUG9ydG9lcmhvZWh1bmcgKExvY28sIDE4LiBEZXogMTk5NiwgMTY6MzM6NTIpOgp+IyEgcm49S3JldGVrIHJ0PTg1MDkwNDc1OCByZz1zY2htYXJybgp+IyEgdGlkPTg1MDc0MDYzNwpFaW52ZXJzdGFuZGVuLCBhbGxlcmRpbmdzIGZpbmRlIGljaCAxMDAlIGV0d2FzIHVlYmVydHJpZWJlbi4gRGllIERvaXRzY2hlIFBlc3QKQWcgZXJob2VodCBzY2hsaWVzc2xpY2ggUG9zdGthcnRlbiBhdWNoIG51ciB1bSAyNSUgdW5kIEJyaWVmZSB1bSAxMCUuCkRhcyBQb3J0byBhdWYgZ2V3b2VobmxpY2hlIEJyaWVmZSB3aXJkIGFsc28gaGllciBlYmVuZmFsbHMgdW0gMTAlIHN0ZWlnZW4sIHVuZAp6d2FyIGF1dG9tYXRpc2NoIGluIGRlbSBNb21lbnQsIHdvIGF1Y2ggYmVpIGRlciBEUEFHIGRpZSBuZXVlbiBUYXJpZmUgYWt0aXYKd2VyZGVuLgoKLSBMb2NvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1dXBzIChBbGluZSwgMTguIERleiAxOTk2LCAxOTo1NzoyNCk6CgpTYW5kLCBTYW5kLCBuaWNodCBhbHMgU2FuZCwgd29oaW4gRHUgYXVjaCBibGlja3N0LiBEdSBzdGVoc3QgbWl0dGVuIGluCmRlciBoZWlzc2VuIFd1ZXN0ZSB1bmQgZGllIFNvbm5lIGJyZW5udCBhdWYgRGljaCBoZXJ1bnRlci4gRGVpbiBCbGljay4uLgoKbGljaHQgYXVzCkR1IGtvbnplbnRyaWVyc3QgRGljaC4KUGxvZXR6bGljaCB3aXJkIGVzIGR1bmtsZXIuCnVudCBzY2hhdHRlbgpXZW5uIGVpbmVtIGRpZSBTb25uZSBkZXJhcnQgYXVmIGRpZSBCaXJuZSBrbmFsbHQsIG1lcmt0IG1hbiByaWNodGlnLCB3aWUKZHVyc3RpZyBtYW4gZWlnZW50bGljaCBpc3QuCkVzIGlzdCB6dSBkdW5rZWwgIQo+IERpZSBTb25uZSBicmVubnQgaW1tZXIgaGVpc3Nlci4gRGlyIGdlaHQgZXMgdWVicmlnZW5zIGdhbnogYWVobmxpY2guCkRlaW5lIEhhdXQgYmVrb21tdCBhbiBlaW5pZ2VuIFN0ZWxsZW4gZWluZSByb3NhIEZhZXJidW5nLgoKU2Nob2VuLCBzY2hvZW4uLi4uLgpFcyBpc3QgenUgZHVua2VsIHVtIHdhcyB6dSB1bnRlcnN1Y2hlbi4uLi4uLgpBYmVyIHRyb3R6ZGVtIGtuYWxsdCBtaXIgZGllIFNvbm5lIGF1ZiBkaWUgQmlybmU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIb2dvIHZvbiBIYWFyZW5mdXNzLCBkZXIgU2FkaXN0IChBY3JpbW9uLCAxOC4gRGV6IDE5OTYsIDIyOjI2OjI0KToKLi4uCkF1cyBlaW5lciBldHdhcyBlbnRmZXJudGVuIEVja2UgdG9lbnQgZWluIFNjaG1lcnplbnNzY2hyZWksIGdlZm9sZ3Qgdm9uCnd1ZXN0ZW4gRmx1ZWNoZW4gdW5kIGtsZWlubGF1dGVuIEVyd2lkZXJ1bmdlbiwgenUgRGlyIGhlcnVlYmVyLgpIb2dvIGdyaW5zdCBicmVpdC4KLi4uCkVpbiBsZWljaGVuYmxhc3NlciBIb2JiaXQgbWl0IHRvdGFsIHZlcmJldWx0ZW0gSGVsbSB1bmQgZGVuIGt1ZW1tZXJsaWNoZW4KVWViZXJyZXN0ZW4gZWluZXMgU2NoaWxkZXMgc2NobGVwcHQgc2ljaCB2b3JiZWkuCkhvZ28gZ3JpbnN0IGJyZWl0LgouLi4KRGlyZWt0IHZvciBEaXIgc2Fja3QgZWluIEtyaWVnZXIgd2llIHRvdCB6dXNhbW1lbiwgc2VpbiBHZWduZXIgc2NoYXV0IGV0d2FzCnZlcmRhdHRlcnQgYXVmIHNlaW5lIFdhZmZlLgpIb2dvIGdyaW5zdCBicmVpdC4KLi4uCgpIb2dvIGhhdCBhbnNjaGVpbmVuZCBzZWhyIHNhZGlzdGlzY2hlIFp1ZWdlIDotKAoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBQb3J0b2VyaG9laHVuZyAoU2lsdmFuYSwgMTkuIERleiAxOTk2LCAwODozNTo0NCk6Cn4jISBybj1XdXJ6ZWwgcnQ9ODUwNzYyOTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUwNzQwNjM3Ck5hamEsIHp1IEx1ZWJrZXMgWmVpdGVuIHdhciBpY2ggendhciBuaWNodCBtZWhyIGZsdWVzc2lnLCBhYmVyIGF1Y2ggbm9jaCAKbmljaHQgd2VpdCBkYXZvbiBlbnRmZXJudC4gOikgQWJnZXNlaGVuIGRhdm9uIGdhYnMgZGVuIGF1Y2ggbnVyIDRtYWwKYXVmIEJyaWVmbWFya2UuIEFiZXIgSGVpbmVtYW5uIHdhciBhdWNoIG5pY2h0IHNjaG9lbmVyIC0gdW5kIGRpZSBVbmZhbGwtClZlcmh1ZXR1bmdzc2VyaWUuLi4gTmFqYS4KQWJlciBhbiBkaWUgc2NobGljaHRlIFNjaG9lbmhlaXQgZGVyIEFkbGVyLUJydXN0c2NoaWxkLU1hcmtlbiBhbm5vIDcxCmlzdCBkaWUgUG9zdCBlaCBuaWUgd2llZGVyIHJhbmdla29tbWVuLgoKICBTaWx2YW5hIChzY2htYXJydCBydW0pCgpQUzogQW5ubyAxODcxIHdhciB1ZWJyaWdlbnMgZ2VtZWludC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB1dXBzIChHYXN0NCwgMTkuIERleiAxOTk2LCAxMToxNDo0NCk6Cn4jISBybj1BbGluZSBydD04NTA5MzU0NDQgcmc9c2NobWFycm4KfiMhIHRpZD04NTA5MzU0NDQKTmEgamEsIGRhIGlzdCB3b2hsIG51ciBkYXMgc2ljaHRiYXJlIFNwZWt0cnVtIGF1c2dlYmxlbmRldCwgbmljaHQgZGFzCldhZXJtZXNwZWt0cnVtLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhvZ28gdm9uIEhhYXJlbmZ1c3MsIGRlciBTYWRpc3QgKEFzbW9kaXMsIDE5LiBEZXogMTk5NiwgMTM6MTU6NDMpOgp+IyEgcm49QWNyaW1vbiBydD04NTA5NDQzODQgcmc9c2NobWFycm4KfiMhIHRpZD04NTA5NDQzODQKSG1tLCBkaWVzZXMgJ2dyaW5zdCBicmVpdC4nIGhhdCBaYXJkb3ogYmVzdGltbXQgdm9uIEVkZ2FyQFBLLU1VRAphYmdlZ3Vja3QuIEhhZXR0ZSBlaW4gQ29weXJpZ2h0IGRhcmF1ZiBiZWFudHJhZ2VuIHNvbGxlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIb2dvIHZvbiBIYWFyZW5mdXNzLCBkZXIgU2FkaXN0IChBbmFraW4sIDE5LiBEZXogMTk5NiwgMTM6MTg6MzcpOgp+IyEgcm49QXNtb2RpcyBydD04NTA5OTc3NDMKfiMhIHRpZD04NTA5NDQzODQKSWNoIGdsYXViIGVyIGhhdCBlcyBlaGVyIHZvbiBLcnV1b2xxLCBkZXIgZ3JpbnN0IGF1Y2ggYnJlaXQuCkRlbiBnaWJiZXQgc2Nob24gbGFlbmdlciBhbHMgaXJnZW5kd2FzIEBQSy1NdWQuCgpBbmFraW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIb2dvIHZvbiBIYWFyZW5mdXNzLCBkZXIgU2FkaXN0IChCZW5kZWlnaWQsIDE5LiBEZXogMTk5NiwgMTM6MTk6NTUpOgp+IyEgcm49QW5ha2luIHJ0PTg1MDk5NzkxNyByZz1zY2htYXJybgp+IyEgdGlkPTg1MDk0NDM4NApBbGxlcyBmYWxzY2guIERhcyBzdGFtbXQgdm9uIFRvZXRlciA7KSkKCkJlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmlzdCBEdSBibG9lZD8gKEFzbW9kaXMsIDE5LiBEZXogMTk5NiwgMTM6MzQ6MjUpOgoKSG1tLCBkZXIgQXVkaW1heCBoYXR0ZSBlaW5lIG5ldHRlIEFrdGlvbiBnZXN0YXJ0ZXQuCkVzIGdpbmcgZGFydW0sIHdpdHppZ2UgQW50d29ydGVuIGF1ZiBkaWUgRnJhZ2UKJ0Jpc3QgRHUgYmxvZWQ/IFdlbm4gbmVpbiwgd2FydW0gbmljaHQ/JyB6dSBnZWJlbi4KSGllciBkaWUgYmVzdGVuIEFudHdvcnRlbjoKCi4uLndlaWwgaWNoIHNjaHdhcnpoYWFyaWcgYmluLgouLi5EYXMgQmxvbmQgaXN0IG51ciBnZWZhZXJidC4uLgouLi5CbG9lZCBzZWluIGlzdCBlaW5lIGJlc29uZGVycyByZWxhdGl2ZSBBbmdlbGVnZW5oZWl0LgouLi53ZWlsIGJsb2VkZSBNZW5zY2hlbiBpaHJlIERvb2ZoZWl0IG5pY2h0IGVya2VubmVuLgouLi53ZWlsIGljaCBzdHVkaWVyZSwgdW0gbWVociBaZWl0IGZ1ZXIgYW5kZXJzd2VpdGlnZSBJbnRlcmVzc2VuCiAgIHp1IGhhYmVuLgouLi5JY2gga2FubiBzY2hvbiBsYWVoc2VuLCBhZWgsIGxlZXNlbiAtIG5laW4sIGxlaHNlbiEKICAgKEFubWVya3VuZzogamV0enQgbXVzcyBlciBudXIgbm9jaCBzY2hyZWliZW4gbGVybmVuIDopICkKLi4uaWNoIGJpbiBzbyBibG9lZCwgaWNoIHdlaXNzIG5pY2h0IHdhcnVtLCBpY2gga2FubiBuaXggZGFmdWVyIQogIChEYXMgd2FyIGJlc3RpbW10IHZvbiBPZXR0aSkKLi4uaGFiZSB2ZXJnZXNzZW4sIHdpZSBCbG9lZHNlaW4gZ2VodCEKLi4ud2VpbCBpY2ggQmllciBrYXVmZW4ga2Fubi4KLi4ud2VpbCBCbG9lZHNlaW4gZG9vZiBpc3QuCi4uLkljaCBiaW4gbm9jaCB2aWVsIGJsb2VkZXIuCiAgIChIbW0sIHdlciB3YXIgZGFzIGpldHp0PyBHdXlicnVzaCA/IDopICkKLi4uU2FnZSBpY2ggbmljaHQhIEJpbiBkb2NoIG5pY2h0IGJsb2VkIQouLi5JY2gga2FubiAnQmxvZXQnIG9obmUgRHVkZW5oaWxmZSBzY2hyZWliZW4uCi4uLlN0dWRlbnRpbiEKLi4uRXMgaXJydCBkZXIgTWVuc2NoZSwgc28gbGFuZyBlciBzdHJlYnQgKEZhdXN0IEkpOgogICBKZSBsYWVuZ2VyIGljaCBzdHVkaWVyZSwgdW1zbyBibG9lZGVyIHdlcmRlIGljaCEKLi4uSGFiZSBiZXJlaXRzIGFscyBMaWVnZXdhZ2VuYmV0cmV1ZXIgZ2VhcmJlaXRldCEKLi4uSWNoIGdlaGUgbmljaHQgenUgZGVuIFZvcmxlc3VuZ2VuIQogICAoSmFqYSwgdW5zZXJlIE11ZGRlciA6KSApCi4uLkljaCBrYW5uIG1laW5lbiBOYW1lbiBzY2hyZWliZW4gdW5kIGJpcyB6ZWhuIHphZWhsZW4hCi4uLkljaCBoYWJlIFNjaHVoZ3JvZXNzZSAzOSB1bmQgdWViZXJoYXVwdCBrZWluZW4gSVEhCi4uLldlZ2VuIGRlciBndXRlbiB1bmQgc2NobGVjaHRlbiBFcmZhaHJ1bmdlbiBpbiBlaW5lbSBsYW5nZW4KICAgIExlYmVuIChHYXN0aG9lcmVyLCA2MikKLi4uV2VpbCBpY2ggZGllIFNwZWlzZWthcnRlIHZvbiBNY0RvbmFsZHMgYXVzd2VuZGlnIGthbm4hCi4uLkhhYiBBYml0dXIgdW5kIGVya2VubmUgbWljaCBqZWRlbiBNb3JnZW4gd2llZGVyIQogICAoQWhhLCBrZWluIEthbXBmdHJpbmtlciEgOikgKQouLi5kYSBpY2ggZGllIEJlYW50d29ydHVuZyBkZXIgd2VpdGVyZW4gRnJhZ2VuIGFibGVobmUhCiAgIChFciBpc3Qga2VpbiBKdXJhLVN0dWRlbnQpCi4uLkluIG1hbmNoZW4gU2l0dWF0aW9uZW4gYmxvZWQgenUgc2VpbiwgZXJmb3JkZXJ0IGVpbiBob2hlcwogICBNYXNzIGFuIEludGVsbGlnZW56IQouLi5XZWlsIGljaCB6dSBNZWRpYU1hcmt0IGdlaGUhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUG9ydG9lcmhvZWh1bmcgKEdyaW1tYm9ybiwgMTkuIERleiAxOTk2LCAxNTowNjoyNik6Cn4jISBybj1TaWx2YW5hIHJ0PTg1MDk4MDk0NCByZz1zY2htYXJybgp+IyEgdGlkPTg1MDc0MDYzNwoKQWxzbywgaWNoIGJpbiBuaWNodCBmbHVlc3NpZywgaWNoIHdhciBuaWUgZmx1ZXNzaWcgdW5kIGljaCBzZWhlIGF1Y2ggbmljaHQsCmRhc3MgaWNoIGplIGZsdWVzc2lnIHNlaW4gd2VyZGUuIEljaCBiaW4gYWJnZWJyYW5udCB3aWUgZWluZSBhcm1lIEtpcmNoZW5tYXVzCm5hY2ggZWluZW0gR3Jvc3NmZXVlciBpbSBIYXVwdHNjaGlmZi4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBQb3J0b2VyaG9laHVuZyAoQXRveiwgMTkuIERleiAxOTk2LCAxODowNjo1MCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODUxMDA0Mzg2Cn4jISB0aWQ9ODUwNzQwNjM3ClRqYSwgd2VubiBpY2ggamV0enQgZ2VtZWluIHdhZXJlIHd1ZXJkZSBpY2ggZnJhZ2VuOgoKVW5kIHdhcyBpc3QgbWl0IHVlYmVyZmx1ZXNzaWc/CgoKQWJlciBkYSBpY2ggamEgaW1tZXIgbGllYiB1bmQgbmV0dCBiaW4gKmh1ZXN0ZWwqIHdlcmRlIGljaCBkYXMgbmljaHQgdHVuIDspKSkKClRzY2hhIEF0b3oKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbmRydWNrIChBY3JpbW9uLCAxOS4gRGV6IDE5OTYsIDIwOjAwOjUxKToKCklyZ2VuZHdvIGltIFVyd2FsZCBhdWYgVG9ydHVnYS4uCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiB3ZXN0ZW4sIG5vcmRlbiB1bmQgbm9yZHdlc3Rlbi4KRWluIGdyb3NzZXIgTG9ld2UuCj4gPyBsb2V3ZQpEZXIgTG9ld2UgaXN0IHppZW1ubGljaCBncm9zcyB1bmQgc2llaHQgbWl0IHNlaW5lbSBnbGFlbnplbmRlbiBGZWxsIHVuZCBzZWluZQpNYWVobmUgYmVzb25kZXJzIGltcG9zYW50IGF1cy4gRXIgc2NoZWludCBpbSBNb21lbnQgbmljaHQgYXVmIEJldXRlc3VjaGUgenUKc2Vpbiwgc29uc3QgaGFldHRlIGVyIGRpY2ggYmVzdGltbXQgc2Nob24gYW5nZWdyaWZmZW4sIGFiZXIgZXIgc2llaHQgZGljaCBtaXQKc2VpbmVuIHRpZWZlbiBBdWdlbiBlaW5kcmluZ2xpY2ggYW4uCkVyIGlzdCBhYnNvbHV0IGZpdC4KPiB1bWFybWUgbG9ld2UKRHUgdW1hcm1zdCBkZW4gTG9ld2VuLgpEZXIgTG9ld2Ugc2NobGVpY2h0IG5hY2ggTm9yZHdlc3Rlbi4KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlciBtYWNodCBFaW5kcnVjayBhdWYgTG9ld2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VsZC4uLiAoUHJhLCAyMC4gRGV6IDE5OTYsIDEyOjM0OjE1KToKCnVudCBnZWxkCkR1IGZpbmRlc3QgYW4gMTY5MjAgTXVlbnplbiBrZWluICJHZWxkIi4KRGVpbiBCbGljayB3ZW5kZXQgc2ljaCBkZXIgVW1nZWJ1bmcgenUuClNvd2FzIHNpZWhzdCBEdSBhdWNoIGRhIG5pY2h0IQoKQXJnbG5kLCBQcmEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCT1lHUk9VUCAoU3VuZmxvd2VyLCAyMC4gRGV6IDE5OTYsIDEyOjM0OjQ4KToKW0FsbGdlbWVpbjpOb25uZV0gb2V0dGkgc2luZyBmdWVyIHVucyEKW0FsbGdlbWVpbjpTdW5mbG93ZXJdIG9ldHRpIHNpbmd0ID8gYXVqYQpbQWxsZ2VtZWluOk9ldHRpXSBXQXMgc29sbCBpY2ggZGVuIHNpbmdlbiwgU3Vlc3NlciBkaWUgUmFtcyBuaWUga2xpbmdlbiA/IE9kZXIKW0FsbGdlbWVpbjpPZXR0aV0gSmluZ2xlIERyaXZlID8gT2RlciBSdWRvbGYgdGhlIFJlZG5vc2UgRmxvcHB5LURpc2sgPwpbQWxsZ2VtZWluOlN1bmZsb3dlciBrcmVpc2NodCwgaGV1bHQsIHdlaW50XQpbQWxsZ2VtZWluOkFuYWlkIGdyaW5zdCBvZXR0aSBhbi5dCltBbGxnZW1laW46U3VuZmxvd2VyXSBUYWtlIE9ldHRpIEJveQpbQWxsZ2VtZWluOkZhdGltYV0gT2ggamEgT2V0dGkgb2RlciBPaCBUYW5uZWJhdW0KW0FsbGdlbWVpbjpFbmRlcl0gdGFrZSBpdCBvZXR0ZQpbQWxsZ2VtZWluOlN1bmZsb3dlciBmaW5kZXQgT2V0dGkgdmllbCBzdWVzc2VyIGFscyBCYWNrc3RyZWV0IEJveXMgKG9kZXIgd2llCiAgICAgICAgICAgZGllIGhlaXNzZW4pXQpbQWxsZ2VtZWluOk9ldHRpIG5pY2t0IHN1bmZsb3dlciB6dS5dCltBbGxnZW1laW46QW5haWRdIE9ldHRpIGRpZSBuZXVlIEJveWdyb3VwPyA6KQpbQWxsZ2VtZWluOk9ldHRpXSBOZWluIGljaCBiaW4gbnVyIGVpbiBUZWlsLCBLbG9uayBpc3QgZGVyIGFuZGVyZQpbQWxsZ2VtZWluOlN1bmZsb3dlciBydWZ0OiBPZXR0aSBPZXR0aSBPZXR0aSBPZXR0aV0KW0FsbGdlbWVpbjpTeW1vc2lzXSBzZWl0IHdhbm4KW0FsbGdlbWVpbjpDaGVzdGVyIGdyaW5zdF0KW0FsbGdlbWVpbjpPZXR0aV0gV2lyIGhlaXNzZW4gU2NobF51Y2tzIChtaXQgYWNjZW50IGNpcmNvbmZsZXgpCltBbGxnZW1laW46QW5haWQgaGFlbHQgc2ljaCBkaWUgT2hyZW4genUuXQpbQWxsZ2VtZWluOkZhdGltYV0gT2ggbmVubnQgaWhyIGV1Y2ggZGFubiBLbG9ldHRpPwpbQWxsZ2VtZWluOlN1bmZsb3dlcl0gc2luZyB3YXMKW0FsbGdlbWVpbjpBbmFpZCBzaWVodCBhdXMgZGVyIEZlcm5lIGVpbmVuIEJ1cyBtaXQgRmFucyBhbnJlaXNlbi5dCltBbGxnZW1laW46T2V0dGkgc2llaHQgZWluZSBCdXMgbWl0IEZhbnMgZmx1ZWNodGVuIG5hY2ggZGVuIGVyc3RlbiBkcmVpIFRha3RlbgogICAgICAgICAgIDspKV0KW0FsbGdlbWVpbjpTdW5mbG93ZXIgdmVydGVpbHQgQmFja3N0YWdlcGFlc3NlXQpGYXRpbWEgcnVmdDogSWNoIHdpbGwgYXVjaCBuZW4gQmFjaHN0YWdlcGFzcy4KW0FsbGdlbWVpbjpTdW5mbG93ZXIgc3RlY2t0IHNpY2ggSWhyZW4gIkJyYXZvLVByZXNzZSIgQW5zdGVja2VyIGFuXQpbQWxsZ2VtZWluOkFsaW5lIGJlc29yZ3Qgc2ljaCBtYWwgUGV0ZXJzaWVsbGllXQpbQWxsZ2VtZWluOlN1bmZsb3dlcl0gT2V0dGksIHNpZSBoYWJlbiBqYSB6aWVtbGljaCB2aWVsIEVyZm9sZywgd2llIGVya2xhZXJlbgpbQWxsZ2VtZWluOlN1bmZsb3dlcl0gc2llIHNpY2ggZGFzID8KW0FsbGdlbWVpbjpPZXR0aV0gVGphLCBtZWluIEF1c3NlaGVuLCBtZWluIENoYXJtZSwgbWVpbmUgQmVnYWJ1bmcsIG1laW4gRWdvLi4uCltBbGxnZW1laW46U3ltb3NpcyBsYWNodCBzaWNoIGhhbGJ0b3RdCltBbGxnZW1laW46T2V0dGldIGtvZW5uZW4gZXMgbmljaHQgc2VpbiA7LSkpCltBbGxnZW1laW46QWxpbmUgc2NoYXV0IGF1Y2ggZXR3YXMgendlaWZlbG5kXQpbQWxsZ2VtZWluOkNoZXN0ZXIgZ3JpbnN0XQpbQWxsZ2VtZWluOlN5bW9zaXNdIGdyaW5zCltBbGxnZW1laW46U3VuZmxvd2VyXSB3aWUgZXJrbGFlcmVuIHNpY2ggc2ljaCBkYSBJaHJlbiBFcmZvbGcKW0FsbGdlbWVpbjpBbGluZV0gT3dvaGwgYmlzIGF1ZiBkZWkgQmVnYWJ1bmcgaXN0IGphIGFsbGVzIHZvcmhhbmRlbiwgc29nYXIKW0FsbGdlbWVpbjpBbGluZV0gc2VociB2aWVsIEVnbyA7KQpbQWxsZ2VtZWluOk9ldHRpIGdyaW5zdF0KSGF1cHRwb3N0YW10IApFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZGVuLgpPZXR0aSBkZXIgSGFtbWVydHJhZWdlci4gCkVpbiBQYWtldHNjaGFsdGVyLiAKRWluZSBTY2hyZWlia2FiaW5lLgpFaW5lIFNjaHJlaWJrYWJpbmUuCkR1IHNhZ3N0OiBodWh1Ck9ldHRpIHNhZ3Q6ICBIYWkgIQpbQWxsZ2VtZWluOkFsaW5lIGRlbmt0IC4gbyBPIChNYW5jaG1hbCB6dXZpZWwhKV0KW0FsbGdlbWVpbjpTdW5mbG93ZXJdIFZpZWxlIExlc2VyaW5uZW4gdW5zZXJlciBaZWl0c2NocmlmdCwgd29sbGVuIE9ldHRpCltBbGxnZW1laW46U3VuZmxvd2VyXSBlaW5tYWwgbmFja3Qgc2VoZW4gd2llc28gPwpbQWxsZ2VtZWluOk9ldHRpXSBJY2ggZ2VoIGpldHp0IGVyc3RtYWwgZWluZSByYXVjaGVuLCBkYW1pdCBpY2ggZWluZXMgVGFnZXMKW0FsbGdlbWVpbjpPZXR0aV0gZGFzIFRvbSBXYWl0cyBGbGFpciBiZWtvbW1lCltBbGxnZW1laW46U3VuZmxvd2VyXSBndXRlIGlkZWUKW0FsbGdlbWVpbjpTeW1vc2lzXSBORUlOIEJMT1NTIE5JQ0gKW0FsbGdlbWVpbjpBbGluZV0gR3V0IGRhc3MgaWNoIG5pY2h0IExlc2VyaW4gZGllc2VyIFplaXRzY2hyaWZ0IGJpbiEKW0FsbGdlbWVpbjpPZXR0aV0gRGllIHNpbmQgZ2VzY2htYWNrbG9zLCBzdW5mbG93ZSBpc3QgZGFzIGVpbiBTL00gTWFnYXppbiA/PwpHcm91cGllIHJ1ZnQ6IE9ldHRpIFdpciBsaWViZW4gZGljaCEKT2V0dGkgcnVmdDogR2VodCBrbGFyIDstKQpbQWxsZ2VtZWluOkFsaW5lIGdlaHQgbWFsIGxpZWJlciB3aWVkZXIgYW4gZGllIEFyYmVpdF0KW0FsbGdlbWVpbjpBbmFpZF0gSGkgRnJ1Y2h0IQpEdSBydWZzdDogT2V0dGkgKmtyZWlzY2gqICpzbGlwIGF1ZiBkaWUgQnVlaG5lIHdlcmYqCltBbGxnZW1laW46QWxpbmUgd2lua3QgbGllYmV2b2xsXQpEdSBrbnVkZGVsc3QgQWxpbmUgYXVzIGRlciBGZXJuZS4KW0FsbGdlbWVpbjpGYXRpbWFdIEljaCBkYWNodGUgbWFuIHdpcmZ0IEt1c2NoZWx0aWVyZS4KW0FsbGdlbWVpbjpPZXR0aSBuaWNrdCBGYXRpbWEgenUuXQpHcm91cGllIHJ1ZnQ6IE9ldHRpIE9ldHRpISEhCltBbGxnZW1laW46QWxpbmVdIEhldXR6dXRhZ2UKW0FsbGdlbWVpbjpTdW5mbG93ZXIgaGF0IGFiZXIga2VpbiBOdXNjaGVsdGllcl0KW0FsbGdlbWVpbjpBbGluZV0gQWJlciBhdWNoIG51ciB3ZW5uIGRpZSBGYW5zIHVudGVyIDE2IHNpbmQKW0FsbGdlbWVpbjpTdW5mbG93ZXIgd2VpbnQgdm9yIEdsdWVjayBhbHMgc2llIGRlbiBsZWliaGFmdGlnZW4sIGRlbiBPZXR0aSwKICAgICAgICAgICBzaWVodF0KS2xvbmsgcnVmdDogb2V0dGkhCktsb25rIHJ1dHNjaHQgYXVmIEtuaWVuIHJlaW4uCktsb25rIGdpYnQgT2V0dGkgZWluZW4gdGllZmVuIHVuZCBoaW5nZWJ1bmdzdm9sbGVuIEt1c3MuCk9ldHRpIHJ1ZnQ6IEtPTksgIQpBbGluZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKRHUgc2NoYXVzdCBkZXplbnQgd2VnLCBhbHMgc2ljaCBPZXR0aSB1bmQgS2xvbmsgdmVybGllYnQgaW4gZGllIEFybWUKc2lua2VuLgpLbG9uayBzYWd0OiBMaWVic3RlciEKT2V0dGkgc2FndDogIGhuZ2wKT2V0dGkgc2FndDogIFN1ZXNzZXIgIQpLbG9uayBzYWd0OiBrb25rPwpEdSBzYWdzdDogSWNoIGJpbiBldWVyIGdyb2Vzc3RlciBmYW4gOikKT2V0dGkgcnVmdDogS0xPTksgIQpLbG9uayBzYWd0OiBZZXAuLi4KS2xvbmsgdGFldHNjaGVsdCBEaXIgZGVuIEtvcGYuCk9ldHRpIG5pY2t0IHp1c3RpbW1lbmQuCk9ldHRpIHNhZ3Q6ICBTaW5nZW4gd2lyIGpldHp0IHdhcyA/CkR1IHNhZ3N0OiBvZXR0aSwga2xvbmtpCktsb25rIHNhZ3Q6IHdlaWhuYWNodHNsaWVkPwpHcm91cGllIHJ1ZnQ6IEtsb25rLUJhYnkhIQpPZXR0aSBuaWNrdCB6dXN0aW1tZW5kLgpEdSBzYWdzdDogZ2VobiB3YSBlcnN0IG1hbCByYXVjaGVuID8KS2xvbmsgc2FndDogd2FzPwpEdSBncmluc3QuCltBbGxnZW1laW46T2V0dGldIFN0aWhpaWlpaWlpaWlpaWlpaWlpaWlpaWlpbGVlZWVlZWVlZWVlZWVlCltBbGxnZW1laW46T2V0dGldIE5hYWFhYWFhYWFhYWFhYWFhYWFhY2h0Cktsb25rIHNhZ3Q6IGVpbiBrdXJ6ZXMuLi4KW0FsbGdlbWVpbjpTdW5mbG93ZXIga3JlaXNjY2NjY2hoaGhodHRdCltBbGxnZW1laW46S2xvbmtdIGhlZWVlZWVlZWlsbGxsbGxsbGlpaWlpaWlpaWlpaWlpZ2UgbmFhYWFhYWFhYWFhYWNodApbQWxsZ2VtZWluOkdyb3VwaWUganViZWx0IG9ldHRpIHp1Ll0KW0FsbGdlbWVpbjpTdW5mbG93ZXIgdG9idF0KW0FsbGdlbWVpbjpPZXR0aV0gQWFhYWFhYWFhYWFhYWFhYWFhYWFsbGxsbGxsZXMgc2NobGFlZWVlZWVlZWVlZWVmdApbQWxsZ2VtZWluOkdyb3VwaWUgd2lyZCBnbGVpY2ggT2hubWFlY2h0aWcuXQpbQWxsZ2VtZWluOktsb25rXSBlaWlpaWlpaWlpaWlpaWlpaW5zYWFhYWFhYWFhYWFhYWFhbSB3YWFhYWFhYWFhYWFjaHQKW0FsbGdlbWVpbjpTdW5mbG93ZXJdIHdhYWFhYWFhYWFhYWFhYWFoaGhoaGgKW0FsbGdlbWVpbjpHcm91cGllXSBLTE9OSyEhIE1laHIgbWVocgpPZXR0aSBzYWd0OiAgbnV1dXV1dXV1dXV1dXV1dXIgZGFzIHRyYXV1dXV1dXV1dXV1dXV1dXV0ZWVlZWVlZWVlCk9ldHRpIHNhZ3Q6IGhvY2hoZWVlZWVlZWlsbGxsbGlnZWVlZWVlIHBhYWFhYWFhYWFhYWFhcgpLbG9uayBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpbQWxsZ2VtZWluOk9ldHRpXSBudXV1dXV1dXV1dXV1dXV1ciBkYXMgdHJhdXV1dXV1dXV1dXV1dXV1dXRlZWVlZWVlZWUKW0FsbGdlbWVpbjpPZXR0aV0gaG9jaGhlZWVlZWVlaWxsbGxsaWdlZWVlZWUgcGFhYWFhYWFhYWFhYWFyCltBbGxnZW1laW46U3VuZmxvd2VyXSBtZWVlZWhocnJycgpLbG9uayBzYWd0OiBhbGxlZ2VtZWluIGR1IGRlcHAKT2V0dGkgc2FndDogIGhuZ2wKW0FsbGdlbWVpbjpTdW5mbG93ZXIgYmVrb21tdCBuZW4gT3JnYXNtdXNdCltBbGxnZW1laW46R3JvdXBpZSBmbGlwdCBhdXMuXQpbQWxsZ2VtZWluOkdyb3VwaWVdIEpBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBCltBbGxnZW1laW46S2xvbmtdIGhvb29vb29vb29vb2xkZXIga25hYWFhYWFhYWFhYWFiZSBpbiBsb29vb29vb29vb29ja2lnZWVtCltBbGxnZW1laW46S2xvbmtdIGhhYWFhcgpHcm91cGllIHJ1ZnQ6IG9ldHRpISEhIQpGYXRpbWEgcnVmdDogVkFOSVIKR3JvdXBpZSBydWZ0OiBLbG9uayEhISEhCk9ldHRpIHNhZ3Q6ICBTbGVlZWVlZWVlZWVlZWVlZWVlZWVwIGluIGhlYWFhYWFhYWFhYWF2ZW5seXl5eXl5eXl5Ck9ldHRpIHNhZ3Q6IHBlYWFhYWFhYWFhYWFhYWFhYWFhYWFoZWFhYWFhYWNjZWVlZWVlZWUKRHUgcnVmc3Q6IElociBzZWlkIHNwaXR6ZSAhISEKW0FsbGdlbWVpbjpPZXR0aV0gU2xlZWVlZWVlZWVlZWVlZWVlZWVlcCBpbiBoZWFhYWFhYWFhYWFhdmVubHl5eXl5eXl5eQpbQWxsZ2VtZWluOk9ldHRpXSBwZWFhYWFhYWFhYWFhYWFhYWFhYWFhaGVhYWFhYWFjY2VlZWVlZWVlCktsb25rIHNhZ3Q6IGR1IGRlcHAhISEhCk9ldHRpIGdyaW5zdCBLbG9uayBhbi4KW0FsbGdlbWVpbjpHcm91cGllIHN0dWVybXQgYXVmIGRpZSBCdWVobmUgenUga2xvbmsmb2V0dGldCltBbGxnZW1laW46U3VuZmxvd2VyIGlzdCBiYWNrc3RhZ2UgYmVpIG9ldHRpIHVuZCBLbG9ua10KT2V0dGkgc2FndDogIE11bHRpbGluZ3VhbCA7LSkpCltBbGxnZW1laW46S2xvbmtdIHNjaGxhYWFhYWFhYWFhYWFhYWFhYWFhZiBpbiBoaW1tbW1saXNoY2VyCltBbGxnZW1laW46S2xvbmtdIHJ1dXV1dXV1dXV1dXV1dXV1dXV1dWgKW0FsbGdlbWVpbjpHcm91cGllXSBTY2hsYWYgbWl0IG1pciEKS2xvbmsgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCltBbGxnZW1laW46U3VuZmxvd2VyIGthbm4gSWhyIEdsdWVjayBuaWNodCBmYXNzZW5dCktsb25rIHNhZ3Q6IGJhY2tzdGFnZT8KRHUgc2NobGllc3N0IGRpZSBBdWdlbiwgc2NobWllZ3N0IERpY2ggZW5nIGFuIEtsb25rIHVuZCBnaWJzdAppaG0gZWluZW4gemFlcnRsaWNoZW4gdW5kIGxlaWRlbnNjaGFmdGxpY2hlbiBLdXNzLgpVbSBEaWNoIGhlcnVtIHZlcnNpbmt0IGRpZSBXZWx0IHVuZCBEdSBnbGF1YnN0LCBhdWYgV29sa2VuIHp1IHNjaHdlYmVuLgpLbG9uayBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpEdSBnaWJzdCBLbG9uayBlaW5lbiBSSUNIVElHRU4gS3Vzcy4KS2xvbmsgaHVlcGZ0IHVtIE9ldHRpIGhlcnVtLgpbQWxsZ2VtZWluOkdyb3VwaWUgc2NoYXV0IFN1bmZsb3dlciBlaWZlcnN1ZWNodGlnIGFuLl0KT2V0dGkgaHVlcGZ0IHVtIEtsb25rIGhlcnVtLgpbQWxsZ2VtZWluOkVuZGVyXSB3ZXIgaXN0IG1pdApTdW5mbG93ZXIgd2lyZnQgSWhyZW4gQkggbmFjaCBPZXR0aQpLbG9uayBzYWd0OiBiaiBiagpbQWxsZ2VtZWluOk5vbm5lXSBpc3QgZ3JvdXBlIHdlaWJsaWNoIG9kZXIgbiBhbmdlYmVyPwpbQWxsZ2VtZWluOk9ldHRpIHZlcm5laWd0IHNpY2ggdGllZiBiaXMgZXIgbWl0IGRlbSBLb3BwIGF1ZmtsYXRzY2h0XQpLbG9uayBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpbQWxsZ2VtZWluOlN1bmZsb3dlcl0gaWNoIGhhYmUgaWhuIGdla3Vlc3N0Cktsb25rIHNhZ3Q6IGFlaG0gb2V0dGxpaSBpY2ggbXVzcyBsb3NzLi4uLgpbQWxsZ2VtZWluOkdyb3VwaWUga251dHNjaHQgb2V0dGkgdW5kIGtsb25rLl0KT2V0dGkgc2FndDogIFlpcCBiaXMgZGVubmUgRnJvZWhlcyBmZXNjaHQgdW5kIHNvCkR1IGt1ZXNzdCBLbG9uay4KRHUgd2lua3N0IEtsb25rIHp1LgpLbG9uayBzYWd0OiB5ZXAgc3Vlc3Nlci4uLgpbQWxsZ2VtZWluOkdyb3VwaWUgZ2VodCBtaXQgT2V0dGkgaW5zIEhvdGVsLl0KS2xvbmsgc2FndDogbWFjaCBkdSBkYXMgYXVjaC4uLgpbQWxsZ2VtZWluOkdyb3VwaWUgd2lua3QgU3VuZmxvd2VyIHZvbSBGZW5zdGVyIGF1cyB6dS5dCkR1IHNhZ3N0OiBzaW5ndCBpaHIgaW4gS29lbG4gdW5kIEthcmxzcnVoZSA/Cktsb25rIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCk9ldHRpIHdpbmt0IEtsb25rIHp1LgpPZXR0aSBzYWd0OiAgTnVyIGluIEthcmxzcnVoZSA7LSkKU3VuZmxvd2VyIHNjaGxhZWZ0IG1hbCBlYmVuIHNvIG1pdCBPZXR0aS4KS2xvbmsgbmlja3QgT2V0dGkgenUuCktsb25rIHNhZ3Q6IG51ciBpbiBrYXJsc3J1aGUKRHUgc2Fnc3Q6IGNvb2wKS2xvbmsgZGVua3QgICAuIG8gTyAodW5kIGljaD8pCk9ldHRpIG5pY2t0IEtsb25rIHdpY2h0aWcgenUuCkR1IHNhZ3N0OiBzaW5ndCB3YXMgc2Nob2VuZXMKS2xvbmsgc2NobGFlZnQgbWFsIGViZW4gbWl0IE9ldHRpLgpbQWxsZ2VtZWluOkVuZGVyICBrb25udGUgZGllc2VuIHJ1bW1lbCB1bSBlaW4gcGFhciBtdXNpa2VyIG5vY2ggbmllIHZlcnN0ZWhuLAogICAgICAgICAgIHd1bmRlcnQgc2ljaCBhYmVyIGRhcyBuaWVtYW5kIGluIG9obm1hY2h0IGZhZWxsdF0KRHUgc2Fnc3Q6IGlzdCBuYWVtbGljaCBtZWluZSBMZXR6dGUgTUctUGFydHkKRHUgc2NobmllZnN0LgpLbG9uayBuaWNrdCB6dXN0aW1tZW5kLgpLbG9uayBzYWd0OiBhYiBkYWZ1ZXIuLi4KS2xvbmsgc2FndDogdHNjaG9lLi4uCltBbGxnZW1laW46RmF0aW1hIGZhZWxsdC5dCltBbGxnZW1laW46RW5kZXIgc3BpZWx0IG1pdCBzZWluZXIgZ2VpZ2UgYXVmXQpbQWxsZ2VtZWluOk9ldHRpXSBCaW4gZ2VkdXNjaHQgRW5kZXIsIGFuc29uc3RlbiBmYWxsZW4gZGllIFJlaWhlbndlaXNlIHVtIDstKQpbQWxsZ2VtZWluOkdyb3VwaWUgd2FyIHp3aXNjaGVuZHVyY2ggb2hubWFlY2h0aWcuXQpLbG9uayB3aW5rdCBEaXIgdW5kIE9ldHRpIHp1LgpLbG9uayBuaWNrdCBPZXR0aSB6dS4KW0FsbGdlbWVpbjpTdW5mbG93ZXIgaGF0dGUgZWluZW4gT3JnYXNtdXNdCltBbGxnZW1laW46S2xvbmsga2FubiBkYXMgYmVzdGFldGlnZW4uXQpPZXR0aSB3aW5rdCBLbG9uayB6dS4KW0FsbGdlbWVpbjpHcm91cGllIHNjaG51cHBlcnQgYW4gT2V0dGksIEhJTU1MSVNDSCFdCktsb25rIHNhZ3Q6IHRzaGNvZS4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEtsb25rLgpbQWxsZ2VtZWluOkVuZGVyIGdyaW5zdF0KUHlybyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbQWxsZ2VtZWluOkdyb3VwaWUgaHVlcGZ0IHJ1ZWJlciBpbiBLbG9ua3MgQmV0dC5dCltBbGxnZW1laW46U3VuZmxvd2VyIGhhdCBhdWNoIGFsbGVzIG1pdGdlbG9nZ3QgOildCltBbGxnZW1laW46R3JvdXBpZSBodWVwZnQgYXVmIEtsb25rIHJ1bS5dCkR1IGtudWRkZWxzdCBQeXJvIGF1cyBkZXIgRmVybmUuCltBbGxnZW1laW46U3VuZmxvd2VyXSBkdSBrbG9uayBpc3QgZ2VnYW5nZW4gOikKW0FsbGdlbWVpbjpHcm91cGllXSBBcmdsIQpbQWxsZ2VtZWluOkVuZGVyIGZhZW5ndCBhbiB3aWUgd2lsZCBnZWlnZSB6dSBzcGllbGVuLCBhbHMgZHUgbmFlaGVyIGhpbmhvZXJzdCwKICAgICAgICAgICBlcmtlbm5zdCBkdSBkYXMgZXIgUGFnYW5pbmlzIDEuIFZpb2xpbmtvbnplcnQgc3BpZWx0XQpEdSBzYWdzdDogZHUga29tbXN0IG5hY2gga29lbG4KT2V0dGkgbmlja3QgS2xvbmsgd2ljaHRpZyB6dS4KW0FsbGdlbWVpbjpTdW5mbG93ZXIgcGZlaWZ0IEVuZGVyIGF1c10KW0FsbGdlbWVpbjpNb3JnYXJdIEVzIGlzdCBkb2NoIG5vY2ggZ2FyIG5pY2h0IEZydWVobGluZy4gdHN0c3RzCltBbGxnZW1laW46R3JvdXBpZSBoYWVsdCBzaWNoIGRpZSBPaHJlbiB6dS5dCltBbGxnZW1laW46U3VuZmxvd2VyXSBPZXR0aSBPZXR0aQpPZXR0aSBuaWNrdCB6dXN0aW1tZW5kLgpbQWxsZ2VtZWluOkZhdGltYSBzY2hudXBwZXJ0IGF1Y2ggbWFsIGFuIE9ldHRpIHVuZCBzdGVsbHQgZmVzdCwgZGFzcyBlcgogICAgICAgICAgIExBVkVOREVMU0VJRkUgYmVudXR6dC5dCltBbGxnZW1laW46R3JvdXBpZSBlcnNjaGllc3N0IEVuZGVyIHVuZCBsYXVzY2h0IHZvbGwgdW5kIGdhbnogT2V0dGkuXQpbQWxsZ2VtZWluOk9ldHRpIGxhY2h0Ll0KW0FsbGdlbWVpbjpOb25uZSBzcGllbHQgbGllYnIgYnJhY2hpYWxtZXRhbCBtaXQgbWVsb2Rpc2NoZW4gZWxlbWVudGVuLCBkYXMKICAgICAgICAgICB3aXJrdCBiZWkgZ3JvdXBpZXMhXQpbQWxsZ2VtZWluOkdyb3VwaWVdIEdlaCB2b24gbWVpbmVtIE9ldHRpIHdlZy4KW0FsbGdlbWVpbjpPZXR0aV0gTmVpbiBrZWluZSBMYXZlbmRlbHNlaWZlIDstKSkKW0FsbGdlbWVpbjpTdW5mbG93ZXIgaGF0IGVpbmUgQnJhdm8gQXV0b2dyYW1ta2FydGUgdm9uIE9ldHRpXQpbQWxsZ2VtZWluOkVuZGVyIHNwaWVsdCB0cm90emRlbSB3ZWl0ZXIsIGR1Z3J1c2Vsc3QgZGljaC5dCltBbGxnZW1laW46U3VuZmxvd2VyXSBnZWJvcmVuIGluIExhbmRhdQpbQWxsZ2VtZWluOlN1bmZsb3dlcl0gYWxzIGVpbiBkaWNrZXMgS2luZApbQWxsZ2VtZWluOk5vbm5lXSBuIGRpY2tlcyBraW5kPwpbQWxsZ2VtZWluOk9ldHRpXSBMYW5kYXUgPz8/CltBbGxnZW1laW46RW5kZXIgIGdlYm9yZW4gYWxzIGxhbmRlaV0KW0FsbGdlbWVpbjpHcm91cGllIGlzdCBzY2h3YW5nZXIgdm9uIE9ldHRpLl0KW0FsbGdlbWVpbjpTdW5mbG93ZXJdIG1pdCA1IEphaHJlbiBkZXIgZXJzdGUgU2V4IG1pdCBIYXJhbGQgU2NobWl0ZApbQWxsZ2VtZWluOk9ldHRpIGJlbWl0bGVpZGV0IEdyb3VwaWVdCltBbGxnZW1laW46R3JvdXBpZV0gT2V0dGkgamV0enQgbXVzc3RlIG1pY2ggaGVpcmF0ZW4hCltBbGxnZW1laW46U3VuZmxvd2VyXSBtaXQgMTAgdHJhZiBlciBrbG9uayAobWl0IGVpbmVtIFN0ZWluKQpbQWxsZ2VtZWluOkVuZGVyIGZyZXV0IHNpY2gsZGFzIGdyb3VwaWUgZGFtaXQgaGludGVyIGRlbiBoZXJkIHZlcnNjaHdpbmRlbgogICAgICAgICAgIHdpcmQsIGVpbmUgd2VuaWdlcl0KW0FsbGdlbWVpbjpPZXR0aV0gU3VuZmxvd2VyIGRpZSBGYWt0ZW4gc29sbHRlbiB3aXIgbm9jaG1hbCByZWNoZXJjaGllcmVuCltBbGxnZW1laW46QW5haWQgZ3JpbnN0IFN1bmZsb3dlciBhbi5dCltBbGxnZW1laW46U3ltb3NpcyBMQUNIVCBTSUNIIEtSVU1NIFVORCBTQ0hJRUZdCltBbGxnZW1laW46U3VuZmxvd2VyXSBtaXQgMTggd3VyZGUgT2V0dGkgdm9uIEtsb25rIHNjaHdhbmdlcgpbQWxsZ2VtZWluOkdyb3VwaWVdIFdBUz8/Pz8/CkR1IGtpY2hlcnN0LiAoV2llIGFsYmVybiB2b24gRGlyKQpbQWxsZ2VtZWluOlN5bW9zaXMgTEFDSFQgU0lDSCBLUlVNTSBVTkQgU0NISUVGXQpbQWxsZ2VtZWluOk5vbm5lXSBtb21lbnQhPwpbQWxsZ2VtZWluOkVuZGVyIHNjaG1laXNzdCBzaWNoIHdlZyB2b3IgbGFjaGVuLl0KW0FsbGdlbWVpbjpGYXRpbWFdIFVuZCB3ZXIgaXN0IGRhcyBLaW5kPwpbQWxsZ2VtZWluOk1haGF0bXVdIFVuZCBlcyB3YXIgU29tbWVyIC4uLgpbQWxsZ2VtZWluOkdyb3VwaWVdIEFiZXIgaWNoIGJpbiBkb2NoIHNjaHdhbmdlciEgRnJhZyBBbml0YSEKW0FsbGdlbWVpbjpPZXR0aV0gVW5kIGljaCB3YXIgc2llYnplZWVlZWVlaG4KW0FsbGdlbWVpbjpTdW5mbG93ZXJdIHd1cmRlIG5pY2h0IGF1ZmdlZnVlaHJ0IDooCltBbGxnZW1laW46TWFoYXRtdV0gVW5kIHNpZSB3YXIgMzEgLi4uCltBbGxnZW1laW46T2V0dGldIFVuZCBzaSBlaW51bmRkcmVpc3Npc2NoaGhoaGhoaGgKW0FsbGdlbWVpbjpGYXRpbWFdIExvcyBPZXR0aSBlcnphZWhsc3QgdW5zCltBbGxnZW1laW46RW5kZXIgZGFzIGtpbmQgaXN0IGRva3RvciBzb21tZXIsIGhhYnQgaWhyIGVzIGdlaG9lcnRdCltBbGxnZW1laW46U3VuZmxvd2VyXSBtaXQgMTkgc3RhbmQgZXIgaW4gZGVyIEJyYXZvOiBNZWluIGVyc3RlcyBNYWwKW0FsbGdlbWVpbjpNYWhhdG11XSBVbmQgZXMgd2FyIFNvbW1lciAuLi4KW0FsbGdlbWVpbjpBY3JpbW9uXSBVbmQgZGFubiBlbnRzdGFuZCBTdW5mbG93ZXI/CltBbGxnZW1laW46R3JvdXBpZV0gT2V0dGkgT2V0dGkKW0FsbGdlbWVpbjpPZXR0aV0gdW5kIHZvbiBkZXIgTGllYmFhYWVlZWVlIHd1c3N0IGljaCBuaWNodCB2aWhpZWVlZWVlZWwKW0FsbGdlbWVpbjpHcm91cGllIGtyZWlzY2h0Ll0KW0FsbGdlbWVpbjpGYXRpbWFdIFVuZCBpbiBMaWViZSwgU2V4IHVuZCBMZWlkZW5zY2hhZnQgaGF0IGVyIGJlc3RpbW10IG1pdCAxNApbQWxsZ2VtZWluOkZhdGltYV0gc2Nob24gYW5vbnltIGdlc3RhbmRlbi4KW0FsbGdlbWVpbjpPZXR0aV0gU3Ugd3Vzc3RlIEFMTEVTIHVuZCBzaWUgbGllcyBtaXNjaCBzcHVyYWVlZW4uLi5pc2NoIHdhciBrZWluCltBbGxnZW1laW46T2V0dGldIEtpbmQgbWFlZWVoaGhoaHIKW0FsbGdlbWVpbjpNb3JnYXIgc3VjaHQgd2FzLCB3YXMgZXIgc2ljaCBpbiBkaWUgT2hyZW4gc3RvcGZlbiBrYW5uLl0KW0FsbGdlbWVpbjpNYWhhdG11XSBTY2hvbiBhdXMgZGllc2VtIFZsb2tzbGllZCBnZWh0IGhlcnZvciwgZGFzIE9ldHRpIHZvbSBEci4KW0FsbGdlbWVpbjpNYWhhdG11XSBTb21tZXIgVGVhbSBlbnRqdW5nZmVydCB3dXJkZSB1bmQgbmljaHQgdm9uIEhhcmFsZApbQWxsZ2VtZWluOk1haGF0bXVdIFNjaG1pZHQuCltBbGxnZW1laW46T2V0dGkgbmlja3Qgd2lsZF0KW0FsbGdlbWVpbjpTdW5mbG93ZXJdIHdhcyBoYWJlIGljaCBnZW1hY2h0ID8KW0FsbGdlbWVpbjpFbmRlciBzY2htZWlzdCBzaWNoXQpbQWxsZ2VtZWluOlN1bmZsb3dlcl0gbWVpbiBlcnN0ZXMgbWFsIHdhciBvZXR0aSA/CltBbGxnZW1laW46RW5kZXIgemVyZWltZXJ0IHNpY2guXQpbQWxsZ2VtZWluOlN1bmZsb3dlciBncnVlYmVsdF0KW0FsbGdlbWVpbjpHcm91cGllXSBPZXR0aSBpbSBCZXR0IHNhZ3Rlc3QgZHUgaWNoIHNlaSBkZWluZSBFcnN0ZSEKW0FsbGdlbWVpbjpHcm91cGllIGhldWx0Ll0KW0FsbGdlbWVpbjpPZXR0aSBlcnJvZXRldC5dCltBbGxnZW1laW46U3VuZmxvd2VyXSBkYXJ1bSBrYW5uIGljaCBtaWNoIG5pY2h0IG1laHIgYW4gbWVpbiBlcnN0ZXMgbWFsCltBbGxnZW1laW46U3VuZmxvd2VyXSBlcmlubmVybgpbQWxsZ2VtZWluOk9ldHRpXSBEQXMgc2FnIGljaCBpbW1lciA7LSkpCltBbGxnZW1laW46TWFoYXRtdV0gRGFzIHNhZ3RlIGVyIGFsbCBzZWluZW4gMzY1ICBNYWV0cmVzc2VuLCBHcm91cGllCltBbGxnZW1laW46R3JvdXBpZSB3ZWludC5dCltBbGxnZW1laW46U3VuZmxvd2VyXSBncm91cGllIHNvIGd1dCBpc3QgZXIgbmljaHQKW0FsbGdlbWVpbjpLdXNjaGVsYmFlcl0gRXIgbWVpbnQgZXIgYmVuaW1tdCBzaWNoIHNvLCBhbHMgd2FlcnMgZGFzIGVyc3RlIG1hbApbQWxsZ2VtZWluOkt1c2NoZWxiYWVyXSAodW5nZXNjaGlja3QgbGFlc3N0IGdydWVzc2VuKQpbQWxsZ2VtZWluOkdyb3VwaWUgc2NobHVjaHp0OiBVbmQgaWNoLi4uLiBpY2ggLi4uIGRhY2h0ZSBpY2ggc2VpIGRpZSBlaW56aWdzdGUKICAgICAgICAgICBmdWVyIGRpY2ggKmhldWwqXQpbQWxsZ2VtZWluOk9ldHRpXSBOZSBNYWhhdG11LCBTYW1zdGFnIHdpcmQgU3BvcnRzY2hhdSBnZWd1Y2t0ICEKRHUgZ3JpbnN0LgpbQWxsZ2VtZWluOkVuZGVyXSBPZXR0aSB3aWVkZXJob2x0IHNpY2ggamVkZXMgamFociwgZGEgaXN0IGVyIGFiZXIgZWluCltBbGxnZW1laW46RW5kZXJdIHZlcm51ZW5mdGlnZXIganVuZ2UKW0FsbGdlbWVpbjpLdXNjaGVsYmFlcl0gaW4gZGVtIG1vbWVudCBqYSBvZGVyIGhhc3QgZHUgbmljaHQgdW50ZXJtIGJldHQKW0FsbGdlbWVpbjpLdXNjaGVsYmFlcl0gbmFjaGdlc2NoYXV0PwpbQWxsZ2VtZWluOkdyb3VwaWUgdHJvZXN0ZXQgc2ljaCBtaXQgc3ltb3Npc10KW0FsbGdlbWVpbjpNYWhhdG11XSBPZXR0aSAtIG5hY2ggZGVtIFNwb3J0IGtvbW10IGRlciBIb2VjaHN0bGVpc3R1bmdzc3Nwb3J0LgpQeXJvICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpbQWxsZ2VtZWluOk9ldHRpXSBLdXNjaGVsYmFlciwgZGVzd2VnZW4gc2FnIGljaCBlcyBoYQpbQWxsZ2VtZWluOkVuZGVyXSBncm91cGllLCBkYXMgd29ydCBlaW56aWdzdGUgZ2lidCBlcyBuaWNoIHNjaGF1IGluIGRlbiBkdWRlbgpbQWxsZ2VtZWluOkVuZGVyXSBhdWNoIG5hY2ggcmRjaHRzY2hyZWlicmVmb3JtLCBlaW56aWcga2FubiBtYW4gbmljaHQgc3RlaWdlcm4KW0FsbGdlbWVpbjpHcm91cGllIGdlaHQgYXVmIEVuZGVyIGxvcy5dCltBbGxnZW1laW46RW5kZXJdIGVzIG11ZXNzdGUgaGVpc2VuIGRpZSBlaW56aWdlCltBbGxnZW1laW46T2V0dGkgZmV1ZXJ0IEdyb3VwaWUgYW4uXQpGYXRpbWEgcnVmdDogRkFOVEEKRmFudGFCb3kgcnVmdDogRkFUSU1BCltBbGxnZW1laW46U3VuZmxvd2VyXSBobW0gQnJhdm8gRHIuIFN1bmZsb3dlciBTZWl0ZTogSWNoIGtvbW1lIGF1cyBMYW5kYXUgdW5kCltBbGxnZW1laW46U3VuZmxvd2VyXSBoYWJlIGVpbmUgQm95Z3JvdXAgaW4gZGVyIGljaCBtZWluZSBncm9zc2UgTGllYmUgS2xvbmsKW0FsbGdlbWVpbjpTdW5mbG93ZXJdIHRyYWYsIG1laW5lIEZyYWdlOiBNdXNzIEhhcmFsZCBTY2htaXRkIHdpc3NlbiBkYXMgaWNoCltBbGxnZW1laW46U3VuZmxvd2VyXSBpaG4gbmljaHQgbGllYmUgPyAoT2V0dGksIHp1ciBaZWl0IGluIEhlaWRlbGJlcmcgbGViZW5kKQpbQWxsZ2VtZWluOkdyb3VwaWUga3Vlc3N0IG9ldHRpLl0KW0FsbGdlbWVpbjpNYWhhdG11XSBKZXR6dCB0dXQgc2llIGVzIHNjaG9uIG1pdCBqZWRlbSBpbSBLdW1tZXIgdWViZXIgT2V0dGkuCltBbGxnZW1laW46S3VzY2hlbGJhZXJdIGljaCBob2ZmZSwgaWNoIGhhYiBuaXggZmFsc2NoZXMgZ2VzYWd0IDspCltBbGxnZW1laW46RW5kZXIgemllaHQgZ3JvdXBpZSBzY2huZWxsIGRpZSB6d2FuZ3NqYWNrZSBhbiB1bmQgaXMgc2llIGVyc3QgbWFsCiAgICAgICAgICAgbG9zXQpbQWxsZ2VtZWluOk9ldHRpXSBJY2ggZ2xhdWJlIE1haGF0bXUgc2llIGZhZWxsdCAiYW5kZXJzIiB1ZWJlciBpbiBoZXIuLi4KW0FsbGdlbWVpbjpGYXRpbWEgd3VlcmRlIE9ldHRpIG5pZSBrdWVzc2VuLl0KW0FsbGdlbWVpbjpBbmFpZCBraWNoZXJ0Ll0KW0FsbGdlbWVpbjpPZXR0aV0gRHUga3Vlc3N0IFpvcnJvLCBGYXRpbWEuLi47LSkpCltBbGxnZW1laW46U3VuZmxvd2VyXSBhYmVyIG9ldHRpIGlzdCBkb2NoIHVuc2VyIHN0YXIKW0FsbGdlbWVpbjpLdXNjaGVsYmFlciBzY2hvbl0KW0FsbGdlbWVpbjpOb25uZV0gdW5kIHdlciBrdWVzc3QgbWljaD8KW0FsbGdlbWVpbjpGYXRpbWFdIEViZW4uIFNvbnN0IGJla29tbSBpY2ggbm9jaCBBZXJnZXIgbWl0IGlobSAuKQpbQWxsZ2VtZWluOlN5bW9zaXNdIEtlaW5lciBOT05ORQpbQWxsZ2VtZWluOlN1bmZsb3dlcl0gaG1tIFpvcnJvIHd1cmRlIGRvY2ggYWJnZXNldHp0LCBkaWUgZHJlaGVuIGpldHp0IGRpZQpbQWxsZ2VtZWluOlN1bmZsb3dlcl0gbmV1ZSBTZXJpZTogT2V0dGkgZGVyIGhvZmZudW5nbG9zZSBBYmVudGV1cmVyCltBbGxnZW1laW46R3JvdXBpZSBrdXNjaGVsdCBzaWNoIGFuIG9ldHRpXQpbQWxsZ2VtZWluOk5vbm5lXSBqYSwgaWNoIGJpbiBuZSBhcm1lIHNhdQpbQWxsZ2VtZWluOkt1c2NoZWxiYWVyXSBkdSBiaXN0IGRpZSBicmF1dCBqZXN1IQpbQWxsZ2VtZWluOkVuZGVyIHdpcmZ0IGVpbmVuIGt1c2NoZWxiYWVyIGF1ZiBkaWUgYnVlaG5lKG1hY2h0IG1hbiBkb2NoIHNvIGltCiAgICAgICAgICAgemFydGVuIHRlZW5pZWFsdGVyLCBvZGVyID8pXQpbQWxsZ2VtZWluOlN5bW9zaXNdIEVCRU4KW0FsbGdlbWVpbjpHcm91cGllXSBJY2ggdmVyZ2ViZSBEaXIgb2V0dGksIGF1Y2ggd2VubiBpY2ggbmljaHQgZGllIGVyc3RlIHdhci4KW0FsbGdlbWVpbjpTdW5mbG93ZXIga3VzY2hlbHQgc2ljaCBhbiBkaWUgYW5kZXJlIFNlaXRlIHZvbiBPZXR0aSBhbl0KW0FsbGdlbWVpbjpGYXRpbWFdIFpvcnJvIGlzdCBpbW1lciBlaW4gU3Rhci4KW0FsbGdlbWVpbjpLdXNjaGVsYmFlcl0gRnJhdWVuLCBqZXR6dCBsYWV1ZnQgc2llIHp1IGlobSB6dXJ1ZWNrIHVuZCBzdW5mbG93ZXIKW0FsbGdlbWVpbjpLdXNjaGVsYmFlcl0gZ2VodCBhdWNoIGZyZW1kLiA6KApbQWxsZ2VtZWluOlN5bW9zaXMgZ3JpbnN0XQpbQWxsZ2VtZWluOkdyb3VwaWUgc2NodWJzdCBTdW5mbG93ZXIgd2VnLl0KW0FsbGdlbWVpbjpNYWhhdG11IGt1cmJpc2tvcGZqYWNrZWQgaW0gcm90ZW4gTWFudGVsIGRhdm9uIHVuZCBodWVsbHQgc2ljaCBpbgogICAgICAgICAgIHN0aWxsc2Nod2VpZ2VuZGVzIElkbGVuLl0KW0FsbGdlbWVpbjpTdW5mbG93ZXJdIGhlZSBvZXR0aSB3YXIgbWVpbiBlcnN0ZXMgTWFsIChhdWNoIHdlbm4gaWNoIG1pY2ggbmljaHQKW0FsbGdlbWVpbjpTdW5mbG93ZXJdIG1laHIgc28gZ3V0IGRhcmFuIGVyaW5uZXJuIGtvZW5udGUpCltBbGxnZW1laW46U3ltb3Npc10gSGFhYWFhYWFhYWFhYWFhYWFhYQpbQWxsZ2VtZWluOkVuZGVyXSB0amEgb2V0dGkgaXN0IGhpZXIgZGVyIGZyYXVlbnNjaHdhcm0sIHdhcyBpc3QgbnVyIGRyYW4gYW4KW0FsbGdlbWVpbjpFbmRlcl0gZGVtICwgaGFlaCA6LSgKW0FsbGdlbWVpbjpLdXNjaGVsYmFlcl0gZHUgc2llaHN0IGphLCBkdSBiaXN0IG5pY2h0IG51ciBuaWNodCBkaWUgZXJzdGUsCltBbGxnZW1laW46S3VzY2hlbGJhZXJdIHNvbmRlcm4gYXVjaCBuaWNodCBkaWUgZWluemlnZS4KW0FsbGdlbWVpbjpTdW5mbG93ZXJdIGRhdCBpc3QgbWVpbmVyIGdyb3VwaQpbQWxsZ2VtZWluOlN5bW9zaXNdIEljaCBsYWNoIG1pY2ggdG90CltBbGxnZW1laW46R3JvdXBpZV0gS3VzY2hlbGJhZXIgaWNoIGdlaGUgbmljaHQgZnJlbWQsIGljaCBrZWhyZSBudXIgenUgTUVJTkVNCltBbGxnZW1laW46R3JvdXBpZV0gT2V0dGkgenVydWVjay4KW0FsbGdlbWVpbjpTdW5mbG93ZXIgaGF1dCBncm91cGllIGVpbmUgcmVpbl0KW0FsbGdlbWVpbjpLdXNjaGVsYmFlcl0gRHUgbmljaHQsIGFiZXIgc3VuZmxvd2VyCltBbGxnZW1laW46R3JvdXBpZSBwcnVlZ2VsdCBzaWNoIG1pdCBTdW5mbG93ZXJdCltBbGxnZW1laW46U3ltb3Npc10gd2VubiBGcmF1ZW4gc2ljaCBwcnVlZ2VsbiB3aXJkcyBzY2hsaW1tCltBbGxnZW1laW46U3VuZmxvd2VyIHphcHQgbWFsIHNvIGViZW4gR3JvdXBpZSA6KV0KW0FsbGdlbWVpbjpHcm91cGllIGhhdXQgU3VuZmxvd2VyIGF1ZiBkaWUgU2lsaWtvbi1CcnVlc3RlLl0KW0FsbGdlbWVpbjpGYXRpbWFdIGljaCB3dWVyZGUgc2FnZW4gaWhyIHd1ZXJmZWx0IHVtIGlobgpbQWxsZ2VtZWluOkt1c2NoZWxiYWVyXSBGcmF1ZW5jYXRjaGVuIGdlaWwgOi0pKSkKW0FsbGdlbWVpbjpPZXR0aV0gT2NoIGF1ZiBzaWNoIHNjaGxhZ2VuZGUgRnJhdWVuIHN0ZWggaWNoIDspKQpbQWxsZ2VtZWluOkZhdGltYV0gU3RlbGx0IG1hbCBuZSBTY2hsYW1tZ3J1YmUgYXVmLgpbQWxsZ2VtZWluOkdyb3VwaWUgaXN0IHdpZWRlciBnYW56IGxpZWJdCltBbGxnZW1laW46U3VuZmxvd2VyIGJ1ZWNrdCBzaWNoIGZ1ZXIgT2V0dGkgOildCltBbGxnZW1laW46TW9yZ2FyXSBKZXR6dCB3aXJkIGxhbmdzYW0gaGVmdGlnLgpDZWxlYmhpdGggcnVmdDogU2Nob2VuZSBGZWllcnRhZ2UsIGJpbiBkYW5uIG1hbCB3ZWcuLi4uCltBbGxnZW1laW46R3JvdXBpZSB0cml0dCBoaW50ZXIgT2V0dGk/NHMgUnVlY2tlbiBhdWYgU3VuZmxvd2VyIGVpbi5dCltBbGxnZW1laW46RW5kZXJdIHdvIGlzdCBkZXIgc2NobGFtbSwgamV0enQgaXN0IHNjaGxhbW1jYXRzY2hlbgpbQWxsZ2VtZWluOkdyb3VwaWVdIFN1bmZsb3dlciBoYXQgYW5nZWZhbmdlbiEKW0FsbGdlbWVpbjpUb2JiaWVuXSB3dWVuc2NoZSBzY2hvZW5lIFdlaWhuYWNodGVuISEhISEhCltBbGxnZW1laW46R2xvaW5dIEtsZWluaGlybiBhbiBHcm9zc2hpcm4sIEtsZWluaGlybiBhbiBHcm9zc2hpcm46IE9ldHRpLCBEdQpbQWxsZ2VtZWluOkdsb2luXSB6aWVoc3Qgc293aWVzbyBkZW4ga3VlcnplcmVuLCBhbHNvIGdlYnQgZG9jaCBtYWwgYWxsZSBSdWhlCltBbGxnZW1laW46R2xvaW5dIGhpZXIgLi4uCltBbGxnZW1laW46U3VuZmxvd2VyIHd1ZXJndCwgYWxzIE9ldHRpIHdlZ3NjaGF1dCwgbWFsIHNvIGViZW4gR3JvdXBpZV0KW0FsbGdlbWVpbjpFbmRlciB0aXBwdCAtYS1dCltBbGxnZW1laW46R3JvdXBpZSBrdXNjaGVsdCBtaXQgT2V0dGkgaW0gQmV0dC5dCltBbGxnZW1laW46U3VuZmxvd2VyXSBudXIgZ3JvdXBpZSBpY2ggc3RlaGUgaGllciBiZWkgb2V0dGkgdW5kIGR1IG5pY2h0ICEKW0FsbGdlbWVpbjpTeW1vc2lzXSBISUxGRSBJQ0ggQlJFQ0ggV0VHRU4gTEFDSEtSQUVNUEZFTiBWT1JNIFJFQ0hORVIgWlVTQU1NRU4KRHUga3VzY2hlbHN0IERpY2ggYW4gT2V0dGkgYW4uCkdyb3VwaWUga29tbXQgYW4uCkR1IHNjaGxpZXNzdCBkaWUgQXVnZW4sIHNjaG1pZWdzdCBEaWNoIGVuZyBhbiBPZXR0aSB1bmQgZ2lic3QKaWhtIGVpbmVuIHphZXJ0bGljaGVuIHVuZCBsZWlkZW5zY2hhZnRsaWNoZW4gS3Vzcy4KVW0gRGljaCBoZXJ1bSB2ZXJzaW5rdCBkaWUgV2VsdCB1bmQgRHUgZ2xhdWJzdCwgYXVmIFdvbGtlbiB6dSBzY2h3ZWJlbi4KRHUgc2NoYXVzdCBkZXplbnQgd2VnLCBhbHMgc2ljaCBHcm91cGllIHVuZCBPZXR0aSB2ZXJsaWVidCBpbiBkaWUgQXJtZQpzaW5rZW4uCkdyb3VwaWUgdHJpdHQgRGljaC4KW0FsbGdlbWVpbjpPZXR0aV0gaG1tIHdpciBrb2VubnRlbiBqYSB3aWVkZXIgdWJlciBQZW50aXVtIFBybyBNb3RoZXJib2FyZHMKW0FsbGdlbWVpbjpPZXR0aV0gZGlza3V0aWVyZW4gb2RlciBkYXMgRmV1bGxpdG9uIGluIGRlciBGQVogZGFzIGlzdCBhbGxlcyBzbwpbQWxsZ2VtZWluOk9ldHRpXSBoZXJybGljaCBpbnRlbGVrdHVlbGwKRHUgc3ByaW5nc3QgR3JvdXBpZSBhbiB1bmQgZmFlbmdzdCBhbiwgc2llIHp1IHd1ZXJnZW4uCk9ldHRpIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpHcm91cGllIHNwcmluZ3QgRGljaCBhdWYgZWlubWFsIGFuIHVuZCB3dWVyZ3QgRGljaC4KR3JvdXBpZSBrdWVzc3QgT2V0dGkuCkR1IGdpYnN0IE9ldHRpIGVpbmVuIFJJQ0hUSUdFTiBLdXNzLgpHcm91cGllIGtvdHp0IGF1ZiBEaWNoLgpHcm91cGllIHNhZ3Q6IG1laW5lcgpHcm91cGllIGt1c2NoZWx0IHNpY2ggYW4gT2V0dGkgYW4uClN1bmZsb3dlciBzY2hsYWVmdCBtaXQgT2V0dGkuCkdyb3VwaWUgZ3J1bW1lbHQuCk9ldHRpIHNhZ3Q6IEljaCB3aWxsIG51ciBTdW5mbG93ZXIuCkdyb3VwaWUgc2NocmVpdCBsYXV0IQpHcm91cGllIGJyaWNodCBpbiBUcmFlbmVuIGF1cyB1bmQgd2VpbnQgYml0dGVybGljaC4KRHUga3VzY2hlbHN0IERpY2ggYW4gT2V0dGkgYW4uCk9ldHRpIHRyaXR0IERpY2guCk9ldHRpIHNhZ3Q6ICBFY2hvcyBnZWx0ZW4gbmljaHQKRHUgZ3JpbnN0IE9ldHRpIGFuLgpbQWxsZ2VtZWluOkdyb3VwaWUgYmVnZWh0IFNlbGJzdG1vcmQsIE9ldHRpIGhhdCBzaWUgdmVyc2NobWFlaHQuXQpEdSBzYWdzdDogZGF0IHdlaXNzIGphIGtlaW5lcgpEdSBncmluc3QuCk9ldHRpIHNhZ3Q6ICBEQW5uIGRvY2ggbGllYmVyIEdSb3Vwb2UKW0FsbGdlbWVpbjpTeW1vc2lzXSBPb29vb3BzCk9ldHRpIHNhZ3Q6ICBTdW5mbG93ZXIgdmVycGlzcyBEaWNoCltBbGxnZW1laW46S3VzY2hlbGJhZXJdIGdyb3VwaWUsIGtvbW0genUgbWlyIHp1bSBrdXNjaGVsbgpXYWFhYWFoISBEdSB3ZWluc3QgYml0dGVybGljaC4KW0FsbGdlbWVpbjpHcm91cGllXSBoYWggc3VuZmxvd2VyIGlzdCB1bmZhaXIKR3JvdXBpZSBrbnVkZGVsdCBPZXR0aS4KT2V0dGkgbmlja3QgenVzdGltbWVuZC4KRHUgc3ByaW5nc3QgR3JvdXBpZSBhbiB1bmQgZmFlbmdzdCBhbiwgc2llIHp1IHd1ZXJnZW4uCkdyb3VwaWUgdW1hcm10IE9ldHRpLgpbQWxsZ2VtZWluOlN1bmZsb3dlciBiZW51dHp0IGRpZSBXYWZmZW4gZWluZXIgRnJhdV0KW0FsbGdlbWVpbjpTeW1vc2lzXSBkZXIgaXMgYmVzdGltbXQgZ2FueiB3ZWljaCB1biBrdXNjaGVsaWcKRHUgc2Fnc3Q6IGFiZXIgKnNuaWVmKiBpY2ggbGllYmUgKnNuaWVmKiBpaG4KW0FsbGdlbWVpbjpLdXNjaGVsYmFlcl0gZXMgZ2lidCBudXIgZWluZW4gZGVyIGt1c2NoZWxpZ2VyIGlzdCBpbSBtdWQ6IFRlZGR5LApbQWxsZ2VtZWluOkt1c2NoZWxiYWVyXSBtZWluIGVyc3RpZQpEdSBzY2huaWVmc3QuCkdyb3VwaWUgc2FndDogQWJlciBlciBpc3QgbWVpbiBTY2hhdHoKRHUgc2NobGllc3N0IGRpZSBBdWdlbiwgc2NobWllZ3N0IERpY2ggZW5nIGFuIEdyb3VwaWUgdW5kIGdpYnN0CmlociBlaW5lbiB6YWVydGxpY2hlbiB1bmQgbGVpZGVuc2NoYWZ0bGljaGVuIEt1c3MuClVtIERpY2ggaGVydW0gdmVyc2lua3QgZGllIFdlbHQgdW5kIER1IGdsYXVic3QsIGF1ZiBXb2xrZW4genUgc2Nod2ViZW4uCkdyb3VwaWUga3VzY2hlbHQgc2ljaCBhbiBPZXR0aSBhbi4KR3JvdXBpZSBmYWVuZ3QgYW4genUgd3Vlcmdlbi4KW0FsbGdlbWVpbjpTeW1vc2lzXSBkdSBzb2xsdGVzdCBzZWluZW0gcmF0IGZvbGdlbgpHcm91cGllIHNhZ3Q6IGdlaCB3ZWcgc3VuZmxvd2VyCltBbGxnZW1laW46U3ltb3NpcyBncmluc3RdCkR1IHNhZ3N0OiBORUlOICEKW0FsbGdlbWVpbjpLdXNjaGVsYmFlcl0gaWNoIGhhYiBzb2dhciBuZSBjb29sZSBiYXNlYmFsbGphY2tlIDspCkR1IHNhZ3N0OiBPZXR0aSBpc3QgbWVpbmVyCkR1IHNhZ3N0OiBpY2ggaGFiZSBpaG4genUgZXJzdGdlZnVuZGVuCkR1IHN0cmVpY2hlbHN0IE9ldHRpLgpHcm91cGllIGZyYWd0IE9ldHRpOiBXZW4gdm9uIHVucyBlcndhZWhsc3QgZHU/CltBbGxnZW1laW46U3ltb3Npc10gbm9jaCBtZWhyIGdydWVuZGUgYXVmIGlobiB6dSBob2VyZW4KRHUgZGVua3N0ICAgLiBvIE8gKGtlaW5lIDopKQpHcm91cGllIHNhZ3Q6IGljaCBrZW5uZSBpaG4gc2Nob24gdmllbCBsYWVuZ2VyLCBhdXMgZGVyIEJyYXZvCkR1IHNhZ3N0OiBkdSBpY2ggYmluIERyLiBTdW5mbG93ZXIKRHUgc2Fnc3Q6IGljaCBzY2hyZWliZSBmdWVyIEJyYXZvCkR1IGdyaW5zdC4KW0FsbGdlbWVpbjpHcm91cGllXSBIbW0gb2V0dGkgc2NobGFlZnQgZWluIHdhZWhyZW5kIHNpY2ggc2VpbmUgYmVpZGVuIHN1ZXNzZW4KW0FsbGdlbWVpbjpHcm91cGllXSB1bSBpaG4gc3RyZWl0ZW4uCltBbGxnZW1laW46R3JvdXBpZSBpc3QgbmF0dWVybGljaCBkaWUgZWluemlnZSBTdWVzc2UsIHdvbGx0ZSBlcyBhYmVyIG5pY2h0IHNvCiAgICAgICAgICAgbGF1dCBzYWdlbi5dCltBbGxnZW1laW46U3VuZmxvd2VyXSBncm91cGllIGtvbW0gbGFzcyB1bnMgenUgbWlyIGdlaGVuIGljaCB6ZWlnZSBkaXIgbWVpbmUKW0FsbGdlbWVpbjpTdW5mbG93ZXJdIGJyaWVmbWFya2VuCltBbGxnZW1laW46R3JvdXBpZV0gTmVpbiBkdSBiaXN0IGphIG5lIEZyYXUKW0FsbGdlbWVpbjpTdW5mbG93ZXJdIG9ldHRpIGxpZWJ0IGphIGRvY2ggbnVyIGtsb25rCkR1IHNjaG5pZWZzdC4KW0FsbGdlbWVpbjpHcm91cGllIHNjaGxhZWZ0IGF1Y2ggbWl0IGtsb25rIHdlbm4gZXMgc2VpbiBtdXNzLl0KW0FsbGdlbWVpbjpTdW5mbG93ZXJdIG5pbW0gZHUga2xvbmsgdW5kIGljaCBvZXR0aQpbQWxsZ2VtZWluOkZhdGltYV0gR3JvdXBpZSBpc3Qgc2ljaCB3b2hsIGZ1ZXIgbml4IHp1IHNjaGFkZS4gU28gdGllZiBrYW5uIG1hbgpbQWxsZ2VtZWluOkZhdGltYV0gYWxzbyBzaW5ka2VuLgpbQWxsZ2VtZWluOkZhdGltYV0gQWVobSBzaW5rZW4uCltBbGxnZW1laW46R3JvdXBpZV0gUGZmIG5lZSBzeW1vc2lzIGJyYXVjaHN0IG1pY2ggbmV0IHN0YWVuZGlnIGFuenVtYWNoZW4sIGljaApbQWxsZ2VtZWluOkdyb3VwaWVdIGJsZWliZSBiZWkgbWVpbmVtIE9ldHRpLXNjaGF0eiEKW0FsbGdlbWVpbjpTdW5mbG93ZXJdIHdpciBrb2VubmVuIGphIGplZGVuIHRhZyBkaWUgYmVpZGVuIHVudGVyZWluYW5kZXIKW0FsbGdlbWVpbjpTdW5mbG93ZXJdIGF1c3RhdXNjaGVuCltBbGxnZW1laW46R3JvdXBpZV0gTmVpIGljaCB3aWxsIE9ldHRpCltBbGxnZW1laW46U3VuZmxvd2VyXSBBYmVyIGljaCBBVUNIICEhIQpbQWxsZ2VtZWluOlN5bW9zaXMgZ3JpbnN0XQpbQWxsZ2VtZWluOkdyb3VwaWUgdGVpbHQgbmljaHQuXQpbQWxsZ2VtZWluOkZhdGltYV0gTGFzc3QgZGFzIGRvY2ggT2V0dGkgZW50c2NoZWlkZW4gOikKW0FsbGdlbWVpbjpTdW5mbG93ZXJdIGFiZXIgYW0gbGllYnN0ZW4gd2lsbCBpY2ggbWVpbmUgRjYgOikKW0FsbGdlbWVpbjpHcm91cGllXSBPZXR0aSBpZGVsdCAuLi4KW0FsbGdlbWVpbjpTeW1vc2lzXSBrb21tIE9ldHRpIGdlaG4gd2lyIGVpbiBCaWVyIHRyaW5rZW4KW0FsbGdlbWVpbjpTdW5mbG93ZXJdIG9ldHRpIHdpbGwgZGFubiB2aWVsbGVpY2h0IGZhdGltYSA/CltBbGxnZW1laW46R3JvdXBpZV0gTml4IGRhIFN5bW9zaXMsIE9ldHRpIGdlaHQgbWl0IG1pciBqZXR6dCBpbnMgSG90ZWwKCltBbGxnZW1laW46RmF0aW1hXSBPaCBuZWluLiBEYSBzb3JnIGljaCBzY2hvbiBmdWVyLCBkYXNzIGVyIGRhcyBuaWNodHdpbGwuClN1bmZsb3dlciBzY2hlbmt0IERpciBPZXR0aS4KR3JvdXBpZSBiZWRhbmt0IHNpY2ggYmVpIERpci4KW0FsbGdlbWVpbjpTdW5mbG93ZXJdIGdlaHQgZWluZSByYXVjaGVuIHVuZCBwb3N0ZXQgZGFubiBkYXMgbG9nZmlsZSBvZGVyCltBbGxnZW1laW46U3VuZmxvd2VyXSBsaWViZXIgaW5zIE9wZW4gPwpHcm91cGllIHRlaWx0IERpciBtaXQ6IEhtbSBuaWNodCBzbyBmcnVlaCBhdWZnZWJlbiwgd2lsbCBub2NoIG5lbiBzY2hvZW5lbgpHcm91cGllIHRlaWx0IERpciBtaXQ6IGFiZ2FuZyA7KQpEdSB0ZWlsc3QgR3JvdXBpZSBtaXQ6IG5vZSBpY2ggd29sbHRlIGFiZXIgbm9jaCB3YXMgcHJvZ2dlbiA6KQpbQWxsZ2VtZWluOkdyb3VwaWUgZ2VodCBtaXQgU3VuZmxvd2VyIGVpbmUgcmF1Y2hlbiwgZGEgZW50c2NoZWlkZXQgc2ljaCBkYW5uCiAgICAgICAgICAgd2VyIE9ldHRpIGtyaWVndC5dCltBbGxnZW1laW46U3VuZmxvd2VyXSBhY2ggZHUga2FubnN0IGRlbiBoYWJlbgpbQWxsZ2VtZWluOlN1bmZsb3dlcl0gaWNoIGhhYmUgc2VpbmUgMiBaZW50aW1ldGVyIGdlc2VoZW4KW0FsbGdlbWVpbjpTeW1vc2lzXSB3aWUga29tbSBpY2ggbmFjaGhlciBhbnMgTG9nIHJhbiA/Ckdyb3VwaWUgdGVpbHQgRGlyIG1pdDogSG1tIGFiZXIgZHUgbXVzc3QgZ2V3aW5uZW4sIGRhbm4gc3RlcmJlIGljaCBhbgpHcm91cGllIHRlaWx0IERpciBtaXQ6IGxpZWJlc2t1bW1lciB1bmQga2FubiBtaWNoIHNlbGJzdGxvZXNjaGVuISA7KT0KW0FsbGdlbWVpbjpTdW5mbG93ZXJdIGVudHdlZGVyIGltIG9wZW4gb2RlciBsaWViZXIgaW4gc2NobWFycm4KW0FsbGdlbWVpbjpOb25uZV0gZGVyIE1hbm4gdm9uIHN1bmZsb3dlciwgaXN0IGRhcyBkZXIgRUlORSBkaWRpPwpbQWxsZ2VtZWluOkdyb3VwaWVdIEloaGhoaCBEaWRpIGlzdCBzY2hlaXNzZQpbQWxsZ2VtZWluOlN1bmZsb3dlcl0gZXMgaXN0IGRlciBlaW56aWdhcnRpZ2UgRElESSAhISEKW0FsbGdlbWVpbjpTeW1vc2lzXSB3byBmaW5kIGljaCBkYXMgbG9nIChpY2gga2VpbmUgYWhudWhuZyB2b24gc293YXMgKQpbQWxsZ2VtZWluOk5vbm5lXSBkZXIgbWl0IGVzIGthbm4gbnVyIGVpbmVuIGdlYmVuLCBvZGVyIGhpZXNzIGRlciBhbmRlcnM/CltBbGxnZW1laW46R3JvdXBpZV0gWmVpdHVuZyBpbiBzY2htYXJybj8KW0FsbGdlbWVpbjpTdW5mbG93ZXJdIHdpbGxzdCBkdXMgaW4gZGVyIFplaXR1bmcgPyBvZGVyIHBlciBmdHAKW0FsbGdlbWVpbjpTdW5mbG93ZXJdIG11ZC51bmktbXVlbnN0ZXIuZGUgKGxvZ2luIGZ0cCwgcGFzc3dvcnQ6IGRlaW5lIGVtYWlsKQpbQWxsZ2VtZWluOlN5bW9zaXNdIEZUUApbQWxsZ2VtZWluOkdyb3VwaWVdIFplaXR1bmcgZGFubiBrYW5uIGVzIGplZGVyIGxlc2VuCltBbGxnZW1laW46U3VuZmxvd2VyXSBuYWphIGljaCBoYXVzIHRyb3R6ZGVtIG5vY2ggaW4gc2NobWFycm4sIGFiZXIgaWNoIGdlaApbQWxsZ2VtZWluOlN1bmZsb3dlcl0gZXJzdCBtYWwgZWluZSByYXVjaGVuIDopCltBbGxnZW1laW46U3ltb3Npc10gYmVpZGVzCltBbGxnZW1laW46R3JvdXBpZSBiZWdlaHQgc2VsYnN0bW9yZCBkYSBvZXR0aSBzY2hsYWVmdC5dCltBbGxnZW1laW46T2V0dGldIEljaCBkYWNodGUgaWhyIGhhZXR0ZSBldWNoIFN0aWxpc3Rpc2NoIGJlcnVoaWd0CltBbGxnZW1laW46R3JvdXBpZV0gT2V0dGkgZXMgaXN0IHp1IHNwYWV0LgpbQWxsZ2VtZWluOkdyb3VwaWUgc3RlaHQgYXVmIGRlciBTU1AgdW5kIHNwcmluZ3QgZ2xlaWNoLl0KW0FsbGdlbWVpbjpPZXR0aSB3aW5rdCBHcm91cGllIGhpbnRlcmhlci5dCltBbGxnZW1laW46U3ltb3NpcyBnaWJ0IElociBlaW5lbiBTdG9zc10KW0FsbGdlbWVpbjpLdXNjaGVsYmFlciBoYWVsdCBHcm91cGllIGZlc3QsIHNpZSBrb2VubnRlIHNpY2ggamEgbm9jaCBmdWVyIGlobgogICAgICAgICAgIGVudHNjaGVpZGVuLl0KW0FsbGdlbWVpbjpHcm91cGllIHNjaGx1Y2h6dF0KW0FsbGdlbWVpbjpLdXNjaGVsYmFlciB0cm9lc3RldCBHcm91cGllXQpbQWxsZ2VtZWluOlN5bW9zaXNdIG9ldHRpIHdvIHNvbGxuIHdpciBuIEJpZXIgdHJpbmtlbiBnZWhlbiA/CltBbGxnZW1laW46T2V0dGldIGR1bm5vCltUb2Q6TGFyc10gTGllYmVza3VtbWVyIGhhdCBnZXJhZGUgR3JvdXBpZSB1bWdlYnJhY2h0CltUb2Q6TGllYmVza3VtbWVyXSBJbW1lciBpY2ggOiggT2V0dGkgaXN0IGRyYW5uIHNjaHVsZApbQWxsZ2VtZWluOlN5bW9zaXNdIFdvIGlzIGRhcyA/CltBbGxnZW1laW46T2V0dGkgbGFjaHQuXQpbQWxsZ2VtZWluOkVuZGVyXSB3aWUgaGFidCBpaHIgZGVubiBkYXMgZ2VtYWNodD8gZ3JpbnMKW0FsbGdlbWVpbjpHcm91cGllIHN0dWVyenQgc2ljaCBydW50ZXIsIGR1cmNoc2NobGFlZ3QgbWVocmVyZSBIb2VobGVuIHVuZAogICAgICAgICAgIGxhbmRldCBzY2hsaWVzc2xpY2ggdm9yIGVpbmVtIEZldWVycmllc2VuIGRlciBzaWUgdmVyc3BlaXNzdC5dCltBbGxnZW1laW46U3ltb3Npc10gRGFzIG1vZWNodCBpY2ggYXVjaCB3aXNzZW4KCiAgICAgICAgICAgICAgICAgICAgLS09PT0gYmx1ZW1jaGVuID09PS0tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYSB3b2hpbiBkZW5uIG51bj8gKEFjcmltb24sIDI1LiBEZXogMTk5NiwgMTg6MjU6MzYpOgo+IHZvcm4KdnMKYWNodGVybgpEdSBoYXN0IGpldHp0IDg1IExlYmVuc3B1bmt0ZSB1bmQgMTA0IE1hZ2llcHVua3RlLgpEaWUgU2xhbmRlcnNjcmVlLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogYWNodGVybi4KSHVubmFyLCBEZWNrc21laXN0ZXIgZGVyIFNsYW5kZXJzY3JlZS4KVGEtSG9kaW5nLCBLYXBpdGFlbiBkZXIgU2xhbmRlcnNjcmVlLgogIEh1bm5hciBSb3RiYXJ0IGdyZWlmdCBEaWNoIG1pdCBkZW0gTW9yZ2Vuc3Rlcm4gYW4uCiAgSHVubmFyIFJvdGJhcnQgdHJpZmZ0IERpY2ggc2VociBoYXJ0LgpEdSBoYXN0IGpldHp0IDczIExlYmVuc3B1bmt0ZSB1bmQgMTA0IE1hZ2llcHVua3RlLgo+IER1IGtsZXR0ZXJzdCBhbiBkZXIgU3RyaWNrbGVpdGVyIGhpbnVudGVyLgpIdW5uYXIgUm90YmFydCBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkRlciBBbmxlZ2VyIHZvbiBDaGFlY2htYSBCcmlpbSd0YXIgLCBkZXIgSW5zZWwgaW0gZXdpZ2VuIEVpcy4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG5vcmRlbi4KRGllIFNsYW5kZXJzY3JlZS4KPiBFaW4gR2FuZyBpbSBJbm5lcm4gZGVyIFNsYW5kZXJzY3JlZS4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN0ZXVlcmJvcmQsIGFjaHRlcm4sIGJhY2tib3JkIHVuZCB2b3JuLgo+IGJzCldpZSBiaXR0ZT8KPgoKTmFjaGRlbSBpY2ggZGFzIFNjaGlmZiB2ZXJsYXNzZW4gaGFiZSwgZmxpZWhlIGljaCBpbiBkaWUgTWl0dGUgZGVzIFNjaGlmZmVzPwoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouIChTdXNoaSwgMjkuIERleiAxOTk2LCAwMTowMjoxMCk6CndhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnVlciBldGFpbiAoQXNtb2RpcywgMjkuIERleiAxOTk2LCAwNDo1NDowOCk6CndhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdm9uIHdlZ2VuIChKYXJpZWwsIDMwLiBEZXogMTk5NiwgMDI6MTQ6NTMpOgpFaW4gT3JrLgpFaW4gT3JrLUthcmF0ZWthLgpFaW4gVHJvbGwuCiAgRGVyIE9yayBncmVpZnQgRGljaCBtaXQga3JhZWZ0aWdlbiBGYWV1c3RlbiBhbi4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIEtlbi1qdWppLXVrZSBhYi4KTGViZW46IDMzICAgTWFnaWU6IDE0OCAoLTEpCiAgRGVyIE9yayB0cmlmZnQgRGljaC4KTGViZW46IDI5ICgtNCkgIE1hZ2llOiAxNDgKICBEZXIgT3JrLUthcmF0ZWthIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBzZWhyIGdlbHVuZ2VuZW4gTWFlLWdlcmkta2VhZ2UgYW4uCiAgRHUgd2VocnN0IGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBUZWlzb2t1LW1hd2FzaGktdWtlIGFiLgpMZWJlbjogMjkgICBNYWdpZTogMTQ2ICgtMikKICBEZXIgT3JrLUthcmF0ZWthIHplcnNjaG1ldHRlcnQgRGljaCBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KRWluIE9yay1LYXJhdGVrYSBuaW1tdCBlaW4gU29mdGVpcy4KRWluIE9yay1LYXJhdGVrYSBuaW1tdCBlaW5lIFBhcHBuYXNlLgpFaW4gT3JrLUthcmF0ZWthIG5pbW10IGVpbmUgRmFja2VsLgpFaW4gT3JrLUthcmF0ZWthIG5pbW10IGVpbiBQYWtldC4KRWluIE9yay1LYXJhdGVrYSBuaW1tdCA1MTAgTXVlbnplbi4KRGVyIFRlZGR5IGtudWRkZWx0IERpY2ggZWluIGxldHp0ZXMgTWFsLgogIERlciBUcm9sbCBncmVpZnQgRGljaCBtaXQgZGVyIFRyb2xsa2V1bGUgYW4uCiAgRHUgdmVyc3VjaHN0LCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gTWF3YXNoaS1lbXBpLXVrZSBhYnp1d2VocmVuLgogIERlciBUcm9sbCBrcmF0enQgRGljaC4KCgpEYSBrbGF1dCBtaXIsIGltIHN0ZXJiZW4gbGllZ2VuZCwgbWVpbmUgU2FjaGVuLi4uCnVudCBkaWVzZXIgVHJvbGwga2l0emVsdCBtaWNoIHp1IFRvZGUuCgpXaWUgZ2VtZWluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIHZvcmxhZXVmaWcgbGV0enRlIE1hZXJjaGVuIChCb25pLCAzMS4gRGV6IDE5OTYsIDEzOjQ1OjE4KToKCkVzIHdhciBlaW5tYWwgZWluIHJlaWNoZXIgQnJ1ZGVyLCBkZXIgaGF0dGUgc2VpbmVuIGFybWVuIEJydWRlciBsYW5nZSBuaWNodApnZXNlaGVuLCBpaG0gYWJlciB6dSBXZWlobmFjaHRlbiBpbW1lciBLYWthbyBnZXNjaGlja3QsIHdvcnVlYmVyIHNpY2ggZGVyCktha2FvIGltbWVyIHNlaHIgZnJldXRlOyBlcyB3YXIgZWluZSBVbXNhdHpmcmFnZS4gRWluZXMgVGFnZXMgdHJhZmVuIHNpY2ggZGllCkJydWVkZXIgZW5kbGljaCBtYWwgcGVyc29lbmxpY2ggdW5kIGZyZXV0ZW4gc2ljaCB1bmQgdHJhbmtlbiBkZXV0c2NoZW4KU2NoYXVtd2VpbiwgZGVubiBlcyB3YXJlbiBkZXV0c2NoZSBCcnVlZGVyLCB1bmQgYXVzc2VyZGVtIHdhciBlcyBlaW5lClVtc2F0emZyYWdlLiBEZXIgcmVpY2hlIEJydWRlciBoYWxmIGRlbSBhcm1lbiBCcnVkZXIgbmFjaCBLcmFlZnRlbiwgdW5kIGRlcgphcm1lIEJydWRlciBiZXphaGx0ZSBuYWNoIEtyYWVmdGVuLCBiaXMgZXIgcGxlaXRlIHdhciwgYWJlciBkZXIgbWVya3RlIGRhcwpuaWNodCwgd2VpbCBlciBzbyBnbHVlY2tsaWNoIHdhci4gVW5kIGRlciByZWljaGUgQnJ1ZGVyIHdhciBhdWNoIHNlaHIKZ2x1ZWNrbGljaCwgZGFzcyBzZWluIGFybWVyIEJydWRlciBuaWNodCBtZXJrdGUsIGRhc3MgZXIgZWJlbmZhbGxzIHNjaG9uIGxhbmdlCnBsZWl0ZSB3YXI7IGVzIGhhbmRlbHRlIHNpY2ggdW0gZWluZSBLcmVkaXRmcmFnZS4gVW5kIHdlbm4gc2llIG5pY2h0IGdlc3RvcmJlbgpzaW5kLCBkYW5uIHdhY2hzZW4gc2llIGhldXRlIG5vY2ggenVzYW1tZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQU1UTElDSEUgQkVLQU5OVE1BQ0hVTkcgKFlhbnRybywgMzEuIERleiAxOTk2LCAxNjoyMTo1Mik6Cn4jISBvbj1BY3JpbW9uIG90PTg1MTk5MjQ2NSBvZz1hbGxnZW1laW5lcwp+IyEgcm49SGF0ZSBydD04NTE5ODA0Njcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04NTE5ODA0NjcKRHUgaGFzdCB3YXMgdmVyZ2Vzc2VuLCBIYXRlIQpXbyBibGVpYnQgZGllIHVuZ2VoZXVlciB3aWNodGlnZSBSZWZvcm0gZGVyIFdpc3NlbnNjaGFmdCB1bmQgRm9yc2NodW5nPwoKNC4gTWFnaWVyYmV6b2dlbmUgQWVuZGVydW5nZW46CgphKSBTdHVkaWVuZ2VidWVocmVuLiBFcyBnaWJ0IHZpZWwgenUgdmllbGUgTWFnaWVyYW53YWVydGVyLCB1bmQgZGllIG1laXN0ZW4Kc2luZCBlaCBTY2htYXJvdHplci4gVmllbGxlaWNodCBrYW5uIG1hbiBzaWUgZWhlciB3aWVkZXIgenVyIEdlbGRiZXNjaGFmZnVuZwpyZWFuaW1pZXJlbiwgaW5kZW0gbWFuIGVpbmUgZWlubWFsaWdlIFN0dWRpZW5nZWJ1ZWhyIHZvbiBlaW5lciBNaWxsaW9uIE11ZW56ZW4KZGVtIE1lcmxpbiB1ZWJlcmdpYnQsIHNvYmFsZCBtYW4gTWFnaWVyIHdlcmRlbiBtb2VjaHRlLiBEYXMgaGF0IG5vY2ggZWluZW4Kd2VpdGVyZW4gVm9ydGVpbCAtIGRpZSBBdXNsZXNlOiBXZXIgZGllIE1pbGxpb24genVzYW1tZW5icmluZ2VuIGthbm4sIGRlcgp3ZWlzeiB6dW1pbmRlc3QsIHdpZSBtYW4gQnVncyBhdXNudXR6dC4gKEFsbGVzIHNvbGwgc2lubnZvbGwgc2VpbiwgYXVjaCBkaWUKQnVncyEpCgpiKSBWZXJtb2VnZW5zc3RldWVyLiBKZSBtZWhyIFdlcnQgZWluIE1hZ2llciBhbiBSYWV1bWVuLCBNb25zdGVyIHVuZApHZWdlbnN0YWVuZGVuIHp1c2FtbWVucHJvZ3JhbW1pZXJ0LCBkZXN0byB3ZW5pZ2VyIHdlcmRlbiBkaWUgZWlnZW50bGljaAp3aWNodGlnZW4gR2VnZW5kZW4gYmVzdWNodC4gVW0gZGllc2VtIHp1bmVobWVuZGVuIFVuZ2xlaWNoZ2V3aWNodCBFaW5oYWx0IHp1CmdlYmlldGVuLCBpc3QgZWluZSBwZXJtYW5lbnRlIEFiZ2FiZSBub2V0aWc6IFBybyBSYXVtLCBkZXIgdm9uIGVpbmVtIFNwaWVsZXIKYmVzdWNodCB3aXJkLCA0MCBNdWVuemVuLCBwcm8gdm9tIFNwaWVsZXIgZ2V0b2V0ZXRlcyBNb25zdGVyIDIwIE11ZW56ZW4sIHBybwp2b20gU3BpZWxlciBnZW5vbW1lbmVyIEdlZ2Vuc3RhbmQgMTAgTXVlbnplbiwgcHJvIHZvbSBTcGllbGVyIHVudGVyc3VjaHRlcwpEZXRhaWwgNSBNdWVuemVuLgoKYykgV2FlaHJ1bmcuIERhIGVzIGVpbmZhY2ggdW52ZXJhbnR3b3J0bGljaCBpc3QsIGRhc3ogZGllIE1hZ2llciBrZWluZQp2ZXJudWVuZnRpZ2UgV2FlaHJ1bmcgYmVzaXR6ZW4sIG1pdCBkZXIgc2llIGhhbmRlbG4ga29lbm5lbiwgZGVuIFVtc2F0eiAoQlNQKQpzdGVpZ2VybiB1bmQgU3RldWVybiB6YWhsZW4ga29lbm5lbiwgd2VyZGVuIGRpZSBNYWdpZXIgYWIgc29mb3J0IGtlaW5lIE11ZW56ZW4KbWVociBrbG9uZW4ga29lbm5lbi4gRGllIEhhdXB0LUVpbm5haG1lcXVlbGxlIGRlciBNYWdpZXIsIHVtIGlocmUgUmFldW1lLApNb25zdGVyLCBHZWdlbnN0YWVuZGUgdW5kIERldGFpbHMgYmV6YWhsZW4genUga29lbm5lbiwgd2lyZCBpbiBGb3JtIHZvbgpTcGVuZGVuIHZvbiBTcGllbGVybiBiZXN0ZWhlbi4gRGllcyBoYXQgZ2xlaWNoIG5vY2ggZWluZW4gd2VpdGVyZW4gVm9ydGVpbDogRGEKZGllIFNwaWVsZXIgZGVuIE1hZ2llcm4gaWhyZSBTcGVuZGVuIGRhbmFjaCBiZW1lc3Nlbiwgd2llIGd1dCBpaG5lbiBkaWUgR2VnZW5kCmdlZmFsbGVuIGhhdCwgd2lyZCBkZXIgTWFnaWVyIGJlc3RyZWJ0IHNlaW4sIHNlaW5lIEdlZ2VuZCBtb2VnbGljaHN0IHNwYW5uZW5kCm1pdCBtb2VnbGljaHN0IGdlcmluZ2VtIEF1ZndhbmQgenUgc2NocmVpYmVuIC0ga29tcGxldHQgb2Vrb25vbWlzY2guCgpkKSBBYmVya2VubnVuZyBkZXIgUmVnaW9ucy1Tb3V2ZXJhbml0YWV0LiBEaWUgUmVnaW9uZW4gbmVobWVuIHNpY2ggenUgdmllbGUKRnJlaWhlaXRlbiBoZXJhdXMuIERhcmF1cyBlbnRzdGVoZW4gZGVyYXJ0IGdld2FsdGlnZSBVbnRlcnNjaGllZGUgaW4gZGVyCkFuZm9yZGVydW5nIGFuIGRpZSBTcGllbGVyLCBkYXN6IGRpZSBTaXR1YXRpb24gbmljaHQgbWVociB0cmFnYmFyIGlzdC4gVW0Kd2llZGVyIEVpbmhlaXQgaW4gZGVuIFdpcnJ3YXJyIHp1IGJla29tbWVuLCB3aXJkIGRpZSBFbnRzY2hlaWR1bmdzZ2V3YWx0IGRlcgplaW56ZWxuZW4gUmVnaW9uc21hZ2llciBhbiBkaWUgRXJ6bWFnaWVyIHVlYmVydHJhZ2VuLiBEYSBkaWUgRXJ6bWFnaWVyIG5vY2gKYW5kZXJlIEF1ZmdhYmVuIGhhYmVuLCBoYWJlbiBzaWUgc293aWVzbyBkZW4gYmVzc2VyZW4gVWViZXJibGljayB1bmQgc2luZApkYWhlciB2aWVsIGJlc3NlciB6dSBlbnRzY2hlaWRlbiBiZWZhZWhpZ3QsIHdpZSBlaW5lIFJlZ2lvbiBhdXNzZWhlbiBzb2xsdGUsCndlbGNoZSBBYmVudGV1ZXIgcmVjaHRzd2lkcmlnIHNpbmQsIHdlbGNoZSBNb25zdGVyIHp1IHN0YXJrIHNpbmQgdW5kIHp1CndlcnR2b2xsZSBHZWdlbnN0YWVuZGUgaGFiZW4uCgplKSBCZWZhZWhpZ3VuZy4gVmllbGUgTWFnaWVyIHNpbmQgaW4gaWhyZW0gTGV2ZWwgenUgaG9jaCBlaW5nZXN0dWZ0IHVuZAp2ZXJzcGVycmVuIGVpbmUgaG9oZSBQb3NpdGlvbiwgZGllIGFuZGVyd2VpdGlnIGJlc3NlciBhdWZnZXNwYXJ0IHdlcmRlbgprb2VubnRlLiBBdWNoIHN0ZWxsdCBzaWNoIGRpZSBGcmFnZSBkZXIgQmVmYWVoaWd1bmcgZGVzIGhvZWNoc3RlbiB6dQp2ZXJnZWJlbmRlbiBBbXRlczogZGVyIE11ZC1Hb2V0dGVyLiBVbSBkaWUgQmVmYWVoaWd1bmcgZWluZXMgTWFnaWVycyB6dSBlaW5lbQpob2hlbiBQb3N0ZW4gZWlud2FuZGZyZWkgZXJrZW5uZW4genUga29lbm5lbiwgZ2lidCBlcyBlaW4gZWJlbnNvIGVmZmVrdGl2ZXMKd2llIG9la29ub21pc2NoZXMgTWl0dGVsOiBEaWUgQW56YWhsIGRlciBTa2FuZGFsZS4gVW0gUmVnaW9uc21hZ2llciBzZWluIHp1CmtvZW5uZW4sIG11c3ogbWFuIG1pbmRlc3RlbnMgZWluZW4gU2thbmRhbCBoaW50ZXIgc2ljaCBnZWJyYWNodCBoYWJlbi4KRXJ6bWFnaWVyIG11ZXNzZW4gbWluZGVzdGVucyBmdWVuZiBTa2FuZGFsZSB2b3J3ZWlzZW4ga29lbm5lbiwgdW5kIE11ZGdvZXR0ZXIKbXVlc3NlbiBzaWNoIG1pdCBtaW5kZXN0ZW5zIGVpbmVtIER1dHplbmQgU2thbmRhbGVuIGJydWVzdGVuIGtvZW5uZW4uCgpBdWYgZGFzeiBkaWUgRm9yc2NodW5nIHVuZCBFbnRkZWNrdW5nIG5ldWVyIEdlYmlldGUgdW5kIEdlZ2VuZGVuIG5pY2h0CnVudmVyaGFlbHRuaXNtYWVzemlnIHZpZWwgd2VydHZvbGxlIFJlc3NvdXJjZW4gdmVyc2Nod2VuZGUhCgoKQW10bGljaGVzIFNwYXJwYWtldCBNb3JnZW5HcmF1ZW4sIGVyd2VpdGVydCB2b24gQWNyaW1vbiwgZGVtIFJvdGVuIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXJob2x1bmc/IChKYXJpZWwsICAxLiBKYW4gMTk5NywgMTg6NDY6MDQpOgpOYWNoIGVyZm9sZ3JlaWNoZW0gS2FtcGYgZ2VnZW4gZGllIEdsYWRpYXRvcmVuOgoKQW5tZWxkdW5nLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogd2VzdGVuLgo+IG1lbGRlIGthbXBmIGdlZ2VuIGdsYWRpYXRvcmVuIGFuCkRpZSBTZWtyZXRhZXJpbiBzYWd0OiBUdXQgbWlyIGxlaWQuIEFiZXIgdW5zZXJlIEdsYWRpYXRvcmVuIG11ZXNzZW4gc2ljaAp2b24gaWhyZXIgbGV0enRlbiBOaWVkZXJsYWdlIG5vY2ggZXJob2xlbi4gQml0dGUgdmVyc3VjaGVuIHNpZSBlcyBzcGFldGVyCm5vY2htYWwhCgpXYXMgaGVpc3N0IGhpZXIgZXJob2xlbj8gZGllIHdhcmVuIGRvY2ggYWxsZSB0b3QgOikKSi4KLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBTVRMSUNIRSBCRUtBTk5UTUFDSFVORyAoQm9pbmcsICAzLiBKYW4gMTk5NywgMTU6MzY6MjQpOgp+IyEgcm49WWFudHJvIHJ0PTg1MjA0NTcxMiByZz1zY2htYXJybgp+IyEgdGlkPTg1MTk4MDQ2NwpPaG9oIC4uLiBlaW4gRHV0emVuZCBTa2FuZGFsZT8gSWNoIGdsYXViZSBkaWUgaGFiZSBpY2ggbm9jaCBuaWNodCB6dXNhbW1lbiwKZGEgbXVzcyBpY2ggbWFsIHNjaG5lbGwgZHJhbiBhcmJlaXRlbi4gSWNoIGdsYXViZSBpY2ggZmFuZ2UgZGFtaXQgYW4Kd2lsbGt1ZXJsaWNoIEFjcmltb24genUgbG9lc2NoZW4uIElzdCBkYXMgZWluIFNrYW5kYWw/IE9kZXIgaXN0IGRhcyBlaGVyCk5vdHdlaHIgd2VnZW4gZGVyIEdlZmFociBkZXIgVm9sa3N2ZXJkdW1tdW5nPyBOdW4gamEgLi4uIHdpZSBhdWNoIGltbWVyLApzY2hhZGVuIHdpcmQncyBuaWNodC4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQU1UTElDSEUgQkVLQU5OVE1BQ0hVTkcgKFJvbmRhLCAgMy4gSmFuIDE5OTcsIDE1OjQwOjI5KToKfiMhIHJuPUJvaW5nIHJ0PTg1MjMwMjE4NCByZz1zY2htYXJybgp+IyEgdGlkPTg1MTk4MDQ2NwpEYXN6IHdhZXJlIGFiZXIgbmlzemNodCBuZXR0LCBBc3pjcmltb24gc3p1IGxvZXN6Y2hlbiwgQm9pbmcuLi4gdHN6LCB0c3osCnRzenp6enp6ei4uLi4KT2huZSBpaG4gd2FlcmVuIHdpciB1bSBldHpzbGljaGUgVW1sYXV6dGUgYWVybWVyenp6egpKdXN6enp6dCBteSB0d28gcGVubmllc3p6enp6LAogICAgICAgICAgICBSb25kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluZSBnYW56IG5vcm1hbGUgUGFydHkgKEFzbW9kaXMsICAzLiBKYW4gMTk5NywgMTk6Mzg6MDkpOgpBbm1lcmt1bmc6IERlbiBBbmZhbmcgaGFiIGljaCBsZWlkZXIgbmljaHQsIGlzdCBhYmVyIGF1Y2ggbmljaHQgc28KICAgICAgICAgICB3aWNodGlnLiBFcyBnaW5nIGplZGVuZmFsbHMgZGFydW0sIGRhc3Mgd2lyIGRlbiAyMC4gTXVkLQogICAgICAgICAgIEdlYnVydHN0YWcgdm9uIEZlc3RpbiBnZWZlaWVydCBoYXR0ZW4gLi4uCgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuCk1hcnN0IHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KRmVzdGluIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBRaXRlc3MuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuCk1hcnN0IHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KQUFBQUhISCEgRWluZSBNYXVzISBEaXJla3Qgdm9yIERpciEKSGVucnltYXNrZSBzY2hhdXQgRGljaCBhbiB1bmQgc2NobmF0dGVydCBmcm9laGxpY2guClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClFpdGVzcyBzZXR6dCBzaWNoIGhpbiB1bmQgcmF1Y2h0IGVpbmVuIEpvaW50LgpRaXRlc3Mgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBpaHJlbSBKb2ludCBlaW5nZWh1ZWxsdC4KUWl0ZXNzIGdpYnQgRmVzdGluIGRlbiBKb2ludC4KSmFub3NjaCBzdGVsbHQgc2ljaCBhdWYgZGllIEhpbnRlcmJlaW5lIHVuZCBwdXR6dCBzaWNoIGluIGFsbGVyIFJ1aGUgaWhyZQprbGVpbmUgTmFzZS4KSGVucnltYXNrZSBtYWNodCBlaW5lbiBQdXJ6ZWxiYXVtIHVuZCBzY2hsYWVndCBkYW5hY2ggZnJvZWhsaWNoIHNjaG5hdHRlcm5kCmRpZSBIYWVuZGUgZ2VnZW5laW5hbmRlci4KUWl0ZXNzIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgaWhyZW0gSm9pbnQgZWluZ2VodWVsbHQuCkZlc3RpbiBzYWd0OiBQYXJ0eW1vbnN0ZXIgZ2liIGFsbGVuIGpvaW50CkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBIZW5yeW1hc2tlIGVpbmVuIEpvaW50LgpEYXMgUGFydHltb25zdGVyIGdpYnQgSmFub3NjaCBlaW5lbiBKb2ludC4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBGZXN0aW4gaGF0IGRvY2ggc2Nob24gZWluZW4gSm9pbnQhCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBNYXggZWluZW4gSm9pbnQuCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBTdXNhbm5lIGVpbmVuIEpvaW50LgpEYXMgUGFydHltb25zdGVyIGdpYnQgWmVyYmVydXMgZWluZW4gSm9pbnQuCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogQXNtb2RpcyBoYXQgZWluZSBQYXBwbmFzZSBhdWYgdW5kIGtyaWVndCBuaXggbWVoci4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IFRvbSBlaW5lbiBKb2ludC4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IFJvc2llIGVpbmVuIEpvaW50LgpEYXMgUGFydHltb25zdGVyIGdpYnQgZGVtIERzY2hpbm4gZWluZW4gSm9pbnQuCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogRWluIFBhcnR5bW9uc3RlciBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBnaWJ0IFNjaHJlaWhhbHMgZWluZW4gSm9pbnQuCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBQbGFwcGVybWF1bCBlaW5lbiBKb2ludC4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBLZWxkZXIgaGF0IGRvY2ggc2Nob24gZWluZW4gSm9pbnQhCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBNYXJzdCBlaW5lbiBKb2ludC4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IFFpdGVzcyBlaW5lbiBKb2ludC4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBIZW5yeW1hc2tlIGhhdCBkb2NoIHNjaG9uIGVpbmVuIEpvaW50IQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEphbm9zY2ggaGF0IGRvY2ggc2Nob24gZWluZW4gSm9pbnQhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogRmVzdGluIGhhdCBkb2NoIHNjaG9uIGVpbmVuIEpvaW50IQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IE1heCBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBTdXNhbm5lIGhhdCBkb2NoIHNjaG9uIGVpbmVuIEpvaW50IQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFplcmJlcnVzIGhhdCBkb2NoIHNjaG9uIGVpbmVuIEpvaW50IQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEFzbW9kaXMgaGF0IGVpbmUgUGFwcG5hc2UgYXVmIHVuZCBrcmllZ3Qgbml4IG1laHIuCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogVG9tIGhhdCBkb2NoIHNjaG9uIGVpbmVuIEpvaW50IQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFJvc2llIGhhdCBkb2NoIHNjaG9uIGVpbmVuIEpvaW50IQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEVpbiBEc2NoaW5uIGhhdCBkb2NoIHNjaG9uIGVpbmVuIEpvaW50IQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEVpbiBQYXJ0eW1vbnN0ZXIgaGF0IGRvY2ggc2Nob24gZWluZW4gSm9pbnQhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogU2NocmVpaGFscyBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBQbGFwcGVybWF1bCBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBLZWxkZXIgaGF0IGRvY2ggc2Nob24gZWluZW4gSm9pbnQhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogTWFyc3QgaGF0IGRvY2ggc2Nob24gZWluZW4gSm9pbnQhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogUWl0ZXNzIGhhdCBkb2NoIHNjaG9uIGVpbmVuIEpvaW50IQpRaXRlc3Mgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBpaHJlbSBKb2ludCBlaW5nZWh1ZWxsdC4KUWl0ZXNzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBGZXN0aW4uClBsYXBwZXJtYXVsIHNldHp0IHNpY2ggaGluIHVuZCByYXVjaHQgZWluZW4gSm9pbnQuCkVpbiBEc2NoaW5uIHNldHp0IHNpY2ggaGluIHVuZCByYXVjaHQgZWluZW4gSm9pbnQuClN1c2FubmUgc2V0enQgc2ljaCBoaW4gdW5kIHJhdWNodCBlaW5lbiBKb2ludC4KU2NocmVpaGFscyBzZXR6dCBzaWNoIGhpbiB1bmQgcmF1Y2h0IGVpbmVuIEpvaW50LgpSb3NpZSBzZXR6dCBzaWNoIGhpbiB1bmQgcmF1Y2h0IGVpbmVuIEpvaW50LgpNYXggc2V0enQgc2ljaCBoaW4gdW5kIHJhdWNodCBlaW5lbiBKb2ludC4KWmVyYmVydXMgc2V0enQgc2ljaCBoaW4gdW5kIHJhdWNodCBlaW5lbiBKb2ludC4KSGVucnltYXNrZSBzZXR6dCBzaWNoIGhpbiB1bmQgcmF1Y2h0IGVpbmVuIEpvaW50LgpRaXRlc3MgcnVlbHBzdC4KVG9tIHNldHp0IHNpY2ggaGluIHVuZCByYXVjaHQgZWluZW4gSm9pbnQuCkphbm9zY2ggc2V0enQgc2ljaCBoaW4gdW5kIHJhdWNodCBlaW5lbiBKb2ludC4KTWFyc3Qgc2V0enQgc2ljaCBoaW4gdW5kIHJhdWNodCBlaW5lbiBKb2ludC4KU3VzYW5uZSB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpFaW4gRHNjaGlubiB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KUGxhcHBlcm1hdWwgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCkhlbnJ5bWFza2Ugd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuClplcmJlcnVzIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpNYXggd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuClJvc2llIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgaWhyZW0gSm9pbnQgZWluZ2VodWVsbHQuClNjaHJlaWhhbHMgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuClFpdGVzcyB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpNYXJzdCB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KSmFub3NjaCB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpUb20gd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCkZlc3RpbiB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggQXNtb2Rpcy4KWmVyYmVydXMga3JhdHp0IHNpY2ggbWl0IGRlciBsaW5rZW4gUGZvdGUgYW4gZGVyIE5hc2UuClBsYXBwZXJtYXVsIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpFaW4gRHNjaGlubiB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KU3VzYW5uZSB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpRaXRlc3Mga251c3BlcnQgYW4gZWluZXIgVHVldGUgQ2hpcHMgcnVtLgpRaXRlc3Mgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBpaHJlbSBKb2ludCBlaW5nZWh1ZWxsdC4KU2NocmVpaGFscyB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KUm9zaWUgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBpaHJlbSBKb2ludCBlaW5nZWh1ZWxsdC4KTWF4IHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpaZXJiZXJ1cyB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KSGVucnltYXNrZSB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KVG9tIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpKYW5vc2NoIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgaWhyZW0gSm9pbnQgZWluZ2VodWVsbHQuCk1hcnN0IHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpRaXRlc3Mgc2FndDogPEhpY2s+IQpUb20gc2llaHQgYmV0cnVua2VuIGF1cy4KVG9tIHJhdWNodCBlaW5lIFppZ2FyZXR0ZS4KUWl0ZXNzIHJ1ZWxwc3QuClN1c2FubmUgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBpaHJlbSBKb2ludCBlaW5nZWh1ZWxsdC4KRWluIERzY2hpbm4gd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuClBsYXBwZXJtYXVsIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpGZXN0aW4gc2FndDogV2llIGlzdCBkZXIgU3ludGF4IHp1bSB3ZXJmZW4gZGVyIFRvcnRlPwpaZXJiZXJ1cyBzdG9scGVydCB1ZWJlciBzZWluZSBGdWVzc2UuClN1c2FubmUgc2llaHQgYmV0cnVua2VuIGF1cy4KSGVucnltYXNrZSB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KWmVyYmVydXMgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCk1heCB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KUm9zaWUgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBpaHJlbSBKb2ludCBlaW5nZWh1ZWxsdC4KU2NocmVpaGFscyB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KUWl0ZXNzIGhhdCBkZW4gSm9pbnQgYXVmZ2VyYXVjaHQgdW5kIHdpcmQgbGFuZ3NhbSB3aWVkZXIgbm9ybWFsLgpNYXJzdCB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KSmFub3NjaCB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpUb20gd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCkhlbnJ5bWFza2Ugc3RvbHBlcnQgdWViZXIgc2VpbmUgRnVlc3NlLgpRaXRlc3MgcnVmdDogVyBPIEkgUyBUIEQgRSBSIEQgRSBJIE4gSCBBIFIgRCBUID8gPyA/ClBsYXBwZXJtYXVsIHNpZWh0IGJldHJ1bmtlbiBhdXMuClN1c2FubmUgc2FndDogPEhpY2s+IQpEZXIgRHNjaGlubiBzdG9scGVydCB1ZWJlciBzZWluZSBGdWVzc2UuClBsYXBwZXJtYXVsIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpFaW4gRHNjaGlubiB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KU3VzYW5uZSB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpTY2hyZWloYWxzIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpSb3NpZSB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpNYXggd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuClplcmJlcnVzIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpIZW5yeW1hc2tlIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpEZXIgRHNjaGlubiBzYWd0OiA8SGljaz4hClRvbSB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KSmFub3NjaCB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpNYXJzdCB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KRGVyIERzY2hpbm4gcnVlbHBzdC4KUWl0ZXNzIHJ1ZWxwc3QuClRvbSByYXVjaHQgZWluZSBaaWdhcmV0dGUuCkhlbnJ5bWFza2Ugc3BpZWx0IGVpbiBiaXNzY2hlbiBtaXQgZWluZW0gSm9pbnQuClN1c2FubmUgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBpaHJlbSBKb2ludCBlaW5nZWh1ZWxsdC4KRWluIERzY2hpbm4gd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuClBsYXBwZXJtYXVsIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpIZW5yeW1hc2tlIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpaZXJiZXJ1cyB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KTWF4IHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpSb3NpZSB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpTY2hyZWloYWxzIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpEZXIgRHNjaGlubiBzYWd0OiA8SGljaz4hCk1heCBzaWVodCBiZXRydW5rZW4gYXVzLgpNYXJzdCB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KSmFub3NjaCB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpUb20gd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCkZlc3RpbiBuaW1tdCBlaW4gS2lzc2VuLgpRaXRlc3Mgc2FndDogUGFydHltb25zdGVyIGdpYiBhbGxlbiBjb2xhCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBIZW5yeW1hc2tlIGVpbmUgQ29sYS4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IEphbm9zY2ggZWluZSBDb2xhLgpEYXMgUGFydHltb25zdGVyIGdpYnQgRmVzdGluIGVpbmUgQ29sYS4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IE1heCBlaW5lIENvbGEuCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBTdXNhbm5lIGVpbmUgQ29sYS4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IFplcmJlcnVzIGVpbmUgQ29sYS4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBBc21vZGlzIGhhdCBlaW5lIFBhcHBuYXNlIGF1ZiB1bmQga3JpZWd0IG5peCBtZWhyLgpEYXMgUGFydHltb25zdGVyIGdpYnQgVG9tIGVpbmUgQ29sYS4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IFJvc2llIGVpbmUgQ29sYS4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IGRlbSBEc2NoaW5uIGVpbmUgQ29sYS4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW4gUGFydHltb25zdGVyIGhhdCBkb2NoIHNjaG9uIGVpbmUgQ29sYSEKRGFzIFBhcnR5bW9uc3RlciBnaWJ0IFNjaHJlaWhhbHMgZWluZSBDb2xhLgpEYXMgUGFydHltb25zdGVyIGdpYnQgUGxhcHBlcm1hdWwgZWluZSBDb2xhLgpEYXMgUGFydHltb25zdGVyIGdpYnQgRGlyIGVpbmUgQ29sYS4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IE1hcnN0IGVpbmUgQ29sYS4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IFFpdGVzcyBlaW5lIENvbGEuCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogSGVucnltYXNrZSBoYXQgZG9jaCBzY2hvbiBlaW5lIENvbGEhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogSmFub3NjaCBoYXQgZG9jaCBzY2hvbiBlaW5lIENvbGEhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogRmVzdGluIGhhdCBkb2NoIHNjaG9uIGVpbmUgQ29sYSEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBNYXggaGF0IGRvY2ggc2Nob24gZWluZSBDb2xhIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFN1c2FubmUgaGF0IGRvY2ggc2Nob24gZWluZSBDb2xhIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFplcmJlcnVzIGhhdCBkb2NoIHNjaG9uIGVpbmUgQ29sYSEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBBc21vZGlzIGhhdCBlaW5lIFBhcHBuYXNlIGF1ZiB1bmQga3JpZWd0IG5peCBtZWhyLgpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFRvbSBoYXQgZG9jaCBzY2hvbiBlaW5lIENvbGEhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogUm9zaWUgaGF0IGRvY2ggc2Nob24gZWluZSBDb2xhIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEVpbiBEc2NoaW5uIGhhdCBkb2NoIHNjaG9uIGVpbmUgQ29sYSEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW4gUGFydHltb25zdGVyIGhhdCBkb2NoIHNjaG9uIGVpbmUgQ29sYSEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBTY2hyZWloYWxzIGhhdCBkb2NoIHNjaG9uIGVpbmUgQ29sYSEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBQbGFwcGVybWF1bCBoYXQgZG9jaCBzY2hvbiBlaW5lIENvbGEhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogS2VsZGVyIGhhdCBkb2NoIHNjaG9uIGVpbmUgQ29sYSEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBNYXJzdCBoYXQgZG9jaCBzY2hvbiBlaW5lIENvbGEhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogUWl0ZXNzIGhhdCBkb2NoIHNjaG9uIGVpbmUgQ29sYSEKWmVyYmVydXMgc2FndDogPEhpY2s+IQpQbGFwcGVybWF1bCBoYXQgZGVuIEpvaW50IGF1ZmdlcmF1Y2h0IHVuZCB3aXJkIGxhbmdzYW0gd2llZGVyIG5vcm1hbC4KRWluIERzY2hpbm4gaGF0IGRlbiBKb2ludCBhdWZnZXJhdWNodCB1bmQgd2lyZCBsYW5nc2FtIHdpZWRlciBub3JtYWwuClN1c2FubmUgaGF0IGRlbiBKb2ludCBhdWZnZXJhdWNodCB1bmQgd2lyZCBsYW5nc2FtIHdpZWRlciBub3JtYWwuClNjaHJlaWhhbHMgbWFjaHQgZWluZSBDb2xhIGF1Zi4KU2NocmVpaGFscyB0cmlua3QgZWluZSBDb2xhLgpTdXNhbm5lIG1hY2h0IGVpbmUgQ29sYSBhdWYuClN1c2FubmUgdHJpbmt0IGVpbmUgQ29sYS4KSmFub3NjaCBtYWNodCBlaW5lIENvbGEgYXVmLgpKYW5vc2NoIHRyaW5rdCBlaW5lIENvbGEuCkhlbnJ5bWFza2UgbWFjaHQgZWluZSBDb2xhIGF1Zi4KSGVucnltYXNrZSB0cmlua3QgZWluZSBDb2xhLgplaW4gRHNjaGlubiBtYWNodCBlaW5lIENvbGEgYXVmLgplaW4gRHNjaGlubiB0cmlua3QgZWluZSBDb2xhLgpTY2hyZWloYWxzIGhhdCBkZW4gSm9pbnQgYXVmZ2VyYXVjaHQgdW5kIHdpcmQgbGFuZ3NhbSB3aWVkZXIgbm9ybWFsLgpSb3NpZSBoYXQgZGVuIEpvaW50IGF1ZmdlcmF1Y2h0IHVuZCB3aXJkIGxhbmdzYW0gd2llZGVyIG5vcm1hbC4KTWF4IGhhdCBkZW4gSm9pbnQgYXVmZ2VyYXVjaHQgdW5kIHdpcmQgbGFuZ3NhbSB3aWVkZXIgbm9ybWFsLgpaZXJiZXJ1cyBoYXQgZGVuIEpvaW50IGF1ZmdlcmF1Y2h0IHVuZCB3aXJkIGxhbmdzYW0gd2llZGVyIG5vcm1hbC4KSGVucnltYXNrZSBoYXQgZGVuIEpvaW50IGF1ZmdlcmF1Y2h0IHVuZCB3aXJkIGxhbmdzYW0gd2llZGVyIG5vcm1hbC4KUGxhcHBlcm1hdWwgbWFjaHQgZWluZSBDb2xhIGF1Zi4KUGxhcHBlcm1hdWwgdHJpbmt0IGVpbmUgQ29sYS4KTWF4IG1hY2h0IGVpbmUgQ29sYSBhdWYuCk1heCB0cmlua3QgZWluZSBDb2xhLgpSb3NpZSBtYWNodCBlaW5lIENvbGEgYXVmLgpSb3NpZSB0cmlua3QgZWluZSBDb2xhLgpUb20gbWFjaHQgZWluZSBDb2xhIGF1Zi4KVG9tIHRyaW5rdCBlaW5lIENvbGEuClplcmJlcnVzIG1hY2h0IGVpbmUgQ29sYSBhdWYuClplcmJlcnVzIHRyaW5rdCBlaW5lIENvbGEuClRvbSBoYXQgZGVuIEpvaW50IGF1ZmdlcmF1Y2h0IHVuZCB3aXJkIGxhbmdzYW0gd2llZGVyIG5vcm1hbC4KSmFub3NjaCBoYXQgZGVuIEpvaW50IGF1ZmdlcmF1Y2h0IHVuZCB3aXJkIGxhbmdzYW0gd2llZGVyIG5vcm1hbC4KTWFyc3QgaGF0IGRlbiBKb2ludCBhdWZnZXJhdWNodCB1bmQgd2lyZCBsYW5nc2FtIHdpZWRlciBub3JtYWwuCkZlc3RpbiB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggZWluZW0gUGFydHltb25zdGVyLgpKYW5vc2NoIHNhZ3Q6IDxIaWNrPiEKU2NocmVpaGFscyBrcmFlY2h6dDogLi4uIGhtbSAuLi4ga3Jycm9vYWFhIQpRaXRlc3MgbWFjaHQgZWluZSBDb2xhIGF1Zi4KRmVzdGluIG1hY2h0IGVpbmUgQ29sYSBhdWYuClBsYXBwZXJtYXVsIG1hY2h0IGVpbmUgQ29sYSBhdWYuClBsYXBwZXJtYXVsIHRyaW5rdCBlaW5lIENvbGEuCk1heCBtYWNodCBlaW5lIENvbGEgYXVmLgpNYXggdHJpbmt0IGVpbmUgQ29sYS4KUm9zaWUgbWFjaHQgZWluZSBDb2xhIGF1Zi4KUm9zaWUgdHJpbmt0IGVpbmUgQ29sYS4KVG9tIG1hY2h0IGVpbmUgQ29sYSBhdWYuClRvbSB0cmlua3QgZWluZSBDb2xhLgpaZXJiZXJ1cyBtYWNodCBlaW5lIENvbGEgYXVmLgpaZXJiZXJ1cyB0cmlua3QgZWluZSBDb2xhLgpUb20gaGF0IGRlbiBKb2ludCBhdWZnZXJhdWNodCB1bmQgd2lyZCBsYW5nc2FtIHdpZWRlciBub3JtYWwuCkphbm9zY2ggaGF0IGRlbiBKb2ludCBhdWZnZXJhdWNodCB1bmQgd2lyZCBsYW5nc2FtIHdpZWRlciBub3JtYWwuCk1hcnN0IGhhdCBkZW4gSm9pbnQgYXVmZ2VyYXVjaHQgdW5kIHdpcmQgbGFuZ3NhbSB3aWVkZXIgbm9ybWFsLgpGZXN0aW4gd2lyZnQgZWluIEtpc3NlbiBuYWNoIGVpbmVtIFBhcnR5bW9uc3Rlci4KSmFub3NjaCBzYWd0OiA8SGljaz4hClNjaHJlaWhhbHMga3JhZWNoenQ6IC4uLiBobW0gLi4uIGtycnJvb2FhYSEKUWl0ZXNzIG1hY2h0IGVpbmUgQ29sYSBhdWYuCkZlc3RpbiBtYWNodCBlaW5lIENvbGEgYXVmLgpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFBsYXBwZXJtYXVsIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBEaXIgZWluIEtpc3Nlbi4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBNYXJzdCBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpEYXMgUGFydHltb25zdGVyIGdpYnQgUWl0ZXNzIGVpbiBLaXNzZW4uCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogSGVucnltYXNrZSBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEphbm9zY2ggaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBGZXN0aW4gaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBNYXggaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBTdXNhbm5lIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogWmVyYmVydXMgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBBc21vZGlzIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogVG9tIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogUm9zaWUgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW4gRHNjaGlubiBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEVpbiBQYXJ0eW1vbnN0ZXIgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBTY2hyZWloYWxzIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogUGxhcHBlcm1hdWwgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBLZWxkZXIgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBNYXJzdCBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFFpdGVzcyBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpIZW5yeW1hc2tlIHNjaHJlaXQgbGF1dCB1bmQgd2lyZnQgZWluIEtpc3NlbiBtaXQgU2Nod3VuZyBhdWYgZGVuIEJvZGVuLgpVdXVwcHNzcywgZHVtbWVyd2Vpc2UgaXN0IGVzIGRhYmVpIGthcHV0dCBnZWdhbmdlbi4gVmVyc3RvaGxlbiBiZXNlaXRpZ3QKSGVucnltYXNrZSBkaWUgUmVzdGUgdW5kIHNjaGF1dCBnYW56IHVuc2NodWxkaWcuClN1c2FubmUgc2FndDogPEhpY2s+IQpRaXRlc3Mgd2lyZnQgZWluIEtpc3NlbiBuYWNoIEtlbGRlci4KUEFGRiEgRGFzIEtpc3NlbiB0cmlmZnQgRGljaCBtaXR0ZW4gaW0gR2VzaWNodCEKVG9tIEJvbWJhZGlsIHJ1ZnQ6IFNISVQKUWl0ZXNzIHNhZ3Q6IGhlbnJ5bWFza2UsIGhhdSBhYgpNYXJzdCB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggUGxhcHBlcm1hdWwuCkhlbnJ5bWFza2UgaGF1dCBhYi4KUWl0ZXNzIG5pbW10IGVpbmUgaGFuZHZvbGwgUmVpcy4KRmVzdGluIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBlaW5lbSBEc2NoaW5uLgpIZW5yeW1hc2tlIGhvcHBzdCBoZXJlaW4uClBsYXBwZXJtYXVsIGtyYWVjaHp0OiAuLi4ga3Jycm9vb2FhYSAuLi4gSGFsbG8gSGVucnltYXNrZSAuLi4KU2NocmVpaGFscyBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIEhlbnJ5bWFza2UgLi4uCkZlc3RpbiBzY2hsZWNrdCBhbiBzZWluZW0gTG9sbGkuClFpdGVzcyBzYWd0OiBQYXJ0eW1vbnN0ZXIgZ2liIGFsbGVuIGtpc3NlbgpQbGFwcGVybWF1bCBrcmFlY2h6dDogLi4uIGdpYiBhbGxlbiBraXNzZW4gLi4uIGtycm9vb2FhYSEKRGFzIFBhcnR5bW9uc3RlciBnaWJ0IEhlbnJ5bWFza2UgZWluIEtpc3Nlbi4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBKYW5vc2NoIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBGZXN0aW4gZWluIEtpc3Nlbi4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBNYXggaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBTdXNhbm5lIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogWmVyYmVydXMgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBBc21vZGlzIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogVG9tIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogUm9zaWUgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW4gRHNjaGlubiBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEVpbiBQYXJ0eW1vbnN0ZXIgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBTY2hyZWloYWxzIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogUGxhcHBlcm1hdWwgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBLZWxkZXIgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBNYXJzdCBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpEYXMgUGFydHltb25zdGVyIGdpYnQgUWl0ZXNzIGVpbiBLaXNzZW4uCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogSGVucnltYXNrZSBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEphbm9zY2ggaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBGZXN0aW4gaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBNYXggaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBTdXNhbm5lIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogWmVyYmVydXMgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBBc21vZGlzIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogVG9tIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogUm9zaWUgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW4gRHNjaGlubiBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEVpbiBQYXJ0eW1vbnN0ZXIgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBTY2hyZWloYWxzIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogUGxhcHBlcm1hdWwgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBLZWxkZXIgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBNYXJzdCBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFFpdGVzcyBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpKYW5vc2NoIHNjaGF1dCB6dSBGZXN0aW4gaG9jaC4gRmVzdGluIHp3aW5rZXJ0IGt1cnogdW5kIGRpZSBNYXVzIGRyZWh0IHNpY2gKZHJlaW1hbCBpbSBLcmVpcy4KUm9zaWUgbGVndCBkaWUgQmVpbmUgYXVmcmVnZW5kIHVlYmVyZWluYW5kZXIuCkZlc3RpbiB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggUWl0ZXNzLgpRaXRlc3Mgd2lyZnQgZWluIEtpc3NlbiBuYWNoIEZlc3Rpbi4KUWl0ZXNzIHNhZ3Q6IFBhcnR5bW9uc3RlciBnaWIgYWxsZW4gdG9ydGUKUGxhcHBlcm1hdWwga3JhZWNoenQ6IC4uLiBQYXJ0eW1vbnN0ZXIgZ2liIGFsbGVuIC4uLiBQYXJ0eW1vbnN0ZXIgZ2liIGFsbGVuClBsYXBwZXJtYXVsIGtyYWVjaHp0OiAuLi4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IEhlbnJ5bWFza2UgZWluZSBTYWhuZXRvcnRlLgpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEphbm9zY2ggaGF0IGRvY2ggc2Nob24gZWluZSBTYWhuZXRvcnRlIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEZlc3RpbiBoYXQgZG9jaCBzY2hvbiBlaW5lIFNhaG5ldG9ydGUhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogTWF4IGhhdCBkb2NoIHNjaG9uIGVpbmUgU2FobmV0b3J0ZSEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBTdXNhbm5lIGhhdCBkb2NoIHNjaG9uIGVpbmUgU2FobmV0b3J0ZSEKRGFzIFBhcnR5bW9uc3RlciBnaWJ0IFplcmJlcnVzIGVpbmUgU2FobmV0b3J0ZS4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBBc21vZGlzIGhhdCBlaW5lIFBhcHBuYXNlIGF1ZiB1bmQga3JpZWd0IG5peCBtZWhyLgpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFRvbSBoYXQgZG9jaCBzY2hvbiBlaW5lIFNhaG5ldG9ydGUhCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBSb3NpZSBlaW5lIFNhaG5ldG9ydGUuCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBkZW0gRHNjaGlubiBlaW5lIFNhaG5ldG9ydGUuCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogRWluIFBhcnR5bW9uc3RlciBoYXQgZG9jaCBzY2hvbiBlaW5lIFNhaG5ldG9ydGUhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogU2NocmVpaGFscyBoYXQgZG9jaCBzY2hvbiBlaW5lIFNhaG5ldG9ydGUhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogUGxhcHBlcm1hdWwgaGF0IGRvY2ggc2Nob24gZWluZSBTYWhuZXRvcnRlIQpEYXMgUGFydHltb25zdGVyIGdpYnQgRGlyIGVpbmUgU2FobmV0b3J0ZS4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBNYXJzdCBoYXQgZG9jaCBzY2hvbiBlaW5lIFNhaG5ldG9ydGUhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogUWl0ZXNzIGhhdCBkb2NoIHNjaG9uIGVpbmUgU2FobmV0b3J0ZSEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBIZW5yeW1hc2tlIGhhdCBkb2NoIHNjaG9uIGVpbmUgU2FobmV0b3J0ZSEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBKYW5vc2NoIGhhdCBkb2NoIHNjaG9uIGVpbmUgU2FobmV0b3J0ZSEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBGZXN0aW4gaGF0IGRvY2ggc2Nob24gZWluZSBTYWhuZXRvcnRlIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IE1heCBoYXQgZG9jaCBzY2hvbiBlaW5lIFNhaG5ldG9ydGUhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogU3VzYW5uZSBoYXQgZG9jaCBzY2hvbiBlaW5lIFNhaG5ldG9ydGUhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogWmVyYmVydXMgaGF0IGRvY2ggc2Nob24gZWluZSBTYWhuZXRvcnRlIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEFzbW9kaXMgaGF0IGVpbmUgUGFwcG5hc2UgYXVmIHVuZCBrcmllZ3Qgbml4IG1laHIuCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogVG9tIGhhdCBkb2NoIHNjaG9uIGVpbmUgU2FobmV0b3J0ZSEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBSb3NpZSBoYXQgZG9jaCBzY2hvbiBlaW5lIFNhaG5ldG9ydGUhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogRWluIERzY2hpbm4gaGF0IGRvY2ggc2Nob24gZWluZSBTYWhuZXRvcnRlIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEVpbiBQYXJ0eW1vbnN0ZXIgaGF0IGRvY2ggc2Nob24gZWluZSBTYWhuZXRvcnRlIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFNjaHJlaWhhbHMgaGF0IGRvY2ggc2Nob24gZWluZSBTYWhuZXRvcnRlIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFBsYXBwZXJtYXVsIGhhdCBkb2NoIHNjaG9uIGVpbmUgU2FobmV0b3J0ZSEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBLZWxkZXIgaGF0IGRvY2ggc2Nob24gZWluZSBTYWhuZXRvcnRlIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IE1hcnN0IGhhdCBkb2NoIHNjaG9uIGVpbmUgU2FobmV0b3J0ZSEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBRaXRlc3MgaGF0IGRvY2ggc2Nob24gZWluZSBTYWhuZXRvcnRlIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFZpZWwgU3Bhc3Mgbm9jaCEKU3VzYW5uZSB3aW5rdCB1bmQgZ2VodCBkYXZvbi4KTWF4IGdydWVzc3QgdW5kIHZlcmxhZXNzdCBldWNoLgpSb3NpZSB3aW5rdCBldWNoIHp1LgpUb20gdmVybmVpZ3Qgc2ljaC4KRGFzIFBhcnR5bW9uc3RlciByYWV1bXQgYXVmIHVuZCBlaWx0IHp1ciBuYWVjaHN0ZW4gUGFydHkuClFpdGVzcyB3aXJmdCBGZXN0aW4gZWluZSBncm9zc2UgU2FobmV0b3J0ZSBpbnMgR2VzaWNodC4KUWl0ZXNzIG5pbW10IGVpbmUgVHVldGUgQ2hpcHMuClFpdGVzcyBuaW1tdCBlaW4gS2lzc2VuLgpRaXRlc3MgbmltbXQgZWluZW4gRGlja21hbm4uClFpdGVzcyBuaW1tdCBlaW4gS2lzc2VuLgpRaXRlc3MgbmltbXQgZWluZW4gTG9sbGkuClFpdGVzcyBuaW1tdCBlaW4gS2lzc2VuLgpRaXRlc3MgbmltbXQgZWluZSBUdWV0ZSBDaGlwcy4KUWl0ZXNzIG5pbW10IGVpbiBLaXNzZW4uClFpdGVzcyBuaW1tdCBlaW4gS2lzc2VuLgpRaXRlc3MgbmltbXQgZWluZW4gTG9sbGkuClFpdGVzcyBuaW1tdCBlaW5lIFNhaG5ldG9ydGUuClFpdGVzcyBuaW1tdCBlaW5lIFR1ZXRlIENoaXBzLgpRaXRlc3MgbmltbXQgZWluIEtpc3Nlbi4KUWl0ZXNzIG5pbW10IGVpbmVuIExvbGxpLgpRaXRlc3MgbmltbXQgZWluZSBTYWhuZXRvcnRlLgpRaXRlc3MgbmltbXQgZWluZSBUdWV0ZSBDaGlwcy4KUWl0ZXNzIG5pbW10IGVpbiBLaXNzZW4uClFpdGVzcyBuaW1tdCBlaW5lbiBMb2xsaS4KUWl0ZXNzIG5pbW10IGVpbmUgU2FobmV0b3J0ZS4KSGVucnltYXNrZSBuaW1tdCBlaW5lbiBEaWNrbWFubi4KSGVucnltYXNrZSBuaW1tdCBlaW5lbiBEaWNrbWFubi4KUWl0ZXNzIHNhZ3Q6IGhlbnJ5bWFza2UsIGhhdSBhYgpQbGFwcGVybWF1bCBrcmFlY2h6dDogLi4uIGhlbnJ5bWFza2UsIGhhdSBhYiAuLi4ga3Jyb29vYWFhIQpIZW5yeW1hc2tlIGxhZXNzdCBkZW4gRGlja21hbm4gZmFsbGVuLgpIZW5yeW1hc2tlIGxhZXNzdCBkZW4gRGlja21hbm4gZmFsbGVuLgpIZW5yeW1hc2tlIGxhZXNzdCBkaWUgU2FobmV0b3J0ZSBmYWxsZW4uCkhlbnJ5bWFza2UgbGFlc3N0IGRhcyBLaXNzZW4gZmFsbGVuLgpIZW5yeW1hc2tlIGhhdXQgYWIuClFpdGVzcyBuaW1tdCBlaW4gS2lzc2VuLgpRaXRlc3MgbmltbXQgZWluZSBTYWhuZXRvcnRlLgpGZXN0aW4gc2FndDogUGFydHltb25zdGVyIGdpYiBhbGxlbiBraXNzZW4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBKYW5vc2NoIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogRmVzdGluIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogWmVyYmVydXMgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBBc21vZGlzIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogRWluIERzY2hpbm4gaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBTY2hyZWloYWxzIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogUGxhcHBlcm1hdWwgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBLZWxkZXIgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBNYXJzdCBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFFpdGVzcyBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpNYXJzdCB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggUWl0ZXNzLgpGZXN0aW4gd2lyZnQgZWluIEtpc3NlbiBuYWNoIFNjaHJlaWhhbHMuClFpdGVzcyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggTWFyc3QuClFpdGVzcyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggTWFyc3QuClFpdGVzcyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggTWFyc3QuClFpdGVzcyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggTWFyc3QuClFpdGVzcyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggTWFyc3QuCk1hcnN0IHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBRaXRlc3MuClFpdGVzcyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggTWFyc3QuCkZlc3RpbiB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggTWFyc3QuClFpdGVzcyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggTWFyc3QuClFpdGVzcyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggTWFyc3QuClFpdGVzcyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggTWFyc3QuClFpdGVzcyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggTWFyc3QuCk1hcnN0IHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBRaXRlc3MuCk1hcnN0IGdyaW5zdC4KRGFzIFBhcnR5bW9uc3RlciBncmluc3QuClplcmJlcnVzIGxlZ3Qgc2ljaCBhdWYgZGVuIEJvZGVuIHVuZCBzY2hsaWVzc3QgZGllIEF1Z2VuLgpRaXRlc3MgcnVmdCBtaXQgdmVyc3RvcGZ0ZW0gTXVuZDogQk9BSCwgU0lORCBESUUgRElDSywgTUFOTiEKUmluZ29yIHRhdW1lbHQgZmx1Y2hlbmQgaGVyZWluLgpQbGFwcGVybWF1bCBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIFJpbmdvciAuLi4KU2NocmVpaGFscyBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIFJpbmdvciAuLi4KUWl0ZXNzIHJ1ZnQgbWl0IHZlcnN0b3BmdGVtIE11bmQ6IEJPQUgsIFNJTkQgRElFIERJQ0ssIE1BTk4hCk1hcnN0IGtudWRkZWx0IGRhcyBQYXJ0eW1vbnN0ZXIuClJpbmdvciBoYXV0IHNpY2ggc2VpbmVuIFNjaGlsZCB2b3JzIEtpbm4gdW5kIGZhZWxsdCBpbiBkaWUgR2lsZGUuCkZlc3RpbiBzYWd0OiBQYXJ0eW1vbnN0ZXIgZ2liIGFsbGVuIGRpY2ttYW5uCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBKYW5vc2NoIGVpbmVuIERpY2ttYW5uLgpEYXMgUGFydHltb25zdGVyIGdpYnQgRmVzdGluIGVpbmVuIERpY2ttYW5uLgpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFplcmJlcnVzIGhhdCBkb2NoIHNjaG9uIGVpbmVuIERpY2ttYW5uIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEFzbW9kaXMgaGF0IGVpbmUgUGFwcG5hc2UgYXVmIHVuZCBrcmllZ3Qgbml4IG1laHIuCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogRWluIERzY2hpbm4gaGF0IGRvY2ggc2Nob24gZWluZW4gRGlja21hbm4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogU2NocmVpaGFscyBoYXQgZG9jaCBzY2hvbiBlaW5lbiBEaWNrbWFubiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBQbGFwcGVybWF1bCBoYXQgZG9jaCBzY2hvbiBlaW5lbiBEaWNrbWFubiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBLZWxkZXIgaGF0IGRvY2ggc2Nob24gZWluZW4gRGlja21hbm4hCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBNYXJzdCBlaW5lbiBEaWNrbWFubi4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBRaXRlc3MgaGF0IGRvY2ggc2Nob24gZWluZW4gRGlja21hbm4hClFpdGVzcyBydWZ0IG1pdCB2ZXJzdG9wZnRlbSBNdW5kOiBCT0FILCBTSU5EIERJRSBESUNLLCBNQU5OIQpGZXN0aW4gd2lyZnQgUWl0ZXNzIGVpbmUgZ3Jvc3NlIFNhaG5ldG9ydGUgaW5zIEdlc2ljaHQuCk1hcnN0IHJ1ZnQgbWl0IHZlcnN0b3BmdGVtIE11bmQ6IEJPQUgsIFNJTkQgRElFIERJQ0ssIE1BTk4hCkhVQ0gsIGZhc3Qgd2FlcnN0IER1IGF1ZiBKYW5vc2NoIGdldHJldGVuClFpdGVzcyB3aXJmdCBGZXN0aW4gZWluZSBncm9zc2UgU2FobmV0b3J0ZSBpbnMgR2VzaWNodC4KUWl0ZXNzIHdpcmZ0IE1hcnN0IGVpbmUgZ3Jvc3NlIFNhaG5ldG9ydGUgaW5zIEdlc2ljaHQuCkZlc3RpbiBydWZ0IG1pdCB2ZXJzdG9wZnRlbSBNdW5kOiBCT0FILCBTSU5EIERJRSBESUNLLCBNQU5OIQpRaXRlc3Mgc2FndDogUGFydHltb25zdGVyIGdpYiBhbGxlbiBqb2ludApEYXMgUGFydHltb25zdGVyIGdpYnQgSmFub3NjaCBlaW5lbiBKb2ludC4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IEZlc3RpbiBlaW5lbiBKb2ludC4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IFplcmJlcnVzIGVpbmVuIEpvaW50LgpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEFzbW9kaXMgaGF0IGVpbmUgUGFwcG5hc2UgYXVmIHVuZCBrcmllZ3Qgbml4IG1laHIuCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBkZW0gRHNjaGlubiBlaW5lbiBKb2ludC4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IFNjaHJlaWhhbHMgZWluZW4gSm9pbnQuCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBQbGFwcGVybWF1bCBlaW5lbiBKb2ludC4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBLZWxkZXIgaGF0IGRvY2ggc2Nob24gZWluZW4gSm9pbnQhCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBNYXJzdCBlaW5lbiBKb2ludC4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBRaXRlc3MgaGF0IGRvY2ggc2Nob24gZWluZW4gSm9pbnQhCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogU28gZGllIFBhcnR5IGlzdCB2b3JiZWkgdW5kIGljaCBoYXVlIGFiLgpEYXMgUGFydHltb25zdGVyIHJhZXVtdCBhdWYgdW5kIGVpbHQgenVyIG5hZWNoc3RlbiBQYXJ0eS4KTWFyc3Qgd2lyZnQgUWl0ZXNzIGVpbmUgZ3Jvc3NlIFNhaG5ldG9ydGUgaW5zIEdlc2ljaHQuCk1hcnN0IHNldHp0IHNpY2ggaGluIHVuZCByYXVjaHQgZWluZW4gSm9pbnQuCk1hcnN0IHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpGZXN0aW4gc2V0enQgc2ljaCBoaW4gdW5kIHJhdWNodCBlaW5lbiBKb2ludC4KUWl0ZXNzIHNjaGxlY2t0IGFuIGlocmVtIExvbGxpLgpRaXRlc3Mgc2NobGVja3QgYW4gaWhyZW0gTG9sbGkuClFpdGVzcyBzY2hsZWNrdCBhbiBpaHJlbSBMb2xsaS4KUWl0ZXNzIHNjaGxlY2t0IGFuIGlocmVtIExvbGxpLgpRaXRlc3Mgc2NobGVja3QgYW4gaWhyZW0gTG9sbGkuClFpdGVzcyBzY2hsZWNrdCBhbiBpaHJlbSBMb2xsaS4KUWl0ZXNzIHNjaGxlY2t0IGFuIGlocmVtIExvbGxpLgpRaXRlc3Mgc2NobGVja3QgYW4gaWhyZW0gTG9sbGkuCkZlc3RpbiB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KUWl0ZXNzIHNjaGxlY2t0IGFuIGlocmVtIExvbGxpLgpRaXRlc3Mgc2NobGVja3QgYW4gaWhyZW0gTG9sbGkuClFpdGVzcyBzY2hsZWNrdCBhbiBpaHJlbSBMb2xsaS4KUWl0ZXNzIHNjaGxlY2t0IGFuIGlocmVtIExvbGxpLgpRaXRlc3Mgc2NobGVja3QgYW4gaWhyZW0gTG9sbGkuClFpdGVzcyBzY2hsZWNrdCBhbiBpaHJlbSBMb2xsaS4KTWFyc3Qgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCkZlc3RpbiBzY2hsZWNrdCBhbiBzZWluZW0gTG9sbGkuCkZlc3RpbiBzY2hsZWNrdCBhbiBzZWluZW0gTG9sbGkuCkZlc3RpbiB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KTWFyc3Qgc2llaHQgYmV0cnVua2VuIGF1cy4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KTWFyc3Qgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClNoYWRvdyBSaWt1cyBydWZ0OiBjaWFvISBiaXMgc3BhZXRlcgpRaXRlc3Mgd2lyZnQgZWluZSBoYW5kdm9sbCBidW50ZW4gUmVpcyBkdXJjaCBkaWUgTHVmdC4KQnVudGVyIFJlaXMgcHJhc3NlbHQgYXVmIERpY2ggaGVybmllZGVyLgpRaXRlc3Mgd2lyZnQgZWluZSBoYW5kdm9sbCBidW50ZW4gUmVpcyBkdXJjaCBkaWUgTHVmdC4KQnVudGVyIFJlaXMgcHJhc3NlbHQgYXVmIERpY2ggaGVybmllZGVyLgpNYXJzdCB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuCkZlc3RpbiB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KUWl0ZXNzIHNldHp0IHNpY2ggaGluIHVuZCByYXVjaHQgZWluZW4gSm9pbnQuCk1hcnN0IHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpRaXRlc3Mgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBpaHJlbSBKb2ludCBlaW5nZWh1ZWxsdC4KRmVzdGluIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpGZXN0aW4gbmltbXQgZWluZSBoYW5kdm9sbCBSZWlzLgpTY2hyZWloYWxzIGtyYWVjaHp0OiAuLi4gaWNoIGhhYmUgZWluZW47IGxlZXJlbi4gLi4uIGtycnJvb2FhYSEKTWFyc3Qgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCkZlc3RpbiB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClFpdGVzcyBydWVscHN0LgpRaXRlc3Mgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBpaHJlbSBKb2ludCBlaW5nZWh1ZWxsdC4KRmVzdGluIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpGZXN0aW4gbmltbXQgZWluZSBoYW5kdm9sbCBSZWlzLgpRaXRlc3Mgd2lyZnQgQXNtb2RpcyBlaW5lIGdyb3NzZSBTYWhuZXRvcnRlIGlucyBHZXNpY2h0LgpNYXJzdCBoYXQgZGVuIEpvaW50IGF1ZmdlcmF1Y2h0IHVuZCB3aXJkIGxhbmdzYW0gd2llZGVyIG5vcm1hbC4KUWl0ZXNzIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgaWhyZW0gSm9pbnQgZWluZ2VodWVsbHQuCkZlc3RpbiBoYXQgZGVuIEpvaW50IGF1ZmdlcmF1Y2h0IHVuZCB3aXJkIGxhbmdzYW0gd2llZGVyIG5vcm1hbC4KRmVzdGluIHNjaGxlY2t0IGFuIHNlaW5lbSBMb2xsaS4KUWl0ZXNzIHdpcmZ0IFBsYXBwZXJtYXVsIGVpbmUgZ3Jvc3NlIFNhaG5ldG9ydGUgaW5zIEdlc2ljaHQuClFpdGVzcyB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpGZXN0aW4gc2NobGVja3QgYW4gc2VpbmVtIExvbGxpLgpGZXN0aW4gc2NobGVja3QgYW4gc2VpbmVtIExvbGxpLgpGZXN0aW4gc2NobGVja3QgYW4gc2VpbmVtIExvbGxpLgpRaXRlc3Mgd2lyZnQgZWluZSBoYW5kdm9sbCBidW50ZW4gUmVpcyBkdXJjaCBkaWUgTHVmdC4KQnVudGVyIFJlaXMgcHJhc3NlbHQgYXVmIERpY2ggaGVybmllZGVyLgpRaXRlc3Mgd2lyZnQgZWluZSBoYW5kdm9sbCBidW50ZW4gUmVpcyBkdXJjaCBkaWUgTHVmdC4KQnVudGVyIFJlaXMgcHJhc3NlbHQgYXVmIERpY2ggaGVybmllZGVyLgpRaXRlc3Mgd2lyZnQgZWluZSBoYW5kdm9sbCBidW50ZW4gUmVpcyBkdXJjaCBkaWUgTHVmdC4KQnVudGVyIFJlaXMgcHJhc3NlbHQgYXVmIERpY2ggaGVybmllZGVyLgpRaXRlc3Mgd2lyZnQgZWluZSBoYW5kdm9sbCBidW50ZW4gUmVpcyBkdXJjaCBkaWUgTHVmdC4KQnVudGVyIFJlaXMgcHJhc3NlbHQgYXVmIERpY2ggaGVybmllZGVyLgpRaXRlc3Mgd2lyZnQgZWluZSBoYW5kdm9sbCBidW50ZW4gUmVpcyBkdXJjaCBkaWUgTHVmdC4KQnVudGVyIFJlaXMgcHJhc3NlbHQgYXVmIERpY2ggaGVybmllZGVyLgpRaXRlc3Mgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBpaHJlbSBKb2ludCBlaW5nZWh1ZWxsdC4KUWl0ZXNzIGtudXNwZXJ0IGFuIGVpbmVyIFR1ZXRlIENoaXBzIHJ1bS4KUWl0ZXNzIGtudXNwZXJ0IGFuIGVpbmVyIFR1ZXRlIENoaXBzIHJ1bS4KWmVyYmVydXMgZ2lidCBlaW4ga3VyemVzIEJlbGxlbiB2b24gc2ljaC4KUWl0ZXNzIGtudXNwZXJ0IGFuIGVpbmVyIFR1ZXRlIENoaXBzIHJ1bS4KRmVzdGluIHNhZ3Q6IDxIaWNrPiEKTWFyc3Qgc3RvbHBlcnQgdWViZXIgc2VpbmUgRnVlc3NlLgpRaXRlc3MgaGF0IGRlbiBKb2ludCBhdWZnZXJhdWNodCB1bmQgd2lyZCBsYW5nc2FtIHdpZWRlciBub3JtYWwuCk1hcnN0IHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBRaXRlc3MuCkZlc3RpbiBmbHVlc3RlcnQgUWl0ZXNzIGV0d2FzIGlucyBPaHIuClFpdGVzcyBzY2hydW1wZnQgenVzYW1tZW4sIGxhZXVmdCBncnVlbiBhbiB1bmQgdmVyd2FuZGVsdCBzaWNoIGxhbmdzYW0gaW4KZWluZW4gRnJvc2NoLgpNYXJzdCB6aWVodCBzaWNoIGFuIGRlbiBIYWFyZW4uClplcmJlcnVzIGxlZ3Qgc2ljaCBhdWYgZGVuIEJvZGVuIHVuZCBzY2hsaWVzc3QgZGllIEF1Z2VuLgpNYXJzdCB6aWVodCBzaWNoIGFuIGRlbiBIYWFyZW4uCk1hcnN0IHdhY2hzZW4gdWViZXJhbGwgSGFhcmUuCk1hcnN0IGdyaW5zdC4KRWluIEZyb3NjaCBzYWd0OiBxdWFhYWFrClNjaHJlaWhhbHMga3JhZWNoenQ6IC4uLiBuZSBSdWVzdHVuZyBpc3QgLi4uIG5hZ3V0LiA7LSkgLi4uIGtycnJvb2FhYSEKZWluIEZyb3NjaCBrbnVzcGVydCBhbiBlaW5lciBUdWV0ZSBDaGlwcyBydW0uCmVpbiBGcm9zY2ggd2lyZnQgZWluIEtpc3NlbiBuYWNoIEZlc3Rpbi4KZWluIEZyb3NjaCB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggRmVzdGluLgpGZXN0aW4gc2NobGVja3QgYW4gc2VpbmVtIExvbGxpLgplaW4gRnJvc2NoIHNjaGxlY2t0IGFuIHNlaW5lbSBMb2xsaS4KZWluIEZyb3NjaCBzY2hsZWNrdCBhbiBzZWluZW0gTG9sbGkuCmVpbiBGcm9zY2ggc2NobGVja3QgYW4gc2VpbmVtIExvbGxpLgplaW4gRnJvc2NoIHNjaGxlY2t0IGFuIHNlaW5lbSBMb2xsaS4KZWluIEZyb3NjaCBzY2hsZWNrdCBhbiBzZWluZW0gTG9sbGkuCmVpbiBGcm9zY2ggc2NobGVja3QgYW4gc2VpbmVtIExvbGxpLgplaW4gRnJvc2NoIHNjaGxlY2t0IGFuIHNlaW5lbSBMb2xsaS4KZWluIEZyb3NjaCBzY2hsZWNrdCBhbiBzZWluZW0gTG9sbGkuCmVpbiBGcm9zY2ggc2NobGVja3QgYW4gc2VpbmVtIExvbGxpLgplaW4gRnJvc2NoIHNjaGxlY2t0IGFuIHNlaW5lbSBMb2xsaS4KZWluIEZyb3NjaCBzY2hsZWNrdCBhbiBzZWluZW0gTG9sbGkuCmVpbiBGcm9zY2ggc2NobGVja3QgYW4gc2VpbmVtIExvbGxpLgplaW4gRnJvc2NoIHNjaGxlY2t0IGFuIHNlaW5lbSBMb2xsaS4KZWluIEZyb3NjaCBzY2hsZWNrdCBhbiBzZWluZW0gTG9sbGkuCmVpbiBGcm9zY2ggc2NobGVja3QgYW4gc2VpbmVtIExvbGxpLgplaW4gRnJvc2NoIHNjaGxlY2t0IGFuIHNlaW5lbSBMb2xsaS4KZWluIEZyb3NjaCBzY2hsZWNrdCBhbiBzZWluZW0gTG9sbGkuCmVpbiBGcm9zY2ggc2NobGVja3QgYW4gc2VpbmVtIExvbGxpLgplaW4gRnJvc2NoIHNjaGxlY2t0IGFuIHNlaW5lbSBMb2xsaS4KZWluIEZyb3NjaCBzY2hsZWNrdCBhbiBzZWluZW0gTG9sbGkuCmVpbiBGcm9zY2ggc2NobGVja3QgYW4gc2VpbmVtIExvbGxpLgplaW4gRnJvc2NoIHNjaGxlY2t0IGFuIHNlaW5lbSBMb2xsaS4KZWluIEZyb3NjaCBzY2hsZWNrdCBhbiBzZWluZW0gTG9sbGkuClNjaHJlaWhhbHMga3JhZWNoenQ6IC4uLiBoYWJlLCB3ZW5uIER1IG1pY2ggLi4uIGhhYmUsIHdlbm4gRHUgbWljaCAuLi4KRWluIEZyb3NjaCBzYWd0OiBmdWVyIGZsaWVnZW4uLi4KRmVzdGluIHNhZ3Q6IEpldHp0IGlzdCBkaWUgWnVuZ2UgamEgbGFuZyBnZW51ZyB6dW0gTG9sbGkgbHV0c2NoZW4uLi4KU2NocmVpaGFscyBrcmFlY2h6dDogLi4uIGRpZSBadW5nZSBqYSBsYW5nIGdlbnVnIHp1bSBMb2xsaSBsdXRzY2hlbi4uLiAuLi4KU2NocmVpaGFscyBrcmFlY2h6dDoga3Jyb29vYWFhIQpRaXRlc3Mgd2lyZnQgRmVzdGluIGVpbmUgZ3Jvc3NlIFNhaG5ldG9ydGUgaW5zIEdlc2ljaHQuCmVpbiBGcm9zY2ggaXNzdCBlaW4gU3R1ZWNrIHZvbiBBbnRoZWFzIEt1Y2hlbi4KRmVzdGluIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBBc21vZGlzLgpaZXJiZXJ1cyBsZWd0IHNpY2ggYXVmIGRlbiBCb2RlbiB1bmQgc2NobGllc3N0IGRpZSBBdWdlbi4KRWluIEZyb3NjaCBzYWd0OiBoZW5yeW1hc2tlLCBoYXUgYWIKUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KQUFBQUhISCEgRWluZSBNYXVzISBEaXJla3Qgdm9yIERpciEKRmVzdGluIHNjaHVldHRlbHQgZXR3YXMgYXVzIGRlbSBBZXJtZWwuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuCkZlc3RpbiBsYWVzc3QgZGVuIEZ1c3NiYWxsIGZhbGxlbi4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KTWFyc3Qgd2lyZnQgZWluZSBoYW5kdm9sbCBidW50ZW4gUmVpcyBkdXJjaCBkaWUgTHVmdC4KQnVudGVyIFJlaXMgcHJhc3NlbHQgYXVmIERpY2ggaGVybmllZGVyLgpRaXRlc3Mgd2lyZnQgZWluZSBoYW5kdm9sbCBidW50ZW4gUmVpcyBkdXJjaCBkaWUgTHVmdC4KQnVudGVyIFJlaXMgcHJhc3NlbHQgYXVmIERpY2ggaGVybmllZGVyLgpRaXRlc3Mgd2lyZnQgZWluZSBoYW5kdm9sbCBidW50ZW4gUmVpcyBkdXJjaCBkaWUgTHVmdC4KQnVudGVyIFJlaXMgcHJhc3NlbHQgYXVmIERpY2ggaGVybmllZGVyLgpRaXRlc3Mgd2lyZnQgZWluZSBoYW5kdm9sbCBidW50ZW4gUmVpcyBkdXJjaCBkaWUgTHVmdC4KQnVudGVyIFJlaXMgcHJhc3NlbHQgYXVmIERpY2ggaGVybmllZGVyLgpRaXRlc3Mgd2lyZnQgZWluZSBoYW5kdm9sbCBidW50ZW4gUmVpcyBkdXJjaCBkaWUgTHVmdC4KQnVudGVyIFJlaXMgcHJhc3NlbHQgYXVmIERpY2ggaGVybmllZGVyLgpNYXJzdCB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuCk1hcnN0IHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KTWFyc3Qgd2lyZnQgZWluZSBoYW5kdm9sbCBidW50ZW4gUmVpcyBkdXJjaCBkaWUgTHVmdC4KQnVudGVyIFJlaXMgcHJhc3NlbHQgYXVmIERpY2ggaGVybmllZGVyLgpNYXJzdCB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuClFpdGVzcyB3aXJmdCBlaW5lIGhhbmR2b2xsIGJ1bnRlbiBSZWlzIGR1cmNoIGRpZSBMdWZ0LgpCdW50ZXIgUmVpcyBwcmFzc2VsdCBhdWYgRGljaCBoZXJuaWVkZXIuCk1hcnN0IHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KTWFyc3Qgd2lyZnQgZWluZSBoYW5kdm9sbCBidW50ZW4gUmVpcyBkdXJjaCBkaWUgTHVmdC4KQnVudGVyIFJlaXMgcHJhc3NlbHQgYXVmIERpY2ggaGVybmllZGVyLgpQbGFwcGVybWF1bCBrcmFlY2h6dDogLi4uIEljaCBoYWIgLi4uIEljaCBoYWIgLi4uCk1hcnN0IHZlcnd1c2NoZWx0IFBsYXBwZXJtYXVscyBGZWRlcm4uClBsYXBwZXJtYXVsIGtyYWVjaHp0OiAuLi4ga3JycnJvb29hYWEgLi4uIE1laW5lIEZyaXN1ciAuLi4KRmVzdGluIHNwaWVsdCBtaXQgUWl0ZXNzIHVuZCBkZW0gRnVzc2JhbGwuLi5uYSB3YXMgd29obC4uLkZ1c3NiYWxsIG5hdHVlcmxpY2gKUWl0ZXNzIHJ1ZnQ6IFRPT09PT09PT09SICEhISEhCkphbm9zY2ggZHJlaHQgc2ljaCBlaW4gcGFhcm1hbCBpbSBLcmVpcy4KRmVzdGluIG5pbW10IGVpbmUgaGFuZHZvbGwgUmVpcy4KRmVzdGluIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KTWFyc3QganViZWx0LgpRaXRlc3Mgc2FndDogZWlucyB6dSBudWxsIGZ1ZXIgcWkKU2NocmVpaGFscyBrcmFlY2h6dDogLi4uIGVpbnMgenUgbnVsbCAuLi4gZWlucyB6dSBudWxsIC4uLgpNYXJzdCBqdWJlbHQuCk1hcnN0IGp1YmVsdC4KTWFyc3QganViZWx0LgpNYXJzdCBqdWJlbHQuCk1hcnN0IGp1YmVsdC4KTWFyc3QganViZWx0LgpNYXJzdCBqdWJlbHQuCkFBQUFISEghIEVpbmUgTWF1cyEgRGlyZWt0IHZvciBEaXIhClBsb2V0emxpY2ggZmFlbmd0IEZlc3RpbiBhbiB6dSBkcmliYmVsbiwgemllaHQgYW4gUWl0ZXNzIHZvcmJlaSB1bmQgc2NoaWVzc3QKZGVuIEF1c2dsZWljaC4KU2NocmVpaGFscyBrcmFlY2h6dDogLi4uIGVpbnMgenUgbnVsbCAuLi4gZWlucyB6dSBudWxsIC4uLgpTY2hyZWloYWxzIGtyYWVjaHp0OiAuLi4gPEhpY2s+ISAuLi4ga3Jycm9vYWFhIQpGZXN0aW4gc2NobmlwcHQgbWl0IGRlbiBGaW5nZXJuLgpGZXN0aW5zIFN0aW1tZSBzYWd0OiAuLi4uIGVpbnMgenUgZWlucyAuLi4uCkRpZSBadXNjaGF1ZXIgc3RlaGVuIGF1ZiBkZW4gU2l0emVuIHVuZCBwZmVpZmVuLCB3YXMgZGFzIFpldWcgaGFlbHQuIEZ1ZXIgZGllIApkZW0gVG9yIHZvcmFuZ2VnYW5nZW5lIEFrdGlvbiB2b24gRmVzdGluIGhhZXR0ZSBkZXIgU2NoaWVkc3JpY2h0ZXIgcm90IGdlYmVuIAprb2VubmVuLiBKYSwgaGF0IGRlciBkZW5uIFRvbWF0ZW4gYXVmIGRlbiBBdWdlbiA/Pz8KRmVzdGlucyBTdGltbWUgc2FndDogLi4uLiBlaW5zIHp1IGVpbnMgLi4uLgpGZXN0aW5zIFN0aW1tZSBzYWd0OiAuLi4uIGVpbnMgenUgZWlucyAuLi4uCkZlc3RpbnMgU3RpbW1lIHNhZ3Q6IC4uLi4gZWlucyB6dSBlaW5zIC4uLi4KRmVzdGlucyBTdGltbWUgc2FndDogLi4uLiBlaW5zIHp1IGVpbnMgLi4uLgpKYW5vc2NoIGRyZWh0IHNpY2ggZWluIHBhYXJtYWwgaW0gS3JlaXMuCkZlc3RpbnMgU3RpbW1lIHNhZ3Q6IC4uLi4gZWlucyB6dSBlaW5zIC4uLi4KUWl0ZXNzIHdpcmZ0IGVpbmUgaGFuZHZvbGwgYnVudGVuIFJlaXMgZHVyY2ggZGllIEx1ZnQuCkJ1bnRlciBSZWlzIHByYXNzZWx0IGF1ZiBEaWNoIGhlcm5pZWRlci4KRmVzdGluIHN0YXJydCBRaXRlc3MgdGllZiBpbiBkaWUgQXVnZW4gdW5kIHNhZ3Q6IEp1YmVsIQpRaXRlc3MganViZWx0IGJlZ2Vpc3RlcnQuClNjaHJlaWhhbHMga3JhZWNoenQ6IC4uLiB1bnQgd2llc2UgLi4uIHVudCB3aWVzZSAuLi4KUWl0ZXNzIGp1YmVsdCBiZWdlaXN0ZXJ0LgpTZWxic3QgUWl0ZXNzIGhhdCBlaW5nZXNlaGVuLCBkYXNzIGRhcyBUb3IgcmVjaHRtYWVzc2lnIHdhciB1bmQganViZWx0IEZlc3Rpbgp6dS4KUWl0ZXNzIGp1YmVsdCBiZWdlaXN0ZXJ0LgpRaXRlc3MganViZWx0IGJlZ2Vpc3RlcnQuClFpdGVzcyBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpRaXRlc3MganViZWx0IGJlZ2Vpc3RlcnQuClFpdGVzcyBqdWJlbHQgYmVnZWlzdGVydC4KRmVzdGluIHNjaG5hcHB0IHNpY2ggUWl0ZXNzIHVuZCBkaWUgYmVpZGVuIHRhbnplbiBlaW5lIFJ1bmRlIFJ1bWJhLgpKYW5vc2NoIGRyZWh0IHNpY2ggZWluIHBhYXJtYWwgaW0gS3JlaXMuClFpdGVzcyBqdWJlbHQgYmVnZWlzdGVydC4KUWl0ZXNzIGp1YmVsdCBiZWdlaXN0ZXJ0LgpTY2hyZWloYWxzIGtyYWVjaHp0OiAuLi4gbmUgUnVlc3R1bmcgaXN0IC4uLiBuYWd1dC4gOy0pIC4uLiBrcnJyb29hYWEhCkZlc3RpbiBzdGFycnQgSmFub3NjaCB0aWVmIGluIGRpZSBBdWdlbiB1bmQgc2FndDogTGFjaGUhCkphbm9zY2gga3JpZWd0IGVpbmVuIGh5c3RlcmlzY2hlbiBMYWNoYW5mYWxsLgpFaW4gRmV1ZXJzdHJhaGwgc2NoaWVzc3QgYXVzIEFzbW9kaXMnIFJpbmcgdW5kIHRyaWZmdCBlaW5lbiBGdXNzYmFsbC4KUGxhcHBlcm1hdWwga3JhZWNoenQ6IC4uLiBJY2ggaGFiIC4uLiBJY2ggaGFiIC4uLgpKYW5vc2NoIGtyaWVndCBlaW5lbiBoeXN0ZXJpc2NoZW4gTGFjaGFuZmFsbC4KRmVzdGluIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBRaXRlc3MuClFpdGVzcyBuaW1tdCBlaW4gS2lzc2VuLgpRaXRlc3MgbmltbXQgZWluZSBoYW5kdm9sbCBSZWlzLgpRaXRlc3MgbmltbXQgZWluZW4gRnVzc2JhbGwuCkZlc3RpbiBzY2hsZWNrdCBhbiBzZWluZW0gTG9sbGkuCkphbm9zY2gga3JpZWd0IGVpbmVuIGh5c3RlcmlzY2hlbiBMYWNoYW5mYWxsLgpRaXRlc3Mgd2lyZnQgZWluIEtpc3NlbiBuYWNoIEZlc3Rpbi4KU2NocmVpaGFscyBrcmFlY2h6dDogS2tycnJycm9vb29hYWFhIC4uLgpGZXN0aW4gd2lyZnQgZWluIEtpc3NlbiBuYWNoIE1hcnN0LgpNYXJzdCBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpKYW5vc2NoIGtyaWVndCBlaW5lbiBoeXN0ZXJpc2NoZW4gTGFjaGFuZmFsbC4KUWl0ZXNzIGtudWRkZWx0IE1hcnN0LgpRaXRlc3MgZnJhZ3Q6IFdhdCBkYW5uID8KSmFub3NjaCBrcmllZ3QgZWluZW4gaHlzdGVyaXNjaGVuIExhY2hhbmZhbGwuCkphbm9zY2gga3JpZWd0IGVpbmVuIGh5c3RlcmlzY2hlbiBMYWNoYW5mYWxsLgpNYXJzdCBzYWd0OiBNZWluIE1vZGVtIG9kZXIgUHJvdmlkZXIgbGVnZW4gZGF1ZXJuZCBhdWYgOigKUGxhcHBlcm1hdWwga3JhZWNoenQ6IC4uLiBQcm92aWRlciBsZWdlbiBkYXVlcm5kIGF1ZiA6KCAuLi4ga3Jyb29vYWFhIQpTY2hyZWloYWxzIGtyYWVjaHp0OiAuLi4gZ2liIGFsbGVuIGtpc3NlbiAuLi4ga3Jycm9vYWFhIQpKYW5vc2NoIGtyaWVndCBlaW5lbiBoeXN0ZXJpc2NoZW4gTGFjaGFuZmFsbC4KRmVzdGluIGtvbnplbnRyaWVydCBzaWNoIGF1ZiBldHdhcy4KUGxvZXR6bGljaCB3aXJkIGVzIGR1bmtsZXIuCkZlc3RpbiBzYWd0OiBVcHMsIGdsZWljaCB2aWVsIHJvbWFudGlzY2hlcgpNYXJzdCBrb256ZW50cmllcnQgc2ljaC4KRWluIGhlbGxlciBMaWNodHN0cmFobCBlcnNjaGVpbnQuCkphbm9zY2gga3JpZWd0IGVpbmVuIGh5c3RlcmlzY2hlbiBMYWNoYW5mYWxsLgpGZXN0aW4ga29uemVudHJpZXJ0IHNpY2ggYXVmIGV0d2FzLgpQbG9ldHpsaWNoIHdpcmQgZXMgZHVua2xlci4KTWFyc3Qga29uemVudHJpZXJ0IHNpY2guCkVpbiBoZWxsZXIgTGljaHRzdHJhaGwgZXJzY2hlaW50LgpGZXN0aW4ga29uemVudHJpZXJ0IHNpY2ggYXVmIGV0d2FzLgpQbG9ldHpsaWNoIHdpcmQgZXMgZHVua2xlci4KTWFyc3Qga29uemVudHJpZXJ0IHNpY2guCkVpbiBoZWxsZXIgTGljaHRzdHJhaGwgZXJzY2hlaW50LgpGZXN0aW4ga29uemVudHJpZXJ0IHNpY2ggYXVmIGV0d2FzLgpQbG9ldHpsaWNoIHdpcmQgZXMgZHVua2xlci4KTWFyc3Qga29uemVudHJpZXJ0IHNpY2guCkVpbiBoZWxsZXIgTGljaHRzdHJhaGwgZXJzY2hlaW50LgpGZXN0aW4ga29uemVudHJpZXJ0IHNpY2ggYXVmIGV0d2FzLgpQbG9ldHpsaWNoIHdpcmQgZXMgZHVua2xlci4KSmFub3NjaCBrcmllZ3QgZWluZW4gaHlzdGVyaXNjaGVuIExhY2hhbmZhbGwuClplcmJlcnVzIHdpcmZ0IERpciBlaW5lbiBza2VwdGlzY2hlbiBCbGljayB6dS4KTWFyc3Qga29uemVudHJpZXJ0IHNpY2guCk1hcnN0IGtvbnplbnRyaWVydCBzaWNoLgpNYXJzdCBrb256ZW50cmllcnQgc2ljaC4KRWluIGhlbGxlciBMaWNodHN0cmFobCBlcnNjaGVpbnQuCkZlc3RpbiBrb256ZW50cmllcnQgc2ljaCBhdWYgZXR3YXMuClBsb2V0emxpY2ggd2lyZCBlcyBkdW5rbGVyLgpNYXJzdCBrb256ZW50cmllcnQgc2ljaC4KRWluIGhlbGxlciBMaWNodHN0cmFobCBlcnNjaGVpbnQuCkZlc3RpbiBrb256ZW50cmllcnQgc2ljaCBhdWYgZXR3YXMuClBsb2V0emxpY2ggd2lyZCBlcyBkdW5rbGVyLgpKYW5vc2NoIGtyaWVndCBlaW5lbiBoeXN0ZXJpc2NoZW4gTGFjaGFuZmFsbC4KTWFyc3Qga29uemVudHJpZXJ0IHNpY2guCk1hcnN0IGtvbnplbnRyaWVydCBzaWNoLgpFaW4gaGVsbGVyIExpY2h0c3RyYWhsIGVyc2NoZWludC4KRmVzdGluIGtvbnplbnRyaWVydCBzaWNoIGF1ZiBldHdhcy4KRWluZSBzdHJhaGxlbmQgaGVsbGUgS3VnZWwgZXJzY2hlaW50IGF1cyBkZW0gTmljaHRzLgpQbG9ldHpsaWNoIGVyc3RyYWhsdCBhbGxlcyBpbiByb3NhbmVtIExpY2h0LgpBQUFBSEhIISBFaW5lIE1hdXMhIERpcmVrdCB2b3IgRGlyIQpNYXJzdCB6aWVodCBzaWNoIGFuIGRlbiBIYWFyZW4uCk1hcnN0IHdhY2hzZW4gdWViZXJhbGwgSGFhcmUuClFpdGVzcyBtYWNodCBlaW5lIG1hZ2lzY2hlIEJld2VndW5nLgpNYXJzdCBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpNaWV6ZSBydWZ0OiBiaXMgRGllbnN0YWchCkZlc3RpbiBzY2h1ZXR0ZWx0IGV0d2FzIGF1cyBkZW0gQWVybWVsLgpGZXN0aW4gbGFlc3N0IGRpZSBLZXJ6ZW4gZmFsbGVuLgpQbGFwcGVybWF1bCBrcmFlY2h6dDogLi4uIDxIaWNrPiEgLi4uIGtycnJvb2FhYSEKRmVzdGluIHp1ZW5kZXQgZGllIEtlcnplbiBhbiB1bmQgZXJzY2hhZmZ0IHNvIGVpbmUgcm9tYW50aXNjaGUgQXRtb3NwaGFlcmUKUWl0ZXNzIG1hY2h0IGVpbmUgbWFnaXNjaGUgQmV3ZWd1bmcuClFpdGVzcyB2ZXJ6YXViZXJ0IERpY2guIER1IGthbm5zdCBuaWNodCBhbmRlcnMsIER1IG11c3N0IGlociBpbiBkaWUgR2lsZGUgCmZvbGdlbi4KRXMgd2lyZCB3aWVkZXIgaGVsbGVyLgpFcyB3aXJkIHdpZWRlciBoZWxsZXIuClFpdGVzcyBiYXV0IHNpY2ggdm9yIERpciBhdWYgdW5kIHNjaGF1dCBEaWNoIGdyaW1taWcgYW4uLgpQbGFwcGVybWF1bCBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIFFpdGVzcyAuLi4KU2NocmVpaGFscyBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIFFpdGVzcyAuLi4KRmVzdGluIG5pbW10IGVpbiBLaXNzZW4uCkVzIHdpcmQgd2llZGVyIGhlbGxlci4KU2NocmVpaGFscyBrcmFlY2h6dDogLi4uIG5lIFJ1ZXN0dW5nIGlzdCAuLi4gbmFndXQuIDstKSAuLi4ga3Jycm9vYWFhIQpFcyB3aXJkIHdpZWRlciBoZWxsZXIuCk1hcnN0IHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBRaXRlc3MuClFpdGVzcyBzZXR6dCBzaWNoIGF1ZiBlaW4gbGllZ2VuZ2VibGllYmVuZXMgS2lzc2VuIHVuZCBrbnVkZGVsdCBtaXQgRmVzc2kKRmVzdGluIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBRaXRlc3MuCkVzIHdpcmQgd2llZGVyIGhlbGxlci4KRXMgd2lyZCB3aWVkZXIgaGVsbGVyLgpRaXRlc3Mgd2lyZnQgZWluIEtpc3NlbiBuYWNoIEZlc3Rpbi4KU2NocmVpaGFscyBrcmFlY2h6dDogLi4uIGljaCBoYWJlIGVpbmVuOyBsZWVyZW4uIC4uLiBrcnJyb29hYWEhCkZlc3RpbiBuaW1tdCBlaW4gS2lzc2VuLgpRaXRlc3Mgd2lyZnQgZWluIEtpc3NlbiBuYWNoIEZlc3Rpbi4KUWl0ZXNzIG5pbW10IGVpbmUgS2VyemVuLgpFcyB3aXJkIHdpZWRlciBoZWxsZXIuCkZlc3RpbiBsYWVzc3QgZGllIHJvc2FuZSBMaWNodGt1Z2VsIGZhbGxlbi4KCgoKU28sIGRhcyB3YXJzIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcsIGFybWVyIEFzbW9kaXMgOikgKEdhc3Q1LCAgNC4gSmFuIDE5OTcsIDIwOjQxOjM3KToKW0FsbGdlbWVpbjpHYXN0M10gd2llIGtvbW1lIGljaCBpbnMgcmVnZW5ib2dlbj8KR2FzdDQga29tbXQgYW4uCkdhc3Q0IGdlaHQgbmFjaCBOb3JkZW4uCi1hIGdsZWl0ZSByZWdlbmJvZ2VuCltBbGxnZW1laW46QmVyZ2xpbl0gZ2xlaXRlIHJlZ2VuYm9nZW4KPiBbQWxsZ2VtZWluOlNhdGFuYXNdIG1pdCB0ZWxuZXQKW1RvZDpMYXJzXSBFaW5lIFNjaGF0dGVuZnJhdSBoYXQgZ2VyYWRlIFNhdGFuYXMgdW1nZWJyYWNodC4KW0FsbGdlbWVpbjpHYXN0M10gd2VsY2hlciBiZWZlaGw/CltBbGxnZW1laW46R2FzdDVdIERhcyBnaW5nIGFiZXIgc2NobmVsbCwgU2F0YW5hcy4gOi0pCgogKnNjaG51ZWZmKiAgICAgICAgICBCZXJnY2hlbiBhZWVoIERpbmdlbnMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvaGVyIHd1c3N0ZSBzaWUgZGFzPyAoQ2FyYWRocmFzLCAgNS4gSmFuIDE5OTcsIDE5OjU1OjM3KToKW0FsbGdlbWVpbjpBcmllbl0gdXV1dW5kIHRzY2h1ZXNzCltUb2Q6TGFyc10gRWluIFphdG9uZyBoYXQgZ2VyYWRlIFdvbGZzYmx1dCB1bWdlYnJhY2h0LgoKKnN0YXVuKiA6KSAgIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbmUgZ2FueiBub3JtYWxlIFBhcnR5IChCZW5kZWlnaWQsICA2LiBKYW4gMTk5NywgMTA6NTk6MDcpOgp+IyEgcm49QXNtb2RpcyBydD04NTIzMTY2ODkgcmc9c2NobWFycm4KfiMhIHRpZD04NTIzMTY2ODkKdW5kIHdhcyB3YXIgZGFyYW4gbHVzdGlnPyBkZXIgc2Nyb2xsPyBvZGVyIGRpZSBkcmVpIHplaWxlbiwgd28gZGllIGhhdXN0aWVyZQp3YXMgc2FnZW4/CkJlbiwgaHVtb3Jsb3MgdW5kIGdlbmF1IHdpc3NlbmQsIHdpZXNvIGVyIG5pY2h0IGluIGRpZSBOYWVoZSBkZXMgUGFydHltb25zdGVycwpnZWh0LgoqZ3JpbioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlaWEuLi4gd2VubiBTcGllbGVyIHNpY2ggZWlubG9nZ2VuLi4uIChDaGVhc3ksICA2LiBKYW4gMTk5NywgMTE6MjM6NDIpOgpHdWxEdWthdCBiZXRyaXR0IGRpZXNlIFdlbHQuCkZhbnRhYmFieSBmbGF0dGVydCBoZXJlaW4uCkd1bER1a2F0IGJlc2Nod29lcnQgZWluZW4gQmxpdHogdm9tIEhpbW1lbC4KRmFudGFiYWJ5IGZhZWxsdCB0b3QgenUgQm9kZW4uCkZhbnRhYmFieSBoYXV0IGFiLgpFaW5lIExlaWNoZSB3aXJkIHZvbiBHdWxEdWthdCB2b2xsIEhpbmdlYnVuZyB2ZXJzcGVpc3QuCltBbGxnZW1laW46R3VsRHVrYXRdIG1vaW4KCi1DaGVhc3kKLi4ubW9lY2h0ZSBuaWUgdW50ZXIgR3VsJ3MgRnVlc3NlIGdlcmF0ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VpYS4uLiB3ZW5uIFNwaWVsZXIgc2ljaCBlaW5sb2dnZW4uLi4gKFBhdHJ5biwgIDYuIEphbiAxOTk3LCAxMToyNToxNyk6Cn4jISBybj1DaGVhc3kgcnQ9ODUyNTQ2MjIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUyNTQ2MjIyCm9vcHMuLi4uZXIgaGF0cyBpbW1lciBub2NoIG5pY2h0IGdlbGVybnQgOikKaWNoIGRhY2h0ZSwgZGllIHNhY2hlIG1pdCBkZW0ga2lsbHNjcmlwdCB3YWVyIG51biBlbmRsaWNoIGVybGVkaWd0Li4uCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbmUgZ2FueiBub3JtYWxlIFBhcnR5IChBc21vZGlzLCAgNi4gSmFuIDE5OTcsIDExOjI1OjU0KToKfiMhIHJuPUJlbmRlaWdpZCBydD04NTI1NDQ3NDcgcmc9c2NobWFycm4KfiMhIHRpZD04NTIzMTY2ODkKQWVoLCB3aWVzbyBsdXN0aWc/IHdlbm4gZXMgbHVzdGlnIHNlaW4gc29sbCwgZGFubiBoYWV0dGUgaWNoIGVzCnVudGVyICd3aXR6ZScgYWJnZXNjaGlja3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdpbGRlbi5rYWVtcGZlciAoQmVydGgsICA3LiBKYW4gMTk5NywgMTc6MjU6NDQpOgpIaWVyIGRlciBlaW5kZXV0aWdlIEJld2VpcywgZGFzcyBCZXJ0aCBkZXIgYmVzdGUgYWxsZXIgS2FlbXBmZXIgaXN0LCBlZ2FsCndhbm4gdW5kIHdvISA7KSkpCgoKRHUgYmVmaW5kZXN0IERpY2ggaW4gZWluZXIga2xlaW5lbiBLYXBlbGxlLCBpbiBkZXIgRHUgYmV0ZW4ga2FubnN0LCB1bQp3aWVkZXIgRGVpbmUgbmF0dWVybGljaGUgR2VzdGFsdCB6dSBlcmhhbHRlbi4gQW0gc3VlZGxpY2hlbiBFbmRlIHN0ZWh0CmVpbiBBbHRhciwgYXVmIGRlbSBzaWNoIGVpbiBncm9zc2VzIEtyZXV6IGJlZmluZGV0LiBJbiBkZW4gV2FlbmRlbiBzaWVoc3QKRHUgaGVycmxpY2hlIEZlbnN0ZXIsIGR1cmNoIGRpZSB0YWdzdWViZXIgZGFzIExpY2h0IGJ1bnQgaGVyZWluc2NoZWludC4KSW0gTm9yZGVuIGJlZmluZGV0IHNpY2ggZWluZSBUdWVyLCBkaWUgenVyIEdpbGRlIGZ1ZWhydC4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG5vcmRlbi4KTWlsYW1iZXIgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlci4KWm90YSBkaWUgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyaW4uCkx5bmJyb29rIGRpZSBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXJpbi4KSGlja3VwIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuCkx3YXhhbmEgZGllIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlcmluLgpCZXJ0aCBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyLgpIbWhtaG1obSBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyLgpEdVN0aXJic3QgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlci4KTm9jaGVpbmVyIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuCkFoaGhoaGhoIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuCk11ZEdvdHQgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlci4KVGV1ZmVsZWluIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuCkthc2Rqc2RramggZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlci4KQXRveiBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyLgo+IE11ZEdvdHQgc2FndDogV2lsbGtvbW1lbiBoaWVyIGluIG1laW5lbSBuZXVlbiBNdWQgQWt0ZS14IQpNdWRHb3R0IGdyaW5zdCBkcmVja2lnIGZlaWdlIHVuZCBnZW1laW4uCk11ZEdvdHQgc2FndDogSWNoIGZyZXVlIG1pY2ggc2llIGhldXRlIHp1IGRlciBTdXBlcm1ldHplbHBhcnR5IHp1CmJlZ3J1ZXNzZW4hClRldWZlbGVpbiBqdWJlbHQuCk5vY2hlaW5lciBmcmV1dCBzaWNoLgpLYXNkanNka2poIHRhbnp0IGRlbiBFbnRlbnRhbnouCkR1U3RpcmJzdCBncmluc3QuCkhtaG1obWhtIGlzdCBlcnN0YXVudC4KSGlja3VwIGZyZXV0IHNpY2guCkF0b3ogc2FiYmVydCBhdWYgZGVuIEJvZGVuLgpNdWRHb3R0IHNhZ3Q6IFdpZSBpY2ggc2VoZSBrb2VubnQgaWhyIGVzIGthdW0gZXJ3YXJ0ZW4gdWViZXJlaW5hbmRlcgpNdWRHb3R0IHNhZ3Q6IGhlcnp1ZmFsbGVuLgpNdWRHb3R0IGxhY2h0IGZpZXMuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBBdG96LgpNdWRHb3R0IHNhZ3Q6IEtvbW0genVydWVjayBBdG96ISEhCkF0b3ogd2VpbHQgd2llZGVyIHVudGVyIGRlbiBMZWJlbmRlbi4KTXVkR290dCBncnVtbWVsdC4KTXVkR290dCBzYWd0OiBCZXNzZXIgc28hISEKQXRveiBzYWd0OiB3YXMgc29sbCBkYXMsIGljaCB3aWxsIG1pdGtpbGxlbiEKTXVkR290dCB0YWV0c2NoZWx0IEF0b3ogZGVuIEtvcGYuCk11ZEdvdHQgc2FndDogU28gZGVubiBtYWNodCBldWNoIGJlcmVpdCEKTXVkR290dCBzYWd0OiBBbGxlcyBob2VydCBhdWYgbWVpbmVuIEJlZmVobCEKTXVkR290dCBzYWd0OiBBdWYgZGllIFBsYWV0emUhCk11ZEdvdHQgc2FndDogRmVydGlnIQpNdWRHb3R0IHNhZ3Q6IExvcyEKCgpbLi4uLi4uaXJyZSBNZXR6dGVsZWkgdW5kIFNjcm9sbC4uLi4uLl0KCkZvbGdlbmRlIFRvZG1lbGR1bmdlbiB3YXJlbiB6d2lzY2hlbiBvYmlnZW0gdW5kIGRlbSBFbmRlOgoKW1RvZDpMYXJzXSBEdVN0aXJic3QgaGF0IGdlcmFkZSBNdWRnb3R0IHVtZ2VicmFjaHQuIDwyMDoyOTo0MD4KW1RvZDpMYXJzXSBNaWxhbWJlciBoYXQgZ2VyYWRlIEF0b3ogdW1nZWJyYWNodC4gPDIwOjI5OjQ0PgpbVG9kOkxhcnNdIEx3YXhhbmEgaGF0IGdlcmFkZSBEdXN0aXJic3QgdW1nZWJyYWNodC4gPDIwOjI5OjUwPgpbVG9kOkxhcnNdIEx3YXhhbmEgaGF0IGdlcmFkZSBMeW5icm9vayB1bWdlYnJhY2h0LiA8MjA6Mjk6NTY+CltUb2Q6TGFyc10gSG1obWhtaG0gaGF0IGdlcmFkZSBLYXNkanNka2poIHVtZ2VicmFjaHQuIDwyMDoyOTo1Nj4KW1RvZDpMYXJzXSBIaWNrdXAgaGF0IGdlcmFkZSBNaWxhbWJlciB1bWdlYnJhY2h0LiA8MjA6Mjk6NTY+CltUb2Q6TGFyc10gTm9jaGVpbmVyIGhhdCBnZXJhZGUgWm90YSB1bWdlYnJhY2h0LiA8MjA6MzA6MDY+CltUb2Q6TGFyc10gQWhoaGhoaGggaGF0IGdlcmFkZSBOb2NoZWluZXIgdW1nZWJyYWNodC4gPDIwOjMwOjEyPgpbVG9kOkxhcnNdIEJlcnRoIGhhdCBnZXJhZGUgTHdheGFuYSB1bWdlYnJhY2h0LiA8MjA6MzA6MjA+CltUb2Q6TGFyc10gSGlja3VwIGhhdCBnZXJhZGUgQWhoaGhoaGggdW1nZWJyYWNodC4gPDIwOjMwOjI0PgpbVG9kOkxhcnNdIEJlcnRoIGhhdCBnZXJhZGUgSG1obWhtaG0gdW1nZWJyYWNodC4gPDIwOjMwOjM4PgpbVG9kOkxhcnNdIEhpY2t1cCBoYXQgZ2VyYWRlIFRldWZlbGVpbiB1bWdlYnJhY2h0LiA8MjA6MzA6NDI+CltUb2Q6TGFyc10gQmVydGggaGF0IGdlcmFkZSBIaWNrdXAgdW1nZWJyYWNodC4gPDIwOjMwOjUyPgoKRHUgYmVmaW5kZXN0IERpY2ggaW4gZWluZXIga2xlaW5lbiBLYXBlbGxlLCBpbiBkZXIgRHUgYmV0ZW4ga2FubnN0LCB1bQp3aWVkZXIgRGVpbmUgbmF0dWVybGljaGUgR2VzdGFsdCB6dSBlcmhhbHRlbi4gQW0gc3VlZGxpY2hlbiBFbmRlIHN0ZWh0CmVpbiBBbHRhciwgYXVmIGRlbSBzaWNoIGVpbiBncm9zc2VzIEtyZXV6IGJlZmluZGV0LiBJbiBkZW4gV2FlbmRlbiBzaWVoc3QKRHUgaGVycmxpY2hlIEZlbnN0ZXIsIGR1cmNoIGRpZSB0YWdzdWViZXIgZGFzIExpY2h0IGJ1bnQgaGVyZWluc2NoZWludC4KSW0gTm9yZGVuIGJlZmluZGV0IHNpY2ggZWluZSBUdWVyLCBkaWUgenVyIEdpbGRlIGZ1ZWhydC4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG5vcmRlbi4KRGllIExlaWNoZSBIaWNrdXBzLgpEaWUgTGVpY2hlIFRldWZlbGVpbnMuCkRpZSBiZXJlaXRzIHppZW1saWNoIHN0aW5rZW5kZSBMZWljaGUgSG1obWhtaG1zLgpEaWUgYmVyZWl0cyB6aWVtbGljaCBzdGlua2VuZGUgTGVpY2hlIEFoaGhoaGhocy4KRGllIGJlcmVpdHMgemllbWxpY2ggc3RpbmtlbmRlIExlaWNoZSBMd2F4YW5hcy4KRGllIGJlcmVpdHMgemllbWxpY2ggc3RpbmtlbmRlIExlaWNoZSBOb2NoZWluZXJzLgpEaWUgc2NoaW1tZWxuZGUgdW5kIGhhbGJ2ZXJ3ZXN0ZSBMZWljaGUgWm90YXMuCkRpZSBzY2hpbW1lbG5kZSB1bmQgaGFsYnZlcndlc3RlIExlaWNoZSBNaWxhbWJlcnMuCkRpZSBzY2hpbW1lbG5kZSB1bmQgaGFsYnZlcndlc3RlIExlaWNoZSBLYXNkanNka2pocy4KRGllIHNjaGltbWVsbmRlIHVuZCBoYWxidmVyd2VzdGUgTGVpY2hlIEx5bmJyb29rcy4KRGllIHNjaGltbWVsbmRlIHVuZCBoYWxidmVyd2VzdGUgTGVpY2hlIER1U3RpcmJzdHMuCkRpZSBzY2hpbW1lbG5kZSB1bmQgaGFsYnZlcndlc3RlIExlaWNoZSBBdG96Jy4KRGllIHZlcmZhdWx0ZW4gRWluemVsdGVpbGUgTXVkR290dHMuCkJlcnRoIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuCkR1IHNhZ3N0OiBVbSBtaWNoIGhlcnVtIGxpZWdlbiBkaWUgTGVpY2hlbiB1bmQgbnVyIEJlcnRoIGRlciBlaW56aWcgd2FocmUKTXVkR290dCBrb21tdCBhbi4KQmVydGgganViZWx0LgpCZXJ0aCB0YW56dCBkZW4gRW50ZW50YW56LgpBdG96IGtvbW10IGFuLgpEdVN0aXJic3Qga29tbXQgYW4uCk11ZEdvdHQgZXJzY2hlaW50IGluIGtvZXJwZXJsaWNoZXIgRm9ybS4KTHluYnJvb2sga29tbXQgYW4uCkthc2Rqc2Rramgga29tbXQgYW4uCk1pbGFtYmVyIGtvbW10IGFuLgpNdWRHb3R0IHNhZ3Q6IFNvIGRlbm4hClpvdGEga29tbXQgYW4uCkR1IHNhZ3N0OiBVbmQgaGllciBrb21tZW4gc2llLCBkaWUgZ2VzY2hsYWdlbmVuIGFuZGVyZW4gS2FlbXBmZXIKPiBOb2NoZWluZXIga29tbXQgYW4uCkx3YXhhbmEga29tbXQgYW4uCkR1IHNhZ3N0OiBoYWJ0IElociB2aWVsbGVpY2h0IGV0d2FzIHp1IHNhZ2VuPwo+IEFoaGhoaGhoIGtvbW10IGFuLgpLYXNkanNka2poIGVyc2NoZWludCBpbiBrb2VycGVybGljaGVyIEZvcm0uCkhtaG1obWhtIGtvbW10IGFuLgpUZXVmZWxlaW4ga29tbXQgYW4uCk5vY2hlaW5lciBlcnNjaGVpbnQgaW4ga29lcnBlcmxpY2hlciBGb3JtLgpUZXVmZWxlaW4gZXJzY2hlaW50IGluIGtvZXJwZXJsaWNoZXIgRm9ybS4KQWhoaGhoaGggZXJzY2hlaW50IGluIGtvZXJwZXJsaWNoZXIgRm9ybS4KSG1obWhtaG0gZXJzY2hlaW50IGluIGtvZXJwZXJsaWNoZXIgRm9ybS4KRHVTdGlyYnN0IGVyc2NoZWludCBpbiBrb2VycGVybGljaGVyIEZvcm0uCkhpY2t1cCBrb21tdCBhbi4KRHUgc2Fnc3Q6IEJlcnRoIGxhc3NlbiB3aXIgc2ljaCBlcnN0IGVpbm1hbCBlcmhvbGVuLCBzY2hsaWVzc2xpY2ggaXN0IGVyCm5vY2gKRHUgc2Fnc3Q6IGV0d2FzIGF1c3NlciBBdGVtIHZvbiBzZWluZXIgZ3Jvc3NhcnRpZ2VuIExlaXN0dW5nIQpCZXJ0aCBzY2huYXVmdCB2b3IgQW5zdHJlbmd1bmcuCk11ZEdvdHQgc2FndDogSGllcm1pdCBlcmtsYWVyZSBpY2ggQmVydGgsIGRlbiB0YXBmZXJlbiBLYWVtcGZlciB6dW0KTXVkR290dCBzYWd0OiBlaHJlbnZvbGxlbiBHZXdpbm5lciBkaWVzZXMgVHVybmllcmVzISBHcmF0dWxpZXJlICEhIQpNdWRHb3R0IHZlcm5laWd0IHNpY2ggdm9yIEJlcnRoLgpCZXJ0aCB2ZXJuZWlndCBzaWNoIGFubXV0aWcuCkthc2Rqc2RramggdmVybmVpZ3Qgc2ljaCB2b3IgQmVydGguClRldWZlbGVpbiB2ZXJuZWlndCBzaWNoIHZvciBCZXJ0aC4KTm9jaGVpbmVyIHZlcm5laWd0IHNpY2ggdm9yIEJlcnRoLgpBaGhoaGhoaCB2ZXJuZWlndCBzaWNoIHZvciBCZXJ0aC4KSG1obWhtaG0gdmVybmVpZ3Qgc2ljaCB2b3IgQmVydGguCkR1U3RpcmJzdCB2ZXJuZWlndCBzaWNoIHZvciBCZXJ0aC4KQmVydGggZnJldXQgc2ljaC4KCgpTbyBrYW5ucyBnZXNjaGVoZW4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bmQgVHNjaHVlc3MgISAoSmFuaWNlLCAgNy4gSmFuIDE5OTcsIDIwOjMwOjIxKToKCmViZW4gaW0gRHNjaHVuZ2VsOgpaZXBoeXIgZ2lidCBEaXIgZGllIEt1Z2VsLgoKaWNoIGhhYnMgaW1tZXIgZ2V3dXNzdDogaXJnZW5kd2FubiBtdXNzIGljaCBkcmFuIGdsYXViZW4gOikKSmFuaWNlLCB0b3RnZXdlaWh0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBTVRMSUNIRSBCRUtBTk5UTUFDSFVORyAoRnl0LCAgNy4gSmFuIDE5OTcsIDIzOjM4OjM1KToKfiMhIHJuPUJvaW5nIHJ0PTg1MjMwMjE4NCByZz1zY2htYXJybgp+IyEgdGlkPTg1MTk4MDQ2NwoKRWluZGV1dGlnIE5vdHdlaHIuCgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVzIFRhZ2VzIChDYXJhZGhyYXMsICA4LiBKYW4gMTk5NywgMTA6MjI6MDApOgpbU2VoZXI6Q2FyYWRocmFzXSB2ZXJnaXNzIGVzLCBlcyBjcmFzaHQgc28gc2NobmVsbCwgZHUga29tbXN0IHNvd2llc28gbmljaHQKW1NlaGVyOkNhcmFkaHJhc10gaGluLCBGYWd1cwo+IFtBbGxnZW1laW46VHp1aW9wXSB3YXMgaXN0IGxvcyA/IEhhdCBkYSBqZW1hbmQgZmx1Y2h0cmljaHR1bmcgcmVib290CltBbGxnZW1laW46VHp1aW9wXSBlaW5nZXN0ZWxsdCA/Pz8KW0FsbGdlbWVpbjpBbmRyZXNdIHVuZCBnbGVpY2ggbm9jaG1hbHMKQXJhbW9zIHRlaWx0IERpciBtaXQ6IEdsYXVic3QgZHUsIGRhcyBoYWVsdCBqZXR6dD8gOikKQWxpbmUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKJSBDb25uZWN0aW9uIHRvICh1bm5hbWVkMSkgY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KLS0tLSBObyB3b3JsZCAtLS0tCmFyYW0gTWFsIHNjaGF1ZW4sIHZpZWxsZWljaHQgaGFlbHRzIGphIG1laHIgYWxzIDUgTWludXRlbiwgYWJlciBlaW4gcGFhciAKU3R1bmRlbiBiZXN0aW1tdCBuaWNodAoKICAgICpzZXVmeiogSWNoIHNvbGx0ZSBtZWluZW4gVGl0ZWwgJ2RlciBld2lnZSBQcm9waGV0JyB3b2hsIGVoZXIgYW4KICAgIEFuZHJlcyBhYmdlYmVuCgogICAgICAgICAgICAgICAgIFJvdGhvcm4gQ2FyYWRocmFzIEJhcmF6aW5iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZW5mIE1pbnV0ZW4gc3BhZXRlciAuLi4gKENhcmFkaHJhcywgIDguIEphbiAxOTk3LCAxMDozMzoxNik6CltBbGxnZW1laW46TW9yZ2FyXSBOYSBqYSwgaGF0IGphIG5vY2ggMyBNaW51dGVuLiA+Oi0pCltBbGxnZW1laW46Q2FyYWRocmFzXSAnTm9jaCBsZWJlIGljaCBqYScsIHNhZ3RlIGRlciBNYW5uLCBkZXIgYXVzIGRlbSAxMHRlbgpbQWxsZ2VtZWluOkNhcmFkaHJhc10gU3RvY2sgZmllbCwgYXVmIGRlciBIb2VoZSBkZXMgZXJzdGVuIFN0b2Nrcwo+IFtBbGxnZW1laW46TW9yZ2FyIGdyaW5zdC5dCltBbGxnZW1laW46RnJvZ2h1bnRlcl0gRWluIGJpc2NoZW4gTmVydmVua2l0emVsIC4uLgo+IFtBbGxnZW1laW46TW9yZ2FyXSBCb2FoLiBTbyB3ZWl0IHdhciBpY2ggaGV1dGUgbm9jaCBuaWNodCBhdWYgZGVyCkZlbHNydXRzY2hlLgo+IFtBbGxnZW1laW46QWxpbmVdIEdld2lubiBpY2ggbnVuIG1laW4gR2VsZD8KW0FsbGdlbWVpbjpNb3JnYXJdIDEgTWludXRlIG5vY2guIFNpZWh0IHNvIGF1cy4KQ2VsZWJkaWwgcnVmdDogU2VuZ2FhYWFhamFhYWFhYWFhISEgUmVlZWVlYm9vb29vb29vb3QgOikKR29yb2cgcnVmdDogbGFzcyBkYXMgbWFsIHNjaG9lbiBibGVpYmVuCiUgQ29ubmVjdGlvbiB0byAodW5uYW1lZDEpIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCi0tLS0gTm8gd29ybGQgLS0tLQoKICAgICAgICAgICAgICAgICAgICAgICBIYXJyeSBIdWVyc2NoLCBsaWZlIHZvbiBkZXIgRnJvbnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZCBub2NoICduZSBNaW51dGUgc3BhZXRlci4uLiAoQ2FyYWRocmFzLCAgOC4gSmFuIDE5OTcsIDEwOjMzOjM1KToKW0FsbGdlbWVpbjpZYW50cm9dIE1vcmdhciB3YXIgZXJzdGVyCj4gW0FsbGdlbWVpbjpGcm9naHVudGVyXSBOYSBqYSwgZGllIEludGVydmFsbGUgd2VyZGVuIGVydHJhZWdsaWNoZXIgISA7KQpbQWxsZ2VtZWluOkRlcmVrXSBJY2ggZnJhZ2UgbWljaCwgd2FubiBkYXMgU3lzdGVtIHdpZWRlciBzdGFiaWwgd2lyZC4KJSBDb25uZWN0aW9uIHRvICh1bm5hbWVkMSkgY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KLS0tLSBObyB3b3JsZCAtLS0tCgoKICAgV2VyIGZyYWd0IHNpY2ggZGFzIG5pY2h0ICAgICAgICAgICAgICAgICAgQmVyZ2NoZW4gQ2FyYWRocmFzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BydWNoIGRlcyBUYWdlcyAoUGFtcGVycywgIDguIEphbiAxOTk3LCAxMDo1MDoxOCk6Cn4jISBybj1DYXJhZGhyYXMgcnQ9ODUyNzE1MzIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUyNzE1MzIwCkVzIGlzdCBub2NoIHZpZWwgc2NobGltbWVyOgoKPiBubiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpSdWJyaWsgNDM6IHNjaG1hcnJuLCBBcnRpa2VsOiAxMCB2b24gMTIKU3BydWNoIGRlcyBUYWdlcyAoQ2FyYWRocmFzLCAgOC4gSmFuIDE5OTcsIDEwOjIyOjAwKToKCltTZWhlcjpDYXJhZGhyYXNdIHZlcmdpc3MgZXMsIGVzIGNyYXNodCBzbyBzY2huZWxsLCBkdSBrb21tc3Qgc293aWVzbyBuaWNodApbU2VoZXI6Q2FyYWRocmFzXSBoaW4sIEZhZ3VzCj4gW0FsbGdlbWVpbjpUenVpb3BdIHdhcyBpc3QgbG9zID8gSGF0IGRhIGplbWFuZCBmbHVjaHRyaWNodHVuZyByZWJvb3QKW0FsbGdlbWVpbjpUenVpb3BdIGVpbmdlc3RlbGx0ID8/PwpbQWxsZ2VtZWluOkFuZHJlc10gdW5kIGdsZWljaCBub2NobWFscwpBcmFtb3MgdGVpbHQgRGlyIG1pdDogR2xhdWJzdCBkdSwgZGFzIGhhZWx0IGpldHp0PyA6KQpBbGluZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQolIENvbm5lY3Rpb24gdG8gKHVubmFtZWQxKSBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgotLS0tIE5vIHdvcmxkIC0tLS0KYXJhbSBNYWwgc2NoYXVlbiwgdmllbGxlaWNodCBoYWVsdHMgamEgbWVociBhbHMgNSBNaW51dGVuLCBhYmVyIGVpbiBwYWFyIApTdHVuZGVuIGJlc3RpbW10IG5pY2h0CgogICAgKnNldWZ6KiBJY2ggc29sbHRlIG1laW5lbiBUaXRlbCAnZGVyIGV3aWdlIFByb3BoZXQnIHdvaGwgZWhlciBhbgogICAgQW5kcmVzIGFiZ2ViZW4KCiAgICAgICAgICAgICAgICAgUm90aG9ybiBDYXJhZGhyYXMgQmFyYXppbmJhcgo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKJSBDb25uZWN0aW9uIHRvIG1ncCBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgotLS0tIE5vIHdvcmxkIC0tLS0KCgpQYW1wZXJzLiBJc3QgZGEgZmFzdCBhdXMgZGVtIFJlY2huZXJyYXVtIGdlZmxvZ2VuIHZvciByb3RmbG4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BydWNoIGRlcyBUYWdlcyAoQXNtb2RpcywgIDguIEphbiAxOTk3LCAxMToxMjoyNik6Cn4jISBybj1DYXJhZGhyYXMgcnQ9ODUyNzE1MzIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUyNzE1MzIwCkFsaW5lIGlzdCBzY2h1bGQgPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBiZWkgTG9md3lyIChTbHlmb3gsICA4LiBKYW4gMTk5NywgMTc6MTc6NTMpOgoKZW5kZQo+IExvZnd5ciBicmF1Y2h0IGRyaW5nZW5kIGVpbmVuIEFyenQuCiAgRHUgZ3JlaWZzdCBMb2Z3eXIgbWl0IGVpbmVtIGdlbHVuZ2VuZW4gU290by1zaHV0by11Y2hpIGFuLgogIER1IHRyaWZmc3QgTG9md3lyIGhhcnQuCiAgTG9md3lyIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gZWlzaWdlbiBPZGVtIGFuLgogIExvZnd5ciB0cmlmZnQgRGljaCBoYXJ0LgpEdSBoYXN0IGpldHp0IDc2IExlYmVuc3B1bmt0ZSB1bmQgMCBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCA3NyBMZWJlbnNwdW5rdGUgdW5kIDEgTWFnaWVwdW5rdGUuCkxvZnd5ciBicmF1Y2h0IGRyaW5nZW5kIGVpbmVuIEFyenQuCkR1IGhhc3QgamV0enQgNzcgTGViZW5zcHVua3RlIHVuZCAwIE1hZ2llcHVua3RlLgogIER1IGdyZWlmc3QgTG9md3lyIG1pdCBlaW5lbSBnZWx1bmdlbmVuIFNvdG8tc2h1dG8tdWNoaSBhbi4KICBEdSB0cmlmZnN0IExvZnd5ciBoYXJ0LgogIExvZnd5ciBncmVpZnQgRGljaCBtaXQgc2VpbmVtIGVpc2lnZW4gT2RlbSBhbi4KICBEdSB3ZWljaHN0IGRlbSBBbmdyaWZmIGF1cy4KICBMb2Z3eXIgdmVyZmVobHQgRGljaC4KTG9md3lyIGJyYXVjaHQgZHJpbmdlbmQgZWluZW4gQXJ6dC4KICBEdSBncmVpZnN0IExvZnd5ciBtaXQgZWluZW0gZ2VsdW5nZW5lbiBTb3RvLXNodXRvLXVjaGkgYW4uCiAgRHUgdHJpZmZzdCBMb2Z3eXIgc2VociBoYXJ0LgpMb2Z3eXIgaHVlbGx0IERpY2ggaW4gZWluZW4gRWlzYmFsbC4KICBMb2Z3eXIgc2NobGFlZ3QgRGljaCB6dSBCcmVpLgpEdSBoYXN0IGpldHp0IDI0IExlYmVuc3B1bmt0ZSB1bmQgMCBNYWdpZXB1bmt0ZS4KICBMb2Z3eXIgZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbSBlaXNpZ2VuIE9kZW0gYW4uCiAgTG9md3lyIHNjaGxhZWd0IERpY2ggbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KRHUgaGFzdCBqZXR6dCAzIExlYmVuc3B1bmt0ZSB1bmQgMCBNYWdpZXB1bmt0ZS4KU3BlaWNoZXJlIFNseWZveC4KQmlzIGJhbGQhCkNsb3NpbmcgZG93bi4KJSBDb25uZWN0aW9uIHRvIHNseWZveCBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgoKVWloLCBoYXR0ZSBpY2ggbWFsIHdpZWRlciBlaW5lbiBEdXNlbCEgOykKCiAgU2x5Zm94CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbmV1bGljaCBiZWkgTG9md3lyIChNdXBmZWwsICA4LiBKYW4gMTk5NywgMTc6MzA6NDEpOgp+IyEgcm49U2x5Zm94IHJ0PTg1Mjc0MDI3MyByZz1zY2htYXJybgp+IyEgdGlkPTg1Mjc0MDI3MwpIbS4uLi4gdmllbGxlaWNodCBzb2xsdGUgaWNoIExvZnd5ciBuZW4gVG9kZXNzdG9zcyBvZGVyIHNvd2FzIHNwZW5kaWVyZW4uLi4Ka2FubiBqYSBuaWNodCBhbmdlaGVuLCBkYXNzIFNseSBpbW1lciBlbnR3aXNjaHQgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sICA4LiBKYW4gMTk5NywgMTg6MjM6MDMpOgoiTWFuIGthbm4gbmljaHQgdm9yc2ljaHRpZyBnZW51ZyBzZWluIGluIGRlciBXYWhsIHNlaW5lciBFbHRlcm4uIiAoSC4KUG9udG9wcGlkYW4pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaGVpZHVuZyAoU3VuZmxvd2VyLCAgOC4gSmFuIDE5OTcsIDE4OjU1OjU0KToKQW4gYWxsZSBHZWxpZWJ0ZW4gdm9uIERpZGk6CgpFciBpc3Qgd2llZGVyIHp1IGhhYmVuLCBkaWVzZXIgU2NodWZ0IGRpZXNlciBFaGVicmVjaGVyIGRpZXNlciAqemVuc2llcnQqCgpJY2ggaGFiZSBkaWUgU2NoZWlkdW5nIGVpbmdlcmVpY2h0IHVuZCBzaWUgaXN0IGF1Y2ggdm9sbHpvZ2VuLgoKClN1bmZsb3dlciAuIG8gTyAoc29sbHRlIGRhcyBuaWNodCBuYWNoIGFuemVpZ2VuID8gOikgKQoKICAgICAgICAgICAgICAgICAgICAtLT09PSBibHVlbWNoZW4gPT09LS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTY2hlaWR1bmcgKEdyaW1tYm9ybiwgIDguIEphbiAxOTk3LCAxODo1Nzo1Nik6Cn4jISBybj1TdW5mbG93ZXIgcnQ9ODUyNzQ2MTU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUyNzQ2MTU0CkRhbmtlIGZ1ZXIgZGllIFdhcm51bmcuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3Qgd2V0enQgZGllIE1lc3NlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHlkcmEgKFNseWZveCwgIDguIEphbiAxOTk3LCAyMjo1MDoxNCk6CltBbGxnZW1laW46U2x5Zm94XSBKZW1hbmQgYW4gZGVyIEh5ZHJhPwo+IFtBbGxnZW1laW46U2hhcmlhXSB6b3JybwpbVG9kOkxhcnNdIEVpbiBIeWRyYWtvcGYgaGF0IGdlcmFkZSBab3JybyB1bWdlYnJhY2h0LgpbVG9kOkVpbiBIeWRyYWtvcGZdIGhzc3Nzc3MKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpbGhlbG1zYnVyZyAoQ2F1bm8sICA5LiBKYW4gMTk5NywgMTA6MzQ6MDkpOgpCZWltIER1cmNoZm9yc3RlbiBtZWluZXMgTG9nZmlsZXMgaXN0IG1pciBkb2NoIG5vY2ggZWluZSBTYWNoZSB3aWVkZXIgaW4KRXJpbm5lcnVuZyBnZWtvbW1lbjoKCkRpZSBLYXRha29tYmVuIHZvbiBXaWxoZWxtc2J1cmcuIER1IGhhc3QgZWluIGF1c2dlc3Byb2NoZW4gc2NobGVjaHRlcyBHZWZ1ZWhsCmhpZXIgdW50ZW4uIEhpbnRlciBqZWRlciBFY2tlIGtvZW5udGUgamVtYW5kIG9kZXIgZXR3YXMgbGF1ZXJuLCBhdWYgRGljaAp3YXJ0ZW4sIERpY2ggYmVvYmFjaHRlbi4KRXMgZ2lidCBrZWluZSBzaWNodGJhcmVuIEF1c2dhZW5nZS4KRWluIEdlaXN0LgogIE9za2FyIGdyZWlmdCBEaWNoIG1pdCBnZWlzdGVyaGFmdGVuIEhhZW5kZW4gYW4uCk9za2FyIHZlcnN0YXVjaHQgc2ljaCBiZWkgZGVtIFNjaGxhZyBkaWUgSGFuZC4KICBPc2thciB0cmlmZnQgRGljaCBoYXJ0LgogIE9za2FyIGdyZWlmdCBEaWNoIG1pdCBnZWlzdGVyaGFmdGVuIEhhZW5kZW4gYW4uCk9za2FyIHZlcnN0YXVjaHQgc2ljaCBiZWkgZGVtIFNjaGxhZyBkaWUgSGFuZC4KICBPc2thciB0cmlmZnQgRGljaCBzZWhyIGhhcnQuCk5haGUgYmVpIERpciBzZXVmenQgamVtYW5kIGxlaXNlLgogIE9za2FyIGdyZWlmdCBEaWNoIG1pdCBnZWlzdGVyaGFmdGVuIEhhZW5kZW4gYW4uCk9za2FyIHZlcnN0YXVjaHQgc2ljaCBiZWkgZGVtIFNjaGxhZyBkaWUgSGFuZC4KICBPc2thciB0cmlmZnQgRGljaCBzZWhyIGhhcnQuCkR1IHNwcml0enQgSGVpbGlnZXMgV2Fzc2VyIGF1ZiBkZW4gR2Vpc3QuCk9za2FyIHZlcmdlaHQgaW4gUXVhbGVuLiBBbSBFbmRlIHNjaGVpbnQgZXIgYWJlciBlaW4gZ2Vsb2VzdGVzIExhZWNoZWxuCmF1ZiBzZWluZW0gR2VzaWNodCB6dSBoYWJlbi4KICBPc2thciBncmVpZnQgRGljaCBtaXQgZ2Vpc3RlcmhhZnRlbiBIYWVuZGVuIGFuLgpPc2thciB2ZXJzdGF1Y2h0IHNpY2ggYmVpIGRlbSBTY2hsYWcgZGllIEhhbmQuCiAgT3NrYXIgdHJpZmZ0IERpY2ggc2VociBoYXJ0LgpEdSBmaW5kZXN0IGtlaW5lbiBHZWlzdCwgZGVyIHZvciBIZWlsaWdlbSBXYXNzZXIgQW5nc3QgaGF0LgoKV2llIGJpdHRlPwoKQy4gTm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9ydHNhbmdhYmVuIChDYXVubywgIDkuIEphbiAxOTk3LCAxMjoyMDoyMSk6CltBYmVudGV1ZXI6T2hvb10gaGFsbG8gYWxsZSwgd28gdW5nZWZhZWhyIGlzdCB6d2Fja2VsbWFubnMtc2NobG9zcz8/CltBYmVudGV1ZXI6VG9iYmllbl0gc28gdm9tIGdsb2NrZW53YWxkICAgICAgICAgICAKW0FiZW50ZXVlcjpDYXVOb10gbm9lcmRsaWNoIHZvbiBkcmFjaGVuaG9ydCAgICAgICAgICAgCltBYmVudGV1ZXI6U29uamFdIHdlc3RsaWNoIHZvbiBwdiA7KSAgICAgICAgICAgCltBbGxnZW1laW46VG9iYmllbl0gYWJlciBzZWhyIHdlaXQgd2VzdGxpY2ggICAgICAgIApbQWJlbnRldWVyOkNhdU5vXSBzdWVkbGljaCB2b24gZWxmZW5kb3JmCltBYmVudGV1ZXI6U29uamFdIG5vIHZvbiBtaXJpbHMgdHVybT8KW0FiZW50ZXVlcjpDYXVOb10gc28gaW4gZXR3YQpbQWJlbnRldWVyOkNhdU5vXSBuZWluLCBkYXMgaGllc3MgTklDSFQgc3VlZG9lc3RsaWNoIQoKVmVyZC4gQWJrdWVyenVuZ2VuIC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbHRzYW1lIGdlbHVlc3RlIChMaSwgMTAuIEphbiAxOTk3LCAwODo1MTo0Mik6CkhtbSwgQWxzbyBwYXBhZ2VpbiBzaW5kIHNjaG9uIHNlbHRhbWUgVGllcmU6Ck11c2FzaGkga3JhZWNoenQ6IC4uLiBpY2ggdmVyc3VjaCBtYWwgb2JlcmdsYWRpYXRvciB6dSB3ZXJkZW4gLi4uIGtycnJvb2FhYSEKCkxpIGRlbmt0IC4gbyAwIChOYSBkYW5uIHZpZWwgU3Bhc3MhKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmxvZWRlIFRhZ3dhY2hlLi4uIChXYXJnb24sIDEwLiBKYW4gMTk5NywgMTA6MDQ6MjUpOgpFaW5lIFN0aW1tZSBlcnNjaGFsbHQ6IEVzIGlzdCAxMCBVaHIgdW5kIGFsbGVzIGlzdCBndS1odXV0ISEhCkNvbm5lY3Rpb24gY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KCmtsZWVuZTp+Cj4KCipncnVtbWVsKiwKICBXYXJnb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmViZW4gZ3JhZCAoTWFuZ28sIDEwLiBKYW4gMTk5NywgMTA6MjE6MzYpOgoKCltBbGxnZW1laW46UGh5Z29zIHNpbmd0OiIgV2llIGd1dCwgZGFzIGljaCBlaW4gS2FyYXRla2EgYmluLi4uZGVyIFd1cm0gaXN0CiAgICAgICAgICAgZHJpbm4uLi4uZGllIEF1c3J1ZXN0dW5nIGhpbi4uLi5XaWUgZ3V0LCBkYXMgaWNoIGVpbiBLYXJhdGVrYQogICAgICAgICAgIGJpbi4uLl0KCgoKTWFuZ28sIFBoeWdvcycgUmVpbWUgYmV3dW5kZXJuZC4KCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmlkbGUuLi4gKE11cGZlbCwgMTAuIEphbiAxOTk3LCAyMzo1ODoyMik6CkF1dG9tYXRpc2NoZXIgTG9nb3V0IHdlZ2VuIHp1IGxhbmdlciBJZGxlemVpdC4KRHUgemllaHN0IGRpZSBHdWVydGVsc2NobmFsbGUgYXVzLgpCaXMgYmFsZCEKQ2xvc2luZyBkb3duLgolIENvbm5lY3Rpb24gdG8gbWdtIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCi0tLS0gTm8gd29ybGQgLS0tLQoKKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGlkbGUuLi4gKEFuYXRvbCwgMTAuIEphbiAxOTk3LCAyMzo1OToxOCk6Cn4jISBybj1NdXBmZWwgcnQ9ODUyOTM3MTAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUyOTM3MTAyCgpMb2VzY2ggRGljaCBkb2NoLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBpZGxlLi4uIChSb25kYSwgMTAuIEphbiAxOTk3LCAyMzo1OToyMik6Cn4jISBybj1NdXBmZWwgcnQ9ODUyOTM3MTAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUyOTM3MTAyCkRhIHNpZWh0IG1hbnMgd2llZGVyIC0gdW5kIGlociBob2hlbiBNYWdpZXJzIGJlaGF1cHRldCBkYW5uIGF1Y2ggbm9jaCwgaWhyCnd1ZXJkZXQgYXJiZWl0ZW4sdHMgdHMgdHMgPTspCkJpcyBncmFkZSBlYmVuIGViZW5mYWxscyBpZGxlLAogICAgICAgICBSb25kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQnVtYmlib3kgbWFjaHQgZWluZW4gZHJhdWYuLi4gZGEgaGlsZnQgbnVyIGRpZSBGbHVjaHQhIChCYWJzLCAxMS4gSmFuIDE5OTcsIDAzOjMyOjM1KToKdW5nZWt1ZXJ6dDoKCkJ1bWJhc3RpY3VzIHNhZ3Q6IG5hIHVuZCBiZWkgcm9zaWUgaXN0IGRhcyBhZWhubGljaApzYWcgaGFiIGljaCBtaXIgZ2VkYWNodC4KRHUgc2Fnc3Q6IGhhYiBpY2ggbWlyIGdlZGFjaHQuCj4gQnVtYmFzdGljdXMgc2FndDogYWxzbyBmdWVyIHVucyBtYWVubmVyIG5vY2htYWwgcm9zaWUKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBWaWVsIFNwYXNzIG5vY2ghClN1c2FubmUgd2lua3QgdW5kIGdlaHQgZGF2b24uCk1heCBncnVlc3N0IHVuZCB2ZXJsYWVzc3QgZXVjaC4KUm9zaWUgd2lua3QgZXVjaCB6dS4KRGFzIFBhcnR5bW9uc3RlciByYWV1bXQgYXVmIHVuZCBlaWx0IHp1ciBuYWVjaHN0ZW4gUGFydHkuCkJ1bWJhc3RpY3VzIHNhZ3Q6IHVwcwpCdW1iYXN0aWN1cyBzYWd0OiB6dSBzcGFldApsYWNoCkR1IGJyaWNoc3Qgdm9yIExhY2hlbiB6dXNhbW1lbi4KCkRpZSBzY2hlaW5lbiBkYSBzY2hsZWNodGUgRXJmYWhydW5nZW4gbWl0IE1yTG92YWxvdmEgZ2VtYWNodCB6dSBoYWJlbi4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyd29scGllcyBzaW5kIEdFRkFFSFJMSUNIISAoUm9uZGEsIDExLiBKYW4gMTk5NywgMTg6MzE6MDQpOgpHcmlucywgbmFjaGRlbSBpY2ggbmVuIGJpc3NjaGVuIG1pdCBtZWluZW0gV29scGllIGdlc3BpZWx0IGhhYmUsIGlzdCBmb2xnZW5kZXMKcGFzc2llcnQ6CnNjaGlja2UgRGVyIFdvbHBlcnRpbmdlciB3dXNlbHQgZGF2b24uCndvbHBpZSBpbnMgYmV0dGNoZW4KRGllIFdvbHBlcnRpbmdlcmluIGtvbW10IGhlcmVpbi4KRGllIFdvbHBlcnRpbmdlcmluIHNhZ3Q6IEF1ZiBnZWh0J3MgV29scGllICEgQWIgaW5zIEJldHRjaGVuIQpFaW4gd2luemlnZXIgV29scGVydGluZ2VyIHppZWh0IGVpbiBQYWFyIHNjaHdhcnplIFNjaHVoZSBhdXMuCkRlciB3aW56aWdlIFdvbHBlcnRpbmdlciBnaWJ0IERpciBkYXMgUGFhciBzY2h3YXJ6ZSBTY2h1aGUuCkVpbiB3aW56aWdlciBXb2xwZXJ0aW5nZXIgemllaHQgZWluZSBMZWRlcnJ1ZXN0dW5nIGF1cy4KRGVyIHdpbnppZ2UgV29scGVydGluZ2VyIGdpYnQgRGlyIGRpZSBMZWRlcnJ1ZXN0dW5nLgpFaW4gd2luemlnZXIgV29scGVydGluZ2VyIHN0ZWNrdCBlaW5lbiBCbHV0c2F1Z2Vyc3RhY2hlbCB6dXJ1ZWNrLgpEZXIgd2luemlnZSBXb2xwZXJ0aW5nZXIgZ2lidCBEaXIgZGVuIEJsdXRzYXVnZXJzdGFjaGVsLgpEZXIgd2luemlnZSBXb2xwZXJ0aW5nZXIgZ2lidCBEaXIgNTAwMCBNdWVuemVuLgpEZXIgV29scGVydGluZ2VyIHNjaGx1Y2h6dDogVHNjaHVlc3MsIFRhbnRlIFJvbmRhLiBJY2ggbXVzcyBsZWlkZXIgZ2VoZW4uCkRpZSBXb2xwZXJ0aW5nZXJpbiBwYWNrdCBXb2xwaWUgYW0gTmFja2VuIHVuZCBnZWh0IGRhdm9uLgoKV293LCBuZW4gYmlzIGFuIGRpZSBaYWVobmUgYmV3YWZmbmV0ZXIgV29scGllID07KQoKICAgICAgICBSb25kYQpQczogRmFja2VsbiBhbnp1ZW5kZW4gdW5kIHNvIGthbm4gZXIgYXVjaCAoc2VsYnN0IHZlcmthdWZlbiEpIC0gbnVyIGthdWZlbgp3b2xsdCBlciBkaWUgRGluZ2VyIG5pY2h0IC0gc28gbmVuIFNjaG5vcnJlciEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBY3JpbW9uLCAxMS4gSmFuIDE5OTcsIDE4OjQxOjAwKToKW0FiZW50ZXVlcjpHb2xlbSBzcGllbHQgbWFsIHdpZWRlciBkZW4gRm9yc2NoZXIsIGFiZXIga29tbXQgYXVmIGRlcgogICAgICAgICAgIFJpZXNlbmluc2VsIG5pY2h0IHdlaXRlciBiZWkgZWluZW0gTG9jaC4uLi4uLi5rYW5uIGVpbmVyIGhlbGZlbj9dCltUb2Q6TGFyc10gSG90aHJvZyBoYXQgZ2VyYWRlIEdvbGVtIHVtZ2VicmFjaHQuCgpTY2huZWxsZSBIaWxmZSB2b24gdW5lcndhcnRldGVyIFNlaXRlCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZlcmtlaHJzdW5mYWVsbGUgKFJvbmRhLCAxMS4gSmFuIDE5OTcsIDIxOjI3OjE5KToKSWNoIHdlaXNzLCBkYXMgZGllIERpbmdlciBpbW1lciBpcmdlbmR3byBnZXBvc3RldCB3ZXJkZW4sIGFiZXIgdmllbGxlaWNodCBoYXQKamEgdHJvdHpkZW0gbm9jaCBqZW1hZCBTcGFzcyBkcmFuOgoKQVMgVU5GQUxMRkFIUkVSIElIUkVSIFZFUlNJQ0hFUlVORyBBTExFUyBTQ0hSRUlCRU4KCkJlaSBkZW0gWnVzYW1tZW5zdG9zcyB3dXJkZSBpY2ggaW0gaGludGVyZW4gVGVpbCBzbyBiZXNjaGFlZGlndCwgZGEgaWNoIAphYmdlc2NobGVwcHQgd2VyZGVuIG11c3N0ZS4KIApJY2ggc3RpZXNzIG1pdCBtZWluZW0gQXV0byBnZWdlbiBlaW5lbiBMYXRlcm5lbnBmYWhsLCBkZW4gZWluIAptZW5zY2hsaWNoZXMgV2VzZW4gdmVyZGVja3RlLgogCkRlciBiZWRhdWVybGljaGVyd2Vpc2UgdG9lZGxpY2ggdmVydW5nbHVlY2t0ZSBIZXJyIEYuIGhhdCBzZWxic3QgIApBbnNwcnVlY2hlIGJpc2hlciBuaWNodCBnZWx0ZW5kIGdlbWFjaHQuCiAKRGVyIFZlcnNpY2hlcnVuZ3NuZWhtZXIgdmVybGV0enRlIGRpZSBWb3JmYWhydCB1bmQga3VyeiBkYXJhdWYgZGVuIHZvbiAKcmVjaHRzIGtvbW1lbmRlbiBSYWRmYWhyZXIuCiAKRGllIFVuZmFsbHpldWdlbiBzaW5kIGRlciBTY2hhZGVuc21lbGR1bmcgYmVpZ2VoZWZ0ZXQuCiAKQmVpIHN0YXJrZW0gU2NobmVlZmFsbCBiaW4gaWNoIHdlaHJsb3MgaW4gZGVyIEt1cnZlIGlucyBSdXRzY2hlbiBnZWtvbW1lbiAKdW5kIGluIGVudGdlZ2Vua29tbWVuZGUgRmFocnpldWdlIGdlc2NobGlkZGVydC4KIApEaWUgVW5mYWxsdXJzYWNoZSBiZXJ1aHQgdm9yIGFsbGVtIGRhcmF1ZiwgZGFzcyBzaWNoIGRlciBGYWhyZXIgTHVkd2lnIE8uIAptaXQgZ2FuemVyIFZlaGVtZW56IGRlciBNaXRmYWhyZXJpbiBnZXdpZG1ldCBoYXQuCiAKRGVyIEZhaHJlciBkZXMgV2FnZW5zLCBkZXIgZGVuIFVuZmFsbCB2ZXJ1cnNhY2h0ZSwgd3VyZGUgYW4gT3J0IHVuZCAKU3RlbGxlIGR1cmNoIGVpbiBTdHJhZmdlbGQgbGlxdWlkaWVydC4KIApCZWkgZGVtIFVuZmFsbCB3YXJlbiBrZWluZSBCZXRlaWxpZ3RlbiB6dWdlZ2VuLgogCkljaCBmaW5kZSBlcyBhbm1hc3NlbmQgdm9uIElobmVuLCBkYSBpY2ggZGVuIFVuZmFsbGJlcmljaHQgYXVzZnVlbGxlbiAKc29sbCwgd28gU2llIGRvY2ggZ2VuYXUgd2lzc2VuLCBkYSBpY2ggZGFzIHdlZ2VuIG1laW5lbSBrYXB1dHRlbiBEYXVtZW4gCm5pY2h0IGthbm4uCiAKQW4gZGVtIFVuZmFsbCB0cmFlZ3QgZGVyIFRhbmt3YWdlbmZhaHJlciBkaWUgU2NodWxkLCB3ZWlsIGVyIG1pciBkaWUgClZvcmZhaHJ0IGdlc2Nobml0dGVuIGhhdC4gRnJhdSBILiBmdWhyIG1pdCBtaXIgYWxzIEJlaWZhaHJlcmluLiBCZWkgZGVtIApVbmZhbGwgd3VyZGUga2VpbmVyIHZlcmxldHp0LCBudXIgRnJhdSBILiBpc3QgaW4gYW5kZXJlbiBVbXN0YWVuZGVuLgogCkRpZSBGYWhydCB3YXIgYW4gZWluZW0gQmF1bSB6dSBFbmRlLiBFciBzdGFuZCB1bnRlciBBbGtvaG9sLgogCkFscyBkYXMgQXV0byBkaWUgUG9saXplaSBlcmJsaWNrdGUsIGVyc2NocmFrIGVzIHVuZCBmdWhyIHp1cnVlY2suCiAKQWxzIHdpciBrdXJ6IHZvciBCYWRlbi1CYWRlbiB3YXJlbiwgc2FoIGljaCBhdWYgbWVpbmUgVWhyLCB1bmQgYWxzIGljaCAKd2llZGVyIGF1ZmJsaWNrdGUsIHNhaCBpY2ggbmljaHRzIG1laHIuCiAKRGllIFN0cmFzc2Ugd2FyIGFic2NodWVzc2lnLiBOYWNoZGVtIGljaCBhdXNnZXN0aWVnZW4gd2FyLCB3YXJmIGljaCBkaWUgCkZhaHJlcnR1ZXIgaW5zIFNjaGxvc3MuIEJlaW0gVGVsZWZvbmllcmVuIHNhaCBpY2gsIGRhc3MgZGVyIFdhZ2VuIGVpbmZhY2ggCmxvc2Z1aHIuCiAKSWNoIGJpdHRlIG1laW5lIEFuc3BydWVjaGUgd29obHdvbGxlbmQgYmFsZGlnc3QgenUgZXJsZWRpZ2VuLCBkYSBpY2ggc2VpdCAKZGVtIFp1c2FtbWVuc3Rvc3Mga2VpbiBmZXN0ZXMgVmVyaGFlbHRuaXMgbWVociBoYWJlLgogCkRlciBhbmRlcmUgRmFocmVyIGFlbmRlcnRlIHNlaW5lIEFic2ljaHQsIHNvIGRhc3MgaWNoIGluIGlobiBoaW5laW5mdWhyLgogCkluIG9iaWdlciBVbmZhbGxzY2hhZGVuc3NhY2hlIGRhcmYgaWNoIElobmVuIG1pdHRlaWxlbiwgZGFzcyBzaWNoIG1laW4gCk1hbmRhbnQgZXJsZWRpZ3QgaGF0LgogCkRlciBVbmZhbGwga2FtIG51ciBkZXNoYWxiIHp1c3RhbmRlLCB3ZWlsIGljaCBtaXIgdm9uIGRlciBEYW1lIGVpbiAKZmFsc2NoZXMgQmlsZCBnZW1hY2h0IGhhdHRlLiBEaWUgdm9uIG1pciBnZXN0cmVpZnRlIFBlcnNvbiBudXIgZWluZSAKUHJvc3RpdHVpZXJ0ZSwgc28gZGFzcyBob2VjaHN0ZW5zIFNhY2hzY2hhZGVuIGluIEZyYWdlIGtvbW10Li4uCiAKVm9yIGRlbSBVZWJlcnF1ZXJlbiBkZXIgRmFocmJhaG4gc2NoYXV0ZSBpY2ggbmFjaCBsaW5rcyB1bmQgZ2xlaWNoemVpdGlnIApuYWNoIHJlY2h0cy4KIApWb3IgZGVyIHVudWViZXJzaWNodGxpY2hlbiBSZWNodHNrdXJ2ZSBpbiBIb2VoZSBkZXMgSGF1c2VzIE5yLiAyMjEgc3RhbmQgCmVpbiBncm9zc2VyIExrdywgZGVyIHRlaWx3ZWlzZSBhdWYgZGVyIEZhaHJiYWhuLCB0ZWlsd2Vpc2UgYXVmIGRlbSAKR2Voc3RlaWcgYWJnZXN0ZWxsdCB3YXIsIHVtIGluIGRlciBkb3J0aWdlbiBBcG90aGVrZSBlaW4gUmV6ZXB0IAplaW56dWxvZXNlbi4KIApJY2ggZnVociB3ZWl0ZXIgdW5kIHNhaCBudXIgZWluZW4gU2NoYXR0ZW4sIGRlciB2b24gbWVpbmVtIEF1dG8gCnVtZ2VmYWhyZW4gd3VyZGUuCiAKSGllcm1pdCBtb2VjaHRlIGljaCBtaXIgZ2VzdGF0dGVuIG1laW5lbiBTb2huIGFscyBVbmZhbGwgenUgbWVsZGVuLgogCkRpZSBQb2xpemlzdGVuLCBkaWUgZGVuIFVuZmFsbCBhdWZuYWhtZW4sIGJla2FtZW4gdm9uIG1laW5lciBCcmF1dCBhbGxlcyAKZ2V6ZWlndCwgd2FzIFNpZSBzZWhlbiB3b2xsdGVuLgogCkRhc3MgZGVyIFVuZmFsbHZlcnVyc2FjaGVyIGltIGtyaXRpc2NoZW4gTW9tZW50IGJldHJ1bmtlbiB3YXIsIGhhYmVuIHdpciAKZGFyYXVzIGVudG5vbW1lbiwgYWxzIGRlciBzY2hyaWUsIGRhc3MgZXIga2VpbmUgQW5nc3Qgdm9yIHNlaW5lciBGcmF1IApoYWJlLgogCk1laW5lIEZyYXUgaGF0dGUgbm9jaCBuaWUgZWluZW4gVW5mYWxsLCB3ZWlsIFNpZSBpbW1lciBzZWhyIGF1ZnBhc3N0IGltIApWZXJrZWhyLgogCkljaCBwcmFsbHRlIGdlZ2VuIGRpZSBaYXVubWF1ZXIgdW5kIHd1cmRlIHVuYmV3dXNzdC4gQXVzIHdhciBlcyBtaXQgCm1laW5lciBHZXNpbm51bmcuCiAKVm9tIEZhaHJlciBkZXMgV2FnZW5zIGlzdCBudXIgc2VpbiBtYWVubmxpY2hlcyBHZXNjaGxlY2h0IGJla2FubnQuCiAKRGllc2VyIFBrdyBmdWhyIHdlaXRlciB1bmQga2FtIGVyc3QgMjAgTWludXRlbiBzcGFldGVyIG9obmUgV2FnZW4gYW4gZGllIApVbmZhbGxzdGVsbGUgenVydWVjay4gVy4gdHJ1ZyBPaHJlbnNjaHVldHplciB1bmQga29ubnRlIGRlc3dlZ2VuIG1laW5lbiAKc2ljaCBuYWVoZXJuZGVuIFBrdyB3ZWRlciBzZWhlbiBub2NoIGhvZXJlbi4KIApNZWluZSBGcmF1IGZ1aHIgbWl0IGRlbSBBdXRvIHJ1ZWNrd2FlcnRzIHVuZCBrYW0gZGljaHQgYW4gZGllIFVtemFldW51bmcsIAp3byBkaWUgTmFjaGJhcmluIGVpbmVuIEJhZGVhbnp1ZyB6dW0gVHJvY2tuZW4gYXVmZ2VoYWVuZ3QgaGF0dGUuIE1pdCBkZXIgClN0b3Nzc3RhbmdlIHd1cmRlIGRlciBCYWRlYW56dWcgbWl0Z2VzY2hsZWlmdCB1bmQgemVycmlzc2VuLgogCkR1cmNoIGRlbiBzdGFya2VuIEdld2l0dGVycmVnZW4gd2FyIGRpZSBTdHJhc3NlIGdsaXRzY2hpZyB1bmQgcnV0c2NodGUgCmdlZ2VuIGRlbiBCb3Jkc3RlaW4uCiAKSWNoIG11c3N0ZSBzY2huZWxsZXIgZmFocmVuLCB1bSBkdXJjaCBkZW4gTHVmdHp1ZyBkaWUgQmllbmUgYXVzIGRlbSBBdXRvIAp6dSBrcmllZ2VuLiAKIApEZXIgTGt3IGhhdCBlaW5lbiBzY2h3ZXJlbiBTY2hyYW5rIGluIGRpZSBrbGVpbmUgRGFjaGdlc2Nob3Nzd29obnVuZyAKdHJhbnNwb3J0aWVydCB1bmQgZGFiZWkgZXJoZWJsaWNoZW4gU2NoYWRlbiBhbmdlcmljaHRldC4KIApTY2h1bGQgd2FyIGVpbiBJbnNla3RlbmZsdWcgaW4gbWVpbiBBdWdlLCBlaW4gQnJ1Y2h0ZWlsIHZvbiBlaW5lciBTZWt1bmRlIAp1bmQgZXMgd2FyIHBhc3NpZXJ0LiBNZW5zY2hlbnNjaGFkZW4gaXN0IG5pY2h0IGVudHN0YW5kZW4sIGRhIGljaCAKYmVzdGVuZmFsbHMgUmFkZmFocmVydGVtcG8gaGF0dGUuCiAKQmVpZGUgQXV0b3Mgc3RpZXNzZW4gbWl0IGRlbSBLdWVobGVyIHp1c2FtbWVuLiBFcyBnYWIgYWJlciBsZWRpZ2xpY2ggCgpCbHV0ZXJndWVzc2UuCiAKRGllIE1pdG5haG1lIGRlciBBbmhhbHRlcmluIGVyZm9sZ3RlIG5pY2h0IGF1cyBHZWZhZWxsaWdrZWl0IHNvbmRlcm4gYXVzIApHZXNlbGxzY2hhZnQuCiAKQml0dGUgbGFzc2VuIFNpZSBzaWNoIHZvbSB6dXN0YWVuZGlnZW4gUG9saXplaXJldmllciBiZXN0YWV0aWdlbiwgZGFzcyAKZGVyIFNjaGFkZW4gd2VnZW4gR2VyaW5nZnVlZ2lna2VpdCBuaWNodCBwb2xpemVpbGljaCBhdWZnZW5vbW1lbiB3dXJkZS4KIApEYXMgUGZlcmQgbGllZiBpbiBkaWUgRmFocmJhaG4sIG9obmUgc2ljaCB2b3JzY2hyaWZ0c21hZXNzaWcgenUgCnZlcmdld2lzc2Vybiwgb2IgZGllIFN0cmFzc2UgZnJlaSBpc3QuCiAKQW4gZGVyIEtyZXV6dW5nIHByYWxsdGVuIHVuc2VyZSBGYWhyemV1Z2UgenVzYW1tZW4uIEVpbmUgQWJicmVtc3VuZyB3YXIgCm5pY2h0IG1laHIgbm9ldGlnLgogCkljaCB1ZWJlcnNjaGx1ZyBtaWNoIHNlaXR3YWVydHMgbWVocm1hbHMsIHVtIGVpbmUgS29sbGlzaW9uIG1pdCBkZW0gCmVudGdlZ2Vua29tbWVuZGVuIEZhaHJ6ZXVnIHp1IHZlcm1laWRlbi4KIApWb3IgbWlyIGZ1aHIgZWluIHJpZXNpZ2VyIE1vZWJlbHdhZ2VuLiBEZXIgU29nIHdhciBzbyBzdGFyaywgZGFzcyBpY2ggCnVlYmVyIGRpZSBLcmV1enVuZyBnZXpvZ2VuIHd1cmRlLgogClVtIGRlbiBadXNhbW1lbnN0b3NzIHp1IHZlcm1laWRlbiBzdGV1ZXJ0ZSBpY2ggZ2VnZW4gZGVuIGFuZGVyZW4gV2FnZW4uCiAKQmVpIGRlbSBVbmZhbGwgd3VyZGUgbWVpbiBTY2h3aWVnZXJzb2huIG5pY2h0IHZlcmxldHp0LCBkZW5uIGVyIHdhciBnYXIgCm5pY2h0IG1pdGdlZmFocmVuLgogCkthbm4gbGVpZGVyIGRpZSBQcmFlbWllIG5pY2h0IHphaGxlbi4gTGV0enRlIFdvY2hlIGhhYmVuIHdpciBlaW4gS2luZCAKZ2VrcmllZ3QgdW5kIG1vcmdlbiBrcmllZ2VuIHdpciBLb2hsZW4uCiAKRGVyIEZ1c3NnYWVuZ2VyIGhhdHRlIGFuc2NoZWluZW5kIGtlaW5lIEFobnVuZywgaW4gd2VsY2hlIFJpY2h0dW5nIGVyIApnZWhlbiBzb2xsdGUsIHVuZCBzbyB1ZWJlcmZ1aHIgaWNoIGlobi4KIApJY2ggaGFiZSBudW4gc28gdmllbGUgRm9ybXVsYXJlIGF1c2Z1ZWxsZW4gbXVlc3NlbiwgZGFzcyBlcyBtaXIgYmFsZCAKbGllYmVyIHdhZXJlLCBtZWluIGdlbGllYnRlciBNYW5uIHdhZXJlIHVlYmVyaGF1cHQgbmljaHQgZ2VzdG9yYmVuLgogCkRlciBhbmRlcmUgV2FnZW4gZnVociBtYWwgbGlua3MsIGRhbm4gbmFjaCByZWNodHMsIGRhbm4gd2llZGVyIG5hY2ggbGlua3MgCmVoZSBpY2ggbWl0IGlobSBrb2xsaWRpZXJlbiBrb25udGUuCiAKSW4gZWluZXIgTGlua3NrdXJ2ZSBnZXJpZXQgaWNoIGlucyBTY2hsZXVkZXJuLCB3b2JlaSBtZWluIFdhZ2VuIGVpbmVuIApPYnN0c3RhbmQgc3RyZWlmdGUgdW5kIGljaCwgYmVoaW5kZXJ0IGR1cmNoIGRpZSB3aWxkIApkdXJjaGVpbmFuZGVycHVyemVsbmRlbiBCYW5hbmVuLCBPcmFuZ2VuIHVuZCBLdWVyYmlzc2UsIG5hY2ggZGVtIFVtZmFocmVuIAplaW5lcyBCcmllZmthc3RlbnMgLSB6dXNhbW1lbiBtaXQgendlaSBwYXJrZW5kZW4gUGt3IC0gZGVuIEhhbmcgCmhpbnVudGVycnV0c2NodGUuIERhbmFjaCB2ZXJsb3IgaWNoIGJlZGF1ZXJsaWNoZXJ3ZWlzZSBkaWUgSGVycnNjaGFmdCAKdWViZXIgbWVpbmUgQXV0by4KIApCZWltIEhlaW1rb21tZW4gZnVociBpY2ggdmVyc2VoZW50bGljaCBpbiBlaW5lIGZhbHNjaGUgCkdydW5kc3R1ZWNrc2F1ZmZhaHJ0IHVuZCByYW1tdGUgZWluZW4gQmF1bSwgZGVyIGJlaSBtaXIgZG9ydCBuaWNodCBzdGVodC4KIApVbSBlcyBrdXJ6IHp1IG1hY2hlbjogV2VubiBpY2ggZGFzIEdlbGQgbmljaHQgaW4gZGVuIG5hZWNoc3RlbiA4IFRhZ2VuIApiZWtvbW1lLCB2ZXJ6aWNodGUgaWNoIGRhcmF1Zi4KIApJY2ggaGFiZSBnZXN0ZXJuIGF1ZiBkZXIgSGVpbWZhaHJ0IGVpbmVuIFphdW4gaW4gMjBtIExhZW5nZSB1bWdlZmFocmVuLiAKSWNoIHdvbGx0ZSBJaG5lbiBkZW4gU2NoYWRlbiB2b3Jzb3JnbGljaCBtZWxkZW4uIEJlemFobGVuIGJyYXVjaGVuIFNpZSAKbmljaHRzLCBkZW5uIGljaCBiaW4gdW5lcmthbm50IGVudGtvbW1lbi4KIApJY2ggd2Vpc3MsIGRhc3MgaWNoIHNjaHVsZCBiaW4sIGFiZXIgaWNoIHNlaGUgZXMgbmljaHQgZWluLiBEYXMgUmVoIGxpZWYgCmluIGRlbiBXYWdlbiwgYWJlciBvaG5lIHNpY2ggdW0gZGVuIFNjaGFkZW4genUga3VlbW1lcm4sIGxpZWYgZXMgd2VpdGVyIAppbiBkZW4gV2FsZC4KIApJbSBQa3cgYmVmYW5kIHNpY2ggaW0gS2luZGVyc2l0eiBub2NoIGRlciA2IE1vbmF0ZSBhbHRlIFNvaG4uIEF1ZiBlaW5lIApWZXJuZWhtdW5nIGRlcyBTb2huZXMgd3VyZGUgdmVyemljaHRldC4KIApEaWUgR2VidXJ0c3Vya3VuZGUgZGVzIEtmeiBpc3QgYmVpZ2VmdWVndC4KIApJY2gga2FtIHZvbiBkZXIgU3RyYXNzZSBhYiwgd29iZWkgZWluIEJhdW0gbWVpbmVtIEF1dG8gbmljaHQgYXVzd2VpY2hlbiAKa29ubnRlLgogCkRpZSBFaGVmcmF1IGRlcyB6ZXJ0cnVlbW1lcnRlbiBBdXRvcyB3dXJkZSBudXIgbGVpY2h0LCBkZXIgTWFubiAKZ2x1ZWNrbGljaGVyd2Vpc2UgbmljaHQgdmVybGV0enQuCiAKQmVpIGVpbmVyIGFiZW5kbGljaGVuIEZhaHJ0IG1pdCBtZWluZXIgRWhlZnJhdSBoYWIgaWNoIFdpbGRzY2hhZGVuIAplcmxpdHRlbi4KIApFcyB3YXIgZGllIFplaXQgZGVzIFN0b3NzdmVya2VocnMuIEljaCBzdGllc3MgYXVmIGRhcyB2b3IgbWlyIHp1bSBTdGVoZW4gCmdla29tbWVuZW4gRmFocnpldWcuCiAKSGVyciBQLiBmdWhyIHBsb2V0emxpY2ggcnVlY2t3YWVydHMgdW5kIGZ1aHIgbWljaCB1bS4gRGFubiBmdWhyIGVyIHdpZWRlciAKdm9yd2FlcnRzIHVuZCBmcmFndGUsIHdhcyBwYXNzaWVydCBzZWkuCiAKVmllciBXb2NoZW4gbmFjaCBkZW0gVW5mYWxsIHd1cmRlIGRlciBHZWhnaXBzIGFtIHJlY2h0ZW4gQXJtIHdpZWRlciAKZW50ZmVybnQuCiAKT2J3b2hsIGRlciBWZXJzaWNoZXJ0ZSBlaW5lbiBTZWl0ZW5zcHJ1bmcgbWFjaHRlLCBrYW0gbmljaHQgZXIsIHNvbmRlcm4gCnNlaW5lIEZyYXUgenUgU2NoYWRlbi4KIApJY2ggaG9sdGUgZGllIFBvbGl6ZWkgdW5kIGxpZXNzIG1pciBkaWUgVW5zY2h1bGQgbWVpbmVyIEZyYXUgYmVzdGFldGlnZW4uCiAKRGVyIFVuZmFsbCBwYXNzaWVydGUsIHdlaWwgaWNoIHZvbiBlaW5lbSBBdXRvIHVuYmVrYW5udGVyIE5hdGlvbmFsaXRhZXQgCmdlYmxlbmRldCB3dXJkZS4KIApJY2ggZnVociB2b3JuIGF1Ziwgd2FlaHJlbmQgZXMgaGludGVuIGJ1bXN0ZS4KIApGcmwuIEIgbmFlaGVydGUgc2ljaCBkZXIgQW1wZWwgdW5kIHNwcmFuZyB2b24gR2VsYiBhdWYgR3J1ZW4gdW0uCiAKRGFubiBkdXJjaGJyYWNoIGljaCBtaXQgbWVpbmVtIExrdyBkaWUgU2NoYWxsbWF1ZXIgZGVyIEF1dG9iYWhuLgoKClVwcywgd2FyIGRhcyBsYW5nLCB2aWVsIFNwYXNzLAogICAgICAgUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtsYXNzZSAoS2FydG9mZmVsLCAxMS4gSmFuIDE5OTcsIDIyOjAzOjQ5KToKKndpc2NoIExhY2h0cmFlbmUgYXVzIGRlbSBBdWdlbndpbmtlbCoKCmVjaHQgc3BpdHplLCBSb25kYQoKaWNoIGhhYiBhdWNoIG5vY2ggZWluZW46CgpEZXIgSGFzZSBzcHJhbmcgaW4gc2VsYnN0bW9lcmRlcmlzY2hlciBBYnNpY2h0IGF1ZiBkaWUgU3RyYXNzZSB1bmQgbmFobSBzaWNoCmFuIG1laW5lbSBsaW5rZW4gS290Zmx1ZWdlbCBkYXMgTGViZW4uCgphY2gsIG5vY2ggZWluZXI6CgpEaWUgS3VydmUga2FtIG1pciBpbiBlaW5lciBzb2xjaGVuIEdlc2Nod2luZGlna2VpdCBlbnRnZWdlbiwgZGFzcyBpY2ggaWhyCm5pY2h0IG1laHIgYXVzd2VpY2hlbiBrb25udGUuCgpLYXJ0b2ZmZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmlzdCBkZXIgcnVmIGVyc3QgcnVpbmllcnQgLi4uIChIYWRyYSwgMTIuIEphbiAxOTk3LCAxMToyMjoyNCk6CltBbGxnZW1laW46SGFkcmFdIHNjaHJ1bXBmaSBzdGVsbCBtYWwgZGFzIGxhZyBhYiA8MTE6MTA6MDk+CltBbGxnZW1laW46U2NocnVtcGZpXSBub2UgPDExOjEwOjE1PgpbQWxsZ2VtZWluOkhhZHJhXSBtYWVubm8sIHdhcnVtbmljaHQ/IDwxMToxMDoyNz4KW0FsbGdlbWVpbjpLZXkga2ljaGVydCA8MTE6MTA6NDQ+XQpbQWxsZ2VtZWluOktleV0gV2VsY2hlcyBsYWc/IDwxMToxMDo1Mj4KW0FsbGdlbWVpbjpTY2hydW1wZmldIHdlaWwgaWNoIGV1Y2ggYWVyZ2VybiB3aWxsIDwxMToxMDo1ND4KW0FsbGdlbWVpbjpLZXkga2l0emVsdCBTY2hydW1wZmkuIDwxMToxMToxNj5dCltBbGxnZW1laW46SGFkcmFdIHNjaHJ1bXBmaSBkdSBiaXN0IHNvb29vb29vb28gZmllcyA8MTE6MTE6MjA+CltBbGxnZW1laW46U2NocnVtcGZpIG5pY2t0IGZyb2VobGljaCA8MTE6MTE6MzQ+XQpbQWxsZ2VtZWluOkhhZHJhXSBobW0sIHdlbm4gZHUgZGFzIGxhZyBuaWNodCBzb2ZvcnQgYWJzdGVsbHN0LCB3ZXJkZSBpY2gKW0FsbGdlbWVpbjpIYWRyYV0gdWViZXJhbGwgYmVoYXVwdGVuLCBkYXNzIGR1IGxpZWIgdW5kIG5lZXQgdW5kIHp1dm9ya29tbWVuZApbQWxsZ2VtZWluOkhhZHJhXSBiaXN0IChkYXMgaXN0IG5lIGRyb2h1bmcgOykgPDExOjEyOjQ2PgpbQWxsZ2VtZWluOlNjaHJ1bXBmaV0gdXJncyA6KSA8MTE6MTI6NTQ+CltBbGxnZW1laW46U2NocnVtcGZpXSBkYW5uIHphcHAgaWNoIGRpY2ggOy0pIDwxMToxMzoyMT4KW0FsbGdlbWVpbjpLZXkga2ljaGVydC4gPDExOjEzOjI3Pl0KW0FsbGdlbWVpbjpIYWRyYV0gZGFzIGlzdCBzdWVzc3NzICpraWNoZXIqIDwxMToxMzozNz4KW0FsbGdlbWVpbjpOZXNhamFdIFNjaHJ1bXBmaSBpc3QgZG9jaCBzb3dpZXNvIGltbWVyIHNvIG5pZWRsaWNoIDopKSkpCltBbGxnZW1laW46TmVzYWphXSA8MTE6MTQ6MDc+CltBbGxnZW1laW46S2V5IGZpbmRldCBTY2hydW1wZmkgaXJzaW5uaWcgbmV0dCA6KSA8MTE6MTQ6MTc+XQpbQWxsZ2VtZWluOkhhZHJhXSBqbyBzY2hydW1wZmkgaXN0IGVjaHQga251ZmZpZyA8MTE6MTQ6MzE+CltBbGxnZW1laW46TmVzYWphIGtpY2hlcnQuLi4uLm51biBpc3QgU2NocnVtcGZpIHVtZ2VraXBwdCA6KSkpIDwxMToxNDo1MT5dCltBbGxnZW1laW46S2V5IHVlYmVybGVndCBvYiBkYXMgTUcgZ2xlaWNoIGNyYXNodCAuLi4gOikgPDExOjE0OjUzPl0KW0FsbGdlbWVpbjpLZXkgZ3JpbnN0IE5lc2FqYSBhbi4gPDExOjE0OjU5Pl0gICAgICAgICAgICAgICAgICAgICAgICAgCltBbGxnZW1laW46TmVzYWphIGt1bGxlcnQgbmFjaCBoYXVzZSB1bmQgd2lua3QuLi4uIDwxMToxNTowNj5dCltBbGxnZW1laW46SGFkcmFdIG5vZSBzY2hydW1wZmkgaG9sdCBudXIgbmV1ZW4ga2F2aWFyIDwxMToxNToxND4KW0FsbGdlbWVpbjpTY2hydW1wZmldIElDSCBCSU4gTklDSFQgTklFRExJQ0ghISA8MTE6MTU6MjQ+CltBbGxnZW1laW46SGFkcmFdIGRvY2ggZG9jaCBzY2hydW1wZmkuIGxldWduZW4gaGlsZnQgbmljaHQgPDExOjE2OjA4PgpbQWxsZ2VtZWluOkNhcmFkaHJhc10gU0NIUlVNUEZJTUFVU0kgOikgPDExOjE2OjE2PgpbQWxsZ2VtZWluOktleSBuaWNrdCBIYWRyYSB6dS4gPDExOjE2OjIwPl0KW0FsbGdlbWVpbjpTY2hydW1wZmldIGFsc28gbmUsIGRhIGJyYXVjaCBpY2ggbmUga2lwcGUgPDExOjE2OjQ1PgpbQWxsZ2VtZWluOktleSBkZW5rdDogT2hvaCBkYXMgd2FyIHp1dmllbCBmdWVyIHVuc2VyIHN1ZXNzZXMKU2NocnVtcGZpaGV4Y2hlbiA7KSkgPDExOjE3OjAzPl0KLi4uCltBbGxnZW1laW46U2NocnVtcGZpXSBtZWluIGltYWdlLCBtZWluIHNjaG9lbmVzIGltYWdlLi4uCltBbGxnZW1laW46Q2FyYWRocmFzXSBkdW1tIGdsb2ZmZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NobHVlc3NlbGtpbmRlciEhISAoQ2FyYWRocmFzLCAxMi4gSmFuIDE5OTcsIDExOjU4OjE1KToKV2VyIHNjaG9uIGltbWVyIHdpc3NlbiB3b2xsdGUsIHdhcyBTb25udGFncyBzbyBpbiBNRyBsb3MgaXN0OgoKW0FsbGdlbWVpbjpBbmFpZF0gQXJnbCEKW0FsbGdlbWVpbjpBbmFpZF0gV2FzIGZ1ZXIgZWluIE1pc3QKPiBbQWxsZ2VtZWluOkFuYWlkXSBIbW0gd2VubiBpY2ggbWljaCBzZWxiZXIga2lsbGUsIGtyaWVnZSBpY2ggZGFubiBuZW4gcGs/CltBbGxnZW1laW46Q2FyYWRocmFzXSBrbGFyCj4gW0FsbGdlbWVpbjpBbmFpZCBsYWNodC5dCltBbGxnZW1laW46QW5haWQgaGF0IGViZW4gZm9rdXMgYXVmIHNpY2ggc2VsYnN0IGdlbWFjaHQgdW5kIGdyZWlmdCBzaWNoCiAgICAgICAgICAgc3RhZW5kaWcgYW4gOikpXQpbQWxsZ2VtZWluOkNhcmFkaHJhc10gZWlnZW50bGljaCBtdWVzc3RlIHNlbGJzdGxvZXNjaHVuZyBqYSBhdWNoIG4gUEsgZ2ViZW4KW0FsbGdlbWVpbjpDYXJhZGhyYXNdIGFiZXIgZGEgbWFuIGphIGRhbm4gbmljaHQgbWVociBkYSBpc3QuLi4KW0FsbGdlbWVpbjpBbmFpZCBraWNoZXJ0Ll0KW0FsbGdlbWVpbjpLZXldIEhtbSBkYW5uIG11ZXNzdGUgaWNoIGphIGZ1ZXIgaW1tZXIgZ2ViYW5pc2h0IHNlaW4gLi4uIDopCltBbGxnZW1laW46Q2FyYWRocmFzXSBzbyBvZnQgc2VsYnN0IGdlbG9lc2NodD8gOikKPiBbQWxsZ2VtZWluOktleV0gbmVlIGFiZXIgbWljaCBpbiBkZW4gVG9kIGdlc3R1ZXJ6dCA7KSkKW0FsbGdlbWVpbjpIYWRyYV0gdHUgcG9lc2VyIHB1cnNjaGUKPiBbQWxsZ2VtZWluOktleSBmcmFndDogd2llIGthbm4gaWNoIGRhcyB3aWVkZXJndXRtYWNoZW4gS2V5P10KPiBbQWxsZ2VtZWluOktleSBhbnR3b3J0ZXQgbW90emVuZDogZ2FyIG5pY2h0IV0KPiBbQWxsZ2VtZWluOktleSB3aXJkIFNjaGl6b3BocmVuLCB3aWUgZGllIFphdWJlcmVyXQpbQWxsZ2VtZWluOkhhZHJhIGZyYWd0IGtleSBuYWNoOiBzY2hpem9waHJlbmllP10KPiBbQWxsZ2VtZWluOktleSBncmluc3QgSGFkcmEgYW4uXQpbQWxsZ2VtZWluOkhhZHJhIGdyaW5zdCBrZXkgYW5dCj4gW0FsbGdlbWVpbjpLZXkgZ3JpbnN0IG5pY2h0LCBzb25kZXJuIGlzdCBpbW1lciBub2NoIGFtIG1vdHplbl0KW0FsbGdlbWVpbjpIYWRyYV0gaHVlbHBoYWUuIDIga2V5IHVuZCBuZSBzdWVzc2UgbmV0dGUgc2NocnVtcGZpLiB3ZXIgc29sbCBkYXMKW0FsbGdlbWVpbjpIYWRyYV0gYW4gZWluZW0gdGFnIGFsbGVzIGF1c2hhbHRlbgpbQWxsZ2VtZWluOkNhcmFkaHJhc10gZHUKPiBbQWxsZ2VtZWluOlNjaHJ1bXBmaSBraWNoZXJ0XQo+IFtBbGxnZW1laW46S2V5IGFudHdvcnRldCBIYWRyYSBncnVtbWVsbmQ6IER1IV0KW0FsbGdlbWVpbjpDYXJhZGhyYXNdIFNjaHJ1bXBmaSBpc3QgZG9jaCBJTU1FUiBuZXR0ICpncmluc2luc2ljaHJlaW4qCj4gW0FsbGdlbWVpbjpLZXkgaGF1dCBLZXkgZnVlciBzZWluZSBGcmVjaGhlaXQgdW0gZGllIE9ocmVuIHVuZCBlbnRzY2h1bGRpZ3QKICAgICAgICAgICBzaWNoLl0KW0FsbGdlbWVpbjpLZXkgYXJnbHQgc2VpbmUgYmVpZGVuIEtleSdzIGFuLl0KW0FsbGdlbWVpbjpLZXkga2ljaGVydC5dCj4gW0FsbGdlbWVpbjpLZXldIE9ob2ggaWNoIGdsYXViZSBpY2ggbGFzcyBtaWNoIGVpbmxpZWZlcm4gOyk9Cj4gW0FsbGdlbWVpbjpIYWRyYV0gaXN0IGRhcyBzZWhyIGFuc3RlY2tlbmQ/Cj4gW0FsbGdlbWVpbjpLZXkgbmlja3RdCltBbGxnZW1laW46S2V5IHNhZ3Q6IG5vZV0KW0FsbGdlbWVpbjpDYXJhZGhyYXNdIHdpciBzaW5kIG5pY2h0IHNjaGl6bwo+IFtBbGxnZW1laW46Q2VsZWJkaWxdIGljaCBhdWNoIG5pY2h0IQpbQWxsZ2VtZWluOktleSBkZW5rIEhtbSB3ZWlzcyBlcyBlaW5lcj8gOildCj4gW0FsbGdlbWVpbjpLZXkgZ3JpbnN0IGRpZSBCZXJnZSBhbl0KW0FsbGdlbWVpbjpIYWRyYV0gdW5kIHdlbm4gamEsIHdlcj8KPiBbQWxsZ2VtZWluOktleV0gZHUgbWVpbnN0IGRpZSBHZWJpcmdlIGtleSwgb2Rlcj8KW0FsbGdlbWVpbjpLZXldIHdpZSB3ZXI/Cj4gW0FsbGdlbWVpbjpLZXldIFdlciB3aWU/CltBbGxnZW1laW46Q2FyYWRocmFzXSBhcmdsCj4gW0FsbGdlbWVpbjpLZXldIFdhcz8/Pz8KW0FsbGdlbWVpbjpIYWRyYV0gbmEsIHdlciB2b24gZXVjaCB3ZWlzcyBlcz8KW0FsbGdlbWVpbjpLZXldIEljaApbQWxsZ2VtZWluOktleV0gaWNoIG5ldApbQWxsZ2VtZWluOkNhcmFkaHJhcyBpZ25vcmllcnQgS2V5LiA6KSBEZXIgaXMgamEgc2NobGltbWVyIGFscyA3IEJlcmdlIGF1ZgogICAgICAgICAgIGVpbm1hbC5dCj4gW0FsbGdlbWVpbjpLZXldIEljaCBuZXQgZ2VuYXUKPiBbQWxsZ2VtZWluOktleSBraWNoZXJ0Ll0KPiBbQWxsZ2VtZWluOktleV0gTmEgZ3V0IGljaCBob2VyIHNjaG9uIGF1ZiA6KQpbQWxsZ2VtZWluOktleV0gSWNoIGFiZXIgbmljaHQKW0FsbGdlbWVpbjpLZXldIGxvZ2d0IGRhcyBlaW5lcmA/CltBbGxnZW1laW46Q2VsZWJkaWxdIGpldHp0IHdlaXNzIGljaCB3ZW5pZ3N0ZW5zLCB3YXMgbWFuY2hlIHZvbiBtaXIgZGVua2VuIDopCltBbGxnZW1laW46S2V5IGhvZmZ0IG5pY2h0IC4uIDspXQpbQWxsZ2VtZWluOkhhZHJhXSA3IGJlcmdlPyA3IHp3ZXJnZT8KPiBbQWxsZ2VtZWluOktleV0gNyBTY2hsdWVzc2VsIQo+IFtBbGxnZW1laW46S2V5XSA3IFNjaGx1ZXNzZWwhISEKW0FsbGdlbWVpbjpLZXldIDcgU2NobHVlc3NlbCEhISEKPiBbQWxsZ2VtZWluOktleV0gNyBTY2hsdWVzc2VsISEhIQpbQWxsZ2VtZWluOktleV0gNyBTY2hsdWVzc2VsISEhIQpbQWxsZ2VtZWluOktleV0gNyBTY2hsdWVzc2VsISEhIQpbQWxsZ2VtZWluOktleV0gNyBTY2hsdWVzc2VsISEhIQpbQWxsZ2VtZWluOktleSBraWNoZXJ0XQpbQWxsZ2VtZWluOktleV0gNyBTY2hsdWVzc2VsISEhIQpbQWxsZ2VtZWluOktleSBraWNoZXJ0XQo+IFtBbGxnZW1laW46S2V5IGF1Y2hdCltBbGxnZW1laW46S2V5IHZlcnN0ZWh0IHNpY2ggamEgc2VsYnN0IG5pY2h0IC4uLi5dCltBbGxnZW1laW46S2V5XSBEdSBiaXN0IGphIGF1Y2ggbmV0IGljaCEKW0FsbGdlbWVpbjpLZXkgYXJnbHQuXQpbQWxsZ2VtZWluOktleV0gVW5kIHdhcyBpc3QgbWl0IG1pcj8KW0FsbGdlbWVpbjpIYWRyYV0gZHUgYmlzdCBydWhpZwpbQWxsZ2VtZWluOktleV0gV2VyPwpbQWxsZ2VtZWluOktleV0gaWNoPwpbQWxsZ2VtZWluOktleV0gZXI/CltBbGxnZW1laW46S2V5XSBTaWU/CltBbGxnZW1laW46SGFkcmFdIG5laW4gZGVyIGFuZGVyZQpbQWxsZ2VtZWluOktleSBmcmd0IHNjaHVlY2h0ZXJuOiBJY2g/XQoKCiAgICAgICAgICAgICBEYXR0IEdlYmVyY2hlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKENhcmFkaHJhcywgMTIuIEphbiAxOTk3LCAxMjowMzo1Nyk6CltBbGxnZW1laW46Q2FyYWRocmFzXSBtYWNodCBqZW1hbmQgbWl0Pwo+IFtBbGxnZW1laW46S2V5XSBIbW0gZ2VyYWRlIGluIGRlciBncnVmdCAuLi4uIDooCnh4CkRlciBTcGllZ2VsIGtsYWVydCBzaWNoIHVuZCBEdSBzaWVoc3Q6Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRHUgc3RlaHN0IGltIE5lc3QgZGVyIEh5ZHJhLiBEdSBzb2xsdGVzdCBuaWNodCBoaWVyIHNlaW4hCi09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LQoKKFdlbm4gRHUgYWxzIFNwaWVsZXIgb2RlciBTZWhlciBoaWVyIGJpc3QsIHdlbmRlIERpY2ggYW4KIFB1bWEgb2RlciBlaW5lbiBmcmV1bmRsaWNoZW4gTWFnaWVyLCB1bSBoaWVyIHdpZWRlcgogaGVyYXVzenVrb21tZW4uIDotKQpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgpEaWUgSHlkcmEuCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiBbVG9kOkxhcnNdIFNob2RhZ29pIGhhdCBnZXJhZGUgS2V5IHVtZ2VicmFjaHQuCltUb2Q6U2hvZGFnb2ldIERpZSBaZWl0IGlzdCBnZWtvbW1lbiEgV2lyIHNpbmQgd2llZGVyIGRhIQpbQWxsZ2VtZWluOkNhcmFkaHJhc10gamV0enQgbmltbWVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptdWV0emVuIHNpbmQgZ2VzdW5kaGVpdHNnZWZhZWhyZGVuZCAoSGFkcmEsIDEyLiBKYW4gMTk5NywgMTc6MTI6MjcpOgpMZWdhcyB6aWVodCBlaW5lIFBvc3RtdWV0emUgYW4uCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCltUb2Q6XSBMRUdBUyBWRVJTVUNIVEUsIE1JUiBaVSBFTlRLT01NRU4gLSBKRVRaVCBIQUJFIElDSCBXSUVERVIgRVhUUkEtQVJCRUlUCltUb2Q6XSBNSVQgSUhNIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5nZXNjaG5pdHRlbi4uLiAoQW5hdG9sLCAxMy4gSmFuIDE5OTcsIDEzOjUwOjAxKToKCkRpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgpbU2VoZXI6U2x5Zm94XSBJc3QgZGllIEh5ZHJhIGdyYWQgZGE/IFdlaWwgRWxlbmRpbCBtaWNoIGZyYWd0IG9iIGljaCBkaWUgYXVjaApbU2VoZXI6U2x5Zm94XSBtYWNoZW4gd29sbD8KCkF1dHNjaCA6LSkKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NobWFycm4gKFNhZGllLCAxMy4gSmFuIDE5OTcsIDEzOjU2OjE4KToKW0FsbGdlbWVpbjpFbmd5d3Vja10gV2llIGhlaXNzdCBkaWUgc2lnbnVtc2Z1bmt0aW9uIGluIGY3NyA/CltBbGxnZW1laW46QW5hdG9sXSBzZWxic3Rsb2VzY2h1bmcKCkdsYXViIGljaCBuaWNodC4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplYmVuZCBwYXNzaWVydCAoQWxib2luLCAxMy4gSmFuIDE5OTcsIDE1OjE4OjMwKToKRHUgdGVpbHN0IFJhbnRhbnBsYW4gbWl0OiBvY2ggbmVlLCBoYXUgYWIsIGdhc3NpIGdlaGVuCj4gUmFudGFucGxhbiBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpSYW50YW5wbGFuICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKYWxib2luKCBoZXV0ZSBtYWwgZ2FueiBmcmVjaCkgd3VuZGVydCBzaWNoIGRhcyBkZXIgSHVuZCBzb2ZvcnQgcGFyaWVydGUgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaHdhY2hlIEltaXRhdGlvbiAoQWNyaW1vbiwgMTMuIEphbiAxOTk3LCAxNzowMzozNik6CkRlciBOYWNodHdhZWNodGVyIHJ1ZnQ6IEVzIGlzdCAxNyBVaHIsIHVuZCBhbGxlcyBpc3QgZ3UtaHV1dCEKUHJpdi4tRG96LiBEci4gcGhpbC4gS3JldGVLIHJ1ZnQ6IEVzIGlzdCBBcm1hZ2VkZG9uIFVociwgdW5kIGFsbGVzIGlzdApQcml2Li1Eb3ouIERyLiBwaGlsLiBLcmV0ZUsgcnVmdDogZ3VodXV1dCEgOi0pCgpOaWNodG1hbCBpbWl0aWVyZW4ga2FubiBlciA6LSkKCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTY2h3YWNoZSBJbWl0YXRpb24gKEtyZXRlaywgMTMuIEphbiAxOTk3LCAxNzoxMDowOSk6Cn4jISBybj1BY3JpbW9uIHJ0PTg1MzE3MTQxNiByZz1zY2htYXJybgp+IyEgdGlkPTg1MzE3MTQxNgpOYSBqYSwgbWFuIHdpcmQgamEgbm9jaG1hbCBmYWxzY2ggdHJpZ2dlcm4gZHVlcmZlbiA6LSkKCgogICAgICAgfCAvICB8XCAgfC0tICAtLS0gIHwtLSAgfCAvCiAgICAgICB8PCAgIHwvICB8LSAgICB8ICAgfC0gICB8PAogICAgICAgfCBcICB8XCAgfC0tICAgfCAgIHwtLSAgfCBcCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgZ2luZyBwcm9tcHQuIChIYXJkaWwsIDEzLiBKYW4gMTk5NywgMTc6MTE6MDEpOgoKPiBubgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0Lgo+ICogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBLcmV0ZWsgaW4gUnVicmlrICJzY2htYXJybiIuCgpOTk4uCkhhcmRpbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2Nod2FjaGUgSW1pdGF0aW9uIChTdW5mbG93ZXIsIDEzLiBKYW4gMTk5NywgMTc6MTE6NTApOgp+IyEgcm49S3JldGVrIHJ0PTg1MzE3MTgwOSByZz1zY2htYXJybgp+IyEgdGlkPTg1MzE3MTQxNgpXZW5uIGRhcyBDYXQqIGxpZXN0IDopCgoKICAgICAgICAgICAgICAgICAgICAtLT09PSBibHVlbWNoZW4gPT09LS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNjaHdhY2hlIEltaXRhdGlvbiAoS3JldGVrLCAxMy4gSmFuIDE5OTcsIDE3OjE4OjI0KToKfiMhIHJuPVN1bmZsb3dlciBydD04NTMxNzE5MTAgcmc9c2NobWFycm4KfiMhIHRpZD04NTMxNzE0MTYKTmEgamEsIHNvbGFuZ2UgaWNoIG5pY2h0IGF1ZiAnQ2F0d2VhemxlICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEnIGVpbgp4ZXZhbCBmaW5kX2xpdmluZygiY2F0d2VhemxlIiktPmRpc2Nvbm5lY3QoKSB0cmlnZ2VyZSwgaWNoIGRhcyBzY2hvbiBPSywgCmdsYXViIGljaC4uLiBPZGVyLCBDYXR0aWU/ICoqendpbmtlcioqCgogICAgICAgfCAvICB8XCAgfC0tICAtLS0gIHwtLSAgfCAvCiAgICAgICB8PCAgIHwvICB8LSAgICB8ICAgfC0gICB8PAogICAgICAgfCBcICB8XCAgfC0tICAgfCAgIHwtLSAgfCBcCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkaXJla3RlciBkcmFodCAoV3VyemVsLCAxMy4gSmFuIDE5OTcsIDE5OjQwOjU2KToKbXVkZGVuIGthbm4gc28gZ2VtdWV0bGljaCBzZWluLi4uCgplYmVuIGJlaSB0cmFjZXJvdXRlOgoKMTIgIDIwNC43MC4yLjE0ICgyMDQuNzAuMi4xNCkgIDI4NS40MSBtcyAgMjg2LjI1MSBtcyAgMjk3LjM2NSBtcwoxMyAgZGZuLWV2Lldhc2hpbmd0b24ubWNpLm5ldCAoMjA0LjE4OS4xNTIuMTcwKSAgNDc1LjQ4MiBtcyAqICA0ODcuODU5IG1zCjE0ICAqICogKgoxNSAgKiAqICoKMTYgICogKiAqCjE3ICAqICogKgoxOCAgKiAqICoKMTkgICogKiAqCjIwICAqICogKgoyMSAgKiAqICoKMjIgICogTUcuVU5JLU1VRU5TVEVSLkRFICgxMjguMTc2LjE4Mi43MCkgIDUzMC4yNTkgbXMgKgoKaXN0IGRvY2ggbmV0dCwgd2VubiBtYW4gendpc2NoZW4gendlaSBlaW5nYWJlbiBub2NoIG1hbCB0ZWUga29jaGVuIGthbm4gOi8KCnd1cnplbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChTY2hydW1wZmksIDEzLiBKYW4gMTk5NywgMjE6Mjc6MjkpOgpbQWxsZ2VtZWluOkFjaGFremFpXSBXYXMgYnJhdWNoZSBpY2ggZWlnZW50bGljaCBhdXNzZXIgSmFnZHN0aWVmZWxuLCBTZWlsIHVuZApbQWxsZ2VtZWluOkFjaGFremFpXSBIYW5kc2NodWhlbiBzb25zdCBub2NoLCB1bSBkYXMgV2Fyb2tnZWJpcmdlIHp1IGVya3VuZGVuPwpbQWxsZ2VtZWluOk5pa29sYXVzXSBtdXQuLi4gdW5kIGplbWFuZGVuIGRlciBkZWluZSBzYWNoZW4gaG9sdCA7KQpbVG9kOkxhcnNdIEVpbiBVbmZhbGwgaW0gSG9jaGdlYmlyZ2UgaGF0IGdlcmFkZSBBY2hha3phaSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBVbmZhbGwgaW0gSG9jaGdlYmlyZ2VdIFdlciB2aWVsIHdhZ3QsIGthbm4gYXVjaCB2aWVsIHZlcmxpZXJlbi4uLgoKKmtpY2hlcioKU2NocnVtcGZpIGhldXRlIG1hbCBnZWhhZXNzaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3aG8gZHVubml0PyAoU3VzaGksIDE0LiBKYW4gMTk5NywgMDI6NTU6MDMpOgpadWVyaWxldSBzYWd0OiBYWFggaXN0IHNjaG9uIGluIG9yZG51bmcsIG9obmUgaWhuIHdhZXIgaWNoIG5pY2h0IGRhcyB3YXMgaWNoCmhldXRlIGJpbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEViZW4gYmVpbSB1bXNjaGF1ZW4gaW0gU3RydXYgLi4uIChTdW5mbG93ZXIsIDE0LiBKYW4gMTk5NywgMTQ6NDM6MTgpOgp+IyEgcm49TWFuZ28gcnQ9ODUzMjQ5MzY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUzMjQ5MzY2CnVudCAiIiA/Cgp2aWVsbGVpY2h0IGdpYnRzIGRhcmF1ZiBqYSBuZW4gRlAgPyA6KQoKICAgICAgICAgICAgICAgICAgICAtLT09PSBibHVlbWNoZW4gPT09LS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkViZW4gYmVpbSB1bXNjaGF1ZW4gaW0gU3RydXYgLi4uIChNYW5nbywgMTQuIEphbiAxOTk3LCAxNDo0Mzo0OSk6CgoKCgoKT2tvaywgRWxmZW5ad2VyZ2VIb2JiaXRzT3Jrc0lkaW90ZW5kaWVhbGxlc3VudGVyc3VjaGVuLgoKCgpNYW5nbywgZXJmcmV1dCB1ZWJlciBkaWUgRGV0YWlsdmllbGZhbHQuCgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZToga2xhc3NlIChBcmFueWEsIDE0LiBKYW4gMTk5NywgMTY6NDI6MzApOgp+IyEgcm49S2FydG9mZmVsIHJ0PTg1MzAxNjYyOSByZz1zY2htYXJybgp+IyEgdGlkPTg1MzAxNjYyOQpadW0gVGhlbWEgS3VydmU6IFNlbGJzdCBlcmxlYnQ6ClN1ZWRmcmFua3JlaWNoLCBrbGVpbmVzIFN0YWVkY2hlbiBhbSBIYW5nLgpJY2g6IHRyYW1wZW5kLCBHZW9yZ2V0dGU6IG1pY2ggbWl0bmVobWVuZC4KU2llIGZhZWhydCBlaW5lIGRlciBiZXJ1ZW10ZW4gU2VycGVudGluZW4tR2Fzc2VuIGhpbnVudGVyLgpTQ0hSQU1NTU1NTQpHZW9yZ2V0dGU6IE9oLi4uIE5pY2h0IG1laW5lIFNjaHVsZC4gRGVyIFdhZ2VuIHdhciB6dSBzY2huZWxsLgoKKmphdXV1bCoKQXJhbnlhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIC4uIChaZXBoeXIsIDE0LiBKYW4gMTk5NywgMTc6MTA6MjApOgpFYmVuIGluIGRlciBTU1A6Ci4uLgogIERlciBodWVwZmVuZGUgS251dHNjaGZpc2NoIGdyZWlmdCBEaWNoIGh1ZXBmZW5kZXJ3ZWlzZSBhbi4KICBEZXIgaGV1cGZlbmRlIEtudXRzY2hmaXNjaCBrcmF0enQgRGljaC4KRHUgcmFtbXN0IGRlbSBodWVwZmVuZGVuIEtudXRzY2hmaXNjaCBkYXMgS25pZSBpbiBkZW4gS29lcnBlci4KRGVyIGh1ZXBmZW5kZSBLbnV0c2NoZmlzY2ggZnJldXQgc2ljaCB1bmQgaHVlcGZ0IHdpbGQgZHVyY2ggZGllIEdlZ2VuZC4KICBEdSB0cmlmZnN0IGRlbiBodWVwZmVuZGVuIEtudXRzY2hmaXNjaCBoYXJ0LgouLgoKaW1tZXIgbm9jaCBncmluc2VuZCwgWmVwaHlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEb3BwZWx0IGZhbHNjaC4uLiA7LSkgKEFuYXRvbCwgMTQuIEphbiAxOTk3LCAxODo0MTo1Nik6CgpbVG9kOkxhcnNdIExoYW5hIGRpIExlb25kcm8gaGF0IGdlcmFkZSBTaWx2YW5hIHVtZ2VicmFjaHQuCltUb2Q6TGhhbmEgZGkgTGVvbmRyb10gRWluZSBIZXVzY2hyZWNrZSB3aXJkIGluIEt1ZXJ6ZSBiZWdyYWJlbi4gV2lyIGJpdHRlbiB1bQpbVG9kOkxoYW5hIGRpIExlb25kcm9dIEJsdW1lbnNwZW5kZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmEgc293YXMgLi4uLi4gKFNtaWxleSwgMTQuIEphbiAxOTk3LCAxOToyNjoyMik6CkRpZSBBbmdzdCB1bmQgZGVyIFNjaHJlY2tlbiBzdGVpZ3QgaW4gZXVyZSBIZXJ6ZW4uIElociB3aXNzdCBuaWNodCB3YXMgZ2VyYWRlIApwYXNzaWVydCBpc3QuCltBYmVudGV1ZXI6PFF1ZXN0Pl0gSmFja2llY2hhbiBoYXQgZ2VyYWRlIGVpbiBBYmVudGV1ZXIgYmVzdGFuZGVuOiBTb3J1dGhzCltBYmVudGV1ZXI6PFF1ZXN0Pl0gUmFjaGUKQWxsZXMgd2lyZnQgc2ljaCB3ZWcgdm9yIGxhY2hlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzcyB1bmQgc3ogKEdhc3QxLCAxNC4gSmFuIDE5OTcsIDIyOjQwOjEyKToKSW0gTGF1ZmUgZGVzIExlc2VucyBkZXIgWmVpdHVuZyBoYWJlIGljaCBkZW4gRWluZHJ1Y2sgZXJoYWx0ZW4sCmRhc3MgZGllIEZyYWdlIHNzIG9kZXIgc3ogaW4gZGllc2VyIFdlbHQgbmljaHQgZ2VudWcgZXJvZXJ0ZXJ0IHdlcmRlbgprYW5uLiBJY2ggaGFiZSBkYWhlciBiZXNjaGxvc3NlbiwgbWVpbmUgTWVpbnVuZyAtIGRpZSBzaWNoIHNpY2hlciBtaXQKZXRsaWNoZW0gZWNrdCB3YXMgYW4gYWVobmxpY2hlciBTdGVsbGUgenUgZGllc2VtIFRoZW1hIGJlcmVpdHMgZ2VzYWd0Cnd1cmRlLCBiZWl6dXRyYWdlbi4KU293ZWl0IG1pdCBiZWthbm50IHN0YW1tdCBkYXMgbW9kZXJuZSBkZXV0c2NoZSBTY2hhcmZlIFMgYXVzIGRlcgpkZXV0c2NoZW4gSGFuZHNjaHJpZnQsIGRlbSBTdWV0dGVybGluLCBkaWUgYWxsZXJkaW5ncyBrZWluZW4gc29sY2hlbgpCdWNoc3RhYmVuIGtlbm50LiBTaWUga2VubnQgbnVyIHp3ZWkgRm9ybWVuIGZ1ZXIgZGFzIGVpbmZhY2hlICdzJywKZWluZSBzZWhyIGxhbmdlc3RyZWNrdGUsIGRpZSB3b2hsIEZvcmJpbGQgZnVlciBkYXMgcyBpbiBkZXIgRnJha3R1cgpzY2hyaWZ0IHdhciwgdW5kIGVpbmUgRm9ybSBmdWVyIGRhcyBzIGFtIFdvcnRlbmRlLCBkaWUgZWluZW0Ka2VpbmVuIGdyaWVjaGlzY2hlbiBTaWdtYSBhZWhuZWx0OgoKICAgICAgICAgICAgICAgICAgIHgKICAgICAgICAgICAgICAgICAgeAogICAgICAgICAgICAgICAgIHgKICAgICAgICAgICAgICAgICB4ICAgICAgICAgICAgICAgICAgeHh4CiAgICAgICAgICAgICAgICAgeCAgICAgICAgICAgIHh4ICAgeAogICAgICAgICAgICAgICAgIHggICAgICAgICAgICAgIHh4eAogICAgICAgICAgICAgICAgIHggICAgICAgICAgICAgeCAgIHgKICAgICAgICAgICAgICAgICB4ICAgICAgICAgICAgeCAgICB4CiAgICAgICAgICAgICAgICAgeCAgICAgICAgICAgICB4ICB4Ci0tLS0tLS0tLS0tLS0tLS0teC0tLS0tLS0tLS0tLS0teHgtLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgICAgICAgICAgICAgICB4CiAgICAgICAgICAgICAgICAgeAogICAgICAgICAgICAgICAgIHgKICAgICAgICAgICAgICAgIHgKCkRpZSBGb3JtIGRhcyBTY2hhcmZlbiBTIGlzdCBhdXMgZGVzIEJ1Y2hzdGFiZW5mb2xnZSAnc3MnIGVuc3RhbmRlbiwKaW5kZW0gZGFzIHp3ZWl0ZSBzIGRhbm4ga2xlaW5lciBhbHMgZGFzIGVyc3RlIGdlc2NocmllYmVuIHd1cmRlLAp1bmQgaW0gU2NocmlmdHNjaHd1bmcgYW4gZGVuIG9iZXJlbiBCb2dlbiBkZXMgZXJzdGVuIHMgYW5nZWZ1ZWd0IHd1cmRlLgoKCiAgICAgICAgICAgICAgICAgICB4ICAgICAgICAgICAgICAgIHh4CiAgICAgICAgICAgICAgICAgIHggICAgICAgICAgICAgICAgeCAgeAogICAgICAgICAgICAgICAgIHggICAgICAgICAgICAgICAgeCAgICB4CiAgICAgICAgICAgICAgICAgeCAgICAgICAgICAgICAgICB4ICAgIHgKICAgICAgICAgICAgICAgICB4ICAgIHggICAgICAgICAgIHggICB4CiAgICAgICAgICAgICAgICAgeCAgIHggICAgICAgICAgICB4ICB4CiAgICAgICAgICAgICAgICAgeCAgIHggICAgLS0tPiAgICB4ICB4CiAgICAgICAgICAgICAgICAgeCAgICB4ICAgICAgICAgICB4ICAgeAogICAgICAgICAgICAgICAgIHggICAgeCAgICAgICAgICAgeCAgIHgKLS0tLS0tLS0tLS0tLS0tLS14LS0teC0tLS0tLS0tLS0tLXgtLXgtLS0tLS0tLS0tLS0tLQogICAgICAgICAgICAgICAgIHggICAgICAgICAgICAgICAgeAogICAgICAgICAgICAgICAgIHggICAgICAgICAgICAgICAgeAogICAgICAgICAgICAgICAgIHggICAgICAgICAgICAgICB4CiAgICAgICAgICAgICAgICB4ICAgICAgICAgICAgICAgeAoKRGFzIFNjaGFyZmUgUyBpc3QgZGFoZXIgbmljaHRzIGFuZGVyZXMgYWxzIGVpbmUgSGFuZHNjaHJpZnRsaWNoZSBGb3JtIGRlcwogJ3NzJyB1bmQgc2VpbmUgaGlzdG9yaXNjaCByaWNodGlnZSBXaWVkZXJnYWJlIGlzdCBkYW1pdCAnc3MnLgoKRGllIEJ1Y2hzdGFiZW5mb2xnZSBzeiBmdWVyIGVpbmVuIHMtTGF1dCBrb21tdCBzb3dlaXQgaWNoIHdlaXNzIGF1cyBkZW0KVW5nYXJpc2NoZW4sIHdvIGRlciBCdWNoc3RhYmUgcyBqYSBlaW5lbiBMYXV0IGJlc2NocmVpYnQsIGRlciBpbQpEZXV0c2NoZW4gbWl0ICdzY2gnIGdlc2NocmllYmVuIHdpcmQuIERlciBOYW1lIEVzc3pldHQgZnVlciBkYXMgc2NoYXJmZQpzIGR1ZXJmdGUgZGFtaXQgd29obCBhdXMgZGVtIE9lc3RlcnJlaWNoZWlzY2hlbiBlaW5nZXdhbmRlcnQgc2VpbiwKdW5kIGlzdCBhbiBzaWNoIGZ1ZXIgZGllc2VuIEJ1Y2hzdGFiZW4gbmljaHQgenV0cmVmZmVuZC4KCk5lYmVuYmVpYmVtZXJsdCB3dXJkZSBpbSBTdWV0dGVybGluIGRhcyBXb3J0ICdkYXNzJyBuaWNodCBtaXQgZGVuCnF1YXNpZSB6dW0gc2NoYXJmZW4gcyB2ZXJidW5kZW5lbiBnZXN0cmVja3RlbiBzIGdlc2NocmVpYmVuLCBzb25kZXJuCm1pdCBlaW5lbSBMYW5nZ2V6b2dlbmVuIHMgZ2Vmb2xndCB2b24gZGVyIEZvcm0gZnVlciBkYXMgV29ydGVuZGUsIHdhcyBqYSBhdWNoCmtsYXIgaXN0LCBkYSBkYXMgbGV0enRlIHMgYW0gV29ydGVuZGUgc3RlaHQsIGRhcyBkYXZvciBhYmVyIG5pY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNzIHVuZCBzeiAoU3VzaGksIDE0LiBKYW4gMTk5NywgMjI6NDI6MzYpOgp+IyEgcm49R2FzdDEgcnQ9ODUzMjc4MDEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUzMjc4MDEyCk5lZWUsIGFsc28gd2lya2xpY2guLi4KTmVlZSwgYWxzbyB3aXJrbGljaC4uLgpPaCwgYmxvZWRlcyB6TXVkLi4uCgoKRWdhbCAtIGRpZSBTY2hyaWZ0IGhpZXNzIGFsbGVuZmFsbHMgQ3VycmVudCwgd2FobHdlaXNlIGF1Y2ggU2Nod2FiYWNoZXIuClN1ZXR0ZXJsaW4gaXN0IHZpZWwganVlbmdlci4gQWJlciBlZ2FsLgoKU3VzaGkgLSBoZWZ0aWdzdCBzZW5mZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNzIHVuZCBzeiAoSmFzcGVyLCAxNC4gSmFuIDE5OTcsIDIzOjE5OjMxKToKfiMhIHJuPUdhc3QxIHJ0PTg1MzI3ODAxMiByZz1zY2htYXJybgp+IyEgdGlkPTg1MzI3ODAxMgp3YXJ1bSBsb2dnc3QgZHUgZGljaCBkZW5uIGpldHp0IHNjaG9uIGFscyBnYXN0IGVpbiB1bSBhcnRpa2VsIHp1IHNjaHJlaWJlbiwKYWNyaW1vbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc3MgdW5kIHN6IChTdXNoaSwgMTQuIEphbiAxOTk3LCAyMzoyMDowOCk6Cn4jISBybj1KYXNwZXIgcnQ9ODUzMjgwMzcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUzMjc4MDEyCkRhbWl0IFd1cnN0bWFnaWVyIGR1bW1lIEZyYWdlbiBzdGVsbGVuIGtvZW5uZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc3MgdW5kIHN6IChXb29keSwgMTUuIEphbiAxOTk3LCAwMzoyMDo0NCk6Cn4jISBybj1HYXN0MSBydD04NTMyNzgwMTIgcmc9c2NobWFycm4KfiMhIHRpZD04NTMyNzgwMTIKCiA+IC4uLgogPiBEZXV0c2NoZW4gbWl0ICdzY2gnIGdlc2NocmllYmVuIHdpcmQuIERlciBOYW1lIEVzc3pldHQgZnVlciBkYXMgc2NoYXJmZQogPiBzIGR1ZXJmdGUgZGFtaXQgd29obCBhdXMgZGVtIE9lc3RlcnJlaWNoZWlzY2hlbiBlaW5nZXdhbmRlcnQgc2VpbiwKCkRhcyBzY2hhcmZlIHMgaGVpc3N0IGF1Y2ggYmVpIHVucyBpbiAuYXQgc2NoYXJmZXMgcyB1bmQgbmljaHQgRXNzemV0dC4KCndvb2R5IC4gbyBPICggbWF4aW1hbCBFc3NlbnN6ZWl0Li4uICkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc3MgdW5kIHN6IChDYXJhZGhyYXMsIDE1LiBKYW4gMTk5NywgMDk6MDE6MjIpOgp+IyEgcm49V29vZHkgcnQ9ODUzMjk0ODQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUzMjc4MDEyCkhhbm9pLCBtaXIgU2Nod29iYSBzYWdlIGRhIGRyZWllcmxlcy1zIGRhenVhLCBpc2NoIGRlcyBiZWkgZWljaCBhCnNjaGFyZnMgcyBvZHIgYSBlc3N6ZXR0PyBKbyBkZXMgZ2lidHMgZWxsZXMsIGRyZWllcmxlcy1zIGlzY2ggYWJiZXIKdmlpaWVsIHNjaGVubmVyIHp1IHNjaHdhZXR6ZS4KCiAgICAgICAgICAnUyBSb3Rob2VybmxlIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzcyB1bmQgc3ogKEFjcmltb24sIDE1LiBKYW4gMTk5NywgMTQ6NDY6MjUpOgp+IyEgcm49SmFzcGVyIHJ0PTg1MzI4MDM3MSByZz1zY2htYXJybgp+IyEgdGlkPTg1MzI3ODAxMgpEYXMgd2FyIGdhbnogYmVzdGltbXQgbmljaHQgaWNoLgoKMS4gaWNoIHN0ZWhlIHp1IG1laW5lbiBBdXNzYWdlbi4KMi4gSWNoIGhhYmUgZGEgZWluZSBhbmRlcmUgTWVpbnVuZyAoaXN0IGRpZSBuaWNodCBzY2hvbiBiZWthbm50PykKMy4gRWluZSBndXRlIEFudHdvcnQgYmluIGljaCBFdWNoIG5vY2ggc2NodWxkaWcgLi4uCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHNzIHVuZCBzeiAoWWVuZGksIDE1LiBKYW4gMTk5NywgMjE6MjY6MTApOgp+IyEgcm49QWNyaW1vbiBydD04NTMzMzU5ODUgcmc9c2NobWFycm4KfiMhIHRpZD04NTMyNzgwMTIKCj4gMy4gRWluZSBndXRlIEFudHdvcnQgYmluIGljaCBFdWNoIG5vY2ggc2NodWxkaWcgLi4uCj4KPiBBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCk1hY2h0IG5pY2h0cywgQWNyaW1vbiwgd2lyIHNjaGVua2VuIHNpZSBEaXIuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBzcyB1bmQgc3ogKExvY28sIDE2LiBKYW4gMTk5NywgMTE6MjY6MjEpOgp+IyEgcm49QWNyaW1vbiBydD04NTMzMzU5ODUgcmc9c2NobWFycm4KfiMhIHRpZD04NTMyNzgwMTIKPiAxLiBpY2ggc3RlaGUgenUgbWVpbmVuIEF1c3NhZ2VuLgoKTXVlc3N0ZSBkYXMgYmVpIERpciBuaWNodCBBdXN6YWdlbiBoZWlzc2VuPwoKKHNjaG1hcnJuPyBzaW5kIHdpciBkb2NoIHNjaG9uKQoKLSBMb2NvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFplcGh5ciwgMTYuIEphbiAxOTk3LCAxMjowODoxNSk6Cj4gVHN1bmFtaSB0ZWlsdCBEaXIgbWl0OiBoYWJlIG5pY2h0IGdlc2VoZW4sIGRhc3MgZGllIEh5ZHJhIGRhIGlzLi4uLgpUc3VuYW1pIHRlaWx0IERpciBtaXQ6IHZvbiAyMDIgcnVudGVyIGF1ZiAyMCBMUC4uLi4KPiBUc3VuYW1pIHRlaWx0IERpciBtaXQ6IGJycgpUc3VuYW1pIHRlaWx0IERpciBtaXQ6IHdhciB2b3JoZXIgcmFzY2ggd2VnIC4uLgpbVG9kOkxhcnNdIEVpbmUgSHlkcmEgaGF0IGdlcmFkZSBUc3VuYW1pIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBIeWRyYV0gaHNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzCkR1IHRlaWxzdCBUc3VuYW1pIG1pdDogSE1QRgoKQmVpbGVpZCB3dWVuc2NoZW5kLCBhYmVyIGVzIHNpY2ggbmljaHQgdmVya25laWZlbiBrb2VubmVuZCwgWmVwaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRlJBVUVOICEhISAoWWFudHJvLCAxNi4gSmFuIDE5OTcsIDEyOjExOjA2KToKCkVzIGdpbmcgdW0gUkwtR3JvZXNzZSB1bmQgTXVkLUdyb2Vzc2UgdW5kIGRlciBWZXJnbGVpY2guLi4KClRlbGthIHRlaWx0IERpciBtaXQ6IEljaCBiaW4gdmllbCBncm9lc3NlciBpbiBSTC4KVGVsa2EgdGVpbHQgRGlyIG1pdDogSWNoIGJpbiBnZW5hdXNvIGdyb3NzIHdpZSBPZXR0aSEgOi0pCgpKYSwgd2F0dCBkZW5uIG51PwoKWWFudHJvLCBtZXNzZW5kLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWVubmVyIChUZWxrYSwgMTYuIEphbiAxOTk3LCAxMjozMjo0NCk6CkFsc28gLSBpY2ggYmluIG51biBtYWwgZ3JvZXNzZXIgYWxzIDE2MCBjbSAhISEgdW5kIHZvbiBkYWhlciBmaW5kZSBpY2ggc2Nob24sCmRhc3MgZXMgbmUgRnJlY2hoZWl0IGlzdCwgbWljaCBzbyBrbGVpbiB6dSBtYWNoZW4uCkFiZXIgd2FzIHNvbGwgZnJhdSBhdWNoIHNjaG9uIGFuZGVyZXMgdm9uIHNvIGVpbmVtIE1hbm4gZXJ3YXJ0ZW4gOy0pClRlbGthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFlbm5lciAoT2V0dGksIDE2LiBKYW4gMTk5NywgMTI6MzM6MjEpOgp+IyEgcm49VGVsa2EgcnQ9ODUzNDE0MzY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUzNDE0MzY0Ck1hbm4gPz8/PwoKTUFOTiA/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/CgpPZSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNYWVubmVyIChTdW5mbG93ZXIsIDE2LiBKYW4gMTk5NywgMTI6MzQ6MDUpOgp+IyEgcm49VGVsa2EgcnQ9ODUzNDE0MzY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUzNDE0MzY0CkR1IGJpc3QgYWJlciBrbGVpbi4uLmVzIGlzdCBhbGxlcyBrbGVpbiB3YXMgdW50ZXIgMTk0Y20gbGllZ3QgOikKCiAgICAgICAgICAgICAgICAgICAgLS09PT0gYmx1ZW1jaGVuID09PS0tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hZW5uZXIgKENhdW5vLCAxNi4gSmFuIDE5OTcsIDEyOjU5OjQwKToKfiMhIHJuPVN1bmZsb3dlciBydD04NTM0MTQ0NDUgcmc9c2NobWFycm4KfiMhIHRpZD04NTM0MTQzNjQKRGFzIHdhciBkYW5uIHdvaGwgZGllIEhvZWhlIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hZW5uZXIgKEVuZ3l3dWNrLCAxNi4gSmFuIDE5OTcsIDEzOjA5OjMxKToKfiMhIHJuPVRlbGthIHJ0PTg1MzQxNDM2NCByZz1zY2htYXJybgp+IyEgdGlkPTg1MzQxNDM2NApBbHNvLCBpY2ggaGFiIG1hbCBnZWhvZXJ0LCBkYXNzIGVzIG5pY2h0IGF1ZiBkaWUgR3JvZXNzZSBhbmtvbW10LCBzb25kZXJuCmRhcmF1Ziwgd2FzIG1hbiBkYW1pdCBtYWNodC4KCk51ciBzbyBuZSBWZXJtdXR1bmcsCkVuZ3kqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFlbm5lciAoR3VsZHVrYXQsIDE2LiBKYW4gMTk5NywgMTM6NTM6NTEpOgp+IyEgcm49VGVsa2EgcnQ9ODUzNDE0MzY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUzNDE0MzY0Cgpob21vOiAobGF0ZWluaXNjaCkgTWVuc2NoLCBNYW5uCgotPiBOdXIgTWFlbm5lciBzaW5kIE1lbnNjaGVuIQoKOykKR0QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZW5uZXIgKEdyYWxrb3IsIDE2LiBKYW4gMTk5NywgMTQ6MDU6MjcpOgogUHVua3QgMSBkYXMsIHVuZCBpbSBFbmdsaXNjaGVuIGlzdHMgYWVobmxpY2ggTUFOS0lORCEhISEKR3JhbGtvciwgbWFlbm5saWNoIHNlaWVuZCAgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFlbm5lciAoSGFkcmEsIDE2LiBKYW4gMTk5NywgMTQ6NTA6MTIpOgp+IyEgcm49R3JhbGtvciBydD04NTM0MTk5Mjcgcmc9c2NobWFycm4KfiMhIHRpZD04NTM0MTk5MjcKbWFua2luZD8gaWNoIGRhY2h0ZSBkYXMgc3RlaHQgZnVlciBkYXMga2luZCBpbSBtYW5uZS4KCmhhZHJhIC0gdmVyd2lycnQgd2llIGltbWVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbndlbmRlciEgKFJhZmZpLCAxNi4gSmFuIDE5OTcsIDE1OjM5OjQ0KToKRjpXZW5uIFByb3oga2FwdXR0IGRhbm4gcGFzc2llcnQgZ2FyIG5peD8KQTpOZWluLgpGOk5hamEsIHdlbmlnc3RlbnMgZGFzIENtb3Mga29lbm50ZSBzdGFydGVuIHVuZCBkaWUKICBHcmFmaWthcnRlIGluaXRpZWxpc2llcmVuIQoKQVJHSCEKCkdydXNzCkguCgpQLlMuOiBlcyBnaW5nIGRhbm4gbm9jaCB3ZWl0ZXI6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWFlbm5lciAoUmFmZmksIDE2LiBKYW4gMTk5NywgMTU6NDk6NTQpOgp+IyEgcm49Q2F1bm8gcnQ9ODUzNDE1OTgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUzNDE0MzY0CkVzIGdpbmcgZG9jaCB1bSBkaWUgR3JvZXNzZSwgQ2F1bm8sIHVuZCBuaWNodCB1bSBkaWUgSG9laGUgKGRhZnVlciBnaWJ0cwpQbGF0ZWF1c29obGVuKS4KCkFiZXJhbnNvbm5zdGVuIGlzdCBkb2NoIDEsNjBtIGZ1ZXIgbmUgWndlcmdpbiBnYW56IGJlYWNodGxpY2guCgpHcnVzcwpILgooUmFmZmkgbWFnIGdyb3NzZSBGcmF1ZW46KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNYWVubmVyIChHcmltbWJvcm4sIDE2LiBKYW4gMTk5NywgMTg6MTY6MTUpOgp+IyEgcm49RW5neXd1Y2sgcnQ9ODUzNDE2NTcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUzNDE0MzY0CiJXYXMgaXN0IHdpY2h0aWdlciwgZWluIGdyb3NzZXIgU2NobmllZGVsIG9kZXIgZWluZSBndXRlIFRlY2huaWs/IgoiRWluZSBndXRlIFRlY2huaWsgbmF0dWVybGljaC4iCiJBaGEsIHdpZWRlciBlaW5lciBtaXQgbmVtIGt1cnplbiIKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hZW5uZXIgKFFpdGVzcywgMTcuIEphbiAxOTk3LCAwOTo1NjowMik6Cn4jISBybj1UZWxrYSBydD04NTM0MTQzNjQgcmc9c2NobWFycm4KfiMhIHRpZD04NTM0MTQzNjQKYXVzc2VyZGVtIHJlZGV0IGlociBoaWVyIGphIHdvaGwgbmljaHQgdWViZXIgZ3JvZXNzZSwgc29uZGVybiB1ZWJlciBsYWVuZ2UuCnp1ciBncm9lc3NlIGJlZGFyZiBlcyBldHdhcyBtZWhyIGFscyB6YiAxOTQgY20ga29lcnBlcmxhZW5nZS4KCnFpIC0gbXVzcyBqZXR6dCBtYWwgZWluIGJpc3NjaGVuIGhvY2h0cmFiZW4KCiAgICAgICAgICAgICAgICAuLi4gdW5kIGZhZWxsdCB2b3IgTGFjaGVuIGZhc3Qgdm9tIFBmZXJkLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc29zbyAoUWl0ZXNzLCAxNy4gSmFuIDE5OTcsIDE1OjIxOjM4KToKPiBEdSBzYWdzdDogVk9SU0lDSFQgISBNVUQtU1BJRUxFTiBNQUNIVCBTVUVDSFRJRyAhCj4gT3JrdG9ldGVyIGdyaW5zdCBEaWNoIC96d2VpZmVsbmQgYXVzIGRlciBGZXJuZSBhbi4KCmFoYS4KClFJIAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzb3NvIChTdW5mbG93ZXIsIDE3LiBKYW4gMTk5NywgMTU6MjQ6NDMpOgp+IyEgcm49UWl0ZXNzIHJ0PTg1MzUxMDg5OCByZz1zY2htYXJybgp+IyEgdGlkPTg1MzUxMDg5OApNVUQgc3BpZWxlbiBtYWNodCBzdWVjaHRpZywgZGFzIGthbm4gbmljaHQgc2Vpbi4gCkljaCBrb2VubnRlLCB3ZW5uIGljaCB3aWxsLCBqZWRlbiBUYWcgZGFtaXQgYXVmaG9lcmVuLiBJY2ggd3Vlc3N0ZSB6d2FyIGRhbm4KbmljaHQgd2FzIGljaCB6d2lzY2hlbiA3IHVuZCAyMSBVaHIgbWFjaGVuIHNvbGx0ZSwgYWJlciBpY2gga2FubiB3aXJrbGljaApkYW1pdCBhdWZob2VyZW4uIEljaCBtdXNzIG51ciBkZW4gUmVjaG5lciBhdXNzY2hhbHRlbi4gQWJlciBpY2ggbW9lY2h0ZSBlcwpuaWNodCwgbWlyIGdlZmFlbGx0IGVzIGhpZXIsIGFiZXIgaWNoIGJpbiBuaWNodCBzdWVjaHRpZy4gCgpTdW5mbG93ZXIsIGlzdCBudXIgaW0gUlogZXJyZWljaGJhci4KCiAgICAgICAgICAgICAgICAgICAgLS09PT0gYmx1ZW1jaGVuID09PS0tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHNvc28gKFFpdGVzcywgMTcuIEphbiAxOTk3LCAxNToyNTo1Myk6Cn4jISBybj1TdW5mbG93ZXIgcnQ9ODUzNTExMDgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUzNTEwODk4Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLT4gIEUgQiBFIE4gISAhICEgIDwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKcWkqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1ZiBkZW4gbGV0enRlbiBEcnVlY2tlci4uLiAoR3JpbW1ib3JuLCAxNy4gSmFuIDE5OTcsIDIxOjQ1OjE2KToKLi4uaGllciBkZXIgU3BydWNoIGRlciB2ZXJnYW5nZW5lbiBXb2NoZToKCiJNYW4ga2FubiBkaWUgWmVpdCBudXIgdmVyZ2Vzc2VuIGluZGVtIG1hbiBzaWUgZ2VicmF1Y2h0LiIgKEMuIEJhdWRlbGFpcmUpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp1ciBaZWl0IGluIG1laW5lbSBJbnYuLi4gKFNseWZveCwgMTguIEphbiAxOTk3LCAxNDoyNjowMSk6CldhcyBzaWNoIHp1ciBaZWl0IGluIG1laW5lbSBJbnYgYmVmaW5kZXQ6CgpEZXIgU2NodXBwZW5wYW56ZXIgdm9uIGVpbmVtIFBhYXIgU2llYmVubWVpbGVuc3RpZWZlbCAoYW5nZXpvZ2VuKS4KClNhY2hlbiBnaWJ0J3MgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFiZ2FuZyAoU2NoYXVpLCAxOC4gSmFuIDE5OTcsIDE2OjI5OjQxKToKRHUgdHJpZmZzdCBkaWUgU3ByZWNoc3R1bmRlbmhpbGZlIGhhcnQuCkRpZSBTcHJlY2hzdHVuZGVuaGlsZmUgbXVybWVsdDogVG9kIGR1cmNoIGF1ZXNzZXJlIEVpbndpcmt1bmcuLi4gdW5kIHN0aXJidC4KCkRhcyBpc3QgbWFsIG5lIG5ldHRlIFRvZGVzbWVsZHVuZyA7KSkKU2NoYXVpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCRUVSICYgSkVTVVMgKE51c3NwbGksIDIwLiBKYW4gMTk5NywgMTI6MDM6MDgpOgpUb3AgVGVuIFJlYXNvbnMgV2h5IEJlZXIgSXMgQmV0dGVyIFRoYW4gSmVzdXMgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gCjEuICBObyBvbmUgd2lsbCBraWxsIHlvdSBmb3Igbm90IGRyaW5raW5nIEJlZXIuCjIuICBCZWVyIGRvZXNuJ3QgdGVsbCB5b3UgaG93IHRvIGhhdmUgc2V4IAozLiAgQmVlciBoYXMgbmV2ZXIgY2F1c2VkIGEgbWFqb3Igd2FyLgo0LiAgVGhleSBkb24ndCBmb3JjZSBCZWVyIG9uIG1pbm9ycyB3aG8gY2FuJ3QgdGhpbmsgZm9yIHRoZW1zZWx2ZXMuCjUuICBXaGVuIHlvdSBoYXZlIGEgQmVlciwgeW91IGRvbid0IGtub2NrIG9uIHBlb3BsZSdzIGRvb3JzIHRyeWluZyB0byBnaXZlIGl0IAphd2F5Lgo2LiAgTm9ib2R5J3MgZXZlciBiZWVuIGJ1cm5lZCBhdCB0aGUgc3Rha2UsIGhhbmdlZCwgb3IgdG9ydHVyZWQgb3ZlciB0aGVpciAKYnJhbmQgb2YKICAgIEJlZXIKNy4gIFlvdSBkb24ndCBoYXZlIHRvIHdhaXQgMjAwMCsgeWVhcnMgZm9yIGEgc2Vjb25kIEJlZXIuIAo4LiAgVGhlcmUgYXJlIGxhd3Mgc2F5aW5nIEJlZXIgbGFiZWxzIGNhbid0IGxpZSB0byB5b3UuIAo5LiAgWW91IGNhbiBwcm92ZSB0aGVyZSBpcyBhIEJlZXIuCjEwLiBJZiB5b3UndmUgZGV2b3RlZCB5b3VyIGxpZmUgdG8gQmVlciwgdGhlcmUgYXJlIGdyb3VwcyB0byBoZWxwIHlvdSBzdG9wLgogICAgIC4KCk51c3NwbGkuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU0VYICYgQ0hPQ09MQVRFIChOdXNzcGxpLCAyMC4gSmFuIDE5OTcsIDEyOjA1OjI2KToKVE9QIFRXRU5UWSBSRUFTT05TIFdIWSBDSE9DT0xBVEUgSVMgQkVUVEVSIFRIQU4gU0VYOiAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gCjEuICBZb3UgY2FuIEdFVCBjaG9jb2xhdGUuCjIuICAiSWYgeW91IGxvdmUgbWUgeW91J2xsIHN3YWxsb3cgdGhhdCIgaGFzIHJlYWwgbWVhbmluZyB3aXRoIGNob2NvbGF0ZS4gCjMuICBDaG9jb2xhdGUgc2F0aXNmaWVzIGV2ZW4gd2hlbiBpdCBoYXMgZ29uZSBzb2Z0Lgo0LiAgWW91IGNhbiBzYWZlbHkgaGF2ZSBjaG9jb2xhdGUgd2hpbGUgeW91IGFyZSBkcml2aW5nLiAKNS4gIFlvdSBjYW4gbWFrZSBjaG9jb2xhdGUgbGFzdCBhcyBsb25nIGFzIHlvdSB3YW50IGl0IHRvLiAKNi4gIFlvdSBjYW4gaGF2ZSBjaG9jb2xhdGUgZXZlbiBpbiBmcm9udCBvZiB5b3VyIG1vdGhlci4KNy4gIElmIHlvdSBiaXRlIHRoZSBudXRzIHRvbyBoYXJkIHRoZSBjaG9jb2xhdGUgd29uJ3QgbWluZC4KOC4gIFR3byBwZW9wbGUgb2YgdGhlIHNhbWUgc2V4IGNhbiBoYXZlIGNob2NvbGF0ZSB3aXRob3V0IGJlaW5nIGNhbGxlZAogICAgbmFzdHkgbmFtZXMuCjkuICBUaGUgd29yZCAiY29tbWl0bWVudCIgZG9lc24ndCBzY2FyZSBvZmYgY2hvY29sYXRlLgoxMC4gWW91IGNhbiBoYXZlIGNob2NvbGF0ZSBvbiB0b3Agb2YgeW91ciB3b3JrYmVuY2gvZGVzayBkdXJpbmcgd29ya2luZwogICAgaG91cnMgd2l0aG91dCB1cHNldHRpbmcgeW91ciB3b3JrIG1hdGVzLgoxMS4gWW91IGNhbiBhc2sgYSBzdHJhbmdlciBmb3IgY2hvY29sYXRlIHdpdGhvdXQgZ2V0dGluZyB5b3VyIGZhY2UKICAgIHNsYXBwZWQuCjEyLiBZb3UgZG9uJ3QgZ2V0IGhhaXJzIGluIHlvdXIgbW91dGggd2loIGNob2NvbGF0ZS4gCjEzLiBXaXRoIGNob2NvbGF0ZSB0aGVyZSdzIG5vIG5lZWQgdG8gZmFrZSBpdC4KMTQuIENob2NvbGF0ZSBkb2Vzbid0IG1ha2UgeW91IHByZWduYW50LgoxNS4gWW91IGNhbiBoYXZlIGNob2NvbGF0ZSBhdCBhbnkgdGltZSBvZiB0aGUgbW9udGguIAoxNi4gR29vZCBjaG9jb2xhdGUgaXMgZWFzeSB0byBmaW5kLgoxNy4gWW91IGNhbiBoYXZlIGFzIG1hbnkga2luZHMgb2YgY2hvY29sYXRlIGFzIHlvdSBjYW4gaGFuZGxlLiAKMTguIFlvdSBhcmUgbmV2ZXIgdG9vIHlvdW5nIG9yIHRvbyBvbGQgZm9yIGNob2NvbGF0ZS4KMTkuIFdoZW4geW91IGhhdmUgY2hvY29sYXRlIGl0IGRvZXMgbm90IGtlZXAgeW91ciBuZWlnaGJvcnMgYXdha2UuIAoyMC4gV2l0aCBjaG9jb2xhdGUgc2l6ZSBkb2Vzbid0IG1hdHRlcjsgaXQncyBhbHdheXMgZ29vZAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJpa3VzJyBDaGFybWUgKFdvb2R5LCAyMC4gSmFuIDE5OTcsIDE1OjM0OjU3KToKCk1pZXplIHdlaWx0IHdpZWRlciB1bnRlciBkZW4gTGViZW5kZW4uClJpa3VzIHNhZ3Q6IGFoIG1pZXplIQpNaWV6ZSBzcHJpbmd0IGd1dGdlbGF1bnQgbmFjaCBOb3JkZW4uCgp3b29keS4tIChoYXQgaW1tZXIgc2Nob24gUmlrdXMnIENoYXJtZSBiZXd1bmRlcnQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmlrdXMnIENoYXJtZSAoUmlrdXMsIDIwLiBKYW4gMTk5NywgMTU6Mzc6MTkpOgp+IyEgcm49V29vZHkgcnQ9ODUzNzcwODk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUzNzcwODk3CmFiZXIgaW1tZXIsIFdvb2R5ISA6KSBXaWVzbyBzb2xsdGUgc2llIHNvbnN0IEdVVEdFTEFVTlQgc3ByaW5nZW4/CgpSaWt1cywgY2hhcm1hbnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmlrdXMnIENoYXJtZSAoV29vZHksIDIwLiBKYW4gMTk5NywgMTU6NDI6NTYpOgp+IyEgcm49UmlrdXMgcnQ9ODUzNzcxMDM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUzNzcwODk3Cgp3ZWlsJ3MgaW0gTm9yZGVuIHNjaG9lbmVyIGlzdCA6KQoKd29vZHksIHNjaG1hcnJuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMjAuIEphbiAxOTk3LCAxNzowMjozOCk6CiJTZWhyIHdlbmlnZSBNZW5zY2hlbiBsZWJlbiBpbiBkZXIgR2VnZW53YXJ0IC0gZGllIG1laXN0ZW4gdHJlZmZlbgpWb3JiZXJlaXR1bmdlbiB1bSBtb3JnZW4genUgbGViZW4uIiAoSi4gU3dpZnQpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFyZ2wuLi4gKFNseWZveCwgMjAuIEphbiAxOTk3LCAyMDoyNzowMyk6CkVpbiBvZmZlbmVzIFBha2V0IGxhZyBpbSBSYXVtLCBpY2ggaGF0dGUgZWluIGdlc2NobG9zc2VuZXMgZGFiZWksIHVuZCB0aXBwdGU6CgpvZWZmbmUgcGFrZXQKRGFzIFBha2V0IGlzdCBzY2hvbiBvZmZlbi4KbmltbSBhbGxlcyBhdXMgcGFrZXQKQWJlciBkYXMgUGFrZXQgaXN0IGRvY2ggZ2VzY2hsb3NzZW4uCgpBUkdMIDspCgogU2x5Zm94YwogYWVoIFNseWZveAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcGFzc2VuZCBtYWwgd2llZGVyLi4uIChIYXJkaWwsIDIxLiBKYW4gMTk5NywgMTM6NDI6MjUpOgpFaW4gQmVpZmFsbHNzdHVybSBicmFuZGV0IGltIERpYW1vbmRwYXJrIGF1Zi4gV2FzIGRhIHdvaGwgd2llZGVyIGxvcyBpc3Q/CltUb2Q6TGFyc10gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSBWYW5kYW1tZSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBXZWdoaWVyXSBHb3RjaGEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYWphLCBkZXIgQmVuZGUgLi4uIChKYW5pY2UsIDIxLiBKYW4gMTk5NywgMTU6MDg6MTgpOgpFYmVuLCBhbHMgaWNoIG1pY2ggZWlubG9nZ3RlOgpEdSB0ZWlsc3QgZGVpbmVuIEZyZXVuZGVuIG1pdDogc2Nob2VuIGd1dGVuIFRhZyB3dWVuc2NoIGljaCBldWNoICEhISEhCkZhaG5kZXIgdGVpbHQgRGlyIG1pdDogaGkKTWFuZ28gdGVpbHQgRGlyIG1pdDogbWFjaCBqYSBuaWNodCAtVCoKRHUgaGFzdCAyMTAgTGViZW5zcHVua3RlIHVuZCAxMTcgTWFnaWVwdW5rdGUuCk15c3RlcmlvdXMga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpCZW5kZWlnaWQgdGVpbHQgRGlyIG1pdDogaGkga2xlaW5lIDopCmZrbnVkZGVsIC9mcm9laGxpY2gKRHUga251ZGRlbHN0IGRlaW5lIEZyZXVuZGUgZnJvZWhsaWNoLgpEaWVkZXIga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpiZW4gaWNoIGJpbiBuaWNodCBrbGVpbiAhIQpEdSB0ZWlsc3QgQmVuZGVpZ2lkIG1pdDogaWNoIGJpbiBuaWNodCBrbGVpbiAhIQpCZW5kZWlnaWQgdGVpbHQgRGlyIG1pdDogb2suIGhpIHdpbnppZ2UhCmJlbiBpY2ggYmluIGF1Y2ggbmljaHQgd2luemlnICEKRHUgdGVpbHN0IEJlbmRlaWdpZCBtaXQ6IGljaCBiaW4gYXVjaCBuaWNodCB3aW56aWcgIQpCZW5kZWlnaWQgdGVpbHQgRGlyIG1pdDogbmFndXQ6IG1pY3JvbmljZSEgKmxldHp0ZXMgd29ydCEqCmJlbiB3YXMgbWFjaHQgbWVpbiBlaGVyaW5nID8gOikKRHUgdGVpbHN0IEJlbmRlaWdpZCBtaXQ6IHdhcyBtYWNodCBtZWluIGVoZXJpbmcgPyA6KQpCZW5kZWlnaWQgdGVpbHQgRGlyIG1pdDogZ3V0ZXIga29udGVyIDspCnJncmlucyBiZW5kZWlnaWQKQmVuZGVpZ2lkLT5KYW5pY2UgZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBhbi4KCndhcyBpc3QgbnVuIEJlbmRlID8gS3JpZWcgaWNoIGlobiBiYWxkIG9kZXIgd2FzID8gOikKSmFuaWNlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoYXQgZGVyIEZhZWhybWFubiBVcmxhdWI/IChUaGVyaW4sIDIxLiBKYW4gMTk5NywgMTc6NTQ6MTcpOgpuZXVsaWNoIGFtIERyYWNoZW5zZWU6Cgo+IHppZWhlIHN0cmljawpEdSB6aWVoc3QgYW0gU3RyaWNrLiBFaW4gR2xvY2tlbnNjaGxhZyBoYWxsdCB1ZWJlciBkZW4gRHJhY2hlbnNlZS4KRWluIEZldWVyc2FsYW1hbmRlciBrb21tdCBhbi4KCkhtbW0uLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPY2hzZW5mcm9zY2ggRGlkaS4uLiAoQW5hdG9sLCAyMS4gSmFuIDE5OTcsIDE4OjU4OjQwKToKCkRlciBkdW5rbGUgRGVja2hlbmdzdCBlaW4gRnJvc2NoIHF1YWt0OiBRdWFhYWssIHF1YWFhYWFhaywKRGVyIGR1bmtsZSBEZWNraGVuZ3N0IGVpbiBGcm9zY2ggcXVha3Q6IHF1dXV1YWFhYWFhYWFhYWFhYWFhYWFhYWFrICEhCgoKJ3ByZXNheScgYXVmIDAsIHNlY3VyZW4sIHVuZCBSdWhlIGlzdC4uLi4gCkdlbmVydnQsIApBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXIgYm9pbmdzY2hlIFJlc2V0PyAoTWFuZ28sIDIxLiBKYW4gMTk5NywgMjA6MjM6MTIpOgoKRGllIFRpdGFud2FsemUgemVyZmFlbGx0IGluIGlocmUgQmVzdGFuZHRlaWxlLgpFaW5lIFRpdGFud2FsemUga29tbXQgYW4uCgoKTWFuZ28sIHNlaHIgZXJzdGF1bnQuCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEZXIgYm9pbmdzY2hlIFJlc2V0PyAoSG9vZCwgMjEuIEphbiAxOTk3LCAyMDoyNzoyMyk6Cn4jISBybj1NYW5nbyBydD04NTM4NzQ1OTIgcmc9c2NobWFycm4KfiMhIHRpZD04NTM4NzQ1OTIKZWhlciBib2luZ3NjaGVyIHp1ZmFsbCA6KQoKLS0tLS0tCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEZXIgYm9pbmdzY2hlIFJlc2V0PyAoQW5hdG9sLCAyMS4gSmFuIDE5OTcsIDIyOjI2OjU3KToKfiMhIHJuPUhvb2QgcnQ9ODUzODc0ODQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUzODc0NTkyCgpWaWVsbGVpY2h0IHNvbGx0ZSBkb2NoIG1hbCBlaW5lciBkaWUgTXVkbGliIG5hY2ggUkVGUkVTSF9CT0lORyBkdXJjaGdyZXBwZW4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW0/IChQYW50aGVyLCAyMi4gSmFuIDE5OTcsIDA4OjQ2OjE4KToKRGFzIEthbXBmYmxlY2ggZmFlbGx0IGxhdXQgc2NoZXBwZXJuZCB1bS4KRHUga29uemVudHJpZXJzdCBEaWNoIGpldHp0IGF1ZiBlaW4gdG90ZXMgS2FtcGZibGVjaC4KClBhbnRoZXIsIHZlcmJsdWVmZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZhc3QgRkxXLi4uIDotKSAoTWFnZ2ksIDIyLiBKYW4gMTk5NywgMTI6MDA6NTEpOgoKR3JtYmx3bXBmIHJ1ZnQ6IGhpZXIgaXN0IGVpbiBsb2NoIGltIGJhdW0gKGF1ZiBUYW1pYmFyKS4gaXN0IGRhIHdhcyBkcmluPwpEdSBydWZzdDogSkEhIDotKQpHcm1ibHdtcGYgdGVpbHQgRGlyIG1pdDogdW5kIHdpZSBrYW5uIGljaCBkYSByZWluIGd1Y2tlbj8/PwpEdSB0ZWlsc3QgR3JtYmx3bXBmIG1pdDogZ3JlaWZlIGluIExvY2guIDotKQpHcm1ibHdtcGYgdGVpbHQgRGlyIG1pdDogV0VTUEVOISEhISEKRHUgdGVpbHN0IEdybWJsd21wZiBtaXQ6IHN0aW1tdC4gOi0pCkdybWJsd21wZiB0ZWlsdCBEaXIgbWl0OiBHcnJyci4KR3JtYmx3bXBmIHRlaWx0IERpciBtaXQ6IC4uLiB3YWVyZSBmYXN0IGdlc3RvcmJlbiEKCk1hZ2dpIGdyaW5zdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG1hcnJuIChNYWdnaSwgMjIuIEphbiAxOTk3LCAxMzoyNjo1NCk6CgpUb2UgZmx1ZXN0ZXJ0OiBOaWNodCBpbnMgUmVpY2ggZGVyIE5ldHp0b3RlbiBnZWhlbiwgZGVubiBkYSBsYXVlcnQgZGVyIFRvZCBhdWYKRGljaC4KClVuZCBpY2ggaGFldHRlIG1pY2ggZmFzdCBhdXNnZWxvZ2d0LiBHbHVlY2sgZ2VoYWJ0LgpEYW5rZSBmdWVyIGRpZSBXYXJudW5nLCBUb2UuIDotKQoKTWFnZ2kuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptaXN0aWdlIHN0ZWxsZW4gd28gbWFuIHdhZmZlbiBicmF1Y2h0IHVtIHdlaXRlciB6dSBrb21tZW4gLi4uIDspIChNYW5nbywgMjIuIEphbiAxOTk3LCAxNDoxNDozOCk6CkR1IGJhaG5zdCBEaXIgRGVpbmVuIFdlZyBuYWNoIE5vcmRlbi4KTGFieXJpbnRoLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZGVuLgpuCkR1IGtvbW1zdCBuaWNodCBkdXJjaCBkYXMgZGljaHRlIEdlc3RydWVwcCBkdXJjaC4KWnVlY2sgZXJzdCBtYWwgZWluZSBXYWZmZSwgdW0gZGVuIFdlZyBmcmVpenVoYWNrZW4uCmkKV2FmZmVuOgogMTgxIFd1cmZzdGVybmUuClJ1ZXN0dW5nZW46CiBFaW4gQW50aS1GZXVlci1SaW5nLiAoYW5nZXpvZ2VuKS4gICAgICBFaW5lIFNjaGxhbmdlbmhhdXQgKGFuZ2V6b2dlbikuCiBFaW5lIFNjaGF0dGVucnVlc3R1bmcgKGFuZ2V6b2dlbikuICAgICBFaW4gc2lsYmVybmVzIEtyZXV6IChhbmdlem9nZW4pLgpWZXJzY2hpZWRlbmVzOgogRWluIFBmaXJzaWNoIChsZXVjaHRlbmQpLiAgICAgICAgICAgICAgRWluIGdyYXVlciBTdGVpbi4gKDQpCiBMZW1iYXMuCmFyZ2wKRHUgYXJnbHN0IGVpbiB3ZW5pZyB2b3IgRGljaCBoaW4uCnp1ZWNrZSBrcmV1egpEdSB6dWVja3N0IGRhcyBLcmV1eiBkZXIgV2FocmhlaXQuCmhhY2tlIHdlZyBmcmVpCkR1IHplcmhhY2tzdCBkYXMgR2VzdHJ1ZXBwIG1pdCBEZWluZW0gS3JldXogZGVyIFdhaHJoZWl0LgpuCkxhYnlyaW50aC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgbm9yZGVuLgpFaW4gYmx1YmJlcm5kZXIgTG9ld2VuemFobi4KRWluIGJsdWJiZXJuZGVyIExvZXdlbnphaG4uCgoKCk1hbmdvLCBzaWNoIHVlYmVyIHNlaW5lIEF1dG9sb2Fkd2FmZmUgZnJldWVuZC4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ2F0d2VhemxlIHVuZCBEZXV0c2NoIChBY3JpbW9uLCAyMi4gSmFuIDE5OTcsIDE2OjE0OjUwKToKUGh5Z29zIGZyYWd0OiBWb24gd2VtIGlzdCBkYXMgc3RhZWR0Y2hlbiBlaWdlbnRsaWNoIGdlcHJvZ2d0IHdvcmRlbj8KPiBtYWdpZXIKRWluZSBTdGltbWUgZmx1ZXN0ZXJ0OiBEaWVzZXIgUmF1bSB3dXJkZSB2b24gQ2F0d2VhemxlIGdlc2NocmllYmVuLgo+ID8KRHUgaGFlbmdzdCBtaXR0ZW4gaW4gZGVyIFBhbGFzdG1hdWVyIHVuZCBoYWVsdHN0IERpY2gga3JhbXBmaGFmdCBhbiBlaW5pZ2VuClJpc3NlbiBmZXN0LiBMYW5nZSBoYWVsdHN0IER1IGRhcyBuaWNodCBtZWhyIGF1cy4gRHUgc29sbHRlc3QgRGljaCBzY2huZWxsCmVudHNjaGVpZGVuLCBvYiBEdSBob2NoIG9kZXIgb2RlciBkb2NoIGxpZWJlciB3aWVkZXIgcnVudGVya2xldHRlcm4gbW9lY2h0ZXN0LgpPYmVuIGF1ZiBkZXIgTWF1ZXIgc3RlaHQgbmFlbWxpY2ggZGVyIFdhZWNodGVyIHVuZCBzdGFycnQgYmVyZWl0cyBhdWYgRGljaApydW50ZXIuClNwcmVuZ21laXN0ZXIgUGh5Z29zIHRlc3RldCBuZXVlIFdhZmZlbi4uLi4uVk9MTEUgREVDS1VORyEhLgo+IGEKRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IGhvY2ggdW5kIHJ1bnRlci4KW0pldHp0IHRpcHB0IFBoeWdvcyAiaG9jaCI6XQpQaHlnb3MgYXVmIGRlbiBCb2RlbiBmYWVsbHN0Lgo+CgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbm4gTWFnaWVyIHNpY2ggYW4gRGFtYWxzIGVyaW5uZXJuIChTdW5mbG93ZXIsIDIyLiBKYW4gMTk5NywgMTY6MzE6MzQpOgpbTWFnaWVyOk11cGZlbF0gZGFzIHVuaGVpbCBrdWVuZGlndGUgc2ljaCBhbiBhbSAxOC4xLjk1LCBhbHMgc2NocnVtcGZpIG1hZ2llcgpbTWFnaWVyOk11cGZlbF0gd3VyZGU7IGRhbm4ga2FtIGplbmVyIDIxLjMuOTUsIHdvIGdyaW1tYm9ybiBzaWNoIHdhbmRlbHRlLCB1bmQKW01hZ2llcjpNdXBmZWxdIHVtIGRhcyBtYXNzIHZvbGwgenUgbWFjaGVuLCB3dXJkZSBhbSAxMi40Ljk1IGF1Y2ggbm9jaCB0b2V0ZXIKW01hZ2llcjpNdXBmZWxdIHp1bSBtYWdpZXIuIGRhcyB3YXIgZGFzIGVuZGUKW01hZ2llcjpHcmltbWJvcm4gZGVyIEF0aGVpc3Qgbmlja3QuIERhcyBpc3QgemllbWxpY2ggcHJhZXppc2UuXQpbTWFnaWVyOlN1bmZsb3dlcl0gd2llIEdyaW1tYm9ybiB6dW0gZXJzdGVuIE1hbCBDYXR3ZWF6bGUgZ2VnZW51ZWJlciBzdGFuZCwKW01hZ2llcjpTdW5mbG93ZXJdIHdpZSBncmltbWJvcm4gaW5zIGphaWwgbXVzc3RlLCB3ZWlsIGVyIHRyaWdnZXIgbnV0enRlLCBhbHMKW01hZ2llcjpTdW5mbG93ZXJdIEdyaW1tYm9ybiBkYW5uIGxldmVsIDIgd3VyZGUsIChzZWluIGVyc3RlciBHcm9zc2VyCltNYWdpZXI6U3VuZmxvd2VyXSBUcml1bXBmKSwgd2llIEdyaW1tYm9ybiBCb2luZyBiZXN0YWNoIHVtIHNlaW5lIHp0cyB6dQpbTWFnaWVyOlN1bmZsb3dlcl0gZmluZGVuIC4uLgpbTWFnaWVyOk11cGZlbF0gdHJpZ2dlcj8gYWxzIGdyaW1taSBzcGllbGVyIHdhciBnYWJzIGtlaW5lIHRyaWdnZXIKW01hZ2llcjpNdXBmZWxdIHN1bm5pIGR1IHJlZGVzdCB2b24gZGVyIGd1dGVuIGFsdGVuIHplaXQKW01hZ2llcjpNdXBmZWxdIChhbHMgZ3VuZHVyIG1pY2ggenVtIHdpZWRlcmhvbHRlbiBtYWwgYXVzbSBvcmtsYWdlciBiZWZyZWllbgpbTWFnaWVyOk11cGZlbF0gbXVzc3RlIDotKQpbTWFnaWVyOlN1bmZsb3dlcl0gT3BwcyBoYWJlIGljaCBkYXMgamV0enQgenVmYWVsbGlnIG1pdCBTdW5mbG93ZXIgdmVyd2VjaHNlbHQKW01hZ2llcjpTdW5mbG93ZXJdID8gOikKW01hZ2llcjpCZW5kZWlnaWRdIGRhbWFscywgYWxzIHZvbiA1IGxldXRlbiBiZWkgZGVuIHN0ZWluYmVzaXNlcm4gZHJlaSB1ZWJlcgpbTWFnaWVyOkJlbmRlaWdpZF0gZGVuIHVtd2VnIExhcnMgaW4gUG9ydCB2YWluIHdpZWRlciBlaW50cmFmZW4KW01hZ2llcjpCZW5kZWlnaWRdIHVuZCBhbHMgcnVlc3R1bmdlbiBub2NoIG5ldHRlIGRla29yYXRpb25lbiwgYWJlciBrZWluZQpbTWFnaWVyOkJlbmRlaWdpZF0gcnVlc3R1bmdlbiB3YXJlbiA6KQpbTWFnaWVyOk11cGZlbF0gbmVpbiBiZW4uIG5vY2ggdm9yIGRpZXNlbSBidWcgOi0pCltNYWdpZXI6U3VuZmxvd2VyXSBkYW1hbHMgYWxzIHNpY2ggZGVyIGFuZ2VoZW5kZSBTZWhlciBNaWxhbWJlciBhdWYgZGVyCltNYWdpZXI6U3VuZmxvd2VyXSBIb2NoZWJlbmUgdmVybGllZiB1bmQgbnVyIHZvbiB3YWdlbXV0aWdlbiBhbmZhZW5nZXJuIHdpZWRlcgpbTWFnaWVyOlN1bmZsb3dlcl0genVtIGJlcm5oYXJkaW5lciBnZWJyYWNodCB3dXJkZQpbTWFnaWVyOk11cGZlbF0gYWxzIGxldmVsIDE1IHNwaWVsZXIgYW5mYWVuZ2VyIGluIGRlciBnaWxkZSBnZXNhbW1lbHQgaGFiZW4sCltNYWdpZXI6TXVwZmVsXSB1bSBzaWUgZGFubiBhbHMgZ3J1cHBlIGF1ZiBkaWUgSEUgenUgZ2VsZWl0ZW4uIGRlciBhbmZhZW5nZXIKW01hZ2llcjpNdXBmZWxdIG11cGZlbCBib2cgZmFsc2NoIGFiIHVuZCBsYW5kZXRlIGJlaSBkZW4gc3RlaW5pcy4uLgpbTWFnaWVyOkdyaW1tYm9ybl0gSWNoIGJpbiBNYWdpZXIgZ2V3b3JkZW4sIHdvIHZpZWxsZWljaHQgemVobiBMZXV0ZSBpbiBkZXIKW01hZ2llcjpHcmltbWJvcm5dIExhZ2Ugd2FyZW4sIHJvdXRpbmVtYWVzc2lnIGRlbiBHb2JsaW5oZXhlciBhbHMgZWluZXMgZGVyCltNYWdpZXI6R3JpbW1ib3JuXSBoYWVydGVzdGVuLCBsb2huZW5kZW4gTW9uc3RlciBhbGxlaW5lIHp1IGtpbGxlbi4gSWNoIHdhcgpbTWFnaWVyOkdyaW1tYm9ybl0gbmF0dWVybGljaCBlaW5lciB2b24gZGVuZW4uCltNYWdpZXI6U3VuZmxvd2VyXSBqYWphIGRpZSBndXRlbiBhbHRlbiBaZWl0ZW4gdW5kIHdlbm4gd2lyIGRhbm4gNjAgc2luZCwKW01hZ2llcjpTdW5mbG93ZXJdIGVyemFlaGxlbiB3aXIgZGFzIGRhbm4uLi4KW01hZ2llcjpCZW5kZWlnaWRdIGFoLCBzbyBsdXNjaGVuIHdhcnQgaWhyIGRhbWFscz8KW01hZ2llcjpNdXBmZWxdIGRhcyB3YXIgZGllIHplaXQgd28gZXMgaGllc3MgZXMgZ2FlYmUgZGEgZWluZW4gbGVnZW5kYWVyZW4KW01hZ2llcjpNdXBmZWxdICdzY2h1cHBlbnBhbnplcicgZGFzIHdhZXJlIGRpZSBhbGxlcmJlc3RlIHJ1ZXN0dW5nIGFiZXIga2VpbmVyCltNYWdpZXI6TXVwZmVsXSBrb25udGUgbWlyIHNhZ2VuIHdpZSBtYW4gZGVuIGJla2FtLi4uCltNYWdpZXI6U3VuZmxvd2VyXSBzY2hsaW1tCltNYWdpZXI6QmVuZGVpZ2lkXSAuLnVuZCBudSBwcm9nZ3N0IGR1IGRyYW4gcnVtLCBNdXBmLi4uIHNhZ2VuaGFmdCA6KQpbTWFnaWVyOkdyaW1tYm9ybl0gSWNoIHdhciBiZWkgZGVyIGFsbGVyZXJzdGVuIEh5ZHJhZXhwZWRpdGlvbiwgd28gd2lyIHp1CltNYWdpZXI6R3JpbW1ib3JuXSBkcml0dCB1bnMgdmllciBIb2VybmVyIHVuZCB6d2VpIFRvZGUgYWJob2x0ZW4uIEFiZXIKW01hZ2llcjpHcmltbWJvcm5dIGFuc2NobGllc3NlbmQgd2FyZW4gd2lyIGRpZSBIZWxkZW4uCltNYWdpZXI6QmVuZGVpZ2lkXSBkYXMgaGF0IHNpY2ggamEgZ2x1ZWNrbGljaCBnZXdhbmRlbHQuIG51IGJpc3QgZHUgZGVyCltNYWdpZXI6QmVuZGVpZ2lkXSBtYWdpZXJkZXBwIDopKQpbTWFnaWVyOlN1bmZsb3dlcl0gaGF0dGUgZGFtYWxzIGRpZSBoeWRyYSBudXIgMiBrb2VwcGUgPyA6KQpbTWFnaWVyOkJlbmRlaWdpZCBzY2htZWlzc3QgZWluIFB1ZGRpbmdob2VybmNoZW4gbmFjaCBHcmltbWJvcm5dCltNYWdpZXI6TXVwZmVsXSB1bmQgaW0gZmx1ZXN0ZXJ0b24gZXJ6YWVobHRlIHJ5bmUgdW5zIHdhcyB2b24gZWluZW0gJ3NjaHdlcnQKW01hZ2llcjpNdXBmZWxdIGRlcyBtZWlzdGVycycgZGFzIHdhZXJlIGRpZSBiZXN0ZSB3YWZmZS4uLgpbTWFnaWVyOkJlbmRlaWdpZCBzZXVmenQgc2VsaWddCltNYWdpZXI6R3JpbW1ib3JuXSBOYXR1ZXJsaWNoIGJpbiBpY2ggYXVjaCBnZXN0b3JiZW4uIFRob3JpbiB1bmQgaWNoCltNYWdpZXI6R3JpbW1ib3JuXSB1bnRlcmhpZWx0ZW4gdW5zIHVlYmVyIGRlbiBUcml1bXBoIHVlYmVyIGRpZSBLb2VwZmUgYW5zdGF0dApbTWFnaWVyOkdyaW1tYm9ybl0gYWJ6dWhhdWVuLiBEYSBrYW0gZGFubiBkaWUgSHlkcmEgbWl0IGRlbSBSZXN0IGRlciBLb2VwZmUKW01hZ2llcjpHcmltbWJvcm5dIGFuLi4uCltNYWdpZXI6TXVwZmVsXSBpY2gga2FubiBtaWNoIGF1Y2ggYW4gZGllIHN1cGVyZmV0ZSBlcmlubmVybiBhbHMgZ3JpbW1ib3JuIDI1CltNYWdpZXI6TXVwZmVsXSB0YWdlIGFsdCB3dXJkZQpbTWFnaWVyOkJlbmRlaWdpZF0gZGVpbiBnZWRhZWNodG5pcyByZWljaHQgd2VpdCB6dXJldWNrLCBtdXBmLi4uCltNYWdpZXI6R3JpbW1ib3JuIGRlciBBdGhlaXN0IG5pY2t0IE11cGZlbCB6dS4gREFTIHdhcmVuIG5vY2ggWmVpdGVuIV0KW01hZ2llcjpTdW5mbG93ZXJdIGlociBzZWlkIGV1Y2ggZG9jaCBiZXd1c3N0IGRhcyBkYXMgYWxsZXMgZ2Vsb2dndCB3aXJkIDopCltNYWdpZXI6R3JpbW1ib3JuXSBFcyBnYWIgZWluZSB6d2Vpc3RlbGxpZ2UgQW56YWhsIHZvbiBTZWhlcm4sIHNvIHJ1bmQgMzAKW01hZ2llcjpHcmltbWJvcm5dIFN0dWVjaywgbmljaHQgbWVoci4KW01hZ2llcjpTdW5mbG93ZXJdIG5hamEgYmFsZCBrb2VubmVuIHdpciBtZWluZW4gMjVzdGVuIGZlaWVybiA6KQpbTWFnaWVyOkJlbmRlaWdpZCB3ZWlzcyBub2NoLCB3aWUgZXIgZGFtYWxzIGdleml0dGVydCBoYXQgYmVpbSBlcnRzZW4KICAgICAgICBCZXN1Y2gvVmVyc3VjaCBnZWdlbiBkaWUgR2xhZGlhdG9yZW4uLi5dCltNYWdpZXI6U3VuZmxvd2VyIG5pY2t0IGJlbmRlaWdpZCB6dV0KW01hZ2llcjpHcmltbWJvcm5dIEJlaSBtaXIgc3RlaHQgYmFsZCBkZXIgMTI1LiBhbi4gKnNldWZ6KgpbTWFnaWVyOk11cGZlbF0gdW5kIHJ5bmUgdW5kIHRvZXRlciBsaWVmZXJ0ZW4gc2ljaCBlaW4gd2V0dHJlbm5lbiB1bSBkaWUKW01hZ2llcjpNdXBmZWxdIHNwaXR6ZSBkZXIgdG9wbGlzdGUsIHp1c2FtbWVuIG1pdCBkZW0gZXdpZ2VuIGRyaXR0ZW4gYmxvb2Rnb3JlCltNYWdpZXI6TXVwZmVsXSB0b2V0ZXIgaGF0dGUgZGFtYWxzIGRpZSB3YWhuc2lubmlnZSB6YWhsIHZvbiA0MCBtaWxsaW9uZW4gRVAKW01hZ2llcjpHcmltbWJvcm5dIEdlbmF1LCB1bmQgaGFiZW4gZGFubiBpbSBHbGVpY2hzY2hyaXR0IGV4YWt0IDEwME1lcCBnZWhvbHQsCltNYWdpZXI6R3JpbW1ib3JuXSBlaW5lIGRhbWFscyBlaW5mYWNoIGdpZ2FudGlzY2ggdW52b3JzdGVsbGJhcmUgTWVuZ2UuCltNYWdpZXI6U3VuZmxvd2VyXSBkYW1hbHMgYWxzIGRpZSBTY2hyYXRxdWVzdC4uLmRpZSBzY2h3ZXJzdGUgYWxsZXIgcXVlc3RzIHdhcgpbTWFnaWVyOlN1bmZsb3dlcl0gOi1QCltNYWdpZXI6R3JpbW1ib3JuXSBOZWluLCBkaWUgaGFlcnRlc3RlIFF1ZXN0IHdhciBGcmFjaHRndXQuIERpZSBMZXV0ZSBzaW5kIHdpZQpbTWFnaWVyOkdyaW1tYm9ybl0gZGllIEZsaWVnZW4gYW4gQlNFIGdlc3RvcmJlbi4gQnp3LiBhbiBDSkQuCltNYWdpZXI6U3VuZmxvd2VyXSBmcmFjaHRndXQgZnJhY2h0Z3V0ID8gd2FzIGlzdCBkYXMgPyBuZSBuZXVlIHF1ZXN0ID8KW01hZ2llcjpNdXBmZWxdIGFyZ2wgYWJlciBkaWUgYmxvZWRlbiBsb2V3ZW4gZGVyIGhleGVycXVlc3Qgd2FyZW4gYXVjaCBuaWNodApbTWFnaWVyOk11cGZlbF0gb2huZQpbTWFnaWVyOkJlbmRlaWdpZF0gb2hqYSwgYWxzIGVzIGRlbiBuZWJlbmVpbmdhbmcgZGVyIEthdGFrb21iZW4gbm9jaCBuaW9jaHQKW01hZ2llcjpCZW5kZWlnaWRdIGdhYiB1bmQgZmFrdGlzY2ggamVkZXIgbWFsIHNvIGViZW4genVtIFZhbXBpciBkdXJjaHJlbm5lbgpbTWFnaWVyOkJlbmRlaWdpZF0ga29ubnRlCltNYWdpZXI6QmVuZGVpZ2lkXSB3YXIgZGFzIGRhbWFscyBuaWNodCBkZXIgV2VzcGVuc2Nod2FybSwgZGVyIGRlbiBncm9zc2VuCltNYWdpZXI6QmVuZGVpZ2lkXSBTZWhlciBaYXJkb3ogZXJsZWd0ZT8KW01hZ2llcjpHcmltbWJvcm5dIEphLCBhYmVyIFRyb3lxdWVzdGVuIHdhcmVuIG5pY2h0IGhhcnQsIGRpZSB3YXJlbiB1bnRlcgpbTWFnaWVyOkdyaW1tYm9ybl0gYWxsZXIgS3JpdGlrLgpbTWFnaWVyOkdyaW1tYm9ybl0gSmEsIEJlbiwgYXVmIGRlciBKb2xsZS4KW01hZ2llcjpNdXBmZWxdIGFscyBpY2ggYW5maW5nIHdhciBncmFkZSBzaWx2YW5hIHp1bSBtYWdpZXIgZ2V3b3JkZW4KW01hZ2llcjpTdW5mbG93ZXJdIGljaCBrYW5uIG1pY2ggbm9jaCBndXQgYW4gbWVpbmVuIGVyc3RlbiBUYWcgaW0gTUcgZXJpbm5lcm46CltNYWdpZXI6U3VuZmxvd2VyXSBJY2ggd29sbHRlIG51ciBlaW5zLCB3aWVkZXIgcmF1cyBoaWVyLCBpY2gga29ubnRlIG1pciBuaWNodApbTWFnaWVyOlN1bmZsb3dlcl0gdm9yc3RlbGxlbiwgd2llIGxldXRlIGZhc3ppbmllcnQgdm9uIHRleHRlbiBzZWluIGtvZW5uZW4sCltNYWdpZXI6U3VuZmxvd2VyXSBudW5qYSBudW4gYmluIGljaCBzZWxiZXIgc3VlY2h0aWcKW01hZ2llcjpHcmltbWJvcm5dIFVuZCBlcyBnYWIgZGllIExhZXVzZSwgZGllIGZhc3QgZWlubWFsIGRhcyBNRyB2b2VsbGlnCltNYWdpZXI6R3JpbW1ib3JuXSBlbnR2b2Vsa2VydCBoYXR0ZW4uCltNYWdpZXI6TXVwZmVsXSBvaGphIDotKQpbTWFnaWVyOkdyaW1tYm9ybl0gU3VlY2h0aWc/IFdlciBpc3QgZGVubiBoaWVyIHN1ZWNodGlnPyBJY2gga29lbm50ZSBqZWRlcnplaXQKW01hZ2llcjpHcmltbWJvcm5dIGF1ZmhvZXJlbi4KW01hZ2llcjpCZW5kZWlnaWQgaGF0IGRhdm9uIGdlaG9lcnQuIEVwaWRlbWllbiBkdXJjaHpvZ2VuIGRhcyBNRyEhIV0KW01hZ2llcjpNdXBmZWxdIGFuIHphcmRveiBhbHMgc3BpZWxlciBrYW5uIGljaCBtaWNoIG5pY2h0IG1laHIgZXJpbm5lcm4uLi4gbnVyCltNYWdpZXI6TXVwZmVsXSB3YXMgYW5kZXJlIGdlc2FndCBoYWJlbiBlciB3YWVyZSBlaW4gZ3Jvc3NlciBtZXR6bGVyCltNYWdpZXI6TXVwZmVsXSBnZXdlc2VuLi4uCltNYWdpZXI6U3VuZmxvd2VyXSB1bmQgbWVpbiBlcnN0ZXIgWmF1YmVydHJhbmsgdWViZXIgZGVuIGljaCBnZXN0b2xwZXJ0IGJpbiwKW01hZ2llcjpTdW5mbG93ZXJdIGVpbiBnbG9ycmVpY2hlciB0YWcKW01hZ2llcjpHcmltbWJvcm5dIERpZSBMYWV1c2UgaGFiIGljaCBuaWNodCBtaXRiZWtvbW1lbiwgd2VpbCBpY2ggenUgZGVtCltNYWdpZXI6R3JpbW1ib3JuXSBaZWl0cHVua3QgaW0gbmljaHQgYW5nZXNjaGxvc3NlbmVuIEx1cGluZW50YWwgZ2V0ZXN0ZXQKW01hZ2llcjpHcmltbWJvcm5dIGhhdHRlLiBBbHMgaGFsYm9mZml6aWVsbGVyIFRlc3RpZS4KW01hZ2llcjpNdXBmZWxdIGphIGRhcyB3YXIgYWJlciBhbGxnZW1laW4gYmVrYW5udCBncmltbWJvcm4gOi0pCltNYWdpZXI6U3VuZmxvd2VyIHNldWZ6dCwgYmVpIGRlbSBHZWRhbmtlbiBhbiBkYW1hbHNdCltNYWdpZXI6QmVuZGVpZ2lkXSBqYXUsIGdlbmF1IHdpZSBkYXMgaW5vZmZpemllbGxlIHNlaGVyaGF1cy4uLiA6KQpbTWFnaWVyOkdyaW1tYm9ybl0gWmFyZG96IGlzdCBzbyBKdW5pIDk0IFNlaGVyIGdld29yZGVuLCBpY2ggaW0gU2VwdGVtYmVyLgpbTWFnaWVyOlN1bmZsb3dlcl0gbWVpbiBhbGxlcmVyc3RlciBiYW5pc2ggaW0gTUcuLgpbTWFnaWVyOlN1bmZsb3dlcl0gbGFuZyBsYW5nIGlzdHMgaGVyLi4uCltNYWdpZXI6QmVuZGVpZ2lkXSBXYXMgc2FndGUgbm9jaCBlaW4gbmljaHQgbmFlaGVyIGJla2FubnRlciBFTSB1ZWJlciBaYXJkb3o/CltNYWdpZXI6QmVuZGVpZ2lkXSBEZW0gdHJhdSBpY2ggYWxsZXMgenUsIGRlciB3YXIgc2Nob24gYWxzIFNwaWVsZXIgZnVlciBkYXMKW01hZ2llcjpCZW5kZWlnaWRdIEF1c251dHplbiBqZWRlcyBCdWdzICA6KSkpCltNYWdpZXI6R3JpbW1ib3JuXSBEYW1hbHMgZ2FiIGVzIGRlbi4uLiB3aWUgaGllc3MgZGVyIG5vY2g/IERlciBpbW1lcgpbTWFnaWVyOkdyaW1tYm9ybl0gIkhBQUFBQUFBQUFTU1NTU1NTISEhISIgZ2VydWZlbiBoYXQgdW5kIGRhbm4gZGFzIGdlc2FtdGUgTUcKW01hZ2llcjpHcmltbWJvcm5dIGdlZ2VuIHNpY2ggaGF0dGUgaXJnZW5kd2Fubi4KW01hZ2llcjpNdXBmZWxdIHN1bmZsb3dlciBtYWNoZW53ZXIgdW5zIG5peCB2b3I6IGR1IGJpc3RuIGp1bmdzcHVuZCA6LSkKW01hZ2llcjpHcmltbWJvcm5dIE1laW5lIGFsbGVyZXJzdGUgRXhwZWRpdGlvbiBnaW5nIHp1bSBFaXNwYWxhc3QuIERyZWkgTGV1dGUsCltNYWdpZXI6R3JpbW1ib3JuXSB1bmQgZGllc2UgT3JrcyBoYWJlbiB1bnMgenVnZXNldHp0LCBlcyB3YXIgc2Nob24gbmljaHQgbWVocgpbTWFnaWVyOkdyaW1tYm9ybl0gZmVpZXJsaWNoLi4uCltNYWdpZXI6TXVwZmVsXSB1bmQuLi4gZXJpbm5lcnQgaWhyIGV1Y2ggbm9jaCBhbiBkZW4gJ2ZpY2tmcm9zY2gnIHVuZCBkaWUKW01hZ2llcjpNdXBmZWxdIGRpc2t1c3Npb25lbiB1bSBzZWluZW4gbmFtZW4/IDotKQpbTWFnaWVyOkJlbmRlaWdpZCB3YXIgZGFtYWxzIG5vY2ggbmljaHQgZ2Vib3JlbiB1bmQgc3RhcnJ0ZSBpbW1lciBhdWYgZGVuCiAgICAgICAgU2NoaXJtIHZvbiBHIHVuZCBaIHVuZCBzdGF1bnRlLi4uXQpbTWFnaWVyOlN1bmZsb3dlcl0gbmFqYSBhdWNoIHdpZWRlciB3YXIgaWNoIG11ZGRlIGVyc3Qgc2VpdCBrbmFwcCAyIEphaHJlbiwKW01hZ2llcjpTdW5mbG93ZXJdIGRhZnVlciBzdGVoZSBpY2ggaW0gTVVELUJVQ0gtREVSLVJFS09SREUgdW50ZXIgYmFuaXNoZXMKW01hZ2llcjpHcmltbWJvcm5dIE9oIGphLiAiV2FzIGhhYnQgaWhyIGdlZ2VuIG1laW5lbiBOYW1lbiwgc2NobGllc3NsaWNoIHJlZ3QKW01hZ2llcjpHcmltbWJvcm5dIHNpY2ggYXVjaCBrZWluZXIgdWViZXIgVG9ldGVyIHVuZCBIYXRlIGF1Zi4iCltNYWdpZXI6R3JpbW1ib3JuIGRlciBBdGhlaXN0IGdyaW5zdC5dCltNYWdpZXI6TXVwZmVsIGdyaW5zdCBtaXRdCltNYWdpZXI6QmVuZGVpZ2lkXSBkZXIgd2FyIGF1Y2gga29lbG5lciwgZ2VsbD8KW01hZ2llcjpHcmltbWJvcm5dIEphLCB1bmQgWmFyZG96IGhhdCB3b2hsIGdlbGVnZW50bGljaCBkdXJjaHMgaGFsYmUgcnogbGF1dApja2Zyb3NjaCIgZ2VicnVlbGx0Li4uCltNYWdpZXI6U3VuZmxvd2VyXSBrYW5uIG1pciBkYSBudW5tYWwgZWluZXIgc2FnZW4gd2Vzd2VnZW4gZGFtYWxzICJsaWVibGluZyIKW01hZ2llcjpTdW5mbG93ZXJdIGdlYmFuaXNodCB3dXJkZSA/CltNYWdpZXI6QmVuZGVpZ2lkIHdhZWx6dCBzaWNoIGFtIEJvZGVuXQpbTWFnaWVyOkdyaW1tYm9ybl0gVmVybXV0bGljaCBtaXQgZ3V0ZW0gR3J1bmQuIFdlaWwgaWNoIGthbm4gbmljaHQgYmFuaXNoZW4uCltNYWdpZXI6TXVwZmVsXSBqYWphLi4uLgpbTWFnaWVyOkJlbmRlaWdpZCBzZXVmenQgc2VsaWddCltNYWdpZXI6TXVwZmVsXSBhbHMgc3BpZWxlciBoYXQgbWlyIGdyaW1tYm9ybiBkYW1hbHMgYmVzc2VyIGdlZmFsbGVuLiB3aWUgZXJzCltNYWdpZXI6TXVwZmVsXSBkZW4gbWFnaWVybiBzbyByaWNodGlnIGdlemVpZ3QgaGF0Li4uLgpbTWFnaWVyOk11cGZlbF0gamV0enQgaXN0IGVyIGRhZ2VnZW4gemFobmxvcy4gdW5kIGdlZ2VuIHNwaWVsZXIgd2V0dGVybiAtCltNYWdpZXI6TXVwZmVsXSBrYW5uc3RlIGtuaWNrZW4KW01hZ2llcjpTdW5mbG93ZXJdIHVuZCBlciB3aXJkIG1pdCAiSGVyciIgYW5nZXNwcm9jaGVuCltNYWdpZXI6QmVuZGVpZ2lkXSBqYWEsIGFscyBlciBUcm95IFNjaGxhZWdlIGFuZHJvaHRlIHdlZ2VuIGRlbiBFbGl0ZXdhY2hlbiBpbgpbTWFnaWVyOkJlbmRlaWdpZF0gTW91bG9raW4uICJXZW5uIGRpZXNlIGJsb2VkZW4gYmVyaXR0ZW5lbiB3YWNoZW4gc3RhZXJrZXIKW01hZ2llcjpCZW5kZWlnaWRdIHNpbmQgYWxzIGVpbmVyIGRkZXIgc3RhZXJrc3RlbiBTZWhlciAoYW5tLjogZXIgc2VsYmVyKSBkYW5uCltNYWdpZXI6QmVuZGVpZ2lkXSBzZXR6IGljaCBtaWNoIGF1ZiBlaW4gcG9ueSB2b20gYmF1ZXJuaG9mIHVuZCByZWl0ZSBzaWUKW01hZ2llcjpCZW5kZWlnaWRdIG5pZWRlciEiCltNYWdpZXI6R3JpbW1ib3JuXSBLYW5uIHNpY2ggbm9jaCBqZW1hbmQgYW4gZGFzIEdlc2NocmVpIGVyaW5uZXJuLCBhbHMgVHJveQpbTWFnaWVyOkdyaW1tYm9ybl0gZGllIGJlcml0dGVuZSBTdGFkdHdhY2hlIHZvbiBNb3VsdWtpbiBlaW5mdWVocnRlPyBMYXV0ZXIKW01hZ2llcjpHcmltbWJvcm5dIHRvdGUgU2VoZXIgdW5kIGRlciBBbnRyYWcsIG1pdGhpbGZlIGRlcyBQb25uaWVzIHZvbQpbTWFnaWVyOkdyaW1tYm9ybl0gV2FsZGJhdWVybmhvZiBhdWNoIEdlZ25lciBuaWVkZXJyZWl0ZW4genUga29lbm5lbi4KW01hZ2llcjpCZW5kZWlnaWRdIGRhcyBmZWhsdCBlY2h0IGluendpc2NoZW4uLi4KW01hZ2llcjpCZW5kZWlnaWQgd2FyIHNjaG5lbGxlciA6KV0KW01hZ2llcjpHcmltbWJvcm5dIE5vZSwgaWNoIHd1cmRlIGhpZXIgbnVyIGdlc3RvZXJ0LgpbTWFnaWVyOlJvY2h1c10gYWNoLCBkaWUgYmVzY2h3ZXJkZW4gdWViZXIgenUgc3RhcmtlIG1vbnN0ZXIgZmVobGVuIG1pciBuaWNodApbTWFnaWVyOlJvY2h1c10gOikKW01hZ2llcjpHcmltbWJvcm5dIEljaCBoYXR0ZSBtaWNoIG5pY2h0IGJlc2Nod2VydCBkYXNzIHNpZSB6dSBzdGFyayBzaW5kLApbTWFnaWVyOkdyaW1tYm9ybl0gc29uZGVybiBkYXNzIHNpZSB1bmxvZ2lzY2ggc2luZC4KW01hZ2llcjpCZW5kZWlnaWRdIGltbWVyaGluIGtlbm50IEdyaW1tYm9ybiBiaXMgaGV1dGUgbmljaHQgZGllIHN0YWR0OiBkYXMgaXN0CltNYWdpZXI6QmVuZGVpZ2lkXSBNT1VMT0tJTiwgbmljaHRzIG1pdCB1IG9kZXIgc28KW01hZ2llcjpHcmltbWJvcm5dIEF1c3NlcmRlbSBoYXR0ZSBUcm95IGluIGRlciBtcGEgZ2VzY2hyaWViZW4sIGRpZSBzZWllbiBmdWVyCltNYWdpZXI6R3JpbW1ib3JuXSA4MGsgTXVlbnplbiBhbmdld29yYmVuLiBJY2ggaGFiIDE1MGsgZ2Vib3RlbiwgYWJlciBoYWIKW01hZ2llcjpHcmltbWJvcm5dIG5pY2h0IHNvIGVpbmUgTGVpYndhY2hlIGJla29tbWVuLgpbTWFnaWVyOkJlbmRlaWdpZF0gc2ljaGVyLCBpbW1lciBkZXRhaWx2ZXJzZXNzZW4KW01hZ2llcjpCZW5kZWlnaWQgZ3JpbnN0XQpbTWFnaWVyOk11cGZlbF0gamFqYSBkYW1hbHMuLi4gd28gaWNoIDQgYW5sYWV1ZmUgaGF0dGUgaW0gb21hLWxhYiwgZHV0emVuZGUKW01hZ2llcjpNdXBmZWxdIHZvbiBmYWNrZWxuIHZlcmJyYXRlbi4uLiA6LSkKW01hZ2llcjpCZW5kZWlnaWRdIGRhcyBoYWIgaWNoIGF1Y2ggbm9jaCBnZXNjaGFmZnQuLi4uLi4gaW5zZ2VzYW10IHdhciBpY2gKW01hZ2llcjpCZW5kZWlnaWRdIHVlYmVyIDUgc3R1bmRlbiBkYSB1bnRlbiBkcmluCltNYWdpZXI6V2FyZ29uXSAqcHJ1dXN0KiA6KSkKW01hZ2llcjpHcmltbWJvcm5dIEljaCBiaW4gYW4gT21hIGdlc2NoZWl0ZXJ0LCB3ZWlsIGljaCBtaXQgZGVtIFNjaHVwcGVucGFuemVyCltNYWdpZXI6R3JpbW1ib3JuXSBkaWUgV2VzdGUgbmljaHQgYW4tIHVuZCBkZW4gUGFuemVyIG5pY2h0IGF1c3ppZWhlbiBrb25udGUuCltNYWdpZXI6R3JpbW1ib3JuXSBEYSB3YXIgaWNoIGRhbm4gYmVsZWlkaWd0LgpbTWFnaWVyOkJlbmRlaWdpZF0gZGFtYWxzLi4uLgpbTWFnaWVyOkJlbmRlaWdpZCBuaWNrdCB2ZXJzdGFlbmRuaXN2b2xsXQpbTWFnaWVyOkdyaW1tYm9ybl0gVW5kIFNhc2NoYSBrb25udGUgbWFuIG5pY2h0IHRvZXRlbiAoZGFzIGhhdCBEYW5jZXIgZGFubgpbTWFnaWVyOkdyaW1tYm9ybl0gZGFua2Vuc3dlcnRlcndlaXNlIGVybGVkaWd0KSB1bmQgYXVzc2VyZGVtIHd1cmRlCltNYWdpZXI6R3JpbW1ib3JuXSBzdWdnZXJpZXJ0LCBpY2ggc2VpIGR1ZW1tZXIgYWxzIGVpbmUgU2NoZWliZSBLbmFlY2tlYnJvdC4KW01hZ2llcjpHcmltbWJvcm5dIEJsb2VkZSBRdWVzdC4KW01hZ2llcjpCZW5kZWlnaWRdIGRhcyBtaXQgZGVtIGtuYWVja2Vicm90IHZlcnN0ZWggaWNoIGpldHp0IGFiZXIgbmljaHQuLi4KW01hZ2llcjpTdW5mbG93ZXJdIG9tYSBoYWJlIGljaCBuaWUgZ2VzY2hhZmZ0LCBkaWUgb21hIHNhZ3RlIG1pciBudXIgaWNoIGhhYmUKW01hZ2llcjpTdW5mbG93ZXJdIGJlaW0gcXVlc3QgYmVzY2hpc3NlbiB1bmQgaWNoIHNvbGx0ZSB3YXJnb24gdmVyc3RhZW5naWdlbgpbTWFnaWVyOldhcmdvbl0gTmFqYSwgRHUgd2Fyc3QgamVkZW5mYWxscyBlaW5lciBkZXIgd2VuaWdlbiwgZGVyIGRhcyBtaXQgZGVtCltNYWdpZXI6V2FyZ29uXSBLbmFlY2tlYnJvdCB2ZXJzdGFuZGVuIGhhdCwgR3JpbW1ib3JuIDopCltNYWdpZXI6TXVwZmVsXSBhbHNvIDIgc2NoaWViZW4ga25hZWNrZWJyb3QuLi4KW01hZ2llcjpHcmltbWJvcm5dIERhIHdhciB3YXMsIHdlbm4gbWFuIHNpY2ggZGFzIEtuYWVja2Vicm90IGFuc2llaHQgYmVrYW0gbWFuCltNYWdpZXI6R3JpbW1ib3JuXSBnZXNhZ3QsIGRhc3Mgc2VpIGRhcyBpbnRlbGxpZ2VudGVzdGUgaW0gUmF1bSAoaW4gZGVtIHNvbnN0CltNYWdpZXI6R3JpbW1ib3JuXSBhdWNoIFNhc2NoYSBzdGFuZCkuIFVuZCBpY2ggd2FyIGhhbHQgYXVjaCBpbiBkZW0gUmF1bS4uLgpbTWFnaWVyOlN1bmZsb3dlcl0gaG1tIGRhIHd1cmRlIGJlc3RpbW10IGF1ZiBHcmltbWJvcm4gaW0gcmF1bSBnZXRlc3RldApbTWFnaWVyOkJlbmRlaWdpZF0gRFUgaGFzdCBkYXMgc2ljaGVyIG5pY2h0IHVudGVyc3VjaHQsIHN1bm55LiBpbW1lcmhpbiB3dXJkZQpbTWFnaWVyOkJlbmRlaWdpZF0genUgZGVpbmVyIHplaXQgZGVyIHVudC1iZWZlaGwgc2Nob24gdGVpbHdlaXNlIGdlc3BlcnJ0CltNYWdpZXI6U3VuZmxvd2VyXSBobW0gaWNoIHdvbGx0ZSBudXIgbmljaHQgenVnZWJlbiBkYXMgaWNoIGR1ZW1tZXIgYmluIGFscwpbTWFnaWVyOlN1bmZsb3dlcl0ga25hZWNrZWJyb3QKW01hZ2llcjpTdW5mbG93ZXJdIGF1c3NlcmRlbSB3YWVyZSBkYXMgZWluZSBiZWxlaWRpZ3VuZyBmdWVyIGdyaW1tYm9ybiwgd2VubgpbTWFnaWVyOlN1bmZsb3dlcl0gZXIgbWVya3QgZG9jaCBub2NoIGVpbmUgZ2VuYXVzbyBzY2hsYXUgaXN0IHdpZSBlcgpbTWFnaWVyOkdyaW1tYm9ybl0gTmFqYSwgYW4gRGVpbmVyIFN0ZWxsZSB3dWVyZGUgaWNoIGluIGRlbSBGYWxsIGF1Y2ggZ2FuegpbTWFnaWVyOkdyaW1tYm9ybl0gc3RpbGwgaGFsdGVuLiBGdWVyIG1pY2ggYWJlciB3YXIgZGFzIG5lIEJlbGVpZGlndW5nLiA6LSkKW01hZ2llcjpCZW5kZWlnaWQgZ3JpbnN0XQpbTWFnaWVyOlN1bmZsb3dlcl0gaWNoIGZhbmRzIGRhbWFscyBudXIgZ2VtZWluLCBkYXMgaWNoIGRpZSBxdWVzdCBuaWNodApbTWFnaWVyOlN1bmZsb3dlcl0gYmVzdGFuZGVuIGhhdHRlLCB3YXMgZXMgbWljaCBkYW1hbHMgYW4gdWViZXJyZWR1bmdza3VlbnN0ZW4KW01hZ2llcjpTdW5mbG93ZXJdIGdla29zdGV0IGhhdCBudXIgdW0gb2V0dGkgenUgdWViZXJ6ZXVnZW4gd2llIHRvbGwgZXMgd2FlcmUKW01hZ2llcjpTdW5mbG93ZXJdIHdlbm4gZXIgbWlyIGRlbiBiZXNlbiBjbG9udApbTWFnaWVyOkdyaW1tYm9ybl0gSWNoIGhhYiBtaXIgaW1tZXIgbnVyIHNpbm5sb3NlcyBaZXVnIGNsb25lbiBsYXNzZW4uCltNYWdpZXI6R3JpbW1ib3JuIGRlciBBdGhlaXN0IGVyaW5uZXJ0IGFuIGRlbiBndXRlbiwgYWx0ZW4gR3JpbW1iYWVyZW4uXQpbTWFnaWVyOk11cGZlbF0gbmFqYSBkZWluIGFtdWxldHQgaGF0dGUgc28gZWluIHBhYXIgZnVua3Rpb25lbi4uLi4KW01hZ2llcjpNdXBmZWxdIGljaCBzYWcgbWFsIG5peCB3ZWl0ZXIgc29uc3QgYmVrb21tdCB6YXJkb3ogbm9jaCBuYWNodHJhZWdsaWNoCltNYWdpZXI6TXVwZmVsXSBhZXJnZXIgOi0pCltNYWdpZXI6R3JpbW1ib3JuXSBBYmVyIGRldXRsaWNoIHdlbmlnZXIgYWxzIGhldXR6dXRhZ2UuLi4KW01hZ2llcjpHcmltbWJvcm5dIFVuZCBhbGxlcyB3YXMgZXMga29ubnRlIGJlem9nIHNpY2ggYXVmIEdyaW1tZGVhdGguCltNYWdpZXI6TXVwZmVsXSBqYWphIGRlaW4gc2NoaXpvLTJ0aSA6LSkKW01hZ2llcjpHcmltbWJvcm5dIEFiZXIgZGVzc2VuIFBhc3N3b3J0IGhhYiBpY2ggZWluZXMgVGFnZXMgd2VnZ2V3b3JmZW4gdW5kIGVyCltNYWdpZXI6R3JpbW1ib3JuXSBrb25udGUgc2ljaCBuaWNodCBtZWhyIGVpbmxvZ2dlbi4gRGVyIGhhdCBkb2NoIHRhdHNhZWNobGljaApbTWFnaWVyOkdyaW1tYm9ybl0gYWxsZXMgdmVyc3VjaHQsIGRhbWl0IGljaCBuaWNodCBNYWdpZXIgd2VyZGUuLi4KW01hZ2llcjpNdXBmZWxdIGphIGxlaWRlciBpc3NlcyBpaG0gbmljaHQgZ2VsdW5nZW4gOi0pCltNYWdpZXI6R3JpbW1ib3JuXSBEYXMgd2FyIGRhcyBhbGxlcmVyc3RlIE1hbCwgZGFzcyBlaW4gWndlaXRpZSBlaW5lIGVpZ2VuZQpbTWFnaWVyOkdyaW1tYm9ybl0gUGVyc29lbmxpY2hrZWl0IGVudHdpY2tlbHQgaGF0LCBkYW1hbHMuIFppZW1saWNoCltNYWdpZXI6R3JpbW1ib3JuXSBhZXJnZXJsaWNoLgpbTWFnaWVyOk11cGZlbF0gZ3JhZGUgbWFsIGdla3Vja3QuLi4gNjQ2IHRhZ2Ugd2FyIGVyIGpldHp0IG5pY2h0IGRhLi4uIGRlcgpbTWFnaWVyOk11cGZlbF0gd2lyZCBzaWNoIGdhcm5pY2h0IG1laHIgYXVza2VubmVuIDotKQpbTWFnaWVyOkdyaW1tYm9ybl0gRGVyIHdhciBkYW1hbHMgaW4gTGVmdHlzIEJhciBhbHMgaWNoIGlobiBhYnNhZWd0ZS4KW01hZ2llcjpHcmltbWJvcm5dIFdvbGx0ZSB3b2hsIGhlaW1saWNoIHF1ZXN0ZW4gdW0gTWFnaWVyIHp1IHdlcmRlbiB1bmQgbWljaApbTWFnaWVyOkdyaW1tYm9ybl0gZGFubiBhZXJnZXJuIHp1IGtvZW5uZW4uCltNYWdpZXI6U3VuZmxvd2VyIGdyaW5zdF0KW01hZ2llcjpNdXBmZWxdIGJlc3RlaHQgbmUgY2hhbmNlIGRhcyBlciBpcmdlbmR3YW5uIG1hbCB3aWVkZXJlcndlY2t0IHdpcmQ/CltNYWdpZXI6TXVwZmVsXSA6LSkKW01hZ2llcjpHcmltbWJvcm5dIERlciBoYXQgYXVjaCBpbW1lciBCb2luZyBhbmdlc2NobGVpbXQgZGFtaXQgZGllc2VyIG1pY2gKW01hZ2llcjpHcmltbWJvcm5dIGRhbm4gbWJhbmlzaGVkLiBXaWRlcmxpY2guCltNYWdpZXI6R3JpbW1ib3JuXSBEYW5uIG11ZXNzdGUgZXIgZXJzdCB3aWVkZXIgYW4gc2VpbiBwdyBrb21tZW4gdW5kIGRhcyBoYWx0ZQpbTWFnaWVyOkdyaW1tYm9ybl0gaWNoIGZ1ZXIgdW53YWhyc2NoZWlubGljaC4KW01hZ2llcjpNdXBmZWxdIG5hamEgZWluIGVyem1hZ2llciBrb2VubnRlIGRhcyBwdyBsb2VzY2hlbi4gZGFubiBrYW5uIGRhIGplZGVyCltNYWdpZXI6TXVwZmVsXSBkcmFuCltNYWdpZXI6TXVwZmVsXSBoYWxsbyBlcnptYWdpZXIhIHdvbGx0IGlociBzcGFzcyBtaXQgZ3JpbW1ib3JuIGhhYmVuPyBpaHIKW01hZ2llcjpNdXBmZWxdIG11ZXNzdCBudXIuLi4uIDotKQpbTWFnaWVyOk11cGZlbF0gbmFqYSBkZXIga2FtIGF1cyBzY2h3ZWRlbi4gb2IgZXIgZGEgbm9jaG4gbG9naW4gaGF0Li4uCgogICAgICAgICAgICAgICAgICAgIC0tPT09IGJsdWVtY2hlbiA9PT0tLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdlbm4gTWFnaWVyIHNpY2ggYW4gRGFtYWxzIGVyaW5uZXJuIChJcml4LCAyMi4gSmFuIDE5OTcsIDIwOjE3OjAxKToKfiMhIHJuPVN1bmZsb3dlciBydD04NTM5NDcwOTQgcmc9c2NobWFycm4KfiMhIHRpZD04NTM5NDcwOTQKSmFqYSBkYW1hbHMsIGFscyBTZWhlciBub2NoIGVjaHRlIFNlaGVyIHdhcmVuIHVuZCBlcyBnZXJhZGUKbWFsIGVpbmUgSGFuZHZvbGwgZ2FiLiBWZXJnYW5nZW5lIFplaXRlbi4uLipzZXVmeioKCkwuRi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2VubiBNYWdpZXIgc2ljaCBhbiBEYW1hbHMgZXJpbm5lcm4gKEZ5dCwgMjMuIEphbiAxOTk3LCAwMTowMjozMCk6Cn4jISBybj1Jcml4IHJ0PTg1Mzk2MDYyMSByZz1zY2htYXJybgp+IyEgdGlkPTg1Mzk0NzA5NAoKKkRhbWFscyogZ2FiIGVzICprZWluZSogU2VoZXIuCgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZW5uIE1hZ2llciBzaWNoIGFuIERhbWFscyBlcmlubmVybiAoU2lsdmFuYSwgMjMuIEphbiAxOTk3LCAwOToyMjozMSk6Cn4jISBybj1GeXQgcnQ9ODUzOTc3NzUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUzOTQ3MDk0CkFjaCwgamEuLi4gRGFtYWxzLCBhbHMgV29lbGtjaGVuIG5vY2ggZWluZSB1bmVycmVpY2hiYXJlIExlZ2VuZGUgd2FyLi4uCkFscyBQdW1hIEFlcmdlciBiZWthbSwgd2VpbCBlciB3YXMgcHJpdmF0ZXMgZnVlciBCbGFja3kgZ2Vwcm9nZ3QgaGF0dGUuLi4KQWxzIFJvY2h1cyBub2NoIFRpcHMgenVyIEFyY2hpZVF1ZXN0IGdlZ2ViZW4gaGF0Li4uIEFscyBTdGVpbmJlaXNzZXIKbm9jaCBQaW5ncG9uZyBzcGllbHRlbiwgdW5kIGlociBBbXVsZXR0IG5vY2ggYmVnZWhydCB3YXIuLi4KClNpbHZhbmEgKnNldWZ6ZW5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQlVHIChTaWRvbGluLCAyMy4gSmFuIDE5OTcsIDEwOjMzOjUxKToKV29ybGQncyBMYXN0IEMgQnVnCiAtLS0tLS0tLS0tLS0tLS0tLS0KICAgICAKIHdoaWxlICgxKQogewogICBzdGF0dXMgPSBHZXRSYWRhckluZm8oKTsKICAgaWYgKHN0YXR1cyA9IDEpCiAgICAgTGF1bmNoTnVjbGVhck1pc3NpbGVzKCk7CiB9CgpTaWRvbGluLiBEdWNrdCBzaWNoIHNjaG9uIG1hbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdlbm4gTWFnaWVyIHNpY2ggYW4gRGFtYWxzIGVyaW5uZXJuIChJcml4LCAyMy4gSmFuIDE5OTcsIDEwOjQzOjQ5KToKfiMhIHJuPUZ5dCBydD04NTM5Nzc3NTAgcmc9c2NobWFycm4KfiMhIHRpZD04NTM5NDcwOTQKSG1tLi4uaWNoIEp1bmdzcHVuZCBzcGllbGUgZXJzdCBzZWl0IE9rdG9iZXIgOTQsIGRhIGdhYiBlcyBzY2hvbiBTZWhlci4KCkwuRi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRlciBsYW5nZSB3ZWcgaW5zIG1vcmdlbmdyYXVlbiAoU251Z2dsZSwgMjMuIEphbiAxOTk3LCAxNTowMzoyNik6CkJpcyB2b3IgZWluIHBhYXIgTWludXRlbjoKIDEgIGFudG9uLTE2LXQwMS5yaHJ6LnVuaS1ib25uLmRlICgxMzEuMjIwLjE2LjI1NCkgIDYgbXMgIDMgbXMgIDMgbXMKIDIgIGludGVyZ2F0ZS0xLWYwLnJocnoudW5pLWJvbm4uZGUgKDEzMS4yMjAuMS4xOTkpICA1IG1zICAzIG1zICAzIG1zCiAzICBVbmktQm9ubjEuV2lOLUlQLkRGTi5ERSAoMTg4LjEuNi40NSkgIDMgbXMgIDMgbXMgIDUgbXMKIDQgIFpSLUtvZWxuMS5XaU4tSVAuREZOLkRFICgxODguMS42LjQxKSAgNSBtcyAgNSBtcyAgNyBtcwogNSAgWlItRnJhbmtmdXJ0MS5XaU4tSVAuREZOLkRFICgxODguMS4xNDQuMzQpICA5IG1zICA4IG1zICAxMyBtcwogNiAgaXItZnJhbmtmdXJ0MS5XaU4tSVAuREZOLkRFICgxODguMS4xNDQuOTcpICAxMyBtcyAgMTAgbXMgIDEwIG1zCiA3ICBpci1wZXJyeW1hbjEuV2lOLUlQLkRGTi5ERSAoMTg4LjEuMTQ0Ljc4KSAgMTI5IG1zICAyMTYgbXMgIDI0MiBtcwogOCAgKiBib3JkZXJjb3JlMy1oc3NpMC0wLldhc2hpbmd0b24ubWNpLm5ldCAoMTY2LjQ4LjQxLjI0OSkgIDEyNiBtcyAqCiA5ICAqICogKgoxMCAgKiBib3JkZXJjb3JlMy1oc3NpMC0wLldhc2hpbmd0b24ubWNpLm5ldCAoMTY2LjQ4LjQxLjI0OSkgIDEzNCBtcyAhSCAqCjExICAqICogKgoxMiAgYm9yZGVyY29yZTMtaHNzaTAtMC5XYXNoaW5ndG9uLm1jaS5uZXQgKDE2Ni40OC40MS4yNDkpICAxMjcgbXMgIUggKiAqCjEzICAqICogKgoxNCAgKiAqICoKMTUgICogKiAqCjE2ICAqICogKgoxNyAgKiAqICoKMTggICogKiAqCjE5ICAqICogKgoyMCAgKiBib3JkZXJjb3JlMy1oc3NpMC0wLldhc2hpbmd0b24ubWNpLm5ldCAoMTY2LjQ4LjQxLjI0OSkgIDEyOCBtcyAhSCAqCjIxICAqICogKgoyMiAgKiAqICoKMjMgICogKiAqCjI0ICAqICogKgoyNSAgKiAqICoKMjYgICogKiAqCjI3ICAqICogKgoyOCAgKiAqICoKMjkgICogKiAqCjMwICAqICogKgoKKiBTbnVnZ2xlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXZW5uIE1hZ2llciBzaWNoIGFuIERhbWFscyBlcmlubmVybiAoTG9jbywgMjMuIEphbiAxOTk3LCAxNToxOTozNik6Cn4jISBybj1TaWx2YW5hIHJ0PTg1NDAwNzc1MSByZz1zY2htYXJybgp+IyEgdGlkPTg1Mzk0NzA5NApSb2NodXMgaGF0IFRpcHMgenVyIEFyY2hpZXF1ZXN0IGdlZ2ViZW4/IERhcyBpbXBsaXppZXJ0IGphLCBkYXNzIGVzIGRpZSBRdWVzdApzY2hvbiBnZWdlYmVuIGhhdC4gRGFzIGthbm4gdW5tb2VnbGljaCBfZGFtYWxzXyBzY2hvbiBnZXdlc2VuIHNlaW4uLi4KLSBMb2NvLiBBZWx0ZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmZhZW5nZXIuIDotKSAoU2lkb2xpbiwgMjMuIEphbiAxOTk3LCAxNToyODoyMSk6CgpNYXRvcmlhbiBydWZ0OiB3byBpc3QgZGVyIGJhdW0gYW0gb3N0ZXJiYWNoIGRlciBIRT8KRHUgcnVmc3Q6IEF1ZiBEZWluZXIgWlRsaXN0ZSEKTWF0b3JpYW4gdGVpbHQgRGlyIG1pdDogaWNoIGRhY2h0ZSBlaWdlbnRsaWNoIGF1ZiBkZW0gbWc/CgpTaWRvbGluIGtpY2hlcnQuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW5mYWVuZ2VyLiA6LSkgKFN1bmZsb3dlciwgMjMuIEphbiAxOTk3LCAxNToyOTowNSk6Cn4jISBybj1TaWRvbGluIHJ0PTg1NDAyOTcwMSByZz1zY2htYXJybgp+IyEgdGlkPTg1NDAyOTcwMQpqYSBhYmVyIGtvbWlzY2ggZGFzIGRpZSBBTmZhZW5nZXIgc2Nob24gbmUgenRsaXN0ZSBoYWJlbiA6KQoKU3VuZmxvd2VyIGhhdHRlIGlocmUgZXJzdGUgbWl0IGxldmVsIDE1IGJla29tbWVuIChhYmEgbmllIGJlbnV0enQgOikgKQoKICAgICAgICAgICAgICAgICAgICAtLT09PSBibHVlbWNoZW4gPT09LS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQW5mYWVuZ2VyLiA6LSkgKFNpZG9saW4sIDIzLiBKYW4gMTk5NywgMTU6Mjk6NTgpOgp+IyEgcm49U3VuZmxvd2VyIHJ0PTg1NDAyOTc0NSByZz1zY2htYXJybgp+IyEgdGlkPTg1NDAyOTcwMQpEYXMgZ2xhdWIgaWNoIERpciBuaWNodC4gOi0pCgpTaWRvbGluIGhhZWx0IGRhcyBmdWVyIFNFSFIgdW53YWhyc2NoZWlubGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFuZmFlbmdlci4gOi0pIChTdW5mbG93ZXIsIDIzLiBKYW4gMTk5NywgMTU6MzA6MzcpOgp+IyEgcm49U2lkb2xpbiBydD04NTQwMjk3OTggcmc9c2NobWFycm4KfiMhIHRpZD04NTQwMjk3MDEKYWJlciBkb2NoLCBlcnJpbm5lcm4gd2lyIHVuczogYWxzIGRlciBBYmVudGV1cmVyIE1pbGFtYmVyIGF1c3pvZyB1bSBnZWJhbmlzaHQKenUgd2VyZGVuIDopCgoKICAgICAgICAgICAgICAgICAgICAtLT09PSBibHVlbWNoZW4gPT09LS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2VubiBNYWdpZXIgc2ljaCBhbiBEYW1hbHMgZXJpbm5lcm4gKEhhcmRpbCwgMjMuIEphbiAxOTk3LCAxNjowODowNSk6Cn4jISBybj1Jcml4IHJ0PTg1Mzk2MDYyMSByZz1zY2htYXJybgp+IyEgdGlkPTg1Mzk0NzA5NAoKSmFqYSwgZGFtYWxzLCBhbHMgbWFuIG5vY2ggWmF1YmVydHJhZW5rZSBkb3BwZWx0IHp1Z2V0ZWlsdCBoYXR0ZSwgd2VpbCBlcyBub2NoCm5jaWh0IGdlbnVlZ2VuZCBaVC1TdGVsbGVuIGhpZXIgZ2FiLgpXZW5uIGljaCBiZWRlbmtlLCBkYXNzIHNpY2ggamEgamV0enQgYXVjaCBKdW5nc3B1bmRlIHdpZSBNdXBmIG9kZXIgR3JpbW1mcm9zY2gKc2Nob24gJ0FsdGUgSGFzZW4nIG5lbm5lbiBkdWVyZmVuLi4uCgotSGFyZGlsLiBJc3Qgbm9jaCBpbSBhbHRlbiBFbGZlbmRvcmYgZ3Jvc3NnZXdvcmRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFuZmFlbmdlci4gOi0pIChSYWZmaSwgMjMuIEphbiAxOTk3LCAxODo1Njo0NSk6Cn4jISBybj1TaWRvbGluIHJ0PTg1NDAyOTc5OCByZz1zY2htYXJybgp+IyEgdGlkPTg1NDAyOTcwMQpEb2NoLCBEb2NoLCBpY2ggZ2xhdWIgSWhyIC4uLi4gc2llIGhhdCBzaWUgc2ljaCBzdWNoZW4gTEFTU0VOICEKCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBbmZhZW5nZXIuIDotKSAoU3VuZmxvd2VyLCAyMy4gSmFuIDE5OTcsIDE4OjU3OjM2KToKfiMhIHJuPVJhZmZpIHJ0PTg1NDA0MjIwNSByZz1zY2htYXJybgp+IyEgdGlkPTg1NDAyOTcwMQpKYSByYWZmaSwgdW5kIGRhcnVtIHdvbGx0ZSBpY2ggbWljaCBqZXR6dCBoaWVyIG5vY2hlaW5tYWwgYmVpIERpciBiZWRhbmtlbiA6KQoKICAgICAgICAgICAgICAgICAgICAtLT09PSBibHVlbWNoZW4gPT09LS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdlbm4gTWFnaWVyIHNpY2ggYW4gRGFtYWxzIGVyaW5uZXJuIChLcmV0ZWssIDIzLiBKYW4gMTk5NywgMTk6MDE6MzIpOgp+IyEgcm49TG9jbyBydD04NTQwMjkxNzYgcmc9c2NobWFycm4KfiMhIHRpZD04NTM5NDcwOTQKTmEgamEsIGVpbiBEQU1BTFMtU3BpZWxlciBiaW4gaWNoIHp3YXIgbmljaHQsIGFiZXIgZXMgZ2VodCBub2NoIGdlcmFkZSBzby4uLgpKdW5pICc5NCwgaW1tZXJoaW4gOi0pCgoKICAgICAgIHwgLyAgfFwgIHwtLSAgLS0tICB8LS0gIHwgLwogICAgICAgfDwgICB8LyAgfC0gICAgfCAgIHwtICAgfDwKICAgICAgIHwgXCAgfFwgIHwtLSAgIHwgICB8LS0gIHwgXAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2VubiBNYWdpZXIgc2ljaCBhbiBEYW1hbHMgZXJpbm5lcm4gKEFzbW9kaXMsIDIzLiBKYW4gMTk5NywgMTk6MzU6MDUpOgp+IyEgcm49TG9jbyBydD04NTQwMjkxNzYgcmc9c2NobWFycm4KfiMhIHRpZD04NTM5NDcwOTQKRG9jaCwgZGllIEFyY2hpZS1RdWVzdCBpc3QgYWVsdGVyIGFscyBtYW4gZGVua3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdlbm4gTWFnaWVyIHNpY2ggYW4gRGFtYWxzIGVyaW5uZXJuIChGeXQsIDIzLiBKYW4gMTk5NywgMTk6NTY6MTMpOgp+IyEgcm49SGFyZGlsIHJ0PTg1NDAzMjA4NSByZz1zY2htYXJybgp+IyEgdGlkPTg1Mzk0NzA5NAoKQWxzbyBpbiBtZWluZW0gcGVyc29lbmxpY2hlbiAnRGFtYWxzJyBzdGFuZCBSZXBlYXQgZGVyIFphdWJlcmVyIG1pdApzdG9semdlc2Nod2VsbHRlciBCcnVzdCBhdWYgZGVyIEhFIHVuZCBoYXQgbWl0IGRlciBuZXVlc3RlbiBXdW5kZXJ3YWZmZQpLYXJuaWNrZWwgZ2VraWxsdC4gRGFzIFRldWZlbHN6ZXVnIGhpZXNzICdGZXVlcmJhbGwnLi4uCgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXZW5uIE1hZ2llciBzaWNoIGFuIERhbWFscyBlcmlubmVybiAoU2VtaXJhLCAyMy4gSmFuIDE5OTcsIDIwOjA1OjM1KToKfiMhIHJuPUZ5dCBydD04NTQwNDU3NzMgcmc9c2NobWFycm4KfiMhIHRpZD04NTM5NDcwOTQKCkhhY2ggdW5kIGljaCBlcmlubmVyIG1pY2ggYW4gImRhbWFscyIgYWxzIHNpY2ggaW0ga29lbG5lciBDb21wIFJhdW0gendlaQpGcmFrdGlvbmVuIGdlZ2VudWViZXJzdGFuZGVuLCBkaWUgTXVkZGllcyB1bmQgZGllIERvb21pZXMuLi5FaW5lIFJlaWhlIE11ZGRlcgp1bmQgZWluZSByZWloZSBEb29tZXIuLi5sZXR6dGVyZSB3YXJlbiBtZWlzdCBsYXV0ZXIsIGVzIHNlaSBkZW5uLCAgT3JrdG9ldGVyCnZlcmt1ZW5kZXRlIGxhdXQgc2VpbmUgbmV1ZXN0ZW4gRXJmb2xnZS4uLi4gSGFjaCB3YXMgd2FyZW4gZGFzIG5vY2ggWmVpdGVuLi4uCgpTZW1pcmEgLSBpbiBFcmlubmVydW5nZW4gc2Nod2VsZ2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VodCBqYSBzY2huZWxsZXIgd2VnIGFscyBlaW4gU2NobnVwZmVuIDotKSAoTWFyaXRlc3QsIDIzLiBKYW4gMTk5NywgMjE6MDI6NDkpOgo+IHVudCBtYXJpdGVzdApEYXMgaXN0IE1hcml0ZXN0LiBFciBpc3QgZnVlciBlaW5lbiBNZW5zY2hlbiBtaXR0ZWxncm9zcy4KRXIgaXN0IGFic29sdXQgZml0LgpNYXJpdGVzdCBoYXQgU3lwaGlsaXMuCkVyIGlzdCBlaW4gYWx0ZXIgSHVyZW5ib2NrLgpNYXJpdGVzdCBoYXQga2VpbmUgUnVlc3R1bmcgYW4gdW5kIGtlaW5lIFdhZmZlIGdlenVlY2t0Lgo+IGxhc3Mgc3lwaGlsaXMgZmFsbGVuCkR1IGhhc3QgbmljaHRzIERlcmFydGlnZXMhCgpEYSBzb2xsIG5vY2ggZWluZXIgd2FzIGdlZ2VuIGRpZSBLcmFua2hlaXRlbiBoaWVyIGltIE1HIHNhZ2VuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbnRlbGxpZ2VudGVzIFZpZWggOikgKEJlZWx6ZWJ1YiwgMjMuIEphbiAxOTk3LCAyMzoyOTo0OCk6ClVuZ2VrdWVyenQ6CgpEdSB0ZWlsc3QgTHVnIG1pdDogbW9tZW50LCBpY2ggYmluIGt1cnogYmVpbSBDb2xhLUF1dG9tYXQuLi4KPiBEZWlmaSBrcmFlY2h6dDogLi4uIGxlZXIgOiggLi4uIGxlZXIgOiggLi4uCgpEYXMgQmVzdGU6IEVzIHdhciB3aXJrbGljaCBrZWluZSBDb2xhIG1laHIgZHJpbiAhISEKCkluIGRlciBOb3QgdHJpbmt0IGRlciBCZWVsemVidWIgRmFudGEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSW50ZWxsaWdlbnRlcyBWaWVoIDopIChBbmF0b2wsIDIzLiBKYW4gMTk5NywgMjM6MzE6MTUpOgp+IyEgcm49QmVlbHplYnViIHJ0PTg1NDA1ODU4OCByZz1zY2htYXJybgp+IyEgdGlkPTg1NDA1ODU4OAoKQmVlbHplLCBEdSBzcGllbHN0IGVudHNjaGllZGVuIHp1dmllbCAiQ3JlYXR1cmVzIiwgd2VubiBzb2dhciBEZWluClZvZ2VsIHNjaG9uIEFuemVpY2hlbiBrdWVuc3RsaWNoZXIgSW50ZWxsaWdlbnova3VlbnN0bGljaGVuIExlYmVucwplbnR3aWNrZWx0Li4uCgpLbGF1dCBCZWVsemVidWIgZGllIE5vcm4uLmFlaC4uLlBhcGFnZWllbmVpZXIsCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVudGVyYmV3dXNzdHNlaW4gKEhhZHJhLCAyNC4gSmFuIDE5OTcsIDAyOjI1OjE4KToKRHUgcnVmc3Q6IHNjaHJ1bXBmaSBpc3Qgc3Vlc3MhCkFlbmdzdGxpY2ggZHJlaHN0IER1IERpY2ggdW0uCiAKaGFkcmEgLSBuYWNoZGVua2xpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB1bnRlcmJld3Vzc3RzZWluIChTY2hydW1wZmksIDI0LiBKYW4gMTk5NywgMDQ6MTM6NTcpOgp+IyEgcm49SGFkcmEgcnQ9ODU0MDY5MTE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0MDY5MTE4CipwcnV1dXV1dXV1dXV1dXV1dXV1c3QqClNjaHJ1bXBmaSBpc3QgdWVicmlnZW5zIE5JQ0hUIFNVRVNTICEgISAhfiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkd1dGUgYWx0ZSBaZWl0ZW4gISAoWnVlcmlsZXUsIDI0LiBKYW4gMTk5NywgMDQ6NTI6MTQpOgpIaSwKSWNoIG1hZyBtaWNoIG5vY2ggZ3V0IGFuIGRpZSBaZWl0IGVyaW5uZXJuLCB3byBtYW4gbWl0IGRlbSBQYXJ0eW1vbnN0ZXIKUnVlc3R1bmdlbiwgU2Nod2VydGVyLCBBbXVsZXR0ZSBlaW5mYWNoIGFsbGVzIGNsb25lbiBrb25udGUgdW5kIGRhcyBmdWVyCnNvdmllbCBMZXV0ZSB3aWUgbWFuIHdvbGx0ZS4gLT4gR2liIEJTUyBhbiBQYXJ0eW1vbnN0ZXIsIHNhZyBQYXJ0eW1vbnN0ZXIgZ2liCmFsbGVuIEJTUyA8LS0gVW5kIGFsbGUga3JpZWd0ZW4gZWluIEJTUy4gRGEgZ2FiIGVzIGpld2VpbHMgUGFydHlzIHdvIGdydXBwZW4Kdm9uIFNwaWVsZXJuIG1pdCBSdWVzdHVuZ2VuIHZlcnNvcmd0IHd1cmRlbi4gVW5kIGRhbm4gZGVyIEFuc2NoaXNzIHZvbiBLZXRvcywKZGVyIGRhcyBkYW1hbHMgd2VuaWdlciBsdXN0aWcgZmFuZCB1bmQgc2ljaCBtaXNzYnJhdWNodCBmdWVobHRlID06KSBBYmVyIGhldXRlCmthbm4gd2Fyc2NoZWlubGljaCBzZWxic3QgZXIgdWViZXIgZGllc2UgU2FjaGUgbGFjaGVuLCBhbHNvIGljaCBlcmlubmVyZSBtaWNoCmdlcm5lIGFuIG1laW5lIFNwaWVsZXJ6ZWl0ID06KQoKVHNjaHVlc3MgTGV1dGUuLi4gZXVlciBadWVyaWxldSA9OikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHdXRlIGFsdGUgWmVpdGVuICEgKEFzbW9kaXMsIDI0LiBKYW4gMTk5NywgMDY6NTM6NDApOgp+IyEgcm49WnVlcmlsZXUgcnQ9ODU0MDc3OTM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0MDc3OTM0CkhtbSwgbywgd2FyIGVpbmUgZWluZmFjaGUgU2FjaGUsIG1laW5lIExldXRlIGF1c3p1cnVlc3RlbiA6KQpTY2hhZGUsIGRhc3MgZXMgbmljaHQgbWVociBnZWh0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHdXRlIGFsdGUgWmVpdGVuICEgKFlhbnRybywgMjQuIEphbiAxOTk3LCAxMDoyNjo1Nik6Cn4jISBybj1Bc21vZGlzIHJ0PTg1NDA4NTIyMCByZz1zY2htYXJybgp+IyEgdGlkPTg1NDA3NzkzNAoKS2V0b3MgdW5kIExBQ0hFTj8/PyBJY2ggaGFiIGRlbiBLZXJsIG1hbCBpbiBSTC4uLi4gbmFqYS4uLiBiZXNzZXIgc2Nod2VpZyBpY2gKOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR3V0ZSBhbHRlIFplaXRlbiAhIChIb29kLCAyNC4gSmFuIDE5OTcsIDExOjM4OjQ5KToKfiMhIHJuPUFzbW9kaXMgcnQ9ODU0MDg1MjIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0MDc3OTM0CgpoYWNoLi4uZGllIGFsdGVuIHplaXRlbjogYmluIHp3YXIgbm9jaCBuaWNoIHNvIGFsdCwgYWJlciBpY2gga2FubiBtaWNoIGRhcmFuCmVyaW5uZXJuIG1pdCBlaW5lbSAnL3phcCA8bW9uc3Rlcj4nIGdlZmFocmxvcyBqZWRlcyBub2NoIHNvIGdlZmFlaHJsaWNoZQp0aWVyIHNla3VuZGVuc2NobmVsbCB6dSBraWxsZW4uIG9ldHRpcyBrYW1lbGhlcmRlIGJyYWNodGUgbWlyIHNvIGplZGVzbWFsCjE2IG1pbyBFUHMgOikgdW5kIGltIHNlaGVyd2V0dGJld2VyYiBoYWIgaWNoIGVuZGxpY2ggbWFsIHpvbmsgKGxldmVsIDI1KQp1bWdlbmlldGV0LCB1bmQgZGllIGh5ZHJhIDYgc2VrdW5kZW4sIG5hY2hkZW0gc2llIGF1cyBkZW0gbmVzdCBoZXJhdXN3YXIsCnVuZCB1bmQgdW5kLi4uYWNoIGhlcnJqZTogaGVycmxpY2ggOikKCi0tLS0tLQpwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdlbm4gTWFnaWVyIHNpY2ggYW4gRGFtYWxzIGVyaW5uZXJuIChIaWdobGFuZGVyLCAyNC4gSmFuIDE5OTcsIDEyOjUxOjM3KToKfiMhIHJuPVNpbHZhbmEgcnQ9ODU0MDA3NzUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUzOTQ3MDk0CkRhbWFscz8gICBEYW1hbHMgd2FyLCBhbHMgaWNoIG5vY2ggZWluIGhvZWhlcmVzIExldmVsIGFscyBXb2Vsa2NoZW4gaGF0dGUKKGJ6dy4gYWxzIGVzIG5vY2gga2VpbiBXb2Vsa2NoZW4gZ2FiLCBqZWRlbmZhbGxzIG5pY2h0IHVudGVyIGRlbSBOYW1lbikuCkRhbWFscyB3YXIsIGFscyBkaWUgVGlnZXIgaW0gZGFtYWxzIG5vY2ggdm9yaGFuZGVuZW4gTGFieXJpbnRoIGF1ZiBUaXRpd3UKQW50aGVhIDltYWwgaGludGVyZWluYW5kZXIgaW4gZGllIEtJTEwtTGlzdGUgZ2VicmFjaHQgaGFiZW4uCkRhbWFscyB3YXIsIGFscyB3aXIgYWxsZSBub2NoIHN0YXRzIHZvbiAxIGhhdHRlbiwgYWJlciB3aWUgbWl0IDEwIGdla2FlbXBmdApoYWJlbiAobnVyIGhhbHQgbnVyIDUwaHAuLi4pLgpEYW1hbHMgd2FyLCBhbHMgbWFuIHNpY2ggenVtIEZlbnN0ZXJzY2hsaWVzc2VuIG5vY2ggdGVsZXBvcnRpZXJlbiBsYXNzZW4KbXVzc3RlLCB3ZWlsIGRlciBFaXNwYWxhc3Qgbm9jaCBuaWNodCBhbmdlc2NobG9zc2VuIHdhci4KRGFtYWxzIHdhciwgYWxzIG1hbiBtaXQgNCBxdWVzdHMgYWxsZSBoYXR0ZSA6PiAoQW1hcnlsbGlzLApUaXRpd3UsIEVpc3BhbGFzdCAtIGZyYWcgbWljaCBuaWNodCBtZWhyLCB3YXMgZGllIHZpZXJ0ZSB3YXIpLgpBY2ggaGFsdCwgRnJpZWRob2YgbmF0dWVybGljaC4gV28gZXMgbm9jaCBsYW5nZSBrZWluIExhYnlyaW50aCBnYWIsIHNvbmRlcm4Kd28gbWFuIGRlbiBTdGVpbiBnZXNjaGVua3QgYmVrYW0uIERlbiBSdWJpbiBtZWluZSBpY2guCkFscyBNRyBub2NoIGdhciBuaWNodCBvZmZpemllbGwgb2ZmZW4gd2FyIHVuZCB3aXIgcXVhc2kgVGVzdHNwaWVsZXIuIAoKCiAgICAqc2Nod2Flcm0qCgogICBIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjopIChSYWZmaSwgMjQuIEphbiAxOTk3LCAxMzo1NzowNCk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIERyYWtvbmllcndhZWNodGVyc10gUmV0dGV0IGRlbiBUZW1wZWwgdm9yIE5pZXR6c2NoZSEKCkRlciBpc3QgZ3V0ICEKCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdlbm4gTWFnaWVyIHNpY2ggYW4gRGFtYWxzIGVyaW5uZXJuIChRaXRlc3MsIDI0LiBKYW4gMTk5NywgMTU6MjY6MDApOgp+IyEgcm49SXJpeCBydD04NTM5NjA2MjEgcmc9c2NobWFycm4KfiMhIHRpZD04NTM5NDcwOTQKbWVpbiAnZGFtYWxzJyBmYWVuZ3QgaW0gQUwgZ3JhZCBhbi4KT2IgaWNoIG1pY2ggc3BhZXRlciBhdWNoIG1hbCBkYXJhbiBlcmlubmVybiB3ZXJkZSA/CgpRSSoqIHNpbm5pZXJ0CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2VubiBNYWdpZXIgc2ljaCBhbiBEYW1hbHMgZXJpbm5lcm4gKFd1cnplbCwgMjQuIEphbiAxOTk3LCAyMDozMTowMCk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTg1NDEwNjY5NyByZz1zY2htYXJybgp+IyEgdGlkPTg1Mzk0NzA5NAp0amEsIHdlbm4gc2Nob24gYWxsZSB2b24gZGVyIHNjaG9lbmVuIHZlcmdhbmdlbmhlaXQgc2Nod2Flcm1lbi4uLiAKdG9sbCB3YXIgYXVjaCBkaWUgemVpdCwgYWxzIGVzIG51ciBlaW5lbiBlaW56aWdlbiBzcGllbGVyIGdhYiBpbSBtZywgdmllbGUKcmFldW1lIG5vY2ggZW5nbGlzY2hlIGJlc2NocmVpYnVuZ2VuIGhhdHRlbiB1bmQgZGVyIGVpc3BhbGFzdCBnZXJhZGUgaW4gZGVyCnVlYmVyc2V0enVuZ3NwaGFzZSB3YXIgOikKCmVzIGdhYiB6d2FyIG5vY2ggbmljaHRzIHp1IHNwaWVsZW4sIGFiZXIgZGllIGF1ZmJydWNoc3N0aW1tdW5nIHdhciBkYSwgZGllCmhhbHR1bmcgImRhcyBzY2hhZmZlbiB3aXIgc2Nob24iLCBkaWUgYmVrYW5udGVybWFzc2VuIHZvbGwgYmVyZWNodGlndCB3YXIKKHVuZCBkaWUgYmVzb25kZXJzIGRhenUgYnJpbmd0LCB2b24gZGVyIHplaXQgenUgc2Nod2Flcm1lbi4uLikKCmFiZXIgZ2VuYXUgYmV0cmFjaHRldCwgaXN0IGVzIGhldXRlIHNjaG9lbmVyLiBkYWhlciBpc3QgZGllc2UgcnVicmlrIGdlbmF1CnJpY2h0aWcgZnVlciBkaWUgZGlza3Vzc2lvbiA6KQoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHVudGVyYmV3dXNzdHNlaW4gKEZ5dCwgMjUuIEphbiAxOTk3LCAwNDowMTo0Myk6Cn4jISBybj1TY2hydW1wZmkgcnQ9ODU0MDc1NjM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0MDY5MTE4CgpJc3Qgc2llIGRvY2ghCgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB1bnRlcmJld3Vzc3RzZWluIChLcmV0ZWssIDI1LiBKYW4gMTk5NywgMTU6NTc6MjcpOgp+IyEgcm49Rnl0IHJ0PTg1NDE2MTMwMyByZz1zY2htYXJybgp+IyEgdGlkPTg1NDA2OTExOApLYW5uIGljaCBudXIgdW50ZXJzdHVldHplbi4uLgoKCiAgICAgICB8IC8gIHxcICB8LS0gIC0tLSAgfC0tICB8IC8KICAgICAgIHw8ICAgfC8gIHwtICAgIHwgICB8LSAgIHw8CiAgICAgICB8IFwgIHxcICB8LS0gICB8ICAgfC0tICB8IFwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHVudGVyYmV3dXNzdHNlaW4gKFNjaHJ1bXBmaSwgMjUuIEphbiAxOTk3LCAxODoxOToyNSk6Cn4jISBybj1LcmV0ZWsgcnQ9ODU0MjA0MjQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0MDY5MTE4CkljaCBnZWJzIGF1Zi4uLiAqc2NobHVjaHoqClNjaHJ1bXBmaSBzaW5udCBhdWYgUmFjaGUgZGVubiBESUUgaXN0IHN1ZXNzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NobmVlYmFlbGxlIChMYXZpbmlhLCAyNS4gSmFuIDE5OTcsIDIyOjU0OjE2KToKRHUgd2lyZnN0IGVpbmVuIEZldWVyYmFsbCBuYWNoIGRlbSBTY2huZWViYWxsLgpEdSBzY2hsYWVnc3QgZGVuIFNjaG5lZWJhbGwgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KCkhhcnRlciBTY2huZWUgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdGFycyBhbmQgU3RyaXBlcy4uLiAoUHVjaywgMjYuIEphbiAxOTk3LCAwMDo1MTo1NCk6Cgo+IEtleSBuaW1tdCBlaW5lbiBXdXJmc3Rlcm4gaW4gZGllIEhhbmQgdW5kIHdpcmZ0IGlobiBuYWNoIEtleS4KICBLZXlzIFd1cmZzdGVybiB6ZXJmZXR6dCBLZXlzIEJlaW4uCgpJY2ggd2V0dGUsIGljaCB3ZWlzcywgd2FzIGVyIGFscyAzMDAuIFRvZCB3YWVobHQuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHdXRlIGFsdGUgWmVpdGVuICEgKFRvZSwgMjYuIEphbiAxOTk3LCAxOToxMjowNik6Cn4jISBybj1ZYW50cm8gcnQ9ODU0MDk4MDE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0MDc3OTM0CmljaCBsYWNoZSBsaWViZXIgbWl0IGtldG9zIGFscyB1ZWJlciB5YW50cm8uLi4KdG9lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVlIFBvc3QhIChBY3JpbW9uLCAyNi4gSmFuIDE5OTcsIDIyOjAwOjU0KToKPiBtYWlsCkVpbiBCcnVlbGxlbiwgZGFzIFN0ZWluZSBlcndlY2tlbiBrb2VubnRlIGVyc2NocmVja3QgRGljaC4KR290dHNlaWRhbmsgZW50ZmVybnQgc2ljaCBkaWUgVXJzYWNoZS4KKFBhdXNlKQpPcmRuZXIgJ25ld21haWwnIGF1Zmdlc2NobGFnZW4uCi4uLgoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyIGhvZXJ0IHNjaG9uIHNlaW5lIE1haWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBXZW5uIE1hZ2llciBzaWNoIGFuIERhbWFscyBlcmlubmVybiAoTWFyaXRhLCAyNy4gSmFuIDE5OTcsIDAxOjIyOjI0KToKfiMhIHJuPVd1cnplbCBydD04NTQxMzQyNjAgcmc9c2NobWFycm4KfiMhIHRpZD04NTM5NDcwOTQKRGllIGVpbnppZyB3YWhyZSBaZWl0IHdhciBkaWUsIGFscyBlcyBub2NoIG1vZWdsaWNoIHdhciwgb2huZSBaVC1MaXN0ZQphdWZ6dXN0ZWlnZW4uIEljaCB3dXJkZSBNaXR0ZSA5NSBnZWJvcmVuLCBkYXMgd2FyIGxlaWRlciBzY2hvbiB6dSBzcGFldC4KTWFyaWRkYSBkaWUgRW50ZGVja2VyaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClppcmt1c2thdHplbj8gKEFuY2FsYWdvbiwgMjcuIEphbiAxOTk3LCAwOTozODoxOSk6CktOdWRkZWxzIQpXYXMgbWVpbmUgS2F0emUgYWxsZXMga2FubjoKCkdhbGFkcmllbCBsYWV1ZnQgendpc2NoZW4gR2FsYWRyaWVscyBCZWluZW4gZHVyY2guIFNpZSBtdXNzIGF1ZnBhc3NlbiwgZGFzcwpzaWUgbmljaHQgc3RvbHBlcnQuCgoKV2llIG1hY2h0IHNpZSBkYXMgbnVyPyA6KQpOb2NobWFsIEtudWRkZWxzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5jYWxhZ29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpibG9lZGVyIFBhcGFnZWkhIChMaSwgMjcuIEphbiAxOTk3LCAxMDowMzo0OSk6Ck1pc3QsIGhhYmVuIGRpZSBQYXBhZ2VpbiBndXRlIEF1Z2VuOgpEZXIgS2VsbGVyIHd1cmRlIG51ciBwcm92aXNvcmlzY2ggZ2VncmFiZW4uIEFuIGRlbiBXYWVuZGVuIGVya2VubnQgbWFuIG5vY2gKZGllIEdyYWJzcHVyZW4gdW5kIGJlc29uZGVycyBhYmdlc3R1ZXR6dCBzaW5kIGRpZSBXYWVuZGUgYXVjaCBuaWNodC4gTnVyIGRlbQphdXNzZXJzdCB0cm9ja2VuZW0gWnVzdGFuZCBkaWVzZXMgS2VsbGVycyBpc3QgZXMgenUgdmVyZGFua2VuLCBkYXNzIGRhcyBIYXVzCm5vY2ggbmljaHQgZWluZ2VzdHVlcnp0IGlzdC4gRnJ1ZWhlciBmdWVocnRlIHdvaGwgZWluIER1cmNoZ2FuZyBuYWNoIE9zdGVuLAphYmVyIGRvcnQgaXN0IHNjaG9uIHNlaXQgbGFuZ2VtIGFsbGVzIHp1c2FtbWVuZ2VzdHVlcnp0IHVuZCB1bnBhc3NpZXJiYXIuCkluIGRlciBEZWNrZSBiZWZpbmRldCBzaWNoIGVpbmUgZ2VzY2hsb3NzZW5lIEZhbGx0dWVyLiAKRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHdlc3Rlbi4KTXVzYXNoaSBmbGF0dGVydCBoZXJlaW4uCk11c2FzaGkga3JhZWNoenQ6IC4uLiBmZWluIC4uLiBrcnJyb29hYWEhCk11c2FzaGkga3JhZWNoenQ6IC4uLiBrcnJyb29vYWFhIC4uLiBIYWxsbyBlaW4gdW5zaWNodGJhcmVzIFdlc2VuIC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHVudGVyYmV3dXNzdHNlaW4gKEtyZXRlaywgMjcuIEphbiAxOTk3LCAxMToxNTo1OCk6Cn4jISBybj1TY2hydW1wZmkgcnQ9ODU0MjEyNzY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0MDY5MTE4CklzdCBzaWUgbmljaHQgWlVDS0VSU0NITlVDS0VMSUdTVUVTUywgd2VubiBzaWUgc28gc2NobHVjaHp0PyA6LSkKCgogICAgICAgfCAvICB8XCAgfC0tICAtLS0gIHwtLSAgfCAvCiAgICAgICB8PCAgIHwvICB8LSAgICB8ICAgfC0gICB8PAogICAgICAgfCBcICB8XCAgfC0tICAgfCAgIHwtLSAgfCBcCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiB1bnRlcmJld3Vzc3RzZWluIChIYXJkaWwsIDI3LiBKYW4gMTk5NywgMTQ6MzY6MDIpOgp+IyEgcm49S3JldGVrIHJ0PTg1NDM2MDE1OCByZz1zY2htYXJybgp+IyEgdGlkPTg1NDA2OTExOAoKSmF1LiBTY2hydW1wZmkgaXN0IHRvdGFsIHN1ZXNzLiBCZXNvbmVycywgd2VubiBzaWUgc2NobW9sbHQuIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogdW50ZXJiZXd1c3N0c2VpbiAoU2lkb2xpbiwgMjcuIEphbiAxOTk3LCAxNDozNjo1OCk6Cn4jISBybj1IYXJkaWwgcnQ9ODU0MzcyMTYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0MDY5MTE4Ck5hIER1IGJpc3QgYWJlciBhdWNoIG5pY2h0IG9obmUsIEhhcmRpbC4gOi0pCgpTaWRvbGluLiBTY2h3YWVybXQgdm9uIEhhcmRpbHMgYmxhdWVuIEF1Z2VuLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IHVudGVyYmV3dXNzdHNlaW4gKEdyaW1tYm9ybiwgMjcuIEphbiAxOTk3LCAxNDo0MjowNyk6Cn4jISBybj1TaWRvbGluIHJ0PTg1NDM3MjIxOCByZz1zY2htYXJybgp+IyEgdGlkPTg1NDA2OTExOAoKTW9tZW50IQpOaWVtYW5kIGlzdCBzbyBzdWVzcyB3aWUgbWVpbmUgU2NocnVtcGZpLCBkYXMgbW9lY2h0ZSBpY2ggaGllciBtYWwKa2xhcnN0ZWxsZW4uIFNjaHJ1bXBmaSBpc3Qgc3Vlc3Mgd2VubiBzaWUgc2NobW9sbHQsIHNpZSBpc3Qgc3Vlc3Mgd2VubiBzaWUKa29jaHQsIHNpZSBpc3Qgc3Vlc3Mgd2VubiBzaWUgc3B1ZWx0LCBzaWUgaXN0IHN1ZXNzIHdlbm4gc2llIHNjaGxhZWZ0LCBzaWUgaXN0CnN1ZXNzIHdlbm4gc2llIGF1ZndhY2h0Li4uIGphLCBzaWUgaXN0IHNvZ2FyIGJlaW5haGUgc3Vlc3Mgd2VubiBzaWUgcmF1Y2h0LApzb3dlaXQgZGFzIG1vZWdsaWNoIGlzdC4KVW5kIGF1c3NlcmRlbSBnZWh0IGVzIGV1Y2ggZWluZW4gZmV1Y2h0ZW4gS2VocnJpY2h0IGFuLCB3aWUgc3Vlc3MgbWVpbmUgc3Vlc3NlClNjaHJ1bXBmaSBpc3QuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogdW50ZXJiZXd1c3N0c2VpbiAoU3VuZmxvd2VyLCAyNy4gSmFuIDE5OTcsIDE0OjQzOjExKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NTQzNzI1Mjcgcmc9c2NobWFycm4KfiMhIHRpZD04NTQwNjkxMTgKaWNoIHJhdWNoZSBhdWNoIDopIGZpbmRlc3QgZHUgbWljaCBkYW5uIGF1Y2ggc3Vlc3MgbWVpbiAiSGVyciIgR3JpbW1ib3JuID8KClN1bmZsb3dlcgoKICAgICAgICAgICAgICAgICAgICAtLT09PSBibHVlbWNoZW4gPT09LS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiB1bnRlcmJld3Vzc3RzZWluIChIYXJkaWwsIDI3LiBKYW4gMTk5NywgMTQ6NTI6MjMpOgp+IyEgcm49U3VuZmxvd2VyIHJ0PTg1NDM3MjU5MSByZz1zY2htYXJybgp+IyEgdGlkPTg1NDA2OTExOAoKLi4uIHVuZ2xhdWJsaWNoLiBEYSBzY2hlaW5lbiBtYW5jaGUgZWNodCB6dSBnbGF1YmVuLCBudXIgd2VpbCBzaWUgJ25lCk1hZ2llcnNoZWxsIGhhYmVuLCBzaWNoIGluIHBoaWxvc29waGlzY2hlIERpc2t1c3Npb25lbiAoU2NocnVtcGZpIGlzdCBzdWVzcyEpCmVpbmRyYWVuZ2VsbiB6dSBkdWVyZmVuLgpJbW1lciBkaWVzZSBOZXVyZWljaGVuLgoKLUhhcmRpbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiB1bnRlcmJld3Vzc3RzZWluIChTdW5mbG93ZXIsIDI3LiBKYW4gMTk5NywgMTQ6NTM6MTMpOgp+IyEgcm49SGFyZGlsIHJ0PTg1NDM3MzE0MyByZz1zY2htYXJybgp+IyEgdGlkPTg1NDA2OTExOAoKaG1wZiwgc2NocnVtcGZpIGlzdCBtZWluZSBTY2h3ZXN0ZXIsIGFiZXIgc2llIHNjaG5hcHB0IG1pciBhdWNoIGplZGVuIEtlcmwKd2VnIHVuZCBpY2ggYmVrb21tZSBuaWUgZWluZW4gYWIuIDooCgoKICAgICAgICAgICAgICAgICAgICAtLT09PSBibHVlbWNoZW4gPT09LS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiB1bnRlcmJld3Vzc3RzZWluIChTaWRvbGluLCAyNy4gSmFuIDE5OTcsIDE0OjUzOjI3KToKfiMhIHJuPUhhcmRpbCBydD04NTQzNzMxNDMgcmc9c2NobWFycm4KfiMhIHRpZD04NTQwNjkxMTgKVW5kIGRhYmVpIGthbm4gZXIgZ2FyIHZlcm11dGxpY2ggbmljaHQgbWFsIGJldXJ0ZWlsZW4sIG9iIFNjaHJ1bXBmaSBzdWVzcyBpc3QuCgpTaWRvbGluLiBGaW5kZXQgSGFyZGlsIHN1ZXNzZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogdW50ZXJiZXd1c3N0c2VpbiAoR3JpbW1ib3JuLCAyNy4gSmFuIDE5OTcsIDE0OjU0OjE4KToKfiMhIHJuPVN1bmZsb3dlciBydD04NTQzNzI1OTEgcmc9c2NobWFycm4KfiMhIHRpZD04NTQwNjkxMTgKQWJlciBHQU5aIHNpY2hlciBuaWNodCEgSWNoIEZJTkRFIFNjaHJ1bXBmaSBuaWNodCBzdWVzcywgc2llIElTVCBzdWVzcy4gVW5kCmRhcyBuaWNodCB3ZWdlbiBkZXMgUmF1Y2hlbnMsIHNvbmRlcm4gdHJvdHouCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogdW50ZXJiZXd1c3N0c2VpbiAoSGFyZGlsLCAyNy4gSmFuIDE5OTcsIDE0OjU0OjM4KToKfiMhIHJuPVNpZG9saW4gcnQ9ODU0MzczMjA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0MDY5MTE4CgpBbHNvIFNpZG9saW4sIGljaCBnbGF1YmUsIER1IGJla29tbXN0IEFlcmdlciBtaXQgQWxpbmNoZW4uIERpZSBoYXQgZG9jaCBlaW4KQWJvIGF1ZiBtZWluZW4gQ2hhcm1lLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IHVudGVyYmV3dXNzdHNlaW4gKFNpZG9saW4sIDI3LiBKYW4gMTk5NywgMTQ6NTU6MTQpOgp+IyEgcm49SGFyZGlsIHJ0PTg1NDM3MzI3OCByZz1zY2htYXJybgp+IyEgdGlkPTg1NDA2OTExOApJY2ggZGFjaHRlLCBkYXMgd2FlcmUgTGFpbGE/IDstKQoKU2lkb2xpbi4gaGF0IGRpZSB6d2VpIHNjaG9uIGtudXRzY2hlbiBnZXNlaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IHVudGVyYmV3dXNzdHNlaW4gKEhhcmRpbCwgMjcuIEphbiAxOTk3LCAxNDo1NTo1NCk6Cn4jISBybj1TaWRvbGluIHJ0PTg1NDM3MzMxNCByZz1zY2htYXJybgp+IyEgdGlkPTg1NDA2OTExOAoKRGFzIHdhcmVuIGRyZWksIGxpZWJlciBTaWRvbGluLiBFaW4gZ2V3aXNzZXIgJ1BhbXBlcnMnIGhhdCBkYSBhdWNoIHNlaW5lClBmb3RlbiBmZHJpbmdlaGFidC4gRWluIGZsb3R0ZXIgRHJlaWVyLiA6KQoKLUhhcmRpbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiB1bnRlcmJld3Vzc3RzZWluIChTaWRvbGluLCAyNy4gSmFuIDE5OTcsIDE0OjU2OjU2KToKfiMhIHJuPUhhcmRpbCBydD04NTQzNzMzNTQgcmc9c2NobWFycm4KfiMhIHRpZD04NTQwNjkxMTgKUGFtcGVycz8gS2VubmljaG5pY2guLiBJc3QgZGVyIGF1Y2ggc28gc3Vlc3Mgd2llIER1PwoKU2lkb2xpbi4gSGF0IG51ciBFdWNoIHp3ZWkgZ2VzZWhlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiB1bnRlcmJld3Vzc3RzZWluIChIYXJkaWwsIDI3LiBKYW4gMTk5NywgMTQ6NTk6NDApOgp+IyEgcm49U2lkb2xpbiBydD04NTQzNzM0MTYgcmc9c2NobWFycm4KfiMhIHRpZD04NTQwNjkxMTgKCkVzIGdlaHQuIEVyIGlzdCBnYW56IHN1ZXNzLCBhYmVyIGVyIGhhdCBzbyBlaW5lbiBla2xpZ2VuIDQtVGFnZS1CYXJ0LiBVbmQgZXIKaGF0IHNpY2ggZWluIFBoYWxsdXNzeW1ib2wgaW4gc2VpbmUgSGFhcmUgcmFzaWVyZW4gbGFzc2VuLi4uIEFiZXIgaWNoIGhhYgpnZWhvZXJ0LCBMYWlsYSBzdGVodCBkYSB2b2xsIGRyYXVmLgoKLUguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogdW50ZXJiZXd1c3N0c2VpbiAoR3JpbW1ib3JuLCAyNy4gSmFuIDE5OTcsIDE1OjAxOjM2KToKfiMhIHJuPUhhcmRpbCBydD04NTQzNzM1ODAgcmc9c2NobWFycm4KfiMhIHRpZD04NTQwNjkxMTgKQXVmIGRhcyBQaGFsbHVzX3N5bWJvbF8gb2Rlci4uLiBuZWluLCBpY2ggYnJlY2hlIGRpZSBGcmFnZSBsaWViZXIgYWIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnByb21wdGUgQmVkaWVudW5nLi4gKFplcGh5ciwgMjcuIEphbiAxOTk3LCAxODo1MjozMSk6CkRlciBUcm9sbCBmYWVsbHQgdG90IHp1IEJvZGVuLgpbc2NoYXVdCkR1IHN0ZWhzdCBpbiBlaW5lbSBrbGVpbmVuIEdlaGVpbWdhbmcsIGRlciBuYWNoIFN1ZWRlbiBmdWVocnQuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4gdW5kIG5vcmRlbi4KRGllIExlaWNoZSBlaW5lcyBUcm9sbHMuCkRpZSBiZXJlaXRzIHppZW1saWNoIHN0aW5rZW5kZSBMZWljaGUgZWluZXMgVHJvbGxzLgpNci4gUS4oIEtpdSApLgpFaW4gYXVzZ2VmcmFuc3RlciBMZW5kZW5zY2h1cnouICgyKQpFaW4gS3JpZWdzaGFtbWVyLiAoMikKS2l1IGxhZWNoZWx0LgpEdSBkZW5rc3QgICAuIG8gTyAobG9zLCByZXNldCkKPiBEdSBoYXN0IGpldHp0IDE5MCBMZWJlbnNwdW5rdGUgdW5kIDM3IE1hZ2llcHVua3RlLgo+IEVpbiBUcm9sbCBrb21tdCBhbi4KRWluIFRyb2xsIGtvbW10IGFuLgpEZXIgVHJvbGwgZ3J1bnp0IHVudmVyc3RhZW5kbGljaGUgVG9lbmUuCktpdSBzYWd0OiB3bz8gOikpCkR1IGhhc3QgamV0enQgMTkxIExlYmVuc3B1bmt0ZSB1bmQgMzggTWFnaWVwdW5rdGUuCktpdSBzYWd0OiBkaWUgdHJvbGxzIHNpbmQgbGFuZ3NhbQpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCj4gS2l1IHNhZ3Q6IHdvdwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2VubiBNYWdpZXIgc2ljaCBhbiBEYW1hbHMgZXJpbm5lcm4gKEZ5dCwgMjcuIEphbiAxOTk3LCAyMDowNDoyNSk6Cn4jISBybj1NYXJpdGEgcnQ9ODU0MzI0NTQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODUzOTQ3MDk0CldpZSBrbm5zdCBEdSBkYSBkaWUgJ2VpbnppZyB3YWhyZSBaZWl0JyBrZW5uZW4/CgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogdW50ZXJiZXd1c3N0c2VpbiAoRnl0LCAyNy4gSmFuIDE5OTcsIDIwOjA2OjQ1KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NTQzNzMyNTggcmc9c2NobWFycm4KfiMhIHRpZD04NTQwNjkxMTgKCkhtcGYsIEdyaW1taSwgRHUgZmluZGVzdCBTY2hydW1wZmkgbmljaHQgc3Vlc3MsIG9id29obCBzaWUgZGFzIG5jaCBEZWluZXIKZWlnZW5lbiBBdXNzYWdlIGlzdD8gKmdydWViZWwqCgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogdW50ZXJiZXd1c3N0c2VpbiAoU2NocnVtcGZpLCAyNy4gSmFuIDE5OTcsIDIwOjE4OjEyKToKfiMhIHJuPUZ5dCBydD04NTQzOTIwMDUgcmc9c2NobWFycm4KfiMhIHRpZD04NTQwNjkxMTgKQWxzbyBlcyBpc3QgamEgZWNodCBpbnRlcmVzc2FudCBkaWUgRGlza3Vzc2lvbiBoaWVyLgpTY2hydW1wZmkgSVNUIE5JQ0hUIFNVRVNTICEgISAhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2htYXJybiAoU2Nob2tvLCAyNy4gSmFuIDE5OTcsIDIwOjU0OjEyKToKfiMhIG9uPVNjaG9rbyBvdD04NTQzOTQ3ODMgb2c9c3VjaGUtYmlldGUKdW50IGdvYmxpbgoKRGllc2VyIEdvYmxpbiBoaWVyIGhhdCBlaW5lIGdlbGJsaWNoIHNjaGltbWVybmRlIEhhdXQuIEF1cyBzZWluZW4gb3JhbmdlbmVuCkF1Z2VuIHNjaGF1dCBlciBEaWNoIG5ldWdpZXJpZyBhbi4gRHUgYmlzdCBmcm9oLCBkYXNzIGVyIGhpZXIgaW4gZGVyIFN0YWR0CmxlYnQuIFdlbm4gZXIgRGlyIGluIGVpbmVyIGFuZGVyZW4gR2VnZW5kIGJlZ2VnbmV0IHdhZXJlLCBtdWVzc3Rlc3QgRHUgc2Nob24KdW0gRGVpbiBMZWJlbiBrYWVtcGZlbi4gS3VyeiBiZXZvciBEdSBEaWNoIGdlbGFuZ3dlaWx0IGFud2VuZGVuIHdpbGxzdCwKYmVtZXJrc3QgRHUgbm9jaCBlaW5lIEJld2VndW5nIGluIGRlciBIYXV0IGRlcyBHb2JsaW5zLiBTZWhyIHNlbHRzYW0uCkVyIGlzdCBhYnNvbHV0IGZpdC4KRXIgdHJhZWd0IGJlaSBzaWNoOgpEZWluZSBjaGFvdGlzY2ggbXV0aWVydGUgSGF1dC4KRWluZSBHb2JsaW5heHQgKGdlenVlY2t0KS4KCgp3YXMgbWFjaHQgZGVyIGRlbm4gbWl0IG1laW5lciBDaGFvc2hhdXQ/Pz8KCnNjaG9rbyAoZnVlaGx0IHNpY2ggbmltbWVyIHdvaGwgaW4gc2VpbmVyIEhhdXQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYWphLCBkaWUgSHlkcmEgKEFzbW9kaXMsIDI3LiBKYW4gMTk5NywgMjI6MjY6MTIpOgoKRHUgc2NoYXVzdCBpbiBkaWUgc2NoaW1tZXJuZGUgS3VnZWwgdW5kIGVya2VubnN0IHZlcnNjaHdvbW1lbjoKRHUgc3RlaHN0IGltIE5lc3QgZGVyIEh5ZHJhLiBEdSBzb2xsdGVzdCBuaWNodCBoaWVyIHNlaW4hCi09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LQoKKFdlbm4gRHUgYWxzIFNwaWVsZXIgb2RlciBTZWhlciBoaWVyIGJpc3QsIHdlbmRlIERpY2ggYW4KIFB1bWEgb2RlciBlaW5lbiBmcmV1bmRsaWNoZW4gTWFnaWVyLCB1bSBoaWVyIHdpZWRlcgogaGVyYXVzenVrb21tZW4uIDotKQpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgpEaWUgSHlkcmEuICAgICAgICAgICAgICAgIEVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuICAgICAgIEVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuICAgICAgIEVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuICAgICAgIEVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuICAgICAgIEVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuICAgICAgIEVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuICAgICAgIEVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuICAgICAgIEVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuICAgICAgIEVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuICAgICAgIEVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuICAgICAgIEVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuICAgICAgIEVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuICAgICAgIEVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLgoKCgpIbW0sIG9iIG1hbiBkYSBzb2xhbmdlIHVlYmVybGVidCA/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogamFqYSwgZGllIEh5ZHJhIChBbmF0b2wsIDI3LiBKYW4gMTk5NywgMjI6Mjk6MDUpOgp+IyEgcm49QXNtb2RpcyBydD04NTQ0MDAzNzIgcmc9c2NobWFycm4KfiMhIHRpZD04NTQ0MDAzNzIKClBlYW51dHMuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IHVudGVyYmV3dXNzdHNlaW4gKEZ5dCwgMjcuIEphbiAxOTk3LCAyMzowMTowOSk6Cn4jISBybj1TY2hydW1wZmkgcnQ9ODU0MzkyNjkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0MDY5MTE4CgpIbXBmLCBlcyB3aWRlcnNwcmljaHQuLi4gKnNldWZ6KgoKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXUgd2VoLi4uIChDYXJhZGhyYXMsIDI4LiBKYW4gMTk5NywgMTE6Mzk6NTApOgpIZXV0ZSBpbiBkZXIgUmVjaG5lcnJ1ZWJ1bmcgV2lyc2NoYWZ0c2luZm9ybWF0aWs6CgpUdXRvcjogICAgIEhpZXIgYnJhdWNoZSBpY2ggYWxzbyBlaW5lIHdoaWxlLXNjaGxlaWZlIG1pdCBlb2YuLi4KICAgICAgICAgICAvKiB6ZWlndCBhdWYgdGFmZWwgd28gc3RlaHQ6CiAgICAgICAgICAgICAgV0hJTEUgTk9UIEVPRih0KSBETyAuLi4gKi8KClN0dWRlbnRpbjogV2llIG1hY2h0IG1hbiBkZW5uIGRlbiBLcmluZ2VsIGRhPwoobmVpbiwKIG5pY2h0CiBibG9uZCkKClR1dG9yOiAgICAgV2VsY2hlbiBLcmluZ2VsPwoKU3R1ZGVudGluOiBuYSBkZXIgZGEgendpc2NoZW4gZGVtIGUgdW5kIGRlbSBmCgogICBBcmdsLCBkYXMgd2FyIGVpbiBPISBJY2ggc2FjaHMgamEsIEJXTGVyaW5uZW4uCgogICAgICAgICAgICAgUm90aG9ybiBDYXJhZGhyYXMgLSBncmFkIHZlcnp3ZWlmZWxuZAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2guLi4gKFNseWZveCwgMjguIEphbiAxOTk3LCAxMTo0NTozMik6CiAgRGVyIEFyY2hpdGVrdCBncmVpZnQgQ2FuY29yIG1pdCB6dXNhbW1lbmdlcm9sbHRlbiBCYXVwbGFlbmVuIGFuLgogIENhbmNvciB3ZWhydCBlaW5lcyBBcmNoaXRla3RlbiBBbmdyaWZmIG1pdCBlaW5lbSBUZWlzb2t1LW1hd2FzaGktdWtlIGFiLgogIERlciBBcmNoaXRla3QgdmVyZmVobHQgQ2FuY29yLgogIENhbmNvciBncmVpZnQgQ2FuY29yIG1pdCBlaW5lbSBzZWhyIGdlbHVuZ2VuZW4gU290by1zaHV0by11Y2hpIGFuLgogIENhbmNvciB3ZWhydCBDYW5jb3JzIEFuZ3JpZmYgbWl0IGVpbmVtIE90b3NoaS10ZWlzaG8tdWtlIGFiLgogIENhbmNvciBzY2hsYWVndCBDYW5jb3IgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KICBDYW5jb3IgZ3JlaWZ0IENhbmNvciBtaXQgZWluZW0gc2VociBnZWx1bmdlbmVuIFNvdG8tc2h1dG8tdWNoaSBhbi4KICBDYW5jb3Igd2VocnQgQ2FuY29ycyBBbmdyaWZmIG1pdCBlaW5lbSBUZWlzb2t1LW1hd2FzaGktdWtlIGFiLgogIENhbmNvciBzY2hsYWVndCBDYW5jb3IgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KICBEZXIgQXJjaGl0ZWt0IGdyZWlmdCBDYW5jb3IgbWl0IHp1c2FtbWVuZ2Vyb2xsdGVuIEJhdXBsYWVuZW4gYW4uCiAgRGVyIEFyY2hpdGVrdCB2ZXJmZWhsdCBDYW5jb3IuCiAgQ2FuY29yIGdyZWlmdCBDYW5jb3IgbWl0IGVpbmVtIHNlaHIgZ2VsdW5nZW5lbiBTb3RvLXNodXRvLXVjaGkgYW4uCiAgQ2FuY29yIHdlaHJ0IENhbmNvcnMgQW5ncmlmZiBtaXQgZWluZW0gS2VuLWp1amktdWtlIGFiLgogIENhbmNvciB0cmlmZnQgQ2FuY29yIHNlaHIgaGFydC4KRHUgaGFzdCBqZXR6dCAxNzUgTGViZW5zcHVua3RlIHVuZCAzMSBNYWdpZXB1bmt0ZS4KICBEZXIgQXJjaGl0ZWt0IGdyZWlmdCBDYW5jb3IgbWl0IHp1c2FtbWVuZ2Vyb2xsdGVuIEJhdXBsYWVuZW4gYW4uCiAgRGVyIEFyY2hpdGVrdCB2ZXJmZWhsdCBDYW5jb3IuCiAgQ2FuY29yIGdyZWlmdCBDYW5jb3IgbWl0IGVpbmVtIHNlaHIgZ2VsdW5nZW5lbiBTb3RvLXNodXRvLXVjaGkgYW4uCiAgQ2FuY29yIHdlaHJ0IENhbmNvcnMgQW5ncmlmZiBtaXQgZWluZW0gVWNoaS1hc2hpYm8ta2FrZS11a2UgYWIuCiAgQ2FuY29yIHRyaWZmdCBDYW5jb3Igc2VociBoYXJ0LgpDYW5jb3IgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgQ2FuY29yIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogdW50ZXJiZXd1c3N0c2VpbiAoR3JpbW1ib3JuLCAyOC4gSmFuIDE5OTcsIDEzOjI0OjA5KToKfiMhIHJuPUZ5dCBydD04NTQzOTIwMDUgcmc9c2NobWFycm4KfiMhIHRpZD04NTQwNjkxMTgKTGFzcyBtaWNoIGVya2xhZXJlbjogV2FzIGljaCBzYWdlbiB3b2xsdGUgd2FyLCBkYXNzIGljaCBuaWNodCBsZWRpZ2xpY2gKU2NocnVtcGZpIHN1ZXNzIGZpbmRlLCBzb25kZXJuIGRhc3Mgc2llIHNjaGxpY2h0LCBlaW5mYWNoIHVuZCBvYmpla3RpdiBzdWVzcwppc3QuIFVuYWJoYWVuZ2lnIHZvbiBkZW0sIHdhcyBpY2ggcGVyc29lbmxpY2ggZmluZGUuClVuZCBTY2hydW1wZmkgZ2Vob2VydCBudW5tYWwgZ2FueiBrbGFyIHp1IGRlbSBBbGxlcnN1ZXNzZXN0ZW4sIHdhcyBtYW4gaGllciBpbQptZyBmaW5kZW4ga2Fubi4gSmF3b2hsLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IGlzdCBlaW4gZ3Jvc3NlciBGYW4gZGVyIHN1ZXNzZW4gU2NocnVtcGZpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWwgd2llZGVyIERBVSAoU251Z2dsZSwgMjguIEphbiAxOTk3LCAxNDoxOToyNCk6CkdlcmFkZSBpbiBkZXIgQkVyYXR1bmc6CgpEQVU6IEd1dGVuIFRhZywgaWNoIGhhYmUgbGV0emUgV29jaGUgaGllciBkaWUgTW9kZW1zb2Z0d2FyZSBhYmdlaG9sdCwgYWJlcgppY2gga2FubiBtaWNoIG5pY2h0IGVpbmxvZ2dlbi4KCkJFUkFURVI6IFdvIGdlbmF1IGxpZWd0IGRlbm4gZGFzIFByb2JsZW0/CgpEQVU6IEljaCB3ZWlzcyBuaWNodCBnZW5hdS4gSWNoIGtyaWVnZSBoYWx0IGltbWVyIGVpbmUgTWVsZHVuZywgZGFzcyBpY2ggCm1pY2ggbmljaHQgZWlubG9nZ2VuIGthbm4uCgpCRVJBVEVSOiBBbiB3ZWxjaGVyIFN0ZWxsZSwgaW4gd2VsY2hlbSBQcm9ncmFtbS4gV2llIGdlbmF1IGxhdXRldCBkaWUKRmVobGVybWVsZHVuZz8KCkRBVTogRGFzIGhhZXR0ZSBpY2ggbWlyIHdhaHJzY2hlaW5saWNoIGJlc3NlciBhdWZzY2hyZWliZW4gc29sbGVuLCBvZGVyPwoKQkVSQVRFUjogKGRlbmt0OiBoYWV0dGVzdCBEdSB3b2hsIGJlc3NlciAqZ2VuZXJ2dCBzZWkqKSBKYSwgZGFzIHd1ZXJkZSBkaWUKRGlhZ25vc2UgZXJoZWJsaWNoIHZlcmVpbmZhY2hlbi4KCkRBVTogVGphLCB3YXMga2FubiBpY2ggZGVubiBkYSB0dW4/CgpCRVJBVEVSOiBXYXMgaGFzdCBEdSBkZW5uIHVlYmVyaGF1cHQgZnVlciBlaW4gQmV0cmllYnNzeXN0ZW0/CgpEQVU6IEljaCB3ZWlzcyBuaWNodCAtIGRhcyB3YXMgaGFsdCBpbSBKdXJpZGljdW0gYXVmIGRlbiBSZWNobmVybiBpc3QuCgpCRVJBVEVSOiBJY2ggd2Vpc3MgbGVpZGVyIG5pY2h0LCB3YXMgZGEgZnVlciBlaW4gQmV0cmllYnNzeXN0ZW0gaXN0LgoKREFVOiBEYXMgd2lyZCBkb2NoIGRhcyBzZWxiZSBzZWluLCB3aWUgaGllciB1bnRlcm4sIG9kZXI/CgpCRVJBVEVSOiBFaGVyIG5pY2h0LCBkaWUgUmVjaG5lciBoaWVyIHNpbmQgZGlyZWt0IHZlcm5ldHp0LgoKREFVOiBEYW5uIGtvbW1lIGljaCB3b2hsIG5vY2htYWwgd2llZGVyLgoKQkVSQVRFUjogKG5pY2t0KQoKClNudWdnbGUgLSBkZW5rdCBvTyhKdXJpc3RlbiEgb2RlciBkb2NoIGVoZXIgV2VpYmVyIT8gKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hbCB3aWVkZXIgREFVIChGZXVlcndlaHIsIDI4LiBKYW4gMTk5NywgMTU6NTQ6MjcpOgp+IyEgcm49U251Z2dsZSBydD04NTQ0NTc1NjQgcmc9c2NobWFycm4KfiMhIHRpZD04NTQ0NTc1NjQKSGEhCgpOaWNodCBudXIgSnVyaXN0ZW4hIEVzIGdpYnQgZGEgdmllbCBTY2hsaW1tZXJlISEKCiAgIFdJUlRTQ0hBRlRTV0lTU0VOU0NIQUZUTEVSISEhIQoKICBGZXVlcndlaHIgKGVudHdpY2tlbHQgc2ljaCB3ZWdlbiBzZWluZXMgTmViZW5mYWNocyB6dW0gTU9OU1RFUiEpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hbCB3aWVkZXIgREFVIChNZXRoZWRyYXMsIDI4LiBKYW4gMTk5NywgMTY6MjY6MjEpOgp+IyEgcm49RmV1ZXJ3ZWhyIHJ0PTg1NDQ2MzI2NyByZz1zY2htYXJybgp+IyEgdGlkPTg1NDQ1NzU2NApVbmQgemVobiBNaW51dGVuIG5hY2ggbWVpbmVtIGxldHp0ZW4gQXJ0aWtlbDoKClR1dG9yOiAgICBXZW5uIGlociBqZXR6dCBvcmFfbGQgZWluZ2VidCwgcmVzZXJ2aWVydCBpaHIgZnVlciBPcmFjbGUKICAgICAgICAgICBkZW4gbm9ldGlnZW4gU3BlaWNoZXJwbGF0ei4KClN0dWRlbnQgKGJsb25kLCBtYWVubmxpY2gsIEJXTCAzdGVzIFNlbWVzdGVyLCAyIE1pbnV0ZW4gc3BhZXRlcik6CiAgICAgICAgVmVyZGFtbXQsIGVzIGZ1bmt0aW9uaWVydCBuaWNodCwgd2llIHNjaHJlaWJ0IG1hbiBkZW5uCiAgICAgICAgdW5kZXJzY29yZT8KCldpZSBkdSByaWNodGlnIHNhZ3Rlc3QsIEZldWVyd2VocjogV0lSVFNDSEFGVFNXSVNTRU5TQ0hBRlRMRVIhCgogICAgICAgICAgIFJvdGhvcm4gQ2FyYWRocmFzIC0gQldMZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMjguIEphbiAxOTk3LCAxNzozMTowMCk6CiJNYW4ga2FubiBhbmRlcmVuIG5pY2h0IHdlaHR1biwgb2huZSBzaWNoIGRhYmVpIHNlbGJlciB6dSBzY2hhZGVuLiIgKEFub255bSkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IHVudGVyYmV3dXNzdHNlaW4gKFJhZmZpLCAyOC4gSmFuIDE5OTcsIDIxOjU1OjU3KToKfiMhIHJuPVNjaHJ1bXBmaSBydD04NTQzOTI2OTIgcmc9c2NobWFycm4KfiMhIHRpZD04NTQwNjkxMTgKU2NocnVtcGZpLCBEdSBrYW5uc3QgZGFzIGRvY2ggZ2FybmljaHQgYmV1cnRlaWxlbi4KCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNYWwgd2llZGVyIERBVSAoS3JldGVrLCAyOS4gSmFuIDE5OTcsIDAxOjIwOjQ5KToKfiMhIHJuPU1ldGhlZHJhcyBydD04NTQ0NjUxODEgcmc9c2NobWFycm4KfiMhIHRpZD04NTQ0NTc1NjQKKipsYWNoKiogQWxzbywgTGV1dGUsIHdlbm4gSWhyIG5vY2ggbWVociBzbyBTdG9yaWVzIGJyaW5ndCwgZGFubiBmYW5nZQppY2ggZXJuc3RoYWZ0IG5vY2ggYW4sIG1pY2ggd2VnZW4gbWVpbmVzIERvcHBlbC1OZWJlbmZhY2hzIHp1IHNjaGFlbWVuLAp1bmQgZGFzIHdvbGxlbiB3aXIgamEgd29obCBuaWNodCwgb2Rlcj8gOi0pCldpcnRzY2hhZnRzd2lzc2Vuc2NoYWZ0ZW4gc3R1ZGllcmVuZCB1bmQgdHJvdHpkZW0gbWl0IENvbXB1dGVybgp1bWdlaGVuIGtvZW5uZW5kLAoKCiAgICAgICB8IC8gIHxcICB8LS0gIC0tLSAgfC0tICB8IC8KICAgICAgIHw8ICAgfC8gIHwtICAgIHwgICB8LSAgIHw8CiAgICAgICB8IFwgIHxcICB8LS0gICB8ICAgfC0tICB8IFwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1hbCB3aWVkZXIgREFVIChRaXRlc3MsIDI5LiBKYW4gMTk5NywgMTI6MzA6MTcpOgp+IyEgcm49S3JldGVrIHJ0PTg1NDQ5NzI0OSByZz1zY2htYXJybgp+IyEgdGlkPTg1NDQ1NzU2NAppY2ggc3R1ZGllcmUgYXJjaGl0ZWt0dXIgdW5kIG11ZGRlIGF1Y2guCgpidHc6IHdhcyBpc3QgZWluIFNVUEVSLURBVSA/CgphbnR3b3J0IDogUUkqKiAgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3aWUgd2FzIHdvID8gKEl2bywgMjkuIEphbiAxOTk3LCAxNDozMzowNCk6CkRpZSBGZWVuc3RyYXNzZS4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuIHVuZCB3ZXN0ZW4uCkVpbiBtYWdpc2NoZXMgUG9ydGFsLgo+IEdvb25pZSB0cml0dCBhdXMgRGVpbmVtIGR1bmtsZW4gU2NoYXR0ZW4gaGVydm9yLgpFaW4gV2Fzc2VydW53ZXNlbiBrb21tdCBhbi4KR29vbmllIGhhdXQgZWluZmFjaCBuYWNoIE9zdGVuIGFiLgpEYXMgV2Fzc2VydW53ZXNlbiBnZWh0LgoKCkh1cHMsIHdpZSBkZW5uIGRhcyAodW5kIHdvID8pCgoKSXZvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2llIHdhcyB3byA/IChQcmVkYXRvciwgMjkuIEphbiAxOTk3LCAxNDozNTowOSk6Cn4jISBybj1Jdm8gcnQ9ODU0NTQ0Nzg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0NTQ0Nzg0Cm5ldHRlIHNhY2hlIGRhcywgbmFqYSwgemFyZG96IHNhZyBpY2ggYmxvc3MgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2llIHdhcyB3byA/IChTaWRvbGluLCAyOS4gSmFuIDE5OTcsIDE0OjM1OjUzKToKfiMhIHJuPUl2byBydD04NTQ1NDQ3ODQgcmc9c2NobWFycm4KfiMhIHRpZD04NTQ1NDQ3ODQKSGFlaD8KTmEgdW5kPwpTaWRvbGluLiBTaWVodCBkZW4gR2FnIG5pY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFnb2JlcnQ/IChDaGFsaW5lLCAzMC4gSmFuIDE5OTcsIDExOjEyOjAxKToKSG0sLCBoaWVyIHNjaGVpbnQgamVtYW5kIHBhbmlzY2hlIEFuZ3N0IHZvciBkZW0gR2VsZGF1c2dlYmVuIHp1IGhhYmVuOiA6LSkKRHUgc2Fnc3Q6IGVpbmUga2xlaW5lIHNwZW5kZT8KRHUgc2NodWV0dGVsc3QgbWl0IGRlciBTcGVuZGVuYnVlY2hzZS4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEZyZWRlcmljay4KCktlaW4gS29tbWVudGFyIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIERpY2tlbiBLaW5kZXIgdm9uIFBhc3NhdSAoQXNtb2RpcywgMzAuIEphbiAxOTk3LCAxNTozMDo0Myk6CkZvbGdlIDE6ICdTIEtyZXRlayBoYXQgQW5nc3Qgdm9yIEtsYXVzdXJlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZvcnR1bmVzIChHcmltbWJvcm4sIDMwLiBKYW4gMTk5NywgMTU6MzQ6NDYpOgpOYWNoZGVtIGljaCB1bnNlcmVuIGFkbWluIGRhdm9uIHVlYmVyemV1Z3QgaGFiZSwgZGllIGZvcnR1bmVzIHp1IGluc3RhbGxpZXJlbgprb210IGVzIGdlbGVnZW50bGljaCB6dSBlaW5lbSBsZWlzZW4gc2NobXVuemVsbiBhbSBCaWxkc2NoaXJtLiBBY2ggamEsIHVuZApnZWFyYmVpdGV0IHdpcmQgbmF0dWVybGljaCBsYW5nc2FtZXIuLi4gOy0pCgpUaGVyZSdzIGEgd2hvbGUgV09STEQgaW4gYSBtdWQgcHVkZGxlIQogICAgICAgICAgICAgICAgLS0gRG91ZyBDbGlmZm9yZAoKSmF1LCByZWNodCBoYXQgZXIhCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBTcGFnaGV0dGkgc2NocmVja2VuIERpY2ggbWl0IGthbHRlbSBXYXNzZXIgYWIuIChUcmVrYW4sIDMwLiBKYW4gMTk5NywgMjA6MTM6MjkpOgpEdSBzdGVja3N0IGRhcyBCbHV0c2F1Z2VyLVNjaHdlcnQgenVydWVjay4KPiBEdSB3aXJmc3QgZWluZW4gRmV1ZXJiYWxsIG5hY2ggZGVyIFNwYWdoZXR0aS4KICBEdSB6ZXJzY2htZXR0ZXJzdCBkaWUgU3BhZ2hldHRpIGluIGtsZWluZSBTdHVlY2tjaGVuLgpEaWUgU3BhZ2hldHRpIHZlcnJlY2tlbi4KCk1laW4gZ290dCAuLiB3ZXIga29tbXQgYXVmIHNvbGNoZSBJZGVlbiA/ClRyZWthbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCBEYXMgS2FlbXBmZXJsaWVkISAoVGhlcmluLCAzMC4gSmFuIDE5OTcsIDIxOjUzOjAyKToKQXVmIG1laHJmYWNoZW4gKG5lIEx1ZywgZHUgd2Fyc3QgbmljaHQgYWxsZWluIDopICkgbWVpbmUgT2RlIGFuIGRpZSBLYWVtcGZlci4KClplaG4ga2xlaW5lIEtyaWVnZXJsZWluIGRpZSBzY2hsaWVmZW4gaW4gZGVyIFNjaGV1bgpkZW4gZWluZW4gaGF0IGRpZSBNYWdkIGJlaGFsdGVuIGRhIHdhcmVucyBudXIgbm9jaCBuZXVuLgoKTmV1biBrbGVpbmUgS3JpZWdlcmxlaW4gd29sbHRlbiBkcmF1ZmhpbiB6dXIgU2NobGFjaHQKRWluZXIgaGF0IGpldHp0IGVpbiBTY2h3ZXJ0IGltIEJhdWNoIGRhIHdhcmVucyBudXIgbm9jaCBhY2h0LgoKQWNodCBrbGVpbmUgS3JpZWdlcmxlaW4gZGllIHd1cmRlbiBkYW5uIHZlcnRyaWViZW4KZWluZXIgZGF2b24gc3RhcmIgYXVmIGRlciBGbHVjaHQgZGEgd2FyZW5zIG51ciBub2NoIHNpZWJlbi4KClNpZWJlbiBrbGVpbmUgS3JpZWdlcmxlaW4gdHJhbmtlbiBhdXMgRnJ1c3QgYXVmIGV4CmRlbiBlaW5lbiBoYXRzIGdsYXR0IHVtZ2VoYXVuIGRhIHdhcmVucyBudXIgbm9jaCBzZWNocy4KClNlY2hzIGtsZWluZSBLcmllZ2VybGVpbiB2ZXJzY2h3YW5kZW4gaW4gZGllIFN1ZW1wZgpFaW5lciBpc3QgaW4gZWluIExvY2ggZ2VmYWxsbiBkYSB3YXJlbnMgbnVyIG5vY2ggZnVlbmYuCgpGdWVuZiBrbGVpbmUgS3JpZWdlcmxlaW4gd2FybiB6aWVtbGljaCBkZXByaW1pZXJ0CkRydW0gaGF0IHNpY2ggZWluZXIgdW1nZWJyYWNodCBkYSB3YXJuIHNpZSBub2NoIHp1IHZpZXJ0LgoKVmllciBrbGVpbmUgS3JpZWdlcmxlaW4gZGllIGZ1ZWhsdGVuIHNpY2ggamV0enQgZnJlaQpEYW5uIGthbSBlaW4gS29wZmdlbGRqYWVnZXIgdW5kZXMgd2FyZW4gbnVyIG5vY2ggZHJlaS4KCkRyZWkga2xlaW5lIEtyaWVnZXJsZWluIGRpZSBzdGFuZGVuIGRhbm4gYW0gS2FpCkRlbiBlaW5lbiBoYW0gc2llIGFuZ2V3b3JiZW4gZGEgd2FybiBlcyBudXIgbm9jaCB6d2VpLgoKWndlaSBrbGVpbmUgS3JpZWdlcmxlaW4gd29sbHRlbiBkYW5uIG1hZWRjaGVuIGZyZWluCmRlciBlaW5lIGZhbmQgc2ljaCBpbSBTdHJhc3NlbmdyYWJlbiB1bmQgd2FyZCBmb3J0YW4gYWxsZWluLgoKRWluIGtsZWluZXMgS3JpZWdlcmxlaW4gd29sbHQgbnVuIGRpZSBXZWx0IGVya3VuZGVuCkVyIGthbSBiaXMgYW4gZGFzIG5hZWNoc3RlIEVjayB1bmQgd2FyZCBzZWl0ZGVtIHZlcnNjaHd1bmRlbi4KClN1cmF2eWUgbmludG8gbWFuc2hpbWEgdGFpc2hpdGUsICAgICAgICxcPS8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9vX19fQCAgfApUaGVyaW4gTGV3cyBUZWxhbW9uICAgICAgICAgICAgICB7LCwsX19fKSBcICAgL1wgIC9cCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgYGAgICAoXyBcL14gKC9eXCgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF8gICBcL15cICAgKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoXyBcICBcIF8gICAoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF8oIHwgIHx8IFwvXCggIC9cIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9fKCAoICApfCAgICAgIDwgID4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyhfX18oL2BgICBcICAgICAgfHwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX19fKCAoX19fKCAgICAgIClfX19fLyB8IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFydGlrZWwgRGFzIEthZW1wZmVybGllZCEgKE1ldGhlZHJhcywgMzAuIEphbiAxOTk3LCAyMzoyNjowMik6Cn4jISBybj1UaGVyaW4gcnQ9ODU0NjU3NTgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0NjU3NTgyCkFsc28gd2VubiBlciBiaXMgYW4gZGFzIG5hZWNoc3RlIEVja2Uga2FtIHVuZCBkYW5uIHZlcnNjaHdhbmQsCnNvIHZlcnNjaHdhbmQgZXIgZG9jaCB2b20gRWNrLCBhbHNvIHdhciBkYW5hY2ggbmljaHQgbWVociBkb3J0LgpBbHNvIGthbSBlciBkb2NoIHdlaXRlciBhbHMgYmlzIHp1ciBFY2tlLiBPZGVyIHZlcnNjaHdhbmQgZXIKc28sIGRhc3MgZXIgbmFjaGhlciB1bnNpY2h0YmFyIHdhciB1bmQgdHJvdHpkZW0gd2VpdGVyIGFuCmRpZXNlciBTdGVsbGUgYmxpZWIgYmlzIGpldHp0PyBPZGVyIGthbSBlciBzb2dhciB1bnNpY2h0YmFyCndpZWRlciB6dXJ1ZWNrIGRpZXNlbGJlIFN0cmVja2UsIGRpZSBlciBoaW5naW5nPyBEZW5uIGRhbm4gCmthbSBlciBqYSBuaWNodCB3ZWl0ZXIgaW0gU2lubmUgdm9uICdOZXVlcyBlbnRkZWNrZW4gZnVlciBzaWNoJy4KQWJlciBkYSBlciBqYSBlaWdlbnRsaWNoIHRyb3R6ZGVtIHdlaXRlcmthbSwgYWxzIGVyIHdpZWRlcgp6dXJ1ZWNra2FtLCBrYW0gZXIgZWlnZW50bGljaCB3ZWl0ZXIuIE9id29obCBlcyBkb2NoIGVpbmUKRnJhZ2UgZGVyIERlZmluaXRpb24gaXN0Li4uCldlciBoaWxmdCBtaXIgYmVpIG1laW5lbiBQcm9ibGVtZW4gd2VpdGVyPwpEYXMgaXN0IGphIHNjaGxpbW1lciBhbHMgZGFzIFByb2JsZW0gZGVyIEtvc3Rlbm1pbmltaWVydW5nIGVudGxhbmcKZGVtIE1pbmltYWxwZmFkIGJlaSBHdXRlbmJlcmctVGVjaG5vbG9naWVuIGluIGRlciBQcm9kdWt0aW9ucy0KdW5kIEtvc3RlbnRoZW9yaWUhCgogICAgICBSb3Rob3JuIENhcmFkaHJhcyAtIGFlZWVlZWV1dXVzemVyc3QgdmVyd2lycnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJlcmdzdGVyYmVuIChBc21vZGlzLCAzMC4gSmFuIDE5OTcsIDIzOjQ2OjMxKToKW1RvZDpMYXJzXSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgQ2FyYWRocmFzIHVtZ2VicmFjaHQuIDwyMzo0MjoyND4KW1RvZDpFaW4gSHlkcmFrb3BmXSBoc3Nzc3NzIDwyMzo0MjoyND4KW1RvZDpMYXJzXSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgQ2VsZWJkaWwgdW1nZWJyYWNodC4gPDIzOjQyOjM0PgpbVG9kOkVpbiBIeWRyYWtvcGZdIGhzc3Nzc3MgPDIzOjQyOjM0PgouLi4KW1RvZDpMYXJzXSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgTWluZG9sbHVpbiB1bWdlYnJhY2h0LiA8MjM6NDU6MTM+CltUb2Q6RWluIEh5ZHJha29wZl0gaHNzc3NzcyA8MjM6NDU6MTM+CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJlcmdzdGVyYmVuIChDYXJhZGhyYXMsIDMwLiBKYW4gMTk5NywgMjM6NTI6MDYpOgp+IyEgcm49QXNtb2RpcyBydD04NTQ2NjQzOTEgcmc9c2NobWFycm4KfiMhIHRpZD04NTQ2NjQzOTEKRWJlbiBzdGFya2UgRXJvc2lvbmVuIG1vbWVudGFuLCBFcmRzY2hvbGxlbmJld2VndW5nZW4gaW4gZ3Jvc3NlbQpVbWZhbmcuICpzZXVmeioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoUmluZ29yLCAzMS4gSmFuIDE5OTcsIDAwOjA5OjI5KToKW0FsbGdlbWVpbjpUYWtvcl0gYmVpIGRlbSBsYWcgaXN0IHdlZ2hpZXIta2lsbGVuIHNpbm5sb3MgOiggPDAwOjA2OjE0PgpbVG9kOkxhcnNdIEVpbiBXZWdoaWVyIGhhdCBnZXJhZGUgVGFrb3IgdW1nZWJyYWNodC4gPDAwOjA2OjU5PgpbVG9kOkVpbiBXZWdoaWVyXSBHb3RjaGEhIDwwMDowNjo1OT4KCjxvaG5lIFdvcnRlPgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzIG1hbiBtaXQgUmluZ2VuIHNvIG1hY2hlbiBrYW5uIC4uLiAoQXNtb2RpcywgMzEuIEphbiAxOTk3LCAwMToyMToxNyk6CgpbQWxsZ2VtZWluOkFzaG5vZF0gd2llIGthbm4gaWNoIGVpbmVuIHJpbmcgYW56aWVoZW4gPDAxOjEyOjA4PgpbQWxsZ2VtZWluOktudWRkZWxNYXVzXSB6aWVoZSByaW5nIGFuPz8/IDwwMToxMjoyMD4KW0FsbGdlbWVpbjpBc21vZGlzXSBraXR6bGUgcmluZyA8MDE6MTI6MjQ+CltBbGxnZW1laW46VGhlcmluXSB1bWFybWUgcmluZyA8MDE6MTI6MzA+CltBbGxnZW1laW46R2VuZXN5c10gc3RlY2tlIHJpbmcgZHVyY2ggbmFzZSA8MDE6MTI6MzY+CltBbGxnZW1laW46QWNyaW1vbl0gc2NobGVwcGUgcmluZyA8MDE6MTI6Mzg+CltBbGxnZW1laW46VGhlcmluXSBzdGVja2UgcmluZyBpbiBwYWtldD8gPDAxOjEyOjU5PgpbQWxsZ2VtZWluOlBldGVib25lXSBuaW1tIGtudWRkZWxtYXVzIG5pY2h0IGVybnN0IC4uLiB3YWVyIGphIGxvZ2lzY2ggLi4uCltBbGxnZW1laW46UGV0ZWJvbmVdIDwwMToxMzoxMj4KW0FsbGdlbWVpbjpHZW5lc3lzXSBsZWdlIHJpbmcgdW0gaGFscywgYmluZGUgc2VpbCBhbiByaW5nLCBiaW5kZSBzZWlsIGFuCltBbGxnZW1laW46R2VuZXN5c10gc3RlaW4sIGdlaGUgZmx1c3MsIHdlcmZlIHN0ZWluIGluIHdhc3Nlci4uLiA8MDE6MTM6MTQ+CltBbGxnZW1laW46QXNobm9kXSBmdW5rdGlvbmllcnQgYWxsZXMgbmljaHQgPDAxOjEzOjE4PgpbQWxsZ2VtZWluOkFjcmltb25dIGlzcyByaW5nIDwwMToxMzoxOD4KW0FsbGdlbWVpbjpBc21vZGlzXSBnaWIgcmluZyBhbiA8ZWluX3NwaWVsZXJfZGVpbmVyX3dhaGw+IDwwMToxMzo0NT4KW0FsbGdlbWVpbjpUaGVyaW5dIGdlbmVzeXMuIGR1IHdpcnN0IHJlY2h0IGhhYmVuLiBzY2hlaW50IG1pciBkYXMgbG9naXNjaHN0ZQpbQWxsZ2VtZWluOkFjcmltb25dIHN0ZWlnZSBpbiByaW5nIDwwMToxMzo1MD4KW0FsbGdlbWVpbjpLaG9yYWtdIHNhZ2U6IFJpbmcsIGJlcmluZ2UgbWljaCAhIG9kZXIgc28gIDstKSA8MDE6MTQ6MDE+CltBbGxnZW1laW46QXNtb2Rpc10gdmVya2F1ZmUgcmluZyA8MDE6MTQ6Mjg+CltBbGxnZW1laW46VGhlcmluXSBCZXNzZXI6IGdpYiBfbWl0cmlsX3JpbmcgYW4gPHNwaWVsZXIgZGVpbmVyIHdhaGw+CltBbGxnZW1laW46VGhlcmluXSA8MDE6MTQ6MzQ+CltBbGxnZW1laW46QWNyaW1vbl0gd3VlbnNjaGUgcmluZyB1bSBmaW5nZXIgPDAxOjE0OjM2PgpbQWxsZ2VtZWluOkFzbW9kaXNdIGJpbmRlIHJpbmcgYW4gZmluZ2VyIDwwMToxNDo0OT4KW0FsbGdlbWVpbjpQZXRlYm9uZV0gc2FnOiBsb3MgcmluZ2UgbWl0IG1pciAhIDwwMToxNDo1Mz4KW0FsbGdlbWVpbjpBY3JpbW9uXSB3dWVuc2NoZSBmaW5nZXIgaW4gcmluZyA8MDE6MTQ6NTU+CltBbGxnZW1laW46QXNtb2Rpc10gbG9nZ3QgamVtYW5kIG1pdCB1bmQgcG9zdGV0IGRhcyBpbiBzY2htYXJybiA/IDopCltBbGxnZW1laW46QXNtb2Rpc10gPDAxOjE1OjA5PgpbQWxsZ2VtZWluOlBldGVib25lXSB6ZWlnZSByaW5nIG1pdHRlbGZpbmdlciA8MDE6MTY6MDM+CltBbGxnZW1laW46QXNtb2RpbmFdIGhhY2tlIGZpbmdlciBhYiwgc3RlY2tlIGZpbmdlciBpbiByaW5nIDwwMToxNjozMT4KW0FsbGdlbWVpbjpLbnVkZGVsTWF1c10gdW5kIGRhcyB2b24gZWluZXIgZnJhdT8hPyA8MDE6MTY6NDQ+CltBbGxnZW1laW46QWNyaW1vbl0gYmVyaW5nZSBkaWNoIDwwMToxNjo1MD4KW0FsbGdlbWVpbjpLbnVkZGVsTWF1cyBpc3QgZW50c2V0enQgPDAxOjE2OjUyPl0KW0FsbGdlbWVpbjpBc21vZGluYSBpc3QgYnJ1dGFsIHVuZCB2ZXJzb2ZmZW4gPDAxOjE2OjU0Pl0KW0FsbGdlbWVpbjpUaGVyaW5dIHJpbmdlbCBzb2Vja2NoZW4gPDAxOjE3OjE0PgpbQWxsZ2VtZWluOkFzbW9kaW5hXSBhdXNzZXJkZW0gaGFiIGljaCBlcmZhaHJ1bmcgZGFyaW4sIHdpbGxzdGUgbmUgaGFuZCB2b24KW0FsbGdlbWVpbjpBc21vZGluYV0gbWlyID8gOikgPDAxOjE3OjE4PgpbQWxsZ2VtZWluOlRoZXJpbl0gWmF1YmVyZXIga29tbWVuIG1pdCBkcmVpIGhhZW5kZW4gYXVzLiBrYWVtcGZlciBtdWVzc2VuCltBbGxnZW1laW46VGhlcmluXSBpbW1lciBnbGVpY2ggdWViZXJ0cmVpYmVuLi4uIDwwMToxNzo1Mz4KLi4uCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhlaGUgKEFzbW9kaXMsIDMxLiBKYW4gMTk5NywgMDI6NDE6MDIpOgpbQWxsZ2VtZWluOk1hcml0YV0gbmVpbiBkYXNzIGljaCBkYXMgbm9jaCBlcmxlYmVuIGRhcmY6IG5hY2ggNCBzdHVuZGVuIGVuZGxpY2gKW0FsbGdlbWVpbjpNYXJpdGFdIG5uYWR3Cgp6dSBmcnVlaCBnZWZyZXV0IC4uLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIEJhbmFuZW4gdm9uIFRvcnR1Z2EgKFNjaGxpcHMsICAxLiBGZWIgMTk5NywgMDI6Mjk6MjkpOgp1bnQgYmFuYW5lCkVpbmUgZ3Jvc3NlLCB2ZXJmYXVsdGUgQmFuYW5lIGF1cyBkZW0gVXJ3YWxkIHZvbiBUb3J0dWdhLiBTaWUgc2llaHQgemllbWxpY2gKc2NobGVjaHQgYXVzLCBtaXQgaWhyZXIgYnJhdW5lbiBTY2hhbGUgdW5kIGlocmVtIHZlcmdvcmVuZW4gSW5uZXJlbiB1bmQgRHUKc29sbHRlc3Qgc2llIGxpZWJlciBuaWNodCBlc3Nlbi4KCnVudCBzY2hhbGUKRGllIFNjaGFsZSBpc3QgZ29sZGdlbGIgdW5kIHZlcnNwcmljaHQgZWluZW4gd2lya2xpY2hlbiBHZW51c3MgenUgYmVoZXJiZXJnZW4uCgpTY2hsaXBzIGlzdCBtYWwgd2llZGVyIGhpbi0gdW5kIGhlcmdlcmlzc2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmVyd2FydGV0ZXIgUmVpY2h0dW0uLi4gKEphcXVlbmV0dGEsICAxLiBGZWIgMTk5NywgMDI6Mzk6NTgpOgoKRHUgZmluZGVzdCAyMzI0NTAgTXVlbnplbiwgZGllIER1IGJlaW0gbGV0enRlbiBNYWwgdmVybG9yZW4gaGFzdC4KCipQcnVzdCogOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW5lcndhcnRldGVyIFJlaWNodHVtLi4uIChKYXF1ZW5ldHRhLCAgMS4gRmViIDE5OTcsIDAyOjQxOjI3KToKfiMhIHJuPUphcXVlbmV0dGEgcnQ9ODU0NzYxMTk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0NzYxMTk4CgpBY2ggamEsIGljaCB2ZXJnYXNzIHp1IGVyd2FlaG5lbi4uLi4gZGF2b24gaGFiIGljaCBuaWNodCBlaW5lIGVpbnppZ2UKTXVlbnplIGVyaGFsdGVuLCBiZXR0ZWx0IG1pY2ggbGllYmVyIG5pY2h0IGFuICpzZXVmeiouCgpKYXF1ZW5ldHRhLCBUaWVyZnVlaHJlcmluCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NoaWxka3JvZXRlbj8gV2VnIGhpZXIhIDstKSAoQW5hdG9sLCAgMi4gRmViIDE5OTcsIDAxOjAzOjI5KToKCkRlaW4gRnJldW5kIEtleSB0ZWlsdCBEaXIgbWl0OiBPaCBkb2NoIGRlciBXZWdoaWVyIHNjaHVldHp0IHZvciBTY2hpbGRrcm9ldGVuIQpEZWluIEZyZXVuZCBLZXkgdGVpbHQgRGlyIG1pdDogOikKW1RvZDpMYXJzXSBFaW4gV2VnaGllciBoYXQgZ2VyYWRlIEtleSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBXZWdoaWVyXSBHb3RjaGEhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWRpb3MsIG1hbiBzaWVodCBzaWNoLi4uIG9kZXIgYXVjaCBuaWNodD8gKFdpbmRvd3NudCwgIDIuIEZlYiAxOTk3LCAwMzo0OToyOCk6CgpzZWxic3Rsb2VzY2h1bmcKICAgICBCIEkgUyBUICBEIFUgIEQgSSBSICBXIEkgUiBLIEwgSSBDIEggIFMgSSBDIEggRSBSID8/Pz8/Pz8/Pz8/PwpXZW5uIER1IERpY2ggc2VsYnN0bG9lc2NoZW4gd2lsbHN0LCBpc3QgRGVpbiBDaGFyYWt0ZXIgVU5XSURFUlJVRkxJQ0gKdmVybG9yZW4uIEVzIGdpYnQgS0VJTkUgTW9lZ2xpY2hrZWl0IGlobiB3aWVkZXJ6dWVyc2NoYWZmZW4uIFNvbGx0ZXN0CkR1IG51ciB6ZWl0d2VpbGlnIHZvbSBNb3JnZW5HcmF1ZW4gd2VnYmxlaWJlbiB3b2xsZW4sIHNvIGJlbnV0emUgYml0dGUKZGVuIEJlZmVobCAnc3BpZWxwYXVzZScuCkZhbGxzdCBEdSBEaWNoIGltbWVyIG5vY2ggc2VsYnN0bG9lc2NoZW4gd2lsbHN0LCBnaWIgRGVpbiBQYXNzd29yZCBlaW4uCgpCaXR0ZSBkYXMgUGFzc3dvcmQgYW5nZWJlbjogCgpUb2Qga29tbXQgYXVmIHNlaW5lbSB3ZWlzc2VuIFBmZXJkIGFuZ2VyaXR0ZW4uCkVyIHN0ZWlndCBhYiwgYmF1dCBzaWNoIGRyb2hlbmQgdm9yIERpciBhdWYgdW5kIG11c3RlcnQgRGljaCBzY2hhZGVuZnJvaC4KClRvZCBzYWd0OiBFTkRMSUNIISBOVU4gS0FOTiBESVIgQVVDSCBMQVJTIE5JQ0hUIE1FSFIgSEVMRkVOIQoKVG9kIGhvbHQgd2VpdCBtaXQgc2VpbmVyIFNlbnNlIGF1cy4gTWl0IGdyb3NzZW0gU2Nod3VuZyBsYWVzc3QgZXIgc2llIGF1ZgpEaWNoIHp1c2F1c2VuIHVuZCBkYW5uLi4uCkNsb3NpbmcgZG93bi4KJSBDb25uZWN0aW9uIHRvIE1HIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCi0tLS0gTm8gd29ybGQgLS0tLQoKUE9FSCEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUb2xsZSBSZXNldHplaXRlbiAhIChJdm8sICAyLiBGZWIgMTk5NywgMTM6MzQ6MDEpOgpEZXIgQnVtZXJhbmcgZmxpZWd0IG5hY2ggU3VlZGVuLgpEZXIgQnVtZXJhbmcgZmxpZWd0IG5hY2ggU3VlZGVuLgpEZXIgVm9sbHN0cmVja2VyIHNjaGxhZWd0IG1pdCBncm9lc3N0ZXIgRnJldWRlIGJlc29uZGVycyBrcmFlZnRpZyBhdWYKRGVpbmVuIEdlZ25lciBlaW4sIGFscyBlciBtZXJrdCwgZGFzcyBkaWVzZXIga3VyeiB2b3JtIEVuZGUgc3RlaHQhCiAgRHUgZ3JlaWZzdCBkZW4gRWlzZ2lnYW50ZW4gbWl0IGRlbSBWb2xsc3RyZWNrZXIgYW4uCiAgRHUgemVyc2NobWV0dGVyc3QgZGVuIEVpc2dpZ2FudGVuIGluIGtsZWluZSBTdHVlY2tjaGVuLgpEZXIgRWlzZ2lnYW50IGZhZWxsdCB0b3QgenUgQm9kZW4uCkVpbiBFaXNnaWdhbnQga29tbXQgYW4uCiAgRGVyIEVpc2dpZ2FudCBncmVpZnQgRGljaCBtaXQgZGVtIEVpc3phcGZlbiBhbi4KICBEZXIgRWlzZ2lnYW50IHZlcmZlaGx0IERpY2guCiAgRHUgZ3JlaWZzdCBkZW4gRWlzZ2lnYW50ZW4gbWl0IGRlbSBWb2xsc3RyZWNrZXIgYW4uCiAgRHUgdHJpZmZzdCBkZW4gRWlzZ2lnYW50ZW4gaGFydC4KRGVyIEJ1bWVyYW5nIGZsaWVndCB3aWVkZXIgaGVyZWluLgpEZXIgQnVtZXJhbmcgZmxpZWd0IHdpZWRlciBoZXJlaW4uCgoKYXJnbAoKCkl2bwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyLi4uIDotKSAoU2lkb2xpbiwgIDMuIEZlYiAxOTk3LCAwOTo1ODo1Nik6CgpBcmtzIEV4dHJhbG9vazogOi0pCgpEYXMgaXN0IEFyay4gRXIgaXN0IHppZW1saWNoIHdpbnppZywgd2VubiBhdWNoIG51ciBmdWVyIGVpbmVuIEh5bGFyLgpFaW4gbXVlcnJpc2NoIGRyZWluYmxpY2tlbmRlciBad2VyZyBtdXN0ZXJ0IGRpY2ggdm9uIG9iZW4gYmlzIHVudGVuLgoKTmEgd2VsY2hlIFJhc3NlIGhhdHRlciBkZW4gbnVuLi4uIDotKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFRyb2xsZSA6IGhpZXIgISAoR3JpbW1ib3JuLCAgMy4gRmViIDE5OTcsIDEwOjExOjMxKToKfiMhIG9uPUdyaW1tYm9ybiBvdD04NTQ5NjA2NjYgb2c9dHJlZmZlbgp+IyEgcm49QWNyaW1vbiBydD04NTQ3MTY0NTEgcmc9dHJlZmZlbgp+IyEgdGlkPTg1NDU1NjAwNwpOdXIgZWluIEJlaXNwaWVsOiBFaW4gTmF6aSBwb3N0aWVydCBlaW5lIEJvbWJlIGF1ZiBkYXMgT2t0b2JlcmZlc3Q6IDE4IFRvdGUKKHNvIGluIGRlciBSaWNodHVuZyksIGRpZSBuaWNodHMgZGFtaXQgenUgdHVuIGhhdHRlbi4KRGllIFJBRiBwb3N0aWVydCBlaW5lIEJvbWJlIGFuIGRlbiBTdHJhc3NlbnJhbmQgdW5kIHp1ZW5kZXQgc2llIGluIGRlbSBNb21lbnQsCmFscyBIZXJyaGF1c2VuIHZvcmJlaWZhZWhydC4gQXV0bywgRmFocmVyLCBMZWlid2FlY2h0ZXIgdW5kIEhlcnJoYXVzZW4KYmVzY2hhZWRpZ3QsIGFsbGVzIExldXRlLCBkaWUgdW0gZGFzIFJpc2lrbyB3dXNzdGVuLgoKT2huZSBUZXJyb3IgdW5kIEdld2FsdCB2ZXJ0ZWlkaWdlbiB6dSB3b2xsZW46IEljaCB3ZWlzcyBzY2hvbiwgdm9yIHdlbGNoZXIgQXJ0CmljaCBhbHMgdW5hdWZmYWVsbGlnZXIsIGhhcm1sb3NlciBCdWVyZ2VyIG1laHIgQW5nc3QgaGFiZS4KCkdyaW1tYm9ybiBkZXIgVGVyLi4uIGFlaCwgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogVHJvbGxlIDogaGllciAhIChHcmltbWJvcm4sICAzLiBGZWIgMTk5NywgMTA6MTE6MzUpOgp+IyEgb249U2lkb2xpbiBvdD04NTQ5NjA3Njggb2c9dHJlZmZlbgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg1NDk2MDY2NiByZz10cmVmZmVuCn4jISB0aWQ9ODU0NTU2MDA3Ck5hIG9iIGRhcyBoaWVyIGRpZSByaWNodGlnZSBSdWJyaWsgaXN0LCBHcmltbWJvcm4uLi4gOi0pCk51biBtdXNzdCBEdSBEZWluZW4gQXJ0aWtlbCBhdWNoIHNlbGJlciB2ZXJsZWdlbiwgbWFjaHN0ZSBqYSBhb25zdCBhdWNoIGltbWVyLgo6LSkKCgpTaWRvbGluLiBHbGVpY2hlcyBSZWNodCBmdWVyIGFsbGUuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogVHJvbGxlIDogaGllciAhIChLcmV0ZWssICAzLiBGZWIgMTk5NywgMTE6MjE6NDgpOgp+IyEgb249UGF0cnluIG90PTg1NDk2MTIzNCBvZz10cmVmZmVuCn4jISBybj1HcmltbWJvcm4gcnQ9ODU0OTYwNjY2IHJnPXRyZWZmZW4KfiMhIHRpZD04NTQ1NTYwMDcKd2llIGJpdHRlPyBhdWNoIGRpZSBSQUYgaGF0IGluIGRlciB2ZXJnYW5nZW5oZWl0IHZvZWxsaWcgdW5iZXRlaWxpZ3RlIGxldXRlCm1pdCBpaHJlbiB2b3JwdXBlcnRhZXJlbiBkZW1vbnN0cmF0aW9uc21ldGhvZGVuIHZlcmxldHp0L2dldG9ldGV0LiBlcyBpc3QKaW4gZGllc2VtIGZhbGwsIHdpZSBhY3JpbW9uIHNjaG9uIHNhZ3RlLCB2b2VsbGlnIHd1cnNjaHQsIHdlciBkaWUgYm9tYmUgbGVndCwKZXMgaXN0IGluIGplZGVtIGZhbGwgenUgdmVydXJ0ZWlsZW4gdW5kIGplZGVyIHR1dCBndXQgZGFyYW4sIGluIGJlaWRlbgpqZWRlbSBkaWVzZXIgZmFlbGUgYW5nc3QgenUgaGFiZW46IGRpZSBib21iZSBpbnRlcmVzc2llcnQgZXMgbmFlbWxpY2ggZWluZW4Kc2NoZWlzc2RyZWNrLCB3ZXIgZ3JhZCB6dWZhZWxsaWcgdW5iZXRlaWxpZ3QgZGFuZWJlbnN0ZWh0LgoKLS0tLS0tCnBhdHJ5biBzY2h1ZXR0ZWx0IG51ciBkZW4ga29wZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVHJvbGxlIDogaGllciAhIChLcmV0ZWssICAzLiBGZWIgMTk5NywgMTE6MjI6MDkpOgp+IyEgb249S3JldGVrIG90PTg1NDk2NTI4OCBvZz10cmVmZmVuCn4jISBybj1QYXRyeW4gcnQ9ODU0OTYxMjM0IHJnPXRyZWZmZW4KfiMhIHRpZD04NTQ1NTYwMDcKSWhyIHNlaWQgYWxsZSBkb29mIHVuZCBzdGlua3QhIDotKQoKCiAgICAgICB8IC8gIHxcICB8LS0gIC0tLSAgfC0tICB8IC8KICAgICAgIHw8ICAgfC8gIHwtICAgIHwgICB8LSAgIHw8CiAgICAgICB8IFwgIHxcICB8LS0gICB8ICAgfC0tICB8IFwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoWmFyZG96LCAgMy4gRmViIDE5OTcsIDEzOjI5OjIwKToKW0NoYW9zOkluZWx1a2ldICBmZWlnZXMgZHJlY2tzdW53ZXNlbiAqZ3J1bW1lbCoKW1RvZDpMYXJzXSBFaW4gV2Fzc2VydW53ZXNlbiBoYXQgZ2VyYWRlIEluZWx1a2kgdW1nZWJyYWNodC4KClRqYS4uLiA6KQoKQ2lhbyBaYXJkb3oKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnh0cmEgZnVlciBPZXR0aSA6LSkgKEtyZXRlaywgIDMuIEZlYiAxOTk3LCAxNjoyNTo1MSk6Ck51ciBmdWVyIERpY2gsIE9ldHRpLCBkYW1pdCBEdSBuaWNodCBiZWhhdXB0ZW4ga2FubnN0LCBpbiBkZXIgTVBBIHd1ZXJkZQpzbyB3ZW5pZyBzdGVoZW4gOi0pCgoKCgogICAgICAgfCAvICB8XCAgfC0tICAtLS0gIHwtLSAgfCAvCiAgICAgICB8PCAgIHwvICB8LSAgICB8ICAgfC0gICB8PAogICAgICAgfCBcICB8XCAgfC0tICAgfCAgIHwtLSAgfCBcCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNdWVsbCAoQWNyaW1vbiwgIDMuIEZlYiAxOTk3LCAxNjo0MzoyNik6Cj4gbGFzcyB0aWNrZXQgZmFsbGVuCkRhcyBzY2htZWlzc3QgRHUgZ2VmYWVsbGlnc3QgaW4gZWluZW4gTXVlbGxlaW1lciEKPiBmdWV0dGVyIG11ZWxsc2NobHVja2VyIG1pdCB0aWNrZXQKRGFzIGthbm5zdCBEdSBuaWNodCB3ZWd3ZXJmZW4uCgpBcmdsIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaXJjLi4uIChHcmltbWJvcm4sICAzLiBGZWIgMTk5NywgMTY6NTg6MTYpOgpBdWNoIHdlbm4gZGFzIHdpZWRlciBrYXVtIGplbWFuZCB2ZXJzdGVoZW4ga2FubiwgaGllciBpc3RzIGRhbm4gd29obCBuaWNodCBzbwp2ZXJrZWhydDoKCjxfTWFyY3VzXz4gb2ggbWVpbiBnb3R0Lgo8QXJ0ZT4gV2FzIGlzdCBNYXJjdXM/CgpUamEsIGRhIHdhZ2UgaWNoIGRvY2ggbmljaHRtYWwgaGFlbWlzY2ggenUga29tbWVudGllcmVuIGF1cyBVbnNpY2hlcmhlaXQsIG9iCmRhIG5jaWh0IGRvY2ggd2FzIGRyYW4gc2VpbiBrb2VubnRlLi4uIDstKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBUcm9sbGUgOiBoaWVyICEgKFNjaHJ1bXBmaSwgIDMuIEZlYiAxOTk3LCAxOTo0Mzo0MCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODU0OTYxMDkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0NTU2MDA3CkZhbHNjaCEgSGVycmhhdXNlbiB0b3QsIEZhaHJlciBsZWljaHQgdmVybGV0enQuIHByYWt0aXNjaCBlaW4gZ2VsdW5nZW5lcwpBdHRlbnRhdC4KUy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFRyb2xsZSA6IGhpZXIgISAoRnl0LCAgMy4gRmViIDE5OTcsIDE5OjQ4OjMwKToKfiMhIHJuPUtyZXRlayBydD04NTQ5NjUzMDggcmc9c2NobWFycm4KfiMhIHRpZD04NTQ1NTYwMDcKCkdlbmF1LCB1bmQgaW0gendlaXRlbiBXZWx0a3JpZWcgaHQgZGllIFJBRiBnYW56ZSBTdGFlZHRlIGluIFNjaHV0dCB1bmQKQXNjaGUgZ2VsZWd0LgoKRnl0LCBlbmRsaWNoIG1hbCBkaWUgcmljaHRpZ2UgUnVicmlrIGdldHJvZmZlbiBoYWJlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEcmVpIFJpbmdlLi4uIChBbmF0b2wsICAzLiBGZWIgMTk5NywgMjA6MDM6NTUpOgoKRWluIEZyb3NjaCBxdWFrdDogUXVhYWFrLCBxdWFhYWFhYWssIHF1dXV1YWFhYWFhYWFhYWFhYWFhYWFhYWFrICEhCkVpbiBGcm9zY2ggcXVha3Q6IFF1YWFhaywgcXVhYWFhYWFrLCBxdXV1dWFhYWFhYWFhYWFhYWFhYWFhYWFhayAhIQpFaW4gRnJvc2NoIHF1YWt0OiBRdWFhYWssIHF1YWFhYWFhaywgcXV1dXVhYWFhYWFhYWFhYWFhYWFhYWFhYWsgISEKRWluIEZyb3NjaCBxdWFrdDogUXVhYWFrLCBxdWFhYWFhYWssIHF1dXV1YWFhYWFhYWFhYWFhYWFhYWFhYWFrICEhCkVpbiBGcm9zY2ggcXVha3Q6IFF1YWFhaywgcXVhYWFhYWFrLCBxdXV1dWFhYWFhYWFhYWFhYWFhYWFhYWFhayAhIQpFaW4gRnJvc2NoIHF1YWt0OiBRdWFhYWssIHF1YWFhYWFhaywgcXV1dXVhYWFhYWFhYWFhYWFhYWFhYWFhYWsgISEKRWluIEZyb3NjaCBxdWFrdDogUXVhYWFrLCBxdWFhYWFhYWssIHF1dXV1YWFhYWFhYWFhYWFhYWFhYWFhYWFrICEhCkVpbiBGcm9zY2ggcXVha3Q6IFF1YWFhaywgcXVhYWFhYWFrLCBxdXV1dWFhYWFhYWFhYWFhYWFhYWFhYWFhayAhIQpDZWxlYmRpbCBydWZ0OiBvcHBzLCBzaGl0LCBibG9lZGUgZnJvZXNjaGUKCkVpbiBGcm9zY2ggc2llIHp1IGtuZWNodGVuLCBzaWUgYWxsZSB6dSB0dW5rZW4sCmluIGRlbiBUdWVtcGVsIHp1IHRyZWliZW4sIGtsYWVnbGljaCBlcnRydW5rZW4uLi4KClF1YWsgOy0pCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFRyb2xsZSA6IGhpZXIgISAoSGFkcmEsICAzLiBGZWIgMTk5NywgMjM6MTc6MDQpOgp+IyEgcm49U2NocnVtcGZpIHJ0PTg1NDk5NTQyMCByZz1zY2htYXJybgp+IyEgdGlkPTg1NDU1NjAwNwppaHIgc2VpZCBrcmFuay4gZWhybGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBUcm9sbGUgOiBoaWVyICEgKFNjaHJ1bXBmaSwgIDMuIEZlYiAxOTk3LCAyMzoyMTo0MSk6Cn4jISBybj1IYWRyYSBydD04NTUwMDgyMjQgcmc9c2NobWFycm4KfiMhIHRpZD04NTQ1NTYwMDcKSmEgc2Nob24ga2xhciBhYmVyIHdpZXNvIGltIHNwZXppZWxsZW4/ClMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBUcm9sbGUgOiBoaWVyICEgKEx1ZywgIDQuIEZlYiAxOTk3LCAwMjo0NToyMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODU0OTYxMDkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0NTU2MDA3Ck1vaW4sCgphdWNoIG9obmUgaW4gaXJnZW5kZWluZXJ3ZWlzZSBtaXQgVGVycm9yaXN0ZW4genUgc3ltcGF0aGVzaWVyZW4sIGFiZXIgZGVyCkhlcnJoZWF1c2VubW9yZCBpc3QgdW5nZWtsYWVydC4gRXIgcGFzdCBpbiBlaW5lIFJlaWhlIHZvbiBNb3JkZW4sIGJlaSBkZW5lbgpkdXJjaGF1cyBnZW1hZXNzaWd0emUgV2lydHNjaGFmdHNmdWVocmVyIHVtZ2VsZWd0IHd1cmRlLiBEaWUgRnJhZ2UgaXN0OiBjdWkKYm9ubz8gT2RlciB3aWUgd3VyZGUgQmlnZ2kgQnJldWwgVHJldWhhbmRjaGVmaW4/CgpOdXIgbWFsIHNvIHp1bSBOYWNoZGVua2VuLgoKTHVnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVHJvbGxlIDogaGllciAhIChHcmltbWJvcm4sICA0LiBGZWIgMTk5NywgMDk6NDM6NTApOgp+IyEgcm49THVnIHJ0PTg1NTAyMDcyMiByZz1zY2htYXJybgp+IyEgdGlkPTg1NDU1NjAwNwpUc3RzdHMsIHdhcyBoYWIgaWNoIG51ciB3aWVkZXIgYXVzZ2Vsb2VzdC4uLgpBbGxlcyB3YXMgaWNoIHNhZ2VuIHdvbGx0ZSwgd2FyLCBkYXNzIGljaCBhbHMgZWluZmFjaGVyLCBoYXJtbG9zZXIgQnVlcmdlcgptZWhyIEFuZ3N0IGhhYmVuIHd1ZXJkZSB2b3IgVmVycnVlY2t0ZW4sIGRpZSB3YWhsbG9zIGluIGRpZSBNZW5nZSBzY2hpZXNzZW4KKG9kZXIgZG9ydCBCb21iZW4genVlbmRlbikgYWxzIHZvciBWZXJydWVja3RlbiwgZGllIHNpY2ggZ2V6aWVsdCBPcGZlciBzdWNoZW4KdW5kIGF1ZiBkaWUgbG9zZ2VoZW4gKHNvbGFuZ2UgaWNoIGtlaW4gT3BmZXIgYmluLCBuYXR1ZXJsaWNoKS4gVW5kLCBzb3dlaXQgaWNoCmFscyBOaWNodGV4cGVydGUgd2Vpc3MsIGhhdCBkaWUgUm90ZSBBcm1lZSBGcmFrdGlvbiBlaWdlbnRsaWNoIGltbWVyIGdlemllbHQKZ2VhcmJlaXRldCB1bmQgbmljaHQgd2FobGxvcyBUZXJyb3IgdmVyYnJlaXRldC4gUmVjaHRlciBvZGVyIG5hdGlvbmFsaXN0aXNjaGVyClRlcnJvciBkYWdlZ2VuIGhhdCBkaWVzZSBaaWVsc3RyZWJpZ2tlaXQgbmljaHQuCgpXZW5uIHNjaG9uIEx1ZyB6dW0gTmFjaGRlbmtlbiBhdWZmb3JkZXJ0IGthbm4gaWNoIGRhcyBhdWNoOiBBbHMgcG90ZW50aWVsbGVzCk9wZmVyIGhhZXR0ZSBpY2ggbmF0dWVybGljaCB2b3IgbGlua2VtIFRlcnJvcmlzbXVzIG1laHIgQW5nc3QuIFVuZCBkaWUKcG90ZW50aWVsbGVuIE9wZmVyIGRlcyBMaW5rc3RlcnJvcmlzbXVzIHNpbmQgZGllICJNYWVjaHRpZ2VuIiBpbSBMYW5kZS4gVW5kCmRpZSBvZmZpemllbGxlIEh5c3RlcmllIGtvbnplbnRyaWVydCBzaWNoIGF1Zi4uLiBnZW5hdSwgYXVmIGRlbgpMaW5rc3RlcnJvcmlzbXVzLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IGlzdCBiZXd1c3N0IGluIHNjaG1hcnJuLiBUZXJyb3Jpc21lbiBnZWdlbmVpbmFuZGVyCmFid2FlZ2VuIGlzdCBzY2hvbiB6aWVtbGljaCBzY2htYXJybmlnLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdWNoIChBbWF6b3JhLCAgNC4gRmViIDE5OTcsIDIxOjU2OjI2KToKW0FsbGdlbWVpbjpBbWF6b3JhXSBMVVVVVVVVVVVVVVVVVVVVVVVIVVVVVVVVVVVVVVVVVVVHCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCltBbGxnZW1laW46THVnXSBBQUFBQUFBQU1NTUFBQUFBQVpaWlpaT09PT09SUlJSUlJSUkFBQUFBQUFBIQpFaW4gbGF1dGVyIEtuYWxsIGhhbGx0IHZvbSBHZWJpcmdlIGhlcnVlYmVyLgpBbWF6b3JhIGhhZWx0IHNpY2ggZGVuIE11bmQgenUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBUcm9sbGUgOiBoaWVyICEgKEppbWRpZ3JpeiwgIDUuIEZlYiAxOTk3LCAwMToxMDo1Nyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODU0OTYxMDkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0NTU2MDA3CkhtbW0KCmljaCB6d2VpZmxlIHN0YXJrIGRhcmFuLCBkYXNzIGRpZSBSQUYgZnVlciBkYXMgSGVycmhhdXNlbiBBdHRlbnRhdAp2ZXJhbnR3b3J0bGljaCB3YXIsIGFiZXIgZGFzIHdpcmQgd29obCBuaWVtYW5kIHNpY2hlcgprbGFlcmVuIGtvZW5uZW4uCgpKZEcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaXJjLi4uIChKaW1kaWdyaXosICA1LiBGZWIgMTk5NywgMDE6MTI6NDcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg1NDk4NTQ5NiByZz1zY2htYXJybgp+IyEgdGlkPTg1NDk4NTQ5NgoKV2llc28gd2FzIGlzIGRhcmFuIHNjaHdlciB6dSB2ZXJzdGVoZW4gPwpKZWRlciB3ZWlzcyBkb2NoIHdlciBkZXIgd2FocmUgR290dCBpbSBNRyBpcywKYXVjaCB3ZW5uIGVyIGhpZXIgbmljaHQgQXJ0ZSBoZWlzc3QuCgpKZEcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBUcm9sbGUgOiBoaWVyICEgKFN1c2hpLCAgNS4gRmViIDE5OTcsIDAxOjE0OjM5KToKfiMhIHJuPUppbWRpZ3JpeiBydD04NTUxMDE0NTcgcmc9c2NobWFycm4KfiMhIHRpZD04NTQ1NTYwMDcKV2VubiBoaWVyIHdlaXRlcmhpbiBzbyBlaW4gaGFhcnN0cmFldWJlbmRlciBTY2hlaXNzIHN0ZWh0LCB3aXJkIGVzIG5pZW1hbmRlbQpzY2h3ZXIgZmFsbGVuLCBkYXMgS29tbWFuZG8gMS4gU3VzaGkgZnVlciBSaXR1YWxtb3JkZSBhbiBlaW5lbSBQT1RUaGFlc3NsaWNoZW4KR2FydGVuendlcmcgdW5kIGVpbmVtIGJlem9wZnRlbiBJbmZvcm1hdGlrZXIgdmVyYW50d29ydGxpY2ggenUgbWFjaGVuLiBEZXIKdGhyZWFkIGdlaG9lcnQgbmljaHQgbmFjaCBTY2htYXJybiwgc29uZGVybiBuYWNoIC9kZXYvbnVsbCwgd2FobHdlaXNlIGF1Y2gKZGlyZWt0IGF1ZiBjOlwKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogVHJvbGxlIDogaGllciAhIChMdWcsICA1LiBGZWIgMTk5NywgMDE6NTQ6NDIpOgp+IyEgcm49Rnl0IHJ0PTg1NDk5NTcxMCByZz1zY2htYXJybgp+IyEgdGlkPTg1NDU1NjAwNwpNb2luLAoKZ2VuYXUgRnl0LCB1bmQgZnVlciBkZW4gTW9yZCBhbiBaaXZpbGlzdGVuIGhhYmVuIGRpZSBFbmdsYWVuZGVyIEJvbWJlciBIYXJyaXMKZWluIERlbmttYWwgZ2VzZXR6dC4KCkx1ZwoKUC5TLjogV2llIHdhZXJlIGVzIGltIEdlZ2VuenVnIG1pdCBlaW5lbSBHdWVudGhlciBQcmllbiBEZW5rbWFsIGluCldpaGxlbXNoYXZlbj8gKHJpY2h0aWdlIFJ1YnJpayBoaWVyKS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBUcm9sbGUgOiBoaWVyICEgKEx1ZywgIDUuIEZlYiAxOTk3LCAwMTo1NzoxMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODU1MDQ1ODMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU0NTU2MDA3Ck1vaW4sCgpobW1tIHZlcnN0YW5kIEdyaW1tYm9ybiBtaWNoIG1pcz8gRGVubiBkYXMgTmFjaGRlbmtlbiBiZXpvZyBzaWNoIGF1ZiBkaWUKRnJhZ2UsIG9iIGVzIHVlYmVyaGF1cHQgZGllIFJBRiB3YXIsIGRpZSBIZXJyaGF1c2VuIGdldG9ldGV0IGhhdC4gCgpMdWcKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBzdWNoZSBwcm9ncmFtbSAoV29vZHksICA1LiBGZWIgMTk5NywgMDM6MzY6NDQpOgp+IyEgcm49QW5hdG9sIHJ0PTg1NTEwNDA4OSByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD04NTUwODIwMTUKSG1tLCBpY2ggaGFiIGxldHp0ZW5zIFdpbiA5NSBnZXNlaGVuLCB1bmQga2FtIGF1cyBkZW0gU3RhdW5lbiBuaWNoCnJhdXM6IERhcyBzY2hhdXQgZG9jaCBnbGF0dCBnZW5hdXNvIGF1cyB3aWUgZnZ3bTItOTUgISEgQWJlciBhbHMKaWNoIGRyYXVmIGthbSwgZGFzcyBpbiBkZXIgc2hlbGwgZ3JhZGUgbWFsIDEtMiUgYWxsZXIga29tbWFuZG9zCmZ1bmt0aW9uaWVydGVuLCB3YXIgbWlyIGtsYXI6IGVzIGlzIG5vY2ggZWluIHdlaXRlciBXZWcgZnVlciBNJC4KCipzY2htYXJybmVuZCogd29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFRyb2xsZSA6IGhpZXIgISAoTGksICA1LiBGZWIgMTk5NywgMTA6MTQ6MTQpOgp+IyEgcm49THVnIHJ0PTg1NTEwNDA4MiByZz1zY2htYXJybgp+IyEgdGlkPTg1NDU1NjAwNwpOYWphLCB6dW0gVGhlbWEgQm9tYmVyIEhhcnJpcyBoYXQgZXMgYXVjaCBpbiBlbmdsYW5kIEdFTlVnIFByb3Rlc3RlIGRhZ2VnZW4KZ2VnZWJlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTm9tZW4gZXN0IG9tZW4uLiA6LSkgKFNpZG9saW4sICA1LiBGZWIgMTk5NywgMTA6Mzg6MzYpOgpbQWJlbnRldWVyOlJpZGRsZXJdIHdlaXNzIGplbWFuZCBvYiBiZWkgbmVyIGF1ZmdhYmUgdm9uIGNoaWxhbmEgYXVjaApbQWJlbnRldWVyOlJpZGRsZXJdIGtvbW1hemFobGVuIHJhdXNrb21tZW4ga29lbm5lbiA/CgoKU2lkb2xpbi4gTGFjaHQgc2ljaCB3ZWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3VsY29tbWFuZHMgKEdhc3QxLCAgNS4gRmViIDE5OTcsIDExOjI1OjE1KToKRGllIGJlcnVlaG10ZSBBYmVudGV1cmVyZ2lsZGUuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvYmVuIHVuZCBub3JkZW4uCkVpbiBIYWV1ZmNoZW4gU2FuZC4KU3ltb3NpcyBkZXIgRmFzc3BvbGllcmVyLgpFaW4gU3BlbmRlbnBsYWthdC4KRWluZSBaZWl0dW5nLgpFaW4gSGFuZGJ1Y2ggZnVlciBBbmZhZW5nZXIuCkVpbiBQYXJ0eWJyZXR0Lgo+IGJldGFzdGUgc2FuZCAKRHUgZ3JhYmJlbHN0IGFuIGVpbmVtIFNhbmQgaGVydW0uCj4ga3VzY2hlbCBzYW5kCkR1IGt1c2NoZWxzdCBEaWNoIGFuIGVpbmVuIFNhbmQgYW4uCgpHYXN0IGtpY2hlcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3VsY29tbWFuZHMgMi4gKEdhc3QxLCAgNS4gRmViIDE5OTcsIDExOjMzOjE0KToKCnN0cmVja2Ugc2FuZCB6dW5nZSByYXVzCkR1IHN0cmVja3N0IGVpbmVtIFNhbmQgZGllIFp1bmdlIHJhdXMuCnN0aW1tZSBzYW5kIHp1CkR1IHN0aW1tc3QgZWluZW0gU2FuZCB6dS4KPiBzcHVja2Ugc2FuZApEdSBzcHVja3N0IGVpbmVuIFNhbmQgYW4uCm11c3RlcmUgc2FuZAo+IGxvYmUgc2FuZApEdSBsb2JzdCBlaW5lbiBTYW5kLgo+IGtvdHplIHNhbmQKRHUga290enQgYXVmIGVpbmVuIFNhbmQuCj4gZW50c2NodWxkaWdlIHNhbmQKRHUgYml0dGVzdCBlaW5lbiBTYW5kIHVtIEVudHNjaHVsZGlndW5nLgpqdWJlbCBzYW5kCkR1IGp1YmVsc3QgZWluZW0gU2FuZCB6dS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTb3VsY29tbWFuZHMgMi4gKFphcmRveiwgIDUuIEZlYiAxOTk3LCAxMTozNzozNik6Cn4jISBybj1HYXN0MSBydD04NTUxMzg3OTQgcmc9c2NobWFycm4KfiMhIHRpZD04NTUxMzg3OTQKZGVzdHJ1Y3Qgc2FuZApFaW4gU2FuZCB3aXJkIHZvbiBEaXIgemVyc3RhZXVidC4KCiBaYXJkb3ogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1Y2ggbmV0dC4gOi0pIChTaWRvbGluLCAgNS4gRmViIDE5OTcsIDExOjUwOjU2KToKPiBpClJ1ZXN0dW5nZW46CiBFaW4gZ29sZGVuZXIgUmluZy4KVmVyc2NoaWVkZW5lczoKIDEwIFNlZXN0ZXJuZS4gICAgICAxMDM1IE11ZW56ZW4uICAgICAgRGllIFplaXR1bmcuCj4gdW50IHNlZXN0ZXJuZQpEdSBmaW5kZXN0IGFuIDEwIFNlZXN0ZXJuZSBrZWluICJTZWVzdGVybmUiLgpEZWluIEJsaWNrIHdlbmRldCBzaWNoIGRlciBVbWdlYnVuZyB6dS4KU293YXMgc2llaHN0IER1IGF1Y2ggZGEgbmljaHQhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFRyb2xsZSA6IGhpZXIgISAoS3JldGVrLCAgNS4gRmViIDE5OTcsIDExOjUxOjU3KToKfiMhIHJuPVN1c2hpIHJ0PTg1NTEwMTY3OSByZz1zY2htYXJybgp+IyEgdGlkPTg1NDU1NjAwNwpBdWYgJ25lciBET1NlIHNvbGx0ZSBtYW4gaW4gc28gZWluZW0gRmFsbCBhdWYgamVkZW4gRmFsbCBDVFRZIE5VTCBlaW5nZWJlbi4KCgogICAgICAgfCAvICB8XCAgfC0tICAtLS0gIHwtLSAgfCAvCiAgICAgICB8PCAgIHwvICB8LSAgICB8ICAgfC0gICB8PAogICAgICAgfCBcICB8XCAgfC0tICAgfCAgIHwtLSAgfCBcCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGlyYy4uLiAoTWV0aGVkcmFzLCAgNS4gRmViIDE5OTcsIDE3OjIxOjI4KToKfiMhIHJuPUppbWRpZ3JpeiBydD04NTUxMDE1Njcgcmc9c2NobWFycm4KfiMhIHRpZD04NTQ5ODU0OTYKSHVjaCwgamV0enQgaGFiIGljaCBncmFkIHN0YXR0IEpkRyAgSm91cnMgZHJ1bGllIEdhdHdpZXNlbCAgZ2VsZXNlbi4KKmdydW1tZWwgQ2F0aW5jaGVuIGFuKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFRyb2xsZSA6IGhpZXIgISAoTHVnLCAgNi4gRmViIDE5OTcsIDAyOjIyOjA2KToKfiMhIHJuPUxpIHJ0PTg1NTEzNDA1NCByZz1zY2htYXJybgp+IyEgdGlkPTg1NDU1NjAwNwpNb2luLAoKdGphIExpLCBhYmVyIGRhcyBEaW5nIHN0ZWh0LiBDb21lIG91dCB5b3UgQmxhY2sgYW4gVGFucyBhbmQgZmlnaHQgbWUgbGlrZSBhCm1hbi4uLgoKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXbyBsYW5nIGJsb3MgPyAoR2FiaSwgIDYuIEZlYiAxOTk3LCAwMzoyMzo0Myk6CgpXbyBzb2xsIGljaCBkZW5uIGRhIGJsb3MgaGluID8KCkFtIEVuZGUgZWluZXIgU2NobHVjaHQuCkVzIGdpYnQgdmllciBzaWNodGJhcmUgQXVzZ2FlbmdlOiBOb3JkZW4sIE5vcmRlbiwgU3VlZGVuIHVuZCBTdWVkZW4uCgpHZWggaWNoIGpldHp0IG5hY2ggbm9yZGVuLCBub3JkZW4sIHN1ZWRlbiBvZGVyIHN1ZWRlbiA/CgpXZXIgZGllIFdhaGwgaGF0IC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdvIGxhbmcgYmxvcyA/IChDYXVubywgIDYuIEZlYiAxOTk3LCAxMDo0OTo0MCk6Cn4jISBybj1HYWJpIHJ0PTg1NTE5NTgyMyByZz1zY2htYXJybgp+IyEgdGlkPTg1NTE5NTgyMwpEYXMgaXN0IGRvY2ggZXR3YXMsIGF1ZiBkYXMgaWNoIHNjaG9uIGxhbmdlIG1hbCB3YXJ0ZToKRHUgc3RlaHN0IGFtIE5vcmRwb2wuCkVzIGdpYnQgdmllciBzaWNodGJhcmUgQXVzZ2FlbmdlOiBTdWVkZW4sIFN1ZWRlbiwgU3VlZGVuIHVuZCBTdWVkZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZXBGaWxlIChZYW50cm8sICA2LiBGZWIgMTk5NywgMTY6MDg6MjMpOgoKSURFQSB2b24gSmFua2EgKC4uLi4uLikKSUNIIFdJTEwgTUlUIE1FSU5FUiBDSEFPU0hBVVQgSU4gRElFIFNBVU5BIQoKSG1tbSBrbGluZ3QgZmFzdCBhbnp1ZWdsaWNoLCBuaWNoPyA7KQoKWWFudHJvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUEsgQW5kcmVzIChBc21vZGlzLCAgNi4gRmViIDE5OTcsIDE3OjA3OjUyKToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9ODU1MTU4ODk2IHJnPXBvbGl6ZWkuYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTg1NTE1ODg5NgooQmV6aWVodCBzaWNoIGF1ZiBkZW4gUEstQXJ0aWtlbCB2b24gSGlnaGxhbmRlcikKClNvbGwgZGFzIGV0d2EgaGVpc3NlbiwgZnVlciBlaW5lbiBQSyBhbiBlaW5lbSBuZXJ2ZW5kZW4gWndlaXRzcGllbGVyCmdpYnRzIG51ciAyIFdvY2hlbiA/PwpCZWdpbm50IGJhbGQgZGFzIGZyb2VobGljaGUgbW9yZGVuID8/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV28gbGFuZyBibG9zID8gKFBhcmFjZWxzdXMsICA2LiBGZWIgMTk5NywgMjE6NTU6MDkpOgp+IyEgcm49R2FiaSBydD04NTUxOTU4MjMgcmc9c2NobWFycm4KfiMhIHRpZD04NTUxOTU4MjMKT2hhLCBEdSBtdXNzdCBqYSBtYWVjaHRpZyBnZXNvZmZlbiBoYWJlbiwgZGFzcyBEdSBqZXR6dCBzY2hvbiBkaWUgQXVzZ2FlbmdlIApkb3BwZWx0IHNpZWhzdC4KCkVpbiB3aXNzZW5kZXIKICBQYXJhY2Vsc3VzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQSyBBbmRyZXMgKEhpZ2hsYW5kZXIsICA3LiBGZWIgMTk5NywgMTQ6MTU6MjcpOgp+IyEgcm49QXNtb2RpcyBydD04NTUyNDUyNzIgcmc9c2NobWFycm4KfiMhIHRpZD04NTUxNTg4OTYKTmVpZW4gOj4KKmFyZ2wqIERhcyBoZWlzc3QgaW0gUHJpbnppcCwgZGFzcyBpaHIgZXVyZSBQYXNzd29lcnRlciBuaWNodCB3ZWl0ZXJnZWJlbgpzb2xsdGV0LCB3ZW5uIGV1Y2ggZXVlciBDaGFyYWt0ZXIgdGV1ZXIgaXN0IDo+CiAgIEhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGlnaGxhbmRlciwgZGllc2UgZmxhdHRlcm5kZSBFbnRlLi4uIChHcmltbWJvcm4sICA3LiBGZWIgMTk5NywgMTQ6MjY6MjMpOgpXYXMgaXN0IGVpZ2VudGxpY2ggaW4gdW5zZXIgQnJhdGhlbmRsIGdlZmFocmVuLCBkYXNzIGVyIHNpY2ggaGllciBsYXVmZW5kIGFscwpIaWxmc3NoZXJpZmYgYXVmc3BpZWx0PyBBbHNvLCB3ZW5uIGRhcyBqZW1hbmQgZGFyZiwgZGFubiBqYSB3b2hsIGljaCwgaW1tZXJoaW4Kd2VyZGUgaWNoIGRhZnVlciBqYSBhdWNoIHN0YWVuZGlnIGtyaXRpc2llcnQuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhpZ2hsYW5kZXIsIGRpZXNlIGZsYXR0ZXJuZGUgRW50ZS4uLiAoSGlnaGxhbmRlciwgIDcuIEZlYiAxOTk3LCAxNDoyNzoyOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODU1MzIxOTgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU1MzIxOTgzClF1YWshCkFlaCwgaWNoIG1laW50ZSwgaWNoIGJpbiBpbiBjYXR3ZWF6bGUuZXhlcyBBYndlc2VuaGVpdCBIaWxmc3NoZXJpZmYuCkhhYiBtaWNoIHZvbiBCb2luZyBicmVpdHNjaGxhZ2VuIGxhc3Nlbi4KICBIclQsIGJyZWl0ZSBFbnRlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGlnaGxhbmRlciwgZGllc2UgZmxhdHRlcm5kZSBFbnRlLi4uIChXYXJnb24sICA3LiBGZWIgMTk5NywgMTQ6NDM6MjEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg1NTMyMTk4MyByZz1zY2htYXJybgp+IyEgdGlkPTg1NTMyMTk4MwpDYXQqIGhhdCBhdXNzZXJoYWxiIGRlcyBNdWRzIHp1IHZpZWwgeXUgdHVuLCBIaWdoKiBoYXQgaW0gTXVkIHp1IHdlbmlnIHp1IHR1bgo9PiBad2FuZ3N2ZXJwZmxpY2h0ZXQgOikKICBXYXJnb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGlnaGxhbmRlciwgZGllc2UgZmxhdHRlcm5kZSBFbnRlLi4uIChIaWdobGFuZGVyLCAgNy4gRmViIDE5OTcsIDE0OjQ4OjI4KToKfiMhIHJuPVdhcmdvbiBydD04NTUzMjMwMDEgcmc9c2NobWFycm4KfiMhIHRpZD04NTUzMjE5ODMKV2FyZ29uLCBwc3Nzc3N0IQpXYXMgc29sbGVuIGRlbm4gZGEgZGllIExldXRlIHZvbiBtaXIgaGFsdGVuPyA7PgogICBIclQKUXVhayEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipncnVtbWVsKiAoR3JpbW1ib3JuLCAgNy4gRmViIDE5OTcsIDE2OjQzOjMxKToKSWNoIHVlYmVybGVnZSBtaXIgZXJuc3RoYWZ0LCBzdHJlbmcgZ2VnZW4gZGllIGdhbnplbiBDbG93bnMsIGRpZSBtaXIgaW1tZXIgZWluCmdyb3Nza290emlnZXMKPG1laW4gd2ljaHRpZ2VyIE5hbWU+IEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQppbmNsdXNpdmUgcGluZyBhdWYgZGVuIEJpbGRzY2hpcm0gc2NoaWNrZW4sIHZvcnp1Z2VoZW4uClNvIGVpbmUgVW52ZXJzY2hhZW10aGVpdCwgbWljaCBoaWVyIGxhdWZlbmQgYmVpbSBpZGxlbiB6dSBzdG9lcmVuLi4uCgpHcmltbWJvcm4gRCBFIFIgIEEgVCBIIEUgSSBTIFQgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpibGEgKE1haGF0bXUsICA3LiBGZWIgMTk5NywgMTc6NDI6MDYpOgpbQWxsZ2VtZWluOkFoYXN2ZXIgZ2FlaG50Ll0KW0FiZW50ZXVlcjo8UXVlc3Q+XSBUb3J3YWwgaGF0IGdlcmFkZSBlaW4gQWJlbnRldWVyIGJlc3RhbmRlbjogU2NocmF0IGthbm4KW0FiZW50ZXVlcjo8UXVlc3Q+XSBuaWNodCBlaW5zY2hsYWZlbgpQbG9ldHpsaWNoIGhvZXJzdCBEdSBlaW4gbGF1dGVzIFNjaG5hcmNoZW4uIFRvcndhbCBoYXQgZGVtIFNjaHJhdApzZWluIGxhbmdlcnNlaG50ZXMgU2NobGFmbWl0dGVsIGdlYnJhY2h0LgoKRmFsc2NoZXIgS2VybCwgVG9yd2FsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpncnVtbWVsKiAoU2lsdmFuYSwgIDcuIEZlYiAxOTk3LCAyMDo1Mjo0OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODU1MzMwMjExIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU1MzMwMjExCkFtIGJlc3RlbiBsb2dnc3QgRHUgc2llIGF1cy4gOikKCiAgU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWJlbiBiZWkgTGFycyAuLi4gKEplaG92YSwgIDguIEZlYiAxOTk3LCAwMzowMjo1MCk6Ci4uLgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBDYW5jb3IgdW1nZWJyYWNodC4KICBDYW5jb3Igd2VocnQgZWluZXMgT3JrcyBBbmdyaWZmIG1pdCBlaW5lbSBTaHV0by1qdWppLXVrZSBhYi4KICBEZXIgT3JrIHRyaWZmdCBDYW5jb3IgaGFydC4KQ2FuY29yIGZhZWhydCBtaXQgc2VpbmVtIFNrYXRlYm9yZCBoZXJlaW4uLgpMYXJzIGtvbW10IGFuIGR1cmNoIGVpbmVuIFJpc3MgaW0gVm9yaGFuZyBkZXIgV2VsdGVuLgoKRXJzdGF1bmxpY2ggbGViZW5kaWdlciBUb3RlciA6KQoKSmVob3ZhLCBtYWNodCB3b2hsIGlyZ2VuZHdhcyBmYWxzY2ggLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW5iaWxkdW5nIGlzdCBhdWNoIG5lIEJpbGR1bmcgOikgKE5lc2FqYSwgIDkuIEZlYiAxOTk3LCAwMDozNDo1OSk6CgpSYXNjYWwgdGVpbHQgRGlyIG1pdDogam8gaWNoIGJpbiBzY2hvbiBpcmdlbmR3aWUgdG9sbCA6KQoKCkFsc28gZGFzIGlzdCBlaW5mYWNoIG9obmUgV29ydGUgOikKCk5lc2kgOikpKSAqa2ljaGVydCoKKFdvdywgbWVpbiBlcnN0ZXIgQXJ0aWtlbC4uLnVuZCBkYW5uIHNvIG5pdmVhdXZvbGwgOikgKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbmJpbGR1bmcgaXN0IGF1Y2ggbmUgQmlsZHVuZyA6KSAoUmFzY2FsLCAgOS4gRmViIDE5OTcsIDAwOjQwOjIzKToKfiMhIHJuPU5lc2FqYSBydD04NTU0NDQ4OTkgcmc9c2NobWFycm4KfiMhIHRpZD04NTU0NDQ4OTkKCkljaCBtdXNzIGFuIGRpZXNlciBTdGVsbGUgYWxsZXJkaW5ncyBub2NoIGVyd2FlaG5lbiBkYXMgZGllc2VyIFNhdHoKbmljaHQga29tcGxldHQgd2llZGVyZ2VnZWJlbiB3dXJkZSAsIGRlbm4gZGEgZmVobHRlIG5vY2ggd2FzICEKCkljaCBlcndhZWhudGUgZGFzIGljaCBhdWNoIHNjaG9uIGFscyBLaW5kIHRvbGwgd2FyLiA6KSkpCgogICAgICAgICAgICAgUmFzY2FsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbmJpbGR1bmcgaXN0IGF1Y2ggbmUgQmlsZHVuZyA6KSAoTGVmdHksICA5LiBGZWIgMTk5NywgMDA6NDE6MzkpOgp+IyEgcm49UmFzY2FsIHJ0PTg1NTQ0NTIyMyByZz1zY2htYXJybgp+IyEgdGlkPTg1NTQ0NDg5OQoKCldhcyB1bnMgUmFzY2FsIGVpZ2VudGxpY2ggYW4gZGllc2VyIFN0ZWxsZSBzYWdlbiB3aWxsIC4uLi4KRXIgd2lyZCBhdWNoIGluIFp1a3VuZnQgdG9sbCBzZWluLCB3ZW5uIG5pY2h0IHNvZ2FyIG5vY2ggdG9sbGVyIDstKS4KCkxlZnR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbmJpbGR1bmcgaXN0IGF1Y2ggbmUgQmlsZHVuZyA6KSAoTmVzYWphLCAgOS4gRmViIDE5OTcsIDAwOjQyOjI1KToKfiMhIHJuPVJhc2NhbCBydD04NTU0NDUyMjMgcmc9c2NobWFycm4KfiMhIHRpZD04NTU0NDQ4OTkKCkRhcyBzcHJpY2h0IGphIG51biB3aXJrbGljaCBCYWVuZGUgOikKCk5lc2kgZGVua3QgLiBvIE8gKE1BRU5ORVIgLi4ua2VubnN0ZSBlaW5lbiwga2VubnN0ZSBhbGxlICEpCgpOZXNpIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0YXBmZXIsIHRhcGZlciA6KSAoU2NocnVtcGZpLCAgOS4gRmViIDE5OTcsIDA2OjAzOjMwKToKRGVyIG1hcmtlcnNjaHVldHRlcm5kZSBTY2hyZWkgTHVncyBoYWxsdCBhdXMgZGVyIEhhbGxlIGRlcyBLcmllZ2VzCmhlcnVlYmVyOgpLQUVNUEZUIE1JVCBNSVIsIHdlbm4gaWhyIGV1Y2ggdHJhdXQuCgpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KRWluIHd1ZXJkaWdlciBHZWduZXIsIHdhcyBMdWcgOy0pClMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFaW5iaWxkdW5nIGlzdCBhdWNoIG5lIEJpbGR1bmcgOikgKE9ldHRpLCAgOS4gRmViIDE5OTcsIDE3OjA0OjQyKToKfiMhIHJuPU5lc2FqYSBydD04NTU0NDUzNDUgcmc9c2NobWFycm4KfiMhIHRpZD04NTU0NDQ4OTkKRGFzIGlzdCBuaWNodCBnYW56IHJpY2h0aWcsIGZ1ZXIgTWFlbm5lciB3aWUgRnJhdWVuIGdpbHQuLi4KCktlbm5zdGUgdmllciBrZW5uc3RlIGFsbGUuLi4uCgpPZSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVpbmJpbGR1bmcgaXN0IGF1Y2ggbmUgQmlsZHVuZyA6KSAoTGF2aW5pYSwgIDkuIEZlYiAxOTk3LCAxNzowNjoxNyk6Cn4jISBybj1PZXR0aSBydD04NTU1MDQyODIgcmc9c2NobWFycm4KfiMhIHRpZD04NTU0NDQ4OTkKQmVpIE1hZW5uZXJuIHJlaWNodCBlaW5lciwgc2VsYnN0IGRlciBpc3QgbWFuY2htYWwgc2Nob24genUgdmllbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvcmF1c3NpY2h0Li4uIChBbmF0b2wsIDEwLiBGZWIgMTk5NywgMDE6NDE6MDYpOgoKW1NlaGVyOlJpbmdvcl0gQnJlbm5lciB0b3QgdW5kIFN0ZXJuZSB0YXVnZW4gbml4IG1laHIKW1NlaGVyOlJpbmdvcl0gbmFqYSwgZGVyIHdpcmQgbm9jaCBnZWJhc3RlbHQKW1RvZDpMYXJzXSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgU2hhcmlhIHVtZ2VicmFjaHQuCltUb2Q6RWluIEh5ZHJha29wZl0gaHNzc3NzcwoKT2gtb2guLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFaW5iaWxkdW5nIGlzdCBhdWNoIG5lIEJpbGR1bmcgOikgKEdyaW1tYm9ybiwgMTAuIEZlYiAxOTk3LCAyMDozODozMik6Cn4jISBybj1MZWZ0eSBydD04NTU0NDUyOTkgcmc9c2NobWFycm4KfiMhIHRpZD04NTU0NDQ4OTkKSWNoIHZlcndlaXNlIGluIGRlbSBadXNhbW1lbmhhbmcgYXVmIGRpZSAidXJzcHJ1ZW5nbGljaGUiIEJlZGV1dHVuZyBkZXMgV29ydGVzCiJ0b2xsIi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRWluYmlsZHVuZyBpc3QgYXVjaCBuZSBCaWxkdW5nIDopIChHcmltbWJvcm4sIDEwLiBGZWIgMTk5NywgMjA6Mzk6MzEpOgp+IyEgcm49TGF2aW5pYSBydD04NTU1MDQzNzcgcmc9c2NobWFycm4KfiMhIHRpZD04NTU0NDQ4OTkKU28gbGVpZCBlcyBtaXIgdHV0LCBkYSBoYXQgTGF2aW5pYSBuaWNodCB1bnJlY2h0LgoKQW53ZXNlbmRlIG5hdHVlcmxpY2ggYXVzZ2Vub21tZW4uLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2V0dHMgZGlhcnJob2UgKGVoaCBkaWFyeSkgKE9ldHRpLCAxMS4gRmViIDE5OTcsIDEzOjQ0OjU5KToKTW9udGFnLCAxMS5GZWJydWFyCgpOYWNoIGRlbSBBdWZzdGVoZW4gZGVuIEZlcm5zZWhlciBlaW5nZXNjaGFsdGV0IHVuZCBtaWNoIGdld3VuZGVydCwKb2IgbWVpbmUgaW0gUnVuZGZ1bmt2ZXJ0cmFnIHp1Z2VzaWNoZXJ0ZSBHcnVuZHZlcnNvcmd1bmcgCmdld2FlaHJsZWlzdGV0IGlzdC4KQVJELCBaREYgdW5kIFNXMyBsaWVmZXJ0ZW4gc2ltdWx0YW4gYnVudCBiZW1hbHRlIGZyb2VobGljaGUgTWVuc2NoZW4sCmRpZSBlaW5lbiBkZXplbnQgZGViaWxlbiBBbnNjaGVpbiBlcm1pdHRlbHRlbiwgdW5kIGlyZ2VuZHdlbGNoZQpSZWltZSB6dW0gQmVzdGVuIGdhYmVuLCBkaWUgcGxvZXR6bGljaCBkYXMgV29ydApTdW5mbG93ZXIgdm9yIG1laW5lbSBnZWlzdGlnZW4gQXVnZSBmb3JtdGVuLgoKQXJiZWl0ZW4gZ2VnYW5nZW4uCgpOYWNoIEhhdXNlIGdla29tbWVuLgoKVGFnZXN0aGVtZW4gZ2VzZWhlbiB1bmQgZ2V3dW5kZXJ0LCBkYXNzIEhlcnIgV2lja2VydCwgc28gb2ZmZW4KbWl0IEguSnVobmtlIHVlYmVyIGRlc3NlbiBBbGtvaG9scHJvYmxlbWUgcmVkZXQuCkludGVydmlldyBtaXQgZWluZXIgbWl0dGVsa2xhc3NlIFNQRC1Qb2xpdGlrZXJpbiwgZGllIHZvcnNjaGxhZWd0CkhlcnJuIEp1aG5rZSB6dSBib3lrb3R0aWVyZW4sIHNvYmFsZCBlciBpbSBGZXJuc2VoZW4gZXJzY2hlaW50LgpOYWVjaHN0ZXMgSW50ZXJ2aWV3IG1pdCBILkp1aG5rZSwgcmF0IGRlciBQb2xpdGlrZXJpbiBiZWZvbGd0LgoKRHVyY2ggZW5nYWdlbWVudCBkZXIgbmV0dGVuIFNQRC1EYW1lIGxlaWRlciBkaWUgV2V0dGVydm9yaGVyc2FnZSB2ZXJwYXNzdC4KCkdlbGVzZW4sIGVpbmdlc2NobGFmZW4gKDQuMDAgVWhyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IDIgVC1TaGlydHMgbWVpc3RiaWV0ZW5kIHp1IHZlcmthdWZlbiAoV29vZHksIDEyLiBGZWIgMTk5NywgMDE6NTk6NTIpOgp+IyEgcm49SGF0ZSBydD04NTU2NjAzMjkgcmc9YW56ZWlnZW4KfiMhIHRpZD04NTU2NjAzMjkKTmUgSGV4ZSB2b3JuZSBkcmF1Zj8gTmVuIFBvcnRyYWl0IHZvbiBTY2hydW1wZmk/PwpTdXV1dXV1dXVlZWVzc3Nzcy4uLi4uLgoKZ2FueiBoaW4gdW5kIHdlZywKd29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBrb252ZW50LiBTcGVpY2hlciAoQW5hdG9sLCAxMi4gRmViIDE5OTcsIDAyOjQzOjQwKToKfiMhIHJuPUFjcmltb24gcnQ9ODU1NzExMzgwIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTg1NTY0ODE2NQoKJ0FkcmVzemJlcmVpY2gnLi4uICdHcm9lc3plbm9yZG51bmcnLi4uCk5hamEsIGRhcyAnUGFzendvcnQnIGlzdCBub2NoIGltbWVyIGJlc3Nlci4KCkFuYXRvbCAoZmFzc3Qgc2ljaCBhbiBkZW4gS29wZikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhVQ0ghIHF1YWsgKENhcmFkaHJhcywgMTIuIEZlYiAxOTk3LCAxMDowNTo0NSk6CltTU1A6R25vbWUgdWViZXJnaWJ0IGRpZSBFYmVuZSBhbiBlaW4gRnJvc2NoLl0KCkh1aWlpaWlpaWlpaSEgKnF1YWsgZW50enVlY2t0KgoKICAgICAgICAgICAgICBHb2xkZnJvc2NoIENhcmFkaHJhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGF1c3RpZXJlIG1pdCBUYXVjaGVybmF6dWcgaW0gUmlmZj8gKEhhciwgMTIuIEZlYiAxOTk3LCAxMTowMTo0Myk6CkR1IHN0YXBmc3QgaW4gZWluZW0gdm9uIEtvcmFsbGVuIHVlYmVyc2FldGVuIFJpZmYgaGVydW0uIERpciBmYWVsbHQKZXMgc2Nod2VyLCBEaWNoIGRlciBGYXN6aW5hdGlvbiBkaWVzZXIgdHJhdW1oYWZ0ZW4gV2VsdCB6dSBlbnR6aWVoZW4uClVlYmVyYWxsIHNpZWhzdCBEdSBTcGFsdGVuLCBMb2VjaGVyLCBIb2VobGVuLCBUdW5uZWwgdW5kIEdyYWViZW4uCkVpbmUgS2F0emUgbmFtZW5zIEN5cmlzLgpDeXJhIGRpZSBXZWdla3VuZGlnZS4KRGVyIEtvZW5pZyBkZXIgT2t0b3B1c3NlLgpFaW4gS29mZmVyZmlzY2guCkVpbiBLb2ZmZXJmaXNjaC4KR2lidCBlcyBkYXMsIG5lIEthdHplIG1pdCBuZXVuIExlYmVuIHNvIGxhZ2UgdW50ZXIgV2Fzc2VyPwoKSGFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPZXR0cyBkaWFycmhvZSAoT2V0dGksIDEyLiBGZWIgMTk5NywgMTM6MjY6NTApOgpEaWVuc3RhZywgMTEgRmVicnVhcgoKQXVmZ2VzdGFuZGVuICh2aWVsIHp1IHNwYWV0LCBzaWVoZSBFaW50cmFnIE1vbnRhZykKS2F0emVud2Flc2NoZSAoTWFuIHNhZ3QsIEthdHplbiBzZWllbiBzZWhyIHJlaW5saWNoLCBuYSBqYSkKCkF1ZiBkZW0gV2VnIHp1ciBBcmJlaXQsIEdlbGQga2F1ZmVuIGluIGRlciBCYW5rLgpEZXIganVuZ2UgU3R1ZGVudCBhbSBTY2hhbHRlciBuZWJlbmFuIGZyYWd0IGRpZSBEYW1lIHZvbiBkZXIgQmFuaywgb2IgZXIKc2VpbmVuIFNlbWVzdGVyYmVpdHJhZyB1bnRlciAiVm9yYmVoYWx0IiB1ZWJlcndlaXNlbiBrb2VubnRlLCB3YXMgc3R1ZGllcnQKZGVyIElkaW90Li4uPz8/IERvcHBlbGtvcGYgPz8/ClZlcnN0YWVuZG5pc2xvc2VzIExhZWNoZWxuIGRlciBTY2hhbHRlcmJlYW10aW4sIHVuZCBlaW5pZ2UKRXJrbGFlcnVuZ3N2ZXJzdWNoZSwKYXVjaCBkaWUgZ3V0YXVzc2VoZW5kZSBqdW5nZSBEYW1lIGRpZSBtaWNoIGJlZGllbnQgbWlzY2h0IHNpY2ggZWluLgpJY2ggYmVrb21tZSBBbmdzdCB1bSBtZWluIEdlbGQsIHVuZCBhdXNzZXJkZW0gc2llaHQgZGVyIFR5cCBnYW56IGd1dCBhdXMsCmF1Y2ggd2VubiBlciBTdHJ1YmJlbGRvb2YgaXN0LCB3YXMgZXIgbmFjaGRydWVja2xpY2ggbWl0IGRlciBGcmFnZToKIldlbm4gZGFzIG5pY2h0IGdlaHQgd296dSBpc3QgZGFubiBkZXIgVmVyd2VuZHVuZ3N6d2VjayBkYT8iLCBiZWxlZ3QuCk1laW5lIERhbWUgdWViZXJyZWljaHQgbWlyIGRvY2ggbm9jaCBkYXMgR2VsZCwgdW5kIHN0cmVpY2h0IAplaW5lIEZhbHRlIGF1ZiBkZW0gSHVuZGVydGVyIGdsYXR0LCBtaXQgZWluZXIgZ2VtdXJtZWx0ZW4gRW50c2NodWxkaWd1bmcuCk1laW4gS29tbWVudGFyOiBXbyBlciBqZXR6dCBoaW5nZWh0LCBnZWh0IGVzIGlobSB3ZXNlbnRsaWNoIHNjaGxlY2h0ZXIuCkdlc2FndCwgc3RvcGZ0IGlobiBicnV0YWwgaW4gZGllIEdlbGRib2Vyc2UsIHdlbGNoZSBpbiBkZXIgaGludGVyZW4KR2VzYWVzc3Rhc2NoZSB2ZXJzY2h3aW5kZXQuClNpZSBsYWNodCwgaW1lbXJoaW4gaHVtb3IgaGF0IGRpZSBEYW1lLCBGbGlydCBnZXNpY2hlcnQsIElkaW90IGF1c2dlc3RvY2hlbi4KQXJiZWl0ZW4gCkhlaW0gRmFocmVuCk11c2lrIGhvZXJlbiB6dXIgRW50c3Bhbm51bmcgKEljaCBzdGVsbGUgbWlyIGRpZSBGcmFnZSwgd2FydW0gZGllIApNdXNpayBkaWUgaWNoIHp1ciBFbnRzcGFubnVuZyBob2VyZSwgZGVuIENoYXJtZSB1bmQgZGVuIGtsYW5nIGVpbmVyCm1pdHRlbHNjaHdlcmVuIE1hc3NlbmNhcmFtYm9sYWdlIGhhdC4uLikKU2NobGFmZW4gKDIzLjE1KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmF1bGUgbWFnaWVyIChSb2NodXMsIDEyLiBGZWIgMTk5NywgMjE6NDY6MjkpOgpaaW5jaGVuIG5pbW10IGVpbiBCYWQgaW4gZGVzIERyYWNoZW4gQmx1dCEKW1ppbmNoZW4gbmltbXQgZWluIEJhZCBpbiBkZXMgRHJhY2hlbiBCbHV0IQpbWmluY2hlbiBuaW1tdCBlaW4gQmFkIGluIGRlcyBEcmFjaGVuIEJsdXQhCltaaW5jaGVuIG5pbW10IGVpbiBCYWQgaW4gZGVzIERyYWNoZW4gQmx1dCEKW1ppbmNoZW4gbmltbXQgZWluIEJhZCBpbiBkZXMgRHJhY2hlbiBCbHV0IQpbW01hZ2llcjpCZW5kZWlnaWRdIGZ1Y2ssIGlzdCBkZXIgTG9md3lyIGhpbj8KW01hZ2llcjpSb2NodXNdIGZyYWcgemluY2hlbgooQW5tZXJrdW5nOiBEZWJ1ZzogKlNDUk9MTCopCllhbnRybyBzYWd0OiBob2ZmZW50bGljaCBtZXJrdCBrZWluZXIsIGRhc3MgTG93ZnlyIGltIHBvbGFyIGlzdApZYW50cm8gZ3JpbnN0IGZyZWNoLgpbTWFnaWVyOkJlbmRlaWdpZF0gUG9sYXIgUk0gbXVzcyBoZXIgOykpKQpEdSBzYWdzdDogenUgc3BhZXQgOikKTWFnaWVyOllhbnRyb10gQXJzY2ggOykKW01hZ2llcjpZYW50cm8ga3Vlc3N0IEJlbmRlaWdpZC5dCltNYWdpZXI6KERlYXRoKV0gc2VpZCBuZXR0IHp1ZWluYW5kZXIgOykKW01hZ2llcjpQYXJhY2Vsc3VzXSBOaWNoIG1lY2tlcm4sIFkqLCBhcmJlaXRlbiEgOykKW01hZ2llcjpCZW5kZWlnaWRdID5ZYW50cm8sIG0gYWNoIGhpbm5lLCBsb2ZmeSBidWdndAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9ldHRzIGRpYXJyaG9lIChlaGggZGlhcnkpIChKYXNwZXIsIDEzLiBGZWIgMTk5NywgMDE6MDg6MjkpOgp+IyEgcm49T2V0dGkgcnQ9ODU1NjY1MDk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU1NjY1MDk5Cndhcz8/P2R1IHdhcnN0IHJvc2VubW9udGFnIGFyYmVpdGVuPz8/IHdvIGdpYnRzIGRlbm4gc293YXMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmxhYWFnJnNjaG1hcnJuIChKYXNwZXIsIDEzLiBGZWIgMTk5NywgMDE6MzU6MzApOgo+IE5hY2h0d2luZCB0ZWlsdCBEaXIgbWl0OiBlbnRzY2h1bGRpZ2UgbWFsLCBhYmVyIGthbm5zdCBkdSBkaWUKTmFjaHR3aW5kIHRlaWx0IERpciBtaXQ6IHNpZWdlbHJpbmctcXVlc3RlIG1hbCByZXNldHRlbj8KdGVpbGUgbmFjaHR3aW5kIG1pdCB3aWVzbyBkYXMgZGVubk5hY2h0d2luZCB0ZWlsdCBEaXIgbWl0OiBkZXIgc2NobHVlc3NlbCBrb21tdCBuaWNodCB3aWVkZXIuLi4KPwpEdSB0ZWlsc3QgTmFjaHR3aW5kIG1pdDogd2llc28gZGFzIGRlbm4/Cj4gZmluZ2VyIG5hY2h0d2luZAp0ZWlsZSBuYWNodHdpbmQgbWl0IHNwYWV0ZXN0ZW5zIG5hY2ggNDVtaW51dGVuIGlzdCBlciB3aWVkZXIgZGEKLW1hcydsYWcKLW1hcyd3ZXIgbWFjaHQgZGVubiBkYSBzbyBlaW4gbGFnPz8/CgoKCk5hY2h0d2luZCBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogZmF1aTA4Zi5pbmZvcm1hdGlrLnVuaS1lcmxhbmdlbi5kZSAoMTMxLjE4OC42Ny4xNSkgW0VybGFuZ2VuXS4KVm9sbGVyIE5hbWU6IE5hY2h0d2luZCBkZXIgV2FuZGVyZ2VzZWxsZQpSYXNzZTogRWxmLCAgR2lsZGU6IEFiZW50ZXVyZXIsICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKQWx0ZXI6IDFkIDA3OjI4OjM0LCAgIFNwaWVsZXJsZXZlbDogNApEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBNb24sICA5LiBEZXogMTk5NiwgMTM6NDE6MTQKRS1NYWlsLUFkcmVzc2U6IGNpcEluZm9ybWF0aWsudW5pLWVybGFuZ2VuLmRlCkJpc2hlciBiZXJlaXRzIDMgbWFsIGdlc3RvcmJlbgo+IE5hY2h0d2luZCB0ZWlsdCBEaXIgbWl0OiBvZGVyIGJpbiBpY2ggZmFsc2NoIGdld2lja2VsdD8gc29sbHRlIGhpZXIgbmljaHQgd2FzCk5hY2h0d2luZCB0ZWlsdCBEaXIgbWl0OiBpbSBzdGF1YiBzZWluPwp0ZWlsZSBuYWNodHdpbmQgbWl0IGtlaW5lIGFobnVuZyB3YXMgaW4gZGVpbmVyIEtMIHN0ZWh0IDopCi1tYXMnbGFnCkR1IHRlaWxzdCBOYWNodHdpbmQgbWl0OiBzcGFldGVzdGVucyBuYWNoIDQ1bWludXRlbiBpc3QgZXIgd2llZGVyIGRhCj4gCgoKCgoKCgpbPE1hc3RlUj46S2Fyb2x1c10gbGFnCltBbGxnZW1laW46THVnXSBBUkdIIFZFUkRBTU1UCls8TWFzdGVSPjpUaGVyaW5dIGxhZwpbPE1hc3RlUj46UmluZ29yXSBsYWcKWzxNYXN0ZVI+Okphc3Blcl0gbGFnCj4gWzxNYXN0ZVI+OlB6eW5vbV0gbGFnCgoKCgoKCgoKCgoKCgoKWzxNYXN0ZVI+OjxNYXN0ZVI+XSA3LjI0IGNtZHMvcywgMTE4LjEwIGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMTYuMSUvNjAsIDIyLjclLzE1LCA3NS4xJS8xCls8TWFzdGVSPjo8TWFzdGVSPl0gNy4yNCBjbWRzL3MsIDExOC4xMCBjb21wIGxpbmVzL3MKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDE2LjElLzYwLCAyMi43JS8xNSwgNzUuMSUvMQpbPE1hc3RlUj46PE1hc3RlUj5dIDcuMjQgY21kcy9zLCAxMTguMTAgY29tcCBsaW5lcy9zCls8TWFzdGVSPjo8TWFzdGVSPl0gTGFnOiAxNi4xJS82MCwgMjIuNyUvMTUsIDc1LjElLzEKWzxNYXN0ZVI+OjxNYXN0ZVI+XSA3LjI0IGNtZHMvcywgMTE4LjEwIGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMTYuMSUvNjAsIDIyLjclLzE1LCA3NS4xJS8xCls8TWFzdGVSPjo8TWFzdGVSPl0gNy4yNCBjbWRzL3MsIDExOC4xMCBjb21wIGxpbmVzL3MKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDE2LjElLzYwLCAyMi43JS8xNSwgNzUuMSUvMQpbPE1hc3RlUj46UmFzY2FsXSBsYWcKW0FsbGdlbWVpbjpMdWddIFdFUiBBVUNIIElNTUVSIERBUyBMQUcgTUFDSFQgUkFVUyEKWzxNYXN0ZVI+Okphc3Blcl0gd2VyIG1hY2h0IGRlbm4gZGEgc28gZWluIGxhZz8/Pwo+IFs8TWFzdGVSPjpQenlub21dIGxhZwoKWzxNYXN0ZVI+OjxNYXN0ZVI+XSA3LjE1IGNtZHMvcywgMTE4LjEwIGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMTYuNCUvNjAsIDIzLjklLzE1LCA4MC42JS8xCls8TWFzdGVSPjo8TWFzdGVSPl0gNy4xNSBjbWRzL3MsIDExOC4xMCBjb21wIGxpbmVzL3MKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDE2LjQlLzYwLCAyMy45JS8xNSwgODAuNiUvMQpbPE1hc3RlUj46UmluZ29yIGZsdWNodCB3aWxkIHJ1bV0KPiAKCgoKCgoKCgoKCj4gTmFjaHR3aW5kIHRlaWx0IERpciBtaXQ6IGFiZXIgZXIgTVVTUyBpbSBzdGF1YiBzZWluLCBvZGVyPwoKCgoKCgoKCgoKCgpbQWxsZ2VtZWluOkh1ZXBmZXJdIGRhdHQgaXMgZWluIHNjaGVpc3MKPiAKCgoKCgpEdSB0ZWlsc3QgTmFjaHR3aW5kIG1pdDoga2VpbmUgYWhudW5nIHdhcyBpbiBkZWluZXIgS0wgc3RlaHQgOikKPiBbPE1hc3RlUj46VGhlcmluXSBlcnN0ZXIsIGVyc3RlcgpbPE1hc3RlUj46SmFzcGVyXSBsYWcKPiBbPE1hc3RlUj46QnJhbmRpcl0gbGFnCls8TWFzdGVSPjpFbGVuZGlsXSBEYXMgZGFyZiBkb2NoIHdvaGwgbmljaHQgd2FociBzZWluIG9kZXIgPwo+IFs8TWFzdGVSPjpCcmFuZGlyXSBraWNoZXIKWzxNYXN0ZVI+OjxNYXN0ZVI+XSA3LjA1IGNtZHMvcywgMTE4LjEwIGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMTYuOCUvNjAsIDI1LjMlLzE1LCA4Ny44JS8xCls8TWFzdGVSPjo8TWFzdGVSPl0gNy4wNSBjbWRzL3MsIDExOC4xMCBjb21wIGxpbmVzL3MKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDE2LjglLzYwLCAyNS4zJS8xNSwgODcuOCUvMQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBbPE1hc3RlUj46SG9vZF0gaGV5LCBmYXN0IDkwIDopCk5hY2h0d2luZCB0ZWlsdCBEaXIgbWl0OiBoYWVoPwpbPE1hc3RlUj46QnJhbmRpcl0gZGFzIGR1ZXJmdGUgbmV1ZXIgcmVrb3JkIHNlaW4uLi4KWzxNYXN0ZVI+OlRlc2xhXSBOZWVlIC4uIGljaCB3YXIgYmVzc2VyIC4uIDopCk5hY2h0d2luZCB0ZWlsdCBEaXIgbWl0OiBkaWUgcXVlc3RlbiBzaW5kIGRvY2ggZnVlciBhbGxlIGdsZWljaCwgb2Rlcj8KdGVpbGUgbmFjaHR3aW5kIG1pdCBlaWdlbnRsaWNoIHNjaG9uLCBuYWphIG5pY2h0IGFsbGUsIGFiZXIgZGVyIHJlc2V0IGtvbW10IG5hY2ggMzAgbWludXRlbiBvZGVyIHNvLCBhbHNvIGJsZWliIGxEYW50ZSBydWZ0OiBqYSEhISEhISEhISEhISEhISEhISEhIQpvY2tlciB1bmQgZ2VoIG5lIHJ1bmRlIGRhcnQgaW4gZGVyIGtuZWlwZSBzcGllbGVuIDopCkR1IHRlaWxzdCBOYWNodHdpbmQgbWl0OiBlaWdlbnRsaWNoIHNjaG9uLCBuYWphIG5pY2h0IGFsbGUsIGFiZXIgZGVyIHJlc2V0CkR1IHRlaWxzdCBOYWNodHdpbmQgbWl0OiBrb21tdCBuYWNoIDMwIG1pbnV0ZW4gb2RlciBzbywgYWxzbyBibGVpYiBsb2NrZXIgdW5kCkR1IHRlaWxzdCBOYWNodHdpbmQgbWl0OiBnZWggbmUgcnVuZGUgZGFydCBpbiBkZXIga25laXBlIHNwaWVsZW4gOikKPiAtbWFzJ2xhZwotbWFzJ2lzdCBiZXN0aW1tdCBkYW5jZXIgOikKbF5Ia3dlciBtYWdpZXIKdGVpbGUgbmFjaHR3aW5kIG1pdCBiZWkgZFs8TWFzdGVSPjpKYXNwZXJdIGxhZwo+IGVtIGxbPE1hc3RlUj46PE1hc3RlUj5dIDYuNjUgY21kcy9zLCA5My4zMCBjb21wIGxpbmVzL3MKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDE3LjQlLzYwLCAyNy42JS8xNSwgNDFhZy42JS8xCls8TWFzdGVSPjpKYXNwZXJdIGlzdCBiZXN0aW1tdCBkYW5jZXIgOikKPiAga2FubnN0IGQgICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRG9uLCAxMy4gRmViIDE5OTcsIDAxOjI1OjQ0ICg0IFRlaWxuZWhtZXIpCgpUZXNsYS4uLi4uLi4uLi4ubSAgSmFzcGVyLi4uLi4uLi4uLk0gIChEZWF0aC4uLi4uLi4uKS5SICBEYW5jZXIuLi4uLi4uLi4uUgoKPiB1IGVoIG5pY2h0IG11ZGRlbgpEdSB0ZWlsc3QgTmFjaHR3aW5kIG1pdDogYmVpIGRlbSBsYWcga2FubnN0IGR1IGVoIG5pY2h0IG11ZGRlbgo+IFs8TWFzdGVSPjpSaW5nb3JdIGFsc28gZGFzIGthbm4gZG9jaCBudXIgbm9jaCBBYnNpY2h0IHNlaW4gOi0vCgpbPE1hc3RlUj46RWxlbmRpbF0gbGFnCls8TWFzdGVSPjo8TWFzdGVSPl0gNi44MyBjbWRzL3MsIDkxLjY5IGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMTcuNCUvNjAsIDI4LjElLzE1LCA0Ny4zJS8xCltUb2Q6TGFyc10gVGFzZmlyIE1haGtva2VzaCBoYXQgZ2VyYWRlIEh1ZXBmZXIgdW1nZWJyYWNodC4KLWJlaWxlaWRbPE1hc3RlUj46UmFzY2FsXSBsYWcKJ29oaGhoWzxNYXN0ZVI+OjxNYXN0ZVI+XSA2LjgxIGNtZHMvcywgOTEuNjkgY29tcCBsaW5lcy9zCls8TWFzdGVSPjo8TWFzdGVSPl0gTGFnOiAxNy40JS82MCwgMjguMCUvMTUsIDQ3LjMlLzEKIFtCZWlsZWlkOkhvb2RdIGhvcHBsYSA6KAo6KQpbQmVpbGVpZDpKYXNwZXJdIG9oaGhoIDopCj4gWzxNYXN0ZVI+OlJhc2NhbF0gdXAKLVs8TWFzdGVSPjo8TWFzdGVSPl0gRGFzIE1VRCBsYWV1ZnQgamV0enQgMTIgVGFnZSwgNiBTdHVuZGVuLCA0MiBNaW51dGVuIHVuZCAyNwpbPE1hc3RlUj46PE1hc3RlUj5dIFNla3VuZGVuLiBFcyBzaW5kIG1vbWVudGFuIDUxIFNwaWVsZXIgZWluZ2Vsb2dndDsgZGFzCls8TWFzdGVSPjo8TWFzdGVSPl0gTWF4aW11bSBsYWcgaGV1dGUgYmVpIDY2IHVuZCBkZXIgUmVrb3JkIGJpc2hlciBpc3QgMTcyLgpiZVtCZWlsZWlkOlJpbmdvcl0gZGVuIGdyZWlmdCBtYW4gZG9jaCBhdWNoIG5pY2h0IGFuIDooCmlsZWlkJ2JlaSBkZW0gbGFnIHNvbGx0ZSBtYW4gaW4gTmFjaHR3aW5kIHRlaWx0IERpciBtaXQ6IGljaCBtZWluIGphIG51ciwgc28gZWluaWdlIGxldXRlIHN1Y2hlbiBkaWVzZW4KTmFjaHR3aW5kIHRlaWx0IERpciBtaXQ6IHNjaGx1ZXNzZWwgc2Nob24gc2VpdCBzdHVuZGVuLCB1bmQgZXMga29tbXQga2VpbmVyLi4uCmRlciBrbmVpcGUgYmxlaWJlbiA6KVtCZWlsZWlkOkFubmloaWxhdG9yIHRyYXVlcnQgdW0gSHVlcGZlci5dCgpbQmVpbGVpZDpKYXNwZXJdIGJlaSBkZW0gbGFnIHNvbGx0ZSBtYW4gaW4gZGVyIGtuZWlwZSBibGVpYmVuIDopCj4gCj4gWzxNYXN0ZVI+OkVsZW5kaWwgd2lsbCBSZWJvb3QuLi4uXQpbPE1hc3RlUj46UmluZ29yIG5pY2h0XQp0ZWlsZSBuYWNodHdpbls8TWFzdGVSPjpFbGVuZGlsIGdyaW5zdF0KZCBtaXQgZnJhZyBtYWwgbmVbPE1hc3RlUj46VGVzbGEgaXN0IGVzIGVnYWwuXQpuIHNwaWVsZXIgb2RlciBhdWYgYWJlbnRldWVyIE5hY2h0d2luZCB0ZWlsdCBEaXIgbWl0OiBuYSBqYS4uLiB3YXIgZWggbnVyIG5lIDUgYXAgcXVlc3RlIG9kZXIgc28uLi4gd2hhdApOYWNodHdpbmQgdGVpbHQgRGlyIG1pdGljOiBzaGFsbHMuLgpoIGdsYXViIGR1IHN1Y2hzdCBhbiBkZXIgZmFsc2NoZW4gc3RlbGxlLCB3ZWxjaGVuIHNjaGx1ZXNzZWwgdWViZXJoYXVwdCwuLi4gYVs8TWFzdGVSPjpSYXNjYWwgZ3JpbnN0IFRlc2xhIGFuLl0KaHNvLCBuYWphIGJpc3QgZHUgaW0gckxhbXlyYSBydWZ0OiBoaWxiZXJ0CmljaHRpZ2VuIGhhdXM/Pz8KRHUgdGVpbHN0IE5hY2h0d2luZCBtaXQ6IGZyYWcgbWFsIG5lbiBzcGllbGVyIG9kZXIgYXVmIGFiZW50ZXVlciBpY2ggZ2xhdWIgZHUKRHUgdGVpbHN0IE5hY2h0d2luZCBtaXQ6IHN1Y2hzdCBhbiBkZXIgZmFsc2NoZW4gc3RlbGxlLCB3ZWxjaGVuIHNjaGx1ZXNzZWwKRHUgdGVpbHN0IE5hY2h0d2luZCBtaXQ6IHVlYmVyaGF1cHQsLi4uIGFoc28sIG5hamEgYmlzdCBkdSBpbSByaWNodGlnZW4KRHUgdGVpbHN0IE5hY2h0d2luZCBtaXQ6IGhhdXM/Pz8KPiAKPiBzd28gbmFjaHR3aW5kCmludGVybiA6IC9lbGY6bmFjaHR3aW5kCk5hY2h0d2luZCBpc3QgZ2VyYWRlIGluOiAvZC92bGFuZC9tb3Jnb3RoL3Jvb20vY2l0eS9oYXVzMgo+IE5hY2h0d2luZCB0ZWlsdCBEaXIgbWl0OiBkZW0gaGF1cyBhdWYgZGVyIG9ya2FsbGUgbWl0IGRlciBsdWtlIHVuZCBkZW0KTmFjaHR3aW5kIHRlaWx0IERpciBtaXQ6IHN0YXViLi4uCgp0ZWlsZSBuYWNodHdpbmQgbWl0IHdlbm4gc2ljaCBkYSBuaWNodCB3YXMgZ2VhZW5kZXJ0IGhhdCBzb2xsdGUgZXIgd29obGRhIGluIGRlciBuYWVoZSBzZWluIDopCkR1IHRlaWxzdCBOYWNodHdpbmQgbWl0OiB3ZW5uIHNpY2ggZGEgbmljaHQgd2FzIGdlYWVuZGVydCBoYXQgc29sbHRlIGVyIHdvaGxkYQpEdSB0ZWlsc3QgTmFjaHR3aW5kIG1pdDogaW4gZGVyIG5hZWhlIHNlaW4gOikKPiAKPiBOYWNodHdpbmQgdGVpbHQgRGlyIG1pdDogbHVrZSBpc3QgdmVyc2NobG9zc2VuLCByYXR0ZSBtaXQgc2llZ2VscmluZyBzb2xsIGhpZXIKTmFjaHR3aW5kIHRlaWx0IERpciBtaXQ6IGlyZ2VuZHdvIHNlaW4uIGFsc28gc3VjaGUgaWNoIG51biByaWNodGlnIG9kZXIgYmluCk5hY2h0d2luZCB0ZWlsdCBEaXIgbWl0OiBpY2ggdmVya2VocnQ/CnRlaWxlIG5hY2h0d2luZCBtaXQgbWFsIG1hbCAtYWJlbnRldWVyKyBkZXIga2FuYWwgaXN0IGRhenUgZGEgdW0gYmVpIHNvbGNoZW4gZnJhZ2VuIHp1IGhlbGZlbiwgaWNoIGthbm4gZGlyIGRhIGxlaWRlciBuaWNodCBkaWUgZ2VuYXVlIHN5bnRheCBzYWdEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgplbgpEdSB0ZWlsc3QgTmFjaHR3aW5kIG1pdDogbWFsIG1hbCAtYWJlbnRldWVyKyBkZXIga2FuYWwgaXN0IGRhenUgZGEgdW0gYmVpCkR1IHRlaWxzdCBOYWNodHdpbmQgbWl0OiBzb2xjaGVuIGZyYWdlbiB6dSBoZWxmZW4sIGljaCBrYW5uIGRpciBkYSBsZWlkZXIKRHUgdGVpbHN0IE5hY2h0d2luZCBtaXQ6IG5pY2h0IGRpZSBnZW5hdWUgc3ludGF4IHNhZ2VuCj4gW0FsbGdlbWVpbjpIb3VzZWhvbGRlcl0gd2lsbCB3ZXIgbmUgc2NobGFuZ2VuaGF1dCA/Ci1tYXMnbGFnCls8TWFzdGVSPjpKYXNwZXJdIGxhZwo+IFs8TWFzdGVSPjo8TWFzdGVSPl0gNi42NiBjbWRzL3MsIDg3Ljg0IGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMTYuNSUvNjAsIDI2LjklLzE1LCAxLjYlLzEKLW1hcydhaGEgZGFuY2VyIGlzdCBmZWRkaXNjaCA6KQprd1s8TWFzdGVSPjpKYXNwZXJdIGFoYSBkYW5jZXIgaXN0IGZlZGRpc2NoIDopCj4gZXIgbWFnaWVyCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEb24sIDEzLiBGZWIgMTk5NywgMDE6MzA6MTQgKDYgVGVpbG5laG1lcikKClRlc2xhLi4uLi4uLi4uLi5tICBNYXJjdXMuLi4uLi4uLi4ubSAgU3VzaGkuLi4uLi4uLi4uLk0gIEphc3Blci4uLi4uLi4uLi5NCihEZWF0aC4uLi4uLi4uKS5SICBEYW5jZXIuLi4uLi4uLi4uUgoKPiAKPiAtbWFzWzxNYXN0ZVI+OlRlc2xhXSBMb3MgSmFzcGVyLCBkYXMgYmVrb21tZW4gd2lyIHdpZWRlciBob2NoIC4uIDspCidvZGVyIHhlcmEgaXN0IGpldHp0IGRhIDopCls8TWFzdGVSPjpKYXNwZXJdIG9kZXIgeGVyYSBpc3QgamV0enQgZGEgOikKPiAtbWFzJ2FlaCB3aWUgaG9jaGJla29tbWVuPyA6KQpbPE1hc3RlUj46SmFzcGVyXSBhZWggd2llIGhvY2hiZWtvbW1lbj8gOikKPiBbQWxsZ2VtZWluOkh1ZXBmZXJdIG9jaCBtb2Vuc2NoCk5hY2h0d2luZCB0ZWlsdCBEaXIgbWl0OiBkYSBzYWd0IGF1Y2gga2VpbmVyIHdhcy4uLiBuYSBqYSwgZGFua2UgZXJzdG1hbCwgaWNoCk5hY2h0d2luZCB0ZWlsdCBEaXIgbWl0OiBzdWNoIHNwYWV0ZXIgdmllbGxlaWNodCBub2NobWFsLi4uCnRlaWxlIG5hY2h0d2luZCBtaXQgbWFjaCBkYXMsIGFiZXIgZHUgd2Fyc3Qgd29obCBzY2hvbiB6aWVtbGljaCByaWNodGlnIGRhIDopCkR1IHRlaWxzdCBOYWNodHdpbmQgbWl0OiBtYWNoIGRhcywgYWJlciBkdSB3YXJzdCB3b2hsIHNjaG9uIHppZW1saWNoIHJpY2h0aWcKRHUgdGVpbHN0IE5hY2h0d2luZCBtaXQ6IGRhIDopCj4gW0FsbGdlbWVpbjpIdWVwZmVyXSBtZWluZSAzNjAwMCBtdWVuemVuIGFsbGUgd2VjaAotYSdoYWV0dGVzdCBkdSBiZXNzZXIgaW4ga25vYmxhdWNod2Fzc2VyIGludmVzdGllcnQKW0FsbGdlbWVpbjpKYXNwZXJdIGhhZXR0ZXN0IGR1IGJlc3NlciBpbiBrbm9ibGF1Y2h3YXNzZXIgaW52ZXN0aWVydAo+IGlnbm9yZW1lCj4gaG9tZQpbL3BsYXllcnMvamFzcGVyL3dvcmtyb29tXQpEaWVzZXMgaXN0IGRlciBBcmJlaXRzcmF1bSB2b24gSkFTUEVSLgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgo+IGlnbm9yZW1lCj4gW0FsbGdlbWVpbjpIdWVwZmVyXSB0amEgaWNoIHdvbGx0IGphIG51ciBuZSBxdWVzdCBtYWNoZW4KaWdub3JhbnRlbgowIFNwaWVsZXIgaWdub3JpZXJlbiBkYXMgU2NobGFjaHRmZWxkLgo0OSBTcGllbGVyIGVtcGZhbmdlbiBkaWUgZGFzIFNjaGxhY2h0ZmVsZCBFY2hvLgo+IFtBbGxnZW1laW46UmluZ29yXSBhYmVyIGRpZSBRdWVzdCBtYWNodCBtYW4gbmljaHQgZHVyY2ggbWV0emVsbiA7KQotYSduYWphIGJlaSBkZW0gbGFnIFtBbGxnZW1laW46SHVlcGZlcl0gbm9lIGljaCBoYWIgZGF1ZXJuZCBmYWxzY2ggZ2VyYXRlbiA6KQplcnNjaGVpbnQgamEgZGllIGRldGFpbGJlc2NocmVpYnVuZyBlcnN0IG5hY2ggbWludXRlbiwgZGEgd2Vpc3N0IGR1amEgbmljaHQgbWVociB3YSBkdSB1bnRlcnN1Y1tBbGxnZW1laW46UmluZ29yXSBodWNoLCB3aXJkIGRlciBkYW5uIGJvZXNlPwpoc3Qgal5IaGFzdApbQWxsZ2VtZWluOkphc3Blcl0gbmFqYSBiZWkgZGVtIGxhZyBlcnNjaGVpbnQgamEgZGllIGRldGFpbGJlc2NocmVpYnVuZyBlcnN0CltBbGxnZW1laW46SmFzcGVyXSBuYWNoIG1pbnV0ZW4sIGRhIHdlaXNzdCBkdWphIG5pY2h0IG1laHIgd2EgZHUgdW50ZXJzdWNoc3QKW0FsbGdlbWVpbjpKYXNwZXJdIGhhc3QKPiBbQWxsZ2VtZWluOkh1ZXBmZXJdIGplcCBlciB6aWVodCBscHMgYWIKCgpqYXNwZXIKCnBzOnVuZCBkYW5uIHdhciBhdWNoIG5vY2ggaHVlcGZlcnMgZWhlcmluZyB3ZWcsIHplaXQgdW0genUgZmx1ZWNodGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPZXR0cyBkaWFycmhvZSAoT2V0dGksIDEzLiBGZWIgMTk5NywgMTM6NTg6NDIpOgpNaXR0d29jaCwgMTIgRmVicnVhcgoKQXVmc3RlaGVuLgpBcmJlaXRlbi4KSGVpbSBmYWhyZW4uCkF1ZiBkZW0gSGVpbXdlZyBiZWkgUGVubnkgZnVlciBkaWUgVmVyc29yZ3VuZyBtaXQgR3J1bmRuYWhydW5nc21pdHRlbG4KZ2Vzb3JndC4KQmVpbSBiZXRyZXRlbiBkZXMgTGFkZW5zIGZhZWxsdCBtaXIgYXVmLCBkYXNzIGRlciBlaW5zYW1lIEthc3NpZXJlcgpkaWUgRW5kcHJlaXNlIGR1cmNoIGRpZSBHZWdlbmQgYnJ1ZWxsdCBhbHMgc3RhZW5kIGplbWFuZCBtaXQKZWluZXIgS2FsYXNjaG5pa292IGhpbnRlciBpaG0uCjE1IE1BQUFBQ0sgNjIsIEJJSUlUVEVFRUVFRQpPYiBlcyBkYXJhbiBsaWVndCwgZGFzcyBlcyAxOC4yOSBpc3QsIGFscyBpY2ggZGVuIExhZGVuIGJldHJldGUgPz8/CkJyb3QsIEljaCBlbnRzY2hlaWRlIG1pY2ggZnVlciBTY2h3YXJ6YnJvdCBtaXQgZGVtIEF1ZmRydWNrIGJlc29uZGVycyBndXQKZ2VlaWduZXQgZnVlciBTY2hpbmtlbi4KNyBNQUFBQUFBQ0sgOTUsIEJJSUlJSUlJSVRFRUVFRUVFRUVFRS4KU2FsYW1pLCBLYWVzZSwgWndlaSBEb3NlbiBCaWVyLCBIZW5uaW5nZXIsIHdlZ2VuIGRlciBzY2h3YXJ6ZW4gRG9zZW4uLi4KQW4gZGVyIEthc3NlLi4uClBhY2t1bmcgS2lwcGVuIGRhenUuLi4KMTAgTUFBQUFBQUFBQUNLIDM3LCBCSVRURUVFRUVFRUVFRUVFRUVFRQpJY2ggYmluIGRlciB2b3JsZXR6dGUgS3VuZGUgZGVzIEFiZW5kcyB1bmQgYmVnaW5uZSBudW4gCmdlbnVlc3NsaWNoLCBuYWNoIDM3IFBmZW5uaWdlbiB6dSBzdWNoZW4sIDEwLi4uMTUuLi4xNy4uLjE5CkRlciBLYXNzaWVyZXIgemllbWxpY2ggcGFtcGlnOiBIYW1tc2UgbmVuIGZ1ZmZ6aWdlci4uLgoyMi4uLjI3Li4uTmUgcmVpY2h0IG5pY2h0Li4uCkhhbW1zZSBuZW4gZnVmZnppZ2VyLi4uPz8/Ck5lZSBoYWIgaWNoIGF1Y2ggbmljaHQsIG5laG0gZGVuIFplaG5lciB6dXJ1ZWNrIHVuZCBnZWIgaWhtIG5lbiBIdW5kZXJ0ZXIuCkljaCBzZWhlLCB3aWUgZXIgbWljaCB2b3Igc2VpbmVuIGdlaXN0aWdlbiBBdWdlIG1hc3NrcmllcnQgdW5kIGxhZWNobGUsCmVpbmVuIEhhdWNoIHp1IGZyZXVuZGxpY2ggdW5kIGVpbmVuIEhhdWNoIHp1IGRlYmlsLgpHbHVlY2tsaWNoIHVuZCB6dWZyaWVkZW4gdmVybGFzc2UgaWNoIGRlbiBQZW5ueW1hcmt0LgpBYmVuZGdlc3RhbHR1bmcsIEdlaCBpY2ggaW4gZWluZW4gRGFyayBXYXZlLCBHb3RoaWMsIEVCTSwgS3Jhd2FsbHNjaHVwcGVuCm9kZXIgYmVzdWNoZSBpY2ggbmUgZ3V0ZSBGcmV1bmRpbi4KS3VyeiBiZXZvciBpY2ggbWljaCBmdWVyIGRpZSBCaWVyZG9zZW4gZW50c2NoZWlkZSwgc2V0eiBpY2ggbWljaCBpbidzCkF1dG8gdW5kIGZhaHIgaW4gZGVuIEtyYXdhbGxzY2h1cHBlbi4KRXJzdGVyIFNjaG9jaywgaWNoIGRlbmtlOiBQc2V1ZG8sIG9id29obCBpY2ggZGllc2VzIFdvcnQgaGFzc2UsCkljaCBkZW5rZToiIEF1ZmdlbW90enRlIFRvcnRlbiB1bmQgdWViZXJ0cmllYmVuIGdlc2NobWlua3RlIFR5cGVuIi4gCkljaCBzdWNoZSBkZW4gU2NobWVyeiBpbiBkZW4gQXVnZW4gZGVyIE1lbnNjaGVuIHVuZCBmaW5kZSBudXIgZGllIEVpdGVsa2VpdC4gCkVuZGxpY2ggZ3V0ZSBNdXNpaywgaWNoIGhlY2h0ZSBhdWYgZGllIFRhbnpmbGFlY2hlLi4uU0NIV0FSWkxJQ0hUIQpTY2htZXJ6bGljaCB3aXJkIG1pciBiZXd1c3N0LCBkYXNzIG1laW5lIGxldHp0ZSBXYWVzY2hlIG1laW5lIE1hbWkgZ2VtYWNodApoYXQgdW5kIGRhc3Mgc2llIGRlbiBXZWljaHNwdWVsZXIgZ2FyYW50aWVydCBlcmZpbmRlbiB3dWVyZGUsIHdlbm4KZXMgaWhuIG5vY2ggbmljaHQgZ2FlYmUuCkVyZ28sIGljaCBsZXVjaHRlIHdpZSBkaWUgendlaSBnZXN0YWx0ZW4gYXVzIGRlbSBUYWludGVkIExvdmUgVmlkZW8gdm9uClNvZnQgQ2VsbC4KSWNoIGJsZWliIGhhcnQgdW5kIHphcHBlbCB6dSBFbmRlLCBkYW5hY2ggc2NobmVsbCB6dW0gU3R1aGwsIHVuZCBkZW4gUHVsbGkKcnVudGVyZ2VyaXNzZW4uCkVuZGxpY2ggZWluIE1hZWRlbCBtaXQgbmVtIHRyYXVyaWdlbiBCbGljaywgQmxpY2trb250YWt0LCB3ZWdlc2NoYXV0Lgp3aWVkZXIgQmxpY2trb250YWt0Li4ubGFlbmdlciwgd2VnZXNlaGVuLCB3aWVkZXIgaGluZ2VndWNrdCwKZGV6ZW50ZXMgbGFlY2hlbG4sIHdpZWRlciB3ZWdzY2hhdWVuLCB3aWVkZXIgaGlnZXNjaGF1dC4uLgpTaWUgdW1hcm10IGRlbiBCYWFya2VlcGVyLCBuYWNoIGNhLiA0NSBzZWt1bmRlbiBnZWJlIGljaCBkaWUgSG9mZm51bmcKYXVmLCBkYXNzIGVzIG51ciBlaW5lIGZyZXVuZHNjaGFmdGxpY2hlIFVtYXJtdW5nIGlzdC4uLgpFbGVrdHJvZ2VrbnVlcHBlbCBhdWYgZGVyIFRhbnpmbGFlY2hlLCBzZWhyIGd1dCwgaWNoIGdlaGUgVGFuemVuCmJpcyBkZXIgQXJ6dCBrb21tdCwgdW5kIHNvcmdlIGZ1ZXIgZGl2ZXJzZSBzY2htZXJ6ZW4gaW4gZnJlbWRlbiBGdWVzc2VuIHVuZApVbnRlcmxlaWJlbi4uLgpIZWltIGZhaHJlbiAKU2NobGFmZW4gKDEuMzApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExpZXMgbWljaCwgRHUgU2F1ISAoR3JpbW1ib3JuLCAxMy4gRmViIDE5OTcsIDE0OjM2OjE5KToKfiMhIG9uPUFuYXRvbCBvdD04NTU3MTA2ODYgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUFjcmltb24gcnQ9ODU1NzEwMDE5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODU1NjQwMDkzCkFjcmltb24gc2NocmllYjoKPiBEYXMgd2FyIGVpbiBUZXh0IHp1IGRlbSBUaGVtYSAiV2llIHdpcmQgbWFuIGRhcyBncm9lc3p0ZSBBcnNjaGxvY2giLCBhYmVyCj4gbmljaHQgIldhcyBpc3QgZWluIEZsYW1lIi4KPiBTb2xjaGVybGVpIExldXRlIHNpbmQgbmljaHQgZ2VyYWRlIGJlc29uZGVycyBhbmdlc2VoZW4uCj4gVW5kIG1hbmNoZSBGbGFtZXdhcnMgYXJ0ZW4gaW4gQmVsYWVzdGlndW5nZW4gYXVzLCB1bmQgc29iYWxkIGVyIHNvIHdlaXQgaXN0LAo+IGthbm4gZGVyCj4gVmVydXJzYWNoZXIgc2VpbmVuIEFjY291bnQgdmVyZ2Vzc2VuLgo+IFdlciBzaWNoIGFsc28gbmljaHQgYmVoZXJyc2NoZW4ga2FubiwgZnVlciBkZW4gd2lyZCBlcyBnZWZhZWhybGljaC4KPiAKPiBTb21pdCBob2xlIGljaCBqZXR6dCBuYWNoLCB3YXMgRGFuY2VyIHZlcnNhZXVtdCBoYXQ6Cj4gRGVmaW5pdGlvbiBkZXMgQmVncmlmZmVzICJGbGFtZSI6Cj4gRWluIEZsYW1lIGlzdCBlaW5lIEFudHdvcnQsIGRpZSBhdWNoIHVucXVhbGlmaXppZXJ0ZSBBdXNzYWdlbiBlbnRoYWVsdCwgbWl0Cj4gZGVtIFppZWwsIGRpZSBXb3J0ZSBkZXMgQW5kZXJlbiB1bmdsYXVid3VlcmRpZyB6dSBtYWNoZW4gb2RlciBpaG4KYW56dWdyZWlmZW4uCj4gCj4gQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyIGhvZmZ0LCBkYXN6IGVyIHNpY2ggZGllc2UgRGVmaW5pdGlvbiByaWNodGlnIGF1cwpkZW4KPiBGaW5nZXJuIGdlc29nZW4gaGF0LgoKVm9lbGxpZ2VyIEJsb2Vkc2lubi4KQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTGllcyBtaWNoLCBEdSBTYXUhIChHcmltbWJvcm4sIDEzLiBGZWIgMTk5NywgMTQ6MzY6NTMpOgp+IyEgb249R3JpbW1ib3JuIG90PTg1NTc1MzI5OCBvZz1hbGxnZW1laW5lcwp+IyEgcm49QmVvYmFjaHRlciBydD04NTU3NDQzODAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04NTU2NDAwOTMKRHUgdWViZXJzaWVoc3QgZWluZW4gZ2FueiB3aWNodGlnZW4gUHVua3Q6IFdvcmF1cyBnbGF1YnN0IER1IHNjaGxpZXNzc2VuIHp1CmtvZW5uZW4sIGRhc3MgQWNyaW1vbiBkZW4gVGV4dCB2b24gRGFuY2VyIHVlYmVyaGF1cHQgKHZvbGxzdGFlbmRpZykgZ2VsZXNlbgpoYXQ/IEF1cyBkZXIgQW50d29ydCBnZWh0IGRhcyBqZWRlbmZhbGxzIGluIGtlaW5zdGVyIFdlaXNlIGhlcnZvci4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCBtaXQgc2VpbmVtIHdvZWNoZW50bGljaGVuICJJY2ggc2NobGFnZSBhdWYgQWNyaW1vbiBlaW4iCi0gQXJ0aWtlbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGb3JtYXQgKEdyaW1tYm9ybiwgMTMuIEZlYiAxOTk3LCAxNDozNzoyMCk6Cn4jISBvbj1Tb2NyYXRlIG90PTg1NTc3MjQ5MyBvZz1hbGxnZW1laW5lcwp+IyEgcm49VGFtYXJhIHJ0PTg1NTc3MjE0NSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg1NTM0MjYwMgo/Pz8KSGFsbG8sCmtvZW5udGUgamVtYW5kIGJpdHRlIHNvIG5ldHQgc2VpbiwgdW5kIG1pciBkZW4gU2lubiBkaWVzZXMgQXJ0aWtlbHMgZXJrbGFlcmVuPwpEYW5rZSBpbSBWb3JhdXMKU29jcmF0ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTGllcyBtaWNoLCBEdSBTYXUhIChHcmltbWJvcm4sIDEzLiBGZWIgMTk5NywgMTQ6Mzc6MjYpOgp+IyEgb249V3VyemVsIG90PTg1NTc3Mjg4MiBvZz1hbGxnZW1laW5lcwp+IyEgcm49R3JpbW1ib3JuIHJ0PTg1NTc1MzI5OCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg1NTY0MDA5MwpobSwgZ3JpbW1ib3JuLi4uICJpbiBrZWluc3RlciBXZWlzZSIgPyB3YXMgc29sbCBkZW5uIGRhcyBzZWluPyBub2NoIGtlaW5lciBhbHMKa2Vpbj8gb2RlciB3ZW5pZ2VyIGFscyBnYXIga2Vpbj8gc2VpdCB3YW5uIGthbm4gbWFuIHNvd2FzIHN0ZWlnZXJuPyAKCnd1cnplbCBtaXQgZGVtIHdvZWNoZW50bGljaGVuICJpY2ggc2NobGFnZSBhdWYgZ3JpbW1ib3JuIGVpbiIgLSBhcnRpa2VsIDopKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGb3JtYXQgKEdyaW1tYm9ybiwgMTMuIEZlYiAxOTk3LCAxNDozNzozNik6Cn4jISBvbj1EYW5jZXIgb3Q9ODU1Nzc5MDYxIG9nPWFsbGdlbWVpbmVzCn4jISBybj1UYW1hcmEgcnQ9ODU1NzcyMTQ1IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODU1MzQyNjAyCkljaCBzYWdzIERpciBuaWNodCBnZXJuZSwgVGFtYXJhLi4uIER1IGJpc3QgYmVrbG9wcHQuIDotKQoKRGFuY2VyCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRm9ybWF0IChHcmltbWJvcm4sIDEzLiBGZWIgMTk5NywgMTQ6Mzc6NDQpOgp+IyEgb249R3JpbW1ib3JuIG90PTg1NTg0MDg1MyBvZz1hbGxnZW1laW5lcwp+IyEgcm49RGFuY2VyIHJ0PTg1NTc3OTA2MSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg1NTM0MjYwMgpJY2ggc2V0emUgbm9jaCBlaW5lbiBkcmF1ZjogV2VyIGFuZGVyZSBkdXJjaCBkZW4gS2FrYW8gemllaGVuIG1vZWNodGUsCmRhcmF1ZmhpbiBzZWxiZXIgZHVyY2ggZGVuIEtha2FvIGdlem9nZW4gd2lyZCwgb2ZmZW5iYXIgb2huZSBlcyB6dSBtZXJrZW4sIHVuZApzaWNoIGRhbm4gYmVzY2h3ZXJ0LCBkYXNzIGtlaW5lciBnZW1lcmt0IGhhZXR0ZSwgZGFzcyBkYXMgbnVyIGVpbiBTY2hlcnoKZ2V3ZXNlbiB3YWVyZSwgZGVyIGlzdC4uLiBqYSwgYmVrbG9wcHQuIDotKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBMaWVzIG1pY2gsIER1IFNhdSEgKEdyaW1tYm9ybiwgMTMuIEZlYiAxOTk3LCAxNDozNzo0OCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODU1ODQwOTQ1IG9nPWFsbGdlbWVpbmVzCn4jISBybj1XdXJ6ZWwgcnQ9ODU1NzcyODgyIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODU1NjQwMDkzCkphLCBpY2ggZ2ViZSB6dSwgZGFzIHdhciBuaWNodCBlYmVuIGRlciBvcHRpbWFsc3RlIEF1c2RydWNrIHdvIGdpYnQsIGFiZXIKaW1tZXIgbm9jaCBiZXNzZXIgd2llIHRvdGFsZSBTcHJhY2hsb3NpZ2tlaXQsIG9kZXI/CgpHcmltbWJvcm4gZGVyIEF0aGVpc3QgdmVybGVndCB3b2hsIG1hbCBiaXNjaGVuIHdhcyBuYWNoIHNjaG1hcnJuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbGFhYWcmc2NobWFycm4gKEtyZXRlaywgMTMuIEZlYiAxOTk3LCAxNzoxNzoxMyk6Cn4jISBybj1KYXNwZXIgcnQ9ODU1Nzk0MTMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU1Nzk0MTMwCkFlaG0uLi4gSWNoIHdvbGx0ZSBudXIgbWFsIGFubWVya2VuLCBkYXNzIGljaCBlcyBuaWNodCBnZXJhZGUgdG9wIGZpbmRlLAp3ZW5uIGluIHNvICduZW0gTG9nIEZpbmdlci1JbmZvcywgZGllIG5vcm1hbGVyd2Vpc2UgbnVyIE1hZ2llciB6dSBzZWhlbgpiZWtvbW1lbiwgZ2Vwb3N0ZWQgd2VyZGVuLgoKCiAgICAgICB8IC8gIHxcICB8LS0gIC0tLSAgfC0tICB8IC8KICAgICAgIHw8ICAgfC8gIHwtICAgIHwgICB8LSAgIHw8CiAgICAgICB8IFwgIHxcICB8LS0gICB8ICAgfC0tICB8IFwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbGFhYWcmc2NobWFycm4gKEdyaW1tYm9ybiwgMTMuIEZlYiAxOTk3LCAxNzozMTowNSk6Cn4jISBybj1LcmV0ZWsgcnQ9ODU1ODUwNjMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU1Nzk0MTMwCi4uLnZvbiBQZmFkbmFtZW4gZ2FueiB6dSBzY2h3ZWlnZW4uIEFiZXIgbWFsIGVocmxpY2gsIHdlciBoYXQgc2Nob24gZGllc2VzCmVsbGVubGFuZ2UgbG9nLCBkYXMgaGF1cHRzYWVjaGxpY2ggYXVzIExlZXJ6ZWlsZW4gYmVzdGFuZCwga2VpbmUgUG9pbnRlCmVudGhhZWx0LCBzY2hyZWNrbGljaCBmb3JtYXRpZXJ0IGlzdCBzbyB3ZWl0IGdlbGVzZW4sIGRhc3MgZGllc2UgQW5tZXJrdW5nZW4KcmVsZXZhbnQgd2FlcmVuPwoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdXRzY2ggOikgKEFuYXRvbCwgMTMuIEZlYiAxOTk3LCAyMTozNDowMyk6CgpGeXQgbGFlc3N0IDI0MDI2IE11ZW56ZW4gZmFsbGVuLgpQbG9jayB0cm90dGV0IGhlcmVpbi4KW1RydmVzOlRhZ2dhcl0gaGkKRWluIFJhZXViZXIgKEVsZiwgS2FlbXBmZXIpIG5pbW10IDI0MDI2IE11ZW56ZW4uCkVpbmUgUmFldWJlcmluIChFbGYsIFphdWJlcmVyKSBuaW1tdCAyNDAyNiBNdWVuemVuLgpFaW4gUmFldWJlciAoSG9iYml0LCBLYXJhdGVrYSkgbmltbXQgMjQwMjYgTXVlbnplbi4KRWluIFJhZXViZXIgKFp3ZXJnLCBLYWVtcGZlcikgbmltbXQgMjQwMjYgTXVlbnplbi4KRWluIFJhZXViZXIgKE1lbnNjaCwgS2xlcmlrZXIpIG5pbW10IDI0MDI2IE11ZW56ZW4uCkZ5dCBuaW1tdCAtOTYxMDQgTXVlbnplbi4KClJvb29vb29vb29vb2NodXMgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpyYWV1YmVyIChKYWYsIDEzLiBGZWIgMTk5NywgMjE6NDI6NDIpOgpzcwo+IFBsb2NrIHRyb3R0ZXQgaGVyZWluLgpFaW4gUmFldWJlciAoRWxmLCBLYWVtcGZlcikgbmltbXQgMjQwMjYgTXVlbnplbi4KRWluZSBSYWV1YmVyaW4gKEVsZiwgWmF1YmVyZXIpIG5pbW10IDI0MDI2IE11ZW56ZW4uCkVpbiBSYWV1YmVyIChIb2JiaXQsIEthcmF0ZWthKSBuaW1tdCAyNDAyNiBNdWVuemVuLgpFaW4gUmFldWJlciAoWndlcmcsIEthZW1wZmVyKSBuaW1tdCAyNDAyNiBNdWVuemVuLgpFaW4gUmFldWJlciAoTWVuc2NoLCBLbGVyaWtlcikgbmltbXQgMjQwMjYgTXVlbnplbi4KRHUga2FubnN0IFBsb2NrIG5pY2h0IG5laG1lbi4KRHUgbmltbXN0IC05NjEwNCBNdWVuemVuLgoKT2huZSBXb3J0ZS4KCkphZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2V0dHMgZGlhcnJob2UgKE9ldHRpLCAxNC4gRmViIDE5OTcsIDEyOjI1OjQ1KToKRG9ubmVyc3RhZywgMTMgRmVicnVhci4KCkF1ZnN0ZWhlbgpBcmJlaXRlbgpIZWltIEZhaHJlbgpFcyBpc3QgbmljaHRzIHBhc3NpZXJ0LCBJY2ggYmVrb21tZSBBbmdzdCwgZGFzcyBpY2ggbmFjaCBkZW4KQXVmcmVndW5nZW4gZGVyIGxldHp0ZW4gVGFnZSwgdmllbGxlaWNodCBkb2NoIGFsdCB3ZXJkZS4uLgpGZXJuc2VoZW4KTXVzaWsgaG9lcmVuCkxlc2VuClNjaGxhZmVuICgwLjE1KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIG1laXN0ZW4gVW5mYWVsbGUgcGFzc2llcmVuIGltIEhhdXNoYWx0Li4gKFplcGh5ciwgMTQuIEZlYiAxOTk3LCAxNjo0OToxOCk6CkViZW4gaW0gU3RydXY6CgpTaGl2YSBzY2hhZXJmdCBkaWUgS2xpbmdlIGVpbmVzIFJpdHVhbGRvbGNocywgYnp3LiBlciB2ZXJzdWNodCBlcyB3ZW5pZ3N0ZW5zLgpEdSBob2Vyc3QgZWluZSBnZXdhbHRpZ2UgRXhwbG9zaW9uISAKRGllIHplcmZldHp0ZW4gVWViZXJyZXN0ZSB2b24gTW9yZ2FyIGZhbGxlbiB2b20gSGltbWVsIQoKaW1tZXIgbm9jaCB6aXR0ZXJuZCwgWmVwaHlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprb21pc2NoZSBad2VpdGllcyAoSGFyZGlsLCAxNC4gRmViIDE5OTcsIDE3OjQ3OjI4KToKCkFsaW5lIHRlaWx0IERpciBtaXQ6IEljaCBzdGVoZSBncmFkIGJlaSBPcmt0b2V0ZXJzIFp3ZWl0aWUuCmZpbmRlIGFsaW5lCkR1IHNjaGF1c3QgdGllZiBpbiBkaWUgS3VnZWwsIGxhbmdzYW0gbG9lc3Qgc2ljaCBkZXIgbWlsY2hpZ2UgUmF1Y2ggaW4KaWhyIHVuZCBEdSBzaWVoc3QgOgpEYXMgT2Jlcmdlc2Nob3NzIHVudGVyc2NoZWlkZXQgc2ljaCB2b24gZGVtIHVudGVyZW0gUmF1bSBkb2NoIGVyaGVibGljaC4KSGllciBnaWJ0IGVzIGtlaW5lIFRoZWtlIG9kZXIgQmVkaWVudW5nLiBJbiBkZW0gUmF1bSBzdGVoZW4gZWluZmFjaCBudXIKV2FyZW5yZWdhbGUsIGRpZSB2b2xsIG1pdCB1bnRlcnNjaGllZGxpY2hzdGVuIEdlZ2Vuc3RhZW5kZW4gc2luZC4gQW4gamVkZW0KendlaXRlbiBzdGVodCAnSU1QT1JUSUVSVCcgZHJhbi4KRXMgc3RlaGVuIERpciBmb2xnZW5kZSBCZWZlaGxlIHp1ciBWZXJmdWVndW5nLgogICAgICAgIHplaWdlICAgICAgICAgICAgICAgICAgICBrYXVmZSA8Z2VnZW5zdGFuZD4gKG9kZXIgbnVtbWVyKQogICAgICAgIHplaWdlIHJ1ZShzdHVuZ2VuKSAgICAgICB2ZXJrYXVmZSA8Z2VnZW5zdGFuZD4KICAgICAgICB6ZWlnZSB3YWYoZmVuKSAgICAgICAgICAgdmVya2F1ZmUgYWxsZXMKICAgICAgICB6ZWlnZSB2ZXIoc2NoaWVkZW5lcykgICAgc2NoYWV0emUgPGdlZ2Vuc3RhbmQ+CkR1IGthbm5zdCBudXIgbmFjaCB1bnRlbiBnZWhlbi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHVudGVuLgpBbGluZS4KRWluIE11ZWxsc2NobHVja2VyLgoKCkFoIGphLiBGcnVlaGVyIG5hbm50ZSBtYW4gWndlaXRpZXMgd2VuaWdzdGVucyBub2NoICdWb2xrc2JhbmsnIG9kZXIgc28KYWVobmxpY2guCgotSGFyZGlsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2llIFJlY2h0IEh1bmRlIGhhYmVuIGtvZW5uZW4uLi4gKEthcm9sdXMsIDE0LiBGZWIgMTk5NywgMTk6MzM6NTApOgpsZXR6ZW5zIGJlaW0gaWRsZW4gaW4gRGplbGliZWJ5IG1pdCBBc21vZGlzCgpEdSBkZW5rc3QgICAuIG8gTyAoZXIgaXN0IHNvIHNjaG9lbiwgc28gZ3Jvc3Mgc28gc3RhcmspClplcmJlcnVzIHdpcmZ0IERpciBlaW5lbiBza2VwdGlzY2hlbiBCbGljayB6dS4KCiBBc21vZGlzIHNhZ3Q6IGloaCwgZ2xlaWNoIGhvbGUgaWNoIG5lbiB6d2VpdGkgOikKWmVyYmVydXMgZ2FlaG50IGhlcnp6ZXJyZWlzc2VuZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcm1lciBhc21vLi4uIChLYXJvbHVzLCAxNC4gRmViIDE5OTcsIDIwOjMxOjUwKToKWmVyYmVydXMgZ2lidCBlaW4ga3VyemVzIEJlbGxlbiB2b24gc2ljaC4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpMYXJzXSBDYXR3ZWF6bGUncyBSYWNoZSBoYXQgZ2VyYWRlIEFzbW9kaXMgdW1nZWJyYWNodC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDYXQqIHVuZCBkaWUgZG9vZmUgUGFsbWUgKEFzbW9kaXMsIDE0LiBGZWIgMTk5NywgMjE6MTU6MTIpOgpbQWxsZ2VtZWluOkNhdHdlYXpsZV0gdW5kZGFubnNhZ21pcndvZHVkZW52ZXJkYW1tdGVua29ldGVyZ2VzZWhlbmhhc3QhISEKW0FsbGdlbWVpbjpLYXJvbHVzXSBDQVQgISEhIGhpZXIgaXN0IGRlciBrb2V0ZXIgISEhIQpbQWxsZ2VtZWluOlJpbmdvcl0gQ2F0KiwgZGVyIEh1bmQgc2tyaXB0ZXQuIGljaCBoYWIgaWhuIHZlcmZvbGd0LCBhYmVyIGVyIHdhcgpbQWxsZ2VtZWluOlJpbmdvcl0gc2NobmVsbGVyIDooCltBbGxnZW1laW46S2Fyb2x1c10gZ290byBrYXJvbHVzICEhISA6LSkKW0FsbGdlbWVpbjpBc21vZGlzXSBrYXJvbHVzIGhhdCBkaWUgcGFsbWUgYmVpIHNpY2ggIQo+IENhdHdlYXpsZSBzY2hsZWljaHQgc2ljaCB2b24gaGludGVuIGFuIERpY2ggaGVyYW4uCkNhdHdlYXpsZSBzYWd0OiB3b3dvd293Ckthcm9sdXMgZ2lidCBEaXIgZGllIFBhbG1lLgpDYXR3ZWF6bGUgc2FndDogPz8/Pz8/Ckthcm9sdXMgc2FndDogREEgIQpLYXJvbHVzIGdyaW5zdC4KRHUgZ2lic3QgS2Fyb2x1cyBkaWUgUGFsbWUuCkR1IGRldXRlc3QgYXVmIEthcm9sdXMuCj4gW0FsbGdlbWVpbjpMdWddIEFsbGVzIHZvbGxlciBIdW5kZSBiZWkgRGlyIEthcm9sdXMKS2Fyb2x1cyBnaWJ0IERpciBkaWUgUGFsbWUuCkR1IGdpYnN0IEthcm9sdXMgZGllIFBhbG1lLgo+IEthcm9sdXMgZ2lidCBaZXJiZXJ1cyBkaWUgUGFsbWUuClplcmJlcnVzIGRyZWh0IGRlbiBLb3BmIHdlZy4KWmVyYmVydXMgbGFlc3N0IGRpZSBQYWxtZSBmYWxsZW4uCkNhdHdlYXpsZSBzYWd0OiB2ZXJhcnNjaHRtaWNobmljaHQhISEhCkthcm9sdXMgc2FndDogREEgISEgZGVyIEhVTkQgISEKWnVlcmkgd2lyZnQgRGlyIGVpbmVuIHNrZXB0aXNjaGVuIEJsaWNrIHp1LgpLYXJvbHVzIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpDYXR3ZWF6bGUgc2FndDogaWNod2lsbG1laW5lcGFsbWUhCltBbGxnZW1laW46S2V5IGdlaHQgbmUgUGFsbWUga2xhdWVuIDopXQo+IEthcm9sdXMgcm90Zmx0LgpLYXJvbHVzIHdhZWx6dCBzaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KRHUga2ljaGVyc3QuIChXaWUgYWxiZXJuIHZvbiBEaXIpCj4gQ2F0d2VhemxlIG5pbW10IGVpbmUgUGFsbWUuCltBbGxnZW1laW46Q2F0d2VhemxlXSBJQ0ggSEFCIFNJRSEhISEKW0FsbGdlbWVpbjpLYXJvbHVzXSBDYXR3ZWF6bGUgbmltbXQgZWluZSBQYWxtZS4KW0dyYXRzOk1vcmdhcl0gSGVyemxpY2hlbiBHbHVlaHN0cnVtcGYgQ2F0d2VhemxlIQpbQWxsZ2VtZWluOlNpbHZhbmFdIFNpY2hlciwgZGFzcyBlcyBrZWluZSBJbGx1c2lvbiBpc3Q/IDopClNlbWlyYSBrcmF0enQgc2ljaCBoaW50ZXIgZGVtIE9oci4KW0FsbGdlbWVpbjpMdWddIE9sZWUgb2xlZQpDYXR3ZWF6bGUgdW50ZXJzdWNodCBwZWlubGljaHN0IGdlbmF1IGRpZSBQYWxtZS4KQXN0YXIgZmFlbGx0IGF1cyBhbGxlbiBXb2xrZW4uCltBbGxnZW1laW46TW9yZ2FyIHN0YXJ0ZXQgZWluZSBMYW9sYS5dCltBbGxnZW1laW46S2V5IGdyaW5zdCBDYXQgYW4uXQpOaWxvbWlkZSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpbQWxsZ2VtZWluOktleSBiaWxkZXQgZGFzIEVuZGUgZGVyIExhb2xhXQpaZXJiZXJ1cyBrcmF0enQgc2ljaCBtaXQgZGVyIGxpbmtlbiBQZm90ZSBhbiBkZXIgTmFzZS4KQ2F0d2VhemxlIHNhZ3Q6IHZvZWxsaWcgemVyZmV0enQgZGFzIFRlaWwgOigKW0FsbGdlbWVpbjpSaW5nb3IgaHVlcGZ0IGluIGRlciBNaXR0ZSBhdWYgdW5kIGFiXQpEdSBzYWdzdDoga2Fyb2x1cyB3YXJzIDopCkthcm9sdXMgc2FndDogTkVJTiAhISEKW0FsbGdlbWVpbjpLZXkga2l0emVsdCBDYXQgc29sYW5nZSBiaXMgZXIgZGllIFBhbG1lIHdpZWRlciBmYWxsZW5sYWVzc3QgLi4uXQpLYXJvbHVzIHNhZ3Q6IGFzbW9kaXMKRHUgc2Fnc3Q6IGRvY2gKWnVlcmkgZ2FlaG50IGhlcnp6ZXJyZWlzc2VuZC4KW0FsbGdlbWVpbjpTaWx2YW5hXSBLZXkgaXN0IG1hbCB3aWVkZXIgZGFzXmheaGVyIGxldHp0ZS4uLgpbQWxsZ2VtZWluOkFsaW5lIG11c3MgbGFjaGVuLCBhbHMgc2llIHNpY2ggUmluZ29yIGFscyBHdW1taWJhbGwgdm9yc3RlbGx0XQpDYXR3ZWF6bGUgZ2VodCBkaWUgUGFsbWUgYmV3ZWluZW4uCkNhdHdlYXpsZSB2ZXJzdGVja3Qgc2ljaCBoaW50ZXIgRGVpbmVtIFJ1ZWNrZW4uCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpZSBiYXN0ZWwgaWNoIG1pciBlaW5lbiBNYWdpZXI/IChSaW5nb3IsIDE0LiBGZWIgMTk5NywgMjI6MzE6MTYpOgp1bnQgc3RlaW4KU29saWRlciBTdGVpbi4uLiBkb2NoIGhhbHQhIERhIGlzdCBlaW5lIEZhbGx0dWVyLgo+IEVpbmUgdm9sbGF1dG9tYXRpc2NoZSBUdWVyIG9lZmZuZXQgc2ljaCBtaXQgZWluZW0gbGVpc2VuICdTY2hpaWlpdCcuCk5hY2hkZW0gR3VsRHVrYXQgZHVyY2ggZGllIFR1ZXIgaGVyZWluIGdla29tbWVuIGlzdCwgc2NobGllc3N0IHNpY2ggZGllClR1ZXIgd2llZGVyIG1pdCBlaW5lbSBsZWlzZW4gJ1NjaHV1dXV0Jy4KCkRhcyBpc3QgVGltaW5nIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTW9pbiAoU29jcmF0ZSwgMTcuIEZlYiAxOTk3LCAxMDoxMjowNCk6Cn4jISBvbj1MdWcgb3Q9ODU2MDcyMzI1IG9nPWFsbGdlbWVpbmVzCgpBdWYgYmVzb25kZXJlbiBXdW5zY2ggdm9uIHVuc2VyZW0gVGV1ZmVsOgoKV0FTCgpCaXR0ZSBBc21vIDspCgpMdWcKClAuUy46IC0+IFNjaG1hcnJlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1vaW4gKEFzbW9kaXMsIDE3LiBGZWIgMTk5NywgMTM6NDc6MDkpOgp+IyEgcm49U29jcmF0ZSBydD04NTYxNzA3MjQgcmc9c2NobWFycm4KfiMhIHRpZD04NTYxNzA3MjQKSHVjaCwgd2llc28gdmVybGVndCBTb2NyYXRlIEFydGlrZWwgPyBJc3QgR3JpbW1ib3JuIGtyYW5rID8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1vaW4gKEhhcmRpbCwgMTcuIEZlYiAxOTk3LCAxMzo0ODo1MSk6Cn4jISBybj1Bc21vZGlzIHJ0PTg1NjE4MzYyOSByZz1zY2htYXJybgp+IyEgdGlkPTg1NjE3MDcyNAoKTm9lLCBTb2NyYXRlIHdpbGwgbmV1ZXIgSGlsZnMtU2hlcmlmZiB3ZXJkZW4uIEVyIGxvZ2d0IGphIGF1Y2ggUGFtcGVycyBhdXMsCndlbm4gZGllc2VyIGRlbiBnZWlzdHJlaWNoZW4gU2F0eiB2b24gc2ljaCBnaWJ0LCBlciB3dWVyZGUgYWxzIFNleHByYXhpcyBhbQpsaWVic3RlbiBkZW4gVmVya2VociBtaXQgODVqYWVocmlnZW4gU3RhbGluZ3JhZC1WZXRlcmFuZW4gYmV2b3J6dWdlbi4KRGFzIHBhc3N0IHNjaG9uIGFsbGVzIHp1c2FtbWVuLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZhbWlsaWVudHJhZ29lZGllID8gKFFpdGVzcywgMTcuIEZlYiAxOTk3LCAxNDoyNjozNSk6CgpEdSBydWZzdDogd28gaXN0IG1laW5lIGZhbWlsaWVlZWVlZSA/Pz8KPiBFaW4gbGF1dGVyIEtuYWxsIGhhbGx0IHZvbSBHZWJpcmdlIGhlcnVlYmVyLgpEdSBydWZzdDogb2guCgoKUUkqKiBhbHMgZWluemlnZSB1ZWJlcmxlYmVuZGUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBc21vZGlzLCAxNy4gRmViIDE5OTcsIDE1OjU4OjEyKToKW0FiZW50ZXVlcjpGcm9naHVudGVyXSBXZWlzcyBqZW1hbmQsIHdvIEljaCBkZW4gT3JkZW5zdm9yc3RlaGVyIGltIER1bmtsZW4KW0FiZW50ZXVlcjpGcm9naHVudGVyXSBPcmRlbiBmaW5kZSA/IEljaCBoYWIgaGllciBzY2hvbiB1bmFuZ2VuZWhtZQpbQWJlbnRldWVyOkZyb2dodW50ZXJdIEVyZmFocnVuZ2VuIGdlbWFjaHQgdW5kIHdpbGwgbmljaHQgbGFlbmdlciBibGVpYmVuIGFsZXMKW0FiZW50ZXVlcjpGcm9naHVudGVyXSBub2V0aWcgISA6KSA8MTU6NTI6MjM+CgpbVG9kOkxhcnNdIEVpbiBNb2VuY2ggZGVzIGR1bmtsZW4gT3JkZW5zIGhhdCBnZXJhZGUgRnJvZ2h1bnRlciB1bWdlYnJhY2h0LgpbVG9kOkxhcnNdIDwxNTo1NTo1MD4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNb2luIChTb2NyYXRlLCAxNy4gRmViIDE5OTcsIDE2OjAwOjE5KToKfiMhIHJuPUhhcmRpbCBydD04NTYxODM3MzEgcmc9c2NobWFycm4KfiMhIHRpZD04NTYxNzA3MjQKVGFjaCEKRXJzdGVucyB3aWxsIGljaCBuaWNodCBIaWxmcy1TaGVyaWZmIHdlcmRlbiwgendlaXRlbnMgaGFiZSBpY2ggbmljaHQgUGFtcGVycwphdXNnZWxvZ2d0LiBJY2ggaGF0dGUgamVtYW5kIGF1c2dlbG9nZ3QgKGRlbiBOYW1lbiB3ZWlzcyBpY2ggbmljaHQgbWVociwgYWJlcgplcyB3YXIgbmljaHQgUGFtcGVycyksIGRlciBtZWludGUgZWluZW4gV2l0eiBtaXQgQmVudXR6dW5nIHZvbiBOYXppcHJvcGFnYW5kYQp6dSBtYWNoZW4uIERhIGVzIG9mZmVuc2ljaHRsaWNoIHdhciwgZGFzcyBlcyBlaW4gV2l0eiBzZWluIHNvbGx0ZSwgaWNoIGFiZXIKYXVmIGRpZXNlbSBHZWJpZXQga2VpbiBTcGFzcyB2ZXJzdGVoZSBoYWJlIGljaCBpaG4gbWFsIGt1cnogYXVzZ2Vsb2dndC4KRWJlbnNvIGhhdCBkYXMgVmVybGVnZW4gdm9uIEFydGlrZWwgZGVyZW4gQXVzc2FnZSBlaW5kZXV0aWcgZ2VnZW4gTnVsbCBsYWV1ZnQKbml4IG1pdCBIaWxmc3NoZXJpZmYgenUgdHVuLCBzb25kZXJuIGFsbGVuZmFsbHMgbWl0IE11ZWxsbWFubi4gRWJlbnNvIGltCmVyc3RlbmZhbGwuClNvY3JhdGUgZGVyIE11ZWxsbWFubgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTW9pbiAoRnl0LCAxNy4gRmViIDE5OTcsIDE3OjUwOjA2KToKfiMhIHJuPVNvY3JhdGUgcnQ9ODU2MTkxNjE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU2MTcwNzI0CgpHaWJ0IGVzIGVpZ2VudGxpY2ggc293YXMgd2llICdpZ25vcmllcmUgc2NobWFycm4udmVybGVndC52b24uc29uc3R3b2hlcic/CgpEaWUgQXJ0aWtlbCBrcmllZ3QgbWFuIG5hZW1saWNoIG1laXN0IHdlaW1hbCBnZXplaWd0LCB1bmQgZWlubWFsIGxlc2VuCmlzdCBtZWlzdCBnYW56IGx1c3RpZy4uLgoKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGVybmVyZm9sZyAoUm9jaHVzLCAxNy4gRmViIDE5OTcsIDE5OjU0OjI4KToKTGVsbGRvcmluIG11c3N0ZSBlYmVuIGZlc3RzdGVsbGVuLCBkYXNzIE1hZ2llciBsZXJuZmFlaGlnIHNpbmQuCkxlbGxkb3JpbiBzY2hpZXNzdCBkZW4gUGZlaWwgZGFubiBkb2NoIG5hY2ggT3N0ZW4uCltUb2Q6TGFyc10gU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBoYXQgZ2VyYWRlIExlbGxkb3JpbiB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmFldWJlciAoUm9jaHVzLCAxNy4gRmViIDE5OTcsIDIxOjUyOjA1KToKTGF1cmluIHNhZ3Q6IGdlbGQgbGllZ3QgaW0gd2VzdGVuCkR1IHNhZ3N0OiBhdWYgZGVtIHRhbmt3ZWcgZGVyIHJhZXVlYnI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSYWV1YmVyZ2VidWVzY2ggKFNjaGF1aSwgMTcuIEZlYiAxOTk3LCAyMjozNDo1MCk6CnUgY2xhdXMKTmEsIHNvIHJpY2h0aWcgZ2x1ZWNrbGljaCB3aXJrdCBkZXIgSG9iYml0IGhpZXIgbmljaHQsIGltIEdlZ2VudGVpbDogRGFzIEJpZXIKc2NobWVja3Qgc2NoZXVzc2xpY2gsIGtlaW5lciB3aWxsIGVzIHNjaHVldHRlbG4sIERvcHBlbGtvcGYga29lbm5lbiBudXIgZGllCmJlaWRlbiBFbGZpbm5lbiB1bmQgYXVzc2VyZGVtIGZ1ZWhsdCBlciBzaWNoIGRpc2tyaW1pbmllcnQsIGRlbm4gZGllIFJhZXViZXIKCnJlZGVuIGlobiBtaXQgYGBCYWJlJycgYW4uIFZpZWxsZWljaHQgc29sbHRlIG1hbiBlcndhZWhuZW4sIGRhc3MgZGVyCnBhdXNiYWNraWdlIEJpZXJzY2h1ZXR0bGVyIG5pY2h0IHdlZ2VuIHNlaW5lciBmZXNjaGVuIFN0b3BwZWxmcmlzdXIgc28gZ2VuYW5udAp3aXJkIC0gc29uZGVybiB3ZWdlbiBzZWluZXMgc2VociBlZmZla3RpdmVuIEVyZCdiYWJlJ25zLiBWb24gT3J0aG9ncmFwaGllCndpcmQgLSBzb25kZXJuIHdlZ2VuIHNlaW5lcyBzZWhyIGVmZmVrdGl2ZW4gRXJkJ2JhYmUnbnMuIFZvbiBPcnRob2dyYXBoaWUKaGFiZW4gUmFldWJlciBrZWluZSBBaG51bmcsIGRhZnVlciBzaW5kIHNpZSBiZWdlaXN0ZXJ0ZSBOdW1pc21hdGlrZXIuLi4gRGVpbmUKTXVlbnplbiBmZWhsZW4gaW4gaWhyZXIgU2FtbWx1bmcgbm9jaC4uLiAKRXIgaXN0IGFic29sdXQgZml0LgpFciB0cmFlZ3QgYmVpIHNpY2g6CkVpbiBVbWhhbmcgYXVzIEJldHJhY2h0ZXJoYXV0IChhbmdlem9nZW4pLgpEaWUgUm9iZSBkZXMgZ2VsYmVuIEtvZW5pZ3MgKGFuZ2V6b2dlbikuCkVpbmUgS3Jpc3RhbGxrcm9uZSAoYW5nZXpvZ2VuKS4KRWluIFJpbmcgZGVyIEF1c2RhdWVyICgrMykgKGFuZ2V6b2dlbikuCkVpbmUgV2lsZGVyZXJob3NlIChhbmdlem9nZW4pLgoKRWluZSBXaWxkZXJlcmhvc2UgKGFuZ2V6b2dlbikuCkRpZSBLcmFsbGVuIEN0aHVsaHVzIChhbmdlem9nZW4pLgpFaW5lIEtvaGxlYnJvc2NoZSAoYW5nZXpvZ2VuKS4KRWluZSBGZXVlcmtldWxlLgpFaW4gc2NobGljaHRlciBLYW1wZnN0YWIuCgoxMSBTYWV1cmViYWVsbGUuCkVpbiBIb2JiaXR1bWhhbmcuCkVpbmUgUmFldWJlcmhvc2UuCkVpbiBSaW5ncGFuemVyLgpFaW4gTGVkZXJzY2hpbGQgKGFuZ2V6b2dlbikuCkVpbiBNZXRhbGxoZWxtLgpFaW4gc2NoYXJmZXMgS3VyenNjaHdlcnQuCjE4NjcgTXVlbnplbi4KCgpNZWdhcmdsClNjaGF1aSA6KAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZm9ydHVuZSAoR3JpbW1ib3JuLCAxOC4gRmViIDE5OTcsIDEzOjI5OjA5KToKTmFjaGRlbSBpY2ggbWljaCB3aWVkZXIgZXR3YXMgZ2VmYW5nZW4gaGFiZSB3aWxsIGljaCBldWNoIGRhcyBoaWVyIGljaHQKdm9yZW50aGFsdGVuOgoKSSB3YXMgd29ya2luZyBvbiBhIGNhc2UuICBJdCBoYWQgdG8gYmUgYSBjYXNlLCBiZWNhdXNlIEkgY291bGRuJ3QgYWZmb3JkIGEKZGVzay4gIFRoZW4gSSBzYXcgaGVyLiAgVGhpcyB0YWxsIGJsb25kIGxhZHkuICBTaGUgbXVzdCBoYXZlIGJlZW4gdGFsbApiZWNhdXNlIEkgd2FzIG9uIHRoZSB0aGlyZCBmbG9vci4gIFNoZSByb2xsZWQgaGVyIGRlZXAgYmx1ZSBleWVzIHRvd2FyZHMKbWUuICBJIHBpY2tlZCB0aGVtIHVwIGFuZCByb2xsZWQgdGhlbSBiYWNrLiAgV2Uga2lzc2VkLiAgU2hlIHNjcmVhbWVkLiAgSQp0b29rIHRoZSBjaWdhcmV0dGUgZnJvbSBteSBtb3V0aCBhbmQga2lzc2VkIGhlciBhZ2Fpbi4KCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QgbGllYnQgZGFzIGZvcnR1bmUtUHJvZ3JhbW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBLID8/IChBc21vZGlzLCAxOC4gRmViIDE5OTcsIDEzOjQ4OjUwKToKW0FsbGdlbWVpbjpTdW5mbG93ZXJdIEVTU1NTIFdBQUFSUiBTT01NTUVSUlIgVU5OREREIERJRUVFIFNPT09OTk5ORUVFCltBbGxnZW1laW46U3VuZmxvd2VyXSBTQ0hISUlJRUVFTk5OTiBVTk5EREQgREFBQSBUUkFBRkZGRiBJQ0NISEggRElFRUVFU1NTRUUKW0FsbGdlbWVpbjpTdW5mbG93ZXJdIEJJRUVFTk5ORUVFIDwxMzo0NToyMj4KW0FsbGdlbWVpbjpGbGludG5haWxdIGR1IG1laW5zdCBkaWUgQmllbmUgdHJhZiBkaWNoISA8MTM6NDU6NDI+CltBbGxnZW1laW46U3VuZmxvd2VyXSBVTk5ERCBESUVTU1NFIEJJSUlFRUVOTk5FIERESUlFRSBJQ0hISCBNRUlOTk5FRSBESUVFRQpbQWxsZ2VtZWluOlN1bmZsb3dlcl0gSEVJU1NTVCBNQUFBSkpBQUEuLi4gOi0pKSkgPDEzOjQ1OjQ0PgpbQWxsZ2VtZWluOktlbXAgd3VuZGVydCBzaWNoIHVlYmVyIGRhcyBuZXVlIGxpZWQgZGFzIFN1bmZsb3dlciBnZXJhZGUKICAgICAgICAgICBrb21wb25pZXJ0IGhhdCA8MTM6NDU6NTI+XQouLi4KW1RvZDpMYXJzXSBXYWhuc2lubiBoYXQgZ2VyYWRlIEJyb2RhciB1bWdlYnJhY2h0LiA8MTM6NDY6NDQ+CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChHcmltbWJvcm4sIDE4LiBGZWIgMTk5NywgMTY6MTU6NDQpOgpbQWxsZ2VtZWluOkNlbGViZGlsXSBob3BwbGEsIDEwIExQCltUb2Q6TGFyc10gRWluIEZldWVyZ2Vpc3QgaGF0IGdlcmFkZSBDZWxlYmRpbCB1bWdlYnJhY2h0LgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChDYXJhZGhyYXMsIDE4LiBGZWIgMTk5NywgMTY6MTk6MTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg1NjI3ODk0NCByZz1zY2htYXJybgp+IyEgdGlkPTg1NjI3ODk0NApCbG9lZGUgSHlkcmEsIHN0YW5kIGdlbmF1IGRhIGJlaW0gTmViZWwgYWxzIGljaCByYXVmIHdvbGx0ZS4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxldHp0ZSBXb3J0ZSAoSXZvLCAxOC4gRmViIDE5OTcsIDE4OjIyOjU2KToKQmFyYmFyYXJhIHRlaWx0IERpciBtaXQ6IGRlbiB0ZW1wZWxkcmFjaGUgbXVzcyBpY2gga2lsbGVuPwpUb2QgRWluIFRlbXBlbGRyYWNoZSBoYXQgZ2VyYWRlIEJhcmJhcmFyYSB1bWdlYnJhY2h0LgpUb2QgRXMgd2FyIG1pciBlaW5lIEZyZXVkZSA6KQoKSXZvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPZXR0cyBkaWFycmhvZSAoT2V0dGksIDE4LiBGZWIgMTk5NywgMTk6NDc6NTIpOgpGcmVpdGFnLCAxNCBGZWJydWFyCgpBdWZzdGVoZW4KQXJiZWl0ZW4KSGVpbSBmYWhyZW4KQWJlbmRnZXN0YWx0dW5nLi4uCkVzIGlzdCBGcmVpdGFnLCBpY2ggYmVzY2hsaWVzc2UsIGVzIHdpcmQgZWluIGdlbXVldGxpY2hlciAKQXVmdGFrdCBmdWVyIGVpbiBnZW11ZXRsaWNoZXMgV29jaGVuZW5kZS4KQWxkaTogRmxhc2NoZSBCb3JkZWF1eCwgMy41OSwgMTIgVW1kcmVodW5nZW4uCkJpbGxpZ2VyIFN1ZmYgbWl0IGVydHJhZ2JhcmVtIEdlc2NobWFjay4uLgoKRmxhc2NoZSBoYWxiIGdlbGVlcnQsIFppZ2FyZXR0ZW4gc2luZCBhbGxlLCBkZXIgZXJmb2xncmVpY2hlCkp1bmdha2FkZW1pa2VyIHNjaGx1c3Nmb2xnZXJ0IE1lc3NlcnNjaGFyZjoKIktpYmJuIGthYWF1dXV1dXVmZW4iCgpHZXNhZ3QsIGdldGFuLCBnbHVlY2tsaWNoZXJ3ZWlzZSBmaW5kZXQgc2ljaCBlaW4gcGFzc2VuZGVzCkZ1ZW5mbWFya3N0dWVjay4KClZvbGwgdm9uIGZyZXVkaWdlciBFcndhcnR1bmcgZGVyIGJldm9yc3RlaGVuZGVuCkRlZmxvcmF0aW9uIGVpbmVyIFNjaGFjaHRlbCBaaWdhcmV0dGVuIHNjaG1laXNzIGljaCBkaWUgCk11ZW56ZSBpbiBlaW5lbiBkZXIgdmllbGVuIFNjaGxpdHplLi4uZXJmb2xncmVpY2guLi4gCkF1ZiBkZW0gV2VnIHp1cnVlY2sgaW4gZWluZW0gbGljaHRlbiBNb21lbnQgYmxpdHp0CmRpZSBGb3JtIGVpbmVzIFNjaGx1ZXNzZWxidW5kZXMgZHVyY2ggbWVpbiBIaXJuLgpEZXIgc29mb3J0IGZvbGdlbmRlIFJlZmxleCBpc3QgZGVyIEdyaWZmIGluIG1laW5lIFRhc2NoZW4uLi4KCipsZWVyKgoKKmtvbnplbnRyaWVyZW4qCgoqZ3JlaWZlbioKCipsZWVyKgoKSWNoIHZlcmZsdWNoZSBtaWNoLCBkaWUgWmlnYXJldHRlbiwgQWxkaSwgZGllIGZyYW56b2VzaXNjaGUgV2VpbmluZHVzdHJpZQp1bmQgcHJ1ZWZlIGRlbiBTdGF0dXMgbWVpbmVyIEZlbnN0ZXIuLi5nZXNjaGxvc3Nlbi4uLgoqZWludHJldGVuKi4uLmZpbmFuemllbGxlcyB1bmQgc296aWFsZXMgRGVzYXN0ZXIuLi4KKEljaCB3b2huZSBpbiBlaW5lciBkb2VyZmxpY2hlbiBHZWdlbmQsIGluIGRlciBpY2ggYWxsZWluIGRlc2hhbGIKc2NoaWVmZSBCbGlja2UgZXJudGUsIHdlaWwgaWNoIGFscyBNYW5uIGtvY2hlbiBrYW5uICpzdXNwZWt0KikKCkdsdWVja2xpY2hlcndlaXNlIGtvbW10IG1laW5lIHBvbG5pc2NoZSBOYWNoYmFyaW4gKEF1IHBhaXIpIGdlcmFkZSBtaXQgaWhyZW0KRnJldW5kIG5hY2ggSGF1cy4KVW5nbHVlY2tsaWNoZXJ3ZWlzZSBoYXQgbWljaCBtZWluIFNwcmFjaHplbnRydW0gdm9yIGdlcmF1bWVyIFplaXQgaW0KU3RpY2ggZ2VsYXNzZW4uCgpJY2ggc2FnZToiU2NobGxsbGxsdWVzc3Nzc2VsLCBUdWVyLCBzc3N1LiIKU2llIHZlcnN0ZWh0IHVuZCBncmluc3QsIG9kZXIgdW1nZWtlaHJ0LgpTaWUgYml0dGV0IG1pY2ggcmVpbiB1bmQgZnJhZ3QgbWljaCBvYiBpY2ggc2Nob24gdmVyc3VjaHQgaGFldHRlCmRpZSBWZXJtaWV0ZXIgYW56dXJ1ZmVuLi4uCkphIGtsYXIsIGljaCBoYWIgZGFzIEZlbnN0ZXIgZWluZ2V0cmV0ZW4gdW0gYW56dXJ1ZmVuLCBkYXNzIG1hbiBtaXIKZWluZW4gU2NobHVlc3NlbCBicmluZ3QuIEJldm9yIGljaCBtaWNoIGF1ZnJlZ2VuIGthbm4sIGRydWVja3Qgc2llIG1pciBlaW4gCkhhbmR5IGluIGRpZSBIYW5kLgpJY2ggc3ByZWNoZSBfZXh0cmVtXyBsYW5nc2FtIHVuZCBhcmRpaWd1bGllZXJ0LgpEZXIgVmVybWlldGVyIGZyYWd0IG1pY2gsIG9iIGljaCBtaXQgZGVtIEF1dG8gZGVuIFNjaGx1ZXNzZWwgYWJob2xlbgprb2VubnRlLi4uCkljaCBlcmtsYWVyZTogQXV0byA9IFNjaGx1ZXNzZWwsIE9ldHRpICE9IFNjaGx1ZXNzZWwsIGVyIHZlcnN0ZWh0LgppY2ggaG9lcmUgZWluLCBobmdsbGxsIGljaCBrb21tZSB1bmQgZnJldWUgbWljaC4KSmV0enQga29tbXQgZGVyIHNjaHdpZXJpZ2UgVGVpbCwgbWVpbmUgTmFjaGJhcmluIHN0YXJ0ZXQgZGVuIFZlcnN1Y2ggZWluZXIKS29udmVyc2F0aW9uLCBpY2ggYXVjaCwgc2llIHNwcmljaHQgRGV1dHNjaCwgc2VociBndXQgc29nYXIuLi4KSWNoIG5pY2h0Li4uCgpNZWluIFZlcm1pZXRlciBrb21tdCwgc2NobGllc3N0IGF1ZiwgaWNoIGJpbiBzZWVlaHIgZGFua2JhciwgZXIgbGFlY2hlbHQKdW5kIGdlaHQgc2NobmVsbCB3aWVkZXIsIHdvaGwgdW0gbWVpbmVuIERhbmtlc2t1ZXNzZW4genUgZW50Z2VoZW4uLi4Kc2VsdHNhbS4KCkljaCBzdHJhZmUgQWxkaSwgZGllIGZyYW56b2VzaXNjaGUgUm90d2VpbmluZHVzdHJpZSB1bmQgbWljaCwgaW5kZW0KaWNoIGRlbiBSZXN0IGRlciBGbGFzY2hlbiBnbmFkZW5sb3MgYXVzdHJpbmtlLgoKU2NobGFmZW4gKD8uPz8pCgpTYW1zdGFnLCAxNSBGZWJydWFyCgoqS29wZnNjaG1lcnplbioKClNvbm50YWcsIDE2IEZlYnJ1YXIgCgpTaWVoZSBTYW1zdGFnLi4uClNvbm50YWcsIDE2IEZlYnJ1YXIgCgpTaWVoZSBTYW1zdGFnLi4uCiAuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJmZWhsdCAoQ2F0d2VhemxlLCAxOC4gRmViIDE5OTcsIDIwOjE5OjM0KToKRWlnZW50bGljaCBidWdneSwgb2Rlcj8KCnRtIGNhdHdlYXpsZSBMQVNTIERBUyEhIQpDYXR3ZWF6bGUgdGVpbHQgRGlyIG1pdDogTEFTUyBEQVMhISEKRHUgdGVpbHN0IENhdHdlYXpsZSBtaXQ6IExBU1MgREFTISEhCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWZXJmZWhsdCAoR3JpbW1ib3JuLCAxOC4gRmViIDE5OTcsIDIwOjM1OjMyKToKfiMhIHJuPUNhdHdlYXpsZSBydD04NTYyOTM1NzQgcmc9c2NobWFycm4KfiMhIHRpZD04NTYyOTM1NzQKTm9lLCBEaXIgbXVzcyBtYW4gZG9jaCBpbW1lciBhbGxlcyBkcmVpbWFsIHNhZ2VuLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWZXJmZWhsdCAoRnl0LCAxOC4gRmViIDE5OTcsIDIxOjU4OjAzKToKfiMhIHJuPUNhdHdlYXpsZSBydD04NTYyOTM1NzQgcmc9c2NobWFycm4KfiMhIHRpZD04NTYyOTM1NzQKSGV5LCBuaWNodCBhdXNiYXVlbi4uLiB3aWUgc29sbCBtYW4gc2ljaCBzb25zdCB1bnRlcmhhbHRlbj8KCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPZXR0cyBkaWFycmhvZSAoTmFzaW0sIDE4LiBGZWIgMTk5NywgMjM6MjA6MjYpOgp+IyEgcm49T2V0dGkgcnQ9ODU2MjkxNjcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU2MjkxNjcyCkR1IHZlcnRyYWVnc3QgYWJlciBhdWNoIGdhciBuaXggLi4uCgo+IE5hc2ltIHRhZXRzY2hlbHQgT2V0dGkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGluIGRlciBFbGZlbmtuZWlwZSAoU2NobGlwcywgMTguIEZlYiAxOTk3LCAyMzoyNTowNik6CgpOZXVsaWNoIGluIGRlciBFbGZlbmtuZWlwZToKCkVpbmUgR2FlcnRuZXJpbiBrb21tdCBhbi4KRGllIEdhZXJ0bmVyaW4gZW50ZmVybnQgZWluZW4gTWF1bHd1cmZodWVnZWwuCgpNb3JlbGxhPz8/PwoKU2NobGlwcyBncnVlYmVsdCBub2NoIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWxpY2ggaW4gZGVyIEVsZmVua25laXBlIChXdXJ6ZWwsIDE4LiBGZWIgMTk5NywgMjM6MjY6MjEpOgp+IyEgcm49U2NobGlwcyBydD04NTYzMDQ3MDYgcmc9c2NobWFycm4KfiMhIHRpZD04NTYzMDQ3MDYKc2NoaWNrIGRpZSBnYWVydG5lcmluIGRvY2ggbWFsIHp1IHRyeWZhbi4uLiBkYXMga29lbm50ZSBhZXJnZXIgZ2ViZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJldm9yIGljaCBnYW56IGF1cyBkZXIgVWVidW5nIGtvbW1lLi4uIChHcmltbWJvcm4sIDE5LiBGZWIgMTk5NywgMTI6MTM6NDgpOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIGhpZXIgZGVyIFNwcnVjaCBkZXIgV29jaGU6CgoiRXMgZ2lidCB6d2VpIFRyYWdvZWRpZW4gaW0gTGViZW4uIERpZSBlaW5lIGlzdCwgbmljaHQgYWxsZXMgenUga3JpZWdlbiB3YXMKbWFuIHNpY2ggd3VlbnNjaHQuIERpZSBhbmRlcmUgaXN0IGVzIHp1IGtyaWVnZW4uIiAoRy5CLiBTaGF3KQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3dhcyAoS2FyYXRla2lkLCAxOS4gRmViIDE5OTcsIDEzOjQ1OjMwKToKU2hhcmlhIHZlcm5laWd0IHNpY2ggdm9yIEp1c3VmZiwgRGlyLCBOaWUgdW5kIEFya3NoYXQuCkp1c3VmZiBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgSnVzdWZmLgoKClNoYXJpYSBoYXQgamEgbmUgV2lya3VuZyBhdWYgQW5kZXJlIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYXJkaWwgKFNpZG9saW4sIDE5LiBGZWIgMTk5NywgMTU6NDA6MzEpOgo+IG5uCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCj4gSGFyZGlsICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gSGFyZGlsIGluIFJ1YnJpayAic2VoZXIuZW50d2lja2x1bmciLgpubgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0LgoKClNpZG9saW4uIEZyb2gsIGRhc3MgZXIgbmljaHQgbWVociBOTkFEVzogImhhcmRpbCBmaWVsIGtlaW4gbmV1ZXIgVW5zaW5uIGVpbiIKaGF0LCB3ZWlsIGVyIGRhbm4gZW5kZ3VlbHRpZyB2ZXJ3aXJydCB3YWVyZS4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpjb29sIChHcmFsa29yLCAxOS4gRmViIDE5OTcsIDE2OjA4OjUyKToKSGloaS4KV2VubiBhbGxlcyBTTyBzY2huZWxsIGdpbmdlLi4uClZvbGxlciBOYW1lOiBNaXNjaGthIGRlciBLYXJhdGUtS2FlbXBmZXIsIDYuIEt5dSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKUmFzc2U6IFp3ZXJnLCAgR2lsZGU6IEthcmF0ZSwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaCAgICAgICAgICAgICAgICAgICAgICAgICAgCgpTcGllbGVybGV2ZWw6IDIsICAgR2lsZGVubGV2ZWw6IDQgICAKCkdyYWxrb3IsIGF1Z2Vuendpbmtlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogY29vbCAoRGhvamFrdCwgMjAuIEZlYiAxOTk3LCAwMTo1ODo0OSk6Cn4jISBybj1HcmFsa29yIHJ0PTg1NjM2NDkzMiByZz1zY2htYXJybgp+IyEgdGlkPTg1NjM2NDkzMgpobSwgdW5kIHdvIGlzdCBkYWJlaSBkYXMgcHJvYmxlbSBvZGVyIGRpZSBwb2ludGU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMZXR6dGUgV29ydGUgZGllIDIuIChTY2hhdWksIDIwLiBGZWIgMTk5NywgMDI6NDA6NTUpOgpEdSB0ZWlsc3QgRXpvIG1pdDogc2Nod2ltbWUgdwpFem8gdGVpbHQgRGlyIG1pdDogYXJnbCwgd2lldmllbCBscCdzIHZlcmxpZXJ0IG1hbiBkYWJlaT8KRXpvIGZhZWxsdCB2b20gSGltbWVsIHVuZCBibGVpYnQgYmVub21tZW4gbGllZ2VuIC0gb2RlciBnYXIgdG90PwpFem8gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpMYXJzXSBFaW4gdGllZmVyIFN0dXJ6IGhhdCBnZXJhZGUgRXpvIHVtZ2VicmFjaHQuCltUb2Q6RWluIHRpZWZlciBTdHVyel0gV2lyIGhvZmZlbiwgc2llIGhhdHRlbiBlaW5lbiBndXRlbiBGbHVnIHVuZCBiZWVocmVuIFNpZQpbVG9kOkVpbiB0aWVmZXIgU3R1cnpdIHVucyBiYWxkIHdpZWRlciEKW0JlaWxlaWQ6Q3JvbGxhXSBCZWlsZWlkCgpEaWVzIHp1bSBUaGVtYSBzaWNoZXJlciBXZWcgYXVzIHRhcmFtaXMgaGVyYXVzIDooCgpTY2hhdWkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9vZXJwcnVzIChTaWRvbGluLCAyMC4gRmViIDE5OTcsIDE5OjM0OjMyKToKWW9naWJhZXIgc2FndDogV2lsbHN0ZSBqZXR6dCB6dW0gRnJvc3R3dXJtIG9kZXIgbmljaHQgPwpPb2VycHJ1cyBzYWd0OiBKYSBpY2ggd2lsbCAhISEhISEhISEhISEhISEhIQpZb2dpYmFlciBzYWd0OiBGb2xnZSBtaXIKLXRvKwpEdSBiZXRyaXR0c3QgZGllIEViZW5lICdUb2QnLgpZb2dpYmFlciBiZXRyYWV1ZmVsdCBkZWluIEhlcnogbWl0IGVpbmlnZW4gVHJvcGZlbiBBY2V0eWxjaG9saW4gdW5kCnZlcnNjaHdpbmRldCBoYWVtaXNjaCBncmluc2VuZCBuYWNoIFdlc3Rlbi4KCmVpbmlnZSBNaW51dGVuIHNwYWV0ZXI6CgpbVG9kOkxhcnNdIEVpbiBGcm9zdHd1cm0gaGF0IGdlcmFkZSBPb2VycHJ1cyB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIFJ1ZiBkZXMgQm9iby4uLiAoQW5hdG9sLCAyMS4gRmViIDE5OTcsIDEzOjAzOjI1KToKCkJvQm8gd2lyZCBoZXJlaW5nZXN0cmV1dC4KS3lyaW8gRWxlaXNvbiB6aWVodCBlaW5lbiAnQ2F0d2VhemxlIGZvciBTaGVyaWZmJy1CdXR0b24gYW4uCgoKSG0sIHZvciB3YXMgaGF0IEt5cmlvIEFuZ3N0PyA7LSkKQW5hdG9sLCBncmluc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaW53ZWlzIChHcmltbWJvcm4sIDIxLiBGZWIgMTk5NywgMTU6MzE6MTYpOgp+IyEgb249R3JpbW1ib3JuIG90PTg1NjUzMzc3MCBvZz1hbnplaWdlbgpGdWVyIGRlbiBGYWxsLCBkYXNzIGplbWFuZCBwdWl6IGFiYmVzdGVsbHQgaGFiZW4gc29sbHRlOiBEYSBpc3QgamV0enQgZWluCnRvdGFsIHRvbGxlcyBQdWl6IGRyaW4gdm9uIG1pciwgbmljaHQgenUgc2Nod2VyLCBuaWNodCB6dSBzcGV6aWVsbCwgZWluIFB1aXosCndvIGRpZSBnYW56ZSBGYW1pbGllIG1pdG1hY2hlbiBrYW5uLiBNaXQgdG90YWwgdmllbGVuIHRvdGFsIHRvbGxlbiBQcmVpc2VuLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IGluIFZvcnBhcnR5bGF1bmUuIE9kZXIgc28uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDI0LiBGZWIgMTk5NywgMTE6MDE6NTcpOgoiV2VubiBEdSB3aXNzZW4gd2lsbHN0LCB3aWUgZGVyIFdlZyB2b3IgRGlyIGF1c3NpZWh0LCBmcmFnZSBkaWUsIGRpZSBpbiBkaWUKYW5kZXJlIFJpY2h0dW5nIGdlaGVuLiIgKGNoaW5lc2lzY2gpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9ya3MgaW4gZGVyIENoYW9zZ2lsZGUgKFJpbXVzLCAyNC4gRmViIDE5OTcsIDE2OjEwOjAyKToKRGllc2VyIE9yayBnZWhvZXJ0IHp1ciBTdGFkdHdhY2hlLiBFciBwYXRyb3VsbGllcnQgZHVyY2ggZGllIGdhbnplIFN0YWR0IHVuZCAgCmFjaHRldCBkYXJhdWYsIGRhc3MgbmllbWFuZCBlaW5lIFN0cmFmdGF0IGJlZ2VodC4gRHUgZGVua3N0IGFuIGRpZSBXYWNoZW4gaW4KTW91bG9raW4sIGRpZSBEaXIgdmllbCBzdGFlcmtlciBpbiBzY2htZXJ6bGljaGVyIEVyaW5uZXJ1bmcgc2luZC4gQWJlciBoaWVyCnNjaGVpbnQgaGFsdCBkaWVzZSBBdXNydWVzdHVuZyB6dSByZWljaGVuLCBkaWUgZGVyIE9yayBtaXQgc2ljaCB0cmFlZ3QgdW5kCmF1Y2ggc2ljaGVyIGd1dCBlaW56dXNldHplbiB3ZWlzcy4gQXVmZ3J1bmQgc2VpbmVyIEF1c2JpbGR1bmcgd2Vpc3MgZXIKbmF0dWVybGljaCBhdWNoLCB3aWUgbWFuIGJlc3NlcmUgUnVlc3R1bmcgdW5kIFdhZmZlbiBiZW51dHp0LiBHaWIgaWhtIGVpbgpndXRlcyBTY2h3ZXJ0IHVuZCBlciB3aXJkIGVzIG1pdCBGcmV1ZGUgenVlY2tlbi4KRXIgYnJhdWNodCBkcmluZ2VuZCBlaW5lbiBBcnp0LgpFciB0cmFlZ3QgYmVpIHNpY2g6CjEwIFd1cmZzdGVybmUuCkRlaW5lIGNoYW90aXNjaCBtdXRpZXJ0ZSBIYXV0LgpTY2hsYWdyaW5nIChhbmdlem9nZW4pLgpFaW4gR2kgKGFuZ2V6b2dlbikuCkVpbiBzY2h3YXJ6ZXIgR3VlcnRlbCAoYW5nZXpvZ2VuKS4KNjM1IE11ZW56ZW4uClVuZCBuZWJlbmJlaSBub2NoIGluIGRlciBLYXJhdGVnaWxkZSwgc2luZCBkZW5uIHNlY29uZF9ndWlsZCdzIHNjaG9uCmVpbmdlZnVlaHJ0ID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWVyIEZyZXN6aWRlbnQgKEdyaW1tYm9ybiwgMjQuIEZlYiAxOTk3LCAxNjoyNToyNyk6Ck5hY2hkZW0gaWNoIG9mZml6aWVsbCBpbiBmcmVpZXIsIGdlaGVpbWVyIHVuZCBvZWZmZW50bGljaGVyIFdhaGwgenVtIG5ldWVuCkZyZXN6aWRlbnQgZ2V3YWVobHQgd29yZGVuIGJpbiBoaWVyIG1laW4gdm9ybGFldWZpZ2VzIEthYmluZXR0OgpGcmVzemlkZW50IHVuZCBNdXNpa3ZlcndhbHRlciB1bmQgdWViZXJoYXVwdDogR3JpbW1ib3JuIGRlciBBdGhlaXN0CkF1c3Nlbm1pbmlzdGVyIChtdXNzIGRpcGxvbWF0aXNjaCB1bmQgZmVpbmZ1ZWhsaWcgc2Vpbik6IFN1bmZsb3dlcikKTWluaXN0ZXIgZnVlciBGcmF1ZW4sIEZhbWlsaWUsIGdlZ2VuIEp1bmdlbmQgdW5kIE9yZ2FuaXNhdG9yIGRlcyBvcmdhbmktCiAgIHNpZXJ0ZW4gVmVyYnJlY2hlbnM6IE9ldHRpCklubmVubWluaXN0ZXIgbWl0IGRlciBBdWZnYWJlLCBlaW5lIHNjaGxhZ2tyYWVmdGlnZSBTY2h1dHpzdGFmXldQb2xpemVpIHp1CiAgIHNjaGFmZmVuIHNvd2llIGRpZSBCYWhuaG9lZmUgc2F1YmVyIHp1IGhhbHRlbjogUGFtcGVycwpLdWx0dXNtaW5pc3RlciB1bmQgV2FocmVyIGRlciByZWluZW4gU3ByYWNoZTogQWNyaW1vbgpGaW5hbnptaW5pc3RlcjogU2NoYXVubWVybWFsCkRlcHAsIFBydWVnZWxrbmFiZSB1bmQgUGxheWVya2lsbGVyOiBCb2luZwoKV2VpdGVyZSBWb3JzY2hsYWVnZSBiaXR0ZSBhbiBtaWNoLgoKRnJlc3ppZGVudCBHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVyd2VpdGVydW5nIGRlcyBLYWJpbmV0dHMgKEdyaW1tYm9ybiwgMjQuIEZlYiAxOTk3LCAxNjozNzozNCk6CkJpbGR1bmdzbWluaXN0ZXIgaXN0IEtyZXRlaywgd2VpbCBlciBoaW5yZWljaGVuZCBlaW5nZWJpbGRldCBpc3QuCkdlc3VjaHQgd2lyZCBlaW4gQmF1bWluaXN0ZXIgbWl0IGF1c3JlaWNoZW5kZW4gTFBDLUtlbm50bmlzc2VuLCBhdWYgZGVuIG1hbgpkaWUgUHJvZ3JhbW1pZXJ1bmcgZWluaWdlciB1bmJlZGV1dGVuZGVyLCB1bmQgYmFscyBhdWNoIGxhZ2FsIHNlaWVuZGVyIERpbmdlCmFid2FlbHplbiBrYW5uLiBJbW1lciBmcmlzY2ggYmV3ZXJiZW4sIGVpbnppZ2UgVm9ycmF1c3NldHp1bmdlbiBzaW5kCk1hZ2llcmxldmVsID4gMjAgdW5kIEdld2lzc2VubG9zaWdrZWl0IQoKRnJlc3ppZGVudCBHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZpbmFuem1pbmlzdGVyaW4gZ2VmdW5kZW4hIChHcmltbWJvcm4sIDI0LiBGZWIgMTk5NywgMTc6NDY6NTUpOgpXaXIgaGFiZW4gZWluZSBGaW5hbnptaW5pc3RlcmluISBDeXJhIGlzdCBkdXJjaCBlaW5lIFJlY2hudW5nc3dlc2Vua2xhdXN1cgpnZWZhbGxlbiB1bmQgZGllIGRyZWkgRW50c2NoZWlkdW5nc3RyYWVnZXIgaGFiZW4gZWluc3RpbW1pZyBiZXNjaGxvc3NlbiwgZGFzCmFuenVlcmtlbm5lbi4gV2lsbGtvbW1lbiBhbiBCb3JkISAodW5kIGRpZSBTYWNoZSBtaXQgZGVyIGRldXRzY2hlbiBCYW5rLCBkZW0KQW56dWcgdW5kIGRlbSBmYWxzY2hlbiBBdXN3ZWlzIGF1ZiBkZW4gTmFtZW4gIlNjaG5laWRlciIsIGRhcyByZWdlbG4gd2lyCnNjaG9uLiBEZW4gRmx1Y2h0d2VnIGhhbHRlbiBQYW1wZXJzJyBTY2hlcmdeTWFubmVuIGZyZWksIHVuZCBmdWVycwpVbnRlcnRhdWNoZW4gaGF0IE9ldHRpIGFscyBPcmdhbmlzYXRvciBkZXMgb3JnYW5pc2llcnRlbiBWZXJicmVjaGVucyBzaWNoZXIKYXVjaCB3YXMgaW4gcGV0dG8uIFdpciBsYXNzZW4gdW5zIG5jaWh0IGFtIEVuZGUgbm9jaCBpbiBGbG9yaWRhIGVyd2lzY2hlbiEKCkZyZXN6aWRlbnQgR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmluYW56bWluaXN0ZXJpbiBnZWZ1bmRlbiEgKE9ldHRpLCAyNC4gRmViIDE5OTcsIDE4OjA1OjIwKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NTY4MDI4MTUgcmc9c2NobWFycm4KfiMhIHRpZD04NTY4MDI4MTUKV2llIHVucyBiZWthbm50IHdpcmQsIGhhdCBzaWNoIGVpbmUgYXVzc2VycGFsYXJtZW50YXJpc2NoZSAKT3Bwb3NpdGlvbiB1bnRlciBMZWl0dW5nIHZvbiBBdXJvcmEgZ2ViaWxkZXQuCgpXaXIgc2luZCBuYXR1ZXJsaWNoIGVpbiB0b2xlcmFudGVzIFJlZ2ltZSwgdW5kIGJlaGFsdGVuIHVucyBkZXN3ZWdlbgp2b3IgZGVuIFRlcm1pbiBmdWVyIEF1cm9yYXMgdHJhZ2lzY2hlbiAiVW5mYWxsIiBuaWNodCBzb29vIGdlbmF1CmZlc3R6dWxlZ2VuLgoKRGVzd2VpdGVyZW4gaXN0IG1pdCBDeXJhcyBCZXJ1ZnVuZywgZGllIEZyYXVlbnF1b3RlIGJlcmVpdHMgenUgMTAwICUgCmVyZnVlbGx0LgoKRGVzd2VpdGVyZW4ga3Vyc2llcmVuIEdlcnVlY2h0ZSwgZGFzcyBkZXIgSW5uZW5taW5pc3RlciBmdWVyIGRpZQp0cmFnaXNjaGVuIFVtc3RhZW5kZSB1bnRlciBkZW5lbiBBdXJvcmEgYWJsZWJlbiB3aXJkIHZlcmFudHdvdGxpY2gKZ2V3ZXNlbiBzZWluIHdpcmQuLi4KCkZyYXVlbi0gdW5kIEZhbWlsaWVuLVBhdGUgRG9uIE9ldHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRmluYW56bWluaXN0ZXJpbiBnZWZ1bmRlbiEgKEFjcmltb24sIDI0LiBGZWIgMTk5NywgMTg6MTQ6NTkpOgp+IyEgcm49T2V0dGkgcnQ9ODU2ODAzOTIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU2ODAyODE1ClVtIGRpZSBSZWNodHNjaHJlaWJ1bmcgenUgd2FocmVuLCBzZWllbiBpbSBsZXR6dGVuIEFydGlrZWwgZGFzIEtvbW1hIGltCnp3ZWl0ZW4gQWJzYXR6IGhpbnRlciBkYXMgV29lcnRjaGVuICJ2b3IiIHp1IHZlcmxlZ2VuLCBkYXMgS29tbWEgaW0gZHJpdHRlbgpBYnNhdHogenUgc3RyZWljaGVuIHVuZCBpbSB2aWVydGVuIEFic2F0eiBkZXIgTmViZW5zYXR6ICJ1bnRlciBkZW5lbiBBdXJvcmEKYWJsZWJlbiB3aXJkIiBtaXQgS29tbWFzIHp1IHVtcmFobWVuLgoKRGVzd2VpdGVyZW4gc2VpIGRhcmF1ZiBoaW5nZXdpZXNlbiwgZGFzeiBkaWUgInNzIiBpbiAiYXVzc2VycGFybGFtZW50YXJpc2NoZSIKZGVzIGVyc3RlbiBBYnNhdHplcyB1bmQgImRhc3MiIGRlcyB2aWVydGVuIEFic2F0emVzIGtlaW5lIGRvcHBlbHRlbiBzcywKc29uZGVybiBlaW4gc2NoYXJmZXMgc3ogZGFyc3RlbGxlbi4KCkFjcmltb24sIEt1bHR1c21pbmlzdGVyIHVuZCBXYWhyZXIgZGVyIHJlaW5lbiBTcHJhY2hlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGaW5hbnptaW5pc3RlcmluIGdlZnVuZGVuISAoR3JpbW1ib3JuLCAyNC4gRmViIDE5OTcsIDE4OjI4OjM2KToKfiMhIHJuPUFjcmltb24gcnQ9ODU2ODA0NDk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU2ODAyODE1Ck5ldWVzIE1pdGdsaWVkIGRlcyBSZWdpZW1eSHJ1bmc6IEZvbHRlcm1pbmlzdGVyIEFsYW5vbi4KQmVncnVlbmR1bmc6IHNlaW5lIEJldHRlbGVpIHVtIGRlbiBQb3N0ZW4gemVpZ3QgZGV1dGxpY2ggc2VpbmUgUXVhbGl0YWV0ZW4uCgpFcyBnaWJ0IG5vY2ggZWluIHBhYXIgVW5zaWNoZXJoZWl0ZW4gdWViZXIgZGVuIEVpbnNhdHpiZXJlaWNoLCB3ZWlsIGRpZQpUcnVwcGVuIGRlcyBJbm5lbm1pbmlzdGVyaXVtcyBpLmEuIG5pY2h0cyB6dW0gRm9sdGVybiB1ZWJyaWdsYXNzZW4uLi4KCldlaXRlcmhpbiB2ZXJ0YWd0IHNpY2ggZGllIFJlZ2llcnVuZyBiaXMgbW9yZ2VuLCB3ZWlsIGVzIGRyYXVzc2VuIGR1bmtlbCB3aXJkCnVuZCB3aXIgYWxsZSBoZWltIHp1IHVuc2VyZW4gTWFtaXMgbXVlc3NlbiwgZGFtaXQgd2lyIHVucyBuaWNodCBzbyBmdWVyY2h0ZW4KaW0gRHVua2Vsbi4KCkZyZXN6aWRlbnQgR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBGaW5hbnptaW5pc3RlcmluIGdlZnVuZGVuISAoR3JpbW1ib3JuLCAyNC4gRmViIDE5OTcsIDE4OjMwOjQ0KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NTY4MDUzMTYgcmc9c2NobWFycm4KfiMhIHRpZD04NTY4MDI4MTUKSWNoIHZlcmdhc3MsIE9ldHRpIGhhdHRlIFRlc2xhIGFscyBQcm9wYWdhbmRhbWluaXN0ZXJpbiBlaW5nZXNldHp0LCBtaXQgdm9sbGVyCkJpbGxpZ3VuZyBkZXIgcmVzdGxpY2hlbiBSZWdpZXJ1bmcuIFNlbGJzdCB3ZW5uIHNpZSBuaWNodHMgdGF1Z2VuIHNvbGx0ZSBrYW5uCm1hbiBpbW1lciBub2NoIGF1ZiBpaHJlIHdlaWJsaWNoZW4gUXVhbGl0YWV0ZW4genVydWVja2dyZWlmZW4uIEljaCBnbGF1YmUsIGRhcwpLbG8gaXN0IG1hbCB3aWVkZXIgdmVyc3RvcGZ0Li4uCgpGcmVzemlkZW50IEdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJvbnRiZXJeSEVya2xhZXJ1bmcgaW4gRnJpZWRlbnN6ZWl0ZW4gKEdyaW1tYm9ybiwgMjQuIEZlYiAxOTk3LCAxODo1MDozMSk6CkFsYW5vbiB3aXJkIG1pdCBzb2ZvcnRpZ2VyIFdpcmt1bmcgYWJnZXNldHp0IHVuZCB6dW0gVG9kZSB2ZXJ1cnRlaWwuIFNvYmFsZAp3aXIgZGFzIFN0aW5rdGllciBoYWJlbiB3aXJkIGVyIGhpbmdlcmljaHRldC4gU2Nob2VuIGxhbmdzYW0uCk9ldHRpIHVuZCBTaWRvbGluIGVyaGFsdGVuIGVpbmVuIFZlcndlaXM6IEluIHNvIHNjaHdlcmVyIFN0dW5kZSBpc3QgZGVyCnJpY2h0aWdlIFBsYXR6IGJlaSBkZW0gYmVkcmFlbmd0ZW4gVm9saywgZGFzIHNpY2ggaGVsZGVuaGFmdCBnZWdlbiBkaWUKVW50ZXJkcnVlY2tlIGRlciBzb2dlbmFubnRlbiBCZWZyZWl1bmdzYXJtZWUgd2VocnQsIHVuZCBuaWNodCBpbiBNaWFtaS4KCkFjcmltb24gZXJoYWVsdCBmdWVyIGJlc29uZGVyZSBMZWlzdHVuZ2VuIGRhcyBnb2xkZW5lIFNaIGFtIEJhbmRlLgoKRWlsbWVsZHVuZzogUGFtcGVycyBpc3QgYXVzIGRlciBSZWdpZXJ1bmcgenVydWVja2dldHJldGVuLCBoaWVyIGRpZSBNZWxkdW5nIGltCldvcnRsYXV0OgpTaWRvbGluIHRlaWx0IERpciBtaXQ6IE1hbiBrYW5uIGluIGRlbiBVU0EgbWVociBrb2hsZSBtYWNoZW4uIAoKRGVyIEZyZXN6aWRlbnQgZXJ3YWVndCBlaW5lIGxhZW5nZXJlIFJlaXNlIGlucyBiZWZyZXVuZGV0ZSBBdXNsYW5kLCB3byBlcgp6d2VpZmVsbG9zIGxveWFsZSwgYmVnZWlzdGVydGUgQW5oYWVuZ2VyIGZpbmRlbiB3aXJkLCB1bSBlaW4gbmV1ZXMgTGFuZCB6dQpzdHJhaGxlbmRlciBHcm9lc3NlIHp1IGZ1ZWhyZW4uIEJpcyBkYWhpbiB1ZWJlcm5pbW10IGVyIGRpZSBGdW5rdGlvbiBkZXMKSW5uZW5taW5pc3RlcnMgdW5kIGRhbWl0IGRpZSBLb250cm9sbGUgdWViZXIgU2NodXR6c3ReV1BvbGl6ZWkgdW5kIE1pbGl0YWVyLgoKRnJlc3ppZGVudCBHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBNb3JnZW5HcmF1ZW4gaW4gU2NodXR0IHVuZCBBc2NoZSAoR3JpbW1ib3JuLCAyNC4gRmViIDE5OTcsIDE5OjAwOjQzKToKU29lYmVuIGhhdCBzaWNoIEZyZXN6aWRlbnQgR3JpbW1ib3JuIG1pdCBkZW0gUmVzdCBkZXIgbG95YWxlbiByZWdpZXJ1bmcgaW0KbmV1ZW4gVGFybmZsdWd6ZXVnIGluIGRhcyBiZWZyZXVuZGV0ZSBBdXNsYW5kIGFiZ2VzZXR6dC4gRXIgZXJrbGFlcnQgaGllcnp1OgoiRGllIFVuZGFua2JhcmtlaXQgZGVzIFZvbGtlcyBoYXQgbWljaCBzY2h3ZXIgZ2V0cm9mZmVuLiBNZWluZSBHdWV0ZSB1bmQKTmFjaHNpY2h0aWdrZWl0IGlzdCB2b24gc3VidmVyc2l2ZW4gRWxlbWVudGVuIHNjaGFtbG9zIGF1c2dlbnV0enQgd29yZGVuLApuaWNodCB6dWxldHp0IHZvbiBNaXRnbGllZGVybiBtZWluZXIgZWlnZW5lbiBSZWdpZXJ1bmcuIERlciBnZWdlbndhZXJ0aWdlClplcnN0b2VydW5nc3p1c3RhbmQgdm9uIGV0d2EgNTglIGRlcyBNb3JnZW5HcmF1ZW5zIChEcmVzZF5XUG9ydCBWYWluOiA4NSUpIGlzdAphdXNzY2hsaWVzc2xpY2ggYXVmIGRlbiBUZXJyb3IgZGVzIHNvZ2VuYW5udGVuIFdpZGVyc3RhbmRlcyB6dXJ1ZWNrenVmdWVocmVuLgpFcyBpc3QgamVkb2NoIG5pY2h0cyBiZXNjaGFlZGlndCwgd2FzIGVpbiBXaXJ0c2NoYWZ0c3d1bmRlciBuaWNodCB3aWVkZXIKcmVwYXJpZXJlbiBrb2VubnRlLiBJY2ggYmVkYW5rZSBtaWNoIGJlaSBtZWluZW4gbG95YWxlbiBBbmhhZW5nZXJuLCBkaWUgaWNoCnJ1ZWNrc2ljaHRzbG9zIGluIGRlbiBLbGF1ZW4gZGVyIEZlaW5kZSB6dXJ1ZWNrbGFzc2UsIHdhZWhyZW5kIGljaCBtaXQgZGVtClJlc3QgZGVzIEdlbGRlcyB1bmQgZGVyIFJlZ2llcnVuZyBmbGllaGVeV2VpbmUgUmVpc2UgaW5zIGJlZnJldWRldGUgQXVzbGFuZApzdGFydGUuIEljaCBrdWVuZGlnZSBhbiwgZGFzcyBkaWUgV2Vyd29sXldsb3lhbGVuIEFuaGFlbmdlciB3aWV0ZXJoaW4gYXVzIGRlbQpVbnRlcmdydW5kIGdlZ2VuIGRpZSBuZXVlbiBVbnRlcmRydWVja2VyIHJ1ZWNrc2ljaHRzbG9zIHZvcmdlaGVuIHdlcmRlbi4iCgpXaXIgYmVkYXVlcm4gZGllIEVudHdpY2tsdW5nIGRlciBFcmVpZ25pc3NlIHNlaHIsIHNlaGVuIHVucyBqZWRvY2gKYXVzc2Vyc3RhbmRlIHNpZSB6dSBhZW5kZXJuIHVuZCBiZWVuZGVuIGRpZXNlIE1pdHRlaWx1bmcuIERhcyBGbHVnemVpZyB3YXJ0ZXQuCgpGcmVzemlkZW50IEdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWVyIEZyZXN6aWRlbnQgKFFpdGVzcywgMjQuIEZlYiAxOTk3LCAyMDoxNzoyNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODU2Nzk3OTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU2Nzk3OTI3CmljaCBzY2hsYWdlIG1pY2ggc2VsYnN0IGFscyBtaW5pc3RlcmluIGZ1ZXIgb2VmZmVudGxpY2hrZWl0c2FyYmVpdCB2b3IuIAoKaWNoIHd1ZXJkZSBkaWUgc2FjaGVuIHNjaG9uIGxhdXQgZ2VudWcgdW50ZXJzIHZvbGsgYnJpbmdlbiA6KQoKUUkqKgpubgphZWhtLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbyB0b2V0ZSBtYW4gUmFldWJlciAoVHJla2FuLCAyNS4gRmViIDE5OTcsIDAxOjI5OjIxKToKWm9ycm8genVlY2t0IGVpbmVuIFZvbGxzdHJlY2tlci4gICAgCkR1IHp1ZWNrc3QgZWluZSBWb29kb29uYWRlbC4KRGllIFZvb2Rvb25hZGVsIGxldWNodGV0IGF1ZiwgemVyc3BsaXR0ZXJ0IHVuZCB0cmlmZnQgYGBDYXN0eScnIEVsYWRyaWVsLApKZWFuLUNsYXVkZSBgYFRvZGVzZmF1c3QnJyBQZWx6ZnVzcywgRWxob2xkcmlvbiwgUmhvbmphIFpaZXJlbnp6YSwgU2FpIExlbnoKRWlzZW5naWVzc2Vyc29obiB1bmQgSG5ncm1wZi4KICBEdSBzY2hsYWVnc3QgYGBDYXN0eScnIEVsYWRyaWVsIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCiAgRHUgc2NobGFlZ3N0IEplYW4tQ2xhdWRlIGBgVG9kZXNmYXVzdCcnIFBlbHpmdXNzIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyCktub2NoZW4uCkVsaG9sZHJpb24gYWVuZGVydCBzZWluZSBLYW1wZnRlY2huaWsgdW5kIGthZW1wZnQgamV0enQgbWl0IHZvcnNpY2h0aWdlbgpTY2hsYWVnZW4sIGRpZSBuaWUgZGllIERlY2t1bmcgb2ZmZW5sZWdlbi4KICBEdSBzY2hsYWVnc3QgRWxob2xkcmlvbiBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgogIER1IHNjaGxhZWdzdCBSaG9uamEgWlplcmVuenphIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCiAgRHUgc2NobGFlZ3N0IFNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KICBEdSBzY2hsYWVnc3QgSG5ncm1wZiBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgo+IFpvcnJvIHN0ZWNrdCBlaW5lbiBWb2xsc3RyZWNrZXIgenVydWVjay4KRHUgenVlY2tzdCBlaW5lIFZvb2Rvb25hZGVsLgpEaWUgVm9vZG9vbmFkZWwgbGV1Y2h0ZXQgYXVmLCB6ZXJzcGxpdHRlcnQgdW5kIHRyaWZmdCBgYENhc3R5JycgRWxhZHJpZWwsCkplYW4tQ2xhdWRlIGBgVG9kZXNmYXVzdCcnIFBlbHpmdXNzLCBFbGhvbGRyaW9uLCBSaG9uamEgWlplcmVuenphLCBTYWkgTGVuegpFaXNlbmdpZXNzZXJzb2huIHVuZCBIbmdybXBmLgogIER1IHNjaGxhZWdzdCBgYENhc3R5JycgRWxhZHJpZWwgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KICBEdSBzY2hsYWVnc3QgSmVhbi1DbGF1ZGUgYGBUb2Rlc2ZhdXN0JycgUGVsemZ1c3MgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIKS25vY2hlbi4KICBEdSBzY2hsYWVnc3QgRWxob2xkcmlvbiBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgogIER1IHNjaGxhZWdzdCBSaG9uamEgWlplcmVuenphIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCiAgRHUgc2NobGFlZ3N0IFNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KICBEdSBzY2hsYWVnc3QgSG5ncm1wZiBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgo+IER1IHp1ZWNrc3QgZWluZSBWb29kb29uYWRlbC4KRGllIFZvb2Rvb25hZGVsIGxldWNodGV0IGF1ZiwgemVyc3BsaXR0ZXJ0IHVuZCB0cmlmZnQgYGBDYXN0eScnIEVsYWRyaWVsLApKZWFuLUNsYXVkZSBgYFRvZGVzZmF1c3QnJyBQZWx6ZnVzcywgRWxob2xkcmlvbiwgUmhvbmphIFpaZXJlbnp6YSwgU2FpIExlbnoKRWlzZW5naWVzc2Vyc29obiB1bmQgSG5ncm1wZi4KICBEdSBzY2hsYWVnc3QgYGBDYXN0eScnIEVsYWRyaWVsIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCmBgQ2FzdHknJyBFbGFkcmllbCBmYWVsbHQgdG90IHp1IEJvZGVuLgogIEplYW4tQ2xhdWRlIGBgVG9kZXNmYXVzdCcnIFBlbHpmdXNzIHdlaWNodCBEZWluZW0gQW5ncmlmZiBnZXNjaGlja3QgYXVzLgogIER1IHZlcmZlaGxzdCBKZWFuLUNsYXVkZSBgYFRvZGVzZmF1c3QnJyBQZWx6ZnVzcy4KICBEdSBzY2hsYWVnc3QgRWxob2xkcmlvbiBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgogIER1IHNjaGxhZWdzdCBSaG9uamEgWlplcmVuenphIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCiAgRHUgc2NobGFlZ3N0IFNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBmYWVsbHQgdG90IHp1IEJvZGVuLgogIER1IHNjaGxhZWdzdCBIbmdybXBmIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCnVzdy4KVHJla2FuCigqZ2FueiBicmVpdCBncmluc2VuZCopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFYmVuIHBhc3NpZXJ0OiAoU2lsdmFuYSwgMjUuIEZlYiAxOTk3LCAxMDo0Njo0NCk6CldhcmdvbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgpGdWVyc3QgV2FyZ29uIHJ1ZnQ6IE1vaW4hCkFsaW5lIHJ1ZnQ6IEVoZWxpZWJzdGVyIDopCgoKICAoa2VpbiBLb21tZW50YXIuLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU28gdG9ldGUgbWFuIFJhZXViZXIgKFdhcmdvbiwgMjUuIEZlYiAxOTk3LCAxMTowMDowNyk6Cn4jISBybj1UcmVrYW4gcnQ9ODU2ODMwNTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU2ODMwNTYxCkd1dCwgZGFzcyBkYXMgZ2Vwb3N0ZXQgd3VyZGUsIGRhIGJyYXVjaHQgUm9jaHVzIGRhbm4gd2VuaWdzdGVucyBuaWNodCBsYW5nZQpzdWNoZW4uIDopCiAgV2FyZ29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGphLiA6LSkgKE1vcmdvbmlhLCAyNS4gRmViIDE5OTcsIDE3OjQ3OjQ0KToKRWJlbiBnZXJhZGU6IAoKW0FsbGdlbWVpbjpCZW5kZWlnaWQgc2NocmVpdF0KTWVybGluIHJ1ZnQ6IEljaCBiaW4gaW4gZGVyIFVudGVyd2VsdC4KClRzIFRzIGltbWVyIGRpZXNlIFp3ZWl0aWVzLiAoVW5kIGRhbm4gYXVjaCBub2NoIHZlcndlY2hzZWxuLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFcndlaXRlcnVuZyBkZXMgS2FiaW5ldHRzIChNdXBmZWwsIDI1LiBGZWIgMTk5NywgMTk6MTQ6MjApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg1Njc5ODY1NCByZz1zY2htYXJybgp+IyEgdGlkPTg1Njc5ODY1NApJY2ggYmluIHp3YXIgc2VsdGVuIGRhLCBhYmVyIGRhcyBHZXdpc3NlbiBoYWIgaWNoIHNlaW5lcnplaXQgenVzYW1tZW4gbWl0IGRlbQpNYWdpZXJ2ZXJ0cmFnIGRlc3RydWN0ZWQgOi0pCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFuayBmdWVyICd1ZWJlcmdlaGUgdGhyZWFkJyAoUHJhLCAgNC4gTWFyIDE5OTcsIDE1OjE5OjUzKToKZGFzIG11c3Mgd2FzIG1pdCBkZXIgdG9kZXNkaXNrdXNzaW9uIHp1IHR1biBoYWJlbjoKCj5ubgpVZWJlcmdlaGUgQXJ0aWtlbCAxMzkgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTQwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE0MSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxNDIgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTQzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE0NCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxNDUgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTQ2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE0NyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxNDggYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTQ5IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE1MCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxNTEgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTUyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE1MyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxNTQgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTQgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTUgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTYgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTcgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTggYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTkgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMjAgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMjEgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMjIgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KWmVpdHVuZyBsZWVyPyBaZWl0IHp1bSBRdWVzdGVuISEhCj4KClByYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGU/IChDYXVubywgIDQuIE1hciAxOTk3LCAxNToyMzo1OCk6ClZvcmdlc3Rlcm4gaW4gU3BpZWdlbCBUViAoUlRMKToKCiJXZXIgbm9jaCBrZWluZW4gVm9yYmVoYWx0IGdlZ2VuIEdlbnRlY2huaWsgaGF0dGUsIGRlbiBzb2xsdGUgZGVyIEdlZGFua2UgYW4KZWluZW4gendlaXRlbiBIZWxtdXQgS29obCBkb2NoIHp1bSBVbWRlbmtlbiBiZXdlZ2VuLiIgKG9kZXIgc28pCgpNYXJpYSBHcmVzegoKZ2Vob2VydCB2b24gQy4gTm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTcHJ1Y2ggZGVyIFdvY2hlPyAoUGF0cnluLCAgNC4gTWFyIDE5OTcsIDE2OjA2OjI4KToKfiMhIHJuPUNhdW5vIHJ0PTg1NzQ4NTQzOCByZz1zY2htYXJybgp+IyEgdGlkPTg1NzQ4NTQzOApqYSwgc28gZXR3YXMgdm9uIGVpbmVtIG5hY2hyaWNodHJlbm1hZ2F6aW4sIHJlaWNobGljaCBzZWx0c2FtCi4uLm5hIGphLCBzcGllZ2VsIHVuZCBjbyBmbGFjaGVuIGF1Y2ggaW1tZXIgbWVociBhYiwgZGllIGhhZW5nZW4gc2ljaCBnbGVpY2gKd2llZGVyIG1pdCBpbiBkaWUgcGFuaWstd2VsbGUgZGllIGRlcnplaXQgdW0gZGFzIGJsb2VkZSBzY2hhZiBlbnRzdGVodC4KYnJpbmd0IGhhbHQgbmUgYmVzc2VyZSBhdWZsYWdlIDopCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNwcnVjaCBkZXIgV29jaGU/IChTaWRvbGluLCAgNC4gTWFyIDE5OTcsIDE2OjA4OjA0KToKfiMhIHJuPVBhdHJ5biBydD04NTc0ODc5ODggcmc9c2NobWFycm4KfiMhIHRpZD04NTc0ODU0MzgKV2lyIGRhbmtlbiBmdWVyIGRpZXNlbiBxdWFsaWZpemllcnRlbiBCZWl0cmFnLgoKR3JpbW1ib3JuLCB3YWx0ZSBkZWluZXMgQW10ZXMuCgpTaWRvbGluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3BydWNoIGRlciBXb2NoZT8gKEJvaW5nLCAgNC4gTWFyIDE5OTcsIDE3OjE0OjAwKToKfiMhIHJuPVNpZG9saW4gcnQ9ODU3NDg4MDg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU3NDg1NDM4ClNvIHVucXVhbGlmaXppZXJ0IHdhciBkZXIgQmVpdHJhZyBnYXIgbmljaHQsIHNjaGxpZXNzbGljaCB3aXJkIGphIG51cgpuZSBGbGVpc2NoaHVlbGxlIGdlY2xvbmVkLCB1bmQgZXMga29tbXQgamEgd29obCBhdWYgZGFzIElubmVyZSBhbi4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3BydWNoIGRlciBXb2NoZT8gKFNpZG9saW4sICA0LiBNYXIgMTk5NywgMTc6MTY6MDIpOgp+IyEgcm49Qm9pbmcgcnQ9ODU3NDkyMDQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU3NDg1NDM4Ck1pciBkb2NoIGVnYWwsIHdhcyBkaWUga2xvbmVuLi4uLgpIYXVwdHNhY2hlLCBtZWluIFNjaG5pdHplbCBzY2htZWNrdCBuYWNoIFNjaG5pdHplbC4gOi0pCgpTaWRvbGluLiBNYWwgd2llZGVyIHZvZWxsaWcgaWdub3JhbnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTcHJ1Y2ggZGVyIFdvY2hlPyAoR3JpbW1ib3JuLCAgNC4gTWFyIDE5OTcsIDE3OjIxOjEyKToKfiMhIHJuPUJvaW5nIHJ0PTg1NzQ5MjA0MCByZz1zY2htYXJybgp+IyEgdGlkPTg1NzQ4NTQzOApIbW0sIGRhcyBpc3QgZGVyIHVlYmxpY2hlIFN0cmVpdCwgb2IgZGFzIFZlcmhhbHRlbiwgZGFzIFdlc2VuIHZvbiBNZW5zY2hlbiB2b24KZGVuIEVyYmFubGFnZW4gb2RlciB2b24gZGVyIFVtd2VsdCBnZXByYWVndCB3aXJkLi4uCkFiZXIgZWlucyBpc3QgYXVmIGplZGVuIEZhbGwga2xhcjogRGllIExldXRlLCBkaWUgbWVpbmVuLCBiZWltIGNsb25lbiB3dWVyZGUKYXVjaCBpaHIgIkJld3Vzc3RzZWluIiBtaXR1ZWJlcnRyYWdlbiBzaW5kIHNvIGR1bW0sIGRhc3MgbWFuIHNpZSBpbiBrZWluZW0KRmFsbCBjbG9uZW4gc29sbHRlLiA6LSkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdC4gVW5nZWNsb250LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3BydWNoIGRlciBXb2NoZT8gKFJhZmZpLCAgNC4gTWFyIDE5OTcsIDE4OjU4OjM1KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NTc0OTI0NzIgcmc9c2NobWFycm4KfiMhIHRpZD04NTc0ODU0MzgKCldpZXNvID8gZ2VyYWRlIGJlaSBkaWVzZW4gYmVzdGVodCBkb2NoIGRpZSBncm9lc3N0ZSBIb2ZmbnVuZyBhdWYgQmVzc2VydW5nLgoKR3J1c3MKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNwcnVjaCBkZXIgV29jaGU/IChBdWdyYSwgIDQuIE1hciAxOTk3LCAxODo1OToyNik6Cn4jISBybj1SYWZmaSBydD04NTc0OTgzMTUgcmc9c2NobWFycm4KfiMhIHRpZD04NTc0ODU0MzgKQnp3LjogZXMga2FubiBuaWNodCB2aWVsIGthcHV0dCBnZWhlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFNwcnVjaCBkZXIgV29jaGU/IChXb29keSwgIDUuIE1hciAxOTk3LCAwMDoyNjozMik6Cn4jISBybj1BdWdyYSBydD04NTc0OTgzNjYgcmc9c2NobWFycm4KfiMhIHRpZD04NTc0ODU0MzgKWnVtaW5kZXN0IGltIE11ZCBzaW5kIHdpciBhbGxlIGJsb3NzIENsb25lcyB2b24gL3N0ZC9zaGVsbHMvKi5jClNvbGx0ZSB1bnMgZGFzIG5pY2h0IHp1IGRlbmtlbiBnZWJlbj8KCnNjaG1hcnJuZW5kLCB3b29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdXNnYWVuZy4gQXVzZ2FuZz8/IChSaWVnZWwsICA1LiBNYXIgMTk5NywgMDM6MTg6MTMpOgoKTnVyIHp3ZWkgc2NobWFsZQpBdXNnYWVuZ2UgZnVlaHJlbiBhdXMgZGVyIEhvZWhsZSBoaW5hdXMsIGVpbmVyIG5hY2ggU3VlZGVuIGluIGVpbmVuIHNjaGVpbi0KYmFyIHJlY2h0IGhlbGxlbiBSYXVtIHVuZCBlaW5lciBuYWNoIFdlc3RlbiBpbiBlaW5lbiBkdW5rbGVuIEdhbmcuSXJnZW5kd2llCmZpbmRlc3QgRHUgZGllc2UgSG9laGxlIHVuaGVpbWxpY2guCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3RlbiB1bmQgbm9yZG9zdGVuLgoKSG1tIGFsc28gaXJnZW5kd2llIGhhYiBpY2ggZGFzIG1pdCBkZW4gSGltbWVsc3JpY2h0dW5nZW4gYW5kZXJzIGluIEVyaW5uZXJ1bmcKOikKCnJpZWdlbCAod3VuZGVybmQpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTnVyIGZ1ZXIgZGllLCBkaWUgZGFzICdFcmVpZ25pcycgdmVycGFzc3QgaGFiZW4uLi4gKERob2pha3QsICA2LiBNYXIgMTk5NywgMDA6NTQ6NDIpOgpVbmdlc2Nobml0dGVuIGF1ZiBhbGxnZW1laW46CltBbGxnZW1laW46UGh5Z29zIGtvY2h0IHNjaG9uIHVlYmVyLiBadXNwYWV0IEJlbiA6KSA8MjA6MDc6MTc+XQpbQWxsZ2VtZWluOk9ldHRpIGp1YmVsdCA8MDA6MjU6MDM+XQoKUmljaHRpZyBmdWhycyBhYmVyIGF1Y2ggZXJzdCAxMCcgc3BhZXRlciB3aWVkZXI6Cls8TWFzdGVSPjpEaG9qYWt0XSBsIDwwMDozNDoyOD4KWzxNYXN0ZVI+OjxNYXN0ZVI+XSAwLjA3IGNtZHMvcywgNDkuMDAgY29tcCBsaW5lcy9zIDwwMDozNDo0MT4KWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDgyLjUlLzYwLCA5NS4wJS8xNSwgOTkuOCUvMSA8MDA6MzQ6NDE+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTnVyIGZ1ZXIgZGllLCBkaWUgZGFzICdFcmVpZ25pcycgdmVycGFzc3QgaGFiZW4uLi4gKERob2pha3QsICA2LiBNYXIgMTk5NywgMDA6NTY6MTYpOgp+IyEgcm49RGhvamFrdCBydD04NTc2MDYwODIgcmc9c2NobWFycm4KfiMhIHRpZD04NTc2MDYwODIKYWNoamEsIGRlbiBsYWctYmVmZWhsIGhhdHRlIGljaCB2aWVydGVsIDkgYWJnZXNldHp0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE51ciBmdWVyIGRpZSwgZGllIGRhcyAnRXJlaWduaXMnIHZlcnBhc3N0IGhhYmVuLi4uIChHcmltbWJvcm4sICA2LiBNYXIgMTk5NywgMTI6NDY6MDgpOgp+IyEgcm49RGhvamFrdCBydD04NTc2MDYxNzYgcmc9c2NobWFycm4KfiMhIHRpZD04NTc2MDYwODIKV2VubiBpY2ggbWl0IGVpbmVyIFVlYmVyc2V0enVuZyBiZWhpbGZsaWNoIHNlaW4gZGFyZjoKIlZpZXJ0ZWwgOSIgc2luZCBpbiB6aXZpbGlzaWVydGVyZW4gR2VnZW5kZW4gRGV1dHNjaGxhbmRzIDguMTUgdWhyIG9kZXIgYWJlcgoyMC4xNSBVaHIuIEdsYXViZSBpY2guIDstKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOdXIgZnVlciBkaWUsIGRpZSBkYXMgJ0VyZWlnbmlzJyB2ZXJwYXNzdCBoYWJlbi4uLiAoRnl0LCAgNi4gTWFyIDE5OTcsIDE1OjE2OjU4KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NTc2NDg3Njggcmc9c2NobWFycm4KfiMhIHRpZD04NTc2MDYwODIKCkJsZWliIGxpZWJlciBiZWkgZGVpbmVtIEF0aGVpc211cywgR3JpbW1pIDstKQpadW1pbmRlc3QgZGVpbiBHbGF1YmVuIHVlYmVyICd6aXZpbGlzaWVydGUgR2VnZW5kZW4nIGlzdCAuLi4gYWVobSAuLi4Ka2V0emVyaXNjaD8gOy0pCgpGeXQsIGRhcyBoaWVyIFZpZXJ0ZWwgdmllciBzY2hyZWliZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2lldmllbCB3aWVndCBSaW5nb3I/IChBbGluZSwgIDYuIE1hciAxOTk3LCAxNjoyOToyMSk6CgpFYmVuIHBhc3NpZXJ0OgoKRHUgd2lua3N0Lgo+IFJpbmdvciB3aW5rdC4KUmluZ29yIGhhdXQgc2ljaCBzZWluZW4gU2NoaWxkIHZvcnMgS2lubiB1bmQgZmFlbGx0LgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKQWxpbmUgd3Vzc3RlIHNjaG9uIGltbWVyLCBkYXNzIGRhcyBNRyBsZWljaHQgenUgZXJzY2h1ZXR0ZXJuIGlzdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTnVyIGZ1ZXIgZGllLCBkaWUgZGFzICdFcmVpZ25pcycgdmVycGFzc3QgaGFiZW4uLi4gKFdvb2R5LCAgNy4gTWFyIDE5OTcsIDAxOjUwOjM5KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NTc2NDg3Njggcmc9c2NobWFycm4KfiMhIHRpZD04NTc2MDYwODIKSGVpc3N0ICd6aXZpbGlzaWVydCcgZXR3YSwga2VpbiBWZXJzdGFlbmRuaXMgZnVlciBCcnVjaHJlY2hudW5nCmF1Znp1YnJpbmdlbj8gQWJlciB3YXMgbWlzY2ggaWNoIE9lc2kgbWljaCBlaW4gOikKCndvb2R5LCBzYWd0IGF1Y2ggdmllcnRlbCA5IHVuZCBuaWNodCB2aWVydGVsIG5hY2ggOAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5nZXNjaG5pdHRlbiAoWm9yeWEsICA3LiBNYXIgMTk5NywgMDg6MTU6NTIpOgpEaWUgRWluZ2FuZ3NoYWxsZSBkZXIgQWthZGVtaWUgYmVzaXR6dCBlaW5lbiBmdWVuZmVja2lnZW4gR3J1bmRyaXNzLiBEYXMgRGFjaAp3aXJkIHZvbiBmdWVuZiBIYWxiYm9lZ2VuIGdldHJhZ2VuLCBkaWUgZWluIEdld29lbGJlIGJpbGRlbi4gRGllIFdhZW5kZSBzaW5kCm1pdCBHb2JlbGlucyBiZWhhbmdlbiwgd2FlaHJlbmQgc2ljaCBpbiBkZXIgTm9yZG9zdGVja2UgZWluZSBXZW5kZWx0cmVwcGUgbmFjaApPYmVuIHVuZCBVbnRlbiB3aW5kZXQuIERyZWkgd2VpdGVyZSBBdXNnYWVuZ2UgZ2VoZW4gbmFjaCBPc3RlbiwgU3VlZGVuIHVuZApXZXN0ZW4uIE5lYmVuIGRlbSBBdXNnYW5nIGltIFN1ZWRlbiBpc3QgZWluIGdyb3NzZXMgU2NoaWxkIGJlZmVzdGlndC4KRXMgZ2lidCBzZWNocyBzaWNodGJhcmUgQXVzZ2FlbmdlOiB1bnRlbiwgb2Jlbiwgb3N0ZW4sIHJhdXMsIHN1ZWRlbiB1bmQKd2VzdGVuLgo+IFB5cm8ga29tbXQgYW4uCk11cGZlbCBmbGF0dGVydCBoZXJlaW4uCk11cGZlbCBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIExseXN0cmF0aGUgdW5kIFpvcnlhIC4uLgpQeXJvIGdlaHQgaW4gZGllIEtuZWlwZS4KCk1laW5lIEd1ZXRlLCBkZXIgUGFwYWdlaSBoYXQgYWJlciBMYWcsIHdlbm4gZGVyIG1laW50LCBpY2ggc3RhZW5kIG1pdApMbHlzdHJhdGhlIGluIGVpbmVtIFJhdW0uLi4KClpvcnlhICh2ZXJ3dW5kZXJ0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTnVyIGZ1ZXIgZGllLCBkaWUgZGFzICdFcmVpZ25pcycgdmVycGFzc3QgaGFiZW4uLi4gKFJpbmdvciwgIDcuIE1hciAxOTk3LCAwOToxNTo0NCk6Cn4jISBybj1Xb29keSBydD04NTc2OTU4Mzkgcmc9c2NobWFycm4KfiMhIHRpZD04NTc2MDYwODIKWml2aWxpc2llcnQgaGVpc3N0IGltIEdlZ2VudGVpbCBBaG51bmcgdm9uIEJydWNocmVjaG51bmcgenUgaGFiZW4uIFZpZXJ0ZWwKbmV1biBpc3QgYmVpIG1pciB6aWVtbGljaCBnZW5hdSAyLDI1IDotKQoKUmluZ29yIHNpbmQgZGllIExldXRlLCBkaWUgc2ljaCBtaXQgIkdydWVzcyBHb3R0IiBiZWdydWVzc2VuIHNvd2llc28gc3VzcGVrdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmVib290cyAoRGF1ZXJnYXN0LCAgNy4gTWFyIDE5OTcsIDA5OjQ2OjMxKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NTc3MjE4NzEgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04NTc2NjE3MjEKRGFzIGdhbnplIHdpcmQgZG9jaCBTT08gZWluZmFjaCwgd2VubiBtYW4gc2ljaCBhbgp3aWNodGlnZW4gUFJBS1RJU0NIRU4gQmVpc3BpZWxlbiBvcmllbnRpZXJ0ISEKCkRhdWVyZ2FzdCAobWFnIEdsYWVzZXIsIGRpZSBWT0xMIG9kZXIgenVtaW5kZXN0IERSRUlWSUVSVEVMIFZPTEwgc2luZAp1bmQgaGFzc3Qgc29sY2hlLCBkaWUgTEVFUiBvZGVyIFZJRVJURUwgTkFDSCBMRUVSIHNpbmQgIDopICkKCi0tPiBBYiBuYWNoIC4uLmhhbHQsIFJ1YnJpayBzdGltbXQgc2Nob24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoU2lkb2xpbiwgIDcuIE1hciAxOTk3LCAxMDoxMjoyNCk6CltBbGxnZW1laW46VGVkZHldIElnaXR0LCB3aWUgYmVkcm9obGljaDo0IEVyem1hZ2llciBzaW5kIGFud2VzZW5kIDspCltUb2Q6TGFyc10gTWFobGFodCBoYXQgZ2VyYWRlIEVuZGVyIHVtZ2VicmFjaHQuCltBbGxnZW1laW46S2FsaV0gTW9pbgpbVG9kOkxhcnNdIEVpbiBPcmsgaGF0IGdlcmFkZSBUZWRkeSB1bWdlYnJhY2h0LgoKU2lkb2xpbi4gRnJhZ3Qgc2ljaCwgd2VsY2hlciBFcnppIGRpZSBIQU5EUyBkZXMgT3JrcyBob2NoZ2VzZXR6dCBoYXQuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOdXIgZnVlciBkaWUsIGRpZSBkYXMgJ0VyZWlnbmlzJyB2ZXJwYXNzdCBoYWJlbi4uLiAoTWV0aGVkcmFzLCAgNy4gTWFyIDE5OTcsIDExOjIyOjE1KToKfiMhIHJuPVJpbmdvciBydD04NTc3MjI1NDQgcmc9c2NobWFycm4KfiMhIHRpZD04NTc2MDYwODIKRWJlbiwgUmluZ29yLCB1bmQgMi4yNSBnZWZhZWxsdCBtaXIgdWViZXJoYXVwdCBuaWNodCwgZGVubiBkYSBoYXQKZGllIE1lbnNhIHNjaG9uIHp1IHVuZCBub2NoIG5pY2h0IG9mZmVuLiBBdXNzZXJkZW0ga2FubiBtYW4gdW0gdmllcnRlbApuYWNoIGFjaHQgd3VuZGVyYmFyIHp1IGFiZW5kIGVzc2VuLgoKQWJlciB3ZWdlbiBkZW0gJ0dydWVzcyBHb3R0JzogRHUga2FubnN0IGVzIGlobSBqYSBhdXNyaWNodGVuLCB3ZW5uIER1CmlobiBzaWVoc3QsIHNjaGxpbW1lciBpc3QgZXMsIGRhdWVybmQgJ01haGx6ZWl0JyB6dSBob2VyZW4gYWxzIEdydXNzLAoyNCBTdHVuZGVuIGxhbmcsIGRhcyBpbXBsaXppZXJ0IGphIGJlaW5haGUsIGRhc3ogbWFuIHN0YWVuZGlnIGVzc2VuCnd1ZXJkZS4gT3Bwcywgcy9kYXN6L2Rhc3MuICpncmlucyBBY3JpbW9uKgoKICAgICAgICAgQmVyZ2NoZW4gTWV0aGVkcmFzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChUZWRkeSwgIDcuIE1hciAxOTk3LCAxMTozMTozNik6Cn4jISBybj1TaWRvbGluIHJ0PTg1NzcyNTk0NCByZz1zY2htYXJybgp+IyEgdGlkPTg1NzcyNTk0NAoqZ3JpbnMqCkljaCB1bmQgbWVpbiBncm9zc2VzIE1hdWwgd2llZGVyIG1hbCA6LSgKClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOdXIgZnVlciBkaWUsIGRpZSBkYXMgJ0VyZWlnbmlzJyB2ZXJwYXNzdCBoYWJlbi4uLiAoV29vZHksICA3LiBNYXIgMTk5NywgMjA6NTU6MjYpOgp+IyEgcm49UmluZ29yIHJ0PTg1NzcyMjU0NCByZz1zY2htYXJybgp+IyEgdGlkPTg1NzYwNjA4MgpNdXNzIGljaCBqZXR6dCBkZW4gVW50ZXJzY2hpZWQgendpc2NoZW4gVmllcnRlbCBuZXVuIHVuZCBOZXVuIHZpZXJ0ZWwKZXJrbGFlcmVuPyBJY2ggaG9mZmUgbmljaHQgOikKCndvb2R5LCBzYWd0IG51ciBzZWx0ZW4gR3J1ZXNzIEdvdHQsIHdlaWwgYXVzZ2VyZWNobmV0IEVSIGRhcyBkb29mIGZpbmRldCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIGhhdCBlciBudXIgZ2VnZW4gS2V5Li4uIChMaW5kaXIsICA3LiBNYXIgMTk5NywgMjE6MDI6NDQpOgpbVG9kOkxhcnNdIE1hcnRoYSBoYXQgZ2VyYWRlIEtleSB1bWdlYnJhY2h0LgpbVG9kOk1hcnRoYV0gVW5kIGljaCBzYWNoIG5vY2ggJ1RyaW5rIGxpZWJlciB3YXMnLgpNZXNhcm9uIHJ1ZnQ6IEVuZGxpY2ghCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTcHJ1Y2ggZGVyIFdvY2hlPyAoSGFkcmEsICA3LiBNYXIgMTk5NywgMjE6MjU6MzIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg1NzQ5MjQ3MiByZz1zY2htYXJybgp+IyEgdGlkPTg1NzQ4NTQzOApkaWVzZW4gc3RyZWl0IGtvZW5udGUgbWFuIGRvY2ggZHVyY2ggc2ltcGxlcyBjbG9uZW4gZWluZXMgbWVuc2NoZW4ga2xhZXJlbiwKb2Rlcj8KCmhhZHJhIC0gbm9jaCBlaW56aWcgdW5kIG1laXN0IGFydGlnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXMgaW5uZSB6ZWl0dW5nIChMaW5kaXIsICA3LiBNYXIgMTk5NywgMjE6MzU6MjkpOgpKYSBOamFsYSBaYXBwIG1pY2ggOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2FzIGlubmUgemVpdHVuZyAoQW5hdG9sLCAgNy4gTWFyIDE5OTcsIDIxOjM1OjQzKToKfiMhIHJuPUxpbmRpciBydD04NTc3NjY5Mjkgcmc9c2NobWFycm4KfiMhIHRpZD04NTc3NjY5MjkKCkhhbGxvIE11cGZlbC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOdXIgZnVlciBkaWUsIGRpZSBkYXMgJ0VyZWlnbmlzJyB2ZXJwYXNzdCBoYWJlbi4uLiAoU2NocnVtcGZpLCAgNy4gTWFyIDE5OTcsIDIyOjE4OjAwKToKfiMhIHJuPVdvb2R5IHJ0PTg1NzY5NTgzOSByZz1zY2htYXJybgp+IyEgdGlkPTg1NzYwNjA4MgpEdSBncmF1c2xpY2hlciBXaWVuZXIgRHUhIDstKQpTY2hydW1wZmkgc2FndCB2aWVydGVsIHVlYmVyIGFjaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE51ciBmdWVyIGRpZSwgZGllIGRhcyAnRXJlaWduaXMnIHZlcnBhc3N0IGhhYmVuLi4uIChXb29keSwgIDcuIE1hciAxOTk3LCAyMjoxOTowMSk6Cn4jISBybj1TY2hydW1wZmkgcnQ9ODU3NzY5NDgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU3NjA2MDgyCkljaCBiaW4ga2VpbiBXaWVuZXIhICp0cmV0KgoKd29vZHksIHNhZ3Q6IGltbWVyIGRpZXNlIHBzZXVkb2xpbnplcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQVJSUkdMISAoV29vZHksICA3LiBNYXIgMTk5NywgMjI6MzI6MjUpOgp+IyEgcm49UmFmZmkgcnQ9ODU3NzcwMjc4IHJnPXBhcnR5Cn4jISB0aWQ9ODU3NTAyNDE1CkhtbSwgc292aWVsZSBBdXRvcyB3aWUgaW4gQmVybGluIGxldHp0ZXMgSmFociBuYWNoIGRlciBQYXJ0eQpoYWIgaWNoIHdhaHJsaWNoIHNjaG9uIGxhbmcgbmljaHQgbWVociBnZXNlaGVuLgoKd29vZHksIG1hZyBkaWUgKG1nKSBiZXJsaW5lciB0cm90emRlbSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQVJSUkdMISAoU29jcmF0ZSwgIDguIE1hciAxOTk3LCAxMzowMzowOCk6Cn4jISBvbj1SYWZmaSBvdD04NTc3NzAyNzggb2c9cGFydHkKfiMhIHJuPVd1cnplbCBydD04NTc2ODM0OTkgcmc9cGFydHkKfiMhIHRpZD04NTc1MDI0MTUKCkRhcyBpc3QgamEgd29obCBnYXJuaWUgbmljaHQgZWluIHNlbHRzYW1tZXIgRGlhbGVrdC4KU2VsdHNhbW0gKGVpbmZhY2g/KSBpc3QgaG9lY2hzdCBkZXIgZGVyIGRhcyBhbm5pbW10LiBOYSBqYSwgQmVybGluIGdlaG9lcnQgZWgKZWhlciB6dSBQb2xlbiBhbHMgenUgRGV1dHNjaGxhbmcuLi4uLgoKR3J1c3MKSC4KKE1hbCB3aWVkZXIgZGllIE5vZXRpZ3VuZ2VuIGFuZmFjaGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqa2ljaGVyKiAoQ2FyYWRocmFzLCAgOC4gTWFyIDE5OTcsIDIzOjEwOjA4KToKRHUgc2Fnc3Q6IGFlaCAKPiBHdWxEdWthdCB0ZWlsdCBEaXIgbWl0OiBkdSBzb2xsc3QgZG9jaCBrZWluZSBhbmRlcmVuIG11ZHMgbmViZW4gbWcgaGFiZW4hCkR1IHNhZ3N0OiB3aWVzb29vbz8gaW4gVU5JIGJpbiBpY2ggd2VpdGF1cyBhZWx0ZXIgYWxzIGhpZXIhCj4gR3VsRHVrYXQgc2FndDogaGkKRHUgc2Fnc3Q6IGhpZXIgYmluIGljaCBkb2NoIG51ciAxNjYgVGFnZSBhbHQKPiBHdWxEdWthdCBzYWd0OiBoaQpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCkR1IHNhZ3N0OiBrYW5uc3QgZHUgYXVjaCB3YXMgYW5kZXJlcyBhbHMgaGkgc2FnZW4/Cj4gR3VsRHVrYXQgc2FndDogaGkKRHUgc2Fnc3Q6IGhpaGkgCj4gR3VsRHVrYXQgc2FndDogaGkKRHUgd2FlbHp0IERpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgpEdSBzYWdzdDogaGkgCj4gR3VsRHVrYXQgc2FndDogaGkKRHUgc2Fnc3Q6IGh1aHUgCkR1IHNhZ3N0OiBodWhpIAo+IEd1bER1a2F0IHNhZ3Q6IGhpCkd1bER1a2F0IHRyaXR0IERpY2guCkR1IHNhZ3N0OiBhdXRzY2ggOikKW0QtY2hhdDpHdWxEdWthdF0gZHUgYmlzdCBnbGVpY2ggZnJvc2Noc2NoZWtuZWtsbCwgY2FyYQoKICAgICAgICAgKnBydXN0KiBJY2ggbGllYmUgdHJpZ2dlcm5kZSBNYWdpZXIgOikKCiAgICAgICAgICAgICAgICAgRGF0dCBHb2xkZnJvZXNjaGxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKmtpY2hlciogKENhcmFkaHJhcywgIDkuIE1hciAxOTk3LCAwMDoxMzoyNCk6Cn4jISBybj1DYXJhZGhyYXMgcnQ9ODU3ODU5MDA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU3ODU5MDA4CkNlbGViZGlsIGhhZWx0IHNpY2ggZGllIFNlaXRlIHVuZCBsYWNodC4gSGloaS4uLgpDZWxlYmRpbCBzYWd0OiBvb2NoIDopCkd1bER1a2F0IHNhZ3Q6IGRlciBzZW5zaT8KQ2VsZWJkaWwgc2FndDogPEhpY2s+IQpHdWxEdWthdCBzYWd0OiBoaQoKICAgR3VsZGllIGlzdCBsdXN0aWNoIDopICAgICAgICAqcXVhayBxdWFrKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3VuZGF5IE5pZ2h0IEJsdWVzIChTdXNoaSwgIDkuIE1hciAxOTk3LCAyMzo1NDoxMik6Ck1hbm4sIGlzdCBkYXMgaGllciBPRURFISEhIEtvZW5udGUgbmljaHQgbWFsIGplbWFuZCBlaW5lbiBzaW5ubG9zZW4gdGhyZWFkCmxvc3RyZXRlbj8KClN1c2hpLWxhdXQgZ2FlaG5lbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvbm5lbmluc2VsIChIYXJkaWwsIDEwLiBNYXIgMTk5NywgMDg6NDc6MjIpOgoKSG1tbSwKbmljaHQgbnVyLCBkYXNzIGRpZSBTb25uZW5pbnNlbCBkaWUgd2VuaWdzdGVuIERldGFpbHMgaGF0ICh1bnQgcGZsYW56ZW4pCmZ1bmt0aW9uaWVydCBuaWUgLSB1bmQgZGFzIGltIERzY2h1bmdlbC4uLgphdWNoIGRlciBXYWwgaXN0IGtlaW4gV2FsLiA6LSkKCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiB3ZXN0ZW4gdW5kIG5vcmRlbi4KRWluIFdhbC4KTWFlZGNoZW4gaW0gQmlraW5pLgo+IGtudWRkZWwgd2FsCkR1IGthbm5zdCBzb3ZpZWwgaWNoIHdlaXNzIGF1c3NlciBMZWJld2VzZW4gbnVyIFRlZGR5cyBrbnVkZGVsbi4KCi1IYXJkaWwuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW13ZXJmZW5kZXIgR2VzdGFuayAoQWNyaW1vbiwgMTAuIE1hciAxOTk3LCAxMjozODo0NCk6CkR1IHN0ZWhzdCBhdWYgZWluZW0gc2NobWFsZW4gU2ltcywgZGVyIGFuIGVpbmVtIEFid2Fzc2Vya2FuYWwgZW50bGFuZyBmdWVocnQuCkRlciBTaW1zIGlzdCBzbyBzY2htYWwsIGRhc3Mgd2lya2xpY2ggbnVyIGVpbiBGcm9zY2ggYXVmIGlobSBQbGF0eiBmaW5kZXQuIEluCmRlbSBLYW5hbCwgZGVyIGhpZXIgdm9uIFN1ZWRlbiBrb21tZW5kIG5hY2ggV2VzdGVuIGFia25pY2t0LCBmbGllc3N0IGVpbmUKZWtlbGhhZnRlIGJyYXVuZSBCcnVlaGUsIGRpZSBlaW5lbiB1bmdsYXVibGljaGVuIEdlc3RhbmsgdmVyYnJlaXRldC4gRGVyIGlzdApzbyBla2VsaGFmdCwgZGFzcyBEdSBlaWdlbnRsaWNoIG51ciBub2NoIHZvbiBoaWVyIHdlZyBtb2VjaHRlc3QuIERhenUga2FubnN0CkR1IGRlbiBTaW1zIGVudGxhbmcgbmFjaCBTdWVkZW4gb2RlciBXZXN0ZW4gbGF1ZmVuLCBvZGVyIER1IGtsZXR0ZXJzdCBhbiBkZW4KRWlzZW5zcHJvc3NlbiBuYWNoIG9iZW4sIGRpZSBzaWNoIGFuIGRlciBOb3Jkd2FuZCBiZWZpbmRlbi4KRWluZSBLYW5hbHJhdHRlLgo+ID8gZ2VzdGFuawpEZXIgR2VzdGFuayBpc3QgZWluZmFjaCB3aWVkZXJ3YWVydGlnLiBSaWVjaCcgZG9jaCBudXIgbWFsLgo+IHJpZWNoZQpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgpCdWFoLCB3YXMgZnVlciBlaW4gR2VzdGFuayEgQWJzb2x1dCB3aWRlcmxpY2ghCj4KCkFjcmltb24sIGRlbiBSb3RlbiBSaXR0ZXIgc2NodWV0dGVsdHMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpad2VpdGllPz8gSWNoPz8gKEZsb3JhLCAxMC4gTWFyIDE5OTcsIDEzOjA2OjUwKToKR2VyYWRlIGViZW4gYmVpbSBFaW5sb2dnZW46CgogICdXZW5uIER1IG51ciBtYWwgcmVpbnNjaG51ZWZmZWxuIHdpbGxzdCwgc28gbmVubmUgRGljaCAiZ2FzdCIuJwoKRGVyIFN0ZWluYmVpc3NlciB3YXJudCBEaWNoOgogICdXZWhlLCBEdSBmYWVuZ3N0IGFuLCBhbmRlcmUgU3BpZWxlciBhbnp1Z3JlaWZlbi4nCgpEZXIgU3RlaW5iZWlzc2VyIHZlcnNjaHdpbmRldCB3aWVkZXIsIHVuZCBEdSB3YWNoc3QgaW4gZWluZXIgYW5kZXJlbiBXZWx0IGF1Zi4KCldpZSBoZWlzc3QgRHUgZGVubiA/IGZsb3JhClNoYXJpYSBydWZ0OiBaV0VJVEkgISEgOi0pClNjaG9lbiwgZGFzcyBEdSB3aWVkZXIgZGEgYmlzdCwgRmxvcmEhCgoKRGFzIHdhciBtaXIgYWxsZXJkaW5ncyBuZXUhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc29ubmVuaW5zZWwgKFdpbGxpLCAxMC4gTWFyIDE5OTcsIDE0OjQ5OjE1KToKfiMhIHJuPUhhcmRpbCBydD04NTc5ODAwNDIgcmc9c2NobWFycm4KfiMhIHRpZD04NTc5ODAwNDIKRmFociBkb2NoIG5vY2htYWwgaGluIHVuZCB1bnRlcnN1Y2ggZGVuIEJpa2luaSA7KSkKCi4uLiBXaWxsaQoqCmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnZvcmxpZWJlbiAoSG9vZCwgMTEuIE1hciAxOTk3LCAwMzozOTo0Myk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIEh5ZHJha29wZnNdIE1haGF0bWEsIGRpZSBIeWRyYSBpc3QgbWlyIGxpZWJlci4uLgoKLS0tLS0tCnBhdHJ5biwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhcGFnZWllbm11bmQgKExpLCAxMS4gTWFyIDE5OTcsIDEwOjIyOjI0KToKRWJlbiBlcmxlYnQuLi4KCltBbGxnZW1laW46RGVudGldIHVudCB0c2NodWVzcy4gRGVudGkgLT4gU2VsYnRzbG9lc2NodW5nCk11c2FzaGkga3JhZWNoenQ6IC4uLiBrZWluIHd1bmRlciBiZWkgc293YXMhIC4uLiBrcnJyb29hYWEhCgpIbW0sIG1laW0gUGFwYWdlaSB3ZWlzcyBvZmZlbnNpY2h0bGljaCBtZWhyIGFscyBpY2ghLi4uCkxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMYW5nd2VpbGlnIChMaSwgMTEuIE1hciAxOTk3LCAxMDozOToyNSk6CnNpZG9saW4gaXN0IGxhbmd3ZWlsaWchCnNpZG9saW4gbGFuZ3dlaWx0IHNpY2ghCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmdWVyIHNpZG9saW4gKEhhcmRpbCwgMTEuIE1hciAxOTk3LCAxMToyMToyMCk6CgpMaWViZXIgU2lkb2xpbi4KV2VubiBESXIgbGFuZ3dlaWxpZyBpc3QsIHNjaHJlaWIgZG9jaCBlaW5mYWNoIERlaW5lIERpcGxvbWFyYmVpdC4KT2RlciBzY2hyZWliIGFuIERlaW5lbSBCdWNoICdFaXNlbmJhaG5mYWhyZW4gZnVlciBBbmZhZW5nZXInIHdlaXRlci4KClZpZWxlIGxpZWJlIEdydWVzc2UuCgotSGFyZGlsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2huZSB3b3J0ZSAoWm9ycm8sIDExLiBNYXIgMTk5NywgMTE6Mzk6NTUpOgpIZWZlIHRlaWx0IERpciBtaXQ6IHNhZyBtYWwsIHdlciB3YXIgZG9jaCBnbGVpY2ggdW5zZXIgZ2lsZGVubWFnaWVyID8gUm9jaHVzID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBmdWVyIHNpZG9saW4gKENhdW5vLCAxMS4gTWFyIDE5OTcsIDEyOjE3OjQyKToKfiMhIHJuPUhhcmRpbCBydD04NTgwNzU2ODAgcmc9c2NobWFycm4KfiMhIHRpZD04NTgwNzU2ODAKRGFzIGhhc3QgZHUgZmFsc2NoIHZlcnN0YW5kZW4uClNpZG9saW4gbGFuZ3dlaWx0IHNpY2gsIHdlaWwgZXIgbGFuZ3dlaWxpZyBpc3QuCkthbm4gamVtYW5kIGVpbmVuIHRpcCBnZWJlbiB3aWUgc2lkb2xpbiBuaWNodCBtZWhyIGxhbmd3ZWlsaWcgd2lyZD8KT2RlciAuLi4gYWVoIC4uLgoKQy4gTm8KCmVnYWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVlciBXZWcgPyAoWm9ycm8sIDExLiBNYXIgMTk5NywgMTQ6MTI6MzgpOgpEZXIgU3BpZWdlbCBrbGFlcnQgc2ljaCB1bmQgRHUgc2llaHN0OgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkR1IGJpc3QgbnVuIGluIGRlciBFaW5nYW5nc2hhbGxlIGRlciBHZWZhZW5nbmlzaW5zZWwuIER1bmtsZSwga2FsdGUgV2FlbmRlCnJhZ2VuIHVtIERpY2ggaGVydW0gZW1wb3IuIEhpbnRlciBlaW5lciBHbGFzc2NoZWliZSBzaXR6dCBlaW5lIFdhY2hlLiBEdXJjaApkYXMgVG9yIGltIE5vcmRlbiBrYW5uc3QgRHUgZGllc2VuIHRyb3N0bG9zZW4gT3J0IHdpZWRlciB2ZXJsYXNzZW4uCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkd2VzdGVuLCBub3JkZW4gdW5kIHN1ZWRvc3Rlbi4KRGllIEh5ZHJhLgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpab3JybyBoYXNzdCBkaWVzZSBiZXNjaGlzc2VuZW4gSGF1c3RpZXJlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWVyIFdlZyA/IChOYXNpbSwgMTEuIE1hciAxOTk3LCAxNDo0Njo1OSk6Cn4jISBybj1ab3JybyBydD04NTgwODU5NTggcmc9c2NobWFycm4KfiMhIHRpZD04NTgwODU5NTgKV2llc28gZWlnZW50bGljaCAiRGllIEh5ZHJhIj8gUmljaHRpZyB3YWVyZSBqYSB3b2hsICJFaW5lIEthdHplIG5hbWVucyBIeWRyYS4iCgogIE5hc2ltLCBIeWRyYWhhbHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVUZGIChZYW50cm8sIDExLiBNYXIgMTk5NywgMTY6MDE6NTIpOgoKcmtudWRkZWwgbmVzYWphCkR1IGhvZXJzdCBlaW4gR3JvbGxlbi4gRGVyIFZ1bGthbiBpc3QgbWFsIHdpZWRlciBha3Rpdi4KCnR1IGljaCBhdWNoIE5JRSBOSUUgbWVociB3aWVkZXIuLi4uCgpZYW50cm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNhY2hlbiBnaWIncyA6KSAoWm9ycm8sIDExLiBNYXIgMTk5NywgMTc6MDU6NTkpOgpyZWliZSB6b3JybwpEdSBuaW1tc3QgcmVpY2hsaWNoIFNjaG5lZSB1bmQgcmVpYnN0IGRhbWl0IGRhcyBHZXNpY2h0IHZvbiBab3JybwpncnVlbmRsaWNoIGVpbi4gSGFlbWlzY2ggZ3JpbnNlbmQgYmVtZXJrc3QgRHUgd2llIGVyIGtuYWxscm90CmFubGFldWZ0Li4uIERhcyB0dXQgYmVzdGltbXQgZ3V0IQpTY2hhZW1zdCBEdSBEaWNoIG5pY2h0Pz8gV2llIGthbm5zdCBEdSBudXIgc28gc2NoYWRlbmZyb2ggc2Vpbj8/ClpvcnJvIGdyZWlmdCBzaWNoIHBsb2V0emxpY2ggZWluZSBIYW5kIHZvbGwgU2NobmVlLiBCZXZvciBEdSBEaWNoCndlaHJlbiBrYW5uc3QgaGF0IGVyIERpciBhdWNoIHNjaG9uIGRhcyBHZXNpY2h0IGVpbmdlcmllYmVuISEKSWdpdHQgaXN0IGRhcyBLIEEgTCBUICEhISEhIERlaW4gR2VzaWNodCB0dXQgRGlyIHppZW1saWNoIHdlaC4uLgpJcmdlbmR3aWUgZmluZGVzdCBEdSBkYXMgZ2FyIG5pY2h0IGtvbWlzY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZWdlc2NyaXB0IG1pdCBQYXBhZ2VpIHVuZCBEYWVtb24gKElzc29tYWQsIDEyLiBNYXIgMTk5NywgMDc6MDc6MzUpOgoKTmVydmtvcHAgZmxhdHRlcnQgaGVyZWluLgpUdXRzenQgc2NobGVpY2h0IGJsdXRnaWVyaWcgaGVyZWluLgpOZXJ2a29wcCBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIFR1dHN6dCwgZWluIEthbmluY2hlbiwgVHV0c3p0LApOZXJ2a29wcCBrcmFlY2h6dDogVHV0c3p0LCBUdXRzenQsIFR1dHN6dCwgZWluIEhpcnNjaCwgVHV0c3p0LCBUdXRzenQsIFR1dHN6dCwKTmVydmtvcHAga3JhZWNoenQ6IFR1dHN6dCwgVHV0c3p0LCBlaW5lIE1hbWJhLCBUdXRzenQsIFR1dHN6dCwgZWluIFJhYmUsCk5lcnZrb3BwIGtyYWVjaHp0OiBUdXRzenQgdW5kIFR1dHN6dCAuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2FzIGhhdCBlciBudXIgZ2VnZW4gS2V5Li4uIChKYXNwZXIsIDEyLiBNYXIgMTk5NywgMTI6MzU6MzYpOgp+IyEgcm49TGluZGlyIHJ0PTg1Nzc2NDk2NCByZz1zY2htYXJybgp+IyEgdGlkPTg1Nzc2NDk2NApHRXNjaGllaHQgaWhtIGdhbnogcmVjaHQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1ZiBhdXNkcnVlY2tsaWNoZXMgVmVyYm90Li4gKEd1eWJydXNoLCAxMi4gTWFyIDE5OTcsIDE5OjI2OjU2KToKCi4uLnZvbiBIYXRlIGhpbi4KSGllciwgenVzYW1tZW5oYW5nc2xvcyB2b20gTWFnaWVyLUthbmFsOgoKW01hZ2llcjpIYXRlXSBVbmQgZXMgaGFrdCBiZWkgc2VpbmVuIEJyb2V0Y2hlbgoKCkd1eWJydXNoLCB3YXJ0ZW5kIGF1ZiBzZWluZSBnZXJlY2h0ZSBTdHJhZmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzb25uZW5pbnNlbCAoVGVkZHksIDEyLiBNYXIgMTk5NywgMjE6MzM6NDMpOgp+IyEgcm49SGFyZGlsIHJ0PTg1Nzk4MDA0MiByZz1zY2htYXJybgp+IyEgdGlkPTg1Nzk4MDA0MgpXaWVzbz8KVGVkZHlzIHNpbmQgZG9jaCBMZWJld2VzZW4hIDstKQoKVGVkZHksIGFuIHNlaW5lciBFeGlzdGVueiB6d2VpZmVsbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmQgR2xvY2tlbiBrb2VubmVuIHJlZGVuIChBY3JpbW9uLCAxMy4gTWFyIDE5OTcsIDExOjI0OjUyKToKCkF1cyBkZXIgRmVybmUgaG9lcnN0IER1IGRhcyBMYWV1dGVuIGRlciBHcmltbWJvcm5nbG9ja2UuCltBbGxnZW1laW46U2lsdmFuYSBnZWh0IGRhbm4gbWFsLl0KQXVzIGRlciBGZXJuZSBob2Vyc3QgRHUgZGFzIExhZXV0ZW4gZGVyIExpZWJlc2dsb2NrZS4KW0FsbGdlbWVpbjpZYW50cm9dIHdvaGluPwpbQWxsZ2VtZWluOllhbnRyb10gYWNoIHp1IG1pciA6KQpBdXMgZGVyIEZlcm5lIGhvZXJzdCBEdSBkYXMgTGFldXRlbiBkZXIgVHJhdWVyZ2xvY2tlLgoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3aW45NSAoUm9jaHVzLCAxMy4gTWFyIDE5OTcsIDEyOjE1OjQ1KToKQXVzIG11ZW5zdGVyLmNvbXB1dGVyOgo+ICA+IE5haGV6dSBzYWVtdGxpY2hlIFNvZnR3YXJlIGZ1ZXIgV2luIDMuMSBsYWV1ZnQgbmF0dWVybGljaCBhdWNoCj4gID4gdW50ZXIgV2luOTUuCj4KPiAgRXIgaGF0ICduYXR1ZXJsaWNoJyBnZXNjaHJpZWJlbiwgZXIgaGF0ICduYXR1ZXJsaWNoJyBnZXNjaHJpZWJlbiEgOi0pKSkKCkdvdHQgc2VpIERhbmsuIEVyIGhhZXR0ZSBhdWNoICdwcm9ibGVtbG9zJyBzY2hyZWliZW4ga29lbm5lbi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBFc3MtWmV0dCwgbWFsIHdpZWRlci4gKFNvY3JhdGUsIDEzLiBNYXIgMTk5NywgMTU6Mjk6MzUpOgp+IyEgb249V2lsbGkgb3Q9ODU4MjYxODg2IG9nPWRpc2t1c3Npb24KfiMhIHJuPVdhcmdvbiBydD04NTgyNTg3MjIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTg1ODE3NDYwMgoxLiBjNCBTZjYKMi4gU2MzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBFc3MtWmV0dCwgbWFsIHdpZWRlci4gKE9ldHRpLCAxMy4gTWFyIDE5OTcsIDE3OjM0OjM0KToKfiMhIHJuPVNvY3JhdGUgcnQ9ODU4MjYzMzc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU4MTc0NjAyCkJvYWhoaCwgaWhyIHNlaWQgc28gdG9sbGUgSGVjaHRlLCBpaHIga29lbm50IFNjaGFjaCBzcGllbGVuLCB3ZW5uIGljaCBqZXR6dCBuCk1hZWRlbCB3YWVyZSwKd2FlcmUgaWNoIHNpIGJlZWluZHJ1Y2t0IGRhc3MgaWNoIHNvZm9ydCBtaXQgZXVjaCBGcmVzc2VuLCBGKioqKiB1bmQKRmVybnNlaGVuIHdvbGx0ZS4uLgoKTmUgZWNodCB3aWNodGlnIGF1Y2ggbWFsIGludGVsZWt0dWVsbCB6dSBzZWluIHVuZCBzby4uLgoKT2V0dGkgKExOMTArKykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptYWdpZXJoaWxmZSAoWm9ycm8sIDEzLiBNYXIgMTk5NywgMTk6MzQ6MzIpOgpHZXN0ZW4gdWViZXIgZGVyIEt1Z2VsLCB1bmQgRHUgc2llaHN0OgpIaWVyIGxpY2h0ZXQgc2ljaCBkZXIgV2FsZCBldHdhcyB1bmQgbGFlc3N0IGFuIGVpbmlnZW4gU3RlbGxlbiBkaWUgU29ubmUKZHVyY2guIFVlYmVyIERpciB6d2l0c2NoZXJuIFZvZWdlbCwgdW5kIGRlciBQZmFkIHdlaXRldCBzaWNoIHp1IGVpbmVyCnJpY2h0aWdlbiBrbGVpbmVuIFN0cmFzc2UgYXVzLiBVZWJlcmFsbCBhbSBXZWdlc3JhbmQgd2FjaHNlbiBidWVuZGVsd2Vpc2UKTHVwaW5lbiBkZXIgc2Nob2Vuc3RlbiBGYXJiZW4gdW5kIEZvcm1lbi4gSGllciB2ZXJ6d2VpZ3Qgc2ljaCBkZXIgV2VnIHVuZCBlaW4KYWx0ZXIsIHZlcndpdHRlcnRlciBXZWd3ZWlzZXIgc3RlaHQgYmVyZWl0LCB1bSBkaXIgQXVza3VuZnQgdWViZXIgZGllIFVtZ2VidW5nCnp1IGdlYmVuLiBJbSBTdWVkZW4gZ2xpdHplcnQgV2Fzc2VyIGR1cmNoIGRpZSBCYWV1bWUuCkVzIGdpYnQgdmllciBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZHdlc3Rlbiwgbm9yZHdlc3RlbiB1bmQgc3VlZG9zdGVuLgpBc21vZGlzIGphZ3QgZGllIEZsZWRlcm1hdXMuCkhlcnIgQWNyaW1vbiBkZXIgUm90ZSBSaXR0ZXIuCkZsb3Jpc3QgVHV4IGRlciBmaW5zdGVyZSBDaGFvcy1LcmllZ2VyLgpbTWV0emdlcmluOl0gU2hhcmlhIGRpZSBIb2hlcHJpZXN0ZXJpbiBkZXMgTGVtYm9sZC4KRG9tIEJlbmRlaWdpZCAsIExhcmFuenUgdm9uIE5lc2theWEuCkRpZSBIeWRyYS4KRWluIGdyb3NzZXIgSGF1ZmVuIHNlbHRzYW1lciBLbm9jaGVuLgo+IFJvZG1hbiBncmluc3QuCltTZWhlcjpBc21vZGlzXSBoeWRyYSBpc3QgZG9jaCBpbW11biBnZWdlbiB3dXJmc3Rlcm5lIDopCkJpZ2FzIGdpYnQgS2lsYXIgMTAwMDAgTXVlbnplbi4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAyMTAgTWFnaWVwdW5rdGUuCkRhcyBNb3JnZW5HcmF1ZW4gZXJ6aXR0ZXJ0IHVudGVyIGVpbmVtIGxhbmdlem9nZW5lbiwgdW5tZW5zY2hsaWNoZW4gU2NocmVpLgpEaWUgSHlkcmEgc3RpcmJ0IGluIGVpbmVtIE1lZXIgdm9uIEJsdXQuClNoYXJpYSByZWlodCBzaWNoIG51biBpbiBkaWUga3VyemUgTGlzdGUgZGVyIHNhZ2VudW13b2JlbmVuIEh5ZHJhdG9ldGVyIGVpbgp1bmQgYmVrb21tdCBlaW5lIGRlciBsZWdlbmRhZXJlbiBSdWVzdHVuZ2VuIGRpZXNlciBadW5mdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBtYWdpZXJoaWxmZSAoQmVuZGVpZ2lkLCAxMy4gTWFyIDE5OTcsIDE5OjUyOjI1KToKfiMhIHJuPVpvcnJvIHJ0PTg1ODI3ODA3MiByZz1zY2htYXJybgp+IyEgdGlkPTg1ODI3ODA3MgpkZW4gaGFiIGljaCBuaWNodCB2ZXJzdGFuZGVuLgoKRHVtbSwgZG9vZiwgdW5kIG51ciBhbHMgWnVzY2hhdWVyIGRhYmVpZ2V3ZXNlbiBzZWllbmQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJlbmRlaWdpZApBY2ggamEsIHdhciBhYnNvbHV0IGh1bW9ybG9zIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZXJsaW4gLi4uLiAoQXNtb2RpcywgMTMuIE1hciAxOTk3LCAyMTo1NDoyOSk6CgoKTWVybGluIHJ1ZnQ6IEljaCBiaW4gaW0gR2ViaXJnZS4KRWluIGxhdXRlciBLbmFsbCBoYWxsdCB2b20gR2ViaXJnZSBoZXJ1ZWJlci4KCldhcyBoYXR0ZXIgZGVubiBqZXR6dCB3aWVkZXIga2FwdXR0Z2VtYWNodCA/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVG9kIGVpbmVzIEhlbGRlbiAoQXNtb2RpcywgMTMuIE1hciAxOTk3LCAyMzo1MzoxOSk6ClZvcmdlc2NoaWNodGU6IEljaCB3b2xsdGUgenVzYW1tZW4gbWl0IFR5cmlvbiB1bmQgUmluZ29yIGRpZSBSYWV1YmVyIHBsYWV0dGVuLgoKMS4gS2FtcGZydW5kZTo6CgpSaW5nb3IgcGFyaWVydCBkaWUgbmFlY2hzdGVuIEFuZ3JpZmZlIG1pdCBlaW5lbSBHb2xlbWFybS4KUmluZ29yIHBhcmllcnQgZGllIG5hZWNoc3RlbiBBbmdyaWZmZSBtaXQgZWluZW0gS2llZmVya25vY2hlbi4KICBSaW5nb3IgZ3JlaWZ0IEJlbmRhaWdhIEVnaWQgbWl0IGVpbmVtIEdvbGVtYXJtIGFuLgogIFJpbmdvciB2ZXJmZWhsdCBCZW5kYWlnYSBFZ2lkLgogIFNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gZ3JlaWZ0IFJpbmdvciBtaXQgZWluZW0gU2Nod2VydCBkZXIgUnVoZSBhbi4KUmluZ29yIHBhcmllcnQgZGVuIEFuZ3JpZmYgbWl0IGRlbSBHb2xlbWFybS4KICBTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIHRyaWZmdCBSaW5nb3IgaGFydC4KICBgYENhc3R5JycgRWxhZHJpZWwgZ3JlaWZ0IFJpbmdvciBtaXQgaWhyZW4gRmFldXN0ZW4gYW4gYW4uClJpbmdvciBwYXJpZXJ0IGRlbiBBbmdyaWZmIG1pdCBkZW0gR29sZW1hcm0uCiAgYGBDYXN0eScnIEVsYWRyaWVsIHZlcmZlaGx0IFJpbmdvci4KYGBDYXN0eScnIEVsYWRyaWVsIGZpeGllcnQgaWhyZSBIYWVuZGUgdW5kIGZsdWVzdGVydCBldHdhcy4KICBgYENhc3R5JycgRWxhZHJpZWxzIEhhZW5kZSBiZWdpbm5lbiB6dSBicmVubmVuIQogIEJlbmRhaWdhIEVnaWQgZ3JlaWZ0IFJpbmdvciBtaXQgZWluZW0gVm9sbHN0cmVja2VyIGFuLgogIEJlbmRhaWdhIEVnaWQgdHJpZmZ0IFJpbmdvci4KS2llc2VsdHJpbSBHcmllc2VsaHVjayB1bnRlcmxhZXVmdCBkaWUgV2FmZmUgdm9uIFJpbmdvci4KICBLaWVzZWx0cmltIEdyaWVzZWxodWNrIGdyZWlmdCBSaW5nb3IgbWl0IGVpbmVtIEtyaWVnc2JlaWwgYW4uClJpbmdvciBwYXJpZXJ0IGRlbiBBbmdyaWZmIG1pdCBkZW0gR29sZW1hcm0uCiAgS2llc2VsdHJpbSBHcmllc2VsaHVjayB2ZXJmZWhsdCBSaW5nb3IuCiAgU292YW50aGFzIHZvbiBUb2wgRWxkYXIgZ3JlaWZ0IFJpbmdvciBtaXQgZWluZW0gVm9sbHN0cmVja2VyIGFuLgpSaW5nb3IgcGFyaWVydCBkZW4gQW5ncmlmZiBtaXQgZGVtIEdvbGVtYXJtLgpSaW5nb3IgcGFyaWVydCBkZW4gQW5ncmlmZiBtaXQgZGVtIEtpZWZlcmtub2NoZW4uCgogIEplYW4tQ2xhdWRlIGBgVG9kZXNmYXVzdCcnIFBlbHpmdXNzIGdyZWlmdCBSaW5nb3IgbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiAKICBKZWFuLUNsYXVkZSBgYFRvZGVzZmF1c3QnJyBQZWx6ZnVzcyB2ZXJmZWhsdCBSaW5nb3IuCkplYW4tQ2xhdWRlIGBgVG9kZXNmYXVzdCcnIFBlbHpmdXNzIG5pbW10IGVpbmVuIFd1cmZzdGVybiBpbiBkaWUgSGFuZCB1bmQKd2lyZnQgaWhuIG5hY2ggUmluZ29yLgpSaW5nb3IgcGFyaWVydCBkZW4gQW5ncmlmZiBtaXQgZGVtIEdvbGVtYXJtLgpSaW5nb3IgcGFyaWVydCBkZW4gQW5ncmlmZiBtaXQgZGVtIEtpZWZlcmtub2NoZW4uCiAgSmVhbi1DbGF1ZGUgYGBUb2Rlc2ZhdXN0JycgUGVsemZ1c3MnIFd1cmZzdGVybiB0cmlmZnQgUmluZ29yIGFtIEFybS4KUmluZ29yIHZlcnN1Y2h0IHNlaW5lIEF0dGFja2VuIGF1ZiBCZW5kYWlnYSBFZ2lkIHp1IGtvbnplbnRyaWVyZW4sIHdhcyBpaG0KYWJlciB2b2VsbGlnIG1pc3NsaW5ndCB1bmQgbnVuIHdpZSBnZWxhZWhtdCBoZXJ1bXN0ZWh0Lgo+IFR5cmlvbiBmZXVlcnQgZWluZW4gc2NocmlsbGVuIEthbXBmc2NocmVpIGF1ZiBCZW5kYWlnYSBFZ2lkIGFiLgogIFR5cmlvbiBzY2hsYWVndCBCZW5kYWlnYSBFZ2lkIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCiAgVHlyaW9uIGdyZWlmdCBCZW5kYWlnYSBFZ2lkIG1pdCBlaW5lbSBCbHV0c2F1Z2VyLVNjaHdlcnQgYW4uCiAgVHlyaW9uIGtyYXR6dCBCZW5kYWlnYSBFZ2lkLgogIFNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gZ3JlaWZ0IFJpbmdvciBtaXQgZWluZW0gU2Nod2VydCBkZXIgUnVoZSBhbi4KUmluZ29yIHBhcmllcnQgZGVuIEFuZ3JpZmYgbWl0IGRlbSBHb2xlbWFybS4KUmluZ29yIHBhcmllcnQgZGVuIEFuZ3JpZmYgbWl0IGRlbSBLaWVmZXJrbm9jaGVuLgogIFNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gdmVyZmVobHQgUmluZ29yLgogIGBgQ2FzdHknJyBFbGFkcmllbCBncmVpZnQgVHlyaW9uIG1pdCBicmVubmVuZGVuIEhhZW5kZW4gYW4uCiAgYGBDYXN0eScnIEVsYWRyaWVsIHZlcmZlaGx0IFR5cmlvbi4KYGBDYXN0eScnIEVsYWRyaWVsIHNjaHVldHRlbHQgaXJnZW5kd2llIHdpcnIgaWhyZSBIYWVuZGUuCmBgQ2FzdHknJyBFbGFkcmllbCB3YWVjaHN0IHBsb2V0emxpY2ggZWluZSB6dXNhZXR6bGljaGUgSGFuZC4KICBCZW5kYWlnYSBFZ2lkIGdyZWlmdCBUeXJpb24gbWl0IGVpbmVtIFZvbGxzdHJlY2tlciBhbi4KICBCZW5kYWlnYSBFZ2lkIHRyaWZmdCBUeXJpb24uCktpZXNlbHRyaW0gR3JpZXNlbGh1Y2sgYmVzY2hsZXVuaWd0IHNlaW5lIEF0dGFja2VuIQogIEtpZXNlbHRyaW0gR3JpZXNlbGh1Y2sgZ3JlaWZ0IFJpbmdvciBtaXQgZWluZW0gS3JpZWdzYmVpbCBhbi4KUmluZ29yIHBhcmllcnQgZGVuIEFuZ3JpZmYgbWl0IGRlbSBLaWVmZXJrbm9jaGVuLgogIEtpZXNlbHRyaW0gR3JpZXNlbGh1Y2sgdmVyZmVobHQgUmluZ29yLgogIFNvdmFudGhhcyB2b24gVG9sIEVsZGFyIGdyZWlmdCBUeXJpb24gbWl0IGVpbmVtIFZvbGxzdHJlY2tlciBhbi4KICBTb3ZhbnRoYXMgdm9uIFRvbCBFbGRhciB0cmlmZnQgVHlyaW9uIGhhcnQuCmVuZW4gU290by1zaHV0by11Y2hpIGFuLgogIEplYW4tQ2xhdWRlIGBgVG9kZXNmYXVzdCcnIFBlbHpmdXNzIGtpdHplbHQgVHlyaW9uIGFtIEJhdWNoLgpbdG9ldGUgYWxsZV0KT2sKT2sKT2sKT2sKPiBCZW5kYWlnYSBFZ2lkIGlzdCBhYnNvbHV0IGZpdC4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAxODYgTWFnaWVwdW5rdGUuCiAgRHUgZ3JlaWZzdCBCZW5kYWlnYSBFZ2lkIG1pdCBlaW5lbSBzZWhyIGdlbHVuZ2VuZW4gU290by1zaHV0by11Y2hpIGFuLgogIER1IHNjaGxhZWdzdCBCZW5kYWlnYSBFZ2lkIHp1IEJyZWkuCiAgVHlyaW9uIGdyZWlmdCBCZW5kYWlnYSBFZ2lkIG1pdCBlaW5lbSBCbHV0c2F1Z2VyLVNjaHdlcnQgYW4uCiAgVHlyaW9uIHZlcmZlaGx0IEJlbmRhaWdhIEVnaWQuCiAgVHV0c3p0IGdyZWlmdCBgYENhc3R5JycgRWxhZHJpZWwgbWl0IFJlaXNzemFlaG5lbiB1bmQgS3JhbGxlbiBhbi4KICBUdXRzenQgdmVyZmVobHQgYGBDYXN0eScnIEVsYWRyaWVsLgpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2hucyBTY2h3ZXJ0IHZlcnNjaGFmZnQgRGlyIFJ1aGUuCiAgU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBncmVpZnQgRGljaCBtaXQgZGVtIFNjaHdlcnQgZGVyIFJ1aGUgYW4uCiAgRHUgd2VocnN0IGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBNb3JvdGUtdHN1a2FtaS11a2UgYWIuCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMTg1IE1hZ2llcHVua3RlLgogIFNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gdHJpZmZ0IERpY2ggc2VociBoYXJ0LgpEdSBoYXN0IGpldHp0IDE5NyBMZWJlbnNwdW5rdGUgdW5kIDE4NSBNYWdpZXB1bmt0ZS4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBrb256ZW50cmllcnQgc2ljaC4KICBgYENhc3R5JycgRWxhZHJpZWwgZ3JlaWZ0IFJpbmdvciBtaXQgYnJlbm5lbmRlbiBIYWVuZGVuIGFuLgpSaW5nb3IgcGFyaWVydCBkZW4gQW5ncmlmZiBtaXQgZGVtIEdvbGVtYXJtLgpSaW5nb3IgcGFyaWVydCBkZW4gQW5ncmlmZiBtaXQgZGVtIEtpZWZlcmtub2NoZW4uCiAgYGBDYXN0eScnIEVsYWRyaWVsIHZlcmZlaGx0IFJpbmdvci4KQmVuZGFpZ2EgRWdpZCB6aWVodCBlaW5lIFdpbGRsZWRlcmhvc2UgYXVzLgpCZW5kYWlnYSBFZ2lkIGdpYnQgYGBDYXN0eScnIEVsYWRyaWVsIGRpZSBXaWxkbGVkZXJob3NlLgpgYENhc3R5JycgRWxhZHJpZWwgbWFjaHQgZWluIHBhYXIgYmVzY2h3b2VyZW5kZSBHZXN0ZW4gdWViZXIgZGVyCldpbGRsZWRlcmhvc2UuCkRpZSBXaWxkbGVkZXJob3NlIGJsaXR6dCBrdXJ6IGF1Zi4KYGBDYXN0eScnIEVsYWRyaWVsIGdpYnQgQmVuZGFpZ2EgRWdpZCBkaWUgV2lsZGxlZGVyaG9zZS4KQmVuZGFpZ2EgRWdpZCB6aWVodCBlaW5lIFdpbGRsZWRlcmhvc2UgYW4uCiAgQmVuZGFpZ2EgRWdpZCBncmVpZnQgRGljaCBtaXQgZGVtIFZvbGxzdHJlY2tlciBhbi4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIFNvdG8tYXNoaWJvLWtha2UtdWtlIGFiLgpEdSBoYXN0IGpldHp0IDE5NyBMZWJlbnNwdW5rdGUgdW5kIDE4NCBNYWdpZXB1bmt0ZS4KICBCZW5kYWlnYSBFZ2lkIHRyaWZmdCBEaWNoIGhhcnQuCkR1IGhhc3QgamV0enQgMTg3IExlYmVuc3B1bmt0ZSB1bmQgMTg0IE1hZ2llcHVua3RlLgpLaWVzZWx0cmltIEdyaWVzZWxodWNrIG1hY2h0IGVpbmUgRmludGUgZ2VnZW4gVHV0c3p0LgpLaWVzZWx0cmltIEdyaWVzZWxodWNrIHNjaGxhZWd0IFR5cmlvbiBwbG9ldHpsaWNoIHVuZCB2b2VsbGlnIHVuZXJ3YXJ0ZXQgbWl0CmVpbmVtIEtyaWVnc2JlaWwuCiAgS2llc2VsdHJpbSBHcmllc2VsaHVjayBzY2hsYWVndCBUeXJpb24gbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KICBLaWVzZWx0cmltIEdyaWVzZWxodWNrIGdyZWlmdCBSaW5nb3IgbWl0IGVpbmVtIEtyaWVnc2JlaWwgYW4uClJpbmdvciBwYXJpZXJ0IGRlbiBBbmdyaWZmIG1pdCBkZW0gR29sZW1hcm0uClJpbmdvciBwYXJpZXJ0IGRlbiBBbmdyaWZmIG1pdCBkZW0gS2llZmVya25vY2hlbi4KICBLaWVzZWx0cmltIEdyaWVzZWxodWNrIHRyaWZmdCBSaW5nb3Igc2VociBoYXJ0LgogIEtpZXNlbHRyaW0gR3JpZXNlbGh1Y2sgZ3JlaWZ0IFR1dHN6dCBtaXQgZWluZW0gS3JpZWdzYmVpbCBhbi4KICBLaWVzZWx0cmltIEdyaWVzZWxodWNrIGtyYXR6dCBUdXRzenQuCktpZXNlbHRyaW0gR3JpZXNlbGh1Y2sgc3RlY2t0IGVpbiBLcmllZ3NiZWlsIHp1cnVlY2suCktpZXNlbHRyaW0gR3JpZXNlbGh1Y2sgd2lyZnQgZWluZW4gU2FldXJlYmFsbCBhdWYgZGVuIEJvZGVuLgpEaWUgRXhwbG9zaW9uIGRlcyBTYWV1cmViYWxscyB0cmlmZnQgRGljaC4KRHUgaGFzdCBqZXR6dCAxODcgTGViZW5zcHVua3RlIHVuZCAxODEgTWFnaWVwdW5rdGUuCiAgRHUgd2VpY2hzdCBkZW0gQW5ncmlmZiBhdXMuCktpZXNlbHRyaW0gR3JpZXNlbGh1Y2sgenVlY2t0IGVpbiBLcmllZ3NiZWlsLgogIFNvdmFudGhhcyB2b24gVG9sIEVsZGFyIGdyZWlmdCBSaW5nb3IgbWl0IGVpbmVtIFZvbGxzdHJlY2tlciBhbi4KUmluZ29yIHBhcmllcnQgZGVuIEFuZ3JpZmYgbWl0IGRlbSBHb2xlbWFybS4KICBTb3ZhbnRoYXMgdm9uIFRvbCBFbGRhciB0cmlmZnQgUmluZ29yIHNlaHIgaGFydC4KICBKZWFuLUNsYXVkZSBgYFRvZGVzZmF1c3QnJyBQZWx6ZnVzcyBncmVpZnQgRGljaCBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIApZb2tvLXRvYmktZ2VyaS1rZWtvbWkgYW4uCiAgRHUgd2VocnN0IGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBHYWl3YW4tZ2VkYW4tdWtlIGFiLgpEdSBoYXN0IGpldHp0IDE4NyBMZWJlbnNwdW5rdGUgdW5kIDE4MCBNYWdpZXB1bmt0ZS4gIEplYW4tQ2xhdWRlCmBgVG9kZXNmYXVzdCcnIFBlbHpmdXNzIHZlcmZlaGx0IERpY2guCkplYW4tQ2xhdWRlIGBgVG9kZXNmYXVzdCcnIFBlbHpmdXNzIG5pbW10IGVpbmVuIFd1cmZzdGVybiBpbiBkaWUgSGFuZCB1bmQKd2lyZnQgaWhuIG5hY2ggVHV0c3p0LgpUdXRzenQgd2VpY2h0IGRlbSBBbmdyaWZmIGF1cy4KICBKZWFuLUNsYXVkZSBgYFRvZGVzZmF1c3QnJyBQZWx6ZnVzcycgV3VyZnN0ZXJuIHNjaGVpZGV0IFR5cmlvbiBmYXN0IGRpZQpIYW5kCiAgYWIuCkJlbmRhaWdhIEVnaWQgYmVzY2h3b2VydCBlaW5lbiBIb3JuaXNzZW5zY2h3YXJtIGhlcmJlaS4KRWluIEhvcm5pc3NlbnNjaHdhcm0ga29tbXQgYW4uCiAgRWluIEhvcm5pc3NlbnNjaHdhcm0gZ3JlaWZ0IFR5cmlvbiBtaXQgNzkgU3RhY2hlbG4gYW4uCiAgRGVyIEhvcm5pc3NlbnNjaHdhcm0gdmVyZmVobHQgVHlyaW9uLgpTb3ZhbnRoYXMgdm9uIFRvbCBFbGRhciB2ZXJzdWNodCBlaW5lbiBhbmRlcmVuIFJhZXViZXIgenUgaGVpbGVuLgogIFR5cmlvbiBncmVpZnQgU292YW50aGFzIHZvbiBUb2wgRWxkYXIgbWl0IGVpbmVtIEJsdXRzYXVnZXItU2Nod2VydCBhbi4KU292YW50aGFzIHZvbiBUb2wgRWxkYXIgcGFyaWVydCBkaWUgbmFlY2hzdGVuIEFuZ3JpZmZlIG1pdCBlaW5lbSBWb2xsc3RyZWNrZXIuClNvdmFudGhhcyB2b24gVG9sIEVsZGFyIHBhcmllcnQgZGllIG5hZWNoc3RlbiBBbmdyaWZmZSBtaXQgZGllIEhhcnB5aWVuZmVkZXJuLgogIFR5cmlvbiB0cmlmZnQgU292YW50aGFzIHZvbiBUb2wgRWxkYXIgaGFydC4KICBTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIGdyZWlmdCBUeXJpb24gbWl0IGVpbmVtIFNjaHdlcnQgZGVyIFJ1aGUgYW4uCiAgU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBraXR6ZWx0IFR5cmlvbiBhbSBCYXVjaC4KICBgYENhc3R5JycgRWxhZHJpZWwgZ3JlaWZ0IERpY2ggIG1pdCBicmVubmVuZGVuIEhhZW5kZW4gYW4uCiAgRHUgd2VocnN0IGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBLZW4tanVqaS11a2UgYWIuCkR1IGhhc3QgamV0enQgMTg3IExlYmVuc3B1bmt0ZSB1bmQgMTc5IE1hZ2llcHVua3RlLgogIGBgQ2FzdHknJyBFbGFkcmllbCBzY2hsYWVndCBEaWNoIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCkR1IGhhc3QgamV0enQgMTYyIExlYmVuc3B1bmt0ZSB1bmQgMTc5IE1hZ2llcHVua3RlLgpTb3ZhbnRoYXMgdm9uIFRvbCBFbGRhciB6aWVodCBlaW5lIFphdWJlcnJvYmUgYXVzLgpTb3ZhbnRoYXMgdm9uIFRvbCBFbGRhciBnaWJ0IGBgQ2FzdHknJyBFbGFkcmllbCBkaWUgWmF1YmVycm9iZS4KYGBDYXN0eScnIEVsYWRyaWVsIG1hY2h0IGVpbiBwYWFyIGJlc2Nod29lcmVuZGUgR2VzdGVuIHVlYmVyIGRlciBaYXViZXJyb2JlLgpEaWUgWmF1YmVycm9iZSBibGl0enQga3VyeiBhdWYuCmBgQ2FzdHknJyBFbGFkcmllbCBnaWJ0IFNvdmFudGhhcyB2b24gVG9sIEVsZGFyIGRpZSBaYXViZXJyb2JlLgpTb3ZhbnRoYXMgdm9uIFRvbCBFbGRhciB6aWVodCBlaW5lIFphdWJlcnJvYmUgYW4uCiAgQmVuZGFpZ2EgRWdpZCBncmVpZnQgVHV0c3p0IG1pdCBlaW5lbSBWb2xsc3RyZWNrZXIgYW4uCiAgQmVuZGFpZ2EgRWdpZCB0cmlmZnQgVHV0c3p0IGhhcnQuCktpZXNlbHRyaW0gR3JpZXNlbGh1Y2sgdHJpdHQgUmluZ29yIGhlaW10dWVja2lzY2guClJpbmdvciBwYXJpZXJ0IGRlbiBBbmdyaWZmIG1pdCBkZW0gR29sZW1hcm0uCiAgS2llc2VsdHJpbSBHcmllc2VsaHVjayB2ZXJmZWhsdCBSaW5nb3IuCktpZXNlbHRyaW0gR3JpZXNlbGh1Y2sgc2NobGFlZ3QgUmluZ29yIG1pdCBkZW0gRWxsYm9nZW4uClJpbmdvciBwYXJpZXJ0IGRlbiBBbmdyaWZmIG1pdCBkZW0gR29sZW1hcm0uClJpbmdvciBwYXJpZXJ0IGRlbiBBbmdyaWZmIG1pdCBkZW0gS2llZmVya25vY2hlbi4KICBLaWVzZWx0cmltIEdyaWVzZWxodWNrIHRyaWZmdCBSaW5nb3IgaGFydC4KS2llc2VsdHJpbSBHcmllc2VsaHVjayBzdG9lc3N0IFR5cmlvbiBoZWZ0aWcgbWl0IGRlbSBLb3BmLgogIEtpZXNlbHRyaW0gR3JpZXNlbGh1Y2sgdHJpZmZ0IFR5cmlvbiBoYXJ0LgogIEtpZXNlbHRyaW0gR3JpZXNlbGh1Y2sgZ3JlaWZ0IFJpbmdvciBtaXQgZWluZW0gS3JpZWdzYmVpbCBhbi4KUmluZ29yIHBhcmllcnQgZGVuIEFuZ3JpZmYgbWl0IGRlbSBHb2xlbWFybS4KICBLaWVzZWx0cmltIEdyaWVzZWxodWNrIHRyaWZmdCBSaW5nb3Igc2VociBoYXJ0LgogIFNvdmFudGhhcyB2b24gVG9sIEVsZGFyIGdyZWlmdCBUdXRzenQgbWl0IGVpbmVtIFZvbGxzdHJlY2tlciBhbi4KICBTb3ZhbnRoYXMgdm9uIFRvbCBFbGRhciB0cmlmZnQgVHV0c3p0IHNlaHIgaGFydC4KICBKZWFuLUNsYXVkZSBgYFRvZGVzZmF1c3QnJyBQZWx6ZnVzcyBncmVpZnQgVHV0c3p0IG1pdCBlaW5lbSBtaXNzbHVuZ2VuZW4gCk1hZS1nZXJpLWtlYWdlIGFuLgogIEplYW4tQ2xhdWRlIGBgVG9kZXNmYXVzdCcnIFBlbHpmdXNzIHZlcmZlaGx0IFR1dHN6dC4KSmVhbi1DbGF1ZGUgYGBUb2Rlc2ZhdXN0JycgUGVsemZ1c3MgbmltbXQgZWluZW4gV3VyZnN0ZXJuIGluIGRpZSBIYW5kIHVuZAp3aXJmdCBpaG4gbmFjaCBSaW5nb3IuClJpbmdvciBwYXJpZXJ0IGRlbiBBbmdyaWZmIG1pdCBkZW0gS2llZmVya25vY2hlbi4KICBKZWFuLUNsYXVkZSBgYFRvZGVzZmF1c3QnJyBQZWx6ZnVzcycgV3VyZnN0ZXJuIGtyYXR6dCBSaW5nb3IgbGVpY2h0LgpSaW5nb3IgaGF1dCBzaWNoIHNlaW5lbiBTY2hpbGQgdm9ycyBLaW5uIHVuZCBmYWVsbHQgbmFjaCBXZXN0ZW4uClR5cmlvbiBncmVpZnQgc2ljaCBhbnMgSGVyeiB1bmQgd2Fua3QgbmFjaCBXZXN0ZW4uClR1dHN6dCB3aXR0ZXJ0IEJsdXQgdW5kIHNjaGxlaWNodCBkYXZvbi4KICBTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIGdyZWlmdCBEaWNoIG1pdCBkZW0gU2Nod2VydCBkZXIgUnVoZSBhbi4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIEd5YWt1LW1hd2FzaGktb3Rvc2hpLWtha2F0by11a2UgYWIuCkR1IGhhc3QgamV0enQgMTYyIExlYmVuc3B1bmt0ZSB1bmQgMTc4IE1hZ2llcHVua3RlLgogIFNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gdmVyZmVobHQgRGljaC4KICBTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIGdyZWlmdCBEaWNoIG1pdCBkZW0gU2Nod2VydCBkZXIgUnVoZSBhbi4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIFRlLW5hZ2FzaGktdWtlIGFiLgpEdSBoYXN0IGpldHp0IDE2MiBMZWJlbnNwdW5rdGUgdW5kIDE3NyBNYWdpZXB1bmt0ZS4KICBTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIHRyaWZmdCBEaWNoIGhhcnQuCkR1IGhhc3QgamV0enQgMTU2IExlYmVuc3B1bmt0ZSB1bmQgMTc3IE1hZ2llcHVua3RlLgpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIGtvbnplbnRyaWVydCBzaWNoLgpEdSBzcHVlcnN0IHBsb2V0emxpY2ggZWluZSBmdXJjaHRlaW5mbG9lc3NlbmRlIE1hY2h0IHVtIERpY2ggaGVydW0uCkFuZ3N0IHVuZCBUZXJyb3IgZ3JlaWZlbiB1bSBzaWNoLgogIER1IHdlaHJzdCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gTWFldWRlLWRlYWktb3NhZS11a2UgYWIuCkR1IGhhc3QgamV0enQgMTU2IExlYmVuc3B1bmt0ZSB1bmQgMTc2IE1hZ2llcHVua3RlLgogIERpZSBBbmdzdCBzY2htZXR0ZXJ0IERpY2ggenUgQm9kZW4uCkR1IGhhc3QgamV0enQgMTMxIExlYmVuc3B1bmt0ZSB1bmQgMTc2IE1hZ2llcHVua3RlLgogIGBgQ2FzdHknJyBFbGFkcmllbCBncmVpZnQgRGljaCAgbWl0IGJyZW5uZW5kZW4gSGFlbmRlbiBhbi4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIFNvdG8tdWRlLXVrZSBhYi4KRHUgaGFzdCBqZXR6dCAxMzEgTGViZW5zcHVua3RlIHVuZCAxNzUgTWFnaWVwdW5rdGUuCiAgYGBDYXN0eScnIEVsYWRyaWVsIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KRHUgaGFzdCBqZXR6dCAxMTYgTGViZW5zcHVua3RlIHVuZCAxNzUgTWFnaWVwdW5rdGUuCkplYW4tQ2xhdWRlIGBgVG9kZXNmYXVzdCcnIFBlbHpmdXNzIHppZWh0IGVpbmVuIEdpIGF1cy4KSmVhbi1DbGF1ZGUgYGBUb2Rlc2ZhdXN0JycgUGVsemZ1c3MgZ2lidCBgYENhc3R5JycgRWxhZHJpZWwgZGVuIEdpLgpgYENhc3R5JycgRWxhZHJpZWwgbWFjaHQgZWluIHBhYXIgYmVzY2h3b2VyZW5kZSBHZXN0ZW4gdWViZXIgZGVtIEdpLgpEZXIgR2kgYmxpdHp0IGt1cnogYXVmLgpgYENhc3R5JycgRWxhZHJpZWwgZ2lidCBKZWFuLUNsYXVkZSBgYFRvZGVzZmF1c3QnJyBQZWx6ZnVzcyBkZW4gR2kuCkplYW4tQ2xhdWRlIGBgVG9kZXNmYXVzdCcnIFBlbHpmdXNzIHppZWh0IGVpbmVuIEdpIGFuLgogIEJlbmRhaWdhIEVnaWQgZ3JlaWZ0IERpY2ggbWl0IGRlbSBWb2xsc3RyZWNrZXIgYW4uCiAgRHUgd2VocnN0IGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBNb3JvdGUtdHN1a2FtaS11a2UgYWIuCkR1IGhhc3QgamV0enQgMTE2IExlYmVuc3B1bmt0ZSB1bmQgMTc0IE1hZ2llcHVua3RlLgogIEJlbmRhaWdhIEVnaWQgdHJpZmZ0IERpY2ggc2VociBoYXJ0LgpEdSBoYXN0IGpldHp0IDEwMSBMZWJlbnNwdW5rdGUgdW5kIDE3NCBNYWdpZXB1bmt0ZS4KS2llc2VsdHJpbSBHcmllc2VsaHVjayBzY2hsYWVndCBEaWNoIHBsb2V0emxpY2ggdW5kIHZvZWxsaWcgdW5lcndhcnRldCBtaXQKZWluZW0gS3JpZWdzYmVpbC4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIEdlZGFuLWJhcmFpIGFiLgpEdSBoYXN0IGpldHp0IDEwMSBMZWJlbnNwdW5rdGUgdW5kIDE3MyBNYWdpZXB1bmt0ZS4KICBLaWVzZWx0cmltIEdyaWVzZWxodWNrIHplcnNjaG1ldHRlcnQgRGljaCBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KcHVua3RlLgogIEtpZXNlbHRyaW0gR3JpZXNlbGh1Y2sgZ3JlaWZ0IERpY2ggbWl0IGRlbSBLcmllZ3NiZWlsIGFuLgogIER1IHdlaHJzdCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gU290by1zaHV0by11a2UgYWIuCkR1IGhhc3QgamV0enQgNTQgTGViZW5zcHVua3RlIHVuZCAxNzIgTWFnaWVwdW5rdGUuCiAgS2llc2VsdHJpbSBHcmllc2VsaHVjayB0cmlmZnQgRGljaCBzZWhyIGhhcnQuCkR1IGhhc3QgamV0enQgNDMgTGViZW5zcHVua3RlIHVuZCAxNzIgTWFnaWVwdW5rdGUuCkRlciBWb2xsc3RyZWNrZXIgd2lsbCBEaXIgZGVuIFRvZGVzc3Rvc3MgdmVyc2V0emVuIQogIFNvdmFudGhhcyB2b24gVG9sIEVsZGFyIGdyZWlmdCBEaWNoIG1pdCBkZW0gVm9sbHN0cmVja2VyIGFuLgogIER1IHdlaHJzdCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gU290by11ZGUtdWtlIGFiLgpEdSBoYXN0IGpldHp0IDQzIExlYmVuc3B1bmt0ZSB1bmQgMTcxIE1hZ2llcHVua3RlLgogIFNvdmFudGhhcyB2b24gVG9sIEVsZGFyIHNjaGxhZWd0IERpY2ggenUgQnJlaS4KCkR1IGthbm5zdCBlaW5lbiBNYW5uIG1pdCBkdW5rbGVyIEthcHV6ZSBuZWJlbiBEZWluZXIgTGVpY2hlIHN0ZWhlbiBzZWhlbi4KRXIgd2lzY2h0IGRpZSBibHV0aWdlIEtsaW5nZSBlaW5lciBncmF1c2lnZW4gU2Vuc2UgbWl0IGxhbmdzYW1lbiwgZ2VtZXNzZW5lbgpCZXdlZ3VuZ2VuIGFiLiBQbG9ldHpsaWNoIGhvZXJ0IGVyIGF1ZiB1bmQgc2NoZWludCBEaWNoIGRpcmVrdCBhbnp1c2VoZW4gbWl0CnNlaW5lbiBsZWVyZW4gQXVnZW5ob2VobGVuIC4uLgoKRGVpbiBLb2VycGVyIGdlaG9yY2h0IERpciBuaWNodCAhCj4gRGVyIFRvZCBzYWd0OiBEQVMgV0FSRU4gV09ITCBaVVZJRUxFIFJBRVVCRVIgRlVFUiBESUNILi4uCi4uLgpEZXIgVG9kIHNhZ3Q6IFdFTk4gRElSIERBUyBOQUVDSFNURSBNQUwgSkVNQU5EIFNBR0VOIFNPTExURSAnJ0dFTEQgT0RFUgpMRUJFTiEnJyBUVSBNSVIgQklUVEUgRUlORU4gR0VGQUxMRU4gLSBHSUIgSUhNIE9ERVIgSUhSIExJRUJFUiBEQVMgR0VMRC4KRGVyIFRvZCBzYWd0OiBPSyEgSUNIIEtBTk4gV0FSVEVOLgpEZXIgVG9kIHNhZ3Q6IEVJTkVTIFRBR0VTIFdJUlNUIERVIEFVRiBKRURFTiBGQUxMIE1JUiBHRUhPRVJFTiEKLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRvZCBlaW5lcyBIZWxkZW4gKEFzbW9kaXMsIDEzLiBNYXIgMTk5NywgMjM6NTY6NDUpOgp+IyEgcm49QXNtb2RpcyBydD04NTgyOTM1OTkgcmc9c2NobWFycm4KfiMhIHRpZD04NTgyOTM1OTkKCkJlc29uZGVycyB6dSBiZWFjaHRlbiBpc3QgZGllc2VyIFN0cmlwdGVhc2UgbWl0dGVuIGltIEthbXBmLCBvYndvaGwKZnVlciBtYW5jaGUgS2FlbXBmZXIgaXN0IGRhcyBqYSBzY2hvbiBHZXdvaG5oZWl0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbnRlbGxpZ2VudGUgVGllcmUgKFJpbmdvciwgMTQuIE1hciAxOTk3LCAwMDowNToyNyk6CkxldHp0ZSA2MCBtaW46ICMjIyMjIyAoNi4wJSkKTGV0enRlIDE1IG1pbjogIyMjIyMjIyMgKDguMyUpCkxldHp0ZSBNaW51dGU6ICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgKDM0LjIlKQo+PiBEaWVzZSBNZXNzdW5nIHd1cmRlIGdlc3BvbnNvcnQgdm9uOiBMYWctTy1JbmR1c3RyaWVzIDw8CioqKiBMUCAyMjYgICBNUCAxNzMKRHVtbWJhdHoga3JhZWNoenQ6IGtycm9vYWEgLi4uIExhYWFnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBFc3MtWmV0dCwgbWFsIHdpZWRlci4gKEtyZXRlaywgMTQuIE1hciAxOTk3LCAwMzoxNTozMSk6Cn4jISBybj1Tb2NyYXRlIHJ0PTg1ODI2MzM3NSByZz1zY2htYXJybgp+IyEgdGlkPTg1ODE3NDYwMgpBaGE/CkdyaW1tYm9ybiwgdmVybGVnIGRhcyBtYWwgbmFjaCBzY2htYXJybi4KQWNoIHNvLCBkYSBzaW5kIHdpciBqYSBzY2hvbi4gTmEgZGFubi4uLiA7LSkKCgogICAgICAgfCAvICB8XCAgfC0tICAtLS0gIHwtLSAgfCAvCiAgICAgICB8PCAgIHwvICB8LSAgICB8ICAgfC0gICB8PAogICAgICAgfCBcICB8XCAgfC0tICAgfCAgIHwtLSAgfCBcCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgZWluZXMgTWFnaWVycyAoS3JldGVrLCAxNC4gTWFyIDE5OTcsIDA0OjE3OjAwKToKW0FsbGdlbWVpbjpLcmV0ZUtdIEhtcGYuIE1lcmxpbiBsYWVzc3Qgc2ljaCBuaWNodCB6YXBwZW4gKipzY2htb2xsKioKW0FsbGdlbWVpbjpBcnR5XSBBYmVyIGRlc3RydWN0ZW4uCltBbGxnZW1laW46S3JldGVLXSAqKmdyaW5zKiogSmEsIHNjaG9uLCBhYmVyIGRhcyBpc3Qgc28gYnJ1dGFsIDstKQpbQWxsZ2VtZWluOktyZXRlS10gU28uIFdlZyBpc3Nlci4KLi4uCltBbGxnZW1laW46S3JldGVLXSBIdWNoLCBpcmdlbmR3ZXIvaXJnZW5kd2FzIGhhdCBtaWNoIGdyYWQgc3RlcmJlbiBsYXNzZW4uCltBbGxnZW1laW46S3JldGVLXSBLb21pc2NoLi4uIEljaCBkYWNodGUgaW1tZXIsIGljaCBiaW4gdW5zdGVyYmxpY2ggOi0pCltBbGxnZW1laW46QXNtb2RpcyBncmluc3RdCltBbGxnZW1laW46QXNtb2Rpc10gZGFzIHdhciBiZXN0aW1tdCBNZXJsaW5zIFJhY2hlCgpUamEsIHdlciBoYWV0dGUgZGFzIGdlZGFjaHQuLi4gS2F1bSBkZXN0cnVjdGV0IG1hbiBkZW4gZWluIGJpc3NjaGVuLCB1bmQKaXN0IGRhbm4gYXVjaCBub2NoIHNvIG5ldHQsIGlobiB3aWVkZXIgenUgbGFkZW4sIHNjaG9uIHNpdHp0IG1hbiBhdWYgJ25lbgpLYWZmZWUgYmVpIExhcnMuLi4KCksuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRvZCBlaW5lcyBIZWxkZW4gKEdhc3Q0LCAxNC4gTWFyIDE5OTcsIDEyOjI1OjM5KToKfiMhIHJuPUFzbW9kaXMgcnQ9ODU4MjkzODA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU4MjkzNTk5CkludGVyZXNzYW50IGZpbmQgaWNoIGF1Y2ggZGllIG1pc3NsdW5nZW5lIEtvbnplbnRyYXRpb24sIGRpZSBkYW5uCndpZSBnZWxhZWhtdCBoZXJ1bXN0ZWh0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVG9kIGVpbmVzIEhlbGRlbiAoQXVncmEsIDE0LiBNYXIgMTk5NywgMTI6NTk6MjEpOgp+IyEgcm49R2FzdDQgcnQ9ODU4MzM4NzM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU4MjkzNTk5CldhcyBhYmVyIHBvc2l0aXYgYXVmZmFlbGx0OiB3ZW5uIGRhcyBzbyB3ZWl0ZXJnZWh0IG1pdCBkZXIgZW50d2lja2x1bmcKdmVyc2NoaWVkZW5lciwgc2VociBhdXNnZWZlaWx0ZXIga2FtcHR0Y2huaWNrZW4sIHdpcmQgYXVzIGRlbiBLYW1wIF9sb2dzIGRvY2gKbm9jaCBtYWwgbGVzYmFyZSBQcm9zYS4KCkF1Z3JhClBTOiAuLi53YXMgbWFuIHZvbiBtZWluZSBBcnRpa2VsbiBuaWNodCBiZWhhdXB0ZW4ga2FubiwgaWNoIHdlaXNzOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRvZCBlaW5lcyBIZWxkZW4gKFdvb2R5LCAxNS4gTWFyIDE5OTcsIDAwOjE5OjUyKToKfiMhIHJuPUF1Z3JhIHJ0PTg1ODM0MDc2MSByZz1zY2htYXJybgp+IyEgdGlkPTg1ODI5MzU5OQouLi51bmQgd2FlaHJlbmQgbWFuIHNvIGhhcm1sb3MgZGllc2VuIEFydGlrZWwgbGllc3QsIHBhc3NpZXJ0CmZvbGdlbmRlcyAoaW4gZGVyIHJpY2h0aWdlbiBSdWJyaWsgc2luZCBtZXIgamEgc2Nob24gaGllciA6KSk6CgpUYXNoYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBMUHM6IDE2MiAoLTI1KSwgTVBzOiAxNzkgKDApCnVzdy4KCndvb2R5Li0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyAoU3VzaGksIDE1LiBNYXIgMTk5NywgMDA6MjA6MTYpOgpGdWVyIE1ldGhlZHJhcywgRnJlY2EgdW5kIFdvb2R5OgoKICAgICAgICAgICAgICAgICBXQVMKClN1c2hpIC0gZ2FlaG5lbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3YXMgKFdvb2R5LCAxNS4gTWFyIDE5OTcsIDAwOjIwOjU0KToKfiMhIHJuPVN1c2hpIHJ0PTg1ODM4MTYxNiByZz1zY2htYXJybgp+IyEgdGlkPTg1ODM4MTYxNgpJY2ggZGlzdGFuemllcmUgbWljaCwgaWNoIHdvbGx0ZSBuaWNodCB3YXMgZ2VzY2hyaWViZW4ga3JpZWdlbiwKaWNoIHNhZ3RlIGJsb3NzIGRhc3MgaWNoIHNlbGJlciBncmFkIHdhcyBnZXNjaHJpZWJlbiBoYWV0dGUgOikKCnVuc2NodWxkaWcsIHdvb2R5Li0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogd2FzIChTdXNoaSwgMTUuIE1hciAxOTk3LCAwMDoyMToyMik6Cn4jISBybj1Xb29keSBydD04NTgzODE2NTQgcmc9c2NobWFycm4KfiMhIHRpZD04NTgzODE2MTYKRGFzIGlzdCBrZWluZSBFbnRzY2h1bGRpZ3VuZy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ3V0ZW4gbW9yZ2VuIChIYWRyYSwgMTUuIE1hciAxOTk3LCAxNToyMTozOCk6Cmd1dGVuIHRhZyBtZWluZSBkYW1lbiB1bmQgaGVycmVuLCBndXRlbiBtb3JnZW4gbGllYmUgc3R1ZGVudGVuCgogUHJhIHRlaWx0IERpciBtaXQ6IG1vaW4hIFsxNToxOF0KCmhhZHJhIC0gdmVybXV0ZXQsIGRhc3MgcHJhIGluIGVpbmVyIGFuZGVyZW4gemVpdHpvbmUgbGVidAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGd1dGVuIG1vcmdlbiAoUHJhLCAxNS4gTWFyIDE5OTcsIDE1OjIzOjI0KToKfiMhIHJuPUhhZHJhIHJ0PTg1ODQzNTY5OCByZz1zY2htYXJybgp+IyEgdGlkPTg1ODQzNTY5OAphbHNvIG5vY2ggbWFsIGZ1ZXIgYWxsZSBSaGVpbmxhZW5kZXIgdW5kIG5vY2ggc3VlZGxpY2hlcmUgR2V3YWVjaHNlOgoKTW9pbiAoYS5kLmZyaWVzLikgPSBUYWcsIGt1cnogZnVlcjogR3V0ZW4gVGFnLgoKUHJhLiAoa2FtIHRyb3R6ZGVtIGdlcmFkZSBhdXMgZGVtIEJldHQgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGd1dGVuIG1vcmdlbiAoSmltZGlncml6LCAxNS4gTWFyIDE5OTcsIDIxOjM1OjIwKToKfiMhIHJuPVByYSBydD04NTg0MzU4MDQgcmc9c2NobWFycm4KfiMhIHRpZD04NTg0MzU2OTgKSGFlID8KCkFsc28gaWNoIGhhZXR0ZSBub2NoIGVpbmUgYW5kZXJlIEJlZGV1dHVuZyBmdWVyCiAiTW9pbiIsIG5hdHVlcmxpY2ggaGF0IGVzIG5peCBtaXQgJ21vcmdlbicgb2RlciBzbyB6dSB0dW4KYWJlciBJTUhPIGhlaXNzdCBlcyBlaGVyIHNvd2FzIHdpZQogIkhhbGxvLCBzY2hvZW4gZGFzcyBEdS9JaHIgZGEgYmlzdC9zZWlkIiBvZGVyIAogInNjaG9lbiBEaWNoIHp1IHNlaGVuIiAsIGV0YwoKenVtaW5kZXN0IGhhYmVuIG1pciBkYXMgZGl2ZXJzZSBraWVsZXIgRnJldW5kZSBzbwp2ZXJtaXR0ZWx0Li4uIDotKQoKU2VuZi4KCkpkRwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZ3V0ZW4gbW9yZ2VuIChMb2NvLCAxNS4gTWFyIDE5OTcsIDIxOjQ1OjQyKToKfiMhIHJuPUppbWRpZ3JpeiBydD04NTg0NTgxMjAgcmc9c2NobWFycm4KfiMhIHRpZD04NTg0MzU2OTgKJ01vaW4nIGtvbW10IHZvbSBmcmllc2lzY2hlbiBXb3J0ICdtb2onIC0genUgZGV1dHNjaCAnZ3V0Jy4gTWFuIHNhZ3RlCnVyc3BydWVuZ2xpY2ggZ2VuYXUgd2llIGltIGhvY2hkZXV0c2NoZW4gJ21vamVuIGRhZycgKGFsc28gR3V0ZW4gVGFnKSBiencuCidtb2plbiBNb3JnZW4nIG9kZXIgYXVjaCAnbW9qZW4gYWJlbmQnLiBJbSBMYXVmIGRlciBaZWl0IGhhdCBtYW4gZGFzIHZlcmt1ZXJ6dAotIGFiZXIgZWJlbiBuaWNodCBhdWYgJ1RhY2gnLCBzb25kZXJuIGF1ZiAnbW9pbicuICdNb2luJyBoZWlzc3QgYWxzbwplaWdlbnRsaWNoIG51ciBub2NoICdndXRlbicsIGRpZSBUYWdlc3plaXQga2FubiBzaWNoIGplZGVyIHNlbGJlciBkYXp1IGRlbmtlbi4KU28gd3VyZGUgZXMgbWlyIGplZGVuZmFsbHMgdWViZXJlaW5zdGltbWVuZCB2b24gbWVocmVyZW4gRXhwZXJ0ZW4gYXVzIGRlbQpvc3Rmcmllc2lzY2hlbiB1bmQgT2xkZW5idXJnZXIgUmF1bSBiZXN0YWV0aWd0LgoKSW4gZGllc2VtIFNpbm5lIC0gTW9pbiEKCi0gTG9jbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xlcmlrZXIgYWJ3ZXJ0ZW4hIChFc2N1YmFyLCAxNy4gTWFyIDE5OTcsIDAyOjEyOjQxKToKW01vZXJkZXI6R2Vpc3QgZWluZXMgSHlkcmFrb3Bmc10gTmFlY2hzdGVzIE1hbCBicmluZyBtaXIgbGllYmVyIFBvc3Qgc3RhdHQKW01vZXJkZXI6R2Vpc3QgZWluZXMgSHlkcmFrb3Bmc10gbWljaCB6dSBlcm1vcmRlbiwgU2hhcmlhISA8MDE6NTg6NTA+CltNb2VyZGVyOkdlaXN0IGVpbmVzIEh5ZHJha29wZnNdIFJBQ0hFISBCcmluZ3QgU2hhcmlhIHVtISA8MDE6NTg6NTI+CltNb2VyZGVyOkdlaXN0IGVpbmVzIEh5ZHJha29wZnNdIFdpZSBzb2xsIGRhcyBub2NoIGVuZGVuLCBTaGFyaWE/IDwwMTo1ODo1OD4KW01vZXJkZXI6R2Vpc3QgZWluZXMgSHlkcmFrb3Bmc10gSHVldGV0IEV1Y2ggdm9yIFNoYXJpYSEgPDAxOjU5OjA0PgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBIeWRyYWtvcGZzXSBTdWNoZSBLaWxsZXIsIHphaGxlIGd1dCwgWmllbHBlcnNvbiBTaGFyaWEuCi0tbWVoci0tKDUxJSkgW01vZXJkZXI6R2Vpc3QgZWluZXMgSHlkcmFrb3Bmc10gPDAxOjU5OjA0PgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBIeWRyYWtvcGZzXSBIYWV0dGVuIHdpciBkYXMgbmljaHQgYXVzZGlza3V0aWVyZW4ga29lbm5lbiwKW01vZXJkZXI6R2Vpc3QgZWluZXMgSHlkcmFrb3Bmc10gU2hhcmlhPyA8MDE6NTk6MDQ+CltNb2VyZGVyOkdlaXN0IGVpbmVzIEh5ZHJha29wZnNdIFNoYXJpYSwgRHUgTW9uc3RlcnNjaGFlbmRlciEgPDAxOjU5OjA2PgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBIeWRyYWtvcGZzXSBNaXN0LCBtZWluZSBWb3JzaWNodCBoYXQgdmVyc2FndCEgVW5kIGRhcyBiZWkKW01vZXJkZXI6R2Vpc3QgZWluZXMgSHlkcmFrb3Bmc10gU2hhcmlhISA8MDE6NTk6MDY+CltNb2VyZGVyOkdlaXN0IGVpbmVzIEh5ZHJha29wZnNdIFNoZXJpZmYhIFZlcmhhZnRlIFNoYXJpYSEgPDAxOjU5OjA2PgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBIeWRyYWtvcGZzXSBIYWxsbz8gSGF0IGplbWFuZCBtZWluZW4gS29lcnBlciBnZXNlaGVuPwpbTW9lcmRlcjpHZWlzdCBlaW5lcyBIeWRyYWtvcGZzXSBNdWVzc3RlIGlyZ2VuZHdvIGJlaSBTaGFyaWEgbGllZ2VuIQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBIeWRyYWtvcGZzXSA8MDE6NTk6MDY+CltNb2VyZGVyOkdlaXN0IGVpbmVzIEh5ZHJha29wZnNdIERhcyBzYWcgaWNoIGFsbGVzIGRlbSBTaGVyaWZmLCBTaGFyaWEhCltNb2VyZGVyOkdlaXN0IGVpbmVzIEh5ZHJha29wZnNdIDwwMTo1OTowOD4KCldhaG5zaW5uLCAxMSBLb2VwcGUgaW4ga25hcHAgMjAgU2VrdW5kZW4uIERhIHNvbGx0ZSBtYW4gZ2xlaSBuZW4gWndlaXRpCmhpbnNjaGlja2VuIDspCgpFaXNiYWVyIEVzY3ViYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGVyaWtlciBhYndlcnRlbiEgKFdhcmdvbiwgMTcuIE1hciAxOTk3LCAxMDo0ODozMyk6Cn4jISBybj1Fc2N1YmFyIHJ0PTg1ODU2MTE2MSByZz1zY2htYXJybgp+IyEgdGlkPTg1ODU2MTE2MQpTYWdlbiB3aXIgbWFsIHNvOiBEaWUgSHlkcmEgaXN0IGFldXNzZXJzdCBrbGVyaWtlcmZyZXVuZGxpY2ggcHJvZ3JhbW1pZXJ0IDopCiAgV2FyZ29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2xlcmlrZXIgYWJ3ZXJ0ZW4hIChBc21vZGlzLCAxNy4gTWFyIDE5OTcsIDEyOjQ0OjE1KToKfiMhIHJuPUVzY3ViYXIgcnQ9ODU4NTYxMTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU4NTYxMTYxCkhtbSwgbmVlLCBuaWNodCBkaWUgS2xlcmlrZXIgYWJ3ZXJ0ZW4sIG51ciBTaGFyaWEgYWJ3ZXJ0ZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGVyaWtlciBhYndlcnRlbiEgKENhdW5vLCAxNy4gTWFyIDE5OTcsIDEzOjM1OjE3KToKfiMhIHJuPUVzY3ViYXIgcnQ9ODU4NTYxMTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU4NTYxMTYxClRlYXVzY2hlIGljaCBtaWNoLCBvZGVyIGZlaGx0ZSBkYSBuaWNoIGV0d2FzPwpIYXQgU2hhcmlhIGRlbiBLb2VycGVyIG5pY2h0IG1laHIgZ2VzY2hhZmZ0Pz8KCkMuIE5vLCBhbSBLb3BmIGtyYXR6ZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSG1tbS4uLiAoV29vZHksIDE3LiBNYXIgMTk5NywgMjA6NDA6MDIpOgp+IyEgcm49QWNyaW1vbiBydD04NTg2MjMzNzEgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04NTg2MTU2NTIKSXN0IGRhcyBMZXNlbiB1bmQgU2NocmVpYmVuIGRlcnNlbGJlbiBkYW5uIGVpbiBTa2lsbD8KT2h3ZWguLi4gd2VubiBpY2ggYW4gYWxsIGRpZSBVZWJlLVNjcmlwdHMgZGVua2UuLi4KCndvb2R5Li0gKHJpY2h0aWdlIHJ1YnJpayBoaWVyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSG1tbS4uLiAoQWNyaW1vbiwgMTcuIE1hciAxOTk3LCAyMTowODozMik6Cn4jISBybj1Xb29keSBydD04NTg2Mjc2MDIgcmc9c2NobWFycm4KfiMhIHRpZD04NTg2MTU2NTIKV2VubiBkYXMgQmxpbmRlbnNjaHJpZnQtTVBBLVNjaHJlaWJlbiBlaW4gU2tpbGwgd2lyZCwgZGFubiBnYWViZSBlcyBlbmRsaWNoCndpZWRlciB3YXMgenUgbGVzZW4gaW4gZGVyIE1QQSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEhtbW0uLi4gKFdvb2R5LCAxNy4gTWFyIDE5OTcsIDIzOjU1OjI0KToKfiMhIHJuPUFjcmltb24gcnQ9ODU4NjI5MzEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU4NjE1NjUyCkphLi4uIGFiZXIgV0FTID8hPwoKKmZpdHRlciogKnp1ZXJjaHQqCndvb2R5Li0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEhtbW0uLi4gKEFjcmltb24sIDE4LiBNYXIgMTk5NywgMDA6MDE6MDYpOgp+IyEgcm49V29vZHkgcnQ9ODU4NjM5MzI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU4NjE1NjUyCk51bmphLCB3ZW5uIGRhcyBCbGluZGVuc2NocmlmdC1NUEEtTGVzZW4gZWluIFNraWxsIHdpcmQsIGRhbm4gYnJhdWNoc3QgRHUgamEKbmljaHQgYWxsZXMgenUgbGVzZW4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUb2QgaXN0IGVpbiBQYXJ0eW11ZmZlbC4gOikgKFNpZG9saW4sIDE4LiBNYXIgMTk5NywgMTQ6NDU6MTMpOgpJbiBkZXIgVG9kZXNzZXF1ZW56OgoKRGFzIFBhcnR5bW9uc3RlciBydWZ0OiBCbHVlbWVsIHNwZW5kaWVydCBGUkVJQklFUiEKRGVyIFRvZCBzZXVmenQuIFNPLCBHRU5VRyBHRVNDSFdBVFpULiBUUklUVCBOQUVIRVIuIAoKU2lkb2xpbi4gRmluZGV0LCBkYXNzIFRvZCBydWhpZyBtaXQgenVtIFBhcnR5bW9uc3RlciBoYWV0dGUga29tbWVuIGtvZW5uZW4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIGVpbmVzIE1hZ2llcnMgKEFjcmltb24sIDE5LiBNYXIgMTk5NywgMDA6Mjg6MTgpOgoKU3VzaGkgYmVzY2h3b2VydCBlaW5lbiBCbGl0eiB2b20gSGltbWVsLgpTdXNoaSBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuClN1c2hpIGJlc2Nod29lcnQgZWluZW4gQmxpdHogdm9tIEhpbW1lbC4KU3VzaGkgYmVzY2h3b2VydCBlaW5lbiBCbGl0eiB2b20gSGltbWVsLgpTdXNoaSBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuClN1c2hpIGJlc2Nod29lcnQgZWluZW4gQmxpdHogdm9tIEhpbW1lbC4KU3VzaGkgYmVzY2h3b2VydCBlaW5lbiBCbGl0eiB2b20gSGltbWVsLgpTdXNoaSBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuClN1c2hpIGJlc2Nod29lcnQgZWluZW4gQmxpdHogdm9tIEhpbW1lbC4KU3VzaGkgYmVzY2h3b2VydCBlaW5lbiBCbGl0eiB2b20gSGltbWVsLgpTdXNoaSBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuClN1c2hpIGJlc2Nod29lcnQgZWluZW4gQmxpdHogdm9tIEhpbW1lbC4KU3VzaGkgYmVzY2h3b2VydCBlaW5lbiBCbGl0eiB2b20gSGltbWVsLgpTdXNoaSBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuClN1c2hpIGJlc2Nod29lcnQgZWluZW4gQmxpdHogdm9tIEhpbW1lbC4KU3VzaGkgYmVzY2h3b2VydCBlaW5lbiBCbGl0eiB2b20gSGltbWVsLgpTdXNoaSBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuClN1c2hpIGJlc2Nod29lcnQgZWluZW4gQmxpdHogdm9tIEhpbW1lbC4KU3VzaGkgYmVzY2h3b2VydCBlaW5lbiBCbGl0eiB2b20gSGltbWVsLgpTdXNoaSBkZW5rdCAgIC4gbyBPIChWaWVsZSBaYXBzIHNpbmQgZGVyIE1hdXMgVG9kLi4uKQpUZXNsYSBzYWd0OiBVaSAuLiB6aWVtbGljaGVzIEdld2l0dGVyIGhpZXIgOikKbmlja2UKRHUgbmlja3N0IHp1c3RpbW1lbmQuCltTZWhlcjpBc21vZGlzXSBzdGlyYiwgendlcmcKU3VzaGkgbmlja3QgenVzdGltbWVuZC4KW1NlaGVyOldvb2R5XSBIT0UhClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBUZXNsYS4KU3VzaGkgc2NobmFyY2h0IGxhdXQuClN1c2hpIHNhZ3Q6IEhvbGxhPwpbU2VoZXI6U2hhcmlhXSByaWNodGlnIHNvIDotKQoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIGVpbmVzIE1hZ2llcnMgKEFzbW9kaXMsIDE5LiBNYXIgMTk5NywgMDA6MzQ6NDMpOgp+IyEgcm49QWNyaW1vbiBydD04NTg3Mjc2OTggcmc9c2NobWFycm4KfiMhIHRpZD04NTg3Mjc2OTgKSG1tLCB0ZXNsYSBoYXR0ZSBpY2ggbWl0IGRlbSAnWndlcmcnIGdhciBuaWNodCBnZW1laW50IDopClNvb28gc2NobGltbSB3dWVyZGUgaWNoIHNlbGJzdCBlaW5lbiBNYWdpZXIgbmljaHQgYmVsZWlkaWdlbi4KCgoKClAuUy46IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptb3JnZW5zIChBbmFraW4sIDE5LiBNYXIgMTk5NywgMDc6MjE6MjMpOgpFcyBpc3QgNy4xMCB1bmQgbmllbWFuZCBzY2hlaW50IGRhIHp1IHNlaW4sIGVzIHNpbmQgendhciAxMSBMZXV0ZSAKZWluZ2Vsb2dndCwgYWJlciBkYSBzaW5kIGRhbm4gendlaSBld2lnLWxhbmdlLWlkbGVyLCBlaW5lIEhhbmQgdm9sbApLYXJhdGUtU2NyaXB0ZXIsIGVpbiBUcnZlcyBkZXIgdW5lbmRsaWNoIE1vbnN0ZXIgaGVydm9yemF1YmVydCB1bmQgZWluCnBhYXIgWndlaXRpZXMuCgpBbmFraW4uIEFsbGVpbmUuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR3JhdHVsYXRpb24gKFNlbW1lbCwgMTkuIE1hciAxOTk3LCAxODozNTowMik6CkhpZXJtaXQgbW9lY2h0ZSBpY2ggbWVpbmVuIG5ldWVuIDI0NCBNaXRhcmJlaXRlcm4genUgaWhyZXIgQmVmb2VyZGVydW5nCmdyYXR1bGllcmVuLiBJY2ggaG9mZmUgYXVmIGJhbGRpZ2VuIEJlZ2lubiBtaXQgZGVyIEFyYmVpdC4gOykgICAKCllFTkRJTEVJTi8gICAgICAgICBhY3JpbW9uLyAgICAgICAgICAgYWxhbm9uLyAgICAgICAgICAgIGFuYWtpbi8KYXRvei8gICAgICAgICAgICAgIGF0dGkvICAgICAgICAgICAgICBhdWdyYS8gICAgICAgICAgICAgYmVyb24vIApiaGFtaXIvICAgICAgICAgICAgYmlyZHkvICAgICAgICAgICAgIGJsdW5kZXIvICAgICAgICAgICBjZXBoZXVzLyAgIApjaGVzdGVyLyAgICAgICAgICAgY3JhdmVuLyAgICAgICAgICAgIGRhbmllbC8gICAgICAgICAgICBkaG9qYWt0LwplbGluYS8gICAgICAgICAgICAgZmFobmRlci8gICAgICAgICAgIGZ5dC8gICAgICAgICAgICAgICBnYXN0MS8KZ2FzdDIvICAgICAgICAgICAgIGdhc3QzLyAgICAgICAgICAgICBnYXN0NC8gICAgICAgICAgICAgZ2FzdDUvCmdsb2luLyAgICAgICAgICAgICBnb2xlbS8gICAgICAgICAgICAgZ29yb2cvICAgICAgICAgICAgIGdyZW5kdWxhLwpndXlicnVzaC8gICAgICAgICAgaGFuZGkvICAgICAgICAgICAgIGphcmllbC8gICAgICAgICAgICBqYXJydXMvCmplaG92YS8gICAgICAgICAgICBqaGYvICAgICAgICAgICAgICAga2Fubml4LyAgICAgICAgICAgIGtlbXAvCmtpdS8gICAgICAgICAgICAgICBsYW1hcmlvbi8gICAgICAgICAgbGFteXJhLyAgICAgICAgICAgIGxvY28vICAKbHVwb3MvICAgICAgICAgICAgIG1hZ2UvICAgICAgICAgICAgICBtYWdudXMvICAgICAgICAgICAgbWFoYXRtYS8KbWFyZGluLyAgICAgICAgICAgIG1hcnNpcHVsYW1pLyAgICAgICBtaW5kYmxhZGUvICAgICAgICAgbWluZ28vIAptaXNjaGthLyAgICAgICAgICAgbXVkZGVsLyAgICAgICAgICAgIG5pbWJ1cy8gICAgICAgICAgICBuaXhpaG91Lwpub25uZS8gICAgICAgICAgICAgcGFudGhlci8gICAgICAgICAgIHBhdHJ5bi8gICAgICAgICAgICBxYW50YXMvCnFhendzeC8gICAgICAgICAgICBxYXp6LyAgICAgICAgICAgICAgcWJlcnQvICAgICAgICAgICAgIHFlci8gIApxZXR1by8gICAgICAgICAgICAgcWl0ZXNzLyAgICAgICAgICAgIHFpdGVzc3MvICAgICAgICAgICBxbnRhbC8KcW55YmVydGgvICAgICAgICAgIHFydC8gICAgICAgICAgICAgICBxdWFhbGVuLyAgICAgICAgICAgcXVha2UvICAKcXVhbXMvICAgICAgICAgICAgIHF1YW50dW0vICAgICAgICAgICBxdWFyay8gICAgICAgICAgICAgcXVhcnRpLyAgCnF1YXNpLyAgICAgICAgICAgICBxdWFzaW0vICAgICAgICAgICAgcXVhc2ltb2RvLyAgICAgICAgIHF1YXNpcXVhc2kvCnF1YXNzZWwvICAgICAgICAgICBxdWF4LyAgICAgICAgICAgICAgcXVhenovICAgICAgICAgICAgIHF1ZW5naXN0dS8KcXVlcnovICAgICAgICAgICAgIHF1ZXhscXVveGwvICAgICAgICBxdWlja2JsYWRlLyAgICAgICAgcXVpam90ZS8KcXVpbGkvICAgICAgICAgICAgIHF1aWxrLyAgICAgICAgICAgICBxdWlsbGlhbi8gICAgICAgICAgcXVpbmRhbGluZGEvCnF1aW5vLyAgICAgICAgICAgICBxdWlub2xpbi8gICAgICAgICAgcXVpcnJhbmdlci8gICAgICAgIHF1aXZlci8KcXVtZS8gICAgICAgICAgICAgIHF3ZS8gICAgICAgICAgICAgICBxd2VydHkvICAgICAgICAgICAgcXdlcnR6Lwpxd2VydXpvZXdxLyAgICAgICAgcXdveC8gICAgICAgICAgICAgIHF6b3Jyby8gICAgICAgICAgICBxenJlcXppdS8KcmF0ei8gICAgICAgICAgICAgIHJvZG1hbi8gICAgICAgICAgICBzY2hvbGxlLyAgICAgICAgICAgc2VtbWVsLwpza3lkaXZlci8gICAgICAgICAgdGFycy8gICAgICAgICAgICAgIHRvbGdhbi8gICAgICAgICAgICB0b2xvLwp0b3J3YWxsLyAgICAgICAgICAgdHJhdW1hdGljLyAgICAgICAgIHRydXJsLyAgICAgICAgICAgICB0c3VuYW1pLwp1bmZ1Zy8gICAgICAgICAgICAgd2lsbG93LyAgICAgICAgICAgIHdvb2R5LyAgICAgICAgICAgICB4YWd1bC8KeGFtaW5vcy8gICAgICAgICAgIHhhbXN1ci8gICAgICAgICAgICB4YW5hZHUvICAgICAgICAgICAgeGFuZC8KeGFuZGkvICAgICAgICAgICAgIHhhbm5kaS8gICAgICAgICAgICB4YW50YWxldXMvICAgICAgICAgeGFudGlhLwp4YW9zLyAgICAgICAgICAgICAgeGFyYXgvICAgICAgICAgICAgIHhhcmZhaS8gICAgICAgICAgICB4YXZlci8KeGF2aWVyLyAgICAgICAgICAgIHhhdm9yLyAgICAgICAgICAgICB4YXhvcy8gICAgICAgICAgICAgeGF5aWRlLwp4YmVsaWViaWcvICAgICAgICAgeGRyZWFtLyAgICAgICAgICAgIHhlZG9zLyAgICAgICAgICAgICB4ZWVyYW4vCnhlbmEvICAgICAgICAgICAgICB4ZW5vLyAgICAgICAgICAgICAgeGVub24vICAgICAgICAgICAgIHhlbm9waG9iaWEvCnhlcmEvICAgICAgICAgICAgICB4ZXJlZ29uLyAgICAgICAgICAgeGVyb3MvICAgICAgICAgICAgIHhlcm94Lwp4ZXJzb3IvICAgICAgICAgICAgeGlhLyAgICAgICAgICAgICAgIHhpbGlhbmEvICAgICAgICAgICB4aW5hLwp4aW9tYmFyZy8gICAgICAgICAgeGlyZWFzdG9zLyAgICAgICAgIHhtYW5uLyAgICAgICAgICAgICB4b3IvCnhvcmxvc2NoLyAgICAgICAgICB4cmF5LyAgICAgICAgICAgICAgeHJheWFuaW1hdC8gICAgICAgIHhydWt1dS8KeHRpZS8gICAgICAgICAgICAgIHh0b20vICAgICAgICAgICAgICB4dXJ1ci8gICAgICAgICAgICAgeHV1bC8KeHRpZS8gICAgICAgICAgICAgIHh0b20vICAgICAgICAgICAgICB4dXJ1ci8gICAgICAgICAgICAgeHV1bC8KeHZoYWJjLyAgICAgICAgICAgIHh4eC8gICAgICAgICAgICAgICB4eHh4eHgvICAgICAgICAgICAgeHh4eHh4eHh4Lwp4eWRyb2wvICAgICAgICAgICAgeHltb3gvICAgICAgICAgICAgIHh5cmFtb24vICAgICAgICAgICB4eXJpb24vCnh5enp5LyAgICAgICAgICAgICB4endlaWJsdW0vICAgICAgICAgeHp3by8gICAgICAgICAgICAgIHlhZ29yLwp5YWhpcm8vICAgICAgICAgICAgeWFrLyAgICAgICAgICAgICAgIHlhbC8gICAgICAgICAgICAgICB5YWxjaW4vCnlhbGVuYS8gICAgICAgICAgICB5YW1hZGEvICAgICAgICAgICAgeWFtYWRhYS8gICAgICAgICAgIHlhbWFoYS8KeWFtaWxhLyAgICAgICAgICAgIHlhbmcvICAgICAgICAgICAgICB5YW5ueS8gICAgICAgICAgICAgeWFub3MvCnlhbnRyby8gICAgICAgICAgICB5YXJhLyAgICAgICAgICAgICAgeWFyZW4vICAgICAgICAgICAgIHlhcnJpLwp5YXNtaW4vICAgICAgICAgICAgeWFzbWluYS8gICAgICAgICAgIHllZHkvICAgICAgICAgICAgICB5ZWxsby8KeWVsd29yYy8gICAgICAgICAgIHllbmRpLyAgICAgICAgICAgICB5ZW5kbC8gICAgICAgICAgICAgeWV0aHJhcy8KeWV0aS8gICAgICAgICAgICAgIHlldGlib3NzLyAgICAgICAgICB5ZXRpZnJhdS8gICAgICAgICAgeWV0aWdvdHQvCnlldGlndXJ1LyAgICAgICAgICB5ZXRtaXIvICAgICAgICAgICAgeWV0by8gICAgICAgICAgICAgIHlldHkvCnlnZHJhc3NpbC8gICAgICAgICB5Z2dkcmFzaWwvICAgICAgICAgeWluaWkvICAgICAgICAgICAgIHlsY3Jlc3Rvci8KeW1hcnJhcy8gICAgICAgICAgIHltaXIvICAgICAgICAgICAgICB5bXBlci8gICAgICAgICAgICAgeW9kLwp5b2RhLyAgICAgICAgICAgICAgeW9nYS8gICAgICAgICAgICAgIHlvZ2hpLyAgICAgICAgICAgICB5b2dpLwp5b2dpYmFlci8gICAgICAgICAgeW9nc290aG90aC8gICAgICAgIHlvZ3NvdG90aC8gICAgICAgICB5b25nLwp5b25pLyAgICAgICAgICAgICAgeW9ycmVsLyAgICAgICAgICAgIHlvcnJpLyAgICAgICAgICAgICB5b3NodWEvCnlvdW5nYmxvb2QvICAgICAgICB5cHMvICAgICAgICAgICAgICAgeXBzaS8gICAgICAgICAgICAgIHlwc2lsb24vCnlzYWJlbGwvICAgICAgICAgICB5c3RlcmUvICAgICAgICAgICAgeXVkaW5vbS8gICAgICAgICAgIHl1Zm9zLwp5dW5nYS8gICAgICAgICAgICAgeXVuby8gICAgICAgICAgICAgIHl1cHBlbC8gICAgICAgICAgICB5dXJpLwp5dXJpa28vICAgICAgICAgICAgeXZhbnRoYXMvICAgICAgICAgIHl2ZXR0ZS8gICAgICAgICAgICB5dm9ubmUvCnl4Yy8gICAgICAgICAgICAgICB6aW5jaGVuLyAgICAgICAgICAgemluby8gICAgICAgICAgICAgIHpvcnJvLwoKU2VtbWVsLCBzaWNoIHVlYmVyIGVpbmUgTGliIHd1bmRlcm5kCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUFMgenVyIEdyYXR1bGF0aW9uIChTZW1tZWwsIDE5LiBNYXIgMTk5NywgMTg6Mzc6MTUpOgoKd2VpdGVyZSBNaXRhcmJlaXRlciBzaW5kIHNlaHIgZXJ3dWVuc2NodCAuLi4gYWxzbyBlaW5mYWNoIGV1cmVuCmFuZmFuZ3NidWNoc3RhYmVuIG1haWxlbiA7KSB1bmQgc2Nob24gc2luZCBlcyBlaW4gcGFhciBtaXRhcmJlaXRlciBtZWhyLgoKU2VtbWVsLCBhdWYgZ3V0ZSBBcmJlaXQgaG9mZmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdyYXR1bGF0aW9uIChGeXQsIDE5LiBNYXIgMTk5NywgMTg6NDI6NTIpOgp+IyEgcm49U2VtbWVsIHJ0PTg1ODc5MjkwMiByZz1zY2htYXJybgp+IyEgdGlkPTg1ODc5MjkwMgoKZmVpbiwgZGFubiBrYW5uc3RlIGphIHNjaG9uIG1hbCBhbmZhbmdlbiwgbWlyIExQQyBiZWl6dWJyaW5nZW4sIFNlbW1lbCA7LSkKCkZ5dC4Kbm4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdyYXR1bGF0aW9uIChXYXJnb24sIDIwLiBNYXIgMTk5NywgMTE6MTE6MTgpOgp+IyEgcm49Rnl0IHJ0PTg1ODc5MzM3MiByZz1zY2htYXJybgp+IyEgdGlkPTg1ODc5MjkwMgpEYSBkaWUgQmFlY2tlcmdld2Vya3NjaGFmdCBkZXMgTW9yZ2VuR3JhdWVuIGVpbmUgVmVyb2VkdW5nIGRlciBCYWNra3VsdHVyCmJlZnVlcmNodGV0LCB3dXJkZSBkaWUgU2VtbWVsLVJlZ2lvbiB3aWVkZXIgYXVmZ2Vsb2VzdC4KICBXYXJnb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdsdWVjayBnZWhhYnQgKEphbmljZSwgMjEuIE1hciAxOTk3LCAxODo0MzozNCk6CmljaCB3aWxsIGdyYWQgZGFzIFZhbXBpcnNjaHdlcnQgd2VncGFja2VuOgpzdGIgc2Nod2VydApEYXMgU2Nod2VydCBzYXVndCBldHdhcyBCbHV0IGF1cyBkZW0gSGVmdC4KRHUgd2lyc3QgZGF2b24gcmVnZW5lcmllcnQuCkR1IGhhc3QgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMjMwICgrMzApIE1hZ2llcHVua3RlLgpEdSBoYXN0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDIzMSBNYWdpZXB1bmt0ZS4KRHUgc3RlY2tzdCBkYXMgVmFtcGlyc2Nod2VydCB6dXJ1ZWNrLgpEdSBzdGVja3N0IGVpbiBWYW1waXJzY2h3ZXJ0IGluIGRlbiBTY2hsZWltYmV1dGVsLgoKenVtIGdsdWVjayBnaWJzIGRhcyBsYWcgOikKCkphbmljZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FoIChNZXRoZWRyYXMsIDIyLiBNYXIgMTk5NywgMTk6MTM6MjApOgpEZXIgRmVsc2tsYW1tZXJlciBrbGV0dGVydCBlaW5lIFdhbmQgaGludW50ZXIuCkF1Z3JhIHNhZ3Q6IGJhbmdlbgpEdSBzYWdzdDogVmVybGFuZ2VuPyAKPiBEZXIgRmVsc2tsYW1tZXJlciBzY2hhdXQgRGljaCB2ZXJsaWVidCBhbi4KCiAgIEh1Y2gsIGhpbGZlLCBkZXIgbWFnIEJlcmdlIQoKICAgICAgICAgICAgICAgWml0dGVyYmVyZyBNZXRoZWRyYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJhdWVybiBpbSBMYWcgOi0pIChLcmV0ZWssIDIyLiBNYXIgMTk5NywgMjM6MDU6MTApOgooRmFzdCkgdW5nZXNjaG5pdHRlbjoKCls8TWFzdGVSPjo8TWFzdGVSPl0gNS4xOCBjbWRzL3MsIDE1My40OSBjb21wIGxpbmVzL3MKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDE3LjYlLzYwLCAyOC4wJS8xNSwgNjQuMyUvMQpbQWxsZ2VtZWluOll1bmdhXSB1dXV1dXV1dXV1dXV1dXVsbHRyYWFhYWFhYWFhYWFhYWFhYWxhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEKW0FsbGdlbWVpbjpZdW5nYV0gYWFhYWFhYWFhYWcKW01vZXJkZXI6R2Vpc3QgZWluZXMgQmF1ZXJzXSBTbyB3ZXJkZW4gd2lyIG1pdCBkZXIgRXJudGUgYWJlciBuaWUgZmVydGlnCgpLZWluIFd1bmRlciwgYmVpIGRlbSBMYWcsIGRhIGRhdWVydCdzIGphIGF1Y2ggdmllbCBsYWVuZ2VyIDotKQoKSy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJsZWliIDopIChNZXRoZWRyYXMsIDIzLiBNYXIgMTk5NywgMDA6NTc6NTkpOgpbU2VoZXI6V29vZHldIERhIG5peCBuZXVlcyBpbiBkZXIgWmVpdHVuZyBzdGVodCwgZ2VoIGljaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGJsZWliIDopIChXb29keSwgMjMuIE1hciAxOTk3LCAwMToyNjoyMCk6Cn4jISBybj1NZXRoZWRyYXMgcnQ9ODU5MDc1MDc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU5MDc1MDc5CkRhcyB3YXIgZnVlciBtaWNoIGpldHp0IGFiZXIgbml4IG5ldWVzLCBCZXJnY2hlbiA6KQp3b29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqZ2FlaG4qIChTdXNoaSwgMjMuIE1hciAxOTk3LCAwMzoyNzoyMyk6CgoKRGllIERpc2tvIHVuZCBpY2ggdW5kIGRpZSBXZWx0IGFscyBzb2xjaGUuLi4KClZpZGksIHZpY2ksIHZlbmkuLi4KClVuZCBkYW5uPwoKU3VzaGkncyBnb3QgdGhlIG5hdHVyYWwgYXJyb2dhbmNlIG9mIGFuIGV4Y2xhbWF0aW9uIG1hcmsuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKmdhZWhuKiAoR3JpbW1ib3JuLCAyMy4gTWFyIDE5OTcsIDEzOjMyOjQ0KToKfiMhIHJuPVN1c2hpIHJ0PTg1OTA4NDA0MyByZz1zY2htYXJybgp+IyEgdGlkPTg1OTA4NDA0MwouLi51bmQgZGFubiBzY2hpY2sgc2llIHdlZywgc29uc3QgaGFzdCBEdSBzaWUgenVtIEZydWVoc3R1ZWNrIGF1Y2ggbm9jaCBhdWYKZGVtIEhhbHMuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3Qga2FubiBhdWNoIGVpbiBiaXNjaGVuIExhdGVpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbm4gQXNtb2RpcyBzYWd0ICdzcHJpbmdlJyAuLi4gKFJpbmdvciwgMjguIE1hciAxOTk3LCAwMTo0MDozMSk6CkVzIGdpbmcgdW0gZGllIEJpZXJzY2h1ZXR0bGVyOgoKW1NlaGVyOkFzbW9kaXMgZnJhZ3Qgc2ljaCBhdWNoLCB3aWVzbyBzbyB2aWVsZSBpbiBkaWVzZSBHaWxkZSBnZWhlbiB1bmQgZGFubgogICAgICAgYXVjaCBub2NoIG1lY2tlcm4sIGRhc3Mgc2llIGRlbiBXZWdoaWVyIG5pY2h0IHBhY2tlbiA8MDE6Mzc6MjA+XQpbVG9kOkxhcnNdIEVpbiBXZWdoaWVyIGhhdCBnZXJhZGUgSm9obnNpbHZlciB1bWdlYnJhY2h0LiA8MDE6Mzc6MzA+CltUb2Q6RWluIFdlZ2hpZXJdIEdvdGNoYSEgPDAxOjM3OjMwPgoKV2lya2xpY2ggZXJzdGF1bmxpY2gsIHdpZSBkaWUgTGV1dGUgYXVmIEFzbW8qIGhvZXJlbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZW5uIEFzbW9kaXMgc2FndCAnc3ByaW5nZScgLi4uIChBc21vZGlzLCAyOC4gTWFyIDE5OTcsIDAxOjQ1OjA3KToKfiMhIHJuPVJpbmdvciBydD04NTk1MDk2MzEgcmc9c2NobWFycm4KfiMhIHRpZD04NTk1MDk2MzEKWnVtIGJlc3NlcmVuIFZlcnN0YWVuZG5pczogV2lyIHNwcmFjaGVuIHZvcmhlciB1ZWJlciBkaWUgbmV1ZW4KU2VoZXJzcHJ1ZWNoZSBkZXIgQmllcnNjaHVldHRsZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCaWVyc2NodWV0dGxlciAoQXNtb2RpcywgMjguIE1hciAxOTk3LCAwMjozODoxNyk6CltUb2Q6TGFyc10gRWluIFZ1bGthbiBoYXQgZ2VyYWRlIFJhZmZlciB1bWdlYnJhY2h0LiA8MDE6MDA6Mjg+CltUb2Q6RWluIFZ1bGthbl0gSWNoIHZlcnRyYWdlIG5pY2h0IHNvdmllbCBTY2h1ZXR0ZWxiaWVyLiA8MDE6MDA6Mjg+CltUb2Q6TGFyc10gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSBKb2huc2lsdmVyIHVtZ2VicmFjaHQuIDwwMTozNzozMD4KW1RvZDpFaW4gV2VnaGllcl0gR290Y2hhISA8MDE6Mzc6MzA+CltUb2Q6TGFyc10gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSBXaW0gdW1nZWJyYWNodC4gPDAxOjUxOjE2PgpbVG9kOkVpbiBXZWdoaWVyXSBHb3RjaGEhIDwwMTo1MToxNj4KW1RvZDpMYXJzXSBFaW4gV2VnaGllciBoYXQgZ2VyYWRlIEpvaG5zaWx2ZXIgdW1nZWJyYWNodC4gPDAxOjUzOjI5PgpbVG9kOkVpbiBXZWdoaWVyXSBHb3RjaGEhIDwwMTo1MzoyOT4KW1RvZDpMYXJzXSBFaW4gU2NoYXR0ZW5tYW5uIGhhdCBnZXJhZGUgSm9obnNpbHZlciB1bWdlYnJhY2h0LiA8MDE6NTU6MzM+CltUb2Q6TGFyc10gRWluIFphdG9uZyBoYXQgZ2VyYWRlIExpcXVpIHVtZ2VicmFjaHQuIDwwMjoxMzowOD4KW1RvZDpMYXJzXSBFaW4gS2F0emVud2VzZW4gaGF0IGdlcmFkZSBDYWtleSB1bWdlYnJhY2h0LiA8MDI6MzM6NDA+CltUb2Q6RWluIEthdHplbndlc2VuXSAqIG1hdW56ICogPDAyOjMzOjQwPgoKCkhtbSwgZGFzIHdhcmVuIGFsbGVzIEJpZXJzY2h1ZXR0bGVyLCBpY2ggZ2xhdWJlLCBkaWUgdWViZXJzY2hhZXR6ZW4Kc2ljaCBqZXR6dCBtaXQgZGVuIG5ldWVuIFNlaGVyc3BydWVjaGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gcGFhciBnYW56IG5vcm1hbGUgTWludXRlbiBpbSBNRyAoQWNyaW1vbiwgMjguIE1hciAxOTk3LCAwMjo1OTozMSk6CgpEZWluIEZyZXVuZCBJdm8gdGVpbHQgRGlyIG1pdDogaWNoIHRlc3RlIG1hbCB3YXMgdW5kIGJpbiBnbGVpY2ggdG90CltTZWhlcjpJdm8gc3RpcmJ0IG1hbCBrdXJ6Ll0KW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbCBoYXQgZ2VyYWRlIEl2byB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsXSBQZmZmZmZmZmZmZmZ0Li4uLi4uLlBMVU1QUyEKW0FiZW50ZXVlcjpUcmVrYW4gZ3JpbnN0XQpbU2VoZXI6UmluZ29yXSBncnVlc3MgTGFycyB2b24gbWlyIC4uLiBpZ2l0dCwgZGllIFNlcXVlbnogaXN0IGRvY2ggbGFuZ3dlaWxpZwpbQmVpbGVpZDpTY2hva29dIFRzdHN0cyB3YXMgZ2lidCBpaG0gZGFzPz8KW0JlaWxlaWQ6VHJla2FuIGdyaW5zdF0KW0FsbGdlbWVpbjpab3Jyb10gcmUKW0JlaWxlaWQ6UmluZ29yXSBhbHNvIEdlaXN0IHdlcmRlbiBnZWh0IHNjaG5lbGxlciB1bmQgc2NobWVyemxvc2VyIC4uLgpbQmVpbGVpZDpUcmVrYW5dIG1taCAuLiBTb25uZW50ZW1wZWwtYW5iZXRlciA/CltCZWlsZWlkOlRyZWthbl0gaWNoIGRhY2h0ZSwgZGllIHZlcmJyZW5uZW4gc2ljaCBkYW5hY2ggaW1tZXIKW0JlaWxlaWQ6U2Nob2tvXSBHaWJ0IGRhcyBlaW4gU3R1ZmVucHVua3Qgb2Rlcndhcz8/CltBYmVudGV1ZXI6QXNtb2Rpc10gZWluZW4gZnAKW0FsbGdlbWVpbjpZYW50cm9dIGVuZ3lzY2hudWNrZWxkdWRvb2ZlcmltbWVyc2NobmVsbGVyYXVzbG9nZ2VyZHUgOi0oCls8TWFzdGVSPjpJdm9dIGxhZwpbPE1hc3RlUj46PE1hc3RlUj5dIDcuMzMgY21kcy9zLCAxMjQuOTQgY29tcCBsaW5lcy9zCls8TWFzdGVSPjo8TWFzdGVSPl0gTGFnOiAxMC43JS82MCwgMTIuMyUvMTUsIDIzLjclLzEKWzxNYXN0ZVI+OlNjaG9rb10gSGV5IEl2byAuLiB3YXJzIHNjaG9lbj8/Cls8TWFzdGVSPjpJdm9dIG1vbQpbU2VoZXI6SXZvXSBraWNoZXJ0CltTZWhlcjpJdm9dIGZpbmRldCBtaWNoIG1hbApbU2VoZXI6UmluZ29yXSBicmluZ3QgRGlyIGFiZXIgbml4CltTZWhlcjpJdm9dIHp1bSBhbnNjaGF1bmVuIHNjaG9uCltTZWhlcjpSaW5nb3JdIHN0aW1tdC4gbnVyIGRhcyBBdXNicmVubmVuIGdlaHQgbmljaHQgbWVociBhbHMgR2Vpc3QKW1NlaGVyOlNjaG9rb10gQWxzbyBHZWlzdCB3ZXJkZW4gZ2VodCB3aXJrbGljaCBlaW5mYWNoZXIuLgpbU2VoZXI6SXZvXSBhdXNicmVubmVuIGdoZXQgamUgbGVpZGVyIG5pY2h0IG9kZXIgZG9jaCA/CltBYmVudGV1ZXI6VGVycmFuXSB3YXMgaXN0IG5lIGhlbGxlYmFyZGU/CltUcnZlczpaaW5jaGVuXSBnZWxhZ2UgPwpbU2VoZXI6SXZvXSBoaWVyIHJlbm5lbiBub2NoIGhldHplciBydW0KW0FiZW50ZXVlcjpOaXJkYXZvXSBlaW5lIHdhZmZlCltTZWhlcjpab3Jyb10gZGFubiBtYWNoIGlobiB0b3QKW1RydmVzOkFjcmltb25dIEtsYXIsIHdlbm4gZGVyIFRpc2NoIHdpZWRlciBmdW5rdGlvbmllcnQKW0FiZW50ZXVlcjpOaXJkYXZvXSBzbyBlaW5lIGFyIGF4dCBhbiBlaW5lciBsYW5nZW4gc3RhbmdlCkRlaW4gRnJldW5kIERhbnRlIHRlaWx0IERpciBtaXQ6IEZST0hFIE9TVEVSTihmdWVyIGRpZSwgZGllcyBpbnRlcmVzc2llcnQ6KSkKW1NlaGVyOkl2b10gZXJzdG1hbCBiZXRlbiBnZWhlbiA7KQpbVHJ2ZXM6UmluZ29yXSBqbywgaGV1dGUgbWl0dGFnIGdpbmdzIHdpZWRlcgpbU2VoZXI6UmluZ29yXSBvY2gsIGRpZSBUYW50ZSBrb21tdCBkb2NoIG5vY2ggbGFlbmdzdCBuaWNodApbU2VoZXI6SXZvXSB3b2xsdGUgamEgbnVyIG1hbCB0ZXN0ZW4sIG9iIGljaCBhbHMgZ2Vpc3QgaW5zIHRhbCBrb21tZQpbVG9kOkxhcnNdIEVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsIGhhdCBnZXJhZGUgU2tpcHBlciB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsXSBQZmZmZmZmZmZmZmZ0Li4uLi4uLlBMVU1QUyEKW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbCBoYXQgZ2VyYWRlIFRyZWthbiB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsXSBQZmZmZmZmZmZmZmZ0Li4uLi4uLlBMVU1QUyEKW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbCBoYXQgZ2VyYWRlIFNjaG9rbyB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsXSBQZmZmZmZmZmZmZmZ0Li4uLi4uLlBMVU1QUyEKW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbCBoYXQgZ2VyYWRlIFJpZWdlbCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsXSBQZmZmZmZmZmZmZmZ0Li4uLi4uLlBMVU1QUyEKW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbCBoYXQgZ2VyYWRlIExpbnV4IHVtZ2VicmFjaHQuCltUb2Q6RWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWxdIFBmZmZmZmZmZmZmZnQuLi4uLi4uUExVTVBTIQpbVG9kOkxhcnNdIEVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsIGhhdCBnZXJhZGUgRG9zIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWxdIFBmZmZmZmZmZmZmZnQuLi4uLi4uUExVTVBTIQpbQmVpbGVpZDpEYW1va2xlc10gR2VpbApbQmVpbGVpZDpHZW5lc3lzXSB1cHMsIGFsbGUgYmVpZGU/IEJlaWxlaWQuLi4KW0JlaWxlaWQ6U2NobGlwc10gYWVoCltCZWlsZWlkOkl2byBydGZsdC5dCltCZWlsZWlkOlJpbmdvcl0gKnBydXV1c3QqIC4uLiBkYSBoYXQgd29obCB3ZXIgZGFzIFN0aWNod29ydCAnRlAnIGdlaG9lcnQgOikKW0JlaWxlaWQ6QXNtb2Rpc10ga2lsbHQgd2luZG93cwpbQmVpbGVpZDpMYWdlciBsY2h0IHNpY2ggc2NobGFwcF0KW0FsbGdlbWVpbjpKb2huc2lsdmVyXSB3aWUgZGllIGxlbW1pbmdlIDspCltCaWVyc2NodWV0dGxlcjpCcnVub10gSWNoIGhhYmUgZ2VyYWRlIGRpZSBUb3BsaXN0ZSBha3R1YWxpc2llcnQuCltCZWlsZWlkOkl2b10gbnVyIGJlc3NlcgpbQmVpbGVpZDpab3Jyb10gYWxzbyBkYXMgbWl0IGRlbSBmcCB3YXIgZWluZSBmZWhsIGluZm9ybWF0aW9uCls8TWFzdGVSPjpTY2hsaXBzXSBsCls8TWFzdGVSPjo8TWFzdGVSPl0gNy45MSBjbWRzL3MsIDEwMi4xNiBjb21wIGxpbmVzL3MKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDEwLjglLzYwLCAxMy4wJS8xNSwgMjMuNyUvMQpbQmllcnNjaHVldHRsZXI6UmluZ29yIGZvcmRlcnQgQnJ1bm8gaW4gZGllIEFyZW5hXQpbU2VoZXI6SXZvXSBzZXR6dCBkYXMgamVtYW5kIGluIHNjaG1hcnJuID8KRGVpbiBGcmV1bmQgRGFudGUga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEZWluIEZyZXVuZCBEYW50ZSB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4KW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbCBoYXQgZ2VyYWRlIFdpbmRvd3MgdW1nZWJyYWNodC4KW1RvZDpFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbF0gUGZmZmZmZmZmZmZmdC4uLi4uLi5QTFVNUFMhCltCZWlsZWlkOkFzbW9kaXNdIG5hIGFsc28gOikKW0JlaWxlaWQ6TGFnZXJdIGdyYXRzIGFzbW8gOy0pCltCZWlsZWlkOlJpbmdvcl0gZGFzIHdhciBlaW4gdmllbCB6dSBodW1hbmRlciBUb2QgZnVlciBXaW5kb3dzLiBRdWFlbGVuCltCZWlsZWlkOlJpbmdvcl0gbXVlc3N0ZSBtYW4gZXMgOikKW0JlaWxlaWQ6QXNtb2Rpc10gbmV0dGUgdG9kZXNzZXF1ZW56IDopCltCZWlsZWlkOlRyZWthbl0gbW1oIC4gZ2liYmV0IGRhdW1lbnNjaHJhdWJlbiA/CltCZWlsZWlkOlJpbmdvcl0gbmFqYSAuLi4gbmFjaCBkZW0gZHJpdHRlbiBNYWwgd2lyZCBzaWUgbGFuZ3dlaWxpZyA6LS8KW0JlaWxlaWQ6VHJla2FuXSBtYW4ga29lbm50ZSBpaG4gamEgdmVyZ2lmXHRlbiB1bmQgbWl0IDAgTFAncyBydW50ZXJqdW1wZW4gOy0pCltBbGxnZW1laW46WWFudHJvXSBkYW5lawpbQWxsZ2VtZWluOllhbnRyb10gb2RlcnNvCkluZ3JpZCBydWZ0OiBoZQoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWluIHBhYXIgZ2FueiBub3JtYWxlIE1pbnV0ZW4gaW0gTUcgKFlhbnRybywgMjkuIE1hciAxOTk3LCAxMzoyODoxOSk6Cn4jISBybj1BY3JpbW9uIHJ0PTg1OTUxNDM3MSByZz1zY2htYXJybgp+IyEgdGlkPTg1OTUxNDM3MQoKQWxzbyBqZSBvZWZ0ZXIgaWNoIGRpZXNlbiBBcnRpa2VsIHZvbiBhY3JpbW9uIGxlc2VuIG11c3MsIGRlc3RvIG1laHIgYmluIGljaAphdWNoIGRhZnVlciwgZWluaWdlbiBMZXV0Y2hlbiBkYXMgc2NocmVpYnJlY2h0IGluIGRlciBNUEEgenUgbmVobWVuLi4uLiBpY2gKc2VoIGltbWVyIG5vY2gga2VpbmVuIFNpbm4gdW5kIGVyc3QgcmVjaHQga2VpbmVuIEh1bW9yIGluIGRlbSBBcnRpa2VsLi4gZXIgaXN0Cm51ciBsYW5nIHVuZCBtbmVydnQuLi4gCgpBYmVyIHdlbm4gZGFzIGhpZXIgc28gc2VpbiBtdXNzLCBkYW5uIHNvbGx0ZSBtYW4gc2ljaCB2aWVsbGVpaGN0IHVlYmVybGVnZW4sCm9iIGRhcyBNRywgYnp3IGRlciBHYW1lZHJpdmVyIGF1dG9tYXRpc2NoIGVpbmZhY2ggYWxsZXMgbG9nZ3QgdW5kIGRhbm4gYWxsZSA1Cm1pbnV0ZW4gaW4gc2NobWFycm4gcG9zdGV0ISBEZW5uIGF1ZiBkYXMgbGFldWZ0IGVzIGhpbmF1cy4KCllhbnRybywgYmVsdXN0aWd0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFaW4gcGFhciBnYW56IG5vcm1hbGUgTWludXRlbiBpbSBNRyAoQW5hdG9sLCAyOS4gTWFyIDE5OTcsIDE1OjAwOjU5KToKfiMhIHJuPVlhbnRybyBydD04NTk2Mzg0OTkgcmc9c2NobWFycm4KfiMhIHRpZD04NTk1MTQzNzEKWmllbWxpY2ggYW5tYXNzZW5kLCB1ZWJlciBkZW4gU2lubmdlaGFsdCBhbmRlcmVyIExldXRlIEFydGlrZWwgenUgbGFlc3Rlcm4sCndlbm4gbWFuIHNlbGJzdCBhdXNzZXIgSGV0eicgdW5kIFByb3Zva2F0aW9uIGthdW0gc2lubnZvbGxlIEFydGlrZWwgc2NocmVpYnQsCmZpbmRlc3QgRHUgbmljaHQsIFlhbnRybz8KCkFuYXRvbCwgc2NocmVpYnQgamEgYXVjaCBhcnJvZ2FudGUgQXJ0aWtlbC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbiBwYWFyIGdhbnogbm9ybWFsZSBNaW51dGVuIGltIE1HIChBc21vZGlzLCAyOS4gTWFyIDE5OTcsIDE2OjEyOjI2KToKfiMhIHJuPVlhbnRybyBydD04NTk2Mzg0OTkgcmc9c2NobWFycm4KfiMhIHRpZD04NTk1MTQzNzEKCkhtbSwgaWNoIGdsYXViIGRlciBWb3JzY2hsYWcgaXN0IHNjaG9uIGdlZmFsbGVuLCBhYmVyIGJlc3RlbGwgZG9jaCBlaW5mYWNoCidzY2htYXJybicgYWIsIHdlbm4gZGljaCBkYXMgbmljaHQgaW50ZXJlc3NpZXJ0LCBZYW50cm8sIGRhbm4gaGFzdCBkdQprZWluZSBQcm9ibGVtZSBtZWhyICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFaW4gcGFhciBnYW56IG5vcm1hbGUgTWludXRlbiBpbSBNRyAoV3VyemVsLCAzMC4gTWFyIDE5OTcsIDAxOjM0OjE5KToKfiMhIHJuPVlhbnRybyBydD04NTk2Mzg0OTkgcmc9c2NobWFycm4KfiMhIHRpZD04NTk1MTQzNzEKYWxzbyBkaWUgYXJyb2dhbnRlIGludG9sZXJhbnosIGRpZSBkYXJhdXMgc3ByaWNodCwga2FubiBzY2hvbiBmYXN0IHdlaCB0dW4uCmljaCBoYWJlIGRpY2ggZWlnZW50bGljaCBuaWNodCBzbyBpbiBlcmlubmVydW5nLCB3aWUgZHUgZGljaCBoaWVyIHNlbGJzdApkYXJzdGVsbHN0Li4uIHZsL3JsLXVudGVyc2NoaWVkZSBoaW4gb2RlciBoZXIsIGlyZ2VuZHdvIHNvbGx0ZSBtYW4gZG9jaCBkYXMKemllbCBuaWNodCBkYXVlcm5kIGF1cyBkZW4gYXVnZW4gdmVybGllcmVuLiB1bmQgZGEgZGFzIGhpZXIgZWluIHNwaWVsIGlzdCwKaGVpc3N0IGRhcyBlaW56aWdlIHppZWwgKGplZGVuZmFsbHMgZnVlciBtaWNoIHVuZCBlaW5lIGdyb3NzZSBtZW5nZSBtZWhyKQp2b3IgYWxsZW0gc3Bhc3MgaGFiZW4uIHdlbm4gZGllIG1wYSBuaWNodCBkZWluZXIgdm9yc3RlbGx1bmcgZW50c3ByaWNodCwgd2FlcmUKZXMgZGVpbmVtIG1hZ2llcnN0YXR1cyBlaWdlbnRsaWNoIG51ciBhbmdlbWVzc2VuLCB3ZW5uIGR1IGVpbmUgYWx0ZXJuYXRpdmUKZGF6dSBlbnR3aWNrZWxzdCwgZWluZSB6ZWl0dW5nIG1pdCBhdXNnZXdhZWhsdGVuIHJlZGFrdGV1cmVuIGV0d2EsIHdvIG5pY2h0CmplZGVyIHJlaW5zY2hyZWliZW4gZGFyZi4gd2VubiBkdSBkYXMgZGluZyBkYW5uIG5vY2ggenUgZWluZW0gc29sY2hlbgptYXJrdGVyZm9sZyBicmluZ3N0LCB3aWUgaWhuIGRpZSBtcGEgaGF0LCBkYW5uIGh1dCBhYiA6KQplaW5mYWNoIHJ1bXN0YWVua2VybiBkdWVyZmVuIHNwaWVsZXIuIGVpbiBtYWdpZXIgc29sbHRlIGRhIGV0d2FzIGtyZWF0aXZlcgpzZWluLi4uIG1laW5lIG1laW51bmcsIHdhcyBzb25zdC4KCnd1cnplbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRWluIHBhYXIgZ2FueiBub3JtYWxlIE1pbnV0ZW4gaW0gTUcgKFNjaHJ1bXBmaSwgMzEuIE1hciAxOTk3LCAxNDo0NjozNSk6Cn4jISBybj1XdXJ6ZWwgcnQ9ODU5NjgyMDU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODU5NTE0MzcxCkphd29obCEKClNjaHJ1bXBmaSBhZXJnZXJ0IFlhbnRybywgR3JpbW1ib3JuIHVuZCBhbGxlIGFuZGVybiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVpbiBwYWFyIGdhbnogbm9ybWFsZSBNaW51dGVuIGltIE1HIChHcmltbWJvcm4sICAxLiBBcHIgMTk5NywgMDE6MTU6NDgpOgp+IyEgcm49U2NocnVtcGZpIHJ0PTg1OTgxMjM5NSByZz1zY2htYXJybgp+IyEgdGlkPTg1OTUxNDM3MQpIbW0/IFNvIHN1ZXNzIHdpZSBEdSBiaXN0IEtBTk5TVCBEdSBtaWNoIGdhciBuaWNodCBhZXJnZXJuLCBkYXMgd2Vpc3N0IER1CmRvY2guLi4gOy0pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QgbGllZ3QgZGVyIHN1ZXNzZW4gU2NocnVtcGZpIHdpZSBpbW1lciB6dSBGdWVzc2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFaW4gcGFhciBnYW56IG5vcm1hbGUgTWludXRlbiBpbSBNRyAoTGksICAxLiBBcHIgMTk5NywgMTA6MjU6NTIpOgp+IyEgcm49WWFudHJvIHJ0PTg1OTYzODQ5OSByZz1zY2htYXJybgp+IyEgdGlkPTg1OTUxNDM3MQpNYW5uIExldXRlIQpBY3JpbW9uIGthcGllcnQgbmljaHQsIGRhc3MgWWFudHJvIHNlaW5lIExvZ3MgbG9lc2NodCwgdW0gaWhuIHp1IGFlcmdlbi4gV2VubgpBY3JpbW9uIHNpY2ggbmljaHQgYXVmcmVnZW4gd3VlcmRlLCB3dWVyZGUgWWFudHJvIHNpY2hlcmxpY2ggbmljaHQgc28KcmVhZ2llcmVuLgpVbmQgWWFudHJvIGthcGllcnQgbmljaHQsIGRhc3MgRVIgbmljaHQgZGVyIE1hc3NzdGFiIGlzdCwgZGVyIGVudHNjaGVpZGV0LCB3YXMKemVuc2llcnQgd2lyZCB1bmQgd2FzIG5pY2h0LiBwcm9maWxpZXJ1bmdzc3VjaHQsIGRpZSBlciBBY3JpbW9uIHZvcndpcmZ0LApiZXNpdHp0IGVyIHNlbGJlciB6dSBnZW51ZWdlLgpHZXJhdGVuIHNpZSBzaWNoIGRlc2hhbGIgaW1tZXIgaW4gZGllIEhhYXJlPwpMaSAoc3RpbW10IGJlaWRlbiBlaW4gd2VuaWcgenUpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqZ3J1ZWJlbGtvcGZrcmF0eiogKE1ldGhlZHJhcywgIDEuIEFwciAxOTk3LCAxNDozMTo1MSk6CiAgICAgICAgICAgICAgICAgIEh1PyBodWh1PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDU4IHZvbiA2MApSZV41OiBNRyB3aXJkIHp1IHRldWVyIChBY3JpbW9uLCAgMS4gQXByIDE5OTcsIDE0OjE2OjMzKToKW0JlenVnOiBBcnRpa2VsIChnZWxvZXNjaHQ/KSB2b24gQWNyaW1vbiB2b20gIDEuIEFwciAxOTk3LCAxNDoxMjoyNF0KCkhhc3QgcmVjaHQsIHdpZSBzb2xsIG1hbiBkZW5uIG1laHIgR2VsZCBiZWtvbW1lbiwgd2VubiBhbGxlIFNwaWVsZXIgd2VnZW4KVWViZXJ0ZXVlcnVuZyBhYmhhdWVuPwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpBY3JpbW9uIGFudHdvcnRldCBzY2hvbiBhdWYgc2ljaCBzZWxic3Q/ICpzdGF1biogRGVyIGlzIGphIHNjaGxpbW1lcgphbHMgc2NoaXpvLiA6KQoKICAgICAgQmVyZ2NoZW4gTWV0aGVkcmFzIC0gZnJlY2ggaW4gc2ljaCByZWluZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMV3MgKEFzbW9kaXMsICAxLiBBcHIgMTk5NywgMTk6MTQ6NDUpOgpbVG9kOkxhcnNdIEVpbmUgSG9yZGUgSG9iYml0a2luZGVyIGhhdCBnZXJhZGUgV2lkZXdpdHQgdW1nZWJyYWNodC4gPDE5OjA2OjUyPgpbVG9kOkVpbmUgSG9yZGUgSG9iYml0a2luZGVyXSBXaXIgZm9sbHRlbiBiZWZmZXIgd2FmIHNwaWVsZW4gYWxmIHp1IGthZW1wZmVuISAKPDE5OjA2OjUyPgpbQmVpbGVpZDpEYWtoYXRoXSBqYWphLCBkaWUgaG9iYml0cyA7KSA8MTk6MDc6MTA+CltCZWlsZWlkOkF1cmV1c10gV2lkZXdpZGV3aXR0IGJ1bWJ1bSAuLi4gLS0gQmVpbGVpZCA8MTk6MDc6MjQ+Ci4uLgpUb2Q6TGFyc10gRWluIEhvYmJpdHdhZWNodGVyIGhhdCBnZXJhZGUgV2lkZXdpdHQgdW1nZWJyYWNodC4gPDE5OjExOjE4PgpbVG9kOkVpbiBIb2JiaXR3YWVjaHRlcl0gSmEsamEgd2lyIEhvYmJpdHMgc2luZCBkaWUgYmVzdGVuIApLYWVtcGZlciBkZXIgV2VsdCEKW1RvZDpFaW4gSG9iYml0d2FlY2h0ZXJdIDotKSA8MTk6MTE6MTg+CltCZWlsZWlkOkRha2hhdGhdIHVuZCBub2NoIGVpbiBob2JiaXQgLi4uIGJlaWxlaWQgPDE5OjExOjQ1PgpbQmVpbGVpZDpBY3JpbW9uXSBXaWRld2lkZXdpdHQgSnVjaGhlISA8MTk6MTI6MDk+CltCZWlsZWlkOkx1Z10gSG9lIGhvZSBob2UgPDE5OjEyOjIzPgpbQmVpbGVpZDpBbmF0b2xdIFZpZWxsZWljaHQgc29sbHRlIEd1bmR1ciBkYWZ1ZXIgc29yZ2VuLCBkYXNzIGRpZSBIb2JiaXRzCltCZWlsZWlkOkFuYXRvbF0gbmljaHQgc29vbyBuYWNodHJhZ2VuZCBzaW5kIDstKSA8MTk6MTI6Mzk+CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMV3MgKEFzbW9kaXMsICAxLiBBcHIgMTk5NywgMTk6MTY6MTgpOgp+IyEgcm49QXNtb2RpcyBydD04NTk5MTQ4ODUgcmc9c2NobWFycm4KfiMhIHRpZD04NTk5MTQ4ODUKU29ycnksIGRhcyB3YXJlbiB3b2hsIGtlaW5lIEZMV3MsIHNvbmRlcm4gRkZCcyAoZmFtb3VzIGZpcnN0IGJlaWxlaWRzKSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2VsYnN0anVzdGl6IHVuZCBNZWludW5nc2ZyZWloZWl0IChXb29keSwgIDIuIEFwciAxOTk3LCAwMDoyNDoyNyk6Cn4jISBybj1HdXlicnVzaCBydD04NTk4ODY1MTcgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTg1OTUxNDczNwp3aWVzbyB3YXIgZGVubiBkZXIgYXJ0aWtlbCBuYWNoIGRlbSB3b3J0ICJ1bmQiIHNvIHBsb2V0emxpY2ggenUgZW5kZT8KCndvb2R5IChkZW5rdCBkYXNzIGRhcyB3b2hsIGVpbiBvcGZlciBkZXIgYWt0aW9uICd6ZWl0dW5nIGxpZ2h0JywKCiAgICAgICAibWludXMgNTAlIGF1ZiBhbGxlIGFydGlrZWwiIHdhcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkpldHp0IGFiZXIgKEFzbW9kaXMsICAyLiBBcHIgMTk5NywgMDA6MzI6NTQpOgoKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIFdvb2R5IGluIFJ1YnJpayAic2NobWFycm4iLgpbQWxsZ2VtZWluOk5hY2h0d2luZF0gd2FydW0gZGVubiB1ZWJlcmhhdXB0PyBqZXR6dCBzaW5kIHdpciBnZXNwYW5udCwgaW5nb24hCls8TWFzdGVSPjpTYXJhbWlyXSBsYWcKWzxNYXN0ZVI+OjxNYXN0ZVI+XSA4LjI1IGNtZHMvcywgMjU5LjA0IGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMjYuNiUvNjAsIDE3LjMlLzE1LCAxMi41JS8xCls8TWFzdGVSPjpOYWNodHdpbmRdIGwKWzxNYXN0ZVI+OjxNYXN0ZVI+XSA4LjM1IGNtZHMvcywgMjUxLjE3IGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMjYuNCUvNjAsIDE2LjUlLzE1LCA2LjUlLzEKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEppbWRpZ3JpeiBpbiBSdWJyaWsgIndpdHplIi4KWzxNYXN0ZVI+OlVyemFdIGwKWzxNYXN0ZVI+OjxNYXN0ZVI+XSA4LjA0IGNtZHMvcywgMjQzLjU5IGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMjYuMiUvNjAsIDE1LjklLzE1LCAyMy4xJS8xCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBGeXQgaW4gUnVicmlrICJhbGxnZW1laW5lcyIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBGeXQgaW4gUnVicmlrICJhbGxnZW1laW5lcyIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBKaW1kaWdyaXogaW4gUnVicmlrICJ3aXR6ZSIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBBc21vZGlzIGluIFJ1YnJpayAiYWxsZ2VtZWluZXMiLgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gRnl0IGluIFJ1YnJpayAiYWxsZ2VtZWluZXMiLgpbQmVpbGVpZDpSZWdpc10gQm9lc2VyIFJhZXViZXIhCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBKaW1kaWdyaXogaW4gUnVicmlrICJ3aXR6ZSIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkb29mZXIgQXJ0aWtlbCAoQXNtb2RpcywgIDMuIEFwciAxOTk3LCAxMzoyODo1MSk6CgpbQWxsZ2VtZWluOkhhcl0gSHVycmEsIHNjaG9uIHNlaXQgMyBoIHZvbiBkb29mZW4gQXJ0aWtlbG4gaW4gZGVyIE1QQSB2ZXJzY2hvbnQKW0FsbGdlbWVpbjpIYXJdIHdvcmRlbiEKCkhtbSwgbmFqYSwgZGFubiBwb3N0ZSBpY2ggZG9jaCBtYWwgZWluZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZfTGFuZC1GYWt0b3IgKFpvcnJvLCAgNC4gQXByIDE5OTcsIDA5OjI3OjAyKToKRGllcyBpc3QgZGllIG9lc3RsaWNoZSBIYXVwdHN0cmFzc2UgaW4gT3JraGF1c2VuLiBIaWVyIHp3ZWlndCBkZXIgVHJvbGx3ZWcKbmFjaCBOb3JkZW4gYWIuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgd2VzdGVuIHVuZCBub3JkZW4uCj4gbwpEZXIgT3JrIHNhZ3Q6IER1IGhhc3QgZ3V0ZSBTYWNoZW4sIGhlciBkYW1pdC4KRGVyIE9yayBzYWd0OiBEdSBoYXN0IGd1dGUgU2FjaGVuLCBoZXIgZGFtaXQuCkVpbiBPcmsgaG9sdCB0aWVmIEx1ZnQuCmVpbiBPcmsgc2NoZWludCBkaWUgUnVoZSBzZWxic3QgenUgc2Vpbi4KRWluIE9yayB6d2lua2VydC4KRWluZXMgT3JrcyBLb2VycGVyIGZhZW5ndCBhbiB6dSBzY2hpbW1lcm4uCkVpbiBPcmsgemllaHQgc2ljaCBhbiBkZW4gSGFhcmVuLgpFaW5lbSBPcmsgd2FjaHNlbiB1ZWJlcmFsbCBIYWFyZS4KRWluIE9yayBzdGFycnQgVmFuZGFtbWUgYW4uCkR1IGVyc3RhcnJzdC4KICBEZXIgT3JrIGdyZWlmdCBEaWNoIG1pdCBrcmFlZnRpZ2VuIEZhZXVzdGVuIGFuLgogIER1IHdlaHJzdCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gQWdlLXVrZSBhYi4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAyMDkgTWFnaWVwdW5rdGUuCiAgRGVyIE9yayBzY2hsYWVndCBEaWNoIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCkR1IGhhc3QgamV0enQgMTgyIExlYmVuc3B1bmt0ZSB1bmQgMjA5IE1hZ2llcHVua3RlLgogIERlciBPcmsgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIHNlaHIgZ2VsdW5nZW5lbiBZb2tvLWdlcmkta2Vrb21pIGFuLgogIERlciBPcmsgemVyc3RhZXVidCBEaWNoLgpEdSBoYXN0IGpldHp0IDc4IExlYmVuc3B1bmt0ZSB1bmQgMjA5IE1hZ2llcHVua3RlLgpEdSBiZWZpbmRlc3QgRGljaCBpbW1lciBub2NoIGF1ZiBkZXIgT3JraGF1c2VuZXIgSGF1cHRzdHJhc3NlLiBIaWVyIHp3ZWlndCBkaWUKT3JrYWxsZWUgbmFjaCBOb3JkZW4gYWIuIEltIE9zdGVuIG1hY2h0IGRpZSBTdHJhc3NlIGVpbmVuIEtuaWNrIG5hY2ggTm9yZGVuLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHdlc3RlbiB1bmQgbm9yZGVuLgpFaW4gT3JrLgpFaW4gT3JrLgpFaW4gT3JrIGtuaWV0IGt1cnogbmllZGVyIHVuZCBrbGF0c2NodCBtaXQgZGVuIEhhZW5kZW4gYXVmIGRlbiBCb2Rlbi4KUGxvZXR6bGljaCBiZWdpbm50IGRpZSBFcmRlIHp1IGJlYmVuLgpFdHdhcyBmYWVsbHQgdm9uIGRlciBEZWNrZSB1bmQgdHJpZmZ0IERpY2guCiAgRHUgdmVyc3VjaHN0LCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gQWdlLXVrZSBhYnp1d2VocmVuLgpEdSBoYXN0IGpldHp0IDc4IExlYmVuc3B1bmt0ZSB1bmQgMjA4IE1hZ2llcHVua3RlLgogIERlciBPcmsgcHVsdmVyaXNpZXJ0IERpY2guCkR1IGhhc3QgamV0enQgMSBMZWJlbnNwdW5rdGUgdW5kIDIwOCBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAxIExlYmVuc3B1bmt0ZSB1bmQgMjAzIE1hZ2llcHVua3RlLgogIER1IGdyZWlmc3QgZGVuIE9yayBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIEFnZS10ZWlzaG8tdWNoaSBhbi4KICBEdSB0cmlmZnN0IGRlbiBPcmsgaGFydC4KPiB3CkVpbiBPcmsgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgpFaW4gT3JrIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KRGllcyBpc3QgZGllIG9lc3RsaWNoZSBIYXVwdHN0cmFzc2UgaW4gT3JraGF1c2VuLiBIaWVyIHp3ZWlndCBkZXIgVHJvbGx3ZWcKbmFjaCBOb3JkZW4gYWIuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgd2VzdGVuIHVuZCBub3JkZW4uCkR1IGRlbmtzdCAgIC4gbyBPIChvayBkYW5uIG5pY2h0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWlsbGlvbmVuZ3JhYiBCUEEtd2ViIHNpdGUgKFN1c2hpLCAgNC4gQXByIDE5OTcsIDE0OjU3OjU1KToKRGFzIEVyZ2VibmlzIGVpbmVyIEtvcnJlc3BvbmRlbnogbWl0IGRlbSAienVzdGFlbmRpZ2VuIiBNaXRhcmJlaXRlciBkZXMKUHJlc3NlLSB1bmQgSW5mb3JtYXRpb25zYW10ZXMgZGVyIEJ1bmRlc3JlZ2llcnVuZzoKCgp2aWVsZW4gRGFuayBmdXIgSWhyZSBFLU1haWwuCgpXaWUgc2Nob24gbWl0Z2V0ZWlsdCwgd2lyZCBlaW5lIGR5bmFtaXNjaGUgU2l0ZSBlaW5nZXJpY2h0ZXQuIERhbWl0IHdpcmQgZWluZQogbm9jaCBvcHRpbWFsZXJlIFByYXNlbnRhdGlvbiBlcnJlaWNodC4KCklocmUgUHJvYmxlbWUgbWl0IGRlbSBBbmdlYm90IHNpbmQgbmljaHQgbmFjaHZvbGx6aWVoYmFyLiBEaWUgdm9uIElobmVuCiBnZWZvcmRlcnRlbiBBbmdhYmVuIChBa3R1YWxpc2llcnVuZ3NkYXR1bSwgQW5nYWJlIGRlcyBXZWJtYXN0ZXJzIGV0Yy4pIHNpbmQKaW0KIEFuZ2Vib3QgZW50aGFsdGVuLiAyIE1pbGxpb25lbiBadWdyaWZmZW4gaW0gTW9uYXQgdW5kIGltbWVyIHdpZWRlciBwb3NpdGl2ZQogU3RpbW1lbiB6dW0gSW5mb3JtYXRpb25zYW5nZWJvdCwgZXMgd2lyZCBiZXNvbmRlcnMgZGllIGxlaWNodGUgTmF2aWdhdGlvbgogZ2Vsb2J0LCBzcHJlY2hlbiBmdXIgc2ljaC4KCkRpZSBnZXd1bnNjaHRlbiBBbmdhYmVuIHp1IDEgdW5kIDMgZXJoYWx0ZW4gU2llIGltIEltcHJlc3N1bS4gRGV0YWlscyB6dW0KIEF1ZnRyYWcgYmV0cmVmZmVuIGludGVybmUgRGllbnN0dm9yZ2FuZ2UsIGRpZSBpY2ggSWhuZW4gZGVzaGFsYiBuaWNodAphbmdlYmVuCiBkYXJmLgoKTWl0IGZyZXVuZGxpY2hlbiBHcnVzZW4KCgoKV2VyIFNwYXNzIGhhdCwgc2Nod2luZ3Qgc2ljaCBtYWwgZGEgaGluIHVuZCBmbGFtdCBkaWUgSWRpb3RlbiB6dS4gSWNoIGhhYmUKZWluZSBpaHJlciBTZWl0ZW4gdmFsaWRpZXJ0IHVuZCBiaW4genUgMjUwIEZlaGxlcm4gZ2Vrb21tZW4sIGRhbm4gaXN0IGRlcgpLb21waWxlciB2ZXJyZWNrdC4KClN1c2hpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIG1pdCBOb25uZSB1bnRlciBkZXIgRHVzY2hlLi4uIChTdXNoaSwgIDQuIEFwciAxOTk3LCAxNToxMjoyOSk6Ck5vbm5lIGxhZXNzdCBkYXMgUGFrZXQgZmFsbGVuLgpOb25uZSB6aWVodCBlaW5lIFNjaGxhbmdlbmhhdXQgYXVzLgpOb25uZSBsYWVzc3QgZGllIFNjaGxhbmdlbmhhdXQgZmFsbGVuLgpOb25uZSBsYWVzc3QgZGFzIE1hZ2lzY2hlIEF1Z2UgZmFsbGVuLgpOb25uZSB6aWVodCBlaW5lbiBFY2hzZW5oZWxtIGF1cy4KTm9ubmUgbGFlc3N0IGRlbiBFY2hzZW5oZWxtIGZhbGxlbi4KTm9ubmUgemllaHQgZWluIFBhYXIgV2lsZGVyZXJzdGllZmVsIGF1cy4KTm9ubmUgbGFlc3N0IGRhcyBQYWFyIFdpbGRlcmVyc3RpZWZlbCBmYWxsZW4uCk5vbm5lIHppZWh0IGVpbmUgV2lsZGVyZXJob3NlIGF1cy4KTm9ubmUgbGFlc3N0IGRpZSBXaWxkZXJlcmhvc2UgZmFsbGVuLgpOb25uZSBsYWVzc3QgZGVuIE1vcmdlbnN0ZXJuIGZhbGxlbi4KTm9ubmUgemllaHQgZWluIEFtdWxldHQgYXVzLgpOb25uZSBsYWVzc3QgZGFzIEFtdWxldHQgZmFsbGVuLgpOb25uZSB6aWVodCBlaW5lbiBIb3JucGFuemVyIGF1cy4KTm9ubmUgbGFlc3N0IGRlbiBIb3JucGFuemVyIGZhbGxlbi4KTm9ubmUgemllaHQgZWluZW4gZ2xhZW56ZW5kZW4gVGFsaXNtYW4gYXVzLgpNaWdodHktcGVuaXMgbWlhdXQgbGVpc2UuCk5vbm5lIHNhZ3Q6IG5hISBpc3QgZGFzIG5peCEKTm9ubmUgd2Fja2VsdCBtaXQgZGVtIEFyc2NoLgoKCgoqKioqKioqKipBYmVyIGRhbm4qKioqKioqKioqKgpOb25uZSBkdXNjaHQgbmljaHQuCgoKCkFsbGVzIGxlZXJlIFZlcnNwcmVjaGVuLgoKU3VzaGktLWhldXRlIGltbWVyIG5vY2ggb2huZSBDeWJlcnNleC4KKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1pbGxpb25lbmdyYWIgQlBBLXdlYiBzaXRlIChBY3JpbW9uLCAgNC4gQXByIDE5OTcsIDE1OjIxOjUwKToKfiMhIHJuPVN1c2hpIHJ0PTg2MDE1ODY3NSByZz1zY2htYXJybgp+IyEgdGlkPTg2MDE1ODY3NQpXYXJ1bT8gV2lyIGtlbm5lbiBkaWUgSGludGVyZ3J1ZW5kZSBuaWNodC4KVW5kIFp1ZmxhbWVuIGJyaW5ndCBzZWx0ZW4gd2FzIEd1dGVzIC0gZXMgdmVydG9wZnQgc293b2hsIHVuc2VyIE5ldHogd2llIGF1Y2gKZGllIEthcGF6aXRhZXRlbiBkZXMgWmllbGVzLCB3YXMgZGllc2UgYW0gQmVoZWJlbiBpaHJlciBGZWhsZXIgYmVoaW5kZXJ0LgoKV2FzIHNvbGwgZGFzIGFsc28/CgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWlsbGlvbmVuZ3JhYiBCUEEtd2ViIHNpdGUgKEdyaW1tYm9ybiwgIDQuIEFwciAxOTk3LCAxNTo1MToxMCk6Cn4jISBybj1BY3JpbW9uIHJ0PTg2MDE2MDExMCByZz1zY2htYXJybgp+IyEgdGlkPTg2MDE1ODY3NQpWb3IgYWxsZW0sIHdlaWwga2VpbmUgdXJsIGFuZ2VnZWJlbiB3YXIsIHdvIG1hbiBoYWV0dGUgenVtdWVsbGVuIGtvZW5uZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNaWxsaW9uZW5ncmFiIEJQQS13ZWIgc2l0ZSAoU3VzaGksICA0LiBBcHIgMTk5NywgMTY6MDE6MzQpOgp+IyEgcm49QWNyaW1vbiBydD04NjAxNjAxMTAgcmc9c2NobWFycm4KfiMhIHRpZD04NjAxNTg2NzUKV2FzIGRhcyBzb2xsPyBXaXJmIG1hbCBlaW5lbiBCbGljayBhdWYgZGllIFNpdGUuLi4gRGFubiBzdGVsbCBpbiBSZWNobnVuZywKZGFzcyBkaWUgcHJvIFNlaXRlIGV0d2EgRE0gNTAwMC4tIGdla29zdGV0IGhhdC4uLiBVbmQgZGFubiBmcmFnZSBEaWNoLCB3b2hpbgpEZWluZSBTdGV1ZXJuIGdlaGVuLCB1bmQgd2FydW0gbWFuIHNpY2ggc28gZWluZW4gU2Nod2FjaHNpbm4gZXJ6YWVobGVuIGxhc3NlbgptdXNzLiBOaWNodCBlaW5tYWwgQWR1bHRjaGVjayBoYXQgMiBNaW8gaW0gTW9uYXQsIHVuZCBkYSBrcmllZ3QgbWFuIHdlbmlnc3RlbnMKd2FzIHp1IHNlaGVuLgoKU3VzaGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1pbGxpb25lbmdyYWIgQlBBLXdlYiBzaXRlIChTdXNoaSwgIDQuIEFwciAxOTk3LCAxNjowMzozNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODYwMTYxODcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYwMTU4Njc1Cmh0dHA6Ly93d3cuYnVuZGVzcmVnaWVydW5nLmRlLy5iaW4vbGF5L2lubGFuZC9icGEvYnJvL3dlZ3dlaXMvMAogICAgICAgICAgMDAwMDExMy5odG0KCgpNYW4gYmVhY2h0ZSBkYXMgbGllYmV2b2xsIGhhbmRnZWJsYXNlbmUgLmh0bSBWZXJtdXRsaWNoICJicm91Z2h0IHRvIHlvdSBieSBNJApmdWNrcGFnZSIgb2RlciBzby4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1pbGxpb25lbmdyYWIgQlBBLXdlYiBzaXRlIChBY3JpbW9uLCAgNC4gQXByIDE5OTcsIDE2OjA4OjA0KToKfiMhIHJuPVN1c2hpIHJ0PTg2MDE2MjQ5NCByZz1zY2htYXJybgp+IyEgdGlkPTg2MDE1ODY3NQpBZHVsdGNoZWNrIHZlcnN0b3BmdCBkYXMgTmV0eiwgYnJpbmd0IG5pY2h0cywgaXN0IGxhbmd3ZWlsaWcgdW5kIGVrbGlnLCB1bmQKdmVyZnVlaHJ0IG1hbmNoZSB2ZXJpcnJ0ZSBHZWlzdGVyIHp1bSBOZXR6dmVyc3RvcGZlbi4gQWR1bHRjaGVjayBnZWhvZXJ0Cnp1Z2VmbGFtZXQsIGFiZXIga2VpbmVzZmFsbHMgZGllIEJQQSEKCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTWlsbGlvbmVuZ3JhYiBCUEEtd2ViIHNpdGUgKFN1c2hpLCAgNC4gQXByIDE5OTcsIDE2OjQ3OjAzKToKfiMhIHJuPUFjcmltb24gcnQ9ODYwMTYyODg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYwMTU4Njc1CkhtbW0uLi4gdW5kIGRhcyB2b24gImdpYnN0IER1IG1pciBtYWwgZGllIFVSTCIgQWNyaW1vbj8gKmtpY2hlcioKCkRhcyBCUEEgaGluZ2VnZW4gaXN0IGVpbiBIYXVmZW4gdm9uIFBlbm5lcm4gdW5kIGFiZ2VoYWxmdGVydGVuIEJLQWxlcm4sIHVuZApkaWUgZ2Vob2VyZW4gZnVlciBkaWVzZW4gZ3JhdXNhbWVuIEJvY2ttaXN0IGVpbmZhY2ggbWFsIGFuZ2VmbGFtZWQuLi4KClN1c2hpIC0tIG1pdCBCUEEgRXJmYWhydW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTWlsbGlvbmVuZ3JhYiBCUEEtd2ViIHNpdGUgKEFjcmltb24sICA0LiBBcHIgMTk5NywgMTY6NTU6MjQpOgp+IyEgcm49U3VzaGkgcnQ9ODYwMTY1MjIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYwMTU4Njc1CiphcmdsKiBTbyBlaW4gTWlzdCBpbnRlcmVzc2llcnQgbWljaCBuaWNodC4KVW5kIGRpZSBVUkwgaG9lY2hzdGVucywgdW0gc2llIGRlciBQb2xpemVpIHp1IG1lbGRlbi4KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTWlsbGlvbmVuZ3JhYiBCUEEtd2ViIHNpdGUgKFNpZG9saW4sICA0LiBBcHIgMTk5NywgMTY6NTg6MzUpOgp+IyEgcm49QWNyaW1vbiBydD04NjAxNjU3MjQgcmc9c2NobWFycm4KfiMhIHRpZD04NjAxNTg2NzUKRGFzIGdyb2Vzc3RlIFNjaHdlaW4gaW0gZ2FuemVuIExhbmQuLi4uCgoKLi4uLiBkYXMgaXN0IGRlciBEZW51bnppYW50LgoKU2lkb2xpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFNlbGJzdGp1c3RpeiB1bmQgTWVpbnVuZ3NmcmVpaGVpdCAoU2NocnVtcGZpLCAgNC4gQXByIDE5OTcsIDE3OjM4OjQ1KTogKFN1c2hpLCAgNC4gQXByIDE5OTcsIDE4OjA4OjUxKToKU3RyZW5nIGdlbm9tbWVuIGJpc3QgRHUgZWluIHBvbGl0aXNjaGVyIFZvbGxpZGlvdC4gZXMgZ2lidCBuYWVtbGljaCBrZWluZQpMaW5rc2V4dHJlbWVuLCBlcyBnaWJ0IGF1Y2gga2VpbmUgUmVjaHRzcmFkaWthbGVuClNvbGwgaWNoIERpciBub2NoIGVpbiBuZXR0ZXMgTGlua3NyYWRpa2FsZXMgTGllZCB2b3JzaW5nZW4/IEhtbSwgRHUgaG9lcnN0CndhaHJzY2hlaW5saWNoIGxpZWJlciBTdG9lcmtyYWZ0LgpTY2hydW1wZmkuIExpbmtzcmFkaWthbCB1bmQgc3RvbHogZGFyYXVmLgoKQWNoLCBhY2guLi4gU29sbCBpY2ggbWFsIG1laW5lIGdlc2FtbWVsdGVuIFN0dWRpZW5hcmJlaXRlbiB6dXIgZ2VmYWVsbGlnZW4KQmV0cmFjaHR1bmcgZnJlaWdlYmVuPyBEaWUgd3VlcmRlc3QgRHUgendhciB2ZXJtdXRsaWNoIG5pY2h0IHZlcnN0ZWhlbiwgYWJlcgp2aWVsbGVpY2h0IHd1ZXJkZSBEaWNoIGRhcyBldHdhcyBCZXNjaGVpZGVuaGVpdCBpbiBkZXIgRWluc2NoYWV0enVuZyBEZWluZXMKcG9saXRpc2NoZW4gV2lzc2VucyBsZWhyZW4uIEljaCB3dWVyZGUgbWlyIGplZGVuZmFsbHMgbmljaHQgYW5tYXNzZW4sCmFuZGVybGV1dHMgcG9saXRpc2NoZSBNZWludW5nZW4gbWl0IEJlZ3JpZmZlbiB3aWUgInBvbGl0aXNjaGVyIFZvbGxpZGlvdCIgenUKYmV3ZXJ0ZW4sIGFsbGVuZmFsbHMgbWl0IGhhbHRiYXIgb2RlciBuaWNodCBoYWx0YmFyLiBEZWluZSBlcnNjaGVpbnQgbWlyIG5pY2h0CmhhbHRiYXIsIGFiZXIgZGFyYXVmIGJpc3QgRHUgdmVybXV0bGljaCBlYmVuc28gc3RvbHogd2llIGRhcmF1ZiwgZGV1dHNjaCB6dQpzZWluLiBPZGVyIHZlcndlY2hzbGUgaWNoIGRhIHdhcz8KClN1c2hpLS0taGF0IHNjaG9uIGltbWVyIGxpZWJlciBlbmdsaXNjaGUgTXVzaWsgZ2Vob2VydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTZWxic3RqdXN0aXogdW5kIE1laW51bmdzZnJlaWhlaXQgKFNjaHJ1bXBmaSwgIDQuIEFwciAxOTk3LCAxNzozODo0NSk6IChHcmltbWJvcm4sICA0LiBBcHIgMTk5NywgMTg6MTc6NDQpOgp+IyEgcm49U3VzaGkgcnQ9ODYwMTcwMTMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYwMTcwMTMxCk5hamEsIFNhY2hsaWNoa2VpdCB3YXIgamEgbm9jaCBuaWUgRGVpbmUgU3RhZXJrZSwgbmljaHQgd2FociwgU3VzaGk/IFNjaG9uIGF1cwpkZW0gR3J1bmQgd3VlcmRlIG1pY2ggRGVpbmUgU3R1ZGllbmFyYmVpdCBpbnRlcmVzc2llcmVuLCBlcyBnaWJ0IGRhIG5ldHRlCnRleDJodG1sIEtvbnZlcnRlciwgbWFjaCBkb2NoIG1hbC4gVW5kIHBvc3RlIGhpZXIgZGllIHVybC4KSWNoIHZlcnN0ZWhlIGd1dCwgZGFzcyBEdSBTY2hydW1wZmkgZWluZSBnZXdpc3NlIElOdGVsbGlnZW56IGFic3ByaWNoc3QsIGRhbWl0Cm11ZXNzZW4gYWxsZ2VtZWluIExldXRlIGxlYmVuLCBkaWUgc28gc3Vlc3Mgc2luZCB3aWUgU2NocnVtcGZpLiBBYmVyIGxhc3MgRGlyCmdlc2FndCBzZWluLCBzaWUgaXN0IG1pbmRlc3RlbnMgc28gaW50ZWxsaWdlbnQgd2llIGJsb25kLiBBZWgsIHN1ZXNzLiBBbHNvLApqZWRlbmZhbGxzIGlzdCBpaHIgcG9saXRpc2NoZXMgV2lzc2VuIGZ1bmRpZXJ0ZXIgYWxzIGRhcyB2b24gZGVuIGFsbGVybWVpc3RlbgpMZXV0ZW4sIGRpZSBpY2gga2VubmVuZ2VsZXJudCBoYWJlLCB1bmFiaGFlbmdpZyBkYXZvbiB3aWUgaWNoIGRhenUgc3RlaGUgKGVpbgpGYXNjaG8ga2FubiBhdWNoIGZ1bmRpZXJ0ZXMgcG9saXRpc2NoZXMgV2lzc2VuIGhhYmVuKS4KCkFjaCBqYSwgaWNoIGdsYXViZSBrYXVtLCBkYXNzIGRpZSBMZWt0dWVyZSB2b24gRGVpbmVuIGxpdGVyYXJpc2NoZW4gRXJndWVzc2VuCnp1ciBCZXNjaGVpZGVuaGVpdCBhbnJlZ3QsIHdlbm4gbWFuIHNpZSBuaWNodCB2ZXJzdGVodCAoZGFzIGhhdHRlc3QgRHUgamEKYmVoYXVwdGV0KS4gSG9lY2hzdGVucyB6dSBIZWl0ZXJrZWl0IG9kZXIgTWl0bGVpZC4KCkZpbmdlciB3ZWcgdm9uIFNjaHJ1bXBmaSEKICAgICAgICAgICAgICAgICAgICAgICAgICAgR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprbGFyIChBc21vZGlzLCAgNC4gQXByIDE5OTcsIDIwOjI2OjQ2KToKCm1hbCB3YXMKClAuUy46CltBbGxnZW1laW46U2NocnVtcGZpXSBzY2hyZWlidCBtYWwgd2FzIGluIGRpZSBtcGEsIG1pciBpcyBsYW5nd2VpbGlnLCBob2x5CltBbGxnZW1laW46U2NocnVtcGZpXSBtaXNzaW9uIGdlaHQgbmljaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNaWxsaW9uZW5ncmFiIEJQQS13ZWIgc2l0ZSAoR3VsZHVrYXQsICA0LiBBcHIgMTk5NywgMjI6MDE6MjYpOgp+IyEgcm49U3VzaGkgcnQ9ODYwMTU4Njc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYwMTU4Njc1Cj4gIG5vY2ggb3B0aW1hbGVyZSBQcmFzZW50YXRpb24gZXJyZWljaHQKd2FzIGlzdCBkZW5uIGRlciBzdXBlcmxhdGl2IHZvbiBvcHRpbWFsZXI/CkdECgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1pbGxpb25lbmdyYWIgQlBBLXdlYiBzaXRlIChHcmltbWJvcm4sICA0LiBBcHIgMTk5NywgMjM6NDc6MTcpOgp+IyEgcm49R3VsZHVrYXQgcnQ9ODYwMTg0MDg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYwMTU4Njc1CiJJZGlvdCIsIGViZW5zbyB3aWUgZGllIEtvbXBlcmF0aW9uIHZvbiAiZWluemlnIi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWlsbGlvbmVuZ3JhYiBCUEEtd2ViIHNpdGUgKEd1bGR1a2F0LCAgNC4gQXByIDE5OTcsIDIzOjQ5OjAwKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NjAxOTA0Mzcgcmc9c2NobWFycm4KfiMhIHRpZD04NjAxNTg2NzUKSGUsIGljaCBoYWIgb3B0aW1hbCBkb2NoIG5pY2h0IGdlc3RlaWdlcnQsIHNvbmRlcm4gZGVyIGZ1enp5IHZvbiBkZXIKYmlybmVuLW1hbm5zY2hhZnQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNaWxsaW9uZW5ncmFiIEJQQS13ZWIgc2l0ZSAoR3JpbW1ib3JuLCAgNC4gQXByIDE5OTcsIDIzOjUxOjI4KToKfiMhIHJuPUd1bGR1a2F0IHJ0PTg2MDE5MDU0MCByZz1zY2htYXJybgp+IyEgdGlkPTg2MDE1ODY3NQpNaXIgZG9jaCBlZ2FsLiBEdSBrb21tc3QgbWlyIGluIGRlbiBXZWcsIER1IGtyaWVnc3QgZWluZSB2b3JzIFNjaGllbmJlaW4uIApTbyBlaW5mYWNoIGlzdCBkYXMgTGViZW4uIDotKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSdWVja2tlaHIgenUgYWx0ZW4gVHJhZGl0aW9uZW4gKEdyaW1tYm9ybiwgIDUuIEFwciAxOTk3LCAwMToxNTo0Nyk6CkhpZXIgbWFsIHdpZWRlciBlaW4gU3BydWNoIGRlciBXb2NoZToKCiJJbiBkZXIgRWluc2Fta2VpdCBrYW5uIG1hbiBzaWNoIGFsbGVzIHZlcnNjaGFmZmVuLCBhdXNzZXIgQ2hhcmFrdGVyLiIKKFN0ZW5kaGFsKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNaWxsaW9uZW5ncmFiIEJQQS13ZWIgc2l0ZSAoRnl0LCAgNi4gQXByIDE5OTcsIDE2OjEzOjU3KToKfiMhIHJuPUFjcmltb24gcnQ9ODYwMTYyODg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYwMTU4Njc1CgpIbSwga2xhZXIgbWljaCBtYWwgdWViZXIgQWR1bHRjaGVjayBhdWYsIEFjcmltb24sIGljaCBrZW5uZSBkaWUgbmFlbWxpY2gKbmljaHQsIHVtIG1pciBlaW4gVXJ0ZWlsIGRhcnVlYmVyIGJpbGRlbiB6dSBrb2VubmVuLgoKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IChBbmF0b2wsICA2LiBBcHIgMTk5NywgMjI6NDg6MTEpOgoKW0JlaWxlaWQ6R2VuZXN5cyBkZW5rdCB1ZWJlciBkZW4gVW50ZXJzY2hpZWQgendpc2NoZW4gQmVpLi4uIHVuZCBieWUgbmFjaC4uLi5dCi4uLgpldHdhcyBzcGFldGVyOgogW1RvZDpMYXJzXSBFaW4gZnJlaWVyIEZhbGwgaGF0IGdlcmFkZSBHZW5lc3lzIHVtZ2VicmFjaHQuCltUb2Q6RWluIGZyZWllciBGYWxsXSBIZXkgLSBNb21lbnQuIEFscyBHZW5lc3lzIG5vY2ggaW0gZnJlaWVuIEZhbGwgd2FyLCBsZWJ0ZQpbVG9kOkVpbiBmcmVpZXIgRmFsbF0gZXIgbm9jaCEgS29ycmlnaWVydCBkYXMgZ2VmYWVsbGlnc3QhCltUb2Q6TGFyc10gRGVyIGhhcnRlIEF1ZnNjaGxhZyBoYXQgZ2VyYWRlIEdlbmVzeXMgdW1nZWJyYWNodC4KW1RvZDpEZXIgaGFydGUgQXVmc2NobGFnXSBWZXJkYW1tdCwgd2llc28gc29sbCBpY2ggaW1tZXIgU2NodWxkIHNlaW4/CgpIbWphLiBXYXIgd29obCBlaGVyIEJ5ZS4KQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3Li4uIChOaWNodHMsICA2LiBBcHIgMTk5NywgMjM6NDE6MzQpOgoKRGVpbmUgRnJldW5kaW4gU2hhcmlhIHRlaWx0IERpciBtaXQ6IGFjaHR1bmcgaWNoIHN0ZXJiIGdsZWljaCA6LSkKLi4uClNwYWV0ZXIuLi46CltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIFNoYXJpYSB1bWdlYnJhY2h0LgoKS2xlcmlrZXIuLi4KIiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZmx3Li4uIChNYWhhdG1hLCAgNi4gQXByIDE5OTcsIDIzOjQ1OjE2KToKfiMhIHJuPU5pY2h0cyBydD04NjAzNjI4OTQgcmc9c2NobWFycm4KfiMhIHRpZD04NjAzNjI4OTQKTmVuZW5lLCBkYXMgd2FyIG5vY2ggdmllbCBiZXNzZXI6CgpEZWluZSBGcmV1bmRpbiBTaGFyaWEgdGVpbHQgRGlyIG1pdDogYWNodHVuZyBpY2ggc3RlcmIgZ2xlaWNoIDotKQoKZXR3YXMgc3BhZXRlcjoKRHUgdGVpbHN0IFNoYXJpYSBtaXQ6IGJpc3RlIG5vY2ggbmljaHQgdG90PyA7KQoKdW5kIG5vY2ggZXR3YXMgc3BhZXRlcjoKU2hhcmlhIHRlaWx0IERpciBtaXQ6IGhtbSBpcmdlbmR3aWUgbmljaCA6LSkKW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgU2hhcmlhIHVtZ2VicmFjaHQuCgpNYWhhdG1hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWLWxhbmQtZmFrdG9yIChab3JybywgIDcuIEFwciAxOTk3LCAxMDoxOTo0NSk6CldpZXNvIHplcnN0YWV1YmVuIGRpZSBXdXJzdC1LYXJhdGVvcmtzIGluIE9ya2hhdXNlbiBuaWNodCA6KT0KCkRlciBPcmsgc2FndDogRHUgaGFzdCBndXRlIFNhY2hlbiwgaGVyIGRhbWl0LgpEZXIgT3JrIHNhZ3Q6IER1IGhhc3QgZ3V0ZSBTYWNoZW4sIGhlciBkYW1pdC4KICBEZXIgT3JrIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBzZWhyIGdlbHVuZ2VuZW4gTWFlLWdlcmkta2VhZ2UgYW4uCkRhcyBLcmV1eiBmYWVuZ3QgYW4genUgbGV1Y2h0ZW4uCiAgIERlciBPcmsgc2NobGFlZ3QgRGljaCB6dSBCcmVpLgpEdSBoYXN0IGpldHp0IDEwNyBMZWJlbnNwdW5rdGUgdW5kIDE2NyBNYWdpZXB1bmt0ZS4KICBEZXIgT3JrIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBzZWhyIGdlbHVuZ2VuZW4gTWFlLWdlcmkta2Vrb21pIGFuLgogIERlciBPcmsgcHVsdmVyaXNpZXJ0IERpY2guCkR1IGhhc3QgamV0enQgMjIgTGViZW5zcHVua3RlIHVuZCAxNjcgTWFnaWVwdW5rdGUuCkR1IHNjaGF1c3QgZ2VzcGFubnQgbmFjaCBOb3JkZW4gYXVmIGRlbiBncm9zc2VuIFBsYXR6LCBkZXIgdm9yIERpciBsaWVndC4gSW0KU3VlZGVuIGxpZWd0IGRpZSB3dW5kZXJzY2hvZW5lIFN0cmFzc2UgZGVyIEhvZmZudW5nLiBUaWVmIGltIFN1ZWRlbiBzaWVoc3QgRHUKZGllIFNvbm5lLCBkaWUgZGlyZWt0IHVlYmVyIGRlciBTdHJhc3NlIHp1IGhhZW5nZW4gc2NoZWludCwgYWxzIG9iIHNpZSBudXIKZnVlciBzaWUgZGEgd2FlcmUuCkVzIGdpYnQgdmllciBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KRWluIE9yay4KRWluIE9yay4KICBEdSBncmVpZnN0IGRlbiBPcmsgbWl0IGRlbSBrcmVpc2NoZW5kZW4gRWxlbWVudGFyc2Nod2VydCBhbi4KICBFaW4gT3JrIHdlaHJ0IERlaW5lbiBBbmdyaWZmIG1pdCBlaW5lbSBTaHV0by1qdWppLXVrZSBhYi4KICBEdSB0cmlmZnN0IGRlbiBPcmsuCj4gRHUgZmV1ZXJzdCBlaW5lbiBzY2hyaWxsZW4gS2FtcGZzY2hyZWkgYXVmIGVpbmVuIE9yayBhYi4KICBEdSB6ZXJzY2htZXR0ZXJzdCBkZW4gT3JrIGluIGtsZWluZSBTdHVlY2tjaGVuLgpEdSBoYXN0IGpldHp0IDIyIExlYmVuc3B1bmt0ZSB1bmQgMTQ3IE1hZ2llcHVua3RlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NoYWxrZSAhIDopIChZYW50cm8sICA5LiBBcHIgMTk5NywgMDc6MjU6NTkpOgp+IyEgb249R3JvbyBvdD04NjA1MzcxOTMgb2c9YWxsZ2VtZWluZXMKSGFoYWhhaGFoYWhhaGFoYWhhaGFoYWhhaGFoYS4uLgpTMDQsIGhhdHMgZWNodCBkcmF1ZiAKKmdyaW5zKgpHcm9vCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqZ3J1bW1lbCogKFlhbnRybywgIDkuIEFwciAxOTk3LCAwNzozNjozMSk6Cn4jISBvbj1Hcm9vIG90PTg2MDUzODM2MiBvZz1tYWdpZXIuZXRpa2V0dGUKOmRlbmt0OiBTZXNzZWxwdXBlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmdydW1tZWwqIChZYW50cm8sICA5LiBBcHIgMTk5NywgMTE6Mzg6NDMpOgp+IyEgb249R3JvbyBvdD04NjA1NzUyNjUgb2c9bWFnaWVyLmV0aWtldHRlCmRlbmtlOiBTZXNzZWxwdXBlciAhCkdyb28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvb2R5LCBkZXIgVmFtcGlyZnJldW5kPyAoS3JldGVrLCAgOS4gQXByIDE5OTcsIDE1OjM1OjE4KToKRWluIGVudHNldHpsaWNoZXIgU2NocmVpIGhhbGx0IHZvbSBGcmllZGhvZiBoZXJ1ZWJlci4gICAgCldvb2R5ICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKT2hqZSwgZGEgbXVzcyBkZXIgVmFtcGlyIGFiZXIgZ2FueiBzY2hvZW4gdHJhdXJpZyBzZWluLCB3ZW5uIGlobiBzZWluIEt1bXBlbAp2ZXJsYWVzc3QuLi4KCksuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBaZWl0dW5nIChZYW50cm8sIDEwLiBBcHIgMTk5NywgMTA6MjM6NTIpOgp+IyEgb249R3VsZHVrYXQgb3Q9ODYwNjE4MjIyIG9nPWFsbGdlbWVpbmVzCn4jISBybj1ab3JybyBydD04NjA1NzYyNzggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04NjA0OTIxODUKaGVoZSEKOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh1Y2ggKFpvcnJvLCAxMS4gQXByIDE5OTcsIDE2OjMyOjI5KToKPiB3CkVpbiBsYXV0ZXMgRG9ubmVybiBoYWxsdCBkdXJjaCBkZW4gSG9laGxlbmdhbmcuCkVpbiBncm9zc2VyLCBzY2h3ZXJlciBXYWdlbiB1ZWJlcnJvbGx0IERpY2guCkR1IGhhc3QgamV0enQgMTAgTGViZW5zcHVua3RlIHVuZCAyMTAgTWFnaWVwdW5rdGUuClZvbiBlaW5lbSByZWNodCBicmVpdGVuIEhvZWhsZW5nYW5nIHp3ZWlndCBoaWVyIGVpbiBzZWhyIHNjaG1hbGVyIEdhbmcgbmFjaApTdWVkd2VzdGVuIGFiLiBXYWVocmVuZCBhdXMgZGVtIGJyZWl0ZW4gR2FuZyBzb3dvaGwgdm9uIE9zdGVuIGFscyBhdWNoIHZvbgpOb3Jkd2VzdGVuIHRlaWx3ZWlzZSByZWNodCBsYXV0ZSBHZXJhZXVzY2hlIHp1IERpciBkcmluZ2VuLCBpc3QgZXMgaW4gZGVtCnNjaG1hbGVuIEdhbmcgc2VociBydWhpZy4gQW0gQm9kZW4gaXN0IGVpbiBzY2htYWxlciBUcmFtcGVscGZhZCB6dSBlcmtlbm5lbiwKZGVyIG5hY2ggT3N0ZW4gdW5kIG5hY2ggTm9yZHdlc3RlbiBmdWVocnQuIEVyIHdpcmQgdm9uIHp3ZWkgZWlnZW5hcnRpZ2VuCkZ1cmNoZW4gdW1zYWV1bXQsIGRlcmVuIEJlZGV1dHVuZyBEaXIgYWxsZXJkaW5ncyBzY2hsZWllcmhhZnQgYmxlaWJ0LgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWR3ZXN0ZW4gdW5kIG5vcmR3ZXN0ZW4uCkVpbiBzY2h3ZXJlciBIb2x6d2FnZW4uCj4gc28KRHUgaGFzdCBqZXR6dCAxMSBMZWJlbnNwdW5rdGUgdW5kIDIxMCBNYWdpZXB1bmt0ZS4KV2llIGJpdHRlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEh1Y2ggKEdyaW1tYm9ybiwgMTEuIEFwciAxOTk3LCAxNjo0NjozNCk6Cn4jISBybj1ab3JybyBydD04NjA3NjkxNDkgcmc9c2NobWFycm4KfiMhIHRpZD04NjA3NjkxNDkKSmV0enQgaGFiIGljaCBkYXMgbWluZGVzdGVucyB2aWVybWFsIGdlbGVzZW4sIGRpZSBQb2ludGUgaGFiIGljaCBpbW1lciBub2NoCm5pY2h0IGVudGRlY2t0Li4uCkRhc3MgUmljaHR1bmdzYW5nYWJlbiBvZnQgc2Voci4uLiBrcmVhdGl2IHNpbmQgaXN0IGRvY2ggbmljaHRzIG5ldWVzLCBvZGVyPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpsZWljaHRnbGFldWJpZ2UgU3BpZWxlciAuLi4gKEFzbW9kaXMsIDExLiBBcHIgMTk5NywgMTc6MjY6MjEpOgoKW0thcmF0ZTpOaW5qYV0gYWVoLCB3byB1ZWJlbiA/PyA8MTc6MTQ6Mjg+CltLYXJhdGU6Wm9ycm9dIGphIGRhcyBpc3QgZ2VuYXVzbyB3aWUgYmVpIGRlbiB0cnZlcyAuLi4gZHUgbXVzc3Qgc2Vuc2VpCltLYXJhdGU6Wm9ycm9dIGFuZ3JlaWZlbiB1bSBkZW4gc2NobGFnIHp1bGVybmVuIDwxNzoxNDo1MD4KW0thcmF0ZTpTdGluZ10gbmEgZGFubiB2aWVsIHNwYXNzLCBuaW5qYSwga2VtcCBrYW5uIGphIHNpY2hlcmxpY2ggYXVjaCBkYXMKW0thcmF0ZTpTdGluZ10gZ2FuemUgZ2VsZCBsb2NrZXIgYmVzb3JnZW4gOikpKSA8MTc6MTQ6NTA+CltLYXJhdGU6TmluamFdIE1lbnNjaCB3aWVzbyB2ZXJhcnNjaGVuIG1pY2ggYWxsZSA8MTc6MTY6MDc+CltLYXJhdGU6TmluamEgc2NoYXV0IHNjaG1vbGxlbmQgYW4gWm9ycm8gPDE3OjE2OjA3Pl0KW0thcmF0ZTpab3Jyb10gdmVyYXJzY2hlbiA/IDwxNzoxNjoyND4KW0thcmF0ZTpab3Jyb10gZGFubiB3aXJzdCBkdSBoYWx0IG5peCBpbiBkZXIgZ2lsZGUgPDE3OjE2OjM2PgpbS2FyYXRlOlN0aW5nIG5pY2t0IFpvcnJvIHp1IDwxNzoxNjo0OD5dCltLYXJhdGU6U3RpbmddIGFiZXIgc3BpZWx0IGRhcyBlaW5lIHJvbGxlID8gOikgPDE3OjE2OjU4PgpbS2FyYXRlOlpvcnJvIHNpZWh0IE5pbmphIHNjaG9uIGRlbiBzY2hyZWNrZW4gYWxsZXIgUmF0dGVuIHVuZCBrYWtlcmxha2VyIGRlcgogICAgICAgIGhvaWNoZWJlbiA8MTc6MTc6MTI+XQpbS2FyYXRlOlN0aW5nXSBzb3ZpZWwgZ2VkdWxkIHVuZCBnZWxkIGJyaW5ndCBlciBzb3dpZXNvIG5pY2h0IGF1ZiA6KQpbS2FyYXRlOlN0aW5nXSA8MTc6MTc6MTg+CltLYXJhdGU6Wm9ycm9dIGhvY2hlYmVuZSA8MTc6MTc6MTg+CltLYXJhdGU6TmluamEgZmFlbGx0IHZvciBsYWNoZW4gdW0gPDE3OjE3OjQ4Pl0KW0thcmF0ZTpTdGluZ10gaWhtIHdpcmQgZGFzIGxhY2hlbiBub2NoIHZlcmdlaGVuICpraWNoZXIqIDwxNzoxODoyMj4KW0thcmF0ZTpOaW5qYV0gSEFIQUhBSEFIQUhBSEFIQSwgc2NocmVja2VuIGRlciBibGF0dGxhZXVzZSAqZ3JpbnMqIDwxNzoxODoyND4KW0thcmF0ZTpOaW5qYSBrbnVkZGVsdCBkYW5rYmFyIFpvcnJvIHVuZCBTdGluZyA8MTc6MTg6NDY+XQpbS2FyYXRlOlpvcnJvXSBhbHNvIG1laW4gbGV2ZWwgNyBrYXJhdGVrYSBzY2hhZmZ0IG5vY2gga2VpbmUgcmF0dGUgPDE3OjE4OjQ4PgpbS2FyYXRlOkFzbW9kaXMgaGF0IGZydWVoZXIgYXVjaCBzY2htZXR0ZXJsaW5nZSBnZW1ldHplbHQsIHdhcmVuIHNwYW5uZW5kZQogICAgICAgIGthZW1wZmUgOikgPDE3OjE5OjAxPl0KW0thcmF0ZTpOaW5qYSBncmluc3QgPDE3OjE5OjAzPl0KW0thcmF0ZTpOaW5qYV0gQVJnbCwgaWNoIGZsaWVnZSBnbGVpY2ggYXVzIGRlciBVbmkgKmdyaW5zKiBMYWNoIHdhaHJzY2hlaW5saWNoCltLYXJhdGU6TmluamFdIHp1IGx1dCA8MTc6MTk6NDk+CltLYXJhdGU6Wm9ycm9dIGFiZXIgZGFzIHplcnN0YWV1YmVuIHNvbGwgZGljaCBuaW9jaHQgZGF2b24gYWJicmluZ2VuIHNlbnNlaQpbS2FyYXRlOlpvcnJvXSBhbnp1Z3JlaWZlbiA8MTc6MTk6NDk+CltLYXJhdGU6TmluamFdIFNJQ0hFUiAhISEhIDwxNzoyMDoxMj4KW1RvZDpMYXJzXSBGdW5ha29zaGkgaGF0IGdlcmFkZSBOaW5qYSB1bWdlYnJhY2h0LiA8MTc6MjA6MzQ+CltLYXJhdGU6UmluZ29yIGdyaW5zdCBab3JybyBhbiA8MTc6MjA6NDY+XQpbS2FyYXRlOlN0aW5nIGxhY2h0IDopIDwxNzoyMToxOT5dCltLYXJhdGU6S2VtcF0gRGVyIHdhciBkb29mIDwxNzoyMToyMz4KW0thcmF0ZTpLZW1wXSBJY2ggZmFuZCBkZW4gZ2FybmljaHQgd2l0emlnICtzY2htb2xsKiA8MTc6MjE6NTQ+CltLYXJhdGU6Wm9ycm9dIGd1dGUgZnJldW5kZSBtdXNzIG1hbiBoYWJlbiA8MTc6MjE6NTY+CltLYXJhdGU6U3Rpbmcga2ljaGVydCA8MTc6MjI6MTY+XQpbS2FyYXRlOlpvcnJvXSB3aWUgaGFydCBoYXQgZGVyIGRlbm4genVnZXNjaGxhZ2VuIDwxNzoyMjoyMD4KW0thcmF0ZTpBc21vZGlzXSB6dW0gZ2x1ZWNrIGhhdHRlIGljaCBkYXMgbmljaHQgZ2VzYWd0LCBoYWV0dGUgbWlyIGVoIGtlaW5lcgpbS2FyYXRlOkFzbW9kaXNdIGdlZ2xhdWJ0IDopIDwxNzoyMjoyOD4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmdWVyIHdlbj8gKE1ldGhlZHJhcywgMTEuIEFwciAxOTk3LCAyMDo0NjowMCk6CltCZWlsZWlkOlNoYXJpYV0gaG1tIGFsc28gSUNIIHNlaGUgaGllciBrZWluZW4gaGlud2Vpcy4uIGFsc28gc29sbHRlIGVzIG5pY2h0CltCZWlsZWlkOlNoYXJpYV0gZ2VmYWVocmxpY2ggc2VpbgpbVG9kOkxhcnNdIEVpbmUgRGVja2UgaGF0IGdlcmFkZSBTaGFyaWEgdW1nZWJyYWNodC4KCgpGdWVyIHdlbj8gRnVlciB1bnMgb2RlciBmdWVyIFNoYXJpYT8gOikKICAgICAgICAgICAgICAqa29wZmtyYXR6KiAgICAgICAgIEJlcmdjaGVuIE1ldGhlZHJhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzeiBNdWRkZXIgc3pvIG5hY2h0c3ogbWFjaGVuOiAoTWV0aGVkcmFzLCAxMi4gQXByIDE5OTcsIDAzOjEzOjMyKToKPiBBc21vZGlzIHJ1ZnQ6IGljaCB3ZWlzeiBuaWNodCBtZWhyLCB3aWUgZHN6IGdlaHQsIGFjcmltb24sIHplaWdzeiBtaXIgbWFsCkFjcmltb24gcnVmdDogV3Vyc3RzZWhlciEgOi0pCktleSBydWZ0OiBTemVsc3p0bG9lc3pjaHVuZyB0aXBwZW4gLi4gOykKQW5hdG9sIHJ1ZnQ6IEFjcmltb24ga2FubiBzaWNoIG5pY2h0IGxvZXNjaGVuLCBlciB3YXJ0ZXQgdmVyZ2VibGljaCBhdWYgZGllCkFuYXRvbCBydWZ0OiBaZWlsZSAnQml0dGUgZ2liIERlaW4gUGFzendvcnQgZWluOicKZWNob2FsbCBCaXR0ZSBnaWIgRGVpbiBQYXN6d29ydCBlaW46CkJpdHRlIGdpYiBEZWluIFBhc3p3b3J0IGVpbjoKW0FsbGdlbWVpbjpNZXRoZWRyYXNdIEh1cHBzLCBqYT8KPiBIZXJtaW9uZSBydWZ0OiBlaW4gU3Bhc3ohCltBbGxnZW1laW46S2V5XSBIbW0gc2FjaHQgbWFsIGthbm4gZXMgc2VpbiBkYXN6IHdpciBpbnp3aXNjaGVuIGFsbGUgZGllc3plcwpbQWxsZ2VtZWluOktleV0gc2F1ZGFlbWxpY2hlIHN6IHNjaHJlaWJlbj8gT2IgQWNyaW1vbiBkYXMgc3pvIGdld29sbHQgaGF0PyA6KQpbQWxsZ2VtZWluOkFzbW9kaXMgc3ppbmd0ICdXYXN6IGhhdCBkYXN6IGFsbGVzeiB6dSBiZWRldXRlbiA/Li4uJ10KPiBbQWxsZ2VtZWluOkFuYXRvbF0gQXV0c3pjaC4KW0FsbGdlbWVpbjpBbmF0b2xdIEhtLCBvYiBpY2ggZGFzIHN6IGluIG1laW4gU3ByYWNoZmx1Y2h0ZiBlaW5iYXVlbiBzb2xsdGUuLi4/CltBbGxnZW1laW46THVnXSBBY3JpbW9uIGhhdCB1bnN6IGdlbGlua3QgOigKW0FsbGdlbWVpbjpOYWNodHdpbmRdIGljaCBmaW5kIGRhcyBzem8gZ2Fuc3ogZ3V0LCBuYWNoIGRlciByZWNodHNjaHJlaWJyZWZvcm0KW0FsbGdlbWVpbjpOYWNodHdpbmRdIGdlaHQgZXMgYWxsZXN6LgpbQWxsZ2VtZWluOkFjcmltb25dIElociBzY2hyZWlidCBkYXMgamEgYW4gdm9sbGtvbW1lbiBmYWxzY2hlbiBTdGVsbGVuCltBbGxnZW1laW46TmFjaHR3aW5kXSB1cHN6LgpbQWxsZ2VtZWluOk1ldGhlZHJhc10gSWhyIHNjaHJlaWJ0eiBqYT8KPiBbQWxsZ2VtZWluOkFjcmltb25dIFJlY2h0c2NocmVpYmJhbmF1c2VuLgo+IFtBbGxnZW1laW46THVnXSBFY2h0IEFjcmltb24/IERhc3oga2FubiBuaWNodCBzemVpbiA7KQpbQWxsZ2VtZWluOkFzbW9kaXNdIHNvd2FzeiBkdW1tZXN6CltBbGxnZW1laW46QW5hdG9sXSBJY2ggZmFzenN6IGVzeiBuaWNodCA6KQpbQWxsZ2VtZWluOktleV0gQWNyaW1vbiBkdSBkYXJmc3p0IG5ldCBzb3ZpZWwgdm9uIHVuc3ogZXJ3YXJ0ZW4gLi4uCltBbGxnZW1laW46S2V5XSBIYXVwdHN6YWNoZSB3aXIgc3pjaHJlaWJlbiBlcyB1ZWJlcmhhdXB0IDspCltBbGxnZW1laW46TmFjaHR3aW5kXSBtaXN6dC4KW0FsbGdlbWVpbjpMdWddIFNvc3plIFNzZWdlZGluZXIgQXJ0PwpbQWxsZ2VtZWluOkFuYXRvbF0gL2JpbmQgcz0vaW5wdXQgc3oKW0FsbGdlbWVpbjpBbmF0b2wgZ3JpbnN6dC5dCltBbGxnZW1laW46QW5hdG9sXSBHZWh0IGhlcnZvcnJhZ2VuZCwgbWFuIHZlcmdpc3pzenQgbmljaHQgYXVzeiB2ZXJzemVoZW4gZWluCltBbGxnZW1laW46QW5hdG9sXSBzeiBhdXN6enV0YXVzemNoZW4KW0FsbGdlbWVpbjpBc21vZGlzXSB0ZXN6dApbQWxsZ2VtZWluOk1ldGhlZHJhc10gd2FubiBnaWJ6IEd1bGFzej8KPiBbQWxsZ2VtZWluOkFzbW9kaXNdIGhleSwgZXN6IGtsYXBwdCB2b3J6dWVnbGljaApbQWxsZ2VtZWluOkFuYXRvbCBncmluc3p0IEFzem1vZGlzeiBhbi5dCltBbGxnZW1laW46TWV0aGVkcmFzXSBlY2h0PyBkYXN6IG11c3pzeiBpY2ggamV0enQgYXVjaCBtYWwgdGVzenRlbmUKPiBbQWxsZ2VtZWluOkFuYXRvbCBmcmFndCBzemljaCwgd2llIGVyIGpldHp0IHF1ZXN6dGVuIHN6b2xsLi4uXQpbQWxsZ2VtZWluOkFzbW9kaXMga2ljaGVydCB0ZXVmbGlzemNoXQo+IFtBbGxnZW1laW46S2V5XSBPZWhtIGFuYXRvbCB1biB3aWUgaXNzZXMgd2VubiBtYW4gbmFjaCBTenVlZGVuIGdlaGVuIHdpbGw/CjopCltBbGxnZW1laW46QXNtb2RpcyBrYW5uIGpldHp0IG5pY2h0IG1laHIgbmFjaCBzenVlZGVuIGdlaGVuXQpbQWxsZ2VtZWluOk1ldGhlZHJhc10gd2llIGVzeiBpc3pzenQsIHdlbm4gbWFuIG5hY2ggU3VlZGVuIGdlaGVuIHdpbGw/Cj4gW0FsbGdlbWVpbjpBbmF0b2xdIFRpcHBlICdzJyB1bmQgREVMRVRFCltBbGxnZW1laW46THVnXSBJaHIgbWFjaHQgbWljaCBnYW5zeiBtYXRzemNoaWcKW0FsbGdlbWVpbjpOYWNodHdpbmRdIGRhc3oga29lbm50ZSBiZWltIGthbXBmIGFiZXIgcGVpbmxpY2ggd2VyZGVuLCBmbHVjaHQKW0FsbGdlbWVpbjpOYWNodHdpbmRdIHJpY2h0dW5nIHN6dWVkZW4/IHdpZSBiaXR0ZT8KW0FsbGdlbWVpbjpNZXRoZWRyYXNdIC9iaW5kIFM9L2lucHV0IFN6CltBbGxnZW1laW46TWV0aGVkcmFzXSBTem9uc3p0IGtvbW10IGRhc3ogU3p1ZWRlbiBuaWNodCBnZXN6Y2hlaXQgZHVyY2gKPiBbQWxsZ2VtZWluOkx1Z10gU3pjaGVpc3plIHN6YWcgaWNoIGRhc3p1CltBbGxnZW1laW46QW5hdG9sXSBlaGVyIC9iaW5kIFM9L2lucHV0IFNaLCB3ZWlsIHdlbm4gRHUgc3pvbnN6dCBIQVNTCltBbGxnZW1laW46QW5hdG9sXSBzemNocmVpYnN6dC4uLgpbQWxsZ2VtZWluOkFuYXRvbF0gc3phdWJhbmRlLi4uCltBbGxnZW1laW46QXNtb2RpcyBncmluc3p0IHN6aWNoIGVpbnN6IGFiXQpbQWxsZ2VtZWluOkFuYXRvbF0gV2llIGhlaXN6c3p0IFNseWZveCcgd2VpYmxpY2hlciBTZWhlcj8gOy0pCltBbGxnZW1laW46QW5hdG9sIGdyaW5zenQuXQpbQWxsZ2VtZWluOk1ldGhlZHJhc10gaWNoIHN6Y2hyZWliIGFiZXIgbmljaHQgSGFzenN6LCBpY2ggYmluIGphIG5pY2h0IEhhdGUgaW4KW0FsbGdlbWVpbjpNZXRoZWRyYXNdIHlvdXIgSGVhcnpsZQo+IFtBbGxnZW1laW46SGVybWlvbmUgbGFjaHQgc3ppY2gga2FwdXR0Ll0KW0FsbGdlbWVpbjpMdWddIE1lbGlzemE/CltBbGxnZW1laW46QW5hdG9sIGZyYWd0IFNabHlmb3ggbmFjaCBTWmVsaXN6c3phLl0KW0FsbGdlbWVpbjpFem9dIHdhc3ogaXN6dCBkZW4gaGllciBsb3N6cz8KW0FsbGdlbWVpbjpNZXRoZWRyYXNdIFN6ZWxpc3pzemEgaXN6dCBTemx5Zm94ej8KPiBbQWxsZ2VtZWluOkFuYXRvbF0ga29lc3p0bGljaCA7LSkKW0FsbGdlbWVpbjpOYWNodHdpbmQga3JpZWd0IGxhbmdzemFtIGVpbmUgdHJvY2tlbmUgc3p1bmdlbnN6cGl0emUgdm9uIHZpZWxlbgogICAgICAgICAgIGxpc3pwZWxuLi4uXQpbQWxsZ2VtZWluOkFuYXRvbF0gU1pvd2VpdCBpY2ggd2Vpc3pzei4uLi4gYmlzemhlciBnaW5nIGljaCBkYXZvbiBhdXN6LgpbQWxsZ2VtZWluOkx1Z10gQWNoIEVzem8gZnJhZyBuaWNodCA7KQpbQWxsZ2VtZWluOkNyb2xsYSBraWNoZXJ0XQpbQWxsZ2VtZWluOkx1Z10gVWVicmlnZW5kIHN6IGJpbGRldCBvcHRpc2NoIGVpbiBoZXJ6Y2hlbiBtaXQgS3JpbmdlbG4gZHJhbgpbQWxsZ2VtZWluOk1ldGhlZHJhc10gRXN6c3pvPwo+IFtBbGxnZW1laW46SGVybWlvbmUgZmFlbGx0IGZhc3p0IHZvbSBzenR1aGwgdm9yIGxhY2hlbi4uLi5dCltBbGxnZW1laW46THVnXSBFc3pvIGlzdCBrZWluZSBFc3pzem8gVGFuc3p0ZWxsZSBNZXRoZWRyYXN6CltBbGxnZW1laW46QXNtb2RpcyB6aXRpZXJ0ICdTemllIHN6dGllc3pzeiBzemljaCBhbiBlaW5lbSBzenBpdHplbiBTenRlaW4nXQpbQWxsZ2VtZWluOkV6byBzemNobmF1YnRdCltBbGxnZW1laW46TWV0aGVkcmFzXSBvaCwgZGFzeiB3dXN6c3p0ZSBpY2ggZG9jaCBuaWNodCwgYWNoLCBFem8gbWVpbnRldCBpaHI/CltBbGxnZW1laW46TWV0aGVkcmFzXSBpY2ggaGFiZSBFc3pvIHZlcnN6dGFuZGVuCj4gW0FsbGdlbWVpbjpBc21vZGlzXSBlc3p6byA/CltBbGxnZW1laW46SGVybWlvbmVdIGFzem1vZGlzeiwgZGFzeiB3YXIgZGVyIGtudWVsbGVyLi4uLi4KW0FsbGdlbWVpbjpBbmF0b2xdIERhc3ogaGVpc3pzenQgRXN6c3pvIHVuZCBpc3p0IGV0d2FzeiBmdWVyIGRhc3ogQXV0bwpbQWxsZ2VtZWluOlNjaGxpcHMga3JpbmdlbHQgc3ppY2ggdWViZXIgQXN6bW9kaXN6IERvcHBlbC1zei5dCltBbGxnZW1laW46TmFjaHR3aW5kXSBhbHN6byBzem8gZ2Fuc3ogYXVzemdlcmVpZnQgaXN6dCBkYXN6IG5vY2ggbmljaHQuLi4uCltBbGxnZW1laW46QXNtb2RpcyBsaWNodCBsYWNoZW5kIHVudGVybSBUaXN6Y2hdCltBbGxnZW1laW46TWV0aGVkcmFzXSBFaW4gU3p0dWRlbnQgbWl0IFN6dHVscGVuc3p0aWVmZWxuIHN6dG9scGVydCB1ZWJlcm4KW0FsbGdlbWVpbjpNZXRoZWRyYXNdIHN6cGl0emVuIFN6dGVpbj8KPiBbQWxsZ2VtZWluOkx1Z10gVmVydXJzemFjaHQgZGFzeiB2aWVsZWljaHQgZGFzeiBMYWc/CltBbGxnZW1laW46Q3JvbGxhXSB3YXJ1bSBiYXVzenQgZHUgbmljaHQgbmVuIHN6cHJhY2hmbHVjaCBlaW4sIG1ldGhlZHJhcz8KW0FsbGdlbWVpbjpBbmF0b2xdIEluICdMYWcnIGlzenQgZ2FyIGtlaW4gc3ogZHJpbi4gV2llIGxhbmd3ZWlsaWcsIGdlcmFkZXp1CltBbGxnZW1laW46QW5hdG9sXSBkb29mIDstKQpbQWxsZ2VtZWluOk1ldGhlZHJhc10gYWxzem8gbGlzenBlbG4gdmVyc3p1cnN6YWNodCBiZXN6dGltbXQga2VpbiBMYWcsIGRhc3oKW0FsbGdlbWVpbjpNZXRoZWRyYXNdIGdlaHQgdmllbCB6dSBzemNobmVsbCB1bmQgbWFuIGxhY2h0IHN6aWNoIHZpZWwgenUKW0FsbGdlbWVpbjpNZXRoZWRyYXNdIGtyaW5nZWxpY2ggZGFiZWksIHN6byBpc3pzemVzego+IFtBbGxnZW1laW46QW5hdG9sIHN6dWNodCBtYWwgc3plaW4gU1pwcmFjaGZsdWNoLVRGLl0KW0FsbGdlbWVpbjpBc21vZGlzIHdpbGwgZWluZW4gQ3Jhc3poLCBkYWkgdHN6IHdlbmlnc3p0ZW5zeiBlaW4gc3p6IGRyaW5dCltBbGxnZW1laW46TWV0aGVkcmFzXSBhdSwgInN6byBpc3pzemVzeiIgaXN6dCBlaW4gdG9sbGVzeiB3b3J0Cj4gW0FsbGdlbWVpbjpBbmF0b2xdIHN6byBpc3pzemVzeiA7LSkKW0FsbGdlbWVpbjpOYWNodHdpbmRdIHN6dGltbXQhCltBbGxnZW1laW46TWV0aGVkcmFzXSBmYXN6emluaWVyZW5kCltBbGxnZW1laW46TWV0aGVkcmFzXSBodWNoCj4gW0FsbGdlbWVpbjpMdWddIFN6Y2hsdXN6c3ogc3p0b3AgaWNoIGthbm4gbmljaHQgbWVociA7KQpbQWxsZ2VtZWluOkFzbW9kaXMga2l0emVsdCBBY3JpbW9uc3ogRnVzenN6c3pvaGxlbl0KW0FsbGdlbWVpbjpOYWNodHdpbmRdIGljaCBrcmllZyBrb3Bmc3pjaG1lcnplbi4uLgpbQWxsZ2VtZWluOk1ldGhlZHJhc10gdW5kIHdhc3ogd3VlcmRlbiB3aXIgb2huZSBBY3JpbW9uIG1hY2hlbiB1bmQgb2huZQpbQWxsZ2VtZWluOk1ldGhlZHJhc10gQWNyaW1vbnN6IGVzenN6LXpldHQ/CltBbGxnZW1laW46SGVybWlvbmUgcHJvYmllcnQgZGFzeiBqZXR6dCBhdWNoIG1hbCBhdXMuLi4gc3phdWVyc3p0b2ZmZmxhc3pjaGVdCltBbGxnZW1laW46QXNtb2Rpc10gZXN6c3plbj8gaHVuZ2EKW0FsbGdlbWVpbjpBY3JpbW9uIHNhZ3QgZ2xlaWNoICJBc3ptb2Rpc3oiLl0KW0FsbGdlbWVpbjpNZXRoZWRyYXMgdHJvZXN6dGV0IE5hY2h0d2luZCB2b3JzemljaHRpZy5dCj4gW0FsbGdlbWVpbjpOYWNodHdpbmRdIHN6Y2hhZGUgZGFzenN6IGVyIGtlaW4gc3ogaW0gbmFtZW4gaGF0Li4uIHN6ZXVmc3oKW0FsbGdlbWVpbjpIZXJtaW9uZV0gTWlzenQhISEgZWluIHogdmVyZ2VzenN6ZW4uLi4uCltBbGxnZW1laW46TWV0aGVkcmFzIHN6ZXVmenQgbWl0Ll0KPiBbQWxsZ2VtZWluOkhlcm1pb25lIHN6ZXVmenRdCltBbGxnZW1laW46QW5hdG9sXSBIbSwgaWNoIGhhYiBoaWVyIGVpbmVuIExpc3pwZWwtU1pwcmFjaGZlaGxlci4uLgpbQWxsZ2VtZWluOkFuYXRvbCBzemNoYWx0ZXQgbWFsIGViZW4gZGVuIEFjcmltb24tU1pwcmFjaGZlaGxlciBhdXN6Li4uLl0KW0FsbGdlbWVpbjpBY3JpbW9uXSBBbmF0b2wgbGlmcGVsdCEKW0FsbGdlbWVpbjpIZXJtaW9uZV0gZ2VodCBldWNoIG5pY2h0IGxhbmdzemFtIGRpZSBzenB1Y2tlIGF1c3o/CltBbGxnZW1laW46U2NobGlwcyBob2ZmdCBkb2NoIGRhc3pzeiBkYXN6IGplbWFuZCBtaXRsb2dndC5dCltBbGxnZW1laW46TWV0aGVkcmFzXSBBbmF0b2wgaGF0IGVpbmVuIFN6cHJhY2hmZWhsZXIKPiBbQWxsZ2VtZWluOkFzbW9kaXMgd3VlcmRlIGRhc3ogamEgaW4gc3pjaG1hcnJuIHBvc3p0ZW4sIHdlbm4gJ3N6Y2hyZWliZQogICAgICAgICAgIDxuYW1lPicgZ2luZ2VdCltBbGxnZW1laW46QW5hdG9sXSBJZmggbGlmYmxlIG5pZmhEIQpbQWxsZ2VtZWluOkFuYXRvbF0gQWxmbyB3aXJmbGlmaC4KW0FsbGdlbWVpbjpBc3ptb2Rpc3pdIEh1aHUgOikKW0FsbGdlbWVpbjpOYWNodHdpbmRdIHdhZXJlIG1hbCBuZSBnZW5pYWwgc3phY2hlLCBkZXIgbGlzenBlbC1zenByYWNoZmVobGVyCltBbGxnZW1laW46TmFjaHR3aW5kXSBhbHN6IGZsdWNoIGltIG1nLi4uIDopCltBbGxnZW1laW46TWV0aGVkcmFzXSBhdSBqYSwgaWNoIGxvZ2dlIG1hbCBtaXQsIHN6b25zenQgd2lyZCB3aWVkZXIgQWNyaW1vbgpbQWxsZ2VtZWluOk1ldGhlZHJhc10gYmVzemNodWxkaWd0Cj4gW0FsbGdlbWVpbjpMdWddIFZlcmdpc3pzeiBlc3ogQW5hdG9sLCBkYXN6IGlzdCBuaWNodCBoYWwgc3pvIGd1dC4KW0FsbGdlbWVpbjpBbmF0b2xdIEhtbSwgZWluIGZlaHIgYWxkZWYgRmlsZS4uLi4KW0FsbGdlbWVpbjpBY3JpbW9uIGdyaW5zdCBBc3ptb2Rpc3ogYW4uXQpbQWxsZ2VtZWluOkFuYXRvbF0gTWFsIGd1Z2duLCB3YWYgZGEgZm9uZmQgbm9maCBmbyBydW1saWVnZC4KW0FsbGdlbWVpbjpTemNobGlwc3ogd2lua3QgQXN6bW9kaXN6IHp1Ll0KW0FsbGdlbWVpbjpDcm9sbGFdIGVzeiBnYWIgZG9jaCBtYWwgZGVuICJsIiAtIFN6cHJhY2hmZWhsZXIgYXVmIGRlcgpbQWxsZ2VtZWluOkNyb2xsYV0ga2FyYXRlLWViZW5lLi4uCltBbGxnZW1laW46THVnIGJld3VuZGVydCBBY3JpbW9zeiBIdW1vci5dCltBbGxnZW1laW46QW5hdG9sXSBIZWhlLi4uICBkZXIgU3ByYWhjZmVobGVyIGZldXIgTXVkZGVyLi4uCi4uLi4uLgp1bmQgc3pvIHdlaXRlciB1bmQgc3pvIGZvcnQuLi4KCgogICAgICAgIEJlcmdjaGVuIE1ldGhlZHJhc3oKaHVwcHN6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpyYWV1YmVyIChKYW5pY2UsIDEzLiBBcHIgMTk5NywgMDE6MDE6MzcpOgpFYmVuIGJlaSBkZW4gUmFldWJlcm46CgpFbGhvbGRyaW9uIGtvbW10IGFuLgogIER1IGdyZWlmc3QgRWxob2xkcmlvbiBtaXQgZGVtIFNjaHdlcnQgYW4uCiAgRHUgemVyc2NobWV0dGVyc3QgRWxob2xkcmlvbiBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KRWxob2xkcmlvbiBmYWVsbHQgdG90IHp1IEJvZGVuLgpbTW9lcmRlcjpHZWlzdCBFbGhvbGRyaW9uc10gSWhyIHNhZ3QsIElDSCBzZWluIGVpbiBNb25zdGVyPyBJaHIga2VubnQgSmFuaWNlCltNb2VyZGVyOkdlaXN0IEVsaG9sZHJpb25zXSBuaWNodCEhIQpMdWcgd2Fua3QgbmFjaCBXZXN0ZW4uCkVsaG9sZHJpb24gZ2VodCBuYWNoIE9zdGVuLgoKIGFlaCwgZGVyIGlzdCBkb2NoIGViZW4gdW1nZWZhbGxlbiBkZXIgRWwqLCB3aWUga2FubiBlciBkYSBub2NoIHdlaXRlci0KbGF1ZmVuID8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdy4uLiAoQW5hdG9sLCAxMy4gQXByIDE5OTcsIDAyOjQ3OjU3KToKCltBYmVudGV1ZXI6UmFmZmVyXSBoaWxmZSwgd2llIGtvbW10IG1hbiBhdXMgZGVtIGdsZXRzY2hlcj8KW0JlaWxlaWQ6Qm9tYmFkaWwgZ3JpbnN0IHVuZCBlbnRoYWVsdCBzaWNoIHNlaW5lciBTVGltbWVdCltUb2Q6TGFyc10gRWluIEVpbmUgc2NobGltbWUgRXJmcmllcnVuZyBoYXQgZ2VyYWRlIFJhZmZlciB1bWdlYnJhY2h0LgoKVW5nZXNjaG5pdHRlbiwKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGV4aWtvbiBkZXMgbW9kZXJuZW4gTGViZW5zLCBUZWlsIDI4NCAoSmltZGlncml6LCAxMy4gQXByIDE5OTcsIDIzOjQ2OjQwKToKCkhldXRlIG1pdCAiQWZ0ZXJidXJuZXIiOgogIC0gRGFzIEdlZnVlaGwgYmVpbSBTY2hlaXNzZW4sIG5hY2hkZW0gbWFuIGJlaSBXdXJ6ZWwgCiAgICB6dW0gRXNzZW4gZWluZ2VsYWRlbiB3YXIuCgpKZEcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvaGwgenV2aWVsIEthZmZlZSBnZXRydW5rZW4gKEFzbW9kaXMsIDE0LiBBcHIgMTk5NywgMTA6NDY6MDApOgpTdXNoaSBlcnNjaGVpbnQuClN1c2hpIGh1ZXBmdCB1bSBEaWNoIGhlcnVtLgpTdXNoaSBodWVwZnQgdW0gRGljaCBoZXJ1bS4KU3VzaGkgaHVlcGZ0IHVtIERpY2ggaGVydW0uClN1c2hpIGh1ZXBmdCB1bSBEaWNoIGhlcnVtLgpTdXNoaSBodWVwZnQgdW0gRGljaCBoZXJ1bS4KU3VzaGkgZ2VodCBuYWNoIEhhdXNlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2FuZnRlcyBFbnRzY2h3aW5kZW4uLi4/IDopIChXb29keSwgMTQuIEFwciAxOTk3LCAxNDoyMjowNyk6CkR1IGhvZXJzdCBlaW4gc2FuZnRlcyBMYWV1dGVuIHZvbSBIaW1tZWwga29tbWVuLgpaZXBoeXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgp3b29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNb3JnZW5HcmF1ZW4gZ2VzY2hsb3NzZW4gKEF0b3osIDE0LiBBcHIgMTk5NywgMTY6MTA6NDApOgoKc2llaGUgVGl0ZWwKCkdydW5kIGRhIGtlaW5lIEdlYmlldGUgbWVociB6dSBiZXRyZXRlbiBzaW5kIHVuZCB1bnRlciBkZW4gaG9laGVyZW4gTWFnaWVybgphbnNjaGVpbmVuZCBCU0UgZ3Jhc3NpZXJ0IGlzdCBkYXMgTVVEIGRlcnplaXQgbmljaHQgc3BpZWxiYXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9iIHNpZSBqZXR6dCB6aXR0ZXJuID8gKEFzbW9kaXMsIDE0LiBBcHIgMTk5NywgMTc6NTI6NTIpOgpbQWxsZ2VtZWluOkFzbW9kaXNdIGljaCB3ZWlzcyBqYSBuaWNodCwgd2VsY2hlIFByb2JsZW1lIGRpZSBoZXJyZW4gZXJ6bWFnaWVyCltBbGxnZW1laW46QXNtb2Rpc10gdW5kIGdvZXR0ZXIgaGFiZW4sIGFiZXIgZGllc2UgbWV0aG9kZW4gZXJpbm5lcm4gZG9jaCBzZWhyCltBbGxnZW1laW46QXNtb2Rpc10gYW4gZWluIHRvdGFsaXRhZXJlcyBSZWdpbWUKPiBEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKCip1bmdlc2Nobml0dGVuKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWxmZW4uLi4uIChUdW5peGd1dCwgMTUuIEFwciAxOTk3LCAxMDoxNTo0OSk6Ck15c3RlcmlvdXMgdGVpbHQgRGlyIG1pdDogZGFua2UgZnVlciBkZW4gbGllYmVuc3dlcnRlIGFudHdvcnQgaW4gZGVyIG1wYSA6LSkKTXlzdGVyaW91cyB0ZWlsdCBEaXIgbWl0OiAoZHUgZXJkd3Vlcm1jaGVuLCBkZXIgbm9jaCBpbiBob2VobGVuIHJ1bWtyaWVjaHQgOykKCk15c3RlcmlvdXMgdGVpbHQgRGlyIG1pdDogYWVoaC4uZGllIGFudHdvcnRlIDopCgpNeXN0ZXJpb3VzIHRlaWx0IERpciBtaXQ6IGFlaGguLmRpZSBhbnR3b3J0Li4uYXJnbC4uIDopCgpKYSBqYSwgRWxmZW4gdW5kIGRldXRzY2guLi4uLgoKClR1Tml4R3V0IC0gWndlcmNoLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYXBhZ2VpbiBzaW5kIGludGVsbGlnZW50IChMaSwgMTUuIEFwciAxOTk3LCAxMToyMzo1MSk6CgpKZXR6dCBzb2xsIG5vY2ggZWluZXIgYmVoYXVwdGVuLCBkaWVzZSB2b2VnZWwgd2FlcmVuIGRvb2YhIDotKQpEdSBzYWdzdDogTXVzYXNoaSwgc2FnIE11c2FzaGkgcmVkZXQgbnVyIE11ZWxsCj4gTXVzYXNoaSBzY2h1ZXR0ZWx0IGRlbiBLb3BmLgpEdSBzYWdzdDogTXVzYXNoaSwgc2FnIE11c2FzaGkgcmVkZXQgbnVyIE11ZWxsCj4gTXVzYXNoaSBzY2hhdXQgRGljaCBnZWxhbmd3ZWlsdCBhbi4KRHUgc2Fnc3Q6IE11c2FzaGksIHNhZyBNdXNhc2hpIHJlZGV0IG51ciBNdWVsbAo+IE11c2FzaGkga3JhZWNoenQ6IGtycm9vYWEgLi4uIE11c2FzaGkgcmVkZXQgbnVyIE11ZWxsCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBhcGFnZWluIHNpbmQgaW50ZWxsaWdlbnQgKFplcGh5ciwgMTUuIEFwciAxOTk3LCAxMTo1NjoyMik6Cn4jISBybj1MaSBydD04NjEwOTYyMzEgcmc9c2NobWFycm4KfiMhIHRpZD04NjEwOTYyMzEKTmFqYSwgaWNoIHdlaXNzIG5pY2h0Li4gd2VubiBlciB3aXJrbGljaCBpbnRlbGxlbnQgd2FlciwKaGFldHQgZXJzIGJlaW0gZHJpdHRlbiBtYWwgYXVjaCBuaWNodCBnZXNhZ3QgOikKClplcGh5ciwgZ2xhdWJ0IGlocmVtIFBhcGFnZWkgaW1tZXIgbm9jaCBuaWNodCwgZGFzcyBlciBzaWNoIHp1cnVlY2toYWx0ZW4gd2lsbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmFuYW5hIChBc21vZGlzLCAxNS4gQXByIDE5OTcsIDEzOjU2OjQ4KToKW0FsbGdlbWVpbjpNdWRkZWxdIFZvcnNjaGxhZzogamVkZXIgemFlaGx0IGxhbmdzYW0gYmlzIDEwIGJldm9yIGVyIGZsdWNodCwgd2FzCltBbGxnZW1laW46TXVkZGVsXSBhYmhhZW5ndCBvZGVyIHdhcyBkdW1tZXMgaW4gZGllIE1QQSBrcml0emVsdCA7KQoKLi44Li45Li4xMCEgVW5kIEFydGlrZWwgZ2Vwb3N0ZXQgISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyLUFsYXJtIChDYXVubywgMTUuIEFwciAxOTk3LCAxNTowMDoxNyk6CiBbQWxsZ2VtZWluOk5vbm5lXSB3byBrYW5uIGljaCBtYWdpZXIgd2VyZGVuPwpbQWxsZ2VtZWluOkZ5dF0gbmEgZGFubiBrYW5uc3RlIGphIGF1Y2ggbWFsICduIGRlc3RydWt0aXZlbiB2b3JzY2hsYWcgbWFjaGVuCltBbGxnZW1laW46VG9iYmllbl0gbm9ubmUgVHVlIGVzIG5pY2h0ICEhIQolIENvbm5lY3Rpb24gdG8gTW9yZ2VuR3JhdWVuIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCi0tLS0gTm8gd29ybGQgLS0tLQoKYXVjaCB1bmdla3Vlcnp0LgoKQy4gTm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoSGlnaGxhbmRlciwgMTUuIEFwciAxOTk3LCAxNTowNTozNCk6CiJOYW5hbmEiCk9kZXIgaGFiIGljaCBkYSBlaW5lbiAuIHZlcmdlc3Nlbj8KICAgSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLdWNrdWNrISAoV29vZHksIDE1LiBBcHIgMTk5NywgMTk6Mjc6MjYpOgpuZXVsaWNoLCBiZWltIHNjcmlwdGVuIGR1cmNocyAxMC1NaW51dGVuLUxhZyBuYWNoIFBWLi4uCgpEdSBob2Vyc3QgZWluZW4gS3Vja3VjayBydWZlbi4KRGVpbmUgRnJldW5kaW4gUGVuZWxvcGUgdGVpbHQgRGlyIG1pdDogSHVodSEKCmt1Y2t1Y2shCkZ1ZXJ3YWhyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGJlaW0gWmF1YmVybi11ZWJlbiAoU2NobGlwcywgMTYuIEFwciAxOTk3LCAxOTo0MzoxOCk6CkF1Y2ggYXVmIGRpZSBHZWZhaHIgaGluIGRhc3MgYWxsZXMgc2Nob24gbWFsIGRhIHdhciAuLi4KCkR1IHNjaGF1c3QgZWluZW0gSGFzZW4gdGllZiBpbiBkaWUgQXVnZW4gdW5kIHNhZ3N0OiBIdWVwZmUhCkR1IGhhc3QgamV0enQgMTM3IExlYmVuc3B1bmt0ZSB1bmQgMjYgTWFnaWVwdW5rdGUuCj4gICBEdSBncmVpZnN0IGRlbiBIYXNlbiBtaXQgZGVtIFphdWJlcnN0YWIgYW4uCiAgRHUgdHJpZmZzdCBkZW4gSGFzZW4gaGFydC4KRGVyIEhhc2UgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRWluZSBMZWljaGUgaHVlcGZ0IGdlaXN0bG9zIGR1cmNoIGRpZSBHZWdlbmQuCgoKU2NobGlwcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogYmV0ci46IExhbmdlIFRleHRlIGltIEVkaXRvciAoSGlnaGxhbmRlciwgMTcuIEFwciAxOTk3LCAxMzowNDoxNyk6Cn4jISBvbj1XdXJ6ZWwgb3Q9ODYwNzc2NjEwIG9nPW1hZ2llci5lbnR3aWNrbHVuZwp+IyEgcm49RmVsYWd1bmQgcnQ9ODYwNzcyOTg0IHJnPW1hZ2llci5lbnR3aWNrbHVuZwp+IyEgdGlkPTg2MDc1MTgwOQplZCBpc3Qga2VpbiBtdWVsbCwgc29uZGVybiBlaW5lIGZyZXVkZSBmdWVyIGplZGVuIG5vc3RhbGdpa2VyLi4uCmphIGphIHNjaG9uIGd1dCwgaWNoIG5laG0gYXVjaCBsaWViZXIgZW1hY3MgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVsZmVuIHVuZCBTZXggKEdyaW1tYm9ybiwgMTcuIEFwciAxOTk3LCAxODoxODoxOCk6CkVzIGlzdCBlaW5lIGVpbmZhY2hlIFJlY2hudW5nOiBXZW5uIEVsZmVuIGVpbmUgZHVyY2hzY2huaXR0bGljaGUKTGViZW5zZXJ3YXJ0dW5nIHZvbiB2aWVsbGVpY2h0IDUwMDAgSmFocmVuIGhhYmVuIChuYWphLCBuaWNodCBpbiBtZWluZXIKR2VnZW53YXJ0Li4uKSB1bmQgaWNodCBzb2ZvcnQgZGllIFdlbHQgdWViZXJiZXZvZWxrZXJuLCBkYW5uIGdpYnQgZXMgbnVyCndlbmlnZSBNb2VnbGljaGtlaXRlbjoKLSBTaWUgaGFiZW4ga2VpbmVuIFNleC4KLSBTaWUgaGFiZW4gZmFzdCBudXIgZ2xlaWNoZ2VzY2hsZWNodGlsaWNoZW4gU2V4LgotIFNpZSBzdGVsbGVuIHNpY2ggYmVpIGRlciBGb3J0cGZsYW56dW5nIGV4dHJlbSBkYWVtbGljaCBhbiAoa2xpbmd0IHBsYXVzaWJlbCkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCB1bmQgRXRobm9sb2dlLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFbGZlbiB1bmQgU2V4IChBc21vZGluYSwgMTcuIEFwciAxOTk3LCAxODo0Mjo0NSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODYxMjkzODk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYxMjkzODk4CjUwMDAgSmFocmUgPyBOaWUgaW0gTGViZW4sIGRpZSBmYWxsZW4gdm9yaGVyIGJlc29mZmVuIHZvbQpCYXVtICEhIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVsZmVuIHVuZCBTZXggKEVuZ3l3dWNrLCAxNy4gQXByIDE5OTcsIDE4OjQ0OjM3KToKfiMhIHJuPUFzbW9kaW5hIHJ0PTg2MTI5NTM2NSByZz1zY2htYXJybgp+IyEgdGlkPTg2MTI5Mzg5OApEZXIgVGl0ZWwgZGVzIFRocmVhZHMgd3VuZGVydCBtaWNoIGV0d2FzLiBTb2xsdGUgZXMgbmljaHQgYmVzc2VyIGhlaXNzZW46CkVsZmVuIE9ERVIgU2V4ICAgPwoKRW5neXd1Y2suIFp3ZXJnLiBTZXguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFbGZlbiB1bmQgU2V4IChSYWZmaSwgMTcuIEFwciAxOTk3LCAyMDo0MjowMik6Cn4jISBybj1Fbmd5d3VjayBydD04NjEyOTU0Nzcgcmc9c2NobWFycm4KfiMhIHRpZD04NjEyOTM4OTgKV2llc28sIHNvIGVpbiBiaXNjaGVuIEVsZiBrYW5uIGVpbmVuIFp3ZXJnIGRvY2ggbmljaHQgcmljaHRpZyBiZWltIHNleApzdG9lcmVuLgoKR3J1c3MKCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbGZlbnNleCAoQ2VyZWJ1cywgMTcuIEFwciAxOTk3LCAyMToxMDozNyk6CkVzIGtvZW5udGUgYWxsZXJkaW5ncyBhdWNoIHNlaW4sIGRhc3MgRWxmZW4tU2Nod2FuZ2Vyc2NoYWZ0IGVpbmlnZSBodW5kZXJ0CkphaHJlIGRhdWVydC4uLiBvZGVyIGRhc3MgZGVyIEVpc3BydW5nIG51ciBhbGxlIHBhYXIgamFocnplaG50ZSBzdGF0dGZpbmRldCwKd29kdXJjaCBkaWUgQmVmcnVjaHR1bmdzbW9lZ2xpY2hrZWl0IG5hdHVlcmxpY2ggZ2VyaW5nZXIgd2FlcmUuLiAgb29vb2RlcgplbGZlbiB2ZXJ6aWNodGVuIHRhc2FlY2hsaWNoIGF1ZiBzZXggdW5kIGJlc3RlbGxlbiBpaHJlIEtpbmRlciBiZWkgTmVja2VybWFubgooYnp3LiBOZWNrZXJlbGYpLgoKY2VyZWJ1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWNodCBrZXdsZSBMaW5rcyAoSmltZGlncml6LCAxNy4gQXByIDE5OTcsIDIxOjIxOjI1KToKSG9pLAoKaWNoIGZpbmRzIHdlYiBqYSBlaGVyIGJsb2VkLCBhYmVyIGhpZXIgaGFiIGljaCB3YXMgZWNodApjb29sZXMgYXVmZ2VzdG9lYmVydDoKIGh0dHA6Ly9mYXRtYW4ubWF0aGVtYXRpay50dS1tdWVuY2hlbi5kZS9+aGVpc2UvZG9rdXMvUG9wZS9wb3BlLmh0bWwKCkJ0dywgU3RyZW5nIGdsYWV1YmlnZSBzb2xsdGVuIHp1ZXJzdCBkaWUgZGlzY2xhaW1lciBzZWl0ZSBsZXNlbgppcmdlbmR3byBhbmRlcnMuCgpWaWVsIFNwYXNzLAogSmltIERpR3JpegoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVjaHQga2V3bGUgTGlua3MgKElzc29tYWQsIDE3LiBBcHIgMTk5NywgMjE6MjI6NTYpOgp+IyEgcm49SmltZGlncml6IHJ0PTg2MTMwNDg4NSByZz1zY2htYXJybgp+IyEgdGlkPTg2MTMwNDg4NQpBdWNoIGNvb2wgaXN0OgoKIGh0dHA6Ly93d3cucGhvbmV0aWsudW5pLW11ZW5jaGVuLmRlL01pdGFyYi9CYXN0YXJkLwoKRGEgZ2VodHMgdW0gZGVuIEJhc3RhcmQgQXNzaSBmcm9tIEhlbGwgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFbGZlbiB1bmQgU2V4IChUdW5peGd1dCwgMTguIEFwciAxOTk3LCAwNzo0MTo1Nik6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODYxMjkzODk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYxMjkzODk4CkRpZSBsZXR6dGVyZW4gMiBzaW5kJ3MsIEdyaW1tIQoKClR1Tml4R3V0ICgqa2ljaGVybmQqKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFY2h0IGtld2xlIExpbmtzIChXYXJnb24sIDE4LiBBcHIgMTk5NywgMTA6MTc6MjgpOgp+IyEgcm49SXNzb21hZCBydD04NjEzMDQ5NzYgcmc9c2NobWFycm4KfiMhIHRpZD04NjEzMDQ4ODUKVW5kIHdlbm4gamVtYW5kIGVpbiBCZWlzcGllbCBmdWVyIHNjaGxlY2h0ZXMgU2VpdGVuZGVzaWduIHNlaGVuIG1vZWNodGU6CiAgaHR0cDovL3d3dy5lc2NuZXQuY29tClZvciBhbGxlbSBtaXQgTHlueCBvZGVyIEVtYWNzLVczIG1hY2h0IGRpZXNlIFNlaXRlIHVuaGVpbWxpY2ggd2FzIGhlci4uLgogIFdhcmdvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVsZmVuIHVuZCBTZXggKEFscGhhLCAxOC4gQXByIDE5OTcsIDEwOjI5OjAzKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NjEyOTM4OTggcmc9c2NobWFycm4KfiMhIHRpZD04NjEyOTM4OTgKTmVpbiwgbmVpbiEgRWxmZW5tYWVubmVyIHVuZCBFbGZlbmZyYXVlbiBoYWJlbiBlaW5lIGRlcmFydCBob2hlIGdlaXN0aWdlIHVuZAptZW50YWxlIEthcGF6aXRhZXQsIGRhc3Mgc2llIGlocmVuIEtvZXJwZXIgc28gZ3V0IGJlaGVycnNjaGVuIHVuZCBzZWxic3QKZW50c2NoZWlkZW4sIG9iIHNpZSBzY2h3YW5nZXIgd2VyZGVuIHdvbGxlbiBvZGVyIG5pY2h0LiBVbmQgZGEgZWluZSBzY2h3YW5nZXJlCkVsZmluIHNvIGF1c3NpZWh0IHdpZSBuZSB6dSBncm9zcyBnZXJhdGVuZSBad2VyZ2luICh0eXBpc2NoIGRpY2tlciBCYXVjaCkgdW5kCm5lIFNjaHdhbmdlcnNjaGFmdCBiZWltIEF1c2xlYmVuIHVuc2VyZXIgRWxmZW5uYXR1ciBtYW5jaG1hbCBoaW5kZXJsaWNoCmVyc2NoZWludCB3ZXJkZW4gRWxmaW5lbiBudXIgc2VsdGVuIHNjaHdhbmdlci4gClB1aCwgd2FyIGRhcyBuZSBOYWNodCBnZXN0ZXJuLiBBbHBoYSBpc3QgaW1tZXIgbm9jaCBnbHVlY2tsaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFbGZlbiB1bmQgU2V4IChUdW5peGd1dCwgMTguIEFwciAxOTk3LCAxMTo1MTo0OCk6Cn4jISBybj1BbHBoYSBydD04NjEzNTIxNDMgcmc9c2NobWFycm4KfiMhIHRpZD04NjEyOTM4OTgKPj4gLi4ubmUgU2Nod2FuZ2Vyc2NoYWZ0IGJlaW0gQXVzbGViZW4gdW5zZXJlciBFbGZlbm5hdHVyIG1hbmNobWFsIGhpbmRlcmxpY2gKPj4gZXJzY2hlaW50Li4uCgpEdSBtZWluc3QsIElociBrb2VubnQgbmljaHQgbWVociBhdWYgZXVyZSBCYWV1bWUga2xldHRlcm4gdW5kIEJsYWV0dGVyIGZyZXNzZW4KdW5kIHdlcmRldCBlbGVuZGljaCBlaW5nZWhlbj8/PyBFcnphZWhsIG1pciBqZXR6dCBibG9zcyBuaXggdm9uIGVpbmVyIHNvemlhbGVuCktvbXBvbmVudGUuLi4uCgoKSW0gdWVicmlnZW4gZmluZGUgaWNoLCBkYXMgInZvbiBBc3QgenUgQXN0LWh1ZXBmZW4iIHNwcmljaHQgbmljaHQgZ2VyYWRlIHZvbgpnZWlzdGlnZXIgS2FwYXppdGFldCEgSWhyIHNlaWQgZGVuIEFmZmVuIGRvY2ggbm9jaCBuYWVoZXIgYWxzIGRpZSBNZW5zY2hlbi4uLgoKVHVOaXhHdXQgLSBad2VyZyBhdXMgVWViZXJ6ZXVndW5nLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFbGZlbiB1bmQgU2V4IChBbHBoYSwgMTguIEFwciAxOTk3LCAxMTo1NzowNik6Cn4jISBybj1UdW5peGd1dCBydD04NjEzNTcxMDggcmc9c2NobWFycm4KfiMhIHRpZD04NjEyOTM4OTgKT2NoIFp3ZXJjaCwgYmlzdCBqYSBudXIgbmVpZGlzY2gsIHdlaWwgZHUgbmllIGF1ZiBCYWV1bWUga2xldHRlcm4ga2FubnN0LApnZXNjaHdlaWdlIHdhcyBhbmRlcmVzIGJlc3RlaWdlbi4gQml0dGUgbGllYmVyIGVpbmVuIE1hZ2llciBkYXJ1bSwgZGFzcyBlcgpEaWNoIGluIGVpbmVuIEVsZiB2ZXJ3YW5kZWx0LCBlaGUgZGFzIExlYmVuIGFuIERpciB2b3JiZWlyYXVzY2h0LiBXZW5uIER1CmVyc3RtYWwgZWluIEVsZiBiaXN0LCBrb2VubmVuIHdpciBqYSBtYWwgZ2VtZWluc2FtIGF1ZiBkaWUgUGlyc2NoIGdlaGVuLi4uLkxlZwpkYXMgamV0enQgbnVyIG5pY2h0IGFscyBzY2h3dWxlIEFubWFjaGUgYXVzLCBqYS4gTWVpbmUgT2hyZW4gc2luZCBzbyBzcGl0eiB3aWUKaWNoLCBhYmVyIG5pY2h0IGF1ZiduIEtlcmwgCkFscGhhIGlzdCBzdG9seiBhdWYgc2VpbiBFbGZlbmRhcnNlaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFbGZlbiB1bmQgU2V4IChUdW5peGd1dCwgMTguIEFwciAxOTk3LCAxMjoxNToxNCk6Cn4jISBybj1BbHBoYSBydD04NjEzNTc0MjYgcmc9c2NobWFycm4KfiMhIHRpZD04NjEyOTM4OTgKTmljaHQgYXVmIEJhZXVtZSBrbGV0dGVybiBrYW5uc3Q/Pz8gV2FydW0genVtIFRldWZlbCBzb2xsdGUgaWNoIHNvd2FzCndvbGxlbj8/PyBadXIgTm90IGhhdSBpY2ggaWhuIHVtLi4uClVuZCB2b24gd2VnZW4gd2FzIGFuZGVyZXMgYmVzdGVpZ2VuIC0gV2lyIHNpbmQgamEgbmljaHQgc28nbgpIYXV0LXVuZC1Lb2NoZW4tSGF1ZmVuIHdpZSBldWVyZWlucyAtIGdsYXViJyBtaXIsIGRhdCBrbGFwcHQgc2Nob24hIDtvKQpJbSB1ZWJyaWdlbjogV2FzIGhlaXNzdCBoaWVyIGF1ZiBwaXJzY2ggZ2VoZW4/Pz8gRGljaCBhbiBhbmRlcmUgRWxmZW4KcmFucGlyc2NoZW4/Pz8KVGllcmUgdW1uaWV0ZW4gd3VlcmRlIGV1Y2ggZG9jaCBlaCBkYXMgSGVyeiBicmVjaGVuLi4uLgoKTWFsIGFiZ2VzZWhlbiBkYXZvbiBmYWVsbHQgZXMgbWlyIHNlaHIgc2Nod2VyLCBkYXMgTklDSFQgYWxzIHNjaHd1bGUgQW5tYWNoZQphdXN6dWxlZ2VuIC0gZGFzIHdhZXJlIGVsZmVuLWF0eXBpc2NoIHVuZCB2b24gZGFoZXIgdW53YWhyc2NoZWlubGljaC4uLi4KClR1Tml4R3V0IC0gdmVyc3RlaHQgZ2FyIG5pY2h0LCB3aWUgbWFuIGF1ZiBlaW4gRWxmZW5kYXNlaW4gYXVjaCBub2NoIHN0b2x6CnNlaW4ga2Fubi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRWxmZW4gdW5kIFNleCAoQWxwaGEsIDE4LiBBcHIgMTk5NywgMTI6MjU6MTcpOgp+IyEgcm49VHVuaXhndXQgcnQ9ODYxMzU4NTE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYxMjkzODk4CkFsc28gd2VubiB6d2VpIEVsZmVuIHp1c2FtbWVuIGF1ZiBkaWUgUGlzdGUgZ2VoZW4gdW5kIHNpY2ggendlaSBzY2huaWVja2UKRWxmaW5lbiBzdWNoZW4sIGRhbm4gaGF0IGRhcyBuaXggbWl0IHNjaHd1bHNlaW4genUgdHVuIHNvbmRlcm4gamFueiBlaW5mYWNoCm1pdCBFZmZla3Rpdml0YWV0IHVuZCB6dWdsZWljaCBtaXQgU3Bhc3MuIEdsYXViIG1pciwgb2RlciBoYXN0IGR1IGRhcyBub2NoIG5pZQpnZW1hY2h0PyBJc3QgZ2FueiBuZXR0LCB2aWVsbGVpY2h0IGZpbmRlIGljaCBhdWNoIG5lIEVsZmluLCBkaWUgRGljaCBuaW1tdC4KKFV1dXBzLCBkYSBoYWJlIGljaCBtaXIgYWJlciBhcmJlaXQgYXVmZ2VoYWxzdCwgb2IgZXMgc293YXMgdWViZXJoYXVwdCBnaWJ0PykKTmFqYSwgZWdhbC4gVW5kIHdlbm4gZHUgZGFzIGVyc3RlIG1hbCBuZSBFbGZpbiBoYXR0ZXN0LCB3aXJzdCBuaWUgd2llZGVyIHdhcwphbmRlcmVzIHdvbGxlbi4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBFbGZlbiB1bmQgU2V4IChSYWZmaSwgMTguIEFwciAxOTk3LCAxMzowNTo1Nik6Cn4jISBybj1BbHBoYSBydD04NjEzNTkxMTcgcmc9c2NobWFycm4KfiMhIHRpZD04NjEyOTM4OTgKQWxzbyB3ZW5uIHp3ZWkgRWxmZW4genVzYW1tZW4gYXVmIGRpZSBQaXN0ZSBnZWhlbiB1bmQgc2ljaCB6d2VpIHNjaG5pZWNrZQpFbGZpbmVuIHN1Y2hlbiwgZGFubi4uLgoKLi4uIGRhbm4gZW5kZXQgZGFzIGRvY2ggd2llIGltbWVyIGRhcmluIGRhcyBkaWUgendlaSBzZWxic3R2ZXJsaWVidCBhdWYgZGllClBpc3RlIHNpbmtlbiwgdW5kIGlocmUgTmF0dXIgKGFuZWluYW5kZXIpIGF1c2xlYmVuLgoKSXN0IGRvY2ggbml4IHNjaGxpbW1lcyBkYXJhbiwgaXN0IGRvY2ggZ2FueiBuYXR1ZXJsaWNoIGJlaSBlbGZlbi4KCklociBicmF1Y2h0IEV1Y2ggZ2FybmljaHQgc2NoYWVtZW4gdW5kIGhpbnRlciBNYWNob3NwcnVlY2hlbiB2ZXJzdGVja2VuLgoKR3J1c3MKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBORVVFIFpUIExJU1RFISEhIE1FIFRPT09PISEhIChTdXNoaSwgMTguIEFwciAxOTk3LCAxMzowNjowNCk6CkFuOiBTdXNoaQpEYXR1bTogRnJlLCAxOC4gQXByIDE5OTcsIDEwOjM1OjMxClRpdGVsOiBaVC1MaXN0ZQoKSGFsbG8gU3VzaGkhCgpEdSB3b2xsdGVzdCBtaXIgZG9jaCBuZSBaVC1MaXN0ZSBzY2hpY2tlbiwgaWNoIGhhYiBhYmVyIGluIG1laW5lbiBQb3N0ZmFjaAprZWluZSBnZWZ1bmRlbi4uIGthbm5zdCBkdSBtaXIgc2llIG1hbCB6dXNjaGlja2VuLi4gZW50d2VkZXIgbWl0IE1HIHBvc3QKb2RlciBhbiBmb29AYmFyLmNvbQpJY2ggd3VlcmRlIG1pY2ggZnJldWVuIHdlbm4gZHUgbWlyIGRpZSBaVC1MaXN0ZSAyMSBzY2hpY2tlbiB3dWVyZGVzdCB2b24gZGVyCmR1IEdlc3Rlcm4gQWJlbmQgZ2VzcHJvY2hlbiBoYXN0Li4KCmNpYW8sIFkqKioqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFY2h0IGtld2xlIExpbmtzIChZYW50cm8sIDE4LiBBcHIgMTk5NywgMTM6MzQ6MTUpOgp+IyEgcm49V2FyZ29uIHJ0PTg2MTM1MTQ0OCByZz1zY2htYXJybgp+IyEgdGlkPTg2MTMwNDg4NQphbHNvIHVudGVyIExZTlggYmV2b3J6dWdlIGljaCBodHRwOi8vd3d3LnNleC5zZSAgIGlzdCBlY2h0IGp1Z2VuZGZyZWksIHNvbGFuZ2UKbWFuIGJlaSBseW54IGJsZWlidCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAxOC4gQXByIDE5OTcsIDEzOjQ3OjU5KToKIldlciBuaWNodCBIZXJyIHVlYmVyIHNpY2ggc2VsYmVyIGlzdCwgaXN0IGtlaW4gZnJlaWVyIE1lbnNjaC4iIChHcmllY2hpc2NoKQoKU2NoYXUgZWluZXIgZ3VjaywgZGVyIHBhc3N0IGZ1ZXIgZGllc2UgV29jaGUgamEgd2llIGRpZSBGYXVzdCBhdWZzIEF1Z2UuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRWxmZW4gdW5kIFNleCAoVHVuaXhndXQsIDE4LiBBcHIgMTk5NywgMTQ6MTM6NDcpOgp+IyEgcm49VHVuaXhndXQgcnQ9ODYxMzU4NTE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYxMjkzODk4Cigqa2ljaGVyKikgaWNoIGhhYicgZG9jaCAnbmUgRWxmZSEhISA6bykgQWxzIFp3ZXJnIHdlaXNzIGljaCBuYWVtbGljaCBkZW4KVW50ZXJzY2hpZWQgendpc2NoZW4gTWFlbm5sZWluIHVuZCBXZWlibGVpbi4uLiBEZXNoYWxiIGhhc3QgRHUgYXVjaCBzb2xjaGUKUHJvYmxlbWUgdW5kIHN1Y2hzdCBub2NoISA7bykKSW0gdWVicmlnZW46IEdpYnQgZXMgRWxmZW4sIGRpZSBzY2huaWVrZSBlbGZpbm5lbiBzdWNoZW4sIHdlbm4gc2llIHNjaG9uIHp1Cnp3ZWl0IHNpbmQ/Pz8/IFdhZXJlIG1pciBuZXUhCgpUdU5peEd1dCAtIFdpbGwgZ2FueiBiZXN0aW1tdCBrZWluIEVsZiBzZWluLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBFbGZlbiB1bmQgU2V4IChHcmFsa29yLCAxOC4gQXByIDE5OTcsIDE0OjIwOjI3KToKfiMhIHJuPVJhZmZpIHJ0PTg2MTM2MTU1NiByZz1zY2htYXJybgp+IyEgdGlkPTg2MTI5Mzg5OApIaSBMZXV0cyEKSWNoIHdvbGx0ZSBibG9zcyBzYWdlbiwgZGFzcyBpaHIga2luZGlzY2ggc2VpZC4KVW5kIGRhIGZhc3QgbnVyIGF1ZiAxMWVuIHJ1bWdlaGFja3Qgd3VyZGUoZGllIGljaCBhbHMgdWViZXJ6ZXVndGVyIE5vdmFkaSBhdWNoCm5pY2h0IGxlaWRlbiBrYW5uLCBudXIgbGVpZGVyIGdpYnQgZXMgaGllciBudXIgNCBSYXNzZW4pLCBoYWJlIGljaCBtaWNoCmVudHNjaGxvc3NlbiwgbWFsIHdhcyBnZWdlbiBkaWUgWndlcmdlIHp1IHBvc3Rlbi4KCgoKQWxzbyBsb3M6CjEuIExpZWQ6IiBJbSBGcnVlaHRhdSBkaWUgWndlcmdlIgpJbSBGcnVlaHRhdSBkaWUgWndlcmdlLCBzaWUgZ2VobiAtIGZhbGxlcmEsClNpZSB0YXVtZWxuLCBzaWUgc2Nod2Fua2VuIHVuZCBzaWUgZ3JvZWhsbiAtIGZhbGxlcmEsCkphIHNlaHQsIHdpZSBrcnVtbSBzaWUgbGF1ZmVuLApEZW5uIGdlc3Rlcm4gd2FyJ24gc2llIHNhdWZlbiwKSWhyIGtlbm50IGRhcywgSWhyIHdhcmQgZGFzIGphIGF1Y2ggc2Nob24gJ21hbC4KIApWb20gRnJlaWJpZXIgZGllIFp3ZXJnZSwgc2llIGtvbW0nIC0gdHJhbGxhbGEsClp1IGVpbmVyIGFuZGVyJ24gS25laXBlIHdvbGwnbiBzaWUgemllaCduIC0gcnVtdGF0YSwKU2llIHNpbmQgZ3JhZCcgcmF1c2dlZmxvZ2VuLApXZWlsIHNpZSBzaWNoIG5hY2t0IGF1c3pvZ2VuLApEZXIgU3VmZiBtYWNodCBzaWUgYWxsZSBwZXJ2ZXJzIC0gdHVldGF0YS4KIApJbSBGcnVlaHRhdSBkaWUgWndlcmdlIGJsZWliJ24gc3RlaCduIC0gbGFsYWxhLApTaWUga290emVuIGluIGRpZSBCdWVzY2hlIHVuZCBkaWUgU2VlbiAtIHJ1bXNhc3NhLApXYXMgc29sbCBtYW4gZGF6dSBzYWdlbiwKU2llIGtvZW5uJyBoYWx0IG5pY2h0cyB2ZXJ0cmFnZW4sCk5hamEsIFp3ZXJnZSBzaW5kIG51biAnbWFsIGJsb2VkIC0gZmFsbGVyYS4KCgpVbmQgd2VpbCBkYXMgc28gc2Nob2VuIHdhciwgbm9jaCBlaW5zOgoKTGllZCAyOiJFaW4gWndlcmdsZWluIGhhZW5ndCBpbSBXYWxkZSIKRWluIFp3ZXJnbGVpbiBoYWVuZ3QgaW0gV2FsZGUgZ2FueiBzdGlsbCB1bmQgc3R1bW0sCkVzIGhhdCB1bSdzIHB1cnB1ciBIYWVsc2NoZW4gZWluIFN0cmlja2xlaW4gZHJ1bS4KU2FndCB3ZXIgbWFnIGRhcyBad2VyZ2xlaW4gc2VpbiwgZGFzIGRhIGhhZW5ndCBpbSBXYWxkIGFsbGVpbiwKTWl0IGRlbSBibGFzc3JvdC1ibGF1IGdlZmFlcmJ0ZW4gS29lcGZlbGVpbi4KIApFaW4gQnJpZWZsZWluIGxpZWd0IGltIFdhbGRlIGdhbnogc3RpbGwgdW5kIHN0dW1tLApFcyBoYXQgdm9yIGxhdXRlciBXb2VydGVybiAnbmVuIFVtc2NobGFnIGRydW0uCldpcmQgZGVyIEFic2NoaWVkc2JyaWVmIHdvaGwgc2Vpbiwgdm9uIGRlbSBrbGVpbmVuIFp3ZXJnZWxlaW4sCkRhcyBzaWNoIGF1ZmdlaGFlbmd0IGhhdCBhbiBkZW0gQmFldW1lbGVpbi4KIApFaW4gQmFldW1sZWluIHN0ZWh0IGltIFdhbGRlIHNvIGdhbnogYWxsZWluLApFcyBoYWVuZ3QgYW4gc2VpbmVtIEFlc3RjaGVuIGVpbiBTdHJpY2tlbGVpbi4KQmF1bWVsdCBkb3J0IGltIFdhbGQgc28gZmVpbiwgd2FydGV0IGF1ZiBlaW4gR25vZW1lbGVpbiwKRGFzIGRvcnQgc3RlY2tlbiBtYWcgc2VpbiBad2VyZ2Vua29lcGZsZWluICdyZWluLgoKClNvLCBpY2ggaG9mZmUsIGRhcyBkYXMgamV0enQgZGVyIEtJTkRJU0NIRSBTdHJlaXQgendpc2NoZW4gZGVuIG5pZWRlcmVuCihad2VyZ2UpCnVuZCBkZW4gbnVyIGtvZXJwZXJsaWNoIGdyb2Vzc2VyZW4gKDExZW4pIGF1ZmhvZXJ0LgpIYWNrdCBsaWViZXIgYXVmIGRlbiBLZWtzZW4gKEJyYW5kdC1Ib2JiaXRzKSBydW0uCgpJbSBOYW1lbiB2b24gUmFzdHVsbGFoLCBkZW0gRWluZW4KR3JhbGtvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRWxmZW4gdW5kIFNleCAoR3JpbW1ib3JuLCAxOC4gQXByIDE5OTcsIDE0OjI1OjIxKToKfiMhIHJuPUdyYWxrb3IgcnQ9ODYxMzY2MDI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYxMjkzODk4ClRqYSwgd2FzIHNvbGwgbWFuIGRhenUgbm9jaCBzYWdlbj8KRFNBLVNwaWVsZXIgaGFsdC4uLiAqenVjayoKCkRhcyBkYXMgaGllciBlaW4gS2luZGVyZ2FydGVuIGlzdCBpc3QgbWlyIGphIHNjaG9uIGxhZW5nZXIga2xhciwgYWJlciBTTwpzY2hsaW1tPyBOYWphLCBEaXIgc2VpIHZlcnppZWhlbiwgZGllIFp3ZXJnZSBpbiBEU0Egc2luZCBhdWNoIGtlaW5lIHJpY2h0aWdlbgpad2VyZ2UsIGRpZSBzaW5kIG51ciB1bSBIYWFyZXNicmVpdGUgYW4gZGVyIHJvdGVuIFppcGZlbG11ZXR6ZQp2b3JiZWlnZXNjaHJhbW10LgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBFbGZlbiB1bmQgU2V4IChHcmFsa29yLCAxOC4gQXByIDE5OTcsIDE0OjI3OjMwKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NjEzNjYzMjEgcmc9c2NobWFycm4KfiMhIHRpZD04NjEyOTM4OTgKTWFnaWVyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFY2h0IGtld2xlIExpbmtzIChSYWZmaSwgMTguIEFwciAxOTk3LCAxNDozMDowNyk6Cn4jISBybj1ZYW50cm8gcnQ9ODYxMzYzMjU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYxMzA0ODg1CgpFcnJvcgoKQWNjZXNzIERlbmllZAoKU29ycnksIHlvdSBhcmUgbm90IGN1cnJlbnRseSBhbGxvd2VkIHRvIHJlcXVlc3QgCgogICAgaHR0cDovL3d3dy5zZXguc2UvCgpGcm9tIHRoaXMgY2FjaGUuIFBsZWFzZSBjaGVjayB3aXRoIHRoZSBjYWNoZSBhZG1pbmlzdHJhdG9yIGlmIHlvdSBiZWxpZXZlIHRoaXMKaXMgaW5jb3JyZWN0LiAKCipncnVtbWVsKgpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRWNodCBrZXdsZSBMaW5rcyAoR3JpbW1ib3JuLCAxOC4gQXByIDE5OTcsIDE0OjM1OjI0KToKfiMhIHJuPVJhZmZpIHJ0PTg2MTM2NjYwNyByZz1zY2htYXJybgp+IyEgdGlkPTg2MTMwNDg4NQpBY2ggamEsIGJpdHRlIHBob3RvZ3JhcGhpZXIgZGFubiBiZWkgZGVyIEdlbGVnZW5oZWl0IGRhcyBHZXNpY2h0IGRlcyBhZG1pbnMsCndlbm4gRHUgaWhtIHNhZ3N0LCBkYXNzIER1IGRpZXNlIHVybCB1bmJlZGluZ3QgYnJhdWNoc3QgdW5kIHNldHogZGFzIEJpbGQgaW5zCndlYi4gOi0pCgpHZEEga3JpbmdlbHQgc2ljaCwgcnVmdCAiWkVOU1VSIiB1bmQgbGFjaHQgd2VpdGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRWNodCBrZXdsZSBMaW5rcyAoU3VzaGksIDE4LiBBcHIgMTk5NywgMTY6MTE6NTApOgp+IyEgcm49UmFmZmkgcnQ9ODYxMzY2NjA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYxMzA0ODg1CgpodHRwOi8vd3d3Lmdlcm1hbnNsdXRzLmNvbQoKU3VzaGkgLS0gaGVmdGlnIGtvdHplbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVzIHdpcmt0IChBc21vZGluYSwgMTguIEFwciAxOTk3LCAyMDozNTozNik6CkR1IHdlZGVsc3Qgd2lsZCBtaXQgRGVpbmVtICdGcmF1ZW4tUG93ZXInLUZhZWhuY2hlbi4KS25pcnNjaCB2ZXJzaW5rdCBpbiB0aWVmZXIgQW5kYWNodC4KCgoqdW5nZXNjaG5pdHRlbioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEVjaHQga2V3bGUgTGlua3MgKE1hcmN1cywgMTguIEFwciAxOTk3LCAyMjowMToxMSk6Cn4jISBybj1SYWZmaSBydD04NjEzNjY2MDcgcmc9c2NobWFycm4KfiMhIHRpZD04NjEzMDQ4ODUKUHJ1c3QuLi4gSWNoIGtlbm5lIGRlbiBBZG1pbiwgZGVyIGRhcyBlaW5nZXJpY2h0ZXQgaGF0IHBlcnNvZW5saWNoIDspKSkpCgooRGllIGtvbXBsZXR0ZSBhdm9pZGxpc3RlIGxpZWd0IGF1ZiAKIGh0dHA6Ly93d3cuZnJhbmtlbi5kZS91c2Vycy90eWNoZW4vcnJrbGllci9jb21wdXRlcnMvdW53YW50ZWQuaHRtbAopCgoqZ3JpbnMqCgpDaWFvLCBNYXJjdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5lIG5ldWUgR2lsZGUgPz8gKElzc29tYWQsIDE5LiBBcHIgMTk5NywgMDE6MjY6NTgpOgpbQWxsZ2VtZWluOldvb2R5XSB3b3p1IGF1c3J1ZXN0dW5nPyBzdG9lcnQgYmVpbSB6ZWl0dW5nbGVzZW4gbnVyLgpbQWxsZ2VtZWluOklzc29tYWRdIHdpcmQgemVpdCwgZGFzcyBkaWUgWmVpdHVuZ2xlc2VyLUdpbGRlIGF1Zm1hY2h0CltBbGxnZW1laW46UmluZ29yXSBuZWVlLCBkaWUgd2FlcmVuIHp1IHN0YXJrCltBbGxnZW1laW46V29vZHldIE9jaCBuZWUsIGpldHp0IGZhZW5ndCBkZXIgc2Nob24gd2llZGVyIGFuLgpbQWxsZ2VtZWluOk1vcmZveF0gdW5kIGRpZSBhcnRpa2Vsc2NocmVpYmVyLWdpbGRlCltBbGxnZW1laW46SXNzb21hZF0gZnVlciBqZWRlbiBzaW5udm9sbGVuIGFydGlrZWwga3JpZWd0IG1hbiBlaW5lbiBmcCA6KQpbQWxsZ2VtZWluOlNjaGxpcHNdIHVuZCB3ZXIgZW50c2NoZWlkZXQgb2Igc2lubnZvbGwgb2RlciBuaWNodCAuLi4KW0FsbGdlbWVpbjpMdW5hIGdyaW5zdCBJc3NvbWFkIGFuXQpbQWxsZ2VtZWluOlNjaGxpcHMgc2NoYWV0eiBtYWwgZGFzcyBtYW4gaW4gZGVyIEdpbGRlIHp1IG5peCBrb21tdF0KW0FsbGdlbWVpbjpJc3NvbWFkXSBuYWphLCBkZW4gZnAgZ2lidHMgZXJzdCBuYWNodHJhZWdsaWNoLCB3ZW5uIGRlciBhcnRpa2VsCltBbGxnZW1laW46SXNzb21hZF0gbmFjaCBlaW5lciBzdHVuZGUgbm9jaCBkYSBzdGVodCwgZGFubiBpc3QgZXIgc2lubnZvbGwgOikKW0FsbGdlbWVpbjpJc3NvbWFkXSBhbnNvbnN0ZW4gaXN0IGVyIHZlcmxlZ3Qgb2RlciBnZWxvZXNjaHQKW0FsbGdlbWVpbjpGeXRdIGdlaHQgamEgbmljaCBtZWhyIHNvIGZpeApbQWxsZ2VtZWluOkJvbWJhZGlsXSBhbHNvIHByb2d0ZWNobmlzY2ggaXN0IGRhcyBlaW5mYWNoCltBbGxnZW1laW46SXNzb21hZF0gbmEgZ3V0LCBzYWdlbiB3aXIgbWFsLCBlaW5lbiB0YWcgOikKW0FsbGdlbWVpbjpGeXRdIHNlaXRkZW0gZ3JpbW1pZSBuaWNodCBtZWhyIHZlcmxlZ2VuIGthbm4sIGZlaGx0IGRpZQpbQWxsZ2VtZWluOkZ5dF0gJ3F1YWxpdGFldHNrb250cm9sbGUnCltBbGxnZW1laW46SXNzb21hZF0gZGFubiBoYXQgc2ljaCBncmltbWkgZWluZ2Vsb2dndApbQWxsZ2VtZWluOkJvbWJhZGlsXSBiZWkgZGVtIGtyaXRlcml1bSAic2lubnZvbGxlciIgYXJ0aWtlbCBlcnVlYnJpZ3Qgc2ljaCBkaWUKW0FsbGdlbWVpbjpCb21iYWRpbF0gYXVmZ2FiZSB2b24gc2VsYnN0CltBbGxnZW1laW46QW5hdG9sIHN0aW1tdCBmdWVyICdHcmltbWkgZnVlciBWZXJsZWdlcicuXQpbQWxsZ2VtZWluOklzc29tYWRdIGthbm4gbmljaHQgbWVociA/IGRhbm4gbXVzcyBtYW4gZGFzIHdpZWRlciBlaW5mdWVocmVuCltBbGxnZW1laW46U2NobGlwcyBiZXp3aWVmZWx0IGRhczogaW4gbXVlbGwgc3RlaGVuIG5vY2ggYXJ0aWtlbCBiaXMgaW4gZGVuCiAgICAgICAgICAgT2t0b2JlciBsZXR6dGVuIGphaHJlcyBkcmlubmUgLSB3YWVocmVuZCBpbiBhbmRlcmVuIFJ1YnJpa2VuIG5pY2h0CiAgICAgICAgICAgbWFsIGRpZSBhcnRpa2VsIGRlciBsZXR6dGVuIHdvY2hlIHp1IGtyaWVnZW4gc2luZF0KW0FsbGdlbWVpbjpJc3NvbWFkXSBzY2hsaXBzLCBpbiBtdWVsbCBrYW5uc3QgZHUgZWggbmljaHQgc2NocmVpYmVuCltBbGxnZW1laW46SXNzb21hZF0gYWxzbyBkZXIgbmFtZSB3YWVyZSAnTVBBLUdpbGRlJwpbQWxsZ2VtZWluOlNjaGxpcHNdIGRhcyBzdG9lcnQgamEgbmV0IC0gaWNoIGZyYWNoIG1pY2ggbnVyIHdhcnVtIGRpZSBhcnRpa2VsCltBbGxnZW1laW46U2NobGlwc10gbm9jaCBzbyBsYW5nIGF1ZmdlaG9iZW4gd2VyZGVuLCB3ZW5uIHNpZSBzY2hvbiBhbHMgbXVlbGwKW0FsbGdlbWVpbjpTY2hsaXBzXSBiZXplaWNobmV0IHdlcmRlbiAuLi4KW0FsbGdlbWVpbjpNb3Jmb3ggc2NobGllc3N0IHNpY2ggc2NobGlwcyBhbl0KW0FsbGdlbWVpbjpXb29keV0gd2lldmllbCBNUCBrb3N0ZXQgZGFubiAndmVybGVnZScgPwpbQWxsZ2VtZWluOkJvbWJhZGlsXSBkYXMgaXMgaGFsdCBkYXMgcHJvYmxlbSBtaXQgZGVyIGVudHNvcmd1bmcgOy0pCltBbGxnZW1laW46SXNzb21hZF0gdW5kIGRlciBHaWxkZW4tSG9lY2hzdGUgaXN0IGRlciBDaGVmcmVkYWt0ZXVyLCBkZXIgd2lyZApbQWxsZ2VtZWluOklzc29tYWRdIGFiZ2VzZXR6dCwgd2VubiBlciBpbm5lcmhhbGIgdm9uIDYgc3R1bmRlbiBuYWNoIGVpbmxvZ2dlbgpbQWxsZ2VtZWluOklzc29tYWRdIG5vY2ggbmljaHQgZGllIG1wYSBkdXJjaCBoYXQKW0FsbGdlbWVpbjpBbmF0b2xdIE1hbiBtdXNzIGVpbmUgTWluZGVzdHphaGwgYW4gQXJ0aWtlbG4gdmVybGVnZW4sIHVtIHZlcmxlZ2VyCltBbGxnZW1laW46QW5hdG9sXSB6dSBibGVpYmVuPwpbQWxsZ2VtZWluOlNjaGxpcHMgenVtIEJlaXNwaWVsIGhhdCBoZXV0ZSBlaW5lbiB3aXJrbGljaCBzaW5udm9sbGVuIEFydGlrZWwgaW4KICAgICAgICAgICBzY2htYXJybiBnZXN1Y2h0IC0gZGVyIHdhciBlcnN0IDEgd29jaGUgYWx0IHVuZCBzY2hvbiBuaW1tZXIgZGEKOigoXQpbQWxsZ2VtZWluOlNjaGxpcHNdIElzdCB2ZXJsZWdlciBkYW5uIGRpZSBob2VjaHN0ZSBzdHVmZSBpbiBkZXIgZ2lsZGU/CltBbGxnZW1laW46SXNzb21hZF0gaG1tLCB2ZXJsZWdlciA/IHdhZXIgYXVjaCBuZXR0CltBbGxnZW1laW46SXNzb21hZF0gZGVyIHN0ZWh0IGRhbm4gdWViZXIgZGVtIENoZWZyZWRha3RldXIKW0FsbGdlbWVpbjpJc3NvbWFkXSBpY2ggZGVua2UgbWFsLCAxMCBhcnRpa2VsIHBybyB0YWcgdmVybGVnZW4gcmVpY2h0IDopCltBbGxnZW1laW46U2NobGlwc10gZGllIHN0dWZlIGRhcmYgZGFubiBhYmVyIGltbWVyIG51ciBlaW5lciBoYWJlbiAtIGRhbm4gd2FlcgpbQWxsZ2VtZWluOlNjaGxpcHNdIGRhcyBqYSByaWNodGlnIHNwYW5uZW5kCltBbGxnZW1laW46Rnl0XSAndmVybGVnZXInIGdpYnQncyBqYSBhdWNoIGltIFJMLU11ZCA7LSkKW0FsbGdlbWVpbjpJc3NvbWFkXSB1bmQgZGllIGJlc29uZGVyZSBmYWVoaWdrZWl0IHZvbSB2ZXJsZWdlciBpc3QgZGFzIGFydGlrZWwKW0FsbGdlbWVpbjpJc3NvbWFkXSB2ZXJsZWdlbiA6KQpbQWxsZ2VtZWluOklzc29tYWRdIGRlc2hhbGIgd2lsbCBlcyBqYSBqZWRlciB3ZXJkZW4KW0FsbGdlbWVpbjpNb3Jmb3hdIGRhcyBpc3Qgc28gbmUgYXJ0IHNhY2hlbnN1Y2hlci4uLgpbQWxsZ2VtZWluOkFuYXRvbCBncmluc3QgRnl0IChodWh1IExlaXR1bmcpIGFuLl0KW0FsbGdlbWVpbjpTY2hsaXBzIHNpZWh0IGRhbm4gc2Nob24gcmljaHRpZyBzcGFubmVuZGUgS2FlbXBmZSB1bSBkZW4KICAgICAgICAgICBWZXJsZWdlcnBvc3RlbiAtIHdlciB2ZXJsZWd0IGFtIG1laXN0ZW5dCltBbGxnZW1laW46TW9yZm94IGVyaW5uZXJ0IHNpY2ggYW4gcGlwcGkgbGFuZ3N0cnVtcGYuIGRpZSB3YXIgYXVjaCBtYWwgYWxzCiAgICAgICAgICAgc2FjaGVuc3VjaGVyIHVudGVyd2Vnc10KW0FsbGdlbWVpbjpJc3NvbWFkXSBhdWYgamVkZW4gZmFsbCB3YWVycyBtYWwgbmUgbmV0dGUgZ2lsZGUgOikKW0FsbGdlbWVpbjpTY2hsaXBzXSBNYW5jaGUgc3BpZWxlciB3ZXJkZW4gc2ljaCBkYW5uIGFsbGVyZGluZ3MKW0FsbGdlbWVpbjpTY2hsaXBzXSBHaG9zdHdyaXRlci1ad2VpdGllcyBhbmxlZ2VuIC0gZGVyZW4gYXJ0aWtlbCBzaWUgZGFubgpbQWxsZ2VtZWluOlNjaGxpcHNdIHZlcmxlZ2VuIC4uLgpbQWxsZ2VtZWluOklzc29tYWRdIGtlaW5lIHNpbm5sb3NlbiBtZXR6ZWxlaWVuCltBbGxnZW1laW46QW5hdG9sXSBIbSwgd2FzIGZ1ZXIgZWluIEFuZ3JpZmZzc3BydWNoLi4uLiAidmVybGVnZSB3ZWdoaWVyIi4gRGVyCltBbGxnZW1laW46QW5hdG9sXSBXZWdoaWVyIHNjaGF1dCBEaWNoIHZlcmxlZ2VuIGFuLgpbQWxsZ2VtZWluOlNjaGxpcHMgZ3JpbnN0XQpbQWxsZ2VtZWluOlNjaGxpcHNdIHZlcmxlZ2Ugd2VnaGllciBuYWNoIGFiZW50ZXVlcmdpbGRlCltBbGxnZW1laW46SXNzb21hZF0gdmVybGVnZSBoeWRyYSBuYWNoIHp3ZXJnZW5zdGFkdApbQWxsZ2VtZWluOlNjaGxpcHNdIGF1Y2ggbmljaHQgc2NobGVjaHQgLSBiZXNzZXIgbm9jaCBob2NoZWJlbmUgLi4uCltBbGxnZW1laW46SXNzb21hZF0gb2NoLCBkYSBsYXVmZW4gZG9jaCBhdWNoIG5pY2h0LXp3ZXJnZSBoZXJ1bSA6KQpbQWxsZ2VtZWluOkxhdXJpbiBncnVtbWVsdF0KW0FsbGdlbWVpbjpMYXVyaW5dIGtsYXBwZSwgc3BpdHpvaHIKW0FsbGdlbWVpbjpBbmF0b2xdIG1vbSwgdGYgc3RyZWlrdApbQWxsZ2VtZWluOklzc29tYWQgdHJpdHQgZWluZW4gWndlcmcgZWluIGJpc3NjaGVuXQpbQWxsZ2VtZWluOlJpbmdvcl0gdmVybGVnZSBCYW5zaGVlIG5hY2ggRWxmZW5kb3JmPyBEaWUgbXVzcyBudXIgZGVuIFNjaG5hYmVsCltBbGxnZW1laW46UmluZ29yXSBhdWZyZWlzc2VuIHVuZCBlcndpc2NodCBlaW4gcGFhciB2b24gQmF1bSB6dSBCYXVtIGh1ZXBmZW5kZQpbQWxsZ2VtZWluOlJpbmdvcl0gTGFuZ29ocmVuIDopCltBbGxnZW1laW46SXNzb21hZF0gbmVuZSwgZGllIGtvbW10IG5pY2h0IHVlYmVyIGRpZSBwYWxpc2FkZW4gOikKW0FsbGdlbWVpbjpJc3NvbWFkXSBkYXMgZWxmZW5kb3JmIGlzdCB6dW0gZ2x1ZWNrIGJlZmVzdGlndApbQWxsZ2VtZWluOklzc29tYWRdIGhhdCBqZW1hbmQgbWl0Z2Vsb2dndCB1bmQgcG9zdGV0IGRhcyBpbiBzY2htYXJybiA/CgoKQWxsZXMgbXVzcyBtYW4gc2VsYnN0IG1hY2hlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5lIG5ldWUgR2lsZGUgPz8gKEZ5dCwgMTkuIEFwciAxOTk3LCAwMToyOTowNyk6Cn4jISBybj1Jc3NvbWFkIHJ0PTg2MTQwNjAxOCByZz1zY2htYXJybgp+IyEgdGlkPTg2MTQwNjAxOAoKRGFzIHdhciBqZXR6dCBEZWluZSBCZXdlcmJ1bmcgdWYgZGVuIEdpbGRlbnBvc3Rlbj8KCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmUgbmV1ZSBHaWxkZSA/PyAoSXNzb21hZCwgMTkuIEFwciAxOTk3LCAwMToyOTo1NCk6Cn4jISBybj1GeXQgcnQ9ODYxNDA2MTQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYxNDA2MDE4Ck5vZSwgaGFiIG51ciBuZW4gZnAgZWluZ2VzYWNrdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmUgbmV1ZSBHaWxkZSA/PyAoRnl0LCAxOS4gQXByIDE5OTcsIDAxOjMwOjQ2KToKfiMhIHJuPUlzc29tYWQgcnQ9ODYxNDA2MTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYxNDA2MDE4CgpGUCBnaWJ0J3MgbnVyIGZ1ZXIgZ3V0ZSBBcnRpa2VsIGluIEt1bHR1ci4gU3RlaHQgenVtaW5kZXN0IGltCmV4cGxvcmF0aW9ubWFzdGVyCgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZSBuZXVlIEdpbGRlID8/IChJc3NvbWFkLCAxOS4gQXByIDE5OTcsIDAxOjMxOjEwKToKfiMhIHJuPUZ5dCBydD04NjE0MDYyNDYgcmc9c2NobWFycm4KfiMhIHRpZD04NjE0MDYwMTgKTWlzdCwga2FubiBtYWwgamVtYW5kIG1laW5lIEFydGlrZWwgbmFjaCBrdWx0dXIgdmVybGVnZW4gPz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5lIG5ldWUgR2lsZGUgPz8gKFJpbmdvciwgMTkuIEFwciAxOTk3LCAwMTozMTozNCk6Cn4jISBybj1Jc3NvbWFkIHJ0PTg2MTQwNjI3MCByZz1zY2htYXJybgp+IyEgdGlkPTg2MTQwNjAxOApXZXJkZW4gc2llIGRhZHVyY2ggc2lubnZvbGxlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5lIG5ldWUgR2lsZGUgPz8gKElzc29tYWQsIDE5LiBBcHIgMTk5NywgMDE6MzI6NTcpOgp+IyEgcm49UmluZ29yIHJ0PTg2MTQwNjI5NCByZz1zY2htYXJybgp+IyEgdGlkPTg2MTQwNjAxOApOb2UsIGFiZXIgc2llIHN0ZWhlbiBkYW5uIGluIGRlciByaWNodGlnZW4gUnVicmlrICEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhaG5zaW5uIChTY2hsaXBzLCAxOS4gQXByIDE5OTcsIDIzOjM4OjA0KToKTm9jaG1hbCB3YXMgdm9tIFphdWJlcm4gLSB3b2hsIGV0d2FzIHZlcndpcnJ0IC4uLgo+IEluIGRlaW5lbSBXYWhuIGdyZWlmc3QgRHUgZWluIEthbmluY2hlbiBhbi4KRHUgYmlzdCBub2NoIHp1IGVyc2Nob2VwZnQgdm9uIERlaW5lbSBsZXR6dGVuIFNwcnVjaC4KPiBMZWJlbnNwdW5rdGU6IDE3NyAoMTg2KSAgTWFnaWVwdW5rdGU6IDQxICgxNzgpIFN0YWJtYWdpZTogNzIgKDc1KQpGbGFtbWVuZGUgSGFuZCAoYXVzKSAgV2lsbGUgKGF1cykgIFhIYW5kIChhdXMpICBTY2h1dHp6YXViZXIgKGtlaW5lKQogIER1IGdyZWlmc3QgZGVuIFNjaG1ldHRlcmxpbmcgbWl0IGRlbSBaYXViZXJzdGFiIGFuLgogIER1IGtyYXR6dCBkZW4gU2NobWV0dGVybGluZy4KICBEZXIgU2NobWV0dGVybGluZyBncmVpZnQgRGljaCBtaXQgc2VpbmVuIEZsdWVnZWxuIGFuLgogIERlciBTY2htZXR0ZXJsaW5nIHZlcmZlaGx0IERpY2guCkxlYmVuc3B1bmt0ZTogMTc4ICgxODYpICBNYWdpZXB1bmt0ZTogNDIgKDE3OCkgU3RhYm1hZ2llOiA3MiAoNzUpCkZsYW1tZW5kZSBIYW5kIChhdXMpICBXaWxsZSAoYXVzKSAgWEhhbmQgKGF1cykgIFNjaHV0enphdWJlciAoa2VpbmUpCiAgRHUgZ3JlaWZzdCBkZW4gU2NobWV0dGVybGluZyBtaXQgZGVtIFphdWJlcnN0YWIgYW4uCiAgRHUgdHJpZmZzdCBkZW4gU2NobWV0dGVybGluZyBzZWhyIGhhcnQuCkRlciBTY2htZXR0ZXJsaW5nIGZhZWxsdCB0b3QgenUgQm9kZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQm9kZW4gb2RlciBuaWNodC4uLiAoQm9uaSwgMjAuIEFwciAxOTk3LCAxMTozNDoxNyk6Cgo+IHVudCByaWVzZW5iYWV1bWUKQW0gYW5kZXJlbiBFbmRlIGRlcyBTdGVnZXMgYmVnaW5udCBkZXIgV2FsZCBkZXIgUmllc2VuYmFldW1lLiBTb2xjaGUKR2lnYW50ZW4gaGFzdCBEdSBub2NoIG5pZSBnZXNlaGVuIHVuZCBlcyBpc3QgRGlyIHVubW9lZ2xpY2gsIHZvbiBoaWVyIG9iZW4KYXVzIGRlbiBCb2RlbiBhdXN6dW1hY2hlbi4KPiB1bnQgYm9kZW4KRGVyIEJvZGVuIGlzdCBoaWVyIGZlbHNpZywgYWJlciBkYXMgZ2Vob2VydCBzaWNoIGluIGVpbmVtIEJlcmcgYXVjaCBzby4KCkJvbmkgc2luZ3QgZWluIExpZWQgenUgRWhyZW4gZGVzIE1hZ2llcnMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBFY2h0IGtld2xlIExpbmtzIChTbnVnZ2xlLCAyMS4gQXByIDE5OTcsIDAwOjA2OjUyKToKfiMhIHJuPVJhZmZpIHJ0PTg2MTM2NjYwNyByZz1zY2htYXJybgp+IyEgdGlkPTg2MTMwNDg4NQpEdSBtdXNzdCBhdWNoIEx5bnggYmVudXR6ZW4sIFJhZmZpLiBTb25zdCBnZWh0cyBuZXQgOi0pCgpTbnVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQm9kZW4gb2RlciBuaWNodC4uLiAoWWFudHJvLCAyMS4gQXByIDE5OTcsIDA3OjM4OjMwKToKfiMhIHJuPUJvbmkgcnQ9ODYxNTI4ODU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYxNTI4ODU3CmhtbSBuaWNodCwgd2VpbCBpY2ggZ2VybiBtb3Nlciwgd3VlcmQgaWNoIE5JRSB0dW4sIGFiZXIgd2FzIHN0b2VydCBkYXJhbj8/PwoKS0VJTkVOIEJvZGVuIGF1c21hY2hlbiBrYW5uIG1hbiB1bnRlciBkZW4gUmllc2VuYmFldW1lbiBhbSBhbmRlcmVuIEVuZGUgZGVzClN0ZWdlcy4uLiBhYmVyIGRhIGlzdCBtYW4gamEgbmljaHQuLi4gIkRlciBCb2RlbiBpc3QgSElFUiBmZWxzaWciIGJlemllaHQgc2ljaAphdWYgZGllIGRpcmVrdGUgVW1nZWJ1bmcuLi4gYWxzbyBCb25pLCBsYWVzdGVyIG5pY2gsIHNvbmRlcm4gc2NoYWx0IG1hbCBkZW4KS2FzdGVuIGVpbiwgZGVyIGF1ZiBkZWluZW4gU2NodWx0ZXJuIHNpdHp0IQoKWWFudHJvLCB0aWVmIHZlcmxldHp0IHNjaG1vbGxlbmQsIGtlaW5lciBoYXQgaWhuIGxpZWIgOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQm9kZW4gb2RlciBuaWNodC4uLiAoQm9uaSwgMjEuIEFwciAxOTk3LCAwOTo1OTozMSk6Cn4jISBybj1ZYW50cm8gcnQ9ODYxNjAxMTEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYxNTI4ODU3Ck9vY2guLi4KCk5pY2h0IGJvZXNlIHNlaW4hIEhhc3QgZG9jaCBrZWluZW4gR3J1bmQgenUgc2NobW9sbGVuIQpWaWVsbGVpY2h0IHNvbGx0ZXN0IER1IG1hbCBTdHVmZW4gaW4gZGllIEJhZXVtZSBlaW5iYXVlbiwgZGFubiBoYWJlbiBhdWNoIGRpZQplaW5lbiBCb2RlbiEKCkJvbmkgam9kZWx0IERpciB6dSBFaHJlbi4gOikpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmUgbmV1ZSBHaWxkZSA/PyAoR3JhbGtvciwgMjEuIEFwciAxOTk3LCAxNToyMDozNSk6Cn4jISBybj1Jc3NvbWFkIHJ0PTg2MTQwNjAxOCByZz1zY2htYXJybgp+IyEgdGlkPTg2MTQwNjAxOApaZWl0dW5nbGVzZXItR2lsZGUgPz8/PwpJQ0ggQklOIERBRlVFUiEhISEhISEhISEKTnVyIHNvIHdpcmQgTG9jb3MgU3VwZXItVG9vbCBlbmRsaWNoIG1hbCBlbnRzcHJlY2hlbmQgZ2V3dWVyZGlndC4uLi4KR3JhbGtvciwgQ2hlZi1aZWl0dW5nc2xlc2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkYXMgdWVibGljaGUgKFpvcnJvLCAyMS4gQXByIDE5OTcsIDE3OjAwOjI2KToKPiBzawpEdSB6aWVoc3QgZGVuIEhvbHpzY2hpbGQgYXVzLgo+IER1IHN0ZWNrc3QgZGVuIFZvbGxzdHJlY2tlciB6dXJ1ZWNrLgo+IER1IGZ1Y2h0ZWxzdCB3aWUgd2lsZCBtaXQgZWluZXIgSGFuZCBoZXJ1bSAoa2VpbmVyIHdlaXNzLCB3YXJ1bQptYW4gZGFzIGJlaSBkaWVzZW0gU3BydWNoIHNvIG1hY2hlbiBtdXNzKS4KRHUgdmVyc3RhZXJrc3QgZGVuIFNjaHV0eiBkZXIgQ2hhb3NoYXV0LgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDE4NSBNYWdpZXB1bmt0ZS4KPiBEdSB6aWVoc3QgZGVuIEhvbHpzY2hpbGQgYW4uCj4gRHUgenVlY2tzdCBkZW4gVm9sbHN0cmVja2VyLgo+IDU1NQpEZXIgT3JrIHNhZ3Q6IER1IGhhc3QgZ3V0ZSBTYWNoZW4sIGhlciBkYW1pdC4KRGVyIE9yayBzYWd0OiBEdSBoYXN0IGd1dGUgU2FjaGVuLCBoZXIgZGFtaXQuCiAgRGVyIE9yayBncmVpZnQgRGljaCBtaXQgZWluZW0gc2VociBnZWx1bmdlbmVuIFlva28tbWF3YXNoaS1nZXJpIGFuLgpNYXRyaXg6IEVpbiBPcmsgaXN0IGFic29sdXQgZml0LgogIERlciBPcmsgemVyc3RhZXVidCBEaWNoLgpEdSBoYXN0IGpldHp0IDEwNSBMZWJlbnNwdW5rdGUgdW5kIDE4NSBNYWdpZXB1bmt0ZS4KICBEZXIgT3JrIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSBzZWhyIGdlbHVuZ2VuZW4gWW9rby1nZXJpLWtlYWdlIGFuLgpEYXMgS3JldXogZmFlbmd0IGFuIHp1IGxldWNodGVuLgogTWF0cml4OiBFaW4gT3JrIGZ1ZWhsdGUgc2ljaCBoZXV0ZSBhdWNoIHNjaG9uIGJlc3Nlci4KICBEZXIgT3JrIHNjaGxhZWd0IERpY2ggenUgQnJlaS4KRHUgaGFzdCBqZXR6dCA0NCBMZWJlbnNwdW5rdGUgdW5kIDE4NSBNYWdpZXB1bmt0ZS4KRHUgYmVmaW5kZXN0IERpY2ggYXVmIGRlciBPcmthbGxlZS4gQW0gU3RyYXNzZW5yYW5kIHN0ZWhlbiB3dW5kZXJ2b2xsZSBQYXBwZWxuCnVuZCBLYXN0YW5pZW5iYWV1bWUuIERpZSBCYWV1bWUgc2NodWV0emVuIERpY2ggZXR3YXMgdm9yIGRlciBTb25uZSwgZGllIGhpZXIKYXVmIERpY2ggbmllZGVyYnJlbm50LiBEdSB1ZWJlcmxlZ3N0LCBvYiBEdSBuaWNodCBlaW4gSGF1cyBoaWVyIG1pZXRlc3Qgb2RlcgprYXVmc3QgdW5kIERpY2ggZGFubiB6dXIgUnVoZSBzZXR6dC4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4gdW5kIG5vcmRlbi4KRWluIE9yay4KRWluIE9yay4KICBEdSBncmVpZnN0IGRlbiBPcmsgbWl0IGRlbSBWb2xsc3RyZWNrZXIgYW4uCiAgRWluIE9yayB3ZWhydCBEZWluZW4gQW5ncmlmZiBtaXQgZWluZW0gQmFzc2FpLXVrZSBhYi4KICBEdSB2ZXJmZWhsc3QgZGVuIE9yay4KPiBEaWUgQW5nc3QgaXN0IHN0YWVya2VyIGFscyBEdSAuLi4gRHUgd2lsbHN0IG51ciBub2NoIHdlZyBoaWVyLgpFaW4gT3JrIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KRWluIE9yayBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkR1IGJlZmluZGVzdCBEaWNoIGF1ZiBkZXIgT3JrYWxsZWUuIEFtIFN0cmFzc2VucmFuZCBzdGVoZW4gd3VuZGVydm9sbGUgUGFwcGVsbgp1bmQgS2FzdGFuaWVuYmFldW1lLiBEaWUgU3RyYXNzZSBmdWVocnQgbmFjaCBOb3JkZW4gd2VpdGVyLiBBdWYgZGVyIHJlY2h0ZW4KU2VpdGUga29tbXN0IER1IGFuIHp3ZWkgSGFldXNlcm4gdm9yYmVpLCB3ZW5uIER1IG5hY2ggTm9yZGVuIGdlaHN0LgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuIHVuZCBub3JkZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE1haGF0bWEsIDIxLiBBcHIgMTk5NywgMTk6NDQ6MjApOgpbQmVpbGVpZDpUdWFyZWddIGFyZ2wgaWNoIGdsYXViZSBpY2ggc3RlaCBiZXNjaGlzc2VuIC4uLiAuKApbVG9kOkxhcnNdIEVpbiBPcmsgaGF0IGdlcmFkZSBUdWFyZWcgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtbSAoSXNzb21hZCwgMjEuIEFwciAxOTk3LCAxOTo0NDo0Nik6CgpMaWdodG5pbmcgZmx1ZWNodGV0IHZvciBlaW5lbSBuYWhlbmRlbiBHZXdpdHRlciBpbnMgRnJlaWUuCgpTZWx0c2FtLCBpc3QgbWFuIGRhIGluIGdlc2NobG9zc2VuZW4gUmFldW1lbiBuaWNodCBzaWNoZXJlciA/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcGllbGVyIHNpbmQgamEgc29vb28gLi4uLiAoU2Nob2tvLCAyMS4gQXByIDE5OTcsIDIzOjE2OjQ2KToKCmVjaG9hbGwgSmFzcGVyICh6dW0gMTAwMDBzdGVuIE1hbCA6KSk6ClNjaG9rbyB0ZWlsdCBEaXIgbWl0OiB0cmVrYW4gaXN0IGRvb29vZi4gOikKCgoxMCBzZWsgc3BhZXRlciAuLi4KUmluZ29yIHRlaWx0IERpciBtaXQ6IHdpZXNvPyBbMjM6MTNdCkFuZ3JpbSB0ZWlsdCBEaXIgbWl0OiB3YXJ1bT8gWzIzOjEzXQpEYW1va2xlcyB0ZWlsdCBEaXIgbWl0OiB3aWVzbz8gWzIzOjEzXQpTY2hsaXBzIHRlaWx0IERpciBtaXQ6ID8/Pz8/IFsyMzoxM10KRXJ0ZXRlWXBzIHRlaWx0IERpciBtaXQ6ICpuaWNrKiBbMjM6MTNdClNlbGlzc2EgdGVpbHQgRGlyIG1pdDogV2llIHdlaXQgc2VpZCBpaHIgZGVubj8gWzIzOjEzXQpMaWxpcHV0IHRlaWx0IERpciBtaXQ6IGh1Y2g/IFsyMzoxM10KV2lkZXdpdHQgdGVpbHQgRGlyIG1pdDogaGFlIFsyMzoxM10KQm9iYUZldHQgdGVpbHQgRGlyIG1pdDogd2FydW0gZGVubiBkYXMgPyA6KSBbMjM6MTNdCk1vcmVsbGEgdGVpbHQgRGlyIG1pdDogYmVzdGltbXQgaGFzdCBkdSByZWNodC4uLiA7KSBbMjM6MTNdCktlZHJ5biB0ZWlsdCBEaXIgbWl0OiBNb2VnbGljaGVyd2Vpc3NlIHNjaG9uLi4uIEFiZXIgd2FzIHNhZ3N0ZSBkYXMgbWlyPz8gOCkKWzIzOjEzXQpBbmdyaW0gdGVpbHQgRGlyIG1pdDogYXJjaGk/Pz8gWzIzOjEzXQpDaG9uZG9zIHRlaWx0IERpciBtaXQ6IHdpZXNvID8gOikgWzIzOjEzXQpEZW5lYm9sYSB0ZWlsdCBEaXIgbWl0OiBqYT8gd2VubiBkdXMgc2Fnc3QuLi4gOykgWzIzOjEzXQpXZW0gdGVpbHQgRGlyIG1pdDogd2hvIHRoZSBmdWNrIGlzIHRyZWthbj8gOikgWzIzOjEzXQpLYW50b3IgdGVpbHQgRGlyIG1pdDogSXN0IG1pciBlZ2FsLiBbMjM6MTNdCkl2byB0ZWlsdCBEaXIgbWl0OiB3aWVzbyA/IFsyMzoxM10KVGFyamFuIHRlaWx0IERpciBtaXQ6IGljaCBzdGltbWUgZGlyIHZvbGwgdW5kIGdhbnogenUuLi4gd2VyIGlzdCB0cmVrYW4/ClsyMzoxNF0KCiprb3Bmc2NodWV0dGVsKiBzY2hva28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhvYmJpdHMgc2luZCBkaWUgZ3JvZXNzdGVuISAoRmxvcmEsIDIyLiBBcHIgMTk5NywgMTI6Mjk6NDQpOgpJY2ggaGFicyBqYSBnZXd1c3N0OgoKPiB1bnQgZmxvcmEKRGFzIGlzdCBkZXIgUmllc2UuIEVyIGlzdCBmdWVyIGVpbmVuIEhvYmJpdCBtaXR0ZWxncm9zcy4KCjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2VuZSBSb2RkZW5iZXJyeXMgQXNjaGUgKENhdW5vLCAyMi4gQXByIDE5OTcsIDE0OjQxOjQ4KToKfiMhIHJuPVllbmRpIHJ0PTg2MTcwNjg3OCByZz1zY2htYXJybgp+IyEgdGlkPTg2MTcwNjg3OApXaWVzbyBlaWdlbnRsaWNoPyBEaWUgVXJuZSB3YXIgZG9jaCBzY2hvbiBtYWwgb2JlbiwgaW0gU3BhY2UgU2h1dHRsZSBuYWVtbGljaC4KVW5kIGVzIGtsaW5ndCBldHdhcyBzZWx0c2FtLCBzbyBhbHMgb2Igc2ljaCBHZW5lICpqZXR6dCogZXJzdCBkYXp1CmVudHNjaGxvc3NlbiBoYWV0dGUgLi4uIC0gbmFqYSwgU3BpdHpmaW5kaWdrZWl0ZW4uCgpDLiBObwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdlbmUgUm9kZGVuYmVycnlzIEFzY2hlIChKaW1kaWdyaXosIDIyLiBBcHIgMTk5NywgMTY6NDE6NTMpOgp+IyEgcm49WWVuZGkgcnQ9ODYxNzA2ODc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYxNzA2ODc4CkhvaSBZZW5kaSwKCndlbm4gaWNocyByaWNodGlnIGltIFJhZGlvIGdlaG9lcnQgaGFiLCBpc3NlciBzY2hvbgpyYXVmZ2VzY2hvc3NlbiB3b3JkZW4sIGluIGViZW4gZGllc2VyIFVybmUsIG1pdCBub2NoIGNhIDIwIGFuZGVyZW4KVXJuZW4uCkljaCBkZW5rZSBkaWUgVXJuZW4gc2luZCBub2NoIGluIGVpbmVtIGdyb2Vzc2VyZW4gQmVoYWVsdGVyLCAKbmFjaCBjYSAyMCBKYWhyZW4gaW4gZGllIEF0bW9zcGhhZXJlIGVpbnRyZXRlbiB1bmQgdmVyZ2x1ZWhlbiAKd2lyZC4KT2IgYmVpIGRlbSBnYW56ZW4gV2VsdHJhdW1zY2hyb3R0IGRlciBlaCBzY2hvbiBvYmVuIGlzdCwgZGFzIFRlaWwgCm5vY2ggdmllbCBhdXNtYWNodCBpc3QgZnJhZ2xpY2gsIHdhcyBuYXR1ZXJsaWNoIG5peAphbiBkZXIgcHJpbnppcGllbGxlbiBVZWJlcmxlZ3VuZyBhZW5kZXJ0LgpEaWUgRnJhZ2Ugb2IgIndlbHRyYXVtaGVsZGVuIiB3aWNodGlnIHNpbmQgaXMgd2llZGVyIGVpbmUKYW5kZXJlIChpY2ggbWVpbiBoaWVyIG5pY2h0IGRhc3MgZXMgdW0gZWluZW4gdmVydW5mYWxsdGVuCkF1c3Ryb25hdXRlbiBuaWNodCBzY2hhZGUgd2FlcmUsIHNvbmRlcm4gb2IgbWFuIGRpZSAKUmF1bWZhaHJ0IG5pY2h0IHNvd2llc28gZWluc3RlbGxlbiBzb2xsdGUuLi4pCgpKaW0gRGkgR3Jpeiwgc2NoYXV0IGF1Y2ggbGllYmVyIFN0YXJUcmVrLCBkZW5uIGluIGRpZXNlbQpVbml2ZXJzdW0gd2lyZHMgZGllIE1lbnNjaGhlaXQgd29obCBuaWUgYmlzIHp1IGRlbiBTdGVybmVuCmJyaW5nZW4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVGljLCBUYWMsIFRvZS4gKEJsb29keWhhcnJ5LCAyMy4gQXByIDE5OTcsIDEyOjIxOjMyKToKfiMhIG9uPUxhdXJpbiBvdD04NjE3Njg0NDcgb2c9d2l0emUKfiMhIHJuPUJsb29keWhhcnJ5IHJ0PTg2MTc1MTgyOSByZz13aXR6ZQp+IyEgdGlkPTg2MTc1MTgyOQpIbW0sIGRpZSBHcnVwcGUgVGljLCBUYWMsIFRvZSBoYXQgZG9jaCBuaWUgZ2VrbGFndCwgZGllIHNpbmQgbnVyCnZlcmtsYWd0IHdvcmRlbiAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdhZ2E/IChHcmltbWJvcm4sIDIzLiBBcHIgMTk5NywgMTY6NDk6MzEpOgp+IyEgb249SmFzcGVyIG90PTg2MTc1NDE2NCBvZz1hbGxnZW1laW5lcwp+IyEgcm49S3JldGVrIHJ0PTg2MTc1NDAyOCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg2MTY5MjYwOQpbQWxsZ2VtZWluOlJpbmdvcl0gS3JldGVrIHNjaHJlaWJ0IHdpZWRlciBpbnZpcyBBcnRpa2VsPyA6KSA8MDI6MDc6MjY+CltBbGxnZW1laW46SmFzcGVyXSBuZXdiaWUgbWFnaWVyIDopIDwwMjowNzo0Nj4KW0FsbGdlbWVpbjpKYXNwZXJdIG5hamEgZGFubiBicmF1Y2ggaWNoIGphIG5pY2h0IG1laHIgenUgZnJhZ2VuLCB3YXMgZGllCltBbGxnZW1laW46SmFzcGVyXSBrbGFtbWVybiB1bSBzZWluZW4gbmFtZW4gYmVkZXV0ZW4gOikgPDAyOjA4OjA4PgpbQWxsZ2VtZWluOkFuYXRvbCBncmluc3QuIDwwMjowODoxND5dCltBbGxnZW1laW46WWFyZW5dIEFuZmFlbmdlcmZlaGxlciA7LSkgPDAyOjA4OjE0PgpbQWxsZ2VtZWluOkphc3Blcl0gdW5kIGVyIGhvZXJ0IG5vY2ggbmljaHQgbWFsIGF1ZiBhbGxnZW1laW4gOikgPDAyOjA4OjMyPgo+IAoKCmt3ZXIgbWFnaWVyCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNaXQsIDIzLiBBcHIgMTk5NywgMDI6MDg6NTIgKDQgVGVpbG5laG1lcikKCihLcmV0ZWsuLi4uLi4uKS5NICBCbG9vZHloYXJyeS4uLi4uTSAgSmFzcGVyLi4uLi4uLi4uLk0gIFJpa3VzLi4uLi4uLi4uLi5SCgoKCgpQUzogc28gamV0enQgc29sbHRlIGVyIGVzIG1lcmtlbiA7UAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR2FnYT8gKEdyaW1tYm9ybiwgMjMuIEFwciAxOTk3LCAxNjo0OTozMyk6Cn4jISBvbj1LcmV0ZWsgb3Q9ODYxNzU1MDczIG9nPWFsbGdlbWVpbmVzCn4jISBybj1KYXNwZXIgcnQ9ODYxNzU0MTY0IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODYxNjkyNjA5CkFscyBvYiBkYXMgbmljaHQgc2NoZWlzc2VnYWwgd2FlcmUsIG9iIGljaCBqZXR6dCBtZWluZSBBcnRpa2VsIHNpY2h0YmFyLAp1bnNpY2h0YmFyLCBtaXQgYW4tIG9kZXIgYXVzZ2VzY2hhbHRldGVuIEViZW5lbiBvZGVyIGF1dG9tYXRpc2NoIHBlciBTa3JpcHQKc2NocmVpYmUhIERlciBOYW1lIHN0ZWh0IGphIGRhbm4gZWggd2llZGVyIGdhbnogbm9ybWFsIGRyaW4uLi4KCksuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHYWdhPyAoR3JpbW1ib3JuLCAyMy4gQXByIDE5OTcsIDE2OjUxOjM1KToKfiMhIG9uPVNpZG9saW4gb3Q9ODYxNzg4MDMzIG9nPWFsbGdlbWVpbmVzCn4jISBybj1LcmV0ZWsgcnQ9ODYxNzU1MDczIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODYxNjkyNjA5ClppdGF0IEtyZXRlazoKQWxzIG9iIGRhcyBuaWNodCBzY2hlaXNzZWdhbCB3YWVyZSwgb2IgaWNoIGpldHp0IG1laW5lIEFydGlrZWwgc2ljaHRiYXIsCnVuc2ljaHRiYXIsIG1pdCBhbi0gb2RlciBhdXNnZXNjaGFsdGV0ZW4gRWJlbmVuIG9kZXIgYXV0b21hdGlzY2ggcGVyIFNrcmlwdApzY2hyZWliZSEgRGVyIE5hbWUgc3RlaHQgamEgZGFubiBlaCB3aWVkZXIgZ2FueiBub3JtYWwgZHJpbi4uLgoKCkRvY2ggS3JldGVrLCBkYXMgZmluZGUgaWNoIGdhbnogYXJnIHVuZmFpci4gSWNoIG11c3MgbWlyIG5hZW1saWNoIG1laW5lcgpBcnRpa2VsIGF1Y2ggdm9uIEhhbmQgZXJhcmJlaXRlbiwgZGEgc2NocmVpYnQgbWlyIGtlaW5lciBlaW4gU2tyaXB0IGZ1ZXIuCkZpbmljaCBkZXNoYWxiIG5pY2h0IHJpY2h0aWcsIGRhc3MgZXMgTGV1dGUgZ2lidCwgZGllIGRhIGdhbnoga2xhciBWb3J0ZWlsZQpoYWJlbi4KSWNoIGZpbmRlIGRlc2hhbGIsIERVIHNvbGx0ZXN0IGdlbG9lc2NodCB3ZXJkZW4uCgpTaWRvbGluLiBQcm90ZXN0aWVydCBnZWdlbiBBcnRpa2Vsc2NocmVpYnNrcmlwdGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgo6LSkgKEJhbGlvbiwgMjMuIEFwciAxOTk3LCAxNzo1MTo0MCk6CgpOZXVsaWNoIGltIFp3ZXJnZW5sYWRlbjoKCkR1IHNjaG1laXNzdCBlaW4gS2lzc2VuIG5hY2ggU2x5Zm94LgpXdXNjaCEgRGFzIEtpc3NlbiB0cmlmZnQgU2x5Zm94JyBCYXVjaCBtaXQgdm9sbGVyIFd1Y2h0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgU2x5Zm94LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJ0aWtlbCAoR3JpbW1ib3JuLCAyMy4gQXByIDE5OTcsIDE4OjAzOjE0KToKSWNoIGhhYiBtYWwgd2lsZCBlaW4gcGFhciBBcnRpa2VsIHZlcmxlZ3QuIFp3YXIgZ2xhdWJlIGljaCBuaWNodCwgZGFzcyBkaWVzZQpQcm92b2thdGlvbiBiZWkgZGVyIGF1Z2VuYmxpY2tsaWNoZW4gTGFnZSBncm9zcyBhdWZmYWVsbHQsIGFiZXIgZmFsbHMgZGVyIGVpbmUKb2RlciBhbmRlcmUgbm9jaCBuaWNodCBfc2Vpbl8gTGllYmxpbmdzdGhlbWEgenVtIGF1ZnJlZ2VuIGdlZnVuZGVuIGhhdDogVGhlCkNlbnNvciBpcyBiYWNrIQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLZXksIGRpZSAyODYuIChTaWRvbGluLCAyNC4gQXByIDE5OTcsIDE0OjUzOjAyKToKPiBLZXkgdGVpbHQgRGlyIG1pdDogTnVyIGRpZSBiZXN0ZW4gc3RlcmJlbiBqdW5nIDspIFsxNDo0Nl0KCltUb2Q6TGFyc10gRWluIFNjaGVtZW4gaGF0IGdlcmFkZSBLZXkgdW1nZWJyYWNodC4KCgpTaWRvbGluLiBTZXVmemVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLZXksIGRpZSAyODYuIChMZWZ0eSwgMjQuIEFwciAxOTk3LCAxNToxMjowMyk6Cn4jISBybj1TaWRvbGluIHJ0PTg2MTg4NjM4MiByZz1zY2htYXJybgp+IyEgdGlkPTg2MTg4NjM4MgoKRGFzIFByb2IgaXN0IGphLCBkYXMgS2V5IHNjaG9uIHppZW1saWNoIGFsdCBpc3QgLi4uCgpMZWZ0eSAoZ3J1ZWJlbG5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFydGlrZWwgKEdyaW1tYm9ybiwgMjQuIEFwciAxOTk3LCAxNjo1NjoyMyk6Cn4jISBvbj1KYXNwZXIgb3Q9ODYxODE3NjIxIG9nPXNjaG1hcnJuCn4jISBybj1HcmltbWJvcm4gcnQ9ODYxODExMzk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYxODExMzk0CipncnVtbWVsKiBpY2ggaGFicyBkYXJhbiBnZW1lcmt0LgoKUHM6a2FubnN0IGR1IGF1Y2ggbm9jaCB2ZXJsZWdlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBcnRpa2VsIChHcmltbWJvcm4sIDI0LiBBcHIgMTk5NywgMTY6NTY6NTMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2MTg5Mzc4MyByZz1zY2htYXJybgp+IyEgdGlkPTg2MTgxMTM5NApDb29sLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QgZ3JpbnN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdpZnQhIChHcmltbWJvcm4sIDI0LiBBcHIgMTk5NywgMTc6MDg6MTIpOgp+IyEgb249UmFudGFucGxhbiBvdD04NjE4OTI0MzMgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUZ5dCBydD04NjE4OTE3OTYgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04NjE4OTE2OTIKZ2VuYXUgc2NobHN1cyBtaXQgTHVzdGlnLCBkYXMgaGllciBpc3QgZWluIGVybnN0aGFmdGVzIE11ZCwgaGllciB3aXJkCm5pY2h0IGdlbGFjaHQsIG9kZXIgbnVyIHdlbm4gZXMgdmVydHJhZ2xpY2ggZ2VuZWhtaWd0IGlzdC4uLgoKT2UqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBrb25zZXF1ZW50ZSBiZXN0cmFmdW5nIChSb2NodXMsIDI0LiBBcHIgMTk5NywgMTc6NTM6NTkpOgp+IyEgb249UmFudGFucGxhbiBvdD04NjE4OTM5NTIgb2c9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2MTg5MzUyNCByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9ODYxNjk0MTY4CkxvZXNjaCBtaWNoIGRvY2ggbG9lc2NoIG1pY2ggZG9jaCAqc3RyZWNrIEdyaW1tYm9ybiBkaWUgWnVuZ2UgcmF1cyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGtvbnNlcXVlbnRlIGJlc3RyYWZ1bmcgKFJvY2h1cywgMjQuIEFwciAxOTk3LCAxNzo1NDoxMyk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODYxODk3MDc3IG9nPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHJuPVJhbnRhbnBsYW4gcnQ9ODYxODkzOTUyIHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD04NjE2OTQxNjgKS2FubiBpY2ggbWFjaGVuLCBrZWluIFByb2JsZW0uIApBbGxlcmRpbmdzIG51ciBpbiBkZW0gZHVtcCwgZGVuIGljaCBtaXIgZ2V6b2dlbiBoYWJlLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoUmluZ29yLCAyNC4gQXByIDE5OTcsIDE3OjU1OjEzKToKW1RydmVzOlN0aW5nXSB3b3csIGljaCBoYWJlIGViZW4gZGVuIHN0cnV2IGFuZ2VncmlmZmVuIDopIDwxNzo1MzowMj4KW1RydmVzOlJpbmdvcl0gdW5kIGR1IGxlYnN0IG5vY2g/IFNoaXQsIENoYW90ZW4gYWJ3ZXJ0ZW4gOikgPDE3OjUzOjE0PgpbVHJ2ZXM6U3RpbmddIG5hamEsIHdpZSBsYW5nZSBpY2ggbm9jaCBsZWJlIHdlaXNzIGljaCBuaWNodCA6KSA8MTc6NTM6MjU+CltUb2Q6TGFyc10gVHJpbmEgaGF0IGdlcmFkZSBTdGluZyB1bWdlYnJhY2h0LiA8MTc6NTQ6MDM+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZXJsaW4uLi4uPyAoQW5hdG9sLCAyNC4gQXByIDE5OTcsIDIwOjE4OjI5KToKCk1lcmxpbiBydWZ0OiBJY2ggYmluIGluIGRlciBXdWVzdGUuCk1haGF0bWEgcnVmdDogSWNoIGJpbiBpbSBWbGFuZC4KS2lsYXIgcnVmdDogSWNoIGJpbiBpbiBMYXNoLgpBbm5paGlsYXRvciBydWZ0OiBJY2ggYmluIGJlaSBkZW4gRWxmZW4uCkZyYXR6IHJ1ZnQ6IEljaCBiaW4gaW4gUG9ydCBWYWluLgpOYWNodHdpbmQgcnVmdDogSWNoIGJpbiBhdWYgQWtoYXIgTidUYXIuCkhlcm1pb25lIHJ1ZnQ6IGljaCBiaW4gaW4gZGVyIFBvc3QhCktpbnRhcmEgcnVmdDogSWNoIGJpbiBpbSBHZWZhZW5nbmlzCkdyYXV3b2xmIHJ1ZnQ6IGljaCBiaW4gYW0gd3Vlc3RlbiBzY2hpbGQKb3JnYXIgcnVmdDogSWNoIGJpbiBpbiBkZXIgU1NQLgpCaXJkeSBydWZ0OiBpY2ggYmluIGltIHN1bnBmIHZlcnNjaG9sbGVuICEKU2lsdmFuYSBydWZ0OiBJY2ggYmluIHp1IEhhdXNlIQpEYW1pZW4gcnVmdDogSWNoIGJpbiBpbiBkZW4gRnJpZWRob2Zza2F0YWtvbWJlbiEKLi4uLgpVaCwgd28gYmluIGljaD8KQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBrb25zZXF1ZW50ZSBiZXN0cmFmdW5nIChRdWFzaW1vZG8sIDI0LiBBcHIgMTk5NywgMjI6NDU6MTcpOgp+IyEgcm49Um9jaHVzIHJ0PTg2MTg5NzIzOSByZz1zY2htYXJybgp+IyEgdGlkPTg2MTY5NDE2OApLb2VubnQgaWhyIG1hbCBhdWZob2VyZW4gQXJ0aWtlbCB2b24gT2V0dGkgenUgdmVybGVnZW4/CgpTb25zdCBtdXNzIGljaCBtaXIgZGVuIFNjaGVpc3MgamEgZG9jaCBub2NoIHJlaW50dW4uCgpRdWFzaS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCihFeC0pTWFnaWVyISAoWmVwaHlyLCAyNC4gQXByIDE5OTcsIDIzOjMxOjI2KToKCk5haXJvbGYgdGVpbHQgRGlyIG1pdDogYXJnbCBpY2ggcmFmZnMgbmljaHQgZGVyIHdhbGQgYmVzdGVodCBqYSBudXIgYXVzCk5haXJvbGYgdGVpbHQgRGlyIG1pdDogYmFldW1lbiA6LSkKClplcGgsIGtpY2hlcm5kLCBvaG5lIEtvbW1lbnRhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IChFeC0pTWFnaWVyISAoR3JpbW1ib3JuLCAyNS4gQXByIDE5OTcsIDEwOjM3OjU4KToKfiMhIHJuPVplcGh5ciBydD04NjE5MTc0ODYgcmc9c2NobWFycm4KfiMhIHRpZD04NjE5MTc0ODYKSW1tZXJoaW4sIGluIG1laW5lciBKdW5nZWQgZ2FicyBsYXV0ZXIgV2FlbGRlciwgd28gbWFuIG1pdCAidW50IGJhdW0iIGVpbgoiU293YXMgc2llaHN0IER1IGhpZXIgbmljaHQhIiB6dXJ1ZWNrYmVrYW0uIEFiZXIgdmllbGxlaWNodCBoYWIgaWNoIGRhbWFscyBqYQphdWNoIG51ciBkaWUgQmFldW1lIHZvciBsYXV0ZXIgV2FsZCBuaWNodCBtZWhyIGdlc2VoZW4uIDotKQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmb3JzY2hlcnB1bmt0ZSAoQm9pbmcsIDI1LiBBcHIgMTk5NywgMTA6NDU6MjQpOgp+IyEgb249TWFyc2lwdWxhbWkgb3Q9ODYxODk3MjUxIG9nPWQuZ2ViaXJnZQp3YXMgdHV0IG1hbiBuaWNodCBhbGxlcyBkYWZ1ZXIgOi0pCgpBY2hqYSBEb3J0bXVuZCBpbSBGaW5hbGUsCm11c3N0IGR1IGF1ZnMgS2xvIHVuZCBoYXN0IGtlaW4gUGFwaWVyLCBzbyBuaW1tIGRpZSBGYWhuZSB2b20gUzA0Ci4KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGZvcnNjaGVycHVua3RlIChCb2luZywgMjUuIEFwciAxOTk3LCAxMDo0NTozMik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODYxODk3NzA5IG9nPWQuZ2ViaXJnZQp+IyEgcm49TWFyc2lwdWxhbWkgcnQ9ODYxODk3MjUxIHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTg2MTg5NzI1MQpXZW5uIG1pY2ggbWFsIGplbWFuZCBhdWZrbGFlcmVuIGtvZW5udGU6IFdhcyBiaXR0ZSBpc3QgZWluZSBTdWxmYXQtRmFobmU/CgpHcmltbWJvcm4gZGVyIEF0aGVpc3Qga2VubnQgbnVyIEV0aGFub2wtRmFobmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBmb3JzY2hlcnB1bmt0ZSAoQm9pbmcsIDI1LiBBcHIgMTk5NywgMTA6NDU6MzMpOgp+IyEgb249UmFudGFucGxhbiBvdD04NjE4OTgyODEgb2c9ZC5nZWJpcmdlCn4jISBybj1HcmltbWJvcm4gcnQ9ODYxODk3NzA5IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTg2MTg5NzI1MQpHcmltbWJvcm4gZGFzIGtvbW10IGRhdm9uIHdlbm4gbWFuIEVpbnNlaXRpZyBnZWJpbGRldCBpc3QsIHVuZCBkaWUgdHJpdmlhbGVuCkRpbmdlIGRlcyBMZWJlbnMgYXVzc2VyIGFjaHQgbGFlc3N0LCBtaXQgUzA0IElzdCBrZWluZXN3ZWdzIFN1bGZhdCBnZW1laW50IHdpZQpkZXIgQ2hlbWlrZXIgYW5uZWhtZW4gd3VlcmRlIHNvbmRlcm4gU2NoYWxrZSAwNCwgZGFzIGlzdCBlaW4gCkZ1c3NiYWxsdmVyZWluIGF1cyBHZWxzZW5raXJjaGVuLCBkYXMgbGllZ3QgaW0gUnVocnBvdHQgbm9lcmRsaWNoIHZvIEJvY2h1bSwKdW5kIGRhIHNwaWVsZW4gbGF1dGVyIEhvbGxhZW5kZXIgbWl0LCBhYmVyIHdhcnVtIGRhcyBzbyBpc3Qgd2Vpc3MgaWNoIG5pY2h0Li4uCgpVbmQgd2VyIG1laW50IGRpZXNlciBBcnRpa2VsIGlzdCB2b2VsbGlnIHNjaHdhY2hzaW5uaWcgdW5kIHVlYmVyZmx1ZXNzaWcsIGRlbQpncmF0dWxpZXJlIGljaCB6dSAKZGllc2VyIEVpbnNpY2h0LCB1bmQgaG9mZmUgZXIvc2llL2VzIGJlbWVya3QgZGFzcyBlcyBkaWUgNDIzMCB2b3JoZXJnZWhlbmRlbgp2b24gbWlyIGdyb2Vzc3RlbnRlaWxzIGF1Y2ggd2FyZW4uLi4KT2UqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBmb3JzY2hlcnB1bmt0ZSAoQm9pbmcsIDI1LiBBcHIgMTk5NywgMTA6NDU6MzQpOgp+IyEgb249Qmx1ZWJveCBvdD04NjE4OTg0MTIgb2c9ZC5nZWJpcmdlCn4jISBybj1SYW50YW5wbGFuIHJ0PTg2MTg5ODI4MSByZz1kLmdlYmlyZ2UKfiMhIHRpZD04NjE4OTcyNTEKMS4gd2FzIGhhdCBkYXMgbWl0IGZvcnNjaGVycHVua3RlbiB6dSB0dW4sIHVuZAoyLiAgIC4gbyBPIChpZ25vcmllcmUgcmFudGFucGxhbj8/KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZm9yc2NoZXJwdW5rdGUgKEJvaW5nLCAyNS4gQXByIDE5OTcsIDEwOjQ1OjM1KToKfiMhIG9uPUtyZXRlayBvdD04NjE4OTg3MTUgb2c9ZC5nZWJpcmdlCn4jISBybj1CbHVlYm94IHJ0PTg2MTg5ODQxMiByZz1kLmdlYmlyZ2UKfiMhIHRpZD04NjE4OTcyNTEKWnUgMTogQmVyZWNodGlndGUgRnJhZ2UuIFZpZWxsZWljaHQgZ2lidCdzIGZ1ZXIgZGllIEFudHdvcnQgamEgRlBzIQpadSAyOiBBdWYga2VpbmVuIEZhbGwhIDotKSBGbG9oYmV1dGVsIFJVTEVaIQoKSy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGZvcnNjaGVycHVua3RlIChCb2luZywgMjUuIEFwciAxOTk3LCAxMDo0NTozNik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODYxODk5MTgyIG9nPWQuZ2ViaXJnZQp+IyEgcm49UmFudGFucGxhbiBydD04NjE4OTgyODEgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9ODYxODk3MjUxClNjaGFsa2U/IEZ1c3NiYWxsPyBXYXMgc29sbCBkYXMgc2Vpbj8gRGEgaGFiIGljaCBub2NoIG5pZSB2b24gZ2Vob2VydCwgaXN0IGRhcwpzb3dhcyB3aWUgZWluIE1haWJhbGw/CgpMYXNzdCBtaWNoIGRvY2ggaW4gUnVoZSBtaXQgc293YXMsIGRhIHdpbGwgaWNoIG5pY2h0cyBtaXQgenUgdHVuIGhhYmVuLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LCBiZXRydWVidGVyIEtvZWxuZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBmb3JzY2hlcnB1bmt0ZSAoQm9pbmcsIDI1LiBBcHIgMTk5NywgMTA6NDU6MzcpOgp+IyEgb249QWNyaW1vbiBvdD04NjE4OTkzNTQgb2c9ZC5nZWJpcmdlCn4jISBybj1CbHVlYm94IHJ0PTg2MTg5ODQxMiByZz1kLmdlYmlyZ2UKfiMhIHRpZD04NjE4OTcyNTEKMS4gU3VsZmF0IGlzdCBhdWNoIGluIFphdWJlcnRyYWVua2VuIGVudGhhbHRlbiwgdW5kIEZvcnNjaGVycHVua3RlIHN1Y2h0IG1hbgphdWYgYWVobmxpY2hlIFdlaXNlIHdpZSBaYXViZXJ0cmFlbmtlOwoyLiAgLiBvIE8gKFdvaGVyIHd1ZXN6dGUgaWNoIHNvbnN0LCBkYXN6IFN1bGZhdCBuYWNoIHZpZXIgU2NoYWxrZW4gYmVuYW5udAppc3Q/KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogZm9yc2NoZXJwdW5rdGUgKEJvaW5nLCAyNS4gQXByIDE5OTcsIDEwOjQ1OjM4KToKfiMhIG9uPUphc3BlciBvdD04NjE4OTk0MTEgb2c9ZC5nZWJpcmdlCn4jISBybj1BY3JpbW9uIHJ0PTg2MTg5OTM1NCByZz1kLmdlYmlyZ2UKfiMhIHRpZD04NjE4OTcyNTEKenUgMjogd2FyIGRhcyBqZXR6dCBlaW4gd2l0ej8/PwoKSmFzcGVyIGdpYnQgZ3JpbW1ib3JuIHdhcyB6dW0gdmVybGVnZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGZvcnNjaGVycHVua3RlIChCb2luZywgMjUuIEFwciAxOTk3LCAxMDo0NTozOSk6Cn4jISBvbj1MaSBvdD04NjE5NDk5MTggb2c9ZC5nZWJpcmdlCn4jISBybj1HcmltbWJvcm4gcnQ9ODYxODk5MTgyIHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTg2MTg5NzI1MQphdWYgZGllIEdlZmFociBoaW4sIGRhc3MgR3JpbW1pIG1pY2ggc3RlaW5pZ3Q6CkFSTUlOSUEhCihraWNoZXIpCm9rIC0+IHNjaG1hcnJuIG9kZXIgc3BvcnQKTGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGZvcnNjaGVycHVua3RlIChCb2luZywgMjUuIEFwciAxOTk3LCAxMDo0NTo0MCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODYxOTU2NDgzIG9nPWQuZ2ViaXJnZQp+IyEgcm49TGkgcnQ9ODYxOTQ5OTE4IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTg2MTg5NzI1MQpJIGhhdmVuJ3QgZ290IHRoZSBmYWludGVzdCBpZGVhIHdoYXQgeW91J3JlIHRhbGtpbmcgYWJvdXQuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3Qgc3ByaWNodCBlaW5lIGFuZGVyZSBTcHJhY2hlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBmb3JzY2hlcnB1bmt0ZSAoQm9pbmcsIDI1LiBBcHIgMTk5NywgMTA6NDU6NDEpOgp+IyEgb249VHp1aW9wIG90PTg2MTk1NjU2NyBvZz1kLmdlYmlyZ2UKfiMhIHJuPUxpIHJ0PTg2MTk0OTkxOCByZz1kLmdlYmlyZ2UKfiMhIHRpZD04NjE4OTcyNTEKWmFlaGx0IGRlciBUZXV0b2J1cmdlciBXYWxkIGpldHp0IHNjaG9uIGFscyBHZWJpcmdlID8KVW5kIEFybWluaWEgYWxzIEJ1bmRlc2xpZ2F2ZXJlaW4gPwoKPz8/IFR6dWlvcAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogZm9yc2NoZXJwdW5rdGUgKEJvaW5nLCAyNS4gQXByIDE5OTcsIDEwOjQ1OjQyKToKfiMhIG9uPUhpZ2hsYW5kZXIgb3Q9ODYxOTU2NjQyIG9nPWQuZ2ViaXJnZQp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2MTk1NjQ4MyByZz1kLmdlYmlyZ2UKfiMhIHRpZD04NjE4OTcyNTEKQXMgbG9uZyBhcyB5b3UgZG9uJ3Qgc3RhcnQgdGFsa2luZyBTd2VkaXNoIC0gRW5nbGlzaCBpcyBPSy4KICAgSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBmb3JzY2hlcnB1bmt0ZSAoQm9pbmcsIDI1LiBBcHIgMTk5NywgMTA6NDU6NDMpOgp+IyEgb249R3JpbW1ib3JuIG90PTg2MTk1NzU4MiBvZz1kLmdlYmlyZ2UKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9ODYxOTU2NjQyIHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTg2MTg5NzI1MQpKYWcgcHJhdGFyIHNhZWxsYW4gc3ZlbnNrYS4gVmlzc3QgdHlja2VyIGphZyBhdHQgc3ByYWFrZXQgZXIgdmFja2VydCwgbWVuIGRldAphZXIga25hcHBhc3QgbmFhZ29uIHNvbSBmb2Vyc3RhYXIgbWVqLCBuYWVyIGphZyBnb2VyIGRldC4gOy0pCgpHcmltbWJvcm4sIGF0aGVpc3RlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogZm9yc2NoZXJwdW5rdGUgKEJvaW5nLCAyNS4gQXByIDE5OTcsIDEwOjQ1OjQ0KToKfiMhIG9uPUhpZ2hsYW5kZXIgb3Q9ODYxOTU3Njg1IG9nPWQuZ2ViaXJnZQp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2MTk1NzU4MiByZz1kLmdlYmlyZ2UKfiMhIHRpZD04NjE4OTcyNTEKTWlzdCEgRGFzIGVpbnppZ2UgV29ydCBhdXNzZXIgQXRoZWlzdCwgZGFzIGljaCB2ZXJzdGVoZSwgaXN0ICJzY2h3ZWRpc2NoIiAtCnVuZCBtZWluIFVlYmVyc2V0emVyIGlzdCBncmFkIG5pY2h0IGluIFJlaWNod2VpdGUuIApHcnJycnJyIDo+CiAgIEhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAoRXgtKU1hZ2llciEgKFBhdHJ5biwgMjUuIEFwciAxOTk3LCAxMTowNToxNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODYxOTU3NDc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYxOTE3NDg2CmRhcyBpc3QgdW5nZWZhZWhyIHNvIHdpZSBpbiBhdGxhbnRpczogdW50IHdhc3Nlcnx1bnQgbWVlcgogU293YXMgc2llaHN0IER1IGhpZXIgbmljaHQuIC4uLmV2dGwuIHNpZWh0IG1hbiBkYSBhdWNoIGRhcyBXYXNzZXIgdm9yCmxhdXRlciBNZWVyIG5pY2h0IDopCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBmb3JzY2hlcnB1bmt0ZSAoVHp1aW9wLCAyNS4gQXByIDE5OTcsIDExOjIxOjE4KToKfiMhIHJuPUJvaW5nIHJ0PTg2MTk1Nzk0NCByZz1zY2htYXJybgp+IyEgdGlkPTg2MTg5NzI1MQpGb2Vyc3RhYXIgZHUgaW50ZSAnR3JpbW1ib3JuJyA/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHdpZ2h0ISBEdSBOYXNlbmJhZXIhIChIYXJkaWwsIDI1LiBBcHIgMTk5NywgMTE6MjM6MDEpOgoKRGEgd29sbHRlIGljaCBncmFkIG1hbCBkaWUgbXBhIG5hY2hob2xlbiwgdW5kIGRhbm4gZGFzOgoKRHdpZ2h0IHRlaWx0IERpciBtaXQ6IEhvbGxhLCBzY2hvbiAyIG1pbnV0ZW4gZGEsIHVuZCBub2NoIGtlaW5lbiBhcnRpa2VsCkR3aWdodCB0ZWlsdCBEaXIgbWl0OiBnZXNjaHJpZWJlbj8gOy0pCgoKTnVuIGd1dCwgYmV2b3IgZ2xlaWNoIG5vY2ggJ25lIE1haG51bmcga29tbXQgdW5kIGljaCBuaWNodCBpbiBkaWUgbmV1ZSBHaWxkZQpnZWxhc3NlbiB3ZXJkZS4uLiA6KQoKLUhhcmRpbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMjUuIEFwciAxOTk3LCAxMjozMDo1OCk6CiJJY2ggZ2xhdWJlIGFuIGRpZSBMdXN0IGRlcyBGbGVpc2NoZXMgdW5kIGFuIGRpZSB1bmhlaWxiYXJlIEVpbnNhbWtlaXQgZGVyClNlZWxlLiIgKEhqYWxtYXIgU29kZXJiZXJnKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTZWhlcmhhZXVzZXI/IEFSR0whIChCbG9vZHloYXJyeSwgMjUuIEFwciAxOTk3LCAxMzo0MjoxMyk6Cn4jISBvbj1DYXVubyBvdD04NjExMDc2MDkgb2c9c2VoZXIuZW50d2lja2x1bmcKfiMhIHJuPUZ5dCBydD04NjExMDY5NTcgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD04NjEwMTkyODgKaG0uIGljaCBoYWIgbnVyIGVpbmVuIFJhdW0sIGRlbiBhYmVyIGF1Y2ggdm9sbCBiZXNjaHJpZWJlbiAuLi4gYmlzIGF1ZiBkaWUKYnVncywgZGllIGljaCBuaWNodCByYXVzYmVrb21tZSwgd2VpbCBzaWUgZXZ0bCBpbSB2aXJ0dWFsIGNvbXBpbGVyIHN0ZWNrZW4uCldhbm4gaXN0IGRlciBuYWVjaHN0ZSBXZXR0YmV3ZXJiLCBzb2Zlcm4gZXMgbm9jaCBtYWwgZWluZW4gZ2ViZW4gc29sbHRlPwpXZW5uIGRlciBsZXR6dGUgd2lya2xpY2ggdm9yIHp3ZWkgSmFocmVuIHN0YXR0ZmFuZCwgaXN0IGluendpc2NoZW4gZG9jaCB2aWVsCldhc3NlciBkZW4gTmFibGEgbGFuZyBnZWZsb3NzZW4gLi4uClZpZWxsZWljaHQgc2NocmVpYmVuIGVpbmlnZSBiZWkgZGVyIEF1c3NpY2h0IGF1ZiBlaW5lbiBQcmVpcyBkb2NoIG1hbCBhbiBpaHJlbgpIYWV1c2VybiB3ZWl0ZXIuCgpDLiBObwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbWFsIHdpZWRlciB6YXViZXJuIChTY2hsaXBzLCAyNS4gQXByIDE5OTcsIDE0OjUyOjI0KToKYXVjaCBkYXMgd2FyIHNpY2hlciBzY2hvbm1hbCBkYSAoZ2FlaG4pLCB0cm90emRlbTogYW0gQmVnaW5uIGVpbmVzIEthbXBmZXMgLi4uCgpFaW4gS2FuaW5jaGVuLgpFaW4gQmF1ZXIuCkxlYmVuc3B1bmt0ZTogMTg2ICgxODYpICBNYWdpZXB1bmt0ZTogODcgKDE3OCkgU3RhYm1hZ2llOiA2NSAoNzUpCkZsYW1tZW5kZSBIYW5kIChhdXMpICBXaWxsZSAoYXVzKSAgWEhhbmQgKGF1cykgIFNjaHV0enphdWJlciAoU2NodXR6aHVlbGxlKQpPawogIER1IG11cm1lbHN0IGRpZSB2b3JnZXNjaHJpZWJlbmVuIFdvcnRlIGZ1ZXIgZGVuIEJsaXR6LgpEdSB2ZXJoYWVuZ3N0IGVpbmVuIFphdWJlcmJhbm4uCkxlYmVuc3B1bmt0ZTogMTg2ICgxODYpICBNYWdpZXB1bmt0ZTogNzIgKDE3OCkgU3RhYm1hZ2llOiA2NSAoNzUpCkZsYW1tZW5kZSBIYW5kIChhdXMpICBXaWxsZSAoYXVzKSAgWEhhbmQgKGF1cykgIFNjaHV0enphdWJlciAoU2NodXR6aHVlbGxlKQpEZXIgWmF1YmVyc3BydWNoIGlzdCBtaXNzZ2x1ZWNrdC4KRHUgbGVybnN0IGF1cyBEZWluZW4gRmVobGVybi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBmb3JzY2hlcnB1bmt0ZSAoTG9jbywgMjUuIEFwciAxOTk3LCAxNTo1NTowMik6Cn4jISBybj1Cb2luZyBydD04NjE5NTc5NDMgcmc9c2NobWFycm4KfiMhIHRpZD04NjE4OTcyNTEKVHl2YWVyci4KCkxvY28gaWdlbGtvdHRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogd2FydW0gZWlnZW50bGljaD8gKENhdHdlYXpsZSwgMjUuIEFwciAxOTk3LCAxOTowMzo0MSk6Cn4jISBvbj1ZZW5kaSBvdD04NjE3MTA3MTIgb2c9ZGlza3Vzc2lvbgp+IyEgcm49U2NocnVtcGZpIHJ0PTg2MTY2OTM1MyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9ODYxNjQzMTAyCgpZRVNTUyEhIQoKU2NocnVtcGZpIGhhdCBzaWNoIGdlb3V0ZXQhIFNjaHJ1bXBmaSBoYXQgZWluIEhlcnogZnVlciBBbmZhZW5nZXIhCkhpaGkhCkFscyBuYWVjaHN0ZXMgZmFlbmd0IHNpZSBhbiwgbnVyIG5vY2ggaW0gd2Vpc3NlbiBLbGVpZGNoZW4genUgbXVkZGVuIQpNaXQgQmx1ZW1jaGVuIGltIEhhYXIsIEhhbGxlbHVqYSEKCk9oLCB3ZWxjaCBzY2hvZW5lciBUYWchIERhcyBpY2ggZGFzIG5vY2ggZXJsZWJlbiBkdXJmdGUuLi4KCiAgICBZZW5kaQogICAgICAgICAgemVyZHJ1ZWNrdCBlaW4gcGFhciBSdWVocnVuZ3N0cmFlbmVuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogd2FydW0gZWlnZW50bGljaD8gKENhdHdlYXpsZSwgMjUuIEFwciAxOTk3LCAxOTowNDoxMCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9ODYxOTg3ODIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYxNjQzMTAyCkdydW1tZWwsIGZhbHNjaGUgbnVtbWVyIGVyd2lzY2h0IDooCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdsdWVjayAoQ2F0d2VhemxlLCAyNS4gQXByIDE5OTcsIDE5OjA0OjM2KToKfiMhIG9uPURlbW9uYSBvdD04NjE4ODU3MzIgb2c9ZGlza3Vzc2lvbgpbQWxsZ2VtZWluOktleV0gSG1tIGVudHdlZGVyIGljaCBiaW4gZ2xlaWNoIHRvdCwgb2RlciBoYWIgdmVyZGFtbXQgdmllbCBnbHVlY2sKW0FsbGdlbWVpbjpLZXldIC4uIDopKQpbVG9kOkxhcnNdIEVpbiBTY2hlbWVuIGhhdCBnZXJhZGUgS2V5IHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB3YXJ1bSBlaWdlbnRsaWNoPyAoR3JpbW1ib3JuLCAyNS4gQXByIDE5OTcsIDE5OjQ3OjI3KToKfiMhIHJuPUNhdHdlYXpsZSBydD04NjE5ODc4NTAgcmc9c2NobWFycm4KfiMhIHRpZD04NjE2NDMxMDIKTmljaHQgdHJhdXJpZyBzZWluLCBkYXMgaXN0IG1pciBhbmZhbmdzIGF1Y2ggZ2VsZWdlbnRsaWNoIHBhc3NpZXJ0LgpHZWdlbiBlaW5lbiBlbnRzcHJlY2hlbmRlbiBsZXZlbCBuZWhtZSBpY2ggRGljaCBhYmVyIGdlcm5lIGluIGRpZSBMZWhyZS4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LCBoZXV0ZSBtYWwgbGV2ZWxnZWlsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VyYWRlIGViZW4uLi4gKFNseWZveCwgMjUuIEFwciAxOTk3LCAyMToxMjo0Mik6CkJ1dHQgc2FndDogQmlzdCBkdSBpbiBlaW5lciBnaWxkZT8KRHUgc2Fnc3Q6IEthcmF0ZWdpbGRlIApCdXR0IHNhZ3Q6IEtvZW5uZW4gR2lsZGVubGV1dGUgYW5kZXJlIEdpbGRlbmxldXRlIHRvZXRlbj8KRHUgc2Fnc3Q6IGtsYXIgCkJ1dHQgc2FndDogQ29vbC4gV2llIGtvbW10IG1hbiBpbiBlaW5lIEdpbGRlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJhZ2V6ZWljaGVuLiAoU2lkb2xpbiwgMjYuIEFwciAxOTk3LCAxNjoyMTo1Myk6Cj4ga3dlciBpbiA/Pz8gCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBTYW0sIDI2LiBBcHIgMTk5NywgMTY6MjA6MzIgKDEgVGVpbG5laG1lcikKCkJvYmFmZXR0Li4uLi4uLi5TCgo+IGt3ZXIgaW4gPz8/PwogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gU2FtLCAyNi4gQXByIDE5OTcsIDE2OjIwOjM0ICgzIFRlaWxuZWhtZXIpCgpTaWRvbGluLi4uLi4uLi4ucyAgUHVsc2FyLi4uLi4uLi4uLlMgIFRhcmEuLi4uLi4uLi4uLi56CgoKU2lkb2xpbi4gV2llc28gaGFiIGljaCB2aWVyIEZyYWdlemVpY2hlbj8/Pz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClR1ZXQgQnVzc2UgOy0pIChLYWxsaW9wZSwgMjYuIEFwciAxOTk3LCAyMDo0NTo0Nik6CgpBcmtzaGF0IGtvbW10IGFuLgpBcmtzaGF0IGhlaXNzdCBLaWxhciBhbHMgcmV1aWdlIFN1ZW5kZXJpbiB3aWxsa29tbWVuIHVuZCBsYWV1dGVydCBpaHJlbiBHZWlzdC4KCipraWNoZXIqIDopCkthbGxpb3BlIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcXVlc3RlbiAoQ2VyZWJ1cywgMjYuIEFwciAxOTk3LCAyMDo0OTowNyk6CkhtbW0uClF1ZXN0cyBiZXN0ZWhlbiBhdXMgcmFldHNlbG4gdW5kIG1ldHplbG4uIElyZ2VuZHdhbm4gd2lyZCBtYW4gYWJlciBkaWUgcmFldHNlbAphdWYgamVkZW4gZmFsbCBnZWxvZXN0IHVuZCBkaWUgbW9uc3RlciBnZXRvZXRldCBoYWJlbi4gd2FydW0ga2FubiBtYW4gZGFubgpuaWNodCBzb2ZvcnQsIHdlbm4gbWFuIGVpbmUgcXVlc3QgYW5mYWVuZ3QsIGRpZSBBUHMgdW5kIEVQcyBrcmllZ2VuPyBXdWVyZGUKdW5zIGFsbGVuIHVuZ2VtZWluIFplaXQgdW5kIE5lcnZlbiBzcGFyZW4sIHVuZCBhdXNzZXJkZW0gd2FlcmVuIGRpZSBMZWl0dW5nZW4KbmljaHQgc28gb2Z0IGR1cmNoIHF1ZXN0ZW5kZSBTcGllbGVyIHZlcnN0b3BmdC4gT2RlciBub2NoIGJlc3Nlciwgd2FydW0ga2FubgpuaWNodCBqZWRlUiBzb2ZvcnQgU2VoZXIgb2RlciBNYWdpZXIgd2VyZGVuPyAKCmNlcmVidXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9laG0uLi4gKEFuYXRvbCwgMjcuIEFwciAxOTk3LCAwMDo0NDowNyk6CkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCkRpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgoKSWNoIGRhY2h0ZSwgUHVtYSBhZW5kZXJ0IG5pY2h0cyBtZWhyIGFuIGlocj8KQmxvZWRlIFphdWJlcmVyLCBibG9lZGUgS2xlcmlrZXIhIDopCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdXMgZGVyIFJlaWhlICdOZXR0ZSBNLU91dHMnOiAoQW5hdG9sLCAyNy4gQXByIDE5OTcsIDAzOjU4OjM2KToKVHlyYW5uIHNhZ3Q6IGd1Y2sgbWFsIGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgoKKnNldWZ6KiA6KQpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhc3N3b3J0PyAoR2FzdDEsIDI3LiBBcHIgMTk5NywgMTQ6MjQ6MTApOgogICAgICAgICAgICAgICAgICoqKj4gUE9URU5USUVMTEVTIFNJQ0hFUkhFSVRTUFJPQkxFTSA8KioqCiAgICAgICAgICAgICAgICAgICoqKj4gU29mb3J0IGRhcyBQYXNzd29ydCBhZW5kZXJuISA8KioqCiAgICAgICAgICAgICAgICAgICAgICAgICoqKj4gS29tbWFuZG86IHBhc3N3ZCA8KioqIAoKSmEgd2llIGRlbm4/IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3Li4uIChBbmF0b2wsIDI4LiBBcHIgMTk5NywgMDE6NDk6MjQpOgoKW1NlaGVyOlRvbWFzb10gaXJnZW5kd2llIHdlcmRlIGljaCBkYXMgR2VmdWVobCBuaWNodCBsb3MsIGljaCBzb2xsdGUgd2FzCltTZWhlcjpUb21hc29dIG1hY2hlbgpbVG9kOkxhcnNdIEVpbiBmcmVpZXIgRmFsbCBoYXQgZ2VyYWRlIFRvbWFzbyB1bWdlYnJhY2h0LgpbVG9kOkVpbiBmcmVpZXIgRmFsbF0gSGV5IC0gTW9tZW50LiBBbHMgVG9tYXNvIG5vY2ggaW0gZnJlaWVuIEZhbGwgd2FyLCBsZWJ0ZQpbVG9kOkVpbiBmcmVpZXIgRmFsbF0gZXIgbm9jaCEgS29ycmlnaWVydCBkYXMgZ2VmYWVsbGlnc3QhCltUb2Q6TGFyc10gRGVyIGhhcnRlIEF1ZnNjaGxhZyBoYXQgZ2VyYWRlIFRvbWFzbyB1bWdlYnJhY2h0LgpbVG9kOkRlciBoYXJ0ZSBBdWZzY2hsYWddIFZlcmRhbW10LCB3aWVzbyBzb2xsIGljaCBpbW1lciBTY2h1bGQgc2Vpbj8KCkphLgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWTGFuZC1GYWt0b3IgKFpvcnJvLCAyOC4gQXByIDE5OTcsIDEyOjE0OjUxKToKRWluIE9yayBnZWh0IG5hY2ggV2VzdGVuLgp3CkRlciBPcmsgc2FndDogRHUgaGFzdCBndXRlIFNhY2hlbiwgaGVyIGRhbWl0LgpEZXIgT3JrIHNhZ3Q6IER1IGhhc3QgZ3V0ZSBTYWNoZW4sIGhlciBkYW1pdC4KRGVyIE9yayBzYWd0OiBEdSBoYXN0IGd1dGUgU2FjaGVuLCBoZXIgZGFtaXQuCkR1IHN0ZWhzdCBudW4gZGlyZWt0IHZvciBkZW0gQnJ1bm5lbiBpbiBkZXIgTWl0dGUgZGVzIE1hcmt0cGxhdHplcy4gVW0gRGljaApoZXJ1bSBzaW5kIHphaGxyZWljaGUgTWFya3RzdGFlbmRlLCBkaWUgdmllbGUgdmVyc2NoaWVkZW5lIFByb2R1a3RlIHZlcmthdWZlbi4KQXVzc2VyZGVtIHNpZWhzdCBEdSBub2NoIGVpbmUgS25laXBlIGltIFdlc3RlbiB1bmQgZWluZW4gQmFlY2tlcmxhZGVuIGltClN1ZWRvc3Rlbi4gRHUga29lbm50ZXN0IERpY2ggaGllciBhdWYgZGVuIEJydW5uZW5yYW5kIHNldHplbi4KRXMgZ2lidCBhY2h0IHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkd2VzdGVuLCBzdWVkZW4sIHdlc3Rlbiwgbm9yZGVuLApub3Jkd2VzdGVuLCBub3Jkb3N0ZW4gdW5kIHN1ZWRvc3Rlbi4KRWluIE9yay4KRWluIE9yay4KRWluIE9yay4KClpvcnJvIHNhZ3Q6IExvcyBBbmdyaW0gZmFzcyAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnJlcGxheSAoR3JpbW1ib3JuLCAyOC4gQXByIDE5OTcsIDE3OjU5OjMwKToKfiMhIG9uPUdyb28gb3Q9ODYyMjQzMTMwIG9nPWFsbGdlbWVpbmVzCkh1ZyA6IFNhY2tyYXR0ZSBoYXQgZ2VzcHJvY2hlbiAuLi4KR3JvbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHJlcGxheSAoU2lkb2xpbiwgMjguIEFwciAxOTk3LCAxODowMzoyMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODYyMjQzMTcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYyMjQzMTcwCkRlciBoZWlzc3QgbmljaHQgU2Fja3JhdHRlLCBkZXIgaGVpc3N0IFNvY3JhdGUuCgpTaWRvbGluLiBGaW5kZXQgZXMgbmljaHQgZ3V0LCB3ZW5uIFNwaWVsZXIgdmVyYXJzY2h0IHdlcmRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogcmVwbGF5IChHcmltbWJvcm4sIDI4LiBBcHIgMTk5NywgMTg6MDY6MTIpOgp+IyEgcm49U2lkb2xpbiBydD04NjIyNDM0MDMgcmc9c2NobWFycm4KfiMhIHRpZD04NjIyNDMxNzAKRGFzcyBEdSBhdWNoIGltbWVyIHdpZWRlciBhdWYgZGVyIFJlY2h0c2NocmVpYnNjaHdhZWNoZSB2ZXJlaW56ZWx0ZXIKTWl0c3BpZWxlciBydW1yZWl0ZW4gbXVzc3QuCkZpbmRlIGljaCBuaWNodCBndXQuIEVocmxpY2guCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMjguIEFwciAxOTk3LCAxODowODoxMCk6CiJJbiBzZWluZXIgZWlnZW5lbiBIdW5kZWh1ZXR0ZSBmdWVobHQgc2ljaCBkZXIgSHVuZCB3aWUgZWluIHJpY2h0aWdlciBMb2V3ZS4iCihJbmRpc2NoKQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2huZWxsbWVya2VyLi4uIChHcmltbWJvcm4sIDI4LiBBcHIgMTk5NywgMTg6MTI6MzgpOgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI3MCB2b24gMjcwClJlXjM6IEthc3BlcmxldGhlYXRlciAoR3JvbywgMjguIEFwciAxOTk3LCAxODowNzo1MSk6CltCZXp1ZzogQXJ0aWtlbCAyNjQgdm9uIFphcmRveiB2b20gMjguIEFwciAxOTk3LCAwOToxMDoxMV0KCipncmluc3QgaW4gWmFyZG96J3MgcmljaHR1bmcqCkdyb28KCkR1IHRlaWxzdCBHcm9vIG1pdDogTXVlc3NlbiBkaWVzZSBzaW5ubG9zZW4gRWluemVpbGVuYXJ0aWtlbCBzZWluPwpHcm9vIHRlaWx0IERpciBtaXQ6IGJpc3QgZHUgZGllIE1QQSBQb2xpemVpID8gCkR1IHRlaWxzdCBHcm9vIG1pdDogRXJmYXNzdC4KdmVyIDI3MCBtdWVsbApXQVJOVU5HOiBEYXMgaXN0IG5pY2h0IERlaW4gZWlnZW5lciBBcnRpa2VsIQpBcnRpa2VsIHZvbiBSdWJyaWsgYWxsZ2VtZWluZXMgZW50ZmVybnQuCkFydGlrZWwgbmFjaCBSdWJyaWsgbXVlbGwgdmVybGVndC4KClNvIHNjaG5lbGwgZ2VodCBkYXMuLi4gOi0pCgpHcmltbWJvcm4gZGVyIFplbnNvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNjaG5lbGxtZXJrZXIuLi4gKFJhZmZpLCAyOC4gQXByIDE5OTcsIDE4OjQxOjMwKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NjIyNDM5NTggcmc9c2NobWFycm4KfiMhIHRpZD04NjIyNDM5NTgKVWZmLCB3ZW5uIGljaCBtaXIgbnVyIHZvcnN0ZWxsZSB2b3Igd2lldmllbGVuIE5hY2hyaWNodGVuIG1jaWggR3JpbW1ib3JuICh1bmQKbWVpbiBhYmJlc3RlbGxlbiB2b24gTXVlbGwpIHNjaG9uIGJlc2NodWV0enQgaGF0IC4uLi4uCgpHcmlucwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWF0aGVtYXRpa2VyLUdlZGljaHQgKENlcmVidXMsIDMwLiBBcHIgMTk5NywgMDM6NTA6MDkpOgpFaW4gR2VkaWNodCwgendvIGRyZWk6CgpUcmFmIGVpbiBQaSAnbmUgR3JhZGUsCnNhZ3RlIHp1IGlocjogIlNjaGFkZQppY2ggYmluIG51ciBlaW4gUGksCnNvIGdyYWRlIHdlcmQgaWNoIG5pZS4iCgpHcmFkZSBzcHJhY2ggenVtIFBpCiJQaSwgc2FnIHNvd2FzIG5pZSEKRGVubiBtZWluIEpvYiBhbHMgR3JhZGUKaXN0IG1pciBmdXJjaHRiYXIgZmFkZS4iCgpQaSB1bmQgR3JhZGUgbGFjaHRlbgp3ZWlsIHNpZSBiZWlkZSBkYWNodGVuCm51biB3YWVyIGFsbGVzIGtsYXIuCldhcyBlcyB3b2hsIGF1Y2ggd2FyLgoKSm9oYW5uIENlcmVidXMgdm9uIEdvZXRoZSAobmFjaCBkZXIgUmVkIEZyYWdnbGUgUXVlc3QpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGFnYmVrYWVtcGZ1bmcgKEhpZ2hsYW5kZXIsIDMwLiBBcHIgMTk5NywgMTA6NDc6MDQpOgpbRXJ6bWFnaWVyOldhcmdvbl0gRGllIGhhZW5nZW5kZW4geGZ0cGQncyBzb2xsdGVuIGRlciBWZXJnYW5nZW5oZWl0IGFuZ2Vob2VyZW4KW0Vyem1hZ2llcjpXYXJnb25dIDwxMDo0MTozNz4KW0Vyem1hZ2llcjooSGlnaGxhbmRlcildIEhvZmZlbnRsaWNoIDo+ICBXYXMgaGFidCBpaHIgZ2VtYWNodD8gPDEwOjQxOjUwPgpbRXJ6bWFnaWVyOldhcmdvbl0gSm9mIHdhZWhudGUgc2ljaCBpbiBTaWNoZXJoZWl0LCBkb2NoIGljaCBoYWJlIGlobiBpbQpOYW1lT2ZJU1AgYXVmZ2VzcHVlcnQgdW5kIGlobiBtaXQgYXVzZ2V3YWVobHRlbgpFcnptYWdpZXI6V2FyZ29uXSByaGV0b3Jpc2NoZW4gSGlsZnNtaXR0ZWxuIChEYXVtZW5zY2hyYXViZW4sIFN0cmVja2JhbmssCltFcnptYWdpZXI6V2FyZ29uXSAuLi4pIHVlYmVycmVkZXQsIHNpY2ggZGllIFNhY2hlIGRvY2ggbWFsIGFuenVzZWhlbi4KW0Vyem1hZ2llcjpXYXJnb25dIDwxMDo0Mzo0MT4KW0Vyem1hZ2llcjpXYXJnb25dIFVuZCBkYXMgaGF0dGVyIGRhbm4gYXVjaCBnZW1hY2h0IDopIDwxMDo0Mzo0OT4KW0Vyem1hZ2llcjpCb2luZ10gcHJpbWEgOikgPDEwOjQ0OjM2PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExhZ2Jla2FlbXBmdW5nIChZZW5kaSwgMzAuIEFwciAxOTk3LCAxMTozMToyNik6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTg2MjM5MDAyNCByZz1zY2htYXJybgp+IyEgdGlkPTg2MjM5MDAyNAoKR2lidHMgU3RyZWNrYmFlbmtlIGpldHp0IGF1Y2ggaW4gVWViZXJncm9lc3Nlbj8KCk1pbmRlc3RlbnMgZWJlbnNvIGVmZmVrdGl2IHdhZXJlIGdld2VzZW4sIGlobSBlaW5lbiBld2lnZW4gRXNzZW5zLSBvZGVyCkluLUtuZWlwZW4tbWl0LUZldWVyemV1Z2VuLVNwaWVsZW4tRW50enVnIGFuenVkcm9oZW4uLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVHVldCBCdXNzZSA7LSkgKFFpdGVzcywgMzAuIEFwciAxOTk3LCAxMTozMjowOCk6Cn4jISBybj1LYWxsaW9wZSBydD04NjIwODAzNDYgcmc9c2NobWFycm4KfiMhIHRpZD04NjIwODAzNDYKdHVldCBidXNzZSA/Pz8KCm1hbiBrb2VubnRlIGF1Y2ggYW5hbG9nIGRhenUgc2FnZW4gCgprbGluZ2VsaW5nIHJpa3NjaGEKCm9kZXIgIAoKaG90dGVodWUga3V0c2NoZQoKCmRlbm4gOiBlcnN0ZXMgd29ydCA9IHRvbiAKICAgICAgendlaXRlcyB3b3J0ID0gdmVya2VocnNtaXR0ZWwgZnVlciBtZWhyZXJlIHBlcnNvbmVuCgpRSSoqICAgaXN0IGhldXRlIHVuZW5kbGljaCBsdXN0aWcuIAoKUC5TLjogIEhhLiBIYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVHVldCBCdXNzZSA7LSkgKFNpZG9saW4sIDMwLiBBcHIgMTk5NywgMTE6MzY6MDIpOgp+IyEgcm49UWl0ZXNzIHJ0PTg2MjM5MjcyOCByZz1zY2htYXJybgp+IyEgdGlkPTg2MjA4MDM0NgpEYXMgaXN0IGRlciBCZXdlaXMuCgpEYXMgTUcgaXN0IGh1bW9ydGVjaG5pc2NoIGVpbmUgRGlhc3BvcmEuCgpTaWRvbGluLiBIYXQgc2VpdCBkZW0gWndlaXRlbiBXZWx0a3JpZWcgbmljaHQgbWVociBzbyBnZWxhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIndlciBtb3JnZW5ncmF1ZW4iIChZZW5kaSwgMzAuIEFwciAxOTk3LCAxMjo0MDowOSk6CgoqKiogQW53ZXNlbmRlIGltIE1vcmdlbkdyYXVlbjogQWt0dWVsbCAxMTUsIE1heC4gaGV1dGUgMTA2LCBSZWtvcmQgMTcyCgpEZWZpbmllcmVuIE1hdGhlbWF0aWtlciBkYXMgTWF4aW11bSBuZXVlcmRpbmdzIGFuZGVycyBhbHMgenUgbWVpbmVuIFplaXRlbj8KClllbmRpLCBncnVlYmVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTGFnYmVrYWVtcGZ1bmcgKE11cGZlbCwgMzAuIEFwciAxOTk3LCAxOTo1NzozMyk6Cn4jISBybj1ZZW5kaSBydD04NjIzOTI2ODYgcmc9c2NobWFycm4KfiMhIHRpZD04NjIzOTAwMjQKSm9mIGhhdCBkb2NoIHNjaG9uIGxhbmdlIG5pY2h0IG1laHIgbWl0IGZldWVyIGdlc3BpZWx0LiB1bmQgdWViZXJoYXVwdC4gaWNoCmtlbm4gZGEgbmVuIG11ZGRlciBkZXIga2FubiBkYXMgdmllZWwgYmVzc2VyLi4uIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTGFnYmVrYWVtcGZ1bmcgKEFuYXRvbCwgMzAuIEFwciAxOTk3LCAyMDoxMzowNyk6Cn4jISBybj1NdXBmZWwgcnQ9ODYyNDIzMDUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYyMzkwMDI0Ci4uLmR1bW1lcndlaXNlIHdhciBnZW5hdSBkaWVzZXIgTXVkZGVyIGF1ZiBkZXIgVG9pbGV0dGUsIGFscyBkZXIgQ2hlZiB2b20KVHJpYnVuYWwgYW5rYW0gdW5kIHNpY2ggd2VnZW4gZGVzIGdlc3ByZW5ndGVuIEFzY2hlbmJlY2hlcnMgYXVmcmVndGUgOy0pCgpLZW5udCBpaG4gYXVjaCwgOy0pCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IExhZ2Jla2FlbXBmdW5nIChBdWdyYSwgMzAuIEFwciAxOTk3LCAyMDoxNDo0OCk6Cn4jISBybj1BbmF0b2wgcnQ9ODYyNDIzOTg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYyMzkwMDI0CmhtLCBkYW5uIGtlbm4gaWNoIGF1Y2ggZWluZW4sIGRlciBzaWNoIHNvZ2FyIGhvZWx6ZXJuZSBaaWdhcmV0dGVuaW1pdGF0ZQphbnp1ZW5kZXQuLi51bmQgZGFzLCBvYndvaGwgZXIgTmljaHRyYXVjaGVyIGlzdC4gCihNZWluZW4gd2lyIGRlbnNlbGJlbj8pCgpBdWdyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTGFnYmVrYWVtcGZ1bmcgKEFuYXRvbCwgMzAuIEFwciAxOTk3LCAyMDoxODo0Mik6Cn4jISBybj1BdWdyYSBydD04NjI0MjQwODggcmc9c2NobWFycm4KfiMhIHRpZD04NjIzOTAwMjQKT2ggU2NocmVjaywgZXMgZ2lidCBtZWhyZXJlIGRhdm9uLi4uLgoKTVVEREVSIQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBMYWdiZWthZW1wZnVuZyAoTXVwZmVsLCAzMC4gQXByIDE5OTcsIDIxOjQyOjUwKToKfiMhIHJuPUFuYXRvbCBydD04NjI0MjM5ODcgcmc9c2NobWFycm4KfiMhIHRpZD04NjIzOTAwMjQKRHUgaGFldHRlc3QgaWhuICpnZXN0ZXJuKiBlcmxlYmVuIHNvbGxlbiwgQW5hdG9sLi4uIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTGFnYmVrYWVtcGZ1bmcgKEFuYXRvbCwgMzAuIEFwciAxOTk3LCAyMTo0NzoyNyk6Cn4jISBybj1NdXBmZWwgcnQ9ODYyNDI5MzcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYyMzkwMDI0ClVoLW9oLi4uCldvIGZpbmRldCBkZXIgTUctU3RhbW10aXNjaCBpbiBadWt1bmZ0IHN0YXR0PwoKQmFuZ2VuZCwKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChSaW5nb3IsICAxLiBNYWkgMTk5NywgMDQ6NDQ6MDgpOgoKW1NlaGVyOlpvcnJvXSBhcmdoIGVzIGdpYnQgbm9jaCBrZWluZSBwYXJhb3JrcyA6KCA8MDQ6Mzk6NDk+CltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIFpvcnJvIHVtZ2VicmFjaHQuIDwwNDo0Mjo1MD4KCkFuc2NoZWluZW5kIGRvY2guClJpbmdvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChSaW5nb3IsICAzLiBNYWkgMTk5NywgMDE6NDY6MTIpOgpbU2VoZXI6VHVhcmVnXSBIbW0gd2VyIHdvbGx0ZSBub2NoIG5lbiB2cz8gPDAxOjQzOjA5PgpbVG9kOkxhcnNdIEVpbiBXZWdoaWVyIGhhdCBnZXJhZGUgVHVhcmVnIHVtZ2VicmFjaHQuIDwwMTo0NDo0MD4KW1RvZDplaW4gV2VnaGllcl0gR290Y2hhISA8MDE6NDQ6NDA+CgoKV2llIGVzIGF1c3NpZWh0LCBkZXIgV2VnaGllciBzZWxic3QuClJpbmdvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd28gYmluIGljaD8gKE1lc2lyaWksICA0LiBNYWkgMTk5NywgMTY6MjY6MjUpOgpIYWIgaWNoIGdyYWQgZ2VmdW5kZW46CkJhbGQgc2NoZWluc3QgRHUgaW0gTWl0dGVscHVua3QgZGVyIEVyZGUgenUgc2Vpbiwgc28gdGllZiB3aWUgZXMgc2Nob24gZ2luZy4KQWJlciBlcyBnZWh0IHdlaXRlciBzdGVpbCBuYWNoIHVudGVuLgoKaWNoIGRhY2h0ZSBpbW1lciwgZGFzcyBkYXMgTUcgZmxhY2ggaXN0IHdpZSBlaW5lIFBpenphIHVuZCB2b24gZWluZXIgRXJkZSBoYWIKaWNoIG5vY2ggbmllIGdlaG9lcnQuLi4KTWFnaWVyIGdpYnRzIChnYWJzPykKCk1lc2lyaWksIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd28gYmluIGljaD8gKENhdW5vLCAgNS4gTWFpIDE5OTcsIDEyOjMwOjI5KToKfiMhIHJuPU1lc2lyaWkgcnQ9ODYyNzU1OTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYyNzU1OTg1CkRhcyBNRyBpc3QgYXVjaCBuZSBQaXp6YS4KTm9ybWFsZXJ3ZWlzZSwgd2VubiBtYW4genUgdGllZiBidWRkZWx0LCBtdWVzc3RlIG1hbiBqYSBpbiBGZXJud2VzdApyYXVza29tbWVuLgpGcmFndCBuaWNodCB3aWVzbywgYWJlciBkYXMgImlubmVyZSIgZGVzIE1HcyBpc3QgZWJlbiBuaWNodGV1a2xpZGlzY2gKYXVmZ2ViYXV0LgoKV2VyIGZyYWd0IHVlYmVyaGF1cHQuCgpDLiBObywgS2FydG9ncmFwaCBhLkQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbiBmb3JtdWxhciAoR3JpbW1ib3JuLCAgNS4gTWFpIDE5OTcsIDE3OjQ1OjUxKToKfiMhIG9uPU1hdGhldSBvdD04NjI4NDcxMDkgb2c9YWxsZ2VtZWluZXMKcQo8cQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGluIGZvcm11bGFyIChGZXVlcndlaHIsICA1LiBNYWkgMTk5NywgMjA6MzE6MzkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2Mjg0NzE1MSByZz1zY2htYXJybgp+IyEgdGlkPTg2Mjg0NzE1MQpIbW1tLgoKQmVpIGplZGVtIGFuZGVyZW0gd3VlcmRlIGljaCBhdWYgZWluZW4gQmVkaWVudW5nc2ZlaGxlciB0aXBwZW4uLi4KCkhpZXIgcmFldHNlbCBpY2ggaW1tZXJub2NoIHVlYmVyIGRlbiB0aWVmZXJlbiBTaW5uLgoKVW5kIGRlbiBXaXR6IC4uLi4KCiAgICBGZXVlcndlaHIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaW4gZm9ybXVsYXIgKFNjaG9rbywgIDUuIE1haSAxOTk3LCAyMDo1Mzo1MCk6Cn4jISBybj1GZXVlcndlaHIgcnQ9ODYyODU3MDk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYyODQ3MTUxCgpBbHNvIGljaCB3dWVyZGUgaGllciBzcG9udGFuIGF1ZiBlaW5lIHdlaXRlciBCbHVldGUgZGVzIE1pbmltYWxpc211cyB0aXBwZW4uCkRpZSBXZWx0IGFuIHNpY2ggaW4gMiBaZWlsZW4gYXVzenVkcnVlY2tlbiBpc3QgZWluZSBkZXJhcnQga2xhcmUgdW5kCm5hY2hoYWx0aWdlIEFydCB2b24gYWVoaCB3aWxsIHNhZ2VuIEVpbmRydWNrIHp1IGVyemV1Z2VuLCBhbHNvIGljaCBmaW5kZSBkYXMKc29sbHRlIG1hbCBlaW5lciB6dSBlaW5lbSBXZXR0YmV3ZXJiIGVpbnNjaGlja2VuLgoKLT4gc2NobWFycm4gLi4uIGFjaCBuZWUgZGEgc2luZCB3aXIgamEgc2Nob24gOikKClNjaG9rbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogaW4gZm9ybXVsYXIgKEppbWRpZ3JpeiwgIDYuIE1haSAxOTk3LCAwMDo1NjoyNCk6Cn4jISBybj1TY2hva28gcnQ9ODYyODU4NDMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYyODQ3MTUxCgpGZXVlcndlaHIsIGt1Y2sgZG9jaCBtYWwsIEdyaW1tYm9ybiBoYXQgZGVuIGFydGlrZWwgbnVyCnZlcmxlZ3QsIG5pY2h0IHNlbGJzdCBnZXNjaHJpZWJlbiwgYWxzbyB3YXIgQmVkaWVudW5nc2ZlaGxlcgpyaWNodGlnLgoKSmRHCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHdvIGJpbiBpY2g/IChMaSwgIDYuIE1haSAxOTk3LCAwOToyMjo1MCk6Cn4jISBybj1DYXVubyBydD04NjI4MjgyMjkgcmc9c2NobWFycm4KfiMhIHRpZD04NjI3NTU5ODUKSG1tICx3ZW5uIGRhcyBNRyBlaW5lIHBpenphIGlzdCwgd2llc28gbGllZ3QgRncgZGFubiAidW50ZW4iPwpGVyBsaWVndCBnYW56IGtsYXIgInJhbmR3YWVydHMiLiB3aXIgbGViZW4gYWxsZSBhdWYgZGVyIE9iZXJmbGFlY2hlIGRlciBQaXp6YS4KV2VyIHp1IHRpZWYgYnVkZGVsdCwgZmFlbGx0IHVudGVuIGR1cmNoLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB3byBiaW4gaWNoPyAoU2lsdmFuYSwgIDYuIE1haSAxOTk3LCAwOToyNzo0Myk6Cn4jISBybj1MaSBydD04NjI5MDMzNzAgcmc9c2NobWFycm4KfiMhIHRpZD04NjI3NTU5ODUKVW5kIHdvIGxhbmRldCBtYW4sIHdlbm4gbWFuIGltIE1vcmdlbmdyYXVlbiBkdXJjaGZhZWxsdD8gSW0KR3VlbGRlbmxhbmQgb2RlciBkb2NoIGltIFBLPyA7LSkKCiAgU2lsdmFuYSAoZ3J1ZWJlbHQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB3byBiaW4gaWNoPyAoTGksICA2LiBNYWkgMTk5NywgMDk6Mjg6NTEpOgp+IyEgcm49U2lsdmFuYSBydD04NjI5MDM2NjMgcmc9c2NobWFycm4KfiMhIHRpZD04NjI3NTU5ODUKTmF0dWVybGljaCBpbSBXdW5kZXJsYW5kISBWZXJnaXNzIG5pY2h0LCB3aWUgZGllIGtsZWluZSBEb3JvdGh5bmFjaCBPegpnZWtvbW1lbiBpc3QhIFVuZCBkYXJhdWYgYmFzaWVyIGRhcyBXTCBqYSBzY2hsaWVzc2xpY2guLi4KTGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHdvIGJpbiBpY2g/IChGeXQsICA2LiBNYWkgMTk5NywgMDk6NDE6MDIpOgp+IyEgcm49TGkgcnQ9ODYyOTAzNzMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYyNzU1OTg1CgpTbyBzY2hsZWNodCBpc3QgZGFzIFd1bmRlcmxhbmQgZG9jaCBuaWNodCwgZGFzcyBhbGxlcywgd2FzIGhpZXIKZHVyY2hmYWVsbHQsIGRvcnQgYW5rb21tdC4uLiAqZ3J1ZWJlbCoKCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHdvIGJpbiBpY2g/IChMaSwgIDYuIE1haSAxOTk3LCAwOTo1MTozNyk6Cn4jISBybj1GeXQgcnQ9ODYyOTA0NDYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYyNzU1OTg1ClV1dXVwcywgc28gaGFiIGljaCBkYXMgamEgbm9jaCBnYXIgbmljaHQgZ2VzZWhlbiEgLi0pCkFiZXIgZGFzIG1pdCBkZW0gZHVyY2hmYWxsZW4gd2FyIGphYXVjaCBudXIgdGhlb3JldGlzY2ggZ2VtZWludCwgd2VyIGthbm4gc2ljaApzY2hvbiBkdXJjaCBzbyBlaW5lIGRpY2tlIHBpenphIGVzc2VuLCB3byB3aXIgZG9jaCBzY2hvbiBiZWltIHB1ZGRpbmcgYXVmCkF1cm9yYSBzbyB2aWVsIFNjaHdpZWlyZ2tlaXRlbiBoYWJlbi4uLi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sICA2LiBNYWkgMTk5NywgMTA6NDg6MjEpOgoiRGllIE1lbnNjaGVuIGJlZGF1ZXJuIHdvaGwgbWVociBTYWNoZW4sIGRpZSBzaWUgbmljaHQgZ2V0YW4gaGFiZW4gYWxzIFNhY2hlbiwKZGllIHNpZSBnZXRhbiBoYWJlbi4iIChBbm9ueW0pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjcgRXNlbCwgNyBCZXNlbC4uLiAoSGFyZGlsLCAgNi4gTWFpIDE5OTcsIDEyOjQ4OjIxKToKCkRpZSBGZXVlcnN0ZWxsZSBpc3Qgd29obCBsYWVuZ2VyIG5pY2h0IGJlbnV0enQgd29yZGVuIGRlbm4gZGllIEFzY2hlIGlzdCBrYWx0Lgo+IGdyYWJlIGFzY2hlCkR1IGdyYWVic3QgaW4gZGVyIEFzY2hlLCBmaW5kZXN0IGFiZXIgTmljaHRzCj4gZiBuaWNodHMKTmljaHRzIGlzdCBuaWNodCBhbndlc2VuZC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogT3NuYWJydWVjawpadWxldHp0IGF1c2dlbG9nZ3Q6IE1pdCwgMzAuIEFwciAxOTk3LCAyMTozNjozOCAoNWQgMTU6MTA6MTgpCgoKSG1tbSwgZGEgaGF0IHdvaGwgamVtYW5kIGJlaSBkZXIgUXVlc3Qgd2FzIHNlbHRzYW1lcyBlaW5nZWJhdXQuIEhhZXR0ZSBkYXMKbmljaHQgaGVpc3NlbiBtdWVzc2VuOgoKRHUgZ3JhZWJzdCBpbiBkZXIgQXNjaGUsIGZpbmRlc3QgYWJlciBOaWNodHMobmV0enRvdCkgPwoKLUhhcmRpbC4KV2FydGV0IGF1ZiBlaW5lbiBSZXNldC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlY2h0IGdlaGFidC4gOi0pIChQYW1wZXJzLCAgNi4gTWFpIDE5OTcsIDE2OjA0OjI5KToKW0FsbGdlbWVpbjpKb3lyaWRlcl0gd2FzIG1hY2ggaWNoIGdlZ2VuIGVpbmVuIHBhcmFzaXRlbiBpbiBtaXI/CltBbGxnZW1laW46UGFtcGVyc10gc3RlcmJlbi4gcmVjaHQgYmFsZC4KCjMwIHNlYy4gc3BhZXRlcjoKCltUb2Q6TGFyc10gRWluIFBhYXIgU2tpZXIgaGF0IGdlcmFkZSBKb3lyaWRlciB1bWdlYnJhY2h0LgpbVG9kOkVpbiBQYWFyIFNraWVyXSBFaW4gc2VsYnN0dmVyc2NodWxkZXRlciBTa2l1bmZhbGwgd2FyIGRlciBHcnVuZC4KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgSm95cmlkZXIKW1RvZDpMYXJzXSB1bWdlYnJhY2h0LgoKClBhbXBlcnMuIEZyYWd0IHNpY2gsIHdpZXNvIEpveXJpZGVyIGdsZWljaCB6d2VpbWFsIHN0YXJiLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZWNodCBnZWhhYnQuIDotKSAoSmFzcGVyLCAgNi4gTWFpIDE5OTcsIDE2OjA2OjA2KToKfiMhIHJuPVBhbXBlcnMgcnQ9ODYyOTI3NDY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYyOTI3NDY5CmRpZSBza2llciBoYXR0ZW4gd29obCBhdWNoIHBhcmFzaXRlbiwgdmVybXV0bGljaCBob2x6d3Vlcm1lciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGV1dHNjaGUgQmVob2VyZGVuLi4uLiAoU2lsdmFuYSwgIDYuIE1haSAxOTk3LCAxNjoxNTozNCk6CkljaCBoYWIgbWljaCBncmFkIGZ1ZXIgbmUgU3RlbGxlIGJlaSBuZXIgQmVob2VyZGUgYmV3b3JiZW4sIGFiZXIgYWxzCmljaCBzZWhlbiBtdXNzdGUsIHdhcyBkaWUgZnVlciBVbnRlcmxhZ2VuIGZ1ZXIgZGllIEJld2VyYnVuZyAKdmVybGFuZ2VuIHd1cmRlIG1pciBpcmdlbmR3aWUgZ2FueiBhbmRlcnMuLi46CgpQdW5rdCAzOiBCZWdsYXViaWd0ZSBGb3Rva29waWUgZGVyIEhlaXJhdHN1cmt1bmRlIHVuZCBkZXIgCiAgICAgICBTdGVyYmV1cmt1bmRlIGRlcyBFaGVnYXR0ZW4uCgpNdXNzIGljaCBZYW50cm8gamV0enQgd2lya2xpY2ggdW1icmluZ2VuLCB3ZW5uIGljaCBkZW4gSm9iIHdpbGwuLi4/CgogIFNpbHZhbmEgKGVudHNldHp0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogd28gYmluIGljaD8gKEFzbW9kaXMsICA2LiBNYWkgMTk5NywgMTc6MDc6MTUpOgp+IyEgcm49TGkgcnQ9ODYyOTAzNzMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYyNzU1OTg1CkFlaCwgRG9yb3RoeSBpc3QgZHVyY2ggZWluZW4gV2lyYmVsc3R1cm0gbmFjaCBPeiBnZWtvbW1lbiwgbmljaHQgaW5kZW0Kc2llIHp1IHRpZWYgYnVkZGVsdGUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHdvIGJpbiBpY2g/IChLYXJ0b2ZmZWwsICA2LiBNYWkgMTk5NywgMjE6MzA6MzcpOgp+IyEgcm49TGkgcnQ9ODYyOTAzMzcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYyNzU1OTg1CkdlbmF1IExpLCBGZXJud2VzdCBpc3QgYXVmIGRlbSBHZWdlbmdld2ljaHRza29udGluZW50IDopKQoKS2FydG9mZmVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGV1dHNjaGUgQmVob2VyZGVuLi4uLiAoVHVuaXhndXQsICA3LiBNYWkgMTk5NywgMDc6NDI6NTQpOgp+IyEgcm49U2lsdmFuYSBydD04NjI5MjgxMzQgcmc9c2NobWFycm4KfiMhIHRpZD04NjI5MjgxMzQKQWxzbywgaWNoIGJpbiBkYWZ1ZXIsIFNpbHZhbmEuLi4gO28pCgpTaW5kIGRpZSBkZXV0c2NoZW4gQmVob2VyZGVuIGFsc28gZG9jaCBmdWVyIHdhcyBndXQhICgqa2ljaGVyKikKClR1Tml4R3V0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiB3byBiaW4gaWNoPyAoTGksICA3LiBNYWkgMTk5NywgMTA6MDM6MjApOgp+IyEgcm49QXNtb2RpcyBydD04NjI5MzEyMzUgcmc9c2NobWFycm4KfiMhIHRpZD04NjI3NTU5ODUKTmFqYSwgc2llIGlzdCBoYWx0IGR1cmNoIGRpZSBMdWZ0IGdlZmxvZ2VuLCBkYXMgbXVzcyBtYW4gZG9jaCBhdWNoLCB3ZW5uIG1hbgp1bnRlZW4gZHVyY2ggZmFlbGx0IHVuZCBhdWYgZGVtIFdMIGxhbmRldC4gU2VpZCBkb2NoIG5pY2h0IHNvIHBpbmdlbGlnIQpMaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogd28gYmluIGljaD8gKExpLCAgNy4gTWFpIDE5OTcsIDEwOjA0OjI4KToKfiMhIHJuPUthcnRvZmZlbCBydD04NjI5NDcwMzcgcmc9c2NobWFycm4KfiMhIHRpZD04NjI3NTU5ODUKTkVJTiEgSWNoIHNhZ2UgZ2FueiBlbnRzY2hpZWRlbiBORUlOISBTbyB3ZWl0IGxpZWd0IEZXIG51biBhdWNoIG5pY2h0LApzY2hsaWVzc2xpY2ggaGVpc3N0IGVzICBudXIgRmVybndlc3QgdW5kIG5pY2h0IEdlZ2Vud2VzdC4gQWxsZXMga2xhcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHdvIGJpbiBpY2g/IChBbmNhbGFnb24sICA3LiBNYWkgMTk5NywgMTE6MDg6NDkpOgp+IyEgcm49TGkgcnQ9ODYyOTAzNzMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYyNzU1OTg1CktudWRkZWxzIHZvcndlZyEKQWxzbyB3ZXIgaW0gTUcgZHVyY2hmYWVsbHQsIHRhdWd0IGRvY2ggd29obCBob2VjaHN0ZW5zIG5vY2ggZnVlcnMgUkwhICpncmlucyoKS251ZGRlbHMgaGludGVyaGVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuY2FsYWdvbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERyYWNvIGtudWRkZWxsZW5zaXMgbWFqb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhpbGZlISAoR3JpbW1ib3JuLCAgNy4gTWFpIDE5OTcsIDExOjQyOjUxKToKfiMhIG9uPVJ1bWF0YSBvdD04NjI5OTcwNTYgb2c9cHVpegp+IyEgb249R25vbWUgb3Q9ODYyNDUzOTc1IG9nPWFsbGdlbWVpbmVzCmhpLAppY2ggd2Vpc3MgendhciBuaWNodCwgb2IgZGFzIGhpZXIgc28gaGlucGFzc3QsIGFiZXIgaWNoIHZlcnN1Y2hzIHRyb3R6ZGVtIG1hbDoKd2VyIGthbm4gYXVzICJSR0xFRVJBVUJPIiBlaW4gd29ydCBtYWNoZW4/IGJpdHRlIG1haWwgYW4gbWljaCwgZGFua2UgOi0pCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhpbGZlISAoR3JpbW1ib3JuLCAgNy4gTWFpIDE5OTcsIDExOjQzOjQ2KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NjI5OTgxNzEgcmc9c2NobWFycm4KfiMhIHRpZD04NjI5OTgxNzEKQXVjaCBmdWVyIFJ1bWF0YSBnaWx0OiBLZWluZSBBcnRpa2VsIGluICJzaW5udm9sbGUiIFJ1YnJpa2VuIHZlcmxlZ2VuLCBkaWUKc2Nob24gbGFlbmdzdCB1ZWJlcmhvbHQgc2luZC4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaGlsZmUhIChDYXVubywgIDcuIE1haSAxOTk3LCAxMjozNzo0MCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODYyOTk4MTcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYyOTk4MTcxCk9yZ2VsYmF1ZXIuIFdhciBkYXMgYXVzIEluZmVybm8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcnNjaGFmZnVuZyB2b24gV2VsdCAoR3JhbGtvciwgIDcuIE1haSAxOTk3LCAxNjozNDozMCk6CkhpIElocnMuCkljaCBoYWJlIG5lIGtsZWluZSwgZmVpbmUsIHVuZCBXQUhSRSBHZXNjaGljaHRlIGdlZnVuZGVuLCB3aWUKV0lSS0xJQ0ggZW50c3RhbmRlbiBpc3QuCgpBbHMgdW5zZXIgZ3JvaXN0LmVzIE5hdHNjaGFsbmlrLCBJd2FuIEdvdHRvd2l0c2NoIGhhdCBlcnNjaGFmZmVuIHVuc2VyZXMKUGxhbmV0LCBkZXIgV2VsdCwgZXIgaGF0IGdlc2FndDogIkVzIHdlcmRlIExpY2h0ISIgdW5kIHNvIGVudHN0YW5kIGVyc3RlcwpLcmFmdHdlcmsgRG5lcHJvcGV0cm93c2suCgpVbmQgZXIgaGF0IGdlbm9tbWVuIFN0fGNrY2hlbiBFcmRlLCBiZXN0ZXMgRXJkZSwgSGVpbWF0ZXJkZSwgS3ViYW5lcmRlLCB1bmQgZXIKaGF0IGdlc2NocGZ0IEFkYW0gQWRhbW93aXRzY2gsIGRhRG5lcHJvcGV0cm93c2suIHdhciBrbGVpbmJ8cmdlcmxpY2hlcgpJbmRpdmlkdWFsaXN0LiBVbmQgZXIgaGF0IGdlbm9tbWVuIFJpcHBlIHZvbiBBZGFtIHVuZCBoYXQgZ2VtYWNodCBTY2hhc2NobGlrCnVuZCBFd2EgRXdhbm93bmEgdW5kIHNvIGVuc3RhbmQgZXJzdGVzIEtvbGNob3MgdW5kIHNpZSBsZWJ0ZW4gZ2x8Y2tsaWNoIHVuZAp6dWZyaWVkZW4gaW4gUGFyYWRpZXMgVHlwIElJSS4gCgpVbmQgZXIgaGF0IGdlZ2ViZW4gU3RhdHV0OiBJaHIgZHxyZnQgZXNzZW4gRnJ8Y2h0ZSB2b24gQmF1bSBCaXJuZSwgS2FzdGFuaWUsCkVpY2hlIHVuZCBhdWNoIFBmaXJzaWNoLCBhYmVyIG5pY2h0IEZyfGNodGUgdm9uIEJhdW0sIEFwZmVsLCBBcGZlbApLb2xsZWt0aXZlaWdlbnR1bS4gRG9jaCBkYSBrYW0gU2NobGFuZ2Uta2FwaXRhbGlzdGlzY2hlIFNjaGxhbmdlLXVuZCBoYXQKZ2VzcHJvY2hlbiBtaXQgU3RpbW1lIHZvbiBSSUFTOiBFd2EgRXdhbm93bmEgbXVJSUkudCBlc3NlbiBGcnxjaHRlIHZvbiBCYXVtCkFwZmVsLiBBcGZlbCBLb2xsZWt0aXZlaWdlbnR1bS1hdWNoIGRlaW4gRWlnZW50dW0uIE51biBXZWlsIEFkYW0gQWRhbW93aXRzY2gKaGF0IG5pY2h0IHN0dWRpZXJ0IE1hcnhpc211cy1MZW5pbmlzbXVzLCBlciBoYXQgZ2VnZXNzZW4gRnJ8Y2h0ZSB2b24gQmF1bQpBcGZlbCBtaXQgRXdhIEV3YW5vd25hIHVuZCBoYXQgdmVyc3RvSUlJLmVuIGdlZ2VuIFN0YXR1dC4gCgpEb2NoIGRhIGthbSB1bnNlciBncm9TdGF0dXQuZXMgTmF0c2NoYWxuaWssIEl3YW4gR290dG93aXRzY2ggdW5kIGhhdCBzaWUKYmVzdHJhZnQuIFNpZSBtdVN0YXR1dC50ZW4gbWFjaGVuIDQgU3R1bmRlbiBLcml0aWsgdW5kIFNlbGJzdGtyaXRpayB1bmQKbXVTdGF0dXQudGVuIExlc2VuIDMgWmVudG5lciBQZmxpY2h0bGl0ZXJhdHVyIHVuZCB6dW0gU2NobHVTdGF0dXQuIGhhdCBlcgppaG5lbiBnZWdlYmVuIFdvbGdhLCBNb3Nrd2l0c2NoIHVuZCBTYXBvcm96c2hleiBvaG5lIEVyc2F0enRlaWxlIHVuZCBzaWUgd2FyZW4KZ2VzdHJhZnQgaWhyIExlYmVuIGxhbmcuCgpHcmFsa29yLCBpbW1lciBub2NoIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYXRoZW1hdGlrZXIgKFNvY3JhdGUsICA3LiBNYWkgMTk5NywgMTY6Mzc6MDEpOgogICBWb3JoaW4gYmluIGljaCBhdWYgZWluZW4gVGV4dCBkZXMgTWF0aGVtYXRpa2VycyBQZXRyb24gZ2VzdG9zc2VuLCBkZXIgZWluClNjaHVlbGVyIFB5dGhhZ29yYXMgd2FyLiBJY2ggZ2ViZW4gZGllc2VuIFRleHQgaW0gZm9sZ2VuZGVuIHdpZWRlcjoKCiJFcyBnaWJ0IGVpbmh1bmRlcmRyZWl1bmRhY2h0emlnLCBpbiBGb3JtIGVpbmVzIERyZWllY2tzIGdlb3JkbmV0ZSBXZWx0ZW4uCkplZGUgU2VpdGUgaGF0IGlocmVyIHNlY2h6aWc6IFZvbiBkZW4gZHJlaSBicmlnZW4gaXN0IGplZGUgYW4gZW5lciBkZXIgZHJlaQpFY2tlbiBnZWhsYXRlbi4gRGllIGluIGplZGVyIFJlaWhlIGVpbmFuZGVyIGZvbGdlbmRlbiBXRWx0ZW4gYmVyaHJlbiBlaW5hbmRlciwKaW5kZW0gc2llIHdpZSBpbiBlaW5lbSBSZWlnZW4gcnVoaWcgdW1oZXJrcmVpc2VuLiIKCk9mZmVuc2ljaHRsaWNoIGhhYmVuIGFsc28gTWF0aGVtYXRpa2VyIHp1IGFsbGVuIFplaXRlbiBzY2hvbiBlaW5lbiBhbiBkZXIKS2xhdHNjaGUgZ2VoYWJ0LgpRdW9kIGVyYXQgZGVtb25zdHJhbmR1bS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHdvIGJpbiBpY2g/IChUYXNoYSwgIDcuIE1haSAxOTk3LCAyMzo0OToxMyk6Cn4jISBybj1TaWx2YW5hIHJ0PTg2MjkwMzY2MyByZz1zY2htYXJybgp+IyEgdGlkPTg2Mjc1NTk4NQpXZXIgaGF0IGVpZ2VudGxpY2ggYmVoYXVwdGV0LCBkYXNzIGRhcyBNRyB1ZWJlcmhhdXB0IHNjaG9uIGF1cyBkZW0gT2ZlbiByYXVzCmlzdD8KClRhc2hhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB3byBiaW4gaWNoPyAoQW5hdG9sLCAgNy4gTWFpIDE5OTcsIDIzOjUwOjQwKToKfiMhIHJuPVRhc2hhIHJ0PTg2MzA0MTc1MyByZz1zY2htYXJybgp+IyEgdGlkPTg2Mjc1NTk4NQpXZXIgYmVoYXVwdGV0LCBkYXNzIGRhcyBNRyBzY2hvbiBhdXMgZGVtIEt1ZWhsc2NocmFuayBpbiBkZW4gT2ZlbiBrYW0uLi4/CkltbWVyaGluIHdhZXJlIGRhbm4gZGllIEZyYWdlIGdla2xhZXJ0LCBvYiBkYXMgTGljaHQgYXVzZ2VodCwgd2VubiBtYW4gZGllCkt1ZWhsc2NocmFua3R1ZXJlIHp1bWFjaHQuLi4gCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVlcyBNVUQ/IChEYXVlcmdhc3QsICA5LiBNYWkgMTk5NywgMTI6MTU6MTkpOgpobSwgd2VubiBtYW4gbWFsIG5ldWdpZXJpZyBpc3Q6CgoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSoKfCAgICAgICAgICAgICAgIFBLLU1VRCwgTFBNdWQgMDMuMDIuMUAxMzYgKEFteWxhYXIpICAgICAgICAgICAgICB8CnwgICAgICAgIEFkcmVzc2U6IHV3aG9tZS5tcGkuaHR3bS5kZSAoMTQxLjU1LjU2LjU5KSAgNDcxMSAgICAgICAgfAp8ICAgICAgICAgICAgICAgICAgICAgICBVcHRpbWU6IDIxIFNla3VuZGVuICAgICAgICAgICAgICAgICAgICAgIHwKfCAgICAgICBQSy1NdWRMaWIgMS4zLjIwMyBiYXNpZXJlbmQgYXVmIE1vcmdlbkdyYXVlbiBNdWRsaWIgICAgICB8CiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKgoKKioqIEFud2VzZW5kZSBpbSBQSy1NdWQ6IEFrdHVlbGwgMCwgTWF4LiBoZXV0ZSAxOCwgUmVrb3JkIDU3CgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYXVmIEF1cm9yYS4uLiAoTWllemUsICA5LiBNYWkgMTk5NywgMTY6MDc6MDMpOgoKCkR1IHNhZ3N0OiBtYWNoIGlobiB0b3QgLyogbWVpbmVuIFBhcGFnZWkgUmFjaG1hbmlub3YqLwogUmFjaG1hbmlub3Yga3JhZWNoenQ6IFJhY2htYW5pbm92IGlzdCBkYSBhbmRlcmVyIE1laW51bmcsIE1pZXplIC4uLgprcnJyb29hYWEKV2FyZ29uIHNwcmluZ3QgYXVmIGVpbm1hbCBSYWNobWFuaW5vdiBhbiB1bmQgd3Vlcmd0IGlobi4KRWluIGVudHNldHpsaWNoZXIgU2NocmVpIGhhbGx0IHZvbSBGcmllZGhvZiBoZXJ1ZWJlci4KCgpNaWV6ZSwgZ3JpbnN0IGltbWVybm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbm9jaCB3YXMgdm9tIFphdWJlcm4gLi4uIChTY2hsaXBzLCAgOS4gTWFpIDE5OTcsIDE3OjI4OjIyKToKCmdyYWQgZWJlbiBpbSBVZWJ1bmdzcmF1bSBkZXIgWmF1YmVyZXIgLSBNb3Jnb25pYSB1ZWJ0IEVyZGJlYmVuLCBpY2ggSWxsdXNpb24KCgo+IE1vcmdvbmlhIHN0YW1wZnQgcmh5dGhtaXNjaCBhdWYgZGVuIEJvZGVuIHVuZCB3aXJmdCBkYW5uIGV0d2FzIHdlZy4KRWluIEVyZHN0b3NzIHRyaWZmdCBNb3Jnb25pYS4KMTAga2xlaW5lIE5lZ2VyIHJlbm5lbiBkdXJjaCBkZW4gUmF1bS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVlciBMYWRlbiA/Pz8gKE5haXJvbGYsICA5LiBNYWkgMTk5NywgMTg6NDk6MDIpOgoKSUNoIGhhYiBuZW4gTGFkZW4gZ2VmdW5kZW4gd28gZXMgbmljaCBudXIgV2FmZmVuIHVuZCBSdWVzdHVuZ2VuIGdpYnQuLi4uLi4KCgo2OS4gRWluIHZlcnNjaGxpc3NlbmVyIEdvYmxpbiAgIDI5NjAgfAoKCgoKLi4udHN0cyBuZSBuZXVlIFRpZXJoYW5kbHVuZyA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1ZXIgTGFkZW4gPz8/IChSb25kYSwgIDkuIE1haSAxOTk3LCAyMjowNDozMik6Cn4jISBybj1OYWlyb2xmIHJ0PTg2MzE5NjU0MiByZz1zY2htYXJybgp+IyEgdGlkPTg2MzE5NjU0MgpEYXMgaXN0IGtsYXNzZSAqcm90ZmwqIC0gZGFzIHdhZXJzIGRvY2ggbm9jaCwgbWFuIGthbm4gc2ljaCBWaWVjaGVyIGthdWZlbiwKb2huZSBkYXNzIG1hbiBkYWZ1ZXIgbGFuZyBpbiBkZXIgR2VnZW5kIHJ1bXJlbm5lbiBtdXNzIDspIChBbHNvIHNvIGFlaG5saWNoCndpZSBBbmRlcmxhbmR6b28uLi4gYWJlciBrb3N0ZW4gbXVzcyBlcyBzY2hvbiB3YXMpIC0gdW5kIHdlbm4gc2llIGRhbm4gaGFsdAprYXB1dHQgc2luZCwga2FubiBtYW4gZGllIEJpZXN0ZXIgd2llZGVyIGFiZ2ViZW4gKCJIeWRyYSBtaXQgbm9jaCAzIEtvZXBmZW4sCmV0d2FzIGdlYnJhY2NodCIKIlp3ZXJnLCBLb3BmIGt1ZXJ6ZXIgYWxzIG5vcm1hbCwgbWl0IHZvbGxlciBLaWxvbWV0ZXJnYXJhbnRpZSIgZXRjLi4uIHdhcnVtCmVpZ2VudGxpY2ggbmljaHQ/CkJsb2VkZWx0IG1hbCB3aWVkZXIgbnVyIHJ1bSwgc3RhdHQgU3R1ZGllbmFyYmVpdCB6dSBzY2hyZWliZW4sCiAgICAgICAgICAgICBSb25kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdXBzLiA7LSkgKE1vcm9uLCAxMC4gTWFpIDE5OTcsIDAxOjIxOjAzKToKCj4gZ3JhdHVsaWVyZSBsZWljaGUKU29sbCBpY2ggZGVtIERpbmcgdmllbGxlaWNodCB6dW0gVG90c2VpbiBncmF0dWxpZXJlbj8gTmVlIG5lZS4KCkFlaCwgZG9jaCA7LSkKTW9yb24gCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ldWVzIE1VRD8gKFJhZmZpLCAxMC4gTWFpIDE5OTcsIDAzOjA5OjE0KToKfiMhIHJuPURhdWVyZ2FzdCBydD04NjMxNzI5MTkgcmc9c2NobWFycm4KfiMhIHRpZD04NjMxNzI5MTkKQWhhLCBEdSB3YXJzdCBkYXMgYWxzbyAhCgpHcmlucwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2V5PyA6KSAoQW5hdG9sLCAxMS4gTWFpIDE5OTcsIDAwOjA5OjA3KToKRHUgdGVpbHN0IFR1YXJlZyBtaXQ6IHZvcnNpY2h0ClR1YXJlZyBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBrZXkKW1RvZDpMYXJzXSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgVHVhcmVnIHVtZ2VicmFjaHQuCltUb2Q6RWluIEh5ZHJha29wZl0gaHNzc3NzcwpLZXkgdGVpbHQgRGlyIG1pdDogb2tpIGJpbiByYXVzIDspKQoKKnN0b2VobiogOikKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbHVjaWFuIGF1ZiB6ZXR0ZWwgKEdyaW1tYm9ybiwgMTEuIE1haSAxOTk3LCAxNTo0Mzo1Myk6Cn4jISBvbj1MdWNpYW4gb3Q9ODYzMzAwMzk2IG9nPWFsbGdlbWVpbmVzCmx1Y2lhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FydW0gemllaHQgZGFzIGR1bW1lIERpbmcgYXVjaCBLbGVpZHVuZyBhbj8gKEhhcmRpbCwgMTIuIE1haSAxOTk3LCAwOTozMjowMik6CgpMaXZlIGF1cyBkZXIgWmF1YmVyZXJnaWxkZSBiZXJpY2h0ZXQgUmVwb3J0ZXIgSGFycnkgSGlyc2NoOgoKRHUgbGFlc3N0IGVpbmUga2xlaW5lIEt1Z2VsIGF1cyBGZXVlciBlbnRzdGVoZW4uCkR1IHNjaGxldWRlcnN0IGRpZSBLdWdlbCBpbiBlaW5lcyBLYW5pbmNoZW5zIFJpY2h0dW5nLgogIERlaW4gRmV1ZXJiYWxsIGVudHp1ZW5kZXQgZGVzIEthbmluY2hlbnMgS2xlaWR1bmcuCkRhcyBLYW5pbmNoZW4gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KCkhtbW0uIEhhYiBub2NoIG5pZSBlaW4gS2FuaW5jaGVuIG1pdCBLbGVpZHVuZyBnZXNlaGVuLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcnVtIHppZWh0IGRhcyBkdW1tZSBEaW5nIGF1Y2ggS2xlaWR1bmcgYW4/IChCb2luZywgMTIuIE1haSAxOTk3LCAxMDo0MDowOCk6Cn4jISBybj1IYXJkaWwgcnQ9ODYzNDIyMzIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYzNDIyMzIyCkJ1Z3MgQnVubnk/IFJvZ2VyIFJhYmJpdD8KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcnVtIHppZWh0IGRhcyBkdW1tZSBEaW5nIGF1Y2ggS2xlaWR1bmcgYW4/IChQYXRyeW4sIDEyLiBNYWkgMTk5NywgMTA6NTg6NDEpOgp+IyEgcm49SGFyZGlsIHJ0PTg2MzQyMjMyMiByZz1zY2htYXJybgp+IyEgdGlkPTg2MzQyMjMyMgpoZXkuLi5kaWUgaGFiZW4gbnVyIHZlcmdlc3NlbiwgZGVtIGthcm5pY2tlbCBuZW4gcmVpc3N2ZXJzY2hsdXNzIHp1CnZlcnBhc3NlbiwgZGFzIHRyYWVndCBzb2dhciBuZW4gZWRsZW4gcGVseiA6KQoKLS0tLS0tCnBhdHJ5biwgc2NobWFycmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXYXJ1bSB6aWVodCBkYXMgZHVtbWUgRGluZyBhdWNoIEtsZWlkdW5nIGFuPyAoS3JldGVrLCAxMi4gTWFpIDE5OTcsIDExOjU5OjUxKToKfiMhIHJuPUJvaW5nIHJ0PTg2MzQyNjQwOCByZz1zY2htYXJybgp+IyEgdGlkPTg2MzQyMjMyMgo+IEJ1Z3MgQnVubnk/IFJvZ2VyIFJhYmJpdD8KPiAgIEJvaW5nCgpIbW1tLi4uIFd1c3N0ZSBnYXIgbmljaHQsIGRhc3MgQm9pbmcgZWluIEthbmluY2hlbiBpc3QuLi4gSWNoIGRhY2h0ZSBkYSBpbW1lcgplaGVyIGFuICJTdGVpbmJlaXNzZXIiIGluIGRlbSBadXNhbW1lbmhhbmcuLi4gKipzdGF1bioqCgoKCksuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXYXJ1bSB6aWVodCBkYXMgZHVtbWUgRGluZyBhdWNoIEtsZWlkdW5nIGFuPyAoQXVncmEsIDEyLiBNYWkgMTk5NywgMTI6MjQ6MTkpOgp+IyEgcm49S3JldGVrIHJ0PTg2MzQzMTE5MSByZz1zY2htYXJybgp+IyEgdGlkPTg2MzQyMjMyMgpBdXNzZXJkZW0sIHdlbGNoZSBLbGVpZHVuZyBpc3QgYmVpIEJ1Z3MgQnVubnkgZ2VtZWludD8KCkF1Z3JhLCBrZW5udCBkYXMgVmllaCBudXIgbWl0IFBlbHogdW5kIE1vZWhyZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2FydW0gemllaHQgZGFzIGR1bW1lIERpbmcgYXVjaCBLbGVpZHVuZyBhbj8gKEdyaW1tYm9ybiwgMTIuIE1haSAxOTk3LCAxMjozMzo1Nyk6Cn4jISBybj1BdWdyYSBydD04NjM0MzI2NTkgcmc9c2NobWFycm4KfiMhIHRpZD04NjM0MjIzMjIKSWNoIG1hZyBtaWNoIGlycmVuLCBhYmVyIGljaCBoYWIgZGEgbm9jaCBpbiBkZXIgRXJpbm5lcnVuZywgZGFzcyBlcgpnZWxlZ2VudGxpY2ggYXVjaCBtaXQgWnlsaW5kZXIgYXVmdHJpdHQ/IFVuZCBGcmFjaz8gWnVtaW5kZXN0IGltIFZvcnNwYW5uIG9kZXIKc28uCkFiZXIgZWlnZXRubGljaCBiaW4gaWNoIGltbWVyIGVoZXIgZWluIEZhbiB2b24gUGF1bGNoZW4gdW5kIFRvbSZKZXJyeSBnZXdlc2VuLApCdWdzIEJ1bm55IGZhbmQgaWNoIGVoZXIgYWxiZXJuLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXYXJ1bSB6aWVodCBkYXMgZHVtbWUgRGluZyBhdWNoIEtsZWlkdW5nIGFuPyAoQm9pbmcsIDEyLiBNYWkgMTk5NywgMTM6MDk6MTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2MzQzMzIzNyByZz1zY2htYXJybgp+IyEgdGlkPTg2MzQyMjMyMgpHZW5hdSwgaWNoIGRhY2h0ZSBkYWJlaSBhbiBkZW4gQWJzcGFubiwgd28gZXIgenVzYW1tZW4gbWl0IER1ZmZ5IER1Y2sKS2xhdmllciBzcGllbHQsIGRhIGhhdCBlciBuZW4gRnJhY2sgYW4uClVuZCB6dSBLcmV0ZWtzIEtvbW1lbnRhcjogSWNoIGhhYiBtaWNoIHNjaG9uIGJlaW0gU2NocmVpYmVuIGdlZnJhZ3QsIG9iCmljaCBmdWVyIGRpZSBnZWlzdGlnIG1pbmRlcmJlbWl0dGVsdGVuIGhpbnNjaHJlaWJlbiBzb2xsdGUsIGRhc3MgZGVyCmxldHp0ZSBOYW1lIEtFSU4gS2FuaW5jaGVubmFtZSBpc3QgLi4uIG5hamEsIGhhZXR0IGljaCB3b2hsIHR1biBzb2xsZW4uIDopCiAgQm9pbmcgKFN0ZWluYmVpc3NlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdhcnVtIHppZWh0IGRhcyBkdW1tZSBEaW5nIGF1Y2ggS2xlaWR1bmcgYW4/IChNdXJrZXMsIDEyLiBNYWkgMTk5NywgMTM6MTM6MjYpOgp+IyEgcm49Qm9pbmcgcnQ9ODYzNDM1MzU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYzNDIyMzIyClNpbmQgS2FuaW5uY2hlbiB1bmQgU3RlaW5iZWlzc2VyIG5paHQgZW50ZmVybnQgbWl0ZWluYW5kZXIgdmVyd2FuZHQ/IEltbWVyaGluCmtvZW5udGUgbWFuIGJlaWRlIGFscyBOYWdldGllcmUgYmV6ZWljaG5lbiwgbmljaHQ/CgpNdXJrZXMKClAuUy4gQXVzc2VyZGVtIHdhciBkZXIgRnJhY2sgYmVpIEJ1Z3MgQnVubnkgbnVyIGF1ZmdlbWFsdCAtLSBCb2R5cGFpbnRpbmcsIGRhcwp6YWVobHQgbmljaHQgYWxzIEtsZWlkdW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2FydW0gemllaHQgZGFzIGR1bW1lIERpbmcgYXVjaCBLbGVpZHVuZyBhbj8gKEdyaW1tYm9ybiwgMTIuIE1haSAxOTk3LCAxMzoxNToxOSk6Cn4jISBybj1NdXJrZXMgcnQ9ODYzNDM1NjA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYzNDIyMzIyCkJvZHlwYWludGluZyBoaWVzc2UsIGRhc3MgbWFuIHNpY2ggdm9yaGVyIGF1c3ppZWhlbiBtdXNzLiBNQVcsIGVyIGlzdAphbnNvbnN0ZW4gZ2VsZWdlbnRsaWNoIGFuZ2V6b2dlbiB1bmQgaGF0IHNpY2ggbnVyIGZ1ZXIgZGVuIEZyYWNrIGF1c2dlem9nZW4uCkFsc28sIGF1ZiBkaWUgQXJ0IHdpcmQgZGFzIG5peCBtaXQgZGVyIEFyZ3VtZW50YXRpb24sIHNvcnJ5LgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBXYXJ1bSB6aWVodCBkYXMgZHVtbWUgRGluZyBhdWNoIEtsZWlkdW5nIGFuPyAoTXVya2VzLCAxMi4gTWFpIDE5OTcsIDEzOjE3OjUyKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NjM0MzU3MTkgcmc9c2NobWFycm4KfiMhIHRpZD04NjM0MjIzMjIKTWFuIGJpc3QgRHUgc3BpdHpmaW5kXkheSF5Ia29laHJpZyEKQWxzbyBpY2ggbmVobWUgZXMgenVydWVjaywgYmVpbSBCdWdzIEJ1bm55IG11c3MgbWFuIGVoIHZvbiBGZWxsLVBhaW50aW5nCmF1c2dlaGVuLCB1bmQgZGFmdWVyIG11c3MgbWFuIHNpY2ggbmljaHQgYXVzemllaGVuLgoKTXVya2VzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIeWRyYSAoUGFtcGVycywgMTIuIE1haSAxOTk3LCAxMzoyNTo1Nik6CgogRWluIEh5ZHJha29wZiBncmVpZnQgUmluZ29yIG1pdCBzZWluZW0gZnVlcmNodGVybGljaGVuIEdlYmlzcyAgYW4uCkVpbiBIeWRyYWtvcGYgdmVyc3RhdWNodCBzaWNoIGJlaSBkZW0gU2NobGFnIGRpZSBIYW5kLgoKSG0uLi4gU2NoZWludCBqYSBuZSBrb21pc2NoZSBNaXNzZ2VidXJ0IHp1IHNlaW4sIHNvIG5lIEh5ZHJhLi4uLgoKUGFtcGVycy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdhcnVtIHppZWh0IGRhcyBkdW1tZSBEaW5nIGF1Y2ggS2xlaWR1bmcgYW4/IChLcmV0ZWssIDEyLiBNYWkgMTk5NywgMTQ6MTM6NTApOgp+IyEgcm49Qm9pbmcgcnQ9ODYzNDM1MzU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYzNDIyMzIyCkljaCBob2ZmZSBuYXR1ZXJsaWNoLCBEdSB3aWxsc3QgbmljaHQgaW5zaW51aWVyZW4sIGRhc3MgaWNoIGdlaXN0aWcKbWluZGVyYmVtaXR0ZWx0IHNlaSwgc29uc3QgbWFjaCBpY2ggbmFlbWxpY2ggc29mb3J0IFNlbGJzbG9lc2NodW5nIHVuZApoYWVuZ2UgYWxsZXMgYWIsIHdhcyB2b24gbWlyIGlzdCEKClsuLi5dCgpBZWgsIE1vbWVudC4gSWNoIGhhYmUgamEgbm9jaCBnYXIgbml4IGFuZ2VzY2hsb3NzZW4uIEFlaC4uLiBOdW4uLi4uCgoKCksuCgoKClAuUy4gRnVlciBBY3JpbW9uOiAqKnN1ZWx6IG9mZioqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQm9lc2UgTWFnaWVydGVzdGlzIChHcmltbWJvcm4sIDEyLiBNYWkgMTk5NywgMTY6MjM6NDcpOgp+IyEgb249UGFtcGVycyBvdD04NjM0NDU4NTUgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUdlcnJpIHJ0PTg2MzQ0NTc2MyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg2MzQ0NTc2MwpNaXIga29tbWVuIGRpZSBUcmFlbmVuLgoKRGFzIGFybWUgVGllci4KClBhbXBlcnMuIEVtcGZpZWhsdCBHZXJyaSwgbmljaHQgS2FlbXBmZXIgenUgd2VyZGVuIHVuZCBhdWNoIG5pY2h0IGlucyBWbGFuZCB6dQpmYWhyZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQm9lc2UgTWFnaWVydGVzdGlzIChHcmltbWJvcm4sIDEyLiBNYWkgMTk5NywgMTY6MjM6NDkpOgp+IyEgb249R3JpbW1ib3JuIG90PTg2MzQ0NTk3NSBvZz1hbGxnZW1laW5lcwp+IyEgcm49R2VycmkgcnQ9ODYzNDQ1NzYzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODYzNDQ1NzYzCldlbm4gRHUgbGllYmVyIHZvbiBlaW5lbSBlY2h0ZW4gTWFnaWVyIHNlbGJlciBnZXRvZXRldCB3ZXJkZW4gbW9lY2h0ZXN0LAphbnN0YXR0IHp1enVzZWhlbiwgd2llIGVpbiBsdW1waWdlciBUZXN0aWUgRGVpbiBsdW1waWdlcyBIYXVzdGllciBraWxsdCwgbWVsZGUKRGljaCBkb2NoIGVpbmZhY2ggYmVpIG1pci4uLgoKTmViZW5iZWkgaXN0IGRhcyBuYXR1ZXJsaWNoIGZ1ZXIgVGVzdGllcyB2ZXJib3RlbiwgdW5kIGZ1ZXIgTWFnaWVyendlaXRpZXMKenVtaW5kZXN0IGVpbmUgR3JhdXpvbmUuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCb2VzZSBNYWdpZXJ0ZXN0aXMgKEdyaW1tYm9ybiwgMTIuIE1haSAxOTk3LCAxNjoyMzo1MCk6Cn4jISBvbj1Pcmt0b2V0ZXIgb3Q9ODYzNDQ2MDE0IG9nPWFsbGdlbWVpbmVzCn4jISBybj1QYW1wZXJzIHJ0PTg2MzQ0NTg1NSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg2MzQ0NTc2MwpEaWUgVGlwcyBzY2hlaW5lbiBuaWNodCBzY2hsZWNodCB6dSBzZWluLCBhYmVyIGRlciBTYXJrYXNtdXMgaXN0IGVjaHQgbmljaHQKYW5nZWJyYWNodCwgb2RlciBnbGF1YnN0IGR1IGVjaHQsIGRpY2ggc28gdWViZXJsZWdlbiBmdWVobGVuIHp1IGtvZW5uZW4gPwoKT3JrVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCb2VzZSBNYWdpZXJ0ZXN0aXMgKEdyaW1tYm9ybiwgMTIuIE1haSAxOTk3LCAxNjoyMzo1MSk6Cn4jISBvbj1QYW1wZXJzIG90PTg2MzQ0NjAyNiBvZz1hbGxnZW1laW5lcwp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2MzQ0NTk3NSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg2MzQ0NTc2MwpJY2ggYmluIGtlaW4gVGVzdGllIQpVbmQgc2Nob24gZ2FyIGtlaW4gWndlaXRpZS4gCgpQYW1wZXJzLiBLYXR6ZW5raWxsZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCb2VzZSBNYWdpZXJ0ZXN0aXMgKEdyaW1tYm9ybiwgMTIuIE1haSAxOTk3LCAxNjoyMzo1Mik6Cn4jISBvbj1QYW1wZXJzIG90PTg2MzQ0NjA4MyBvZz1hbGxnZW1laW5lcwp+IyEgcm49T3JrdG9ldGVyIHJ0PTg2MzQ0NjAxNCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg2MzQ0NTc2MwpKYS4gRGFzIGdsYXViZSBpY2ggZWNodC4KClBhbXBlcnMuIEFycm9nYW50LiBNaXQgR3J1bmQgZGF6dS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJvZXNlIE1hZ2llcnRlc3RpcyAoR3JpbW1ib3JuLCAxMi4gTWFpIDE5OTcsIDE2OjIzOjUzKToKfiMhIG9uPU9ya3RvZXRlciBvdD04NjM0NDYxMTQgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVBhbXBlcnMgcnQ9ODYzNDQ2MDI2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODYzNDQ1NzYzCm5lLCBudXIgZWluIE1hZ2llciBkZXIgZGVuIGRlc3RydWN0LWJlZmVobCBrZW5udCB1bmQgZGVua3QsIGVyIHNlaSBkZXNld2VnZW4KZXR3YXMgYmVzc2VyZXMgYWxzIGVpbiBlaW5mYWNoZXIgc3BpZWxlci4KIE9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCb2VzZSBNYWdpZXJ0ZXN0aXMgKEdyaW1tYm9ybiwgMTIuIE1haSAxOTk3LCAxNjoyMzo1NCk6Cn4jISBvbj1QYW1wZXJzIG90PTg2MzQ0NjE2OCBvZz1hbGxnZW1laW5lcwp+IyEgcm49T3JrdG9ldGVyIHJ0PTg2MzQ0NjExNCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg2MzQ0NTc2MwpBY2ggT3JrVCwgRHUgdHVzdCBtaXIgbGVpZC4KClBhbXBlcnMuIFdhcnRldCBkYXJhdWYsIGRhc3MgQ2F0KiBlbmRsY2loIGRlbiBUaHJlYWQgbmFjaCBNdWVsbCB2ZXJsZWd0LiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFybWUgaGF1c3RpZXJlIChHcmltbWJvcm4sIDEyLiBNYWkgMTk5NywgMTY6MjM6NTUpOgp+IyEgb249R2Vycmkgb3Q9ODYzNDQ2MTg2IG9nPWFsbGdlbWVpbmVzCgpXZW5uIElociBGdWNrZXIgbWVpbnQgZXVyZSBNaW5kZXJ3ZXJ0aWdrZWl0c2tvbXBsZXhlIGFuIG1laW5lbSBIYXVza2F0ZXIKYXVzbGViZW4genUgbXVlc3NlbiwgZGFubiBzZWl0IElociBlY2h0IGFybWUgS3JlYXR1cmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFybWUgaGF1c3RpZXJlIChHcmltbWJvcm4sIDEyLiBNYWkgMTk5NywgMTY6MjM6NTYpOgp+IyEgb249UmFudGFucGxhbiBvdD04NjM0NDY2ODcgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUdlcnJpIHJ0PTg2MzQ0NjE4NiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg2MzQ0NjE4NgpFeSwgd2VubiBkYSBpcmdlbmRzb2VpbiBmdWNrZXIga29tbXQsIHVuZCBtZWluIGFiZ2VmdWNrdGVzIEhhdXN0aWVyCmZ1Y2t0LCBkYW5uIHdlcmRlIGljaCBhYmVyIGZ1Y2tpbmcgc2F1ZXIgKGJhZWNodGlnIE1vZXNlLCBhdWYgRGV1dHNjaCkKCkRhcyBmdWNrdCBkb2NoIHRvdGFsIGZ1Y2tpY2ggZnVja2VuZCB2ZXJmdWNrdCBub2NobWFsIGV5ICEKCk9lKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBcm1lIGhhdXN0aWVyZSAoR3JpbW1ib3JuLCAxMi4gTWFpIDE5OTcsIDE2OjIzOjU3KToKfiMhIG9uPU9ya3RvZXRlciBvdD04NjM0NDY3NzYgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVJhbnRhbnBsYW4gcnQ9ODYzNDQ2Njg3IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODYzNDQ2MTg2CmVuZGxpY2ggbWFsIGVpbiBBcnRpa2VsLCBkZW0gaWNoIEluaGFsdGxpY2ggZm9sZ2VuIGthbm4sIGV5ICEKT3JrVC1leSAhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFybWUgaGF1c3RpZXJlIChHcmltbWJvcm4sIDEyLiBNYWkgMTk5NywgMTY6MjM6NTgpOgp+IyEgb249R3VuZHVyIG90PTg2MzQ0NjgzMyBvZz1hbGxnZW1laW5lcwp+IyEgcm49UmFudGFucGxhbiBydD04NjM0NDY2ODcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04NjM0NDYxODYKSGllcm1pdCBlbnRzY2h1bGRpZ2UgaWNoIG1pY2ggZnVlciBPZSogZXIgd29sbHRlIG5hZW1saWNoIHNhZ2VuOgpFeSwgd2VubiBkYSBpcmdlbmRzb2VpbiBGcmVjaGRhY2hzIGtvbW10LCB1bmQgbWVpbiBhYmdlZnJlY2hkYWNoc3RlcyBIYXVzdGllcgpmcmVjaGRhY2hzdCwgZGFubiB3ZXJkZSBpY2ggYWJlciBmcmVjaGRhY2hzaWcgc2F1ZXIKRGFzIGZyZWNoZGFjaHN0ZG9jaCB0b3RhbCBmcmVjaGRhY2hzaWcgdmVyZnJlY2hkYWNoc3Rub2NobWFsIGV5Ck9lKgoKSS5BLiBHdW5kdXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXJtZSBoYXVzdGllcmUgKEdyaW1tYm9ybiwgMTIuIE1haSAxOTk3LCAxNjoyMzo1OSk6Cn4jISBvbj1UdW5peGd1dCBvdD04NjM0NDY4NDcgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVJhbnRhbnBsYW4gcnQ9ODYzNDQ2Njg3IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODYzNDQ2MTg2CkljaCB3YXIgbm9jaCBuaWUgU08gRGVpbmVyIE1laW51bmcsIE9ldHRpLCBub2NoIG5pZS4uLiA7bykKClR1Tml4R3V0IC0gc2NoYWVtdCBzaWNoIGRhZnVlciBmYXN0Li4uIDtvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQXJtZSBoYXVzdGllcmUgKEdyaW1tYm9ybiwgMTIuIE1haSAxOTk3LCAxNjoyNTo0Nik6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODYzNDQ3MDM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYzNDQ2MTg2CkhtbSwgaXJnZW5kd2llIG11c3Mgd29obCBub2NoIGFuIGRlbSBCZXp1ZyBhdWYgdmVybGVndGUgQXJ0aWtlbCBnZWFyYmVpdGV0CndlcmRlbi4KS2VpbmUgU2NoZXUgdm9yIEF1ZndhbmQsIGF1Y2ggd2VubiBkaWUgbXBhICJ0ZXVyZXIiIHdpcmQgYWxzIGVpbmUgR2lsZGUsIHdhcwpkaWUgUmVzc291cmNlbiBhbmdlaHQ6IEtlaW5lIEdpbGRlIHdpcmQgc28gZXh0ZW5zaXYgZ2VudXR6dCB3aWUgZGllIG1wYSwgZGEKa29tbXQgZGVyIEF1ZndhbmQgZG9jaCBtYWwgYWxsZW4genVndXRlLiA6LSkKCkdyaW1tYm9ybiBkZXIgVmVybGVnZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXJnbGJhcmdsIChHcmltbWJvcm4sIDEyLiBNYWkgMTk5NywgMTY6MzI6MTApOgp+IyEgb249Qm9uZ28gb3Q9ODYzNDQ3MTU3IG9nPWFsbGdlbWVpbmVzCn4jISBybj1LZXkgcnQ9ODYzMzI5Njk3IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODYzMzI3NzI1CkhtbSwgZGFzIGlzdCBzY2hvbiBlcnN0YXVubGljaC4uLgpzZWl0IFdvY2hlbiBsZXNlIGljaCBoaWVyIG1hbCBkaWUgWmVpdHVuZyBkdXJjaCB1bmQgZmluZGUgaW5zYmVzb25kZXJlCmluIGRlciBSdWJyaWsgQWxsZ2VtZWluZXMgbnVyIGFldXNzZXJzdCB3ZW5pZ2UgQXJ0aWtlbCwgZGllIHdpcmtsaWNoCndhcyBhdXNzYWdlbiB1bmQgenVyIEFid2VjaHNsdW5nIGF1Y2ggbWFsIG5ldHQsIGFuc3ByZWNoZW5kIHVuZCAKaW5mb3JtYXRpdiBzaW5kLiAKCkJvbmdvIChzZWhyIG5hY2hkZW5rbGljaCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFyZ2xiYXJnbCAoR3JpbW1ib3JuLCAxMi4gTWFpIDE5OTcsIDE2OjMyOjEyKToKfiMhIG9uPUZ5dCBvdD04NjM0NDcyNjQgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUJvbmdvIHJ0PTg2MzQ0NzE1NyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg2MzMyNzcyNQpEYXMgbGllZ3QgZGFyYW4sIGRhc3MgaGllciBudXIgRnJlY2hkYWNoc2UgcnVtbGF1ZmVuLCBkaWUga2VpbiBJbnRlcmVzc2UKYW4gbmV0dGVuLCBhbnNwcmVjaGVuZGVuIHVuZCBpbmZvcm1hdGl2ZW4gQXJ0aWtlbG4gaGFiZW4uCgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOb21lbiAoR3JpbW1ib3JuLCAxMi4gTWFpIDE5OTcsIDE2OjMyOjEzKToKfiMhIG9uPUJvbmdvIG90PTg2MzQ0NzI4OCBvZz1hbGxnZW1laW5lcwpLZW5udCBpaHIgZGllIE5vbWVudHJpbG9naWUgdm9uIFByYXRjaGV0dD8/PyBEaWUgc3RyZWl0ZW4gYXVjaCBpbW1lci4KV2VubiBzaWUgbGFuZ2V3ZWlsZSBoYWJlbiwgZGFubiB6YW5rZW4gc2llIHNpY2gsIHdhcyBkYXMgWmV1Z3MgaGFlbHQuCkVzIGxpZWd0IGhhbHQgaW4gaWhyZXIgTmF0dXIuIApHZW5hdXNvIGtpbmRpc2NoIGtvbW1lbiBtaXIgaGllciBkaWUgbWVpc3RlbiBMZXV0ZSB2b3IuIEVpbiBnbHVlY2sgc2l0enQKaWhyIG5pY2h0IGFuIGRlciBSZWdpZXJ1bmcuIDotKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOb21lbiAoR3JpbW1ib3JuLCAxMi4gTWFpIDE5OTcsIDE2OjMyOjE0KToKfiMhIG9uPUZ5dCBvdD04NjM0NDc0MDMgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUJvbmdvIHJ0PTg2MzQ0NzI4OCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg2MzQ0NzI4OAoKRHUgd2lsbHN0IGRvY2ggbmljaHQgZXR3YSBzYWdlbiwgZGFzcyBzaWNoIGRpZSBBcmJlaXQgaXJnZW5kZWluZXIKUmVnaWVydW5nICh3ZWxjaGVyIGF1Y2ggaW1tZXIpIHNpY2ggcXVhbGl0YXRpdiB2b24gZGVtIGhpZXIKdW50ZXJzY2hlaWRldC4KCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTm9tZW4gKEdyaW1tYm9ybiwgMTIuIE1haSAxOTk3LCAxNjozMjoxNSk6Cn4jISBvbj1BbmF0b2wgb3Q9ODYzNDQ3NDQwIG9nPWFsbGdlbWVpbmVzCn4jISBybj1GeXQgcnQ9ODYzNDQ3NDAzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODYzNDQ3Mjg4CkFjaCBrb21tLCBGeXQsIHNvb29vIHNjaGxlY2h0IHNpbmQgZGllIEVyemlzIGhpZXIgZG9jaCBuaWNodCwgb2Rlcj8KCkFuYXRvbCAodmVyYWVuZ3N0aWd0KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTm9tZW4gKEdyaW1tYm9ybiwgMTIuIE1haSAxOTk3LCAxNjozMjoxOSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODYzNDQ3NDQ4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1GeXQgcnQ9ODYzNDQ3NDAzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODYzNDQ3Mjg4CkFiZXIgc2ljaGVyLiBJY2gga2VubmUgZWlnZW50bGNpaCBrZWluZW4gUG9saXRpa2VyLCBkZW0gaWNoIHp1dHJhdWVuIHd1ZXJkZSwKYXVjaCBudXIgYW5uYWVoZXJuZCBzbyBzY2huZWxsIHRpcHBlbiB6dSBrb2VubmVuIHdpZSBkZXIgRHVyY2hzY2huaXR0c211ZGRlci4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTm9tZW4gKEdyaW1tYm9ybiwgMTIuIE1haSAxOTk3LCAxNjozMjoyMCk6Cn4jISBvbj1GeXQgb3Q9ODYzNDQ3NDc2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1BbmF0b2wgcnQ9ODYzNDQ3NDQwIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODYzNDQ3Mjg4CgpOYWphLCBzaWUgc2luZCBhdWYgamVkZW4gRmFsbCBzY2hsZWNodGVyIGJlemFobHQgOy0pCgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5vbWVuIChHcmltbWJvcm4sIDEyLiBNYWkgMTk5NywgMTY6MzI6MjEpOgp+IyEgb249Qm9uZ28gb3Q9ODYzNDQ3NDg2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1GeXQgcnQ9ODYzNDQ3NDAzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODYzNDQ3Mjg4Ck5laW4sIGdlcmFkZSBkYXMgbmljaHQuCkFiZXIgbGFzc2VuIHdpciBkYXMgbWl0IGRlciBSZWdpZXJ1bmcuIFNvbnN0IGdpYnQgZXMgbnVyIHdpZWRlcgpkdW1tZSBLb21tZW50YXJlLCBkaWUga2VpbmVyIGhvZXJlbiB3aWxsIDotKSkKQm9uZ28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5vbWVuIChHcmltbWJvcm4sIDEyLiBNYWkgMTk5NywgMTY6MzI6MjMpOgp+IyEgb249R3JpbW1ib3JuIG90PTg2MzQ0NzQ5NSBvZz1hbGxnZW1laW5lcwp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2MzQ0NzQ0OCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg2MzQ0NzI4OApBdXNzZXJkZW0gbWFjaGVuIGRpZSBQb2xpdGlrZXIgbWVociB0eXBvcywgYW5kZXJzIGxhZXNzdCBzaWNoIGphIHZpZWxlcyBnYXIKbmljaHQgbWVociBlcmtsYWVyZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTm9tZW4gKEdyaW1tYm9ybiwgMTIuIE1haSAxOTk3LCAxNjozMzowOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODYzNDQ3NTQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYzNDQ3Mjg4CipncnVtbWVsKiBTY2hyZWlidCBkb2NoIGJpdHRlIGRpcmVrdCBoaWVyaGVyLi4uCgpHcmltbWJvcm4gZGVua3QgdWViZXIgdmVybGVnZS1UcmlnZ2VyIG5hY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5vbWVuIChGeXQsIDEyLiBNYWkgMTk5NywgMTY6MzQ6MzUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2MzQ0NzU4OSByZz1zY2htYXJybgp+IyEgdGlkPTg2MzQ0NzI4OAoKUmVeMzogTm9tZW4gKEdyaW1tYm9ybiwgMTIuIE1haSAxOTk3LCAxNjozMjoyMyk6CltBdXRvcjogR3JpbW1ib3JuLCAxMi4gTWFpIDE5OTcsIDE2OjMxOjM1LCB2ZXJsZWd0IHZvbiBhbGxnZW1laW5lc10KW0JlenVnOiBBcnRpa2VsIGluIGFsbGdlbWVpbmVzIHZvbiBHcmltbWJvcm4gdm9tIDEyLiBNYWkgMTk5NywgMTY6MzA6NDhdCgprZWluIEtvbW1lbnRhci4KCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhtbXBmIChHcmltbWJvcm4sIDEyLiBNYWkgMTk5NywgMTY6NDM6MTkpOgp+IyEgb249UmFudGFucGxhbiBvdD04NjM0NDc2NjQgb2c9YWxsZ2VtZWluZXMKR3JpbW1ib3JuICEKCktvZW5udGVzIER1IGRpZSBBcnRpa2VsIG5pY2h0IHZlcmxlZ2VuIEJFVk9SIHNpZSBnZXNjaHJpZWJlbiBzaW5kLCBkYW5uIG11c3MgCmljaCBkYXMgYWxsZXMgbmljaHQgWldFSU1BTCBsZXNlbiAhCgpPZSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZydWVoZXIgbWFsLi4uLi4uIChBbHBoYSwgMTIuIE1haSAxOTk3LCAyMTozNzowMCk6CmZyYWdlIGJydW5vIG5hY2ggc2VoZXIKQnJ1bm8gc2FndDogV2VubiBEdSBkaWUgU3BpZWxlcnN0dWZlIDIwIGVycmVpY2h0IGhhc3QsIHdpcnN0IER1IFNlaGVyLiAKT2gsIHdpZSBtdXNzIGRhcyBzY2hvZW4gZ2V3ZXNlbiBzZWluLgosCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgo6LSkgKE5haXJvbGYsIDEyLiBNYWkgMTk5NywgMjE6NTA6NDIpOgpNdXBmZWwgYmVzY2h3b2VydCBlaW5lbiBCbGl0eiB2b20gSGltbWVsLgpCb2luZyBmYWVsbHQgdG90IHp1IEJvZGVuLgpNdXBmZWwgc2FndDogZGFzIHdvbGx0ZSBpY2ggaW1tZXIgc2Nob24gbWFsIDotKQoKTmFpcm9sZiwgTklFTUFMUyBzb3dhcyB0dWVuZC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChSaW5nb3IsIDEzLiBNYWkgMTk5NywgMDE6MDg6MjkpOgpbVHJ2ZXM6Q3ltcmlrXSBnZWlsIHNjaG9uIHdpZWRlciBudXIgbm9jaCAzIGxwcwpbVG9kOkxhcnNdIEVpbiBTY2huZWV3b2xmIGhhdCBnZXJhZGUgQ3ltcmlrIHVtZ2VicmFjaHQuCgpSZWljaHQgYW5zY2hlaW5lbmQgbmljaHQuClJpbmdvci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiA6LSkgKEJvaW5nLCAxMy4gTWFpIDE5OTcsIDEyOjA5OjE0KToKfiMhIHJuPU5haXJvbGYgcnQ9ODYzNDY2NjQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODYzNDY2NjQyClNvc28gLi4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthcmF0ZSBpbiBEdW5jdG9uIChQdW11Y2tsLCAxMy4gTWFpIDE5OTcsIDIxOjQ2OjQwKToKCkx1c3RpZyAtIGluIER1bmN0b24ga2FubiBtYW4gYXVjaCBLYXJhdGUga2FlbXBmZW4gLi4uCgpSdXVuIHNhZ3Q6IFdlciBoYXQgRGlyIGRhcyBLYWVtcGZlbiBiZWlnZWJyYWNodD8hCiAgRHUgZ3JlaWZzdCBkZW4gTWF1bHd1cmYgbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBLYWdpLXp1a2kgYW4uCiAgRHUgdmVyZmVobHN0IGRlbiBNYXVsd3VyZi4KICBEZXIgTWF1bHd1cmYgZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbiBLbGF1ZW4gYW4uCiAgRGVyIE1hdWx3dXJmIHZlcmZlaGx0IERpY2guCiAgRHUgZ3JlaWZzdCBkZW4gTWF1bHd1cmYgbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBPdG9zaGktdXJha2VuLXVjaGkgYW4uCiAgRHUga2l0emVsc3QgZGVuIE1hdWx3dXJmIGFtIEJhdWNoLgogIERlciBNYXVsd3VyZiBncmVpZnQgRGljaCBtaXQgc2VpbmVuIEtsYXVlbiBhbi4KICBEZXIgTWF1bHd1cmYgdmVyZmVobHQgRGljaC4KICBEdSBncmVpZnN0IGRlbiBNYXVsd3VyZiBtaXQgZWluZW0gbWlzc2x1bmdlbmVuIE90b3NoaS11cmFrZW4tdWNoaSBhbi4KICBEdSB0cmlmZnN0IGRlbiBNYXVsd3VyZi4KICBEZXIgTWF1bHd1cmYgZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbiBLbGF1ZW4gYW4uCiAgRGVyIE1hdWx3dXJmIHZlcmZlaGx0IERpY2guCiAgRHUgZ3JlaWZzdCBkZW4gTWF1bHd1cmYgbWl0IGVpbmVtIG1pc3NsdW5nZW5lbiBPdG9zaGktdXJha2VuLXVjaGkgYW4uCiAgRHUgdHJpZmZzdCBkZW4gTWF1bHd1cmYuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc29zbyBIYWxsdXppbmF0aW9uZW4gb2RlciB3YXR0PyAoQXRveiwgMTQuIE1haSAxOTk3LCAxMjoxNTo0Mik6CgoKdW50IGVja2UKVHJpZWYsIHRyb3BmLCAuLi4gUGZ1aSBUZXVmZWwsIHdpZSBzaWVodCBkYXMgZGVubiBhdXM/CkRhIHNpdHp0IGRvY2ggdGF0c2FlY2hsaWNoIGVpbmUgZmV0dGUgU3Bpbm5lIGluIGVpbmVtIGRlciBOZXR6ZS4KPiB1bnQgc3Bpbm5lCkRpZSBTcGlubmUgZ3JpbnN0IERpY2ggaGFlbWlzY2ggYW4hCj4gdG9ldGUgc3Bpbm5lCkR1IHNpZWhzdCBoaWVyIGtlaW4gZGVyYXJ0aWdlcyBXZXNlbiEKCgpBaCBqZXR6dCBqYS4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzb3NvIEhhbGx1emluYXRpb25lbiBvZGVyIHdhdHQ/IChHcmltbWJvcm4sIDE0LiBNYWkgMTk5NywgMTI6MTk6MjQpOgp+IyEgcm49QXRveiBydD04NjM2MDQ5NDIgcmc9c2NobWFycm4KfiMhIHRpZD04NjM2MDQ5NDIKTmVpbiwgdmVybXV0bGljaCB3aWVkZXIgbWFsIGRlciBUYXJuaGVsbS4gT3dvaGwsIGRhZnVlciBmZWhsdCBkYXMgIkVpbmUgU3Bpbm5lCmlzdCBlaW5lIFNwaW5uZSBpc3QgZWluZSBTcGlubmUiLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc29zbyBIYWxsdXppbmF0aW9uZW4gb2RlciB3YXR0PyAoUmFmZmksIDE0LiBNYWkgMTk5NywgMTg6NDY6NDApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2MzYwNTE2NCByZz1zY2htYXJybgp+IyEgdGlkPTg2MzYwNDk0MgpEYXMgaXN0IGRvY2ggbnVyIGRpZSBsaWViZSBrbGVpbmUgc3Bpbm5lIGluIHNjaHJ1bXBmaXMgZ3J1ZnQuCihkaWUgaXN0IGZhc3Qgc28gc3Vlc3Mgd2llIFNjaHJ1bXBmaSBzZWxic3QpCgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWxsZXMgQW5nc3RoYXNlbiEgOikgKEFuY2FsYWdvbiwgMTUuIE1haSAxOTk3LCAwOTo0NjoxNCk6CktudWRkZWxzIQpHZXJhZGUgYmVpbSBlaW5sb2dnZW46CgpbQWxsZ2VtZWluOkFuY2FsYWdvbl0gR3V0YWVobiBNb3JnYWVobiEgOikKUGF0cnluIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uClBhdHJ5biBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uCkNoZXN0ZXIgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KR3J1bW1lbCBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpDaGVzdGVyIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KRWxyaWNrIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uClR1YXJlZyBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgoKCkFsc28sIFNPT09PT09PTyBzY2hsaW1tIGJpbiBpY2ggZG9jaCBudSBhdWNoIG5pY2h0LCBvZGVyICE/IDopCktudWRkZWxzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbmNhbGFnb24KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERyYWNvIGtudWRkZWxsZW5zaXMgbWFqb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG5lbGxlciBUb2QgKERpZWRlciwgMTUuIE1haSAxOTk3LCAxNzowNzo0MCk6CkFuZ3JpbSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbVG9kOkxhcnNdIEVpbiBPcmsgaGF0IGdlcmFkZSBBbmdyaW0gdW1nZWJyYWNodC4KQW5ncmltICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXV0c2NoIDstKSAoQW5hdG9sLCAxNS4gTWFpIDE5OTcsIDE5OjA1OjQ5KToKClBhZHJlaWMgZnJhZ3Q6IEJpbiBpY2ggYmVzb2ZmZW4/ClthbGMgcGFkcmVpY10KUGFkcmVpYyBpc3Qgdm9lbGxpZyBudWVjaHRlcm4uClsnUGFkcmVpYyBpc3Qgdm9lbGxpZyBudWVjaHRlcm4uXQpEdSBzYWdzdDogUGFkcmVpYyBpc3Qgdm9lbGxpZyBudWVjaHRlcm4uClBhZHJlaWMgc2FndDogQW5hdG9sIFsvZWxmOmFuYXRvbF0uIFsvZWxmOmFuYXRvbF0uClBhZHJlaWMgZ3J1ZWJlbHQgZWluZSBXZWlsZSB2b3Igc2ljaCBoaW4uCgpHcmluc2VuZCwgCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdXRzY2ggOy0pIChHcmltbWJvcm4sIDE1LiBNYWkgMTk5NywgMTk6MDc6MDMpOgp+IyEgcm49QW5hdG9sIHJ0PTg2MzcxNTk0OSByZz1zY2htYXJybgp+IyEgdGlkPTg2MzcxNTk0OQpXdXJzdG1hZ2llciBoYWx0LiA6LSkKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChSaW5nb3IsIDE1LiBNYWkgMTk5NywgMjA6NDU6NTgpOgpEaWVkZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCls8TWFzdGVSPjpEaWVkZXIgbGFlc3N0IGRpZSBFYmVuZSAnV2VpemVuJyBlbnRzdGVoZW4uXQpEaWVkZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbiBGcmV1bmQgRGllZGVyIHRlaWx0IERpciBtaXQ6IHVyZ3MgMiBscApEdSB0ZWlsc3QgRGllZGVyIG1pdDogcmVpY2h0IGRvY2gKW1RvZDpMYXJzXSBFaW4gRWlzYmFlciBoYXQgZ2VyYWRlIERpZWRlciB1bWdlYnJhY2h0LgoKQW5zY2hlaW5lbmQgZG9jaCBuaWNodC4KUmluZ29yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYWVtbGljaCBEYWVtb24uLi4gKEtpbGFyLCAxNS4gTWFpIDE5OTcsIDIxOjM3OjI4KToKRWJlbiBiZWltIG1ldHplbG4gcGFzc2llcnQgOgoKRWluIER1bmtlbGRhZW1vbiBsYWV1ZnQgZ2VnZW4gZWluZW4gYXVmZ2VtYWx0ZW4gRHVyY2hnYW5nIGltIE9zdGVuLgpEZXIgRHVua2VsZGFlbW9uIGJyaWNodCB0b3QgenVzYW1tZW4uCgoqa2ljaGVyKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhZW1saWNoIERhZW1vbi4uLiAoQXNtb2RpcywgMTUuIE1haSAxOTk3LCAyMTo0NTowMik6Cn4jISBybj1LaWxhciBydD04NjM3MjUwNDggcmc9c2NobWFycm4KfiMhIHRpZD04NjM3MjUwNDgKWmFyZG96IHNvbGx0ZSBzZWluZSBEYWVtb25lbiBtYWwgdWViZXIgZGllIEdlaGVpbW5pc3NlIGRlciBEYWVtb25lbmJ1cmcKYXVma2xhZXJlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhZW1saWNoIERhZW1vbi4uLiAoRGhvamFrdCwgMTYuIE1haSAxOTk3LCAwMjozNzozMik6Cn4jISBybj1LaWxhciBydD04NjM3MjUwNDggcmc9c2NobWFycm4KfiMhIHRpZD04NjM3MjUwNDgKRGFzIGlzdCBuaWNodCBkZXIgZXJzdGUsIGRlbSBkYXMgcGFzc2llcnQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbm4gQW5hdG9sIExhbmdld2VpbGUgaGF0IChaaW5vLCAxNi4gTWFpIDE5OTcsIDAzOjI0OjU3KToKPiBrd2VyIGluIG9zbmFicnVlY2sKICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRnJlLCAxNi4gTWFpIDE5OTcsIDAzOjIzOjI1ICgzNCBUZWlsbmVobWVyKQoKR2FzdDEuLi4uLi4uLi4uLnMgIEdhc3QxLi4uLi4uLi4uLi5zICBHYXN0MS4uLi4uLi4uLi4ucyAgR2FzdDEuLi4uLi4uLi4uLnMKR2FzdDEuLi4uLi4uLi4uLnMgIEdhc3QxLi4uLi4uLi4uLi5zICBHYXN0MS4uLi4uLi4uLi4ucyAgR2FzdDEuLi4uLi4uLi4uLnMKR2FzdDEuLi4uLi4uLi4uLnMgIEdhc3QxLi4uLi4uLi4uLi5zICBHYXN0MS4uLi4uLi4uLi4ucyAgR2FzdDEuLi4uLi4uLi4uLnMKR2FzdDEuLi4uLi4uLi4uLnMgIEdhc3QxLi4uLi4uLi4uLi5zICBHYXN0MS4uLi4uLi4uLi4ucyAgR2FzdDEuLi4uLi4uLi4uLnMKR2FzdDEuLi4uLi4uLi4uLnMgIEdhc3QxLi4uLi4uLi4uLi5zICBHYXN0MS4uLi4uLi4uLi4ucyAgR2FzdDEuLi4uLi4uLi4uLnMKR2FzdDEuLi4uLi4uLi4uLnMgIEdhc3QxLi4uLi4uLi4uLi5zICBHYXN0MS4uLi4uLi4uLi4ucyAgR2FzdDEuLi4uLi4uLi4uLnMKR2FzdDUuLi4uLi4uLi4uLnMgIEdhc3Q0Li4uLi4uLi4uLi5zICBHYXN0My4uLi4uLi4uLi4ucyAgR2FzdDIuLi4uLi4uLi4uLnMKR2FzdDEuLi4uLi4uLi4uLnMgIE1lc2Fyb24uLi4uLi4uLi5zICBLYWxsaW9wZS4uLi4uLi4uUyAgTW9yb24uLi4uLi4uLi4uLlMKTmljaHRzLi4uLi4uLi4uLlMgIEFuYXRvbC4uLi4uLi4uLi5TCgpBcmdsCk1haGF0bWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQWNyaW1vbiwgMTYuIE1haSAxOTk3LCAxNjozNToxMik6CltBbGxnZW1laW46T29lcnBydXMgdHJpdHQgamV0enQgbWFsIGRlbiBUaWdlci5dCltBbGxnZW1laW46UGFtcGVyc10gR3V0ZXIgUGxhbiwgT29lcnBydXMuCltBbGxnZW1laW46T29lcnBydXMgdHJpdHQgZGVuIFRpZ2VyIG5vY2htYWwuXQpbVG9kOkxhcnNdIEVpbiBTYW5kdGlnZXIgaGF0IGdlcmFkZSBPb2VycHJ1cyB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJhdWVuIHVuZCBSZWFsaXRhZXRzdmVybHVzdC4gOy0pIChQYW1wZXJzLCAxNi4gTWFpIDE5OTcsIDE3OjQyOjQxKToKCltBbGxnZW1laW46RnJvc2NoIE5lc2FqYV0gaWNoIGJpbiBLRUlOIGZyb3NjaAoKClBhbXBlcnMuIEhtbW1tbXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNb3JnYXIsIHdpZSBtYW4gaWhuIGtlbm50IHVuZCBsaWVidCAoWmlubywgMTYuIE1haSAxOTk3LCAxODoyMjo1NCk6CltUb2Q6TGFyc10gRGllIGVpZ2VuZSBVbmZhZWhpZ2tlaXQgaGF0IGdlcmFkZSBNb3JnYXIgdW1nZWJyYWNodC4KW0JlaWxlaWQ6QW5hdG9sXSBNdXNzIHdvaGwuLi4KW0JlaWxlaWQ6TWFoYXRtYV0gdGphamEKW0JlaWxlaWQ6QWpheF0gb2hqZWggTW9yZ2FyIDooKApbQmVpbGVpZDpNYWhhdG1hXSBlcyB0cmlmZnQgYXVjaCBpbW1lciBkaWUgcmljaHRpZ2VuIDopCltCZWlsZWlkOkJpcmR5XSBiZWlsZWlkCltCZWlsZWlkOkFzdGFyXSBXYXIgYmVzdGltbXQgUGhseWFrZW4uLi4KCltCZWlsZWlkOk1vcmdhcl0gSG0gVm9yc2ljaHQgMTUwIHNjaGVpbnQgYmVpIFBobHlha2VuIG5pY2ggZ2FueiB6dSByZWljaGVuLi4uCltCZWlsZWlkOkFuYXRvbF0gTmljaHQgYmVpIGVpbmVtIG51ZWNodGVybmVuIFBobHlha2VuLCByaWNodGlnLi4uCltCZWlsZWlkOk1vcmdhcl0gQXJnbCwgYmluIGljaCBkb29mLiAqZ3J1bW1lbCoKW0JlaWxlaWQ6TWFoYXRtYV0gc2VociByaWNodGlnCltCZWlsZWlkOk1ldGhlZHJhc10ga2VpbiBlaW5zcHJ1Y2gKW0JlaWxlaWQ6TW9yZ2FyIGhhdCBtYWwgd2llZGVyIGRhcyBCZXJhdXNjaGVuIHZlcmdlc3Nlbi4uLl0KW0JlaWxlaWQ6QWpheCBncmluc3RdCltCZWlsZWlkOkFuYXRvbCB0YWV0c2NoZWx0IE1vcmdhciBkZW4gS29wZi5dCltCZWlsZWlkOkFuYXRvbF0gREVOIEZlaGxlciBiZW1lcmt0IG1hbiB6aWVtbGljaCBzY2huZWxsLCBqYQpbVG9kOkxhcnNdIEVpbmUgRGllIHVuaGVpbWxpY2hlIEhhZW5nZWJydWVja2UgaGF0IGdlcmFkZSBNb3JnYXIgdW1nZWJyYWNodC4KW1RvZDpFaW5lIERpZSB1bmhlaW1saWNoZSBIYWVuZ2VicnVlY2tlXSBEYXMgQWVjaHplbiBkZXIgUGxhbmtlbiBob2VydCBzaWNoCltUb2Q6RWluZSBEaWUgdW5oZWltbGljaGUgSGFlbmdlYnJ1ZWNrZV0gaGFlbWlzY2ggYW4uCltCZWlsZWlkOkFqYXhdIHVwcyA6KApbQmVpbGVpZDpBbmF0b2xdIEVpbiBmZWhsZ2VnYW5nZW5lcyBXZWdlc2NyaXB0IGF1Y2guCltCZWlsZWlkOlpvcnJvXSBwZmZmdAoKTW9yZ2FyIHVudGVyaGFlbHQgdW5zIGltbWVyIHdpZWRlciBwcmFlY2h0aWcgOikKCk1haGF0bWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFRlaWxlIG1pdCAtIEVyd2VpdGVydW5nPyAoV29vZHksIDE3LiBNYWkgMTk5NywgMTU6NDQ6MTApOgp+IyEgcm49R3VuZHVyIHJ0PTg2Mzg3NjMzNiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg2Mzg3MjI3OApKYSwgamV0enQuLi4gZnJ1ZWhlciBoaWVzcyBkZXIgQmVmZWhsIG5vY2ggImVyd2llZGVyIiAgKmtpY2hlcioKCndvb2R5Li0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnRvYiAoVHJla2FuLCAxOS4gTWFpIDE5OTcsIDE0OjMwOjE2KToKd2FzIHNvbGwgbWFuIGRhIG5vY2ggc2FnZW4gOgpUb2QgdGVpbHQgRGlyIG1pdDogTEFTUyBNSUNIIElOIFJVSEUhIERVIEdFSFNUIE1JUiBISUVSIEVDSFQgQVVGIERJRSBORVJWRU4hCj4gW0FsbGdlbWVpbjpUYXJhZ29uXSBnYXJmaWVsZCBnZWggbWFsIGF1ZiAtcysKRHUgdGVpbHN0IFRvZCBtaXQ6IHRlc3QKPiBUb2QgdGVpbHQgRGlyIG1pdDogTEFTUyBNSUNIIEJMT1NTIElOIFJVSEUhCltHcmF0czpBamF4XSBrbGFybyA6KSBGcmFnZ2xlcyBpcyBudSBhdWYgZGVtIFByb2dyYW1tIDopClN0YXQ6IExQOiAyMTAgIE1QOiAxODcgIFNQOiAzNyAgIFY6MTE1IEY6cyAgRzpOIEZIOiAgUzogICAgWEhhbmQKRHUgdGVpbHN0IFRvZCBtaXQ6IHRlc3QKPiBbQWxsZ2VtZWluOlRhcmFnb25dIGljaCBoZWxmIGRpciBkYQpUb2QgdGVpbHQgRGlyIG1pdDogTUVSS1NUIERVIEVJR0VOVExJQ0ggTklDSFQsIERBU1MgRFUgTUlSIEFVRiBESUUgTkVSVkVOClRvZCB0ZWlsdCBEaXIgbWl0OiBHRUhTVD8KRHUgdGVpbHN0IFRvZCBtaXQ6IHRlc3QKPiBbQWxsZ2VtZWluOkFjcmltb25dIFNwb3J0PwpUb2QgdGVpbHQgRGlyIG1pdDogVkVSREFNTVQgTk9DSE1BTCEgS0FOTlNUIERVIE1JQ0ggTklDSFQgRU5ETElDSCBJTiBSVUhFClRvZCB0ZWlsdCBEaXIgbWl0OiBMQVNTRU4/IElDSCBNVVNTIEhJRVIgQVJCRUlURU4hCkR1IHRlaWxzdCBUb2QgbWl0OiB0ZXN0ClN0YXQ6IExQOiAyMTAgIE1QOiAxODggIFNQOiAzNyAgIFY6MTE1IEY6cyAgRzpOIEZIOiAgUzogICAgWEhhbmQKVG9kIHRlaWx0IERpciBtaXQ6IElDSCBTRUggU0NIT04sIElDSCBXRVJEIERJQ0ggU08gU0NITkVMTCBOSUNIVCBMT1MuIE5BLCBHVVQsClRvZCB0ZWlsdCBEaXIgbWl0OiBEQU5OIEtPTU0gSEFMVCBIRVIuIERBTk4gS09FTk5FTiBXSVIgVU5TIElOIFJVSEUKVG9kIHRlaWx0IERpciBtaXQ6IFVOVEVSSEFMVEVOLi4uIDstKQpbVG9kOkxhcnNdIFRPRCBoYXQgZ2VyYWRlIFRyZWthbiB1bWdlYnJhY2h0LgpbVG9kOlRPRF0gV0VSIE1JQ0ggU08gTkVSVlQsIEhBVCBFUyBOSUNIVCBCRVNTRVIgVkVSRElFTlQhCgpUcmVrYW4gLT4gZmFuZHMgdHJvdHpkZW0gcmVjaHQgd2l0emlnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcnRpZ2VyIEh1bmQgKEFzbW9kaXMsIDE5LiBNYWkgMTk5NywgMjA6MjE6MDcpOgpOYWlyb2xmIHNhZ3Q6IG9raSBpY2ggaGF1IGRlbm4gbWFsIGFiIDotKQpEdSB3aW5rc3QuCk5haXJvbGYgd2lua3QgRGlyIHp1LgpOYWlyb2xmIGdlaHQgbmFjaCBXZXN0ZW4uClplcmJlcnVzIGhlYnQgZGFzIEJlaW4gLi4uCgpTb2dhciBkZXIgSHVuZCB3aW5rdCwgZGVyIGlzdCBndXQgZXJ6b2dlbiwgZ2VsbGUgPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFydGlnZXIgSHVuZCAoTmFpcm9sZiwgMTkuIE1haSAxOTk3LCAyMDoyMTo0Nyk6Cn4jISBybj1Bc21vZGlzIHJ0PTg2NDA2NjA2NyByZz1zY2htYXJybgp+IyEgdGlkPTg2NDA2NjA2NwpVTlZFUlNDSEFFTVRIRUlUIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOi0pIChOYWlyb2xmLCAxOS4gTWFpIDE5OTcsIDIwOjQwOjI4KToKRHUgc2Fnc3Q6IHNjaG9lbmUgR3J1ZXNzZSB2b24gTWFoYXRtYSBzb2xsIGljaCBhdXNyaWNodGVuIExvcmVuegpCcnVkZXIgTG9yZW56IGJldHJhY2h0ZXQgRGljaCBzdGlybnJ1bnplbG5kLgoKLi53YXMgZGVyIHdvaGwgZ2VnZW4gTWFoYXRtYSBoYXQuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpodWNoIDotKSAoTmFpcm9sZiwgMTkuIE1haSAxOTk3LCAyMDo0Mzo0OSk6CkR1IHNhZ3N0OiBrZW5uc3QgZHUgTWFoYXRtYSB3aXJrbGljaCBuaWNoID8KQnJ1ZGVyIExvcmVueiBzYWd0OiBIZXJyLCB2ZXJnaWIgbWlyIG1laW5lIFNjaHdhZWNoZS4KCmFoIGpldHp0IGphIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBY3JpbW9uLCAxOS4gTWFpIDE5OTcsIDIxOjU1OjAyKToKW0FiZW50ZXVlcjpEZW50aV0gZGFzIE1HIGtlbm50IGtlaW5lIG5hY2h0IDspCltUb2Q6TGFyc10gRWluZSBBa29seXRoaW4gZGVyIFhhbnRpIGhhdCBnZXJhZGUgRGVudGkgdW1nZWJyYWNodC4KCkdpYnQgZXMga2VpbmUgTmFjaHQsIHNvIG1hY2h0IG1hbiBzaWUgc2ljaCBzZWxic3QuCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFd1bmRlcmxhbmQgKENhdHdlYXpsZSwgMjAuIE1haSAxOTk3LCAyMDowMDo0OSk6Cn4jISBvbj1DYXR3ZWF6bGUgb3Q9ODY0MTUxMDgwIG9nPWFuemVpZ2VuCn4jISBvbj1QYW1wZXJzIG90PTg2NDEzOTEyMyBvZz1hbnplaWdlbgp+IyEgcm49QXNtb2RpcyBydD04NjQxMzkwNjYgcmc9YW56ZWlnZW4KfiMhIHRpZD04NjQxMzYzMDEKRnVlciBhbGxlLCBkaWUgZXMgbm9jaCBuaWNodCB3aXNzZW46IEplc3NpY2EgaXN0IGpldHp0IGF1Y2ggdW50ZXIKMDE5MCAzMzIgMzMyIGVycmVpY2hiYXIuCgpXZW5uIHNjaG9uIFdlcmJ1bmcsIGRhbm4gYXVjaCBmdWVyIHdhcyB2ZXJudWVuZnRpZ2VzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYW0gU2FuZHRpZ2VyIChTY2hsaXBzLCAyMC4gTWFpIDE5OTcsIDIzOjM1OjI5KToKCkRlciBTYW5kdGlnZXIgYmVncnVlc3N0IE1hcnMgbWl0OiBJY2ggc29sbCBEaXIgdm9uIFNvZmllIGF1c3JpY2h0ZW46IEhhbGxvIDopCk1hcnMga29tbXQgYW4gdW5kIHNhZ3Q6IEJVSCEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXdW5kZXJsYW5kIChXb29keSwgMjEuIE1haSAxOTk3LCAwMjowODoxMyk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9ODY0MTUxMDY4IHJnPWFuemVpZ2VuCn4jISB0aWQ9ODY0MTM2MzAxCldlbm4gZGFzIHNvbGNoZSBXZWxsZW4gc2NobGFlZ3QsIHppZWggaWNoIG1laW5lbiB1cnNwcmdsLgpBcnRpa2VsIGdsZWljaCB3aWVkZXIgenVydWVjaywgZGFzIFNMIGlzdCBuYXR1ZXJsaWNoIE5JQ0hUCnVudGVyIHNsLm11ZC5kZSBvZGVyIChzaWxiZXJsYW5kLm11ZC5kZSkgZXJyZWljaGJhciwgd2VyIHdhcwphbmRlcmVzIGJlaGF1cHRldCwgaGF0IGdlc2NodW1tZWx0LiA6KQoKd29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKCpraWNoZXIqKSAoVHVuaXhndXQsIDIxLiBNYWkgMTk5NywgMTQ6MTM6MDQpOgo+IFR1Tml4R3V0IHplaWd0IERpciBzZWluZW4gUmFrZXRlbndlcmZlciBNYXJrZSBNZWdhYmxhc3QKCj4gRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCk1vbWVudCBtYWwuLi4gZGFzIGdhbHQgZG9jaCBudXIgSWphbi4uLiBLZWluZSBBbmdzdCwgS2lubmluZ3MuLi4gO28pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpaYWhsZW4gdW5kIFphZWhsZW4uLi4gKEFuYXRvbCwgMjEuIE1haSAxOTk3LCAxNjozMzowMyk6CgpbQWxsZ2VtZWluOlpvcnJvXSBzbyBzY2hsdXNzIGVyc3RtYWwgLi4uIGF1ZiBhdWYgc2NoYWxrZSA6KQpbQWxsZ2VtZWluOktsb25rXSBhYiB3YW5uIGtvbW10IGRlciBzcGFzcz8KW0FsbGdlbWVpbjpab3Jyb10gd2Vpc3MgbmljaHQgMnNjOjE1ID8KW0FsbGdlbWVpbjpab3Jyb10gMTA6MTUgPwpbQWxsZ2VtZWluOlpvcnJvXSBhcmdoCltBbGxnZW1laW46Wm9ycm9dIDIwOjE1NgoKMTIzNDU2Nzg5MCAtIHN1Y2h0IGV1Y2ggd2FzIGF1cyA7LSkKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKemF1YmVyZXItcHJ1ZWZ1bmcgKFBhdHJ5biwgMjIuIE1haSAxOTk3LCAwMjo0ODoxMSk6CltaYXViZXJlcjpUYXJhZ29uXSBtYWNodCBzY2hvbiBtYWwgLXQgYW4gLi4uIDwwMjowNTo1OT4gICAgICAgICAgICAgICAgICAgICAgCltaYXViZXJlcjpUYXJhZ29uXSBrb21tIGljaCBhdXMgZGVyIHBydWVmdW5nIGF1Y2ggd2llZGVyIHJhdXMgPyA8MDI6Mjc6MzY+ICAgCltaYXViZXJlcjpUYXJhZ29uXSB3ZWlsLCBpY2ggd3VlcmQgZ2VybiBtZWluIHpldWcgaG9sZW4uLi4gPDAyOjI3OjQ4PiAgICAgICAgCltaYXViZXJlcjpUYXJhZ29uXSB3aWVzbyBpcyBtZWluIHpldWcgd2VnIGhpZXIgPz8/PyBpcyBkYXMgbm9ybWFsIGJlaSBkZXIgICAgCltaYXViZXJlcjpUYXJhZ29uXSBwcnVlZnVuZyA/IDwwMjozMjo0Nj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltaYXViZXJlcjpQYXRyeW5dIGhhZXR0ZXN0IGR1IGRpY2ggbWFuIHZvcmhlciBiZXNzZXIgZXJrdW5kaWd0Li4uIDwwMjozMzozMj4gCltaYXViZXJlcjpUYXJhZ29uIHdhciBtYWwgd2llZGVyIHp1IGVpbGlnLi4uIDwwMjozNDoxOD5dICAgICAgICAgICAgICAgICAgICAgCltaYXViZXJlcjpQYXRyeW5dIHRzamEuLi5kYXMga29lbm50ZSB0b2VkbGljaCBzZWluIDwwMjozNDozMD4gICAgICAgICAgICAgICAgCltaYXViZXJlcjpUYXJhZ29uXSBuYWphLCBKRVRaVCBoYWIgaWNoIG5peCBtZWhyIHdhcyBpY2ggdmVybGllcmVuIGthbm4uLi4gICAgCltaYXViZXJlcjpUYXJhZ29uXSA8MDI6MzQ6NDI+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltaYXViZXJlcjpQYXRyeW5dIGRvY2gsIGRlaW4gbGViZW4gOikgPDAyOjM0OjUwPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltaYXViZXJlcjpUYXJhZ29uXSBwZmZmdCA8MDI6MzU6MDA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIFRhcmFnb24gCltUb2Q6TGFyc10gdW1nZWJyYWNodC4gPDAyOjQ0OjE3PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltaYXViZXJlcjpQYXRyeW5dIGFoYSwgZGFzIGxlYmVuIHdhciBudSBhdWNoIHdlZyA6KSA8MDI6NDQ6Mjk+Cgp0c2phLi4uCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUb2xsZSBTY2hvbGxlIChJamFuLCAyMi4gTWFpIDE5OTcsIDE0OjU2OjQ3KToKYEVpbmUgRWlzc2Nob2xsZSBuYWVoZXJ0IHNpY2ggdW5kIGxlZ3QgYW0gVWZlciBhbi5gCmBEdSBzcHVlaHJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5ncmF1ZW4gZ2VodC5gCgpNdXNzIGVpbmUgemllaG1saWNoIGdyb3NzZSBTY2hvbGxlIHNlaW4uLi4uCipMQUNIKgoKSWphbiB6dSBTcmFsbGFuc3JlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGJlaW0gUG9rYWwtRW5zcGllbCAoQ2F0d2VhemxlLCAyMi4gTWFpIDE5OTcsIDE3OjUxOjE5KToKVUVGQS1Qb2thbCBFbmRzcGllbCBNYWlsYW5kIGdlZ2VuIFNjaGFsa2UsIGNhLiA2NS4gTWludXRlOgoKRGFnbWFyKHdlaWJsaWNoLGJsb25kKSBzYWd0OiBBbHNvIGRpZSBJdGFsaWVuZXIgaGFiZW4gZWluZGV1dGlnIGRpZSBzY2hvZW5lcmVuCkRhZ21hcih3ZWlibGljaCxibG9uZCkgc2FndDogTWFlbm5lci4KQ2F0d2VhemxlIHN0b2VobnQuCkNhdHdlYXpsZSBzYWd0OiBIb2VtbWEsIGpldHp0IGVyemFlaGwgZG9jaCBuaWNodCBzbyBuZW4gaXJyZWxldmFudGVuIFNjaGVpc3MsCkNhdHdlYXpsZSBzYWd0OiBrb256ZW50cmllciBkaWNoIGxpZWJlciBtYWwgZWluIGJpc3NjaGVuLgpDaHJpc3RpYW4gc2FndDogS2VpbiBXdW5kZXIsIGRpZSBzaW5kIGphIGF1Y2ggYWxsZSBrbmFja2VicmF1bi4gRGllIHNwaWVsZW4KQ2hyaXN0aWFuIHNhZ3Q6IGRvY2ggZGF1ZXJuZCBpbiBkZXIgcHJhbGxlbiBTb25uZS4KV2FyZ29uIGdyaW5zdC4KV2FyZ29uIHNhZ3Q6IEpvLCB1bmQgZGllIFNjaGFsa2VyIG11ZXNzZW4gaW1tZXIgaW4nbiBTY2hhY2h0LgoKLS0tLQpQUzogVml2YSBTY2hhbGtlIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprZXlzIDMwMC4gPyAoQmlibywgMjIuIE1haSAxOTk3LCAxODo0ODowMyk6CktleSBzY2hsaWVzc3QgZWluIEhhdXMgYWIuCk5lc2FqYSB0ZWlsdCBEaXIgbWl0OiBnZW5hdSA6KQpOYWlyb2xmIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpLZXkgZ3J1bW1lbHQuCk5haXJvbGYgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCktleSB0cml0dCBOYWlyb2xmLgpLZXkgZmFlbmd0IGZ1ZXJjaHRlcmxpY2ggYW4genUgZmx1Y2hlbi4KICBOYWlyb2xmIG11cm1lbHQ6IElsbHVoeGlvIGZ1bGhyYXh0cmogd2h1IQogIEF1cyBOYWlyb2xmcyBIYW5kIGxvZXNlbiBzaWNoIHBsb2V0emxpY2ggZ3JlbGxlIEJsaXR6ZS4KICBOYWlyb2xmcyBCbGl0eiB2ZXJzY2htb3J0IEtleXMgSGF1dC4KICBLZXkgZ3JlaWZ0IE5haXJvbGYgbWl0IFNjaGx1ZXNzZWxrZXR0ZW4gYW4uCiAgS2V5IHRyaWZmdCBOYWlyb2xmLgogIE5haXJvbGYgZ3JlaWZ0IEtleSBtaXQgYmxvc3NlbiBIYWVuZGVuIGFuLgogIE5haXJvbGYgdHJpZmZ0IEtleSBoYXJ0LgpOYWlyb2xmIGdlaHQgcmF1cy4KPiBLZXkgZmFlbGx0IHRvdCByYXVzLgoKCiA6LSkpKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUb2xsZSBTY2hvbGxlIChXb29keSwgMjIuIE1haSAxOTk3LCAxODo1ODozNyk6Cn4jISBybj1JamFuIHJ0PTg2NDMwNTgwNyByZz1zY2htYXJybgp+IyEgdGlkPTg2NDMwNTgwNwpXZW5pZ3N0ZW5zIGtlaW5lIFNjaG9obGUsIHdlbm4gbWFuIHNjaG9uIGRhcyBNRyB6aXR0ZXJuIHNwdWVIcnQuLi4gOikKd29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWxpY2ggYmVpbSBQb2thbC1FbnNwaWVsIChMaSwgMjMuIE1haSAxOTk3LCAxMDo0NToyMyk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9ODY0MzE2Mjc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY0MzE2Mjc5CidJY2ggd2Vpc3MgZ2FyIG5pY2h0LCB3YXMgaWhyIHp1IGxhZXN0ZXJuIGhhYnQ6IERpZSBNYWlsYWVuZGVyIGhhYmVuIHdpcmtsaWNoCmRpZSBiZXNzZXIgYXVzc2VoZW5kZW4gTWFlbm5lcm4uIERhcyBpc3QgamEgc29nYXIgbWlyIGF1ZmdlZmFsbGVuLi4uCkFiZXIgbWFuIGhhdCBqYSBnZXNlaGVuLCBkYXNzIGVzIGJlaW0gRnVzc2JhbCBuaWNodCBhdWYgYXVzc2VoZW4gYW5rb21tdC4KZ2x1ZWNrIG11c3MgbWFuIGhhYmVuIQpMaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVsaWNoIGJlaW0gUG9rYWwtRW5zcGllbCAoQm9pbmcsIDIzLiBNYWkgMTk5NywgMTA6NTg6MTQpOgp+IyEgcm49TGkgcnQ9ODY0Mzc3MTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY0MzE2Mjc5Ck9kZXIgTmVydmVuc3RhZXJrZSAuLi4gZGVyIHp3ZWl0ZSB2ZXJzY2hvc3NlbmUgRWxmbWV0ZXIgaGF0dGUgYmVzdGltbXQKbmljaHRzIG1pdCBHbHVlY2sgenUgdHVuLCBzbyB3aWUgZGVyIGRhbmViZW4gZ2luZyBoYWJlbiBkZW0gYXJtZW4gS2VybAplaW5mYWNoIGRpZSBOZXJ2ZW4gdmVyc2FndC4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmV1bGljaCBiZWltIFBva2FsLUVuc3BpZWwgKExpLCAyMy4gTWFpIDE5OTcsIDExOjAxOjI0KToKfiMhIHJuPUJvaW5nIHJ0PTg2NDM3Nzg5NCByZz1zY2htYXJybgp+IyEgdGlkPTg2NDMxNjI3OQpSaWNodGlnLCBkYXMgRWxmbWV0ZXJzY2hpZXNzZW4gc2Nob24sIGFiZXIgaW4gZGVyIDIuSGFsYnplaXRpZyB1bmQKVmVybGFlbmdlcnVuZyBoYXR0ZW4gc2llIG1hc3NpZyBHbHVlY2shCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXVsaWNoIGJlaW0gUG9rYWwtRW5zcGllbCAoR3JpbW1ib3JuLCAyMy4gTWFpIDE5OTcsIDExOjAyOjU0KToKfiMhIHJuPUxpIHJ0PTg2NDM3ODA4NCByZz1zY2htYXJybgp+IyEgdGlkPTg2NDMxNjI3OQpEYXMgR2x1ZWNrIGlzdCBtaXQgZGllIFR1ZWNodGlnZW4hIEphd29sbCEKCkdyaW1tYm9ybiBkZXIgQ2FsdmluaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXVsaWNoIGJlaW0gUG9rYWwtRW5zcGllbCAoSGFyLCAyMy4gTWFpIDE5OTcsIDEzOjAyOjMxKToKfiMhIHJuPUxpIHJ0PTg2NDM3ODA4NCByZz1zY2htYXJybgp+IyEgdGlkPTg2NDMxNjI3OQpHbHVlY2sgLSBqYSB1bmQ/CkhhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ3JhZCBnZWZ1bmRlbiAuLiAoQWxib2luLCAyMy4gTWFpIDE5OTcsIDE1OjMzOjE1KToKRGllIEludGVsbGlnZW56IHZlcmRpcmJ0IGRlbiBTaW5uIGZ1ZXIgZGFzIFdlc2VudGxpY2hlLgoKQW50b2luZSBkZSBTYWludC1FeHVwZXJ5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZ3JhZCBnZWZ1bmRlbiAuLiAoR3JpbW1ib3JuLCAyMy4gTWFpIDE5OTcsIDE1OjM2OjM3KToKfiMhIHJuPUFsYm9pbiBydD04NjQzOTQzOTUgcmc9c2NobWFycm4KfiMhIHRpZD04NjQzOTQzOTUKV29oZXIgd2lsbHN0IGF1c2dlcmVjaG5ldCBEdSBkYXMgZGVubiB3aXNzZW4/CgpHcmltbWJvcm4gZGVyIEF0aGVpc3QgaGF0IGJlaWRlcy4gSW50ZWxsaWdlbnogdW5kIFNpbm4gZnVlciBkYXMgV2VzZW50bGljaGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDIzLiBNYWkgMTk5NywgMTU6Mzk6MjYpOgoiQmV2b3IgbWFuIGVpbmVyIFNhY2hlIHNpY2hlciBpc3QsIGlzdCBtYW4gZ2VybmUgc2VsYnN0c2ljaGVyLiIgKEEuIEhpcmRtYW4pCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCB2b24gbGV0enRlciBXb2NoZSAoR3JpbW1ib3JuLCAyMy4gTWFpIDE5OTcsIDE1OjQwOjIzKToKTXVzcyBpY2ggbGV0enRlIFdvY2hlIHZlcnBhc3N0IGhhYmVuOgoiRXMgaGF0IG5vY2ggbmllIGVpbmVuIGd1dGVuIEtyaWVnIG9kZXIgZWluZW4gc2NobGVjaHRlbiBGcmllZGVuIGdlZ2ViZW4uIgooQmVuamFtaW4gRnJhbmtsaW4pCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZ3JhZCBnZWZ1bmRlbiAuLiAoQWxib2luLCAyMy4gTWFpIDE5OTcsIDE1OjQxOjEyKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NjQzOTQ1OTcgcmc9c2NobWFycm4KfiMhIHRpZD04NjQzOTQzOTUKaWNoIG1vZWNodGUgZGF6dSBrdXJ6IGJlbWVya2VuLCBkYXNzIGljaCB6aXRpZXJ0IGhhYmUgdW5kIGRhbWl0IG5pY2h0CnVuYmVkaW5ndCBtZWluZSBNZWludW5nIHdpZWRlcmdlZ2ViZW4gaGFiZS4KQWxib2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBncmFkIGdlZnVuZGVuIC4uIChHcmltbWJvcm4sIDIzLiBNYWkgMTk5NywgMTU6NDQ6MDUpOgp+IyEgcm49QWxib2luIHJ0PTg2NDM5NDg3MiByZz1zY2htYXJybgp+IyEgdGlkPTg2NDM5NDM5NQpJbiBkZW0gWnVzYW1tZW5oYW5nIGZhZWxsdCBtaXIgbm9jaCBkZXIgVXJhbHRzcHJ1Y2ggZWluOiAiV2FzIHNhZ2VuIFNpZSBhbHMKVW5iZXRlaWxpZ3RlciB6dW0gVGhlbWEgSW50ZWxsaWdlbno/IgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHYW5kbyAoR3JpbW1ib3JuLCAyMy4gTWFpIDE5OTcsIDE2OjEzOjIyKToKfiMhIG9uPUdyaW1tYm9ybiBvdD04NjQzOTY3Nzggb2c9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgcm49UXVlbmdpc3R1IHJ0PTg2NDM5NjQ5MiByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9ODY0MTY2MzI1CmEpIEpvLCBkYXMgaGF0IHdpcmtsaWNoIHdhcyBpbiBkZXIgUnVicmlrIHBvbGl6ZWkuYmVzY2h3ZXJkZW4genUgc3VjaGVuLi4uCmIpIEthbm4gaWNoIGRhZnVlciwgd2VubiBtYW4gaGllciBrZWluZSBqYXBhbmlzY2hlbiBTY2hyaWZ0emVpY2hlbiBkYXJzdGVsbGVuCmthbm4/CgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEdhbmRvIChHcmltbWJvcm4sIDIzLiBNYWkgMTk5NywgMTY6MjA6NDgpOgp+IyEgb249UXVlbmdpc3R1IG90PTg2NDM5NzEwOCBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISBybj1HcmltbWJvcm4gcnQ9ODY0Mzk2Nzc4IHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD04NjQxNjYzMjUKYWQgYSkgTm9lLCBoYXQgZXMgbmljaHQuCmFkIGIpIEphIGthbm5zdCBEdS4gV296dSBiaXN0IER1IE1hZ2llcj8gOy0pCgpRdWVuZ2lzdHUKCi0+IGFiIG5hY2ggIlZlcmxlZydzIHdvaGluIER1IHdpbGxzdCIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBHYW5kbyAoR3JpbW1ib3JuLCAyMy4gTWFpIDE5OTcsIDE2OjIxOjAyKToKfiMhIG9uPUdyaW1tYm9ybiBvdD04NjQzOTcxOTQgb2c9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgcm49UXVlbmdpc3R1IHJ0PTg2NDM5NzEwOCByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9ODY0MTY2MzI1Clp1bSBOYWNoc2F0ejogS2FubiBpY2ggbmljaHQsIHdlaWwgaWNoIGluIHBvbGl6ZWkuYmVzY2h3ZXJkZW4gbmljaHQgbG9lc2NoZW4Ka2Fubi4gRGFzIGlzdCBhdWNoIGd1dCB1bmQgcmljaHRpZyBzbyB1bmQgZGFzIHdpbGwgaWNoIGF1Y2ggZ2FyIG5pY2h0IGtvZW5uZW4uCkhpZXIgbXVzcyBhbHNvIGplZGVyIHNlaW5lbiBNaXN0IHNlbGJlciBsb2VzY2hlbi92ZXJsZWdlbiBvZGVyIGF1ZiBDYXQqCndhcnRlbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogR2FuZG8gKEdyaW1tYm9ybiwgMjMuIE1haSAxOTk3LCAxNjoyMjoxNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODY0Mzk3MjQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY0MTY2MzI1Ck1hbiBzaWVodCwgaWNoIGthbm4gaWhuIGluIGVpbmUgYW5kZXJlIFJ1YnJpayB2ZXJzY2hpZWJlbiwgZGVyIE9yaWdpbmFsYXJ0aWtlbApibGVpYnQgYWJlciBiZXN0ZWhlbi4gV3VlcmRlIGVyLCB3ZW5uIG5pY2h0IGViZW4gYW5nZWtvbW1lbiB3YWVyZToKUXVlbmdpc3R1IHRlaWx0IERpciBtaXQ6IE9rZXlkb2tleSwgaWNoIGxvZXNjaCBlcwoqZ3JpbnMqCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QgaGF0IHNpY2ggYmVpbSBWZXJsZWdlbiBkb2NoIGdsYXR0IGluIGRlciBOdW1tZXIKZ2VpcnJ0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOZXVsaWNoIGJlaW0gUG9rYWwtRW5zcGllbCAoUmFmZmksIDIzLiBNYWkgMTk5NywgMTg6MTA6NDApOgp+IyEgcm49SGFyIHJ0PTg2NDM4NTM1MSByZz1zY2htYXJybgp+IyEgdGlkPTg2NDMxNjI3OQoKRW50bGljaCBtYWwgZWluIFRocmVhZCBkZXIgaGllcmhlciBnZWhvZXJ0LgoKUmFmZmkgZ3JpbnN0IEdyaW1tYm9ybiBhbi4KSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTWFoYXRtYSwgMjMuIE1haSAxOTk3LCAxODoyODoxNSk6Ck5haXJvbGYgdGVpbHQgRGlyIG1pdDogbm9jaCBsZWJlIGljaCA6LSkKCltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIE5haXJvbGYgdW1nZWJyYWNodC4KCk1haGF0bWEgKHRyYXVlcm5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIGRvb2ZlcyAoU3RhaGxkb3JuLCAyMy4gTWFpIDE5OTcsIDIzOjI1OjE3KToKd2FzIGRvb2ZlcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdhcyBkb29mZXMgKEVzY3ViYXIsIDIzLiBNYWkgMTk5NywgMjM6Mjc6MzEpOgp+IyEgcm49U3RhaGxkb3JuIHJ0PTg2NDQyMjcxNyByZz1zY2htYXJybgp+IyEgdGlkPTg2NDQyMjcxNwpOYWphIGRhcyBpc3QgamV0enQgd2llZGVyIHp1IGRvb2YsIGV0d2FzIGludGVsbGlnZW50ZXJlcyBkb29mIHNvbGx0ZSBlcyBzY2hvbgpzZWluLgoKRWlzYmFlciBFc2N1YmFyLCBoZXV0ZSBmcnVzdHJpZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHdhcyBkb29mZXMgKFN0YWhsZG9ybiwgMjMuIE1haSAxOTk3LCAyMzoyODozMyk6Cn4jISBybj1Fc2N1YmFyIHJ0PTg2NDQyMjg1MSByZz1zY2htYXJybgp+IyEgdGlkPTg2NDQyMjcxNwpkb29mIGJlIG9yIG5vdCBkb29mIGJlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmV1bGljaCBiZWltIFBva2FsLUVuc3BpZWwgKEJhYnMsIDI0LiBNYWkgMTk5NywgMDc6NTM6NDEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2NDM3ODE3NCByZz1zY2htYXJybgp+IyEgdGlkPTg2NDMxNjI3OQpVbnNpbm4hCgpTb25zdCBoYWV0dGVuIGRpZSBTY2hhbGtlciBzY2hsaWVzc2xpY2ggbmljaHQgZ2V3b25uZW4hCk5hY2ggZGVtIHNjaGxhcHBlbiBTcGllbCEgOy0pCgoKUFM6IERpZSBNYWlsYWVuZGVyIGhhYmVuIHRhdHNhZWNobGljaCBiZXNzZXIgYXVzZ2VzZWhlbiEKV2VubiBhdWNoIG5pY2h0IHNvIHRvbGwgZnVlciBJdGFsaWVuZXIuLi4gRnVzc2JhbGwgdmVyc2F1dCBoYWx0IG5pY2h0IG51cgpkZW4gQ0hhcmFrdGVyLCBzb25kZXJuIGF1Y2ggZGllIEZpZ3VyLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHdhcyBkb29mZXMgKEJhYnMsIDI0LiBNYWkgMTk5NywgMDc6NTY6MjEpOgp+IyEgcm49U3RhaGxkb3JuIHJ0PTg2NDQyMjkxMyByZz1zY2htYXJybgp+IyEgdGlkPTg2NDQyMjcxNwpCYW5hdXNlISEhIQonVG8gaXMgb3Igbm90IHRvIGlzLCB0aGF0IGlzIHRoZSBhc2snCmhlaXNzdCBkYXMuIEZyYWcgbWFsIGRlbiBTaGFrZWRiZWVyIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBTZWt1bmRlIChHYXN0MSwgMjQuIE1haSAxOTk3LCAwOTo1Mzo0OSk6Cldlbm4gZXMga2VpbmVuIEtyaWVnIG1laHIgZ2lidCwgd2VyZGVuIHNpZSBzaWNoIHNvbGFuZ2UgdW0gZGVuIEZyaWVkZW4Kc3RyZWl0ZW4sIGJpcyBhbGxlcyB6ZXJzdG9lcnQgaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGlsYmVydCB6dW0gWC10ZW46IChHbG9pbiwgMjUuIE1haSAxOTk3LCAxOTo1NzowOCk6CkVpbiBTdHJhdXNzIFBldGVyc2lsaWUgdmVyd2Vsa3QgdW5kIHplcmZhZWxsdC4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KRHUgYmVnaW5uc3QgaW5icnVlbnN0aWcgenUgYmV0ZW4uCgpPYiBlcyBoaWxmdCA/IEdsb2luLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVmdHJhZyAoWmVwaHlyLCAyNi4gTWFpIDE5OTcsIDIxOjE5OjAyKToKRnVlciBBbmF0b2w6IERpZSBaZWl0dW5nIGlzdCBrYXB1dHQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdWZ0cmFnIChBbmF0b2wsIDI2LiBNYWkgMTk5NywgMjE6MjA6NDcpOgp+IyEgcm49WmVwaHlyIHJ0PTg2NDY3NDM0MiByZz1zY2htYXJybgp+IyEgdGlkPTg2NDY3NDM0MgpXdXNzdGV0IGlociBlaWdlbnRsaWNoLCBkYXNzIFplcGh5ciBtaXQgendlaSBab2VwZmNoZW4gdW5kIHJvc2EgU2NobGVpZmNoZW4KZ2FueiBiZXN0aW1tdCBmdXJjaHRiYXIgc3Vlc3MgYXVzc2llaHQ/IDstKSkKCkZ1ZXIgRW5nbGFuZCwgSmFtZXM/Ck5laW4sIGZ1ZXIgWmVwaHlyIDstKQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJvZXNjaGUgLi4uIChSaW5nb3IsIDI2LiBNYWkgMTk5NywgMjE6MzM6MjEpOgpFaW4gRnJvc2NoIHRlaWx0IERpciBtaXQ6IGthbm5zdCBkdSBtaXIgdmllbGxlaWNodCBiZWltIG1hZXJjaGVuIGhlbGZlbiA/Pz8KCltrd2VyIGZyb3NjaF0KCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNb24sIDI2LiBNYWkgMTk5NywgMjE6Mjc6NTcgKDIgVGVpbG5laG1lcikKCkJlbmVkaWN0Li4uLi4uLi5zICBLYXJ0aWkuLi4uLi4uLi4uegoKW0FsbGdlbWVpbjpSaW5nb3JdIGhtbWphLCB3ZWxjaGVyIGRlciBiZWlkZW4gRnJvZXNjaGUgd29sbHRlIHdhcyB2b24gbWlyPwoKCkVpbiBGcm9zY2ggdGVpbHQgRGlyIG1pdDogaWNoIHdhcnMKCjxvaG5lIFdvcnRlPgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJvc2NoPyAoQW5hdG9sLCAyNi4gTWFpIDE5OTcsIDIxOjM0OjI2KToKCltBbGxnZW1laW46QW5hdG9sXSBTaWx2YWFhbmFhYWFhYWEsIGljaCB3aWxsICdyZnJvc2NoZSchIDstKQpFaW4gRnJvc2NoIHRlaWx0IERpciBtaXQ6IHdvaGVyIHdlaXNzIGR1IGRhcyBlaWdlbnRsaWNoID8/PyA6KQoKKmh1c3QqIE1hbmNobWFsIHRyaWZmdHMgd2lya2xpY2ggOikKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZyb2VzY2hlIC4uLiAoSmltZGlncml6LCAyNi4gTWFpIDE5OTcsIDIzOjIzOjM5KToKfiMhIHJuPVJpbmdvciBydD04NjQ2NzUyMDEgcmc9c2NobWFycm4KfiMhIHRpZD04NjQ2NzUyMDEKQWxzbyBSaW5nb3IsCgpuYWNoZGVtIGplZGVyIHdlaXNzLCBkYXNzIEthcnRpaSBlaW4gTWF1bHd1cmYgaXN0LAprYW5ucyBhbHNvIG51ciBCZW5lZGljdCBnZXdlc2VuIHNlaW4uCgpXdXJzdHNlaGVyIDstKSkKCiBKaW0gZGlHcml6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIVUNIPyAoQW5hdG9sLCAyNy4gTWFpIDE5OTcsIDAwOjQ1OjE3KToKIGt3ZXIgaW4gdHVlYmluZ2VuCiAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERpZSwgMjcuIE1haSAxOTk3LCAwMDo0NDo0MyAoMjMgVGVpbG5laG1lcikKCkJha2Vtb25vLi4uLi4uLi5zICBDaGFvc2dpbGRlLi4uLi4ucyAgRHVuY3Rvbi4uLi4uLi4uLnMgIEVsZmVuZG9yZi4uLi4uLi5zCkdyaWJsdW1hcy4uLi4uLi5zICBKb2xsZS4uLi4uLi4uLi4ucyAgTGljaC4uLi4uLi4uLi4uLnMgIEx1cGluZW50YWwuLi4uLi5zCkxvZm90ZW4uLi4uLi4uLi5zICBNb3Vsb2tpbi4uLi4uLi4ucyAgTmVhbmRlcnRhbC4uLi4uLnMgIE5lY3JvbWFudC4uLi4uLi5zCk5pYmVsaGVpbS4uLi4uLi5zICBPcmtlbmhvcnQuLi4uLi4ucyAgUG9zdGt1dHNjaGUuLi4uLnMgIFNoYWl0YW4uLi4uLi4uLi5zClN2b2x2YWVyLi4uLi4uLi5zICBUYW1pYmFyLi4uLi4uLi4ucyAgVG9ydHVnYS4uLi4uLi4uLnMgIFRpdGl3dS4uLi4uLi4uLi5zClZhbGdlc3NhLi4uLi4uLi5zICBXZXN0d2VnLi4uLi4uLi4ucyAgSGVmZS4uLi4uLi4uLi4uLlMKCkljaCBkYWNodGUsIGRhcyBNdWQgd2FlcmUgaW4gTXVlbnN0ZXIgaW5zdGFsbGllcnQuLi4uPwoKQW5hdG9sLCByYWV0c2VsbmQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhZHJlc3N2ZXJ3YWx0dW5nIChXb29keSwgMjcuIE1haSAxOTk3LCAwMToyMjo1Myk6Cn4jISBybj1TdXNoaSBydD04NjQ2NzkxMjggcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9ODY0NjY3MzAwCj4gSWNoIHd1ZXJkZSBzYWdlbjogTWljcm9zb2Z0IGlzbid0IHRoZSBhbnN3ZXIuIE1pY3Jvc29mdCBpcyB0aGUgcXVlc3Rpb24sCj4gYW5kIHRoZSBhbnN3ZXIgaXMgTk8uCgpJZiBNaWNyb3NvZnQgaXMgdGhlIGFuc3dlciwgaXQgbXVzdCBoYXZlIGJlZW4gYSBWRVJZIHNpbGx5IHF1ZXN0aW9uLgoKKnNlbmYqIHdvb2R5Li0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIVUNIPyAoQXN0YXIsIDI3LiBNYWkgMTk5NywgMTI6NTc6NDQpOgp+IyEgcm49QW5hdG9sIHJ0PTg2NDY4NjcxNyByZz1zY2htYXJybgp+IyEgdGlkPTg2NDY4NjcxNwpIbW0sIGljaCBnbGF1YiBIZWZlIGhhdCBlcyBnZWtsYXV0IDspCgpBc3RhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGlIaSAoQXN0YXIsIDI3LiBNYWkgMTk5NywgMTM6NDE6NTkpOgpNb3JnYXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KW0FsbGdlbWVpbjpNb3JnYXIgYmVncnVlc3N1bmdza251ZGRlbHQgYWxsZS5dCgpBc3RhcgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIaUhpIChQYW1wZXJzLCAyNy4gTWFpIDE5OTcsIDEzOjQyOjM1KToKfiMhIHJuPUFzdGFyIHJ0PTg2NDczMzMxOSByZz1zY2htYXJybgp+IyEgdGlkPTg2NDczMzMxOQpIbS4uLi4KV28gd2FyIGRlciB3aXR6PwoKUGFtcGVycy4gQmVncmlmZnNzdHV0emlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIaUhpIChBc3RhciwgMjcuIE1haSAxOTk3LCAxMzo0OTozMCk6Cn4jISBybj1QYW1wZXJzIHJ0PTg2NDczMzM1NSByZz1zY2htYXJybgp+IyEgdGlkPTg2NDczMzMxOQpIbW0gd2VubiBlcyBlaW4gV2l0eiBnZXdlc2VuIHdhZXJlIGhhdHRlIGljaCBpaG4gdW50ZXIgd2l0emUgcmVpbmdldGFuIDspCgpBc3RhcgoKUFM6IC0tPnNjaG1hcnJuIC4uLiBhY2ggbmUsIGRhIHNpbmQgd2lyIGphIHNjaG9uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIaUhpIChQYW1wZXJzLCAyNy4gTWFpIDE5OTcsIDEzOjUwOjU0KToKfiMhIHJuPUFzdGFyIHJ0PTg2NDczMzc3MCByZz1zY2htYXJybgp+IyEgdGlkPTg2NDczMzMxOQpJY2ggaGFiIG1pY2ggamV0enQgYmVsZWhyZW4gbGFzc2VuLCBkYXNzIGRhIG5vY2ggc29uIGtvbWlzY2hlciAodm9uIG1pcgpnZWdhZ3RlcikgUXVlc3RzaG91dCB2b3JrYW0uCgpNYWNodHMgendhciBuaWNodCBvcmlnaW5lbGxlciwgYWJlciB3ZW5pZ3N0ZW5zIHZlcnN0YWVuZGxpY2guIDotKQoKUGFtcGVycy4gTiBiaXNzIGRvb2YgbWFuY2htYWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdW5kZSB3b2xsdCBpaHIgZXdpZyBsZWJlbiA/IChSYWZmaSwgMjcuIE1haSAxOTk3LCAxNTo1MTowMyk6CiJXZSB3aWxsIG5vdCBoYXZlIGhpbSBwdXQgZG93bi4gTHVja3kgaXMgYmFzaWNhbGx5IGEgZGFtbiBnb29kIGd1aWRlIApkb2csIiBFcm5zdCBHZXJiZXIsIGEgZG9nIHRyYWluZXIgZnJvbSBXdXBwZXJ0YWwgdG9sZCByZXBvcnRlcnMuICJIZSAKanVzdCBuZWVkcyBhIGxpdHRsZSBicnVzaC11cCBvbiBzb21lIGVsZW1lbnRhcnkgc2tpbGxzLCB0aGF0J3MgYWxsLiIKCkdlcmJlciBhZG1pdHRlZCB0byB0aGUgcHJlc3MgY29uZmVyZW5jZSB0aGF0IEx1Y2t5LCBhIEdlcm1hbiBzaGVwaGVyZCAKZ3VpZGUtZG9nIGZvciB0aGUgYmxpbmQsIGhhZCBzbyBmYXIgYmVlbiByZXNwb25zaWJsZSBmb3IgdGhlIGRlYXRocyBvZiAKYWxsIGZvdXIgb2YgaGlzIHByZXZpb3VzIG93bmVycy4gIkkgYWRtaXQgaXQncyBub3QgYW4gaW1wcmVzc2l2ZSByZWNvcmQgCm9uIHBhcGVyLiBIZSBsZWQgaGlzIGZpcnN0IG93bmVyIGluIGZyb250IG9mIGEgYnVzLCBhbmQgdGhlIHNlY29uZCBvZmYgCnRoZSBlbmQgb2YgYSBwaWVyLiBIZSBhY3R1YWxseSBwdXNoZWQgaGlzIHRoaXJkIG93bmVyIG9mZiBhIHJhaWx3YXkgCnBsYXRmb3JtIGp1c3QgYXMgdGhlIENvbG9nbmUgdG8gRnJhbmtmdXJ0IGV4cHJlc3Mgd2FzIGFwcHJvYWNoaW5nIGFuZCAKaGUgd2Fsa2VkIGhpcyBmb3VydGggb3duZXIgaW50byBoZWF2eSB0cmFmZmljLCBiZWZvcmUgYWJhbmRvbmluZyBoaW0gCmFuZCBydW5uaW5nIGF3YXkgdG8gc2FmZXR5LiBCdXQsIGFwYXJ0IGZyb20gZXBpbGVwdGljIGZpdHMsIGhlIGhhcyBhIApsb3ZlbHkgdGVtcGVyYW1lbnQuIEFuZCBndWlkZSBkb2dzIGFyZSBkaWZmaWN1bHQgdG8gdHJhaW4gdGhlc2UgZGF5cy4iCgpBc2tlZCBpZiBMdWNreSdzIGZpZnRoIG93bmVyIHdvdWxkIGJlIHRvbGQgYWJvdXQgaGlzIHByZXZpb3VzIHJlY29yZCwgCkdlcmJlciByZXBsaWVkOiAiTm8uIEl0IHdvdWxkIG1ha2UgdGhlbSBuZXJ2b3VzLCBhbmQgd291bGQgbWFrZSBMdWNreSAKbmVydm91cy4gQW5kIHdoZW4gTHVja3kgZ2V0cyBuZXJ2b3VzIGhlJ3MgbGlhYmxlIHRvIGRvIHNvbWV0aGluZyBzaWxseS4iCgpFdXJvcGEgVGltZXMuIE9jdG9iZXIgMTk5My4gCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogd2FzIGRvb2ZlcyAoQW5ndXMsIDI3LiBNYWkgMTk5NywgMTc6NTY6MTMpOgp+IyEgcm49QmFicyBydD04NjQ0NTMzODEgcmc9c2NobWFycm4KfiMhIHRpZD04NjQ0MjI3MTcKTmVlZWUsIE5lZWVlIExldXRzISBEYXMgaGVpc3N0OgonVHdvIGJlZXIgb3Igbm90IHR3byBiZWVyLCB0aGF0IGlzIG5vIHF1ZXN0aW9uIScKLi4uIHZvbiBTaGFrZXNiZWVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogd2FzIGRvb2ZlcyAoR3JpbW1ib3JuLCAyNy4gTWFpIDE5OTcsIDIwOjI2OjQ4KToKfiMhIHJuPUFuZ3VzIHJ0PTg2NDc0ODU3MyByZz1zY2htYXJybgp+IyEgdGlkPTg2NDQyMjcxNwpOb3BlLCBkaWUgbW9kZXJuZSBWZXJzaW9uIGlzdDogMkIgb3Igbm90IDJCLCB0aGF0cyBGRi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCBoYXQgc2ljaCBkZW4gZXJzdCBlcmtsYWVyZW4gbGFzc2VuIG11ZXNzZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHdhcyBkb29mZXMgKEFuYXRvbCwgMjcuIE1haSAxOTk3LCAyMDozNzo1MCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODY0NzU3NjA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY0NDIyNzE3CkljaCBrYW5udGUgZGFzIGFscyAiMkIgfCAhMkIsIHRoYXQncyBGRiIgOikKCkJlc3Nlcndpc3NlciBBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiB3YXMgZG9vZmVzIChTaWx2YW5hLCAyNy4gTWFpIDE5OTcsIDIwOjQ4OjU3KToKfiMhIHJuPUFuYXRvbCBydD04NjQ3NTgyNzAgcmc9c2NobWFycm4KfiMhIHRpZD04NjQ0MjI3MTcKRXMgZ2lidCBkYSBhdWNoIG5vY2ggbmUgVmVyc2lvbiB2b24gU2luYXRyYSBhdXMgZGVuIDYwZXJuOgoKICAgVG9vIEJlIERvIEJlIERvby4uLi4KCkFjaCBqYSwgdW5kIG5lIEJpb2xvZ2VudmVyc2lvbiwgYWJlciBkaWUga2FubiBtYW4gbnVyIHplaWNobmVuLi4uClNpbHZhbmEgLSBoYXQgbmUgZ2FuemUgU2FtbWx1bmcgZGF2b24uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJsZWdlIChQYW1wZXJzLCAyNy4gTWFpIDE5OTcsIDIwOjQ5OjQxKToKSG1tLi4uIERhIHdvbGx0IGljaCBhdWNobWFsIHdhcyB2ZXJsZWdlbjoKCldBUk5VTkc6IERhcyBpc3QgbmljaHQgRGVpbiBlaWdlbmVyIEFydGlrZWwhCkR1IGRhcmZzdCBpbiBkaWVzZXIgUnVicmlrIG5pY2h0IHNjaHJlaWJlbiEKV2FybnVuZyEgS29ubnRlIEFydGlrZWwgYW4gYWx0ZXIgUG9zaXRpb24gbmljaHQgbG9lc2NoZW4uCkFydGlrZWwgbmFjaCBSdWJyaWsgbXVlbGwgdmVybGVndC4KClBhbXBlcnMuIE1pdCBzZWluZW0gdmVybGVnZW4gc2VociBlcmZvbGdyZWljaC4uLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWZXJsZWdlIChHcmltbWJvcm4sIDI3LiBNYWkgMTk5NywgMjA6NTA6MzEpOgp+IyEgcm49UGFtcGVycyBydD04NjQ3NTg5ODEgcmc9c2NobWFycm4KfiMhIHRpZD04NjQ3NTg5ODEKRHUgaXJyc3QuIER1IGhhc3QgbmljaHQgdmVybGVndCwgRHUgaGFzdCBrb3BpZXJ0LgoKR3JpbW1ib3JuIGhhdCBkYSBFcmZhaHJ1bmcuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVmVybGVnZSAoUGFtcGVycywgMjcuIE1haSAxOTk3LCAyMDo1MTo0MCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODY0NzU5MDMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY0NzU4OTgxCkljaCB3ZWlzcy4gSWNoIHd1c3N0ZSBuaWNodCwgZGFzcyBhdWNoIERpciBkYXMgZmVpbmUgU3RpbG1pdHRlbCBkZXIgSXJvbmllCm5pY2h0IGVpbmdhZW5naWcgaXN0LiA6LSkKClBhbXBlcnMuIFdpbGwgYXVjaCB2ZXJsZWdlbiBrb2VubmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBWZXJsZWdlIChBbmF0b2wsIDI3LiBNYWkgMTk5NywgMjA6NTE6NTIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2NDc1OTAzMSByZz1zY2htYXJybgp+IyEgdGlkPTg2NDc1ODk4MQoiS29waWVyZXIiIGlzdCBHaWxkZW5sZXZlbCA0LCBhYmVyIGltbWVyaGluIGV0d2FzLCBMZXZlbCAyLTMga29lbm5lbiBudXIKbGVzZW4uLi4gOy0pCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBWZXJsZWdlIChTaWx2YW5hLCAyNy4gTWFpIDE5OTcsIDIxOjAwOjUwKToKfiMhIHJuPUFuYXRvbCBydD04NjQ3NTkxMTIgcmc9c2NobWFycm4KfiMhIHRpZD04NjQ3NTg5ODEKSG1tbSwgZGFzIHdhZXJlIGRvY2ggbWFsIHdhcyBmdWVyIE1hZ2llci4gRGllIFZlcmxlZ2VyLUdpbGRlLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGF1ZiBUaXRpd3UgKERpZWRlciwgMjcuIE1haSAxOTk3LCAyMzo0MDoxOSk6CkVpbiBXYWwgbGVndCBhbi4KCmNoYW9zYmFsbCB3YWwKCmVpbiBXYWwgbGVidCBkb2NoIG5pY2h0IQoKaHVjaD8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaWxiZXJ0IEh5ZHJhPyAoQW5hdG9sLCAyNy4gTWFpIDE5OTcsIDIzOjQzOjMzKToKClhlcmEgcnVmdDogaGlsYmVydApEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KCkh1Y2g/IEZhc3ppbmllcmVuZCA6KQoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBWZXJsZWdlIChDYXVubywgMjguIE1haSAxOTk3LCAxMjoxOToyNyk6Cn4jISBybj1TaWx2YW5hIHJ0PTg2NDc1OTY1MCByZz1zY2htYXJybgp+IyEgdGlkPTg2NDc1ODk4MQpBbHMgUGZsaWNodHF1ZXN0IGZ1ZXIgZGllIFZlcmxlZ2VyLUdpbGRlIHBsYWVkaWVyZSBpY2ggZnVlciBkaWUgSHVkZGxlcyAuLi4KCkMuIE5vCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBOYXppcyEgKEdyaW1tYm9ybiwgMjguIE1haSAxOTk3LCAxNDowOTo0MCk6Cn4jISBvbj1GZXVlcndlaHIgb3Q9ODY0NzY3ODMzIG9nPWFsbGdlbWVpbmVzCn4jISBybj1GZXVlcndlaHIgcnQ9ODY0NzY3Nzc5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODY0NjgxNjQ0CgpNaXN0LCBpcmdlbmR3aWUgaXN0IGRpZSBSdWJyaWsgd29obCBmYWxzY2guCkVnYWwuCkdyaW1tYm9ybiwgZG8gdGhlIGRlZWQuCgogICBGZXVlcndlaHIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB3YXMgZG9vZmVzIChBc3RhciwgMjguIE1haSAxOTk3LCAxNTo0NTowNyk6Cn4jISBybj1Bbmd1cyBydD04NjQ3NDg1NzMgcmc9c2NobWFycm4KfiMhIHRpZD04NjQ0MjI3MTcKSWNoIGRhY2h0ZToKVHdvIGJlZXIgb3IgdGhyZWUgYmVlciwgdGhhdCBpcyBubyBxdWVzdGlvbiEKCkFzdGFyCgpQUzogV29sbHRlIGdlcmFkZSAtPnNjaG1hcnJuIHNjaHJlaWJlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW5nc3Q/IChQYXJhY2Vsc3VzLCAyOC4gTWFpIDE5OTcsIDE3OjAxOjU4KToKTWFuY2hlIFNwaWVsZXIgc2NoZWluZW4gamEgdGF0c2FlY2hsaWNoIGFuZ3N0IHZvciBtaXIgenUgaGFiZW4gLi4uCgpEdSBzYWdzdDogSGkKR2FyZmllbGQgaGF0IGdlcmFkZSBkaWUgVmVyYmluZHVuZyB6dSBNb3JnZW5HcmF1ZW4gZ2VrYXBwdC4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEdhcmZpZWxkLgoKUGFyYWNlbHN1cywgZGVyIFNjaHJlY2tlbiBkZXIgU3BpZWxlciA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFuZ3N0PyAoU2NobGlwcywgMjguIE1haSAxOTk3LCAxNzoyNTo0Nyk6Cn4jISBybj1QYXJhY2Vsc3VzIHJ0PTg2NDgzMTcxOCByZz1zY2htYXJybgp+IyEgdGlkPTg2NDgzMTcxOApWaWVsZWljaHQgZGFjaHRlIHNpZSwgc2llIGlzdCB2ZXJzZWhlbnRsaWNoIGluIGRlciBQYXJhd2VsdCBnZWxhbmRldCAuLi4KClNjaGxpcHMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuIChTdGFobGRvcm4sIDMwLiBNYWkgMTk5NywgMTY6NDM6MTcpOgp+IyEgb249U3RhaGxkb3JuIG90PTg2NTAwMzM3NSBvZz10cmVmZmVuCmViZW4gcGFzc2llcnQ6CkFzdGVyaXggZnJhZ3QgQnJpZXNlbHRyaW0gbmFjaCBLb21tYW5kYW50LgpCcmllc2VsdHJpbSBzYWd0OiBzYWd0OiBEYXMgYmluIGljaCwgbmEgdW5kPwpBc3Rlcml4IGZyYWd0IEJyaWVzZWx0cmltIG5hY2ggR2VmYW5nZW5lci4KQnJpZXNlbHRyaW0gc2FndDogRnJhZyBkb2NoIG1hbCBkZW4gS29tbWFuZGFudGVuIGRhbmFjaC4KbGFjaGUKRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgoKV2VubiBtYW4gc2ljaCBkYSBuaWNodCB2ZXJhcnNjaHQgdm9ya29tbXQuLi4KClNUQUhMLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdmllbGUgYW50d29ydGVuIDotKSAoQmlibywgMzAuIE1haSAxOTk3LCAxNzo0OTowMyk6CkhJLAoKaWNoIGZhbmRzIGVyc3RhdW5saWNoIHdpZXZpZWxlIEFudHdvcnRlbiBlcyBhdWYgZWluZSBlaW56aWdlIGtvbmtyZXRlIApGcmFnZSBnZWJlbiBrYW5uIDotKSBOYWphLCBsaWViZXIgdmllbGUgaGlsZnNiZXJlaXRlIExldXRlIGFscwpTY2h3ZWlnZW4gLi4uIGFiZXIgd2l0emlnIGZpbmQgaWNocyBkb2NoICA6LSkKCgpbQWxsZ2VtZWluOkphbmljZV0gd2llIGlzcyduIGRpZSBzeW50YXggdW0gZWluIHRnei1maWxlIHp1IHBhY2tlbiA/IApbQWxsZ2VtZWluOlN0YWhsZG9ybl0gZ3VuemlwIDxmaWxlPiAKW0FsbGdlbWVpbjpSdW1hdGFdIHRhciAtY3Z6ZiBmaWxlIGRhdGllbiAKW0FsbGdlbWVpbjpBbmdyb3hdIHRhciB4dnpmIGZpbGUudGd6IApbQWxsZ2VtZWluOlN0YWhsZG9ybl0gb2RlciBzbyAKW0FsbGdlbWVpbjpBbGJvaW5dIG5lIHVuY29tcHJlc3MgOykgCltBbGxnZW1laW46SmFuaWNlXSBwYWNrZW4gc3RhaGwsIG5pY2h0IGVudHBhY2tlbiA6KSAKW0FsbGdlbWVpbjpTdGFobGRvcm5dIGFjaHNvLiBnemlwLiA6KSAKW0FsbGdlbWVpbjpCZW5lZGljdF0gYXRqIHggKi5hcmogYzogOikpKSkpKSkgCltBbGxnZW1laW46QWxib2luXSBvZGVyIGFyaiB4PyAKW0FsbGdlbWVpbjpCZW5lZGljdF0gbWVpbmUgaWNoIGRvY2ggOikpKSAKW0FsbGdlbWVpbjpXb29keV0gZWlndGwuIGhhZXR0ZSBuYWNoIHJ1bWF0YSdzIGFudHdvcnQgd2llZGVyIApbQWxsZ2VtZWluOldvb2R5XSBzdGlsbGUgaGVycnNjaGVuIGtvZW5uZW4gOykKW0FsbGdlbWVpbjpBbGJvaW5dIHBrdW56aXAgCltBbGxnZW1laW46QmVuZWRpY3RdIHJhciB4IC4uLi4gCltBbGxnZW1laW46QmVuZWRpY3RdIG9kZXIgYXVjaCB1bnJhciAuLi4uIApbQWxsZ2VtZWluOkpoZl0ga2FubiBtYW4ncyBuaWNodCBlaW5mYWNoIGFua2xpY2tlbiA/IDxnZHI+CltBbGxnZW1laW46QWxib2luXSB0amEgendpc2NoZW4ga29lbm5lbiB1bmQgd29sbGVuIGdpYnRzCltBbGxnZW1laW46QWxib2luXSBlaW5lbiBVbnRlcnNjaGllZApbQWxsZ2VtZWluOkJlbmVkaWN0XSAqZ3JpbnMqIDwxNzoxNDo1Mj4KW0FsbGdlbWVpbjpKYW5pY2VdIHRhciAtY3ZmIHdhcidzLCB0aHggPDE3OjE0OjU4PgpbQWxsZ2VtZWluOlJ1bWF0YV0gTkVJTiBkYXMgeiBtdXNzIHNlaW4gPDE3OjE1OjA4PgpbQWxsZ2VtZWluOkFsYm9pbl0gYml0dGUgSmFuaXR6ZSA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYmVpbSBWZXJsb2JlbiAuLi4gKE5hc2ltLCAzMS4gTWFpIDE5OTcsIDAwOjE5OjMzKToKTmFzaW0gcnVlbHBzdC4KRGVyIEp1d2VsaWVyIGhhdCBkaWVzIG1pdCBGcmV1ZGVuIHZlcm5vbW1lbiB1bmQgcHJ1ZWZ0IG51biwgb2IgZXIgZGllIFJpbmdlCmF1Y2ggd2lya2xpY2ggdmVyZ2ViZW4gZGFyZi4KClJ1ZWxwcywgTmFzaW0gKG51biBhbmdlYmxpY2ggJ2dsdWVja2xpY2ggdmVybG9idCcpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogLi4uIHVuZCBpY2ggYmluIGF1ZiBkZXIgVG9pbGV0dGUgOy0pIChOYWlyb2xmLCAzMS4gTWFpIDE5OTcsIDA0OjU0OjA2KToKfiMhIHJuPUFuYXRvbCBydD04NjUwNDQ2OTAgcmc9c2NobWFycm4KfiMhIHRpZD04NjUwNDQ2OTAKbmEgdW5kIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogbGVnZSBrZXVsZW4gYWIgKEJhYnMsICAxLiBKdW4gMTk5NywgMDk6NDI6MjApOgp+IyEgb249QmFicyBvdD04NjUxNTA4OTIgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVd1cnplbCBydD04NjUwOTY5ODggcmc9ZW50d2lja2x1bmcKfiMhIHRpZD04NjQ1ODMwNzYKKmdyaW5zKgoKRGFzIHdhZ2UgaWNoIHp1IGJlendlaWZlbG4sIFd1cnplbGNoZW4uIERpZSBhbXRsaWNoZSBTcHJhY2hlIGluIFh5bGxvbWVyCmlzdCBCcm9rZW4gRW5nbGlzaC4gOykgRGllIEh1bmdlcnNub3QtTWVzc2FnZSBtdXNzIERpciBzb25zdHdvIHVudGVyZ2Vrb21tZW4Kc2Vpbi4KClRqYSwgU2NoZWlzcy1SaW5kZXJ3YWhuLi4uICEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipsYWNoKiAoUGFtcGVycywgIDEuIEp1biAxOTk3LCAxMzowMDoyOSk6CgpXYXMgbWFuIHNvIGZpbmRldCwgd2VubiBtYW4gY29kZSBsaWVzdDoKCmlmKCBnZXR1aWQodGhpc19wbGF5ZXIoKSkgPT0gInlhbnRybyIgKQogICAgcmV0dXJuICJEYXMgTG9jaCBpc3QgZnVlciBEZWluZSBLb2VycGVyZnVlbGxlIHp1IGtsZWluLlxuIjsKcmV0dXJuICJEYXMgTG9jaCBpc3QgZ3Jvc3MgZ2VudWcsIHVtIERpY2ggaGluZHVyY2ggenUgbGFzc2VuLlxuIjsKClBhbXBlcnMuIFJvdGZsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHBhcnR5dGVybWluIChaYXJkb3osICAyLiBKdW4gMTk5NywgMDk6NTU6NDEpOgp+IyEgb249THVnIG90PTg2NTE5ODM0MyBvZz1wYXJ0eQp+IyEgcm49S2V5IHJ0PTg2NTEwOTg5MyByZz1wYXJ0eQp+IyEgdGlkPTg2NTA2NDcwOQpUc3MgS2V5LAoKd2FzIGJpdHRlIGlzdCBpcm5vaXNjaD8KCjspCkx1ZwotPiBTY2htYXJyZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldHRlcyB6dW0gdGhlbWEgZnVzc2JhbGwuLi4uIDopIChBbmNhbGFnb24sICAyLiBKdW4gMTk5NywgMTA6NTA6MjApOgpLbnVkZGVscyB2b3J3ZWchIDopCkljaCBoYWJlIGRhIG5ldWxpY2ggendlaSBuZXR0ZSBzYWNoZW4gYXVmZ2VzY2huYXBwdC4uLjoKMSkKV2VpbCB2b3Iga3VyemVtIHp3ZWkgZXVyb3BhZWlzY2hlIFBva2FsZSBpbiBkaWUgcmVnaW9uIGdlaG9sdCB3dXJkZW4sIHdpcmQgZGVyClJ1aHJwb3R0IGpldHp0IHZpZWxlcm9ydHMgYWxzIGRhcyAiSGVyeiBkZXMgRnVzc2JhbGxzIiBiZXplaWNobmV0LiBEZW1uYWNoCndhZXJlLCByZWluIGFuYXRvbWlzY2ggZ2VzZWhlbiwgYmF5ZXJuIGRlciBBcnNjaCEgICAgIDopCgoyKSBGdXNzYmFsbCBpc3QgZWluZSBTcG9ydGFydCwgYmVpIGRlciAyMiBMZXV0ZSB1bSBlaW5lbiBCYWxsIGthZW1wZmVuIHVuZCBhbQpFbmRlIGltbWVyIGRldXRzY2hsYW5kIGdld2lubnQhICAoR2FyeSBsaW5la2VyKQpEYXMgd2FyJ3Mgc2Nob24uLi4uIDopCkFic2NobHVzc2ZhbGxydWVja3ppZWhlcmtudWRkZWwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5jYWxhZ29uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRHJhY28ga251ZGRlbGxlbnNpcyBtYWpvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLnNpZ25hdHVyZS4uLiAoQW5hdG9sLCAgMi4gSnVuIDE5OTcsIDE4OjA3OjI3KToKCkFuIG9wdGltaXN0IGlzIGEgbWFuIHdobyBsb29rcyBmb3J3YXJkIHRvIG1hcnJpYWdlLgpBIHBlc3NpbWlzdCBpcyBhIG1hcnJpZWQgb3B0aW1pc3QuCgpBdWEsIDstKQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sICAyLiBKdW4gMTk5NywgMTg6MTA6NTkpOgoiRGllIEt1bnN0IHp1IGxhbmd3ZWlsZW4gaXN0LCBhbGxlcyB6dSBlcnphZWhsZW4uIiAoVm9sdGFpcmUpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTcHJ1Y2ggZGVyIFdvY2hlIChNdXBmZWwsICAzLiBKdW4gMTk5NywgMDE6MTg6MjgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2NTI2Nzg1OSByZz1zY2htYXJybgp+IyEgdGlkPTg2NTI2Nzg1OQpCZWhlcnJzY2h0IER1IHBlcmZla3Qgd2llIGljaCBzZWhlLi4uCi1tdXBwZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNZWludW5nc3VtZnJhZ2UgKEdyaW1tYm9ybiwgIDMuIEp1biAxOTk3LCAwODo0NjozOSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODY1MzIwMzgxIG9nPWV0aWtldHRlCn4jISBybj1HcmltbWJvcm4gcnQ9ODY1MzE5OTc4IHJnPWV0aWtldHRlCn4jISB0aWQ9ODY1MjgwOTc2Ckthbm4gaWNoIG1pciB2b3JzdGVsbGVuLCBkYXNzIERpY2ggZGFzIG5pY2h0IHN0b2VydC4gRHUgcHJvZml0aWVyc3QgamEgYXVjaApkYXZvbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNZWludW5nc3VtZnJhZ2UgKFNpbHZhbmEsICAzLiBKdW4gMTk5NywgMDg6NTA6NDApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2NTMyMDM5OSByZz1zY2htYXJybgp+IyEgdGlkPTg2NTI4MDk3NgpIbW1tbS4uLi4KKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgImV0aWtldHRlIi4Kbm4KUnVicmlrIDQzOiBzY2htYXJybiwgQXJ0aWtlbDogMTcgdm9uIDE3ClJlXjM6IE1laW51bmdzdW1mcmFnZSAoR3JpbW1ib3JuLCAgMy4gSnVuIDE5OTcsIDA4OjQ2OjM5KToKW0F1dG9yOiBHcmltbWJvcm4sICAzLiBKdW4gMTk5NywgMDg6NDY6MjEsIHZlcmxlZ3Qgdm9uIGV0aWtldHRlXQpbQmV6dWc6IEFydGlrZWwgaW4gZXRpa2V0dGUgdm9uIEdyaW1tYm9ybiB2b20gIDMuIEp1biAxOTk3LCAwODozOTozOF0KClp3ZWkgRnJhZ2VuOiBXaWVzbyBzdGVodCBkZXIgQXJ0aWtlbCBpbiBzY2htYXJybiwgd2VubiBlciBpbiBldGlrZXR0ZQpnZXBvc3RldCB3dXJkZSwgdW5kIHdpZXNvIHN0ZWh0IG5pY2h0IGRhYmVpLCB3b3JhdWYgZXIgc2ljaCBfZ2VuYXVfCmJlemllaHQ/ClNpbHZhbmEgLSBoYXQgQmV6dWdzcHJvYmxlbWUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1laW51bmdzdW1mcmFnZSAoR3JpbW1ib3JuLCAgMy4gSnVuIDE5OTcsIDA4OjU0OjE1KToKfiMhIHJuPVNpbHZhbmEgcnQ9ODY1MzIwNjQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1MjgwOTc2CkVyIHN0ZWh0IGluIHNjaG1hcnJuLCB3ZWlsIGljaCBpaG4gZG9ydCBnZXNjaHJpZWJlbiBoYWJlIHVuZCBiZWltIGxlc2VuCnVlYmVybGVndCBoYWJlLCBkYXNzIGVyIHZpZWxsZWljaHQgZG9jaCBiZXNzZXIgbmFjaCBzY2htYXJybiBwYXNzdC4gRGllc2VzClZlcmhhbHRlbiBkYXJmIHJ1aGlnIGFscyBWb3JiaWxkIGRpZW5lbi4uLgpGdWVyIGRlbiBCZXp1ZyBiaW4gaWNoIG5pY2h0IHZlcmFudHdvcnRsaWNoLCBkYXMgaXN0IExvY29zIFNhY2hlLiBJbmhhbHRsaWNoCmJlemllaHQgZGVyIHNpY2ggYXVmIGRlbiBBcnRpa2VsIHZvbiBPZXR0aSwgd28gZXIgbWVpbnQsIFNjaG11ZGRlbGFubWFjaGUKd3VlcmRlIGlobiBuaWNodCBzdG9lcmVuLgoKQWNoIGphLCBlcyBoZWlzc3QgbmljaHQgIkJlenVnc3Byb2JsZW1lIiwgZXMgaGVpc3N0ICJCZXppZWh1bmdzcHJvYmxlbWUiIChhdWEsCm5pY2h0IHNjaGxhZ2VuLCBZYW50cm8hKS4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sICAzLiBKdW4gMTk5NywgMDg6NTc6MTQpOgp+IyEgcm49TXVwZmVsIHJ0PTg2NTI5MzUwOCByZz1zY2htYXJybgp+IyEgdGlkPTg2NTI2Nzg1OQpIdWNoLCBmaW5kZXN0IER1PyBEYW5uIHNvbGx0ZXN0IER1IG1pY2ggbWFsIF93aXJrbGljaF8gYWxsZXMgZXJ6YWVobGVuIGhvZXJlbiwKRHUgd3VlcmRlc3Qgd29obCBpbiBlaW5lbiBodW5kZXJ0amFlaHJpZ2VuIFNjaGxhZiB2ZXJmYWxsZW4uIFVuZCBkYW5uIHZvbgplaW5lbSBQcmluemVuIHdhY2hnZWt1ZXNzdCB3ZXJkZW4gbXVlc3Nlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3BydWNoIGRlciBXb2NoZSAoVHVuaXhndXQsICAzLiBKdW4gMTk5NywgMDg6NTk6MTUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2NTMyMTAzNCByZz1zY2htYXJybgp+IyEgdGlkPTg2NTI2Nzg1OQpEdSBtYWNoc3QgbWlyIEFuZ3N0LCBncmltbS4uLgoKVHVOaXhHdXQgLSBhZW5nc3RsaWNoZXIgWndlcmcuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3BydWNoIGRlciBXb2NoZSAoWmFyZG96LCAgMy4gSnVuIDE5OTcsIDEwOjUyOjQ2KToKfiMhIHJuPU11cGZlbCBydD04NjUyOTM1MDggcmc9c2NobWFycm4KfiMhIHRpZD04NjUyNjc4NTkKTWlzdCwgRHUgd2Fyc3Qgc2NobmVsbGVyIE11cGZlbC4gR3JpbW0qIGlzdCBuYWVtbGljaCBlaW4gR3Jvc3NtZWlzdGVyIGltCkVyemFlaGxlbi4uLiA6KQoKWmFyZG96LCBaZWl0dW5nc2xlc2VyLCBzb25zdCBuaXguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCcnVubz8gKEFuYXRvbCwgIDMuIEp1biAxOTk3LCAxNjoyMjoxNyk6CgpbQmllcnNjaHVldHRsZXI6QnJ1bm9dIEljaCBzY2hsYWdlIEplbWFuZCBmdWVyIGRlbiBQcmVpcyAnU3BpZWxlciBkZXMgTW9uYXRzJwpbQmllcnNjaHVldHRsZXI6QnJ1bm9dIHZvci4KCkF1IGphLCBzdHVmdCBpaG4gYWIsIGVnYWwgd2VyIGVzIGlzdCA7LSkKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbmQgd2VjaCAoUGFtcGVycywgIDMuIEp1biAxOTk3LCAxOTo0Njo0Mik6Cn4jISBvbj1QYW1wZXJzIG90PTg2NTM1OTUxMyBvZz1tYWdpZXIudXJsYXViCn4jISBybj1HcmltbWJvcm4gcnQ9ODY1MzU5MjI5IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD04NjUzNTkyMjkKSW4gQW5iZXRyYWNodCBkZXIgVGF0c2FjaGUsIGRhc3MgdW5zZXIgTGllYmxpbmdzdmVybGVnZXIgaW0gVXJsYXViIGlzdCwgCmVya2xhZXJlIGljaCBtaWNoIGhpZXJtaXQgenUgc2VpbmVyIFVybGF1YnN2ZXJ0cmV0dW5nLgoKUGFtcGVycy4gSGlsZnZlcmxlZ2VyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGFwYWdlaSBtaXQgSW5mcmF2aXNpb24gKEdhcmZpZWxkLCAgMy4gSnVuIDE5OTcsIDIyOjA4OjU4KToKCldpdHppZywgbWVpbiBQYXBhZ2VpIGhhdCBJTmZyYXZpc2lvbiEKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpGaW5zdGVybmlzLgo+IHcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCkZpbnN0ZXJuaXMuCj4gSGFsZSBib3BwIGtyYWVjaHp0OiAuLi4ga3Jycm9vb2FhYSAuLi4gSGFsbG8gZWluIEthbXBmYmxlY2ggLi4uCncgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKRmluc3Rlcm5pcy4KPiB3ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpEdSBoYXN0IGpldHp0IDE2NCBMZWJlbnNwdW5rdGUgdW5kIDY2IE1hZ2llcHVua3RlLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCkZpbnN0ZXJuaXMuCj4gSGFsZSBib3BwIGtyYWVjaHp0OiAuLi4ga3Jycm9vb2FhYSAuLi4gSGFsbG8gZWluIERvc2Vub2VmZm5lciAuLi4gICAgICAgICAgIAoKCkdhcmZpZWxkLCBpbW1lciBub2NoIGdyaW5zZW5kIHVuZCBpaHJlbiBQYXBhZ2VpIGtudXRzY2hlbmQuCioqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZCB3ZWNoIChCbG9vZHloYXJyeSwgIDMuIEp1biAxOTk3LCAyMzo1MjozNik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODY1MzU5MjI5IG9nPW1hZ2llci51cmxhdWIKQmluIGJpcyBuYWVjaHN0ZW4gTW9udGFnIGltIFVybGF1YiwgdW5kIG1pdCBncm9zc2VyIFNpY2hlcmhlaXQgbmljaHQgaW0gbXVkLgpWZXJsZWd0IGV1cmUgYmxvZWRlbiBBcnRpa2VsIGFsc28gc2VsYmVyLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1laW51bmdzdW1mcmFnZSAoUGFtcGVycywgIDQuIEp1biAxOTk3LCAwOTo0NjowNik6Cn4jISBvbj1MdWcgb3Q9ODY1Mzc2NzI0IG9nPWV0aWtldHRlCn4jISBybj1HcmltbWJvcm4gcnQ9ODY1MzIwMTcwIHJnPWV0aWtldHRlCn4jISB0aWQ9ODY1MzE5OTEzCk1vaW4sCgpHcmltbWJvcm4sIGljaCBtb2VjaHRlIERpciBBdXNkcnVlY2tsaWNoIHp1IERlaW5lciBWZXJsZWdlcnRhZXRpZ2tlaXQKZ3JhdHVsaWVyZW4uIFdlbmlnc3RlbnMgZWluZXIsIGRlciBzaWNoIGRpZSBNdWVoZSBtYWNodC4KCkRhbmtlIQpMdWcKIFAuUy46IFdlciBiZWhhdXB0ZXQsIGljaCB3dWVyZGUgbml4IHBvc2l0aXZlcyB6dSBNYWdzIHNhZ2VuPwoKUC5QLlMuOiBPYnMgbmFjaCBTY2htYXJyZW4gZ2VodD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyAoSGlnaGxhbmRlciwgIDQuIEp1biAxOTk3LCAxNToxNzoxNCk6Ck1pciBpc3QgbGFuZ3dlaWxpZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXMgKEFzdGFyLCAgNC4gSnVuIDE5OTcsIDE1OjE3OjMwKToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9ODY1NDMwMjM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1NDMwMjM0ClVuZD8KCkFzdGFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhcyAoSGlnaGxhbmRlciwgIDQuIEp1biAxOTk3LCAxNToxNzo1Nyk6Cn4jISBybj1Bc3RhciBydD04NjU0MzAyNTAgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKV28gaXN0IGVpZ2VudGxpY2ggZGVyIE5OTiBDbHViIGdlYmxpZWJlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdhcyAoQXN0YXIsICA0LiBKdW4gMTk5NywgMTU6MTg6NDgpOgp+IyEgcm49SGlnaGxhbmRlciBydD04NjU0MzAyNzcgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKTk5OPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2FzIChIaWdobGFuZGVyLCAgNC4gSnVuIDE5OTcsIDE1OjE5OjAwKToKfiMhIHJuPUFzdGFyIHJ0PTg2NTQzMDMyOCByZz1zY2htYXJybgp+IyEgdGlkPTg2NTQzMDIzNApOaWVtZWhyIE5peCBOZXVlcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2FzIChCYWxpb24sICA0LiBKdW4gMTk5NywgMTU6MTk6MzgpOgp+IyEgcm49SGlnaGxhbmRlciBydD04NjU0MzAzNDAgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKTXVzcyBtYW4gZGVuIENsdWIga2VubmVuID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdhcyAoSGlnaGxhbmRlciwgIDQuIEp1biAxOTk3LCAxNToyMDo1NSk6Cn4jISBybj1CYWxpb24gcnQ9ODY1NDMwMzc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1NDMwMjM0Ck5vZSwgaXN0ICh3YXI/KSBqYSBuaXggb2ZmaXppZWxsZXMuIE51ciBlaW4gcGFhciBMZXV0ZSwgZGllIHZlcmhpbmRlcm4Kd29sbHRlbiwgZGFzcyAiTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4iIGtvbW10LgpBYmVyIGRhcyBsYWVzc3Qgd29obCBuYWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2FzIChNb3JnYXIsICA0LiBKdW4gMTk5NywgMTU6MjE6MzYpOgp+IyEgcm49SGlnaGxhbmRlciBydD04NjU0MzA0NTUgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKV2FydW0gZ2lidHMgZGllIGVpZ2VudGxpY2ggbmljaCBtZWhyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2FzIChBc3RhciwgIDQuIEp1biAxOTk3LCAxNToyMjowMCk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTg2NTQzMDQ1NSByZz1zY2htYXJybgp+IyEgdGlkPTg2NTQzMDIzNApLb25udGVuIGRpZSBzY2huZWxsZXIgUG9zdGVuLCBhbHMgaWNoIGxlc2VuIGthbm4/CgooRGllIHNpbmQgaXJnZW5kd2llIGFuIG1pciB2b3JiZWkgZ2VnYW5nZW4uLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBXYXMgKFByYSwgIDQuIEp1biAxOTk3LCAxNToyMjoyMik6Cn4jISBybj1Bc3RhciBydD04NjU0MzA1MjAgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKd2FzIGlzdCBhbiBkaXIgdm9yYmVpZ2VnYW5nZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBXYXMgKEFzdGFyLCAgNC4gSnVuIDE5OTcsIDE1OjIyOjQ1KToKfiMhIHJuPVByYSBydD04NjU0MzA1NDIgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKRGllIEFrdGl2aXRhZXRlbiBkZW4gTk5OIENsdWJzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogV2FzIChaYXJkb3osICA0LiBKdW4gMTk5NywgMTU6MjI6NTEpOgp+IyEgcm49QmFsaW9uIHJ0PTg2NTQzMDM3OCByZz1zY2htYXJybgp+IyEgdGlkPTg2NTQzMDIzNAppY2ggbGllYmUgImlnbm9yaWVyZSB0aHJlYWQiLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXYXMgKEVuZ3l3dWNrLCAgNC4gSnVuIDE5OTcsIDE1OjIzOjE5KToKfiMhIHJuPVphcmRveiBydD04NjU0MzA1NzEgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKZ3V0ZSBJZGVlLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFeHRyYSBmdWVyIFphcmRveiAoTW9yZ2FyLCAgNC4gSnVuIDE5OTcsIDE1OjIzOjIzKToKSG0sIGRhbm4gZmFuZ2VuIHdpciBlaW5mYWNoIG5lbiBuZXVlbiBhbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdhcyAoUHJhLCAgNC4gSnVuIDE5OTcsIDE1OjIzOjI0KToKfiMhIHJuPUFzdGFyIHJ0PTg2NTQzMDU2NSByZz1zY2htYXJybgp+IyEgdGlkPTg2NTQzMDIzNAphY2ggc28uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogV2FzIChBc3RhciwgIDQuIEp1biAxOTk3LCAxNToyMzo1Nyk6Cn4jISBybj1QcmEgcnQ9ODY1NDMwNjA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1NDMwMjM0CkhlLCBzY2huZWxsZXIsIGljaCBrb21tIGltbWVyIG5vY2ggaGludGVyaGVyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogV2FzIChBc3RhciwgIDQuIEp1biAxOTk3LCAxNToyNDo0Mik6Cn4jISBybj1Bc3RhciBydD04NjU0MzA2Mzcgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKQWNoIGphLCB3YXIgdm9uIGRlbSBOTk4gQ2x1YiBhdWNoIGRlciAxMDAwLUJpZXItVGhyZWFkID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBXYXMgKEhpZ2hsYW5kZXIsICA0LiBKdW4gMTk5NywgMTU6MjQ6NDYpOgp+IyEgcm49QXN0YXIgcnQ9ODY1NDMwNjM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1NDMwMjM0CkhtLCBkYXMgc2luZCBkYW5uIGRpZSBzYWNoZW4sIGRpZSBtYW4gZWlnZW50bGljaCBtaXRsZXNlbiBtdXNzLCB3YWVocmVuZApzaWUgZ2Vwb3N0ZXQgd2VyZGVuClVlYnJpZ2VuczogWmFyZG96LCBkdSBSZToKdmVyc2NobGFtcGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogV2FzIChNb3JnYXIsICA0LiBKdW4gMTk5NywgMTU6MjU6NDIpOgp+IyEgcm49SGlnaGxhbmRlciBydD04NjU0MzA2ODYgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKVW5kIGVpbiBSZSB2ZXJzY2hlbmt0LCBIaWdsYW5kZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogV2FzIChIaWdobGFuZGVyLCAgNC4gSnVuIDE5OTcsIDE1OjI1OjUyKToKfiMhIHJuPU1vcmdhciBydD04NjU0MzA3NDIgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKSGFiJ3MgZ2VtZXJrdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFdhcyAoTW9yZ2FyLCAgNC4gSnVuIDE5OTcsIDE1OjI2OjA2KToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9ODY1NDMwNzUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1NDMwMjM0CipncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWVyIHRocmVhZCAoSGlnaGxhbmRlciwgIDQuIEp1biAxOTk3LCAxNToyNjozMSk6CkRhbWl0IGRpZSwgZGllIHRocmVhZHMgdWViZXJnZWhlbiwgYXVjaCBtYWwgd2llZGVyIHdhcyB6dSB0dW4gaGFiZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBXYXMgKEFzdGFyLCAgNC4gSnVuIDE5OTcsIDE1OjI2OjM3KToKfiMhIHJuPU1vcmdhciBydD04NjU0MzA3NjYgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKV2FzIHdhciBkZW5uIGpldHp0IG1pdCBkZW0gMTAwMC1iaWVyLXRocmVhZD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBXYXMgKEhpZ2hsYW5kZXIsICA0LiBKdW4gMTk5NywgMTU6Mjc6NDQpOgp+IyEgcm49QXN0YXIgcnQ9ODY1NDMwNzk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1NDMwMjM0CkR1IHZlcndlY2hzZWxzdCBkYSB3YXMgLSBlcyBnYWIgbnVyIDIwIChvZGVyIDQwPykgQmllci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBXYXMgKEFzdGFyLCAgNC4gSnVuIDE5OTcsIDE1OjI4OjA4KToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9ODY1NDMwODY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1NDMwMjM0CkhtbSwga2FtIGRlciBhdWNoIHZvbiBkZW0gTk5OIENsdWI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogV2FzIChNb3JnYXIsICA0LiBKdW4gMTk5NywgMTU6Mjg6NDYpOgp+IyEgcm49QXN0YXIgcnQ9ODY1NDMwODg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1NDMwMjM0CkFiZXIgZGVyIFRocmVhZCBnaWIgYmlzIDEwMDAsIG9kZXIgaGFtIHNpZSB2b3JoZXIgc2NobGFwcCBnZW1hY2h0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IFdhcyAoSGlnaGxhbmRlciwgIDQuIEp1biAxOTk3LCAxNToyOToxMik6Cn4jISBybj1Nb3JnYXIgcnQ9ODY1NDMwOTI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1NDMwMjM0CkVzIGhhYmVuIGltbWVyIHdpZWRlciB3ZWxjaGUgd2FzIGdlbG9lc2NodCAoRnJldmVsISA6PikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBXYXMgKEhpZ2hsYW5kZXIsICA0LiBKdW4gMTk5NywgMTU6Mjk6NDcpOgp+IyEgcm49SGlnaGxhbmRlciBydD04NjU0MzA5NTIgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKSWNoIGdsYXViZSwgc2llIGhhZXR0ZW4gZXMuIE9obmUgZ3JvZXNzZXJlIFByb2JsZW1lLgpEYW5jZXIgaGF0IGF1ZiBqZWRlbiBGYWxsIGF1ZmdlZ2ViZW4KVW5kIGRhcyBCaWVyIHJhdXNnZXJ1ZWNrdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBXYXMgKEFzdGFyLCAgNC4gSnVuIDE5OTcsIDE1OjMwOjM4KToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9ODY1NDMwOTg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1NDMwMjM0CkFjaHNvLCBkYW5uIHdhciBkYXMgbmUgV2V0dGUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBXYXMgKEhpZ2hsYW5kZXIsICA0LiBKdW4gMTk5NywgMTU6MzE6MTIpOgp+IyEgcm49QXN0YXIgcnQ9ODY1NDMxMDM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1NDMwMjM0Ck5hamEsIGRhcyBmaW5nIHNvIGFlaG5saWNoIGFuIHdpZSBkYXMgaGllciwgdW5kIGRhbm4ga2FtIG1hbCBkaWUgRnJhZ2UsCndhcyBwYXNzaWVydCwgd2VubiBkYXMgUmVeIGJpcyAxMDAwIHN0ZWlndAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IFdhcyAoQXN0YXIsICA0LiBKdW4gMTk5NywgMTU6MzE6NTgpOgp+IyEgcm49SGlnaGxhbmRlciBydD04NjU0MzEwNzIgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKVW5kIGRhbm4gaGF0IGRhbmNlciBnZXNhZ3QsIGVyIHNwZW5kaWVydCBuZW4ga2FzdGVuIGJpZXIsIG9kZXIgd2llPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IFdhcyAoSGlnaGxhbmRlciwgIDQuIEp1biAxOTk3LCAxNTozMjoxMik6Cn4jISBybj1Bc3RhciBydD04NjU0MzExMTggcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKU28gaW4gZXR3YSwgamEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1ZXIgdGhyZWFkIChTY2hsaXBzLCAgNC4gSnVuIDE5OTcsIDE1OjQzOjE5KToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9ODY1NDMwNzkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1NDMwNzkxCldlciB1ZWJlcmdlaHQgZGVubiB0aHJlYWRzPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVuZCB3ZWNoIChTY2hsaXBzLCAgNC4gSnVuIDE5OTcsIDE1OjUxOjM1KToKfiMhIHJuPUphc3BlciBydD04NjU0MzE5ODQgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzE5ODQKV2llIG9mdCBlciB3b2hsIG5vY2ggdmVybGVndCB3aXJkPwpJY2ggc3RlbGwgamV0enQgbWFsIGRpZSBaYWhsIDUwIGluIGRlbiBSYXVtLCBiencgaW4gZGllIE1QQS4KQW5kZXJlIEdlYm90ZT8KClNjaGxpcHMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdhcyAoQW5ndXMsICA0LiBKdW4gMTk5NywgMTY6NDk6MzkpOgp+IyEgcm49QXN0YXIgcnQ9ODY1NDMwMzI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1NDMwMjM0Ck5OTj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFZlcmVpbnN6ZWl0dW5nIChBbmF0b2wsICA1LiBKdW4gMTk5NywgMTI6MDk6MzQpOgp+IyEgb249QW5hdG9sIG90PTg2NTUwNTM2MiBvZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISBybj1Cb2luZyBydD04NjU0OTUyODYgcmc9bW9yZ2VuZ3JhdWVuLnZlcmVpbgp+IyEgdGlkPTg2NTQxNzQwMwpZcHMgaXN0IHNjaGVpc3NlIDooIERhcyBnZWh0IGRvY2ggaW1tZXIgc28gc2NobmVsbCBrYXB1dHQgdW5kIGRpZQo2MCUtU2FsaW5lbmtyZWJzcmF0ZSB3YXIgYXVjaCBnZXNjaHdpbmRlbHQuCgpBbmF0b2wsIGVyZmFocmVuIDstKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBXYXMgKFllbmRpLCAgNS4gSnVuIDE5OTcsIDEzOjMyOjA5KToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9ODY1NDMxMTMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1NDMwMjM0CgpIbW1tLi4uIGluIHdlbGNoZXIgRm9ybSB3aXJkIGRlbm4gZGVyIHJlcGx5LVphZWhsZXIgZ2VzcGVpY2hlcnQgcmVzcC4gCnZlcmFyYmVpdGV0PwpHaWJ0IGRhcyBldmVudHVlbGwgaXJnZW5kd2FubiBkZW4gQXJ0aWtlbCAiUmVeLTMyMjU1OiBXYXMiPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBXYXMgKEhpZ2hsYW5kZXIsICA1LiBKdW4gMTk5NywgMTM6MzQ6NTQpOgp+IyEgcm49WWVuZGkgcnQ9ODY1NTEwMzI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1NDMwMjM0CkFsc28gd2VubiBkYXMgZWluIFN0YW5kYXJkIGludCBpc3QsIGRhbm4gZ2VodCBkYXMgemllbWxpY2ggd2VpdC4uLgpHZW5hdWVyIGdlc2FndCBiaXMgMTw8MzEtMSwgd2FzIGF1c2dlc2NocmllYmVuIDEwNzM3NDE4MjQgaXN0LgpEYXMgaGFlbHQgJ25lIFdlaWxlIDs+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogV2FzIChZZW5kaSwgIDUuIEp1biAxOTk3LCAxMzozNToyOSk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTg2NTUxMDQ5NCByZz1zY2htYXJybgp+IyEgdGlkPTg2NTQzMDIzNAoKSG1tbS4uLiB3ZW5uIHdpciB1bnMgYW5zdHJlbmdlbiwgdW5nZWZhZWhyIGVpbmVuIE1vbmF0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBXYXMgKFllbmRpLCAgNS4gSnVuIDE5OTcsIDEzOjM2OjQ4KToKfiMhIHJuPVllbmRpIHJ0PTg2NTUxMDUyOSByZz1zY2htYXJybgp+IyEgdGlkPTg2NTQzMDIzNAoKKFZpZWxsZWljaHQgaGFldHRlIGljaCBlaW4gIDspICBlaW5mdWVnZW4gc29sbGVuLCBiZXZvciBhbGxlIFdlbHQgZWluZQogVWViZXJzY2hsYWdzcmVjaG51bmcgbWFjaHQgdW5kIG1pY2ggdG90ZmxhbW10Li4uKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOiBXYXMgKEphc3BlciwgIDUuIEp1biAxOTk3LCAxMzozNzo1Nik6Cn4jISBybj1ZZW5kaSBydD04NjU1MTA2MDggcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKbmFqYSB3ZW5uIHdpciBkaWUgYXJ0aWtlbC9taW51dGUgZXR3YXMgZXJob2VoZW4sIGtvZW5udGUgZWluIG1vbmF0IGhpbmtvbW1lbgo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IFdhcyAoSGlnaGxhbmRlciwgIDUuIEp1biAxOTk3LCAxMzozODoyNSk6Cn4jISBybj1ZZW5kaSBydD04NjU1MTA2MDggcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKSG0sIHZvbiB3ZWdlbiBVZWJlcnNjaGxhZ3NyZWNobnVuZyAtIGJlaSAyOCBUYWdlbiBtYWNodCBkYXMKMjY2MzAgQXJ0aWtlbC9taW4gLSBkYSBtdWVzc2VuIHdpciB1bnMgYWJlciByYW5oYWx0ZW4uLi4KICBIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBXYXMgKEphc3BlciwgIDUuIEp1biAxOTk3LCAxMzozOTowNik6Cn4jISBybj1KYXNwZXIgcnQ9ODY1NTEwNjc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1NDMwMjM0Cm9kZXIgd2VubiB3aXIgYWxsZSBrYW5hZWxlIGFic3RlbGxlbixzYWcsdGVpbGUgbWl0IHVuZCBydWZlIGF1Y2ggYWJzdGVsbGVuIHVuZApkYXMgZ2FuemUgZ2VsYWJlciB1ZWJlciBkZW4gdGhyZWFkIGdlaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMjogV2FzIChNb3JnYXIsICA1LiBKdW4gMTk5NywgMTM6NDA6NTkpOgp+IyEgcm49SmFzcGVyIHJ0PTg2NTUxMDc0NiByZz1zY2htYXJybgp+IyEgdGlkPTg2NTQzMDIzNApFaWdlbnRsaWNoIGtlaW5lIHNjaGxlY2h0ZSBJZGVlLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMzogV2FzIChIaWdobGFuZGVyLCAgNS4gSnVuIDE5OTcsIDEzOjQxOjE5KToKfiMhIHJuPU1vcmdhciBydD04NjU1MTA4NTkgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKVHJvdHpkZW0uIDQ0MyBBcnRpa2VsIHBybyBTZWt1bmRlIGlzdCBlaW4gZWNodGVzIFByb2JsZW0uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNDogV2FzIChLcmV0ZWssICA1LiBKdW4gMTk5NywgMTY6MTI6MDkpOgp+IyEgcm49SGlnaGxhbmRlciBydD04NjU1MTA4Nzkgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKQWNoIHdhcy4gRWluIHBhYXIgU2NyaXB0ZXIsIHVuZCBhbGxlcyBpc3Qga2VpbiBQcm9ibGVtISA6LSkKCksuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNTogV2FzIChOaXJkYXZvLCAgNi4gSnVuIDE5OTcsIDExOjE3OjM4KToKfiMhIHJuPUtyZXRlayBydD04NjU1MTk5Mjkgcmc9c2NobWFycm4KfiMhIHRpZD04NjU0MzAyMzQKaWNoIGhhYiBkYXMgZ2VmdWVobCwgZGFzIGdhbnplIGdlbGFiZXIgZ2VodCBkb2NoIGpldHp0IHNjaG9uIHVlYmVyIGRpZXNlbgpUaHJlYWQuCiAgIE4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbSBncmFiLCBkYSB0b2J0IGRhcyBsZWJlbiAuLi4gKFNtaWxleSwgIDYuIEp1biAxOTk3LCAxOTo0MToxMSk6Ci4uLiBvZGVyIHdpbGxrb21tZW4genVtIGxlaWNoZW5zY2htYXVzIC4tKQoKS2V5IHNjaGxpZXNzdCBzZWluIEdyYWIgYXVmLgpLZXkgb2VmZm5ldCBkYXMgR3JhYiB2b24gS2V5LgpLZXkgZmFlbGx0IHRvdCBpbiBkYXMgR3JhYi4KS2V5IHNjaGxpZXNzdCBzZWluIEdyYWIgYWIuClR1YXJlZyBzY2hsaWVzc3QgZGFzIEdyYWIgYXVmLgpUdWFyZWcgb2VmZm5ldCBkYXMgR3JhYiB2b24gS2V5LgpUdWFyZWcgYmV0cml0dCBkYXMgR3JhYi4KVHVhcmVnIHNjaGxpZXNzdCBkYXMgR3JhYiBhYi4KTmFpcm9sZiBzY2hsaWVzc3QgZGFzIEdyYWIgYXVmLgpOYWlyb2xmIG9lZmZuZXQgZGFzIEdyYWIgdm9uIEtleS4KTmFpcm9sZiBiZXRyaXR0IGRhcyBHcmFiLgpOYWlyb2xmIHNjaGxpZXNzdCBkYXMgR3JhYiBhYi4KTmVzYWphIHNjaGxpZXNzdCBkYXMgR3JhYiBhdWYuCk5lc2FqYSBvZWZmbmV0IGRhcyBHcmFiIHZvbiBLZXkuCk5lc2FqYSBiZXRyaXR0IGRhcyBHcmFiLgpOZXNhamEgc2NobGllc3N0IGRhcyBHcmFiIGFiLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnRocmVhZCAoQXNtb2RpcywgIDYuIEp1biAxOTk3LCAyMDowNzoyNCk6ClNvLCB3aWVkZXIgZWluIFRocmVhZCB6dW0gdWViZXJnZWhlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdHV0dGdhcnRhdWZlbnRoYWx0IChQYWRyZWljLCAgNy4gSnVuIDE5OTcsIDEzOjE2OjMxKToKfiMhIG9uPVJvbmRhIG90PTg2NTY4MDc1MyBvZz10cmVmZmVuCn4jISBybj1KYW5pY2UgcnQ9ODY1NjAzODE0IHJnPXRyZWZmZW4KfiMhIHRpZD04NjU0MzU2MTMKQXUsIEphbmljZSwgZ2lic3RlIG1pciBBc3lsPwoobmVpLCBCZW4qLCBuaWNodCBzY2hsYWdlbiEhISEpCi0+IFNjaG1hcnJuL011ZWxsIGRhbWl0Li4uIApNaXN0LCBHcmltKiBpc3QgamEgbmljaHQgZGEuLi4gYmxlaWJ0cyBoYWx0IGhpZXIuLi4KICAgICAgICAgICAgICAgIFJvbmRhCihLdXJ6ZnJpc3RpZyBuYWNoIFN0dXR0Z2FydCBkZWxlZ2llcnQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlLCBvcmlnaW5hbCBhdXMgU2Nod2VkZW4uLi4gKEdyaW1tYm9ybiwgIDcuIEp1biAxOTk3LCAxNzo0MzoyMyk6CkhpZXIgZWluIFNwcnVjaCBhdXNzZXIgZGVyIFJlaWhlLCBkYWhlciBhdWNoIG5pY2h0IGF1cyBtZWluZW0gS2FsZW5kZXIuIERhZnVlcgpkaXJla3QgYXVzIG1laW5lbSBFcmZhaHJ1bmdzc2NoYXR6OgoKIldpbmRvd3MgOTUgLSBHZXNlaGVuLCBnZWxhY2h0LCBnZWxvZXNjaHQuIgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTcHJ1Y2ggZGVyIFdvY2hlIChBbWF6b3JhLCAgNy4gSnVuIDE5OTcsIDIxOjE3OjA5KToKfiMhIHJuPVphcmRveiBydD04NjUzMjc5NjYgcmc9c2NobWFycm4KfiMhIHRpZD04NjUyNjc4NTkKRGFzIGthbm4gZWluZW4gc28gc2Nob2VuIGVpbmx1bGxlbiB3ZW5uIG1hbiBzY2hvbiBpbSBCZXR0IGxpZWd0IHVuZCBHcmltbWJvcm4KZXphZWhsdCBzbyBzZWluZSBMZWJlbnNnZXNjaGljaHRlbi4gOy0pCldlbm4gZXIgYWJlciBhdWYgc2VpbmUgQ0QncyB6dSBzcHJlY2hlbiBrb21tdCwgZGFubiBsYWV1ZnQgbWFuIGFtIGJlc3RlbiB3ZWl0CnVuZCBzY2huZWxsLiA7KQpBbWF6b3JhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTcHJ1Y2ggZGVyIFdvY2hlIChBbmF0b2wsICA3LiBKdW4gMTk5NywgMjE6MTk6MzEpOgp+IyEgcm49QW1hem9yYSBydD04NjU3MTEwMjkgcmc9c2NobWFycm4KfiMhIHRpZD04NjUyNjc4NTkKS29tbXQgYXVmIGRpZSBDRCB1bmQgc2VpbmUgQWJzaWNodCBhbi4uLi4gOikKCkFuYXRvbCwgZGllc2JlenVlZ2xpY2ggYXVjaCBFcmZhaHJ1bmcgZ2VtYWNodCBoYWJlbmQgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTQVVFUkVJISEhIChCYWJvb24sICA5LiBKdW4gMTk5NywgMTQ6MjE6MjApOgpGcmkgTWF5IDIzIDE0OjM4OjAwIDE5OTcgYm9pbmcoMTExLzEwMDApIHRvZXRldGUgbGludXMoMC8xKSBOT1RXRUhSPT5LRUlOIFBLCgpPYmlnZSBaZWlsZSBzYWd0IGphIG1hbCB3aWVkZXIgYWxsZXMgdWViZXIgZGllIFp1c3RhZW5kZSBpbiBkaWVzZW0gTXVkLiBEYQpraWxsdCBCb2luZyBlaW5mYWNoIHNvIGVpbmVuIHdlaHJsb3NlbiBTcGllbGVyIHVuZCB3aXJkIG5vY2ggbmljaHQgZWlubWFsIHp1cgpSZWNoZW5zY2hhZnQgZ2V6b2dlbi4gTnVyIHdlaWwgZXIgZWluIEdvdHQgaXN0IHdpcmQgZXMgYWxzIE5vdHdlaHIgZGVrbGFyaWVydCwKYWJlciB3ZW5uIGljaCBtaXIgZGFzIGVybGF1YnQgaGFldHRlLCBkYW5uIHdhZXJlIGljaCB3b2hsIHNvZm9ydCB6dW0gc3BpZWxlcgp6dXJ1ZWNrZ2VzdHVmdCB3b3JkZW4gKG1pbmRlc3RlbnMpLgoKQmFib29uICh0aWVyaXNjaCBzYXVlcikgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzZWx0c2FtZSBsYWVkZW4gZ2lidHMuLi4gKFNhcmdvbGEsICA5LiBKdW4gMTk5NywgMTQ6NTE6MjApOgpOZXVsaWNoIGltIFZMOgoKSW0gT3N0ZW4gaXN0IEFua2hlcyBBbXVsZXR0bGFkZW4uIER1cmNoIGVpbiBGZW5zdGVyIGdsYWVuemVuIHVuZCBibGlua2VuIERpcgpBbXVsZXR0ZSBhbGxlciBBcnQgZW50Z2VnZW4uIERpZSBBdXN3YWhsIHNjaGVpbnQgZmFzdCBncmVuemVubG9zLgpvCkh1Y2guIFdvIGJpc3QgRHUgZGVubiBoaWVyIGdlbGFuZGV0PyBEaWVzZXIgTGFkZW4gc2llaHQgZWhlciBuYWNoIGVpbmVyClZvb2Rvb2h1ZXR0ZSBhdXMsIGFscyBuYWNoIGVpbmVtIEFtdWxldHRsYWRlbi4gT2IgRHUgaGllciB3aXJrbGljaCByaWNodGlnCmJpc3Q/IEFoYS4gRGEgaXN0IGphIEFua2hlLCBEdSBiaXN0IGFsc28gZG9jaCByaWNodGlnIGhpZXIuIE1pdCBlaW5lbSBMYWVjaGVsbgppbSBHZXNpY2h0IGZyYWd0IHNpZSBEaWNoLCB3YXMgc2llIGZ1ZXIgRGljaCB0dW4ga2Fubi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHdlc3Rlbi4KRWluIE11ZWxsc2NobHVja2VyLgo+IHplaWdlCkltIE1vbWVudCBzaW5kIHdpciBsZWlkZXIgVk9FTExJRyBhdXN2ZXJrYXVmdCEKCgpuYSB3YXMgbnVuPyAqZ3JpbnMqCgplaW4gc3RhdW5lbmRlcgpTYXJnb2xhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU0FVRVJFSSEhISAoTWFoYXRtdSwgIDkuIEp1biAxOTk3LCAxNTo0NDozMCk6Cn4jISBybj1CYWJvb24gcnQ9ODY1ODU4ODgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1ODU4ODgwCkJlaSBMaW51cyBpc3QgZGFzIGltbWVyIE5vdHdlaHIuIEFiZXIgdHJvdHpkZW06IFN0dWZ0IEJvaW5nIHJ1bnRlciA7LSkKCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNBVUVSRUkhISEgKEZ5dCwgIDkuIEp1biAxOTk3LCAxNjozMzo1OSk6Cn4jISBybj1NYWhhdG11IHJ0PTg2NTg2Mzg3MCByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg1ODg4MAoKTGludXMgaGF0IGRvY2ggdGF0c2FlY2hsaWNoIHNjaG9uIHdpZWRlciBMZXZlbCA1Li4uCldpcmQgWmVpdCwgZGFzcyBlciB3aWVkZXIgbWFsIHNlaW4gcGFzc3dvcnQgcmF1c3Bvc2F1bnQgKmh1c3QqCgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpodWNoID8gKE5haXJvbGYsICA5LiBKdW4gMTk5NywgMTk6MTk6MjgpOgpCIE8gSSBOIEcgISEgRHUgaHVlcGZzdCBpbiBkZXIgR2VnZW5kIGhlcnVtLgo+IFBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBZYW50cm8uCgp3YXMgaGFiIGljaCBnZXRhbiAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBodWNoID8gKEFuYXRvbCwgIDkuIEp1biAxOTk3LCAxOToyMTowOSk6Cn4jISBybj1OYWlyb2xmIHJ0PTg2NTg3Njc2OCByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3Njc2OApFR0FMISBXZWl0ZXJtYWNoZW4hIDopCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpwZWlubGljaC4uLiAoR3JpbW1ib3JuLCAgOS4gSnVuIDE5OTcsIDE5OjU1OjEyKToKR2VodCBtaWNoIGphIGVpZ2VudGxpY2ggbmljaHRzIGFuLCBhYmVyIHNpbmQgZXVjaCBBcnRpa2VsIGluIGRlciBBcnQgIjxpY2ggdHVlCmV0d2FzPiBQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgeHh4IiwgIjxpY2ggdHVlIGV0d2FzIGFuZGVyZXM+IEVpbgp6aXR0ZXJuIGdlaHQgZHVyY2ggZGFzIE1vcmdlbmdyYXVlbiIgb2RlciAiPHh4eCBydWZ0IGV0d2FzPiBpcmdlbmRlaW5lIGFuZGVyZQpTdGFuZGFyZGdlc2NoaWNodGUgaW0gTUcgcGFzc2llcnQiIG5pY2h0IGxhbmdzYW0gc2VsYmVyIHBlaW5saWNoPwpJY2ggbWVpbmUsIGVpbi0gb2RlciB6d2VpbWFsIG1hZyBkYXMgamEgbHVzdGlnIHNlaW4sIGFiZXIgaXJnZW5kd2FubiBzb2xsdGUKZG9jaCBkaWUgTHVmdCByYXVzIHNlaW4uLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCBpc3QgaW1tZXJoaW4gaW4gZGVyIHJpY2h0aWdlbiBSdWJyaWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBwZWlubGljaC4uLiAoQW5hdG9sLCAgOS4gSnVuIDE5OTcsIDE5OjU1OjUyKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NjU4Nzg5MTIgcmc9c2NobWFycm4KfiMhIHRpZD04NjU4Nzg5MTIKCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBHcmltbWJvcm4gaW4gUnVicmlrICJzY2htYXJybiIuCltBbGxnZW1laW46Wm9ycm9dIGVyc3RtYWwgd2VnCgpXZWlzZS4uLi4gOy0pCgpBbmF0b2wsIG51ciBhdXMgVHJvdHogbXVlbGxlbmQgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBzY2hlaXNzIHBvc3RzeXN0ZW0gKEdyaW1tYm9ybiwgIDkuIEp1biAxOTk3LCAyMTowODo1Mik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODY1ODgzMjg2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1NdXBmZWwgcnQ9ODY1ODgzMTExIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODY1NTI0ODg1CkF1IGphLCB1bmQgd2VubiBzY2hvbiBzb3dhcyBoaWVyIEVpbnp1ZyBoYWVsdCwgc2NobGFnZSBpY2ggYXVjaCBnbGVpY2ggdm9yLApkYXNzIG1hbiBkaWUgS2Fybmlja2VsIGF1ZiBkZXIgSGVpZGUgZWluZmFuZ2VuIHVuZCB6dWVjaHRlbiBrYW5uLgpVbmQgSGFyZGlsIHNvbGx0ZSBkYW5uIGVuZGxpY2ggc2VpbmVuIFNjaHJlYmVyZ2FydGVuIGJla29tbWVuLgpXYXMgZmVobHQgbm9jaD8gQWNoIGphLCBkZXIgVGF1YmVuenVlY2h0ZXJ2ZXJlaW4sIGFiZXIgZGFzIHNvbGx0ZSBzaWNoIG1hY2hlbgpsYXNzZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBwZWlubGljaC4uLiAoTXVwZmVsLCAgOS4gSnVuIDE5OTcsIDIyOjM2OjA5KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NjU4Nzg5MTIgcmc9c2NobWFycm4KfiMhIHRpZD04NjU4Nzg5MTIKTnVuamEgd2lyIGFtdWVzaWVyZW4gdW5zIGphIGF1Y2ggbm9jaCB1ZWJlciBkZWluZSB2ZXJsZWdlcmVpZW4gb2J3b2hsIGRhcyBhdWNoCmxhbmdzYW0gZ2VzY2htYWNrbG9zIHdpcmQuLi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHBlaW5saWNoLi4uIChBbmF0b2wsICA5LiBKdW4gMTk5NywgMjI6Mzg6NDApOgp+IyEgcm49TXVwZmVsIHJ0PTg2NTg4ODU2OSByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3ODkxMgpUdScgZG9jaCBuaWNodCBzbywgYWxzIG9iIERVIGplbWFscyBHZXNjaG1hY2sgZ2VoYWJ0IGhhZXR0ZXN0LCBNdXBmZWwgOikKCkFuYXRvbCA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHBlaW5saWNoLi4uIChEaWVkZXIsIDEwLiBKdW4gMTk5NywgMDA6NDM6MTgpOgp+IyEgcm49TXVwZmVsIHJ0PTg2NTg4ODU2OSByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3ODkxMgpqbywgTXVwZmVsIQoKRGllZGVyLCB3ZWlzcyBnZW5hdSBkYXNzIGRlciBBcnRpa2VsIHdvaGwgZWggdm9uIEdyaW1tYm9ybiBuYWNoIE11ZWxsIHZlcmxlZ3QKd2lyZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHBlaW5saWNoLi4uIChBbWFyeWxsaXMsIDEwLiBKdW4gMTk5NywgMDE6MDk6MjApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2NTg3ODkxMiByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3ODkxMgppZ25vcmllcmUgZXMsIEdyaW1tYm9ybiwgb2RlciBzY2hpY2tlIG1laW5lbiBBcnRpa2VsIHplbnN1cmdlbWFlc3MgbmFjaApTY2htYXJybi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogcGVpbmxpY2guLi4gKEFtYXJ5bGxpcywgMTAuIEp1biAxOTk3LCAwMToxMjo0Nyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9ODY1ODk3NzYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1ODc4OTEyCnNvcnJ5LCBydWJyaWsgbXVlbGwgbWVpbnRlIGljaC4uLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGJhY2sgKEhhZHJhLCAxMC4gSnVuIDE5OTcsIDAyOjA1OjEzKToKdGphLCBncmltbWJvcm4sIHdlbm4gZGllIG1hZWRlbHMgaW4gLnNlIGh1ZWJzY2hlciBzaW5kIGFscyBpbiAuZGUsIHdhcnVtIHR1c3QKZHUgdW5zIG5pY2h0IGFsbGVuIGVpbmVuIGdlZmFsbGVuIHVuZCB2ZXJsZWdzdCBkaWNoIHNlbGJlciBuYWNoIC5zZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogYmFjayAoR3JpbW1ib3JuLCAxMC4gSnVuIDE5OTcsIDA5OjM2OjQ0KToKfiMhIHJuPUhhZHJhIHJ0PTg2NTkwMTExMyByZz1zY2htYXJybgp+IyEgdGlkPTg2NTkwMTExMwpIbW0/IFdhcyBzb2xsIGRhcyBicmluZ2VuPyBEaXIsIG1laW5lIGljaC4KSW4gU2Nod2VkZW4gZ2lidHMgYXVjaCBOZXR6YW5zY2hsdXNzLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHBlaW5saWNoLi4uIChHcmltbWJvcm4sIDEwLiBKdW4gMTk5NywgMDk6Mzc6NDIpOgp+IyEgcm49RGllZGVyIHJ0PTg2NTg5NjE5OCByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3ODkxMgpJY2ggdmVybGVnZSBuaWNodCB2b24gc2NobWFycm4sIGljaCB1ZWJlcmxlZ2UgbWlyIGJlaSBTaW5ubG9zaWdrZWl0ZW4gaW4KYW5kZXJlbiBSdWJyaWtlbiBsZWRpZ2xpY2gsIG9iIGRpZSBub2NoIG5hY2ggc2NobWFycm4gcGFzc2VuIG9kZXIgZG9jaCBuYWNoCm11ZWxsIGdlaG9lcmVuLiBNZWlzdCBqYSBsZXR6dGVyZXMuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogcGVpbmxpY2guLi4gKEhhcmRpbCwgMTAuIEp1biAxOTk3LCAwOTo0MjowMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODY1OTI4MjYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1ODc4OTEyCgpHcmltbWJvcm4gc2NocmVpYnQ6PlVuZCBIYXJkaWwgc29sbHRlIGRhbm4gZW5kbGljaCBzZWluZW4gU2NocmViZXJnYXJ0ZW4KYmVrb21tZW4uCgpIYWIgaWNoIGRhIGltIEhpbnRlcmdydW5kIGxhZXV0ZW4gZ2Vob2VydCwgZGFzcyBEdSBhbmZhbmdlbiB3aWxsc3QsIFJhZXVtZSB6dQpwcm9ncmFtbWllcmVuPyBVbmQgZGFubiBzb2dhciBmdWVyIG1pY2g/IEFsc28gR3JpbW1ib3JuLCBkYXMgaGFldHRlIGljaCBOSUUKdm9uIERpciBnZWRhY2h0LiBEYW5rZS4KSmV0enQgYmlzdCBEdSBtZWluIEhlbGQuIDopCgotSGFyZGlsLiBXaXJkIFNjaHJlYmVyZ2FlcnRuZXIgdm9uIEdyaW1tYm9ybnMgR25hZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHBlaW5saWNoLi4uIChGeXQsIDEwLiBKdW4gMTk5NywgMDk6NDc6MzApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2NTg3ODkxMiByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3ODkxMgpJc3NlcyBEaXJuaWNodCBzZWxiZXIgcGVpbmxpY2gsIERpY2ggZGF1ZXJuZCB1ZWJlciBBcnRpa2VsIGRlcgpnZW5uYW50ZW4gQXJ0IGF1Znp1cmVnZW4/CgpGeXQsIGdyaW5zZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogcGVpbmxpY2guLi4gKEZ5dCwgMTAuIEp1biAxOTk3LCAwOTo1MDo0Nik6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODY1OTI4MjYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1ODc4OTEyCgpWaWVsbGVpY2h0IGtvbW1zdCBEdSBqYSBiZWkgZGVuIGh1ZWJzY2hlcmVuIE1hZWRlbHMgaW4gLnNlIGF1ZiBkaWUKSWRlZSwgZXR3YXMgYW56dXN0ZWxsZW4sIHdvenUgbWFuIGtlaW5lbiBOZXR6YW5zY2hsdXNzIGJyYXVjaHQuCgpEYXMgYnJhZWNodGUgSGFkcmEgZGFubiBtb2VnbGljaGVyd2Vpc2Ugd2FzLi4uIHVuZCBhbmRlcmVuIGF1Y2guLi4KCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBwZWlubGljaC4uLiAoVHVuaXhndXQsIDEwLiBKdW4gMTk5NywgMDk6NTQ6NDMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2NTg3ODkxMiByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3ODkxMgpEYXMgZGllc2VzICJpcmdlbmR3YW5uIHNvbGx0ZSBkb2NoIGRpZSBMdWZ0IHJhdXMgc2Vpbi4uLiIgYXVzZ2VyZWNobmV0IHZvbiBESVIKa29tbXQsIEdyaW1taSwgd3VuZGVydCBtaWNoIGFiZXIgbnVuIGRvY2guLi4KClR1Tml4R3V0IC0ga2FubiBEQVJVRUJFUiB3ZW5pZ3N0ZW5zIG1hbmNobWFsIG5vY2ggbGFjaGVuLi4uIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBwZWlubGljaC4uLiAoR3JpbW1ib3JuLCAxMC4gSnVuIDE5OTcsIDEwOjEwOjI5KToKfiMhIHJuPVR1bml4Z3V0IHJ0PTg2NTkyOTI4MyByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3ODkxMgpIbW0sIHZpZWxsZWljaHQgc2VoZSBpY2ggZGEgdGF0c2FlY2hsaWNoIHdhcyBmYWxzY2guIEljaCB3YXIgc2Nob24gZGVyCk1laW51bmcsIGRhc3MgZGllIG1wYSBSdWJyaWtlbiBoYXQsIGRhbWl0IGRpZSBBcnRpa2VsIGlyZ2VuZHdpZSBuYWNoIEluaGFsdAoodW5kIEJlZGV1dHVuZykgZ2VvcmRuZXQgc2luZC4gVW5kIHdvIHNpY2ggamVtYW5kIHZlcmhhdXQgdW5kIHNlaW5lIFNhY2hlbiBpbgpkZXIgZmFsc2NoZW4gUnVicmlrIHBvc3RldCwgd3VlcmRlIG1hbiBkZW4gYW5kZXJlbiwgZGllIGRlbiBBcnRpa2VsIG5vY2ggbmljaHQKZ2VsZXNlbiBoYWJlbiwgZWluZW4gR2VmYWxsZW4gdHVuLCB3ZW5uIGRhcyBiZXNzZXIgZ2VvcmRuZXQgaXN0LiBVbmQgaWNoIGhhdHRlCmphIHNjaG9uIGRlbiBBbnNwcnVjaCwgZGFzcyBkaWUgTGV1dGUsIGRpZSBkYXMgendlaW1hbCBsZXNlbiAibXVlc3NlbiIsCmludGVsbGlnZW50IGdlbnVnIHNpbmQgdW5kIGRpZSBVcnNhY2hlIChBcnRpa2VsIGluIGZhbHNjaGVyIFJ1YnJpaykgYmVrbGFnZW4sCm5pY2h0IGRhcyBTeW1wdG9tIChBcnRpa2VsIGlzdCB2ZXJsZWd0KS4gVW5kIHRhdHNhZWNobGljaCBoYWJlbiB2aWVsZSwgZGllCmViZW4gbmNpaHQgMjBoIGFtIFRhZyBoaWVyIHNpbmQsIG51ciBlaW5pZ2UgUnVicmlrZW4gZGllIHNpZSBsZXNlbiB1bmQgc2luZApkYW5uIGdlbmVydnQsIHdlbm4gZGEgbGF1dGVyIEFPTC1BcnRpa2VsICgiTWUgdG9vISIpIGRyaW5zdGVoZW4uIFNlaXMgZHJ1bS4KQWxzbywgaWNoIHZlcmxlZ2UgaGFsdCB6d2VpIFdvY2hlbiBvZGVyIHNvIG1hbCBuaXgsIG1hbCBzZWhlbiB3YXMgZHJhdXMgd2lyZC4KV2VubiBkYXMgenVyIEZvbGdlIGhhdCwgZGFzcyBiZWlzcGllbHN3ZWlzZSAod2ljaHRpZ2UpIE1hZ2llciBlbnRuZXJ2dAplbnR3aWNrbHVuZyBhYmJlc3RlbGxlbiB1bmQgZGFtaXQgZ3V0ZSBJZGVlbiBub2NoIHdlbmlnZXIgQ2hhbmNlIHp1ciBVbXNldHp1bmcKaGFiZW4gLSBpY2ggd2FzY2hlIG1laW5lIEhhZW5kZSBpbiBVbnNjaHVsZC4gVW5kIG1pY2ggYmV0cmlmZnQgc293YXMgamEgbnVuCmVpZ2VudGxpY2ggYXVjaCB3aXJrbGljaCBuaWNodCwgaWNoIGthbm4gbWlyIG1laW5lIEFlbmRlcnVuZ2VuIHNlbGJlciBtYWNoZW4uCgpBY2ggamEsIHdlbm4ga2VpbmUgIlJ1YnJpa2Rpc3ppcGxpbiIgZ2V3dWVuc2NodCB3aXJkLCBzZWhlIGljaCBuYXR1ZXJsaWNoIGF1Y2gKbmljaHQgZWluLCBtaWNoIHNlbGJlciBhbiBlaW5lIHNvbGNoZSBoYWx0ZW4genUgbXVlc3Nlbi4gQWxzbyBiaXR0ZSBrZWluZQpBcnRpa2VsIGluIGRlciBBcnQgIldhcyBzb2xsIGRhcywgZXJzdCBzbyBlaW5lbiBBdWZzdGFuZCBtYWNoZW4gdW5kIGRhbm4Kc2VsYmVyIHNvIGVpbmVuIEJsb2Vkc2lubiBtYWNoZW4uIi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogcGVpbmxpY2guLi4gKFR1bml4Z3V0LCAxMC4gSnVuIDE5OTcsIDEwOjE0OjM5KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NjU5MzAyMjkgcmc9c2NobWFycm4KfiMhIHRpZD04NjU4Nzg5MTIKR3V0ZSBJZGVlLi4uIGxhc3MgdW5zIGRvY2ggbWFsIHNlaGVuLCB3YXMgZHJhdXMgd2lyZC4uLgpFaW5zIG1vZWNodGUgaWNoIGFiYSBub2NobWFsIGxvc3dlcmRlbjogRXMgaXN0IG5pY2h0IGRhcyBTSU5OVk9MTEUgdmVybGVnZW4sCmRhcyBpY2gga3JpdGlzaWVyZSwgc29uZGVybiBkYXMgTUFTU0xPU0UuLi4KClR1Tml4R3V0IC0gZnVlciBFeHBlcmltZW50ZSBpbW1lciB6dSBoYWJlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogcGVpbmxpY2guLi4gKEZ5dCwgMTAuIEp1biAxOTk3LCAxMDoxNTowOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODY1OTMwMjI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1ODc4OTEyCkRpZSBOZXROZXdzIGhhYmVuIGF1Y2ggZWluIGVpbmlnZXJtYXNzZW4gZnVua3Rpb25pZXJlbmRlcwpTZWxic3RyZWluaWd1bmdzc3lzdGVtIG9obmUgZGFzcyBkYSBkYXVlcm5kIGVpbmVyIGZyZW1kZSBBcnRpa2VsCnZlcmxlZ3Qgb2RlciBsb2VzY2h0LiBJY2gga2FubiBtaXIgZ3V0IHZvcnN0ZWxsZW4sIGRhc3MgZGFzCmF1Y2ggaW4gZGVyIE1QQSBmdW5rdGlvbmllcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBwZWlubGljaC4uLiAoRW5neXd1Y2ssIDEwLiBKdW4gMTk5NywgMTA6MTk6NDcpOgp+IyEgcm49Rnl0IHJ0PTg2NTkzMDUwOCByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3ODkxMgpJY2ggZGVua2UsIHdpciBoYWV0dGVuIGhpZXIgdmllbCB3ZW5pZ2VyIEFlcmdlciwgd2VubiBMb2NvIGVzIGlyZ2VuZHdpZQpoaW5iaWVnZW4ga29lbm50ZSwgZGFzcyBtYW4gZ2VsZXNlbmUgQXJ0aWtlbCBuaWNodCBub2NoIGVpbm1hbCBsaWVzdCB3ZW5uIHNpZQp2ZXJsZWd0IHdlcmRlbi4gRWluZmFjaCBzY2hlaW50IGRhcyBuaWNodCB6dSBzZWluLCBzb25zdCBoYWV0dGUgZXIgZXMgc2ljaGVyCnNjaG9uIGdlbWFjaHQuIEFiZXIgc28gbGFuZ3NhbSBzY2hlaW50IG1hbiBzaWNoIGF1Y2ggbmFjaCBhdWZ3ZW5kaWdlcmVuCk1vZWdsaWNoa2VpdGVuIHVtc2VoZW4genUgbXVlc3Nlbi4uLiAKCkVuZ3kqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBwZWlubGljaC4uLiAoR3JpbW1ib3JuLCAxMC4gSnVuIDE5OTcsIDEwOjIyOjEyKToKfiMhIHJuPUZ5dCBydD04NjU5MzA1MDggcmc9c2NobWFycm4KfiMhIHRpZD04NjU4Nzg5MTIKYSkgTWFzc2xvc2VzIFZlcmxlZ2VuIGlzdCBhdXNzY2hsaWVzc2xpY2ggZWluZSBGb2xnZSB2b24gbWFzc2xvc2VtCkZlaGxwb3N0aW5nLiBCaXNoZXIgaGF0IG1pciBub2NoIGtlaW5lciB3aXJrbGljaCB2b3J3ZXJmZW4ga29lbm5lbiwgZGFzcyBpY2gKd2FzICJmYWxzY2giIHZlcmxlZ3QgaGFldHRlLCB3ZW5uIG1hbiB2b24gZGVuIGVpbi0sIHp3ZWltYWwgYWJzaWVodCwgaW4gZGVuZW4KaWNoIG1pY2ggaW4gZGVyIEFydGlrZWxudW1tZXIgdmVydGlwcHQgaGFiZS4uLgpiKSBLdWVyemxpY2ggc2luZCBkaWUgTG9lc2NocmVjaHRlIGZ1ZXIgZGllIG1wYSBnZWFlbmRlcnQgd29yZGVuLCBkYXJhdWZoaW4Ka29ubnRlIGljaCAodW5kIGF1Y2ggamVkZXIgYW5kZXJlIE1hZ2llcikga2VpbmUgQXJ0aWtlbCBtZWhyIHZlcmxlZ2VuLiBFcyBoYXQKZWluZSBnYW56ZSBXZWlsZSBnZWRhdWVydCwgYmlzIGljaCB3aWVkZXIgdmVybGVnZW4ga29ubnRlLiBBdWZncnVuZCBkaWVzZXIKRXJmYWhydW5nIHdhZ2UgaWNoLCBkaWUgRnVua3Rpb24gZGVzICJTZWxic3RyZWluaWd1bmdzc3lzdGVtcyIgYW56dXp3ZWlmZWxuLgpBbGxlcmRpbmdzIGhhYmUgaWNoIGRhcyBkYW1hbHMgYXVjaCBiZXd1c3N0IHZlcmZvbGd0LCBpc3QgZXVjaCBtb2VnbGljaGVyd2Vpc2UKZ2FyIG5pY2h0IGF1ZmdlZmFsbGVuLCBkYXNzIHZvbiBydW5kIDMwIEFydGlrZWxuIGluIHdpdHplIG51ciA0IHdpcmtsaWNoIFdpdHplCndhcmVuLi4uCmMpIERhcyAiU2VsYnN0cmVpbmlndW5nc3N5c3RlbSIgaW4gZGVuIE5ldE5ld3MsIGRhcyBGeXQgc28gaGVpbGlnIGhhZWx0LApiZXJ1aHQgbWVpbmVyIEVyZmFocnVuZyBuYWNoIGluIGRlbiBtZWlzdGVuIG5ld3Nncm91cHMsIGRpZSBuaWNodCBhdWZncnVuZCBkZXIKVGhlbWF0aWsgZmFzdCBhdXNzY2hsaWVzc2xpY2ggc3BlemllbGxlbiBFeHBlcnRlbiB2b3JiZWhhbHRlbiBibGVpYmVuIGRhcmF1ZiwKZGFzcyBMZXV0ZSwgZGllIHNpY2ggbmljaHQgYmVuZWhtZW4sICJ3ZWdnZWZsYW1lZCIgd2VyZGVuLiBTaWNoZXIgZ2VodCBkYXMuClVuZCBuYXR1ZXJsaWNoIHRydWVnZSBkYXMgYXVjaCB6dXIgVmVyYmVzc2VydW5nIGRlciBzbyBiZWtsYWd0ZW4gU3RpbW11bmcgaGllcgpiZWkuIE5pY2h0IHVtc29uc3QgZ2lidCBlcyBlYmVuIGF1Y2ggbW9kZXJhdGVkIGdyb3VwcywgdW0gc293YXMgenUgdW1nZWhlbi4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBwZWlubGljaC4uLiAoRnl0LCAxMC4gSnVuIDE5OTcsIDEwOjI5OjA5KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NjU5MzA5MzIgcmc9c2NobWFycm4KfiMhIHRpZD04NjU4Nzg5MTIKCkljaCBmYW5kIGRpZSBaZWl0IGRlciBlaW5nZXNjaHJhZW5rdGVuIFZlcmxlZ3VuZ3N0YWV0aWdrZWl0IHppZW1saWNoCmFuZ2VuZWhtLiBQdW5rdC4KCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHBlaW5saWNoLi4uIChMb2NvLCAxMC4gSnVuIDE5OTcsIDEwOjMzOjExKToKfiMhIHJuPUVuZ3l3dWNrIHJ0PTg2NTkzMDc4NyByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3ODkxMgpEYXMgaXN0IGxlaWRlciB0ZWNobmlzY2ggdWViZXJoYXVwdCBuaWNodCBvaG5lIHppZW1saWNoIGdyb3NzZW4gQXVmd2FuZAooaW5zYmVzb25kZXJlIFNwZWljaGVyYXVmd2FuZCkgenUgbWFjaGVuLgoKU29ycnksCiAgICAgIExvY28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHBlaW5saWNoLi4uIChHcmltbWJvcm4sIDEwLiBKdW4gMTk5NywgMTA6MzU6MjkpOgp+IyEgcm49Rnl0IHJ0PTg2NTkzMTM0OSByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3ODkxMgpKYSBzaWNoZXIsIEhlcnIgRnl0IGlzdCBqYSB6dWZyaWVkZW4sIHdlbm4gYWxsZXMgc2ljaCBuYWNoIGlobSByaWNodGV0IHVuZCBlcgpqZWRlbiBBcnRpa2VsIG51ciBlaW5tYWwgbGVzZW4gbXVzcy4gRGllIExldXRlLCBkaWUgZGFubiBCbG9lZHNpbm4gb2huZSBFbmRlCmluIGlobmVuIGVpZ2VudGxpY2ggIndpY2h0aWdlbiIgUnVicmlrZW4gdm9yZmluZGVuLCBzaW5kIHNjaG51cnplZ2FsLgoKQWxzbyBlaHJsaWNoLCBkaWVzZW4gdW0gc2ljaCBncmVpZmVuZGUgRWdvaXNtdXMgZmluZGUgaWNoIGVpbmZhY2ggbnVyIG5vY2ggenVtCmtvdHplbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogcGVpbmxpY2guLi4gKEZ5dCwgMTAuIEp1biAxOTk3LCAxMDozNjoyMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODY1OTMxNzI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1ODc4OTEyCgpTaWNoZXIgYmluIGljaCB6dWZyaWVkZW4sIHdlbm4gc2ljaCBhbGxlcyBtYWNoIG1pciByaWNodGV0IDstKQoKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1ZSBWZXJzaW9uIChHcmltbWJvcm4sIDEwLiBKdW4gMTk5NywgMTE6MTE6MTMpOgpxdWVzdGlvbiA9ICggdG8gKSA/IGJlIDogISBiZTsKICAgICAgICAgICAgICAgIC0tIFdtLiBTaGFrZXNwZWFyZQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IG1pdCBrbGFzc2lzY2hlciBCaWxkdW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbmV1ZSBWZXJzaW9uIChTY2hsaXBzLCAxMC4gSnVuIDE5OTcsIDExOjE5OjUyKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NjU5MzM4NzMgcmc9c2NobWFycm4KfiMhIHRpZD04NjU5MzM4NzMKSGF0IGRhcyBTaGFrZXNwZWFyZSBkYW1hbHMgc28gZ2VzY2hyaWViZW4/CgpTY2hsaXBzLCBpc3Qgc2ljaCBzZWluZXIga2xhc3Npc2NoZW4gQmlsZHVuZyBuaWNodCBtZWhyIHNvIHNpY2hlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHBlaW5saWNoLi4uIChCb2luZywgMTAuIEp1biAxOTk3LCAxMTo0NjoxMCk6Cn4jISBybj1GeXQgcnQ9ODY1OTMxMzQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1ODc4OTEyCkljaCBmaW5kZSBlcyB3ZXNlbnRsaWNoIGFuZ2VuZWhtZXIsIHdlbm4gR3JpbW1ib3JuIGZhbHNjaCBnZXBvc3RldGUgCkFydGlrZWwgdmVybGVndC4gQXVjaCBQdW5rdC4KCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IHBlaW5saWNoLi4uIChRdWFzaW1vZG8sIDEwLiBKdW4gMTk5NywgMTI6Mjk6MTEpOgp+IyEgcm49Qm9pbmcgcnQ9ODY1OTM1OTcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1ODc4OTEyCktvZW5udGUgbWFsIGplbWFuZGUgZGVuIFRocmVhZCBuYWNoIGRpc2t1c3Npb24gdmVybGVnZW4/IElociBtdWVsbHQgbWlyIGphCm1laW4gZ2VsaWVidGVzIFNjaG1hYXJuIHp1LgoKUXVhc2ksIHdlbmlnc3RlbnMgaW4gZGVyIHJpY2h0aWdlbiBSdWJyaWsuLi4KClBTOiBJY2ggd2Vpc3MsIGRhc3MgaWNoIGRhcyBhdWNoIHNlbG5iZXIgdmVybGVnZW4ga2Fubi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQVJHTCAoU251Z2dsZSwgMTAuIEp1biAxOTk3LCAxMjozNTowNik6CkVpZ2VudGxpY2ggd29sbHRlIGljaCBqYSBudXIgZGllIEFydGlrZWwgZGVyIGxldHp0ZW4gMyBUYWdlIG5vY2htYWwgaGFiZW4sCndlaWwgaWNoIHdhcyBzdWNodGUsIGFiZXIgREFTIHdvbGx0ZSBpY2ggc2ljaGVyIG5pY2h0ISA6LSkKCkFyZ3VtZW50ZmVobGVyLgpNYXJraWVyZSBhbGxlIEFydGlrZWwgaW4gUnVicmlrIGFuemVpZ2VuIHNlaXQgRG9uLCAgMS4gSmFuIDE5NzAsIDAxOjAwOjAwIGFscwp1bmdlbGVzZW4uCk9rLiBEdSBrYW5uc3QgZGllIGFscyB1bmdlbGVzZW4gbWFya2llcnRlbiBBcnRpa2VsIG1pdCBubiBub2NobWFsIGxlc2VuLgoKQUFBQUFBQUFBSEhICgpTbnVnZ2xlClBTIERhbmFjaCB3YXIgendhciBlaW4gdWViZXJnZWhlIHJ1YnJpayBmYWVsbGlnLCBhYmVyIGx1c3RpZyB3YXJzIGVpZ2VudGxpY2gKdHJvdHpkZW0uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogcGVpbmxpY2guLi4gKFBhdHJ5biwgMTAuIEp1biAxOTk3LCAxMjozOTo1NSk6Cn4jISBybj1GeXQgcnQ9ODY1OTMxNzgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1ODc4OTEyCmtvZW5udGV0IGlociBiaXR0ZSBkYW1pdCBhdWZob2VyZW4sIGV1Y2ggZ2VnZW5zZWl0aWcgZGllIHplaXR1bmcgdW0gZGllCm9ocmVuIHp1IHNjaGxhZ2VuPyEgc2VpZCBmcmllZGxpY2gsIGVzc3QgbmVuIGtla3MgdW5kIHZlcnRyYWd0IGV1Y2ggd2llZGVyLgppY2ggZmluZGUgZ3JpbW1ib3JucyB2ZXJsZWdlYXJiZWl0IGVpZ2VudGxpY2ggZ2FueiBndXQgdW5kIGVyIGdyZWlmdCBqYQpzZWx0ZW4gZGFuZWJlbi4uLmluendpc2NoZW4gZ2Vob2VydCBlcyBqYSBhdWNoIGlyZ2VuZHdpZSBkYXp1IDopCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBwZWlubGljaC4uLiAoRnl0LCAxMC4gSnVuIDE5OTcsIDEyOjQwOjQ3KToKfiMhIHJuPVBhdHJ5biBydD04NjU5MzkxOTUgcmc9c2NobWFycm4KfiMhIHRpZD04NjU4Nzg5MTIKCkhleSwgcnVtbW90emVuIGdlaGVvdCBhdWNoIGRhenUgOy0pCgpGeXQsIG5hY2ggbmVtIEtla3Mgc3VjaGVuZC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogcGVpbmxpY2guLi4gKEdyaW1tYm9ybiwgMTAuIEp1biAxOTk3LCAxMzozNjo0Nyk6Cn4jISBybj1RdWFzaW1vZG8gcnQ9ODY1OTM4NTUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1ODc4OTEyCkthbm5zdCBEdSBkZW4gVGhyZWFkIGF1Y2ggc2VsYmVyIHZlcmxlZ2VuPyBEYXMgd3VlcmRlIG1pY2ggYWxsZXJkaW5ncyBzY2hvbgp3dW5kZXJuLi4uCk1lcmtlOiBLb3BpZXJlbiBpc3QgbmljaHQgdmVybGVnZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndlci1saXN0ZSAoQ2F1bm8sIDEwLiBKdW4gMTk5NywgMTQ6NDg6MjYpOgpOYWNoIGxhbmdlciBaZWl0IGhhYmUgaWNoIG1hbCB3aWVkZXIgZWluZW4gQmxpY2sgYXVmIGRpZSB3ZXItTGlzdGUgKGFuc3RhdHQKa3dlcikgZ2V3b3JmZW46IERhIHdhciBkb2NoIG5vY2ggd2FzIC4uLgoKW01dIEVpbiBCaWVyY2hlbiBzY2htZWNrdCBpbW1lciBndXQgLSBEdW5rZWxzaGFreSAtIFtDbGF1c3RoYWxdCgpNYW4gYWNodGUgYXVmIGRlbiBPcnQgLi4uCgpDLiBObwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBuZXVlIFZlcnNpb24gKEtyYW1rYSwgMTAuIEp1biAxOTk3LCAxNTozNDoxNCk6Cn4jISBybj1TY2hsaXBzIHJ0PTg2NTkzNDM5MiByZz1zY2htYXJybgp+IyEgdGlkPTg2NTkzMzg3MwpBdXNzZXJkZW0gaGVpc3N0IGRhcyBTaGFrZWRiZWVyICEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggZmFzc2UgenVzYW1tZW4gISAoUmFudGFucGxhbiwgMTAuIEp1biAxOTk3LCAxNjo1NDoxOCk6Ckh1aHUgIQoKSGllciBlaW5lIEF1c3dhaGwgbWVpbmUgYW0gbGllYnN0ZW4gZ2VsZXNlbmUgQXJ0aWtlbCBpbiBkZW4gdmVyc2NoaWVkZW5lbgpSdWJyaWtlbiAhCgphLikgRmluZCBpY2ggYXVjaCAhCmIuKSAqcm90ZmwqCmMuKSBbYWxsZ2VtZWluOlNwaWVsZXIgQV0gSGFsbG8gIQpEdSBob2Vyc3Qgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5ncmF1ZW4gZ2VodC4KZC4pIEhhbGxvLCB3aWUgZ2VodCBkYXMgaGllciA/CnF1aXQKZW5kZQphdXMKXkMKXloKR3JtcHBmClNjaGVpc3NlCmZ1Y2sKbm8gY2Fycmllci4uLgplLikgRWlucwpmLikgWndlaQpnLikgRHJlaQpoLikgdXN3Li4gd2VubiBlcyBtYWwgd2llZGVyIHVtIGVpbiBNdWR0cmVmZmVuIGdlaHQuCgoKCkluc29mZXJuIG11c3MgaWNoIGRvY2ggdGF0c2FlY2hsaWNoIEdyaW1tYm9ybiB1bmVpbmdlc2NocmFlbmt0IFJFY2h0IGdlYmVuLAp3ZW5uIGVyIHZlcmxlZ3Qgd2llIGVpbiBCRXJzZXJrZXIgIQoKT2UqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBwZWlubGljaC4uLiAoSGFkcmEsIDEwLiBKdW4gMTk5NywgMTg6NDI6MDkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2NTkzMDIyOSByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3ODkxMgplcyBnYWIgYmlzaGVyIHNjaGxpY2h0IGtlaW5lIG5vdHdlbmRpZyBydWJyaWtlbiBkaXN6aXBsaW4genUgaGFsdGVuLgptYW4gaGF0IGFydGlrZWwgaXJnZW5kd28gaGluZ2VzY2hyZWliZW4sIHdlaWwgZHUgc2llIGVoIHZlcmxlZ3QgaGFzdC4Kd2FydW0gc29sbCBpY2ggbWlyIHVlYmVyIG5lYmVuc2FlY2hsaWNoa2VpdGVuIHdpZSByaWNodGlnZSBydWJyaWtlbiBkZW4ga29wZgp6ZXJicmVjaGVuIHdlbm4gZHUgZGFzIGZ1ZXIgbWljaCBlcmxlZGlnc3Q/CgpoYWRyYSAtIHN0aW5rZmF1bCAodW5kIHVudmVyc2NoYWVtdCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHBlaW5saWNoLi4uIChBbmF0b2wsIDEwLiBKdW4gMTk5NywgMTg6NDc6NTIpOgp+IyEgcm49SGFkcmEgcnQ9ODY1OTYwOTI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1ODc4OTEyCldlcnRlciBIYWRyYSwgZXMgZ2lidCBoaWVyIGF1Y2ggTmljaHQtWndlcmdlIGltIE11ZC4KVW5kIGVzIGdpYnQgc29nYXIgb3JkZW50bGljaGUgWndlcmdlLiAKTmFqYSwgZXMgc29sbCBzaWUgenVtaW5kZXN0IGdlYmVuLiAKWndlcmdlLCBkaWUgT3JkbnVuZyBoYWx0ZW4ga29lbm5lbi4KSG0sIGRhcyBpc3QgbmljaHQgYWVxdWl2YWxlbnQuClZpZWxsZWljaHQgZ2lidCdzIGRpZSB0cm90emRlbS4KVmllbGxlaWNodC4KCkFuYXRvbCwgYXJyb2dhbnRlciBFbGYgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBwZWlubGljaC4uLiAoV29vZHksIDEwLiBKdW4gMTk5NywgMTg6NDg6NDIpOgp+IyEgcm49QW5hdG9sIHJ0PTg2NTk2MTI3MiByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3ODkxMgoqbmFzZXp1aGFsdCoKCldvb2R5LCBBbmF0b2wgbWVpbGVud2VpdCByaWVjaGVuZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogcGVpbmxpY2guLi4gKEdyaW1tYm9ybiwgMTAuIEp1biAxOTk3LCAxODo1NDo1OSk6Cn4jISBybj1IYWRyYSBydD04NjU5NjA5Mjkgcmc9c2NobWFycm4KfiMhIHRpZD04NjU4Nzg5MTIKRWJlbiwgdW5kIHdlaWwgZGllIExldXRlIHp1IGRhZW1saWNoIHNpbmQsIERpY2ggYWxzIGRlbiBWZXJ1cnNhY2hlciBhbnp1bWFjaGVuCnVuZCBsaWViZXIgYXVmIG1pciBoZXJ1bWhhY2tlbiwgZGVyIGljaCB2ZXJzdWNodCBoYWJlLCBkYXMgenUgbWlsZGVybiwgZ2luZwpkYXMgamEgZnVlciBEaWNoIGF1Y2ggZ3V0LiBVbmQgc28gZWluIFZlcmhhbHRlbiBmdWVocnQgaW0gRW5kZWZmZWt0IGVudHdlZGVyCnp1IGVpbmVyIFplaXR1bmcsIGRpZSBudXIgbm9jaCBlaW5lIFJ1YnJpayBicmF1Y2h0IChpY2ggc2NobGFnZSBkZXBwZW4uY2hhb3MKdm9yKSwgb2RlciBlaW5lIFplaXR1bmcsIGRpZSBsZXR6dGxpY2ggdm9sbHN0YWVuZGlnIG1vZGVyaWVydCBpc3QuIEJlaWRlcwpoYWx0ZSBpY2ggbmljaHQgZnVlciB3dWVuc2NoZW5zd2VydC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogcGVpbmxpY2guLi4gKEtleSwgMTAuIEp1biAxOTk3LCAxODo1ODozNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODY1OTYxNjk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1ODc4OTEyCk9jaCBMZXV0Y2hlbiAuLi4gZGVyIFRpdGVsIHBhc3N0LgpLYW5uIGVzIG5pY2h0IGVpbmVuIFRhZyBoaWVyIGdlYmVuIGFuIGRlbSBuaWNodCBtaW4uIGVpbmVyIGVpbmVtIGFuZGVyZW4gYXVzCm5lbSBibG9lZGVuIEdydW5kIGFtIGxpZWJzdGVuIGRlbiBLb3BmIGVpbnNjaGxhZ2VuIHdpbGw/CkljaCBzY2hsYWdlIGhpZXJtaXQgZWluZW4gQmxlaWJ0LVJ1aGlnLVRhZyB2b3IgLi4uLiBNYW4gZGFyZiBudXIgbWV0emVsbiwgdW5kCmplZ2xpY2hlIEFydCBkZXIgS29tdW5pa2F0aW9uIHdpcmQgYWJnZXN0ZWxsdCA7KSBOYWphIG9raSB0bSBrYW5uIG1hbiBsYXNzZW4KLi4uIFNvIHdhZXJlIHp1bWluZGVzdCBzaWNoZXJnZXN0ZWxsdCBkYXMgaGllciBtYWwgcnVoZSBpc3QgLi4uCgpVbmQgZ3JpbW0sIGF1cyBkZXBwZW4uY2hhb3Mgd2lyZCBuaXgsIHdhZXJlIGphIG5lIEJlbGVpZGlndW5nIGZ1ZXIgY2hhb3RlbiA7KQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBwZWlubGljaC4uLiAoUmFudGFucGxhbiwgMTAuIEp1biAxOTk3LCAxODo1OTozOSk6Cn4jISBybj1LZXkgcnQ9ODY1OTYxOTE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1ODc4OTEyClNvIGVpbiBzY2h3YWNoc2lubiwgS2V5Li4uCgpXZWxjaGUgQmVmcmllZGlndW5nIHNvbGwgaWNoIGRhbm4gbmFvY2ggYXVzIGRlbSBNdWRkZW4gemllaGVuLCB3ZW5uIGljaCBuaWNodAptaW5kZXN0ZW5zIHplaG4gTGV1dGUgZ2VnZW4gbWljaCBhdWZnZWJyYWNodCBoYWJlLi4uPz8/PwoKT2UqCiwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IHBlaW5saWNoLi4uIChLZXksIDEwLiBKdW4gMTk5NywgMTk6MDA6NTUpOgp+IyEgcm49UmFudGFucGxhbiBydD04NjU5NjE5Nzkgcmc9c2NobWFycm4KfiMhIHRpZD04NjU4Nzg5MTIKT2VobSAuLi4gc3RpbW10IGF1Y2ggd2llZGVyIDspPQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBwZWlubGljaC4uLiAoUXVhc2ltb2RvLCAxMC4gSnVuIDE5OTcsIDE5OjQzOjUxKToKfiMhIG9uPUdyaW1tYm9ybiBvdD04NjU5NDI2MDcgb2c9c2NobWFycm4KfiMhIHJuPVF1YXNpbW9kbyBydD04NjU5Mzg1NTEgcmc9c2NobWFycm4KfiMhIHRpZD04NjU4Nzg5MTIKS2FubnN0IER1IGRlbiBUaHJlYWQgYXVjaCBzZWxiZXIgdmVybGVnZW4/IERhcyB3dWVyZGUgbWljaCBhbGxlcmRpbmdzIHNjaG9uCnd1bmRlcm4uLi4KTWVya2U6IEtvcGllcmVuIGlzdCBuaWNodCB2ZXJsZWdlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogcGVpbmxpY2guLi4gKFF1YXNpbW9kbywgMTAuIEp1biAxOTk3LCAxOTo0NDo0Nyk6Cn4jISBybj1RdWFzaW1vZG8gcnQ9ODY1OTY0NjMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1ODc4OTEyCm5laW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBwZWlubGljaC4uLiAoQW5hdG9sLCAxMC4gSnVuIDE5OTcsIDIwOjEwOjI0KToKfiMhIHJuPVF1YXNpbW9kbyBydD04NjU5NjQ2ODcgcmc9c2NobWFycm4KfiMhIHRpZD04NjU4Nzg5MTIKRGllamVuaWdlbiwgZGllIHdpc3NlbiB3b2xsZW4sIHdpZSBlcyBvaG5lIEdyaW1tYm9ybiBhdXNzYWVoZSwgbW9lZ2VuCmVpbmZhY2ggbWFsIGltIEFuZGVyTGFuZCBkaWUgWmVpdHVuZyBsZXNlbi4gKnNldWZ6KgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogcGVpbmxpY2guLi4gKEdyaW1tYm9ybiwgMTAuIEp1biAxOTk3LCAyMDo0NzozMSk6Cn4jISBybj1RdWFzaW1vZG8gcnQ9ODY1OTY0NjMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1ODc4OTEyCldpZSBnZXNhZ3QsIGRlciBpc3Qga29waWVydCB1bmQgbmljaHQgdmVybGVndC4KV3Vyc3RtYWdpZXIuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IHBlaW5saWNoLi4uIChRdWFzaW1vZG8sIDEwLiBKdW4gMTk5NywgMjA6NDk6MTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2NTk2ODQ1MSByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3ODkxMgpFaW5pZ2VuIHdpciB1bnMgYXVmICJ6dSBhbHQiLiBBbHMgaWNoIGRhcyBsZXR6dGUgTWFsIHdhcyBnZW1hY2h0IGhhYmUsIGRhIGdhYgplcyBub2NoIGtlaW4gInZlcmxlZ2VuIi4KClFkR2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZydWVoZXIgZ2VodCBlcyBuaWNodC4gKEFuYXRvbCwgMTEuIEp1biAxOTk3LCAwMDowMDozNyk6CgpEZWluIEZyZXVuZCBXb29keSBnZWh0IGRhbm4gbWFsIGF1cyBkZXIgRmVybmUsIGhldXRlIGF1c25haG1zd2Vpc2UgZnJ1ZWhlciA6KSAKWzAwOjAwXQoKQW5hdG9sLCBzaWVoZSBUaXRlbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hIHdhcyBudT8gKFdvb2R5LCAxMS4gSnVuIDE5OTcsIDAyOjA2OjUwKToKPiBzY2hhdQpFaW4gc3RhYmlsZXIgSG9senNjaHJhbmsuIEluIHNlaW5lbSBJbm5lcm4ga2FubnN0IER1IERpbmdlIGF1ZmJld2FocmVuLCBkaWUKc29uc3QgbnVyIGltIFdlZyBoZXJ1bWxpZWdlbi4gTGVpZGVyIGxhZXNzdCBlciBzaWNoIG5pY2h0IGFic2NobGllc3NlbiB3aWUgZGllClRydWhlbiBpbiBkZW4gU2VoZXJoYWV1c2Vybi4KRXIgaXN0IGdlc2NobG9zc2VuLgo+IG9lZmZuZSBzY2hyYW5rCkRlciBTY2hyYW5rIGlzdCBzY2hvbiBvZmZlbi4KCndvb2R5Li0KClBTLiAib2VmZm5lIHNjaHJhbmsgMSIgaGF0IGRhbm4gZ2VrbGFwcHQuLi4gOi0vCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUWVBPLW1lbGR1bmcgKFlhbnRybywgMTEuIEp1biAxOTk3LCAwODo1NDowNyk6CmF1cyBtZWluZW0gTG9nOgoKVFlQTyB2b24gYWNyaW1vbiBbLi4uXQpkZXRhaWwgaW5zZWt0OiAiTWV0aGFwaGVyIiBzb2xsdGUgaGVpc3plbiAiTWV0YXBoZXIiCgpzaWNoZXIgaGF0IGVyIGlyZ2VuZHdpZSByZWNodCwgYWJlciBkYXp1IGZhZWxsdCBtaXIgc29uIEJpYmVsc3BydWNoIGVpbiB6dW0KVGhlbWEgU3BsaXR0ZXIgYmVpbSBhbmRlcmVuIHVuZCBTYWVnZXdlcmsgaW0gZWlnZW5lbiBBdWdlLgoKWWFudHJvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogcGVpbmxpY2guLi4gKEFjcmltb24sIDExLiBKdW4gMTk5NywgMTI6NDM6MTcpOgp+IyEgcm49UXVhc2ltb2RvIHJ0PTg2NTk2ODU1OCByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3ODkxMgpWb24gbWlyIGdpYnQgZXMgaGllciBlaW4gYXVmcmljaHRpZ2VzICpEYW5rZXNjaG9lbiogYW4gR3JpbW1ib3JuIGZ1ZXIgc2VpbmUKVmVybGVnZWFyYmVpdC4KR3JpbW1ib3JuIG1hY2h0IHNlaW5lIFNhY2hlIGhlcnZvcnJhZ2VuZC4KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IHBlaW5saWNoLi4uIChHcmltbWJvcm4sIDExLiBKdW4gMTk5NywgMTM6MTE6MzgpOgp+IyEgcm49QWNyaW1vbiBydD04NjYwMjU3OTcgcmc9c2NobWFycm4KfiMhIHRpZD04NjU4Nzg5MTIKSWNoIGdsYXViZSwgc293YXMgbmVubnQgbWFuIGVpbmVuIEp1ZGFza3Vzcy4uLiBuZWluLCBkYXMgd2FyIHdhcyBhbmRlcmVzLgpXaWUgaGllc3NlIGRhcywgd2VubiBTY2hvZW5odWJlciBhdWZyaWVmZSwgbmljaHQgaWhuIHNvbmRlcm4gZGllIENEVSB6dQp3YWVobGVuPyBJbiBGcmFua3JlaWNoIG1pdCAiRGVtU3RpZnQiIGlzdCBkb2NoIG1hbCBzb3dhcyBnZWxhdWZlbiwgbWVpbmUgaWNoLgoKR2RBLCBsZWljaHQgdmVyd2lycnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBwZWlubGljaC4uLiAoS3JldGVrLCAxMS4gSnVuIDE5OTcsIDE3OjM3OjQwKToKfiMhIHJuPUVuZ3l3dWNrIHJ0PTg2NTkzMDc4NyByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3ODkxMgpPaCBqYSwgZGFubiBrb2VubnRlIGljaCBhdWNoIG1laW4gImlnbm9yaWVyZSBncmltbWJvcm4ubmV3cyIgd2llZGVyCnJhdXNuZWhtZW4uLi4KCksuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBwZWlubGljaC4uLiAoR3JpbW1ib3JuLCAxMS4gSnVuIDE5OTcsIDE3OjM5OjAyKToKfiMhIHJuPUtyZXRlayBydD04NjYwNDM0NjAgcmc9c2NobWFycm4KfiMhIHRpZD04NjU4Nzg5MTIKTGFzcyBtYWwuCkxvaG50IG5pY2h0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogcGVpbmxpY2guLi4gKFF1YXNpbW9kbywgMTIuIEp1biAxOTk3LCAxNToyODoxMCk6Cn4jISBybj1BY3JpbW9uIHJ0PTg2NjAyNTc5NyByZz1zY2htYXJybgp+IyEgdGlkPTg2NTg3ODkxMgpGaW5kZSBpY2ggYXVjaC4gRGVzd2VnZW4gaGFiZSBpY2ggZXMgYXVjaCBuaWNodCBrcml0aXNpZXJ0LgpRdWFzaS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHBlaW5saWNoLi4uIChIZWZlLCAxMi4gSnVuIDE5OTcsIDE5OjI1OjE1KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NjU5MzAyMjkgcmc9c2NobWFycm4KfiMhIHRpZD04NjU4Nzg5MTIKT2ggamVlZWUsIHdpZSBrYW5uc3QgRHUgdW5zIGRhcyBhbnR1biA/CldpciBzaW5kIHNjaG9ja2llcnQgISEKVm9sbGVyIEVudHNldHplbiBoYXJyZW4gd2lyIGRlbSBDaGFvcywgZGFzIHVucyBpbiBkZXIgTVBBIGVyd2FydGV0LCB3ZW5uIGVzCm51biBrZWluZSBrb21wZXRlbnRlIFJ1YnJpa3BvbGl6ZWkgbWVociBnaWJ0ICEKCi0gQWJlciB2aWVsbGVpY2h0LCB3ZW5uIHdpciBnYW56IGxpZWIgc2luZCwga2FubiBkaWVzZSBleGlzdGVuemJlZHJvaGVuZGUKRW50c2NoZWlkdW5nIGphIG5vY2ggcnVlY2tnYWVuZ2lnIGdlbWFjaHQgd2VyZGVuLCB3ZW5uIHdpciB1bnMgYWxsZQpvZWZmZW50bGljaCB2b24gZGllc2VuIGJvZXNlbiwgZnJldmVsaGFmdGVuIEtyaXRpa2VybiBkaXN0YW56aWVyZW4gPwoKSVJPTklFIE9GRgoKR3JpbW1ib3JuLCBrb21tc3QgRHUgRGlyIGVpZ2VudGxpY2ggbmljaHQgYmxvZWQgdm9yID8KQmVzb25kZXJzIERlaW5lIEFua3VlbmRpZ3VuZywgc2VsYnN0IGtlaW5lICJSdWJyaWtkaXN6aXBsaW4iIG1laHIgZWluaGFsdGVuIHp1CndvbGxlbiwgbWFjaHQgRGljaCB6dW1pbmRlc3QgaW4gbWVpbmVuIEF1Z2VuIF9ub2NoXyBsYWVjaGVybGljaGVyIGFscyBEZWluZQphbmRhdWVybmRlIFZlcmxlZ2VyZWkuCgpIZWZlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBwZWlubGljaC4uLiAoRGllZGVyLCAxMi4gSnVuIDE5OTcsIDE5OjM4OjUzKToKfiMhIHJuPUhlZmUgcnQ9ODY2MTM2MzE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY1ODc4OTEyCipzY2h1YmJlcnNjaHViYmVyc2NodWJiZXIqCgpPaCBIZWZlLCB3ZW5uIER1IHd1ZXNzdGVzdCBfd2llIHNlaHJfIER1IG1pciBkYSBhdXMgZGVyIFNlZWxlIGdlc3Byb2NoZW4gaGFzdCEKCkljaCBnbGF1YmUgaWNoIHdlaXNzIHNjaG9uIHdpZXNvIHdpciBBbWlnb3Mgc2luZC4uLiA6KSkpCgpEaWVkZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBwZWlubGljaC4uLiAoR3JpbW1ib3JuLCAxMy4gSnVuIDE5OTcsIDEwOjQ0OjA5KToKfiMhIHJuPURpZWRlciBydD04NjYxMzcxMzMgcmc9c2NobWFycm4KfiMhIHRpZD04NjU4Nzg5MTIKSWNoIHdlaXNzIGRhcyBhdWNoLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWdpZXJmcnVzdCAoQmVuZGVpZ2lkLCAxMy4gSnVuIDE5OTcsIDEzOjE4OjQ1KToKSG0sIGJlaW0gZHVyY2hibGFldHRlcm4gbWVpbmVzIFJlcC1GaWxlcyB2aWVsIG1pciBmb2xnZW5kZXIgRWludHJhZyBhdWY6CklERUEgdm9uIGdsb2luIFsvZC9wb2xhci9iZW5kZWlnaWQvICAoMTUuIE1haSAxOTk3KToKRGV0YWlsczogYXJiZWl0LCBoYXVmZW4sIGRldGFpbHMsIGRldGFpbCwgamFtbWVydGFsLCBlYmVuZSwgYWthZGVtaWVzdHJhc3NlLAptZW5nZSwgaW5mb3JtYXRpb25lbiAuLi4gbmltbSBEaXIgbWFsIGVpbiBCZWlzcGllbCBhbiBUb2V0ZXIKCkljaCB3ZWlzcyBuaWNodCwgaXJnZW5kd2llIGZydXN0cmllcmVuZC4uLiBpbW1lcmhpbiBzdGFuZCBkaWVzIGFscyBlcnN0ZXIKRWludHJhZyBHbG9pbnMgdWViZXJoYXVwdCBpbSBSZXAsIHVuZCBkYXMgaW4gZWluZW0gUmF1bSBkZXV0bGljaCBoaW50ZXIgZGVtClBhc3MuCgoqd2VpbmphbW1lcnNjaGx1Y2h6KiBkYXMgZGVwcmltaWVydCBtaWNoIG51IGFiZXIuLi4KCgpCZW5kZWlnaWQsIHNjaGx1Y2h6ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPSywgaWNoIGF1Y2ggbWFsOiAoR3JpbW1ib3JuLCAxMy4gSnVuIDE5OTcsIDE2OjIzOjA2KToKPiBGcm9naHVudGVyIHJ1ZnQ6IFNjaGVpc3MgbmV0c2NhcGVyICEhISBEaWUgYnJlbXNlbiBtaXIgZGVuIFNlcnZlciBhdXMgISEhCjooKApCZW5kZWlnaWQgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCk5hLCBkZXIgd2FyIGRvY2ggamV0enQgbWFsIHdpcmtsaWNoIHp1bSBicnVlbGxlbiwgb2Rlcj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWml0dGVybiBkaWUgMTE3OC4gKEFzbW9kaXMsIDEzLiBKdW4gMTk5NywgMjI6NDQ6MjApOgpEdSBuaW1tc3Qgc2Nob24gYW0gU3BpZWwgdGVpbCEKVmVyd2VuZGUgRGVpbmUgYWx0ZSBzdGVyYmxpY2hlIEh1ZWxsZSAuLi4KUmluZ29yLCBTbHlmb3gsIEVzY3ViYXIgdW5kIFJhbnRhbnBsYW4gc2luZCBpbSBTcGllbC4KWmVyYmVydXMgdHJvdHRldCBoZXJlaW4uCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgoKSHVjaCwgd2FyIGljaCBkYXMgb2RlciBtZWluIEh1bmQgZ2FyID8/PyAqZ3JvZWhsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hZ2llcmZydXN0IChHbG9pbiwgMTQuIEp1biAxOTk3LCAyMDoyMDoyNSk6Cn4jISBybj1CZW5kZWlnaWQgcnQ9ODY2MjAwNzI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY2MjAwNzI1CkRhenUgbXVzcyBtYW4gc2FnZW4sIGRhc3MgYWxsIGRpZXNlIFN1YnN0YW50aXZlIGJlaSBpaG0gaW4gZWluZW0gc2Nob2VuZW4KbGFuZ2VuIERldGFpbCBzdGVoZW4gOy0pCgpHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2FkbyBNYXNzbyBpbSBNRyAoRXNjdWJhciwgMTUuIEp1biAxOTk3LCAwOTo0MDowMSk6CltBbGxnZW1laW46THVnXSBBc21vZGlzIER1ICpaRU5TVVIqCltBbGxnZW1laW46RXNjdWJhciBxdWFlbHQgTHVnIG1pdCBkZXIgUGVpdHNjaGVdCj4gW0FsbGdlbWVpbjpMdWddICpzdG9laCoKW0FsbGdlbWVpbjpLZXldIEVzY3ViYXIgZGVzIG1hZ2VyIGRvY2ggOikKW0FsbGdlbWVpbjpMdWddICpTdG9laG4qCltBbGxnZW1laW46RXNjdWJhciBzY2hsYWVndCBpbW1lciBmZXN0ZXIgenVdCj4gW0FsbGdlbWVpbjpMdWcgbGFlY2hlbHQuXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdGhlIHJlYWwgbnVtYmVyIG9uZSAoQW5ha3luLCAxNS4gSnVuIDE5OTcsIDE3OjE5OjUxKToKSGksCgpuYWNoIGZhc3QgMyBqYWhyZW4gbXVkZGVuIGhhYmUgaWNoIGVzIHp1bSBlcnN0ZW4gbWFsCmdlc2NoYWZmdCBuYWNoIGVpbmVtIFJlYm9vdCBlcnN0ZXIgenUgc2Vpbi4KCj4gICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIFNvbiwgMTUuIEp1biAxOTk3LCAxNzoxODo0OSAoNCBUZWlsbmVobWVyKQoKTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucyAgQW5ha3luLi4uLi4uLi4uLnMKCkFuYWtpbi4gU3RvbHouCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggYmluIHNjaG9uIG1hIGluIG5lbiBndWxsaSBnZWZhbGxlbiA6KSAoSHVlcGZlciwgMTYuIEp1biAxOTk3LCAxNjo1NToxMyk6Cj5KbyBpY2ggd29sbHQgbnVyIG5vY2ggZWlucyBsb3Mgd2VyZGVuLiBpY2ggYmluIHNjaG9uIG1hIGluIG5lbiBndWxsaSBnZWZhbGxlbgouLi4KCgpkYXMgd2FycyBzY2hvbgpIdWVwZmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIGJpbiBzY2hvbiBtYSBpbiBuZW4gZ3VsbGkgZ2VmYWxsZW4gOikgKFpvcnJvLCAxNi4gSnVuIDE5OTcsIDE2OjU3OjE0KToKfiMhIHJuPUh1ZXBmZXIgcnQ9ODY2NDcyOTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY2NDcyOTEzCldvIGdpYnQgZXMgZGVubiBzbyBicmVpdGUgR3VsbGlzIDopPQoKR3J1c3MgWm9ycm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMTYuIEp1biAxOTk3LCAyMTo1ODowMCk6CiJIZWlyYXRlIG5pY2h0IGRlcyBHZWxkZXMgd2VnZW4uIEVzIGlzdCBiaWxsaWdlciB6dSBsZWloZW4uIiAoU2Nob3R0aXNjaCkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdC4gVW52ZXJoZWlyYXRldCB1bmQgdmVyc2NodWxkZXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppY2ggYXVjaCBtYWwuLi4gKFRheiwgMTYuIEp1biAxOTk3LCAyMzoxMzoxNik6CkhpZXJtaXQgdmVybGVpaGUgaWNoIEdyaW1tYm9ybiBkZW4gJ0dvbGRlbmUgU3RpZnQnIG9kZXIKZGVuICdHbHVlaGVuZGVuIEZpbmdlcicuIE5pY2h0IGdhbnogMTAlIGFsbGVyIEFydGlrZWwgaW4gZGVyIE1QQSAKc3RhbW1lbiB2b24gaWhtLiBEaWNodCBnZWZvbGd0LCBhYmVyIGRvY2ggZGV1dGxpY2ggZGFoaW50ZXIsCnZvbiBDYXR3ZWF6bGUsIGRlciBudXIgZHVyY2ggJ3ZlcmxlZ2UnIEFrdGlvbmVuIG5hY2ggdm9ybmUga2FtLgpEaWUgUnVicmlrZW4gbXVlbGwsIGR3bmV3cyB1bmQgc3R1ZmVuIHd1cmRlbiBuaWNodCBiZXdlcnRldC4KRGFua2UgR3JpbW1ib3JuIGZ1ZXIgc292aWVsIGF1Zm9wZmVybmRlIEFyYmVpdC4KCkFuYWtpbi4gRnVlciBlaW5lIFplaXR1bmcgd28gbmljaHQgOTUlIE11ZWxsIGRyaW4gc3RlaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGFsbHV6aW5hdGlvbmVuLi4uPyAoQXZhbG9uLCAxNy4gSnVuIDE5OTcsIDAxOjI2OjI5KToKQW4gZWluZW0genVnZWZvcmVuZW4gV2VpaGVyLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZHdlc3RlbiB1bmQgbm9yZG9zdGVuLgpWb24gd2VpdGVtIHNpZWhzdCBEdSBLYXRpIGVsZWdhbnQgdWViZXIgZGFzIEVpcyBnbGVpdGVuLgo+IGZpbmdlciBrYXRpCkthdGkgaXN0IG5pY2h0IGFud2VzZW5kLgpadWxldHp0IGVpbmdlbG9nZ3Qgdm9uOiBQYWRlcmJvcm4KWnVsZXR6dCBhdXNnZWxvZ2d0OiBNaXQsICA5LiBPa3QgMTk5NiwgMjA6MjU6MTQgKDI1MGQgMDQ6NTk6NTIpClZvbGxlciBOYW1lOiBLYXRpIGRpZSBLcmllZ2VyaW4KUmFzc2U6IEVsZiwgIEdpbGRlOiBBYmVudGV1cmVyLCAgR2VzY2hsZWNodDogd2VpYmxpY2gKU3BpZWxlcmxldmVsOiAxMAoKCkFoYS4uLiAqa3JhdHoqCgpBdmFsb24uIFZlcnd1bmRlcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGFsbHV6aW5hdGlvbmVuLi4uPyAoR3JpbW1ib3JuLCAxNy4gSnVuIDE5OTcsIDA5OjEwOjI5KToKfiMhIHJuPUF2YWxvbiBydD04NjY1MDM1ODkgcmc9c2NobWFycm4KfiMhIHRpZD04NjY1MDM1ODkKVGphLCBlcyBzY2hlaW5iYXIgTGV1dGUsIGRpZSBhdWNoIGR1cmNoIGRpZSBaZWl0IGJsaWNrZW4ga29lbm5lbi4gR3JhdHVsaWVyZSEKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCBmZWlsdCBhbiBzZWluZW4gMTAlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ3Jhc2hrdXJzIChSYW50YW5wbGFuLCAxNy4gSnVuIDE5OTcsIDE3OjExOjM4KToKSGkgTGV1dGUgISEhCgoKQXVmIGFrdHVlbGxlbiBBbmxhc3MgaGluLCBmdWVyIGFsbGUgbmV3YmllcyBlaW4gU3ByYWNoa3Vyc3VzLgoKV2FzIGRlciBNdWRkZXIgc2FndCB1bmQgd2FzIGVyIG1laW50OgoKCk9yaWdpbmFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBVZWJlcnNldHp1bmcKClhYWCBydWZ0OiBIYWxsbyAhICAgICAgICAgICAgICAgICAgICAgICAgICAgRioqKiBtaWNoICEgClhYWCBydWZ0OiBLb21tIGRvY2ggenUgbWlyLCBFaXMgZXNzZW4gISAgICAgRioqKiBtaWNoICEgClhYWCBydWZ0OiBJY2ggd2lsbCBoZWlyYXRlbiAhICAgICAgICAgICAgICAgR3Vlc3Mgd2hhdC4uLgpYWFggcnVmdDogR3JhdHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMuby4KCgpPcmlnaW5hbDoKRGVyIGR1bmtsZSBEZWNraGVuZ3N0IFhYWCBydWZ0OiBFUyBLQU5OIE5VUiBFSU5FTiBHRUJFTiAhISEgCgpVZWJlcnNldHp1bmc6CktlaW5lIGYqKioqIG1pY2guLi4KCgpPcmlnaW5hbDoKTWVybGluIHJ1ZnQ6IFhYWCBpc3QgaW4gZGVuIEtyZWlzIGRlciBNYWdpZXIgYXVmZ2Vub21tZW4gd29yZGVuLgoKVWViZXJzZXR6dW5nOgpBcm1lIFNhdSAhCgoKT3JpZ2luYWw6IApYWFggcnVmdDogSWNoIGJpbiByZWljaCAhIEljaCBiaW4gc2Nob2VuICEgSWNoIGthbm4gc2llIGFsbGUgaGFiZW4gIQoKVWViZXJzZXR6dW5nOgpJY2ggRGljaCBhdWNoLCBQYW1wZXJzIDstKSkKCgpJbSB6d2VpZmVsc2ZhbGwgZ2lsdCBfSU1NRVJfIFVlYmVyc2V0enVuZyBOci4xCkJlaSBBdXNuYWhtZW4gb2RlciBSZWdlbHNjaG1lcnplbiBmcmFnZW4gc2llIGlocmVuIEFyenQgb2RlcgpBbmFseXRpa2VyLgoKT2UqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqZ2FlaG4qIChHcmltbWJvcm4sIDE3LiBKdW4gMTk5NywgMTc6MjU6NDEpOgpOZXVsaWNoIGltIElSQzoKPEFydGU+IGp1bmdlLCBkZXIgc2Nhbm50IHNpY2ggZGEgZWluZW4gYWIKPEFydGU+IEFoaGggICAgCgpTY2hlaW50IGphIFNwYXNzIHp1IG1hY2hlbi4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IGxhbmd3ZWlsdCBzaWNoIGluIGVpbmVtIEt1cnMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKmdhZWhuKiAoR2xvaW4sIDE3LiBKdW4gMTk5NywgMTk6NTg6MTUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2NjU2MTE0MSByZz1zY2htYXJybgp+IyEgdGlkPTg2NjU2MTE0MQpXYXQgLi4uIGlociBoYWJ0IE11ZC1BbmJpbmR1bmcgaW4gRXVyZW4gS3Vyc2VuLiAqZ2llcioKCkF1Y2ggZ2FlaG5lbmQsIEdsb2luLCBhYmVyIFNQSU1oYWxiZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvLncuIChXb29keSwgMTcuIEp1biAxOTk3LCAyMDozMjo1Nik6CkNhdHdlYXpsZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKW0FsbGdlbWVpbjpLZXldIENhdCBoZWlyYXRlbiB3aXI/IC4pCgo6KSB3b29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICpnYWVobiogKEdyaW1tYm9ybiwgMTguIEp1biAxOTk3LCAwOTo1MzowNCk6Cn4jISBybj1HbG9pbiBydD04NjY1NzAyOTUgcmc9c2NobWFycm4KfiMhIHRpZD04NjY1NjExNDEKV2llIG1hbnMgbmltbXQuIEt1cnMgaW0gUmVjaG5lcnBvb2wsIHVuZCBib2VzZSBCbGlja2Ugdm9uIEtvbGxlZ2VuLHcgZW5uIGRpZQpUYXN0YXR1ciB6dSBsYXV0IGtsYXBwZXJ0LgpJc3QgYWJlciB6dWVuZGUsIGRlciBLdXJzLiBBYiBqZXR6dCBhcmJlaXRlIGljaCBudXIgbm9jaC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAqZ2FlaG4qIChHcmltbWJvcm4sIDE4LiBKdW4gMTk5NywgMDk6NTU6MTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2NjYyMDM4NCByZz1zY2htYXJybgp+IyEgdGlkPTg2NjU2MTE0MQpBY2ggamEsIGljaCB2ZXJnYXNzOiBSZWNobmVycG9vbCA9IFdpbk5ULiBLZWluZSBhbnN0YWVuZGlnZSBPYmVyZmxhZWNoZSAoZGllCnNlaGVuIGRhcyAibG9vayBhbmQgZmVlbCB2b24gV2luOTUiIGRvY2ggdGF0c2FlY2hsaWNoIGFscyBwb3NpdGl2ZXMKV2VyYmVhcmd1bWVudC4uLikgdW5kIGRhcyB0ZWxuZXQgaGF0dGUgYXVjaCBzbyBzZWluZSBUdWVja2VuIHVuZCBlaW5lIHppZW1saWNoCnNpY2hlciBuaWNodCAxMDAlaWdlIHZ0MTAwIGVtdWxhdGlvbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uIChEaWVkZXIsIDE4LiBKdW4gMTk5NywgMjI6NTM6NTUpOgpHdXR6a293IHJ1ZnQ6IGthdGkgaGlsZiBtaXIgYml0dGUKS2F0aSBydWZ0OiBXYXMgZGVubj8KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgR3V0emtvdwpbVG9kOkxhcnNdIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYWVtcGZlciBhYndlcnRlbiEgKFplcGh5ciwgMTguIEp1biAxOTk3LCAyMzoyNjozNik6CkViZW4gYmVpIGRlciBBdXNiaWxkdW5nOgoKRWluIE9mZml6aWVyIGZhZWxsdCBvaG5tYWVjaHRpZyB1bS4KTWFuIHNjaGxhZWd0IGRvY2gga2VpbmVuIE9obm1hZWNodGlnZW4hCkx1ZyBzZXR6dCBlaW5lbiBtb2VyZGVyaXNjaGVuIFRvZGVzc3Rvc3MgZ2VnZW4gZWluZW4gT2ZmaXppZXIgYW4uCkVpbiBPZmZpemllciBrb21tdCB3aWVkZXIgenUgc2ljaC4KCmltbWVyIG5vY2gga2ljaGVybmQsIFplcGh5cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJtYWdlZGRvbiAoU2x5Zm94LCAxOS4gSnVuIDE5OTcsIDE0OjI2OjAwKToKdG0gYXJtYWdlZGRvbiB3aWUgbGFuZ2Ugbm9jaCAKQXJtYWdlZGRvbiB0ZWlsdCBEaXIgbWl0OiBFcyBpc3Qgbm9jaCB6dSBmcnVlaCEgUHJvYmllcnMgMTAgTWludXRlbiB2b3IgZGVtCkFybWFnZWRkb24gdGVpbHQgRGlyIG1pdDogRW5kZSBub2NobWFsIQpEdSB0ZWlsc3QgQXJtYWdlZGRvbiBtaXQ6IHdpZSBsYW5nZSBub2NoCgotLS0tLS0Kc2x5Zm94CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCZXN0cmFmdW5nPz8/IChZYW50cm8sIDIwLiBKdW4gMTk5NywgMDc6MzY6MTEpOgp+IyEgb249UmFudGFucGxhbiBvdD04NjY3MzgzNjUgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU1hc28gcnQ9ODY2NzM4MjQ4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODY2NjY5NjAwCgpCbGFhYWJsYWFhYWFhYWFhYmxhYWFhYWFhYWFhYWFhYWFhYQoKT2UqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBCZXN0cmFmdW5nPz8/IChZYW50cm8sIDIwLiBKdW4gMTk5NywgMDc6Mzk6MTkpOgp+IyEgb249TWFzbyBvdD04NjY3NDM3OTUgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVJhbnRhbnBsYW4gcnQ9ODY2NzM4MzY1IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODY2NjY5NjAwCj4gQmxhYWFibGFhYWFhYWFhYWJsYWFhYWFhYWFhYWFhYWFhYWEKClZpZWxlbiBEYW5rIGZ1ZXIgRGVpbiBhZXVzc2Vyc3QgZ2Vpc3RyZWljaGVzIHVuZCBkaWUgRGlza3Vzc2lvbgp3ZWl0IHZvcmFuYnJpbmdlbmRlcyBBcnRpa2VsLiBNb2VnbGljaGVyd2Vpc2Uga29lbm50ZXN0IER1IGFsbGVyZGluZ3MKaW4gWnVrdW5mdCBhdWNoIGRpZSBhbmRlcmVuIDIzIEJ1Y2hzdGFiZW4gYmVudXR6ZW4sIGRhbWl0IG1hbgpEaWNoIG5pY2h0IHNvIGxlaWNodCBtaXNzdmVyc3RlaGVuIHVuZCBmdWVyIGVpbiBBcnNjaGxvY2ggaGFsdGVuCmthbm4uIFZpZWxlbiBEYW5rLgoKICAgICAgICAgICAgICAgTWFzby4KClBTOiBGdWVyIGRpZSwgZGllIGVzIG5pY2h0IGdlbWVya3QgaGFiZW46IDxTQVJLQVNNVVMgT0ZGPgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV1ZSBTdHVwcy1CZXdlcnR1bmcgKENhdHdlYXpsZSwgMjAuIEp1biAxOTk3LCAxOTo1NDoxNik6Cn4jISBvbj1QYWRyZWljIG90PTg2NjgwMTM4OSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49QW5ha2luIHJ0PTg2NjgwMTI2NSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg2Njc5NTcwNgpTY2hvbiB3aWVkZXIgZGllc2VzIFVud29ydCEKVW5zZXJlIGdhbnplIEdlc3NlbHNjaGFmdCBrcmFua3QgZGVyemVpdCBhbiBlaW5lbSBXb3J0OyBCRVNJVFpTVEFORFNXQUhSVU5HCgogICAgICAgICAgICAgICAgICAgICAgICAgICBQYWRyZWljCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXVlIFN0dXBzLUJld2VydHVuZyAoQ2F0d2VhemxlLCAyMC4gSnVuIDE5OTcsIDE5OjU0OjI4KToKfiMhIG9uPVJhbnRhbnBsYW4gb3Q9ODY2ODAxNDYxIG9nPWVudHdpY2tsdW5nCn4jISBybj1QYWRyZWljIHJ0PTg2NjgwMTM4OSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg2Njc5NTcwNgpBcHJvcG9zIFVud29ydC4uLgoKSWNoIGJpbiBkZWZpbml0aXYgZnVlciAib25saW5lIgoKT2UqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXVlIFN0dXBzLUJld2VydHVuZyAoQ2F0d2VhemxlLCAyMC4gSnVuIDE5OTcsIDE5OjU0OjQxKToKfiMhIG9uPUFzbW9kaXMgb3Q9ODY2ODAxNDgyIG9nPWVudHdpY2tsdW5nCn4jISBybj1SYW50YW5wbGFuIHJ0PTg2NjgwMTQ2MSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg2Njc5NTcwNgppY2ggYmluIGZ1ZXIgJ1N0ZXVlcnNlbmt1bmdzcGFydGVpJwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmV1ZSBTdHVwcy1CZXdlcnR1bmcgKENhdHdlYXpsZSwgMjAuIEp1biAxOTk3LCAxOTo1NTowOSk6Cn4jISBvbj1DYXVubyBvdD04NjY4MDQxMTcgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUFzbW9kaXMgcnQ9ODY2ODAxNDgyIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODY2Nzk1NzA2CkRhcyBVbndvcnQgZGVyIGxldHp0ZW4gZHJlaSBKYWhyZSBpc3QgZnVlciBtaWNoICJaZXJlYWxpZW4iIC4uLi4Kd3VlcmcuCgpDLiBObwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTmV1ZSBTdHVwcy1CZXdlcnR1bmcgKENhdHdlYXpsZSwgMjAuIEp1biAxOTk3LCAxOTo1NToyNSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODY2ODA0NDk2IG9nPWVudHdpY2tsdW5nCn4jISBybj1DYXVubyBydD04NjY4MDQxMTcgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD04NjY3OTU3MDYKRGEgZGFzIGhpZXIgbmUgU2FtbWx1bmcgenUgd2VyZGVuIHNjaGVpbnQ6CkZ1ZXIgbWljaCBzaW5kIGRpZSBVbndvcnRlIGRlciBsZXR6dGVuIFplaXQgIk11bHRpbWVkaWEiIChkZXIgUmVjaG5lciBpc3QgbnVyCl9laW5fIE1lZGl1bSwgYW5zb25zdGVuIGJpbiBpY2ggc2VpdCBKYWhyZW4gbXVsdGltZWRpYWwsIHdlaWwgYmV3ZWd0ZSBCaWxkZXIKdW5kIFRvbiBrYW5uIGRlciBGZXJuc2VoZXIgc2Nob24gbGFuZ2UpIHVuZCAiSW50ZXJuZXQiIChtYW4gc29sbHRlIGRhcyB3d3cgaW4KSW50ZXJuZXQgdW1iZW5lbm5lbiB1bmQgZnVlciBkYXMgSW50ZXJuZXQgZWluZW4gQmVncmlmZiBmaW5kZW4sIGRlciBkYW5uIGluClJ1aGUgZ2VsYXNzZW4gd2lyZCkuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5ldWUgU3R1cHMtQmV3ZXJ0dW5nIChDYXR3ZWF6bGUsIDIwLiBKdW4gMTk5NywgMTk6NTU6MjcpOgp+IyEgb249QXN0YXIgb3Q9ODY2ODA0Njg1IG9nPWVudHdpY2tsdW5nCn4jISBybj1Bc21vZGlzIHJ0PTg2NjgwMTQ4MiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg2Njc5NTcwNgpjaCBiaW4gZnVlciB2aXJ0dWVsbCwgZGFzIGlzdCBub2NoIHNjaGxpbW1lciBhbHMgb25saW5lCgphc3RhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTmV1ZSBTdHVwcy1CZXdlcnR1bmcgKEdsb2luLCAyMC4gSnVuIDE5OTcsIDIwOjEwOjAwKToKfiMhIHJuPUNhdHdlYXpsZSBydD04NjY4MjkzMjcgcmc9c2NobWFycm4KfiMhIHRpZD04NjY3OTU3MDYKT2NoIC4uLiBpY2ggd2lsbCBhdWNoIG1pdHNhbW1lbG4uIE1laW4gc2NobGltbXN0ZXIgQWxwdHJhdW0gamVkZXMgSmFociBpc3QgZGFzCldvcnQ6ICdVTldPUlQnLgpFbnR3ZWRlciBpc3QgZXMgZWluIFdvcnQsIG9kZXIga2VpbmVzLiBXZW5uIGVzIGVpbmVuIFNhY2h2ZXJoYWx0IHBlci0KdmVydGllcnQgYXVzZHJ1ZWNrdCwgZGFubiBpc3QgZXMgYml0dGVzY2hvZW4gaW4gZGVtIFp1c2FtbWVuaGFuZyB6dQprcml0aXNpZXJlbiwgYWJlciBkb2NoIG5pY2h0IG1pdCBzbyBlaW5lbSBpbiBzaWNoIHNlbGJlciB1bmxvZ2lzY2hlbgpCbG9vZWRzaW5uIHp1IGJlemVpY2huZW4uCgpCZXNpdHpzdGFuZHN3YWhydW5nIGlzdCBkZXIgdm9yZ2VzY2hvYmVuZSBHcnVuZCBlaW5pZ2VyIGdyZWluZW5kZXIKU2VoZXIgZnVlciBpaHIgbGF1dGVzIEhldWxlbi4gV29iZWkgc2llIHNpY2ggZ2VybiBub2NoIG1pdCBkZW0KRGVja21hZW50ZWxjaGVuIGRlciBGYWlybmVzcyBiZWRlY2tlbiB3b2xsZW4uCgpHbG9pbiAuLi4gamEsIGljaCBoYWJlIDMtNCBMZXZlbCB2ZXJsb3Jlbi4gTkEgVU5EID8hIERpZSBrb21tZW4gd2llZGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTmV1ZSBTdHVwcy1CZXdlcnR1bmcgKEx1ZywgMjAuIEp1biAxOTk3LCAyMDoxMjo0OCk6Cn4jISBybj1HbG9pbiBydD04NjY4MzAyMDAgcmc9c2NobWFycm4KfiMhIHRpZD04NjY3OTU3MDYKQWVoZW0gR2xvaW4sCgpTY2htYXJyZW4gaXN0IHdpcmtsaWNoIGRpZSBSdWJyaWsgZnVlciBkZW4gYXJ0aWtlbC4KR3JlaW5lbj8gU29zbywga29lbnRlIG1hbiBhdWNoIGtlaW5lbiBCb2NrIGF1ZiBzdHVtcGZlcyBXaWVkZXJob2xlbiBuZW5uZW4uCldlbSdzIFNwYXNzIG1hY2h0Li4uCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE5ldWUgU3R1cHMtQmV3ZXJ0dW5nIChGbGF2aWEsIDIxLiBKdW4gMTk5NywgMDA6MjM6NTcpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTg2NjgyOTMyNSByZz1zY2htYXJybgp+IyEgdGlkPTg2Njc5NTcwNgpvZGVyIGludGVyYWt0aXYhCldpZSBzdGFuZCBlcyBtYWwgc28gc2Nob2VuIGluIGlyZ2VuZGVpbmVyIFplaXR1bmc6IG1laHIgYWxzIG11bHRpcGxlIGNob2ljZQppc3QgYmVpIFJlY2huZXJuIG5pY2h0IG1vZWdsaWNoLi4uCgpmbGF2CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBOZXVlIFN0dXBzLUJld2VydHVuZyAoRnl0LCAyMS4gSnVuIDE5OTcsIDA5OjI1OjIzKToKfiMhIHJuPUNhdHdlYXpsZSBydD04NjY4MjkzMjUgcmc9c2NobWFycm4KfiMhIHRpZD04NjY3OTU3MDYKCld1YWgsIEdyaW1taS4uLiBuaWNodCBudXIsIGRhc3MgRHUgZWluZW0gc3RhZW5kaWcgc2Nob24gZ2VzY2hyaWViZW5lcwp3ZWduaW1tc3QsIGpldHp0IGZhZW5nc3QgRHUgc2Nob24gYmVpbSB1bmdlc2NocmllYmVuZW4gV29ydCBhbi4uLgoKJ011bHRpbWVkaWEnLi4uLiBoaWVyIGdpYnQgZXMgZWluZW4gU3R1ZGllbmdhbmcgJ01lZGllbnRlY2huaWsnCihnZXNwcm9jaGVuOiAnTWFlZGNoZW4tVGVjaG5paycsIGRlciByYW5naWVydCBpbSBBbnNlaGVuIGRldXRsaWNoIGhpbnRlcgpCV0wsIHVuZCBkYXMgbmljaHQgenVsZXR6dCB3ZWdlbiBkaWVzZXIgJ0ludGVybmV0JyB2cy4gJ1dXVycgR2VzY2hpY2h0ZS4uLgoKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmV1ZSBTdHVwcy1CZXdlcnR1bmcgKFdvb2R5LCAyMS4gSnVuIDE5OTcsIDEzOjA1OjI2KToKfiMhIHJuPUZ5dCBydD04NjY4NzQxNjUgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD04NjY3OTU3MDYKQWNodGVuIFNpZSBiZWkgV2FobHZlcnNwcmVjaGVuIGF1ZiBkYXMgQWJsYXVmZGF0dW0uCih1bmJla2FubnQpCgp3b29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBMYWVkZW4gKFdvb2R5LCAyMi4gSnVuIDE5OTcsIDEzOjA1OjQwKToKfiMhIG9uPVdvb2R5IG90PTg2Njk3NzUyNCBvZz1hbGxnZW1laW5lcwp+IyEgcm49UmluZ29yIHJ0PTg2NjkzNDcyMSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg2Njg0NjUyMApKbyBpY2ggZXJpbm5lciBtaWNoIG5vY2ggZ3V0LCB3aWUgbGFuZyBpY2ggZGFtYWxzIGdlcmFldHNlbHQgaGFiLAphbHMgZWluZXIgaW0gU0wgc2ljaCBiZXNjaHdlcnRlIGRhc3MgaW4gQmV1dGVsIHN0ZWNrZW4gYmVpIGlobQpuaWNodCBnaW5nZS4uLiBhbSBFbmRlIHdhciBkYXMgZWluIGFsaSBhdWYgInNjaHdlcnQgd2VnIiAqbGFjaCoKCndvb2R5Li0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5ldWUgU3R1cHMtQmV3ZXJ0dW5nIChLcmV0ZWssIDIzLiBKdW4gMTk5NywgMTQ6MDQ6NDkpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTg2NjgyOTMwOSByZz1zY2htYXJybgp+IyEgdGlkPTg2Njc5NTcwNgpJY2ggYmluIGZ1ZXIgT2V0dGkuCgpLLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXMgeml0dGVydCB3aWVkZXIgKEtyZXRlaywgMjMuIEp1biAxOTk3LCAxNDowNTo0Nik6ClJhbnRhbnBsYW4ga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLiAgCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaHVwcHMgKE1vcmdvdGgsIDIzLiBKdW4gMTk5NywgMTc6MzY6MTUpOgo+QWxpbmUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVyIEJvZGVuIGJlZ2lubnQgenUgeml0dGVybiB1bmQgYW0gSG9yaXpvbnQgc2NoZWludCBkZXIgSGltbWVsIHp1IGJyZW5uZW4uCgpNb3Jnb3RoLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NoZWlzcyB0cmlnZ2VyIChHdWxkdWthdCwgMjMuIEp1biAxOTk3LCAyMTo1NDoyMSk6CnNjaGVpc3MgdHJpZ2dlcgpnZXN0ZXJuIGthbSBpY2ggdGF0c2FlY2hsaWNoIGluIGVpbmVuIHJhdW0sIHVuZCBkYW5uIGdpbmcgZGFzIGxvczoKRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KRz5BYmVyIE1hdXMgbGVidCBuaWNodC4KLS0tLS0gYmlzIGRpZSB0cmlnZ2VyIGF1c2dlc2NoYWx0ZXQgd3VyZGVuIC4uLgoKZXMgbGFnIG5lIGRpZGRsZSBtYXVzIGltIHJhdW0sIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJ0aWtlbCAoQXNtb2RpcywgMjQuIEp1biAxOTk3LCAwOToxNTo1Nyk6Cm5uIC0+IE5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCgpKZXR6dCBuaW1tZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzY2hlaXNzIHRyaWdnZXIgKEFzbW9kaXMsIDI0LiBKdW4gMTk5NywgMDk6MTg6MDApOgp+IyEgcm49R3VsZHVrYXQgcnQ9ODY3MDk1NjYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY3MDk1NjYxCkxvZXNjaHQgR3VsZHVrYXQgIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVudGkgdW5kIGRhcyBTZWdlbGZsdWd6ZXVnIChBc21vZGlzLCAyNC4gSnVuIDE5OTcsIDA5OjQ4OjQxKToKW0dyYXRzOkRlbnRpIGxhZWR0IEFyYWtuYXIgenUgZWluZW0gR3JhdHVsYXRpb25zZmx1ZyBpbiBzZWluIFNlZ2VsZmx1Z3pldWcgdW5kCiAgICAgICBmbGllZ3QgbmUgUnVuZGUgdWViZXJzIE1HIDopXQpbR3JhdHM6QXNtb2RpcyBtYWNodCBkYXMgTXNjaGluZW5nZXdlaHIga2xhcl0KPiBbR3JhdHM6RGllZGVyIHppZWh0IGRpZSBTY2h1dHphYmRlY2t1bmcgc2VpbmVyIEZsYWsgaGVydW50ZXIuXQpbR3JhdHM6QXNtb2RpcyBmZXVlcnQgZWluZSBTYWx2ZSBhdWYgRGVudGlzIFNlZ2VsZmx1Z3pldWcgYWJdCltHcmF0czpCZWxnYXJpYWRdIGZsYWt0IGVpbnMgYXVmIERpZWRlcnMgU2VnZWxmbHVnemV1ZwpbR3JhdHM6Qmx1ZW1lbCB3aXJmdCBuZSBBdG9tYm9tYmVdCltHcmF0czpBc21vZGlzIHppZWh0IGVpbmUgU29ubmVuYnJpbGxlIGFuXQpbR3JhdHM6U2FyZXRoIGJhbmd0IHVtIERlbnRpcyBTZWdsZXIuLi5dCltHcmF0czpEaWVkZXIganVzdGllcnQgc2VpbmUgWmllbHZvcnJpY2h0dW5nIHVuZCBmZXVlcnQgYXVzIGFsbGVuIFJvaHJlbiBhdWYKICAgICAgIERlbnRpLl0KW0dyYXRzOkFzbW9kaXMgbWVsZGV0ICdBYnNjaHVlc3MnXQpbR3JhdHM6RGVudGldIGhtbW0sIG1hbCB3aWVkZXIgbmVuIHRvZCB6dW0gYWJpZGVsbiA7KQpbR3JhdHM6RGllZGVyXSByZWdpc3RyaWVydCA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogb2ggYnJ1ZGVyIGdlbmVzeXMuLi4gKFlhbnRybywgMjQuIEp1biAxOTk3LCAxMDowMDo0NSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODY3MTM5MTc4IG9nPWdpbGRlbi5rbGVydXMKfiMhIHJuPU5hY2h0d2luZCBydD04NjcxMjM5ODcgcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTg2NzEyMzk4NwpIbW0/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5lIHdhZmZlLCBkaWUgYW5nZWJsaWNoIGtlaW5lbiBzY2hhZGVuIG1hY2h0Li4uIChCb25pLCAyNC4gSnVuIDE5OTcsIDEwOjQzOjI3KToKCiAgRHUgZ3JlaWZzdCBkZW4gS29jaCBtaXQgZGVtIFRoZWF0ZXJtZXNzZXIgYW4uCiAgRHUga3JhdHp0IGRlbiBLb2NoLgpEZXIgS29jaCBmYWVsbHQgdG90IHp1IEJvZGVuLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBLb2Noc10gTW9yZ2VuIGZydWVoIHVtIGhhbGIgc2VjaHMgaW4gZGVyIEFyZW5hLCBCb25pISBJY2gKW01vZXJkZXI6R2Vpc3QgZWluZXMgS29jaHNdIGhhYiBkaWUgV2FobCBkZXIgV2FmZmVuLgoKb2huZSB3b3J0ZS4KCkJvbmksIHdpZWRlcm1hbCBzdGF1bmVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVud29ydCAoTGksIDI0LiBKdW4gMTk5NywgMTE6MjU6NTQpOgpOZWUgTGV1dGUsIGRhcyBVbndvcnQgZGVzIE1uYXRzIGlzdCBlaW5kZXV0aWcgU1RVUFNFLi4uLgpKZWRlbmZhbGxzIGhpZXIgaW0gTVVECkxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpaaXR0ZXJuIGRpZSAzNDQ1Mi4gKEFzbW9kaXMsIDI0LiBKdW4gMTk5NywgMTM6MTE6NTYpOgpbQWxsZ2VtZWluOkthcnRvZmZlbF0gSGFsbG9lbGUgenVzYW1tZW4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KW1RvZDpMYXJzXSBFaW4gUnVuZW5zY2h3ZXJ0IGhhdCBnZXJhZGUgSW5lcyB1bWdlYnJhY2h0LgoKVWloLCB3ZWxjaGUgRm9sZ2VuIC4uLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFppdHRlcm4gZGllIDM0NDUyLiAoS2FydG9mZmVsLCAyNC4gSnVuIDE5OTcsIDEzOjIzOjUwKToKfiMhIHJuPUFzbW9kaXMgcnQ9ODY3MTUwNzE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY3MTUwNzE2CkFyZ2wsIGtyaWVnIGljaGpldHp0IG4gUGs/PwoKS2FydG9mZmVsIC0geml0dGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBaaXR0ZXJuIGRpZSAzNDQ1Mi4gKEFzbW9kaXMsIDI0LiBKdW4gMTk5NywgMTM6MjQ6NTQpOgp+IyEgcm49QXNtb2RpcyBydD04NjcxNTA3MTYgcmc9c2NobWFycm4KfiMhIHRpZD04NjcxNTA3MTYKTm9jaG1hbCB6dXIgRXJrbGFlcnVuZzogS2FydG9mZmVsIGhhdCBNb3JnZW5HYXVlbiBzbyB6dW0gWml0dGVybiBnZWJyYWNodCwKZGFzcyBJbmVzIGluIGlociBSdW5lbnNjaHdlcnQgZ2VzdHVlcnp0IGlzdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2l0emlzY2ggKEJhYm9vbiwgMjQuIEp1biAxOTk3LCAxNDoyNzozMyk6CgpSb2NodXMgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKW1RvZDpMYXJzXSBFaW4gUnVuZW5zY2h3ZXJ0IGhhdCBnZXJhZGUgVGhvcnZpbiB1bWdlYnJhY2h0LgoKIFJvY2h1cywgd2FzIGhhc3QgZHUgZGEgd2llZGVyIGFuZ2VzdGVsbHQ/IQoKIEJhYm9vbiAodW5nZWhldWVyIHdpdHppc2NoKQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2l0emlzY2ggKEFzbW9kaXMsIDI0LiBKdW4gMTk5NywgMTQ6Mjg6NTgpOgp+IyEgcm49QmFib29uIHJ0PTg2NzE1NTI1MyByZz1zY2htYXJybgp+IyEgdGlkPTg2NzE1NTI1MwpLbGFyLCB3ZW5uIFJvY2h1cyBrb21tdCwgc3RpcmJ0IGplbWFuZCwgd2FyIHNjaG9uIGltbWVyIHNvIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW53b3J0IChMdWcsIDI1LiBKdW4gMTk5NywgMDI6NDI6NTkpOgp+IyEgcm49TGkgcnQ9ODY3MTQ0MzU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY3MTQ0MzU0ClNUVVBTRSBlaW4gVW53b3J0PwoKV2llIHdhZXJlIGVzIG1pdDoKClNUVVBTRSBoZWlzc2VuIGpldHp0IFNUVVNTRSEKClVuZCBIYWlkZXIgaGVpc3N0IGpldHp0IFdpeC4KTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJdCdzIGNvb2wsIG1hbiAoQXNtb2RpcywgMjUuIEp1biAxOTk3LCAwOTo1MjowMyk6CltBbGxnZW1laW46QnVuZ2hvbGUgc3RlaHQgY29vbCBpbiBkZXIgRWNrZSB1bmQgc3BpZWx0IG1pdCBzZWluZW0gSm8uXQpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggd2lsbCBhdWNoIG1hbC4uLiAoRW5neXd1Y2ssIDI1LiBKdW4gMTk5NywgMTE6MTQ6MjIpOgpHcmltbWJvcm4gaXN0IGdlcmFkZSBuaWNodCBkYTogQXJiZWl0ZW4sIHdpZSBzaWNoIGRhcyBnZWhvZXJ0Cj4gRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCldvdy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTXVzaWtlcndpdHogKEdyaW1tYm9ybiwgMjUuIEp1biAxOTk3LCAxMTozNzoyOSk6CldpZXZpZWxlIFNpbmZvbmllZW4gaGF0IEJydWNrbmVyIGdlc2NocmllYmVuPwpFaW5lLCB1bmQgZGllIHplaG5tYWwuCgpEYSBpc3QgVml2YWxkaSBtaXQgc2VpbmVuIEtvbnplcnRlbiBzY2hvbiBpbm5vdmF0aXZlciwgZGFzIHNpbmQgaW1tZXJoaW4KZHJlaS4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbHRlcyBMb2cgKFphcmRveiwgMjUuIEp1biAxOTk3LCAxMTo0NTo1MSk6CiAgRGVyIEhvYmdvYmxpbiBncmVpZnQgRGljaCBtaXQgZGVtIFNhZWJlbCBhbi4KICBEdSBncmVpZnN0IGRlbiBIb2Jnb2JsaW4gc2NobGFuZ2VuZ2xlaWNoIG1pdCBlaW5lbSBWb2xsc3RyZWNrZXIgYW4uCiAgRHUgdHJpZmZzdCBkZW4gSG9iZ29ibGluIHNlaHIgaGFydC4KICBEdSBncmVpZnN0IGRlbiBIb2Jnb2JsaW4gbWl0IGRlbSBWb2xsc3RyZWNrZXIgYW4uCiAgRHUgdHJpZmZzdCBkZW4gSG9iZ29ibGluLgogIER1IGdyZWlmc3QgZGVuIEhvYmdvYmxpbiBzY2hsYW5nZW5nbGVpY2ggbWl0IGVpbmVtIFZvbGxzdHJlY2tlciBhbi4KICBEdSB0cmlmZnN0IGRlbiBIb2Jnb2JsaW4gaGFydC4KICBEdSBncmVpZnN0IGRlbiBIb2Jnb2JsaW4gc2NobGFuZ2VuZ2xlaWNoIG1pdCBlaW5lbSBWb2xsc3RyZWNrZXIgYW4uCiAgRHUgc2NobGFlZ3N0IGRlbiBIb2Jnb2JsaW4gbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KICBEdSBncmVpZnN0IGRlbiBIb2Jnb2JsaW4gbWl0IGRlbSBWb2xsc3RyZWNrZXIgYW4uCiAgRHUga3JhdHp0IGRlbiBIb2Jnb2JsaW4uCiAgRHUgZ3JlaWZzdCBkZW4gSG9iZ29ibGluIG1pdCBkZW0gVm9sbHN0cmVja2VyIGFuLgogIER1IHZlcmZlaGxzdCBkZW4gSG9iZ29ibGluLgogIER1IGdyZWlmc3QgZGVuIEhvYmdvYmxpbiBtaXQgZGVtIFZvbGxzdHJlY2tlciBhbi4KICBEdSB0cmlmZnN0IGRlbiBIb2Jnb2JsaW4gc2VociBoYXJ0LgogIER1IGdyZWlmc3QgZGVuIEhvYmdvYmxpbiBzY2hsYW5nZW5nbGVpY2ggbWl0IGVpbmVtIFZvbGxzdHJlY2tlciBhbi4KICBEdSB0cmlmZnN0IGRlbiBIb2Jnb2JsaW4gc2VociBoYXJ0LgogIER1IGdyZWlmc3QgZGVuIEhvYmdvYmxpbiBtaXQgZGVtIFZvbGxzdHJlY2tlciBhbi4KICBEdSB0cmlmZnN0IGRlbiBIb2Jnb2JsaW4gc2VociBoYXJ0LgpEZXIgVm9sbHN0cmVja2VyIHNjaGxhZWd0IG1pdCBncm9lc3N0ZXIgRnJldWRlIGJlc29uZGVycyBrcmFlZnRpZyBhdWYKRGVpbmVuIEdlZ25lciBlaW4sIGFscyBlciBtZXJrdCwgZGFzcyBkaWVzZXIga3VyeiB2b3JtIEVuZGUgc3RlaHQhCiAgRHUgZ3JlaWZzdCBkZW4gSG9iZ29ibGluIG1pdCBkZW0gVm9sbHN0cmVja2VyIGFuLgogIER1IHNjaGxhZWdzdCBkZW4gSG9iZ29ibGluIHp1IEJyZWkuCkRlciBIb2Jnb2JsaW4gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KICBEZXIgSG9iZ29ibGluIGdyZWlmdCBEaWNoIG1pdCBkZW0gU2FlYmVsIGFuLgogIER1IGdyZWlmc3QgZGVuIEhvYmdvYmxpbiBtaXQgZGVtIFZvbGxzdHJlY2tlciBhbi4KICBEdSB0cmlmZnN0IGRlbiBIb2Jnb2JsaW4gaGFydC4KRGVyIFZvbGxzdHJlY2tlciBzY2hsYWVndCBtaXQgZ3JvZXNzdGVyIEZyZXVkZSBiZXNvbmRlcnMga3JhZWZ0aWcgYXVmCkRlaW5lbiBHZWduZXIgZWluLCBhbHMgZXIgbWVya3QsIGRhc3MgZGllc2VyIGt1cnogdm9ybSBFbmRlIHN0ZWh0IQogIER1IGdyZWlmc3QgZGVuIEhvYmdvYmxpbiBtaXQgZGVtIFZvbGxzdHJlY2tlciBhbi4KICBEdSBzY2hsYWVnc3QgZGVuIEhvYmdvYmxpbiB6dSBCcmVpLgpEZXIgSG9iZ29ibGluIGZhZWxsdCB0b3QgenUgQm9kZW4uCgpEaWUgVHJ2ZXMgc2luZCB6dSBzdGFyayA6KQoKQ2lhbyBaYXJkb3oKLi0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnV1cHM/IChXb29keSwgMjUuIEp1biAxOTk3LCAxMTo0OTowOCk6Ck11cGZlbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEdSB0ZWlsc3QgTXVwZmVsIG1pdDogaGFpCk11cGZlbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1ZWNoZSBkZXIgV29jaGVuIChLcmFta2EsIDI1LiBKdW4gMTk5NywgMTc6NDc6MjEpOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3ByfGNoZQoKICAxLiBFbnR3ZWRlciBtYW4gbGVidCwgb2RlciBtYW4gaXN0IGtvbnNlcXVlbnQuCiAgICAgRXJpY2ggS3N0bmVyIC0gZ2VmdW5kZW4gYmVpIEd0eiBHZWxicmljaCBlYmVuc28gd2llIGVpbmlnZSBkZXIKICAgICBmb2xnZW5kZW4KCiAgMi4gRXJzdCBrb21tdCBkYXMgRnJlc3NlbiwgZGFubiBkaWUgTW9yYWwuCiAgICAgQmVydCBCcmVjaHQKCiAgMy4gV2VyIHNhZ3Q6IGhpZXIgaGVycnNjaHQgRnJlaWhlaXQsIGRlciBsfGd0LCBkZW5uIEZyZWloZWl0IGhlcnJzY2h0CiAgICAgbmljaHQuCiAgICAgRXJpY2ggRnJpZWQKCiAgNC4gRGFzIFJlY2h0IGF1ZiBEdW1taGVpdCBnZWhydCB6dXIgR2FyYW50aWUgZGVyIGZyZWllbiBFbnRmYWx0dW5nIGRlcgogICAgIFBlcnNubGljaGtlaXQuCiAgICAgTWFyayBUd2FpbgoKICA1LiBXZW5uIHp3ZWkgTWVuc2NoZW4gaW1tZXIgZGFzc2VsYmUgZGVua2VuLCBpc3QgZWluZXIgdm9uIGlobmVuCiAgICAgfGJlcmZsfHNzaWcuCiAgICAgV2luc3RvbiBDaHVyY2hpbGwKCiAgNi4gR2V3aG5saWNoIGdsYXVidCBkZXIgTWVuc2NoLCB3ZW5uIGVyIG51ciBXb3J0ZSBocnQsZXMgbShzc2Ugc2ljaAogICAgIGRhYmVpIGRvY2ggYXVjaCB3YXMgZGVua2VuIGxhc3Nlbi4KICAgICBnZWZ1bmRlbiBiZWkgQ2hyaXN0b3BoIExpcHAgZWJlbnNvIHdpZSBkZXIgbmNoc3RlIFNwcnVjaAoKICA3LiBFcmZhaHJ1bmcgaXN0IGVpbmUgbnx0emxpY2hlIFNhY2hlLiBMZWlkZXIgbWFjaHQgbWFuIHNpZSBpbW1lciBlcnN0CiAgICAga3VyeiBuYWNoZGVtIG1hbiBzaWUgYnJhdWNodGUuLi4KCiAgOC4gTmljaHQgaW1tZXIgc2luZCBkaWUgU3RpbGxlbiBhdWNoIGRpZSBXZWlzZW4uIEVzIGdpYnQgdmVyc2NobG9zc2VuZQogICAgIFRydWhlbiwgZGllIGxlZXIgc2luZC4KICAgICBKZWFuIEdpb25vCgogIDkuIE1hbmNoZSBsZWJlbiBtaXQgZWluZXIgc28gZXJzdGF1bmxpY2hlbiBSb3V0aW5lLCBkYXNzIGVzIHNjaHdlcmZhZWxsdAogICAgIHp1IGdsYXViZW4sIHNpZSBsZWJ0ZW4genVtIGVyc3RlbiBtYWwuCiAgICAgU3RhbmlzbGF3IEplcnp5IExlYwoKIDEwLiBFaW5lIEVya2VubnRuaXMgdm9uIGhldXRlIGthbm4gZGllIFRvY2h0ZXIgZWluZXMgSXJydHVtcyB2b24gZ2VzdGVybgogICAgIHNlaW4uCiAgICAgTWFyaWUgdi4gRWJuZXItRXNjaGVuYmFjaAoKIDExLiBNYW5jaG1hbCBoYUVibmVyLUVzY2hlbmJhY2h0IG1hbiBkZW4gTWVuc2NoZW4gYW0gc3Rya3N0ZW4sIGRlbiBtYW4gYW0KbWVpc3RlbiBsaWVidCwKICAgICBkZW5uIGVyIGlzdCBkZXIgRWluemlnZSwgZGVyIGVpbmVtIHdpcmtsaWNoIHdlaCB0dW4ga2Fubi4KCiAxMi4gUGhhbnRhc2llIGlzdCB3aWNodGlnZXIgYWxzIFdpc3NlbiwgZGVubiBXaXNzZW4gaXN0IGJlZ3Jlbnp0LgogICAgIEFsYmVydCBFaW5zdGVpbgoKIDEzLiBEZW1va3JhdGllIGlzdCBuaWNodHMgYW5kZXJlcywgYWxzIGRhcyBOaWVkZXJrbnxwcGVsbiBkZXMgVm9sa2VzIGR1cmNoCiAgICAgZGFzIFZvbGsgZnxyIGRhcyBWb2xrLgogICAgIE9zY2FyIFdpbGRlIChTcHJ1Y2ggZGVzIFRhZ2VzIGluIGRlciBIb2Noc2NodWx6ZWl0c2NocmlmdCBBdWRpbWF4KQoKIDE0LiBMZXJuZSB6dXp1aHJlbiwgZ3xuc3RpZ2UgR2VsZWdlbmhlaXRlbiBrbG9wZmVuIG1hbmNobWFsIG51ciBzZWhyIGxlaXNlCiAgICAgYW4gRGVpbmUgVHxyIQogICAgIGF1cyBMaWZlJ3MgTGl0dGxlIEluc3RydWN0aW9uIEJvb2sKCiAxNS4gVmVybGFzc2UgYWxsZXMgZWluIGJpfnJjaGVuIGJlc3NlciwgYWxzIER1IGVzIHZlcmxhc3NlbiBoYXN0IQogICAgIGF1cyBMaWZlJ3MgTGl0dGxlIEluc3RydWN0aW9uIEJvb2sKCiAxNi4gVmVyd2VuZGUgbmljaHQgenUgdmllbCBaZWl0IGluIE5lYmVuc2NobGljaGtlaXRlbiEKICAgICB3aWUgei5CLiBJbnRlcm5ldAoKIDE3LiBNZXJrZSBEaXIgTmFtZW4gdW5kIEdlc2ljaHRlciB2b24gTWVuc2NoZW4hCiAxOC4gQmV3YWhyZSBkYXMgS2luZCBpbiBEaXIhCiAgICAgYWJlciBzZWkgbmljaHQga2luZGlzY2ghCgogMTkuIEdpYiBEZWluZSBGZWhsZXIgenUhCiAgICAgZGFzIHNjaGFkZXQgbmllIQoKIDIwLiBTZWkgaGZsaWNoZXIgYWxzIG50aWcKICAgICBhdXMgTGlmZSdzIExpdHRsZSBJbnN0cnVjdGlvbiBCb29rCgogMjEuIEJlZ2lubmUgRGVpbmVuIFRhZyBtaXQgZWluZW0gTGNoZWxuIQogICAgIERlaW5lIE1pdG1lbnNjaGVuIHdlcmRlbiBlcyBEaXIgZGFua2VuIQoKIDIyLiBcYmVycmFzY2hlIERlaW5lIG5ldWVuIE5hY2hiYXJuIG1pdCBlaW5lciBrbGVpbmVuIEF1Zm1lcmtzYW1rZWl0IQogICAgIEVzIG18c3NlbiBuaWNodCBkaWUgV2VpaG5hY2h0cGx0emNoZW4gdm9tIGxldHp0ZW4gSmFociBzZWluLgoKIDIzLiBBdWNoIGF1cyBTdGVpbmVuLCBkaWUgZWluZW0gaW4gZGVuIFdlZyBnZWxlZ3Qgd2VyZGVuLCBrYW5uIG1hbiBlaW4KICAgICBzY2huZXMgTXVzdGVyIGxlZ2VuIQoKIDI0LiBFcyBnaWJ0IEF1Z2VuYmxpY2tlLCBpbiBkZW5lbiBtYW4gbmljaHQgbnVyIHNlaGVuLCBzb25kZXJuIGVpbiBBdWdlCiAgICAgenVkcnxja2VuIG11c3MuCiAgICAgQmVuamFtaW4gRnJhbmtsaW4KCiAyNS4gSW1tZXIgd2llZGVyIGJlaGF1cHRldGUgVW53YWhyaGVpdGVuIHdlcmRlbiBuaWNodCB6dSBXYWhyaGVpdGVuLAogICAgIHNvbmRlcm4gd2FzIHNjaGxpbW1lciBpc3QsIHp1IEdld29obmhlaXRlbi4KICAgICBPbGl2ZXIgSGFzc2Vua2FtcAoKIDI2LiBJbiBlaW5lciBJcnJzaW5uaWdlbiBXZWx0IHZlcm58bmZ0aWcgc2VpbiB6dSB3b2xsZW4sIGlzdCBzY2hvbiB3aWVkZXIKICAgICBlaW4gSXJyc2lubiBmfHIgc2ljaC4KICAgICBWb2x0YWlyZQoKIDI3LiBEaWUgWmVpdCBoZWlsdCBhbGxlIFd1bmRlbiwgZG9jaCBOYXJiZW4gYmxlaWJlbiBpbW1lciB6dXJ1ZWNrLgogICAgIFBva3kKCiAyOC4gTWVuc2NoZW4gYWVuZGVybiBzaWNoIG5pY2h0IHdpcmtsaWNoLCBzaWUgcGFzc2VuIHNpY2ggZGVyIFNpdHVhdGlvbiBudXIKICAgICBzb2xhbmdlIGFuLCBiaXMgZGVyIEFsbHRhZyB3aWVkZXIgRWluenVnIGhhZWx0LgogICAgIFBva3kKCiAyOS4gQXJyb2dhbnogaXN0IGRpZSBLYXJpa2F0dXIgZGVzIFN0b2x6ZXMuCiAgICAgRXJuc3Qgdm9uIEZldWNodGVyc2xlYmVuCgogMzAuIEZyZWloZWl0IGJlZGV1dGV0IFZlcmFudHdvcnRsaWNoa2VpdC4gRGFzIGlzdCBkZXIgR3J1bmQsIHdlc2hhbGIgZGllCiAgICAgbWVpc3RlbiBNZW5zY2hlbiBzaWNoIHZvciBpaHIgZnVlcmNodGVuLgogICAgIEdlb3JnZSBCZXJuYXJkIFNoYXcKCiAzMS4gRGllIE5hdHVyIHZlcmxlaWh0IGlocmUgR2FiZW4gZ2VyZWNodDogRGllIG1pdCBkZW0gc2Nod2FjaGVuIFZlcnN0YW5kCiAgICAgYmVrb21tZW4gZGllIGxhdXRlc3RlIFN0aW1tZS4KICAgICBBcnQgdmFuIFJoZXluCgogMzIuIFdlciBPcmRudW5nIGhsdCBzcGFydCBQaGFudGFzaWUhCiAgICAgQW5vbnltdXMKCiAzMy4gRGVua2VuIGlzdCBkaWUgQXJiZWl0IGRlcyBJbnRlbGxla3RzLCBUcnVtZW4gc2VpbiBWZXJnbnxnZW4KICAgICBWaWN0b3IgSHVnbwoKIDM0LiBFaW5mYWNoaGVpdCBpc3QgZGFzIFJlc3VsdGF0IGRlciBSZWlmZQogICAgIEZyaWVkcmljaCBTY2hpbGxlcgoKIDM1LiBEZXIgdmVybnxuZnRpZ2UgTWVuc2NoIHBhU2NoaWxsZXJ0IHNpY2ggZGVyIFdlbHQgYW47IGRlciB1bnZlcm58bmZ0aWdlCmJlc3RlaHQKICAgICBhdWYgZGVtIFZlcnN1Y2gsIGRpZSBXZWx0IHNpY2ggYW56dXBhc3Nlbi4gRGVzaGFsYiBobmd0IGFsbGVyCiAgICAgRm9ydHNjaHJpdHQgdm9tIHVudmVybnxuZnRpZ2VuIE1lbnNjaGVuIGFiLgogICAgIEdlb3JnZSBCZXJuaGFyZCBTaGF3CgogMzYuIFVtIGtsYXIgenUgc2VoZW4sIGdlbnxndCBvZnQgZWluIFdlY2hzZWwgZGVyIEJsaWNrcmljaHR1bmcKICAgICBBbnRvaW5lIGRlIFNhaW50LUV4dXBlcnkKCiAzNy4gTGViZW5za3Vuc3QgaXN0IGRpZSBLdW5zdCBkZXMgcmljaHRpZ2VuIFdlZ2xhc3NlbnMKICAgICBDb2NvIENoYW5lbAoKIDM4LiBXZW5uIER1IG1pdCBLaW5kZXJuIHNwaWVsc3QsIGxhc3Mgc2llIGdld2lubmVuIQogICAgIGF1cyBMaWZlJ3MgTGl0dGxlIEluc3RydWN0aW9uIEJvb2sgLSBiZXJlaXRldCBtYW4gc28gS2luZGVyIGF1ZiBkYXMKICAgICB3aXJrbGljaGUgTGViZW4gdm9yPwoKIDM5LiBXZXIgenV2aWVsIGZlcm5zaWVodCwgdmVybGllcnQgZGVuIFdlaXRibGljay4KICAgICB2b24gRS5Ub2Vja2VycyBTcHJ8Y2hlc2FtbWx1bmcKCiA0MC4gRGFzIGJlbGllYnRlc3RlIEhhdXN0aWVyIGRlciBEZXV0c2NoZW4gaXN0IHVuZCBibGVpYnQgZGFzIGhhbGJlCiAgICAgSGhuY2hlbi4KICAgICBWb24gTHV0eiBIYWdlciBBbWhlcnN0CgogNDEuIERvbid0IGRyZWFtIHlvdXIgbGlmZSwgbGl2ZSB5b3VyIGRyZWFtIQogICAgIGF1cyBkZW0gTXVzaWNhbCAiU3BhY2UgRHJlYW0iIC0gU3RlZmFuJ3MgTGllYmxpbmdzc3BydWNoCgogNDIuIERpZSBGbGllZ2UgYW4gZGVyIFdhbmQgemhsdCBuaWNodCBkaWUgU3R1bmRlIGRlcyBUYWdlcwogICAgIGF1cyBkZW0gTUFELU1hZ2F6aW4KCiA0My4gIlNjaG4gaXN0IGVzIGF1ZiBkZXIgV2VsdCB6dSBzZWluIiwgc2FndCBkaWUgQmllbmUgenUgZGVtCiAgICAgU3RhY2hlbHNjaHdlaW4uLi4KICAgICBzYWd0IEtvbmZ1eml1cyBvZGVyIGRvY2ggTWFydGluIEhlcm9sZD8KCiA0NC4gVW50ZXJzY2h0emUgbmllbWFscyBkaWUgS3JhZnQgZGVyIExpZWJlIQogICAgIGF1cyBMaWZlJ3MgTGl0dGxlIEluc3RydWN0aW9uIEJvb2sKCiA0NS4gRGVyIERpZW5zdHdlZyBpc3QgZGllIFZlcmJpbmR1bmcgZGVyIFNhY2tnYXNzZSBtaXQgZGVtIEhvbHp3ZWcuCiAgICAgQW5kcmVhcyBGYXZvcml0IQoKIDQ2LiBMY2hlbG4gaXN0IGRpZSBlbGVnYW50ZXN0ZSBBcnQsIHNlaW5lbSBHZWduZXIgZGllIFpobmUgenUgemVpZ2VuLgoKIDQ3LiBFcyBnaWJ0IGVpbmUgUmVnZWwgb2huZSBBdXNuYWhtZTogZGFzIHNpY2ggamVkZXIgZnxyIGVpbmUgQXVzbmFobWUgdm9uCiAgICAgZGVyIFJlZ2VsIGhsdC4KCiA0OC4gRGVyIEtsfGdlcmUgZ2lidCBuYWNoIC0gRWluZSB0cmF1cmlnZSBXYWhyaGVpdDogc2llIGJlZ3J8bmRldCBkaWUKICAgICBXZWx0aGVycnNjaGFmdCBkZXIgRHVtbWVuLgogICAgIE1hcmllIHZvbiBFYm5lci1Fc2NoZW5iYWNoCgogNDkuIEhvZmZudW5nIGlzdCBlaW4gZ3V0ZXMgRnJ8aHN0fGNrLCBhYmVyIGVpbiBzY2hsZWNodGVzIEFiZW5kYnJvdC4KICAgICBGcmFuY2lzIEJhY29uCgogNTAuIEVyIHN0YW5kIHZvciBtaXIuIEljaCBibGlja3RlIGlobSBpbiBkaWUgQXVnZW4gdW5kIHNhZ3RlOiAnSWNoIGxpZWJlCiAgICAgRGljaCEnIERvY2ggZXIgZHJlaHRlIHNpY2ggdW0sIGdpbmcgd2VnIHVuZCBsaWVzIG1pY2ggaW0gU3RpY2guIERhbm4KICAgICBsaWVmIGljaCBuYWNoIEhhdXMgdW5kIGxvZXNjaHRlIG1laW4gTGViZW4gYXVzLiBTcGFldGVyIHNhaCBpY2ggaWhuCiAgICAgc3RlaGVuLCB2b3IgbWVpbmVtIEdyYWIsIGFscyBlciBzYWd0ZTogJ0ljaCBsaWViZSBEaWNoIScKICAgICB2b24gQmVjY3kKCiA1MS4gQXVmcmljaHRpZ2tlaXQgdW0gamVkZW4gUHJlaXMgaXN0IGRpZSBUdWdlbmQgZGVyamVuaWdlbiwgZGVuZW4gZXMgYW4KICAgICBQaGFudGFzaWUgdW5kIFRha3RnZWZ1ZWhsIG1hbmdlbHQuCgogNTIuIEplZGVyIGhhdCBkYXMgUmVjaHQgYXVmIHNlaW5lIGVpZ2VuZSBNZWludW5nLCBhYmVyIGVyIGhhdCBrZWluZW4KICAgICBBbnNwcnVjaCBkYXJhdWYsIGRhc3MgYW5kZXJlIHNpZSB0ZWlsZW4uCiAgICAgTWFuZnJlZCBSb21tZWwKCiA1My4gRGVyIE1vcmFsaXN0IGJla2xhZ3QsIGRhc3MgZGllIE1lbnNjaGVuIG5pY2h0IHNvIHNpbmQsIHdpZSBzaWUgc2VpbgogICAgIHNvbGx0ZW47IGRlciBIdW1vcmlzdCBmcmV1dCBzaWNoLCBkYXNzIGRpZSBNZW5zY2hlbiBuaWNodCBzbyBzaW5kLCB3aWUKICAgICBzaWUgdm9uIHNpY2ggYmVoYXVwdGVuLgoKIDU0LiBIZmxpY2hrZWl0IGlzdCB3aWUgZWluIEx1ZnRraXNzZW4gLSBlcyBtYWcgendhciBuaWNodHMgZHJpbiBzZWluLCBhYmVyCiAgICAgZXMgdmVybWluZGVydCBkaWUgU3Rzc2UgZGVzIExlYmVucy4KCiA1NS4gSGZsaWNoa2VpdCBpc3QgZWluZSBaaWVyLCB3ZWl0ZXIga29tbXQgbWFuIG9obmUgaWhyIQogICAgIFJlaW0gRGljaCBvZGVyIGljaCBmcmVpaHIhIERpY2ghIEZsbHQgbWlyIGRhcmF1ZiBlaW4uCgogNTYuIE1hbmNoZXMgd2FzIHZvbSBUaXNjaCBnZWZlZ3Qgd2lyZCwgZmluZGV0IHNpY2ggdW50ZXIgZGVtIFRlcHBpY2gKICAgICB3aWVkZXIuSXJnZW5kd28gZ2VrbGF1dAoKIDU3LiBEYXMgR2x8Y2sgd29obnQgbmljaHQgaW0gQmVzaXR6ZSB1bmQgbmljaHQgaW0gR29sZGUsIGRhcyBHbHxja3NnZWZ8aGwKICAgICBpc3QgaW4gZGVyIFNlZWxlIHp1IEhhdXNlLgogICAgIERlbW9rcml0CgogNTguIEVzIGxlYnQgbnVyIGRlciwgZGVyIGxlYmVuZCBzaWNoIGFtIExlYmVuIGZyZXV0LgogICAgIE1lYW5hbmRlcgoKIDU5LiBNYW4gZGFyZiBkYXMgU2NoaWZmIG5pY2h0IGFuIGVpbmVuIGVpbnppZ2VuIEFua2VyIHVuZCBkYXMgTGViZW4gbmljaHQKICAgICBhbiBlaW5lIGVpbnppZ2UgSG9mZm51bmcgYmluZGVuLgogICAgIEVwaWt0ZXQKCiA2MC4gQmVkZW5rZSwgZGFFcGlrdGV0IER1IG51ciBTY2hhdXNwaWVsZXIgYmlzdCBpbiBlaW5lbSBTdHxja2UsIGRhcyBkZXIKICAgICBTcGllbGxlaXRlciBiZXN0aW1tdC4KICAgICBFcGlrdGV0CgogNjEuIEdsfGNrIGlzdCBTZWxic3RnZW58Z3NhbWtlaXQuCiA2MS4gR2x8Y2sgaXN0IFNlbGJzdGdlbnxnc2Fta2VpdC4KCiAgICAgQXJpc3RvdGVsZXMKCiA2Mi4gUmVpY2ggaXN0IG1hbiBuaWNodCBkdXJjaCBkYXMsIHdhcyBtYW4gYmVzaXR6dCwgc29uZGVybiBtZWhyIG5vY2ggZHVyY2gKICAgICBkYXMsIHdhcyBtYW4gbWl0IFd8cmRlIHp1IGVudGJlaHJlbiB3ZWlkdXJjaC4KICAgICBFcGlrdXIKCiA2My4gTGViZSBoZXV0ZSwgdmVyZ2lFcGlrdXIgZGllIFNvcmdlbiBkZXIgVmVyZ2FuZ2VuaGVpdC4KICAgICBFcGlrdXIgLSBlaW4gZ3JpZWNoaXNjaGVzIENhcnBlIERpZW0KCiA2NC4gQmVkZW5rZSwgZGFEaWVtIGRpZSBtZW5zY2hsaWNoZW4gVmVyaGx0bmlzc2UgaW5zZ2VzYW10IHVuYmVzdG5kaWcgc2luZCwKICAgICBkYW5uIHdpcnN0IER1IGltIEdsfGNrIG5pY2h0IHp1IGZyaGxpY2ggdW5kIGltIFVuZ2x8Y2sgbmljaHQgenUKICAgICB0cmF1cmlnIHNlaW4uCiAgICAgU29rcmF0ZXMKCiA2NS4gSXN0IGRlciBNZW5zY2ggbVNva3JhdGVzaWcgdW5kIGdlbnxnc2FtLCBzbyBpc3QgYXVjaCBkYXMgQWx0ZXIga2VpbmUKc2Nod2VyZQogICAgIExhc3QsIGlzdCBlciBlcyBuaWNodCwgc28gaXN0IGF1Y2ggZGllIEp1Z2VuZCB2b2xsZXIgQmVzY2h3ZXJkZW4uCiAgICAgUGxhdG9uCgogNjYuIEdlZmFocmxvcyBsUGxhdG9udCBzaWNoIEdlZmFociBuaWVtYWxzIHxiZXJ3aW5kZW4uCiAgICAgR3JpZWNoaXNjaGUgV2Vpc2hlaXQKCiA2Ny4gRGFzIEVzc2VudGllbGxlIHNpZWh0IG1hbiBuaWNodCBtaXQgZGVuIEF1Z2VuIHNvbmRlcm4gbWl0IGRlbSBIZXJ6ZW4uCiAgICAgb2RlciBNYW4gc2llaHQgbnVyIG1pdCBkZW0gSGVyemVuIGd1dCwgZGFzIFdlc2VudGxpY2hlIGlzdCBmfHIgZGllCiAgICAgQXVnZW4gdW5zaWNodGJhci4KICAgICBBbnRvaW5lIGRlIFNhaW50LUV4dXBlcnkgLSBsZSBwZXRpdCBwcmluY2UgLSBmcmVpIHxiZXJzZXR6dCB2b24gT3Jpb24KICAgICB1bmQgWAoKIDY4LiBXYXMgbWFuIGxpZWJ0LCBtdXNzIG1hbiBmcmVpbGFzc2VuLiBLZWhydCBlcyB6dSBEaXIgenVyfGNrLCBnZWhvZXJ0IGVzCiAgICAgRGlyLiBXZW5uIG5pY2h0LCBoYXQgZXMgRGlyIG5pZSBnZWhydC4KCiA2OS4gRXMgZ2lidCB6d2VpIEFydGVuIHZvbiBGcmV1bmRlbjogRGllIGVpbmVuIHNpbmQga3VmbGljaCwgZGllIGFuZGVyZW4KICAgICBzaW5kIHVuYmV6YWhsYmFyLgoKIDcwLiBWaWVsbGVpY2h0IHNvbGx0ZW4gd2lyIHVucyB2b24gZGVtIEFiZXJnbGF1YmVuIGxvc3NhZ2VuLCBhbGxlcwogICAgIHZlcnN0ZWhlbiB6dSBtfHNzZW4sIHVuZCB1bnMgenUgZGVyIEVpbnNpY2h0IGJla2VocmVuLCBpbSBIY2hzdGZhbGwKICAgICBpbXN0YW5kZSB6dSBzZWluLCBtaXQgdW5zZXJlbSBVbnZlcnN0bmRuaXMgdmVyc3RuZG5pc3ZvbGwgdW1nZWhlbiB6dQogICAgIGtubmVuLgoKIDcxLiBNYW4gYmV6ZWljaG5ldCBlaW5lIHNjaGxpbW1lIFRhdCBhbHMgZWluZSBVbnRhdC0gZ2VyYWRlIHNvLCBhbHMgb2IKICAgICB8YmVyaGF1cHQgbmljaHRzIGdlc2NoZWhlbiB3cmUuCiAgICAgV2VybmVyIE1pdHNjaAoKIDcyLiBFaW4gZ3V0ZXIgU3BydWNoIGlzdCBkaWUgV2FocmhlaXQgZWluZXMgZ2FuemVuIEJ1Y2hlcyBpbiBlaW5lbSBlaW56aWdlbgogICAgIFNhdHouCiAgICAgVGhlb2RvciBGb250YW5lCgogNzMuIEVzIGlzdCBtZWhyIHdlcnQsIGplZGVyemVpdCBkaWUgQWNodHVuZyBkZXIgTWVuc2NoZW4genUgaGFiZW4sIGFscwogICAgIGdlbGVnZW50bGljaCBpaHJlIEJld3VuZGVydW5nLgogICAgIEplYW4tSmFxdWVzIFJvc3NlYXUKCiA3NC4gTWl0IGFtIGJlc3RlbiBsZXJudCBtYW4gZGllIE1lbnNjaGVuIGtlbm5lbiwgd2VubiBlcyBpcmdlbmR3byBldHdhcwogICAgIGdyYXRpcyBnaWJ0LgoKIDc1LiBXZXIgZWlubWFsIGx8Z3QgZGVtIGdsYXVidCBtYW4gbmljaHQsIGF1Y2ggd2VubiBlciBuaWNodCBpbSBXYWhsa2FtcGYKICAgICBzcHJpY2h0LgogICAgIHZvbiBKdWFuIFJhbXJuIEppbW5leidzIFNwcnxjaGVzYW1tbHVuZwoKIDc2LiBNYXJpb25ldHRlbnRhbno6CiAgICAgV2VubiBpY2ggZXVjaCBzbyBiZXRyYWNodGUgLSB3aWUgaWhyIGhpbnRlciBCZXNpdHogdW5kIFJ1aG0gaGVycmVubnQsCiAgICAgbmFjaCBBbnNlaGVuIHVuZCBBdXNzZWhlbiBzdHJlYnQgLSB3aWUgaWhyIGV1Y2ggdmVyc3RlY2t0LCBldXJlCiAgICAgR2VkYW5rZW4gdW5kIFd8bnNjaGUgdGFybnQgaW4gZmFyYmxvc2VtIEdlcmVkZSB1ZWJlciBkaWVzIHVuZCBkYXMgLSB3aWUKICAgICBpaHIgZXVyZSBlaHJsaWNoZSBNZWludW5nIHVuZCBldXJlIEZlaGxlciBpbiBnbG56ZW5kZXMgR2VzY2hlbmtwYXBpZXIKICAgICB2ZXJwYWNrdCAod2VoZSwgZWluZXIgcmVpR2VzY2hlbmtwYXBpZXJ0IGRpZSBWZXJwYWNrdW5nIGF1ZiEpIC0gd2llIGlocgpuaWNodAogICAgIGF1c3NwcmVjaGVuIGtvZW5udCB1bmQgbmljaHQgd2lzc2VuIHdvbGx0LCB3YXMgaW4gZXVjaCBpc3QsIGRhbm4gbWVpbmUKICAgICBpY2ggbWFuY2htYWwsIGljaCBzZWhlIGVpbmVtIE1hcmlvbmV0dGVudGFueiB6dSwgYmluIGdsfGNrbGljaCwKICAgICBadXNjaGF1ZXIgenUgc2VpbiB1bmQgZnJhZ2UgbWljaDogd2VyIGxnbHxja2xpY2gsdCBkaWUgTWFyaW9uZXR0ZW4KdGFuemVuPwoKIDc3LiBHZWZ1ZWhsZToKICAgICBNYW4gc2FndGUgbWlyLCBhbGxlIEdlZnxobGUgc2VpZW4gd2VpR2VmdWVobGU6IG9kZXIgc2Nod2FyeiBvZGVyCmRhendpc2NoZW4KICAgICBhbHNvIGdyYXUuIEFiZXIgZXMga2FtZW4gZ2VsYmUgZGF6dSwgcm90ZSwgdmlvbGV0dGUsIGJyYXVuZSB1bmQgc29nYXIKICAgICB6d2VpZmFyYmlnZS4gSWNoIHdhciByYXRsb3MsIGJpcyBpY2ggZXJmdWhyLCBkYXNvZ2FyIGRpZSBtZWlzdGVuCk1lbnNjaGVuCiAgICAgaWhyZSBmYXJiaWdlbiBHZWZ8aGxlIHZlcmRybmdlbiwgc28gZGFzcyBudXIgc2Nod2Fyeiwgd2Vpc3MgdW5kIGdyYXUKICAgICB2ZXJibGVpYmVuIGthbm4uIEljaCBzcHxyZSBhYmVyLCBkYWdyYXUgbWFuIG1pdCBlaW5lciBnYW56ZW4gRmFyYnBhbGV0dGUKICAgICBidW50ZXIgbWFsZW4ga2FubiBhbHMgbnVyIG1pdCBlaW5lbSBCbGVpc3RpZnQuCgogNzguIFdlciBzaWNoIGluIGRpZSBCYXIgYmVnaWJ0LCBmbGx0IGRhcmluIHVtIQogICAgIEkuUy4gKyBLbGltYmltOiBFaW5lIFRoZW9yaWUsIGRpZSBzaWNoIGVtcGlyaXNjaCB6dSBiZXdhaHJoZWl0ZW4KICAgICBzY2hlaW50LiBIYXN0IER1IGRhIGVpbnNjaGxnaWdlIEVyZmFocnVuZ2VuIGdlbWFjaHQsIEZlcmRpPwoKIDc5LiBXZW5uIER1IERpY2ggaW4gendlaSBzdHJhaGxlbmRlIEF1Z2VuIHZlcmxpZWJzdCwgZGFubiBnaWIgYWNodCwgZGFzcyBlcwogICAgIG5pY2h0IGRpZSBTb25uZSBpc3QsIGRpZSBkdXJjaCBkZW4gaG9obGVuIFNjaGFlZGVsIHNjaGVpbnQuCiAgICAgTmFqYSwgc28gdG9sbCBpc3QgZGVyIGphIG5pY2h0LiBIYXN0IER1IG5pY2h0IGVpbmVuIGJlc3Nlcm4sIENocmlzdGlhbj8KCiA4MC4gU1RJUkJUIERFUiBCQVVFUiBJTSBPS1RPQkVSIEJSQVVDSFQgRVIgSU0gV0lOVEVSIEtFSU5gTiBQVUxMT1ZFUgogICAgIEVpbiBnYW56IGthbHRlciB2b24gQW5kcmVhcyBTdGVpbmRsIC0gYXVjaCBhbiBEaWNoIGRpZSBGcmFnZSBuYWNoIGVpbmVtCiAgICAgYmVzc2VyZW4hCgogODEuIFdlaW4gZG9jaCBuaWNodCEKICAgICBUcm5lbiBmbGllc3NlbiBkZXMgTmFjaHRzIGF1ZiBkYXMgS2lzc2VuLCBsZWlzZSBzY2hsdWNoemVuZCwga2VpbmVyCiAgICAgc29sbCdzIHdpc3Nlbi4gVHJuZW4gZ3Jvc3MgdW5kIHZvbGxlciBMZWlkLiBUcm5lbiB2b24gdW5lbmRsaWNoZXIKICAgICBUcmF1cmlna2VpdC4gRGVyIEtvcGYgc28gbGVlciwgZGFzIEhlcnogc28gc2Nod2VyLiBVbmQga2VpbmVyIGRhLAogICAgIGtlaW5lciBkYSwgZGVyIERpciBuYWggdW5kIERpY2ggdHJzdGV0LiBNYWNoIGRpZSBBdWdlbiBhdWYhIEljaCBiaW4KICAgICBkb2NoIGRhIHVuZCBEaXIgbmFoLiBVbmQtIGljaCB0cnN0ZSBEaWNoLiBXZWluIGRvY2ggbmljaHQhCiAgICAgTmFqYSwga2VpbiBTcHJ1Y2gsIGFiZXIgdHJvdHpkZW0gc2NobiEKCiA4Mi4gRmxsdCBEaXIgZGFzIExhY2hlbiBlaW5tYWwgc2Nod2VyLCBwcm9iaWVyZSBlaW4gYmlzY2huIWNoZW4sIGVpbmVuIENsb3duCiAgICAgbmFjaHp1bWFjaGVuLCBkZXIgaW4gc2VpbmVtIEhlcnplbiB3ZWludCB1bmQgZGVubm9jaCBsYWNoZW5kIGZ8ciBlaW4KICAgICBLaW5kIGF1ZiBkZXIgR2VpZ2Ugc3BpZWx0IHVtIHNvIHZvbiBkZW4gVHJuZW4gc2VpbmVzIEhlcnplbnMgZ2VoZWlsdAogICAgIHp1IHdlcmRlbi4KCiA4My4gRGFzIEhlcnogaGF0IHNlaW5lIEdyfG5kZSwgZGllIGRlciBWZXJzdGFuZCBuaWNodCBrZW5udC4KCiA4NC4gTmVubmUgRGljaCBuaWNodCBhcm0sIHdlaWwgRGVpbmUgVHJ1bWUgbmljaHQgaW4gRXJmfGxsdW5nIGdlZ2FuZ2VuCiAgICAgc2luZDsgd2lya2xpY2ggYXJtIGlzdCBudXIsIHdlciBuaWUgZ2V0cnVtdCBoYXQuCgogODUuIE1hbiBzb2xsdGUgZGVtIEFuZGVyZW4gZGllIFdhaHJoZWl0IGhpbmhhbHRlbiwgZGFoYXQuIGVyIHdpZSBpbiBlaW5lbgogICAgIG9mZmVuZW4gTWFudGVsIGhpbmVpbnNjaGx8cGZlbiBrYW5uLCB1bmQgc2llIGlobSBuaWNodCB3aWUgZWluZW4gbmFzc2VuCiAgICAgTGFwcGVuIHVtIGRpZSBPaHJlbiBoYXVlbi4KCiA4Ni4gR2x8Y2sgaXN0IG51ciBzZWx0ZW4gZXR3YXMsIHdhcyBtYW4gZXJsZWJ0OyBtZWlzdCBpc3QgZXMgZXR3YXMsIGFuIGRhcwogICAgIG1hbiBzaWNoIGVyaW5uZXJ0LgoKIDg3LiBMY2hlbG4gaXN0IGVpbmUgc3ltcGF0aGlzY2hlIEZhbHRlLCBkaWUgYW5kZXJlIHdlZ2J8Z2VsdC4KCiA4OC4gLi4uICJ1bmQgaWNoIGhhYmUgbWljaCBzb29vIGdlZnJldXQiLCBzYWdzdCBEdSB2b3J3dXJmc3ZvbGwsIHdlbm4gRGlyCiAgICAgZWluZSBIb2ZmbnVuZyB6ZXJzdG9lcnQgd3VyZGUuIER1IGhhc3QgRGljaCBnZWZyZXV0IC0gaXN0IGRhcyBuaWNodHM/CgogODkuIE1pbmRlc3RlbnMgOTggUHJvemVudCBkZXIgRGluZ2UsIHVtIGRpZSB3aXIgdW5zIFNvcmdlbiBtYWNoZW4sIHRyZWZmZW4KICAgICBuaWVtYWxzIGVpbi4KCiA5MC4gSHVtb3IgaXN0IGRlciBWZXJzdWNoLCBzaWNoIHNlbGJzdCBuaWNodCB1bnVudGVyYnJvY2hlbiB3aWNodGlnIHp1CiAgICAgbmVobWVuLgoKIDkxLiBEZXIgS2x1Z2UgbG5laG1lbi50IHNpY2ggYmVsZWhyZW4sIGRlciBVbmtsdWdlIHdlaW5laG1lbi4gYWxsZXMgYmVzc2VyLgoKIDkyLiBTbyBndXQgd2llIGFsbGVzLCB3YXMgZHUgaGV1dGUgdHVzdCwgd2lyZCB8YmVyIGt1cnogb2RlciBsYW5nCiAgICAgYmVkZXV0dW5nc2xvcyBzZWluLiBUcm90emRlbSBtdWxhbmd0IER1IGVzIHVuYmVkaW5ndCB0dW4uCgogOTMuIEplZGVyIHNhZ3QsIHZlcnplaWhlbiBpc3QgZWluZSB3dW5kZXJiYXJlIElkZWUgLSBiaXMgZXIgc2VsYnN0IGV0d2FzIHp1CiAgICAgdmVyemVpaGVuIGhhdC4KCiA5NC4gVm9sbGVuZGV0c2VpbiBoYXQgbWFuIG5pY2h0IGRhbm4gZXJyZWljaHQsIHdlbm4gZXMgbmljaHRzIG1laHIKICAgICBoaW56dXp1ZnxnZW4sIHNvbmRlcm4gd2VubiBlcyBuaWNodHMgbWVociB3ZWd6dW5laG1lbiBnaWJ0LgoKIDk1LiBEZXIgZ2x8Y2tsaWNoc3RlIE1lbnNjaCBpc3QgZGVyLCBkZXIgc2VpbmUgVHJ1bWUgdmVyd2lya2xpY2hlbiBrYW5uLgoKIDk2LiBEZXIgQnJhbmRoZXJkOiBFcyBnaWJ0IHNvIHZpZWxlIEdyfG5kZSwgYWxsZXMgYmVpbSBBbHRlbiB6dSBsYXNzZW4sIHVuZAogICAgIG51ciBlaW5lbiBlaW56aWdlbiwgZG9jaCBlbmRsaWNoIGV0d2FzIHp1IHZlcmFlbmRlcm46IER1IGhhZWx0c3QgZXMKICAgICBlaW5mYWNoIG5pY2h0IG1laHIgYXVzIQoKIDk3LiBFaW5lIEx8Z2UgaXN0IGJlcmVpdHMgZHJlaW1hbCB1bSBkaWUgRXJkZSBnZWxhdWZlbiwgYmV2b3Igc2ljaCBkaWUKICAgICBXYWhyaGVpdCBkaWUgU2NodWhlIGFuemllaHQuCiAgICAgTWFyayBUd2FpbgoKIDk4LiBXZXIgc2VpbiBMZWJlbiBzbyBlaW5yaWNodGV0LCBkYVR3YWluIGVyIG5pZW1hbHMgYXVmIGRpZSBTY2huYXV6ZQpmbGllZ2VuCiAgICAga2FubiwgZGVyIGthbm4gbnVyIGF1ZiBkZW0gQmF1Y2gga3JpZWNoZW4uCiAgICAgSC4gUmllc2VuaHViZXIKCiA5OS4gRWluIFRyb3BmZW4gTGllYmUgaXN0IG1laHIsIGFscyBlaW4gT3plYW4gYW4gV2lsbGUgdW5kIFZlcnN0YW5kLgoKMTAwLiBXZXIgZGF2b24gfGJlcnpldWd0IGlzdCwgZGFzIEVuZGUgZGVyIERpbmdlIHp1IHdpc3NlbiwgZGllIGVyIGdlcmFkZQogICAgIGVyc3QgYmVnaW5udCwgaXN0IGVudHdlZGVyIGF1Z2VyYWRlZXJvcmRlbnRsaWNoIHdlaXNlIG9kZXIgZ2FuegpiZXNvbmRlcnMKICAgICB0cmljaHQ7IHNvIG9kZXIgc28gaXN0IGVyIGFiZXIgZ2V3aWJlc29uZGVycyBlaW4gdW5nbHxja2xpY2hlciBNZW5zY2gsCmRlbm4gZXIKICAgICBoYXQgZGVtIFd1bmRlciBlaW4gTWVzc2VyIGlucyBIZXJ6IGdlc3RvZXJlbi4KICAgICBEZXIgRHJhY2hlbmJlaW50aHJvbiAtIHZvbiBUYWQgV2lsbGlhbXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTcHJ1ZWNoZSBkZXIgV29jaGVuIChTY2hva28sIDI1LiBKdW4gMTk5NywgMTg6MDI6MzYpOgp+IyEgcm49S3JhbWthIHJ0PTg2NzI1MzY0MSByZz1zY2htYXJybgp+IyEgdGlkPTg2NzI1MzY0MQoKQXJnbGxsIC4uLiB3ZW5uIGljaCBzY2hvbiBlaW5lbiBBcnRpa2VsIHNlaGUgKDM1LzM4MCkKV2VyIGxpZXN0IHNpY2ggc293YXMgZGVubiBkdXJjaCwgYml0dGUgc2Nob2VuPz8gU29sY2hlIEFydGlrZWwgc2luZCBlY2h0CmFic29sdXQgdWViZXJmbHVlc3NpZyEKQXVzc2VyZGVtIHNvbGx0ZSBqZXR6dCBhdWNoIGRlciBsZXR6dCBnZW1lcmt0IGhhYmVuLCBkYXNzIHdpciBoaWVyIGltIG1nCktFSU5FVW1sYXV0ZSBoYWJlbiwgb2Rlcj8KClNjaG9rbyAoaGV1dGUgZXR3YXMgdm9uIEphdmEgZ2VuZXJ2dCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3BydWVjaGUgZGVyIFdvY2hlbiAoQ2FyYWRocmFzLCAyNS4gSnVuIDE5OTcsIDE5OjAyOjExKToKfiMhIHJuPVNjaG9rbyBydD04NjcyNTQ1NTYgcmc9c2NobWFycm4KfiMhIHRpZD04NjcyNTM2NDEKTm9lLCBzaW5kIHNpZSBuaWNodCwgU2Nob2tvLCBlcyBnaWJ0IG5vY2ggZWluICdxJywgbXVzcyBpY2ggRGljaApkYXJhbiBlcmlubmVybj8gQWJlciB3YXIgbmV0dCwgbWFsIGV0d2FzIGdlbGVzZW4genUgaGFiZW4gKG5laW4sIG5pY2h0CkdBTlogOikgKSwgd2FzIGljaCBub2NoIG5pY2h0IHVlYmVyYWxsIDEwMCBtYWwgc29uc3QgbGFzLgoKQWJlciBkYXR0IG1pdCBkZW4gVW1sYXV0ZW4sIGRhIG11c3MgaWNoIERpciByZWNodCBnZWJlbi4uLiAqc2NodWV0dGVsKgpEcnVtIGdhYiBpY2ggYXVjaCB2b3IgMTAwIFByb3plbnQgYXVmLgoKICAgICAgICAgICAgICBCZXJnY2hlbiBDYXJhZGhyYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNwcnVlY2hlIGRlciBXb2NoZW4gKENhdW5vLCAyNi4gSnVuIDE5OTcsIDEwOjU4OjM3KToKfiMhIHJuPUNhcmFkaHJhcyBydD04NjcyNTgxMzEgcmc9c2NobWFycm4KfiMhIHRpZD04NjcyNTM2NDEKU2llaGUgdm9yaGVyaWdlbiBBcnRpa2VsLgoKQy4gTm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmphdSAoSmFzcGVyLCAyNi4gSnVuIDE5OTcsIDE2OjAxOjMxKToKV2hhdCBhcmUgdGhlIDMgdGhpbmdzIHRoYXQgbWFrZSB3b21lbiBvbmUgb2YgdGhlIG1vcmUgc3VwZXJpb3IgY3JlYXR1cmVzIG9uCnRoZSBwbGFuZXQ/CgoxLiBUaGV5IGNhbiBibGVlZCBmb3IgYSB3ZWVrIGFuZCBub3QgZGllLgoyLiBUaGV5IGNhbiBnaXZlIG1pbGsgd2l0aG91dCBncmF6aW5nLi4uCjMuIFRoZXkgY2FuIGNhbiBidXJ5IGFuIDggaW5jaCBib25lIHdpdGhvdXQgZ2V0dGluZyB0aGVyZSBub3NlcyBkaXJ0eS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGFuZ2V3ZWlsZSAoQW5ndXMsIDI2LiBKdW4gMTk5NywgMTg6NDI6NDYpOgoKRXMgaXN0IDE4OjQyOjEwIFVociB1bmQgaW4gSGFtYnVyZyByZWduZXQncy4KCkJvYWFhaGggaXMgZGFzIExhYWFhYW5nd2VpbGlnLi4uLiA6KQoKSW5uZXIgWmVpdHVuZyBnaXBzIGF1Y2ggbml4IE5ldWVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBiZWltIEVpbmxvZ2dlbiEgKEFjZWcsIDI3LiBKdW4gMTk5NywgMTY6MTc6MzYpOgoxODYgZmVobGdlc2NobGFnZW5lIExvZ2luLVZlcnN1Y2hlIHNlaXQgZGVtIGxldHp0ZW4gZXJmb2xncmVpY2hlbiBMb2dpbi4KCgpBY2VnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCZXNpdHpzdG9seiAoUmFmZmksIDI3LiBKdW4gMTk5NywgMTg6NDc6MzMpOgogICAgVG9wbGlzdGUgZGVyIEJhcmVpbnphaGxlcgogICAgPT09PT09PT09PT09PT09PT09PT09PT09PQoKKy0tLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rCnwgICB8IE5hbWUgICAgICAgICB8ICAgTXVlbnplbiAgfAorLS0tKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSsKfCAxLnwgUmFmZmkgICAgICAgIHwgICAxMDAwMDAwMCB8CnwgMi58IE5pY2h0cyAgICAgICB8ICAgIDU1MjA2MzggfAp8IDMufCBNb3JnYXIgICAgICAgfCAgICAgMzIwMDAwIHwKfCA0LnwgVmFuaXIgICAgICAgIHwgICAgIDE3MTg2MCB8CnwgNS58IEFuZHJlcyAgICAgICB8ICAgICAxNjgwOTkgfAp8IDYufCBHcnVtYmxlbWFuICAgfCAgICAgMTQ4NzUzIHwKfCA3LnwgTWluZGJsYXN0ICAgIHwgICAgIDE0NDE0MCB8CnwgOC58IEZyb2dodW50ZXIgICB8ICAgICAxMzA1NjkgfAp8IDkufCBCZXJuaGFyZCAgICAgfCAgICAgMTAwMDAwIHwKfDEwLnwgS2Fyb2x1cyAgICAgIHwgICAgICA5OTAwMCB8CnwxMS58IFR3ZWVnICAgICAgICB8ICAgICAgOTU4MTYgfAp8MTIufCBMaXF1aSAgICAgICAgfCAgICAgIDk1MDMwIHwKfDEzLnwgVGVsa2EgICAgICAgIHwgICAgICA3MDAwMCB8CnwxNC58IENodXJraWUgICAgICB8ICAgICAgNjg0NDIgfAp8MTUufCBUenVpb3AgICAgICAgfCAgICAgIDU2OTgyIHwKKy0tLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rCgpHcmlucwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWlyIGlzdCBsYW5nd2VpbGlnIChBc21vZGlzLCAyOC4gSnVuIDE5OTcsIDAwOjQ5OjUzKToKQWxhbm9uIHJ1ZnQ6IGhpIEdhd2VuCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2FlcnRuZXJpbm5lbiA/IChBbm5paGlsYXRvciwgMjguIEp1biAxOTk3LCAxNjozNToyMyk6CkRpZSBHYWVydG5lcmluIGthdWZ0IHNpY2ggZWluZW4gSGFlcnRlci4KRGllIEdhZXJ0bmVyaW4ga2F1ZnQgc2ljaCBlaW5lbiBIYWVydGVyLgpFaW5lIEdhZXJ0bmVyaW4ga29tbXQgYW4uCgptbWggLi4uIGlzICduIGJpc3NsIG1lcmt3dWVyZGlnLCB3aWVzbyBrb21tdCBzaWUgZXJzdCBhbiwgbmFjaGRlbSBzaWUgZGFzClpldWcgZ2VrYXVmdCBoYXQgPwoKQW5uaSAuLi4gc3R1dHppZy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXNhamE/IChNdXBmZWwsIDI5LiBKdW4gMTk5NywgMDE6MDQ6MTIpOgokIE5lc2FqYSB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4KRGllIHdhcm1lbiBEYWVtcGZlIHR1biBEaXIgZ3V0LgoKLW11cGZlbC0KamFqYSBpaHIgd2lzc3Qgc2Nob24gd28gZGFzIGlzdCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXNhamE/IChDYXJhZGhyYXMsIDI5LiBKdW4gMTk5NywgMTg6MDQ6MzYpOgp+IyEgcm49TXVwZmVsIHJ0PTg2NzUzOTA1MiByZz1zY2htYXJybgp+IyEgdGlkPTg2NzUzOTA1MgpJbiBOZXNhamFzIFN1cHBlbnNjaHVlc3NlbD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmVzYWphPyAoTmFpcm9sZiwgMjkuIEp1biAxOTk3LCAyMjo1MjowMyk6Cn4jISBybj1DYXJhZGhyYXMgcnQ9ODY3NjAwMjc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY3NTM5MDUyCk5JWCBEQSBNdXBmZWwgISEhCgoqTmFpcm9sZiBncnVtbWVsdCB3YXMgdm9uIFdoaXJscG9vbCA6LSkpKSorCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXNhamE/IChLZXksIDMwLiBKdW4gMTk5NywgMDg6MTE6MTApOgp+IyEgcm49TmFpcm9sZiBydD04Njc2MTc1MjMgcmc9c2NobWFycm4KfiMhIHRpZD04Njc1MzkwNTIKSGV5IE5haXJvbGYgLi4uIGF1Y2ggbmUgZ3V0ZSBJZGVlIC4uLiA6KQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmVzaXR6c3RvbHogKEJvaW5nLCAzMC4gSnVuIDE5OTcsIDA5OjI2OjA1KToKfiMhIHJuPVJhZmZpIHJ0PTg2NzQzMDA1MyByZz1zY2htYXJybgp+IyEgdGlkPTg2NzQzMDA1MwpXaWV2aWVsZSBOdWxsZW4gd2FyZW4gZGFzIGJlaSBSYWZmaT8gCiAgQm9pbmcgZmFlbGx0IHRvdCB1bS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQmVzaXR6c3RvbHogKEZ5dCwgMzAuIEp1biAxOTk3LCAwOToyODo0MSk6Cn4jISBybj1Cb2luZyBydD04Njc2NTU1NjUgcmc9c2NobWFycm4KfiMhIHRpZD04Njc0MzAwNTMKCmVpbnMtZHJlaS1kcmVpLgoKRnl0LgoKUFM6IE9kZXIgJ3ZpZWxlLWRyZWknPyBEaWUgWndlcmdlbmFyaXRobWV0aWsgd2FyIG5vY2ggbmllIG1laW5lIFN0YWVya2UuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJlc2l0enN0b2x6IChSYWZmaSwgMzAuIEp1biAxOTk3LCAxMjoyNzoxMSk6Cn4jISBybj1GeXQgcnQ9ODY3NjU1NzIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY3NDMwMDUzClVuZCBpY2ggYXJiZWl0ZSBzY2hvbiBhbiBkZXIgWldFSSBwbHVzIGRyZWkgcGx1cyBkcml0dGVuIE51bGwgLi4uLiBTY2hhZXR6ZQpkYXMgZGF1ZXJ0IGFiZXIgbm9jaCBlaW4gcHNhYXIgdGFnZS4KCkdyaW5zIApILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQmVzaXR6c3RvbHogKEZ5dCwgMzAuIEp1biAxOTk3LCAxMjoyODo1Myk6Cn4jISBybj1SYWZmaSBydD04Njc2NjY0MzEgcmc9c2NobWFycm4KfiMhIHRpZD04Njc0MzAwNTMKCkR1IG1laW5zdCwgRHUgc2NoYWZmc3QgZXMgbm9jaCBhdWYgIHZpZWxlLXZpZWxlID8KCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJlc2l0enN0b2x6IChXYXJnb24sIDMwLiBKdW4gMTk5NywgMTI6MzA6MTMpOgp+IyEgcm49UmFmZmkgcnQ9ODY3NjY2NDMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY3NDMwMDUzCkhtLi4uIHZpZWxsZWljaHQgc29sbHRlIGljaCBkaWUgQmV0cmFnc2FuemVpZ2UgdW0gZWluIHBhYXIgU3RlbGxlbiBlcndlaXRlcm4uCk9kZXIgYXVmIEV4cG9uZW50aWFsZGFyc3RlbGx1bmcgdW1zdGVsbGVuIDopCiAgV2FyZ29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBCZXNpdHpzdG9seiAoUmFmZmksIDMwLiBKdW4gMTk5NywgMTI6NDU6NDcpOgp+IyEgcm49Rnl0IHJ0PTg2NzY2NjUzMyByZz1zY2htYXJybgp+IyEgdGlkPTg2NzQzMDA1MwpOYSBqYSwgbWVpbiBUcmF1bSBpc3QgZ2Fuel92aWVsZS12aWVsZSwgYWJlciBpY2ggc2NoYWV0emUgZGEgc3BpZWx0IGRlciBEcml2ZXIKbmljaHQgbWl0IChEaWUgaGFiZW4gaGllciBqYSBudXIga3VyeiBnYW56KS4KCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCZXNpdHpzdG9seiAoSGlnaGxhbmRlciwgMzAuIEp1biAxOTk3LCAxMzoxMTowOCk6Cn4jISBybj1GeXQgcnQ9ODY3NjU1NzIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY3NDMwMDUzCkR1IG1laW5zdCBUcm9sbC1Bcml0aG1ldGlrIDo+ClVuZCBFaW5zLXZpZWxlLXZpZWxlLU51bGxlbiBpc3Qgd2lya2xpY2ggemllbWxpY2ggaGVmdGlnIQogIEhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOy0pKSAoTW9yZ290aCwgMzAuIEp1biAxOTk3LCAxOTozNTo0OSk6Ckphc3BlciAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpCbHVlbWVsIGFuIGFsbGUgTWFnaWVyOiBJY2ggYnJhZXVjaHQgbWFsIGJpdHRlIEhpbGZlCj5KYXNwZXIgYW4gYWxsZSBNYWdpZXI6IGljaCBicmFldWNodGUgbWFsIGJpdHRlIG5lIGZyYXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMzAuIEp1biAxOTk3LCAxOTozODoxNyk6CiJaYWVydGxpY2hrZWl0IGlzdCBMZWlkZW5zY2hhZnQgaW4gUnVoZS4iIChKLiBKb3ViZXJ0KQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCcm9ja2hhdXMgMjctMSAoR3JpbW1ib3JuLCAgMS4gSnVsIDE5OTcsIDA4OjQxOjA1KToKfiMhIG9uPUdyaW1tYm9ybiBvdD04Njc3MzkwNTQgb2c9cHVpegp+IyEgcm49RmxhdmlhIHJ0PTg2NzY5NDgwNSByZz1wdWl6Cn4jISB0aWQ9ODY3NjcwMjM4CkFsc28sIGljaCBoYWJlIGltIHdlc2VudGxpY2hlbiBlcnN0IGluIGRlciBTY2h1bGUgbGVzZW4gZ2VsZXJudCAob3V0ZXQgbWljaApkYXMgYWxzIG9lcnRsaWNoZXIgRG9yZnRyb3R0ZWw/IE5hamEsIGthbm4gamEgbmljaHQgamVkZXIgZWluZW4gSVEgdm9uIHVlYmVyCjE1NSBoYWJlbiB3aWUgZGllc2VyIEtvZXRlci4gVmVybXV0bGljaCBtZWludCBlciBhdWNoIGRlbiBJUS1UZXN0IGZ1ZXIKSHVuZGUuLi4pLgpIYXR0ZSBoYWx0IG5pY2h0IGplZGVyIEdlbGVnZW5oZWl0LCBkYXMgTGVzZW4gYmVpIGRlbiBKdW5nZW4gUGlvbmllcmVuIHp1Cmxlcm5lbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdC4gS2FwaXRhbGlzdGlzY2hlciBLbGFzc2VuZmVpbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCcm9ja2hhdXMgMjctMSAoR3JpbW1ib3JuLCAgMS4gSnVsIDE5OTcsIDA4OjQxOjA3KToKfiMhIG9uPUdyaW1tYm9ybiBvdD04Njc3MzkyNTcgb2c9cHVpegp+IyEgcm49UmFudGFucGxhbiBydD04Njc3MDA0NjEgcmc9cHVpegp+IyEgdGlkPTg2NzY3MDIzOApKYSwgZGEgaXN0IERpciBlaW4gRGVwcCwgZGVyIGRlbiBBcnNjaCBvZmZlbiBoYXQsIHVuZCBtb2VnbGljaGVyd2Vpc2Ugbm9jaApzdXBlcmFycm9nYW50IGlzdCBzaWNoZXIgbGVpYmVyLCBqYT8KSWNoIHd1c3N0ZSBkb2NoLCBkZXIgS29ldGVyIG1hZyBtaWNoLiA6LSkKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQnJvY2toYXVzIDI3LTEgKFJhbnRhbnBsYW4sICAxLiBKdWwgMTk5NywgMTE6MjI6MzYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2NzczOTI2NyByZz1zY2htYXJybgp+IyEgdGlkPTg2NzY3MDIzOApTdGltbXQgR3JpbW1ib3JuIDstKSkpCgoqd3VmZioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEJyb2NraGF1cyAyNy0xIChDYXJhZGhyYXMsICAxLiBKdWwgMTk5NywgMTE6MzQ6NDEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2NzczOTI2NSByZz1zY2htYXJybgp+IyEgdGlkPTg2NzY3MDIzOApXZW5uIGRhcyBoaWVyIG5pY2h0IHNjaG1hcnJuIHdhZXJlLCB3dWVyZGUgaWNoIGphIG5vY2ggd2FzIGhpbnNjaHJlaWJlbiwKZGFzcyBEaWNoLCBtZWluIGxpZWJlciBUZWVmcm9zY2gsIHNpY2hlcmxpY2ggYmVydWhpZ2VuIHd1ZXJkZS4KTmFlbWxpY2ggZGllIGVtcGZvaGxlbmVuIEVudHdpY2tsdW5nc3N0YWRpZW4gZWluZXMgTWVuc2NoZW4gdmVyb2VmZmVudGxpY2gKdm9uIGVpbmVtIGhvbGxhZW5kaXNjaGVuIEFyenQsIGRlciBtaXQgSGVpbG1ldGhvZGVuIGJhc2llcmVuZCBhdWYgZGllc2VyClRoZW9yaWUgc2VociBndXRlIEVyZm9sZ2UgZXJ6aWVsdCBoYWJlbiBzb2xsLgoKICAgICAgICAgQmVyZ2NoZW4gQ2FyYWRocmFzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmdzdCAoQXNtb2RpcywgIDEuIEp1bCAxOTk3LCAyMTo1OToyNCk6CltBYmVudGV1ZXI6THljYXJdIFpULUxpc3RlbiBzaW5kIGRvY2ggdmVyYm90ZW4gOikKW0FiZW50ZXVlcjpUQVJBR09OXSB6dC1saXN0ZSA/IHdhcyBpc3QgZGFzID8KW0FiZW50ZXVlcjpBU01PRElTXSBzYWcgZGFzIHNjYWxhcmUgOikKW0FiZW50ZXVlcjpIZWx2YV0gc2VpIGRvY2ggbmljaHQgc28gc3RyZW5nIQpbQWJlbnRldWVyOlNjYWxhcmVdIHdpc28gdmVyYm90ZW4gZGllIGhhYiBpY2ggZ2VrcmllZ3QgOy0pCltBYmVudGV1ZXI6U2NhbGFyZV0gaWNoIGtvbW0gYWJlciBpbW1lciBub2NoIG5pY2ggYXVmIGRpZSBpbnNlbApbQWJlbnRldWVyOkx5Y2FyXSBBdWYgZGVtIFNjaHdhcnptYXJrdCwgd2llID8gV2VyIHdhciBkZW5uIGRlciBIZWhsZXIgPyBTb2ZvcnQKW0FiZW50ZXVlcjpMeWNhcl0gZGVudW56aWVyZW4gISA6KQpbQWJlbnRldWVyOkhlbHZhXSB1bmQgaWNnIGRhY2h0ZSwgZGllIHNjaHJlaWJ0IG1hbiBzaWNoIHNlbGJlciA7KQpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKCi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQnJvY2toYXVzIDI3LTEgKEZsYXZpYSwgIDIuIEp1bCAxOTk3LCAxMjo0ODo0MSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODY3NzM5MjY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY3NjcwMjM4CkFsc28uIERhcyBMZXNlbiBoYXQgbWFuIGhhbHQgYXVjaCBpbSBPc3RlbiBpbSBOb3JtYWxmYWxsIGluIGRlciBTY2h1bGUgZ2VsZXJudAp1bmQgbmljaHQgYmVpIGRlbiBQaW9uaWVyZW4uLi4gQWJlciB6dW0gVGVpbCBoYXRzIEVsdGVybiBnZWdlYmVuLCBkaWUgZWluZW0KZXJrbGFlcnQgaGFiZW4sIHdhcyBkaWUga29taXNjaGVuIFplaWNoZW4gZGEgYXVmIGRlbSBQYXBpZXIgYmVkZXV0ZW4sIHdlbm4gbWFuCmVzIGRlbm4gdW5iZWRpbmd0IHdpc3NlbiB3b2xsdGUuIChGbGF2aWEgZXJyaW5uZXJ0IHNpY2ggbWl0IEdyYXVzZW4gYW4KbWluZGVzdGVucyAyIHZlcnNjaGllZGVuZSBrbGVpbmUgYSdzKSBVbmQgZGFubiBrYW5uIG1hbiBkdXJjaGF1cyBzY2hvbiB2b3JoZXIKbGVzZW4ga29lbm5lbi4KQWJlciBpY2ggZGVua2UsIGRhcyB3YXIgYXVjaCBpbSBXZXN0ZW4gbW9lZ2xpY2g/CgpmbGF2CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUU1NTU3Nzc3MgKEphc3BlciwgIDQuIEp1bCAxOTk3LCAxNzo0MzowMSk6CgpZYW50cm8gc2FndDogc2F1Z2VuIGdlaHQgaW4gMiBtaW51dGVuIGltIHNjaG5pdHQuLi4uIGhhYiBrbmFwcCAyMDAgbWFsCllhbnRybyBzYWd0OiB0cmFpbmllcnQKCgpobW1tIHdhcyB3aWxsIGVyIHVucyBkYW1pdCBzYWdlbj8gO1AKCgpKYXNwZXIgZ3JlaWZ0IGhldXRlIGF1cyBkZW0gWnVzYW1tZW5oYW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVlciBYZXJhIDopIChab3JybywgIDcuIEp1bCAxOTk3LCAxNTozNjoxMSk6CltBbGxnZW1laW46RGFuY2VyXSBnZW5hdSwgZ2VidHMgaWhtLCBlciB3aWxsIG1laW5lbiBnZXJhZGUgZmVydGlnZ2VzdGVsbHRlbgpbQWxsZ2VtZWluOkRhbmNlcl0gdHJvbGwgZnVlciBkYXMgbmV1ZSB3ZWJkZXNpZ24gZHVyY2ggc28gbmUgc2Nod3VjaHRlbC1lbGZlCltBbGxnZW1laW46RGFuY2VyXSBlcnNldHplbiEgOikgPDE1OjMxOjQwPgoKTnUgd2Vpc3N0IGR1IHdvIGR1IHN0ZWhzdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVmVyZXJidW5nIChNdXBmZWwsICA4LiBKdWwgMTk5NywgMDE6MTU6MTIpOgpNb3JnZW5HcmF1ZW46CiQgYWxpIGJsYQpEdSBoYXN0IGtlaW4gQWxpYXMgImJsYSIgZGVmaW5pbmllcnQuCkFuZGVyTGFuZAphbGkgYmxhCkR1IGhhc3Qga2VpbiBBbGlhcyAiYmxhIiBkZWZpbmluaWVydC4KU2lsYmVyTGFuZDoKYWxpIGJsYQpEdSBoYXN0IGtlaW4gQWxpYXMgImJsYSIgZGVmaW5pbmllcnQuCgoqZ3JpbnMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sICA4LiBKdWwgMTk5NywgMTk6NTQ6MDMpOgoiRXMgaXN0IGVpbmUgc2Nod2VyZSBLdW5zdCwgc2ljaCBldHdhcyB6dSBuZWhtZW4sIG9obmUgc2ljaCBkaWUgSGFlbmRlCnNjaG11dHppZyB6dSBtYWNoZW4uIiAoSmFwYW5pc2NoKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BydWNoIGRlciBXb2NoZSAoSmFzcGVyLCAgOC4gSnVsIDE5OTcsIDIwOjE0OjIzKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NjgzODQ0NDMgcmc9c2NobWFycm4KfiMhIHRpZD04NjgzODQ0NDMKaHJuemxncm1wZj8/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uIChDZXJlYnVzLCAgOS4gSnVsIDE5OTcsIDEyOjM1OjA4KToKTWVpbiBOYW1lIGlzdCBTb2ZpZS4gU29maWUgYWxzIGF1Y2guCgpJY2ggYmluIGZhc3QgenVzYW1tZW5nZWJyb2NoZW4gdm9yIExhY2hlbi4KY2VyZWJ1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKeml0dGVybiBkaWUgOTg4ODcuIChBc21vZGlzLCAgOS4gSnVsIDE5OTcsIDE1OjMyOjU1KToKW0FsbGdlbWVpbjpCbHVlbWVsXSBJY2gga2VubiBkYSBuZW4gU3BpZWxlcgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKClV1aCwgd2VuIEJsdWVtZWwgYWxsZXMga2VubnQgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogeml0dGVybiBkaWUgOTg4ODcuIChNb3JnYXIsICA5LiBKdWwgMTk5NywgMTU6Mzk6NDMpOgp+IyEgcm49QXNtb2RpcyBydD04Njg0NTUxNzUgcmc9c2NobWFycm4KfiMhIHRpZD04Njg0NTUxNzUKSG0sIGJlaSBkZW0gc2VsYmVuIFppdHRlcm46CgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgpTY2huZWNrZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHppdHRlcm4gZGllIDk4ODg3LiAoQm9pbmcsICA5LiBKdWwgMTk5NywgMTU6NDI6MzgpOgp+IyEgcm49TW9yZ2FyIHJ0PTg2ODQ1NTU4MyByZz1zY2htYXJybgp+IyEgdGlkPTg2ODQ1NTE3NQpMb2NvISEgSWNoIG1vZWNodGUgQXJ0aWtlbCBpZ25vcmllcmVuIGtvZW5uZW4sIGRpZSBiZXN0aW1tdGUgU2NobHVlc3NlbC0Kd29ydGUgZW50aGFsdGVuISA6KAogICdJY2ggaGFsdCdzIG5pY2h0IG1laHIgYXVzJyBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogeml0dGVybiBkaWUgOTg4ODcuIChNb3JnYXIsICA5LiBKdWwgMTk5NywgMTU6NDM6MTYpOgp+IyEgcm49Qm9pbmcgcnQ9ODY4NDU1NzU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY4NDU1MTc1CldlciBsaWVzdCBzY2hvbiBTY2htYXJybj8KCk1vcmdhci4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB6aXR0ZXJuIGRpZSA5ODg4Ny4gKEFzbW9kaXMsICA5LiBKdWwgMTk5NywgMTU6NDM6MzgpOgp+IyEgcm49TW9yZ2FyIHJ0PTg2ODQ1NTc5NiByZz1zY2htYXJybgp+IyEgdGlkPTg2ODQ1NTE3NQpCb2luZyBsaWVzdCBlcywga29lbm50ZSBqYSB3YXMgV2ljaHRpZ2VzIGRyaW5zdGVoZW4gKmxhY2gqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB6aXR0ZXJuIGRpZSA5ODg4Ny4gKFJhbnRhbnBsYW4sICA5LiBKdWwgMTk5NywgMTU6NDQ6NDgpOgp+IyEgcm49QXNtb2RpcyBydD04Njg0NTU4MTggcmc9c2NobWFycm4KfiMhIHRpZD04Njg0NTUxNzUKV2llIHdhZXJzIHdlbm4gZWluZmFjaCBkaWUgSGlsYmVydC1RdWVzdCBhYmdlaGFlbmd0IHdpcmQgOy0pKQoKT2UqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB6aXR0ZXJuIGRpZSA5ODg4Ny4gKFBhbXBlcnMsICA5LiBKdWwgMTk5NywgMTU6NDU6MTcpOgp+IyEgcm49TW9yZ2FyIHJ0PTg2ODQ1NTc5NiByZz1zY2htYXJybgp+IyEgdGlkPTg2ODQ1NTE3NQpEaWUgQXJ0aWtlbCB3ZXJkZW4gdWVicmlnZW5zIG5vY2ggd2VzZW50bGljaCB1bnZlcnN0YWVuZGxpY2hlciwgd2VubiBtYW4gLSB3aWUKaWNoIC0gZGllIFppdHRlcm1lbGR1bmcgcmF1c2dlZ2FndCBoYXQuIDotKQpFaW4gZWluZmFjaGVzIFNjaG5lY2tlICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQppc3QgTk9DSCB3ZW5pZ2VyIGVyaGVpdGVybmQgYWxzIGVzIGRlciBBcnRpa2VsIG1pdCBaaXR0ZXJtZWxkdW5nIHdhZXJlLgoKUGFtcGVycy4gV2lsbCBkYW1pdCBuaWNodCBnZXNhZ3QgaGFiZW4sIGRlciBBcnRpa2VsIHNlaSBhdWNoIG51ciBpbSBtaW5kZXN0ZW4Kb3JpZ2luZWxsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogeml0dGVybiBkaWUgOTg4ODcuIChNYW5nbywgIDkuIEp1bCAxOTk3LCAxODoxMDowNyk6Cn4jISBybj1Bc21vZGlzIHJ0PTg2ODQ1NTgxOCByZz1zY2htYXJybgp+IyEgdGlkPTg2ODQ1NTE3NQoKd2VzaGFsYiBoZWlzc3QgZXMgZGVubiBkYW5uIHNjaG1hcnJuPyA7KQoKTWFuZ28sIGF1Y2ggc2NobWFycmVuZCB1bmQgc2NobWFycm4gbGVzZW5kLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClppdHRlcm4gZGllIDk4ODg4LiAoQXNtb2RpcywgMTAuIEp1bCAxOTk3LCAwMDo0MzoxNCk6CltBbGxnZW1laW46THVnXSBUZXVmZWwgYXVjaCEKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCkhtbSwgdm9yIG1pciBicmF1Y2h0IGlociBuaWNodCB6dSB6aXR0ZXJuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWml0dGVybiBkaWUgOTg4ODguIChIYXJkaWwsIDEwLiBKdWwgMTk5NywgMTQ6NDA6MzcpOgp+IyEgcm49QXNtb2RpcyBydD04Njg0ODgxOTQgcmc9c2NobWFycm4KfiMhIHRpZD04Njg0ODgxOTQKCkVpbiBkaWNodGVyIE5lYmVsIGtvbW10IGF1Zi4KUmFudGFucGxhbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCk5lZWlza2xhciwgc28gZWluIE5lYmVsIHZlcnNjaGx1Y2t0IGphIGdhbnogZ2VybmUgbWFsIEh1bmRlLgoKLUhhcmRpbC4gTk5OLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIGF1Y2ggbWFsISAoR3JpbW1ib3JuLCAxMC4gSnVsIDE5OTcsIDE4OjA2OjAwKToKRHUgZ3JpbnN0LgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKSW1tZXJoaW4sIGRhcyBNRyBoYXQgd2VuaWdzdGVucyBub2NoIFJlc3Bla3QuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1cyBtZWluZW0gUmVwZmlsZTogKFNpbHZhbmEsIDExLiBKdWwgMTk5NywgMTI6MDQ6NDYpOgpBbHNvIG1hY2hubWFsIGZyYWcgaWNoIG1pY2gsIG9iIFNwaWVsZXIgbmljaHQgd2lya2xpY2ggbm9jaCB1ZWJsZXJlIElkZWVuCmhhYmVuLCBhbHMgTWFnaWVyIHNpY2ggdW16dXNldHplbiB0cmF1ZW4uIERhcyBmb2xnZW5kZSBzdGFtbXQgYXVzIGVpbmVyCklkZWUsIGRpZSBpbSBXYXJva2dlYmlyZ2UgYWJnZXNldHp0IHd1cmRlOgpJREVFOiBBYmVuZHNvbm5lIElOIChmaWxlbmFtZSkKdW50IGtyYW5raGVpdCAtPiBPaCwgamEsIGRhIGdpYnQgZXMgZWluIHBhYXIgYm9lc2UuLi4gV2lsbHN0IER1IHNpZSB0ZXN0ZW4/CjstKSB1bmQgZGFubiBnZWh0IHRlc3RlIGtyYW5raGVpdCBuaWNodCA7KQoKU29sbCBpY2ggZGFzIF93aXJrbGljaF8gZWluYmF1ZW4/IDopCgogIFNpbHZhbmEgKHd1bmRlcnQgc2ljaCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJY2ggYXVjaCBtYWwhIChIYXJkaWwsIDExLiBKdWwgMTk5NywgMTI6Mjg6NTkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2ODU1MDc2MCByZz1zY2htYXJybgp+IyEgdGlkPTg2ODU1MDc2MAoKRWluIEdvcmlsbGEgaGFuZ2VsdCBoZXJlaW4uClBhbXBlcnMgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCgpXZW5uIGRhcyBuaWNodCBwYXNzZW5kIGlzdC4KLUhhcmRpbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdXMgbWVpbmVtIFJlcGZpbGU6IChab3JybywgMTEuIEp1bCAxOTk3LCAxMjozNjoyNCk6Cn4jISBybj1TaWx2YW5hIHJ0PTg2ODYxNTQ4NiByZz1zY2htYXJybgp+IyEgdGlkPTg2ODYxNTQ4NgpXYXJvayBpc3QgZG9jaCBlaCBudXIgZnVlciBaYXViZXJlciBhbHNvIGthbm5zdGUgZXMgcnVoaWcgbWFjaGVuIC4uLgoKR3J1c3MgWm9ycm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXVzIG1laW5lbSBSZXBmaWxlOiAoTmFpcm9sZiwgMTEuIEp1bCAxOTk3LCAxMjo1NDoyNSk6Cn4jISBybj1ab3JybyBydD04Njg2MTczODQgcmc9c2NobWFycm4KfiMhIHRpZD04Njg2MTU0ODYKcGZmZmZmdCBudXIgZnVlciBaYXViZXJlciAuLi4uIGRhc3MgaWNoIG5pY2ggbGFjaGUgOi0pKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHppdHRlcm4gZGllIDk4ODg3LiAoS3JldGVrLCAxMS4gSnVsIDE5OTcsIDEzOjE1OjA1KToKfiMhIHJuPUFzbW9kaXMgcnQ9ODY4NDU1ODE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY4NDU1MTc1CkF1ZiBqZWRlbiBGYWxsIGJlc3NlciBhbHMgZXJ6bWFnaWVyLmVudHdpY2tsdW5nIDotKQpLLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaWNoIHdpbGwgZGlyIG5pY2h0IHdpZGVyc3ByZWNoZW4uLi4gOikgKE5hY2h0d2luZCwgMTMuIEp1bCAxOTk3LCAwMjo1NToxNSk6Ck5ldWxpY2ggbmFjaHRzIHVtIDMuLi4gOikKCltBbGxnZW1laW46VHVhcmVnIGRldXRldCBoaW50ZXIgc2ljaCB1bmQgc2FndDogRGVyIGRhISAuKQpbQWxsZ2VtZWluOktleV0gV2VyIGljaD8KW0FsbGdlbWVpbjpUdWFyZWddIEpvb3AKW0FsbGdlbWVpbjpLZXkgc2NodWV0dGVsdCBkZW4gS29wZi5dCltBbGxnZW1laW46UmFpZGVuXSBtYWNodCBkYXMgdW50ZXIgZXVjaCBhdXMgOikKW0FsbGdlbWVpbjpLZXldIERhcyB3YXJzdCBqYSB3b2hsIGVoZXIgZHUhCltBbGxnZW1laW46VHVhcmVnXSBQYWghIERhcyBrYW5uIGplZGVyIHNhZ2VuIQpbQWxsZ2VtZWluOktleV0gaXN0IGRvY2ggd2FociEKW0FsbGdlbWVpbjpUdWFyZWddIEFjaCBoYWx0cyBtYXVsIEtleSEKW0FsbGdlbWVpbjpLZXldIFdJRSBCSVRURT8/PwpFaW4gQm90ZSBrb21tdCBoZXJlaW5nZWhhc3RldCB1bmQgYmVnaW5udCB3aWxkIHp1IGZ1Y2h0ZWxuIHVuZCB6dQpwbGFwcGVybjoKJ0tleSBoYXQgZ2VyYWRlIFR1YXJlZyB6dW0gRHVlbGwgaGVyYXVzZ2Vmb3JkZXJ0ISBJaHIgbXVlc3N0IHNjaG5lbGwKaW4gZGllIFd1ZXN0ZSB6dXIgS2FtcGZhcmVuYSBsYXVmZW4sIGRhcyBkdWVyZnQgaWhyIGV1Y2ggbmljaHQKZW50Z2VoZW4gbGFzc2VuIScKVW5kIHNjaG9uIGhhc3RldCBlciB3aWVkZXIgcmF1cy4KCgpbQWxsZ2VtZWluOlR1YXJlZyBsYWNodC5dCltBbGxnZW1laW46UmFpZGVuXSBpaHIgaGFidCBkb2NoIGFsbGUgYmVpZGUgZGllIHBmYW5uZSBoZWlzcyEgOikKW0FsbGdlbWVpbjpOYWNodHdpbmRdIFJhaWRlbjogS2xhcHBlIQpbQWxsZ2VtZWluOkNlbGViZGlsIG5pY2t0LiBNZW5zY2gsIGlociBzcGlubnQgZ2VuYXVzbyB3aWUgQ2FyYWRocmFzLl0KW0FsbGdlbWVpbjpSYWlkZW4gZ3J1bW1lbHQuXQpbQWxsZ2VtZWluOktleSBncmluc3QgTmF0d2luZCBhbi5dCltBbGxnZW1laW46Q2FyYWRocmFzXSBIRVkhCltUb2Q6TGFyc10gRGllIGVpZ2VuZSBVbmZhZWhpZ2tlaXQgaGF0IGdlcmFkZSBLZXkgdW1nZWJyYWNodC4KW0FsbGdlbWVpbjpDYXJhZGhyYXMgc2NobW9sbHQgamV0enQgYWJlci5dCltCZWlsZWlkOlR1YXJlZ10gQWVobSAuLi4gbWFuIHNvbGx0ZSBkaWUgdG9yZSBvZWZmbmVuIC4uLgpbQmVpbGVpZDpUdWFyZWddIFNjaGVpc3NlIQpbQmVpbGVpZDpOYWNodHdpbmQgbGFjaHQgc2ljaCBzY2hsYXBwISFdCltCZWlsZWlkOlR1YXJlZ10gTWFubiBpY2ggYmluIGJsb2VkIQoKTmFjaHR3aW5kLiBEZXIgSW5xdWlzaXRvciBkZXIgS2FuZHJpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQmxhZXR0ZXJ0ZWljaCB1c3cuIChHcmltbWJvcm4sIDE0LiBKdWwgMTk5NywgMTA6MTU6NTQpOgp+IyEgb249THVnIG90PTg2ODY1MzY2NyBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2ODYxOTcyOCByZz1rb2NocmV6ZXB0ZQp+IyEgdGlkPTg2ODE5OTk5MgoKQWVoZW0sIG1laW5lIFdoaXNrZXlzIHNpbmQgbmF0dWVybGljaCBiZXNzZXIsIGFiZXIgd2FydW0gR3JpbW1pIG5lbiAxOTc0J2dlcgpNYWNBbGxhbiBlaW5mdWVsbGVuPyA7KQoKSWNoIHd1ZXJkZSBSYWNrZSBSYWN1aHphcnQsIGFscyBzbyBlaW5lIEFydCBDbGF1c3RoYWxlciBkZXIgTWFpc21haXNjaGUKYmV6ZWljaG5lbi4gU2VsYnN0IHNvIGFiZ3J1bmR0aWVmIGZpZXNlIEdldHJhZW5rZSB3aWUgVmVyc2Nobml0dGUgYSBsYSBKb25ueQpXYWxrZXIsIEJsYWNrICYgV2hpdGUgb2RlciBCYWxsYW50aW5lcyAoZGFzIG1pdCBkZW0gdmllbGVuIFdhc3NlciBpbiBkZXIKV2VyYnVuZyBoYXQgc2VpbmVuIHRpZWZlcmVuIEdydW5kKSBrb2VubmVuIGRlbSBla2VsZXJyZW5nZW5kZW0sCmdlc2NobWFja3NuZXJ2ZW52ZXJhZXR6ZW5kZW0gIkhhdXRnb3V0IiBlaW5lcyBSYWNrZSBSYXVjaHphcnQgbmljaHRzCmVudGdlZ2Vuc2V0emVuLgoKVW5kIHdlbm4gR3JpbW0gZGFzIG5hY2ggU2NobWFycmVuIHZlcmxlZ3QsIG5laG0gaWNoIHZpZWxsZWljaHQgZG9jaCBldHdhcyB2b20KNzQnZ2VyIG5hY2ggTXVlbnN0ZXIgbWl0Li4uIDspCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEJsYWV0dGVydGVpY2ggdXN3LiAoR3JpbW1ib3JuLCAxNC4gSnVsIDE5OTcsIDEwOjIzOjIwKToKfiMhIHJuPUdyaW1tYm9ybiBydD04Njg4NjgxNTQgcmc9c2NobWFycm4KfiMhIHRpZD04NjgxOTk5OTIKTWNBbGxhbiB3aXJkIHVudGVyIExhaWVuIG1hc3NpdnN0IHVudGVyc2NoYWV0enQsIHVudGVyIEtlbm5lcm4gbWVpbmVyCnBlcnNvZW5saWNoZW4gTWVpbnVuZyBuYWNoIGxlaWNodCB1ZWJlcnNjaGFldHp0LiBTaWNoZXIsIGVyIGlzdCBpbiBkZXIKYWJzb2x1dGVuIFNwaXR6ZSBhbnp1c2llZGVsbiwgYWJlciBuaWNodCBhbiBhbGxlcmVyc3RlciBTdGVsbGUuIEljaCBiaW4KYWxsZXJkaW5ncyBiZXJlaXQsIGRhcyBhbHMgcGVyc29lbmxpY2hlIEdlc2NobWFja3NzYWNoZSB6dSBpbnRlcnByZXRpZXJlbi4gVW5kCmRlbiA3NGVyIGtlbm5lIGljaCBhbGxlcmRpbmdzIG5pY2h0LgpNZWluIHBlcnNvZW5saWNoZXIgTGllYmxpbmdzaGlnaGxhbmQgaXN0IGRlciAxOGphZWhyaWdlIEdsZW5tb3JhbmdpZSwgdW5kIGRlcgpmdWVyIG1pY2ggYmVzdGUgV2hpc2tleSB1ZWJlcmhhdXB0IGlzdCBMYWdhdnVsaW4sIHVuZCBkYXMgc2VpdCB1ZWJlciBmdWVuZgpKYWhyZW4uIEludGVyZXNzYW50ZXJ3ZWlzZSBoYWJlIGljaCBkYW5uIHZpZWwgc3BhZXRlciBkaWUgTGlzdGUgdm9uIE1pY2hhZWwKSmFja3NvbiBpbiBkaWUgRmluZ2VyIGJla29tbWVuIChuZWluLCBuaWNodCBkZXIgRXgtTmVnZXIhKSwgd28gTGFnYXZ1bGluCnRhdHNhZWNobGljaCBkZW4gZXJzdGVuIFBsYXR6IGVpbm5pbW10LiBJY2ggd3VlcmRlIGRhcyBnZXJuZSBhdWYgbWVpbmVuCnVuYmVzdGVjaGxpY2hlbiBHZXNjaG1hY2sgenVydWVja2Z1ZWhyZW4sIGFiZXIgaW4gV2lya2xpY2hrZWl0IHdpcmQgZGFzIHB1cmVyClp1ZmFsbCBzZWluLgoKQWNoIHNvLCBkZXIgQXJ0aWtlbCBzdGVodCBpbiBzY2htYXJybiwgamV0enQgYmluIGljaCBhdWYgTXVlbnN0ZXIgZ2VzcGFubnQuCkljaCBrYW5uIGFscyAiR2VnZW5sZWlzdHVuZyIgYW5iaWV0ZW46IEdsZW5tb3JhbmdpZSAxMCsxOCwgVG9tYXRpbiwgTGFnYXZ1bGluLApIaWdobGFuZCBQYXJrIHVuZCBub2NoIGVpbmVuLCBhdWYgZGVzc2VuIE5hbWVuIGljaCBzbyBmcnVlaCBhbSBNb250YWcgbW9yZ2VuCm5pY2h0IGtvbW1lLiBVbmQgc29sbHRlIHNvbnN0IG5vY2ggamVtYW5kZW0gZGFzIFdhc3NlciBpbSBNdW5kIHp1c2FtbWVubGF1ZmVuOgpTY2hub3JyZW4gendlY2tsb3MsIGRhZnVlciBzaW5kIGRpZSBEaW5nZXIgZWluZmFjaCB6dSBndXQgKHVuZCB6dSB0ZXVlcikuIDstKQoKR3JpbW1ib3JuIGRpZSBTY2huYXBzbmFzZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQmxhZXR0ZXJ0ZWljaCB1c3cuIChBc3RhciwgMTQuIEp1bCAxOTk3LCAxMjoyNzowMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODY4ODY4NjAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY4MTk5OTkyCkhtbSwgc28gdGV1ZXIgc2luZCBkaWUgYXVjaCBuaWNodCwgZXMgc2VpIGRlbm4gbWFuIGhhdCB2b3IsIHNvIHZpZWwgd2llIEhhdGUKZGF2b24gYXVmIGVpbm1hbCB6dSB0cmlua2VuLgoKQXN0YXIgdHJpbmt0IGVpbmVuIExhZ2F2dWxpbiBhdWYgZGVpbiBXb2hsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEJsYWV0dGVydGVpY2ggdXN3LiAoR3JpbW1ib3JuLCAxNC4gSnVsIDE5OTcsIDEyOjMyOjA0KToKfiMhIHJuPUFzdGFyIHJ0PTg2ODg3NjAyMiByZz1zY2htYXJybgp+IyEgdGlkPTg2ODE5OTk5MgpBbHNvLCB3ZW5uIGluIE11ZW5zdGVyIGh1bmRlcnQgRGVwcGVuIGFua29tbWVuIHVuZCBzYWdlbiAiSWNoIHdvbGx0ZSBzY2hvbgppbW1lciBtYWwgcHJvYmllcmVuLCB3aWUgZWluIDcwRE0tV2hpc2tleSBzY2htZWNrdCwgbWFjaCBkYXMgR2xhcyBydWhpZyBnYW56CnZvbGwiIGRhbm4gX2lzdF8gZGFzIHRldWVyLiBBYmdlc2VoZW4gZGF2b24gcmVpY2h0IGJlaSBtaXIgenUgSGF1c2Ugc28gZWluZQpGbGFzY2hlIHNpY2hlciBydW5kIGVpbiBKYWhyIChzY2h3ZXIgenUgc2NoYWV0emVuLCBzaW5kIGphIG1laHJlcmUsIGRpZQpsYW5nc2FtIHdlbmlnZXIgd2VyZGVuLiBBYmVyIG9rLCBiZWkgMTBETSBmdWVyIDRjbCBrYW5uIG1hbiBzaWNoIGRydWViZXIKdW50ZXJoYWx0ZW4sIG9iIGljaCBuaWNodCBlaW5lbiBXaGlza2V5LUF1c3NjaGFuayBhdWZtYWNoZS4uLgoKR3JpbW1ib3JuIGRlciBHcm9zc2thcGl0YWxpc3QgdmVyZGllbnQgYW4gZGVyIERyb2dlbnN1Y2h0IGFuZGVyZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBCbGFldHRlcnRlaWNoIHVzdy4gKEtleSwgMTQuIEp1bCAxOTk3LCAxMjo0Mzo0OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODY4ODc2MzI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY4MTk5OTkyCkF1amEgRHUgcmVubnN0IG1pdCBuZW0gQmF1Y2hsYWRlbiBkdXJjaCBkaWUgR2VnZW5kIHVuZCB2ZXJrbG9wcHN0IGRhbm4gSi5XCmZ1ZXIgMTAsLSBkYXMgR2xhZXNjaGNoZW4gOykgRGllIGRpciBkYXMgYWJrYXVmZW4gbWVya2VuIGVoIGtlaW5lbiBVbnRlcnNjaGllZAo7KQoKSG1tIHVuZCBpY2ggdmVya2F1ZmUgZGFubiBnZWxiZSBTYWVja2NlIGFscyBSYXVjaGVya2FiaW5lbiA7KSkKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEJsYWV0dGVydGVpY2ggdXN3LiAoUGFtcGVycywgMTQuIEp1bCAxOTk3LCAxMjo0Njo1Myk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODY4ODc2MzI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY4MTk5OTkyCkFsc28gaWNoIGJpbiBqYSBpbW1lciB3aWVkZXIgYmVlaW5kcnVja3QsIHdhcyBpaHIgYWxsZSBmdWVyIEZ1c2VsZXhwZXJ0ZW4Kc2VpZC4KT2IgZGVyIFdoaXNrZXkgc2ljaCBudW4gbWl0IG9kZXIgb2huZSBlIHNjaHJlaWJ0LCBtaXQgb2RlciBvaG5lIE1ldGhhbm9sIGlzdApvZGVyIGdhciB2b24gaXJnZW5kd2VsY2hlbiBTY2h3YXJ6YnJlbm5lcm4gYXVzIEh1bmRlc2NoZWlzc2UgZ2VicmFubnQgd2lyZCBpc3QKbWlyIGVocmxpY2ggZ2VzYWd0IHppZW1saWNoIHNjaG51cnouCkVyc3QgcmVjaHQsIHdpZXZpZWwgbmUgUHVsbGUgdm9uIGRlbSBTY2hlaXNzemV1Y2gga29zdGV0IG9kZXIgd2llIGxhbmdlIGRlcgpiZWkgT25rZWwgSmFjayBpbSBLZWxsZXIgdm9yIHNpY2ggaGluZ2VnYW1tZWx0IGhhdC4KTmljaHRzZGVzdG90cm90eiBpc3QgZXMgbmF0dWVybGljaCBob2NoZmFzemluaWVyZW5kIHp1IGVyZmFocmVuLCBkYXNzIExldXRlCm1laHIgYWxzIDUgTWFyayBmdWVyIG5lIEZsYXNjaGUgRnVzZWwgYXVzZ2ViZW4gZGVyIGVoIHNjaG1lY2t0IGFscyBoYWV0dGUgbmUKUmF0dGUgcmVpbmdlcGlzc3QsIGFiZXIgZGFzIGlzdCBtaXQgc2ljaGVyaGVpdCBHZXNjaG1hY2tzc2FjaGUuCkRhcyBpaHIgamVkb2NoIGF1Y2ggRXVyZSBob2NoaW50ZWxsZWt0dWVsbGUgRXhwZXJ0aXNlIGF1Y2ggbm9jaCBzdG9seiBzZWlkCmVyZnVlbGx0IG1pdCBTaWNoZXJoZWl0IGRlbiBUYXRiZXN0YW5kIGRlciBha3VzdGlzY2hlbiAoYnp3LiBoaWVyIG9wdGlzY2hlbikKVW13ZWx0dmVyc2NobXV0enVuZy4gTWFjaCBFdWNoIG5lIGVpZ2VuZSBFYmVuZSBhdWYsIHNjaHJlaWJ0IGRpZSBBcnRpa2VsIGluCkFsa29ob2xsZWljaGVuLmVudHdpY2tsdW5nIG9kZXIgc28gYWJlciBob2VydCBhdWYsIGFuc3RhZW5kaWdlIE1lbnNjaGVuIG1pdApFdXJlbiBhbGtvaG9saXNjaGVuIFdpY2hzcGhhbnRhc2llbiB6dSBiZWxhZXN0aWdlbiwgaXN0IGphIG5pY2h0IGF1c3p1aGFsdGVuLgoKUGFtcGVycy4gVHJpbmt0IG51ciBCaWVyLiBEYXMgaXN0IHdlbmlnc3RlbnMgd2FzIGFuc3RhZW5kaWdlcyB1bmQgbmljaCBzbwp0ZXVlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBCbGFldHRlcnRlaWNoIHVzdy4gKEtleSwgMTQuIEp1bCAxOTk3LCAxMjo1OTo1Myk6Cn4jISBybj1QYW1wZXJzIHJ0PTg2ODg3NzIxMyByZz1zY2htYXJybgp+IyEgdGlkPTg2ODE5OTk5MgpQZmYgV2luZGVsIDopCgpCZWltIEJpZXIgYWNodGV0IG1hbiBqYSBhdWNoIGF1ZiBkYXMgUmVpbmhlaXRzZ2Vib3QsIG9kZXIgdHJpbmtzdCBkdSBhdWNoIGRhcwp6ZXVnIGRhcyBkaWUgcG9sZW4gYmllciBzY2hpbXBmZW4/IC4pCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBCbGFldHRlcnRlaWNoIHVzdy4gKEdyaW1tYm9ybiwgMTQuIEp1bCAxOTk3LCAxMzowMjoyMCk6Cn4jISBybj1QYW1wZXJzIHJ0PTg2ODg3NzIxMyByZz1zY2htYXJybgp+IyEgdGlkPTg2ODE5OTk5MgpPaGEsIFBhbXBlcnMgaXN0IG5vY2ggbmllIGluIGVpbmVyIFN6ZW5la25laXBlIGdld2VzZW4gdW5kIGhhdCBzaWNoIGRvcnQgZGllCkJpZXJrYXJ0ZSBhbmdlc2VoZW4uIEF1Y2ggQmllciBrYW5uIHRldWVyIHNlaW4uCkZ1c2Vsb2VsZSBzaW5kIG5pY2h0IE1ldGhhbm9sLCBzb25kZXJuIChzb3dlaXQgaWNoIG1pciBoYWIgc2FnZW4gbGFzc2VuKQpob2VoZXJlIEFsa29ob2xlLiBVbmQgU2FjaGVuLCBkaWUgYmVpIE9ua2VsIEphY2sgaW0gS2VsbGVyIHJ1bWdhbW1lbG4sIGZhc3MKaWNoIG5jaWh0bWFsIG1pdCBkZXIgc3BpdHplbiBaYW5nZSBhbi4KQW5zb25zdGVuIHNlaGUgaWNoIG1pY2ggZ2V6d3VuZ2VuLCBEaXIgZWluZW4gU2Nob2NrIHp1IHZlcnNldHplbjogRGllIG1wYSBpc3QKbmljaHQgYWxsZWluIGZ1ZXIgUGFtcGVycyBkYSwgdW5kIHdlbm4gc2VsYmlnZXIgZXR3YXMgZGFyYW4gbmljaHQgbWFnIHN0ZWh0IGVzCmlobSBqZWRlcnplaXQgZnJlaSwgR2VicmF1Y2ggdm9uIGRlbiBCZWZlaGxlbiB1bnN1YnNjcmliZSBtcGEsIGlnbm9yaWVyZQp4eHgubmV3cyBvZGVyIHhkZXMgJG0ubXBhIHp1IG1hY2hlbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCBpbSBhbGtvaG9saXNjaGVuIFdpY2hzcGhhbnRhc2llcmF1c2NoLiBPZGVyIHNvIGFlaG5saWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBCbGFldHRlcnRlaWNoIHVzdy4gKFF1YXNpbW9kbywgMTQuIEp1bCAxOTk3LCAxNjozOToyOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODY4ODY4MTU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY4MTk5OTkyCldlbm4gc2Nob24gV2lza2V5LCBkYW5uIGRvY2ggUGVubnlwYWNrZXIuIERlciBzY2htZWNrdCB3ZW5pZ3N0ZW5zIHNvIHdpZSBlaW4KZ3V0ZXIgV2lza2V5IHNjaG1lY2tlbiBzb2xsdGU6IE5hY2ggUGZlZmZlcm1pbnouCgpRdWFzaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQmxhZXR0ZXJ0ZWljaCB1c3cuIChRdWFzaW1vZG8sIDE0LiBKdWwgMTk5NywgMTY6NDI6NDUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2ODg2ODYwMCByZz1zY2htYXJybgp+IyEgdGlkPTg2ODE5OTk5MgpJY2gga2FubiBkZW0gR290dGlnbm9yYW50ZW4gbnVyIHp1c3RpbW1lbiAodW5kIGRhcyBuaWNodCBudXIgaW4KR2xhdWJlbnNmcmFnZW4pLiBMYWdhdnVsaW4gaXN0IGF1Y2ggbWVpbiBwZXJzb2VubGljaGVyIEZhdm9yaXQuCgpRdWFzaSwgaW1tZXIgZWluZSBGbGFzY2hlIGRhaGVpbSAobmljaHQgZXIgc2VsYnN0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEJsYWV0dGVydGVpY2ggdXN3LiAoV3VyemVsLCAxNC4gSnVsIDE5OTcsIDE5OjE3OjUyKToKfiMhIHJuPVF1YXNpbW9kbyBydD04Njg4OTEzNjUgcmc9c2NobWFycm4KfiMhIHRpZD04NjgxOTk5OTIKbWFuIGthbm4gdWViZXIgYWxsZXMgc3RyZWl0ZW4sIGFtIGJlc3RlbiB3aWUgaW1tZXIgdWViZXIgZ2VzY2htYWNrIDopCm1laW4gcGVyc29lbmxpY2hlciBmYXZvcml0ICh3ZWlzcyBuaWNodCwgb2IgZGVyIGluIGlyZ2VuZHdlbGNoZW4gdG9wbGlzdGVuCmF1ZnRhdWNodCwgYWJlciBlciBzY2htZWNrdCBtaXIgYW0gYmVzdGVuKSBpc3QgaW1tZXIgbm9jaCBjYXJkaHUuCndoaXNrZXkgKGRlciBtaXQgZGVtIGUpIGlzdCBhdXMgbm9ybWFsZW0gd2hpc2t5IGVudHN0YW5kZW4sIGluZGVtIGplbWFuZApyZWluZ2VwaW5rZWx0IGhhdCwgamVkZW5mYWxscyBkZW0gZ2VzY2htYWNrIG5hY2guIGVpbm1hbCBwcm9iaWVyZW4gcmVpY2h0LgoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBCbGFldHRlcnRlaWNoIHVzdy4gKEx1ZywgMTQuIEp1bCAxOTk3LCAxOToyODowOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODY4ODY4NjAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY4MTk5OTkyCldoaXNreSBhZ2FpbgoKQWxzbyBkZW4gR2xlbm1vcmFuZ2llIGtlbm5lIGljaCBudXIgMTIgamFlaHJpZyB1bmQgbWFnIGlobiBnYXIgbmljaHQuIERlcgpNYWNBbGxhbiB3aXJkIGVyc3QgYWIgMTggSmFocmVuIHNvIHJpY2h0aWcgdG9sbCwgdW5kIGRhbm4ga2F1bSB1ZWJlcnNjaGFldHp0LgpEZXIgSmFja3NvbiBiZXdlcnRldCBJTUhPIElzbGF5IE1hbHRzIGdlbmVyZWxsIHp1IG5pZWRyaWcsIG1pdCBBdXNuYWhtZSBkZXMKTGFnYXZ1bGluIChkZXIgdGF0c2FlY2hsaWNoIGJyaWxsaWFudCBpc3QpLiBOZWJlbiBMYWdhIHVuZCBNYWNBIHd1ZXJkZSBpY2gKZWhlciBCb3dtb3JlIG9kZXIgQnVuYWhhYmhhaW4gKG9kZXIgc28gYWVobmxpY2ggOykgZW1wZmVobGVuLiBXZW5uIGljaCBkaWUKUHVsbGUgbmljaHQgdm9yaGVyIGtpbGxlbiwgbmVobWUgaWNoIG1hbCBkZW4gUmVzdCBCb3dtb3JlIG1pdCBuYWNoIE11ZW5zdGVyLgoKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogQmxhZXR0ZXJ0ZWljaCB1c3cuIChMdWcsIDE0LiBKdWwgMTk5NywgMTk6MzE6MzYpOgp+IyEgcm49UGFtcGVycyBydD04Njg4NzcyMTMgcmc9c2NobWFycm4KfiMhIHRpZD04NjgxOTk5OTIKVGphZSBQYW1wZXJzLAoKd2VubiBEdSBrZWluZSBHZXNjaG1hY2tzbmVydmVuIGhhc3QsIGRhbm4gaXN0IGRhcyBEZWluIFBlY2guIEJpc2NoZW4KVmVyYmFsZHVlbm5mcGlmZiBpc3QgamEgYXVjaCBvLmsuLCBkZXNoYWxiIHNjaHJlaWIgcnVoaWcgc28gd2VpdGVyLCBhYmVyIGVzCmdpYnQgbmF0dWVybGljaCBhdWNoIGV4a2x1c2l2ZXJlIHVuZCB0ZXVyZXIgQmllcnNvcnRlbiAobmljaHQgQ29yb25hLVBpc3NlKSwKcmVkZW4gd2lyIGViZW4gZGFydWViZXIgOykKCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEJsYWV0dGVydGVpY2ggdXN3LiAoTHVnLCAxNC4gSnVsIDE5OTcsIDE5OjMzOjI3KToKfiMhIHJuPVd1cnplbCBydD04Njg5MDA2NzIgcmc9c2NobWFycm4KfiMhIHRpZD04NjgxOTk5OTIKQWVoIFd1cnplbCwKCmRhcyBpc3QgZWhlciBlaW5lIHNjaG90dGlzY2gtaXJpc2NoZSBHbGF1YmVuc2ZyYWdlLCBkaWUgbWljaCBhdXNuYWhtc3dlaXNlIG1hbAphdWYgZGVyIHNjaG90dGlzY2hlbiBTZWl0ZSBzaWVodC4KCmZ1c2VsZG4KQWVoLCBmdXNlbG5kCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEJsYWV0dGVydGVpY2ggdXN3LiAoUGFtcGVycywgMTQuIEp1bCAxOTk3LCAxOTozMzo0MSk6Cn4jISBybj1MdWcgcnQ9ODY4OTAxNDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY4MTk5OTkyCkVpbmUgU2FjaGUgYW4gRGVpbmVtIEFydGlrZWwgbWFjaCBtaWNoIG5hY2hkZW5rbGljaDoKRGFzIFdvcnQgZXhrbHVzaXYuLi4gRHUgYmlzdCB3YWhyc2NoZWlubGljaCBhdWNoIGVpbmVyIHZvbiBkZW5lbiwgZGllCldhcnN0ZWluZXIgdHJpbmtlbiwgd2VpbCBkYXMgWmV1ZyBzbyBzY2hvZW4gdmVycGFja3QgaXN0IHVuZCBlaW4gYmlzc2NoZW4KdGV1cmVyIGlzdC4uCgpQYW1wZXJzLiBIYW5zYSBUcmlua2VyLiBBa2FkZW1pc2NoZXIgUHJvbGV0YXJpZXIuIEJpZXJleHBlcnRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEJsYWV0dGVydGVpY2ggdXN3LiAoTHVnLCAxNC4gSnVsIDE5OTcsIDE5OjM0OjM2KToKfiMhIHJuPVBhbXBlcnMgcnQ9ODY4OTAxNjIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY4MTk5OTkyCldhcnN0ZWluZXI/CgpCaWVyIG9obmUgR2VzY2htYWNrc2FudGVpbGUgc2luZCBuaWNodCBzbyBtZWluIERpbmcgOykKSGFuc2E/IERhIGZlaGxlbiBEaXIgd2lya2xpY2ggZGllIEdlc2NobWFja3NuZXJ2ZW4uIE11c3N0IER1IHNlbGJlciB3aXNzZW4uCgpXdWVyZ2VuZApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEJsYWV0dGVydGVpY2ggdXN3LiAoRW5neXd1Y2ssIDE0LiBKdWwgMTk5NywgMTk6NDE6MzcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2ODg2ODYwMCByZz1zY2htYXJybgp+IyEgdGlkPTg2ODE5OTk5MgpJY2ggaGFiIGRhIGJlaSBHcmltbWJvcm4gbWFsIHNvIGVpbiBTdG9lZmZjaGVuIHByb2JpZXJ0LCBkYXMgc2NobWVja3RlLCBhbHMgb2IKamVtYW5kIGRhcmluIGVpbmUgdmVyc2NobW9ydGUgRWxla3Ryb3BsYXRpbmUgZWluZ2VsZWd0IGhhZXR0ZS4gV2VubiBlaW5lcyBkZXIKdm9uIEdyaW1tYm9ybiBob2NoZ2Vsb2J0ZW4gU3Vic3RhbnplbiBtaXQgamVuZXIgaWRlbnRpc2NoIHNlaW4gc29sbHRlLCBkaWUgaWNoCm1hbCBiZWkgaWhtIHByb2JpZXJ0IGhhYmUsIGRhbm4ga2FubiBpY2ggbnVyIHNjaHdlcnN0ZW5zIGRhdm9uIGFicmF0ZW4sIGRlbQpNYW5uIElSR0VORFdBUyB6dSBnbGF1YmVuLiBNaXR0bGVyd2VpbGUgYmluIGljaCBkYSBza2VwdGlzY2ggLSBlciBiZWhhdXB0ZXQKbmFlbWxpY2ggYXVjaCwgZGFzcyBzZWluZSBoYW5mcHJvZHVrdGUgenUgbWVociBndXQgc2luZCBhbHMgenUgS29wZnNjaG1lcnplbi4KQWJlciB2aWVsbGVpY2h0IGJpbiBpY2ggYXVjaCB6dSBkb29mLCBkaWUgUXVhbGl0YWV0ZW4gZWluZXIgZ3V0IGR1cmNoZ2VnYXJ0ZW4KSGF1cHRwbGF0aW5lIG9kZXIgZWluZXMgYnJ1bW1zY2hhZWRlbHMgbWl0IDIgTWV0ZXJuIHVtZmFuZyBlbnRzcHJlY2hlbmQgenUKd3VlcmRpZ2VuLiAKT2RlciBHcmltbWJvcm4gaXN0IGVpbmZhY2ggbnVyIHBlcnZlcnMuLi4KCihIaW50IGhpbnQ6IERlciBhbHRlIFNjaHdlZGUgZnV0dGVydCBhdWNoIEZpc2NoZSwgZGllIHp3ZWkgSmFocmUgaW4KU2Nod2VkaXNjaGVuIEphdWNoZWdydWJlbiB2b3Igc2ljaCBoaW5nZWdhbW1lbHQgaGFiZW4sIGFsc28gYml0dGUga2VpbmUKdm9yZWlsaWdlbiBTY2hsdWVzc2UgOykKCkVuZ3kqIC0gRWhlbGllYnN0ZXIgdm9uIFBhbXBlcnMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClppdHRlcm4gbWFsIGFuZGVycyAoQXNtb2RpcywgMTQuIEp1bCAxOTk3LCAyMToxNzoxOCk6CkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCltBbGxnZW1laW46QVNNT0RJU10gd2lsbCBqZW1hbmQgbWl0IG5lciB6aXR0ZXJuLW1lbGR1bmcgaW4gc2NobWFycm4gPwpbQWxsZ2VtZWluOkFTTU9ESVMgZ3JpbnN0XQpbQWxsZ2VtZWluOkFTTU9ESVNdIHVwcHMsIHp1IHNwYWV0LCBibG9lZGVzIGxhZwpbQWxsZ2VtZWluOlJhbnRhbnBsYW4gdHJpdHQgQXNtb2RpcyB3b2hpbiA7LSldCltBbGxnZW1laW46RXRhaW4gdGFldHNjaGVsdCBhc21vZGlzXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKemF1YmVyZXIgKE1pbmRibGFkZSwgMTQuIEp1bCAxOTk3LCAyMTo0Mzo1OSk6CkR1IHNjaGF1c3QgdGllZiBpbiBkZW4gRGlhbWFudGVuIHVuZCBlcmhhZWxzdCBmb2xnZW5kZSBFaW5zaWNodDoKUGhseWFrZW4gaXN0IHp1ciBaZWl0IGRhIHVuZCBrYWVtcGZ0IGdlZ2VuOiBTa2lwcGVyLCBlaW4gS2FuaW5jaGVuLgoKCk1pbmQqLCBpbW1lciBncmluc2VuZCwgd2VubiBlciBhbiBaYXViZXJlciBkZW5rdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB6YXViZXJlciAoQXNtb2RpcywgMTQuIEp1bCAxOTk3LCAyMTo1NzowNSk6Cn4jISBybj1NaW5kYmxhZGUgcnQ9ODY4OTA5NDM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY4OTA5NDM5Ckh1Y2gsIFNraXBwZXIgaXN0IGVpbiBLYW5pbmNoZW4/IERvY2ggbmljaHQgZXR3YSBkYXMgZ3Jvc3NlIHdlaXNzZSAuLi4/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogQmxhZXR0ZXJ0ZWljaCB1c3cuIChWYW5pciwgMTQuIEp1bCAxOTk3LCAyMjoyOToyNCk6Cn4jISBybj1QYW1wZXJzIHJ0PTg2ODkwMTYyMSByZz1zY2htYXJybgp+IyEgdGlkPTg2ODE5OTk5MgoKaWNoIGthbm4gUGFtcGVycyBudXIgenVzdGltbWVuIC0gSEFOU0EgaXN0IGRhcyBiZXN0ZSBlaW5nZWRvc3RlIEJpZXIuIEVzIGlzdAp6dWRlbSBhdWNoIGRhcyBlaW56aWdlIEJpZXIsIHdhcyBwaXNzd2FybSBub2NoIHp1IGdlbmllc3NlbiBpc3QuIEljaCBiZXZvcnp1Z2UKZGllc2UgZWRlbGUgU29ydGUgaW1tZXIgZGFubiwgd2VubiBrZWluIEt1ZWhsc2NocmFuayB6dXIgaGFuZCBpc3QgKGNhbXBlbjopLgpBdXNzZXJkZW0gaGF0IGVzIGVpbiBndXRlcyBQcmVpcy1Ecm9laG4tVmVoYWVsdG5pcyB1bmQgZGVyIEtvcGZ1bWZhbmcgaXN0IGFtCm5hZWNoc3RlbiBUYWcgaW1tZXIgbm9jaCBkZXIgYWx0ZSAoaWNoIGZ1ZXIgbWVpbmVuIFRlaWwgaGF0dGUgdm9uIGRlbSBlZGxlbgpHZWJyYWV1IG5vY2ggTklFIGVpbmVuIEthdGVyIC0gdm9uIHdlc2VudGxpY2ggdGV1cmVyZW4gU29ydGVuIGFsbGVyZGluZ3Mgc2Nob24KZGVzIG9lZnRlcmVuKS4gCgpWYW5pci4KClAuUy46IFdhcyBzdGVodCBub2NoIGF1ZiBkZW4gc2NobXVja2VuIERvZXNjaGVuOiBIYW5zIEEuIHp1IEhBTlNBOiBIYXVwdHNhY2hlCkhBTlNBIGFsbGVzIGFuZGVyZSBpc3QgZXVlciBCaWVyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBCbGFldHRlcnRlaWNoIHVzdy4gKEppbWRpZ3JpeiwgMTQuIEp1bCAxOTk3LCAyMzoyNToxMyk6Cn4jISBybj1MdWcgcnQ9ODY4OTAxMjg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY4MTk5OTkyCkhpIEx1ZywKCk9rLCBtZWluIFNlbmYgenVtIE1hY2FsbGFuIChzbyBzY2hyZWlidCBzaWNoIGRlciBJTUhPKToKIFdpcmQgb2Z0IGFscyBSb2xsc1JveWNlIGJlemVpY2huZXQsIEdydW5kIGlzdCBkaWUgJ2VkbGUnIFJlaWZlLAogZGEgTWFjYWxsYW4gYXVzc3NjaGxpZXNzbGljaCBpbiBTaGVycnktRmFlc3Nlcm4gZ2VsYWdlcnQgd2lyZC4KIERhcyBoYXQgbmF0dWVybGljaCBlaW5lbiBzdGFya2VuIEVpbmZsdXNzIGF1ZiBkYXMgQXJvbWEsIAogd2VsY2hlciBtaXIgcGVyc29lbmxpY2ggenUgYXVmZHJpbmdsaWNoIGlzdCwgYmluIGRhaGVyIGtlaW4KIEZyZXVuZCBkZXNzZWxiZW4gKGVnYWwgd2VsY2hlcyBBbHRlciksIGFiZXIgZGFzIGlzdCBzaWNoZXIKIHBlcnNvZW5saWNoZSBHZXNjaG1hY2tzc2FjaGUuCgpNaWNoYWVsIEphY2tzb25zIFdoaXNreWZ1ZWhyZXIgaXN0IHNpY2hlciBlaW4gaW50ZXJlc2FubnRlcgpBbmhhbHRzcHVua3QsIHZvciBhbGxlbSB3ZWlsIGVyIGRpZSBHZXNjaG1hY2tzY2hhcmFjdGVyaXN0aWthCmRlciBXaGlza3lzIGd1dCBiZXNjaHJlaWJ0LCBzZWluIFJhbmtpbmcgaXN0IHdvaGwgZWhlcgphbnNpY2h0c2FjaGUuCkljaCBwZXJzb2VubGljaCBtYWcgYXVjaCBJc2xheXMgZ2FueiBnZXJuZS4KV29iZWkgaWNoIGRlbiBCb3dtb3JlIHVuZCBkZW4gQnVubmFoYWJoYWluIGVoZXIKZ2VnZW5zYWV0emxpY2ggZWluc3R1ZmVuIHd1ZXJkZSAoQm93bW9yZSBiZXNvbmRlcnMgJ3NhbHppZycsIApCdW5uYWhhYmhhaW4gbWlsZCBmdWVyIGVpbmVuIElzbGF5KS4KCkVpbmVuIEZhdm9yaXRlbiBoYWIgaWNoIG5pY2h0LCBhYmVyIHZvbiBkZW4gU3RhbmRhcmRzb3J0ZW4sCmRpZSBtYW4gc28ga2F1ZmVuIGthbm46IENyYWdnYW5tb3JlLCBMYWdhdnVsaW4sIExhcGhyb2lnLCAuLgoKSW50ZXJlc3NpZXJ0IHZlcm11dGxpY2ggZWggbmllbWFuZGVuIGF1c3NlciBkZW4gcGFhcgpXaGlza3ktS2VubmVyLCBldnRsIGtvZW5udGUgbWFuIGVpbmUgcnVicmlrIApzY2htYXJybi53aGlza3kgYXVmbWFjaGVuIG9kZXIgc28gOykKCkNpYW8sCiBKaW0gRGlHcml6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogQmxhZXR0ZXJ0ZWljaCB1c3cuIChMdWcsIDE0LiBKdWwgMTk5NywgMjM6Mjc6MjcpOgp+IyEgcm49VmFuaXIgcnQ9ODY4OTEyMTY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY4MTk5OTkyClp1ciBJbmZvcm1hdGlvbjoKClNhZW10bGljaGVzIERvc2VuYmllciBpc3QgcGFzdGV1cmlzaWVydCwgZC5oLi4gaW1tZXIgc2NobGVjaHRlciBhbHMKRmxhc2NoZW5iaWVyLgoKSWhyIEJpZXJzY2hhZW5kZXIhCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEJsYWV0dGVydGVpY2ggdXN3LiAoTHVnLCAxNC4gSnVsIDE5OTcsIDIzOjMwOjIxKToKfiMhIHJuPUppbWRpZ3JpeiBydD04Njg5MTU1MTMgcmc9c2NobWFycm4KfiMhIHRpZD04NjgxOTk5OTIKSG0sCgpXaGlza2V5IG9kZXIgV2hpc2t5IFJ1YnJpaz8gR3V0ZSBJZGVlIDspCkRlciBNYWNBbGxhbiwgaGF0IG5vY2ggYW5kZXJlIFZvcnp1ZWdlLCB6LkIuIGJlc3RlaGVuIGRpZSBhdWYgYWx0ZQpHZXRyZWlkZXNvcnRlbiB1bmQgd2VpdGVyZSB0cmFkaXRpb25lbGxlIE1ldGhvZGVuIChzaWVoZSBKYWNrc29uKQpBbnNvbnN0ZW4gc3RpbW1lIGljaCBEaXIgenUgOykKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpiaWVyIChKYXNwZXIsIDE1LiBKdWwgMTk5NywgMDA6NDk6MTEpOgpHZXdpZG1ldDogTWVpbmVyIEtvdHplIHZvbiBTb25udGFnIG1pdHRhZyA6UAoKICAgICAgICAgICAgICAgIFRvcCAxMCBSZWFzb25zIAogICAgICAgICAgIFdoeSBCZWVyIElzIEJldHRlciBUaGFuIFJlbGlnaW9uIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAKCiAxMC4gIE5vIG9uZSB3aWxsIGtpbGwgeW91IGZvciBub3QgZHJpbmtpbmcgQmVlci4gCgogIDkuICBCZWVyIGRvZXNuJ3QgdGVsbCB5b3UgaG93IHRvIGhhdmUgc2V4LiAKCiAgOC4gIEJlZXIgaGFzIG5ldmVyIGNhdXNlZCBhIG1ham9yIHdhci4gCgogIDcuICBUaGV5IGRvbid0IGZvcmNlIEJlZXIgb24gbWlub3JzIHdobyBjYW4ndCAKICAgICAgdGhpbmsgZm9yIHRoZW1zZWx2ZXMuIAoKICA2LiAgV2hlbiB5b3UgaGF2ZSBhIEJlZXIsIHlvdSBkb24ndCBrbm9jayBvbiAKICAgICAgcGVvcGxlJ3MgZG9vcnMgdHJ5aW5nIHRvIGdpdmUgaXQgYXdheS4gCgogIDUuICBOb2JvZHkncyBldmVyIGJlZW4gYnVybmVkIGF0IHRoZSBzdGFrZSwgCgogICAgICBoYW5nZWQsIG9yIHRvcnR1cmVkIG92ZXIgaGlzIGJyYW5kIG9mIEJlZXIuIAoKICA0LiAgWW91IGRvbid0IGhhdmUgdG8gd2FpdCAyMDAwKyB5ZWFycyBmb3IgYSAKICAgICAgc2Vjb25kIEJlZXIuIAoKICAzLiAgVGhlcmUgYXJlIGxhd3Mgc2F5aW5nIEJlZXIgbGFiZWxzIGNhbid0IGxpZSAKICAgICAgdG8geW91LiAKCiAgMi4gIFlvdSBjYW4gcHJvdmUgeW91IGhhdmUgYSBCZWVyLiAKCiAgMS4gIElmIHlvdSd2ZSBkZXZvdGVkIHlvdXIgbGlmZSB0byBCZWVyLCB0aGVyZSBhcmUgCiAgICAgIGdyb3VwcyB0byBoZWxwIHlvdSBzdG9wLiAKCgpQUzppbiBkZXIga290emUgYmVmYW5kZW4gc2ljaCBub2NoIGRldXRsaWNoZSBzcHVyZW4gZGVyIG1vemFyZWxsYSBwaXp6YSB2b20Kdm9yYWJlbmQuIGljaCBncnVlYmVsIGpldHp0LCBvYiBkYXMgbmljaHQgYmVzc2VyIG5hY2gga29jaHJlemVwdGUgcGFzc3QsIG5hamEKZ3JpbW1ib3JuIHdpcmRzIHNjaG9uIHJpY2h0ZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBiaWVyIChMdWcsIDE1LiBKdWwgMTk5NywgMDA6NTE6MjgpOgp+IyEgcm49SmFzcGVyIHJ0PTg2ODkyMDU1MSByZz1zY2htYXJybgp+IyEgdGlkPTg2ODkyMDU1MQpBZWhlbSBKYXNwZXIsCgppY2ggd2Vpc3MgbmljaHQsIG9iIER1IGVzIGdlbWVya3QgaGFzdC4gSW4gS290emUgc2luZCBpbW1lciBLYXJvdHRlbgooZ2V3dWVyZmVsdCkgenUgZmluZGVuIQoKR3J1c3MKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogQmxhZXR0ZXJ0ZWljaCB1c3cuIChQYW1wZXJzLCAxNS4gSnVsIDE5OTcsIDA4OjUzOjUwKToKfiMhIHJuPUx1ZyBydD04Njg5MTU2NDcgcmc9c2NobWFycm4KfiMhIHRpZD04NjgxOTk5OTIKWXVwcGllLgpCb3VyZ2VvdWlzZXIga2FwaXRhbGlzdGlzY2hlciBLbGFzc2VuZmVpbmQhCgpQYW1wZXJzLiBEb3NlbmJpZXIgbWFjaHQgc2NobGF1LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEJsYWV0dGVydGVpY2ggdXN3LiAoQ2F0d2VhemxlLCAxNS4gSnVsIDE5OTcsIDA5OjQ2OjQ2KToKfiMhIHJuPUx1ZyBydD04Njg5MDEyODkgcmc9c2NobWFycm4KfiMhIHRpZD04NjgxOTk5OTIKCk1laW4gSm9mLCBEdSBrZW5uc3QgRGljaCBqYSBhdWNoIG5vY2ggZ2VuYXVlc3RlbnMgZGFtaXQgYXVzIC4uLgpJY2ggZ2VuaWVzc2UgZGFzIFpldWcgd2VubiB1ZWJlcmhhdXB0IG51ciwgd2VubiBpY2ggd2VsY2hlbiBpbiBkaWUgRmluZ2VyCmtyaWVnZS4gRHUgc29sbHRlc3QgbWlyIHVuYmVkaW5ndCBkaWUgRmVpbmhlaXRlbiBtYWwgZ2VuYXVlciBlcmtsYWVyZW4sCm9kZXIgZWhlciBnZXNhZ3QgZGVtb25zdHJpZXJlbiA6LSkKCllUQwoKUFM6IEljaCBtdXNzIGRvY2ggd2llZGVyIGplbWFuZGVuIGZpbmRlbiwgZGVyIG1pdCBtaXIgd2V0dGV0IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU0lFR0VSLiA6LSkgKFBhbXBlcnMsIDE1LiBKdWwgMTk5NywgMTM6MTE6MzYpOgoKCkxvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zCkxvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zCkxvZ29uLi4uLi4uLi4uLi5zICBQYW1wZXJzLi4uLi4uLi4uegoKCgpFcnN0ZXIuIDotKQoKUGFtcGVycy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMTUuIEp1bCAxOTk3LCAxMzo0MTozMCk6CiJNYW4gbGllYnQgbnVyIGRhcywgd2FzIG1hbiBuaWNodCBnYW56IGJlc2l0enQuIiAoTS4gUHJvdXN0KQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJc3QgZGFzIElyb25pZT8gQWNyaW1vbiwgdWViZXJuZWhtZW4gU2llISAoSGFyZGlsLCAxNS4gSnVsIDE5OTcsIDE0OjQ2OjIxKToKCj4gdW50IHdhbGQKRHUgc3RlaHN0IGltIEJhbWJ1c3dhbGQhCj4gdW50IGJhbWJ1c3dhbGQKU293YXMgc2llaHN0IER1IGRhIG5pY2h0IQoKSW1tZXIgbm9jaCB2ZXJkdXR6dDogCi1IYXJkaWwuCk5OTi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTSUVHRVIuIDotKSAoR3JhbGtvciwgMTUuIEp1bCAxOTk3LCAxNTo0MzowOSk6Cn4jISBybj1QYW1wZXJzIHJ0PTg2ODk2NTA5NiByZz1zY2htYXJybgp+IyEgdGlkPTg2ODk2NTA5NgpJY2ggd3Vzc3RlIHNjaG9uIGltbWVyLCBkYXNzIGRpZSBuYXNzZSBXaW5kZWwgZWluICJaIiBpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClppdHRlcm4sIGRpZSAuLi4uIG5hIGlociB3aXNzdCBzY2hvbiAoQXNtb2RpcywgMTUuIEp1bCAxOTk3LCAxODo0NDo1Mik6CltUcnZlczpMYW15cmFdIG1vaW4gbW9qbiEKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KClRydmVzIGFid2VydGVuICEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgZGFzPyAoQWxwaGEsIDE1LiBKdWwgMTk5NywgMTk6NTA6MzEpOgpHcnVlbmUgU3RyYWhsZW4gZ2VoZW4gdm9tIFNhYmJlcmFtdWxldHQgYXVzIHVuZCB0cmVmZmVuIERlaW5lIEF1Z2VuLgpEdSBrYW5uc3Qgd2llZGVyIHNlaGVuLgpXaWUga2FubiBpY2ggZGllIFN0cmFobGVuIHNlaGVuLCBCRVZPUiBzaWUgbWVpbmUgQXVnZW4gdHJlZmZlbj8gTWFuLW8tbWFuLAprZWluZSBLYXVzYWxpdGFldC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdpZSBkYXM/IChLZXksIDE1LiBKdWwgMTk5NywgMTk6NTU6MjMpOgp+IyEgcm49QWxwaGEgcnQ9ODY4OTg5MDMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY4OTg5MDMxClN0ZWh0IGRhIGlyZ2VuZHdvIER1IFNJRUhTVCBncnVlbmUgU3RyYWhsZW4gLi4uLgoKRXJzdCBkZW5rZW4gZGFubiBsYWJlcm4KCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXaWUgZGFzPyAoQWxwaGEsIDE1LiBKdWwgMTk5NywgMTk6NTg6MTkpOgp+IyEgcm49S2V5IHJ0PTg2ODk4OTMyMyByZz1zY2htYXJybgp+IyEgdGlkPTg2ODk4OTAzMQpBbGxlcywgd2FzIGljaCBuaWNodCBpbiBpcmdlbmQhIGVpbmVyIFdlaXNlIHdhaHJuZWhtZW4ga2FubiwgZGFzIGlzdCBhdWNoCm5pY2h0LgpQLlMuOkhpbnRlciBEZW5rZW4ga29tbXQgbmVuIEtvbW1hLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBCbGFldHRlcnRlaWNoIHVzdy4gKEx1ZywgMTUuIEp1bCAxOTk3LCAyMzoyNzozOSk6Cn4jISBybj1QYW1wZXJzIHJ0PTg2ODk0OTYzMCByZz1zY2htYXJybgp+IyEgdGlkPTg2ODE5OTk5MgoKWXVwcGllPwpJY2g/ClBydXN0IDspCkJvdXJnZW91aXNlPyBLbGFyLCBidWVyZ2VybGljaCB1bmQgc3RvbHogZHJhdWYuCkthcGl0YWxpc3Rpc2NoPyBOZWUsIGFsdGVyIHNvemlhbGVyIE1hcmt0d2lydHNjaGFmdGxlci4KS2xhc3NlbmZlaW5kPyBXYXMgaXN0IGRlbm4gZGFzPwoKRG9zZW5iaWVyIGlzdCBkb29mIHVuZCBtYWNodCBkdW1tLgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk51ciB0b3RlIFp3ZXJnZSBzaW5kIGd1dGUgWndlcmdlISAoR2FzdDEsIDE2LiBKdWwgMTk5NywgMTA6MzQ6MjkpOgoKU2Nob2VuZSBEZXRhaWxiZXNjaHJlaWJ1bmc6Cgo+IHVudCB6d2VyZwpWb3IgRGlyIHRyZWlidCBlaW4gdG90ZXIgWndlcmcsIGRlciBzaWNoIG51biBuaWNodCBtZWhyIGZ1ZXIgc28gZ3Jvc3MgaGFlbHQuCkVyIGlzdCBzY2hvbiBldHdhcyBnZXNjaHdhZWNodC4KCgpIaWhpLCBHYXN0MSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT3Jha2VsIChab3JybywgMTYuIEp1bCAxOTk3LCAyMzo0ODo1Nik6CkFucmltIG1ldHplbHQgZ2VyYWRlIG9ya3MgLi4uLiB3ZXR0ZW4gZGFzcyBlciBnbGVpY2ggdG90IGlzdAp1bmdlc2Nobml0dGVuIC4uLgpPcmtoYXVzZW5lciBNYXJrdHBsYXR6LgpFcyBnaWJ0IGFjaHQgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWR3ZXN0ZW4sIHN1ZWRlbiwgd2VzdGVuLCBub3JkZW4sCm5vcmR3ZXN0ZW4sIG5vcmRvc3RlbiB1bmQgc3VlZG9zdGVuLgpFaW4gT3JrLgpFaW4gT3JrLgpFaW4gT3JrLgo+IFtBYmVudGV1ZXI6TGFteXJhXSBncmF0cyEgOykKdwpPcmtoYXVzZW5lciBNYXJrdHBsYXR6LgpFcyBnaWJ0IHNlY2hzIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4sIHdlc3Rlbiwgbm9yZGVuLCBub3Jkb3N0ZW4KdW5kIHN1ZWRvc3Rlbi4KRWluIE9yay4KRWluIE9yay4KRWluIE9yay4KPiBzbwpPcmtoYXVzZW5lciBNYXJrdHBsYXR6LgpFcyBnaWJ0IHNlY2hzIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4sIHdlc3Rlbiwgbm9yZGVuLCBub3Jkd2VzdGVuCnVuZCBub3Jkb3N0ZW4uCkVpbiBPcmsuCj4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdXBwcyAoTHVnLCAxNy4gSnVsIDE5OTcsIDAxOjUzOjIyKToKClNoYXJpYSBzZWduZXQgRGljaCBhdXMgZGVyIEZlcm5lLgpEdSBob2Vyc3QgZWluIEdyb2xsZW4uIERlciBWdWxrYW4gaXN0IHdpZWRlciBtYWwgYWt0aXYuCgpTb3dhcy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgZ2lidCBlcyBudXIgaW4gRmVybndlc3QgKEhhcmRpbCwgMTcuIEp1bCAxOTk3LCAxNDoxMDo1OSk6CkRpZSBMZWljaGUgZWluZXMgU2tlbGV0dHMuCkVpbiBUc2NoaWggTWVpLgo+IHVudCBsZWljaGUKRHUgc2llaHN0IGRpZSBzdGVyYmxpY2hlbiBVZWJlcnJlc3RlIGVpbmVzIFNrZWxldHRzLgoKU2VsdGVuIHNvIGdlbGFjaHQuIDopCgotSGFyZGlsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOi0pIChQYW1wZXJzLCAxNy4gSnVsIDE5OTcsIDE1OjUwOjUyKToKU3VuZmxvd2VyIHJ1ZnQ6IHJlIHNseQpEdSBydWZzdDogU3VuZmxvd2VyIGhhbHRzIE1hdWwuClNseWZveCBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCgoKVW5nZXNjaG5pdHRlbi4uLiAgOi0pCgpQYW1wZXJzLiBLaWNoZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbiBNb3JvbiAoUmluZ29yLCAxNy4gSnVsIDE5OTcsIDE2OjIzOjI5KToKTmV1bGljaCBpbiBNb3JvbjoKCldlZ2hpZXIgaG9wcHN0IGhlcmVpbi4KV2VnaGllciBuaW1tdCBlaW5lbiBFaW4gU2NobGFuZ2VuYmlzcy4KCkFsc28gbWVpbiBBZmZlIGxhZXNzdCBhdWNoIHdpcmtsaWNoIG5peCBsaWVnZW4uIDstKQoKUmluZ29yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCBpbiBNb3JvbiAoRGllZGVyLCAxNy4gSnVsIDE5OTcsIDE2OjI0OjQxKToKfiMhIHJuPVJpbmdvciBydD04NjkxNDk0MDkgcmc9c2NobWFycm4KfiMhIHRpZD04NjkxNDk0MDkKRWluIEFmZmUgbmFtZW5zIFdlZ2hpZXI/CgpBbHNvIGJlaSBtaXIgaGVpc3N0IG1laW4gVGVkZHkgc28sIHVuZCB3ZW5uIGRlciBtaWNoIGVpbiBsZXR6dGVzIE1hbCBrbnVkZGVsdApkYW5uIGF1Y2ggbWVpc3RlbnMgYmVpbSBXZWdoaWVyIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IEJsYWV0dGVydGVpY2ggdXN3LiAoQ2FyYWRocmFzLCAxOC4gSnVsIDE5OTcsIDIyOjAzOjA1KToKfiMhIHJuPUx1ZyBydD04Njg5MTU2NDcgcmc9c2NobWFycm4KfiMhIHRpZD04NjgxOTk5OTIKQmVpIEhhbnNhIGtvbW10cyBkb2NoIGF1ZiBkYXMgcGFzdGV1cmlzaWVyZW4gYXVjaCBuaWNodCBtZWhyCmRyYXVmIGFuLCBMdWNoLiAqc2NodWV0dGVsKgoKICAgICAgICAgICAgQmllcmJlcmNoIENhcmFkaHJhcwpQUzogTkVJTiwgTklDSFQgQmllcmJhdWNoISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IEJsYWV0dGVydGVpY2ggdXN3LiAoTHVnLCAxOC4gSnVsIDE5OTcsIDIzOjIyOjU3KToKfiMhIHJuPUNhcmFkaHJhcyBydD04NjkyNTYxODUgcmc9c2NobWFycm4KfiMhIHRpZD04NjgxOTk5OTIKClN0aW1tdCBDYXJhLiBCZWkgSGFuc2Egd2FlcmUgdmVyZHVuc3RlbiBiZXNzZXIgYWxzIHBhc3RldXJpc2llcmVuLiBBbGxlcmRpbmdzCndhZXJlIGRhcyBkYW5uIEx1ZnR2ZXJzY2htdXR6dW5nLgoKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpaaXR0ZXJuIChMdWcsIDE5LiBKdWwgMTk5NywgMDM6NTY6MDQpOgoKRHUgd2lua3N0IERlaW5lbiBGcmV1bmRlbiB6dS4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCkx1ZnR6dWc/Ckx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc28nbiBxdWFhYWFrIChSYWlkZW4sIDE5LiBKdWwgMTk5NywgMTY6NTA6NTYpOgpJY2ggaGF0dGUgZWluZSBrbGVpbmUgRGlza3Vzc2lvbiBtaXQgZWluZW0gZ2V3aXNzZW4gTWFnaWVyLAp3YXMgbWFubiBkZW5uIG1hbCBzbyBhbGxlcyBtaXQgYWxsZW4gc3BpZWxlcm4gYXVmIGVpbm1hbAphbnN0ZWxsZW4ga29lbm50ZS4uLgoKUGxvZXR6bGljaC4uLgoKCltBbGxnZW1laW46RnJvc2NoIFpvcnJvXSB3YXMgd2FyIGRhcwpFaW4gRnJvc2NoIGh1ZXBmdCBoZXJlaW4uCkVpbiBGcm9zY2ggaHVlcGZ0IG5hY2ggTm9yZGVuLgpbQWxsZ2VtZWluOkZyb3NjaCBUcmVrYW5dIHRzdHMKW0FsbGdlbWVpbjpGcm9zY2ggU2x5Zm94XSBEZXIgQnVnIGdhYidTIHNjaG9uIG1hbCwgYWxsZSB3dXJkZW4gZ2Vmcm9zY2h0LCBkYQpbQWxsZ2VtZWluOkZyb3NjaCBTbHlmb3hdIHdhciBUcm95IGFtIFdlcmsuCkVpbiBGcm9zY2ggcXVha3Q6IFF1YWFhaywgcXVhYWFhYWFrLCBxdXV1dWFhYWFhYWFhYWFhYWFhYWFhYWFhayAhIQpFaW4gRnJvc2NoIHF1YWt0OiBRdWFhYWssIHF1YWFhYWFhaywgcXV1dXVhYWFhYWFhYWFhYWFhYWFhYWFhYWsgISEKRWluIEZyb3NjaCBodWVwZnQgaGVyZWluLgpFaW4gRnJvc2NoIGh1ZXBmdCBuYWNoIFN1ZWRlbi4KW0FsbGdlbWVpbjpGcm9zY2ggTmFjaHR3aW5kIHJvZnRsdCEhIV0KW0FsbGdlbWVpbjpTdGluZ10gd2FzbiBoaWVyIGxvcyA/PyA6KApbQWxsZ2VtZWluOkZyb3NjaCBCZWxnYXJpYWRdIGhpZXIgZnJvc2NodCBlcyAqZ3JpbnMKW0FsbGdlbWVpbjpGcm9zY2ggTmFjaHR3aW5kXSBxdXVhawpbQWxsZ2VtZWluOkZyb3NjaCBTdXphbm5lXSBxdWFyawpbQWxsZ2VtZWluOkZyb3NjaCBGcm9naHVudGVyIHd1bmRlcnQgc2ljaC5dCltBbGxnZW1laW46RnJvc2NoIFNjYWxhcmVdIGFsbGVzIGlzIGZyb3NjaGlnCltBbGxnZW1laW46U3RpbmddIHdlbGNoZXIgaWRpb3QgIG1hY2h0IHNvIGVpbiBzY2hlaXNzID8KW0FsbGdlbWVpbjpGcm9zY2ggTmFjaHR3aW5kIGtyaWVndCBzaWNoIG5pY2h0IG1laHIgZWluIHZvciBsYWNoZW5dCltBbGxnZW1laW46RnJvc2NoIE5pcmRhdm9dIGhtLCBmdWVobHIgc2ljaCBoaWVyIGlyZ2VuZHdlciBmdWVyIGRpZXNlCltBbGxnZW1laW46RnJvc2NoIE5pcmRhdm9dIGZyb3NjaGxhd2luZSB2ZXJhbnR3b3J0bGljaD8KW0FsbGdlbWVpbjpGcm9zY2ggUmFpZGVuXSBlaW4gRnJvc2NoIHRlaWx0IERpciBtaXQ6IEthdW0genUKW0FsbGdlbWVpbjpGcm9zY2ggUmFpZGVuXSBnbGF1YmVuLCBhYmVyIGRhcyB3YXIgZWluCltBbGxnZW1laW46RnJvc2NoIE5pcmRhdm9dIHJvdGZsdCBtaXQKW0FiZW50ZXVlcjpGcm9zY2ggRWlzaV0gTWlzdCwgamV0enQgYmluIGljaCBhdWNoIG5vY2ggRnJvc2NoISBpY2ggaGFlbmcgaW1tZXIKW0FiZW50ZXVlcjpGcm9zY2ggRWlzaV0gbm9jaCBiZWkgVWtoYXppIHJ1bSAKKApbQWxsZ2VtZWluOkZyb3NjaCBSYWlkZW5dIGVpbiBGcm9zY2ggdGVpbHQgRGlyIG1pdDogQ29weSZwYXN0ZQpbQWxsZ2VtZWluOkZyb3NjaCBSYWlkZW5dIFVOZmFsbC4uLgpbQWxsZ2VtZWluOkZyb3NjaCBYWFhYWFhYXSAgSWNoIGZ1ZXJjaHRlLCBkYXMgaWNoIGRhcyB3YXIuLi4uCltBbGxnZW1laW46RnJvc2NoIFJhaWRlbiBsYWNodCBzaWNoIHNjaGxhcHBdCltBbGxnZW1laW46RnJvc2NoIEJlbGdhcmlhZF0gbWFjaCBkYXMgYml0dGUgd2llZGVyIHJ1ZWNrZ2FlbmdpIG1laW5lbiBzY2hvZW5lbgpbQWxsZ2VtZWluOkZyb3NjaCBCZWxnYXJpYWRdIHRpdGVsIGhhdCBlcyB6ZXJzY2hvc3NlbgpbQWxsZ2VtZWluOkZyb3NjaCBGcm9naHVudGVyIE11c3MgbWFsIHdpZWRlciBLcmVhdHVyZW4gdm9uIGlocmVtIEZyb3NjaGRhc2VpbgpiZWZyZWllbgopXQpbQWxsZ2VtZWluOkZyb3NjaCBOaXJkYXZvIGxhY2h0IGF1Y2ggbGF1dDogU2VsYnN0IGRlciBWZXVyc2FjaGVyIHd1cmRlIG5pY2h0CnZlcnNjaG9udCFdCltBbGxnZW1laW46RnJvc2NoIFhYWFhYWFhdIG51ciBkYXMgenVydWVja21hY2hlbiBrbGFwcHQgbmljaC4uLiA6KApbQWxsZ2VtZWluOkZyb3NjaCBFaXNpXSBvaGplISBXZW5uIG4gTWFnIG1hbCBMYW5nZXdlaWxlIGhhdCAuLi4KW0FsbGdlbWVpbjpHdW5kdXJdIG5hIGRhbm4gaGFiZW4gZGllIGtsZXJpa2VyIHdlbmlnc3RlbnMgd2FzIHp1bSB1ZWJlbgpbQWxsZ2VtZWluOkZyb3NjaCBNZWR1c2FdIGhpCltBbGxnZW1laW46RnJvc2NoIFByYSB2ZXJmbHVjaHQgRnJvc2NoIFhYWFhYWFguXQpbQWxsZ2VtZWluOkZyb3NjaCBYWFhYWFhYIGlzdCB3dXJzdG1hZ2llcl0KW0FsbGdlbWVpbjpGcm9zY2ggRnJvZ2h1bnRlciBsYWNodCBzaWNoIHNjaGxhcHAvXQpbQWxsZ2VtZWluOkZyb3NjaCBFaXNpIGxhY2h0IHNpY2ggbmVuIEFzdC5dCltBbGxnZW1laW46RnJvc2NoIE5pcmRhdm9dIGVoZXIgRnJvc2Noa29lbmlnIDotKQpbQWxsZ2VtZWluOlRvd2VyXSBFaW4gRnJvc2NoIHRlaWx0IERpciBtaXQ6IGljaCBlbnRmcm9zY2hlIGVyc3RtYWwgZWluZSBXZWlsZQpbQWxsZ2VtZWluOlRvd2VyXSA6LSkKW0FsbGdlbWVpbjpGcm9zY2ggQmVsZ2FyaWFkXSBuYSBwcmltYSBuaWNodCBtYWwgaW4gbmllYmVsaGVpbSBrYW5uIG1hbiBzaWNoCltBbGxnZW1laW46RnJvc2NoIEJlbGdhcmlhZF0gZW50ZnJvc2NoZW4gbGFzc2VuCltBbGxnZW1laW46RnJvc2NoIEZyb2dodW50ZXJdIE5hamEsIHdlbmlnc3RlbnMgc2luZCBkaWUgc3RhdHMgbm9ybWFsLgpbQWxsZ2VtZWluOlJpZGRsZXJdIHdpciBoYWJlbiB3aXJrbGljaCBhbmRlcmVzIHp1IHR1biA6KApbQWxsZ2VtZWluOlByYV0gbm9ybWFsPyBTdGFlcmtlIC0yOT8/CltBbGxnZW1laW46RnJvZ2h1bnRlcl0gSWNoIGJpbiBlbnRmcm9zY2h0IAopCltBbGxnZW1laW46QmVsZ2FyaWFkXSBzY2hvZW4gZnVlciBkaWNoIG1laW5lIHNpbmQgYmVpIC0zMApEdSB2ZXJ3YW5kZWxzdCBEaWNoIHp1cnVlY2sgaW4gRGVpbmUgbm9ybWFsZSBHZXN0YWx0CltBbGxnZW1laW46TmlyZGF2b10gYWgsIGltbWVyaGluCltBbGxnZW1laW46RnJvc2NoIEVpc2ldICoKW0FsbGdlbWVpbjpGcm9zY2ggWXVuZ2FmZWVdIGVudGZyb3NjaGFrdGlvbiBhbSBzYW5kdGlnZXI/CltBbGxnZW1laW46RWlzaV0gYWhoIQpbQWxsZ2VtZWluOlNjYWxhcmVdIGdlaHQgYXV0b21hdGlzY2gsIGJlaSBtaXIgamVkZW5mYWxscyBncmFkCltBbGxnZW1laW46Qmlqb3VdIEplbWFuZCBhdWYgZGVyIFNvbm5lbmluc2VsIGRlciBtaWNoIGVudGZyb3NjaGVuIGthbm4gPwpbQWxsZ2VtZWluOkJpam91XSBvb3BzLCBuaWNodCBtZWhyIG5vZXRpZwoKVmllbGVuIERhbmtlIGZ1ZXIgZGllc2VuIENvcHkmUGFzdGUtVW5mYWxsIDopClNlbHRlbiBzbyBnZWxhY2h0ISA6KSkKCihFeC0pRnJvc2NoIFJhaWRlbgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlcmFkZSBhdWYgZGVyIEF1dG9iYWhuLi4uIChEaWVkZXIsIDE5LiBKdWwgMTk5NywgMTg6NTk6NDApOgpIaSEKCkJpbiBnZXJhZGUgbWl0IENoZXN0ZXIgYXVmIGRlciBBNSBuYWNoIEthcmxzcnVoZSBnZWZhaHJlbi4uLgoKVW50ZXJ3ZWdzIHNlaGVuIHdpciB2b3IgdW5zIG5lbiB0b3RhbCB1ZWJlcmxhZGVuZW4gR29sZiwgZGVzc2VuIEhpbnRlcm4gZmFzdAphbSBCb2RlbiBoYWVuZ3QuLi4KCkRhcyBOdW1tZXJuc2NoaWxkOiBLLUVZIHh4eHgKCkljaDogaHVjaCwgaXN0IEtleSBhdWNoIHVudGVyd2Vncz8KQ2hlc3RlcjogSmEsIHVuZCBzbyB3aWUgZGVyIGhpbnRlbiBydW50ZXJoYWVuZ3Qgc2NobGVpZnQgZXIgc2VpbmUgZ2FuemVuIFRvZGUKbWl0IAouLi4KCkRpZWRlciwgcm90Zmx0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphZWggKEx1ZywgMjAuIEp1bCAxOTk3LCAwMToyMToxNyk6CkR1IHdhZWx6dCBEaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KTGlsbGVicm9yIGdlaHQgbmFjaCBPc3Rlbi4KRGVpbiBzY2hsZWNodGVzIEdld2lzc2VuIHZlcmxhZXNzdCBEaWNoLgoKSGFlaD8KTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmltb3NpdGFldGVuPyAoQmVuZGVpZ2lkLCAyMS4gSnVsIDE5OTcsIDExOjE4OjUzKToKIEVuZ3l3dWNrICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkhhdGUgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpBaGphLi4uLiBGZWlnaGVpdCB2b3IgZGVtIEZlaW5kPyBPZGVyLi4uLj8KCkJlbmRlaWdpZCwga2ljaGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV1bGljaCBpbiBNb3JvbiAoVGVkZHksIDIxLiBKdWwgMTk5NywgMTc6MjQ6MjcpOgp+IyEgcm49RGllZGVyIHJ0PTg2OTE0OTQ4MSByZz1zY2htYXJybgp+IyEgdGlkPTg2OTE0OTQwOQpJY2gga2FubiBkaWNoIGphIG1hbCBrbnVkZGVsbiwgdmllbGxlaWNodCBpc3QgZGllIFdpcmt1bmcgZGllIGdsZWljaGUuCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGltaW5nIChSaW5nb3IsIDIxLiBKdWwgMTk5NywgMjI6MDM6MzYpOgpOYWNoIGVpbmVtIGR1bW1lbiBSRUZSRVNIX0JPSU5HIHVuZCBtZWhyZXJlbiBUb2RlbiBkZXMgZWlnZW50bGljaGVuClZlcmFudHdvcnRsaWNoZW4gZnVlciBkaWUgQmVvYmFjaHR1bmcgZGVyIFN0ZXJuZW5rb25zdGVsbGF0aW9uZW4ga2FtIGRhbm4gZGFzLAp1bmdlc2Nobml0dGVuOgoKRHUgdGVpbHN0IE5hY2h0d2luZCBtaXQ6ICpzZXVmeiogLi4uIHdlbGNoZSBrb25zdGVsbGF0aW9uIGRhcmZzIGRlbm4gc2Vpbj8KTmFjaHR3aW5kIGlzdCBnZXJhZGUgbmljaHQgZGE6IG1pbnV0ZW5sYW5nZSBuZXR6aGFlbmdlciBhbiBkZXIgdGFnZXNvcmRudW5nIDooCiUmXiReJCMjISEhCioqKiogIExQIDE1MiAgIE1QIDI0ClZpZHJhaiAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoqKioqICBMUCAxNTMgICBNUCAyNQpEZWluIEZyZXVuZCBWaWRyYWogdGVpbHQgRGlyIG1pdDogSGlobwoqKioqICBMUCAxNTQgICBNUCAyNgpOYWNodHdpbmQgdGVpbHQgRGlyIG1pdDogZGFzIGRhdWVydCB6dSBsYW5nZS4uIGVzIHNlaSBkZW5uIHZlbnVzIGltIHJ5YW4gb2RlcgpOYWNodHdpbmQgdGVpbHQgRGlyIG1pdDogc2F0dXJuIGltIHNpbHZhbmEga29tbWVuIHNvZm9ydC4uLgoqKioqICBMUCAxNTUgICBNUCAyNwpEdSBzY2hhdXN0IGR1cmNoIGRhcyBUZWxlc2tvcCB1bmQgZXJzdGF1bnN0LiBPYndvaGwgZXMgaGVsbGljaHRlciBUYWcgaXN0LCAKa2FubnN0IER1IGRlbiBTdGVybmVuaGltbWVsIHNlaGVuISBNb21lbnRhbiBzdGVodCBoaWVyIGRpZSBWZW51cyBpbSBSeW5lLgoqClVuZCBlcyBoYXQgbm9jaCBnZXJlaWNodC4gRGFzIG5lbm5lIGljaCBtYWwgVGltaW5nIDotKQoKUmluZ29yLCBBdXNoaWxmcy1TdGVybmVuZ3Vja2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gZ2FueiBub3JtYWxlciBUYWcgaW4gZGVyIEFiZW50ZXVlcmdpbGRlIChBc21vZGlzLCAyMS4gSnVsIDE5OTcsIDIzOjE4OjEyKToKS251cnQga29tbXQgYW4uCktudXJ0IGtvbW10IGFuLgogIEtudXJ0IGdyZWlmdCBLbnVydCBtaXQgZWluZW0gTGFuZ3NjaHdlcnQgYW4uCiAgS251cnQgdmVyZmVobHQgS251cnQuCiAgS251cnQgZ3JlaWZ0IEtudXJ0IG1pdCBlaW5lbSBMYW5nc2Nod2VydCBhbi4KICBLbnVydCB2ZXJmZWhsdCBLbnVydC4KICBLbnVydCBncmVpZnQgS251cnQgbWl0IGVpbmVtIExhbmdzY2h3ZXJ0IGFuLgogIEtudXJ0IGtyYXR6dCBLbnVydC4KICBLbnVydCBncmVpZnQgS251cnQgbWl0IGVpbmVtIExhbmdzY2h3ZXJ0IGFuLgogIEtudXJ0IHZlcmZlaGx0IEtudXJ0LgogIEtudXJ0IGdyZWlmdCBLbnVydCBtaXQgZWluZW0gTGFuZ3NjaHdlcnQgYW4uCiAgS251cnQgdmVyZmVobHQgS251cnQuCiAgS251cnQgZ3JlaWZ0IEtudXJ0IG1pdCBlaW5lbSBMYW5nc2Nod2VydCBhbi4KICBLbnVydCB2ZXJmZWhsdCBLbnVydC4KS251cnQgc2FndDogaGlsZiBtaXIgbWFsIGVpbmVyCiAgIEtudXJ0IGdyZWlmdCBLbnVydCBtaXQgZWluZW0gTGFuZ3NjaHdlcnQgYW4uCiAgS251cnQgdmVyZmVobHQgS251cnQuCiAgS251cnQgZ3JlaWZ0IEtudXJ0IG1pdCBlaW5lbSBMYW5nc2Nod2VydCBhbi4KICBLbnVydCB0cmlmZnQgS251cnQuCltzY2hhdV0KRGVyIGdyb3NzZSBSYXVtIG1pdCBzZWluZXIgbmllZHJpZ2VuIERlY2tlIHVuZCBkZW4gZ3JvYiBnZXNjaG5pdHRlbmVuClF1ZXJiYWxrZW4gaGF0IFBsYXR6IGZ1ZXIgc2VociB2aWVsZSBQZXJzb25lbi4gS25hcnJlbmRlIERpZWxlbiBlcnphZWhsZW4KdWViZXIgSGVsZGVudGF0ZW4gbGFlbmdzdCB2ZXJnZXNzZW5lciBBYmVudGV1cmVyLCBiZXJ1ZWhtdGVyIGFscyBtYW5jaGVyCldlaXNlIHVuc2VyZXIgWmVpdC4KQWJlbnRldXJlciwgYWJlciBhdWNoIGFuZGVyZSBCZXdvaG5lciBkaWVzZXIgV2VsdCBrb21tZW4gaGllcmhlciwgdW0Kc2ljaCB6dSBpbmZvcm1pZXJlbiwgaWhyZSBFcmZhaHJ1bmdlbiBhdXN6dXRhdXNjaGVuIG9kZXIgc2ljaCBpbiBkZW4KdmVyc2NoaWVkZW5zdGVuIFdpc3NlbnNjaGFmdGVuIHp1IHZlcmJlc3Nlcm4uCkR1cmNoIGRpZSBpbW1lciBvZmZlbmUgVHVlciBzY2hlaW50IGRpZSBhdWZnZWhlbmRlIFNvbm5lIGhlcmVpbiB1bmQgZnVlbGx0CmRlbiBSYXVtIG1pdCBpaHJlbSBnb2xkZW5lbiBMaWNodC4gU29uc3QgZ2lidCBlcyBoaWVyIG51ciBub2NoIGRlbiBBdXNnYW5nCmltIE5vcmRlbiwgd2VsY2hlciBhdWYgZGllIEhhZmVuc3RyYXNzZSBmdWVocnQgdW5kIEJpbGRlciBhbiBkZW4gV2FlbmRlbiwKbWl0IFplaWNobnVuZ2VuIHVuZCBHZW1hZWxkZW4gdm9uIE1vcmdlbkdyYXVlbi4gRWlucyBkZXIgQmlsZGVyIGVybGFldXRlcnQKZGllIEZ1bmt0aW9uIGRlciBHaWxkZSB1bmQgZWluZSBncm9zc2UgVWhyIGFuIGRlciBXYW5kIHplaWd0LCB3YXMgZGllClN0dW5kZSBzY2hsYWVndC4gQW4gZWluZXIgYW5kZXJlbiBXYW5kIGhhZW5ndCBlaW5lIHN0ZWluZXJuZSBUYWZlbC4KTmFjaCBvYmVuIGZ1ZWhydCBlaW5lIFRyZXBwZSBpbiBkYXMgQnVlcm8gZGVzIEZvZXJkZXJ2ZXJlaW5zIFByb2pla3QKTW9yZ2VuR3JhdWVuIGUuVi4sIGRhcyBEdSB1bmJlZGluZ3QgYmVzdWNoZW4gc29sbHRlc3QuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvYmVuIHVuZCBub3JkZW4uCktudXJ0IGRlciBXaXJ0LgpLbnVydCBkZXIgV2lydC4KRWluIFNjaGFlZmVyaHVuZCBuYW1lbnMgWmVyYmVydXMuCk1hZ2llcmxlaHJsaW5nIE9ob28gd2lsbCBhbGxlbiBoZWxmZW4uCk1hZ2llcmxlaHJsaW5nIE1hbndlIGxhbmd3ZWlsdCBzaWNoIHRvZWRsaWNoLgpab3JybyBzaW5ndDogRGlyIGdpbmcncyBudXIgbm9jaCB1bSdzIE1lc3NlbiBEdSBiaXN0IGtlaW4gVmVybHVzdCAuLi4KRWluZSBaZWl0dW5nLgpFaW4gSGFuZGJ1Y2ggZnVlciBBbmZhZW5nZXIuCkVpbiBQYXJ0eWJyZXR0LiAoMikKPiAgIEtudXJ0IGdyZWlmdCBLbnVydCBtaXQgZWluZW0gTGFuZ3NjaHdlcnQgYW4uCiAgS251cnQgdmVyZmVobHQgS251cnQuCiAgS251cnQgZ3JlaWZ0IEtudXJ0IG1pdCBlaW5lbSBMYW5nc2Nod2VydCBhbi4KICBLbnVydCB2ZXJmZWhsdCBLbnVydC4KS251cnQgendpbmtlcnQuCktudXJ0cyBLb2VycGVyIGZhZW5ndCBhbiB6dSBzY2hpbW1lcm4uCiAgWm9ycm8gZ3JlaWZ0IEtudXJ0IG1pdCBlaW5lbSBWb2xsc3RyZWNrZXIgYW4uCiAgS251cnQgZ3JlaWZ0IEtudXJ0IG1pdCBlaW5lbSBMYW5nc2Nod2VydCBhbi4KICBLbnVydCB2ZXJmZWhsdCBLbnVydC4KICBLbnVydCBncmVpZnQgS251cnQgbWl0IGVpbmVtIExhbmdzY2h3ZXJ0IGFuLgogIEtudXJ0IGtpdHplbHQgS251cnQgYW0gQmF1Y2guClpvcnJvIGZldWVydCBlaW5lIGZyb3N0aWdlIEVpc3dvbGtlIGF1ZiBLbnVydCBhYi4KICBab3JybyBncmVpZnQgS251cnQgbWl0IGVpbmVtIFZvbGxzdHJlY2tlciBhbi4KICBLbnVydCBncmVpZnQgS251cnQgbWl0IGVpbmVtIExhbmdzY2h3ZXJ0IGFuLgogIEtudXJ0IHZlcmZlaGx0IEtudXJ0LgogIEtudXJ0IGdyZWlmdCBLbnVydCBtaXQgZWluZW0gTGFuZ3NjaHdlcnQgYW4uCiAgS251cnQga3JhdHp0IEtudXJ0Lgpab3JybyBmZXVlcnQgZWluZSBmcm9zdGlnZSBFaXN3b2xrZSBhdWYgS251cnQgYWIuCiAgWm9ycm8gZ3JlaWZ0IEtudXJ0IG1pdCBlaW5lbSBWb2xsc3RyZWNrZXIgYW4uCiAgS251cnQgZ3JlaWZ0IEtudXJ0IG1pdCBlaW5lbSBMYW5nc2Nod2VydCBhbi4KICBLbnVydCB2ZXJmZWhsdCBLbnVydC4KICBLbnVydCBncmVpZnQgS251cnQgbWl0IGVpbmVtIExhbmdzY2h3ZXJ0IGFuLgogIEtudXJ0IHZlcmZlaGx0IEtudXJ0LgpbdW50IGtudXJ0XQpEYXMgaXN0IEtudXJ0LiBFciBpc3QgZnVlciBlaW5lbiBIb2JiaXQgbWl0dGVsZ3Jvc3MuCkVyIGZ1ZWhsdGUgc2ljaCBoZXV0ZSBzY2hvbiBiZXNzZXIuCktudXJ0IGlzdCB2b24gZWluZW0gbWFnaXNjaGVuIFNjaGltbWVyIHVtZ2ViZW4uCkVyIGlzdCBGcmV1bmQgdm9uIEZvbmRvciwgU25vdHR5LCBNaW5kYmxhZGUsIE5haWFkLCBFaXNpLCBTbm91bCwgVGFycywgTm9ubmUKdW5kIFRob3J2aW4uCktudXJ0IGhhdCBlaW5lbiBTY2hpbGQsIGVpbmUgWGFudGktSG9zZSwgZWluZW4gSG9ybnBhbnplciwgZWluZSBTY2hsYW5nZW5oYXV0LAplaW4gUGFhciBTdGllZmVsLCBzY2h3YXJ6ZSBIYW5kc2NodWhlLCBlaW4gQW11bGV0dCB1bmQgZWluZSBCaWVyc2NodWVyemUgYW4sCmVpbiBMYW5nc2Nod2VydCBnZXp1ZWNrdCB1bmQgdHJhZWd0IGVpbiBGcmV1bmRzY2hhZnRzYmFuZCB1bmQgZWluIFBha2V0LiAKWm9ycm8gZmV1ZXJ0IGVpbmUgZnJvc3RpZ2UgRWlzd29sa2UgYXVmIEtudXJ0IGFiLgogIFpvcnJvIGdyZWlmdCBLbnVydCBtaXQgZWluZW0gVm9sbHN0cmVja2VyIGFuLgogIEtudXJ0IGdyZWlmdCBLbnVydCBtaXQgZWluZW0gTGFuZ3NjaHdlcnQgYW4uCiAgS251cnQgdmVyZmVobHQgS251cnQuCiAgS251cnQgZ3JlaWZ0IEtudXJ0IG1pdCBlaW5lbSBMYW5nc2Nod2VydCBhbi4KICBLbnVydCB2ZXJmZWhsdCBLbnVydC4KS251cnQgZ2VodCBuYWNoIE5vcmRlbi4KS251cnQgdmVyc2Nod2luZGV0IG1pdCBLbmFsbCB1bmQgU2Nod2VmZWxkdWZ0LgpLbnVydCBrb21tdCBhbi4KS251cnQga29tbXQgYW4uClt0b2V0ZSBrbnVydCAyXQogIFpvcnJvIGdyZWlmdCBLbnVydCBtaXQgZWluZW0gVm9sbHN0cmVja2VyIGFuLgogIEtudXJ0IGdyZWlmdCBLbnVydCBtaXQgZWluZW0gTGFuZ3NjaHdlcnQgYW4uCiAgS251cnQgdHJpZmZ0IEtudXJ0LgogICBLbnVydCBncmVpZnQgS251cnQgbWl0IGVpbmVtIExhbmdzY2h3ZXJ0IGFuLgogIEtudXJ0IHZlcmZlaGx0IEtudXJ0LgpPay4KICBEdSBncmVpZnN0IEtudXJ0IG1pdCBlaW5lbSBzZWhyIGdlbHVuZ2VuZW4gU290by1zaHV0by11Y2hpIGFuLgogIER1IHNjaGxhZWdzdCBLbnVydCB6dSBCcmVpLgogIFpvcnJvIGdyZWlmdCBLbnVydCBtaXQgZWluZW0gVm9sbHN0cmVja2VyIGFuLgpLbnVydCBnZWh0IG5hY2ggTm9yZGVuLgpEdSB2ZXJmb2xnc3QgamV0enQgS251cnQuCktudXJ0IGdlaHQuCltzY29yZV0KRGVpbiBOYW1lIGlzdCAiTmllbWFuZCBpc3QgdGV1Zmxpc2NoZXIgYWxzIEFzbW9kaXMgZGVyIGhvZmZudW5nc3ZvbGxlCkFuZmFlbmdlci4iCkR1IGhhc3QgZ2VudWcgU3R1ZmVucHVua3RlIGZ1ZXIgU3R1ZmUgNDYgdW5kIDI0MjUgKDIyMDgpIEFiZW50ZXVlcnB1bmt0ZSwKc293aWUgMjEwIExlYmVuc3B1bmt0ZSwgMTkwICgyMTApIE1hZ2llcHVua3RlIHVuZCA1NDIyMDI3NSBFcmZhaHJ1bmdzcHVua3RlLgpEdSBiZWZpbmRlc3QgRGljaCBhdWYgZGVyIFNwaWVsZXJzdHVmZSA0OC4KRGVpbmUgQXR0cmlidXRlIHNlaGVuIHNvIGF1czoKSW50ZWxsaWdlbno6IDIwICgrMSkgQXVzZGF1ZXI6IDIwICgrMSkgS3JhZnQ6IDIwICgrMSkgR2VzY2hpY2tsaWNoa2VpdDogMjAKKCszKQpWb3JzaWNodC1Nb2R1cyAoMTAwKQpBbHRlcjogIDMzMyBUYWdlIDIgU3R1bmRlbiAxIE1pbnV0ZSAxNiBTZWt1bmRlbi4KRGVpbiBDaGFyYWt0ZXIgaXN0IGd1dC4KVmVyZ2xpY2hlbiBtaXQgRGVpbmVuIE1pdHNwaWVsZXJuLCBrZW5uc3QgRHUgRGljaCBpbSBNb3JnZW5HcmF1ZW4gZ3V0IGF1cy4KQWJzb2x1dCBnZXNlaGVuIGJpc3QgRHUgZHVyY2hhdXMgc2Nob24gaGVydW1nZWtvbW1lbi4KRHUgYmlzdCBuaWNodCBhbnNwcmVjaGJhcjogImJlc2NoYWVmdGlndCIKRHUgdmVyZm9sZ3N0IEtudXJ0Lgpbc3RvcF0KS251cnQga29tbXQgYW4uCiAgRHUgZ3JlaWZzdCBLbnVydCBtaXQgZWluZW0gc2VociBnZWx1bmdlbmVuIFNvdG8tc2h1dG8tdWNoaSBhbi4KICBEdSBzY2hsYWVnc3QgS251cnQgenUgQnJlaS4KS251cnQgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpMYXJzXSBBc21vZGlzIGhhdCBnZXJhZGUgS251cnQgdW1nZWJyYWNodC4KT2suCltCZWlsZWlkOlJpbmdvcl0gaHVwcywgUEs/CltCZWlsZWlkOkhhbmdvdmVyXSBPaGEgOigKW0JlaWxlaWQ6TGludXggYXBwbGF1ZGllcnRdCltCZWlsZWlkOkFzbW9kaXNdIGh1cHBzLCB3b2xsdGUgZG9jaCBudXIgc2VpbiBzcGllZ2VsYmlsZCBlcnNjaGxhZ2VuCltCZWlsZWlkOlJpbmdvcl0gd2VsY2hlcyBsZWlkZXIga2VpbmUgdmVybnVlbmZ0aWdlIElEIGhhdCA6KApbQmVpbGVpZDpQYWtlXSBXdW5kZXI/CltCZWlsZWlkOkFzbW9kaXNdIG5hamEsIFd1cnplbCBpc3Qgc2NodWxkIDopCi4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaW4gZ2FueiBub3JtYWxlciBUYWcgaW4gZGVyIEFiZW50ZXVlcmdpbGRlIChHYXN0MiwgMjIuIEp1bCAxOTk3LCAxMzoyNDowNCk6Cn4jISBybj1Bc21vZGlzIHJ0PTg2OTUxOTg5MiByZz1zY2htYXJybgp+IyEgdGlkPTg2OTUxOTg5MgoKU2Nob25tYWwgZGllIElEICJzcGllZ2VsYmlsZCIgdmVyc3VjaHQ/IE5pY2h0IGltbWVyIGlzdCBXdXJ6ZWwgc2NodWxkLCB3ZW5uCmVpbiBTcGllbGVyIGR1cmNoIGRpZSBIYW5kIGVpbmVzIGFuZGVyZW4gc3RpcmJ0LgoKVmllbCBTcGFzcyBtaXQgZGVtIFBLLCBBc21vZGlzLi4uLiA7LSkKCkdhc3QyLCB3aXJkIHZvbiBHYXN0MiB2ZXJmb2xndC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWluIGdhbnogbm9ybWFsZXIgVGFnIGluIGRlciBBYmVudGV1ZXJnaWxkZSAoQXNtb2RpcywgMjIuIEp1bCAxOTk3LCAxOToyNjo1MCk6Cn4jISBybj1HYXN0MiBydD04Njk1NzA2NDQgcmc9c2NobWFycm4KfiMhIHRpZD04Njk1MTk4OTIKU2ljaGVyLCBhbiBzb3dhcyBkZW5rdCBtYW4gYWJlciBpbSBlcnN0ZW4gTW9tZW50IG5pY2h0LCB1bmQKd2VyIGlzdCB1ZWJlcmhhdXB0IEdhc3QyPz8gSGFzdCBkdSBBbmdzdCwgZGFzcyBkdSBhbHMgTmFlY2hzdGVyCmRyYW4gYmlzdCA/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbndpZGVyc3RlaGxpY2ggKEFsaW5lLCAyMy4gSnVsIDE5OTcsIDE2OjU3OjE5KToKZWJlbiBwYXNzaWVydDoKCk1ldGhlZHJhcyBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCkRlaW4gV2lsbGUgbGFlc3N0IG5hY2guCgoKVGphIGJlaSBtYW5jaGVuIHNjaGVpbmUgaWNoIHNjaHdhY2ggenUgd2VyZGVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW53aWRlcnN0ZWhsaWNoIChQYW1wZXJzLCAyMy4gSnVsIDE5OTcsIDE3OjExOjI5KToKfiMhIHJuPUFsaW5lIHJ0PTg2OTY2OTgzOSByZz1zY2htYXJybgp+IyEgdGlkPTg2OTY2OTgzOQpOYSwgZGFubiB3aWxsIGljaCBkYXMgbWFsIGxpZWJlciBuaWNodCByaXNraWVyZW4uIDstKQoKUGFtcGVycy4gSW1tZXIgbWFsIHdpZWRlciBnZXJuIGdlaGFlc3NpZy4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFaW4gZ2FueiBub3JtYWxlciBUYWcgaW4gZGVyIEFiZW50ZXVlcmdpbGRlIChHYXN0MiwgMjMuIEp1bCAxOTk3LCAyMDo1NToxMSk6Cn4jISBybj1Bc21vZGlzIHJ0PTg2OTU5MjQxMCByZz1zY2htYXJybgp+IyEgdGlkPTg2OTUxOTg5MgpIbSwgYXVzc2VyZGVtIGhhc3QgRHUgZXhwbGl6aXQgJ3RvZXRlIGtudXJ0IDInIGVpbmdlZ2ViZW4sIGRhbWl0IGVya2xhZXJzdCBEdQpqYSwgZ2FueiBlaW5kZXV0aWcsIGRhc3MgRHUgZGVuIFNwaWVsZXIgdW5kIG5pY2h0IHNlaW4gU3BpZWdlbGJpbGQgaGFiZW4Kd2lsbHN0LiBEZW5uIGRlciwgZGVyIGVpbmVuIGFuZGVyZW4gdmVyZm9sZ3QsIHN0ZWh0IGltIEludmVudG9yeSBlaW5lcyBSYXVtZXMKSU1NRVIgX3VlYmVyXyBkZW0gVmVyZm9sZ3Rlbi4KU2FnIG5pY2h0LCBkYXNzIER1IGRhcyBuaWNodCB3dXNzdGVzdCwgQXNtb2RpcyA6KQoKRWluIGZlaWdlciAodmVyZmxpeHQsIGViZW4gd2FyIGVyIGRvY2ggbm9jaCBkYSkgR2FzdDIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFaW4gZ2FueiBub3JtYWxlciBUYWcgaW4gZGVyIEFiZW50ZXVlcmdpbGRlIChLZXksIDI0LiBKdWwgMTk5NywgMDg6MTY6NDYpOgp+IyEgcm49R2FzdDIgcnQ9ODY5Njg0MTExIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY5NTE5ODkyCkVyIGhhdCB0b2V0ZSBLbnVydCAyIGVpbmdlZ2ViZW4gd2VpbCBlciBrbnVydCAxIHVudGVyc3VjaHRlIHVuZCBmZXN0c3RlbGx0ZQpkYXMgZGFzIGVoZXIgbmFjaCBlaW5lbSBub3JtYWxlbiBzcGllbGVyIGFscyBuYWNoIGlyZ2VuZGVpbmVtIHZlcmZvbGdldGVpbAphdXNzYWghCkdhc3QyIHNvbGx0ZXN0ZSBoaWVyIGVpbiBub3JtYWxlciBzcGllbGVyIHNlaW4gZGFubiBnaWIgZGljaCBtYWwgenUgZXJrZW5uZW4sCmRhbm4ga2FubiBtYW4gZGljaCBiZXNzZXIgZmVydGlnbWFjaGVuIDspCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1Y2ggbWFsIG5lbiBzY2hsZWNodGVuIGFydGlrZWwgc2NocmVpYmVuLiAoUGFtcGVycywgMjQuIEp1bCAxOTk3LCAxNzo0Njo1Myk6ClVuZ2VzY2huaXR0ZW46IFByYSBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LiAgICAgICAgIAoKUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFByYS4KRWluIGtsZWluZXIgS29ib2xkIHRlaWx0IERpciBmb2xnZW5kZXMgbWl0OgpQcmEgdmVyd3VzY2hlbHQgRGVpbmUgSGFhcmUgYXVzIGRlciBGZXJuZS4gWzE3OjQ1XQoKClBhbXBlcnMuIFdpZSBoYWIgaWNoIGRhcyBnZW1hY2h0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVjaCBtYWwgbmVuIHNjaGxlY2h0ZW4gYXJ0aWtlbCBzY2hyZWliZW4uIChQYW1wZXJzLCAyNC4gSnVsIDE5OTcsIDE3OjQ3OjU1KToKVW5nZXNjaG5pdHRlbjoKUHJhIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuIApQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgUHJhLgpFaW4ga2xlaW5lciBLb2JvbGQgdGVpbHQgRGlyIGZvbGdlbmRlcyBtaXQ6ClByYSB2ZXJ3dXNjaGVsdCBEZWluZSBIYWFyZSBhdXMgZGVyIEZlcm5lLiBbMTc6NDVdCgpQYW1wZXJzLiBTdGF1bnQuICBXaWUgaGFiIGljaCBkYXMgZ2VtYWNodD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEVpbiBnYW56IG5vcm1hbGVyIFRhZyBpbiBkZXIgQWJlbnRldWVyZ2lsZGUgKE11cGZlbCwgMjQuIEp1bCAxOTk3LCAxODoyMzo0Nik6Cn4jISBybj1LZXkgcnQ9ODY5NzI1MDA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY5NTE5ODkyCkRlciBUb25mYWxsIHZvbiBHYXN0MiBrb21tdCBtaXIgdm9uIGlyZ2VuZHdvaGVyIGJla2FubnQgdm9yLi4uCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ2hhb3MuLi4gKFByYSwgMjQuIEp1bCAxOTk3LCAxODo0OTowNCk6CmltbWVyIHNjaG9lbiwgd2VubiBqZW1hbmQgc2VsYmVyIEFudHdvcnRlbiBhdWYgc2VpbmUgRnJhZ2VuIGZpbmRldDoKCltDaGFvczpUZWRkeV0gS2FubiBtYW4gZXR3YXMgdWViZXJoYXVwdCBtaXQgQ2hhb3NiYWxsIHRyZWZmZW4/IDwxNzo1OTo0Mz4KW0NoYW9zOlRlZGR5XSBKYSA8MTc6NTk6NDk+CltDaGFvczpUZWRkeV0gSGF0IGdlcmFkZSBqZW1hbmQgZGFzIFVudGllciBnZWtpbGx0PyA8MTg6MjM6MDE+CltDaGFvczpUZWRkeV0gU2Nob24gZ3V0IDwxODoyMzoyOT4KW0NoYW9zOlRlZGR5XSBIZXksIGRpZSBNZXR6ZWwtUXVlc3QgYnVnZ3QgPDE4OjQ3OjM2PgpbQ2hhb3M6VGVkZHldIEFyZ2wsIG1pZW4gZmVobGVyIDwxODo0Nzo0Nj4KClByYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVpbiBnYW56IG5vcm1hbGVyIFRhZyBpbiBkZXIgQWJlbnRldWVyZ2lsZGUgKEFzbW9kaXMsIDI0LiBKdWwgMTk5NywgMjA6NTA6NDQpOgp+IyEgcm49R2FzdDIgcnQ9ODY5Njg0MTExIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY5NTE5ODkyClVuc2lubiwgd29oZXIgc29sbCBpY2ggc293YXMgd2lzc2VuID8gQXVzc2VyZGVtIGtvbW10cyBkcmF1ZiBhbiwgd2llIApkYXMgZ2Vwcm9nZ3QgaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFplaXRwbGFuIChIYXRlLCAyNS4gSnVsIDE5OTcsIDA4OjQ2OjQyKToKfiMhIG9uPUtleSBvdD04Njk3NzAyMTIgb2c9cGFydHkKfiMhIHJuPUNhdHdlYXpsZSBydD04Njk3NjY2NDMgcmc9cGFydHkKfiMhIHRpZD04Njk3NjY2NDMKSHVodSwKSGFiIGRhIG5lIGlkZWUgenVyIFJMLVF1ZXN0IDopKQpCZWkgZGVuIEVybGFuZ2VybiBzY2hvbiBnZXRlc3RldCwgaGF0IHdlciBpbnRlcmVzc2U/CgpLZXkgc2NobWFycm5lbmQgOikpCiwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWmVpdHBsYW4gKEhhdGUsIDI1LiBKdWwgMTk5NywgMDg6NDY6NDMpOgp+IyEgb249U3VuZmxvd2VyIG90PTg2OTc3MDQxOSBvZz1wYXJ0eQp+IyEgcm49S2V5IHJ0PTg2OTc3MDIxMiByZz1wYXJ0eQp+IyEgdGlkPTg2OTc2NjY0Mwp3ZWxjaGUgPyBmdWVsbGUga2V5IG1pdCBhbGtvaG9sIGFiLCBsYXNzIGtleSBhdWZzIGtsbyBnZWhlbiwgNSBtaW51dGVuIHNwYWV0ZXIKYmVnaW5udCBkYXM6IERpZSBTdWNoZSBuYWNoIEtleS4uCm9kZXIgd2VsY2hlIG1laW50ZXN0IGR1ID8KU3VuKgoKICAgICAgICAgICAgICAgICAgICAtLT09PSBibHVlbWNoZW4gPT09LS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFplaXRwbGFuIChIYXRlLCAyNS4gSnVsIDE5OTcsIDA4OjQ2OjQ0KToKfiMhIG9uPUtleSBvdD04Njk3NzA2NzUgb2c9cGFydHkKfiMhIHJuPVN1bmZsb3dlciBydD04Njk3NzA0MTkgcmc9cGFydHkKfiMhIHRpZD04Njk3NjY2NDMKCkdlbmF1IGRpZSEgLikpCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWmVpdHBsYW4gKEhhdGUsIDI1LiBKdWwgMTk5NywgMDg6NDY6NDUpOgp+IyEgb249RXNjdWJhciBvdD04Njk3ODEyNjEgb2c9cGFydHkKfiMhIHJuPUtleSBydD04Njk3NzAyMTIgcmc9cGFydHkKfiMhIHRpZD04Njk3NjY2NDMKCgpOaXggZGEgS2V5LCBEdSBrb21tc3Qgdm9uIEJlZ2lubiBhbiBiZWkgRmxhdmlhIGFuIGRpZSBLZXR0ZSEKCkVpc2JhZXIgRXNjdWJhciwga2VpbmUgTHVzdCBtZWhyIG5hY2ggS2V5IHp1IHN1Y2hlbiAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFplaXRwbGFuIChIYXRlLCAyNS4gSnVsIDE5OTcsIDA4OjQ2OjQ2KToKfiMhIG9uPUtleSBvdD04Njk3ODEzMzEgb2c9cGFydHkKfiMhIHJuPUVzY3ViYXIgcnQ9ODY5NzgxMjYxIHJnPXBhcnR5Cn4jISB0aWQ9ODY5NzY2NjQzCgpFY2h0PyA6KSkKCk5hIG1hbCBzZWhlbiBvYiBpY2ggbmV0IGRvY2ggZW50a29tbWUgOykgCkluIEIgaGF0dGUgaWNoIGRhIHNjaG9uIG1vZWdsaWNoa2VpdGVuIDspKQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBaZWl0cGxhbiAoSGF0ZSwgMjUuIEp1bCAxOTk3LCAwODo0Njo0Nyk6Cn4jISBvbj1GbGF2aWEgb3Q9ODY5NzgxNDQ5IG9nPXBhcnR5Cn4jISBybj1LZXkgcnQ9ODY5NzgxMzMxIHJnPXBhcnR5Cn4jISB0aWQ9ODY5NzY2NjQzCkhtLCB3ZW5uIER1IG1laW5zdC4uLi4KQWxzbyBkYW5uIGJyaW5nZSBpY2ggd2lya2xpY2ggSGFuZHNjaGVsbGVuIG1pdC4gOikKZmxhdgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogWmVpdHBsYW4gKEhhdGUsIDI1LiBKdWwgMTk5NywgMDg6NDY6NDgpOgp+IyEgb249THVnIG90PTg2OTc4MTc5NSBvZz1wYXJ0eQp+IyEgcm49RmxhdmlhIHJ0PTg2OTc4MTQ0OSByZz1wYXJ0eQp+IyEgdGlkPTg2OTc2NjY0MwoKVHNzcywKCm1hY2h0IGRvY2ggZ2xlaWNoIGVpbiBTdHVkaW8gYXVmIDspCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFplaXRwbGFuIChIYXRlLCAyNS4gSnVsIDE5OTcsIDA4OjQ2OjQ5KToKfiMhIG9uPUZsYXZpYSBvdD04Njk3ODE4NTUgb2c9cGFydHkKfiMhIHJuPUx1ZyBydD04Njk3ODE3OTUgcmc9cGFydHkKfiMhIHRpZD04Njk3NjY2NDMKV2llc28gTHVnLCBiaXN0IGludGVyZXNzaWVydD8KZmxhdiB0c2V0c2V0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBaZWl0cGxhbiAoSGF0ZSwgMjUuIEp1bCAxOTk3LCAwODo0Njo1MCk6Cn4jISBvbj1MdWcgb3Q9ODY5NzgxODgyIG9nPXBhcnR5Cn4jISBybj1GbGF2aWEgcnQ9ODY5NzgxODU1IHJnPXBhcnR5Cn4jISB0aWQ9ODY5NzY2NjQzCgpOYWphLAoKa29tbXQgZGFyYXVmIGFuIG9iIER1IGd1dCBhdXNzaWVoc3QgOykKCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogWmVpdHBsYW4gKEhhdGUsIDI1LiBKdWwgMTk5NywgMDg6NDY6NTEpOgp+IyEgb249S2V5IG90PTg2OTc4MTkwMCBvZz1wYXJ0eQp+IyEgcm49THVnIHJ0PTg2OTc4MTg4MiByZz1wYXJ0eQp+IyEgdGlkPTg2OTc2NjY0MwpIZXkgbWVpbmUgSGFuZHNjaGVsbGVuIQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBaZWl0cGxhbiAoSGF0ZSwgMjUuIEp1bCAxOTk3LCAwODo0Njo1Mik6Cn4jISBvbj1GbGF2aWEgb3Q9ODY5NzgxOTUzIG9nPXBhcnR5Cn4jISBybj1LZXkgcnQ9ODY5NzgxOTAwIHJnPXBhcnR5Cn4jISB0aWQ9ODY5NzY2NjQzCktlaW5lIEFuZ3N0IEtleSwgaWNoIHBhc3Mgc2Nob24gYXVmIGRpZSBIYW5kc2NoZWxsZW4gYXVmLgpmbGF2CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBaZWl0cGxhbiAoSGF0ZSwgMjUuIEp1bCAxOTk3LCAwODo0Njo1Myk6Cn4jISBvbj1TdW5mbG93ZXIgb3Q9ODY5NzgxOTcxIG9nPXBhcnR5Cn4jISBybj1LZXkgcnQ9ODY5NzgxOTAwIHJnPXBhcnR5Cn4jISB0aWQ9ODY5NzY2NjQzCmx1Zzogd2VubiBpY2ggamV0enQgc2FnZTogbmFqYSBicmluZ3QgbWl0IGZsYXZpYSB1bSwgYWxzbyBzYWcgaWNoOiBlcyBnZWh0IHNvCjotKQoKICAgICAgICAgICAgICAgICAgICAtLT09PSBibHVlbWNoZW4gPT09LS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBaZWl0cGxhbiAoSGF0ZSwgMjUuIEp1bCAxOTk3LCAwODo0Njo1NCk6Cn4jISBvbj1GbGF2aWEgb3Q9ODY5NzgyMDMzIG9nPXBhcnR5Cn4jISBybj1TdW5mbG93ZXIgcnQ9ODY5NzgxOTcxIHJnPXBhcnR5Cn4jISB0aWQ9ODY5NzY2NjQzCk5vZSBub2UsIGtlaW5lIEFuZ3N0IFN1bm55LCBpY2ggYnJpbmcgRGljaCBzY2hvbiBuaWNodCB1bS4gOikKSWNoIGJpbiBhdWNoIG5pY2h0IG1laW4gVHlwLgoKZmxhdgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFplaXRwbGFuIChIYXRlLCAyNS4gSnVsIDE5OTcsIDA4OjQ2OjU1KToKfiMhIG9uPVN1bmZsb3dlciBvdD04Njk3ODIwOTAgb2c9cGFydHkKfiMhIHJuPUZsYXZpYSBydD04Njk3ODIwMzMgcmc9cGFydHkKfiMhIHRpZD04Njk3NjY2NDMKYWJlciBrZXkgaXN0IHN1ZXNzIGx1ZyA6LSkgdm9yIGFsbGVtIHdlbm4gbWFuIGlobSBhbiBkZXIga2V5LWxlaW5lIHNwYXppZXJlbgpmdWVocnQgOi0pCgogICAgICAgICAgICAgICAgICAgIC0tPT09IGJsdWVtY2hlbiA9PT0tLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFplaXRwbGFuIChIYXRlLCAyNS4gSnVsIDE5OTcsIDA4OjQ2OjU2KToKfiMhIG9uPUVzY3ViYXIgb3Q9ODY5NzgyMTU5IG9nPXBhcnR5Cn4jISBybj1TdW5mbG93ZXIgcnQ9ODY5NzgyMDkwIHJnPXBhcnR5Cn4jISB0aWQ9ODY5NzY2NjQzCkRpZSBzaW5kIGJlaWRlIHNlaHIgc3Vlc3MgTHVnLCBhYmVyIGlyZ2VuZHdpZSB1bnBhc3NlbmQgZnVlciBlaW4gU00gU3R1ZGlvLAphdWNoIHdlbm4gZGVyIEtlcmwgYW0gQmFobnN0ZWlnIGdlbmF1IGRhcyBnZWRhY2h0IGhhdCA7KQoKRWlzYmFlciBFc2N1YmFyLCBpbW1lcm5vY2ggZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBaZWl0cGxhbiAoSGF0ZSwgMjUuIEp1bCAxOTk3LCAwODo0Njo1Nyk6Cn4jISBvbj1LZXkgb3Q9ODY5NzgyMTY3IG9nPXBhcnR5Cn4jISBybj1TdW5mbG93ZXIgcnQ9ODY5NzgyMDkwIHJnPXBhcnR5Cn4jISB0aWQ9ODY5NzY2NjQzClBGRkZGISEhCkljaCBiaW4gYm9lc2UsIGhhZXNzbGljaCB1bmQgY2hhb3Rpc2NoIDspCgpVbmQgZHUgc2NobWVpc3MgbmV0IHdpZWRlciBkZWluZSBicmlsbGUgd2VnIG5hY2ggZWluZXIgbW9yZ2VuZGxpY2hlbiBkdXNjaGUhCiwpPQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogWmVpdHBsYW4gKEhhdGUsIDI1LiBKdWwgMTk5NywgMDg6NDY6NTgpOgp+IyEgb249THVnIG90PTg2OTc4MjE4OSBvZz1wYXJ0eQp+IyEgcm49U3VuZmxvd2VyIHJ0PTg2OTc4MjA5MCByZz1wYXJ0eQp+IyEgdGlkPTg2OTc2NjY0MwpBZWggU3VubnksCgpuYXR1ZXJsaWNoIGlzdCBtaXIgS2V5IGJla2FubnQuIFNvbGx0ZSBGbGF2aWF3ZW5pZ2VyICJuaWVkbGljaCIgW05JRURMSUNIPz8/XQphbHMgS2V5IHNlaW4sIGRhbm4gYnJpbmcgaWNoIG1pciBlaW5lIGlubmVuIHZlcnNwaWVnZWx0ZSBTb25uZW5icmlsbGUgbWppdCA7KQoKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogWmVpdHBsYW4gKEhhdGUsIDI1LiBKdWwgMTk5NywgMDg6NDY6NTkpOgp+IyEgb249RmxhdmlhIG90PTg2OTc4MjIzNCBvZz1wYXJ0eQp+IyEgcm49S2V5IHJ0PTg2OTc4MjE2NyByZz1wYXJ0eQp+IyEgdGlkPTg2OTc2NjY0MwpOb2UsIG5pY2h0IGhhZXNzbGljaCBLZXksIHN1ZXNzIDopCgpmbGF2CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogWmVpdHBsYW4gKEhhdGUsIDI1LiBKdWwgMTk5NywgMDg6NDc6MDApOgp+IyEgb249S2V5IG90PTg2OTc4MjI0MiBvZz1wYXJ0eQp+IyEgcm49THVnIHJ0PTg2OTc4MjE4OSByZz1wYXJ0eQp+IyEgdGlkPTg2OTc2NjY0MwpIZXkgTHVnZXJsIHdvbGx0ZXN0ZSBtaWNoIG5ldG1hbCBhYnNjaGxlY2tlbiBhbHMgaWNoIGRpZSBGbGFzY2hlIHdoaXNrZXkKYmVpaGF0dGU/IDopKQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogWmVpdHBsYW4gKEhhdGUsIDI1LiBKdWwgMTk5NywgMDg6NDc6MDEpOgp+IyEgb249THVnIG90PTg2OTc4MjI0NCBvZz1wYXJ0eQp+IyEgcm49S2V5IHJ0PTg2OTc4MjE2NyByZz1wYXJ0eQp+IyEgdGlkPTg2OTc2NjY0MwpBVVNTRVJERU06CgpJY2ggYmluIHdlc2VudGxpY2ggZmllc2VyLCBncm9lc3NlciB1bmQgaGFlc3NsaWNoZXIgYWxzIEtleSEKCkthdWYgRXVjaCBTb25uZW5icmlsbGUhCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFplaXRwbGFuIChIYXRlLCAyNS4gSnVsIDE5OTcsIDA4OjQ3OjAyKToKfiMhIG9uPVN1bmZsb3dlciBvdD04Njk3ODIyNzggb2c9cGFydHkKfiMhIHJuPUx1ZyBydD04Njk3ODIxODkgcmc9cGFydHkKfiMhIHRpZD04Njk3NjY2NDMKZGllIGJyaWxsZSBpc3QgbWlyIHJ1bnRlcmdlZmFsbGVuIGtleSwgdW5kIGRhbm4gaXN0IGRhcyBnbGFzIGdlYnJvY2hlbiB1bmQgZGEKZGFzIGdlc3RlbGwgc293aWVzbyBrYXB1dHQgd2FyLCBoYWIgaWNoIGVzIHdlZ2dlc2NobWlzc2VuLi4uCgpobW0ga2V5IGlzdCB0cm90emRlbSBzdWVzc2VyIHVuZCBuaWVkbGljaGVyIHVuZCBpaG4ga2FubiBtYW4gaW1tZXIgc2Nob2VuIGRpZQpoYWFyZQoncid3dXNjaGVsbgoKICAgICAgICAgICAgICAgICAgICAtLT09PSBibHVlbWNoZW4gPT09LS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBaZWl0cGxhbiAoSGF0ZSwgMjUuIEp1bCAxOTk3LCAwODo0NzowMyk6Cn4jISBvbj1LZXkgb3Q9ODY5NzgyMjk4IG9nPXBhcnR5Cn4jISBybj1MdWcgcnQ9ODY5NzgyMjQ0IHJnPXBhcnR5Cn4jISB0aWQ9ODY5NzY2NjQzCkdyb2Vzc2VyLCBqYSAuLi4uCmZpZXNlcj8gbmllISBXZXIgaGF0IGRlbm4gbWVociBwa3M/IDopKQoKdW5kIGhhZXNzbGljaGVyPyBUcmFldW0gd2VpdGVyIHN1ZXNzZXIgOykpCgprZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBaZWl0cGxhbiAoSGF0ZSwgMjUuIEp1bCAxOTk3LCAwODo0NzowNCk6Cn4jISBvbj1MdWcgb3Q9ODY5NzgyMzAyIG9nPXBhcnR5Cn4jISBybj1LZXkgcnQ9ODY5NzgyMjQyIHJnPXBhcnR5Cn4jISB0aWQ9ODY5NzY2NjQzCgpOaWNodCBtYWwgZnVlciBlaW5lbiBDYXNrIFN0cmVuZ3RoIDEyNSBKYWhyZSBhbHRlbiBNYWx0LCB3dWVyZGUgaWNoIERpY2gKYW5zY2hsZWNrZW4uLi4KU2NodWV0dGVsIQpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBaZWl0cGxhbiAoSGF0ZSwgMjUuIEp1bCAxOTk3LCAwODo0NzowNSk6Cn4jISBvbj1LZXkgb3Q9ODY5NzgyMzUyIG9nPXBhcnR5Cn4jISBybj1MdWcgcnQ9ODY5NzgyMzAyIHJnPXBhcnR5Cn4jISB0aWQ9ODY5NzY2NjQzCldhcyBmdWVybiBUZWlsPyA7KSkKV2V0dGVuIGRvY2g/ICpsYWNoKgoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogWmVpdHBsYW4gKEhhdGUsIDI1LiBKdWwgMTk5NywgMDg6NDc6MDYpOgp+IyEgb249THVnIG90PTg2OTc4MjM5MyBvZz1wYXJ0eQp+IyEgcm49S2V5IHJ0PTg2OTc4MjI5OCByZz1wYXJ0eQp+IyEgdGlkPTg2OTc2NjY0MwoKTmF0dWVybGljaCBmaWVzZXIuIEZyYWcgbWFsIExhbXlyYSBvZGVyIExpbGxlYnJvciA7KQoKVW5kIHNlbGJzdHZlcnN0YWVuZGxpY2ggaGFlc3NsaWNoZXIsIGRlc2hhbGIgcmVubmVuIGRpZSBGcmF1ZW4gamEgYXVjaCBpbW1lcgphdXMgbWVpbmVyIGluIERlaW5lIFJpY2h0dW5nIEtleSEKCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFplaXRwbGFuIChIYXRlLCAyNS4gSnVsIDE5OTcsIDA4OjQ3OjA3KToKfiMhIG9uPUtleSBvdD04Njk3ODI0Mjkgb2c9cGFydHkKfiMhIHJuPUx1ZyBydD04Njk3ODIzOTMgcmc9cGFydHkKfiMhIHRpZD04Njk3NjY2NDMKRnJhdWVuPz8/IFdvPwpIYWIgc2VpdCBqYWhyZW4ga2VpbmUgbWVociBnZXNlaGVuIDspCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBaZWl0cGxhbiAoSGF0ZSwgMjUuIEp1bCAxOTk3LCAwODo0NzowOCk6Cn4jISBvbj1GbGF2aWEgb3Q9ODY5NzgyNDgzIG9nPXBhcnR5Cn4jISBybj1LZXkgcnQ9ODY5NzgyNDI5IHJnPXBhcnR5Cn4jISB0aWQ9ODY5NzY2NjQzCkRhcyBrb21tdCBkYXZvbiwgd2VubiBEdSBEaWNoIGltbWVyIG1pdCBtdWRkZXJpbm5lbiB1bWdpYnN0LgpGbGF2IGdyaW5zdCBmcmVjaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBaZWl0cGxhbiAoSGF0ZSwgMjUuIEp1bCAxOTk3LCAwODo0NzowOSk6Cn4jISBvbj1TdW5mbG93ZXIgb3Q9ODY5NzgyNTE5IG9nPXBhcnR5Cn4jISBybj1LZXkgcnQ9ODY5NzgyNDI5IHJnPXBhcnR5Cn4jISB0aWQ9ODY5NzY2NjQzCmtleSBobW0gYmVoYXVwdGVzdCBkdSAgZGEgZXR3YSBmbGF2aWEgd2FlciBrZWluZS4uLmhtbSBuYWphIGlyZ2VuZHdpZSBzYWggc2llCm5vY2ggYXVzIHdpZSB3YXMgd2VpYmxpY2hlbiwgYWJlciBpY2ggaGF0dGUgc2Nob24gZWluIHdlbmlnIGJpZXIgZ2V0cnVua2VuIHVuZAptZWluZSBicmlsbGUgdmVybG9ycmVuCgogICAgICAgICAgICAgICAgICAgIC0tPT09IGJsdWVtY2hlbiA9PT0tLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IFplaXRwbGFuIChIYXRlLCAyNS4gSnVsIDE5OTcsIDA4OjQ3OjEwKToKfiMhIG9uPUtleSBvdD04Njk3ODI1OTMgb2c9cGFydHkKfiMhIHJuPVN1bmZsb3dlciBydD04Njk3ODI1MTkgcmc9cGFydHkKfiMhIHRpZD04Njk3NjY2NDMKSG1tIGljaCBzYWNoIG51ciBzb3ZpZWw6CkljaCBoYWIgQUxMRU4hIEZyYXVlbiwgdW5kIG51ciBkZW4gRnJhdWVuIGFtIFRpc2NoIGVpbmUgUm9zZSBnZXNjaGVua3QgOykgTmFqYQpva2kgS2Fubml4IGhhYiBpY2ggdmVyZ2Vzc2VuIDspKQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogWmVpdHBsYW4gKEhhdGUsIDI1LiBKdWwgMTk5NywgMDg6NDc6MTEpOgp+IyEgb249THVnIG90PTg2OTc4MjY0MyBvZz1wYXJ0eQp+IyEgcm49S2V5IHJ0PTg2OTc4MjU5MyByZz1wYXJ0eQp+IyEgdGlkPTg2OTc2NjY0MwoKSGFoIQoKRGVyIEJld2VpcyEgU293YXMgd3VlcmRlIGljaCBuaWUsIG5pZSwgbmllIHR1biEKCkx1ZwosCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogWmVpdHBsYW4gKEhhdGUsIDI1LiBKdWwgMTk5NywgMDg6NDc6MTIpOgp+IyEgb249U3VuZmxvd2VyIG90PTg2OTc4MjY1NSBvZz1wYXJ0eQp+IyEgcm49S2V5IHJ0PTg2OTc4MjU5MyByZz1wYXJ0eQp+IyEgdGlkPTg2OTc2NjY0Mwp3YXMgaWNoIGhhYiBrZWluZSByb3NlIGJla29tbWVuLi4uZGFzIG1lcmsgaWNoIG1pciAhISBzbyBlaW5lIG1pbnV0ZSBsYW5nIGtlaW4Kcnd1c2NoZWwga2V5ICEhISEKCgogICAgICAgICAgICAgICAgICAgIC0tPT09IGJsdWVtY2hlbiA9PT0tLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IFplaXRwbGFuIChIYXRlLCAyNS4gSnVsIDE5OTcsIDA4OjQ3OjEzKToKfiMhIG9uPUtleSBvdD04Njk3ODI2ODUgb2c9cGFydHkKfiMhIHJuPUx1ZyBydD04Njk3ODI2NDMgcmc9cGFydHkKfiMhIHRpZD04Njk3NjY2NDMKU2FjaHQgZGllIEphbml0emUgd2FzIGx1Zz8gOykpCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBaZWl0cGxhbiAoSGF0ZSwgMjUuIEp1bCAxOTk3LCAwODo0NzoxNCk6Cn4jISBvbj1Fc2N1YmFyIG90PTg2OTc4Mjk3MiBvZz1wYXJ0eQp+IyEgcm49S2V5IHJ0PTg2OTc4MjU5MyByZz1wYXJ0eQp+IyEgdGlkPTg2OTc2NjY0MwpEYXMgd2lyZCBzaWUgRGlyIHNpY2hlciBuaWUgdmVyemVpaGVuIEtleSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBaZWl0cGxhbiAoSGF0ZSwgMjUuIEp1bCAxOTk3LCAwODo0NzoxNSk6Cn4jISBvbj1Hbm9tZSBvdD04Njk4MTI1NDUgb2c9cGFydHkKfiMhIHJuPUtleSBydD04Njk3ODI1OTMgcmc9cGFydHkKfiMhIHRpZD04Njk3NjY2NDMKaG1tLi4uIGtleSwKZGFzIGhhYiBpY2ggc293aWVzbyBuZXQgdmVyc3RhbmRlbi4uLgpkZXIgZWluemlnZW4sIGJlaSBkZXIgZXMgc2ljaCBnZWxvaG50IGhhZXR0ZSwgc2NoZW5rc3QgZHUga2VpbmUgcm9zZS4uLiA7LSkpKQoKZ25PbWUgZ2VodCBzY2hvbiBtYWwgaW4gZGVja3VuZy4uLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhpaGkgKFpvcnJvLCAyNS4gSnVsIDE5OTcsIDEzOjM4OjIxKToKRHUgaGFzdCBqZXR6dCAyMDcgTGViZW5zcHVua3RlIHVuZCAxMjcgTWFnaWVwdW5rdGUuCiAgRHUgZ3JlaWZzdCBkZW4gV3VyemVsendlcmcgbWl0IGRlbSBWb2xsc3RyZWNrZXIgYW4uCiAgRHUga2l0emVsc3QgZGVuIFd1cnplbHp3ZXJnIGFtIEJhdWNoLgogIEVpbiBXdXJ6ZWx6d2VyZyBncmVpZnQgVHV0c3p0IG1pdCBlaW5lbSByaWVzaWdlbiBTdHJlaXRrb2xiZW4gYW4uCiAgRGVyIFd1cnplbHp3ZXJnIHNjaGxhZWd0IFR1dHN6dCB6dSBCcmVpLgogIEVpbiBXdXJ6ZWx6d2VyZyBncmVpZnQgVHV0c3p0IG1pdCBlaW5lbSByaWVzaWdlbiBTdHJlaXRrb2xiZW4gYW4uCiAgRGVyIFd1cnplbHp3ZXJnIHplcnNjaG1ldHRlcnQgVHV0c3p0IGluIGtsZWluZSBTdHVlY2tjaGVuLgogIEVpbiBXdXJ6ZWx6d2VyZyBncmVpZnQgVHV0c3p0IG1pdCBlaW5lbSByaWVzaWdlbiBTdHJlaXRrb2xiZW4gYW4uClR1dHN6dCB3ZWljaHQgZGVtIEFuZ3JpZmYgYXVzLgogIERlciBXdXJ6ZWx6d2VyZyB6ZXJzY2htZXR0ZXJ0IERpY2ggaW4ga2xlaW5lIFN0dWVja2NoZW4uCkR1IGhhc3QgamV0enQgMTY2IExlYmVuc3B1bmt0ZSB1bmQgMTI3IE1hZ2llcHVua3RlLgogIEVpbiBXdXJ6ZWx6d2VyZyBncmVpZnQgVHV0c3p0IG1pdCBlaW5lbSByaWVzaWdlbiBTdHJlaXRrb2xiZW4gYW4uCiAgRGVyIFd1cnplbHp3ZXJnIHNjaGxhZWd0IFR1dHN6dCB6dSBCcmVpLgogIERlciBXdXJ6ZWx6d2VyZyBncmVpZnQgRGljaCBtaXQgZWluZW0gcmllc2lnZW4gU3RyZWl0a29sYmVuIGFuLgogIERlciBXdXJ6ZWx6d2VyZyB0cmlmZnQgRGljaCBzZWhyIGhhcnQuCkR1IGhhc3QgamV0enQgMTUyIExlYmVuc3B1bmt0ZSB1bmQgMTI3IE1hZ2llcHVua3RlLgogIEVpbiBXdXJ6ZWx6d2VyZyBncmVpZnQgVHV0c3p0IG1pdCBlaW5lbSByaWVzaWdlbiBTdHJlaXRrb2xiZW4gYW4uCiAgRGVyIFd1cnplbHp3ZXJnIHRyaWZmdCBUdXRzenQgc2VociBoYXJ0LgogIEVpbiBXdXJ6ZWx6d2VyZyBncmVpZnQgVHV0c3p0IG1pdCBlaW5lbSByaWVzaWdlbiBTdHJlaXRrb2xiZW4gYW4uClR1dHN6dCB3ZWljaHQgZGVtIEFuZ3JpZmYgYXVzLgogIERlciBXdXJ6ZWx6d2VyZyB6ZXJzY2htZXR0ZXJ0IERpY2ggaW4ga2xlaW5lIFN0dWVja2NoZW4uCkR1IGhhc3QgamV0enQgMTE1IExlYmVuc3B1bmt0ZSB1bmQgMTI3IE1hZ2llcHVua3RlLgogIERlciBXdXJ6ZWx6d2VyZyBncmVpZnQgRGljaCBtaXQgZWluZW0gcmllc2lnZW4gU3RyZWl0a29sYmVuIGFuLgogIERlciBXdXJ6ZWx6d2VyZyB2ZXJmZWhsdCBEaWNoLgogIERlciBXdXJ6ZWx6d2VyZyBncmVpZnQgRGljaCBtaXQgZWluZW0gcmllc2lnZW4gU3RyZWl0a29sYmVuIGFuLgogIERlciBXdXJ6ZWx6d2VyZyB2ZXJmZWhsdCBEaWNoLgogIEVpbiBXdXJ6ZWx6d2VyZyBncmVpZnQgVHV0c3p0IG1pdCBlaW5lbSByaWVzaWdlbiBTdHJlaXRrb2xiZW4gYW4uClR1dHN6dCB3ZWljaHQgZGVtIEFuZ3JpZmYgYXVzLgogIERlciBXdXJ6ZWx6d2VyZyBzY2hsYWVndCBEaWNoIHp1IEJyZWkuCkR1IGhhc3QgamV0enQgNDYgTGViZW5zcHVua3RlIHVuZCAxMjcgTWFnaWVwdW5rdGUuCiAgRGVyIFd1cnplbHp3ZXJnIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSByaWVzaWdlbiBTdHJlaXRrb2xiZW4gYW4uCk1hdHJpeDogRWluIFd1cnplbHp3ZXJnIGlzdCBsZWljaHQgYW5nZWtyYXR6dC4KICBEZXIgV3VyemVsendlcmcgdHJpZmZ0IERpY2guCkR1IGhhc3QgamV0enQgNDIgTGViZW5zcHVua3RlIHVuZCAxMjcgTWFnaWVwdW5rdGUuCiAgRWluIFd1cnplbHp3ZXJnIGdyZWlmdCBUdXRzenQgbWl0IGVpbmVtIHJpZXNpZ2VuIFN0cmVpdGtvbGJlbiBhbi4KICBEZXIgV3VyemVsendlcmcgdHJpZmZ0IFR1dHN6dCBzZWhyIGhhcnQuCiAgRGVyIFd1cnplbHp3ZXJnIGdyZWlmdCBEaWNoIG1pdCBlaW5lbSByaWVzaWdlbiBTdHJlaXRrb2xiZW4gYW4uCiAgRGVyIFd1cnplbHp3ZXJnIHNjaGxhZWd0IERpY2ggenUgQnJlaS4KRGllIE1vbGx1c2tlIGlzdCBmZXN0IG1pdCBEZWluZXIgSGF1dCB2ZXJ3YWNoc2VuIQpEdSBrYW5uc3QgZWluZSBjaGFvdGlzY2ggbXV0aWVydGUgSGF1dCBuaWNodCBhdXN6aWVoZW4uCltUb2Q6TGFyc10gRWluIFd1cnplbHp3ZXJnIGhhdCBnZXJhZGUgWm9ycm8gdW1nZWJyYWNodC4KW1RvZDpFaW4gV3VyemVsendlcmddIElrIGhhdiBoYWVobWlzY2hlIEtvbWVudGFhcmUgbml4IG5vZXRpc2NoIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFplaXRwbGFuIChIYXJkaWwsIDI1LiBKdWwgMTk5NywgMTQ6MDE6MjkpOgp+IyEgcm49SGF0ZSBydD04Njk4MTMyMzAgcmc9c2NobWFycm4KfiMhIHRpZD04Njk3NjY2NDMKCktleSBzY2hyaWViOgpIbW0gaWNoIHNhY2ggbnVyIHNvdmllbDoKSWNoIGhhYiBBTExFTiEgRnJhdWVuLCB1bmQgbnVyIGRlbiBGcmF1ZW4gYW0gVGlzY2ggZWluZSBSb3NlIGdlc2NoZW5rdCA7KSBOYWphCm9raSBLYW5uaXggaGFiIGljaCB2ZXJnZXNzZW4gOykpCgoKSG1tbS4gSGFiZW4gUGFtZXBycyB1bmQgaWNoIGF1Y2ggbWFsLiBad2FyIG5pY2h0IGFsbGVuIEZyYXVlbiwgc29uZGVybiBudXIKTGFpbGEuCkRpZSB3b2xsdGUgZGFzIGFiZXIgd2lncm5lZHdpZSBuaWNodC4gOi0pCgotSGFyZGlsLiBMYWNodCBzaWNoIGltbWVyIG5vY2ggc2NoZWNraWcgdWViZXIgZGVuIFN0YW1tdGlzY2ggZGFtYWxzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IENoYW9zLi4uIChUZWRkeSwgMjUuIEp1bCAxOTk3LCAxNToyNTozOCk6Cn4jISBybj1QcmEgcnQ9ODY5NzYyOTQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY5NzYyOTQ0Cm5hamEsIHdlbm4gc29uc3Qga2VpbmVyIGFudHdvcnRldCwgd2lsbCBpY2ggbWljaCBqYSBhdWNoIG5pY2h0IGR1bW0gc3RlcmJlbgpsYXNzZW4uIDspCgpUZWRkeS4gSGF0JyBkaWUgUXVlc3QgZW5kbGljaCBoaW50ZXIgc2ljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBaZWl0cGxhbiAoVGVkZHksIDI1LiBKdWwgMTk5NywgMTU6Mzg6NTgpOgp+IyEgcm49SGF0ZSBydD04Njk4MTMyMTQgcmc9c2NobWFycm4KfiMhIHRpZD04Njk3NjY2NDMKV2FydW0gYnJpbmdzdCBkdSBTdW4qIG5pY2h0IHVtPyBEdSB3dWVyZGVzdCB2aWVsZW4gaGllciBlaW5lbiBncm9zc2VuIEdlZmFsbGVuCnR1ZW4uIDspIFZpZWxsZWljaHQga2FubnN0IGR1IGlobiBqYSB3ZW5pZ3N0ZW5zIHdhZWhyZW5kIGRlciBQYXJ0eSBmZXNzZWxuIHVuZAprbmViZWxuLgoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBaZWl0cGxhbiAoVGVkZHksIDI1LiBKdWwgMTk5NywgMTU6NDE6NTUpOgp+IyEgcm49SGF0ZSBydD04Njk4MTMyMjkgcmc9c2NobWFycm4KfiMhIHRpZD04Njk3NjY2NDMKQXVzc2VyZGVtIHdlaXNzdCBkdSBlaCBrYXVtLCB3aWUgd2FzIHdlaWJsaWNoZXMgYXVzc2llaHQgdW5kIGRlaW5lbiBHZXNjaG1hY2sKa2VubmUgaWNoIGphLiA7LSgKClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBtYWwgd2llZGVyIGVpbiBnZWRpY2h0IChXb29keSwgMjUuIEp1bCAxOTk3LCAxOToyNDoyMCk6Cn4jISBybj1Fbmd5d3VjayBydD04Njk4NDg0MTcgcmc9a3VsdHVyCn4jISB0aWQ9ODY5MjI3ODIyClVuZCB3ZXIgaW0gUGVudGhvdXNlIHNpdHp0LCBzb2xsIGtlaW5lIFBlbnRpdW1zIHdlZ3dlcmZlbj8KCipzY2htYXJybmdydWViZWxuZCogd29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogbWFsIHdpZWRlciBlaW4gZ2VkaWNodCAoQmFicywgMjUuIEp1bCAxOTk3LCAyMToyNDozOCk6Cn4jISBybj1Xb29keSBydD04Njk4NTE0NjAgcmc9c2NobWFycm4KfiMhIHRpZD04NjkyMjc4MjIKUGVudGl1bXMgc29sbHRlIG1hbiB3ZWd3ZXJmZW4sIGdhbnogZWdhbCB3byBtYW4gc2l0enQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogWmVpdHBsYW4gKE11cGZlbCwgMjYuIEp1bCAxOTk3LCAxODowODo1OSk6Cn4jISBybj1IYXRlIHJ0PTg2OTgxMzIzNCByZz1zY2htYXJybgp+IyEgdGlkPTg2OTc2NjY0MwpBcmdsLi4uIHdhcnVtIGVyaW5uZXJ0IG1pY2ggZGllc2VyIFRocmVhZCBzbyBhbnMgQUwuLi4/IQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hbCB3YXMgKEFzbW9kaXMsIDI3LiBKdWwgMTk5NywgMDM6NDU6NDIpOgpmdWVyIGx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVociEgKEFzbW9kaXMsIDI3LiBKdWwgMTk5NywgMDM6NDY6MTApOgpmdWVyIGx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTm9jaG1laHIgKEFzbW9kaXMsIDI3LiBKdWwgMTk5NywgMDM6NDc6MTYpOgpmdWVyIGx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTml4bWVociAoQXNtb2RpcywgMjcuIEp1bCAxOTk3LCAwMzo0Nzo1Nyk6CmZ1ZXIgbHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTm9jaG1laHIgKEtleSwgMjcuIEp1bCAxOTk3LCAwMzo0ODowNSk6Cn4jISBybj1Bc21vZGlzIHJ0PTg2OTk2ODAzNiByZz1zY2htYXJybgp+IyEgdGlkPTg2OTk2ODAzNgpSdWhpZyBibGVpYmVuIDspPQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5vY2htZWhyIChMdWcsIDI3LiBKdWwgMTk5NywgMDM6NDg6NDMpOgp+IyEgcm49S2V5IHJ0PTg2OTk2ODA4NSByZz1zY2htYXJybgp+IyEgdGlkPTg2OTk2ODAzNgogQWhhamEsCgpzcGllbGVuIHdpciBhdWYgZGVyIFBhcnR5IGVpZ2VudGxpY2ggIkZpbmQnIGRlbiBLZXkhPwoKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOb2NobWVociAoQXNtb2RpcywgMjcuIEp1bCAxOTk3LCAwMzo0OToxMyk6Cn4jISBybj1MdWcgcnQ9ODY5OTY4MTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY5OTY4MDM2CklzIGRhcyBuaWNodCBlaW5lIEhMUC1RdWVzdCA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOb2NobWVociAoTHVnLCAyNy4gSnVsIDE5OTcsIDAzOjQ5OjQ1KToKfiMhIHJuPUFzbW9kaXMgcnQ9ODY5OTY4MTUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY5OTY4MDM2CgpOYWphLAoKbnVyIGRhcyBtaXQgZGVtIFNlZSBpbiBkZXIgTmFlaGUgbWFjaHQgbWlyIFNvcmdlbiwgZGVubiBTdGFobCBzY2h3aW1tdCBuaWNodC4KCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTm9jaG1laHIgKEtleSwgMjcuIEp1bCAxOTk3LCAwMzo1MTo0NSk6Cn4jISBybj1MdWcgcnQ9ODY5OTY4MTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY5OTY4MDM2CipsYWNoKgoKS2xhciBzcGllbGVuIHdpciBkaWUgUXVlc3QgOikKCkFiZXIgZGllc21hbCB3ZXJkZSBpY2ggbmV0IGFtIGJoZiB6dSBmaW5kZW4gc2Vpbiwgd2FlcmUgenUgbGVpY2h0ICwpPQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOb2NobWVociAoV29vZHksIDI3LiBKdWwgMTk5NywgMTI6MTY6MjQpOgp+IyEgcm49THVnIHJ0PTg2OTk2ODE4NSByZz1zY2htYXJybgp+IyEgdGlkPTg2OTk2ODAzNgpIbW1tbSwKCmFsc28gaWNoIGhhYiBTdGFobCBzY2hvbiBzY2h3aW1tZW4gc2Vobi4gSGF0IHp3YXIgbmUgV2VpbGUKZ2VkYXVlcnQsIGJpcyBlciBpbSBXYXNzZXIgd2FyLCBhYmVyIGRhbm4uLi4gOikgIChUYXRvcnQgTGlueikKCldveS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOb2NobWVociAoTmFpcm9sZiwgMjcuIEp1bCAxOTk3LCAxNDowMTowMCk6Cn4jISBybj1MdWcgcnQ9ODY5OTY4MTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY5OTY4MDM2CkhhZSA/PyBLZXkgaXMgZG9jaCBuaWNoIGF1cyBTdGFobCAhISEgd2Vpc3MgZG9jaCBqZWRlciBkYXMgZGFzIG5lbgpQbGFzdGlrc2NobHVlc3NlbCBpcyA6LSkKCk5haXJvbGYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5vY2htZWhyIChTY2hsaXBzLCAyNy4gSnVsIDE5OTcsIDE0OjEyOjU1KToKfiMhIHJuPUtleSBydD04Njk5NjgzMDUgcmc9c2NobWFycm4KfiMhIHRpZD04Njk5NjgwMzYKaG1tLCBpY2ggdmVybGFzcyBtaWNoIGRhIG1hbCBnYW56IGF1ZiBtZWluZSBOYXNlIC4uLgoKU2NobGlwcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTm9jaG1laHIgKE1hbmdvLCAyNy4gSnVsIDE5OTcsIDE1OjMzOjE1KToKfiMhIHJuPUtleSBydD04Njk5NjgzMDUgcmc9c2NobWFycm4KfiMhIHRpZD04Njk5NjgwMzYKd2llIHdhZXJzIG1pdHRtIFN0cmFzc2VuYmFobmhvZj8gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmdWVyIGx1ZyA6KSAoTmFjaHR3aW5kLCAyOC4gSnVsIDE5OTcsIDA0OjQ2OjAwKToKZXh0cmEgZnVlciBkaWNoIAoKTk5OQURXIQoKbmFjaHR3aW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGphIChKYW5pdHplLCAyOS4gSnVsIDE5OTcsIDE1OjAwOjUxKToKZGllIEtuZWlwZSBpbSBFbGZlbmRvcmY6CnVudCBzY2hhbmtyYXVtCkRpZXNlciBTY2hhbmtyYXVtIGlzdCBrZWluIHVuZ2V3b2VobmxpY2hlciBSYXVtLiBFciBoYXQgd2llIGplZGVyIGdld29laG4tCmxpY2hlIFJhdW0gZWluZSBEZWNrZSwgZWluZW4gQm9kZW4gdW5kIFdhZW5kZS4KPiB1bnQgZGVja2UKU293YXMgc2llaHN0IER1IGRhIG5pY2h0IQoKSXJnZW5kd2llIGJpbiBpY2ggamV0enQgcmF0bG9zLCBnaWJzIG51biBlaW5lIERlY2tlLCBvZGVyIG5pY2h0ID8gOikKSmFuaWNlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWhqYSAoS29iYXlhc2hpLCAyOS4gSnVsIDE5OTcsIDE1OjAzOjUxKToKfiMhIHJuPUphbml0emUgcnQ9ODcwMTgxMjUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcwMTgxMjUxCkJlaWRlcyBpc3QgcmljaHRpZzogRXMgZ2lidCBlaW5lIERlY2tlLCBhYmVyIHNpZSBpc3Qgc28gaG9jaCwgZGFzcyBkdSBzaWUKbmljaHQgc2VoZW4ga2FubnN0LiBEYXMgZ2xlaWNoZSBnaWx0IHVlYnJpZ2VucyBhdWNoIGZ1ZXIgQm9kZW4gdW5kIFdhZW5kZS4gRGVyCkJvZGVuIGlzdCBuYXR1ZXJsaWNoIHNvIHRpZWYgdW5kIGRpZSBXYWVuZGUgc28gd2VpdCB3ZWcuIFdpZSBlcyBrb21tdCwgZGFzIGR1CnNvIG1pdHRlbiBpbSBSYXVtIHNjaHdlYnN0LCBzY2hsaWVzc2xpY2ggaXN0IGRlciBCb2RlbiBqYSBzb29vbyB3ZWl0IHdlZywgaXN0CkRlaW4gUHJvYmxlbSA6LSkKCktvYmF5YXNoaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhaGphIChKYW5pdHplLCAyOS4gSnVsIDE5OTcsIDE3OjI1OjQ1KToKfiMhIHJuPUtvYmF5YXNoaSBydD04NzAxODE0MzEgcmc9c2NobWFycm4KfiMhIHRpZD04NzAxODEyNTEKYWNoc28gaXN0IGRhcyAhISEKRGFua2UgZnVlciBEZWluZW4gYXVma2xhZXJlbmRlbiBXb3J0ZSAhCgpKYW5pY2UgaXN0IGpldHp0IHZpZWwgc2NobGF1ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTm9jaG1laHIgKE11cGZlbCwgMjkuIEp1bCAxOTk3LCAxNzo1NzowMCk6Cn4jISBybj1LZXkgcnQ9ODY5OTY4MDg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY5OTY4MDM2CkJlYW50cmFnZSwgQXNtb2RpcyBpbiBORVdTLkRFTlkgZWluenV0cmFnZW4gOi0pCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTm9jaG1laHIgKEhhcmRpbCwgMjkuIEp1bCAxOTk3LCAxOTo0ODo1Nik6Cn4jISBybj1NdXBmZWwgcnQ9ODcwMTkxODIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY5OTY4MDM2CgpLbGVpbmVyIFRyb3N0IGZ1ZXIgYWxsZSwgZGllIHNpY2ggdWViZXIgZGllIGhvcnJlbmRlbiBNb2RlbS1UZWxlZm9uLUtvc3RlbgphdWZyZWdlbjoKCm1pdCBqZWRlciBNaW51dGUgTXVkZGVuIHNwb25zb3J0IGlociBlaW4gcGFhciBTZWt1bmRlbiBUb3VyIGRlIEZyYW5jZS4KCkhldXRlIGJlc29uZGVycyBnZWlzdHJlaWNoOgotSGFyZGlsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTm9jaG1laHIgKEx1ZywgMjkuIEp1bCAxOTk3LCAxOTo0OToyNCk6Cn4jISBybj1IYXJkaWwgcnQ9ODcwMTk4NTM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY5OTY4MDM2CkdydW1tZWwsCgpUb3QgZGVyIFRlbGVrb3R6IQpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZhaHJzZXJ2aWNlPyAoQ2F0d2VhemxlLCAyOS4gSnVsIDE5OTcsIDIwOjE5OjQwKToKfiMhIG9uPUFscGhhIG90PTg3MDA4NjUxMSBvZz1wYXJ0eQp+IyEgcm49Q2FyYWRocmFzIHJ0PTg2OTg1MTIxMiByZz1wYXJ0eQp+IyEgdGlkPTg2OTc2NjU0NwpXaXNvIE5vcmRkZXV0c2NoZT8KTm9yZGRldXRzY2hsYW5kIGJlZ2lubnQgZGEsIHdvIGRpZXNlIGZ1ZXJjaHRlcmxpY2hlbiBEaWFsZWt0ZSBhdWZob2VyZW4uCkFscGhhIGlzdCBzdG9seiwgYXVzIG5lciBkaWFsZWt0ZnJlaWVuIEdlZ2VuZCB6dSBrb21tZW4uIChEYW1pdCBpc3Qgc2ljaGVybGljaApuaWNodCBkaWVzZXMgRHJlY2tzTWFnZGVidXJnIGdlbWVpbnQpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRmFocnNlcnZpY2U/IChDYXR3ZWF6bGUsIDI5LiBKdWwgMTk5NywgMjA6MjA6MDEpOgp+IyEgb249R2FzdDIgb3Q9ODcwMTAzNzU4IG9nPXBhcnR5Cn4jISBybj1BbHBoYSBydD04NzAwODY1MTEgcmc9cGFydHkKfiMhIHRpZD04Njk3NjY1NDcKKmh1ZXN0ZWwqCk5hIGRhbm4gd2VyZCBpY2sgRGljaCBtYWwgZGF0IG5hZWNoc3RlIE1hbCBhdWYgRGVpbmUgbGVpY2h0CmFsdG1hZXJrZXJpc2NoZW4gQXVzcnV0c2NoZXIgaGlud2Vpc2VuIG11ZXNzZW4uCkltIHVlYnJpZ2VuIGJlZ2lubnQgTm9yZGRldXRzY2hsYW5kIGRvcnQsIHdvIGRpZSBMZXV0ZSBhbmZhbmdlbiwKZ2VsYmUgUGlzc2Ugc3RhdHQgQmllciB6dSB0cmlua2VuLiBVbmQgendhciBhdXMgZ3J1ZW5lbgpGbGFzY2hlbiwgZGllIGVpbmUgaGFlc3NsaWNoZSBGb3JtIGhhYmVuLiBFaW4gcGFzc2VuZGUuCgpHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRmFocnNlcnZpY2U/IChDYXR3ZWF6bGUsIDI5LiBKdWwgMTk5NywgMjA6MjA6MTEpOgp+IyEgb249V3VyemVsIG90PTg3MDEwNzI2MiBvZz1wYXJ0eQp+IyEgcm49QWxwaGEgcnQ9ODcwMDg2NTExIHJnPXBhcnR5Cn4jISB0aWQ9ODY5NzY2NTQ3CmFsc28sIG51ciB3ZWlsIGlyZ2VuZCBlaW4gbmljaHRzbnV0eiBtYWwgZ2VtZWludCBoYXQsIGRlbiBoYW5ub3ZlcmFuZXIKZGlhbGVrdCBhYiBzb2ZvcnQgImhvY2hkZXV0c2NoIiB6dSBuZW5uZW4gKHVuZCBkYW5uIGF1Y2ggbm9jaCB2b24gYWxsZW4KYW5kZXJlbiB6dSB2ZXJsYW5nZW4sIHNpY2ggZGllc2VuIGRpYWxla3QgYW56dWdld29laG5lbikuLi4gc293YXMga2FubgpudXIgZWluZW0gZWNodGVuIGZpc2Noa29wZiBlaW5mYWxsZW4sIGRlciBzdWVkZW4gaXN0IGRhIGRldXRsaWNoIHRvbGVyYW50ZXIuCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZhaHJzZXJ2aWNlPyAoQ2F0d2VhemxlLCAyOS4gSnVsIDE5OTcsIDIwOjIwOjE1KToKfiMhIG9uPUx1ZyBvdD04NzAxMTAxMDggb2c9cGFydHkKfiMhIHJuPUFscGhhIHJ0PTg3MDA4NjUxMSByZz1wYXJ0eQp+IyEgdGlkPTg2OTc2NjU0NwoKVm9uIGRlciBCdW5rZSBiaXMgbmFjaCBLcm9lbGxlLCB2b24gTWVyYW4gYmlzIGFuIGRhcyBNZWVyCkR1cmNoIE5pZWRlcnNhY2hzZW5zIEhvZWxsZSwgdm9uIGdhbnogdW50ZW4gYmlzIG5hY2ggTGVlci4KQWxsIGRpZSBzY2hvZW5lbiBLYWZmZWVmYWhydGVuIHVlYmVycyBwbGF0dGUgTGFuZApCaWVuZW5zdGljaCB1bmQgU2Nod2VpbmVicmF0ZW4gZnVlciBad29mdWZmemljaCBhdWYgZGllIEhhbmQuLi4KCkRhcyBOaWVkZXJzYWNoc2VubGllZCBpbiBJbnRlcnByZXRhdGlvbiB2b24gRnJpZWRhIHVuZCBBbm5lbGllc2UKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGYWhyc2VydmljZT8gKENhdHdlYXpsZSwgMjkuIEp1bCAxOTk3LCAyMDoyMDoyMSk6Cn4jISBvbj1MdWcgb3Q9ODcwMTEwMTg0IG9nPXBhcnR5Cn4jISBybj1HYXN0MiBydD04NzAxMDM3NTggcmc9cGFydHkKfiMhIHRpZD04Njk3NjY1NDcKCldlciBpbiBkZXIgSmF1Y2hlZ3J1YmUgc2l0enQgc29sbHRlIG5pY2h0IG1pdCBHdWVsbGUgd2VyZmVuIEdsb2luLAoKTmFjaCBkZW0gR2VudXNzIGVpbmVzIEpldmVyIHBpc3NlbiB3aXIgbmFlbWxpY2ggV2VpemVuLCB3YXMgZGFubiBhYmdlZnVlbGx0CndpcmQgdW5kIG5hY2ggQmF5ZXJuIGtvbW10Li4KCk5vcmRpc2NoIGJ5IE5hdHVyZQpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZhaHJzZXJ2aWNlPyAoQ2F0d2VhemxlLCAyOS4gSnVsIDE5OTcsIDIwOjIwOjMzKToKfiMhIG9uPUx1ZyBvdD04NzAxMTAyNTAgb2c9cGFydHkKfiMhIHJuPVd1cnplbCBydD04NzAxMDcyNjIgcmc9cGFydHkKfiMhIHRpZD04Njk3NjY1NDcKQWVoLAoKYWxzbyBXdXJ6ZWwsIGRhcyBpc3QgaW0gU3VlZGVuIGRlciBwdXJlIE5laWQuIEljaCBrYW5uIGphIG1hbCBlaW5lbgpBdXNzc2Nobml0dCBhdXMgZWluZW0gQXJ0aWtlbCB1ZWJlciBkaWUgU3ByYWNoenVmcmllZGVuaGVpdCBpbiBEZXV0c2NobGFuZApwb3N0ZW4gOykKClNQcmVjaGVuIGFiZXIgbmljaHQgc2NocmVpYmVuIGtvZW5uZW5kCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRmFocnNlcnZpY2U/IChDYXR3ZWF6bGUsIDI5LiBKdWwgMTk5NywgMjA6MjA6MzcpOgp+IyEgb249V3VyemVsIG90PTg3MDExMDQxOCBvZz1wYXJ0eQp+IyEgcm49THVnIHJ0PTg3MDExMDI1MCByZz1wYXJ0eQp+IyEgdGlkPTg2OTc2NjU0NwpuZWlkPyBoYWU/IHdvcmF1ZiBkZW5uIG5laWRpc2NoIHNlaW4/IGF1ZiBmaXNjaGtvcGYtZGFzZWluIGV0d2E/CmFsc28gd2lya2xpY2guLi4gaWNoIHd1c3N0ZSBlcyBzY2hvbiBpbW1lciwgaWhyIGhhYnQgZWluIHByb2JsZW0gbWl0IGRlcgpkZW5rZmFlaGlna2VpdC4ga2VpbiB3dW5kZXIsIHdlbm4gZWluZW0gc3RhZW5kaWcgZGllc2VyIHdpbmQgdW0gZGllIG9ocmVuCnBmZWlmdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQm9pbmc/IChSaW5nb3IsIDI5LiBKdWwgMTk5NywgMjI6NDc6MTcpOgpFYmVuIGluIGVpbmVyIFRvZGVzc2VxdWVuejoKCltEaXNrdXNzaW9uIHVlYmVyIGRlbiBNdXNpaydnZXNjaG1hY2snIHZvbiAxNmphZWhyaWdlbiBhdWYgLVRydmVzXQoKW1RydmVzOktleSBuaWNrdCBTdGluZyB6dSB1bmQgdWViZXJnaWJ0IHNpY2guXQpbVHJ2ZXM6THVnXSBLb3R6IEZhbWlseQpIaWxmZSwgZXMgd2lyZCBpbW1lciBzY2hsaW1tZXIsIGpldHp0IGZhZW5ndCBCb2luZyBzb2dhciBhbiB6dSBzaW5nZW4uCgpEZXIgVG9kIGhhZWx0IHNpY2ggZGllIE9ocmVuIHp1LgoKCldhcyBkZW5uIC0gQm9pbmcgc2luZ3QgKm5vY2gqIHNjaGxpbW1lcj8gCgpSaW5nb3IsIGhhdCBQcm9ibGVtZSwgc2ljaCBkYXMgdm9yenVzdGVsbGVuLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyAoTmFjaHR3aW5kLCAzMC4gSnVsIDE5OTcsIDA1OjE4OjMzKToKZnVlciBhc21vIDopCk44d2luZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJvaW5nPyAoQm9pbmcsIDMwLiBKdWwgMTk5NywgMTA6NDI6NDcpOgp+IyEgcm49UmluZ29yIHJ0PTg3MDIwOTIzNyByZz1zY2htYXJybgp+IyEgdGlkPTg3MDIwOTIzNwpEdSBoYXN0IG1pY2ggb2ZmZW5zaWNodGxpY2ggbm9jaCBuaWNodCBzaW5nZW4gZ2Vob2VydCAuLi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJ0aWtlbCAoQ2F0d2VhemxlLCAzMC4gSnVsIDE5OTcsIDExOjM3OjA1KToKfiMhIG9uPUx1ZyBvdD04NzAyMTI1NTAgb2c9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCgpEaWVkZXIgbW9lY2h0ZSBlaW5lbiBBcnRpa2VsIHp1bSBBbmtudWVwZmVuLiBuYSwgd2llIHdhZXJlIGVzIGRlbm4gbWl0ClN1ZWRkZXV0c2NoZW0gQmllcj8gU29nLiBCaWVyIGluIGRlbSBGYWxsLgoKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXJ0aWtlbCAoQ2F0d2VhemxlLCAzMC4gSnVsIDE5OTcsIDExOjM3OjA5KToKfiMhIG9uPURpZWRlciBvdD04NzAyMTI2MDAgb2c9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISBybj1MdWcgcnQ9ODcwMjEyNTUwIHJnPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgdGlkPTg3MDIxMjU1MApqYWFhYWEsIGRhcyBpc3Nlcy4uLgoKaWNoIGJldm96dWdlIGRhIEhlZmV3ZWl6ZW4uLi4gRXJkaW5nZXIvU2NobmVpZGVyIFdlaXNzZS9GcmFuemlza2FuZXIgby5hZS4gOikpCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXJ0aWtlbCAoQ2F0d2VhemxlLCAzMC4gSnVsIDE5OTcsIDExOjM3OjEzKToKfiMhIG9uPUtleSBvdD04NzAyMTI2Mzggb2c9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISBybj1EaWVkZXIgcnQ9ODcwMjEyNjAwIHJnPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgdGlkPTg3MDIxMjU1MApIbW0gRHVyc2NodCEKQWJlciBrZWluIGdlc2NodWV0dGVsdGVzIEhlZmUgLi4uIDopCgp1bmQgYXVjaCBrZWluZSBiYW5hbmUgLi4uCgoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFydGlrZWwgKENhdHdlYXpsZSwgMzAuIEp1bCAxOTk3LCAxMTozNzoxNyk6Cn4jISBvbj1MdWcgb3Q9ODcwMjEyNjQyIG9nPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgcm49RGllZGVyIHJ0PTg3MDIxMjYwMCByZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHRpZD04NzAyMTI1NTAKIElpaWlpaWhoaGhoaGhoaGhoIQoKV2VpemVuIGlzdCBkb2NoIGtlaW4gQmllciEKSWNoIGJldm9yenVnZSBvYmVyZ2FlcmlnZSBCaWVyZSwgZGllIHNpbmQgYXVjaCBiZXNzZXIgZnVlciBkZW4gTWFnZW4gOykKCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQXJ0aWtlbCAoQ2F0d2VhemxlLCAzMC4gSnVsIDE5OTcsIDExOjM3OjIxKToKfiMhIG9uPUtleSBvdD04NzAyMTI2NjQgb2c9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISBybj1MdWcgcnQ9ODcwMjEyNjQyIHJnPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgdGlkPTg3MDIxMjU1MApEdSBtZWluc3QgV2hpc2tleT8gLikpCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFydGlrZWwgKENhdHdlYXpsZSwgMzAuIEp1bCAxOTk3LCAxMTozNzoyNSk6Cn4jISBvbj1EaWVkZXIgb3Q9ODcwMjEyNjkzIG9nPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgcm49THVnIHJ0PTg3MDIxMjY0MiByZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHRpZD04NzAyMTI1NTAKQXJnbCwgV2VpemVuIGlzdCBkYXMgQmVzdGUgd2Fzc2VzIGFuIEJpZXIgbnVyIGdpYnQuLi4KCkdsYXVidCBtaXIgZGFzLCBpY2ggaGFiIHNjaG9uIHZpZWwgcHJvYmllcnQsIGFiZXIgdWViZXIgV2VpemVuIGdlaHQgbml4Cih3ZW5uIGljaCBXZWl6ZW4gbWVpbmUsIG1laW5lIGljaCBIZWZld2VpemVuLi4uIEtyaXN0YWxsIGlzdCB3YXMgZnVlcgpGbGFzY2hpcykgOikpKQoKRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBcnRpa2VsIChDYXR3ZWF6bGUsIDMwLiBKdWwgMTk5NywgMTE6Mzc6MjkpOgp+IyEgb249SmFzcGVyIG90PTg3MDIxMjc1MyBvZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHJuPURpZWRlciBydD04NzAyMTI2OTMgcmc9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISB0aWQ9ODcwMjEyNTUwCmFsc28gaWNoIHNjaHJlaWJlIGVyc3Qgd2FzLCBzb2JhbGQgamVtYW5kIGJlaGF1cHRldCwgZGFzcyBrb2Vsc2NoIGVpbiBiaWVyIGlzdAo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQXJ0aWtlbCAoQ2F0d2VhemxlLCAzMC4gSnVsIDE5OTcsIDExOjM3OjMxKToKfiMhIG9uPUtleSBvdD04NzAyMTI3ODMgb2c9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISBybj1KYXNwZXIgcnQ9ODcwMjEyNzUzIHJnPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgdGlkPTg3MDIxMjU1MApLb2Vsc2NoIGlzdCBCaWVyCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFydGlrZWwgKENhdHdlYXpsZSwgMzAuIEp1bCAxOTk3LCAxMTozNzozNyk6Cn4jISBvbj1EaWVkZXIgb3Q9ODcwMjEyNzk1IG9nPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgcm49SmFzcGVyIHJ0PTg3MDIxMjc1MyByZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHRpZD04NzAyMTI1NTAKbmFqYSBtaXQgZWluZXIgRWluc2NocmFlbmt1bmcuLi4gZGllc2UgRHVua2VsYmllcmUgYXVzIGRlbSBGcmFlbmtpc2NoZW4gc2luZAphdWNoIG5lZCBzY2hsZWNodC4uLiA6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEFydGlrZWwgKENhdHdlYXpsZSwgMzAuIEp1bCAxOTk3LCAxMTozNzo0MSk6Cn4jISBvbj1LYXJ0b2ZmZWwgb3Q9ODcwMjEyODAxIG9nPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgcm49S2V5IHJ0PTg3MDIxMjc4MyByZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHRpZD04NzAyMTI1NTAKV2FyIGtsYXIsIGRhc3MgZGFzIGpldHp0IGtvbW10CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBcnRpa2VsIChDYXR3ZWF6bGUsIDMwLiBKdWwgMTk5NywgMTE6Mzc6NDcpOgp+IyEgb249THVnIG90PTg3MDIxMjg1MSBvZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHJuPURpZWRlciBydD04NzAyMTI3OTUgcmc9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISB0aWQ9ODcwMjEyNTUwCgpIYWgsCgpiZWkgZGVuIER1bmtlbGJpZXJlbiBzdGltbWUgaWNoIERpciBzb2dhciB6dS4gQWJlciBBbHQgaXN0IGF1Y2ggbGVja2VyLgpLb2Vsc2NoIG1hZyBpY2ggaGluIHVuZCB3aWVkZXIgYXVjaCA7KQoKQWJlciBXZWl6ZW4/Ck5pZW1hbHMhCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFydGlrZWwgKENhdHdlYXpsZSwgMzAuIEp1bCAxOTk3LCAxMTozNzo1MSk6Cn4jISBvbj1EaWVkZXIgb3Q9ODcwMjEyOTI5IG9nPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgcm49THVnIHJ0PTg3MDIxMjg1MSByZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHRpZD04NzAyMTI1NTAKbmFqYSB3ZXIgbmVkIHdpbGwgaGF0IGdlaGFidC4uLiBpY2ggdHJpbmsgendhciBhdWNoIG1hbCBnZXJuIGVpbiBQaWxzIG9kZXIKZWluZSBIYWxiZSB2b20gRmFzcywgYWJlciBkYXMgZ2VpbHN0ZSBpc3QgaGFsdCBlaW4gSGVmZSB2b20gRmFzcywgc2Nob2VuCnRydWViLCBkYXNzIGRpZSBIZWZlIGhlcnVudGVyZmxvY2t0ICpsZWNoeiogOikpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQXJ0aWtlbCAoQ2F0d2VhemxlLCAzMC4gSnVsIDE5OTcsIDExOjM3OjU1KToKfiMhIG9uPUthcnRvZmZlbCBvdD04NzAyMTI5MzUgb2c9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISBybj1MdWcgcnQ9ODcwMjEyODUxIHJnPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgdGlkPTg3MDIxMjU1MApBbHQgaXMgZWggZGFzIEJlc3RlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBcnRpa2VsIChDYXR3ZWF6bGUsIDMwLiBKdWwgMTk5NywgMTE6Mzc6NTkpOgp+IyEgb249S2V5IG90PTg3MDIxMjk4MyBvZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHJuPUthcnRvZmZlbCBydD04NzAyMTI5MzUgcmc9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISB0aWQ9ODcwMjEyNTUwCkFsdGJpZXJib3dsZSAuLi4gSG1tbW1tbSA6KSkKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQXJ0aWtlbCAoQ2F0d2VhemxlLCAzMC4gSnVsIDE5OTcsIDExOjM4OjA1KToKfiMhIG9uPUthcnRvZmZlbCBvdD04NzAyMTMwMzEgb2c9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISBybj1LZXkgcnQ9ODcwMjEyOTgzIHJnPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgdGlkPTg3MDIxMjU1MApEYXMgYXJtZSBCaWVyLi4uLi4uLiAqc2VpIGVudHNldHp0KgoKS0FydG9mZmVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBcnRpa2VsIChDYXR3ZWF6bGUsIDMwLiBKdWwgMTk5NywgMTE6Mzg6MTMpOgp+IyEgb249RGllZGVyIG90PTg3MDIxMzAzNSBvZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHJuPUtleSBydD04NzAyMTI5ODMgcmc9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISB0aWQ9ODcwMjEyNTUwCkFyZ2whIHNvbGNoZSBNaXhlcyBzaW5kIHBmdWkgdW5kIG1hY2hlbiBzb29vb25lbiBTY2hhZWRlbCwgZGEgYmVsYXNzIGljaCBlcwpkb2NoIGJlaW0gcmVpbmVuIEJpZXJnZW51c3MgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEFydGlrZWwgKENhdHdlYXpsZSwgMzAuIEp1bCAxOTk3LCAxMTozODoxOSk6Cn4jISBvbj1MdWcgb3Q9ODcwMjEzMDUxIG9nPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgcm49S2V5IHJ0PTg3MDIxMjk4MyByZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHRpZD04NzAyMTI1NTAKCktleSBEdSBTY2h3ZWluIQoKTWFuIGtpcHB0IG5peCBpbnMgQmllciEgRGFzIG1hY2hlbiBudXIuLmFlaC4uIFBvc2VyLi5LaWRkZGllcy4uZXRjLgoKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQXJ0aWtlbCAoQ2F0d2VhemxlLCAzMC4gSnVsIDE5OTcsIDExOjM4OjIxKToKfiMhIG9uPUtleSBvdD04NzAyMTMwNTUgb2c9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISBybj1EaWVkZXIgcnQ9ODcwMjEzMDM1IHJnPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgdGlkPTg3MDIxMjU1MApQZmZmZiA7KT0KCmtleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEFydGlrZWwgKENhdHdlYXpsZSwgMzAuIEp1bCAxOTk3LCAxMTozODoyNyk6Cn4jISBvbj1EaWVkZXIgb3Q9ODcwMjEzMTY3IG9nPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgcm49RGllZGVyIHJ0PTg3MDIxMzAzNSByZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHRpZD04NzAyMTI1NTAKbWFsIG5lIGFuZGVyZSB2YXJpYW50ZSB6dW0gdGVzdGVuLi4uIEJpZXJlaXMhIApHZWh0IGdhbnogZWluZmFjaC4KCkJpZXIgaW4gU2NobmFwc2dsYXMgby5hZS4gc2NodWV0dGVuLCBFaXNzdGllbCByZWluLCBtaXQgRHJhaHQgby5hZS4gZml4aWVyZW4KdW5kIGVpbmZyaWVyZW4uLi4gc2NobWVja3QgR0VOSUFMISA6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBBcnRpa2VsIChDYXR3ZWF6bGUsIDMwLiBKdWwgMTk5NywgMTE6Mzg6MzUpOgp+IyEgb249S2V5IG90PTg3MDIxMzIxMyBvZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHJuPURpZWRlciBydD04NzAyMTMxNjcgcmc9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISB0aWQ9ODcwMjEyNTUwCkhtbSBrbGluZ3QgZ3V0IC4uIAoKa2V5IHRlc3RldCBtYWwgLi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBBcnRpa2VsIChDYXR3ZWF6bGUsIDMwLiBKdWwgMTk5NywgMTE6Mzg6MzkpOgp+IyEgb249RGllZGVyIG90PTg3MDIxMzI5MCBvZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHJuPUtleSBydD04NzAyMTMyMTMgcmc9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISB0aWQ9ODcwMjEyNTUwCm9kZXIgbm9jaHdhcy4uLi4KCkdvZXR0ZXJzcGVpc2UgenViZXJlaXRlbiAoRmVydGlncHVsdmVyIHZvbiBEci4uIE8qKiogKmFyZ2wgU2NobGVpY2h3ZXJidW5nKgo6KSkpClN0YXR0IGRlbSBXYXNzZXIgaW4gZ2xlaWNoZXIgTWVuZ2UgV29ka2EgbmVobWVuIQoKRUNodCBnZW5pYWwhIERlciBGbGFzaCBrb21tdCBtaXQgVmVyem9lZ2VydW5nIDopKQoKRGllZGVyLCBraWNoZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEFydGlrZWwgKENhdHdlYXpsZSwgMzAuIEp1bCAxOTk3LCAxMTozODo0Myk6Cn4jISBvbj1LZXkgb3Q9ODcwMjEzMzI4IG9nPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgcm49RGllZGVyIHJ0PTg3MDIxMzI5MCByZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHRpZD04NzAyMTI1NTAKCk9ob2ggZGFzIGVyaW5uZXJ0IG1pY2ggYW4gbmVuIFB1ZGRpbmcgZGVuIHdpciBtYWwgbWFjaHRlbiAuLi4gTmFqYSBudXIgd3VyZGUKZGFzIHpldWcgbmV0ZmVzdCAuLi4gOikKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEFydGlrZWwgKENhdHdlYXpsZSwgMzAuIEp1bCAxOTk3LCAxMTozODo1NSk6Cn4jISBvbj1HYXN0MSBvdD04NzAyMTY4NjYgb2c9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISBybj1EaWVkZXIgcnQ9ODcwMjEzMjkwIHJnPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgdGlkPTg3MDIxMjU1MApQZnVpIERlaWZpLiBEYXMgWmV1ZyBzY2htZWNrdCB6d2FyIGd1dCAod2FzIGFtIEZyZWl0YWcgKD8pIGluIEthcmxzcnVoZSBpbgplaW5lciBkdW5rbGVuIEVja2UgZGVyIFR1cm5oYWxsZSBiZXdpZXNlbiB3YXJkKSAuLi4gYWJlciBlcyBnaWJ0IGVpbgphZXVzc2Vyc3QgZWtsaWdlcyBQcm9ibGVtOiBXRVIgZnVlbGx0IGRlbiBCZWNoZXIgaW4gZGVyIFBhbXBlIGF1ZiA/IDstKQoKWnUgd2VpdGVyZW4gRXJmYWhydW5nc2JlcmljaHRlbiAtPiBBbm5pL01hbmdvL0V4VHdlZWcvWW9naSA6KSkpCkdsb2luCgpQUzogQmllciAuLi4gaG06IFRyb3R6IGRlciBSYWRpLVdlcmJ1bmcgaW4gVFYmS2lubyAuLi4gd2VubiB1ZWJlcmhhdXB0LAogICAgZGFubiBGcmVpYmVyZ2VyLVBpbHplIC4uLiBhYmVyIGF1Y2ggZWluZW0gS3Jpc3RhbGwga2FubiBtYW4gbmljaHQKICAgIGFiZ2VuZWlndCBzZWluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEFydGlrZWwgKENhdHdlYXpsZSwgMzAuIEp1bCAxOTk3LCAxMTozOToyMSk6Cn4jISBvbj1IYXIgb3Q9ODcwMjQzODA4IG9nPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgcm49S2V5IHJ0PTg3MDIxMzMyOCByZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHRpZD04NzAyMTI1NTAKRGFtaXQgZGVyIFdvZGthLVB1ZGRpbmcgZmVzdCB3aXJkLi4uCnZlciB1dW5kIGRlbiBadWNrZXIgenVuYWVjaHN0IG1pdCBnYW56IHdlbmlnIFdhc3NlciBoZWlzcyBhdWZsb2VzZW4gdW5kIGRhbm4sCndlbm4gZGllcyBmYXN0IGFiZ2VrdWVobHQgaXN0IGRlbiBXb2RrYSB6dWdlYmVuLiBEQXMgZ2FuemUgZ3V0CmthbHRzdGVsbGVuLi4uZGF1ZXJ0IGVpbiBiaXNjaGVuIGxhZW5nZXIgYWJlciB3aXJkIGZlc3QuLi4KSGFyClRpcDogQmVpIHJvdGVyIEdvZXR0ZXJzZWlzZSBhbnN0ZWxsZSBkZXMgV2FzZXJzIHp1bSBhbnJ1ZWhyZW4ga2lyc2Nod2Fzc2VyCm5laG1lbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEFydGlrZWwgKENhdHdlYXpsZSwgMzAuIEp1bCAxOTk3LCAxMTozOToyMyk6Cn4jISBvbj1IYXJkaWwgb3Q9ODcwMjUzODMxIG9nPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgcm49SGFyIHJ0PTg3MDI0MzgwOCByZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHRpZD04NzAyMTI1NTAKCkJpZXJ0cmlua2VuIGlzdCBzY2hlaXNzZS4gOikKCi1IYXJkaWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBcnRpa2VsIChLb2JheWFzaGksIDMwLiBKdWwgMTk5NywgMTE6NDc6MjgpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTg3MDI1NTQ3NSByZz1zY2htYXJybgp+IyEgdGlkPTg3MDIxMjU1MApXZW5uIGljaCBBbHQgdHJpbmtlLCBrYW5uIGljaCBpbW1lciBqZWRlIE1lbmdlIEtvZWxzY2ggbWFjaGVuLgpBYmVyIHNvIGVpbiByaWNodGlnIGxlY2tlcnMgQWx0IChTY2h1bWFjaGVyLCBGdWVjaHNjaGVuLCBHbGV1bWVzKSBpc3QgZG9jaCB3YXMKZmVpbmVzLgpUcm90emRlbSBiaW4gaWNoIG5lbSBIZWZld2VpemVuIGF1Y2ggbmljaHQgYWJnZW5laWd0LCBiZXNvbmRlcnMgd2VubnMgZWluCkR1bmtsZXMgaXN0LgoKS29iYXlhc2hpCi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBGYWhyc2VydmljZT8gKEdyYWxrb3IsIDMwLiBKdWwgMTk5NywgMTI6NTQ6MzUpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTg3MDIwMDM4MCByZz1zY2htYXJybgp+IyEgdGlkPTg2OTc2NjU0NwpIRSEhIQpOdXIgSUNIIGRhcmYgbWljaCB1ZWJlciBkYXMgS3Voa2FmZiBhdWZyZWdlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFydGlrZWwgKEdyYWxrb3IsIDMwLiBKdWwgMTk5NywgMTI6NTg6MDUpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTg3MDI1NTQzNyByZz1zY2htYXJybgp+IyEgdGlkPTg3MDIxMjU1MApSaWNodGlnLCBkYXMgdmVyc3RvZXNzdCBnZWdlbiBkYXMgUmVpbmhlaXRzZ2Vib3Qgdm9uIDE1MTYuCkhhYmVuIHNpY2ggZGllIGJsb2VkZW4gQkFZRVJOIHVlYnJpZ2VucyBzZWxic3QgZWluZ2Vicm9ja3QuClVuZCBXZWl6ZW4iYmllciIgaXN0IGF1Y2ggb2JlcmdhZXJpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCb2luZz8gKFBhcmFjZWxzdXMsIDMwLiBKdWwgMTk5NywgMTU6Mjk6NDMpOgp+IyEgcm49Qm9pbmcgcnQ9ODcwMjUyMTY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcwMjA5MjM3CkhtbSwgRHUga2VubnN0IGRvY2ggZWggbnVyIHp3ZWkgTGllZGVyLCBCb2luZzoKICdHb2xkIEdvbGQgR29sZCcKdW5kCiAnTWFybW9yIFN0ZWluIHVuZCBFaXNlbiBicmljaHQuLi4nCgpdOi0+ClBhcmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGYWhyc2VydmljZT8gKFJhZmZpLCAzMC4gSnVsIDE5OTcsIDE1OjQ0OjI5KToKfiMhIHJuPUNhdHdlYXpsZSBydD04NzAyMDA0MDEgcmc9c2NobWFycm4KfiMhIHRpZD04Njk3NjY1NDcKCkFsc28ga3VyeiBoaW50ZXIgTnVlcm5iZXJnID8KCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogQXJ0aWtlbCAoUmFmZmksIDMwLiBKdWwgMTk5NywgMTU6NTI6MDApOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTg3MDI1NTUxOSByZz1zY2htYXJybgp+IyEgdGlkPTg3MDIxMjU1MApIbW0gLi4uLiBzaWNoZXIgZGFzIGRhdm9uIGJlaW0gYXVma29jaGVuIG5pY2h0IHNjaG9uIHp1IHZpZWwgaW4gZGllCnVtZ2VidW5nc2x1ZnQga29tbXQgPyBEYXMgZ2FlYmUgZWluZW4gdm9yZ2V6b2dlbmVuIGZsYXNoIC4uLi4uICpncmlucyoKYmVzb25kZXJzIGF1ZiBuZW0gZ2FzaGVyZAoKR3J1c3MKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFlaCAoTHVnLCAzMS4gSnVsIDE5OTcsIDAyOjMwOjIwKToKClplcGh5ciAgSSBTIFQgIEogRSBUIFogVCAgTiBJIEMgSCBUICBNIEUgSCBSICAgRCBBICEhIQpCb2luZyBoZWJ0IHNlaW4gQmVpbiAuLi4KClNvZWJlbiBpbiBkZXIgRksuIFNvIGJvZXNlIGhhdHRlIGljaCBkYXMgZ2FyIG5pY2h0IGdlbWVpbnQuLi4KVmVyd2lycnQKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggd2lsbCBLVUVIRSEhISAoUGFydCBJKSAoSmFzcGVyLCAzMS4gSnVsIDE5OTcsIDA2OjU1OjU0KToKfiMhIG9uPUNhdHdlYXpsZSBvdD04NzAyNjIxNTggb2c9d2l0emUKIAogICAgICAgICAgICAgLS09PT4+ICBUSEUgQ09NUExFVEUgR1VJREUgVE8gQ09XUyAgPDw9PS0tCiAgICAgICAgICAgICAgICAgIGFzIHlvdSd2ZSBORVZFUiBzZWVuIHRoZW0gYmVmb3JlIQogCiAgICAgICAgICAgICAgICAgICBfX19fX19fX19fX19fX19fX19fX19fX18KICAgICAgICAgIChfXykgICAgLyAgICAgICAgICAgICAgICAgICAgICAgIFwgICAgICAgICAqIE9GRklDSUFMIEVESVRJT04gKgogICAgICAgICAgKG9vKSAgICggIE5vdmVtYmVyIDE5ODkgVmVyc2lvbiEgICkKICAgLy0tLS0tLS1cLyAgLS0nXF9fX19fX19fX19fX19fX19fX19fX19fXy8gICAgICAqIFdPUkxEV0lERSBESVNUUklCVVRJT04gKgogIC8gfCAgICAgfHwKICogIHx8LS0tLXx8ICAgICAgICAgICAgIEVkaXRlZCBieSBFcmljIFcuIFRpbGVuaXVzCiAgICBeXiAgICBeXiAgICAgICAgICAgICBQbGVhc2Ugc2VuZCB5b3VyIHN1Ym1pc3Npb25zIHRvOgogICAgICBDb3cgICAgICAgICAgICAgICAgZXd0aWxlbmlAcHVjYy5QcmluY2V0b24uRURVIC8vIGV3dGlsZW5pQHB1Y2MuQklUTkVUCiAKIC0gLSAtICAtICAtICAtICAtICAtICAtICAtICAtICAtICAtICAtICAtICAtICAtICAtICAtICAtICAtICAtICAtICAtICAtICAtIAotCiAKICAgICAgICAgIChfXykgICAgICAgICAgICAgKF9fKSAgICAgICAgICAgICAoX18pICAgICAgICAgICAgIChfXykKICAgICAgICAgIChvbykgICAgICAgICAgICAgKG9vKSAgICAgICAgICAgICAob28pICAgICAgICAgICAgIChvbykKICAgLy0tLS0tLS1cLyAgICAgICAvLS0tLS0tLVwvICAgICAgIC8tLS0tLS0tXC8gICAgICAgLy0tLS0tLS1cLwogIC8gfCAgICAgfHwgICAgICAgLyB8ICAgICB8fCAgICAgICAvIHwgICAgIHx8ICAgICAgIC8gfCAgICAgfHwKICogIHx8LS0tLXx8ICAgICAgKiAgfHxXLS0tfHwgICAgICAqICB8fHctLS18fCAgICAgICogIHx8Vi0tLXx8CiAgICBeXiAgICBeXiAgICAgICAgIF5eICAgIF5eICAgICAgICAgXl4gICAgXl4gICAgICAgICBeXiAgICBeXgogICAgICBDb3cgICAgICAgICAgIENvdyBsYWRlbiAgICAgICAgU2FtZSBjb3cgICAgICAgTmFuY3kgUmVhZ2FuLXR5cGUKICAgICAgICAgICAgICAgICAgICB3aXRoIG1pbGsgICAgIGFmdGVyIG1pbGtpbmcgICAgIGNvdyB3aXRoIG1pbGsKIAogICAgICAgICAgKF9fXykgICAgICAgICAgICAgKF9fXykgICAgKiAgICAgICAgKF9fXykgICAgICAgICAgICAgKF9fXykKICAgICAgICAgIChvIG8pICAgICAgICAgICAgIChvIG8pICAgICBcICAgICAgIChvIG8pICAgICAgICAgICAgIChvIG8pCiAgIC8tLS0tLS0tXCAvICAgICAgIC8tLS0tLS0tXCAvICAgICAgIFwtLS0tLS0tXCAvICAgICAgIC8tLS0tLS0tXCAvCiAgLyB8ICAgICB8fE8gICAgICAgLyB8ICAgICB8fE8gICAgICAgICB8ICAgICB8fE8gICAgICAgLyB8IH4jPi0rfE8KICogIHx8LC0tLXx8ICAgICAgICogIHx8QFwtLXx8ICAgICAgICAgIHx8LC0tLXx8ICAgICAgICogIHx8LC0tLS18CiAgICBeXiAgICBeXiAgICAgICAgICBeXiAgICBeXiAgICAgICAgICBeXiAgICBeXiAgICAgICAgICBeXiAgICAgXgogICAgICBCdWxsICAgICAgIFNhbWUgYnVsbCBhZnRlciAgICBSb3RjIGJ1bGwgYWZ0ZXIgICAgUmVkLWJsb29kZWQgQW1lcmljYW4KQnVsbAogICAgICAgICAgICAgICAgIHNlZWluZyBhYm92ZSBjb3cgICBzZWVpbmcgb3RoZXIgYnVsbCAgIHNob290aW5nIHRoZSBSb3RjCmJ1bGwKIAogCiAKICAgICAgICAgIChfXykgICAgICAgICAgICAgKF9fKSAgICAgICAgICAgICAoX18pICAgICAgICAgICAgIChfXykKICAgICAgICAgIChvbykgICAgICAgICAgICAgKG9vKSAgICAgICAgICAgICAob28pICAgICAgICAgICAgIChvbykKICAgLy0tLS0tLS1cLy0qICAgICAvLS0tLS0tLVwvICAgICAgIC8tLS0tLS0tXC8gICB+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAvIHwgICAgIHx8IFwgICAgICkqKShcLyogLyAgKiAgICAgLyB8ICAgICB8fAogKiAgfHwtLS0tfHwgICogICBcIHx8fC8pfC8oKSggICAgfn5+fn5+fn5+fn5+fn4KIFwvfCgvKSgvXC8oLCwvICAgXCl8KC9cL3wpKC9cCiAgIENvdyBtdW5jaGluZyAgIEdyYXNzIG11bmNoaW5nICAgQ293IGluIHdhdGVyICAgICAgIENvdyBpbiB0cm91YmxlCiAgICAgb24gZ3Jhc3MgICAgICAgICBvbiBjb3cKIAogICAgICAgICAgIChfXykgICAgICAgICAgICAgKF9fKSAgICAqICAgICAgICAoX18pICogICAgICAoX18pCiAgICAgICAgICAgKG9vKSAgICAgICAgICAgICAob28pICAgICBcICAgICAgIChvbykgfCAgICAgIChvbykKICAgLy0tLS0tLS0tXC8gICAgICAvLW9vb29vby1cLyAgICAgICBcLS0tLS0tLVwvICBcLS0tLS0tLVwvCiAgKiBvfCAgICAgfHwgICAgICAqIG9vb29vb29vbyAgICAgbyAgb3wgICAgIHx8ICAgLyAgICAgfHwKICAgICB8fC0tLS18fCAgICAgb29vb29vb29vb29vbyAgICAgICAgfHwtLS0tfHw+PT0vLS0tLS18fAogIG9vb15eICAgIF5eICAgIG9vb29vb29vb29vb29vb29vICAgICBeXiAgICBeXiAgICAgICAgIF5eCiAgIENvdyB0YWtpbmcgICAgICBDb3cgaW4gZGVlcCAgICAgICAgIENvdyBnZXR0aW5nIHRoZSBzaGl0CiAgICAgYSBzaGl0ICAgICAgICAgICAgc2hpdCAgICAgICAgICAgICBraWNrZWQgb3V0IG9mIGhlcgogCiAKICAgICAgICAgIChfXykKICAgICAgICAgIChvbykgICAgICAgICAgICAgICAgICAgICAgIFUKICAgLy0tLS0tLS1cLyAgICAgICAgICAgICAgICAgICAgLy0tLVYKICAvIHwgICAgIHx8ICAgICAgICAgICAgICAgICAgICAqIHwtLXwgICAgICAgICAgICAgICAgICAgICAgIC4KICogIHx8LS0tLXx8CiAgICBeXiAgICBeXgogCiBDb3cgYXQgMSBtZXRlci4gICAgICAgICBDb3cgYXQgMTAwIG1ldGVycy4gICAgICAgIENvdyBhdCAxMCwwMDAgbWV0ZXJzLgogCiAKIAogICAgICAgICAgKF9fKSAgICAgICAgICAgICAgICAgICAgIClfXyggICAgICAgICAgICAgICAgdnYgICAgdnYKICAgICAgICAgIChvbykgICAgICAgICAgICAgICAgICAgICAob28pICAgICAgICAgICAgICAgIHx8LS0tLXx8ICAqCiAgIC8tLS0tLS0tXC8gICAgICAgICAgICAgICAqLS0tLS0tLVwvICAgICAgICAgICAgICAgICB8fCAgICAgfCAvCiAgLyB8ICAgICB8fCAgICAgICAgICAgICAgIC8gfCAgICAgfHwgICAgICAgICAgICAgICAgIC9cLS0tLS0tLS8KICogIHx8LS0tLXx8ICAgICAgICAgICAgICAvICB8fC0tLS18fCAgICAgICAgICAgICAgICAob28pCiAgICBeXiAgICBeXiAgICAgICAgICAgICAgICAgdnYgICAgdnYgICAgICAgICAgICAgICAgKH5+KQogCiBBbWVyaWNhbiBDb3cgICAgICAgICAgICAgIFBvbGlzaCBDb3cgICAgICAgICAgICBBdXN0cmFsaWFuIENvdwogCiAKIAogICAgICAgICAgKF9fKSAgICAgICAgICAgICAgICAgICAgIChfXykgICAgICAgICAgICAgICAgICAgICAoX18pCiAgICAgICAgICAob28pICAgICAgICAgICAgICAgIF9fX18gKG9vKSAgICAgICAgICAgICAgICBfLS0tXyhvbykKICAgLy0tLS0tLS1cLyAgICAgICAgICAgICAgIC8tICAgIC0tXC8gICAgICAgICAgICAgICAvLSAgICAgLVwvCiAgLyB8ICAgICB8fCAgICAgICAgICAgICAgIC8gfCAgICAgfHwgICAgICAgICAgICAgICAvfCAgICAgIHx8CiAqICB8fC0tLS18fCAgICAgICAgICAgICAgKiAgfHxfX18tfHwgICAgICAgICAgICAgICogIHx8X19fLXx8CiAgICBeXiAgICBeXiAgICAgICAgICAgICAgICAgXl4gICAgXl4gICAgICAgICAgICAgICAgIF5eICAgIF5eCiAKIEZyZXNobWFuIENvdyBhdCAgICAgICAgICBGcmVzaG1hbiBDb3cgICAgICAgICAgICAgRnJlc2htYW4gQ293CiBzdGFydCBvZiBzY2hvb2wgICAgIEFmdGVyIHRoZSAiRnJlc2htYW4gMTUiICAgIEFmdGVyIHRoZSAiRnJlc2htYW4gMjAiCiAKIAogICAgICAgICAgKF9fKSAgICAgICAgICAgICAgICAgICAgIChfXykgICAgICAgICAgICAgICAgICAgICAoX18pCiAgICAgICAgICAoT08pICAgICAgICAgICAgICAgICAgICAgKEBAKSAgICAgICAgICAgICAgICAgICAgICh4eCkKICAgLy0tLS0tLS1cLyAgICAgICAgICAgICAgIC8tLS0tLS0tXC8gICAgICAgICAgICAgICAvLS0tLS0tLVwvCiAgLyB8ICAgICB8fCAgICAgICAgICAgICAgIC8gfCAgICAgfHwgICAgICAgICAgICAgICAvIHwgICAgIHx8CiAqICB8fC0tLS18fCAgICAgICAgICAgICAgKiAgfHwtLS0tfHwgICAgICAgICAgICAgICogIHx8LS0tLXx8CiAgICBeXiAgICBeXiAgICAgICAgICAgICAgICAgXl4gICAgXl4gICAgICAgICAgICAgICAgIF5eICAgIF5eCiAKIENvdyB3aG8gZHJhbmsgSm9sdCAgICAgICBDb3cgd2hvIGF0ZSAgICAgICAgICAgICAgQ293IHdobyB1c2VkIEpvbHQgdG8gd2FzaAogICAgICAgICAgICAgICAgICAgICAgIHBzeWNoYWRlbGljIG11c2hyb29tcyAgICAgIGRvd24gcHN5Y2hhZGVsaWMgbXVzaHJvb21zCiAKIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvXCAgICAgICAgICAgICAgICAgIF9fCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyAgXCAgICAgICAgICAgICAgICAgfHwKICAgICAgICAgICAgICAoX18pICAgICAgICAgICAgICAgICAoX18pICBcICAvICAgICAgICAgICAgICAgKF98fF8pCiAgICAgICAgICAgICAgU29vUyAgICAgICAgICAgICAgICAgKG9vKSAgIFwvICAgICAgICAgICAgICAgICAob28pCiAgICAgICAvLS0tLS0tU1wvUyAgICAgICAgICAvLS0tLS0tLVwvICAgIC9TICAgICAgICAgIC8tLS0tLS0tXC8KICAgICAgLyB8ICAgICB8fCAgICAgICAgICAgLyB8ICAgICB8fCAgICAvICBTICAgICAgICAvIHwgICAgIHx8CiAgICAgKiAgfHwtLS0tfHwgICAgICAgICAgKiAgfHwtLS0tfHxfX18vICAgIFMgICAgICAqICB8fC0tLS18fAogICAgICAgIF5eICAgIF5eICAgICAgICAgICAgIF5eICAgIF5eICAgICAgICAgICAgICAgICAgXl4gICAgXl4KICAgICBUaGlzIGNvdyBiZWxvbmdlZCAgICAgQmVuIEZyYW5rbGluIG93bmVkICAgICAgIEFiZSBMaW5jb2xuJ3MKICAgdG8gR2VvcmdlIFdhc2hpbmd0b24gICAgICAgdGhpcyBjb3cgICAgICAgICAgICAgICAgICAgY293CiAKIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChfXykKICAgICAgICAgICogICAgICAgIChfXykgICAgICAgICAgICAgICAgICAgICAgICAgICAob28pCiAgICAgICAgICAgXCAgICAgICAob28pICAgICAgICAgICAgICAgICAgICAgLy0tLS0tLVwvCiAgICAgICAgICAgIFwtLS0tLS0tXC8gICAgICAgICAgICAgICAgICAgICAvfCAgfC8gIHwKICAgICAgICAgICAgIHwgPT0kIHx8ICAgICAgICAgICAgICAgICAgICAgLyB8ICBbKSB8fAogICAgICAgICAgICAgfHwtLS0tfHwgICAgICAgICAgICAgICAgICAgICogIHx8LS0tLXx8CiAgICAgICAgICAgICBeXiAgICBeXiAgICAgICAgICAgICAgICAgICAgICAgXl4gICAgXl4KICAgICAgT2xkICJPbmUgQXJtIiBiZWxvbmdlZCAgICAgICAgICAgVGhpcyBjb3cgd2FzIGdpdmVuIHRvCiAgICAgICAgdG8gQ2Vhc2FyJ3MgUGFsYWNlICAgICAgICAgICBIdWdoIEhlZm5lciBmb3IgaGlzIEJpcnRoZGF5CiAKIAogICAgICAgICAgICAgICAgICAgKF9fXykgICAgICAgICAgICAgICAoX18pICAgICAgKF9fKQogICAgICAgICAgICAgICAgICAgKCBPICkgICAgICAgICAgICAgICAob28pICAgICAgKG9vKQogICAgICAgICAgICAvLS0tLS0tLVwgLyAgICAgICAgICAgICAgICAgXC8tLS0tLS0tLVwvCiAgICAgICAgICAgLyB8ICAgICB8fFYgICAgICAgICAgICAgICAgICAgfCAgICAgICAgfAogICAgICAgICAgKiAgfHwtLS0tfHwgICAgICAgICAgICAgICAgICAgIHx8LS0tLS0tfHwKICAgICAgICAgICAgIF5eICAgIF5eICAgICAgICAgICAgICAgICAgICBeXiAgICAgIF5eCiAgIFRoZSBjeWNsb3BzIHRoYXQgSmFzb24gYW5kICAgICAgICAgVGhpcyBjb3cgbGl2ZWQgd2l0aAogdGhlIEFyZ29uYXV0cyBtZXQgaGFkIHRoaXMgY293ICAgICAgICAgIERyLiBEb29saXR0bGUKIAogCiAgICAgICAgICAgICAgKF9fKSAgICAgICAgICAgICAgICAgICAoX18pCiAgICAgICAgICAgICAgWyMjXSAgICAgICAgICAgICAgICAgICAoQG8pCiAgICAgICAvLS0tLS0tLVwvICAgICAgICAgICAgIC8tLS0tLS0tXC8gICAgICAgICAgICAgIC8tLS0tLS0tICAoX18pCiAgICAgIC8gfCAgICAgfHwgICAgICAgICAgICAgLyB8ICAgICB8fCAgICAgICAgICAgICAgLyB8ICAgICB8fCAob28pCiAgICAgKiAgfHwtLS0tfHwgICAgICAgICAgICAqICB8fC0tLS18fCAgICAgICAgICAgICAqICB8fC0tLS18LS0tXC8KICAgICAgICBeXiAgICBeXiAgICAgICAgICAgICAgIF5eICAgIF5eICAgICAgICAgICAgICAgIF5eICAgIF4KICBUaGlzIGNvdyBiZWxvbmdlZCAgICAgIFRoaXMgY293IGxpdmVkIHdpdGggICAgICBUaGlzIGNvdyBiZWxvbmdlZCB0bwogICB0byBGbGFzaCBHb3Jkb24gICAgICAgdGhlIExpdHRsZSBSYXNjYWxzICAgICAgIHRoZSBIZWFkbGVzcyBIb3JzZW1hbgogCiAKICAgICAgICAgICAgICAgICAgICAgKF9fX18pICAgICAgICAgICAgIChfX19fKSAgICAgICAgICAgICAgICAgICAgICAgICAgCihfX19fKQogICAgICAgICAgICAgICAgICAgICAob28gICkgICAgICAgICAgICAgICAgKG8gIG8pICAgICAgICAgICAgICAgICAgICAgICAgKCBPCk8pCiAgICAgICAgICAvLS0tLS0tLS0tLS1cICAvICAgICAgICAgIC8tLS0tLVwgICAgLy0tLS0gICAgICAgICAgLy0tLS0tLS0tLS0tXCAKLwogICAgICAgICAvIHx8ICAgICAgIHwgIFwvICAgICAgICAgIC8gfCAgIHwgIFwvICAgfCAgICAgICAgICAgLyB8fCAgICAgICB8ICBcLwogICAgICAgIC8gIHx8ICAgICAgIHx8fHwgICAgICAgICAgIFwgfCAgfCAgICAgIHwgfCB8ICAgICAgICAvICB8fCAgICAgICB8fHx8CiAgICAgICAqICAgfHx8fC0tLS0tfHx8fCAgICAgICAgICAgICp8IHwgfC0tLS0tfCB8IHwgICAgICAgKiAgIHx8fHwtLS0tLXx8fHwKICAgICAgICAgICAvXC9cICAgICAvXC9cICAgICAgICAgICAgIC9cIC9cICAgICAvXCAvXCAgICAgICAgICAgXl5eXiAgICAgXl5eXgogICAgICBUaGlzIGNvdyBiZWxvbmdlZCAgICAgICAgIFRoaXMgd2FzIFNhbHZhdG9yZSAgICAgIE5vIG9uZSB3YXMgc3VyZQp3aGV0aGVyCiAgICAgICB0byBQYWJsbyBQaWNhc3NvICAgICAgICBEYWxpJ3MgZmF2b3JpdGUgY293ICAgIE0uQy4gRXNjaGVyJ3MgY293IGhhZApmb3VyCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZ3Mgb3IgZWlnaHQKIAogCiAgICAgICAgICAgICAgICBPX19PICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcX3xfLwogICAgICAgICAgICAgICAgKG9vKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9vKQogICAgICAgICAvLS0tLS0tLVwvICAgICAgICAgICAgICAgICAgICAgICAvLS0tLS0tLVwvCiAgICAgICAgLyB8ICAgICB8fCAgICAgICAgICAgICAgICAgICAgICAgLyB8ICAgICB8fAogICAgICAgKiAgfHwtLS0tfHwgICAgICAgICAgICAgICAgICAgICAgKiAgfHwtLS0tfHwKICAgICAgICAgIF5eICAgIF5eICAgICAgICAgICAgICAgICAgICAgICAgIF5eICAgIF5eCiAgICAgQ293IGF0IERpc25leWxhbmQgICAgICAgICBDb3cgdmlzaXRpbmcgdGhlIFN0YXR1ZSBvZiBMaWJlcnR5CiAKIAogCiAgICAgICAgICAgICAgICAgICAgICAgICAoX18pICAgICAgICAgICAgICAgICAgICAgICAgKF9fKQogICAgICAgICAgICAgICAgIF5eICAgICAgKG9vKSAgICAgICAgICAgICAgICAgICAgICAgICgtLSkKICAgICAgICAgICAgIF5eXl4gLy0tLS0tLS1cLyAgICAgICAgICAgICAgICAgICAgICAgIC8tXC8tXAogICAgICAgICAgXl5eXl4gIC8gfCAgICAgfHwgICAgICAgICAgICAgICAgICAgICAgICAvfCAgICB8XAogICAgICAgIF5eXl5eICAgKiAgfHwtLS0tfHwgICAgICAgICAgICAgICAgICAgICAgIF4gfCAgICB8IF4KICAgICBeXl5eXl5eXiAgPT09PV5ePT09PV5ePT09PSAgICAgICAgICAgICAgICAgICAgIHwgICAgfAogXl5eXl5eXl5eXl5eXi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy0tLS1cCiBeXl5eXl5eXl5eXl5eXl5eXl4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8gICAgXCBcCiBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eICAgICAgICAgICAgICAgXiAgICAgICogXgogICAgICBDb3cgSGFuZ2luZyBUZW4gYXQgTWFsaWJ1ICAgICAgICAgICBDb3cgc3VubmluZyBhdCBGb3J0IExhdWRlcmRhbGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChXaGF0IGEgYm9kLCBodWggZ3V5cz8pCiAKIAogICAgICAgICAgICAgICAgKVwgICAgICAgICAgICAgICAoX18pCiAgICAgICAgICAgICAgIC8gIFwgICAgICAgICAgICAgIChvbykKICAgICAgICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICAgICAgICAgICBDb3cgc3dpbW1pbmcgYXQgQW1pdHl2aWxsZQogKFdoZXJlIEphd3Mgd2FzIGZpbG1lZCwgZm9yIHRob3NlIGxlc3MgZWR1Y2F0ZWQpCiAKIAogICAgICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChfXykKICAgICAgICAgIFwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoREQpCiAgICAgICAgICAgXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLS0tLS0tLVwvCiAgICAgICAgICAgfFwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8gfCAgICAgfHxfXF8vCiAgICAgICAgIFwgfCBcIChfXykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKiAgfHwtLS0tfAogICAgICAgICBcXHx8IFwob28pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5eICAgIF4KICAgICAgICAgIFx8fFwgXFwvICAgICAgICAgICAgICAgICAgICAgICAgIENvdyBjaHVnZ2luZyBicmV3cyBhbmQgc3RhcmluZyBhdAogICAgICAgICAgIF5eIFx8fCAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdW5iYXRoZXJzIGF0IEZvcnQgTGF1ZGVyZGFsZQogICAgICAgICAgICBcXCB8fAogICAgICAgICAgICAgXFx8fAogICAgICAgICAgICAgIFx8fAogICAgICAgICAgICAgICBeXiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8gLyAvIC8gLyAvIC8gLyAvIC8gLwogICAgICAgICAgICAgICAgXFxfICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyAvIC8gLyAvIC8gLyAvIC8gLyAvIC8KICAgICAgICAgICAgICAgICBcXyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8gLyAvIC8gLyBfX19fX19fICAgLyAvCiAgQ293IHNraWluZyBhIEJsYWNrIERpYW1vbmQgYXQgQXNwZW4gICAgICAgICAgICAvIC8gLyAgICAvICAgfCAgIFwgIC8gLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyAvIC8gICAgKF9fKXwgICAgICAvIC8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8gLyAvICAgIChvbyl8ICAgICAgLyAvCiAgICAoIEBAQCApICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8tLS0tLS0tXC8gfAogICAgICggQEAgKSAgICAgICAgICAgICgtLS0tLS0tLS0tLS0pICAgICAgICAgICAgIC8gfCAgICAgfHxeX3wKICAgICAgICBAQCAgKF9fKSAgICAgICAoICAqPkNPVUdIPCogKSAgICAgICAgICAgICogIHx8LS0tLXwKICAgICAgICAgQEAgKG9vKSAuIC4gLiAoICAqPkNPVUdIPCogKSAgICAgICAgICAgICAgIF5eICAgIF4KICAgICAgLy0tVVUtLVwvICAgICAgICAoX19fX19fX19fX19fKQogICAgIC8gfCAgICB8fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvdyBzaGVsdGVyaW5nIGZyb20gRW5nbGlzaApXZWF0aGVyCiAgICAqICB8fC0tLXx8CiAKICAgIChOZXcpIEplcnNleSBDb3cKIAogCiAgICAgICAgICAgICAgICAgICAgICAgIE8gTyAgICAgICAgICAgICAgICAgTyBPCiAgICAgICAgICAgICAgICAgICAgICAgICBcIFwgICAgICAgICAgICAgICAvIC8KICAgICAgICAgICAgICAgICAgICAgICAgICBcIFwgICAgICAgICAgKF9fKSAvCiAgICAgICAgICAgKF9fKSAgICAgICAgICAgIFwgXCAgICAgICAgICh4eCkvCiAgICAgICAgICAgKEREKSAgICAgICAgICAgICBcICstLS0tLS0tLStcLy8KICAgIC8tLS0tLS0tXC8gICAgICAgICAgICAgICBcfCAgICAgICAgfCAvCiAgIC8gfCAgICAgfHwgICAgICAgICAgICAgICAgICstLS0tLS0tLSsKICAqICB8fC0tLS18fAogICAgIF5eICAgIF5eCiBDb3cgZmFudGFzaXppbmcgYWJvdXQgIlJpZGluZyB0aGUgTWVjaGFuaWNhbCBCdWxsIgogICAgICAgICAgICAgYXQgR2lsbGllcyBpbiBUZXhhcwogCiAKICAgICAgICAgIG8gIG8KICAgICAgICAgIHxfX3wgICAgICAgICAgICAgKF9fKSAgICAgICAgICAgICAoX18pCiAgICAgICAgICAob28pICAgICAgICAgICAgIChvbykgICAgICAgICAgICA9KG9vKT0gICAgICAgICBvbwogICAvLS0tLS0tLVwvICAgICAgIC8tLS0tLS0tdnYgICAgICAgLy0tLS0tLS1cLwogIC8gfCAgICAgfHwgICAgICAgLyB8ICAgICB8fCAgICAgICAvIHwgICAgIHx8CiAqICB8fC0tLS18fCAgICAgICogIHx8LS0tLXx8ICAgICAgKiAgfHwtLS0tfHwKICAgIH5+ICAgIH5+ICAgICAgICAgfn4gICAgfn4gICAgICAgICB+fiAgICB+fgogIGJpbGwgYml4YnkgICAgICAgIGJlbGEgbHVnb3NpICAgICAgYm9yaXMga2FybG9mZiAgY2xhdWRlIHJhaW5zCiAgbWFsZSByZWxhdGl2ZSAgICAgY293ICAgICAgICAgICAgICBjb3cgICAgICAgICAgICBjb3cKICBjb3cKICAgICAgICAgICAgICAgICAgICAgICAgeAogICAgICAgICAgICAgICAgICAgIHh4eHh8eHh4eAogICAgICAgICAgICAgICAgIHh4eHh4eHh8eHh4eHh4eAogICAgICAgICAgICAgICAgICAgICAgICB8CiAgICAgICAgICAgICAgICAgICAgICAgLy8KICAgICAgICAgICAgICAgICAoX18pIC8vICAgICAgICAgICAgICAgICAgICAgICAgKF9fKSAgIChfXykKICAgICAgICAgICAgICAgICAob28pLy8gICAgICAgICAgICAgICAgICAgICAgICAgKG9vKT09PShvbykKICAgICAgICAgIC8tLS0tLS0tXC8vICAgICAgICAgICAgICAgICAgICAvLS0tLS0tLVwvICAgICBcLy0tLS0tLS1cCiAgICAgICAgIC8gfCAgICAgfC8vICAgICAgICAgICAgICAgICAgICAvIHwgICAgIHx8ICAgICAgIHx8ICAgICB8IFwKICAgICAgICAqICB8fC0tLS18ICAgICAgICAgICAgICAgICAgICAgKiAgfHwtLS0tfHwgICAgICAgfHwtLS0tfHwgICoKICAgICAgICAgICBeXiAgICBeXiAgICAgICAgICAgICAgICAgICAgICAgXl4gICAgXl4gICAgICAgXl4gICAgXl4KICAgICAgSnVsaWUgQW5kcmV3cyBDb3cgICAgICAgICAgICAgICAgICAgICAgICAgU2lhbWVzZSBjb3dzCiAKIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8gICAgICAgIG8gICAgICAgICAgICAgKF9fKSAgICBeCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgICAgICAvICAgICAgICAgICAgICAob28pICAgLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCAgICAvICAgICAgICAgICBfX19fX1wvX19fLwogICAgICAgICAgICAgIChfXykgICAgICAgICAgICAgIFxfXy8gICAgICAgICAgIC8gIC9cIC8gLwogICAgICAgICAgICAgIChvbykgICAgICAgX19fX19fXyhvbykgICAgICAgICAgXiAgLyAgKiAvCiAgICAgLy0tLS0tLS0tLVwvICAgICAgIC98ICBfX18gIFwvICAgICAgICAgICAgIC8gX19fLwogICAgLyB8IHg9YShiKXx8ICAgICAgIC8gfCB7ICAgfXx8ICAgICAgICAgKi0tLS0vXAogICAqICB8fC0tLS0tLXx8ICAgICAgKiAgfHx7X19ffXx8ICAgICAgICAgICAgIC8gIFwKICAgICAgXl4gICAgICBeXiAgICAgICAgIHx8LS0tLS18fCAgICAgICAgICAgIC8gICAvCiAgICAgICAgICAgICAgICAgICAgICAgICBeXiAgICAgXl4gICAgICAgICAgIF4gICAgXgogCiAgICAgTWF0aGVtYXRpY2FsICAgICAgICBUZWxldmlzaW9uICAgICAgVGhpcyBjb3cgZG9lcyBEaXNjbwogICAgICAgICBDb3cgICAgICAgICAgICAgICAgIENvdyAgICAgICAgKFRoYXQncyB3aGF0IGNvbWVzIG9mCiAgICAoZGV2ZWxvcGVyIG9mICAgICAgICAoQ293LXRob2RlICAgICAgc25vcnRpbmcgY293LWNhaW5lKQogICAgICBjb3ctY3VsdXMpICAgICAgICAgIFJheSBUdWJlKQogCiAgICAgICAgICAgICBvCiAgICAgICAgICAgICB8IFstLS1dCiAgICAgICAgICAgICB8ICAgfAogICAgICAgICAgICAgfCAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8LS0tLS0tPT09PT09PT18CiAgICAgICAgLy0tLS18LS0tfFwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgKioqKiB8PT09PT09PXwKICAgICAgIC9fX18vX19fXF9fX1wgICAgICAgICAgICAgICAgICAgICAgICAgbyAgfCAqKioqIHw9PT09PT09fAogICAgICAgfCAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICBfX198ICB8PT09PT09PT09PT09PT18CiAgICAgICB8ICAgICAgICAgICB8ICAgICAgICAgICAgICAgIF9fXyAgeyhfXyl9IHw9PT09PT09PT09PT09PXwKICAgICAgIFwtLS0tLS0tLS0tLS8gICAgICAgICAgICAgW10oICAgKT17KG9vKX0gfD09PT09PT09PT09PT09fAogICAgICAgIFwgIFwgICAvICAvICAgICAgICAgICAgIC8tLS09PT0tLXsgXC8gfSB8CiAgICAgLS0tLS0tLS0tLS0tLS0tLS0gICAgICAgICAvIHwgTkFTQSAgfD09PT0gIHwKICAgICB8ICAgICAgICAgICAgICAgfCAgICAgICAgKiAgfHwtLS0tLS18fC0tLS0tXgogICAgIC0tLS0tLS0tLS0tLS0tLS0tICAgICAgICAgICB8fCAgICAgIHwgICAgICB8CiAgICAgICAvICAgIC8gIFwgICBcICAgICAgICAgICAgIF5eICAgICAgXiAgICAgIHwKICAgICAgLyAgICAgLS0tLSAgICBcCiAgICAgICBeXiAgICAgICAgIF5eICAgICAgICAgICBUaGlzIGNvdyBqdW1wZWQgb3ZlciB0aGUgTW9vbgogCiAKICAgICAgICAgICAgICAgICAoX18pCiAgICAgICAgICAgICAgICAoW11bXSkgICAgICAgICAgICAiSSBoYXZlIHRoaXMgcmVjdXJyaW5nIGRyZWFtCiAgICAgICAgICAgICAgICBfX1wvXy0tVSAgICAgICAgICAgICAgYWJvdXQgZ29sZGVuIGFyY2hlcy4iLi4gIChfXykKICAgICAgICAgICAgICAgL1wgICAgXF9fICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXiAgOi4uKCIiKQogICAgICAgICAgICAgIC9cXFwgIC8gIC8gICAgICAgICAgICAgICAgICAgICAgICAgLy9cICBfX19fXF9fX19fXC8gLy8KICAgICAgICAgICAgIC8tLS0tXi9fXy9cIC9cICAgICAgICAgICAgICAgICAgICAgLy8gXFwvICAgICBcX19fIC8gLy8KICAgICAgICAgICAgICAgICBcXFxfX19fLy0tXC0tICAgICAgICAgICAgICAgICAvLyAvLS9fX19fX19fX19fLyAvLwogICAgICAgICAgICAgICAgICAvPT09PT09ICAgXC8gICAgICAgICAgICA9PT09PT09Lz09PT09PT09PT09PT09Ly8KICAgICAgICAgICAgICAgKl8vIC8gICAgXCAgIC9eICAgICAgICAgICAgICAvLyAgLyAgICAgICAgICAgICAgXFwKICAgICAgICAgICAgICAgICAgLyAgICAgIFwgXiAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgIFxcCiAKICAgICAgICAgICAgICAgICAgICAgIFBzeWNvd2xvZ2lzdCBhbmQgcGF0aWVudAogCiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9fXykKICAgICAgICAgICBcXl5eXl5eXl5cICAgKF9fKSAgICAgICAgICAgICAgICAgICAgKG8gbykKICAgICAgICAgICAgXF5eXl5eXl5eXFwgKG9vKSAgICAgICAgICAgICAgICAgICAgIFwgLwogICAgICAgICAqLS0tLS1cX19fX19fX1wvXC8gICAgICAgICAgICAgICAgICAgIFwtLU8tLS8KICAgICAgIF5fX19fX19fLyAgIC0tLSAgXF9fX19fX14gICAgICAgICAgICAgIC8vIC0tLS0tXAogICAgICBeLS0tLS0tLS1cICAgXFMvICAvXF9fX19fXiAgICAgICAgICAgICAgXFwvX157fSAvPT1WPT09W10KICAgICAgICAgICAgICAgIFxfX19fX18vICAgICAgICAgICAgICAgICAgICAgICAgXF9fX19fXFwvLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXF9fLwogICAgSXQncyBhIGJpcmQuLi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9cXCAgICAgICAgIFRoZSBCb3NzCiAgICAgSXQncyBhIHBsYW5lLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAgXFwgICAoQnJ1Y2UgSG9sc3RpZW4pCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAgIC8vCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeXiAgICBeXgogCiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID09PT09PT09PT09PT09PT09PQogIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fICAgICAgICAgICAgSCAgICAgICAgICAgICAgICBICiAgfCAgICAgICAgICAgICB8LS0tLS0tLS0tLS0tLXwgICAgICAgICAgICBIICAgICAoX18pICAgICAgIEgKICB8ICAgICAgICAgICAgIHwgICBfX19fX19fXyAgfCAgICAgICAgICAgIEggICAgIChvbykgICAgICAgSCAgICAgICBfXwogIHwgICBDT1dOVFkgICAgfCAgfCAofF9ffCkgfCB8ICAgICAgICAgICAgSCAgICAvIFwvIFwgICAgICBIICAgICAvICAgIFwKICB8ICAgIEpBSUwgICAgIHwgIHwgIHxvb3wgIHwgfCAgICAgICAgICAgIEggICB8IHwgIHwgfCAgICAgSCAgICB8IFNUT1AgfAogIHwgICAgICAgICAgICAgfCAgfF9ffFwvfF9ffCB8ICAgICAgICAgICAgSCAgIEQ9PT1iPS0tLS0tICBIICAgICBcIF9fIC8KICB8ICAgICAgICAgICAgIHwgbyAgICAgICAgICAgfCAgICAgICAgICAgIEheXl5eXl5eXl5eXl5eXl5eSCAgICAgICB8fAogIHwgICAgICAgICAgICAgfCBeICAgICAgICAgICB8ICAgICAgICAgICAgSCAgICAgICAgICAgICAgICBIICAgICAgIHx8CiAgfCAgICAgICAgICAgICB8IF0gICAgICAgICAgIHwgICAgICAgICAgICBIICAgICAgICAgICAgICAgIEggICAgICAgfHwKICB8ICAgICAgICAgICAgIHwgICAgICAgICAgICAgfCAgICAgICAgICAgIEggICAgICAgICAgICAgICAgSCAgICAgICB8fAogIHxfX19fX19fX19fX19ffF9fX19fX19fX19fX198ICAgICAgICAgICAgSCAgICAgICAgICAgICAgICBIICAgICAgIHx8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl4gICAgIF5eXl5eXl4KICBTb21lIGNvd3MgZ2V0IGluIHRyb3VibGUuLi4gICAgICAgICAgICAgICAgIENhdHRsZSBHdWFyZAogCiAKICAgICAgKCAgKCAgICApCiAgICAoICggICAgICkgICApCiAgICAoICggICAgICAgICApCiAgICggICAgICAgICAgIC8gKQogICggKCBcXCAgICAgICApCiAgICAgICggfCAgLy8gKQogICAgICAgIHwgICB8ICAgIChfXykKICAgICAgICB8ICAgfCAgICAob28pICAgICAgICAgICAgICAgICAgIChfXykKICAgICAgICB8ICAgfCAtLS0tXC8gICAgICAgICAgICAgIF9fX19fXyhvbylfX19fXwogICAgICAgIHwgICB8ICAgIHx8ICAgICAgICAgICAgICAoIF8pX19fX19fXyhfXykgKQogICAgICAqKnwgICB8IC0tLXx8ICAgICAgICAgICAgICAgIFwgX19fX19fX19fXy8KICAgICBgYCctLS0tLS0tLS1eXgogICAgICAgICBDb3cgSGlkZSAgICAgICAgICAgICAgICAgICAgIENvdyBQaWUKIAogCiAgICAgICAgICAgICAgICAgICAgXCAgfCAgLyAgICAgICAgIF9fX19fX19fX19fCiAgICAgX19fX19fX19fX19fICBcIFxfIyAvICAgICAgICAgfCAgX19fICAgICAgfCAgICAgICBfX19fX19fX18KICAgIHwgICAgICAgICAgICB8ICBcICAjLyAgICAgICAgICB8IHwgICB8ICAgICB8ICAgICAgfCA9ID0gPSA9IHwKICAgIHwgfCAgIHwgICB8ICB8ICAgXFwjICAgICAgICAgICB8IHxgdid8ICAgICB8ICAgICAgfCAgICAgICAgIHwKICAgIHwgICAgICAgICAgICB8ICAgIFwjICAvLyAgICAgICB8ICAtLS0gX19fICB8ICAgICAgfCB8ICB8fCB8IHwKICAgIHwgfCAgIHwgICB8ICB8ICAgICAjXy8vICAgICAgICB8ICAgICB8ICAgfCB8ICAgICAgfCAgICAgICAgIHwKICAgIHwgICAgICAgICAgICB8ICBcXCAjXy9fX19fX19fICB8ICAgICB8ICAgfCB8ICAgICAgfCB8ICB8fCB8IHwKICAgIHwgfCAgIHwgICB8ICB8ICAgXFwjIC9fX19fXy8gXCB8ICAgICAgLS0tICB8ICAgICAgfCAgICAgICAgIHwKICAgIHwgICAgICAgICAgICB8ICAgIFwjIHwrICsrfCAgfCB8ICB8Xl5eXl5efCB8ICAgICAgfCB8ICB8fCB8IHwKICAgIHwgICAgICAgICAgICB8ICAgIFwjIHwrICsrfCAgfCB8ICB8Xl5eXl5efCB8ICAgICAgfCB8ICB8fCB8IHwKIF5eXnwgICAgKF5eXl5eKSB8Xl5eXl4jXnwgSCAgfF8gfF58ICB8IHx8fHwgfCB8Xl5eXl5efCAgICAgICAgIHwKICAgIHwgICAgKCB8fHwgKSB8ICAgICAjIF5eXl5eXiAgICB8ICB8IHx8fHwgfCB8ICAgICAgfCB8fHx8fHx8IHwKICAgIF5eXl5eXl5eXl5eXl5fX19fX19fXy8gIC9fX19fXyB8ICB8IHx8fHwgfCB8ICAgICAgfCB8fHx8fHx8IHwKICAgICAgICAgYHYnLSAgICAgICAgICAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eICAgICAgfCB8fHx8fHx8IHwKICAgICAgICAgIHx8IHxgLiAgICAgIChfXykgICAgKF9fKSAgICAgICAgICAgICAgICAgICAgICAgICAgKCApCiAgICAgICAgICAgICAgICAgICAgICAob28pICAgIChvbykgICAgICAgICAgICAgICAgICAgICAgIC8tLS1WCiAgICAgICAgICAgICAgIC8tLS0tLS0tXC8gICAgICBcLyAtLS0tLS0tLVwgICAgICAgICAgICAgKiB8ICB8CiAgICAgICAgICAgICAgLyB8ICAgICB8fCAgICAgICAgfHxfX19fX19ffCBcCiAgICAgICAgICAgICAqICB8fFctLS18fCAgICAgICAgfHwgICAgICB8fCAgKgogICAgICAgICAgICAgICAgXl4gICAgXl4gICAgICAgIF5eICAgICAgXl4KIAogICAgICAgICAgICAgICAgICAgICAgICAgIkNvdyBUb3duIgogCiAKICAgICAgICAgICAgICAgXCAoX18pICAgICAgICAgICAgICAgICAgICAgICAoX18pCiAgICAgICAgICAgICAgIFxcKG9vKSAgICAgICAgICAgICAgICAgICAgICAgKFwvKQogICAgICAgICAgLy0tLS0tXFxcLyAgICAgICAgICAgICAgICAgLy0tLS0tLS1cLwogICAgICAgICAvIHwgICAgKCMjKSAgICAgICAgICAgICAgICAvIHwgICAgIHx8CiAgICAgICAgKiAgfHwtLS0tfHwiICAgICAgICAgICAgICAgKiAgfHwtLS0tfHwKICAgICAgICAgICBeXiAgICBeXiAgICAgICAgICAgICAgICAgICB+fiAgICB+fgogICAgIFRoaXMgY293IHBsYXlzIGJhZ3BpcGVzLiAgICAgIENvdyBmcm9tIEJlaWppbmcKIAogCiAgICAgICAgICAoX18pICAgICAgICAgICAgICAgICAgICAgKF9fKSAgICAgICAgICAgICAgICAgICAgIChfXykKICAgICAgICAgIChcLykgICAgICAgICAgICAgICAgICAgICAoJCQpICAgICAgICAgICAgICAgICAgICAgKCoqKQogICAvLS0tLS0tLVwvICAgICAgICAgICAgICAgLy0tLS0tLS1cLyAgICAgICAgICAgICAgIC8tLS0tLS0tXC8KICAvIHwgNjY2IHx8ICAgICAgICAgICAgICAgLyB8PT09PT18fCAgICAgICAgICAgICAgIC8gfCAgICAgfHwKICogIHx8LS0tLXx8ICAgICAgICAgICAgICAqICB8fC0tLS18fCAgICAgICAgICAgICAgKiAgfHwtLS0tfHwKICAgIF5eICAgIF5eICAgICAgICAgICAgICAgICBeXiAgICBeXiAgICAgICAgICAgICAgICAgXl4gICAgXl4KIAogU2F0YW5pYyBjb3cgICAgICAgICAgIFRoaXMgY293IGlzIGEgWXVwcGllICAgICAgICAgQ293IGluIGxvdmUKIAogCiAgICAgICAgICAoX18pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChfXykKICAgICAgICAgIChvbykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9vKQogICAvLScnJycnLVwvICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8tLS0tLS0tLS0tLS0tLS0tLS0tXC8KICAvIHwnJycnJ3x8ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8gfCAgICAgICAgICAgICAgICAgfHwKICogIHx8JycnJ3x8ICAgICAgICAgICAgICAgICAgICAgICAgICAgKiAgfHwtLS0tLS0tLS0tLS0tLS0tfHwKICAgIF5eICAgIF5eICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXl4gICAgICAgICAgICAgICAgXl4KICBDb3cgaW4gQXJneWxlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdHJldGNoIENvdwogICAgICAgICAgICAgICAgICAgICAgICAgICoKICAgICAgICAgICAgICAgICAgICAgICAqKiAgICoqCiAgICAgICAgICAgICAgICAgICogKiogICogKiAqICAqKgogICAgICAgICAgICAgICAgICogICAvICAvICAgXCAqICAqCiAgICAgICAgICAgICAgXCAgXCAvICBcICAgICAgICAvIC8gICAgICAgICAgICAgICAgICAgICAgICAgKF9fKQogICAgICAgICAgICogIC8gIC8gXCAgXCAgKF9fKSAgXCBcICAgICAgICAgICAgICAgIC8tLS0tLS0tLSgwMCkKICAgICAgICAgICAgIC8gICAgICAgICAgICgwMCkgIC8gLyAgICAgICAgICAgICAgIC8gfCAgICAgIHwoICApCiAgICAgICAgICAgICBcICAgIC8tLS0tLS0tXC8gICBcIFwgICAgICAgICAgICAgICogIHx8LS0tLSB8fCgpCiAgICAgICAgICAgICAvICAgLyB8ICAgICB8fCAgICAvIC8gICAgICAgICAgICAgICAgIHx8ICAgICB8fAogICAgICAgICAgIFwgXCAgKiAgfHwtLS0tfHwgICAgXCBcICAgICAgICAgICAgICAgICBeXiAgICAgXl4KICAgICAgICAgIC8gIC8gICAgIF5eICAgIF5eICAgIC8gLyAgICAgICAgICAgIENvdyBDaGV3aW5nIE1hcmJsZXMKICAgICAgICAgICAgICAgICAgQ293IGluIEhlYXQKIAogCiAgICAgICAgICAgIChfX18pCiAgICAgICAgICAgIChvIG8pCiAgICAgIC8tLS0tLS1cIC8gICAoX18pICAgICAgICAgICAgICAgICAgICAgICAgIChfXykKICAgICAvICAgIF9fX19PICAgIChvbykgICAgICAgICAgICAgICAgICAgICAgICAgKG9vKQogICAgfCAgIC8gLy0tLS1cLS0tLVwvICAgICAgICAgICAgICAgICAgIC8tLS0tLS0tXC8KICAgIC9cb289PT18ICAvICAgIHx8ICAgICAgICAgICAgICAgICAgIC8gfCAgICAgfHwKICAgfCB8fCAgICp8fF4tLS0tLXx8ICAgICAgICAgICAgICAgICAgKiAgT08tLS0tT08KICAgKiAgXl4gICBeXiAgICAgIF5eCiAgICAgQ293dCBpbiB0aGUgQWN0ICAgICAgICAgICAgICAgICAgIGxvdyByaWRlciBjb3cKIAogCiAgICAgICAgICAoX18pICAgICAgICAgICAgICAgICBcX19cICAgICAgICAgICAgICAgICAoX18pCiAgICAgICAgICAob28pICAgICAgICAgICAgIG8gICAob28pICAgICAgICAgICAgICAgICAob28pCiAgIC8tLS0tLS0tXC8gICAgICAgICAgIF9fX19cX19fXC8gICAgICAgICAgKistLS0tLS0tXC8KICAvIHwgICAgIHx8ICAgICAgICAgICAvIHwgICAgIHx8ICAgICAgICAgICB8fF9fX19fX3x8CiAqICB8fC0tLS18fCAgICAgICAgICAqICB8fC0tLS18fCAgICAgICAgICAgICB8fC0tLS18fAogICAgT08gICAgT08gICAgICAgICAgICAgT08gICAgT08gICAgICAgICAgICAgT08gICAgT08KIERldHJvaXQgY293ICAgICAgICAgIE11c3RhbmcgY293ICAgICAgICAgICAgcGlja3VwIGNvdwogCiAKICAgICAgICAgICAgICAgICAgKF9fKSAgICAgICAgICAgICAgKF9fKSAgICAgICAgICAgICAgXF98fF9+CiAgICAgICAgICAgICAgICAgIChvbykgICAgICAgICAgICAgIChvbykgICAgICAgICAgICAgICgqfHwqKQogICAvLS0tLS0tLS0tLS0tLS0tXC8gICAgICAgICAgIC8tLS0tXC8gICAgICAgIC8tLS0tLS0tXHx8LwogIC8gfCAgICAgICAgICAgICB8fCAgICAgICAgICAgLyAgICB8fCAgICAgICAgLyB8ICAgICB8fAogKiAgfHwtLS0tLS0tLS0tLS18fCAgICAgICAgKi18fC0tLS18fCAgICAgICAqICB8fC0tLS18fAogICAgT08gICAgICAgICAgICBPTyAgICAgICAgICBPTyAgICBPTyAgICAgICAgICBPTyAgICB9ewogICAgICAgbGktbW9vLWNvdyAgICAgICAgICBmYXN0YmFjayBjb3cgICAgICB0ZWVuYWdlcidzIGNvdwogCiAKICAgICAgICAgIF9fX18KICAgICAgICAgKF9fX18pCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnh4eHguCiAgICAgICAgICAoX18pICAgICAgICAgICAgICAgICAgJyhvbylgCiAgICAgICAgICAob28pICAgICAgICAgICAgLy0tLS0tJy1cLyBgCiAgIC8tLS0tLS0tXC8gICAgICAgICAgICAvIHwgICAgfD09PT09PT09PT09PT4KICAvIHwgICAgIHx8ICAgICAgICAgICAgKiAgfHwtLS0tfCAofikKICogIHx8LS0tLXx8ICAgICAgICAgICAgICAgfn4gICAgfgogICAgfn4gICAgfn4gICAgICAgICAgICAgTW9vLWFtbWFyIENvd2RhZmkKICAgIGhvbHkgY293ICAgICAgICAgICAgYXJtZWQgYW5kIGRhbmdlcm91cwogCiAKICAgICAgICAgIChfX18pICAgICAgICAgICAgIChfX18pCiAgICAgICAgICAobyBvKSAgICAgICAgICAgICAobyBvKQogICAvLS0tLS0tLVwgLyAgICAgICAvLS0tLS0tLVwgLwogIC8gfCAgICAgfHxPICAgICAgIC8gfCAgT34gfHxPCiAqICB8fCwtLS18fCAgICAgICAqICB8fCwtLS18fAogICAgXl4gICAgXl4gICAgICAgICAgXl4gICAgXl4KICAgICBBIEJ1bGwgICAgICAgQS1ib21iLWluLWEtYnVsbCAgICAgTm8tYnVsbAogCiAKICAgICAgICAgICAgKC0tLSkKICAgICAgICAgICAgKCAgICkKICAgICAgICAgICAvLS0tLS1cICAgICAgICAgICAgICAgICAgICAgICAgICAoX19fKQogICAgICAgICAgIHwgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgIChvIG8pCiAgICAgICAgICAgfCAgfCAgfCAgICAgICAgICAgICAgICAgICAoLS0tLS0pIFwgLwogICAgICAgICAgIHwgIHwgIHwgICAgICAgICAgICAgICAgICAvICAvIFwgICAgTwogICAgICAgICAgIHwgICogIHwgICAgICAgICAgICAgICAgICogIHwgTyB8CiAgICAgICAgICAgXl4gICBeXiAgICAgICAgICAgICAgICAgICAgLS0tLS0KICAgICAgICAgICBDb3dhcmQgICAgICAgICAgICAgICAgICBQaG9uZSBCdWxsCiAKIAogICAgICAgICAgICAgICAgICAgX19fX19fX19fX19fX19fX19fX19fX19fX18KICAgICAgICAgIH1fX3sgICAgLyBTZW5kIFlPVVIgY293IHBpY3R1cmVzIHRvIFwKICAgICAgICAgICgwMCkgICAoIGV3dGlsZW5pQHB1Y2MuUHJpbmNldG9uLkVEVSApCiAgIDoqKioqKiogXC8gPT09J1xfX19fX19fX19fX19fX19fX19fX19fX19fX18vJwogIDogIyAgICAgIyMKICAgICMjKioqKiMjCiAgICAiIiAgICAiIgogCiAKICB8ICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIHwgICAgICAgICAgICoKICB8ICAgIHwgICAgICAgICAgICAoX18pICAgICAgICAgICAgICB8ICAgIHwgICAgICAgICAgICBcICAgICAgIChfXykKICB8ICAgIHwgICAgICAgICAgICAob28pICAgICAgICAgICAgICB8ICAgIHwgICAgICAgICAgICAgXCAgICAgIChvbykKICB8ICAgIHwgICAgIC8tLS0tLS0tXC8gICAgICAgICAgICAgICB8ICAgIHwgICAgICAgICAgLS0tLS0tLS0tLS1cLy0tCiAgfCAgICB8ICAgIC8gfCAgICAgfHwgICAgICAgICAgICAgICAgfCAgICB8ICAgICAgICAgIC0tLS18ICAgICAgfC0tLQogIHwgICAgfCAgICogIHx8LS0tLXx8ICAgICAgICAgICAgICAgIHwgICAgfCAgICAgICAgICAgICAgLS0tLS0tLS0KICB8ICAgIFxfX19fX19eXl9fX19eXl9fXyAgICAgICAgICAgICB8ICAgIFxfX19fX19fX19fX19fX19fXwogIHwgICAgIF9fX19fX19fX19fX19fX19fICAgICAgICAgICAgIHwgICAgIF9fX19fX19fX19fX19fX19fCiAgfCAgICAvICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAvCiAgfCAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICB8CiAgfCAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICB8CiAgfCAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICB8CiAgfCAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICB8CiAgfCAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICB8CiAgfCAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICB8CiAgfCAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICB8CiAvICAgICAgXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvICAgICAgXAogCiBDb3cgcGVyY2hlZCBvbiBhIHRyZWUuICAgICAgICAgICAgICBDb3cgYXR0ZW1wdGluZyB0byBmbHkgb2ZmIHRyZWUuCiAKIAogIHwgICAgfAogIHwgICAgfAogIHwgICAgfAogIHwgICAgfAogIHwgICAgfAogIHwgICAgXF9fX19fX19fX19fX19fX19fCiAgfCAgICAgX19fX19fX19fX19fX19fX18KICB8ICAgIC8KICB8ICAgIHwKICB8ICAgIHwKICB8ICAgIHwKICB8ICAgIHwKICB8ICAgIHwKICB8ICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChfXykKICB8ICAgIHwgICAgICAgICAgICAgICAgICAgICAgKi0tLS0tLS0tLSguLikKIC8gICAgICBcICAgICAgICAgICAgICAgICAgICAgICAgXl4tLS0tXl5cLwogCiBDb3cgdGhhdCBoYXMgZmFpbGVkIG1pc2VyYWJseSBpbiB0aGUgYXR0ZW1wdC4KIAogCiAgIC4gICAgICAgICAgICAvXCAgICAgICAgIC4gICAgICAgLiAgICAgICAgOiAgICAgICAgICAgICAgICAoX18pCiAgICAgICAgIC4gICAgIC8gIFwgICAgICAuICAgICAgICAgIC4gICAgICAgOiAgICAgICAgICAgICAgICAoeHgpCiAgICAgICAgICAgICAgLyAgICBcICAgLiAgICAgICAgLiAgICAqICAgICAgOiAgICAgICAgIF9fLS0tLS0tXC8KICAgICAgICAgICAgIC8gICAgICBcICAgICAgICAgICAgICAqICAgICAgICA6ICAgICAgICAqIHx8X19fX3x8CiAgICAgICAgICAgICB8IChfXykgfCAgIC4gICAgLiAgICoqICAgICAgICAgOiAgICAgICAgIC8gfCAgICB8XAogICAgICAuICAgICAvfCAob28pIHxcICAgICAgICAgICAqKiAgICAgICAgIDoKICAgICAgICAgICAvIHwgL1wvXCB8IFwgICAuICAgICAuICogICAgICAgICA6ICAgICAgICAgSGFtYnVyZ2VyCiAgICAgICAuICAvICB8PXw9PXw9fCAgXCAgICAgLiAgICAgICogICAgICAgOgogICAgICAuIC8gICAgfCB8ICB8IHwgICAgXCAgLiAgICAgICAgICAgICAgIDoKICAgICAgIC8gVVNBIHwgXnx8XiB8TkFTQSBcICAgICAuICAgICAgICAgICA6ICAgICAgICogICAgICAgIChfXykKICAgICAgfF9fX19fX3wgIF5eICB8X19fX19ffCAgICAgICAuICAgICAgICA6ICAgICAgICBcICAgICAgIChvbykKICAgICAuICAgICAgIChfX3x8X18pICAgICAuICAgLiAgICAgICAgICAgICA6ICAgICAgICAgXC0tLS0tLS1cLwogICAgICAgIC4gICAgL19cICAvX1wgIC4gICAgIC4gICAgLiAgICAgICAgIDogICAgICAgIDgtfCAgICAgfHwKICAgICAgICAgICAgICEhISAgISEhICAgICAgICAgICAgICAgICAgICAgICA6ICAgICAgICAgIHx8LS0tLXx8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAgICAgICAgICBeXiAgICBeXgogICBUaGUgY293IHRoYXQganVtcGVkIG92ZXIgdGhlIG1vb24uICAgICAgIDogICAgICAgICBGbHlpbmcgQ293CiAKIAogICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4tLS0uLi4KICAgICAgICAgICAgICAgICAgICAgICAgLi4vICAvIHwgXCAgXC4uCiAgICAgICAgICAgICAgICAgICAgICAuLyAvICAvICB8ICBcICBcIFwuCiAgICAgICAgICAgICAgICAgICAgIC8gIC8gICAvICB8ICBcICAgXCAgXAogICAgICAgICAgICAgICAgICAgIC8gIC8gICAvICAgfCAgIFwgICBcICBcCiAgICAgICAgICAgICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl4KICAgICAgICAgICAgICAgICAgICBcICAgICAgICAgIHwgICAgICAgICAgLwogICAgICAgICAgICAgICAgICAgICBcICAgICAgICAgfCAgICAgICAgIC8KICAgICAgICAgICAgICAgICAgICAgIFwgICAgICAgIHwgICAgICAgIC8KICAgICAgICAgICAgICAgICAgICAgICBcICAgICAgIHwgICAgICAgLwogICAgICAgICAgICAgICAgICAgICAgICBcICAgICAgfCAgICAgIC8KICAgICAgICAgICAgICAgICAgICAgICAgIFwgICAgIHwgICAgIC8KICAgICAgICAgICAgICAgICAgICAgICAgICBcICAgIHwgICAgLwogICAgICAgICAgICAgICAgICAgICAgICAgICBcICAgfCAgIC8KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgIHwgIC8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHwgLyhfXykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHwvIChvbykKICAgICAgICAgICAgICAgICAgICAgICAgICAgLy0tLSsrLS1cLwogICAgICAgICAgICAgICAgICAgICAgICAgIC8gfCAgfHwgfHwKICAgICAgICAgICAgICAgICAgICAgICAgICogIHx8LSsrLXx8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBeXiAgICBeXgogCiAgICAgICAgICAgICAgICBDb3cgc3Vydml2aW5nIGF0dGFjayBieSBSZWQgQmFyb24KIAogCiAgICAgICAgICAgICAgIC4uLS0tLi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIChfXykKICAgICAgICAgICAgICAvICAgICAgIFwgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9vKQogICAgICAgICAgICAgIHwgIFJJUCAgfCAgICAgICAgICAgICAgICAgICAgIC8tLS0tLS0tXC8KICAgICAgICAgICAgICB8ICAgICAgIHwgICAgICAgICAgICAgICAgICAgIC8gfCAgICAgfHwKICAgICAgICAgICAgICB8ICAgICAgIHwgICAgICAgICAgICAgICAgICAgKiAgfHwtLS0tfHwKICAgICAgICAgICAgICB8ICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgXl4gICAgXl4KICAgICAgICAgICAgICB8ICAgICAgIHwKIFxcXFxcXFxcXFxcXFxcXFxcLy8vLy8vLy8vLy8vLy8vLy8KIAogICAgICAgICAgICAgRWx2aXMncyBDb3cuLi4gICAgICAuLi5PciBpcyBpdCBhbGl2ZSBhbmQgbGl2aW5nIGluIHRheCBleGlsZT8/PwogCiAKICAgICAgICAgICAgICAgICAgICAgIChfXykKICAgICAgICAgICAgICAgICAgICAgIChvbykKICAgICAgICAgLy0tLSsgICAgICArLS1cLwogICAgICAgIC8gfCAgfCAgICAgIHwgfHwKICAgICAgICogIHx8LSsgICAgICArLXx8CiAgICAgICAgICBeXiAgICAgICAgICBeXiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKgogCiAgICBEYXZpZCBDb3BwZXJmaWVsZCdzIENvdyAgICAgICAgICAgICAgIERhdmlkIENvcHBlcmZpZWxkJ3Mgb3RoZXIgQ293CiAKIAogCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoX18pCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob28pCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8tLS0tLS0tXC8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvIHwgICAgIHx8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqICB8fC0tLS18fAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXl4gICAgXl4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9fKSAgKF9fKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob28pICAob28pCiAgICAgICAgICAgICAgICAgICAgICAgLy0tLS0tLS1cLyAgICBcLy0tLS0tLS1cCiAgICAgICAgICAgICAgICAgICAgICAvIHwgICAgIHx8IC1eXi0gfHwgICAgIHwgXAogICAgICAgICAgICAgICAgICAgICAqICB8fC0tLS0gICAtXl4tICAgICAgIHx8ICAqCiAgICAgICAgICAgICAgICAgICAgICAgIF5eICAgICAgICAgICAgICAgICAgXl4KICAgICAgICAgICAgICAgICAgICAgICAoX18pICAgICAgICAgICAgICAgIChfXykKICAgICAgICAgICAgICAgICAgICAgICAob28pICAgICAgICAgICAgICAgIChvbykKICAgICAgICAgICAgICAgIC8tLS0tLS0tXC8gICAgICAgICAgICAgICAgICBcLy0tLS0tLS1cCiAgICAgICAgICAgICAgIC8gfCAgICAgfHwgICAgICAgICAgICAgICAgICAgIHx8ICAgICB8IFwKICAgICAgICAgICAgICAqICB8fC0tLS18fCAgICAgICAgICAgICAgICAgICAgfHwtLS0tfHwgICoKICAgICAgICAgICAgICAgICBeXiAgICBeXiAgICAgICAgICAgICAgICAgICAgXl4gICAgXl4KICAgICAgICAgICAgICAgICAgQmFybnVtJ3MgVHJvdXBlIG9mIHBlcmZvcm1pbmcgY293cwogCiAKIAogICAgICAgICAgICAgICAgICAgICAoX18pICAgICAgICAgICAgICAgICAgICAgICBfLS0tLS0tLS1fCiAgICAgICAgICAgICAgICAgICAgIChvbykgICAgICAgICAgICAgICAgICAgICAgfF9fX19fX19fX198ICAgQklHCiAgICAgICAgICAgICAgLy0tLS0tLS1cLyAgICAgICAgICAgICAgICAgICAgICAgIFhYWFhYWFhYWFggICAgTUFDCiAgICAgICAgICAgICAvIHwgMDA3IHx8ICAgICAgICAgICAgICAgICAgICAgICAgIF9fX19fX19fX18KICAgICAgICAgICAgKiAgfHwtLS0tfHwgICAgICAgICAgICAgICAgICAgICAgICB8XyAgICAgICAgX3wKICAgICAgICAgICAgICAgXl4gICAgXl4gICAgICAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tCiAgICAgICAgQ293IGxpY2VuY2VkIHRvIGtpbGwgICAgICBFbmVteSBDb3cgYWZ0ZXIgaGF2aW5nIG1ldCBwcmV2aW91cyBjb3cKIAogCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChfXykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9vKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8nXl5eLW0KICAgICAgICAgICAgIChfXykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8gJycgYCApCiAgICAgICAgICAgICAob28pICAgIG8gICAgIC98IC98L3xfICAgICAgICAgICAgICAgIHwgICAgICAvfAogICAgICAgICAgICAvIFwvICAgIC8gICAgLyAgICAgIF8gLyAgICAgICAgICAgICAgICB8ICB8ICB8IHwKICAgICAgICAgICAvICBfXD09PV4gICBfX19cX19fX18vX19fICAgICAgICAgICAgICAgfF9fX19ffF98CiAgICAgICBfX198X18vIHwvXCAgICAoX19fX19fX19fX18oXykgICAgICAgICAgICAgICAvL3x8IHx8CiAgICAgICogICAgICAgIF4gXiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICogIHd3IHd3CiAKICAgICAgICAgICAgIE1ycy4gTydMZWFyeSdzIENvdyAgICAgICAgICAgICAgICAgQ293J250IERyYWN1bGEKIAogCiAgX19fXyAgICAgICAgICAgICBfX19fICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8KysrKyt8CiB8KysrK3wgICAgX19fICAgIHwrKysrfCAgICAgICAgICAgICAgICAgICAgICAgX19fXyAgICB8KysrKyt8CiB8KysrK3wgICB8KysgX19fX19fX19fX19fX19fX19fX19fXyAgICAgICAgICB8KysrK3wgICB8KysrKyt8CiB8KysrK3wgICB8KysvICAgICAgLyggKVwgICAgICAgICAgIFwgICAgICAgICB8KysrK3wgICB8KysrKyt8ICAgX18KIHwgICAgfCAgIHwrfCAgICAgIHwtb28tIHwgICAgICAgICAgIFxfX19fX18gIHwrKysrfCAgIHwrKysrK3wgIHwrK3wKIC0gLSAtLS0tLShfXyktLXwgICAgICAgXF9fXC8gICAgICAgICAgIF8oX18pXyAgXAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgbyAgICggb28gL19fX19fX19fX19fX19fX19fX19fX19ffCAob28pICBcIHwgICAgICAgICBfXwogIHwgIF8vXF98IHwgIE0gTyBPIC0gQiBVIFMgVCBFIFIgU3xfX1wvXCAvfCB8ICAgICAgICAvb298IC0gQmxlYXVyZ2ghCiAgfC18ICBcXF9fX18gICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tICApXyAgICAvfCAgL1wKICAgLXxfICBcX3wtX3xeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXiAwICAgICBffCAgKiAgXC8gICoKICAgICAgXCAgfCAgX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXy8KICAgICAgfCAgV3wgIFwgXF8vIC8tLS0tLS0tLS0tLS0tLS0tLSBcIFxfLyAvCiAgICAgIC8gL1wgXCAgXF9fXy8gICAgICAgICAgICAgICAgICAgIFxfX18vCiAgICAgLyAvICBcIFwKICAgICBeXl4gICBeXl4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdobyB5b3UgZ29ubmEgY2FsbC4uLj8KIAogCiAgICAgICAgIChfXykgICAgICAgICAgICAgICAgICAgKF9fKSAgICAgICAgICAgICAgICAgICAgKF9fKSAgICAgIAooLS0tLS0tLS0tLSkKICAgICAgICAgKDAwKSAgICAgICAgICAgICAgICAgICAoLW8pICAgICAgICAgICAgICAgICAgICAoLS0pIC4gLiAuICggKj5ZQVdOPCoKKQogICAvLS0tLS0tXC8gICAgICAgICAgICAgIC8tLS0tLS1cLyAgICAgICAgICAgICAgIC8tLS0tLS1cLyAgICAgICAKKC0tLS0tLS0tLS0pCiAgL3wgICAgIHx8ICAgICAgICAgICAgICAvfCAgICAgfHwgICAgICAgICAgICAgICAvfCAgICAgfHwKICogfHwtLS0tfHwgICAgICAgICAgICAgKiB8fC0tLS18fCAgICAgICAgICAgICAgKiB8fC0tLS18fAogCiBDb3cgdy8gR2xhc3NlcyAgICBGbGlydGF0aW91cyBjb3cgKHdpbmtpbmcpICAgQ293IGFmdGVyIHB1bGxpbmcgYW4KYWxsLW5pZ2h0ZXIKIAogCiAqICAgICAgICAoX18pICAgICAgICAgICAgICAoX18pICAgICAgICAgICAgICAgKF9fKSAgICAgICAgICAgICAgIChfXykKICBcICAgICAgIChvbykgICAgICAgICAgICAgIChvbykgICAgICAgICAgICAgICAob28pICAgICAgICAgICAgICAgKG9vKQogICBcLS0tLS0tLVwvICAgICAgICAvLS0tLS0tLVwvICAgICAgICAgLy0tLS0tLS1cLyAgICAgICAgIC8tLS0tLS0tXC8KICAgL3wgICAgICB8XCAgICAgICAvIC8gICAgICBcICAgICAgICAgLyBcICAgICAgLyAgICAgICAgIC8gXCAgICAgIFwKICAvL3x8LS0tLXx8XFwgICAgICogLy8tLS0tLS1cXCAgICAgICAqICAgXFwtLS8vICAgICAgICAgKiAgIFxcLS0tLVxcCiAgXiBeXiAgICBeXiBeICAgICAgIF4gICAgICAgIF4gICAgICAgICAgICBeICBeICAgICAgICAgICAgICAgXiAgICAgXgogQ293IHdhbGtpbmcgICAgICAgICBDb3cgam9nZ2luZyAgICAgICAgIFNhbWUgY293ICAgICAgICBDb3cgYnJlYWtpbmcKIAogCiAgICAgICAgICAgKF9fKQogICAgICAgICAgIChvbykgICAgICAgICAgICAgICAgICAgICAgIChfXykgbyAgICAgICAqICAgICAoX18pCiAgICAgICAgICAgIFwvICAgICAgICAgICAgICAgICAgICAgICAgKG9vKS8gIiAgICAgIHwgICAgIChvbykKICAgICAgICBfX19ffCBcX19fXyAgICAgICAgICAgIC8tLS0tLS0tXC8oX18gbz1vPW89fC0tLS0tLVwvCiAgICAgICAgLS0tLyAgIC0tKiogICAgICAgICAgIC8gfCAgICAgICAvICAgICAgICAgIHwgICAgICB8CiAgICAgKl9fX18vICAgIHxfX18vLyAgICAgICAgKiAgfHwtLS0tfHwgICAgICAgICAgIHx8LS0tLXx8CiAgICAgICAgIC8vLS0tLS0tLS0vICAgICAgICAgICAgXl4gICAgXl4gICAgICAgICAgIF5eICAgIF5eCiAgICAgICAgLy9fXyAgICAgICAgICAgICAgICAgICAgICBDb3cgICAgICAgICAgIENvdyBwb29pbmcKICAgICAgICBDb3cgbWFyY2hpbmcgICAgICAgICAgICBzdGFuZGluZwogCiAKICAgIFNpZGUgICAgICBGcm9udCAgIFNpZGUgICBiYWNrICAgICAgICAgICAgICAgIChfX18pICBXaGVyZSdzIGFsbCB0aGUKYnVsbHMhCiAgICAoX18pICAgICAgKF9fKSAgICAoX18pICAgKF9fKSAgICAgICAgICAgICAgICAoTyBPKS8KICAgICggb28gICAgICAob28pICAgIG9vICkgICAoICApICAgICAgICAgICAgXiAgXy9cIC9cXyAgXgogICAgL1xffCAgICAgIC9cL1wgICAgfF8vXCAgIC8gIFwgICAgICAgICAgICBcXC8gICBPICAgXC8vCiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9fX19fXwogICAgICAgICAgKF9fKSAgICAgICAgICAgICAgICAgICAgICAgfCAgICB8ICAgICAgICAgICAgICAgICAgIChfXykKICAgICAgICAgIChvbykgICAgICAgICAgICAgICAgICAgICAgIHwgICAgfCAgICAgICAgICAgICAgICAgICAoJCQpCiAgICAgICAtLS0tXC8gICAgICAgICAgICAgICAgICAvLS0tLS1+fn5+fn4gICAgICAgICAgICAvLS0tLS0tLVwvCiAgICAgICAgICB8fCAgICAgICAgICAgICAgICAgIC8gfCAgICAgfHwgICAgICAgICAgICAgIC8gfCBJUlMgfHwKICAgICAgIC0tLXx8ICAgICAgICAgICAgICAgICAqICB8fC0tLS18fCAgICAgICAgICAgICAqICB8fC0tLS18fAogICAgICAgICAgfn4gICAgICAgICAgICAgICAgICAgIH5+ICAgIH5+ICAgICAgICAgICAgICAgIH5+ICAgIH5+CiAgRXJpYyB0aGUgaGFsZiBhIGNvdyAgICAgVGhlIHVua25vd24gY293bWljICAgICAgICAgVGF4IEFjb3dudGFudAogCiAKICAgICAgICAgICAoX19fKSAgICAgICAgICAgIChfX18pICAgICAgICAgICAgIChfX18pCiAgICAgICAgICAgKDAgMCkgICAgICAgICAgICAoMCAwKSAgICAgICAgICAgICAoMCAwKQogICAgICAgICAgICBcIC8gICAgICAgICAgICAgIFwgLyAgICAgICAgICAgICAgIFwgLwogICAgICAgICBfX1tfVl9dX18gICAgICAgIF9fW19WX11fXyAgICAgICAgIF9fW19WX11fXwogICAgICAgIC9fX19fX19fX19cPT09OiAgL19fX19fX19fX1w9PT06ICAgL19fX19fX19fX1w9PT06CiAgICAgICAgXE9PTy0tLU9PTy8gICAgICBcT09PLS0tT09PLyAgICAgICBcT09PLS0tT09PLwogCiAgICAgICAgICAgICAgICAgICAgICAgICBDb3dlZCBGb3JjZXMKICAgICAgICAgICAgICBcIF8gLwogICAgICAgICAgICAgLSAoICkgLSAgICAgICAgICAgICAgICAgICAgICAgICAgL1wKICAgICAgICAgICAgICAvICIgXCAgICAgICAgICAgICAgICAgICAgICAgICAvfCAgfCAgIChfXykKICAgICAgICAgICAgICAoX18pICAgICAgICAgICAgICAgICAgICAgICAgLyAgfCAgfCAgIChvbylcCiAgICAgIF9fX19fX19fKG9vKSAgICAgICAgICAgICAgICAgICAgICAvX19fX3wgIHwgICAgXC98ICBcCiAgICAgL3wgICAgICAgIFwvICAgICAgICAgICAgICAgICAgICAgLyAgICAgICBcLyAgICAgICB8ICAgIFwKICAgIC8gfF9fX19fX198fCAgICAgICAgICAgICAgICAgICBfXyhfX19fX19fICAgICAgICAgIHx8fF9fICBcCiAgICogIHx8ICAgICAgfHwgICAgICAgICAgICAgICAgICB8X19fX19fX19fX3wgICAgICAgICB8fHwgIF9fX19cLS0tKgogICAgICB+fiAgICAgIH5+CiAgVGhvbWFzIEVkaXNvbidzIGNvdyAgICAgICAgICAgICAgIENvdyBoZWFyaW5nIGhpcyBtYXN0ZXIncyB2b2ljZQogCiAKICAgICAgICAgICAgKSAgICAoICAgICAgICAgICAgICAgICAgICAgICAgIF8KICAgICAgICAgICAgKF9fX18pICAgICAgICAgICAgICAgICAgICAgICAgLyBcICAgICAgICAgICAgICAgIChfXykgIAo9PT09PT09PT09SQogICAgICAgICAgIC8gPSAgPSBcICAgIH4gICAgICAgICAgICAgICA9PScgICBgPT0gICAgICAgICAgICAgKG9vKSAgICBcIHx8fHx8fApJCiAgICAgICAgICAgKC1PLS1PLSkgICAgfiAgICAgICAgICAgICAgICA4IE8gTyA4ICAgICAgIC8tLS0tLS0tXC8gICAgICBcIHx8fHx8CkkKICAgICAgICAgICAgKCAgICApICAgICB+ICAgICAgICAvLS0tLS0tLSAoICAgKSAgICAgICAvIHwgICAgIHx8X19vPTwgICBcIHx8fHwKSQogICAvLS0tLS0tLSB8fHx8fHw9PT09PT0gICAgICAgLyB8ICAgICB8fCBcXy8gICAgICAgKiAgfHwtLS0tfCAgICAgICAgICBcIHx8fApJCiAgLyB8ICAgICB8fCAgXC8gICAgICAgICAgICAgICogIHx8LS0tLXx8ICAgICAgICAgICAgICB+fiAgICB+ICAgICAgICAgICBcIHx8CkkKICogIHx8LS0tLXx8ICAgICAgICAgICAgICAgICAgICAgfn4gICAgfn4KICAgIH5+ICAgIH5+CiAgICAgIEdyb3VjaG8gTW9vLXggICAgICAgICAgICAgICAgQ2hpY28gICAgICAgICAgICAgICAgSGFycG8KIAogICAgICAgX19fX19fX19fX19fX19fX19fX19fXyAgICAgICAgICAgIF9fX19fX19fX19fX19fX19fX19fX19fCiAgICAgICB8ICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgIHwKICAgICAgIHwgICAgICAgICAgICAoX18pICAgIHwgICAgICAgICAgICB8ICAoX18pICAgICAgICAgICAgICAgfAogICAgICAgfCAgICAgICAgICAgIChvbykgICAgfCAgICAgICAgICAgIHwgIChvbykgICAgICAgICAgICAgICB8CiAgICAgICB8ICAgICAvLS0tLS0tLVwvICAgICB8ICAgICAgICAgICAgfC0tLVwvICAgICAgICAgICAvLS0tLXwKICAgICAgIHwgICAgLyB8ICAgICB8fCAgICAgIHwgICAgICAgICAgICB8ICB8fCAgICAgICAgICAgLyB8ICAgfAogICAgICAgfCAgICogIHx8LS0tLXx8ICAgICAgfCAgICAgICAgICAgIHwtLXx8ICAgICAgICAgICogIHx8LS18CiAgICAgICB8ICAgICAgfn4gICAgfn4gICAgICB8ICAgICAgICAgICAgfCAgfn4gICAgICAgICAgICAgfn4gIHwKICAgICAgIHwtLS0tLS0tLS0tLS0tLS0tLS0tLXwgICAgICAgICAgICB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tfAogICAgICAgICAgICAgTm9ybWFsIENvdyAgICAgICAgICAgICAgICAgIDAgICBDb3cgIG1vZHVsbyBvbmUgICAxCiAKICAgICAgICAgICAgICAgICAgIChfXykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChfXykKICAgICAgICAgICAgICAgICAgIChvbykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvbykKICAgICAgX19fX19fX19fX19fX19cL19fX19fXyAgICAgICAgICAgICAgIF9fX18gICAgLy0tLS0tLS1cLyAgX18KICAgICAvX19fL19fXy9fX18vX19fL19fXy9fL3wgICAgICAgICAgICAgL19fXy98ICAvIHwgICAgIHx8IF8vXy98CiAgICAgfF9fX3xfX198X19ffF9fX3xfX198X3x8ICAgICAgICAgICAgIHxfX3x8L3wqIC8vLS0tLS18fHxffF98fAogICAgIHxffF9fX3xfX198X19ffF9fX3xfX198fCAgICAgICAgICAgICB8X3xfX3wvfH5+ICAgICAgfi98X19ffHwKICAgICB8X19ffF9fX3xfX198X19ffF9fX3xffC8gICAgICAgICAgICAgfF9fX3xffC8gICAgICAgIHxfX198X3wvCiAKICAgICBDb3cgaW4gdGhlIEdEUiBiZWZvcmUuLi4gICAgICAgICAgICAgLi4uYW5kIGFmdGVyIDktTm92LTE5ODkKIAogCiAgICAgICAgX19fX19fX19fX19fX18oX18pX19fX19fX19fX19fX19fX18gICAgICAgICAgICAgICAgICAgICAgKF9fKQogICAgICAvX19fX19fX19fX19fX19fKG9vKV9fX19fX19fX19fX19fXyAvICAgICAgICAgICAgICAgICAgICAgIChvbykKICAgICAgfCAgICAgICAgICAgICAgICBcLyAgICAgICAgICAgICAgICB8fCAgICAgICAgICAgICAgICAgICAgICAgXC8KICAgICBffF8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF98fCAgICAgICAgICAgICAgICAgICAgICAgfHwKICAgIC9fXy9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fL19fL3wgICAgICAgICAgICAgICAgICAgICAgfHwKICAgKCAgICkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoICAgKXwgICAgICAgICAgICAgICAgICAgICAgfHwKICAgIHwgfF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19ffCB8IHwgICAgICAgICAgICAgICAgICAgICAgfHwKICAgIFxfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fL10gICAgICAgICAgICAgIC8tLS0tLS0tIC8KICAgICBbXSAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgLyB8ICAgICB8fAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICogIHx8LS0tLXx8CiAgICAgICAgICAgICAgICAgICAgIENPVy1DSCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn4gICAgfn4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb3dyYWZmZQogCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKiAgICAgICoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCAgICAvCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcICAvCiAgICAgICAgL35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+XCAgICAgICAgICAgICAgICAgXC8KICAgICAgLyAgIChfXykgICAgICAgICAgICAgICAgICAgXCAgICAgICAgICAgKy0tLS0tLS0tLS0rCiAgICAgfCAgICAob28pIH5+fn5+fn5+fn5+XCAgICAgICB8ICAgICAgICAgIHwgICAgICAgICAgfAogICAgfH5+fnwgIFwvLiBcXCAgICAgICAvLyBcXyogfH5+fnwgICAgICAgICB8ICAgICAgICAgIHwKICAgIHwgICB8LS0tLS1gLy9gPT09PT0nXFwtLS0tLXwgICB8ICAgICAgICAgfCAgICAgICAgICB8CiAgICB8ICAgfC0tLS0tLy8tLS0tLS0tLS18fC0tLS18ICAgfCAgICAgICAgIHwgICAgICAgICAgfAogICAgfCAgIHxfIF8gXyJfIF8gXyBfIF8gIl8gXyBffCAgIHwgICAgICAgICArLS0tLS0tLS0tLSsKICAgICB+fHx+ICAgICAgICAgICAgICAgICAgICAgIH58fH4gICAgICAgICAgIHx8ICAgICAgfHwKIAogICAgICAgICAgICAgICAgICAgICAgICAgICJDT1dDSCBQT1RBVE8iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tLSsgICAgICAgICArCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBCIEEgVCBFIFMgIHwgIChfXykgICBvCiAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgKDB4KSAgICggICAgICAgKSAgICAgfEMgTyBSIFIgQSBMIHwgICgqKikgIC98CiAtIC0gLS0tLS0tLS0tLSAgICAgICAgICAgICB8ICAgICBcLyAgICAoICAgICAgICkgICAgICstLS0tLS0tLS0tLS0rICBcPT0vIC8KfAogfFwgICAgICAgICBcICAgICAgICAgICAgICAgICAgICAgICAgVy0tLS0tLSAgICAgICB8ICAgICAgICAgIHwgICAoICApICAgdgogfCAgLS0tLS0tLS0tLSAgICAgICAgICAqLS0tLSAgID09PT07ICAgICAgICAgICAgICAgICAgICAgICAgICAgICggICAgKQogfCAgfCAgKF9fKSAgfCAgICAgICAgICAgXCAgICAgICAgICAgLyAgICAgICAgICAgICAgICAgICAgICAgICAgICggICAgKQogXCAgfCAgKG9vKSAgfCAgICAgICAgICAgIFwgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICggICAgKQogIFwgfCAgIFwvICAgfCAgICAgICAgICAgICAgXCsgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICggICAgKQogICAgLS0tLS0tLS0tLSAgICAgICAgICAgICAgICAgICAgICAgKyAgICAgICAgICAgICAgICAgICAgICAgICAgICggICAgKQogICAgIEljZSBDb3diZSAgICAgICAgICAgIENPV0JPT09PT00hICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICB8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8gIG8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQc3ljaG8gQ293ICh3aXRoIGtuaWZlKQogICAgICAgICAgKF9fKQogICAgICAgICAgKG9vKSAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gICAgICAgICAgX19fX19fX19fX19fX19fX19fX19fX18KICAgLy0tLS0tLS1cLyAtIHwgRG9uJ3QgaGF2ZSBhIEJhcnQsIG1hbiEgfCAgICAgICAgfFwgfiAgICAgICAgICAgICAgICB+ICAvfAogIC8gfCAgICAgfHwgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gICAgICAgICB8IFwgICAgfiAgICAgIH4gICAgIH4gLyB8CiAqICB8fC0tLS18fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwoX1wgfiAgIENPVy1QSUUgfiAgIC9fKXwKICAgIH5+ICAgIH5+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfChvb1wgICB+ICAgICAgICAgICAvb28pfAogIFRoZSBTaW1wc29ucycgY293ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFwvIFwgICAgICAgfiAgfiAgLyBcLyB8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwoX18pIFwgICAgICAgICAgIC8gKF9fKXwKICAgICAgICAgICAgICAgICBcICAgICAgICAgICAgICAgLyAgICAgICAgICAgICAgICAgXChvbykoX1wgfiAgICAgfiAvXykob28pfAogICAgICAgICAgICAgICAgICBcX19fX19fX19fX19fXy8gICAgICAgICAgICAgICAgICAgXFwvIChvb1wgICAgICAgL29vKSBcLy8KICAgICAgICAgICAgICAgICAgL1xfX19fX19fX19fXy9cICAgICAgICAgICAgICAgICAgICBcICAgXC8gXCAgfiAgLyBcLyAgIC8KICAgICAgQ293IGluICAgIC8gL1xfX19fX19fX18vXCBcICAgICAgICAgICAgICAgICAgICBcICAoX18pXCAgIC8gKF9fKSAvCiAgICAgICB0cm91YmxlICAvIC8gL1xfX19fX19fL1wgXCBcICAgICAgICAgICAgICAgICAgICBcIChvbykgXH4vICAob28pLwogICAgICAgICAgICAgICAvIC8gLyAvIChfXykgL1wgXCBcIFwgICAgICAgICAgICAgICAgICAgIFwgXC8gICA6KF9fKVwvLwogICAgICAgICAgIF9fXy9fL18vXy9fIChvbykgXF9cX1xfXF9cX19fICAgICAgICAgICAgICAgICBcIChfXyk6KG9vKSAvCiAgICAgICAgICAgICAgXCBcIFwgXCBcIFwvICAvIC8gLyAvIC8gICAgICAgICAgICAgICAgICAgICBcKG9vKTogXC8gLwogICAgICAgICAgICAgICBcIFwgXCBcL19fX19fXC8gLyAvIC8gICAgICAgICAgICAgICAgICAgICAgIFxcLyhfXykgLwogICAgICAgICAgICAgICAgXCBcIFwvX19fX19fX1wvIC8gLyAgICAgICAgICAgICAgICAgICAgICAgICBcIChvbykvCiAgICAgICAgICAgICAgICAgXCBcL19fX19fX19fX1wvIC8gICAgICAgICAgICAgICAgICAgICAgICAgICBcIFwvLwogICAgICAgICAgICAgICAgICBcL19fX19fX19fX19fXC8gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFw6LwogICAgICAgICAgICAgICAgICAvICAgICAgICAgICAgIFwKICAgICAgICAgICAgICAgICAvICAgICAgICAgICAgICAgXAogCiAgICAgICAgICAgKF9fKSAgICAgICAgICAgICAgIChfXykgICAgICAgICAgICAgIChfX19fX18pICAgICAgICAgICAgIChfXykKICAgICAgICAgICAob28pICAgICAgICAgICAgICAgKG9vKSAgICAgICAgICAgICAgKCBvICBvICkgICAgICAgICAgICAgKG9vKQogICAvLS0tLS0tLS1cLyAgICAgICAgIC9+fn5+fn5+XC8gICAgICAgICAgLy0tLS0tXCAgICAvICAgICAgIC8tLS0tLS0tXC8KIC4vIHwgICAgICAgIHwgICAgICAgLi8ge34pKSkpKV99ICAgICAgICAgLyB8ICAgICB8XC8gICAgICAgIC8gfCAgICAgfHwKICAgIHwtLVctLS0tLXwgICAgICAgICAgfHxgYCAgIHx8ICAgICAgICAqICB8fC0tLS18fCAgICAgICAgKiAgKC4pKC4pfHwKICAgIHwgfCAgICB8IHwgICAgICAgICAgfn4gICAgIH5+ICAgICAgICAgICB+fiAgICB+fiAgICAgICAgICAgfn4gICAgfn4KICAgIH5+ICAgIH5+CiBjb3cgYmVmb3JlIHdlaWdodCAgICAgICBjb3cgYWZ0ZXIgICAgICAgICAgQ29uY2VpdGVkICAgICAgIERvbGx5IFBhcnRvbidzCiAgIGxvc3MgcHJvZ3JhbSAgICAgICAgIHRoZSBwcm9ncmFtICAgICAgICAgICAgQ293ICAgICAgICAgICAgICAgQ293CiAKIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9fXykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICggIE9PCiAgIF9fX19fXyAgICAgIF9fX19fXyAgICAgIF9fX19fXF8gfCAgICAgICAgICAgICAgICAgX19fX19fICAoX18pIF9fX19fXwogIHwgICAgICB8ICAgIHwgICAgICB8ICAgIHwgICAgICB8XE8gICAgY293c3RsZSAgICAgfCAgICAgIHwgKG9vKXwgICAgICB8CiAgfCAgICAgIHxfX19ffCAgICAgIHxfX19ffCAgICAgIHwgICAgICAgICAgICAgICAgICB8ICAgICAgfF9fXC9ffCAgICAgIHwKICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfAogIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgKF9fKSAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8CiAgfCAgICAgICAgICBfX19fX19fX19fICAgICAgICAgIHwgICAob28pICAgICAgICAgICB8ICAgICBfX19fX19fX19fICAgIHwKICB8ICAgICAgICAgfCAgICAgICAgICB8ICAgICAgICAgfCAgICBcLy0tLS0tLS1cICAgIHwgICAgfCAgICAgICAgICB8ICAgfAogIHwgICAgICAgICB8ICAgICAgICAgIHwgICAgICAgICB8IF9fXyB8IF9fXyAgfF9cXyAgfCAgICB8ICAgICAgICAgIHwgICB8CiAgfCAgICAgICAgIHwgICAoX18pICAgfCAgICAgICAgIHxffCB8X3xffCB8X198fCB8X198ICAgIHwgICAoX18pICAgfCAgIHwKICB8ICAgICAgICAgfCAgIChvbykgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIChvbykgICB8ICAgfAogIHwgICAgICAgICAgXF9fX1wvX19fLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXF9fX1wvX19fLyAgICB8CiAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAogICAoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX19fX19fICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyAgICAgIFwgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvICAgICAgICBcICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICggICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgfCAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwgICAgICAgICAgICAgIHwKICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICB8ICAgICAgICAgICAgICB8CiAgICAgICAgICAgIHxfX19fX19fX19fX19fX19fX19fX19fX19ffF9fX19fX19ffF9fX19fX19fX19fX19ffAogICBcIFwKICAgIFwgXAogICAgIFwgXAogICAgICBcIFwgICAoX18pCiAgICAgICBcIFwgIChvbykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLwogICAgLy0tLVwtLS0tXC8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLwogICAvIHwgICBcICB8fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqICAgICAgICAgKF9fKSAgICAvCiAgKiAgfHwtLS1cLVxcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcICAgICAgICAoIE9PICAgLwogICAgIH5+ICAgICAgfn4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwtLS1cX19fL1xffFw9Lz4KICAgICAgICAgICAgIH5+ICAgICAgIH5+ICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICBcPT09Lz4KICAgICAgICAgICAgICBcXF9fX19fLy8gICAgICAgICAgICAgICAgICAgICAgICB8IC9fX19fX18vICAvCiAgICAgICAgICAgICAgfHwgICAgIHwgICAgICAgICAgICAgICAgCl9fX19fX19fX1xcX1xcX19fX18vX19fX19fX19fX19fX19fX19fX18KICAgICAgICAgICAgICAvXC0tLS0tLVwgICAgICAgICAgICAgICAgICAgICAgICAgIH4gIH4gICAgLwogICAgICAgICAgICAgKG9vKSAgICAgIFwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8KICAgICAgICAgICAgICgtLSkgICAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8KIAogQ293IENpcmN1czogVGhlIGZseWluZyBDb3dsZW5kYXMgICAgICAgICBDb3cgQ2lyY3VzOiBUaWdodHJvcGUgd2Fsa2luZwogCiAgICAgICAgICAgX19fX19fX19fX19fX19fX19fX19fXwogICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICB8XAogICAgICAgICAgfCAgICAgICAoX18pICAgICAgICAgICB8IHwKICAgICAgICAgIHwgICAgICAgKG9vKSAgICAgICAgICAgfCB8CiAgICAgICAgICB8ICAgICAgICBcLyAgICAgICAgICAgIHwgfAogICAgICAgICAgfCAgICAgICAvIFwgXCAgICAgICAgICB8IHwKICAgICAgICAgLy8vLy8vLy8vICAgXF8gXF8vLy8vLy8vICB8CiAgICAgICAgICB8ICAgICB8ICAgICAvICAgICAgICAgIHwgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIChfXykKICAgICAgICAgIHwgICAvKysrKysrPCAgICAgICAgICAgfCB8ICAgICAgICAgICAgICAgICAgICAgIF9fX19fKG9vKQogICAgICAgICAgfD09Lz09PT18PT1cPVw9PT09PT09PT18PXw9PT09PT09PT09PT09PT09PT09PT09PT09PT1cXC8KICAgICAgICAgIHwgKiAgICAgfCAgICBcX1xfICAgICAgfCB8ICAgICAgICAgICAgICAgICAgIC8gfCAgICAgfHwKICAgIF9fX19fX19PKS0tLS0tfi0tLS0tLS0tLS0tLS0tLVxPKV9fX19fX19fX19fX19fX19fKl9ffHwtLS0tfHxfX19fXwogCiAgICAgICAgICAgICAgICAgY293LWxsaW9wZSBpbiB0aGUgY2lyY3VzIHBhcmFkZQogCiAgICAgICAqCiAgICAgICAgXAogICAgIHcgICBcICAgIHcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9fKQogICAgIFxcICAvXCAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9vKQogICAgICBcXC8gIFwvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwvCiAgICAgICB8ICAgIHwgICAgICAgICAgICAgICAgICAgIChfXykgICAgICAgICAgICAgICA+LS0oICApLS08CiAgICAgICB8KF9fKXwgICAgICAgICAgICAgICAgICAgIChvbykgICAgICAgICAgICAgICAgICAvICBcCiAgICAgICBcKE9PKS8gICAgICAgICAgICAgICAgICAgLi1cLy0uICAgICAgICAgICAgID4tLS0ge30gLS0tPAogICAgICAgLy9cL1xcICAgICAgICAgICAgICAgICAgPHwgICAgfD4gICAgICAgICAgICAgIHYgIC9cICB2CiAgICAgICB8fCAgfHwgICAgICAgICAgICAgICAgICAgXCBcLyAvICAgICAgICAgICAgICAgfCAob28pIHwKICAgICAgIHx8X198fCAgICAgICAgICAgICAgICAgICB8XC9cL3wgICAgICAgICAgICAgICAgXCh+fikvCiAgICAgIC9+fiAgfn5cICAgICAgICAgICAgICAgICAgLy0tLS1cICAgICAgICAgICAgICAgICB8ICB8CiAgICAvID09PT09PT09IFwgICAgICAgICAgICAgICAvICAgICAgXCAgICAgICAgICAgICAgICB8ICB8CiAgIC8gICAgICAgICAgICBcICAgICAgICAgICAgICAvKiAqICogXCAgICAgICAgICAgICAgIC8gXC8gXAogIHw9PT09PT09PT09PT09PXwgICAgICAgICAgICAvX18qXypfKl9cICAgICAgICAgICAgICB8ICBcIHwKICAgXCAgICAgICAgICAgIC8gICAgICAgICAgICAgICB8fCAgfHwgICAgICAgICAgICAgICAgfiAgLyB+CiAgICBcID09PT09PT09IC8gICAgICAgICAgICAgICAgfn4gIH5+ICAgICAgICAgICAgICAgICAgKgogICAgICBcIF9fX19fIC8KIENvdyBiYWxhbmNpbmcgb24gYmFsbCAgICAgICAgICBDb3dzbGlwICAgICAgICAgICAgQ293bmlsaW5ndXMKIAogCiAgICAgICAgICAgICAgKF9fKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSdgLSAgICAgICAiSGVyZSdzCiAgICAgICAgICAgICAgKG9vKSAgICAgX19fX19fX19fX19fX19fX19fX18gICAgICAgICAgICAgICAgKCBvbyAgfiAgICAgbW9vaW5nCiAgICAgICAvLS0tLS0tLVwvICAgICB8ICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgL1xffC0tICAgICAgYXQKeW91LAogICAgICAvIHwgICAgIHxcIC8gICAgfCAgbyAgbyAgbyAgbyAgbyAgbyAgfCAgICAgICAgICAgICAgfCBcIFxfXyAgXyAgIGtpZCEiCiAgICAgKiAgfHwtLS0tfCAvICAgICA9PT09PT09PT09PT09PT09PT09PT09ICAgICAgICAgICAgICB8ICBcX19fWycKICAgICAgICB+fiAgICB+ICAgICAgIHx8ICAgICAgICAgICAgICAgICAgfHwgICAgICAgICAgICAgIHwgICAgfHwKICAgICAgICBDb3duY2lsbG9yICAgICAgICAgICAgaGlzIGNvd2NoICAgICAgICAgICAgICAgICAgIHxfX19ffC0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICB8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfiAgfgogICAgICAgICAgKF9fKSAgICAoX18pICAgKF9fKSAgICAoX18pICAgICAgICAgICAgICAgICBodW1waHJleSBjb3ctZ3VydAogICAgICAgICAgKG9vKSAgICAob28pICAgKG9vKSAgICAob28pCiAgIC8tLS0tLS0tXC8gICAgICBcLyAgICAgXC8gICAgICBcLy0tLS0tLS1cCiAgLyB8ICAgICB8fCAgPT09PT09PT09PT09PT09PT09PSAgfHwgICAgIHwgXAogKiAgfHwtLS0tfHwgICB8fCB8LS18ICAgfC0tfCB8fCAgIHx8LS0tLXx8ICAqCiAgICB+fiAgICB+fiAgIC0tIH4gIH4gICB+ICB+IC0tICAgfn4gICAgfn4gICAgICAgICAgICAoX18pCiAgICAgICAgICAgQSBnYW1lIG9mIGNvd250cmFjdCBicmlkZ2UgICAgICAgICAgICAgICAgICAob28pCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8gXC8gICAgICAgX19fX19fX19fX19fCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyAgIFw9PT1+X198ICAgICAgICAgICAKfAogICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gICAgICAgICAgICAgX3xfX18gL1wgCnxfX19fX19fX19fX19fX3wKICAgICAgICAgICAoX18pICB8IFwtLyAgIFwtLyAgICB8fCAgICB8ICAgICAgICAgICAgfD09PT09fCB8ICAgfCAgICAgICAgICAgIHwKICAgICAgICAgICAob28pICB8IF98XyAgIF98XyAgIHxfX3wgICB8ICAgICAgICAgICAgKkkgICBJfCB8ICAgfCAgICAgICAgICAgIHwKICAgIC8tLS0tLS0tXC8gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tICAgICAgICAgICAgIEkgICBJfiB+ICAgfCAgICAgICAgICAgIHwKICAgLyB8ICAgICB8fCAgICB8ICAgXC0vICB8ICAgfCAgICB8ICB8CiAgKiAgfHwtLS0tfHwgICAgfCAgIF98XyB8X3wgfF98ICB8X3wgfCAgICAgICAgICAgIHdvbGZnYW5nIGFtYWRldXMgbW9vLXphcnQKICAgICB+fiAgICB+fiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAgICAgICAgIEp1c3QgYSBodW1ibGUgY293bm9pc3NldXIKIAogCiAgICAgKF9fKSAgKF9fKSAgIChfXykgKF9fKShfXykgICAgKF9fKSAoX18pKF9fKShfXykgIChfXykKICAgICAob28oX18pb28pIChfXylvKSAob28pKChfXykoX18pb28pIChfXykobyhfXylvKShfXylvKShfXykKICAgICAgXC8ob28pXC8gIChvbykvKF9fKS8gIChvbykob28pXC8gIChvbykgXChvbykvIChvbykvIChvbykKICAgICAgICAgXC8gICAgICBcLyAgKG9vKSAgICBcLyAgXC8gICAgICBcLyAgICBcLyAgICBcLyAgICBcLwogICAgICAgICAgICAgICAgICAgICAgXC8KICAgICAgICAgICAgICAgICAgICAgICAgICBhIGNvd25mbHVlbmNlCiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX19fX19fXwogICAgICAgICAgICAgKF9fKCAgLi08ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICB8ICAgfAogICAgICAgICAgICAgKG9vKSAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxfX198X19ffAogICAgICAgICAgIF9fX1wvX19ffCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcX19fX18vfAogICAgICAgICAgfCAgfCAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgfAogICAgICAgICAgfCAgfCAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxfX19fX19ffAogICAgICAgID4tJyAgfCAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXyAgIHwgICBfICAgfAogICAgICAgICAqLS0tLS9cICAgICAgICAgICAgICAgICAgICAgLy0tLS0tLS0vLyAgIHwtLShfKS0tfAogICAgICAgICAgICAgLyAgXCAgICAgICAgICAgICAgICAgICAvIHwgICAgIHx8ICAgIHxfX19fX19ffCAgKF9fKQogICAgICAgICAgICAvICAgIFwgICAgICAgICAgICAgICAgICogIHx8LS0tLXx8ICAgIHwgICAgICAgfCAgKCsrKQogICAgICAgICAgICB+ICAgICB+ICAgICAgICAgICAgICAgICAgIH5+ICAgIH5+ICAgIHxfX19fX19ffCAgIFwvCiAgICAgICAgIEVneXB0aWFuIENvdyAgICAgICAgICAgICAgICAgICBNYXJpZSBBbnRvaW5ldHRlJ3MgQ293CiAKICAgICAgICAgICAgICAgICAgXwogICAgICAgICBfX19fX19fX3xAfF9fX19fX19fCiAgICAgICAgICB8ICBQT0xJQ0UgIEJPWCAgfCAgICAgICAgICAgICAgICAgICAgIF9fCiAgICAgICAgICB8LS0tLS0tLS0tLS0tLS0tfCAgICAgICAgICAgICAgICAgICAoflwvfikgICAgICAgICAgICAgIFwoOikvCiAgICAgICAgICB8X19fX19fX3wgICAgIC8gfCAgICAgICAgICAgICAgICAgICAgXG9vLyAgICAgICAgICAgICAgIChvfG8pCiAgICAgICAgICB8fCAgfCAgfHwgICAgfCAgfCAgICAgICAgICAgICAgIC8tLS0tLVwvICAgICAgICAgICAvLS0tLS1cXy8KICAgICAgICAgIHx8LS0tLS18fCAgICB8ICB8ICAgICAgICAgICAgICAvfCAgICAgIHwgICAgICAgICAgL3wgICAgICB8CiAgICAgICAgICB8fF9ffF9ffHwgICAgfCAgfCAgICAgICAgICAgICBWIHx8LS0tLXx8ICAgICAgICAgfiB8fC0tLS18fAogICAgICAgICAgfCAgX19fICB8ICAgIHwgIHwgICAgICAgICAgICAgICB+fiAgICB+fiAgICAgICAgICAgfn4gICAgfn4KICAgICAgICAgIHwgfF9fX3wgfCAgICB8ICB8ICAgICAgICAgICAgICBWdWxjYW4gQ293ICAgICAgICAgS2xpbmdvbiBDb3cKICAgICAgICAgIHwgX19fX18gfCAgICAgKF9fKQogICAgICAgICAgfHwgICAgIHx8ICAgICAob28pICAgIC0tLS0tLS0tLQogICAgICAgICAgfHwgICAgIHx8LS0tLS8vXC8gLS0tPCBNYXN0ZXI/ID4KICAgICAgICAgIHx8ICAgICB8fEItOSAgXCB8ICAgICAtLS0tLS0tLS0KICAgICAgICAgIHx8X19fX198fF9fX19fX1x8CiAgICAgICAgICB8X19fX19fX3xfX19fX19ffAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tCiAgICAgIGEgQ2VydGFpbiBUaW1lIExvcmQncyBDb3cgICAgICAgICAgICAgICAgICAgKF9fKSAgICAgLS0tPApFWFRFUk1JTkFURSEhISB8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCAtLS0tMCAgICAgCi0tLS0tLS0tLS0tLS0tLS0KICAgICAgICAgICAgICAgICAgIChfX18pICAgICAgICAgICAgICAgICAgICAgICAgICBfXC9fCiAgICAgICAgICAgICAgICAgICB8PT09fCAgICAgICAgICAgICAgICAgICAgICAgICAvb29vb1wtLS1PCiAgICAgICAgICAgIF9fX19fX19fXF8vICAgICAgICAgICAgICAgICAgICAgICAgIC9vb29vb29cCiAgICAgICAgICAgfCB8ICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgL29vb29vb29vXAogICAgICAgICAgICMgfHxfX19fX198fCAgICAgICAgICAgICAgICAgICAgICAgL29vb29vb29vb29cCiAgICAgICAgICAgICB8fCAgICAgIHx8ICAgICAgICAgICAgICAgICAgICAgIC9fX19fX19fX19fX19cCiAgICAgICAgICAgICB+fiAgICAgIH5+CiAgICAgICAgICAgICAgUm9ib0NvdyAgICAgICAgICAgICAgICAgICAgICAgICAgYSBEYWxlayBDb3cKCgp0byBiZSBjb250aW51ZWQgLS0tLS0tPgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIHdpbGwgS1VFSEUhISEgKFBhcnQgSUkpIChKYXNwZXIsIDMxLiBKdWwgMTk5NywgMDY6NTY6MTkpOgp+IyEgb249Q2F0d2VhemxlIG90PTg3MDI2MjI2MCBvZz13aXR6ZQogCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAIEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAQEAgQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQEAgQAogICAgICAgICAgICAgICAgUGZmaWkgICAgICAgICAgIEBAQEAgQEAKICAgICAgICAgIF9fX19fX19fX19fRCAgICAgICAgICAgQEBAQEBACiAgICAgICAgIHxfX19fX19fXyAgfCAgICAgICAgICAgIF9fX19fX18KICAgICAgICAgIChfXykgICB8IC8gICAgICAgICAgICAgXCAgICAgLwogICAgICAgICAgKCBvbyAvfnwgfCAgICAgIF9fICAgICAgXCAgIC8KICAgICAgICAgIC9cX3wvLyB8IHwgICAgIC8gIFwgICAgIHwgIHwKICAgICAgICBfL19fX18vX198IHwgICAgfCAgICB8ICAgIHwgIHwKICAgICAgIHwgICAgICAgX19fLy0tLS0tLS0tLS0tLS0tLS0tX3wgKF9fKQogICAgICAgfCAgICAgIC8gICBcICAgICBcICAgICBcICAgICAgIGAob28pCiAgICAgICB8ICAgICAvICAgICBcICAgICB8ICAgICB8ICAgICAgIHxcLwogICAgICAgfCAgICB8ICAgTyAgfCAgICAvICAgICAvIF9fICAgIC8KICAgICAgIHwtLS0tfCAgICAgIHwtLS0tLS0tLS0tLS8gIFwtXFxcICAgICAgICAgICAgICAgICAoX18pCiAgICAgICAgICAgIFwgICAgIC8gICAgICAgICAgIHwgbyB8ICBcXFwgICAgICAgICAgICAgICBfKCAgKV8KICAgICBfX19fX19fX1xfX18vX19fX19fX19fX19fXF9fL19fX19cXFxfX19fX19fX19fX19fL18vX19cX1xfX19fCiAKICAgICAgICAgICAgICAgICAgIENvdyBFeHByZXNzICAgICAgICAgICAgICAgICAgICAgU3VpY2lkYWwgQ293CiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvICAgICAgICAgX19fX19fX19fX19fXwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9cICAgICAgIC8gICAgICAgICAgICAgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW19fXSAgICAgKCB0YWtlIG9mZiwgZWghICkKICAgICAgX18gIHwgICBcIC8gICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvbykgLS0tLSdcX19fX19fX19fX19fXy8KICAgICAgICBcLy0tLS0vLy9cICAgICAgICAgICAgICAgICAgICAgLy0tLS0tLS1cLwogICAgICAqL1xfX19fX18oeHgpICAgICAgICAgICAgICAgICAgIC8gfCAgICAgfHxfX3wKICAgICAgICAgICAgICAgKCAgKSAgICAgICAgICAgICAgICAgICogIHx8LS0tLXwgICBVCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fiAgICB+CiBQcm8tZGVtb2NyYWN5IGNvdyBmcm9tIEJlaWppbmcgICAgICAgICBDYW5hZGlhbiBDb3cKIAogCiAgICAgIG8gICAgICAgICAgbyAgICAgICAgICAgICAgIG8gICAgICAgICAgICAgIG8gICAgICAgICAgICAgbyAgICAgICBvCiBvICBvICAgICAgIG8gICAgICAgICBvICAgICAgIG8gICAgIG8gICAgICAgICBvICAgbyAgICAgICBvICAgICAgIG8KICAgICBvICAgbyAgICAgIG8gICAgICAgbyAgICAgICAoICAgICkgICAgICBvICAgICggICAgKSAgICAgICAgbyAgKCAgICAoICAgIG8KICAgTyAgICAgICAgICAgICAgICAgICAgICkgICggICAgICAgICAgICAgKSAgKCAgICAgICAgICAgICApICAoCiBvICBvICAgICAoX18pICAgICBvICAgICBvICAgICAgIChfXykgICAgICAgIG8gICAgKF9fKSAgICAgbyAgIG8gICAoX18pCiAgICAgICAgICAob28pICAgICAgICAgICAgICAgICAgIChvbykgICAgICAgICAgICAgKG9vKSAgICAgIG8gICAgICAob28pICAgICBvCiAgIC8tLS0tLS0kJCQkICAgbyAgIG8gICAgLy0tLS0tLS1cLyAgbyAgICAvLS0tLS0tLVwvICAgICAgIC8tLS0tLS0tXC8KICAvIHwgICAgICQkJCQgICAgICAgICAgIC8gfCAgICAgfHwgICAgICAgLyB8ICAgICB8fCAgICAgICAvIHwgICAgIHx8CiAqICB8fC0tLS18fCAgICAgICAgbyAgICogIHx8LS0tLXx8ICAgICAgKiAgfHwtLS0tfHwgICAgICAqICB8fC0tLS18fCAgIG8KICAgIH5+ICAgIH5+ICAgICAgICAgICAgICAgfn4gICAgfn4gICAgICAgICB+fiAgICB+fiAgICAgICAgIH5+ICAgIH5+CiAgICBTYW50YSBDb3cgYW5kIGhpcyByZWluIGNvd3MgY2F1Z2h0IGluIGEgTW9udGFuYSBzbm93IGZsdXJyeQogCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX19fCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF8vLi4uXCAgKj09XCAgICAgICAgX19fX19fX19fX19fX19fXwogICAgICAgX19fX19fX19fXyAoX19fKSAgICAgICAgICAgICAgIC86Ojo6OjpcICAoL19cKSAgICAgLyAgICAgICAgICAgICAgICBcCiAgICAgIC98ICAgICAgICAgYCgwIDApICAgICAgICAgICAgICAgfDo6Ojo6OjpfIChvIG8pICAgICB8ICBNb28sIE1vbywgTW9vIHwKICAgICAvIHwgICAgICAgICAgIFwgLyAgICAgICAgICAgICAgLy0tLS0tKy0rLS0tIFwgLyAgICAgL1xfX19fX19fX19fX19fX19fLwogICAgKiAgfHx8LS0tLXx8fC0vICogICAgICAgICAgICAgIC8gfCAgICB8IHwgICB8IDAgIF9fXy8KICAgICAgIHx8fCAgICB8fHwgICAgICAgICAgICAgICAgICogIHwgXyAgfF98IF8gfAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgLS0rXystIHx8CiBSdWRvbHBoIHRoZSBSZWQtTm9zZWQgQ293ICAgICAgICAgICAtLSAgICAgICAgLS0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgfF8gICAgIHwgIHxfCiAgICAgICAgICAgL1wgICAgICAgICAgICAgICAgICAgICAgIHxfX19ffCAgICB8X19fX3wKICAgICAgICAgIC8gT1wgICAgICAgICAgICAgICAgICAgICAgICAgU2FudGEgQ293cwogICAgICAgICAvICwgIFwKICAgICAgICAvICBPICAgXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF8gLSB+IH4gfiB+IH4gfiB+IH4gLQpfCiAgICAgICAgLS8gLCAgXC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyAgICAgICAgICB8fiAgICAgIHx+ICAgClwKICAgICAgICAvICBPICAgXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICB8fiAgb3wgICB8fiBvfCAgICAKfAogICAgICAgLywgICAgLCAgXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8gIFwgICAgb3wgICAgICAgb3wgICAgICAgIAovCiAgICAgIC8gTyAgICBPICAgXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8gICAgICBcICAgICAgICAgICAgICAgICAgICAvCiAgICAgIC0vICAsICAgICBcLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyAgICAgICAgLyB+IH4gfiB+IH4gfiB+IH4gfgogICAgICAvICAgTyAgICwgIFwgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyAgICAgICAgLyAgICAgICAgICAuCiAgICAgLyAgLCAgICAgTyAgLFwgIChfXykgICAgICAgICAgICAgICAgIC8qICAgICAqXCAgIC8gICAgICAgICAuL1wuCiAgICAvICAgTyAgICwgICAgTyBcIChvbykgICAgICAgICAgICAgICAgL1wgICAgICAgL1wgICAgICAgICAgIC4vLy5cLgogICAvICAgICAgICBPICAgICAgIFwtXC8gICAgICAgICAgICAgICAgKioqKiAgICAgKioqKiAgICAgICAgIC4vLy9cXFwuCiAgIC0tLS0tLS0tLS0tLS0tLS0tLXx8ICAgICAgICAgICAgICAgICAob28pICAgICAob28pICAgICAgICAgLy8vL1xcXFwuCiAgICAgICAgICAgfHwvIHx8LS0tLXx8ICAgICAgICAgIC8tLS0tLS0tXC8gICAgICAgXC8tLS0tLS0tXCAgICAgfHwKICAgICAgICAgICB8fCAgfn4gICAgfn4gICAgICAgICAvfCAgICAgIHx8ICAgICAgICAgfHwgICAgICB8XCAgICB+fgogICBNZXJyeSBDb3ctcmlzdG1hcyAgICAgICAgICAgKiAgfHwtLS0tfHwgICAgICAgICB8fC0tLS18fCAgKgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn4gICAgfn4gICAgICAgICB+fiAgICB+fgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDaHJpc3RtYXMgQ293b2xzCiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE8gIE8gIE8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTyAgICAgICAgICAgICAgICAgICAgKgogICAgICAgICAgICBNb29yeSBDb3dyaXN0bWFzISAgICAgICAgICAgICAgICAgX19fICAgICAgICAgICAgICAgIC98XAogICAgICAgICAgICAgICAgICAgICAgICAgX19fX19fX19fX19fX19fX19fX19ffCAgfF9fX19fICAgICAgICAgL3x8b1wKICAgICAgICAgICAgICAgICAgICAgICAgL19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX1wgICAgICAgL3xvfHx8XAogICAgICB+ICAgICAgICAgICAgICAgIC9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX1wgICAgIC98fHx8fG98XAogICAgICAgfn4gICMjIyMgICAgICAgICAgfHwgICB8ICAgfHx8fHx8fHx8fHx8ICAgfCAgIHx8ICAgICAgL3x8b3x8fHx8fFwKICAgICAgICAgIH4ob28pICAgICAgICAgIHx8X19ffF9fX3x8fHx8fHx8fHx8fF9fX3xfX198fCAgICAgL3x8fHxvfHx8fHx8XAogICAgLy0tLS0tLS1cLyAgICAgICAgICAgfHwgICB8ICAgfHx8fHx8fHx8fHx8ICAgfCAgIHx8ICAgIC98b3x8fHxvfHx8b3x8XAogICAvIHwgICAgIHx8ICAgICAgICAgICAgfHxfX198X19ffHx8fHx8fHx8fHx8X19ffF9fIHx8ICAgICAgICAgIHwgfAogICogIHx8LS0tLXx8ICAgICAgICAgICAgfHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8b29vb29vb29vb3wgfG9vb29vb28KIG9vb29+fm9vb29+fm9vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vCiAKIAogICB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLXwgICAgICAgICAgICAgICAgICAgICAgICAgL1wKICAgfCAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgL1wgIC9cLyAgXAogICB8ICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgIC8gIFwvIC8gICAgXC9cCiAgIHwgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAvICAgICAgICAgICAgXCBcCiAgIHwgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIHxfX19fX19fX19fX19fX19fX19fX19ffAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwvCiAgIHwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tfCAgICAgICAgICAgICAgICAgIG8tQEAKICAgfF9fX19fX19fX19fX19fX19fX19fX198CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNaW5pbWFsaXN0IERlYWQgQ293CiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAgICBNYXJrIFJvdGhrbyBDb3cKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKLz1gPX5+fiMmQH5AJil8fHw+PDw+PD48PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcfH19e317fXsoKSAoJikgCn5+fn4jKioqCiAgIChfXykgfCAgKF9fKSB8ICAoX18pIHwgIChfXykgfCAgKF9fKSB8ICAoX18pIHwgICAgCiNcKip+fi8vPzw+Lit8QEBAXC8tLS1fX18KICAgKCBvbyB8ICAoIG9vIHwgICggb28gfCAgKCBvbyB8ICAoIG9vIHwgICggb28gfCAgICAKXHx9fXt9ey8/PD4uK3xAQComKCokQCkpKAogICAvXF98IHwgIC9cX3wgfCAgL1xffCB8ICAvXF98IHwgIC9cX3wgfCAgL1xffCB8ICAgIAp8QCMpQCgmKikoJCpJIT8kPkAkfCR8JHwkCiAtIC0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIChfXykgfCAgKF9fKSB8ICAoX18pIHwgIChfXykgfCAgKF9fKSB8ICAoX18pIHwgICAgICAgIEphY2tzb24gUG9sbG9jayBjb3cKICAgKCBvbyB8ICAoIG9vIHwgICggb28gfCAgKCBvbyB8ICAoIG9vIHwgICggb28gfAogICAvXF98IHwgIC9cX3wgfCAgL1xffCB8ICAvXF98IHwgIC9cX3wgfCAgL1xffCB8ICAgICAgICAKX19fX19fX19fX19fX19fX19fX18KIC0gLSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gICAgICAgICB8ICAgICAgICAgIAooX18pICAgfAogICAoX18pIHwgIChfXykgfCAgKF9fKSB8ICAoX18pIHwgIChfXykgfCAgKF9fKSB8ICAgICAgICAgfCAgICAgICAgICAgKG9vKSAgCnwKICAgKCBvbyB8ICAoIG9vIHwgICggb28gfCAgKCBvbyB8ICAoIG9vIHwgICggb28gfCAgICAgICAgIHwgICAgLy0tLS0tLS1cLyAgIAp8CiAgIC9cX3wgfCAgL1xffCB8ICAvXF98IHwgIC9cX3wgfCAgL1xffCB8ICAvXF98IHwgICAgICAgICB8ICAgLyB8ICAgICB8fCAgICAKfAogLSAtIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAgICAgICAgIHwgICogIHx8LS0tLXx8IAp8CiAgIChfXykgfCAgKF9fKSB8ICAoX18pIHwgIChfXykgfCAgKF9fKSB8ICAoX18pIHwgICAgICAgICB8ICAgICB+fiAgICB+fiAgICAKfAogICAoIG9vIHwgICggb28gfCAgKCBvbyB8ICAoIG9vIHwgICggb28gfCAgKCBvbyB8ICAgICAgICAgfCBDZWNpIE4nZXN0IFBhcyAgCnwKICAgL1xffCB8ICAvXF98IHwgIC9cX3wgfCAgL1xffCB8ICAvXF98IHwgIC9cX3wgfCAgICAgICAgIHwgICAgVW5lIENvdyAgICAgIAp8CiAtIC0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgICAgICAgICAgICAgQW5keSBXYXJob2wgQ293ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZW5lIE1hcmdyaXR0ZSBDb3cKIAogCiAgICAgICAgICAgICBvbyAgICAgICAgICAgICAgICAgICAgLS0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXC8KIAogCiAgICAgICAgY293IGJ5IG5pZ2h0ICAgICAgIHNsZWVwaW5nIGNvdyBieSBuaWdodCAgICAgICAgQ2hlc2lyZSBDb3cKIAogCiAgICAgICAgICAgICAgICAgICAgICBJSQogICAgICAgKCBNT09PT09PICEgKSAgSUlcCiAgIF9fX19fX19fXCAgIC8gICAgICBJSSArICAgIChfXykgLi5vbyggSGV5LCB0aGVyZSdzIGEgY293IGRyaXZpbmcgdGhhdCBjYXIhCikKICB8XCAgICAgICAgYHYnIFwgICAgICArIElJICAgKDAwKQogIHwgXF9fX19fX19ffF9fX19cICAgICBcSUlcICAgXC8tLS0tLS0tXAogIHwgKCAgICAgKCBAIEAgKSAgKSAgICAgSUkgKyAgICB8fCAgICB8fFwgICAgICAoX18pIC4ub28gKCBIb3cgY2FuIGhlICAgICApCiAgfFx8X19fX19fXF9PXy9fX198ICAgICAgKyBJSSAgIHx8LS0tLXx8ICogICAgIChvbykgICAgICAgICggYWZmb3JkIHRoYXQ/ICkKICB8IFxfX19fX19fX19fX19fX19cICAgICAgXElJXCAgfn4gICAgfn4gICAgICAgIFwvLS0tLS0tLS1cCiAgXCAoT09fIyMjIyMjIyMjI19PTykgICAgICBJSSArICAgICAgICAgICAgICAgICAgICB8fCAgICB8fCBcCiAgKFwoX19fX19bUEhJTF1fX19fXykgICAgICAgKyBJSS0tKy0tKy0tKy1JSS0rLS0rLS0rLS1JSSstLSstLSstLStJSS0tKy0tKy0KICAgICAgKF8pICAgICAgICAoXykgICAgICAgICAgXElJICAgICAgICAgIElJICAgICAgIH5+IElJIH5+ICAgICAgIElJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJSS0tKy0tKy0tKy1JSS0rLS0rLS0rLS1JSSstLSstLSstLStJSS0tKy0tKy0KIAogICAgICAgICAgICAgICAgV2hhdCBjb3dzIHRoaW5rIHdoZW4gcGVvcGxlIE1PTyBhdCB0aGVtCiAKIAogICAgICAgICAgICAvXFwgICB+ICAgICAgICAgICAgICAgICAoX18pICAgICAgICAgICAgICAgICAgICAgICAgICAoX18pCiAgICAgICAgICAgL19fXFwgIHwgICAgICAgICAgICAgICAgICggb28gIF8gICAgICAgICAgICAgICAgICAgICAgIChvbykKICAgICAgXyAgICAobyBvKSAgfCAgICAgICAgICAgICAgICAgL1xfX3woICkgXyAgICAgICAgICAgICAgICAgICAvLVwvLVwKICAgICAvIFwgICAvXF8vXCAvICAgICAgICAgICAgICAgICB8ICBcPT0vLz0oXykgICpQT1chKiAgICAgICAgIC8gICAgICBcCiAgICAgICB8IC98SSAgIEl8ICAgICAgICAgICAgICAgICAgfCA9PT09ICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgfAogICAgICAgfi8gfEkgICBJfCAgICAgICAgICAgICAgICAgIHwgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgIHwKICAgICAgIHwgIHxJICAgSXwgICAgICAgICAgICAgICAgIC98ICBfIFwgICAgICAgICAgICAgICAgICAgICAgLyAgICAgICAgXAogICAgICAgfCAgfEkgICBJfCAgICAgICAgICAgICAgIC8gIC8gLyBcIFwgICAgICAgICAgICAgICAgICAgICBfX19fX19fX19fXAogICAgICAgfCAgfF9fX19ffCAgICAgICAgICAgICAqICAgIHx8ICAgfHwgICAgICAgICAgICAgICAgICAgICAgICAgIFxcCiAgICAgICAgICAgfiAgKn4gICAgICAgICAgICAgICAgICAgfHxfICB8fF8gICAgICAgICAgICAgICAgICAgICAgICAgKF8pCiAKIGNvdyBnaXZpbmcgZm9yZ2l2ZW5lc3MgICAgICAgICBNb28taGFtaWQgQWxpICAgICAgICAgICAgICAgICAgIENvdyBCZWxsLgogCiAKICAgICAgICAgICAgICghISkgICAgICAgICAgICAgICAgICAgICAgICBfL1xfICAgICAgICAgICAgICAgICAgICAgICBcX1wKICAgICAhISEhISEhIShvbykgICAgICAgICAgICAgICAgIF9fX19fX18ob28pICAgICAgICAgICAgICBfX19fX19fX18ob28pCiAgICAhL3wgICAgICAgXC8gICAgICAgICAgICAgICAgIC98ICAgICAgIFwvICAgICAgICAgICAgICAvfCBGZXJyYXJpIFwvCiAgICEvIHxfX19fX198fCAgICAgICAgICAgICAgICAgLyB8X19fX19ffHwgICAgICAgICAgICAgIC8gfF9fX19fX19ffHwKICAgKiAgfHwgICAgIHx8ICAgICAgICAgICAgICAgICogIHx8ICAgICB8fCAgICAgICAgICAgICAqICB8fCAgICAgICB8fAogICAgICB+fiAgICAgfn4gICAgICAgICAgICAgICAgICAgfn4gICAgIH5+ICAgICAgICAgICAgICAgIH5+ICAgICAgIH5+CiBMYXN0IG9mIHRoZSBNb28taGljYW5zICAgICAgICBNYXlmbG93ZXIgY293cyAgICAgICAgICAgICBTcG9ydHMgQ293CiAKIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIChfXykgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9fKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvbykgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9vKQogICAgICAgICAgICAgLy0tLS0tLS0tLS0tLS0tLSBcLyAgICAgICAgICAgICAgLyAtLS0tLS0tLS0tLS0tIFwvCiAgICAgICAgICAgLyAoICFTIE0gVCBXIFQgRiEgKSAgICAgICAgICAgICAgIC8gKCAgIHw3IDggOSArfCAgKQogICAgICAgICAvICAoICArLSstKy0rLSstKy0rICApICAgICAgICAgICAgICogICggICB8NCA1IDYgLXwgICkKICAgICAgICAqICAgKCAgKy0rLSstKy0rLSstKyAgKSAgICAgICAgICAgICAgICAgKCAgfDEgMiAzIFh8ICApCiAgICAgICAgICAgICAoICstKy0rLSstKy0rLSsgKSAgICAgICAgICAgICAgICAgICAoIHxDIDAgPSAvfCApCiAgICAgICAgICAgICAgKCstKy0rLSstKy0rLSspICAgICAgICAgICAgICAgICAgICAgfi0tLS0tLS0tLX4KICAgICAgICAgICAgICAgfHwgICAgICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICB8fCAgICAgICB8fAogICAgICAgICAgICAgICB8fCAgICAgICAgfHwgICAgICAgICAgICAgICAgICAgICAgIHx8ICAgICAgIHx8CiAgICAgICAgICAgICAgIH5+ICAgICAgICB+fiAgICAgICAgICAgICAgICAgICAgICAgfn4gICAgICAgfn4KICAgICAgICAgICAgICAgIkNPV0xFTkRBUiIgICAgICAgICAgICAgICAgICAgICAgICAiQ09XQ1VMQVRPUiIKIAogICAgL1wKICAgLyAgXCAgICAgICAgIF9fICAgICAgICAgICAgICAgICAgICAgICAgICAgX19fX19fX18gICAtLS0tLS0KICBET0NUT1IgICAgICBfL19fXF8gICAgICAgICAgICAgICAgICAgICAgICAgICB8X198IHwgICB8PT09PXwKICAgTU9PLyAgICAgIC89KE9PKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAob28pICogICB8ICAgdnwKICAgIFwvICAgIC0tLz09LVwvPT1cICAgICAgICAgICAgICAgICAgIC8tLS0tLS0tXC8gICAgICB8fn4gKnwKICAgICAgIC8gfCAgXD09fHwgIFw9PVwgICAvLy8gICAgICAgICAgLyB8ICAgICB8fCAgICAgICAtLS0tLS0KICAgICAgKiAgfHwtfD09fHwgICBcPT1cLz09LyAgICAgICAgICAqICB8fC0tLS18fAogICAgICAgICB+fiAvLy9+fiAgICAgXD09PS8gICAgICAgICAgICAgIH5+ICAgIH5+CiAgICAgICAgR2FsbGlmcmV5YW4gQ293ICAgICAgICAgICAgICAgU3RyYWlnaHQgb3V0IG9mIENvd2xsZWdlCiAKIAogICAgICAgICAgKF9fKQogICAgICAgICAgKG9vKQogICAvLS0tLS0tLVwvICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICMKICAvIHwgICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcICAgICAgIC8vCiAqICB8fC0tLS18fFwgICAgICAgICAgICAgICAgICAgICAgICAgICAgXFwgICAgIC8vCiAgICB+fiAgICB+fiBcICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgLS0tIC8KICAgICAgICAgICAgICBcICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgfAogICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICB8CiAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgIHwKICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgLyBcXy8gIFwgICAgICAgIChfXykKICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAvLyAgICAgIFxcICAgIDwtLSh4eCktLSMtCiAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAvLyAgICAgICAgXFwgICAgICAgL1wKICAgX19fX19fX19fX19cfC9fX19fX19fX19fXwogICAgICAgICBDb3ctYS1mbG93ZXIgICAgICAgICAgICAgICAgIENvdyBhdCBidXRjaGVyJ3MgcGFydHkKIAogCiAgICAgICAgICBfX18tLS0tLS0tLV9fXyAgICAgICAgICAgICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAgICAgLyAuICAgIC4gICAuICAgXCAgICAgICAgICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICAgfFwvICAgLiAgICAoX18pICAgIC4gIFwvfCAgICAgICAgfn5+fn5+fn5+fn5+fn5+fn5+fm9vfn5+fn5+fn5+fn5+CiAgICB8fCAuICAgIC4gIChvbykgLiAgIC4gIHx8ICAgICAgICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgIHwvXCAgIC4gICAgIFwvICAgIC4gICAvXHwgICAgICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICAgICAgIFxfX18gLiAgICAuICBfX18vICAgICAgICAgICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICAgICAgICAgIC0tLS0tLS0tLSAgICAgICAgICAgICAgICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICAgICAgICBDb3cgaW4gYSBoYWdnaXMgICAgICAgICAgICAgICAgICAgQ293IG9uIHRvcCBvZiBCZW4gTmV2aXMKIAogCiAgICAgICAgIF9fX19fX19fX19fX19fX19fX19fX19fX19fXwogICAgICAgIHwgKF9fKSAgKF9fKSAgKF9fKSAgIChfXykgIHwgICAgICAgICAgICAgICAgICAgKiAgICAgICAgKF9fKQogICAgICAgIHwgKCBvbyAgKCBvbyAgKCBvbyAgICggb28gIHwgICAgICAgICAgICAgICAgICAgIFwgICAgICAgKG9vKQogX19fX19fX3wgL1xffCAgL1xffCAgL1xffCAgIC9cX3wgIHxfX19fX19fXyAgICAgICAgICAgICBcLS0tLS0tLVwvCiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICB8ICAgICB8fAogfCAgIF9fX19fICAgICAgICAgICAgICAgICAgICAgICAgX19fX18gICAgfCAgICAgICAgICAgICAgfHwtLS0tfHwKIHxfX198ICAgfF9fX19fX19fX19fX19fX19fX19fX19fX3wgICB8X19fX3wgICAgICAgICAgICAgKG9vKSAgKG9vKQogICAgIHxfX198ICAgICAgICAgICAgICAgICAgICAgICAgfF9fX3wKICAgICAgICAgICAgICAgQ293LXBvb2xpbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvbGxlcnNjYXRpbmcgY293CiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX18gICAgICAgICAgICAgICBvIG9vIG8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoX18pICAgICAgICAgICAgICAgXHx8LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIChfXykgICAgICAgICAgICAgICAoX18pICAgICAgICAgICAgICAoX19fKQogICAgICAoX18pICAgICAgICAgICAgICAgICAgIChvbykgICAgICAgICAgICAgICAob28pICAgICAgICAgICAgICAobyBvKQogICAgICAoICApICAgICAgICAgICAgLy0tLS0tLS1cLyAgICAgICAgIC8tLS0tLS0tXC8gICAgICAgIC8kJCQkJCQkXCAvCiAgICAgKCAvKiApICAgICAgICAgIC8gfCAgICAgfHwgICAgICAgICAvIHwgICAgIHx8ICAgICAgICAvICQkJCQkJCR8TwogICAgICB8ICB8ICAgICAgICAgICogIHx8LS0tLXx8ICAgICAgICAqICB8fC0tLS18fCAgICAgICAqICB8fHctLS18fAogICAgICB+ICB+ICAgICAgICAgICAgIH5+ICAgIH5+ICAgICAgICAgICB+fiAgICB+fiAgICAgICAgICB+fiAgICB+fgogICAgRGFpcnktQWlyICAgICAgRWFzdCBJbmRpYW4gQ293ICAgICAgIEluanVuIENvdyAgICAgICAgICBDYXNoIENvdwogCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCAgICAgCikKICAgICAgICAgICAgICAgKF9fXykgICAgICAgIFBSSVNPTiMgICMgICMgICMgICMgICAgICAgICAgICAgICAgICAgICAgICAgfHx8Cnx8fAogICAgICAgICAgICAgICAobyBvKSAgICAgICAgIyAgIyAgIyAgIyAgIyhfIykgIyAgICAgICAgICAgICAgICAgICAgICAgICAoTyAgCk8pCiAgIC8tLS0tLS0tLS0tLS1cIC8gICAgICAgICAjICAjICAjICAjICAjKG8jKSAjICAgICAgICAgICAgCi8tLS0tLS0tLS0tLS1cX19fLwogIC8gfCAgICAgICAgICAgIy0jICAgICAgICAgIyAgIy8tIy0tIy0tIy1cIyAgIyAgICAgICAgICAgIC8gfCAgICAgICAgICAgfHx8CiAqICB8ICAgICAgICAgfHx8ICAgICAgICAgICAjICAjIHwjICAjICAjfHwjICAjICAgICAgICAgICAvICB8fCAgICAgICAgICB8fHwKICAgIHx8LS0tLS0tLS18fHwgICAgICAgICAgICMgKiMgfCMtLSMtLSN8fCMgICMgICAgICAgICAgKiAgIHx8LS0tLS0tLS0tLXx8fAogICAgfn4gICAgICAgICB+fiAgICAgICAgICAgIyAgIyB+IyAgIyAgI35+IyAgIyAgICAgICAgICAgICAgfn4gICAgICAgICAgIH5+CiAgIE9ydmlsbGUgUmVkZW5jb3cgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIEJha2tlciBDb3dzCiAKIAogICAgICAgICAgICAoX18pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChfXykKICAgICAgICAgIC8gICBvbyAgICAgIF9fX19fXyAgICAgICAgICAgICAgICAgICAgICAgLyAgIEBAICAgICAgX19fX19fCiAgICAgICAgIHwgIC9cX3wgICAgIHwgICAgICBcICAgICAgICAgICAgICAgICAgICAgfCAgL1xffCAgICAgfCAgICAgIFwKICAgICAgICAgfCAgfF9fXyAgICAgfCAgICAgICB8ICAgICAgICAgICAgICAgICAgICB8ICB8X19fICAgICB8ICAgICAgIHwKICAgICAgICAgfCAgIC0tLUAgICAgfF9fX19fX198ICAgICAgICAgICAgICAgICAgICB8ICAgLS0tQCAgICB8X19fX19fX3wKICAgICAgKiAgfCAgfCAgIC0tLS0gICB8ICAgIHwgICAgICAgICAgICAgICAgICAgICB8ICB8ICAgLS0tLSAgIHwgICAgfAogICAgICAgXCB8ICB8X19fX18gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHxfX19fXwogICAgICAgIFx8X19fX19fX198ICAgICAgICAgICAgICAgICAgICAgICAgICpfX19fL3xfX19fX19fX3wKIAogICAgICAgICAgICAgIENvbXB1Q293ICAgICAgICAgICAgICAgICAgICAgIENvbXB1Q293IEFmdGVyIGFuIEFsbC1uaXRlcgogCiAKIAogICAgICAgICAgICAgIChfXykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChfXykKICAgICAgICAgICAgLyAgIC0tICAgICAgX19fX19fICAgICAgICAgICAgICAgICAgICAgLyAgLlwvLiAgICAgX19fX19fCiAgICAgICAgICAgfCAgL1xffCAgICAgfCAgICAgIFwgICAgICAgICAgICAgICAgICAgfCAgL1xffCAgICAgfCAgICAgIFwKICAgICAgICAgICB8ICB8X19fICAgICB8ICAgICAgIHwgICAgICAgICAgICAgICAgICB8ICB8X19fICAgICB8ICAgICAgIHwKICAgICAgICAgICB8ICAgLS0tQCAgICB8X19fX19fX3wgICAgICAgICAgICAgICAgICB8ICAgLS0tQCAgICB8X19fX19fX3wKICAgICAgICAgICB8ICB8ICAgLS0tLSAgIHwgICAgfCAgICAgICAgICAgICAgICAqICB8ICB8ICAgLS0tLSAgIHwgICAgfAogICAgICAgICAgIHwgIHxfX19fXyAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHwgIHxfX19fXwogICAgICpfX19fL3xfX19fX19fX3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHxfX19fX19fX3wKIAogICAgIENvbXB1Q293IEFzbGVlcCBhdCB0aGUgS2V5Ym9hcmQgICAgICAgQ29tcHVDb3cgRGlzY292ZXJzIEJ1ZyBpbiBDb21waWxlcgogCiAKICAgICAgIFxcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXFwKICAgICAgICBcXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcCiAgICAgICAgLyBcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvIFwKICAgICAgIC8gICBcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyAgIFwKICAgICAgIFwgICAgXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCAgICBcCiAgICAgICAgXCAgICBcKF9fKSAgICAgICAgICAgICAgICAgICAgICAgICAgICBcICAgIFwoX18pCiAgICAgICotLT4gICAgKG9vKSAgICAgICAgICAgICAgICAgICAgICAgICAgKi0tPiAgICAob28pCiAgICAgICAgLyAgICAvIFwvICAgICAgICAgICAgICAgICAgICAgICAgICAgbyAvICAgIC8gXC8KICAgICAgIC8gICAgLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyAgICAvCiAgICAgICBcICAgLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbyAgIFwgICAvCiAgICAgICAgXCAvICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIC8KICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vCiAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvICAgIC8vCiAKICAgQi0yIFN0ZWFsdGggQm9tYmVyIGNvdyAgICAgICAgIFN0ZWFsdGggY293IG9uIGJvbWJpbmcgcnVuCiAKIAogICBfX18KICAvICAgXCAgICAgICAoICAgICkgICBIYXBweQogfCAgICAgXCAgICAgICB8LS18ICAgIE1vb29zaWMhICAgICAgICAgICAgICAgKF9fKQogfCAgICAgIHwgICAgICBcICAvX18gICAgICAgICAgICAgICAgICAgICAgICAgKG9vKQogKy0tLS0tLS0tLS0rIF9fb298IFwgICAgICAgICAgICAgICAgICAvICAgICAgLVwvICAgICAgICAgICAgICAgICAgIChfXykKIHxTdGVpbndheSAmfF8gIFwvfCAgfCAgICAgICAgICAgICAgICAvICAgICAgIHx8ICAgICAgICAgICAgICAgPi0tLS0ob28pLS0tLT4KIHxfX18gU29ucyBfX198Xy8gfF9ffCAgICAgICAgICAgICAgICogIC0tLS0tLXx8ICAgICAgICAgICAgIC8tLS0tLS0tXC8KIHwgICB8ICAgICAgICB8ICAgLyAvICAgICAgICAgICAgICAgICAgIHwgICAgIH5+ICAgICAgICAgICAgLyB8ICAgICB8fAogbyAgIG8gICAgICAgIG8gIHwgfCAgICAgICAgICAgICAgICAgICAgfHwtLS0tICAgICAgICAgICAgICogIHx8LS0tLXx8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fiAgICAgICAgICAgICAgICAgICAgfn4gICAgfn4KICBDaG9waW4naW5nIENvdyAgICAgICAgICAgICAgICAgICAgICAgIFRlWCBjb3cgICAgICAgICAgICBTdGV2ZSBNYXJ0aW4ncyBjb3cKIAogCiAgICAgICAgICAgICAgICAgICAgICAgKF9fKSAgICAgICAgICAgICAgICAgKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09KwogICAgICAgICAgICAgICAgICAgICAgIChvbykgICAgICAgICAgICAgICAgIHwgIEYgUiBFIEQgJyBTICAgUyBBIEwgTyBPIE4gIHwKICAgICAgICBfX19fX18gICAgX19fX19fXC8gICAgICAgICAgICAgIChfXyl8ICAgICAgICAgICstLS0tLSsgICAgICAgICAgICB8CiAgICAgX198X19fX19fXF9fL19fX18vXFxbfSAgICAgICAgICAgICAoeHgpfCAgICAgICAgICB8IF9fXyB8ICAgICAgICAgICAKfChfXykKICAgIC8gICAtLS0gICAgICAgICAgICAgXFwgLS0tICAgICAgICAgICBcLyB8ICAgICAgICAgIHwvPXw9XHwgICAgICAgICAgIAp8KG9vKQogfFtdICAvICAgICBcIFwgICAgICAvICAgLyAgICAgXCAgICAgICAgICAgIHwgICAgICAgICAgfD09fD09fCAgICAgICAgICAgIHwKXC8KICAgICB8ICAgQCAgIHwgXF9fX18vICAgfCAgIEAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHw9PXw9PXwgICAgICAgICAgICB8CiAgICAgIFwgICAgIC8gICAgICAgICAgICBcICAgICAvICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgICAgICAtLS0gICAgICAgICAgICAgICAgLS0tCiAgICAgICAgICAgICAgQ09XLUFTQUtJICAgICAgICAgICAgICAgICAgICAgICAgICAgQ293cyBiZWhpbmQgYmFycwogCiAgICAgICAgICAgICAgICAgIF9fIF9fX19fX19fXyAgICAgICAgICAgICAgICAgICAgICAgICAgIF9fIF9fX19fX19fXwogICAgICAgICAgICAgICAgICggIFYgIF8gICBfICApXyAgICAgICAgICAgICAgICAgICAgICAgICggIFYgICAgICAgICApXwogICAgICAgICAgICAgICAgIC8gICAgKCBcby8gKSAgICkgICAgICAgICAgICAgICAgICAgICAgIC8gICAgIC8vLy8gICAgICkKICAgICAgICAgICAgICAgICggICAgICBcX09fLyAgICBcICAgICAgICAgICAgICAgICAgICAgICggICAgICgtLS0pICAgICBcCiAgICAgICAgICAgICAgICAgXCAgICAgIC9PXCAgICAgICkgICAgICAgICAgICAgICAgICAgICAgXCAgICB8bW9vfCAgICAgICkKICAgICAgICAgICAgICAgICAgKCAgICBAICAgQCAgICAvICAgICAgICAgICAgICAgICAgICAgICAgKCAgICgtLS0pICAgICAvCiAgICAgICAgICAgICAgICAgICAoX19fX18vXF9fX18pICAgICAgICAgICAgICAgICAgICAgICAgICAoX19fX18vXF9fX18pCiAgICAgICAgICAgICAgICAgICAgICAgIG8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8KICAgICAgICAgICAgICAgICAgICAgICBvICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvCiAgICAgICAgICAgICAgICAgICAgIG8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8KICAgICAgICAgICAgICAgICAoX18pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoX18pCiAgICAgICAgICAgIC8tLS0tKHV1KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8tLS0tKHV1KQogICAgICAgICpfXy98ICAgICBcbz09cyAgICAgICAgICAgICAgICAgICAgICAgICpfXy98ICAgICBcbz09cwogL1woKiBcfCBfXyBcXC0tLS09PXMgIFwpKSAgICAgICAgICAgICAgL1woKiBcfCBfXyBcXC0tLS09PXMgIFwpKQogICAgICB8LykpKiAgfCBcICAgKSpcfHwvKSkvLyAgICAgICAgICAgICAgICB8LykpKiAgfCBcICAgKSpcfHwvKSkvLwogICAgICAgICAgICAgfiAgflwvLS1cKikgICAgICAgICAgICAgICAgICAgICAgICAgICAgfiAgflwvLS1cKikKICAgICAgICBEcmVhbWluZyBDb3cgICAgICAgICAgICAgICAgICAgICAgICAgQ293IERyZWFtaW5nIG9mIFNpbGFnZQogCiAKICAgICAgICAgICAgIChfXykgICAgICBvICAgbyAgICAgICAgICAgICAgICogICAgICAgIChfXykKICAgICAgICAgICAgIChvbykgICAgIG8gIG8gICAgICAgICAgICAgICAgICBcICAgICAgIChPTykKICAgICAgLy0tLS0tLS1cLz09byAgbyAgICAgICAgICAgICAgICAgICAgICAgXC0tLS0tLS1cLwogICAgIC8gfCAgICAgfHwgIF9fX18gICAgICAgICAgICAgICAgICAgIFtdICAgfCAgICAgfHwKICAgICogIHx8LS0tLXx8ICB8X198ICAgICAgICAgICAgICAgICAgICgvXClzPT18LS0tLXx8CiAgICAgICB+fiAgICB+fiAgICAgICAgICAgICAgICAgICAgICAgICAvX19cICAgfiAgICB+fgogICBDb3cgYmxvd2luZyBidWJibGVzLiAgICAgICAgICAgICBDb3cga2lja2luZyBvdmVyIGxhbnRlcm4gdGhhdCBzdGFydGVkCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlIEdyZWF0IENoaWNhZ28gRmlyZSBvZiAxODg1LgogCiAgICAgICAgICAgICAgICAgX18vLyAgICAgXF9fICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcX198XAogICAgICAgICAvfn5+KX5+LyAgICkgICAgICggICBcfn4ofn5+XCAgICAgICAgICAgICAgICAgICAgICAgICB8IDAwIHwKICAgICAgICAvKCAgICBfKCAgfi8gICAgICAgXH4gIClfICAgIClcICAgICAgICAgICAgICAgICAgIFwtLS08KCAtLSApPi0tLS8KICAgICAgIC8gIFwgLy8gIHwgLyAgICAgICAgIFwgfCAgXCAvICBcICAgICAgICAgICAgICAgICAgICBcICAgIHwtLXwgICAgLwogICAgICAvICAgIFwgICBPLyAgICAgICAgICAgXE8gICAvLyAgICBcICAgICAgICAgICAgICAgICAgICBcX18vICAgIFwtLS8KICAgICAoICAgICkvXCAgICAgICAgICAgICAgICAgICAvL1woICAgICkgICAgICAgICAgICAgICAgICAgICAoICAgICAgKQogICAgIC9cICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBcICAvXCAgICAgICAgICAgICAgICAgICAgIHwgICAgICB8CiAgICAvIC8gL1cgICAgICAgICAgQ09XLVRPVyAgICAgICAgICBXXCBcIFwgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0KICAqICBcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLyAgKiAgICAgICAgICAgICAgICAgICAgfHwgIHx8CiAgICAgICBcXyAgICAgICAgICAgICAgICAgICAgICAgICAgIF8vLyAgICAgICAgICAgICAgICAgICAgICAgIG5uICBubgogICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fiAgICAgICAgICAgQ293IGFmdGVyIGxlYXJuaW5nCnRoYXQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSB2aWNlIHByZXNpZGVudCBoYXMKYQogKF9fKSAgICAgKF9fKSAgICAgICAgIChfXykgKF9fKSAgICAgICAgICAgICAgICAgICAgICAgbG93ZXIgSVEgdGhhbiBoZSBkb2VzCiAob28pICArICAob28pICAgICAgPSAgKG9vKSAob28pCiAgXC8gICAgICAgXC8gICAgICAgICAgIFwvICAgXC8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9fLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgrbykKIChfXykgICAgIChfXykoX18pICAgICAoX18pIChfXykgKF9fKSAgICAgICAgICAgICAgICAgLy0tLS0tIy0tLS0tXCcKIChvbykgICsgIChvbykob28pICA9ICAob28pIChvbykgKG9vKSAgICAgICAgICAgICAgICAvIHwgQ293bnVja3N8fCAgXAogIFwvICAgICAgIFwvICBcLyAgICAgICBcLyAgIFwvICAgXC8gICAgICAgICAgICAgICAgICAgfX0tLS0tLS0tLX19ICAgXCBvCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA9PSAgICAgICAgPT0gICAgLS0KICAgICAgICAgICAgQ293bnRpbmcuLi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoaXMgY293IHBsYXlzIGhvY2tleQogCiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb28gIC9gJ1wgIC4KICAgICAgICAgICAgICAoX18pICAgTU9PISAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYCAvICAgIC4vIFwuLgogICAgICAgICAgICAgIChvbykgIC8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLyAgIC4nICAgICAgXC4KICAgICAgIC8tLS0tLS0tXC8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi8gICAgLyAgICAuLi8gICAgXAogICAgICAvIHwgICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLyAgICAgLi8gICAuLyAgICAgICAgXAogICAgICogIHx8LS0tLXx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi8gICAgIC4vICAgICAgICAgICAgXCAgClwuCiAtIC0gLS0tLS0tLX5+LS0tLX5+LS0tLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4vICAgIC4uLyAgICAgICAuLi8gICAgClwKICAgICAgICAgICAgICAgICAgICAgXCAgICAgICAgICAgICAgICAgICAgICAgICAvICAgICAgIC8gICAgICAgICAvCiAgICAgICAgICAgICAgICAgICAgICAgICAgIEVjaC1jb3cgICAoZWNobykKIAogICAgICAgICAgICAgICAgICBfX19fX19fX19fX19fX19fICAgICAgICAgICAgICAgICAgKF9fKQogICAgICAgICAgfl9ffiAgIC8gICAgICAgICAgICAgICAgXCAgICAgICAgICAgICAgICAgKC0tKXMKLS0tbW1tbW9vb29vb29PT09PT08hCiAgICAgICAgICAob28pICAoIE1pbGsgaXMgbG9naWNhbC4gKSAgICAgICAgICAgICAgX18gXE8vLwogICAvLS0tLS0tLVwvIC0tJ1xfX19fX19fX19fX19fX19fLyAgICAgICAgICAgICAgLyAgID09cylcX19fX18KICAvIHwgICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi0tL3xfLy0tLS0tLyAgICBPTyAgICAgICBDT1cKICogIHx8Vy0tLXx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxfXyAgICAgICBfXyBJSSAgICAgSk9ZUklERVMKICAgIH5+ICAgIH5+ICAgICAgICAgICAgICAgICAgICAgICAgICBPIE8gbyAgbyAgIC8gIFwtLS0tLS8gIFwKIE1yIFNwb2NrJ3MgY293ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxfXy8gICAgIFxfXy8KIAogICAgICAgKiAgICAgICAgICAgICAuICAgICAgICAgICAgICAgICAuICAgICwKICAgICAgICAgICAgLiAgICAgICAgICAgLiAgICAgKiAgICAgICAgLiAgICAgIC4KICAgICAgICAgICAgICAgICAgICAgIC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqCiAgICAgICAgICAgXCAgIC8gICAgICAgICAsICAgICAgICAoX18pICAgLCAgICAgICAsCiAgICAgICAgIC0gICAqICAgLSAgICAgICAgICAgICAgICAoICAgICAgIC4gICAgICB8CiAgICAgICAuICAgLyAgIFwgICAgICwgICAgICAgLiAgICAgXC8gICAgIC4gICAgICAgIC0gICAtICAgIC4KICAgICAgICAgIC4gICAgICAgICAgICAgICAgICAgICAgIC8gXFwgICAgICAgICwgICAgICB8CiAgICAgICAgICwgICAgICAqICAgICAgICAgKiAgICAgIC8gICAvXFwKICAgICAgICAgICAgICAgICAgICAuICAgICAgICAgICAvXFwgLyAgICAgICAuICAgICAgICAgICAuCiAgICAgICAgICAgKiAgICAgICAgICAgLiAgICAgICAvICAgXFwgICAgICAgICAgICAgLiAgICAgICAgIC4KICAgICBffF8gICAgLCAgIC4gICAgLCAgICAgICAgLyAgICAgICAgICAgLCAgICAgICoKICAgICAgfCAgLiAgICAgLCAgICAgICAuICAgICAqICAgICAgICAsIC4gICAgICAgICAgIC4KICAgICAgICAuICAgICwgICAgIC4gICAgICAgICAuICAgICAgICAgICAgLiAgKiAgICAgICAgICAuCiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBNaWxreSBXYXkKIAogCiAgICAgICAgICAgICAgICAgICAgICAgXCAgLyAgICAgICAgIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCiAgICAgICAgICAgICAgICAgICAgICAgIFwvICAgICAgICAgLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICAgICAgICAgKF9fKSAgICAvXCAgICAgICAgIHwgICAgQXQgdGltZXMgbGlrZXMgdGhlc2UgeW91ICAgIHwKICAgICAgICAgICAgICAgIChvbykgICBPICBPICAgICAgICB8IFJFQUxMWSBDb1ZldCBhIHByb3BlciBzdXJnZW9uISB8CiAgICAgICAgICAgICAgICBfXC9fICAgLy8gICAgICAgIE8gXF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fLwogICAgICAgICAgKiAgICAoICAgICkgLy8gICAgICAgTwogICAgICAgICAgIFwgIChcXCAgICAvLyAgICAgICBvCiAgICAgICAgICAgIFwoICBcXCAgICApICAgICAgbyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9fKQogICAgICAgICAgICAgKCAgIFxcICAgKSAgIC9cICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvbykKICAgX19fW1xfX19fX18vfn5+fn5+flxfXy8pIG8tKV9fICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvXC9cCiAgfFxfX1s9PT09PT09X19fX19fLy9fX19fX19fXylfX1wgICAgICAgICAgICAgICAgICAgICAgQ29jb3duICAoXD09LykKICBcfF9fX19fX19fX19fX19fXy8vX19fX19fX19fX19ffCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcPD4vCiAgICAgIHx8fCAgICAgIHx8IC8vfHwgICAgIHx8fAogICAgICB8fHwgICAgICB8fCBALnx8ICAgICB8fHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9fXykgICAgICAvfn5+fn5cCiAgICAgICB8fCAgICAgIFwvICAuXC8gICAgICB8fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLSAtXCAgICAgLyAgTVUgIC8KICAgICAgICAgICAgICAgICAgLiAuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCAgfiAgKSBfXy9fX19fX18vCiAgICAgICAgICAgICAgICAgJy4nLmAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcX09fLwogICAgICAgICAgICAgIENPVy1PUEVSQVRJT04gICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJ1ZGRoYSdzIENvdwogCiAKICAgIChfICAgICAgICAgICAgICAgICB+ICAgICAgICAgLSAgICAgICBfKSAgICAgICAgICAgICAvICAgICAgIH4KICAgICAgICAgICAoICAgICAgICAgICAtICAgICAgICAgICAgICAgICAgICAgICAgLSAgICAgICAgICAgICAgIHwgID1zCiBPICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAqCiAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICBPICAgICAgICBcICAgICAgXCAgICAgICAtICB8CiAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCAgICAgICAgICAgICAgIHwKICAgICAgICAgLSAgICAgICAgICAgICAgICAgICAgLSAgICAgICAgICAgICAgICB8CiAKICkKICAgICAgICBDb3cgYWZ0ZXIgb25lIHRvbyBtYW55IFBhbi1HYWxhY3RpYyBHYXJnbGUgQmxhc3RlcnMuCiAKIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoX18pICAgICAgICAgICAgICAgIC0tLV8KIChfXykgX19fX19fX19fX19fX19fKiAgICAgICAgICAgICAgICAgKG9vKSAgICAgICAgICAgICAgIC98ICAgXAogKHh4KS1cICAgICAgICAgICBcICAgICAgICAgICAgIC8tLS0tLS0tXC8gICAgICAgICAgICAgICAvIHxcICAgXF8gKF9fKQogIFwvIC8tXF9fX19fX19fX19fXC0tXCAgICAgICAgLyB8ICAgICB8ICAgICAgICAgICAgICAgICogIHx8XCAgICAgKG9vKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqICAtLS0tLS0gICAgICAgICAgICAgICAgICAgIH5+IFxfX19fIFwvCiAgICAgICAgQm9uZWxlc3MgQ293ICAgICAgTm8gbGVnIGNvdyAoZ3JvdW5kIGJlZWYpICAgIFR3byBsZWcgY293IChsZWFuIGJlZWYpCiAKIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9fKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9vKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwvICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcX19fLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgLyAgICAgLyBcXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMCAwKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvICAgL1xcICAgICAgICAgICAgICAgICAgICAgICAgICAgXCAvCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL1xcIC8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdgogICAgICAgICAgICAgICAgICAgICAvICAgICAgICAgLyAgIFxcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC0tLS0tLS18LS0tLS0tLT4KICAgICAgICAgICAgICAgICAgICAgICAgLyAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CiAgICAgICAgICAgICAgICAgIHxcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAogICAgICAgICAgICAvICAgICB8ICBcICAgICAgICAgLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfX3xfXwogICAgICAgICAgICAgICAgICBcXCAgIFwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcLyBcLwogICAgICAgICAgICAvICAgICAgIFxcICAgXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcLyBcLwogICAgICAgLyAgICAgICAgICAgICAgXFxfX19cICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcLyBcLwogICAgICAgICAgICAgLyAgICAgICAgICBcXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfX3xfXwogICAgICAgICAgICAgICAgLyAgICAgIFxcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcICAgLwogIC8gICAgLyAgICAgICAgICAgLyAgICAgICAgXFwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XCAvfAogICAgICAgICAgICAgLyAgICAgICAgICAgICAgICBcXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFYgfAogICAgICAgICAvICAgICAgICAgLyAgICAgICAgICAgIFxcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgfAogICAgICAgICAgICAgICAvICAgICAgICAgICAgICAgICAgXFwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgfAogICAgICAgICAgICAgICAgICAgIC8gICAgICAgICAgICAgICBcXCAgICAgICAgICAgICAgICAgICAgICAgICAgICBXICAgVwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcCiAgICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PU89PT09PT09PT09PSAgICAgICAgU3RpY2sgQ293CnN1bmJhdGhpbmcKICAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICAgICAgICBhdCBNYWxpYnUgd2VhcmluZwphCiAgICAgICAgIE8pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPKSAgICAgICAgc3BlY2lhbCBjb3cKYmlraW5pLgogICAgICAgICAgICAgICAgICAgIFRoZSBkcmVhZGVkIGNvd3RhcHVsdAogCiAKICAgICAoX18pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoX19fKSAgICAgICAgICAgICoqICAgICAgICgoX18pKQogICAgIChfXykgICAgICAgICAgICAgICAoX18pICAgICAgICAgICAgIChfX18pICAgICAgICAgICAgIFxcICAgICAgKChvbykpCiAgICAgKG9vKSAgICAgICAgICAgICAgICggICkgICAgICAgICAgICAgKCAgICkgICAgICAgICAgICAgIFxcLS0tLS0tXFwvLwogICAgfCBcLyB8ICAgICAgICAgICAgICggIC8qKSAgICAgICAgICAgIHwgICB8ICAgICAgICAgICAgICAgfHwgICAgICB8fAogICAgfCAgfCAgICAgICAgICAgICB8fCAgfHwgICAgICAgICAgICB8ICAgfCAgICAgICAgICAgICAgIHx8fC0tLS18fHwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoX19fKSAgICAgICAgICAgICAgIH5+fiAgICB+fn4KIENvd3MgZG9pbicgaXQgICAgICBDb3dzIGRvaW4nIGl0ICAgICAgICAgICBcXyogICAgICAgICAgICAgQ293IGR1cmluZyBhbgogIEZST05UIFZJRVcgICAgICAgICAgQkFDSyBWSUVXICAgICAgICAgVE9QIFZJRVcgICAgICAgICAgICAgRWFydGhxdWFrZQogCiAKICAgICAgICAgICAoKCAgICAgXyAgXyAgICAgICAgICAgICAgICAgICAgICAgKF9fXykgICAgICAgICAgICAgIChfXykKICAgICAgICAgICggRFwgICAoXykoXylfX19fICAgICAgICAgICAgICAgICAgKDAgMCkgICAgICAgICAgICAgIChvbykKICAgIF9fX19fX19cX198IHwgTU9PVFZfX19fKCAgICAgICAgICAvLS0tLS0tLVxfTy0tLW1vbyAgICAgICAgKi1cLy0tLS0tLS1cCiAgIC98ICAgICB8fCAgIF8vXF9fX18vICAgICAgICAgICAgICAvIHwgICAgIHx8ICAgICAgICAgICAgICAgLyAgfHwgICAgICB8ICBcCiAgLyB8fF9fX198IFwvfiAgIC8gIFwgICAgICAgICAgICAgICogIHx8LC0tLXx8ICAgICAgICAgICAgICAqICAgfHwtLS0tLXx8ICAKKgogKiAgfHwgICAgfCAgICAgIE8gICAgTyAgICAgICAgICAgICAgICB+fiAgICB+fiAgICAgICAgICAgICAgIFwvfCgvKSgvXCgsLC8KICAgIH5+ICAgIH4gICAgICAgICAgICAgICAgICAgICAgICAgUm9taWUgbW9vZWQuLi4gICAgICAgICAgd2hpbGUgSnVsaWUgYXRlLgogICAgICAiTW9vLXZpZSBDYW1lcmEiICAgICAgICAgICAgICAgIChUaGUgQmFyZCdzIGJhcm55YXJkIGluc3BpcmF0aW9ucykKIAogCiAgICAgICAgICAgICAgICAgICAgICAgCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwogICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAp8CiAgICAgICAgICAgICAgX19fX19fXyAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCnwKICAgICAgICAgICAgIC8gX19fX18gfCB8ICAgICAgICAgICAgICAgICAgICAgICBBQ01FIE1PTy1WRVJTICAgICAgICAgICAgICAgICAKfAogICAgICAgICAgICAvIC8oX18pIHx8IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAp8CiAgIF9fX19fX19fLyAvIHxPT3wgfHwgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCnwKICB8ICAgICAgICAgfC0tLS0tLS18fCB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKfAogKHwgICAgICAgICB8ICAgICAtLnx8IHxfX19fX19fX19fX19fX19fX19fX19fXyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAp8CiAgfCAgX19fXyAgIFwgICAgICAgfHxfX19fX19fX198fF9fX19fX19fX19fXyAgfCAgICAgICAgICAgICBfX19fICAgICAgX19fXyAgCnwKIC98IC8gX18gXCAgIHxfX19fX198fCAgICAgLyBfXyBcICAgLyBfXyBcICAgfCB8ICAgICAgICAgICAgLyBfXyBcICAgIC8gX18gXCAKfFwKIFx8fCAvICBcIHxfX19fX19fX19fX19fX198IC8gIFwgfF98IC8gIFwgfF9ffCB8X19fX19fX19fX198IC8gIFwgfF9ffCAvICBcCnxffC8KICAgIHwgKCkgfCAgICAgICAgICAgICAgICAgfCAoKSB8ICAgfCAoKSB8ICAgICAgICAgICAgICAgICAgfCAoKSB8ICAgIHwgKCkgfAogICAgIFxfXy8gICAgICAgICAgICAgICAgICAgXF9fLyAgICAgXF9fLyAgICAgICAgICAgICAgICAgICAgXF9fLyAgICAgIFxfXy8KIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIlRoZSBNb28tdmVycyBhcmUgaGVyZSEiCiAKIAogICAgICAgICAgLS0gKF9fKSAgICAgICAgICAqICAgICAgICAoX18pKiAgICAgICAgKF9fKSogICAgICAgIChfXykqICAgICAgIAooX18pCiAgICotLS0gICAgLSAoUVEpICAgICAgICAgICBcICAgICAgIChvbykgXCAgICAgICAob28pIFwgICAgICAgKG9vKSBcICAgICAgCihvLSkKICAgLSAgIFwtLS0tLS1cLyAgICAgICAgICAgICBcLS0tLS0tLVwvIH5+XC0tLS0tLS1cLyB+flwtLS0tLS0tXC8Kfn5cLS0tLS0tLVwvCiAtIC0gLS0tICAgfCAgICAgIHwgICAgICAgICAgICAgICB8ICAgICAgICAvLyAgfCAgICAgICAgLy8gIHwgICAgICAgIC8vICB8ICAgCnx8CiAgIC0gICB8fCgpLS18fCAgICAgICAgICAgICAgIHx8LS0tLS0tKyAgICB8fC0tLS0tLSsgICAgfHwtLS0tLS0rICAgIHx8LS0tLXx8CiAgICAgICBvbyAgICBvbyAgICAgICAgICAgICAgIH5+ICAgICAgICAgICB+fiAgICAgICAgICAgfn4gICAgICAgICAgIH5+ICAgIH5+CiAKICAgICAgUm9sbGVyIENvdyAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb3dzIGluIHBvbG9uYWlzZQogCiAKICAgICAgICAgIC0tLS0tLS0tLS0tLS0vCiAgICAgICAgICAgICAgICAgICAgICAvCiAgICAgICAgICAgICAgICAgICAgIC8KICAgICAgICAgICAgICAgICAgICAvCiAgICAgICAgICAgICAgICAgIC8KICAgICAgICAgICAgICAgICAvCiAgICAgICAgICAgICAgICAvICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9fKQogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogU2hpcCBhcnJpdmluZyB0b28gbGF0ZSB0byBzYXZlIGEgZHJvd2luZyBjb3cgKGFwb2xvZ2llcyB0byBGcmFuayBaYXBwYSkKIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcICAgIC8gICAgICAgICAgX19fXwogICAgICAgICAgfFwvfCAgICAgICAgICAgICAgICAgICB7X19ffSAgICAgICAgICAgICAgICAgXF9fLyAgICAgICAgIFwvICogIFwvCiAgICAgICAgICAob28pICAgICAgICAgICAgICAgICAgICggKiApICAgICAgICAgICAgICAgICAoLS0pICAgICAgICAgfCBPICBPIHwKICAgLy0tLS0tLS1cLyBWICAgICAgICAgIC8tLS0tLS0tLVxRLyAgICAgICAgICAvLS0tLS0tLS1cLyAgICAgICAgICAgXCAgICAvCiAgLyB8ICAgICB8fF9ffCAgICAgICAgIC8gfCAgICAgIHx8ICAgICAgICAgICAvIHwgICAgIHx8ICAgICAgICAgICAgICBcKiovCiAqICB8fC0tLS18ICAgICAgICAgICAgKiAgfHwtLS0tLXx8ICAgICAgICAgICogIHx8LS0tLXx8ICAgICAgICAgICAgICAgLS0KICAgIH5+ICAgIH4gICAgICAgICAgICAgICAtLSAgICAgLS0gICAgICAgICAgICAgLS0gICAgLS0gICAgICAgICAgICBNaWxrYWVsCiBDb3cgZnJvbSBWdWxjYW4gICAgIFNtb2tpbmcgMS1leWVkIGNvdyAgICBDb3cgdy8gcmFiYml0IGVhcnMgICAgICBDb3diYWNoZXYKIAogCiAgICAgICAgICAgICAgICAgICAgICAgICAoKikgICAgICAgICAgICAgICAgICAoKikKICAgIChfXykgICAgICAgICAgICAgICAgICB+ICAgICAgICAgICAgICAgICAgICB+ICAgICAgICAgICAgICAgIChfXykKICAgIChvbykgICAgICAgICAgICAgICAgICB8ICAgICAgfCAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgQChvbylACiAgICBbLi5dICAgICAgICAgICAgICAgICAgfCAgICAgID0gICAgICAgICAgICAgfCAgICAgICAgICAgICAgICBbLi5dQEAKIFwgfCAgVSAgICAgICAgICAgKC0pICAgICB8ICAgICB8IHwgICAgICAgICAgICB8ICgtKSAgICAgICAgICAgICBVICBAQEBACiAgfHwgICA9PTxfXD09PT09L198X19fX19fPV9fX19ffD18X19fX19fX19fX19fPV9ffF9fX19cPT09PS9fPj09ICAgfHwKICB8fCAgICkgIHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHwgICggICB8fAogIHx8X19fKT09fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fD09KF9fX3x8CiAgfFw9PT09fCB8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8IHw9PT09L3wKICB8ICBcICB8ICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgfCAgLyAgfAogID0gICAqID0gICAgID0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA9ICAgICA9ICogICA9CiAgICAgICAgICAgICAgICAgICAgY293cyBoYXZpbmcgY2FuZGxlbGlnaHQgZGlubmVyCiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9fXykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG8gbykKICAgICAoICoqICkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfX1xfL19fCiAgICAgfGUgIGV8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL35+Kn5+XCAgICAgICAgICAgICAgICAgIFxfX18vCiAgICAgIFwgIC8gX19fXyo9PT0qX19fX19fKiAgICAgICAgICAgICAvICAgKiAgIFwgICAgICAgICAgICAgICAgIChPIE8pCiAgICAgICBPTyAgICAgICogR2l2ZW5jaHkgKlwgICAgICAgICAgIC8gfCAgKiAgfCBcICAgICAgICAgICAgICAgICBcIC8KICAgICAgICAgfCAgICAqICAgICAqICAgICogIFwgICAgICAgICAgXCB8PT09PT18IC8gICAgICAgICAgICAgICAgICBPCiAgICAgICAgLyoqKioqKioqKioqKioqKiogICAgKiAgICAgICAgICAifF9fX19ffCIKICAgICAgIC8vICAqKioqKioqKioqKioqICAgICAgICAgICAgICAgICAgfCB8IHwgICAgICAgICAgICAgICAgQ293IGV4Y2xhaW1pbmcKICAgICAgfHwgICAgfHwgICAgIFxfL3x8ICAgICAgICAgICAgICAgICAgfCB8IHwgICAgICAgICAgICAgICAgICAiSG9seSBDb3ciCiAgICAgIHx8ICAgIHx8ICAgICB8fCB8fCAgICAgICAgICAgICAgICAgIHxffF98CiAgICAgIHZ8ICAgIHZ8ICAgICB2fCB2fCAgICAgICAgICAgICAgICAgICB+IH4KICAgICAgICAgSGF1dGUgQ293dHVyZSAgICAgICAgICAgICAgICAgICAgQ09XTlQKIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFtdICAgICAgICAgfFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9fKSB8ICAgICAgICAgICB8W10gICAgICAgICB8XAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoLS0pIHwgICAgICAoX18pIHwgICAgICAgICAgIHxbXSAgICAgICAgCnxcCiAgICogICAgICAgICAgICAgICAgICAgICAgICBfX19fX19fX19cLyAvfCAgICAgIChvLSkgfCAgICAgIChfXykgfCAgICAgICAgICAKfFtdCiAgIHwgICAgICAgIChfXykgICAgICAgICAgIC8sLCAgICAgICwsIC9ffF9fX19fX19cLyAvfCAgICAgIChvbykgfCAgICAgIChfXykKfAogICB8ICAgICAgX18ob28pICAgICAgICAqLS0tLS0tLS0tLS0tLS0vLCwgICAgICAsLCAvX3xfX19fX19fXC8gL3wgICAgICAoT08pCnwKICAgIFw9PT09PSAgfFwvICAgICAgICAgfCAgICAgICAgICAgKi0tLS0tLS0tLS0tLS0tLywsICAgICAgLCwgL198X19fX19fX1wvCi98CiAgIF98Xy8gICAgIFxfICAgICAgICAgIHw9PT09PT09PT09PXwgICAgICAgICAgICotLS0tLS0tLS0tLS0tLS8sLCAgICAgICwsIC8KfAogICAtLy9cLS0tLS0vXFwgICAgICAgICBvICAgICAgICAgICB8PT09PT09PT09PT18ICAgICAgICAgIAoqLS0tLS0tLS0tLS0tLS0tLXwKICAgIFxfLyAgICAgXF8vICAgICAgICAgICAgICAgICAgICAgbyAgICAgICAgICAgfD09PT09PT09PT09fCAgICAgICAgICAgICAgIAp8CiAtIC0gLS0tLS0tLS0tLS0tLS0tLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvICAgICAgICAgIAp8PT09PT09PT09PT09PT09PXwKICAgICBDb3dhemFraSAgICAgICAgICAgICAgICAgICAgICAgIENPVy1XQVJEICAgICAgICAgICAgICAgbyAgICAgICAgICAgICAgIApvCiAKIAogICAgICAgX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCiAgICAgIC8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgKCAgRnJlaXNpYW4gYSBqb2xseSBnb29kIGZlbGxvdyEgKQogICAgICBcX19fX19fX19fX19fX19fXyAgX19fX19fX19fX19fLwogICAgICAgICAgICAgICAgICAgICAgICkgKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCkKICAgICAgICAgICAgICAgIChfXykgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCAgKQogICAgICAgICAgKF9fKSAgKG9vKSAgLyAgICAgICAgICAoX19fKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICggX18gKQogICAgICAgICAvKG9vKS0tLVwvICAgICAgICAgICAgICAobyBvKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob28pCiAgIC8tLS0tLS0tXC8gICB8fCAgICAgICAgICAgICAgICBcIC8tLS0tLS0tXCAgICAgICAgICAgICAgIC8tLS0tLS0tL3x8fHwKICAvIHwgICAgIHx8LS0tLXx8ICAgICAgICAgICAgICAgICBPfHwgICAgIHwgXCAgICAgICAgICAgICAvIHwgICAgIHx8IHx8fAogKiAgfHwtLS0tfHwgICAgfn4gICAgICAgICAgICAgICAgICB8fC0tLSx8fCAgKiAgICAgICAgICAgKiAgfHwtLS0tfHwgIHwKICAgIH5+ICAgIH5+ICAgICAgICAgICAgICAgICAgICAgICAgfn4gICAgfn4gICAgICAgICAgICAgICAgIH5+ICAgIH5+CiAgICAgIFR3byBjb3dzIENPVy1uZ3JhdHVsYXRpbmcgYSBidWxsICAgICAgICAgICAgICAgICAgICBBeWF0b2xsYWggQ293LW1hbmhpCiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9fKSAgICAgICAgICAgICAgICAgCnw9PT09fAogICAvLS0tLS0tLS0tLS0tLS0tLS0tLS0vICAgICAgICAgICAgICAgICAgICAgICAgICAob28pICAgICAgICAgICAgICAgICAgClxvby8KICAvIHwgICAgIHx8ICAgICAgICAgICAvICAgICAgICAgIChfXykgICAgICAvLS0tLS0tLVwvICAgICAgICAgICAgIC8tLS0tLS0tXC8KICogIHx8LS0tLXx8ICAgICAgICAgIC8tLS0tLS0tLS0tLShvbykgICAgIC8gfCAgICAgfHwtLS0tPiAgICAgICAgLyB8ICAgICB8fAogICAgfn4gICAgfn4gICAgICAgICAgICAgICAgICAgICAgIFwvICAgICAqICB8fC0tLS18fCAgICAgICAgICAgICogIHx8LS0tLXx8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX19fLyAgX19fLyAgICAgICAgICAgICAgfn4gICAgfn4KICAgICAgICAgTmV0d29yayBWaXJ0dWFsIENvdyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ293Y2F0Y2hlcgogKHdpdGggc2VwYXJhdGUgZnJvbnRlbmQgYW5kIGJhY2tlbmQpICAgICAgQ293IHdhdGVyc2tpaW5nICAgICAgKE1ham9yCmxlYWd1ZSkKIAogCiAgICAgICAgICAgIC9cICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfXwogICAgICAgICAgIHtfX30gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9bX19dXwogICAgICAgICAgIChvbykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8ob28pXAogICAgLy0tLS0tLS1cLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8tLS0tLS1AXC9ACiAgIC8gfCAgKyAgfHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvIHwgICAgIHxAQAogICogIHx8LS0tLXx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqICB8fC0tLS18fAogICAgIH5+ICAgIH5+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fiAgICB+fgogICAgU2FjcmVkIENvdyAgICAgICBaZW4gQ293IChlYXRpbmcgZ3Jhc3MpICAgICAgICAgIEhhc2lkaWMgQ293CiAKICAgX19fX18gICAgICAgICAgX19fX19fX19fX19fX19fX18KICAvICAgICBcICAgICAgICAvICAgICAgICAgICAgICAgICBcCiAoIDErMj0zICkgICAgICAoIDErU0lOKDJ4KStDT1MoM3gpICkKICBcX18gIF8vICAgICAgICBcX19fX18gIF9fX19fX19fX18vICAgICAgICAgICAgICAgICAgICAgICAgIChfXykKICAgICggKCAgICAgICAgICAgICAgICApICkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPig9PSkKICAgICBcXCAgICAgICAgICAgICAgICAvLyAgICAgICApX18oICAgICAgICAgICAgICAgICAgICAgICAgLy1cLy1cCiAgICAgICBcICAgIChfXykgICAgICAvICAgICAgICAgKG9vKSAgICAgICAgICAgICAgICAgICAgICAgLyggICAgKVwKICAgICAgICAgICAgKG9vKSAgICAgICAgICAgICAgICAgXC8tLS0tLS0tKiAgICAgICAgICAgICAgIH4gKCAgICApIH4KICAgICAvLS0tLS0tLVwvICAgICAgICAgICAgICAgICAgIHx8ICAgICB8IFwgICAgICAgICAgICAgICAgKCAgICApCiAgICAvIHwgICAgIHx8ICAgICAgICAgICAgICAgICAgICB8fC0tLS18fCAgIFwgICAgICAgICAgICAgIC8tLS0tXAogICAqICB8fC0tLS18fCAgICAgICAgICAgICAgICAgICAgdnYgICAgdnYgICAgICAgICAgICAgICAgIC8gICAgXCBcCiAgICAgIH5+ICAgIH5+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+ICAgICAgKiB+CiAgIENPV2N1bGF0b3IgKDIpICAgICAgICAgICAgICAgUmV2ZXJzZSBQb2xpc2ggQ293ICAgICAgICBDb3ctYS1idW5nYQogCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fiAgICB+fgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE8gIChfX18pIHx8ICAgICAgICAgKiAgfHwtLS0tfHwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAobyBvKSB8fCAgICAgICAgICBcIHwgICAgIHx8CiAgICAgICAgICAgICAobm8tYnVsbC1pdHkpIC0tLT4gICAgJSAgLVwgLy0gfHwgICAgICAgICAgIFwtLS0tLS0tL1wKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XC98IE8gfCB8fCAgICAgICAgICAgICAgICAgIChvbykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICB8ICAgfCB8fCAgICAgICAgICAgICAgICAgICggICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvIHYtJyB8fCAgICAgICAgICAgICAgICAgICA+PAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz09PT09PT09PT18ICAgICAgICAgICAgICAgICAgKCAgKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAgICAgICAgIHx8ICAgICAgICAgICAgICAgICAgKG9vKQogICAsLS0tLS0tLl8oX18pICAgICAgICAgICAgICAgICB8fCAgICAgICAgIHx8ICAgICAgICAgICAvLS0tLS0tLVwvCiAgKiB8IFwgICAgICggb28gICAgICAgICAgICAgICAgIHx8ICAgICAgICAgfHwgICAgICAgICAgLyB8ICAgICB8fAogdnY9PT09Pi0tLS09XC89PT09dnYgICAgICAgICAgICB8PT09PT09PT09PT18ICAgICAgICAgKiAgfHwtLS0tfHwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+ICAgIH5+CiAgICAgICAgICAgICAgICAgICAgIENPV1RPVyAgICAgICAgICAgICAgICAgICAgICAgICAgICBCaS1jb3cgbW9sZWN1bGUKIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9fKSAgICAgICAgICAgICAgICAgKF9fKQogICAgICAgICAoKSAgKCkgICAgICAgICAgICAgX19fX198IG9vIHwgICAgICAgICAgICAgICAgfG9vfAogICAgICAgICAgKCkoKSAgICAgICAgICAgICAvICAgICAgICAgIHwgICAgICAgICAvLS0tLXwtfF9ffC18CiAgICAgICAgICAob28pICAgICAgICAgICAgLyAgICAgICAgICAgfCAgICAgICAgLyB8ICAgICB8fAogICAvLS0tLS0tLVVVICAgICAgICAgICAgL19fX19fX19fX19fX3wgICAgICAgKiAgfHwtLS0tfHwKICAvIHwgICAgIHx8ICAgICAgICAgICAgICAgIH5+ICAgIH5+ICAgICAgICAgICAgIH5+ICAgIH5+CiAqICB8fHctLS18fCAgICAgICAgICAgIENvdyBkcmVzc2VkIHVwICAgICAgICBDb3cgZHJlc3NlZCB1cAogICAgfn4gICAgfn4gICAgICAgICAgICAgIGFzIGdob3N0ICAgICAgICAgICAgYXMgRnJhbmtlbnN0ZWluCiBFaCwgV2hhdCdzIHVwIERvYz8gICAgIGZvciBIYWxsb3dlZW4gICAgICAgICAgRm9yIEhhbGxvd2VlbgogCiAKICAgICAgICAgIChfXykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcL3wgICAgICAgICAgICAgICAoX18pCiAgICAgICAgICAob28pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob28pICAgICAgICAgICAgICA+KD09KQogICAgX19bX11fX1wvICAgICAgICAgICAgICAgICAgICAgICAgICAvLS0tLS0tLVZWICAgICAgICAgLy0tLS0tLS1cLwogIC8gfCAgICAgfHwgICAgICAgICAgICAgICAgICAgICAgICAgIC8gfCAgICAgfHwgICAgICAgICAvIHwgICAgIHx8CiAqICB8fC0tLS18fCAgICAgIC0tPiAgIC4gICAgICAgICAgICAqICB8fC0tLS18fCAgICAgICAgKiAgfHwtLS0tfHwKICAgIH5+ICAgIH5+ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+ICAgIH5+ICAgICAgICAgICB+fiAgICB+fgogIFBvcnRhYmxlIENvdyAgICBKYXBhbmVzZSBtb2RlbCAgICAgICBMeWNvd250aHJvcHkgICAgICBDb3ctYS1idW5nYSAoMikKICAodmVyeSBoYW5keSkgICAgcG9ydGFibGUgQ09XCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEljaCB3aWxsIEtVRUhFISEhIChQYXJ0IElJKSAoSmFzcGVyLCAzMS4gSnVsIDE5OTcsIDA2OjU2OjI5KToKfiMhIG9uPUJsb29keWhhcnJ5IG90PTg3MDMwNzA3MyBvZz13aXR6ZQp+IyEgcm49Q2F0d2VhemxlIHJ0PTg3MDI2MjI2MCByZz13aXR6ZQp+IyEgdGlkPTg3MDI2MjI2MApJcyBqYSBnYW56IHdpdHppZywgQ2F0d2VhemxlLiBBYmVyIGVpbiBsaW5rIGhhZXR0ZSBkb2NoIHNpY2hlciBhdWNoIGdlcmVpY2h0LgoKYmgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJvaW5nPyAoWWVuZGksIDMxLiBKdWwgMTk5NywgMTI6NTE6MDkpOgp+IyEgcm49UGFyYWNlbHN1cyBydD04NzAyNjkzODMgcmc9c2NobWFycm4KfiMhIHRpZD04NzAyMDkyMzcKCk5lZWUsIFBhcmEqLCB6dSBmb3J0Z2VzY2hyaXR0ZW5lciBTdHVuZGUgc2luZ3QgQm9pbmcgYXVjaCBnZXJuZQoiQk9EWUNPVU5UIElTIElOIFRIRSBIT1VPVU9VT1VPVVNFISEhIi4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoUGFtcGVycywgMzEuIEp1bCAxOTk3LCAxMzo0NjowOSk6CltBbGxnZW1laW46SG91c2Vob2xkZXJdIGFyZ2wgd28gc2luZCBkaWUgcnVkZXJib290ZSA/Pz8/PwpbQWxsZ2VtZWluOlllZHldIHNjaG9uIG1hbCBtaXQgc2Nod2ltbWVuIHByb2JpZXJ0PwpbVG9kOkxhcnNdIEVpbiBFaW4gR2ViaXJnc2JhY2ggaGF0IGdlcmFkZSBIb3VzZWhvbGRlciB1bWdlYnJhY2h0LgoKClBhbXBlcnMuIE5pY2h0c2Nod2ltbWVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoSGFyZGlsLCAzMS4gSnVsIDE5OTcsIDEzOjQ3OjEwKToKfiMhIHJuPVBhbXBlcnMgcnQ9ODcwMzQ5NTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcwMzQ5NTY5CgpQYW1wZXJzLU1hdXNpLAoKRHUgc29sbHN0IERpcGxvbWFyYmVpdCBzY2hyZWliZW4gdW5kIG5pY2h0IG1wYS4KCi1IYXJkaWwuIEFudHJlaWJlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hY2hyaWNodGVuIG9kZXIgZG9jaCBudXIgR2VzY2hpY2h0ZW4/IChXb29keSwgMzEuIEp1bCAxOTk3LCAxMzo1MToyOCk6Cj4gLW5hY2hyaWNodGVuKgpFcyBpc3Qga2VpbmUgR2VzY2hpY2h0ZSBmdWVyICdOYWNocmljaHRlbicgdmVyZnVlZ2Jhci4KCkFsc28gZG9jaCBpbW1lciBibG9zcyBHZXNjaGljaHRlbiBkb3J0IGRyYXVmPyA6KQoKV29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVG9lZGxpY2ggKFl1ZGlub20sIDMxLiBKdWwgMTk5NywgMTY6MTI6MjApOgphdWNoIG1hbCBlaW4gY3V0JnBhc3RlIEJlaXRyYWcgdm9uIG1pcjoKRGVyIEVsZmVud2FlY2h0ZXIgc2FndDogVmllbGUgd2lsZGUgVGllcmUgbGF1ZXJuIGltIFdhbGQuCltUb2Q6TGFyc10gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSBab3JybyB1bWdlYnJhY2h0LgpbVG9kOkVpbiBXZWdoaWVyXSBHb3RjaGEhCgotLQplaW4gdHJhdWVybmRlciB5dWRpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkYSBvZGVyIG5pY2h0IGRhPyAoWXVyaWtvLCAzMS4gSnVsIDE5OTcsIDE2OjU5OjMxKToKPiBkYW5rZSBoaWxiZXJ0CkhpbGJlcnQgd2lua3QuCkhpbGJlcnQgdmVyc2Nod2luZGV0IG1pdCBLbmFsbCB1bmQgU2Nod2VmZWxkdWZ0LgpEdSBiZWRhbmtzdCBEaWNoIGJlaSBIaWxiZXJ0Lgo+IHNjaGF1CkR1IGJpc3QgYXVmIGVpbmVtIChkZW0/KSBCYWxrb24gaW4gSGlsYmVydHMgVHVybS4gRXMgaXN0IGVpbiBzZWhyIGx1ZnRpZ2VyCkF1ZmVudGhhbHRzb3J0LiBJbW1lcmhpbiBnaWJ0IGVzIGVpbmUgaHVlZnRob2hlIEJhbHVzdHJhZGUsIGRpZSBEaWNoIHZvcgpkZW0gc2NobGltbXN0ZW4gc2ljaGVydC4gRGllIEF1c3NpY2h0IGlzdCBoZXJybGljaCEKRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRvc3Rlbi4KCldlZz8gRGE/IFdvPyBXaWU/IFdhcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFBhYWR5IGluIEJlcmxpbj8gKEdyaW1tYm9ybiwgMzEuIEp1bCAxOTk3LCAxODoxMzo0MCk6Cn4jISBvbj1QYW1wZXJzIG90PTg3MDM0ODI3MyBvZz1wYXJ0eQp+IyEgcm49U3VuZmxvd2VyIHJ0PTg3MDI5NDY0MiByZz1wYXJ0eQp+IyEgdGlkPTg3MDI1Mjk3MApEYXMgZWluemlnIHZlcm51ZW5mdGlnZSBhbiBkaWVzZW0gQXJ0aWtlbCB3YXIgbWFsIHdpZWRlciBkZXIgQmVncmlmZgonV2VuaWdrZWl0Jy4KClBhbXBlcnMuIE1laW50OiBTZWxic3RlaW5zaWNodCBpc3QgZGVyIGVyc3RlIFNjaHJpdHQgYXVmIGRlbSBXZWdlIHp1cgpCZXNzZXJ1bmcuCgpQLlMuOiBKYWphLCBpY2ggd2Vpc3MuIENhdCosIHZlcmxlZ3Mgc2NobmVsbC4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sICAxLiBBdWcgMTk5NywgMTA6MjU6MDEpOgoiVmVydXJ0ZWlsZSBuaWVtYW5kZW4gYmV2b3IgRHUgZWluZSBNZWlsZSBpbiBzZWluZW4gTW9ja2Fzc2lucyBnZWxhdWZlbiBiaXN0LiIKKGluZGlhbmlzY2gpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTcHJ1Y2ggZGVyIFdvY2hlIChIb2JvLCAgMS4gQXVnIDE5OTcsIDEwOjMyOjQ3KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NzA0MjM5MDEgcmc9c2NobWFycm4KfiMhIHRpZD04NzA0MjM5MDEKTW9ja2E/c2lucyA/Pz8KTmEsIHdlbSdzIHNjaG1lY2t0IQoKSG9ibyAodHJpbmt0IGxpZWJlciBTY2h3YXJ6dGVlLCB3YXRldCBhYmVyIHNvd2llc28gbmljaHQgCiAgICAgIGluIGlocmVtIEdldHJhZW5rIHJ1bSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoR3JpbW1ib3JuLCAgMS4gQXVnIDE5OTcsIDEyOjA3OjI1KToKRWJlbiBhbSBUZWxlZm9uIGRlciBCZXJhdHVuZzoKIk1vbWVudCwgaWNoIHNjaGFsdGUgbWFsIGViZW4gZGFzIG1vZGVtIGFuIHVuZCBhdXMuLi4iIHR1dCwgdHV0LCB0dXQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0dGVyIFNwcnVjaC4uLiAoR3JpbW1ib3JuLCAgMS4gQXVnIDE5OTcsIDEyOjE0OjQ4KToKIkdld2FsdCBpc3QgZGVyIGxldHp0ZSBBdXN3ZWcgZGVyIElua29tcGV0ZW50ZW4uIgoiSmEsIHdlaWwgbnVyIGRpZSBJbmtvbXBldGVudGVuIGJpcyB6dWxldHp0IHdhcnRlbiwgdW0gR2V3YWx0IGVpbnp1c2V0emVuLiIKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQm9pbmc/IChSaWt1cywgIDEuIEF1ZyAxOTk3LCAxNDowNjozMSk6Cn4jISBybj1ZZW5kaSBydD04NzAzNDYyNjkgcmc9c2NobWFycm4KfiMhIHRpZD04NzAyMDkyMzcKaWNoIGRhY2h0ZSBkYSBlaGVyLCBlciBzYWVuZ2U6IEJPSU5HIEJVTU0gVFNDSEFLIHZvbiBLcmFmdHdlcmsuIEhvZXJ0ZQppY2ggaGV1dGUgZnJ1ZWggaW0gQXV0by4uLgpSaWt1cwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1hbCB3aWVkZXIgZWluIE11c2lrcXVpeiAoR3JpbW1ib3JuLCAgMS4gQXVnIDE5OTcsIDE0OjI1OjUzKToKfiMhIG9uPUhlbHZhIG90PTg3MDQzNTcwMCBvZz1wdWl6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODcwNDM0OTQyIHJnPXB1aXoKfiMhIHRpZD04Njg1NjczNDEKRHVtbSBvZGVyIEludG9sZXJhbnQgPwpBdWYgamVkZW4gZmFsbCBoYWJlIGljaCBlcnN0IG1hbCBnZXNjaGF1dCwgb2IgZGVyIFNjcmVpYmVyIGFud2VzZW5kIHdhci4uLgpkYW5uIGhhZXR0ZSBpY2ggZXMgaWhtIG5hZW1saWNoIHBlcnNvZW5saWNoIGdlc2FndCB1bmQgbmljaHQgdWViZXIgZGllIG1wYS4KaGFldHRlc3QgZHUgamEgYXVjaCBtYWwgbWFjaGVuIGtvZW5uZW4gZWluIGVpbmZhY2hlcyB0ZWlsZSBtaXQgaGFldHRlCmdlbnVlZ3QuLi4KQXVzc2VyZGVtIGhhYmUgaWNoIGtlaW5lIGx1c3QgdWViZXIgaWRlIEludG9sZWVyYW56IGVpbmUgbmV1ZSBEaXNrdXNzaW9uCmxvc3p1ZWlzZW4uIERpZSBnYWIgZXMgaGllciBzY2hvbiBtYWwgb2VmdGVycywgYWJlciBkYXMgZHVlcmZ0ZSBEaXIgYmVzc2VyCmJla2FubnQgc2VpbiBsYXMgbWlyLiBVbiBkenUgZGllc2VtIHJlaXplbmRlbiBaaXRhdCBpbiBkZWluZW0gQXJ0aWtlbCBudXIKZGllczogUHJvdm9rYXRpb24gaXN0IGphIGltbWVyIGdhbnogbmV0dC4gdm9yIGFsbGVtIHdlbm4gc2llIGZ1bmt0aW9uaWVydCAuCkljaCBrb2VubnRlIGpldHp0IGFsc28gYXVjaCBlaW4gcGFhciBaaXRhdGUgYW5icmluZWdlbi4gQWJlciBkYXMgaXN0IG1pciB6dQpkb29mLiBVbmQgaWNoIGRlbmtlIG5pY2h0LCBkYXNzIGVzIGR1bW0gaXN0LCBCb2VzZSBPbmtlbHogZHVtbSB1eiBmaW5kZW4gKG9kZXIKd2FyIGRhcyBqZXR6dCBlaW4gUGFyYWRveG9uKS4gSmVkZXIgbXVzcyBoYWx0IGZ1ZXIgc2ljaCBXZXJ0ZSBzZXR6ZW4sIHVuZCBkaWUKc2luZCBiZWkgbXIgaGFsdCBzbyBnZXNldHp0LCBkYXNzIGljaCBnYW56IGdlcm5lIG1hbCBkYXJhdWYgaGlud2Vpc2UsIGRhc3MgaXMKaWNoIGVzIGFic29sdXQgc2NoZWlzc2UgZmluZGUgKHNvcnJ5LCBrZWluZSA8THVzdCwgbWljaCBnZXdhZWhsdGVyCmF1c3p1c2RydWVja2VuKSBlaW5lIHNvbGNoZSBiYW5kIGF1ZiB3ZWxjaGUgQXJ0IGF1Y2ggaW1tZXIgenUgdW50ZXJzdHVldHplbi4KUHVua3QuCkhlbHZhIGR1bW0sIGxhdXQgLCBpbnRvbGVybmF0ICwgdW5mYWVoaWcuLi4gKGxpc3RlIGthbm4gamVkZXIgc2VsYnN0CmVyd2VpdGVybi4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1hbCB3aWVkZXIgZWluIE11c2lrcXVpeiAoR3JpbW1ib3JuLCAgMS4gQXVnIDE5OTcsIDE0OjI1OjU3KToKfiMhIG9uPUdyaW1tYm9ybiBvdD04NzA0MzYwMTEgb2c9cHVpegp+IyEgcm49SGVsdmEgcnQ9ODcwNDM1NzAwIHJnPXB1aXoKfiMhIHRpZD04Njg1NjczNDEKV2VpbCBlcyBkYSBzY2hlaW5iYXIgSXJyaXRhdGlvbmVuIGdpYnQ6Ck1pdCBkZXIgQXJ0LCB3aWUgRHUgSmltRGlHcml6IGtyaXRpc2llcnN0LCB1bnRlcnN0ZWxsc3QgRHUgaWhtIFN5bXBhdGhpZSBmdWVyCmRhcywgd29mdWVyIGRpZSBCb2Voc2VuIE9ua2VsdHogc3RlaGVuIG9kZXIgZ2VzdGFuZGVuIGhhYmVuLiBJY2ggZGFnZWdlbiBmaW5kZQplcyBkdXJjaGF1cyBkdW1tLCBXaXNzZW4gbWl0IFVlYmVyemV1Z3VuZy9TeW1wYXRoaWUgZ2xlaWNoenVzZXR6ZW4uIERhcyBtaXQKZGVtIGR1bW0gaGFiZSBpY2ggZ2VzYWd0IHVuZCBkYXMgbWl0IGRlbSBVbnRlcnNjaGllZCB6d2lzY2hlbiBXaXNzZW4gdW5kClRvbGVyYW56IGRhZHVyY2ggdmVyc3VjaHQgZGV1dGxpY2ggenUgbWFjaGVuLCBkYXNzIGljaCBkZW1vbnN0cmllcnQgaGFiZSwgZGFzcwppY2ggZGFzIEhvcnN0IFdlc3NlbHMgTGllZCBrZW5uZS4gV2VyIG1pY2ggZGFyYXVmaGluIGZ1ZXIgZWluZW4gTmF6aSBoYWVsdApkYXJmIGRhcyBnZXJuZSB0dW4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QgaGF0IGRhcyBIb3JzdCBXZXNzZWxzIExpZWQgc29nYXIgaW4gZGVyIFNjaHVsZSBnZWxlcm50LgpUaGVtYSAiUG9saXRpc2NoZXMgTGllZCIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNYWwgd2llZGVyIGVpbiBNdXNpa3F1aXogKEdyaW1tYm9ybiwgIDEuIEF1ZyAxOTk3LCAxNDoyNTo1OSk6Cn4jISBvbj1Lb2JheWFzaGkgb3Q9ODcwNDM2MzMyIG9nPXB1aXoKfiMhIHJuPUdyaW1tYm9ybiBydD04NzA0MzQ5NDIgcmc9cHVpegp+IyEgdGlkPTg2ODU2NzM0MQpEdSBzb2xsdGVzdCBEaXIgZ3V0IHVlYmVybGVnZW4sIG9iIGR1IGRhcyBIb3JzdC1XZXNzZWwtTGllZCB3aXJrbGljaCBpbiBkZXIKIm9lZmZlbnRsaWNoa2VpdCIgc2luZ2VuIHdpbGxzdCAuLi4gOi0oCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNYWwgd2llZGVyIGVpbiBNdXNpa3F1aXogKEdyaW1tYm9ybiwgIDEuIEF1ZyAxOTk3LCAxNDoyNjowMCk6Cn4jISBvbj1IZWx2YSBvdD04NzA0MzY0MTMgb2c9cHVpegp+IyEgcm49R3JpbW1ib3JuIHJ0PTg3MDQzNjAxMSByZz1wdWl6Cn4jISB0aWQ9ODY4NTY3MzQxCldlZGVyIGdyaW1tYm9ybiBub2NoIEppbURpR3JpeiB3ZXJkZW4gdm9uIG1pciBsYXMgbmF6aXMgYmV6ZWljaG5ldCBvZGVyIHNvCmFuZ2VzZWhlbi4gCkhlbHZhIChzY2hyZWlidCBhbnNjaGVpbmVuZCBhdWNoIHVudmVyc3RlaGJhcmUgYXJ0aWtlbCApIFVuZCBpc3QgZHVtbS4uLgpubgpuYWVjaHN0ZXMgVGhlbWEqKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTWFsIHdpZWRlciBlaW4gTXVzaWtxdWl6IChHcmltbWJvcm4sICAxLiBBdWcgMTk5NywgMTQ6MjY6MDEpOgp+IyEgb249R2xvaW4gb3Q9ODcwNDM2NTQwIG9nPXB1aXoKfiMhIHJuPUhlbHZhIHJ0PTg3MDQzNjQxMyByZz1wdWl6Cn4jISB0aWQ9ODY4NTY3MzQxCkRlbSBsZXR6dGVuIFNhdHoga2FubiBtYW4gYmVpcGZsaWNodGVuLiBJc3QgYWJlciBhdWNoIGVpbiBsdXN0aWdlciBUaHJlYWQuCgpHbG9pbiAuLi4gc2VuZnQgdW5kIGtlbm50IGRhcyBXZXNzZWwtTGllZCBudXIgYXVzIEJ1ZWNoZXJuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTWFsIHdpZWRlciBlaW4gTXVzaWtxdWl6IChHcmltbWJvcm4sICAxLiBBdWcgMTk5NywgMTQ6MjY6MDIpOgp+IyEgb249SGFyZGlsIG90PTg3MDQzNjgyMSBvZz1wdWl6Cn4jISBybj1HbG9pbiBydD04NzA0MzY1NDAgcmc9cHVpegp+IyEgdGlkPTg2ODU2NzM0MQoKSGVsdmEsIGRhIGdpYnRzIGRvY2ggbnVyIGVpbnM6ClN1Y2ggRGlyIGplbWFuZCwgZGVyIERpciBuZW4gTWFnaWVydmVydHJhZyB1bnRlcnNjaGllYnQsIGRlbiBEdSBnYXIgbmljaHQKdW50ZXJzY2hyaWViZW4gaGFzdCwgdW5kIGdlaCBkYW5uIGhpbiB1bmQgYWVuZGVyZSBiZWkgYWxsZW4gQXJ0aWtlbG4sIHdvIEwKTGV1dGUgc2ljaCB6dW0gdW5yZWZsZWt0aWVydGVuIEtvbnN1bSB2b24gTmF6aS1MaWVkZ3V0IChPbmtlbHogdW5kIGFuZGVyZXIKU2NoZWlzcykgYmVrZW5uZW4sIGRlbiBBdXRvciBpc3QgIkdhc3QxIi4KRGFubiBsb2VzY2h0IEdyaW1tYm9ybiBkZW4gQXJ0aWtlbCwgdW5kIER1IGhhc3QgRGVpbmUgUnVoZS4KCkhldXRlIG1pdCBlaW5lciBnYW56ZW4gVGFzY2hlIHZvbGwgZ3V0ZXIgVGlwczoKCi1IYXJkaWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNYWwgd2llZGVyIGVpbiBNdXNpa3F1aXogKEdyaW1tYm9ybiwgIDEuIEF1ZyAxOTk3LCAxNDoyNjowMyk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODcwNDM2ODM1IG9nPXB1aXoKfiMhIHJuPUtvYmF5YXNoaSBydD04NzA0MzYzMzIgcmc9cHVpegp+IyEgdGlkPTg2ODU2NzM0MQphKSBoYWIgaWNoIGRhbWl0IGtlaW5lIFByb2JsZW1lLCBpY2ggc2luZ2UsIHdhcywgd2Fubiwgd28gdW5kIHdpZSBpY2ggd2lsbC4KICAgVW5kIHNvIGZhbHNjaCB3aWUgaWNoIHdpbGwuCmIpIGlzdCBkYXMgSG9yc3QtV2Vzc2VsLUxpZWQgd29obCAidmVyYm90ZW4iLCBtYW4gYmV0cmVpYnQgZGFtaXQgYWxzbwogICBWb2xrc3ZlcmhldHp1bmcuIE11c3MgamVkZXIgc2VsYmVyIHdpc3Nlbi4KYykgaGFiIGljaCBkYXMgZHVyY2hhdXMgc2Nob24gaW4gZGVyIE9lZmZlbnRsaWNoa2VpdCBnZXN1bmdlbi4gWndpc2NoZW4gendlaSAKICAgU3Ryb3BoZW4gZGVyIEludGVybmF0aW9uYWxlbi4uLgpkKSBIaWVyIG5vY2ggZWluZW4gKGhhcm1sb3NlcmVuKSBoaW50ZXJoZXI6CiAgIERldXRzY2hsYW5kLCBEZXV0c2NobGFuZCB1ZWJlciBhbGxlcwogICBVZWJlciBhbGxlcyBpbiBkZXIgV2VsdAogICBXaWUgZXMgc3RldHMgenVtIFNjaHV0eiB1bmQgVHJ1dHplCiAgIEJydWVkZXJsaWNoIHp1c2FtbWVuaGFlbHQuCiAgIFZvbiBkZXIgTWFhcyBiaXMgYW4gZGllIE1lbWVsCiAgIFZvbiBkZXIgRXRzY2ggYmlzIGFuIGRlbiBCZWx0ICh3byBpc3QgZGEgZWlnZW50bGljaCBkaWUgb3N0ZHQuClNlZW5wbGF0dGU/KQogICBEZXV0c2NobGFuZCwgRGV1dHNjaGxhbmQgdWViZXIgYWxsZXMKICAgVWViZXIgYWxsZXMgaW4gZGVyIFdlbHQuCgpOb2NoIG1laHIgQXVmcmVndW5nPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNYWwgd2llZGVyIGVpbiBNdXNpa3F1aXogKEdyaW1tYm9ybiwgIDEuIEF1ZyAxOTk3LCAxNDoyNjowNCk6Cn4jISBvbj1IYXJkaWwgb3Q9ODcwNDM2OTIxIG9nPXB1aXoKfiMhIHJuPUdyaW1tYm9ybiBydD04NzA0MzY4MzUgcmc9cHVpegp+IyEgdGlkPTg2ODU2NzM0MQoKRGllIG9zdGRldXRzY2hlIFNlZW5wbGF0dGUgaGVpc3N0IGpldHp0IE9kZXJicnVjaC4KCi1IYXJkaWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBNYWwgd2llZGVyIGVpbiBNdXNpa3F1aXogKEdyaW1tYm9ybiwgIDEuIEF1ZyAxOTk3LCAxNDoyNjowNSk6Cn4jISBvbj1QYW1wZXJzIG90PTg3MDQzNzAyMCBvZz1wdWl6Cn4jISBybj1IYXJkaWwgcnQ9ODcwNDM2OTIxIHJnPXB1aXoKfiMhIHRpZD04Njg1NjczNDEKR2VzdGVybiB3YXIgdWVicmlnZW5zIGltIEZlcm5zZWhlbiBlaW4gU3BlbmRlbmF1ZnJ1ZiBmdWVyIHVuc2VyZSBhcm1lbiAKTmljaHRzY2h3aW1tZXIgaW0gT3N0ZW4uIEljaCBmcmFnZSBtaWNoIG51ciwgd2llIGljaCAxMCBMaXRlciBXYXNzZXIgYXVmIGVpbiAKS29udG8gdWViZXJ3ZWlzZW4gc29sbD8KClBhbXBlcnMuIEZhZWhydCBtb3JnZW4gTmFjaCBGcmFua2Z1cnQvRHVua2VsZGV1dHNjaGxhbmQgdW5kIHNjaGlmZnQgaW4gZGllCk9kZXIuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTWFsIHdpZWRlciBlaW4gTXVzaWtxdWl6IChHcmltbWJvcm4sICAxLiBBdWcgMTk5NywgMTQ6MjY6MDYpOgp+IyEgb249SGFyZGlsIG90PTg3MDQzNzE4NyBvZz1wdWl6Cn4jISBybj1QYW1wZXJzIHJ0PTg3MDQzNzAyMCByZz1wdWl6Cn4jISB0aWQ9ODY4NTY3MzQxCgpJY2ggZGVua2UsIGRpZSBzb2xsZW4gcnVoaWcgZWluIHdlbmlnIFdhc3NlciBhdWZoZWJlbiwgZGFtaXQgYXVjaCBpbgpXZXN0ZGV1c2NobGFuZCBkZW1uYWVjaHN0IHdpZWRlciBrbGVpbmVyZSBXYXNzZXJzcGllbGUgc3RhdHRmaW5kZW4ga29lbm5lbiwKei5CLiBkYXMgVmVyd2FuZGVsbiB2b24gS29lbG4gaW4gZWluZSBIYWxsaWcuIDopCgotSGFyZGlsLiBOTk4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBNYWwgd2llZGVyIGVpbiBNdXNpa3F1aXogKEdyaW1tYm9ybiwgIDEuIEF1ZyAxOTk3LCAxNDoyNjowNyk6Cn4jISBvbj1QYW1wZXJzIG90PTg3MDQzNzM0MCBvZz1wdWl6Cn4jISBybj1IYXJkaWwgcnQ9ODcwNDM3MTg3IHJnPXB1aXoKfiMhIHRpZD04Njg1NjczNDEKU2Nob2VuIGZhbmQgaWNoIGF1Y2ggZGVuIFZvcnNjaGxhZywgZWluZSBLYW1wZnNjaHdpbW1lcmVpbmhlaXQgYXVmIHBvbG5pc2NoZXIKU2VpdGUgZGllIERlaWNoZSBlaW5yZWlzc2VuIHp1IGxhc3Nlbi4gOi0pIERpZSBEZWljaGUgYXVmIGRlciBkdW5rZWxkZXV0c2NoZW4KU2VpdGUgd2FlcmVuIGRhbm4gc2ljaGVyLi4uIDstKQoKUGFtcGVycy4gSW1tZXIgZWluIGd1dGVyIFZvcnNjaGxhZyB6dXIgVm9lbGtlcnZlcnN0YWVuZGlndW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE1hbCB3aWVkZXIgZWluIE11c2lrcXVpeiAoR3JpbW1ib3JuLCAgMS4gQXVnIDE5OTcsIDE0OjI4OjM0KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NzA0MzgzNjcgcmc9c2NobWFycm4KfiMhIHRpZD04Njg1NjczNDEKU28sIHR1dCBtaXIgbGVpZCBmdWVyIGFsbGUsIGRpZSBkYXMgamV0enQgaGFiZW4gZG9wcGVsdCBsZXNlbiAibXVlc3NlbiIuCkFiZXIgaGllciBrYW5uIGljaCBtZWluZW4gbW9tZW50YW5lbiBMaWVibGluZ3NhbmdyaWZmIGF1ZiBkaWUgWm9uZSBhbmJyaW5nZW46Ck1pY2ggZXJpbm5lcnQgZGllIFNpdHVhdGlvbiBhbiBIZXJrdWxlcywgaWhyIHdpc3N0IHNjaG9uLCBkaWVzZSBBdWZnYWJlIG1pdApkZW4gU3RhZWxsZW4gZGVzIEF1Z2lhcy4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IGdpYnQgc2ljaCBodW1hbmlzdGlzY2ggZ2ViaWxkZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE1hbCB3aWVkZXIgZWluIE11c2lrcXVpeiAoTHVnLCAgMS4gQXVnIDE5OTcsIDE1OjQ0OjQ0KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NzA0MzgzNjUgcmc9c2NobWFycm4KfiMhIHRpZD04Njg1NjczNDEKU3BlbmRlbmF1ZnJ1Zj8KCk5lZSwgbnVyIHdlbm4gYW4gZGVyIEt1ZXN0ZSBkaWUgRGVpY2hlIGJyZWNoZW4uCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBSURTISEgSGF2ZSBXZSBCZWVuIE1pc2xlYWQ/PyAoWWFudHJvLCAgMS4gQXVnIDE5OTcsIDE3OjU0OjMxKToKfiMhIG9uPVBhbXBlcnMgb3Q9ODcwNDQ5MTkyIG9nPWFsbGdlbWVpbmVzCn4jISBybj1HYXJmaWVsZCBydD04NzA0NDg1NDYgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04NzA0NDg1NDYKTXVzcyBkaWUgTVBBIHVuYmVkaW5ndCBwb2xpdGlzY2hlcyBGb3J1bSBtaW5kZXN0ZW5zIHNlbHRzYW0genUgbmVuZW5kZXIKU3Ryb2VtdW5nZW4gc2Vpbj8KTXVzcyBqZWRlciwgZGVyIGlyZ2VuZHdlbGNoZW4gQmxvZWRzaW5uIGlyZ2VuZHdvIGdlZnVuZGVuIGhhdCwgZGllc2VuIGdsZWljaAplaW5lciBncm9lc3NlcmVuIE1lbmdlIG1pdHRlaWxlbj8KTXVzcyBtYW4gd2lya2xpY2ggaW1tZXIgYWxsZXMgc29mb3J0IGdsYXViZW4sIHdhcyBpcmdlbmRlaW4gYmVrbG9wcHRlciBzb25zdHdvCmJlaGF1cHRldD8KClBhbXBlcnMuIE11c3Mgc293YXMgbnVuIHdpcmtsaWNoIG5pY2h0IGxlc2VuLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBSURTISEgSGF2ZSBXZSBCZWVuIE1pc2xlYWQ/PyAoWWFudHJvLCAgMS4gQXVnIDE5OTcsIDE3OjU0OjMzKToKfiMhIG9uPUx1ZyBvdD04NzA0NTAzMDMgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUdhcmZpZWxkIHJ0PTg3MDQ0ODU0NiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg3MDQ0ODU0NgoKT3dlaWFoLAoKZ3Jhc2llcnQgZGVyIEJsb2Vkc2lubiBpbW1lciBub2NoPyBNYW5jaGUgTGV1dGUgZ2xhdWJlbiBhdWNoIGplZGVuIFNjaGVpc3MsCm11c3MgbnVyIGRvb2YgZ2VudWcgZGFoZXJrb21tZW4uCgpTdG9laG5lbmQKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBSURTISEgSGF2ZSBXZSBCZWVuIE1pc2xlYWQ/PyAoWWFudHJvLCAgMS4gQXVnIDE5OTcsIDE3OjU0OjM1KToKfiMhIG9uPUx1ZyBvdD04NzA0NTA3ODUgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUx1ZyBydD04NzA0NTA1NDcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04NzA0NDg1NDYKCkFjaGphLAoKZGFzIE1VRCB3dXJkZSBnZXN0ZXJuIHZvbiBBTElFTlMgbGFobWdlbGVndCEgT3JrdG9ldGVyIGlzdCBlaW4gc29sY2hlciBBTElFTiwKZGVyIG1lbnNjaGVuYWVobmxpY2hlIEdlc3RhbHQgYW5nZW5vbW1lbiBoYXQuIExhc3N0IEV1Y2ggbmljaHQgdGFldXNjaGVuIQoKRXJuc3RoYWZ0IHVtIHNpY2ggYmVzb3JndApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFJRFMgLSBEaWUgZ3Jvc3NlIEx1ZWdlISAoWWFudHJvLCAgMS4gQXVnIDE5OTcsIDE4OjEwOjI1KToKfiMhIG9uPUdhcmZpZWxkIG90PTg3MDQ1MTc2NyBvZz1hbGxnZW1laW5lcwoKKiBISVYgaXN0IG5pY2h0IGRpZSBVcnNhY2hlIGZ1ZXIgQUlEUyEKCiogQUlEUyB3aXJkIG5pY2h0IHNleHVlbGwgdWViZXJ0cmFnZW4hCgoqIEFJRFMtUGF0aWVudGVuIHN0ZXJiZW4gYW4gQVpUL1JldHJvdmlyLCBuaWNodCBhbiBBSURTIQoKSW5mbzoKQVpUL1JldHJvdmlyIGlzdCBlaW4gWkVMTEdJRlQsIGRhcyBhZXVzc2Vyc3QgYWdncmVzc2l2IGFsbGUgWmVsbGVuCnplcnN0b2VydC4gU2VpdCBlaW5pZ2VuIEphaHJlbiBpc3QgZXMgYWxzICJNZWRpa2FtZW50IiBnZWdlbiBBSURTCmV0YWJsaWVydC4gRGllcyBpc3QgZWluZXIgZGVyIGdyb2Vzc3RlbiB3aXNzZW5zY2hhZnRsaWNoZW4gU2thbmRhbGUsCmRpZSBkaWVzZXMgSmFocmh1bmRlcnQgenUgYmlldGVuIGhhdCEKCkdlbmF1ZSBJbmZvcyBmaW5kZXQgSWhyIGF1ZiBkZXIgU2VpdGUgdm9uICAKClByb2YuIERyLiBQZXRlciBILiBEdWVzYmVyZywKRGVwYXJ0bWVudCBvZiBNb2xlY3VsYXIgJiBDZWxsIEJpb2xvZ3kKVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhIEJlcmtlbGV5Cgp1bnRlciBodHRwOi8vd3d3LmR1ZXNiZXJnLmNvbSAgIGJ6dy4gaHR0cDovLzIwNy44OC4xNjMuMjAKClVuYmVkaW5ndCBsZXNlbiwgZGFzIGlzdCBiZXNzZXIgYWxzIGplZGVyIFNjaG9ja2VyIQpFcyBJU1QgZGVyIFNjaG9ja2VyIGRlcyBKYWhyaHVuZGVydHMhCgoiTmljaHQgZGFzIFZpcnVzLCBzb25kZXJuIGRpZSBEaWFnbm9zZSB0b2V0ZXQuIgoiTnVyIHRvdGUgRmlzY2hlIHNjaHdpbW1lbiBtaXQgZGVtIFN0cm9tIgogICAgICAgICAgICAgICAgICAgICAgIChFcmhhcmQgTmV1YmVydDogIkt1bnN0cHJvZHVrdCBBSURTIGluCiAgICAgICAgICAgICAgICAgIChFcmhhcmQgTmV1YmVydDogIkt1bnN0cHJvZHVrdCBBSURTIGluIFNjaHdpZXJpZ2tlaXRlbiIpCgpHcnVlc3NlIHZvbgpHYXJmaWVsZAoqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQUlEUyAtIERpZSBncm9zc2UgTHVlZ2UhIChBbWF6b3JhLCAgMS4gQXVnIDE5OTcsIDE4OjIwOjAzKToKfiMhIHJuPVlhbnRybyBydD04NzA0NTE4MjUgcmc9c2NobWFycm4KfiMhIHRpZD04NzA0NTE4MjUKQWhhIHVuZCB3aWUgd2lyZCBISVYgc29uc3QgdWViZXJ0cmFnZW4sIHdlbm4gRGljaCBkdXJjaCBHZXNjaGxlY2h0c3ZlcmtlaHIKb2RlciBCbHV0YXVzdGF1c2NoPwpPZGVyIGhhYiBpY2ggZGEgd2FzIGZhbHNjaCB2ZXJzdGFuZGVuPwpBbWF6b3JhIGhhdCB1ZWJlciBlaW4gSmFociBpbiBkZXIgQWlkc2hpbGZlIExpbnogbWl0Z2VhcmJlaXRldCB1bmQgZ2xhdWJ0IG51cgpub2NoIGRlciBBaWRzaGlsZmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFJRFMgLSBEaWUgZ3Jvc3NlIEx1ZWdlISAoV3VyemVsLCAgMS4gQXVnIDE5OTcsIDE5OjA2OjUwKToKfiMhIHJuPUFtYXpvcmEgcnQ9ODcwNDUyNDAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcwNDUxODI1CmVpbiB3ZW5pZyBlaW5mYWNoZXMgbmFjaGRlbmtlbiBoaWxmdCBzY2hvbi4KZWluIHByb2Zlc3NvciBhdXMgYmVya2VsZXkgaGF0IHR5cGlzY2hlcndlaXNlIHNlaW5lIHVybCBpcmdlbmR3byB1bnRlcgouLi5iZXJrZWxleS5lZHUgb2RlciBzbyBhZWhubGljaC4gd2VubiBkaWVzZXIgcHJvZiBkdWVzYmVyZyB1bnRlciBkZXIgdXJsCnd3dy5kdWVzYmVyZy5jb20gc2VpbmVuIHNjaGVpc3MgdmVyemFwZnQsIGthbm4gZWlnZW50bGljaCBudXIgZWlucyBkYWhpbnRlcgpzdGVoZW46IC5jb20gaGVpc3N0ICJjb21tZXJjaWFsIi4gd2FocnNjaGVpbmxpY2ggKGljaCBoYWJzIG1pciBuaWNodCAKYW5nZXNlaGVuKSBoYXQgZXIgaW0gbGF1ZmUgc2VpbmVyIGZvcnNjaHVuZ2VuIGVpbiB3ZXNlbnRsaWNoIGJlc3NlcmVzIG1pdHRlbApnZWdlbiBhaWRzIGdlZnVuZGVuIGFscyBhenQsIGRhcyBkaWUgcmVzdGxpY2hlIGZhY2h3ZWx0IGluIGlocmVyIGJvcm5pZXJ0aGVpdApuaWNodCBhbmVya2VubmVuIHdpbGwgdW5kIGRhcyBlciBkYWhlciBhdWYgZGllc2VyIHNlaW5lciBob21lcGFnZSAoZnVlciB2aWVsCmdlbGQgbmF0dWVybGljaCkgdmVyc2NoZXJiZWxuIG11c3MuLi4KCm51ciBlaW5lIHZlcm11dHVuZywga29lbm50ZSBhdWNoIGdhbnogYW5kZXJzIHNlaW4gKGdsYXViIGljaCBhYmVyIG5pY2h0KQoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFJRFMhISBIYXZlIFdlIEJlZW4gTWlzbGVhZD8/IChFc2N1YmFyLCAgMS4gQXVnIDE5OTcsIDIwOjMwOjQ2KToKfiMhIHJuPVlhbnRybyBydD04NzA0NTA4NzMgcmc9c2NobWFycm4KfiMhIHRpZD04NzA0NDg1NDYKSm91IHN0aW1tdCBMdWcsCgp3ZWlzc3QgRHUgbm9jaCB2b3IgSmFocmVuIGJlaSBkZXIgQnVuZGVzdGFnc3dhaGwgaW1tZXIgZGVyIG1pdCBzZWluZXIKZXNvdGVyaXNjaGVuIFBhcnRlaSBEZXV0c2NobGFuZHMsIG5lIHRvdGFsIHNjaGxlY2h0ZSBWaWRlb2F1Zm5haG1lIHVuZCB2b3IgaWhtCmVpbmUgUGZsYW56ZSBkaWUgaGF0IGVyIGRhbm4gaW1tZXIgZ2VzdHJlaWNoZWx0IHVuZCBnZW1laW50LCBnZW5hdSBkYXMgaXN0IGRhcwpBbGxoZWlsbWl0dGVsIGdlZ2VuIEtyZWJzIHVuZCBkZXIgYm9lc2UsIGJvZXNlIGluZHVzdHJpZWxsZS1wb2xpdGlzY2hlIEtvbXBsZXgKd2lsbCB1bnMgZGllIHZvcmVudGhhbHRlbiEKCkRpZSBzcGlubmVuIGRpZSBSb2VtZXIsCgpFaXNiYWVyIEVzY3ViYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFJRFMhISBIYXZlIFdlIEJlZW4gTWlzbGVhZD8/IChSYWZmaSwgIDEuIEF1ZyAxOTk3LCAyMToyMjo0MSk6Cn4jISBybj1ZYW50cm8gcnQ9ODcwNDUwODc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcwNDQ4NTQ2CkFsbGVzIFNjaG1hcnJuIC4uLiB3ZW5uIHNjaG9uIGRhbm4gbXVzc3QgZHUgUm9zZW5xdWFyeiBhdWYgZGllIHRhc3RhdHVyIHVuZApkZW4gbW9uaXRvciBsZWdlbiAtPiBkYXMgaGlsZnQgZWNodCBnZWdlbiBFbGVrdHJvc21vZy4KCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBSURTIC0gRGllIGdyb3NzZSBMdWVnZSEgKFJhZmZpLCAgMS4gQXVnIDE5OTcsIDIxOjIzOjU0KToKfiMhIHJuPVd1cnplbCBydD04NzA0NTUyMTAgcmc9c2NobWFycm4KfiMhIHRpZD04NzA0NTE4MjUKRGllIGlzdCBqYSBzY2hvbiB3aWVkZXIgcmljaHRpZyBFcm5zdGhhZnQgLi4uLiBzY2hhdHplIGRhcyB3YXJzIQpKZXR6dCBoYXQgZXIgZGljaC4KCkdydXNzCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTWFsIHdpZWRlciBlaW4gTXVzaWtxdWl6IChSYWZmaSwgIDEuIEF1ZyAxOTk3LCAyMToyNToyNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODcwNDM4MzY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY4NTY3MzQxClVuZCB3ZXIgYmVzZWl0aWd0IGRhbm4gZGVuIERyZWNrID8KCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFuYXRvbCwgIDIuIEF1ZyAxOTk3LCAwMzoyMTowMCk6CgpOYWNoZGVtIFR1YXJlZyBhbiBlaW5lbSBPcmsgdmVyZW5kZXRlLi4uCltCZWlsZWlkOlR1YXJlZ10gUkFDSEUgSVNUIE1FSU4hID07KQood2VuaWcgc3BhZXRlcikKW1RvZDpMYXJzXSBFaW4gT3JrIGhhdCBnZXJhZGUgVHVhcmVnIHVtZ2VicmFjaHQuCgpEYXMgd2lyZCBub2NoIGVpbiBoZWl0ZXJlciBBYmVuZCA6KQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE51ciBmdWVyIEFzbW9kaXMgOikgKEFuYXRvbCwgIDIuIEF1ZyAxOTk3LCAwNDoxODowMCk6Cn4jISBybj1HYXN0MyBydD04NzA0ODY2NDggcmc9c2NobWFycm4KfiMhIHRpZD04NzA0ODY2NDgKSG0sIGFscyBpY2ggZWJlbiBtaXQgMjAgR2Flc3RlbiBfZ2xlaWNoemVpdGlnXyBqZXdlaWxzIGVpbmVuIEFydGlrZWwgcG9zdGV0ZSwKc3RlbGx0ZSBpY2ggZmVzdCwgZGFzcyBkaWUgamV3ZWlscyB1bSBlaW5lIFNla3VuZGUgdmVyc2V0enQgZ2Vwb3N0ZXQgd3VyZGVuLgpJY2ggZ2xhdWJlLCBkYSBpc3QgYW4gZGllc2VyIFN0ZWxsZSBlaW4gRGFua2VzY2hvZW4gYW4gTG9jbyBmYWVsbGlnLCBqZXR6dAprYW5uIG1hbiBuaWNodCBtZWhyIGR1cmNoIGVpbmVuIFp1ZmFsbCBlaW5lbiBBcnRpa2VsIHVlYmVyc2VoZW4gOikKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyAoQXNtb2RpcywgIDIuIEF1ZyAxOTk3LCAwNDozNzo0MSk6CmZ1ZXIga2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmbHcgKFppbm8sICAyLiBBdWcgMTk5NywgMTg6MDE6NDkpOgpNZWluIENoZWYgc3RhcmIgZ3JhZCBhbiBkZW4gUmF0dGVuLCBtaXR0ZW4gaW4gZGVyIFRvZGVzc2VxdWVuejoKWmFwaG9iaWxpIHRlaWx0IERpciBtaXQ6IGhoaG1tcGYgOikgZWluZSBSQVRURSEhIQoKV2VuaWcgc3BhZXRlcjoKW1RvZDpMYXJzXSBFaW4gTWV1Y2hlbG1vZXJkZXIgaGF0IGdlcmFkZSBaYXBob2IgdW1nZWJyYWNodC4KCkRhcyBrb21tdCBkYXZvbiwgd2VubiBtYW4gYmVpbSBXYWNoZXNjaGllYmVuIG1pdCBad2VpdGlzIHNwaWVsdCA7KQpNYWhhdG1hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBSURTISEgSGF2ZSBXZSBCZWVuIE1pc2xlYWQ/PyAoTGksICA0LiBBdWcgMTk5NywgMDc6NDU6MTUpOgp+IyEgcm49UmFmZmkgcnQ9ODcwNDYzMzYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcwNDQ4NTQ2Ck5laW5uZWluIQpJY2ggaGFiZSBtYWwgZWluIGJ1Y2ggdWViZXIgRmFyYmVuaGVpbHVuZyBpbiBkaWUgZmluZ2VyIGJla29tbWVuOgpEYSByb3NhIGFscyBGYXJiZSBndXQgZ2VnZW4gRWxla3Ryb3Ntb2cgaGlsZnQgKGluIGRlbSBCdWNoISA6LSkgKQpXdWVyZGUgZXMgcmVpY2hlbiwgZGVuIGJpbGRzY2hpcm1oaW50ZXJncnVuZCByb3NhIHp1IHdhZWhsZW4uLi4KbXVzcyBtYW4gZGF6dSBub2NoIHdhcyBzYWdlbj8KTGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFJRFMhISBIYXZlIFdlIEJlZW4gTWlzbGVhZD8/IChLZXksICA0LiBBdWcgMTk5NywgMDg6MjU6MjkpOgp+IyEgcm49TGkgcnQ9ODcwNjczNTE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcwNDQ4NTQ2CkhtbSBqYSAuLi4gZWluZSBGcmFnZSAuLi4gd2FzIGZ1ZXIgbmUgVm9yZGVyZ3J1bmRmYXJiZSBwYXNzdCBhdWYgbmVuIHJvc2EKSGludGVyZ3J1bmQ/Pz8gOikKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQUlEUyEhIEhhdmUgV2UgQmVlbiBNaXNsZWFkPz8gKFNpbHZhbmEsICA0LiBBdWcgMTk5NywgMDg6MjY6NDUpOgp+IyEgcm49S2V5IHJ0PTg3MDY3NTkyOSByZz1zY2htYXJybgp+IyEgdGlkPTg3MDQ0ODU0NgpLZWluZSBBaG51bmcsIGFiZXIgaWNoIHd1ZXJkIG5lIFNvbm5lbmJyaWxsZSBicmF1Y2hlbiwgd2VubiBpY2ggZGFzIGhpZXIKcHJvYmllcmVuIHdvbGx0ZS4gOikKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBSURTISEgSGF2ZSBXZSBCZWVuIE1pc2xlYWQ/PyAoS2V5LCAgNC4gQXVnIDE5OTcsIDA4OjI4OjUyKToKfiMhIHJuPVNpbHZhbmEgcnQ9ODcwNjc2MDA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcwNDQ4NTQ2CkhtbSBpY2ggZ2xhdWJlIGljaCBwcm9iaWVyZSBlcyBtYWwgbWl0IEhpbW1lbGJsYXUgLi4uIDopClVuZCBhbHMgZmFyYmUgZGVyIGViZW5lbiBrb2VubnRlIGhlbGxncnVlbiBwYXNzZW4gKmdydWViZWwqCgpLZXkgc3BpZWx0IGRlbiBGYXJiZXhwZXJ0ZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClR1YXJlZyBzYWd0OiB6YXViZXJlciAuLi4uIDopIChaZXBoeXIsICA0LiBBdWcgMTk5NywgMTM6NDE6NTQpOgpPay4KICBEdSB0cmlmZnN0IFR1YXJlZyBoYXJ0LgogIER1IGdyZWlmc3QgVHVhcmVnIG1pdCBkZW0gVm9sbHN0cmVja2VyIGFuLgogIER1IHNjaGxhZWdzdCBUdWFyZWcgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KICBUdWFyZWcgZ3JlaWZ0IERpY2ggbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4KICBUdWFyZWcgdmVyZmVobHQgRGljaC4KPiBEdSByYW1tc3QgVHVhcmVnIGRhcyBLbmllIGluIGRlbiBLb2VycGVyLgogIER1IHplcnNjaG1ldHRlcnN0IFR1YXJlZyBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KPiBEdSB2ZXJzZXR6dCBUdWFyZWcgZWluZW4gaGVpbXR1ZWNraXNjaGVuIEthbXBmdHJpdHQuCiAgRHUgc2NobGFlZ3N0IFR1YXJlZyBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgo+IFR1YXJlZyBzcHJpY2h0IGVpbiBwYWFyIGJlcnVoaWdlbmRlIFdvcnRlLgpUdWFyZWcgc3RpZnRldCBGcmllZGVuLgpQYWx0dW0gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc3RlaHN0IGluIGRlciBIdWV0dGUgdW5kIGVya2VubnN0IHNvZm9ydCwgZGFzcyBlcyBzaWNoIHVtIGVpbmUgYmVzb25kZXJlCkh1ZXR0ZSBoYW5kZWxuIG11c3MuIERpZSBXYWVuZGUgc2VoZW4gc3RhZXJrZXIgYXVzIGFscyBkaWUgZGVyIGFuZGVyZW4KSHVldHRlbiwgdW5kIGxlaWNodCBnZWRhZW1wZnRlcyBMaWNodCBrb21tdCB6dSBkZW4gdmVyZGVja3RlbiBGZW5zdGVybiBoZXJlaW4uCkR1IHNpZWhzdCBpbiBkZXIgTWl0dGUgZGVzIFJhdW1lcyBlaW5lIFZpdHJpbmUuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBub3JkZW4uCkRpZSB2ZXJmYXVsdGVuIEVpbnplbHRlaWxlIHZvbiBQYWx0dW0uCkVpbiBLbm9jaGVucGFuemVyLgpFaW4gS25vY2hlbnNjaHdlcnQuCltQbHV0b25pdW06XSBUdWFyZWcuCltQbHV0b25pdW06XSBUdWFyZWcuCkVpbmUgVml0cmluZS4KUGFsdHVtIHNhZ3Q6IHVwcwoKWmVwaHlyLCB1ZWJlciBkYXMgdGltaW5nIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNYWwgd2llZGVyIGVpbiBNdXNpa3F1aXogKFJvY2h1cywgIDQuIEF1ZyAxOTk3LCAxNDo1NzoyOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODcwNDM4MzU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODY4NTY3MzQxCkRhcyBoZWlzc3QgIkhvcnN0IFdlc3NlbCBMaWVkIiwgbmljaHQgIkhvcnN0IFdlc3NlbHMgTGllZCIKCiAgUm9jaHVzIFdlc3NlbHMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IG1hbCB3aWVkZXIgZWluIGdlZGljaHQgKEdyaW1tYm9ybiwgIDQuIEF1ZyAxOTk3LCAxNjoxMToxNyk6Cn4jISBvbj1GeXQgb3Q9ODcwNjkzMDQyIG9nPWt1bHR1cgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg2OTQ3MjE3MiByZz1rdWx0dXIKfiMhIHRpZD04NjkyMjc4MjIKCkdyaW1tYm9ybiwgdmVybGVnIGRvY2ggbWFsIGRlbiBsZXR6dGVuIEFydGlrZWwgbmFjaCBTY2htYXJybi4uLgoKR3JpbW1ib3JuIHVuZCBmdWVobHQgc2ljaCBuaWNodCBrb21wZXRlbnQgZ2VudWcuLi4gd28gZ2VyYXRlbiB3aXIgbnVyIGhpbj8KCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJlcmF0dW5nc21haWwgKEdyaW1tYm9ybiwgIDQuIEF1ZyAxOTk3LCAxODowOTozNCk6CkltbWVyIGRpZXNlIFdpZGVyc3BydWVjaGUgaW4gSGlsZmVtYWlscyBhbiBkaWUgQmVyYXR1bmc6CmljaCBoYWJlIGVpbmUgRnJhZ2UsIHVuZCB6d2FyIGhhYmUgYXJiZWl0ZSBpY2ggbWl0IFdpbmRvd3MgOTUuCgpJY2ggaGFiZSBhdWNoIGVpbmUgRnJhZ2U6IFdpbjk1IG9kZXIgYXJiZWl0ZW4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCZXJhdHVuZ3NtYWlsIChSb2NodXMsICA0LiBBdWcgMTk5NywgMTg6MTE6MzQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg3MDcxMDk3NCByZz1zY2htYXJybgp+IyEgdGlkPTg3MDcxMDk3NAoiSWNoIGFyYmVpdGUgbWl0IFdpbmRvd3MgOTUuIEljaCBoYWIgZGEgZWluIFByb2JsZW0uLi4iCiAtICJEYXMgc2FndGVuIFNpZSBiZXJlaXRzLiIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCZXJhdHVuZ3NtYWlsIChMb2NvLCAgNC4gQXVnIDE5OTcsIDE4OjEzOjQxKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NzA3MTA5NzQgcmc9c2NobWFycm4KfiMhIHRpZD04NzA3MTA5NzQKSG1tLi4uIGFsc28gaWNoIGhhZXR0ZSBnZWRhY2h0LCBkYXMgd2FyIGVpbmZhY2ggZWluIFZlcnRpcHBlci4gRGFzIGhhZXR0ZQpoZWlzc2VuIHNvbGxlbjoKSWNoIGhhYmUgZWluZSBGcmFnZSwgd2FydW0gYXJiZWl0ZSBpY2ggbWl0IFdpbmRvd3MgOTUuCgpEaWVzZSBGcmFnZSBpc3QgYWxsZXJkaW5ncyBuaWNodCBzbyBsZWljaHQgenUgYmVhbnR3b3J0ZW4uIEFiZXIgRmVobGVyIGthbm4KamVkZXIgbWFsIG1hY2hlbi4KCi0gTG9jbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE1hbCB3aWVkZXIgZWluIE11c2lrcXVpeiAoRnl0LCAgNC4gQXVnIDE5OTcsIDE4OjQ2OjE1KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NzA0MzgzNjcgcmc9c2NobWFycm4KfiMhIHRpZD04Njg1NjczNDEKCkFsc28gZGFzIEhvY2h3YXNzZXIgYW4gZGVyIE9kZXIgaGF0ICpmdWVyIERldXRzY2hsYW5kKiBhdWNoIHdhcyBndXRlcy4KRW5kbGljaCBrYW5uIGRpZSBCdW5kZXN3ZWhyIG1hbCB6ZWlnZW4sIHdhcyBzaWUgZHJhdWYgaGF0LCB1bmQgendhciBpbQpPc3Rlbi4KCkZ5dC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTWFsIHdpZWRlciBlaW4gTXVzaWtxdWl6IChQYW1wZXJzLCAgNC4gQXVnIDE5OTcsIDE4OjQ4OjI3KToKfiMhIHJuPUZ5dCBydD04NzA3MTMxNzUgcmc9c2NobWFycm4KfiMhIHRpZD04Njg1NjczNDEKQmVzc2VyIG5vY2g6IGFuIGRlciBwb2xuaXNjaGVuIEdyZW56ZS4KS3Vuc3RzdHVlY2ssIGRhIGhhdCBzaWUgamEgYXVjaCBkaWUgbWVpc3RlIEVyZmFocnVuZy4KClBhbXBlcnMuIEdlc2NoaWNodGxpY2ggYmV3YW5kZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYW5ha2ludXMgcGhpbG9zb3BoaWN1cyAoV29vZHksICA0LiBBdWcgMTk5NywgMTk6MjI6MjYpOgpBbmFraW4gcGhpbG9zb3BoaWVydC4KRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEFJRFMhISBIYXZlIFdlIEJlZW4gTWlzbGVhZD8/IChSYWZmaSwgIDQuIEF1ZyAxOTk3LCAxOTo0NzoxNCk6Cn4jISBybj1LZXkgcnQ9ODcwNjc2MTMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcwNDQ4NTQ2ClNjaG1hcnJuIC0gTmF0dWVybGljaCBtdXNzIGRpZSBWb3JkZXJncnVuZGZhcmJlIEFVQ0ggcm9zYSBzZWluIC0gYW5zb25uc3Rlbgprb21tdCBkZXIgRWxla3Ryb3Ntb2cgZG9jaCB3aWVkZXIgZHVyY2ggZGVpbmUgSGltbWVsYmxhdWVuIEJ1Y2hzdGFiZW4genUgZGlyLgoKR3J1c3MKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZ2VzY2huaXR0ZW4gKEhhcmRpbCwgIDUuIEF1ZyAxOTk3LCAxMjowMDo0NCk6CgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDE4MSBNYWdpZXB1bmt0ZS4KR3JpbW1ib3JuICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkVzIGlzdCAxMiBVaHIsIHVuZCBlaW4gR3JpbW1iYWVyIHF1ZW5nZWx0IGhlcnVtLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDE4MiBNYWdpZXB1bmt0ZS4KCkFsc28gd2VubiBkYXMgbmljaHQgcGVyZmVrdCBpc3QsIHdhcyBkYW5uPwoKLUhhcmRpbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgIDUuIEF1ZyAxOTk3LCAxMjoxOToyMCk6CiJNYWNoIERpciBrZWluZSBTb3JnZW4gZGFydWViZXIsIHdhcyBhbmRlcmUgdWViZXIgRGljaCBkZW5rZW4sIGRlbm4gZGFzIG1hY2hlbgpzaWUgamEgZWggc28gc2VsdGVuLiIgKEFub255bXVzKQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gUGFrZXQgYnJhdWNodCBkcmluZ2VuZCBlaW5lbiBBcnp0LiAoQ3JvbGxhLCAgNS4gQXVnIDE5OTcsIDE1OjE4OjMwKToKayBwYWtldApEdSBrb256ZW50cmllcnN0IERpY2ggamV0enQgYXVmIGVpbiBQYWtldC4KPiBFaW4gUGFrZXQgaXN0IGFic29sdXQgZml0LgpEdSBoYXN0IDE3MCBMZWJlbnNwdW5rdGUgdW5kIDEwMiAoLTE1KSBNYWdpZXB1bmt0ZS4KICBEdSBncmVpZnN0IGRlbiBOYXNob3Judm9nZWwgbWl0IGVpbmVtIHNlaHIgZ2VsdW5nZW5lbiBTb3RvLXNodXRvLXVjaGkgYW4uCiAgRHUgemVyc2NobWV0dGVyc3QgZGVuIE5hc2hvcm52b2dlbCBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KRGVyIE5hc2hvcm52b2dlbCBmYWVsbHQgdG90IHp1IEJvZGVuLgogIERlciBOYXNob3Judm9nZWwgZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbSBzcGl0emVuIFNjaG5hYmVsIGFuLgogIER1IHdlaHJzdCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gSGFpd2FuLW5hZ2FzaGktdWtlIGFiLgpEdSBoYXN0IDE3MCBMZWJlbnNwdW5rdGUgdW5kIDEwMSAoLTEpIE1hZ2llcHVua3RlLgogIERlciBOYXNob3Judm9nZWwgdmVyZmVobHQgRGljaC4KICBEZXIgTmFzaG9ybnZvZ2VsIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gc3BpdHplbiBTY2huYWJlbCBhbi4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIEdhaXdhbi1uYWdhc2hpLXVrZSBhYi4KRHUgaGFzdCAxNzAgTGViZW5zcHVua3RlIHVuZCAxMDAgKC0xKSBNYWdpZXB1bmt0ZS4KICBEZXIgTmFzaG9ybnZvZ2VsIHZlcmZlaGx0IERpY2guCkVpbiBQYWtldCBpc3QgYWJzb2x1dCBmaXQuCkR1IGhhc3QgMTcwIExlYmVuc3B1bmt0ZSB1bmQgODcgKC0xMykgTWFnaWVwdW5rdGUuCiAgRHUgZ3JlaWZzdCBkZW4gTmFzaG9ybnZvZ2VsIG1pdCBlaW5lbSBzZWhyIGdlbHVuZ2VuZW4gU290by1zaHV0by11Y2hpIGFuLgogIER1IHplcnNjaG1ldHRlcnN0IGRlbiBOYXNob3Judm9nZWwgaW4ga2xlaW5lIFN0dWVja2NoZW4uCkRlciBOYXNob3Judm9nZWwgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KICBEZXIgTmFzaG9ybnZvZ2VsIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gc3BpdHplbiBTY2huYWJlbCBhbi4KICBEZXIgTmFzaG9ybnZvZ2VsIHZlcmZlaGx0IERpY2guCkR1IGhhc3QgMTcwIExlYmVuc3B1bmt0ZSB1bmQgODggTWFnaWVwdW5rdGUuCiAgRGVyIE5hc2hvcm52b2dlbCBncmVpZnQgRGljaCBtaXQgc2VpbmVtIHNwaXR6ZW4gU2NobmFiZWwgYW4uCiAgRHUgd2VocnN0IGRlbiBBbmdyaWZmIG1pdCBlaW5lbSBTaHV0by1qdWppLXVrZSBhYi4KRHUgaGFzdCAxNzAgTGViZW5zcHVua3RlIHVuZCA4NyAoLTEpIE1hZ2llcHVua3RlLgogIERlciBOYXNob3Judm9nZWwgdmVyZmVobHQgRGljaC4KRWluIFBha2V0IGlzdCBhYnNvbHV0IGZpdC4KRHUgaGFzdCAxNzAgTGViZW5zcHVua3RlIHVuZCA4MyAoLTQpIE1hZ2llcHVua3RlLgogIER1IGdyZWlmc3QgZGVuIE5hc2hvcm52b2dlbCBtaXQgZWluZW0gZ2VsdW5nZW5lbiBTb3RvLXNodXRvLXVjaGkgYW4uCiAgRHUgc2NobGFlZ3N0IGRlbiBOYXNob3Judm9nZWwgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KICBEZXIgTmFzaG9ybnZvZ2VsIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gc3BpdHplbiBTY2huYWJlbCBhbi4KICBEZXIgTmFzaG9ybnZvZ2VsIHZlcmZlaGx0IERpY2guCkVpbiBQYWtldCBpc3QgYWJzb2x1dCBmaXQuCkR1IGhhc3QgMTcwIExlYmVuc3B1bmt0ZSB1bmQgNzEgKC0xMikgTWFnaWVwdW5rdGUuCiAgRHUgZ3JlaWZzdCBkZW4gTmFzaG9ybnZvZ2VsIG1pdCBlaW5lbSBzZWhyIGdlbHVuZ2VuZW4gU290by1zaHV0by11Y2hpIGFuLgogIER1IHplcnNjaG1ldHRlcnN0IGRlbiBOYXNob3Judm9nZWwgaW4ga2xlaW5lIFN0dWVja2NoZW4uCkRlciBOYXNob3Judm9nZWwgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTaGVyaWZmIGluY29nbml0byAoQWxldGUsICA1LiBBdWcgMTk5NywgMTU6NDU6NTcpOgpFYmVuIGltIEVsZmVuZG9yZjoKCktldHR3aWVzbCBiZXRyaXR0IGRpZXNlIFdlbHQuCktldHR3aWVzbCBnZWh0IG5hY2ggV2VzdGVuLgoKClNjaGxlY2h0ZSBUYXJudW5nLCBmaW5kIGljaCEKQS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1dG9tYXQgaW4gZGVyIFd1ZXN0ZT8gOy0pIChBbmF0b2wsICA2LiBBdWcgMTk5NywgMTg6Mzc6MzcpOgo+IGZpIHJpbmdvcgpSaW5nb3IgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IERldXRzY2hsYW5kLgpQYXNzaXYgc2VpdDogMDM6MDM6MTkKLi4uCnouWi4gYWJ3ZXNlbmQsIEdydW5kICA6IGNvbGEgaG9sZW4KLi4uCgpPaywgLi4uIHVuZCB3bz8gOikKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWml0dGVybiBnYW56IHBlcnNvZW5saWNoIChBY3JpbW9uLCAgNi4gQXVnIDE5OTcsIDIxOjAzOjIzKToKRGVpbiBGcmV1bmQgQWxhbm9uIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCjotKQoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWml0dGVybiBnYW56IHBlcnNvZW5saWNoIChBbmF0b2wsICA2LiBBdWcgMTk5NywgMjE6MDQ6NDMpOgp+IyEgcm49QWNyaW1vbiBydD04NzA4OTQyMDMgcmc9c2NobWFycm4KfiMhIHRpZD04NzA4OTQyMDMKVW5kIGZ1ZXIgUGFtcGVyczogRGlyZWt0IG5hY2ggZGVtICJma251ZGRsZSIgZm9sZ3RlIGRhcyBiZXJ1ZWhtdGUgWml0dGVybi4KCkFuYXRvbCwgbWVpbnQgZXMgZ3V0IG1pdCBQYW1wZXJzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXMgKFJvY2h1cywgIDcuIEF1ZyAxOTk3LCAxNjoyODoyNSk6CltBbGxnZW1laW46S2V5XSBzY2hyZWlidCBtYWwgd2FzIGluIGRpZSB6ZWl0dW5nIC4uLgp3YXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3YXMgKEtleSwgIDcuIEF1ZyAxOTk3LCAxNjoyOTo0NCk6Cn4jISBybj1Sb2NodXMgcnQ9ODcwOTY0MTA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcwOTY0MTA1CldhcyBkZW5uPyA6KQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmVpbSBBcnp0IChHcmltbWJvcm4sICA3LiBBdWcgMTk5NywgMTY6NDA6MTIpOgp+IyEgb249SGFyIG90PTg3MDg2Njc3NyBvZz13aXR6ZQp+IyEgcm49QWxldGUgcnQ9ODcwNzg1NDU4IHJnPXdpdHplCn4jISB0aWQ9ODcwNzg1NDU4Clp3ZWkgRnJhZ2VuOgphKSBXZXIgZ2VodCB6d2Vja3MgIkNvbWluZyBPdXQiIHp1bSBBcnp0PwpiKSBXYXMgaXN0IGRhcmFuIHNjaGxlY2h0LCBzY2h3dWwgenUgc2VpbiA/CgpIYXIgKGh1bW9ybG9zKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCZWltIEFyenQgKEdyaW1tYm9ybiwgIDcuIEF1ZyAxOTk3LCAxNjo0MDoxMyk6Cn4jISBvbj1RdWFzaW1vZG8gb3Q9ODcwODc3Mzc4IG9nPXdpdHplCn4jISBybj1IYXIgcnQ9ODcwODY2Nzc3IHJnPXdpdHplCn4jISB0aWQ9ODcwNzg1NDU4Cnp1IGIpIFNjaHd1bGUgbmVobWVuIGVpbmVtIG51ciBEaXIgTWFlbm5lciB3ZWcuCgpRdWFzaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCZWltIEFyenQgKEdyaW1tYm9ybiwgIDcuIEF1ZyAxOTk3LCAxNjo0MDoxNCk6Cn4jISBvbj1SYWZmaSBvdD04NzA5NTA5OTkgb2c9d2l0emUKfiMhIHJuPUhhciBydD04NzA4NjY3Nzcgcmc9d2l0emUKfiMhIHRpZD04NzA3ODU0NTgKYSkgaG1tIHNjaGFldHplIGRhcyBpc3QgZWluIGlkaXZpZHVlbGxlcyBQcm9ibGVtCmIuMSkgV2FzIGlzdCBzY2hsZWNodCBkYXJhbiBCbG9uZCB6dSBzZWluID8KYi4yKSBJY2ggZmluZCBTY2h3dWxlIGd1dCAtIGplZGVyIFNjd3VsZSBpc3QgZWluIEtvbmt1cmVudCB3ZW5pZ2VyLgoKR3J1c3MKSC4KKExhY2h0IGdhbnogZXJuc3RoYWZ0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV28gZXIgcmVjaHQgaGF0LCBoYXQgZXIgcmVjaHQgKFppbm8sICA3LiBBdWcgMTk5NywgMTY6NTE6MzkpOgpCZWltIFZlcnN1Y2gsIGJlaSBkZW4gUmF0dGVuIEVuZGUgenUgbWFjaGVuOgoKSmEgc3RpbW10Li4uRGVpbiBFbmRlIGlzdCBuYWhlLi4uc2VociBuYWhlIQpMUCAzMiAgIE1QIDE4NApEaWUgUmF0dGUga3JhdHp0IERpY2ggbWl0IHNwaXR6ZW4gWmFlaG5lbi4KTFAgMjkgKC0zKSAgTVAgMTg0CkRpZSBSYXR0ZSB0cmlmZnQgRGljaCBoYXJ0IG1pdCBzcGl0emVuIFphZWhuZW4uCkxQIDE5ICgtMTApICBNUCAxODQKRGllIFJhdHRlIGtpdHplbHQgRGljaCBtaXQgc3BpdHplbiBaYWVobmVuLgpMUCAxOCAoLTEpICBNUCAxODQKRGllIFJhdHRlIHRyaWZmdCBEaWNoIHNlaHIgaGFydCBtaXQgc3BpdHplbiBaYWVobmVuLgpMUCAyICgtMTYpICBNUCAxODQKRGllIFJhdHRlIHRyaWZmdCBEaWNoIHNlaHIgaGFydCBtaXQgc3BpdHplbiBaYWVobmVuLgpbVG9kOkxhcnNdIEVpbmUgUmF0dGUgaGF0IGdlcmFkZSBNYWhhdG1hIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBSYXR0ZV0gRGFzIHdhciB3b2hsIGVpbm1hbCBuaWNodHM/IQoKWmlubyAodHJhdWVydCB1bSBkZW4gQ2hlZikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklzdCBTY2hhbGwgc28gbGFuZ3NhbT8gKEV6bywgIDkuIEF1ZyAxOTk3LCAxNjo0NToyMik6CkluIGRlciBPcmtraXJjaGUuIApFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogd2VzdGVuLiAKRWluIE9ya3ByaWVzdGVyLiAKRGVyIE9ya3ByaWVzdGVyIGdyZWlmdCBEaWNoIG1pdCBzZWluZW4gR2ViZXRlbiBhbi4gCkRlciBPcmtwcmllc3RlciB0cmlmZnQgRGljaC4gCkR1IGhhc3QgamV0enQgMTk3IExlYmVuc3B1bmt0ZSB1bmQgMTE2IE1hZ2llcHVua3RlLiAKPiBEdSBtYWNoc3QgZWluZW4gV2FmZmVudHJpY2sgZ2VnZW4gZGVuIE9ya3ByaWVzdGVyLiAKRHUgaGFzdCBqZXR6dCAxOTcgTGViZW5zcHVua3RlIHVuZCAxMDUgTWFnaWVwdW5rdGUuIAo+IER1IHNldHp0IGVpbmVuIG1vZXJkZXJpc2NoZW4gVG9kZXNzdG9zcyBnZWdlbiBkZW4gT3JrcHJpZXN0ZXIgYW4uIApEdSBwdWx2ZXJpc2llcnN0IGRlbiBPcmtwcmllc3Rlci4gCkRlciBPcmtwcmllc3RlciBmYWVsbHQgdG90IHp1IEJvZGVuLiAKRHUgaGFzdCBqZXR6dCAxOTcgTGViZW5zcHVua3RlIHVuZCA4MCBNYWdpZXB1bmt0ZS4gCj4gRGVyIFByaWVzdGVyIHNhZ3Q6IEhhbGxvLCBFem8uCgogIEV6bywgZGVyIHNlaW5lIEdlZ25lciBzY2huZWxsZXIgdG9ldGV0LCBhbHMgc2llIGlobiBiZWdydWVzc2VuIGtvZW5uZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcGllbGVyIC4uLiAoQXNtb2RpcywgMTAuIEF1ZyAxOTk3LCAwOTowNTo1MCk6CltBbGxnZW1laW46VGFyYWdvbl0gbm9jaCBlaW5lciBkYSwgZGVyIHNpY2ggZ3V0IG1pdCB0ZiBhdXNrZW5udCA/CltBbGxnZW1laW46VGFyYWdvbl0gd2VubiBqYSBiaXR0ZSBtaXQgInRlaWxlIG1pdCIgYW50d29ydGVuLCB3ZWlsIGljaCBiaW4gdGF1YgpbQWxsZ2VtZWluOlRhcmFnb25dIDstKQpbQWxsZ2VtZWluOklzc296b3JhXSBoYWVoID8KW0FsbGdlbWVpbjpTY2hsaXBzXSB0ZWlsZSBtaXQgZnVua3Rpb25pZXJ0IGJlaSB0dWJoZWl0IGRvY2ggYXVjaCBuZXQgLi4uCltBbGxnZW1laW46SXNzb3pvcmFdIG9iIGVyIGRhcyBob2VydCA/IDopCltBbGxnZW1laW46SXNzb3pvcmFdIGpldHp0IHdhcnRldCBlciB1bmQgd2FydGV0IC4uLgpbQWxsZ2VtZWluOlRhcmFnb24gZ3JpbnN0IGJyZWl0XQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BpZWxlciAuLi4gKEFuYXRvbCwgMTAuIEF1ZyAxOTk3LCAxODowNzowOCk6Cn4jISBybj1Bc21vZGlzIHJ0PTg3MTE5Njc1MCByZz1zY2htYXJybgp+IyEgdGlkPTg3MTE5Njc1MApJY2ggdmVyc3RlaGUgZGVuIFdpdHogYW4gZGVyIFNhY2hlIG5pY2h0LgoKV3Vyc3RzZWhlciwgCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJldHRsZXIgYWJ3ZXJ0ZW4hIChSaW5nb3IsIDEwLiBBdWcgMTk5NywgMTg6NTU6MjMpOgpbWmF1YmVyZXI6QW5hdG9sXSAhJlwkIychISBCRVRUTEVSISBCbG9vZCBhbmQgYmxvb2R5IGZsYW1pbmcgYXNoZXMhIQpBbmF0b2wgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpIdXBzLCBzaW5kIGRpZSBCZXR0bGVyIGF1Zmdld2VydGV0IHdvcmRlbj8KClJpbmdvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTcGllbGVyIC4uLiAoQXNtb2RpcywgMTEuIEF1ZyAxOTk3LCAwNzoyOToxMCk6Cn4jISBybj1BbmF0b2wgcnQ9ODcxMjI5MjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcxMTk2NzUwCldpdHplIHN0ZWhlbiBpbiBkZXIgUnVicmlrICdXaXR6ZScsIG5pY2h0IGhpZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBUcnZlcyB2b2xsYnJpbmdlbiB3dW5kZXIuLi4gKE1hbmdvLCAxMS4gQXVnIDE5OTcsIDE1OjQ4OjAwKToKClplcGh5ciBzY2hhZXJmdCBkaWUgS2xpbmdlIGVpbmVzIEJpZW5lbnN0YWNoZWxzLCBiencuIHNpZSB2ZXJzdWNodCBlcwp3ZW5pZ3N0ZW5zLgoKWmVpZyBtaXIgbWFsIHdlciBkaWUgS2xpbmdlIGFuIG5lbSBiaWVuZW5zdGFjaGVsLiA7KQoKTWFuZ28sIGF1ZiBBYndlZ2VuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoQW5hdG9sLCAxMS4gQXVnIDE5OTcsIDE5OjE0OjQwKToKW0FsbGdlbWVpbjpNb3JyaXNvbl0gU28gZWluIE1pc3QsIGltIFN1bXBmIGtvbm50ZSBtYW4gc2ljaCB3ZW5pZ3N0ZW5zIHNlbGJlcgpbQWxsZ2VtZWluOk1vcnJpc29uXSBiZWZyZWllbiwgaGllciByZW5udCBtYW4gd2llIGVpbiBEZXBwIGR1cmNocyBNb29yICEKW1RvZDpMYXJzXSBFaW4gV2FuZGxlciBoYXQgZ2VyYWRlIE1vcnJpc29uIHVtZ2VicmFjaHQuCgpKYS4KCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZ2llcndlaXNoZWl0Li4uIChBbmF0b2wsIDExLiBBdWcgMTk5NywgMjI6MzA6NDIpOgoKW1NlaGVyOlBhZHJlaWNdIGRlbiBpY2ggcHJvZ2dlICh6dW1pbmRlc3QgYWJzaWNodGxpY2gpIG5pY2h0cyBHRUdFTiBzcGllbGVyCgpVbmQgQ2F0d2VhemxlIGlzdCBJTU1FUiBsaWViIHVuZCBuZXR0IDstKQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hZ2llcndlaXNoZWl0Li4uIChDYXJhZGhyYXMsIDEyLiBBdWcgMTk5NywgMTE6MDA6MjEpOgp+IyEgcm49QW5hdG9sIHJ0PTg3MTMzMTQ0MiByZz1zY2htYXJybgp+IyEgdGlkPTg3MTMzMTQ0MgpVbmQgTUcgaXN0IGVpbmUgUGl6emEuLi4gCgogUGl6emE/IFdPPz8gICAgICAgIERhcyBodW5ncmlnZSBCZXJnY2hlbiBDYXJhZGhyYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxhZy1Ib3d0by4uLiAoS3JldGVrLCAxMi4gQXVnIDE5OTcsIDE5OjAxOjQ5KToKLi4uIE9kZXI6IFNwaWVsa2luZGVyIDotKQoKKEFsbW9zdCkgdW5jdXQgZnJvbSBbPE1hc3RlUj5dOgpbPE1hc3RlUj46Wm9ycm9dIGwgPDE4OjQyOjU2PgpbPE1hc3RlUj46PE1hc3RlUj5dIDEwLjQwIGNtZHMvcywgMjAxLjk0IGNvbXAgbGluZXMvcyA8MTg6NDI6NTg+Cls8TWFzdGVSPjo8TWFzdGVSPl0gTGFnOiAyLjglLzYwLCA0LjIlLzE1LCAxMi45JS8xIDwxODo0Mjo1OD4KWzxNYXN0ZVI+OlpvcnJvXSBsIDwxODo0Nzo1Nz4KWzxNYXN0ZVI+OjxNYXN0ZVI+XSA5LjY0IGNtZHMvcywgMTYyLjA4IGNvbXAgbGluZXMvcyA8MTg6NDc6NTk+Cls8TWFzdGVSPjo8TWFzdGVSPl0gTGFnOiAzLjAlLzYwLCA1LjElLzE1LCAxNy41JS8xIDwxODo0Nzo1OT4KWzxNYXN0ZVI+OlpvcnJvXSB3aXJkIGRhcyBub2NoIHNjaGxpbW1lciA/IDwxODo0ODo1Nj4KWzxNYXN0ZVI+OkNhdHdlYXpsZV0gbWFsIGF1c3Byb2JpZXJlbiA6KSA8MTg6NDk6MTY+Cls8TWFzdGVSPjpBbmF0b2wgZ3JtbWZwLmYgPDE4OjQ5OjMwPl0KWzxNYXN0ZVI+OlphcmRvel0gV2FzIHNvbGwgc2NobGltbSBzZWluPyA8MTg6NDk6NDI+Cls8TWFzdGVSPjpBbmF0b2xdIEthZXQsIGJpc3NlIHBhbXBpZz8gOikgPDE4OjQ5OjQ0PgpbPE1hc3RlUj46Q2F0d2VhemxlXSBpY2hiaW51bmViZXJoYXVwdG5pY2h0cGFtcGlnIDwxODo0OTo1OD4KWzxNYXN0ZVI+OktyZXRlSyBzdGljaGVsdCBDYXR0eSBlaW4gYmlzc2NoZW4uLi4gPDE4OjUwOjIwPl0KWzxNYXN0ZVI+OkFuYXRvbCB6d2lja3QgQ2F0dGllIGluIGRpZSBOYXNlIDopIDwxODo1MDozND5dCls8TWFzdGVSPjpLcmV0ZUtdIElyZ2VuZHdpZSBtdXNzIG1hbiBkZW4gZG9jaCBwYW1waWcgbWFjaGVuIGtvZW5uZW4gOy0pCls8TWFzdGVSPjpLcmV0ZUtdIDwxODo1MDo1OD4KWzxNYXN0ZVI+OkFuYXRvbF0gTmFqYSwgX3dfYW1waWcgaXN0IGVyIGphIHNjaG9uLi4uIDwxODo1MTozOD4KWzxNYXN0ZVI+OkFuYXRvbCBsZWd0IGRlbiAyLiBHYW5nIGVpbiA7LSkgPDE4OjUxOjQ2Pl0KWzxNYXN0ZVI+OktyZXRlS10gcm90ZmwgPDE4OjUxOjUyPgpbPE1hc3RlUj46Wm9ycm9dIGwgPDE4OjUyOjM1PgpbPE1hc3RlUj46PE1hc3RlUj5dIDkuNDggY21kcy9zLCAxNTguNzIgY29tcCBsaW5lcy9zIDwxODo1MjozNz4KWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDMuMyUvNjAsIDUuNiUvMTUsIDE2LjQlLzEgPDE4OjUyOjM3PgpbPE1hc3RlUj46SXZvXSBsIDwxODo1Mjo0Nj4KWzxNYXN0ZVI+OjxNYXN0ZVI+XSA5LjM5IGNtZHMvcywgMTU4LjcyIGNvbXAgbGluZXMvcyA8MTg6NTI6NDg+Cls8TWFzdGVSPjo8TWFzdGVSPl0gTGFnOiAzLjQlLzYwLCA2LjElLzE1LCAxOS40JS8xIDwxODo1Mjo0OD4KWzxNYXN0ZVI+Okl2b10gYXJnbCA8MTg6NTI6NTY+Cls8TWFzdGVSPjpab3JybyBzY2hpY2t0IGFsbGUgZXJ6aWVzIGluIGRlbiBiaWVyZ2FydGVuIDwxODo1MzoxNj5dCls8TWFzdGVSPjpLcmV0ZUtdIENhdCwgbGFzcyBkb2NoIGRlbiBSZWNobmVyIGVpbiBwYWFyIFN0YXRpc3Rpa2VuIG9kZXIgc28KWzxNYXN0ZVI+OktyZXRlS10gWmV1Z3MgYmVyZWNobmVuOyBkYSBfbXVzc18gZG9jaCBtZWhyIExhZyByYXVzenVob2xlbiBzZWluCls8TWFzdGVSPjpLcmV0ZUtdIGF1cyBkZXIgS2lzdGUuLi4gPDE4OjUzOjE4PgpbPE1hc3RlUj46Q2F0d2VhemxlXSBpY2ggc2FnIGphIC4uLiBtYWwgYXVzcHJvYmllcmVuIDopIDwxODo1Mzo1MT4KWzxNYXN0ZVI+OktyZXRlSyBlcmlubmVydCBzaWNoIGRhIHNvIGFuIGRpZSA5OCUgPDE4OjU0OjAzPl0KWzxNYXN0ZVI+OktyZXRlS10gbCA8MTg6NTQ6MTU+Cls8TWFzdGVSPjo8TWFzdGVSPl0gOS4yNyBjbWRzL3MsIDE0Ni45OSBjb21wIGxpbmVzL3MgPDE4OjU0OjE3PgpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMy4zJS82MCwgNS41JS8xNSwgNC45JS8xIDwxODo1NDoxNz4KWzxNYXN0ZVI+OkFuYXRvbF0gRGFzIHdhciBhYmVyIGljaCwgbmljaHQgQ2F0IDspIDwxODo1NDoxOT4KWzxNYXN0ZVI+OktyZXRlS10gaG1wZiA8MTg6NTQ6MjM+Cls8TWFzdGVSPjpLcmV0ZUtdIE5vZSwgSGF0ZSB3YXIncyA6LSkgPDE4OjU0OjM1PgpbPE1hc3RlUj46QW5hdG9sXSBwZmZ0LCBtaXQgV2l6bGV2ZWwgNjYga2FubiBpY2ggZGFzIGF1Y2ggdmllbCBiZXNlciAsLSkKWzxNYXN0ZVI+OkFuYXRvbF0gPDE4OjU1OjAzPgpbPE1hc3RlUj46Q2F0d2VhemxlXSBEaWUgOTglIHdhcmVuIFN3YXAgPDE4OjU1OjE4PgpbPE1hc3RlUj46S3JldGVLXSBJY2gga29lbm50ZSBtYWwgd2llZGVyIHF1ZXIgZHVyY2ggL3NhdmUgbmFjaCAiaSIgZ3JlcHBlbi4uLgpbPE1hc3RlUj46S3JldGVLXSA8MTg6NTU6MzA+Cls8TWFzdGVSPjpBbmF0b2xdIE1laW5lIDk4IG9kZXIgOTkgd2FyZW4gZXhwbG9kZSgpIDopIDwxODo1NTozND4KWzxNYXN0ZVI+OkNhdHdlYXpsZV0gd2FubiB3YXJuZGFzPyA8MTg6NTU6NDQ+Cls8TWFzdGVSPjpBbmF0b2xdIElzdCBzY2hvbiBnZWZpeHQgOikgPDE4OjU1OjU0PgpbPE1hc3RlUj46WmFyZG96XSBMYWcgcHJvZHV6aWVyZW4gaXN0IG51biB3aXJrbGljaCBrZWluZSBLdW5zdCA6KSA8MTg6NTc6MDk+Cls8TWFzdGVSPjpab3Jyb10gZWJlbiBqZWRlciBzcGllbGVyIGJyaW5ndCBlcyBhdWYgNDAgJVs8TWFzdGVSPjpaYXJkb3pdIExhZwpwcm9kdXppZXJlbiBpc3QgbnVuIHdpcmtsaWNoIGtlaW5lIEt1bnN0IDopIDwxODo1NzowOT4KWzxNYXN0ZVI+OkFuYXRvbF0gQWJlciBudXIgbm9jaCBtaXQgQWJzaWNodC4gPDE4OjU3OjUxPgpbPE1hc3RlUj46Wm9ycm9dIGxvZ2lzY2ggbWl0IGFic2ljaHQgPDE4OjU4OjAzPgpbPE1hc3RlUj46QW5hdG9sIHNjaGFmZnRlIGRpZSA5PyUgdW5hYnNpY2h0bGljaCA6KSA8MTg6NTg6MjM+XQpbPE1hc3RlUj46Wm9ycm9dIG5hamEgd2VubiBtYWlsLWZvbGRlciBvZWZmbmVuIHVuYWJzaWNodGlnIGlzdCAgIApbPE1hc3RlUj46QW5hdG9sXSBOZWVlZSwgZGFzIG1hY2h0IGtlaW4gTGFnIG1laHIsIG9kZXIgenVtaW5kZXN0IGZhc3QKWzxNYXN0ZVI+OkFuYXRvbF0ga2VpbnMuLi4uCls8TWFzdGVSPjpab3Jyb10gYXVzcHJvYmllcmVuICAgCls8TWFzdGVSPjpBbmF0b2xdIEZyYWNoIENhdCwgZGVyIHdlaXNzIGRhcyA6KQpbPE1hc3RlUj46S3JldGVLXSBsCls8TWFzdGVSPjo8TWFzdGVSPl0gOC45MSBjbWRzL3MsIDE2OC40NiBjb21wIGxpbmVzL3MKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDMuNiUvNjAsIDYuMyUvMTUsIDIwLjUlLzEKWzxNYXN0ZVI+Ok1haGF0bWFdIGxhZwpbPE1hc3RlUj46QW5hdG9sXSBIbSwgRHUgaGFzdCBlbnRzY2hpZWRlbiB6dXZpZWwgTWFpbCA6KQpbPE1hc3RlUj46Wm9ycm9dIGwKWzxNYXN0ZVI+OjxNYXN0ZVI+XSA4LjkyIGNtZHMvcywgMTY4LjQ2IGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMy42JS82MCwgNi4zJS8xNSwgMjAuNSUvMQpbPE1hc3RlUj46PE1hc3RlUj5dIDguOTIgY21kcy9zLCAxNjguNDYgY29tcCBsaW5lcy9zCls8TWFzdGVSPjo8TWFzdGVSPl0gTGFnOiAzLjYlLzYwLCA2LjMlLzE1LCAyMC41JS8xCgoqKmdyaW5zKioKCktyZXRlSwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VyYWRlIGViZW4gaW4gTW9yb246IChSYWZmaSwgMTMuIEF1ZyAxOTk3LCAxNToyNzo1OSk6CiAgRHUgZ3JlaWZzdCBkYXMgWndlaWhhdXB0IG1pdCBibG9zc2VuIEhhZW5kZW4gYW4uCiAgRHUgdHJpZmZzdCBkYXMgWndlaWhhdXB0IHNlaHIgaGFydC4KRGFzIFp3ZWloYXVwdCBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW4gWndlaWhhdXB0IGtvbW10IGFuLgo+IAoKSXN0IEJvaW5nIGpldHp0IGF1Y2ggZnVlciBNb3JvbiB6dXN0YWVuZGlnID8KCkdyaW5zCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWx0c2FtLi4uLiAoTHVwdXMsIDEzLiBBdWcgMTk5NywgMjE6Mzc6NDgpOgpFYmVuIGdlc2NoZWhlbjoKCj4gRHUgc2llaHN0IGVpbiBMZXVjaHRlbiBpbiBkZXIgVGllZmUuCnVudCBsZXVjaHRlbgpFcyBpc3QgenUgZHVua2VsICEKClNldWZ6ZW5kLCBMdXB1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaHVjaCA/Pz8gOi0pKSkgKE5haXJvbGYsIDE0LiBBdWcgMTk5NywgMTc6MzQ6NTIpOgpuZXVsaWNoIC4uLi4uLgoKRHUgc2NoYXVzdCBlaW5lbSBHYXJkZXdhZWNodGVyIHRpZWYgaW4gZGllIEF1Z2VuIHVuZCBzYWdzdDogQXBwbGF1ZGllcmUhCkVpbiBHYXJkZXdhZWNodGVyIGFwcGxhdWRpZXJ0IHZvZWxsaWcgaGluZ2VyaXNzZW4uCi4uLiAKd2VuaWcgc3BhZXRlciAuLi4KCi4uLgpEZXIgR2FyZGV3YWVjaHRlciBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW5lIExlaWNoZSBhcHBsYXVkaWVydCB2b2VsbGlnIGhpbmdlcmlzc2VuLgpsYWNoClR1YXJlZyB3aXJkIGt1cnogdm9uIGVpbmVyIGxldWNodGVuZGVuIEF1cmEgZWluZ2VodWVsbHQsIGRpZSB2b24gc2VpbmVtCkFtdWxldHQgYXVzenVnZWhlbiBzY2hlaW50LgpFaW5lIExlaWNoZSBhcHBsYXVkaWVydCB2b2VsbGlnIGhpbmdlcmlzc2VuLgpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCj4gTmVzYWphIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgInJmcm9zY2hlIiBpc3QgZG9jaCBuaWNodCBzY2hsZWNodC4uLiAoQW5hdG9sLCAxNC4gQXVnIDE5OTcsIDIyOjQ2OjA0KToKCkRlbiBSZXBvcnQgcmF1c2dlc2Nobml0dGVuLCBhYmVyIHNvbnN0IHVuZ2VrdXJ6dC4uLjopCgoocmZyb3NjaGUgcmFzY2FsICkKUmFzY2FsLT5BbmF0b2wgcXVha3QgRGlyIGF1cyBkZXIgRmVybmUgZXR3YXMgaW5zIE9oci4gRHUgZnVlaGxzdCBEaWNoCnBsb2V0emxpY2ggc2VsdHNhbSBhbmRlcnMuIFVuZDogd2llc28gaGFzdCBEdSBwbG9ldHpsaWNoIEh1bmdlciBhdWYgRmxpZWdlbj8uCltUb2Q6TGFyc10gRGllIGVpZ2VuZSBVbmZhZWhpZ2tlaXQgaGF0IGdlcmFkZSBSYXNjYWwgdW1nZWJyYWNodC4KCgpBbmF0b2wsIGJyZWl0IGdyaW5zZW5kCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWWFudHJvaXNzY2h1bGQgKFpvcnJvLCAxNS4gQXVnIDE5OTcsIDEwOjA4OjQxKToKSmVtYW5kIHJ1ZnQ6IFdhYWhhaGhoaGhoaApab3JybyBydWZ0OiBqYWFhYWhhYWhoCllhbnRybyBydWZ0OiBpY2ggdG9ldGUgR3JpbW1ib3JuCkRlbnRpIHJ1ZnQ6IGF1IGphLCBiZWkgZGVyIHBhcnR5PwpMaSBydWZ0OiBobW0gd2lyZCBzY2h3ZWlyaWcsIG9kZXIgaW0gUkw/IDotKQpEZW50aSBydWZ0OiBpbSBhYXNlZT8KTWllemUgcnVmdDogaWNoIGthbm4ga2VpbiBCbHV0IHNlaGVuIC4uLgpEZW50aSBydWZ0OiBnZWh0IGF1Y2ggb2huZSBibHV0IDspCllhbnRybyBydWZ0OiBpY2ggaGFiIGllIGdlc2FndCwgZGFzcyBpY2ggd2FzIG9yZ2FuaXNpZXJlIGhpZXIgaW4gS29lbG4gdW5kCllhbnRybyBydWZ0OiBzY2hvbiBnYXIga2VpbiBHcnVwcGVudGlja2V0LC4sLCwgdW5kIG51IG1haWx0IG1pciBqZWRlciBEZXBwCllhbnRybyBydWZ0OiBoaWVyCk1pZXplIHJ1ZnQ6IG5pY2h0IG1hbCBtZWluIGVpZ2VuZXMKWm9ycm8gcnVmdDogbXVlc3NlbiB3aXIgZGFubiBrZWluIGdyaWxsZmxlaXNjaCBtZWhyIG1pdGJyaW5nZW4gPwpEZW50aSBydWZ0OiBvY2ggZHUgYXJtZXIgKmJlZGF1ZXIqCkl2byBydWZ0OiB3ZXIgYnJpbmd0IG5lbiBncmlsbCBtaXQgPwpNaWV6ZSBydWZ0OiBhbiBHcmltbSBpc3QgbmljaHQgdmllbCBkcmFuIDopClpvcnJvIHJ1ZnQ6IHdpcmQgZGVyIG5pY2h0IGdlc3RlbGx0ClphZyBydWZ0OiBnaWJ0cyBrZWluZSBlYmVuZW4gbWVoZXIsIG9kZXIgd2FydW0gc2NocmVpdCBoaWVyIGplZGVyPwpZYW50cm8gcnVmdDogYW4gR3JpbW0gaXN0IG5peCBkcmFuLi4uIGRhcyBpc3QgbnVyIEhhdXQsIEhhYXIgdW5kIEtub2NoZW4KSXZvIHJ1ZnQ6IHdldXNzIG5pY2h0CkFsaW5lIHJ1ZnQ6IGljaCB3dXNzdGUgc2Nob24gaW1tZXIsIGRhc3MgZGllIG1laXN0ZW4gRGVwcGVuIGluIEtvZWxuIHdvaG5lbiA6KQpEZW50aSBydWZ0OiB3ZXIgYnJpbmd0IGdldHJhZW5rZSBtaXQ/ClpvcnJvIHJ1ZnQ6IGF1cyBkZW4ga25vY2hlbiBtYWNoZW4gd2lyIG4gc3VwcGUKSXZvIHJ1ZnQ6IGdldHJhbmtlIHdlcmRlbiBkb2NoIGdlc3RlbGxsdCA/ClpvcnJvIHJ1ZnQ6IHdlbm4gZHUgZGllIGxlZ3N0IGxhZXVmdCBkb2NoIGFsbGVzIGF1cwpQaXR0eSBydWZ0OiBpcmdlbmR3YW5uIG11ZXNzZW4gZXVyZSBtYWcgcHVua3RlIGRvY2ggbWFsIGFsbGUgc2VpbgpJdm8gcnVmdDogbXAgd2VnCkl2byBydWZ0OiBtcCB3ZWcKWm9ycm8gcnVmdDogd29mdWVyIGdpYnQgZXMgZWluZSBndXRlIGNoYW9za25laXBlCkRlbnRpIHJ1ZnQ6IHNpY2hlciBwaXR0eT8KSXZvIHJ1ZnQ6IHdlZyA7KQpQaXR0eSBydWZ0OiA6LSkpKQpEZW50aSBydWZ0OiBvZGVyIG5lIGZyaWVkaG9mc2tuZWlwZSA7KQpJdm8gcnVmdDogZXMgcmVpY2h0IG5vY2hsYW5nZSA7PSkKSG9ibyBydWZ0OiB3b3p1IGlzdCBtYW4gTWFnaWVyPwpNaWV6ZSBydWZ0OiBBcmNoaWVrbmVpcGUgaXN0IGF1Y2ggb2sgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHZXJhZGUgZWJlbiBpbiBNb3JvbjogKEJvaW5nLCAxNS4gQXVnIDE5OTcsIDEyOjIwOjQzKToKfiMhIHJuPVJhZmZpIHJ0PTg3MTQ3ODg3OSByZz1zY2htYXJybgp+IyEgdGlkPTg3MTQ3ODg3OQpBZWggbmVpbiwgaWNoIG11c3N0ZSBudXIga3VlcnpsaWNoIGluIE1vcm9uIG5lIEtsZWluaWdrZWl0IGFlbmRlcm4gdW5kCmRhIGhhYiBpY2ggZGFubiBuZWJlbmJlaSBnbGVpY2ggZGllIHJlc2V0cyBkZWJ1Z2dlZCAuLi4gTmFqYS4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHVtbWUgRnJhZ2VuLi4uIChBbmF0b2wsIDE1LiBBdWcgMTk5NywgMTg6NDQ6MzEpOgpbU2VoZXI6Qm90dG9tXSBBbHNvIHdhdHQgaXMgbnUgaW0gUmFldWJlcmxhZ2VyPz8/CltUb2Q6TGFyc10gS2llc2VsdHJpbSBHcmllc2VsaHVjayBoYXQgZ2VyYWRlIFR1YXJlZyB1bWdlYnJhY2h0LgpbVG9kOkxhcnNdIFJob25qYSBaWmVyZW56emEgaGF0IGdlcmFkZSBQaHlnb3MgdW1nZWJyYWNodC4KCkphLCBuZT8KCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRyYWNlcm91dGUgYXVmIEFid2VnZW4uLi4gKEFuYXRvbCwgMTYuIEF1ZyAxOTk3LCAwMjoxMzowMCk6CgpOdXIgc28gZWluIEF1c3p1ZzogCiA4ICBaUi1IYW1idXJnMS5XaU4tSVAuREZOLkRFICgxODguMS4xNDQuMjEpICAyMyBtcyAgMjIgbXMgIDIzIG1zCiA5ICBaUi1IYW5ub3ZlcjEuV2lOLUlQLkRGTi5ERSAoMTg4LjEuMTQ0LjIyKSAgMjMgbXMgIDI1IG1zICAyMiBtcwoxMCAgWlItSGFtYnVyZzEuV2lOLUlQLkRGTi5ERSAoMTg4LjEuMTQ0LjIxKSAgMjYgbXMgIDU1IG1zICAyNiBtcwoxMSAgWlItSGFubm92ZXIxLldpTi1JUC5ERk4uREUgKDE4OC4xLjE0NC4yMikgIDI2IG1zICAyNiBtcyAgMjUgbXMKMTIgIFpSLUhhbWJ1cmcxLldpTi1JUC5ERk4uREUgKDE4OC4xLjE0NC4yMSkgIDM0IG1zICA0NSBtcyAgMzkgbXMKMTMgIFpSLUhhbm5vdmVyMS5XaU4tSVAuREZOLkRFICgxODguMS4xNDQuMjIpICAyOSBtcyAgMzMgbXMgIDQ5IG1zCjE0ICBaUi1IYW1idXJnMS5XaU4tSVAuREZOLkRFICgxODguMS4xNDQuMjEpICA1MCBtcyAgMzIgbXMgIDMxIG1zCjE1ICBaUi1IYW5ub3ZlcjEuV2lOLUlQLkRGTi5ERSAoMTg4LjEuMTQ0LjIyKSAgNDcgbXMgIDM2IG1zICAzMiBtcwoxNiAgWlItSGFtYnVyZzEuV2lOLUlQLkRGTi5ERSAoMTg4LjEuMTQ0LjIxKSAgNDMgbXMgIDM2IG1zICAzNiBtcwoxNyAgWlItSGFubm92ZXIxLldpTi1JUC5ERk4uREUgKDE4OC4xLjE0NC4yMikgIDM2IG1zICAzNiBtcyAgMzYgbXMKMTggIFpSLUhhbWJ1cmcxLldpTi1JUC5ERk4uREUgKDE4OC4xLjE0NC4yMSkgIDQwIG1zICA0MCBtcyAgMzkgbXMKMTkgIFpSLUhhbm5vdmVyMS5XaU4tSVAuREZOLkRFICgxODguMS4xNDQuMjIpICAzOSBtcyAgMzcgbXMgIDQwIG1zCjIwICBaUi1IYW1idXJnMS5XaU4tSVAuREZOLkRFICgxODguMS4xNDQuMjEpICA0MiBtcyAgNDEgbXMgIDQ0IG1zCjIxICBaUi1IYW5ub3ZlcjEuV2lOLUlQLkRGTi5ERSAoMTg4LjEuMTQ0LjIyKSAgNDEgbXMgIDQzIG1zICA0MiBtcwoyMiAgWlItSGFtYnVyZzEuV2lOLUlQLkRGTi5ERSAoMTg4LjEuMTQ0LjIxKSAgNTMgbXMgIDQ0IG1zICA1MyBtcwoyMyAgWlItSGFubm92ZXIxLldpTi1JUC5ERk4uREUgKDE4OC4xLjE0NC4yMikgIDk0IG1zICA1NiBtcyAgNTggbXMKMjQgIFpSLUhhbWJ1cmcxLldpTi1JUC5ERk4uREUgKDE4OC4xLjE0NC4yMSkgIDY0IG1zICA1MiBtcyAgNTggbXMKMjUgIFpSLUhhbm5vdmVyMS5XaU4tSVAuREZOLkRFICgxODguMS4xNDQuMjIpICA1OCBtcyAgNTggbXMgIDQ3IG1zCjI2ICBaUi1IYW1idXJnMS5XaU4tSVAuREZOLkRFICgxODguMS4xNDQuMjEpICA1MiBtcyAgNTEgbXMgIDU4IG1zCjI3ICBaUi1IYW5ub3ZlcjEuV2lOLUlQLkRGTi5ERSAoMTg4LjEuMTQ0LjIyKSAgNDggbXMgIDQ5IG1zICA1MCBtcwoKQWxzby4uLiBuZWluLCBSSUNIVElHIHN1ZXNzIGZpbmQgaWNoIGRhcyBuaWNodCwgYWJlciBncmluc2VuIG11c3MKaWNoIGRhbm4gZG9jaCBlaW4gd2VuaWcuLi4gOy0pCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmbHcuLi4gKEFuYXRvbCwgMTYuIEF1ZyAxOTk3LCAwMjoyMDo1MSk6CgpbU2VoZXI6UmluZ29yXSBkaWUgUmF0dGVuIHNpbmQgZG9jaCBmcnVlaGVyIG5pY2h0IF9zb18gb2Z0IGluIEdydXBwZW4KW1NlaGVyOlJpbmdvcl0gZ2V3YW5kZXJ0CltUb2Q6TGFyc10gRWluZSBSYXR0ZSBoYXQgZ2VyYWRlIFJpbmdvciB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgUmF0dGVdIERhcyB3YXIgd29obCBlaW5tYWwgbmljaHRzPyEKCkF1IDooCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGZsdy4uLiAoUmluZ29yLCAxNi4gQXVnIDE5OTcsIDAyOjQwOjE2KToKfiMhIHJuPUFuYXRvbCBydD04NzE2OTA4NTEgcmc9c2NobWFycm4KfiMhIHRpZD04NzE2OTA4NTEKRGFzIGthbm4gaWNoIGFiZXIgbmljaCBnYW56IHVua29tbWVudGllcnQgbGFzc2VuIC0gZGEgaGF0IG5hZW1saWNoCmF1c25haG1zd2Vpc2UgbWFsIF9uaWNodF8gUGF0cnluIHNjaHVsZCA7LSkKCkluIGVpbmVtIEdlYmlldCwgaW4gZGVtIG1hbiBzZWxic3QgbWl0IE1heC1SdWVzdHVuZyAoZ2VydWVzdGV0KSBub2NoIHNlaHIgaGFydApnZXRyb2ZmZW4gd2lyZCwgaXN0IGVzIGhhbHQgZXR3YXMgdW5nZXN1bmQgKG1hbiBrb2VubnRlIHNhZ2VuOiB0b2VkbGljaCksIHdlbm4KbWFuIHNpY2ggYmVpIGRlciBBbndlbmR1bmcgZWluZXMgOTQlLVNraWxscyBzcG9udGFuIGF1c3ppZWh0LgoKU293YXMgbmVubnQgbWFuIGRhbm4gd29obCBSZXN0cmlzaWtvLiA7LSkKClJpbmdvciwgT3BmZXIgc2VpbmVyIEdpbGRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRyYWNlcm91dGUgYXVmIEFid2VnZW4uLi4gKEZ5dCwgMTcuIEF1ZyAxOTk3LCAxMDoyNjozNSk6Cn4jISBybj1BbmF0b2wgcnQ9ODcxNjkwMzgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcxNjkwMzgwCgpNZWluIEpvZiwgZGllIHdvbGx0ZW4gaGFsdCBkaWUgc2NobmVsbGUgVmVyYmluZHVuZyB6d2lzY2hlbiBIYW1idXJnIHVuZApIYW5ub3ZlciBhdXNudXR6ZW4uLi4gVmllbGxlaWNodCBnaWJ0J3MgamEgbWl0dGxlcndlaWxlIHNvd2FzIHdpZQpXb2NoZW5lbmR0aWNrZXQgZnVlciBJUC1QYWtldGUuCgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHZWlzdCAoQm9pbmcsIDE4LiBBdWcgMTk5NywgMTY6MDM6MjkpOgp+IyEgb249UmFmZmkgb3Q9ODcxOTExNTczIG9nPWVudHdpY2tsdW5nCn4jISBybj1CZW5kZWlnaWQgcnQ9ODcxOTA0NjUxIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODcxNzM3NDc1CkFsc28gZnVlciBtaWNoIGlzdCBkZXIgVGV4dCB2b2xsa29tbWVuIHJpY2h0aWcgLSBEYWZ1ZXIgZGFzIEVpbiBHZWlzdCB3YXMKaWRlbnRpZml6aWVyZW4ga2FubiwgbXVzcyBlciBqYSB3b2hsIHphdWJlcm4ga29lbm5lbiAtIHVuZCBkYXMga29lbm5lbiBUcnZlcwpqYSBuaWNodCA6KQoKR3J1c3MKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEdlaXN0IChCb2luZywgMTguIEF1ZyAxOTk3LCAxNjowMzozMCk6Cn4jISBvbj1GeXQgb3Q9ODcxOTExNjM1IG9nPWVudHdpY2tsdW5nCn4jISBybj1SYWZmaSBydD04NzE5MTE1NzMgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD04NzE3Mzc0NzUKCkVyIGlzdCBhYmVyIGtlaW4gVHJ2ZXMgc29uZGVybiBlaW4gVHJ2ZXNnZWlzdC4uLgoKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogR2Vpc3QgKEJvaW5nLCAxOC4gQXVnIDE5OTcsIDE2OjAzOjMxKToKfiMhIG9uPVJhZmZpIG90PTg3MTkxMjAxMSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49Rnl0IHJ0PTg3MTkxMTYzNSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg3MTczNzQ3NQpLb2VubmVuIGRpZSBkZW5uIFphdWJlcm4gPwoKV3VlbmRlcm5kCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBHZWlzdCAoQm9pbmcsIDE4LiBBdWcgMTk5NywgMTY6MDM6MzIpOgp+IyEgb249Rnl0IG90PTg3MTkxMjgwMCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49UmFmZmkgcnQ9ODcxOTEyMDExIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODcxNzM3NDc1CgpOZWluLCBhYmVyIGRhcyBzdGFuZCBkb2NoIG5pY2h0IHp1ciBEZWJhdHRlIDstKQoKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZWJlbi4uLiAoU2hhcmlhLCAxOC4gQXVnIDE5OTcsIDE2OjM0OjA3KToKW1NlaGVyOk1hbmdvXSBBbHBoYSBpc3QgZG9jaCBzb3dhcyB2b24gc2F1YmxvZWQgLi4uCltUb2Q6TGFyc10gRWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWwgaGF0IGdlcmFkZSBBbHBoYSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsXSBQZmZmZmZmZmZmZmZ0Li4uLi4uLlBMVU1QUyEKW1NlaGVyOlN0aW5nIG5pY2t0IE1hbmdvIHp1XQpbU2VoZXI6S2V5IGxhY2h0XQpbU2VoZXI6S2V5XSBwb3N0ZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZWJlbi4uLiAoTWFuZ28sIDE4LiBBdWcgMTk5NywgMTY6MzU6NTQpOgp+IyEgcm49U2hhcmlhIHJ0PTg3MTkxNDg0NyByZz1zY2htYXJybgp+IyEgdGlkPTg3MTkxNDg0NwpIZWUsIGRhcyBoYWIgaWNoIG51ciBnZXNhZ3QgbmFjaGRlbSBpY2ggQWxwaGEncyBqYW1tZXJhcnRpa2VsIGluCkJpZXJzY2h1ZXR0bGVyIHVlYmVyIGRpZSBLbmVpcGUgZ2VsZXNlbiBoYWIuCgpNYW5nbywgYWJlciB0cm90emRlbSB6dSBzZWluZXIgQXVzc2FnZSBzdGVoZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBlYmVuLi4uIChBbHBoYSwgMTguIEF1ZyAxOTk3LCAxNjo0MzoxNCk6Cn4jISBybj1NYW5nbyBydD04NzE5MTQ5NTQgcmc9c2NobWFycm4KfiMhIHRpZD04NzE5MTQ4NDcKMS4gU3ByaW5nZSBpY2ggaW4ga2VpbmUgVGFsa2Vzc2VsLCBzb25kZXJuIHZlcndlY2hzZSBob2VjaHN0ZW5zIGRpZQpTY3JpcHRhbmZhbmdzcHVua3RlLi4uCjIuIERhY2h0ZSBpY2gsIGRhcyBkYXMgTUcgaXJnZW5kd2llIG1laHIgb2RlciB3ZW5pZ2VyIGF1ZiBUZWFtcGxheQphdXNnZXJpY2h0ZXQgaXN0LiBBbHNvIGF1Y2ggYXVmIEVyZmFocnVuZ3NhdXN0YXVzY2gsIGRhY2h0ZSBpY2guIFdhcyBzb2xscywKa25hbGxlIGljaCBtaWNoIGhhbHQgaW4gamVkZXIgS25laXBlIG1pdCBhbGxlbSBkaWUgQmlybmUgenUgdW5kIHRlc3RlIGF1cywgd2FzCmFtIHdlbmlnc3RlbiBGbHVlc3NpZ2tlaXQgaGF0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZWJlbi4uLiAoTmFpcm9sZiwgMTguIEF1ZyAxOTk3LCAxNjo0NjoyNSk6Cn4jISBybj1BbHBoYSBydD04NzE5MTUzOTQgcmc9c2NobWFycm4KfiMhIHRpZD04NzE5MTQ4NDcKQUxwaGEgc2NyaXB0ZXQgPz8/IDotKSkpCmRhcmYgbWFuIGRhcyA/IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZWJlbi4uLiAoRnl0LCAxOC4gQXVnIDE5OTcsIDE4OjIxOjEzKToKfiMhIHJuPU5haXJvbGYgcnQ9ODcxOTE1NTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcxOTE0ODQ3CgpTaWNoZXIuCgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZyB3ZWx0d2VpdCEgKEJlbmRlaWdpZCwgMTkuIEF1ZyAxOTk3LCAwOTo0Nzo1Mik6Cj4gZmkgdGFpcGFuClRhaXBhbiBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogMTMwLjEwMi45OC4yMzggKDEzMC4xMDIuOTguMjM4KSBbQnJpc2JhbmVdLgpFaW5nZWxvZ2d0IHNlaXQ6IERpZSwgMTkuIEF1ZyAxOTk3LCAwOTozOToyNAoKRGEga2FubiBtYW4gbWEgZ3Vja2VuOiBMZXR6dGUgV29jaGUgd2VyIGF1cyBBbG1hIEF0YSwgbnUgdm9uIERvd24gVW5kZXIuLi4KCkJlbmRlaWdpZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXLi4uIChBbmF0b2wsIDE5LiBBdWcgMTk5NywgMjA6Mzc6MjEpOgoKRHUgdGVpbHN0IEZsdXNzd2luZCBtaXQ6IGJ1bGxpZXMgdG90CkZsdXNzd2luZCB0ZWlsdCBEaXIgbWl0OiAqbGFjaCsgRGFua2UgOykpKQpbVG9kOkxhcnNdIEVpbiBFaXNnaWdhbnQgaGF0IGdlcmFkZSBGbHVzc3dpbmQgdW1nZWJyYWNodC4KClVwcy4uLiBGYWxzY2hlIFJpY2h0dW5nIDstKQoKQW5hb3RsCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIFdvcnQgYWJnZXNjaG5pdHRlbi4uLiBGTFcgKEFuYXRvbCwgMjAuIEF1ZyAxOTk3LCAwMTowMDozOSk6CgpbQWJlbnRldWVyOlBha2VdIEthbm4gbWlyIGVpbmVvCltUb2Q6TGFyc10gRWluZSBIYXJweWllIGhhdCBnZXJhZGUgUGFrZSB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgSGFycHlpZV0gU28gd2lyZCBlcyBqZWRlbSBlcmdlaGVuLCBkZXIgaW4gbWVpbiBHZWJpZXQgZWluZHJpbmd0IQoKTmljaHRtYWwgYXVzcmVkZW4gZHVyZnRlIGVyLi4uIHRyYXVyaWcuLi4KCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVyZGJlZXJlIGlnbm9yaWVyZSAoUGFtcGVycywgMjAuIEF1ZyAxOTk3LCAxMTo0ODo0Nyk6CkRpY2ggaWdub3JpZXJlbiBmb2xnZW5kZSBTcGllbGVyOgogIFN1bmZsb3dlciwgSWRpb3QuCgoKSG0uLi4gSXN0IGRhcyBzY2hsaW1tLCBkYXNzIGljaCBtaWNoIGdlc2NobWVpY2hlbHQgZnVlaGxlPyAKUGFtcGVycy4gTGFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSb2JpbiB1bnNjaGx1ZXNzaWcgKFNjaG9yZGFuLCAyMC4gQXVnIDE5OTcsIDEzOjEwOjU4KToKbmV1bGljaCBhdWYgZGVyIEhvY2hlYmVuZQouLi4KUm9iaW4gb2YgTG9ja3NsZXkuCj4gRGVpbiBHZWxkYmV1dGVsIGlzdCBzY2h3ZXJlciBnZXdvcmRlbi4KPiBSb2JpbiBmcmFndDogSGFzdCBEdSBtYWwgZXR3YXMgR2VsZCBmdWVyIG1pY2g/Cgp3aWxsIGVyIGRhcyBHZWxkIGV0d2Egd2llZGVyIHp1cnVlY2sgaGFiZW4/CgpTY2hvcmRhbiB3dW5kZXJ0IHNpY2ggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCltBbGxnZW1laW46SGlnaGxhbmRlcl0gVW5kICJoZXJyc2NodCB1ZWJlciIgaXN0IGVpbmUgdHJhbnNpdGl2ZSBSZWxhdGlvbi4gKFdvb2R5LCAyMC4gQXVnIDE5OTcsIDE1OjMzOjAwKToKW0FsbGdlbWVpbjpIaWdobGFuZGVyXSBCb2luZyBoZXJyc2NodCB1ZWJlciBkYXMgTXVkLCBIb2JvIGhlcnJzY2h0IHVlYmVyCltBbGxnZW1laW46SGlnaGxhbmRlcl0gQm9pbmcuIERlbiBSZXN0IHVlYmVybGFzc2VuIHdpciBkZW0gZ2VuZWlndGVuIExlc2VyIHp1cgpbQWxsZ2VtZWluOkhpZ2hsYW5kZXJdIFVlYnVuZy4KQm9pbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpIbW1tIDopCldvb2R5Li0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1pa2FnZSBhdWYgemV0dGVsIChHcmltbWJvcm4sIDIwLiBBdWcgMTk5NywgMTY6Mjc6NTApOgp+IyEgb249TWlrYWdlIG90PTg3MjA4NzE5MyBvZz1hbGxnZW1laW5lcwpNaWthZ2UgLgoKCgoKCgoKCnNjaGF1CgoKCgpzY2hhdQoKcQoKCmgKCgoKdG0gbW9ycmlzb24gU28gZWluIE1pc3QhISAKCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRhbWFob3JueSAuLi4gKEFzbW9kaXMsIDIwLiBBdWcgMTk5NywgMTg6Mzg6NTYpOgpBc21vZGlzIHNwZW5kaWVydCBlaW5lbSBUYW1haG9ybnkgZWluZW4gRHJpbmsuCkVpbiBUYW1haG9ybnkgdHJpbmt0IGVpbiBHbGFzIFdhc3NlciB1bmQgZmFlbGx0IHdpZSB0b3QgenUgQm9kZW4uCkVpbmlnZSBFbGZlbiBsYXVmZW4gaGVyYmVpIHVuZCBzY2hhZmZlbiBlcywgZWluIFRhbWFob3JueSB3aWVkZXJ6dWJlbGViZW4sCnVuZCBzZXR6ZW4gZGFubiBpaHJlIE1haGx6ZWl0IGZvcnQuIE9mZmVuc2ljaHRsaWNoIHBhc3NpZXJ0IHNvd2FzCmhpZXIgb2VmdGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAyMC4gQXVnIDE5OTcsIDIwOjI0OjM4KToKIldlciBlaW5lbiBIaXJzY2ggamFndCwgc2llaHQgZGVuIEhhc2VuIG5pY2h0IgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgpQLlMuIE5vY2ggd2FzIGluIGVpZ2VuZXIgU2FjaGU6IEljaCB3ZWNoc2VsIGpldHp0IGRlbiBLYWxlbmRlciAoZGVyIGdlaHQgdm9uCiAgICAgU29tbWVyIGJpcyBTb21tZW4pLCB1bmQgaW4gZGVtIG5ldWVuIHNpbmQgbmljaHQgbWVociBkaWUgVXJoZWJlciBkZXIKICAgICBTcHJ1ZWNoZSBhbmdlZ2ViZW4uIEljaCBzY2hyZWliIG1pciBkYXMgYWxzbyBuaWNodCBhdWYgZGllIGVpZ2VuZQogICAgIEZhaG5lLCBkaWUgU2Nod2VkZW4gc2luZCBzY2h1bGQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbWFsIHdpZWRlciduIHNob3V0IChCYWJvb24sIDIxLiBBdWcgMTk5NywgMTE6NDE6NTEpOgoKLT5FaW4gQmVpZmFsbHNzdHVybSBicmFuZGV0IGltIERpYW1vbmRwYXJrIGF1Zi4gV2FzIGRhIHdvaGwgd2llZGVyIGxvcyBpc3Q/CltUb2Q6TGFyc10gRGllIGVpZ2VuZSBVbmZhZWhpZ2tlaXQgaGF0IGdlcmFkZSBGZXJpIHVtZ2VicmFjaHQuCgpIbSAsaXN0IEZlcmkgd2lya2xpY2ggc28gdW5iZWxpZWJ0LiA6LSkgCgpCYWJvb24oKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhcnR5a3JvZXRlID8gKEFzbW9kaXMsIDIxLiBBdWcgMTk5NywgMTU6MjY6MDYpOgpJVCdzIFBBUlRZVElNRSBpbSBTYWFsIGluIGRlciBVbnRlcndlbHQKTmVzYWphICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzYW5kIChHcmltbWJvcm4sIDIyLiBBdWcgMTk5NywgMDg6NDQ6NDUpOgp+IyEgb249Um9lc3RpIG90PTg3MjE5MTc4MCBvZz1hbGxnZW1laW5lcwpIYWx0ZXN0YXRpb24gZWlzc2Nob2xsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWmVpdG1hc2NoaW5lPyAoR3JpbW1ib3JuLCAyMi4gQXVnIDE5OTcsIDA5OjQxOjE2KToKRWJlbiBiZWltIGZpbmdlcm4gZ2VzZWhlbjoKWnVsZXR6dCBhdXNnZWxvZ2d0OiBNaXQsIDI3LiBTZXAgMTk5NSwgMTU6NDY6MzUgKDY5NGQgMTY6NTM6MjkpCkRhdHVtIGRlcyBlcnN0ZW4gTG9naW46IEZyZSwgIDMuIEphbiAxOTk3LCAxOToxNDoyMwoKQXVjaCBuaWNodCB1ZWJlbC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgZGEgd29obCBwYXNzaWVydCBpc3QgOi0pIChLb2JheWFzaGksIDIyLiBBdWcgMTk5NywgMTQ6MzA6MTQpOgpFaW4gQm90ZSBrb21tdCBoZXJlaW5nZWhhc3RldCB1bmQgYmVnaW5udCB3aWxkIHp1IGZ1Y2h0ZWxuIHVuZCB6dQpwbGFwcGVybjoKJ1R1Tml4R3V0IGhhdCBnZXJhZGUgQWxhbm9uIHp1bSBEdWVsbCBoZXJhdXNnZWZvcmRlcnQhIElociBtdWVzc3QKc2NobmVsbCBpbiBkaWUgV3Vlc3RlIHp1ciBLYW1wZmFyZW5hIGxhdWZlbiwgZGFzIGR1ZXJmdCBpaHIgZXVjaCBuaWNodAplbnRnZWhlbiBsYXNzZW4hJwpVbmQgc2Nob24gaGFzdGV0IGVyIHdpZWRlciByYXVzLgoKQWxhbm9uIHJ1ZnQ6IFNDSEVJU1MgTEFHCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FzIGRhIHdvaGwgcGFzc2llcnQgaXN0IDotKSAoVHVuaXhndXQsIDIyLiBBdWcgMTk5NywgMTQ6MzI6MTApOgp+IyEgcm49S29iYXlhc2hpIHJ0PTg3MjI1MzAxNCByZz1zY2htYXJybgp+IyEgdGlkPTg3MjI1MzAxNApEZXMgd2FyIG51ciAnbmUgRkFVTEUgQVVTUkVERS4uLiBFciBoYXR0ZSBBbmdzdCEgO28pCgoncyBLYXJhdGUtWndlcmNobGUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJ1Y2tzYWNrIGFuZ2V6b2dlbj8gKFNjaGxpcHMsIDI1LiBBdWcgMTk5NywgMDY6MjA6MjcpOgpIYWIgaWNoIGdyYWRlIGJlaW0gSG9iYml0ZG9yZiBydW1saWVnZW4gc2VoZW4gLi4uLgoKRHUgc3RlaHN0IGltbWVybm9jaCBhdWYgZGVyIHd1bmRlcnNjaG9lbmVuIExpY2h0dW5nIGltIEhvYmJpdHdhbGQuIFJpZXNpZ2UKQmFldW1lIHVtIERpY2ggaGVydW0sIHdlaWNoZXMsIGdlc2NobWVpZGlnZXMgR3JhcyB1bnRlciBEZWluZW4gRnVlc3Nlbi4gRXMgaXN0CndpZSBlaW4ga2xlaW5lcyBQYXJhZGllcyAuLi4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgd2VzdGVuLgpFaW4gUnVja3NhY2sgKGdlc2NobG9zc2VuKSB1bmQgKGFuZ2V6b2dlbikuCkVpbmUgQW1laXNlLgpEYXMgSGF1cyB2b24gRnJvZG8uCgpIbW0gLSBmcmFnIG1pY2ggd2llIGVpbiBSdWNrc2FjayBhbmdlem9nZW4gaW4gbmVtIFJhdW0gcnVtbGllZ2VuIGthbm4uLi4Ka29lbm5lbiBSYWV1bWUgUnVja3NhZWNrZSBhbnppZWhlbj8KClNjaGxpcHMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhvY2h6ZWl0IHZvbiBHYXN0MSB1bmQgR2FzdDIgKEhhbmdvdmVyLCAyNS4gQXVnIDE5OTcsIDE4OjI2OjA5KToKRHUgaG9lcnN0IGRpZSBHbG9ja2VuIGRlciBLYXBlbGxlIGluIGRlciBVbnRlcndlbHQuCkdhc3QyIHVuZCBHYXN0MSB3b2xsZW4gaGVpcmF0ZW4uCkRpZSBHbG9ja2VuIGxhZXV0ZW4uClRyb3kgc3RpZnRldCBGcmllZGVuLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDg5IE1hZ2llcHVua3RlLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDkwIE1hZ2llcHVua3RlLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDkxIE1hZ2llcHVua3RlLgpEaWUgR2xvY2tlbiBkZXIgS2FwZWxsZSBpbiBkZXIgVW50ZXJ3ZWx0IGxhZXV0ZW4uClR5cmlvbiBhZWNoenQgaGVyZWluLgpUdXRzenQgc2NobGVpY2h0IGJsdXRnaWVyaWcgaGVyZWluLgpaaWdhcnJlbnF1YWxtIGVyZnVlbGx0IGRlbiBSYXVtLgpbS2FyYXRlOk1hbmdvXSBuYWphIGVzIHdhZXJlIGFiZXIgbmUgaW50ZXJlc2FudGUgc2FjaGVuIGVpbmVuIGFiZ2V3YW5kZWx0ZW4gOS4KW0thcmF0ZTpNYW5nb10gZGFuIGZ1ZXIgbmUgZ2V3aXNzZSB6ZWl0IGVpbmVtIHNwaWVsZXIgenVyIHZlcmZ1ZWd1bmcgenUKW0thcmF0ZTpNYW5nb10gc3RlbGxlbgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDkyIE1hZ2llcHVua3RlLgpbS2FyYXRlOk1ZU3RFcklvVXNdIGhtbW0uLi4udmwgb2RlciBybD8/IDopClRyb3kgc3RpZnRldCBGcmllZGVuLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDkzIE1hZ2llcHVua3RlLgpEaWUgUGZvcnRlIHdpcmQgZ2VzY2hsb3NzZW4uCkRlciBQcmllc3RlciBzYWd0OiBTZWhyIGdlZWhydGUgQW53ZXNlbmRlLApEZXIgUHJpZXN0ZXIgc2FndDogd2lyIHNpbmQgaGV1dGUgaGllciB6dXNhbW1lbmdla29tbWVuLCB1bSBkaWUgSG9jaHplaXQKRGVyIFByaWVzdGVyIHNhZ3Q6IHZvbiBHYXN0MSB1bmQgR2FzdDIgenUgZmVpZXJuLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDk0IE1hZ2llcHVua3RlLgpNWVN0RXJJb1VzIGlzdCBlcnN0YXVudC4KWmlnYXJyZW5xdWFsbSBlcmZ1ZWxsdCBkZW4gUmF1bS4KVHJveSBzdGlmdGV0IEZyaWVkZW4uCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgOTUgTWFnaWVwdW5rdGUuCkRlciBQcmllc3RlciBkcmVodCBzaWNoIHp1bSBBbHRhci4KUHJpZXN0ZXIgb2VmZm5ldCBkYXMgQnVjaCBkZXIgTGllYmVuZGVuLgpEZXIgUHJpZXN0ZXIgc3R1ZGllcnQgZGFzIEJ1Y2ggZGVyIExpZWJlbmRlbi4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCA5NiBNYWdpZXB1bmt0ZS4KW0thcmF0ZTpSb2NodXNdIHJsLWNvbGEKRGVyIFByaWVzdGVyIHNhZ3Q6IERhIGtlaW5lciB2b24gYmVpZGVuIGltIEJ1Y2ggZGVyIExpZWJlbmRlbiBzdGVodCwKRGVyIFByaWVzdGVyIHNhZ3Q6IHVuZCBkZXIgTWFnaWVyIFRyb3kgZGllIEVoZSBiZWZ1ZXJ3b3J0ZXQsCkRlciBQcmllc3RlciBzYWd0OiBzdGVodCBkZXIgRWhlc2NobGllc3N1bmcgbmljaHRzIG1laHIgaW0gV2VnLgpEZXIgUHJpZXN0ZXIgc2FndDogRXMgc2VpbiBkZW5uLCBlaW5lciBkZXIgQW53ZXNlbmRlbiBoYXQgZWluZW4gRWluc3BydWNoLgpEZXIgUHJpZXN0ZXIgc2FndDogSXN0IGRlbSBzbywgc28gc2FnZSBlciBudW4gJ0VpbnNwcnVjaCcgb2RlciBzY2h3ZWlnZQpEZXIgUHJpZXN0ZXIgc2FndDogZnVlciBpbW1lci4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCA5NyBNYWdpZXB1bmt0ZS4KWmlnYXJyZW5xdWFsbSBlcmZ1ZWxsdCBkZW4gUmF1bS4KW0thcmF0ZTpSb2NodXNdIHZsIGhhYmUgaWNoIGdlbnVnIDopCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgOTggTWFnaWVwdW5rdGUuCkR1IHN0ZWhzdCBpbiBkZXIgVHJhdWthcGVsbGUgZGVyIE5pYmVsdW5nZW4uCkhpZXIgZmluZGVuIGRpZSBIb2NoemVpdGVuIHZvbiBNb3JnZW5HcmF1ZW4gc3RhdHQuIFdlbm4gRHUgYXVjaApoZWlyYXRlbiB3aWxsc3QsIHNvIGZyYWdlIGRlbiBQZmFycmVyIHVlYmVyIGRpZSBIb2NoemVpdCBhdXMuCkRpZSBLYXBlbGxlIGVyc3RyYWhsdCBpbSBLZXJ6ZW5zY2hlaW4uIEltIE9zdGVuIGRlciBLYXBlbGxlIGJlZmluZGV0IApzaWNoIGRlciBBbHRhciB1bmQgZGFzIEdvdHRlc3plaWNoZW4uIFdhcyBhdWZmYWVsbHQgaXN0LCBkYXNzIGVzIGhpZXIKa2VpbmUgQmFlbmtlIGdpYnQsIHdpZSBlcyBzb25zdCBpbiBHb3R0ZXNoYWV1c2VybiB1ZWJsaWNoIGlzdC4KTmFjaCBXZXN0ZW4gZnVlaHJ0IGVpbiBncm9zc2VzIFBvcnRhbCB6dW0gVm9ycGxhdHouCkVzIGdpYnQga2VpbmUgc2ljaHRiYXJlbiBBdXNnYWVuZ2UuClR1dHN6dCBkZXIgQmx1dGRhZW1vbi4KVGhlIEZpbmVzdCBPbGQgRHJhZ29uIFR5cmlvbiBJcyBKdXN0IEFuIE9sZCBCYWcgLi4uLi4uCkRlciBQcmllc3RlciBhdXMgZGVyIFRyYXVrYXBlbGxlLgpJdm8gc2FndDogQWNoIEl3by4KU2VuU2VpIE1ZU3RFcklvVXMgdmVyaHVlbGx0IGRhcyBHZWhlaW1uaXN2b2xsZS4KVHJveSBpc3Qgd2llZGVyIGRhIF04LSkuCkdhc3QxIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuCkdhc3QyIGRpZSBub2NoaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyaW4uCkVpbiBTY2hsaXBzLgpEZXIgUHJpZXN0ZXIgYXVzIGRlciBUcmF1a2FwZWxsZS4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCA5OSBNYWdpZXB1bmt0ZS4KW0thcmF0ZTpJdm9dIHJvY2h1cyBuYWNoIGNvbGE0MApbS2FyYXRlOk1hbmdvXSBhbSBlbmRlIGJla29tbXQgcm9jaHVzIG5lIGNvbGEtcGlwZS1saW5lIGFuIGRlbiByZWNobmVyIGdlbGVndApbS2FyYXRlOk1hbmdvXSA7KQpEZXIgUHJpZXN0ZXIgc2FndDogTmFjaGRlbSBrZWluZXIgZGVyIEFud2VzZW5kZW4gZWluZW4gRWluc3BydWNoIGhhdCwgZnJhZ2UKRGVyIFByaWVzdGVyIHNhZ3Q6IGljaCBkYXMgQnJhdXRwYWFyIGVpbnplbG4sIG9iIFNpZSBkZW4gYW5kZXJlbiBoZWlyYXRlbgpEZXIgUHJpZXN0ZXIgc2FndDogd29sbGVuLiBBbnR3b3J0ZXQgYXVmIGRpZSBGcmFnZSBtaXQgJ0phJy4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAxMDAgTWFnaWVwdW5rdGUuCkRlciBQcmllc3RlciBmcmFndDogV2lsbHN0IER1LCBHYXN0MSwgZGllIGhpZXIgYW53ZXNlbmRlIEdhc3QyIHp1CkRlciBQcmllc3RlciBmcmFndDogRGVpbmVyIEZyYXUgbmVobWVuLCBzbyBhbnR3b3J0ZSAnSmEnPyAKWmlnYXJyZW5xdWFsbSBlcmZ1ZWxsdCBkZW4gUmF1bS4KW0thcmF0ZTpNWVN0RXJJb1VzIGdyaW5zdF0KR2FzdDEgYW50d29ydGV0OiBKYQpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDEwMSBNYWdpZXB1bmt0ZS4KRGVyIFByaWVzdGVyIHdhcnRldCBhdWYgZWluICdKYScgb2RlciBlaW4gJ05laW4nIHZvbiBHYXN0MS4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAxMDIgTWFnaWVwdW5rdGUuCkRlciBQcmllc3RlciB3YXJ0ZXQgYXVmIGVpbiAnSmEnIG9kZXIgZWluICdOZWluJyB2b24gR2FzdDEuCkdhc3QxIGFudHdvcnRldDogSmEKRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAxMDMgTWFnaWVwdW5rdGUuCkRlciBQcmllc3RlciB3YXJ0ZXQgYXVmIGVpbiAnSmEnIG9kZXIgZWluICdOZWluJyB2b24gR2FzdDEuCkdhc3QxIHNhZ3Q6IGphClppZ2FycmVucXVhbG0gZXJmdWVsbHQgZGVuIFJhdW0uCkRlciBQcmllc3RlciBmcmFndDogV2lsbHN0IER1LCBHYXN0MiwgZGVuIGhpZXIgYW53ZXNlbmRlbiBHYXN0MSB6dQpEZXIgUHJpZXN0ZXIgZnJhZ3Q6IERlaW5lbSBNYW5uIG5laG1lbiwgc28gYW50d29ydGUgJ0phJz8KRHUgdGVpbHN0IFNjaGxpcHMgbWl0OiBuZXQgYW50d29ydGVuLCBlaW5mYWNoIEphIHRpcHBlbgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDEwNCBNYWdpZXB1bmt0ZS4KR2FzdDEgbmlja3QgenVzdGltbWVuZC4KR2FzdDIgc2FndDogSmEKR2FzdDEgZGVua3QgICAuIG8gTyAoYWhhKQpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDEwNSBNYWdpZXB1bmt0ZS4KRGVyIFByaWVzdGVyIHNhZ3Q6IE5hY2hkZW0gYmVpZGUgZGllIEZyYWdlIG1pdCBKQSBiZWFudHdvcnRldCBoYWJlbiwKRGVyIFByaWVzdGVyIHNhZ3Q6IGVya2xhZXJlIGljaCBkaWUgYmVpZGVuIHZvciBHb3R0ZXMgQXVnZW4genUgTWFubiB1bmQKRGVyIFByaWVzdGVyIHNhZ3Q6IEZyYXUuCkRlciBQcmllc3RlciBzYWd0OiBJaHIgZHVlcmZ0IEV1Y2ggamV0enQga3Vlc3Nlbi4KW0thcmF0ZTpNWVN0RXJJb1VzXSBobW0uLi4ud2FzIGhhbHRlbiBkZW5uIGRpZSA4LmRhbnMgdm9uIGVpbmVyIHJsLWNvbGEKW0thcmF0ZTpNWVN0RXJJb1VzXSB0YWVnbGljaCBmdWVyIHJvY2h1cyB2b24gdW5zIGFsbGVuLCBkYW1pdCBqZWRlciBlaW5lbiB0YWcKW0thcmF0ZTpNWVN0RXJJb1VzXSBwcm8gbW9uYXQgOS5kYW4gc2VpbiBrYW5uPz8gPjopCltLYXJhdGU6TWFuZ28gZ2VodCBqZXR6dCBtYWwgZGVuIDguIERhbiB0ZXN0ZW4uXQpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDEwNiBNYWdpZXB1bmt0ZS4KWmlnYXJyZW5xdWFsbSBlcmZ1ZWxsdCBkZW4gUmF1bS4KR2FzdDEga3Vlc3N0IEdhc3QyLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDEwNyBNYWdpZXB1bmt0ZS4KVHJveSBsYWVjaGVsdCBmZWllcmxpY2guCk1ZU3RFcklvVXMgZ3JhdHVsaWVydCBHYXN0MS4KR2FzdDIga3Vlc3N0IEdhc3QxLgpNWVN0RXJJb1VzIGdyYXR1bGllcnQgR2FzdDIuCkdhc3QxIGtudWRkZWx0IFR1dHN6dCwgVHlyaW9uLCBlaW5lbiBQcmllc3RlciwgSXZvLCBNWVN0RXJJb1VzLCBUcm95LCBEaWNoLApHYXN0MiwgU2NobGlwcyB1bmQgZWluZW4gUHJpZXN0ZXIuCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMTA4IE1hZ2llcHVua3RlLgpEZXIgUHJpZXN0ZXIga25pZXQgdm9yIGRlbSBBbHRhciBuaWVkZXIgdW5kIGJldGV0LgpEZXIgYmxhdWUgU3Rlcm4gYXVmIGRlciBTdGlybiBkZXMgUHJpZXN0ZXJzIGJlZ2lubnQgenUgbGV1Y2h0ZW4uCltLYXJhdGU6TWFuZ29dIG5lZSBkdSBsaWViZXIgbmljaHQgOikKRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAxMDkgTWFnaWVwdW5rdGUuCkRlciBQcmllc3RlciBzdHJlY2t0IGRpZSBIYWVuZGUgUmljaHR1bmcgRGVja2UgdW5kIGhhZWx0IHBsb2V0emxpY2gKendlaSBSaW5nZSBpbiBkZW4gSGFlbmRlbi4KWmlnYXJyZW5xdWFsbSBlcmZ1ZWxsdCBkZW4gUmF1bS4KSXZvIHRhbnp0IHNpbmdlbmQgaW0gS3JlaXMuCkVpbiBQYXJ0eW1vbnN0ZXIgZXJzY2hlaW50IGluIGVpbmVyIFJhdWNod29sa2UuCkRhcyBQYXJ0eW1vbnN0ZXIgZXJzY2hlaW50LgpEYXMgUGFydHltb25zdGVyIHJ1ZnQ6IEl2byBzcGVuZGllcnQgRlJFSUJJRVIhCkdhc3QxIGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBFcmxhbmdlbi4KRWluZ2Vsb2dndCBzZWl0OiBNb24sIDI1LiBBdWcgMTk5NywgMTc6Mzg6MTgKVm9sbGVyIE5hbWU6IEdhc3QxIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIKUmFzc2U6IDxrZWluZT4sICBHaWxkZTogQWJlbnRldXJlciwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogMDA6MzI6MTIsICAgU3BpZWxlcmxldmVsOiAxClZlcmhlaXJhdGV0IG1pdDogR2FzdDIKRGVyIFByaWVzdGVyIHNhZ3Q6IE5laG10IGRpZXNlIFJpbmdlIGFscyBaZWljaGVuIGV1cmVyIExpZWJlLgpEZXIgUHJpZXN0ZXIgbmltbXQgZGllIEhhbmQgdm9uIEdhc3QxIHVuZCBzdGVja3QgSWhtIGVpbmVuIFJpbmcgYW4gZGVuCkZpbmdlci4gRGFuYWNoIGdyZWlmdCBlciBuYWNoIGRlciBIYW5kIHZvbiBHYXN0MiB1bmQgc3RlY2t0IElociBkZW4KYW5kZXJlbiBSaW5nIGFuIGRlbiBGaW5nZXIuCkRlciBQcmllc3RlciBzYWd0OiBCZWh1ZXRldCBkaWVzZW4gUmluZyBzZWhyLCBkZW5uIGVyIGthbm4gRXVjaCBlaW5pZ2UKRGVyIFByaWVzdGVyIHNhZ3Q6IGd1dGUgRGllbnN0ZSBlcndlaXNlbi4KU2NobGlwcyB0ZWlsdCBEaXIgbWl0OiBmaW5nZXIgZ2FzdDEKVHJveSBncmF0dWxpZXJ0IEdhc3QxLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDExMCBNYWdpZXB1bmt0ZS4KRHUgdGVpbHN0IFNjaGxpcHMgbWl0OiBpY2ggd2Vpc3MKRGVyIFByaWVzdGVyIHdlbmRldCBzaWNoIHdpZWRlciBkZW0gQnVjaCBkZXIgTGllYmVuZGVuIHp1LgpFciB0cmFlZ3QgZGFzIG5ldWUgZ2x1ZWNrbGljaGUgUGFhciBlaW4uCkdhc3QxIGJlZGFua3Qgc2ljaCBiZWkgVHJveS4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAxMTEgTWFnaWVwdW5rdGUuClRyb3kga251ZGRlbHQgZWluIFBhcnR5bW9uc3RlciwgVHV0c3p0LCBUeXJpb24sIGVpbmVuIFByaWVzdGVyLCBJdm8sCk1ZU3RFcklvVXMsIEdhc3QxLCBEaWNoLCBHYXN0MiwgU2NobGlwcyB1bmQgZWluZW4gUHJpZXN0ZXIuCkdhc3QyIGJlZGFua3Qgc2ljaCBiZWkgVHJveS4KUHJpZXN0ZXIgc2NobGllc3N0IGRhcyBCdWNoIGRlciBMaWViZW5kZW4uCkRlciBQcmllc3RlciBzYWd0OiBHZWhldCBudW4gaGluIGluIEZyaWVkZW4uCgpEZXIgUHJpZXN0ZXIgb2VmZm5ldCBkaWUgUGZvcnRlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmltIEdsYXNoYXVzIHNvbGwgbWFuIG5pY2h0IC4uLiAoQWxib2luLCAyNS4gQXVnIDE5OTcsIDE4OjM3OjUzKToKWy9kL3VudGVyd2VsdC9jaHJpcy9yYWV1bWUva2FwZWxsZV0KRHUgc3RlaHN0IGluIGRlciBUcmF1a2FwZWxsZSBkZXIgTmliZWx1bmdlbi4KSGllciBmaW5kZW4gZGllIEhvY2h6ZWl0ZW4gdm9uIE1vcmdlbkdyYXVlbiBzdGF0dC4gV2VubiBEdSBhdWNoCmhlaXJhdGVuIHdpbGxzdCwgc28gZnJhZ2UgZGVuIFBmYXJyZXIgdWViZXIgZGllIEhvY2h6ZWl0IGF1cy4KRGllIEthcGVsbGUgZXJzdHJhaGx0IGltIEtlcnplbnNjaGVpbi4gSW0gT3N0ZW4gZGVyIEthcGVsbGUgYmVmaW5kZXQgCnNpY2ggZGVyIEFsdGFyIHVuZCBkYXMgR290dGVzemVpY2hlbi4gV2FzIGF1ZmZhZWxsdCBpc3QsIGRhc3MgZXMgaGllcgprZWluZSBCYWVua2UgZ2lidCwgd2llIGVzIHNvbnN0IGluIEdvdHRlc2hhZXVzZXJuIHVlYmxpY2ggaXN0LgpOYWNoIFdlc3RlbiBmdWVocnQgZWluIGdyb3NzZXMgUG9ydGFsIHp1bSBWb3JwbGF0ei4KRXMgZ2lidCBrZWluZSBzaWNodGJhcmVuIEF1c2dhZW5nZS4KVHJveSBpc3Qgd2llZGVyIGRhIF04LSkuIFsvbWFnaWVyOnRyb3ldCkdhc3QxIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuIFsvc3RkL3NoZWxscy9odW1hbiMzMjYxODNdCkhhbmdvdmVyIGxhY2h0IHNpY2ggc2NobGFwcC4gWy9odW1hbjpoYW5nb3Zlcl0KR2FzdDIgZGllIG5vY2hob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXJpbi4gWy9zdGQvc2hlbGxzL2h1bWFuIzMyNjQ4NF0KRWluIFNjaGxpcHMuIFsvaHVtYW46c2NobGlwc10KRGVyIFByaWVzdGVyIGF1cyBkZXIgVHJhdWthcGVsbGUuIFsvZC91bnRlcndlbHQvY2hyaXMvbW9uc3Rlci9wcmllc3RlciMzMjY1MTNdCj4gS29sa28gZmxhdHRlcnQgaGVyZWluLgpEZXIgUHJpZXN0ZXIgZHJlaHQgc2ljaCB6dW0gQWx0YXIuCkRlciBQcmllc3RlciBzdHVkaWVydCBkYXMgQnVjaCBkZXIgTGllYmVuZGVuLgpLb2xrbyBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIEdhc3QxLCBIYW5nb3ZlciwgU2NobGlwcyB1bmQgZWluCktvbGtvIGtyYWVjaHp0OiBQcmllc3RlciAuLi4KUWl0ZXNzIGJhdXQgc2ljaCB2b3IgRGlyIGF1ZiB1bmQgc2NoYXV0IERpY2ggZ3JpbW1pZyBhbi4uCkR1IGtpY2hlcnN0LiAoV2llIGFsYmVybiB2b24gRGlyKQo+IERlciBQcmllc3RlciBzYWd0OiBEYSBrZWluZXIgdm9uIGJlaWRlbiBpbSBCdWNoIGRlciBMaWViZW5kZW4gc3RlaHQsCkRlciBQcmllc3RlciBzYWd0OiB1bmQgZGVyIE1hZ2llciBUcm95IGRpZSBFaGUgYmVmdWVyd29ydGV0LApEZXIgUHJpZXN0ZXIgc2FndDogc3RlaHQgZGVyIEVoZXNjaGxpZXNzdW5nIG5pY2h0cyBtZWhyIGltIFdlZy4KRGVyIFByaWVzdGVyIHNhZ3Q6IEVzIHNlaW4gZGVubiwgZWluZXIgZGVyIEFud2VzZW5kZW4gaGF0IGVpbmVuIEVpbnNwcnVjaC4KRGVyIFByaWVzdGVyIHNhZ3Q6IElzdCBkZW0gc28sIHNvIHNhZ2UgZXIgbnVuICdFaW5zcHJ1Y2gnIG9kZXIgc2Nod2VpZ2UKRGVyIFByaWVzdGVyIHNhZ3Q6IGZ1ZXIgaW1tZXIuClFpdGVzcyB6aWVodCBlaW5lbiBMZWRlcmhlbG0gYW4uClFpdGVzcyB6aWVodCBlaW5lIExlZGVycnVlc3R1bmcgYW4uClFpdGVzcyB6aWVodCBlaW5lbiBGdXNzcmluZyBhbi4KVHJveSB3YWVsenQgc2ljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uCkR1IHNhZ3N0OiBlaW5zcHJ1Y2gKPiBIYW5nb3ZlciByb3RmbHQuClFpdGVzcyBzYWd0OiBlaW5zcHJ1Y2gKR2FzdDEgbGFlY2hlbHQuCkdhc3QxIHRyaXR0IFFpdGVzcy4KUWl0ZXNzIHp1ZWNrdCBlaW5lIEF4dC4KRHUgdHJpdHRzdCBlaW5lbiBQcmllc3Rlci4KPiBLb2xrbyBrcmFlY2h6dDogLi4uIHdpZSBnZWh0cz8gLi4uIHdpZSBnZWh0cz8gLi4uCkRlciBQcmllc3RlciBzYWd0OiBOYWNoZGVtIGtlaW5lciBkZXIgQW53ZXNlbmRlbiBlaW5lbiBFaW5zcHJ1Y2ggaGF0LCBmcmFnZQpEZXIgUHJpZXN0ZXIgc2FndDogaWNoIGRhcyBCcmF1dHBhYXIgZWluemVsbiwgb2IgU2llIGRlbiBhbmRlcmVuIGhlaXJhdGVuCkRlciBQcmllc3RlciBzYWd0OiB3b2xsZW4uIEFudHdvcnRldCBhdWYgZGllIEZyYWdlIG1pdCAnSmEnLgpEdSBzYWdzdDogaGFlCkR1IHphcHBzdCBlaW5lbiBQcmllc3Rlci4KRGVyIFByaWVzdGVyIGZhZWxsdCB0b3QgenUgQm9kZW4uCj4gUWl0ZXNzIHN0ZWNrdCBlaW5lIEF4dCB6dXJ1ZWNrLgpRaXRlc3MgenVlY2t0IGVpbmUgQXh0LgpRaXRlc3Mga251ZGRlbHQgRGljaC4KSGFuZ292ZXIgc2FndDogaGUuLi4KRHUgc2Fnc3Q6IHRhdWIgaXNzZXIgd29obCBhdWNoIG5vY2gKPiBIYW5nb3ZlciBzYWd0OiBpY2ggZGFyZiBkb2NoIG5ldCBub2NobWFsLi4uCkR1IHNhZ3N0OiBkYXMgd2FyIDIgbWFsIGVpbnNwcnVjaApIYW5nb3ZlciBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpbQWJlbnRldWVyOjxRdWVzdD5dIE5paGFvIGhhdCBnZXJhZGUgZWluIEFiZW50ZXVlciBiZXN0YW5kZW46IEZpbmRlIGRpZSBGZWUKW0FiZW50ZXVlcjo8UXVlc3Q+XSBBbWFyeWxsaXMKRHUgc2Fnc3Q6IGRhIGhhdCBlciB6dSBob2VyZW4KPiBIYW5nb3ZlciBzY2hsaWVzc3QgZGllIEF1Z2VuIHVuZCBydW56ZWx0IGRpZSBTdGlybi4KRWluIEVpbGJvdGUgbGllZmVydCBIYW5nb3ZlciBlaW5lIEZsYXNjaGUgU2NodWV0dGVsYmllci4KSGFuZ292ZXIgc2NodWV0dGVsdCBlaW5lIEZsYXNjaGUgU2NodWV0dGVsYmllci4KR2FzdDEgdHJpdHQgRGljaC4KSGFuZ292ZXIgc3RlY2t0IGVpbmUgRmxhc2NoZSBpbiBlaW4gUGFrZXQuClRyb3kgc2FndDogZGllc2UgVHJhdWthcGVsbGUgaXN0IHNvd2FzIHZvbiBncmF1c2xpZyBwcm9ncmFtbWllcnQKCipvaG5lIEtvbW1lbnRhcioKQWxib2luCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG1wZiA6LSkgKE5haXJvbGYsIDI1LiBBdWcgMTk5NywgMjA6NTI6NDUpOgpTaGFyaWEgbGVndCBlaW5lbiBQZmVpbCBhdWYgZGllIFNlaG5lIHNlaW5lcyBCb2dlbnMgdW5kIHNwYW5udCBpaG4uCkFscyBTaGFyaWEgZGllIFNlaG5lIGxvc2xhZXNzdCwgc2NobmVsbHQgZGVyIFBmZWlsIGRhdm9uLgogIFNoYXJpYSB6ZXJzdGFldWJ0IGRhcyBBYmJpbGQgU2hhcmlhcy4KRWluIEFiYmlsZCBTaGFyaWFzIGxvZXN0IHNpY2ggaW4gV29obGdlZmFsbGVuIGF1Zi4KU2hhcmlhIGh1ZXBmdCBpbiBkZXIgR2VnZW5kIGhlcnVtLgoKCmhtbSBTRUlORU4gPz8/IHdhZXJlIG1pciBuZXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5pZW1leWVyIChDYXR3ZWF6bGUsIDI2LiBBdWcgMTk5NywgMTE6MzY6MTYpOgp+IyEgb249Q2F0d2VhemxlIG90PTg3MjU4ODE2MiBvZz13aXR6ZQpbQWxsZ2VtZWluOkNhdHdlYXpsZV0gZmVydGljaCA6KSA8MTE6MjY6MDM+CltBbGxnZW1laW46Q2F0d2VhemxlXSBXYXJ1bSBkYXVlcnQgcG9wZWxpZ2VzIEdyYXBoaWtlaW5iaW5kZW4gYmVpIHRleApbQWxsZ2VtZWluOkNhdHdlYXpsZV0gZWlnZW50bGljaCBzbyBsYW5nZSAuLi4gPDExOjI2OjE5PgpbQWxsZ2VtZWluOkNhdHdlYXpsZSBncnVtbWVsdC4gPDExOjI2OjIzPl0KW0FsbGdlbWVpbjpQYW1wZXJzXSBEYXMgZnJhZ2UgaWNoIG1pY2ggYXVjaCBpbW1lci4uLi4gOiggPDExOjI2OjI5PgpbQWxsZ2VtZWluOkFzbW9kaXNdIHRqYSwgYmxvZWRlIHNvZnR3YXJlIDwxMToyNjo1Mz4KW0FsbGdlbWVpbjpDYXR3ZWF6bGUgd2VpbnQgYml0dGVybGljaCA8MTE6MzA6MTc+XQpbQWxsZ2VtZWluOkFsaW5lXSBXYXMgaXN0IENhdCogPDExOjMwOjMzPgpDYXR3ZWF6bGUgcnVmdDogTklFTUVZRVIhISEKW0FsbGdlbWVpbjpSb2NodXNdIG1pdCBhbmRlcmVuIHdvcnRlbjogZXMgZHJ1Y2t0IG5pY2h0IDopIDwxMTozMDo1MT4KW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIGRydWNrdCBuaWNodCAuLi4gPDExOjMwOjU3PgpbQWxsZ2VtZWluOlZyYWldIFdhY2tlbCBhbSBLYWJlbCA8MTE6MzE6MDU+CltBbGxnZW1laW46SXZvXSBkcnVja3QgbmljaHQgPDExOjMxOjEzPgpbQWxsZ2VtZWluOlJvY2h1c10gZGFzIHdhciBkYXMgbGljaHQuIDwxMTozMToxMz4KW0FsbGdlbWVpbjpTaWx2YW5hXSBkYXMgd2FyIGRhcyBMaWNodC4uLiA8MTE6MzE6MTM+CltBbGxnZW1laW46SWx1dmF0YXJdIHdhciBkYXMgZGFzIGxpY2h0ID8/IDwxMTozMToyMz4KW0FsbGdlbWVpbjpTaWx2YW5hIGdyaW5zdCBSb2NodXMgenUuIDwxMTozMToyMz5dCltBbGxnZW1laW46SG9ibyBsYWNodC4gPDExOjMxOjI3Pl0KW0FsbGdlbWVpbjpJdm9dIGRhcyB3YXIgZGFzIGxpY2h0IDwxMTozMToyOT4KW0FsbGdlbWVpbjpCaXJkeSBsYWNodCBzaWNoIGhpZXIgZWluZW4gYWIuIDopKSkpIDwxMTozMjowMj5dCltBbGxnZW1laW46TmlyZGF2b10gZHJ1Y2tlbiB0dXQgZXMgYWJlciBpbW1lciBub2NoIG5pY2h0IDwxMTozMjowNT4KW0FsbGdlbWVpbjpDYXR3ZWF6bGUgcm90ZmxzLiA8MTE6MzI6MDU+XQpbQWxsZ2VtZWluOkhvYm9dIERhcyB3YXIgZGVyIENhdHdlYXpsZS4gRGVyIENhdHdlYXpsZSBoYXQgc2ljaCAnbmVuIFZpcnVzIGltCltBbGxnZW1laW46SG9ib10gSW50ZXJuZXQgZ2VmYW5nZW4hIDwxMTozMjowOT4KW0FsbGdlbWVpbjpSb2NodXNdIGVzIGxpZWd0IG5pY2h0IGFtIGRydWNrZXIsIGVzIGxpZWd0IGFtIHJlY2huZXIuLi4KW0FsbGdlbWVpbjpSb2NodXNdIDwxMTozMjoyMT4KW0FsbGdlbWVpbjpJdm9dIGNhdHdlYXpsZSAhISA8MTE6MzI6MjM+CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUGFyYUdvYmxpbiAoQW5hdG9sLCAyNi4gQXVnIDE5OTcsIDE1OjIyOjAxKToKfiMhIG9uPUFuYXRvbCBvdD04NzI2MDE3MTMgb2c9ZC52bGFuZAp+IyEgcm49S2V5IHJ0PTg3MjYwMTQ0MyByZz1kLnZsYW5kCn4jISB0aWQ9ODcyNDk1NjMwCk9jaCBLZXksIGRhc3MgX0RVXyBlaW4gQmV0cm9mZmVuZXIgd2Fyc3QsIC4uLiBrZWluIEtvbW1lbnRhciA6KQpBbmF0b2wsIGdyaW5zZW5kLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFBhcmFHb2JsaW4gKEtleSwgMjYuIEF1ZyAxOTk3LCAxNToyMjozMyk6Cn4jISBybj1BbmF0b2wgcnQ9ODcyNjAxNzIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcyNDk1NjMwCkhleiBpY2ggd2FyIGF1Y2ggc2Nod2VyIGJldHJvZmZlbiAuKSkKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWml0dGVybiAoWm9ycm8sIDI2LiBBdWcgMTk5NywgMTY6MTY6MzIpOgpJY2ggd2lsbCBhdWNoIG1hbCAhCgpbQWxsZ2VtZWluOlphcmRvel0gSG0KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFoaGphIDotKSkpIChOYWlyb2xmLCAyNi4gQXVnIDE5OTcsIDE5OjQ1OjU4KToKTmVzYWphIGRlbmt0OiB1bmQgaW0gdWViZXJpZ2VuIGJpbiBpY2ggZGVyIG1laW51bmcgbWFuIHNvbGx0ZSBkaWUgZ2FuemUKTmVzYWphIGRlbmt0OiBnaWxkZW4gc2NobGllc3Nlbiwgd2VpbCBqZWRlciBoamVkZW4gbnVyIG5vY2ggYW5tYWNodCwgZGVyIGlzdApOZXNhamEgZGVua3Q6IGJlc2VyIGFscyBpY2ggdW5kIGRlciBpc3Qgc2NobGVjaHRlciB1bmQgdWViZXJoYXVwdCAuLi4uLi4uZGFubgpOZXNhamEgZGVua3Q6IHNvbGx0ZW4gYWxsZSBzYXZlZmlsZXMgZ2Vsb2VzY2h0IHdlcmRlbiAuLi4udWRuIGRhcyBtZwpOZXNhamEgZGVua3Q6IGVyb2VmZm5ldCBuYWNoIGVpbmVyIHJ1aGVwYXVzZSB2b24gdW5nZWZhZWhyIDM2IG1vbmF0ZW4gd2llZGVyCk5lc2FqYSBkZW5rdDogbmV1IHVuZCBudXIgbWl0IGFiZW50ZXVyZXJnaWxkZSAuLi4uLi4KTmVzYWphIGRlbmt0OiBzbyBkYXMgbXVzc3RlIG1hbCBnZXNhZ3Qgd2VyZGVuIDopClN0aW5nIGRlbmt0OiB3b3csIGdld2FndGVyIHZvcnNjaGxhZyA6KQoKTmFpcm9sZiwgaW1tZXJub2NoIGdyaW5zZW5kIHVuZCBoZWZ0aWcgbmlja2VuZC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFoaGphIDotKSkpIChTY2hva28sIDI2LiBBdWcgMTk5NywgMjA6NDM6MDUpOgp+IyEgcm49TmFpcm9sZiBydD04NzI2MTc1NTggcmc9c2NobWFycm4KfiMhIHRpZD04NzI2MTc1NTgKSG1tbSBhbGxlcyBpbiBhbGxlbSBpc3QgZGVyIFZvcnNjaGxhZyBhYmVyIGdhciBuaWNodCBtYWwgc28gd2VpdApoZXJnZWhvbHQuLi4uLgoKU2Nob2tvIChzZWVlaHIgbmFjaGRlbmtsaWNoKQpQLlMuOiBBY2ggamEgZnVlciBhbGxlIGRpZSB3b2xsZW4gKklyb25pZSBvZmYqIC4uIG9kZXIgb24/PyBPZGVyIGRvY2ggbmljaHQ/Ckthbm4gbWFuIHNvd2FzIGVybnN0IG1laW5lbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBkZW5uIG5vY2g/IChSaW5nb3IsIDI2LiBBdWcgMTk5NywgMjI6MjQ6NTApOgpEZXIgQWx0YXIgZ2x1ZWh0IGxhbmdzYW0gYXVmIHVuZCBlbnRsYWVkdCBzaWNoIG1pdCBlaW5lbSBwbG9ldHpsaWNoZW4gS3JhY2hlbi4KTWF0cml4OiBFaW4gQWx0YXIgaXN0IGFic29sdXQgZml0LiAoMTAwJSkKTWF0cml4OiBFaW4gQWx0YXIgaXN0IGFic29sdXQgZml0LiAoMTAwJSkKICBEZXIgQWx0YXIgc2NobGFlZ3QgRGljaCB6dSBCcmVpLgoqKioqICBMUCAxNjIgKC02NCkgIE1QIDIwMgpadW0gR2x1ZWNrIHBhc3NpZXJ0IG5pY2h0cyB3ZWl0ZXIuCgpPY2gsIG1pciByZWljaHQgYXVjaCBkYXMgc2Nob24gOy0pCgpSaW5nb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaHdhY2hzaW5uIChZYW50cm8sIDI3LiBBdWcgMTk5NywgMDc6MDI6NTMpOgp+IyEgb249U2Fpa2FuIG90PTg3MjYzMzg2MyBvZz1kLnZsYW5kCktvZW5udGV0IGlociBkaWVzZW4gdW5mdW5nIGJpdHRlIGF1ZiBTY2htYXJybiBiZXRyZWliZW4gdW5kCm5pY2h0IHVudGVyIGQudmxhbmQKCmRhbmtlCgpTYWlrYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogYWhoamEgOi0pKSkgKFJhZmZpLCAyNy4gQXVnIDE5OTcsIDEyOjE4OjMzKToKfiMhIHJuPVNjaG9rbyBydD04NzI2MjA5ODUgcmc9c2NobWFycm4KfiMhIHRpZD04NzI2MTc1NTgKV2llc28gc3RlaHQgZGFzIGVpZ2VudGxpY2ggdW50ZXIgU2NobWFycm4gPwpHcmltbWlpaWlpaWlpaWlpaSAtIHNvZm9ydCB2ZXJsZWdlbiBuYWNoIEJla2FubnRtYWNodW5nIDopCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppZGVudGlmaXppZXJlbiAoVHJla2FuLCAyNy4gQXVnIDE5OTcsIDEyOjUxOjQ4KToKW2lkZW50aWZpemllcmUgbXVlbnplXQpEaWUgTXVlbnplIGlzdCBlaW4gbGVibG9zZXMgRGluZy4KU29uc3Qga2FubnN0IER1IG5pY2h0cyBiZXNvbmRlcmVzIGFuIGRlciBNdWVuemUgZXJrZW5uZW4uCkRpZSBNdWVuemUgZ2Vob2VydCBpbiBkZW4gVmVyYW50d29ydHVuZ3NiZXJlaWNoIHZvbiA6IExpbnV4LgoKTW1oIC4uIExpbnV4IGlzdCBhYmVyIG4gU3BpZWxlciA7KQpXaXJkIGRvY2ggbmljaHQgZGFzIFN5c3RlbSBnZW1laW50IHNlaW4gPz8/ClRyZWthbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IER1YWxpdGFldCBkZXMgTWVuc2NoZW4gKEFuYXRvbCwgMjcuIEF1ZyAxOTk3LCAxNzoxMzozOSk6Cn4jISBybj1IYW1sZXQgcnQ9ODcyNjk0NjgwIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODcyNjk0NjgwCj4gZ2V6Lgo+IEhhbWxldCwgZGVyIGVpbnppZyB3YWhyZSBIb2JiaXRrYWVtcGZlciA6KQoKS2VpbiBLb21tZW50YXIuCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXMgZGVubiBub2NoPyAoTWFuZ28sIDI3LiBBdWcgMTk5NywgMTk6MDc6MzEpOgp+IyEgcm49UmluZ29yIHJ0PTg3MjYyNzA5MCByZz1zY2htYXJybgp+IyEgdGlkPTg3MjYyNzA5MAp3YXM/IG1laHIgaGF0IGRlciBkaXIgbmljaHQgZ2V6b2dlbj8gOykKCk1hbmdvLCBub2NoIG5lbiBkaWNrZXJlbiBLb3BmIGdlaGFidCBoYWJlbmQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVmVyc2F1dGUgQVNDSUktR3JhZmljayAoTW9yZ290aCwgMjguIEF1ZyAxOTk3LCAxNDo0MjoxNik6CiAgICAgICAgIF9fCiAgICAgIF9fL28gXF8KICAgICAgXF9fX18gIFwKICAgICAgICAgIC8gICBcCiAgICBfXyAgIC8vXCAgIFwKIF9fL28gXC0vLy0tXCAgIFxfLyAgKSkKIFxfX19fICBfX18gIFwgIHwKICAgICAgfHwgICBcIHxcIHwKICAgICAgfHwgICAgfHwgfHwKICAgICBffHwgICBffHxffHwKCgpJY2ggaG9mZmUgZGllIEZvcm1hdGllcnVuZyBpc3QgT2sgISEKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZ2VoZXVlciB2b20gU2VlIGRlcyBFd2lnZW4gUmVnZW5zLi4uPyAoQW5hdG9sLCAyOC4gQXVnIDE5OTcsIDE4OjMxOjAxKToKCltNb2VyZGVyOkdlaXN0IGVpbmVyIE5hY2hiYXJpbiBkZXMgQnJ1ZGVycyBkZXMgU2Nod2VydG1laXN0ZXJzXSBEYW5rZSwKW01vZXJkZXI6R2Vpc3QgZWluZXIgTmFjaGJhcmluIGRlcyBCcnVkZXJzIGRlcyBTY2h3ZXJ0bWVpc3RlcnNdIE1ZU3RFcklvVXMsIER1CltNb2VyZGVyOkdlaXN0IGVpbmVyIE5hY2hiYXJpbiBkZXMgQnJ1ZGVycyBkZXMgU2Nod2VydG1laXN0ZXJzXSBoYXN0IG1pY2ggdm9uCltNb2VyZGVyOkdlaXN0IGVpbmVyIE5hY2hiYXJpbiBkZXMgQnJ1ZGVycyBkZXMgU2Nod2VydG1laXN0ZXJzXSBkaWVzZXIKW01vZXJkZXI6R2Vpc3QgZWluZXIgTmFjaGJhcmluIGRlcyBCcnVkZXJzIGRlcyBTY2h3ZXJ0bWVpc3RlcnNdIHNjaHJlY2tsaWNoZW4sCltNb2VyZGVyOkdlaXN0IGVpbmVyIE5hY2hiYXJpbiBkZXMgQnJ1ZGVycyBkZXMgU2Nod2VydG1laXN0ZXJzXSBzdGVyYmxpY2hlbgpbTW9lcmRlcjpHZWlzdCBlaW5lciBOYWNoYmFyaW4gZGVzIEJydWRlcnMgZGVzIFNjaHdlcnRtZWlzdGVyc10gSHVlbGxlCltNb2VyZGVyOkdlaXN0IGVpbmVyIE5hY2hiYXJpbiBkZXMgQnJ1ZGVycyBkZXMgU2Nod2VydG1laXN0ZXJzXSBiZWZyZWl0LgoKT2IgVG94IFV0YXQgZnVlciBkaWUgRGFtZSBWZXJ3ZW5kdW5nIGhhdD8gOikKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbmdlaGV1ZXIgdm9tIFNlZSBkZXMgRXdpZ2VuIFJlZ2Vucy4uLj8gKFd1cnplbCwgMjguIEF1ZyAxOTk3LCAxODozMzozNCk6Cn4jISBybj1BbmF0b2wgcnQ9ODcyNzg1ODYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcyNzg1ODYxCnNjaGljayBlcyBkb2NoIGFscyBtYWlsIGFuIGhhdGUsIHNpZWh0IGphIGZ1ZXJjaHRlcmxpY2ggYXVzIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcmdsISAoTHVwdXMsIDI4LiBBdWcgMTk5NywgMTk6MDQ6MjEpOgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gRGFtaWVuIGluIFJ1YnJpayAiZW50d2lja2x1bmciLgo+bm4KVWViZXJnZWhlIEFydGlrZWwgMTA0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCgpNdXNzIGRhcyBzZWluPyA6KQoKTHVwdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvZCBoYXQgd2FzIHp1dHVuIChab3JybywgMjguIEF1ZyAxOTk3LCAxOToxNTo1Nyk6Ckdlc3RlbiB1ZWJlciBkZXIgS3VnZWwsIHVuZCBEdSBzaWVoc3Q6CkVpbiBkdW5rbGVyIFJhdW0sIGVybGV1Y2h0ZXQgdm9uIGR1bmtsZW0gTGljaHQsIGRhcyBzaWNoIGRlciBEdW5rZWxoZWl0IG5pY2h0CnNvIHNlaHIgenUgd2lkZXJzZXR6ZW4gc2NoZWludCwgaW5kZW0gZXMgbGV1Y2h0ZXQsIGFscyBkYXNzIGVzIGRlciBkdW5rZWxzdGUKUHVua3QgaW4gZWluZXIgd2VuaWdlciBkdW5rbGVuIFVtZ2VidW5nIGlzdC4gSW0gc2VsdHNhbWVuIExpY2h0IGVya2VubnN0IER1CmVpbmVuCnplbnRyYWwgYXVmZ2VzdGVsbHRlbiBTY2hyZWlidGlzY2gsIGRlciBtaXQgRGlhZ3JhbW1lbiB1bmQgQnVlY2hlcm4gYmVkZWNrdAppc3QuCkRpZSBXYWVuZGUgdmVyc2Nod2luZGVuIGhpbnRlciBSZWdhbGVuLCBkaWUgZ2VmdWVsbHQgc2luZCBtaXQgaW4gTGVkZXIgZ2UtCmJ1bmRlbmVuLCBkdW5rbGVuIFdhZWx6ZXJuLCB2b24gZGVuZW4gZ2VoZWltbmlzc3ZvbGxlIFJ1bmVuIGxldWNodGVuLgpUb2QuCkVzIGdpYnQga2VpbmUgc2ljaHRiYXJlbiBBdXNnYWVuZ2UuCkRlciBHZWlzdCB2b24gT2hvby4KRGVyIEdlaXN0IHZvbiBTdGluZy4KRWluIEhlaWx0cmFuay4KRGVyIEdlaXN0IHZvbiBEaWFuYS4KRGVyIEdlaXN0IGVpbmVzIGtsZWluZW4gRnJvc2NoZXMgbmFtZW5zIE1hbmdvLgoKSXN0IGRlciBIZWxpdHJhbmsgYXVjaCBnZXN0b3JiZW4gPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWhhIChDYXR3ZWF6bGUsIDI4LiBBdWcgMTk5NywgMTk6Mjg6NTYpOgp+IyEgb249UGhvYm9zIG90PTg3Mjc4OTA0NCBvZz1lbnR3aWNrbHVuZwpbVG9kOkxhcnNdIEVpbmUgV2FuZCBoYXQgZ2VyYWRlIE1hbmdvIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBXYW5kXSAqZ3JpbnMqIEljaCB3YXIgd2llZGVyIG1hbCBzdGFlcmtlci4uLgpbQmVpbGVpZDpQYXRyeW5dIGljaCBiaW4gamEgd2llZGVyIGJlc3NlciBhbHMgZHUsIHJvY2h1cy4uLmJhZXRzY2ggOikKCgphbGxlcyBrbGFyLCB1bmQgZ2x1ZWNrd3Vuc2NoLCBwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLiAoV29vZHksIDI4LiBBdWcgMTk5NywgMTk6NTY6MzUpOgpbU2VoZXI6QXNtb2Rpc10gd2lsbCBqZW1hbmQgZWluIFNNUyA/CkdyaW1tYm9ybiAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKaW1tZXIgZGllc2UgZ2llcmlnZW4gTWFnaWVyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAuLi4gKEFzbW9kaXMsIDI4LiBBdWcgMTk5NywgMjA6MDU6MjApOgp+IyEgcm49V29vZHkgcnQ9ODcyNzkwOTk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcyNzkwOTk1CkdyaW1taSBoYXRzIGFiZXIgbmljaHQgZ2VrcmllZ3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMaWVkd3Vuc2NoIChHcmltbWJvcm4sIDI5LiBBdWcgMTk5NywgMTM6NTg6MzMpOgp+IyEgb249QW5jYWxhZ29uIG90PTg3Mjc4NjEzMCBvZz1rdWx0dXIKfiMhIHJuPVllbmRpIHJ0PTg3MjY4ODQxOSByZz1rdWx0dXIKfiMhIHRpZD04NzI2ODg0MTkKa251ZGRlbHMhCkVpbmVuIFN1cGVyZHVwZXJtZWdhdWx0cmFkYW5rZXNrbnVkZGxlciBmdWVyIGRpY2gsIFllbmRpIQpJY2ggZGVuaycgbWFsLCBkZXIgdGV4dCBrb21tdCBzbyBoaW4uLi4uLi4KS251ZGRlbHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuY2FsYWdvbgogICAgICAgICAgICAgICAgICAgICAgICAgICBEcmFjbyBrbnVkZGVsbGVuc2lzIG1ham9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbmRlZWQuLi4gKEFuYXRvbCwgMjkuIEF1ZyAxOTk3LCAxNToyNDoxNSk6Cgo+IGlkIHNjaHdlcnQgICAKRGFzIFNjaHdlcnQgaXN0IGVpbmUgV2FmZmUuCkVzIGlzdCBlaW5lIEFydCB2b24gU2Nod2VydC4KRHUgZXJrZW5uc3QgYmVzb25kZXJlIEVpZ2Vuc2NoYWZ0ZW4gYW4gZGVtIFNjaHdlcnQ6ClVuZCB3aWVkZXIgZWluaWdlIE1wIGluIGRlbiBTYW5kIGdlc2V0enQuLi4KCgpKYSwgc28ga2FubiBtYW4gZXMgYXVjaCBzYWdlbi4uLiA7LSkKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFydGlrZWwgQW5vdGhlciBiaXRlcyB0aGUgZHVzdCAoQW5hdG9sLCAyOS4gQXVnIDE5OTcsIDIxOjAwOjQyKToKfiMhIHJuPUNhdHdlYXpsZSBydD04NzI4Nzk4NDggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04NzI4Nzk4NDgKCj4gbWFpbCBwb2xpemVpCkVtcGZhZW5nZXI6IEZyZXVuZCwgQ2F0d2VhemxlCgpJY2ggZnVlaGwnIG1pY2ggYWx0Li4uIGljaCBrYW5uIG1pY2ggbm9jaCBzZWhyIGd1dCBhbiBkaWVzZSBaZWl0IGVyaW5uZXJuLgoqc2VobiogKnNjaHdlbGcqICp0cmFldW0qCkFuYXRvbAouIAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClplaXRnZWZ1ZWhsLi4uIChBbmF0b2wsIDMwLiBBdWcgMTk5NywgMjE6MzE6NDMpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBCcnVkZXJzIGRlcyBTY2h3ZXJ0bWVpc3RlcnNdIEluIHNwYWV0ZXN0ZW5zIGVpbmVyIFN0dW5kZQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBCcnVkZXJzIGRlcyBTY2h3ZXJ0bWVpc3RlcnNdIGtvbW1lIGljaCB3aWVkZXIsIEFzbW9kaXMhCltNb2VyZGVyOkdlaXN0IGVpbmVzIEJydWRlcnMgZGVzIFNjaHdlcnRtZWlzdGVyc10gPDIxOjI5OjE3PgpbVG9kOkxhcnNdIEVpbiBCcnVkZXIgZGVzIFNjaHdlcnRtZWlzdGVycyBoYXQgZ2VyYWRlIEFzbW9kaXMgdW1nZWJyYWNodC4KW1RvZDpMYXJzXSA8MjE6MzA6MDc+CgpTcGFldGVzdGVucy4gR2VodCBhYmVyIGF1Y2ggZGV1dGxpY2ggc2NobmVsbGVyLgpCZWlsZWlkLApBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUb2QgZWluZXMgVGV1ZmVsIChBc21vZGlzLCAzMC4gQXVnIDE5OTcsIDIxOjQxOjUwKToKICBEdSBncmVpZnN0IGRlbiBCcnVkZXIgZGVzIFNjaHdlcnRtZWlzdGVycyBtaXQgZWluZW0gc2VociBnZWx1bmdlbmVuCllva28tdG9iaS1nZXJpLWtla29taSBhbi4KICBEdSB6ZXJzY2htZXR0ZXJzdCBkZW4gQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgaW4ga2xlaW5lIFN0dWVja2NoZW4uCkRlciBCcnVkZXIgZGVzIFNjaHdlcnRtZWlzdGVycyBmYWVsbHQgdG90IHp1IEJvZGVuLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBCcnVkZXJzIGRlcyBTY2h3ZXJ0bWVpc3RlcnNdIEluIHNwYWV0ZXN0ZW5zIGVpbmVyIFN0dW5kZQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBCcnVkZXJzIGRlcyBTY2h3ZXJ0bWVpc3RlcnNdIGtvbW1lIGljaCB3aWVkZXIsIEFzbW9kaXMhClthbmdyaWZmIG1pdCBzc3VdCkR1IGdyZWlmc3QgamV0enQgbWl0IFNvdG8tc2h1dG8tdWNoaSBhbi4KPiBEdSBoYXN0IGpldHp0IDIxMSBMZWJlbnNwdW5rdGUgdW5kIDE0MCBNYWdpZXB1bmt0ZS4KRHUgc2Fnc3Q6IGh1cHBzCj4gW01vZXJkZXI6R2Vpc3QgZWluZXMgS2xpdHplbGRyb21zXSBLb21tIER1IG1pciBudXIgd2llZGVyLCBNaW5kYmxhZGUhCkJlbGdhcmlhZCBzYWd0OiBLYW5uc3QgZHUgbWlyIGhlbGZlbj8gSWNoIGZpbmRlIGRpZSBIb2NoZWJlbmUgbmljaHQgbWVoci4KQmVsZ2FyaWFkIHNhZ3Q6IE9rIGRhbm4gZ2VoIGljaCBoYWx0IG5hY2ggb2JlbiB1bmQgc3VjaGUgZG9ydCB3ZWl0ZXIuCkJlbGdhcmlhZCBzYWd0OiBLYW5uc3QgZHUgbWlyIGhlbGZlbj8gSWNoIGZpbmRlIGRpZSBIb2NoZWJlbmUgbmljaHQgbWVoci4KaWUgTGVpY2hlIGVpbmVzIEJydWRlcnMgZGVzIFNjaHdlcnRtZWlzdGVycy4KRWluZSBMaWNodHJ1ZXN0dW5nLgo+IER1IGhhc3QgamV0enQgMjEyIExlYmVuc3B1bmt0ZSB1bmQgMTQxIE1hZ2llcHVua3RlLgpCZWxnYXJpYWQgc2FndDogY29vbApCZWxnYXJpYWQgYmVkYW5rdCBzaWNoIGJlaSBEaXIuCkJlbGdhcmlhZCBuaW1tdCBlaW4gU2Nod2VydC4KQmVsZ2FyaWFkIHNpZWh0IGJldHJ1bmtlbiBhdXMuCkR1IGhhc3QgamV0enQgMjEzIExlYmVuc3B1bmt0ZSB1bmQgMTQyIE1hZ2llcHVua3RlLgpCZWxnYXJpYWQgbmltbXQgZWluZSBMaWNodHJ1ZXN0dW5nLgpEdSBzYWdzdDogd29sbHRlc3QgZHUgZGVuIGtpbGwgPwpFaW4gQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnMga29tbXQgYW4uCkVpbiBCcnVkZXIgZGVzIFNjaHdlcnRtZWlzdGVycyBtYWNodCBlaW5lbiBTY2hsYWcgZ2VnZW4gRGljaCwgZGVyIERpY2gKa3VyenplaXRpZyBiZXRhZXVidC4KICBEZXIgQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgZ3JlaWZ0IERpY2ggbWl0IGRlbSBTY2h3ZXJ0IGFuLgogIER1IHdlaHJzdCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gTW9yb3RlLXVrZSBhYi4KRHUgaGFzdCBqZXR6dCAyMTQgTGViZW5zcHVua3RlIHVuZCAxNDIgTWFnaWVwdW5rdGUuCiAgRGVyIEJydWRlciBkZXMgU2Nod2VydG1laXN0ZXJzIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KRHUgaGFzdCBqZXR6dCAxOTYgTGViZW5zcHVua3RlIHVuZCAxNDIgTWFnaWVwdW5rdGUuCiAgRWluIEJydWRlciBkZXMgU2Nod2VydG1laXN0ZXJzIGdyZWlmdCBCZWxnYXJpYWQgbWl0IGVpbmVtIFNjaHdlcnQgYW4uCiAgRGVyIEJydWRlciBkZXMgU2Nod2VydG1laXN0ZXJzIHRyaWZmdCBCZWxnYXJpYWQgaGFydC4KICBCZWxnYXJpYWQgZ3JlaWZ0IGRlbiBCcnVkZXIgZGVzIFNjaHdlcnRtZWlzdGVycyBtaXQgZWluZW0KQmx1dHNhdWdlci1TY2h3ZXJ0IGFuLgogIEJlbGdhcmlhZCB2ZXJmZWhsdCBkZW4gQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnMuCiAgRWluIEJydWRlciBkZXMgU2Nod2VydG1laXN0ZXJzIGdyZWlmdCBCZWxnYXJpYWQgbWl0IGVpbmVtIFNjaHdlcnQgYW4uCiAgRGVyIEJydWRlciBkZXMgU2Nod2VydG1laXN0ZXJzIHRyaWZmdCBCZWxnYXJpYWQgaGFydC4KICBFaW4gQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgZ3JlaWZ0IEJlbGdhcmlhZCBtaXQgZWluZW0gU2Nod2VydCBhbi4KICBEZXIgQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgemVyc2NobWV0dGVydCBCZWxnYXJpYWQgaW4ga2xlaW5lClN0dWVja2NoZW4uCkJlbGdhcmlhZCBzYWd0OiBPayBkYW5uIGdlaCBpY2ggaGFsdCBuYWNoIG9iZW4gdW5kIHN1Y2hlIGRvcnQgd2VpdGVyLgpEdSBoYXN0IGpldHp0IDE5NyBMZWJlbnNwdW5rdGUgdW5kIDE0MyBNYWdpZXB1bmt0ZS4KRWluIEJydWRlciBkZXMgU2Nod2VydG1laXN0ZXJzIGJlc2NobGV1bmlndCBzZWluZSBBdHRhY2tlbiEKICBEZXIgQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgZ3JlaWZ0IERpY2ggbWl0IGRlbSBTY2h3ZXJ0IGFuLgogIER1IHdlaHJzdCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gR3lha3UtbWF3YXNoaS1vdG9zaGkta2FrYXRvLXVrZSBhYi4KRHUgaGFzdCBqZXR6dCAxOTcgTGViZW5zcHVua3RlIHVuZCAxNDIgTWFnaWVwdW5rdGUuCiAgRGVyIEJydWRlciBkZXMgU2Nod2VydG1laXN0ZXJzIHNjaGxhZWd0IERpY2ggbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIKS25vY2hlbi4KRHUgaGFzdCBqZXR6dCAxNzQgTGViZW5zcHVua3RlIHVuZCAxNDIgTWFnaWVwdW5rdGUuCiAgRGVyIEJydWRlciBkZXMgU2Nod2VydG1laXN0ZXJzIGdyZWlmdCBEaWNoIG1pdCBkZW0gU2Nod2VydCBhbi4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIEdlZGFuLWJhcmFpIGFiLgpEdSBoYXN0IGpldHp0IDE3NCBMZWJlbnNwdW5rdGUgdW5kIDE0MSBNYWdpZXB1bmt0ZS4KICBEZXIgQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgdmVyZmVobHQgRGljaC4KICBEZXIgQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgZ3JlaWZ0IERpY2ggbWl0IGRlbSBTY2h3ZXJ0IGFuLgogIER1IHdlaHJzdCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gTW9yb3RlLXN1a3VpLXVrZSBhYi4KRHUgaGFzdCBqZXR6dCAxNzQgTGViZW5zcHVua3RlIHVuZCAxNDAgTWFnaWVwdW5rdGUuCiAgRGVyIEJydWRlciBkZXMgU2Nod2VydG1laXN0ZXJzIHNjaGxhZWd0IERpY2ggbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIKS25vY2hlbi4KRHUgaGFzdCBqZXR6dCAxNTIgTGViZW5zcHVua3RlIHVuZCAxNDAgTWFnaWVwdW5rdGUuCkVpbiBCcnVkZXIgZGVzIFNjaHdlcnRtZWlzdGVycyBzY2hsYWVndCBEaWNoIHBsb2V0emxpY2ggdW5kIHZvZWxsaWcgdW5lcndhcnRldAptaXQgZWluZW0gU2Nod2VydC4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIEdhaXdhbi1uYWdhc2hpLXVrZSBhYi4KRHUgaGFzdCBqZXR6dCAxNTIgTGViZW5zcHVua3RlIHVuZCAxMzkgTWFnaWVwdW5rdGUuCiAgRGVyIEJydWRlciBkZXMgU2Nod2VydG1laXN0ZXJzIHNjaGxhZWd0IERpY2ggenUgQnJlaS4KRHUgaGFzdCBqZXR6dCA5OCBMZWJlbnNwdW5rdGUgdW5kIDEzOSBNYWdpZXB1bmt0ZS4KICBEZXIgQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgZ3JlaWZ0IERpY2ggbWl0IGRlbSBTY2h3ZXJ0IGFuLgogIER1IHdlaHJzdCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gT3Rvc2hpLXRlaXNoby11a2UgYWIuCkR1IGhhc3QgamV0enQgOTggTGViZW5zcHVua3RlIHVuZCAxMzggTWFnaWVwdW5rdGUuCiAgRGVyIEJydWRlciBkZXMgU2Nod2VydG1laXN0ZXJzIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KRHUgaGFzdCBqZXR6dCA4MiBMZWJlbnNwdW5rdGUgdW5kIDEzOCBNYWdpZXB1bmt0ZS4KICBEZXIgQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgZ3JlaWZ0IERpY2ggbWl0IGRlbSBTY2h3ZXJ0IGFuLgogIER1IHZlcnN1Y2hzdCwgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIEdhaXdhbi1uYWdhc2hpLXVrZSBhYnp1d2VocmVuLgpEdSBoYXN0IGpldHp0IDgyIExlYmVuc3B1bmt0ZSB1bmQgMTM3IE1hZ2llcHVua3RlLgogIERlciBCcnVkZXIgZGVzIFNjaHdlcnRtZWlzdGVycyB0cmlmZnQgRGljaCBzZWhyIGhhcnQuCkR1IGhhc3QgamV0enQgNjUgTGViZW5zcHVua3RlIHVuZCAxMzcgTWFnaWVwdW5rdGUuCiAgRGVyIEJydWRlciBkZXMgU2Nod2VydG1laXN0ZXJzIGdyZWlmdCBEaWNoIG1pdCBkZW0gU2Nod2VydCBhbi4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIFNodXRvLXVrZSBhYi4KRHUgaGFzdCBqZXR6dCA2NSBMZWJlbnNwdW5rdGUgdW5kIDEzNiBNYWdpZXB1bmt0ZS4KICBEZXIgQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgc2NobGFlZ3QgRGljaCBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlcgpLbm9jaGVuLgpEdSBoYXN0IGpldHp0IDM1IExlYmVuc3B1bmt0ZSB1bmQgMTM2IE1hZ2llcHVua3RlLgogIERlciBCcnVkZXIgZGVzIFNjaHdlcnRtZWlzdGVycyBncmVpZnQgRGljaCBtaXQgZGVtIFNjaHdlcnQgYW4uCiAgRHUgdmVyc3VjaHN0LCBkZW4gQW5ncmlmZiBtaXQgZWluZW0gR3lha3UtbWF3YXNoaS1vdG9zaGkta2FrYXRvLXVrZQphYnp1d2VocmVuLgpEdSBoYXN0IGpldHp0IDM1IExlYmVuc3B1bmt0ZSB1bmQgMTM1IE1hZ2llcHVua3RlLgogIERlciBCcnVkZXIgZGVzIFNjaHdlcnRtZWlzdGVycyBzY2hsYWVndCBEaWNoIHp1IEJyZWkuCgpEZWluIFBhcnRuZXIgaXN0IGxlaWRlciBuaWNodCBkYSwgdW0gRGlyIGJlaXp1c3RlaGVuLgoKW1RvZDpMYXJzXSBFaW4gQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgaGF0IGdlcmFkZSBBc21vZGlzIHVtZ2VicmFjaHQuCkRlaW4gS29lcnBlciBnZWhvcmNodCBEaXIgbmljaHQgIQpEZWluIEtvZXJwZXIgZ2Vob3JjaHQgRGlyIG5pY2h0ICEKRGVpbiBLb2VycGVyIGdlaG9yY2h0IERpciBuaWNodCAhCgouLi4KClAuUy46IEJvaW5nIGlzdCBzY2h1bGQgIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQUlEUyEhIEhhdmUgV2UgQmVlbiBNaXNsZWFkPz8gKEdyaW1tYm9ybiwgMzEuIEF1ZyAxOTk3LCAxOToyNTo0Mik6Cn4jISBvbj1MdWcgb3Q9ODcyOTYxNzM2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1HdW5kdXIgcnQ9ODcwNjA2NTM2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODcwNTQ0ODgyCkh1aHUgR3VuZHVyLAoKaXNtaXJkb2NoZWdhbC4KCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKkFldWdsZWluIHJlaWIqIChDYXJhZGhyYXMsIDMxLiBBdWcgMTk5NywgMTk6NTg6NTQpOgpEYXMgaXN0IHNlaHIgbWVya3d1ZXJkaWc6IEluIGRpZXNlbSBSYXVtIGlzdCBrZWluZSBlaW56aWdlIExlaWNoZSEKTm9jaCBuaWNodG1hbCBlaW4ga2xlaW5lciBGaW5nZXIgb2RlciBlaW4gU3R1ZWNrIEhpcm4hCldlbm4gSElFUiBrZWluZXIgdmVyc3RvcmJlbiBpc3QgLSB3byBkYW5uPwpFcyBnaWJ0IHZpZWxlIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBvYmVuLCB1bnRlbiwgc3VlZHdlc3Rlbiwgc3VlZGVuLAp3ZXN0ZW4sIG5vcmRlbiwgbm9yZHdlc3Rlbiwgbm9yZG9zdGVuIHVuZCBzdWVkb3N0ZW4uCkRob2pha3Qgd2FybnQ6IERpZSBMZXV0ZSBpbiBPaG9ydCBsZWJlbiBnZWZhZWhybGljaCEuCkRpZSBMZWljaGUgZWluZXMgU2NobGFlY2h0ZXJzLgoKKnN0YXVuKiBJc3QgZGFzIGtlaW5lIExlaWNoZT8gKmtyYXR6IHZlcndpcnJ0KgoKICAgICAgICAgIEJlcmdjaGVuIENhcmFkaHJhcyAtIGVyb2RpZXJ0IHZvciBsYXV0ZXIgU3RhdWIgdm9tIHZlcndpcnJ0c2VpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVlciBHcmltbWJvcm4gb25seSAoR3JpbW1ib3JuLCAzMS4gQXVnIDE5OTcsIDIyOjI1OjMyKToKfiMhIG9uPUx1cHVzIG90PTg3MzA1ODg4NSBvZz1kaXNrdXNzaW9uCkx5Y2FyIGxhZWNoZWx0LgotLS0tIFJlY2FsbCBzdGFydCAtLS0tCnNvd2llIDIxMCBMZWJlbnNwdW5rdGUsIDIyNiBNYWdpZXB1bmt0ZSB1bmQgMTI5MjI1MiBFcmZhaHJ1bmdzcHVua3RlLgpEdSBiZWZpbmRlc3QgRGljaCBhdWYgZGVyIFNwaWVsZXJzdHVmZSAyNi4KRGVpbmUgQXR0cmlidXRlIHNlaGVuIHNvIGF1czoKSW50ZWxsaWdlbno6IDIwICgrMykgQXVzZGF1ZXI6IDIwICgrMSkgS3JhZnQ6IDE2ICBHZXNjaGlja2xpY2hrZWl0OiAxMyAoKzIpClZvcnNpY2h0LU1vZHVzICgzMCksIEZsdWNodHJpY2h0dW5nICJ1IgpBbHRlcjogIDEyIFRhZ2UgNSBTdHVuZGVuIDQxIE1pbnV0ZW4gNTYgU2VrdW5kZW4uCkRlaW4gQ2hhcmFrdGVyIGlzdCBuZXR0LgpEdSBsZWlkZXN0IG5vY2ggdW50ZXIgZGVuIEZvbGdlbiBEZWluZXMgbGV0enRlbiBUb2Rlcy4KVmVyZ2xpY2hlbiBtaXQgRGVpbmVuIE1pdHNwaWVsZXJuLCBrZW5uc3QgRHUgRGljaCBpbSBNb3JnZW5HcmF1ZW4gc2NobGVjaHQKYXVzLgpBYnNvbHV0IGdlc2VoZW4gc29sbHRlc3QgRHUgRGljaCB2aWVsbGVpY2h0IG5vY2ggZ2VuYXVlciB1bXNlaGVuLgo+IER1IGhvZXJzdCBkaWUgR2xvY2tlbiBkZXIgS2FwZWxsZSBpbiBkZXIgVW50ZXJ3ZWx0LgpBZHNvbiB1bmQgTHVwdXMgd29sbGVuIGhlaXJhdGVuLgpEaWUgR2xvY2tlbiBsYWV1dGVuLgpEdSBmcmV1c3QgRGljaC4KPiBMeWNhciBrbGF0c2NodCBpbiBkaWUgSGFlbmRlLgpXYWZmZW46CiBFaW4gTGFuZ3NjaHdlcnQgKGdlenVlY2t0KS4KUnVlc3R1bmdlbjoKIEVpbiBzaWxiZXJuZXIgUmluZyAoYW5nZXpvZ2VuKS4gICAgICAgIEVpbiBMaWNodHBhbnplciAoYW5nZXpvZ2VuKS4KIEVpbiBQYWFyIExlZGVybW9rYXNzaW5zIChhbmdlem9nZW4pLiAgIEVpbiBGdXNzcmluZyAoYW5nZXpvZ2VuKS4KIEVpbiBMaWNodGhlbG0gKGFuZ2V6b2dlbikuICAgICAgICAgICAgClZlcnNjaGllZGVuZXM6CiBFaW5lIERpZGRsLUtudWRkZWwtTWF1cy4gICAgICAgICAgICAgICBFaW5lIFd1bmRlcmxhbXBlLgogRWluIEZyZXVuZHNjaGFmdHNiYW5kIChnZXRyYWdlbikuICAgICAgRWluIFNpZWdlbC4KIDU1MDM5IE11ZW56ZW4uICAgICAgICAgICAgICAgICAgICAgICAgIEVpbiBBYmVudGV1ZXJ0YWdlYnVjaC4KIEx1cHVzJyBUZWRkeWJhZXIgTGludXMuICAgICAgICAgICAgICAgIERpZSBaZWl0dW5nLgo+IEFkc29uIGZyZXV0IHNpY2guCkFkc29uIGp1YmVsdC4KTHljYXIgbGFlY2hlbHQuCi0tLS0gUmVjYWxsIGVuZCAtLS0tCkRpZSBHbG9ja2VuIGRlciBLYXBlbGxlIGluIGRlciBVbnRlcndlbHQgbGFldXRlbi4KQWRzb24gc2FndDogSGV5LCB3ZW5uIGljaCBlaW5lbiBTZWhlciBoZWlyYXRlLCBrYW5uIGljaCBqYSBhdWNoIGVudGZ1ZWhydGUKQWRzb24gc2FndDogd2VyZGVuLi4uOikKU3RlaW5pIGZyYWd0IGVpbmVuIFByaWVzdGVyIG5hY2ggU2NoZWlkdW5nLgpFaW4gUHJpZXN0ZXIgc2FndDogSWhyIHNvbGx0ZXQgRXVjaCBkYXMgdm9yIGRlciBIb2NoemVpdCB1ZWJlcmxlZ2VuLgpOYXR1ZXJsaWNoCmthbm4gbWFuIHNpY2ggYXVzZWluYW5kZXIgbGViZW4gdW5kIGRhbWl0IGVpbmUgU2NoZWlkdW5nIGJlcmVjaHRpZ3QKc2Vpbi4gQWJlciBpbSBNb21lbnQgZ2lidCBlcyBub2NoIGtlaW5lIFNjaGVpZHVuZyBpbiBNRy4KWndpbGxpbmcga2l0emVsdCBFc2N1YmFyIGFuIHNlaW5lbSBLaW5uLgpFc2N1YmFyIHZlcnN1Y2h0LCBzaWNoIHp1IGJlaGVycnNjaGVuLCBtdXNzIGFiZXIgZG9jaCBsYWNoZW4uCkFuYXRvbCByYWV1bXQgYXVmIGltIGZpbnN0cmVuIFJlaWNoLgpBbmF0b2wgaHVzdGV0IHNpY2ggZmFzdCBkaWUgU2VlbGUgYXVzIGRlbSBMZWliLgpEdSBzYWdzdDogdHNldHNlLCBTdGVpbmkuCj4gRGllIFBmb3J0ZSB3aXJkIGdlc2NobG9zc2VuLgpEZXIgUHJpZXN0ZXIgc2FndDogU2VociBnZWVocnRlIEFud2VzZW5kZSwKRGVyIFByaWVzdGVyIHNhZ3Q6IHdpciBzaW5kIGhldXRlIGhpZXIgenVzYW1tZW5nZWtvbW1lbiwgdW0gZGllIEhvY2h6ZWl0CkRlciBQcmllc3RlciBzYWd0OiB2b24gTHVwdXMgdW5kIEFkc29uIHp1IGZlaWVybi4KQW5hdG9sIHNhZ3Q6IEhleSwgZG9jaCBuaWNodCBvaG5lIG1pY2ggOikKU3RlaW5pIGdyaW5zdC4KTWluZGJsYWRlIGJsaXR6dCBoZXJlaW4uCkFuYXRvbCBrbnVkZGVsdCBEaWNoLgo+THljYXIga3JhdWx0IEVzY3ViYXIgZGFzIEVpc2JhZXJmZWxsClR1dHN6dCBzY2hsZWljaHQgYmx1dGdpZXJpZyBoZXJlaW4uCktob3JhayByb2xsdCBoZXJlaW4uCkFuYXRvbCB2ZXJ3dXNjaGVsdCBBZHNvbnMgSGFhcmUuClNoYWRlIGtvbW10IGFuLgpFc2N1YmFyIGdyaW5zdCBlaXNiYWVyaWcuClNoYWRlIGdyaW5zdC4KU3RlaW5pIHNhZ3Q6IHdhciBqYSBibG9zcyBuYSBmcmFnZSAuLi4KTmFjaHR3aW5kIHN0dWVybXQgcmVpbiB1bmQgc2NocmVpdDogTm9vb2JvZHkgZXhwZWN0cyB0aGUgU3BhbmlzaCBJbnF1aXNpdGlvbiEuClNoYWRlIGtudWRkZWx0IE5hY2h0d2luZCwgS2hvcmFrLCBUdXRzenQsIE1pbmRibGFkZSwgQW5hdG9sLCBad2lsbGluZywKRXNjdWJhciwgU3RlaW5pLCBHcmltbWJvcm4sIEx5Y2FyLCBBZHNvbiwgRGljaCB1bmQgZWluZW4gUHJpZXN0ZXIuCk5hY2h0d2luZCBzYWd0OiBlaW5zcHJ1Y2ghCkRlciBQcmllc3RlciBkcmVodCBzaWNoIHp1bSBBbHRhci4KUHJpZXN0ZXIgb2VmZm5ldCBkYXMgQnVjaCBkZXIgTGllYmVuZGVuLgpEZXIgUHJpZXN0ZXIgc3R1ZGllcnQgZGFzIEJ1Y2ggZGVyIExpZWJlbmRlbi4KTmFjaHR3aW5kIGtudWRkZWx0IFNoYWRlLCBLaG9yYWssIFR1dHN6dCwgTWluZGJsYWRlLCBBbmF0b2wsIFp3aWxsaW5nLApFc2N1YmFyLCBTdGVpbmksIEdyaW1tYm9ybiwgTHljYXIsIEFkc29uLCBEaWNoIHVuZCBlaW5lbiBQcmllc3Rlci4KRXNjdWJhciBzYWd0OiBFaW5zcHJ1Y2ghClN0ZWluaSBzYWd0OiBlaXNwcnVuZyAKTWluZGJsYWRlIHNhZ3Q6IGVpbnNwcnVjaApBZHNvbiBrbnVkZGVsdCBBbmF0b2wuCkVzY3ViYXIgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uClNoYWRlIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCkRlciBQcmllc3RlciBzYWd0OiBEYSBrZWluZXIgdm9uIGJlaWRlbiBpbSBCdWNoIGRlciBMaWViZW5kZW4gc3RlaHQsCkRlciBQcmllc3RlciBzYWd0OiB1bmQgZGVyIE1hZ2llciBHcmltbWJvcm4gZGllIEVoZSBiZWZ1ZXJ3b3J0ZXQsCkRlciBQcmllc3RlciBzYWd0OiBzdGVodCBkZXIgRWhlc2NobGllc3N1bmcgbmljaHRzIG1laHIgaW0gV2VnLgpEZXIgUHJpZXN0ZXIgc2FndDogRXMgc2VpbiBkZW5uLCBlaW5lciBkZXIgQW53ZXNlbmRlbiBoYXQgZWluZW4gRWluc3BydWNoLgpEZXIgUHJpZXN0ZXIgc2FndDogSXN0IGRlbSBzbywgc28gc2FnZSBlciBudW4gJ0VpbnNwcnVjaCcgb2RlciBzY2h3ZWlnZQpEZXIgUHJpZXN0ZXIgc2FndDogZnVlciBpbW1lci4KTWluZGJsYWRlIHNhZ3Q6IGVpbnNwcnVjaApBZHNvbiBrbnVkZGVsdCBTaGFkZS4KU2hhZGUgaGF0IGdlcmFkZSBkaWUgVmVyYmluZHVuZyB6dSBNb3JnZW5HcmF1ZW4gZ2VrYXBwdC4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFNoYWRlLgpLaG9yYWsgendpbmtlcnQuCktob3Jha3MgS29lcnBlciBmYWVuZ3QgYW4genUgc2NoaW1tZXJuLgpFc2N1YmFyIHNhZ3Q6IEVpbnNwcnVjaApBbmF0b2wgc2FndDogRnJlaXNwcnVjaCEKTmFjaHR3aW5kIHNhZ3Q6IGVpbnNwcnVjaCEKU3RlaW5pIGdlaHQgbmFjaCBIYXVzZS4KU3RlaW5pICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpNaW5kYmxhZGUgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uClNoYWRlIHdlaWx0IHdpZWRlciB1bnRlciBkZW4gTGViZW5kZW4uCkdvbiBmbGF0dGVydCBoZXJlaW4uCkdvbiBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIEFuYXRvbCwgRXNjdWJhciwgR3JpbW1ib3JuLCBBZHNvbiwKR29uIGtyYWVjaHp0OiBMdXB1cyB1bmQgZWluIFByaWVzdGVyIC4uLgpNaW5kYmxhZGUgaGF0IGdlcmFkZSBkaWUgVmVyYmluZHVuZyB6dSBNb3JnZW5HcmF1ZW4gZ2VrYXBwdC4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIE1pbmRibGFkZS4KRHUgc2Fnc3Q6IEljaCBzdGVoZSBkb2NoIGltIEJ1Y2ggZGVyIExpZWJlbmRlbi4uLgpEdSBncnVlYmVsc3QgZWluZSBXZWlsZSB2b3IgRGljaCBoaW4uCj4gU3RlaW5pICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClNoYWRlIGdydWViZWx0IGVpbmUgV2VpbGUgdm9yIHNpY2ggaGluLgpNaW5kYmxhZGUgYmxpdHp0IGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgpEZXIgUHJpZXN0ZXIgc2FndDogTmFjaGRlbSBrZWluZXIgZGVyIEFud2VzZW5kZW4gZWluZW4gRWluc3BydWNoIGhhdCwgZnJhZ2UKRGVyIFByaWVzdGVyIHNhZ3Q6IGljaCBkYXMgQnJhdXRwYWFyIGVpbnplbG4sIG9iIFNpZSBkZW4gYW5kZXJlbiBoZWlyYXRlbgpEZXIgUHJpZXN0ZXIgc2FndDogd29sbGVuLiBBbnR3b3J0ZXQgYXVmIGRpZSBGcmFnZSBtaXQgJ0phJy4KRXNjdWJhciBzYWd0OiBBZHNvbiBzdGVodCBpbSBCdWNoLCBkZXIgbHVlZ3QgZGVyIFByaWVzdGVyIDspCkFuYXRvbCB0YWV0c2NoZWx0IERpciBkZW4gS29wZi4KRXNjdWJhciBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgRXNjdWJhci4KRXNjdWJhciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKU3RlaW5pIGtvbW10IGF1ZiBlaW5lbSBtYWdpc2NoZW4gV2VnLgpHb24ga3JhZWNoenQ6IC4uLiBrcnJyb29vYWFhIC4uLiBIYWxsbyBTdGVpbmkgLi4uCk5hY2h0d2luZCBncmluc3QuCkFuYXRvbCBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgQW5hdG9sLgpBbmF0b2wgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkFuYXRvbCB3ZWlsdCB3aWVkZXIgdW50ZXIgZGVuIExlYmVuZGVuLgpBbmF0b2wgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKR2xvZWNrY2hlbiB0aXBwZWx0IGhlcmVpbi4KRGVyIFByaWVzdGVyIGZyYWd0OiBXaWxsc3QgRHUsIEx1cHVzLCBkaWUgaGllciBhbndlc2VuZGUgQWRzb24genUKRGVyIFByaWVzdGVyIGZyYWd0OiBEZWluZXIgRnJhdSBuZWhtZW4sIHNvIGFudHdvcnRlICdKYSc/IApHb24ga3JhZWNoenQ6IC4uLiBrcnJyb29vYWFhIC4uLiBIYWxsbyBHbG9lY2tjaGVuIC4uLgpEdSBzYWdzdDogQWVoLG1laW5lIEFkc29uIHN0ZWh0IGRyaW4uLi4KPiBHb24ga3JhZWNoenQ6IC4uLiBBZWgsbWVpbmUgQWRzb24gc3RlaHQgLi4uIEFlaCxtZWluZSBBZHNvbiBzdGVodCAuLi4KU2hhZGUgc2FndDogZ29uLCBoYWx0cyBtYXVsCkVzY3ViYXIgc2NocmVpdGV0IGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgpHb24gdHV0IHNvLCBhbHMgb2IgZXIgbmljaHRzIGdlaG9lcnQgaGFldHRlLgpEdSBhbnR3b3J0ZXN0OiBKYQo+IEVzY3ViYXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKQW5hdG9sIHNhZ3Q6IGVoLCB3ZXIgZGlzY29ubmVjdGV0IG1pY2ggaGllcj8KR29uIGtyYWVjaHp0OiAuLi4gd2VyIGRpc2Nvbm5lY3RldCBtaWNoIC4uLiB3ZXIgZGlzY29ubmVjdGV0IG1pY2ggLi4uCkdvbiBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIEVzY3ViYXIgLi4uClNoYWRlIHNhZ3Q6IGdvbiwgaGFsdHMgbWF1bApBbmF0b2wgaXN0IGVyc3RhdW50LgpHb24ga3JhZWNoenQ6IC4uLiBrcnJvb2FhIC4uLiB2b24gbWlyIGF1cyAuLi4KRGFuYWNoIGRyZWh0IGVyIHNjaG1vbGxlbmQgZGVuIEtvcGYgd2VnLgpFc2N1YmFyIHRyaXR0IEdyaW1tYm9ybi4KRHUgc2Fnc3Q6IGphCj4gICBOYWNodHdpbmQgZ3JlaWZ0IGRlbiBQcmllc3RlciBtaXQgZWluZW0gTW9yZ2Vuc3Rlcm4gYW4uCiAgTmFjaHR3aW5kIHRyaWZmdCBkZW4gUHJpZXN0ZXIgc2VociBoYXJ0LgogIEVpbiBQcmllc3RlciBncmVpZnQgTmFjaHR3aW5kIGFuLgogIERlciBQcmllc3RlciB2ZXJmZWhsdCBOYWNodHdpbmQuCkRlciBQcmllc3RlciBmcmFndDogV2lsbHN0IER1LCBBZHNvbiwgZGVuIGhpZXIgYW53ZXNlbmRlbiBMdXB1cyB6dQpEZXIgUHJpZXN0ZXIgZnJhZ3Q6IERlaW5lbSBNYW5uIG5laG1lbiwgc28gYW50d29ydGUgJ0phJz8KU3RlaW5pIHNhZ3Q6IGhhc3QgRHUgbmUgbWFrZSwgZ3JpbW1ib3JuID8KTmFjaHR3aW5kIHN0ZWNrdCBlaW5lbiBNb3JnZW5zdGVybiB6dXJ1ZWNrLgpOYWNodHdpbmQgaGVidCBkaWUgSGFlbmRlIGdlbiBIaW1tZWwgdW5kIGJlc2Nod29lcnQgZWluZW4gQmxpdHogYXVmIGVpbmVuClByaWVzdGVyIGhlcmFiLgogIERlciBCbGl0eiBicmVubnQgc2ljaCBpbiBkZW4gUHJpZXN0ZXIgZWluLgpBbmF0b2wgc3ByaWNodCBlaW4gcGFhciBiZXJ1aGlnZW5kZSBXb3J0ZS4KQW5hdG9sIHN0aWZ0ZXQgRnJpZWRlbi4KTmFjaHR3aW5kIHp1ZWNrdCBlaW5lbiBNb3JnZW5zdGVybi4KRWluIGdld2FsdGlnZXIgRG9ubmVyIGVyc2NodWV0dGVydCBEZWluIFRyb21tZWxmZWxsLgpTaGFkZSBzYWd0OiBqYWphLi4uIG1pY2ggaGF0IGF1Y2ggamVtYW5kIHJhdXNnZXdvcmZlbiA6KApOYWNodHdpbmQgZ3J1bW1lbHQuCkpoZiBrb21tdCBhbi4KTmFjaHR3aW5kIGphZ3QgSGV4ZW4gdW5kIEhhZXJldGlrZXIuCkR1IHNhZ3N0OiBEYW5rZSwgQW5hdG9sLgo+IEFuYXRvbCBtYWNodCBiZXNjaHdvZXJlbmRlIEdlc3RlbiB1bSBlaW5lbiBQcmllc3RlciBoZXJ1bS4KS3VyeiBibGl0enQgZWluZSBndWVsZGVuZSBTY2h1dHphdXJhIHVtIGRlbiBQcmllc3RlciBhdWYuCkRlciBQcmllc3RlciB3YXJ0ZXQgYXVmIGVpbiAnSmEnIG9kZXIgZWluICdOZWluJyB2b24gQWRzb24uCkFkc29uIHNhZ3Q6IGphCkRlciBQcmllc3RlciBzYWd0OiBOYWNoZGVtIGJlaWRlIGRpZSBGcmFnZSBtaXQgSkEgYmVhbnR3b3J0ZXQgaGFiZW4sCkRlciBQcmllc3RlciBzYWd0OiBlcmtsYWVyZSBpY2ggZGllIGJlaWRlbiB2b3IgR290dGVzIEF1Z2VuIHp1IE1hbm4gdW5kCkRlciBQcmllc3RlciBzYWd0OiBGcmF1LgpEZXIgUHJpZXN0ZXIgc2FndDogSWhyIGR1ZXJmdCBFdWNoIGpldHp0IGt1ZXNzZW4uCkFkc29uIGFudHdvcnRldDogSmEKRHUga3Vlc3N0IEFkc29uLgpEdSBmcmV1c3QgRGljaC4KPiBFc2N1YmFyIHNhZ3Q6IERhcyBnaW5nIGphIHNjaG5lbGwgOykKS2hvcmFrIGtsYXRzY2h0IGluIGRpZSBIYWVuZGUuCkx5Y2FyIGdpYnQgZWluZSBSdW5kZSBBcHBsYXVzLgpBZHNvbiBrdWVzc3QgRGljaC4KU2hhZGUgZ3JhdHVsaWVydCBBZHNvbi4KRXNjdWJhciBncmF0dWxpZXJ0IEFkc29uLgpNaW5kYmxhZGUgZ3JhdHVsaWVydCBBZHNvbi4KRXNjdWJhciBncmF0dWxpZXJ0IERpci4KU2hhZGUgZ3JhdHVsaWVydCBEaXIuCkFkc29uIHVtYXJtdCBEaWNoLgpHcmltbWJvcm4gc2FndDogU28sIGxhc3Mgc2VoZW4uIFNvIHJ1bmQgNSBkaXNjb25uZWN0LCBlaW4gamFpbC4gR2luZyBqYQpHcmltbWJvcm4gc2FndDogbm9jaC4uLgpFc2N1YmFyIGdhZWhudCB3aWUgZWluIGdlbGFuZ3dlaWx0ZXIgRWlzYmFlcgpLaG9yYWsgZ3JhdHVsaWVydCBBZHNvbi4KR3JpbW1ib3JuIGRlciBBdGhlaXN0IHBmZWlmdCB1bnNjaHVsZGlnLgpNaW5kYmxhZGUgZ3JhdHVsaWVydCBEaXIuCktob3JhayBncmF0dWxpZXJ0IERpci4KRHUgZ3JpbnN0IEdyaW1tYm9ybiBhbi4KPiBBbmF0b2wgc2FndDogV2FzIGhhdHRlIGljaCBkZW5uIGdldGFuLCBHcmltbWk/IDopCkRlciBQcmllc3RlciBrbmlldCB2b3IgZGVtIEFsdGFyIG5pZWRlciB1bmQgYmV0ZXQuCkRlciBibGF1ZSBTdGVybiBhdWYgZGVyIFN0aXJuIGRlcyBQcmllc3RlcnMgYmVnaW5udCB6dSBsZXVjaHRlbi4KRHUgdW1hcm1zdCBHcmltbWJvcm4uCj4gU2hhZGUgZ3JpbnN0IEdyaW1tYm9ybiBhbi4KRXNjdWJhciBzYWd0OiBQZmZmZmYKU3RlaW5pIGFwcGxhdWRpZXJ0IEdyaW1tYm9ybi4KRHUgc2Fnc3Q6IERhbmtlc2Nob2VuLiA6KQo+IEVzY3ViYXIgdHJpdHQgR3JpbW1ib3JuLgpHcmltbWJvcm4gc2FndDogRWluc3BydWNoIGdlc2FndC4KRGVyIFByaWVzdGVyIHN0cmVja3QgZGllIEhhZW5kZSBSaWNodHVuZyBEZWNrZSB1bmQgaGFlbHQgcGxvZXR6bGljaAp6d2VpIFJpbmdlIGluIGRlbiBIYWVuZGVuLgpBZHNvbiBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KQW5hdG9sIHNhZ3Q6IEljaCBzYWd0ZTogRnJlaXNwcnVjaCEKTHljYXIgZ3JhdHVsaWVydCBBZHNvbi4KQWRzb24gYmVkYW5rdCBzaWNoIGJlaSBHcmltbWJvcm4uCkRlciBQcmllc3RlciBzYWd0OiBOZWhtdCBkaWVzZSBSaW5nZSBhbHMgWmVpY2hlbiBldXJlciBMaWViZS4KRGVyIFByaWVzdGVyIG5pbW10IGRpZSBIYW5kIHZvbiBMdXB1cyB1bmQgc3RlY2t0IElobSBlaW5lbiBSaW5nIGFuIGRlbgpGaW5nZXIuIERhbmFjaCBncmVpZnQgZXIgbmFjaCBkZXIgSGFuZCB2b24gQWRzb24gdW5kIHN0ZWNrdCBJaHIgZGVuCmFuZGVyZW4gUmluZyBhbiBkZW4gRmluZ2VyLgpEZXIgUHJpZXN0ZXIgc2FndDogQmVodWV0ZXQgZGllc2VuIFJpbmcgc2VociwgZGVubiBlciBrYW5uIEV1Y2ggZWluaWdlCkRlciBQcmllc3RlciBzYWd0OiBndXRlIERpZW5zdGUgZXJ3ZWlzZW4uCkFuYXRvbCBmcmFndCBHcmltbWJvcm46IE5hY2ggYnJpbGxlPwpKZW1hbmQga25laWZ0IERpciBpbiBkaWUgSGFja2UgdW5kIHF1aWVrdCBkYWJlaS4KRGVyIFByaWVzdGVyIHdlbmRldCBzaWNoIHdpZWRlciBkZW0gQnVjaCBkZXIgTGllYmVuZGVuIHp1LgpFciB0cmFlZ3QgZGFzIG5ldWUgZ2x1ZWNrbGljaGUgUGFhciBlaW4uCkFkc29uIHVtYXJtdCBHcmltbWJvcm4uCkFuYXRvbCBodWVwZnQgdW0gR3JpbW1ib3JuIGhlcnVtLgpBZHNvbiBiZWRhbmt0IHNpY2ggYmVpIEx5Y2FyLgpTdXVwZXIgLSBTdGVpbmkgZnJhZ3QgR3JpbW1ib3JuOiBOYWNoIGdyb2Vzc2VyZW0gZm9udD8KUHJpZXN0ZXIgc2NobGllc3N0IGRhcyBCdWNoIGRlciBMaWViZW5kZW4uCkRlciBQcmllc3RlciBzYWd0OiBHZWhldCBudW4gaGluIGluIEZyaWVkZW4uCgpEZXIgUHJpZXN0ZXIgb2VmZm5ldCBkaWUgUGZvcnRlLgpHcmltbWJvcm4gc2FndDogQWNoIHdhcywgZGFzIGdpbmcgbWlyIHp1IHNjaG5lbGwgenVtIGxlc2VuLCBpY2ggaGFiIG51ciBkZW4KR3JpbW1ib3JuIHNhZ3Q6IE5hbWVuIHVuZCAic3BydWNoIiBnZWxlc2VuLiA6LSkKRHUgdW1hcm1zdCBBZHNvbi4KPiBBbmF0b2wgZGVua3QgICAuIG8gTyAoU2NobGVjaHRlIFRyaWdnZXIgOikpCkFkc29uIGt1ZXNzdCBEaWNoLgpHcmltbWJvcm4gc2FndDogQWxsZXMgdm9uIEhhbmQuCkx5Y2FyIHNhZ3Q6IEtvZW5uZW4gd2lyIGpldHp0IGRhcyBCdWZmZXQgcGx1ZW5kZXJuID8gOikKRHUgc2Fnc3Q6IERhZnVlciB3YXJzIGJlZWluZHJ1Y2tlbmQgc2NobmVsbC4gQWxpYXNlPwo+IEFkc29uIGZyYWd0OiBXZXIgaXN0IGRlbm4gaW0gamFpbCA/CkdyaW1tYm9ybiBzYWd0OiBBbHNvLCBpaHIgYmVpZGVuLCBhbGxlcyBHdXRlLiBVbmQgYmxlaWJ0IHZlcm51ZW5mdGlnLi4uCld1ciB0ZWlsdCBEaXIgbWl0OiBkdSBoZWlyYXRlc3Q/CkdyaW1tYm9ybiBncmF0dWxpZXJ0IEFkc29uLgpLaG9yYWsga251ZGRlbHQgSmhmLCBFc2N1YmFyLCBHbG9lY2tjaGVuLCBNaW5kYmxhZGUsIFN0ZWluaSwgR29uLCBTaGFkZSwKVHV0c3p0LCBBbmF0b2wsIFp3aWxsaW5nLCBHcmltbWJvcm4sIEx5Y2FyLCBBZHNvbiwgRGljaCB1bmQgZWluZW4gUHJpZXN0ZXIuCkR1IHRlaWxzdCBXdXIgbWl0OiBTY2hvbiBnZXRhbi4gOikKPiBLaG9yYWsgendpbmtlcnQuCktob3Jha3MgS29lcnBlciBmYWVuZ3QgYW4genUgc2NoaW1tZXJuLgpHcmltbWJvcm4gZ3JhdHVsaWVydCBEaXIuCktob3JhayB3aW5rdC4KQWRzb24gYmVkYW5rdCBzaWNoIGJlaSBHcmltbWJvcm4uCktob3JhayByb2xsdCBuYWNoIFdlc3Rlbi4KRHUgdmVybmVpZ3N0IGRpY2ggdm9yIEFkc29uLgo+IEpoZiBncmF0dWxpZXJ0IEFkc29uLgpOYWNodHdpbmQgc3R1ZXJtdCByZWluIHVuZCBzY2hyZWl0OiBOb29vYm9keSBleHBlY3RzIHRoZSBTcGFuaXNoIElucXVpc2l0aW9uIS4KRHUgdmVybmVpZ3N0IGRpY2ggdm9yIEdyaW1tYm9ybi4KPiBNaW5kYmxhZGUgYmxpdHp0IG5hY2ggV2VzdGVuLgpMeWNhciBncmF0dWxpZXJ0IERpci4KU2hhZGUgbXVzcyBsZWlkZXIgc2Nob24gd2llZGVyIHdlZy4KVHV0c3p0IHdpdHRlcnQgQmx1dCB1bmQgc2NobGVpY2h0IGRhdm9uLgpTdGVpbmkgZ3JhdHVsaWVydCBEaXIuClNoYWRlIHZlcm5laWd0IHNpY2ggdm9yIEFkc29uLgpOYWNodHdpbmQgZmFlbmd0IGZ1ZXJjaHRlcmxpY2ggYW4genUgZmx1Y2hlbi4KR3JpbW1ib3JuIG5pY2t0IERpciB6dS4KRHUgdW1hcm1zdCBBZHNvbi4KPiBKaGYgZ3JhdHVsaWVydCBEaXIuClNoYWRlIHdpbmt0LgpTaGFkZSBnZWh0IG5hY2ggV2VzdGVuLgpEdSB1bWFybXN0IFN0ZWluaS4KPiBHb24gZmxhdHRlcnQgU2hhZGUgaGludGVyaGVyLgpOYWNodHdpbmQgZ3JhdHVsaWVydCBBZHNvbi4KV3VyIHRlaWx0IERpciBtaXQ6IHdoYWghIHdlbGNoIGZlaGxlciEgZ3JpbnMuLi4gaGV6bGljaGVuIEdsdWNrc3RydW1wZiEKR3JpbW1ib3JuIHNhZ3Q6IE5hdHVlcmxpY2ggaGFiIGljaCBhbGlhc2UgZnVlciBkaXNjb25uZWN0ZW4uLi4KU3RlaW5pIGdyYXR1bGllcnQgQWRzb24uCkR1IGdyaW5zdCBXdXIgYXVzIGRlciBGZXJuZSBhbi4KPiBTdGVpbmkgdW1hcm10IERpY2guCkR1IGdyaW5zdC4KPiBBZHNvbiB1bWFybXQgRGljaCB6YWVydGxpY2guClN0ZWluaSB1bWFybXQgQWRzb24uCkFuYXRvbCBkZW5rdCAgIC4gbyBPIChGUkFVRU4hKQpCZWF1dHkga29tbXQgYW4uCk5hY2h0d2luZCBncmF0dWxpZXJ0IERpci4KQW5hdG9sIHRhZXRzY2hlbHQgRGlyIGRlbiBLb3BmLgpEdSBzYWdzdDogT2J3b2hsLG0gc28gZWluIHBsIHggZGlzY28gaXN0IGF1Y2ggc28gcmVjaHQgZmxvdHQuCj4gQWRzb24ga251ZGRlbHQgQW5hdG9sLgpTdGVpbmkgc2FndDogaGFidCBpaHIgZWlnZW50bGljaCBlaW5lbiAgZWhldmVydHJhZyA/Ckx5Y2FyIHNhZ3Q6IFVuZCBoYWJ0IElociAyIEJlaWRlIGRlbm4gc2Nob24gUGxhZW5lIGZ1ZXIgZGllIEhvY2h6ZWl0c3JlaXNlID8KTHljYXIgc2FndDogOikKQW5hdG9sIGZyYWd0IERpY2g6IFdlciBpc3QgamV0enQgZWlnZW50bGljaCBFcnN0aWU/CkR1IHNhZ3N0OiBoZWgsIGljaCBiaW4gbmljaHQgZGVpIEZyYXUuCkR1IHNhZ3N0OiBOb2UsIHdpciBoYWJlbiBkZW4gZ2VzZXR6bGljaGVuIEd1ZXRlcnN0YW5kLgo+IEJlYXV0eSBzYWd0OiA8SGljaz4hClN0ZWluaSBncnVlYmVsdCBlaW5lIFdlaWxlIHZvciBzaWNoIGhpbi4KQmVhdXR5IGdlaHQgbmFjaCBXZXN0ZW4uCkFkc29uIHNhZ3Q6IEhtbW0sIFNjaHJlY2tlbnNwaXR6ZSBvZGVyIFZMIGtsaW5ndCBkb2NoIHJvbWFudGlzY2ggOikKR3JpbW1ib3JuIHNhZ3Q6IGRpcyBwbGF5ZXIgaXN0IHNjaG5lbGxlci4KRHUgYW50d29ydGVzdDogV2Vpc3MgaWNoIGF1Y2ggbmljaHQgc28gZ2VuYXUuCkR1IG5pY2tzdCBHcmltbWJvcm4genUuCkR1IGZhZW5nc3QgYW4genUgd3Vlcmdlbi4KPiBBZHNvbiBrbnVkZGVsdCBEaWNoIGluIEdydW5kIHVuZCBCb2Rlbi4KRHUga3VzY2hlbHN0IERpY2ggYW4gQWRzb24gYW4uCj4gQW5hdG9sIGtvbnplbnRyaWVydCBzaWNoIGF1ZiBldHdhcy4KUGxvZXR6bGljaCB3aXJkIGVzIGR1bmtsZXIuCkdyaW1tYm9ybiBob2ZmdCwgc2ljaCBuaWNodCBlaW5lbiBGUCBlaW5nZWZhbmdlbiB6dSBoYWJlbi4gSVN0IGphClNwaWVsZXJnZWdlbmQgaGllci4uLgpBbmF0b2wga29uemVudHJpZXJ0IHNpY2ggYXVmIGV0d2FzLgpQbG9ldHpsaWNoIHdpcmQgZXMgZHVua2xlci4KQW5hdG9sIGtvbnplbnRyaWVydCBzaWNoIGF1ZiBldHdhcy4KUGxvZXR6bGljaCB3aXJkIGVzIGR1bmtsZXIuCkR1IGtpY2hlcnN0LiAoV2llIGFsYmVybiB2b24gRGlyKQo+IEFuYXRvbCBrb256ZW50cmllcnQgc2ljaCBhdWYgZXR3YXMuClBsb2V0emxpY2ggd2lyZCBlcyBkdW5rbGVyLgpEZWluIE5hbWUgaXN0ICJMdXB1cyBkZXIgV29sZi4iCkR1IGhhc3QgZ2VudWcgU3R1ZmVucHVua3RlIGZ1ZXIgU3R1ZmUgMjUgdW5kIDE1NjAgKDIyMDgpIEFiZW50ZXVlcnB1bmt0ZSwKRVAtRGlmZmVyZW56IGlzdCAwCnNvd2llIDIxMCBMZWJlbnNwdW5rdGUsIDIyNiBNYWdpZXB1bmt0ZSB1bmQgMTI5MjI1MiBFcmZhaHJ1bmdzcHVua3RlLgpEdSBiZWZpbmRlc3QgRGljaCBhdWYgZGVyIFNwaWVsZXJzdHVmZSAyNi4KRGVpbmUgQXR0cmlidXRlIHNlaGVuIHNvIGF1czoKSW50ZWxsaWdlbno6IDIwICgrMykgQXVzZGF1ZXI6IDIwICgrMSkgS3JhZnQ6IDE2ICBHZXNjaGlja2xpY2hrZWl0OiAxMyAoKzIpClZvcnNpY2h0LU1vZHVzICgzMCksIEZsdWNodHJpY2h0dW5nICJ1IgpBbHRlcjogIDEyIFRhZ2UgNSBTdHVuZGVuIDQ4IE1pbnV0ZW4gNTggU2VrdW5kZW4uCkRlaW4gQ2hhcmFrdGVyIGlzdCBuZXR0LgpEdSBsZWlkZXN0IG5vY2ggdW50ZXIgZGVuIEZvbGdlbiBEZWluZXMgbGV0enRlbiBUb2Rlcy4KVmVyZ2xpY2hlbiBtaXQgRGVpbmVuIE1pdHNwaWVsZXJuLCBrZW5uc3QgRHUgRGljaCBpbSBNb3JnZW5HcmF1ZW4gc2NobGVjaHQKYXVzLgpBYnNvbHV0IGdlc2VoZW4ga2VubnN0IER1IG51ciB3ZW5pZyB2b20gTW9yZ2VuR3JhdWVuLgo+IE5hY2h0d2luZCBncmluc3QgR3JpbW1ib3JuIGFuLgpBbmF0b2wgZGVua3QgICAuIG8gTyAoc28gOikpCj5MeWNhciBncmluc3QgR3JpbW1ib3JuIGFuCkplbWFuZCBrbmVpZnQgRGlyIGluIGRpZSBIYWNrZSB1bmQgcXVpZWt0IGRhYmVpLgpBbmF0b2wgYmV1Z3Qgc2ljaCB6dSBzZWluZXIgTWF1cyBoaW51bnRlciB1bmQgZmx1ZXN0ZXJ0IGlociBldHdhcyBpbnMgT2hyLgpHbG9lY2tjaGVuIGdlaHQgbGFuZ3NhbSBhdWYgR3JpbW1ib3JuIHp1IHVuZCBibGVpYnQga3VyeiB2b3IgaWhtIHN0ZWhlbi4gU2llCnp1cGZ0IHNpY2gga3VyeiBlaW4gd2VuaWcgYW4gZGVuIEJhcnRoYWFyZW4gdW5kIGdlaHQgZGFubiBub2NoIG5hZWhlci4gQW4KR3JpbW1ib3JucyBCZWluIGFuZ2Vrb21tZW4sIHN0dXBzdCBzaWUga3VyeiBtaXQgaWhyZXIgTmFzZSBkYWdlZ2VuIHVuZCBzY2hhdXQKR3JpbW1ib3JuIHN0cmFobGVuZCBhbi4gRGFuYWNoIHJlaWJ0IHNpZSBzYW5mdCB1bmQgbGllYmV2b2xsIGlociBrbGVpbmVzCk1hZXVzZW5hZXNjaGVuIGFuIHNlaW5lbSBGdXNzLiBTY2hsaWVzc2xpY2ggaHVlcGZ0IHNpZSBmcmV1bmRsaWNoIHF1aWVrZW5kCndpZWRlciB6dSBBbmF0b2wgenVydWVjay4gRHUga2FubnN0IHNlaGVuLCB3aWUgR3JpbW1ib3JuIFRyYWVuZW4gZGVyIFJ1ZWhydW5nCmluIGRpZSBBdWdlbiBzdGVpZ2VuLgpLaG9yYWsgcm9sbHQgaGVyZWluLgpLaG9yYWsgdGFuenQgc2luZ2VuZCBpbSBLcmVpcy4KS2hvcmFrIHp3aW5rZXJ0LgpLaG9yYWtzIEtvZXJwZXIgZmFlbmd0IGFuIHp1IHNjaGltbWVybi4KQWRzb24gbWFjaHQgZWluZSBtYWdpc2NoZSBCZXdlZ3VuZy4KQWRzb24gbWFjaHQgZWluZSBtYWdpc2NoZSBCZXdlZ3VuZy4KU3RlaW5pIHNhZ3Q6IHNvIGljaCBnZWggamV0enQgd2llZGVyCkR1IHdpbmtzdCBTdGVpbmkgenUuCj4gU3RlaW5pIHNhZ3Q6IHdlcmRldCBnbHVlY2tsaWNoIGlociBiZWlkZQpBZHNvbiAtIERpZSBUcmF1a2FwZWxsZSBkZXIgTmliZWx1bmdlbiAKU3RlaW5pIC0gRGllIFRyYXVrYXBlbGxlIGRlciBOaWJlbHVuZ2VuIAo+IFN0ZWluaSB3aW5rdCBEaXIgenUuCkx5Y2FyIGJldWd0IHNpY2ggaGludW50ZXIgdW0gZGllIE1hdXMgenUgc3RyZWljaGVsbiwgZG9jaCBHbG9lY2tjaGVuIGVudHdpc2NodAppaG0uIFNjaGxpZXNzbGljaCBnaWJ0IEx5Y2FyIGVudG5lcnZ0IGF1Zi4KRWlzaSBrb21tdCBhbi4KQWRzb24gdGVpbHQgRGlyIG1pdDogV2FzIGlzdCBtaXQgZWluZW0gVGl0ZWwgYWxzIEhvY2h6ZWl0c2dlc2NoZW5rID8KU3RlaW5pIHdpbmt0IEFkc29uIHp1LgpMeWNhciBiZXVndCBzaWNoIGhpbnVudGVyIHVtIGRpZSBNYXVzIHp1IGtudWRkZWxuIChkdW1tZSBJZGVlLCBkaWUgTWF1cyBpc3QKZG9jaCBlaCB2aWVsIHp1IGtsZWluISksIGRvY2ggR2xvZWNrY2hlbiBlbnR3aXNjaHQgaWhtLiBTY2hsaWVzc2xpY2ggZ2lidApMeWNhciBlbnRuZXJ2dCBhdWYuClN0ZWluaSBnZWh0IG5hY2ggSGF1c2UuCktob3JhayByb2xsdCBuYWNoIFdlc3Rlbi4KRHUgdGVpbHN0IEFkc29uIG1pdDogSWNoIGthbm4ga2VpbmUgVGl0ZWwgc2V0emVuLiA6KQpEdSBzdGVoc3QgaW4gZGVyIFRyYXVrYXBlbGxlIGRlciBOaWJlbHVuZ2VuLgpIaWVyIGZpbmRlbiBkaWUgSG9jaHplaXRlbiB2b24gTW9yZ2VuR3JhdWVuIHN0YXR0LiBXZW5uIER1IGF1Y2gKaGVpcmF0ZW4gd2lsbHN0LCBzbyBmcmFnZSBkZW4gUGZhcnJlciB1ZWJlciBkaWUgSG9jaHplaXQgYXVzLgpEaWUgS2FwZWxsZSBlcnN0cmFobHQgaW0gS2VyemVuc2NoZWluLiBJbSBPc3RlbiBkZXIgS2FwZWxsZSBiZWZpbmRldCAKc2ljaCBkZXIgQWx0YXIgdW5kIGRhcyBHb3R0ZXN6ZWljaGVuLiBXYXMgYXVmZmFlbGx0IGlzdCwgZGFzcyBlcyBoaWVyCmtlaW5lIEJhZW5rZSBnaWJ0LCB3aWUgZXMgc29uc3QgaW4gR290dGVzaGFldXNlcm4gdWVibGljaCBpc3QuCk5hY2ggV2VzdGVuIGZ1ZWhydCBlaW4gZ3Jvc3NlcyBQb3J0YWwgenVtIFZvcnBsYXR6LgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogd2VzdGVuLgpFaXNpIGRlciBLcmllZ2VyIGRlcyBDaGFvcy4KTmFjaHR3aW5kIGRlciBJbnF1aXNpdG9yIGRlciBLYW5kcmkuCkpoZiBkZXIgS2FyYXRlLUthZW1wZmVyLCAzLiBEYW4uCkVpc2JhZXIgRXNjdWJhciBpc3QgdmVyZ251ZWd0IHVuZCBzcHJpbmd0IHVtaGVyLgpFaW5lIE1hdXMgbmFtZW5zIEdsb2Vja2NoZW4uClR1cnRsZWd1YXJkIEFuYXRvbC4KR3JpbW1ib3JuIGRlciBBdGhlaXN0IHdpbGwgZGFzIE1lZXIgc2VoZW4uCkx5Y2FyIGRlciBGZWxka2FlbXBmZXIuCkFkc29uIHN1Y2h0IGlocmVuIFBhdWwuCkRlciBQcmllc3RlciBhdXMgZGVyIFRyYXVrYXBlbGxlLgpEZWluIE5hbWUgaXN0ICJMdXB1cyBkZXIgV29sZi4iCkR1IGhhc3QgZ2VudWcgU3R1ZmVucHVua3RlIGZ1ZXIgU3R1ZmUgMjUgdW5kIDE1NjAgKDIyMDgpIEFiZW50ZXVlcnB1bmt0ZSwKRVAtRGlmZmVyZW56IGlzdCAwCnNvd2llIDIxMCBMZWJlbnNwdW5rdGUsIDIyNiBNYWdpZXB1bmt0ZSB1bmQgMTI5MjI1MiBFcmZhaHJ1bmdzcHVua3RlLgpEdSBiZWZpbmRlc3QgRGljaCBhdWYgZGVyIFNwaWVsZXJzdHVmZSAyNi4KRGVpbmUgQXR0cmlidXRlIHNlaGVuIHNvIGF1czoKSW50ZWxsaWdlbno6IDIwICgrMykgQXVzZGF1ZXI6IDIwICgrMSkgS3JhZnQ6IDE2ICBHZXNjaGlja2xpY2hrZWl0OiAxMyAoKzIpClZvcnNpY2h0LU1vZHVzICgzMCksIEZsdWNodHJpY2h0dW5nICJ1IgpBbHRlcjogIDEyIFRhZ2UgNSBTdHVuZGVuIDUwIE1pbnV0ZW4gMTggU2VrdW5kZW4uCkRlaW4gQ2hhcmFrdGVyIGlzdCBuZXR0LgpEdSBsZWlkZXN0IG5vY2ggdW50ZXIgZGVuIEZvbGdlbiBEZWluZXMgbGV0enRlbiBUb2Rlcy4KVmVyZ2xpY2hlbiBtaXQgRGVpbmVuIE1pdHNwaWVsZXJuLCBrZW5uc3QgRHUgRGljaCBpbSBNb3JnZW5HcmF1ZW4gc2NobGVjaHQKYXVzLgpBYnNvbHV0IGdlc2VoZW4gc29sbHRlc3QgRHUgRGljaCB2aWVsbGVpY2h0IG5vY2ggZ2VuYXVlciB1bXNlaGVuLgo+IE5hY2h0d2luZCB3aW5rdCBFaXNpLCBKaGYsIEVzY3ViYXIsIEdsb2Vja2NoZW4sIEFuYXRvbCwgR3JpbW1ib3JuLCBMeWNhciwKQWRzb24sIERpciB1bmQgZWluZW0gUHJpZXN0ZXIgenUuCk5hY2h0d2luZCBqYWd0IEhleGVuIHVuZCBIYWVyZXRpa2VyIG5hY2ggV2VzdGVuLgpMdXB1cyBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogQm9ubi4KRWluZ2Vsb2dndCBzZWl0OiBEb24sIDI4LiBBdWcgMTk5NywgMTg6MDU6MjgKVm9sbGVyIE5hbWU6IEx1cHVzIGRlciBXb2xmClJhc3NlOiBFbGYsICBHaWxkZTogQWJlbnRldXJlciwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogMTJkIDA1OjUwOjI4LCAgIFNwaWVsZXJsZXZlbDogMjYgKFNlaGVyKQpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiB2b3IgZGVtIDEwLiBOb3YgMTk5NQpWZXJoZWlyYXRldCBtaXQ6IEFkc29uCkx1cHVzIGlzdCBad2VpdHNwaWVsZXIuCkJpc2hlciBiZXJlaXRzIDE0IG1hbCBnZXN0b3JiZW4KUHJvamVrdDogb3JpZ2luZWxsIHNlaW4gKmFlY2h6KgpBZHNvbiBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogQmVybGluLgpFaW5nZWxvZ2d0IHNlaXQ6IERvbiwgMjguIEF1ZyAxOTk3LCAxODoxMToyNQpWb2xsZXIgTmFtZTogQWRzb24gc3VjaHQgaWhyZW4gUGF1bApSYXNzZTogTWVuc2NoLCAgR2lsZGU6IEFiZW50ZXVyZXIsICBHZXNjaGxlY2h0OiB3ZWlibGljaApBbHRlcjogMjJkIDE1OjM3OjAyLCAgIFNwaWVsZXJsZXZlbDogMTMKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogRGllLCAgNy4gTWFpIDE5OTYsIDE0OjU1OjMwClZlcmhlaXJhdGV0IG1pdDogTHVwdXMKQmlzaGVyIGJlcmVpdHMgNyBtYWwgZ2VzdG9yYmVuCj4gR3JpbW1ib3JuIHNhZ3Q6IFNvLCBrYW5uIGljaCBqZXR6dCBkYXMgbW9kZW0gc2Nob25lbj8gRGllIFRlbGVrb20gaXN0IHJlaWNoCkdyaW1tYm9ybiBzYWd0OiBnZW51Zy4uLgpFaXNpIHNhZ3Q6IGRlciBQcmllc3RlciBsZWJ0PwpEdSBuaWNrc3QgenVzdGltbWVuZC4KPiBHcmltbWJvcm4gZGVua3QgICAuIG8gTyAoVW5kIGljaCBwbGVpdGUgZ2VudWcuLi4gOy0pKQpBbmF0b2wgbWFjaHQgYmVzY2h3b2VyZW5kZSBHZXN0ZW4gdW0gZWluZW4gUHJpZXN0ZXIgaGVydW0uCkt1cnogYmxpdHp0IGVpbmUgZ3VlbGRlbmUgU2NodXR6YXVyYSB1bSBkZW4gUHJpZXN0ZXIgYXVmLgpBbmF0b2wgbWFjaHQgYmVzY2h3b2VyZW5kZSBHZXN0ZW4gdW0gR3JpbW1ib3JuIGhlcnVtLgpLdXJ6IGJsaXR6dCBlaW5lIGd1ZWxkZW5lIFNjaHV0emF1cmEgdW0gR3JpbW1ib3JuIGF1Zi4KSmhmIGtudWRkZWx0IEVpc2ksIEVzY3ViYXIsIEdsb2Vja2NoZW4sIEFuYXRvbCwgR3JpbW1ib3JuLCBMeWNhciwgQWRzb24sIERpY2gKdW5kIGVpbmVuIFByaWVzdGVyLgpBbmF0b2wgbWFjaHQgYmVzY2h3b2VyZW5kZSBHZXN0ZW4gdW0gSmhmIGhlcnVtLgpLdXJ6IGJsaXR6dCBlaW5lIGd1ZWxkZW5lIFNjaHV0emF1cmEgdW0gSmhmIGF1Zi4KSmhmIHdpbmt0LgpEdSBzYWdzdDogRGFua2Ugc2VociwgR3JpbW1ib3JuLiB3YXIgZGllIFp3ZWlzY2huZWxsc3RlIEhvY2h6ZWl0IG1laW5lcwpEdSBzYWdzdDogTGViZW5zLiA6KQo+IEFuYXRvbCBtYWNodCBiZXNjaHdvZXJlbmRlIEdlc3RlbiB1bSBEaWNoIGhlcnVtLgpLdXJ6IGJsaXR6dCBlaW5lIGd1ZWxkZW5lIFNjaHV0emF1cmEgdW0gRGljaCBhdWYuCkx5Y2FyIHNhZ3Q6IEFkc29uLCBtdXNzdCBEdSBqZXR6dCBuaWNodCBEZWluZW4gTHVwdXMgc3VjaGVuIHVuZCBuaWNodCBEZWluZW4KTHljYXIgc2FndDogUGF1bCA/IDopCkFuYXRvbCBtYWNodCBiZXNjaHdvZXJlbmRlIEdlc3RlbiB1bSBBZHNvbiBoZXJ1bS4KS3VyeiBibGl0enQgZWluZSBndWVsZGVuZSBTY2h1dHphdXJhIHVtIEFkc29uIGF1Zi4KQW5hdG9sIG1hY2h0IGJlc2Nod29lcmVuZGUgR2VzdGVuIHVtIEx5Y2FyIGhlcnVtLgpLdXJ6IGJsaXR6dCBlaW5lIGd1ZWxkZW5lIFNjaHV0emF1cmEgdW0gTHljYXIgYXVmLgpHcmltbWJvcm4gZ3JpbnN0IEFkc29uIGFuLgpBZHNvbiBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KRGVpbiBGcmV1bmQgU3RlaW5pIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRGllIFNjaHV0emF1cmEgdW0gRGljaCBsb2VzdCBzaWNoIGxhbmdzYW0gYXVmLgpBZHNvbiBncmluc3QgTHljYXIgYW4uClN0ZWluaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKRHUgc2Fnc3Q6IERlbiBzdWNodCBzaWUgZG9jaCBiZWkgbWlyLCBMeWNhci4KPiBBbmF0b2wgc2FndDogSG0sIGRpZSBsYWVuZ2VyZW4gSG9jaHplaXRlbiBzaW5kIGx1c3RpZ2VyIDopCkdsb2Vja2NoZW4gdGlwcGVsdCBEaXIgendpc2NoZW4gZGVuIEJlaW5lbiBsYW5nLgpHcmltbWJvcm4gbmlja3QgRGlyIGdyaW5zZW5kIHp1LgpMeWNhciBlcnJvZXRldC4KRXNjdWJhciBuaWNrdCBBbmF0b2wgenUKRXMgd2lyZCB3aWVkZXIgaGVsbGVyLgo+QWRzb24gZmFlbmd0IGFuLCBhdWZmYWVsbGlnIGFuIEx1cHVzIGhlcnVtenVncmFiYmVsbi4KQW5hdG9sIHNhZ3Q6IEFjaCBqYSwgR3JpbW1ib3JuOiBEaWUgImVpbnNwcnVjaCItWmVpbGUgaXN0IGltIFByaWVzdGVyIHNjaG9uCkFuYXRvbCBzYWd0OiBzZWl0IGxhZW5nZXJlbSBhdXNrb21tZW50aWVydCA6KSkpCkRlaW5lIFdhbmdlbiBnbHVlaGVuLgo+IEdyaW1tYm9ybiBzYWd0OiBBYmVyIGRpZSBrdWVyemVyZW4gd2VuaWdlciBuZXJ2aWcuCkFuYXRvbCBtYWNodCBzY2huZWxsIGRhcyBMaWNodCB3aWVkZXIgYXVzLgpHcmltbWJvcm4genVja3QgcmF0bG9zIG1pdCBkZW4gU2NodWx0ZXJuLgpEdSBuaWNrc3QgR3JpbW1ib3JuIHp1LgpBbmF0b2wgd2lyZCBrdXJ6IHZvbiBlaW5lciBsZXVjaHRlbmRlbiBBdXJhIGVpbmdlaHVlbGx0LCBkaWUgdm9uIHNlaW5lbQpBbXVsZXR0IGF1c3p1Z2VoZW4gc2NoZWludC4KRXMgaXN0IHp1IGR1bmtlbCAhCj4gQW5hdG9sIGtvbnplbnRyaWVydCBzaWNoIGF1ZiBldHdhcy4KRWluZSBzdHJhaGxlbmQgaGVsbGUgS3VnZWwgZXJzY2hlaW50IGF1cyBkZW0gTmljaHRzLgpQbG9ldHpsaWNoIGVyc3RyYWhsdCBhbGxlcyBpbiBhbnp1ZWdsaWNoLXJvdGVtIExpY2h0LgpFcyB3aXJkIHdpZWRlciBoZWxsZXIuCkR1IG1hY2hzdCBlaW5lIG1hZ2lzY2hlIEJld2VndW5nLgojIyMjIyMjIyMjIyMjIyMjIyMjIyBNaXNzbHVuZ2VuISAjIyMjIyMjIyMjIyMjIyMjIyMjIwpEdSBsZXJuc3QgYXVzIERlaW5lbSBGZWhsZXIuCkR1IG1hY2hzdCBlaW5lIG1hZ2lzY2hlIEJld2VndW5nLgpXaWUgYXVzIGRlbSBOaWNodHMgZXJzY2hlaW50IGVpbmUgbGV1Y2h0ZW5kZSBLdWdlbC4KPiBHcmltbWJvcm4gc2FndDogSWNoIGZyZXVlIG1pY2ggdWViZXIgamVkZW4gVm9yd2FuZCwgU3BpZWxlciBkaXNjb25uZWN0ZW4genUKR3JpbW1ib3JuIHNhZ3Q6IGtvZW5uZW4uLi4KRHUgc3RlaHN0IGluIGRlciBUcmF1a2FwZWxsZSBkZXIgTmliZWx1bmdlbi4KSGllciBmaW5kZW4gZGllIEhvY2h6ZWl0ZW4gdm9uIE1vcmdlbkdyYXVlbiBzdGF0dC4gV2VubiBEdSBhdWNoCmhlaXJhdGVuIHdpbGxzdCwgc28gZnJhZ2UgZGVuIFBmYXJyZXIgdWViZXIgZGllIEhvY2h6ZWl0IGF1cy4KRGllIEthcGVsbGUgZXJzdHJhaGx0IGltIEtlcnplbnNjaGVpbi4gSW0gT3N0ZW4gZGVyIEthcGVsbGUgYmVmaW5kZXQgCnNpY2ggZGVyIEFsdGFyIHVuZCBkYXMgR290dGVzemVpY2hlbi4gV2FzIGF1ZmZhZWxsdCBpc3QsIGRhc3MgZXMgaGllcgprZWluZSBCYWVua2UgZ2lidCwgd2llIGVzIHNvbnN0IGluIEdvdHRlc2hhZXVzZXJuIHVlYmxpY2ggaXN0LgpOYWNoIFdlc3RlbiBmdWVocnQgZWluIGdyb3NzZXMgUG9ydGFsIHp1bSBWb3JwbGF0ei4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHdlc3Rlbi4KRWlzYmFlciBFc2N1YmFyIGlzdCB2ZXJnbnVlZ3QgdW5kIHNwcmluZ3QgdW1oZXIuCkVpbmUgTWF1cyBuYW1lbnMgR2xvZWNrY2hlbi4KVHVydGxlZ3VhcmQgQW5hdG9sLgpHcmltbWJvcm4gZGVyIEF0aGVpc3Qgd2lsbCBkYXMgTWVlciBzZWhlbi4KTHljYXIgZGVyIEZlbGRrYWVtcGZlci4KQWRzb24gc3VjaHQgaWhyZW4gUGF1bC4KRGVyIFByaWVzdGVyIGF1cyBkZXIgVHJhdWthcGVsbGUuCj4gTHljYXIgc2FndDogV2llIGdlaHQgZGFzIGpldHp0IG1pdCBkZW0gQnVmZmV0ID8KRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgo+IEVzIHdpcmQgd2llZGVyIGhlbGxlci4KQWRzb24gc2FndDogVmVyZnJlc3NlbmVzIEdlbmllIDopCkVzIHdpcmQgd2llZGVyIGhlbGxlci4KQW5hdG9sIGdpYnQgQWRzb24gZGllIGFuenVlZ2xpY2gtcm90ZSBMaWNodGt1Z2VsLgpEdSBzYWdzdDogU29sbCBpY2ggbm9jaCBkYXMgTG9nIGluIERpc2t1c3Npb24gbGVnZW4sIGRhbWl0IGR1IGVzIHZlcmxlZ2VuCkR1IHNhZ3N0OiBrYW5uc3Q/Cj4gQW5hdG9sIGtpY2hlcnQgaGludGVyIEdyaW1tYm9ybnMgUnVlY2tlbi4KR3JpbW1ib3JuIGdyaW5zdC4KTHljYXIgc2FndDogR2VuaWUgPyBJY2ggPyBPaCBkYW5rZSAsIHp1dmllbCBkZXIgRWhyZSA6KQpBZHNvbiBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpMeWNhciBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KR3JpbW1ib3JuIHNhZ3Q6IEljaCBrYW5ucyBuYWNoIG11ZWxsIHZlcmxlZ2VuLi4uCkFkc29uIGJlZGFua3Qgc2ljaCBiZWkgQW5hdG9sLgpBbmF0b2wga29uemVudHJpZXJ0IHNpY2ggYXVmIGV0d2FzLgpFaW5lIHN0cmFobGVuZCBoZWxsZSBLdWdlbCBlcnNjaGVpbnQgYXVzIGRlbSBOaWNodHMuClBsb2V0emxpY2ggZXJzdHJhaGx0IGFsbGVzIGluIGdyaW1taWdlbSBMaWNodC4KQW5hdG9sIGdpYnQgR3JpbW1ib3JuIGRpZSBncmltbWlnZSBMaWNodGt1Z2VsLgpBbmF0b2wgcGZlaWZ0IHVuc2NodWxkaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVlciBHcmltbWJvcm4gb25seSAoR3JpbW1ib3JuLCAzMS4gQXVnIDE5OTcsIDIyOjMyOjIzKToKfiMhIHJuPUdyaW1tYm9ybiBydD04NzMwNTkxMzIgcmc9c2NobWFycm4KfiMhIHRpZD04NzMwNTkxMzIKU293YXMgbGFuZ3dlaWxpZ2VzLCBkaWUgaWxsZWdhbGVuIFN0ZWxsZW4gZmVobGVuIGphIGZhc3Qgdm9lbGxpZy4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IGhhdCB3YXMgZ2VnZW4gU3BpZWxlciB1bmQgdmVyaGVpcmF0ZXQgc2llIGRhaGVyIGdlcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmYW1vdXMgbGFzdCB3b3Jkcy4uLiAoQW5hdG9sLCAgMS4gU2VwIDE5OTcsIDAzOjQ3OjMxKToKW0FiZW50ZXVlcjpIYW1sZXRdIGhtbSBrYW5uIG1pciBtYWwgYml0dGUgaWVuZXIgd2VpdGVyaGVsZmVuID8/IGljaCB3aWxsIGRpZQpbQWJlbnRldWVyOkhhbWxldF0gc2NodXBwZSB2b24gZGVtIHNlZXVuZ2VoZXVlciBiZWtvbW1lIGFiZXIgaW1tZXIgbnVyIGVpbmVuCltBYmVudGV1ZXI6SGFtbGV0XSB6YWhuIHVuZCBlaW4gYnJldHQKW1RvZDpMYXJzXSBFaW4gVW5nZWhldWVyIHZvbSBTZWUgZGVzIGV3aWdlbiBSZWdlbnMgaGF0IGdlcmFkZSBIYW1sZXQKW1RvZDpMYXJzXSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBVbmdlaGV1ZXIgdm9tIFNlZSBkZXMgZXdpZ2VuIFJlZ2Vuc10gV2VyIGFuIG1laW5lbiBIb3J0IHdpbGwsIG11c3MKW1RvZDpFaW4gVW5nZWhldWVyIHZvbSBTZWUgZGVzIGV3aWdlbiBSZWdlbnNdIHN0ZXJiZW4uCgpTb3JyeSwgCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhcnRpa2VsIEFub3RoZXIgYml0ZXMgdGhlIGR1c3QgKFdhcmdvbiwgIDEuIFNlcCAxOTk3LCAxMjoyMjo0MSk6Cn4jISBybj1BbmF0b2wgcnQ9ODcyODgxMjQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcyODc5ODQ4Ckh1Y2g/IFNlaXQgd2FubiBzdGVoZW4gZGVubiBEdXJpYW4gdW5kIE9scHAgbmljaHQgbWVociBpbSBwb2xpemVpLVZlcnRlaWxlcj8KICBXYXJnb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUb2QgZWluZXMgVGV1ZmVsIChCb2luZywgIDEuIFNlcCAxOTk3LCAxMjoyNTo1MCk6Cn4jISBybj1Bc21vZGlzIHJ0PTg3Mjk3MDExMCByZz1zY2htYXJybgp+IyEgdGlkPTg3Mjk3MDExMApJY2ggc2NoYWVtIG1pY2ggbmljaHQhIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBaZWl0Z2VmdWVobC4uLiAoUm9jaHVzLCAgMS4gU2VwIDE5OTcsIDEzOjIxOjM4KToKfiMhIHJuPUFuYXRvbCBydD04NzI5Njk1MDMgcmc9c2NobWFycm4KfiMhIHRpZD04NzI5Njk1MDMKQWVoLCBpY2ggaGFiZSBkYSB1ZWJyaWdlbnMgUkVGUkVIX0JPSU5HIGJlbnV0enQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWmVpdGdlZnVlaGwuLi4gKEZ5dCwgIDEuIFNlcCAxOTk3LCAxNTowNzozMik6Cn4jISBybj1Sb2NodXMgcnQ9ODczMTEyODk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODcyOTY5NTAzCgpLYXVtIHp1IGZhc3NlbiwgZGFzcyBkYXMgRmlsZSBkYW5uIHVlYmVyaGF1cHQgZ2VsYWRlbiB3aXJkIDstLS0pCgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbiBkZXIgWmVudHJhbGJhbmsgKFJhZmZpLCAgMS4gU2VwIDE5OTcsIDE1OjI1OjIwKToKRHUgdGVpbHN0IFVsdWxhIG1pdDogMTEwMzk4ODIKVWx1bGEgdGVpbHQgRGlyIG1pdDogZGFmdWVyIG11ZXNzdGUgbWFuIHppbnNlbiBiZWtvbW1lbiA6KQpEdSB0ZWlsc3QgVWx1bGEgbWl0OiBqYSwgaWNoIHdhZXJlIG1pdCA1JSBwcm8gb25saW5ldGFnIHp1ZnJpZWRlbgpVbHVsYSB0ZWlsdCBEaXIgbWl0OiBqYWphLCBiZXNjaGVpZGVuaGVpdCBpc3QgZWluZSB6aWVyIDopCltaYXViZXJlcjpCaXJkeV0gSkFBQUFBQUFBQUEgISEhISEhISEhISEKCldvaGVyIGhhdCBCaXJkeSBkYXMgZ2V3dXNzdCA/CgpHcmlucwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbmF0b2wsICAxLiBTZXAgMTk5NywgMjA6NTI6NDkpOgoKW1NlaGVyOktleV0gbWlzdCAzOSBscCB1bmQgZXIgYXVmIGRlciBzY2h3ZWxsZSAuLi4gd2F0IG1hY2ggaWNoIG51PwpbU2VoZXI6S2V5IGdydWViZWx0Ll0KW1NlaGVyOlJpbmdvcl0gbm9jaG1hbCByZWluIDopCltTZWhlcjpLZXldIGdlaHQgcmVpbiA7KQpbU2VoZXI6TWFuZ29dIFZvcnNpY2h0IDAKW1RvZDpMYXJzXSBFaW4gT3JrIGhhdCBnZXJhZGUgS2V5IHVtZ2VicmFjaHQuCgpEYW5uOgpbQmVpbGVpZDpUdWFyZWddIEhtbSBuYWphIGRhcyBlcnN0ZSBtYWwgaGF0cyBnZWtsYXBwdCwgZGFubiB3b2xsdGUgaWNoIHNjaGF1bgpbQmVpbGVpZDpUdWFyZWddIHdpZSBndXQgZGVyIG9yayBub2NoIGRyYXVmIGlzdCB1bmQgYmluIG5vY2htYWwgcmVpbiA9OykKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKEFuYXRvbCwgIDEuIFNlcCAxOTk3LCAyMDo1NTozNCk6Cn4jISBybj1BbmF0b2wgcnQ9ODczMTM5OTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODczMTM5OTY5CltTZWhlcjpLZXkgZ3J1bXBmdC4gOildCltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIFR1YXJlZyB1bWdlYnJhY2h0LgoKV2VuaWdzdGVucyBrb25zZXF1ZW50Li4uClNvcnJ5LCBTY2hsdWVzc2VsY2hlbi4uLi4KCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRkxXIChLZXksICAxLiBTZXAgMTk5NywgMjE6NDQ6NDQpOgp+IyEgcm49QW5hdG9sIHJ0PTg3MzE0MDEzNCByZz1zY2htYXJybgp+IyEgdGlkPTg3MzEzOTk2OQpKYWphamEgOikgVW5kIHdpZXNvIGZpZWwgZGlyIG5peCB6dW0gMy4gaW0gQnVuZGUgZWluPyAuKQoKSG1tIGFiZXIgZGFzIHNvbGwgbWlyIGVyc3RtYWwgZWluZXIgbmFjaG1hY2hlbiAuLi4uIDIgbWFsIHp1IG5lbSBvcmsgcmVpbiBtaXQKMzkgbHAgOikpCgoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbiBzYW5kIChHcmltbWJvcm4sICAyLiBTZXAgMTk5NywgMDA6MjY6MjcpOgp+IyEgb249SmFycnVzIG90PTg3MzEyMzczNyBvZz1hbGxnZW1laW5lcwpVZWJ1bmdzc2FuZD8gVm9uIHdlZ2VuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthbmluY2hlbiBtYWwgb2huZSBPaHJlbi4uLiAoR3JpbW1ib3JuLCAgMi4gU2VwIDE5OTcsIDAxOjA5OjU0KToKfiMhIG9uPVd1cnplbCBvdD04NzMwNjIyNzEgb2c9a29jaHJlemVwdGUKfiMhIHJuPUx1ZyBydD04NzI5ODkwMDYgcmc9a29jaHJlemVwdGUKfiMhIHRpZD04NzI5ODkwMDYKa3VlY2hlbmZlcnRpZ2VzIGthbmluY2hlbj8gYW0gYmVzdGVuIHNjaG1lY2tlbiBtLmUuIGltbWVyIG5vY2ggZGllIApzZWxic3RnZWZhaHJlbmVuLi4uIGF1Y2ggd2VubiBtYW4gamUgbmFjaCBhdXRvdHlwIGtub2NoZW5zcGxpdHRlciBzdWNoZW4gCm11c3MgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSW4gZXJpbm5lcnVuZyBhbiBrZXkgIChHcmltbWJvcm4sICAyLiBTZXAgMTk5NywgMTY6MjA6MTkpOgp+IyEgb249S2V5IG90PTg3MzIwOTk5MyBvZz13aXR6ZQp+IyEgcm49QmlyZHkgcnQ9ODczMjAwNDkxIHJnPXdpdHplCn4jISB0aWQ9ODczMjAwNDkxClNlaHIga29taXNjaCBCaXJkeS4KRHUgaGFzdCBkaWUgRWhyZSBkYXMgd2llZGVyIHp1IGxvZXNjaGVuLgoKS2V5IHNjaHJlaWJ0IDJ6ZWlsZXIgd2VpbCBkaWUgZWluemVpbGVyIGluIE11ZWxsIGxhbmRlbi4KLC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSW4gZXJpbm5lcnVuZyBhbiBrZXkgIChHcmltbWJvcm4sICAyLiBTZXAgMTk5NywgMTY6MjE6MDcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg3MzIxMDAxOSByZz1zY2htYXJybgp+IyEgdGlkPTg3MzIwMDQ5MQpKZXBwLCBad2VpemVpbGVyIGxhbmRlbiBpbiBzY2htYXJybi4uLiAqZ3JpbnMqCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbiB3dW5kZXJ0cy4uLj8gKEFuYXRvbCwgIDMuIFNlcCAxOTk3LCAwMDowMDowMik6CgpMdWcgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKW1RydmVzOlJpbmdvcl0gTFVVVVVVVVVVVVVVVVVVVVVVVVVVQ0gKTHVnICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKTWljaCBuaWNodCA7LSkKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhciB3b2hsIHp1IGxhdXQgKEFzbW9kaXMsICAzLiBTZXAgMTk5NywgMDA6MDA6MTApOgpMdWcgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKW1RydmVzOlJpbmdvcl0gTFVVVVVVVVVVVVVVVVVVVVVVVVVVQ0gKTHVnICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXIgd29obCB6dSBsYXV0IChBbmF0b2wsICAzLiBTZXAgMTk5NywgMDA6MDE6MjkpOgp+IyEgcm49QXNtb2RpcyBydD04NzMyMzc2MTAgcmc9c2NobWFycm4KfiMhIHRpZD04NzMyMzc2MTAKRGVzIFJhZXRzZWxzIExvZXN1bmcgdHJhZ2VuIHdpciBub2NoIG5hY2g6CltUcnZlczpSaW5nb3JdIGRhcyBrbnVkZGVsbiBrYW0gdWVicmlnZW5zIGF1Y2ggbm9jaCBkdXJjaCwgamF3b2xsIDspCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBJbiBlcmlubmVydW5nIGFuIGtleSAgKEdyaW1tYm9ybiwgIDMuIFNlcCAxOTk3LCAwMTozMTozMyk6Cn4jISBvbj1SYWZmaSBvdD04NzMyMzA5MTQgb2c9d2l0emUKfiMhIHJuPUdyaW1tYm9ybiBydD04NzMyMTAzNDcgcmc9d2l0emUKfiMhIHRpZD04NzMyMDA0OTEKQmVzdGVodCBMYWNoendhbmcgaW4gZGVyIEZyYWt0aW9uID8KCkdydXNzCkguCihCZWkgbWlyIHdpcmRzIG5pZSBlaW4gMnplaWxlciAuLi4uIGljaCBicmF1Y2ggc2Nob24gMiBudXIgZnVlciBkaWUKVW50ZXJzY2hyaWZ0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqamFtbWVyKiAqa2xhZyogKnN0b2VobiogKEFuYXRvbCwgIDMuIFNlcCAxOTk3LCAyMTozNjoyMyk6Cn4jISBvbj1BbmF0b2wgb3Q9ODczMzE1MzUzIG9nPWphbW1lcmxhcHBlbi5lbnR3aWNrbHVuZwoKW1NlaGVyOihSb2NodXMpXSBoZWgsIGtvZW5udGUgbWFsIHdpZWRlciBqZW1hbmQgaW4gZW50d2lja2x1bmcgamFtbWVybiwgaWNoCltTZWhlcjooUm9jaHVzKV0gYmVrb21tZSBudXIgbm9jaCAibml4IG5ldWVzIGF1ZiBkZXIgd2VsdCIhIDopCgpKby4uLgoqamFtbWVyKiAqbm9lcmdlbCogKnNjaGx1Y2h6KiAqaGV1bCogClJlY2h0IHNvPyA6KQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSW4gZXJpbm5lcnVuZyBhbiBrZXkgIChHcmltbWJvcm4sICAzLiBTZXAgMTk5NywgMjI6MDI6NTYpOgp+IyEgb249UmFmZmkgb3Q9ODczMzA4ODQ2IG9nPXdpdHplCn4jISBybj1HcmltbWJvcm4gcnQ9ODczMjEwMzQ3IHJnPXdpdHplCn4jISB0aWQ9ODczMjAwNDkxCkJlc3RlaHQgTGFjaHp3YW5nIGluIGRlciBGcmFrdGlvbiA/CgpHcnVzcwpILgooQmVpIG1pciB3aXJkcyBuaWUgZWluIDJ6ZWlsZXIgLi4uLiBpY2ggYnJhdWNoIHNjaG9uIDIgbnVyIGZ1ZXIgZGllClVudGVyc2NocmlmdCA6KQoKKFVuZCBuaWNodCBpbWVtciBXaXR6ZSB2ZXJsZWdlbiB3ZW5uIG1hbiBzaWUgbmljaHQgdmVyc3RlaHQgIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS29taXNjaGUgV2FydGVzY2hsYW5nZS4uLiAoSGFuZ292ZXIsICA0LiBTZXAgMTk5NywgMTM6MDA6NDgpOgpEdSB3YXJ0ZXN0IGlubWl0dGVuIGFuZGVyZXIgQW50cmFnc3N0ZWxsZXIgZGFyYXVmLCBlbmRsaWNoIERlaW5lbgpCYXVzcGFydmVydHJhZyBiZWFudHJhZ2VuIHp1IGR1ZXJmZW4uCkVzIHNpbmQgbm9jaCAtMSBMZXV0ZSB2b3IgRGlyIGRyYW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiByYXVzdHJldGVuLgoKV2FzIHNvbGwgaWNoIGRhdm9uIGhhbHRlbj8KCi1IYW5nb3ZlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaWNoIGF1Y2ggbWFsLi4uIChZYW50cm8sICA0LiBTZXAgMTk5NywgMTQ6MTE6NTApOgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gQW5hdG9sIGluIFJ1YnJpayAiZW50d2lja2x1bmciLgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzIGZ1ZXIgZWluIExhZyEgKEhhcmRpbCwgIDQuIFNlcCAxOTk3LCAxNDoyNDo0MCk6CgpSYW50YW5wbGFuIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCA3MCBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCA3MSBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCA3MiBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCA3MyBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCA3NCBNYWdpZXB1bmt0ZS4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCgpTbyBsYW5nZSBkYXVlcnQgZGFzIHNvbnN0IG5pY2h0LiA6KQoKLUhhcmRpbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFydGlrZWwtVmVybGVnZXJlaSAoR3JpbW1ib3JuLCAgNC4gU2VwIDE5OTcsIDE3OjQzOjUzKToKfiMhIG9uPUdyaW1tYm9ybiBvdD04NzMzODc4Mjcgb2c9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgcm49UXVhc2ltb2RvIHJ0PTg3MzM4MjcxMyByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9ODczMzA0NDc0CkdhbnogZWluZmFjaDogSWNoIGJpbiBTY2h3ZWRlLiBTdGVodCB6dW1pbmRlc3QgaW4gbWVpbmVtIFBhc3MuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLb21pc2NoZSBXYXJ0ZXNjaGxhbmdlLi4uIChBc21vZGlzLCAgNC4gU2VwIDE5OTcsIDE4OjA4OjA4KToKfiMhIHJuPUhhbmdvdmVyIHJ0PTg3MzM3MDg0OCByZz1zY2htYXJybgp+IyEgdGlkPTg3MzM3MDg0OApEdSBiaXN0IGFtIFNjaGFsdGVyIHZvcmJlaWdlbGF1ZmVuID8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS29taXNjaGUgV2FydGVzY2hsYW5nZS4uLiAoSGFuZ292ZXIsICA0LiBTZXAgMTk5NywgMTg6NDM6NTkpOgp+IyEgcm49QXNtb2RpcyBydD04NzMzODkyODggcmc9c2NobWFycm4KfiMhIHRpZD04NzMzNzA4NDgKTm9lLi4uYW5nZXN0ZWxsdCBoYWIgaWNoIG1pY2guLi4gOi0pCgotSGFuZ292ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxhbmdld2VlZWVlZWVpbGVlZWVlZSAoWWVuZGksICA0LiBTZXAgMTk5NywgMjA6MTY6MjQpOgoKV2VubiBkaWUgU3Bpbm5lIExhbmdld2VpbGUKRmFlZGVuIHNwaW5udCB1bmQgb2huZSBFaWxlCmdpZnRpZyBncmF1IGRpZSBXYW5kIGhvY2hrcmllY2h0LAp3ZW5ucyBibGFuayB1bmQgZnJpc2NoIGdlYmFkZXQgcmllY2h0Li4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc293YXMuLi4gKEJlZWx6ZWJ1YiwgIDQuIFNlcCAxOTk3LCAyMTowNToxMCk6CgpbTmFjaHJpY2h0ZW46RFddIExPTkRPTjogS29lbmlnaW4gRWxpc2FiZXRoIElJLgpbQWxsZ2VtZWluOktob3Jha10ga2VubiBpY2ggbmljaAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzb3dhcy4uLiAoQmVlbHplYnViLCAgNC4gU2VwIDE5OTcsIDIxOjEwOjQ4KToKfiMhIHJuPUJlZWx6ZWJ1YiBydD04NzMzOTk5MTAgcmc9c2NobWFycm4KfiMhIHRpZD04NzMzOTk5MTAKVWVicmlnZW5zOiBpY2ggaGFiIGluIGRpZXNlbiAyIFplaWxlbiAzIFdpdHplIGVudGRlY2t0LCB3ZXIgZmluZGV0IG1laHIgPwoKLS0+IFB1aXoKCkJlZWx6ZSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2gsIGluIGRlciAuc2lnOiAoWWVuZGksICA0LiBTZXAgMTk5NywgMjE6NTc6MTMpOgoKIlN1aWNpZGUgd2FzIGFnYWluc3QgdGhlIGxhdy4gSm9obm55IGhhZCB3b25kZXJlZCB3aHkuIEl0IG1lYW50IHRoYXQKIGlmIHlvdSBtaXNzZWQsIG9yIHRoZSBnYXMgcmFuIG91dCwgb3IgdGhlIHJvcGUgYnJva2UsIHlvdSBjb3VsZCBnZXQKIGxvY2tlZCB1cCBpbiBwcmlzb24gdG8gc2hvdyB5b3UgdGhhdCBsaWZlIHdhcyByZWFsbHkgdmVyeSBqb2xseSBhbmQKIHRob3JvdWdobHkgd29ydGggbGl2aW5nLiIgLS0gVGVycnkgUHJhdGNoZXR0LCBfSm9obm55IGFuZCB0aGUgRGVhZF8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHNvd2FzLi4uIChCZWVsemVidWIsICA1LiBTZXAgMTk5NywgMDM6MDM6NTEpOgp+IyEgcm49QmVlbHplYnViIHJ0PTg3MzQwMDI0OCByZz1zY2htYXJybgp+IyEgdGlkPTg3MzM5OTkxMAp1bmQgbm9jaG1hbDoKCltOYWNocmljaHRlbjpEV10gTE9ORE9OOiBLb2VuaWdpbiBFbGlzYWJldGggSUkuCltBbGxnZW1laW46VGFyYWdvbl0gd28gZGllIGRvY2ggb2ZmaXppZWxsIHZlcmJvdGVuIHNpbmQgOy0pCltBbGxnZW1laW46SGFkcmFdIGtlbm4gaWNoIG5pY2h0CgpTYXRhbiwgc2VpZCBpaHIgYWxsZSB1bndpc3NlbmQuLi4KCkJlZWx6ZSogCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5vY2ggbWVociBuZXVlcy4uLiAoQmFicywgIDUuIFNlcCAxOTk3LCAxMjoyMTozOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODczNDQ5NjQzIHJnPWdpbGRlbi5rbGVydXMKfiMhIHRpZD04NzM0NDg2NTYKTmFqYSwgTWFlbm5jaGVuIGhhYmVucyBqYSBhdWNoIHZpZWwgbm9ldGlnZXIgOy1QCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVmVybGVnIG1pY2ggISAoR3JpbW1ib3JuLCAgNS4gU2VwIDE5OTcsIDEzOjEwOjQzKToKfiMhIHJuPVJhbnRhbnBsYW4gcnQ9ODczNDU2NzE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODczNDU2NzE2Ci0tLXF1b3RlClZlcmxlZyBtaWNoICEgKFJhbnRhbnBsYW4sICA1LiBTZXAgMTk5NywgMTI6NTE6NTYpOgoKVmVybGVnIG1pY2ggIQoKT2UqCi0tdW5xdW90ZQoKTm9lLCBpY2ggTG9lc2NoIERpY2guIDotKQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJsZWcgbWljaCAhIChHcmltbWJvcm4sICA1LiBTZXAgMTk5NywgMTM6MTE6MjApOgp+IyEgb249UmFudGFucGxhbiBvdD04NzM0NTY3MzIgb2c9d2l0emUKClZlcmxlZyBtaWNoICEKIE9lXAphZWhoIE9lKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmFudT8gU2Nob24gc28gYWx0PyAoTmlyZGF2bywgIDUuIFNlcCAxOTk3LCAxNToyNDoyNCk6CiAgR2VyYWRlIGdlZnVuZGVuIGluICdXZWJzdGVyJ3MgTmV3IEVuY3ljbG9wZWRpYyBEaWN0aW9uYXJ5LCAxOTk0JywgUy4gMTUwMApLYXBpdGVsOiBCaW9ncmFwaGljYWwsIEJpYmxpY2FsIGFuZCBNeXRob2xvZ2ljYWwgTmFtZXMsIDEuIEVpbnRyYWcgZGllc2VyClNlaXRlOgogIEtvaGwsIEhlbG11dCAxOTMwIC0gICAgIGNoYW5jZWxsb3Igb2YgR2VybWFueSAoMTk5MCAtKQoKICBJY2ggd3Vzc3RlIGdhciBuaWNodCwgZGFzcyBkZXIgS2VybCBzY2hvbiBiaWJsaXNjaCBvZGVyIGdhciBteXRob2xvZ2lzY2gKaXN0IQogICBOaXJkYXZvLCBhdWNoIG1hbCBzY2htYXJybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOYW51PyBTY2hvbiBzbyBhbHQ/IChHcmltbWJvcm4sICA1LiBTZXAgMTk5NywgMTU6MzI6NTcpOgp+IyEgcm49TmlyZGF2byBydD04NzM0NjU4NjQgcmc9c2NobWFycm4KfiMhIHRpZD04NzM0NjU4NjQKS29obCBpc3QgS2FuemxlciBzZWl0IDE5ODMuIFVuZCBsZWlkZXIgaW1tZXIgbm9jaC4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LiBQb2xpdGlzY2ggc3RyZW5nIG5ldXRyYWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRXJ6bWFnaWVya29uZmVyZW56IChNaSwgMy45LjE5OTcpIChGeXQsICA1LiBTZXAgMTk5NywgMTc6MDg6NDYpOgp+IyEgcm49SGF0ZSBydD04NzM0NjgzMjUgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTg3MzQ2ODMyNQoKSGFuZGxlIGltbWVyIHNvLCBkYXNzIGRpZSBNYXhpbWUgRGVpbmVzIEhhbmRlbG4genVnbGVpY2ggYWxzIGFsbGdlbWVpbmVzCkdlc2V0eiBkaWVuZW4ga29lbm50ZS4KCk9kZXIgc28gYWVobmxpY2ggamVkZW5mYWxscy4KCkVNcyBmb3IgR291dmVybWVudCA7LSkKCk9obmUgU2NoZWlzcyBkaWVzbWFsLi4uCgoKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQXJ0aWtlbC1WZXJsZWdlcmVpIChGeXQsICA1LiBTZXAgMTk5NywgMTc6MDk6NTMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg3MzM4NzgzMyByZz1zY2htYXJybgp+IyEgdGlkPTg3MzMwNDQ3NAoKTmEsIGRhc3MgaXN0IGRpZSBMb2VzdW5nOiBEaWNoIGhhYmVuIHNpZSBpbiBEZWluZXIgSnVnZW5kIHZlcmxlZ3QgOy0pCgpGeXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5hbnU/IFNjaG9uIHNvIGFsdD8gKEZ5dCwgIDUuIFNlcCAxOTk3LCAxNzoxNTo1Mik6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODczNDY2Mzc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODczNDY1ODY0CgpJY2gga2VubiBtaWNoIGphIGluIGRlciBQb2xpdGlrIGhpbnRlciBkZXIgTWF1ZXIgbmljaHQgc28gYXVzLCBhYmVyCmlzdCBLb2hsIG5pY2h0IHNlaXQgMTk4MiBLYW56bGVyPwoKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFcnptYWdpZXJrb25mZXJlbnogKE1pLCAzLjkuMTk5NykgKEFzbW9kaXMsICA1LiBTZXAgMTk5NywgMjE6MTU6NDYpOgp+IyEgcm49U2lsdmFuYSBydD04NzM0ODY4MjQgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTg3MzQ2ODMyNQpCZXp1ZzogQXJ0aWtlbCA2LCBiZWthbm50bWFjaHVuZ2VuCgpGb25kaWwgRmFyaW4gc2FndDogVW0gZ2FueiBlaHJsaWNoIHp1IHNlaW46IEljaCB3ZWlzcyBlcyBhdWNoIG5pY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIHdpbGwgYXVjaCBtYWwgVW5zaW5uIHNjaHJlaWJlbiEgKENhcmFkaHJhcywgIDUuIFNlcCAxOTk3LCAyMTo0Mzo0NSk6CkRlaW5lIEZyZXVuZGluIE5lc2FqYSB0ZWlsdCBEaXIgbWl0OiBtb21lbnQgLi4ud2VyIGlzdCBkZW4gZGVyIGtsZWluZSBiencKRGVpbmUgRnJldW5kaW4gTmVzYWphIHRlaWx0IERpciBtaXQ6IG1pbmRlcmhhZWhyaWdlIGhpZXIgdW50ZXIgdW5zICpndWNrIGtleQpEZWluZSBGcmV1bmRpbiBOZXNhamEgdGVpbHQgRGlyIG1pdDogbnVyIGJlaWxhZXVmaWcgYW4qIDopCltLYXJhdGU6U2Nob2tvXSBIYXRzIER1IGF1ZiBkaWUgY20gQW5nYWJlbiBnZWFjaHRldD8/IERhcyB3YXJzLCB3YXMgaWNoCltLYXJhdGU6U2Nob2tvXSBtZWludGUuCgogTWVuc2NoLCBpc3QgS2V5IGFiZXIga2xlaW4hIERydW0gc3RpcmJ0IGRlciBkYXVlcm5kLgoKICAgICAgICAgICAgICBCZXJnY2hlbiBSb3Rob3JuIENhcmFkaHJhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBc21vZGlzLCAgNi4gU2VwIDE5OTcsIDAxOjA5OjMyKToKW1NlaGVyOkZyb2dodW50ZXJdIFdpZSBpc3QgZGFzIG1pdCBkZW0gV2VnaGllciA/IFdpZSBvZnQgaXN0IGRlci9kYXMgZGVubgpbU2VoZXI6RnJvZ2h1bnRlcl0gamV0enQgZGEgPyA8MDE6MDU6MDQ+CltUb2Q6TGFyc10gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSBGcm9naHVudGVyIHVtZ2VicmFjaHQuIDwwMTowODo1Mj4KW1RvZDplaW4gV2VnaGllcl0gR290Y2hhISA8MDE6MDg6NTI+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5hbnU/IFNjaG9uIHNvIGFsdD8gKFRlZGR5LCAgNi4gU2VwIDE5OTcsIDAyOjI3OjE5KToKfiMhIHJuPUdyaW1tYm9ybiBydD04NzM0NjYzNzcgcmc9c2NobWFycm4KfiMhIHRpZD04NzM0NjU4NjQKTG9naXNjaCBuZXV0cmFsLCB2b3IgYWxsZW0gbWl0IGRlaW5lbSBsZWlkZXIgOykKClRlZGR5LCBuYWNodHMgdGllcmlzY2ggZ2VsYW5nd2VpbHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaGxhZmVuZGVyIEtvYm9sZC4uLiAoTmljaHRzLCAgNi4gU2VwIDE5OTcsIDA0OjEyOjMyKToKRWluIGtsZWluZXIgS29ib2xkIHRlaWx0IERpciBmb2xnZW5kZXMgbWl0OgpEZWluZSBGcmV1bmRpbiBTaGFyaWEga251ZGRlbHQgRGljaCBtaXQgZWluZW0gaGVpbGlnZW4gR3JpbnNlbiBhdXMgZGVyIEZlcm5lLiAKWzIwOjU1XQoKLi4uIHVuZCBkYXMgdmllcnRlbCBuYWNoIHZpZXIuCiIiIC0gZXR3YXMgYXJnZWxuZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3dhcyAuLi4gKEphbml0emUsICA4LiBTZXAgMTk5NywgMTE6MTQ6NDUpOgpmaW5nZXIgamFuaXR6ZToKSmFuaXR6ZSBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogQmVybGluLgpFaW5nZWxvZ2d0IHNlaXQ6IEZyZSwgIDUuIFNlcCAxOTk3LCAxNDo1ODozMgoKaW5mbzoKQWx0ZXI6ICAyIFRhZ2UgMjAgU3R1bmRlbiA1NiBNaW51dGVuIDIwIFNla3VuZGVuCgphbHNvIGlyZ2VuZHdhcyBzdGltbXQgZGEgbmljaHQsIHdlbm4gaWNoIHNlaWQgZnJlaXRhZyBlaW5nZWxvZ2d0IGJpbiwgbXVlc3N0ZQppY2ggamV0enQgZXR3YXMgaW4gZGllIDMgVGFnZSBhbHQgc2Vpbiwgb2RlciB3aWUgb2RlciB3YXMgPyA6KQoKSmFuaWNlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoYXJmZSAoQmlyZHksICA4LiBTZXAgMTk5NywgMTQ6Mzk6MTMpOgpEaWUgSGFyZmUgaXN0IGVpbiBsZWJsb3NlcyBEaW5nLgpEdSBlcmtlbm5zdCBiZXNvbmRlcmUgRWlnZW5zY2hhZnRlbiBhbiBkZXIgSGFyZmU6CkVzIGlzdCBlaW5lIGVpbmZhY2hlIEhhcmZlIC0gb2huZSBqZWRlIEJlc29uZGVyaGVpdC4KRGllIEhhcmZlIGdlaG9lcnQgaW4gZGVuIFZlcmFudHdvcnR1bmdzYmVyZWljaCB2b24gOiBRdWFzaW1vZG8uCiAqZ3JpbnMqIApCaXJkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNvd2FzIC4uLiAoV29vZHksICA4LiBTZXAgMTk5NywgMTU6MjI6MzQpOgp+IyEgcm49SmFuaXR6ZSBydD04NzM3MTAwODUgcmc9c2NobWFycm4KfiMhIHRpZD04NzM3MTAwODUKSG1tbSwgZGEgc2luZCBlYmVuIGRpZSBaZWl0ZW4sIGluIGRlbmVuIGR1IG5ldHp0b3Qgd2Fyc3QsCm5pY2h0IGVpbmdlcmVjaG5ldCA6KSwgImVpbmdlbG9nZ3QiIGJlZGV1dGV0IGFsc28gaW4gZGllc2VtCkZhbGwgZXZ0bC4gZGFzIENsb25lbiBkZWluZXMgU3BpZWxlcm9iamVrdHMsIGkuZS4gZGVpbmVyCnN0ZXJibGljaGVuIEh1ZWxsZSA6KQoKbXV0bWFzc2VuZCwKd29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIHdpbGwgYXVjaCBtYWwgOikgKFdvb2R5LCAgOC4gU2VwIDE5OTcsIDE1OjM3OjA2KToKSGF0ZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpFaW4gZW50c2V0emxpY2hlciBTY2hyZWkgaGFsbHQgdm9tIEZyaWVkaG9mIGhlcnVlYmVyLgoKd29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIChSb2NodXMsICA4LiBTZXAgMTk5NywgMTU6NTk6NDMpOgpbQWxsZ2VtZWluOkFsaW5lXSBTY2hyZWliIG1hbCBlaW5lciB3YXMgaW4gZGllIE1QQQp3YXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnRpbWluZyAoQWxpbmUsICA4LiBTZXAgMTk5NywgMTY6MDQ6MjgpOgoKRHUgZ3JlaWZzdCBkaWUgU2FiYmVyd2FyemUgbWl0IGJyZW5uZW5kZW4gSGFlbmRlbiBhbi4KICBEdSB0cmlmZnN0IGRpZSBTYWJiZXJ3YXJ6ZSBoYXJ0LgpEaWUgU2FiYmVyd2FyemUgc3RpcmJ0IHJvZWNoZWxuZCB1bmQgYmx1YmJlcm5kLCBlaW4gZ3JhdXNhbWVyIEFuYmxpY2suCj5bQWxsZ2VtZWluOkJlZWx6ZWJ1Yl0gTWFobHplaXQgIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VyIG1hY2h0IGRlbiBsZXR6dGVuIFNjaGxhZyAoWm9ycm8sICA4LiBTZXAgMTk5NywgMjA6NDg6MjQpOgpEZXIgVm9sbHN0cmVja2VyIHZlcnN1Y2h0LCBUdXRzenQgZGVuIFRvZGVzc3Rvc3MgenUgdmVyc2V0emVuIQpUdXRzenQgd2VpY2h0IGRlbSBBbmdyaWZmIGF1cy4KICBEZXIgV2VnaGllciBwdWx2ZXJpc2llcnQgU3RpbmcuCkRlciBWb2xsc3RyZWNrZXIgdmVyc3VjaHQsIFR1dHN6dCBkZW4gVG9kZXNzdG9zcyB6dSB2ZXJzZXR6ZW4hClR1dHN6dCB3ZWljaHQgZGVtIEFuZ3JpZmYgYXVzLgogIERlciBXZWdoaWVyIHB1bHZlcmlzaWVydCBTdGluZy4KU3RpbmcgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpMYXJzXSBUdXRzenQgaGF0IGdlcmFkZSBTdGluZyB1bWdlYnJhY2h0LgpEZXIgVm9sbHN0cmVja2VyIHZlcnN1Y2h0LCBUdXRzenQgZGVuIFRvZGVzc3Rvc3MgenUgdmVyc2V0emVuIQogIEVpbiBXZWdoaWVyIGdyZWlmdCBUdXRzenQgbWl0IGVpbmVtIFZvbGxzdHJlY2tlciBhbi4KICBEZXIgV2VnaGllciBwdWx2ZXJpc2llcnQgVHV0c3p0LgpUdXRzenQgYmlsZGV0IGVpbmVuIGdyb3NzZW4gQmx1dGZsZWNrLgpFaW5lIExlaWNoZSB3aXJkIHZvbiBlaW5lbSBXZWdoaWVyIHZvbGwgSGluZ2VidW5nIHZlcnNwZWlzdC4KCmlyZ2VuZHdhcyBzdGltbXQgZGEgbmljaHQgLgoKR3J1c3MgWm9ycm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZCBVbnQgPyAoUmFmZmksICA4LiBTZXAgMTk5NywgMjE6NDE6MDIpOgo+IHVudCBrdWdlbApEaWUgS3VnZWwgaXN0IGF1cyBidW50ZW0gR2xhcyB1bmQgc2VociBsZWljaHQuIFdlbm4gZHUgc2llIGdlZ2VuCmRhcyBMaWNodCBoYWVsdHN0LCBrYW5uIGR1IGltIElubmVybiBkYXMgU2tlbGV0dCBlaW5lcyBrbGVpbmVuClRpZXJlcyBlcmtlbm5lbi4KPiB1bnQgZ2xhcwpEdSBmaW5kZXN0IGFuIGVpbmVyIEdsYXNrdWdlbCBrZWluICJHbGFzIi4KRGVpbiBCbGljayB3ZW5kZXQgc2ljaCBkZXIgVW1nZWJ1bmcgenUuClNvd2FzIHNpZWhzdCBEdSBhdWNoIGRhIG5pY2h0IQoKCkltbWVyIHdpZWRlciBzY2hvZW4gZGVyIFVudC1CZWZlaGx0IDopCgpHcmlucwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNvd2FzIC4uLiAoWWVuZGksICA4LiBTZXAgMTk5NywgMjE6NDI6NDkpOgp+IyEgcm49SmFuaXR6ZSBydD04NzM3MTAwODUgcmc9c2NobWFycm4KfiMhIHRpZD04NzM3MTAwODUKCk9LLCBKYW5pdHplLCBleHRyYSBmdWVyIERpY2ggaGV1dGUgZWluZSBXaWVkZXJob2x1bmcgdW5zZXJlciBTZW5kdW5nCgpSRUNITkVOIExFSUNIVEdFTUFDSFQsICBMZWt0aW9uIDI3Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgpXaXIgc2NocmVpYmVuIG5hY2ggRElOc291bmRzbwoKICAxOTk3LTA5LTA1LTE0OjU4OjMyICAgICAgIChEYXR1bSAmIFVocnplaXQgZGVzIEVpbmxvZ2dlbnMpCisgICAgICAgICAgMi0yMDo1NjoyMCAgICAgICAgKExhZW5nZSBkZXIgQW53ZXNlbmhlaXQpCj09PT09PT09PT09PT09PT09PT09PQogIDE5OTctMDktMDctMzQ6MTE0OjUyCgpEYSBhYmVyIGRlciBUYWcga2VpbmUgMzQgU3R1bmRlbiB1bmQgZGllIFN0dW5kZSBrZWluZSAxMTQgTWludXRlbiBoYXQ6CgogIDE5OTctMDktMDgtMTE6NTQ6NTIsCmFsc28gZGVyIDguIFNlcCAxOTk3LCAxMTo1NDo1Mi4KCktvbW10IGRvY2ggaGluLCBvZGVyPwoKKFNvIG5lYmVuYmVpOiBHaWJ0IGVzIGF1Y2ggVGFnZXNiZXRyZXV1bmcgb2RlciBLcmlwcGVucGxhZXR6ZSBmdWVyIGRpZQogZ2FueiBqdW5nZW4gdW50ZXIgdW5zPyBEYXMgd2FlcmUgZG9jaCBtYWwgZWluZSBNb2VnbGljaGtlaXQgZnVlciBkaWUKIFNlbmlvcmVuLCBzaWNoIG5vY2ggZWluIGJpc3NjaGVuIGZpdCB6dSBoYWx0ZW4uLi4pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzb3dhcyAuLi4gKEphbml0emUsICA5LiBTZXAgMTk5NywgMDA6MTg6MzgpOgp+IyEgcm49WWVuZGkgcnQ9ODczNzQ3NzY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODczNzEwMDg1CkhtbSBqYSwgZGFzIGlzdCBqYSBndXQgdW5kIHNjaG9lbiwgd2FzIER1IGRhIHJlY2huZXN0LCBudXIgd2FzIGlzdCBtZWluZXIKZ2VzYW10ZW4gZWlubG9nZ3R6ZWl0IGJpcyB6dSBkZW0gZnJlaXRhZyA/IERhcyBtdWVzc3RlIHNpY2ggYXVmIHVlYmVyCmVpbmVuIFRhZyBiZWxhdWZlbgoKSmFuaWNlIHNpZWh0IGVpbiBLYXJ0ZW5oYXVzIHp1c2FtbWVuZmFsbGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc293YXMgLi4uIChIYWRyYSwgIDkuIFNlcCAxOTk3LCAxMjo0ODowMCk6Cn4jISBybj1KYW5pdHplIHJ0PTg3MzcxMDA4NSByZz1zY2htYXJybgp+IyEgdGlkPTg3MzcxMDA4NQp2ZXJtdXRsaWNoIGhhc3QgZHUgZGllIG1laXN0ZSB6ZWl0IGdlaWRlbHQsIGRhcyB3aXJkIGJlaSBzcGllbGVybiBhYmdlem9nZW4KdW5kIHp1IGpvZiBhZGRpZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadWZhbGw/IChBbGluZSwgIDkuIFNlcCAxOTk3LCAxNjo1MjoyMik6CgplYmVuIHBhc3NpZXJ0OgoKW1phdWJlcmVyOkplbWFuZF0gZGVyIGdpbGRlbmxhZGVuIGlzdCBmdWVyIDUgbWludXRlbiBnZXNwZXJydCwgc29ycnkuLi5iaXR0ZQpbWmF1YmVyZXI6SmVtYW5kXSBuaWNoIGRhIHJlaW53dXNlbG4KQ29ubmVjdGlvbiBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnZvcmFobnVuZy4uLj8gKEFuYXRvbCwgIDkuIFNlcCAxOTk3LCAxODowNDoxMyk6Cn4jISBybj1BbGluZSBydD04NzM4MTY3NDIgcmc9c2NobWFycm4KfiMhIHRpZD04NzM4MTY3NDIKCltBbGxnZW1laW46WWFudHJvXSBzby4uLi4gYnllYnllLi4uCltUb2Q6TGFyc10gRWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWwgaGF0IGdlcmFkZSBab3JybyB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsXSBQZmZmZmZmZmZmZmZ0Li4uLi4uLlBMVU1QUyEKCk5lZWUsIG5lPyAKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZm9ybXVsYXIgKEdyaW1tYm9ybiwgIDkuIFNlcCAxOTk3LCAxODo0Mjo1NCk6Cn4jISBvbj1UYW5vcyBvdD04NzM4MTk3ODAgb2c9YWxsZ2VtZWluZXMKSWNoIGdydWVzc2UgZGVuIEthZW1wZmVyYnVuZCEKTWljaCBpbnRlcmVzc2llcnQgc2VociBkYXNzIHdhcyBzaWUgbWFjaGVuLHVuZCBpY2ggd3VlcmRlIG1pY2ggc2VociBnZXJuZQpuYWVoZXIgZXJrdW5kaWdlbiB1bmQgc2VsYmVyIGJlaW0gQnVuZCBtaXRtYWNoZW4hTWVociBrYW5uIGljaCBkYXp1IGltIE1vbWVudApuaWNodCBzYWdlbiEKSG9jaGFjaHR1bmdzdm9sbCBUYW5vcyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW5hdG9sLCAgOS4gU2VwIDE5OTcsIDE5OjE5OjQ0KToKCls8TWFzdGVSPjpLZXldIEFyZ3MgOikgaWNoIGhhdHRlIGdsZWljaCBuZW4gc2NobmVld2Vpc3NlbiBzY2hsZWllciAuLiA6KApbVG9kOkxhcnNdIEVpbiBEaWUgRXJkZ3J1YmUgaGF0IGdlcmFkZSBLZXkgdW1nZWJyYWNodC4KCkF1dHNjaC4KQW5hdG9sIDooCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGZvcm11bGFyIChHcmltbWJvcm4sICA5LiBTZXAgMTk5NywgMjA6MDE6MDMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg3MzgyMzM3NCByZz1zY2htYXJybgp+IyEgdGlkPTg3MzgyMzM3NApJbW1lcmhpbiBkZW4gVG9uZmFsbCBoYXQgZXIgc2Nob24gZ3V0IGRyYXVmLiBNYW4gYWNodGUgYXVmIGRpZSBBdXNydWZlemVpY2hlbi4KOy0pCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZm9ybXVsYXIgKENhdHdlYXpsZSwgIDkuIFNlcCAxOTk3LCAyMDowNDozNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODczODI4MDYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODczODIzMzc0CkhtLCBhYmVyciBlcnJyIHJycm9sbHQgZGFzIHJycnJycnJyIG5vY2ggbmljaHQgYXVzcnJyZWljaGVuZCEKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDEwLiBTZXAgMTk5NywgMDA6MDE6MzYpOgpIdWNoLCBkaWUgbGV0enRlbiBkcmVpIFNwcnVlY2hlIGtvbW1lbiBtaXIgdW5iZWthbm50IHZvci4gSWNoIHNjaHJlaWIgbWFsIGFsbGUKZHJlaSwga2FubiBzaWNoIGplZGVyIGVpbmVuIGF1c3N1Y2hlbi4gVW5kIGljaCB2ZXJzdWNoZSwgaW4gWnVrdW5mdAp6dXZlcmxhZXNzaWdlciB6dSBzZWluLi4uCgoiIERpZSBBdWdlbiBkZXIgTGllYmUgc2VoZW4ga2VpbmUgRmVobGVyIgoKIkFsbGUgbGFzdGVuIGdlcm5lIGF1ZiBkZW4sZCBlciBnZXJuZSB0cmFlZ3QiCgoiWnUgSGF1c2UgaXN0IGRlciBIdW5kIGFtIG11dGlnc3RlbiIKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnJ1ZWhlciB3YXIgYWxsZXMgYW5kZXJzLi4uLiAoQW5hdG9sLCAxMC4gU2VwIDE5OTcsIDAxOjE0OjI1KToKQXVzIGVpbmVtIExvZyB2b20gMTUuIFNlcHRlbWJlciAnOTU6CgpbU2VoZXI6TD8/P10gRnJ1ZWhlciB3YXJlbiBkaWUgV2FmZmVuIG5vY2ggbmljaHQgYWJnZXdlcnRldAoKVGhlIFdoZWVsIG9mIFRpbWUgdHVybnMsIGFuZCBBZ2VzIGNvbWUgYW5kIHBhc3MuLi4KQW5hdG9sLCBhbXVlc2llcnQgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLdWsgbWFsIHdlciBkYSBSdW1wcm9iaWVydCA6KSAoUmFmZmksIDExLiBTZXAgMTk5NywgMTI6MzE6NDcpOgoKSGF0ZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpIYXRlICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpIYXRlICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkhhdGUgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkhhdGUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKSGF0ZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKSGF0ZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpIYXRlICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKSGF0IEhhdGUgVEYgZW50ZGVja3QgPwoKR3JpbnMKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hIHNvd2FzLi4uIChMaWxhZiwgMTEuIFNlcCAxOTk3LCAxNjozMDoxMCk6ClRhbmRhbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEaWUgQW5nc3QgaXN0IHN0YWVya2VyIGFscyBEdSAuLiBEdSB3aWxsc3QgbnVyIG5vY2ggd2VnIGhpZXIuCgotTGlsYWYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVsZmVua25laXBlIChCaXJkeSwgMTEuIFNlcCAxOTk3LCAxODowMDozNCk6CmluIGRlciBrbmVpcGUgOgpEaWUgR2FlcnRuZXJpbiB6dXBmdCBlaW5lIHZlcmVpbnplbHRlIFVua3JhdXRwZmxhbnplIGhlcmF1cy4KCipncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBlbGZlbmtuZWlwZSAoQ2F1bm8sIDExLiBTZXAgMTk5NywgMTg6MTI6MDQpOgp+IyEgcm49QmlyZHkgcnQ9ODczOTkzNjM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODczOTkzNjM0CkF1cyBkZW0gVGVlPyBvZGVyIGRlbSBXZWluPyB3byBnaWJ0IGVzIHNvbnN0IG5vY2ggdW5rcmF1dCBkcmluPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVjaCB3ZW5uIC4uIChBbGJvaW4sIDExLiBTZXAgMTk5NywgMTk6MTg6MzcpOgouLiBHcmltbWkgbmljaHQgZGEgaXN0IHVtIGlobiB6dSBhZXJnZXJuLiBJY2ggbXVzcyBlaW5mYWNoIGF1Y2htYWw6CkFsaW5lIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KQWxpbmUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KS29sa28ga3JhZWNoenQ6IC4uLiBkdSBrYW5uc3QgaGllciBzZWxiZXIgd2FzIC4uLiBkdSBrYW5uc3QgaGllciBzZWxiZXIgd2FzCktvbGtvIGtyYWVjaHp0OiAuLi4KW0FsbGdlbWVpbjpBbGJvaW5dIG9iIGljaCBkYXMgcG9zdGU/Cj4gW0FsbGdlbWVpbjpBbGluZV0gTkVJTiEKW0FsbGdlbWVpbjpBbGluZSBpc3QgbmljaHQgc28gZGljayFdCltBbGxnZW1laW46SXZvXSBkb2NoLCBubmFkdwpbQWxsZ2VtZWluOk1hbmdvXSB3YXMgenUgYmV3ZWlzZW4gd2FlcmUgOykKCkFsYm9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVmllbGxlaWNodC4uLiAoQW5hdG9sLCAxMi4gU2VwIDE5OTcsIDA1OjA2OjM4KToKOjo+IFtCaWVyc2NodWV0dGxlcjpCcnVub10gSGUsIGRhcyBNb3JnZW5HcmF1ZW4gaXN0IGphIHNjaG9uIHdpZWRlciBsYW5nZSB1cC4KVmllbGxlaWNodCBzb2xsdGUgU2hha3kgX2Rlbl8gU3BydWNoIG1hbCBmdWVyIGVpbmUgV2VpbGUgYWJrbGVtbWVuIDstKQoKQW5hdG9sLCBzY2htdW56ZWxuZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW5zIFp3ZWkgRHJlaSAoUmFmZmksIDEyLiBTZXAgMTk5NywgMTI6NTQ6MzEpOgogICAgVG9wbGlzdGUgZGVyIEJhcmVpbnphaGxlcgogICAgPT09PT09PT09PT09PT09PT09PT09PT09PQoKKy0tLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rCnwgICB8IE5hbWUgICAgICAgICB8ICAgTXVlbnplbiAgfAorLS0tKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSsKfCAxLnwgUmFmZmkgICAgICAgIHwgICAxMjM0NTY3OCB8CgpPaywgOCBTdGVsbGVuIEZ1bmt0aW9uaWVyZW4sIHNjaGF1bWEgbWFsIG9iIE5ldW4gYWN1aCBub2NoIGdlaGVuLgoKOikKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaW5zIFp3ZWkgRHJlaSAoQW5hdG9sLCAxMi4gU2VwIDE5OTcsIDEzOjI4OjQxKToKfiMhIHJuPVJhZmZpIHJ0PTg3NDA2MTY3MSByZz1zY2htYXJybgp+IyEgdGlkPTg3NDA2MTY3MQpCb2gsIGJpc3QgRHUgdG9sbC4KCm5vbWVuIGVzdCBvbWVuLApBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZWFrdGlvbiBhdWYgZGFzIHR5cGlzY2hlIEphc3Blci1FY2hvYWxsLi4uOiAoQW5hdG9sLCAxMi4gU2VwIDE5OTcsIDE2OjMzOjMyKToKSHVlcGZlciBydWZ0OiBhYWFhYWFhYWFhYWFhYWFhYWFhaApTYWlLQU4gcnVmdDogYWhoaGhoaGhoaGhoaGgKCklyZ2VuZHdpZSBzZWhyIGxhdXRtYWxlcmlzY2gsIG1hbiB3ZWlzcyBnZW5hdSwgd2VsY2hlcyAiYSIgd2llIGtsaW5ndC4gOykKCkFuYXRvbCA6KSBGb25lZGlnZXIgCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVm9uIHdlbSBzdGFtbXQgZGllc2UgU2VxdWVuei4uLiAoSGFyYWtpcmksIDE0LiBTZXAgMTk5NywgMDY6MjY6MTQpOgouLi4uIGRpZSBtaXQgZGllc2VuIFdvcnRlbiBlbmRldDoKCiAgICAgICAgICAgICAgU2Nod2Vpc3NnZWJhZGV0IHdhY2hzdCBEdSB3aWVkZXIgYXVmLgoKV3VlcmRlIG1pY2ggaW50ZXJlc3NpZXJlbiwgZGllIGlzdCBuYWVtbGljaCB3aXR6aWcgOikKCkhhcmFraXJpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZvbiB3ZW0gc3RhbW10IGRpZXNlIFNlcXVlbnouLi4gKENhcmFkaHJhcywgMTQuIFNlcCAxOTk3LCAxODozNjo0MSk6Cn4jISBybj1IYXJha2lyaSBydD04NzQyMTExNzQgcmc9c2NobWFycm4KfiMhIHRpZD04NzQyMTExNzQKRGllIGlzdCB2b24gbWlyLCBIYXJha2lyaSwgZGFua2UgZnVlciBkYXMgTG9iLiA6LSkKQnp3LjogU2llIGlzdCB2b24gbWVpbmVtIE1hZ2llci1FcnN0Y2hhcmFrdGVyIE1ldGhlZHJhcy4KCiAgIEJlcmdjaGVuIFJvdGhvcm4gQ2FyYWRocmFzIHVuZCBkZXIgbGV0enRlIEJlcmcgTWV0aGVkcmFzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDE1LiBTZXAgMTk5NywgMDA6MDc6MjEpOgpPSywgd2VpbCBpY2ggbWVpbmVuIEthbGVuZGVyIG5pY2h0IGRhYmVpIGhhYmUgaGFsdCBlaW5lciwgZGVuIGljaCB3b2FuZGVycwpnZWtsYXV0IGhhYmU6CgoiTGllZ3QgZGVyIE5vZXJnbGVyIHRvdCBpbSBLZWxsZXI6IEZlbnN0ZXIgYXVmLCBkYW5uIGZhdWx0IGVyIHNjaG5lbGxlciEiCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkltbWVyIHdpZWRlciBzY2hvZW4uIChNaW5kYmxhZGUsIDE1LiBTZXAgMTk5NywgMDA6NTA6MDcpOgpOZXVsaWNoIGluIFphcmRveicgQnVyZzoKRWluIER1bmtlbGRhZW1vbiBsYWV1ZnQgZ2VnZW4gZWluZW4gYXVmZ2VtYWx0ZW4gRHVyY2hnYW5nIGltIE9zdGVuLgpEZXIgRHVua2VsZGFlbW9uIGJyaWNodCB0b3QgenVzYW1tZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbGZlbiAmIFp3ZXJnZSAoR3JpbW1ib3JuLCAxNS4gU2VwIDE5OTcsIDAzOjMyOjI3KToKfiMhIG9uPUdsb2luc29uIG90PTg3NDI4Njk2OCBvZz1hbGxnZW1laW5lcwpIaWVyIGZvbGd0IGRhbm4gZWluZSBsYW5nZSBuaWNodCBlcnNjaG9lcGZlbmRlIEJlaGFuZGx1bmcgZGVzCmltbWVyIHdpZWRlciBzcGFubmVuZGVuIFRoZW1hczoKCltBbGxnZW1laW46WmFyZG96XSBIZXV0IGhhZXQgaWNoIENhcmEqIGZhc3QgZ2VraWxsdCwgZXIgaGF0dGUgZ2x1ZWNrLCBkYXNzIGRlcwpbQWxsZ2VtZWluOlphcmRvel0gVGFnIHdhciA8MDI6MDc6NTM+CltBbGxnZW1laW46R3JpbW1ib3JuXSBBYmVyIG5pY2h0IGhpZXIuIDwwMjowODowNT4KW0FsbGdlbWVpbjpaYXJkb3pdIE5vZSwgbmF0dWVybGljaCBuZXQgPDAyOjA4OjE5PgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gRWJlbiwgaGllciB3YWVyZSBkYXMgImZhc3QiIGJpc2NoZW4gc2VsdHNhbSBnZXdlc2VuLi4uCltBbGxnZW1laW46R3JpbW1ib3JuXSA8MDI6MDg6Mzk+CltBbGxnZW1laW46WmFyZG96IGdyaW5zdCA8MDI6MDg6NTc+XQpbQWxsZ2VtZWluOlphcmRvel0gV2FzIHNwaWVsdCBDYXJhIGF1Y2ggbmVuIEhpZ2gtRWxmLi4uIGlnaXR0IDwwMjowOToxNj4KW0FsbGdlbWVpbjpHcmltbWJvcm5dIE5hamEsIGltbWVyaGluIHNjaGVpbnQgZXIgaGFsdCB1ZWJlcmxlYnQgenUgaGFiZW4uCltBbGxnZW1laW46R3JpbW1ib3JuXSA8MDI6MDk6Mzg+CltBbGxnZW1laW46WmFyZG96XSBXaWUgZ2VzYWd0LCBlcyB3YXIgVGFnLiBEYXMgYmVrb21tdCBuZW0gRHJvdy1FbGYgd2llIG1pcgpbQWxsZ2VtZWluOlphcmRvel0gbmljaHQgc28gZ3V0IDwwMjoxMDowMT4KW0FsbGdlbWVpbjpHcmltbWJvcm5dIERyb3ctRWxmZW4gc2luZCBhdWNoIHNjaGVpc3NlLiA8MDI6MTE6MTE+CltBbGxnZW1laW46R3JpbW1ib3JuXSBFbGYgaXN0IEVsZi4gPDAyOjExOjE3PgpbQWxsZ2VtZWluOkFuYXRvbF0gRnVlciBuZW4gU2NobWV0dGVybGluZyBpc3QgZGVyIEtsZWluZSBhYmVyIHZlcmRhbW10IGZyZWNoLgpbQWxsZ2VtZWluOkFuYXRvbF0gPDAyOjExOjM5PgpbQWxsZ2VtZWluOlBha2UgdmVyYWJzY2hpZWRldCBzaWNoLi4uZGllc21hbCBhbHMgU2VoZXIgOik9KSA8MDI6MTI6MTM+XQpbQWxsZ2VtZWluOkFuYXRvbF0gQmVpbGVpZC4gPDAyOjEyOjI5PgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gRGFzIGlzdCBudXIgYWV1c3NlcmxpY2gsIHRpZWYgaW4gbWlyIGRyaW5uZW4gYmluIGljaApbQWxsZ2VtZWluOkdyaW1tYm9ybl0gbmF0dWVybGljaCBad2VyZy4gPDAyOjEyOjQzPgpbQWxsZ2VtZWluOlphcmRvel0gQWx0ZXIsIHN0aW5rZW5kZXIgWndlcmcgbWVpbnN0IGR1IDwwMjoxMjo1Mz4KW0FsbGdlbWVpbjpBbmF0b2xdIERhcyBpc3QgUGxlb25hc211cy4gPDAyOjEzOjA1PgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gQWxsZXMgZGVyIE5laWQgdm9uIHVuZmFlaGlnZW4gU3BpdHpvaHJlbi4gPDAyOjEzOjQxPgpbQWxsZ2VtZWluOkFuYXRvbF0gRXMgZ2lidCBrZWluZSBtYWVubmxpY2hlbiB1bmZhZWhpZ2VuIFNwaXR6b2hyZW4uIDwwMjoxNDoxNz4KW0FsbGdlbWVpbjpBbmF0b2wgZHJ1ZWNrdCBzaWNoIG1hbCB3aWVkZXIgdm9yc2ljaHRpZyBhdXMgOykgPDAyOjE0OjI1Pl0KW0FsbGdlbWVpbjpaYXJkb3pdIEFuIG1laW5lbSBndWVydGVsIGhhZW5nZW4gZGllIFNjbGFwcyB2b24gMjkgaHVtYW5zLCBvbmUKW0FsbGdlbWVpbjpaYXJkb3pdIGhhbGZsaW5nLCBzaXggaGlnaC1lbGZzLCBmaXZlIGR3YXJmcy4uLiA8MDI6MTQ6NDM+CltBbGxnZW1laW46U3VuZmxvd2VyIGdlaHQgaW5zIGJldHQgdW5kIHdpbmt0IDwwMjoxNTowMT5dCltBbGxnZW1laW46QW5hdG9sXSBOdXIgZnVlbmYgWndlcmdlPyBTaW5kIGRpZSB3aXJrbGljaCBzbyBla2xpZz8gPDAyOjE1OjA1PgpbQWxsZ2VtZWluOlphcmRvel0gTnVyIDUgWndlcmdlLCB3ZWlsIGRpZSBrYXVtIGVpbmVyIHNwaWVsZW4gd2lsbCwgd2FzIG1hbgpbQWxsZ2VtZWluOlphcmRvel0gdmVyc3RlaGVuIGthbm4gOikgPDAyOjE1OjIzPgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gV2FzIG1laW5zdCBEdSBtaXQgIm1hZW5ubGljaCI/IERhcyBpc3Qgd29obCBlaW5lCltBbGxnZW1laW46R3JpbW1ib3JuXSBWb2thYmVsLCBkaWUgYmVpIEVsZmVuIHZvZWxsaWcgZGVwbGF6aWVydCBpc3QuLi4KW0FsbGdlbWVpbjpHcmltbWJvcm5dIDwwMjoxNTozNT4KW0FsbGdlbWVpbjpaYXJkb3pdIERhcyBnaWx0IG5hdHVlcmxpY2ggZXJzdHJlY2h0IGZ1ZXIgSGFsZmxpbmdzLCBkYSBzaW5kIHdpcgpbQWxsZ2VtZWluOlphcmRvel0gdW5zIGphIHdvaGwgYWxsZSBlaW5pZyA6KSA8MDI6MTU6Mzk+CltBbGxnZW1laW46QW5hdG9sXSBBbHNvIEVsZmVuIGtvZW5uZW4gZGFzIHVudGVyc2NoZWlkZW4sIEdyaW1taS4gVW5kIER1CltBbGxnZW1laW46QW5hdG9sXSBoYWVsdHN0IEVsZmVuIG51ciBmdWVyIGJpLCB3ZWlsIER1IG5pY2h0IHdlaXNzdCwgd2VyIGVpbiBlcgpbQWxsZ2VtZWluOkFuYXRvbF0gdW5kIHdlciBlaW5lIHNpZSBpc3QuIEltIGdlZ2Vuc2F0eiB6dSBkZW4gWndlcmdlbiwgZGllCltBbGxnZW1laW46QW5hdG9sXSB3aXNzZW4gZXMgamEgc2VsYnN0IG5pY2h0Li4uIDwwMjoxNjoyMT4KW0FsbGdlbWVpbjpHcmltbWJvcm5dIEZhbHNjaCwgaWNoIGhhbHRlIEVsZmVuIG5pY2h0IHdpcmtsaWNoIGZ1ZXIgYmkuCltBbGxnZW1laW46R3JpbW1ib3JuXSA8MDI6MTc6MTk+CltBbGxnZW1laW46WnVlcmlsZXVdIGJlbGVpZGlnZSBub2NoZWlubWFsIGRpZSBSYXNzZSBkZXIgendlcmdlIHVuZCBpY2ggaGFlbmcKW0FsbGdlbWVpbjpadWVyaWxldV0gRGljaCBhbiBkZWluZW0gIk5pY2h0cyIgendpc2NoZW4gZGVuIEJlaW5lbiBhdWYgIQpbQWxsZ2VtZWluOlp1ZXJpbGV1XSA8MDI6MTc6MjM+CltBbGxnZW1laW46TmljaHRzXSBEdSBoYXN0IG1pY2ggRUlOTUFMIGluIGRlciBHaWxkZSB1bWdlYnJhY2h0LCBadWVyaSwgc2VpCltBbGxnZW1laW46TmljaHRzXSBibG9zcyB2b3JzaWNodGlnICpncnJycnJyKiA8MDI6MTc6NDM+CltBbGxnZW1laW46R3JpbW1ib3JuXSBEaWUgc2luZCBzY2h3dWwgdW5kIG51ciBnZWxlZ2VudGxpY2ggenUgZHVtbSAob2RlciB6dQpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gbm90Z2VpbCksIHVtIHJlY2h0emVpdGlnIHp1IG1lcmtlbiwgZGFzcyBzaWUgbWl0IGVpbmVyCltBbGxnZW1laW46R3JpbW1ib3JuXSBFbGZpbiBydW1tYWNoZW4uIDwwMjoxNzo1Nj4KW0FsbGdlbWVpbjpBbmF0b2xdIFJlZCcgbnVyIHdlaXRlciwgR3JpbW1pIDopIEVzIGlzdCBiZWx1c3RpZ2VuZCwgZWluZW0KW0FsbGdlbWVpbjpBbmF0b2xdIEF1c3NlbnNlaXRlciwgZGVyIHZvbiBUdXRlbiB1bmQgQmxhLi4uIGFlaC4uLiBUcm9tcGV0ZW4KW0FsbGdlbWVpbjpBbmF0b2xdIGtlaW5lIEFobnVuZyBoYXQsIHp1enVob2VyZW4uIDwwMjoxODozND4KW0FsbGdlbWVpbjpBbmF0b2wgd2Vpc3MsIHdhcnVtIGVyICJ2b24iIHVuZCBuaWNodCAidm9tIiBzY2hyaWViIDspIDwwMjoxODo1MD5dCltBbGxnZW1laW46WnVlcmlsZXVdIG5pY2h0cywgaGloaS4uIDwwMjoxODo1ND4KW0FsbGdlbWVpbjpadWVyaWxldV0gbmljaHRzLi4gbmFqYSBlcyB3YXIgbHVzdGljaCA9OikgaGloaSA8MDI6MTk6MDY+CltBbGxnZW1laW46R3JpbW1ib3JuXSBJaHIgRWxmZW4gd2lzc3QgZG9jaCBnYXIgbmljaHQsIHdhcyBlaW5lIHdpcmtsaWNoZQpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gQmV6aWVodW5nIGlzdC4gTmFqYSwgd2FzIHdpbGwgbWFuIHNjaG9uIGVyd2FydGVuIHZvbgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gZWluZXIgUmFzc2UsIGRpZSB3ZW5pZ2VyIGFscyAzIEphaHJlIHVtIGVpbmVuIFBhcnRuZXIKW0FsbGdlbWVpbjpHcmltbWJvcm5dIHdpcmJ0LiA8MDI6MjA6MDg+CltBbGxnZW1laW46R3JpbW1ib3JuXSBVbmQgZGllIGVpbmUgTGViZW5zZXJ3YXJ0dW5nIHZvbiA1MDAwIEphaHJlbiBoYXQsIGFiZXIKW0FsbGdlbWVpbjpHcmltbWJvcm5dIGltbWVyIG5vY2ggbmljaHQgZGllIFdlbHQgaGFsYndlZ3MgYmV2b2Vsa2VydCBoYXQuIFNPCltBbGxnZW1laW46R3JpbW1ib3JuXSBlaW5lIEZydWNodGJhcmtlaXQgaXN0IHNjaG9uIHZlcmRhZWNodGlnLiA8MDI6MjA6NDQ+CltBbGxnZW1laW46QW5hdG9sXSAiVmVyaHVldHVuZyIgaGVpc3N0IGRhcyBTY2hsdWVzc2Vsd29ydCwgR3JpbW1pIDopCltBbGxnZW1laW46UmVnaXNdIEdpYnQgZXMgZWlnZW50bGljaCBlaW5lIE1laHJzcGllbGVydmFyaWFudGUgdm9uIE5ldGhhY2ssIGRpZQpbQWxsZ2VtZWluOlJlZ2lzXSBleHBlcnQgb2RlciBzbyBhZW5obGljaCBoZWlzc3Q/IE9kZXIgaGFiZSBpY2ggZGEgaGFiZSBpY2ggZGEKW0FsbGdlbWVpbjpSZWdpc10gZXR3YXMgdmVyd2VjaHNlbHQ/CltBbGxnZW1laW46WnVlcmlsZXVdIGVsZmVuLCBCYWggZWluIHp1IGdyb3NzIGdlcmFkbmUgbWVuc2NoZW4tbWlzc2dlYnVydC4uIG5peApbQWxsZ2VtZWluOlp1ZXJpbGV1XSB2b24gYmVkZXV0dW5nIGFscyBsZWJlbiwgbml4IHdlcnQgYXVzc2VyIGZ1ZXIgZGVuCltBbGxnZW1laW46WnVlcmlsZXVdIHNrbGF2ZW5oYW5kZWwsIHNpZSB0YXVnZW4gaG9lY2hzdGVucyBhbHMgSHV0c3RhZW5kZXIKW0FsbGdlbWVpbjpaYXJkb3pdIFNhZyBpY2ggYXVjaCBpbW1lci4KW0FsbGdlbWVpbjpBbmF0b2xdIE5hamEsIGRhIG11c3MgaWNoIFp1ZXJpIHp1c3RpbW1lbi4uLiB3ZXIgd2lsbCBzY2hvbiBlaW5lbgpbQWxsZ2VtZWluOkFuYXRvbF0gWndlcmcgYWxzIFNrbGF2ZW4/CltBbGxnZW1laW46QW5hdG9sIHNjaHVldHRlbHQgc2ljaC5dCltBbGxnZW1laW46R3JpbW1ib3JuXSBKYSwgYWJlciBWZXJodWV0dW5nIGhlaXNzdCBuaWNodCwgZGFzcyBtYW5zIGRhbm4gbWl0IGRlbQpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gVGVpbCBkZXIgQmV2b2Vsa2VydW5nIG1hY2h0LCB3b3Mga2VpbmUgTmFjaGtvbW1lbiBnZWJlbgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0ga2Fubi4uLgpbQWxsZ2VtZWluOkFuYXRvbF0gSUdJVFQhIFNpbmQgWndlcmdlIGVpZ2VudGxpY2ggc3R1YmVucmVpbj8KW0FsbGdlbWVpbjpBbmF0b2xdIEdyaW1taSwgd2FzIGlzdCBmYWxzY2ggZGFyYW4sIHdlbm4gZXMgZWluZSBFbGZpbiBtaXQgZWluZW0KW0FsbGdlbWVpbjpBbmF0b2xdIEVsZmVuIG1hY2h0LCBvYndvaGwgZGVyIHdvaGwgbmllIGVpbiBFbGZjaGVuIGF1c3RyYWdlbiB3aXJkCltBbGxnZW1laW46QW5hdG9sXSA7LSkgPwpbQWxsZ2VtZWluOkdsb2luXSBNdWVzc2VuIHdpciB3b2hsIHNlaW4uIFdpciBrb2VubmVuIGphIG5pY2h0IHdpZSBpaHIgZ2VnZW4KW0FsbGdlbWVpbjpHbG9pbl0gaXJnZW5kd2VsY2hlIEJhZXVtZSBwaXNzZW4uCltBbGxnZW1laW46QW5hdG9sIHRhZXRzY2hlbHQgR3JpbW1ib3JuIGRlbiBLb3BmIHVuZCBnZWh0IHNpY2ggZGllIEhhZW5kZQp3YXNjaGVuLl0KW0FsbGdlbWVpbjpCbG9vZHlIYXJyeV0gaG1tLCBnaWJ0IGRvY2ggYm9uc2FpIGJhZXVtZQpbQWxsZ2VtZWluOkdsb2luXSBEZXNoYWxiIHNpbmQgZGllIEJhZXVtZSBpbiBkZW4gRWxmZW53YWVsZGVybiwgaW5zYmVzb25kZXJlCltBbGxnZW1laW46R2xvaW5dIGRlbiBTdGFlZHRlbiwgc28gZ3Jvc3MuCltBbGxnZW1laW46QW5hdG9sXSBBdWNoIGluIFJhdHRlbmxvZWNoZXJuPwpbQWxsZ2VtZWluOlp1ZXJpbGV1IGhhdCBzb3ZpZWxlIEVsZmVuIHNjaG9uIGltIGthbXBmIGdla2lsbHQuLiBqZWRlciB3YXIgZXMKd2VydF0KW0FsbGdlbWVpbjpBbmF0b2xdIEljaCBrYW5uIGRhcyB2b24gWndlcmdlbiBuaWNodCBiZWhhdXB0ZW4uLi4gd2FzIGlzdCBlaW4KW0FsbGdlbWVpbjpBbmF0b2xdIFp3ZXJnIHNjaG9uIHdlcnQuIERhIG1hY2h0IG1hbiBzaWNoIG51ciBkZW4gU3BlZXIKW0FsbGdlbWVpbjpBbmF0b2xdIHNjaG11dHppZy4uLiA6LVwKW0FsbGdlbWVpbjpadWVyaWxldV0gZGllIHJhdXNnZXJpc3NuZW4gR2VkYWVybWUgZGVyIEVsZmVuIHdhcmVuIHNvZ2FyIHN1ZXNzZQpbQWxsZ2VtZWluOlp1ZXJpbGV1XSBsZWNrZXJlaWVuIGZ1ZXIgbWFsIHp3aXNjaGVuZHVyY2ggPTopCltBbGxnZW1laW46R2xvaW5dIEljaCBiaW4gZnVlciBkaWUgRW5kbG9lc3VuZzoKW0FsbGdlbWVpbjpHbG9pbl0gZmlsdGVyX29iamVjdHMoZmlsdGVyX29iamVjdHModXNlcnMoKSwiaWQiLCJlbGYiKSwicmVtb3ZlIik7CltBbGxnZW1laW46QW5hdG9sXSBVaSwgRHUga2FubnN0IHNvZ2FyIGVpbiB3ZW5pZyBscGMtY29kZSwgYmlzdCBEdSBkYXJhdWYgYXVjaApbQWxsZ2VtZWluOkFuYXRvbF0gbm9jaCBzdG9sej8gOikKW0FsbGdlbWVpbjpBbmF0b2xdIGJ0dzogV2VyIGhhdCBoaWVyIGRpZSBpZCAnZWxmJz8KW0FsbGdlbWVpbjpHcmltbWJvcm5dIEljaCB3ZWlzcywgbWVpbmUgRXJmYWhydW5nZW4gc2luZCBhbnRpcXVpZXJ0LCBhYmVyCltBbGxnZW1laW46R3JpbW1ib3JuXSBmcnVlaGVyIHdhcmVuIHNhZW10bGljaGUgRWxmZW4gaGllciBuaWNodCBhbm5hZWhlcm5kIHNvCltBbGxnZW1laW46R3JpbW1ib3JuXSBrb21wbGl6aWVydCB6dSBiZXNpZWdlbiB3aWUgZGllIFp3ZXJnZW5zdGFkdC4KW0FsbGdlbWVpbjpBbmF0b2xdIEphLCBkaWUgRWxmZW53YWVjaHRlciBoaWVyIHdhcmVuIGJlaSBlaW5lbSB6d2VyZ2lzY2hlbgpbQWxsZ2VtZWluOkFuYXRvbF0gTGVocmVyLi4uIHp1IHNjaGFkZSA6KApbQWxsZ2VtZWluOkRob2pha3RdIGRhcyBtdXNzIGFiZXIgc2Nob24gc2VlaHIgbGFuZ2Ugdm9yIGRlaW5lciBtYWdpZXJ6ZWl0CltBbGxnZW1laW46RGhvamFrdF0gZ2V3ZXNlbiBzZWluLCBncmltbWkuLi4KW0FsbGdlbWVpbjpaYXJkb3pdIFdvaGVyIHdpbGxzdCBkdSBkYXMgd2lzc2VuPyBEdSBoYXN0IGRvY2ggbmljaHQgZXR3YSBkZWluZW4KW0FsbGdlbWVpbjpaYXJkb3pdIGVpZ2VuZW4gS29lbmlnIGFuZ2VncmlmZmVuLCBHcmltbWJvcm4/CltBbGxnZW1laW46R3JpbW1ib3JuXSBLYXVtLCBkZW5uIGRpZSBad2VyZ2Uga29ubnRlbiBrYWVtcGZlbi4gRGEga2FtZW4gYXVjaApbQWxsZ2VtZWluOkdyaW1tYm9ybl0gZGllIER1bmtlbGVsZmVuIG5pY2h0IG1pdCAoYmVpIGRlbmVuIHdhciBudXIgZGVyCltBbGxnZW1laW46R3JpbW1ib3JuXSBSVWVja3dlZyBsYWVuZ2VyKS4KW0FsbGdlbWVpbjpBbmF0b2xdIFphcmRveiwgWndlcmdlIHR1biBzb3dhcyA6KQpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gTmVpbiwgaWNoIG5pY2h0LiBEZXN3ZWdlbiBoYXR0ZSBpY2ggamEgYW0gRW5kZSBkZW4genQKW0FsbGdlbWVpbjpHcmltbWJvcm5dIGF1Y2ggbmljaHQuLi4KW0FsbGdlbWVpbjpBbmF0b2xdIE9oLCBkaWUgRHVua2VsZWxmZW4gaGFiZW4gbWFlY2h0aWcgZGF6dWdlbGVybnQuCltBbGxnZW1laW46QW5hdG9sXSBTY2hlaXNzLVRydmVzIDspKQpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gTmVpbiwgRGhvamFrdC4gSWNoIGJpbiBpbSBNYWVyeiAxOTk1IE1hZ2llciBnZXdvcmRlbiwgZGEKW0FsbGdlbWVpbjpHcmltbWJvcm5dIGdhYnMgRGljaCBub2NoIGxhbmdlIG5pY2h0Li4uCltBbGxnZW1laW46QW5hdG9sXSBIbSwgaWNoIGthbm4gbWljaCBub2NoIGRhcmFuIGVyaW5uZXJuLCBiZWltIEZsZWRkZXJuCltBbGxnZW1laW46QW5hdG9sXSBkYWJlaWdld2VzZW4genUgc2Vpbi4KW0FsbGdlbWVpbjpEaG9qYWt0XSBhbHNvIGljaCBiaW4gc3BpZWxlciBnZXdlc2VuLCBiZXZvciBkdSBtYWdpZXIgd3VyZGVzdC4uLgpbQWxsZ2VtZWluOkFuYXRvbCBncmluc3QgWmFyZG96IGJyZWl0IGFuLl0KW0FsbGdlbWVpbjpadWVyaWxldV0gTnVuIGRpZSBHb2V0dGVyIHdhcmVuIHdvaGwgYmVraWZmdCBhbHMgc2llIGRpZSBFbGZlbgpbQWxsZ2VtZWluOlp1ZXJpbGV1XSBwcm9ncmFtbWllcnRlbi4uIGhhaGEuLiBtZWluZSB3aWUgaGFldHRlIHNvbnN0IHNvIGVpbmUKW0FsbGdlbWVpbjpadWVyaWxldV0gbWlzc2dlYnVydCB2b24gcmFzc2UgaGVyYXVza29tbWVuIGtvZW5uZW4KW0FsbGdlbWVpbjpHbG9pbl0gV29sbHRlIGVzIFBhcmEqIGRlbiBLYWVtcGZlcm4gbmljaHQgYXVjaCBlbmRsaWNoIG1hbCBtaXQgZGVyCltBbGxnZW1laW46R2xvaW5dIGdyb2JlbiBLZWxsZSBnZWJlbiA/CltBbGxnZW1laW46RGhvamFrdF0gamFqYSwgaW4gZGVuIHdpcnJlbiB1bXMgbW9lZ2xpY2hlIG1nLWVuZGUgc2luZCBkb2NoIG5vY2gKW0FsbGdlbWVpbjpEaG9qYWt0XSBlaW5pZ2UgaG9oZSBzZWhlciBtYWdnaSBnZXdvcmRlbgpbQWxsZ2VtZWluOkFuYXRvbF0gIktlaW4gVmVydHJhZy4iIHVudCB2ZXJ0cmFnLT4iRGFzIGlzdCBrZWluIFZlcnRyYWcsIGRhaGVyCltBbGxnZW1laW46QW5hdG9sXSBrYW5uIGVyIGF1Y2ggbmljaHQgdW50ZXJzY2hyaWViZW4gd2VyZGVuLiIKW0FsbGdlbWVpbjpBbmF0b2xdIEdyaW1tYm9ybiBoYXQgRGljaCBpbnp3aXNjaGVuIGVpbmVyIHVudGVyc2NocmVpYmVuIGxhc3Nlbj8KW0FsbGdlbWVpbjpBbmF0b2xdICwtKQpbQWxsZ2VtZWluOkJsb29keUhhcnJ5XSBlcyBzdGVodCBoaWVyIHdvaGwgMTA6NSBmdWVyIGRpZSBlbGZlbgpbQWxsZ2VtZWluOkFuYXRvbF0gUGVpbmxpY2gsIHdvIGRvY2ggMSBFbGYgZ2VudWVnZW4gd3VlcmRlLi4uCltBbGxnZW1laW46QW5hdG9sXSBQZWlubGljaCwgd28gZG9jaCAxIEVsZiBnZW51ZWdlbiB3dWVyZGUuLi4KW0FsbGdlbWVpbjpCbG9vZHlIYXJyeV0gdXBzLCA4OjUKW0FsbGdlbWVpbjpHcmltbWJvcm5dIE5laW4sIGljaCBoYWJlIGtlaW5lbiBWZXJ0cmFnIHVudGVyc2NocmllYmVuIHVuZCB3ZXJkZQpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gYXVjaCBrZWluZW4gdW50ZXJzY2hyZWliZW4uCltBbGxnZW1laW46R3JpbW1ib3JuXSBTT2xsZW4gZGllIGRvY2ggbWVpbmVuIFBhcGkgZGFmdWVyIGtvZXBmZW4sIGRhc3MgZXIgc28KW0FsbGdlbWVpbjpHcmltbWJvcm5dIExldXRlIGF1ZiBzb2xjaGUgV2Vpc2Ugd2l6enQuLi4KW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb25dIEVpZ25ldGxpY2gga29lbm50ZW4gd2lyIGphIGF1Y2ggYWJydWVzdGVuLiBFaW4KW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb25dIFp3ZXJnIHNhZWJlbHQgbG9ja2VyIGFjaHQgRWxmZW4gbWFsIGViZW4gZGVuIEtvcGYsCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBvZGVyIGluIEVybWFuZ2VsdW5nIHZvbiBSYXVtIGZ1ZXJzIFNwcmluZ2VuLCBkaWUKW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb25dIHVud2ljaHRpZ2VyZW4gVGVpbGUgYWIuCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBGdWVyIEVsZmVuIGplZGVuZmFsbHMgdW53aWNodGlnIC4uLgpbQWxsZ2VtZWluOkFuYXRvbF0gV2llZGVyIGVpbiBCZWl0cmFnIGVpbmVzIExhaWVuLgpbQWxsZ2VtZWluOkRob2pha3RdIGhtLCBkdSB3aWxsc3QgZG9jaCBuaWNodCBldHdhIG4gZ3JvZXNzZW5wcmVpcyBnZXdpbm5lbj8KW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb24gcXVha3QuIEV4dHJhIFNwcnVuZ2tyYWZ0Ll0KW0FsbGdlbWVpbjpEaG9qYWt0XSBkaWUgbGlua2Uga2xlaW5lIGZ1c3N6ZWhlIGlzdCB0YXRzYWVjaGxpY2ggbmljaHQgc28KW0FsbGdlbWVpbjpEaG9qYWt0XSB3aWNodGlnLCBhYmVyIGRhbm4ga2FubiBtYW4gamEgbWFsIHJpY2h0aWcgYXVmIGRlbgpbQWxsZ2VtZWluOkRob2pha3RdIHZlcnVyc2FjaGVyIGRlcyBhZXJnZXJuaXNzZXMgZHJhdWZ0cmV0ZW4uCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBCZWkgRWxmZW4gZHVlcmZ0ZSBqZWRlciBlaW56ZWxuZSBaZWggenVtCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBBdWZyZWNodGVyaGFsdGVuIGRlcyBHbGVpY2hnZXdpY2h0cyBub2V0aWcgc2VpbgpbQWxsZ2VtZWluOkZyb3NjaCBHbG9pbnNvbl0gLi4uCltBbGxnZW1laW46R3JpbW1ib3JuXSBOb2UsIGJlaSBkZW5lbiBsaWVndCBkZXIgU2Nod2VycHVua3QgamEgcmVsYXRpdiB0aWVmLgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gV2VnZW4ga2VpbiBzb25kZXJsaWNoZXMgR2V3aWNodCBhbSBvYmVyZW4gRW5kZS4KW0FsbGdlbWVpbjpEaG9qYWt0XSBzdGltbXQsIHdvenUgc29sbGVuIGRpZSBhdWNoIDE1IGtpbG8taGVsbWUgbWl0c2NobGVwcGVuLgpbQWxsZ2VtZWluOkRob2pha3RdIFNvb29vIGJsb2VkIG11c3MgaGphIG5pY2h0IGplZGVyIHNlaW4uCltBbGxnZW1laW46R3JpbW1ib3JuXSBFbGZlbiBiZXZvcnp1Z2VuICJTY2hvbmVyIiwgbmljaHQgSGVsbWUuIFdlaWwgbWFuIGphCltBbGxnZW1laW46R3JpbW1ib3JuXSBwcmltYWVyIFRlaWxlIHNjaHVldHplbiBtdXNzLCBkaWUgbWFuIGhhZXVmaWdlcgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gdmVyd2VuZGV0LgpbQWxsZ2VtZWluOkFuYXRvbF0gWndlcmdlIHNjaGFmZmVuIGVzIGphIG5pY2h0LCBkZW4gS29wZiBlaW5lcyBFbGZlbiB6dQpbQWxsZ2VtZWluOkFuYXRvbF0gZ2VmYWVocmRlbi4gSG9lY2hzdGVucyBtaXQgZWluZXIgU0VIUiBsYW5nZW4gQXh0LiA6KQpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gS2VpbiBQcm9ibGVtLiBEYXMgc2NoYWZmZW4gc2llIGF1ZiBkaWUgZ2xlaWNoZSBXZWlzZSwKW0FsbGdlbWVpbjpHcmltbWJvcm5dIHdpZSBlaW4gSG9semZhZWxsZXIgYW4gZGllIEJhdW1rcm9uZSBrb21tdC4KW0FsbGdlbWVpbjpBbmF0b2xdIFdlaXNzdCBEdSBqZXR6dCwgd296dSBkaWUgU2Nob25lciBndXQgc2luZD8KW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb25dIFp3ZXJnaXNjaGUgQWV4dGUgYnJhdWNoZW4gZGVuIEtvZXJwZXIgbmljaHQKW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb25dIHVuYmVkaW5ndCBhbiBkZXIgZHVlbm5zdGVuIFN0ZWxsZSB6dSB0cmVmZmVuLiBPZGVyCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBkdWVtbXN0ZW4uIEhhbGJpZXJlbiByZWljaHQgYXVjaC4KW0FsbGdlbWVpbjpEaG9qYWt0XSBuaWNodCBnYW56OiBiYWV1bWUgYmV3ZWdlbiBzaWNoIGltIGFsbGdlbWVpbmVuIG5pY2h0Li4uCltBbGxnZW1laW46R3JpbW1ib3JuXSBFbGZlbiBhdWNoIG5pY2h0LiBIaW50ZXJoZXIuCltBbGxnZW1laW46RGhvamFrdF0gdGphLCBkYXMgaGludGVyaGVyIG11c3N0ZSBlcnN0bWFsIHNjaGFmZmVuLCBiZWkgZGVyCltBbGxnZW1laW46RGhvamFrdF0gaW50ZWxsaWdlbnogZ2VoZW4gZGllIGRvY2ggd2VnLCBiZXZvciBkZXIgaGFtbWVyCltBbGxnZW1laW46RGhvamFrdF0gdWViZXJoYXVwdCBzY2h3dW5nIGdlaG9sdCBoYXQuLi4KW0FsbGdlbWVpbjpCbG9vZHlIYXJyeV0gaG1tLCB3YXMgcGFzc2llcnQgd29obCB3ZW5uIGVpbiBlbGYgdW5nZXNpY2hlcnQgYXVmCltBbGxnZW1laW46Qmxvb2R5SGFycnldIG5lbiBrbGVpbmVuIHp3ZXJnIGZhZWxsdD8KW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb25dIEljaCBzY2hhZXR6ZSBlciBpc3QgaW50ZWxsaWdlbnQgZ2VudWcKW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb25dIGRhbmViZW56dWZhbGxlbi4gQW5zb25zdGVuIHdpcmQgZXIgd29obCB6d2VpIEVsZmVuCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBzZWluLgpbQWxsZ2VtZWluOkFuYXRvbF0gRXJzdGVyZXMgc2ljaGVyLCBsZXR6dGVyZXMgZWhlciBuaWNodC4KW0FsbGdlbWVpbjpCbG9vZHlIYXJyeV0gb2RlciBkcmVpIHp3ZXJnZSBzaW5kIHVuYW5nZXNwaXR6dCBpbiBkZW4gYm9kZW4KW0FsbGdlbWVpbjpCbG9vZHlIYXJyeV0gZ2VyYW1tdD8KW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb25dIFdpciBoYWJlbiBQbGF0dGZ1ZXNzZS4gRGEgaXN0IG5peCBtaXQgUmFtbWVuLgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gV0llc28gc29sbHRlbiBzaWUgYmVpIGRlciBJbnRlbGxpZ2VueiB3ZWdnZWhlbj8gV2VpbApbQWxsZ2VtZWluOkdyaW1tYm9ybl0gQW5tZWxkZXRlcm1pbiBkZXIgVkhTIGlzdD8KW0FsbGdlbWVpbjpCbG9vZHlIYXJyeV0gbmFqYSwgd2FyIGhhbHQgc29uIGdyb2Vzc2VudmVyZ2xlaWNoCltBbGxnZW1laW46RGhvamFrdF0gdmhzPyBrZW5uIGljaCBoaWVyIG5pY2ggOikgZGFzIHdpcmQgZXJzdCBpbiA1MDAwIGphaHJlbgpbQWxsZ2VtZWluOkRob2pha3RdIGVyZnVuZGVuIChpbnRlbGxpZ2VudGUgdm9yaGVyc2FnZSEpCltBbGxnZW1laW46R3JpbW1ib3JuXSBFbGZlbiBoYWJlbiAyIElRLVB1bmt0ZSBtZWhyIGFscyBTY2h3ZWluZSwgZGFtaXQgc2ljaApbQWxsZ2VtZWluOkdyaW1tYm9ybl0gZGFzIFNjaHdhZW56Y2hlbiBuaWNodCByaW5nZWx0LgpbQWxsZ2VtZWluOkFuYXRvbF0gV293LCB3aWVsYW5nZSBoYXN0IGR1IGdlYnJhdWNodCwgZGllc2VuIGFsdGVuIFNwcnVjaApbQWxsZ2VtZWluOkFuYXRvbF0gaGVydm9yenVrcmFtZW4/IDopCltBbGxnZW1laW46R3JpbW1ib3JuXSBXYXMgZXJ3YXJ0ZXN0IER1IHVtIGRpZXNlIFVocnplaXQ/IEtyZWF0aXZlCltBbGxnZW1laW46R3JpbW1ib3JuXSBHZWlzdGVzYmxpdHplPwpbQWxsZ2VtZWluOkRob2pha3Qgd2FlcmUgaW50ZXJlc3NpZXJ0LCBkYW5uIG5lbiBuYWNrdGVuIHp3ZXJnIHp1IHNlaGVuLCBkaWUKICAgICAgICAgICBoYWJlbiBuYWVtbGljaCB3ZW5pZ2VyIGlRIGFscyBlbGZlbi4gKGF1cyB3ZWVlZWVlaXRlciBmZXJuZQogICAgICAgICAgIGFsbGVyZGluZ3MgbnVyKV0KW0FsbGdlbWVpbjpHcmltbWJvcm5dIFdlbm4gRHUgbWVpbnN0LCBkYXNzIER1IGR1cmNoIGRlbiBCYXJ0IGlyZ2VuZHdhcyBzZWhlbgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0ga2FubnN0Li4uCltBbGxnZW1laW46QW5hdG9sXSBWb3JzaWNodCBEaG9qYWt0LCBiZWkgWndlcmdlbiBrb21tdCA5NSUgZGVzIGdlc2FtdC1JUXMgYXVzCltBbGxnZW1laW46QW5hdG9sXSBkZW0gRHJlY2sgaW4gZGVuIFNjaHVoZW4uLi4KW0FsbGdlbWVpbjpaYXJkb3pdIEljaCBkYWNodGUgZGllIEVzc2Vuc3Jlc3RlIGltIEJhcnQgaGFldHRlbiBtZWhyIElRPwpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gTmljaHQgdW1zb25zdCBzYWd0IG1hbjogQmVzaWVnZSBlaW5lbiBad3JlZyBqZXR6dCB1bmQKW0FsbGdlbWVpbjpHcmltbWJvcm5dIHN0aXJiIGVpbmUgV29jaGUgc3BhZXRlciBhbiBUZXRhbnVzLCBEaXBodGVyaWUgb2RlcgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gc29uc3RpZ2VuIFNjaHdlaW5lcmVpZW4uCltBbGxnZW1laW46R3JpbW1ib3JuXSBFcyBpc3QgcHJha3Rpc2NoIG5pY2h0IG1vZWdsaWNoLCBnZWdlbiBlaW5lbiBad2VyZyB6dQpbQWxsZ2VtZWluOkdyaW1tYm9ybl0ga2FlbXBmZW4gdW5kIHp1IHVlYmVybGViZW4uCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBEYXMgaXN0IGRhcyBzY2hvZW5lIGFuIEVsZmVuLiBHaWIgaWhuZW4gZWluCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBGcmVtZHdvcnQgenVtIFNwaWVsZW4gdW5kIG1hY2ggc2llIHdhZWhyZW5kZGVzc2VuCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBzdHVlY2tjaGVud2Vpc2Uga2xlaW5lci4gU2llIHdlcmRlbiBlcyBuaWNodApbQWxsZ2VtZWluOkZyb3NjaCBHbG9pbnNvbl0gbWVya2VuLgpbQWxsZ2VtZWluOkFuYXRvbF0gR2x1ZWNrbGljaGVyd2Vpc2Uga2VubmVuIFp3ZXJnZSBrZWluZSBGcmVtZHdvZXJ0ZXIuCltBbGxnZW1laW46WnVlcmlsZXVdIE5hamEsIGhhc3QgZHUgZWluZW4gRWxmIGdlc2VoZW4sIGhhc3QgZHUgYWxsZSBnZXNlaGVuLi4KW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb25dIEphLCBkYXMgZGVua2VuIGRpZSBtZWlzdGVuIEVsZmVuLiBJc3QgamEgYXVjaCBuaWUKW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb25dIGVpbmVyIHVlYmVyZ2VibGllYmVuLCBkZXIgYW5kZXJlcyBiZXJpY2h0ZW4KW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb25dIGtvbm50ZS4KW0FsbGdlbWVpbjpBbmF0b2xdIE5hamEsIEVsZmVuIG5laWdlbiBoYWx0IG5pY2h0IGRhenUsIGlyZ2VuZHdlbGNoZXMKW0FsbGdlbWVpbjpBbmF0b2xdIEhlbGRlbi1FcG9zIGVyZmluZGVuIHp1IG11ZXNzZW4uLi4KW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb25dIEljaCB3ZXR0ZSwgYWxsZSBFbGZlbiBoYWJlbiBlaW5lIEdsYXR6ZS4gRGVzaGFsYgpbQWxsZ2VtZWluOkZyb3NjaCBHbG9pbnNvbl0gd2FjaHNlbiBzaWUgc28gaG9jaCwgZGFtaXQgbWFuIGVzIG5jaWh0IHNpZWh0LgpbQWxsZ2VtZWluOkRob2pha3RdIGhtLCBkYWZ1ZXIgZXJrZW5udCBtYW4gYmVpbSB6d2VyZyBuaWNodCwgd28gdm9ybiB1bmQKW0FsbGdlbWVpbjpEaG9qYWt0XSBoaW50ZW4gaXN0LCBydW5kcnVtIHp1Z2V3YWNoc2VuCltBbGxnZW1laW46R3JpbW1ib3JuXSBOb2UsIGRhcyBzdGltbXQgbmljaHQuIEVzIHNlaSBkZW5uLCBzaWUgZW50d2lja2xlbiBpbQpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gTW9tZW50IGRlcyBUb2RlcyBlaW5lbiBnZXdhbHRpZ2VuIEhhYXJ3dWNocy4KW0FsbGdlbWVpbjpadWVyaWxldV0gVW5kIGRpZSBFbGZlbndhZWNodGVyIHNpbmQgd2llIHNjaGFmZSwgZ3JlaWZmc3QgZHUgZWluZW4KW0FsbGdlbWVpbjpadWVyaWxldV0gYW4sIGtvbW1lbiBhbGxlIGFuZGVyZW4gYW5nZWxhdWZlbiB1bSBkaXIgYXVjaCBub2NoIGlucwpbQWxsZ2VtZWluOlp1ZXJpbGV1XSBNZXNzZXIgenUgcmVubmVuID06KQpbQWxsZ2VtZWluOkFuYXRvbF0gRGhvamFrdCwgZGVyIGdyb2Vzc2VyZSBQaWNrZWwgaXN0IGRpZSBOYXNlLCBkb3J0IGlzdCBpbiBkZXIKW0FsbGdlbWVpbjpBbmF0b2xdIFJlZ2VsIGJlaSBlaW5lbSBad2VyZyAidm9ybiIuCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBWb3JuIGlzdCBiZWltIFp3ZXJnIGRvcnQsIHdvIGRpZSBBeHQgYXVmYmxpdHp0LApbQWxsZ2VtZWluOkZyb3NjaCBHbG9pbnNvbl0gYmV2b3IgRGVpbiBLb3BmIGFiZmFlbGx0LgpbQWxsZ2VtZWluOkRob2pha3RdIHZvbiBpbnMgbWVzc2VyIHJlbm5lbiBrYW5uIGtlaW5lIHJlZGUgc2VpbiwgbWl0IDEwIGxhbnplbgpbQWxsZ2VtZWluOkRob2pha3RdIGJlc3RlaHQgYmVpbSB6d2VyZyB2ZXJ3ZWNoc2x1bmdzZ2VmYWhyIG1pdCBuZW0KW0FsbGdlbWVpbjpEaG9qYWt0XSBzdGFjaGVsc2Nod2Vpbi4uLgpbQWxsZ2VtZWluOlp1ZXJpbGV1XSBOYWphIGRlciBnZXdvZWhubGljaGUgWndlcmcgaXN0IGluIGRlciBSZWdlbCBhdWNoIG5peApbQWxsZ2VtZWluOlp1ZXJpbGV1XSB3ZXJ0LCBkYXJ1bSBiaW4gaWNoIGphIGVpbiBEdW5lbHp3ZXJnID06KQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBHYXJkZXdhZWNodGVyc10gRGFzIHNhZyBpY2ggYWxsZXMgSm9mLCBIb29kIQpbQWxsZ2VtZWluOkFuYXRvbF0gc3RpbW10LCBkaWUgc2luZCBlaW4gbXVlZGVzIExhZWNoZWxuIHdlcnQsIGRhcyBpc3QgaW1tZXJoaW4KW0FsbGdlbWVpbjpBbmF0b2xdIGV0d2FzIDopCltBbGxnZW1laW46QW5hdG9sIGxhZWNoZWx0IG11ZWRlLl0KW0FsbGdlbWVpbjpadWVyaWxldV0gRHVua2VsendlcmcKW0FsbGdlbWVpbjpHcmltbWJvcm5dIEphLCBkYXMgbWl0IGRlbiBMYW56ZW4gaXN0IGFsbGVyZGluZ3Mgd2Foci4KW0FsbGdlbWVpbjpHcmltbWJvcm5dIExpZWJsaW5nc3dhZmZlIGRlciBFbGZlbiBpbiBkZXIgdmVyendlaWZlbHRlbiBIb2ZmbnVuZywKW0FsbGdlbWVpbjpHcmltbWJvcm5dIGRhbWl0IG5pY2h0IHp1IG5haCBhbiBkZW4gRmVpbmQga29tbWVuIHp1IG11ZXNzZW4uCltBbGxnZW1laW46RGhvamFrdF0gYWhqYSwgZGllIG11ZXNzZW4gYmVzb25kZXJzIHNlbHRlbiBzZWluLCB2b24gZGVuZW4gd2FyIGphCltBbGxnZW1laW46RGhvamFrdF0gbm9jaCBuZWkgd2FzIHp1IHNlaGVuLgpbQWxsZ2VtZWluOkFuYXRvbF0gSG9lciBtYWwsIEdyaW1taSwgYmVpIERFTSBHZXN0YW5rIGlzdCBkYXMgZGllIGVpbnppZ2UKW0FsbGdlbWVpbjpBbmF0b2xdIE1vZWdsaWNoa2VpdCwgdm9uIFdhZXNjaGVrbGFtbWVybiBhYmdlc2VoZW4uLi4KW01vZXJkZXI6R2Vpc3QgZWluZXMgR2FyZGV3YWVjaHRlcnNdIFNoZXJpZmYhIFZlcmhhZnRlIEhvb2QhCltNb2VyZGVyOkdlaXN0IGVpbmVzIEdhcmRld2FlY2h0ZXJzXSBTY2hvbiB3aWVkZXIgZWluIFRhZyB2ZXJzYXV0IHdlZ2VuIEhvb2QhCltBbGxnZW1laW46WnVlcmlsZXVdIEFuYXRvbCwgbnVuamEgYWJlciBpbSBnZWdlbnNhdHogenUgZGVuIEVsZmVuIHNpbmQgc2llCltBbGxnZW1laW46WnVlcmlsZXVdIGltbWVyaGluIGVjaHRlIEthZW1wZmVyIHVuZCBrZWluZSBXYXNjaGxhcHBlbiAhCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBKYSwgZGVuIHd1ZXJkZSBpY2ggYW4gRXVyZXIgU3RlbGxlIGFuZGVyZW4KW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb25dIHdpcmtsaWNoIG5pY2h0IHp1bXV0ZW4uCltBbGxnZW1laW46R3JpbW1ib3JuXSBUamEsIHdhcyBlaW4gd2lya2xpY2hlciBLcmllZ2VyIGlzdCwgZGVyIGVudHdpY2tlbHQgaGFsdApbQWxsZ2VtZWluOkdyaW1tYm9ybl0gc2VpbmVuIEthbXBmZ2VydWNoLgpbQWxsZ2VtZWluOkFuYXRvbF0gQXVzc2VyZGVtLCBEdSB3ZWlzc3QgamEuLi4gVHlwaHVzLCBEaXBodGVyaWUsIFd1bmRicmFuZC4uLgpbQWxsZ2VtZWluOkFuYXRvbF0gS0FNUEZHRVJVQ0g/CltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBVbnRlciBXdW5kYnJhbmQgbGVpZGVuIG5vcm1hbGVyd2Vpc2UgbnVyIGRpZQpbQWxsZ2VtZWluOkZyb3NjaCBHbG9pbnNvbl0gRWxmZW4uCltBbGxnZW1laW46QW5hdG9sXSBSYXR0ZW4gdW5kIEtldGNodXAgLSBLYW1wZmdlcnVjaD8KW0FsbGdlbWVpbjpHcmltbWJvcm5dIEFiZXIgZGVuIEVsZmVuIGlzdCBqYSBqZWRlIEF1c3JlZGUgcmVjaHQsIHVtIHNpY2ggdm9yCltBbGxnZW1laW46R3JpbW1ib3JuXSBlaW5lbSBlaHJsaWNoZW4gS2FtcGYgenUgZHJ1ZWNrZW4uCltBbGxnZW1laW46Qmxvb2R5SGFycnldIGFjaCBob2VydCBkb2NoIGF1ZgpbQWxsZ2VtZWluOkZyb3NjaCBHbG9pbnNvbl0gUmF0dGUgdW5kIEtldGNodXAgaXN0IGF1ZiBqZWRlbiBGYWxsIGVpbiBuZXR0ZXJlcgpbQWxsZ2VtZWluOkZyb3NjaCBHbG9pbnNvbl0gS2FtcGZnZXJ1Y2ggYWxzIC4uLiBhZWgsIG5hamEsIEVsZmVuaG9zZW4gd2VyZGVuCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBkYWJlaSBpbW1lciBzbyBzY2huZWxsIGdlbGIgdW5kIG5hc3MuCltBbGxnZW1laW46QW5hdG9sXSBEdSBoYXN0IEVsZmVuaG9zZW4gYW4/PwpbQWxsZ2VtZWluOkFuYXRvbCBzdGF1bnQgdWViZXIgR2xvaW5zb24uXQpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gU292aWVsIHp1bSBUaGVtYSBlbGZpc2NoZSBJbnRlbGxpZ2Vuei4gTm9jaCBGcmFnZW4/CltBbGxnZW1laW46RGhvamFrdF0gd2FzIG1laW5zdCBkdSBtaXQgZWhybGljaGVtIGthbXBmPyB6d2VyZ2Ugc29sbHRlbiBsaWViZXIKW0FsbGdlbWVpbjpEaG9qYWt0XSBiaXNzY2hlbiBzdHJlY2tiYW5rIGJla29tbWVuLCBkYW1pdCBtaXQgZGVuZW4gZWluCltBbGxnZW1laW46RGhvamFrdF0gZWhybGljaGVyIGthbXBmIG1vZWdsaWNoIGlzdC4KW0FiZW50ZXVlcjpPa2tlXSBLYW5uIG1pciBqZW1hbmQgZGVuIFdlZyBhdXMgZGVyIE5lYmVsaGFsbGUgbWl0IGRlbiBLcmFlaGVuCltBYmVudGV1ZXI6T2trZV0gdmVycmF0ZW4gPwpbQWxsZ2VtZWluOkZyb3NjaCBHbG9pbnNvbl0gU2ljaGVyIG5pY2h0LiBXYXJ1bSBzb2xsdGUgaWNoIG1pY2ggaW4gc28gZXR3YXMKW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb25dIGVpbndpY2tlbG4gPwpbQWxsZ2VtZWluOkFuYXRvbF0gSGV5LCBkYXMgd2FyIGVpbiBwcmVzdXBwb3NpdGlvbmFsZXIgU2NobHVzcywgR3JpbW1pLCB3byBpc3QKW0FsbGdlbWVpbjpBbmF0b2xdIGRhIGRhcyBQcm9ibGVtPwpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gRGFzIFByb2JsZW0gd2FyLCBkYXNzIERVIGVzIG5pY2h0IGdlc2NoYWZmdCBoYXN0LCBlaW5lcgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gZ2xhc2tsYXJlbiBBcmd1bWVudGF0aW9uIHp1IGZvbGdlbi4KW0FsbGdlbWVpbjpHcmltbWJvcm5dIFdpZSBnZXNhZ3QsIERob2pha3Q6IEF1c3JlZGVuIHVlYmVyIEF1c3JlZGVuLgpbQWxsZ2VtZWluOkRob2pha3RdIGR1IGhhc3QgbnVyIGRpZSBsdWVja2VuIGluIGRlaW5lciB6d2VyZ2lzY2hlbgpbQWxsZ2VtZWluOkRob2pha3RdIGFyZ3VtZW50YXRpb24gbmljaHQgZXJrYW5udC4KW0FsbGdlbWVpbjpCbG9vZHlIYXJyeSBsYWNodCBzaWNoIGtydW1tXQpbQWxsZ2VtZWluOkJsb29keUhhcnJ5IC4gbyBPIChraW5kZXJnYXJ0ZW4/KV0KW0FsbGdlbWVpbjpHcmltbWJvcm5dIFdlaXNzdCBEdSBub2NoIHdvcnVtcyBnZWh0PyBWZXJtdXRsaWNoIG5pY2h0LCBhYmVyIGFscwpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gSGlud2Vpc0wgRXMgZ2luZyBuaWNodCB1bSBtZWluZSBBcmd1bWVudGF0aW9uLgpbQWxsZ2VtZWluOkRob2pha3RdIGphLCBlcyBnaW5nIHVtIGdsb2lucyBhcmd1bWVudGF0aW9uLgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gS29tbSwgUmVnaW9uc21hZ2llciwgdHUgd2FzIHNpbm52b2xsZXMgdW5kIHByb2dyYW1taWVyCltBbGxnZW1laW46R3JpbW1ib3JuXSB3YXMuCltBbGxnZW1laW46R3JpbW1ib3JuXSB1bmQgPSBvZGVyCltBbGxnZW1laW46QW5hdG9sXSBEdSB1bmQgRGVpbmUgQXJndW1lbnRhdGlvbi4uLiA7KQpbQWxsZ2VtZWluOkRob2pha3RdIGRhcmYgaWNoIGRhcyBqZXR6dCBhbHMgendlcmdpc2NoZW4ga29tbWVudGFyIGF1ZmZhc3Nlbj8KW0FsbGdlbWVpbjpHcmltbWJvcm5dIEJpc3QgRHUgUk0/CltBbGxnZW1laW46RGhvamFrdCBoaWVsdCBiaXNoZXIgc2VsYnN0IHp3ZXJnZSBmdWVyIG5pY2h0IHNvIGRhZW1saWNoLCB1bmQgPQogICAgICAgICAgIG9kZXIgenUgc2V0emVuLCBhYmVyIG1hbiBrYW5uIHNpY2ggamEgaXJyZW4uXQpbQWxsZ2VtZWluOkJsb29keUhhcnJ5XSBobW0gc2VpdCB3YW5uIG11ZXNzZW4gcm0gcHJvZ3JhbW1pZXJlbj8KW0FsbGdlbWVpbjpHcmltbWJvcm5dIERhcyBpc3QgZWluZSBoaWVyIHVlYmxpY2hlIEFydCwgdHlwb3MgenUgYmVyaWNodGlnZW4uCltBbGxnZW1laW46RGhvamFrdF0gZGEgZ2lidHMgYWJlciBlaW5kZXV0aWdlcmUgbWV0aG9kZW4uCltBbGxnZW1laW46R3JpbW1ib3JuXSBTZWl0IHNpZSBWZXJhbnR3b3J0dW5nIGhhYmVuLiBVbmQgVmVyYW50d29ydHVuZyBiZWRldXRldApbQWxsZ2VtZWluOkdyaW1tYm9ybl0gQXJiZWl0LgpbQWxsZ2VtZWluOkRob2pha3RdIHdlbm4gaWNoIGRhcyBkZW1vbnN0cmllcmVuIGRhcmY6IHVuZCAtPiBvZGVyCltBbGxnZW1laW46R3JpbW1ib3JuXSBJc3QgZWluIFRhc3RlbmFuc2NobGFnIG1laHIuIFp3ZWksIHdlbm4gbWFuIHNoaWZ0IGV4dHJhCltBbGxnZW1laW46R3JpbW1ib3JuXSB6YWVobHQuCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSB3ZW5uIHVuZCwgZGFubiBvZGVyID8hCltBbGxnZW1laW46R3JpbW1ib3JuXSBOZWluLCBlciBydWZ0IHNjaGVpbmJhciBpbiB1bmQgZGllIG9kZXItRnVua3Rpb24gYXVmLi4uLgpbQWxsZ2VtZWluOkFuYXRvbF0gT29vaCwgZWluIFp3ZXJnIG1pdCBIYWxid2lzc2VuIDopIE5hamEsIHdlbmlnc3RlbnMgZXR3YXMuLi4KW0FsbGdlbWVpbjpCbG9vZHlIYXJyeV0gdmVyYW50d29ydHVuZyBoZWlzc3QgYmVvYmFjaHR1bmcgLSBuaWNodCB6d2luZ2VuZApbQWxsZ2VtZWluOkJsb29keUhhcnJ5XSBwcm9nYXJtbWllcmVuCltBbGxnZW1laW46Qmxvb2R5SGFycnldIGxldHp0ZXJlcyB0dWUgaWNoIG5hdHVlcmxpY2ggdHJvdHpkZW0KW0FsbGdlbWVpbjpBbmF0b2xdIE5hamEsIEVsZmVuIHdpc3NlbiBoYWx0LCBkYXNzIEZ1bmt0aW9uZW4gS2xhbW1lcm4gYnJhdWNoZW4sCltBbGxnZW1laW46QW5hdG9sXSB1bSBhbHMgRnVua3Rpb25lbiBlcmthbm50IHp1IHdlcmRlbiB1bmQgc2NobGllc3NlbiBkaWVzZQpbQWxsZ2VtZWluOkFuYXRvbF0gRGV1dHVuZ3Ntb2VnbGljaGtlaXQgYXV0b21hdGlzY2ggYXVzLCBHcmltbWkuCltBbGxnZW1laW46R3JpbW1ib3JuXSBBaGgsIEJIIGF1ZiBkZW0gV2VnIHp1IEJpZyBCcm90aGVyLiBOYSwgZGVubiBtYW4gdGF1IHVuZApbQWxsZ2VtZWluOkdyaW1tYm9ybl0gbGFzcyBEaWNoIG5pY2h0IHN0b2VyZW4uLi4KRHUgaG9lcnN0IGRpZSBVaHIgc2NobGFnZW46IEVzIGlzdCBqZXR6dCAzIFVoci4KW0FsbGdlbWVpbjpHcmltbWJvcm5dIERhcyBpc3QgbmF0dWVybGljaCBuaWNodCB6d2luZ2VuZCB1bmQgbGllZ3QgaW0gRW5kZWZmZWt0CltBbGxnZW1laW46R3JpbW1ib3JuXSBhbSBjb21waWxlciwgQU5hdG9sLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBHYXJkZXdhZWNodGVyc10gTmFlY2hzdGVzIE1hbCB3ZXJkZSBJQ0ggc2llZ2VuLCBIb29kIQpbQWxsZ2VtZWluOkJsb29keUhhcnJ5XSBobW0sIGR1IHZlcnN0ZWhzdCBuaWNodCwgZ2VsbGU/CltBbGxnZW1laW46QW5hdG9sXSBUdXQgbWlyIGxlaWQsIGFiZXIgbWl0IHNvIGtvbXBsaXppZXJ0ZW4gU2FjaGVuIGRhcmYgbWFuCltBbGxnZW1laW46QW5hdG9sXSBlaW5lbSBad2VyZyBuaWNodCBhbmtvbW1lbiwgZGVyIHZlcnN0ZWh0IHNvbnN0IF9nYXJfCltBbGxnZW1laW46QW5hdG9sXSBuaWNodHMuLi4uCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBPaCwgZGVzaGFsYiBudXR6ZW4gRWxmZW4ga2VpbmUgQ2xvc3VyZXMuIElobmVuCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBmZWhsdHMgZGEgYW4gS2xhbW1lcm4uIEphLCBkYXMgaXN0CltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBuYWNodm9sbHppZWhiYXIuCltBbGxnZW1laW46Qmxvb2R5SGFycnldIGplZGVuZmFsbHMgYmVoZXJyc2NoZW4gc2llIHdvaGwgYmVzc2VyIGRpZQpbQWxsZ2VtZWluOkJsb29keUhhcnJ5XSByZWNodHNjaHJlaWJ1bmc/IG5hamEgOikKW0FsbGdlbWVpbjpBbmF0b2xdIE1laW5lIEd1ZXRlLCBlciBtdXNzIGRpZSBSZWdlbmJvZ2VuLU11ZGxpYiBkdXJjaGdlZ3JlcHQKW0FsbGdlbWVpbjpBbmF0b2xdIGhhYmVuLCB1bSBlaW5lIEFudHdvcnQgenUgZmluZGVuIDopCltBbGxnZW1laW46R3JpbW1ib3JuXSBMYXNzIG1hbCwgd2VubiBEdSBFbGZlbiBnZWdlbnVlYmVyICJrbGFtbWVybiIgZXJ3YWVobnN0CltBbGxnZW1laW46R3JpbW1ib3JuXSBkZW5rZW4gZGllIHNvZm9ydCBhbiBTYWNoZW4sIGRpZSBuaWNodHMgbWl0CltBbGxnZW1laW46R3JpbW1ib3JuXSBQcm9ncmFtbWllcnVuZywgdW5kIGF1Y2ggbmljaHRzIG1pdCAiYW5nZXpvZ2VuIHNlaW4iIHp1CltBbGxnZW1laW46R3JpbW1ib3JuXSB0dW4gaGFiZW4uCltBbGxnZW1laW46QW5hdG9sXSBEYXMgd2llZGVydW0ga29tbXQgLSB6dW1pbmRlc3QgYmVpIEVsZmVuIC0gYXVmIGRlbgpbQWxsZ2VtZWluOkFuYXRvbF0gWnVzYW1tZW5oYW5nIGFuLgpbQWxsZ2VtZWluOkFuYXRvbF0gSmEsIGRhcyBkYXJmc3QgRHUgd29lcnRsaWNoIG5laG1lbiA7KSgKW0FsbGdlbWVpbjpBbmF0b2xdIE9oLCBlaW5lIEtsYW1tZXIgenV2aWVsIDstKQpbQWxsZ2VtZWluOkZyb3NjaCBHbG9pbnNvbl0gRGFzIHdhciBkZXIgTW9lY2h0ZWdlcm4tQmFydCwgaG0gPwpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gSmEsIGFiZXIgZGVyIGJlbm9ldGlndGUgWnVzYW1tZW5oYW5nIGlzdCBkYXMgV29ydApbQWxsZ2VtZWluOkdyaW1tYm9ybl0gImtsYW1tZXJuIiwgZGVyIFJlc3QgaXN0IGVoIGltbWVyIHBhcmF0LgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gSWhyIHN0YWVuZGlnZXIgR2VkYW5rZS4gT2RlciBkYXMsIHdhcyBzaWUgaGFsdCBmdWVyCltBbGxnZW1laW46R3JpbW1ib3JuXSBHZWRhbmtlbiBoYWx0ZW4uCltBbGxnZW1laW46Qmxvb2R5SGFycnldIHdvcmFuIGR1IHdpZWRlciBkZW5rc3QsIGFuYXRvbCEgOykpCltBbGxnZW1laW46QW5hdG9sXSBTdGltbXQsIEVsZmVuIHNpbmQgc2NobGFnZmVydGlnLiBad2VyZ2UgaG9lY2hzdGVucwpbQWxsZ2VtZWluOkFuYXRvbF0gLWtyYWVmdGlnLgpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gSm8sIHVuZCBkZXN3ZWdlbiBnZXdpbm5lbiBkaWUgWndlcmdlIGF1Y2ggaW0gRXJuc3RmYWxsLgpbQWxsZ2VtZWluOkFuYXRvbF0gVGphLi4uLiBpc3QgaGFsdCBkZXIgWndlcmdlIEFydCwgRGlza3Vzc2lvbmVuIG1pdCBkZXIgQXh0CltBbGxnZW1laW46QW5hdG9sXSBhdXN0cmFnZW4genUgbXVlc3Nlbi4uLiBzY2hhZGUuCltBbGxnZW1laW46R3JpbW1ib3JuXSBObyBtYXR0ZXIsIGhvdyB3aXR0eSB0aGUgZWxmLCBhbiBheGUgYmxhZGUgYmV0d2VlbiBoaXMKW0FsbGdlbWVpbjpHcmltbWJvcm5dIGVhcnMgd2lsbCBzZXJpb3VzbHkgY3JhbXAgaGlzIHN0eWxlLi4uCltBbGxnZW1laW46Qmxvb2R5SGFycnkgaG9mZnQsIGRlciBlcm1uc3QgZmFlbGx0IGhpZXIgbmljaHRdCltBbGxnZW1laW46RGhvamFrdF0gd2lyIGhhdHRlbiBkb2NoICBncmFkIHZvcmhpbiBmZXN0Z2VzdGVsbHQsIGRhc3MgZGFzIG1pdApbQWxsZ2VtZWluOkRob2pha3RdIGRlciBheHQgZnVlciBuZW4gendlcmcgbmljaHQgc28gZWluZmFjaCBpc3QsIG5lbiBlbGZlbmtvcGYKW0FsbGdlbWVpbjpEaG9qYWt0XSB6dSBlcnJlaWNoZW4sIGR1IHNwcmljaHN0IGFsc28gZWhlciB2b24gd3Vuc2NodHJhZXVtZW4gZGVyCltBbGxnZW1laW46RGhvamFrdF0gendlcmdlPwpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gRXMgZ2luZyB1bXMgUHJpbnppcC4gSWNoIG11c3N0ZSBkZW4gU3BydWNoIGVoIHNjaG9uCltBbGxnZW1laW46R3JpbW1ib3JuXSB1bWJhc3RlbG4sIHVuZCB3ZW5uIGljaCBkZW4gZXJzdCBpbiBlaW5lciBoYWxiZW4gU3R1bmRlCltBbGxnZW1laW46R3JpbW1ib3JuXSBwcmFlc2VudGllcnQgaGFldHRlLCBoYWV0dGUga2VpbiBFbGYgbWVociBnZXd1c3N0LCB1bQpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gd2FzIGVzIGdlaHQuIERlcmVuIGVpbnppZ2VzIEdlZGFlY2h0bmlzIGlzdCBqYQpbQWxsZ2VtZWluOkdyaW1tYm9ybl0gYmVrYW5udGxpY2ggZGFzIEt1cnp6ZWl0Z2VkYWVjaHRuaXMuCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBXaXIgaGF0dGVuIGFiZXIgYXVjaCBmZXN0Z2VzdGVsbHQsIGRhc3MgaGFsYmllcmVuCltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSBlcnN0bWFsIHJlaWNodC4gRGFubiBrYW5uIG1hbiBzaWNoIGltbWVyIG5vY2ggYW4KW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb25dIGRlbiBLb3BmIG1hY2hlbiwgd2VubiBtYW4sIGltIEdlZ2Vuc2F0eiB6dSBkZW4KW0FsbGdlbWVpbjpGcm9zY2ggR2xvaW5zb25dIEVsZmVuLCBLaW5kZXIgaGF0LCBkaWUgd2FzIHp1bSBTcGllbGVuIG1pdGdlYnJhY2h0CltBbGxnZW1laW46RnJvc2NoIEdsb2luc29uXSB3aXNzZW4gbW9lY2h0ZW4uCj4gW0FsbGdlbWVpbjpHcmltbWJvcm5dIE1hbiBrb2VubnRlIHNhZ2VuLCBkZXIgZWxmaXNjaGUgR2Vpc3QgZ2xlaWNodCBkZW0KZWluZXMKW0FsbGdlbWVpbjpHcmltbWJvcm5dIEthbmluY2hlbnMuIEJpcyBhdWYgZGVuIFRlaWwgbWl0IGRlbSBHcmFzLi4uLgpbQWxsZ2VtZWluOkRob2pha3RdIGhtLCB2ZXJzdGFlbmRsaWNoLCBkYXNzIGVpbiBrYW5pbmNoZW4gYW4gZ3JhcyBkZW5rdC4KW0FsbGdlbWVpbjpCbG9vZHlIYXJyeV0gd2llc28gZGVua2UgaWNoIGJlaSBncmFzIGltbSBlciBhbiB6d2VyZ2U/CltBbGxnZW1laW46R3JpbW1ib3JuIGRlciBBdGhlaXN0IHN0ZWxsdCBtYWwgd2llZGVyIGZlc3QsIGRhc3MgbmljaHQgamVkZXIKICAgICAgICAgICBQcmF0Y2hldHQgd2lya2xpY2ggZ2VsZXNlbiB6dSBoYWJlbiBzY2hlaW50Ll0KW0FsbGdlbWVpbjpBbmF0b2wgZ3JpbnN0IEhvbHkgV29vZCBhbi5dCi4uLiB0byBiZSBjb250aW51ZWQgLi4uCgoqdm9sbG11ZWxsKgoKV2VyIGVzIGJpcyBoaWVyaGVyIGdlc2NoYWZmdCBoYXQsIGthbm4gc2ljaCBzaWNoZXIgbmljaHQgdWViZXIgenUKd2VuaWcgU3Bhc3MgYmVrbGFnZW4gOikKCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbHQsIGFiZXIgaW1tZXIgd2llZGVyIGdlcm5lIGdlc2VoZW4uLi4gKEdyaW1tYm9ybiwgMTUuIFNlcCAxOTk3LCAwNToxMDowNyk6CkJlaW0gZmluZ2VybjoKUGFzc2l2IHNlaXQ6IDA1OjQ1OjAzCkFsdGVyOiAwNTo0MTowMiwgICBTcGllbGVybGV2ZWw6IDEKCkphamEsIGRpZSBKdWdlbmQgdm9uIGhldXRlIGlkbGV0IHNjaG5lbGxlciwgYWxzIG1hbiBnZWRhY2h0IGhhZXR0ZS4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOT0NITUFMIGJpdHRlIDopKSAoQW5hdG9sLCAxNi4gU2VwIDE5OTcsIDAwOjE1OjQ5KToKCk5haXJvbGYgbWFjaHQgYmVzY2h3b2VyZW5kZSBHZXN0ZW4gdW0gRGljaCBoZXJ1bS4KS3VyeiBibGl0enQgZWluZSBndWVsZGVuZSBTY2h1dHphdXJhIHVtIERpY2ggYXVmLgpEZWluIEtvZXJwZXIgZXJob2x0IHNpY2guLi4KRGVpbmUgR2VzY2hpY2tsaWNoa2VpdCBzdGVpZ3Qgd2llZGVyLgoKKmZyZXUqIDopCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCl9laW5pZ2VfIE1vbmF0ZSAoUmFmZmksIDE2LiBTZXAgMTk5NywgMTU6MDg6MDApOgpbTmFjaHJpY2h0ZW46RFddIFNFQVRUTEU6IERlciB3ZWx0Z3JvZXNzdGUgU29mdHdhcmUtS29uemVybiwgTWljcm9zb2Z0LCBoYXQKW05hY2hyaWNodGVuOkRXXSB1ZWJlcnJhc2NoZW5kIGRpZSBNYXJrdGVpbmZ1ZWhydW5nIHNlaW5lcyBuZXVlbgpbTmFjaHJpY2h0ZW46RFddIEJldHJpZWJzc3lzdGVtcyAiV2luZG93cyA5OCIgdW0gZWluaWdlIE1vbmF0ZSB2ZXJzY2hvYmVuLgoKS29lbm50ZSBtYWwgZWluZXIgTmFjaHJpY2h0ZW4gbmFjaCBTY2htYXJybiByb3V0ZW4gPwoKR3JpbnMKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFbGZlbiAmIFp3ZXJnZSAoWWVuZGksIDE2LiBTZXAgMTk5NywgMTY6NTk6MjApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg3NDI4NzE0NyByZz1zY2htYXJybgp+IyEgdGlkPTg3NDI4NzE0NwoKSGUsIEdyaW1tYm9ybiwgc2FnIGJsb3NzLCBEdSBsaWVzZXN0IFN0ZXZlbiBCcnVzdC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBfZWluaWdlXyBNb25hdGUgKFdvb2R5LCAxNi4gU2VwIDE5OTcsIDE3OjE5OjExKToKfiMhIHJuPVJhZmZpIHJ0PTg3NDQxNTI4MCByZz1zY2htYXJybgp+IyEgdGlkPTg3NDQxNTI4MApEYXMgU3ViamVjdCBpc3QgZmFsc2NoLiBFcyBtdWVzc3RlIGhlaXNzZW4gIl9CZXRyaWVic3N5c3RlbV8iLgoKV29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IF9laW5pZ2VfIE1vbmF0ZSAoQXNtb2RpcywgMTYuIFNlcCAxOTk3LCAyMDoxODowNyk6Cn4jISBybj1SYWZmaSBydD04NzQ0MTUyODAgcmc9c2NobWFycm4KfiMhIHRpZD04NzQ0MTUyODAKU292aWVsIGljaCB3ZWlzcywgc29sbCBlcyBhbSAxLjEuMjAwMCAob2RlciBhbSAxLjQuMjAwMCkgZmVydGlnIHNlaW4gLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogX2VpbmlnZV8gTW9uYXRlIChBc21vZGlzLCAxNi4gU2VwIDE5OTcsIDIwOjI2OjE2KToKfiMhIHJuPVJhZmZpIHJ0PTg3NDQxNTI4MCByZz1zY2htYXJybgp+IyEgdGlkPTg3NDQxNTI4MApBdXMgR2VoZWltZGllbnN0LVF1ZWxsZW4gc2lja2VydGUgZHVyY2gsIGRhc3MgSW5mb3JtYXRpb25lbiB2b3JsaWVnZW4sCmRhc3MgTWljcm9zb2Z0IGVpbmUgYnVnZnJlaWUgV2luZG93cy1WZXJzaW9uIHBsYW50LgpEZXIgQ0lBIGRlbWVudGllcnRlIHNvZm9ydCB1bmQgYmV6ZWljaG5ldCBlcyBhbHMgc2VocgpwaGFudGFzaWVyZWljaGUgWmVpdHVuZ3NlbnRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBMYW5nIGVyd2FydGV0LCBoaWVyIGlzc2VzOiBEYXMgS25laXBlbmtvbnplcHQgKEtleSwgMTYuIFNlcCAxOTk3LCAyMToyMTozNyk6Cn4jISBvbj1LZXkgb3Q9ODc0NDM3NTM2IG9nPWVudHdpY2tsdW5nCn4jISBybj1Bc21vZGlzIHJ0PTg3NDQzNzQ3NiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg3NDQzNjMwNApIbW0gYWxzbyBpaCBiaW4gZ2VnZW4gU2VoZXJiZXJ1ZmUgLi4uCldlciBzb2xsdGUgbWljaCBzY2hvbiBlaW5zdGVsbGVuPyA6KQpPZGVyIGdpYmJldCBzb3dhcyB3aWUgVG9kZXNzZXF1ZW56IGJlZ3V0YWNodGVyPyA6KSkKCktleSBzY2htYXJybmVuZC4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IExhbmcgZXJ3YXJ0ZXQsIGhpZXIgaXNzZXM6IERhcyBLbmVpcGVua29uemVwdCAoQXNtb2RpcywgMTYuIFNlcCAxOTk3LCAyMToyMzozMCk6Cn4jISBvbj1Bc21vZGlzIG90PTg3NDQzNzYwNiBvZz1lbnR3aWNrbHVuZwp+IyEgcm49S2V5IHJ0PTg3NDQzNzUzNiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg3NDQzNjMwNApMYXNzIFR1YXJlZyBMZWljaGVuYmVzdGF0dGVyIHdlcmRlbiwgZGVyIGhhdCBkYW5uIGltbWVyIGVpbmVuCkt1bmRlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTGFuZyBlcndhcnRldCwgaGllciBpc3NlczogRGFzIEtuZWlwZW5rb256ZXB0IChUYXJhZ29uLCAxNi4gU2VwIDE5OTcsIDIxOjI4OjI3KToKfiMhIG9uPVRhcmFnb24gb3Q9ODc0NDM3NjI0IG9nPWVudHdpY2tsdW5nCn4jISBybj1LZXkgcnQ9ODc0NDM3NTM2IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODc0NDM2MzA0CkljaCB3dWVzc3QgZGEgd2FzLi4uIGRhIER1IGRvY2ggYmVzdGltbXQgc2Nob24gYWxsZSBTZXF1ZW56ZW4gYXVzd2VuZGlnCmtlbm5zdCwga29lbm50ZXN0IGR1IGRvY2ggJ1NlcXVlbnpiYXVlcicgd2VyZGVuIDstKQpEYW5uIGthbm5zdGUgYWxzIFRlc3RzcGllbGVyIGZ1ZXIgZGVpbmUgU2VxdWVuemVuIGZ1bmdpZXJlbiB1bmQgd2VpdGVyc3RlcmJlbgpvaG5lIExhbmdld2VpbGUuCgpUYXJhZ29uCiAgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBfZWluaWdlXyBNb25hdGUgKEJhYnMsIDE2LiBTZXAgMTk5NywgMjI6NDc6NDkpOgp+IyEgcm49UmFmZmkgcnQ9ODc0NDE1MjgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc0NDE1MjgwCk5hamEsIHdlbmlnc3RlbnMgc2luZCBkaWUgTXVlbGwkYWZ0IEFrdGllbiBkYXJhdWZoaW4gZ2xlaWNoIHVtIG1laHIgYWxzCjUlIGVpbmdlYnJvY2hlbi4gOi0pKSkKQW5zY2hlaW5lbmQgc3RlcmJlbiBkaWUgRGVwcGVuLCBkaWUgQmlsbHlib3kgbm9jaCB3YXMgZ2xhdWJlbiwgbmllIGF1cy4KTmFqYSwgV2lydHNjaGFmdGxlciBoYWx0Li4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VoZXJiZXJ1ZmUgKExvdSwgMTcuIFNlcCAxOTk3LCAwNDo1MDo0MSk6CgoKSG1tbS4uLi5TZWhlcmJlcnVmZSBrbGluZ3QgS2xhc3NlOikKCkdpYnRzIGRhbm4gYXVjaCBhcmJlaXRzbG9zZSBTZWhlcj8gU2VoZXItQXJiZWl0c2FtdCB1c3c6KTopCgoqc2ljaGFtYm9kZW53YWVsemVuZCoKCk1yLiBMb3UgQ3lmZXIKClBTOiBLbGluZyBhYmVyIGVjaHQgaW50ZXJlc3NhbnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2VoZXJiZXJ1ZmUgKFdhcmdvbiwgMTcuIFNlcCAxOTk3LCAxMDo0MDo1Myk6Cn4jISBybj1Mb3UgcnQ9ODc0NDY0NjQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc0NDY0NjQxCnN0ZWxsIGFuIGFyYmVpdHNsb3NlbmhpbGZlYXVzemFobHVuZ3NzY2hsYW5nZSBhbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTZWhlcmJlcnVmZSAoWm9ycm8sIDE3LiBTZXAgMTk5NywgMTA6NDU6NTApOgp+IyEgcm49V2FyZ29uIHJ0PTg3NDQ4NTY1MyByZz1zY2htYXJybgp+IyEgdGlkPTg3NDQ2NDY0MQpXZW5uIG1hbiBrZWluZW4gUEsgd2VnZW4gZGVuIE1vZWNodGVnZXJuU2VoZXJ3ZXJkZW4gYmVrb21tdCBuZWhtIGljaCBkZW4gSm9iCmFscyBCZXR0bGVyIGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxBIChmYW1vdXMgbGFzdCBhY3Rpb24pIChBbmF0b2wsIDE3LiBTZXAgMTk5NywgMTU6MDQ6NTYpOgpbPE1hc3RlUj46Wm9ycm9dIGwKWzxNYXN0ZVI+OjxNYXN0ZVI+XSAxNy4xMSBjbWRzL3MsIDE4MC4zMSBjb21wIGxpbmVzL3MKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDMuMCUvNjAsIDIuOCUvMTUsIDEuNiUvMQpbVG9kOkxhcnNdIEVpbiBPcmsgaGF0IGdlcmFkZSBab3JybyB1bWdlYnJhY2h0LgoKT2hqZS4KQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVXJwcywgZGllc2UgS2F0emVuISAoQ2FyYWRocmFzLCAxNy4gU2VwIDE5OTcsIDE3OjMzOjQ3KToKTWllemUga29tbXQgZnJvZWhsaWNoIGhlcmVpbmdlc3BydW5nZW4uCkR1IGhhZWx0c3QgRGlyIGRpZSBOYXNlIHp1LgoKICAgICAgIEhpaGkgICAgICAgICAgIEJlcmdjaGVuIENhcmFkaHJhcyAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhYWFhYWgsIEluZmxhdGlvbi4uLiAoV29vZHksIDE3LiBTZXAgMTk5NywgMTc6NDc6MzQpOgpEdSBob2Vyc3QgZWluIHNhbmZ0ZXMgTGFldXRlbiB2b20gSGltbWVsIGtvbW1lbi4KTG9jbyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gU2hhcmlhIGluIFJ1YnJpayAiZW50d2lja2x1bmciLgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKOikKd29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW5nZWxvZ2VuLi4uIChBbmF0b2wsIDE3LiBTZXAgMTk5NywgMjA6NDM6MzgpOgouLi4KRmx1c3N3aW5kIHRlaWx0IERpciBtaXQ6IDopClJhZmZpQFBLLU11ZCB0ZWlsdCBEaXIgbWl0OiA6KQoKVmVyZmxpeHRlIFp3ZWl0aWVzLgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGphIChOYWlyb2xmLCAxOC4gU2VwIDE5OTcsIDAyOjI2OjIzKToKRGhvamFrdCBzYWd0OiBobSwgbnVyIGVpbiB0aWdvbmUgbm9jaC4uLgpJdm8gc2NodWV0dGVsdCBkZW4gS29wZi4KSXZvIHNjaHVldHRlbHQgZGVuIEtvcGYuCkl2byBzY2h1ZXR0ZWx0IGRlbiBLb3BmLgpJdm8gc2NodWV0dGVsdCBkZW4gS29wZi4KSXZvIHNjaHVldHRlbHQgZGVuIEtvcGYuCkVpbiByaWVzaWdlciBUaWdvbmUgZXJzY2hlaW50IGF1cyBkZW0gTmViZWwuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBfZWluaWdlXyBNb25hdGUgKENhdW5vLCAxOC4gU2VwIDE5OTcsIDEwOjMyOjIyKToKfiMhIHJuPUFzbW9kaXMgcnQ9ODc0NDMzODg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc0NDE1MjgwCkRhcyB3YXIgV2luZG93cyA5NiwgZGFzIGltIEphaHJlIDIwMDAgcmF1c2tvbW1lbiBzb2xsdGUgLi4uIGFuc2NoZWluZW5kIGhhYmVuCnNpZSBub2NoIHp3ZWkgZmVobGVyIGRhenVnZXBhY2t0IHVuZCBlcyB1bWJlbmFubnQgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuYSBzbyBlaW4gRmVpZ2xpbmcgKEFsYm9pbiwgMTguIFNlcCAxOTk3LCAxMzo0ODowNyk6CkR1IGhvZXJzdCBlaW4gR3JvbGxlbi4gRGVyIFZ1bGthbiBpc3QgbWFsIHdpZWRlciBha3Rpdi4KSGF0ZSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgoKQWxib2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBfZWluaWdlXyBNb25hdGUgKEFzbW9kaXMsIDE4LiBTZXAgMTk5NywgMTM6NTQ6MTYpOgp+IyEgcm49Q2F1bm8gcnQ9ODc0NTcxNTQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc0NDE1MjgwClNvc28sIGR1IG1laW5zdCwgZGEgd2FlcmVuIG51ciA5OCBCdWdzIGRyaW4gPz8KSmV0enQgd2Vpc3MgaWNoIGF1Y2gsIHdhcyBkaWUgWmFobCBiZWRldXRldCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogX2VpbmlnZV8gTW9uYXRlIChDYXVubywgMTguIFNlcCAxOTk3LCAxNDowMjozOSk6Cn4jISBybj1Bc21vZGlzIHJ0PTg3NDU4MzY1NiByZz1zY2htYXJybgp+IyEgdGlkPTg3NDQxNTI4MApBbmRlcmUgTWVpbnVuZyB6dSBkZXIgWmFobCA5NSBpbSBsZXR6dGVuIFdpbmRvd3M6Cig5OCBpbSB6dWt1ZW5mdGlnZW4gYWxzbykKCi0gWmFobCBkZXIgRGlza2V0dGVuLCBkaWUgenVyIEluc3RhbGxhdGlvbiBiZW5vZXRpZ3Qgd2VyZGVuLgotIFphaGwgZGVyIFNlaXRlbiBpbSBIYW5kYnVjaCBmdWVyIGRhcyBLYXBpdGVsICdJbnN0YWxsYXRpb24gbGVpY2h0Z2VtYWNodCcKLSBQcm96ZW50c2F0eiBkZXIgVm9sbHN0YWVuZGlna2VpdCBiZWkgYXVzbGllZmVydW5nLgotIC4uLgoKdW5kIG1laW4gbGllYnN0ZXI6Ci0gWmFobCBkZXIgVGVybWludmVyc2NoaWVidW5nZW4gYmlzIHp1bSBFcnNjaGVpbmVuLgoKKERhIGdhYnMgbm9jaCB3ZWl0ZXJlLCBhYmVyIHdlciB3ZWlzcywgd2lldmllbGUgbm9jaCBkYXp1IGtvbW1lbi4uLikKCkMuIE5vCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGZXVlcnRldWZlbCAoSmFua2EsIDE4LiBTZXAgMTk5NywgMTU6MTQ6NTUpOgpWb3JzaWNodGlnIGJldHJpdHRzdCBEdSBkZW4gaGVsbCBlcmxldWNodGV0ZW4gTGFkZW4uIFZvbiBhbGxlbiBTZWl0ZW4gc2NoZWludApEaXIgZWluIGFuZ2VuZWhtIHdhcm1lcywgbmljaHQgenUgZ3JlbGxlcyBMaWNodCBpbnMgR2VzaWNodC4gQW4gamVkZXIgZGVyCnNlY2hzCldhZW5kZSBrYW5uc3QgRHUgVW5tZW5nZW4gdm9uIEZhY2tlbG4sIExhbXBlbiB1bmQgTGV1Y2h0c3RhZWJlbiBlcmtlbm5lbi4KRWluaWdlIGRhdm9uIGJyZW5uZW4gb2RlciBsZXVjaHRlbiBsb2Rlcm5kIHZvciBzaWNoIGhpbiwgYW5kZXJlIGJpZXRlbiBlaW5lCmdlcmFkZXp1IHN0ZWhlbmRlIEZsYW1tZS4gRGVtIEVpbmdhbmcgZ2VnZW51ZWJlciBpc3QgZWluZSBob2VsemVybmUgVGhla2UKZ2V6aW1tZXJ0LCBoaW50ZXIgZGVyIGVpbiBmZXVlcnJvdGhhYXJpZ2VyIEVsZiBtaXR0bGVyZW4gQWx0ZXJzIG1pdCBlaW5lcgpvZmZlbmVuIEZsYW1tZSBoZXJ1bXNwaWVsdC4gS29taXNjaCwgZGFzcyBkYXMgSG9seiBkZXIgVGhla2Uga2VpbiBGZXVlcgpmYWVuZ3QuLi4gT2RlciBiZXNzZXI6IEd1dCwgZGFzcyBlcyBuaWNodCBicmVubmVuIGthbm4sIGRlbm4gZGVyIFJlc3QgZGVzCkxhZGVucyBiZXN0ZWh0IGViZW5mYWxscyBhdXMgSG9sei4KRXMgc3RlaGVuIERpciBmb2xnZW5kZSBCZWZlaGxlIHp1ciBWZXJmdWVndW5nOgogICAgICAgIHplaWdlICAgICAgICAgICAgICAgICAgICBrYXVmZSA8Z2VnZW5zdGFuZD4gKG9kZXIgbnVtbWVyKQogICAgICAgIHZlcmthdWZlIDxmYWNrZWw+CkRlciBBdXNnYW5nIGRlcyBMYWRlbnMgbGllZ3QgaW0gU3VlZGVuLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZGVuLgpFaW5lIE1hZ25lc2l1bWZhY2tlbCAoZnJpc2NoIGFuZ2V6dWVuZGV0KS4KRWluZSBtYWdpc2NoZSBGYWNrZWwgKGhlbGwgbGV1Y2h0ZW5kKS4gKDIpCkVpbmUgUGVjaGZhY2tlbCAoZnJpc2NoIGFuZ2V6dWVuZGV0KS4KRGVyIEZhY2tlbGV4cGVydGUuCgpNZXNzZXIsIFNjaGVyZSwgRmV1ZXIsIExpY2h0IHNpbmQgZnVlciBrbGVpbmUgTXVkZGVyIG5pY2h0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBpbiBiZXJnZG9yZiAoQmlyZHksIDE4LiBTZXAgMTk5NywgMTY6MzM6MjUpOgp1bnQgbXVlbnplbiBpbiBicnVubmVuCkhpZXIgaXN0IGtlaW4gQnJ1bm5lbgoKPz8/IEJpcmR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdW5nZWxvZ2VuLi4uIChSYWZmaSwgMTguIFNlcCAxOTk3LCAxNjo1NTowNik6Cn4jISBybj1BbmF0b2wgcnQ9ODc0NTIxODE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc0NTIxODE4Cgpad2VpdGllcyA/CgpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU29sbCBkYXMgZWluIFdpdHogc2Vpbj8gKEtpbnRhcmEsIDE5LiBTZXAgMTk5NywgMTA6MTM6MDgpOgpIZXV0ZSBpbiBkZXIgU1NQOiAKCkR1IGhhc3QgYmlzIGpldHp0IDc5OTk5ICh2b24gODAwMDApIFB1bmt0ZW4gZWluZ2V6YWhsdC4gICAgICAgICAgICAgICAgICAgICAgIAoKRGllc2UgUmF0ZSBtdXNzIGJpcyBpbiAyIFN0dW5kZW4sIDUyIE1pbnV0ZW4gdW5kIDU2IFNla3VuZGVuIGFiYmV6YWhsdCBzZWluISAKCkRhIGVydWVicmlndCBzaWNoIGphIHdvaGwgamVkZXIgS29tbWVudGFyLi4uIChNdXJwaHkgaXN0IGltbWVyIGRhYmVpKS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9iIGRhcyBiZXRlbiBhdWNoIHdhcyBudWV0enQ/IDopIChNaWV6ZSwgMTkuIFNlcCAxOTk3LCAxMDo0Mzo1OSk6CgplYmVuIGluIE1vcm9uOgoKRHUgYmV0ZXN0LCBkYXNzIGpldHp0IGJsb3NzIGtlaW4gYWdncmVzc2l2ZXIgR2VnbmVyIGhlcmVpbiBrb21tZW4gbW9lZ2UuICAgICAgCgpUYW5nYWx1ciBrb21tdCBkdXJjaCBkaWUgTHVrZSBoZXJhdWZnZWtyYWJiZWx0LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCkR1IGJldGVzdCBmdWVyIGVpbmVuIGJlc3NlcmVuIE11bmRnZXJ1Y2guICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKVGFuZ2FsdXIgRmV1ZXJ0YXR6ZSBzY2hudXJydCBuYWNoIHVudGVuLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpEdSBiZWVuZGVzdCBEZWluIEdlYmV0IG1pdCBlaW5lbSBlcmxlaWNodGVydGVuICdFbmRsaWNoJwoKTWllemUsIGdyaW5zdCBpbW1lcm5vY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hsZWNodGVyIEZpc2NoPyAoUmluZ29yLCAxOS4gU2VwIDE5OTcsIDIzOjQyOjM1KToKRWJlbiBwYXNzaWVydDoKCkFudGhlYXMgQXF1YXJpdW0gZXJzY2hlaW50IGRpcmVrdCBuZWJlbiBEaXIuCkVpbiBGaXNjaCBzcHJpbmd0IGF1cyBkZW0gQXF1YXJpdW0gaGVyYXVzIHVuZCBncnVlc3N0IERpY2ggaGVyemxpY2guCkVyIGtudWRkZWx0IERpY2ggYW4gU3RlbGxlIHZvbiBBbnRoZWEuCkR1IGZ1ZWhsc3QgRGljaCBuaWNodCBndXQuCgpSaW5nb3IuIE1hZyBudXIgZnJpc2NoZW4gRmlzY2ggO14pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXbyBkaWUgTGllYmUgaGluZmFlbGx0Li4uIChFbmd5d3VjaywgMjAuIFNlcCAxOTk3LCAwMDo0MzowNSk6Ck5pY2h0IHNjaHdhY2hzaW5uaWcgb2RlciBrb21pc2NoLCBhYmVyIGVpbmZhY2ggbmV0dC4uLjoKCiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKgp8ICAgICAgICAgICAgICAgICAgICAgICAgICBBICBOICBEICBFICBSICBMICBBICBOICBEICAgICAgICAgICAgICAgICAgICAgICAgIHwKfCAgICAgICAgICAgIFVwdGltZTogNyBUYWdlLCAxIFN0dW5kZSwgNTEgTWludXRlbiB1bmQgMTUgU2VrdW5kZW4gICAgICAgICAgICB8CiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKgp8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsLm11ZC5kZSAzMTQxNSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKfCAgICAgICAgICAgICAgICAgICAgICAgICAgICBUIEUgUyBUIEIgRSBUIFIgSSBFIEIgICAgICAgICAgICAgICAgICAgICAgICAgICB8CiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKgp8ICAgICAgICAgICAgICAgICAgR2FtZURyaXZlcjogTFBtdWQgMDMuMDIuMUAxMjEgdm9uIEFteWxhYXIgICAgICAgICAgICAgICAgIHwKfCAgICAgICAgICAgICAgICAgTVVEbGliIGJhc2llcmVuZCBhdWYgJ01vcmdlbkdyYXVlbictTVVEbGliICAgICAgICAgICAgICAgICB8CiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKgpbU10gQmVhIHZlcm1pc3N0IFN0b2VydGkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsgTWVuc2NoLCBBYmVudGV1cmVyIF0KW01dIFN0b2VydGkgdHV0IGltIEdyYXMgbGllZ2VuIHVuZCBhdWYgQmVhIHdhcnRlbiAgICAgICBbIE1lbnNjaCwgQWJlbnRldXJlciBdCiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKgp8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyIFRlaWxuZWhtZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXMgKENhbmNvciwgMjAuIFNlcCAxOTk3LCAyMzoyMjoyOCk6CndhcyBmdWVyIHJpbmdvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIChOYWlyb2xmLCAyMC4gU2VwIDE5OTcsIDIzOjIyOjU2KToKd2FzIGZ1ZXIgcmluZ29yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2FzIChLZXksIDIwLiBTZXAgMTk5NywgMjM6MjM6MzQpOgp+IyEgcm49TmFpcm9sZiBydD04NzQ3OTA1NzYgcmc9c2NobWFycm4KfiMhIHRpZD04NzQ3OTA1NzYKCgoKCgoKCgoKCgoKCldhcwoKCgoKCgoKCgoKCgoKCmxhbmdlcwoKCgoKCgoKCgoKbnVyIAoKCgoKCgoKCgoKCgpmdWVyIAoKCgoKCgoKCgpSaW5nb3IhCgoKCgoKCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyAoU2hhcmlhLCAyMC4gU2VwIDE5OTcsIDIzOjIzOjUzKToKd2FzIGZ1ZXIgUmluZ29yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGZWxhIHdpbGwgZGFzLi4uIChBdG96LCAyMC4gU2VwIDE5OTcsIDIzOjMyOjI3KToKbWEgd2FzCgoKKHNpZWhlIHRpdGVsKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVzIGRlciBSZWloZSAnbW91dHMnLi4uIChBbmF0b2wsIDIyLiBTZXAgMTk5NywgMTU6Mzc6MTcpOgpXb29keSBtZWludDogRWx2aXMgbGVidCwgZXIgaXN0IG51ciBuYWNoIEhhdXNlIG9kZXIgaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4gCmdlZ2FuZ2VuLgoKSmEsIGtsYXIuCkFuYXRvbCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktlaW5lIFN0ZXJiZWhpbGZlIGltIE1HIChKYW5rYSwgMjIuIFNlcCAxOTk3LCAxNTo0Nzo0OSk6CmhpbGZlIHN0ZXJiZW4KRGF6dSBpc3Qga2VpbmUgSGlsZmUgdmVyZmdiYXIuCgpOaWNodCBtYWwgZGFiZWkgdW50ZXJzdHVldHplbiBNYWdpZXIgU3BpZWxlci4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2VpbmUgU3RlcmJlaGlsZmUgaW0gTUcgKEFuYXRvbCwgMjIuIFNlcCAxOTk3LCAxNTo0OToyNCk6Cn4jISBybj1KYW5rYSBydD04NzQ5MzYwNjkgcmc9c2NobWFycm4KfiMhIHRpZD04NzQ5MzYwNjkKR2xhdWInIG1pciwgZGFzIGdlaHQgU08gZWluZmFjaC4uLiBfaGllcl8gYnJhdWNodCBtYW4ga2VpbmUgU3RlcmJlaGlsZmUuCgpFcmZhaHJlbiwKQW5hdG9sIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtlaW5lIFN0ZXJiZWhpbGZlIGltIE1HIChSb2NodXMsIDIyLiBTZXAgMTk5NywgMTY6MTA6NTEpOgp+IyEgcm49SmFua2EgcnQ9ODc0OTM2MDY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc0OTM2MDY5CkljaCBoYWJlIGRpZSBIaWxmZS1TZWl0ZW4gYWt0dWFsaXNpZXJ0LgoKICBSb2NodXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2VpbmUgU3RlcmJlaGlsZmUgaW0gTUcgKFF1YXNpbW9kbywgMjIuIFNlcCAxOTk3LCAxNzozNzo0MCk6Cn4jISBybj1Sb2NodXMgcnQ9ODc0OTM3NDUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc0OTM2MDY5CgpFaW4gcGFhciBkYXZvbiBoYXR0ZSBpY2ggYWxzIFNwaWVsZXIgc29nYXIgbWl0Z2VtYWNodCAuLi4gOi0pCgpRdWFzaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLZWluZSBTdGVyYmVoaWxmZSBpbSBNRyAoSmFua2EsIDIyLiBTZXAgMTk5NywgMjE6NDg6MTEpOgp+IyEgcm49Um9jaHVzIHJ0PTg3NDkzNzQ1MSByZz1zY2htYXJybgp+IyEgdGlkPTg3NDkzNjA2OQpVbmQgZGEgc2FndCBub2NoIGplbWFuZCBNYWdpZXIgdHVuIG5pY2h0cyBmdWVyIFNwaWVsZXIhISEgOikKUm9jaHVzIGljaCBkYW5rZSBEaXIhISEKSWNoIHdlcmRlIGdsZWljaCBtYWwgZGllIExpc3RlIGF1c3Byb2JpZXJlbiEKCkphbmthIGhhdCBUb2Rlc3NlaG5zdWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5hIHNvd2FzISAoQ2VyZWJ1cywgMjMuIFNlcCAxOTk3LCAwODo1NTozMSk6CmdlcmFkZSBhbSBmYWNoc2NoYWZ0c2JyZXR0IGdlc2VoZW46CgpTU1AgLSBCZXJhdHVuZyEhCgpMZWlkZXIgaGFuZGVsdGUgZXMgc2ljaCBkYW5uIGRvY2ggbnVyIHVtIFN0dWRpZW5zY2h3ZXJwdW5rdGUgdW5kIG5pY2h0IHVtIGRpZQpTY2hyZWNrZW5zc3BwaXR6ZS4uLjotKCgoCgpDZXJlYnVzIChkZXIgaW0gU2lydXAgc3RlY2t0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEF1cyBkZXIgUmVpaGUgJ21vdXRzJy4uLiAoQ2F1bm8sIDIzLiBTZXAgMTk5NywgMTM6MTA6MTEpOgp+IyEgcm49QW5hdG9sIHJ0PTg3NDkzNTQzNyByZz1zY2htYXJybgp+IyEgdGlkPTg3NDkzNTQzNwpobXBmLiBXZXIgenVsYXR6dCBpbiBNSUIgd2FyLCBoYXQgZG9jaCB3b2hsIHNpY2hlciBtaXRnZWtyaWVndCwgZGFzcyBFbHZpcwpoaWVyIG51ciBhdWYgQmVzdWNoIHdhciwgdW5kIGluendpc2NoZW4gd2llZGVyIGFiZ2VyZWlzdCBpc3QuCkR1IGhhc3Qgd29obCB6dSB0aWVmIGluIGRpZSBBbW5lc2llLUxhbXBlIGdlZ3Vja3QsIEFuYXRvbD8KCkMuIE5vCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXJvayAoQmlyZHksIDIzLiBTZXAgMTk5NywgMTQ6NTM6MjYpOgoKUGV0ZXIgdm9uIEZyb3N0YSBmcmFndCBEaWNoIG5hY2g6IFRlbGVwaG9uPwpEdSBzY2hhdXN0IFBldGVyIHZvbiBGcm9zdGEgZnJhZ2VuZCBhbi4KUGV0ZXIgdm9uIEZyb3N0YSBmcmFndCBEaWNoIG5hY2g6IEdpbGRlPwpEdSBzYWdzdDogRGllIGlzdCBpbiBQb3J0IFZhaW4uClBldGVyIHZvbiBGcm9zdGEgZnJhZ3QgRGljaCBuYWNoOiBSZXplcHQ/CkR1IHNhZ3N0OiBEYSBmcmFnIG1hbCBhbSBiZXN0ZW4gS2V0b3MsIGRlciBpc3QgQXJ6dC4KUGV0ZXIgdm9uIEZyb3N0YSBmcmFndCBEaWNoIG5hY2g6IEhlaWRpPwpEdSBzYWdzdDogUGV0ZXIsIER1IGJpc3QgaW0gZmFsc2NoZW4gRmlsbS4uLgpCaXJkeSwgZ2VuaWVzc3Qgd2VpdGVyIHBldGVyLCBkYXMgd2FyIG5hZW1saWNoIG5vY2ggbmljaHQgYWxsZXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9obmUgV29ydGUgKFRlZGR5LCAyNC4gU2VwIDE5OTcsIDA0OjE3OjQ5KToKW01vZXJkZXI6R2Vpc3QgZWluZXMgRmV1ZXJ0ZXVmZWxzXSBBbmFjcmlvbiwgd2FlciBqZXR6dCBuaWNodCBlaWdlbnRsaWNoCltNb2VyZGVyOkdlaXN0IGVpbmVzIEZldWVydGV1ZmVsc10gVm9ybGVzdW5nPyA8MDQ6MTU6Mjk+CgpVbSBkaWVzZSBaZWl0PyA7LSkKClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogb2huZSBXb3J0ZSAoUm9jaHVzLCAyNC4gU2VwIDE5OTcsIDEzOjM4OjE5KToKfiMhIHJuPVRlZGR5IHJ0PTg3NTA2NzQ2OSByZz1zY2htYXJybgp+IyEgdGlkPTg3NTA2NzQ2OQpNdWRkZXIga29lbm5lbiBhdXMgYWxsZW4gbW9lZ2xpY2hlbiBaZWl0em9uZW4ga29tbWVuLgpVbmQgaXJnZW5kd28gYXVmIGRlciBXZWx0IElTVCB1bSBkaWVzZSBaZWl0IFZvcmxlc3VuZyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG9obmUgV29ydGUgKEFuYWNyaW9uLCAyNC4gU2VwIDE5OTcsIDEzOjQyOjI5KToKfiMhIHJuPVRlZGR5IHJ0PTg3NTA2NzQ2OSByZz1zY2htYXJybgp+IyEgdGlkPTg3NTA2NzQ2OQpBZWhlbS4KV2VyIGtvZW5udGUgc2ljaCBkZW5uIG5vY2ggc28gc3BhZXQgaW0gTXVkIGF1ZmhhbHRlbiA/IT8KKnBmZWlmIHVuc2NodWxkaWcqCgpBbmFjKiAtIGhldXRlIGFub255bQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBvaG5lIFdvcnRlIChZZW5kaSwgMjQuIFNlcCAxOTk3LCAxMzo0NDoxMyk6Cn4jISBybj1BbmFjcmlvbiBydD04NzUxMDEzNDkgcmc9c2NobWFycm4KfiMhIHRpZD04NzUwNjc0NjkKCkFuYWNhbm9ueW0/CkFuIGFjcm9ueW0/CkFuYWNvbmRhPwoKKmdydWViZWwqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG9uY2UgYWdhaW4uLi4gKEdyaW1tYm9ybiwgMjQuIFNlcCAxOTk3LCAxNDo0MjoxNCk6Cn4jISBvbj1CZW5kZWlnaWQgb3Q9ODc0OTEyNzg5IG9nPXdpdHplCn4jISBvbj1EZW50aSBvdD04NzQ2NjM0MjQgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1EaWVkZXIgcnQ9ODc0NjYxMjU0IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTg3NDY2MTI1NAoKbmV0dCwgYWJlciBnZWhvZXJ0IGRhcyBuaWNodCBuYWNoIHdpdHplPyBvZGVyIGhhdCBkYXMgd2FzIGJlc29uZGVyZXMgZnVlcgprYWVtcGZlcj8KCmRlbnRpLCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIHdpbGwgYXVjaCBtYWwgLi4uIChCb2luZywgMjQuIFNlcCAxOTk3LCAxNToxMTozOCk6CkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIHdpbGwgYXVjaCBtYWwgLi4uIChMdWcsIDI0LiBTZXAgMTk5NywgMTU6MTI6MTgpOgp+IyEgcm49Qm9pbmcgcnQ9ODc1MTA2Njk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc1MTA2Njk4CiBBZWggQm9pbmcsCgouLi4gZGEgZmVobHQgaXJnZW5kd2llIGRpZSBQb2ludGUuLi4KClNrZXB0aXNjaApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSWNoIHdpbGwgYXVjaCBtYWwgLi4uIChCb2luZywgMjQuIFNlcCAxOTk3LCAxNToxMjo1Nik6Cn4jISBybj1MdWcgcnQ9ODc1MTA2NzM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc1MTA2Njk4CkdlbmF1LCBkYW1pdCB1bnRlcnNjaGVpZGV0IHNpY2ggbWVpbiBBcnRpa2VsIGluIG5pY2h0cyB2b24gYWxsZW4gYW5kZXJlbgpkaWVzZXIgQXJ0LiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEljaCB3aWxsIGF1Y2ggbWFsIC4uLiAoQW5hdG9sLCAyNC4gU2VwIDE5OTcsIDE1OjEzOjIwKToKfiMhIHJuPUx1ZyBydD04NzUxMDY3Mzggcmc9c2NobWFycm4KfiMhIHRpZD04NzUxMDY2OTgKRGllIFBvaW50ZSBpc3QsIGRhc3MgamV0enQgendlaSBEdXplbmQgTGV1dGUgc3VjaGVuLCB3YXMgc2llIGlnbm9yaWVyZW4gb2RlcgptaXQgdGYgcmF1cy1nYWdnZW4gOy0pCgpBbmF0b2wgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBJY2ggd2lsbCBhdWNoIG1hbCAuLi4gKFNpbHZhbmEsIDI0LiBTZXAgMTk5NywgMjI6NTI6MzEpOgp+IyEgcm49QW5hdG9sIHJ0PTg3NTEwNjgwMCByZz1zY2htYXJybgp+IyEgdGlkPTg3NTEwNjY5OApCZWkgbWlyIGhhdHRlIGVyIHNvZ2FyIG5lIFBvaW50ZS4uLi4gSW4gZGVyIG5hZWNoc3RlbiBaZWlsZSBzdGFuZCBkYW5uOgovbG9nL0FSQ0g6CiAgU2lsdmFuYSAtIGxpZXN0IG1hbCB3YXMgaW50ZXJlc3NhbnRlcy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IGRpZSAxOTk4OTcgb2RlciBzbyAuLiAoQWxib2luLCAyNS4gU2VwIDE5OTcsIDEzOjUwOjE3KToKCltBYmVudGV1ZXI6R2F0b10gd2llIGtvbW1lIGljaCBhdXMgZGVtIFNjaG5lZSBhbSBLaWxnaGFkLVBhc3M/CltBYmVudGV1ZXI6QWxib2luXSBsYWNoIGdhdG8gaGVpc3N0IHVuc2VyIEthdGVyCj4gTGl6IGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCltUb2Q6TGFyc10gRWluIHNjaGxpbW1lIEVyZnJpZXJ1bmcgaGF0IGdlcmFkZSBHYXRvIHVtZ2VicmFjaHQuClNpbmd1bGFyaW9uIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uClNpbmd1bGFyaW9uIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KW0FiZW50ZXVlcjpBY2hha3phaV0gV2VyIGtlbm50IHNpY2ggbWl0IGRlciBTaWVnZWxyaW5nLVF1ZXN0IGF1cz8KR2F0byBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogaW5yX3N0cmF1c3MuZnprLmRlICgxNDEuNTIuMTIuMjEzKSBbS2FybHNydWhlXS4KRWluZ2Vsb2dndCBzZWl0OiBNb24sIDIyLiBTZXAgMTk5NywgMTQ6MjI6MTcKVm9sbGVyIE5hbWU6IEdhdG8gZGVyIEthcmF0ZS1LYWVtcGZlciwgNy4gS3l1CkhvcHBsYSwgZWluIEdlaXN0IQpSYXNzZTogTWVuc2NoLCAgR2lsZGU6IEthcmF0ZSwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogNGQgMjM6MTI6NDQsICAgU3BpZWxlcmxldmVsOiA3LCAgIEdpbGRlbmxldmVsOiAzCkRhdHVtIGRlcyBlcnN0ZW4gTG9naW46IFNhbSwgIDkuIEF1ZyAxOTk3LCAyMDowODoyMwpFLU1haWwtQWRyZXNzZTogbm9uZQpCaXNoZXIgYmVyZWl0cyA3IG1hbCBnZXN0b3JiZW4KPiBMaWxsZWJyb3IgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KW0JlaWxlaWQ6Wm9ycm9dIGdlbmF1IHNvCgpBbGJvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVlYnVuZ3NyYXVtIChCaXJkeSwgMjYuIFNlcCAxOTk3LCAxMTowNjo1Myk6ClBhbGUgc3RhcnJ0IHNlaW5lIFVudGVyaG9zZW4gYW4gdW5kIG11cm1lbHQgZXR3YXMuClNob3JrYW4gc3RlY2t0IGVpbmUgSG9zZSBpbiBlaW4gUGFrZXQuClBhbGUgemllaHQgc2VpbmUgVW50ZXJob3NlbiB3aWVkZXIgYW4uClBhbGUgc3RhcnJ0IHNlaW5lIFVudGVyaG9zZW4gYW4gdW5kIG11cm1lbHQgZXR3YXMuClNob3JrYW4gc3RlY2t0IGVpbmUgSG9zZSBpbiBlaW4gUGFrZXQuCgpncmlucyBCaXJkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdWVidW5nc3JhdW0gZGllIDIuIChCaXJkeSwgMjYuIFNlcCAxOTk3LCAxMjoxNzo1Mik6CkVpbmUgUG9ydGlvbiBGZXR0IHRhbnp0IHdpZSBpbiBUcmFuY2UgZHVyY2ggZGllIEdlZ2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlaXN0ZXIuLi4gKEhhcmRpbCwgMjYuIFNlcCAxOTk3LCAxMzo1NTowOCk6Cldlbm4gbWFuIGxhbmdzYW0gU2NoaXp6byB3aXJkLCB1bnRlcmhhZWx0IG1hbiBzaWNoIHNjaG9uIGJlaW0gV2FydGVuIGF1ZiBuZXVlClp1dGF0ZW4gbWl0IGRlbSBHZWlzdCBpbSBMYWRlbjoKCkR1IHNhZ3N0OiBrYW5uc3RlIG1hbCBQYXRyeW4gemFwcGVuIG9kZXIgc28/Cj4gRGVyIEdlaXN0IHNjaHdlYnQgaGluIHVuZCBoZXIuIEVyIHNjaGVpbnQgenUgdWViZXJsZWdlbi4KCk5pY2h0IHVlYmVybGVnZW4sIGR1bW1lciBHZWlzdCEKCi1oYXJkaWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hpem9waHJlbj8gKEJlbmRlaWdpZCwgMjYuIFNlcCAxOTk3LCAxNTo1MDowMyk6CgpbQWxsZ2VtZWluOldvb2R5IGlzdCBkYW5uIHdlZy5dCkhhdGUgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpJcmdlbmR3aWUgaGFiIGljaCdzIGltbWVyIHNjaG9uIHZlcm11dGV0Li4uIDopCgpaJ3BhciBTZXJ2dSwKICAgICAgICAgICAgICAgQmVuZGVpZ2lkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppY2ggd3Vzc3RlIGVzIDopIChEZW50aSwgMjcuIFNlcCAxOTk3LCAxMTowMjoyOSk6Cgo8Cls8TWFzdGVSPjpPbSBsYWVzc3QgZGllIEViZW5lICdabXVkJyBlbnRzdGVoZW4uXQpbPE1hc3RlUj46T20gbGFlc3N0IGRpZSBFYmVuZSAnVW50ZXJ3ZWx0JyBlbnRzdGVoZW4uXTsKSGFuZ292ZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCklzdCBPbSBudSBIYW5nb3ZlcnMgTWFnaWVyendlaXRpZT8gCgpEZW50aSBtYWwgc2NobWFycmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAyOS4gU2VwIDE5OTcsIDExOjQ0OjQ4KToKIldlciB6d2VpIFJhdHRlbiBnbGVpY2h6ZWl0aWcgamFndCwgZXJ3aXNjaHQga2VpbmUuIgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp2ZXJsYXNzZW5lcyBoYXVzIGluIHZsYW5kIChCaXJkeSwgMzAuIFNlcCAxOTk3LCAxNzoxMjowNSk6Cj4gdW50IGJpbGRlcgpEYXMgZXJzdGUgQmlsZCB6ZWlndCBlaW5lIGdsdWVja2xpY2hlIE9ya2ZhbWlsaWUuIEF1ZiBkZW0gbmFlY2hzdGVuIEJpbGQgaXN0Cm51ciBlaW4gbWFlbm5saWNoZXIgT3JrIHp1IHNlaGVuLiBEYXMgd2FyIHdvaGwgZGVyIEZhbWlsaWVudmF0ZXIuIEVyIHNjaGVpbnQsCmFscyB3YWVyZSBlciBnZXN0b3JiZW4gdW5kIGRpZSBGYW1pbGllIGRlc2hhbGIgYXVzemllaGVuIG11c3N0ZS4gRGFzIGxldHplCkJpbGQgemVpZ3QgZWluZW4gR3JhYnN0ZWluLgo+IHVudCBncmFic3RlaW4KQXVmIGRlbSBHcmFic3RlaW4gaXN0IGVpbmUgSW5zY2hyaWZ0IHp1IGxlc2VuLgo+IGxpCkhpZXIgc3RhcmIgZGllIGFybWUgSHVlcGZlci4KCmdyaW5zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGltIEdsb2NrZW53YWxkIChCaXJkeSwgIDEuIE9rdCAxOTk3LCAxMToyOTo0Nyk6CkRlciBHbG9ja2Vud2FsZC4KRXMgZ2lidCBzZWNocyBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZHdlc3Rlbiwgc3VlZGVuLCB3ZXN0ZW4sIG5vcmRlbgp1bmQgc3VlZG9zdGVuLgoxMzMyIE11ZW56ZW4uICgyKQpFaW4gU3BlZXIuICgyKQpFaW4gTGVkZXJoZWxtLiAoMikKRWluZSBXaWxkc2F1LgpFaW4gV2FsZGhhdXMgbWl0IFdlaWhlci4KCk11ZW56ZW4gdW5kIE11ZW56ZW4gISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VydWVjaHRlIChab3JybywgIDEuIE9rdCAxOTk3LCAxMzowNjozNSk6Ckdlc3RlbiB1ZWJlciBkZXIgS3VnZWwsIHVuZCBEdSBzaWVoc3Q6CkRlciBTdHJhbmRrb3JiIHNpZWh0IHZvbiBpbm5lbiBzdXBlcmt1c2NoZWxpZyBhdXMuIE1hbiBrYW5uIGhpZXIgdW5nZXN0b2VydApzaXR6ZW4gdW5kIGt1c2NoZWxuIHVuZCBhbmRlcmUgRGluZ2UgdHVuLiBFaW4ga2xlaW5lciBaZXR0ZWwgaGFlbmd0IGFuIGVpbmVtCktpc3NlbiBiZWZlc3RpZ3QuCkFlbmVhcyBoaWRlcyBpbiBzaGFkb3csIGV4aXN0cyBpbiBzZWNyZXQgYW5kIGRyZXNzIGluIGJsYWNrLgpNaWV6ZSBrbGVidCBhbiBkZXIgRmVuc3RlcnNjaGVpYmUuCkF1c3NlcmhhbGIgc2llaHN0IER1OgpTYW5kc3RyYW5kLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuIHVuZCBub3JkZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZXJsaW4gKEFjcmltb24sICAxLiBPa3QgMTk5NywgMTc6MDQ6MzEpOgpNb3JvbiBydWZ0OiBJY2ggYmluIGJlaSBNZXJsaW4hClRhbmdhbHVyIHJ1ZnQ6IHdvIGlzdCBtZXJsaW4gPwpNb3JvbiBydWZ0OiBCZWkgSWxsdXppZGEhClRhbmdhbHVyIHJ1ZnQ6IHdlciBiaW4gaWNoCkNoYWluc2F3IHJ1ZnQ6IGluIE1vcm9uID8KTWVybGluIHJ1ZnQ6IFdvIGlzdCBUYW5nYWx1cj8KWWFyZW4gcnVmdDogc2h1dCB1cCB5b3UgbW9yb24hCkR1IHJ1ZnN0OiBUYW5nYWx1ciBoYXQga2VpbmUgQWhudW5nLCB3byBlciBzaWNoIGJlZmluZGV0Ck1lcmxpbiB0ZWlsdCBEaXIgbWl0OiBXbyBiaXN0IER1IHVuZCB3byBiaW4gaWNoPwpUYW5nYWx1ciBydWZ0OiBqYSBkYXMgYmVmdWVyY2h0ZSBpY2ggYXVjaApNZXJsaW4gcnVmdDogSWNoIGhhYiBuaWNodCBkaWUgbGVpc2VzdGUgSWRlZSwgd28gaWNoIGhpZXIgYmluIC4uLgoKOi0pCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1haWwgKFd1cnplbCwgIDEuIE9rdCAxOTk3LCAyMzo1Njo1OCk6CkFic2VuZGVyOiBDcmVkaXRAdXNhLm5ldApBbjogV3VyemVsCkNjOiAKRGF0dW06IE1pdCwgIDEuIE9rdCAxOTk3LCAyMzo0Mjo0MgpUaXRlbDogR2V0IGFuIHVuc2VjdXJlZCBjcmVkaXQgY2FyZCwgR3VhcmFudGVlZCEhCgoKRnJvbTogY3JlZGl0QHVzYS5uZXQKVG86IHh4eHh4eHh4eHh4eHhAZ2VvY2l0aWVzLmNvbQpEYXRlOiBXZWQsIDAxIE9jdCA5NyAxNTo0Mjo1NiBFU1QKU3ViamVjdDogR2V0IGFuIHVuc2VjdXJlZCBjcmVkaXQgY2FyZCwgR3VhcmFudGVlZCEhCgpIZWxsbywKCkRvIHlvdSB3YW50IGFuIHVuc2VjdXJlZCBjcmVkaXQgY2FyZD8gV2VsbCBJIGNhbiBoZWxwIHlvdSBnZXQgb25lLiBZb3UganVzdCAKaGF2ZSB0byBtZWV0IGEgZmV3IG1pbm9yIHJlcXVpcmVtZW50cwphbmQgSSBjYW4gZ3VhcmFudGVlIHRoYXQgeW91IHdpbGwgcXVhbGlmeSBmb3IgYXQgTEVBU1QgMiBtYWpvciB1bnNlY3VyZWQgCmNyZWRpdCBjYXJkcy4gQmFkIGNyZWRpdD8gTm8gY3JlZGl0PyBObyBwcm9ibGVtCgpGb3IgbW9yZSBpbmZvcm1hdGlvbiBvciB0byBmaWxsIG91dCBhbiBvbmxpbmUgYXBwbGljYXRpb24gZ28gdG86Cmh0dHA6Ly93d3cuYmVldnkuY29tL2NhcmRfc2VhcmNoL3VzYT85MC00NDE3CgpGb2xsb3cgdGhlIGxpbmsgYmVsb3cgaWYgeW91IHdvdWxkIGxpa2UgdG8gYmVjb21lIGEgZGlzdHJpYnV0b3IgYW5kIG1ha2Ugc29tZSAKZXh0cmEgJCRtb25leSQkCmh0dHA6Ly93d3cuYmVldnkuY29tL2NhcmRfc2VhcmNoL2Rpc3RpbmZvPzkwLTQ0MTcKCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoYW5rIHlvdSBhbmQgZ29vZCBsdWNrIGluIHRoZQpmdXR1cmUhISEKCgoKKklmIHlvdSBkaWQgbm90IHdpc2ggdG8gcmVjZWl2ZSB0aGlzIGVtYWlsIHRoZW4gSSBhcG9sb2dpemUgYW5kIHlvdSBuZWVkIG5vdCAKd29ycnkgYWJvdXQgdGFraW5nIHlvdXJzZWxmIG9mZiBvZiBhIGxpc3QgCmJlY2F1c2UgdGhpcyBpcyBhIG9uZSB0aW1lIG1haWxpbmcqCgoKaG0uLi4gZ2VodCBkaWUgcmVjaG51bmcgZGFubiBhdWNoIGFuIHd1cnplbD8gOikKd3Vzc3RlIG5vY2ggbmljaHQsIGRhc3MgbWFuIG5vY2ggbmljaHQgbWFsIGltIG11ZCB2b3IganVua21haWwgc2ljaGVyIGlzdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcHJvdG9rb2xsIGVpbmVyIHVwdGltZSAoRGhvamFrdCwgIDIuIE9rdCAxOTk3LCAwMzoxNjo0Nik6CltBbGxnZW1laW46RXRhcmFrXSB1bmQgd2llZGVyIGVpbmVyCltBbGxnZW1laW46RGhvamFrdF0gbmVlLCBpY2ggbWFjaCBqZXR6dCBhdWNoIG5peApbQWxsZ2VtZWluOkRob2pha3RdIG1pdCAyIG1pbiB1cHRpbWUgbG9obnQgc2ljaHMgbmljaHQgbWFsIGRlbiBmdXNzIHZvciBkaWUKW0FsbGdlbWVpbjpEaG9qYWt0XSB0dWVyIGRlcyBzZWhlcmhhdXNlcyB6dSBzZXR6ZW4KICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRG9uLCAgMi4gT2t0IDE5OTcsIDAzOjEyOjExICgxMCBUZWlsbmVobWVyKQo+a3dlcgpMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucwpMb2dvbi4uLi4uLi4uLi4ucyAgTG9nb24uLi4uLi4uLi4uLnMgIEV0YXJhay4uLi4uLi4uLi56ICBCcm9kYXIuLi4uLi4uLi4uUwpGcm9naHVudGVyLi4uLi4uUyAgRGhvamFrdC4uLi4uLi4uLnoKW0FsbGdlbWVpbjpCcm9kYXJdIFdlbm4gbWFuIGVpbnMgaGF0IDopCltBbGxnZW1laW46RGhvamFrdF0gbmFqYSwgd2Vubi4uLgpbQWxsZ2VtZWluOkRob2pha3RdIG1hbiBrb2VubnRlIGphIG5vY2ggd2FzIGluIGRpZSB6ZWl0dW5nIHNjaHJlaWJlbi4uLgpbQWxsZ2VtZWluOkZyb2dodW50ZXJdIEhhdCBzaWNoIG5vY2gga2VpbiBTb2ZhIHJlaW5nZXN0ZWxsdCAuLi4KW0FsbGdlbWVpbjpEaG9qYWt0XSBkYXNzIG1hbiBtaXQgaGFldWZpZ2VuIHJlYm9vdHMgcmVjaG5lbiBtdXNzIDopCiUgQ29ubmVjdGlvbiB0byBNRyBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW5zdGFiaWxpdGFldCAoTWFoYXRtYSwgIDIuIE9rdCAxOTk3LCAxNToxNjoxMyk6CltBbGxnZW1laW46RGhvamFrdF0gbWFuIGtvZW5udGUgZGFyYXVzIGV2dGwgc2NobGllc3NlbiwgZGFzcyBkYXMgbWcgaW0gbW9tZW50CltBbGxnZW1laW46RGhvamFrdF0gZXR3YXMgaW5zdGFiaWwgbGFldWZ0LgolIENvbm5lY3Rpb24gdG8gbWcgY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KLS0tLSBObyB3b3JsZCAtLS0tCgpNYWhhdG1hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcnN0ZXIgKFpvcnJvLCAgMi4gT2t0IDE5OTcsIDE1OjE5OjUwKToKTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERvbiwgIDIuIE9rdCAxOTk3LCAxNDo0NDoyOCAoNCBUZWlsbmVobWVyKQoKTG9nb24uLi4uLi4uLi4uLnMgIExvZ29uLi4uLi4uLi4uLi5zICBMb2dvbi4uLi4uLi4uLi4ucyAgWm9ycm8uLi4uLi4uLi4uLlMKCkVuZGxpY2ggbWFsCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBhbSBOYWNobWl0dGFnIGRlciBSZWJvb3RzLi4uIChDYWtleSwgIDIuIE9rdCAxOTk3LCAxNjozOTowNCk6CldpZSBoZWlzc3QgRHUgZGVubiA/IFNjaG9lbiwgZGFzcyBEdSB3aWVkZXIgZGEgYmlzdCwgQ2FrZXkhClBhc3N3b3JkOiAKRHUgZmluZGVzdCAyMTIgTXVlbnplbiwgZGllIER1IGJlaW0gbGV0enRlbiBNYWwgdmVybG9yZW4gaGFzdC4KCkR1IGhhc3QgMyBuZXVlIEJyaWVmZSBpbSBQb3N0YW10IGxpZWdlbi4KVGh1ZmhpciwgSGFuZ292ZXIsIEJpcmR5IHVuZCBPa2tlIHNpbmQgaW0gU3BpZWwuCkFud2VzZW5kZSBFcndhcnRldGU6IEJpcmR5LCBIYW5nb3ZlciB1bmQgT2trZS4KPiBEdSBoYXN0IGpldHp0IDIxOCBMZWJlbnNwdW5rdGUgdW5kIDE1NCBNYWdpZXB1bmt0ZS4KQWVuZWFzICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCltBYmVudGV1ZXI6Um9hZHJ1bm5lcl0gdmllbHp1c3BhZXQKJSBDb25uZWN0aW9uIHRvIG1nIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCi0tLS0gTm8gd29ybGQgLS0tLQoKV2FyIGphIGVjaHQgbGFuZ2UgdXAuLi4KQ2FrZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsaW5lIGluIEJvbm4/IChTaWx2YW5hLCAgMi4gT2t0IDE5OTcsIDIyOjA3OjI2KToKR2VyYWRlIGluIGVpbmVyIEZlcm5zZWgtQmVpbGFnZSBnZWZ1bmRlbjoKCkJPU1MgRlVFUiBFSU5FTiBUQUcgZGFyZiBBbGluZSBpbSBCdW5kZXNrYW56bGVyYW10IHNlaW4uIFp1bSBUYWcgZGVyIApEZXV0c2NoZW4gRWluaGVpdCBuaW1tdCBzaWUgUGxhdHogYW0gU2NocmVpYnRpc2NoIHZvbiBLYW56bGVyIEtvaGwsCmZ1ZXR0ZXJ0IHNlaW5lIEZpc2NoZSB1bmQgYmV3dW5kZXJ0IHNlaW5lIE1lZGFpbGxlbi4gV2FzIEFsaW5lIG5vY2gKZXJsZWJ0IGFuIGRlbSBUYWcsIGFuIGRlbSBzaWUgZGFzIExhbmQgYWxzICJCdW5kZXNib3NzaW4gcmVnaWVydCIsIGRhcwp6ZWlndCBOaWNrZWxvZGVvbiBhbSAzLk9rdC4gYWIgMTg6MDAgVWhyLiAuLi4KCk5hLCBtaXIgd3VlcmRlIGRhIGJlc3NlcmVzIGVpbmZhbGxlbiwgYWxzIE1lZGFpbGxlbiB6dSBiZXd1bmRlcm4uLi4KCiAgU2lsdmFuYSAtIHd1ZW5zY2h0IEFsaW5lIGVpbmVuIGtyZWF0aXZlbiBUYWcuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2Vpc2hlaXQgKEFuYWNyaW9uLCAgMy4gT2t0IDE5OTcsIDA1OjUwOjIzKToKS2hpZGFyIHRlaWx0IERpciBtaXQ6IG1hbiBzb2xsIHNpaGMgaGFsdCBuaWNoIHZlcnRpcHBlbi4KCipncmlucyoKQW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktvbWlzY2hlciBWb2dlbC4uLiAoSGFuZ292ZXIsICAzLiBPa3QgMTk5NywgMTU6Mjg6MzgpOgpHcmFkZSBhdWYgVG9ldGVycyBJbnNlbDoKCkR1IHZlcnd1c2NoZWxzdCBlaW5lcyBSYWJlbiBIYWFyZS4KCkhhYmVuIGRpZSBuaWNodCBlaWdlbnRsaWNoIEZlZGVybj8KLUhhbmdvdmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS29taXNjaGVyIFZvZ2VsLi4uIChEZW50aSwgIDMuIE9rdCAxOTk3LCAxNTozNjozOCk6Cn4jISBybj1IYW5nb3ZlciBydD04NzU4ODUzMTggcmc9c2NobWFycm4KfiMhIHRpZD04NzU4ODUzMTgKCk9jaCwgZGFzIGdlaHQgbWl0IFBhcGFnZWllbiBhdWNoIDspCgpEZW50aSB3dW5kZXJ0IHNpY2ggdHJvdHpkZW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXIgRGVudGkgKEhhbmdvdmVyLCAgNC4gT2t0IDE5OTcsIDE0OjM1OjMxKToKTW9pbiEKCkFsbGdlbWVpbiBvY2ggamUsIHdpZXNvIHNjaHJlaWJ0IG5pZW1hbmQgd2FzIGluIGRlciB6ZWl0dW5nCgpCaXR0ZSA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNSQVNIISAoQmVuZGVpZ2lkLCAgNi4gT2t0IDE5OTcsIDA4OjQzOjQxKToKU28gbWFjaHQgZWlubG9nZ2VuIFNwYXNzOiAgCgpbVHJ2ZXM6QmVuZGVpZ2lkXSB0YWNoIG1hZW5uZXJzLCBsYWdnZW5kZXJ3ZWlzIDopCj4gW1RydmVzOkRlbnRpXSByZWJvb3RlbmRlcndlaXNlIDspCj4geGxhZwpMZXR6dGUgNjAgbWluOiBOL0EKTGV0enRlIDE1IG1pbjogTi9BCkxldHp0ZSBNaW51dGU6ICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgKDM5LjclKQotdCBvaCwgaWNoIHNlaHMgOikKW1RydmVzOkJlbmRlaWdpZF0gb2gsIGljaCBzZWhzIDopCj4gCiUgQ29ubmVjdGlvbiB0byBCZW5kZWlnaWQgY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KLS0tLSBObyB3b3JsZCAtLS0tCgoKSGF0IG1hbiBkYSBXb3J0ZT8gOykpCgpaJ3BhciBTZXJ2dSwKICAgICAgICAgICAgIEJlbmRlaWdpZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IENSQVNIISAoUXVhc2ltb2RvLCAgNi4gT2t0IDE5OTcsIDE0OjM2OjMyKToKfiMhIHJuPUJlbmRlaWdpZCBydD04NzYxMjAyMjEgcmc9c2NobWFycm4KfiMhIHRpZD04NzYxMjAyMjEKV2FzIGRhcyBkYXMgYmVydWVobXQgaGVsbGUgTGljaHQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIZWxsc2VoZXIgdW50ZXIgc2ljaC4uIChaZXBoeXIsICA2LiBPa3QgMTk5NywgMTc6MDI6MDMpOgoKPiBHbm9tZSBzYWd0OiBpY2ggYmxlaWIgYWJlciBudXIgYmlzIDE3LjMwaC4uLgpEdSBzYWdzdDogIGhhbmRzY2h1aGUga29lbm50ZW4gYmVzc2VyIHNlaW4sIHVuZCBBbXUKRHUgc2Fnc3Q6ICBhYmVyIGhldXQgYWJlbmQgd2lyZCB3b2hsIGVoIHJlYm9vdGV0CkFybWFnZWRkb24gcnVmdDogSW4gMzAgTWludXRlbiB1bmQgMCBTZWt1bmRlbiB3ZXJkZSBpY2ggZGllIFdlbHQgemVyc3RvZXJlbgpBcm1hZ2VkZG9uIHJ1ZnQ6IHVuZCBuZXUgZXJzY2hhZmZlbiEKRHUgYXJnbHN0IGVpbiB3ZW5pZyB2b3IgRGljaCBoaW4uCkdub21lIHNhZ3Q6IGVjaHQ/Ckdub21lIHNhZ3Q6IEFSR0xMTEwKRHUgc2Fnc3Q6ICBhZWgKRHUgc2Fnc3Q6ICBpY2ggbmVobXMgenVydWVjawpbemVpdF0KTW9uLCAgNi4gT2t0IDE5OTcsIDE3OjAwOjI4LgoKWmVwaHlyLCBpbW1lciBub2NoIHN0YXVuZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0cmF1bWRldXR1bmcgZXJ3dWVuc2NodCAoQ2VyZWJ1cywgIDcuIE9rdCAxOTk3LCAxMDo0MToyOCk6Ck1vaW4hCgpJY2ggaGFiZSBoZXV0ZSBuYWNoIGZvbGdlbmRlbiBUcmF1bSBnZWhhYnQsIGRlbiBpY2ggbmljaHQgZGV1dGVuIGthbm46CgpJY2ggYmluIGluIGVpbmVyIFd1ZXN0ZSB1bmQgbGF1ZmUgYXVmIGVpbiBaZWx0IHp1LiBJbiBkZW0gWmVsdCBzaXR6dCBlaW4KU2NoZWljaCB1bmQgcmV6aXRpZXJ0IFdpbGhlbG0gQnVzY2guIEljaCBob2VyZSBlaW5lIFdlaWxlIHp1IHVuZCBkZW5rZSBkYW5uOgpNaXN0LCBpY2ggbXVzcyB3ZWcuIERvY2ggYWxzIGljaCBkYXMgemVsdCB2ZXJsYXNzZW4gd2lsbCwgaGFsdGVuIG1pY2ggZGllCldhZWNodGVyIGF1Ziwgd2VpbCBpY2gga2VpbiBLcm9rb2RpbCBhdWYgZGVuIFNjaHVsdGVybiB0cmFnZS4KCkthbm4gbWlyIGlyZ2VuZHdlciBiZWkgZGVyIERldXR1bmcgaGVsZmVuPwoKQ2VyZWJ1cyAoZGVyIGltIFNpcnVwIHN0ZWNrdCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB0cmF1bWRldXR1bmcgZXJ3dWVuc2NodCAoWWVuZGksICA3LiBPa3QgMTk5NywgMTQ6NTE6MTgpOgp+IyEgcm49Q2VyZWJ1cyBydD04NzYyMTM2ODggcmc9c2NobWFycm4KfiMhIHRpZD04NzYyMTM2ODgKCldhcyBoYXQgZGVyIFNjaGVpY2ggZGVubiBhbGxlcyB6aXRpZXJ0PwpXaWxoZWxtIEJ1c2NoIGhhdCBqYSB2aWVsIGdlc2NocmllYmVuLCB1bmQgZGllIGdlbmF1ZSBXYWhsIGRlciBaaXRhdGUgZGVzClNjaGVpY2hzIGR1ZXJmdGUgZnVlciBkaWUgRGV1dHVuZyBkaWVzZXMgVHJhdW1zIHZvbiBpbW1lbnNlciBCZWRldXR1bmcgc2Vpbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpjcmFzaCBkZXIgLi4uIChaZXBoeXIsICA3LiBPa3QgMTk5NywgMTU6NDE6MzEpOgoKV2llIGhlaXNzdCBEdSBkZW5uID8gU2Nob2VuLCBkYXNzIER1IHdpZWRlciBkYSBiaXN0LCBaZXBoeXIhClBhc3N3b3JkOiAKRHUgZmluZGVzdCAxNTMzNiBNdWVuemVuLCBkaWUgRHUgYmVpbSBsZXR6dGVuIE1hbCB2ZXJsb3JlbiBoYXN0LgoKRGFzIGxldHp0ZSBNYWwga2Ftc3QgRHUgdm9uIDEzMS4yMjAuMTYuMTAKS2l1LCBJdm8gdW5kIFpvcnJvIHNpbmQgaW0gU3BpZWwuCkFud2VzZW5kZSBFcndhcnRldGU6IEtpdSwgQW5kcmVzLCBab3JybywgTWFoYXRtYSwgSXZvIHVuZCBTbmlicmlsLgo+IER1IGhhc3QgamV0enQgMTcxIExlYmVuc3B1bmt0ZSB1bmQgNDIgTWFnaWVwdW5rdGUuCkR1IGhhc3QgamV0enQgMTcxIExlYmVuc3B1bmt0ZSB1bmQgNDMgTWFnaWVwdW5rdGUuCkR1IHppZWhzdCBkZW4gS3JhZ2VuIG1pdCB6d2VpIEtub2NoZW5rcmV1emVuIHVuZCBlaW5lbSBLbm9jaGVuIGFuLgpZZXphcmlhZWwgZmxhdHRlcnQgaGVyZWluLgpEdSBoYXN0IGpldHp0IDE3MiBMZWJlbnNwdW5rdGUgdW5kIDQ0IE1hZ2llcHVua3RlLgpZZXphcmlhZWwga3JhZWNoenQ6IC4uLiBoYXRzIGRlbm4gZ2VjcmFzaHQ/IC4uLiBrcnJyb29hYWEhCiUgQ29ubmVjdGlvbiB0byBNRyBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgotLS0tIE5vIHdvcmxkIC0tLS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVuZ2VzY2huaXR0ZW4uLiAoWmVwaHlyLCAgNy4gT2t0IDE5OTcsIDE1OjQ4OjQ3KToKLS0tLSBXb3JsZCBNRyAtLS0tCiUgQ29ubmVjdGlvbiB0byBNRyBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgotLS0tIE5vIHdvcmxkIC0tLS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCB3YXJzISA6KSkgKEtleSwgIDcuIE9rdCAxOTk3LCAxNTo1NDozMCk6ClNjaG9lbiwgZGFzcyBEdSB3aWVkZXIgZGEgYmlzdCwgS2V5IQpQYXNzd29yZDoKCj5bPE1hc3RlUj46RGFya3dpbmcgbGFlc3N0IGRpZSBFYmVuZSBgWm11ZGBlbnRzdGVoZW4uXQo+WzxNYXN0ZVI+OkhhbmdvdmVyIGxhZXNzdCBkaWUgRWJlbmUgYFRpZ29uZW5gZW50c3RlaGVuLl0KPls8TWFzdGVSPjpIYW5nb3ZlciBsYWVzc3QgZGllIEViZW5lIGBUaWdvbmVuYGVudHN0ZWhlbi5dCgogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRGllLCA3LiBPa3QgMTk5NywgMTU6Mzk6MTYgKDcgVGVpbG5laG1lcikKCkxvZ29uLi4uLi4uLi4uLi5zICAgTG9nb24uLi4uLi4uLi4uLnMgICBEYXJrd2luZy4uLi4uLi4ucyAgIEtleS4uLi4uLi4uLi4uLi5TClNuaWJyaWwuLi4uLi4uLi5TICAgSGFuZ292ZXIuLi4uLi4uLlMgICBLaXUuLi4uLi4uLi4uLi4uUwoKPi1hOmdhZWhudC4KW0FsbGdlbWVpbjpLZXkgZ2FlaG50Ll0KPi11IERvd24KWzxNYXN0ZVI+OktleV0gRG93bgoKJSBDb25uZWN0aW9uIHRvIGNoYW9zIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCi0tLS0gTm8gd29ybGQgLS0tLQoKSmFqYSBpY2ggYmVrZW5uZSBtaWNoIGZ1ZXIgc2NodWxkaWcgPTspCgpLZXkgZ3JpbnN0IGltbWVybm9jaAoKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2V5cyBHZXNwdWVyLi4gKFplcGh5ciwgIDcuIE9rdCAxOTk3LCAxNTo1NzoxNSk6Cj4gS2V5IHRlaWx0IERpciBtaXQ6ID8/PwpEdSB0ZWlsc3QgS2V5IG1pdDogc2NoYWZmIGljaCBuaWNodCBpbiAyIFNlayB6dSBlcnphZWhsZW4KS2V5IHRlaWx0IERpciBtaXQ6ICpncmlucyogaGFzdCBub2NoIG5lbiBiaXNzZXJsIHplaXQgLCkKRHUgaGFzdCBqZXR6dCAxNzkgTGViZW5zcHVua3RlIHVuZCA1MSBNYWdpZXB1bmt0ZS4KRHUgdGVpbHN0IEtleSBtaXQ6IG1laW5zdGU/CkR1IGhhc3QgamV0enQgMTgwIExlYmVuc3B1bmt0ZSB1bmQgNTIgTWFnaWVwdW5rdGUuCktleSB0ZWlsdCBEaXIgbWl0OiB5ZXAgOykKRHUgdGVpbHN0IEtleSBtaXQ6IHdpZXNvIGJpc3RlIHNvIHNpY2hlcj8KS2V5IHRlaWx0IERpciBtaXQ6IGdlc3B1ZXIgOykKRHUgaGFzdCBqZXR6dCAxODIgTGViZW5zcHVua3RlIHVuZCA1NCBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAxODMgTGViZW5zcHVua3RlIHVuZCA1NSBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAxODQgTGViZW5zcHVua3RlIHVuZCA1NiBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAxODUgTGViZW5zcHVua3RlIHVuZCA1NyBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAxODYgTGViZW5zcHVua3RlIHVuZCA1OCBNYWdpZXB1bmt0ZS4KRHUgaGFzdCBqZXR6dCAxODcgTGViZW5zcHVua3RlIHVuZCA1OSBNYWdpZXB1bmt0ZS4KPiBEdSBoYXN0IGpldHp0IDE4OCBMZWJlbnNwdW5rdGUgdW5kIDYwIE1hZ2llcHVua3RlLgolIENvbm5lY3Rpb24gdG8gTUcgY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KLS0tLSBObyB3b3JsZCAtLS0tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOb2UgOykgKEtleSwgIDcuIE9rdCAxOTk3LCAxNjo0NDozNyk6ClNuaWJyaWwgdGVpbHQgRGlyIG1pdDogbGFzcyBlcyB1cCA6KQoKJSBDb25uZWN0aW9uIHRvIGNoYW9zIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCgpOb2UgbGFzcyBpY2ggbmljaHQgPTspCgpLZXkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpjcmFzaCAoWm9ycm8sICA3LiBPa3QgMTk5NywgMTY6NTA6NTgpOgo+IFdpZSB3aWxkIHNjaG1laXNzdCBEdSBhbGxlcyB2b24gRGlyIQpEdSBrYW5uc3QgZWluZSBjaGFvdGlzY2ggbXV0aWVydGUgSGF1dCBuaWNodCBhdXN6aWVoZW4uCkR1IGxhZXNzdCBkaWUgQnVlcnN0ZSBmYWxsZW4uCkR1IGthbm5zdCBkZW4gUnVuZW5zdGFiIG5pY2h0IHdlZ3dlcmZlbiAhCkR1IGxhZXNzdCAzMDEgSG9lcm5lciBkZXIgSHlkcmEgZmFsbGVuLgpEdSBsYWVzc3QgZGllIEt1Z2VsIGZhbGxlbi4KRGllc2VyIFJpbmcga2FubiBEaXIgbm9jaCBzZWhyIG51ZXR6bGljaCBzZWluLgpEdSB6aWVoc3QgZGVuIGVpc2VybmVuIEVoZXJpbmcgYXVzLgpEdSBrYW5uc3QgZGVuIGVpc2VybmVuIEVoZXJpbmcgbmljaHQgd2Vnd2VyZmVuICEKRGFzIHBlcnNvZW5saWNoZSBTZXJ2aWNlcGFrZXQgZGVyIG1wYSBrYW5uIG1hbiBuaWNodCB3ZWd3ZXJmZW4uClNvIGV0d2FzIFdlcnR2b2xsZXMgd2lyZnQgbWFuIG5pY2h0IGVpbmZhY2ggc28gd2VnIQpEdSBsYWVzc3QgODggU2NocnVtcGZrb2VwZmUgdm9uIFdhdGVyIEx1aCBmYWxsZW4uCkR1IHdpbGxzdCBkYXMgQWJlbnRldWVydGFnZWJ1Y2ggZG9jaCBuaWNodCB3ZWd3ZXJmZW4/CkR1IGxhZXNzdCBkZW4gV2Vja2VyIGZhbGxlbi4KRHUga2FubnN0IGRpZSBSdWVzdHVuZyBkZXMgSHlkcmF0b2V0ZXJzIG5pY2h0IHdlZ3dlcmZlbiAhCkFiZXIgbmljaHQgZG9jaC4gV2VubiBEdSBkaWUgUm9sbGUgbG9zd2VyZGVuIHdpbGxzdCwgdmVyYnJlbm5lIHNpZSEKRHUga2FubnN0IGRhcyBGcmV1bmRzY2hhZnRzYmFuZCBuaWNodCB3ZWd3ZXJmZW4gIQpEdSBsYWVzc3QgMjI0NTUgTXVlbnplbiBmYWxsZW4uCkR1IGxhZXNzdCBkZW4ga2xlaW5lbiBLYXN0ZW4gZmFsbGVuLgpEdSB3aWxsc3QgZG9jaCBuaWNodCBldHdhIERlaW5lIEtyaXN0YWxsa3VnZWwgd2Vnd2VyZmVuPwpEdSB3aWxsc3QgZG9jaCBuaWNodCBEZWluIEtlcmJob2x6IHdlZ2dlYmVuIQpEdSBrYW5uc3QgZGVuIFNjaGx1ZXNzZWwgbmljaHQgd2Vnd2VyZmVuICEKRHUga2FubnN0IGRlbiBQbGFuZWRpdG9yIG5pY2h0IHdlZ3dlcmZlbiAhCkR1IGthbm5zdCBkZW4gQmxvY2sgcHVyZW4gRWxmZW5iZWlucyBuaWNodCB3ZWd3ZXJmZW4gIQpEdSBrYW5uc3QgZGVuIFRlZGR5YmFlciBuaWNodCB3ZWd3ZXJmZW4gIQolIENvbm5lY3Rpb24gdG8gTUcgY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KLS0tLSBObyB3b3JsZCAtLS0tCgpqYWphCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIZWxsc2VoZXIgOikgKE11ZGRlbCwgIDcuIE9rdCAxOTk3LCAxNzoxMTozOCk6CkR1IHRlaWxzdCBTdWdhYW4gbWl0OiBobW0uLiBpbSBNb21lbnQgbWFjaHRzIG5pY2h0IHNvb28gdmllbCBTcGFzcyBiZWkgZGVuCkR1IHRlaWxzdCBTdWdhYW4gbWl0OiBzdGFlbmRpZ2VuIEFic3R1ZXJ6ZW4uLiBpbW1lciB3ZW5uIGljaCBuZSBndXRlCkR1IHRlaWxzdCBTdWdhYW4gbWl0OiBBdXNydWVzdHVuZyB6dXNhbW1lbmhhYiwgZ2lidHMgcmVib290IDooCj4gRHUgcmljaHRlc3QgRGVpbmUgZ2FuemUgQXVmbWVya3NhbWtlaXQgYXVmIEhlbGl4IFBvbWF0YS4KRHUgaGFzdCBqZXR6dCAyMDkgTGViZW5zcHVua3RlIHVuZCAxOTIgTWFnaWVwdW5rdGUuCj4gCiUgQ29ubmVjdGlvbiB0byBNRyBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgotLS0tIE5vIHdvcmxkIC0tLS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBNRyBtYWcgbWljaCBuaWNodCBtZWhyIDooIChNdWRkZWwsICA3LiBPa3QgMTk5NywgMTc6MTI6MjIpOgotLS0tIFdvcmxkIE1HIC0tLS0KbXVkZGVsCnh4eHh4eHh4eAolIENvbm5lY3Rpb24gdG8gTUcgY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KLS0tLSBObyB3b3JsZCAtLS0tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFzIE1HIG1hZyBtaWNoIG5pY2h0IG1laHIgOiggKE1hcmN1cywgIDcuIE9rdCAxOTk3LCAxNzoxNjowMCk6Cn4jISBybj1NdWRkZWwgcnQ9ODc2MjM3MTQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc2MjM3MTQyCmR1IHdhcnN0IGphIGF1Y2ggU2NodWxkLCBNdWRkZWwuLi4gQXVzenVnIGF1cyBkZW0gQmFja3RyYWNlOgojNyAgMHg4MDc3MjA4IGluIHJlc3RvcmVfb2JqZWN0IChvYj0weDhmNTdjYTAsIGZpbGU9MHg4N2E4Yzk4CiIvc2F2ZS9tL211ZGRlbCIpCiAgICBhdCBvYmplY3QuYzoxMTk5CgoqZ3JpbnMqCgpDaWFvLCBNYXJjdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYXMgTUcgbWFnIG1pY2ggbmljaHQgbWVociA6KCAoTXVkZGVsLCAgNy4gT2t0IDE5OTcsIDE3OjQ4OjEzKToKSHVjaCwgZGFzIHdvbGx0IGljaCBuaWNodCA6KSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdW5nZXNjaG5pdHRlbi4uIChXYXJnb24sICA4LiBPa3QgMTk5NywgMTE6MDM6MjIpOgp+IyEgcm49WmVwaHlyIHJ0PTg3NjIzMjEyNyByZz1zY2htYXJybgp+IyEgdGlkPTg3NjIzMjEyNwo+IHVwCgpVcHRpbWU6IDIgU3R1bmRlbiwgMTAgTWludXRlbiB1bmQgNTQgU2VrdW5kZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdW5nZXNjaG5pdHRlbi4uIChNb3Jnb3RoLCAgOC4gT2t0IDE5OTcsIDExOjM2OjQ5KToKfiMhIHJuPVdhcmdvbiBydD04NzYzMDE0MDIgcmc9c2NobWFycm4KfiMhIHRpZD04NzYyMzIxMjcKR2VpbGUgU2FjaGUsIGRhcy4gQWJlciByZWljaHQgZXMgbmljaHQgc28gbGFuZ3NhbSBkYW1pdD8KTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNyYXNoIGRpZSAzMjE1c3RlIChIYW5nb3ZlciwgIDguIE9rdCAxOTk3LCAxNzozOTozNSk6CkdyYWRlIGViZW46CgpbPE1hc3RlUj46RGFtaWVuXSB1Cls8TWFzdGVSPjo8TWFzdGVSPl0gRGFzIE1VRCBsYWV1ZnQgamV0enQgMSBNaW51dGUgdW5kIDkgU2VrdW5kZW4uIEVzIHNpbmQKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBtb21lbnRhbiAyMSBTcGllbGVyIGVpbmdlbG9nZ3Q7IGRhcyBNYXhpbXVtIGxhZyBoZXV0ZSBiZWkKWzxNYXN0ZVI+OjxNYXN0ZVI+XSA4NyB1bmQgZGVyIFJla29yZCBiaXNoZXIgaXN0IDE3NC4KW0FsbGdlbWVpbjpEaG9qYWt0XSBobSwgc292aWVsIHp1bSB0aGVtYSBzdGFiaWxpdGFldC4KJSBDb25uZWN0aW9uIHRvIEhhbmdvdmVyIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCi0tLS0gTm8gd29ybGQgLS0tLQoKS2VpbiBLb21tZW50YXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDcmFzaCBkaWUgMzIxNXN0ZSAoQ2F0d2VhemxlLCAgOC4gT2t0IDE5OTcsIDE4OjQ1OjAzKToKfiMhIHJuPUhhbmdvdmVyIHJ0PTg3NjMyNTE3NSByZz1zY2htYXJybgp+IyEgdGlkPTg3NjMyNTE3NQpNb2luIQooRGFzIGF1c2dlcmVjaG5ldCBIYW5nb3ZlcnMgQXJ0aWtlbCBiZWFudHdvcnRldCB3aXJkLCBpc3QgcmVpbiB6dWZhZWxsaWcpCgpEYSBtaXR0bGVyd2VpbGUgd29obCBqZWRlciBiZWdyaWZmZW4gaGF0LCBkYXMgZGFzIE1HIFN0YWJpbGl0YWV0c3NjaHdpZXJpZy0Ka2VpdGVuIGhhdCwgdW5kIGRpZSB6YWhscmVpY2hlbiBBcnRpa2VsIGJlenVlZ2xpY2ggZGVyIGRhdWVybmRlbiBBYnN0dWVyemUKbWl0dGxlcndlaWxlIGFsbHp1IGdlaGFlc3NpZyBhdWYgbWljaCB3aXJrZW4sIHdhZXJlIGljaCBkYW5rYmFyLCB3ZW5uIGlociAKZGVyYXJ0aWdlIEFydGlrZWwgdW50ZXJsYXNzZW4ga29lbm50ZXQuIApJY2ggaGFiIGluIEt1ZXJ6ZSB3ZWl0ZXJlIFBydWVmdW5nZW4gdW5kIF9laWdlbnRsaWNoXyB3YXMgYmVzc2VyZXMgenUgdHVuLAphbHMgYW0gTXVkLVJlY2huZXIgcnVtenVmcmlja2Vsbi4KCllvdXJzIHRydWx5LAogICAgIENhdHdlYXpsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWndlaXRpZW1hcmtpZXJ1bmcuLi4gKEx1cHVzLCAgOC4gT2t0IDE5OTcsIDE5OjMzOjM5KToKSGlobyEKCkljaCBiaW4gZ3JhZGUgYXVmIGVpbiBQcm9ibGVtIGdlc3Rvc3NlbiwgZGFzcyBtaWNoIGluIGVpbmVuIHRpZWZlbiBzZWVsaXNjaGVuCnp3aWVzcGFsdCBnZXN0b3NzZW4gaGF0LiBHZXRyZXUgZGVyIG5ldWVuIERldmlzZSB1bmQgYWxzIHJlY2h0c3RyZXVlciBCdWVyZ2VyCmRpZXNlcyBNVURzIHdvbGx0ZSBpY2ggbWljaCBncmFkZSBhbHMgWndlaXRpIG1laW5lciBnZWxpZWJ0ZW4gKG5hamEpIFRhc2hhCm1hcmtpZXJlbiwgd2VsY2hlIGlocmVzIFplaWNoZW5zIE1hZ2llcmluIGlzdC4KRGVyIFp3ZXJnZW5zY2htaWVkIHdvbGx0ZSBkYXMgbmljaHQgdHVuLCB3ZWlsIFRhc2hhIG5pY2h0IGVpbmdlbG9nZ3Qgd2FyLiBJY2gKZGFyZiBhYmVyIFRhc2hhIG5pY2h0IGdsZWljaHplaXRpZyBtaXQgTHVwdXMgZWlubG9nZ2VuISBBbHNvIHdhcyB0dW4/IEtvbW1lCmljaCBtZWluZXIgTWFya2llcnVuZ3NwZmxpY2h0IG5pY2h0IG5hY2gsIHNvIHdlcmRlIGljaCBzaWNoZXIgZ2Vsb2VzY2h0LiBMb2dnZQppY2ggVGFzaGEgZ2xlaWNoemVpdGlnIG1pdCBMdXB1cyBlaW4gd2VyZGUgaWNoIGF1Y2ggZ2Vsb2VzY2h0LgpXZXIga2FubiBtaXIgaW4gbWVpbmVyIHNlaW5za3Jpc2UgaGVsZmVuPwoKTHVzaGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBad2VpdGllbWFya2llcnVuZy4uLiAoV3VyemVsLCAgOC4gT2t0IDE5OTcsIDE5OjQzOjQ0KToKfiMhIHJuPUx1cHVzIHJ0PTg3NjMzMjAxOSByZz1zY2htYXJybgp+IyEgdGlkPTg3NjMzMjAxOQpqYSBqYS4uLgoKRHVtcGZiYWNrZSBpc3QgVGVzdHNwaWVsZXIuCkR1bXBmYmFja2UgaXN0IFp3ZWl0c3BpZWxlciAoR2FzdDIpLgoKc28gZWluZmFjaCBnZWh0cyA6KQoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWb3JzY2hsYWcgZnVlciBuZXVlbiBNRy1SZWNobmVyIChNZXNhcm9uLCAgOC4gT2t0IDE5OTcsIDE5OjUyOjI0KToKSGFsbG8sCgpJY2ggaGFiIGVpbmVuIEFydGlrZWwgaW0gTmV0eiBnZWZ1bmRlbiwgZGVyIGRlbiB1bHRpbWF0aXZlbiBNRy1SZWNobmVyCmJlc2NocmVpYnQuIERhIGVyIHJlY2h0IGxhbmcgaXN0IHVuZCBkaWUgbWVpc3RlbiBoaWVyIHdvaGwgZWluZW4gV1dXLUJyb3dzZXIKaGFiZW4sIHNlaGUgaWNoIGRhdm9uIGFiLCBpaG4gaGllciB6dSBwb3N0ZW4gdW5kIHZlcnJhdGUgbnVyIGRpZSBVUkw6CgpodHRwOi8vd3d3LmJhdXdlc2VuLnR1LWNvdHRidXMuZGUvfmtub2NrZXIvY29taXhzL2ZyaXR6Lmh0bWwKCkxlc2Vuc3dlcnQuIEZhc3QgbnVyIFRleHQgLT4gc2NobmVsbGVzIExhZGVuLgoKTXVudGVyIGJsZWliZW4sCk1lc2Fvcm4KYWVoLCBNZXNhcm9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBad2VpdGllbWFya2llcnVuZyAoWWFudHJvLCAgOS4gT2t0IDE5OTcsIDA5OjI1OjU3KToKfiMhIG9uPUZ5dCBvdD04NzYzODE4OTUgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVRyYW5jZWZlYXIgcnQ9ODc2MzMzMjAwIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODc2MzMxNjk3CgpJY2ggaGFiIG51ciBlaW5lbiBad2VpdGllLi4uIGRlciBSZXN0IGhlaXNzdCAnRHJpdHRpZScsICdWaWVydGllJy4uLgoKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNb3Jnb3RoLCAgOS4gT2t0IDE5OTcsIDE2OjU1OjE3KToKWmFwaG9iIHJ1ZnQ6IEhJTEZFIQpbVG9kOkxhcnNdIEdpYW5uaSBoYXQgZ2VyYWRlIFphcGhvYiB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXUgQmFja2UhIChTaGFoaSwgIDkuIE9rdCAxOTk3LCAxOTowMjoxOSk6ClNvdmllbCB6dSB1bmdlaG9yc2FtZW4gQWJlbnRldXJlcm46CgpFciBiZWdydWVzc3QgRGljaCBmcmV1bmRsaWNoLCBkYW5uIHNjaGF1dCBlciBzaWNoIHVtLgpIaWxiZXJ0IG5pbW10IGVpbmVuIFN0ZWluLgpIaWxiZXJ0IHNhZ3Q6ICdXaXJrbGljaCBndXQsIGpldHp0IGJpbiBpY2ggZW5kbGljaCBhdWYgZGVtIEJhbGtvbi4gRGFubicKICAnc29sbHRlIGljaCBqZXR6dCBtYWwgc2NobGV1bmlnc3QgbWl0IGRlbSBBbnRpLUVyZGJlYmVuemF1YmVyIGJlZ2lubmVuLicKICAnSWNoIGJpdHRlIHVtIGFldXNzZXJzdGUgUnVoZSwgamVkZSBTdG9lcnVuZyBrb2VubnRlIHZlcmhhZW5nbmlzdm9sbAonc2VpbiEnCkhpbGJlcnQgemllaHQgc2VpbmVuIFphdWJlcnN0YWIgaGVydm9yLiBFciBsZWd0IHNlaW5lIFN0aXJuIGluIEZhbHRlbiB1bmQKa29uemVudHJpZXJ0IHNpY2guCgpEdSBydWZzdDogU3Bpbm5lciEKCkhpbGJlcnQgYmVnaW5udCBsYW5nc2FtIGltIEtyZWlzIHp1IGdlaGVuLiBHbGVpY2h6ZWl0aWcgbWFsdCBlciBtaXQgc2VpbmVtClphdWJlcnN0YWIgbWFnaXNjaGUgWmVpY2hlbiBpbiBkaWUgTHVmdC4gRXIgbXVybWVsdCB1bnZlcnN0YWVuZGxpY2hlIFdvcnRlCnZvciBzaWNoIGhpbi4KCiAnU2Nobmlyend1cnogbW1nIHJhYWFoLi4uLiBGaXR6bGlwdXR6bGkgbWFqYW52YSAuLi5IT08nCgpEdSBlcndhcnRlc3QgamV0enQgaXJnZW5kZWluIGdyb3NzZXMgRXJlaWduaXMsIEhpbGJlcnQgb2ZmZW5zaWNodGxpY2ggYXVjaC4KTmljaHRzIGdlc2NoaWVodC4KRXMgZ2VzY2hpZWh0IGltbWVyIG5vY2ggbmljaHRzLgoKU29sbCB3b2hsIG5lIFdhcm51bmcgc2Vpbi4uLi5vZGEgc28uLi4uV0VOTiBNQUdJRVIgRVRXQVMgU0FHRU4gSEFUIE1BTgpHRUZBRUxMSUdTVCBEQVJBVUYgWlUgSE9FUkVOISEhISEKCkRBUyB3YXIgamV0enQgZGVyIEpva2UgaW4gZGVyIEdlc2NoaWNodGUuLi4uO1AKCidzIFNoYWhlcmwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKFphcGhvYiwgIDkuIE9rdCAxOTk3LCAxOTowOTozNyk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTg3NjQwODkxNyByZz1zY2htYXJybgp+IyEgdGlkPTg3NjQwODkxNwpKYWphLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphYWFhYWFhYWFhYWFhYWFoamEhIChOYWlyb2xmLCAgOS4gT2t0IDE5OTcsIDIxOjM0OjQxKToKYWggamV0enQgamEgaWNoIHd1c3N0IHNjaG9uIGltbWVyOgoKPiBUdWFyZWcgdGVpbHQgRGlyIG1pdDogdWZmIC4uLi4uLiBzbyBsYW5nIGhhYiBpY2gKVHVhcmVnIHRlaWx0IERpciBtaXQ6IHNjaG9uIGxhbmdlIG5pbW1lciBtaXQgbmVtIG1hbm4gKmtpY2hlcioKCm9obmUgV29ydGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhYWFhYWFhYWFhYWFhYWFoamEhIChBbmF0b2wsICA5LiBPa3QgMTk5NywgMjE6Mzc6MTEpOgp+IyEgcm49TmFpcm9sZiBydD04NzY0MjU2ODEgcmc9c2NobWFycm4KfiMhIHRpZD04NzY0MjU2ODEKRGVpbiBGcmV1bmQgUmluZ29yIHRlaWx0IERpciBtaXQ6IHBmdWksIFR1aSBzcGFubnQgbWlyIEhhcmV0aCBhdXM/CgpUamEsIEZyZXVuZGUuLi4KQW5hdG9sIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWFhYWFhYWFhYWFhYWhqYSBkaWUgMi4gKFNoYXJpYSwgIDkuIE9rdCAxOTk3LCAyMTo1NDozNSk6CktleSBkZW5rdCAgIC4gbyBPICh1bmQgZnVlcm4gdmF0ZXIgLi4uLiBobW0gY2hhbXB1cyA9OykpCktleSBzYWd0OiB1bmQgZGFubiBoYWx0ZSBpY2ggdW0gZGVpbmUgaGFuZCBhbgoKCgp3aXJrbGljaCBvaG5lIHdvcnRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJldWRzY2hlciBWZXJ0aXBwZXIuIChSYWZmaSwgMTAuIE9rdCAxOTk3LCAwMToxNDoyMSk6CiQgcnRlbG5ldCBtZy5tdWVuemVuLmRlCm1nLm11ZW56ZW4uZGU6IFVua25vd24gaG9zdAokIHJ0ZWxuZXQgbWcubXVkLmRlClRyeWluZyAxMjguMTc2LjE4Mi43MC4uLgpDb25uZWN0ZWQgdG8gbWcudW5pLW11ZW5zdGVyLmRlLgoKCjopCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpubyBjb21tZW50IChUZWRkeSwgMTAuIE9rdCAxOTk3LCAwMjoxNzo1NSk6CkRpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgo7TXVybWVsICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKRmVpZ2xpbmcgOy0pCgpUZWRkeS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBXYWhyaGVpdCB1ZWJlciBNZXJlZGl0aCBCcm9va3MgKE1lc2Fyb24sIDEwLiBPa3QgMTk5NywgMTQ6Mzc6MzcpOgpXYWhybGljaCwgaWNoIHNjaHJlaWJlIEV1Y2g6IEhldXRlIGJlaW0gUmFkaW9ob2VyZW4ga2FtIG1pciBkaWUgZ3Jvc3NlCkVybGV1Y2h0dW5nLiBJY2ggaG9lcnRlIGRhcyBMaWVkICJCaXRjaCIgdm9uIE1lcmVkaXRoIEJyb29rcywgZGFzIHdvaGwKdmllbGVuIHZvbiBFdWNoIGVpbiBCZWdyaWZmIHNlaW4gd2lyZC4gVW50ZXIgYW5kZXJlbSBzaW5ndCBzaWUgZG9ydDoKIkknbSBhIGNoaWxkLCBJJ20gYSBtb3RoZXIiLgoKRG9jaCwgbGllYmUgRnJldW5kSW5uZW4sIGljaCBzYWdlIEV1Y2g6IERhcyBpc3QgdWViZXJoYXVwdCBuaWNodCB3YWhyISBBbHMKaWNoIGdlbmF1IGRhcmF1ZiBhY2h0IGdhYiwgV0FTIHNpZSBkYSBzaW5ndCwgaG9lcnRlIGljaCBlaW4gZWluZGV1dGlnZXM6CiJJJ20gYSBjaGlsZCwgSSdtIGEgTVVEREVSIiEKCkxpZWJlIEdsYXViZW5zbWl0Z2xpZWRlcklubmVuIGRlcyBNdWRkZW5zOiBEaWVzIGlzdCBlaW4gWmVpY2hlbiEgSWNoIHNhZ2UKRXVjaDogTWVyZWRpdGggQnJvb2tzIGlzdCBkaWUgZXJzdGUgcG9wdWxhZXJlIE11ZGRlcmluLCBkaWUgaWhyZSBOZWlndW5nCm9lZmZlbnRsaWNoIHp1Z2lidCEKCkFjaHRldCBkYXMgbmFlY2hzdGUgTWFsIGRhcmF1ZjogU2llIHNpbmd0J3Mgd2lya2xpY2guIDotKQoKTWVzYXJvbiwgWmVuLU1laXN0ZXIgZGVyIDQyLiBTdHVmZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBXYWhyaGVpdCB1ZWJlciBNZXJlZGl0aCBCcm9va3MgKEJvaW5nLCAxMC4gT2t0IDE5OTcsIDE0OjQ3OjMxKToKfiMhIHJuPU1lc2Fyb24gcnQ9ODc2NDg3MDU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc2NDg3MDU3ClNjaG9uIGxhbmcgdm9yIGlociAoMTk3OCkgaGF0IFBldGVyIEdhYnJpZWwgc2VpbmUgTmVpZ3VuZyBpbiBzZWluZW0KTGllZCAnRmxvdHNhbSBhbmQgSmV0c2FtJyB0cmVmZmVuZCBjaGFyYWt0ZXJpc2llcnQ6CiAgRG9pbmcgbm90aGluZywgc3R1Y2sgaW4gdGhlIG11ZAogIEp1c3QgcHVtcGluZyB0aGUgYmxvb2QKCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyYXVlbiAoQW5hY3Jpb24sIDExLiBPa3QgMTk5NywgMDI6NDE6NTApOgpbWmF1YmVyZXI6QW5hY3Jpb25dIGFiZXIgaW0gTUcgZ2lidCdzIGRvY2ggZ2FyIGtlaW5lIEZyYXVlbi4uLiA7KQo+IFtaYXViZXJlcjpab3Jyb10gd29obCB3YWhyCltaYXViZXJlcjpEYXJrZW5dIHdlaXNzIG5pY2h0LCBkZXIgdGFnIGlzdCBqYSBub2NoIGp1bmcgOikKW1phdWJlcmVyOk11cm1lbF0gZGllIGJlc3RlbiBmcmF1ZW4gc2luZCBub2NoIGltbWVyIG1hZW5uZXIgOikKW1phdWJlcmVyOkRhcmtlbl0gZGllIGJlc3RlbiBrb2VjaGUgYXVjaCA6KQpbWmF1YmVyZXI6QW5hY3Jpb24gbGFjaHQgTXVybWVsIGFuIDopXQo+IFtaYXViZXJlcjpNdXJtZWxdIGRpZSBiZXN0ZW4gZGVua2VyIHNvd2llc28KW1phdWJlcmVyOkFuYWNyaW9uIGRlbmt0IC4gbyBPIChlcyBrYW5uIGtlaW5lIGRhIHNlaW4sIHNvbnN0IGthZW1lIHdpZGVyc3BydWNoCiAgICAgICAgICAuLi4pXQo+IFtNb2VyZGVyOkdlaXN0IEFuYWNyaW9uc10gRGljaCBtZXJrIGljaCBtaXIsIEtpbGFyIQoKcHJvbXB0ZSBSZWFrdGlvbiA7KQoKQW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZhc3QgaW52aXMgKEVpc2ksIDExLiBPa3QgMTk5NywgMTk6Mjc6MzEpOgpKZW1hbmQga3VzY2hlbHQgc2ljaCBlbnRzcGFubnQgaW4gZGllIGJyZWl0ZW4gUHJhbmtlbiBkZXMgU2FuZHRpZ2VycyB1bmQKc2NobGFlZnQgZWluLgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgUGFkcmVpYy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaGl6b3BocmVuIG9kZXIgd2FzPyAoRWdvbWlyLCAxMS4gT2t0IDE5OTcsIDIwOjUyOjM2KToKW01vZXJkZXI6R2Vpc3QgZWluZXMgSHlkcmFrb3Bmc10gWGFuZCwgZGllIEh5ZHJhIGlzdCBtaXIgbGllYmVyLi4uCgpFZ29taXIsIGtpY2hlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZXJrd3VlcmRpZyAoSGVsdmEsIDEyLiBPa3QgMTk5NywgMTI6MTU6NDUpOgpEdSBlcnJlaWNoc3QgZGVuIEhhZmVuIHZvbiBQb3J0IFZhaW4uIFphaGxyZWljaGUgRmlzY2hlcmJvb3RlIHNpbmQgaGllcgp6dSBzZWhlbi4gTmFjaCBXZXN0ZW4gZnVlaHJ0IGRpZSBIYWZlbnN0cmFzc2UgaW4gZGllIFN0YWR0IGhpbmF1Zi4KSW0gTm9yZGVuIGlzdCBlaW4gc2Nob2VuZXIgU3RyYW5kIHp1IHNlaGVuLiBBdXNzZXJkZW0ga2FubnN0IER1IGhpZXIKYXVjaCBub2NoIGVpbmUgZ3Jvc3NlIFRhZmVsIHNlaGVuLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb2Jlbiwgc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KPiB1bnRlbgpEaWUgTHVrZSBpc3QgZ2VzY2hsb3NzZW4uCj4gdSBsdWtlClNvd2FzIHNpZWhzdCBEdSBkYSBuaWNodCEKPiB1IGx1a2UKU293YXMgc2llaHN0IER1IGRhIG5pY2h0IQo+IHVudGVuCgpBbHNvIGljaCBmaW5kZSBkYXMgbWVya3d1ZXJkaWcuLi5laW4gTHVrZW5nZWlzdCBvZGVyIHdhcyB3YXIgZGFzID8gRWluIEVjaG8KZWluZXIgbGFlbmdzdCB3ZWdwcm9ncmFtbWllcnRlbiBhcm1lbiB2ZXJzY2h3dW5kZW5lbiBMdWtlPwpIZWx2YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbnVyIHp3ZWl0ZXIgOiggKEFsYm9pbiwgMTMuIE9rdCAxOTk3LCAxNDoyNToxMSk6Cm5hY2ggZWluZW0gZGVyIHVuemFlaGxpZ2VuIHJlYm9vdHM6CiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNb24sIDEzLiBPa3QgMTk5NywgMTQ6MjI6NTQgKDMgVGVpbG5laG1lcikKCkxvZ29uLi4uLi4uLi4uLi5zICBQYW50aGVyLi4uLi4uLi4ueiAgQWxib2luLi4uLi4uLi4uLm0KCmZyYWdlOiB3YW5uIGtvbW10IGRlciBuYWVjaHN0ZSBSZWJvb3Q/KGF1YSBuaWNodCBoYXVlbikKQWxib2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWVya3d1ZXJkaWcgKFFpdGVzcywgMTMuIE9rdCAxOTk3LCAxNjo1MDozMSk6Cn4jISBybj1IZWx2YSBydD04NzY2NTEzNDUgcmc9c2NobWFycm4KfiMhIHRpZD04NzY2NTEzNDUKaXMgemllbWxpY2ggZGFlbWxpY2gsIGFiZXIgZGllIGx1a2UgaXN0IG51ciBkYSwgd2VubiBkaWUgam9sbGUgYXVjaCBkYSBpcy4gCmRpZSBsdWtlIGlzdCBuYWVtbGljaCBhdWYgZGVyIGpvbGxlIDopCgpRSSoqIG11c3N0ZSBkYXMgbG9zd2VyZGVuLCB1bmQgZmluZGV0IGVzIGF1Y2ggemllbWxpY2ggc2F1IGRvb2YgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBlaW4gZWluZXIgLnNpZzogKFllbmRpLCAxMy4gT2t0IDE5OTcsIDIwOjE5OjQ5KToKCiJZb3VyIHBpdGlmdWwgd2VhcG9ucyBhcmUgbm8gbWF0Y2ggZm9yIG91cnMhIFBlb3BsZSBvZiBNYXJzLCBzdXJyZW5kZXIhIiAKIlVoLCB0aGlzIGlzbid0IE1hcnMsIHRoaXMgaXMgRWFydGguIiAKIkVhcnRoPyBFYXJ0aC13aXRoLW51Y2xlYXItd2VhcG9ucyBFYXJ0aD8iCiJZZWFoLiIKIkZyaWVuZCEiCgoKT0ssIGljaCBiaW4ga2VpbiBncm9zc2VyIEZyZXVuZCB2b24gQXRvbXdhZmZlbiwgYWJlciBfZGVuXyBmYW5kIGljaCBkcm9sbGlnLgpLYW5uIG1pciBpcmdlbndlciB2ZXJyYXRlbiwgYXVzIHdlbGNoZW0gRmlsbSAod2VubiB1ZWJlcmhhdXB0KSBkZXIgc3RhbW10PwoKWWVuZGkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCwgZWluIGVpbmVyIC5zaWc6IChDYXVubywgMTQuIE9rdCAxOTk3LCAxMjozMjoxOSk6Cn4jISBybj1ZZW5kaSBydD04NzY3NjY3ODkgcmc9c2NobWFycm4KfiMhIHRpZD04NzY3NjY3ODkKRGFzIHNjaGVpbnQgbWlyIGVoZXIgZWluIFppdGF0IGF1cyBlaW5lbSBCdWNoIHp1IHNlaW4uCk5hY2ggZWluZW0gRmlsbSBzaWVodCBtaXIgZGFzIG5pY2h0IGF1cywgYXVzc2VyZGVtIGRlbmtlIGljaCwgREVOIG11ZXNzdGUgaWNoCmtlbm5lbi4KQml0dGUgZGllIEFudHdvcnQgaW4gZGVyIE1QQSBwb3N0ZW4sIG1pY2ggaW50ZXJlc3NpZXJ0cyBhdWNoLiBLb2VubnRlIGVzIGV2dGwuCnZvbiBEb3VnbGFzIEFkYW1zIHNlaW4/CgpDLiBObwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbGluZSwgMTQuIE9rdCAxOTk3LCAxNTo0MTo1OCk6CgpbQWxsZ2VtZWluOkthcm9sXSBzbyBsYW5nc2FtIHdpcmQgZXMgemVpdCBoaWVyIGF1cyBkZW0gc3VtcGYgenUga29tbWVuLCBhYmVyCltBbGxnZW1laW46S2Fyb2xdIHdpZQpbVG9kOkxhcnNdIEVpbiBTdW1wZiBoYXQgZ2VyYWRlIEthcm9sIHVtZ2VicmFjaHQuCltUb2Q6RWluIFN1bXBmXSBLYXJvbCBpc3QgaW0gU3VtcGYgdmVyc3Vua2VuLgpbQmVpbGVpZDpCaXJkeV0gYmVpbGVpZAotYmVpbGVpZCBEYXMgbmVubnRbQmVpbGVpZDpUdU5peEd1dF0gQmVpbGVpZC4uLgogbWFuIGRhbm4gdmVyW0FsbGdlbWVpbjpOaWV0enNjaGVdIHNvIGdlaHQncy4uLgpzdW1wZmVuISA6KApbQmVpbGVpZDpBbGluZV0gRGFzIG5lbm50IG1hbiBkYW5uIHZlcnN1bXBmZW4hIDooCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVsaWNoLCBlaW4gZWluZXIgLnNpZzogKFJvY2h1cywgMTQuIE9rdCAxOTk3LCAxNjoxNzoxMyk6Cn4jISBybj1DYXVubyBydD04NzY4MjUxMzkgcmc9c2NobWFycm4KfiMhIHRpZD04NzY3NjY3ODkKSWNoIHdlaXNzIG5pY2h0LCB3b2hlciBkYXMgaXN0LCBhYmVyIGVzIHN0YW1tdCBkZWZpbml0aXYgTklDSFQKdm9uIERvdWdsYXMgQWRhbXMgKGRlbiBBbmhhbHRlciBrYW5uIGljaCBzY2hvbiBmYXN0IGF1c3dlbmRpZyB6aXRpZXJlbgooYmlzIGF1ZiBkZW4gbWlzc3JhdGVuZW4gNS4gVGVpbCkgdW5kIHp1IERpcmsgR2VudGx5IHBhc3N0IGRhcyBaaXRhdCBuaWNodC4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXVsaWNoLCBlaW4gZWluZXIgLnNpZzogKFllbmRpLCAxNC4gT2t0IDE5OTcsIDE2OjIxOjU2KToKfiMhIHJuPVJvY2h1cyBydD04NzY4Mzg2MzMgcmc9c2NobWFycm4KfiMhIHRpZD04NzY3NjY3ODkKClNjaGVpbnQgYXVzIGVpbmVtIEZpbG0genUgc3RhbW1lbiwgc29uc3QgZ2FlYmUgZXMgdmVybXV0bGljaCBtZWhyIEJlaXRleHQKaW0gRGlhbG9nLiBWZXJtdXRsaWNoIGlyZ2VuZGVpbiB0cmFzaGlnZXIgIkdpYW50IE11dGFudCBLaWxsZXIgRnJlbmNoIEZyaWVzCmZyb20gT3V0ZXIgU3BhY2UiLUF1Zmd1c3MgYXVzIGRlbiA4MGVybi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBZWguLi4uLiAoQ2F0d2VhemxlLCAxNC4gT2t0IDE5OTcsIDE5OjQ2OjIwKToKfiMhIG9uPUthbGkgb3Q9ODc2ODMwNDM0IG9nPWFsbGdlbWVpbmVzCk51ciwgZGFtaXQgaGllciBtYWwgd2FzIGFuZGVyZXMgKGF1c3NlciB6d2VpdGllbWFya2llcnVuZyB1bmQgZ3J1ZnRpZXMgOy0pCnN0ZWh0IHVuZCBHcmltbWJvcm4gd2llZGVyIGV0d2FzIHp1bSBWZXJsZWdlbiBoYXQgOy0pLCBzY2hyZWliIGljaCBkZW4gQXJ0aWtlbApoaWVyLgoKV2FzIGljaCBzYWdlbiB3aWxsOiBJY2ggd29sbHRlIG51ciBtaXR0ZWlsZW4sIGRhc3MgaWNoIG1laW5lIEhhYXJlCmFiZ2VzY2huaXR0ZW4gaGJlLiBHYW56ISBWb2VsbGlnISBLb21wbGV0dCEKV2VuIGVzIGJlcnVlaHJlbiBzb2xsdGUsIGRlciBzZWkgYmVydWVocnQsIHdlbiBkaWUgU2FjaGUgbmNpaHQgZWlubWFsIGp1Y2t0LApkZXIganVja3Qgc2ljaCBoYWx0IG5pY2h0IHVuZCB1ZWJlcmxpZXN0IGRlbiBVbnNpbm4gaDhpZXIKdW5kIHdlbnMgZXJzdGF1bnQsIGRlciBzY2hyZWliZSBtaXIgZWluZSBtYWlsISA7LSkKS2FsaQpQUzogRGVyIGdlaG9lcnQgZWluZGV1dGlnIG5hY2ggU2NobWFycm4hIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFlaC4uLi4uIChDYXR3ZWF6bGUsIDE0LiBPa3QgMTk5NywgMTk6NDY6MjIpOgp+IyEgb249Rnl0IG90PTg3NjgzMDk4OCBvZz1hbGxnZW1laW5lcwp+IyEgcm49S2FsaSBydD04NzY4MzA0MzQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04NzY4MzA0MzQKClNvd2VpdCBpY2ggZGFzIG1pdCBtZWluZW0gdm9tIEFsdGVyIGdldHJ1ZWJ0ZW4gQmxpY2sgZmVzdHN0ZWxsZW4ga29ubnRlLApzaW5kIEthbGlzIEhhYXJlIGltbWVyIG5vY2ggc2NodWx0ZXJsYW5nLCBhbHNvIGRhcywgd2FzIG1hbiBsYW5kbGFldWZpZwpub2NoIGFscyAnbGFuZycgYmV6ZWljaG5ldC4KCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWVoLi4uLi4gKENhdHdlYXpsZSwgMTQuIE9rdCAxOTk3LCAxOTo0NjoyMyk6Cn4jISBvbj1Cb2luZyBvdD04NzY4MzEzNDYgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUZ5dCBydD04NzY4MzA5ODggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04NzY4MzA0MzQKT2NoIC4uLiB1bmQgaWNoIGhhYiBtaXIgc2Nob24gS2FsaSBtaXQgR2xhdHplIHZvcmdlc3RlbGx0IC4uLiBOYWphIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFlaC4uLi4uIChDYXR3ZWF6bGUsIDE0LiBPa3QgMTk5NywgMTk6NDY6MjQpOgp+IyEgb249WWVuZGkgb3Q9ODc2ODM4NjIzIG9nPWFsbGdlbWVpbmVzCn4jISBybj1Cb2luZyBydD04NzY4MzEzNDYgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04NzY4MzA0MzQKCiJLYWhsaSIgaGFsdC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFlaC4uLiAoQ2F0d2VhemxlLCAxNC4gT2t0IDE5OTcsIDE5OjQ2OjI1KToKfiMhIG9uPUthbGkgb3Q9ODc2ODM4ODcwIG9nPWFsbGdlbWVpbmVzCkZhc3QgaGFldHRlIGljaCBlcyB2ZXJnZXNzZW46IFdlbm4gc2ljaCBiZWkgaXJnZW5kd2VtIGRpZSBIYWFyZSwgbnVqYSwgZXR3YXMKdmVyZHVlbm5lbiAob2RlciB2ZXJkdWVubmlzaWVyZW4gOy0pIHNvbGx0ZW4sIGRhbm4gb3BmZXIgaWNoIG5hdHVlcmxpY2ggZ2VybmUKZGVuIHZlcmJsaWViZW4gUkVzdCBkZXMgWm9wZmVzIGZ1ZXIgZWluIGt1ZW5zdGxpY2hlcyBIYWFydGVpbC4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWVoLi4uIChDYXR3ZWF6bGUsIDE0LiBPa3QgMTk5NywgMTk6NDY6MjYpOgp+IyEgb249WWVuZGkgb3Q9ODc2ODM4OTU3IG9nPWFsbGdlbWVpbmVzCn4jISBybj1LYWxpIHJ0PTg3NjgzODg3MCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg3NjgzODg3MAoKSGViIHNpZSBhdWYsIGRhcyBrYW5uIG5vY2ggc2VociBudWV0emxpY2ggd2VyZGVuLCBpbiBlaW4gcGFhciBKYWVocmNoZW4uLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBZWguLi4uIChDYXR3ZWF6bGUsIDE0LiBPa3QgMTk5NywgMTk6NDY6MjcpOgp+IyEgb249S2FsaSBvdD04NzY4NDY4MzMgb2c9YWxsZ2VtZWluZXMKUHBwcGgsIGluIDMgSmFlaHJjaGVuIHNpbmQgc2Ugd2llZGVyIHNvIGxhbmcuIFdlbm4gaWNoIGRhcyBlaW4gcGFhciBNYWwgbWFjaGUsCmthbm4gaWNoIG1pciBlaW5lIE1hdHJhdHplIGRhbWl0IGF1c3N0b3BmZW4gLiBTcGFydCBHZWxkIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFlaC4uLi4uIChMdXB1cywgMTQuIE9rdCAxOTk3LCAyMToxOToxMCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9ODc2ODUxMTgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc2ODUxMTgwCkNhdHdlYXpsZSEgSGVpc3N0IER1IGpldHp0IEdyaW1tYm9ybiBvZGVyIHdpZT8KCkx1cHVzLCBlbXBvZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV296dSBaYXViZXJlciBuaWNodCBhbGxlcyBndXQgc2luZC4uIChaZXBoeXIsIDE1LiBPa3QgMTk5NywgMTA6Mzc6MTcpOgpEdSBoYXN0IGpldHp0IDIxOCBMZWJlbnNwdW5rdGUgdW5kIDIxNSBNYWdpZXB1bmt0ZS4KU2hheWEgc2NodWV0dGVsdCBldHdhcyBhdXMgZGVtIEFlcm1lbC4KU2hheWEgbGFlc3N0IGRlbiBSZXNldCBmYWxsZW4uCkR1IGhhc3QgamV0enQgMjE4IExlYmVuc3B1bmt0ZSB1bmQgMjE2IE1hZ2llcHVua3RlLgpFcmljIHNwcmluZ3QgaGVyZWluLgpFaW5lIEtyYWVoZSBmbGF0dGVydCBoZXJlaW4uCgpaZXBoeXIgKGpldHp0IGltbWVyIG1pdCBaYXViZXJlciBpbSBIYW5kZ2VwYWVjayA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBZWguLi4uLiAoQ2F0d2VhemxlLCAxNS4gT2t0IDE5OTcsIDExOjIxOjU5KToKfiMhIHJuPUx1cHVzIHJ0PTg3Njg1Njc1MCByZz1zY2htYXJybgp+IyEgdGlkPTg3Njg1MTE4MApOb2UsIGFiZXIgaWNoIGZhbmQgZGVuIHRocmVhZCBzbyB0b2xsLCBpY2ggd29sbHRlIGRlbm4gdW5iZWRpbmd0IG5vY2gKZWluIHp3ZWl0ZXMgTWFsIGxlc2VuIC4uLi4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNZXJrd3VlcmRpZyAoSGVsdmEsIDE1LiBPa3QgMTk5NywgMTQ6MDE6NTEpOgp+IyEgcm49UWl0ZXNzIHJ0PTg3Njc1NDIzMSByZz1zY2htYXJybgp+IyEgdGlkPTg3NjY1MTM0NQpTY2hvZW4sIApkc2EgaXN0IHdlbmlnc3RlbnMgZWluZSBFcmtsYWVydW5nLiBNZWluIFByb2JsZW0gd2FyLCBkYXNzIGRpZSBKb2xsZSB3b2hsCmdlcmFkZSBhYmZ1aHIuLi5kZXN3ZWdlbiB3YXIgZGllIEx1a2UgbmFlbWxpY2ggcGxvZXR6bGljaCBuaWNodCBtZWhyIGRhLCBkYXMKZmFuZCBpY2ggaGFsdCBlaW4gd2VuaWcgdmVyd2lycmVuZC4gRGVzd2VnZW4gaGFiZSBpY2ggZXMgamEgYXVjaCBuYWNoIHNjaG1hcnJuCmdlc2NoaWNrdC4KSGVsdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCj8/PyAoTWluZGJsYWRlLCAxNS4gT2t0IDE5OTcsIDIxOjUzOjM2KToKIEtsb2lyZW4gRWlzZW5oZWxtIHNhZ3Q6IEZ1ZXIgRGljaCBrb21tdCBudXIgZWluIFRydmVzIGFscyBBenViaSBpbiBGcmFnZToKS2xvaXJlbiBFaXNlbmhlbG0gc2FndDogQmFyYWsuCioqKiogIExQIDIwNyAgIE1QIDIxMApEZWluIEZyZXVuZCBTbWVydCBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCkJhcmFrIGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBLb2Vsbi4KUGFzc2l2IHNlaXQ6IDAwOjIzOjI1CkVpbmdlbG9nZ3Qgc2VpdDogTWl0LCAxNS4gT2t0IDE5OTcsIDIxOjI3OjU1ClZvbGxlciBOYW1lOiBCYXJhayBrYW5uIG1vcmdlbiBuaXggZWlua2F1ZmVuClJhc3NlOiBNZW5zY2gsICBHaWxkZTogS2FlbXBmZXIsICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKQWx0ZXI6IDQ2ZCAwNzoxNToxMCwgICBNYWdpZXJsZXZlbDogMjEKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogdm9yIGRlbSAxMC4gTm92IDE5OTUKQmFyYWsgaXN0IFRlc3RzcGllbGVyIChCYXJhaykuCkJpc2hlciBiZXJlaXRzIDIgbWFsIGdlc3RvcmJlbgpQcm9qZWt0OiBlcHMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJyZXR0IHZvcm0gS29wZiAoQW5hdG9sLCAxNi4gT2t0IDE5OTcsIDEwOjI0OjU3KToKfiMhIG9uPUFuYXRvbCBvdD04NzY5OTAyODUgb2c9YW56ZWlnZW4KfiMhIHJuPUNhdHdlYXpsZSBydD04NzY5OTAyNTcgcmc9YW56ZWlnZW4KfiMhIHRpZD04NzY5ODAzNjkKSWNoIHdlcmRlIERlaW5lbiBQcnVlZmVybiBlaW5lbiBUaXAgZ2ViZW4gbXVlc3NlbiwgQ2F0d2VhemxlLi4uCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIGVpbiB6dWZhbGwgLi4uIChLb2JheWFzaGksIDE2LiBPa3QgMTk5NywgMTA6NDk6MzUpOgpGZXVlcndlaHIgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KW1RvZDpMYXJzXSBFaW4gRmV1ZXJzY2hlbWVuIGhhdCBnZXJhZGUgUHlybyB1bWdlYnJhY2h0LgoKCmtvYmF5YXNoaSAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTbyBlaW4genVmYWxsIC4uLiAoUGFyYWNlbHN1cywgMTYuIE9rdCAxOTk3LCAxMToxNTo0MSk6Cn4jISBybj1Lb2JheWFzaGkgcnQ9ODc2OTkxNzc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc2OTkxNzc1ClNvIHNvLCBGZXVlcndlaHIsIER1IGJpc3QgYWxzbyBTY2h1bGQgYW0gVG9kIG1laW5lciBGcmF1Li4uCk5hIHdhcnRlLCBrb21tIER1IG5vY2htYWwgbWl0IGVpbmVyIGd1dGVuIFdhZmZlL1J1ZXN0dW5nIHp1IG1pciEgOykKClBhcmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXMgZWluZW4gRnJldWQuLi4gKEFuYXRvbCwgMTYuIE9rdCAxOTk3LCAxNTozMzoxMik6CgpbQWxsZ2VtZWluOkphc3Blcl0gb2ggVGFyb24ge2RlfTogYmVpbSBiYWdnZXJuIG5lIGJvbWJlIGdlZnVuZGVuCltBbGxnZW1laW46SmFzcGVyXSAgaWNoIHd1ZW5zY2h0ZSBkYXMgcGFzc2llcnRlIG1pciBhdWNoIG1hbCA7UAoKLi4uIGlzdCBkZXMgYW5kZXJlbiBMZWlkIDspCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpwcml2YXRzcGhhZXJlIChRaXRlc3MsIDE2LiBPa3QgMTk5NywgMTk6MTY6NTApOgoKc29zbywgamV0enQgc2NoZWluZW4gc2Nob24gZGllIFNlaGVyIHNub29wZW4genUga29lbm5lbi4uLiA6CgoKWy4uLl1Qcml2YXRnZXNwcmFlY2hbLi4uXQogRHUgbGFlY2hlbHN0IGxpZWIuCiA+IFtTZWhlcjpCbHVlbWVsIGdyaW5zdC5dCgoKU09PT09TT09PT09PT08uLi4KCgpRSSoqIGZsdWVzdGVydCBkZW1uYWVjaHN0IG51ciBub2NoIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJtZSBOUENzLi4uIChTaWx2YW5hLCAxNy4gT2t0IDE5OTcsIDA4OjA5OjQ5KToKV29uYWNoIE5QQ3MgaW1tZXIgbWFsIHdpZWRlciBnZWZyYWd0IHdlcmRlbiBpc3Qgc2Nob24gZXJzdGF1bmxpY2guCkJlaXNwaWVsPyBHbGlmb3VyIGRlciBTdGVpbmJlaXNzZXJmdWVocmVyIHd1cmRlIGdlZnJhZ3QgbmFjaDoKCmhpbGZlIChvaywga2FubiBpY2ggdmVyc3RlaGVuLCBhYmVyIGdlaHRzIG5pY2ggX2V0d2FzXyBnZW5hdWVyPykKc2NobmVld2l0Y2hlbiAoTnVyIHdlaWwgZXIgZWluIFp3ZXJnIGlzdD8pCmF1c2dhbmcgKEVyIHN0ZWh0IGRvY2ggZHJhdXNzZW4uLi4/KQppbmZvcm1hdGlvbmVuIChEYXMgZXJpbm5lcnQgbWljaCBhbiBlaW5lbiBFbGYgYWxzIHVuc2VyZXIgUm9sbGVuc3BpZWxncnVwcGUsCiAgICAgICAgICAgICAgIGRlciBpcmdlbmR3YW5uIGVudG5lcnZ0IHp1IGVpbmVtIE5QQyBtZWludGU6IEdJQiBJTkZPUyEgKQoKTmFqYSwgZGVyIFp3ZXJnIHdlaXNzIGpldHp0IG1laHIuIEFsc28gYml0dGUgYWxsZSBUeXBvdHJldG1pbmVuIGVpbm1hbCB6dW0KQXVzZnJhZ2VuIC0gZGFuYWNoIHdpcmQgbmFjaGdlYmVzc2VydCwgZmFsbHMgbm9ldGlnLgoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiAnbGljaHQnIHVuZCBkZXIgVG9kIChBbmF0b2wsIDE3LiBPa3QgMTk5NywgMTA6MTk6NTApOgp+IyEgb249QW5hdG9sIG90PTg3NzA3NjM4NiBvZz1hbGxnZW1laW5lcwp+IyEgcm49TW9yZ290aCBydD04NzcwNzYzMDAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04NzcwMTQxNDMKSWNoIGJlendlaWZsZSwgZGFzcyBkaWUgRXJmYWhydW5nc3B1bmt0ZSwgZGllIG1hbiBpbiBkZXIgRnJpZWRob2ZzcXVlc3QKKnZpZWxsZWljaHQqIGJyYXVjaHQsIGlyZ2VuZGVpbiBMZXZlbC0xNS1TcGllbGVyIG5pY2h0IGF1ZmJyaW5nZW4ga2FubgotIGVzIHNlaSBkZW5uLCBlciBpc3QgbWl0IEhhcmFraXJpIHNlZWxlbnZlcndhbmR0LiA7KQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogJ2xpY2h0JyB1bmQgZGVyIFRvZCAoV2FyZ29uLCAxNy4gT2t0IDE5OTcsIDEwOjM2OjI0KToKfiMhIHJuPUFuYXRvbCBydD04NzcwNzYzOTAgcmc9c2NobWFycm4KfiMhIHRpZD04NzcwMTQxNDMKSGFyYWtpcmkgd2llIEhhcmEtS2V5LXJpPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogJ2xpY2h0JyB1bmQgZGVyIFRvZCAoS2V5LCAxNy4gT2t0IDE5OTcsIDE0OjU2OjEzKToKfiMhIHJuPVdhcmdvbiBydD04NzcwNzczODQgcmc9c2NobWFycm4KfiMhIHRpZD04NzcwMTQxNDMKUGZmIFVudGVyc3RlbGx1bmcgLCkgSWNoIGhhdHRlIGdlbnVnIGVwIGJlaSBkZXIgRnJpZWRob2ZzcXVlc3QgLikgT2Rlcj8gSG1tCnNjaG9uIHNvbGFuZ2UgaGVyIC4uLiAsKSBCcmF1Y2ggbWFuIGRhIHdlbGNoZT8gPTspCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6ICdsaWNodCcgdW5kIGRlciBUb2QgKE1vcmdvdGgsIDE3LiBPa3QgMTk5NywgMTQ6NTY6NTEpOgp+IyEgcm49S2V5IHJ0PTg3NzA5Mjk3MyByZz1zY2htYXJybgp+IyEgdGlkPTg3NzAxNDE0MwpEVSBIQVNUIFhQPz8/IFdlbGNoZXIgTWFnaWVyIGhhdCBEaXIgZGllIGRlbm4gZ2VzZXR6dCA/Pz8KTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkpVSFUhIChaYXBob2IsIDE3LiBPa3QgMTk5NywgMTk6MTE6MzcpOgpOZXVsaWNoOgpbQWxsZ2VtZWluOlphcGhvYl0gSkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEKW0FiZW50ZXVlcjo8UXVlc3Q+XSBaYXBob2IgaGF0IGdlcmFkZSBlaW4gQWJlbnRldWVyIGJlc3RhbmRlbjogSGlsZiBkZW0gTWFubgpbQWJlbnRldWVyOjxRdWVzdD5dIGltIFNjaG5lZQoKTnVyIHNvLgpaYXBob2IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmpvLCBpY2ggYmluIHdpZWRlciBkYSEgKEFzbW9kaXMsIDE4LiBPa3QgMTk5NywgMjE6NTU6MjgpOgpTdGluZyBydWVscHN0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgU3RpbmcuClN0aW5nIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV29sbHQgaWhyIGRpZSBXYWhyaGVpdCBob2VyZW4/IChBbmF0b2wsIDE4LiBPa3QgMTk5NywgMjI6MDk6MDcpOgoiWy4uLl0gS1VMVC1UViBwcmFlc2VudGllcnQgZGllc21hbCB2aWVyIEZvbGdlbiBkZXIgZWluemlnYXJ0aWdlbiAiUGlwcGkKTGFuZ3N0cnVtcGYiLCBkaWUgenVzYW1tZW4gbWl0IGlocmVuIEZyZXVuZGVuIFRvbW15IHVuZCBBbm5pa2EgdS5hLiBQb2xpemlzdGVuCmFuIGRlciBOYXNlIGhlcnVtZnVlaHJ0LCBkZW4gInN0YWVya3N0ZW4gTWFubiBkZXIgV2VsdCIgYmVzaWVndCB1bmQgc2ljaCBhdWNoCm5pY2h0IHZvbiBQaXJhdGVuIGJlZWluZHJ1Y2tlbiBsYWVzc3QuIEltIFZvcnByb2dyYW1tIGlzdCBkZXIgdmVyd2lycmVuZGUKKG9kZXIgdmVyd2lycnRlPykgTWFnaWVyICJDYXR3ZWF6bGUiIHp1IHNlaGVuLiBbLi4uXSIKClZlcndpcnJlbmQsIGluZGVlZCA6KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggd3Vzc3RlIGVzIHNjaG9uIGltbWVyISAoQXNtb2RpcywgMTguIE9rdCAxOTk3LCAyMjoyMjo1Nik6Ci0+ZndlciBvcnQKCi4uLgpLZXkgLSBEYXMgR3JhdWVuIQouLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCBtb2VjaHRlIGF1Y2ggc28gc2NobmVsbCBrYWVtcGZlbiEgKEhhbmdvdmVyLCAxOS4gT2t0IDE5OTcsIDIyOjI1OjQwKToKCk1vaW4hCgpEZXIgT3JrIHNhZ3Q6IER1IGhhc3QgZ3V0ZSBTYWNoZW4sIGhlciBkYW1pdC4KRGVyIE9yayBzYWd0OiBEdSBoYXN0IGd1dGUgU2FjaGVuLCBoZXIgZGFtaXQuCkRlciBPcmsgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIHNlaHIgZ2VsdW5nZW5lbiBZb2tvLWdlcmkta2VhZ2UgYW4uCk1hdHJpeDogRWluIE9yayBpc3QgYWJzb2x1dCBmaXQuCkRlciBPcmsgcHVsdmVyaXNpZXJ0IERpY2guCkxlYmVuOiAxMjAgIE1hZ2llOiAyMTQgIFN0YWI6IDIwIAplaW4gT3JrIGtuaWV0IHNpY2ggaGluIHVuZCBiZWdpbm50IHdpZSB3aWxkIGVpbiBQZW50YWdyYW1tIGF1ZiBkZW4gQm9kZW4genUKbWFsZW4uIEVyIG1hY2h0IGRhYmVpIHNlbHRzYW1lIEJld2VndW5nZW4gbWl0IGRlbiBGaW5nZXJuIHVuZCBncnVtbWVsdAptYWdpc2NoZSBXb3J0ZS4KZWluIE9yayBodWVwZnQgdW0gZGFzIFBlbnRhZ3JhbW0gaGVydW0sIG11cm1lbHQgc2VsdHNhbWUgV29ydGUgdW5kCnplaWNobmV0IHNjaHd1bmd2b2xsIGVpbmVuIGdyb3NzZW4gS3JlaXMgYXVzIHZpZWxlbiBrbGVpbmVuIFJ1bmVuIGRhcnVtCmhlcnVtLCBpbW1lciB3aWVkZXIgdW50ZXJicm9jaGVuIHZvbiBzZWx0c2FtZW4gR2VzdGVuIHVuZCBXb3J0ZW4uCkVpbiBPcmsgdGFuenQgdW0gZGFzIFBlbnRhZ3JhbW0gaGVydW0sIHNwcmljaHQgbWFnaXNjaGUgV29ydGUgdW5kIGJlc2Nod29lcnQKZmluc3RlcmUgS3JhZWZ0ZS4gRGFubiBzY2hpZXNzdCBwbG9ldHpsaWNoIGVpbiBibHV0cm90ZXIgU3RyYWhsIGhpbmFiIHVuZApsYWVzc3QgZGVuIEJhbm5rcmVpcyBzY2hhdXJpZyBhdWZsZXVjaHRlbi4KRWluIE9yayBzdGVja3QgZWluIEtyaWVnc2JlaWwgenVydWVjay4KRWluIE9yayB6aWVodCBlaW5lbiBNZXRhbGxzY2hpbGQgYXVzLgpFaW4gT3JrIGZ1Y2h0ZWx0IHdpZSB3aWxkIG1pdCBkZW4gQXJtZW4gaGVydW0sIHN0b2Vzc3QgYm9lc2FydGlnZSBXb3J0ZSBlaW5lcgptYWdpc2NoZW4gU3ByYWNoZSBoZXJ2b3IgdW5kIHZvbGxmdWVocnQgbWl0IHNlaW5lbiBGdWVzc2VuIGVpbmVuIHNlbHRzYW1lbgpUYW56LgpUdXRzenQgZW50c3RlaWd0IGRlbiBmaW5zdGVyc3RlbiBEYWVtb25lbmRpbWVuc2lvbmVuLgpEZXIgT3JrIGdyZWlmdCBEaWNoIG1pdCBrcmFlZnRpZ2VuIEZhZXVzdGVuIGFuLgpEZXIgT3JrIHNjaGxhZWd0IERpY2ggbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KTGViZW46IDk0ICBNYWdpZTogMjE0ICBTdGFiOiAyMCAKT3JraGF1c2VuZXIgSGF1cHRzdHJhc3NlLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHdlc3RlbiB1bmQgbm9yZGVuLgpUdXRzenQgZGVyIEJsdXRkYWVtb24uCkVpbiBQZW50YWdyYW1tLgpFaW4gT3JrLgpFaW4gT3JrLgplaW4gT3JrIGZldWVydCBlaW5lbiBtYWdpc2NoZW4gU3RyYWhsIGF1ZiBEaWNoIGFiLgpNYXRyaXg6IEVpbiBPcmsgaXN0IGFic29sdXQgZml0LgpEZXIgT3JrIHplcnNjaG1ldHRlcnQgRGljaCBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KTGViZW46IDYxICBNYWdpZTogMjE0ICBTdGFiOiAyMCAKRHUgZ3JlaWZzdCBkZW4gT3JrIG1pdCBibG9zc2VuIEhhZW5kZW4gYW4uCkVpbiBPcmsgd2VocnQgRGVpbmVuIEFuZ3JpZmYgbWl0IGVpbmVtIE1vcm90ZS11a2UgYWIuCkR1IHZlcmZlaGxzdCBkZW4gT3JrLgpEdSBiZXdpcmZzdCBlaW5lbiBPcmsgbWl0IGVpbmVyIEt1Z2VsIGF1cyBla2xpZyBncnVlbmVtIFNjaGxlaW0uCkR1IGh1ZWxsc3QgZGVuIE9yayBtaXQgZWluZXIgS3VnZWwgZWtsaWcgZ3J1ZW5lbiBTY2hsZWltIGVpbi4KTGViZW46IDYxICBNYWdpZTogMTg5ICBTdGFiOiAyMCAKRGVpbiBaYXViZXJzdGFiIHVudGVyc3R1ZXR6dCBEaWNoIGJlaSBkZW0gU3BydWNoLgpMZWJlbjogNjEgIE1hZ2llOiAxOTIgIFN0YWI6IDIwIApFaW4gT3JrIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KRWluIE9yayBpc3QgamV0enQgaGludGVyIERpciBoZXIuCgpOb2NoIEZyYWdlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IExvZ2ZpbGUuLi4gKEFuYXRvbCwgMTkuIE9rdCAxOTk3LCAyMzo1ODoxMyk6Cn4jISBvbj1BbmF0b2wgb3Q9ODc3Mjk4Mjg5IG9nPWQudmxhbmQKfiMhIHJuPUZyZXVuZCBydD04NzcyOTgyMTkgcmc9ZC52bGFuZAp+IyEgdGlkPTg3NzE4NDE5MgpJY2ggaGFiIG5hY2hnZXNjaGF1dDogSGludGVyIG1laW5lbSBNb25pdG9yIHNpdHplbiBrZWluZSBhbmRlcmVuIE1lbnNjaGVuLgoKQW5hdG9sLCBwZmZmZnRlbmQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTG9nZmlsZS4uLiAoQW5hdG9sLCAyMC4gT2t0IDE5OTcsIDAwOjAzOjIxKToKfiMhIHJuPVNoYXJpYSBydD04NzcyOTg1MTUgcmc9ZC52bGFuZAp+IyEgdGlkPTg3NzE4NDE5MgpXZW5uIER1IG1pY2ggZnJhZ3N0IC0gYXVzIGRpZXNlbSBIb2x6IHdlcmRlbiBNdWx0aW1pbGxpYXJkYWVyZSBnZXNjaG5pdHp0LgpCaWxsIEdhdGVzIG1hY2h0ZSBlcyBqYSBhZWhubGljaDogSGllciBoYWJ0IGlociBXaW5kb3dzLCB0ZXN0ZXQgaWhyIG1hbC4uLgoKQW5hdG9sLCBkaWVzbWFsIGRpcmVrdCBpbiBkZXIgcmljaHRpZ2VuIFJ1YnJpayA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IExvZ2ZpbGUuLi4gKFd1cnplbCwgMjAuIE9rdCAxOTk3LCAwMDowNDo0MSk6Cn4jISBybj1BbmF0b2wgcnQ9ODc3Mjk4NjAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc3MTg0MTkyCnN0aW1tdCBnZW5hdS4uLiBmdW5rdGlvbmllcnQgYWJlciBsZWlkZXIgbmljaHQgaW1tZXIuCgp3dXJ6ZWwsIGRhcyBhcm1lIHNjaHdlaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJY2ggbW9lY2h0ZSBhdWNoIHNvIHNjaG5lbGwga2FlbXBmZW4hIChUcmVrYW4sIDIwLiBPa3QgMTk5NywgMDA6Mjg6MzEpOgp+IyEgcm49SGFuZ292ZXIgcnQ9ODc3MjkyNzQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc3MjkyNzQwCmRhIHdhcm4gbiB0eXBvIGRyaW46IGVpbiBPcmsga25pZXQgc2ljaCBoaW4gdW5kIGJlZ2lubnQgLi4uCkF1c3NlcmRlbSBub2NoOiBHUkFUUwpEdSBoYXN0IGVzIHVlYmVybGVidCA7KSkpClRyZWthbiAtPiBzdXJ2aXZpbmcgdGhlIGdhbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnJlYWxpdGFldHNuYWhlIEdlYmV0ZT8/IChEZXNpZGVyaWEsIDIwLiBPa3QgMTk5NywgMTE6NDk6MTQpOgpbQWxsZ2VtZWluOkNhdHdlYXpsZV0gbWFobHplaXQKW0FsbGdlbWVpbjpLcmV0ZWsgZ2VodCBqZXR6dCBmdXR0ZXJuXQpEZWluIEdlYmV0IGRyZWh0IHNpY2ggYXVmIGVpbm1hbCB1bXMgRXNzZW4uCldhcmdvbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKRHUgYmVlbmRlc3QgRGVpbiBHZWJldCBtaXQgZWluZW0gZXJsZWljaHRlcnRlbiAnRW5kbGljaCcKCkRlc2lkZXJpYSwgYmVkYXJmIHdvaGwgZWluZXIgTGFldXRlcnVuZy4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGJlaSB0b2QgaW0gYnVlcm8gKEJpcmR5LCAyMC4gT2t0IDE5OTcsIDE4OjI5OjEwKToKCgphbHNvLCBpY2ggZ3JhZCBtaXR0ZW4gaW4gZGVyIHRvZGVzc2VxdWVueiBpbiB0b2RzIGJ1ZXJvLCBkYSBrcmllZyBpY2ggYXVmIC10b2QKbWl0IDpsZXRpYyAuLi4gLG5hamEgZXIgaXMgYWJnZWtyYXR6dC4KZWluZSBzZWt1bmRlIHNwYWV0ZXIgbGVzIGljaCBkYXMgOkxlVGljIGtvbW10IGF1ZiBlaW5lciBaYXViZXJ3b2xrZQphbmdlc2Nod2VidC4KCmZyYWdlIGhhdCBlciBlaW5lIGFuZGVyZSBzZXF1ZW56IGFscyBpY2ggb2RlciBkaWUgZ2xlaWNoZSB1bmQgd2VubiBkaWUKZ2xlaWNoZSwgbnVyIG5vY2ggZGVuIHJlc3Qgdm9uIG1laW5lciA/CkJpcmR5ICxiZWx1c3RpZ3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1ldGFnZWlzdGVyPyAoSGFuZ292ZXIsIDIwLiBPa3QgMTk5NywgMjA6NDE6NDUpOgpHcmFkZSBnZWxlc2VuLi4uCgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBTcGlubmVuZ2Vpc3RzXSBTbywgbWVpbmUgSWdub3JpZXJlbGlzdGUgaXN0IHNjaG9uIHdpZWRlcgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBTcGlubmVuZ2Vpc3RzXSB1bSBlaW5lbiBOYW1lbiBsYWVuZ2VyLCBSaW5nb3IuCgpWZXJ3aXJydCwgSGFuZ292ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBuZXVsaWNoIGJlaSB0b2QgaW0gYnVlcm8gKEFscGhhLCAyMC4gT2t0IDE5OTcsIDIwOjQzOjE1KToKfiMhIHJuPUJpcmR5IHJ0PTg3NzM2NDk1MCByZz1zY2htYXJybgp+IyEgdGlkPTg3NzM2NDk1MApIbSwgc2NoZWluYmFyIGtvbW1lbiBhbGxlLCBkaWUgc3RlcmJlbiBpbiBkZW4gZ2xlaWNoZW4gUmF1bSwgaXN0IG1pciBhdWNoCnNjaG9uIG1hbCBwYXNzaWVydC4KRGVyIFRvZCBpc3QgZWluemlnYXJ0aWcsIGFsc28gTVVTUyBtYW4gc2ljaCBkYSB0cmVmZmVuLiBTY2hhZGUgbnVyLCBkYXMgbWFuIGRhCm5pY2h0IFF1YXRzY2hlbiBrYW5uLgpBbHBoYSwgbWl0IERhdWVyYWJvIGF1ZiBMYXJzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2Voa3JhZnQgKFJpbmdvciwgMjAuIE9rdCAxOTk3LCAyMDo1NToxMSk6Ck5ldWxpY2ggaW4gRmV1ZXJ3ZWhycyBLbG9zdGVyOgoKRGVyIEtpZXMgc2llaHQgZnJpc2NoIGdlaGFya3QgYXVzLiBNYW4gZmluZGV0IGtlaW4gVW5rcmF1dCB6d2lzY2hlbiBkZW4KS2llc2Vsbi4KClt1bnQgdW5rcmF1dF0KSGllciBpc3Qga2VpbnMgenUgc2VoZW4uIEFsbGVzIHNpZWh0IHNlaHIgZ2VwZmxlZ3QgYXVzLgo+IERlciBEaWVuZXIga3JpZWNodCB1ZWJlciBkZW4gV2VnIHVuZCB6dXBmdCBldHdhcyBVbmtyYXV0LgoKVGphLCBtZWluZSBBdWdlbiBzaW5kIHdvaGwgYXVjaCBuaWNodCBtZWhyIGdhbnogZGFzLCB3YXMgc2llIG1hbCB3YXJlbiA7LSkKClJpbmdvci4gV2lyZCBhbHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2Voa3JhZnQgKFd1cnplbCwgMjAuIE9rdCAxOTk3LCAyMTowOTo1MSk6Cn4jISBybj1SaW5nb3IgcnQ9ODc3MzczNzExIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc3MzczNzExCm5laW4uIGRlciBkaWVuZXIgaXN0IG51ciBzcGV6aWFsaXNpZXJ0LCBkZXIgc2llaHQgc29uc3QgZ2FyIG5pY2h0cyBtZWhyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmdWVyIFNpbHZhbmEgKEFzbW9kaXMsIDIwLiBPa3QgMTk5NywgMjI6MzM6NTkpOgp3YXMgbmV1ZXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZ1ZXIgcmF0eiAoU2lsdmFuYSwgMjAuIE9rdCAxOTk3LCAyMjozNTo1NCk6CmRlbiBCZWZlaGwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBmdWVyIHJhdHogKEFzbW9kaXMsIDIwLiBPa3QgMTk5NywgMjI6MzY6NTcpOgp+IyEgcm49U2lsdmFuYSBydD04NzczNzk3NTQgcmc9c2NobWFycm4KfiMhIHRpZD04NzczNzk3NTQKTnVuIHp1ciBBdWZsb2VzdW5nOgouLi4KW0FsbGdlbWVpbjpTaWx2YW5hXSBzY2hyZWliIG1hbCBlaW5lciB3YXMgbmV1ZXMgaW4gZGllIFplaXR1bmcuLi4KW0FsbGdlbWVpbjpSYXR6XSB2b24gbWlyIGF1cyBrb2VubnQgaWhyIGRlbiBiZWZlaGwgYXVjaCBpbiBkaWUgemVpdHVuZyBzZXR6ZW4KLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCYWxpb24gd2FyIG1hbCB3aWVkYSBzY2huZWxsZXIuLi4gKFR1bml4Z3V0LCAyMS4gT2t0IDE5OTcsIDExOjE1OjIwKToKRHUga25pZWhzdCBkaWNoIGFuIGRlbiBUdWVtcGVsLCB1bSBkYXMgV2Fzc2VyIG5hZWhlciB6dSBiZXRyYWNodGVuLCB1bmQgZGEKc2llaHN0IGR1IGVpbiBHZXNpY2h0IGltIFdhc3Nlciwgd2VsY2hlcyB6dSBkaXIgaGVyYXVmc2NoYXV0LiBFaW4gc2Nob2VuZXMsCndlaWJsaWNoZXMgR2VzaWNodC4KPiBBbm5lIHJ1ZnQ6IEJhbGlvbiwgcHJvYmllciBkYXMgYmVpIGVpbmVyIGFuZGVyZW4hISEhIQoKU28gdmllbCB6dW0gVGhlbWEgYmFnZ2Vybi4uLiBNYW4ga29tbXQgamEgZ2FyIG5pY2h0IGRhenUuLi4KCkljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkphamEsIGRpZXNlIE1hZ2llciAuLi4gKEdsb2luc29uLCAyMS4gT2t0IDE5OTcsIDEyOjM1OjEzKToKWzxNYXN0ZVI+OkNhdHdlYXpsZV0gaGloaSwgaWNoIGhhYiBkaWUgdG9wbGlzdGUgaG9jaGdlbmljZXQgOikKWzxNYXN0ZVI+OkRlbnRpXSBsCls8TWFzdGVSPjo8TWFzdGVSPl0gNy40NiBjbWRzL3MsIDE2OC4xNyBjb21wIGxpbmVzL3MKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDI0LjQlLzYwLCAyNC43JS8xNSwgMzAuNCUvMQpbPE1hc3RlUj46Q2F0d2VhemxlXSBhaGphLi4uLgpbPE1hc3RlUj46RGVudGldIG5hamEsIG5pY2h0IHZpZWwgdW50ZXJzY2hpZWQKW1RvZDpMYXJzXSBFaW4gRHJha29uaWVyYWRlcHQgaGF0IGdlcmFkZSBJdm8gdW1nZWJyYWNodC4KClp1bWluZGVzdCBmdWVyIGVpbmVuIHdhciBlcyBkZXIgZmVpbmUgVW50ZXJzY2hpZWQgOy0pCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBYmVyIGljaCB3b2xsdGUgZG9jaCBudXIuLi4uIChBbmNhbGFnb24sIDIxLiBPa3QgMTk5NywgMTY6MDY6MjUpOgpLbnVkZGVscyEKQWxzbyBtYW5jaGUgTGV1dGUgc2NoZWluZW4gZ2VyYWRlenUgQW5nc3Qgdm9yIG1pciB6dSBoYWJlbi4uLi4KR2VyYWRlIGViZW4gcGFzc2llcnQ6CgpLbG9uayBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4Kcms5IGtsb25rCkR1IGtudWRkZWxzdCBLbG9uayBpbiBkZW4gc2llYnRlbiBIaW1tZWwuIER1IGhhc3QgZGlyIGphIGdlZGFjaHQsIGRhc3MgZGVyIApzY2hvZW4gaXN0LCBhYmVyIHNvIHNjaG9lbj8hIFZvbiB1ZWJlcmFsbCBoZXIgZXJ0b2VuZW4gemF1YmVyaGFmdGUgClNwaGFlaHJlbmtsYWVuZ2UsIGRpZSBMdWZ0IGlzdCBlcmZ1ZWxsdCBtaXQgZWluZW0gdW5iZXNjaHJlaWJsaWNoZW4gRHVmdCB1bmQgCmRpZSBXb2xrZW4gc2VoZW4gbmljaHQgbnVyIHNvIGF1cywgc29uZGVybiBTSU5EIGF1cyBadWNrZXJ3YXR0ZSAoIGluIAp2ZXJzY2hpZWRlbmVuIEZhcmJlbiB1bmQgR2VzY2htYWVja2VybiEpIE5hY2hkZW0gZHUgZGllc2UgYXRlbWJlcmF1YmVuZGUgClN6ZW5lcmllIGVpbmUgKG5pY2h0IHNvIGtsZWluZSkgV2VpbGUgZ2Vub3NzZW4gaGFzdCwgdGlwcHQgQW5jYWxhZ29uIGRpciBhdWYgCmRpZSBTY2h1bHRlci4gIlplaXQgenUgZ2VoZW4hIiwgbGFlY2hlbHQgZXIsIG5pbW10IGRpY2ggc2FjaHRlIGluIHNlaW5lIEtsYXVlbgp1bmQgdHJhZWd0IGRpY2ggYXVmIGRlbiBCb2RlbiB6dXJ1ZWNrLiBFaW4gUmVnZW5ib2dlbiBsZXVjaHRldCBhdXMgZGVyIEZlcm5lLgo+IEtsb25rIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCgpBbHNvIG1hbmNoZSBMZXV0ZSB2ZXJ0cmFnZW4gYXVjaCBnYXIgbmljaHRzLi4uLi4uLi4gOikKS251ZGRlbHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbmNhbGFnb24KICAgICAgICAgICAgICAgICAgICAgICAgRHJhY28ga251ZGRlbGxlbnNpcyBtYWpvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFiZXIgaWNoIHdvbGx0ZSBkb2NoIG51ci4uLi4gKEJvaW5nLCAyMS4gT2t0IDE5OTcsIDE2OjI4OjAxKToKfiMhIHJuPUFuY2FsYWdvbiBydD04Nzc0NDI3ODUgcmc9c2NobWFycm4KfiMhIHRpZD04Nzc0NDI3ODUKQWxzbyBpY2ggdmVyc3RlaGUgaWhuIC4uLgogIEJvaW5nClBTOiBJY2ggd2Vpc3Mgd2FydW0gaWNoIEFuY2FsYWdvbnMgcmtudWRkZWwgc2Nob24gc2VpdCBKYWhyZW4gaWdub3JpZXJlIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBYmVyIGljaCB3b2xsdGUgZG9jaCBudXIuLi4uIChBbmNhbGFnb24sIDIxLiBPa3QgMTk5NywgMTY6MzE6MjkpOgp+IyEgcm49Qm9pbmcgcnQ9ODc3NDQ0MDgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc3NDQyNzg1CktudWRkZWxzIQpUYXRzYWVjaGxpY2gsIGVyIHR1dHMgd2lya2xpY2ggdW5kIGltbWVyIG5vY2guLi4uLiAKCklzdCBkYXMgamV0enQgJ24ga29tcGxpbWVudD8gIApNYWNodCBuaXgsIGljaCBrbnVkZGVsIHdlaXRlci4uLi4gOikKCkFuY2FsYWdvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFiZXIgaWNoIHdvbGx0ZSBkb2NoIG51ci4uLi4gKEFzbW9kaXMsIDIxLiBPa3QgMTk5NywgMTc6NDY6MjEpOgp+IyEgcm49QW5jYWxhZ29uIHJ0PTg3NzQ0Mjc4NSByZz1zY2htYXJybgp+IyEgdGlkPTg3NzQ0Mjc4NQpIbW0sIGR1IGhhc3QgZG9jaCBnZXNhZ3QgJ1plaXQgenUgZ2VoZW4hJywgZGEgaXN0IGVyIGViZW4gZ2VnYW5nZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtsYXBwdCA6KSAoQXNtb2RpcywgMjEuIE9rdCAxOTk3LCAxOTo1NTowMik6CltDaGFvczpEYXJ5bF0gaWNoIHN0ZWhlIGpldHp0IHZvciBldXJlciBmZXN0dW5nISBXaWUga29tbWUgaWNoIGpldHp0IHdlZyBoaWVyPwpbQ2hhb3M6QXNtb2Rpc10gbWl0IGVuZGUgb2RlciB1bnRpZXIgZnJhZ2VuCltDaGFvczpEYXJ5bF0gZGFua2Ugc2Nob2VuCi4uLgpbVG9kOkxhcnNdIEVpbiBVbnRpZXIgaGF0IGdlcmFkZSBEYXJ5bCB1bWdlYnJhY2h0LgpbQmVpbGVpZDpLaWxhcl0gQmVpbGVpZCA6KCAKW0JlaWxlaWQ6RGhvamFrdF0gWmFlaG5lIHB1dHplbiwgVW50aWVyISAoYykgRXgtU2NocnVtcGZpLiAKW0JlaWxlaWQ6TGFteXJhXSBiZWlsZWlkIApbQmVpbGVpZDpQZXJ0aW5heGVdIGJlaWxlaWQgCltCZWlsZWlkOkJpcmR5XSBiZWlsZWlkIApbQmVpbGVpZDpLZXkga2ljaGVydC4gCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc210cCAoQ2F0d2VhemxlLCAyMS4gT2t0IDE5OTcsIDE5OjU3OjA2KToKfiMhIG9uPUNhdHdlYXpsZSBvdD04Nzc0NTY1OTIgb2c9ZW50d2lja2x1bmcKSnVzdCBmb3VuZDoKLS0tLS0tLS0tLQokIHRlbG5ldCAqKiogMjUKVHJ5aW5nICoqKi4qKiouKioqLioqKi4uLgpDb25uZWN0ZWQgdG8gKioqLgpFc2NhcGUgY2hhcmFjdGVyIGlzICdeXScuCjIyMCAqKiouLnVuaS1tdWVuc3Rlci5kZSBTZW5kbWFpbCBTTUktOC42L1NNSS1TVlI0L09CalAxLjE0LWMgcmVhZHkgYXQgVHVlLCAyMQpPY3QgMTk5NyAxOTo1MzoxOCArMDIwMApoZWxwIGV4cG4KMjE0LUVYUE4gPHJlY2lwaWVudD4KMjE0LSAgICBTYW1lIGFzIFZSRlkgaW4gdGhpcyBpbXBsZW1lbnRhdGlvbi4KMjE0IEVuZCBvZiBIRUxQIGluZm8KaGVscCB2cmZ5CjIxNC1WUkZZIDxyZWNpcGllbnQ+CjIxNC0gICAgTm90IGltcGxlbWVudGVkIHRvIHByb3RvY29sLiAgR2l2ZXMgc29tZSBzZXh5CjIxNC0gICAgaW5mb3JtYXRpb24uCjIxNCBFbmQgb2YgSEVMUCBpbmZvCi0tLS0tLS0tLS0KWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hpem8gKEFscGhhLCAyMS4gT2t0IDE5OTcsIDIwOjIxOjA5KToKIAogICdXZW5uIER1IG51ciBtYWwgcmVpbnNjaG51ZWZmZWxuIHdpbGxzdCwgc28gbmVubmUgRGljaCAiZ2FzdCIuJwogCkRlciBTdGVpbmJlaXNzZXIgd2FybnQgRGljaDoKICAnV2VoZSwgRHUgZmFlbmdzdCBhbiwgYW5kZXJlIFNwaWVsZXIgYW56dWdyZWlmZW4uJwogCkRlciBTdGVpbmJlaXNzZXIgdmVyc2Nod2luZGV0IHdpZWRlciwgdW5kIER1IHdhY2hzdCBpbiBlaW5lciBhbmRlcmVuIFdlbHQgYXVmLgogCldpZSBoZWlzc3QgRHUgZGVubiA/IFNjaG9lbiwgZGFzcyBEdSB3aWVkZXIgZGEgYmlzdCwgQWxwaGEhClBhc3N3b3JkOiAKRHUgbmltbXN0IHNjaG9uIGFtIFNwaWVsIHRlaWwhClZlcndlbmRlIERlaW5lIGFsdGUgc3RlcmJsaWNoZSBIdWVsbGUgLi4uCkFscGhhIHVuZCBUb3J3YWxsIHNpbmQgaW0gU3BpZWwuCk11Y2tlIHNjaGxlaWNodCBoZXJlaW4uCj4gTXVja2Ugc2NoYXV0IG1pdCBsZXVjaHRlbmRlbiBBdWdlbiBpbiBkaWUgUnVuZGUuCl9fX19fX19fX2FscGhhX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXzA4OgoxOQogCiAKIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNtdHAgKEF2YWxvbiwgMjEuIE9rdCAxOTk3LCAyMTo0NToxOCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9ODc3NDU2NjI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc3NDU2NjI2CkRhIGhhZXR0IGljaCBub2NoIGZvbGdlbmRlcywgbmF0dWVybGljaCBhdWNoIGdla2xhdXQuLi4gOikKCi0tLSBzY2huaXBzZWwgLS0tCjIyMCBETlMuTGFtYi5uZXQgU01UUCByZWFkeSwgV2hvIGFyZSB5b3UgZ29ubmEgcHJldGVuZCB0byBiZSB0b2RheT8KPj4+IEVITE8gcmh1YmFyYi5lbXNpLnByaXYuYXQKNTAwIEJsb29keSBBbWF0ZXVyISBQcm9wZXIgZm9yZ2luZyBvZiBtYWlsIHJlcXVpcmVzIHJlY29nbml6YWJsZSBTTVRQCmNvbW1hbmRzIQo+Pj4gSEVMTyByaHViYXJiLmVtc2kucHJpdi5hdAoyNTAgRE5TLkxhbWIubmV0IElzIHRocmlsbGVkIGJleW9uZCBibGFkZGVyIGNvbnRyb2wgdG8gbWVldApyaHViYXJiLmVtc2kucHJpdi5hdAo+Pj4gTUFJTCBGcm9tOjxtamxAcmh1YmFyYi5lbXNpLnByaXYuYXQ+CjI1MCBzZW5kZXIgaXMgPG1qbEByaHViYXJiLmVtc2kucHJpdi5hdD4sICh5ZWFoIHN1cmUsIGl0J3MgcHJvYmFibHkgZm9yZ2VkKQo+Pj4gUkNQVCBUbzo8dWxmQEdhdGVrZWVwZXIuQWxhbWVkYS5uZXQ+CjI1MCByZWNpcGllbnQgPHVsZkBHYXRla2VlcGVyLkFsYW1lZGEubmV0PiwgSSBrbm93IHRoZW0hIHRoZXknbGwganVzdCAqTE9WRSoKdG8gaGVhciBmcm9tIHlvdSEKPj4+IERBVEEKMzU0IE9LLCBmaXJlIGF3YXkuIEVuZCB3aXRoIDxDUkxGPi48Q1JMRj4KPj4+IC4KMjUwIFdoZXchIERvbmUhIFdhcyBpdCBhcyBnb29kIGZvciB5b3UgYXMgaXQgd2FzIGZvciBtZT8KdWxmQEdhdGVrZWVwZXIuQWxhbWVkYS5uZXQuLi4gU2VudCAoV2hldyEgRG9uZSEgV2FzIGl0IGFzIGdvb2QgZm9yIHlvdSBhcyBpdAp3YXMgZm9yIG1lPykKQ2xvc2luZyBjb25uZWN0aW9uIHRvIG1haWwuYWxhbWVkYS5uZXQuCj4+PiBRVUlUCjIyMSBJdCdzIGJlZW4gcmVhbC4gVGFrZSBvZmYgRWghCi0tLSBzY2huaXBzZWwgLS0tCgppViwgd29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChaZXBoeXIsIDIyLiBPa3QgMTk5NywgMTU6NTk6MjQpOgpHbm9tZSAtIE9ya2hhdXNlbmVyIEhhdXB0c3RyYXNzZSAKRHUgdGVpbHN0IEdub21lIG1pdDogbXVzc3QgRHUgRGljaCBhdXNnZXJlY2huZXQgREEgcnVtdHJlaWJlbj8KR25vbWUgdGVpbHQgRGlyIG1pdDogaWNoIHdpbGwgZGllIGtpbGxzIGhhYmVuIDopCltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIEdub21lIHVtZ2VicmFjaHQuCkR1IHRlaWxzdCBHbm9tZSBtaXQ6IGFqYS4uLgpEdSB0ZWlsc3QgR25vbWUgbWl0OiB0cm90emRlbSBCZWlsZWlkCgpzZXVmemVuZCwgWmVwaHlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGYW1pbGllbmxlYmVuIGltIE11ZCAoQmlyZHksIDIyLiBPa3QgMTk5NywgMTc6MTU6MTcpOgoKPiBEdSBob2Vyc3QgaW4gZGVyIEZlcm5lIGVpbmUgRnJhdWVuc3RpbW1lIGtlaWZlbi4KSmVtYW5kIGJydWVsbHQgenVydWVjay4KCkJpcmR5LCBmaW5kZXQgZGFzIGNvb2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZ1ZXIgQmFtYnVsa28gKEFzbW9kaXMsIDIyLiBPa3QgMTk5NywgMTg6MTM6NTApOgpbQWxsZ2VtZWluOkJhbWJ1bGtvXSBIdXJyYTogTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4gOi0pKQoKQWV0c2NoLCBuaWNodCBtZWhyICEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBmdWVyIEJhbWJ1bGtvIChCYW1idWxrbywgMjIuIE9rdCAxOTk3LCAxODoxNDo1OCk6Cn4jISBybj1Bc21vZGlzIHJ0PTg3NzUzNjgzMCByZz1zY2htYXJybgp+IyEgdGlkPTg3NzUzNjgzMApOYWphIGFiZXIgaW1tZXIgbm9jaCBiZXNzZXIgYWxzIEFydGlrZWw6IDEgdm9uIDIzMAoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvb29vIGJlbGllYnQgd2FlcicgYXVjaCBnZXJuIG1hbCEgO28pIChUdW5peGd1dCwgMjcuIE9rdCAxOTk3LCAxMTo0MjoyNyk6CllhbnRybyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbQWxsZ2VtZWluOlR1Tml4R3V0XSBIaSBFaXN3b2VsZmVsZS4uLgo+IEVpbiBCZWlmYWxsc3N0dXJtIGJyYW5kZXQgaW0gRGlhbW9uZHBhcmsgYXVmLiBXYXMgZGEgd29obCB3aWVkZXIgbG9zIGlzdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBZXJnZXIgbmFjaCBkZW0gcmVib290IChBdmFsb24sIDI3LiBPa3QgMTk5NywgMTc6NTU6MTkpOgp+IyEgcm49Q2hlYXN5IHJ0PTg3Nzk1ODg4MyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg3Nzk1ODg4MwpBYmVyLCBhYmVyLi4uIHdhcyBoYXQgZGVubiBkaWUgYXJtZSBzb3VsIGRhbWl0IHp1IHR1bj8KCmNoZWFzeSBkaWUgd3Vyc3QgZGVzIHRhZ2VzIHVlYmVycmVpY2hlbmQgOiksIGF2YWxvbi4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBEaWUgS2xlcmlrZXIgKEFuYXRvbCwgMjcuIE9rdCAxOTk3LCAyMTowODozMyk6Cn4jISBybj1LZXkgcnQ9ODc3OTc0NzMxIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODc3OTcyNTk1Cldlbm4gRHUgYXVmIFRyYW5jZWZlYXJzIHBzZXVkb3dpY2h0aWdlIEFydGlrZWwgYW50d29ydGVzdCwgS2V5LCBiaXN0CkR1IGlyZ2VuZHdpZSBhdWNoIHNlbGJzdCBzY2h1bGQuIAoKT2gsIGViZW46ClRyYW5jZWZlYXIgdGVpbHQgRGlyIG1pdDogaGV5IGh1aHUgbmEgd2FzIG1hY2h0IGRhcyBuZXJ2ZW5rb3N0dWVtPwoKT2IgZXIgbWlyIHNjaG9uIGJlaW0gQXJ0aWtlbHNjaHJlaWJlbiB1ZWJlciBkaWUgU2NodWx0ZXIgc2llaHQ/IERhYmVpIGJpbgppY2ggZG9jaCB2aWEgTW9kZW0gZHJpbi4uLiAqZ3J1ZWJlbCogU2FjaGVuIGdpYnQgZXMuLi4KCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZ2llcnNjaHcoYSllbW1lID8/IChNb3Jnb3RoLCAyOC4gT2t0IDE5OTcsIDA4OjIzOjM5KToKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERpZSwgMjguIE9rdCAxOTk3LCAwODoyMjo0OSAoNyBUZWlsbmVobWVyKQoKU211cmYuLi4uLi4uLi4uLnMgIFBlcnRpbmF4ZS4uLi4uLi5zICBUd2lzdC4uLi4uLi4uLi4uUyAgTW9yZ290aC4uLi4uLi4uLlIKQmxvb2R5aGFycnkuLi4uLlIgIERhbmNlci4uLi4uLi4uLi5SICBTaWx2YW5hLi4uLi4uLi4uRQoKQXVzc2VyZGVtIGlzdCBlcyAwNzoyMiwgc3RlbGwgbWFsIHdlciBkaWUgVWhyLgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2FuZCAoR3JpbW1ib3JuLCAyOC4gT2t0IDE5OTcsIDExOjA3OjIyKToKfiMhIG9uPUtpc3Mgb3Q9ODc3OTg1MzkzIG9nPWFsbGdlbWVpbmVzCmhhbGxvIGl2by4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFybWVyIEJpbGwgLi4gKEFsYm9pbiwgMjkuIE9rdCAxOTk3LCAxNToxOTo0NCk6CmhldXRlIGluIGRlciBCTE9FRC1aZWl0dW5nIDoKCiAyOS4xMC4xOTk3CiAgICAgICAgIEJvZXJzZW4tQ3Jhc2ggLSBhbSBtZWlzdGVuIG11c3N0ZW4gZGllIFJlaWNoc3RlbiBkZXIgUmVpY2hlbiBibHV0ZW4uCiAgICAgICAgIFNpZSB2ZXJsb3JlbiBtaXQgaWhyZW4gQWt0aWVucGFrZXRlbiBNaWxsaWFyZGVuLiBBbSBtZWlzdGVuIGRpZQpBbWlzOgoKICAgICAgICAgICAgQmlsbCBHYXRlcyAoNDIpLCBDaGVmIHZvbiBNaWNyb3NvZnQgdW5kIHJlaWNoc3RlciBQcml2YXRtYW5uIGRlcgogICAgICAgICAgICBXZWx0OiAzIE1pbGxpYXJkZW4gTWFyay4KICAKCiAgICAgICAgIChmb2xndGUgZWluZSBMaXN0ZSBub2NoIGFuZGVyZXIgJ2JlbWl0bGVpZGVuc3dlcnRlcicgVmVybGllcmVyKQoKb2huZSBLb21tZW50YXIKQWxib2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYXJtZXIgQmlsbCAuLiAoUGF0cnluLCAyOS4gT2t0IDE5OTcsIDE4OjUyOjE2KToKfiMhIHJuPUFsYm9pbiBydD04NzgxMzQ3ODQgcmc9c2NobWFycm4KfiMhIHRpZD04NzgxMzQ3ODQKc28gbmVuIGJsb2Vkc2lubiwgZGVyIGhhdCBkYWJlaSBnYXIgbml4IHZlcmxvcmVuLgpkZXIgYWt0aWVuaW5kZXggaGF0dGUgaW4gZGVuIGxldHp0ZW4gbW9uYXRlbiB0ZWlsd2Vpc2UgamVkZW4gYmV6dWcgenVyCndpcmtsaWNoZW4gd2lydHNjaGFmdHNrcmFmdCB2ZXJsb3JlbiwgZGFzIGtvbW10IGRhdm9uLCB3ZW5uIG1pdApnZWxkIG1laHIgZ2VsZCB2ZXJkaWVudCB3aXJkIGFscyBtaXQgZGVtIHNjaGFmZmVuIHZvbiB3ZXJ0ZW4uCmRlciB3YXJ0ZXQgamV0enQgZWluZmFjaCBkZW4gJ2NyYXNoJyBhYiB1bmQgc3RlaHQgZGFubiB3aWVkZXIgc28gd2llCnp1dm9yIGRhLi4uYmlzIGhhbHQgbWFsIGRlciByaWNodGlnIGdyb3NzZSBjcmFzaCBrb21tdCB1bmQgbWFuIHNpY2gKbWFsIGdlZGFua2VuIHVlYmVyIGRhcyBkZXJ6ZWl0aWdlIHBva2Vyc3BpZWwgJ2JvZXJzZScgbWFjaGVuIG11c3MuCnNlbGJzdCBkYW5uIGR1ZXJmdGVuIGRpZSByZWljaHN0ZW4gZGVyIHJlaWNoZW4gZWhlciB6dSBkZW4gZ2V3aW5uZXJuCmdlaG9lcmVuLi4ud2llIGltbWVyCgotLS0tLS0KcGF0cnluIGhhc3N0IEJMT0VELnplaXR1bmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogYXJtZXIgQmlsbCAuLiAoS2V5LCAyOS4gT2t0IDE5OTcsIDE5OjIzOjMyKToKfiMhIHJuPVBhdHJ5biBydD04NzgxNDc1MzYgcmc9c2NobWFycm4KfiMhIHRpZD04NzgxMzQ3ODQKU2VsYnN0IHdlbm4gLi4uIG1laW5zdGUgQmlsbCBrcmF0emVuIDMgTWlsbGlhcmRlbj8KVmllbGxlaWNodCB3aWUgdW5zZXJlaW5zIDEwIG1hcmsgLi4uCgpLZXkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBhcm1lciBCaWxsIC4uIChXdXJ6ZWwsIDI5LiBPa3QgMTk5NywgMTk6NTM6MDApOgp+IyEgcm49S2V5IHJ0PTg3ODE0OTQxMiByZz1zY2htYXJybgp+IyEgdGlkPTg3ODEzNDc4NAp1bmQgd2VubiBzY2hvbi4gbWl0dGxlcndlaWxlIGhhdCBlciBkYXMgZG9jaCBzY2hvbiB3aWVkZXIsIGJvZXJzZSBpc3QgZWJlbgp2b3IgYWxsZW0gbHVzdGlnLiAzIG1pbGxpYXJkZW4gYW4gZWluZW0gdGFnIHZlcmxvcmVuLCBhbSBuYWVjaHN0ZW4gdGFnIHdpZWRlcgpnZXdvbm5lbi4uLiBkZXIgdGV1ZmVsIHNjaGVpc3N0IGViZW4gaW1tZXIgYXVmIGVpbmVuIGdyb3NzZW4gaGF1ZmVuLCB3aWUKbWVpbmUgb21hIHp1IHNhZ2VuIHBmbGVndGUuCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGFybWVyIEJpbGwgLi4gKE5haXJvbGYsIDI5LiBPa3QgMTk5NywgMjE6NDE6MDIpOgp+IyEgcm49S2V5IHJ0PTg3ODE0OTQxMiByZz1zY2htYXJybgp+IyEgdGlkPTg3ODEzNDc4NAoKSGFyIEhhciBLZXkgZGljaCBrcmF0emVuIG5pY2htYWwgNjAgRE0gLi4uLgpmdWVyIGFsbGU6IEtleSB6YWhsdCBpbm5lcmhhbGIgZGVzIFJNViAoUmhlaW4tTWFpbiBWZXJrZWhyc3ZlcmJ1bmQpIGZ1ZXIgZWdhbAp3ZWxjaGUgc3RyZWNrZSBsb2NrZXJlIDYwIERNIGRhbWl0IGVyIHNpY2gga2VpbmUgUHJlaXNlIG1lcmtlbiBtdXNzIDotKSkpKSkKCk5haSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGFybWVyIEJpbGwgLi4gKFJhZmZpLCAyOS4gT2t0IDE5OTcsIDIxOjQzOjAzKToKfiMhIHJuPU5haXJvbGYgcnQ9ODc4MTU3NjYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc4MTM0Nzg0CkpvLCBkYXMgZnVuenQgaW4gTXVlbmNoZW4gZ2VuYXVzby4KCkdyaW5zCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBhcm1lciBCaWxsIC4uIChNb3Jnb3RoLCAzMC4gT2t0IDE5OTcsIDA3OjMwOjI1KToKfiMhIHJuPUtleSBydD04NzgxNDk0MTIgcmc9c2NobWFycm4KfiMhIHRpZD04NzgxMzQ3ODQKSGV5LCBkYXMgc2luZCBjYS4gMyBNZW5zYWVzc2VuIG9kZXIgendlaSBXZWl6ZW4gaW4gRHVyKHN0KWNoYmxpY2sgIQpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogYXJtZXIgQmlsbCAuLiAoU2lsdmFuYSwgMzAuIE9rdCAxOTk3LCAwNzo1Nzo1Mik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTg3ODE5MzAyNSByZz1zY2htYXJybgp+IyEgdGlkPTg3ODEzNDc4NAoyMCBETSBmdWVyIG5lbiBNZW5zYWVzc2VuPyBHdWV0aWdlciBIaW1tZWwuLi4gVW5kIGljaCBkYWNodGUgQmllbGVmZWxkIAp3YWVyZSB0ZXVlci4uLiA6KQoKICBTaWx2YW5hIChzY2htYXJydCBhdWNoIG1hbCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBzY2hsZWNodGUgR2V3aXNzZW4gKE1haGF0bWEsIDMwLiBPa3QgMTk5NywgMTE6NDc6NTIpOgpbVG9kOkxhcnNdIFdhdGVyIEx1aCBoYXQgZ2VyYWRlIFR3ZWVnIHVtZ2VicmFjaHQuCltUb2Q6V2F0ZXIgTHVoXSBTbyBlaW4gRHVtbWtvcGYgLi4uIHNlbGJzdCBzY2h1bGQKQm9pbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpTb3NvLCBkYSBoYWJlbiB3aXIgZGVuIFNjaHVsZGlnZW4uLi4KTWFoYXRtYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAzMC4gT2t0IDE5OTcsIDE2OjAxOjAzKToKIldlciBpbnMgV2Fzc2VyIGdlZmFsbGVuIGlzdCBtZXJrdCBuaWNodCwgZGFzcyBlcyByZWduZXQuIgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQTEFZRVJLSUxMIChNYW5nbywgMzAuIE9rdCAxOTk3LCAxNzowNDo1OCk6ClNvIHNjaG5lbGwga2FubiBkYXMgZ2VoZW46CgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKREVSIEtBTVBGIElOIERFUiBBUkVOQSBCRUdJTk5UISBNT0VHRSBERVIgU1RBRVJLRVJFIEdFV0lOTkVOIQpbVG9kOkxhcnNdIEhvdXNlaG9sZGVyIGhhdCBnZXJhZGUgUGxheWVya2lsbCB1bWdlYnJhY2h0LgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKUExBWUVSS0lMTCBzaWVodCBldHdhcyBtaXRnZW5vbW1lbiBhdXMuCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgpEaWUgZW50c2NoZWlkZW5kZSBQaGFzZSEgRGFzIEVuZGUgdm9uIFBMQVlFUktJTEwgaXN0IHNjaG9uIHNlaHIgbmFoZSEhCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgpNZWluZSBEYW1lbiwgdW5kIEhlcnJlbiwgd2FzIGZ1ZXIgZWluIEthbXBmISBXaXIgd3VyZGVuIFpldWdlbiBlaW5lcyBncm9zc2VuCkthbXBmZXMsIGRlciBpbiBIb3VzZWhvbGRlciBlaW5lbiB3dWVyZGV2b2xsZW4gU2llZ2VyIGZhbmQhIFVucyBibGVpYnQKbnVuIG5pY2h0cyB3ZWl0ZXIsIGFscyBJaG5lbiBlaW5lIHNjaG9lbmUgSGVpbXJlaXNlIHp1IHd1ZW5zY2hlbiEgQmlzIHp1bQpuYWVjaHN0ZW4gbWFsIQp3CkVpbiBNYW5uIG1pdCBncm9zc2VuIFNwZWNrYXJtZW4gdW5kIGVpbmVyIFNjaHVlcnplIGF1ZiBkZXIgJ3RvcyBJbWJpc3N0dWJlJwpzdGVodCBrb21tdCBpbiBkaWUgQXJlbmEgdW5kIHNjaGxlaWZ0IGRpZSBMZWljaGUgcmF1cy4KCgpNYW5nbywgYmVnZWlzdGVydC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSYWV1YmVyIChHcmVuZHVsYSwgMzAuIE9rdCAxOTk3LCAxNzozODo1NSk6CnVuZ2VzY2huaXR0ZW4gOikKCj4gU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiB6aWVodCBlaW5lbiBNaXRocmlscGFuemVyIGF1cy4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBnaWJ0IGBgQ2FzdHknJyBFbGFkcmllbCBkZW4gTWl0aHJpbHBhbnplci4KYGBDYXN0eScnIEVsYWRyaWVsIGdpYnQgU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBkZW4gTWl0aHJpbHBhbnplci4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiB6aWVodCBlaW5lbiBNaXRocmlscGFuemVyIGFuLgpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIHppZWh0IGVpbmVuIE1pdGhyaWxwYW56ZXIgYXVzLgpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIGdpYnQgYGBDYXN0eScnIEVsYWRyaWVsIGRlbiBNaXRocmlscGFuemVyLgpgYENhc3R5JycgRWxhZHJpZWwgZ2lidCBTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIGRlbiBNaXRocmlscGFuemVyLgpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIHppZWh0IGVpbmVuIE1pdGhyaWxwYW56ZXIgYW4uClR1YXJlZyBrb21tdCBhbi4KVHVhcmVnIHNwcmljaHQgZWluIHBhYXIgYmVydWhpZ2VuZGUgV29ydGUuClR1YXJlZyBzdGlmdGV0IEZyaWVkZW4uClFpdGVzcyBydWZ0OiBieWUgbm93IC4uLgpUdWFyZWcgZ2VodCBuYWNoIFdlc3Rlbi4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiB6aWVodCBlaW5lbiBNaXRocmlscGFuemVyIGF1cy4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBnaWJ0IGBgQ2FzdHknJyBFbGFkcmllbCBkZW4gTWl0aHJpbHBhbnplci4KYGBDYXN0eScnIEVsYWRyaWVsIGdpYnQgU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBkZW4gTWl0aHJpbHBhbnplci4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiB6aWVodCBlaW5lbiBNaXRocmlscGFuemVyIGFuLgpbS2xlcnVzOktpbnRhcmFdIEdyYXRzIQpbQmVpbGVpZDpMZVRpYyBkZW5rdCwgZGFzcyBkaWUgaGV1dGUgc2Nob24gZ2VudWcgVk9MTFNUUkVDS1QgaGFiZW5dClNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gemllaHQgZWluZW4gTWl0aHJpbHBhbnplciBhdXMuClNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gZ2lidCBgYENhc3R5JycgRWxhZHJpZWwgZGVuIE1pdGhyaWxwYW56ZXIuCmBgQ2FzdHknJyBFbGFkcmllbCBnaWJ0IFNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gZGVuIE1pdGhyaWxwYW56ZXIuClNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gemllaHQgZWluZW4gTWl0aHJpbHBhbnplciBhbi4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiB6aWVodCBlaW5lbiBNaXRocmlscGFuemVyIGF1cy4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBnaWJ0IGBgQ2FzdHknJyBFbGFkcmllbCBkZW4gTWl0aHJpbHBhbnplci4KYGBDYXN0eScnIEVsYWRyaWVsIGdpYnQgU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBkZW4gTWl0aHJpbHBhbnplci4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiB6aWVodCBlaW5lbiBNaXRocmlscGFuemVyIGFuLgpbS2xlcnVzOkxpZ2h0bmluZ10gRGFua2UgOikKU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiB6aWVodCBlaW5lbiBNaXRocmlscGFuemVyIGF1cy4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBnaWJ0IGBgQ2FzdHknJyBFbGFkcmllbCBkZW4gTWl0aHJpbHBhbnplci4KYGBDYXN0eScnIEVsYWRyaWVsIGdpYnQgU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBkZW4gTWl0aHJpbHBhbnplci4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiB6aWVodCBlaW5lbiBNaXRocmlscGFuemVyIGFuLgpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIHppZWh0IGVpbmVuIE1pdGhyaWxwYW56ZXIgYXVzLgpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIGdpYnQgYGBDYXN0eScnIEVsYWRyaWVsIGRlbiBNaXRocmlscGFuemVyLgpgYENhc3R5JycgRWxhZHJpZWwgZ2lidCBTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIGRlbiBNaXRocmlscGFuemVyLgpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIHppZWh0IGVpbmVuIE1pdGhyaWxwYW56ZXIgYW4uClNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gemllaHQgZWluZW4gTWl0aHJpbHBhbnplciBhdXMuClNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gZ2lidCBgYENhc3R5JycgRWxhZHJpZWwgZGVuIE1pdGhyaWxwYW56ZXIuCmBgQ2FzdHknJyBFbGFkcmllbCBnaWJ0IFNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gZGVuIE1pdGhyaWxwYW56ZXIuClNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gemllaHQgZWluZW4gTWl0aHJpbHBhbnplciBhbi4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiB6aWVodCBlaW5lbiBNaXRocmlscGFuemVyIGF1cy4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBnaWJ0IGBgQ2FzdHknJyBFbGFkcmllbCBkZW4gTWl0aHJpbHBhbnplci4KYGBDYXN0eScnIEVsYWRyaWVsIGdpYnQgU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBkZW4gTWl0aHJpbHBhbnplci4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiB6aWVodCBlaW5lbiBNaXRocmlscGFuemVyIGFuLgpbS2xlcnVzOkxlbWJvbGRdIEhvZXJldCwgR2xhZXViaWdlISBWb24gU3R1bmQgYW4gaXN0IEJydWRlciBMaWdodG5pbmcgbWVpbgpbS2xlcnVzOkxlbWJvbGRdIEhvaGVwcmllc3RlciEKU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiB6aWVodCBlaW5lbiBNaXRocmlscGFuemVyIGF1cy4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBnaWJ0IGBgQ2FzdHknJyBFbGFkcmllbCBkZW4gTWl0aHJpbHBhbnplci4KYGBDYXN0eScnIEVsYWRyaWVsIGdpYnQgU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiBkZW4gTWl0aHJpbHBhbnplci4KU2FpIExlbnogRWlzZW5naWVzc2Vyc29obiB6aWVodCBlaW5lbiBNaXRocmlscGFuemVyIGFuLgpbS2xlcnVzOk1pZXplXSBHUkFUUwpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIHppZWh0IGVpbmVuIE1pdGhyaWxwYW56ZXIgYXVzLgpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIGdpYnQgYGBDYXN0eScnIEVsYWRyaWVsIGRlbiBNaXRocmlscGFuemVyLgpgYENhc3R5JycgRWxhZHJpZWwgZ2lidCBTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIGRlbiBNaXRocmlscGFuemVyLgpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIHppZWh0IGVpbmVuIE1pdGhyaWxwYW56ZXIgYW4uCltLbGVydXM6TGlnaHRuaW5nXSBIaWhpCltLbGVydXM6TmFjaHR3aW5kXSBHUkFUUyEgOikpCltLbGVydXM6SGFuZ292ZXJdIE9oLi4uIDotKQpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIHppZWh0IGVpbmVuIE1pdGhyaWxwYW56ZXIgYXVzLgpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIGdpYnQgYGBDYXN0eScnIEVsYWRyaWVsIGRlbiBNaXRocmlscGFuemVyLgpgYENhc3R5JycgRWxhZHJpZWwgZ2lidCBTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIGRlbiBNaXRocmlscGFuemVyLgpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIHppZWh0IGVpbmVuIE1pdGhyaWxwYW56ZXIgYW4uClNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gemllaHQgZWluZW4gTWl0aHJpbHBhbnplciBhdXMuClNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gZ2lidCBgYENhc3R5JycgRWxhZHJpZWwgZGVuIE1pdGhyaWxwYW56ZXIuCmBgQ2FzdHknJyBFbGFkcmllbCBnaWJ0IFNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gZGVuIE1pdGhyaWxwYW56ZXIuClNhaSBMZW56IEVpc2VuZ2llc3NlcnNvaG4gemllaHQgZWluZW4gTWl0aHJpbHBhbnplciBhbi4KW0tsZXJ1czpLaW50YXJhXSBNZWluZSBHdWV0ZS4uLiBHUkFUUyEhIQpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIHppZWh0IGVpbmVuIE1pdGhyaWxwYW56ZXIgYXVzLgpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIGdpYnQgYGBDYXN0eScnIEVsYWRyaWVsIGRlbiBNaXRocmlscGFuemVyLgpgYENhc3R5JycgRWxhZHJpZWwgZ2lidCBTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIGRlbiBNaXRocmlscGFuemVyLgpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIHppZWh0IGVpbmVuIE1pdGhyaWxwYW56ZXIgYW4uCltLbGVydXM6S2Fyb2xdIGdyYXRzOi0pKQpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIHppZWh0IGVpbmVuIE1pdGhyaWxwYW56ZXIgYXVzLgpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIGdpYnQgYGBDYXN0eScnIEVsYWRyaWVsIGRlbiBNaXRocmlscGFuemVyLgpgYENhc3R5JycgRWxhZHJpZWwgZ2lidCBTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIGRlbiBNaXRocmlscGFuemVyLgpTYWkgTGVueiBFaXNlbmdpZXNzZXJzb2huIHppZWh0IGVpbmVuIE1pdGhyaWxwYW56ZXIgYW4uCgoKaWNoIGdsYXViZSBkaWUgcmFldWJlciB3b2xsZW4gbnVyIGxhZyBlcnpldWdlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NobGFuZ2VzdGVoZW4gYmVpbSBUT0QgKEFzbW9kaXMsIDMwLiBPa3QgMTk5NywgMjA6MTc6NTApOgpiZXNjaHdvZXJlIGJvdHRvbQoKRHUgbXVybWVsc3QgZWluIHBhYXIgdW52ZXJzdGFlbmRsaWNoZSBXb3J0ZSwgbWFjaHN0IGVpbmlnZSBiZXNjaHdvZXJlbmRlCkdlc3RlbiB1ZWJlciBkZXIgS3VnZWwsIHVuZCBEdSBzaWVoc3Q6CkVpbiBkdW5rbGVyIFJhdW0sIGVybGV1Y2h0ZXQgdm9uIGR1bmtsZW0gTGljaHQsIGRhcyBzaWNoIGRlciBEdW5rZWxoZWl0IG5pY2h0CnNvIHNlaHIgenUgd2lkZXJzZXR6ZW4gc2NoZWludCwgaW5kZW0gZXMgbGV1Y2h0ZXQsIGFscyBkYXNzIGVzIGRlciBkdW5rZWxzdGUKUHVua3QgaW4gZWluZXIgd2VuaWdlciBkdW5rbGVuIFVtZ2VidW5nIGlzdC4gSW0gc2VsdHNhbWVuIExpY2h0IGVya2VubnN0IER1IAplaW5lbgp6ZW50cmFsIGF1Zmdlc3RlbGx0ZW4gU2NocmVpYnRpc2NoLCBkZXIgbWl0IERpYWdyYW1tZW4gdW5kIEJ1ZWNoZXJuIGJlZGVja3QgCmlzdC4KRGllIFdhZW5kZSB2ZXJzY2h3aW5kZW4gaGludGVyIFJlZ2FsZW4sIGRpZSBnZWZ1ZWxsdCBzaW5kIG1pdCBpbiBMZWRlciBnZS0KYnVuZGVuZW4sIGR1bmtsZW4gV2FlbHplcm4sIHZvbiBkZW5lbiBnZWhlaW1uaXN2b2xsZSBSdW5lbiBsZXVjaHRlbi4KVG9kLgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgpEZXIgR2Vpc3Qgdm9uIEJvdHRvbS4KRGVyIEdlaXN0IHZvbiBTbG9hbmUuCkRlciBHZWlzdCB2b24gVHlsYWsuCgogSG1tLCBmdWVyIG5lIFNrYXRydW5kZSByZWljaHRzIGphIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmljaHQgdWViZXJ0cmVpYmVuIChBc21vZGlzLCAzMC4gT2t0IDE5OTcsIDIxOjU3OjE2KToKW0FsbGdlbWVpbjpKZW1hbmRdIEhhbGxvIHVuZCBUc2NodWVzcyA6KQpbQWxsZ2VtZWluOlJpa3VzXSBjdQpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJhZXViZXIgKFd1cnplbCwgMzAuIE9rdCAxOTk3LCAyMjo1NDozNik6Cn4jISBybj1HcmVuZHVsYSBydD04NzgyMjk1MzUgcmc9c2NobWFycm4KfiMhIHRpZD04NzgyMjk1MzUKZGFzIGlzdCBhbGxlcyB0YWt0aWsuIHdlbm4gZGllIGxhZyBlcnpldWdlbiwga29tbXQgZGVyIHNwaWVsZXIga2F1bSBub2NoCnp1bSB6dWcuLi4gcm9jaHVzIG51dHp0IGViZW4gYWxsZSB0cmlja3MgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmFldWJlciAoR25vbWUsIDMxLiBPa3QgMTk5NywgMDg6Mzk6NTApOgp+IyEgcm49V3VyemVsIHJ0PTg3ODI0ODQ3NiByZz1zY2htYXJybgp+IyEgdGlkPTg3ODIyOTUzNQpkaWUgc3Bpbm5lbiwgZGllIHJvZS4uLiBhZWggcmFldWJlciA6KQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYXMgc2NobGVjaHRlIEdld2lzc2VuIChCb2luZywgMzEuIE9rdCAxOTk3LCAxMDoxMjoxNSk6Cn4jISBybj1NYWhhdG1hIHJ0PTg3ODIwODQ3MiByZz1zY2htYXJybgp+IyEgdGlkPTg3ODIwODQ3MgpEYSBtdXNzIGljaCBkb2NoIGtlaW4gc2NobGVjaHRlcyBHZXdpc3NlbiBoYWJlbiEgVHdlZWcgaXN0IGRvY2ggZGVyClNjaGFlbmRsaWNoZSBNZW5zY2ggKEVsZiwgWndlcmcsIHdhc3dlaXNzaWNoKSwgZGVyIGhpZXIgbWVpbiBsaWViZXMsCm5ldHRlcyBEcmFlY2hlbGNoZW4gYW5nZWdyaWZmZW4gaGF0LiBEYXNzIGRlciBzaWNoIGRhbm4gd2VocnQgaXN0IGphCndvaGwgbnVyIG5hdHVlcmxpY2gsIHd1ZXJkZXQgaWhyIHNjaGxpZXNzbGljaCBhdWNoIG1hY2hlbi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG1tIChBc21vZGlzLCAzMS4gT2t0IDE5OTcsIDEzOjExOjM4KToKW0FsbGdlbWVpbjpTcmFiaV0gaGhoaGhpaWlpaWlsbGxsbGxmZmZmZmVlZWVlZWUKW0FsbGdlbWVpbjpCZWVsemVidWJdIGhhc3RlIExpY2h0ID8KW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIGd1Z2d1ZyEhISEKCiAgSG1tLCB3aWxsIENhdCogaGVsZmVuIG9kZXIgaXN0IGlobSBlaW4gTGljaHQgYXVmZ2VnYW5nZW4gPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWhqYSAoTmFpcm9sZiwgMzEuIE9rdCAxOTk3LCAxNzozOTo1MSk6CgoKVHVhcmVnIHRlaWx0IERpciBtaXQ6IGFiZXIgYWxsZXMgaW4gYWxsZW0gYmluIGljaCB6dSBsYW5nc2FtIDspCgoKLi4uIHdpc3NlbiB3aXIgZG9jaC4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBsdW1wcyEgKE1pbmRibGFkZSwgIDEuIE5vdiAxOTk3LCAwMzowNzowNyk6CkR1IHRlaWxzdCBFem8gbWl0OiBobSBiaXNjaGVuIGRyYWtvbmllbj8KPiBFem8gdGVpbHQgRGlyIG1pdDogb2tpLCBiaW4gc2Nob24gZG9ydApbVG9kOkxhcnNdIEVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsIGhhdCBnZXJhZGUgRXpvIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWxdIFBmZmZmZmZmZmZmZnQuLi4uLi4uUExVTVBTIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnVlciBtaW5kYmxhZGUgKE5hY2h0d2luZCwgIDIuIE5vdiAxOTk3LCAyMjoyMzoxMyk6Cm5pZSBtZWhyIG5peCBuZXVlcyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmthZW1wZmVyZ2lsZGUgKEJpcmR5LCAgMy4gTm92IDE5OTcsIDE2OjMyOjQzKToKCm5ldWxpY2ggZGFzIGVyc3RlIG1hbCBkaWUga2FlbXBmZXJnaWxkZSBiZXN1Y2h0LCBoYXR0ZSBncmFkIGxhbmdld2VpbGU6CkRpZXMgc2NoZWludCBkZXIgQXVmZW50aGFsdHNvcnQgZGVyIGdlcmFkZSB3YWNoaGFiZW5kZW4gVHJ2ZXMgenUgc2Vpbi4gQW4KZWluZW0gVGlzY2ggc2l0emVuIHp3ZWkgS3JpZWdlciBkZXIgU3RydXZ3YWNoZSBpbiBmYWNodGVjaG5pc2NoZXMgR2VzcHJhZWNoCnZlcnRpZWZ0LCB3YWVocmVuZCBlaW4gYmVzdHVlY2t0ZXIgV2FmZmVuc3RhZW5kZXIgaW4gZGVyIEVja2UgZGllIFdlaHJoYWZ0aWctCmtlaXQgZGVyIFdhY2hlIGRva3VtZW50aWVydC4gSW4gZGVyIE9zdGVja2UgZnVlaHJ0IGVpbmUgZW5nZSBXZW5kZWx0cmVwcGUgbmFjaApvYmVuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgb2JlbiB1bmQgbm9yZGVuLgpHcm9nZyBacidrdW1wZi4KWXphZyBaaG9yLgp1bnQgd2FmZmVuc3RhZW5kZXIKSGllciBoYWJlbiBzb2dhciBkaWUgV2FmZmVuIGVpbmVuIFN0YWVuZGVyLgoKQmlyZHkgZmluZGV0IGRhcyBhZWhtIG5hamEgZXR3YXMgdW5wYXNzZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZToga2FlbXBmZXJnaWxkZSAoV3VyemVsLCAgMy4gTm92IDE5OTcsIDE4OjQ4OjUxKToKfiMhIHJuPUJpcmR5IHJ0PTg3ODU3MTE2MyByZz1zY2htYXJybgp+IyEgdGlkPTg3ODU3MTE2Mwp1bnBhc3NlbmQgaXN0IGRhIHdvaGwgaG9lY2hzdGVucyBkZWluZSBhc3NvemlhdGlvbi4uLiBzY2hhZW0gZGljaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHVOaXhHdXQgU3Vlc3NTYXVlci4uLiAoVHVuaXhndXQsICA0LiBOb3YgMTk5NywgMTI6NTA6MzUpOgpDbGF5bW9yZSBydWZ0OiBob2xsYSBpaHIgc3Vlc3NlbiEhISA/PgpEdSBydWZzdDogV2VubiBtaWNoIG5vY2ggZWlubWFsIGplbWFuZCBTVUVTU0VSIG5lbm50LCB3ZXJkJyBpY2ggZXJuc3RoYWZ0CkR1IHJ1ZnN0OiBzYXVlci4uLgpLZXkgcnVmdDogU3Vlc3NlciEKRHUgcnVmc3Q6IFdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSEguLi4uLgpDbGF5bW9yZSBydWZ0OiBTVUVVRVNTU1NFUiAhISEhIQpKYXNvbnJpZ2lkIHJ1ZnQ6IGljaCBkYWNodGUsIGRhcyB3YWVyZSBzaGFoaXMgam9iIDopCkdlcmFNaWcgdGVpbHQgRGlyIG1pdDogaGVpIFN1ZXNzZXIgISEKU3VnYWFuIHRlaWx0IERpciBtaXQ6IEhhbGxvIFN1ZXNzZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgIDQuIE5vdiAxOTk3LCAxNDoxNzo0Mik6CiJUcmVpYiBlaW4gUGZlcmQgbmljaHQgbWl0IFNjaGxhZWdlbiBhbiwgc29uZGVybiBtaXQgSGFmZXIiCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBrYWVtcGZlcmdpbGRlIChUZWRkeSwgIDQuIE5vdiAxOTk3LCAxNzoxNToxNik6Cn4jISBybj1CaXJkeSBydD04Nzg1NzExNjMgcmc9c2NobWFycm4KfiMhIHRpZD04Nzg1NzExNjMKRWluIGJvZXNlciBNZW5zY2gsIGRlciBib2VzZXMgZGFiZWkgZGVua3QuIDstKQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZpZWhjaGVyZWllbi4uLiAoU2hhaGksICA1LiBOb3YgMTk5NywgMTU6Mjg6MjkpOgpbQWJlbnRldWVyOkFnYW1lbm9uXSBpY2ggYmluIHZvbiBuZXIgbWV1Y2tlCmdlYmlzc2VuIHdvcmRlbi4uLndhcyBoaWxmdD8KW0FiZW50ZXVlcjpEYXJ5bF0ga3JhdHplbgpbQWJlbnRldWVyOkFyZW1ldGlzXSBqdWNrZW4KW0FiZW50ZXVlcjpGeXRdICdrcmF0emUgc3RpY2gnCltBYmVudGV1ZXI6Q2xheW1vcmVdIHNjaGFiZW4gLCBzYWxiZQpbQWJlbnRldWVyOkZ5dF0ga2FrZXJsYWtlbj8KW0FiZW50ZXVlcjpBZ2FtZW5vbl0gaHVwcHMuLi5qZXR6dCB3aXJkIGVyIGRpY2suLi4ud2llIHNjaGFiZW4uLndhcyBuZQpbQWJlbnRldWVyOkFnYW1lbm9uXSBzYWxiZT8/a2FubiBkYXMgdG9lZGxpY2ggZW5kZW4/CltBYmVudGV1ZXI6QXJlbWV0aXNdIGljaCBkZW5rZSBzY2hvbgpbQWJlbnRldWVyOkNsYXltb3JlXSBzY2hhYmVuIHZvbiBzY2hhYmVuIHZvbiBrcmF0emVuISEKW0FiZW50ZXVlcjpBZ2FtZW5vbl0gYWNoIGR1IHNjaGVpc3NlCltBYmVudGV1ZXI6Rnl0XSBqYSwgc2NoYWJlbiBtYWNoZW4ga3JhdHplbmRlIGdlcmFldXNjaGUuLi4KW0FsbGdlbWVpbjpTaGFoaSBncmluc3QgRnl0IGF1cyBkZXIgRmVybmUgenUuXQpbQWJlbnRldWVyOkNsYXltb3JlXSBhYmVyIG51ciB3ZW5uIHNpZSBrZWluZSBzY2h1aGUgYW5oYWJlbiEhCltBYmVudGV1ZXI6QWdhbWVub25dIHNjaGFiZW4ga2FubiBtYW4gemVydHJldGVuLCBkYW5uIG1hY2hlbiBzaWUgbnVyCltBYmVudGV1ZXI6QWdhbWVub25dICpwZmxhdHNjaCoKW0FsbGdlbWVpbjpGeXRdIGd1Y2t0IHVuc2NodWxkaWcgdW1oZXIKW0FsbGdlbWVpbjpTaGFoaSBoYXQgc2Nob24gU2NoYWJlbiBzZXppZXJ0Li4uLmJvYWggd2FyZW5kaWUgRkVUVElHISEhISFdCltBbGxnZW1laW46U2hhaGldIE5lLCBkaWUga25hY2tlbiEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKW0FsbGdlbWVpbjpBZ2FtZW5vbl0gZXJzdCBrbmFja2VuIGRhbm4gKnBmbGF0c2NoKiA7LSkKW0FiZW50ZXVlcjpDbGF5bW9yZV0gbmVlIGRpZSBzdGVwcGVuICEhISA6PgpbQWxsZ2VtZWluOkZ5dCBkZW5rdDogLiBvIE8gKCBkaWUgaXMgamEgZWtsaWcgKV0KW0FsbGdlbWVpbjpBZ2FtZW5vbl0gZXJzdCBrbmFja2VuIGRhbm4gKnBmbGF0c2NoKiA7LSkKW0FiZW50ZXVlcjpDbGF5bW9yZV0gbmVlIGRpZSBzdGVwcGVuICEhISA6PgpbQWxsZ2VtZWluOkZ5dCBkZW5rdDogLiBvIE8gKCBkaWUgaXMgamEgZWtsaWcgKV0KW0FsbGdlbWVpbjpGeXQgd3VlcmRlIFNoYWhpIGF1Y2ggbmljaHQgZXNzZW4gd29sbGVuLi4uXQpbQWxsZ2VtZWluOlNoYWhpIGtvbW10IGxhY2hlbmQgd2llZGVyIHVudGVybSBUaXNjaCB2b3IuLi4uLi4uc2llIHNjaG1lY2t0CiAgICAgICAgICAgc2ljaGVyIGF1Y2ggbmljaC4uLjspXQpbQWJlbnRldWVyOkFnYW1lbm9uXSBibG9lZHNpbm5pZ2UgbXVlY2tlIGRhcyAqZ3J1bW1lbCoKW0FiZW50ZXVlcjpBZ2FtZW5vbiBmYWVocnQgZmFocnN0dWhsIHVuZCBrcmF0enRdCgpKYSwgYmxvZWRzaW5uaWcgd3VlcmRlIGljaCBkYXMgYXVmIGFsbGUgRmFlbGxlIG5lbm5lbi4uLi47KQoKU2hhaGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvcnNpY2h0ISAoTWllemUsICA1LiBOb3YgMTk5NywgMTc6MzY6MjQpOgoKRWJlbiBhdWYgV2FyZ29ucyBmbGllZ2VuZGVtIFRlcHBpY2g6CgoKRGVpbiBXZWNrZXIga2xpbmdlbHQgYmVpIEZyZXVuZC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgo+IDxSdWVscHMhPiBCVU1NISAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCkVpbiBTdHVlY2sgU3VtcGZkcmFjaGUgdmVyZmVobHQgRGljaCBudXIga25hcHAuCgovIFNvIHNjaGxpbW0gZGFzIFdlY2tlbiwgRnJldW5kPyA6KQoKRWluZSBNaWV6ZSAoZ3JpbnN0IGltbWVybm9jaCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNhbXVyYWkgKFNoYXJpYSwgIDUuIE5vdiAxOTk3LCAyMDoyMToyOSk6Cn4jISBvbj1TaGFyaWEgb3Q9ODc4NzU3NjU0IG9nPWdpbGRlbi56YXViZXJlcgp+IyEgcm49S2V5IHJ0PTg3ODc1NzYwOCByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD04Nzg3Mjg4ODYKdW5kIGRhbWl0IGRlciBhcnRpa2VsIHZvbGxzdGFlbmRpZyBpcyB2b24gS2V5OgoKdGVpbGUga2V5IG1pdCBzY2hsZWllciA6KSkpKQoKLS0+IHNjaG1hcnJuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bm1hcmtpZXJ0ZSBad2VpdGllcyAoSGFyZGlsLCAgNi4gTm92IDE5OTcsIDEwOjE1OjI0KToKCkljaCBoYWJlIGVzIHNjaG9uIGltbWVyIGdld3Vzc3QsIHVuZCBkYXMgemVpdGdsZWljaGUgRWlubG9nZ2VuIGRpZXNtYWwgaGF0IGVzCmJlc3RhZXRpZ3Q6CkdyaW1tYm9ybiAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpPcmt0b2V0ZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCkxvZXNjaGVuIQpCZWlkZSEgOi0pCgotSGFyZGlsLiBIZXV0ZSBtYWwgYXVmIEFCTS1TdWNoZSBmdWVyIEhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2ljaGVyaGVpdCAoQWNyaW1vbiwgIDYuIE5vdiAxOTk3LCAxNDoxODowNik6CgpnZXJhZGUgaW0gRHVlc3RlcndhbGQ6Cgo+IHNjaGF1IGhhdXQKRGFmdWVyIHJlaWNodCBEZWluZSBTaWNoZXJoZWl0c2VpbnN0dWZ1bmcgbmljaHQgYXVzLgoKSWNoIHdpbGwgZG9jaCBibG9zeiBzY2hhdWVuIG9iIG1laW5lIEhhdXQgZHJlY2tpZyBpc3QgOi0pCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClppdHRlcm4gKEFjcmltb24sICA2LiBOb3YgMTk5NywgMTg6MDI6MTApOgo+IHNjaGF1IHNjaHJpdHQKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KU2Nocml0dCBmdWVyIFNjaHJpdHQKVHJpdHQgZnVlciBUcml0dApHZWhlbiB3aXIgZHVyY2hzIExlYmVuCkxlYmVuIHVuZCBTdHJlYmVuCgpXYXMgZnVlciBlaW4gc2Nob2VuZXMgR2VkaWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggaW0gV2Fyb2suLi4gKE1vcmdhciwgIDYuIE5vdiAxOTk3LCAxODoyNDozMyk6CkR1IHN0ZWhzdCBpbiBlaW5lciBkdW5rbGVuIEhvZWhsZSB1bnRlciBkZW0gRHJlaXNwaXR6LUdsZXRzY2hlci4gRGllIFdhZW5kZQpzaW5kIGdyb2IgYmVoYXVlbiB1bmQgZXMgc3Rpbmt0IGVyYmFlcm1saWNoLiBPZmZlbmJhciBoYXVzZW4gaGllciBpcmdlbmR3ZWxjaGUKcHJpbWl0aXZlIExlYmV3ZXNlbiwgZGVuZW4gRHUgbGllYmVyIG5pY2h0IHNvIHNjaG5lbGwgYmVnZWduZW4gbW9lY2h0ZXN0LgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4gdW5kIG5vcmRlbi4KRWluIFRlYXIuCkVpbiBUZWFyLgpFaW4gVGVhci4KRWluZSBLdXBmZXJydWVzdHVuZyAoYW5nZXpvZ2VuKS4KCk1vcmdhciBmcmFndCBzaWNoLCB3aWUgZWluZSBhbmdlem9nZW5lIFJ1ZXN0dW5nIHdvIHJ1bWxpZWdlbiBrYW5uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpwcm9tcHRlIGJlZGllbnVuZyAoSmFuaXR6ZSwgIDYuIE5vdiAxOTk3LCAxOToxOToxNSk6CmFsc28gZGFzIGZpbmQgaWNoIHRvbGw6CiBubgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0Lgo+ICogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBTaWx2YW5hIGluIFJ1YnJpayAiZ2lsZGVuLnphdWJlcmVyIi4gICAKCmFsbGVzIGluIGVpbmVtIGFid2FzY2ggOikKSmFuaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHByb21wdGUgYmVkaWVudW5nIChSb25kYSwgIDYuIE5vdiAxOTk3LCAxOToyMToxNik6Cn4jISBybj1KYW5pdHplIHJ0PTg3ODg0MDM1NSByZz1zY2htYXJybgp+IyEgdGlkPTg3ODg0MDM1NQoqZ3JpbnMqIEthbm5zdCBEdSBlaW5mYWNoZXIgaGFiZW4sIHNldHogRGlyIGFscyBNYWlsbWVsZHVuZyBuaWNodCAiTml4Ck5ldWVzLi4uIiBzb25kZXJuICIqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gUm9uZGEgaW4gUnVicmlrICJzY2htYXJybiIuIgoKICAgICAgUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBuZXVsaWNoIGltIFdhcm9rLi4uIChUZWRkeSwgIDYuIE5vdiAxOTk3LCAyMTowODo0NSk6Cn4jISBybj1Nb3JnYXIgcnQ9ODc4ODM3MDczIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc4ODM3MDczCkdhciBrZWluIFByb2JsZW0sIHBhc3NpZXJ0IG9lZnRlciwgbWVpbiAydGllIGtvbm50ZSBuYWNoIGRlbSBUb2QgbmljaHRtYWwgbmUKTmV1ZSBhbnppZWhlbiwgd2VpbCBpaHJlIEFsdGUgYW5nZXpvZ2VuIGlyZ2VuZHdvIHJ1bWxhZwoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbmV1bGljaCBpbSBXYXJvay4uLiAoUmluZ29yLCAgNy4gTm92IDE5OTcsIDAwOjU0OjM3KToKfiMhIHJuPVRlZGR5IHJ0PTg3ODg0NjkyNSByZz1zY2htYXJybgp+IyEgdGlkPTg3ODgzNzA3MwpEYXMga29tbXQgaW1tZXIgZGFubiB2b3IsIHdlbm4gZGllIFJ1ZXN0dW5nIHZlcmZsdWNodCB3YXIuIFVuZCB6d2FyLCBzZWl0ZGVtCmVpbiBsaWViZXIgTWFnaWVyIHN0aWxsIHVuZCBoZWltbGljaCBkZW4gVG9kZXNyYXVtIGdlYWVuZGVydCBoYXQgLSB1bmQgendhciBpbgpkaWUgZW50Z2VnZW5nZXNldHp0ZSBSaWNodHVuZyB2b24gZGVtLCB3YXMgaWNoIGRhbWFscyB2b3JnZXNjaGxhZ2VuIGhhYmUgO14pCgpEYXMgUHJvYmxlbSBkYW1hbHMgd2FyLCBkYXNzIG1hbiB2ZXJmbHVjaHRlIGJ6dy4gbm9kcm9wLVNhY2hlbiwgZGllIGFiZXIgbmljaHQKYXV0b2xvYWQgc2luZCwgYmVpIGVpbmVtICdlbmRlJyBpbSBUb2Rlc3JhdW0gdmVybGllcnQsIHVuZCBuaWUgd2llZGVyCmRyYW5rb21tZW4ga2Fubi4gU3RhdHQgZWluZmFjaCAnZW5kZScgaW0gVG9kZXNyYXVtIHp1IHZlcmJpZXRlbiAod2FzIGZ1ZXIKZWluZW4gU2lubiBtYWNodCBkZXIgQmVmZWhsIGRhIGVpZ2VudGxpY2g/KSB3ZXJkZW4gamV0enQgYXVjaCB2ZXJmbHVjaHRlClNhY2hlbiB6d2FuZ3MtYXVzZ2V6b2dlbiwgd2FzIGluIHJ1bWxpZWdlbmRlbiBhbmdlem9nZW5lbiBFaGVyaW5nZW4sClJ1ZXN0dW5nZW4gZXRjLiByZXN1bHRpZXJ0LgoKQWxzIGtsZWluZW4gV29yay1Bcm91bmQsIGJpcyBkZXIgRmVobGVyIGJlaG9iZW4gaXN0OiBuYWNoICdlbmRlJyBrYW5uIG1hbiBkaWUKU2FjaGVuLCBkaWUgbWFuIGFuZ2VibGljaCBqYSBub2NoIGFuZ2V6b2dlbiBoYXQsIHdlbmlnc3RlbnMgd2llZGVyIGFuemllaGVuLgoKUmluZ29yIHdhZXJtdCBhbHRlIEJ1Z3Mgd2llZGVyIGF1Zi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1c3JlaXNzZXIgKFJpa3VzLCAgNy4gTm92IDE5OTcsIDEwOjI0OjU1KToKdG0geWFudHJvIGhhc3QgZHUgbWFsIGV0d2FzIHplaXQ/CllhbnRybyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKS2VpbiBzb2xjaGVyIFNwaWVsZXIhCgpSaWt1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2hpdCBIYXBwZW5zIChJdm8sICA3LiBOb3YgMTk5NywgMTA6MjU6MTcpOgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogZGFybSB1bmQgc3BlaXNlcm9laHJlLgpFaW4gTWFnZW5zYWV1cmVtb25zdGVyLgpJdm8gc2FndDogQWNoIEl3by4KSXdvIGdyZWlmdCBlaW4gTWFnZW5zYWV1cmVtb25zdGVyIG1pdCBicmVubmVuZGVuIEhhZW5kZW4gYW4uCkl3byB6ZXJzY2htZXR0ZXJ0IGRhcyBNYWdlbnNhZXVyZW1vbnN0ZXIgaW4ga2xlaW5lIFN0dWVja2NoZW4uCkl3byBncmVpZnQgZWluIE1hZ2Vuc2FldXJlbW9uc3RlciBtaXQgYnJlbm5lbmRlbiBIYWVuZGVuIGFuLgpJd28gdHJpZmZ0IGRhcyBNYWdlbnNhZXVyZW1vbnN0ZXIgc2VociBoYXJ0LgpEdSBzYWdzdCBkYXMgbWFnaXNjaGUgV29ydDogRlJFSUJJRVIhISEKRHUgc3BlbmRpZXJzdCBkZW4gQW53ZXNlbmRlbiBlaW4gQmllci4KSXdvIGdyZWlmdCBlaW4gTWFnZW5zYWV1cmVtb25zdGVyIG1pdCBicmVubmVuZGVuIEhhZW5kZW4gYW4uCkl3byBzY2hsYWVndCBkYXMgTWFnZW5zYWV1cmVtb25zdGVyIHp1IEJyZWkuCkl3byBncmVpZnQgZWluIE1hZ2Vuc2FldXJlbW9uc3RlciBtaXQgYnJlbm5lbmRlbiBIYWVuZGVuIGFuLgpJd28gc2NobGFlZ3QgZGFzIE1hZ2Vuc2FldXJlbW9uc3RlciBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgpEYXMgTWFnZW5zYWV1cmVtb25zdGVyIGdyZWlmdCBEaWNoIGFldHplbmQsIHRyaWVmZW5kLCBzYWJiZXJuZCBhbi4KTWFnZW5zYWV1cmVtb25zdGVyIDIwIC0gMTAgJQpEYXMgTWFnZW5zYWV1cmVtb25zdGVyIHRyaWZmdCBEaWNoIGhhcnQuCkRpZSBNb2xsdXNrZSBpc3QgZmVzdCBtaXQgRGVpbmVyIEhhdXQgdmVyd2FjaHNlbiEKRHUgemllaHN0IGRlbiBBbnRpLUZldWVyLVJpbmcgYXVzLgpbVG9kOkxhcnNdIEVpbiBNYWdlbnNhZXVyZW1vbnN0ZXIgaGF0IGdlcmFkZSBJdm8gdW1nZWJyYWNodC4KRGFzIGhhdCBtYW4gZGF2b24sIHdlbm4gbWFuIHNpY2ggYXVmIGVpbmVuIFNwcnVjaCB2ZXJsYWVzc3QsIGRlciBpbiBkZXIKV2lya3VuZyBjYS4gMSBIZWFydGJlYXQgVmVyem9lZ2VydW5nIGhhdC4KRGFzIFNoYWt5LVNwZWxsYm9vayBhbiBhcmdlbG5kIEl2bwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZvcnNpY2h0ISAoQWxpbmUsICA3LiBOb3YgMTk5NywgMTE6Mzk6MTYpOgp+IyEgcm49TWllemUgcnQ9ODc4NzQ3Nzg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc4NzQ3Nzg0CgpIbW0gTWllemUsCgppY2ggZnJhZyBtaWNoIGFsbGVyZGluZ3Mgd2FzIER1IGF1ZiBkZW0gVGVwcGljaAptZWluZXMgRWhlbGllYnN0ZW4genUgc3VjaGVuIGhhdHRlc3Q/CgpBbGluZSBiZWZ1ZXJjaHRldCwgZGFzcyBoaWVyIHdpZWRlciB3YXMgdW50ZXIgZGVuIFRlcHBpY2ggZ2VrZWhydCB3aXJkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBuZXVsaWNoIGltIFdhcm9rLi4uIChXdXJ6ZWwsICA3LiBOb3YgMTk5NywgMTI6MTc6MjYpOgp+IyEgcm49UmluZ29yIHJ0PTg3ODg2MDQ3NyByZz1zY2htYXJybgp+IyEgdGlkPTg3ODgzNzA3Mwp3YXJ1bSBlbmRlIG1hY2hlbj8gYW5nZXpvZ2VuZSBydWVzdHVuZ2VuLCBkaWUgaXJnZW5kd28gcnVtbGllZ2VuLCBoYWJlbiBlaW5lbgpncm9zc2VuIHZvcnRlaWwuLi4gc2llIHdpZWdlbiBuaWNodHMgdW5kIHNjaHVldHplbiB0cm90emRlbSA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IG5ldWxpY2ggaW0gV2Fyb2suLi4gKFJpbmdvciwgIDcuIE5vdiAxOTk3LCAxNDozNzowOSk6Cn4jISBybj1XdXJ6ZWwgcnQ9ODc4OTAxNDQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc4ODM3MDczCkFiZXIgYW5nZXdhY2hzZW5lIFNjaGxlaW1rbHVtcGVuLCBkaWUgaXJnZW5kd28gcnVtbGllZ2VuLCBsaWVmZXJuIGtlaW5lIG5ldHRlbgpJbmZvcyBtZWhyLiBVbmQgbmVuIG5ldWVuIGthbm4gbWFuIG5pY2h0IG5laG1lbiwgZGEgbWFuIGphIG5vY2ggZWluZW4gaGF0IC4uLgoKUmluZ29yLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogbmV1bGljaCBpbSBXYXJvay4uLiAoV3VyemVsLCAgNy4gTm92IDE5OTcsIDE5OjA5OjM1KToKfiMhIHJuPVJpbmdvciBydD04Nzg5MDk4Mjkgcmc9c2NobWFycm4KfiMhIHRpZD04Nzg4MzcwNzMKYW5nZXdhY2hzZW5lIHNjaGxlaW1rbHVtcGVuPyBpcmdlbmR3aWUgd2lyZHMgaGllciBpbW1lciB1bmFwcGV0aXRsaWNoZXIgOikKCnd1cnplbCBnZWh0IGpldHp0IHdhcyBlc3NlbiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hbmNoZSBoYWJlbiBhdWNoIHBlY2ggKERlbnRpLCAgOC4gTm92IDE5OTcsIDEwOjUwOjE5KToKClNtZXJ0ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClRvZCBFaW4gV2Fzc2VyZGFlbW9uIGhhdCBnZXJhZGUgU21lcnQgdW1nZWJyYWNodC4KCkRlbnRpIG1hbCBzY2htYXJyZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDaGFvdGVuLCBkaWUgc3Bpbm5lbiA6KSAoU3RpbmcsICA4LiBOb3YgMTk5NywgMTc6Mzc6NDEpOgpFYmVuIGluIGRlciBDaGFvc2tuZWlwZToKCktpbGFyIHplcnNjaG1ldHRlcnQgS2lsYXIgaW4ga2xlaW5lIFN0dWVja2NoZW4uCktpbGFyIGZhZWxsdCB0b3QgenUgQm9kZW4uCkVpbmUgTGVpY2hlIHdpcmQgdm9uIEVpc2kgdm9sbCBIaW5nZWJ1bmcgdmVyc3BlaXN0LgpLaWxhciBzYWd0OiBIZXkhCkVpc2kgc2FndDogb2gsIHNvcnJ5LCBpY2ggaGFiIHNvbGNoZSBIdW5nZXIuCktpbGFyIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCkVpc2kgJ3MgTWFnZW4ga251cnJ0IGJlZGVua2xpY2guCgoKSWNoIHNhZ3MsIGphLCBkaWUgc3Bpbm5lbiBkaWUgQ2hhb3RlbiA6KQoKU3RpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxhcHRvcHMgaW0gU09uZGVyYW5nZWJvdC4uLiAoQ2hlYXN5LCAgOC4gTm92IDE5OTcsIDE4OjM2OjQzKToKTmV1bGljaCBiZWltIEZhY2tlbHZlcmthZXVmZXI6CltBbGxnZW1laW46RW5neXd1Y2tdIEhhdCB6dWZhZWxsaWcgamVtYW5kIG5lbiBMYXB0b3AsIGRlbiBlciBuaWNodCBtZWhyCltBbGxnZW1laW46RW5neXd1Y2tdIGJyYXVjaHQ/Ci1hIGhtbSwgd3VlcmQgaWNoIGF1Y2ggbmVobWVuIDstKQpbQWxsZ2VtZWluOkNoZWFzeV0gaG1tLCB3dWVyZCBpY2ggYXVjaCBuZWhtZW4gOy0pCj4gW0FsbGdlbWVpbjpTdGluZ10ga29taXNjaCBkYXMgZHUgZnJhZ3N0Li4uIHNvd2FzIGJyYXVjaCBpY2ggYXVjaCA6KQpEZXIgS2F1Zm1hbm4gc2FndDogTmljaHQgZHJhZW5nZWxuIC0gRXMgaXN0IGdlbnVnIGRhLgoKKndhZWx6KgotQ2hlYXN5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGltIFZMYW5kIChMaWxhZiwgIDkuIE5vdiAxOTk3LCAwMTo0MDo1NCk6CgpPcmtoYXVzZW5lciBIYXVwdHN0cmFzc2UuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgd2VzdGVuIHVuZCBub3JkZW4uOz4gRGVyIE9yayBzYWd0OiBEdQpoYXN0IGd1dGUgU2FjaGVuLCBoZXIgZGFtaXQuCkdyYWlvcCB2ZXJmZWhsdCBEaWNoLgpEZXIgT3JrIHNjaGxhZWd0IERpY2ggbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KTGViZW46IDEyNiAgTWFnaWU6IDU1ICBTdGFiOiA1MiAKSW0gVHJvbGx3ZWcuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuIHVuZCBub3JkZW4uCkNob2Nob3MgZGVyIHNjaHdhcnplIERhZW1vbi4gICAgICAgICAgIEhvdGhyb2cgZGVyIFNjaGFrYWxrb2VwZmlnZS4KR3JhaW9wIGRlciByYXNlbmRlIEZldWVyZGFlbW9uLiAgICAgICAgRGVyIGtsZWluZSBVZWJtYXR1LgpEYWVkaGVsIGRlciBlbGZpc2NoZSBEYWVtb24uICAgICAgICAgICBFaW4gT3JrLgpEZXIga2xlaW5lIFVlYm1hdHUuICAgICAgICAgICAgICAgICAgICAKCgpPaG5lIFdvcnRlIDopCi1MaWxhZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG9iYml0ZWhyZSAoRWlzaSwgIDkuIE5vdiAxOTk3LCAxODo1MjozMyk6CkR1IHRlaWxzdCBLbnVydCBtaXQ6IG5lLCBiaW4gbm9jaCBpbSBob2JiaXRkb3JmCkR1IHRlaWxzdCBLbnVydCBtaXQ6IG1ldHplbG4hISEKS251cnQgdGVpbHQgRGlyIG1pdDogaG9iYml0cz8KRHUgdGVpbHN0IEtudXJ0IG1pdDoga2xhciEKS251cnQgaGF0IGRpZSBGcmV1bmRzY2hhZnQgbWl0IERpciBnZWxvZXN0LgoKRWlzaQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IG5ldWxpY2ggaW0gV2Fyb2suLi4gKEJvaW5nLCAxMC4gTm92IDE5OTcsIDA5OjU5OjE4KToKfiMhIHJuPVd1cnplbCBydD04Nzg5MjYxNzUgcmc9c2NobWFycm4KfiMhIHRpZD04Nzg4MzcwNzMKSWNoIHdlaXNzIG5pY2h0IGdlbmF1IHVtIHdlbGNoZSBTY2hsZWlta2x1bXBlbiBlcyBnZWh0LCBhYmVyIG1laW5lIGdpYnQKZXMgc2Nob24gc2VpdCA0LTUgSmFocmVuLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBuZXVsaWNoIGltIFdhcm9rLi4uIChTaWx2YW5hLCAxMC4gTm92IDE5OTcsIDEwOjA2OjE3KToKfiMhIHJuPUJvaW5nIHJ0PTg3OTE1MjM1OCByZz1zY2htYXJybgp+IyEgdGlkPTg3ODgzNzA3MwpEZWluZSBTY2hsZWlta2x1bXBlbiB2ZXJ3YWNoc2VuIGF1Y2ggbmljaHQgbWl0IGRlciBTdGlybiBlaW5lcyBTcGllbGVycy4KQWJlciBlcyBzb2xsZW4gc2ljaCBqYSBhdWNoIHNjaG9uIFNwaWVsZXIgdWViZXIgZGllIEFlc3RldGlrIHZvbiAKUmllc2VubmFzZW5wb3BlbG4gYmVzY2h3ZXJ0IGhhYmVuLi4uCgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1pY3JvU29mdCAoS29iYXlhc2hpLCAxMC4gTm92IDE5OTcsIDEzOjMzOjAzKToKUkVETU9ORCwgV2FzaC4gLSBPY3QuIDIxLCAxOTk3IC0tIEluIGRpcmVjdCByZXNwb25zZSB0byBhY2N1c2F0aW9ucwptYWRlIGJ5IHRoZSBEZXBhcnRtZW50IG9mIEp1c3RpY2UsIHRoZSBNaWNyb3NvZnQgQ29ycC4gYW5ub3VuY2VkIHRvZGF5CnRoYXQgaXQgd2lsbCBiZSBhY3F1aXJpbmcgdGhlIGZlZGVyYWwgZ292ZXJubWVudCBvZiB0aGUgVW5pdGVkIFN0YXRlcwpvZiBBbWVyaWNhIGZvciBhbiB1bmRpc2Nsb3NlZCBzdW0uCgoiSXQncyBhY3R1YWxseSBhIGxvZ2ljYWwgZXh0ZW5zaW9uIG9mIG91ciBwbGFubmVkIGdyb3d0aCIsIHNhaWQKTWljcm9zb2Z0IGNoYWlybWFuIEJpbGwgR2F0ZXMsICJJdCByZWFsbHkgaXMgZ29pbmcgdG8gYmUgYSBwb3NpdGl2ZQphcnJhbmdlbWVudCBmb3IgZXZlcnlvbmUiLgoKTWljcm9zb2Z0IHJlcHJlc2VudGF0aXZlcyBoZWxkIGEgYnJpZWZpbmcgaW4gdGhlIG92YWwgb2ZmaWNlIG9mIHRoZQpXaGl0ZSBIb3VzZSB3aXRoIFUuUy4gUHJlc2lkZW50IEJpbGwgQ2xpbnRvbiwgYW5kIGFzc3VyZWQgbWVtYmVycyBvZgp0aGUgcHJlc3MgdGhhdCBjaGFuZ2VzIHdpbGwgYmUgIm1pbmltYWwiLiBUaGUgVW5pdGVkIFN0YXRlcyB3aWxsIGJlCm1hbmFnZWQgYXMgYSB3aG9sbHkgb3duZWQgZGl2aXNpb24gb2YgTWljcm9zb2Z0LiBBbiBpbml0aWFsIHB1YmxpYwpvZmZlcmluZyBpcyBwbGFubmVkIGZvciBKdWx5IG9mIG5leHQgeWVhciwgYW5kIHRoZSBmZWRlcmFsIGdvdmVybm1lbnQKaXMgZXhwZWN0ZWQgdG8gYmUgcHJvZml0YWJsZSBieSAiUTQgMTk5OSBhdCBsYXRlc3QiLCBhY2NvcmRpbmcgdG8KTWljcm9zb2Z0IHByZXNpZGVudCBTdGV2ZSBCYWxsbWVyLgoKSW4gYSByZWxhdGVkIGFubm91bmNlbWVudCwgQmlsbCBDbGludG9uIHN0YXRlZCB0aGF0IGhlIGhhZCAid2lsbGluZ2x5CmFuZCBlbnRodXNpYXN0aWNhbGx5IiBhY2NlcHRlZCBhIHBvc2l0aW9uIGFzIGEgdmljZSBwcmVzaWRlbnQgd2l0aApNaWNyb3NvZnQsIGFuZCB3aWxsIGNvbnRpbnVlIHRvIG1hbmFnZSB0aGUgVW5pdGVkIFN0YXRlcyBnb3Zlcm5tZW50LApyZXBvcnRpbmcgZGlyZWN0bHkgdG8gQmlsbCBHYXRlcy4gV2hlbiBhc2tlZCBob3cgaXQgZmVsdCB0byBnaXZlIHVwCnRoZSBtYW50bGUgb2YgZXhlY3V0aXZlIGF1dGhvcml0eSB0byBHYXRlcywgQ2xpbnRvbiBzbWlsZWQgYW5kCnJlZmVycmVkIHRvIGl0IGFzICJhIHJlbGllZiIuIEhlIHdlbnQgb24gdG8gc2F5IHRoYXQgR2F0ZXMgaGFzIGEKInByb3ZlbiB0cmFjayByZWNvcmQiLCBhbmQgdGhhdCBVLlMuIGNpdGl6ZW5zIHNob3VsZCBvZmZlciBHYXRlcyB0aGVpcgoiZnVsbCBzdXBwb3J0IGFuZCBjb25maWRlbmNlIi4gIENsaW50b24gd2lsbCByZXBvcnRlZGx5IGJlIGVhcm5pbmcKc2V2ZXJhbCB0aW1lcyB0aGUgJDIwMCwwMDAgYW5udWFsbHkgaGUgaGFzIGVhcm5lZCBhcyBVLlMuIHByZXNpZGVudCwKaW4gaGlzIG5ldyByb2xlIGF0IE1pY3Jvc29mdC4KCkdhdGVzIGRpc21pc3NlZCBhIHN1Z2dlc3Rpb24gdGhhdCB0aGUgVS5TLiBDYXBpdG9sIGJlIG1vdmVkIHRvIFJlZG1vbmQKYXMgInNpbGx5IiwgdGhvdWdoIGRpZCBzYXkgdGhhdCBoZSB3b3VsZCBtYWtlIGV4ZWN1dGl2ZSBkZWNpc2lvbnMgZm9yCnRoZSBVLlMuICBnb3Zlcm5tZW50IGZyb20gaGlzIGV4aXN0aW5nIG9mZmljZSBhdCBNaWNyb3NvZnQKaGVhZHF1YXJ0ZXJzLiBHYXRlcyB3ZW50IG9uIHRvIHNheSB0aGF0IHRoZSBIb3VzZSBhbmQgU2VuYXRlIHdvdWxkICJvZgpjb3Vyc2UiIGJlIGFib2xpc2hlZC4gICJNaWNyb3NvZnQgaXNuJ3QgYSBkZW1vY3JhY3kiLCBoZSBvYnNlcnZlZCwKImFuZCBsb29rIGhvdyB3ZWxsIHdlJ3JlIGRvaW5nIi4KCldoZW4gYXNrZWQgaWYgdGhlIHJ1bW9yZWQgYXR0ZW5kYW50IGFjcXVpc2l0aW9uIG9mIENhbmFkYSB3YXMKcHJvY2VlZGluZywgR2F0ZXMgc2FpZCwgIldlIGRvbid0IGRlbnkgdGhhdCBkaXNjdXNzaW9ucyBhcmUgdGFraW5nCnBsYWNlIi4KCk1pY3Jvc29mdCByZXByZXNlbnRhdGl2ZXMgY2xvc2VkIHRoZSBjb25mZXJlbmNlIGJ5IHN0YXRpbmcgdGhhdCBVbml0ZWQKU3RhdGVzIGNpdGl6ZW5zIHdpbGwgYmUgYWJsZSB0byBleHBlY3QgbG93ZXIgdGF4ZXMsIGluY3JlYXNlcyBpbgpnb3Zlcm5tZW50IHNlcnZpY2VzIGFuZCBkaXNjb3VudHMgb24gYWxsIE1pY3Jvc29mdCBwcm9kdWN0cy4KCk1pY3Jvc29mdCBGb3VuZGVkIGluIDE5NzUsIE1pY3Jvc29mdCAoTkFTREFRICJNU0ZUIikgaXMgdGhlCndvcmxkd2lkZSBsZWFkZXIgaW4gc29mdHdhcmUgZm9yIHBlcnNvbmFsIGNvbXB1dGVycywgYW5kIGRlbW9jcmF0aWMKZ292ZXJubWVudC4gVGhlIGNvbXBhbnkgb2ZmZXJzIGEgd2lkZSByYW5nZSBvZiBwcm9kdWN0cyBhbmQgc2VydmljZXMKZm9yIHB1YmxpYywgYnVzaW5lc3MgYW5kIHBlcnNvbmFsIHVzZSwgZWFjaCBkZXNpZ25lZCB3aXRoIHRoZSBtaXNzaW9uCm9mIG1ha2luZyBpdCBlYXNpZXIgYW5kIG1vcmUgZW5qb3lhYmxlIGZvciBwZW9wbGUgdG8gdGFrZSBhZHZhbnRhZ2Ugb2YKdGhlIGZ1bGwgcG93ZXIgb2YgcGVyc29uYWwgY29tcHV0aW5nIGFuZCBmcmVlIHNvY2lldHkgZXZlcnkgZGF5LiBBYm91dAp0aGUgVW5pdGVkIFN0YXRlcwoKRm91bmRlZCBpbiAxNzg5LCB0aGUgVW5pdGVkIFN0YXRlcyBvZiBBbWVyaWNhIGlzIHRoZSBtb3N0IHN1Y2Nlc3NmdWwKbmF0aW9uIGluIHRoZSBoaXN0b3J5IG9mIHRoZSB3b3JsZCwgYW5kIGhhcyBiZWVuIGEgYmVhY29uIG9mIGRlbW9jcmFjeQphbmQgb3Bwb3J0dW5pdHkgZm9yIG92ZXIgMjAwIHllYXJzLiBIZWFkcXVhcnRlcmVkIGluIFdhc2hpbmd0b24sIEQuQy4sCnRoZSBVbml0ZWQgU3RhdGVzIGlzIGEgd2hvbGx5IG93bmVkIHN1YnNpZGlhcnkgb2YgTWljcm9zb2Z0IENvcnBvcmF0aW9uLgoKCgoKS29iYXlhc2hpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWljcm9Tb2Z0IChBY3JpbW9uLCAxMC4gTm92IDE5OTcsIDE2OjE1OjI1KToKfiMhIHJuPUtvYmF5YXNoaSBydD04NzkxNjUxODMgcmc9c2NobWFycm4KfiMhIHRpZD04NzkxNjUxODMKU3VjaCBhIFNjaG1hcnJuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU293YXMuLi4gKEhhbmdvdmVyLCAxMC4gTm92IDE5OTcsIDE4OjU0OjMyKToKR3JhZGUgZWJlbiBpbSBTdHJ1djoKCkxpbGxlYnJvciBzY2h3ZWJ0IGhlcmVpbi4KUGFydHltb25zdGVyIGZsYXR0ZXJ0IGhlcmVpbi4KTnVyZGlrIEtodW0gc2FsdXRpZXJ0IHZvciBMaWxsZWJyb3IuClp6cnJya2wgc2FsdXRpZXJ0IHZvciBMaWxsZWJyb3IuCk51cmRpayBLaHVtIHNhZ3Q6IFdhcyBpc3QgZGVubiBkYXMgaGllcj8gSGF1c3RpZXJlIGltIFN0cnV2PyBTbyBnZWh0IGRhcyBhYmVyCk51cmRpayBLaHVtIHNhZ3Q6IG5pY2h0LCBIYW5nb3ZlciEgRGFzIGdpYnQgbGVpZGVyIGVpbmVuIFZlcndlaXMhCgpVbmQgZGFzLCB3byBpY2ggbmljaHQgbWFsIGJlaSBkZW4gVHJ2ZXMgYmluLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWljcm9Tb2Z0IChNZXNhcm9uLCAxMS4gTm92IDE5OTcsIDE3OjM5OjM0KToKfiMhIHJuPUtvYmF5YXNoaSBydD04NzkxNjUxODMgcmc9c2NobWFycm4KfiMhIHRpZD04NzkxNjUxODMKRWluIGludGVyZXNzYW50ZXIgQmVyaWNodC4gRG9jaCB3aWVzbyBzdGVodCBlciBpbiBTY2htYXJybj8gV2FlcmUgZG9jaAplaGVyIGVpbiBGYWxsIGZ1ZXIgZGllIE5hY2hyaWNodGVuLCBvZGVyPwoKRGllIFJlYWxpdGFldCBpc3QgaW1tZXIgZWluIHdlbmlnIGRlcHJpbWllcmVuZGVyIGFscyBkaWUgV2lya2xpY2hrZWl0LgoKSW4gZGllc2VtIFNpbm5lLApNZXNhcm9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0c3NzIChBc21vZGluYSwgMTEuIE5vdiAxOTk3LCAxOTowNTo1Mik6CktlaW5lbiBSZXNwZWt0IGhhYmVuIGRpZXNlIFVudGVyZ2ViZW5lbiwgZGFzIGlzdCBlYmVuIHBhc3NpZXJ0OgoKRHVtbWJhdHogZmxhdHRlcnQgaGVyZWluLgpEdW1tYmF0eiBrcmFlY2h6dDogLi4uIERhIGJpbiBpY2ggd2llZGVyIC4uLiBrcnJyb29vb2FhYSAuLi4KQ2xvYiBEcm9waCBrb21tdCBhbi4KQ2xvYiBEcm9waCBzYWd0OiBXYXMgaXN0IGRlbm4gZGFzIGhpZXI/IEhhdXN0aWVyZSBpbSBTdHJ1dj8gU28gZ2VodCBkYXMgYWJlcgpDbG9iIERyb3BoIHNhZ3Q6IG5pY2h0LCBBc21vZGluYSEgRGFzIGdpYnQgbGVpZGVyIGVpbmVuIFZlcndlaXMhCkR1bW1iYXR6IGhhdXQgYWIuCkNsb2IgRHJvcGggc3RlaHQgc3RpbGwgdW5kIGdydWVzc3QgRGljaC4KLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDEyLiBOb3YgMTk5NywgMTI6MzQ6MTgpOgoiUnVudGVyIGdlaHQgZXMgaW1tZXIgbGVpY2h0LiIKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGludGVybSBSdWVja2VuIGRlciBHb2V0dGVyLi4uIChaYXBob2IsIDEyLiBOb3YgMTk5NywgMTg6Mzc6NTQpOgpHZXJhZGUgZWJlbjoKCltBbGxnZW1laW46Qm9pbmddIHRzY2h1ZXNzCltBYmVudGV1ZXI6TWFuZ29dIDJ4IG4sIHcsIG4sIDJ4dywgbiwgMnggbywgYmV0cmV0ZSBmZWxkLCBvLCBzLCB3LCAyeCBzLCA0eCBvLApbQWJlbnRldWVyOk1hbmdvXSAyeCBuLCAyeCB3LCAzeCBuLCB3LCBzLCAyeCBzbwoKSmFqYS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhpbnRlcm0gUnVlY2tlbiBkZXIgR29ldHRlci4uLiAoTWFuZ28sIDEyLiBOb3YgMTk5NywgMTk6MzE6MTApOgp+IyEgcm49WmFwaG9iIHJ0PTg3OTM1NjI3NCByZz1zY2htYXJybgp+IyEgdGlkPTg3OTM1NjI3NApJY2ggd2lsbCBtaWNoIG5vY2ggc2NobmVsbCBuYWNodHJhZWdsaWNoIGtvcnJpZ2llcmVuOiBuYWNoIGJldHJldGUgZmVsZCBtdXNzCmVzIG5hdHVlcmxpY2ggM3ggcyBoZWlzc2VuIHVuZCBuaWNodCAyeCBzIAoKTWFuZ28sIGxlaWNodCB2ZXJ3aXJydC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMYW5nZXdlaWxlLi4uIChLaWxhciwgMTMuIE5vdiAxOTk3LCAwNDowNjowOSk6Ckxhbmdld2VpbGUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnp1IHNwYWV0Li4uIChCYWJvb24sIDEzLiBOb3YgMTk5NywgMDc6NTc6MzApOgpOYWdhc2ggcnVmdDogSEhISElJSUxMTEZGRkVFRSEhIQpmaW5nZXIgbmFnYXNoW1RvZDpMYXJzXSBFaW4gRWxmZW53YWVjaHRlciBoYXQgZ2VyYWRlIE5hZ2FzaCB1bWdlYnJhY2h0LgoKTmFnYXNoIGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBnYXRla2VlcGVyLmFzbi1saW56LmFjLmF0ICgxOTMuMTcwLjY4LjI1MykgWy4uLl0uCkVpbmdlbG9nZ3Qgc2VpdDogRG9uLCAxMy4gTm92IDE5OTcsIDA3OjQ1OjQzClZvbGxlciBOYW1lOiBOYWdhc2ggZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlcgpIb3BwbGEsIGVpbiBHZWlzdCEKUmFzc2U6IEVsZiwgIEdpbGRlOiBBYmVudGV1cmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAwMTozOTozNCwgICBTcGllbGVybGV2ZWw6IDEKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogRGllLCAxMS4gTm92IDE5OTcsIDE1OjA2OjQ5CkUtTWFpbC1BZHJlc3NlOiBzcGF1emVuYmVyZ2VyQGhvdG1haWwuY29tCkJpc2hlciBiZXJlaXRzIDEgbWFsIGdlc3RvcmJlbiAgICAgfnIKCgpJY2ggZnVlcmNodGUsIGRlbSBpc3QgbmljaHQgbWVociB6dSBoZWxmZW4uIE5hamEsIGlyZ2VuZHdhbm4gaGF0IG1hbiBpbW1lcgpzZWluIGVyc3RlcyBNYWwuCgpCYWJvb24oKSAtIGltIFplaWNoZW4gZGVzIEFmZmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogenUgc3BhZXQuLi4gKEhvYm8sIDEzLiBOb3YgMTk5NywgMDg6NDM6NDApOgp+IyEgcm49QmFib29uIHJ0PTg3OTQwNDI1MCByZz1zY2htYXJybgp+IyEgdGlkPTg3OTQwNDI1MApTZWxiZXIgc2NodWxkLi4uCgpXZXIgYWxzIEVsZiBuZW4gRWxmZW4gYW5ncmVpZnQsIGhhdCBlcyBlaW5mYWNoIG5pY2h0IGJlc3NlciB2ZXJkaWVudCEKCiAgIEhvYm8gLSBFeC1FbGYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhbmdvdmVyIHVuZCBkaWUgTW9uc3Rlci4uLiAoVHVuaXhndXQsIDEzLiBOb3YgMTk5NywgMDg6NTM6MzkpOgpIYW5nb3ZlciBzYWd0OiBkaWUgc2NoYWZmZW4gd2lyIDopClBhcnR5bW9uc3RlciBrcmFlY2h6dDogLi4uIEhhbmdvdmVyIHJlZGV0IG51ciBNdWVsbCAuLi4ga3Jyb29vYWFhYSAuLi4gbnVyClBhcnR5bW9uc3RlciBrcmFlY2h6dDogTXVlbGwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1c3Nlc3BlcnJ0IT8hIChUdW5peGd1dCwgMTMuIE5vdiAxOTk3LCAxMDo1MjozMSk6CkRpZSBUdWVyIHNjaGxpZXNzdCBzaWNoLgpFbmRlciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKQmlyZHkgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHp1IHNwYWV0Li4uIChBbHBoYSwgMTMuIE5vdiAxOTk3LCAxMDo1ODo0Mik6Cn4jISBybj1Ib2JvIHJ0PTg3OTQwNzAyMCByZz1zY2htYXJybgp+IyEgdGlkPTg3OTQwNDI1MApEaWUgWndlcmdlbnN0YWR0IHp1IHNhZXViZXJuIG1hY2h0IGFscyBFbGYgbWVociBTaW5uLgpBbHBoYSwgSG9iYnlzYXViZXJlciBpbiBkZXIgWndlcmdlbnN0YWR0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogenUgc3BhZXQuLi4gKEdsb2luc29uLCAxMy4gTm92IDE5OTcsIDExOjIwOjEyKToKfiMhIHJuPUFscGhhIHJ0PTg3OTQxNTEyMiByZz1zY2htYXJybgp+IyEgdGlkPTg3OTQwNDI1MApJY2gga2FubiBqYSBEaWNoIG1hbCB3ZWdzYWV1YmVybi4gRGFzIGZpZWxlIGRhbm4gYXVjaCB1bnRlciBzaW5udm9sbC4KU2NoZWlzcyBIYWVyZXRpa2VyLgoKR2xvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBoeXNpay4uLiAoV2FyZ29uLCAxMy4gTm92IDE5OTcsIDEyOjQzOjU2KToKVEhFIFBIWVNJQ1MgT0YgQ09GRkVFIFNUQUlOUy4gIFdoZW4gYSBkcm9wbGV0IG9mIGNvZmZlZQpvciBpbmsgZHJpZXMsIHdoeSBpcyB0aGUgcmVzaWR1ZSByaW5nIHNoYXBlZCByYXRoZXIgdW5pZm9ybSBhY3Jvc3MKdGhlIGZvb3RwcmludCBvZiB0aGUgb3JpZ2luYWwgZHJvcD8gIFNjaWVudGlzdHMgYXQgdGhlIFVuaXZlcnNpdHkgb2YKQ2hpY2FnbyBzdWdnZXN0IHRoYXQgYXMgdGhlIGRyb3BsZXQgZHJpZXMgdGhlIG91dGVyIGJvdW5kYXJ5IG9mIHRoZQpkcm9wbGV0IHJlbWFpbnMgcGlubmVkIHRvIHRoZSBzdXJmYWNlIGFuZCB0aGF0IGV2YXBvcmF0aW5nIGxpcXVpZCBhdAp0aGUgZnJvbnRpZXIgaXMgcmVwbGFjZWQgYnkgbGlxdWlkIGZyb20gdGhlIGludGVyaW9yLiBBbG9uZyB3aXRoIHRoaXMKZmxvdyBjb21lcyBtb3N0IG9mIHRoZSBwYXJ0aWNsZXMgKGUuZy4sIGNvZmZlZSBncm91bmRzKSBzdXNwZW5kZWQKaW4gdGhlIHNvbHV0aW9uLiAgVGhpcyBuZXcgbW9kZWwgbWF5IG5vdCBiZSBvZiBtdWNoIGhlbHAgaW4KY2xlYW5pbmcgdXAgYWZ0ZXIgcGFydGllcywgYnV0IGl0IG1pZ2h0IGNvbWUgaW4gaGFuZHkgZm9yIHZhcmlvdXMKaW5kdXN0cmlhbCBwcm9jZXNzZXMuICAoTmF0dXJlLCAyMyBPY3QuKQoKVW5kIGRhIHNhZyBub2NoIGVpbmVyLCBQaHlzaWsgd2FlcmUgdm9lbGxpZyBhYmdlZHJlaHQhCiAgV2FyZ29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGh5c2lrLi4uIChHcmltbWJvcm4sIDEzLiBOb3YgMTk5NywgMTI6NDc6MDYpOgp+IyEgcm49V2FyZ29uIHJ0PTg3OTQyMTQzNiByZz1zY2htYXJybgp+IyEgdGlkPTg3OTQyMTQzNgpBZWhtLCBDaHJvbWF0b2dyYXBoeSAodW0gZGFzIGdlaHRzIGphIGxldHp0bGljaCkgaXN0IGVpbmUgTWV0aG9kZSBkZXIgQ2hlbWllLApNaXNjaHVuZ2VuIHBoeXNpa2FsaXNjaCB0cmVubmVuIHp1IGtvZW5uZW4uCkRpZSBHcmVuemVuIHp3aXNjaGVuIGRlbiBXaXNzZW5zY2hhZnRlbiBzaW5kIGZsaWVzc2VuZCBnZXdvcmRlbi4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IHdpbGwgYXVjaCBlaW5lIEVpbmxhZHVuZyB6dXIgUGFydHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUGh5c2lrLi4uIChDYXR3ZWF6bGUsIDEzLiBOb3YgMTk5NywgMTM6NDg6NTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg3OTQyMTYyNiByZz1zY2htYXJybgp+IyEgdGlkPTg3OTQyMTQzNgpEdSBzaWVoc3QgZGFzIHZvZWxsaWcgZmFsc2NoLiAKRGFzIHdhcyBkaWUgZGEgZ2VtYWNodCBoYWJlbiBzaW5kIGJlc3RlbnNmYWxscyBjaHJvbWF0b2dyYXBoaXNjaGUgR3J1bmRsYWdlbi4KQ2hlbWlrZXIgZ2VoZW4gbnVyIGhpbiB1bmQgbnV0emVuIGRhcyBzY2hhbWxvcyBhdXMsIHdhcyBkaWUgUGh5c2lrZXIgc2ljaApzYXVlciB2ZXJkaWVudCBoYWJlbi4KWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBQaHlzaWsuLi4gKEdyaW1tYm9ybiwgMTMuIE5vdiAxOTk3LCAxNDowOToxNik6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9ODc5NDI1MzM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc5NDIxNDM2ClZvbiBBdXNudXR6ZW4ga2FubiBrZWluZSBSZWRlIHNlaW4sIGRpZSBQaHlzaWtlciBiZWtvbW1lbiBkb2NoIGplZGVuIFRhZwpBdXNnbGVpY2hzbGVpc3R1bmdlbiB2b24gZGVuIENoZW1pa2Vybi4gSW4gZGVyIE1lbnNhLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BydWNoIGRlciBXb2NoZSAoWWVuZGksIDEzLiBOb3YgMTk5NywgMTU6MjI6NTIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg3OTMzNDQ1OCByZz1zY2htYXJybgp+IyEgdGlkPTg3OTMzNDQ1OAoKSWNoIGtlbm4gZGVuIGV0d2FzIGFuZGVyczoKCiJXYXMgdm9uIGFsbGVpbmUgbGFldWZ0LCBnZWh0IG1laXN0IGJlcmdhYi4iCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvdGUgc2FnZW4gbmljaHRzPyEgKFphcGhvYiwgMTMuIE5vdiAxOTk3LCAxNjoyNTozMSk6CldpZWRlciB3YXMgU2Nob2VuZXMgaW0gTVVEIGVybGVidDoKClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBBbGFuLgpBbGFuIHNhZ3Q6IDxIaWNrPiEKCmZpbmQgaWNoIHNjaG9lbi4KWmFwaG9iCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMTMuIE5vdiAxOTk3LCAxNzozNjoxNCk6Cn4jISBybj1ZZW5kaSBydD04Nzk0MzA5NzIgcmc9c2NobWFycm4KfiMhIHRpZD04NzkzMzQ0NTgKU28gb2RlciBzbzogQWxsZXMgRW50cm9waWVlZmZla3RlLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBmcmlzY2ggZ2VmdW5kZW4uLi4uIChHcmltbWJvcm4sIDEzLiBOb3YgMTk5NywgMTc6NDM6MjUpOgp+IyEgb249RmV1ZXJ3ZWhyIG90PTg3OTQzOTM5MSBvZz13aXR6ZQp+IyEgcm49QW5jYWxhZ29uIHJ0PTg3OTQzMDQ2NSByZz13aXR6ZQp+IyEgdGlkPTg3OTQzMDQ2NQoqKj4gQnJ1ZWxsIChLdWdlbCB1ZWJlciBkZW4gQm9kZW4pCgogICBTZWVlaHIgc2Nob2VuIDotKQoKICAgICAgRmV1ZXJ3ZWhyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBmcmlzY2ggZ2VmdW5kZW4uLi4uIChHcmltbWJvcm4sIDEzLiBOb3YgMTk5NywgMTc6NDM6NDkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg3OTQzOTQwNSByZz1zY2htYXJybgp+IyEgdGlkPTg3OTQzMDQ2NQpTb3JyeSwga2VpbmUgImhhaGFoYSwgd2FzIGhhYiBpY2ggZ2VsYWNodCItQXJ0aWtlbCBpbiB3aXR6ZS4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBmcmlzY2ggZ2VmdW5kZW4uLi4uIChSYWZmaSwgMTMuIE5vdiAxOTk3LCAyMDowNToyNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODc5NDM5NDI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc5NDMwNDY1CkJvaW5nIHdpZSB3aXR6bG9zLgpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2Nod2FyemUgTWVzc2U/IChEaG9qYWt0LCAxMy4gTm92IDE5OTcsIDIxOjU2OjQ5KToKPiBOZWIgbXVybWVsdCBlaW4gR2ViZXQuCkRlciBIZWlsaWdlbnNjaGVpbiB1ZWJlciBkZW0gSGF1cHRlIE5lYnMgdmVyZ2xpbW10LgpTQ05SLCBLaGlkYXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppY2ggYXVjaCBtYWwgKEFuYWtpbiwgMTQuIE5vdiAxOTk3LCAwOTozOToxNCk6Cj4gRWluIGxhdXRlciBLbmFsbCBoYWxsdCB2b20gR2ViaXJnZSBoZXJ1ZWJlci4KJSBDb25uZWN0aW9uIHRvIEFuYWtpbkBNRyBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgotLS0tIE5vIHdvcmxkIC0tLS0KCkJpdHRlIGxhc3N0IGVzIG5pY2h0IHp1IG9mdCBrbmFsbGVuLgoKQW5ha2luLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWJlbjogKEdyaW1tYm9ybiwgMTQuIE5vdiAxOTk3LCAwOTo0MDozMCk6CllhbnRybyBzYWd0OiBpY2ggd3VlcmQgc2llIHNjaHdhZWNoZXIgbWFjaGVuCllhbnRybyBzYWd0OiBhZWguLiBmYXN0CkJvaW5nIHNhZ3Q6IHdhcyBoYWIgaWNoIHZlcmdlc3Nlbj8KJSBDb25uZWN0aW9uIHRvIE1vcmdlbkdyYXVlbiBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgotLS0tIE5vIHdvcmxkIC0tLS0KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCBzYWd0OiBUcmF1IGtlaW5lbSBFTSshCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWJlbjogKFlhbnRybywgMTQuIE5vdiAxOTk3LCAwOTo0MDo1OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODc5NDk2ODMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc5NDk2ODMwCm1laHIgaGFzdCBkdSBuaWNodCBtaXRnZWtyaWVndD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWJlbjogKEdyaW1tYm9ybiwgMTQuIE5vdiAxOTk3LCAwOTo0MTozMyk6Cn4jISBybj1ZYW50cm8gcnQ9ODc5NDk2ODU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc5NDk2ODMwCktsYXIgaGFiIGljaC4gU29sbCBpY2ggaGllciB2ZXJ0cmF1bGljaGUgTWFnaWVyZ2VzcHJhZWNoZSBpbiB2b2xsZXIgTGFlbmdlCnBvc3Rlbj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR3V0ZSBBdWdlbiAuLi4gKFJpbmdvciwgMTQuIE5vdiAxOTk3LCAxNDo1Mjo0Mik6CkVpbiBTdGFkdGdhcmRpc3QgYmV0cml0dCBkdXJjaCBkaWUgVHVlciBpbSBOb3JkZW4gZGVuIEdhc3Rob2YuCkR1IG1laW5zdCwgYXVzIGRlbiBBdWdlbndpbmtlbG4gZWluZW4gQ3JhbG1hYyB2b3JiZWlnbGVpdGVuIHp1IHNlaGVuLgoKW3NjaGF1XQpEdSBiaXN0IGJsaW5kICEKClJpbmdvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWhoaGhqYSAoTmFpcm9sZiwgMTQuIE5vdiAxOTk3LCAxOToxNDo0MCk6Cj4gc28KTWl0dGVuIGluIGRlciBUdW5kcmEuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4sIG5vcmR3ZXN0ZW4gdW5kIG5vcmRvc3Rlbi4KRGllIExlaWNoZSBlaW5lcyBTYWV1cmVkYW1wZm1hZ2lld2VzZW5zLgo+IERpZSBBbmdzdCBpc3Qgc3RhZXJrZXIgYWxzIER1IC4uLiBEdSB3aWxsc3QgbnVyIG5vY2ggd2VnIGhpZXIuClN1ZWRvZXN0bGljaCBlaW5lciBNYXJtb3JncnVmdC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG5vcmR3ZXN0ZW4gdW5kIHN1ZWRvc3Rlbi4KRGVyIFNjaGF0dGVuIHZvbiBOYWlyb2xmIHNhZ3Q6IFRvZXRlIG5pZW1hbHMgRHJhY2hlbmJhYnkncyAhISEuCkVpbmUgRWlzcHJpbnplc3Npbi4KRWluIG1hZ2lzY2hlcyBQb3J0YWwuCkVpbiAwLzgvMTUgU3RhbmRhcmQtU2VoZXJoYXVzLgoKCnNlbHRzYW0gaWNoIGZsdWVjaHRlIHZvciBuZXIgbGVpY2hlID8/PyBkYXMgbmVubiBpY2ggd2lya2xpY2ggQU5HU1QgOi0pKSkKCk5haXJvbGYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlZ2VuZGFyc3RlbGx1bmcgKFpvcnJvLCAxNC4gTm92IDE5OTcsIDE5OjU5OjMzKToKSGkgYXVzIGdlZ2ViZW5lbiBBbmxhc3MgaGllciBlaW4gZ2VnZW5kYXJzdGVsbHVuZyA6KQoKRnVlciBhbGxlIGRpZSBnZXN0ZXJuIGFiZW5kIGhhcmFsZCBzY2htaWR0IGdlc2VoZW4gaGF0LCB1bmQgdWViZXIgZGllIHJ1YnJpawp3YXMgbWFjaCBlaWdlbmRsaWNoIFpvcnJvIG11c3MgaWNoIG1pY2ggd2VoZW1lbnQgZ2VnZW4gZGllc2UgZGFyc3RlbGx1bmcKbWVpbmVzIGpldHppZ2VuIGxlYmVucyB3ZWhyZW4gOikpKQpJQ0ggTEFTUyBNSVIgTklDSFQgVk9OIEtMRUlORU4gQkxBR0VOIERFTiBIVVQgS0xBVU4sIHVuZCBpY2ggYmV0cmVpYmUga2VpbmUKc2NobmF1emVyLXp1Y2h0LWZhcm0gLi4uLiBpY2ggZmFocmUgZWJlbmZhbGxzIGtlaW4gZmFocnJhZCBzb25kZXJuIGJlbnV0emUKaW1tZXIgbm9jaCBtZWluIGFsdGdlZGllbnRlcyBwb255IC4uLgoKWm9ycm8gSGFyYWxkIFNjaG1pZHQgZGVuIFZvbGxzdHJlY2tlciBzY2htZWNrZW4gbGFzcyA6KSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbGxlIHppdHRlcm4gLi4uIChBc21vZGlzLCAxNC4gTm92IDE5OTcsIDIwOjA0OjAzKToKW0tsZXJ1czpCb3R0b21dIERhcyB3YXJlbiBkaWUgemVpdGVuLCBpbiBkZW5lbiBLZXkgbm9jaCBNb3JvbiB1bnNpY2hlcgpbS2xlcnVzOkJvdHRvbV0gbWFjaHRlLi4uCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCltLbGVydXM6Qm90dG9tXSBHdXRlIGFsdGUgWmVpdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmFjaHR3aW5kLCB3YXMgdHVzdCBEdSBkYT8gKEhhbmdvdmVyLCAxNC4gTm92IDE5OTcsIDIxOjQxOjQ5KToKTmFjaHR3aW5kIHNhZ3Q6IGFyZ2wsIGljaCBtdXNzIG1laW4gYmllciB3ZWdicmluZ2VuLHNvbnN0IHBsYXR6IGljaCA6KQpEdSBmdWVobHN0IERpY2ggbmljaHQgZ2FueiBhbGxlaW4gaGllci4KRHUga2ljaGVyc3QuIChXaWUgYWxiZXJuIHZvbiBEaXIpOz4gRHUgc2Fnc3Q6IG1hY2ggZGFzIDopOz4gTmFjaHR3aW5kIHNhZ3Q6Cm11c3Mgd29obCBkb2NoIHNjaG9uIGV0d2FzIG1laHIgZ2V3ZXNlbiBzZWluIDopCk5hY2h0d2luZCBnZWh0IGF1ZnMga2xvLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBMaWNodGRhZW1vbnNdIExlbGxkb3JpbiBpc3QgTklDSFQgenUgbWVpbmVyIEJlZXJkaWd1bmcKW01vZXJkZXI6R2Vpc3QgZWluZXMgTGljaHRkYWVtb25zXSBlaW5nZWxhZGVuIQpbQWJlbnRldWVyOkVnb21pcl0gd2Vpc3MgZWluZXIsIHdpZSBtYW4gYmVpIHJldHNlbHN0ZWluIGFuIHBhcGllciAga29tbXQgPz8KVm9uIGVpbmVyIGtsZWluZXJlbiBQZnVldHplIHp3aXNjaGVuIGRlbiBCYWV1bWVuIHN0ZWlndCBlaW4gbGVpY2h0ZXIgRHVuc3QKYXVmLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm51IHdlaXNzIGljaCB3aWVzbyAoRGVudGksIDE0LiBOb3YgMTk5NywgMjI6MDk6MjYpOgoKPiBbQWxsZ2VtZWluOkZlbmRlcl0gc28gYmluIHdpZWRlciBkYTsKWzxNYXN0ZVI+OktleV0gbApbPE1hc3RlUj46PE1hc3RlUj5dIDExLjc2IGNtZHMvcywgMjUyLjQ1IGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogNC45JS82MCwgNi4zJS8xNSwgMzAuNiUvMQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRWJlbjogKFRlZGR5LCAxNS4gTm92IDE5OTcsIDAyOjE5OjMzKToKfiMhIHJuPUdyaW1tYm9ybiBydD04Nzk0OTY4OTMgcmc9c2NobWFycm4KfiMhIHRpZD04Nzk0OTY4MzAKSmEgYml0dGUKClNDTlIKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hbCB3aWVkZXI6IERlc29yaWVudGllcnRlciBOUEMgKEVpc2ksIDE2LiBOb3YgMTk5NywgMDI6MTk6NDcpOgpFaW4gU3RhZHRnYXJkaXN0IGtvbW10IGluIGRlbiBGYWxrbmVybGFkZW4uCkRlciBHYXJkaXN0IHJ1ZnQ6IEJpdHRlIFJhZXVtZW4gU2llIGRpZSBTdHJhc3NlIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBJTkZBUyAoR3JpbW1ib3JuLCAxNy4gTm92IDE5OTcsIDEyOjA4OjIyKToKfiMhIG9uPVRlZGR5IG90PTg3OTU1Njk2OCBvZz13aXR6ZQp+IyEgcm49QW5jYWxhZ29uIHJ0PTg3OTQyODI4MSByZz13aXR6ZQp+IyEgdGlkPTg3OTM3MTg5NwpXb3csIGRhcyBEaW5nIHNjaGVpbnQgamEgZWNodCBpbiBnYW56IERldXRzY2hsYW5kIHp1IGt1cnNpZXJlbi4KClRlZGR5LCBoYXQgZGVuIGF1Y2ggZ2VrcmllZ3QgdW5kIGtvbXBsZXR0IGR1cmNoZ2VsZXNlbiB2b3JtIHdlZ3NjaG1laXNzZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMTcuIE5vdiAxOTk3LCAxNDowNDoxNCk6CiJNaXNjaGUgbmljaHQgbWVociBUZWlnIGFuIGFscyBEdSBrbmV0ZW4ga2FubnN0LiIgCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJla29yZHZlcmRjaHRpZ2UgQmlsYW56IGRlcyBUU1YgV2VpbnNiZXJnOiAwOjE3NSBUb3JlICAoWm9ycm8sIDE3LiBOb3YgMTk5NywgMTg6MTA6NDMpOgoKIFN0dXR0Z2FydCAoZHBhKSAtIEVpbmVyIFNjaGllVG9yZWJ1ZGUgZ2xlaWNodCBkZXJ6ZWl0IGRhcyBUb3IgZGVyCiBGcmF1ZW5mdWRlcmJhbGwtTWFubm5zY2hhZnQgZGVzIFRTViBXZWluc2Jlcmc6IERlciBCZXppcmtzbGlnaXN0IGF1cwogZGVyIE5oZSB2b24gSGVpbGJyb25uIGlzdCBUYWJlbGxlbmxldHp0ZXIgbWl0IDA6MTc1IFRvcmVuLiBNaXQgZGVyCiAwOjEyLU5pZWRlcmxhZ2UgZ2VnZW4gZGVuIFZmTCBFYmVyc3RhZHQgbWFjaHRlIGRhcyBUZWFtIHZvbiBUcmFpbmVyCiBGcmFuayBCYXVtZ2FydGVuIGFtIFdvY2hlbmVuZGUgZGFzIER1dHplbmQgYW4gTmllZGVybGFnZW4gdm9sbC4KIERpZSBNYW5uc2NoYWZ0IG1pdCBlaW5lbSBBbHRlcnNkdXJjaHNjaG5pdHQgdm9uIDE2IEphaHJlbiBiZXN0ZWh0CiBhbGxlcmRpbmdzIGVyc3Qgc2VpdCBNcnogdW5kIG11YmVzdGVodHRlIHdlZ2VuIFBlcnNvbmFsbWFuZ2VscyBzY2hvbiBtYWwKIG1pdCBudXIgc2VjaHMgU3BpZWxlcmlubmVuIGFudHJldGVuLiAiV2VubiBpY2ggbWFsIHplaG4gVG9yZSBrYXNzaWVydAogaGFiZSwgaXN0IGRpZSBMdXN0IGZsdGVuLCBhdWYgemVobiB3ZWl0ZXJlIGtvbW10IGVzIG1pciBkYW5uIGF1Y2ggbmljaHQKIG1laHIgYW4iLCBnZXN0YW5kIFRvcmh8dGVyaW4gS2FyaW4gSGFyZHQuIGRwYSB1bCBqbiAgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmVrb3JkdmVyZGNodGlnZSBCaWxhbnogZGVzIFRTViBXZWluc2Jlcmc6IDA6MTc1IFRvcmUgIChHcmltbWJvcm4sIDE3LiBOb3YgMTk5NywgMTg6NTQ6NDYpOgp+IyEgcm49Wm9ycm8gcnQ9ODc5Nzg2NjQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODc5Nzg2NjQzCk5hIHVuZD8KRnJhdWVuZnVzc2JhbGwgaGFsdC4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJla29yZHZlcmRjaHRpZ2UgQmlsYW56IGRlcyBUU1YgV2VpbnNiZXJnOiAwOjE3NSBUb3JlICAoQWxwaGEsIDE3LiBOb3YgMTk5NywgMTk6NTA6NTQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg3OTc4OTI4NiByZz1zY2htYXJybgp+IyEgdGlkPTg3OTc4NjY0MwpEYSBmZWhsdCBtaW5kZXN0ZW5zIGVpbiBTcGFjZSB6d2lzY2hlbiBGcmF1ZW4gdW5kIEZ1c3NiYWxsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSZWtvcmR2ZXJkY2h0aWdlIEJpbGFueiBkZXMgVFNWIFdlaW5zYmVyZzogMDoxNzUgVG9yZSAgKEJvaW5nLCAxOC4gTm92IDE5OTcsIDA5OjE0OjIxKToKfiMhIHJuPUdyaW1tYm9ybiBydD04Nzk3ODkyODYgcmc9c2NobWFycm4KfiMhIHRpZD04Nzk3ODY2NDMKTmVpbiwgbmVpbiAuLi4gZXMgZ2VodCBoaWVyIGVpbmRldXRpZyBuaWNodCB1bSBGdXNzYmFsbCEgWm9ycm8gc3ByaWNodAp2b24gRnJhdWVuZnVkZXJiYWxsLCBlaW5lciBTcG9ydGFydCBkaWUgaWNoIHNlbGJzdCBsZWlkZXIgbmljaHQga2VubmUuCkF1Y2ggZnJlbWQgd2FyZW4gbWlyIFdvcnRlIHdpZSAnU2NoaWVUb3JlYnVkZScsICdNcnonIG9kZXIgCidtdWJlc3RlaHR0ZScuIERhcyBsZXR6dGUgaGFsdGUgaWNoIGFsbGVyZGluZ3MgZnVlciBlaW5lIGJlc29uZGVycwprcmVhdGl2ZSBXb3J0c2Nob2VwZnVuZyEKQm9pbmcsIGRlciBtZWhyIHVlYmVyIEZ1ZGVyYmFsbCBsZXJuZW4gd2lsbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUmVrb3JkdmVyZGNodGlnZSBCaWxhbnogZGVzIFRTViBXZWluc2Jlcmc6IDA6MTc1IFRvcmUgIChHcnVtYmFydCwgMTguIE5vdiAxOTk3LCAxMjozNzoxNik6Cn4jISBybj1Cb2luZyBydD04Nzk4NDA4NjEgcmc9c2NobWFycm4KfiMhIHRpZD04Nzk3ODY2NDMKTnVuLCBnYW56IGVpbmZhY2g6CgpGdWRlcmJhbGwgaXN0IHdpZSBGdXNzYmFsbCAtIG51ciBtaXQgNDUgQmFlbGxlbi4KCkdydW1iYXJ0IC0gZnJldXQgc2ljaCBpbW1lciBhdWYgZGVuIFRyaWtvdHRhdXNjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlcDptZyAoR3JpbW1ib3JuLCAxOC4gTm92IDE5OTcsIDE0OjQ0OjQwKToKfiMhIG9uPUdyaW1tYm9ybiBvdD04Nzk4NjA2NzQgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVRlZGR5IHJ0PTg3OTgwMTA0MiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg3OTgwMTA0MgpIbW0sIGhlaXNzdCBkYXMsIGRhc3MgU2VtaW5hcnRlaWxuZWhtZXIgc29mb3J0IE1hZ2llcnN0YXR1cyBoYWV0dGVuPyBVbmQgZGVyClByb2YgYWxzIEVNIGhpZXIgcnVtZ2Vpc3RlcnQ/IDotKQpMZXV0ZSwgaWNoIGJpbiBkYWZ1ZXIhCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmVwOm1nIChSYW50YW5wbGFuLCAxOC4gTm92IDE5OTcsIDIxOjI0OjI3KToKfiMhIHJuPUdyaW1tYm9ybiBydD04Nzk4NjA2ODAgcmc9c2NobWFycm4KfiMhIHRpZD04Nzk4MDEwNDIKNDUgQmFlbGxlID8/Pz8/CgpEaWUgYXJtZSBTQ2hpZWRzcmljaHRlcmluLi4uLi4uCgpPZSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFJlcDptZyAoVGVkZHksIDE5LiBOb3YgMTk5NywgMDg6MDQ6MzQpOgp+IyEgcm49UmFudGFucGxhbiBydD04Nzk4ODQ2Njcgcmc9c2NobWFycm4KfiMhIHRpZD04Nzk4MDEwNDIKTmUsIGRhcyBtdXNzIGRhbm4gamEgZWluIFNjaGllZHNyaWNodGVyIHNlaW4uCgpUZWRkeSwgaGF0IGt1cnogbmFjaGdlcmVjaG5ldCB1bmQgaXN0IGdhbnogc2Nob2VuIGlucyBzY2h3aXR6ZW4gZ2Vrb21tZW4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbS4uLiAoSGFuZ292ZXIsIDE5LiBOb3YgMTk5NywgMTE6NTU6NDMpOgpFaW4gbGF1dGVyIEtuYWxsIGhhbGx0IHZvbSBHZWJpcmdlIGhlcnVlYmVyLgpbQWJlbnRldWVyOkthbXVobF0gd2llIGtyaWVnIGljaCByYXVzIG9iIGRhcyBob2VsbGVuZmV1ZXIgZGV0b25pZXJ0ICBpc3M/CgpLb3Bmc2NodWV0dGVsbmQsCkhhbmdvdmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBSZWtvcmR2ZXJkY2h0aWdlIEJpbGFueiBkZXMgVFNWIFdlaW5zYmVyZzogMDoxNzUgVG9yZSAgKFJhZmZpLCAxOS4gTm92IDE5OTcsIDEzOjA0OjIwKToKfiMhIHJuPUJvaW5nIHJ0PTg3OTg0MDg2MSByZz1zY2htYXJybgp+IyEgdGlkPTg3OTc4NjY0MwpOZW5lLCBkZXIgdm9uIEFscGhhIGdlZm9yZGVydGUgTGVlcnJhdW0gKFNwYWNlKSBpc3QgaW4gZGllc2VtIGZhbGwgYW5nZWJyYWNodAouLi4gZXIgZW50c3ByaWNodCBqYSBpbSBnZWdlYmVuZW4gQmVpc3BpZWwgZGVtIFJhdW0gZGVyIFN0YWVuZGlnIHp3aXNjaGVuIGRlbgpTcGllbGVyZW5uZW4gdW5kIGRlbSBiYWxsIHdhciA6KQoKR3JpbnMKSC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlcmFkZSBlYmVuIChSYWZmaSwgMTkuIE5vdiAxOTk3LCAxMzowNTozMyk6CkppbW15IHJ1ZnQ6IFdlbm4gZGFzIGtlaW4gR3J1bmQgenVtIEZlaWVybiBpc3QhISA6LSkKQ29ubmVjdGlvbiBjbG9zZWQgYnkgZm9yZWlnbiBob3N0Lgp5b3UgaGF2ZSBtYWlsCiQKCkdydXNzCkguCihFcyB3YXIgbnVyIGVpbiBkaXNjb25uZWN0IHdlZ2VuIGRlbSBmaXJld2FsbCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uZ3J1ZXNzIG1pciBkaWUgU29ubmUuLiAoQmllcmNoZW4sIDE5LiBOb3YgMTk5NywgMTU6MjE6MzYpOgpFYmVuIGltIE5ldHogZ2VmdW5kZW4gOikKCiAgIk5ldWxpY2ggaW0gRnVua3ZlcmtlaHIiCgogIFVlYnJpZ2VuczogYWxsZSBGdW5rLVN0b3JpZXMgc2luZCBhdXMgdmVyc2NoaWVkZW5lbiBBdXNnYWJlbiBkZXMKICBGbGllZ2VyTWFnYXppbnMgdW50ZXIgZGVtIFRoZW1hICJSb2RzY2hlciIuCgoKUGlsb3Q6ICJCcmF0aXNsYXZhIFRvd2VyLCB0aGlzIGlzIE9zY2FyIE9zY2FyIEtpbG8gZXN0YWJpc2hlZCBJTFMgMTYuIgpUb3dlcjogT2VzY2FyIE9zY2FyIEtpbG8sIEd1dGVuIFRhZywgY2xlYXJlZCB0byBsYW5kIDE2LCB3aW5kIGNhbG0gLQogICAgICAgIGFuZCBieSB0aGUgd2F5OiB0aGlzIGlzIFdpZW4gVG93ZXIuIgpQaWxvdDogKE5hY2ggZWluZXIgRGVua3BhdXNlKSAiQnJhdHNpbGF2YSBUb3dlciwgT3NjYXIgT3NjYXIgS2lsbyBwYXNzZWQKICAgICAgICB0aGUgb3V0ZXIgbWFya2VyLiIKVG93ZXI6ICJPc2NhciBPc2NhciBLaWxvIHJvZ2VyLCBhbmQgb25jZSBtb3JlOiB5b3UgYXJlIGFwcHJvYWNoaW5nIFZpZW5uYSEiClBpbG90OiAoTmFjaCBlaW5lciBEZW5rcGF1c2UpICJDb25maXJtLCB0aGlzIGlzIE5PVCBCcmF0aXNsYXZhPyIKVG93ZXI6ICJZb3UgY2FuIGJlbGlldmUgbWUsIHRoaXMgaXMgVmllbm5hIQpQaWxvdDogKE5hY2ggZWluZXIgZXJuZXV0ZW4gUGF1c2UpICJCdXQgd2h5PyBXZSB3YW50IHRvIGdvIHRvIEJyYXRpc2xhdmEsCiAgICAgICAgbm90IHRvIFZpZW5uYSEiClRvd2VyOiBPZXNjYXIgT3NjYXIgS2lsbywgcm9nZXIuIERpc2NvbnRpbnVlIGFwcHJvYWNoLCB0dXJuIGxlZnQgMDMwIGFuZAogICAgICAgIGNsaW1iIHRvIDUwMDAgZmVldCwgdmVjdG9ycyB0byBCcmF0aXNsYXZhLiIKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpUb3dlcjogIkRlbHRhIERlbHRhIFdoaXNrZXksIHJvbGxlbiBTaWUgdWViZXIgVGVlcndlZyB6d28gbnVsbCBuZXVuIENoYXJsaWUKICAgICAgICB1bmQgTWlrZSB6dW0gR0FULiIKUGlsb3Q6ICJBZWguLi5UZWVyd2VnIHp3by4uLj8iClRvd2VyOiAiRGFzIGlzdCBkZXIga2xlaW5lIHJlY2h0cy4gU2llIHNpbmQgZ2VyYWRlIGRyYW4gdm9yYmVpZ2Vyb2xsdC4iClBpbG90OiAiU29ycnkuIgpUb3dlcjogIkRvbid0IHdvcnJ5LCBuZWhtZW4gU2llIGRlbiBNaWtlLiIKUGlsb3Q6ICJBZWgsIC4uLk1pa2UgPyIKVG93ZXI6ICJEYXMgaXN0IGRlciBsZXR6dGUgZ2FueiBoaW50ZW4gcmVjaHRzLi4uIgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tClBpbG90OiAiQ29uZG9yIDQ3MSwgZ2lidCdzIGhpZXIga2VpbmVuIEZvbGxvdy1tZSA/IgpUb3dlcjogIk5lZ2F0aXYsIHNlaGVuIFNpZSBtYWwgenUsIHdpZSBTaWUgYWxsZWluIHp1bSBHYXRlIDEwIGtvbW1lbi4iCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KUGlsb3Q6ICIuLi5Ub3dlciwgcGxlYXNlIGNhbGwgbWUgYSBmdWVsIHRydWNrLiIKVG93ZXI6ICJSb2dlci4gWW91IGFyZSBhIGZ1ZWwgdHJ1Y2suIgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkNvbnRyb2xsZXI6ICJQaGFudG9tLUZvcm1hdGlvbiBjcm9zc2luZyBjb250cm9sem9uZSB3aXRob3V0IGNsZWFyYW5jZSwgc3RhdGUKICAgICAgICAgICAgeW91ciBjYWxsc2lnbiAhIgpQaWxvdDogICAgICAiSSdtIG5vdCBzaWxseS4uLiIKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpDb250cm9sbGVyIChpbiBTdHV0dGdhcnQpOiAiTHVmdGhhbnNhIDU2ODAsIHJlZHVjZSB0byAxNzAga25vdHMuIgpQaWxvdDogIkRhcyBpc3QgamEgd2llIGluIEZyYW5rZnVydC4gRGEgZ2lidCdzIGF1Y2ggbnVyIDIxMCB1bmQgMTcwIEtub3Rlbi4uLgogICAgICAgIEFiZXIgd2lyIHNpbmQgamEgZmxleGliZWwuIgpDb250cm9sbGVyOiAiV2lyIGF1Y2guIFJlZHVjZSB0byAxNzMga25vdHMuIgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkNvbnRyb2xsZXI6ICJSRkcgMzEyLCBmbGllZ2VuIFNpZSBkaXJla3QgbmFjaCBPbG5vIFZPUi4KICAgICAgICAgICAgIEJyYXVjaGVuIFNpZSBlaW5lbiBSYWRhci1WZWt0b3IgPyIKUGlsb3Q6ICAgICAgIk5laW4sIGVzIGdlaHQgYXVjaCBzbywgd2lyIGtvZW5uZW4gZGFzIFZPUiBzY2hvbiBlbXBmYW5nZW4uCiAgICAgICAgICAgICBFcyBsaWVndCBnZW5hdSBpbiBkZXIgUmljaHR1bmcsIHdvIGRlciBNb25kIHN0ZWh0LiIKQ29udHJvbGxlcjogIkphLCBhYmVyIGRlbiBoYWJlbiB3aXIgbmljaHQgYXVmIGRlbSBSYWRhcnNjaGlybS4iCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KUGlsb3Q6ICAiR3JvdW5kLCBYWS1saW5lIDE5NSwgcmVxdWVzdGluZyBzdGFydC11cC4iCkdyb3VuZDogIlNvcnJ5LCBYWS1saW5lIDE5NSwgd2UgZG9uJ3QgaGF2ZSB5b3VyIGZsaWdodCBwbGFuLgogICAgICAgICBXaGF0IGlzIHlvdXIgZGVzdGluYXRpb24gPyIKUGlsb3Q6ICAiV2llIGplZGVuIE1vbnRhZywgbmFjaCBMZWlwemlnLiIKR3JvdW5kOiAiQWJlciwgd2lyIGhhYmVuIGhldXRlIERpZW5zdGFnICEiClBpbG90OiAgIldBUyA/IEFtIERpZW5zdGFnIGhhYmVuIHdpciBkb2NoIGZyZWkgISIKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpDb250cm9sbGVyOiAiSGF3ayAyMCwgaXMgdGhpcyB0aGUgc2FtZSBhaXJjcmFmdCBkZWNsYXJpbmcgZW1lcmdlbmN5CiAgICAgICAgICAgICBhYm91dCB0d28gaG91cnMgYWdvID8iClBpbG90OiAgICAgICJOZWdhdGl2LCBTaXIuIEl0J3Mgb25seSB0aGUgc2FtZSBwaWxvdC4iCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KUGlsb3Q6ICJUb3dlciwgZGEgYnJlbm50IGVpbiBSdW53YXktbGlnaHQuIgpMb3RzZTogIkljaCBob2ZmZSwgZGEgYnJlbm5lbiBtZWhyZXJlLiIKUGlsb3Q6ICJTb3JyeSwgaWNoIG1laW5lLCBlcyBxdWFsbXQuIgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkNvbnRyb2xsZXI6ICJEZWx0YSBadWx1IFJvbWVvLCB0dXJuIHJpZ2h0IG5vdyBhbmQgcmVwb3J0IHlvdXIgaGVhZGluZy4iClBpbG90OiAgICAgICJXaWxjby4gMzQxLCAzNDIsIDM0MywgMzQ0LCAzNDUuLi4iCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KVG93ZXI6ICJMdWZ0aGFuc2EgODkzLCBudW1iZXIgb25lLCBjaGVja2NhciBvbiB0aGUgcnVud2F5LiIKUGlsb3Q6ICJSb2dlciB3ZSdsbCBjaGVjayB0aGUgY2FyIG9uIHRoZSBydW53YXkuIgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkNvbnRyb2xsZXI6ICJEZWx0YSBSb21lbyBadWx1LCBjb25maXJtIHlvdSBhcmUgaW5ib3VuZCB0byBTdWx6IE5EQj8iClBpbG90OiAgICAgICJBZmZpcm0sIGJ1dCB3ZSBkb24ndCByZWNlaXZlIGl0LiIKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpDb250cm9sbGVyOiAiRGVsdGEgT3NjYXIgTWlrZSwgc3F1YXdrIDA0NzYuIgpQaWxvdDogICAgICAiU2F5IGFnYWluLiIKQ29udHJvbGxlcjogIlNxdWF3ayAwNDc2LiIKUGlsb3Q6ICAgICAgIkZvdXIsIHplcm8uLi4/ICIKQ29udHJvbGxlcjogIldvbGxlbiBTaWUnbiBsZWljaHRlcmVuIGhhYmVuID8iCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQ29udHJvbGxlcjogIkRlbHRhIEJyYXZvIENoYXJsaWUsIGlzdCBJaHIgU3F1YXdrIHdpcmtsaWNoCiAgICAgICAgICAgICBzaWViZW4gbnVsbCB2aWVyIHNlY2hzPyIKUGlsb3Q6ICAgICAgIlBvc2l0aXYuIgpDb250cm9sbGVyOiAiSWNoIG1hZydzIGthdW0gZ2xhdWJlbiwgU2llIGhhYmVuIGVpbmUgYW5nZXplaWd0ZSBIb2VoZQogICAgICAgICAgICAgdm9uIG1pbnVzIG5ldW56aWcgRnVzcy4iCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQ29udHJvbGxlcjogIkhvdGVsIFBhcGEgT3NjYXIgY2xpbWIgZm91ciB0aG91c2FuZCB0byBzaXggdGhvdXNhbmQKICAgICAgICAgICAgIGFuZCBtYWludGFpbi4iClBpbG90OiAgICAgICJIb3RlbCBQYXBhIE9zY2FyLCBjbGltYmluZyBmbGlnaHQgbGV2ZWwgMTAwLiIKQ29udHJvbGxlcjogIkhvdGVsIFBhcGEgT3NjYXIsIGNsaW1iIHRvIGZsaWdodCBsZXZlbCA2MCBhbmQgbWFpbnRhaW4uIgpQaWxvdDogICAgICAiQWJlciB2aWVyIHBsdXMgc2VjaHMgaXN0IGRvY2ggemVobiwgb2Rlcj8iCkNvbnRyb2xsZXI6ICJTaWUgc29sbGVuIHN0ZWlnZW4sIG5pY2h0IGFkZGllcmVuLiIKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpDb250cm9sbGVyOiAiREUuLi4sIGZsaWVnZW4gU2llIHdlaXRlciBpbSBHZWdlbmFuZmx1ZyBmdWVyIGRpZQogICAgICAgICAgICAgMjYsIExhbmRlbnVtbWVyIDIgaGludGVyIGVpbmVyIERDIDkgaW0ga3VyemVuIEVuZHRlaWwuIgpQaWxvdDogICAgICAiVmVyc3RhbmRlbiwgZmxpZWdlIHdlaXRlciBmdWVyIGRpZSAyOSB1bmQgZm9sZ2UgZGVyIERDIDYuIgpDb250cm9sbGVyOiAiTmljaHQgZ2FueiByaWNodGlnOiBEaWUgTGFuZGViYWhuIHdhciAyNiB1bmQKICAgICAgICAgICAgIElociBWZXJrZWhyIGVpbmUgREMgOS4iClBpbG90OiAgICAgICJPa2F5LCBpY2ggZm9sZ2UgZGVyIERDIDI2Li4uIFdpZSB3YXIgZGllIExhbmRlYmFobiA/IgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkh1YnNjaHJhdWJlci1MZWhyZXIgKHp1IHNlaW5lbSBGbHVnc2NodWVsZXIpOgoiU2VoZW4gU2llIHp1LCBkYXNzIFNpZSBpbm5lcmhhbGIgZGVyIGJldG9uaWVydGVuIEZsYWVjaGUgYmxlaWJlbi4iClVuZCBuYWNoIGVpbiBwYWFyIE1pbnV0ZW46CiJBY2ggd2FzcywgYmxlaWJlbiBTaWUgd2VuaWdzdGVucyBpbiBkZXIgQnVuZGVzcmVwdWJsaWsgISAiCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KSW4gTWVtb2VyaWFtIE11ZW5jaGVuLVJpZW0sIHdvIGdsZWljaHplaXRpZyBlaW5lIFRCMTAgYXVmIGRlciAyNVIgdW5kIGVpbmUgNzM3CmF1ZiBkZXIgMjVMIGxhbmRlbi4KClBpbG90IGRlciA3Mzc6ICJXYXIgZGFzIGpldHp0IGVpbmUgRm9ybWF0aW9uc2xhbmR1bmcgPyIKVG93ZXI6ICAgICAgICAgIk5lZS4gRm9ybWF0aW9uc2ZsdWcgaXN0J3MgamEgbnVyLCB3ZW5uIGlocgogICAgICAgICAgICAgICAgYXVmIGRlcnNlbGJlbiBCYWhuIGxhbmRldC4gQWJlciBzYWggdHJvdHpkZW0gZ3V0IGF1cy4KICAgICAgICAgICAgICAgIEF1c3NlcmRlbTogZGllIEJhaG5lbiBzaW5kIGphIHp3ZWkgS2lsb21ldGVyIGF1c2VpbmFuZGVyLAogICAgICAgICAgICAgICAgZGEga2FubiBuaWNodHMgcGFzc2llcmVuLiIKNzM3LVBpbG90IGJlaW0gUm9sbGVuIGF1ZiBkZW0gVGF4aXdheTogIklzdCBkYXMgbmljaHQga29taXNjaD8gRGllIEJhaG5lbgogICAgICAgICAgICAgICAgc2luZCBkb2NoIGhvZWNoc3RlbnMgMjAwIE1ldGVyIGF1c2VpbmFuZGVyICE/IgpUb3dlcjogICAgICAgICAiTmF0dWVybGljaCEgRWluIEJheWVyIGhhZXR0JyBkYXMgc2Nob24gbGFlbmdzdCBnZW1lcmt0LiIKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpQaWxvdDogICAgICAiRnJhbmtmdXJ0IEluZm9ybWF0aW9uLCBoaWVyIERlbHRhIEJyYXZvIFp1bHUuIFdpciBzaW5kCiAgICAgICAgICAgICBqZXR6dCB1ZWJlciBEaW5rZWxzYnVlaGwgaW4gRmx1Z2ZsYWVjaGUgOTUuIgpDb250cm9sbGVyOiAiU2llIHNvbGx0ZW4gZG9jaCBNdWVuY2hlbiBJbmZvcm1hdGlvbiBydWZlbiAhIgpQaWxvdDogICAgICAiSmEsIHdlaXNzIGljaCwgYWJlciBiZWkgSWhuZW4gZ2VmYWVsbHQgbWlyIGRhcyBQcm9ncmFtbSBiZXNzZXIuIgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkNvbnRyb2xsZXI6ICJGbGFtaW5nbyAwMTksIGRvIHlvdSBoYXZlIGEgIlNwcmluZ2JvY2siIGluIHNpZ2h0LCB0d2VsdmUKICAgICAgICAgICAgIG8nY2xvY2sgZml2ZSBtaWxlcyBjcm9zc2luZyBmcm9tIGxlZnQgdG8gcmlnaHQgPyIKUGlsb3Q6ICAgICAgIklmIHlvdSBtZWFuIGEgNzM3Li4uPyIKQ29udHJvbGxlcjogIlllYWgsIHlvdSBnb3QgaXQsIHlvdSBnb3QgaXQgISIKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpUb3dlcjogIkRlbHRhIEZveCBBbHBoYSwgaG9sZCBwb3NpdGlvbiwgTWFyc2hhbGwgd2lsbCBwYXJrIHlvdS4iClBpbG90OiAiUm9nZXIuIExvb2tpbmcgb3V0IGZvciBKb2huIFdheW5lLiIKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpNdWVuY2hlbiBJSQoKVG93ZXI6ICAgICAgICAgICAiTEggODYxMCBjbGVhcmVkIGZvciB0YWtlLW9mZi4iClBpbG90IChMSCA4NjEwKTogIldpciBzaW5kIGFiZXIgbm9jaCBnYXIgbmljaHQgZ2VsYW5kZXQuIgpUb3dlcjogICAgICAgICAgICJKYSwgd2VyIHN0ZWh0IGRlbm4gZGEgYXVmIGRlciAyNiBzb3V0aCA/ICIKUGlsb3QgKExIIDg4MDEpOiAiTEggODgwMS4iClRvd2VyOiAgICAgICAgICAgIk5hIGphLCBkYW5uIHNlaWQgaWhyIGNsZWFyZWQgZm9yIHRha2Utb2ZmLiIKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpUb3dlcjogIkRlbHRhIE1pa2UgWnVsdSwgYWZ0ZXIgbGFuZGluZyBjbGVhcmVkIHRvIHRheGkgQWxwaGEgNywKICAgICAgICBBbHBoYSA1LCBXaGlza2V5IDIsIERlbHRhIDEgYW5kIE9zY2FyIDIuIgpQaWxvdDogIldvIGlzdCBkZW5uIGRhcywgd2lyIGtlbm5lbiB1bnMgaGllciBub2NoIG5pY2h0IHNvIGF1cyA/IgpUb3dlcjogIkRhcyBtYWNodCBuaWNodHMuIEljaCBiaW4gYXVjaCBlcnN0IHp3ZWkgVGFnZSBoaWVyLiIKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpGbHVnc2NodWVsZXI6ICJMaWNodGVuZmVscyBJbmZvLCBERUlUTiwgaW0gcmVjaHRlbiBRdWVyYW5mbHVnCiAgICAgICAgICAgICAgIExhbmRlYmFobiAyMiwgenVtIER1cmNoc3RhcnRlbiB1bmQgQXVmc2V0emVuLiIKVHVybTogICAgICAgICAiREVJVE4sIGljaCBoYWJlIGVpbmUgZ3Jvc3NlIEJpdHRlOiBlcnN0IGF1ZnNldHplbgogICAgICAgICAgICAgICB1bmQgZGFubiBkdXJjaHN0YXJ0ZW4hIgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tClRvd2VyOiB5b3UgaGF2ZSB0cmFmZmljIGF0IDEwIG8nY2xvY2ssIDYgbWlsZXMhClBpbG90OiBnaXZlIHVzIGFub3RoZXIgaGludCwgd2UgaGF2ZSBkaWdpdGFsIHdhdGNoZXMhCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KVG93ZXI6IE1pc3Npb24gMTIzLCBkbyB5b3UgaGF2ZSBwcm9ibGVtcz8KUGlsb3Q6IEkgdGhpbmssIEkgaGF2ZSBsb3N0IG15IGNvbXBhc3MuClRvd2VyOiBKdWRnaW5nIHRoZSB3YXkgeW91IGFyZSBmbHlpbmcsIHlvdSBsb3N0IHRoZSB3aG9sZSBpbnN0cnVtZW50IHBhbmVsIQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tClBpbG90OiBHb29kIG1vcm5pbmcsIEZyYW5rZnVydCBncm91bmQsIEtMTSAyNDIgcmVxdWVzdCBzdGFydCB1cCBhbmQgcHVzaCBiYWNrLAogICAgICAgcGxlYXNlLiAgKFR1cmJpbmVuIHN0YXJ0ZW4gdW5kIHZvbSBUZXJtaW5hbCB6dXJ1ZWNrc2NoaWViZW4gbGFzc2VuKQpUb3dlcjogS0xNIDI0MiBleHBlY3Qgc3RhcnQgdXAgaW4gdHdvIGhvdXJzLgpQaWxvdDogUGxlYXNlIGNvbmZpcm06IHR3byBob3VycyBkZWxheT8KVG93ZXI6IEFmZmlybWF0aXZlClBpbG90OiBJbiB0aGF0IGNhc2UsIGNhbmNlbCB0aGUgZ29vZCBtb3JuaW5nIQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpJY2ggd2Vpc3Mgc2Nob24sIHdhcnVtIGljaCBuaWUgaW4gZWluIEZsdWd6ZXVnIHN0ZWlnZW4gd3VlcmRlIDopCiAgICAgICAgICAgICAgICAtIEJpZXJjaGVuIC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAuLi5ncnVlc3MgbWlyIGRpZSBTb25uZS4uIChCaXJkeSwgMTkuIE5vdiAxOTk3LCAxNjozNDoxMik6Cn4jISBybj1CaWVyY2hlbiBydD04Nzk5NDkyOTYgcmc9c2NobWFycm4KfiMhIHRpZD04Nzk5NDkyOTYKQmlyZHkgc2NobWVpc3N0IHNpY2ggZ3JhZCBhdXMgZGVtIEZlbnN0ZXIuIDopKSkpKSkpKTAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFVsYW1zY2hlIEZ1bmt0aW9uIChHcmltbWJvcm4sIDIwLiBOb3YgMTk5NywgMDk6MDg6NDMpOgp+IyEgb249S3JldGVrIG90PTg3OTk1MzkyMCBvZz1hbnplaWdlbgp+IyEgcm49QnJ1bW1lbCBydD04Nzk0MjAzNjAgcmc9YW56ZWlnZW4KfiMhIHRpZD04NzkzNzE2MzAKRXksIG5peCBnZWdlbiBXaVdpcyBoaWVyIDotKQoKS3JldGVLCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBVbGFtc2NoZSBGdW5rdGlvbiAoR3JpbW1ib3JuLCAyMC4gTm92IDE5OTcsIDA5OjA4OjQ0KToKfiMhIG9uPVByYSBvdD04Nzk5NTY5Mzggb2c9YW56ZWlnZW4KfiMhIHJuPUtyZXRlayBydD04Nzk5NTM5MjAgcmc9YW56ZWlnZW4KfiMhIHRpZD04NzkzNzE2MzAKV2VubiBuaWNodCBoaWVyLCB3byBkYW5uPwoKUHJhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogVWxhbXNjaGUgRnVua3Rpb24gKEdyaW1tYm9ybiwgMjAuIE5vdiAxOTk3LCAwOTowODo0NSk6Cn4jISBvbj1XdXJ6ZWwgb3Q9ODc5OTYxOTM3IG9nPWFuemVpZ2VuCn4jISBybj1QcmEgcnQ9ODc5OTU2OTM4IHJnPWFuemVpZ2VuCn4jISB0aWQ9ODc5MzcxNjMwCm5hLCB1ZWJlcmFsbC4gZGFzIGJlZGV1dGV0OiBoaWVyIGF1Y2guCgp3dXJ6ZWwKCnAucy4gZ3JpbW1ib3JuLCB3YWx0ZSBkZWluZXMgYW10ZXMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFVsYW1zY2hlIEZ1bmt0aW9uIChHcmltbWJvcm4sIDIwLiBOb3YgMTk5NywgMDk6MTg6MDIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg4MDAxMzMyNSByZz1zY2htYXJybgp+IyEgdGlkPTg3OTM3MTYzMApBYmVyIGdlcm5lLCBhYmVyIGltbWVyLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktyYW5raGVpdGVuLi4uLiAoTWllemUsIDIwLiBOb3YgMTk5NywgMTE6NDk6MTkpOgoKZWJlbiBpcmdlbmR3byBpbSBNRy4uLgoKRHUgc2NodWV0dGVsc3QgRGljaC4gRnJpZXJzdCBEdSBldHdhPwoKTWVybGluIHJ1ZnQ6IEFudGliaW90aWthIGlzdCBqZXR6dCBlaW4gU2VoZXIgIQoKLyBXaWUgZGFzIHdpZWRlciBwYXNzdC4uLi4gCgpFaW5lIGtyYW5rZSBNaWV6ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IFRvZGVzcmVmb3JtIHVuZCBBbmhhbmcuIChHcmltbWJvcm4sIDIwLiBOb3YgMTk5NywgMTY6NTM6MjQpOgp+IyEgb249R25vbWUgb3Q9ODgwMDQxMTg1IG9nPWVudHdpY2tsdW5nCn4jISBybj1BY3JpbW9uIHJ0PTg4MDA0MDI2MCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg3OTc3NzY0NwpobW1tLi4uCnNvbnN0IGdlaHQgZXMgZGlyIGFiZXIgZ3V0PyBrZWluZSBhbmRlcmVuIHByb2JsZW1lIG9kZXIgc28/CmFsbGVzIGtsYXIgZGEgdW50ZW4gaW4gbXVlbmNoZW4/IGRhbm4gYmluIGljaCBqYSBiZXJ1aGlndC4uLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAuLi5ncnVlc3MgbWlyIGRpZSBTb25uZS4uIChBY3JpbW9uLCAyMC4gTm92IDE5OTcsIDE4OjM2OjU2KToKfiMhIHJuPUJpZXJjaGVuIHJ0PTg3OTk0OTI5NiByZz1zY2htYXJybgp+IyEgdGlkPTg3OTk0OTI5NgpEYXMgd2FyIGtvZXN0bGljaCwgaWNoIGhhYiBtaWNoIGdld3VuZGVuIHZvciBMYWNoZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGF1ZiBkZXIgSG9jaHplaXQuLi4gKEZyZXVuZCwgMjQuIE5vdiAxOTk3LCAxNzoyOTo0Nyk6CkR1IHNjaGF1c3QgZGV6ZW50IHdlZywgYWxzIHNpY2ggS2V5IHVuZCBTdGluZyB2ZXJsaWVidCBpbiBkaWUgQXJtZQpzaW5rZW4uCkR1IHNjaG1laXNzdCBlaW4gS2lzc2VuIG5hY2ggS2V5LgpLZXkgdmVyc3VjaHQgd2VnenVyZW5uZW4sIGRvY2ggZGFzIEtpc3NlbiB0cmlmZnQgZGVuIEhpbnRlcmtvcGYuCgpUaW1pbmcgaXN0IGhhbHQgYWxsZXMuLi4gOykKRnJldW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUm9uZGEgaXN0IHNjaGxlY2h0IGRyYXVmIC0gdW5kIFN1c2hpIGhhdCBzaWNoIHNlbGJzdCBnZWxvZXNjaHQhIChSb25kYSwgMjQuIE5vdiAxOTk3LCAyMTo0MzoyNik6ClR1dCBtaXIgZnVyY2h0YmFyIGxlaWQsIGFiZXIgZGFzIExvZyBpc3QgbnVuIG1hbCBzbyBsYW5nLi4uIG5vdGZhbGxzIHZlcnNjaGljawppY2hzIGF1Y2ggYWxzIGRvYy1GaWxlLi4uCgpBbiBlaW5lbSBnYW56IG5vcm1hbGVuIE1vbnRhZy4uLiB1bnNlcmUgTWFnaWVyIHNwaWVsZW4gbWFsIHdpZWRlciB2ZXJydWVja3QuLi4KKHVuZCBlcyBsYWcgZG9jaCBhbGxlcyBhbiBTdXNoaSAtIGljaCB3YXIgZWluZmFjaCBudXIgc2NobGVjaHQgZHJhdWYuLi4pCgpGb2xnZW5kZXMgaXN0IGF1ZiAnTWFnaWVyJyBwYXNzaWVydDoKW01hZ2llcjpSb25kYV0gU29ycnksIFN1c2hpIHdvbGx0ZSBzaWNoIG5vY2htYWwgZGFzIEphaWwgYW5zZWhlbi4uLiBJZGlvdCEKW01hZ2llcjpSb25kYV0gPDIwOjA0OjI0PgpbTWFnaWVyOlJvbmRhXSBMYW5nc2FtIG11ZXNzdGUgZXJzIGRvY2gga2VubmVuLCBvZGVyPyA8MjA6MDQ6NDQ+CltNYWdpZXI6V3VyemVsIGdyaW5zdC4gPDIwOjA0OjU2Pl0KW01hZ2llcjpTdXNoaV0gUm9uZGEsIGRhcyBpc3QgbmljaHQgZWlubWFsIGFuc2F0endlaXNlIGtvbWlzY2ggLSBtYWNoIGRhcyB3ZWcuCltNYWdpZXI6U3VzaGldIDwyMDoxNzoxND4KW01hZ2llcjpSb25kYV0gTWlzdCwgZGFyZiBpY2ggamEgZ2FyIG5pY2h0ISBEYXMgaXN0IGphIFNwaWVsZXJoaWxmZS4uLgpbTWFnaWVyOlJvbmRhXSA8MjA6MTc6NDY+CltNYWdpZXI6ZWluIEZyb3NjaF0gSGlsZmUsIGljaCB3ZXJkZSB2b24gZWluZXIgbWFubnN0b2xsZW4gTWFnaWVyaW4gc2V4dWFsbApbTWFnaWVyOmVpbiBGcm9zY2hdIGJlbGFlc3RpZ3QhIDwyMDoyOTo1Mz4KW01hZ2llcjpXdXJ6ZWxdIG51ciB6dSA6KSA8MjA6MzA6MTE+CltNYWdpZXI6QXJncywgYmluIGljaCBibG9lZCFlciBTdXNoaV0gV3VyemVsLCBEdSBiaXN0IGtlaW5lIGdyb3NzZSBIaWxmZSEKW01hZ2llcjpBcmdzLCBiaW4gaWNoIGJsb2VkIWVyIFN1c2hpXSA8MjA6MzA6MjE+CltNYWdpZXI6Um9uZGFdIHJvdGZsIDwyMDozMDozMT4KW01hZ2llcjpSb25kYV0gZGFmZXVyIHdhciBkaWUgcHJvcGVydHkgOikgPDIwOjMwOjM3PgpbTWFnaWVyOkFyZ3MsIGJpbiBpY2ggYmxvZWQhZXIgU3VzaGldIEhhaGFoYS4uLiA8MjA6MzA6Mzc+CltNYWdpZXI6Um9uZGFdIFN1c2hpLCB3aWUgZ2VodHM/IDwyMDozNTowOT4KW01hZ2llcjplaW4gRnJvc2NoXSBIbW1tLCB1bmQgbnU/IDwyMDozOTozOT4KW01hZ2llcjpSb25kYV0gbnVyIEZyb3NjaD8gTWlzdCA8MjA6Mzk6NDc+CltNYWdpZXI6Um9uZGEgaGF0dGUgZ2Vob2ZmdC4uLi4gYmFzdGVsIDwyMDo0MDowMT5dCltNYWdpZXI6QmFoISBJY2ggYmluIGJsb2VkIHVuZCBzdGlua2UhIERlciBTdXNoaV0gUm9uZGEsIER1IGJpc3QgdG90YWwKW01hZ2llcjpCYWghIEljaCBiaW4gYmxvZWQgdW5kIHN0aW5rZSEgRGVyIFN1c2hpXSBrcmFuay4uLiA8MjA6NDA6MDk+CltNYWdpZXI6Um9uZGEgcml0ZmwuLi4gYmVpIDwyMDo0MDoxOT5dCltNYWdpZXI6Um9uZGEgZmFlbGx0IGZhc3Qgdm9tIFN0dWhsIDwyMDo0MDoyNz5dCltNYWdpZXI6RGFtaWVuXSBIbWphLi4uKlJPVEZMKiA8MjA6NDA6MzU+CltNYWdpZXI6RGFtaWVuIGhhdCBkYW1pdCB1ZWJlcmhhdXB0IG5peCB6dSB0dW4uIDwyMDo0MTowMz5dCltNYWdpZXI6RGFtaWVuXSBTY2hpY2sncyBtYWwgYXVmIC1hIHJhdXMuIDopIDwyMDo0MToxNT4KW01hZ2llcjpGcmV1bmRdIEd1dCwgZGFubiBwcm9nZyBtaXIgZG9jaCBtYWwgZWluZSBRdWVzdC4gPDIwOjQxOjE5PgpbTWFnaWVyOkRhbWllbl0gSG1tLCBpY2g/IDwyMDo0MTo1NT4KCkVpbmlnZSBaZWl0IHNwYWV0ZXIsIHp3ZWkgTWFpbHMgdm9uIEV4LVN1c2hpIG1pdCBkZXIgQml0dGUgdW0gUmVnZW5lcmllcnVuZwp3ZWl0ZXIuLi4KCltNYWdpZXI6Um9uZGFdIEhtbW1tbW0uLi4uIHRqYS4uLiB1bmQgbnU/IFN1c2hpIGhhdCBzaWNoIGdyYWQgc2VsYnN0CltNYWdpZXI6Um9uZGFdIGdlbG9lc2NodC4uLi4gdW5kIG51biBtZWludCBlciBwZXIgTWFpbCwgaWNoIHNvbGx0ZSBtYSBFcnppZXMKW01hZ2llcjpSb25kYV0gZnJhZ2VuLCBvYiBzaWUgaWhuIHJlc3RhdXJpZXJlbi4uLiBhbHNvIGltIFJhaG1lbiB2b24gIlVuc2VyCltNYWdpZXI6Um9uZGFdIE11ZCBzb2xsIHNjaG9lbmVyIHdlcmRlbiIgd2FlcmUgaWNoIGphIGVpZ2VudGxpY2ggZGFnZWdlbi4uLgpbTWFnaWVyOlJvbmRhXSBhYmVyIHZpZWxsZWljaHQgc2VodCBJaHIgZGFzIGFuZGVycz8gPDIxOjE0OjA4PgpbTWFnaWVyOlJvbmRhXSBGcmV1bmQsIFJvY2h1cz8gV2llIHNjaGF1dHMgYXVzPyA8MjE6MTQ6NDk+CltNYWdpZXI6RnJldW5kXSBSb2NodXMsIHNpZWhzdCBEdSBoaWVyIEVyemllcz8gPDIxOjE0OjU5PgpbTWFnaWVyOlJvbmRhIGdyaW5zdC4uLiBudXIgQ29sYXRyaW5rZXIgPDIxOjE1OjA3Pl0KW01hZ2llcjpSb2NodXNdIGFsc28gaWNoIGhhYmUga2VpbmUgbHVzdCBpaG4genUgcmVzdGF1cmllcmVuLi4uLiB3ZW5uIGVyCltNYWdpZXI6Um9jaHVzXSBzZWxic2xvZXNjaHVuZyB0aXBwdCBzb2xsIGVyIHNpY2ggZGFzIHZvcmhlciB1ZWJlcmxlZ2VuLgpbTWFnaWVyOlJvY2h1c10gPDIxOjE1OjE5PgpbTWFnaWVyOkZyZXVuZF0gSWNoIEtBTk4gaWhuIG5pY2h0IHJlc3RhdXJpZXJlbi4gSWNoIGhhYmUgZ2FyIGtlaW4gYmFja3VwLgpbTWFnaWVyOkZyZXVuZF0gPDIxOjE1OjQxPgpbTWFnaWVyOlJvbmRhXSB3aXIga29lbm5lbiBlcyBzb25zdCBqYSBtYWwgaW4gZGVyIE1QQSBkaXNrdXRpZXJlbi4uLiBSdWJyaWsKW01hZ2llcjpSb25kYV0gU2NobWFycm4/IDwyMToxNTo0OT4KW01hZ2llcjpSb25kYSB3ZWlzcyBhdWNoIG5pY2h0IHNvIGdlbmF1LCB3YXMgbWFuIGRhdm9uIGhhbHRlbiBzb2xsLi4uLgogICAgICAgIDwyMToxNjoyMT5dCltNYWdpZXI6RnJldW5kXSBTb2xsIGVyIHNpY2ggaGFsdCBlYmVuIGhvY2hzY3JpcHRlbiwgZ2VodCBkb2NoIHNjaG5lbGwuIDspKSkKW01hZ2llcjpGcmV1bmRdIDwyMToxNjozMT4KW01hZ2llcjpSb25kYSBncmluc3QgLi4uLi4uLi4gPDIxOjE2OjM5Pl0KW01hZ2llcjpXdXJ6ZWxdIHNlbGJzdGxvZXNjaHVuZyBoZWlzc3Qgc28sIHdlaWwgbWFuIGVzIHNlbGJzdCB0dXQuIHB1bmt0LgpbTWFnaWVyOld1cnplbF0gPDIxOjE2OjQzPgpbTWFnaWVyOlJvbmRhXSBuYSBndXQsIGFiZXIgZGVyIENoYXJha3RlciBTdXNoaS4uLiBuYWphLi4uIG9rLCBzY2hsZWNodGVzCltNYWdpZXI6Um9uZGFdIEFyZ3VtZW50IDwyMToxNjo1NT4KW01hZ2llcjpGcmV1bmRdIEFsc28sIGltIEVybnN0OiBJY2ggdmVyc3RlaGUsIGRhc3MgbWFuIG5hY2ggZWluZXIKW01hZ2llcjpGcmV1bmRdIHNlbGJzdGxvZXNjaHVuZyBkaWUgU2FjaGUgYmVyZXV0LiBLZWluZSBGcmFnZS4gQWJlciBpY2ggLSBkZXIKW01hZ2llcjpGcmV1bmRdIEVyem1hZ2llciBtaXQgZGVuIGFsbGVyd2VuaWdzdGVucyBVbml4IHVuZCBMUEMtS2VubnRuaXNzZW4sCltNYWdpZXI6RnJldW5kXSBkZW4gZXMgamUgZ2FiIC0gS0FOTiBpaG4gbm5pY2h0IHJlc3RhdWVyaWVyZW4sIHdlaWwgZXIgbWlyCltNYWdpZXI6RnJldW5kXSB2b3JoZXIgZWluZSBNYWlsIGhhZXR0ZSBzY2hpY2tlbiBzb2xsZW4sIGRhc3MgaWNoIHNlaW4KW01hZ2llcjpGcmV1bmRdIHNhdmUtRmlsZSBrb3BpZXJlLCBEYW5uIGhhZXR0ZSBpY2ggZXMgZ2Vrb25udC4gPDIxOjE4OjE4PgpbTWFnaWVyOlJvbmRhXSBuYWphLCB2b3IgbmVyIFNlbGJzdGxvZXNjaHVuZyBzYWdlbjogYml0dGUga29waWVyIG1pY2ggbWFsIGlzdApbTWFnaWVyOlJvbmRhXSBuZW4gYmlzc2NoZW4uLi4gdW5nZXdvZWhubGljaCA8MjE6MTg6NTA+CltNYWdpZXI6RnJldW5kXSBHYXIgbmljaHQuIE1hY2hlbiBlaW5pZ2UuLi4gPDIxOjE5OjExPgpbTWFnaWVyOkhhdGVdIEFsbGVzIEZlaWdsaW5nZSEgPDIxOjE5OjMzPgpbTWFnaWVyOlJvbmRhXSBpc3QgamEgd2llIHZvbSBEYWNoIHNwcmluZ2VuIG1pdCBuZW0gQnVuZ2Vlc2VpbC4uLiA8MjE6MTk6MzM+CltNYWdpZXI6Um9uZGFdIEhhbGxvIEhhdGUgOykgPDIxOjE5OjQzPgpbTWFnaWVyOkhhdGVdIE5hamEsIG1pdCBuZW0gQnVuZ2Vlc2VpbCB2b20gRGFjaCBzcHJpbmdlbiBtYWNodCBhYmVyIGJvZXNlCltNYWdpZXI6SGF0ZV0gU2NocmFtbWVuIDwyMToyMDowMz4KW01hZ2llcjpSb25kYV0gU2VsYnN0bG9lc2NodW5nIGFiZXIgYXVjaC4uLiB3YXMgZGEgYW4gQml0cyB2ZXJsb3JlbmdlaHQuLi4KW01hZ2llcjpSb25kYV0gdW5zY2h1bGRpZ2UgQml0cywgZGllIGtlaW5lbSB3YXMgZ2V0YW4gaGFiZW4hIDwyMToyMjowNz4KW01hZ2llcjpSb2NodXNdIGhtbSwgZGEgZmFlbGx0IG1pciBlaW4sIGpldHp0IHdvIGRlciBaVCBiZWltIGJ1bmdlZS1zZWlsIHdlZwpbTWFnaWVyOlJvY2h1c10gaXN0LCBrb2VubnRlIGljaCBtYWwgZGllIGJlbGFzdGJhcmtlaXQgZGVzIHNlaWxzCltNYWdpZXI6Um9jaHVzXSByYW5kb21pc2llcmVuLi4uIDopIDwyMToyMjoxMT4KW01hZ2llcjpSb25kYV0gSGFzdCBsYW5nIGtlaW5lIENvbGEgbWVociBiZWtvbW1lbiwgUm9jaHVzPyBEdSB3aXJzdCBfZWNodF8KW01hZ2llcjpSb25kYV0gZmllcyEgPDIxOjIyOjMzPgpbTWFnaWVyOkZyZXVuZF0gRHUgbWVpbnN0ICJyb2NodXNzaWVyZW4iPyA8MjE6MjI6Mzk+CltNYWdpZXI6Um9uZGEgZ3JpbnN0IGZyZWNoIDwyMToyMjozOT5dCltNYWdpZXI6Um9jaHVzXSBvZGVyIGljaCBrb2VubnRlIGRhIGF1Y2ggdW50ZXJzY2hpZWRsaWNoIGxhbmdlIHNlaWxlCltNYWdpZXI6Um9jaHVzXSBoaW5sZWdlbi4uLiA8MjE6MjM6MTA+CltNYWdpZXI6Um9uZGFdIHVuZCB1bnRlcnNjaGllZGxpY2ggc3RhcmtlLi4uIGZ1ZXIgWndlcmdlLCBFbGZlbiB1bmQgc28/CltNYWdpZXI6Um9uZGFdIDwyMToyMzozND4KW01hZ2llcjpGcmV1bmRdIHVuZCB1bnRlcnNjaGllZGxpY2ggYnJlbm5lbmRlLi4uIDwyMToyMzozNj4KW01hZ2llcjpSb25kYV0gRWluIHp1IGR1ZW5uZXMgU2VpbCBoYXQgc29lYmVuIFhYWCB1bWdlYnJhY2h0ISAqWmllbmchKgpbTWFnaWVyOlJvbmRhXSA8MjE6MjM6NTQ+CltNYWdpZXI6Um9jaHVzXSBobW0sIGJlcnRyYW0ga2FubiBtaXIgYmVzdGltbXQgdGlwcyBnZWJlbiwgd2VsY2hlIGRpbmdlIHNpY2gKW01hZ2llcjpSb2NodXNdIHVudGVyIHp1Z2JlbGFzdHVuZyBlbnR6dWVuZGVuLi4uIDwyMToyNDozMj4KW01hZ2llcjpGcmV1bmRdIFRvZCBFaW5lIFNlaWxsYWVuZ2UgenV2aWVsIGhhdCBnZXJhZGUgU3VzaGkgdW1nZWJyYWNodC4KW01hZ2llcjpGcmV1bmRdIDwyMToyNDo1ND4KW01hZ2llcjpSb2NodXNdIG5lZSwgW1RvZDpdIEJPSU5HISA8MjE6MjU6MjA+CltNYWdpZXI6Um9uZGFdIHVuZCB3ZXIgenV3ZW5pZyBTZWlsIGhhdCwgaGFlbmd0IGNhIDIgbSB1ZWJlciBkZW0gQm9kZW4gdW5kCltNYWdpZXI6Um9uZGFdIGJyYWNodCBqZW1hbmRlbiwgZGVyIGlobiBmcmVpc2NobmVpZGV0IDspIDwyMToyNTozND4KW01hZ2llcjpSb25kYV0gTmVlLCBKT0YhICptaXN0LCB3aWVkZXIgZmFsc2NoKiBCT0lORyEhISA8MjE6MjU6NTY+CltNYWdpZXI6Um9uZGFdIGxhc3N0IG1pY2ggcmF0ZW46IE1hZ2llciBzaW5kIFNhZGlzdGVuLCBTcGllbGVyIE1hc29jaGlzdGVuPwpbTWFnaWVyOlJvbmRhXSA8MjE6MjY6MjQ+CltNYWdpZXI6Um9uZGEgZ3JpbnN0IDwyMToyNjozMj5dCltNYWdpZXI6V3VyemVsXSB3b2hlciB3ZWlzc3QgZHU/IDwyMToyNjozOD4KW01hZ2llcjpSb25kYV0gb2ggamUsIGRlc2hhbGI6IFN1c2hpIHdhciBoaWVyIGZhbHNjaD8gPDIxOjI2OjUzPgpbTWFnaWVyOlJvY2h1c10gaWNoIGdsYXViZSBpY2ggc2NocmVpYmUgbWFsIG5lIG5ldWUgbHBjLWVpbmZ1ZWhydW5nLi4uLiBtaXQKW01hZ2llcjpSb2NodXNdIGJlc29uZGVyZXIgYmVydWVja3NpY2h0aWd1bmduIHZvbiBEZWZlbmQsIGRvX2RhbWFnZSgpIHVuZApbTWFnaWVyOlJvY2h1c10gZGllKCkgLi4uIDwyMToyODo1Nj4KW01hZ2llcjpSb25kYV0gRGFyZiBpY2ggZGFzIExvZyBwb3N0ZW4gLSB1bnRlciBTY2htYXJybj8gSW5jbHVzaXZlIGRlbgpbTWFnaWVyOlJvbmRhXSBCcnVlY2tlbmlkZWVlbj8gPDIxOjM0OjE4PgpbTWFnaWVyOlJvbmRhXSBhdSwgUmVjaHRzY2hyZWlidW5nIHVuZCBHcmFtbWF0aWsgZ2xhdHQgc2VjaHMgPDIxOjM0OjQ2PgpbTWFnaWVyOlJvbmRhXSBvZGVyIGJlc3NlciBudXIgaW4gbWFnaWVyLnNjaG1hcnJuPyA8MjE6MzU6MTI+CltNYWdpZXI6Um9uZGFdIEVpbndhZW5kZT8gUm9jaHVzPyBXaWUgZXJuc3Qgd2FyZW4gZGllIGlkZWVuPyA8MjE6MzU6MzI+CltNYWdpZXI6Um9jaHVzXSBnbGF1YnN0IGR1IGRpZSB3YWVyZW4gbmljaHQgZXJuc3RnZW1laW50IGdld2VzZW4gPz8/PwpbTWFnaWVyOlJvY2h1c10gPDIxOjM1OjUyPgpbTWFnaWVyOlJvY2h1c10gZHUgd2Vpc3N0IGRvY2gsIG51ciBlaW4gdG90ZXIgc3BpZWxlciBpc3QgZWluIGd1dGVyIHNwaWVsZXIgOikKW01hZ2llcjpSb2NodXNdIDwyMTozNjozNz4KW01hZ2llcjpSb2NodXNdIGtleSBpc3QgYWxzbyBkZXIgYmVzdGUgOikgPDIxOjM2OjQ1PgpbTWFnaWVyOlJvbmRhXSBST1RGTC4uLiBkYXJmIGljaCBfZGFzXyBhdWNoIHBvc3Rlbj8gPDIxOjM2OjQ3PgpbTWFnaWVyOlJvbmRhXSBST1RGTC4uLiBkYXJmIGljaCBfZGFzXyBhdWNoIHBvc3Rlbj8gPDIxOjM2OjQ3PgpbTWFnaWVyOlJvY2h1c10gbWVpbmV0d2VnZW4uLi4gYWJlciBpY2ggZ2xhdWJlIGRhbWl0IHNhZ3N0IGR1IGRlbiBzcGllbGVybgpbTWFnaWVyOlJvY2h1c10gbmljaHRzIG5ldWVzIDopIDwyMTozODoxMT4KCkFsc28gbnVuIHdpc3N0IElocnMhIElociBzZWlkIHNlbGJzdCBTY2h1bGQsIHdlbm4gSWhyIGluIGVpbmUgdm9uIFJvY2h1cwpGYWxsZW4gdGFwZXJ0IC0gd2VyZGV0IE1hZ2llciwgdW5kIGRhcyBMZWJlbiBpc3Qgd2llZGVyIHNjaG9lbiEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHYWVobiEgKEFsZXRlLCAyNS4gTm92IDE5OTcsIDEzOjE3OjE2KToKCkRhIGhhdCBlcyBzaWNoIGFiZXIgamVtYW5kIGJlaW0gUHJvZ3JhbW1pZXJlbiBsZWljaHQgZ2VtYWNodDoKCjo+IGdhZWhuZQo6S2FubnN0IER1IGFiZXIgRGVpbihlbikgTXVuZC9NYXVsL1NjaG5hYmVsIHdlaXQgYXVmcmVpc3NlbiEKOj4KCkRhYmVpIG11ZXNzdGUgZXMgZG9jaCBlaWdlbnRsaWNoIGdhbnogZWluZmFjaCB6dSBwcm9ncmFtbWllcmVuIHNlaW4sIGRhc3MgYmVpCkhvYmJpdHMgdW5kIE1lbnNjaGVuICJNdW5kIiwgYmVpIEVsZmVuICJTY2huYWJlbCIgdW5kIGJlaSBad2VyZ2VuICJNYXVsIgpzdGVodC4KCkdydXNzLApBbGV0ZS4KClAuUy46IC0+IFNjaG1hcnJuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJvbmRhIGlzdCBzY2hsZWNodCBkcmF1ZiAtIHVuZCBTdXNoaSBoYXQgc2ljaCBzZWxic3QgZ2Vsb2VzY2h0ISAoSmltZGlncml6LCAyNS4gTm92IDE5OTcsIDEzOjU4OjAzKToKfiMhIHJuPVJvbmRhIHJ0PTg4MDQwNDIwNiByZz1zY2htYXJybgp+IyEgdGlkPTg4MDQwNDIwNgoKU2NoYWRlIDooCgpJY2ggZmFuZCBTdXNoaSBpbW1lciBjb29sLgoKU2V1ZnosCiBKaW0gRGlHcml6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYWphLi4uLiAoQW5hY3Jpb24sIDI1LiBOb3YgMTk5NywgMTY6MzQ6NTIpOgpEaWVzZXIgUmF1bSBpc3Qgc2llYmVuZWNraWcgYW5nZWxlZ3QsIHVuZCBkYXMgbmljaHQgb2huZSBHcnVuZDogSW4gamVkZXIgZGVyCnNpZWJlbiBXYWVuZGUgaXN0IGVpbiBncm9zc2VyIFNwaWVnZWwgZWluZ2ViYXV0LiBBdWYgZGVtIEJvZGVuIGlzdCBlaW4KUGVudGFncmFtbSB6dSBlcmtlbm5lbi4KRXMgZ2lidCBrZWluZSBzaWNodGJhcmVuIEF1c2dhZW5nZS4KRWluIGtsZWluZXIsIGdyZWxsYnVudGVyIEJldXRlbC4gKDIpCkVpbiBTaWxiZXJwZW50YWdyYW1tLgpFaW5lIFBoaW9sZSBtaXQgcmVpbmVtIFdhc3Nlci4KRWluIEhlcnouCjQgUG9ydGlvbmVuIExvdHVzYmx1ZXRlbnN0YXViLgpXYWhsbWFzY2hpbmUuCj4gVHVhcmVnIHN0ZWh0IHBsb2V0emxpY2ggaW0gUGVudGFncmFtbS4KVHVhcmVnIGdlaHQgZHVyY2ggZGVuIGRyaXR0ZW4gU3BpZWdlbC4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFBhdHJ5bi4KJSBTY29yZTogMjEwLzIxOC80MSAgR2lmdDpOICAwKDEwMCkKW01vZXJkZXI6R2Vpc3QgZWluZXMgU3RhZHR3YWVjaHRlcnNdIEZlaWVyYWJlbmQhIERhbmtlLCBTbHlmb3ghCltBYmVudGV1ZXI6R3J1bWJhcnRdIFVuZnVnIC0gd2FydGUsIGJpcyBkaWUgS2VyemUgZXJsaXNjaHQKJSBTY29yZTogMjEwLzIxOS80MSAgR2lmdDpOICAwKDEwMCkKW01vZXJkZXI6R2Vpc3QgZWluZXMgU3RhZHR3YWVjaHRlcnNdIEZyZWloZWl0IGZ1ZXIgTmljaHQtU3BpZWxlciEgVmVybmljaHRldApbTW9lcmRlcjpHZWlzdCBlaW5lcyBTdGFkdHdhZWNodGVyc10gU2x5Zm94IQolIFNjb3JlOiAyMTAvMjIwLzQyICBHaWZ0Ok4gIDAoMTAwKSAgICAgICAgICAgICAgICAgICAgICAgICAKCkhtbS4gR290Y2hhLCBQYXRyeW4gOikKCkFuYWMqIC0gc2NobXVuemVsbmQuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAyNS4gTm92IDE5OTcsIDE4OjA5OjA3KToKIkRpZSBnbGVpY2hlIFNhbGJlIHRhdWd0IG5pY2h0IGZ1ZXIgYWxsZSBXdW5kZW4uIgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzZWxic3Rsb2VzY2h1bmcgKENhbHVtLCAyOC4gTm92IDE5OTcsIDE0OjExOjEwKToKTmV1bGljaCwgaW4gbWVpbmVtIFJlcGZpbGU6CgpJREVBIHZvbiB0YW50b3IgWy9kL2ViZW5lL2NhbHVtL01vcm9uL3Jvb20vbWFsa2FzdGVuXSAoMTcuIFNlcCAxOTk2KToKc2VsYnN0bG9lc2NodW5nCgo+IGZpbmdlciB0YW50b3IKSG1tLi4uIGRpZXNlbiBOYW1lbiBnaWJ0IGVzIGluIE1vcmdlbmdyYXVlbiBuaWNodC4KCklzdCBkb2NoIGltbWVyIHNjaG9lbiwgd2VubiBTcGllbGVyIGF1Y2ggb2huZSBkaWUgSGlsZmUgZWluZXMgTWFnaWVycwppaHJlIElkZWVuIHZlcndpcmtsaWNoZW4ga29lbm5lbiA6LSkKCiAtIENhbHVtIC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhvY2h6ZWl0IG1pdCBIaW5kZXJuaXNzZW4gKENhbHVtLCAyOC4gTm92IDE5OTcsIDE1OjAzOjA3KToKQmVpIGRlciBIb2NoemVpdCB2b24gQWxhbm5hIHVuZCBDbGFibzoKCkRlciBQcmllc3RlciBmcmFndDogV2lsbHN0IER1LCBDbGFibywgZGllIGhpZXIgYW53ZXNlbmRlIEFsYW5uYSB6dQpEZXIgUHJpZXN0ZXIgZnJhZ3Q6IERlaW5lciBGcmF1IG5laG1lbiwgc28gYW50d29ydGUgJ0phJz8gCkNsYWJvIHNhZ3Q6IGplcApEZXIgUHJpZXN0ZXIgd2FydGV0IGF1ZiBlaW4gJ0phJyBvZGVyIGVpbiAnTmVpbicgdm9uIENsYWJvLgpDbGFibyBzYWd0OiBqYQpEZXIgUHJpZXN0ZXIgZnJhZ3Q6IFdpbGxzdCBEdSwgQWxhbm5hLCBkZW4gaGllciBhbndlc2VuZGVuIENsYWJvIHp1CkRlciBQcmllc3RlciBmcmFndDogRGVpbmVtIE1hbm4gbmVobWVuLCBzbyBhbnR3b3J0ZSAnSmEnPwpDYWxhIGRlbmt0ICAuIG8gTyAoZGFyZiBpY2ggZnVlciBzaWUgYW50d29ydGVuPykKQWxhbm5hIHNhZ3Q6IE5laW4gQ2FsYQpEZXIgUHJpZXN0ZXIgc2FndDogTmFjaCBkZW0gTmVpbiB2b24gQWxhbm5hIGthbm4gaWNoIGxlaWRlciBkaWUgCkRlciBQcmllc3RlciBzYWd0OiBFaGVzY2hsaWVzc3VuZyBuaWNodCB2b2xsemllaGVuLgpBbGFubmEgbmlja3QgenVzdGltbWVuZC4KRGVyIFByaWVzdGVyIHNjaGxpZXNzdCBkYXMgQnVjaCBkZXIgTGllYmVuZGVuLgpEZXIgUHJpZXN0ZXIgc2FndDogR2VoZXQgbnVuIGhpbiBpbiBGcmllZGVuLgoKCi4uLiBrZWluIHdlaXRlcmVyIEtvbW1lbnRhci4KCi0gQ2FsdW0gLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzIGZ1ZXIgZWluZSBpbnRlbnNpdmUgRnJldW5kc2NoYWZ0Li4uIChDYWtleSwgMjguIE5vdiAxOTk3LCAxOToxMDozMyk6Ck1pZXplIGJpZXRldCBEaXIgRnJldW5kc2NoYWZ0IGFuLgo+IE1pZXplIGxhZWNoZWx0IERpY2ggYW4uCkR1IGJpc3QgbnVuIEZyZXVuZCB2b24gTWllemUuCj4gRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCgpDYWtleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmFzdCBFcnN0ZSA6KSAoTWllemUsIDI4LiBOb3YgMTk5NywgMTk6MTY6NDIpOgoKa3VyeiBuYWNoIG5lbSBSZWJvb3QuLi4gCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBGcmUsIDI4LiBOb3YgMTk5NywgMTk6MTU6MTMgKDMgVGVpbG5laG1lcikKCkxvZ29uLi4uLi4uLi4uLi5zICBNaWV6ZS4uLi4uLi4uLi4uUyAgS2l1Li4uLi4uLi4uLi4uLlMKCgpNaWV6ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIChBc21vZGlzLCAyOS4gTm92IDE5OTcsIDIzOjQyOjI5KToKW1NlaGVyOll1bmdhXSBzY2hyZWliIG1hbCBlaW5lciB3YXMsIG1pciBpc3QgbGFuZ3dlaWxpZyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGluZ2U/IChMdXB1cywgMzAuIE5vdiAxOTk3LCAwMDowMjo1NCk6CkVpbmUgTGljaHR1bmcuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uClR3aW5naSBsaWVndCBpbSBHcmFzIHVuZCB0cmFldW10IHZvciBzaWNoIGhpbi4KPmtpdHplbCB0d2luZ2kKRGluZ2Ugc2luZCBzbyBzZWx0ZW4ga2l0emxpZy4gTGFzcyBlcyBibGVpYmVuLgoKCkhtbW0sIG9iIHNpZSBlcyBtb2VnZW4gd2lyZCwgbnVyIGFscyBTYWNoZSBiZWhhbmRlbHQgenUgd2VyZGVuPyA6KQoKTHVwdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZvcnNjaGVyLUJyYWluc3Rvcm1pbmcgKEFuYXRvbCwgMzAuIE5vdiAxOTk3LCAwMjoxODowMSk6Cn4jISBvbj1BbmF0b2wgb3Q9ODgwODUyNjc1IG9nPWVudHdpY2tsdW5nCn4jISBybj1CbG9vZHloYXJyeSBydD04ODA4NTI1OTUgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD04ODA2NDQ2MjkKNiBNb25hdGUsIGJpcyBlaW5lIEFudHdvcnQga29tbXQ/IFVuZCBvYiBpcmdlbmR3YXMgYmV3aWxsaWd0IHdpcmQsIHN0ZWh0Cnp1IGRlbSBaZWl0cHVua3Qgbm9jaCBpbiBkZW4gU3Rlcm5lbi4uLiB2aWVsbGVpY2h0IGluIGFiZXIgaW4gCmJlZGVja3VuZ3N2ZXJhZW5kZXJsaWNoZW4gU3Rlcm5lbiwgZGFubiBoYWJlbiBkaWUgQXN0cm9ub21lbiB3YXMgZGF2b24uCgpBbmF0b2wgLT5zY2htYXJybigpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMuLi4gKEtpbGFyLCAzMC4gTm92IDE5OTcsIDIyOjQ4OjI5KToKCi4uLmZ1ZXIgU2lsdmFuYSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNb3Jnb3RoLCAgMS4gRGV6IDE5OTcsIDA5OjIyOjUxKToKTm92YXN0b3JtIHJ1ZnQ6IEhJSUlMTExMRkZGRUUhCltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIE5vdmFzdG9ybQpbVG9kOkxhcnNdIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXIgR3JhZi1CdWcgKEFjcmltb24sICAxLiBEZXogMTk5NywgMTI6NTU6MzEpOgpEZXIgR3JhZiB2b24gR2Vpc3RzdGVpbiBydWZ0OiBHcnVudHogaGF0IG1pY2ggYmVmcmVpdC4KW0FsbGdlbWVpbjpMZVRpY10gZGFzIGlzdCBlaW4gYnVnLi4uaGFiZSBpY2ggYXVjaAoKOi0pCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1vcm9uIHdpZSBlcyBsZWlidCB1bmQgbGVidC4gKFJhZmZpLCAgMS4gRGV6IDE5OTcsIDE5OjIyOjQ5KToKT3JrdG9ldGVyIGtvbW10IGR1cmNoIGRpZSBMdWtlIGhlcmF1Zmdla3JhYmJlbHQuCkR1IGtudWRkZWxzdCBPcmt0b2V0ZXIuCkR1IHNhZ3N0OiBzZXJ2dXMKT3JrdG9ldGVyIHNhZ3Q6IGFoLCBlaW5lIG1hdXMgYml0dGUKRHUgZ3JpbnN0LgpEdSBzYWdzdDogaGFiIHNlbGJzdCBub2NoIGtlaW5lCk9ya3RvZXRlciBrbnVkZGVsdCBEaWNoLgpPcmt0b2V0ZXIgc2FndDogdXBzCkR1IHNhZ3N0OiBiaW4gZ2VyYWRlIGVyc3QgYXVzIGRlbSB3ZSB6dXJ1ZWNrCkR1IHp1Y2tzdCBtaXQgZGVuIFNjaHVsdGVybi4KT3JrdG9ldGVyIHdpbGwgc2VpbiBnZWxkIHp1cnVlY2sgKGRhcyBlciBub2NoIGdhciBuaWNodCBiZXphaGx0IGhhdCkKUmFmZmkgaXN0IGVpbiBsZWVyZXIgTWF1c3NwZW5kZXIuCk9ya3RvZXRlciBncmluc3QuCkR1IGRlbmtzdCAgIC4gbyBPICh3ZWhlIGRlciB0cml0dCBtaXIgamV0enQgZ2VnZW4gZGVuIEdlbGRhdXNnYWJlc2NobGl0ei4pCltBbGxnZW1laW46UmFmZmkgRGllZGVsRGlEdWV0XQpbQWxsZ2VtZWluOlJhZmZpXSBVbmQgaGllciBkaWUgVmVya2VocnNkdXJjaHNhZ2U6IFZvciBkZW0gWndlaWhhdXB0IGhhdCBzaWNoCltBbGxnZW1laW46UmFmZmldIGVpbmUgU2NobGFuZ2Ugdm9uIDIgUmVzZXQgbGFlbmdlIGdlYmlsZGV0LiBFcyB3aXJkIGdlYmV0ZW4KW0FsbGdlbWVpbjpSYWZmaV0gZGFzIEhhdXMgenUgbWVpZGVuLCB1bmQgZGFzIERhY2hnZXNjaG9zcyBncm9zc3JhZXVtaWcgenUKW0FsbGdlbWVpbjpSYWZmaV0gdW1nZWhlbi4KW0FsbGdlbWVpbjpSYWZmaSBEaWVkZWxEaUR1ZXRdCk9ya3RvZXRlciBoYWVtbWVydCBhdWYgZGVtIFJlc2V0a25vcGYgaGVydW0uCkR1IGRlbmtzdCAgIC4gbyBPIChqZXR6dCBoYXQgZXIgZGllIHdhcm5tZWxkdW5nIGF1c2dlbG9lc3QhKQpbQWxsZ2VtZWluOkFzbW9kaXNdIGRhIGdpYnRzIGRvY2ggbml4IFdpY2h0aWdlcyA6KQpbQWJlbnRldWVyOkdhdmVyZWxdIHRobngKW0FsbGdlbWVpbjpBY3JpbW9uXSBGdWVyIFJhZmZpIHNjaG9uCk9ya3RvZXRlciBkZW5rdCAgIC4gbyBPIChvaG9oLi4gd2FzIHdpcmQgZGVubiBudW4gcGFzc2llcmVuID8gRXhwbG9kaWVydCBkYXMKRGluZyBnbGVpY2ggPyBVbmQgdmVydGVpbHQgZGFubiBNYWV1c2UgdWViZXJzIGdhbnplIE1HID8pCltBbGxnZW1laW46QW5hdG9sXSBBcHJvcG9zIFdpY2h0aWdlcy4uLiBkaWUgSHlkcmEgaXN0IGJhbGQgd2llZGVyIGZhZWxsaWcsCltBbGxnZW1laW46QW5hdG9sXSBvZGVyPyA6KQpbQWxsZ2VtZWluOktleV0gTWVpbmUgVGFudGUgOykKW0FsbGdlbWVpbjpXaWxsb3ddIGp1aHV1dXUKSW5ncmlkIGtvbW10IGR1cmNoIGRpZSBMdWtlIGhlcmF1Zmdla3JhYmJlbHQuCk9ya3RvZXRlciBzYWd0OiBvaywgaWNoIGdlaCBtYWwgd29hbmRlcnMgaWRlbG4KT3JrdG9ldGVyIHdpbmt0LgpPcmt0b2V0ZXIgd2lyZnQgZWluZW4gRGFydCBuYWNoIHVudGVuIHVuZCByZW5udCBoaW50ZXJoZXIuCkluZ3JpZCBnZWh0IG5hY2ggdW50ZW4uCltBYmVudGV1ZXI6S2lzc10gdG9sbCwgd28gaXN0IGRhcz8KW0FsbGdlbWVpbjpSYWZmaV0gb2huZSBtYXVzIGJpbiBpY2ggbnVyIGRpZSBoYWVsZnRlCltBbGxnZW1laW46QWNyaW1vbl0gIlJhZiIgb2huZSAiZmkiPwpbQWxsZ2VtZWluOlJhZmZpIGRlbmt0IC4gbyBPIChXZW5pZ3N0ZW5zIG1laW4gTGFnIGhhYiBpY2guKV0KW0FsbGdlbWVpbjpPcmt0b2V0ZXJdIFJhZiA/IFVpdWl1aXVpdWkuLi4uCk5pY2h0cyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKW0FsbGdlbWVpbjpBc21vZGlzXSBobW0sIFJveWFsIEFpciBGb3JjZSBvZGVyIGRpZXNlIFRlcnJvcmlzdGVuID8gOikKW0FsbGdlbWVpbjpTbHlmb3hdIHNvd2FzLCBkaWUgRWxzdGVybiBrb2VubmVuIHNjaGxpbW1lciBzZWluIHdpZSBSb2JpbiAtIGtsYXV0CltBbGxnZW1laW46U2x5Zm94XSBtaXIgZWluZSBlaW4gUGFrZXQgbWl0IGtuYXBwIDIwMDAwMCBNdWVuemVuLgpbQWxsZ2VtZWluOldpbGxvd10gdWkhCltBbGxnZW1laW46S2V5IGdyaW5zdCBTbHkgYW4uXQpbQWxsZ2VtZWluOkFzbW9kaXNdIHdhcyBzY2hsZXBwc3QgZHUgYXVjaCBzb3ZpZWwgZ2VsZCBoZXJ1bSA/CltBbGxnZW1laW46VWdpXSBlbHN0ZXJuIHNpbmQgaGFsdCBhdWNoIG5pY2h0IG1laHIgZGFzLCB3YXMgc2llIG1hbCB3YXJlbgpbQWxsZ2VtZWluOldpbGxvdyBuaWNrdCBhc21vIHp1XQpbQWxsZ2VtZWluOlJhZmZpICBpc3QgYXVjaCBzbyBlaW4gdWVicmlnZ2VibGllYmVuZXIgJzcwZXJdCltBbGxnZW1laW46UmFmZmldIFdhcywgbnVyIDIwSyA/IC4uLiBuYSB3ZW5ucyBuaWNodCBtZWhyIGlzdC4KW0FsbGdlbWVpbjpXaWxsb3cgaGF0dGUgMjAwayBnZWxlc2VuLi4uXQpbQWxsZ2VtZWluOkFzbW9kaXMgYXVjaF0KW0FsbGdlbWVpbjpPcmt0b2V0ZXJdIGRhcyB6YWVobGVuIHVlYmVuIHdpciBkYW5uIGFiZXIgbm9jaCBtYSwgUmFmZmkuLi4KW0FsbGdlbWVpbjpXaWxsb3cga29tbXQgamV0enQgYWJlciBhcmcgaW5zIGdydWViZWxuLi4uXQpbQWxsZ2VtZWluOlJhZmZpXSBVcHMgLi4uIG9obmUgTWF1cyBrYW5uIGljaCBuaWNodG1hbCBtZWhyIGRpZSBOdWxsZW4gcmljaHRpZwpbQWxsZ2VtZWluOlJhZmZpXSBaYWVobGVuLi4uLgpbQWxsZ2VtZWluOldpbGxvdyBraWNoZXJ0XQpbQWxsZ2VtZWluOldpbGxvdyBraWNoZXJ0XQpbQWxsZ2VtZWluOldpbGxvd10gYnJ1YWNoc3QgZHUgbmUga251ZGRlbG1hdXMsIG9kZXIgd2FzPz0gOykKW0FsbGdlbWVpbjpBY3JpbW9uXSBnZWJ0IGlobSB6d2VpLCB6dXIgVm9yc29yZ2UhCltBbGxnZW1laW46QXNtb2Rpc10gendlcmdlIHNpbmQgZHVtbSB1bmQgLi4uCltBbGxnZW1laW46UmFmZmldIFNhY2ggaWNoIGRvY2ggZGllIGdhbnplIHplaXQuCltBbGxnZW1laW46UmFmZmldIFVuZCBFbGZlbiBTdGlua2VuCltBbGxnZW1laW46V2lsbG93XSBub2UsIGVsZmVuIHNpbmQgbnVyIGRvb2YuLi4KW0FsbGdlbWVpbjpLZXkgc2NoYXV0IFJhZmZpIGJvZXNlIGFuLl0KW0FsbGdlbWVpbjpLZXkgc2NoYXV0IFdpbGxvdyBib2VzZSBhbi5dCltBbGxnZW1laW46T3JrdG9ldGVyXSByZXNldGUgZG9jaCBtYWwgZWluIG5ldHRlciBtYWdpZXIgZGVuIFJhdW0sIGRhbWl0IFJhZmZpCltBbGxnZW1laW46T3JrdG9ldGVyXSBzZWluZSBNYXVzIGJla29tbXQsIGRhcyBrbGluZ3QgamEgenUgZWxlbmRpZ2xpY2guLi4gKHVuZApbQWxsZ2VtZWluOk9ya3RvZXRlcl0gZnVlciBkZW4gcmVzZXQgd2lyZCBtYW4gYmVzdGltbXQgbmljaHQgZ2Vsb2VzY2h0LApbQWxsZ2VtZWluOk9ya3RvZXRlcl0gaG9lY2hzdGVucyBuZSBzcGllbHBhdXNlIGJla29tbXQgbWFuLi4uLikgOikKW0FsbGdlbWVpbjpXaWxsb3cgc2NoYXV0IGJvZXNlIHp1cnVlY2tdCltBbGxnZW1laW46T3JrdG9ldGVyXSBvZGVyID8KW0FsbGdlbWVpbjpXaWxsb3ddIGpvIC0gc28gYW4gZGllIDQgbW9uYXRlIG9kZXIgc28uLi4KW0FsbGdlbWVpbjpBY3JpbW9uXSBXZW5uIFp3ZXJnZW4gZHVtbSBzaW5kIHVuZCBFbGZlbiBzdGlua2VuIC4uLiBzaW5kIGRhbm4gZGllCltBbGxnZW1laW46QWNyaW1vbl0gTWFnaWVyIGhhbGIgWndlcmcgdW5kIGhhbGIgRWxmPwpbQWxsZ2VtZWluOlJhZmZpXSBBY2ggamEsIEtleSBpc3QgamEgYXVjaCBzbyBlaW5lIE1pc3NnZWJ1cnQgLi4uIGFlaCBpY2ggbWVpbmUKW0FsbGdlbWVpbjpSYWZmaV0gZWluZSBQZXJzb24gbWl0IGFuZGVyc2dlbGFnZXJ0ZW4gUXVhbGl0YWV0ZW4gLi4uIG9kZXIgd2llCltBbGxnZW1laW46UmFmZmldIGRhcyBhdWYgTmV1c3ByZWNoIHNvbm5zdCBoZWlzc3QuCltBbGxnZW1laW46S2V5IGVyd3Vlcmd0IFJhZmZpLl0KW0FsbGdlbWVpbjpSYWZmaV0gUm9jaGVsLgpbQWxsZ2VtZWluOlNjaG9rb10gTGFzcyBtZWluZW4gS2V5IGluIFJ1aGUgUmFmZmkhIDopCltBbGxnZW1laW46UmFmZmldIGFlaCBSb2VjaGVsCltBbGxnZW1laW46QXNtb2Rpc10gaGFiZW4gendlcmdlIHVlYmVyaGF1cHQgbmVuIGhhbHMgPyA6KQpbQWxsZ2VtZWluOktleV0gUGFoISBVbmQgZGFzIHZvbiBuZW0gZHVtbWVuIHN0aW5rZW5kZW4gWndlcmchCltBbGxnZW1laW46SmVob3ZhXSBTaW5kIE1hZ2llci1LaWxscyBkZW5uIGVybGF1YnQgOykgPwpbQWxsZ2VtZWluOkplbWFuZF0ga2xhciEKW0FsbGdlbWVpbjpPcmt0b2V0ZXJdIFJvY2hlbCA/IG1laW5zdCBkdSBSb2NodXMgPyB3YXIgZGFzIGVpbiBlcnN0aWNrdGVyCltBbGxnZW1laW46T3JrdG9ldGVyXSBIaWxmZXJ1ZiA/CltBbGxnZW1laW46QXNtb2Rpc10gaGFiZW4gendlcmdlIHVlYmVyaGF1cHQgbmVuIGhhbHMgPyA6KQpbQWxsZ2VtZWluOktleV0gUGFoISBVbmQgZGFzIHZvbiBuZW0gZHVtbWVuIHN0aW5rZW5kZW4gWndlcmchCltBbGxnZW1laW46SmVob3ZhXSBTaW5kIE1hZ2llci1LaWxscyBkZW5uIGVybGF1YnQgOykgPwpbQWxsZ2VtZWluOkplbWFuZF0ga2xhciEKW0FsbGdlbWVpbjpPcmt0b2V0ZXJdIFJvY2hlbCA/IG1laW5zdCBkdSBSb2NodXMgPyB3YXIgZGFzIGVpbiBlcnN0aWNrdGVyCltBbGxnZW1laW46T3JrdG9ldGVyXSBIaWxmZXJ1ZiA/CltBbGxnZW1laW46S2V5XSBKYSBhc21vIC4uLiBzb2xhbmdlIGR1IGVzIHNjaGFmZnN0IHVudGVyIGlocmVuIGJhcnQgenUga29tbWVuCltBbGxnZW1laW46S2V5XSA6KQpbQWxsZ2VtZWluOkplbWFuZCBraWNoZXRdCkVpbiBad2VpaGF1cHQga29tbXQgYW4uCkVpbiBad2VpaGF1cHQga29tbXQgYW4uCkVpbiBXZWdlbGFnZXJlciBrb21tdCBhbi4KRWluIFdlZ2VsYWdlcmVyIGtvbW10IGFuLgoKLi4uIERlciBSZXN0IGlzdCBHZXNjaGljaHRlLgoKR3J1c3MKSC4KCih1bSB1bndlc2VudGxpY2hlcyBnZWt1ZXJ6dCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFic2NoaWVkIChSaW5nb3IsICAxLiBEZXogMTk5NywgMjA6MzQ6MjkpOgpEZWluIEZyZXVuZCBLZXkgdGVpbHQgRGlyIG1pdDogbXVzcyBsb3MgOikKRGVpbiBGcmV1bmQgS2V5IGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRGVpbiBGcmV1bmQgS2V5IHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1LgpLZXktPlJpbmdvciB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dW0gQWJzY2hpZWQgenUuCgpbLi4uXQoKS2V5IHJ1ZnQ6ICEmJCMnISEgR3J1YmUhCltUb2Q6TGFyc10gRWluZSBFcmRncnViZSBoYXQgZ2VyYWRlIEtleSB1bWdlYnJhY2h0LgoKClJpbmdvciBmcmFndCBzaWNoIGxhbmdzYW0gZXJuc3RoYWZ0LCB3byBLZXkgd29obnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWJzY2hpZWQgKEtleSwgIDIuIERleiAxOTk3LCAwOTo1MDowMSk6Cn4jISBybj1SaW5nb3IgcnQ9ODgxMDA0ODY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODgxMDA0ODY5CkhleSBkYXJmIG1hbiBzaWNoIG5ldG1hbCB2b24gc2VpbmVtIEZyZXVuZCBMYXJzIHBlcnNvZW5saWNoIHZlcmFic2NoaWVkZW4/Ci4pKSkKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VubiBBbm5pIHN0ZXJiZW4gZ2VodC4uLiAoWmlubywgIDIuIERleiAxOTk3LCAxNzowMDowNyk6CkFubmloaWxhdG9yIHplcnNjaG1ldHRlcnQgS2FyYXRlb3JrIC4KRGVyIEthcmF0ZW9yayBmYWVsbHQgdG90IHp1IEJvZGVuLgpBbm5paGlsYXRvciBuaW1tdCBlaW5lbiBTY2hsYWdyaW5nLgpBbm5paGlsYXRvciBuaW1tdCAxMzYgTXVlbnplbi4KQW5uaWhpbGF0b3IgbmltbXQgMTcgV3VyZnN0ZXJuZS4KQW5uaWhpbGF0b3IgbGFlc3N0IGRlbiBTY2hsYWdyaW5nIGZhbGxlbi4KQW5uaWhpbGF0b3Igc2NoYXV0IG5hY2ggU3VlZGVuIHVuZCBlcnNjaHJpY2t0LgpbVG9kOkxhcnNdIEVpbiBPcmsgaGF0IGdlcmFkZSBBbm5paGlsYXRvciB1bWdlYnJhY2h0LgoKSGVoZSA6KQpaaW5vLCBhbHMgQmVvYmFjaHRlciB2b3IgT3J0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTXVzaWthbGlzY2hlcyBNRyEhIChNaWV6ZSwgIDIuIERleiAxOTk3LCAyMDowNzowOCk6CgplYmVuIGluIGRlciBGcmllZGhvZnNrbmVpcGU6CgpbS3VsdHVyOk1pZXplXSBpc3QgamVtYW5kIGFtIDUuMTIuIGluIEJydWVzc2VsIGluIGRlciBLYXRoZWRyYWhsZSBTdC4gTWljaGVsPwpEZXIgVG90ZW5ncmFlYmVyIGJlc3RlbGx0IGVpbiBHbGFzIFpvbWJpZWJsdXQuCltLdWx0dXI6Um9uZGFdIFNpbmdzdCBEdSBkYT8KW0t1bHR1cjpNaWV6ZV0gamEgOykKRGVyIFRvdGVuZ3JhZWJlciBzaW5ndDogRGllcyBpc3QgZGVyIFpvbWJpZS1CbHVlcywgYmFkYWR1YmR1dSAuLi4KW0t1bHR1cjpSb25kYV0gTGVpZGVyIG5laW4uLi4KRGVyIFRvdGVuZ3JhZWJlciBzYWd0OiBTdG9lcmUgZGllIFRvdGVuIG5pY2h0IG9kZXIgRHUgd2lyc3Qgc2VsYmVyIHRvdCBzZWluLgpbS3VsdHVyOk1pZXplXSBNZW5zY2ggUm9uZGEsIGpldHp0IGtvbW10IGtlaW5lciBtZWhyIDopCgoKTWllemUsIGxhY2h0IGltbWVybm9jaCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaHdlcmVyIEJyb2NrZW4uLi4gKEx1cHVzLCAgMi4gRGV6IDE5OTcsIDIyOjIwOjU1KToKCgotIEVpbiBrbGVpbmVyIEZyb3NjaCBuYW1lbnMgTHVwdXMuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkdyb2Vzc2UgLi4uLi4uLi4uLiAyMCBjbQoKR2V3aWNodCAuLi4uLi4uLi4uIDc1IGtnCgoKCldvdywgaWNoIG11c3MgenVnZW5vbW1lbiBoYWJlbi4gOikKCkx1cHVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2Nod2VyZXIgQnJvY2tlbi4uLiAoTW9yZ290aCwgIDMuIERleiAxOTk3LCAwNzoyMzozMyk6Cn4jISBybj1MdXB1cyBydD04ODEwOTc2NTUgcmc9c2NobWFycm4KfiMhIHRpZD04ODEwOTc2NTUKRmV0dGUgS3JvZXRlIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBhdWYgZGVtIFN0YW1tdGlzY2ggKENhdHdlYXpsZSwgIDMuIERleiAxOTk3LCAxMDoxNTo1Mik6CkFuYXRvbCBpc3QgZWluZSBQb3J0aW9uICdQb3RhdG8gU2tpbnMnIHVuZCB2ZXJ0ZWlkaWd0IHNpZSB0YXBmZXIgZ2VnZW4KZWluIEhvcmRlIE11ZGRlci4KQW5hdG9sIHNhZ3Q6IEljaCBicmFldWNodGUgbWFsIGVpbiBTY2h3ZXJ0CkVpbmUgQmVkaWVudW5nIGtvbW10IGFuLgpBbmF0b2wgc2FndDogS2FubiBtYW4gaGllciBhdWNoIGVpbiBTY2h3ZXJ0IGJlc3RlbGxlbj8KRWluZSBCZWRpZW51bmcgbGFlY2hlbHQgZHVlbW1saWNoLgpFaW5lIEJlZGllbnVuZyBmcmFndDogQWNoLCB3b2xsdCBpaHIgYXVjaCBlaW5lIFBvcnRpb24/CkVpbmUgSG9yZGUgTXVkZGVyIHNhZ3Q6IE5laW4gZGFua2UsIHdpciBoYWJlbiBzY2hvbiBhbGxlIQpBbmF0b2wgZnJhZ3QgZWluZSBCZWRpZW51bmc6IFByb2JsZW0gZXJrYW5udD8KCk1lcmtlOiBJbW1lciBlaWdlbmVzIEVzcy1CZXN0ZWNrIG1pdGJyaW5nZW4sIHdlbm4gRHUgUG90YXRvIFNraW5zIGF1ZiBkZW0KU3RhbW10aXNjaCBlc3NlbiB3aWxsc3QuCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYXVmIGRlbSBTdGFtbXRpc2NoLCBkaWUgMi4gKENhdHdlYXpsZSwgIDMuIERleiAxOTk3LCAxMDoxODoyMyk6ClJvY2h1cyBzYWd0OiBTb2xsIGljaCBEaXIgbWFsIGVpbiBsb2dmaWxlIHZvbiBBbGluZSB1bmQgQW5hdG9sIGF1ZiAKUm9jaHVzIHNhZ3Q6IEFsbGdlbWVpbiBzY2hpY2tlbj8KUm9jaHVzIGdyaW5zdCBicmVpdC4KQW5hdG9sIHNjaGF1dCBib2VzZS4KQ2F0d2VhemxlIHNhZ3Q6IEltbWVyIGhlciBkYW1pdC4KV2FyZ29uIHJlaWJ0IHNpY2ggZGllIEhhZW5kZSB1bmQgZ3JpbnN0IGZpZXMuCldhcmdvbiBzYWd0OiBSZWljaHQgZGFzIHVtIG1laW5lIEZyYXUgaW4gZGllIFBmYW5uZSB6dSBoYXVlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYXVmIGRlbSBTdGFtbXRpc2NoLCBkaWUgMy4gKENhdHdlYXpsZSwgIDMuIERleiAxOTk3LCAxMDoyMDowMik6CkVpbmUgQmVkaWVudW5nIGtvbW10IGFuLgpFaW5lIEJlZGllbnVuZyByYWV1bXQgZWluZSBsZWVyZSBTY2h1ZXNzZWwgd2VnLgpFaW5lIEJlZGllbnVuZyBmcmFndCBBbmF0b2w6IEhhdHMgZ2VzY2htZWNrdD8KUm9jaHVzIHNhZ3Q6IEphLgpDYXR3ZWF6bGUgc2FndDogQWl5LgpXYXJnb24gc2FndDogSmVwLgpCZXJ0cmFtIHNhZ3QgSmF1LgpBbmF0b2wgd2VpbnQgYml0dGVybGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoIGF1ZiBkZW0gU3RhbW10aXNjaCwgZGllIDMuIChSb25kYSwgIDMuIERleiAxOTk3LCAxMTo0NDoyMCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9ODgxMTQwODAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODgxMTQwODAyCk51ciBtYWwgc28gbmViZW5iZWk6IHdhcyBzaW5kIGRlbm4gbnVuIFBvdGF0b2UgU2tpbnM/IChNdXNzIG1hbiBkYWZ1ZXIgbnVuCkFuYXRvbCBvZGVyIGRlbiBSZXN0IGRlciBCYW5kZSBmcmFnZW4/KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWxpY2ggYXVmIGRlbSBTdGFtbXRpc2NoIChZZW5kaSwgIDMuIERleiAxOTk3LCAxMjo1OTozMik6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9ODgxMTQwNTUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODgxMTQwNTUyCgo+IEFuYXRvbCBpc3QgZWluZSBQb3J0aW9uICdQb3RhdG8gU2tpbnMnIHVuZCB2ZXJ0ZWlkaWd0IHNpZSB0YXBmZXIgZ2VnZW4KPiBlaW4gSG9yZGUgTXVkZGVyLgoKTmFqYSwgd2VubiBpY2ggZWluZSBQb3J0aW9uIEthcnRvZmZlbHBlbGxlIHdhZXJlLCB3dWVyZGUgaWNoIG1pY2ggYXVjaCB0YXBmZXIKZ2VnZW4gRXNzZXIgdmVydGVpZGlnZW4uLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWxpY2ggYXVmIGRlbSBTdGFtbXRpc2NoLCBkaWUgMy4gKEZyZXVuZCwgIDMuIERleiAxOTk3LCAxNDoyNDoxOSk6Cn4jISBybj1Sb25kYSBydD04ODExNDU4NjAgcmc9c2NobWFycm4KfiMhIHRpZD04ODExNDA4MDIKSGksCmhpZXIgaXN0IHZvbiBkZW4gS2FydG9mZmVsZWNrZW4gZGllIFJlZGUsIGRpZSBpY2ggYmVpIGplZGVtIFBvc3RpbmcKaW4gZGVyIFJ1YnJpayBUcmVmZmVuIGVyd2FlaG5lLiBEaWUgc2luZCBlaW5mYWNoIHRvbGwuIFNvIGFlaG5saWNoIGdhYnMgZXMKZGllIGF1Y2ggbWFsIGJlaSBNY0QgdW50ZXIgZGVtIE5hbWVuIENvdW50cnkgUG90YXRvZXMuCkRpZSBkaXBwdCBtYW4gZGFubiB2b3JoZXIgaW4gZWluZSBTYXVjZSB1bmQgbGFlc3N0IGVzIHNpY2ggc2NobWVja2VuLgoKVW5kIHdlbm4gaWNoIG1hbCBuaWNodCBiZWltIFN0YW1tdGlzY2ggYmluLCBtdWVzc2VuIHNpY2ggZGllIExldXRlIHdvaGwKaWhyZSBFY2tlbiBzZWxic3QgYmVzdGVsbGVuLiA7LSkKCkZyZXVuZCwgd2FyIGxldHp0ZW4gRGllbnN0YWcgYmVpbSBGaXJtZW5rZWdlbG4uCih1bmQgaGF0IGVpbmVuIEtyYW56LUhhbmQgZ2VzY2hhZmZ0ISA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoIGF1ZiBkZW0gU3RhbW10aXNjaCAoR2FzdDIsICAzLiBEZXogMTk5NywgMTQ6Mjk6MzIpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTg4MTE0MDU1MiByZz1zY2htYXJybgp+IyEgdGlkPTg4MTE0MDU1MgoqcGZmZmZmZmZ0KgpJY2ggaGFiZSBkaWUgQmVkaWVudW5nIF9hbmdlZmxlaHRfLCBzaWUgbW9lZ2UgbWlyIGRvY2ggYml0dGUgZWluIFNjaHdlcnQKYnJpbmdlbiwgaWNoIGhhZXR0ZSBtaWNoIGF1Y2ggbWl0IGVpbmVyIFN0cmVpdGF4dCB6dWZyaWVkZW4gZ2VnZWJlbi4gCgpXYXMgYmVrYW0gaWNoPwpFaW4genVja2Vyc3Vlc3NlcyBiZW1pdGxlaWRlbmRlcyBMYWVjaGVsbi4KCkZSQVVFTiEKCkdhc3QgQW5hdG9sLCBkZXIgbnVyIGRhIGlzdCwgd2VpbCBlciBzZWhlbiB3b2xsdGUsIG9iIENhdCogc2VpbiBCaWVyZGVja2VsbG9nCiAgICB0YXRzYWVjaGxpY2ggcG9zdGV0LiAKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXMgKFJvY2h1cywgIDMuIERleiAxOTk3LCAxNzo1MzoxMSk6CltBbGxnZW1laW46Qm90dG9tXSBXYXMnbiBoaWVyIGVpZ2VudGxpY2ggbG9zPyBXaXJkIGRpZSBNUEEgYmVzdHJlaWt0PyBOaXgKW0FsbGdlbWVpbjpCb3R0b21dIE5ldWVzIGF1ZiBkZXIgV2VsdC4uLnRzdHMgLSBzY2hyZWlidCBtYWwgd2FzIQoKV0FTCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnYXN0MSAoU2lsdmFuYSwgIDQuIERleiAxOTk3LCAwNzo0MDozOCk6CkthbXBmaWRsZW4gamV0enQgc2Nob24gZGllIEdhZXN0ZT8KCmZpbmdlciBnYXN0MSAtPiAKR2FzdDEgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IHdvcmsxLnJocnoudW5pLWJvbm4uZGUgKDEzMS4yMjAuMTYuMTApIFtCb25uXS4KUGFzc2l2IHNlaXQ6IDA5OjUyOjI2CkVpbmdlbG9nZ3Qgc2VpdDogTWl0LCAgMy4gRGV6IDE5OTcsIDIxOjQ0OjUzClZvbGxlciBOYW1lOiBHYXN0MSBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyClJhc3NlOiA8a2VpbmU+LCAgR2lsZGU6IEFiZW50ZXVyZXIsICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKQWx0ZXI6IDA5OjQ3OjMwLCAgIFNwaWVsZXJsZXZlbDogMQpFLU1haWwtQWRyZXNzZTogbm9uZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RyZWlrIChHcmltbWJvcm4sICA0LiBEZXogMTk5NywgMTc6NTI6MzQpOgpJbSBSYWhtZW4gZGVzIFN0cmVpa3MgaGFiZW4gc2ljaCBhbiBkZXIgS29lbG5lciBQaGlsRmFrIEFyYmVpdHNncnVwcGVuCmdlYmlsZGV0LCBkYXJ1bnRlciAiRnJhdWVuIiB1bmQgIktvY2hlbiB1bmQgVmVycGZsZWd1bmciLiBJbiB2ZXJzY2hpZWRlbmVuClJhZXVtZW4uIERhcyB6ZWlndCBkaWUgT3JnYW5pc2F0aW9uc3VuZmFlaGlna2VpdCBkZXIgaGllc2lnZW4gU3R1ZGVudGVuLCBkYXMKaGFldHRlIG1hbiBudW4gd2lya2xpY2ggenVzYW1tZW5mYXNzZW4ga29lbm5lbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZnVlciBIZWx2YSB6dW0gTGFjaGVuIChHcmltbWJvcm4sICA0LiBEZXogMTk5NywgMTk6Mzg6MDIpOgp+IyEgb249SGVsdmEgb3Q9ODgxMjYwMTQ0IG9nPXdpdHplCn4jISBybj1EaWVkZXIgcnQ9ODgxMjU5OTM3IHJnPXdpdHplCn4jISB0aWQ9ODgxMjU5OTM3CmRlciB3YXIgdmVyc3RhZW5kbGljaCwgYWJlciBuaWNodCBsdXN0aWcuIFZpZWxsZWljaHQgbGVzZSBpY2ggaGllciBkb2NoIHdpZWRlcgpudXIgZGllIG1pdCBkZW0gYnJpdGlzY2hlbiBIdW1vciBpbiBkaWVzZXIgcnVicmlrLiBBdXNzZXJkZW0gd2FyIGRlciBXaXR6IGFsdC4KU29nYXIgenUgc2NobGVjaHQgZnVlciBIYXJhbGQgc2NobWlkdC0gb2J3b2hsIGRlbiBzZWhlIGljaCB6dSBzZWx0ZW4sCnZpZWxsZWljaHQgaXJyZSBpY2ggbWljaCBkYSBhdWNoLgpoZWx2YSBoYXQgaGV1dGUgZ2FhYWFuemVuIHRhY2ggbml4IHp1IGxhY2hlbiBnZWhhYnQuCkJBQUFBQUFISEhISEhISCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGZ1ZXIgSGVsdmEgenVtIExhY2hlbiAoR3JpbW1ib3JuLCAgNC4gRGV6IDE5OTcsIDE5OjM5OjIyKToKfiMhIG9uPUhlbHZhIG90PTg4MTI2MDU4NCBvZz13aXR6ZQp+IyEgcm49Um9jaHVzIHJ0PTg4MTI2MDQ5MCByZz13aXR6ZQp+IyEgdGlkPTg4MTI1OTkzNwoqKmxsbGFhYWFhYWFhYWFhYWNoY2hoaGhoaGhoaGgqKioKSWNoIHN0ZWxsZSBpaG4gbWlyIGdlcmFkZSBhbHMgZ2FsZWVyZW5za2xhdmUgdm9yIDspCmhlbHZhIGhhdCBoZXV0ZSBkb2NoIG5vY2ggZ2VsYWNodCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKnppdHRlciogKFRlZGR5LCAgNi4gRGV6IDE5OTcsIDAwOjU1OjQ4KToKPiBEZXIgR2Vpc3Qgdm9uIExhZHlEaSBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCgpUZWRkeSwgbm9jaCBpbW1lciB2b2VsbGlnIGZlcnRpZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBQYXJhY2Vsc3VzIHVudGVyIFN0aWxsZSB2ZXJzdGVodCAoTWFoYXRtYSwgIDYuIERleiAxOTk3LCAxNjoxMzozMik6CkRlciBFbGYgZmFlbmd0IGFuLCBhdXMgdm9sbGVtIEhhbHMgenUgc2luZ2VuOgoKPiBsYXVzY2hlCkVpbmUgYmVkcnVlY2tlbmRlIFN0aWxsZSBsaWVndCB1ZWJlciBkaWVzZW0gT3J0LgpEZXIgRWxmIHNpbmd0OiBJbSBGcnVlaHRhdSBkaWUgWndlcmdlLCBzaWUgZ2VobiwgZmFsbGVyYQpEZXIgRWxmIHNpbmd0OiBzaWUgdGF1bWVsbiwgc2llIHNjaHdhbmtlbiB1bmQgc2llIGdyb2VsbiwgZmFsbGVyYQpEZXIgRWxmIHNpbmd0OiBKYSBzZWh0IHdpZSBrcnVtbSBzaWUgbGF1ZmVuLApEZXIgRWxmIHNpbmd0OiBkZW5uIGdlc3Rlcm4gd2FybiBzaWUgc2F1ZmVuLgpEZXIgRWxmIHNpbmd0OiBJaHIga2VubnQgZGFzLCBJaHIgd2FydCBkYXMgamEgYXVjaCBzY2hvbiBlaW5tYWwgLi4uCgpBaGphLgpNYWhhdG1hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYSBzb3dhcy4uLiAoSGFuZ292ZXIsICA2LiBEZXogMTk5NywgMTc6NTA6MDApOgpUeXBpc2NoZXIgRmFsbCB2b24gR2llcjoKCkJlbGdhcmlhZCB0ZWlsdCBEaXIgbWl0OiB3aWV2aWVsZSBzdHVwcyBnaWJ0IGNoaWxhbmE/CgpbLi4uXQpbVG9kOkxhcnNdIERpZSBzdGlua3NhdXJlIENoaWxhbmEgaGF0IGdlcmFkZSBCZWxnYXJpYWQgdW1nZWJyYWNodC4KW1RvZDpEaWUgc3RpbmtzYXVyZSBDaGlsYW5hXSBJY2ggaGFiIEJlbGdhcmlhZCBnZXdhcm50LCBhYmVyIGVyIHdvbGx0ZSBlaW5mYWNoCltUb2Q6RGllIHN0aW5rc2F1cmUgQ2hpbGFuYV0gbmljaHQgaG9lcmVuLgoKV2FzIHNvbGwgaWNoIGRhenUgbm9jaCBzYWdlbj8gV2VuaWdzdGVucyBuZSBBbnR3b3J0IGhhZXR0ZSBlciBhYndhcnRlbgprb2VubmVuLgoKLUhhbmdvdmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE5hY2h0d2luZCwgIDYuIERleiAxOTk3LCAxNzo1MToyNCk6CkltbWVyIHdpZWRlciBzY2hvZW46CgoKRGVpbiBGcmV1bmQgQmVsZ2FyaWFkIHRlaWx0IERpciBtaXQ6IGhhYiBub2NoIGVpbiBtb3NudGVyIGdlc2ljaHRldCB3ZWxjaGVzCkRlaW4gRnJldW5kIEJlbGdhcmlhZCB0ZWlsdCBEaXIgbWl0OiBpY2ggbm9jaCBuaWNodCBoYWIKPgo+Wy4uLl0KPgpbVG9kOkxhcnNdIERpZSBzdGlua3NhdXJlIENoaWxhbmEgaGF0IGdlcmFkZSBCZWxnYXJpYWQgdW1nZWJyYWNodC4KW1RvZDpEaWUgc3RpbmtzYXVyZSBDaGlsYW5hXSBJY2ggaGFiIEJlbGdhcmlhZCBnZXdhcm50LCBhYmVyIGVyIHdvbGx0ZSBlaW5mYWNoCltUb2Q6RGllIHN0aW5rc2F1cmUgQ2hpbGFuYV0gbmljaHQgaG9lcmVuLiAKPgoKS2VpbiBLb21tZW50YXIgOikKCk5hY2h0d2luZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmV0enQgbmVobWVuIGVpbmVtIHNjaG9uIGRpZSBNb25zdGVyIGRpZSBBcmJlaXQgd2VnIChMaWxhZiwgIDcuIERleiAxOTk3LCAyMzo1MzozNyk6ClNvd2FzLi4uCgpXYWxkd2VnIGltIEdyaW1tc3dhbGQuCkVzIGdpYnQgdmllbGUgc2ljaHRiYXJlIEF1c2dhZW5nZTogaGlsZmUsIHJhdXMsIHdlc3Rlbiwgbm90YXVzZ2FuZywgYXJnaCwKaWNod2lsbGhpZXJyYXVzLCBuaWNodHN3aWV3ZWcsIHdlaXR3ZWcsIG1hYWFtaWlpaWlpLCBpY2h3aWxsaGllcndlZyB1bmQKZWdhbHdvaGluLgpEZXIgV2VnaGllci4KCkVpbiBXZWdoaWVyIG1pc3NsaW5ndCBkaWUgRmludGUgZ2VnZW4gRGljaCB2b2VsbGlnLiBHbHVlY2sgZ2VoYWJ0LgpEZXIgV2VnaGllciBmYWVsbHQgdG90IHp1IEJvZGVuLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBXZWdoaWVyc10gTWlzdCwgbWVpbmUgVm9yc2ljaHQgaGF0IHZlcnNhZ3QhIFVuZCBkYXMgYmVpCltNb2VyZGVyOkdlaXN0IGVpbmVzIFdlZ2hpZXJzXSBMaWxhZiEKCkFsc28sIGRhIGZyYWcgaWNoIG1pY2gsIHdhcyBpY2ggbm9jaCBtYWNoZW4gc29sbCwgd2VubiBzY2hvbiBkZXIgV2VnaGllcgptaWNoIG5pY2h0IG1laHIgbWFnLi4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSmV0enQgbmVobWVuIGVpbmVtIHNjaG9uIGRpZSBNb25zdGVyIGRpZSBBcmJlaXQgd2VnIChZZW5kaSwgIDguIERleiAxOTk3LCAxMTo0MToxMyk6Cn4jISBybj1MaWxhZiBydD04ODE1MzUyMTcgcmc9c2NobWFycm4KfiMhIHRpZD04ODE1MzUyMTcKCkhhbGxvLCBNYWdpZXI6IApTb2xsdGUgZGFzIGJlaW0gV2VnaGllciBuaWNodCBoZWlzc2VuCiJFaW5FTSBXZWdoaWVyIG1pc3NsaW5ndCBkaWUgRmludGUgKC4uLikiPwpJc3QgZG9jaCBEYXRpdiwgb2Rlcj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaWVyIHN0aW5rdHMuLiA6KSAoWmVwaHlyLCAgOC4gRGV6IDE5OTcsIDExOjU3OjEyKToKCk1hbiBrYW5uIGRpZXMga2VpbiBOZXN0IG5lbm5lbiwgZXMgaXN0IGVoZXIgZWluZSBBdWZlaW5hbmRlcnNjaGljaHR1bmcgdm9uCkxlaWNoZW50ZWlsZW4sIHdlbGNoZSBkZW4gU3Bpbm5lbiBzb3dvaGwgYWxzIE5haHJ1bmdzcXVlbGxlIGFscyBhdWNoIGFscwpCcnV0c3RhZXR0ZSB6dSBkaWVuZW4gc2NoZWluZW4hClt1bnQgbGVpY2hlbnRlaWxlXQpEaXIgd2lyZCB6dSB1ZWJlbC4gRHUgbXVzc3QgZGllc2VuIFJhdW0gdmVybGFzc2VuLgpJbiBkZXIgUnVpbmUgZGVyIEhlcmJlcmdlLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KSHVjaD8gV2FzIHdhciBkYXM/IEViZW4gd2FyJ3MgZG9jaCBub2NoIGRhISEKClplcGh5ciAuIG8gTyAod2llIHRyZWZmZW5kLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXVsaWNoIGF1ZiBkZW0gU3RhbW10aXNjaCwgZGllIDMuIChSYWZmaSwgIDguIERleiAxOTk3LCAxMjoyMjo1MCk6Cn4jISBybj1GcmV1bmQgcnQ9ODgxMTU1NDU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODgxMTQwODAyCktyYW56LUhhbmQgPyBJc3QgZGFzIHNvd2FzIHdpZSBuZSBab21iaS1IYW5kID8KCkdydWViZWxuZApILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAgOC4gRGV6IDE5OTcsIDE0OjE1OjM3KToKIkVzIGVydHJpbmtlbiBtZWhyIGluIFdlaW4gYWxzIGluIFdhc3Nlci4iCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCBhdWNoIChHYXN0MSwgIDguIERleiAxOTk3LCAxNjo1NzoyMSk6CkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCllhcmVuIGh1ZXBmdCB1bSBTaGVhIGhlcnVtLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNwcnVjaCBkZXIgV29jaGUgKEFscGhhLCAgOC4gRGV6IDE5OTcsIDIxOjI1OjU3KToKfiMhIHJuPUdyaW1tYm9ybiBydD04ODE1ODY5Mzcgcmc9c2NobWFycm4KfiMhIHRpZD04ODE1ODY5MzcKIkxpZWJlIHVuZCBIYXNzIHNpbmQgbmljaHQgYmxpbmQsCiBzaWUgd2VyZGVuIG51ciB2b20gRmV1ZXIgZ2VibGVuZGV0LCBkYXNzIHNpZSBzZWxic3QgaW4gc2ljaCB0cmFnZW4uIgpBbHBoYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBDaGFvcy1EYWVtb25lbi4uLiAoVHVuaXhndXQsICA4LiBEZXogMTk5NywgMjE6Mjk6NTIpOgpbQWxsZ2VtZWluOlR1Tml4R3V0XSBJY2ggd29sbHRlIGRvY2ggbnVyIGtsYXJtYWNoZW4sIHdhcyBpY2ggdm9uIEV1Y2ggaGFsdGUsCltBbGxnZW1laW46VHVOaXhHdXRdIFN0aW5nLCBOaWNodCBtZWhyLi4gO28pCj4gT21iYXRpcyBzY2hyZWl0IGxhdXQuCgoncyBLYXJhdGUtWndlcmNobGUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3BydWNoIGRlciBXb2NoZSAoWWFudHJvLCAgOS4gRGV6IDE5OTcsIDA2OjQxOjE1KToKfiMhIHJuPUFscGhhIHJ0PTg4MTYxMjc1NyByZz1zY2htYXJybgp+IyEgdGlkPTg4MTU4NjkzNwoiTG92ZSBhbmQgSGF0ZSBhcmUgdGhlIHNhbWUgZmVlbGluZ3MsIGJ1dCBmcm9tIGEgZGlmZmVyZW50IHBvaW50IG9mIHZpZXciLCBtZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3BydWNoIGRlciBXb2NoZSAoTW9yZ290aCwgIDkuIERleiAxOTk3LCAwNzoxNzozMCk6Cn4jISBybj1ZYW50cm8gcnQ9ODgxNjQ2MDc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODgxNTg2OTM3CkRlc2hhbGIgaGF0IEhhdGUgZGFzIFBfUkVGRVJFTkNFX09CSkVDVCBmdWVyIGRhcyB1bnRlcnN1Y2hlbiBlaW5nZWZ1ZWhydC4uLgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hbCB3YXMgR2VuZXJlbGxlcyAoR3JpbW1ib3JuLCAgOS4gRGV6IDE5OTcsIDE0OjM4OjI1KToKfiMhIG9uPUdyaW1tYm9ybiBvdD04ODE2NzQ2OTMgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1GcmV1bmQgcnQ9ODgxNjc0MjU4IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTg4MTY3NDI1OApJY2ggaG9mZmUsIER1IGhhc3QgZGVuIEFydGlrZWwgZW50d2VkZXIgbWl0IGVtYWNzLCB2aSBvZGVyIChzKWVkIGdlc2NocmllYmVuLAphbnNvbnN0ZW4gaXN0IGRlciBuYWVtbGljaCBnYW56IGdyb3NzZSBTY2hlaXNzZS4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEpldHp0IG5laG1lbiBlaW5lbSBzY2hvbiBkaWUgTW9uc3RlciBkaWUgQXJiZWl0IHdlZyAoU251Z2dsZSwgMTAuIERleiAxOTk3LCAwOTo1NDoxMSk6Cn4jISBybj1ZZW5kaSBydD04ODE1Nzc2NzMgcmc9c2NobWFycm4KfiMhIHRpZD04ODE1MzUyMTcKU3RpbW10IHNjaG9uLCBhYmVyIHdlbm4gd2lyIHNjaG9uIEhhYXJlIHNwYWx0ZW4sIGRhbm4gc29sbHRlIGF1Y2ggYmVkYWNodAp3ZXJkZW4sIGRhc3MgZXMgbnVyIGVpbiBXZWdoaWVyIChuaWNodCBudXIgZWluZXIgdm9uIHZpZWxlbikgaXN0IC0gZGFzcyAKZXIgd2llZGVya29tbXQsIGlzdCBkYWJlaSB1bmVyaGVibGljaCAtIGVyZ286IERlbSBXZWdoaWVyIG1pc3NsaW5ndApkaWUgRmludGUuIChzY2hvZW5lciB3YWVyZSBqYSBEZXMgV2VnaGllcnMgRmludGUgbWlzc2xpbmd0LCBhYmVyIGRhcyAKa2FwaWVydCBkYW5uIGtlaW5lciBtZWhyIDotKQoKU251Z2cKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNwcnVjaCBkZXIgV29jaGUgKFNudWdnbGUsIDEwLiBEZXogMTk5NywgMDk6NTU6MjEpOgp+IyEgcm49TW9yZ290aCBydD04ODE2NDgyNTAgcmc9c2NobWFycm4KfiMhIHRpZD04ODE1ODY5MzcKVW5kIHdhcyBzYWd0IExvdmUgZGF6dT8KCllUUwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSmV0enQgbmVobWVuIGVpbmVtIHNjaG9uIGRpZSBNb25zdGVyIGRpZSBBcmJlaXQgd2VnIChBY3JpbW9uLCAxMC4gRGV6IDE5OTcsIDE4OjExOjI5KToKfiMhIHJuPVNudWdnbGUgcnQ9ODgxNzQ0MDUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODgxNTM1MjE3Cj4gKHNjaG9lbmVyIHdhZXJlIGphIERlcyBXZWdoaWVycyBGaW50ZSBtaXNzbGluZ3QsIGFiZXIgZGFzCj4ga2FwaWVydCBkYW5uIGtlaW5lciBtZWhyIDotKSAgICAgICAgICAgICAgICAgICAgIF5eXl5eXl5eCi4gXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eCgpEaWVzZSBBdXNzYWdlIGthbm4gaWNoIHdpZGVybGVnZW4gOi0pCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEpldHp0IG5laG1lbiBlaW5lbSBzY2hvbiBkaWUgTW9uc3RlciBkaWUgQXJiZWl0IHdlZyAoUmFuZGFsLCAxMC4gRGV6IDE5OTcsIDE5OjI3OjEwKToKfiMhIHJuPUFjcmltb24gcnQ9ODgxNzczODg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODgxNTM1MjE3CkVpbmVzIFdlZ2hpZXJlcyBGaW50ZSBtaXNzbGluZ3Q/IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSmV0enQgbmVobWVuIGVpbmVtIHNjaG9uIGRpZSBNb25zdGVyIGRpZSBBcmJlaXQgd2VnIChDYXVubywgMTEuIERleiAxOTk3LCAxMTozMjoyNCk6Cn4jISBybj1SYW5kYWwgcnQ9ODgxNzc4NDMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODgxNTM1MjE3CkRlciBEYXRpdiBpc3QgZGVtIEdlbml0aXYgc2VpbiBUb2QuCgpDLiBObwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSmV0enQgbmVobWVuIGVpbmVtIHNjaG9uIGRpZSBNb25zdGVyIGRpZSBBcmJlaXQgd2VnIChZZW5kaSwgMTEuIERleiAxOTk3LCAxMzoyOTowNik6Cn4jISBybj1SYW5kYWwgcnQ9ODgxNzc4NDMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODgxNTM1MjE3CgpEZXMgV2VnaGllciBGaW50ZSBtaXNzbGluZ3QuCgoKUG9ldGlzY2hlciBzby4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp6dSBGdXNzYmFsbCEgKEdyaW1tYm9ybiwgMTEuIERleiAxOTk3LCAxMzoyOTo0Mik6Cn4jISBvbj1NYWdudXMgb3Q9ODgxNzc3MDg0IG9nPXdpdHplCkljaCBoYWx0ZSBkaWVzZSBBbnNwaWVsdW5nZW4gYXVmIGRpZSBLaW5kZXJzY2hhZW5kZXIgdW5kIC1raWxsZXItUHJvYmxlbWF0b2sKZnVlciBhYnNvbHV0IGdlc2NobWFja2xvcy4KTWFnbnVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVzc2JhbGwhIChHcmltbWJvcm4sIDExLiBEZXogMTk5NywgMTM6Mjk6NTIpOgp+IyEgb249TGkgb3Q9ODgxODMxMDAxIG9nPXdpdHplCn4jISBybj1HcmltbWJvcm4gcnQ9ODgxNjc1MzIyIHJnPXdpdHplCn4jISB0aWQ9ODgxNjc1MzIyCkhtbSAsYWxzIG9iIGVzIG51ciBpbiBCZWxnaWVuIEtpbmRlcnNjaGFlbmRlciBnYWViZS4uLgpJbiBEZXV0c2NobGFuZCBsYXVmZW4gYXVjaCBncmFkZSB6d2VpIGJla2FubnQgUHJvemVzc2UuLi4gQWJlciB1ZWJlciBhbmRlcmUgenUKbGFlc3Rlcm4gbWFjaHQgamEgZWgnIG1laHIgU3Bhc3MsIG9kZXI/CkxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVzc2JhbGwhIChHcmltbWJvcm4sIDExLiBEZXogMTk5NywgMTM6MzE6MjIpOgp+IyEgb249UWl0ZXNzIG90PTg4MTg0MTg1NCBvZz13aXR6ZQp+IyEgcm49R3JpbW1ib3JuIHJ0PTg4MTY3NTMyMiByZz13aXR6ZQp+IyEgdGlkPTg4MTY3NTMyMgppY2ggaGFiZSB1ZWJlcmhhdXB0IG5pY2h0IHNvbGNoZSB2ZXJxdWVyZW4gZ2VkYW5rZW4sIGFsc28gaGFiZSBpY2ggZGVuIHdpdHoKdWViZXJoYXVwdCBuaWNodCBrYXBpZXJ0LiB3YXMgaGFiZW4gYmVsZ2lzY2hlIGZ1c3NiYWxsZXIgZGFtaXQgenUgdHVuLCBkYXNzIGVzCnp1ZmFlbGxpZyBpbiBpaHJlbSBsYW5kIGVpbmVuIGtpbmRlcnNjaGFlbmRlbmRlbiBpZGlvdGVuIGdpYnQgPyAKClFJKiogZmluZGV0IGRlbiB3aXR6IGF1Y2ggYmxvZWQgdW5kIGdlc2NobWFja2xvcy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogenUgRnVzc2JhbGwhIChHcmltbWJvcm4sIDExLiBEZXogMTk5NywgMTM6MzY6MzYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg4MTg0MzM4MiByZz1zY2htYXJybgp+IyEgdGlkPTg4MTg0MzM4MgpWaWVsbGVpY2h0IGdlc2NobWFja2xvcyAoaWNoIHBlcnNvZW5saWNoIGthbm4gZGEgaGVyemxpY2ggZHJ1ZWJlciBsYWNoZW4sIGFiZXIKaWNoIHp3aW5nZSBkYSBuaWVtYW5kZW4genUpLCBhYmVyIGltbWVyaGluIGVpbiBXaXR6LiBJbSBHZWdlc2F0eiB6dSBkZW0sIHdhcwpEdSBzY2hyZWlic3QuIERhaGVyIGlzdCBkZXIgIldpdHoiIG5vY2ggaW4gd2l0emUsIERlaW4gcmVwbHkgZGFnZWdlbiBoaWVyLi4uCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGdXNzYmFsbCEgKEdyaW1tYm9ybiwgMTEuIERleiAxOTk3LCAxMzozNzozMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODgxODQzMzkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODgxNjc1MzIyCkhtbT8gV2llc28sIERldXRzY2hsYW5kIGhhdCBzaWNoIGRvY2ggYXVjaCBxdWFsaWZpemllcnQsIG9kZXIgaGFiIGljaCBkYXMKdmVyd2VjaHNlbHQ/CgpHZEEgaXN0IFNjaHdlZGUuIEtlaW5lIEtpbmRlcnNjaGFlbmRlci4gQmlzaGVyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZ1c3NiYWxsISAoR3JpbW1ib3JuLCAxMS4gRGV6IDE5OTcsIDEzOjM4OjI2KToKfiMhIHJuPUdyaW1tYm9ybiBydD04ODE4NDM0ODIgcmc9c2NobWFycm4KfiMhIHRpZD04ODE2NzUzMjIKU2llaCBEdSBkYXMgZ2VybmUgYWxzIEVpbnplbGZhbGxwaGFlbm9tZW4gKHR1IERpY2ggZGEgbWl0IFJ1ZWhlIHp1c2FtbWVuLCBkZXIKa2FubiBkYXMgc2Nob24gZ3V0KS4gSWNoIHNlaGUgZGFzIGFuZGVycy4gQWxsZXJkaW5ncyBuYXR1ZXJsaWNoIG5pY2h0IGF1ZgpCZWxnaWVuIGJlc2NocmFlbmt0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZWluZSBuZXVlIExpZWJsaW5ncy1XZWJzZWl0ZSA6KSAoUm9jaHVzLCAxMS4gRGV6IDE5OTcsIDE1OjUyOjM1KToKaHR0cDovL3d3dy53ZWxsLmNvbS91c2VyL3ZhbnlhL2JpbGwuaHRtbApJZGVhbCB6dW0gRnJ1c3RhYmJhdSA6KQoKIFJvY2h1cywgd2llZGVyIGVpbmVuIHVubm9ldGlnZW4gQXJ0aWtlbCB6dXIgQmV0cmllYnNzeXN0ZW0tRGlza3Vzc2lvbgogICAgICAgICBiZWl0cmFnZW5kLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDYXR3ZWF6bGUgaW5jb2duaXRvIDopIChNaWV6ZSwgMTEuIERleiAxOTk3LCAxNjozNToxNik6CgpHYXN0MiBydWZ0OiBUc2NodWVzcyEgOikKQ2F0d2VhemxlICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKZW50dGFybnQsIENhdHdlYXpsZSA6KQoKTWllemUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZ1c3NiYWxsISAoV3VyemVsLCAxMS4gRGV6IDE5OTcsIDE5OjMyOjAxKToKfiMhIHJuPUdyaW1tYm9ybiBydD04ODE4NDM4NTMgcmc9c2NobWFycm4KfiMhIHRpZD04ODE2NzUzMjIKaW4gc2Nod2VkZW4ga2VpbmUga2luZGVyc2NoYWVuZGVyPyBxdWF0c2NoLiBkaWUgc2luZCBudXIgenUgYmxvZWQsIHVtIGRpZQptaXN0dmllY2hlciB6dSBlcndpc2NoZW4uCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZ1c3NiYWxsISAoQWxwaGEsIDExLiBEZXogMTk5NywgMjE6MTE6NTYpOgp+IyEgcm49V3VyemVsIHJ0PTg4MTg2NTEyMSByZz1zY2htYXJybgp+IyEgdGlkPTg4MTY3NTMyMgpXYXMgbWVpbnN0IGR1IGpldHp0LCBXdXJ6ZWw/ClNpbmQgZGllIFNjaHdlZGVuIHp1IGRvb2YsIEtpbmRlciB6dSBlcndpc2NoZW4sIHVtIHNpY2ggZGFubiBhbiBJaG5lbiB6dQp2ZXJnZWhlbj8KT2RlciBzaW5kIGRpZSBTY2h3ZWRlbiB6dSBibG9lZCwgZGllIEtpbmRlcnNjaGFlbmRlciB6dSBlcndpc2NoZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGluIGRlciB6YXViZXJlcmJpYmxpb3RoZWsgKEJpcmR5LCAxMi4gRGV6IDE5OTcsIDExOjM0OjU2KToKRGllIEJpYmxpb3RoZWthcmluIHppZWh0IHNpY2ggc2VsYmVyIGVpbmVuIHVlYmVyIGRlbiBTY2hhZWRlbCB1bmQgc3RvbHBlcnQKbmFjaCBPc3Rlbi4KRW5kbGljaCAhIDspCkJpcmR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGdXNzYmFsbCEgKENhdW5vLCAxMi4gRGV6IDE5OTcsIDE0OjM0OjE4KToKfiMhIHJuPUFscGhhIHJ0PTg4MTg3MTExNiByZz1zY2htYXJybgp+IyEgdGlkPTg4MTY3NTMyMgpBbHNvLCBiaXNoZXIgZmFuZCBpY2hzIG5vY2ggaGFhcnNjaGFyZiBhbiBkZXIgR3VlcnRlbGxpbmllIHZvcmJlaS4KQWJlciBtaXQgZGVtIGxldHp0ZW4gQXJ0aWtlbCB3aXJkIGRhcyBqZXR6dCB3YWhybGljaCBpZ25vcmFudC4KRGVyIFdpdHogaXN0IHJhdXMsIGpldHp0IGxhc3N0IGRlbiBTY2guLndhY2hzaW5uIHNlaW4hCgpDLiBObwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGV1dGUgaW4gZGVyIFNTUCAoU2VsaXNzYSwgMTIuIERleiAxOTk3LCAxNDo0Nzo1Myk6ClNub3R0eSByYW1tdCBlaW5lbSBodWVwZmVuZGVuIEtudXRzY2hmaXNjaCBkYXMgS25pZSBpbiBkZW4gS29lcnBlci4KRGVyIEtudXRzY2hmaXNjaCBpc3QgZ2x1ZWNrbGljaCB3aWUgbmllIHp1dm9yLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRnVzc2JhbGwhIChSYW5kYWwsIDEyLiBEZXogMTk5NywgMTg6MDE6MDEpOgp+IyEgcm49Q2F1bm8gcnQ9ODgxOTMzNjU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODgxNjc1MzIyCkdhbnogZGVpbmVyIE1laW51bmcgQ2F1bm8gLi4uCkljaCBmdWVyIG1laW5lbiBUZWlsIGZpbmRlIGRhcyB3aXJrbGljaCBudXIgZ2VzY2htYWNrc2xvcyAuLi4gCgpSYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFubGVpdHVuZyB6dTogV2llIGtvbW10IGVpbiBHb3R0IGFtIHNjaG5lbGxzdGVuIHp1IG1pciA6KSAoTWllemUsIDEyLiBEZXogMTk5NywgMTg6MDM6MjIpOgplYmVuIGF1ZiBlaW5lbSBmbGllZ2VuZGVuIFRlcHBpY2guLi4uLgoKTGFyaXNzYSBzY2hyZWl0IGxhdXQhCkxhcmlzc2EgdHJpdHQgRnJldW5kLgpFcyBtYWNodCAqUFVGRiogdW5kIEJvaW5nIGVyc2NoZWludCBhdXMgZWluZW0gTG9naWt3b2Vsa2NoZW4uCgoKTWllemUsIGxhY2h0IGltbWVybm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFubGVpdHVuZyB6dTogV2llIGtvbW10IGVpbiBHb3R0IGFtIHNjaG5lbGxzdGVuIHp1IG1pciA6KSAoTGFyaXNzYSwgMTIuIERleiAxOTk3LCAxODowNDo0NSk6Cn4jISBybj1NaWV6ZSBydD04ODE5NDYyMDIgcmc9c2NobWFycm4KfiMhIHRpZD04ODE5NDYyMDIKT2gsIHdpciBzdGVoZW4gYXVmIGVpbmVtCmZsaWVnZW5kZW4gVGVwcGljaD8gCgoqc293YXMqCgpMYXJpLCB0cml0dCB3ZWl0ZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bmQgd2llIGdlaHQgQm9pbmcgd2llZGVyPyAoTWllemUsIDEyLiBEZXogMTk5NywgMTg6MDU6MTYpOgouLi4ga3VyeiBkYW5hY2gKCkxhcmlzc2EgdHJpdHQgRnJldW5kIGZlc3RlLgouLi4KQm9pbmcgZ2VodCBqZXR6dCBoZWltLgoKCmVpZ2VudGxpY2ggZ2FueiBlaW5mYWNoIDopCgpNaWV6ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW5kIHdpZSBnZWh0IGRhcyBtaXQgZWluZW0gRXJ6bWFnaWVyPyAoTWllemUsIDEyLiBEZXogMTk5NywgMTg6MDk6NDgpOgoKdW5kIHdpZWRlciBrdXJ6IGRhcmF1Zi4uLgoKTGFyaXNzYSBzYWd0OiBJY2ggaGFiIEhVTkdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBCkNhdHdlYXpsZSBzY2hsZWljaHQgc2ljaCB2b24gaGludGVuIGFuIERpY2ggaGVyYW4uCkNhdHdlYXpsZSBmbHVlc3RlcnQgRGlyIGlucyBPaHI6IEJ1aCEKCgpNaWV6ZSwgZXJzdGF1bnQgdWViZXIgc28gdmllbCBBa3Rpdml0YWV0IGF1ZiBlaW5lbSBmbGllZ2VuZGVuIFRlcHBpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1pdCBTZWhlcm4gZ2VodCBkYXMgc286IChNaWV6ZSwgMTIuIERleiAxOTk3LCAxODoxMzo1MCk6CgpMYXJpc3NhIGhhdCBIVU5HQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQoKW0tsZXJ1czpIb21tIHd1ZW5zY2h0IHNlaW5lbiBTY2hhZWZjaGVuIGVpbiBnZXJ1aHNhbWVzIFdFIV0KW0tsZXJ1czpIb21tIHZlcm5laWd0IHNpY2ggdmVyYWJzY2hpZWRlbmQgdm9yIHNlaW5lbiBTY2h3ZXN0ZXJuIHVuZCBCcnVlZGVybiFdCgoKb2IgZGFzIGFuIExhcmlzc2EgbGllZ3Q/Pz8KCk1pZXplCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdW5kIHdpZSBnZWh0IGRhcyBtaXQgZWluZW0gRXJ6bWFnaWVyPyAoQW5ha2luLCAxMi4gRGV6IDE5OTcsIDE4OjEzOjU4KToKfiMhIHJuPU1pZXplIHJ0PTg4MTk0NjU4OCByZz1zY2htYXJybgp+IyEgdGlkPTg4MTk0NjU4OAoKQ2F0KiBpc3Qga2VpbiBFcnptYWdpZXIgTUllemUuCgpBbmFraW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWVpbmUgbmV1ZSBMaWVibGluZ3MtV2Vic2VpdGUgOikgKFJhZmZpLCAxMi4gRGV6IDE5OTcsIDE4OjE1OjIzKToKfiMhIHJuPVJvY2h1cyBydD04ODE4NTE5NTUgcmc9c2NobWFycm4KfiMhIHRpZD04ODE4NTE5NTUKIHAgdSBuIGMgaCAgIGIgaSBsIGwgIGcgYSB0IGUgcyAKCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTb3JyeSEKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5ldHNjYXBlIDIuMDIgW2RlXSAoV2luTlQ7IEkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2Fubm90IHJlYWQgdGhlIGNvZGUgb24gdGhpcyBwYWdlLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBZb3UgbmVlZCBhIG5ld2VyIGJyb3dzZXIuLi4KCkFoYSA/IHVuZCB3YXMgaXN0IGRhcmFuIHNvIGx1c3RpZyA/CgpHcnVzcwpILgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRnVzc2JhbGwhIChSYWZmaSwgMTIuIERleiAxOTk3LCAxODoxODowNyk6Cn4jISBybj1BbHBoYSBydD04ODE4NzExMTYgcmc9c2NobWFycm4KfiMhIHRpZD04ODE2NzUzMjIKSG1tIEJlaWRlcyA/IFdpZSB3aXIgamEgYWxsZSB3aXNzZW4gc2luZCBhbGxlIFNjaHdlZGVuIEJsb25kLgoKR3J1ZWJlbG5kCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXb3p1IHNpbmQgdm9sbGUgU3RhdHMgZ3V0Pz8/IChNaWV6ZSwgMTIuIERleiAxOTk3LCAxODoxODoyOCk6CnVuZCB3aWVkZXIga3VyemUgWmVpdCBzcGFldGVyLi4uLgoKRHUga251ZGRlbHN0IExhcmlzc2EuCj4gUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIExhcmlzc2EuCgoKTWllemUKClAuUy4gSGFldHRlIGljaCBnZXd1c3N0LCBkYXNzIHNvb29vIHZpZWwgcGFzc2llcnQsIGhhZXR0ZSBpY2ggbnVyIGVpbmVuCkFydGlrZWwgZ2VzY2hyaWViZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFzbW9kaXMsIDEyLiBEZXogMTk5NywgMjE6NTc6NTgpOgpbQWJlbnRldWVyOlB1bmtdIHdpZSBrb21tZSBpY2ggdm9uIGRlbiByYWV1YmVybiBsb3M9PwouLi4KW1RvZDpMYXJzXSBFaW4gUmFldWJlciBoYXQgZ2VyYWRlIFB1bmsgdW1nZWJyYWNodC4KCgoKKiogSmEsIHNvIGdlaHRzIGF1Y2ggLi4uICoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbHNvIHNvIHdhcyB3dWVuc2NoZW4gc2ljaCBkaWUgU3BpZWxlciBub2NoIDspIChEZW50aSwgMTIuIERleiAxOTk3LCAyMjozOTowNSk6CltUcnZlczpDeXJheF0gZ2lidCBlcyBhdWNoIG5lIFBBUkFIWURSQSA/CltUcnZlczpNaW5kYmxhZGVdIEN5cmF4IGRpZSBub3JtYWxlIHJlaWNodCBhdWNoITspCi10cjpuaWNrdApbVHJ2ZXM6RGVudGkgbmlja3RdCltUcnZlczpDeXJheF0gZ2lidCBlcyBkaWU/Ci10ciBwYXJhPyBkYXMgd2FlcmUgbWFsIG5lIGlkZWUgZnVlciBwYXRyeW4gOykKW1RydmVzOkRlbnRpXSBwYXJhPyBkYXMgd2FlcmUgbWFsIG5lIGlkZWUgZnVlciBwYXRyeW4gOykKLXRyIGFuIHBvcnRhbCAyNSA7KQpbVHJ2ZXM6RGVudGldIGFuIHBvcnRhbCAyNSA7KTsKW1RydmVzOktpbGFyXSBEaWUga2FubiBqYSBNb3Jnb3RoIHVlYmVybmVobWVuIDopCltUcnZlczpBc21vZGlzXSBwYXJhaHlkcmEgPyBtaXQgMjUga29lcGZlbiA/CltUcnZlczpNaW5kYmxhZGVdIGphdSBqZWRlciBrb3BmIDggYW1ncmlmZmUKLXRyIG1pbmRlc3RlbnMsIHVuZCBlaW5lbSB3ZWl0ZXJuIHBybyBhbGxlIDUgc2VrdW5kZW4KW1RydmVzOkRlbnRpXSBtaW5kZXN0ZW5zLCB1bmQgZWluZW0gd2VpdGVybiBwcm8gYWxsZSA1IHNla3VuZGVuOwpbVHJ2ZXM6QXNtb2Rpc10gd2VubiBtYW4gbmljaHQgYXVzYnJlbm50LCB3YWNoc2VuIDUgbmV1ZSBuYWNoCltUcnZlczpDeXJheF0gY29vb29vb2w7CltUcnZlczpLaWxhcl0gSm8gLSB1bmQgYWxsZSBLb2VwZmUgMTAwJS1LYWVtcGZlciwgS2FyYXRla2EsIFphdWJlcmVyIHVzdy4uLiA6KQoKQWxzbywgd2VyIG1hY2h0IGRhcz8KCk5vY2ggaW1tZXIgZ3JpbnNlbmQsIERlbnRpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWxzbyBzbyB3YXMgd3VlbnNjaGVuIHNpY2ggZGllIFNwaWVsZXIgbm9jaCA7KSAoU2lsdmFuYSwgMTMuIERleiAxOTk3LCAwMDo0NjozMik6Cn4jISBybj1EZW50aSBydD04ODE5NjI3NDUgcmc9c2NobWFycm4KfiMhIHRpZD04ODE5NjI3NDUKQmluIHNjaG9uIGRhYmVpLi4uIEplZGVuZmFsbHMgYW4gZXR3YXMgbWl0IGFlaG5saWNoZXIgU2NobGFna3JhZnQuLi4KCiAgUGFyYXZhbmEgKGZpbnN0ZXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWxzbyBzbyB3YXMgd3VlbnNjaGVuIHNpY2ggZGllIFNwaWVsZXIgbm9jaCA7KSAoTW9yZ290aCwgMTUuIERleiAxOTk3LCAwNzo0NToxOSk6Cn4jISBybj1EZW50aSBydD04ODE5NjI3NDUgcmc9c2NobWFycm4KfiMhIHRpZD04ODE5NjI3NDUKS2xhcm8sIGFiZXIgaGludGVyaGVyIG5pY2h0IHdlaW5lbiwgd2VubiBpaHIgc3RlcmJ0Li4uLgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbHNvIHNvIHdhcyB3dWVuc2NoZW4gc2ljaCBkaWUgU3BpZWxlciBub2NoIDspIChNYW5nbywgMTUuIERleiAxOTk3LCAwNzo0NjozOCk6Cn4jISBybj1TaWx2YW5hIHJ0PTg4MTk3MDM5MiByZz1zY2htYXJybgp+IyEgdGlkPTg4MTk2Mjc0NQpOdXIgbWFsIHNvICduZSBGcmFnZSBpbSBWb3JyYXVzLCBlaCBpY2ggbWljaCB6dSBmcnVlaCBmcmV1ZS4KCldpcmQgZGFzIHdpZWRlciBuZW4gemF1YmVyZXJzcGV6aWZpc2NoZXMgTW9uc3Rlciwgb2RlciBrb2VubmVuIHNpY2ggZG9ydCBkYW5uCmF1Y2ggV3Vyc3RnaWxkZW4gZHJhbiB2ZXJzdWNoZW4/CgpNYW5nbywgZXdpZ2VyIEphbW1lcmxhcHBlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1laW5lIG5ldWUgTGllYmxpbmdzLVdlYnNlaXRlIDopIChHcmltbWJvcm4sIDE1LiBEZXogMTk5NywgMTE6MTM6MTEpOgp+IyEgcm49UmFmZmkgcnQ9ODgxOTQ2OTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODgxODUxOTU1CkRpZSBTZWl0ZSBicmF1Y2h0IEphdmFTY3JpcHQuIFVuYW5nZW5laG0sIGFiZXIgZnVlciBkaWUgZWluZSBTZWl0ZSBsb2hudCBzaWNocwp0YXRzYWVjaGxpY2guLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2ludGVycGFydHk/IChHcmltbWJvcm4sIDE1LiBEZXogMTk5NywgMTI6NTQ6NTYpOgp+IyEgb249R3JpbW1ib3JuIG90PTg4MjE4MDQzNSBvZz1wYXJ0eQp+IyEgcm49TW9yZ290aCBydD04ODIxNjgxNTUgcmc9cGFydHkKfiMhIHRpZD04ODE1NzA3MjgKQWxzbywgaWNoIHdlaXNzIG5pY2h0LCBvYiBzaWNoIHNvIGVpbmUgQ2FmZXRlIGFscyBPcmsgd2lya2xpY2ggZWlnZW5lbgp3dWVyZGUuRGEgd2FyIGRpZSBJZGVlIGluIEJlcmxpbiBiZXNzZXIsIGRpZSB6ZWx0ZXVlYmVyZmFsbGVuZGVuIGp1bmdlbiBIZXJyZW4KbWl0IGRlciBhZXJvZHluYW1pc2NoZW4gRnJpc3VyIGFscyBzb2xjaGUgenUgdmVyd2VuZGVuLiBHaWJ0cyBzb3dhcyBkZW5uIG5pY2h0CmltIFBvdHQ/CgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdpbnRlcnBhcnR5PyAoR3JpbW1ib3JuLCAxNS4gRGV6IDE5OTcsIDEyOjU1OjM3KToKfiMhIHJuPVllbmRpIHJ0PTg4MjE4NTkzMiByZz1wYXJ0eQp+IyEgdGlkPTg4MTU3MDcyOApBYmVyIGltbWVyLCBhYmVyIGdlcm4uLi4gOy0pCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdpbnRlcnBhcnR5PyAoUmFudGFucGxhbiwgMTUuIERleiAxOTk3LCAxMjo1Njo1NSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODgyMTg2ODk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODgxNTcwNzI4CkljaCBlcmlubmVyIG1pY2ggIQoKRXIgc2Nod2FuZyBzZWhyIGhlcm9pc2NoIHNlaW5lIEZhY2tlbCB1bmQgc3VjaHRlIE1hZWRlbHMsIGJpcwplciB1bnZlcm11dGV0IHZvciAodW50ZXIpIFBhbXBlcnMgc3RhbmQuCgpOZXR0ZXIgYW5ibGljayB3YXIgZGFzIDstKQoKT2UqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbGZlbnBhcGFnZWkgKFllbmRpLCAxNS4gRGV6IDE5OTcsIDEzOjAyOjIzKToKCkVpbiBQYXBhZ2VpIGZsYXR0ZXJ0IGhlcmVpbi4KRGVyIFBhcGFnZWkgc2FndDogR3V0ZW4gVGFnIQpEZXIgUGFwYWdlaSBzYWd0OiBGb25kaWwsIGJpc3QgRHUgaW0gUlo/CkVpbiBQYXBhZ2VpIGZsYXR0ZXJ0IG5hY2ggV2VzdGVuLgogCkR1IGJyaWNoc3Qgdm9yIExhY2hlbiB6dXNhbW1lbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBbHNvIHNvIHdhcyB3dWVuc2NoZW4gc2ljaCBkaWUgU3BpZWxlciBub2NoIDspIChTaWx2YW5hLCAxNS4gRGV6IDE5OTcsIDIzOjE1OjAwKToKfiMhIHJuPU1hbmdvIHJ0PTg4MjE2ODM5OCByZz1zY2htYXJybgp+IyEgdGlkPTg4MTk2Mjc0NQpJY2ggbmVobWUgYW4sIGRhc3MgbWFuIEthZW1wZmVyLCBLbGVyaWtlciB1bmQgWmF1YmVyZXIgb2RlciBDaGFvdGVuIApicmF1Y2hlbiB3aXJkLiBFaWdlbnRsaWNoIHNvbGx0ZSBlcyBmdWVyIGFsbGUgc2VpbiwgYWJlciBBYmVudGV1cmVyIHNlaGVuCmRhIHdvaGwgbnVyIGluIEhlZXJzY2hhcmVuIG5pY2h0IGFsdCBhdXMuLi4KCiAgU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQWxzbyBzbyB3YXMgd3VlbnNjaGVuIHNpY2ggZGllIFNwaWVsZXIgbm9jaCA7KSAoTmFpcm9sZiwgMTUuIERleiAxOTk3LCAyMzoxNjoyNSk6Cn4jISBybj1TaWx2YW5hIHJ0PTg4MjIyNDEwMCByZz1zY2htYXJybgp+IyEgdGlkPTg4MTk2Mjc0NQoqZ3JpbnMqCnJpY2h0aWcgc28gOi0pIAoKU2hhcmlhLCBkaWUgc2ljaCBkcnVlYmVyIGZyZXV0LCBkYXNzIGRpZSBCaWVyc2NodWV0dGxlciBtaXQga2VpbmVtIFRvbgplcndhZWhudCB3ZXJkZW4gOi0pKSkgKHNlbGJzdCBlaW5tYWwgZG9ydCBnZXdlc2VuIHNlaWVuZC4uLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYSBLbGFzc2UuLi4gKFR1bml4Z3V0LCAxNi4gRGV6IDE5OTcsIDA5OjU1OjQzKToKRHUgc2llaHN0IERpciBlaW4gU2FiYmVyYW11bGV0dCBnZW5hdSBhbiB1bmQgc2NoYXVzdCBhbnNjaGxpZXNzZW5kCmF1ZiBkaWUgbWFnaXNjaGUgU2NocmlmdHJvbGxlLiBEb3J0IGVyc2NoZWludCBndXQgbGVzYmFyOgpEaWVzZXMgQW11bGV0dCBtYWNodCBCbGluZGUgd2llZGVyIHNlaGVuZCwgZGFzIFphdWJlcndvcnQgaGVpc3N0ICduaXhibGknLgoKRGllIFNjaHJpZnRyb2xsZSB6ZXJmYWVsbHQgenUgU3RhdWIuCj4gRGVyIEZ1bmtlbnN0cm9tIGRlcyBaYXViZXJzdGFicyB2ZXJzaWVndC4KRXMgd2lyZCBkdW5rZWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWxzbyBzbyB3YXMgd3VlbnNjaGVuIHNpY2ggZGllIFNwaWVsZXIgbm9jaCA7KSAoUGF0cnluLCAxNi4gRGV6IDE5OTcsIDEyOjI0OjM2KToKfiMhIHJuPURlbnRpIHJ0PTg4MTk2Mjc0NSByZz1zY2htYXJybgp+IyEgdGlkPTg4MTk2Mjc0NQppY2ggd3VlcmRlIGVzIGphIGluIG1laW5lIGlkZWVuLWxpc3RlIHVlYmVybmVobWVuLCBhYmVyIHZvcmhlciB3aWxsIGljaCBuZQp1bnRlcnNjaHJpZnRlbnNhbW1sdW5nIGFscyB6dXNwcnVjaCB1bmQgcnVlY2t2ZXJzaWNoZXJ1bmcgOykKCi0tLS0tLQpwYXRyeW4KClBTOiAzIHVudGVyc2NocmlmdGVuIHJlaWNoZW4sIHdpZSB1ZWJsaWNoICpncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWxzbyBzbyB3YXMgd3VlbnNjaGVuIHNpY2ggZGllIFNwaWVsZXIgbm9jaCA7KSAoS2V5LCAxNi4gRGV6IDE5OTcsIDEyOjU4OjE4KToKfiMhIHJuPVBhdHJ5biBydD04ODIyNzE0NzYgcmc9c2NobWFycm4KfiMhIHRpZD04ODE5NjI3NDUKVW50ZXJzY2hpZnRlbiBicmF1Y2hzdGU/CgpLZWluIHByb2IgOikKClR1YXJlZywKRmx1c3N3aW5kLApLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZ1c3NiYWxsISAoR3JpbW1ib3JuLCAxNi4gRGV6IDE5OTcsIDE1OjM0OjM0KToKfiMhIG9uPUxpIG90PTg4MjI3MDIyMyBvZz13aXR6ZQp+IyEgcm49Q2F1bm8gcnQ9ODgxODM3MDA0IHJnPXdpdHplCn4jISB0aWQ9ODgxNjc1MzIyCkhtbmphLCBkYSBoYXN0IGR1IG5hdHVlcmxpY2ggcmVjaHQuIApMaQoqKwpubgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcGVydmVyc2UgRmlzY2hlIDspKSkgKEx3YXhpLCAxNi4gRGV6IDE5OTcsIDE3OjU2OjQyKToKCmViZW4gYmVpIGRlciBBdXNiaWxkdW5nOgoKCkR1IHJhbW1zdCBkZW0gaHVlcGZlbmRlbiBLbnV0c2NoZmlzY2ggZGFzIEtuaWUgaW4gZGVuIEtvZXJwZXIuCkRlciBLbnV0c2NoZmlzY2ggaXN0IGdsdWVja2xpY2ggd2llIG5pZSB6dXZvci4KCgoKQWggamV0enQgamEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNjaGlmZmUgKEF2YWxvbiwgMTYuIERleiAxOTk3LCAyMjowNTo0OSk6Cn4jISBybj1TaGFyaWEgcnQ9ODgyMTc1MzkwIHJnPWQuaW5zZWxuCn4jISB0aWQ9ODgxOTY1MDMxCj4gc2hhcmlhCj4gUC5TLjogSUNIIEhBQkUgS0VJTkVOIEJBUlQgISEhCgpEYW5uIHdpcmQgZXMgWmVpdCwgZGFzcyBEdSBEaXIgZWluZW4ga2F1ZnN0LiBTb25zdCBrYW5uc3QgRHUKRGlyIG5pZSBuZSBvcmRlbnRsaWNoZSBTdGVpbmlndW5nIGFuc2NoYXVuLi4uIDopCgphdmEuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERPUy9XaW5OVC1GcmFnZW4gKEdyaW1tYm9ybiwgMTcuIERleiAxOTk3LCAwOTowMzoyMSk6Cn4jISBvbj1KaW1kaWdyaXogb3Q9ODgyMjkyODM0IG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49SGVmZSBydD04ODIyNzM1Njkgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9ODgyMjczNTY5CgpJcyBkYXMgZWluIGJhaXQgPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBET1MvV2luTlQtRnJhZ2VuIChHcmltbWJvcm4sIDE3LiBEZXogMTk5NywgMDk6MDM6MjIpOgp+IyEgb249VHJhbmNlZmVhciBvdD04ODIyOTMwODQgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1KaW1kaWdyaXogcnQ9ODgyMjkyODM0IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTg4MjI3MzU2OQpIb2VtbWEsIGxlYW4gZXJzbWEgd2llIG1hbiBLb21ianV0YSBzY2hyZWlidCwgYmV2b3IgRHUgaGllciBkdW1tZSBLb21tZW50YXJlCm1hY2hzLCBleSEgOi0pCgp0ZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRE9TL1dpbk5ULUZyYWdlbiAoR3JpbW1ib3JuLCAxNy4gRGV6IDE5OTcsIDA5OjAzOjIzKToKfiMhIG9uPUppbWRpZ3JpeiBvdD04ODIyOTMxMTYgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1UcmFuY2VmZWFyIHJ0PTg4MjI5MzA4NCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD04ODIyNzM1NjkKCipkdWNrKiAtPiBzY2htYXJybgoKSmRHCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTdWNoZSBhbHRlIEdyYWZpa2thcnRlIChJU0EpIChHcmltbWJvcm4sIDE3LiBEZXogMTk5NywgMDk6MDM6MjUpOgp+IyEgb249QXNtb2RpcyBvdD04ODIyOTczMTggb2c9aGFyZHNvZnR3YXJlCn4jISBybj1GcmV1bmQgcnQ9ODgyMTk5NTE2IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTg4MjE5MDc4MgpIbW0sIHZlcmthdWZzdCBkdSBlaW4gQXV0byA/PyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJyb2dhbnRlIGFsdGUgbWFlbm5lci4uLiAoQ2F0d2VhemxlLCAxNy4gRGV6IDE5OTcsIDE2OjQ2OjAzKToKU2VpdCBKYWhyZW4gaW1tZXIgd2llZGVyIGdlcm4gZ2VzZWhlbiA6LSkKLS0tLS0KQlVHUyB2b24gem9yeWEgWy9kL3d1ZXN0ZS9jYXR3ZWF6bGUvdmFsZ2Vzc2Evcm9vbS96ZWx0XSAoMjguIEF1ZyAxOTk1KToKRGVyIEtlcmwgaGllciByZWRldCBtaWNoIG1pdCBKdWVuZ2VsY2hlbiBiencuIEp1bmdlbnMgYW4uIEljaCBiaW4gYWJlciBrZWluCkpVTkcKRSEKQlVHUyB2b24gYXVyZWxpYSBbL2Qvd3Vlc3RlL2NhdHdlYXpsZS92YWxnZXNzYS9yb29tL3plbHRdICgyMy4gU2VwIDE5OTUpOgppc3QgZGllc2VyIGFsdGUgbWFubiBibGluZCwgb2RlciB3YXJ1bSBuZW5udCBlciBtaWNoIGp1ZW5nZWxjaGVuPyBvZGVyIGlzdCBkYXMKZQppbmUgcXVlc3QgbnVyIGZ1ZXIgbWFlbm5lcj8KSURFQSB2b24gYW1hem9yYSBbL2Qvd3Vlc3RlL2NhdHdlYXpsZS92YWxnZXNzYS9yb29tL3plbHRdICggNy4gT2t0IDE5OTUpOgpIZSEgSWNoIGJpbiBrZWluIEp1bmdlISA6LSkKQlVHUyB2b24gZmV5YXJpYSBbL2Qvd3Vlc3RlL2NhdHdlYXpsZS92YWxnZXNzYS9yb29tL3plbHRdICgxMy4gRmViIDE5OTYpOgpEZXIgYWx0ZSBNYW5uIHNvbGx0ZSBNYWVkZWxjaGVuIHp1IHdlaWJsaWNoZW4gSGVsZGVuIHNhZ2VuCklERUEgdm9uIGxhdmluaWEgWy9kL3d1ZXN0ZS9jYXR3ZWF6bGUvdmFsZ2Vzc2Evcm9vbS9zdDNdICgxNi4gTm92IDE5OTYpOgppc3QgZGVyIGFsdGUgTWFubiBibGluZD8gT2RlciB3YXJ1bSBzcHJpY2h0IGVyIG1pY2ggbWl0ICJKdWVuZ2VsY2hlbiIgYW4/CklERUEgdm9uIGxhdmluaWEgWy9kL3d1ZXN0ZS9jYXR3ZWF6bGUvdmFsZ2Vzc2EvbW9uL29sZG1hbiM5ODAwMTddICgxNi4gTm92CjE5OTYpCjoKRXMgaXN0IHdpcmtsaWNoIHppZW1saWNoIG5lcnZpZywgaGllciBkYXVlcm5kIGFscyAiQnViaSIgYmV6ZWljaG5ldCB6dSB3ZXJkZW4KOihUCllQTyB2b24gYXJpYW5lIFsvcGxheWVycy9jYXR3ZWF6bGUvd29ya3Jvb21dICggMy4gSmFuIDE5OTcpOgppY2ggd2Vpc3MgamEgbmljaHQgb2IgZGVyIG1hbm4gYmxpbmQgaXN0LCBhYmVyIGVpbmUgYXR0cmFrdGl2ZSBmcmF1IG1pdCBqdW5nZQphbgpyZWRlbi4uLgpCVUdTIHZvbiB3ZXNlbiBbL2Qvd3Vlc3RlL2NhdHdlYXpsZS92YWxnZXNzYS9yb29tL3plbHRdICgxOC4gTWFpIDE5OTcpOgp3YXJ1bSBzYWd0IGRlciBrZXJsIGJ1YmkgenUgbWlyPyB1bmQganVlbmdlbGNoZW4/IGljaCBiaW4gZG9jaCBlaW4gd2VpYmxpY2hlcwp3ZQpzZW4uLi4gICA7KQotLS0tLQpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBcnJvZ2FudGUgYWx0ZSBtYWVubmVyLi4uIChCb2luZywgMTcuIERleiAxOTk3LCAxNjo0Njo0OSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9ODgyMzczNTYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODgyMzczNTYzCkRhIHNpZWh0IG1hbiBtYWwsIHdpZSBvZnQgRHUgRGVpbiByZXAtZmlsZSBhYmFyYmVpdGVzdCEgCkxvcyBqZXR6dCEgOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBiZWltIFN0YW1tdGlzY2guLi4gKFJvY2h1cywgMTcuIERleiAxOTk3LCAxOToyNjowNyk6ClJvY2h1czogV2FyZ29uLCB3YXMgaGFzdCBEdSBnZWdlbiBFbGZlbj8KV2FyZ29uOiBNZWluZSBGcmF1IGlzdCBFbGYuIFJlaWNodCBkYXM/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGJlaSBkZW4gaHV0emVsZ25vbWVuIChCaXJkeSwgMTguIERleiAxOTk3LCAxMTowODoyMik6CkRlciBIdXR6ZWxnbm9tIG11cm1lbHQ6IHllYWggeWVhaCB5ZWFoLi4uCkVpbiBIdXR6ZWxnbm9tIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBlaW5lbSBIdXR6ZWxnbm9tLgpFaW4gSHV0emVsZ25vbSB3ZWlsdCB3aWVkZXIgdW50ZXIgZGVuIExlYmVuZGVuLgpEZXIgSHV0emVsZ25vbSBmYWVuZ3QgZnVlcmNodGVybGljaCBhbiB6dSBmbHVjaGVuLgpEZXIgSHV0emVsZ25vbSBncnVtbWVsdC4KRWluIEh1dHplbGdub20gZGVua3QgIC4gbyBPIChsaXZpbmcodGhpc19vYmplY3QoKSksIGFsc28gYmluIGljaCkKRGVyIEdub20gc2FndDogd2lyIG11ZXNzZW4gamV0enQgbmFjaCBvYmVuLgpFaW4gSHV0emVsZ25vbSBtYWNodCBlaW5lIG1hZ2lzY2hlIEhhbmRiZXdlZ3VuZy4KRWluIEh1dHplbGdub20gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRWluIEh1dHplbGdub20gYmVkYW5rdCBzaWNoIGJlaSBEaXIgZnVlciBkZW4gRmV1ZXJiYWxsLgpEZXIgSHV0emVsZ25vbSBzdGlmdGV0IEZyaWVkZW4uCkVpbiBIdXR6ZWxnbm9tIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBlaW5lbSBIdXR6ZWxnbm9tLgpFaW4gSHV0emVsZ25vbSB3ZWlsdCB3aWVkZXIgdW50ZXIgZGVuIExlYmVuZGVuLgpEZXIgSHV0emVsZ25vbSBmYWVuZ3QgZnVlcmNodGVybGljaCBhbiB6dSBmbHVjaGVuLgpEZXIgSHV0emVsZ25vbSBncnVtbWVsdC4KRGVyIEdub20gZmx1ZXN0ZXJ0IERpciB6dTogWW8sIEJydWRlciEgTGFzcyB1bnMgZGllIEZyaWVkZW5zYm90c2NoYWZ0IGluIGRpZQpEZXIgR25vbSBmbHVlc3RlcnQgRGlyIHp1OiBXZWx0IHRyYWdlbiB1bmQgcG9zaXRpdmUgRW5lcmdpZSB2ZXJzdHJhaGxlbi4uLgpEZXIgSHV0emVsZ25vbSBzdGlmdGV0IEZyaWVkZW4uCkRlciBIdXR6ZWxnbm9tIHN0aWZ0ZXQgRnJpZWRlbi4KRGVyIEh1dHplbGdub20gc3RpZnRldCBGcmllZGVuLgpFaW4gSHV0emVsZ25vbSBmbHVlc3RlcnQgRGlyIHp1OiBQYXNzIGJsb3NzIGF1ZiBEdSwgYW4gbWVpbmVuIFdlcnRlbiBoYXQgZWluCkRlciBIdXR6ZWxnbm9tIGZsdWVzdGVydCBEaXIgenU6IGtvcnJ1cHRlciBNYWdpZXIgaGVydW1nZXNwaWVsdCEKRGVyIEh1dHplbGdub20gc3RpZnRldCBGcmllZGVuLgpFaW4gSHV0emVsZ25vbSBuaWNrdCBEaXIgd29obHdvbGxlbmQgenUuCkRlciBHbm9tIHp3aW5ndCBEaWNoIHp1OiBoenJucGZnbG16CldpZSBiaXR0ZT8KRGVyIEdub20gc2luZ3Q6ICdXaXIgSHV0emVsZ25vbWUgc2luZCBndXQgZHJhdWYsCkRlciBHbm9tIHNpbmd0OiAgRHVtbSBzY2h3YWV0emVuIGlzdCB1bnNlciBMZWJlbnNsYXVmLicKRGVyIEdub20gc2luZ3Q6ICdXaXIgc2luZCBiZWxpZWJ0IHdpZSBad2VyZ2VuZnVyeiwKRGVyIEdub20gc2luZ3Q6ICBhYmVyIGRhcyBpc3QgdW5zIHJlaWNobGljaCBzY2hudXJ6LicKRGVyIEdub20gc2luZ3Q6ICdkdW1kaWR1bSB0cmFsYWxsYWxhLCBzY2h3dXBwZGl3dXBwIHVuZCBkaW5nZWxpbmdkb25nLicKRGVyIEh1dHplbGdub20gc2NobmlwcHQgcmh5dGhtaXNjaCBtaXQgZGVuIEZpbmdlcm4uCkRlciBIdXR6ZWxnbm9tIG11cm1lbHQ6IHllYWggeWVhaCB5ZWFoLi4uCkVpbiBIdXR6ZWxnbm9tIHZlcmRyZWh0IGRpZSBBdWdlbiB1bmQga290enQuCkVpbiBIdXR6ZWxnbm9tIHNpbmd0OiBTYXZlIHRoZSB3b3JsZCAtIEtpbGwgeW91cnNlbGYKRWluIEh1dHplbGdub20gZmxlaHQgRGljaCBhbjogR2VoJyBiaXR0ZSBuaWNodCwgc29uc3QgaGFiZSBpY2gga2VpbmVuCmhlYXJ0X2JlYXQoKSBtZWhyIQpFaW4gSHV0emVsZ25vbSB0YXVtZWx0IHdpbGQgbGFsbGVuZCBkdXJjaCBkaWUgR2VnZW5kLgpEZXIgR25vbSBzaW5ndDogJ2R1bWRpZHVtIHRyYWxhbGxhbGEsIHNjaHd1cHBkaXd1cHAgdW5kIGRpbmdlbGluZ2RvbmcuJwpEZXIgR25vbSBzYWd0OiB3aXIgbXVlc3NlbiBqZXR6dCBuYWNoIG5vcmRlbi4KRWluIEh1dHplbGdub20gbmlja3QgRGlyIHdvaGx3b2xsZW5kIHp1LgpFaW4gSHV0emVsZ25vbSBtYWNodCB2ZXJzY2h3b2VyZXJpc2NoZSBNaWVuZW4gdW5kIGtpY2hlcnQgYm9lc2UuCkVpbiBIdXR6ZWxnbm9tIHJhdW50IERpciB6dTogV2lyIE5QQ3MgbXVlc3NlbiB6dXNhbW1lbmhhbHRlbiEKRWluIEh1dHplbGdub20gc2luZ3Q6ICdEYXMgZ2FhbnplIExlYmVuIGlzdCBCZXNjaGlzcyAtIHVuZCB3aXIgaGFiZW4gYWxsZQpzY2hsZWNodGUgS2FydGVuJwpFaW4gSHV0emVsZ25vbSBzYWd0OiBXaXIgd2VyZGVuIGFsbGUgc3RlcmJlbi4KRWluIEh1dHplbGdub20gc2FndDogRGllc2Uga2FwdXR0ZSBXZWx0IGlzdCBudXIgbWl0IGVpbmVyIFVlYmVyZG9zaXMgenUKRGVyIEh1dHplbGdub20gc2FndDogZXJ0cmFnZW4uCkRlciBHbm9tIHNhZ3Q6IHdpciBtdWVzc2VuIGpldHp0IGF1ZiBLbG8uCkRlciBHbm9tIHNhZ3Q6IHdpciBtdWVzc2VuIGpldHp0IG5hY2ggc3VlZGVuLgoKCkJpcmR5LCByZWljaGxpY2ggdmVyYmx1ZWZmdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdpbjk1LWRvbWFlbmVuYW5tZWxkdW5nIChHcmltbWJvcm4sIDE4LiBEZXogMTk5NywgMTQ6Mjc6MzYpOgp+IyEgcm49TGFyaXNzYSBydD04ODI0NTEwNjYgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9ODgyNDUxMDY2CkFjaCB3YXMsIGVpbmZhY2ggTGludXggaW5zdGFsbGllcmVuIHVuZCBkYW5uIHBlciBORlMgbW91bnRlbi4gS2luZGVybGVpY2h0LApvaG5lIE5ULVNjcmlwdGUuLi4gKmZlaXgqCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMTguIERleiAxOTk3LCAxNDo0MzowOCk6CiJEYXMgd2ljaHRpZ2UgaXN0IG5pY2h0LCB3aWUgbWFuIGVzIGhhdCwgc29uZGVybiB3aWUgbWFuIGVzIG5pbW10LiIKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbiBkZXIgQUItR2lsZGUgKEhhbmdvdmVyLCAxOS4gRGV6IDE5OTcsIDE5OjEyOjE1KToKQXJtYWdlZGRvbiB3aXJkIHZvbiBHaWZ0IGhpbndlZ2dlcmFmZnQgdW5kIGtpcHB0IHVtLgpEZXIgZ3Jvc3NlIFJhdW0gbWl0IHNlaW5lciBuaWVkcmlnZW4gRGVja2UgdW5kIGRlbiBncm9iIGdlc2Nobml0dGVuZW4KUXVlcmJhbGtlbiBoYXQgUGxhdHogZnVlciBzZWhyIHZpZWxlIFBlcnNvbmVuLiBLbmFycmVuZGUgRGllbGVuIGVyemFlaGxlbgp1ZWJlciBIZWxkZW50YXRlbiBsYWVuZ3N0IHZlcmdlc3NlbmVyIEFiZW50ZXVyZXIsIGJlcnVlaG10ZXIgYWxzIG1hbmNoZXIKV2Vpc2UgdW5zZXJlciBaZWl0LgpBYmVudGV1cmVyLCBhYmVyIGF1Y2ggYW5kZXJlIEJld29obmVyIGRpZXNlciBXZWx0IGtvbW1lbiBoaWVyaGVyLCB1bQpzaWNoIHp1IGluZm9ybWllcmVuLCBpaHJlIEVyZmFocnVuZ2VuIGF1c3p1dGF1c2NoZW4gb2RlciBzaWNoIGluIGRlbgp2ZXJzY2hpZWRlbnN0ZW4gV2lzc2Vuc2NoYWZ0ZW4genUgdmVyYmVzc2Vybi4KRHVyY2ggZGllIGltbWVyIG9mZmVuZSBUdWVyIHNjaGVpbnQgZGllIGF1ZmdlaGVuZGUgU29ubmUgaGVyZWluIHVuZCBmdWVsbHQKZGVuIFJhdW0gbWl0IGlocmVtIGdvbGRlbmVuIExpY2h0LiBTb25zdCBnaWJ0IGVzIGhpZXIgbnVyIG5vY2ggZGVuIEF1c2dhbmcKaW0gTm9yZGVuLCB3ZWxjaGVyIGF1ZiBkaWUgSGFmZW5zdHJhc3NlIGZ1ZWhydCB1bmQgQmlsZGVyIGFuIGRlbiBXYWVuZGVuLAptaXQgWmVpY2hudW5nZW4gdW5kIEdlbWFlbGRlbiB2b24gTW9yZ2VuR3JhdWVuLiBFaW5zIGRlciBCaWxkZXIgZXJsYWV1dGVydApkaWUgRnVua3Rpb24gZGVyIEdpbGRlIHVuZCBlaW5lIGdyb3NzZSBVaHIgYW4gZGVyIFdhbmQgemVpZ3QsIHdhcyBkaWUKU3R1bmRlIHNjaGxhZWd0LiBBbiBlaW5lciBhbmRlcmVuIFdhbmQgaGFlbmd0IGVpbmUgc3RlaW5lcm5lIFRhZmVsLgpOYWNoIG9iZW4gZnVlaHJ0IGVpbmUgVHJlcHBlIGluIGRhcyBCdWVybyBkZXMgRm9lcmRlcnZlcmVpbnMgUHJvamVrdApNb3JnZW5HcmF1ZW4gZS5WLiwgZGFzIER1IHVuYmVkaW5ndCBiZXN1Y2hlbiBzb2xsdGVzdC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9iZW4gdW5kIG5vcmRlbi4KRGllIExlaWNoZSBBcm1hZ2VkZG9ucy4gKDMpCkRpZSBiZXJlaXRzIHppZW1saWNoIHN0aW5rZW5kZSBMZWljaGUgQXJtYWdlZGRvbnMuICgzKQpHYXN0MiBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyLgpEaWUgc2NoaW1tZWxuZGUgdW5kIGhhbGJ2ZXJ3ZXN0ZSBMZWljaGUgQXJtYWdlZGRvbnMuICgyKQpEaWUgdmVyZmF1bHRlbiBFaW56ZWx0ZWlsZSBBcm1hZ2VkZG9ucy4gKDMpCkdhc3QxIGRpZSBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXJpbi4KTyBNYXJzIEhhcmlmIC0gZGVyIGVpbnppZ2UgQWJlbnRldXJlci1FcnN0aWUgaW4gZGVuIFRvcCAxMDAuCkVpbiBIYW5kYnVjaCBmdWVyIEFuZmFlbmdlci4KQXJtYWdlZGRvbiwgZGVyIFdlbHRlbnZlcm5pY2h0ZXIuCkVpbmUgWmVpdHVuZy4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAyOSBNYWdpZXB1bmt0ZS4KVG93ZXIgZXJyaWNodGV0IHNpY2guCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMzAgTWFnaWVwdW5rdGUuCkFybWFnZWRkb24gd2lyZCB2b24gR2lmdCBoaW53ZWdnZXJhZmZ0IHVuZCBraXBwdCB1bS4KICBNYXJzIGdyZWlmdCBBcm1hZ2VkZG9uIG1pdCBlaW5lbSBWZXJuaWNodGVyIGFuLgpBcm1hZ2VkZG9uIHNjaGltcGZ0OiBMYXNzIGRhcyEhIQpBcm1hZ2VkZG9uIGdpYnQgTWFycyBlaW5lIHNjaGFsbGVuZGUgT2hyZmVpZ2UuCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMzEgTWFnaWVwdW5rdGUuCkFybWFnZWRkb24gd2lyZCB2b24gR2lmdCBoaW53ZWdnZXJhZmZ0IHVuZCBraXBwdCB1bS4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAzMiBNYWdpZXB1bmt0ZS4KQXJtYWdlZGRvbiB3aXJkIHZvbiBHaWZ0IGhpbndlZ2dlcmFmZnQgdW5kIGtpcHB0IHVtLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDMzIE1hZ2llcHVua3RlLgpBcm1hZ2VkZG9uIHdpcmQgdm9uIEdpZnQgaGlud2VnZ2VyYWZmdCB1bmQga2lwcHQgdW0uCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMzQgTWFnaWVwdW5rdGUuClRvd2VyIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMzUgTWFnaWVwdW5rdGUuClRvd2VyIHdpbmt0LgpUb3dlciBmYWVsbHQgZGVyIExhZW5nZSBuYWNoIG5hY2ggTm9yZGVuLgpBcm1hZ2VkZG9uIHdpcmQgdm9uIEdpZnQgaGlud2VnZ2VyYWZmdCB1bmQga2lwcHQgdW0uCltNb2VyZGVyOkdlaXN0IGVpbmVzIFNjaG1ldHRlcmxpbmdzXSBOYSBwcmltYSwgc2Nob24gd2llZGVyIGRpZXNlciBkdW5rbGUgVHlwIQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBTY2htZXR0ZXJsaW5nc10gVW5kIGFsbGVzIG51ciB3ZWdlbiBTdWNjYW1vcmUuCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMzYgTWFnaWVwdW5rdGUuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBHYXN0Mi4KQXJtYWdlZGRvbiB3aXJkIHZvbiBHaWZ0IGhpbndlZ2dlcmFmZnQgdW5kIGtpcHB0IHVtLgpEZWltb3Mga29tbXQgYW4uCkFybWFnZWRkb24gZ2x1ZWh0IHdpZSBpbSBGaWViZXIsIGthbm4gc2ljaCBrYXVtIG5vY2ggcnVlaHJlbiB1bmQgaGF0IGVpbgpzY2htZXJ6dmVyemVycnRlcyBHZXNpY2h0LgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDM3IE1hZ2llcHVua3RlLgpbQWxsZ2VtZWluOlphcGhvYl0gamVtYW5kIEFuZHkgZ2VzZWhlbj8KQXJtYWdlZGRvbiB3aXJkIHZvbiBHaWZ0IGhpbndlZ2dlcmFmZnQgdW5kIGtpcHB0IHVtLgpHYXN0MiB2ZXJsYWVzc3QgZGllc2UgV2VsdC4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAzOCBNYWdpZXB1bmt0ZS4KQXJtYWdlZGRvbiB3aXJkIHZvbiBHaWZ0IGhpbndlZ2dlcmFmZnQgdW5kIGtpcHB0IHVtLgpBcm1hZ2VkZG9uIGdsdWVodCB3aWUgaW0gRmllYmVyLCBrYW5uIHNpY2gga2F1bSBub2NoIHJ1ZWhyZW4gdW5kIGhhdCBlaW4Kc2NobWVyenZlcnplcnJ0ZXMgR2VzaWNodC4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAzOSBNYWdpZXB1bmt0ZS4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIERlaW1vcy4KRWluZSBLYXJ0ZSBsb2VzdCBzaWNoIGF1Zi4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCA0MCBNYWdpZXB1bmt0ZS4KTWFycyBzYWd0OiBpY2gga2FubiBqYSBlbnRnaWZ0ZW4sIGZhc3QgdmVyZ2Vzc2VuIDopCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgNDEgTWFnaWVwdW5rdGUuCkRlaW1vcyBnZWh0IGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgpEdSBzYWdzdDogamEuLi5pY2ggZ2xhdWIgZGFzIHJlaWNodCBhdWNoIGxhbmdzYW0gbWl0IGRlbiBsZWljaGVuIDspCkRlciBncm9zc2UgUmF1bSBtaXQgc2VpbmVyIG5pZWRyaWdlbiBEZWNrZSB1bmQgZGVuIGdyb2IgZ2VzY2huaXR0ZW5lbgpRdWVyYmFsa2VuIGhhdCBQbGF0eiBmdWVyIHNlaHIgdmllbGUgUGVyc29uZW4uIEtuYXJyZW5kZSBEaWVsZW4gZXJ6YWVobGVuCnVlYmVyIEhlbGRlbnRhdGVuIGxhZW5nc3QgdmVyZ2Vzc2VuZXIgQWJlbnRldXJlciwgYmVydWVobXRlciBhbHMgbWFuY2hlcgpXZWlzZSB1bnNlcmVyIFplaXQuCkFiZW50ZXVyZXIsIGFiZXIgYXVjaCBhbmRlcmUgQmV3b2huZXIgZGllc2VyIFdlbHQga29tbWVuIGhpZXJoZXIsIHVtCnNpY2ggenUgaW5mb3JtaWVyZW4sIGlocmUgRXJmYWhydW5nZW4gYXVzenV0YXVzY2hlbiBvZGVyIHNpY2ggaW4gZGVuCnZlcnNjaGllZGVuc3RlbiBXaXNzZW5zY2hhZnRlbiB6dSB2ZXJiZXNzZXJuLgpEdXJjaCBkaWUgaW1tZXIgb2ZmZW5lIFR1ZXIgc2NoZWludCBkaWUgYXVmZ2VoZW5kZSBTb25uZSBoZXJlaW4gdW5kIGZ1ZWxsdApkZW4gUmF1bSBtaXQgaWhyZW0gZ29sZGVuZW4gTGljaHQuIFNvbnN0IGdpYnQgZXMgaGllciBudXIgbm9jaCBkZW4gQXVzZ2FuZwppbSBOb3JkZW4sIHdlbGNoZXIgYXVmIGRpZSBIYWZlbnN0cmFzc2UgZnVlaHJ0IHVuZCBCaWxkZXIgYW4gZGVuIFdhZW5kZW4sCm1pdCBaZWljaG51bmdlbiB1bmQgR2VtYWVsZGVuIHZvbiBNb3JnZW5HcmF1ZW4uIEVpbnMgZGVyIEJpbGRlciBlcmxhZXV0ZXJ0CmRpZSBGdW5rdGlvbiBkZXIgR2lsZGUgdW5kIGVpbmUgZ3Jvc3NlIFVociBhbiBkZXIgV2FuZCB6ZWlndCwgd2FzIGRpZQpTdHVuZGUgc2NobGFlZ3QuIEFuIGVpbmVyIGFuZGVyZW4gV2FuZCBoYWVuZ3QgZWluZSBzdGVpbmVybmUgVGFmZWwuCk5hY2ggb2JlbiBmdWVocnQgZWluZSBUcmVwcGUgaW4gZGFzIEJ1ZXJvIGRlcyBGb2VyZGVydmVyZWlucyBQcm9qZWt0Ck1vcmdlbkdyYXVlbiBlLlYuLCBkYXMgRHUgdW5iZWRpbmd0IGJlc3VjaGVuIHNvbGx0ZXN0LgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb2JlbiB1bmQgbm9yZGVuLgpEaWUgYmVyZWl0cyB6aWVtbGljaCBzdGlua2VuZGUgTGVpY2hlIEFybWFnZWRkb25zLiAoMykKRGllIHNjaGltbWVsbmRlIHVuZCBoYWxidmVyd2VzdGUgTGVpY2hlIEFybWFnZWRkb25zLiAoMikKRGllIHZlcmZhdWx0ZW4gRWluemVsdGVpbGUgQXJtYWdlZGRvbnMuICgzKQpHYXN0MSBkaWUgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyaW4uCk8gTWFycyBIYXJpZiAtIGRlciBlaW56aWdlIEFiZW50ZXVyZXItRXJzdGllIGluIGRlbiBUb3AgMTAwLgpFaW4gSGFuZGJ1Y2ggZnVlciBBbmZhZW5nZXIuCkFybWFnZWRkb24sIGRlciBXZWx0ZW52ZXJuaWNodGVyLgpFaW5lIFplaXR1bmcuCltBbGxnZW1laW46WmFwaG9iXSBoYWxsbz8KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCA0MiBNYWdpZXB1bmt0ZS4KQWJlciBBcm1hZ2VkZG9uIGlzdCBuaWNodCB2ZXJnaWZ0ZXQhCltBbGxnZW1laW46WmFwaG9iXSBOSUVNQU5EIEFuZHkgZ2VzZWhlbj8/Pz8KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCA0MyBNYWdpZXB1bmt0ZS4KRHUgc2Fnc3Q6IGVyIGlzdCBuaWNodCB2ZXJnaWZ0ZXQ/CkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgNDQgTWFnaWVwdW5rdGUuClNlbGlzc2EgbWFyc2NoaWVydCBoZXJlaW4uCkdhc3QxIGZyYWd0OiBXYXMgZnVlciBlaW4gR2lmdCB3YXIgZGFzIGRlbm4gPwpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDQ1IE1hZ2llcHVua3RlLgpEdSBzYWdzdDogaG0uLi5kYW5uIGlzc2VzIHdvaGwgYWJnZWtsdW5nZW4uLi4KU2VsaXNzYSByaWNodGV0IGlociBLZXJiaG9seiBhdWYgQXJtYWdlZGRvbi4KKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIFd1cnplbCBpbiBSdWJyaWsgImVudHdpY2tsdW5nIi4KTWFycyBzYWd0OiBoYWIgaWhuIGVudGdpZnRldApEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDQ2IE1hZ2llcHVua3RlLgpLaXUgPyB3bz8uCgoKTm9jaCBXb3J0ZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBIbW1tLi4ubGVja2VyISAoQW5hdG9sLCAxOS4gRGV6IDE5OTcsIDE5OjIyOjM4KToKfiMhIG9uPUFuYXRvbCBvdD04ODI1NTU3NTAgb2c9ZGlza3Vzc2lvbgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg4MjU1NTE3NiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9ODgyMDIzNTc4CkRhcyB1ZWJsaWNoZSAtIG1hbiB2ZXJzcGVpc3QgZGFzIEZsZWlzY2ggZXJzdCwgd2VubiBzaWNoIGRpZSBaYWVobmUKbmljaHQgbWVociBiZXdlZ2VuLiBGdWVyIEtyb2tvZGlsZmxlaXNjaCBzb2xsIGRhcyBiZXNvbmRlcnMgcmF0c2FtIHNlaW4uCgpCYW5hdXNlLApBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcuLi4gKEFuYXRvbCwgMTkuIERleiAxOTk3LCAyMDozMzoyMSk6CltBYmVudGV1ZXI6WXVuZ2FdIHdlaXNzIGplbWFuZCwgd2llIG1hbiBiZWkgaW5mZXJubyBhdXMgZGVyIHBmbGFuemUgcmF1c2tvbW10PwpbQWJlbnRldWVyOll1bmdhXSBpcmdlbmR3YXMgbWl0IHNjaG5laWRlCltUb2Q6TGFyc10gRWluIFZlbnVzYWJlbnRldXJlcmZhbGxlIGhhdCBnZXJhZGUgWXVuZ2EgdW1nZWJyYWNodC4KCkF1dHNjaC4KQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIElJIChBbmF0b2wsIDE5LiBEZXogMTk5NywgMjA6NDM6MTQpOgpbQWJlbnRldWVyOll1bmdhXSBpY2ggd2lsbCBhYmVyIG1laW5lIEF1c3J1ZXN0dW5nIHdpZWRlci4uIGtlbm50IGFsc28gamVtYW5kCltBYmVudGV1ZXI6WXVuZ2FdIGRlbiBBdXN3ZWcgYXVzIGRlbSBEaW5nPwpbQWJlbnRldWVyOkRob2pha3RdIGRlciB0b2QgaXN0IGRvY2ggbmV1ZXJkaW5ncyBoZWlsYmFyLi4uCltBYmVudGV1ZXI6VmlkcmFqXSBJcmdlbmR3YXMgbWl0IHNjaG5laWRlIGxvY2ggaW4gd2FuZC9tYWdld2FuZCBvZGVyPwpbQWJlbnRldWVyOll1bmdhXSBobSwgbWFsIHRlc3RlbgpbVG9kOkxhcnNdIERhcyBPZ2hhbSBkZXIgVmVybmljaHR1bmcgaGF0IGdlcmFkZSBZdW5nYSB1bWdlYnJhY2h0LgoKRWlnZW50bGljaCB3YWVyZSAiQWx6aGVpbWVyIiBhbHMgTW9lcmRlciBoaWVyIGFuZ2VicmFjaHRlciBnZXdlc2VuIDooKAoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaWNoIGJpbiA3Y20gZ3Jvc3M/IChUYXJzLCAyMS4gRGV6IDE5OTcsIDAxOjM1OjAxKToKQmVpIGRlciBBcmNoaS1RdWVzdDoKW3VudCBzY2hsYW5nZV0KCkRpZSBTZWVzY2hsYW5nZSBpc3QgbWluZGVzdGVucyBkcmVpbWFsIHNvIGxhbmcgd2llIER1LgpTaWUgaXN0IGFic29sdXQgZml0LiAoMTAwJSkKCltzY2hhZXR6IHNjaGxhbmdlXQoKRWluZSBTZWVzY2hsYW5nZSBpc3QgYWJzb2x1dCBmaXQgdW5kIGlzdCBkYW1pdCBmYXN0IHNvIHN0YXJrIHdpZSBEdS4gU2llCmthZW1wZnQgbWl0IGlocmVtIEtvZXJwZXIuIFNpZSBtYWNodCBkYW1pdCBmb2xnZW5kZW4gU2NoYWRlbjogU2NobGFlZ2UuIERhbWl0CmthZW1wZnQgc2llIGRldXRsaWNoIGJlc3NlciBhbHMgRHUuIEVpbmUgU2Vlc2NobGFuZ2UgdHJhZWd0IGtlaW5lIHp1c2FldHpsaWNoZQpSdWVzdHVuZy4gRGFtaXQgaXN0IHNpZSBldHdhcyBiZXNzZXIgYWxzIER1IGdlc2NodWV0enQuCkVpbmUgU2Vlc2NobGFuZ2UgaXN0IGV0d2EgMjFjbSBncm9zcy4KRWluZSBTZWVzY2hsYW5nZSBpc3QgYWJzb2x1dCBmaXQgdW5kIGlzdCBkYW1pdCBmYXN0IHNvIHN0YXJrIHdpZSBEdS4gU2llCmthZW1wZnQgbWl0IGlocmVtIEtvZXJwZXIuIFNpZSBtYWNodCBkYW1pdCBmb2xnZW5kZW4gU2NoYWRlbjogU2NobGFlZ2UuIERhbWl0CmthZW1wZnQgc2llIGRldXRsaWNoIGJlc3NlciBhbHMgRHUuIEVpbmUgU2Vlc2NobGFuZ2UgdHJhZWd0IGtlaW5lIHp1c2FldHpsaWNoZQpSdWVzdHVuZy4gRGFtaXQgaXN0IHNpZSBldHdhcyBiZXNzZXIgYWxzIER1IGdlc2NodWV0enQuCkVpbmUgU2Vlc2NobGFuZ2UgaXN0IGV0d2EgMjFjbSBncm9zcy4KCgpncmluc2VuZCwgVGFycy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlbWVpbmhlaXQgKEdyaW1tYm9ybiwgMjEuIERleiAxOTk3LCAxMzozMzo0Mik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODgyNzA3NjE4IG9nPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KU28gZWluIGJsb2VkZXMgTWlzdHdldHRlciBtaXQgbmFzcyB1bmQgU2NobmVlcmVnZW4gYW0gdmllcnRlbiBBZHZlbnQgZ2Vob2VydAp2ZXJib3Rlbiwgd2FzIGljaCBoaWVybWl0IHZlaGVtZW50ZXN0IGZvcmRlcmUuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFpUcywgbmljaHQgaW1tZXIgZWluZSBhbmdlbmVobWUgVWViZXJyYXNjaHVuZyAoR3JpbW1ib3JuLCAyMS4gRGV6IDE5OTcsIDIzOjE1OjM3KToKfiMhIG9uPUdyaW1tYm9ybiBvdD04ODI3NDI1MzEgb2c9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgcm49S2Fyb2wgcnQ9ODgyNzEyNjA0IHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD04ODI1Nzk1MjcKRHUgd3VlcmRlc3QgYWxzbyBsaWViZXIgZXR3YXMgd2VpY2hlcywgc2NobGVpbWlnZXMgYXVzIGRlbSBLb25kb20genUgbmVobWVuPwpOYWphLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNrYW5kYWwhIChXYXJnb24sIDIyLiBEZXogMTk5NywgMTE6MzI6NDkpOgpXaWUgaWNoIGhldXRlIHp1ciBVbmkgZnVociwgdW0gdm9yIFdlaWhuYWNodGVuIG5vY2ggZWluIHdlbmlnIHp1IG11ZGRlbiwgYm90CnNpY2ggbWlyIGJlaW0gR2lldmVuYmVja2VyIEVpbmthdWZzemVudHJ1bSBlaW4gQmlsZCBkZXMgU2NocmVja2VuczogemlnCld1ZXJnZXJ0YW5uZW4sIGVudHd1cnplbHQgdW5kIHZlcnN0dWVtbWVsdCwgZHJhZW5ndGVuIHNpY2ggaGlsZmxvcyBpbiBlaW5lbQp2aWVsIHp1IGtsZWluZW4gS2FlZmlnISBFaW4gTWFubiAoZXMgd2FyIGVpbiBNZW5zY2gsIG51ciBNZW5zY2hlbiBrb2VubmVuIHp1CnNvIGV0d2FzIGZhZWhpZyBzZWluISkgc3RhbmQgbmViZW4gZGVtIEthZWZpZyB1bmQgLSBpaHIgd2VyZGV0IGVzIG5pY2h0CmdsYXViZW4gLSBib3QgZGllIFRhbm5lbiB6dW0gVmVya2F1ZiBhbiEKSWNoIGthbSBnZXJhZGUgZG9ydCB2b3JiZWksIGFscyBlaW4gS3VuZGUgZWluZSBUYW5uZSBlcndlcmJlbiB3b2xsdGUuIE1pdAplaW5lbSBoaW50ZXJoYWVsdGlnZW4gR3JpZmYgcGFja3RlIGRlciBWZXJrYWV1ZmVyIGRpZSBXdWVyZ2VydGFubmUsIGRpZSBzaWNoCnZlcnp3ZWlmZWx0IHdlaHJ0ZSwgdW5kIHp3YWVuZ3RlIHNpZSBpbiBlaW5lIFp3YW5nc2phY2tlLiBFcyB3YXIgd2lya2xpY2ggZWluCmVyYmFlcm1saWNoZXMgQmlsZCEKRG9jaCBlcnN0IGFscyBpY2ggd2VpdGVyIGZ1aHIsIG9lZmZuZXRlIHNpY2ggbWVpbmVtIEJsaWNrIGRlciB3YWhyZSBTa2FuZGFsOgpFaW5lIFd1ZXJnZXJ0YW5uZSwgbWl0IExpY2h0ZXJrZXR0ZW4oISkgZ2VzY2htdWVja3QsIHN0YW5kIGVpbnNhbSB1bmQKdmVybGFzc2VuIGF1ZiBlaW5lbSBIYWV1c2VyZGFjaCB1bmQgc2NocmllIGlocmVuIEZydXN0IGluIGRpZSBXZWx0Li4uCkRhIG11c3MgbWFuIGRvY2ggd2FzIGdlZ2VuIHR1biEKICBJbiBkaWVzZW0gU2lubmUuLi4KICAgIEZyb2hlcyBGZXN0IQogICAgV2FyZ29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpubyByaXNjIG5vIGZ1biAoR3JlbmR1bGEsIDIzLiBEZXogMTk5NywgMTU6MjY6MTQpOgpEdSBoYXN0IGpldHp0IDE4MiBMZWJlbnNwdW5rdGUgdW5kIDE2MiBNYWdpZXB1bmt0ZS4KPiBFaW4gV2VnaGllciBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkxpY2h0dW5nIGltIEdyaW1tc3dhbGQuCkVzIGdpYnQgdmllciBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KPiA5OQpXYWxkd2VnIGltIEdyaW1tc3dhbGQuCkVzIGdpYnQgdmllbGUgc2ljaHRiYXJlIEF1c2dhZW5nZTogcmF1cywgaGlsZmUsIHdlc3Rlbiwgbm90YXVzZ2FuZywKbmljaHRzd2lld2VnLCBhcmdoLCBpY2h3aWxsaGllcndlZywgZWdhbHdvaGluLCBtYWFhbWlpaWlpaSwgd2VpdHdlZyB1bmQKaWNod2lsbGhpZXJyYXVzLgpEZXIgV2VnaGllci4KPiBEdSBiaXN0IG5vY2ggenUgZXJzY2hvZXBmdCB2b24gRGVpbmVtIGxldHp0ZW4gU3BydWNoLgo+IEVpbiBXZWdoaWVyIHNjaGxhZWd0IERpY2ggcGxvZXR6bGljaCB1bmQgdm9lbGxpZyB1bmVyd2FydGV0IG1pdCBlaW5lbQpWb2xsc3RyZWNrZXIuCiAgRGVyIFdlZ2hpZXIgc2NobGFlZ3QgRGljaCB6dSBCcmVpLgpEdSBoYXN0IGpldHp0IDEyNCBMZWJlbnNwdW5rdGUgdW5kIDE2MiBNYWdpZXB1bmt0ZS4KTWF0cml4OiBFaW4gV2VnaGllciBpc3QgYWJzb2x1dCBmaXQuCiAgRGVyIFdlZ2hpZXIgc2NobGFlZ3QgRGljaCB6dSBCcmVpLgpEdSBoYXN0IGpldHp0IDY4IExlYmVuc3B1bmt0ZSB1bmQgMTYyIE1hZ2llcHVua3RlLgpEZXIgVm9sbHN0cmVja2VyIHdpbGwgRGlyIGRlbiBUb2Rlc3N0b3NzIHZlcnNldHplbiEKICBEZXIgV2VnaGllciB6ZXJzdGFldWJ0IERpY2guCkR1IGthbm5zdCBlaW5lIGNoYW90aXNjaCBtdXRpZXJ0ZSBIYXV0IG5pY2h0IGF1c3ppZWhlbi4KW1RvZDpMYXJzXSBFaW4gV2VnaGllciBoYXQgZ2VyYWRlIFpvcnJvIHVtZ2VicmFjaHQuCltUb2Q6RWluIFdlZ2hpZXJdIEdvdGNoYSEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbm8gcmlzYyBubyBmdW4gKEtleSwgMjMuIERleiAxOTk3LCAxODowMDoxOSk6Cn4jISBybj1HcmVuZHVsYSBydD04ODI4ODcxNzQgcmc9c2NobWFycm4KfiMhIHRpZD04ODI4ODcxNzQKKmtpY2hlcioKSGV5IGljaCBmaW5kZSBkZW4gV2VnaGllciBwdXR6aWcgOikKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWml0dGVybiwgZGllIC4uLiAoQXNtb2RpcywgMjMuIERleiAxOTk3LCAyMDo1NzowMCk6CkR1IGtudWRkZWxzdCBkZWluZSBGcmV1bmRlIG1pdCBlaW5lbSBXZWlobmFjaHRzYmF1bS4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KTW9yZWxsYSBydWZ0OiBhc21vZGlzLCBkdSBzcGlubnN0IHdvaGwhCltBbGxnZW1laW46QXNtb2Rpc10gaHVjaCwgd2FyIGljaCBkYXMgPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHJhZXVtZSBaZXJwbGF0emVuIGltIE11ZCAuLi4uIChSYWZmaSwgMjMuIERleiAxOTk3LCAyMTozMDoyOCk6CltBYmVudGV1ZXI6Qm9tYmFyYWRdIERhbmtlIEp1bmdzIHVuZCBNYWVkZWxzLiBJY2ggc3VjaCBtYWwgd2VpdGVyLiAKW0FiZW50ZXVlcjpNdXJtZWxdIG1hZWRlbHM/IGFjaHNvIGR1IG1laW5zdCBzdGluZyA6KSAKW0FiZW50ZXVlcjpCZWxnYXJpYWRdIG1hZWRlbHM/ICpncnVlYmVsKiAKW0FiZW50ZXVlcjpTdGluZyBncnVtbWVsdCBNdXJtZWwgYW5dCltBYmVudGV1ZXI6Qm9tYmFyYWRdIFdpZXNvPyBHaWJ0cyBoaWVyIGtlaW5lIE1hZWRlbHM/ICBhYWFhYWFhYWFhYWFhCltBYmVudGV1ZXI6Qm9tYmFyYWRdIApbQWJlbnRldWVyOkFzbW9kaXNdIG1hY2ggbWFsIGt3ZXIgd2VpYmxpY2gsIGRhcyBzaW5kIGluIHdpcmtsaWNoa2VpdCBhbGVscwpbQWJlbnRldWVyOkFzbW9kaXNdIGp1bmdzIDopIApbQWJlbnRldWVyOkFzbW9kaXNdIGFlaCwgYWxsZXMgCltBYmVudGV1ZXI6U3RpbmddIGhtbSwgc3RpbW10LCBzbyBndXQgd2llIGFsbGUgOikgCltBYmVudGV1ZXI6TmVyZGFuZWxdIHNvIDstKSA/IFdPaGVyIHdlaXNzdCBEdSBkYXM/IApbQWJlbnRldWVyOlRhcmluYV0gaWhyIG11ZXNzdCBlcyBqYSB3aXNzZW4uIApbQWJlbnRldWVyOlN0aW5nIGdyaW5zdCBBc21vIGFuXQpbQWJlbnRldWVyOlJhZmZpXSBzaWx2YW5hIGlzdCBrZWluIE1hZWRjaGVuID8gCltBYmVudGV1ZXI6UmFmZmldIEdsYXViIGljaCBEaXIgbmljaHQgCltBYmVudGV1ZXI6QXNtb2Rpc10gbmUsIGRhenUgaXN0IGRlciBiYXJ0IHp1IGxhbmcgOikgCltBYmVudGV1ZXI6VG93ZXJdIGVoZXIgZWluIFZvbGx3ZWliIHVtIGVzIG1hbCBtaXQgWWFudHJvIHp1IHNhZ2VuIApbQWJlbnRldWVyOk11cm1lbF0gaGFzdCBkdSBkaWNoIGluIHNpZSB2ZXJsaWVidD8gKmxhY2gqIApbQWJlbnRldWVyOlNpbHZhbmEgZ3JpbnN0IFRvd2VyIHp1Ll0KW0FiZW50ZXVlcjpTdGluZ10gc2lsdmFuYSBpc3QgZG9jaCBrZWluIG1hZWRjaGVuIDopIApbQWJlbnRldWVyOlN0aW5nXSBzaWx2YW5hIGlzdCBuZSBmcmF1IDopIApbQWJlbnRldWVyOkJvbWJhcmFkXSBJY2ggd29sbHRlIGtlaW5lIEdydW5kc2F0emRpc2t1c3Npb24gYXVzbG9lc2VuLCBvZGVyIGlzdApbQWJlbnRldWVyOkJvbWJhcmFkXSBkYXMgZWluZSBuZXVlUXVlc3Q/IApbQWJlbnRldWVyOlJhZmZpcyBUcmFldW1lIFplcnBsYXR6ZW4uXQpbQWJlbnRldWVyOlNpbHZhbmFdIERhbmtlLCBTdGluZy4gOikpKSAKW0FiZW50ZXVlcjpTdGluZyBncmluc3RdCltBYmVudGV1ZXI6U3RpbmddIG1hY2ggZGlyIGtlaW5lIHNvcmdlbiwgYm9tYmFyYWQsIHdpciAgaGFiZW4gc2Nob24gdWViZXIKW0FiZW50ZXVlcjpTdGluZ10gaWRpb3Rpc2NoZXJlIHNhY2hlbiwgbGFlbmdlciBkaXNrdXR0aWVydCA6KSAKW0FiZW50ZXVlcjpSYWZmaV0gdW5kIGljaCBkYWNodGUgaW1tZXIgc293YXMgZmlsaWdyYW5lcyB1bmQgYmVzY2hhdWxpY2gKW0FiZW50ZXVlcjpSYWZmaV0gbGllYmVuc3dlcnRlcyB3aWUgU2NoYXR0ZW53ZWx0LCBnZWJpcmdlLCBvZGVyIFdhbHQga2FlaG1lCltBYmVudGV1ZXI6UmFmZmldIG51ciBkdXJjaCBTaWx2YW5hcyB6YXJ0ZSBIYWVuZGUgCltBYmVudGV1ZXI6QXNtb2Rpc10gV2FsdCA/IFdhbHQgRGlzbmV5ID8gCltBYmVudGV1ZXI6UmFmZmldIHNjaG1hcnJuIFdhbGQgbmF0dWVybGljaCAKCi4uLi4gQmVpIGZvbGdlbmRlbSBUZWlsZSBNaXQgaW50ZXJtZXp6byBzcGFhcmUgaWNoIG1hbCBkZWkgTmFtZW4gYXVzIDopCgpYeHh4eHggdGVpbHQgRGlyIG1pdDogd2lsbHMgZHUgbmFja3Rmb3RvcyB2b25paHIgaGFiZW4/IDopClh4eHh4eCB0ZWlsdCBEaXIgbWl0OiBZeXl5eXkgaXN0IHNlaHIgZW1wZmluZGxpY2ggOikKWHh4eHh4IHRlaWx0IERpciBtaXQ6IHNpZSBoYXQgZWluZW4gZmVlbmJhcnQgOikgd2VubiBkdSB2ZXJzdGVoc3Qgd2FzIApYeHh4eHggdGVpbHQgRGlyIG1pdDogaWNoIG1laW5lIDopClh4eHh4eCB0ZWlsdCBEaXIgbWl0OiBpY2ggYWVyZ2VyZSBzaWUgaW1tZXIgdW5kIGRhbm4gd2FyIGljaCBpbSBnZWZhZW5nbmlzIDopClh4eHh4eCB0ZWlsdCBEaXIgbWl0OiBhbHNvIHBhc3MgYXVmIHNpZSBrYW5uIG1hbmNobWFsIGF1c3RlaWxlbiBhYmVyIG5pY2h0cwpYeHh4eHggdGVpbHQgRGlyIG1pdDogZWluc3RlY2tlbiA6KQpEdSB0ZWlsc3QgWHh4eHh4IG1pdDogZ2xlaWNoIHNldHogaWNocyBuYWNoIHNjaG1hcnJuIDopClh4eHh4eCB0ZWlsdCBEaXIgbWl0OiAqbGFjaCoKCkdyaW5zCkguCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIChDaGVhc3ksIDI4LiBEZXogMTk5NywgMTk6NTY6MzkpOgp3YXMuIERlbnRpIHdvbGx0ZSdzIHNvLgotQ2hlYXN5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpZZXRpcy4uLiB3ZWlhLiAoQ2hlYXN5LCAyOC4gRGV6IDE5OTcsIDIxOjEwOjAyKToKRGFzIGtvbW10IGRhdm9uLCB3ZW5uIG1hbiBzY2hvbiAxMDAwMC1tYWwgZHJhbiB2b3JiZWkgZ2VyYW5udCBpc3QuLi4uCltaVDpDaGVhc3ldIHdvIGZpbmQnIGljaCBudSBkaWUgeWV0aW1hbWk/CltaVDpaaWxsdXNdIHN0YXR1ZSBhdWYgZGVtIHdlZyB6dXIgZWlzd3Vlc3RlLiBfdm9yXyBkZXIgRWlzd3Vlc3RlIDspIGFsc28ga2VpbgpbWlQ6WmlsbHVzXSBVbnRpZXIgdW5kIHNvLi4uCkRlciBZZXRpIGxhY2h0IHVlYmVyIERpY2guCgotQ2hlYXN5Ci4uLnN0ZWh0IG1pdHRlbiBpbiBkZW4gTmViZWxiZXJnZW4uIFdhcyBkaWUgc28gYWxsZXMgdmVybmViZWxuLCBkaWUgQmVyZ2U/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZXJ1ZWNodGUgKEFzbW9kaXMsIDMwLiBEZXogMTk5NywgMDM6MjY6MzUpOgpEZWluIEZyZXVuZCBSaW5nb3IgdGVpbHQgRGlyIG1pdDogaWNoIGZhbGwgaW5zIGJldHQgLi4gYmlzIGRpZSB0YWdlIGJ6dyBndXRlbgpEZWluIEZyZXVuZCBSaW5nb3IgdGVpbHQgRGlyIG1pdDogcnV0c2NoIQpadWVyaWxldSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlbGRnZWlsZXMgTWlzdGRpbmchIChpc3QgZG9jaCB3YWhyKSAoWmFwaG9iLCAgMi4gSmFuIDE5OTgsIDE1OjQ2OjM0KToKa2F1ZmUga2FydGUKRHUgYmV6YWhsc3QgZnVlciBlaW5lIEZhaHJ0LgpEaWUgS3V0c2NoZSBkb25uZXJ0IHBsb2V0emxpY2ggZGF2b24uCgpaYXBob2IgaW1tZXJub2NoIHVtIHNlaW4gR2VsZCB0cmF1ZXJuZCAod2FyZW4gaW1tZXJoaW4gNSUgbWVpbmVzCkdlc2FtdGdlbGRlcy4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHZWxkZ2VpbGVzIE1pc3RkaW5nISAoaXN0IGRvY2ggd2FocikgKEFzbW9kaXMsICAzLiBKYW4gMTk5OCwgMTk6NTM6NDYpOgp+IyEgcm49WmFwaG9iIHJ0PTg4Mzc1MjM5NCByZz1zY2htYXJybgp+IyEgdGlkPTg4Mzc1MjM5NApEZW4gc2llaHN0IGR1IG5pZSB3aWVkZXIsIGRpZSBpc3QgZHVyY2hnZXJhc3QgYmlzIG5hY2ggVGFtaWJhciBtaXQgZGVpbmVtIEdlbGQKLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZW5uIEFuYXRvbCAnc3ByaW5nJyBzYWd0IC4uLiAoUmluZ29yLCAgNC4gSmFuIDE5OTgsIDIzOjIxOjA5KToKQW5hdG9sIHJ1ZnQ6IENhdCwgaG9lciBkb2NoIGJpdHRlIG1hbCBhdWYgenUgaWRsZW4hIDopCkNhdHdlYXpsZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKClJpbmdvciwgc3RhdW50IHVlYmVyIEFuYXRvbHMgRWluZmx1c3MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VubiBBbmF0b2wgJ3NwcmluZycgc2FndCAuLi4gKEhhbmdvdmVyLCAgNC4gSmFuIDE5OTgsIDIzOjIxOjQzKToKfiMhIHJuPVJpbmdvciBydD04ODM5NTI0Njkgcmc9c2NobWFycm4KfiMhIHRpZD04ODM5NTI0NjkKTmEsIGRhIGhhdCBDYXQqIGRvY2ggYmVzdGltbXQgZHJhdWYgZ2V0cmlnZ2VydC4uLiA7KQoKLUhhbmdvdmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VubiBBbmF0b2wgJ3NwcmluZycgc2FndCAuLi4gKEFuYXRvbCwgIDQuIEphbiAxOTk4LCAyMzoyMzo0OCk6Cn4jISBybj1SaW5nb3IgcnQ9ODgzOTUyNDY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODgzOTUyNDY5CkljaCB3b2xsdGUgbnVyIHdpc3Nlbiwgd2llIGljaCAicnNoIiBkYXp1IGJyaW5nZW4ga2FubiwgZGFzcyBlcyBhdWNoCiJ6dXJ1ZWNra2VocnQiLCBvYndvaGwgYXVmIGRlbSByZW1vdGUtUmVjaG5lciBlaW4gUHJvemVzcyBpbiBkZW4gSGludGVyLQpncnVuZCBnZXNjaGlja3Qgd3VyZGUgLSBkYXMgc2NoZWludCB6dW1pbmRlc3QgZGllIFVyc2FjaGUgenUgc2Vpbiwgd2FydW0KYXVmICJleGl0IDAiIGRlcyBTY3JpcHRzIG5pY2h0cyBwYXNzaWVydC4KCk5laW4sICJub2h1cCIgaXN0IGdhciBrZWluZSBndXRlIExvZXN1bmcuCgpFcyBnZWh0IHVtIHJjNSwgc3RyZW5ndCBldXJlIEhpcm5lIG1hbCBhbiA7KQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZW5uIEFuYXRvbCAnc3ByaW5nJyBzYWd0IC4uLiAoTXlzdGVyaW91cywgIDUuIEphbiAxOTk4LCAxMDowNzoxOCk6Cn4jISBybj1BbmF0b2wgcnQ9ODgzOTUyNjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODgzOTUyNDY5Cm1vaW4uLi4KCm9laCwgaWNoIGdsYXViLCBkYXMgc29sbHQgbWFsIGVpbmVyIHZlcmxlZ2VuIDotKQoKaWNoIGhhdHRlIGVpbiBhZWhubGljaGVzIHByb2JsZW0sIHVuZCBkaWUgbG9lc3VuZyB3YXIgZm9sZ2VuZGU6CgpkdSBtdXNzdCBlaW5mYWNoIG51ciBzdGRvdXQgVU5EIHN0ZGVyciB1bWxlaXRlbjsgZGFubiBrZWhydCBkZWluIHJzaC1hdWZydWYKYXVjaCB6dXJ1ZWNrIChzb2xhcmlzIDIuNS4xKQoKc28gbG9uZy4uLgpkdWlpaWlpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdlbm4gQW5hdG9sICdzcHJpbmcnIHNhZ3QgLi4uIChLb2JheWFzaGksICA1LiBKYW4gMTk5OCwgMTI6MDc6MjYpOgp+IyEgcm49QW5hdG9sIHJ0PTg4Mzk1MjYyOCByZz1zY2htYXJybgp+IyEgdGlkPTg4Mzk1MjQ2OQp3aWUgd2FlcnMgbWl0Ogpyc2ggcmVtb3RlICJhdCBub3cgKyAxIG1pbnV0ZSA8PEVPSQpwcm9ncmFtbQpFT0kKIgoKCgpLb2JheWFzaGkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWEuLi4gKFllbmRpLCAgNS4gSmFuIDE5OTgsIDE0OjQ0OjM5KToKR2VyYWRlIGluIHJlYy5hcnRzLnNmLmNvbXBvc2l0aW9uIGdlZnVuZGVuOgoKICAgQW4gYWdvbmlzaW5nIGV4YW1wbGUgb2YgZWFybHkgZGVudGlzdHJ5IGhhcyBiZWVuIGZvdW5kIGluIHRoZSBza3VsbCBvZgogICBhIG1hbiB3aG8gZGllZCBzb21lIDEsOTAwIHllYXJzIGFnby4KICAgCiAgIFRoZSBtYW4gd2hvIGRpZWQgaW4gaGlzIDMwJ3MgaW4gUm9tYW4gR2F1bCBoYWQgYSB3cm91Z2h0IGlyb24gZmFsc2UKICAgdG9vdGggLSBhbmQgaXQgd2FzIHByb2JhYmx5IGZpdHRlZCBieSBiZWluZyBoYW1tZXJlZCBob21lIGxpa2UgYSBuYWlsLgogICAKICAgQW50aHJvcG9sb2dpc3RzIHdobyBtYWRlIHRoZSBkaXNjb3ZlcnkgYXQgYSBidXJpYWwgc2l0ZSBhdCBDaGF0YW1icmUsCiAgIHNvdXRoIG9mIHRoZSBGcmVuY2ggY2FwaXRhbCwgc2F5IHRoYXQgZGVzcGl0ZSB0aGUgY3J1ZGUgdGVjaG5pcXVlIC0KICAgYW5kIHRoZSBwYWluIHdoaWNoIHByZXN1bWFibHkgYWNjb21wYW5pZWQgaXQgLSB0aGUgdG9vdGggd2FzIHBlcmZlY3RseQogICBwb3NpdGlvbmVkIGFuZCBpbnRlZ3JhdGVkIGludG8gdGhlIGphd2JvbmUuCiAgIAogICBUaGUgcmVzZWFyY2hlcnMgcmVwb3J0ZWQgdGhhdCB0aGUgZmluZCBzaG93ZWQgYSBzdWNjZXNzZnVsIHRvb3RoCiAgIGltcGxhbnQgY291bGQgYmUgYWNoaWV2ZWQgInVzaW5nIHN1cnByaXNpbmdseSBiYXNpYyB0ZWNobm9sb2d5Ii4KICAgCgpNYW5uLCB3YXMgYmluIGljaCBmcm9oIHVlYmVyIGRpZSBtb2Rlcm5lbiBUdXJiaW5lbmJvaHJlci4uLiB1bmQgd2VubiBkaWVzZXMKS2FyaWVzZ2VsIGtvbW10LCB3ZXJkZSBpY2ggZGFzIFphZWhuZXB1dHplbiB2ZXJtdXRsaWNoIGdhbnogZWluc3RlbGxlbiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgIDUuIEphbiAxOTk4LCAyMzoxNzo1Myk6CiJFcyBoaWxmdCBuaWNodCwgZGFzcyBkaWUgV2VsdCB3ZWl0IGlzdCB3ZW5uIERlaW4gU2NodWggZW5nIGlzdC4iCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IERyZXNkZW5lciBNRy1TdGFUaSAoQW5hdG9sLCAgNi4gSmFuIDE5OTgsIDA1OjQ3OjA0KToKfiMhIG9uPUFuYXRvbCBvdD04ODQwNjIwMDIgb2c9dHJlZmZlbgp+IyEgcm49TWFoYXRtYSBydD04ODQwNTk3NDkgcmc9dHJlZmZlbgp+IyEgdGlkPTg4NDAwNzA3MgpXaWUsIHNlaXQgd2FubiBnaWJ0IGVzIGluIFJ1c3NsYW5kIGdlbnVnIENva2UgZnVlciBEZWluZW4KQmVkYXJmIGFuIENvbGEtNDA/IAoKR2xhdWJ0IE1haGF0bWEga2VpbiBXb3J0LApBbmF0b2wgOikgCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc3RhdW4gISAoVGFyYWdvbiwgIDcuIEphbiAxOTk4LCAwNjoxMzoxNSk6Cgp1bnQgc3BpZWxlcmxpc3RlOgogIDI3LiBIb256ICAgICAgICAgIDI2NzMgICggNSkgIDE2MDAgICAxMjM4Njg5ICAgOWQsIDAyOjQ4ICBBYmVudGV1cmVyCgpBbHNvIHdpcmtsaWNoLi4uIHVuZCBkYXMgc29sbCBrZWluIFp3ZWl0aWUgc2VpbiA/Pz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzdGF1biAhIChIYW5nb3ZlciwgIDcuIEphbiAxOTk4LCAwNzoyODoyMik6Cn4jISBybj1UYXJhZ29uIHJ0PTg4NDE0OTk5NSByZz1zY2htYXJybgp+IyEgdGlkPTg4NDE0OTk5NQpNb2luIQoKLi4udW5kIGVyIGlzdCB3aWUgYWxsZSBhbmRlcmVuIGplbWFscyBhdXMgSGFtYnVyZyBlaW5nZWxvZ2d0ZW4KU3BpZWxlciBtZWluIFp3ZWl0aS4uLiA7LSkKCkhhbmdvdmVyCihkZXIgc2Nob24gR3Jvc3NmYW1pbGllIHdhZXJlIHdlbm5zIGRhbmFjaCBnaW5nZSB3ZXIgYXVzIEhIIGtvbW10KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWxmZW4uLi4gKFR1bml4Z3V0LCAgNy4gSmFuIDE5OTgsIDA4OjMwOjE1KToKRHUgcmljaHRlc3QgRGVpbiBLZXJiaG9seiBhdWYgZWluZW4gRWxmZW53YWVjaHRlciwgZXMgdmlicmllcnQgbGVpY2h0LgpEZXIgV2FlY2h0ZXIgbGFlY2hlbHQgRGljaCBhbi4KCk9obmUgV29ydGUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFbGZlbi4uLiAoVHVuaXhndXQsICA3LiBKYW4gMTk5OCwgMDg6NTQ6MTMpOgp+IyEgcm49VHVuaXhndXQgcnQ9ODg0MTU4MjE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0MTU4MjE1CldlbmlnIHNwYWV0ZXIuLi4gKEFscyBpY2ggZGFubiBhdWZnZWdlbiBoYXR0ZS4uLikKCkR1IHdpbmtzdCBkZWluZW4gRnJldW5kZW4genUuCkVpbiBXYWVjaHRlciBqYWd0IERpY2ggbmljaHQgbWVoci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzdGF1biAhIChBc21vZGlzLCAgNy4gSmFuIDE5OTgsIDE4OjUyOjQ1KToKfiMhIHJuPVRhcmFnb24gcnQ9ODg0MTQ5OTk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0MTQ5OTk1CldvIHN0ZWh0IGRlbm4gZGEsIGRhc3MgZXIga2VpbiBad2VpdGllIGlzdCA/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqcm90ZmwqIChOYWlyb2xmLCAgNy4gSmFuIDE5OTgsIDIyOjM2OjM5KToKUGFkcmVpYyB0ZWlsdCBEaXIgbWl0OiBpY2ggd2FlciBkYWZ1ZXIgamVkZW0gMjU2IGFsaXMgenUgZXJsYXViZW4gCgoqKm9obmUgV29ydGUqKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpyb3RmbCogKEFuYXRvbCwgIDcuIEphbiAxOTk4LCAyMjo0NToxOCk6Cn4jISBybj1OYWlyb2xmIHJ0PTg4NDIwODk5OSByZz1zY2htYXJybgp+IyEgdGlkPTg4NDIwODk5OQpBYnNlbmRlcjogTWVybGluCkFuOiBBbmF0b2wKRGF0dW06IERvbiwgIDguIEphbiAxOTk4LCAwOjAwOjAwClRpdGVsOiBNdWRiZW51dHp1bmdzZnJpc3QgYWJnZWxhdWZlbiEKCkhhbGxvIEFuYXRvbCEKRHUgYmlzdCBudW4gc2VpdCAxMzAxIFRhZ2VuIGltIE1vcmdlbkdyYXVlbiBha3RpdiwgRGVpbiBmdWVyIERpY2ggenVmYWVsbGlnCmVyc3RlbGx0ZXMgTXVkYmVudXR6dW5nc2tvbnRvIGlzdCBoaWVybWl0IHZvbGxzdGFlbmRpZyBhdWZnZWJyYXVjaHQuCgpBZGlvcywgbWFuIHNpZWh0IHNpY2ghCgpNZXJsaW4KVXJ2YXRlciBhbGxlciBNYWdpZXIKQmV3YWhyZXIgdm9uIFJlY2h0LCBTcGVpY2hlcnBsYXR6IHVuZCBPcmRudW5nCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAqcm90ZmwqIChXdXJ6ZWwsICA3LiBKYW4gMTk5OCwgMjI6NDc6MDgpOgp+IyEgcm49QW5hdG9sIHJ0PTg4NDIwOTUxOCByZz1zY2htYXJybgp+IyEgdGlkPTg4NDIwODk5OQppbnRlcmVzc2FudGUgaWRlZS4uLiBtYW4ga2FubiBqYSBhdWNoIGFtIGZvcnRnZXNjaHJpdHRlbmVuIGFsdGVyIHN0ZXJiZW4sIGRhCmhpbGZ0IGRhbm4ga2VpbiBiZXRlbiBtZWhyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUcmFpbmluZyBiZWltIEtTQyAoSG9ibywgIDguIEphbiAxOTk4LCAwOTowMDo1MCk6ClppdGF0IGF1cyBkZXIgb2ZmaXppZWxsZW4gS1NDX1NlaXRlOgoKIFRyYWluaW5nc3plaXRlbiB2b20gMDUuMDEuIC0gMTEuMDEuOTggW10KCkRpZSBMaXplbnpzcGllbGVyYWJ0ZWlsdW5nIGRlcyBLU0MgdHJhaW5pZXJ0IGluIGRlciBXb2NoZSB2b20gMDUuIGJpcwowNy4wMS4xOTk3IHZvcnJhdXNzaWNodGxpY2ggYW4gZm9sZ2VuZGVuIFRhZ2VuOgogIE1pdHR3b2NoLCAxMC4wMCBVaHIKICBEb25uZXJzdGFnLCAxMC4wMCBVaHIKICBGcmVpdGFnLCAxMC4wMCBVaHIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYmVpbSBXZWdoaWVyIChUZWRkeSwgIDguIEphbiAxOTk4LCAxNjoxODo1NCk6CkRlciBWb2xsc3RyZWNrZXIgc2NobGFlZ3QgbWFsIGV0d2FzIGtyYWVmdGlnZXIgenUuCiAgRGVyIFdlZ2hpZXIga3JhdHp0IExpbGFmLiAgICAgICAKClRlZGR5LCBldHdhcyBkZXByaW1pZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW1tIGljaCBicmF1Y2ggbmUgQnJpbGxlLi4uIChMd2F4aSwgIDkuIEphbiAxOTk4LCAxODo0MDoyMyk6CkRpZXNlciBLcmFnZW4gaXN0IG1pdCBlaW5lbSBLbm9jaGVua3JldXogdW5kIGVpbmVtIEtub2NoZW4gdmVyc2VoZW4gdW5kIHplaWd0CnNvIERlaW5lbiBSYW5nIGlubmVyaGFsYiBkZXIgR2lsZGUgZGVzIEtvcnUtVHNjaGFrYXItU3RydXYuIER1IGthbm5zdCBhbmRlcmVuCmRpZXNlcyBBYnplaWNoZW4gemVpZ2VuLiBEdSBiaXN0IGVpbiBHcmEnVGFrYWwgKEdpbGRlbnN0dWZlOiAxNCkuIEFtIEtyYWdlbgpoYWVuZ3QgZWluIE9yZGVuLiBEdSBiaXN0IEF1c2JpbGRlciB2b24gSGFmYXguIElociBoYWJ0IHp1c2FtbWVuIHNjaG9uIDEzMwpHZWduZXIgYmVzaWVndCwgaWhyIG11ZXNzdCBhbHNvIG51ciBub2NoIDcgbmllZGVybWFjaGVuLCB1bSBkaWUgQXVzYmlsZHVuZyB6dQpiZWVuZGVuLiAKCnVudCBrbm9jaGVua3JldXoKRHUgZmluZGVzdCBhbiBlaW5lbSBLcmFnZW4gbWl0IGVpbmVtIEtub2NoZW5rcmV1eiB1bmQgZWluZW0gS25vY2hlbiBrZWluIAoiS25vY2hlbmtyZXV6Ii4KRGVpbiBCbGljayB3ZW5kZXQgc2ljaCBkZXIgVW1nZWJ1bmcgenUuClNvd2FzIHNpZWhzdCBEdSBhdWNoIGRhIG5pY2h0IQoKCgpBaCBqZXR6dCBqYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT3JnYW5oYW5kZWwgaW4gTUcgKFphcGhvYiwgIDkuIEphbiAxOTk4LCAxODo0ODo1OCk6CkFsc28gbmVlZToKCkR1IGhvZXJzdCBlaW5lIGdld2FsdGlnZSBFeHBsb3Npb24hIApbVG9kOkxhcnNdIEVpbiBaZXR0ZWwgaGF0IGdlcmFkZSBMb2xsaSB1bWdlYnJhY2h0LgpEaWUgemVyZmV0enRlbiBVZWJlcnJlc3RlIHZvbiBMb2xsaSBmYWxsZW4gdm9tIEhpbW1lbCEKW1RydmVzOkN5bXJpa10gYnJ1YWNodCBqZW1hbmQgZWluZSBoYXV0PwoKWmFwKiBmaW5kZXQgZXMgc2NobGltbSwgd2VsY2hlIGF1c21hc3NlIGRhcyBqZXR6dCBzY2hvbiBoYXQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW0gbWVpbmVtIFpvby4uLiAoS251cnQsIDEwLiBKYW4gMTk5OCwgMDQ6Mjk6MTQpOgpEdSBzdHJlaWNoZWxzdCBlaW5lbiBIYXNlbiBsaWViZXZvbGwuCkVpbiBIYXNlIGJpYmJlcnQgdm9yIEFuZ3N0LgoKVm9uIHdlZ2VuIG5pZW1hbmQgbmltbXQgZGllIEhvYmJpdHNlIEVybnN0Li4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpaYXViZXJlciBzaW5kIHp1IHN0YXJrLi4uLiAoTG9uZG8sIDExLiBKYW4gMTk5OCwgMTM6MDQ6MjYpOgoKRm9uZG9yIGZpeGllcnQgRnJldW5kIHVuZCBtYWNodCBzY2h3dW5ndm9sbGUgQmV3ZWd1bmdlbi4KRnJldW5kIHZlcmR1bnN0ZXQgc3BvbnRhbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCBpbSBtZWluZW0gWm9vLi4uIChLZXksIDExLiBKYW4gMTk5OCwgMTc6NDE6MDIpOgp+IyEgcm49S251cnQgcnQ9ODg0NDAyOTU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0NDAyOTU0CkRlciBoYXR0ZSBudXIgQW5nc3QgZGF2b3IgZGFzIERlaW5lIEhhZW5kZSBnZW5hdXNvIHN0aW5rZW4gd2llIGRlaW5lIEZ1ZXNzZSEKOikKCktleSwgRWxmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3aWUgdWVibGljaCAuLi4uIChOYWlyb2xmLCAxMS4gSmFuIDE5OTgsIDE4OjU5OjUxKToKRWJlbiBiZWltIEdlc3ByYWVjaCBpbSBMdXRhbC4uLjoKKEtleSBzaXR6dCBSTCAyIFJlaWhlbiBoaW50ZXIgbWlyLi4KQXVzc2VyZGVtIGFud2VzZW5lIFBlcnNvbmVuOiBBdG96IHVuZCBOZXNhamEpCktleSBrb21tdCBhbi4KLT5STC1LZXkgc2NocmVpdDogImFyZ2hzIG5laW4gYXJnaHMgbmljaHQuLi4iCktleSBnZWh0IG5hY2ggT3N0ZW4uCktleSBydWZ0OiAhJiQjJyEhIEdydWJlIQpbVG9kOkxhcnNdIEVpbmUgRXJkZ3J1YmUgaGF0IGdlcmFkZSBLZXkgdW1nZWJyYWNodC4KLT5STC1LZXkgcnVmdDogTUlTVCAhCi0+IGVzIGZvbGd0IGxhdXRlcyBMYWNoZW4gc2NocmFlZyBoaW50ZXIgbWlyIChBdG96KQotPiB1bmQga3VyeiBkcmF1ZiBlaW5lIGFuZGVyZSBTdGltbWUgKE5lc2FqYSk6IGhtIHdhcyBpcyA/IG9jaG5lZWUKc2Nob253aWVkZXIgPz8KClRqYSBzbyBnZWh0IGRhcyBoaWVyIGhldXRlIHNjaG9uIHN0YWVuZGlnIC4uLjotKSkpKSkKCgoqKiBvaG5lIFdvcnRlICoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZXJ2aWNlIChSaW5nb3IsIDExLiBKYW4gMTk5OCwgMjI6MDI6MDUpOgpVbmdlc2Nobml0dGVuIC4uLgoKRnJ1ZWhlciB3YXIgVGhvcnNoYXZuIG1hbCBlaW5lIGdyb3NzZSBXaWtpbmdlcnNpZWRsdW5nLiBIZXV0ZSBpc3QgZGF2b24gbmljaHQKbWVociBhbGx6dXZpZWwgZ2VibGllYmVuLiBMZWRpZ2xpY2ggZWluZSBNb2xlIHVuZCBTY2hpbGQgc3RlaGVuIG5vY2ggaGllci4KWnVuZWhtZW5kIGdsYXVic3QgRHUsIGRhc3MgZGVyIFRyYXdsZXIgaGllciBudXIgYXVmZ3J1bmQgZWluZXMgQXJyYW5nZW1lbnRzCm1pdCBPbllvdXJPd24tQ3J1aXNlcyhUTSkgYW5sZWd0LiBFaW4gc2NobWFsZXIgUGZhZCBmdWVocnQgbmFjaCBOb3JkZW4gaW4KZWluZW4gTmFkZWx3YWxkLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogbm9yZGVuLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBUaXRhbmVuIGF1cyBFaXNdIFN0aW5nLCB3ZXIgaGF0IERJQ0ggZGVubiBlaW5nZWxhZGVuPwpEdSBydWZzdDogVEFYSUlJIQpFaW4ga2xlaW5lcyBGaXNjaGVyYm9vdCBuYWVoZXJ0IHNpY2ggdW5kIGxlZ3QgYW4uCgoKUmluZ29yLiBXdWVuc2NodCBzaWNoIGltbWVyIHNvIGVpbmVuIFNlcnZpY2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGphLi4uIChLaWxhciwgMTIuIEphbiAxOTk4LCAwMTo0NDo1NCk6CkFoamE6CgpmcmFnZSBwaGx5YWtlbiBuYWNoIHNpbHZhbmEgClBobHlha2VuIHdpcmQgcGxvZXR6bGljaCBibGFzcy4KCktpbGFyIC0gZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5pY2h0IGtsZWluenVrcmllZ2VuIChEYXJrd2luZywgMTIuIEphbiAxOTk4LCAwNDoxNTowNSk6CiBLaWxhciBzdGFycnQgZWluZW0gS2FuaW5jaGVuIHRpZWYgaW4gZGllIEF1Z2VuIHVuZCBzYWd0OiBTY2hhZW1lIQpFaW4gS2FuaW5jaGVuIGdlaHQgaW4gZGllIEVja2UgdW5kIHNjaGFlbXQgc2ljaC4KRWluIEthbmluY2hlbiBnZWh0IGluIGRpZSBFY2tlIHVuZCBzY2hhZW10IHNpY2guClRhbWVsaSBncmVpZnQgZGFzIEthbmluY2hlbiBtaXQgZWluZW0gU2Nod2VydCBhbi4KVGFtZWxpIHNjaGxhZWd0IGRhcyBLYW5pbmNoZW4gbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KRGFzIEthbmluY2hlbiBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW5lIExlaWNoZSBnZWh0IGluIGRpZSBFY2tlIHVuZCBzY2hhZW10IHNpY2guCgpEYXJrd2luZywgZ3JpbnN0IGltbWVyIG5vY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBoYXQgZ3V0IHJlZGVuLi4uLi4gKEFsaW5lLCAxMi4gSmFuIDE5OTgsIDEwOjE2OjEzKToKCkViZW4gaW4gZGVyIEVsZmVua25laXBlOgoKPiBFaW5lIEdhZXJ0bmVyaW4ga29tbXQgYW4uCkVpbmUgR2FlcnRuZXJpbiBnaWJ0IGVpbmVuIFNjaGlsZCBhbiBlaW5lbiBXaXJ0LgpFaW5lIEdhZXJ0bmVyaW4gZ2lidCBlaW5lbiBQYW56ZXIgYW4gZWluZW4gV2lydC4KRWluZSBHYWVydG5lcmluIGdpYnQgZWluZW4gU2NoaWxkIGFuIGVpbmVuIFdpcnQuCkVpbmUgR2FlcnRuZXJpbiBnaWJ0IGVpbiBMYW5nc2Nod2VydCBhbiBlaW5lbiBXaXJ0LgpFaW5lIEdhZXJ0bmVyaW4gZ2lidCBlaW5lbiBTY2hpbGQgYW4gZWluZW4gV2lydC4KRWluIFdpcnQgZ2lidCBlaW5lbiBQYW56ZXIgYW4gZWluZSBHYWVydG5lcmluLgpFaW4gV2lydCBnaWJ0IGVpbiBMYW5nc2Nod2VydCBhbiBlaW5lIEdhZXJ0bmVyaW4uCkVpbiBXaXJ0IGdpYnQgZWluZW4gUGFuemVyIGFuIGVpbmUgR2FlcnRuZXJpbi4KRWluIFdpcnQgZ2lidCBlaW4gTGFuZ3NjaHdlcnQgYW4gZWluZSBHYWVydG5lcmluLgpFaW4gV2lydCBnaWJ0IGVpbiBMYW5nc2Nod2VydCBhbiBlaW5lIEdhZXJ0bmVyaW4uCkVpbiBXaXJ0IGdpYnQgZWluZW4gU2NoaWxkIGFuIGVpbmUgR2FlcnRuZXJpbi4KCkRlciBHYXN0d2lydCBzYWd0OiBQYXNzZW4gU2llIGF1ZiwgZGFzcyBlcyBuaWNodCB6dXZpZWwgd2lyZC4KCldhcnVtIHNhZ3QgZXIgbmljaHQgZ2xlaWNoLCBkYXNzIGVyIGRlbiBLcmFtIG5pY2h0IHdpbGw/CgpmcmFndCBzaWNoIC4uLgoKQWxpbmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZ1ZXIga2V5IChEZW50aSwgMTIuIEphbiAxOTk4LCAxMDoxNzozNik6CltBbGxnZW1laW46S2V5XSBzY2hyZWliIG1hbCB3ZXIgd2FzIGluIGRpZSB6ZWl0dW5nCltBbGxnZW1laW46Um9uZGFdIHNjaHJlaWJlbiBqYSBuaWNodCBhbGxlIGVpbnplaWxlciB3aWUgRHUsIEtleSA7KQpbQWxsZ2VtZWluOkRhdWVyZ2FzdF0gd2llZGVyIHdlY2gKW0FsbGdlbWVpbjpEYXVlcmdhc3Qgd2lua3QgYXJ0aWddCltBbGxnZW1laW46S2V5XSBpbiBkZXIga3VlcnplIGxpZWd0IGRpZSB3dWVyemUgLCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9obmUgd29ydGUgKENvbG9zc3VzLCAxMi4gSmFuIDE5OTgsIDE0OjQ1OjU4KToKPiBmcmFnZSBhcmNoaXZhciBuYWNoIGtyaXN0YWxsCkVpbiBBcmNoaXZhciBzY2h3YWVybXQ6IEljaCBsaWViZSBzaWUuIExlaWRlciByZWljaHQgbWVpbmUgU3RpbW1lIG5pY2h0IGF1cywKRWluIEFyY2hpdmFyIHNjaHdhZXJtdDogdW0gYWxzIEZhaHJ0ZW5zYWVuZ2VyIGR1cmNocyBMYW5kIHp1IHppZWhlbi4KPiBmcmFnZSBhcmNoaXZhciBuYWNoIHN0aW1tZQpFaW4gQXJjaGl2YXIgYmVkYXVlcnQ6IERhcnVlYmVyIHdlaXNzIGljaCBuaWNodCBCZXNjaGVpZC4KY29sb3NzdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBmdWVyIGtleSAoQW5hdG9sLCAxMi4gSmFuIDE5OTgsIDE2OjE3OjM2KToKfiMhIHJuPURlbnRpIHJ0PTg4NDU5NjY1NiByZz1zY2htYXJybgp+IyEgdGlkPTg4NDU5NjY1Ngo+IFtBbGxnZW1laW46S2V5XSBpbiBkZXIga3VlcnplIGxpZWd0IGRpZSB3dWVyemUgLCkKCktsYXIsIGRhc3MgS2V5IG1pdCBzZWluZW4gMi4zIE1pbGxpbWV0ZXJuIGRhcyBzYWdlbiBtdXNzLi4uCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUeXBpc2NoIEVsZmVuZG9yZiAoSGFuZ292ZXIsIDEyLiBKYW4gMTk5OCwgMTg6MTY6MzEpOgpMaWdodG5pbmcgc2FndDogV2VyIHZvbiBkZW4gaGllciBhbndlc2VuZGVuIGlzdCBkZW5uIHp1bSBUcmF1emV1Z2VuIGJlc3RpbW10PwpEdSBkZW5rc3QgICAuIG8gTyAod2VpYS4uLikKRWluZSBHYWVydG5lcmluIGtvbW10IGFuLgpFaW4gRWxmZW53YWVjaHRlciBrb21tdCBhbi4KS2Fyb2wgZnJhZ3Q6IEJyYXVjaHQgbWFuIHp1IGhlaXJhdGVuIGVpbiBtYWc/CkR1IGJyaWNoc3Qgdm9yIExhY2hlbiB6dXNhbW1lbi4KRHUgd2lyc3Qgd2llZGVyIHVucnVoaWdlci4KRHUgaG9sc3QgdGllZiBMdWZ0LgpEdSBiaXN0IGRpZSBSdWhlIHNlbGJzdC4KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAyMDAgS29uemVudHJhdGlvbnNwdW5rdGUuCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMjAxIEtvbnplbnRyYXRpb25zcHVua3RlLgpMaWdodG5pbmcgc2FndDogR2FlcnRuZXJpbiB1bmQgRWxmZW53YWVjaHRlciwgZ3V0Z3V0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXMgbXVzcyBuaWNodCBpbW1lciBKb2Ygc2VpbiEgKEF6enVybywgMTMuIEphbiAxOTk4LCAxNzoxMTowMCk6CltBbGxnZW1laW46VHJhbmNlZmVhcl0gb2ggam9mIHdhc3NuIGxhZyA6LSgKQm9pbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhIAoKRXIgd2lyZCB3aXNzZW4gd2FydW0hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZXJhZGUgaW4gc29jLmMuZCAoUmFmZmksIDEzLiBKYW4gMTk5OCwgMjE6MTU6NDApOgpadSBlaW5lbSBCZXJpY2h0IHVlYmVyIGRpZSBlbnRkZWNrdW5nIHZvbiBlY2h0ZW4gS2FuaWJhbGVuIGR1cmNoClVyd2FsZGZvcnNjaGVyOgoKPldlcmUgdGhleSBlYXRlbiBieSB0aGVtPwoKWWVhaCwgb25seSB0aGVpciBjYW1lcmFzIHdlcmUgdG9vIGJpZyB0byBzd29sbG93IGFuZCB0b28gc29mdCB0byBjcmFjawpjb2NvbnV0cyB3aXRoLiBUaGF0J3Mgd2h5IHdlIGhhdmUgdGhlIHBpY3R1cmVzLgoKR3J1c3MKSC4KKEhtbSBnZWhvZXJ0IGRhcyBuaWNodCBlaGVyIG5hY2ggJ0VudHdpY2tsdW5nJyA/KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVsaWNoIGltIG1laW5lbSBab28uLi4gKFJhZmZpLCAxMy4gSmFuIDE5OTgsIDIxOjM1OjQwKToKfiMhIHJuPUtleSBydD04ODQ1MzY4NjIgcmc9c2NobWFycm4KfiMhIHRpZD04ODQ0MDI5NTQKCk9kZXIgZXIgaGF0dGUgYW5nc3QgZGF2b3Igd2llZGVyIG5pZWRlcmdlbnVkZGVsdCB6dSB3ZXJkZW4gLi4uIGlzdCBkYXMga2xlaW5lCk1hZWRjaGVuIGJlaSBkZW4gVGlueSBUb29ucyBuaWNodCBlaW4gSG9iYml0ID8KCkdyaW5zCkguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPcmllbnRvZXJ1bmdzbG9zZSBEcmFrb25pZXIgKEhhbmdvdmVyLCAxNC4gSmFuIDE5OTgsIDE0OjM5OjE0KToKR3JhZGUgZWJlbjoKCkltIFRlbXBlbCBkZXIgQnJ1ZGVyc2NoYWZ0IGRlcyBEcmFjaGVuLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHdlc3RlbiB1bmQgbm9yZGVuLgpFaW4gZHJha29uaXNjaGVyIFdhZWNodGVyLgpUdWZmaSBrYWVtcGZ0IHNpY2ggYmx1dHVlYmVyc3Ryb2VtdCBoZXJlaW4uCkVpbmUgU3RpbW1lIGVydG9lbnQ6IEJldm9yIER1IG5pY2h0IGRlbSBEcmFjaGVuIGdlaHVsZGlndCBoYXN0LCBkYXJmc3QgRHUKbmljaHQgdGllZmVyIGluIGRlbiBUZW1wZWwgZWluZHJpbmdlbiwgZWluIERyYWtvbmllcndhZWNodGVyIQoKU2FjaGVuIGdpYnRzLi4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgbmVubmUgaWNoIGdyb3NzenVlZ2lnIChIYXJkaWwsIDE0LiBKYW4gMTk5OCwgMTU6MjU6MTQpOgoKR2VyYWRlIGdlZnVuZGVuOgoKPiB1bnQgdHJlc29yCktyaWdpJ3MgVHJlc29yLCBkZXIgYWxsZW4gQW5mYWVuZ2VybiBvZmZlbnN0ZWh0IQpCaXR0ZSBOSUVNQUxTIHNjaGxpZXNzZW4hIQpFciBpc3QgZ2VvZWZmbmV0IHVuZCBlbnRoYWVsdDoKMTAgTXVlbnplbi4KCkRhcyBpc3QgamEgd2lya2xpY2ggZ3Jvc3N6dWVnaWcuIFdhcyBzbyBBbmZhZW5nZXIgbWl0IDEwIE11ZW56ZW4gYWxsZXMgbWFjaGVuCmtvZW5uZW4hIEVpbm1hbCBiaWxsaWcgdGFua2VuIGluIGRlciBaYXViZXJlcmdpbGRlLiBFaW5lbiBTdG9jayBrYXVmZW4sIGRlbgpzaWUgZnVlciBkZW4gUGZlaWwtdW5kLUJvZ2VuLVpUIGJyYXVjaGVuLiBEZW4gUmFldWJlcm4gc2NoZW5rZW4uCktyaWdpLCBhYmdlc2VoZW4gdm9uIGRlbSB1ZWJlcmZsdWVzc2lnZW4gQXBvc3Ryb3BoIGJld3VuZGVyZSBpY2ggRGljaC4KCi1IYXJkaWwuIEJlZ2Vpc3RlcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbiBkZS5yZWMudHYubWlzYyBnZWZ1bmRlbiAoR3VsZHVrYXQsIDE1LiBKYW4gMTk5OCwgMjA6MzY6MjUpOgpEYSBpY2ggYWxsZSBHbHxja3NyYWQtRm9sZ2VuIGF1ZiBWaWRlbyBhcmNoaXZpZXJlIGhhYmUgaWNoIGVpbmUgRnJhZ2UgYW4KYWxsZSBMZXNlciBkaWVzZXIgTmV3c2dyb3VwOiAKCkhhdCBqZW1hbmQgZGllIEZvbGdlIE5yLiAyMzc/Pz8KCkRpZXNlIGZlaGx0IG1pciwgZGVubiBkYXMgd2FyIGRhcyBlaW56aWdlIG1hbCBkYXMgbWVpbiBWaWRlbyBnZXN0cmVpa3QKaGF0LiBEYSBlcyBiYWxkIHp1IEVuZGUgZ2VodCBtaXQgR2x8Y2tzcmFkIG1jaHRlIGljaCBuYXR8cmxpY2ggZWluZQprb21wbGV0dGUgU2FtbWx1bmcgaGFiZW4uCi0tLS1zbmlwCgoKcm90ZmwKIC0tLS0tCmFudHdvcnRlbjoKCkJpdHRlLCBzaWVoIGRhcyBuaWNodCBhbHMgaXJnZW5kZWluZSBBcnQgdm9uIEtyaXRpayBhbiwgYWJlciBpY2ggaG9mZmUsCmRhc3MgRHUgdmVyc3RlaHN0LCBkYXNzIGljaCBEaXIgZGllc2UgRnJhZ2Ugc3RlbGxlbiBtdXNzOgoKV0FSVU0/IT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUuLi4gKEF2YWxvbiwgMTYuIEphbiAxOTk4LCAxNjoyNjozMyk6ClJhbnRhbnBsYW4gc2FndDogIEFsc28gYmVuZWhtZW4gd2lyIHVucyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoUmluZ29yLCAxNi4gSmFuIDE5OTgsIDIzOjE2OjI3KToKW1NlaGVyOkp1bmdwYXBzdF0gaHVpaWkuLiBrbGVyaWtlciBzZWluIGlzIGphIGdlaWwgYmVpIGRlciB0YW50ZSA+OikKW1NlaGVyOkp1bmdwYXBzdF0gPDIzOjEwOjE1PgoKW1RvZDpMYXJzXSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgSnVuZ3BhcHN0IHVtZ2VicmFjaHQuIDwyMzoxMzo1Nj4KW1RvZDplaW4gSHlkcmFrb3BmXSBoc3Nzc3NzICA8MjM6MTM6NTY+Cgo8b2huZSBXb3J0ZT4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyAoTmFpcm9sZiwgMTguIEphbiAxOTk4LCAyMToyODozOCk6CndhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnVlciBTdGluZzogKE5haXJvbGYsIDE4LiBKYW4gMTk5OCwgMjE6Mjk6MzApOgp3YXMgbGFlbmdlcmVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZnVlciBTdGluZzogKENoZWFzeSwgMTguIEphbiAxOTk4LCAyMToyOTo0NCk6Cn4jISBybj1OYWlyb2xmIHJ0PTg4NTE1NTM3MCByZz1zY2htYXJybgp+IyEgdGlkPTg4NTE1NTM3MAp3YXMgbGFlbmdlcmVzIGJpdGlldCA6KS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJlbGdhcmlhZCBpc3QgU2tyaXB0ZXIhIChIb2JvLCAxOS4gSmFuIDE5OTgsIDA5OjQ5OjEwKToKW0FsbGdlbWVpbjpCZWxnYXJpYWRdIGtlbm50IHNpY2ggamVtYW5kIG1pdCBzbXMgc2NyaXB0ZW4gYXVzPyA8MDk6NDY6MTY+CltBbGxnZW1laW46SG9ib10gd2FzIElTVCBzbXM/IDwwOTo0NjozMD4KW0FsbGdlbWVpbjpDaGljb2xhXSBzY2h3ZXJ0bWVpc3RlcnNjaHdlcnQgPDA5OjQ2OjQzPgpbQWxsZ2VtZWluOkZldWVyd2Vocl0gU2Nod2VydG1laXN0ZXJzY2h3ZXJ0LCBIb2JvPyA6LSkgPDA5OjQ2OjQ1PgpbQWxsZ2VtZWluOkJlbGdhcmlhZF0gaXNzdCB6dW0gcGFrZXRlIGVyc3RlbGxlbiBkaWUgbWFuIGRhbm4gaXN0YWxsaWVyZW4ga2Fubi4KW0FsbGdlbWVpbjpCZWxnYXJpYWRdIDwwOTo0Njo1MT4KW0FsbGdlbWVpbjpDaGljb2xhIGdyaW5zdCBkaWUgbWFnaWVyb21hIGhvYm8gYW4gOykgPDA5OjQ2OjU5Pl0KW0FsbGdlbWVpbjpIb2JvXSBTS1JJUFRFPz8/PyBsb2VzY2hlbiwgbG9lc2NoZW4hIDwwOTo0NzowMz4KCgpIb2JvIC0gYmVhbnRyYWd0IGRpZSBMb2VzY2h1bmcgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBuZXVlICJpZGxlIi1LdWVyemVsIGdld2FlaHJ0IHRpZWZlIEVpbmJsaWNrZSAoSG9ibywgMTkuIEphbiAxOTk4LCAxMDo1NzoxOSk6Cj5rd2VyCi4uLgpBcmsuLi4uLi4uLi4uLi5JLk0gWnVlcmlsZXUuLi4uLi4uLi5NIERyaXp6dC4uLi4uLi4uLi4uTSBTZW1tZWwuLi4uLi4uLi5pLk0KSG9iby4uLi4uLi4uLi4uLi5NIEtvYmF5YXNoaS4uLi4uLkkuTSBNaWthLi4uLi4uLi4uLi5pLkggV2FyZ29uLi4uLi4uLi4uLi5XCkNhdHdlYXpsZS4uLi4uLkkuVyBSaWt1cy4uLi4uLi4uLi5JLkUgUGFyYWNlbHN1cy4uLi4uaS5FIEhhdGUuLi4uLi4uLi4uLkkuRQpLaXJrLi4uLi4uLi4uLi5JLkUgUnVtYXRhLi4uLi4uLi4uaS5HCgpXaXIgTWFnaWVyIGlkbGVuIE5JRSEhISEhCgoKICBIb2JvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGJlaW0gbmVrcm9tYW50ZW4gKEJpcmR5LCAxOS4gSmFuIDE5OTgsIDE0OjAzOjA5KToKQmlyZHkgdmVyc2Nod2luZGV0IG5hY2ggU3VlZGVuLgpEdSB2ZXJmb2xnc3QgamV0enQgQmlyZHkuCkFsZXggdHJvdHRldCBCaXJkeSBoaW50ZXJoZXIuCgpIZXkgSHVuZCwgaWNoIGJpbiBkZWluIEhlcnIsIG5pY2h0IGRlciBkYSAhIQpCaXJkeSwgZXR3YXMgdmVyYmx1ZWZmdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW1hbmRhLi4uIChEYXJrd2luZywgMTkuIEphbiAxOTk4LCAxNDoxMDo0Myk6CkFtYW5kYSBzYWd0OiBIYWxsbyBFaW4gdG9kZXNkcmFjaGUhCkFtYW5kYSBzYWd0OiBXaWUgd2FlcnMgZGVubiBtaXQgdW5zLCBLbGVpbmVyPwoKRGFya3dpbmcgZ3JpbnN0IHNpY2ggZWluZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMV3M/IFdvaGwga2F1bS4uLiAoWWVuZGksIDE5LiBKYW4gMTk5OCwgMTY6NDQ6MjMpOgoKW0FsbGdlbWVpbjpTY2hva29dIFVyZ3Mgd2FyIGRhcyBqZXR6dCB3aWVkZXIgZWluIGZsdyBmdWVyIHNjaG1hcnJuPz8KW0FsbGdlbWVpbjpTY2hva29dIDUgNCAzIDIgMS4uLiA6KQpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgVHlyZWxsLgpbQWxsZ2VtZWluOlplcGh5cl0genUgc3BhZXQKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoZWlsYmFyID8hIChUcmFuY2VmZWFyLCAxOS4gSmFuIDE5OTgsIDE5OjI5OjQyKToKTmV1bGljaCBsYXMgaWNoIGluIGVpbmVyIElLRUEtV2VyYnVuZzoKIkd1dGUgTmFjaHJpY2h0IGF1cyBTY2h3ZWRlbjoKRGFzIE1vcmdlbmdyYXVlbiBpc3QgaGVpbGJhciIKCkhtLi4uLiBHcmltbWJvcm4sIHdhcyB3ZWlzc3QgRHUgZGFydWViZXIgPyA6LSkKCnRmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaGVpbGJhciA/ISAoR3JpbW1ib3JuLCAyMC4gSmFuIDE5OTgsIDAwOjMyOjIyKToKfiMhIHJuPVRyYW5jZWZlYXIgcnQ9ODg1MjM0NTgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg1MjM0NTgyCldhcyBpY2ggZGFydWViZXIgd2Vpc3M/IEdhbnogZWluZmFjaDogV2VubiBpY2ggYmlzIE9zdGVybiAxMDAwRE0gbWVociBhdWYKbWVpbmVtIEtvbnRvIGhhYmUsIGRhbm4gbGFzc2UgaWNoIGV1Y2ggZGFzIE1vcmdlbmdyYXVlbiBpbiBSdWhlLiA6LSkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVz8gKEhvYm8sIDIwLiBKYW4gMTk5OCwgMDg6MTk6MzApOgoiRGllIFZpZWNoZXIgc2luZCBqZXR6dCBzaWNoZXIgc2F0dCwgZGllIGhhYmVuIGphIHNjaG9uIDMgWWV0aXMgYW5nZWZyZXNzZW4hIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBoZWlsYmFyID8hIChUdW5peGd1dCwgMjAuIEphbiAxOTk4LCAwODoyMTo0Nik6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODg1MjUyNzQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg1MjM0NTgyClVOU0VSRSBDaGFuY2UsIEtpbm5pbmdzLCBoZWxmdCBtaXIgc2FtbWVsbi4uLi4KCidzIEthcmF0ZS1ad2VyY2hsZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBoZWlsYmFyID8hIChGeXQsIDIwLiBKYW4gMTk5OCwgMTI6MjQ6MzYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg4NTI1Mjc0MiByZz1zY2htYXJybgp+IyEgdGlkPTg4NTIzNDU4MgoKTWFuLCBiaXN0IGR1IGJpbGxpZy4uLi4KCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGhlaWxiYXIgPyEgKEdyaW1tYm9ybiwgMjAuIEphbiAxOTk4LCAxMzoyNjo0OSk6Cn4jISBybj1GeXQgcnQ9ODg1Mjk1NDc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg1MjM0NTgyCk5vZSwgd2VubiBpY2ggMTAuMDAwIGdlc2FndCBoYWV0dGUsIHd1ZXJkZSBpY2ggZ2FyIG5pY2h0cyBrcmllZ2VuLCB3ZWlsIGRpZQpTYW1tbGVyIGRhbm4gdm9yaGVyIHJlc2lnbmllcmVuLiBBdXNzZXJkZW0sIGJlaW0gTUcgbWFjaCBpY2ggZG9jaCBpbW1lciBlaW5lbgpTb25kZXJwcmVpcy4gOy0pCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoTmFpcm9sZiwgMjAuIEphbiAxOTk4LCAxMzozNTowNSk6ClRyZWthbiBhbiBhbGxlIFphdWJlcmVyOiBhcmdsIC4uIGljaCBoYXNzZSBlcywgd2VubiBzdW4tcGFyYSBtaXR0ZW4gaW0gd2FsZApUcmVrYW4gYW4gYWxsZSBaYXViZXJlcjogc3RlaHQuZGEgZmFsbGUgaWNoIHNpY2hlciBnbGVpY2ggd2llZGVyIHZvbiBkZXIKVHJla2FuIGFuIGFsbGUgWmF1YmVyZXI6IGtsaXBwZSAgPERpZSwgMjAuIEphbiAxOTk4LCAxMzoyODo1OD4KCltUb2Q6TGFyc10gRWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWwgaGF0IGdlcmFkZSBUcmVrYW4gdW1nZWJyYWNodC4KW1RvZDpFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbF0gUGZmZmZmZmZmZmZmdC4uLi4uLi5QTFVNUFMhIDwxMzozMzoyMz4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmlkZWxuIChUcmVrYW4sIDIwLiBKYW4gMTk5OCwgMTU6MTc6MjApOgprd2VyIGlkZWwgCi4gIiIKR2FzdDEuLi4uLi4uLi4uSS5zCi4gIiIKU29nYXIgZ2Flc3RlIGlkZWxuIGhpZXIgbGFuZ2ZyaXN0aWcKVHJla2FuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKb2ZpbmcgKE1pbmdvLCAyMS4gSmFuIDE5OTgsIDA0OjI1OjQzKToKRW1iZS4uLi4uLi4uLi4uSi5zIFp5bmguLi4uLi4uLi4uLmkucyBJbGVzc2EuLi4uLi4uLi5KLnMgUmF5ZWsuLi4uLi4uLi4uSi56CkthcnRpaS4uLi4uLi4uLkoueiBGeXQuLi4uLi4uLi4uLi5KLlMgTWVzaXJpaS4uLi4uLi4uaS5TIFJlZG5vc2UuLi4uLi4uLkouUwpaaW5vLi4uLi4uLi4uLi5pLnogTWFyY3VzLi4uLi4uLi4uSi5tIFp1ZXJpbGV1Li4uLi4uLmouTSBCaWVyY2hlbi4uLi4uLi5pLk0KQ2F0d2VhemxlLi4uLi4uSi5XIFJ1bWF0YS4uLi4uLi4uLkouRwoKVWFhYWFoLiBFcyBncmVpZnQgdW0gc2ljaCEgQWxsZSBqb2ZlbiBudXIgbm9jaCBoZXJ1bS4KCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGF1ZiBkZW0gU3RhbW10aXNjaCAoUm9jaHVzLCAyMS4gSmFuIDE5OTgsIDE0OjI4OjM3KToKQWxpbmUgc2FndDogRGFzIG11c3MgaWNoIGdsZWljaCBiZWkgVGVkZHkgYXVjaCBtYWNoZW4uCkNhdCBzYWd0OiBXYXM/CkFsaW5lIHNhZ3Q6IEFic2NobGVwcGVuLgpUZWRkeSBzYWd0OiBEYXMgbWFjaHQgbWljaCBldHdhcyBuZXJ2b2VzIHdlbm4gQWxpbmUgc2FndCBzaWUKICAgICAgICAgICAgbW9lY2h0ZSBtaWNoIGFic2NobGVwcGVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUcmF1ZXJtaW51dGUgKFNoYWhpLCAyMS4gSmFuIDE5OTgsIDE1OjIwOjMyKToKCltBbGxnZW1laW46VHVOaXhHdXQgdmVycGlzc3Qgc2ljaC4uLl0KCltCZWlsZWlkOkhhbmdvdmVyXSBXYWFhYWFhYWFhaCA6KApbQmVpbGVpZDpGYWhuZGVyXSBtaXN0CltCZWlsZWlkOkFuYWNyaW9uXSB3YWFhYWFoIDooKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltCZWlsZWlkOkFsYW5dIG9jaCBuZWVlIDotKApbQWxsZ2VtZWluOkNhc3NhbmRyYV0gY3UgdHVuaXggdW5kIGJpcyBtb3JnZW4KW0JlaWxlaWQ6R2FuZHVyXSB3YWghIDooCltCZWlsZWlkOlNjdWxseV0gYWNoIHNjaGVpc3NlIDooICAgICAgICAgICAgICAgICAgICAgICAKW0JlaWxlaWQ6Wm9ycm9dIHNvd2FzIHBhc3NpZXJ0CltCZWlsZWlkOkphbml0emVdIGJlaWxlaWQKW0JlaWxlaWQ6TWluZ29dIFBhc3NpZXJ0LgoKV2VubiBkYXMgVHVOaXggd3Vlc3N0ZSB3aWUgaWhyIGlobiB2ZXJtaXNzdCwgZXIgd3VlcmRlIHVlYmVyaGF1cHQgbmljaHQgbWVociAKZ2VoZW4uLi4uLi47KQoKJ3MgU2hhaGVybAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogaGVpbGJhciA/ISAoVGVkZHksIDIyLiBKYW4gMTk5OCwgMDA6MjY6NDkpOgp+IyEgcm49VHVuaXhndXQgcnQ9ODg1MjgwOTA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg1MjM0NTgyCkFsc28gaWNoIHNwZW5kZSBtaW5kZXN0ZW5zIDEwIERNIGRhZnVlci4KRmFlbGx0IHNvd2FzIG5pY2h0IGF1Y2ggaW4gZGVuIEF1ZmdhYmVuYmVyZWljaCBkZXMgRm9lcmRlcnZlcmVpbnM/CgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogaGVpbGJhciA/ISAoV3VyemVsLCAyMi4gSmFuIDE5OTgsIDAwOjU5OjEyKToKfiMhIHJuPVRlZGR5IHJ0PTg4NTQyNTIwOSByZz1zY2htYXJybgp+IyEgdGlkPTg4NTIzNDU4MgpuYWNoIGRlciBzYXR6dW5nIGplZGVuZmFsbHMgbmljaHQuLi4gYWJlciBkaWUga29lbm50ZSBtYW4gamEgYXVmIGRlciBwYXJ0eQpub2NobWFsIGRpc2t1dGllcmVuLi4uIDopCgp3dXJ6ZWwKbm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUcmF1ZXJtaW51dGUgKFR1bml4Z3V0LCAyMi4gSmFuIDE5OTgsIDA4OjI1OjU0KToKfiMhIHJuPVNoYWhpIHJ0PTg4NTM5MjQzMiByZz1zY2htYXJybgp+IyEgdGlkPTg4NTM5MjQzMgpEZXIgd2Vpc3MgZGFzISBBYmEgYWIgdW5kIHp1IE1VU1NBIGhhbHQgZ2VoZW4uLi4gWnVtaW5kZXN0ZW5zIG1hbCB6dSBzZWluZXIKYmVzc2VyZW4gSGFlbGZ0ZS4uLiA7bykKCidzIEthcmF0ZS1ad2VyY2hsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR2VsZCAoR3JpbW1ib3JuLCAyMi4gSmFuIDE5OTgsIDA5OjQ3OjI3KToKfiMhIG9uPVRlZGR5IG90PTg4NTQyNTg5MiBvZz1lbnR3aWNrbHVuZwp+IyEgcm49RnJldW5kIHJ0PTg4NTM4OTYxNSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg4NTM4OTEzMgpCaXR0ZSwgYml0dGUgbmljaHQ6IEljaCB3aWxsIG5pY2h0IHp1bSBNYWdpZXIgYWJnZXdlcnRldCB3ZXJkZW4uCkljaCB3ZXJkZSBhdWNoIG5pZSB3aWVkZXIgbWl0IExhcmlzc2EgcmVkZW4gb2RlciBpaHIgVGlwcyBnZWJlbiwgd28gaW4gZGVyIFNTUAplaW4gSGVpbHRyYW5rIHp1IGZpbmRlbiBpc3QuIDspCgpUZWRkeSwgZ2VsYWV1dGVydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEdlbGQgKEdyaW1tYm9ybiwgMjIuIEphbiAxOTk4LCAwOTo0NzoyOCk6Cn4jISBvbj1UZWRkeSBvdD04ODU0MjYwMDAgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVRlZGR5IHJ0PTg4NTQyNTg5MiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg4NTM4OTEzMgpCZXZvciBkaWUgTGV1dGUgbm9jaCBuZXJ2b2VzZXIgd2VyZGVuLCBkaWVzIGhpZXIgZ2Vob2VydCBlaW5kZXV0aWcgbmFjaApTQ0hNQVJSTiEKClRlZGR5LCBTZWhlciEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVwLVRpbWUgKEZyZXVuZCwgMjIuIEphbiAxOTk4LCAxMDoyNzoxNik6CkhtLCBrYXVtIGxhZXVmdCBkYXMgTXVkIG1hbCAyIFdvY2hlbiBhbSBTdHVlY2ssIHNjaG9uIGJlc2Nod2VydCBzaWNoCm5pZW1hbmQgbWVociB1ZWJlciBkaWUgUmVib290cy4gQWJlciBlcyBMT0JUIGF1Y2ggbmllbWFuZCEKCihOaWNodCBtaWNoLCBpY2ggYWVuZGVyIGphIG5peCBhbiBkZXIgTGliIG9kZXIgYW0gR0QsIGFiZXIgc29sY2hlIExldXRlCndpZSBIYXRlLCBNYXJjdXMsIEtpcmssIEpvZi4gKEljaCBob2ZmZSwgaWNoIGhhYmUgbmllbWFuZGVuIHZlcmdlc3Nlbi4uLikKCkZyZXVuZCwgQW53YWx0IGRlciBVbmF1ZmZhZWxsaWdlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVwLVRpbWUgKERlbnRpLCAyMi4gSmFuIDE5OTgsIDEwOjI4OjM4KToKfiMhIHJuPUZyZXVuZCBydD04ODU0NjEyMzYgcmc9c2NobWFycm4KfiMhIHRpZD04ODU0NjEyMzYKClNvIGlzdCBkYXMgbGVpZGVyIDooCgpEYWhlciBoaWVyIG1hbCBlaW4gTG9iIGFuIGFsbGUgVmVyYW50d29ydGxpY2hlbiBkYWZ1ZXIgOykKCkRlbnRpIHNwaWVsdCBnZXJuZSBpbiBNVURzIG1pdCBsYW5nZXIgdXB0aW1lICg+NDAgdGFnZSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVcC1UaW1lIChHb3JvZywgMjIuIEphbiAxOTk4LCAxMDozNTo1Nik6Cn4jISBybj1GcmV1bmQgcnQ9ODg1NDYxMjM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg1NDYxMjM2ClNwaXR6ZSAhISEgSGFidCBpaHIgZmVpbiBnZW1hY2h0IGRhcyBtaXQgZGVtIFVwLVRpbWUuCgpHb3JvZyBmcmV1dCBzaWNoIGRhcyBlciBzZWluZSBTYWNoZW4gbWVociBhbHMgMyBUYWdlIGhhdCwgdW5kIG5pY2h0IHZvbgpGcmV1bmRzICJCbGl0eiBkaWNoIGZpbmQiIGdldHJvZmZlbiB3dXJkZS4gKDsgKDsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVcC1UaW1lIChHbm9tZSwgMjIuIEphbiAxOTk4LCAxMDo0MzowNCk6Cn4jISBybj1GcmV1bmQgcnQ9ODg1NDYxMjM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg1NDYxMjM2CmVpbmUgdXAtdGltZSB2b24gMiBiaXMgNCB3b2NoZW4gX3NvbGx0ZV8gZWlnZW50bGljaCBub3JtYWwgc2Vpbi4KYWJlciB0cm90emRlbSBtYWwgZWluIGtsZWluZXMgbG9iIGFuIGRpZSBiZXRlaWxpZ3RlbiA6KQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFiZ3Vja2VuLiAoQ2F0d2VhemxlLCAyMi4gSmFuIDE5OTgsIDExOjA1OjQ2KToKfiMhIG9uPUFjcmltb24gb3Q9ODg1NDAyNjQxIG9nPWVudHdpY2tsdW5nCn4jISBybj1GeXQgcnQ9ODg1MTQwNDU4IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODg0NzY1MTIxCldlbm4gIm5sIiAibmltbSBsZWljaGUiIGhlaXN6dCwgZGFubiBoZWlzenQgIm5hbCIgIm5pbW0gYXVzIGxlaWNoZSIuICJuaW1tCmFsbGVzIGF1cyBsZWljaGUiIHdhciBpbW1lciBzY2hvbiAibmFhbCIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBYmd1Y2tlbi4gKENhdHdlYXpsZSwgMjIuIEphbiAxOTk4LCAxMTowNTo1NSk6Cn4jISBvbj1Cb2luZyBvdD04ODU0MDI3Nzggb2c9ZW50d2lja2x1bmcKfiMhIHJuPUFjcmltb24gcnQ9ODg1NDAyNjQxIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODg0NzY1MTIxCk5hamEsIGRhcyBpc3QgdmllbGxlaWNodCB3YXMgZnVlciBldWNoIEp1bmdtdWRkZXIgLi4uIGRpZSBlaW5nZWZsZWlzY2h0ZW4KTXVkZGVyIGJlbnV0emVuIHNlaXQgVXJ6ZWl0ZW4gJ2dhYycgKGdldCBhbGwgZnJvbSBjb3Jwc2UpLCBkZXV0c2NoZSBNdWRzCmdhYnMgZnJ1ZWhlciBuYWVtbGljaCBub2NoIG5pY2h0LiA6KQogIEJvaW5nLCBnaWJ0IG1hbCB3aWVkZXIgZGFtaXQgYW4sIHdpZSBsYW5nIGVyIHNjaG9uIGRhYmVpIGlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQWJndWNrZW4uIChDYXR3ZWF6bGUsIDIyLiBKYW4gMTk5OCwgMTE6MDY6MDMpOgp+IyEgb249QmFtYnVsa28gb3Q9ODg1NDI3MDM3IG9nPWVudHdpY2tsdW5nCn4jISBybj1BY3JpbW9uIHJ0PTg4NTQwMjY0MSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg4NDc2NTEyMQoKQWxsZXMgUXVhdHNjaC4gMSBoZWlzc3QgbmltbSBhbGxlcyB1bmQgMTEgaGVpc3N0IG5pbW0gYWxsZXMgYXVzIGxlaWNoZSAkKgoKVW5kIGZ1ZXIgZm9sZ2UgaHVuZCBnaWJ0IGVzIGVoIGtlaW4gYWxpLiBXZW0gZm9sZ2UgaHVuZCB6dSBsYW5nIHp1IHRpcHBlbiBpc3QsCmVyIGlzdCBlaCBlaW4gV2VpY2hlaS4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBYmd1Y2tlbi4gKENhdHdlYXpsZSwgMjIuIEphbiAxOTk4LCAxMTowNjoxMCk6Cn4jISBvbj1CYW1idWxrbyBvdD04ODU0MjcwOTEgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUJhbWJ1bGtvIHJ0PTg4NTQyNzAzNyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg4NDc2NTEyMQpVbmQgemQgaXN0IHp3YWVuZ2UgZGljaCBkdXJjaCBnZWJ1ZXNjaCEKCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBYmd1Y2tlbi4gKENhdHdlYXpsZSwgMjIuIEphbiAxOTk4LCAxMTowNjoyMCk6Cn4jISBvbj1IYW5nb3ZlciBvdD04ODU0MjcxOTYgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUJhbWJ1bGtvIHJ0PTg4NTQyNzA5MSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg4NDc2NTEyMQpzdGltbXQgZG9jaCBnYXIgbmljaHQuLi4KCmFsaWFzIHpkID0gendhZW5nZSBkdXJjaCB1bnRlcmhvbHoKCkhhbmdvdmVyLAptaXQgdmllbHp1dmllbGVuIGFsaWFzZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFiZ3Vja2VuLiAoQ2F0d2VhemxlLCAyMi4gSmFuIDE5OTgsIDExOjA2OjI4KToKfiMhIG9uPVNjaG9rbyBvdD04ODU0MjcyMDAgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUJhbWJ1bGtvIHJ0PTg4NTQyNzA5MSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg4NDc2NTEyMQoKQWNoIHdhcyBtdWVzc2lnIHVlYmVyIHNvbGNoIHVud2ljaHRpZ2VzIFpldWcgbmFjaHp1ZGVua2VuLi4uIGRhcyBlaW56aWcgd2FocmUKYWxpIGlzdAoKYWxpIC4gdG9ldGUgYWxsZSA6KSkKClNjaG9rbywgYmx1dHRyaWVmZW5kLi4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBYmd1Y2tlbi4gKENhdHdlYXpsZSwgMjIuIEphbiAxOTk4LCAxMTowNjozNik6Cn4jISBvbj1SaW5nb3Igb3Q9ODg1NDI3Mzk0IG9nPWVudHdpY2tsdW5nCn4jISBybj1TY2hva28gcnQ9ODg1NDI3MjAwIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODg0NzY1MTIxCkljaCBzZWhlIHNjaG9uLCB2b24gbWFuY2hlbiBMZXV0ZW4gc29sbHRlIGljaCBsaWViZXIgbmllbWFscyBkaWUgUGFzc3dvZXJ0ZXIKaW4gZGllIEZpbmdlciBiZWtvbW1lbi4gRGFzIGtvZW5udGUgaW5zIEF1Z2UgZ2VoZW4uIDotKQoKUmluZ29yLiBIYXQgZGFzIGFsaSAiLiA9IHNhZ2UgJCoiLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQWJndWNrZW4uIChDYXR3ZWF6bGUsIDIyLiBKYW4gMTk5OCwgMTE6MDY6NDApOgp+IyEgb249QmFtYnVsa28gb3Q9ODg1NDI3NTIzIG9nPWVudHdpY2tsdW5nCn4jISBybj1SaW5nb3IgcnQ9ODg1NDI3Mzk0IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODg0NzY1MTIxCk5hamEgYWJlciBrbmEgPSBrbnVkZGVsIGFsbGUgd2lyZCBqYSB3b2hsIGplZGVyIGhhYmVuLgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBBYmd1Y2tlbi4gKENhdHdlYXpsZSwgMjIuIEphbiAxOTk4LCAxMTowNjo0Nyk6Cn4jISBvbj1BbmF0b2wgb3Q9ODg1NDQ5MTM5IG9nPWVudHdpY2tsdW5nCn4jISBybj1CYW1idWxrbyBydD04ODU0Mjc1MjMgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD04ODQ3NjUxMjEKTmljaHQgamVkZXIga251ZGRlbHQgYWxsZXMsIHdhcyBzaWNoIGJld2VndCB1bmQgc2ljaCBuaWNodCB3ZWhyZW4ga2Fubi4KCkhhdCBlaW4gInJ3dSItQWxpLCBudW4gcmF0ZXQgbWFsIDspCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEFiZ3Vja2VuLiAoQ2F0d2VhemxlLCAyMi4gSmFuIDE5OTgsIDExOjA2OjU1KToKfiMhIG9uPU1pbmdvIG90PTg4NTQ0OTk5NSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49UmluZ29yIHJ0PTg4NTQyNzM5NCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg4NDc2NTEyMQpEYWZ1ZXIgZ2lidCBlcyBkb2NoICcKCkdsb2luIC4uLiBoYXQgZWluIGFsaSAndG9kJwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQWJndWNrZW4uIChDYXR3ZWF6bGUsIDIyLiBKYW4gMTk5OCwgMTE6MDc6MDEpOgp+IyEgb249TGFyaXNzYSBvdD04ODU0NTU4NjUgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVJpbmdvciBydD04ODU0MjczOTQgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD04ODQ3NjUxMjEKCk5lZSwgUmluZ29yLCBkYXMgaXN0IGFiZXIgd2lya2xpY2ggdWViZXJmbHVlc3NpZywgc3RhdHQgc2FnIGthbm4gbWFuCnNlaXQgamVoZXIgJyB2ZXJ3ZW5kZW4sIGdhbnogb2huZSBhbGkuCgpMYXJpLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBBYmd1Y2tlbi4gKENhdHdlYXpsZSwgMjIuIEphbiAxOTk4LCAxMTowNzowOSk6Cn4jISBvbj1Ib2JvIG90PTg4NTQ1NTk3NiBvZz1lbnR3aWNrbHVuZwp+IyEgcm49TGFyaXNzYSBydD04ODU0NTU4NjUgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD04ODQ3NjUxMjEKV29iZWkgbWFuIGFiZXIgZGFyYXVmIGFjaHRlbiBtdXNzLCBkYXNzIG1hbmNobWFsICcgbmljaHQgYWJnZWZyYWd0IHdpcmQsIHVuZAptYW4gc3RhdHQgZGVzc2VuICJzYWciIHZlcndlbmRlbiBtdXNzLgoKSG9ibyAtIGVyaW5uZXJ0IHNpY2ggbm9jaCBndXQgYW4gZGllIE1hcmtpZXJ1bmcgdm9uIGlocmVtIFp3ZWl0aWUhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHZWxkIChDYXR3ZWF6bGUsIDIyLiBKYW4gMTk5OCwgMTE6MDc6MTUpOgp+IyEgb249WmFybml5YSBvdD04ODU0NTg1MjEgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVRlZGR5IHJ0PTg4NTQyNTg5MiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg4NTM4OTEzMgpXb3p1IGJyYXVjaHQgTGFyaXNzYSBlaW5lbiBIZWlsdHJhbms/IAoKWmFybml5YSwgdmVyd3VuZGVydCB1ZWJlciBkaWUgQXR0ci4gZWluaWdlciBNYWdpZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBYmd1Y2tlbi4gKENhdHdlYXpsZSwgMjIuIEphbiAxOTk4LCAxMTowNzoyNyk6Cn4jISBvbj1aYXJuaXlhIG90PTg4NTQ1ODcwNyBvZz1lbnR3aWNrbHVuZwp+IyEgcm49UmluZ29yIHJ0PTg4NTQyNzM5NCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg4NDc2NTEyMQpSaW5nb3IsIHdpZSBrYW5uIG1hbiBzaWNoIGZ1ZXIgc2FnZSAmKiBlaW5lbiAuIGFscyBhbGkgbWFjaGVuLCB3ZW5uIGRhcyAnIGltCk11ZCBzb2dhciBpbXBsZW50aWVydCBpc3QgKGF1Y2gsIHdlbm5zIGthdW0gZWluZXIgd2Vpc3MgKGF1c3NlciBkaWUsIGRpZSBvZnQKZW5nbGlzY2hlIE11ZHMgc3BpZWxlbiAoYmluIGljaCBhdWNoIHNvIGxhbmcgZGFiZWkgd2llIEJvaW5nPyAoc29sbHRlIGVpbgpTY2hlcnogc2VpbiApKSkpCgpFcyBsZWJlbiBkaWUgS2xhbW1lcmZlaGxlci4uLiBaYXJuaXlhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQWJndWNrZW4uIChDYXR3ZWF6bGUsIDIyLiBKYW4gMTk5OCwgMTE6MDc6MzMpOgp+IyEgb249R3JpbW1ib3JuIG90PTg4NTQ1ODk1NiBvZz1lbnR3aWNrbHVuZwp+IyEgcm49TGFyaXNzYSBydD04ODU0NTU4NjUgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD04ODQ3NjUxMjEKQWJlciBhdWYgZGVyIGRldXRzY2hlbiBUYXN0YXR1ciBpc3QgZGVyIC4gb2huZSBzaGlmdCB6dSBlcnJlaWNoZW4sIGRlciAnCm5pY2h0LgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IGJldm9yenVndCBlaW5lIFVTLVRhc3RhdHVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogQWJndWNrZW4uIChDYXR3ZWF6bGUsIDIyLiBKYW4gMTk5OCwgMTE6MDc6MzcpOgp+IyEgb249R25vbWUgb3Q9ODg1NDU5NTI2IG9nPWVudHdpY2tsdW5nCn4jISBybj1HcmltbWJvcm4gcnQ9ODg1NDU4OTU2IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODg0NzY1MTIxClJpbmdvciBoYXQgc2Nob24gcmVjaHQsIGRhc3MgZXIgZWluIGFsaSBhdWYgc2FnIGhhdC4gRGVubiBkYXMgJyBpc3QgYXVmCmplZGVyIHRhc3RhdHVyIHdvYW5kZXJzICpuZXJ2KgoKZ25PbWUgKGFsaSBzIHNhZyAkKiwgYmVzc2VyIGlzIGRhcyBuYWVtbGljaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEFiZ3Vja2VuLiAoQ2F0d2VhemxlLCAyMi4gSmFuIDE5OTgsIDExOjA3OjQxKToKfiMhIG9uPUFsaW5lIG90PTg4NTQ1OTYxNiBvZz1lbnR3aWNrbHVuZwp+IyEgcm49R25vbWUgcnQ9ODg1NDU5NTI2IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODg0NzY1MTIxCkhtbW0gd2VubiBtYW4gYXVmIHMgZWluIGFsaSBoYXQsIHdpZSBnZWh0IG1hbiBkYW5uIG5hY2ggc3VlZGVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEFiZ3Vja2VuLiAoQ2F0d2VhemxlLCAyMi4gSmFuIDE5OTgsIDExOjA3OjQ1KToKfiMhIG9uPVBhbnRoZXIgb3Q9ODg1NDU5NjU0IG9nPWVudHdpY2tsdW5nCn4jISBybj1BbGluZSBydD04ODU0NTk2MTYgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD04ODQ3NjUxMjEKaW5kZW0gbWFuIHN1ZWRlbiBlaW5naWJ0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEFiZ3Vja2VuLiAoQ2F0d2VhemxlLCAyMi4gSmFuIDE5OTgsIDExOjA3OjUxKToKfiMhIG9uPUdub21lIG90PTg4NTQ2MDE1NiBvZz1lbnR3aWNrbHVuZwp+IyEgcm49QWxpbmUgcnQ9ODg1NDU5NjE2IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODg0NzY1MTIxCmdhbnogZWluZmFjaC4uLgpzIG9obmUgYXJndW1lbnQgPSBzdWVkZW4KcyBtaXQgYXJndW1lbnQgPSBzYWcgLi4uCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEFiZ3Vja2VuLiAoUmluZ29yLCAyMi4gSmFuIDE5OTgsIDEyOjI4OjI1KToKfiMhIHJuPUNhdHdlYXpsZSBydD04ODU0NjM2MjEgcmc9c2NobWFycm4KfiMhIHRpZD04ODQ3NjUxMjEKS2xhciBrYW5uIG1hbiAnIHZlcndlbmRlbiBmdWVyIHNhZy4gQWJlciBkYXMgbGllZ3QgaGllciBhdWYgamVkZXIgZHVzc2VsaWdlbgpUYXN0YXR1ciB3b2FuZGVycy4gVW5kIGJldm9yIGljaCBpbW1lciBzdWNoZW4gbXVzcyBiencuIG1pY2ggZXdpZyB2ZXJ0aXBwZSwKbmVobSBpY2ggbGllYmVyIGVpbiBlaWdlbmVzIEFsaSBkYWZ1ZXIgOy0pCgpSaW5nb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEFiZ3Vja2VuLiAoQ2FyYWRocmFzLCAyMi4gSmFuIDE5OTgsIDEzOjAyOjUyKToKfiMhIHJuPUNhdHdlYXpsZSBydD04ODU0NjM1NTUgcmc9c2NobWFycm4KfiMhIHRpZD04ODQ3NjUxMjEKRmFsc2NoLCBCb2luZywgYmVpIG1pciB6Qi4gdW5kIGJlaSBhbGxlbiBCZWthbm50ZW4gZGFtYWxzIChzbyAxOTkwLzE5OTEgcnVtKQpoaWVzcyBkYXMgZ2cgZnVlciBnZXQgYWxsIGZyb20gY29ycHNlLCBkYXMgZ2VodCBzY2huZWxsZXIgYWxzIGdhYy4uLgp1bmQgaXN0IGF1Y2ggZWlubGV1Y2h0ZW5kZXIsIGRhIGcgamEgbmltbSBhbGxlcyBhZWggZ2V0IGFsbCBpc3QuCgogICBFaW4gRnJvc2NoYmVyZyB3aW5rdCBtaXQgMiBsZWNrZXJlbiBGcm9zY2hzY2hlbmtlbG4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktyb2V0aWdlIEZMVyAoWmVwaHlyLCAyMi4gSmFuIDE5OTgsIDE0OjMxOjQ1KToKCltNb2VyZGVyOkdlaXN0IGVpbmVzIFdhc3NlcmRyYWNoZW5dIEZpbmRlc3QgRHUgZGFzIGZhaXIsIE5lc2FqYT8KRHUgdGVpbHN0IE5lc2FqYSBtaXQ6IHdhcyBoYXN0ZSB2b3I/IDopCk5lc2FqYSBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBtYWlsZW4KTmVzYWphIHRlaWx0IERpciBtaXQ6IG5pY2h0cyAuLi5hc3Vzc2VyIHVlYmVuCltUb2Q6TGFyc10gRWluIFdhc3NlcmRyYWNoZSBoYXQgZ2VyYWRlIE5lc2FqYSB1bWdlYnJhY2h0LgpEdSB0ZWlsc3QgTmVzYWphIG1pdDogSFJNUEYKTmVzYWphIGlzdCBnZXJhZGUgbmljaHQgZGE6IG1haWxlbgoKdGllZiBiZXRydWVidCwKICAgICAgICAgICAgICBaZXBoeXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFiZ3Vja2VuLiAoV3VyemVsLCAyMi4gSmFuIDE5OTgsIDE5OjA1OjAyKToKfiMhIHJuPUNhcmFkaHJhcyBydD04ODU0NzA1NzIgcmc9c2NobWFycm4KfiMhIHRpZD04ODQ3NjUxMjEKcXVhcmsuIGdhPWdldCBhbGwsIGdjPWdldCBhbGwgZnJvbSBjb3Jwc2UuIHNvIGlzdCBkYXMgaW1tZXIgZ2V3ZXNlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQWJndWNrZW4uIChIYXJkaWwsIDIzLiBKYW4gMTk5OCwgMTM6MTY6NTQpOgp+IyEgcm49V3VyemVsIHJ0PTg4NTQ5MjMwMiByZz1zY2htYXJybgp+IyEgdGlkPTg4NDc2NTEyMQoKUXVhcmsgaW0gUXVhZHJhdC4KdWNoIGluIGVuZ2xpc2Noc3ByYWNoaWdlbiBNdWRzIGthbm4gbWFsIGRhcyBhbGlhcyBubCBmdWVyIGdldCBhbGwgZnJvbSBjb3Jwc2UKdmVyd2VuZGVuLiA6LSkKCi1IYXJkaWwuIEludGVybmF0aW9uYWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBYmd1Y2tlbi4gKFRyZWthbiwgMjMuIEphbiAxOTk4LCAxNDoxMDoyMik6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9ODg1NDYzNTYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0NzY1MTIxCmphamEgYmFtYnVsa28uIG5pY2h0IGZvbGdlIGh1bmQsIHNvbmRlcm4gZ290byByb2JpbiBvZGVyID8gOykKVHJla2FuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBYmd1Y2tlbi4gKEJhbWJ1bGtvLCAyMy4gSmFuIDE5OTgsIDE1OjE0OjEyKToKfiMhIHJuPVRyZWthbiBydD04ODU1NjEwMjIgcmc9c2NobWFycm4KfiMhIHRpZD04ODQ3NjUxMjEKTmVpbiwgaGF0dGUgYWxzIHNwaWVsZXIgbmllIGVpbiBhbGkgZnVlciBmb2xnZSBodW5kLCBlaHJsaWNoLgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEFiZ3Vja2VuLiAoV3VyemVsLCAyMy4gSmFuIDE5OTgsIDE5OjI5OjA4KToKfiMhIHJuPUhhcmRpbCBydD04ODU1NTc4MTQgcmc9c2NobWFycm4KfiMhIHRpZD04ODQ3NjUxMjEKa2xhciBrYW5uIG1hbiBkYXMuIGF1ZiBkaWUgaWRlZSBtdXNzIG1hbiBhYmVyIGVyc3RtYWwga29tbWVuLCB1bmQgZGFzIGlzdApzY2h3aWVyaWcsIHdlbm4gZWJlbiBhbGxlcyBhdWYgZW5nbGlzY2ggaXN0LiBkZXV0c2NoZSBtdWRzIGthbWVuIGVyc3QgdmllbApzcGFldGVyIGF1ZiAod2VubiBpY2ggbWljaCByZWNodCBlcmlubmVyZSwgd2FyIG1nIGRhcyBlcnN0ZSwgd2Vpc3MgamVtYW5kCndhbm4gdW5pdG9waWEgYW5nZWZhbmdlbiBoYXQ/KS4KdW5kIHdlbm4gYWxsZXMgZW5nbGlzY2ggaXN0LCB3aWVzbyBkYW5uIG5sPwoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQWJndWNrZW4uIChNaW5nbywgMjMuIEphbiAxOTk4LCAxOTo1NDowNSk6Cn4jISBybj1XdXJ6ZWwgcnQ9ODg1NTgwMTQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0NzY1MTIxCm5sIC4uLiBmdWVyIG5vdGhpbmcgbGVmdCA/IC4uLiBUZXN0LCBvYiBkaWUgTGVpY2hlIGxlZXIgaXN0LgoKR2xvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEFiZ3Vja2VuLiAoU21hcnRlLCAyMy4gSmFuIDE5OTgsIDIxOjA2OjMxKToKfiMhIHJuPUhhcmRpbCBydD04ODU1NTc4MTQgcmc9c2NobWFycm4KfiMhIHRpZD04ODQ3NjUxMjEKCk1laW4gYWxpIGZ1ZXIgbmltbSBhbGxlcyBhdXMgbGVpY2hlIGlzdCBwbCBmdWVyIFBMVUVOREVSRSBMRUlDSEUgIQp3byBibGVpYnQgZGVubiBiZWkgZXVjaCBkYXMgcm9sbGVuc3BpZWwgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2hvaC4uLiAoTWVzYXJvbiwgMjMuIEphbiAxOTk4LCAyMjowNzoyNCk6CkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCjIyIEZyYXVlbiBmYWxsZW4gdWViZXIgRGljaCBoZXIuCgpbWnVyIEluZm9ybWF0aW9uOiBMZXR6dGVyZXMgaXN0IG1laW5lIFVocm1lbGR1bmcuLi5dCgpEYSBoYXR0ZSBkYXMgTUcgbWFsIHdpZWRlciBlaW4gdG9sbGVzIFRpbWluZyA7LSkKTWVzYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbGFlcm0gKFppbGx1cywgMjMuIEphbiAxOTk4LCAyMzowODozOCk6Clt1bnQgbGFlcm1dCkRlciBMYWVybSBpc3Qgb2hyZW5iZXRhZXViZW5kLgo+IGxhdXNjaGUKRHUga2FubnN0IG5pY2h0cyBCZXNvbmRlcmVzIGhvZXJlbi4KCkljaCBtdXNzIHdvaGwgenVtIE9ocmVuYXJ6dCA7LSkKemlsbHVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEFiZ3Vja2VuLiAoQm9pbmcsIDI0LiBKYW4gMTk5OCwgMTI6Mzk6MDgpOgp+IyEgcm49V3VyemVsIHJ0PTg4NTU4MDE0OCByZz1zY2htYXJybgp+IyEgdGlkPTg4NDc2NTEyMQpVbml0b3BpYSB1bmQgTUcgaGFiZW4gZXR3YSB6ZWl0Z2xlaWNoIGFuZ2VmYW5nZW4genUgZW50d2lja2Vsbiwgb2ZmaXppZWxsCmVyb2VmZm5ldCB3dXJkZSB6dWVyc3QgVW5pdG9waWEuCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBBYmd1Y2tlbi4gKEdyaW1tYm9ybiwgMjQuIEphbiAxOTk4LCAxMzowOTo0OCk6Cn4jISBybj1TbWFydGUgcnQ9ODg1NTg1OTkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0NzY1MTIxCkFsbGVzIGZhbHNjaC4gRGFzIGVpbnppZyB3YWhyZSBhbGkgZnVlciBuaW1tIGFsbGVzIGF1cyBsZWljaGUgaXN0IGwuIERhbWl0CmhhdHRlIG1hbiBkYW5uIGF1Y2ggaW4gUHJhZS10ZiBaZWl0ZW4gZGllIENoYW5jZSwgYWxzIGVyc3RlciB6dXp1Z3JlaWZlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQWJndWNrZW4uIChJdm8sIDI0LiBKYW4gMTk5OCwgMTM6MjY6MDMpOgp+IyEgcm49V3VyemVsIHJ0PTg4NTU4MDE0OCByZz1zY2htYXJybgp+IyEgdGlkPTg4NDc2NTEyMQpJY2ggd3VlcmRlIGVoZXIgZGFzIGFsaSBubCBuaW1tICQxIGF1cyBsZWljaGUgJDIgZW1wZmVobGVuLgoKSXZvIGhhdXQgbWFuY2htYWwgenUgdmllbGUgTlBDcyBhdWYgZWlubWFsIHVtIDspCgpQUzogV2llIHdhZXJlIGVzIHVlYnJpZ2VucyBtaXQgZGVtIEJlZmVobDogYmVncmFiZSBsZWljaGUgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEFiZ3Vja2VuLiAoTWluZ28sIDI0LiBKYW4gMTk5OCwgMTM6Mjk6MDApOgp+IyEgcm49SXZvIHJ0PTg4NTY0NDc2MyByZz1zY2htYXJybgp+IyEgdGlkPTg4NDc2NTEyMQpBdSBqYS4gVW5kIGRhZnVlciBlcmhvZWh0IHNpY2ggZGFzIEFsaWdubWVudC4gRnVlciBDaGFvdGVuIGdpYnQgZXMgZGFubgpub2NoICd6ZXJmbGVkZGVyZSBsZWljaGUnIGZ1ZXJzIEdlZ2VudGVpbC4KCkdsb2luIGRpZSBLbGVyaWtlcmluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogQWJndWNrZW4uIChXdXJ6ZWwsIDI0LiBKYW4gMTk5OCwgMTU6MTQ6NTQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg4NTY0Mzc4OCByZz1zY2htYXJybgp+IyEgdGlkPTg4NDc2NTEyMQphdSB3ZWlhLiBsIGlzdCwgYXVjaCBoZXV0ZSBub2NoLCBkYXMgYWxpIGZ1ZXIgImxvb2siIDopCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBBYmd1Y2tlbi4gKEdyaW1tYm9ybiwgMjQuIEphbiAxOTk4LCAyMjozMTo0MSk6Cn4jISBybj1XdXJ6ZWwgcnQ9ODg1NjUxMjk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0NzY1MTIxCk5vZSwgZGFmdWVyIGdpYnRzIGRvY2ggc2Nob24gaW1tZXIgZGFzID8uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFiZ3Vja2VuLiAoQXNtb2RpcywgMjQuIEphbiAxOTk4LCAyMzo1NjoxMik6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9ODg1NDYzNTcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0NzY1MTIxClBmZnQsIHpnID0gendhZW5nZSBkaWNoIGR1cmNoIGdlYnVlc2NoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogQWJndWNrZW4uIChGcmV1bmQsIDI1LiBKYW4gMTk5OCwgMDE6NTY6NDcpOgp+IyEgcm49V3VyemVsIHJ0PTg4NTY1MTI5NCByZz1zY2htYXJybgp+IyEgdGlkPTg4NDc2NTEyMQoibCIgPSBsb29rICYqCgpGcmV1bmQsIHdpZWRlciB3dXJ6ZWxrb25mb3JtIHVuZCBlaW56ZWlsaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXbyBpc3QgZGVyIEdvYmxpbnNjaGFlZGVsPyAoSGFyLCAyNS4gSmFuIDE5OTgsIDIxOjIyOjIxKToKSmVkZW5mYWxscyBzaW5kIGRpZSBTcHVyZW4gYXVmIGRlbSBCb2RlbiB1bnVlYmVyc2VoYmFyLiBTaWVoIG51ciBzY2huZWxsCnp1LCBkYXNzIER1IGhpZXIgdmVyc2Nod2luZGVzdC4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4gdW5kIG5vcmRlbi4KRWluIG5ldWVyIE9ya2hlbG0gKGFuZ2V6b2dlbikuCj4gdW50IGhlbG0KV2VyIGhhdCBkZW4gamV0enQgYW4/CgpoYXIgKHdpcmQgc2VsYmVyIGtvcGZsb3MpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIGxldHp0ZW4gV29jaGUgKEdyaW1tYm9ybiwgMjYuIEphbiAxOTk4LCAwMDowNjoyOCk6Ckd1dCA1IG1pbiB6dSBzcGFldDoKIldlbm4gRHUga2F1ZnN0LCB3YXMgRHUgbmljaHQgYnJhdWNoc3QsIG11c3N0IER1IGJhbGQgdmVya2F1ZmVuLCB3YXMgRHUKYnJhdWNoc3QuIgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDI2LiBKYW4gMTk5OCwgMDA6MDc6MTQpOgoiT2huZSBUcmFldW1lIHN0aXJidCBtYW4gdm9uIGlubmVuLiIKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGlsZmUhIGljaCBiaW4gKGZhc3QpIGFsbGVpbmUgaGllciAoVGhlcmluLCAyNi4gSmFuIDE5OTgsIDA1OjU0OjMzKToKICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTW9uLCAyNi4gSmFuIDE5OTgsIDA1OjUxOjI0ICgxNSBUZWlsbmVobWVyKQoKRW1iZS4uLi4uLi4uLi4uSi5zIEdhc3QxLi4uLi4uLi4uLmkucyBHYXN0Mi4uLi4uLi4uLi5pLnMgTWlycm9yLi4uLi4uLi4uaS5zCklsZXNzYS4uLi4uLi4uLkoucyBSYXllay4uLi4uLi4uLi5KLnogS2FydGlpLi4uLi4uLi4uSi56IE1lc2lyaWkuLi4uLi4uLmkuUwpSZWRub3NlLi4uLi4uLi5KLlMgS2lsYXIuLi4uLi4uLi4uaS5TIFppbm8uLi4uLi4uLi4uLkkueiBOYWNodHdpbmQuLi4uLi5pLlMKVGhlcmluLi4uLi4uLi4uLi5TIFpvcnJvLi4uLi4uLi4uLkouUyBCaWVyY2hlbi4uLi4uLi4uLk0KCkFsbGUgU3BpZWxlciBzY2hsYWZlbiB1bmQgZWluIE1hZ2llciBpZGxldCBuaWNodC4uLiB3aWVzbyBiZXJ1aGlndCBtaWNoIGRhcwpuaWNodCBpbSBnZXJpbmdzdGVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaGlsZmUhIGljaCBiaW4gKGZhc3QpIGFsbGVpbmUgaGllciAoS2lsYXIsIDI2LiBKYW4gMTk5OCwgMDU6NTU6MTcpOgp+IyEgcm49VGhlcmluIHJ0PTg4NTc5MDQ3MyByZz1zY2htYXJybgp+IyEgdGlkPTg4NTc5MDQ3MwpTY2hsZWNodGVzIEdld2lzc2VuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBoaWxmZSEgaWNoIGJpbiAoZmFzdCkgYWxsZWluZSBoaWVyIChUaGVyaW4sIDI2LiBKYW4gMTk5OCwgMDU6NTU6NTMpOgp+IyEgcm49S2lsYXIgcnQ9ODg1NzkwNTE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg1NzkwNDczCgpydHJldGUga2lsYXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQWJndWNrZW4uIChIYXJkaWwsIDI2LiBKYW4gMTk5OCwgMTM6MzQ6MjMpOgp+IyEgcm49QXNtb2RpcyBydD04ODU2ODI1NzIgcmc9c2NobWFycm4KfiMhIHRpZD04ODQ3NjUxMjEKCkdlbmF1LCBBc21vZGlzLiBEYSBtdXNzIGljaCBEaXIgMTAwJWlnIFJlY2h0IGdlYmVuLiA6KQoKLWhhcmRpbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFiZ3Vja2VuLiAoRnl0LCAyNi4gSmFuIDE5OTgsIDE1OjAwOjM4KToKfiMhIHJuPUNhdHdlYXpsZSBydD04ODU0NjM1NDYgcmc9c2NobWFycm4KfiMhIHRpZD04ODQ3NjUxMjEKCkRvcHBlbHZva2FsZSB3ZXJkZW4gYWxsZXJkaW5ncyBuYWNoIFB1bmt0IDU3LzEgZGVyIE5pY2h0c2NocmVpYnJlZm9ybQphdWYgZWluZW4gZWluZmFjaGVuIFZva2FsIHZlcmt1ZXJ6dC4KCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEFiZ3Vja2VuLiAoRnl0LCAyNi4gSmFuIDE5OTgsIDE1OjAxOjM1KToKfiMhIHJuPUNhdHdlYXpsZSBydD04ODU0NjM1NjMgcmc9c2NobWFycm4KfiMhIHRpZD04ODQ3NjUxMjEKCkljaCBnbGF1YiwgaW4gZGVyIFB5cmFtaWRlbi1RdWVzdCBoYXN0ZSAnbiBQcm9ibGVtIG1pdCBkZW4gYWxpcy4uLgoKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEFiZ3Vja2VuLiAoRnl0LCAyNi4gSmFuIDE5OTgsIDE1OjAzOjA1KToKfiMhIHJuPUNhdHdlYXpsZSBydD04ODU0NjM2NDcgcmc9c2NobWFycm4KfiMhIHRpZD04ODQ3NjUxMjEKJ2thdW0gZWluZXIgd2Vpc3MnPwoKS29taXNjaCwgaWNoIGVyd2lzY2ggbWljaCBpbW1lciBtYWwgaW0gdGFsayBkYWJlaSwgd2llIGljaCBaZWlsZW4gbWl0ICcKZWlubGVpdGUuLi4KCkZ5dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBBYmd1Y2tlbi4gKEZ5dCwgMjYuIEphbiAxOTk4LCAxNTowNDoyNCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9ODg1NDYzNjU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0NzY1MTIxCktvbWlzY2gsIGJlaSBtaXIgaXN0IGRlciAnIGltbWVyIHp3ZWkgcmVjaHRzIHZvbSBMLi4uCgpGeXQsIHNpY2ggZnJhZ2VuZCwgd2llc28gZGllIEhhZWxmdGUgZGVyIE1lbnNjaGhlaXQgYXVmIGthcHV0dGVuClRhc3RhdHVyZW4gdGlwcHQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBBYmd1Y2tlbi4gKEZ5dCwgMjYuIEphbiAxOTk4LCAxNTowODozOCk6Cn4jISBybj1GcmV1bmQgcnQ9ODg1Njg5ODA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0NzY1MTIxCmwgICAgICA9IHVudCBoeWRyYQoKRnl0LCBzaWNoIGF1Y2ggbWFuY2htYWwgdWViZXIgc2VpbmUgQWxpcyB3dW5kZXJuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBBYmd1Y2tlbi4gKEJpcmR5LCAyNi4gSmFuIDE5OTgsIDE2OjM4OjQ1KToKfiMhIHJuPUZyZXVuZCBydD04ODU2ODk4MDcgcmc9c2NobWFycm4KfiMhIHRpZD04ODQ3NjUxMjEKbCA9IGxpY2h0ICQqCkJpcmR5LCBkaWUgWmF1YmVyZXIgaG9jaGhhbHRlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBBYmd1Y2tlbi4gKEJhbWJ1bGtvLCAyNi4gSmFuIDE5OTgsIDE2OjU2OjU5KToKfiMhIHJuPUZ5dCBydD04ODU4MjM3MTggcmc9c2NobWFycm4KfiMhIHRpZD04ODQ3NjUxMjEKZiA9IGZyYWdlIGh5ZHJhIG5hY2ggYXVmZ2FiZSA6LSkpKQoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBBYmd1Y2tlbi4gKEhhbmdvdmVyLCAyNi4gSmFuIDE5OTgsIDE3OjA5OjU5KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTg4NTgzMDIxOSByZz1zY2htYXJybgp+IyEgdGlkPTg4NDc2NTEyMQpHaWJ0IGRpZSBIeWRyYSBkYW5uIGZyZWl3aWxsaWcgYXVmLi4uPwoKSGFuZ292ZXIKKHJhZXRzZWxuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBBYmd1Y2tlbi4gKEppbWRpZ3JpeiwgMjYuIEphbiAxOTk4LCAxNzozODo0OSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODg1NjQzNzg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0NzY1MTIxCkFiZXIgR3JpbW1ib3JuLAoKbCBpc3QgYWxpIGZ1ZXIgInNjaGF1ZSIgdm9uICJsb29rIiA7LSkKCkpkRwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IEFiZ3Vja2VuLiAoQmFtYnVsa28sIDI2LiBKYW4gMTk5OCwgMTg6MTM6MjkpOgp+IyEgcm49SGFuZ292ZXIgcnQ9ODg1ODMwOTk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0NzY1MTIxClZlcnN1Y2hzIG1hbCA6LSkKCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogQWJndWNrZW4uIChTaWx2YW5hLCAyNi4gSmFuIDE5OTgsIDIyOjM4OjE1KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTg4NTgzNDgwOSByZz1zY2htYXJybgp+IyEgdGlkPTg4NDc2NTEyMQpIbW1tLCBpY2ggaGFldHRlIGRhIG5vY2g6CgpiYiAtPiBiZXRyZXRlIGJvb3QKenMgLT4gemllaGUgc3RyaWNrCgpOYT8gVm9uIHdlbGNoZXIgUXVlc3Qgc3RhbW10IGRhcz8gOikKCiAgZnJhZ3QgU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IEFiZ3Vja2VuLiAoR25vbWUsIDI2LiBKYW4gMTk5OCwgMjI6NDE6NDMpOgp+IyEgcm49U2lsdmFuYSBydD04ODU4NTA2OTUgcmc9c2NobWFycm4KfiMhIHRpZD04ODQ3NjUxMjEKd29scGVydGluZ2VyLCBzb3J1dGgsIGR1ZXN0ZXJ3YWxkIChsYXR1ZXJuaWNoIG51ciBmdWVyIG5pY2h0LXNlaGVyIDstKQoKYW50d29ydGV0IGduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogQWJndWNrZW4uIChBdmFsb24sIDI2LiBKYW4gMTk5OCwgMjI6NDM6MzIpOgp+IyEgcm49QmlyZHkgcnQ9ODg1ODI5MTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0NzY1MTIxCmwgPSBsYW5nCgpnZW5hdSBkaWUgcmljaHRpZ2UgcnVicmlrIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogQWJndWNrZW4uIChTaWx2YW5hLCAyNi4gSmFuIDE5OTgsIDIzOjA4OjM0KToKfiMhIHJuPUdub21lIHJ0PTg4NTg1MDkwMyByZz1zY2htYXJybgp+IyEgdGlkPTg4NDc2NTEyMQpOdXIgd29scGVydGluZ2VyLiA6KSBhKSB3ZWlscyBkaWUgYW5kZXJlbiBiZWlkZW4genUgbWVpbmVuIFNwaWVsZXJ6ZWl0ZW4Kbm9jaCBuaWNodCBnYWIsIGIpIHdlaWwgbWFuIGRhIFplaXQgaGF0LCBkZW4gS3JhbSB6dSB0aXBwZW4uCkJlaSBXb2xwaWUgbXVzc3RlIG1hbiB6dW1pbmRlc3QgZnJ1ZWhlciByZWljaGxpY2ggc2NobmVsbCBzZWluLCB3ZW5uCm1hbiBpbSBCb290IHNlaW4gd29sbHRlLCBCRVZPUiBkZXIgV29scGllIHdpZWRlciB6dXJ1ZWNrIHdhci4uLgoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogQWJndWNrZW4uIChLZXksIDI3LiBKYW4gMTk5OCwgMDk6MjI6MTMpOgp+IyEgcm49U2lsdmFuYSBydD04ODU4NTI1MTQgcmc9c2NobWFycm4KfiMhIHRpZD04ODQ3NjUxMjEKYykgV2VpbCBtYW4gZXMgYmVpIFdvbHBpZXF1ZXN0IGFtIGhhZXVmaWdzdGVuIGJyYXVjaHQgLCkKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEFiZ3Vja2VuLiAoQWxib2luLCAyNy4gSmFuIDE5OTgsIDExOjM0OjU3KToKfiMhIHJuPUF2YWxvbiBydD04ODU4NTEwMTIgcmc9c2NobWFycm4KfiMhIHRpZD04ODQ3NjUxMjEKaWNoIGF1Y2ggbWFsIHN1ZWx6ZW4gd29sbGVuOgoKbCAgICAgID0gbGFzcyAkKiBmYWxsZW4KCkFsYm9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdGltaW5nIGRpZSA4OTc3OTk5IHRlIChBbGJvaW4sIDI3LiBKYW4gMTk5OCwgMTQ6MDc6MTcpOgpEdSBydWZzdDogSGVycmdvdHQsIHNjaG1laXNzIEhpcm4gdm9tIEhpbW1lbCEKPiBTYWlrYW4gaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KWmVwaHlyIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uClplcGh5ciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKQXF1YWRlc3QgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KU2Fpa2FuIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KW0FsbGdlbWVpbjpSYW50YW5wbGFuXSBBbHNvIFVUQyBpc3QgVVQxLWRlbHRhKFVUKSwgVVQgaXN0ICBkdXJjaCBkZW4KW0FsbGdlbWVpbjpSYW50YW5wbGFuXSBKdWxpYW5pc2NoZSBUYWcgZGVmaW5pZXJ0LCBkZXIgYW0gMS4xLiA0NzE0IGIuYy4KW0FsbGdlbWVpbjpSYW50YW5wbGFuXSBiZWdpbm50IHVuZCB6d2FyIHVtIDEyLjAwIGdtdCwgVVQxIGJlaW5oYWx0ZXQgZGFiZWkKW0FsbGdlbWVpbjpSYW50YW5wbGFuXSBub2NoIGRpZSBzY2h3YW5rdW5nIGRlciBFcmRhY2hzZSwuIFNjaGxpZXNzbGljaCBiZW51dHp0CltBbGxnZW1laW46UmFudGFucGxhbl0gbWFuIGRhYmVpIFRBSSBkaWUgaW50ZXJuYXRpb25hbGUgQXRvbXplaXQgYXVzIGRlbgpbQWxsZ2VtZWluOlJhbnRhbnBsYW5dIHdpY2h0aWdzdGVuIGluc3RpdHV0ZW4gbWl0IEF0b211aHJlbi4uYmxhYmxhYmxhCgpuYSBqYSBlaWdlbnRsaWNoIHdvbGx0ZSBpY2ggbnVyIEthbGkgaGVsZmVuIDspCkFsYm9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW5zaWNodGJhcmUgYmV1bGU/IChHbm9tZSwgMjcuIEphbiAxOTk4LCAxNDoyMTo0Nyk6CmF1ZiBzdm9sdmFlcjoKdW50IGJ1Y2h0Cj4gSGludGVyIGRlciBCdWNodCBnZWh0IGVzIHNvZm9ydCB3aWVkZXIgc3RlaWwgaG9jaC4KPiBFaW5lIE1vZXdlIHNlZ2VsdCBuYWNoIFdlc3Rlbi4KRHUgcmVubnN0IGdlZ2VuIGVpbmVuIFBvbGRlciB1bmQgaG9sc3QgRGlyIGVpbmUgQmV1bGUuCnUgcG9sZGVyCj4gU293YXMgc2llaHN0IER1IGRhIG5pY2h0IQoKYWhqYSA6KQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoSGFuZ292ZXIsIDI3LiBKYW4gMTk5OCwgMTc6MDE6NTEpOgpbQWxsZ2VtZWluOkJ1YmJhXSBEdWUgU1NQIGlzdCBkb2NoIHdhcyBmdWVyIFdlaWNoZWllciEKW0FsbGdlbWVpbjpCb2luZyBncmluc3QgYnJlaXQuXQpbR3JhdHM6U2lsdmFdIEdyQXRTIQpbQWxsZ2VtZWluOlRhcmEga2ljaGVydF0KQmVuR3VubiBrb21tdCBhbi4KSm9obnNpbHZlciBzcGVuZGllcnQgQmVuR3VubiBlaW5lbiBEcmluay4KRXMgd2lyZCB0b3RlbnN0aWxsLCBhbHMgQmVuR3VubiBlaW4gS25vYmxhdWNod2Fzc2VyIGJlc3RlbGx0IHVuZCB0cmlua3QuCkpvaG5zaWx2ZXIgc3BlbmRpZXJ0IEJlbkd1bm4gZWluZW4gRHJpbmsuCkVzIHdpcmQgdG90ZW5zdGlsbCwgYWxzIEJlbkd1bm4gZWluIEtub2JsYXVjaHdhc3NlciBiZXN0ZWxsdCB1bmQgdHJpbmt0LgpCZW5HdW5uIHNhZ3Q6IDxIaWNrPiEKSm9obnNpbHZlciBzcGVuZGllcnQgQmVuR3VubiBlaW5lbiBEcmluay4KRXMgd2lyZCB0b3RlbnN0aWxsLCBhbHMgQmVuR3VubiBlaW4gS25vYmxhdWNod2Fzc2VyIGJlc3RlbGx0IHVuZCB0cmlua3QuCkpvaG5zaWx2ZXIgc3BlbmRpZXJ0IEJlbkd1bm4gZWluZW4gRHJpbmsuCkVzIHdpcmQgdG90ZW5zdGlsbCwgYWxzIEJlbkd1bm4gZWluIEtub2JsYXVjaHdhc3NlciBiZXN0ZWxsdCB1bmQgdHJpbmt0LgpEZXIgVG90ZW5ncmFlYmVyIGJlc3RlbGx0IGVpbiBHbGFzIFpvbWJpZWJsdXQuCltUb2Q6TGFyc10gRWluIFRlbnRha2VsbW9uc3RlciBoYXQgZ2VyYWRlIEJ1YmJhIHVtZ2VicmFjaHQuCgoKS2VpbiB3ZWl0ZXJlciBLb21tZW50YXIKLUhhbmdvdmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdW5zaWNodGJhcmUgYmV1bGU/IChMdXB1cywgMjguIEphbiAxOTk4LCAwMDoxMDozNik6Cn4jISBybj1Hbm9tZSBydD04ODU5MDczMDcgcmc9c2NobWFycm4KfiMhIHRpZD04ODU5MDczMDcKSXN0IGRvY2ggbG9naXNjaCwgR25vbWU6IFdlbm4gRHUgc2llIGdlc2VoZW4gaGFldHRlc3QsIHdhZXJzdCBEdSB3b2hsIGthdW0KZGFnZWdlbiBnZXJhYW5udCwgb2Rlcj8KCkx1cHVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBwYWluIGluIHRoZSBhc3MgKEdyaW1tYm9ybiwgMjguIEphbiAxOTk4LCAwOTowMzoxNCk6Cn4jISBvbj1LZXkgb3Q9ODg1ODg5NjIzIG9nPXdpdHplCn4jISBybj1BbmF0b2wgcnQ9ODg1ODUzMjUyIHJnPXdpdHplCn4jISB0aWQ9ODg1NTYwOTE2ClVlYmVyc2V0emVuPyBXYXMgZGVubj8gLikKCkljaCB3ZWlzcyBqYSBuaWNodG1hbCBpbiB3ZWxjaGVyIFNwcmFjaGUgZGFzIHdpZSBoZWlzc3QgLCkpCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHBhaW4gaW4gdGhlIGFzcyAoR3JpbW1ib3JuLCAyOC4gSmFuIDE5OTgsIDA5OjAzOjE2KToKfiMhIG9uPUtleSBvdD04ODU4ODk2ODEgb2c9d2l0emUKfiMhIHJuPUFscGhhIHJ0PTg4NTg0ODY1NCByZz13aXR6ZQp+IyEgdGlkPTg4NTU2MDkxNgpTb3NvIFNleCBpc3QgdW5zZXIgYWxsZXIgTGViZW5zc2lubj8KRHUgdHVzdCBtaXIgbGVpZCB3ZW5uIGVzIGRhcyBmdWVyIERpY2ggaXN0LgoKQWJlciBva2kgLi4uIGplZGVyIGRhY2h0ZSBtYWwgc28gaW4gZGVyIFB1YmVydGFldAoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZ2VyYWRlIGdlbGVzZW4uLi4gKEdyaW1tYm9ybiwgMjguIEphbiAxOTk4LCAwOTowMzozOCk6Cn4jISBvbj1MaSBvdD04ODU4OTU2NTkgb2c9d2l0emUKfiMhIHJuPUphc3BlciBydD04ODU4MjUzNDUgcmc9d2l0emUKfiMhIHRpZD04ODU4MjUzNDUKRGVyIEFydGlrZWwgbWFnIGphIHNjaG9lbiBnZXdlc2VuIHNlaW4sIGFiZXIgd2VubiBpY2ggbmFjaCBkcmVpIFdvcnRlbiBudXIgZGllCmhhZWxmdGUgbGVzZW4sIGthbm4sIHdlaWwgamVtYW5kIHZlcmdlc3NlbiBoYXQsIGRpZSB1bWxhdXRlIHVtenVhZW5kZXJuLApicmVjaGUgaWNoIGFiLgpMaSAoaGV1dGUgaWdub3JhbnQpClAuUy4gd2llIHdhciBkZXIgYXJ0aWtsZSBkZW5uIG51bj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxvZ28gISAoR3JpbW1ib3JuLCAyOC4gSmFuIDE5OTgsIDA5OjA0OjAyKToKfiMhIG9uPVJhbnRhbnBsYW4gb3Q9ODg1ODk4MzkxIG9nPXdpdHplCgpZbyAhCgpOYXR1ZXJsaWNoIGlzdCBTZXggZGVyIFNpbm4gYWxsZXMgbGViZW5kaWdlbiwgd2VyIGV0d2FzIGFuZGVyZXMgYmVoYXVwdGV0IApzdGFydGV0IGRlbiBrdWVtbWVybGljaGVuIFZlcnN1Y2ggc2ljaCBhdWYgZGllIFNlaXRlIGRlciBGcmF1ZW4genUgc2NobGFnZW4sCmRpZSBsaWViZXIgcmVkZW4sIGxlaWRlciBpc3QgZ2VuYXUgZGFzIGRlciBXZWcgZGVyIGJlaSBkZW4gbWVpc3N0ZW4gRnJhdWVuIHp1bQpaaWVsIGZ1ZWhydC4KCkF1c3NlcmRlbSBpc3QgZGFzIE9yaWdpbmFsIGRlcyBKYXNwZXItQXJ0aWtlbHMgZWluZmFjaCBhYmdlc2NocmllYmVuIHZvbgpXYWx0ZXIgTW9lcnM6IFNjaG9lbmVyIExlYmVuIG1pdCBkZW0gS2xlaW5lbiBBcnNjaGxvY2gsIFNleCwgZGllIGJlYmlsZGVydGUKVmVyc2lvbiBnaWJ0IGVzIGFscyBoYW5kbGljaGVzIApUYXNjaGVuYnVjaCwgZGFzcyBhdWNoIGFscyBTY2hsdWVzc2VsZXJzYXR6IGluIGRlciBIb3NlbnRhc2NoZSBmdW5naWVyZW4ga2Fubi4KKFBpbHplIGluIGRlIEhvc2UsIElHSVRUKQpFcnNjaGllbmUgaW0gRWljaGJvcm4gVmVybGFnLgoKRWluZW4gc2Nob2VuZW4gZ3V0ZW4gQWJlbmQKCk9lKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExvZ28gISAoR3JpbW1ib3JuLCAyOC4gSmFuIDE5OTgsIDA5OjA0OjEwKToKfiMhIG9uPUphbml0emUgb3Q9ODg1ODk4OTgxIG9nPXdpdHplCn4jISBybj1SYW50YW5wbGFuIHJ0PTg4NTg5ODM5MSByZz13aXR6ZQp+IyEgdGlkPTg4NTg5ODM5MQphbHNvIGljaCB3ZWlzcyBuaWNodCBIdWVuZGNoZW4sIGljaCBzdGVjayBtaXIgZ2FyYW50aWVydCBrZWluZW4gc2NobHVlc3NlbAppbiBkaWUgdGFzY2hlLCBuYWNoaGVyIG1hY2h0IGRlciBub2NoIHRvZXRlIGFsbGUsIG9kZXIgc2NobGVpZnQgbWljaCB6dXIKSHlkcmEsIG5lZSBuZWUgb2huZSBtaWNoICEgOikKCkphbmljZSBsYWVzc3QgZGFzIFNjaGx1ZXNzZWxjaGVuIGxpZWJlciBmdWVyIHNpY2ggYWxsZWluIHN0ZXJiZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHBhaW4gaW4gdGhlIGFzcyAoR3JpbW1ib3JuLCAyOC4gSmFuIDE5OTgsIDA5OjA0OjMwKToKfiMhIG9uPVd1cnplbCBvdD04ODU5MjkzNDYgb2c9d2l0emUKfiMhIHJuPUtleSBydD04ODU4ODk2ODEgcmc9d2l0emUKfiMhIHRpZD04ODU1NjA5MTYKd2llIG1hbiBlcyBuaW1tdC4gb2huZSBzZXggbWFjaHQgZGFzIGxlYmVuIGplZGVuZmFsbHMgd2VuaWcgc2lubiAodW5kIGVyc3QKcmVjaHQga2VpbmVuIHNwYXNzKS4gYXVjaCB3aXR6ZSBrYW5uIG1hbiBkYXJ1ZWJlciBtYWNoZW4sIGRpZSB3aXR6aWcgc2luZC4KaWNoIGthbm4genVtIGJlaXNwaWVsIGhlcnpoYWZ0IHVlYmVyIHNjaHd1bGVud2l0emUgbGFjaGVuLiBqZWRlbmZhbGxzIGRhbm4sCndlbm4gZWluIHNjaHd1bGVyIHNpZSBlcnphZWhsdCAoZGFzIHNpbmQgZGFubiBlaCBkaWUgYmVzdGVuIDopLiAKYWxsZXJkaW5ncyBrYW5uIGljaCBuaWNodCBsYWNoZW4sIHdlbm4gamVtYW5kLCBkZXIgZGFzIGVtb3Rpb25hbGUgdW5kIHNvemlhbGUKbml2ZWF1IGVpbmVzIGR1cmNoc2Nobml0dGxpY2hlbiBkZXV0c2NoZW4ga2luZGVyZ2FydGVucyBub2NoIG5pY2h0IGVycmVpY2h0CmhhdCwgdmVyc3VjaHQgc2VpbmVuIGZydXN0IGF1ZiBrb3N0ZW4gYW5kZXJlciBsb3N6dXdlcmRlbiwgaW5kZW0gZXIgc29sY2hlbgptdWVsbCBwb3N0ZXQuCmluIGdld2lzc2VyIHdlaXNlIHR1dCBtaXIgamFzcGVyIGxlaWQuIGFiZXIgbnVyIGVpbiBiaXNzY2hlbi4KCnd1cnplbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluIGdlZmFlaHJsaWNoZXIsIGJvZXNlciwgZWdvaXN0aXNjaGVyLCB1bmQgbmF0dWVybGljaCBjaGFvdGlzY2hlciBDaGFvdCBuYW1lbnMgLi4uIGhtbW1tPyAoSGlnaGxhbmRlciwgMjguIEphbiAxOTk4LCAxMjo1Mjo0OSk6Cn4jISBvbj1NaW5nbyBvdD04ODU5ODUxMTYgb2c9cG9saXplaS5iZXNjaHdlcmRlbgpibGFibGFibGFmYXNlbGJsYSAtPiBzY2htYXJybiBmYXNlbGJsYQoKZmFzZWxibGEKCkdsb2luIC0gbmVobXQgbWljaCBuaWNodCBlcm5zdCwgaWNoIGhhYiBub2NoIGVpbiBQcm9taWxsZSB6dSB2ZXJzY2hlbmtlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktlaW4gTUl0Z2xpZWQhIDspIChMaWxhZiwgMjguIEphbiAxOTk4LCAxNDowMTo1NSk6CkdyYWRlIGViZW4gaW0gUGFyYVZsYW5kLi4uOgoKRWluIE9yay4KQWxzbyBkaWVzZXIgT3JrIHNpZWh0IGlyZ2VuZHdpZSB1ZWJlcmhhdXB0IG5pY2h0IG1laHIgZnJldW5kbGljaCBhdXMuIE1pdApncmltbWlnZW4sIGR1bmtlbHJvdGVuIEF1Z2VuIGZ1bmtlbHQgZXIgRGljaCBhbi4gRXIgaXN0IHNpY2hlciBiZXJlaXQsIERpcgpzb2ZvcnQgRGVpbmUgS2VobGUgYXVmenVzY2hsaXR6ZW4sIHdlbm4gRHUgaXJnZW5kd2FzIGZhbHNjaGVzIG1hY2hzdC4KRXIgaXN0IGFic29sdXQgZml0LgpFciB0cmFlZ3QgKGJ1ZykgS2VpbiBNaXRnbGllZC4KRXIgdHJhZWd0IGJlaSBzaWNoOgoKS2VpbiBNaXRnbGllZCwgZGVyIGFybWUuLi4gOigKLUxpbGFmLCBlaW5lbiBQYXJhb3JrIHRyb2VzdGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtlaW4gTUl0Z2xpZWQhIDspIChSaW5nb3IsIDI4LiBKYW4gMTk5OCwgMTQ6MDk6MDgpOgp+IyEgcm49TGlsYWYgcnQ9ODg1OTkyNTE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg1OTkyNTE1ClNjaGF1dCBnYW56IHNvIGF1cywgYWxzIHNvbGx0ZSBkYXMgZWluIEtyYWdlbiBtaXQgUmFuZ2FiemVpY2hlbiBmdWVyIGRpZQpLYWVtcGZlciBzZWluLiBBYmVyIGRhIGRlciBPcmsga2VpbmUgS2FydGVpa2FydGUgaW0gU3RydXYgaGF0LCBkYSBlciBuaWUKb3JkZW50bGljaCBpbiBkaWUgR2lsZGUgZWluZ2V0cmV0ZW4gaXN0ICh3YWVyIGF1Y2ggbm9jaCBzY2hvZW5lciA7LSkgLi4uCgpSaW5nb3IuIEZyYWd0IHNpY2ggbm9jaCBpbW1lciwgd2VyIGRlbiBXZWdoaWVyIGF1Zmdlbm9tbWVuIGhhdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBBYmd1Y2tlbi4gKEFuYXRvbCwgMjguIEphbiAxOTk4LCAyMzoyODo0NSk6Cn4jISBybj1BbGJvaW4gcnQ9ODg1ODk3Mjk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0NzY1MTIxCgpBbGlhcz8gSm8uLi4KCiBoenJucGZnbG16ICAgICA9IHRvZXRlIHJpbmdvcgoKRGVuIHZlcnN0ZWh0IHZlcm11dGxpY2ggd2llZGVyIGthdW0gZWluZXIsIGFiZXIgZWdhbC4uLgpBbmF0b2wgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJnZXNzbGljaGtlaXQgKFJvY2h1cywgMjkuIEphbiAxOTk4LCAxNTozNzozMCk6CkR1IHRlaWxzdCBGcmV1bmQgbWl0OiB3YXMgbGllZiBlaWdlbnRsaWNoIGluIGRlciBzbmVhaz8KPiBFaW4gRnJldW5kIHRlaWx0IERpciBtaXQ6IE9za2FydmVyZGFlY2h0aWdlciBGaWxtLCBkZXNzZW4gVGl0ZWwgaWNoIG5pY2h0IAptZWhyCkVpbiBGcmV1bmQgdGVpbHQgRGlyIG1pdDogd2Vpc3MuIERhIHNwaWVsdCBlaW4gQ2hhcmFrdGVyZGFyc3RlbGxlciwgZGVzc2VuCkVpbiBGcmV1bmQgdGVpbHQgRGlyIG1pdDogTmFtZW4gaWNoIGltbWVyIHZlcmdlc3NlLCBlaW5lbiBuZXVyb3Rpc2NoZW4sIGFsdGVuCkVpbiBGcmV1bmQgdGVpbHQgRGlyIG1pdDogU2NocmlmdHN0ZWxsZXIsIGRlciBzZWhyLCBzZWhyIGRpcmVrdCB1bmQgYWJsZWhuZW5kCkVpbiBGcmV1bmQgdGVpbHQgRGlyIG1pdDogenUgYW5kZXJlbiBNZW5zY2hlbiBpc3QuCkVpbiBGcmV1bmQgdGVpbHQgRGlyIG1pdDogRnJhZ2UgbWljaCBqZXR6dCBuaWNodCwgb2IgaWNoIGVpbiBQcm9ibGVtIG1pdCBOYW1lbgpFaW4gRnJldW5kIHRlaWx0IERpciBtaXQ6IGhhYmUuLi4gOykKRHUgdGVpbHN0IEZyZXVuZCBtaXQ6IGhhc3QgZHUgZWluIHByb2JsZW0gbWl0IG5hbWVuPwpFaW4gRnJldW5kIHJ1ZnQ6IEFuIGRlbiwgZGVyIG1pciBnZXJhZGUgZXR3YXMgbWl0Z2V0ZWlsdCBoYXQ6IEljaCBoYWJlIERlaW5lbgpFaW4gRnJldW5kIHJ1ZnQ6IE5hbWVuIHZlcmdlc3Nlbi4gU29ycnkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobT8gKEd1bmR1ciwgMjkuIEphbiAxOTk4LCAxOToxMzoyNik6CkljaCBtdXNzIGphIHVtd2VyZmVuZCBzZWluOgoKRGFuY2VyIGdpYnQgRGlyIGVpbmVuIHRpZWZlbiB1bmQgIGhpbmdlYnVuZ3N2b2xsZW4gS3Vzcy4KRHUgc2Nod2Vic3QgaW0gNy4gSGltbWVsLgpEYW5jZXIgdGFwcHN0IGF1ZiB3dWNodGlnZW4gU2FuZHRpZ2VycHJhbmtlbiBuYWNoIEhhdXNlLgpEYW5jZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpIYWNoamEgOi0pCkd1bmR1cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IEFiZ3Vja2VuLiAoQWNyaW1vbiwgMjkuIEphbiAxOTk4LCAyMTowMDo0OCk6Cn4jISBybj1BbGJvaW4gcnQ9ODg1ODk3Mjk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0NzY1MTIxCmRhcyBnZWh0IHNlbGJzdHZlcnN0YWVuZGxpY2ggc286Cgp3ZWcgID0gbGFzcyAkKiBmYWxsZW4KCkFjcmltb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBBYmd1Y2tlbi4gKFJpbmdvciwgMjkuIEphbiAxOTk4LCAyMToyMTowNik6Cn4jISBybj1BY3JpbW9uIHJ0PTg4NjEwNDA0OCByZz1zY2htYXJybgp+IyEgdGlkPTg4NDc2NTEyMQpVbmQgZGllIEFid2VzZW5oZWl0c21lbGR1bmdlbiBzZXR6dCBEdSBkYW5uIG1pdCBcd2VnPwoKQWxzbyBzb29vIHZpZWxlIEJlZmVobGUgZ2lidHMgaW0gTUcgYXVjaCBuaWNodCwgZGFzcyBtYW4gc2ljaCBkaWUgYXVjaCBub2NoCm1pdCBBbGlzIHVlYmVyc2NocmVpYmVuIG11ZXNzdGUgOy0pCgpSaW5nb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBBYmd1Y2tlbi4gKEFjcmltb24sIDI5LiBKYW4gMTk5OCwgMjE6Mjg6MTgpOgp+IyEgcm49UmluZ29yIHJ0PTg4NjEwNTI2NiByZz1zY2htYXJybgp+IyEgdGlkPTg4NDc2NTEyMQpuZWluLCBzZWxic3R2ZXJzdGFlbmRsaWNoIG1pdCAiYWJ3ZXNlbmQiOgoKYWJ3ZXNlbmQgICAgICAgPSB3ZWcgJCoKCkRlbiBCZWZlaGwgIndlZyIgYWxzIEJlZmVobCB6dW0gQWJ3ZXNlbmhlaXRzbW9kdXMgc2V0emVuIGZpbmQgaWNoIHNjaG9uIHNlaHIKZGFuZWJlbi4KCkFjcmltb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBBYmd1Y2tlbi4gKFFpdGVzcywgMzAuIEphbiAxOTk4LCAxMzoxMzowNSk6Cn4jISBybj1BbGJvaW4gcnQ9ODg1ODk3Mjk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0NzY1MTIxCmwgPSBsaWNodCAKbGwgPSBsYWVjaGxlCmxuID0gbmltbSBhbGxlcyBhdXMgbGVpY2hlICQqCm5wID0gbmltbSBhbGxlcyBhdXMgcGFrZXQKc3AgPSBzdGVja2UgJCogaW4gcGFrZXQKCnphYSA9IHppZWhlIGFsbGVzIGFuCgpuYWVtbGljaAoKUUkqKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IEFiZ3Vja2VuLiAoQWxib2luLCAzMC4gSmFuIDE5OTgsIDEzOjM4OjU0KToKfiMhIHJuPUFjcmltb24gcnQ9ODg2MTA1Njk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg0NzY1MTIxCmljaCBoYWJlIGF1Y2ggbWFsIGluIG1laW5lciBBbGktS2lzdGUgZ2VrcmFtdDoKCiA/ICAgICAgPSB0ZWlsZSB4eHggbWl0IE9iIGljaCBEaWNoIGxpZWJlLCB3ZWlzcyBpY2ggbmljaHQuCk5hIGphIGRhbWl0IElociBuaWNodHMgZmFsc2NoZXMgZGVua3Q6IGljaCBoYXR0ZSBkZXIgUGVyc29uIGVpbiBHZWRpY2h0IAp2b24gR29ldGhlIHZvcmdldHJhZ2VuIAoKIGFoICAgICA9IC1hIEh1aHUgSHVlcGZlcgood2llIG1hbiBpbnMgTXVkIGh1aHV0IHNvIGh1aHV0IGVzIGhlcmF1cykKYXcgICAgID0gdGVpbGUgemFiYXR0YSBtaXQgQVVGV0FDSEVOISEhCmMgICAgICA9IHdlY2tlIGRyb2xsaQpocCAgICAgPSBzYWcgaGFsbG8gcGxhc21hIAprYSAgICAgPSB0ZWlsZSAkMSBtaXQga2VpbmUgQWhudW5nLHR1dCBtaXIgZWNodCBsZWlkIDooCihhbHRiZWthbm50ZXIgS2xhc3Npa2VyIHVtIGFscyBXdXJzdG1hZ2llciB2b24gQW5mYWVuZ2VyZnJhZ2VuIHZlcnNjaG9udAp6dSBibGVpYmVuKSB6bSAgICAgPSB6aWVsZSBmbGFtbWVud2VyZmVyIGF1ZiAkMQoKIGtuZWlmICA9IDprbmVpZnQgT2V0dGkgaW4gZGVuIEhpbnRlcm4uCihzY2hhZGUgbW9tZW50YW4gZ2VodHMgbmljaHQpCnN1ICAgICA9IC1HOmFwcGxhdWRpZXJ0IFN1c2hpLGRlbm4gZGFzIGhhdCBlciBnYW56IGFsbGVpbmUgZ2VtYWNodC4gIDspCiB0dCAgICAgPSB0cmV0ZSB0b3JmZHVlbmcgL2luIGRpZSBFaWVyIAp3ICAgICAgPSBzYWcgd2lkZXJzcHJ1Y2ggCihvaCB3aWUgcGVpbmxpY2gsIHNvbGx0ZSBuYXR1ZXJsaWNoICdzYWcgRWluc3BydWNoJyBoZWlzc2VuIDopCnptICAgICA9IHppZWxlIGZsYW1tZW53ZXJmZXIgYXVmICQxCgoKQWxib2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBudXIgZnVlciBqYXNwZXIgOikgYml0dGUgc29mb3J0ICdxJyBkcnVlY2tlbiAoR3JpbW1ib3JuLCAzMC4gSmFuIDE5OTgsIDE3OjI5OjA5KToKfiMhIG9uPUFjcmltb24gb3Q9ODg2MTc3NTUwIG9nPXdpdHplCn4jISBybj1aYXJuaXlhIHJ0PTg4NjE2MjgxMCByZz13aXR6ZQp+IyEgdGlkPTg4NTgyNjczNQpEYW5rIEphc3BlciBpc3QgZGFzIE5pdmVhdSBkaWVzZXIgR3J1cHBlIGRldXRsaWNoIHVudGVyIDAgZ2VydXRzY2h0LgpHcmF1ZW5oYWZ0LiBNaXIgaXN0IGZhc3QgZGFzIEtvdHplbiBnZWtvbW1lbi4KKE5pY2h0IGRhc3ogaWNoIGRlbiBNdWVsbCBhdWNoIG5vY2ggZ2VsZXNlbiBoYWV0dGUuLi4pCkFybWUgS3JlYXR1cmVuLCBkaWUgc2ljaCBhbiBzb3dhcyBlcmdvZXR6ZW4gbXVlc3Nlbi4KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlciBzY2h1ZXR0ZWx0IG1pdGxlaWRpZyBkZW4gS29wZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogbnVyIGZ1ZXIgamFzcGVyIDopIGJpdHRlIHNvZm9ydCAncScgZHJ1ZWNrZW4gKEdyaW1tYm9ybiwgMzAuIEphbiAxOTk4LCAxNzozMToxOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODg2MTc3NzQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg1ODI2NzM1CkpvLCBzbyBpc3RzIGd1dC4KSW1tZXIgZmVzdGUgdWViZXIgU2FjaGVuIHNjaGltcGZlbiAob2RlciBtZWluZXR3ZWdlbiBrb3R6ZW4pLCBkaWUgbWFuIHNpY2gKZGFubiBhYmVyIG5hdHVlcmxpY2ggZ2FyIG5pY2h0IGFuZ2VzZWhlbiBoYXQuIFNvIGdlaGVuIHdpciBTY2hyaXR0IGZ1ZXIKU2Nocml0dCBpbiBSaWNodHVuZyBHbGF1Ynd1ZXJkaWdrZWl0Li4uCgpEaWUgbWVpc3RlbiB3YXJlbiB3aXJrbGljaCBuaWNodCBzY2hsaW1tLCBzY2hsaW1tIHdhciBudXIsIGRhc3MgbmljaHQgendpc2NoZW4KZ3V0IHVuZCBsYW5nd2VpbGlnIHVudGVyc2NoaWVkZW4gd3VyZGUgc29uZGVybiBNYXNzZSB3b2hsIGZlaGxlbmRlIEtsYXNzZQplcnNldHplbiBzb2xsdGUuIE5hamEsIGFiZXIgamV0enQgd2lzc2VuIHdpciB3ZW5pZ3N0ZW5zLCBkYXNzIEphc3BlciBlaW4gdG90YWwKdG9sbGVyIFdpdHpib2xkIGlzdC4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZSAoWmVwaHlyLCAzMC4gSmFuIDE5OTgsIDE4OjMwOjIzKToKClJpbmdvciB0ZWlsdCBEaXIgbWl0OiBWaWVsbGVpY2h0IGthbm4gaWNoIG1pY2ggamEgYXVjaCBiZW5laG1lbi4KCmtpY2hlcm5kLCBaZXBoeXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBkb29mZSBBbmR5IChDYWtleSwgMzAuIEphbiAxOTk4LCAxODozNDowMCk6CkthdW0gaXN0IGVpbiBuZXVlcyBHZWJpZXQgZHJhbiwgZ2lidHMgUHJvYmxlbWUsIGViZW4gYmVpIGRlciBEdWVzdGVyd2VpZGUgaW4KQXVnZSBkZXMgVGV1ZmVsczoKCkFuZHkgc2FndDogV28gc2luZCB3aXIgPwo+IEFuZHkgdmVyZmx1Y2h0IERpY2guCkFuZHkgZ2VodC4KCkNha2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHb2V0dGxpY2hlciBJcnJ0dW0gKExpZ2h0bmluZywgMzAuIEphbiAxOTk4LCAxODo0MzoyOCk6CgpEdSB3aXJrc3QgZWluIFd1bmRlci4KRHUgZnVlaGxzdCBEaWNoIHBsb2V0emxpY2ggcGFwcGVuc2F0dC4KCkRlciBPcmsga3JhZWNoenQ6IFdlbm4gd2lyIGRvY2ggbnVyIHdhcyB6dSBlc3NlbiBoYWV0dGVuLgoKRGVyIE9yayBzYWd0OiBFaW4gc2FmdGlnZXIgSG9iYml0ISBEYXMgd2FlcnMgamV0enQhCgpJcmdlbmR3aWUgaGF0IExlbWJvbGQgZGEgZGllIFByaW9yaXRhZXRlbiBmYWxzY2ggZ2VzZXR6dCB1bmQgZGllIHdhaHJoYWZ0CkJlZHVlcmZ0aWdlbiB2ZXJrYW5udC4uLgoKTGlnaHRuaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBudXIgZnVlciBqYXNwZXIgOikgYml0dGUgc29mb3J0ICdxJyBkcnVlY2tlbiAoQWNyaW1vbiwgMzAuIEphbiAxOTk4LCAxOTowNTo1OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODg2MTc3ODc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg1ODI2NzM1CkFuZ2VzZWhlbiBoYWIgaWNocyBtaXIgc2VociB3b2hsLCB3aWUgc29sbHRlIGljaCBkZW5uIHNvbnN0IGVya2VubmVuLCBkYXN6IGVzCnVudGVyIGFsbGVyIFNhdSBpc3Q/ClVuZCBzb2dhciBnZWxlc2VuIGhhYiBpY2ggZWluZW4gdm9uIHNlaW5lbiBBcnRpa2VsbiwgYWJlciB6dWdlYmVuIHdpbGwgaWNoIGRhcwplaWdlbnRsaWNoIG5pY2h0LgoKQWNyaW1vbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogbnVyIGZ1ZXIgamFzcGVyIDopIGJpdHRlIHNvZm9ydCAncScgZHJ1ZWNrZW4gKFd1cnplbCwgMzAuIEphbiAxOTk4LCAxOTowOToxNik6Cn4jISBybj1BY3JpbW9uIHJ0PTg4NjE4MzU1OCByZz1zY2htYXJybgp+IyEgdGlkPTg4NTgyNjczNQplaW5lciBkZXIgZ2FueiBzZWx0ZW5lbiBlcmxlc2VuZW4gbW9tZW50ZTogYWNyaW1vbiB1bmQgaWNoIHNpbmQgZGEgbWFsCmF1c25haG1zd2Vpc2UgZWluZXIgbWVpbnVuZy4KYWJlciBkYXMgc3RlaHQgamV0enQgamEgYXVjaCBpbiBkZXIgcmljaHRpZ2VuIHJ1YnJpay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBoaWxmZSEgaWNoIGJpbiAoZmFzdCkgYWxsZWluZSBoaWVyIChBc21vZGlzLCAzMC4gSmFuIDE5OTgsIDIyOjA4OjE2KToKfiMhIHJuPVRoZXJpbiBydD04ODU3OTA0NzMgcmc9c2NobWFycm4KfiMhIHRpZD04ODU3OTA0NzMKU2FjaCBtYSwgd2FzIGVyd2FydGVzdCBkdSB1bSA1LjU0IFVociBpbiBkZXIgRnJ1ZWhlID8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYmVpbSBEcm9tIChUZXJpbSwgMzAuIEphbiAxOTk4LCAyMzozODo0OCk6Ck5ldWxpY2ggYmVpbSBEcm9tOgoKR25vbWUgc2FndDogbW9tLCBrdXJ6IHdhcyBhdXNwcm9iaWVyZW4uLi4KR25vbWUgbGFlc3N0IHdpZWRlciB2b24gRGlyIGFiLiBOZWJlbCBrb21tdCBhdWYgdW5kIGZvbGd0IGlobSBuYWNoIE5vcmRlbi4KR25vbWUgdGVpbHQgRGlyIG1pdDogc2Fnc3RlIG1pciBiZXNjaGVpZCwgd2VubiBlciBkYSBpcz8KRHUgdGVpbHN0IEdub21lIG1pdDogYmlzdCBkdSB2ZXJydWVja3QgPyA7KQpHbm9tZSB0ZWlsdCBEaXIgbWl0OiB3aWVzbz8gOikKRHUgdGVpbHN0IEdub21lIG1pdDogc2NoYWx0IC1tb2VyZGVyKyAKRHUgdGVpbHN0IEdub21lIG1pdDogZGFubiBrcmllZ3N0ZSBmYXN0IHJlY2h0emVpdGlnIGJlc2NoZWlkOykKR25vbWUgdGVpbHQgRGlyIG1pdDogQVJSRyA6KQoKClRzc3MsIGd1dGdsYWV1YmlnZSBTcGllbGVyIGdpYnQgZXMgamEgOykKClRlcmltLCBncmluc3Qgc2ljaCBlaW5lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkV4dHJhIGZ1ZXIgUm9jaHVzIC4uLiAoTWluZ28sIDMxLiBKYW4gMTk5OCwgMDE6MDc6MzMpOgpbVG9kOkxhcnNdIEVpbiBHb2JsaW4gaGF0IGdlcmFkZSBTYWxhZHJpb24gdW1nZWJyYWNodC4KW1RvZDpFaW4gR29ibGluXSBCcmF1Y2h0IG5vY2ggamVtYW5kIGVpbiBUYW1haG9ybnk/CgouLi4gbm8gY29tbWVudCA6KQoKR2xvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhYWFhYWFhYWFhY2guIExhbmd3ZWlsaWcuIEphYWFhYWFhYWFhYS4gKFphcGhvYiwgMzEuIEphbiAxOTk4LCAwMzoyNToxNSk6Ck5peCBpc3QgbG9zLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUHJvbXB0ZSBFcmZ1ZWxsdW5nIChUaGVyaW4sIDMxLiBKYW4gMTk5OCwgMDc6MTM6MzQpOgpbTW9lcmRlcjpHZWlzdCBlaW5lciBTcGlubmVdIE5BRUNIU1RFUyBNQUwgTkVITSBJQ0ggRElDSCBBVUNIIE1JVCwgUmF5ZWshCltNb2VyZGVyOkdlaXN0IGVpbmVyIFNwaW5uZV0gMDc6MDk6NTUKCltUb2Q6TGFyc10gRWluIFNwaW5uZW5nZWlzdCBoYXQgZ2VyYWRlIFJheWVrIHVtZ2VicmFjaHQuIDA3OjEwOjU1CgpOYSB3ZW5uIGRhcyBrZWluIGVpbmdsb2VzdGVzIFZlcnNwcmVjaGVuIGlzdC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzdWNoZSBEaW5ncyB1bmQgc28gLSBGRVVFUlZFUlNJQ0hFUlVORyAoQ2F0d2VhemxlLCAzMS4gSmFuIDE5OTgsIDEzOjMwOjU3KToKfiMhIG9uPVFpdGVzcyBvdD04ODYxNjI4NjIgb2c9YWxsZ2VtZWluZXMKbmFqYSwgYWxsZWluZSwgYW4gZGVyIHN0ZWxsZSwgd28gZGFzIGJldHQgc3RlaHQgaXN0IGRlciBxdWFkcmF0bWV0ZXItd2VydApJTU1FTlMgIQpXZW5uIGRhIGVpbmVyIGRyaW5saWVndCwgZGFubiBsaWVnZW4gYXVmIDIgcW0gRVJIRUJMSUNIIG1laHIgYWxzIDIwMDAgbWFjay4KClFJKioKICAgIHdpcmQgc2lubmlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzdWNoZSBEaW5ncyB1bmQgc28gLSBGRVVFUlZFUlNJQ0hFUlVORyAoQ2F0d2VhemxlLCAzMS4gSmFuIDE5OTgsIDEzOjMxOjAzKToKfiMhIG9uPUdyaW1tYm9ybiBvdD04ODYxNjQwOTEgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVFpdGVzcyBydD04ODYxNjI4NjIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04ODYxNjI4NjIKSXJydHVtLiBEZXIgTWF0ZXJpYWx3ZXJ0IGVpbmVzIE1lbnNjaGVuIGlzdCAod2FzIGRpZSBFbGVtZW50ZSBiZXRyaWZmdCwKenVtaW5kZXN0KSBpbiBkZXIgR3JvZXNzZW5vcmRudW5nIHZvbiBwYWFybWFya2Z1ZmZ6aWNoLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBzdWNoZSBEaW5ncyB1bmQgc28gLSBGRVVFUlZFUlNJQ0hFUlVORyAoQ2F0d2VhemxlLCAzMS4gSmFuIDE5OTgsIDEzOjMxOjExKToKfiMhIG9uPUtleSBvdD04ODYxNzYxNjQgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUdyaW1tYm9ybiBydD04ODYxNjQwOTEgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04ODYxNjI4NjIKQWJlciBhbGxlaW5lIGRpZSBPcmdhbmUgYnJpbmdlbiBlaW5pZ2VzIDopCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHN1Y2hlIERpbmdzIHVuZCBzbyAtIEZFVUVSVkVSU0lDSEVSVU5HIChDYXR3ZWF6bGUsIDMxLiBKYW4gMTk5OCwgMTM6MzE6MTcpOgp+IyEgb249WmFybml5YSBvdD04ODYxNzYzODYgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUtleSBydD04ODYxNzYxNjQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04ODYxNjI4NjIKdmVyYnJhbm50ZSBPcmdhbmU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBzdWNoZSBEaW5ncyB1bmQgc28gLSBGRVVFUlZFUlNJQ0hFUlVORyAoQ2F0d2VhemxlLCAzMS4gSmFuIDE5OTgsIDEzOjMxOjIzKToKfiMhIG9uPUtleSBvdD04ODYxNzY1MDggb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVphcm5peWEgcnQ9ODg2MTc2Mzg2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODg2MTYyODYyCk5hamEgbmVuIEFiZW5kZXNzZW4ga29zdGV0IGF1Y2ggbWVociBhbHMgbmUgbWFya2Z1ZmZ6aXNjaCA6KQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBzdWNoZSBEaW5ncyB1bmQgc28gLSBGRVVFUlZFUlNJQ0hFUlVORyAoQ2F0d2VhemxlLCAzMS4gSmFuIDE5OTgsIDEzOjMxOjI1KToKfiMhIG9uPVNpbHZhbmEgb3Q9ODg2MTk2NTM0IG9nPWFsbGdlbWVpbmVzCn4jISBybj1aYXJuaXlhIHJ0PTg4NjE3NjM4NiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg4NjE2Mjg2MgpOYWphLCB2ZXJicmFubnQgZGFubiBuaWNodCBtZWhyLiBEYWhlciBqYSBkZXIgRWluc2F0eiBkZXIgVmVyc2ljaGVydW5nLiA6KQoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbm90dHkgJiBTbWVhZ29sICYgRGFzIE1lc3NlciAoWmFwaG9iLCAgMS4gRmViIDE5OTgsIDE4OjA4OjAxKToKQWxzIEFubWVya3VuZzogV2lyIEthZW1wZmVyIGhhYmVuIGVpbmVuIGlkZW50aWZpemllcmUtU3RlaW4KCkxldHp0ZW5zIGluIGRlciBPcmtob2VobGU6ClNtZWFnb2wgc3RyZWljaHQgbWl0IGVpbmVtIHNlbHRzYW1lbiBTdGVpbiB1ZWJlciBlaW5lbSBNZXNzZXIuCm9vb2hoaGhoaGgKU21lYWdvbCBnaWJ0IFNub3R0eSBkYXMgTWVzc2VyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc28gZWluIHNjaG1hcnJuIChPdmVybG9yZCwgIDEuIEZlYiAxOTk4LCAyMzo1NTo0OCk6CkF1c3p1ZyBhdXMgbWVpbmVyIEthcnRlaWthcnRlIChUUlZFUykuLi5tYWNodCBzZWluZSBCZXR0ZW4gbmllLgoKSW0gU2NobGFmc2FhbDoKbWFjaGUgQmV0dAoKV2llIGJpdHRlPwoKbWFjaGUgYmV0dGVuCldpZSBiaXR0ZT8KCm1hY2hlIGRlaW4gYmV0dApMdWVmdHVuZ3NzY2hhZWNodGUgc2llaHN0IER1IGhpZXIgbmljaHQuIER1IHNvbGx0ZXN0IGVzIHdvYW5kZXJzIHZlcnN1Y2hlbi4KCk92ZXJsb3JkLCBzZWx0ZW4gc28gZ2VsYWNodCBoYWJlbmQuOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNhbmQgKEdyaW1tYm9ybiwgIDIuIEZlYiAxOTk4LCAwMDo0NToxNSk6Cn4jISBvbj1Hd2VuZG9saW4gb3Q9ODg2Mjc0NTkxIG9nPWFsbGdlbWVpbmVzCkhhbGxvIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKPz8/IChZZW5kaSwgIDIuIEZlYiAxOTk4LCAxOTozNjowNik6CkVpbiBQYXBhZ2VpIGZsYXR0ZXJ0IGhlcmVpbi4KRGVyIFBhcGFnZWkgc2FndDogZGFubiBrYW5uc3QgZHUgaW1tZXIgZHVyY2ggZHJ1ZWNrZW4gZGVyIDQgaGVpbnogZm9sZ2VuLiBlZ2FsCndvIEhhbmdvdmVyIHNhZ3Q6IGVyIGhpbmdlZ2FuZ2VuIGlzdC4KRGVyIFBhcGFnZWkgc2FndDogTm9yYSEgTm9yYSEKRWluIFBhcGFnZWkgZmxhdHRlcnQgbmFjaCBXZXN0ZW4uCgoKV2FzIGVyemFlaGx0IEhhbmdvdmVyIGRhIGVpZ2VudGxpY2g/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChZZW5kaSwgIDIuIEZlYiAxOTk4LCAyMDo0NToxMCk6ClVuZ2VzY2huaXR0ZW46CgpbQWxsZ2VtZWluOlNuaWJyaWxdIHdpZSBrb21tdCBtYW4gYXVzIGRlbSBlaXN3ZWloZXIgcmF1cz8KW0FsbGdlbWVpbjpTbmlicmlsXSBzY2huZWxsIQpbQWxsZ2VtZWluOkZldWVyd2Vocl0gRHUgYmlzdCB6dSBzY2h3ZXIuLi4KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgU25pYnJpbApbVG9kOkxhcnNdIHVtZ2VicmFjaHQuCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEtvbXBvbmVudGVubmFtZW4gKFBhdHJ5biwgIDMuIEZlYiAxOTk4LCAxNTowODoxOSk6Cn4jISBvbj1IYXJkaWwgb3Q9ODg2NDI3OTcyIG9nPWdpbGRlbi56YXViZXJlcgp+IyEgcm49UGF0cnluIHJ0PTg4NjQyMTE2NSByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD04ODYzNjgzMTAKCkljaCB3aWxsIEFkbGVyZmVkZXJuLgpTbyB3aWUgZGFtYWxzIGRpZSBQbGF5bW9iaWwtSW5kaWFuZXIsIG1pdCBTdGlybmJhbmQgYW0gS29wZiBiZWZlc3RiYXIuCgo0LDU6Myw1OjEsNToxCgotSGFyZGlsLiBIb3VnaCEgUm90ZXIgTWFubiBoYXQgZ2VzcHJvY2hlbi4KOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBLb21wb25lbnRlbm5hbWVuIChQYXRyeW4sICAzLiBGZWIgMTk5OCwgMTU6MDg6MjUpOgp+IyEgb249U2hvcmthbiBvdD04ODY0OTAyOTkgb2c9Z2lsZGVuLnphdWJlcmVyCn4jISBybj1QYXRyeW4gcnQ9ODg2NDIxMTY1IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTg4NjM2ODMxMApBbHNvIGljaCBiaW4gYXVjaCBmdWVyIFNjaHJlaWJmZWRlcm4KCjQsNTozLDU6Miw1KDMzKToxCgpTaG9ya2FuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFsYW4sICAzLiBGZWIgMTk5OCwgMTk6MTk6MzUpOgoKCltBbGxnZW1laW46U2x5Zm94XSBEZXIgU2NoYWNodCB3YWVyIGZ1ZXIgZWluZW4gWlQgZnJlaSA8MTk6MTA6MzA+CltBbGxnZW1laW46QWxhbl0gamFhYSEgOi0pIDwxOToxMDozOT4KW1RvZDpMYXJzXSBTY2hyZWluZW1ha2VycyBpaHJlIFNjaHdlc3RlciBoYXQgZ2VyYWRlIEFsYW4gdW1nZWJyYWNodC4KW1RvZDpMYXJzXSA8MTk6MTM6MjE+CltUb2Q6U2NocmVpbmVtYWtlcnMgaWhyZSBTY2h3ZXN0ZXJdIFNjaGljaHQgaW0gU2NoYWNodCEgIDwxOToxMzoyMT4KCgpEdW1tIGdlbGF1ZmVuIDotKQogLSBBbGFuIC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCBrbGFnZSBhbiEgKFllbmRpLCAgNC4gRmViIDE5OTgsIDE0OjQzOjA1KToKSWNoIGtsYWdlIGFuIGRlbiBXYW5rZWxtdXQgZGVyIEZyYXVlbjoKCj4gU2Fsb21lIHNjaG1hdHogRGlyIGVpbmVuIGRpY2tlbiBLdXNzIGF1ZiBkaWUgQmFja2UgdW5kIHZlcnNjaHdpbmRldCBpbiBlaW5lbQpOZWJlbC4KCi4uLiB1bmQga3VyeiBkYXJhdWY6Cgo+IFNhbG9tZSB6aWVodCBEaXIgRGVpbmUgSGF1dCBnYW56IGxhbmdzYW0gYWIgdW5kIHNjaHdlYnQgaGFlbWlzY2ggZ3JpbnNlbmQKbmFjaCBuYWNoIFdlc3Rlbi4KCk1hbCBnYW56IGRhdm9uIGFiZ2VzZWhlbiwgZGFzcyBzaWUgbmljaHQgZGllIDMuUGVycy5TaW5nLiB2b24gInNjaG1hdHplbiIgenUKYmlsZGVuIGZhZWhpZyBpc3QsIG1hbCBkYXZvbiBhYmdlc2VoZW4sIGRhc3Mgc2llIGJlaW0gU2Nod2ViZW4gbmFjaCBuYWNoCldlc3RlbiBlaW5lIFdpZWRlcmhvbHVuZ3N0YWV0ZXJpbiBpc3QsIG1hbCBkYXZvbiBhYmdlc2VoZW4sIGRhc3MgaWNoLCB3aWUKdmVybXV0bGljaCBkaWUgbWVpc3RlbiBCZXdvaG5lciBkZXMgTUcsIG1laW5lIEhhdXQsIHdlbm4gZGVubiB1ZWJlcmhhdXB0LCBnZXJuCnNlbGJlciB6dSBNYXJrdGUgdHJhZ2UgdW5kIGRpZXMgbmljaHQgZGVsZWdpZXJlIC0tCnZvbiBhbGwgZGllc2VuIEF1ZXNzZXJsaWNoa2VpdGVuIGFsc28gYWJnZXNlaGVuIGlzdCBkaWVzZXMgVmVyaGFsdGVuIGRvY2ggaW4KaG9lY2hzdGVtIE1hc3plIChTY2h3ZWlnLCBBY3JpbW9uISkgYmVzb3JnbmlzZXJyZWdlbmQuCldhcyBpc3QgZGFzIGhpZXI/ICJTaWUga3Vlc3N0ZW4gdW5kIHNpZSBoYWV1dGV0ZW4gaWhuIj8KCkljaCBoYWJlIHNlbHRlbiBldHdhcyBkYWdlZ2VuLCB2b24gd2lsZGZyZW1kZW4gRnJhdWVuIGluIGRlciBQb3N0IGFiZ2VrbnV0c2NodAp6dSB3ZXJkZW4gKE9LLCBiZWltIEdsb2JhbC1TY2htYXR6IGF1Y2ggd2FzIGFienVrcmllZ2VuKSwgdW5kIGFuIFNhbG9tZXMgZXR3YXMKc29uZGVybGljaGVuIFNpbm4gZnVlciB0aGVhdHJhbGlzY2hlIEFiZ2FlbmdlIGhhdHRlIGljaCBtaWNoIGphIGF1Y2ggc2Nob24KZmFzdCBnZXdvZWhudCwgYWJlciBfaGFldXRlbl8gaXN0IGphIHdvaGwgZWluZSBuZXVlIExpZ2EgYmVpIGRlbiBTTS1TcGllbGVuLi4uCgoKWWVuZGkKICAgICAgc2NobWV0dGVydCAiTGEgZG9ubmEgZSBtb2JpbGUiLCBzdGVpZ3QgZXJob2JlbmVuIEhhdXB0ZXMgdm9uIHNlaW5lcgpTZWlmZW5raXN0ZSB1bmQgcmF1c2NodCBpbiBnZXJlY2h0ZW0gWm9ybiB6dSBGb25kaWwgRmFyaW4sIHVtIG1pdCBkZW0gYWx0ZW4KQnVlY2hlcnd1cm0gdWViZXIgZGllIFNjaGxlY2h0aWdrZWl0IGRlciBGcmF1ZW4genUgcGhpbG9zb3BoaWVyZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NoKioqKiAoRW1iZSwgIDQuIEZlYiAxOTk4LCAyMToyOToxOSk6Ck1pbmdvIGJldHJpdHQgZGllc2UgV2VsdC4KT3ZlcmxvcmQgcnVmdDogU0NIRUlTU1NTRUVFRUVFRQpNaW5nbyB2ZXJsYWVzc3QgZGllc2UgV2VsdC4KCmtlaW4ga29tbWVudGFyLiBlTUJlZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoVGhlcmluLCAgNS4gRmViIDE5OTgsIDAzOjMyOjI2KToKW0FsbGdlbWVpbjpBbHBoYV0gV2FzIG11c3MgaWNoIG1hY2hlbiwgZGFtaXQgZXIgbWlyIGVzIGdpYnQ/CltBbGxnZW1laW46VGhlcmluXSB3aWUgYmVpIGFsbGVuIG1vbnN0ZXJuLi4uIFRPRVRFTiBUT0VURU4gVE9FVEVOCkFscGhhIHRlaWx0IERpciBtaXQ6IFdpcmtsaWNoIHRvZXRlbj8KQWxwaGEgdGVpbHQgRGlyIG1pdDogaWNoIHdpbGwgbmljaHQgc2VsYmVyIGF1ZiAtVCBlcnNjaGVpbmVuCltUb2Q6TGFyc10gRWluIFNlZWJhZXIgaGF0IGdlcmFkZSBBbHBoYSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTZWViYWVyXSBXZXIgc3RvZXJ0IG1laW5lbiBTY2hsYWY/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChQYXRyeW4sICA1LiBGZWIgMTk5OCwgMTA6NDk6NDUpOgp+IyEgcm49VGhlcmluIHJ0PTg4NjY0NTk0NiByZz1zY2htYXJybgp+IyEgdGlkPTg4NjY0NTk0Ngp3aWUgcmVjaHQgZXIgaGF0dGUuIG9iIGVyIHdvaGwgdm9yaGVyIG1laW5lbiBuYW1lbiBhbiBkZW0gbmV0dGVuIGtlcmwKZ2VsZXNlbiBoYXQ/IHp1bWluZGVzdCBoYXQgZXIgZGVtIG5pY2h0IGdlbnVnIHdlcnQgYmVpZ2VtZXNzZW4gOykKCi0tLS0tLQpwYXRyeW4gZ3JpbnN0IGltbWVyIG5vY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRkxXIChNaW5nbywgIDUuIEZlYiAxOTk4LCAxMjo0NDowOSk6Cn4jISBybj1QYXRyeW4gcnQ9ODg2NjcyMTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg2NjQ1OTQ2CkljaCBnbGF1YiwgZXIgbGllc3Qga2VpbmUgWmVpdHVuZyA7LSkKCkdsb2luIC4uLiBsYXMgZG9jaCBkYSBuZXVsaWNoIHdhcyB2b24gJ0F1ZndlcnR1bmcnIC4uLiBiZWkgUGF0cnluIGltbWVyCiAgICAgICAgICBTRUhSIGVybnN0IHp1IG5laG1lbiA6KSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZXN0ZXJuIGlubm5lciBLbmVpcGUgKEhvYm8sICA2LiBGZWIgMTk5OCwgMDg6MDg6MzkpOgpCb2luZyBoYXQgZWluIFNwZXppIHZvciBzaWNoIHN0ZWhlbi4KCk11YWRpYjogUmllY2h0IG1hbiBtZWluIFphdHppa2kgc2Nob24/CkJvaW5nOiBWb24gRGVpbmVtIE11bmRnZXJ1Y2ggaXN0IG1laW4gQmllciBnYW56IHNjaGxlY2h0IGdld29yZGVuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdlc3Rlcm4gaW5ubmVyIEtuZWlwZSAoR3JpbW1ib3JuLCAgNi4gRmViIDE5OTgsIDA4OjU5OjUyKToKfiMhIHJuPUhvYm8gcnQ9ODg2NzQ4OTE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg2NzQ4OTE5CkFjaCB3YXMsIGRhcyB3YXIgYmVzdGltbXQgc2Nob24gc2NobGVjaHQuCk9kZXIgZ2lidHMgaW4gQmF5ZXJuIG5ldWVyZGluZ3MgS29lbHNjaD8gOy0pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnR5cG8gKExpLCAgNi4gRmViIDE5OTgsIDA5OjQwOjMyKToKRWJlbiwgYmVpbSBkdXJjaGZvcnN0ZW4gdm9uIHNoaW5vYmlzIHJlcC1maWxlOgpUWVBPIHZvbiBhKioqKiBbL2QvZmVybndlc3Qvc2hpbm9iaS9rb25mdV9xdWVzdC9yb29tL3ZlcmxpZXNzXQp2ZXJsaWVzIHNjaHJlaWJ0IHNpY2ggbWl0IG51ciBlaW5lbSBmICEgKHZlcmxpZXMgd2FyIG1pdCB6d2VpIHMKZ2VzY2hyaWViZW4uLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYXRyeW4gdW5kIHNlaW5lIEJpYmxpb3RoZWthcmluIChIZXJkYWwsICA2LiBGZWIgMTk5OCwgMTA6NTE6NDUpOgpQYXRyeW4ga29tbXQgc2NodWVjaHRlcm4gaGVyZWluLgo+IHNjaGF1CkRpZXMgaXN0IGRpZSBCaWJsaW90aGVrIGRlciBBa2FkZW1pZS4gRGllIFdhZW5kZSBoaWVyIHNpbmQgYmlzIGF1ZiBlaW4gZ3Jvc3NlcwpGZW5zdGVyIGltIFdlc3RlbiB1bmQgZGllIFR1ZXIgaW0gT3N0ZW4gdm9sbHN0YWVuZGlnIHZvbiByaWVzaWdlbgpCdWVjaGVycmVnYWxlbiBiZWRlY2t0LCBpbiB3ZWxjaGVuIHVuemFlaGxpZ2UgU2NocmlmdHJvbGxlbiB1bmQgbmF0dWVybGljaAphdWNoIEJ1ZWNoZXIgenUgZmluZGVuIHNpbmQuIFZpZWxlIGRhdm9uIHNpbmQgbnVyIGZ1ZXIgZGllIEt1cmF0b3JlbiBvZGVyIGRpZQpNYWdpZXIgaW50ZXJlc3NhbnQsIGFiZXIgZXMgZmluZGVuIHNpY2ggYXVjaCBnZW51ZWdlbmQgQnVlY2hlciB6dSBkZW4KZWluemVsbmVuIFphdWJlcnNwcnVlY2hlbiBkZXIgR2lsZGUuIEluIGRlbSBSYXVtIGJlZmluZGVuIHNpY2ggYXVjaCBzZWhyIHZpZWxlClRpc2NoZSBhbiBkZW5lbiBtYW4gaW4gUnVoZSBzdHVkaWVyZW4ga2FubiwgZGVubiBlcyBpc3QgcmVjaHQKdW53YWhyc2NoZWlubGljaCwgZGFzcyBtYW4gZGllIEJ1ZWNoZXIgbWl0bmVobWVuIGRhcmYuIFVlYmVyIGRlciBFaW5nYW5nc3R1ZXIKaGFlbmd0IGVpbiBncm9zc2VzIFNjaGlsZC4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG9zdGVuLgpaYXViZXJtYXVzIFBhdHJ5bi4KRWluZSBncmltbWlnZSBCaWJsaW90aGVrYXJpbi4KRWluIE11ZWxsc2NobHVja2VyLgpFaW5lIFphdWJlcmVyLUZBUS4KW0FiZW50ZXVlcjpGaXNoXSBCZXJyeSBIdWRkbGUgc2FndDogRW50d2VkZXIgaGllciBpbSBaaW1tZXIgb2RlciBpbiBlaW5lbQpbQWJlbnRldWVyOkZpc2hdIFppbW1lciBtZWluZXJCZXJyeSBIdWRkbGUgc2FndDogR2VzY2h3aXN0ZXIuCj4gaWxsdXNpb24gRGllIEJpYmxpb3RoZWthcmluIHppZWh0IHNpY2ggc2VsYmVyIGVpbmVuIG1pdCBkZW0gUm9ocnN0b2NrIHVlYmVyCmRlbiBTY2hhZWRlbCB1bmQgc3RvbHBlcnQgbmFjaCBPc3Rlbi4gT2Igc2llIHdvaGwgZXR3YXMgZmFsc2NoIGdlbWFjaHQgaGF0PwpEaWUgQmlibGlvdGhla2FyaW4gemllaHQgc2ljaCBzZWxiZXIgZWluZW4gbWl0IGRlbSBSb2hyc3RvY2sgdWViZXIgZGVuClNjaGFlZGVsIHVuZCBzdG9scGVydCBuYWNoIE9zdGVuLiBPYiBzaWUgd29obCBldHdhcyBmYWxzY2ggZ2VtYWNodCBoYXQ/ClB1bmt0ZTogMTYyKDE2MikgIDIwNigyMjYpICA3NSg3NSkgIFsgICAgXQpEZWluIFphdWJlcnN0YWIgdW50ZXJzdHVldHp0IERpY2ggYmVpIGRlbSBTcHJ1Y2guClB1bmt0ZTogMTYyKDE2MikgIDIxMigyMjYpICA3NSg3NSkgIFsgICAgXQpQdW5rdGU6IDE2MigxNjIpICAyMTMoMjI2KSAgNzAoNzUpICBbICAgIF0KQWlhbGxhIGtvbW10IGFuLgpTY2hyYWsndCdraHVsIHRpcHBlbHQgaGVyZWluLgpQdW5rdGU6IDE2MigxNjIpICAyMTQoMjI2KSAgNzAoNzUpICBbICAgIF0KQWlhbGxhIGdlaHQgbmFjaCBPc3Rlbi4KU2NocmFrJ3Qna2h1bCB0aXBwZWx0IEFpYWxsYSBoaW50ZXJoZXIuClB1bmt0ZTogMTYyKDE2MikgIDIxNSgyMjYpICA3MSg3NSkgIFsgICAgXQpQYXRyeW4gZ3JpbnN0LgpQdW5rdGU6IDE2MigxNjIpICAyMTYoMjI2KSAgNzIoNzUpICBbICAgIF0KUHVua3RlOiAxNjIoMTYyKSAgMjE3KDIyNikgIDczKDc1KSAgWyAgICBdCj4gJ0RhcyB2ZXJzY2hhZmZ0IGVpbmUgdW5oZWltbGljaGUgZW51CkR1IHNhZ3N0OiBEYXMgdmVyc2NoYWZmdCBlaW5lIHVuaGVpbWxpY2hlIGVudQpQdW5rdGU6IDE2MigxNjIpICAyMTgoMjI2KSAgNzMoNzUpICBbICAgIF0KPiAnR2VudWd0dXVuZyA6KQpEdSBzYWdzdDogR2VudWd0dXVuZyA6KQpQYXRyeW4gZ3JpbnN0LgpQdW5rdGU6IDE2MigxNjIpICAyMTkoMjI2KSAgNzQoNzUpICBbICAgIF0KRWluZSBncmltbWlnZSBCaWJsaW90aGVrYXJpbiB6aWVodCBQYXRyeW4gcGxvZXR6bGljaCBkZW4gUm9ocnN0b2NrIHVlYmVyIGRlbgpTY2hhZWRlbC4gRGFzIHRhdCBiZXN0aW1tdCB3ZWguIE9iIFBhdHJ5biB3b2hsIGV0d2FzIGZhbHNjaCBnZW1hY2h0IGhhdD8hCk1pdCBlaW5lbSBlbnR3dWVyZGlnZW5kZW0gVHJpdHQgaW4gZGVuIEhpbnRlcm4gYmVmb2VyZGVydCBzaWUgUGF0cnluCmxldHp0ZW5kbGljaCBuYWNoIGRyYXVzc2VuLgpQYXRyeW4ga29tbXQgc2NodWVjaHRlcm4gaGVyZWluLgpFaW5lIGdyaW1taWdlIEJpYmxpb3RoZWthcmluIHppZWh0IFBhdHJ5biBwbG9ldHpsaWNoIGRlbiBSb2hyc3RvY2sgdWViZXIgZGVuClNjaGFlZGVsLiBEYXMgdGF0IGJlc3RpbW10IHdlaC4gT2IgUGF0cnluIHdvaGwgZXR3YXMgZmFsc2NoIGdlbWFjaHQgaGF0PyEKTWl0IGVpbmVtIGVudHd1ZXJkaWdlbmRlbSBUcml0dCBpbiBkZW4gSGludGVybiBiZWZvZXJkZXJ0IHNpZSBQYXRyeW4KbGV0enRlbmRsaWNoIG5hY2ggZHJhdXNzZW4uClBhdHJ5biBrb21tdCBzY2h1ZWNodGVybiBoZXJlaW4uClB1bmt0ZTogMTYyKDE2MikgIDIyMCgyMjYpICA3NCg3NSkgIFsgICAgXQpQYXRyeW4gZGVua3QgICAuIG8gTyAobWlzdCkKUGF0cnluIGRlbmt0ICAgLiBvIE8gKHdhcyBoYWJ0IGlociBudXIgZ2VnZW4gZGllPyA6KSkKUHVua3RlOiAxNjIoMTYyKSAgMjIxKDIyNikgIDc1KDc1KSAgWyAgICBdCj4gJ1dlciBhbmRlcm4gZWluZSBHcnViZSBncmFlYnQuLi4/CkR1IHNhZ3N0OiBXZXIgYW5kZXJuIGVpbmUgR3J1YmUgZ3JhZWJ0Li4uPwpQYXRyeW4gbmlja3QgenVzdGltbWVuZC4KUHVua3RlOiAxNjIoMTYyKSAgMjIyKDIyNikgIDc1KDc1KSAgWyAgICBdClphdWJlcm1hdXMgUGF0cnluIHNhZ3Q6IHNvbiBzaGl0Li4uZ2FyIG5pY2ggbWVociBkcmFuIGdlZGFjaHQKUHVua3RlOiAxNjIoMTYyKSAgMjIzKDIyNikgIDc1KDc1KSAgWyAgICBdClB1bmt0ZTogMTYyKDE2MikgIDIyNCgyMjYpICA3NSg3NSkgIFsgICAgXQpQYXRyeW4gbmltbXQgaGVyZGFsIHZvcnNpY2h0c2hhbGJlciBkaWUgemVpdHVuZyB3ZWcKUHVua3RlOiAxNjIoMTYyKSAgMjI1KDIyNikgIDc1KDc1KSAgWyAgICBdClB1bmt0ZTogMTYyKDE2MikgIDIyNigyMjYpICA3NSg3NSkgIFsgICAgXQo+IDpzdGVtbXQgZW50cnVlc3RldCBkaWUgQXJtZSBpbiBkaWUgSHVlZnRlbi4KSGVyZGFsIHN0ZW1tdCBlbnRydWVzdGV0IGRpZSBBcm1lIGluIGRpZSBIdWVmdGVuLgo+ICdTbyBnZWh0IGRhcyBhYmVyIG5pY2h0IQpEdSBzYWdzdDogU28gZ2VodCBkYXMgYWJlciBuaWNodCEKWmF1YmVybWF1cyBQYXRyeW4gc2FndDoga2VpbmVuIGFydGlrZWwgYml0dGUgdWViZXIgZGllc2VzIG1pc3NnZXNjaGljayA6KQpXYXJnb24gcnVmdDogTW9pbiEKPiAnV2VubiBEdSBub2NoIGxhZW5nZXIgZHJ1bSBiaXR0ZXN0LCBzZXR6ZSBpY2ggdGF0c2FlY2hsaWNoIGRlbiBlcnN0ZW4KQXJ0aWtlbCBtZWluZXMgTGViZW5zIGluIGRpZSBaZWl0dW5nIDopCkR1IHNhZ3N0OiBXZW5uIER1IG5vY2ggbGFlbmdlciBkcnVtIGJpdHRlc3QsIHNldHplIGljaCB0YXRzYWVjaGxpY2ggZGVuIGVyc3RlbgpEdSBzYWdzdDogQXJ0aWtlbCBtZWluZXMgTGViZW5zIGluIGRpZSBaZWl0dW5nIDopClBhdHJ5biBzY2h3ZWlndC4gCgoKRGFzIGhhYmUgaWNoIG1hbCBhbHMgaW5zdGFlbmRpZ2UgQml0dGUgYXVmZ2VmYXNzdC4gOy0pCkhlcmRhbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQYXRyeW4gdW5kIHNlaW5lIEJpYmxpb3RoZWthcmluIChHcmltbWJvcm4sICA2LiBGZWIgMTk5OCwgMTE6MDU6MjcpOgp+IyEgcm49SGVyZGFsIHJ0PTg4Njc1ODcwNSByZz1zY2htYXJybgp+IyEgdGlkPTg4Njc1ODcwNQpJbnRlcmVzc2FudC4gVm9yIGFsbGVtIGRpZSBJbmZvcm1hdGlvbiB1ZWJlciBEZWluZSBQdW5rdGV2ZXJ0ZWlsdW5nLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYW5jZXIhIHRzLCB0cyAoSWV5YXN1LCAgNi4gRmViIDE5OTgsIDEzOjUyOjIyKToKCkViZW4gcGFzc2llcnQ6CkRhbmNlciAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpXaWRlcmxpY2hlIER1ZW5zdGUgZXJmdWVsbGVuIGRlbiBSYXVtLgpSaWJhbm5hIGZyYWd0OiBXZWcgbmFjaCBOb3JkZW4/CgpoaWhpLgoKR3J1c3Mgdm9uCklleWFzdQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhbmdvdmVyIGlzdCBzY2hpdHpvPyAoR25vbWUsICA2LiBGZWIgMTk5OCwgMTQ6Mjk6NDIpOgoKPiBEZWluIEZyZXVuZCBIYW5nb3ZlciB0ZWlsdCBEaXIgbWl0OiBmZXJtZmVsbCB6dSB2ZXJzY2hlbmtlbiEKW1RydmVzOktpdSBrbnVkZGVsdCBzZWluZSBCZXJzZXJrZXJheHRdCkRlaW4gRnJldW5kIEhhbmdvdmVyIHRlaWx0IERpciBtaXQ6IGhpZXIKCnNjaG9uIGtsYXIsIGhhbmcgOy0pKSkKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXVzZXVtIChHcmltbWJvcm4sICA2LiBGZWIgMTk5OCwgMTQ6NDQ6MDEpOgp+IyEgb249SGV4eGVyIG90PTg4Njc3MTY5NSBvZz1hbGxnZW1laW5lcwp+IyEgcm49UGVydGluYXhlIHJ0PTg4NDk4OTc0MyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg4NDk4OTc0MwpzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYWVtb25lbnN0YWR0IFBhcmFvcmtoYXVzZW4gKExpbGFmLCAgNi4gRmViIDE5OTgsIDE1OjU5OjQ1KToKT3JrYWxsZWUuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuIHVuZCBub3JkZW4uCkRhZWRoZWwgZGVyIGVsZmlzY2hlIERhZW1vbi4KRGVyIHd1ZXRlbmRlIEFudGh1a3QuCkRlciB3dWV0ZW5kZSBBbnRodWt0LgpIb3Rocm9nIGRlciBTY2hha2Fsa29lcGZpZ2UuCkNob2Nob3MgZGVyIHNjaHdhcnplIERhZW1vbi4KCgpLZWluIEtPbW1lbnRhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhZW1vbmVuc3RhZHQgUGFyYW9ya2hhdXNlbiAoS2V5LCAgNi4gRmViIDE5OTgsIDE3OjM4OjA1KToKfiMhIHJuPUxpbGFmIHJ0PTg4Njc3NzE4NSByZz1zY2htYXJybgp+IyEgdGlkPTg4Njc3NzE4NQoqZ3J1ZWJlbCoKT2IgZGllIERhZW1vbmVuIGRlbSBPcmsgZWlucyBhdWYgZGllIE51c3MgZ2VnZWJlbiBoYWJlbj8gLikKQWxzbyBkYXMgd2lsbCBpY2ggYXVjaCBtYWwgc2VoZW4gOykKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2VuaWVzc2VuIHN0YXR0IGtsYWdlbiAoYmV6dWcgYXJ0aWtlbCA5IHZvbiB5ZW5kaSkgKFNsb2FuZSwgIDYuIEZlYiAxOTk4LCAxODoyNzo0MCk6CmFsc28gaWNoIGthbm4gZGF6dSBudXIgc2FnZW4gZGFzcyBlcyBlaW4gYWJzb2x1dGVyIGdlbnVzcyBpc3Qgc2ljaCB2b24gc2Fsb21lCmhhZXV0ZW4genUgbGFzc2VuIHVuZCB3ZW5uIGVpbmUgZnJhdSBtaXIgYXVmIGRpZSAiYmFja2UiIHNjaG1hdHp0IHN0YXR0IGF1ZgpkaWUgd2FuZ2UgZGFubiBpc3QgbWlyIGRhcyBpbiBqZWRlciBhcnQgdW5kIHdlaXNlIHJlY2h0IDspCgpzbG9hbmUgc2Nod2VpZ3QgdW5kIGdlbmllc3N0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgZGVubiBudW4gPyA7KSAoSXZvLCAgNi4gRmViIDE5OTgsIDIwOjA2OjQ5KToKS2V5ICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpLZXkga29tbXQgYW4uCktleSB2ZXJzY2h3aW5kZXQuCktleSBlcnNjaGVpbnQuCktleSBnZWh0IG5hY2ggTm9yZHdlc3Rlbi4KS2V5ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpFdHdhcyB2ZXJ3aXJydCwgCgpJdm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXMgZGVubiBudW4gPyA7KSAoR3JpbW1ib3JuLCAgNi4gRmViIDE5OTgsIDIwOjMxOjA0KToKfiMhIHJuPUl2byBydD04ODY3OTIwMDkgcmc9c2NobWFycm4KfiMhIHRpZD04ODY3OTIwMDkKS2V5IC0gRGFzIHNjcmlwdCwgZGFzIHNjaG5lbGxlciBpc3QgYWxzIHNlaW4gU2NoYXR0ZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIFB1cHNlcmVpIGhhdCBlaW4gRW5kZS4gKFRhcmluYSwgIDYuIEZlYiAxOTk4LCAyMjo1Mzo0OSk6CkVpbiBTY2h3ZWluLgpFaW4gbGFuZ2dlc3RyZWNrdGVyIFNjaHVwcGVuLgpPawpPawo+RHUgZ3JlaWZzdCBkYXMgU2Nod2VpbiBtaXQgZGVtIFNjaHdlcnQgYW4uCkR1IHNjaGxhZWdzdCBkYXMgU2Nod2VpbiBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgpEYXMgU2Nod2VpbiBpc3QgZ2VzY2hsYWNodGV0LgpEdSBncmVpZnN0IEplbWFuZGVuIG1pdCBkZW0gU2Nod2VydCBhbi4KRHUgemVyc2NobWV0dGVyc3QgSmVtYW5kZW4gaW4ga2xlaW5lIFN0dWVja2NoZW4uCkR1IGhvZXJzdCBlaW5lbiBsZXR6dGVuIEZ1cnosIGRvY2ggZXIgc3Rpbmt0IG5pY2h0LgpEdSBuaW1tc3QgZWluZW4gU2Nod2VpbmVicmF0ZW4uCgpCaXMgenVtIG5hZWNoc3RlbiBnbHVlY2tsaWNoZW4gWnVmYWxsLgoKR2x1ZWNrbGljaCwKVGFyaW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllIFB1cHNlcmVpIGhhdCBlaW4gRW5kZS4gKFd1cnplbCwgIDYuIEZlYiAxOTk4LCAyMjo1NToxMCk6Cn4jISBybj1UYXJpbmEgcnQ9ODg2ODAyMDI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg2ODAyMDI5Cndlbm4gZGljaCBkYXMgc2Nob24gZ2x1ZWNrbGljaCBtYWNodCAuLi4gc2Nob2VuIHdlbm4gZGFzIHNvIGVpbmZhY2ggaXN0LgpnZXJuIGdlc2NoZWhlbiA6KQoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBLb21wb25lbnRlbm5hbWVuIChBc21vZGlzLCAgNy4gRmViIDE5OTgsIDAwOjM0OjI4KToKfiMhIHJuPVBhdHJ5biBydD04ODY1MTQ5MDUgcmc9c2NobWFycm4KfiMhIHRpZD04ODYzNjgzMTAKSWNoIHdpbGwgRGF1bmVuZmVkZXJuIGZ1ZXIgbWVpbiBCZXR0IGltIFNlaGVyaGF1cyAhIQo0LjU6Li4uLi4uLjoxCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERpZSBQdXBzZXJlaSBoYXQgZWluIEVuZGUuIChUaGVyaW4sICA3LiBGZWIgMTk5OCwgMDk6NDY6NTYpOgp+IyEgcm49V3VyemVsIHJ0PTg4NjgwMjExMCByZz1zY2htYXJybgp+IyEgdGlkPTg4NjgwMjAyOQpXdXJ6ZWwsCnNjaG9uIEZyZXVkIHVudGVyc2NoaWVkIGRyZWkgUGhhc2VuIGRlciBFbnR3aWNrbHVuZzoKRGllIE9yYWxlLCBkaWUgQW5hbGUgdW5kIGRpZSBQaGFsbGlzdGlzY2hlIFBoYXNlLCBiZWkgZGVyIGRpZSBFdXBob3JpZSBpbiBkZXIKZW50c3ByZWNoZW5kZW4gIlpvbmUiIGJlc29uZGVycyBob2NoIGlzdC4KCkZvbGdsaWNoIGJlZmluZGV0IHNpZSBzaWNoIGluIGRlciBhbmFsZW4gUGhhc2UsIGluIGRlciBkaWUgQXVzc2NoZWlkdW5nZW4KYmVzb25kZXJzIC4uZXIuLiBuYWphLCBEdSB3ZWlzc3Qgc2Nob24uLi4KClQuCihVbmQgd2FlcnMgaGllciBuaWNodCBzY2hvbiBzY2htYXJybiwgc28gbXVlc3N0ZSBtYW5zIGdsYXR0IGRhaGluIHZlcmxlZ2VuCjotKSkKKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEYWVtb25lbnN0YWR0IFBhcmFvcmtoYXVzZW4gKE1vcmdvdGgsICA3LiBGZWIgMTk5OCwgMTU6MzE6MzcpOgp+IyEgcm49S2V5IHJ0PTg4Njc4MzA4NSByZz1zY2htYXJybgp+IyEgdGlkPTg4Njc3NzE4NQpMZWlkZXIsIG9kZXIgenVtIEdsdWVjayBuaWNodC4gRGFzIGlzdCBlaW4gJ0ZlaGxlcicgaW4gZGVyIEdpbGRlLiBJY2ggaG9mZmUKWmFyZG96IHdpcmQgaWhuIGFuIHNlaWVubiBOYWNoZm9sZ2VuIHdlaXRlcnJlaWNoZW4sIGRhbWl0IGRpZXNlciBzaWNoIGRhbWl0CnJ1bXNjaGxhZ2VuIGthbm4uCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEaWUgUHVwc2VyZWkgaGF0IGVpbiBFbmRlLiAoVGFyaW5hLCAgNy4gRmViIDE5OTgsIDE2OjUyOjExKToKfiMhIHJuPVRoZXJpbiBydD04ODY4NDEyMTYgcmc9c2NobWFycm4KfiMhIHRpZD04ODY4MDIwMjkKRHUgaGFzdCBEaWNoIGRhIHZlcnRhbiwgVGhlcmluLiBOaWNodCBfaWNoXyBiZWZpbmRlIG1pY2ggZGEgaW4gZWluZXIgYW5hbGVuClBoYXNlLiBTY2hsaWVzc2xpY2ggaXN0ICdqZW1hbmQnIG5pY2h0IG1laW4gUHJvZHVrdCwgc29uZGVybiBkYXMgdm9uIFd1cnplbC4KCldlbm4gRHUgc2Nob24gYW5hbHlzaWVyZW4gbW9lY2h0ZXN0LCBkYW5uIGFiZXIgZGVuIChkaWUpIFJpY2h0aWdlbi4KCkdydXNzLApUYXJpbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXIgWWFuIF5IXkguLi5aYXJuaXlhIChIYW5nb3ZlciwgIDcuIEZlYiAxOTk4LCAxOTo0Mjo1Nyk6CkdyYWRlIGViZW46CgpbQWxsZ2VtZWluOlphcm5peWFdIGthbm4gbWFsIGVpbmVyIGVpbmVuIGFydGlrZWwgc2NocmVpYmVuIG9kZXIgbXVzcyBpY2gKW0FsbGdlbWVpbjpaYXJuaXlhXSB3aWVkZXIgbWFsIGF1c2ZhbGxlbmQgd2VyZGVuPwoKSGFuZ292ZXIKKGZhZWxsdCBkYXp1IG5peCBtZWhyIGVpbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlZmluaXRpb25zZnJhZ2UuLi4gKFNpbHZhbmEsICA3LiBGZWIgMTk5OCwgMTk6NTM6NTIpOgpCaW4gZ2VyYWRlIHVlYmVyIGVpbiBwYWFyIGludGVyZXNzYW50ZSBEZWZpbml0aW9uZW4gZ2VzdG9scGVydDoKCk1lZGlrYW1lbnQ6IEVpbiBNZWRpa2FtZW50IGlzdCBlaW5lIFN1YnN0YW56LCBkaWUsIGVpbmVyIFJhdHRlIGluaml6aWVydCwKZWluZW4gd2lzc2Vuc2NoYWZ0bGljaGVuIEJlcmljaHQgenVyIEZvbGdlIGhhdC4KCkFsa29ob2xpa2VyOiBFaW4gQWxrb2hvbGlrZXIgaXN0IGVpbiBNZW5zY2gsIGRlciBtZWhyIHRyaW5rdCBhbHMKc2VpbiBBcnp0LgoKWm9lbGliYXQ6IEVpbiBuaWNodCBlcmJsaWNoZSBHZXNjaGxlY2h0c2tyYW5raGVpdC4KCiAgU2lsdmFuYSAoc2NobWFycnQgcnVtKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmljaHQgZ2FueiBhdXNnZWxhc3RldCwgZGllIEp1bmdzIChMaWxhZiwgIDcuIEZlYiAxOTk4LCAyMjozNjoyOCk6ClVuZ2VzY2huaXR0ZW46CgpPcmstU3VwcGxpZXMuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBub3JkZW4gdW5kIGhpbnRlbi4KRWluIE11ZWxsc2NobHVja2VyLgpEZXIgT3JrIHNhZ3Q6IER1IGhhc3QgZ3V0ZSBTYWNoZW4sIGhlciBkYW1pdC4KRWluIE9yayBrb21tdCBhbi4KRWluIE9yayB6aWVodCBzaWNoIGFuIGRlbiBIYWFyZW4uCkVpbmVtIE9yayB3YWNoc2VuIHVlYmVyYWxsIEhhYXJlLgogIERlciBPcmsgc2NobGFlZ3QgRGljaCBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgpMZWJlbjogMTc1ICBNYWdpZTogMTE3ICBTdGFiOiAzIAogIER1IGdyZWlmc3QgZGVuIE9yayBtaXQgYmxvc3NlbiBIYWVuZGVuIGFuLgogIER1IHZlcmZlaGxzdCBkZW4gT3JrLgplaW4gT3JrIHZlcmthdWZ0IGVpbmVuIEthbXBmaGFtbWVyLgoKSG0uLi5kYXNzIGRpZSBtaXR0ZW4gaW0gS2FtcGYgZnVlciBzb3dhcyBaZWl0IGhhYmVuLi4uPwoKTGlsYWYsIGtvcGZzY2h1ZXR0ZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIGRpZSA0NzI1Ny4gKFJpbmdvciwgIDguIEZlYiAxOTk4LCAwMDo1MTowNik6CltDaGFvczpCZWxsb10gaWNoIGxhdWYgaGllciB1bmtvbnRyb2xsaWVydCBpbiBkZXIgZWlzd3Vlc3RlIHJ1bSA6KCA8MDA6NDQ6NDQ+CltDaGFvczpCZWxsb10gd2VnZW4gZGVyIGNoYW9zcnVlc3R1bmcgPDAwOjQ0OjUyPgpbQ2hhb3M6QmVsbG9dIHVuZCBhdWNoIG5vY2ggYmxpbmQgPDAwOjQ1OjA0PgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBCZWxsbyB1bWdlYnJhY2h0LgpbVG9kOkxhcnNdIDwwMDo0NTowNj4KClJpbmdvci4gTWFjaHQgZWluZW4gd2VpdGVyZW4gU3RyaWNoIGhpbnRlciBaYXJkb3onIE5hbWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnVlciBoYW5nb3ZlciAoTmFjaHR3aW5kLCAgOC4gRmViIDE5OTgsIDE2OjQwOjMzKToKd2FzLgoKbm9yZHdlc3RlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAgOC4gRmViIDE5OTgsIDE4OjQzOjMzKToKSW4gZGVyIFd1ZXN0ZSB0YXVndCBqZWRlcyBXYXNzZXIuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBmdWVyIGhhbmdvdmVyIChSaW5nb3IsICA4LiBGZWIgMTk5OCwgMjE6NDE6MjIpOgp+IyEgcm49TmFjaHR3aW5kIHJ0PTg4Njk1MjQzMyByZz1zY2htYXJybgp+IyEgdGlkPTg4Njk1MjQzMwpOYWNodFdpbmQgPT0gTlcgPT0gTm9yZFdlc3Rlbj8KCkV0d2FzIGVpZ2VuYXJ0aWdlIEFsaXMgaGFzdCBEdSBkYSA7LSkKClJpbmdvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBmdWVyIGhhbmdvdmVyIChOYWNodHdpbmQsICA4LiBGZWIgMTk5OCwgMjE6NDI6NTgpOgp+IyEgcm49UmluZ29yIHJ0PTg4Njk3MDQ4MiByZz1zY2htYXJybgp+IyEgdGlkPTg4Njk1MjQzMwphcmdoLCBpbW1lciBkYXNzZWxiZS4uLgpuYWNodHdpbmQuIGRlciBlcyBuaWUgbGVybmVuIHdpcmQsIHNlaW5lIGNsaWVudCBhYnp1c2NoYWx0ZW4sCmJldm9yIGVyIGFydGlrZWwgc2NocmVpYnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKFllbmRpLCAgOS4gRmViIDE5OTgsIDEyOjUxOjU0KToKLi4uIHdlbm4gRHUgRGljaCB3dW5kZXJzdCwgd2FydW0gTmV0c2NhcGUgYmVpICJubiIgZWluIG5ldWVzIEZlbnN0ZXIgYXVmbWFjaHQsCnN0YXR0IGRlbiBuYWVjaHN0ZW4gQXJ0aWtlbCBhbnp1emVpZ2VuLgoKWWRXCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IER1IHdlaXNzdCwgZGFzcyBEdSB6dXZpZWwgZ2VNVURkZXQgaGFzdCwgd2Vubi4uLiAoR25vbWUsICA5LiBGZWIgMTk5OCwgMTI6NTg6MDgpOgp+IyEgcm49WWVuZGkgcnQ9ODg3MDI1MTE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0Ci4uLmR1IGluIG5vcm1hbGVuIHRleHRlbiBpbW1lciAiYWUiLCAib2UiIG9kZXIgInVlIiB0aXBwc3QsIGFuc3RhdHQgZGllCnVtbGF1dGUgenUgYmVudXR6ZW4uLi4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IER1IHdlaXNzdCwgZGFzcyBEdSB6dXZpZWwgZ2VNVURkZXQgaGFzdCwgd2Vubi4uLiAoU2lsdmFuYSwgIDkuIEZlYiAxOTk4LCAxMzoxNTo0NCk6Cn4jISBybj1Hbm9tZSBydD04ODcwMjU0ODggcmc9c2NobWFycm4KfiMhIHRpZD04ODcwMjUxMTQKLi4uIER1IGplZGVuIGdlc3Byb2NoZW5lbiBTYXR6IG1pdCAnc2FnJyBiZWdpbm5zdCB1bmQgYmVpbSB2ZXJsYXNzZW4gZGVzClJhdW1lcyAnb2VmZm5lIHR1ZXIsIG5vcmRlbiwgc2NobGllc3NlIHR1ZXInIGRlbmtzdC4KCiAgU2lsdmFuYSAoa2VubnQgZGFzIGF1cyBFcmZhaHJ1bmcpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKEdub21lLCAgOS4gRmViIDE5OTgsIDEzOjE5OjU5KToKfiMhIHJuPVNpbHZhbmEgcnQ9ODg3MDI2NTQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0Ci4uLmR1IG51ciBub2NoICJncmlucyIgc2Fnc3QsIGFuc3RhdHQgc2VsYmVyIHp1IGdyaW5zZW4uLi4KLi4uZHUgc29nYXIgbmFjaHRzIHZvbSBtdWRkZW4gdHJhZXVtc3QuLi4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKFNpbHZhbmEsICA5LiBGZWIgMTk5OCwgMTM6MjM6MDUpOgp+IyEgcm49R25vbWUgcnQ9ODg3MDI2Nzk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0CkR1IHdlaXNzdCwgZGFzcyBEdSB6dXZpZWwgVG9sa2llbiBnZWxlc2VuIGhhc3QsIHdlbm4gLi4uCgogIC4uLkR1IGJlaW0gUm9sbGVuc3BpZWwgaW4gYXVzd2VnbG9zZXIgU2l0dWF0aW9uICdHQU5EQUxGJyBydWZzdC4KICAuLi5EZWluZSBCcmllZmUgaW4gUXVlbnlhIHNjaHJlaWJzdC4KCiAgU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRHUgd2Vpc3N0LCBkYXNzIER1IHp1dmllbCBnZU1VRGRldCBoYXN0LCB3ZW5uLi4uIChZZW5kaSwgIDkuIEZlYiAxOTk4LCAxMzoyODo0NSk6Cn4jISBybj1Hbm9tZSBydD04ODcwMjY3OTkgcmc9c2NobWFycm4KfiMhIHRpZD04ODcwMjUxMTQKPiAuLi5kdSBudXIgbm9jaCAiZ3JpbnMiIHNhZ3N0LCBhbnN0YXR0IHNlbGJlciB6dSBncmluc2VuLi4uCgpBdWNoIHNlaHIgYmVsaWVidDogIlllbmRpIHNjaHJlaXQgbGF1dC4iIHN0YXR0ICJBQUFBQUFBQUFBQUFIISEhIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IER1IHdlaXNzdCwgZGFzcyBEdSB6dXZpZWwgZ2VNVURkZXQgaGFzdCwgd2Vubi4uLiAoU3RpbmcsICA5LiBGZWIgMTk5OCwgMTM6MzA6MTcpOgp+IyEgcm49WWVuZGkgcnQ9ODg3MDI3MzI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0Ci4uLiBkdSBpbiBET1Mgc3RhdHQgImRpciIgc2NoYXVlIGVpbmdpYnN0Li4uCgpTdGluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRHUgd2Vpc3N0LCBkYXNzIER1IHp1dmllbCBnZU1VRGRldCBoYXN0LCB3ZW5uLi4uIChIYW5nb3ZlciwgIDkuIEZlYiAxOTk4LCAxMzo0NTo0MCk6Cn4jISBybj1TdGluZyBydD04ODcwMjc0MTcgcmc9c2NobWFycm4KfiMhIHRpZD04ODcwMjUxMTQKCi4uLm9kZXIgd2VubiBEdSBuYWNoIGRlbSBsb2dpbiB1bnRlciBVbml4IGVyc3QgZWlubWFsICdma251ZGRlbCcKZWludGlwcHN0IHVuZCBkaWNoIHVlYmVyIGRpZSBmZWhsZXJtZWxkdW5nIHd1bmRlcnN0Li4uIDspCgotSGFuZ292ZXIKKGRlbSBkYXMgc2Nob25tYWwgcGFzc2llcnQgaXN0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRHUgd2Vpc3N0LCBkYXNzIER1IHp1dmllbCBnZU1VRGRldCBoYXN0LCB3ZW5uLi4uIChNaW5nbywgIDkuIEZlYiAxOTk4LCAxNDowMDowMyk6Cn4jISBybj1IYW5nb3ZlciBydD04ODcwMjgzNDAgcmc9c2NobWFycm4KfiMhIHRpZD04ODcwMjUxMTQKLi4uIHdlbm4gRHUgdW50ZXIgVW5peCBubiBlaW50aXBwc3QgdW5kIG5hY2ggZnVlbmYgTWludXRlbiBmbHVjaHN0LApkYXNzIGltbWVyIG5vY2gga2VpbiBOZXdzUmVhZGVyIGdlc3RhcnRldCBpc3QgLi4uCgpHbG9pbiAuLi4gaHVlc3RlbHQgYmV0cm9mZmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRHUgd2Vpc3N0LCBkYXNzIER1IHp1dmllbCBnZU1VRGRldCBoYXN0LCB3ZW5uLi4uIChNYXJjdXMsICA5LiBGZWIgMTk5OCwgMTQ6MDM6MjgpOgp+IyEgcm49TWluZ28gcnQ9ODg3MDI5MjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0Ck5hamEsIGRhcyBoZWlzc3QgamEgZGEgYXVjaCAndHJuJyB1bmQgbmljaHQgJ25uJyA7KQoKQ2lhbywgTWFyY3VzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKFR1bml4Z3V0LCAgOS4gRmViIDE5OTgsIDE0OjI5OjI1KToKfiMhIHJuPU1hcmN1cyBydD04ODcwMjk0MDggcmc9c2NobWFycm4KfiMhIHRpZD04ODcwMjUxMTQKRHUgd2Vpc3N0LCBkYXNzIER1IHp1dmllbCBnZU1VRGRldCBoYXN0LCB3ZW5uLi4uCgo+IFtBbGxnZW1laW46VG9tYXRvciBrYW5uIHNpY2ggZWluZmFjaCBuaWNodCB2b20gTUcgbG9zcmVpc3Nlbi4uLl0KCk9obmUgV29ydGUuLi4KCidzIEthcmF0ZS1ad2VyY2hsZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRHUgd2Vpc3N0LCBkYXNzIER1IHp1dmllbCBnZU1VRGRldCBoYXN0LCB3ZW5uLi4uIChGcmV1bmQsICA5LiBGZWIgMTk5OCwgMTQ6Mjk6NTIpOgp+IyEgcm49TWFyY3VzIHJ0PTg4NzAyOTQwOCByZz1zY2htYXJybgp+IyEgdGlkPTg4NzAyNTExNAouLi4gd2VubiBEZWluIEtvbnRvIGVpbmVuIHZpZXJzdGVsbGlnZW4gU09MTCBCZXRyYWcgYXVmd2Vpc3QsIHVuZCBkYXMgYmxvZWRlCkFERE1PTkVZIGVpbmZhY2ggbmljaHQgZnVua3Rpb25pZXJlbiB3aWxsLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IER1IHdlaXNzdCwgZGFzcyBEdSB6dXZpZWwgZ2VNVURkZXQgaGFzdCwgd2Vubi4uLiAoTWFoYXRtYSwgIDkuIEZlYiAxOTk4LCAxNDozMTo0MCk6Cn4jISBybj1Hbm9tZSBydD04ODcwMjY3OTkgcmc9c2NobWFycm4KfiMhIHRpZD04ODcwMjUxMTQKSWNoIHRyYWV1bWUgaW1tZXIgdm9tIE11ZGRlbi4gVW5kIGRhYmVpIGtvbW1lbiBtaXIgZGFubiBpbW1lciBkaWUgYmVzdGVuCklkZWVuLCB3aWUgbWFuIEJ1Z3MgdW5kIEZlYXR1cmVzIGF1c251dHp0LgoKTWFoYXRtYSAoenV2aWVsIG11ZGRlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBpbiBlaW5lciAuc2lnOiAoWWVuZGksICA5LiBGZWIgMTk5OCwgMTQ6NTI6NTkpOgoKV2hlbiB5b3Ugc2F5IGBJIHdyb3RlIGEgcHJvZ3JhbSB0aGF0IGNyYXNoZWQgV2luZG93cycsIHBlb3BsZSBqdXN0IHN0YXJlCmF0IHlvdSBibGFua2x5IGFuZCBzYXkgYEhleSwgSSBnb3QgdGhvc2Ugd2l0aCB0aGUgc3lzdGVtLCAqZm9yIGZyZWUqJwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBMaW51cyBUb3J2YWxkcwoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKEFjcmltb24sICA5LiBGZWIgMTk5OCwgMTU6MTM6MzEpOgp+IyEgcm49TWluZ28gcnQ9ODg3MDI5MjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0CldhcyBoYXN0IGR1IGRlbm4gZnVlciBlaW4gVW5peD8Kbm4gc3RhcnRldCB1bnRlciBVbml4IGVpbmVuIE5ld3NyZWFkZXIuIE9obmUgUHJvYmxlbWUuCgpEZW4gTmV3c3JlYWRlciAibm4iIGtlbm4gaWNoIGZhc3Qgc29sYW5nZSwgd2llIGljaCBNRyBzcGllbGUgOi0pCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGZ1ZXIgaGFuZ292ZXIgKEFjcmltb24sICA5LiBGZWIgMTk5OCwgMTU6MTY6MzkpOgp+IyEgcm49TmFjaHR3aW5kIHJ0PTg4Njk3MDU3OCByZz1zY2htYXJybgp+IyEgdGlkPTg4Njk1MjQzMwoxLjogRHUga29lbm50ZXN0IGRhcyBudy1BTGlhcyBkaXJla3QgaW0gTUcgc3RhdHQgaW4gZGVpbmVtIENsaWVudCBtYWNoZW4sIGRhbm4KYnJhdWNoc3QgZHUgYXVjaCBuaWNodCBtZWhyIGRlbiBDbGllbnQgYXVzc2NoYWx0ZW4gYmVpbSBBcnRpa2Vsc2NocmVpYmVuLgoyLjogRHUgYnJhdWNoc3QgdWViZXJoYXVwdCBrZWluIG53LUFsaWFzLCBkZW5uIE1HIGtlbm50IGRlbiAibnciLUJlZmVobC4KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2lsZGVuIChBY3JpbW9uLCAgOS4gRmViIDE5OTgsIDE2OjE2OjQ5KToKTGFieXJpbnRoLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuIHVuZCBub3JkZW4uCkVpbiB2ZXJtb2Rlcm5kZXMgQmxhdHQuICg1KQpRdW90ZW5ob2JiaXQgQWxhbiBrYWVtcGZ0IHNpY2ggZHVyY2hzIExlYmVuLgpFaW5lIGhhbGJ2ZXJkYXV0ZSBGbGllZ2UuICg0KQpFaW4gaGFsYnZlcmRhdXRlciBNb2VuY2guICgyKQpFaW4gaGFsYnZlcmRhdXRlciBLYWVtcGZlci4gKDMpCkVpbiBoYWxidmVyZGF1dGVyIEthcmF0ZWthLiAoMikKRWluIGhhbGJ2ZXJkYXV0ZXIgS2xlcmlrZXIuCkVpbiBoYWxidmVyZGF1dGVyIEFiZW50ZXVyZXIuCkVpbiBoYWxidmVyZGF1dGVyIFphdWJlcmVyLgoKCklzdCBkYXMgZWluIEhpbndlaXMgYXVmIGRpZSBuZXVlIEZsaWVnZW5naWxkZT8gOi0pCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHaWxkZW4gKEJvaW5nLCAgOS4gRmViIDE5OTgsIDE2OjI1OjA0KToKfiMhIHJuPUFjcmltb24gcnQ9ODg3MDM3NDA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDM3NDA5CkRpZSBGbGllZ2VuIGdpYnQncyBqYSBzY2hvbiBzZWl0IFVyemVpdGVuLiBXZW5uIER1IGFiZXIgZmxlaXNzaWcgCm1ldHplbHN0LCBlcmhhZWx0c3QgRHUgZXZ0bC4gZWluZW4gRUNIVEVOIEhpbndlaXMuIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKFdvb2R5LCAgOS4gRmViIDE5OTgsIDE3OjAyOjU4KToKfiMhIHJuPUZyZXVuZCBydD04ODcwMzA5OTIgcmc9c2NobWFycm4KfiMhIHRpZD04ODcwMjUxMTQKLi4uIER1IGltIExpbnV4ICJzYyIgZnVlciBzY2hhdSBlaW50aXBwc3QgdW5kIGluIGVpbmVtIFNwcmVhZHNoZWV0CmxhbmRlc3QuIDopCgpzY2hvbiBiZWkgUmVeMTAgYW5nZWxhbmd0LAp3b29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogRHUgd2Vpc3N0LCBkYXNzIER1IHp1dmllbCBnZU1VRGRldCBoYXN0LCB3ZW5uLi4uIChSaW5nb3IsICA5LiBGZWIgMTk5OCwgMTc6MDU6MDMpOgp+IyEgcm49V29vZHkgcnQ9ODg3MDQwMTc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0CkRhcyBrYW5uIG1hbiBhbGxlcmRpbmdzIG1pdCBnZXNjaGlja3RlciBXYWhsIHNlaW5lciBBbGlzIHVtZ2VoZW4uIERhcyAibCIgZnVlcgpsb29rIG1hY2h0IHNpY2ggYXVjaCB1bnRlciBVbml4IChtZWlzdCBmdWVyIGxzIC1sKSBuaWNodCBzbyB2ZXJrZWhydC4KClJpbmdvci4gQnJhdWNodCBhYmVyIG5vY2ggZWluIEFsaSBmdWVyICJscyIgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogRHUgd2Vpc3N0LCBkYXNzIER1IHp1dmllbCBnZU1VRGRldCBoYXN0LCB3ZW5uLi4uIChXb29keSwgIDkuIEZlYiAxOTk4LCAxNzowNjo1MCk6Cn4jISBybj1SaW5nb3IgcnQ9ODg3MDQwMzAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0Ci4uLkR1IERpciwgYW5zdGF0dCBmdWVyIFBydWVmdW5nZW4genUgbGVybmVuLCBsaWViZXIgQXVzcnVlc3R1bmcKYmVzb3Jnc3QgdW5kIGRlbiBQcnVlZmVyIG1ldHplbHN0LgoKd29vZHkuLQoKUFMuIFJpbmdvciBEZWluZSBSZXBseSB3YXIgYWJlciBjb250cmFwcm9kdWt0aXYgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKFNpbHZhbmEsICA5LiBGZWIgMTk5OCwgMTg6MjY6MzgpOgp+IyEgcm49V29vZHkgcnQ9ODg3MDQwNDEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0Ci4uLiBEZWluZSBXYWVuZGUgbWl0IERldGFpbHBsYWVuZW4gdm9tIE1vcmdlbmdyYXVlbiB0YXBlemllcnQgc2luZC4KICAgICplcnJvZXQqCi4uLiBEaWUgTmFjaGJhcm4gYW5ydWZlbiwgd2VpbCBkaWUgUGl6emEsIGRpZSBEdSBEaXIgdm9yICdlaW5lciAKICAgIGtsZWluZW4gUnVuZGUgbWV0emVsbicgaW4gZGVuIE9mZW4gZ2VzY2hvYmVuIGhhc3QsIGJlcmVpdHMgCiAgICBtaXQgc2Nod2FyemVuIFJhdWNoc2lnbmFsZW4ga2FwaXR1bGllcnQuCi4uLiBEdSBpbiBEZWluZW0gRG9zLVZlcnplaWNobmlzIHNvIHNlbHRzYW1lIEZpbGVzIHdpZSAnc2MuYmF0JyBvZGVyCiAgICAnbm4uYmF0JyBmaW5kZXN0Li4uCgogIFNpbHZhbmEgKGZhZWxsdCBkYXp1IG5vY2ggbmUgTWVuZ2UgZWluKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZnVlciBoYW5nb3ZlciAoTmFjaHR3aW5kLCAgOS4gRmViIDE5OTgsIDE5OjU3OjM1KToKfiMhIHJuPUFjcmltb24gcnQ9ODg3MDMzNzk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg2OTUyNDMzCkFDSD8gRUNIVD8gbmEgc293YXMuIG1hbiBsZXJudCBuaWUgYXVzLiB1bmQgaWNoIHRpcHAgc2VpZCBmYXN0IDkwIG9ubGluZXRhZ2VuCmltbWVyIG5vY2ggJ25vcmR3ZXN0ZW4nLCB3ZW5uIGljaCBvaG5lIGNsaWVudCBhcmJlaXRlLi4uCgp3YXJ1bSBpY2ggZnVlciBtYW5jaGUgcmljaHR1bmdlbiBhbGlzIGltIGNsaWVudCBicmF1Y2hlLCBsaWVndCBuYXR1ZXJsaWNoIGFtCmRpa3Utc3BlZWR3YWxrLiBudyB3dWVyZGUgc29uc3QgYWxzIG4sIHcgYW5zIG11ZCBnZXNlbmRldC4KbncKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogRHUgd2Vpc3N0LCBkYXNzIER1IHp1dmllbCBnZU1VRGRldCBoYXN0LCB3ZW5uLi4uIChEaG9qYWt0LCAxMC4gRmViIDE5OTgsIDAxOjU4OjIyKToKfiMhIHJuPVNpbHZhbmEgcnQ9ODg3MDQ1MTk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0Ck5vY2ggaW50ZXJlc3NhbnRlciBpc3Nlcywgd2VubiBtYW4gd2llIGljaCAzIFJlY2huZXIgbmViZW5laW5hbmRlciBzdGVoZW4gaGF0LApkYSBmcmV1dCBzaWNoIGRhbm4gZGFzIG11ZCBhdWNoIG1hbCB1ZWJlciBlaW4gJ2EnIChhc3NlbWJsZSkgb2RlciAnZCBccGMnCihkaXNhc3NlbWJsZSBhYiBwYykuLi4KS2hpZGFyLCBldHdhcyBjaGFvdGlzY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKE1pZXplLCAxMC4gRmViIDE5OTgsIDA3OjI4OjEzKToKfiMhIHJuPUhhbmdvdmVyIHJ0PTg4NzAyODM0MCByZz1zY2htYXJybgp+IyEgdGlkPTg4NzAyNTExNAoKLi4uLiBvZGVyIER1ICdrd2VyJyBzdGF0dCAncnVzZXJzJyB0aXBwc3QgdW5kIERpY2ggZGFubiB1ZWJlciBkaWUKRmVobGVybWVsZHVuZyB3dW5kZXJzdC4uLgoKTWllemUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IER1IHdlaXNzdCwgZGFzcyBEdSB6dXZpZWwgZ2VNVURkZXQgaGFzdCwgd2Vubi4uLiAoSG9ibywgMTAuIEZlYiAxOTk4LCAwODoyNjowMSk6Cn4jISBybj1NaWV6ZSBydD04ODcwOTIwOTMgcmc9c2NobWFycm4KfiMhIHRpZD04ODcwMjUxMTQKLi4uRHUgRGljaCBmcmFnc3QsIHdlbGNoZXIgVGFnIGhldXRlIGlzdCwgInplaXQiIGRlbmtzdCB1bmQgdGF0c2FlY2hsaWNoCmRhbmFjaCBkYXMgRGF0dW0gd2Vpc3N0LgoKICAgSG9ibyAtZ2VzdGVybiBhbiBkZXIgSGFsdGVzdGVsbGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKExpLCAxMC4gRmViIDE5OTgsIDA5OjU3OjQ1KToKfiMhIHJuPVNpbHZhbmEgcnQ9ODg3MDQ1MTk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0CkphamEsIGRpZSBLYXJ0ZSB2b24gVGFyYW1pcyAtIGtvZW5udGUgbWFuIGZhc3QgZnVlciBlaW4gcG9zdGVyIGhhbHRlbiwgc28KbGFuZ2VyIGhhZW5ndCBzaSBzY2hvbiBiZWkgZGlyLi4uIDotKAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobGF1ZXIgcGFwYWdlaSAoTGksIDEwLiBGZWIgMTk5OCwgMTE6MTM6NTEpOgpncmFkZSBlYmVuIHBhc3NpZXJ0OgpbQWxsZ2VtZWluOlJvbmRhXSB3ZWlzcyBqZW1hbmQsIHdpZSBtYW4gYmVpIENBVElBIGdyb2Vzc2VyZSBNb2RlbGxlIGJlbnV0emVuCltBbGxnZW1laW46Um9uZGFdIGthbm4/IChTR0kpPwpbQWxsZ2VtZWluOlJvbmRhXSBvZGVyIGRlbiBJbmRleCBwbGF0dGtsb3BwZW4/CkFsbGdlbWVpbjpLb2JheWFzaGldIGljaCBrZW5uIGxlaWRlciBudXIgUERHUywgQ0FERFMgdW5kIGlkZWFzIC4uLgpNdXNhc2hpIGtyYWVjaHp0OiAuLi4gaGFiIGljaCBqZXR6dCBhdWNoIG5pY2h0IHNvIGltIGtvcGYgLi4uIGtycnJvb2FhYSEKW0FsbGdlbWVpbjpHb29meV0gaGF0IHNjaG9uIHdlciBuZW4gdGYgZnVlciB3aW5kb29mIGR1cmNoa29tcGlsaWVydCA/Ck11c2FzaGkga3JhZWNoenQ6IC4uLiBrZWluZSBhaG51bmcgLi4uIGtycnJvb2FhYSEKCkxpIChzdG9seiBhdWYgc2VpbmVuIFBhcGFnZWkgOi0pICkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldHRlIC5zaWcgKEhvYm8sIDEwLiBGZWIgMTk5OCwgMTE6MTg6NDkpOgogICBJY2ggYmluIGRpY2sgdW5kIER1IGJpc3QgZG9vZiAtIGFiZXIgaWNoIGthbm4gYWJuaGVtZW4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogRHUgd2Vpc3N0LCBkYXNzIER1IHp1dmllbCBnZU1VRGRldCBoYXN0LCB3ZW5uLi4uIChaZXBoeXIsIDEwLiBGZWIgMTk5OCwgMTQ6MzQ6MzMpOgp+IyEgcm49TGkgcnQ9ODg3MTAxMDY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0Ci4uLiBEaXIgamVtYW5kICJCVUgiIG1pdHRlaWx0IHVuZCBkYW5hY2ggRGVpbiBTY2hsdWNrYXVmIHdlZyBpc3QuCgpmYXN6aW5pZXJ0LCBaZXBoeXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IER1IHdlaXNzdCwgZGFzcyBEdSB6dXZpZWwgZ2VNVURkZXQgaGFzdCwgd2Vubi4uLiAoSmltZGlncml6LCAxMC4gRmViIDE5OTgsIDE0OjQxOjMxKToKfiMhIHJuPU1hcmN1cyBydD04ODcwMjk0MDggcmc9c2NobWFycm4KfiMhIHRpZD04ODcwMjUxMTQKSG9pLAoKZWNodCA/IAoKIE5OKDEpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOTigxKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlbGVhc2UgNi41LjAKCiBOQU1FCiAgICAgIG5uIC0gZWZmaWNpZW50IG5ldCBuZXdzIGludGVyZmFjZSAoTm8gTmV3cyBpcyBnb29kIG5ld3MpCgogU1lOT1BTSVMKICAgICAgbm4gWyBvcHRpb25zIF0gWyBuZXdzZ3JvdXAgIHwgICtmb2xkZXIgIHwgIGZpbGUgXS4uLgoKWy4uXQoKSmRHCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRHUgd2Vpc3N0LCBkYXNzIER1IHp1dmllbCBnZU1VRGRldCBoYXN0LCB3ZW5uLi4uIChNYXJjdXMsIDEwLiBGZWIgMTk5OCwgMTU6MDk6MDUpOgp+IyEgcm49SmltZGlncml6IHJ0PTg4NzExODA5MSByZz1zY2htYXJybgp+IyEgdGlkPTg4NzAyNTExNApEZW4gaGFiIGljaCBhdWNoIGRpZSBlcnN0ZW4gMiBKYWhyZSBiZW51dHp0LiBEYW5hY2ggdGluLiBEYW5hY2ggc3Rybi4gVW5kCmpldHp0IHRybjQgOikKCkNpYW8sIE1hcmN1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IER1IHdlaXNzdCwgZGFzcyBEdSB6dXZpZWwgZ2VNVURkZXQgaGFzdCwgd2Vubi4uLiAoQW5hY3Jpb24sIDEwLiBGZWIgMTk5OCwgMTY6MTk6MjApOgp+IyEgcm49WmVwaHlyIHJ0PTg4NzExNzY3MyByZz1zY2htYXJybgp+IyEgdGlkPTg4NzAyNTExNAoKIC4uLiBkdSBuaWNodCAndW5kJywgc29uZGVyICd1bnQnIHRpcHBzdCwgd2VubiBkdSBFTWFpbHMgc2NocmVpYnN0Li4KCmFuYWMqIC0gdW50ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bmdla3Vlcnp0Li4uIChUaGVyaW4sIDEwLiBGZWIgMTk5OCwgMTY6MzQ6NDcpOgoKCi0tbWVoci0tKDYyJSkgS2V5IGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkRpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgpLZXkgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KS2V5IGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KS2V5IGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi47TnllbSBnZXN0cmUgbyBrb3dhIHkga3UgQmF5b3NoIGRpCkt3ZXN0cm8gTUNNTFhYWElWIHRlaWx0IERpciBtaXQ6IHNlbGJzdCAKTnllbSBnZXN0cmUgbyBrb3dhIHkga3UgQmF5b3NoIGRpIEt3ZXN0cm8gTUNNTFhYWElWIHRlaWx0IERpciBtaXQ6CmF1c2dlc3VjaHQhO1suLl07QmVvYmFjaHRldGVzIE9iamVrdDogRGVyIExpY2gsCk9ydDogRGFzIEdyYWIgZGVzIExpY2hlcwolRWluIEtvcGYgZGVyIEh5ZHJhIGlzdCBnZXJhZGUgaW5zIFNwaWVsIGdla29tbWVuLgolRWluIEtvcGYgZGVyIEh5ZHJhIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbbmFqYSwgZG9jaHdhcyBnZWt1ZXJ6dF0KCi0tbWVoci0tKDgyJSkgCiVFaW4gS29wZiBkZXIgSHlkcmEgaXN0IGdlcmFkZSBpbnMgU3BpZWwgZ2Vrb21tZW4uCiVFaW4gS29wZiBkZXIgSHlkcmEgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCiVFaW4gS29wZiBkZXIgSHlkcmEgaXN0IGdlcmFkZSBpbnMgU3BpZWwgZ2Vrb21tZW4uCiVFaW4gS29wZiBkZXIgSHlkcmEgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCiVEaWUgSHlkcmEgaXN0IGdlcmFkZSBpbnMgU3BpZWwgZ2Vrb21tZW4uCiVEaWUgSHlkcmEgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCiVFaW4gS29wZiBkZXIgSHlkcmEgdGVpbHQgRGlyIG1pdDogSGkKJUVpbiBLb3BmIGRlciBIeWRyYSB0ZWlsdCBEaXIgbWl0OiBIaQolRWluIEtvcGYgZGVyIEh5ZHJhIHRlaWx0IERpciBtaXQ6IEhpCiVFaW4gS29wZiBkZXIgSHlkcmEgdGVpbHQgRGlyIG1pdDogSGkKJUVpbiBLb3BmIGRlciBIeWRyYSB0ZWlsdCBEaXIgbWl0OiBIaQolRWluIEtvcGYgZGVyIEh5ZHJhIHRlaWx0IERpciBtaXQ6IEhpCiVFaW4gS29wZiBkZXIgSHlkcmEgdGVpbHQgRGlyIG1pdDogSGkKJUVpbiBLb3BmIGRlciBIeWRyYSB0ZWlsdCBEaXIgbWl0OiBIaQolRWluIEtvcGYgZGVyIEh5ZHJhIHRlaWx0IERpciBtaXQ6IEhpCiVFaW4gS29wZiBkZXIgSHlkcmEgdGVpbHQgRGlyIG1pdDogSGkKJUVpbiBLb3BmIGRlciBIeWRyYSB0ZWlsdCBEaXIgbWl0OiBIaQolRGllIEh5ZHJhIHRlaWx0IERpciBtaXQ6IEhpCiV0bSBoeWRyYSBhcmdsOz4gW1NlaGVyOkFuYWNyaW9uXSB3ZXIgd2lsbCA/CltTZWhlcjpCaXJkeV0gaWNoIHd1ZXJkZSBnZXJuIDopCltTZWhlcjpLaXVdIG9ua2VsPztCdXJpdXMgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLjs+IFtTZWhlcjpLZXldCkhZRFJBS0lMTEVOSFlEUkFLSUxMRU4hISEgOikKCipzZXVmeioKRGEgbGllc3QgbWFuIHVuZ2VhaG50IGVpbiBidWNoLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY3JpcHRlIChab3JybywgMTAuIEZlYiAxOTk4LCAxODo0MTo0Myk6CmlubmVyaGFsYiB2b24gNSBzZWMuICEhIQoKS2V5IGtvbW10IGFuLgpLZXkgZ2VodCBuYWNoIFN1ZWRlbi4KU2FiYmVya29wcCB0cmlua3QgaGFzdGlnIGVpbmVuIEJlY2hlciBDaGFvcyB1bmQgZnVlaGx0IHNpY2ggZ3V0LgpLZXkga29tbXQgYW4uCktleSBnZWh0IG5hY2ggU3VlZGVuLgpLZXkga29tbXQgYW4uCktleSBnZWh0IG5hY2ggU3VlZGVuLgpTYWJiZXJrb3BwIHRyaW5rdCBoYXN0aWcgZWluZW4gQmVjaGVyIENoYW9zIHVuZCBmdWVobHQgc2ljaCBndXQuCktleSBrb21tdCBhbi4KS2V5IGdlaHQgbmFjaCBTdWVkZW4uCktleSBrb21tdCBhbi4KS2V5IGdlaHQgbmFjaCBTdWVkZW4uClNhYmJlcmtvcHAgc2FndDogPEhpY2s+IQpLZXkga29tbXQgYW4uCktleSBnZWh0IG5hY2ggU3VlZGVuLgpLZXkga29tbXQgYW4uCktleSBnZWh0IG5hY2ggU3VlZGVuLgpLZXkga29tbXQgYW4uCktleSBnZWh0IG5hY2ggU3VlZGVuLgpLZXkga29tbXQgYW4uCktleSBnZWh0IG5hY2ggU3VlZGVuLgpLZXkga29tbXQgYW4uCktleSBnZWh0IG5hY2ggU3VlZGVuLgpLZXkga29tbXQgYW4uCktleSBnZWh0IG5hY2ggU3VlZGVuLgpLZXkga29tbXQgYW4uCktleSBnZWh0IG5hY2ggU3VlZGVuLgpLZXkga29tbXQgYW4uCktleSBnZWh0IG5hY2ggU3VlZGVuLgpLZXkga29tbXQgYW4uCktleSBnZWh0IG5hY2ggU3VlZGVuLgpLZXkga29tbXQgYW4uCktleSBnZWh0IG5hY2ggU3VlZGVuLgpLZXkga29tbXQgYW4uCktleSBnZWh0IG5hY2ggU3VlZGVuLgpLZXkga29tbXQgYW4uCktleSBnZWh0IG5hY2ggU3VlZGVuLgpbVG9kOkxhcnNdIEVpbiBVbnRpZXIgaGF0IGdlcmFkZSBLZXkgdW1nZWJyYWNodC4KClpvcnJvIHd1bmRlcnQncyBuaWNodCBtZWhyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogRHUgd2Vpc3N0LCBkYXNzIER1IHp1dmllbCBnZU1VRGRldCBoYXN0LCB3ZW5uLi4uIChKaW1kaWdyaXosIDEwLiBGZWIgMTk5OCwgMjA6MTk6MDUpOgp+IyEgcm49TWFyY3VzIHJ0PTg4NzExOTc0NSByZz1zY2htYXJybgp+IyEgdGlkPTg4NzAyNTExNAoKQWJlcnIgaXNjaCBiZW51dXplIGdhcnIga2VpbmVuICJlbmVuIiA6LSkKCldhciBudXIgZWluIEJzcC4uLiAKCkNpYW8sCiBKZEcsICh3ZXJkZSBkZW1uYWVjaHN0IG1hbCBzbHJuIHRlc3RlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoU3RpbmcsIDEwLiBGZWIgMTk5OCwgMjE6MDM6NDEpOgpbVHJ2ZXM6Q3ltcmlrXSBhcmdsbC4uLi4KCltUb2Q6TGFyc10gRWluIEFib2xldGggaGF0IGdlcmFkZSBDeW1yaWsgdW1nZWJyYWNodC4KCgpNYW5jaG1hbCBzYWdlbiBkaWUgd2VuaWdlIFdvcnRlIHZpZWwgYXVzIDotLwoKU3RpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKFJpbmdvciwgMTAuIEZlYiAxOTk4LCAyMToxMjozMSk6Cn4jISBybj1BbmFjcmlvbiBydD04ODcxMjM5NjAgcmc9c2NobWFycm4KfiMhIHRpZD04ODcwMjUxMTQKCi4uLiBEaXIgZGllIFRlbGVrb20gZWluZW4gQnJpZWYgc2NocmVpYnQsIGluIGRlbSBzaWUgRGljaCBpbiBkZW4gS3JlaXMKImJlc29uZGVyZXIiIEt1bmRlbiBhdWZuaW1tdC4gTWl0IHBlcnNvZW5saWNoZW0gQmVyYXRlciB1bmQKUnVuZC11bS1kaWUtVWhyLVNlcnZpY2UuCgpSaW5nb3IuIFRlbGVrb20tU3BvbnNvci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKFd1cnplbCwgMTAuIEZlYiAxOTk4LCAyMToyMToxMSk6Cn4jISBybj1SaW5nb3IgcnQ9ODg3MTQxNTUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0CmphIGphIGphLCBkYXMga2VubmUgaWNoLi4uIHRlbGVrb20gaXN0IGJsb2VkIDopCgppY2ggd2Vpc3MgamVkZW4gbW9uYXQsIHdlbm4gZGllIHJlY2hudW5nIGtvbW10LCBkYXNzIGljaCB6dXZpZWwgZ2VtdWRkZXQKaGFiZS4uLgoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKEN5bXJpaywgMTAuIEZlYiAxOTk4LCAyMTozNDo1Nik6Cn4jISBybj1NaW5nbyBydD04ODcwMjkyMDMgcmc9c2NobWFycm4KfiMhIHRpZD04ODcwMjUxMTQKam8gc28gc2llaHQgZXMgYXVzIHdlbiBlaW4gbG93LWxldmVsIG5vbi13dXJzdF9zZWhlciBzaWNoIG1hbCBydW50ZXIgd2FndC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IER1IHdlaXNzdCwgZGFzcyBEdSB6dXZpZWwgZ2VNVURkZXQgaGFzdCwgd2Vubi4uLiAoV29vZHksIDExLiBGZWIgMTk5OCwgMDE6NTQ6MzYpOgp+IyEgcm49SmltZGlncml6IHJ0PTg4NzEzODM0NSByZz1zY2htYXJybgp+IyEgdGlkPTg4NzAyNTExNApXZWlzcyBnYXIgbmVkIHdhcyBJaHIgZ2VnZW4gcGluZSBhbHMgTmV3c3JlYWRlciBoYWJ0IDopCgp3b29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hsYWd6ZWlsZW4uLiAoWmVwaHlyLCAxMS4gRmViIDE5OTgsIDEwOjExOjQzKToKLi4gYXVzIGRlbSBCb25uZXIgR2VuZXJhbGFuemVpZ2VyIHZvbSAxMC4yLjE5OTg6CgoKIktleSBhbSBLbmllIG9wZXJpZXJ0IC0gNCBXb2NoZW4gUGF1c2UhIgoKIk1HIHN0YXJ0ZXQgbWl0IHZpZWwgU2Nod3VuZyBpbnMgSmFociIKCgpaZXBoeXIsIHd1c3N0ZSBnYXIgbmljaHQsIGRhc3Mgd2lyIHNjaG9uIHNvIGJla2FubnQgc2luZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNjaGxhZ3plaWxlbi4uIChGcmV1bmQsIDExLiBGZWIgMTk5OCwgMTA6NTM6MzgpOgp+IyEgcm49WmVwaHlyIHJ0PTg4NzE4ODMwMyByZz1zY2htYXJybgp+IyEgdGlkPTg4NzE4ODMwMwpIbSwgZGFubiBtdXNzIGljaCBqZXR6dCBLZXkgYXVmIDI4IFRhZ2UgU3BpZWxwYXVzZSBzZXR6ZW4sIG9kZXIgaGFiZSBpY2ggZGEKaXJnZW5kZXR3YXMgbWlzc3ZlcnN0YW5kZW4/IAoKRnJldW5kLCBzb3JndCBzaWNoIHVtIGRpZSBHZXN1bmRoZWl0IGRlciBTZWhlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2NobGFnemVpbGVuLi4gKEtleSwgMTEuIEZlYiAxOTk4LCAxMjowNDozNCk6Cn4jISBybj1GcmV1bmQgcnQ9ODg3MTkwODE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MTg4MzAzCk5peCBkYSEKRGFzIG11c3Mgc2ljaCB1bSBlaW4gTWlzc3ZlcnN0YWVuZG5pcyBoYWx0ZW4hCk9kZXIgaGFiIGljaCBtaWNoIHdpcmtsaWNoIG9wZXJpZXJlbiBsYXNzZW4/IEhtbSBtb20gaWNoIGZyYWcgbWFsIEtleSA6KQoKS2V5LCBLZXksIEtleSwgS2V5IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2NobGFnemVpbGVuLi4gKEJhbWJ1bGtvLCAxMS4gRmViIDE5OTgsIDE0OjA5OjIwKToKfiMhIHJuPVplcGh5ciBydD04ODcxODgzMDMgcmc9c2NobWFycm4KfiMhIHRpZD04ODcxODgzMDMKRGFzIGlzdCBkb2NoIGdhciBuaWNodHMuCkhpZXIgaW4gTWFuY2hlc3RlciBnaWJ0IGVzIHNvZ2FyIGVpbmVuIHJhZGlvc2VuZGVyIEtleSAxMDMKCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IG5pY2h0IGRhICh3ZWcpIChDYXR3ZWF6bGUsIDExLiBGZWIgMTk5OCwgMTU6MDg6MjIpOgp+IyEgb249R25vbWUgb3Q9ODg3MjA1MzY4IG9nPWVudHdpY2tsdW5nCn4jISBybj1BY3JpbW9uIHJ0PTg4NzIwNTExNSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg4NzEyMzA0MQptZWluc3QgZHUgbmljaHQsIGRhc3MgIndlZyIgdW5kICJhYndlc2VuZCIgc28gemllbWxpY2ggZGllIGdsZWljaGUKYmVkZXV0dW5nIGhhYmVuPyBqZWRlbmZhbGxzIGluIGRpZXNlbSBrb250ZXh0LgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IG5pY2h0IGRhICh3ZWcpIChDYXR3ZWF6bGUsIDExLiBGZWIgMTk5OCwgMTU6MDg6MjQpOgp+IyEgb249RnJldW5kIG90PTg4NzIwNTQzNiBvZz1lbnR3aWNrbHVuZwp+IyEgcm49R25vbWUgcnQ9ODg3MjA1MzY4IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODg3MTIzMDQxCkJlaSBtaXIgaGVpc3N0IGRhcyBhbGlhczogYmlud2VnIApVbmQgZGFzIHRyaWZmdCBlcyBkb2NoIHdvaGwgYWJzb2x1dD8KCkZyZXVuZCwgd3VuZGVydCBzaWNoIHVlYmVyIEFjcmltb25zIFZlcnN1Y2hlLCBCZWZlaGxlIHp1IHZlcmxhZW5nZXJuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbmljaHQgZGEgKHdlZykgKENhdHdlYXpsZSwgMTEuIEZlYiAxOTk4LCAxNTowODoyNSk6Cn4jISBvbj1BY3JpbW9uIG90PTg4NzIwNTYzMSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49R25vbWUgcnQ9ODg3MjA1MzY4IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODg3MTIzMDQxCnNjaG9uLCBhYmVyICJ3ZWciIGthbm4gYXVjaCBzZWhyIGd1dCBlaW5lIGFuZGVyZSwgcGFzc2VuZGVyZSBCZWRldXR1bmcgaGFiZW4uCgp3ZWcgaG9lbGxlbmZldWVyCkR1IGxhZXNzdCBkYXMgYnJlbm5lbmRlIEhvZWxsZW5mZXVlciBmYWxsZW4uCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IG5pY2h0IGRhICh3ZWcpIChDYXR3ZWF6bGUsIDExLiBGZWIgMTk5OCwgMTU6MDg6MjYpOgp+IyEgb249Q2F0d2VhemxlIG90PTg4NzIwNTc0NCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49QWNyaW1vbiBydD04ODcyMDU2MzEgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD04ODcxMjMwNDEKQWJlciAnd2VnIGhvZWxsZW5mZXVlcicgd2lyZCBkYW5uIGRvY2ggc293aWVzbyBtaXQgd2ggZ2VhbGlhc3QsIG9kZXI/CllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogbmljaHQgZGEgKHdlZykgKENhdHdlYXpsZSwgMTEuIEZlYiAxOTk4LCAxNTowODoyNyk6Cn4jISBvbj1GcmV1bmQgb3Q9ODg3MjA1NzYwIG9nPWVudHdpY2tsdW5nCn4jISBybj1BY3JpbW9uIHJ0PTg4NzIwNTYzMSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg4NzEyMzA0MQpEYXMgc29sbHRlIGRvY2ggYmVzc2VyIHNvIGhlaXNzZW46Cgp3aXJmIGJpdHRlIG1vZWdsaWNoc3Qgc2NobmVsbCBkYXMgYnJlbm5lbmRlIGhvZWxsZW5mZXVlciBpbSBob2hlbiBib2dlbiBmb3J0CgpGcmV1bmQsIHNjaG1hcnJlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2NobGF1ZXIgcGFwYWdlaSAoWmFwaG9iLCAxMS4gRmViIDE5OTgsIDE2OjI2OjAwKToKfiMhIHJuPUxpIHJ0PTg4NzEwNTYzMSByZz1zY2htYXJybgp+IyEgdGlkPTg4NzEwNTYzMQpEYXMgd2FyIGFiZXIgbmljaHQgZ2VyYWRlIGViZW4gOz0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBuaWNodCBkYSAod2VnKSAoR3JpbW1ib3JuLCAxMS4gRmViIDE5OTgsIDIwOjUzOjA3KToKfiMhIG9uPVdvb2R5IG90PTg4NzIwNzkzNCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49Q2F0d2VhemxlIHJ0PTg4NzIwNzg1NCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg4NzEyMzA0MQpEaWVzZXIgbGV0enRlIEFydGlrZWwgaGluZ2VnZW4gZ2Vob2VydCBmaW5kZSBpY2ggaW4gUnVicmlrCmRpc2t1c3Npb24sIGRlbm4gZ2VuYXUgZGllIHdpcmQgc2ljaCBiZXN0aW1tdCBnbGVpY2gKZW50ZmFjaGVuIDopCgp3b29keS4tCgpQUy4gYWJlciBESUVTRU4gYXJ0aWtlbCBzb2xsdGUgbWFuIGJlaSBnZW5hdWVyZXIgdWViZXJsZWd1bmcKICAgIHdpZWRlcnVtIG5hY2ggc2NobWFycm4gdmVyc2NoaWViZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IG5pY2h0IGRhICh3ZWcpIChHcmltbWJvcm4sIDExLiBGZWIgMTk5OCwgMjA6NTM6MDkpOgp+IyEgb249T3JrdG9ldGVyIG90PTg4NzIwODA1OCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49V29vZHkgcnQ9ODg3MjA3OTM0IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODg3MTIzMDQxCkhlcnIgR3JpbW1ib3JuIEJpdHRlICEgSWhyIFN0aWNod29ydCAhCgpPcmtUIHNjaG1hcnJudCBtaXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBuaWNodCBkYSAod2VnKSAoR3JpbW1ib3JuLCAxMS4gRmViIDE5OTgsIDIwOjUzOjM3KToKfiMhIG9uPUFjcmltb24gb3Q9ODg3MjA4MTcyIG9nPWVudHdpY2tsdW5nCn4jISBybj1Pcmt0b2V0ZXIgcnQ9ODg3MjA4MDU4IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODg3MTIzMDQxCkRpZXNlciBsZXR6dGUgQXJ0aWtlbCBnZWhvZXJ0IHdvaGwgZWhlciBuYWNoIG11ZWxsIDotKQpBYmVyIGJpdHRlIGVyc3QsIG5hY2hkZW0gR3JpbW1ib3JuIGlobiBnZWxlc2VuIGhhdC4KVW5kIGRpZXNlciBoaWVyPyBEZXIgc29sbCBkZW4gQXJ0aWtlbCB2b24gT3JrdG9ldGVyIGJlZ2xlaXRlbi4KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogbmljaHQgZGEgKHdlZykgKExpLCAxMi4gRmViIDE5OTgsIDEwOjI5OjA4KToKfiMhIHJuPUNhdHdlYXpsZSBydD04ODcyMDYxMDUgcmc9c2NobWFycm4KfiMhIHRpZD04ODcxMjMwNDEKS29lbm50ZSBtYW4gIndlZyIgbmljaHQgaW4gIndlY2giIHVtdGF1ZmVuPyBkYXMgaXN0IG5pY2h0IHNvIGxhbmcgd2llCiJhYndlc2VuZCIgdW5kIGRvY2gga2xhciwgZGFzcyBuaWNodCBkaWUga2xlaW5lIHN0cmFzc2UgZ2VtZWludCBpc3QsIGRpZQp3dWVyZGUgIGphICJ3ZWVjaCIgaGVpc3Nlbi4uLiAuLSkKTGkgKGtlbm50IHNvbGNoZSBzcHJ1ZWNoZSB3aWU6ICJ3byBrb21tc3QgZHUgZGVuIHdlY2g/IikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmgidXRldCBldWNoIHZvciBkZW0gem9ybiBkZXIgZyJvdHRlciAoRW1iZSwgMTIuIEZlYiAxOTk4LCAxMzowMzowNCk6CnJ3aW5rIGJvaW5nCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCkR1IHdpbmtzdCBCb2luZyBhdXMgZGVyIEZlcm5lIHp1LgoKOi0pCgpncnVzcywgZU1CZWUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcmdsIChUZWRkeSwgMTIuIEZlYiAxOTk4LCAxMzoyNTo1Nik6CltXYXRlcjpUZWRkeV0gQXJnbCwgMyBMUHMsIFdhc3NlcmRyYWNoZXJlc2V0IDwxMzoyMDo0NT4KW1dhdGVyOkJvaW5nXSBrb2VubnRlIHNjaGxpbW1lciBzZWluIC4uLiBkdSBrb2VubnRlc3QgdmVyZ2lmdGV0IHNlaW5tIDopCltXYXRlcjpCb2luZ10gPDEzOjIwOjU5PgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBUZWRkeSB1bWdlYnJhY2h0LgpbVG9kOkxhcnNdIDwxMzoyMDo1NT4KW1dhdGVyOkdub21lXSBBUlJSR0xMTCA8MTM6MjE6MDg+CltXYXRlcjpaZXBoeXIgbXVzcyBqZXR6dCBhYmVyIGRvY2gga2ljaGVybi4gPDEzOjIxOjEwPl0KW1dhdGVyOkdub21lXSAuLi51bmQgZXMga2FtIHNjaGxpbW1lciA6KSA8MTM6MjE6MjI+CltXYXRlcjpCb2luZ10gb29wcyAuLi4gaGFiIHRvZCBuaWNodCBhbmdlaGFidCA8MTM6MjE6MzY+CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTWlsaXRhZXJzLi4uIChBbmF0b2wsIDEyLiBGZWIgMTk5OCwgMTQ6MjU6MjEpOgp+IyEgcm49QmFtYnVsa28gcnQ9ODg3Mjg5NzgwIHJnPWRpc2t1c3Npb24KfiMhIHRpZD04ODcxNDM1MDYKRG8geW91IHJlYWxseSB3YW50IHRvIHR1cm4gb2ZmIHRoZSBCbGFjayBCb3g/ICh5L24pIFtuXSAtPiB5ClBsZWFzZSB3YWl0Li4uCi4uLmRvbmUuIFlvdSBtYXkgdHVybiBvZmYgdGhlIEJsYWNrIEJveCBhbmQgbG9vc2UgeW91ciBtYWNoaW5lIG5vdy4KCkJvZXNlYm9lc2UsCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE1pbGl0YWVycy4uLiAoR3JpbW1ib3JuLCAxMi4gRmViIDE5OTgsIDE0OjMwOjA4KToKfiMhIHJuPUFuYXRvbCBydD04ODcyODk5MjEgcmc9c2NobWFycm4KfiMhIHRpZD04ODcxNDM1MDYKRHUgaGFzdCBkaWUgU2FuZHVociB2ZXJnZXNzZW4uLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIGJpbiBmbGVpc3NpZy4gOykgKEZyZXVuZCwgMTIuIEZlYiAxOTk4LCAxNzoyNDowOSk6CjIxIEFsYm9pbiAuLi4uIDEwMDowMSBtIC4uLi4uIDAwJzAzCjIxIEdyaW1tYm9ybiAuIDE3MTowNiBtIC4uLi5hIDAwJzE5CjIxIE1hcmN1cyAuLi4uIC41MzowMiBtIC4uLi4uIDAwJzAyCjI1IEJpZXJjaGVuIC4uIDEzODowMCBtIC4uaWUuIDAwJzIyCjI1IEZlbGFndW5kIC4uIC4yNjoyMyBtIC4uLi4uIDAwJzU4CjI1IEdlcnJpIC4uLi4uIC4yMToxNSBtIC4uLi4uIDAwJzA2CjI2IEFzdGFyIC4uLi4uIC41NDoxMSBtIC4uLi4uIDAwJzA2CjI2IEtvYmF5YXNoaSAuIDE1MjowMSBtIC4uLi4uIDAxJzI2CjI2IFJvbmRhIC4uLi4uIC41MjoxMCBmIC4uLi5hIDAwJzAxCjI2IFNhaWthbiAuLi4uIC4yNDowNiBtIC4uLi5hIDAwJzE2CjI2IFRvZXRlciAuLi4uIDIwMTowMSBtIC4uLi4uIDAyJzQ4CjM1IE1pa2EgLi4uLi4uIDExMDowMiBtIC4uLi4uIDAzJzM1CjY2IEZyZXVuZCAuLi4uIDQzNDoyMiBtIC4uLi5hIC4uLi4uCjY2IFJvY2h1cyAuLi4uIDI4NDoxNSBtIC4uLi4uIDAwJzEyCjExMSBSdW1hdGEgLi4uLiA4ODU6MTYgZiAuLi4uYSAwMCcwNwoKSmFqYSwgamV0enQga29tbWVuIHdpZWRlciBkaWUgQXVzcmVkZW4sIGRhc3MgYWxsZSwgZGllIGlkbGUgc2luZCwKcHJvZ3JhbW1pZXJlbi4uLiA6LSkKCkZyZXVuZCwgd2FjaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJY2ggYmluIGZsZWlzc2lnLiA7KSAoUm9uZGEsIDEyLiBGZWIgMTk5OCwgMTc6NDM6MzQpOgp+IyEgcm49RnJldW5kIHJ0PTg4NzMwMDY0OSByZz1zY2htYXJybgp+IyEgdGlkPTg4NzMwMDY0OQpOZWUsIGljaCB2ZXJzdWNoZSB6dSBhcmJlaXRlbiA6KQoKUm9uZGEsCiAgICAgIHNjaG1hcnJlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJY2ggYmluIGZsZWlzc2lnLiA7KSAoR3JpbW1ib3JuLCAxMi4gRmViIDE5OTgsIDE3OjU3OjIwKToKfiMhIHJuPUZyZXVuZCBydD04ODczMDA2NDkgcmc9c2NobWFycm4KfiMhIHRpZD04ODczMDA2NDkKTm9lLCBpY2ggYXJiZWl0ZS4gT2RlciBzbyBhZWhubGljaC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBJY2ggYmluIGZsZWlzc2lnLiA7KSAoTWFyY3VzLCAxMi4gRmViIDE5OTgsIDE4OjAxOjQ1KToKfiMhIHJuPUdyaW1tYm9ybiBydD04ODczMDI2NDAgcmc9c2NobWFycm4KfiMhIHRpZD04ODczMDA2NDkKSWNoIHByb2dyYW1taWVyZSAuLi4gOykKCk1hcmN1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWJlbiBpbiBlaW5lbSBTZW1pbmFyOiAoU2lsdmFuYSwgMTIuIEZlYiAxOTk4LCAxODozODoyNyk6ClppdGF0IGRlcyBWb3J0cmFnZW5kZW46IEFsc28gbWl0IGFuZGVyZW4gV29ydGVuOiBEYW1pdCBtYW4gS2luZGVyIHRvdGZhaHJlbgprb25udGUsIG11c3N0ZSBtYW4gZXJzdCBTdHJhc3NlbiBiYXVlbi4uLgoKICBTaWx2YW5hIC0gaGF0IGRlbiBSZXN0IGRlcyBTYXR6ZXMgd2VnZW4gaGVmdGlnZW4gV2lkZXJzcHJ1Y2hzIG5pY2h0IAogICAgICAgICAgICAgbWl0YmVrb21tZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzdGlsYmx1ZXRlbiAoR3JpbW1ib3JuLCAxMi4gRmViIDE5OTgsIDIxOjE1OjE5KToKfiMhIG9uPUdyaW1tYm9ybiBvdD04ODczMTQ1MTAgb2c9d2l0emUKfiMhIG9uPUFjcmltb24gb3Q9ODg3MzA4OTgzIG9nPXdpdHplCn4jISBybj1MaSBydD04ODcyODAwMTUgcmc9d2l0emUKfiMhIHRpZD04ODcyODAwMTUKTmFqYS4uLgpEYXMgbWVpc3RlIHZvbiBkaWVzZW4gU2FldHplbiB3YXIgZXJuc3QgZ2VtZWludCwgdW5kIGF1Y2ggcmljaHRpZyBnZXNhZ3QsIHVuZApudXIgd2VpbCBlcyBlaW5lIGRyZWNraWdlIEludGVycHJldGF0aW9uIHZvbiBNZW5zY2hlbiBtaXQgZWluc2VpdGlnZXIKUGhhbnRhc2llIGdlYmVuIGtvZW5udGUsIHNpbmQgZGFzIG5vY2ggbGFuZ2Uga2VpbmUgU3RpbGJsdWV0ZW4uCkF1c3plcmRlbSBoYXQgdmVybXV0bGljaCBkZXIgU3RpbGJsdWV0ZW5hdXNzdWNoZXIgbmljaHQgZ2V3dXN6dCwgd2FzIExpZWJlIGlzdAotIGRhcyBoYXQgZGFzIEtpbmQgdmllbCBiZXNzZXIgZ2V3dXN6dC4KCkRhZnVlciB3YXJlbiBpbSBHYW56ZW4gZHJlaSBlY2h0ZSBTdGlsYmx1ZXRlbiBkYWJlaS4KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzdGlsYmx1ZXRlbiAoR3JpbW1ib3JuLCAxMi4gRmViIDE5OTgsIDIxOjIxOjI0KToKfiMhIHJuPUdyaW1tYm9ybiBydD04ODczMTQ1MTkgcmc9c2NobWFycm4KfiMhIHRpZD04ODcyODAwMTUKU29ycnkgZnVlciBkYXMgZG9wcGVsdGUgVmVybGVnZW4sIGljaCB3YXIgYmlzY2hlbiB1bmtvbnplbnRyaWVydC4gRGFzIHNvbGx0ZQpuYXR1ZXJsaWNoIGF1cyB3aXR6ZSByYXVzdmVybGVndCB3ZXJkZW4sIG5pY2h0IHJlaW4uIE9kZXIga2FubiBtaXIgamVtYW5kCnNhZ2VuLCB3YXMgZGF2b24gZW50d2VkZXIgZWluIFdpdHogaXN0LCBhbHMgc29sY2hlciBnZW1laW50IHdhciBvZGVyIGFscwpzb2xjaGVyIGdlbWVpbnQgc2VpbiBrb2VubnRlPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYWhuc2lubiBpbSBTY2hhY2h0IChQZXJ0aW5heGUsIDEyLiBGZWIgMTk5OCwgMjI6Mzc6NTkpOgp1IHNvbGx0ZXN0IGRlbiBNYW50ZWwgZXJzdCBvZWZmbmVuLgpUb2QgRGllIEhhdXNoYWVsdGVyaW4gZGVyIE9tYSBkZXIgR2FlcnRuZXJpbiBkZXIgU2Nod2VzdGVyIGRlcgpUb2QgTmFjaGJhcmluIGRlcyBCcnVkZXJzIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgLi4uCkRlciBUZWRkeSBrbnVkZGVsdCBEaWNoIGVpbiBsZXR6dGVzIE1hbC4KcQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FobnNpbm4gMiAoUGVydGluYXhlLCAxMi4gRmViIDE5OTgsIDIyOjQwOjExKToKRGlyIGtvbW1lbiBad2VpZmVsLCBvYiBEdSBqZW1hbHMgZGFzIEVuZGUgZGVzIFNjaGFjaHRlcyBsZWJlbmQKZXJyZWljaGVuIHdpcnN0LiBXZW5pZ3N0ZW5zIHNpbmQgZGllIExlaWNoZW50ZWlsZSwgZGllIGhpZXIKaGVydW1saWVnZW4sIG5pY2h0IHNvIHplcm1hdHNjaHQgd2llIGRpZSBhbmRlcmVuLCBzb25kZXJuIHNlaGVuCmVoZXIgc2F1YmVyIGFiZ2VzY2huaXR0ZW4gYXVzLgpFcyBnaWJ0IHZpZWxlIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBvYmVuLCB1bnRlbiwgc3VlZHdlc3Rlbiwgc3VlZGVuLApEaWUgSGF1c2hhZWx0ZXJpbiBkZXIgT21hIGRlcyBGcmV1bmRlcyBkZXIgR2FlcnRuZXJpbiBkZXIgU2Nod2VzdGVyIGRlcgpOYWNoYmFyaW4gZGVzIEJydWRlcnMgZGVzIFNjaHdlcnRtZWlzdGVycy4KRGllIEhhdXNoYWVsdGVyaW4gZGVyIE9tYSBkZXMgRnJldW5kZXMgZGVyIEdhZXJ0bmVyaW4gZGVyIFNjaHdlc3RlciBkZXIKTmFjaGJhcmluIGRlcyBCcnVkZXJzIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIHdhaG5zaW5uaWcgZ3V0CmdlbHVuZ2VuZW4KVXNoaXJvLXRvYmktb3JpZ2FtaS1taWthZG8tc2VpLWtvLWZ1bmFraS1mdWppLXlhbWFoYS1rYXdhc2FraS13aXNjaGl3YXNjaGktZ2VyCmkgYW4uCk1hdHJpeDogRWluZSBIYXVzaGFlbHRlcmluIGRlciBPbWEgZGVzIEZyZXVuZGVzIGRlciBHYWVydG5lcmluIGRlciBTY2h3ZXN0ZXIKZGVyIE5hY2hiYXJpbiBkZXMgQnJ1ZGVycyBkZXMgU2Nod2VydG1laXN0ZXJzIGlzdCBhYnNvbHV0IGZpdC4KRGllIEhhdXNoYWVsdGVyaW4gZGVyIE9tYSBkZXMgRnJldW5kZXMgZGVyIEdhZXJ0bmVyaW4gZGVyIFNjaHdlc3RlciBkZXIKTmFjaGJhcmluIGRlcyBCcnVkZXJzIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgemVyc2NobWV0dGVydCBEaWNoIGluIGtsZWluZQpTdHVlY2tjaGVuLgp1IHNvbGx0ZXN0IGRlbiBNYW50ZWwgZXJzdCBvZWZmbmVuLgpUb2QgRGllIEhhdXNoYWVsdGVyaW4gZGVyIE9tYSBkZXIgR2FlcnRuZXJpbiBkZXIgU2Nod2VzdGVyIGRlcgpUb2QgTmFjaGJhcmluIGRlcyBCcnVkZXJzIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgLi4uCkRlciBUZWRkeSBrbnVkZGVsdCBEaWNoIGVpbiBsZXR6dGVzIE1hbC47VG9kIERpZSBIYXVzaGFlbHRlcmluIGRlciBPbWEgZGVyCkdhZXJ0bmVyaW4gZGVyIFNjaHdlc3RlciBkZXIKVG9kIE5hY2hiYXJpbiBkZXMgQnJ1ZGVycyBkZXMgU2Nod2VydG1laXN0ZXJzIC4uLgpUb2QgT2RlciB3YXIgZXMgZGllIE9tYSBkZXIgR2FlcnRuZXJpbiBkZXIgTmFjaGJhcmluIGRlciBTY2h3ZXN0ZXIgZGVzClRvZCBTY2h3ZXJ0bWVpc3RlcnM/ClRvZCBBbHNvLCBkaWUgR2FlcnRuZXJpbiBkZXIgSGF1c2hhZWx0ZXJpbiBkZXIgT21hIGRlcyBGcmV1bmRlcyBkZXIKVG9kIFNjaHdlc3RlciBkZXMgU2Nod2VydG1laXN0ZXJzLi4uIApUb2QgQVJHTCEgUm9jaHVzLCBsYXNzIERpciBnZWZhZWxsaWdzdCB2ZXJudWVuZnRpZ2UgTmFtZW4gZnVlciBEZWluZQpUb2QgTW9uc3RlciBlaW5mYWxsZW4hClRvZCBEZXIgSGF1c2hhZWx0ZXJpbiBkZXIgR2FlcnRuZXJpbiBkZXMgQnJ1ZGVycyBkZXMgU2Nod2VydG1laXN0ZXJzClRvZCBpaHJlIFNjaHdlc3Rlci4uLiAKVG9kIEZpc2NoZXJzIEZyaXR6IGZpc2NodCBmcmlzY2hlIEZpc2NoZS4uLgpFaW4gRnJvc2NoIGh1ZXBmdCBoZXJlaW4uCkVpbiBGcm9zY2ggaHVlcGZ0IG5hY2ggU3VlZGVuLgpUb2QgRGllIEhhdXNoYWVsdGVyaW4gZGVyIE9tYSBkZXMgRnJldW5kZXMgZGVyIFNjaHdlc3RlciBkZXIgTmFjaGJhcmluClRvZCBEdSBoYXN0IGRhIHdhcyB2ZXJnZXNzZW4sIExhcnMuClRvZCBJY2ggZ2VicyBhdWYuClRvZCBFdHdhcyBHZWhlaW1uaVRvZCBkZXMgQnJ1ZGVycyBkZXMgU2Nod2VydG1laXN0ZXJzLi4uCnN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgUGVydGluYXhlClRvZCB1bWdlYnJhY2h0LgpCZWlsZWlkIFdBSEhIIDopKSkpKCkKQmVpbGVpZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzdGlsYmx1ZXRlbiAoTGksIDEzLiBGZWIgMTk5OCwgMTA6MTI6MTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg4NzMxNDUxOSByZz1zY2htYXJybgp+IyEgdGlkPTg4NzI4MDAxNQpBY2ggQWNyaW1vbiEKTmF0dWVybGljaCBzaW5kIGRhcyBpbSBncmFtbWF0aWthbGlzY2hlbiBvZGVyIHN0aWxpc3Rpc2NoZW4gU2lubmUga2VpbmUgZWNodGVuClN0aWxibHVldGVuLiBFcyBnZWh0IGhpZXIgYXVjaCBuaWNodCBkYXJ1bSwgc2ljaCB1ZWJlciBLaW5kZXIgbHVzdGlnIHp1Cm1hY2hlbi4gRXMgZ2VodCBoaWVyIG51ciBkYXJ1bSwgZGFzcyBqZW1hbmQgKGhpZXIgd2FyZW4gZXMga2luZGVyKSBldHdhcyBzYWd0LApkYXNzIG1hbiBhbmRlcnMgaW50ZXJwcmV0aXJlbiBrYW5uLiBVbmQgZGFzIHdpdHppZyBpc3QuIERhc3MgZHUgc29sY2hlCmhhcm1sb3NlbiBhbnNwaWVsdW5nZW4gZ2xlaWNoIGFscyBkcmVja2lnZSBGYW50YXNpZSB2ZXJ0ZXVmZWxzdCwgd2FyIHVucyBhbGxlbgprbGFyIChvZGVyIG5pY2h0PykgCkljaCBnbGF1YmUgbmljaHQsIGRhc3MgbWFuIGRlbSBzdGlsYmx1ZXRlbmF1c3N1Y2hlciAod2FzIGZ1ZXIgZWluIHdvcnQpCnZvcndlZmVuIGthbm4sIGVyIHd1ZXNzdGUgbmljaHQsIHdzIGxpZWJlIGlzdCwgYWJlciB2b24gZGlyIHNpbmQgd2lyIHNvbGNoZQp2ZXJhbGxnZW1laW5lcnVuZ2VuIGphIGdld29laG50Li4uKGRhcyBpc3QgamV0enQga2VpbmUgdmVydW5nbGltcGZ1bmcgdm9uIGRpciwKc29uZGVyIGVpbmUgZWluZmFjaGUgZmVzdHN0ZWxsdW5nISkKQWJlciB3aWVzbyBlcmtsYWVyZSBpY2ggYXVzZ2VyZWNobmV0IGRpciwgd2FzIGRhcmFuIGx1c3RpZyB3YXIsIG9kZXIgd2FzIEh1bW9yCmlzdD8KTGkgKHNldWZ6dCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHN0aWxibHVldGVuIChMaSwgMTMuIEZlYiAxOTk4LCAxMDoxNTowMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODg3MzE0ODg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MjgwMDE1CkFjaCBqYSBsaWViZXIgR3JpbW1pIQpOdXIgd2VpbCBkdSBkYXMgbmljaHQgd2l0emlnIGZpbmRlc3QsIG11c3N0IGR1IGdsZWljaCB3aWVkZXIgYWxsZXMgdmVybGVnZW4uLi4KRWlnZW50aWNoIG11ZXNzdGUgaWNoIGRhcyBqYSB3aWVkZXIgenVydWVja3ZlcmxlZ2VuLCBhYmVyIGljaCBiaW4gbmljaHQgc28Ka2luZGlzY2ggd2llIGR1Li4uIDotKQpMaSAoa29wZnNjaHVldHRlbG5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogc3RpbGJsdWV0ZW4gKEdyaW1tYm9ybiwgMTMuIEZlYiAxOTk4LCAxMDo1MDo1OCk6Cn4jISBybj1MaSBydD04ODczNjEzMDMgcmc9c2NobWFycm4KfiMhIHRpZD04ODcyODAwMTUKSW0gR2VnZW50ZWlsLiBXZW5uIGV0d2FzIGluIHdpdHogc3RlaHQsIHdhcyBudW4gYmVpIGJlc3RlbSBXaWxsZW4ga2VpbiBXaXR6CmlzdCwgZGFubiBiZWhhbHRlIGljaCBtaXIgamVkZXJ6ZWl0IHZvciwgZGFzIGluIGVpbmUgcGFzc2VuZGVyZSBSdWJyaWsgenUKdmVybGVnZW4uIFVuZCB3aXR6ZSBpc3QgZWluZSBSdWJyaWssIHdvIGljaCBkYXMgYXVjaCBoYWxid2VncyBrb25zZXF1ZW50IHR1ZSwKd2VpbCBpY2ggd2Vpc3MsIHdpZSBmcnVzdHJpZXJlbmQgZGFzIHNlaW4ga2Fubiwgd2VubiBtYW4gbGllc3QgIkFydGlrZWw6IDMgdm9uCjIwIiwgc2ljaCBhdWYgZGllIFdpdHplIGZyZXV0IHVuZCBkYW5uIHN0ZWh0IGRhIGFsbGVzIG1vZWdsaWNoZSwgYWJlciBrZWluZQpXaXR6ZS4KCkdyaW1tYm9ybiBkZXIgVmVybGVnZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHN0aWxibHVldGVuIChMaSwgMTMuIEZlYiAxOTk4LCAxMDo1ODo0Mik6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODg3MzYzNDU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MjgwMDE1ClZlcnN0ZWhzdCBkdSBlcyBuaWNodD8gbnVyIHdlaWwgZHUgZXMgbmljaHQgd2l0emlnIGZpbmRlc3QsIGhlaXN0IGVzIG5pY2h0LApkYXNzIGVzIGFuZGVyZW4gbmljaHQgdmllbGxlaWNodCBkb2NoIHdpdHppZyBmaW5kZW4uLi4KSWNoIHN0YXVuZSBpbW1lciB3aWVkZXIgdWViZXIgZGVpbmUgU2VsYnN0aGVycmxpY2hrZWl0LCBtaXQgZGVyIGR1IGhpZXIKQXJ0aWtlbCB2ZXJsZWdzdC4uLgpMaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogc3RpbGJsdWV0ZW4gKEdyaW1tYm9ybiwgMTMuIEZlYiAxOTk4LCAxMTo0MTo0OCk6Cn4jISBybj1MaSBydD04ODczNjM5MjIgcmc9c2NobWFycm4KfiMhIHRpZD04ODcyODAwMTUKTm9jaG1hbDogSWNoIHZlcmxlZ2UgZWluZW4gQXJ0aWtlbCBhdXMgd2l0emUgX25pY2h0Xywgd2VubiBkYSBtb2VnbGljaGVyd2Vpc2UKZXZlbnR1ZWxsIHZpZWxsZWljaHQgZXR3YXMgYWxzIFdpdHogZ2VtZWludCBzZWluIGtvZW5udGUuIE9iIGljaCBwZXJzb2VubGljaApkYXMgd2l0emlnIGZpbmRlLCBpc3Qgdm9lbGxpZyB1bmVyaGVibGljaC4gQWJlciBEaXNrdXNzaW9uZW4gdWViZXIgV2l0emUgc2luZAppLmEuIGluIGtlaW5lciBIaW5zaWNodCBtb2VnbGljaGVyd2Vpc2UgYWxzIFdpdHogZ2VkYWNodCB1bmQgaGFiZW4gaW4gZGVyClJ1YnJpayBhdWNoIG5pY2h0cyB6dSBzdWNoZW4uCldhcyBEVSB1ZWJlciBkaWUgU2VsYnN0aGVycmxpY2hrZWl0IChiZXNzZXI6IFNlbGJzdGdlcmVjaHRpZ2tlaXQpIHNjaHJlaWJzdCwKaXN0IG5hdHVlcmxpY2ggdm9lbGxpZyByaWNodGlnLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBzdGlsYmx1ZXRlbiAoUGF0cnluLCAxMy4gRmViIDE5OTgsIDExOjQ2OjExKToKfiMhIHJuPUxpIHJ0PTg4NzM2MTEzNiByZz1zY2htYXJybgp+IyEgdGlkPTg4NzI4MDAxNQp3YXJ1bSByZWNodGZlcnRpZ3N0IGR1IGRpY2gsIGxpPyBpY2ggaGFiZSB2aWVsIGdlbGFjaHQgdW5kIGZhbmQgZXMgdG9sbC4Kd2VyIGRhcmF1cyBqZXR6dCBlaW5lIGdydW5kc2F0emRpc2t1c2lvbiBtYWNoZW4gd2lsbCwgdWViZXIgZGVuIGthbm4gbWFuCmVpZ2VudGxpY2ggYXVjaCBudXIgbGFjaGVuLi4ud2VubiBhdWNoIGluIGVpbmVyIGFuZGVycyBnZW1laW50ZW4gZm9ybS4KCi0tLS0tLQpwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHN0aWxibHVldGVuIChQYXRyeW4sIDEzLiBGZWIgMTk5OCwgMTE6NDc6MzEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg4NzMxNDg4NCByZz1zY2htYXJybgp+IyEgdGlkPTg4NzI4MDAxNQppY2ggaGFiZSB1ZWJlciBtYW5jaGUgd2l0emUgdm9uIGRpciBzY2hvbiB3ZWl0YXVzIHdlbmlnZXIgZ2VsYWNodC4Kd2VubiBkdSBkYW1pdCBuaWNodCB6dXJlY2h0a29tbXN0LCBkYW5uIGdpYnQgZGlyIGRhcyBub2NoIGxhbmdlIG5pY2h0CmRhcyByZWNodCwgYW5kZXJlIGxldXRlIGluIGRpZXNlciBiZXppZWh1bmcgenUgYmV2b3JtdW5kZW4uCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBzdGlsYmx1ZXRlbiAoR3JpbW1ib3JuLCAxMy4gRmViIDE5OTgsIDEyOjExOjU3KToKfiMhIHJuPVBhdHJ5biBydD04ODczNjY4NTEgcmc9c2NobWFycm4KfiMhIHRpZD04ODcyODAwMTUKTWlyIGJyaWNodCBkYXMgSGVyei4KSWNoIHdlcmRlIHdlaXRlcmhpbiBBcnRpa2VsIGF1cyB3aXR6ZSB2ZXJsZWdlbiwgd2VubiBkYSBlcmtlbm5iYXIgbmljaHRzIGFscwpXaXR6IGdlbWVpbnQgKG9kZXIgdW5mcmVpd2lsbGlnIGtvbWlzY2gpIGlzdC4gRGFzIGlzdCBrZWluZSBCZXZvcm11bmR1bmcsCnNvbmRlcm4gZWluIGdlbGVnZW50bGljaGVzIGRhcmF1ZiBBY2h0ZW4sIGRhc3MgZGllIFRpdGVsIGRlciBSdWJyaWtlbiBrZWluZQpNb2dlbHBhY2t1bmdlbiB3ZXJkZW4uIFVuZCBvYiBkYSBzbyBqZW1hbmQgd2llIFBhdHJ5biBvZGVyIExpIG1pdCBrbGFyIGtvbW10Cm9kZXIgbmljaHQga29lbm50ZSBtaXIgdGF0c2FlY2hsaWNoIGthdW0gZWdhbGVyIHNlaW4uCkRpZSBEaXNrdXNzaW9uIGhhdHRlbiB3aXIgYXVzc2VyZGVtIGVyc3Qgdm9yIGt1cnplbSwgZGllIGlzdCBlcnN0IGltIFNvbW1lcgp3aWVkZXIgZHJhbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogc3RpbGJsdWV0ZW4gKFBhdHJ5biwgMTMuIEZlYiAxOTk4LCAxMjoxNzozNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODg3MzY4MzE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MjgwMDE1CmRpZSBhcnJvZ2FueiBkZXMgZGlza3VzaW9uc3BhcnRuZXJzIHdpcmQgaW1tZXIgZGFubiBvZmZlbnNpY2h0bGljaCwKd2VubiBlciBtZWludCwgZGFzcyBpaG0gYWxsZXMgZWdhbCBzZWksIHdhcyBkaWUgYW5kZXJlbiBkYXp1IG1laW5lbiwKYWJlciBkYXMgd3Vzc3RlbiB3aXIgamEgZWlnZW50bGljaCBhdWNoIG9obmUgZGVpbmUgc2VsYnN0Z2VyZWNodGUKYmVtZXJrdW5nLiBzY2hlaW5iYXIgYmlzdCBkdSBqYSBhdWNoIG5vY2ggdW5zYWdiYXIgc3RvbHogZGFyYXVmLgplcyBrb2VubnRlIGFsbGVyZGluZ3MgYXVjaCBzZWluLCBkYXNzIGR1IGVpbmZhY2ggbnVyIGtlaW5lIGFyZ3VtZW50ZSBoYXN0LApkaWUgZHUgdW5zIGFscyBlcm5zdGdlbWVpbnQgdmVya2F1ZmVuIGthbm5zdC4KZXZlbnR1ZWxsIHNvbGx0ZXN0IGR1IG1hbCB1ZWJlciBkaWNoIG5hY2hkZW5rZW4sIG9kZXIgYXVjaCBuaWNodDoKIGVpbiBncmltbWJvcm4gaW4gc2VsYnN0endlaWZlbG4gd2FlcmUgd29obCB2b2VsbGlnIHVuZXJ0cmFlZ2xpY2guCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBzdGlsYmx1ZXRlbiAoR3JpbW1ib3JuLCAxMy4gRmViIDE5OTgsIDEyOjMzOjEyKToKfiMhIHJuPVBhdHJ5biBydD04ODczNjg2NTYgcmc9c2NobWFycm4KfiMhIHRpZD04ODcyODAwMTUKTWVpbmUgR3VldGUsIHdpZSBrYW5uIG1hbiBiZWkgZGVuIGdlaXN0aWdlbiBGYWVoaWdrZWl0ZW4gbnVyIE1hZ2llciB3ZXJkZW4uLi4KLSBNZWluZSBBcnJvZ2FueiB1bmQgbWVpbiBTdG9seiBhdWYgZGllc2VsYmUgc2luZCBhbHRiZWthbm50LCBtaXIgaXN0CiAgc2NobGVpZXJoYWZ0LCB3aWVzbyBEdSBzbyB0dXN0LCBhbHMgaGFldHRlc3QgRHUgZGFtaXQgZGVuIFN0ZWluIGRlciBXYWlzZW4KICBlbnRkZWNrdC4KLSBNZWluZSBBcmd1bWVudGUgaGFiZSBpY2ggd2llZGVyIHVuZCB3aWVkZXIgd2llZGVyaG9sdCwgYmlzIHNpZSBzZWxic3QgbWlyCiAgenVtIEhhbHMgcmF1c2hhZW5nZW4uIERpZSBSdWJyaWtlbiBoYWJlbiBUaXRlbCwgdW5kIHdlbm4gZGllIEFydGlrZWwgbWl0CiAgZGVtIFRpdGVsIG5pY2h0cyB6dSB0dW4gaGFiZW4sIHNpbmQgc2llIFZlcmxlZ3VuZ3NrYW5kaWRhdGVuLiBadW0gTnV0emVuCiAgdm9uIExldXRlbiwgZGllIHNpY2ggYmVpbSBaZWl0dW5nc2xlc2VuIGF1ZiBmdWVyIHNpZSB3aWNodGlnZSBSdWJyaWtlbgogIGJlc2NocmFlbmtlbiB3b2xsZW4vbXVlc3NlbiB1bmQgbmljaHQgc3RhZW5kaWcgdWViZXIgc2lubmxvc2VuIChpbSBTaW5uZQogIGRlciBSdWJyaWspIG11ZWxsIHN0b2xwZXJuIHdvbGxlbi4KLSBJY2ggZGVua2UgaGlucmVpY2hlbmQgdWViZXIgbWljaCBuYWNoLCBkZW5uIGltIEdlZ2Vuc2F0eiB6dSBEaXIgbG9obnQgc2ljaAogIGRhcyBiZWkgbWlyIGR1cmNoYXVzLgotIFp1IERlaW5lciBCZXJ1aGlndW5nOiBTZWxic3R6d2VpZmVsIHNpbmQgYXVzZ2VzY2hsb3NzZW4sIHdlaWwgZGF6dSBuaWNodAogIGRlciBnZXJpbmdzdGUgQW5sYXNzIGJlc3RlaHQuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IHN0aWxibHVldGVuIChXYXJnb24sIDEzLiBGZWIgMTk5OCwgMTI6MzU6MDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg4NzM2OTU5MiByZz1zY2htYXJybgp+IyEgdGlkPTg4NzI4MDAxNQpXbyBlcyBzY2hvbiB1bXMgVmVybGVnZW4gZ2VodC4uLgpLb2VubnQgaWhyIGRpZXNlIERpc2t1c3Npb24gbmljaHQgaW4gZ2xlaWNobmFtaWdlIFJ1YnJpayB2ZXJsZWdlbj8KICBXYXJnb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IHN0aWxibHVldGVuIChHcmltbWJvcm4sIDEzLiBGZWIgMTk5OCwgMTI6MzU6MzYpOgp+IyEgcm49V2FyZ29uIHJ0PTg4NzM2OTcwNCByZz1zY2htYXJybgp+IyEgdGlkPTg4NzI4MDAxNQpEYXp1IGlzdCBzaWUgbnVuIHdpcmtsaWNoIG5pY2h0IGVybnN0aGFmdCBnZW51Zy4gOi0pCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IHN0aWxibHVldGVuIChQYXRyeW4sIDEzLiBGZWIgMTk5OCwgMTI6NDA6NTUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg4NzM2OTU5MiByZz1zY2htYXJybgp+IyEgdGlkPTg4NzI4MDAxNQppcmdlbmR3aWUgd2FyZW4gZGVpbmUgYmVsZWlkaWd1bmdlbiBhdWNoIHNjaG9uIG1hbCBrcmVhdGl2ZXIuLi5hZWhtbSwgZGFzCnRyaWZmdCBkZW4gcHVua3QgbmljaHQgc28gZ2FueiwgdmVyYWxsZ2VtZWluZXJuIHdpciBlczogaXJnZW5kd2llIHdhcnN0CmR1IHNjaG9uIG1hbCBrcmVhdGl2ZXIgOikKZXMgZ2VodCBtaXIgZ2FyIG5pY2h0IHVtIGRlaW5lIHZlcmxlZ2V0YWV0aWdrZWl0IGltIGFsbGdlbWVpbmVuLgphYmVyIGluendpc2NoZW4gZnVlaGxlbiBzaWNoIHZpZWxlIHZvbiBkaXIgZGVyYXJ0IGdlbmVydnQsIGRhc3Mgc2llIGRlaW5lCnplaXR1bmdzLXN0YXJhbGx1ZXJlbiB2b2xsc3RhZW5kaWcgaWdub3JpZXJlbi4gZGFzcyBkdSBhbiBkaWVzZW0gdGVpbApkZXMgdWViZXItZGljaC1zZWxic3QtbmFjaGRlbmtlbnMgbmljaHQgaGFlbmdlbmJsZWlic3QsIGlzdCBtaXIgbWVociBhbHMKc2NobGVpZXJoYWZ0LCBkZW5uIHdhcnVtIHR1c3QgZHUgZGFzIGFsbGVzIGRhbm4gZWlnZW50bGljaD8KbmEgamEsIGlzdCBhdWNoIGVnYWwuIGVzIGdpbmcgaGllciBzcGV6aWVsbCB1bSBkaWUgZWluZSBuZXR0ZSBzZWl0ZSBpbgpydWJyaWsgd2l0emUgdm9uIGxpLCB1bmQgZGllIHdhciBkb3J0IGR1cmNoYXVzIGJlc3NlciBhdWZnZWhvYmVuLCBhbHMgZHUgaW4KZGVyIGdlc2FtdGVuIHplaXR1bmcuCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBzdGlsYmx1ZXRlbiAoRnJldW5kLCAxMy4gRmViIDE5OTgsIDEyOjUwOjA4KToKfiMhIHJuPVBhdHJ5biBydD04ODczNzAwNTUgcmc9c2NobWFycm4KfiMhIHRpZD04ODcyODAwMTUKRGFzIGlzdCBqYSBuaWNodCB6dW0gQXVzaGFsdGVuIQoKRW50d2VkZXIgaWhyIGJlaWRlbiBlbnRkZWNrdCBkZW4gU2lubiBkZXMgTWFpbC1TeXN0ZW1zIHdpZWRlciBvZGVyIGlociB0cmVmZnQKRXVjaCBpbiBkZXIgQXJlbmEsIHdlbm4gaWNoIHZvcmhlciBFdWVyIFNlY3VyZS1TYXZlLUZpbGUgYXVmIGRpZSBNYWdpZXItTGV2ZWwKaGluIHVlYmVyYXJiaWV0ZXQgaGFiZS4gKE51ciBmdWVyIGRpZSBEYXVlciBkZXMgRHVlbGxzIG5hdHVlcmxpY2guKQoKRnJldW5kLCBpbW1lciBmdWVyIEtvbXByb21pc3NlIHp1IGhhYmVuLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IHN0aWxibHVldGVuIChQYXRyeW4sIDEzLiBGZWIgMTk5OCwgMTI6NTE6MjgpOgp+IyEgcm49RnJldW5kIHJ0PTg4NzM3MDYwOCByZz1zY2htYXJybgp+IyEgdGlkPTg4NzI4MDAxNQpoZXksIGVzIGlzdCBqYSBhbGxlcyBnZXNhZ3Qgd29yZGVuLiB1bnNlciBhbGxoYWxiamFlaHJsaWNoZXIgc2NobGFnYWJ0YXVzY2gKZHVlcmZ0ZSBoaWVybWl0IGJlZW5kZXQgc2VpbiA7KQoKLS0tLS0tCnBhdHJ5biwgc2VpbiBzYXZlLWZpbGUga3JpdGlzY2ggYmVhZXVnZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBzdGlsYmx1ZXRlbiAoR3JpbW1ib3JuLCAxMy4gRmViIDE5OTgsIDEyOjUzOjM0KToKfiMhIHJuPVBhdHJ5biBydD04ODczNzAwNTUgcmc9c2NobWFycm4KfiMhIHRpZD04ODcyODAwMTUKSWNoIFdVU1NURSBlcy4gSWNoIGhhYnMgamEgZGllIGdhbnplIFplaXQgZ2V3dXNzdDogRHUgcmVkZXN0IGtydW1tIGRhaGVyLCBvaG5lCnp1IHdpc3Nlbiwgd29ydW0gZXMgZ2VodC4gTmllbWFuZCBoYXQgZGllIFN0aWxibHVldGVuIHZvbiBMaSB2ZXJsZWd0LiBXYXMgaWNoCnZlcmxlZ3QgaGFiZSB3YXIgZWluIERpc2t1c3Npb25zYW5zYXR6IHZvbiBBY3JpbW9uIHVlYmVyIGRpZXNlIFN0aWxibHVldGVuLgpVbmQgZGFzIChpY2ggd2llZGVyaG9sZSBlcyBub2NobWFsKSB2b2VsbGlnIHp1IHJlY2h0LiBXb2JlaSBpY2ggbmljaHRtYWwKQWNyaW1vbnMgRGlza3Vzc2lvbiBhYndlcnRlbiB3aWxsLCBlciBoYXQgc2ljaCBzZWxiZXIgbmFjaCBkZW0gVmVybGVnZW4KZXJrdW5kaWd0LCB3byBzb3dhcyBtZWluZXIgTWVpbnVuZyBuYWNoIGJlc3NlciBhdWZnZWhvYmVuIHNlaS4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogc3RpbGJsdWV0ZW4gKE1pbmdvLCAxMy4gRmViIDE5OTgsIDEzOjEwOjU2KToKfiMhIHJuPUdyaW1tYm9ybiBydD04ODczNzA4MTQgcmc9c2NobWFycm4KfiMhIHRpZD04ODcyODAwMTUKKmdhZWhuKiBLb2VubmVuIHdpciB1bnMgZGEgdHJlZmZlbiwgZGFzcyBpaHIgYSkgYW5laW5hbmRlciB2b3JiZWlkaXNrdXRpZXJ0ZXQKdW5kIGIpIEdyaW1tYm9ybiBhbHQgd2lyZD8KSWdub3JpZXJlIGdyaW1tYm9ybi5uZXdzIGJyaW5ndCBkZW4gdW5oZWltbGljaGVuIFZvcnRlaWwsIGRhc3MgbWFuIHZlci0KbGVndGUgQXJ0aWtlbCBuaWNodCBub2NobWFsIGxpZXN0LCBoYWJlIGljaCBtaXIgZ2VzdGVybiBhbHMgR2VoZWltdGlwCmdlYmVuIGxhc3Nlbi4KCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE5haXJvbGYsIDEzLiBGZWIgMTk5OCwgMTM6Mjc6MTYpOgpbU2VoZXI6R29yb2ddIGxlZ2UgYWxsZXMgYWIsIGtsZXR0ZXJlIHJhdXMgb2RlciBzbwpbU2VoZXI6S2Fyb2xdIGdlaHQgbmljaHQKW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgS2Fyb2wgdW1nZWJyYWNodAoKOi0oCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChHb3JvZywgMTMuIEZlYiAxOTk4LCAxMzo0MToyOSk6Cn4jISBybj1OYWlyb2xmIHJ0PTg4NzM3MjgzNiByZz1zY2htYXJybgp+IyEgdGlkPTg4NzM3MjgzNgpNYW4gd2lsbCBqYSBudXIgaGVsZmVuICk6CgpHb3JvZyBkZXIgZG9jaCBldHdhcyB0cmF1cmlnIGRydWViZXIgaXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogc3RpbGJsdWV0ZW4gKEFuYXRvbCwgMTMuIEZlYiAxOTk4LCAxNTo0NjowNSk6Cn4jISBybj1NaW5nbyBydD04ODczNzE4NTYgcmc9c2NobWFycm4KfiMhIHRpZD04ODcyODAwMTUKTmVpbm5laW5uZWluLCBiaXR0ZWJpdHRlbmljaHQsIGhvZXJ0IG5pY2h0IGF1ZiA6KSkgSWNoIGZpbmRlIGRhcyAtIGdhbnoKZWhybGljaCwgYmVpIG1laW5lbSBXb3J0IGFscyBFbGYgKGRhenUgc3RlaGUgaWNoKSAtIHdpcmtsaWNoIHVudGVyaGFsdGVuZC4KCkxhZWNoZXJsaWNoa2VpdCBpc3Qgc29uc3QgX21laW5lXyBBdWZnYWJlLCBhYmVyIGJpdHRlIDopCkFuYXRvbCAoKmh1ZXBmKikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogRHUgd2Vpc3N0LCBkYXNzIER1IHp1dmllbCBnZU1VRGRldCBoYXN0LCB3ZW5uLi4uIChNdWFkZGliLCAxMy4gRmViIDE5OTgsIDE2OjIwOjQwKToKfiMhIHJuPVdvb2R5IHJ0PTg4NzE1ODQ3NiByZz1zY2htYXJybgp+IyEgdGlkPTg4NzAyNTExNApybSAtZiA7KQoKTXVhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBzdGlsYmx1ZXRlbiAoQWNyaW1vbiwgMTMuIEZlYiAxOTk4LCAxNjo0OTozMCk6Cn4jISBybj1QYXRyeW4gcnQ9ODg3MzcwMDU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MjgwMDE1Clp1ciBLbGFyc3RlbGx1bmc6CgotIEdyaW1tYm9ybiBoYXQgbWVpbmVuIEFydGlrZWwgdm9sbGtvbW1lbiB6dSByZWNodCB2ZXJsZWd0LgotIEljaCBiaW4gaWhtIGRhbmtiYXIgZGFmdWVyLgotIEljaCBiaW4gR3JpbW1ib3JuIGF1Y2ggZnVlciBzZWluZSBzb25zdGlnZW4gVmVybGVnZWFrdGlvbmVuIGRhbmtiYXIsIGRlbm4KZGFkdXJjaCBiZWhhZWx0IGRpZSBtcGEgZGVuIFNpbm4gaWhyZXIgUnVicmlrZW4uCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIgYmVlbmRldCBkaWVzZSBEaXNrdXNzaW9uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogc3RpbGJsdWV0ZW4gKFd1cnplbCwgMTMuIEZlYiAxOTk4LCAxODo0MDozMik6Cn4jISBybj1BY3JpbW9uIHJ0PTg4NzM4NDk3MCByZz1zY2htYXJybgp+IyEgdGlkPTg4NzI4MDAxNQpzY2hhZmZ0IGRpZSBydWJyaWtlbiBlbmRsaWNoIGFiISBkYW5uIHdpcmQgZ3JpbW1ib3JuIGFyYmVpdHNsb3MgdW5kIGljaCBtdXNzCm5pY2h0IGRhdWVybmQgdmVybGVndGUgYXJ0aWtlbCBub2NobWFsIGxlc2VuLiBhbnNjaGVpbmVuZCBpc3QgZGFzIGphCnRlY2huaXNjaCB6dSBzY2h3aWVyaWcsIGdlbGVzZW5lIGFydGlrZWwgYXVjaCBhbHMgc29sY2hlIHp1IGJlaGFsdGVuLgoKd3VyemVsCgpwLnMuIGRhbm4ga29lbm50ZSBncmltbWJvcm4gc2VpbmUgemVpdCBkYXp1IHZlcndlbmRlbiwgZW5kbGljaCBtYWwgbHBjCnp1IGxlcm5lbiAoY2xldmVyIHJlbWFyayBieSB2ZXJlbmEpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogc3RpbGJsdWV0ZW4gKEdyaW1tYm9ybiwgMTMuIEZlYiAxOTk4LCAxOToxMDoxOSk6Cn4jISBybj1XdXJ6ZWwgcnQ9ODg3MzkxNjMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MjgwMDE1CkFjaCwgVmVyZW5hIGludGVyZXNzaWVydCBzaWNoIGZ1ZXIgbWVpbmUgTFBDLUtlbm50bmlzc2U/IERhcyBnaWJ0IHNpY2ggc2Nob24sCndlbm4gaWNoIGVyc3RtYWwgcmljaHRpZyBhbiBpaHIgcnVtYmFnZ2VyZS4gSXJnZW5kd2FubiBtdXNzIGRhcyBkb2NoIG1hbCBtaXQKZGVyIFplaXQga2xhcHBlbiB1bmQgZGFtaXQsIGlocmVuIGtvbWlzY2hlbiBybC1HYXR0ZW4gYWJ6dWhhZW5nZW4uLi4gOy0pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBNaWxpdGFlcnMuLi4gKEdyaW1tYm9ybiwgMTMuIEZlYiAxOTk4LCAxOTo0MDoyMSk6Cn4jISBybj1BbHBoYSBydD04ODczOTQ3OTEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTg4NzE0MzUwNgpBZWgsIG51ciBhbHMgRnJhZ2U6IFdlbGNoZSBaZWl0cmVjaG51bmc/IFVuZCB3aWUgZ2VoZW4gZGEgU2NoYWx0amFocmUgZWluPwpGcmFnZW4gdWViZXIgRnJhZ2VuLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKEFuYXRvbCwgMTMuIEZlYiAxOTk4LCAyMTowODowOCk6Cn4jISBybj1SaW5nb3IgcnQ9ODg3MTQxNTUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0Ci4uLiB3ZW5uIER1ICJzeiIgYXV0b21hdGlzY2ggbWl0IGRlbSBDaHJpc3RlbnR1bSBhc3NvemlpZXJzdC4KCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKEFzbW9kaXMsIDE0LiBGZWIgMTk5OCwgMjE6MjY6MTIpOgp+IyEgcm49QW5hdG9sIHJ0PTg4NzQwMDQ4OCByZz1zY2htYXJybgp+IyEgdGlkPTg4NzAyNTExNAouLi4gd2VubiBkdSBtZWluc3QsIGRhc3MgMjAwIE9ubGluZXN0dW5kZW4gcHJvIE1vbmF0IGVudHNjaGllZGVuIHp1IHdlbmlnIHNpbmQKLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogRHUgd2Vpc3N0LCBkYXNzIER1IHp1dmllbCBnZU1VRGRldCBoYXN0LCB3ZW5uLi4uIChBc21vZGlzLCAxNC4gRmViIDE5OTgsIDIxOjI3OjM4KToKfiMhIHJuPUFzbW9kaXMgcnQ9ODg3NDg3OTcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0Ci4uLndlbm4gZGVpbmUgRnJldW5kaW4gZGVuIFJlY2huZXIgYXVzIGRlbSBCZXR0IHdpcmZ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IER1IHdlaXNzdCwgZGFzcyBEdSB6dXZpZWwgZ2VNVURkZXQgaGFzdCwgd2Vubi4uLiAoQXNtb2RpcywgMTQuIEZlYiAxOTk4LCAyMTozMTozMCk6Cn4jISBybj1Bc21vZGlzIHJ0PTg4NzQ4ODA1OCByZz1zY2htYXJybgp+IyEgdGlkPTg4NzAyNTExNAouLi53ZW5uIGR1IGRpY2ggZ2VnZW4gZWluZW4gU2tpbmhlYWQgbWl0IGVpbmVtICd0b2V0ZSBvcmsnIHdlaHJlbiB3aWxsc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouLi4genVtIGRyaXR0ZW4hIChBbmF0b2wsIDE0LiBGZWIgMTk5OCwgMjM6MTI6MzEpOgpTcHJvdHplbCB6aWVodCBlaW5lIExlZGVycnVlc3R1bmcgYXVzLgpQaGx5YWtlbiBrYXVmdCBTcHJvdHplbCBldHdhcyBhYi4KCkF1IHdlaWEgOikKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IER1IHdlaXNzdCwgZGFzcyBEdSB6dXZpZWwgZ2VNVURkZXQgaGFzdCwgd2Vubi4uLiAoU3RpbmcsIDE1LiBGZWIgMTk5OCwgMTE6MjI6MzcpOgp+IyEgcm49QXNtb2RpcyBydD04ODc0ODgyOTAgcmc9c2NobWFycm4KfiMhIHRpZD04ODcwMjUxMTQKCndlbm4gRHUgbmUgU2VyaWUgIGFua3Vja3N0LCB1bmQgbmViZW5iZWkgc2Fnc3QsIGRhc3MgZGllIFNjaGF1c3BpZWxlcmluIGluIFJMCmF1Y2ggTW9kZWxsIGlzdAoKU3RpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMTUuIEZlYiAxOTk4LCAyMTo1MDo1Nyk6CiJGcmV1bmRsaWNoa2VpdCB1bmQgTGllYmUgc2luZCBhbnN0ZWNrZW5kZXIgYWxzIGplZGUgS3JhbmtoZWl0LiIKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGFyYW5vaWEgKE5lYiwgMTYuIEZlYiAxOTk4LCAwMjoxODoyNSk6CkdyYWQgZWJlbiBuZWJlbiBlaW5lbSBQYXJhbm9pYS1CZWZhbGxlbmVuOgoKQmlnYXMga29tbXQgYW4uCkJpZ2FzIGJlc2NoaW1wZnQgS2lsYXI6IERJRSBaRUlUIElTVCBSRUlGCktpbGFyIGVyd2lkZXJ0OiBKbywgZGFzIHdpcmQgZGVyIFRvZCBnbGVpY2ggenUgRGlyIHNhZ2VuLgpCaWdhcyBncmluc3QuCkJpZ2FzIGdydWViZWx0LgpCaWdhcyBncnVlYmVsdC4KQmlnYXMgYmVrb21tdCBwbG9ldHpsaWNoIGRpZSBncm9zc2UgUGFuaWsuCkJpZ2FzIGdlaHQgbmFjaCBTdWVkb3N0ZW4uCkJpZ2FzIGtvbW10IGFuLgpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uOz4gQmlnYXMgYmVzY2hpbXBmdCBLaWxhcjogU2VpIHZvcnNpY2h0aWcsIGljaApoYWJlIGVpbmUgdG9sbGUgV2FmZmUhCktpbGFyIGVyd2lkZXJ0OiBTY2hsYWcgbWljaCBuaWNodCEgOigKQmlnYXMgZ3J1ZWJlbHQuCkJpZ2FzIGJlc2NoaW1wZnQgS2lsYXI6IERpY2ggdG9ldGUgaWNoIG1pdCAnbmVtIEJpZW5lbnN0YWNoZWwhCktpbGFyIGVyd2lkZXJ0OiBBcmdsISBNZWluZSBCaWVuZW5hbGxlcmdpZSEKQmlnYXMgZ3J1ZWJlbHQuCkJpZ2FzIGdydWViZWx0LgpCaWdhcyBiZXNjaGltcGZ0IEtpbGFyOiBJY2ggYmluIGRlciBnZWZhZWhybGljaHN0ZSBLYWVtcGZlciB1ZWJlcmhhdXB0IQpLaWxhciBlcndpZGVydDogU28gaGFiIGljaCBkYXMgbm9jaCBuaWNodCBnZXNlaGVuLgpLaWxhciBzdHVlcnp0IHNpY2ggdm9sbCBXdXQgYXVmIEJpZ2FzLgpLaWxhciBncmVpZnQgQmlnYXMgbWl0IEZsZWRlcm1hdXNrcmFsbGVuIGFuLgpLaWxhciB2ZXJmZWhsdCBCaWdhCgp1c3cuLCB1c2YgOykKCk5lYiwgbmljaHQga29tbWVudGllcmVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKERob2pha3QsIDE2LiBGZWIgMTk5OCwgMDU6MjQ6MzcpOgp+IyEgcm49U3RpbmcgcnQ9ODg3NTM4MTU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0Ci4uLmR1IGFuZmFlbmdzdCwgRGlyIGRlaW5lIFBsYWVuZSBkZXIgVW1nZWJ1bmcgc2VsYmVyIHp1IHplaWNobmVuLgpLaGlkYXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogRHUgd2Vpc3N0LCBkYXNzIER1IHp1dmllbCBnZU1VRGRldCBoYXN0LCB3ZW5uLi4uIChFbWJlLCAxNi4gRmViIDE5OTgsIDA1OjQ1OjI0KToKfiMhIHJuPURob2pha3QgcnQ9ODg3NjAzMDc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0CmhhZT8KCmRhcyBoYWIgaWNoIGRvY2ggc2Nob24gYmVpIGRlbiBwZmFkZmluZGVybiBnZW1hY2h0CmJldm9yIGljaCBub2NoIGlyZ2VuZHdhcyB2b20gbXVkZGVuIHd1c3N0ZSA6LSkKCmhlaXNzdCBkYXMgZXR3YSBkYXMgZGllIHBmYWRpcyBkcmFuIHNjaHVsZCBzaW5kLApkYXMgaWNoIG11ZGRlciBnd29yZGVuIGJpbj8KCmVNQmVlIChkZXIgZ3JhZCB2ZXJzdWNodCwgZGllIGdlc2V0emUgdm9uIHVyc2FjaGUgdW5kIHdpcmt1bmcgenUga2FwaWVybiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IHN0aWxibHVldGVuIChQYXRyeW4sIDE2LiBGZWIgMTk5OCwgMDY6NDY6MDgpOgp+IyEgcm49QWNyaW1vbiBydD04ODczODQ5NzAgcmc9c2NobWFycm4KfiMhIHRpZD04ODcyODAwMTUKamEgamEuLi5pY2ggaGFiZSBiZWkgZGVyIG5ldHRlbiBkaXNrdXNpb24gYXVjaCBnYXIgbmljaCBhbiBkaWNoIGdlZGFjaHQKc29uZGVybiB3YXIgaXJnZW5kd2llIGRlciBmaXhlbiBpZGVlIGF1Zmdlc2Vzc2VuLCBkYXNzIGVzCmxpJ3MgYXJ0aWtlbCBlcndpc2NodCBoYWV0dGUuIG51biBqYSwgd2llIGthbm4gaWNoIG1pY2ggbnVuIGdlc2NoaWNrdAphdXMgZGllc2VyIGtsZWluZW4gbWlzZXJlIGJlZnJlaWVuOiBpY2ggYmluIGRhZnVlciwgYWNyaW1vbnMgYXJ0aWtlbCBwZXIKZGVmaW5pdGlvbiB6dW0gd2l0eiB6dSBlcmtsYWVyZW4sIHNjaG9uIHdlZ2VuIHNlaW5lcyB0YXN0YXR1cnByb2JsZW1zIG1pdApkZW0gc3ogOykKCi0tLS0tCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IER1IHdlaXNzdCwgZGFzcyBEdSB6dXZpZWwgZ2VNVURkZXQgaGFzdCwgd2Vubi4uLiAoQ2FrZXksIDE2LiBGZWIgMTk5OCwgMTI6NTA6NTQpOgp+IyEgcm49RW1iZSBydD04ODc2MDQzMjQgcmc9c2NobWFycm4KfiMhIHRpZD04ODcwMjUxMTQKCi4uLiBEdSB2b3IgZGVtIEF1c2hhbmcgZGVyIGxldHp0ZW4gS2xhdXN1cmVyZ2Vibmlzc2Ugc3RlaHN0IHVuZCAnbGllcyB6ZXR0ZWwnCmRlbmtzdC4uLgoKQ2FrZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvcmhpbiBpbSBSYWRpbyAoR3JpbW1ib3JuLCAxNi4gRmViIDE5OTgsIDIxOjUyOjQ5KToKIkthdGphIFNlaXppbmdlciBoYXQgYWxzIGVyc3RlIEF0aGxldGluIHdpZSBzY2hvbiBpbiBMaWxsZWhhbW1lciBiZWkgendlaQpPbHltcGlzY2hlbiBTcGllbGVuIGhpbnRlcmVpbmFuZGVyIGVpbmUgR29sZG1lZGFpbGxlIGltIEFiZmFocnRzcmVubmVuCmVycmVpY2h0LiIKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhhIChLYW1pbGxlLCAxNy4gRmViIDE5OTgsIDExOjMxOjExKToKCkhpZXIgaXN0IGVpbnMgZGVyIFd1bmRlcndlcmtlIGRlciB6d2VyZ2lzY2hlbiBIYW5kd2Vya3NrdW5zdCB6dSBiZXN0YXVuZW46IERlcgpGZXN0dW5nc2F1Znp1Zy4gRXIgdmVyYmluZGV0IGRpZSBGZXN0dW5nIG1pdCBkZXIgYWx0ZW4gWndlcmdlbnN0YWR0LiBBbiBkZXIKV2FuZCBpc3QgZWluIGdyb3NzZXIgS25vcGYuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4gdW5kIG5vcmRlbi4KRWluIEF1Znp1Z3N3YWVjaHRlci4KPiB1bnQga25vcGYKRHUga2FubnN0IGlobiBkcnVlY2tlbi4KPiB1bnQgYXVmenVnCkRlciBBdWZ6dWcgaXN0IHdpcmtsaWNoIGVpbiBXdW5kZXJ3ZXJrIGRlciBUZWNobmlrLiBFciBiZXN0ZWh0IGltIHdlc2VudGxpY2hlbgphdXMgU3RlaW4sIG51ciBlaW4gU3RhaGxzZWlsIGhhZWx0IGlobi4gTWVociBrYW5uc3QgRHUgbGVpZGVyIG5pY2h0IGVya2VubmVuLAphdWNoIHdlbm4gZXMgRGljaCBpbnRlcmVzc2llcmVuIHd1ZXJkZS4KRGVyIEF1Znp1ZyBpc3QgZ2VyYWRlIG5pY2h0IGRhLgo+IGRydWVja2Uga25vcGYKRGVyIEF1Znp1ZyBpc3QgZG9jaCBzY2hvbiBkYS4KCkRhIG9kZXIgbmljaHQgZGEsIGRhcyBpc3QgaGllciBkaWUgRnJhZ2UgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFp3ZXJnZW5zdGFkdD8gT2RlciBaLUxhYj8gKEFuYXRvbCwgMTcuIEZlYiAxOTk4LCAxMjoyMzo0NSk6Cn4jISBybj1aYXJuaXlhIHJ0PTg4NzcxMDU3NCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg4NzY5MjUzMgo+IE1hcnMsIGthbm5zdCBmcm9oIHNlaW4sIAo+IGRhc3MgaWNoIGhpZXIgbml4IG1laHIgenUgc2FnZW4gaGFiLCBzb25zdCB3YWVyc3QgRHUgamV0enQgd2VnISEhCgpTcGFldGVzdGVucyBkYW5hY2ggaGFldHRlc3QgRHUgaGllciBuaWNodHMgbWVociB6dSBzYWdlbiBnZWhhYnQuCgpBbmF0b2wsIG11c3MgZGFubiBkb2NoIGdyaW5zZW4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGhoaGhqYSAoTW9yZ290aCwgMTcuIEZlYiAxOTk4LCAxMzowNzowMyk6CkR1IHNhZ3N0OiBodWh1aHVodQpEdSBodWVwZnN0IHVtIFdhcmdvbiBoZXJ1bS4KPltEZWJ1ZzpXYXJnb25dIEZlaGxlcjogIkJhZCBhcmd1bWVudCAxIHRvIGNhbGxfb3RoZXIoKSIsIE9iamVrdDoKW0RlYnVnOldhcmdvbl0gcGxheWVycy93YXJnb24vb2JqL2ludnNvcnQjMjgzNjYsIFByb2dyYW1tOiAiPGxhbWJkYQpbRGVidWc6V2FyZ29uXSAweDg3OGQ0MzU+IiwgWmVpbGUgNiAoUGh5Z29zKQpXYXJnb24gc2FndDogSmEhIFdhc3NuPwpTdG9uZWNvbGQgcnVmdDogc2NoZWlzc2UKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzaXplb2YgKENhdHdlYXpsZSwgMTcuIEZlYiAxOTk4LCAxMzoyNDozMyk6CltMUEM6R2VycmldIHdpZSBlcm1pdHRsZSBpY2ggZGVubiBkaWUgZWxlbWVudGFuemFobCBlaW5lcyBhcnJheXMgaW4gbHBjID8KW0xQQzpHZXJyaV0gPDEzOjE3OjA4PgpbTFBDOlJ1bWF0YV0gc2l6ZW9mIDwxMzoxNzoxNj4KW0xQQzpXYXJnb25dIHNpemVvZihhcnIpIDwxMzoxNzoxOD4KW0xQQzpHdW5kdXJdIHNpemVvZiA8MTM6MTc6MjA+CltMUEM6SGlnaGxhbmRlcl0gc2l6ZW9mIDwxMzoxNzoyMD4KW0xQQzpHZXJyaV0gOCkgdGh4IDwxMzoxNzoyND4KW0xQQzpHdW5kdXIgOi0pIDwxMzoxNzoyNj5dCltMUEM6UnVtYXRhXSBlcnN0ZSAhIDwxMzoxNzoyOD4KW0xQQzpDYXR3ZWF6bGVdIGhtLCBzaXplb2Y/IDwxMzoxNzozNj4KW0xQQzpHZXJyaV0gYWhoaCBpY2ggaGFicyAhc2l6ZW9mIDgpIDwxMzoxNzo0Nz4KW0xQQzpHdW5kdXJdIHdvIGJlaSBkYXMgbmljaHQgZ2FueiBrb2VycmVrdCBpc3QgYWJlciBsYXNzZW4gd2lyIGRhcyA6LSkKW0xQQzpHdW5kdXJdIDwxMzoxNzo0Nz4KW0xQQzpIaWdobGFuZGVyXSBVbmQgamV0enQgYWxsZS4uLiA8MTM6MTc6NDk+CltMUEM6R2Vycmkgc2Nod2luZ3QgZGVuIFRha3RzdG9jay4gPDEzOjE4OjA3Pl0KW0xQQzpDYXR3ZWF6bGVdIHdpciBrb2VubmVuIGphIG1hbCBuZW4gY2Fub24gcHJvYmllcmVuIDopIDwxMzoxODoxMz4KW0xQQzpHdW5kdXJdIHNpemUuLiA8MTM6MTg6MzQ+CltMUEM6R2VycmldIHNpaGl6ZSA8MTM6MTg6NDQ+CltMUEM6R3VuZHVyXSBzaXplLi4gPDEzOjE4OjQ2PgpbTFBDOkhpZ2hsYW5kZXJdIC4uLm9mIDwxMzoxODo1Nj4KW0xQQzpDYXR3ZWF6bGVdIEJpdHRlIHp1ZXJzdCBkaWUgRU1zLCBkYW5uIGRpZSB3ZWlzZW4sIHVuZCBkYW5uIGRpZQpbTFBDOkNhdHdlYXpsZV0gZGVmYXVsdG1hZ2llciA6KSA8MTM6MTg6NTY+CltMUEM6R3VuZHVyXSBzaXplLi4gPDEzOjE5OjAwPgpbTFBDOkNhdHdlYXpsZV0gc2l6ZSA8MTM6MTk6MTA+CltMUEM6R2VycmldIHVuZCBkaWUgZ29ldHRlciA/IDwxMzoxOToxMj4KW0xQQzpSdW1hdGFdIFd1cnN0bWFnaWVyIGhlaXNzdCBkYXMgPDEzOjE5OjEyPgpbTFBDOkdlcnJpXSAqcmFlc3VwZXIqIDwxMzoxOToyMD4KW0xQQzpDYXR3ZWF6bGVdIGFsc28gaXJnZW5kd2llIGtsYXBwdCBkYXMgbmljaHQgOikgPDEzOjE5OjMwPgpbTFBDOkdlcnJpXSB3b2hsIGV0d2FzIG1vdGl2YXRpb24gbGFnIDgpIDwxMzoxOTo0Mz4KW0xQQzpXYXJnb25dIEVzIGdlaHQgYXVjaCBzbzogaW50IHNpemU7IG1peGVkIGVycjsgc2l6ZT0tMTsKW0xQQzpXYXJnb25dIHdoaWxlKChlcnI9Y2F0Y2goYXJyW3NpemUrMV0pKSE9IipJbmRleCBvdXQgb2YgYm91bmRzXG4iKSBzaXplKys7CltMUEM6V2FyZ29uXSA8MTM6MjA6MTM+CltMUEM6UnVtYXRhXSBiaXR0ZSBtaXQgYmluYWVyZW0gc3VjaGJhdW0sIGphPyA8MTM6MjA6MzY+CltMUEM6R2VycmldIDgpIDwxMzoyMDo0MD4KW0xQQzpDYXR3ZWF6bGVdIFVuZCB3aWUgc29sbCBtYW4gZGFyYXVmIG5lbiBLYW5vbiBzaW5nZW4/IFdlbm4gc2Nob24sIGRhbm4KW0xQQzpDYXR3ZWF6bGVdIGJpdHRlIGluIHZlcnNmb3JtLCBqYT8gPDEzOjIwOjQ2PgpbTFBDOkdlcnJpIHNwYXJ0IHNpY2ggc2VpbmUgbmFlY2hzdGUgRnJhZ2UuIDwxMzoyMDo1ND5dCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpad2VyZ2UgLSBlbnR3YWZmbmVuZCBlaHJsaWNoISAoVHVuaXhndXQsIDE3LiBGZWIgMTk5OCwgMTQ6NTg6MTMpOgpFYmVuIHBhc3NpZXJ0OgoKRWluIHVuaGVpbWxpY2hlciBSYXVtIGlzdCBkaWVzZSBTY2htaWVkZS4uLgpCb2dvZmlyIGRlciBad2VyZ2Vuc2NobWllZC4KCmZyYWdlIGJvZ29maXIgbmFjaCBzY2htaWVkZW4KRWluIEJvZ29maXIgc2FndDogRGF2b24gdmVyc3RlaGUgaWNoIG5pY2h0cy4KCkphamEuLi4KCidzIEthcmF0ZS1ad2VyY2hsZS4uLgoKUFM6IE1hbiBidHJhY2h0ZSBkYXMgRUlOIEJvZ29maXIuLi4gTmFqYS4uLgpQUFM6IEljaCBoYWx0ZSBkaWUgRmVzdHVuZyBmdWVyIEFSRyB1ZWJlcmFyYmVpdHVuZ3N3dWVyZGlnLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGluIHp3ZXJnZW50b3duIDopIChDeW1yaWssIDE3LiBGZWIgMTk5OCwgMjM6MDY6MDYpOgp3b2hsIGVoZXIgbmVuIGJ1ZzoKPiAgIER1IHRyaWZmc3QgZGVuIFp3ZXJnIHNlaHIgaGFydC4KRGVyIFp3ZXJnIGZhZWxsdCB0b3QgenUgQm9kZW4uCkRlciBHYW1lRHJpdmVyIHRlaWx0IERpciBtaXQ6IERlaW4gSGVyenNjaGxhZyBoYXQgYXVzZ2VzZXR6dCEKRGVyIEdhbWVEcml2ZXIgdGVpbHQgRGlyIG1pdDogRGVpbiBIZXJ6c2NobGFnIGhhdCB3aWVkZXIgZWluZ2VzZXR6dC4KPiBEZXIgWndlcmcgc2FndDogPEhpY2s+IQpzY2hhdQpbLi5dCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4sIHdlc3RlbiB1bmQgbm9yZGVuLgpFaW4gWndlcmdlbndhZWNodGVyLgpFaW4gWndlcmdlbndhZWNodGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1ZXMgdm9tIEZpbHouLi4gKEFuYXRvbCwgMTguIEZlYiAxOTk4LCAwMDoyNjowNSk6CgpMYXJpc3NhIHNhZ3Q6IEhtcGYsIGRhcyBXYXNzZXIgc2NobWVja3QgbmFjaCBnYXIgbmljaHRzIQoKSGFldHRlIHNpZSBtYWwgZWluZSBvcmRlbnRsaWNoZSBDb2tlIGJlc3RlbGx0Li4uICgwLjVsLCA1LjUwIERNKQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVlcyB2b20gRmlseiBJSS4uLiAoQW5hdG9sLCAxOC4gRmViIDE5OTgsIDAwOjI3OjQ4KToKTGFyaXNzYSBzYWd0OiBJaHIgbXVlc3N0IGhlaXJhdGVuLCBkYSBzcGFydCBpaHIgdmllbGUgU3RldWVybiEKTGFyaXNzYSBkZXV0ZXQgd2FobGxvcyBpbiBkaWUgUnVuZGUuCkNhdHdlYXpsZSBsYWVjaGVsdCBNaWV6ZSBhbi4KQ2F0d2VhemxlIHNhZ3Q6IFdvbGxlbiB3aXI/Ck1pZXplIHNjaGF1dCB2ZXJkdXR6dCBhdXMgZGVyIFdhZXNjaGUuCk1pZXplIHNhZ3Q6IFdhcz8KQ2F0d2VhemxlIHNhZ3Q6IEhlaXJhdGVuIQpNaWV6ZSBuaWNrdCBiZWdlaXN0ZXJ0LgpNaWV6ZSBzYWd0OiBTb2ZvcnQhCgpJY2ggYmVuZW5uZSBMYXJpc3NhIHVuZCBKb2YgYWxzIFpldWdlbiA6KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVlcyB2b20gRmlseiBJSUkuLi4gKENhdHdlYXpsZSwgMTguIEZlYiAxOTk4LCAwOTo0NjoxOSk6Ck1pZXplIHVuZCBDYXR3ZWF6bGUgZnV0dGVybiBLbm9ibGF1Y2hiYWd1ZXR0ZXMuCk1pZXplIHNhZ3Q6IFdhcmdvbiB3aXJkIG1pY2ggZGFubiBoZXV0IG5hY2h0IHdvaGwgenUgQ2F0IHNjaGlja2VuLgpDYXR3ZWF6bGUgZ3JpbnN0IFdhcmdvbiBhbi4KQ2F0d2VhemxlIHNhZ3Q6IFNpZSBoYXQgS25vYmxhdWNoYnJvdCBnZWdlc3NlbiA6LSkKTWllemUgaGFlbHQgV2FyZ29uIGVpbiBhbmdla25hYmJlcnRlcyBCYWd1ZXR0ZSB1bnRlciBkaWUgTmFzZS4KTWllemUgZnJhZ3QgV2FyZ29uOiBXaWxsc3QgRHUgbWFsIGFiYmVpc3Nlbj8KV2FyZ29uIHp1Y2t0IGdlbGFzc2VuIGRpZSBTY2h1bHRlcm4uCldhcmdvbiBzYWd0OiBUamEsIGRhbm4gd2lyc3QgRHUgd29obCBhdWYgZGVtIEJvZGVuIHNjaGxhZmVuIG11ZXNzZW4uCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyBkaWUgMjkzNzU0LiAoUmluZ29yLCAxOC4gRmViIDE5OTgsIDE1OjQ3OjU1KToKW1NlaGVyOlpvcnJvXSBoYXQgd2VyIGJvY2sgYXVjaCBkZW4gbmV1ZW4gc3NwLXRlaWwgPyA8MTU6NDY6MTk+CltTZWhlcjpUdWZmaV0gd2lyIHNpbmQgc2Nob24gZHJpbiA8MTU6NDY6Mjg+CltTZWhlcjpab3Jyb10gaHVjaCA8MTU6NDY6MzQ+CltTZWhlcjpUdWZmaV0genUgc2VjaHN0IG1vbWVudGFuIDwxNTo0NjozND4KW1RvZDpMYXJzXSBFaW4gRmV1ZXJtYWdpZXIgaGF0IGdlcmFkZSBEYXJrd2luZyB1bWdlYnJhY2h0LiA8MTU6NDY6NDA+CltTZWhlcjpUdWZmaV0gNSA8MTU6NDY6NDY+CgpSaW5nb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggYXVmIGRlbSBmbG9zcyAoQmlyZHksIDE4LiBGZWIgMTk5OCwgMTc6Mjg6MzkpOgpEYXZpZCBUYXNzZWxob2ZmIGtvbW10IGFuZ2VzY2h3b21tZW4gdW5kIGtsZXR0ZXJ0IGF1ZiBkYXMgRmxvc3MuCkRhdmlkIFRhc3NlbGhvZmYgc2NoYXV0IHNpY2ggdHJpZWZlbmQgdW0uCkRhdmlkIFRhc3NlbGhvZmYgc2FndDogV2llLCB3YXM/IElzdCBoaWVyIG5pZW1hbmQgaW4gTm90PwpEYXZpZCBUYXNzZWxob2ZmIGdydW1tZWx0LgpQbGF0c2NoLi4uZWluIGZsaWVnZW5kZXIgRmlzY2ggc3ByYW5nIGRyYXVzc2VuIGhlcnVtLi4uCkRhdmlkIFRhc3NlbGhvZmYgc2FndDogRGFubiBzY2h3aW1tIGljaCBoYWx0IHdpZWRlciB6dXJ1ZWNrLi4uCkRhdmlkIFRhc3NlbGhvZmYgd2lyZnQgc2ljaCB3aWVkZXIgaW4gZGllIEZsdXRlbiB1bmQgc2Nod2ltbXQgbG9zLgoKKmdyaW5zKiAKQmlyZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1Y2ggRXJ6bWFnaWVyIHNpbmQgbWFuY2htYWwgd2l0emlzY2ghIChHdW5kdXIsIDE4LiBGZWIgMTk5OCwgMTc6MzY6MzQpOgpbRXJ6bWFnaWVyOkd1bmR1cl0gbmltbXQgc2ljaCBzY2hvbiBqZW1hbmQgZGVyIGdlc2NoaWNodGUgYW4gZGFzIGJlaSBtYW5jaGVuCltFcnptYWdpZXI6R3VuZHVyXSBzcGllbGVybiBkZXIgaGVhcnRiZWF0IGF1c3NldHp0PyA8MTQ6NDg6MjI+CltFcnptYWdpZXI6RnJldW5kXSBKYSwgUm9jaHVzLCBkZXIgd2lsbCBlaW5lbiBIZXJ6aW5mYXJrdCBwcm9ncmFtbWllcmVuLCBhbgpbRXJ6bWFnaWVyOkZyZXVuZF0gZGVtIGRpZSBTcGllbGVyIGRhbm4gYXVjaCBzdGVyYmVuLiAoU29ycnksIENvdWxkbid0CltFcnptYWdpZXI6RnJldW5kXSByZXNpc3QuKSA8MTQ6NDg6NTg+CgpxLmUuZC4KRy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKEFzbW9kaXMsIDE4LiBGZWIgMTk5OCwgMTg6NTE6NDYpOgp+IyEgcm49Q2FrZXkgcnQ9ODg3NjI5ODU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0Ci4uLiBkdSBlaW5lbiB6d2VpdGVuIFJlY2huZXIga2F1ZnN0LCBkYW1pdCBkdSBkaWNoIG1pdCBkZWluZXIgRnJldW5kaW4gaW0gTVVECnVudGVyaGFsdGVuIGthbm5zdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKEFzbW9kaXMsIDE4LiBGZWIgMTk5OCwgMTg6NTI6MzYpOgp+IyEgcm49Q2FrZXkgcnQ9ODg3NjI5ODU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MDI1MTE0Ci4uLndlbm4gZHUgZGlyIGVpbmVuIGRyaXR0ZW4gUmVjaG5lciBrYXVmc3QsIGRhbWl0IGR1IGF1Y2ggbWFsIG1pdCBkZWluZW0gU29obgplaW4gcGFhciBXb3J0ZSB3ZWNoc2VsbiBrYW5uc3QgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGYW1pbGllbnRyZWZmZW4gYmVpIExhcnMgKERhcmt3aW5nLCAxOC4gRmViIDE5OTgsIDE4OjUzOjA4KToKRHUgc2NoYXVzdCB0aWVmIGluIGRpZSBLdWdlbCwgbGFuZ3NhbSBsb2VzdCBzaWNoIGRlciBtaWxjaGlnZSBSYXVjaCBpbgppaHIgdW5kIER1IHNpZWhzdCA6CkVpbiBkdW5rbGVyIFJhdW0sIGVybGV1Y2h0ZXQgdm9uIGR1bmtsZW0gTGljaHQsIGRhcyBzaWNoIGRlciBEdW5rZWxoZWl0IG5pY2h0CnNvIHNlaHIgenUgd2lkZXJzZXR6ZW4gc2NoZWludCwgaW5kZW0gZXMgbGV1Y2h0ZXQsIGFscyBkYXNzIGVzIGRlciBkdW5rZWxzdGUKUHVua3QgaW4gZWluZXIgd2VuaWdlciBkdW5rbGVuIFVtZ2VidW5nIGlzdC4gSW0gc2VsdHNhbWVuIExpY2h0IGVya2VubnN0IER1CmVpbmVuCnplbnRyYWwgYXVmZ2VzdGVsbHRlbiBTY2hyZWlidGlzY2gsIGRlciBtaXQgRGlhZ3JhbW1lbiB1bmQgQnVlY2hlcm4gYmVkZWNrdAppc3QuCkRpZSBXYWVuZGUgdmVyc2Nod2luZGVuIGhpbnRlciBSZWdhbGVuLCBkaWUgZ2VmdWVsbHQgc2luZCBtaXQgaW4gTGVkZXIgZ2UtCmJ1bmRlbmVuLCBkdW5rbGVuIFdhZWx6ZXJuLCB2b24gZGVuZW4gZ2VoZWltbmlzdm9sbGUgUnVuZW4gbGV1Y2h0ZW4uClRvZC4KRXMgZ2lidCBrZWluZSBzaWNodGJhcmVuIEF1c2dhZW5nZS4KRGVyIEdlaXN0IHZvbiBQQU5aQS4KRGVyIEdlaXN0IHZvbiBUZXRlLgpEZXIgR2Vpc3Qgdm9uIEtpdS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBEdSB3ZWlzc3QsIGRhc3MgRHUgenV2aWVsIGdlTVVEZGV0IGhhc3QsIHdlbm4uLi4gKFphcGhvYiwgMTguIEZlYiAxOTk4LCAxODo1MzoyNCk6Cn4jISBybj1Bc21vZGlzIHJ0PTg4NzgyNDM1NiByZz1zY2htYXJybgp+IyEgdGlkPTg4NzAyNTExNAouLi5kdSBhbiBkaWVzZW0gdGhyZWFkIHRlaWxuaW1tc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWhoaGhoamEgKEFzbW9kaXMsIDE4LiBGZWIgMTk5OCwgMTg6NTQ6MjgpOgp+IyEgcm49TW9yZ290aCBydD04ODc3MTcyMjMgcmc9c2NobWFycm4KfiMhIHRpZD04ODc3MTcyMjMKSGFldHRlc3QgbmljaHQgaW4gV2FyZ29ucyBJbnZlbnRvcnkgaGVydW1odWVwZmVuIHNvbGxlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc293YXMhIChMYXJpc3NhLCAxOC4gRmViIDE5OTgsIDE4OjU1OjMzKToKCmdyYWRlOgoKRnJldW5kIGt1ZXNzdCBEaWNoLgpGcmV1bmQgZXJyb2V0ZXQuCkZyZXVuZCBzYWd0OiBPaCwgZW50c2NodWxkaWd1bmcsIFR5cG8uCgoKTGFyaS4gKnNvd2FzISoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1pdCBLYW5vbmVuIGF1ZiBTcGF0emVuIChvZGVyIHNvKSAoQ2VpbG8sIDE4LiBGZWIgMTk5OCwgMTk6NTQ6MTApOgpJbW1lciB3aWVkZXIgc2Nob2VuOgo+dG9ldGUgbXVlY2tlCk9LLgpEdSBncmVpZnN0IGRpZSBNdWVja2UgbWl0IGVpbmVyIEF4dCBhbi4KLi4uCgpDZWlsbywgZGVyIHNpY2ggZ2VyYWRlIHZvcnN0ZWxsdCwgd2llIGVzIGRhIGplZGVuIFNvbW1lcgphbSBCb2RlbnNlZSB6dWdlaGVuIG11ZXNzdGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcmV1bmQgaGFsdC4uLiAoTGFyaXNzYSwgMTkuIEZlYiAxOTk4LCAxMTo0NzoxNyk6CgpHZXJhZGUgYmVzdWNoZSBpY2ggZnJldW5kLCB1bmQgd2FzIHNlaCBpY2ggZGE/CgpEdSBzY2h3ZWJzdCBpbSBOaWNodHMuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiByYXVzIHVuZCByZWluLgpFaW4gRnJldW5kIGZ1ZXIgYWxsZSBGYWVsbGUgKGhpbGZzYmVyZWl0KS4KRWluIFBhcnR5YnJldHQuCgpIYXQgZGVyIGRvY2ggZ2xhdHQgc2VpbiBlaWdlbmVzIFBhcnR5YnJldHQuLi5TT1dBUy4uLgoKTGFyaSwgbGFldWZ0IGltbWVyIGluIGRpZSBBYmVudGV1cmVyLUdpbGRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJldW5kIHVuZCBkaWUgQnJldHRlciAoTGFyaXNzYSwgMTkuIEZlYiAxOTk4LCAxNDowMjo0OCk6CgpIaWVyIGhhdHRlciBhdWNoIGVpbnM6CgpEdSBiZWZpbmRlc3QgRGljaCBpbiBGcmV1bmRzIHByaXZhdGVtIEFyYmVpdHNyYXVtLgpCaXMgYXVmIGVpbiB3ZWlzc2VzIExvY2ggdW5kZWZpbmllcmJhcmVyIEdyb2Vzc2UgaXN0IGVyIHZvZWxsaWcgbGVlci4KCkVzIGdpYnQgYWNodCBzaWNodGJhcmUgQXVzZ2FlbmdlOiBwb2xhciwgcmF1cywgendlcmdlLCBmcmllZGhvZiwgZ2lsZGUsIG1reiwKaGFpbiB1bmQgd2Frb3JhLgpFaW4gRnJldW5kIGZ1ZXIgYWxsZSBGYWVsbGUgKGhpbGZzYmVyZWl0KS4KRWluIFBhcnR5YnJldHQuCkZyZXVuZHMgS2FtcGZrYXRlciBSdXN0eS4KRWluZSBTb2Z0ZWlzbWFzY2hpbmUuCgpMYXJpIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZyZXVuZCB1bmQgZGllIEJyZXR0ZXIgKFRlZGR5LCAxOS4gRmViIDE5OTgsIDE0OjA3OjUxKToKfiMhIHJuPUxhcmlzc2EgcnQ9ODg3ODkzMzY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3ODkzMzY4ClN0b3B0IGlobiByZWNodHplaXRpZywgc29uc3QgaGF0IGVyIGJhbGQgaW4gamVkZW0gUmF1bSBlaW4gUGFydHlicmV0dC4KTW9lZ2xpY2hlcndlaXNlIHN0ZWxsdCBlciBkaWUgQnJldHRlciBhbHMgV2FlY2h0ZXIgYXVmOiBXZXIgc2ljaCBuaWNodAphbm1lbGRldCwgd2lyZCBuaWNodCBkdXJjaGdlbGFzc2VuLiA7KQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh1Y2ggPyAoUWl0ZXNzLCAyMC4gRmViIDE5OTgsIDEzOjIwOjEzKToKCk1pdHRlbiBpbSBCYXVtOgoKdW50IEhvbHogClNvd2FzIHNpZWhzdCBEdSBkYSBuaWNodCEKClFJKiogc2llaHQgZGFzIEhvbHogdm9yIGxhdXRlciBCYXVtIG5pY2h0IG1laHIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNDUklQVEVOIFZFUkJPVEVOISAoRnJldW5kLCAyMC4gRmViIDE5OTgsIDE2OjQ4OjU2KToKRWJlbiwgYmVpIGVpbmVyIHZvcmxhZXVmaWdlbiBVZWJlcnNpY2h0IGRlcyBQYXJ0eWJyZXR0cyBpbiBtZWluZW0gV29ya3Jvb206CgpOYWNodHdpbmQuLi4gYXVzICJPbGRlbmJ1cmciCiAgICAgIEZhaHJ0OiBBdXRvCiAgICAgICAgTUZHOiBqdXBwCiAgIFNjaGxhZmVuOiBzdWNoZQogICAgIFplaXRlbjogQU46IHN1ZWRvc3RlbiBmcnVlaCB3aWUgbW9lZ2xpY2ggOikKICAgICAgICAgICAgIEFCOiBzdWVkb3N0ZW4gc3BhZXQgd2llIG1vZWdsaWNoIDopCiAgQmVtZXJrdW5nOiAtIGtlaW5lIC0KCkFSR0ghISEhIQoKRnJldW5kLCBybSAvc2VjdXJlL3NhdmUvbi9uYWNodHdpbmQubwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNDUklQVEVOIFZFUkJPVEVOISAoRnJldW5kLCAyMC4gRmViIDE5OTgsIDE3OjAzOjQ2KToKfiMhIHJuPUZyZXVuZCBydD04ODc5ODk3MzYgcmc9c2NobWFycm4KfiMhIHRpZD04ODc5ODk3MzYKVmllbGxlaWNodCBtdXNzIG1hbiBhdWNoIGJlaSBkZXIgUnVicmlrIFNjaG1hcnJuIGVpbiBJUk9OSUUgRUlOIGRhdm9yIHNldHplbiwKd2llIGRpZSBmb2xnZW5kZW4gWmVpbGVuIGJlbGVnZW46CgpBbmF0b2wgdGVpbHQgRGlyIG1pdDogTnVyIHdlaWwgTmFjaHR3aW5kIGVpbiAvaW5wdXQgaGF0PyAqZ3J1ZWJlbCogRFUgaGFzdApBbmF0b2wgdGVpbHQgRGlyIG1pdDogU29yZ2VuLiBEYXMgaXN0IG5pY2h0IHZlcmJvdGVuIDopCkJvaW5nIHRlaWx0IERpciBtaXQ6IHNvIGF1ZiBzdWVkb3N0ZW4genUgbWFwcGVuIGlzdCBkb2NoIGtlaW4gc2NyaXB0ZW4gOikKCkZyZXVuZCwgYmVydWhpZ2VuZC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWndlcmdlbmZpbmdlci4uLiAoQW5hdG9sLCAyMC4gRmViIDE5OTgsIDIzOjQ3OjA4KToKRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuCltBbGxnZW1laW46R2xvaW5dIFRhY2ggVGFuZS4KW0FsbGdlbWVpbjpHbG9pbl0gVGFjaCBUYW56ZS4KW0FsbGdlbWVpbjpHbG9pbl0gVGFjaCBUYW50ZS4KW0FsbGdlbWVpbjpHbG9pbiBhcmdlbHQuXQoKQmluIGljaCBmcm9oLCBkYXNzIGljaCBlaW4gRWxmIGJpbi4uLgpBbmF0b2wgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWndlcmdlbmZpbmdlci4uLiAoTWluZ28sIDIxLiBGZWIgMTk5OCwgMDA6MjA6NTgpOgp+IyEgcm49QW5hdG9sIHJ0PTg4ODAxNDgyOCByZz1zY2htYXJybgp+IyEgdGlkPTg4ODAxNDgyOApEYSBmZWhsdCBub2NoIHdhczoKW0FsbGdlbWVpbjpHbG9pbiBhcmdlbHQuIDwyMzo0NjoyNT5dCltBbGxnZW1laW46VGhlcmluXSBkaWNrZSBmaW5nZXI/IDwyMzo0NjoyNz4KW0FsbGdlbWVpbjpHbG9pbl0gWndlcmdlbmZpbmdlci4gPDIzOjQ2OjM3PgoKRWluc2ljaHQgaXN0IGRlciBlcnN0ZSBTY2hyaXR0IGF1ZiBkZW0gUGZhZCB6dXIgQmVzc2VydW5nIDstKQoKR2xvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwMDA6IFNDSFdVUFBESVdVUFAhIChBc21vZGlzLCAyMS4gRmViIDE5OTgsIDAxOjU5OjI3KToKQWJlciBzaWNoZXIgZG9jaCEgOikKCkFzbW9kaXMsIGhhdHMgZ2VwYWNrdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTAwMTogU0NIV1VQUERJV1VQUCEgKEFuYXRvbCwgMjEuIEZlYiAxOTk4LCAwMjowNjoyNik6Cn4jISBybj1Bc21vZGlzIHJ0PTg4ODAyMjc2NyByZz1zY2htYXJybgp+IyEgdGlkPTg4ODAyMjc2NwpJY2ggd3Vzc3RlIGVzLCBkYXNzIGVyIGVzIHZlcnN0ZWh0IDopCgpBbmF0b2wgCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTAwMjogU0NIV1VQUERJV1VQUCEgKEFzbW9kaXMsIDIxLiBGZWIgMTk5OCwgMDI6MTc6NDMpOgp+IyEgcm49QW5hdG9sIHJ0PTg4ODAyMzE4NiByZz1zY2htYXJybgp+IyEgdGlkPTg4ODAyMjc2NwpTb29vIHdlaXQgaXN0IG1laW4gQWx6aGVpbWVyIG5vY2ggbmljaHQgZm9ydGdlc2Nocml0dGVuIDopCgpBc21vZGlzLCBtYW5jaG1hbCB2ZXJnZXNzbGljaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV3VuZGVyZG9rdG9yIChBbGVwaCwgMjEuIEZlYiAxOTk4LCAwOToxNTowMik6CgpEZXIgV3VuZGVyZG9rdG9yIGlzdCB3YWhyc2NoZWlubGljaCBiZXd1bmRlcm5zd2VydDoKCkRlciBaaWdldW5lcndhZ2VuIGZhZWhydCBxdWlldHNjaGVuZCB3ZWl0ZXIgbmFjaCBvc3Rlbi4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCgpEZXIgbW9nZWx0IQoKYWxlcGguLi53aWxsIG5hY2ggb3N0ZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBtYW4gbmljaHQgYWxsZXMgbHVzdGlnIGZpbmRldCwgd2VubiBtYW4gaWRlbHQuLi4gKFphcGhvYiwgMjEuIEZlYiAxOTk4LCAxNjowNToxNik6CkRhcyBXYW5nLVNjaHdlaW4gZnJpc3N0IHZvbSBGdXR0ZXJ0cm9nLgpEYXMgV2FuZy1TY2h3ZWluIGdydW56dC4KW0FsbGdlbWVpbjpEYW1pZW5dIE1haGx6ZWl0IQpEYXMgV2FuZy1TY2h3ZWluIGdydW56dC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzbyBtZWludGUgaWNoIGRhcyBuaWNodCAoVGhlcmluLCAyMS4gRmViIDE5OTgsIDE2OjQ2OjA4KToKW0FiZW50ZXVlcjpNb3JyaXNvbl0gU2NoZWluYmFyIGdpYnQgZXMgaW0gTUcgbm9jaCBlY2h0ZSBSaXR0ZXIuLi53ZXIgaW1tZXIKW0FiZW50ZXVlcjpNb3JyaXNvbl0gamV0enQgbWVpbiBaZXVnIGhhdCwgR3JhdHMhCgpbQWJlbnRldWVyOlRoZXJpbl0gc2Nob25tYWwgYmVpIGRlaW5lbSBzdGVyYmVvcnQgbmFjaGdlc2VoZW4/CgpbVG9kOkxhcnNdIEVpbiBTdGVpbmJlaXNzZXIgaGF0IGdlcmFkZSBNb3JyaXNvbiB1bWdlYnJhY2h0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsZXJpa2VyIHZvbiBoZXV0ZS4uIChaZXBoeXIsIDIzLiBGZWIgMTk5OCwgMDE6MzA6MTQpOgoKRWJlbiBpbiBQb2xhcjoKCkdyZXlzdG9uZSBzaWVodCBzZWhyIGdsdWVja2xpY2ggYXVzLgpEaWUgRWlzcHJpbnplc3NpbiBsYWVjaGVsdCBEaXIgdmllbHNhZ2VuZCB6dS4KCmtvcGZzY2h1ZXR0ZWxuZCwgWmVwaHlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzbyBpc3QgZGFzIG1pdCB2ZXJsb2J0ZW4gOi0pICAoTmFpcm9sZiwgMjMuIEZlYiAxOTk4LCAwOTowNzoxOCk6Ck5lc2FqYSBkZW5rdCAgIC4gbyBPIChLZXkgaXN0IGF1ZiBkZXIgQXJiZWl0IC4uLmdlbGQgaGVyYmVpc2NoYWZmZW4gOikpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmx1Y2h0IChRaXRlc3MsIDIzLiBGZWIgMTk5OCwgMTM6MTQ6MjUpOgo+IFNhbG9tZSB0ZWlsdCBEaXIgbWl0OiB3byBkdSByZWNodCBoYXN0IGhhc3QgZHUgcmVjaHQsIGhpZXIgaXN0IGhvcGZlbiB1bmQgCm1hbHoKU2Fsb21lIHRlaWx0IERpciBtaXQ6IHZlcmxvcmVuLCBhYmVyIGdvdHQgc2VpIGRhbmsgZ2lidCBlcyBqYSBhdXRvcyB1bSB6dQpTYWxvbWUgdGVpbHQgRGlyIG1pdDogZmx1ZWNodGVuCktyYXR6IHNhZ3Q6IEljaCBoYWJlIEFuZ3N0LiBJY2ggZmx1ZWNodGUuCgoKUUkqKiBmbHVlY2h0ZXQgYXVjaCBiYWxkIGluIGVpbmUgSG9jaGJ1cmcgZGVzIEthcm5ldmFscwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IER1IHdlaXNzdCwgZGFzcyBEdSB6dXZpZWwgZ2VNVURkZXQgaGFzdCwgd2Vubi4uLiAoUWl0ZXNzLCAyMy4gRmViIDE5OTgsIDEzOjIzOjA1KToKfiMhIHJuPVphcGhvYiBydD04ODc4MjQ0MDQgcmc9c2NobWFycm4KfiMhIHRpZD04ODcwMjUxMTQKLi4uRHUgRGVpbmUgR2VzcHJhZWNoZSBuYWNoIFNjaG1hcnJuIHBvc3RlbiB3aWxsc3QuLi4KCi4uLiB1bmQgZXMgZGFubiBhdWNoIHR1c3Q6CgpGZXN0aW4gc2FndDogSWNoIGdsYXViZSwgaWNoIHNjaGF1IG1pciBtYWwgZGllIEZlbGluZW4gbWl0IG5lbSBad2VpdGllIGFuLgpRaXRlc3Mgc2V1Znp0LgpRaXRlc3Mgc2FndDogRGllcyBoYWFyaWdlbiBEaW5nZXIgPwpGZXN0aW4gbmlja3QuCkZlc3RpbiBuaW1tdCBlaW5lbiBTY2hsdWNrIEJpZXIuClFpdGVzcyBuaW1tdCBlaW5lbiBTY2hsdWNrIEJpZXIuClFpdGVzcyBzYWd0OiBIb2ZmZW50bGljaCBtdXNzIGVpbiBTcGllbGVyIG5pY2h0IGVpbmVuIGJlcnVmIGVyZ3JlaWZlbiwgd2VubgpkaWUgQmVydWZlIHJlYWxpc2llcnQgd2VyZGVuLgpGZXN0aW4gbmlja3QuClFpdGVzcyBzYWd0OiBXZWxjaGUgR2lsZGUga3JpZWdlbiBkZW5uIGRpZSBGZWxpbmVuPwpGZXN0aW4gc2FndDogRmVsaXN0ZXI/CkZlc3RpbiBncmluc3QuClFpdGVzcyBsYWNodC4KUWl0ZXNzIGRlbmt0IC4gbyAwICggLT4gU0NITUFSUk4gISkKClFJKioKUC5TLjogSWNoIHdlaXNzLCBkYXNzIEZlbGlzdGVyIG5pY2h0IEZlbGlzdGVyIGdlc2NocmllYmVuIHdpcmQsIGFiZXIgZXMgcGFzc3QKaGFsdCBzbyBjaGljIHp1IEZlbGluZW4uCjspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWl0IHNlaW5lciBFcmxhdWJuaXMuLi4gKEFuYXRvbCwgMjMuIEZlYiAxOTk4LCAyMDowMDoyMSk6CkRlaW4gRnJldW5kIE1haGF0bWEgdGVpbHQgRGlyIG1pdDogd2FhYWFoLCBiaW4gaWNoIGJsb2VkIDopCkRlaW4gRnJldW5kIE1haGF0bWEgdGVpbHQgRGlyIG1pdDogaGFiIGRpZSBnYW56ZSB6ZWl0IG1laW5lIHJ1ZXN0dW5nIG5pY2h0CkRlaW4gRnJldW5kIE1haGF0bWEgdGVpbHQgRGlyIG1pdDogYW5nZWhhYnQsIHVuZCB3dW5kZXIgbWljaCwgZGFzcyBkaWUga29lcGZlCkRlaW4gRnJldW5kIE1haGF0bWEgdGVpbHQgRGlyIG1pdDogaGV1dGUgc28gdmllbCBnZXpvZ2VuIGhhYmVuIDspKSkKCkJpZXJzY2h1ZXR0bGVyIGFid2VydGVuPyA6KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWl0IHNlaW5lciBFcmxhdWJuaXMuLi4gKFd1cnplbCwgMjMuIEZlYiAxOTk4LCAyMDowMToxNyk6Cn4jISBybj1BbmF0b2wgcnQ9ODg4MjYwNDIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg4MjYwNDIxCm5laW4sIG5pY2h0IGJpZXJzY2h1ZXR0bGVyIGFid2VydGVuLiBoeWRyYSBhdWZ3ZXJ0ZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWl0IHNlaW5lciBFcmxhdWJuaXMuLi4gKFNpbHZhbmEsIDIzLiBGZWIgMTk5OCwgMjA6MjA6NDgpOgp+IyEgcm49V3VyemVsIHJ0PTg4ODI2MDQ3NyByZz1zY2htYXJybgp+IyEgdGlkPTg4ODI2MDQyMQpVbmQgbmljaHQgdmVyZ2Vzc2VuOiBNYWhhdG1hIGFid2VydGVuLiA6KSBEaWUgYW5kZXJlbiBCaWVyc2NodWV0dGxlcgpoYWJlbiByZWFsaXN0aXNjaGVyZSBLYW1wZmtyYWZ0Li4uIDopCgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthZW1wZmVyYXVzYmlsZHVuZyAoTmViLCAyMy4gRmViIDE5OTgsIDIzOjA4OjQwKToKW1RvZDpMYXJzXSBFaW4gRWNoc2Vud2FlY2h0ZXIgaGF0IGdlcmFkZSBZdW5nYSB1bWdlYnJhY2h0LgpVZ2kgd2lua3QgRGlyIHVuZCBsYWVjaGVsdCBkaXIgenVtIGFic2NoaWVkIGF1cyBkZXIgRmVybmUgenUuCkR1IHRlaWxzdCBVZ2kgbWl0OiB0eXBvICJhYnNjaGllZCIKVWdpIGlzdCBnZXJhZGUgbmljaHQgZGE6IGJpbGRlIHl1bmdhIGF1cwoKTmViLCBzdGF1bnQgdWViZXIgZGllIEF1c2JpbGR1bmdzbWV0aG9kZW4gYmVpIGRlbiBLYWVtcGZlcm4gKG1hbCBpbnMgb2ZmZW5lCk1lc3NlciBsYXVmZW4gbGFzc2VuIG9kZXIgd2llID8pIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRW50Z2xlaXN1bmcgKENhdHdlYXpsZSwgMjQuIEZlYiAxOTk4LCAxMToyNzoxMSk6Cn4jISBvbj1Nb3Jnb3RoIG90PTg4ODIzMTgxMiBvZz1ldGlrZXR0ZQp+IyEgcm49UGF0cnluIHJ0PTg4ODIzMTc5MCByZz1ldGlrZXR0ZQp+IyEgdGlkPTg4NzgzMjc4MgpCdWVjayBEaWNoIEZlZSwgV3Vuc2NoIGlzdCBXdW5zY2ggIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRW50Z2xlaXN1bmcgKENhdHdlYXpsZSwgMjQuIEZlYiAxOTk4LCAxMToyNzoyOSk6Cn4jISBvbj1HdW5kdXIgb3Q9ODg4MjMyMTcxIG9nPWV0aWtldHRlCn4jISBybj1Nb3Jnb3RoIHJ0PTg4ODIzMTgxMiByZz1ldGlrZXR0ZQp+IyEgdGlkPTg4NzgzMjc4MgpIbQpEYXMgd2FyIGFiZXIgZWhlciBkaWUgR2VzY2hpY2h0ZSBtaXQ6IExvcyBQaW5vY2NoaW8hIEx1ZWchCjotKQpHdW5kdXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW4gRmVybldlc3QgKEJpcmR5LCAyNC4gRmViIDE5OTgsIDE3OjE5OjQyKToKPmkKLi4uClZlcnNjaGllZGVuZXM6CiBEZXIgS29lbmlnIGRlciBEaWViZS4KLi4uCgpCaXJkeSBzaWNoIHVlYmVyIGdhciBuaXggbWVociB3dW5kZXJuZCwgd2VpbCBlciBkYSBuYWVsaWNoIGF1Y2ggZ2VnZW4gU2lsdmFuYQpnZWthZW1wZnQgaGF0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEb2NoIGFid2VydGVuPyAoU3JhYmksIDI0LiBGZWIgMTk5OCwgMTg6MTc6MjApOgpFcyBnZXNjaGFoIGFtIFRpZ2VyCgogRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KRmVsYm8gdHJpbmt0IGVpbmVuIFNjaGx1Y2sgR3VtbWliYWVyZW5zYWZ0IHVuZCBzcHJpbmd0IGRhdm9uLgoKU3JhYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFNjaGVtZW5yZWljaCAoSGFkcmEsIDI1LiBGZWIgMTk5OCwgMTI6MjE6MjUpOgp+IyEgb249SGFkcmEgb3Q9ODg4NDA1NjU5IG9nPWQud2FsZAp+IyEgcm49V29vZHkgcnQ9ODg4MzQ1OTkxIHJnPWQud2FsZAp+IyEgdGlkPTg4NzY1MTk3OQppc3QgZGVpbiB0ZXggbmljaHQgOC1iaXQtY2xlYW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHN0aWxibHVldGVuIChSb25kYSwgMjUuIEZlYiAxOTk4LCAyMDoxODo0Nik6Cn4jISBybj1Sb25kYSBydD04ODg0MzQwNzQgcmc9c2NobWFycm4KfiMhIHRpZD04ODcyODAwMTUKU29ycnkgLSBhYmVyIGRhcyBfbXVzc3RlXyBlaW5mYWNoIHNlaW4uLi4gd2UgdmVybGVndHMgYWxzIG5hZWNoc3Rlcz8KClJvZGEKU0hJVCEgSWNoIHdlcmRlIGRpZXNlbiBFZGl0b3IgbmllIHJpY2h0aWcgYmVudXR6ZW4uLi4gd2llIGdhYnMgZGllIEhpbGZlPz8/CkVnYWwuLi4gc29sbHRlIAogLSAtIFJvbmRhIC0gLQpoZWlzc2VuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbGZlbiBoYWJlbiBhYmVyIGxhbmdlIEFybWU7KSAoQWxwaGEsIDI1LiBGZWIgMTk5OCwgMjM6Mjc6MjEpOgpJbiBkZXIgRWxmZW5rbmVpcGUuLi4uLgpFaW4gRWxmZW53YWVjaHRlciBuaW1tdCBlaW5lbiBTY2hpbGQuCkVpbiBFbGZlbndhZWNodGVyIG5pbW10IGVpbmVuIFBhbnplci4KRWluIEVsZmVud2FlY2h0ZXIga29tbXQgYW4uCltzY2hhdV0KRGllcyBpc3QgZGVyIFNjaGFua3JhdW0gZGVyIEdhc3RzdGFldHRlIGRlciBFbGZlbnNpZWRsdW5nLiBFcyBpc3QgZWluCjVtIG1hbCAxMG0gZ3Jvc3NlciBSYXVtLCBkZXNzZW4gUnVlY2t3YW5kIHZvbiBlaW5lciBUaGVrZSBlaW5nZW5vbW1lbgp3aXJkLiBWaWVyIHNlaHIgc3RhYmlsIGF1c3NlaGVuZGUsIHJ1bmRlIFRpc2NoZSBzdGVoZW4gaGllciBydW0uIFVtCmplZGVuIFRpc2NoIHN0ZWhlbiBzZWNocyBIb2NrZXIuIEluc2dlc2FtdCBzaWVodCBoaWVyIGFsbGVzIGV0d2FzIGVpbi0KZmFjaGVyIGF1cywgYWJlciBrZWluZXN3ZWdzIHVua3VsdGl2aWVydC4KQXVmIGplZGVtIFRpc2NoIGxpZWd0IGVpbmUgTWVudWVrYXJ0ZSwgZGllIER1IG1pdCAnbWVudWUnIGxlc2VuIGthbm5zdC4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRlbi4KRGllIFRvcC1MaXN0ZSwgVG9wLVNwaWVsZXJsaXN0ZSB1bmQgVG9wLVNlaGVybGlzdGUuCkVpbiBFbGZlbndhZWNodGVyLgpEYXNzIHdpciBFbGZlbiBncm9zcyBzaW5kLCB3dXNzdGUgaWNoLCBhYmVyIGRhc3Mgd2lyIHNvbGNoIGxhbmdlIEFybWUgaGFiZW4uLi4KQWxwaGEgd3VlbnNjaHQgc2ljaCBkYXMgaW0gS2FtcGY6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHN0aWxibHVldGVuIChHcmltbWJvcm4sIDI2LiBGZWIgMTk5OCwgMTc6Mzg6MDUpOgp+IyEgb249Um9uZGEgb3Q9ODg4NDM0MDc0IG9nPXNjaG1hcnJuCn4jISBvbj1DYXR3ZWF6bGUgb3Q9ODg4Mzk4OTczIG9nPW11ZWxsCn4jISBvbj1QYXRyeW4gb3Q9ODg4MzU0MDYwIG9nPWdpbGRlbi5rbGVydXMKfiMhIG9uPUdyaW1tYm9ybiBvdD04ODcyOTgyOTEgb2c9bXVlbGwKfiMhIG9uPUZldWVyd2VociBvdD04ODcyOTc3NTggb2c9d2l0emUKfiMhIHJuPUxpIHJ0PTg4NzI4MDAxNSByZz13aXR6ZQp+IyEgdGlkPTg4NzI4MDAxNQpXYWFhaCEKCipMYWNoKi4gU2VociBzY2hvZW4uIEdhbnogdG9sbCA6KQoKICAgIEZldWVyd2Voci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHN0aWxibHVldGVuIChHcmltbWJvcm4sIDI2LiBGZWIgMTk5OCwgMTc6Mzk6MTEpOgp+IyEgcm49Um9uZGEgcnQ9ODg4NDM0MzI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3MjgwMDE1CkljaC4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKUC5TLiBIaWxmZSBtaXQgfmgsIHdhcyBEdSBnZXN1Y2h0IGhhc3Qgd2FyIH5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFNjaGVtZW5yZWljaCAoR3JpbW1ib3JuLCAyNi4gRmViIDE5OTgsIDE4OjIwOjQxKToKfiMhIG9uPUppbWRpZ3JpeiBvdD04ODg1MTM2MjEgb2c9ZC53YWxkCn4jISBybj1NYXJzIHJ0PTg4ODUxMzUyOCByZz1kLndhbGQKfiMhIHRpZD04ODc2NTE5NzkKCkljaCBuaWNodC4gOikKLT4gc2NobWFycm4vZGlza3Vzc2lvbgpKZEcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBTY2hlbWVucmVpY2ggKEdyaW1tYm9ybiwgMjYuIEZlYiAxOTk4LCAxODoyMDo1Nyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODg4NTEzNjQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3NjUxOTc5CkRlaW4gV3Vuc2NoIGlzdCBtaXIgQmVmZWhsLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBTY2hlbWVucmVpY2ggKEppbWRpZ3JpeiwgMjYuIEZlYiAxOTk4LCAxODozNToyMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODg4NTEzNjU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg3NjUxOTc5CkNvb2wsCgptaXIgZmFsbGVuIGdsZWljaCBub2NoIG1laHIgV3VlbnNjaGUgZWluIDstKQoKQ2lhbywKIEppbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR25vbWUgaGF0IG1hZ2lzY2hlIEZhZWhpZ2tlaXRlbiAob2RlciB6dSBndXRlIEJlemllaHVuZ2VuIDspIChSaW5nb3IsIDI3LiBGZWIgMTk5OCwgMTQ6MzY6MTIpOgpFYmVuIHBhc3NpZXJ0IC0gdW5nZXNjaG5pdHRlbjoKCkR1IHRlaWxzdCBkZWluZW4gRnJldW5kZW4gbWl0OiBpaHIgc2VpZCBzbyBydWhpZywgaW4gZGVyIG1wYSBzdGVodCBuaXggLi4uCkR1IHRlaWxzdCBkZWluZW4gRnJldW5kZW4gbWl0OiBpY2ggaGFiIExBTkdFV0VJTEUgKQpHbm9tZSB0ZWlsdCBEaXIgbWl0OiBvaywga29lbm5lbiB3aXIgYWVuZGVybiA6KSBbMTQ6MDldCkdub21lIHdhdHNjaGVsdCBlbnRlbmdsZWljaCBoZXJlaW4uCkVpbiBMZXVjaHR0cm9sbCBrb21tdCBhbi4KRWluIExldWNodHRyb2xsIGtvbW10IGFuLgpbc2NoYXVdCk5hIHNvd2FzLCB3byBiaXN0IER1IGRlbm4gaGllciBnZWxhbmRldD8gQWxsZXMgZ2xpdHplcnQgdW5kIGZ1bmtlbHQgdm9uClVubWVuZ2VuIHZvbiBLcmlzdGFsbGVuIHVuZCB3ZXJ0dm9sbGVuIFN0ZWluZW4gYWxsZXIgQXJ0LiBad2VpIEdhZW5nZQpmdWVocmVuIHp3aXNjaGVuIGdyb3NzZW4gSGF1ZmVuIHZvbiBLcmlzdGFsbHNjaGVyYmVuIGR1cmNoIG5hY2ggT3N0ZW4KYnp3LiBTdWVkZW4uIE1pdHRlbiBpbSBSYXVtIGJlZmluZGV0IHNpY2ggZWluZSBzdGFiaWxlIEhvbHpsZWl0ZXIsIGRpZQpkdXJjaCBlaW4gTG9jaCBpbiBkZXIgRGVja2UgbmFjaCBvYmVuIGZ1ZWhydC4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2Ugb3N0ZW4sIG9iZW4gdW5kIHN1ZWRlbi4KRWluIExldWNodHRyb2xsLgpFaW4gTGV1Y2h0dHJvbGwuCltNZXR6ZWx0ZWFtOiBHZWZsdWVnZWxdIEdub21lIGRlciBTb2huIGRlcyBLYXJhayAoS2FtcGZlbnRlLCBtdWRzdWVjaHRpZykuCkVpbiByb3RlciBLcmlzdGFsbC4KW2xhY2hlXQpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCltzYWdlIGhhc3QgZHUgZGVuIHJlc2V0LWtub3BmIGluIGRlciB0YXNjaGU/XQpEdSBzYWdzdDogaGFzdCBkdSBkZW4gcmVzZXQta25vcGYgaW4gZGVyIHRhc2NoZT8KW3VudCB0cm9sbCAxXQpEaWUgaXN0IGVpbmUgZ2FueiBiZXNvbmRlcmUgVHJvbGxhcnQsIExldWNodHRyb2xsZSBzaW5kIG5hZW1saWNoIG5pY2h0CmV0d2EgYm9lc2UsIHNvbmRlcm4gbGViZW4gbWl0IGRlbiBtZWlzdGVuIGFuZGVyZW4gTGViZXdlc2VuIGluIEZyaWVkZW4KdW5kIEhhcm1vbmllLiBMZXVjaHR0cm9sbGUgaGFiZW4gZWluZSBzZWx0c2FtZSBFaWdlbmFydCwgZGVubiBzaWUKc3RyYWhsZW4gZWluIGhlbGxlcyBMaWNodCBhYi4gSWhyZSBMaWVibGluZ3NiZXNjaGFlZnRpZ3VuZyBpc3QgZGFzClNhbW1lbG4gdm9uIGJ1bnRlbiBLcmlzdGFsbGVuLgpFciBpc3QgYWJzb2x1dCBmaXQuICgxMDAlKQpFciB0cmFlZ3QgYmVpIHNpY2g6CkVpbiBnZWxiZXIgS3Jpc3RhbGwuClt1bnQgdHJvbGwgMl0KRGllIGlzdCBlaW5lIGdhbnogYmVzb25kZXJlIFRyb2xsYXJ0LCBMZXVjaHR0cm9sbGUgc2luZCBuYWVtbGljaCBuaWNodApldHdhIGJvZXNlLCBzb25kZXJuIGxlYmVuIG1pdCBkZW4gbWVpc3RlbiBhbmRlcmVuIExlYmV3ZXNlbiBpbiBGcmllZGVuCnVuZCBIYXJtb25pZS4gTGV1Y2h0dHJvbGxlIGhhYmVuIGVpbmUgc2VsdHNhbWUgRWlnZW5hcnQsIGRlbm4gc2llCnN0cmFobGVuIGVpbiBoZWxsZXMgTGljaHQgYWIuIElocmUgTGllYmxpbmdzYmVzY2hhZWZ0aWd1bmcgaXN0IGRhcwpTYW1tZWxuIHZvbiBidW50ZW4gS3Jpc3RhbGxlbi4KRXIgaXN0IGFic29sdXQgZml0LiAoMTAwJSkKRXIgdHJhZWd0IGJlaSBzaWNoOgpFaW4gZ2VsYmVyIEtyaXN0YWxsLgpHbm9tZSBuaWNrdCB6dXN0aW1tZW5kLgpHbm9tZSBnaWJ0IERpciBlaW5lbiBSZXNldC1Lbm9wZi4KW3NhZ2UgZGFubiBiaXR0ZSBub2NobWFsLCBkaWVzbWFsIHdlaXNzXQpEdSBzYWdzdDogZGFubiBiaXR0ZSBub2NobWFsLCBkaWVzbWFsIHdlaXNzCkdub21lIGdyaW5zdC4KR25vbWUgd2F0c2NoZWx0IGVudGVuZ2xlaWNoIG5hY2ggU3VlZGVuLgpbc10KS3Jpc3RhbGxlYmVuZS4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2Ugb3N0ZW4sIHN1ZWRlbiB1bmQgbm9yZGVuLgpbc10KS3Jpc3RhbGxlYmVuZS4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgbm9yZGVuLgpbc10KS3Jpc3RhbGxlYmVuZS4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2Ugb3N0ZW4gdW5kIG5vcmRlbi4KW29dCktyaXN0YWxsZWJlbmUuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlIHdlc3RlbiB1bmQgbm9yZGVuLgpbTWV0emVsdGVhbTogR2VmbHVlZ2VsXSBHbm9tZSBkZXIgU29obiBkZXMgS2FyYWsgKEthbXBmZW50ZSwgbXVkc3VlY2h0aWcpLgpFaW4gTGV1Y2h0dHJvbGwuCkVpbiBMZXVjaHR0cm9sbC4KRWluIFJpbmcgZGVyIEdlc2NoaWNrbGljaGtlaXQgKC0yKS4KRWluZSBrbGVpbmUgTWV0YWxsa2lzdGUuClt1bnQgdHJvbGwgMV0KRGllIGlzdCBlaW5lIGdhbnogYmVzb25kZXJlIFRyb2xsYXJ0LCBMZXVjaHR0cm9sbGUgc2luZCBuYWVtbGljaCBuaWNodApldHdhIGJvZXNlLCBzb25kZXJuIGxlYmVuIG1pdCBkZW4gbWVpc3RlbiBhbmRlcmVuIExlYmV3ZXNlbiBpbiBGcmllZGVuCnVuZCBIYXJtb25pZS4gTGV1Y2h0dHJvbGxlIGhhYmVuIGVpbmUgc2VsdHNhbWUgRWlnZW5hcnQsIGRlbm4gc2llCnN0cmFobGVuIGVpbiBoZWxsZXMgTGljaHQgYWIuIElocmUgTGllYmxpbmdzYmVzY2hhZWZ0aWd1bmcgaXN0IGRhcwpTYW1tZWxuIHZvbiBidW50ZW4gS3Jpc3RhbGxlbi4KRXIgaXN0IGFic29sdXQgZml0LiAoMTAwJSkKRXIgdHJhZWd0IGJlaSBzaWNoOgpFaW4gd2Vpc3NlciBLcmlzdGFsbC4KW3VudCB0cm9sbCAyXQpEaWUgaXN0IGVpbmUgZ2FueiBiZXNvbmRlcmUgVHJvbGxhcnQsIExldWNodHRyb2xsZSBzaW5kIG5hZW1saWNoIG5pY2h0CmV0d2EgYm9lc2UsIHNvbmRlcm4gbGViZW4gbWl0IGRlbiBtZWlzdGVuIGFuZGVyZW4gTGViZXdlc2VuIGluIEZyaWVkZW4KdW5kIEhhcm1vbmllLiBMZXVjaHR0cm9sbGUgaGFiZW4gZWluZSBzZWx0c2FtZSBFaWdlbmFydCwgZGVubiBzaWUKc3RyYWhsZW4gZWluIGhlbGxlcyBMaWNodCBhYi4gSWhyZSBMaWVibGluZ3NiZXNjaGFlZnRpZ3VuZyBpc3QgZGFzClNhbW1lbG4gdm9uIGJ1bnRlbiBLcmlzdGFsbGVuLgpFciBpc3QgYWJzb2x1dCBmaXQuICgxMDAlKQpFciB0cmFlZ3QgYmVpIHNpY2g6CkVpbiB3ZWlzc2VyIEtyaXN0YWxsLgoKClVubm9ldGlnIHp1IGVyd2FlaG5lbiwgZGFzcyBkaWUgYmVpZGVuIFRyb2xsZSB2b3JoZXIgYXVjaCBub2NoIG5pY2h0IApkYSBzdGFuZGVuLgoKUmluZ29yLiBTcHJhY2hsb3MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogU2NoZW1lbnJlaWNoIChHcmltbWJvcm4sIDI3LiBGZWIgMTk5OCwgMTU6MzU6MTkpOgp+IyEgb249R3JpbW1ib3JuIG90PTg4ODU5MDEwOCBvZz1ldGlrZXR0ZQp+IyEgcm49RnJldW5kIHJ0PTg4ODU4OTUyNSByZz1ldGlrZXR0ZQp+IyEgdGlkPTg4NzY1MTk3OQpMYXNzIGlobiBtYWwsIGRhcyBmYWVsbHQgZnVlciBpaG4gc2ljaGVyIHVudGVyICJHcnVuZHJlZ2VsbiIuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbGFuZ2V3ZWlsZT8gKEhhbmdvdmVyLCAyNy4gRmViIDE5OTgsIDE1OjU2OjIyKToKR3JhZGUgZWJlbjoKCkplbWFuZCBiZXNjaHdvZXJ0IERlaW4gQmlsZCBoZXJhdWYuClRvcndlZyBpbiBNb3Jvbi4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHdlc3RlbiB1bmQgbm9yZGVuLgpEYXMgSGF1cyB2b24gSGFuZ292ZXIuCkR1IGhhc3QgamV0enQgMjA4IExlYmVuc3B1bmt0ZSB1bmQgMjEwIEtvbnplbnRyYXRpb25zcHVua3RlLgpJbiBIYW5nb3ZlcnMgSGF1cy4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9iZW4sIHVudGVuLCByYXVzIHVuZCBub3JkZW4uCkVpbmUgVHJ1aGUgKGdlc2NobG9zc2VuKS4KRHUgaGFzdCBqZXR6dCAyMDkgTGViZW5zcHVua3RlIHVuZCAyMTAgS29uemVudHJhdGlvbnNwdW5rdGUuCltTZWhlcjpIYW5nb3Zlcl0gd2VyIGJlc2Nod29lcnQgYW4gbWlyIHJ1bT8KRHUgaGFzdCBqZXR6dCAyMTAgTGViZW5zcHVua3RlIHVuZCAyMTAgS29uemVudHJhdGlvbnNwdW5rdGUuCltCaWVyc2NodWV0dGxlcjpCcnVub10gSmEgYmluIGljaCBpbSBXYWxkIGhpZXI/IFdvIGJsZWlidCBkZW5uIG1laW4gQWx0Ymllcj8KSmVtYW5kIGJlc2Nod29lcnQgRGVpbiBCaWxkIGhlcmF1Zi4KSmVtYW5kIGJlc2Nod29lcnQgRGVpbiBCaWxkIGhlcmF1Zi4KSmVtYW5kIGJlc2Nod29lcnQgRGVpbiBCaWxkIGhlcmF1Zi4KCk5vY2ggamVtYW5kPwotSGFuZ292ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjotKSkpKSAoTmFpcm9sZiwgMjcuIEZlYiAxOTk4LCAyMzowNTo1Nyk6CkVpbiBGcmV1bmQgc2FndDogZGFzIHdhciBlaW4gc2tyaXB0IG9kZXIgbWFrcm8gb2RlciBlaW4gdmVyZGFjaHQgZGFmYXVyLApzaGFyaWEsIHNvcnJ5LCBpY2ggbXVzcyBkaWNoIHVuZCBuYWlyb2xmIGxlaWRlciBsb2VzY2hlbi4KCkRlaW4gVGVkZHkga251ZGRlbHQgRGljaCBlaW4gbGV0enRlcyBtYWwuCgpHcmV5c3RvbmUgc2FndDogbWhtIGljaCBnbGF1YiBkdSBzY3JpcHRlcyBuZWIgc28gd2llIGR1IGhpZXIgcnVtc3RlaHN0IGlzIGRhcwpHcmV5c3RvbmUgc2FndDogdGYgcmFuZG9tIGRlbGF5IGRhcyBzYWcgaWNoIGZyZXVkCgoKCgouLi4uLi4gU3RpbW11bmdlbiAuLi4uLiBlaW5mYWNoIG1hbCBzbyBhdWZnZXNjaG5hcHB0Li4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpncmFkZSBhbSBUaWdlciAoTmViLCAyOC4gRmViIDE5OTgsIDAwOjAwOjEzKToKRHUgYmlzdCBhbSBTdGFkdHRvciB2b24gUG9ydCBWYWluIGFuZ2Vrb21tZW4sIGRhcyB1bm1pdHRlbGJhciB2b3IgRGlyIGxpZWd0LgpJbjt3ZXN0bGljaGVyIFJpY2h0dW5nIGZ1ZWhydCBkaWUgUG9ydCBWYWluZXIgTGFuZHN0cmFzc2UgaW4gZGllIGdyb3NzZSwKd2VpdGU7V2VsdCBoaW5hdXMgdW5kIGluIG9lc3RsaWNoZXIgUmljaHR1bmcgenVtIGdyb3NzZW4gU3RhZHR6ZW50cnVtIGRlcgpIYWZlbnN0YWR0LjtVbm1pdHRlbGJhciBzdWVkbGljaCB2b24gRGlyLCBkaXJla3QgbmViZW4gZGVtIFN0YWR0dG9yIHNpZWhzdCBEdQpkaWUgcmllc2lnZTtQZm9ydGUgZWluZXMgbm9jaCByaWVzaWdlcmVuIFdldHRwYWxhc3RlcyB2b3IgRGlyIGF1ZnJhZ2VuLiBEdQpsZWdzdCBEZWluZW47S29wZiBpbiBkZW4gTmFja2VuLCB1bSBpaG4gZ2FueiBiZXRyYWNodGVuIHp1IGtvZW5uZW4uIEVpbgpncm9zc2VzIFNjaGlsZDtoYWVuZ3QgdWViZXIgZGVyIEVpbmdhbmdzcGZvcnRlLjtFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlCkF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiB1bmQgd2VzdGVuLjtUaG9ydmluIGRlciBTY2hvbGFyLjtHcmV5c3RvbmUgSW5xdXNpdG9yCmRlciBLYW5kcmksIGphZ2R0IFNrcmlwdGVyLjtJbnF1aXNpdG9yIEZlbGJvIGVudGxhcnZ0IFNrcmlwdGVyLgpbUHJvdGVzdDpdIFRhcmEgaGF0IHdhcyBnZWdlbiB1ZWJlcm1hZXNzaWdlIFJlZ2xlbWVudGllcnVuZy4uLi4uCk1hdGlzIHZlcmtsYWd0IGRpZSBCYW5rIChWZXJ0cmFnc2JydWNoKS4KW1Byb3Rlc3Q6XSBaaWxsdXMgcHJvdGVzdGllcnQgZ2VnZW4gZGllIG5ldWUgU2tyaXB0ZS1SZWdlbC4KQ2FsaW1lcmEgZGllIGVyZm9sZ3JlaWNoZSBKYWVnZXJpbi4KW1Byb3Rlc3Q6XSBLaWxhciBkaWUgZ3Jvc3NlIFZhbXBpcmZsZWRlcm1hdXMgcHJvdGVzdGllcnQgZ2VnZW4gZGllIG5ldWUKU2NyaXB0ZS1SZWdlbHVuZy4uLgpbUHJvdGVzdDpdIERhcmt3aW5nIHByb3Rlc3RpZXJ0IGdlZ2VuIGRpZSBWZXJzY2hhZXJmdW5nIGRlcgpTa3JpcHRlLVJlZ2VsdW5nLi4uCk1ha3JvYmVudXR6ZXIgVGVyaW0gc2FndDogSWhyIGtvZW5udCBtaWNoIGFsbGUgbWFsIGxvZXNjaGVuLi47CltQcm90ZXN0XSBQZXJ0aW5heGUgemllaHQgZWluZSBEcmFjaGVuc2NodXBwZSBhdXMgLSBzdGVja3QgZWluIFhhbnRpLVNjaHdlcnQKenVydWVjayAtIHViZXJzY2h1ZXR0ZXQgZGFzIE1vbnN0ZXIgbWl0IEJpZXIgLSB6aWVodCBlaW5lIERyYWNoZW5zY2h1cHBlIGFuIC0KenVlY2t0IGVpbiBYYW50aS1TY2h3ZXJ0IC0gW1RvZF0gTGFyczogZWluIE1vbnN0ZXIgaGF0IGdyYWRlIFBlcnRpIHVtZ2VsZWd0LApzaWUgd2FyIHdvaGwgenUgbGFuZ3NhbS4uCk5vdmFzdG9ybSBkZXIgRWluemVsa2FlbXBmZXIuCltQcm90ZXN0Ol0gVGFtZWxpIGlzdCBnZWdlbiBkaWUgVmVyc2NoYWVyZnVuZyBkZXIgU2tyaXB0cmVnZWx1bmdlbi4uCltQcm90ZXN0Ol0gR2VvcmRpIExhIEZvcmdlIHByb3Rlc3RpZXJ0IGdlZ2VuIGRpZSBWZXJzY2hhZXJmdW5nIGRlcgpTY3JpcHRlLVJlZ2VsdW5nLi4KW1Byb3Rlc3Q6XSBUYXJpbmEgdW5kIGRpZSA3IFp3ZXJnZSBwcm90ZXN0aWVyZW4gZ2VnZW4gZGllIFZlcnNjaGFlcmZ1bmcgZGVyClNjcmlwdGUtUmVnZWx1bmcuLi4KCgpOZWIsIG9objNlIEtvbW1lbnRhciA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXT2NoZSAoR3JpbW1ib3JuLCAyOC4gRmViIDE5OTgsIDAwOjUwOjAyKToKIldlbm4gZGVyIEVsZWZhbnQga2FlbXBmdCwgd2lyZCBkYXMgR3JhcyBuaWVkZXJnZXRyYW1wZWx0IgoKTWl0IHNjaG9lbmVtIEdydXNzIGFuIGFsbGUgZ2Vsb2VzY2h0ZW4gRXhzY3JpcHRlciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpERVIgd2FyIGd1dCA7KSAoQW5hdG9sLCAyOC4gRmViIDE5OTgsIDAyOjIxOjExKToKCltNb2VyZGVyOkdlaXN0IGVpbmVzIFNjaXB0c10gQWJlciBGcmV1bmQuLi4uCgoKQW5hdG9sLCBkZXMgTWFnaWVycyBIdW1vciB6dSBzY2hhZXR6ZW4gd2lzc2VuZAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTY3JpcHRlbiAoR3JpbW1ib3JuLCAgMS4gTWFyIDE5OTgsIDAwOjI4OjQ1KToKfiMhIG9uPVN0aW5nIG90PTg4ODY2MjIxMyBvZz1hbGxnZW1laW5lcwp+IyEgcm49U3JhYmkgcnQ9ODg4NjU1NTgzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODg4NjU1NTgzCkFyZ2wsIGRhc3Mgd2FyIGRhc3MgX2Fic29sdXRfICBzY2hsZWNodGVzdGUgQXJndW1lbnQgZGFzcyBpY2ggYmlzIGpldHp0IGdlZ2VuCmRhc3Mgc2NyaXB0ZW4gZ2Vob2VydCBoYWJlLi4uIER1IHdpcnN0IGVzIGRvY2ggd29obCBmZXJ0aWdicmluZ2VuIGVpbmVuIERhZW1vbgp6dSBiZXNjaHdvZXJlbiB1bmQgZGFubiBkaWUgV2FmZmUgenUgenVlY2tlbiAobWFudWVsbCkgPz8gRmFsbHMgbmljaHQ6IERBTk4KVFVTVCBEVSBNSVIgRUNIVCBMRUlELCB1bmQgaWNoIG11c3MgRnJldW5kIHp1c3RpbW1lbiAqc2V1ZnoqCgoKU3RpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNjcmlwdGVuIChHcmltbWJvcm4sICAxLiBNYXIgMTk5OCwgMDA6Mjg6NTMpOgp+IyEgb249QW5hdG9sIG90PTg4ODcwODIzOCBvZz1hbGxnZW1laW5lcwp+IyEgcm49R3JpbW1ib3JuIHJ0PTg4ODcwNzk4NCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg4ODY1NTU4MwouLi4gdW5kIGljaCBkYWNodGUsIGRhc3MgZGFzIChpY2gga2VubmUgYmVpZGUgVmVyc2lvbmVuKSAibWl0IG9obmUiLUtvbnN0cnVrdAp0eXBpc2NoIHN1ZWRkZXV0c2NoIHdhZXJlLi4uIHNvIGthbm4gbWFuIHNpY2ggaXJyZW4uCgpBbmF0b2wgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTY3JpcHRlbiAoR3JpbW1ib3JuLCAgMS4gTWFyIDE5OTgsIDAwOjI4OjU1KToKfiMhIG9uPVd1cnplbCBvdD04ODg3MDgzOTkgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUFuYXRvbCBydD04ODg3MDgyMzggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04ODg2NTU1ODMKbmVpbiwgZGFzIGlzdCBuaWNodCBzdWVkZGV1dHNjaCwgc29uZGVybiBzY2hsZWNodGRldXRzY2guIHVuZCBsZXV0ZSwgZGllIGVpbgpwcm9ibGVtIHNwcmFjaGxpY2hlciBhcnQgaGFiZW4sIGdpYnQgZXMgZXJzaWNodGxpY2ggYXVjaCB3b2FuZGVycyA6KQoKZWluZSBzdWVkZGV1dHNjaGUgd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTY3JpcHRlbiAoR3JpbW1ib3JuLCAgMS4gTWFyIDE5OTgsIDAwOjI5OjIxKToKfiMhIG9uPUdyaW1tYm9ybiBvdD04ODg3MDg1MDkgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVd1cnplbCBydD04ODg3MDgzOTkgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04ODg2NTU1ODMKQWNoIHdhcywgc2llaCBsaWViZXIgenUsIGRhc3MgRHUgaGludGVyIGVpbmUgenVuZSBUdWVyIGtvbW1zdCwgc29uc3QgdmVycGFzcwppY2ggRGlyIGVpbiBwYWFyIGFiZSBIZW1ka25vZXBmZS4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU2NyaXB0ZW4gKEdyaW1tYm9ybiwgIDEuIE1hciAxOTk4LCAwMDoyOToyMyk6Cn4jISBvbj1EaG9qYWt0IG90PTg4ODcwODUzNCBvZz1hbGxnZW1laW5lcwp+IyEgcm49R3JpbW1ib3JuIHJ0PTg4ODcwODUwOSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg4ODY1NTU4MwpEYXMgaGVpc3N0IGFiZXIgJ3p1ZScgVHVlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFNjcmlwdGVuIChHcmltbWJvcm4sICAxLiBNYXIgMTk5OCwgMDA6MzI6MjApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg4ODcwODU2MyByZz1zY2htYXJybgp+IyEgdGlkPTg4ODY1NTU4MwpBY2ggd2FzLCB3YXJ0ZSBEdSBlcnN0IG1hbCBhYiBiaXMgenVzYW1tZW5nZXdhY2hzZW4gaXN0LCB3YXMgZGVyIEthbnpsZXIKenVzYW1tZW5nZWZ1ZWd0IGhhdCwgZGFubiBzYWdzdCBEdSBhdWNoICd6dW5lIFR1ZXInLgoKR3JpbW1ib3JuIGRlciBJbXBlcmlhbGlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU2NyaXB0ZW4gKEFuYXRvbCwgIDEuIE1hciAxOTk4LCAwMDozMzoxMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODg4NzA4NzQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg4NjU1NTgzCk1laW50ZSBEaG9qYWt0IGVpZ2VudGxpY2ggJ3p1ZScgb2RlciAneiJ1Jz8KCkFuYXRvbCBydWZ0OiBERUNLVU5HISA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFNjcmlwdGVuIChHcmltbWJvcm4sICAxLiBNYXIgMTk5OCwgMDA6MzM6NTcpOgp+IyEgcm49QW5hdG9sIHJ0PTg4ODcwODc5MCByZz1zY2htYXJybgp+IyEgdGlkPTg4ODY1NTU4MwpIbW0sIGRhcyB3ZWkvMyBpY2ggamV0enQgYXVjaCBuaWNodCBzbyBnZW5hdS4gRmFsc2NoIGlzdCBhYmVyIGJlaWRlcy4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU2NyaXB0ZW4gKERob2pha3QsICAxLiBNYXIgMTk5OCwgMDA6MzQ6MDcpOgp+IyEgcm49QW5hdG9sIHJ0PTg4ODcwODc5MCByZz1zY2htYXJybgp+IyEgdGlkPTg4ODY1NTU4MwpadXIgS2xhcnN0ZWxsdW5nOiBadSJlIFR1ZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU2NyaXB0ZW4gKFd1cnplbCwgIDEuIE1hciAxOTk4LCAwMDozNDo0OCk6Cn4jISBybj1EaG9qYWt0IHJ0PTg4ODcwODg0NyByZz1zY2htYXJybgp+IyEgdGlkPTg4ODY1NTU4Mwp3YXMgaXN0IGRhcmFuIGpldHp0IGtsYXJlciBnZXdvcmRlbj8gKm5peHZlcnN0ZWgqCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBTY3JpcHRlbiAoR3JpbW1ib3JuLCAgMS4gTWFyIDE5OTgsIDAwOjM3OjA2KToKfiMhIHJuPVd1cnplbCBydD04ODg3MDg4ODggcmc9c2NobWFycm4KfiMhIHRpZD04ODg2NTU1ODMKQWNoIHdhcywgRHUgd2Vpc3N0IGRvY2gsIGRhcyBpc3QgYWxsZSBoaWVyIG9yZ2FuaXNpZXJ0LCB1bSBEaWNoIHp1IHZlcndpcnJlbgp1bmQgaW4gZGVuIFdhaG5zaW5uIHp1IHRyZWliZW4uIERpZSBXZWx0IGlzdCBlaW5lIEx1ZWdlLCBkaWUgYWxsZSBNZW5zY2hlbgp2ZXJicmVpdGVuLCB1bSBEaWNoIHZvZWxsaWcgYmVlaW5mbHVzc2VuIHVuZCBzdGV1ZXJuIHp1IGtvZW5uZW4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3Qgc2FndDogV296dSBQYXJhbm9pYSwgd2VubiBlaCBzY2hvbiBhbGxlIGhpbnRlciBEaXIgaGVyCnNpbmQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogU2NyaXB0ZW4gKERob2pha3QsICAxLiBNYXIgMTk5OCwgMDA6Mzg6NTApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg4ODcwOTAyNiByZz1zY2htYXJybgp+IyEgdGlkPTg4ODY1NTU4MwpFaW4gc2VociBzY2hvZW5lcyBXb3J0IGluIGRlciBSaWNodHVuZyBpc3QgYXVjaCBiZWluaGFsdGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFNjcmlwdGVuIChXdXJ6ZWwsICAxLiBNYXIgMTk5OCwgMDA6Mzk6MDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg4ODcwOTAyNiByZz1zY2htYXJybgp+IyEgdGlkPTg4ODY1NTU4MwpkYSBpc3QgamV0enQgYWJlciBlaW4gbG9naWtmZWhsZXIgZHJpbi4gd2llc28gc29sbHRlIGljaCBkaXIgZGFzIGdsYXViZW4/CmRhcyBoYXQgbnVyIGRhbm4gKGZ1ZXIgbWljaCkgZ3VlbHRpZ2tlaXQsIHdlbm4gaWNoIGRhcyBzZWxic3Qgc2FnZS4gc29uc3QKd2lsbHN0IGR1IG1pciBkYXMgamEgZWggbnVyIGVpbnJlZGVuLCBvZGVyPwoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogU2NyaXB0ZW4gKERob2pha3QsICAxLiBNYXIgMTk5OCwgMDA6Mzk6NTApOgp+IyEgcm49RGhvamFrdCBydD04ODg3MDkxMzAgcmc9c2NobWFycm4KfiMhIHRpZD04ODg2NTU1ODMKQWVoLCBkYXMgbXVzcyBuYXR1ZXJsaWNoIHp1ciBFaW5kZXV0aWdrZWl0IGJlImluaGFsdGVuIGhlaXNzZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogU2NyaXB0ZW4gKEFuYXRvbCwgIDEuIE1hciAxOTk4LCAwMDo0NToyMik6Cn4jISBybj1EaG9qYWt0IHJ0PTg4ODcwOTE5MCByZz1zY2htYXJybgp+IyEgdGlkPTg4ODY1NTU4MwonbmF0InVybGljaCcgb2RlciAnbmF0dSJlcmxpY2gnID8gS2FubnN0IER1IERpY2ggbmljaHQga2xhciBhdXNkciJ1Y2tlbj8KCkFuYXRvbCA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogU2NyaXB0ZW4gKERob2pha3QsICAxLiBNYXIgMTk5OCwgMDA6NDY6NTgpOgp+IyEgcm49QW5hdG9sIHJ0PTg4ODcwOTUyMiByZz1zY2htYXJybgp+IyEgdGlkPTg4ODY1NTU4MwpEYXMgV29ydCAnbmF0InVybGljaCcgaXN0IHNvIHZlcmJyZWl0ZXQsIGRhc3MgZWluZSBNaS8zaW50ZXJwcmV0YXRpb24KYXVzZ2VzY2hsb3NzZW4gZXJzY2hlaW50LCBpbSBHZWdlbnNhdHogenUgJ2JlImluaGFsdGVuJy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBTY3JpcHRlbiAoR3JpbW1ib3JuLCAgMS4gTWFyIDE5OTgsIDAwOjQ3OjA2KToKfiMhIHJuPVd1cnplbCBydD04ODg3MDkxNDYgcmc9c2NobWFycm4KfiMhIHRpZD04ODg2NTU1ODMKTmVpbiwgc28gZWluZmFjaCB3aWUgRHUgenUgYmVlaW5mbHVzc2VuIGJpc3QgbG9obnQgc2ljaCBkYXMgbmljaHQuIEljaCBiaW4KZnVlciBkaWUgc2Nod2VyZW4gRmFlbGxlIHp1c3RhZW5kaWcsIGFiZXIgaWNoIGZ1ZXJjaHRlLCBtZWluZSBha3R1ZWxsZSBBdWZnYWJlCmlzdCB6dSBzY2h3ZXIuIEFjcmltb24gaXN0IG1pciBlaW5mYWNoIHVlYmVyLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogU2NyaXB0ZW4gKEFuYXRvbCwgIDEuIE1hciAxOTk4LCAwMDo1MToxMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODg4NzA5NjI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg4NjU1NTgzClNjaG1hcnJuIGltIFVlYmVyZmx1c3MuLi4gb2RlciBoZWlzc3QgZXMgIlViZXJmbHVzcz8gT2RlciAiVWViZXJmbHUicz8Kb2RlciAiVWJlcmZsdS8zPyBPZGVyIHZpZWxsZWljaHQgIlViZXJmbHVCPyBPZGVyIDpVYmVyLi4uZ25pZ25pZ25pIAoKQW5hdG9sIC0gd1VFcmdlbmQgOikKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFNjcmlwdGVuIChHcmltbWJvcm4sICAxLiBNYXIgMTk5OCwgMDA6NTI6MzApOgp+IyEgcm49QW5hdG9sIHJ0PTg4ODcwOTg3MSByZz1zY2htYXJybgp+IyEgdGlkPTg4ODY1NTU4MwoiaW4gcmF1aGVuIE1lbmdlbiIgd2FyIGRlciBBdXNkcnVjaywgZGVuIER1IGdlc3VjaHQgaGFzdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2NyaXB0ZW4gKEdsb2luc29uLCAgMS4gTWFyIDE5OTgsIDAzOjE3OjE1KToKfiMhIG9uPUdsb2luc29uIG90PTg4ODcxODYxNyBvZz1hbGxnZW1laW5lcwp+IyEgcm49U3RpbmcgcnQ9ODg4NzE1OTY4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODg4NjU1NTgzClNpY2hlciBrYW5uc3QgRHUgRGVpbmUgQXJ0aWtlbCB2ZXJsZWdlbiAuLi4gb2RlciBoaWVyIGV0d2EgbmljaHQgPyA7LSkKCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZXJhZGUgaW0gSG9jaHplaXRzbG9nIGdlZnVuZGVuLi4uIChEYXJrd2luZywgIDEuIE1hciAxOTk4LCAxNDozMjozMSk6ClRhbWVsaSBzYWd0OiBpY2ggaGFiIGhpZXIgbm9jaCBuZW4gZ3V0c2NoZWluIGZ1ZXIgZ2VzY2hlbmsKVGFtZWxpIGdyaW5zdCBMZWVsb28gYW4uCk5vdmFzdG9ybSBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KSmFtYWxTa2kgc2luZ3QgJ0JpZ2FzIHVuZCBMdWhoaHV1dWchJy4KQmlnYXMgc2NobXVuemVsdC4KSmFtYWxTa2kgc2luZ3QgJ0JpZ2FzIHVuZCBMdWhoaHV1dWchJy4KVGFtZWxpIHNhZ3Q6IGljaCB3dWVuc2NoIG1pciBsdWcgdW5kIGJpZ2FzIHZlcmhlaXJhdGV0ClRydmVzIFdhcnVtIGlzdCBrZWluIGJlZnJldW5kZXRlciBNYWcgZGEsIHdlbm4gbWFuIGlobiBicmF1Y2h0CkxlZWxvbyBzYWd0OiBEZXIgaXN0IHZvbiBtaXIuLi4KTGVlbG9vIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guClRhcmluYSBydWZ0OiBiaWdhcyB1bmQgbHVnIHdvbGxlbiBoZWlyYXRlbiA6LSkKTGVlbG9vIGZhZW5ndCBhbiB6dSBkZW5rZW4uCktsZWluZSBSYXVjaHdvZWxrY2hlbiBzdGVpZ2VuIGF1Zi4uLgpTaGFkZSBncmluc3QgVGFyaW5hIGFuLgpSaW5nb3IgdGF1bWVsdCBmbHVjaGVuZCBoZXJlaW4uCkxlZWxvbyBkZW5rdCAgIC4gbyBPIChPYiBpY2ggZGFzIGthbm4uLikKTm92YXN0b3JtIGdyaW5zdCBMdWcgYW4uCkphc29uUmlnaWQgcnVmdDogdHVzIG5pY2h0LCBiaWdhcyA6KQpSaW5nb3Igc2FndDogRUlOU1BSVUNICkx1ZyBzYWd0OiBUdSB3YXMgUmluZ29yCkxlZWxvbyBzYWd0OiBNb21lbnQuLiBJY2ggbXVzcyBudXIgc2NobmVsbCBNYWdpZXJpbiB3ZXJkZW4uLgpMZWVsb28gZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KQW5uYSBydWZ0OiB3YXMgZGVubiwgc2FtbWVsaG9jaHplaXQ/CkphbWFsU2tpIHJ1ZnQ6IEx1ZyB3aWV2aWVsIEZyYXVlbiBoYXN0IGR1IGRhbm49ClRhcmluYSBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpEdSB3YWVsenQgRGljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uCkxlZWxvbyBmbHVlc3RlcnQgUmluZ29yIGV0d2FzIGlucyBPaHIuClJpbmdvciBzY2hydW1wZnQgenVzYW1tZW4sIGxhZXVmdCBncnVlbiBhbiB1bmQgdmVyd2FuZGVsdCBzaWNoIGxhbmdzYW0gaW4KZWluZW4gRnJvc2NoLgpCaWdhcyBncmluc3QgZWluZW4gRnJvc2NoIGFuLgpOb3Zhc3Rvcm0gZ3JpbnN0IExlZWxvbyBhbi4KTGVlbG9vIHNhZ3Q6IEZyb2VzY2hlIGhhYmVuIGhpZXIgbmlodHMgenUgbWVsZGVuLi4KVGFyaW5hIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCkx1ZyBzYWd0OiBBZWg/IFJpbmdvcj8KTm92YXN0b3JtIHdhZWx6dCBzaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KTGVlbG9vIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guClRhcmluYSBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KU2hhZGUgZ3JpbnN0IGJyZWl0LgpEdSByb3RmbHN0LgpUYW1lbGkgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCkVpbiBGcm9zY2ggemllaHQgZWluZSBLcmlzdGFsbGtyb25lIGF1cy4KTHVnIGZhZW5ndCBmdWVyY2h0ZXJsaWNoIGFuIHp1IGZsdWNoZW4uCkVpbiBGcm9zY2ggemllaHQgZWluZW4gVGFybmhlbG0gYW4uClJpbmdvciBzcHJpY2h0IGVpbmlnZSBtYWdpc2NoZSBXb3J0ZSB1bmQgcGxvZXR6bGljaCBzdGVodCBlaW4gRnJvc2NoIHZvciBkaXIgIQouLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNRy1LYWxlbmRlciAoQmFicywgIDEuIE1hciAxOTk4LCAxODoxMjo1OCk6Cj4gdWViZXJnZWhlIGFsbGVzIGJpcyAzMS4yLgpVZWJlcmdlaGUgYWxsZSBSdWJyaWtlbiBiaXMgTW9uLCAgMy4gTWFyIDE5OTcsIDIzOjU5OjU5LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAgMi4gTWFyIDE5OTgsIDAwOjU3OjE3KToKIlp1IGFlbmRlcm4gdW5kIHp1IHZlcmJlc3Nlcm4gaXN0IG5pY2h0IGRhc3NlbGJlLiIKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGdlcmFkZSBpbSBIb2NoemVpdHNsb2cgZ2VmdW5kZW4uLi4gKEx1ZywgIDIuIE1hciAxOTk4LCAwMzowNDoyMyk6Cn4jISBybj1EYXJrd2luZyBydD04ODg3NTkxNTEgcmc9c2NobWFycm4KfiMhIHRpZD04ODg3NTkxNTEKClJhZXVzcGVyLAoKWndlcmdmcm9lc2NoZS4KCkZpZEtHCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHJvY2tlbmVzIFByb3BlcnR5PyAoSGlnaGxhbmRlciwgIDIuIE1hciAxOTk4LCAxMzoyNDozMik6CldhcyBwYXNzaWVydCwgd2VubiBtYW4gYmVpIFNldFByb3AgbWl0IGRlciBsaW5rZW4gSGFuZCB1bSBlaW5zIG5hY2gKcmVjaHRzIHZlcnJ1dHNjaHQgaXN0PwpHYW56IGVpbmZhY2ggLSBtYW4gYmVrb21tdCBlaW4gRHJ5UHJvcC4KICBIclQgKHdhcyB6dW0gVGV1ZmVsIGlzdCBlaW4gdHJvY2tlbmVzIHByb3BlcnR5PykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUcm9ja2VuZXMgUHJvcGVydHk/IChEaG9qYWt0LCAgMi4gTWFyIDE5OTgsIDEzOjI3OjE5KToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9ODg4ODQxNDcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg4ODQxNDcyCkFsc28gQmVpIG1pciB3aXJkIGRhcyBkYW5uIGVpbiBEcnpQcm9wIChnZWJydXR6ZWx0PyEpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUcm9ja2VuZXMgUHJvcGVydHk/IChIaWdobGFuZGVyLCAgMi4gTWFyIDE5OTgsIDEzOjI5OjEzKToKfiMhIHJuPURob2pha3QgcnQ9ODg4ODQxNjM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg4ODQxNDcyCkljaCBzaXR6ZSBqYSBhdWNoIGFuIGVpbmVtIFNVTiBwcm9ncmFtbWVyJ3Mga2V5Ym9hcmQgLSBxd2VydHkgaGFsdC4KICAgSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaG5lIGdyb3NzZSBXb3J0ZSAoTmViLCAgMi4gTWFyIDE5OTgsIDE0OjEyOjAwKToKS2l1IHRlaWx0IERpciBtaXQ6IG1vbSA6KSBraWxsZSBnZXJhZGUgY2hhY2h0ZXAKLi4uLi4uLi4uLi4uLi4uLgpbZWluaWdlIFNla3VuZGVuIHZlcmdlaGVuXQouLi4uLi4uLi4uLi4uLi4uCkVpbiBGcm9zY2ggdGVpbHQgRGlyIG1pdDogc2NoZWlzcyBjYWhjaHRlcAoKTmViLCBzY2htdW56ZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFJlcGx5IGF1ZiBGcmV1bmRzIEFydGlrZWwgKEFuYXRvbCwgIDIuIE1hciAxOTk4LCAxNjoxNjowMSk6Cn4jISBybj1UcmFuY2VmZWFyIHJ0PTg4ODg1MTMyMCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg4ODYxMjc3NApCbGEgYmxhIDopLiBJY2ggZ2xhdWJlLCBSb2NodXMgZnVlaHJ0ZSBkaWVzZSBBcnQgdm9uIE1vbnN0ZXIgCnNjaG9uIGxhbmdlIHZvciBQYXJhY2Vsc3VzIGVpbi4uLgoKQW5hdG9sLCBCZXNzZXJ3aXNzZXIgLikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU2NyaXB0ZGlza3Vzc2lvbiAoQW5hdG9sLCAgMi4gTWFyIDE5OTgsIDIyOjQxOjEyKToKfiMhIHJuPVlhcmVuIHJ0PTg4ODg3NDY1MSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9ODg4Njg4MDA5CkljaCBzY2hhZXR6ZSwgZnVlciBlaW5lIG5pY2h0IGdlcmluZ2UgQW56YWhsIE1hZ2llciB3dWVyZGUgYXVjaCBlaW5lCmVyd2VpdGVydGUgRWxpemEgcmVpY2hlbiwgZGEgYnJhdWNoc3QgRHUgZGllIEtJIG5vY2ggZ2FyIG5pY2h0IGF1c3BhY2tlbi4KRGEgc2ljaCBkaWUgTWFnaWVyIG1pdCBEaXIgbmljaHQgdWViZXIgSm9mIHVuZCBkYXMgTW9yZ2VuZ3JhdWVuIHVudGVyLQpoYWx0ZW4gd29sbGVuLCBzb25kZXJuIHVlYmVyIGRhcywgd2FzIER1IGRhIHR1c3QgKHNjcmlwdGVuIDspKSwgaXN0IGRhcwpzb2dhciBkdXJjaGF1cyBtb2VnbGljaCA6KS4KCkFuYXRvbCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBTY3JpcHRkaXNrdXNzaW9uIChTaWx2YW5hLCAgMy4gTWFyIDE5OTgsIDAwOjMwOjA5KToKfiMhIHJuPUFuYXRvbCBydD04ODg4NzQ4NzIgcmc9c2NobWFycm4KfiMhIHRpZD04ODg2ODgwMDkKQWxzbyBkYXMgU2tyaXB0IHdpbGwgaWNoIHNlaGVuLiBURi1Qcm9maXMgdm9yLiA6KQoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU2NyaXB0ZGlza3Vzc2lvbiAoR3JpbW1ib3JuLCAgMy4gTWFyIDE5OTgsIDE0OjIzOjIzKToKfiMhIG9uPVJvbmRhIG90PTg4ODg3ODA4MCBvZz1kaXNrdXNzaW9uCn4jISBybj1ZYXJlbiBydD04ODg4NzQ2NTEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTg4ODY4ODAwOQpHZWxsIFlhcmVuLCBnZW5hdSBkYW1pdCB2ZXJyYWV0c3QgRHUgRGljaCBhYmVyIGRvY2ghIEtlaW4gTWVuc2NoIHVudGVyaGFlbHQKc2ljaCBpbnRlbGxpZ2VudCBtaXQgTWFnaWVybiEKKmF1IHNpbmQgU3BpZWxlciBibG9lZCEqIC0+IHVuZCBhYiBuYWNoIFNjaG1hcnJuISBCaXR0ZSBHcmltbWJvcm4sIHdhbHRlCkRlaW5lcyBBbXRlcywKClJvbmRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTY3JpcHRkaXNrdXNzaW9uIChHcmltbWJvcm4sICAzLiBNYXIgMTk5OCwgMTQ6MjM6MzApOgp+IyEgb249VHVuaXhndXQgb3Q9ODg4OTEzMTMxIG9nPWRpc2t1c3Npb24KfiMhIHJuPUdub21lIHJ0PTg4ODcxMzY2OSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9ODg4Njg4MDA5Clp1c3RpbW11bmcgYXVmIG5haGV6dSBnYW56ZXIgTGluaWUhCgoncyBLYXJhdGUtWndlcmNobGUgLSBlaW56ZWlsaWcuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLQVJUT0ZGRUxFQ0tFTlRBRyEgKEdyaW1tYm9ybiwgIDMuIE1hciAxOTk4LCAxNDoyODoyMCk6Cn4jISBvbj1IaWdobGFuZGVyIG90PTg4ODkyNDEzNiBvZz10cmVmZmVuCn4jISBybj1GcmV1bmQgcnQ9ODg4OTE3MTcxIHJnPXRyZWZmZW4KfiMhIHRpZD04ODg5MTcxNzEKKmdyaW5zKgpFcnN0IGZ1ZXIgNDUwa20gQmVuemluIHZlcmZhaHJlbiwgdW0gZGFubiBmdWVyIGluc2dlc2FtdCB2aWVsbGVpY2h0IDggTWFyawpiaWxsaWdlciB6dSB0YW5rZW4sIHdhcyBtYW4gb2huZSBnYXIgbmljaHQgaGFldHRlIHRhbmtlbiBtdWVzc2VuPyA6PgpCencuIHdhcyBtYW4gZnVlciBkaWUgUnVlY2tmYWhydCBicmF1Y2h0Li4uCiAgICBIclQgIChPSywgR3JpbW0sIGFiIGRhbWl0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRyb2NrZW5lcyBQcm9wZXJ0eT8gKFFpdGVzcywgIDMuIE1hciAxOTk4LCAxNjozMDozNyk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTg4ODg0MTQ3MiByZz1zY2htYXJybgp+IyEgdGlkPTg4ODg0MTQ3MgphbHNvIGljaCBiZWtvbW1lIGRhIGVpbgpEcnpQcm9wCgpRSSoqIGZyYWd0IHNpY2gsIHdhcyBmdWVyIG5lIGtvbWljaGUgVGFzdGF0dXIgSHJUIGhhdC4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBQcm9zdGl0dXRpb24gKEdyaW1tYm9ybiwgIDMuIE1hciAxOTk4LCAxNzowNTowOCk6Cn4jISBvbj1HbG9pbnNvbiBvdD04ODg5Mzg1NDUgb2c9ZW50d2lja2x1bmcKfiMhIHJuPURhbWllbiBydD04ODg5MzY3Mjcgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD04ODg0MDI5NzgKS29lbm50ZXQgSWhyIEV1cmVuIGphIHNvIHRvbGxlbiBUaHJlYWQgbWFsIHVudGVyIE11ZWxsIHZlcnNjaGllYmVuPwpJY2ggaGFiIHNvIGRlbiBFaW5kcnVjaywgZGFzIGVpbmlnZSB2b24gRXVjaCBub2NoIGVpbmUgcGFhciBKYWVocmNoZW4KYnJhdWNoZW4gd2VyZGVuLCB1bSBtaXQgYW5kZXJlbiBhdXN6dWtvbW1lbi4gQWJlciBkYXMgZ2Vob2VydCBoaWVyCm5pY2h0IHJlaW4gdW5kIGljaCB3aWxsIG1laW4gaWdub3JpZXJlICoubmV3cyBuaWNodCB1ZWJlcnN0cmFwYXppZXJlbi4KCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogU2NyaXB0ZGlza3Vzc2lvbiAoUm9jaHVzLCAgMy4gTWFyIDE5OTgsIDE4OjIyOjA2KToKfiMhIHJuPVNpbHZhbmEgcnQ9ODg4ODgxNDA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg4Njg4MDA5CkFsc28sIHdlbm4gZWluIE5QQyB3aWUgQW5keSBkZW4gVHVyaW5nLVRlc3QgYmVzdGVodCwKZGFubiBpc3QgZGFzIG1pdCBlaW5lbSBTa3JpcHQgc2ljaGVyIGF1Y2ggenUgc2NoYWZmZW4gOi0pCgogIFJvY2h1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdmllbGxlaWNodCBoYXQgcmluZ29yIGRvY2ggcmVjaHQuLi4gOikgKEdub21lLCAgNC4gTWFyIDE5OTgsIDEyOjAyOjUxKToKRHUgdGVpbHN0IGRlbSBLcmVpcyBtaXQ6IHNlY2hzIHNjaGx1ZXNzZWwgaGFiIGljaCBzY2hvbi4uLgpKZW1hbmQgYmVzY2h3b2VydCBEZWluIEJpbGQgaGVyYXVmLgpUdWZmaSBkZW5rdDogSGFzdCBpaG4gbmF0dWVybGljaCBnZXBsYWV0dGV0LiA6KQpEdSB0ZWlsc3QgZGVtIEtyZWlzIG1pdDoga2xhciwgbnUgd2FydCBpY2ggaGllciBhdWYgcmVzZXQuLi4gOikKKC4uLikKRHUgdGVpbHN0IGRlbSBLcmVpcyBtaXQ6IC4gbyAwIChjbG9uZSAvZC9pbnNlbG4vdHJveS9qYXJ2ZW4vZ29sZW0uYykKPiBEZXIgR29sZW0gbGVpZXJ0IGJsZWNoZXJuOiBJY2ggYmluIGRlciBIdWV0ZXIgZGllc2VyIFBmb3J0ZS4gV2VubiBEdSB3aWVkZXIKRGVyIEdvbGVtIGxlaWVydCBibGVjaGVybjogaGluYXVzd2lsbHN0LCBtdXNzdCBEdSBtaXIgZGFzIFNpZWdlbCBicmluZ2VuLiBPaG5lCkRlciBHb2xlbSBsZWllcnQgYmxlY2hlcm46IGRhcyBTaWVnZWwgbGFzc2UgaWNoIERpY2ggbmljaHQgd2llZGVyIGhpbmF1cy4KRWluIHN0YWVobGVybmVyIEdvbGVtIGtvbW10IGFuLgpEdSB0ZWlsc3QgZGVtIEtyZWlzIG1pdDogKmxhY2gqCgp2aWVsbGVpY2h0IHNvbGx0ZSBpY2ggYmVpIERFTSBnbGF1YmVuIHp1IGRlbiBrbGVyaWtlcm4gd2VjaHNlbG4uLi4gOy0pCgpnbk9tZSwgaW1tZXIgbm9jaCB2ZXJ3aXJydC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGEgaGF0IGVyIHJlY2h0IChOZWIsICA0LiBNYXIgMTk5OCwgMTQ6NDU6MjcpOgpLbnVydCB0ZWlsdCBEaXIgbWl0OiBuYWphIGRlbiBwdXJwdXJkcmFjaGVuIGtpbGxlIGljaCBlaWdlbnRsaWNoIGxvY2tlciwgYWJlcgpLbnVydCB0ZWlsdCBEaXIgbWl0OiBuaWNodCB3ZW5uIGljaCBpbiBkZW0gcmF1bSBsdXN0aWcgdm9yIGRpZSB3YW5kIGxhdWZlIHVuZApLbnVydCB0ZWlsdCBEaXIgbWl0OiBrZWluZSBydWVzdHVuZyBhbmhhYmUgWzE0OjQxXQouLi4uCjUgU2VrdW5kZW4gdmVyZ2VoZW4KLi4uLgpbVG9kOkxhcnNdIEVpbiBQdXJwdXJkcmFjaGUgaGF0IGdlcmFkZSBLbnVydCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBQdXJwdXJkcmFjaGVdIFVuZCB3aWVkZXIgZWluIFB1bmt0IGZ1ZXIgZGllIFBhcmFsbGVsd2VsdC4uLgoKTmViIHNjaGxhZWd0IEtudXJ0IHZvciA6IE51biwgZGFzIG5hZWNoc3RlIG1hbCB2aWVsbGVpY2h0IGRhbm4gd2llZGVyIG1pdCBtZWhyClNhY2hlbiB1bmQgQXVzcnVlc3R1bmcgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbSBNb3JnZW5HcmF1ZW4gKFRyb3ksICA0LiBNYXIgMTk5OCwgMTg6NTY6MzApOgpbRGVidWc6RWJlbmVdIEZlaGxlcjogIkVzIGlzdCBlaW4gc2Nod2Vyd2llZ2VuZGVyIEF1c25haG1lZmVobGVyIGJlaW0gQ2xvbmVuCltEZWJ1ZzpFYmVuZV0gZGVyIFBpenphIGEgbGEgQmlsbCBHYXRlcyBhdWZnZXRyZXRlIiwgT2JqZWt0OgpbRGVidWc6RWJlbmVdIGQvZWJlbmUvcm9vbS9Qb3J0VmFpbi9waXp6YSwgUHJvZ3JhbW06CltEZWJ1ZzpFYmVuZV0gIi9kL2ViZW5lL3Jvb20vUG9ydFZhaW4vcGl6emEuYyIsIFplaWxlIDQ0MiAoU3VrcmFtKQoKS2FubiBqYSBhdWNoIG5pY2h0IGdlaGVuIDstKQoKVHJveQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllcyBpc3Qga2VpbiBLZXR0ZW5icmllZiEgKEhvYm8sICA1LiBNYXIgMTk5OCwgMTU6NTU6MzIpOgpEZXIgZXJzdGUgS2V0dGVuYnJpZWYsIGJ1ZWJlciBkZW4gaWNoIG1pY2ggbmljaHQgZ2VhZXJnZXJ0IGhhYmU6CgoKPiBNaXQgTGllYmUgdW5kIFNjaHdlaW5lYnJhdGVuIGlzdCBhbGxlcyBtb2VnbGljaCEKPgo+IERpZXNlciBCcmllZiB3dXJkZSB6dSBEaXIgZ2VzY2hpY2t0LCB1bSBEaXIgR2x1ZWNrIHVuZCBTY2h3ZWluZWJyYXRlbgo+IHp1IGJyaW5nZW4uRGFzIE9yaWdpbmFsIGJlZmluZGV0IHNpY2ggaW0gb2VmZmVudGxpY2hlbiBLbG8gaW4gVHJvaWEuCj4KPiBEaWVzZXIgQnJpZWYgaXN0IG5ldW5tYWwgcnVuZCB1bSBMZWNoaGF1c2VuIGdlZ2FuZ2VuLgo+Cj4gSmV0enQgaXN0IGRhcyBHbHVlY2sgenUgRGlyIGdla29tbWVuLiBEdSB3aXJzdCBpbm5lcmhhbGIgdm9uIHZpZXIKPiBUYWdlbiwgbmFjaGRlbSBEdSBkaWVzZW4gQnJpZWYgZXJoYWx0ZW4gaGFzdCwgZGVtIEdsdWVjayB1bmQgZWluZW0KPiBTY2h3ZWluZWJyYXRlbiBiZWdlZ25lbi4KPgo+IEFsbGVzIHdhcyBEdSB0dW4gbXVzc3QgaXN0LCBpaG4gd2VpdGVyenVzZW5kZW4uIERpZXMgaXN0IGtlaW4gV2l0ei4KPiBXaXJrbGljaC4KPgo+IER1IHdpcnN0IGRhcyBHbHVlY2sgcGVyIFBvc3QgZW1wZmFuZ2VuLCBkZXIgU2Nod2VpbmVicmF0ZW4ga29tbXQKPiBtaXQgVVBTLgo+Cj4gU2VuZGUgMTAgS29waWVuIGRlbiBNZW5zY2hlbiwgdm9uIGRlbmVuIER1IGRlbmtzdCwgZGFzcyBzaWUgR2x1ZWNrIHVuZAo+IG5hdHVlcmxpY2ggZXR3YXMgenVtIEVzc2VuIGdlYnJhdWNoZW4ga29lbm5lbi4gU2VuZGUga2VpbiBHZWxkLCBkZW5uCj4gZGFzIFNjaGlja3NhbCBrZW5udCBrZWluZW4gUHJlaXMuCj4KPiBCZWhhbHRlIGRlbiBCcmllZiBuaWNodCBpbiBEZWluZW0gQmVzaXR6LiBEdSBtdXNzdCBpaG4gaW5uZXJoYWxiCj4gdm9uIDQgTWFobHplaXRlbiwgbmFjaGRlbSBEdSBpaG4gZXJoYWx0ZW4gaGFzdCwgd2VpdGVyc2VuZGVuLgo+IFZlcnNlbmRlIDEwIEtvcGllbiwgbGVnIERpY2ggNCBUYWdlIHNjaGxhZmVuLCBzdGVoIGF1ZiB1bmQgc2llaCwKPiB3YXMgZ2VzY2hlaGVuIGlzdC4KPgo+IERpZSBLZXR0ZSBrb21tdCBhdXMgTWFsbG9yY2EgdW5kIHd1cmRlIHZvbiBWZXJvbmEgRmVsZGJ1c2NoLCBlaW5lcgo+IE1pc3Npb25hcmluIGF1cyBTdWVkYWZyaWthIGdlc2NocmllYmVuLgo+Cj4gV2VpbCBkZXIgU2Nod2VpbmVicmF0ZW52ZXJicmF1Y2ggYW5nZWt1cmJlbHQgd2VyZGVuIG11c3MsIG11c3N0IER1IGlobgo+IDEwIG1hbCBrb3BpZXJlbiB1bmQgYW4gRnJldW5kZSwgQmVrYW5udGUgdW5kIGFuZGVyZSBIdW5ncmlnZQo+IHZlcnNlbmRlbi4KPgo+IEluIGVpbiBwYWFyIFRhZ2VuIHdpcnN0IER1IGVpbmUgVWViZXJyYXNjaHVuZyBlcmxlYmVuLiBXaXJrbGljaCwKPiBhdWNoIHdlbm4gRHUgbmljaHQgYWJlcmdsYWV1YmlzY2ggYmlzdCwgb2RlciBWZWdldGFyaWVyLgo+Cj4gRWluIHBhYXIgQmVpc3BpZWxlOgo+Cj4gQ2FybG9zIERhZGlpLCBlaW4gQmVhbXRlciwgZXJoaWVsdCBkZW4gQnJpZWYgMTkzNyB1bmQgdmVyZ2FzcywgaWhuCj4gaW5uZXJoYWxiIHZvbiA5NiBTdHVuZGVuIHdlaXRlcnp1c2VuZGVuLiBFciB2ZXJsb3Igc2VpbmVuCj4gQXJiZWl0c3BsYXR6LiBBbHMgZXIgZGVuIEJyaWVmIHdpZWRlcmZhbmQsIGtvcGllcnRlIGVyIGlobiBub2NoIHVuZAo+IHZlcnNhbmR0ZSBkaWUgS29waWVuLiBFaW4gcGFhciBUYWdlIHNwYWV0ZXIgYmVrYW0gZXIgZWluZSBiZXNzZXJlCj4gU3RlbGxlLgo+Cj4gSmVzdXMsIGVpbiBUaXNjaGxlciBhdXMgTmF6YXJldGgsIGVyaGllbHQgZGVuIEJyaWVmIGltIEphaHJlIDMzLAo+IGxpZXNzIHNpY2ggenUgdmllbCBaZWl0IGJlaW0gV2VpdGVyc2VuZGVuIHVuZCB3dXJkZSBwcm9tcHQgZ2VrcmV1emlndC4KPiBEYXMgYWVyZ2VydGUgaWhuLCBlciBmZXJ0aWd0ZSBzY2huZWxsIGVpbiBwYWFyIEtvcGllbiBhbiwgdmVyc2NoaWNrdGUKPiBzaWUgYW4gMTAgSnVlbmdlciB1bmQgZXJzdGFuZCB2b24gZGVuIFRvdGVuIGF1Zi4KPgo+IE1pY2hhZWwgSmFja3NvbiBlcmhpZWx0IGVpbmUgbmV1ZSBOYXNlIHVuZCBlaW5lbiBLaW5kZXJnYXJ0ZW4uCj4KPiBTYWRkYW0gSHVzc2VpbiwgZWluIFZvcmFyYmVpdGVyIGF1cyBCYWdkYWQsIGVyaGllbHQgZGVuIEJyaWVmIDE5OTAgdW5kCj4gdmVybG9yIGlobiBpbiBkZXIgV3Vlc3RlLiBad2VpIFN0dW5kZW4gc3BhZXRlciB3YXIgc2VpbiBIYXVzIHZvbGxlcgo+IFVOLUluc3Bla3RldXJlLkVyIGZhbmQgaWhuIHdpZWRlciwgc2NoaWNrdGUgaWhuIGFuIDEwIGJlZnJldW5kZXRlCj4gRGlrdGF0b3JlbiB1bmQgZXJoaWVsdCBrdXJ6IGRhcmF1ZiBlaW5lIG5hZ2VsbmV1ZSBHaWZ0Z2FzZmFicmlrLgo+IFNlaXRoZXIgc2NobWVja3QgaWhtIGF1Y2ggU2Nod2VpbmVicmF0ZW4uCj4KPiBWZXJnaXNzIG5pY2h0OiBTZW5kZSBrZWluIEdlbGQsIGtlaW4gRmxlaXNjaCB1bmQga2VpbmVuIEZpc2NoLgo+Cj4gSWdub3JpZXJlIGRlbiBCcmllZiBqZWRvY2ggbmljaHQhIE5laW4hIEVzIGlzdCBldHdhcyBiZXNvbmRlcmVzLAo+IGRlbiBCcmllZiB6dSBlcmhhbHRlbi4gRGVyIEJyaWVmIHd1cmRlIHZvbiBqZW1hbmRlbSBnZXNjaGlja3QsIGRlcgo+IERpY2ggR2x1ZWNrIHd1ZW5zY2h0IHVuZCBrZWluZW4gRGF0aXYga2Fubi4KPgo+IFAuIFMuOiBEaWVzZXIgQnJpZWYgaXN0IGtlaW4gR2VsZGtldHRlbmJyaWVmLiBFciBpc3QgZWluCj4gU2Nod2VpbmVicmF0ZW5rZXR0ZW5icmllZi4gRXMgZ2VodCB1bSBkaWUgV2VpdGVyZ2FiZSB2b24gdG9sbGVuCj4gR2VmdWVobGVuLCB3b21pdCBlaW4gR2x1ZWNrc2VybGVibmlzIHVuZCBlaW4gdm9sbGVyIEJhdWNoIHZlcmJ1bmRlbgo+IGlzdC4gRGllIEJ1ZW5kZWx1bmcgdmVudHJhbGVyIEtyYWZ0IGhhdCBFZmZla3QuIERpZXNlcyBHbHVlY2sga2FubiBhdWYKPiBzZWhyIHZpZWxlbiB2ZXJzY2hpZWRlbmVuIEViZW5lbiBpbiBEZWluIExlYmVuIHRyZXRlbi4gTmltbSBlcyBzbyBhbiwKPiB3aWUgZXMgYXVjaCBpbW1lciBrb21tdC4gR2VsZCBpc3QgbnVyIGVpbmUgZGVyIEViZW5lbiwgYXVmIGRlbmVuIGVzCj4gZWludHJldGVuIGthbm4uIFdpY2h0aWcgaXN0IGF1Y2ggZGFubiwgZXMgcG9zaXRpdiB1bXp1c2V0emVuLgo+Cj4gSGllcm1pdCBmdWVyIGltbWVyIEdsdWVjayEgIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZXMgaXN0IGtlaW4gS2V0dGVuYnJpZWYhIChLZXksICA1LiBNYXIgMTk5OCwgMTY6MTE6MzkpOgp+IyEgcm49SG9ibyBydD04ODkxMDk3MzIgcmc9c2NobWFycm4KfiMhIHRpZD04ODkxMDk3MzIKSGV5IGNvb2wgOikKU2NoaWNrc3RlIGlobiBtaXIgYml0dGU/IFNjaHdlaW5lYnJhdGVuIHdhZXIgZG9jaCB3YXMgZmVpbmVzIDspCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGllcyBpc3Qga2VpbiBLZXR0ZW5icmllZiEgKE1haGF0bWEsICA1LiBNYXIgMTk5OCwgMTY6MTI6NDEpOgp+IyEgcm49S2V5IHJ0PTg4OTExMDY5OSByZz1zY2htYXJybgp+IyEgdGlkPTg4OTEwOTczMgpIbW0sIGVpbiBnZWJyYXRlbmVzIGtsZWluZXMgS2luZCB3YWVyIG1pciBsaWViZXIuCk1haGF0bWEsICdIdW5nYSEnIHJ1ZmVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERpZXMgaXN0IGtlaW4gS2V0dGVuYnJpZWYhIChHbG9pbnNvbiwgIDUuIE1hciAxOTk4LCAxNjoxMzoyMik6Cn4jISBybj1NYWhhdG1hIHJ0PTg4OTExMDc2MSByZz1zY2htYXJybgp+IyEgdGlkPTg4OTEwOTczMgpHZWJyYXRlbmVzIEtpbmQgdW5kIEh1ZXBwZXIgYW0gU3BpZXNzLCBobT8gRGFubiBtdXNzdCBEdSBkYWZ1ZXIgYWJlcgpzY2hvbiBtYWwgd2FzIG1hY2hlbiA7LSkKCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllcyBpc3Qga2VpbiBLZXR0ZW5icmllZiEgKE1hcmN1cywgIDUuIE1hciAxOTk4LCAxNjoxNDoxMik6Cn4jISBybj1Ib2JvIHJ0PTg4OTEwOTczMiByZz1zY2htYXJybgp+IyEgdGlkPTg4OTEwOTczMgpEaWVzIGlzdCBrZWluIEtldHRlbmJyaWVmIQoKQml0dGUgc2VuZGUgaWhuIHNvIHNjaG5lbGwgd2llIG1vZWdsaWNoIGFuIDEwIGFuZGVyZW4gTGV1dGUgdW5kIHNhZ2UgaWhuZW4KZGFtaXQgLCBkYXMgZGllcyBrZWluIEtldHRlbmJyaWVmIGlzdCEKCi0tTWFyY3VzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQmVydWZlIChHcmltbWJvcm4sICA1LiBNYXIgMTk5OCwgMTg6MTM6NTkpOgp+IyEgb249Rnl0IG90PTg4OTA4NzAwNSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49R3JpbW1ib3JuIHJ0PTg4ODUwOTU3NSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg4Nzg4ODU4MQoKRGFtaXQgaXN0IFphcmRveiBHb3R0LiBJY2ggYmluIG1pciBzaWNoZXIsIGRhc3MgZGFzIENoYW9zIFphcmRveiBhbHMKVXJzYWNoZSBnZWhhYnQgaGF0LgoKRnl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEJlcnVmZSAoR3JpbW1ib3JuLCAgNS4gTWFyIDE5OTgsIDE4OjE0OjAxKToKfiMhIG9uPUdyaW1tYm9ybiBvdD04ODkxMTgwMzAgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUZ5dCBydD04ODkwODcwMDUgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD04ODc4ODg1ODEKRHUgaGFzdCBkYSBuaWNodHMgdmVyc3RhbmRlbiwgYWJlciBlaWdlbnRsaWNoIG1hY2h0IGRhcyBuaWNodHMuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGV1dCBtYWwgRkxXIHZvbiBob2VjaHN0ZXIgU2VpdGUuIChEaG9qYWt0LCAgNS4gTWFyIDE5OTgsIDIyOjUyOjQ4KToKW1NlaGVyOlJpbmdvcl0gdW5kIGRhcyBibG9lZGUgV3V3IGxhZWhtdCBtaWNoIGdsZWljaCBub2NoIGRhenUuIE5hIGtsYXNzZSA7KQpbU2VoZXI6UmluZ29yXSBkYXMgVmllaCBtYWNodCBzZWl0IGRlbiBSYXNzZW5hZW5kZXJ1bmdlbiBzb3dpZXNvIG1laHIgU3Bhc3MuCltTZWhlcjpSaW5nb3JdIFNvIGFscyB3YXNzZXJlbXBmaW5kbGljaGVyIFp3ZXJnIDspCltTZWhlcjpSaW5nb3IgbXVybWVsdCB3YXMgdm9uIDE0MCUgU2NoYWRlbl0KW1RvZDpMYXJzXSBFaW4gV2Fzc2VydW53ZXNlbiBoYXQgZ2VyYWRlIFJpbmdvciB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhldXQgbWFsIEZMVyB2b24gaG9lY2hzdGVyIFNlaXRlLiAoUmluZ29yLCAgNS4gTWFyIDE5OTgsIDIyOjU5OjIwKToKfiMhIHJuPURob2pha3QgcnQ9ODg5MTM0NzY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg5MTM0NzY4CkRhIG11c3MgaWNoIGdsZWljaCBub2NoIGVpbmVuIG5hY2hsZWdlbi4gRGllc2VzIEV4cGVyaW1lbnQgcHJvYmllciBpY2gKbmFlbWxpY2ggc2Nob24gc2VpdCBFd2lna2VpdGVuLCB1bmQgamV0enQgaGF0cyBnZWtsYXBwdDogaWNoIGhhYiBtaWNoIHBlcgpUb2Rlc3N0b3NzIHNlbGJzdCBnZXRvZXRldCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1zY2huaXBwLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpEdSBzY2h3aW1tc3QgbmFjaCBPc3Rlbi4KSW4gZWluZW0gdW50ZXJpcmRpc2NoZW4gU2VlLgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgpFaW4gV2Fzc2VydW53ZXNlbi4KRGFzIFdhc3NlcnVud2VzZW4gc3ByaXR6dCBEaWNoIG5hc3MuCioqKiogTFA6IDE3NyBNUDogOTIgKC0yKQpNYXRyaXg6IEVpbiBXYXNzZXJ1bndlc2VuIGlzdCBzY2hvbiBzbyBndXQgd2llIGJlaSBMYXJzLiAoMTAlKQoqKioqIExQOiAxNjMgKC0xNCkgTVA6IDkyCiAgRGFzIFdhc3NlcnVud2VzZW4gZ3JlaWZ0IERpY2gga29jaGVuZCBhbi4KICBEYXMgV2Fzc2VydW53ZXNlbiBzY2hsYWVndCBEaWNoIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCioqKiogTFA6IDE0MCAoLTIzKSBNUDogOTIKICBEYXMgV2Fzc2VydW53ZXNlbiBncmVpZnQgRGljaCBrb2NoZW5kIGFuLgogIERhcyBXYXNzZXJ1bndlc2VuIHNjaGxhZWd0IERpY2ggbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KKioqKiBMUDogMTE5ICgtMjEpIE1QOiA5MgogIERhcyBXYXNzZXJ1bndlc2VuIGdyZWlmdCBEaWNoIGtvY2hlbmQgYW4uCiAgRGFzIFdhc3NlcnVud2VzZW4gdHJpZmZ0IERpY2ggc2VociBoYXJ0LgoqKioqIExQOiAxMDUgKC0xNCkgTVA6IDkyCk1hdHJpeDogRWluIFdhc3NlcnVud2VzZW4gaXN0IHNjaG9uIHNvIGd1dCB3aWUgYmVpIExhcnMuICgxMCUpCiAgRGFzIFdhc3NlcnVud2VzZW4gdHJpZmZ0IERpY2ggaGFydC4KKioqKiBMUDogOTUgKC0xMCkgTVA6IDkyCj4gRHUgbWFjaHN0IGVpbmUgZXJmb2xncmVpY2hlIEZpbnRlIGdlZ2VuIGRhcyBXYXNzZXJ1bndlc2VuLgoqKioqIExQOiA5NSBNUDogODQgKC04KQo+IERlciBTY2hpbGRzdG9zcyBnZWdlbiBkYXMgV2Fzc2VydW53ZXNlbiBnaW5nIGRhbmViZW4uCioqKiogTFA6IDk1IE1QOiA3MyAoLTExKQo+IER1IHNldHp0IGVpbmVuIG1vZXJkZXJpc2NoZW4gVG9kZXNzdG9zcyBnZWdlbiBkYXMgV2Fzc2VydW53ZXNlbiBhbi4KRGFzIFdhc3NlcnVud2VzZW4gbGVua3QgRGVpbmVuIEFuZ3JpZmYgYWIuCiAgRHUgcHVsdmVyaXNpZXJzdCBSaW5nb3IuCiAgUmluZ29yIHB1bHZlcmlzaWVydCBEaWNoLgpbVG9kOkxhcnNdIEVpbiBXYXNzZXJ1bndlc2VuIGhhdCBnZXJhZGUgUmluZ29yIHVtZ2VicmFjaHQuCltUb2Q6RWluIFdhc3NlcnVud2VzZW5dIEljaCBiaW4gbmljaHQgc28gaGFybWxvcyB3aWUgZGFzIFdhc3Nlcndlc2VuIEIuCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1zY2huYXBwLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKUmluZ29yLiBLYW5uIGVpbmVuIFB1bmt0IHZvbiBzZWluZXIgVG9Eby1MaXN0ZSBzdHJlaWNoZW4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogICAgKlMqVCpBKlQqSSogICAgKEFuYXRvbCwgIDYuIE1hciAxOTk4LCAwMDo1MzozNyk6Cn4jISBvbj1BbmF0b2wgb3Q9ODg5MTQyMDExIG9nPXRyZWZmZW4KfiMhIHJuPVFpdGVzcyBydD04ODkxMjYzOTUgcmc9dHJlZmZlbgp+IyEgdGlkPTg4OTEyNjM5NQpLb2VubnRlIG1hbiBuaWNodCBlaW4gImlnbm9yaWVyZSBtcGEucmVnZXhwKCJcKlNcKlRcKkFcKlRcKklcKiIsIHRpdGVsIikKZW50d2lja2VsbiwgZGFzIHdhZXJlIGVjaHQgaW50ZXJlc3NhbnQsIGZpbmRlIGljaC4uLiA6KQoKQW5hdG9sCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsYXJlIEFiZ3Jlbnp1bmcgKFhlbnUsICA2LiBNYXIgMTk5OCwgMDI6MTk6MjMpOgpbQmV6dWc6IEFydGlrZWwgaW4gQWxsZ2VtZWluZXMgdm9uIE5peGlob3Ugdm9tICA0LiBNYXIgMTk5OCwgMjA6MzI6MjZdCgptZWluZSBUZXN0cyBoYWJlbiBlcmdlYmVuLCBkYXNzIGRpZSBPYmVyZ3JlbnplIGJlaSA4IG1hbCBSZXR1cm4vU2VrdW5kZSBsaWVndC4KCk1pdCBlaW5lciBldHdhcyB2ZXJmZWluZXJ0ZW4gTWV0aG9kZSAtIDggZ2xlaWNoZSBLZXliaW5kaW5ncyBuYWNoIE1haGF0bWEgYXVmCm5lYmVuZWluYW5kZXJsaWVnZW5kZW4gVGFzdGVuIGtvbW1lIGljaCBhdWYgMTIgYmlzIG1heC4gMTYgVGFzdGVuIHBybyBTZWt1bmRlLgptYXguIDE2IFRhc3RlbiA9IG1heC4gMTYgQWt0aW9uZW4gPSBtYXguIDE2IEJlZmVobGUgCgpGcmV1bmQgaGF0IGRlbW5hY2ggUmVjaHQ6IDMwIEJlZmVobGUgcHJvIFNla3VuZGUgc2luZCBlaW4gU2tyaXB0LgoKTmF0dWVybGljaCBtdXNzIHdlZ2VuIExhZ3MgdWViZXIgZWluZW4gZ2V3aXNzZW4gWmVpdHJhdW0gZ2VtZXNzZW4gd2VyZGVuLgpEYW1pdCBoYWJlbiB3aXIgZWluZSBrbGFyZSBBYmdyZW56dW5nOgpCaXMgMTAwMCBCZWZlaGxlIHBybyBNaW51dGUgPT4gZXJsYXVidApNZWhyIGFscyAxMDAwIEJlZmVobGUvbWluID0+IExvZXNjaHVuZwoKU2VsYnN0dmVyc3RhZW5kbGljaCBtdWVzc2VuIGJlaSBkZXIgWmFlaGx1bmcgYXVmZWluYW5kZXJmb2xnZW5kZSAKQmV3ZWd1bmdzYmVmZWhsZSBpZ25vcmllcnQgd2VyZGVuLiAoV2VnZXNrcmlwdGUgc2luZCBqYSBsZWdhbC4gIDopKQoKWGVudSAKc2NobGFlZ3QgZGVuIEJlcnVmIFJlY2h0c3ZlcmRyZWh0ZXIgdm9yIDotKQoKUC5TLgpXZXIgc2NobmVsbGVyIEtsYXZpZXIgc3BpZWx0IGFscyBpY2ggdW5kIHp1c2FldHpsaWNoIG5vY2ggZWluZW4gTXVkY2xpZW50IApiZW51dHp0LCBzb2xsdGUgc293aWVzbyByYXVzZmxpZWdlbiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGxlZ2FsZXMgc2tyaXB0PyAoR3JpbW1ib3JuLCAgNi4gTWFyIDE5OTgsIDA4OjQxOjIxKToKfiMhIG9uPVd1cnplbCBvdD04ODkxMjE4NDcgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVllbmRpIHJ0PTg4OTA5NzQyOSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg4OTAzOTk0NgphYmVyIHNpY2hlci4gamVkZW5mYWxscyB3ZW5uIGljaCBlaW5lIG1hZ251bSA0NCBtaXRicmluZ2VuIGthbm4uIDopCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGxlZ2FsZXMgc2tyaXB0PyAoR3JpbW1ib3JuLCAgNi4gTWFyIDE5OTgsIDA4OjQxOjIzKToKfiMhIG9uPVllbmRpIG90PTg4OTEyNDE1MyBvZz1hbGxnZW1laW5lcwp+IyEgcm49V3VyemVsIHJ0PTg4OTEyMTg0NyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg4OTAzOTk0NgpVbmQgd2VsY2hlcyBEZWluZXIgZ2Vwcm9nZ3RlbiBNb25zdGVyIGhhdCBzb3dhcz8KCllUWQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGxlZ2FsZXMgc2tyaXB0PyAoR3JpbW1ib3JuLCAgNi4gTWFyIDE5OTgsIDA4OjQxOjI1KToKfiMhIG9uPVd1cnplbCBvdD04ODkxMjQyMzYgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVllbmRpIHJ0PTg4OTEyNDE1MyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg4OTAzOTk0Ngppc3QgbnVyIGVpbiBzY2h3YWNoZXIgZXJzYXR6IGZ1ZXIgZWluIHBoYXNlbmtvb3JkaW5pZXJ0ZXMgcGxhc21hZ2V3ZWhyIDopCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGFyZSBBYmdyZW56dW5nIChHcmltbWJvcm4sICA2LiBNYXIgMTk5OCwgMTM6NDk6MjcpOgp+IyEgcm49WGVudSBydD04ODkxNDcxNjMgcmc9c2NobWFycm4KfiMhIHRpZD04ODkxNDcxNjMKRHUgd2lyc3Qgc3RhdW5lbjogRXMgZ2lidCBlaW4gTXVzaWtzdHVlY2sgdm9uIExpZ2V0aSwgZGFzcyBmdWVyIENlbWJhbG8gaXN0CnVuZCAxMyBBbnNjaGxhZWdlL3MgdmVybGFuZ3QuIERhcyBTdHVlY2sgZW5kZXQgYXVmIGVpbmVyIFRhc3RlLiBELmguIG1pdCBlaW4KYmlzY2hlbiBVZWJ1bmcgc2luZCAxMyBBbnNjaGxhZWdlIGF1ZiBkZXJzZWxiZW4gVGFzdGUgZHVyY2hhdXMgbW9lZ2xpY2guCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhpbGJlcnRzIFR1cm0gKEZyZXVuZCwgIDYuIE1hciAxOTk4LCAxNjoyOTozOSk6Ck1hdGhlbWF0aWNpYW5zIG9mdGVuIHJlc29ydCB0byBzb21ldGhpbmcgY2FsbGVkIEhpbGJlcnQgc3BhY2UsIHdoaWNoIGlzCmRlc2NyaWJlZCBhcyBiZWluZyBuLWRpbWVuc2lvbmFsLiAgTGlrZSBtb2Rlcm4gc2V4LCBhbnkgbnVtYmVyIGNhbgpwbGF5LgogICAgICAgICAgICAgICAgLS0gRHIuIFRob3IgV2FsZCwgaW4gIkJlZXAvVGhlIFF1aW5jdW54IG9mIFRpbWUiLCBieQogICAgICAgICAgICAgICAgICAgSmFtZXMgQmxpc2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXMgRnJldW5kZXMgKEZyZXVuZCwgIDYuIE1hciAxOTk4LCAxNjo0MTozOCk6CldlaXNoZWl0IGJlc3RlaHQgbmljaHQgc28gc2VociBkYXJpbiB6dSB3aXNzZW4sIHdhcyBsZXR6dGVuZGxpY2ggZ2V0YW4gd2VyZGVuCm11c3MsIHNvbmRlcm4genUgd2lzc2VuLCB3YXMgYWxzIG5hZWNoc3RlcyBnZXRhbiB3ZXJkZW4gbXVzcy4KSGVyYmVydCBIb292ZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzbyBzZWhlbiB3ZWdlc3JpcHRzIGF1cyA6LSkgTm9ybWFsdmxhbmQuLi4uLiAoTmFpcm9sZiwgIDYuIE1hciAxOTk4LCAxOTo1MTowNyk6CkR1IGJpc3QgbnVuIGltICJVbHRyYWt1cnoibW9kdXMuCj4gPiA+ICAgRGVyIE9yayBncmVpZnQgRGljaCBtaXQgZWluZW0gc2VociBnZWx1bmdlbmVuIFlva28tbWF3YXNoaS1nZXJpIGFuLgogIERlciBPcmsgc2NobGFlZ3QgRGljaCB6dSBCcmVpLgogICAgICAgIExQOjU0ICgtNjgpICBNUDoxOCAgICogTk9STSBGUjp3IFZTOjIwLgo+IEVpbiBPcmsgbGFlY2hlbHQgdmVyZ251ZWd0LgogIER1IGdyZWlmc3QgZGVuIE9yayBtaXQgZGVtIGhlaWxpZ2VuIEhhbW1lciBhbi4KICBFaW4gT3JrIHdlaHJ0IERlaW5lbiBBbmdyaWZmIG1pdCBlaW5lbSBCYXNzYWktdWtlIGFiLgogIER1IHZlcmZlaGxzdCBkZW4gT3JrLgpFaW4gT3JrIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KPiAgIERlciBTdGFkdG9yayBncmVpZnQgRGljaCBtaXQgc2VpbmVuIGRyZWNraWdlbiBIYWVuZGVuIGFuLgogIERlciBTdGFkdG9yayB0cmlmZnQgRGljaCBoYXJ0LgogICAgICAgIExQOjQ0ICgtMTApICBNUDoxOCAgICogTk9STSBGUjp3IFZTOjIwLgo+IEVpbiBTdGFkdG9yayBpc3QgamV0enQgaGludGVyIERpciBoZXIuCj4gPiA+IER1IHNpZWhzdCBlaW5lbiBGZWhsZXIgaW0gUmF1bS1aZWl0LUdlZnVlZ2UuCiAgRGVyIFN0YWR0b3JrIGdyZWlmdCBEaWNoIG1pdCBkZW0gS3J1bW1zY2h3ZXJ0IGFuLgpEYXMgS3JldXogZmFlbmd0IGFuIHp1IGxldWNodGVuLgogIERlciBTdGFkdG9yayB0cmlmZnQgRGljaC4KICAgICAgICBMUDozOSAoLTUpICBNUDoxOCAgICogTk9STSBGUjp3IFZTOjIwLgo+IEVpbiBTdGFkdG9yayBpc3QgamV0enQgaGludGVyIERpciBoZXIuCj4gRWluZSBTdGFkdHdhY2hlIGtvbW10IGFuZ2VoZXR6dCB1bmQgdmVybGFuZ3QgZWluZSBrbGVpbmUgU3BlbmRlLgpGcmV1bmRsaWNoIHdpZSBEdSBudW4gbWFsIGJpc3QsIGdpYnN0IER1IGlociBuYXR1ZXJsaWNoIGVpbiB3ZW5pZy4KPiA+ID4gPiA+ID4gPiBEdSB2ZXJsaWVyc3QgZnVlciBlaW5lbiBNb21lbnQgZGllIE9yaWVudGllcnVuZy4KCgoKbWFuIGJlYWNodGUgdm9yYWxsZW0gZGVuIEZSWkcgOi0pIApNYW4gc29sbHRlIHdlZ2VzY3JpcHRzIHZlcmJpZXRlbiBzb25zdCBzaWVodCBtYW4gZGllIGphIGZhc3QgZ2FybmljaAo6LSkpKSkpKSkpKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11ZWRlPyAoVGFtZWxpLCAgNi4gTWFyIDE5OTgsIDIwOjMzOjE5KToKR3dlbmRvbGluIHRlaWx0IERpciBtaXQ6IGhhbGxvZWNoZW4sIGthbm5zdCBkdSBtaXIgaGVsZmVuPwpHd2VuZG9saW4gdGVpbHQgRGlyIG1pdDogaWNoIHN1Y2hlIGRlbiBzY2hsYWZzYWFsCiBmaW5kZSBnd2VuZG9saW4KIGZpbmRlIGd3ZW5kb2xpbgpEdSBzY2hhdXN0IHRpZWYgaW4gZGllIEt1Z2VsLCBsYW5nc2FtIGxvZXN0IHNpY2ggZGVyIG1pbGNoaWdlIFJhdWNoIGluCmlociB1bmQgRHUgc2llaHN0IDoKUHNzdCEgRHUgYmVmaW5kZXN0IERpY2ggaW0gU2NobGFmc2FhbCBkZXMgU3RydXZzLiBIaWVyIHBmbGVnZW4gc2ljaCBkaWUgbmljaHQKZGllbnN0aGFiZW5kZW4gVHJ2ZXMgdm9uIGlocmVuIGFuc3RyZW5nZW5kZW4gVGFldGlna2VpdGVuIGF1c3p1cnVoZW4uCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3RlbiB1bmQgc3VlZGVuLgpHd2VuZG9saW4gZGllIFdhZmZlbmxvc2UuCklsbHV6aWRhLgoKCkR1IHRlaWxzdCBHd2VuZG9saW4gbWl0OiBkdSBiaXN0IGRvY2ggZG9ydAoKRXR3YXMgc3BhZXRlcjoKR3dlbmRvbGluIHRlaWx0IERpciBtaXQ6IHdvIGZpbmQgaWNoIGRlbj8KR3dlbmRvbGluIHRlaWx0IERpciBtaXQ6IHdvIGlzdCBkZW5uIG51biBkZXIgc2NobGFmc2FhbD8/Pwp0bSBnd2VuZG9saW4gZHUgd2Fyc3QgZG9jaCBzY2hvbiBkYSEgZGEgc3RlaHQgZWluZSBpbGx1emlkYSBydW0KCkR1IHRlaWxzdCBHd2VuZG9saW4gbWl0OiBkdSB3YXJzdCBkb2NoIHNjaG9uIGRhISBkYSBzdGVodCBlaW5lIGlsbHV6aWRhIHJ1bQpHd2VuZG9saW4gdGVpbHQgRGlyIG1pdDogd28gaXN0IG1laW4gYmV0dD8KCkRhbm4gaGFiIGljaCBhdWZnZWdlYmVuLgoKVGFtZWxpLCBsYWNodCBpbW1lciBub2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmx1ZW1jaGVucGZsdWVja2VuIGlzdCBnZWZhZWhybGljaCAhIChOZWIsICA4LiBNYXIgMTk5OCwgMDA6NTk6MTgpOgpbVG9kOkxhcnNdIEVpbmUgQmx1bWUgaGF0IGdlcmFkZSBTaGFubmFyYSB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgQmx1bWVdIE1pY2ggcGZsdWVja3QgbWFuIG5pY2h0IHNvIGxlaWNodCEKClVuZCBCbHVlbWNoZW5wZmx1ZWNrZW4gaXN0IGRvY2ggZ2VmYWVocmxpY2gsIHNhZ3QgTmViIGphIHNjaG9uIGltbWVyIHVuZApkcnVlY2t0IHNpY2ggZGFydW0gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2xhcmUgQWJncmVuenVuZyAoQW5hdG9sLCAgOC4gTWFyIDE5OTgsIDE2OjMwOjMwKToKfiMhIHJuPUdyaW1tYm9ybiBydD04ODkxODg1Njcgcmc9c2NobWFycm4KfiMhIHRpZD04ODkxNDcxNjMKQWJlciBMaWdldGkgc2NocmVpYnQgbWVpbmVzIFdpc3NlbnMgbmljaHQgdm9yLCBkYXNzIGZ1ZXIgZWJlbiBqZW5lCjEzIEFuc2NobGFlZ2UgamUgU2VrdW5kZSBhdWYgZWluZSBUYXN0ZSBhdWNoIG51ciBlaW4gRmluZ2VyIGdlbnV0enQKd2VyZGVuIGRhcmYuIEljaCBiZXp3ZWlmbGUgYWxsZXJkaW5ncywgZGFzcyBqZW5lIFRlY2huaWsgYXVjaCBhdWYKUEMtVGFzdGF0dXJlbiBkdXJjaGZ1ZWhyYmFyIGlzdC4gSWNoIGhhYidzIG5pY2h0IGdlc2NoYWZmdCwgaWNoIGJpbgphYmVyIGF1Y2ggZ2V3aXNzIG5pY2h0IGRlciBGaW5nZXJmZXJ0aWdrZWl0IGxldHp0ZXIgU2NobHVzcy4KCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJlZWluZHJ1Y2tlbmQgKEFsaW5lLCAgOC4gTWFyIDE5OTgsIDE2OjQ0OjMxKToKCkViZW4gc28gcGFzc2llcnQ6Cj4gc2NoYXUKRHUgYmVmaW5kZXN0IERpY2ggaW4gZWluZW0gZWluZmFjaGVuIFN0YWxsLCBkZXIgbmFjaCBXZXN0ZW4gaGluIGVpbiBrbGVpbmVzClRvciBiZXNpdHp0LiBFciB3ZWlzdCBzY2hvbiBkZXV0bGljaGUgWmVyZmFsbHNlcnNjaGVpbnVuZ2VuIGF1Zi4KVW0gRGljaCBoZXJ1bSBzaWVoc3QgRHUgZGllIGluIGVpbmVtIGJhZXVlcmxpY2hlbiBTdGFsbCBzbyB1ZWJsaWNoZW4gRGluZ2UsCndpZSBWaWVoYm94ZW4sIFN0cm9oYmFsbGVuIHVuZCBGdXR0ZXJ0cm9lZ2UsIGFiZXIgbmljaHRzIHdhcyBEdQptaXRuZWhtZW4gd29sbHRlc3QuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uCkVpbmUgQmFldWVyaW4uCj4gRWluZSBCYWV1ZXJpbiB2ZXJzY2h3aW5kZXQgbWl0IEtuYWxsIHVuZCBTY2h3ZWZlbGR1ZnQuCkVpbmUgQmFldWVyaW4gZXJzY2hlaW50IGluIGVpbmVyIFJhdWNod29sa2UuCgpBbGluZSB3dXNzdGUgc2Nob24gaW1tZXIgZGFzcyBkaWUgTGV1dGUgYXVzIE5lc3F1aWNrCmlyZ2VuZHdpZSBhbmRlcnMgc2luZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEtsYXJlIEFiZ3Jlbnp1bmcgKEdyaW1tYm9ybiwgIDguIE1hciAxOTk4LCAxNzo1MjozNyk6Cn4jISBybj1BbmF0b2wgcnQ9ODg5MzcxMDMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg5MTQ3MTYzCk5laW4sIHNjaHJlaWJ0IGVyIG5pY2h0IHZvci4gV2VyIHNjaHJlaWJ0IHZvciwgZGFzcyBEdSBhdWYgZGVyIFRhc3RhdHVyIGVpbmUKVGFzdGUgbnVyIG1pdCBlaW5lbSBGaW5nZXIgYW5zY2hsYWdlbiBkYXJmc3Q/IE9iIGRpZSBGZWRlcnVuZyBkZXIgVGFzdGF0dXIKZnVlciBhdXNnZWxlZ3QgaXN0IGxhc3NlIGljaCBtYWwgdW5kaXNrdXRpZXJ0Li4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QuIFNjaG5lbGwgdGlwcGVuPyBTY3JpcHRlbj8gV2Fzc2VuZGFzPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS2xhcmUgQWJncmVuenVuZyAoU2lsdmFuYSwgIDguIE1hciAxOTk4LCAyMToyNDoxNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODg5Mzc1OTU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg5MTQ3MTYzCk1pdCB3YXMgbWFuIGRlbiBUYXN0ZW5kcnVjayBudW4gYXVzbG9lc3QgaXN0IGphIGVpZ2VudGxpY2ggZWdhbC4KWnVtaW5kZXN0IG1pdCBSZXR1cm50YXN0ZSB1bmQgU3BhY2VCYXIga29tbSBpY2ggamVkZW5mYWxscyBhdWYgbWVociBhbHMKMTMgQW5zY2hsYWVnZSBwcm8gU2VrdW5kZS4gQWxsZXJkaW5ncyB2ZXJ6aWNodGUgaWNoIGdlcm4gZGFyYXVmLCBkYQpDb21wdXRlci1UYXN0YXR1cmVuIG51biBtYWwgZW1wZmluZGxpY2hlciBzaW5kIGFscyBLbGF2aWVyLVRhc3RhdHVyZW4uCldlbm4gaWNoIGRhcmFuIGRlbmtlLCB3YXMgbWl0IEpveXN0aWNrLUZldWVya25vZXBmZW4gbW9lZ2xpY2ggaXN0LAp3YWdlIGljaCBtaXIgbmljaHQgdm9yenVzdGVsbGVuLi4uCgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEtsYXJlIEFiZ3Jlbnp1bmcgKEdyaW1tYm9ybiwgIDguIE1hciAxOTk4LCAyMjozMzo0MSk6Cn4jISBybj1TaWx2YW5hIHJ0PTg4OTM4ODY1NyByZz1zY2htYXJybgp+IyEgdGlkPTg4OTE0NzE2MwpOb2NoIGJlc3NlcjogenVtaW5kZXN0IHVudGVyIExpbnV4IGthbm4gaWNoIGRpZSBhdXRvcmVwZWF0IHJhdGUgZGVyIFRhc3RlbgpzZWxiZXIgZmVzdGxlZ2VuLiBJY2ggd2Vpc3MgbmljaHQsIHdvIGRpZSBPYmVyZ3JlbnplIGlzdCwgYWJlciBtZWluZSAzMC9zCmtsYXBwZW4gcHJvYmxlbWxvcy4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogS2xhcmUgQWJncmVuenVuZyAoWGVudSwgIDkuIE1hciAxOTk4LCAwNjoxNDowNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODg5MzkyODIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg5MTQ3MTYzClNvIGphIG51biBuaWNodCwgSGVyciBBdGhlaXN0IQogCldpciBoYXR0ZW4gZG9jaCBJTUhPIHNjaG9uIGVpbmVuIEtvbnNlbnMgZGFydWViZXIgCih6dW1pbmRlc3QgaGF0dGUgQUZBSUsgbmllbWFuZCBDYXR3ZWF6bGUgd2llZGVyc3Byb2NoZW4pLCAKZGFzcyBkZXIgTGVnb21vdG9yIG5lYmVuIGRlciBUYXN0YXR1ciBhbHMgU2tyaXB0IGdpbHQuCihFcyBzZWkgZGVubiwgbWFuIHN0ZWxsdCBpaG4gYWIgdW5kIGhhZW1tZXJ0IGRhbWl0IHZvbiBIYW5kIAphdWYgZGVyIFRhc3RhdHVyIGhlcnVtLiA6KQoKVW5kICpkZXIqIFZvcnNjaGxhZyB3YXIgd2VuaWdzdGVucyBub2NoIGtyZWF0aXYuCgoKQXRoZWlzdCwgNSwgc2V0emVuIQoKIApYZW51IAoKUC5TLgpJbnRlcmVzc2FudCB3YWVyZSBlcyBub2NoIHp1IHdpc3NlbiwgYXVmIHdpZXZpZWxlIAooUEMtVGFzdGF0dXItKUFuc2NobGFlZ2UgU2lsdmFuYSBrb21tdCwgd2VubiA4IAoob2RlciBtZWhyKSBiZWxpZWJpZ2UgVGFzdGVuIGJlbnV0enQgd2VyZGVuIGR1ZXJmZW4uCgpEYW1pdCBuaWNodCBpcnJ0dWVtbGljaCB1bnNlcmUgZWluemlnZSBHbGV0c2NoZXJmZWUgCmFscyBTa3JpcHRlciBnZWxvZXNjaHQgd2lyZC4gOykKCgoKUC5QLlMuCkVzIG1hZyBqYSBzZWluLCBkYXNzIExpZ2V0aSBuaWNodHMgZ2VnZW4gZWluZSB2YXJpYWJsZSBUYXN0YXR1cndpZWRlcmhvbHVuZ3MtCnJhdGUgZWluenV3ZW5kZW4gZ2VoYWJ0IGhhZXR0ZS4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFuYXRvbCB1bmQgRWlzbGF1ZiAoQW5hdG9sLCAgOS4gTWFyIDE5OTgsIDE1OjQ5OjU4KToKCkhpZXIgZGFzIHZlcnNwcm9jaGVuZSBMb2cgdm9tIHNhbXN0YWVnbGljaGVuIFNjaGxpdHRzY2h1aGRlYmFrZWwgOikKCkdydWVzc2UsIApBbmF0b2wKCiUgTG9nZ2luZyB0byBmaWxlIHRpbnkubG9nCj4gSQotIEFuYXRvbCBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRWlzbGF1ZmVyZmFocnVuZyAuIDAgUHVua3RlICAgICAgICAgICBFaXNsYXVmYWJlbnRldWVyIC4gICAgMCAoMTA5MykKCkdlc3VuZGhlaXQgLi4uLi4uLiAyMTAgICAgICAgICAgICAgICAgR2lmdCAuLi4uLi4uLi4uLi4uIE1lbnNhIGdlc3Rlcm4KS29uemVudHJhdGlvbiAuLi4uIDEyNiAgICAgICAgICAgICAgICBWb3JzaWNodCAuLi4uLi4uLi4gNTAgClN0dWVyemUgLi4uLi4uLi4uLiBrZWluIE1hbHVzICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCj4gdWhyemVpdApTYW0sICA3LiBNYXIgMTk5OCwgMTQ6MDM6MzIuCj4gc2NoYXUKRHUgc3RlaHN0IGluIGlyZ2VuZGVpbmVyIEVpc2xhdWZoYWxsZSBpbiBkZXIgQm9ubmVyIFVtZ2VidW5nLiBBdWYgZGVtCkVpcyBiZWZpbmRlbiBzaWNoIGVpbmUgTWVuZ2UgTGV1dGUsIGRpZSB6aWVtbGljaGVuIFNwYXNzIGJlaW0gRWlzbGF1ZmVuCnp1IGhhYmVuIHNjaGVpbmVuLiBXZW5uIER1IFNjaGxpdHRzY2h1aGUgYW5oYXN0LCBrb2VubnRlc3QgRHUgZGllIApFaXNmbGFlY2hlIGJldHJldGVuLgo+IHVudCBsZXV0ZQpEdSBzaWVoc3QgbmViZW4gZWluZXIgTWVuZ2UgRGlyIHZvZWxsaWcgdW5iZWthbm50ZXIgUGVyc29uZW4gYXVmIGRlbSBFaXM6ClplcGh5ciAoZ2VtdWV0bGljaCkKVHJ5ZmFuIChzb3V2ZXJhZW4pCkF1c3NlcmRlbSB3YXJ0ZXQgTHVwdXMgYXVmIHNlaW5lIFNjaGxpdHRzY2h1aGUsIGRpZSBlciBnZXJhZGUgc2NobGVpZmVuCmxhZXNzdC4KPiBzY2hhZXR6IGFuYXRvbApBbmF0b2wgaXN0IGV0d2EgZ2xlaWNoIGZlaWdlIHdpZSBEdS4KRXVyZSBSdWVzdHVuZ2VuIHNpbmQgZXR3YSBnbGVpY2ggbWlzZXJhYmVsLgpFdXJlIFNjaGxpdHRzY2h1aGUgc2luZCBldHdhIGdsZWljaCBzY2hsZWNodC4KPiB1bnQgc2NobGl0dHNjaHVoZQpEYXMgc2luZCBoaW1tZWxibGF1ZSwgZ2VsaWVoZW5lIFNjaGxpdHRzY2h1aGUsIGRpZSBEaXIgZXR3YXMgenUgZ3Jvc3MKZXJzY2hlaW5lbi4gRHUgZnVlaGxzdCBEaWNoIGFic29sdXQgbmljaHQgd29obCBpbiBpaG5lbiwgc2llaCB6dSwgZGFzcwpEdSBzaWUgYmFsZCB3aWVkZXIgbG9zIHdpcnN0Lgo+IFplcGh5ciB0ZWlsdCBEaXIgbWl0OiBHdWdndWc/CnRtIHplcGh5ciAqc2V1ZnoqIEhleSwgaWNoIHN0ZWNrJyB6dW0gZXJzdGVuIE1hbCBpbiBTY2hsaXR0c2NodWhlbiwgZ2ViJwptaXIgbWFsIGVpbiBiaXNzY2hlbiBtZWhyIFplaXQsIGphPyA6KQpEdSB0ZWlsc3QgWmVwaHlyIG1pdDogSGV5LCBpY2ggc3RlY2snIHp1bSBlcnN0ZW4gTWFsIGluIFNjaGxpdHRzY2h1aGVuLApEdSB0ZWlsc3QgWmVwaHlyIG1pdDogZ2ViJyBtaXIgbWFsIGVpbiBiaXNzY2hlbiBtZWhyIFplaXQsIGphPyA6KQo+IFplcGh5ciBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgpzZXVmegpEdSBzZXVmenN0Lgo+IHZvcnNpY2h0IDEwOTMKRGVyIFdlcnQgaXN0IG5pY2h0IGVybGF1YnQuCj4gdm9yc2ljaHQgMTQwClZvcnNpY2h0LU1vZHVzICgxNDApCj4gSmVtYW5kIHRlaWx0IERpciBtaXQ6IEZlaWdsaW5nIDopCm1ydWZlIEFjaCBoYWx0J3MgTWF1bCEgOikKT2suCj4gYmV0cmV0ZSBlaXNmbGFlY2hlCkR1IGJldHJpdHRzdCB6b2VnZXJuZCBkaWUgRWlzZmxhZWNoZS4KPiBzY2hhdQpEdSBzdGVoc3QgbnVuIGF1ZiBkZXIgRWlzZmxhZWNoZSwgdW0gRGljaCBoZXJ1bSBoZXJyc2NodCBtdW50ZXJlcyBUcmVpYmVuLApqZWRlciBzY2hlaW50IHZpZWwgU3Bhc3MgenUgaGFiZW4uIFZvbiBpcmdlbmR3b2hlciBkcm9laG50IE11c2lrIHVuZCBzb3JndApmdWVyIHRvbGxlIFN0aW1tdW5nLgpaZXBoeXIgKGdlbXVldGxpY2gpLgpUcnlmYW4gKHNvdXZlcmFlbikuCj4gRHUgZnVlaGxzdCBEaWNoIGJlb2JhY2h0ZXQuCmxhdXNjaGUgbXVzaWsKRGFzIGhvZXJ0IHNpY2ggbmFjaCBUaWMtVGFjLVRvZSB1bmQgImljaCB3YWVyIGdlcm4gc28gYmxvZWQgd2llIER1IiBhbi4KPiBzZXVmeiAvdGllZgpEdSBzZXVmenN0IHRpZWYsIHJ1dHNjaHN0IGRhYmVpIGFldXNzZXJzdCB1bnNpY2hlciBkdXJjaCBkaWUgR2VnZW5kLgo+IER1IGthbm5zdCBEaWNoIG51ciBub2NoIG1pdCBNdWVoZW4gYXVmIGRlbiBCZWluZW4gaGFsdGVuLgpEaWUgQW5nc3QgaXN0IHN0YWVya2VyIGFscyBEdS4uLiBEdSB3aWxsc3QgbnVyIG5vY2ggd2VnIGhpZXIuClBhbmlzY2gga2xhbW1lcnN0IER1IERpY2ggYW4gZGVyIEhvbHpiYW5kZSBkZXIgRWlzYmFobiBmZXN0LgpUcnlmYW4gcmF1c2NodCBhbiB1bmQgYnJlbXN0IGxvY2tlciBvaG5lIFp1aGlsZmVuYWhtZSBkZXNzZW4sIHdvcmFuIER1CkRpY2gga2xhbW1lcnN0LgpzY2hhZXR6IHRyeWZhbgpUcnlmYW4gaXN0IGxhZW5nc3QgbmljaHQgc28gZmVpZ2Ugd2llIER1LgpUcnlmYW5zIFJ1ZXN0dW5nIGlzdCBzY2hsZWNodGVyIGFscyBEZWluZS4KVHJ5ZmFucyBTY2hsaXR0c2NodWhlIHNpbmQgc2VociB2aWVsIGJlc3NlciBhbHMgRGVpbmUuClRyeWZhbiBrYW5uIFdFU0VOVExJQ0ggYmVzc2VyIEVpc2xhdWZlbiBhbHMgRHUuCj4gc2V1ZnoKRHUgc2V1ZnpzdC4KPiBsYXVmIHNjaGxpdHRzY2h1aApEdSBiaXN0IHp1IHZvcnNpY2h0aWcuCj4gdm9yc2ljaHQgMTAwClZvcnNpY2h0LU1vZHVzICgxMDApCj4gJmwKW2xhdWYgc2NobGl0dHNjaHVoXQpICiAgICBVCiAgICAgICAgVQogICAgICAgICAgICBJCiAgICAgICAgICAgICAgICBJCiAgICAgICAgICAgICAgICAgICAgSQogICAgICAgICAgICAgICAgICAgICAgICAuLi4KPiBhcmdsCkR1IGFyZ2xzdCBlaW4gd2VuaWcgdm9yIERpY2ggaGluLgo+IGxhdWYgc2NobGl0dHNjaHVoCkR1IHdhY2tlbHN0IG1pdCBkZW0gSGludGVybi4KRGVpbiBGYWhydmVyc3VjaCBpc3QgbWlzc2dsdWVja3QuCkR1IGxlcm5zdCBhdXMgRGVpbmVtIEZlaGxlcgo+ICYmCltsYXVmIHNjaGxpdHRzY2h1aF0KTmljaHQgc28gaGFzdGlnIQo+ICYmCltsYXVmIHNjaGxpdHRzY2h1aF0KRHUgZ2xlaXRlc3QgZWluaWdlIE1ldGVyIHVlYmVyIGRhcyBFaXMuCj4gJiYKW2xhdWYgc2NobGl0dHNjaHVoXQpOaWNodCBzbyBoYXN0aWchCj4gJiYKW2xhdWYgc2NobGl0dHNjaHVoXQpEdSBnbGVpdGVzdCBlaW5pZ2UgTWV0ZXIgdWViZXIgZGFzIEVpcy4KPiAmJgpbbGF1ZiBzY2hsaXR0c2NodWhdCkR1IGdsZWl0ZXN0IGVpbmlnZSBNZXRlciB1ZWJlciBkYXMgRWlzLgo+IFZPUlNJQ0hUIERBIFZPTiBSRUNIVFMgRElFIEtMRUlORSBNSVQgREVSIEdFTEJFTiBKQUNLRSBEVSBGQUVIUlNUIFNJRQpKQSBHTEVJQ0ggVU0hISEhISEhIQphdXN3ZWljaGVuCkR1IHRvcmtlbHN0IHdpbGQgbWl0IGRlbiBBcm1lbiBydWRlcm5kIHp1ciBTZWl0ZS4KRGFzIGdpbmcgZ2VyYWRlIG5vY2hlaW5tYWwgZ3V0LiBQdWghCj4gYWxpIGFhIGF1c3dlaWNoZW4KTmV1ZXMgQWxpYXM6IGFhID0gYXVzd2VpY2hlbi4KPiBWb24gd2VpdGVtIHNpZWhzdCBEdSBUcnlmYW4gZWxlZ2FudCB1ZWJlciBkYXMgRWlzIGdsZWl0ZW4uCiZsCltsYXVmIHNjaGxpdHRzY2h1aF0KRHUgZ2xlaXRlc3QgZWluaWdlIE1ldGVyIHVlYmVyIGRhcyBFaXMuCj4gCgpbIC4uLiBdCgo+IHVocnplaXQKU2FtLCAgNy4gTWFyIDE5OTgsIDE1OjE0OjQzLgo+IHNjaGF1CkR1IHN0ZWhzdCBudW4gYXVmIGRlciBFaXNmbGFlY2hlLCB1bSBEaWNoIGhlcnVtIGhlcnJzY2h0IG11bnRlcmVzIFRyZWliZW4sCmplZGVyIHNjaGVpbnQgdmllbCBTcGFzcyB6dSBoYWJlbi4gVm9uIGlyZ2VuZHdvaGVyIGRyb2VobnQgTXVzaWsgdW5kIHNvcmd0CmZ1ZXIgdG9sbGUgU3RpbW11bmcuClplcGh5ciAoZ2VtdWV0bGljaCkuCkx1cHVzIChzZWhyIHNvdXZlcmFlbikuClRyeWZhbiAoc291dmVyYWVuKS4KPiBEdSBmdWVobHN0IERpY2ggYmVvYmFjaHRldC4KWmVwaHlyIHJhdXNjaHQgaGVyYW4uClplcGh5ciBsYWVjaGVsdC4Kd2VpbiB6ZXBoeXIKRHUgd2VpbnN0IERpY2ggYmVpIFplcGh5ciBhdXMuCj4gWmVwaHlyIHNhZ3Q6IERlaW4gU2NobGl0dHNjaHVoc2tpbGwgaXN0IGJlaSA2LjA0JS4KWmVwaHlyIHNhZ3Q6IEhleSwgZGFzIGlzdCB3aXJrbGljaCBuaWNodCBzY2hsZWNodCEKRHUgYmlzdCBqZXR6dCBBbmF0b2wgZGVyIE1pdC1kZW4tQXJtZW4tcnVkZXJuZGUgKFN0dWZlIDIpLgoncG9laApEdSBzYWdzdDogcG9laAo+IGxhdWYgc2NobGl0dHNjaHVoCkR1IGdsZWl0ZXN0IGVpbmlnZSBNZXRlciB1ZWJlciBkYXMgRWlzLgo+ICZsCltsYXVmIHNjaGxpdHRzY2h1aF0KRHUgZ2xlaXRlc3QgZWluaWdlIE1ldGVyIHVlYmVyIGRhcyBFaXMuCj4gVk9SU0lDSFQgREEgSVNUIERPQ0ggR0xBVFQgU0NIT04gV0lFREVSIFNPIEVJTiBLSUQgREFTIFZJRUwgQkVTU0VSIEFMUwpEVSBTQ0hMSVRUU0NIVUggTEFFVUZUIEFCRVIgRElSIEdFTkFVIElOIERFTiBXRUcgU0NITEVVREVSVCEhISEhIQphYQpEdSB2ZXJzdWNoc3QsIGRlbSBLaW5kIGF1c3p1d2VpY2hlbiwgc2NoYWZmc3QgZGllcyBhbGxlcmRpbmdzIG51ciBhdWYKS29zdGVuIERlaW5lciBCYWxhbmNlLgo+IER1IGthbm5zdCBEaWNoIG51ciBub2NoIG1pdCBNdWVoZW4gYXVmIGRlbiBCZWluZW4gaGFsdGVuLgpEaWUgQW5nc3QgaXN0IHN0YWVya2VyIGFscyBEdS4uLiBEdSB3aWxsc3QgbnVyIG5vY2ggd2VnIGhpZXIuCkRlaW4gRmx1Y2h0dmVyc3VjaCBpc3QgZ2VzY2hlaXRlcnQuCkR1IGxlZ3N0IHNwb250YW4gRGVpbmVuIFNjaHdlcnB1bmt0IHRpZWZlci4Kc2V1ZnoKRHUgc2V1ZnpzdC4KPiBsZWdlIHNjaHdlcnB1bmt0IGhvZWhlcgpXaWUgYml0dGU/Cj4gdmVybGVnZSBzY2h3ZXJwdW5rdCBuYWNoIG9iZW4KV2llIGJpdHRlPwo+IHN0ZWggYXVmCk11ZWhzYW0gZXJoZWJzdCBEdSBEaWNoIGF1cyBEZWluZXIgc3RhYmlsZW4gUG9zaXRpb24gdW5kIHN0ZWxsc3QgRGljaAp3aWVkZXIgYXVmIERlaW5lIHdhY2tsaWdlbiB1bmQgbWl0IFNjaGxpdHRzY2h1aGVuIHZlcmZsdWNodGVuIEZ1ZXNzZS4KPiB0bSB0cnlmYW4gT25lIGRvd24uIDstKQpEdSB0ZWlsc3QgVHJ5ZmFuIG1pdDogT25lIGRvd24uIDstKQo+IGxhdWYgc2NobGl0dHNjaHVoCkR1IGdsZWl0ZXN0IGVpbmlnZSBNZXRlciB1ZWJlciBkYXMgRWlzLgo+IFRyeWZhbiB0cm9lc3RldCBEaWNoIGF1cyBkZXIgRmVybmUuCi9sb2cgb2ZmCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFuYXRvbCB1bmQgRWlzbGF1ZiAoVGFyaW5hLCAgOS4gTWFyIDE5OTgsIDE2OjE4OjUyKToKfiMhIHJuPUFuYXRvbCBydD04ODk0NTQ5OTggcmc9c2NobWFycm4KfiMhIHRpZD04ODk0NTQ5OTgKSWNoIHdvbGx0IG1pY2ggbnVyIG1hbCBhdXNkcnVlY2tsaWNoIGZ1ZXIgZGVuIEFydGlrZWwgYmVkYW5rZW4uIEVyIGhhdCBtaXIKc2VociB2aWVsIEZyZXVkZSBnZW1hY2h0Li4uICAKCkdydXNzLApUYXJpbmEgKGltbWVyIG5vY2ggYXVmIGFsbGVuIDQgQmFja2VuIGdyaW5zZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVm9sbCBzY2hpem8sIGRlciBTY2hsdWVzc2VsIChHbG9pbnNvbiwgIDkuIE1hciAxOTk4LCAxOToxMDo0Mik6CltBbGxnZW1laW46S2V5IGdhZWhudCBnZWxhbmd3ZWlsdF0KVHVhcmVnIGdlaHQgbmFjaCBTdWVkZW4uClR1YXJlZyBrb21tdCBhbi4KW0FsbGdlbWVpbjpLZXldIFdlY2sgbWljaCBtYWwgd2VyIGF1ZiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbmF0b2wgdW5kIEVpc2xhdWYgKEdub21lLCAgOS4gTWFyIDE5OTgsIDIyOjI3OjQ0KToKfiMhIHJuPUFuYXRvbCBydD04ODk0NTQ5OTggcmc9c2NobWFycm4KfiMhIHRpZD04ODk0NTQ5OTgKKmxhY2gqCgpzZWhyIHNjaG9lbiwgaGFiIG1pY2ggZ2VrcmluZ2VsdC4uLiA6KQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQW5hdG9sIHVuZCBFaXNsYXVmIChKYW5pdHplLCAxMC4gTWFyIDE5OTgsIDA4OjU0OjM2KToKfiMhIHJuPUdub21lIHJ0PTg4OTQ3ODg2NCByZz1zY2htYXJybgp+IyEgdGlkPTg4OTQ1NDk5OApIaWhpLCBkYXMgZXJpbm5lcnQgbWljaCBhbiBtZWluZW4gZXJzdGVuIFZlcnN1Y2ggYXVmIGRlbSBFaXMsIGRhcyB3YXIKYmVpIGRlciBXaW50ZXJwYXJ0eSBpbiBCaWVsZWZlbGQsIG5hamEsIGljaCB3YXIgZnVlciBkZW4gZWluZW4gb2RlciAKYW5kZXJlbiBMYWNoZXIgZ3V0IDotKQoKSmFuaWNlIHdlaXNzIGdlbmF1LCB3aWUgc2ljaCBBbmF0b2wgZ2VmdWVobHQgaGF0CgpQLlMuIGVpZ2VudGxpY2ggaXN0IGphIFNjaGxpdHRzY2h1aGxhdWZlbiBuaWNodCBzbyBzY2h3ZXIsIGFsbGVyZGluZ3MKZGFyZiBtaWNoIGRhYmVpIG5pZW1hbmQgYW5zcHJlY2hlbiwgc29uc3QgdmVybGFnZXIgaWNoIG1laW5lbiBTY2h3ZXItCnB1bmt0IGF1Y2ggZXR3YXMgdGllZmVyLCB3aWUgQW5hdG9sIGVzIHNvIHNjaG9lbiBiZXNjaHJpZWIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktpbmRlcm11bmQgKEthcnRvZmZlbCwgMTAuIE1hciAxOTk4LCAyMzozMDo0Nik6CgpIb2ksIAppY2ggYXJiZWl0ZSBhbHMgRXJ6aWVoZXJpbiBpbiBlaW5lbSBLaW5kZXJob3J0IG1pdCBmYXN0IGF1c3NjaGxpZXNzbGljaAphdXNsYWVuZGlzY2hlbiBLaW5kZXJuLCBkYSBrb21tdCBzcHJhY2hsaWNoIG1hbmNobWFsIGRhcyBlaW5lIG9kZXIgYW5kZXJlLCB3YXMKZGllIEtpbmRlciBhdXNkZnJ1Y2VrbiB3b2xsZW4gbmljaHQgZ2FueiBzbyByYXVzLCB3aWVzIHNvbGwgKGhvZmZlIGljaAp6dW1pbmRlc3QpOgoKRWluZXMgJ21laW5lcicgTWFlZGVscyBrYW0gbGV0enQgYW4gdW5kIHNhZ3RlOiAgCiAgIFVuc2VyZSBMZWhlcnJpbiB3aWxsIHVuZCBqZXR6dCBiZWlicmluZ2VuIHdpZSBtYW4gS2luZGVyIGtyaWVndCwgYWJlciBpY2gKd2lsbCBkYXMgbmljaHQuCgpFdHdhIGVpbmUgV29jaGUgc3BhZXRlciBpZW4gTWFlZGVsIGF1cyBkZW0gc2VsYmVuIEphaHJnYW5nOgogICAgVW5zZXJlIExlaHJlcmluIHdpbGwgbWl0IHVucyBTZXggdWViZW4uCgpLYXJ0b2ZmZWwgLSBmcmFndCBzaWNoIG1hbmNobWFsIHdhcyBkYXMgZnVlciBlaW5lIFNjaHVsZSBpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5vY2ggZWluIHBhYXIgSWRlZW4gKEphc3BlciwgMTAuIE1hciAxOTk4LCAyMzozNDoxMCk6Cn4jISBvbj1OZWIgb3Q9ODg4NTc5MjAyIG9nPWdpbGRlbi5rbGVydXMKfiMhIHJuPVdhcmdvbiBydD04ODg1NzM0MzUgcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTg4ODUxMTU5OApWb3IgOCBXb2NoZW4gaGFldHRlc3QgRHUgZGFzIG5vY2ggcHJvZ2dlbiBrb2VubmVuLCBXYXJnb24gOykKCk5lYgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtpbmRlcm11bmQgKEdsb2luc29uLCAxMS4gTWFyIDE5OTgsIDAwOjQ2OjQ4KToKfiMhIHJuPUthcnRvZmZlbCBydD04ODk1NjkwNDYgcmc9c2NobWFycm4KfiMhIHRpZD04ODk1NjkwNDYKS2luZGVyaGFuZDoKCkRhcyBzY2hlaW50IGRhbm4gYWJlciBkaWUgQXVzbmFobWUuIE1laW5lIE11dHRlciBpc3QgR3J1bmRzY2h1bGxlaHJlcmluCnVuZCBpY2ggaGFiZSBtYWwgZnVlciBzaWUgZWluIHBhYXIgQXVmc2FldHplIGVpbmVyIHZpZXJ0ZW4gS2xhc3NlCnZvcmtvcnJpZ2llcnQuCkRlciBpbmhhbHRsaWNoL3NwcmFjaGxpY2ggYmVzdGUgQXVmc2F0eiBrYW0gdm9uIGVpbmVyIFJ1c3NsYW5kZGV1dHNjaGVuLgpOYWphLCBpaHIgQXVmc2F0eiBoYW5kZWx0ZSB2b24gZGVyIFJ1ZWNra2VociBpbiBpaHIgZWhlbWFsaWdlcyBadWhhdXNlLgoKWndlaSBTZWl0ZW4gZGVyIE1lZGFpbGxlLiAKCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMToga25laXBlbiAoQW5hdG9sLCAxMS4gTWFyIDE5OTgsIDEwOjI2OjE0KToKfiMhIG9uPUFuYXRvbCBvdD04ODk2MDgzNjYgb2c9ZC51bnRlcndlbHQKfiMhIHJuPUdsb2luc29uIHJ0PTg4OTYwMDg0NCByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTg4ODE1Nzg1OApJY2ggYmV6d2VpZmxlLCBkYXNzIHVudGVyIGRpZSBEZWZpbml0aW9uIGRlcyAiUm9jaHVzc2NoZW4gV2Fzc2VyIGRlcyBMZWJlbnMiCippcmdlbmRldHdhcyogYW5kZXJlcyBmYWVsbHQgYWxzIENvY2EgQ29sYS4uLgoKUGVwc2k/IFV1dXV1dXV1dXV1dXVhYWFhYWFhYWFhYWghCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBrbmVpcGVuIChMdWcsIDExLiBNYXIgMTk5OCwgMjI6NTY6MDgpOgp+IyEgcm49QW5hdG9sIHJ0PTg4OTYwODM3NCByZz1zY2htYXJybgp+IyEgdGlkPTg4ODE1Nzg1OApJaGhoLAoKUGVwc2kgaXN0IGRhcyBCbGVuZGVkIGRlciBDb2xhIEZhbWlsaWUuIENsdWIgZXRjLiBpc3QgbmF0dWVybGljaCBCb3VyYm9uIHVuZApSaXZlciBpc3QgUGlzLi4uW1pFTlNVUl0KCldpZWRlciB6dSBBbGsgc2Nod2Vua2VuZApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggYmVpbSByZWJvb3QgKENhdHdlYXpsZSwgMTIuIE1hciAxOTk4LCAxNzozMDowOCk6CkltbWVyIHdpZWRlciBlaW5kcnVja3N2b2xsOgogIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEb24sIDEyLiBNYXIgMTk5OCwgMTc6Mjg6NTEgKDYxIFRlaWxuZWhtZXIpCgpMb2dvbi4uLi4uLi4uLi4uLnMgTG9nb24uLi4uLi4uLi4uLi5zIExvZ29uLi4uLi4uLi4uLi4ucyBMb2dvbi4uLi4uLi4uLi4uLnMKTG9nb24uLi4uLi4uLi4uLi5zIExvZ29uLi4uLi4uLi4uLi4ucyBMb2dvbi4uLi4uLi4uLi4uLnMgTG9nb24uLi4uLi4uLi4uLi5zCkxvZ29uLi4uLi4uLi4uLi4ucyBMb2dvbi4uLi4uLi4uLi4uLnMgTG9nb24uLi4uLi4uLi4uLi5zIExvZ29uLi4uLi4uLi4uLi4ucwpMb2dvbi4uLi4uLi4uLi4uLnMgTG9nb24uLi4uLi4uLi4uLi5zIExvZ29uLi4uLi4uLi4uLi4ucyBMb2dvbi4uLi4uLi4uLi4uLnMKTG9nb24uLi4uLi4uLi4uLi5zIExvZ29uLi4uLi4uLi4uLi4ucyBMb2dvbi4uLi4uLi4uLi4uLnMgTG9nb24uLi4uLi4uLi4uLi5zCkxvZ29uLi4uLi4uLi4uLi4ucyBMb2dvbi4uLi4uLi4uLi4uLnMgTG9nb24uLi4uLi4uLi4uLi5zIExvZ29uLi4uLi4uLi4uLi4ucwpMb2dvbi4uLi4uLi4uLi4uLnMgTG9nb24uLi4uLi4uLi4uLi5zIExvZ29uLi4uLi4uLi4uLi4ucyBMb2dvbi4uLi4uLi4uLi4uLnMKR3JhbGtvci4uLi4uLi4uLi5zIExlaWJuaXouLi4uLi4uLi4ucyBFbGRyaXRjaC4uLi4uLi4uLnMgU3N6cmEuLi4uLi4uLi4uLi5zCkRhcm1vay4uLi4uLi4uLi4ucyBEYXBobmUuLi4uLi4uLi4uLnogQmhhbWlyLi4uLi4uLi4uLi5zIEJlbnNvbm1hbS4uLi4uLi4ucwpDaHR1cnIuLi4uLi4uLi4uLnMgSGVyZGFsLi4uLi4uLi4uLi5zIE5vdmFzdG9ybS4uLi4uLi4ucyBUeWxhay4uLi4uLi4uLi4uLnMKQmFja3RyYWNrZXIuLi4uLi5zIEdsb2luLi4uLi4uLi4uLi4ucyBHYXZyaWVsLi4uLi4uLi4uLlMgTG9sbGkuLi4uLi4uLi4uLi5TCkJpZ3JhdC4uLi4uLi4uLi4uUyBLaW50YXJhLi4uLi4uLi4uLlMgTmViLi4uLi4uLi4uLi4uLi5TIFNoYWRlLi4uLi4uLi4uLi4uUwpGcmVpdGFnLi4uLi4uLi4uLlMgTHVnLi4uLi4uLi4uLi4uLi5TIEFjcmltb24uLi4uLi4uLi4uUyBNaW5kYmxhZGUuLi4uLi4uLlMKTWFycy4uLi4uLi4uLi4uLi5TIEl2by4uLi4uLi4uLi4uLi4uUyBSaW5nb3IuLi4uLi4uLi4uLlMgVG9sZ2FuLi4uLi4uLi4uLi5tClBhdHJ5bi4uLi4uLi4uLi4uUiBDYXR3ZWF6bGUuLi4uLi4uLlcgR3VuZHVyLi4uLi4uLi4uLi5FIFJvY2h1cy4uLi4uLi4uLi4uRQpCb2luZy4uLi4uLi4uLi4uLkcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhVRUxGQUVIISAoTHVnLCAxMi4gTWFyIDE5OTgsIDIzOjI3OjU4KToKCkFyZ2wsIGljaCBsZWJlIGdlZmFlaHJsaWNoOgoKRHUgZ3JpbnN0IFNpbHZhbmEgYXVzIGRlciBGZXJuZSBtaXQgbmFkZWxzcGl0emVuIEVja3phZWhuZW4gYW4uCgpUcmFucy1TaWx2YW5hIGJlaXNzdCB6dWVyc3QgenUuCgpBZWgsIEZyYXVlbiBpbiBkaWUgS2xlcmlrZXJnaWxkZT8hCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRnJldS1ldW5kIGhhdCBFdWNoIGxpZWIhIChFbWJlLCAxMy4gTWFyIDE5OTgsIDE3OjI1OjE4KToKfiMhIG9uPUVtYmUgb3Q9ODg5Nzk2NDAwIG9nPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHJuPU1pZXplIHJ0PTg4OTc5NTI1NyByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9ODg5NzAwNzY0CmF1ZiBkZXIgdG9wbGlzdGUgbWl0IGRlbiBtZWlzc3RlbiBvbmxpbmV0YWdlbiB1bmQgZGVtIG5pZWRyaWdzdGVuIGxldmVsCmRhZiJ1ciBzdGVoIGljaC4KCmdydXNzLCBlTUJlZS4gKGhyLiBncmltbWJvcm4gaWhyIGF1ZnRyaXR0IGJpdHRlOiAtPiBzY2htYXJybiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBGcmV1LWV1bmQgaGF0IEV1Y2ggbGllYiEgKEhhZHJhLCAxNC4gTWFyIDE5OTgsIDAwOjI0OjQwKToKfiMhIHJuPU1pZXplIHJ0PTg4OTgxODU5MCByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9ODg5NzAwNzY0CnZpZWxsZWljaHQgZ2lidCBlcyBqYSBpcmdlbmR3YW5uIG1hbCBzcGV6aWVsbCBmdXplciBtaWV6ZSBlaW5lIHRvcGxpc3RlIGRlcgpzcGllbGVyIGRpZSBpbiBkZW4gd2VuaWdzdGVucyB0b3BsaXN0ZW4gc3RlaGVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEZyZXUtZXVuZCBoYXQgRXVjaCBsaWViISAoVGVkZHksIDE0LiBNYXIgMTk5OCwgMDU6MTI6MTgpOgp+IyEgcm49SGFkcmEgcnQ9ODg5ODMxNDgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg5NzAwNzY0ClZlcnN1Y2ggbWFsIGRpZSBJZGlvdGVudG9wbGlzdGUsIGRhIG11ZXNzdGVzdCBhdWNoIGR1IG1hbCBkcmF1ZmtvbW1lbi4KClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphZHJlc3NlIGF1ZiBwYWtldCAoR3JpbW1ib3JuLCAxNS4gTWFyIDE5OTgsIDAxOjExOjMyKToKfiMhIG9uPU9nYXIgb3Q9ODg5OTA2MDIzIG9nPWFsbGdlbWVpbmVzCk9nYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhZHJlc3NlIGF1ZiBwYWtldCAoTHVnLCAxNS4gTWFyIDE5OTgsIDAxOjI0OjA0KToKfiMhIHJuPUdyaW1tYm9ybiBydD04ODk5MjA2OTIgcmc9c2NobWFycm4KfiMhIHRpZD04ODk5MjA2OTIKQWxzbyBSZXNwZWt0LAoKR3JpbW1pIHdhciBrYXVtIGRyaW4gdW5kIHZvZWxsaWcgYnJlaXQ6Cgp0cm90emRlbSBoYXQgZXIgbWFubmhhZnQgZGllc2VuIEFydGlrZWwgc29mb3J0IHZlcmxlZ3QhCgpSRVNQRUtUIQpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZsdWNodCBpbnMgUmVpY2ggZGVyIE5ldHp0b3RlbiAoTmViLCAxNS4gTWFyIDE5OTgsIDAzOjA5OjM2KToKU2hhcmlhIHJ1ZnQ6IEZMQUFBQUFBQUFBQUFST09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT08KRmxhcm8gaGF0IGdlcmFkZSBkaWUgVmVyYmluZHVuZyB6dSBNb3JnZW5HcmF1ZW4gZ2VrYXBwdC4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEZsYXJvLgpEdSBncmluc3QuCiBTaGFyaWEgc2FndDogZHJlY2tza2VybApTaGFyaWEgdHJpdHQgRmxhcm8uCkZsYXJvIGdlaHQgaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4uCgpJY2ggdmVyc3RlaGUgaWhuIDspCk5lYi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGbHVjaHQgaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4gKE5haXJvbGYsIDE1LiBNYXIgMTk5OCwgMDM6MTA6MzIpOgp+IyEgcm49TmViIHJ0PTg4OTkyNzc3NiByZz1zY2htYXJybgp+IyEgdGlkPTg4OTkyNzc3Ngp0amEgdW5kIFNIYXJpYSBoYXQgamV0enQgbmVuIGdlYnJvY2hlbmVzIEhlcnogLi4uLgoKTmFpcm9sZiBvaG5lIE1pdGxlaWQgOl8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbW1tbWggKEdyaW1tYm9ybiwgMTUuIE1hciAxOTk4LCAyMTo0MzowNCk6Cn4jISBvbj1MdWcgb3Q9ODg5OTIzODQ1IG9nPWFsbGdlbWVpbmVzCkFsc28sCgpLZXkgc2FndDogV2VubiBEVSBqZXR6dCB3YXMgaW4gZGllIE1QQSBzY2hyZWlic3QsIGRhbm4gYnJpbmcgaWNoIERpY2ggdW0uCldhciBuZXR0IGhpZXIuCgotPiBHcmltbWJvcm4gOykKCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSXN0IGRlciBSdWYgZXJzdCBydWluaWVydC4uLiAoR3JpbW1ib3JuLCAxNi4gTWFyIDE5OTgsIDAwOjA0OjU4KToKSW50ZXJlc3NhbnQsIHdpZSBzY2huZWxsIHVuZCB1bmJlcmVjaHRpZ3QgbWFuIHp1IGVpbmVtIFJ1ZiBrb21tdC4gSWNoIGxvZ2dlCm1pY2ggZWluIHVuZCBzZWhlOgpQdW1hIHRlaWx0IERpciBtaXQ6IG5hLCB3aWVkZXIgbnVlY2h0ZXJuPyA6KQpMdWcgdGVpbHQgRGlyIG1pdDogV2llZGVyIG51ZWNodGVybj8gOykKCldlaXNzIGdhciBuaWNodCwgd2llIGRpZSBkcmF1ZiBrb21tZW4sIGljaCBtdXNzIGRhIGVpbmVuIEZpbG1yaXNzIGdlaGFidApoYWJlbi4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSXN0IGRlciBSdWYgZXJzdCBydWluaWVydC4uLiAoTHVnLCAxNi4gTWFyIDE5OTgsIDAwOjA4OjE1KToKfiMhIHJuPUdyaW1tYm9ybiBydD04OTAwMDMwOTggcmc9c2NobWFycm4KfiMhIHRpZD04OTAwMDMwOTgKCkFlaCwKCndlbm4gZWluZSBmaWt0aXZlIFBlcnNvbiBtaXR0ZWlsdDogSWNoIGhhdSB3aWVkZXIgYWIsIGljaCB0cmVmZiBkaWUgVGFzdGVuCm5pY2h0IG1laHIuLi4KCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggaW0ga2xvc3RlciAoTmFjaHR3aW5kLCAxNi4gTWFyIDE5OTgsIDAwOjQxOjMyKToKRHUgc2Fnc3Q6IGhtbSwgaGllciBoZWlyYXRlbj86KQo+IE1pbmRibGFkZSBzYWd0OiBpbSBkdW5rZWxuIGtsb3N0ZXIgaGVpcmF0ZW4hOikKCkR1IHNhZ3N0OiBkYSBnaWJ0cyBub2NoIGJlc3NlcmUgZWNrZW4gOikKPiBNaW5kYmxhZGUgZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KU2NhbGFyZSBncmluc3QuClplcGh5ciBzYWd0OiAga2xhci4uIGRhcyBzaW5kIGRpZSByaWNodGlnZW4gVm9yemVpY2hlbiBmdWVyIG5lIEVoZSA7KQoKRHUgc2Fnc3Q6IGJvZGVuIGRlcyBzY2hhY2h0ZXMgaXN0IG1laW4gd3Vuc2Nob3J0IDopCj4gTWluZGJsYWRlIGdyaW5zdC4KCkR1IHNhZ3N0OiBkYW5uIG1pdCAyMCBsZXV0ZW4gdW50ZW4gc3RlaGVuIDopCk1pbmRibGFkZSBuaWNrdCBEaXIgenUuCgpEdSBzYWdzdDogMTUga29tbWVuIHdpZWRlciByYXVzIDopCj4gWmVwaHlyIGFlY2h6dC4KWmVwaHlyIHNhZ3Q6ICBpaHIgc3Bpbm50IDspCk1pbmRibGFkZSBzYWd0OiBkYXMgaXN0IG5lbiBnZW11ZXRsaWNoZXIgb3J0CgpEdSBuaWNrc3QgenVzdGltbWVuZC4KRHUgc2Fnc3Q6IGRhIGlkbGUgaWNoIGdlcm4gOikKRHUgc2Fnc3Q6IGljaCBoYWIgamEgYXVjaCB0ZWxlcG9ydCA6KQoKPiBNaW5kYmxhZGUgZ3J1bW1lbHQuClplcGh5ciBzYWd0OiAgbmFqYSwgdWViZXJsZWd0cyBFdWNoLi4gc2FndCBCZXNjaGVpZCB3ZW5uIGlociBuZSBQcmllc3RlcmluClplcGh5ciBzYWd0OiBicmF1Y2h0IDspCk1pbmRibGFkZSBuaWNrdCBaZXBoeXIgenUuCgpEdSBzYWdzdDogam8gZHUgYmlzdCBndXQgYmVpIGhvY2h6ZWl0ZW4gOikKWmVwaHlyIGRlbmt0ICAgLiBvIE8gKGFjaGplLCBkZXIga2VubnQgbWVpbmUgU3BydWVjaGUgamEgc2Nob24uLikKCkR1IG5pY2tzdCB6dXN0aW1tZW5kLgo+IFplcGh5ciBzZXVmenQuCgpEdSBzYWdzdDogc2hhcmlhIGlzdCBhYmVyIGF1Y2ggZ3V0IDopCkR1IHNhZ3N0OiB3aXJkIG5lIHNjaHdlcmUgZW50c2NoZWlkdW5nIDopCj4gWmVwaHlyIHNhZ3Q6ICBuaW1tIHNoYXJpYSA7KQpNaW5kYmxhZGUgZ3JpbnN0LgpaZXBoeXIgc2FndDogIG1pciBmYWVsbHQgc28gc2NobmVsbCBuaXggZ3V0ZXMgbWVociBlaW4gOykKRHUgc2Fnc3Q6IGhlaGUgOikKCltUb2Q6TGFyc10gRGVyIERyYWNoZSBOYXJzIGhhdCBnZXJhZGUgU2hhcmlhIHVtZ2VicmFjaHQuCltUb2Q6RGVyIERyYWNoZSBOYXJzIHdpbmRldCBzaWNoIHZvciBMYWNoZW4uXQoKRHUgc2Fnc3Q6IG9oCj4gWmVwaHlyIGRlbmt0ICAgLiBvIE8gKGFlaCkKRHUgc2Fnc3Q6IHNoYXJpYSBpc3QgcmF1cwpEdSBzYWdzdDogZHUgbXVzc3QgOikKPiBaZXBoeXIgZGVua3QgICAuIG8gTyAoZGEgZ2VodCBzaWUgZGFoaW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVZWJlcnNjaHdlbmdsaWNoZSBGcmV1ZGUuLi4gKEZyZXVuZCwgMTYuIE1hciAxOTk4LCAxNzoxMzo1NSk6Ci4uLnVuZCBpaHJlIEZvbGdlbjoKCnJ1ZiBKdWNodXV1ISEhIEFiIG5hZWNoc3RlbiBNb250YWcgaGFiZSBpY2ggbWVpbmUgcHJpdmF0ZSBTVGFuZGxlaXR1bmcgaW5zIEludAplcm5ldCEhISBLTnVkZGVsdCBtaWNoISEhIDstKSkpCkR1IHJ1ZnN0OiBKdWNodXV1ISEhIEFiIG5hZWNoc3RlbiBNb250YWcgaGFiZSBpY2ggbWVpbmUgcHJpdmF0ZSBTVGFuZGxlaXR1bmcKRHUgcnVmc3Q6IGlucyBJbnRlcm5ldCEhISBLTnVkZGVsdCBtaWNoISEhIDstKSkpCj4gVHVmZmkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpOZWIga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpMZXYga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpCYW1idWxrbyBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCkxldiBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCk1pc3RicmF0emUga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpMZXYga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuCkRlaW4gRnJldW5kIFNyYWJpIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KS2V5IHJ1ZnQ6IEdyYXRzISA6KQpTYWxhZHJpb24ga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpNZW5hY2Uga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpLZXkgcnVmdDogQWJlciBnZWtudWRkZWx0IHdpcmQgbmV0ID07KQpTYWJiZXJrb3BwIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KU2FsYWRyaW9uIHRlaWx0IERpciBtaXQ6IDstKQpOZWIgcnVmdDogd28gd29obnN0IGR1IG5vY2ggbWFsID8gaGFzdCBkdSAyIHJlY2huZXIgPyA7KQpGYWdndSBydWZ0OiAqbmVpZCoKRGVyIEFyY2hpdGVrdCBydWZ0OiBNb2lyYWluZSwgTGVsbGRvcmluIHVuZCBMYW4gaGFiZW4gbWlyIGFsbGUgS2FydGVudGVpbGUKRGVyIEFyY2hpdGVrdCBydWZ0OiBnZWJyYWNodCEKQWNyaW1vbiBrbnVkZGVsdCBEaWNoIHNvIGRyZWlmYWNoLCB3aWUgZXMgc2ljaCBhdXMgZGVyIEZlcm5lIGZ1ZXIgZWluZQpTdGFuZGxlaXQKdW5nIGdlaG9lcnQuLgpBY3JpbW9uIGtudWRkZWx0IERpY2ggc28gZHJlaWZhY2gsIHdpZSBlcyBzaWNoIGF1cyBkZXIgRmVybmUgZnVlciBlaW5lClN0YW5kbGVpdAp1bmcgZ2Vob2VydC4uCkFjcmltb24ga251ZGRlbHQgRGljaCBzbyBkcmVpZmFjaCwgd2llIGVzIHNpY2ggYXVzIGRlciBGZXJuZSBmdWVyIGVpbmUKU3RhbmRsZWl0CnVuZyBnZWhvZXJ0Li4KUm9jaHVzIHJ1ZnQ6IGRhZnVlciBrYW5uIGljaCBpaG4gamEgbm9jaCBlaW5pZ2UgbWFsZSBrbnVkZGVsbiA6KQpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuClJvY2h1cyBrbnVkZGVsdCBEaWNoIERlaW5lbiBSb2JvdGVyIGluIENvbGEgdmVyc2Vua2VuZCBhdXMgZGVyIEZlcm5lLgpSb2NodXMga251ZGRlbHQgRGljaCBEZWluZW4gUm9ib3RlciBpbiBDb2xhIHZlcnNlbmtlbmQgYXVzIGRlciBGZXJuZS4KUm9jaHVzIGtudWRkZWx0IERpY2ggRGVpbmVuIFJvYm90ZXIgaW4gQ29sYSB2ZXJzZW5rZW5kIGF1cyBkZXIgRmVybmUuCkZyZXVuZCwgZ2VsYWV1XmheaF5oXmhrbnVkZGVsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVZWJlcnNjaHdlbmdsaWNoZSBGcmV1ZGUuLi4gKEJhbWJ1bGtvLCAxNi4gTWFyIDE5OTgsIDE3OjE3OjA3KToKfiMhIHJuPUZyZXVuZCBydD04OTAwNjQ4MzUgcmc9c2NobWFycm4KfiMhIHRpZD04OTAwNjQ4MzUKSG1tIGhhdCBSb2NodXMgZGEgZXR3YSBlaW4gU2tyaXB0IGdlaGFidD8gT2RlciBoYXQgZXIgZGFzIGFsbGVzIHBlciBIYW5kCmVpbmdldGlwcHQuCgotPiBSb2NodXMgbG9lc2NoZW4uCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBVZWJlcnNjaHdlbmdsaWNoZSBGcmV1ZGUuLi4gKFJvY2h1cywgMTYuIE1hciAxOTk4LCAxNzoxOToyNik6Cn4jISBybj1CYW1idWxrbyBydD04OTAwNjUwMjcgcmc9c2NobWFycm4KfiMhIHRpZD04OTAwNjQ4MzUKSWNoIGhhYmUgbnVyIDUgbWFsCiAgIHhkbyA1MCNya251ZGRlbCBmcmV1bmQgcm9iCmVpbmdldGlwcHQsIGFuIGRlbSBmZWhsZW5kZW4gLyBzaWVoc3QgRHUsIGRhcyBlcyBLRUlOIFNrcmlwdCBpc3QgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgbmV0dCAoVGFtZWxpLCAxNi4gTWFyIDE5OTgsIDE5OjM5OjA1KToKRHUgZ3JlaWZzdCBkZW4gV2FlY2h0ZXIgbWl0IGRlbSBGZXVlcnNjaHdlcnQgYW4uCiAgRHUgdmVyZmVobHN0IGRlbiBXYWVjaHRlci4KRGVyIFdhZWNodGVyIG5pY2t0IERpciB6dSB1bmQgc2FndDogJ0hhbGxvIFRhbWVsaScuCndmcwogIER1IHRyaWZmc3QgZGVuIFdhZWNodGVyIGhhcnQuCiAgRGVyIFdhZWNodGVyIHRyaWZmdCBEaWNoIGhhcnQuCkR1IHNjaGxhZWdzdCBkZW4gV2FlY2h0ZXIgZmllcyBtaXQgZGVtIEZldWVyc2Nod2VydC4KICBEdSB0cmlmZnN0IGRlbiBXYWVjaHRlciBzZWhyIGhhcnQuCnVzdy4gdW5kIHNvIGZvcnQuLiBldHdhcyBzcGFldGVyCgpEaWUgQW5nc3QgaXN0IHN0YWVya2VyIGFscyBEdSAuLi4gRHUgd2lsbHN0IG51ciBub2NoIHdlZyBoaWVyLgpXaWUgYml0dGU/CkRlciBXYWVjaHRlciB3dWVuc2NodCBEaXIgdmllbCBHbHVlY2sgYXVmIERlaW5lbSB3ZWl0ZXJlbiBXZWcuCkRlciBXYWVjaHRlciBpc3QgamV0enQgaGludGVyIERpciBoZXIuCgpJc3NlciBuaWNodCBuZXR0ID8/CgpUYW1lbGksIHVlYmVycmFzY2h0IHVlYmVyIGd1dGVzIEJlbmVobWVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIb3BwbGEgKEthcnRvZmZlbCwgMTYuIE1hciAxOTk4LCAyMjo0MToxMik6CgpJbiBkZXIgVGFua2U6CgpiZXN0ZWxsZSBHZWJhZWNrCgpbVG9kOkxhcnNdRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIExlaWJuaXogdW1nZWJyYWNodC4KCkR1IGtuYWJiZXJzdCBldHdhcyBHZWJhZWNrLgoKCkh1Y2gsIGRhcyB3b2xsdCBpY2ggYWJlciBuaWNodC4uLgoKS2FydG9mZmVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVWViZXJzY2h3ZW5nbGljaGUgRnJldWRlLi4uIChMdWcsIDE2LiBNYXIgMTk5OCwgMjM6MDE6MjApOgp+IyEgcm49RnJldW5kIHJ0PTg5MDA2NDgzNSByZz1zY2htYXJybgp+IyEgdGlkPTg5MDA2NDgzNQpBZWgsCgoKKnNwcmluZyBGcmV1bmQgYW4gdW5kIHd1ZXJnKgoKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptYWwgd2FzIChDYXR3ZWF6bGUsIDE3LiBNYXIgMTk5OCwgMTM6MzM6MzUpOgp+IyEgb249VGFuZ2FsdXIgb3Q9ODkwMTM3OTc1IG9nPWFsbGdlbWVpbmVzCmF1ZiBhdXNkcmV1Y2tsaWNoZW4gV3Vuc2NoIHZvbgpPcmt0b2V0ZXIgc2NocmVpYmUgaWNoICJtYWwgd2FzIiBpbiBkaWUgbXBhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbWFsIHdhcyAoV2FyZ29uLCAxNy4gTWFyIDE5OTgsIDEzOjM1OjQ0KToKfiMhIHJuPUNhdHdlYXpsZSBydD04OTAxMzgwMTUgcmc9c2NobWFycm4KfiMhIHRpZD04OTAxMzgwMTUKT2IgZGllc2VyIEFydGlrZWwgZGFzIFpldWcgZnVlciBlaW5lbiByaWNodGlnZW4gVGhyZWFkIGhhdD8KWnVyIE5vdCBrb2VubnRlIG1hbiBhdXMgZGVtIEJsb2Vkc2lubiBhYmVyIGF1Y2ggbmVuIEZsYW1ld2FyIG1hY2hlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbWFsIHdhcyAoUmluZ29yLCAxNy4gTWFyIDE5OTgsIDEzOjM3OjI1KToKfiMhIHJuPVdhcmdvbiBydD04OTAxMzgxNDQgcmc9c2NobWFycm4KfiMhIHRpZD04OTAxMzgwMTUKQWIgZGVtIHdpZXZpZWx0ZW4gUmVwbHkgZ2FicyBub2NoIGdsZWljaCBuZSBLaXN0ZSBCaWVyPyBVbmQgdm9uIHdlbT8KClJpbmdvci4gQWx6aGVpbWVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbWFsIHdhcyAoV2FyZ29uLCAxNy4gTWFyIDE5OTgsIDEzOjM4OjU1KToKfiMhIHJuPVJpbmdvciBydD04OTAxMzgyNDUgcmc9c2NobWFycm4KfiMhIHRpZD04OTAxMzgwMTUKQmVpbSB6d2VpdGVuIFJlcGx5LCB2b24gRGlyLgpXZW5uIER1IGRhcyBhbmRlcnMgaW4gRXJpbm5lcnVuZyBoYXN0LCBsaWVndCBkYXMgc2ljaGVyIGFuIGRlbSBBbHpoZWltZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBtYWwgd2FzIChIYXJkaWwsIDE3LiBNYXIgMTk5OCwgMTM6NDA6NDApOgp+IyEgcm49V2FyZ29uIHJ0PTg5MDEzODM2NyByZz1zY2htYXJybgp+IyEgdGlkPTg5MDEzODAxNQoKQWJlciBtdXNzIGRlciBUaHJlYWQgbmljaHQgIlJlXjEwMDA6IEhvcHBlbGRpaG9wcCIgaGVpc3NlbiwgZGFtaXQgZGVyIFRpZ2VyCkJpZXIgc3BlbmRpZXJ0ID8KSXJnZW5kc293YXMgd2FyIGRhIGRvY2guCgotSGFyZGlsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogbWFsIHdhcyAoQ2F0d2VhemxlLCAxNy4gTWFyIDE5OTgsIDE0OjEyOjAyKToKfiMhIHJuPUhhcmRpbCBydD04OTAxMzg0NDAgcmc9c2NobWFycm4KfiMhIHRpZD04OTAxMzgwMTUKU2Nod3VwcGRpd3VwcC4KSWNoIGdsYXViZSBlcyB3YXIgU2Nod3VwcGRpd3VwcC4uLgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IG1hbCB3YXMgKFRhbmdhbHVyLCAxNy4gTWFyIDE5OTgsIDE0OjE2OjI3KToKfiMhIHJuPUNhdHdlYXpsZSBydD04OTAxNDAzMjIgcmc9c2NobWFycm4KfiMhIHRpZD04OTAxMzgwMTUKaXNzIGRvY2ggZWdhbCB3aWVzIGhlaXNzdC4uLndpbGwgZGFzIGJpZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IG1hbCB3YXMgKEVtYmUsIDE3LiBNYXIgMTk5OCwgMTQ6MjM6MjUpOgp+IyEgcm49VGFuZ2FsdXIgcnQ9ODkwMTQwNTg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkwMTM4MDE1CmRhenUgbXVzcyBhYmVyIGVyc3QgZGVyIHRocmVhZCBsImFuZ2VyIHdlcmRuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogbWFsIHdhcyAoRW1iZSwgMTcuIE1hciAxOTk4LCAxNDozMzozNCk6Cn4jISBybj1FbWJlIHJ0PTg5MDE0MTAwNSByZz1zY2htYXJybgp+IyEgdGlkPTg5MDEzODAxNQpobW0sIGFsc28gZWlnZW50bGljaCBpcyBkYXMgbmljaHRtYWwgbWVociBzY2htYXJybiwKc29uZGVybiBlaGVyIG0idWxsLgoKYWxzbyBhYiBuYWNoIG11ZWxsIGRhbWl0LCB1bmQgZG9ydCB3ZWl0ZXJ0aHJlYWRlbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBtYWwgd2FzIChDYXR3ZWF6bGUsIDE3LiBNYXIgMTk5OCwgMTQ6Mzg6MDcpOgp+IyEgcm49RW1iZSBydD04OTAxNDE2MTQgcmc9c2NobWFycm4KfiMhIHRpZD04OTAxMzgwMTUKSGV5LCB3aXIgaGFiZW4gZGFzIGhlZXJlIFppZWwsIGVpbmUgS2lzdGUgQmllciB6dSB2ZXJkaWVuZW4uCkRhcyBpc3QgYWxsZXMgYW5kZXJlIGFscyBNdWVsbC4gU09sbCBpY2hzIG1hbCBuYWNoIGVudHdpY2tsdW5nIHZlcmxlZ2VuPwoKWVRDClBTOiBoZWhyZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBtYWwgd2FzIChFbWJlLCAxNy4gTWFyIDE5OTgsIDE0OjQzOjIyKToKfiMhIHJuPUNhdHdlYXpsZSBydD04OTAxNDE4ODcgcmc9c2NobWFycm4KfiMhIHRpZD04OTAxMzgwMTUKZHUgbWVpbnN0IHdlaWwgc2ljaCBkZXIgdGhyZWFkIGhvZmZlbnRsaWNoIHNvIG5hY2ggdW5kIG5hY2ggenUgZWluZXIga2lzdGUKYmllciBlbnR3aWNrZWx0PwooaWNoIGhhImF0dCBhYmVyIGxpZWJlciB3YXMgYWxrb2hvbGZyZWllcyA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBtYWwgd2FzIChaaWxsdXMsIDE3LiBNYXIgMTk5OCwgMTQ6NDQ6MDgpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTg5MDE0MTg4NyByZz1zY2htYXJybgp+IyEgdGlkPTg5MDEzODAxNQp3YXMgaXN0IGRlbm4gZGVyIHVudGVyc2NoaWVkIHp3aXNjaGVuIG11ZWxsIHVuZCBzY2htYXJybj8gZ2lidHMgZGFzCnVlYmVyaGF1cHQuLi4/CnppbGx1cy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogbWFsIHdhcyAoVGFuZ2FsdXIsIDE3LiBNYXIgMTk5OCwgMTQ6NDU6MDkpOgp+IyEgcm49WmlsbHVzIHJ0PTg5MDE0MjI0OCByZz1zY2htYXJybgp+IyEgdGlkPTg5MDEzODAxNQpCaWVyIGdlaG9lcnQgamVkZW5mYWxscyBuaWNodCBpbiBkZW4gTXVlbGwsCnNvbmRlcm4gaW4gZGVuIE1hZ2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogbWFsIHdhcyAoR25vbWUsIDE3LiBNYXIgMTk5OCwgMTQ6NDU6MTApOgp+IyEgcm49WmlsbHVzIHJ0PTg5MDE0MjI0OCByZz1zY2htYXJybgp+IyEgdGlkPTg5MDEzODAxNQpqYSwgc2NobWFycm4gaXN0IG11ZWxsIG1pdCBuaXZlYXUuIDopCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW50ZWxsaWdlbnp0ZXN0IChGcmV1bmQsIDE3LiBNYXIgMTk5OCwgMTQ6NTg6NTUpOgpXaWV2aWVsZSBSZXBseXMgYnJhdWNodCBlcyBkZW5uIGZ1ZXIgV29ka2EtTGVtbW9uPwoKRnJldW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IG1hbCB3YXMgKEdyaW1tYm9ybiwgMTcuIE1hciAxOTk4LCAxNjo1NDo1NSk6Cn4jISBybj1Hbm9tZSBydD04OTAxNDIzMTAgcmc9c2NobWFycm4KfiMhIHRpZD04OTAxMzgwMTUKRGEgWmlsbHVzIGZyYWd0ZSwgd2FzIGRlciBVbnRlcnNjaGllZCB6d2lzY2hlbiBtdWVsbCB1bmQgc2NobWFycm4gaXN0OiBJbgptdWVsbCBoYXQgbmljaHQgamVkZXIgU2NocmVpYmJlcmVjaHRpZ3VuZywgZGFmdWVyIGJyYXVjaHRzIGxhbmdqYWVocmlnZQpRdWFsaWZpa2F0aW9uIGltIG11ZWxsc2NocmVpYmVuLCBzbyB3aWUgYmVpIENhdCogdW5kIG1pci4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbWxhdXRlIChXdXJ6ZWwsIDE3LiBNYXIgMTk5OCwgMjM6MjY6NTgpOgp+IyEgb249QWNyaW1vbiBvdD04OTAxNjg1NjEgb2c9cG9saXplaS5iZXNjaHdlcmRlbgpJY2ggYmVzY2h3ZXJlIG1pY2ggaGllcm1pdCwgZGFzeiBpY2ggaGllciBrZWluZSB2ZXJudWVuZnRpZ2VuIFVtbGF1dGUgZWluZ2ViZW4Ka2Fubi4KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVtbGF1dGUgKFNpbHZhbmEsIDE3LiBNYXIgMTk5OCwgMjM6Mzk6MzEpOgp+IyEgcm49V3VyemVsIHJ0PTg5MDE3MzYxOCByZz1zY2htYXJybgp+IyEgdGlkPTg5MDE3MzYxOApJY2ggYmVzY2h3ZXJlIG1pY2ggaGllcm1pdCwgZGFzcyBpY2ggZGllc2VuIEFydGlrZWwgbnVuIHNjaG9uIHp3ZWltYWwKbGVzZW4gbXVzc3RlLiBIZXV0ZSwgd29obGdlbWVya3QuIEluc2dlc2FtbXQgaGFiIGljaCB3b2hsIHNjaG9uCmVpbiBwYWFyIER1dHplbmQgZGF2b24gZ2VsZXNlbi4uLgoKICBTaWx2YW5hICh3ZW5pZ3N0ZW5zIHNjaG9uIGluIGRlciByaWNodGlnZW4gUnVicmlrKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW1sYXV0ZSAoQm9pbmcsIDE4LiBNYXIgMTk5OCwgMDg6Mjc6MTUpOgp+IyEgb249QWNyaW1vbiBvdD04OTAxNjg1NjEgb2c9cG9saXplaS5iZXNjaHdlcmRlbgpJY2ggYmVzY2h3ZXJlIG1pY2ggaGllcm1pdCwgZGFzeiBpY2ggaGllciBrZWluZSB2ZXJudWVuZnRpZ2VuIFVtbGF1dGUgZWluZ2ViZW4Ka2Fubi4KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IGZsdWNodHJpY2h0dW5nIChCb2luZywgMTguIE1hciAxOTk4LCAwODoyODozNik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODkwMTUwMjU4IG9nPXNlaGVyLmVudHdpY2tsdW5nCn4jISBybj1Hbm9tZSBydD04OTAxNDYxNjEgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD04ODk0MzUyMzUKV2VpbCB3aXIgZGFzIHNjaG9uIGxhbmdlIG5pY2h0IG1laHIgaGF0dGVuOiBFcyBoZWlzc3QgX2RpZV8gUXVlc3QsIG5pY2h0IF9kZXJfClF1ZXN0IHVuZCBhdWNoIG5pY2h0IF9kYXNfIFF1ZXN0LgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogZmx1Y2h0cmljaHR1bmcgKEJvaW5nLCAxOC4gTWFyIDE5OTgsIDA4OjI4OjM4KToKfiMhIG9uPUJvaW5nIG90PTg5MDE1MDQ5OCBvZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgcm49R3JpbW1ib3JuIHJ0PTg5MDE1MDI1OCByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTg4OTQzNTIzNQpOZWluLCBlcyBoZWlzc3QgX3RoZV8gcXVlc3QgLi4uIGlzdCBzY2hsaWVzc2xpY2ggZW5nbGlzY2guIEVpbiBkZXV0c2NoZXMKV29ydCAnUXVlc3QnIGtlbm4gaWNoIG5pY2h0LiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogZmx1Y2h0cmljaHR1bmcgKEJvaW5nLCAxOC4gTWFyIDE5OTgsIDA4OjI4OjM5KToKfiMhIG9uPUFjcmltb24gb3Q9ODkwMTUwNjM2IG9nPXNlaGVyLmVudHdpY2tsdW5nCn4jISBybj1Cb2luZyBydD04OTAxNTA0OTggcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD04ODk0MzUyMzUKRG9jaDoKX2Rhc18gQWJlbnRldWVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IGZsdWNodHJpY2h0dW5nIChCb2luZywgMTguIE1hciAxOTk4LCAwODoyODo0MCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODkwMTUwNzA3IG9nPXNlaGVyLmVudHdpY2tsdW5nCn4jISBybj1Cb2luZyBydD04OTAxNTA0OTggcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD04ODk0MzUyMzUKVW5kIER1IHJlZGVzdCBhdWNoIGltbWVyIHZvbiAidGhlIGtpZHMiIHVuZCBzYWdzdCAiR2VoIG1hbCB6dSB0aGF0IGNvbXB1dGVyIGRhCmRydWViZW4gaGluIj8gOy0pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3Qgc2FndDogUlRGSCAiTGVobndvZXJ0ZXIiIChvZGVyIHNvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IGZsdWNodHJpY2h0dW5nIChCb2luZywgMTguIE1hciAxOTk4LCAwODoyODo0MSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODkwMTUwOTQ0IG9nPXNlaGVyLmVudHdpY2tsdW5nCn4jISBybj1BY3JpbW9uIHJ0PTg5MDE1MDYzNiByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTg4OTQzNTIzNQpOYWphLCB3ZW5uIER1IGRpZSBWZXJtZWlkdW5nIGFsbGVyIExlaG53b2VydGVyIGF1cyBhbmRlcmVuIFNwcmFjaGVuIGFuc3RyZWJzdCwKZGFubiB2aWVsIFNwYXNzLiBIYXN0IER1IG5vY2ggYmVzc2VyZSBLYXJ0ZW4gYWxzIGVpbiBFbmdsYWVuZGVyIG1pdCBkaWVzZW0KQmVzdHJlYmVuLCBlbmdsaXNjaCBiZXN0ZWh0IGphIG51ciBub2NoIHp1IHJ1bmQgMjAlIGF1cyBlbmdsaXNjaC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogZmx1Y2h0cmljaHR1bmcgKEJvaW5nLCAxOC4gTWFyIDE5OTgsIDA4OjI4OjQyKToKfiMhIG9uPURyb2dvIG90PTg5MDE1Mjg4MyBvZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgcm49R3JpbW1ib3JuIHJ0PTg5MDE1MDk0NCByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTg4OTQzNTIzNQpXYXMgaGF0IGRhcyBpbiBkaWVzZXIgUnVicmlrIHp1IHN1Y2hlbiA/PwpWZXJsZWd0IERpY2ggbWFsIHNlbGJzdCAhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogZmx1Y2h0cmljaHR1bmcgKEJvaW5nLCAxOC4gTWFyIDE5OTgsIDA4OjI4OjQzKToKfiMhIG9uPVd1cnplbCBvdD04OTAxNzQwMTUgb2c9c2VoZXIuZW50d2lja2x1bmcKfiMhIHJuPUdyaW1tYm9ybiBydD04OTAxNTAyNTggcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD04ODk0MzUyMzUKYWVoLCBuZWluLiBkYXMgZGV1dHNjaGUgd29ydCBoZWlzc3QgInF1ZXN0ZSIsIGRlciBnZW51cyBzdGltbXQgYWJlci4gcXVlc3QKb2huZSBlIGlzdCBkYXMgZW5nbGlzY2hlIHdvcnQgKG1hbiBrb2VubnRlIGF1Y2ggIm5ldWRldXRzY2giIGRhenUgc2FnZW4uCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBmbHVjaHRyaWNodHVuZyAoQm9pbmcsIDE4LiBNYXIgMTk5OCwgMDg6Mjg6NDQpOgp+IyEgb249R3JpbW1ib3JuIG90PTg5MDE3NjM4MiBvZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgcm49V3VyemVsIHJ0PTg5MDE3NDAxNSByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTg4OTQzNTIzNQpOdW4gcGlua2VsdCBldWNoIGRvY2ggbmljaHQgYWxsZSBlaW5lcyBmZWhsZW5kZW4gZXMgd2VnZW4gaW4gZGllCkJlaW5iZWtsZWlkdW5nLCBWb2thbGUgc2luZCBpbiBlaW5lciBTcHJhY2hlIGVoIGRhcyBhbGxlcnVud2ljaHRpZ3N0ZSAobmFjaAptYXNzZ2VibGljaGVyIE1laW51bmcgdm9uIFBoaWxvbG9nZW4pLCB1bmQgc28gZWluIGUgYW0gRW5kZSBrb21tdCB1bmQgZ2VodCwKZGVzd2VnZW4gaXN0cyBpbW1lcm5vY2ggZGFzc2VsYmUgV29ydC4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IGZsdWNodHJpY2h0dW5nIChCb2luZywgMTguIE1hciAxOTk4LCAwODoyODo0NSk6Cn4jISBvbj1CYXJhayBvdD04OTAyMDIxMzcgb2c9c2VoZXIuZW50d2lja2x1bmcKfiMhIHJuPUdyaW1tYm9ybiBydD04OTAxNzYzODIgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD04ODk0MzUyMzUKRGFzIGlzdCBhYmVyIGF1Y2ggYmVpIGVpbmdlZW5nbGlzY2h0ZW4gV29ydGVuIGx1c3RpZywgbGV0enRlbnMgbGFzIGljaCBlaW5lbgplaW5nbGlzY2hlbiBBcnRpa2VsLCBkZXIgYXVmIG1laW5lIFN0YWF0c2V4YW1lbnNhcmJlaXQgdmVyd2llcywgZGFzIHNhaCBkYW5uCmV0d2Egc28gYXVzOiBUaGUgc3RhYXRzZXhhbWVuc2FyYmVpdHMgZnJvbSBibGFibGEgYW5kIGJsYSBibGEgLi4uLgpCYXJhawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IGZsdWNodHJpY2h0dW5nIChRdWVuZ2lzdHUsIDE4LiBNYXIgMTk5OCwgMTA6Mzc6MTQpOgp+IyEgcm49Qm9pbmcgcnQ9ODkwMjA2MTI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg5NDM1MjM1CkRhc3MgVm9rYWxlIGluIGVpbmVyIGZsZWt0aWVyZW5kZW4gU3ByYWNoZSB3aWUgZGVyIGRldXRzY2hlbiB1bndpY2h0aWcgc2luZCwKa2FubiBpY2ggbm9jaCBlaW5zZWhlbjsgYWJlciBpY2ggZGVua2UgZnVlciBldGxpY2hlIGFuZGVyZSBTcHJhY2hlbiBnaWx0IGRhcwpuaWNodC4gSW0gSmFwYW5pc2NoZW4gZmFsbGVuIG1pciBhdWYgQW5oaWViIG1laHJlcmUgV29lcnRlciBlaW4sIGRpZSBudXIgYXVzClZva2FsZW4gYmVzdGVoZW4uClF1ZW5naXN0dSwgaGV1dGUgbWFsIGJlc3Nlcndpc3NlcmlzY2guLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbWxhdXRlIChNaWV6ZSwgMTguIE1hciAxOTk4LCAxMDo1NDo0OCk6Cn4jISBybj1XdXJ6ZWwgcnQ9ODkwMTczNjE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkwMTczNjE4CgpNaWNoIHN0b2VyZW4gZGllIFVtbGF1dGUgYWJzb2x1dCBuaWNodCwgaXN0IHNjaG9uIGluIEZsZWlzY2ggdW5kIEJsdXQKdWViZXJnZWdhbmdlbi4uLiBtaWNoIG5lcnZlbiBudXIgZGllIExldXRlLCBkaWUgc2ljaCBsYXVmZW5kIGRhZHJhbiBob2NoemllaGVuCipnZW5lcnZ0IHp1IGFjcmltb24gZ3VjayoKCk1pZXplLCBkZXJlbiBJZ25vcmVsaXN0IG1hbCB3aWVkZXIgdW0gZWluZW4gRWludHJhZyBsYWVuZ2VyIGlzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVW1sYXV0ZSAoQmFib29uLCAxOC4gTWFyIDE5OTgsIDEwOjU5OjE5KToKfiMhIHJuPU1pZXplIHJ0PTg5MDIxNDg4OCByZz1zY2htYXJybgp+IyEgdGlkPTg5MDE3MzYxOApIbSwgaWdub3JpZXJzdCBkdSBqZXR6dCB1bWxhdXRlPyA6LSkKCkJhYm9vbigpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBVbWxhdXRlIChVbWxhdXRlLCAxOC4gTWFyIDE5OTgsIDExOjIwOjAxKToKfiMhIHJuPUJhYm9vbiBydD04OTAyMTUxNTkgcmc9c2NobWFycm4KfiMhIHRpZD04OTAxNzM2MTgKRGFzIGlzdCBhYmVyIHVuZmFpciwgbWljaCB6dSBpZ25vcmllcmVuLiBJY2ggaGFiZSBkb2NoIGdhciBuaXggZ2V0YW4hIDotKAoKRGllIFVtbGF1dGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBVbWxhdXRlIChCYWJvb24sIDE4LiBNYXIgMTk5OCwgMTE6MjI6MTEpOgp+IyEgcm49VW1sYXV0ZSBydD04OTAyMTY0MDEgcmc9c2NobWFycm4KfiMhIHRpZD04OTAxNzM2MTgKV2llc28gaGFiIGljaCBudXIgZGFtaXQgZ2VyZWNobmV0LCBkYXNzIHNpY2ggamVtYW5kIGFscyB1bWxhdXRlIGVpbmxvZ2d0PwoKQmFib29uKCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFVtbGF1dGUgKEZyZXVuZCwgMTguIE1hciAxOTk4LCAxMToyMzowNCk6Cn4jISBybj1CYWJvb24gcnQ9ODkwMjE2NTMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkwMTczNjE4Cj5XaWVzbyBoYWIgaWNoIG51ciBkYW1pdCBnZXJlY2huZXQsIGRhc3Mgc2ljaCBqZW1hbmQgYWxzIHVtbGF1dGUgZWlubG9nZ3Q/CgpXZWlsIER1IHVtIGRpZSBJbnRlbGxpZ2VueiBkZXIgTXVkZGVyIHdlaXNzdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRHJvZ28sIDE4LiBNYXIgMTk5OCwgMTE6Mzg6MjkpOgpLYXJpcyB0ZWlsdCBEaXIgbWl0OiB1bmQgd2FzIGlzIG1pdCBkZW0gVW50aWVyICp6dXNjaGxhZyogPyBzZWhyIGFuaGFlbmdsaWNoCkthcmlzIHRlaWx0IERpciBtaXQ6IGlyZ2VuZHdpZSAqZHJlc2NoKgpbVG9kOkxhcnNdIEVpbiBVbnRpZXIgaGF0IGdlcmFkZSBLYXJpcyB1bWdlYnJhY2h0LgoKUmVjaHQgaGF0IGVyLgoKQWVoLCBCZWlsZWlkIC4uLi4gRHJvZ28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBmbHVjaHRyaWNodHVuZyAoSGlnaGxhbmRlciwgMTguIE1hciAxOTk4LCAxMjozMzo1Myk6Cn4jISBybj1Cb2luZyBydD04OTAyMDYxMTggcmc9c2NobWFycm4KfiMhIHRpZD04ODk0MzUyMzUKV2llLCBEdSBrZW5uc3QgZGFzIHp1Z2VnZWJlbiBldHdhcyBhbHRlIFdvcnQgUXVlc3RlIG5pY2h0PyA6PgogICBIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBmbHVjaHRyaWNodHVuZyAoUm9jaHVzLCAxOC4gTWFyIDE5OTgsIDE3OjI3OjEyKToKfiMhIHJuPUJvaW5nIHJ0PTg5MDIwNjEyNSByZz1zY2htYXJybgp+IyEgdGlkPTg4OTQzNTIzNQpBbGxlcmRpbmdzLi4uLiBpc3Qgc2Nob24gd2l0emlnIHdlbm4gbWFuIHp1bSBlcnN0ZW4gTWFsCldvcnRlIHdpZSAiRWlnZW52YWx1ZSIgbGllc3QgOi0pClJlY2h0IGludGVyZXNzYW50IGxpZXN0IHNpY2ggYXVjaCAiY29udHJvbCBvZiBadWd6d2FuZyIgOi0pCgogIFJvY2h1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6IGZsdWNodHJpY2h0dW5nIChCb2luZywgMTguIE1hciAxOTk4LCAxNzozMTo1MSk6Cn4jISBvbj1BY3JpbW9uIG90PTg5MDIzNzYyNiBvZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgcm49SG9ibyBydD04OTAyMzczMjAgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD04ODk0MzUyMzUKSXJvbmllICprYW5uKiBtYW4gbmljaHQgZXJrZW5uZW4sIHdlbm4gc2llIG5pY2h0IGFscyBzb2xjaGUgZ2VrZW5uemVpY2huZXQKaXN0LgpEZW5uIHdlciByZWNobmV0IHNjaG9uIGRhbWl0LCBkYXN6IGRlciBBbmRlcmUgYWJzaWNodGxpY2ggbHVlZ3Q/CkFsc28gYml0dGU6IEdlbG9nZW5lIFNhZXR6ZSBpbW1lciBrZW5uemVpY2huZW4gKCIqSXJvbmllIGFuKiIgIipJcm9uaWUgYXVzKiIpCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBmbHVjaHRyaWNodHVuZyAoQm9pbmcsIDE4LiBNYXIgMTk5OCwgMTc6MzE6NTgpOgp+IyEgb249S2V5IG90PTg5MDIzODU0NyBvZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgcm49QWNyaW1vbiBydD04OTAyMzc2MjYgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD04ODk0MzUyMzUKTmVlZWUgLi4uLiBJcm9uaWUga2FubiBtYW4gYXVjaCBvZnQgc28gZXJrZW5uZW4uCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBmbHVjaHRyaWNodHVuZyAoUmFudGFucGxhbiwgMTguIE1hciAxOTk4LCAxNzozMzozMyk6Cn4jISBybj1Cb2luZyBydD04OTAyMzg3MTggcmc9c2NobWFycm4KfiMhIHRpZD04ODk0MzUyMzUKTmVpaWlpaWlpbiBOZWVlZWVlZWVlaW5ubm5ubgoKQWxsZXMgYWJlciBuaWNodCBkaWUgSXJvbmllL0x1ZWdlIERpc2t1c3Npb24KCkJJVFRFIEJJVFRFIEJJVFRFIE5JSUlJSUlJSUlJQ0hUICEhISEKCipWb2xsIGRpZSBMdWVnZSBhbioKCklociBzZWlkIGFsbGUgZ2FueiB0b2xsCgoqVm9sbCBkaWUgTHVlZ2UgYXVzKgoKT2UqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogZmx1Y2h0cmljaHR1bmcgKEFjcmltb24sIDE4LiBNYXIgMTk5OCwgMTg6NDc6NTQpOgp+IyEgcm49Qm9pbmcgcnQ9ODkwMjM4NzExIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg5NDM1MjM1CkRlciBBcnRpa2VsIHdhciBkZWZpbml0aXYgZXJuc3QgZ2VtZWludC4KV2FydW0gdmVybGVnc3QgRHUgaWhuIG5hY2ggc2NobWFycm4/CgpBY3JpbW9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogZmx1Y2h0cmljaHR1bmcgKFd1cnplbCwgMTguIE1hciAxOTk4LCAxOTowMjoxMCk6Cn4jISBybj1BY3JpbW9uIHJ0PTg5MDI0MzI3NCByZz1zY2htYXJybgp+IyEgdGlkPTg4OTQzNTIzNQp2aWVsbGVpY2h0IHNvbGx0ZSBtYW4gZWluZW4gYXV0b21hdGlzbXVzIGVpbmJhdWVuLCBkZXIgZGVpbmUgYXJ0aWtlbCBnbGVpY2gKYXV0b21hdGlzY2ggdmVybGVndD8gb2RlciB3YWVyc3QgZHUgdW50ZXIgdW1zdGFlbmRlbiBiZXJlaXQsIGdsZWljaCBoaWVyCnp1IHNjaHJlaWJlbj8KCnd1cnplbAoKcC5zLiBzdGVodCBzY2hvbiBpbiBkZXIgcmljaHRpZ2VuIHJ1YnJpay4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBpbSBzY2hlbWVucmVpY2ggKEJpcmR5LCAxOC4gTWFyIDE5OTgsIDE5OjE5OjUyKToKPiBsaWVzIGthbXBmc3RhYmxpc3RlCkF1ZiBkZXIgS2FtcGZzdGFibGlzdGUgc3RlaGVuOgpUZXJpbSAobmV0enRvdCkuCihhYmdlbGVndCkKKGFiZ2VsZWd0KQooYWJnZWxlZ3QpCkVpbiBBc3QuCgpCaXJkeSwgd2lzc2VuZCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IGZsdWNodHJpY2h0dW5nIChHcmltbWJvcm4sIDE4LiBNYXIgMTk5OCwgMTk6MjE6MTApOgp+IyEgcm49UXVlbmdpc3R1IHJ0PTg5MDIxMzgzNCByZz1zY2htYXJybgp+IyEgdGlkPTg4OTQzNTIzNQpJY2ggbml4IFBoaWxvbG9nZSwgYWJlciBlcyBnaWJ0IGF1Y2ggaW0gZGV1dHNjaGVuIChtaW5kZXN0ZW5zKSBlaW4gV29ydCwgZGFzCm51ciBhdXMgVm9rYWxlbiBiZXN0ZWh0LiBFcyBnZWh0IGF1Y2ggbmljaHQgbnVyIHVtIGRhcyBWb3JoYW5kZW5zZWluIG9kZXIKbmljaHQgdm9uIEJ1Y2hzdGFiZW4sIGVzIGdlaHQgdm9yIGFsbGVtIHVtIEF1c3NwcmFjaGUuIEdlcmFkZSB3aXIgRGV1dHNjaGVuCmhhYmVuIGRhIHp3ZWkgTGF1dHZlcnNjaGllYnVuZ2VuIGhpbnRlciB1bnMsIGRpZSBuaWNodCB2b24gc2NobGVjaHRlbiBFbHRlcm4KaXN0LiBNaXIgaXN0IGJpcyBoZXV0ZSBuaWNodCBrbGFyLCB3aWUgZGFtYWxzIGRpZSBLaW5kZXIgZGFubiBub2NoIGlocmUgRWx0ZXJuCnZlcnN0YW5kZW4gYWhiZW4sIGFiZXIgZGFzIGdpbHQgaW1tZXIgbm9jaCBhbHMgZ2xlaWNoZSBTcHJhY2hlLiBVbmQgZGFzCmJlemllaHQgc2ljaCBudXIgYXVmIGRpZSBLb25zb25hbnRlbiwgd2VpbCBkaWUgVm9rYWxlICJlaCB2b2VsbGlnIHVud2ljaHRpZwpzaW5kIHVuZCBzaWNoIHN0YWVuZGlnIGFlbmRlcm4iLiBPYiBzbyBMZXV0ZSB3aWUgZGllIEphcGFuZXIgZGEgYmVzdGFlbmRpZ2VyCnNpbmQga2FubiBpY2ggbmljaHQgc2FnZW4sIGFiZXIgaWNoIGJlendlaWZlbCBlcywgZGVubiBkaWVzZSBBZW5kZXJ1bmdlbiBoYXQKZXMgd29obCBpbiBFdXJvcGEgdWViZXJhbGwgdW5hYmhhZW5naWcgdm9uZWluYW5kZXIgZ2VnZWJlbiwgenUgdmVyc2NoaWVkZW5lbgpaZWl0ZW4uIEFsc286IFdlc2Vuc21lcmttYWwgZGVyIE1lbnNjaGVuIGFuIHNpY2guCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QgemVocnQgdm9uIGRlbiBCcm9zYW1lbiBkZXMgV2lzc2VucyBzZWluZXIgRXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBmbHVjaHRyaWNodHVuZyAoTGFyaXNzYSwgMTguIE1hciAxOTk4LCAyMDo0MTo1OSk6Cn4jISBybj1Cb2luZyBydD04OTAyMzg3MTEgcmc9c2NobWFycm4KfiMhIHRpZD04ODk0MzUyMzUKCkhvaSEKaWNoIHdlaHJlIG1pY2ggaGllcm1pdCB2ZWhlbWVudCBkYWdlbmdlbiwgZGFzcyBBcnRpa2VsIHZvbiAKQWNyaW1vbiB2ZXJsZWd0IHdlcmRlbi4gRGllIGxlc2VuIHNpY2hlIGVpbmZhY2ggX3p1XwpzY2hhdWRlcmhhZnQuCgoqc2NobWFycm4gb2ZmKgoKTGFyaSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTW9lbmNoZS4uLiAoRGFya3dpbmcsIDE4LiBNYXIgMTk5OCwgMjE6Mjk6MjApOgpnZXJhZGUgaW4gVG9ldGVycyBLbG9zdGVyOgoKRGVyIE1vZW5jaCB6d2luZ3QgRGljaCB6dTogZ2liIG1pciBkaWUgRGlkZGwtS251ZGRlbC1NYXVzLgoKc2luZCBzaWUgbmljaHQgc3Vlc3MgPyAgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFjaHR1bmcsIEZyZW1kc3ByYWNoZSEgKEdyaW1tYm9ybiwgMTguIE1hciAxOTk4LCAyMjo0MDo0MSk6Cn4jISBybj1UZWRkeSBydD04OTAyNTU2MDcgcmc9d2l0emUKfiMhIHRpZD04OTAyMTY5OTYKSWNoIHdlaXNzIG5pY2h0IHdhcyBEdSB3aWxsc3QsIG1laW4gUEMgc2NobnVycnQgd2llIGVpbiBVaHJ3ZXJrIChvZGVyIHNvKS4gV2FzCmhhc3QgRHUgZGVubiBmdWVyIFp1dmVybGFlc3NpZ2tlaXRzcHJvYmxlbWUgbWl0IERlaW5lbSBQQz8KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IGZsdWNodHJpY2h0dW5nIChMdWcsIDE5LiBNYXIgMTk5OCwgMDA6NTM6MTUpOgp+IyEgcm49Qm9pbmcgcnQ9ODkwMjA2MTE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg5NDM1MjM1CgpRdWVzdGUuCgpLdXJ6Ckx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQWNodHVuZywgRnJlbWRzcHJhY2hlISAoWWVuZGksIDE5LiBNYXIgMTk5OCwgMTI6NTA6NDgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg5MDI1NzI0MSByZz1zY2htYXJybgp+IyEgdGlkPTg5MDIxNjk5NgpCZW5laWRlbnN3ZXJ0LiBNZWluIFBDIGhvZXJ0IHNpY2ggYW4gd2llIGVpbiBMdWVmdGVydGVzdGxhYm9yLi4uCgpZVFkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBY2h0dW5nLCBGcmVtZHNwcmFjaGUhIChHcmltbWJvcm4sIDE5LiBNYXIgMTk5OCwgMTc6Mjc6MTQpOgp+IyEgcm49WWVuZGkgcnQ9ODkwMzA4MjQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkwMjE2OTk2Ck1hbCBpbiBuZW0gS2lyY2h0dXJtIGdld2VzZW4/IERpcmVrdCBhbiBkZXIgS2lyY2h0dXJtdWhyPyA7LSkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IGZsdWNodHJpY2h0dW5nIChOYXNpbSwgMTkuIE1hciAxOTk4LCAyMzoyNzo0Nik6Cn4jISBybj1Cb2luZyBydD04OTAyMDYxMjQgcmc9c2NobWFycm4KfiMhIHRpZD04ODk0MzUyMzUKU3RtbXQsIG5ybWxyd3NlIGtubiBtbiBubiBUeHQgY2ggaG5lIG1sdCBnbnogZ3QgbHNuIC4uLi4KCkdyc3MsIE5zbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IGZsdWNodHJpY2h0dW5nIChEaG9qYWt0LCAyMC4gTWFyIDE5OTgsIDAyOjAwOjM0KToKfiMhIHJuPU5hc2ltIHJ0PTg5MDM0NjQ2NiByZz1zY2htYXJybgp+IyEgdGlkPTg4OTQzNTIzNQpEIHdybiBiciBuY2ggVmtsIGRybiEgTGJyIHZyaHIgbmNobWwgenIgS250cmxsIG5nZ2duLi4uCktoKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IGZsdWNodHJpY2h0dW5nIChHcmltbWJvcm4sIDIwLiBNYXIgMTk5OCwgMTA6MDY6MjkpOgp+IyEgcm49RGhvamFrdCBydD04OTAzNTU2MzQgcmc9c2NobWFycm4KfiMhIHRpZD04ODk0MzUyMzUKSmFqYSwgd2VubiBkYXMgRnVzc3ZvbGsgc2ljaCBhbXVlc2llcnQgdWViZXIgRGluZ2UsIGRpZSBlcyBuaWNodCB2ZXJzdGVodC4uLgpXZW5uIG1pciBlaW4gUGhpbG9sb2dlIGVyemFlaGx0LCB3YWxpc2lzY2ggdW5kIGRldXRzY2ggc2VpZW4gcHJha3Rpc2NoCmRpZXNlbGJlIFNwcmFjaGUgc3RhdW5lIGljaCB6d2FyLCBhYmVyIHdpZXNvIHNvbGx0ZSBpY2ggZGFzIG5pY2h0IGdsYXViZW4/IERlcgpNYW5uIGlzdCBkYSBrb21wZXRlbnQsIGhhdCBkYXMgZ2VsZXJudCwgaWNoIGRhZ2VnZW4gbmljaHQuIEljaCBtYXNzZSBtaXIgbmljaHQKYW4gZWluZW4gSW5nZW5pZXVyIHZlcmJlc3Nlcm4genUgd29sbGVuLCB3aWVzbyBzb2xsdGUgaWNoIGRhcyBiZWltIFBoaWxvbG9nZW4/CgpBY2ggamEsIGlzdCBzY2hvbm1hbCBqZW1hbmRlbSBhdWZnZWZhbGxlbiwgZGFzcyBrYXVtIGplbWFuZCBlaW5lbSBDaGlydXJnZW4gaW4Kc2VpbmUgQXJiZWl0IHJlaW56dXJlZGVuIHdhZ3QsIGFiZXIgamVkZXIgbWVpbnQsIGdydW5kc2FldHpsaWNoIGRpZSBTaXR1YXRpb24KYmVzc2VyIGJldXJ0ZWlsZW4genUga29lbm5lbiBhbHMgZWluIFBzeWNob2xvZ2U/IEljaCBlcmlubmVyZSBtaWNoIGFuIGRlbgpTdGVyYmVoaWxmZWZhbGwgaW4gSG9sbGFuZCB2b3IgZWluaWdlciBaZWl0LCBhbHMgZWluIFBzeWNob2xvZ2Ugc2FndGUsIGRpZQpEZXByZXNzaW9uIGlzdCBob2ZmbnVuZ3Nsb3MsIGVpbiBGYWxsIGZ1ZXIgU3RlcmJlaGlsZmUgdW5kIGRpZSBoYWxiZSBOYXRpb24KYXVmc2NocmllIHVuZCBhbmRlcmVyIE1laW51bmcgd2FyLiBXZW5uIGVpbiBPbmtvbG9nZSBlaW5lbiBLcmVic2ZhbGwgYWxzCmhvZmZudW5nc2xvcyBlaW5zdHVmdCBwcm90ZXN0aWVydCBrYXVtIGplbWFuZC4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IGRydWVja3Qgc2ljaCB2b3IgZGVyIEFyYmVpdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IGZsdWNodHJpY2h0dW5nIChZZW5kaSwgMjAuIE1hciAxOTk4LCAxNDozOTowNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODkwMzg0Nzg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg5NDM1MjM1CkRhcyBtaXQgZGVtIFNpY2gtenV0cmF1ZW4sLVBzeWNob2xvZ2VuLXp1LXZlcmJlc3Nlcm4gbGllZ3QgdmVybXV0bGljaCBkYXJhbiwKZGFzcyBhKSBlaW5lIE1lbmdlIFBzeWNob2xvZ2VuIG9lZmZlbnRsaWNoIGJlaSBqZWRlciBzaWNoIGJpZXRlbmRlbgpHZWxlZ2VuaGVpdCBrb2xvc3NhbGVuIFF1YXRzY2ggdmVyemFwZmVuLAogICAgIGIpIG1hbiBiZWkgbiBQc3ljaG9sb2dlbiBuIHZlcnNjaGllZGVuZSBNZWludW5nZW4genUgZWluIHVuZCBkZW1zZWxiZW4KRmFsbCBmaW5kZXQsIHdhcyBiZWkgTWVkaXppbmVybiBmdWVyIG4+MiBzZWx0ZW4gZGVyIEZhbGwgaXN0LCB1bmQKICAgICBjKSBzZWxic3QgZWluZSBHcnVwcGllcnVuZyB2b24gUHN5Y2hvbG9nZW4sIGRpZSBzaWNoIGF1c25haG1zd2Vpc2UgZWluaWcKaXN0LCBpaHJlIE1laW51bmcgaW4gZGVuIG5hZWNoc3RlbiAyMCBKYWhyZW4gaW5zIEdlZ2VudGVpbCB2ZXJrZWhyZW4gd2lyZCAtLQphdWNoIGVpbiBWb3JmYWxsLCBkZXIgYmVpIGFuZGVyZW4gUHJvZmVzc2lvbmVuIGVoZXIgc2VsdGVuIHZvcmtvbW10LgoKV2llIHNvbGxlbiBkaWUgTGV1dGUgZGVubiBadXRyYXVlbiB6dSBQc3ljaG9sb2dlbiBmYXNzZW4sIHdlbm4gZGllc2VyIFN0YW5kCnNpY2ggbWl0IFZvcmxpZWJlIHdpZSBlaW4gSHVlaG5lcnN0YWxsIG1pdCBGdWNoc2JlZmFsbCBwcmFlc2VudGllcnQgLS0KbGF1dCBrYWtlbG5kLCBzaWNoIGdlZ2Vuc2VpdGlnIHVlYmVyIGRlbiBIYXVmZW4gZmxhdHRlcm5kIHVuZCB6dW0gVGVpbCBiZXJlaXRzCmtvcGZsb3M/CgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBmbHVjaHRyaWNodHVuZyAoV3VyemVsLCAyMC4gTWFyIDE5OTgsIDIxOjMxOjEwKToKfiMhIHJuPUdyaW1tYm9ybiBydD04OTAzODQ3ODkgcmc9c2NobWFycm4KfiMhIHRpZD04ODk0MzUyMzUKYWVoLCB3ZW5uIG1pciBlaW4gcGhpbG9sb2dlIGVyemFlaGx0LCBkYXNzIGRldXRzY2ggdW5kIHdhbGlzaXNjaCBwcmFrdGlzY2gKZGllIHNlbGJlIHNwcmFjaGUgc2luZCwgZnVlaGxlIGljaCBtYWwgbmFjaCwgb2IgZXIgZmllYmVyIGhhdC4gZ2FueiBwcmFrdGlzY2gKaXN0IHp1bSBiZWlzcGllbCBlaW4gdW50ZXJzY2hpZWQ6IGRldXRzY2ggdmVyc3RlaGUgaWNoLCB3YWxpc2lzY2ggbmljaHQuIGVzCmdpYnQgc2ljaGVyIG5vY2ggZWluZSBtZW5nZSBhbmRlcmUgdW50ZXJzY2hpZWRlLCBhYmVyIGRlciBpc3QgZnVlciBtaWNoIGRlcgphdWZmYWVsbGlnc3RlLi4uCgpkYXNzIHdlbmlnZSBsZXV0ZSBlaW5lbSBjaGlydXJnZW4gcmVpbnJlZGVuIHdvbGxlbiwga29lbm50ZSBldHdhcyBkYW1pdCB6dQp0dW4gaGFiZW4gZGFzcyBtYW4gaWhuZW4gdmllbGxlaWNodCBtYWwgdW50ZXIgZGFzIG1lc3NlciBnZXJhZXQuIGFuc29uc3Rlbgp2ZXJ6YXBmZW4gZGllIGdlbmF1IHNvIGVpbmVuIGJsb2Vkc2lubiB3aWUgcHN5Y2hvbG9nZW4uIHp3ZWkgYWVyenRlLCBkcmVpCm1laW51bmdlbi4KCnd1cnplbCAobGVybnQgZ3JhZCBiYXlyaXNjaCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMyOiBmbHVjaHRyaWNodHVuZyAoQWNyaW1vbiwgMjAuIE1hciAxOTk4LCAyMTozNjo1NCk6Cn4jISBybj1XdXJ6ZWwgcnQ9ODkwNDI1ODcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg5NDM1MjM1Cldlbm4gc2ljaCBudXIgZGllIFdvcnRzdGFlbW1lIHVudGVyc2NoZWlkZW4sIGplZG9jaCBkaWUgR3JhbW1hdGlrIGFlaG5saWNoIGlzdAp1bmQgZGllIEF1c3NwcmFjaGUgYWVobmxpY2ggaXN0IChuaWNodCBzbyAic29waGlzdGljYXRlZCIgd2llIGltIEVuZ2xpc2NoZW4pLApkYW5uIHNpbmQgbWVpbmVyIE1laW51bmcgbmFjaCBkaWUgU3ByYWNoZW4gdGF0c2FlY2hsaWNoIGFlaG5saWNoIHp1ZWluYW5kZXIsCmF1Y2ggd2VubiBpY2ggbnVyIGVpbmUgZGF2b24gdmVyc3RlaGUuCkltIFVlYnJpZ2VuIHdhciBpY2ggbWFsIGluIFdhbGVzIHVuZCBrb25udGUgZGllIEJlZGV1dHVuZyBlaW5pZ2VyCmdlc2NocmllYmVuZXIgU2FldHplIGR1cmNoYXVzIGVycmF0ZW4sIG9id29obCBpY2ggbmllIHdhbGlzaXNjaCBnZWxlcm50IGhhYmUuCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh5ZHJhIGVpbm1hbCBhbmRlcnMuLi4gKFRoZXJpbiwgMjEuIE1hciAxOTk4LCAwMDoxNDowMCk6CkRpZSBIeWRyYS4gICAgICAgICAgICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLiAgICAgICBFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLiAgICAgICBFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLiAgICAgICBFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLiAgICAgICBFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLiAgICAgICBFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLiAgICAgICBFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLiAgICAgICBFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLiAgICAgICBFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLiAgICAgICBFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLiAgICAgICBFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLiAgICAgICBFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLiAgICAgICBFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLiAgICAgICBFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLiAgICAgICBFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLiAgICAgICBFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgRWluIEtvcGYgZGVyIEh5ZHJhLiAKCldlbm4gc2ljaCBNYWdpZXIgYW4gZGVyIEh5ZHJhIHZlcnN1Y2hlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IGZsdWNodHJpY2h0dW5nIChMdWcsIDIxLiBNYXIgMTk5OCwgMDE6MjA6NDYpOgp+IyEgcm49V3VyemVsIHJ0PTg5MDQyNTg3MCByZz1zY2htYXJybgp+IyEgdGlkPTg4OTQzNTIzNQpBbHNvIFd1cnplbCwKCgpzYWcvc2NocmVpYjogS3ltcmlzY2gsIHdlbm4gRHUgZGllIExhbmRlc3NwcmFjaGUgdm9uIFdhbGVzIG1laW5zdC4KCktlbHRvbG9naXNjaApsdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBmbHVjaHRyaWNodHVuZyAoVGlnZXJrcmFsbGUsIDIyLiBNYXIgMTk5OCwgMTk6NTM6MjUpOgp+IyEgcm49TmFzaW0gcnQ9ODkwMzQ2NDY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODg5NDM1MjM1CnNvbGx0ZSBkYXMgbmljaHQgc3RhdHQgJ21sdCcgZWhlciAnc2xic3RsdCcgaGVpc3Nlbj8KCgo7KQoKVGdya3JsbCA4KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHJveXF1ZXN0ZS4uLiAoVGhlcmluLCAyMy4gTWFyIDE5OTgsIDAyOjEyOjU5KToKW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgRG90dGVyYmFydApbVG9kOkxhcnNdIHVtZ2VicmFjaHQuIDAwOjMyOjE1CltCZWlsZWlkOlRoZXJpbl0gdXBzPyAwMDozMjoyNQpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBEb3R0ZXJiYXJ0CltUb2Q6TGFyc10gdW1nZWJyYWNodC4gMDA6NDU6NDYKW0JlaWxlaWQ6VGhlcmluXSAyOjAgMDA6NDU6NTUKW0JlaWxlaWQ6U2lsdmFdIFdhYWVlaCEgRG90dGVyYmFydCwgQmVpbGVpZCA6Jz0gPDAwOjQ2OjIxPgpbQmVpbGVpZDpEb3R0ZXJiYXJ0XSBobW0gaWNoIGhhYiBkb2NoIGdlc3VuZ2VuIDooIGRhcyB6ZWlndCB3aWVkZXIgZGFzIHBpcmF0ZW4KW0JlaWxlaWQ6RG90dGVyYmFydF0gbnVyIGdyb2VsZW4ga29lbm5lbiAwMDo1MDozMgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBEb3R0ZXJiYXJ0CltUb2Q6TGFyc10gdW1nZWJyYWNodC4gMDA6NTk6NDEKW0JlaWxlaWQ6VGhlcmluXSAzOjAgMDA6NTk6NDcKW0JlaWxlaWQ6VGlsbHldIGxhbmdzYW0gd2lyZHMga29taXNjaCAwMDo1OTo1MwpbQmVpbGVpZDpKYW1hbFNraV0gaGFzdCBkdSBuZSBBbGxlcmdpZT8gMDA6NTk6NTcKW0JlaWxlaWQ6VGhlcmluXSBkYSBzY2hlaW50IGVyIGV0d2FzIGdydW5kc2FldHpsaWNoIGZhbHNjaCB6dSB2ZXJzdGVoZW4KW0JlaWxlaWQ6VGhlcmluXSAwMTowMDowOQpbQmVpbGVpZDpHYXN0MV0gZGFzIHdhciAxMDAlIGRpZSByaWNodGlnZSBwYXJ0aXR1ciB1bmQgaWNoIEhBQkUgZ2VzdW5nZW4gOigKW0JlaWxlaWQ6R2FzdDFdIDAxOjAwOjM5CltCZWlsZWlkOlRpbGx5XSBpY2ggc2FnIG51ciB0cm95LXF1ZXN0Li4uIDAxOjAxOjAxCltCZWlsZWlkOkdhc3QxXSBpY2ggSEFTU0UgdHJveSAwMTowMToxNQpbQmVpbGVpZDpKYW1hbFNraSBncmluc3QgVGlsbHkgYW4uIDAxOjAxOjE3XQpbQmVpbGVpZDpLbnVydF0gZGFzIGhhc3QgZHUgc2Nob2VuIGdlc2FndC4uLiAwMTowMToxNwpbQmVpbGVpZDpUaGVyaW4gdmVyc3VjaHQgc2ljaCB6dSBiZWhlcnJzY2hlbiwgbXVzcyBhYmVyIGRhbm4gZG9jaCBsYXV0Cmxvc2xhY2hlbi4gMDE6MDE6MjVdCltCZWlsZWlkOlRpbGx5IGtpY2hlcnQgMDE6MDE6MzNdCltCZWlsZWlkOkdhc3QxXSBpY2ggZ2VoIGRhIG5pY2h0IG1laHIgcmVpbiEgaWNoIG11c3MgamV0enQgd2llZGVyIDYwMDAwMCBlcHMKW0JlaWxlaWQ6R2FzdDFdIHNhbW1lbG4gdW0gYXVmc3RlaWdlbiB6dSBrb2VubmVuIChwaXJhdGVuIGJyYXVjaGVuIGRhcykgLS0+CltCZWlsZWlkOkdhc3QxXSBtZWluZSBhdXNydWVzdHVuZyA6KCBhYmVyIGRpZSBpc3QgZWdhbCEsIGdydW1tZWwsIGZsdWNoICcjKj8lCltCZWlsZWlkOkdhc3QxXSAwMTowMjoyOQpbQmVpbGVpZDpHYXN0MV0gdW5kIHdhZWhyZW5kIGRlciB0b2Rlc3NlcXVlbnogc2luZyBtYW4gYXVjaCBub2NoIHdlaXRlciwgb2gKW0JlaWxlaWQ6R2FzdDFdIGdvdHQgMDE6MDI6NTUKW0JlaWxlaWQ6VGhlcmluXSBkYXMgaXN0IGRldm90aW9uIHp1IHNlaW5lciBhcmJlaXQgMDE6MDM6MTMKW0JlaWxlaWQ6R2FzdDFdIGljaCBoYXNzZSBzaW5nZW4sIGljaCBlcnphZWhsIGxpZWJlciBzZWVtYW5uc2dhcm4gMDE6MDM6NDkKW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgRnJlb2xvIHVtZ2VicmFjaHQuCltUb2Q6TGFyc10gMDE6MzQ6NTgKW0JlaWxlaWQ6VGlsbHkga2FubiBzaWNoIGVpbiBsYWNoZW4gbmljaHQgdmVya25laWZlbiAwMTozNToxMl0KW0JlaWxlaWQ6S251cnRdIHVwcyAwMTozNToxNApbQmVpbGVpZDpEb3R0ZXJiYXJ0XSBkYXMgd2FyIERVTU1IRUlUIGtlaW4gQkVJTEVJRCBWRVJESUVOVCEhIDAxOjM1OjIyCltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIEZyZW9sbyB1bWdlYnJhY2h0LgpbVG9kOkxhcnNdIDAxOjQyOjIyCltCZWlsZWlkOlRpbGx5XSAqbGFjaCogMDE6NDI6MjgKW0JlaWxlaWQ6TGV2XSBCZWlsZWlkLiAwMTo0MjozNApbQmVpbGVpZDpKYW1hbFNraV0gaGEhIERpZSBQZWl0c2NoZSBoZXIhLiA7KSkgMDE6NDI6MzQKW0JlaWxlaWQ6VGhlcmluXSBGVUVORiB6dSBudWxsIDAxOjQyOjQwCltCZWlsZWlkOlRhcmluYV0gaWNoIGdlaCBtYWwga3VyeiBuZSBwZWl0c2NoZSBvcmdhbmlzaWVyZW4uIDAxOjQyOjUyCltCZWlsZWlkOkdhc3QxXSBzdGVoZSBnbGVpY2ggYW0gc2FuZHRpZ2VyLCBwYWNrdCBkaWUgcGVpdHNjaGVuIGF1cyEgbWFuIGthbm4KW0JlaWxlaWQ6R2FzdDFdIGRlbiB3ZWcgbmljaHQgcnVlY2t3YWVydHMgZ2VoZW4sIG9obmUgZXJuZXV0IHp1IHNpbmdlbiEKW0JlaWxlaWQ6R2FzdDFdIDAxOjQzOjE2CgpEYW5hY2ggd3VyZGUgZXMgcnVoaWcuLi4gYWxsZXJkaW5ncyBob2VydGUgaWNoIGF1Y2ggYXVjIC1iIG5peCBtZWhyIDotKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaGVpc3MgZGFlbW9uaXNjaGUgRmVtaW5pc3RlbiEgKEx1ZywgMjMuIE1hciAxOTk4LCAyMzozOTowOCk6CgpbVHJ2ZXM6THVnXSBGcmF1ZW4gaW4gZGllIEtsZXJpa2VyZ2lsZGUhCkRlciBEYWVtb24gZ2lidCBEaXIgZWluZSBPaHJmZWlnZS4KClNvd2FzLgpGaWRLRwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvdGUgcmVkZW4gZG9jaC4uLiAoSGFuZ292ZXIsIDI1LiBNYXIgMTk5OCwgMTQ6MzI6MzMpOgpEdSBuaW1tc3QgZWluZW4gV3VyZnN0ZXJuIGluIGRpZSBIYW5kIHVuZCB3aXJmc3QgaWhuIG5hY2ggZWluZW0gT3JrcHJpZXN0ZXIuCiAgRGVpbiBXdXJmc3Rlcm4gc2NobGFlZ3QgZGVtIE9ya3ByaWVzdGVyIGZhc3QgZGVuIEtvcGYgYWIuCkRlciBPcmtwcmllc3RlciBmYWVsbHQgdG90IHp1IEJvZGVuLgpEdSBoYXN0IGpldHp0IDE5NCBMZWJlbnNwdW5rdGUgdW5kIDEwOSBLb256ZW50cmF0aW9uc3B1bmt0ZS4KRGVyIFByaWVzdGVyIHNhZ3Q6IEhhbGxvLCBIYW5nb3Zlci4KClNhY2hlbiBnaWJ0cy4uLgoKLUhhbmdvdmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYSBoYXQgamVtYW5kIGVpbmVuIFJ1ZiB6dSB2ZXJ0ZWlkaWdlbi4uLiAoWWVuZGksIDI2LiBNYXIgMTk5OCwgMTg6NTk6NTIpOgoKRHUgaGVpc3N0IFJvY2h1cyBhdXMgZGVyIEZlcm5lIHdpbGxrb21tZW4uCj4gUm9jaHVzIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRHUgdGVpbHN0IFJvY2h1cyBtaXQ6IER1IF9rbnVkZGVsc3RfPz8/Cj4gUm9jaHVzIHRlaWx0IERpciBtaXQ6IHNvcnJ5LCBoYWJlIHdhcyB2ZXJnZXNzZW4uLi4KPiBSb2NodXMga251ZGRlbHQgRGljaCBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuIGF1cyBkZXIgRmVybmUuCgoKQXVhYWEuLi4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEpldHp0IG11c3MgaWNoIG1pciBtYWwgTHVmdCB2ZXJzY2hhZmZlbiAoR2VsZCAmIFNrcmlwdGUpIChDYXR3ZWF6bGUsIDI2LiBNYXIgMTk5OCwgMjE6NDk6NTkpOgp+IyEgb249QmFua3p3ZWl0aWUgb3Q9ODkwOTQ0NTgxIG9nPWFsbGdlbWVpbmVzCn4jISBybj1TaGFubmFyYSBydD04OTA0NzAyMDQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04OTA0NzAyMDQKSW1tZXIgaGFja2VuIGFsbGUgYXVmIG1pciBydW0gLi4uIAoKQmFua3p3ZWl0aWUsIGZpbmRldCBkYXNnYXIgbmljaHQgbHVzdGlnLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1Zmdlc2NobmFwcHQuLi4gKEFuYXRvbCwgMzAuIE1hciAxOTk4LCAwMDozNjowMCk6CgpTb25udGFnLCBnZWdlbiAxMSBVaHIuLi4KUUlURVNTOiAoQ3JpdHRlciBiZWNpcmNlbmQgYW5zdHJhaGxlbmQpIEZydWVobGluZy4uLi4hCkNSSVRURVI6ICh1bmdlaGFsdGVuKSBTb2xsIGljaCBEaXIgdWViZXIgZGllIFNjaHVsdGVyIGtvdHplbj8KCldvIGhhYmUgaWNoIG51ciBtZWluZSBMb2dmaWxlcyBoaW4uLi4KQW5hdG9sIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVmZ2VzY2huYXBwdC4uLiAoSUkpIChBbmF0b2wsIDMwLiBNYXIgMTk5OCwgMDA6NDc6MjApOgoKV2FlaHJlbmQgZWluZXMga3JlYXRpdmVuIE1vbWVudGVzLi4uCkxVRzogRXMgc29sbHRlIEdpbGRlbmZhZWhpZ2tlaXRlbiBnZWJlbiwgZGllIF9tYWVubmxpY2hlbl8gU3BpZWxlcm4KTFVHOiB2b3JiZWhhbHRlbiBzaW5kLiAoc2NoYXV0IEJvaW5nIGFuKQpCT0lORzogKG5pY2tlbmQpIEphLCB1bmQgZnVlciB3ZWlibGljaGUgYXVjaDoga29jaGVuLCBzdHJpY2tlbiwgbmFlaGVuLi4uCgpVdWlqZWggOikgCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhdWZnZXNjaG5hcHB0Li4uIChJSSkgKEx1ZywgMzAuIE1hciAxOTk4LCAwMToxNjowNik6Cn4jISBybj1BbmF0b2wgcnQ9ODkxMjExNjQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkxMjExNjQwCgpIbSwKCmljaCBtdXNzIGVuZGxpY2ggZWluZSBCb2luZyBTdGF0dWUgaW4gbWVpbmVtIEhhdXMgZXJyaWNodGVuLgoKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGF1Zmdlc2NobmFwcHQuLi4gKElJKSAoVGFyaW5hLCAzMC4gTWFyIDE5OTgsIDA0OjAxOjE4KToKfiMhIHJuPUx1ZyBydD04OTEyMTMzNjYgcmc9c2NobWFycm4KfiMhIHRpZD04OTEyMTE2NDAKbHVnIHNjaHJpZWI6IGljaCBtdXNzIGVuZGxpY2ggZWluZSBCb2luZyBTdGF0dWUgaW4gbWVpbmVtIEhhdXMgZXJyaWNodGVuLgoKSWNoIG11c3MgZGFzIGF1Y2ggdHVuLiBJY2ggZGFyZiBudXIgbmljaHQgdmVyZ2Vzc2VuLCBkaWUgWmllbHNjaGVpYmUgYXVmCmRhcyBHZXNpY2h0IHp1IG1hbGVuLgoKVGFyaW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBSRSBQb2xpemVpc3RhYXQgSUkgKENhdHdlYXpsZSwgMzAuIE1hciAxOTk4LCAxMzoyNjoyMCk6Cn4jISBvbj1LZXkgb3Q9ODkxMjQwMTI1IG9nPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHJuPUx1ZyBydD04OTEyMDYzMTUgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTg5MTAyOTYwNgpMVUchCkR1IGFscyB2b3JzdGFuZCBkZXMgVmVyZWlucyB6dXIgUmVpbmhhbHR1bmcgZGVzIE11ZHMgLi4uLiB1bmQgZGFubiBzbyBlaW4KQXJ0aWtlbCAuLi4gbWl0IGxhdXRlciB6ZW5zaWVydGVuIFdvZXJ0ZXJuID07KQoKS2V5IGlzdCBiaXR0ZXIgZW50dGFldXNjaHQgdW5kIGRlbmt0IHVlYmVyIHNlaW5lbiBhdXN0cml0dCBuYWNoID07KSkpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2Nob24ga2xhci4uLiAoVGlsbHksIDMxLiBNYXIgMTk5OCwgMDA6MTM6MzApOgpbQWxsZ2VtZWluOk92ZXJsb3JkXSBobW1tIGlzdCBkYXMgZWluIEJ1Zz8gSW4gZGVyIERyYWtvbmllcnNwZWx1bmtlIGthbm4gaWNoCltBbGxnZW1laW46T3ZlcmxvcmRdIGRlbiBEcmFrb25pZXIgU3BlemlhbCBuaWNodCBraXBwZW4uLi4KW0FsbGdlbWVpbjpTdGluZ10gZGFzIGlzdCBuZSBtb3Jnb3RoLXN5bnRheCA6CltBbGxnZW1laW46R2xvaW5zb25dIElzc24gRmVhdHVyZSA7LSkKW0FsbGdlbWVpbjpTdGluZyBncmluc3RdCltBbGxnZW1laW46U3RpbmddIGdlbmF1LCB3ZWlsIGJlaSBNb3Jnb3RoIGdpYnRzIGtlaW5lIEJ1Z3MgOikKW0FsbGdlbWVpbjpUaGVyaW4gbmlja3RdCltEZWJ1ZzpNb3Jnb3RoXUZlaGxlcjogIkFyZ3VtZW50cyB0byA+IGRvbid0IG1hdGNoIiwgT2JqZWt0Ogoqc2NobmlwcCogCmVpbmlnZSBEZWJ1ZydzIHNwYWV0ZXIuLgpbQWxsZ2VtZWluOk92ZXJsb3JkIGFyZ2x0IGZ1ZXJjaHRlcmxpY2hdCgpuYWphLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUkUgUG9saXplaXN0YWF0IElJIChMdWcsIDMxLiBNYXIgMTk5OCwgMDA6MzU6NTApOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTg5MTI1NzE4MCByZz1zY2htYXJybgp+IyEgdGlkPTg5MTAyOTYwNgpIdWNoIEtleSwKCnNlaXQgd2FubiBiaXN0IER1IGRyaW4/IEFjaGphLCBzdGltbXQgamEuLi4KQXVzdHJpdHQgZ2lidCBlcyBuaWNodCwgbnVyIFNlbGJzdGxvZXNjaHVuZy4uLgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoVGVkZHksIDMxLiBNYXIgMTk5OCwgMTU6NTg6MzApOgpBdWYgdmllbGZhY2hlbiBXdW5zY2ggZWluZXMgZWluemVsbmVuIDspCgpEYXMgYWJzb2x1dGUgTmljaHRzLiAKW0RyZWFtdGVhbTpdIEtleSBkZXIgdGFwcHNpZ2UgdW5kIGxhbmdzYW1lIEJlaHVldGVyIHZvbiBOZXNhamEuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB6dXJ1ZWNrLgoKW1RydmVzOlNjaG9rb10gSGV5IFRlZGR5LCBEdSBrYW5uc3QgZG9jaCBiZXN0YWV0aWdlbiwgZGFzcyBLZXkgaGV1dGUgYmVpbQpbVHJ2ZXM6U2Nob2tvXSBFcnppa2FtcGYgd2FyLCBvZGVyPyA8MTU6NDQ6NDc+CltUcnZlczpUZWRkeV0gTG9nbyA8MTU6NDQ6NTk+CltUcnZlczpUZWRkeV0gV2lyIGhhYmVuIHVucyB0aWVyaXNjaCBnZWFlcmdlcnQsIHdlaWwga2VpbiBkcml0dGVyIGRhYmVpIHdhcgpbVHJ2ZXM6VGVkZHldIDwxNTo0NToxMT4KW1RydmVzOktleV0gbWlyIGdsYXVidCBzaWUgbWVociAsKSA8MTU6NDY6MTI+CgoKVGVkZHkKU0NOUiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKEtleSwgMzEuIE1hciAxOTk4LCAxNjoyMTo0NSk6Cn4jISBybj1UZWRkeSBydD04OTEzNTI3MTAgcmc9c2NobWFycm4KfiMhIHRpZD04OTEzNTI3MTAKSG1tIGRlciBhdXNzY2huaXR0IG1pdCAiRGFzIE5pY2h0cyIgd2llIGhhc3N1IGRlbiBkZW5uIGdlc2VoZW4/IC4pCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRkxXIChUZWRkeSwgMzEuIE1hciAxOTk4LCAxNjo0MTozMCk6Cn4jISBybj1LZXkgcnQ9ODkxMzU0MTA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkxMzUyNzEwCkRlciBpc3QgZWNodCwgZWluZmFjaCBpbiBkZXIgQXJlbmEgc2NoYXUgZWluZ2ViZW4uCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRkxXIChLZXksIDMxLiBNYXIgMTk5OCwgMTY6NDU6MjMpOgp+IyEgcm49VGVkZHkgcnQ9ODkxMzU1MjkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkxMzUyNzEwCipsYWNoKgpEYXMgc2luZCBtaXIgV3Vyc3RjaGFvdGVuIC4uLi4uIERhbWl0IGhhc3QgRHUgRGljaCB2ZXJyYXRlbjspCldlbm4gbWFuIGRhIHNjaGF1IG1hY2h0IGJla29tbXQgbWFuIGVpbmVuIGNhIDUgWmVpbGVibiBsYW5nZW4gVGV4dCAuLi4gdW50ZXIKYW5kZXJlbSBtaXQgZWluZXIgYmVzdGltbXRlbiBBbmdhYmUgOikKClNvIGhhYiBpY2ggZXMgaW0gS29wZiB1biBzbyBpc3NlcyA7KQoKS2V5IGVudGtyYWVmdGV0IGV1Y2ggbWFsIHdpZWRlciA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRkxXIChUZWRkeSwgMzEuIE1hciAxOTk4LCAxNzowNzowNik6Cn4jISBybj1LZXkgcnQ9ODkxMzU1NTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkxMzUyNzEwCldlbm4gZHUgaW0gS3Vyem1vZHVzIGluIGRlbiBSYXVtIHZvciBkZXIgQXJlbmEgZ2Voc3QsIHNpZWh0IGRhcyBkYSBnZW5hdSBzbwphdXMuCkRhcyB3YXJzLCB3YXMgaWNoIGVpZ2VudGxpY2ggbWVpbnRlLgoKVGVkZHksIFd1cnN0Y2hhb3QgYWJlciBuaWNodCB2b2VsbGlnIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWlubWFsIGZ1ZXIgTHVnLiAoSGFuZ292ZXIsIDMxLiBNYXIgMTk5OCwgMjM6MDI6MDQpOgpbQWxsZ2VtZWluOkx1Z10gU0NocmVpYnQgc29mb3J0IGRpZSBNUEEgdm9sbAoKR3JpbW1ib3JuLCB1ZWJlcm5laG1lbiBTaWUuLi4hCgotSGFuZ292ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1laHIgYXJ0aWtlbCAoS2FydG9mZmVsLCAzMS4gTWFyIDE5OTgsIDIzOjAyOjIwKToKTHVnIHdvbGx0ZSBtZWhyIEFydGlrZWw6CgpEZXIgZGllIGRhcyBlaW5lciBlaW5lIGVpbmUKCkthcnRvZmZlbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1laHIgYXJ0aWtlbCAoQmFicywgMzEuIE1hciAxOTk4LCAyMzowMzoyNik6Cn4jISBybj1LYXJ0b2ZmZWwgcnQ9ODkxMzc4MTQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkxMzc4MTQwCmF1Y2ggZnVlciBMVUc6IExpZXMgaGFsdCBtYWwgZGllIHJ1YnJpayBNdWVsbC4KRGEgbGFuZGV0IGRhcyBlaCBiYWxkLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWVociBhcnRpa2VsIChMdWcsIDMxLiBNYXIgMTk5OCwgMjM6MDY6MDIpOgp+IyEgcm49QmFicyBydD04OTEzNzgyMDYgcmc9c2NobWFycm4KfiMhIHRpZD04OTEzNzgxNDAKCkRhbmtlLAoKSWhyIHNlaXQgc28gZ3V0IHp1bSBtaXIgOykKCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWVociBhcnRpa2VsIChHcmltbWJvcm4sIDMxLiBNYXIgMTk5OCwgMjM6Mjc6MTYpOgp+IyEgcm49THVnIHJ0PTg5MTM3ODM2MiByZz1zY2htYXJybgp+IyEgdGlkPTg5MTM3ODE0MApEYXMgdGFldXNjaHQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZldHRuYXBmIChIcmVpZG1hciwgIDEuIEFwciAxOTk4LCAxMTowNjowNSk6CkF1ZiBkZXIgTUctUGFydHkgaW4gRG9ydG11bmQsIFNhbXN0YWcgZnJ1ZWhlciBuYWNobWl0dGFnLgpTaGFreSwgWmVua2EsIFZlcmVuYSwgTWluYmxhZGUsIGVpbmlnZSBhbmRlcmUgdW5kIG1laW5lIFdlbmlna2VpdCBzdGVoZW4gZXR3YXMKbHVzdGxvcyB2b3IgZGVyIFR1cm5oYWxsZS4gWmVua2EgKFd1cnplbCBpbiBkZXIgRmVybmUgYW5zY2hhdWVuZCkgZnJhZ3Q6IGlzdApXdXJ6ZWwgZWlnZW50bGljaCBlaW4gTWFubiBvZGVyIGVpbmUgRnJhdSwgZGVyIFN0aW1tZSBuYWNoIGtvZW5udGUgZXMgZWluIE1hbm4Kc2Vpbi4uLgpWZXJlbmFzIEFudHdvcnQ6IGRhcyBpc3QgZWluIE1hbm4sIE1FSU4gTWFubiEKCipwbGF0c2NoKiBkYSBrb25udGUgWmVua2EgaW4gZGVuIFNjaHdpbW1iZWNrZW4gZ3Jvc3NlbiBGZXR0bmFwZiBmYWxsZW4KaG9lcmVuLi4uc29ycnkgWmVua2EsIGFiZXIgZGVuIG11c3N0ZSBpY2ggZWluZmFjaCBtYWwgbG9zd2VyZGVuCgpIcmVpZG1hcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZldHRuYXBmIChLZXksICAxLiBBcHIgMTk5OCwgMTE6MDc6MTEpOgp+IyEgcm49SHJlaWRtYXIgcnQ9ODkxNDIxNTY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkxNDIxNTY1Cld1cnplbCBpc3QgZWluZSBGcmF1ISBGaW5nZXIgaWhuIGFlZWVlZWhoaGhoIHNpZSBkb2NobWFsICwpCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbWZyYWdlIChzdHJlbmcgd2lzc2Vuc2NoYWZ0bGljaCkgKENhdHdlYXpsZSwgIDEuIEFwciAxOTk4LCAxMToyNzo1NSk6Cn4jISBvbj1HbG9pbnNvbiBvdD04OTEzNTU4NTQgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUthbGkgcnQ9ODkxMzM5NjAxIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODkxMzM5NjAxCkhtIC4uLiB3ZWlzcyBuaWNodCwgd2llIGxhbmdlIGRlciBjYWxsX291dCBmdWVyIGRlbiBKb2ludCBoaWVyIGxhZXVmdC4KQW5zb25zdGVuIGNhLiAxMCBTZWt1bmRlbiAuLi4gWmlnYXJldHRlIG5laG0sIHp1IE11ZWxsZWltZXIgZ2VoLCBlbnRzb3JnLgoKR2xvaW4gLi4uIHJhdWNodCBhbHMgWndlcmcgbnVyIFBmZWlmZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbWZyYWdlIChzdHJlbmcgd2lzc2Vuc2NoYWZ0bGljaCkgKENhdHdlYXpsZSwgIDEuIEFwciAxOTk4LCAxMToyODoxNik6Cn4jISBvbj1DYXR3ZWF6bGUgb3Q9ODkxNDIyODc4IG9nPW11ZWxsCn4jISBvbj1adWVyaWxldSBvdD04OTEzNTYwOTcgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUthbGkgcnQ9ODkxMzM5NjAxIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODkxMzM5NjAxCkhpLApBbHNvIFppZ2dpcyByYXVjaGVuIHB1ciB0dSBpY2ggamEgbmljaHQsIGljaCBrb2VubnQgZGlyIGhvZWNoc3RlbnMgc2FnZW4gd2llCmxhbmdlIGljaCBicmF1Y2hlIHVtIGF1cyBlaW5lciAwOC8xNSBaaWdnaSBlaW4gZ2VuaWFsZXIgSm9pbnQgenUgbWFjaGVuID06KQpVbmQgd2llbGFuZ2UgaWNoIGRlbiB6dW0gcmF1Y2hlbiBicmF1Y2hlIG11c3MgaWNoIHN0b3Blbiwgc2NobGllc3NsaWNoIHNvZWd0Cm1hbiBlaW5lIGdvZXR0bGljaGVzIEdlbnVzc21pdHRlbCB3aWUgZWluIEpvaW50IGRvY2ggbmljaHQgaW4gMi0zbWluIHJ1bnRlcgo9OikKClRzY2hhdSBBbGFpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZldHRuYXBmIChUZWRkeSwgIDEuIEFwciAxOTk4LCAxMjo1NToxMCk6Cn4jISBybj1IcmVpZG1hciBydD04OTE0MjE1NjUgcmc9c2NobWFycm4KfiMhIHRpZD04OTE0MjE1NjUKT2J3b2hsIGRpZXNlIEZyYWdlIG5pY2h0IHp1bSBlcnN0ZW4gTWFsIGF1ZnRhdWNodC4KClRlZGR5LCBpbW1lcm5vY2ggZ3JpbnNlbmQgd2VnZW4gZGVyIExldXRlLCBkaWUgaWhuIGZyYWd0ZW46IFdlciBpc3QgZGVubiBkaWUKbmViZW4gUHlybz8gKGF1ZiBkZW0gS29lbG5zdGFtbXRpc2NoKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmdyaW5zKiAoR2xvaW4sICAxLiBBcHIgMTk5OCwgMTc6MjA6NTMpOgo+IHcKRHUgdmVyc3VjaHN0IGVyZm9sZ2xvcywgbmFjaCBXZXN0ZW4genUgZ2VoZW4gdW5kIHZlcmxldHp0IERpY2ggZGFiZWkgYW4gZGVuCkRvcm5lbi4gV2FyIHdvaGwgZWluZSBzY2hsZWNodGUgSWRlZS4KZWluIHdpbnppZ2VyIFdvbHBlcnRpbmdlciB2ZXJzdWNodCwgbmFjaCBXZXN0ZW4genUgZ2VoZW4gdW5kIHJlbm50IG1pdCB2b2xsZXIKV3VjaHQgaW4gZGVuIERvcm5lbmJ1c2NoLiBEdSBrYW5uc3QgRGlyIGVpbiBHcmluc2VuIG5pY2h0IHZlcmtuZWlmZW4sIGFscyBlcgpsYXV0ICJBVUFBQUFBISEhIiBzY2hyZWl0LgoKR2xvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRmV0dG5hcGYgKFllbmRpLCAgMS4gQXByIDE5OTgsIDE5OjQxOjI0KToKfiMhIHJuPVRlZGR5IHJ0PTg5MTQyODExMCByZz1zY2htYXJybgp+IyEgdGlkPTg5MTQyMTU2NQoKV2FyIGRhcyBuaWNodCAiSG9sbGEsIHdlciBpc3QgZGVubiBkaWUgSHVlYnNjaGUgbmViZW4gUHlybz8iCip6d2lua2VyIFd1cnplbCBhbioKCihVbmQgd2llIHdhciBkYXMgbWl0IFNhdHp6ZWljaGVuIG5hY2ggd29lcnRsaWNoZXIgUmVkZT8pCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTbyBlaW4gWnVmYWxsISAoR3JpbW1ib3JuLCAgMS4gQXByIDE5OTgsIDIyOjA4OjEwKToKfiMhIG9uPUJlbnNvbm1hbSBvdD04OTE0NDMwOTUgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUJhcmFrIHJ0PTg5MTQzNzE5NiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg5MTI1NDAyOApBdXMgQmFyYWtzIEFydGlrZWw6Cgo+RGVyIEZlaGxlciBiZWkgZGVyIE1pdHRlbHdlcnRiZXN0aW1tdW5nIGxpZWd0IGJlaSBXdXJ6ZWwoQW56YWhsIGRlciBUZXN0cyksCgpLbGFyLCBkZXIgRmVobGVyIGxpZWd0IGltbWVyIGJlaSBXdXJ6ZWwgOikKCmouIEJlbnNvbm1hbQoKUC5TLiAtLS0+IHNjaG1hcnJuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGZXR0bmFwZiAoR3JpbW1ib3JuLCAgMS4gQXByIDE5OTgsIDIyOjE4OjQ5KToKfiMhIHJuPVllbmRpIHJ0PTg5MTQ1MjQ4NCByZz1zY2htYXJybgp+IyEgdGlkPTg5MTQyMTU2NQpXbyB3aXIgdm9uIEZldHRuYWVwZmVuIHJlZGVuOiBFaW4gQmVrYW5udGVyIHZvbiBtaXIgaGF0IG5ldWxpY2ggZWluZW0KUXVlcnNjaG5pdHRzZ2VsYWVobXRlbiAoaW4gZWluZW0gbXVkKSBnZXJhdGVuLCBqZW1hbmQgYW5kZXJlbSBkb2NoIG1hbAprcmFlZnRpZyBhdWYgZGllIEZ1ZXNzZSB6dSB0cmV0ZW4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMZXR6ZXIgQXVmcnVmIChHcmltbWJvcm4sICAxLiBBcHIgMTk5OCwgMjI6MjM6NDgpOgp+IyEgcm49S2FyaXMgcnQ9ODkxNDQ1MjkyIHJnPXRyZWZmZW4KfiMhIHRpZD04OTE0NDUyOTIKTWFjaHQgZGFzIGRvY2ggaW0gTG9ld2VuYnJhZXUuIERhcyBoYXQgd2VuaWdzdGVucyBub2NoIFRyYWRpdGlvbiBhbHMKVmVyZWluc2xva2FsLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKClVuZCBkYW1pdCBkaWUgdWVicmlnZW4gOTAlIGRlbiBXaXR6IGF1Y2ggdmVyc3RlaGVuOiBEb3J0IGhhdCBzaWNoIGRpZSBmcnVlaGUKTlNEQVAgZ2V0cm9mZmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChUaGVyaW4sICAyLiBBcHIgMTk5OCwgMDM6Mzg6MDEpOgpbU2VoZXI6RGllZGVyXSB3aWUga29tbSBpY2ggcmF1cywgd2VubiBpY2ggaWhtIGVpc3dlaWhlciBzY2h3aW1tZT8KKDEwIHNlayBzcGFldGVyKQpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBEaWVkZXIgdW1nZWJyYWNodC4KW0JlaWxlaWQ6VGVkZHldIGJlaWxlaWQgOi0oCltCZWlsZWlkOktudXJ0XSBCZWlsZWlkCltCZWlsZWlkOkx1Z10gSUNIIFNBRyBEQ09IIEVOREUKW0JlaWxlaWQ6QmVsZ2FyaWFkXSBESUVERVIhISEhISEhISEhIGFiZXIgZGVpbiB6ZXVnIGhvbHN0ZSBzZWxiZXIgd2llZGVyIHJhdXMKW1NlaGVyOlRoZXJpbl0gc28gei5iLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBMZXR6ZXIgQXVmcnVmIChLYXJpcywgIDIuIEFwciAxOTk4LCAxMDozMzo0MSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODkxNDYyMjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkxNDQ1MjkyCkljaCB3ZWlzcyBuaWNoLCB3YXMgRHUgaGFzdCwgR3JpbW1ib3JuLgpEaWUgS25laXBlIGdlaG9lcnQgZG9jaCBMb2V3ZW5icmFldS4KCkthcmlzLCBEZWluZW4gVGlwIHdhYWFhYWFhaGhuc2lubmlnIHRvbGwgZmluZGVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFtYW5kYSBpc3QgcGVydmVycyEgKEJlbnNvbm1hbSwgIDIuIEFwciAxOTk4LCAxMToxMjoxMik6CkdlcmFkZSBhdWYgZGVtIE9zdHdhbGw6CgpIaWVyIHRyaWZmdCBkZXIgT3N0d2FsbCBhdWYgZGllIEFrYWRlbWllc3RyYXNzZS4gRGVyIE9zdHdhbGwgZnVlaHJ0Cm5hY2ggU3VlZGVuIGJpcyB6dXIgTmFibGFmdXJ0LiBCZWlkZSBTdHJhc3NlbiBzaW5kIEhhdXB0dmVyYmluZHVuZ3NzdHJhc3NlbgpkZXIgRWJlbmUuIE5hY2ggTm9yZGVuIGdlaHQgZWluIFdlZyB3ZWl0ZXIuCkVzIGdpYnQgdmllciBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KQmVuc29ubWFtcyB3dXNjaGVsaWdlciB3aW56aWdlciBXb2xwZXJ0aW5nZXIuCkFtYW5kYSBkaWUgSHVyZS4KPiB3CkFtYW5kYSBzYWd0OiBIYWxsbyBCZW5zb25tYW0hCkFtYW5kYSBzYWd0OiBIYWxsbyBFaW4gd2luemlnZXIgd29scGVydGluZ2VyIQpBbWFuZGEgc2FndDogV2llIHdhZXJzIGRlbm4gbWl0IHVucywgS2xlaW5lcj8KCmouIEJlbnNvbm1hbSAoa29wZnNjaHVldHRlbG5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobmVsbGVyIGFscyBkaWUgUGxhdHRlIChMYXJpc3NhLCAgMi4gQXByIDE5OTgsIDExOjQxOjI2KToKSGloaSwKbWFuY2hlIFNwaWVsZXIgc2luZCBzY2huZWxsZXIgYWxzIGRhcyBNRyBlcmxhdWJ0LgppY2ggaGFiIGdyYWQgZWluIFRlaWxlIG1pdCB2b24gWGVyYSB2ZXJwYXNzdCB1bmQgc2llIGRhcmF1ZmhpbgonZ2VmaW5nZXJ0JzogZGFzIGVyc3RlIEVyZ2VibmlzIHdvbGx0IGljaCBlcnN0IG5pY2h0IGdsYXViZW4sIGFsc28KaGFiIGljaHMgbm9jaG1hbCB2ZXJzdWNodCA6LSkKCmZpbmdlciB4ZXJhCgpYZXJhIGlzdCBuaWNodCBhbndlc2VuZC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogMTQxLjIuMjMuNzMgW0RldXRzY2hsYW5kXS4KWnVsZXR6dCBhdXNnZWxvZ2d0OiBNaXQsIDI1LiBNYXIgMTk5OCwgMTI6NDg6MjcgKDdkIDIxOjQxOjU3KQpWb2xsZXIgTmFtZTogRW5nZWxjaGVuIFhlcmEgbGFlc3N0IHNpY2ggYWxsZSBaZWl0IGRlciBXZWx0IGdlYmVuClJhc3NlOiBFbGYsICBHaWxkZTogWmF1YmVyZXIsICBHZXNjaGxlY2h0OiB3ZWlibGljaApBbHRlcjogMzdkIDAxOjE1OjEwLCAgIFNwaWVsZXJsZXZlbDogNDAgKFNlaGVyaW4pLCAgIEdpbGRlbmxldmVsOiA2CkRhdHVtIGRlcyBlcnN0ZW4gTG9naW46IHZvciBkZW0gMTAuIE5vdiAxOTk1CkUtTWFpbC1BZHJlc3NlOiBub25lCkJpc2hlciBiZXJlaXRzIDEyIG1hbCBnZXN0b3JiZW4KUHJvamVrdDogSXMgYSBsb3ZlIGFsd2F5cyB3b3J0aCB0byBiZSBmaWdodGVkIGZvcj8KCmZpbmdlciB4ZXJhIAoKWGVyYSBpc3QgbmljaHQgYW53ZXNlbmQuClp1bGV0enQgZWluZ2Vsb2dndCB2b246IDE0My41MC4xNjkuMTEgW0dyYXo7IEF1c3RyaWFdLgpadWxldHp0IGF1c2dlbG9nZ3Q6IERvbiwgIDIuIEFwciAxOTk4LCAxMTozMDoyNiAoMDA6MDA6MjYpClZvbGxlciBOYW1lOiBUZXVmZWxjaGVuIFhlcmEgbXVzcyBzaWNoIGpldHp0IGVudHNjaGVpZGVuClJhc3NlOiBFbGYsICBHaWxkZTogWmF1YmVyZXIsICBHZXNjaGxlY2h0OiB3ZWlibGljaApBbHRlcjogMzdkIDAxOjI1OjU4LCAgIFNwaWVsZXJsZXZlbDogNDAgKFNlaGVyaW4pLCAgIEdpbGRlbmxldmVsOiA2CkRhdHVtIGRlcyBlcnN0ZW4gTG9naW46IHZvciBkZW0gMTAuIE5vdiAxOTk1CkUtTWFpbC1BZHJlc3NlOiBub25lCkJpc2hlciBiZXJlaXRzIDEyIG1hbCBnZXN0b3JiZW4KUHJvamVrdDogSXMgYSBsb3ZlIGFsd2F5cyB3b3J0aCB0byBiZSBmaWdodGVkIGZvcj8KCkxhcmkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2NobmVsbGVyIGFscyBkaWUgUGxhdHRlIChBbmFraW4sICAyLiBBcHIgMTk5OCwgMTE6NDI6NDUpOgp+IyEgcm49TGFyaXNzYSBydD04OTE1MTAwODYgcmc9c2NobWFycm4KfiMhIHRpZD04OTE1MTAwODYKTm9lIG5pY2h0IHNjaG5lbGxlciBhbHMgZGllIFBsYXR0ZS4gCgpBbmFraW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZWZ1bmRlbiEgKEhhbmdvdmVyLCAgMi4gQXByIDE5OTgsIDEzOjEyOjI4KToKTWFsIHdpZWRlci4uLgoKW0FiZW50ZXVlcjpLYXJpc10gRGVyIHBhc3MgaW4gZGVuIEtpbGdoYXJkcyBvaG5lIEF1c2dhZW5nZTogd2llIGtvbW10IG1hbiBkYQpbQWJlbnRldWVyOkthcmlzXSByYXVzPz8KRGVyIFRvdGVuZ3JhZWJlciBiZXN0ZWxsdCBlaW4gR2xhcyBab21iaWVibHV0LgpFaW4gT3JrIGphZ3QgRGljaCBuaWNodCBtZWhyLgpbVG9kOkxhcnNdIEVpbiBzY2hsaW1tZSBFcmZyaWVydW5nIGhhdCBnZXJhZGUgS2FyaXMgdW1nZWJyYWNodC4KCkltbWVyIG5vY2ggZGVyIGt1ZXJ6ZXN0ZSB1bmQgc2NobmVsbHN0ZSBXZWcuLi4KCi1IYW5nb3ZlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRmV0dG5hcGYgKElzaXMsICAyLiBBcHIgMTk5OCwgMTQ6MzM6NTUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg5MTQ2MTkyOSByZz1zY2htYXJybgp+IyEgdGlkPTg5MTQyMTU2NQpNaXIgaXNzIG1hbCB3YXMgYWhubGljaGVzIHBhc3NpZXJ0Li4uaWNoIGhhYiBtYWwgKG9obmUgSGludGVyZ2VkYW5rZW4pIGVpbmVuCkdlaGJlaGluZGVydGVuIG1pdDoKSGkhLCBuYSwgd2llIGdlaHRzPyAKYmVncnVlc3N0Li4uOigoKCgKCkhhYnMgYWJlciBlcnN0IGhpbnRlcmhlciBrYXBwaWVydCwgd2FzIGljaCBnZXNhZ3QgaGFiLi4uLgoKKnNjaGFlbSoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGZXR0bmFwZiAoVGlsbHksICAyLiBBcHIgMTk5OCwgMTQ6NTY6MzkpOgp+IyEgcm49SXNpcyBydD04OTE1MjA0MzUgcmc9c2NobWFycm4KfiMhIHRpZD04OTE0MjE1NjUKSWNoIHdhciBtYWwgbWl0IGVpbmVyIHF1ZXJzY2huaXR0c2dlbGFlaG10ZW4gRnJldW5kaW4gZWlua2F1ZmVuIHVuZCBkaWUgaXN0Cm1pciB0aWVyaXNjaCBhdWYgZGllIE5lcnZlbiBnZWdhbmdlbi4gQWxzbyBoYWIgaWNoIGlociBnZXNhZ3QgJ1NvLCBqZXR6dApoYWVsdHN0IGR1IGVuZGxpY2ggbWFsIGRlaW5lbiBNdW5kLiBEdSBnZWhzdCBtaXIgYXVmJ24gU2FjayEnCkRpZSB1bXN0ZWhlbmRlbiBMZXV0ZSBoYWJlbiBtaWNoIGFuZ2VzZWhlbiBhbHMgb2IgaWNoIGtsZWluZSBLaW5kZXIgZnJlc3Nlbgp3dWVyZGUsIHVudmVyc3RhZW5kbGljaCBzb3dhcy4gCkFscyBvYiBtYW4gc2ljaCBiZWhpbmRlcnRlbiBNZW5zY2hlbiBuaWNodCBub3JtYWwgZ2VnZW51ZWJlciB2ZXJoYWx0ZW4gc29sbC4uLgoKVGlsbHkgICphcmdsdC1Wb3J1cnRlaWxlLWFuKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTXVlbnplbiB3ZXJmZW4gKEtvYmF5YXNoaSwgIDIuIEFwciAxOTk4LCAxNTowMToxMik6Cj4gd2lyZiBtdWVuemVuCi05ODY5NTk3M3ggS29wZiB1bmQgMjA4NjE2MTUyOHggWmFobC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVXJsYXViPyAoWWVuZGksICAyLiBBcHIgMTk5OCwgMTg6MTI6NDYpOgp+IyEgcm49QWxpbmUgcnQ9ODkxNTI4MTQwIHJnPXNlaGVyLnVybGF1Ygp+IyEgdGlkPTg5MTUyODE0MApOZWluISBBbGluZSwgdHUncyBuaWNodCEKV2llIGtvZW5uZW4gd2lyIG9obmUgRGljaCB3ZWl0ZXJzcGllbGVuIQpEYXMgTVVEIHdpcmQgbmljaHQgZGFzc2VsYmUgc2VpbiEKCipzY2hsdWNoeiBoZW1tdW5nc2xvcyoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgogSW1tZXIgd2llZGVyIHNjaG9lbiwgdW50ZXIgZGVuIGVyc3RlbiB6dSBzZWluLi4uIChGcmV1bmQsICAyLiBBcHIgMTk5OCwgMTg6MzE6MzkpOgo+IGt3ZXIKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERvbiwgIDIuIEFwciAxOTk4LCAxNzoyOToyMSAoNiBUZWlsbmVobWVyKQoKTG9nb24uLi4uLi4uLi4uLi5zIExvZ29uLi4uLi4uLi4uLi4ucyBMb2dvbi4uLi4uLi4uLi4uLnMgTmViLi4uLi4uLi4uLi4uLi5TCkZlc3Rpbi4uLi4uLi4uLi4uUyBGcmV1bmQuLi4uLi4uLi4uLkUKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGZXR0bmFwZiAoUWl0ZXNzLCAgMi4gQXByIDE5OTgsIDE5OjU5OjA1KToKfiMhIHJuPUlzaXMgcnQ9ODkxNTIwNDM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkxNDIxNTY1CmFsc28gc29ycnksbSBhYmVyIGRhcyBpc3QgZWluIGdlYnJhZXVjaGxpY2hlciBhdXNkcnVjay4gd2VubiBlaW4KZ2VoYmVoaW5kZXJ0ZXIgZGFyYXVmIGFuc3ByaW5ndCB0dXQgZXIgbWlyIGxlaWQuIGljaCBmcmFnZSBtZWluZSBvbWEgYXVjaCAnd2llCmdlaHRzPycgdW5kIGRpZSBnZWh0IGdhciBuaWNodCBtZWhyLgoKUUkqKiBzY2h1ZXR0ZWx0IGRlbiBrb3BmCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXPyAoVGhlcmluLCAgMi4gQXByIDE5OTgsIDIwOjIzOjIwKToKCj4gW0FsbGdlbWVpbjpTdWdhYW5dIHVwcHMgZGFubiBicmF1Y2ggaWNoIGdsYXViZSBpY2ggaGlsZmUKCltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIFN1Z2FhbiB1bWdlYnJhY2h0LgoKRWluZGV1dGlnOiBqYS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBGZXR0bmFwZiAoU2lsdmFuYSwgIDIuIEFwciAxOTk4LCAyMDo0NDo0NCk6Cn4jISBybj1RaXRlc3MgcnQ9ODkxNTM2MzQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkxNDIxNTY1CkF1Y2ggZWluIHNjaG9lbmVyIEZldHRuYXBmOiBFaW5lbiBNb2hhbWVkYW5lciwgZGVyIHNpY2ggZ2VyYWRlIGdlbgpNZWtrYSB2ZXJuZWlndCBtaXQgJ2dydWVzcyBHb3R0JyB6dSBiZWdydWVzc2VuLi4uCgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEZldHRuYXBmIChRaXRlc3MsICAyLiBBcHIgMTk5OCwgMjE6MzY6MjgpOgp+IyEgcm49U2lsdmFuYSBydD04OTE1MzkwODQgcmc9c2NobWFycm4KfiMhIHRpZD04OTE0MjE1NjUKbnVuLCBpbiBtYW5jaGVuIHRlaWxlbiBkaWVzZXMgdW5zZXJlcyBsYW5kZXMgaXN0IGVzIGR1cmNoYXVzIHVlYmxpY2gsIHNpY2ggbWl0CmdydWVzcyBnb3R0IHp1IGJlZ3J1ZXNzZW4uIGFsc28gc2VoZSBpY2ggcGVyc29lbmxpY2gga2VpbmVuIGZldHRuYXBmIGRhYmVpLgptaWNoIGFscyBhdGhlaXN0ZW4gYmVncnVlc3NlbiBkaWUgamEgZ2VuYXVzby4KClFJKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEZldHRuYXBmIChFbWJlLCAgMi4gQXByIDE5OTgsIDIzOjA4OjAwKToKfiMhIHJuPVNpbHZhbmEgcnQ9ODkxNTM5MDg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkxNDIxNTY1CndpZXNvPwplciB2ZXJuZWlndCBpc2NoIGRvY2ggZ3JhZCB1bSBnb3R0IGFuenViZXRlbgp1bmQgaWhuIGF1ZiBkaWVzZSB3ZWlzZSB5dSAnZ3IidXNzZW4nLgoKc2VoIGljaCBrZWluIHByb2JsZW0gZGFiZWkuLi4KCmdydXNzLCBlTUJlZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEZldHRuYXBmIChHcmltbWJvcm4sICAzLiBBcHIgMTk5OCwgMTE6MDk6MzIpOgp+IyEgcm49RW1iZSBydD04OTE1NDc2ODAgcmc9c2NobWFycm4KfiMhIHRpZD04OTE0MjE1NjUKVmllbGxlaWNodCBwYXNzdCBpbiBkZW0gWnVzYW1tZW5oYW5nIGRpZXNlcjoKVm9yIGd1dCAxMDAwIEphaHJlbjoKIkhlaWwgSGl0bGVyISIKIkJpbiBpY2ggUHN5Y2hpYXRlcj8iCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEZldHRuYXBmIChZZW5kaSwgIDMuIEFwciAxOTk4LCAxMzo0NzoxMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODkxNTkwOTcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkxNDIxNTY1CkRhIGZhZWxsdCBtaXIgZWluZSBTY2h1bGFuZWtkb3RlIGVpbjogCk5ldW50a2xhZXNzbGVyIHp1IE1hdGhlbGVocmVyaW46ICJOYSwgYWxsZXMgZml0IGltIFNjaHJpdHQ/IgpNYXRoZWxlaHJlcmluICh6ZXJzdHJldXQpOiAiSmFqYSwgZXMgbGFldWZ0IHNvLi4uIgoKCllkVwoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcmVpdGFnICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhIChEaWVkZXIsICAzLiBBcHIgMTk5OCwgMTY6MTU6MDQpOgoKU28gZWluIFNjaG1hcnJuLCBkYXMgaGFldHRlIGljaCBhdWNoIHNvIGdld3Vzc3QsIHdhcyBmdWVyIGVpbiBXb2NoZW50YWcgaGV1dGUKaXN0IDopCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcmVpdGFnICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhIChNaWV6ZSwgIDMuIEFwciAxOTk4LCAxNjoxNjozMik6Cn4jISBybj1EaWVkZXIgcnQ9ODkxNjEyOTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkxNjEyOTA0CgpobW1tIG9iIEZyZWl0YWcgYXVjaCBhdWNoIDItdGlzIHZvbiBTYW1zdGFnIGJpcyBEb25uZXJzdGFnIGhhdD8KCk1pZXplCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZyZWl0YWcgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEgKEhhbmdvdmVyLCAgMy4gQXByIDE5OTgsIDE2OjE3OjI1KToKfiMhIHJuPU1pZXplIHJ0PTg5MTYxMjk5MiByZz1zY2htYXJybgp+IyEgdGlkPTg5MTYxMjkwNApHaWJ0cyBhbGxlIG5pY2h0Li4uCkdpYnRzIGFsbGUgbmljaHQuLi4KLUhhbmdvdmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGcmVpdGFnICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhIChNYWhhdG1hLCAgMy4gQXByIDE5OTgsIDE2OjIxOjE2KToKfiMhIHJuPUhhbmdvdmVyIHJ0PTg5MTYxMzA0NSByZz1zY2htYXJybgp+IyEgdGlkPTg5MTYxMjkwNApKZXR6dCBzY2hvbi4KCk1haGF0bWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndpZSBqZXR6dCA/Pz8gKFFpdGVzcywgIDMuIEFwciAxOTk4LCAxNzowMzowMCk6CmZydWZlIGdpYnQgZXMgd2FlaHJlbmQgZGVyIHZpZXIgZWxlbWVudGUgcXVlc3QgdmllbGUgZGV0YWlscyB6dSB1bnRlcnN1Y2hlbgpvZGUKciBpc3QgZGFzIG5pY2h0IHNvIGF1ZnJlZ2VuZCBkYSA/CkR1IHRlaWxzdCBkZWluZW4gRnJldW5kZW4gbWl0OiBnaWJ0IGVzIHdhZWhyZW5kIGRlciB2aWVyIGVsZW1lbnRlIHF1ZXN0CkR1IHRlaWxzdCBkZWluZW4gRnJldW5kZW4gbWl0OiB2aWVsZSBkZXRhaWxzIHp1IHVudGVyc3VjaGVuIG9kZXIgaXN0IGRhcwpEdSB0ZWlsc3QgZGVpbmVuIEZyZXVuZGVuIG1pdDogbmljaHQgc28gYXVmcmVnZW5kIGRhID8KPiBUYXJpbmEgdGVpbHQgRGlyIG1pdDogbmljaHQgc28gd2FobnNpbm5pZyAoZmFuZCBpY2gpCk1pZXplIHRlaWx0IERpciBtaXQ6IGphLCBzZWhyIHZpZWxlLCBtYWNodCBzZWhyIHZpZWwgc3Bhc3MKCgpRSSoqIGhpbi0gdW5kIGhlcmdlcmlzc2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBGcmVpdGFnICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhIChCZW5zb25tYW0sICAzLiBBcHIgMTk5OCwgMjI6MTA6MzIpOgp+IyEgcm49TWFoYXRtYSBydD04OTE2MTMyNzYgcmc9c2NobWFycm4KfiMhIHRpZD04OTE2MTI5MDQKVW5kIGFsbGVzIE1lbnNjaGVuLCBrZWluZSBFbGZlbiwgSG9iYml0cyBvZGVyIHNvbnN0d2FzLiBVbmQgYWxsZXMgQWJlbnRldXJlci4KV2llIGVpbmZhbGxzbG9zIQoKai4gQmVuc29ubWFtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZWdoaWVyIHNjaHVtbWVsdCEgKEhhbmdvdmVyLCAgNC4gQXByIDE5OTgsIDExOjQ4OjI2KToKR3JhZGUgZWJlbjoKCkVpbiBXZWdoaWVyIGZhZWxsdCBkaWUgV2FmZmUgYXVzIGRlciBIYW5kISBEb2NoIGlyZ2VuZGVpbiBGbHVjaCBsYWVzc3Qgc2llCnNvZm9ydCB3aWVkZXIgaW4gc2VpbmUgSGFuZCB6dXJ1ZWNrZmxpZWdlbi4KCkRhcyBGZWF0dXJlIGhhZXR0ZSBpY2ggYXVjaCBnZXJuLgoKLUhhbmdvdmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VnaGllciBzY2h1bW1lbHQhIChXdXJ6ZWwsICA0LiBBcHIgMTk5OCwgMTI6MzQ6MjcpOgp+IyEgcm49SGFuZ292ZXIgcnQ9ODkxNjgzMzA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkxNjgzMzA2CmRhcyBtdXNzIGRlciBncmFtbWF0aWstZmx1Y2ggc2Vpbi4gIkVpbiBXZWdoaWVyIGZhZWxsdCBkaWUgV2FmZmUgYXVzIGRlcgpIYW5kISIKYXVhLi4uCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEZldHRuYXBmIChBc21vZGlzLCAgNC4gQXByIDE5OTgsIDEzOjA1OjUxKToKfiMhIHJuPVFpdGVzcyBydD04OTE1NDIxODggcmc9c2NobWFycm4KfiMhIHRpZD04OTE0MjE1NjUKQXVzc2VyZGVtLCB3YXJ1bSBzb2xsIGVyIGlobiBuaWNodCBncnVlc3Nlbiwgd2VubiBlciBnZXJhZGUgbWl0IGlobSBzcHJpY2h0ID8KOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVyIG9kZXIgU2llPyAoSGFuZ292ZXIsICA0LiBBcHIgMTk5OCwgMTQ6MjE6MDgpOgpHcmFkZSBlYmVuIGJlaSBkZW4gUmFldWJlcm46CgpCZW5kZWlnYSBFZ2lkIHN0dWZzdCBEdSBzb2ZvcnQgYWxzICduaWNodCB1bmdlZmFlaHJsaWNoJyBlaW4uIERlbiBHcnVuZAooLi4uKQpTaWUgaXN0IGFic29sdXQgZml0LgpBdXMgc2VpbmVuIE9ocmVuIHJhZ2VuIFBldGVyc2lsaWVuc3RyYWV1c3NlLgpTaWUgdHJhZWd0IGJlaSBzaWNoOgoKV2FzIGRlbm4gbnU/IE1hbm4gb2RlciBGcmF1PyEKCi1IYW5nb3ZlcgoodmVyd2lycnQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGhoamEgOi0pIChTaGFyaWEsICA0LiBBcHIgMTk5OCwgMjE6MzQ6MzkpOgpGcmV1bmQgZ2lidCBTaGFyaWEgMTAwIE11ZW56ZW4uCkZyZXVuZCBncmluc3QuClNoYXJpYSBkZW5rdCAgIC4gbyBPIChTUElFTEVSSElMRkUgOi0pKQpGcmV1bmQgd2lua3QgenVtIEFic2NoaWVkLgpGcmV1bmQgdmVybGFnZXJ0IHNlaW5lbiBTdGFuZHB1bmt0IG5hY2ggSGF1c2UuCkRpZSBQcmluemVzc2luIGZsdWNodDogV2VubiBpY2ggZGllc2VuIEZyZXVuZCBtYWwgd2llZGVyIHRyZWZmZS4uLgoKCgoKaGFiZW4gd2lyIG5lbiBuZXVlbiBTaGVycmlmZiA/PyBkaWUgRWlzcHJpbnplc3NpbiA/Oi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbnRlcmVzc2FudGUgV2VnYmVzY2hyZWlidW5nIChIYW5nb3ZlciwgIDQuIEFwciAxOTk4LCAyMjo1Njo1MSk6ClRlZGR5IHNhZ3Q6IFBvcnRhbCAxOSwga29tbSBtaXQKUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFRlZGR5LgpUZWRkeSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCkljaCB3dXNzdGUgc2Nob24gaW1tZXIsIGRhc3MgbWFuIHNvIGFtIGJlc3RlbiBpbnMgVmFuZCBrb21tdC4uLgoKLUhhbmdvdmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3aWUgZ2V3dWVuc2NodC4uLiAoVGhlcmluLCAgNS4gQXByIDE5OTgsIDAwOjU5OjAyKToKW1NlaGVyOlN0aW5nXSBUQUFBQUFBQUFBTlRFCltTZWhlcjpUaWxseV0gcnVoZSBqZXR6dCEgOik7LWgga2xhYWFwZWVlZWUgOi0pCltTZWhlcjpUaGVyaW5dIGtsYWFhcGVlZWVlIDotKQpUaWxseSBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgpbU2VoZXI6VGVkZHldIERpZXNlIEp1Z2VuZCB2b24gaGV1dGU7LWggamFqYS4uLgpbU2VoZXI6VGhlcmluXSBqYWphLi4uCltTZWhlcjpHcmV5c3RvbmVdCkhbMzZtVFRUVFRUVFRUVFRUVEFBQUFBQUFBQUFBQUFBQU5OTk5OTk5OTk5OTk5OTk5UVFRUVFRUVFRUVFRUVEVFCltTZWhlcjpHcmV5c3RvbmVdIEVFRUVFRUVFOy1oOnRhdHRlcnQgcnVtLgpbU2VoZXI6VGhlcmluIHRhdHRlcnQgcnVtLl07PiBEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXpwaW5lbgpuaWVkZXIuCkp1bmdwYXBzdCBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpbU2VoZXI6SGFuZ292ZXJdIGFoamEKW1NlaGVyOlRlZGR5XSBEYSBpc3NlIGphCltTZWhlcjpHcmV5c3RvbmVdIHNlaHQgaWhyCltTZWhlcjpTdGluZ10gZ2VpbApbU2VoZXI6TmViIGxhY2h0Ll0KW1NlaGVyOlRpbGx5XSBmYXNzIQpbU2VoZXI6SGFuZ292ZXJdIE1FSU5FIDspKSkKW1NlaGVyOlJpa3VzXSBoeWRyYSBtaXQgdHlwbwpbU2VoZXI6U3RpbmddIHRoZXJpbjogZHUgc2NocmVpYnN0IGluIG1wYSA6KQpbU2VoZXI6SmFtYWxza2ldIGhlaGUKLWggbGVoZ2FzdGhlbmlra2VyCltTZWhlcjpUaGVyaW5dIGxlaGdhc3RoZW5pa2tlcgpbU2VoZXI6U3RpbmddIHdlbGNoZXIgbWFnaWVyIHdhcnMgZGVubiA/IDopCltTZWhlcjpOZWJdIG9oIG9oLCBkYXMgYmVkZXV0ZXQgbml4IGd1dGVzLCB3ZW5uIGRhIHNvZ2FyIGltIGluY29taW5nIGZlaGxlcgpbU2VoZXI6TmViXSBkcmluIHNpbmQgOykKW1NlaGVyOkhhbmdvdmVyXSB3YXMgc2luZCBkZW5uIGx1enBpbmVuPwpbU2VoZXI6SGFuZ292ZXJdIHRpbGx5IHd1ZXJkIGljaCBzYWdlbgpbU2VoZXI6VGlsbHldIGRhcyBpc3QgZGllIHBhcmEtaHlkcmEgOikKW1NlaGVyOlN0aW5nXSBiZWhhdXB0ZSBpY2ggYXVjaCA6KQotaCBqYXdvbGwsIGljaCBzY2hyZWliZSBpbiBkaWUgTVBBLCBkYXNzIFN0aW5nIGtsb2V0emUgYXVmIGRlbiBBdWdlbiBoYXQuCltTZWhlcjpUaGVyaW5dIGphd29sbCwgaWNoIHNjaHJlaWJlIGluIGRpZSBNUEEsIGRhc3MgU3Rpbmcga2xvZXR6ZSBhdWYgZGVuCltTZWhlcjpUaGVyaW5dIEF1Z2VuIGhhdC4KW1NlaGVyOlN0aW5nIGdyaW5zdCB0aGVyaW4gYW4uXQoKQUxTTzogU1RJTkcgSEFUIEtMT0VUWkUgQVVGIERFTiBBVUdFTi4gCgpUaGVyaW4sCnNvbGx0ZSBkYXMgc2NocmVpYmVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkZW5rZSAuIG8gTyAoTWFnaWVyISkgKEhhcmRpbCwgIDUuIEFwciAxOTk4LCAxMDoxMDozMik6CgpBdXMgZGVtIExvZyB6aXRpZXJ0ICh1bmdlc2Nobml0dGVuKToKW0FsbGdlbWVpbjpaZWRpY3VzXSBpc3QgaXJnZW5kIGVpbiBNYWdpZXIgaGllciBkZXIgbmljaHQgaWRsZWQ/IDwwNzoxMDowOD4KW0FsbGdlbWVpbjpTb3lvXSBkdSBzY2hlaW5zdCB2b20gUGVjaCB2ZXJmb2xndCAuLi4gPDA3OjEwOjQ2PgpbQWxsZ2VtZWluOkZyZXVuZF0gTW9yR2FlaG4uIDwwODozNToyMT4KCk5pY2h0IG51ciwgZGFzcyBtYW5jaGUgTWFnaWVyICpzb2ZvcnQqIHJlYWdpZXJlbiwgd2VubiBtYW4gbmV0dCBuYWNoIGlobmVuCmZyYWd0LCBuZWluLCBzaWUgc2NobGFmZW4gYXVjaCBzb2ZvcnQgd2llZGVyIGVpbjogCiBrd2VyCiAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIFNvbiwgIDUuIEFwciAxOTk4LCAxMDowODoxMCAoMTggVGVpbG5laG1lcikKCkVtYmUuLi4uLi4uLi4uLkoucyBGbHllci4uLi4uLi4uLi4uLnogVGFuYXJpLi4uLi4uLi4uLi56IExlaWJuaXouLi4uLi4uLi4ucwpLaW1hci4uLi4uLi4uLi4uLnMgSWxlc3NhLi4uLi4uLi4uSi5zIFNveW8uLi4uLi4uLi4uLi4ucyBTaGFubmFyYS4uLi4uLi4uLnMKUmF5ZWsuLi4uLi4uLi4uSi56ICpIYXJkaWwuLi4uLi4uLi4uUyBTY2FsYXJlLi4uLi4uLi4uLlMgWmlsbHVzLi4uLi4uLi4uLi5TClBlcnRpbmF4ZS4uLi4uLi4uUyBBbGFub24uLi4uLi4uLi5pLlMgTmlrb2xhdXMuLi4uLi4uSi5TIFppbm8uLi4uLi4uLi4uLmkuegpTb2JpYmFyLi4uLi4uLi5KLlMgRnJldW5kLi4uLi4uLi4uai5FCgouLi4gdW5kIGpvZmVuIGhlcnVtLgpBYmVyIGRhcyBpc3Qgd29obCBhdWNoIGRhcyB2ZXJudWVuZnRpZ3N0ZSwgd2FzIG1hbiBhbiBlaW5lbSBTb25udGFnbW9yZ2VuCm1hY2hlbiBrYW5uLi4uCgotSGFyZGlsLiBGcmV1aGF1ZnN0ZWhlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoVGhlcmluLCAgNi4gQXByIDE5OTgsIDAxOjQyOjQ5KToKW0NoYW9zOlNpbHZhXSAqYXJnbCogc2VpdCB3YW5uIGlzdCBkYXMgZ2FuemUgZWxmZW5kb3JmIGhpbnRlciBlaW5lbSBoZXIsIHdlbm4KW0NoYW9zOlNpbHZhXSBtYW4gZGllIGdhZXJ0bmVyaW4gcGxhZXR0ZW4gd2lsbD8/PyAwMTozNzo0MgoKW1RvZDpMYXJzXSBFaW4gRWxmZW53YWVjaHRlciBoYXQgZ2VyYWRlIFNpbHZhIHVtZ2VicmFjaHQuIDAxOjQxOjUzCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RpbW10Li4uLiAoVGhlcmluLCAgNi4gQXByIDE5OTgsIDAzOjA2OjU1KToKCltNb2VyZGVyOkdlaXN0IExvZG9zcyddIERhIHNvbGx0ZW4gd2lyIG5vY2ggbWFsIGRydWViZXIgcmVkZW4sIExvZG9zcyEKClNvbGx0ZSBlciB3aXJrbGljaC4uLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBGZXR0bmFwZiAoQmFib29uLCAgNi4gQXByIDE5OTgsIDEzOjMxOjA3KToKfiMhIHJuPVRpbGx5IHJ0PTg5MTUyMTc5OSByZz1zY2htYXJybgp+IyEgdGlkPTg5MTQyMTU2NQpIbSwgYWJnZXNlaGVuIGRhdm9uLCBkYXNzIGljaCBwZXJzb2VubGljaCBuaWVtYW5kZW0gc2FnZW4gd3VlcmRlLCAiU3UgZ2Voc3QKbWlyIGF1ZiBkZW4gU2Fjay4iCkthbm4gaWNoIGRpciBkYSBudXIgenVzdGltbWVuLiBCZWhpbmRlcnRlIHNpbmQgKGluIHZlcm51ZW5mdGlnZW4gR3JlbnplbikgYWxzCm5vcm1hbGUgTWVuY2hlbiBhbnp1c2VoZW4uIEljaCB2ZXJzdGVoZSBuaWNodCBpbSBHZXJpbmdzdGVuLCB3YXMgYW4gZWluZXIKUmVkZXdlbmR1bmcgd2llICJOYSwgd2llIGdlaHRzPyIgb2RlciAiRHUgZ2Voc3QgbWlyLi4uIiAKc28gc2NobGltbSBzZWluIHNvbGwuIFNjaGxpZXNzbGljaCBnZWh0IGVzIGhpZXIgd2VuaWdlciBkYXJ1bSwgYXVmIGRpZQpUYWV0aWdrZWl0IGRlcyBHZWhlbnMgYW56dXNwaWVsZW4sLgpPZGVyIGVyd2FydGV0IGplbWFuZCBlcm5zdGhhZnQsIGRhc3MgaWNoIG5hY2ggZGVuIFdvcnRlbiAiSWNoIGdlaCBnbGVpY2ggaW4KZGllIEx1ZnQhIiB1bnRlciBoZWZ0aWdlbiBCZWluYmV3ZWd1bmdlbiB2b20gQm9kZW4gYWJoZWJlPwoKQmFib29uIChlbW90aW9uYWwgYWJnZXN0dW1wZnQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1ZSBHaWxkZW50aXRlbCAoQm9pbmcsICA2LiBBcHIgMTk5OCwgMTY6MDI6MDcpOgp+IyEgb249Wm9ycm8gb3Q9ODkxODYwNjY5IG9nPWdpbGRlbi5hYmVudGV1cmVyCn4jISBybj1Cb2luZyBydD04OTE4NTE0MDMgcmc9Z2lsZGVuLmFiZW50ZXVyZXIKfiMhIHRpZD04OTE4NTE0MDMKT2ggbmV0dCBlcyBmZWhsZW4gYWJlciBub2NoIGVpbiBQYWFyIFRpdGVsIHouQi4gOgoKRGVyIGlkZWxuZGUKRGVyIEhldWxlbmRlCkRlciBNZWNrZXJuZGUKRGVyIFN1ZWNodGlnZQpEZXIgTW9lY2h0ZWdlcm5lIFd1cnN0c2VoZXJ3ZXJkZW5kZQpEZXIgYXVmIG5lciBQYXJ0eS1XYXJ0ZW5kZQp1c3cKClpvcnJvIHNhZ3Q6IEZsYW1lIG9uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBpbSBXV1c6IChZZW5kaSwgIDYuIEFwciAxOTk4LCAxNTo1OTozNyk6CkdlcmFkZSBnZWZ1bmRlbjoKCgpTY2hyb2VkaW5nZXIncwoKICAgICAgICAgICAgICAgQ2F0IFNpdHRpbmcgU2VydmljZQoKR29pbmcgb3V0IG9mIHRvd24gZm9yIGFuIGV4dGVuZGVkIHBlcmlvZCBvZiB0aW1lPwpUaXJlZCBvZiB5b3VyIG5laWdoYm9yIG9yIGNvd29ya2VyIGZvcmdldHRpbmcgdG8KZmVlZCBGbHVmZnkgYXMgcHJvbWlzZWQ/IERvbid0IHRydXN0IHRoZSBsb2NhbCAKcGV0LXNpdHRpbmcgc2VydmljZXM/CgpUcnkgb3VyIG5hdGlvbmFsIGNoYWluIG9mIG92ZXItcXVhbGlmaWVkIHRyYWluZWQgCnBldCBzaXR0ZXJzLCBtYW55IHdvcmxkLXJla25vd25lZCBwaHlzaWNpc3RzLiAKT3VyIHJhdGVzIGFyZSByZWFzb25hYmxlIGFuZCBvdXIgc2VydmljZSBpcyBhYnNvbHV0ZWx5CnRoZSBiZXN0IGFyb3VuZC4KCiAgICAgICAgICAgQ2FsbCB0b2RheSEgMSAoODAwKSBOT1QtU1VSRQoKCgooRGFzIHdhciB2b24gVVMtTWVuc2EncyBDcmVhdGl2ZSBNaXNjaGllZiBTSUcpCgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXQUFBQUFIISAoR2xvaW5zb24sICA2LiBBcHIgMTk5OCwgMTY6MDM6MjgpOgpTdGVpbmlndCBDYXRXZWF6bGU6CgpbQWxsZ2VtZWluOlJvY2h1c10gaXJnZW5kIGVpbiB3aXR6Ym9sZCBoYXQgZGVtIG1nIGRpZSB0YXN0YXR1ciBnZWtsYXV0Li4uIHVuZApbQWxsZ2VtZWluOlJvY2h1c10gY2F0IGhhdHRlIGltIGJpb3MgbmljaHQgZWluZ2VzdGVsbHQsIGRhc3MgZWluZSBmZWhsZW5kZQpbQWxsZ2VtZWluOlJvY2h1c10gdGFzdGF0dXIgYmVpbSBib290ZW4gaWdub3JpZXJ0IHdpcmQgPDE1OjU1OjE3PgoKQmxvc3MgZ3V0LCBkYXNzIGljaCBTcGllbHBhdXNlIGhhYmUgKFppdGF0IE1haGF0bWEgdW5kIGF1Y2ggbWVpbmUgTWVpbnVuZyA7LSkKCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV0FBQUFBSCEgKENhdHdlYXpsZSwgIDcuIEFwciAxOTk4LCAwOToyOTozMSk6Cn4jISBybj1HbG9pbnNvbiBydD04OTE4NzE0MDggcmc9c2NobWFycm4KfiMhIHRpZD04OTE4NzE0MDgKQWxsZXMgZ2Vsb2dlbi4KRGllIFRhc3RhdHVyIHdhciB6d2FyIGdla2xhdXQsIGFiZXIgZGFzIEJJT1Mgc3RhbmQgd29obCBhdWYgJ2lnbm9yZSBlcnJvcnMnLgpEYWZ1ZXIgaXN0IGRlciBSZWNobmVyIG5pY2h0IG9yZGVudGxpY2ggcnVudGVyZ2VmYWhyZW4uIElzdCBpcmdlbmR3byAKYmVpbS9oaW50ZXIgZGVtIE5ldHp3ZXJrIGRpc2Nvbm5lY3RlbiBoYWVuZ2VuZ2VibGllYmVuLgpJc3QgaXJnZW5kamVtYW5kIGZhZWhpZ2VyIEp1cmlzdD8gSWNoIG1vZWNodGUgZ2VybmUgZWluZSBWZXJsZXVtZHVuZ3NrbGFnZQphbnN0cmVuZ2VuLi4uCgpZb3VycyB0cnVseSwKICAgICBDYXR3ZWF6bGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV0FBQUFBSCEgKEdsb2luc29uLCAgNy4gQXByIDE5OTgsIDExOjE4OjI0KToKfiMhIHJuPUNhdHdlYXpsZSBydD04OTE5MzQxNzEgcmc9c2NobWFycm4KfiMhIHRpZD04OTE4NzE0MDgKR2xvaW4gd2lyZnQgZGVuIGVyc3RlbiBTdGVpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndvcnRsb3MuLi4gKFRoZXJpbiwgIDguIEFwciAxOTk4LCAwMTo0NTowOSk6CgpOYWNodHdpbmQgd2lua3QuCk5hY2h0d2luZCB2ZXJzY2h3aW5kZXQgbWl0IGVpbmVtIEZpbmdlcnNjaG5pcHBlbi4KW1RvZDpMYXJzXSBFaW4gQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgaGF0IGdlcmFkZSBOYWNodHdpbmQgdW1nZWJyYWNodC4KW1RvZDpFaW4gQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnNdIFNjaGljaHQgaW0gU2NoYWNodCEKClVuZCBkYXMgYmlubmVuIG5lciAxLzIgU2VrdW5kZSwgdm9tIFRpZ2VyIGluIGRlbiBUb2QuLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2ViZXRzdmlydXM/IChIYW5nb3ZlciwgIDguIEFwciAxOTk4LCAwNjowNDowNSk6CkdyYWRlIGViZW4gbmFjaCBlaW5lciBnZW11ZXRsaWNoZW4gUnVuZGUgT3JraGF1c2VuLi4uCgpEdSBiZXRlc3QgZnVlciBndXRlcyBXZXR0ZXIsIHNjaHdhY2hlIEdlZ25lciB1bmQgZWluIGxlaWNodGVyZXMgTGViZW4gaW0KQWxsZ2VtZWluZW4gc293aWUgZnVlciBlaW4gYmFsZGlnZXMgRW5kZSBkZXIgR2ViZXRzcnVuZGUgaW0gQmVzb25kZXJlbi4KKC4uLikKRHUgc2NobGllc3N0IGF1Y2ggZGllIE1pdGdsaWVkZXIgYW5kZXJlciBSYXNzZW4gaW4gRGVpbmUgR2ViZXRlIGVpbi4KRHUgYmVlbmRlc3QgRGVpbiBHZWJldCBtaXQgZWluZW0gZXJsZWljaHRlcnRlbiAnRW5kbGljaCcKCkljaCB3dXNzdGUgbm9jaCBnYXIgbmljaHQsIGRhc3MgZGllIFd1cnN0b3JrcyBlaW5lbiB6dW0KQmV0ZW4gendpbmdlbiBrb2VubmVuLi4ueWV0IGFub3RoZXIgYnVnXkheSF5IZmVhdHVyZQoKLUhhbmdvdmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBpbiBkZXIgRWxmZW5wb3N0Li4uIChZZW5kaSwgIDguIEFwciAxOTk4LCAyMTowMjowNSk6ClNhZ3QgbWFsLCBoYWJlbiBkaWUgamV0enQgVWViZXJzZWVjb250YWluZXIgYWxzIExlZXJwYWtldGU/CgpaaXRhdDoKCkplaG92YSBmYWVocnQgbWl0IHNlaW5lbSBTa2F0ZWJvcmQgaGVyZWluLi4KSmVob3ZhIGthdWZ0IGVpbiBMZWVycGFrZXQuCkplaG92YSBvZWZmbmV0IGRhcyBQYWtldC4KSmVob3ZhIHN0ZWNrdCBlaW4gU2FlY2tjaGVuIEVkZWxzdGVpbmUgaW4gZWluIFBha2V0LgpKZWhvdmEgbmltbXQgMyBoYWxia2FyYWV0aWdlIEFxdWFtYXJpbmUuCkplaG92YSBuaW1tdCA2IGhhbGJrYXJhZXRpZ2UgT2t0YXJpbmUuCkplaG92YSBuaW1tdCA1IGhhbGJrYXJhZXRpZ2UgU21hcmFnZGUuCkplaG92YSBuaW1tdCAzIGhhbGJrYXJhZXRpZ2UgUnViaW5lLgpKZWhvdmEgbmltbXQgNSBoYWxia2FyYWV0aWdlIFRvcGFzZS4KSmVob3ZhIHN0ZWNrdCBlaW4gU2FlY2tjaGVuIEVkZWxzdGVpbmUgaW4gZWluIFBha2V0LgpKZWhvdmEgc3RlY2t0IDEwMDAwIE11ZW56ZW4gaW4gZWluIFBha2V0LgpKZWhvdmEgc3RlY2t0IGVpbmVuIExpY2h0aGVsbSBpbiBlaW4gUGFrZXQuCkplaG92YSBzdGVja3QgZWluZW4gTGljaHRoZWxtIGluIGVpbiBQYWtldC4KSmVob3ZhIHN0ZWNrdCBMZWRlcm1va2Fzc2lucyBpbiBlaW4gUGFrZXQuCkplaG92YSBzdGVja3QgTGVkZXJtb2thc3NpbnMgaW4gZWluIFBha2V0LgpKZWhvdmEgc3RlY2t0IGVpbmVuIExpY2h0cGFuemVyIGluIGVpbiBQYWtldC4KSmVob3ZhIHN0ZWNrdCBlaW5lbiBMaWNodHBhbnplciBpbiBlaW4gUGFrZXQuCkplaG92YSB6aWVodCBlaW5lbiBGdXNzcmluZyBhbi4KSmVob3ZhIHN0ZWNrdCBlaW4gTGFuZ3NjaHdlcnQgaW4gZWluIFBha2V0LgpKZWhvdmEgc3RlY2t0IGVpbiBMYW5nc2Nod2VydCBpbiBlaW4gUGFrZXQuCkplaG92YSBmYWVocnQgbWl0IHNlaW5lbSBTa2F0ZWJvYXJkIG5hY2ggV2VzdGVuLgoKWml0YXQgRW5kZS4KClVuZCB3YXMga29zdGV0IHNvd2FzIGFuIFZlcnNpY2hlcnVuZ3NnZWJ1ZWhyPwoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgQWVybXN0ZS4uLiAoWWVuZGksICA5LiBBcHIgMTk5OCwgMjA6MDY6MDkpOgpXYXIgbWlyIGJpc2hlciBub2NoIG5pY2h0IGF1ZmdlZmFsbGVuOgoKRGllcyBpc3QgZGVyIFNjaGFua3JhdW0gZGVyIEdhc3RzdGFldHRlIGRlciBFbGZlbnNpZWRsdW5nLiBFcyBpc3QgZWluCjVtIG1hbCAxMG0gZ3Jvc3NlciBSYXVtLCBkZXNzZW4gUnVlY2t3YW5kIHZvbiBlaW5lciBUaGVrZSBlaW5nZW5vbW1lbgp3aXJkLiBWaWVyIHNlaHIgc3RhYmlsIGF1c3NlaGVuZGUsIHJ1bmRlIFRpc2NoZSBzdGVoZW4gaGllciBydW0uIFVtCmplZGVuIFRpc2NoIHN0ZWhlbiBzZWNocyBIb2NrZXIuIEluc2dlc2FtdCBzaWVodCBoaWVyIGFsbGVzIGV0d2FzIGVpbi0KZmFjaGVyIGF1cywgYWJlciBrZWluZXN3ZWdzIHVua3VsdGl2aWVydC4KQXVmIGplZGVtIFRpc2NoIGxpZWd0IGVpbmUgTWVudWVrYXJ0ZSwgZGllIER1IG1pdCAnbWVudWUnIGxlc2VuIGthbm5zdC4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRlbi4KRWluIGtsZWluZXMgU2FlY2tjaGVuIG1pdCBFZGVsc3RlaW5lbi4KRGVyIEdhc3R3aXJ0LgpFaW5lIEVsZmVuYmFyZGluLgpEaWUgVG9wLUxpc3RlLCBUb3AtU3BpZWxlcmxpc3RlIHVuZCBUb3AtU2VoZXJsaXN0ZS4KIAo+IG5hCkRpZSBNdXNpa2FudGluIHNpbmd0IG1pdCBhbm11dGlnZXIgU3RpbW1lLgogCkR1IG5pbW1zdCBlaW4gU2FlY2tjaGVuIEVkZWxzdGVpbmUuCkR1IGthbm5zdCBkZW4gV2lydCBuaWNodCBuZWhtZW4uCkR1IGthbm5zdCBkaWUgQmFyZGluIG5pY2h0IG5laG1lbi4KRGllIGlzdCBhbiBkZXIgV2FuZCBmZXN0Z2VuYWdlbHQuCgoKCk1laW5lIEd1ZXRlLi4uIF9zb18gc2NobGVjaHQgc2luZ3Qgc2llIGRvY2ggZ2FyIG5pY2h0Li4uCgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllIEFlcm1zdGUuLi4gKFllbmRpLCAgOS4gQXByIDE5OTgsIDIwOjE4OjE2KToKfiMhIHJuPVllbmRpIHJ0PTg5MjE0NTE2OSByZz1zY2htYXJybgp+IyEgdGlkPTg5MjE0NTE2OQpOb2NoIHdhczogSWNoIGhvZmZlLCBkYXNzIHNvbGNoZSBTaXR0ZW4gbmljaHQgYmVpIGRlciBNVUQtUGFydGlnbGljaGVuCk1hcm1lbGFkZW5zaXR6dW5nIGVpbnJlaXNzZW4uLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqYXJnbCogKFllbmRpLCAgOS4gQXByIDE5OTgsIDIxOjE1OjM2KToKRWlubmFlaGVyIGluIGVpbmVtIEJhdG1hbi1Lb3N0dWVtOgoiQ2F1dGlvbjogQ2FwZSBkb2VzIG5vdCBlbmFibGUgdXNlciB0byBmbHkiCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBSZWJvb3RzIHVuZCBzbyAuLi4gKEZyZXVuZCwgIDkuIEFwciAxOTk4LCAyMTozMDo1Nik6Cn4jISBybj1FbWJlIHJ0PTg5MjE0Njk2NCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg5MTk3MTg5NwpJY2ggZmluZGUsIGVzIGlzdCBhbnp1c3RyZWJlbiwgbnVyIGxlc2JhcmUgQXJ0aWtlbCBpbiBkaWUgbXBhIHp1IHNldHplbi4gRGF6dQpnZWhvZXJ0IG5pY2h0LiAiZ2VoIm9ydCIuCgpGcmV1bmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogUmVib290cyB1bmQgc28gLi4uIChHcmltbWJvcm4sIDEwLiBBcHIgMTk5OCwgMDA6MjI6MjMpOgp+IyEgcm49RnJldW5kIHJ0PTg5MjE1MDI1NiByZz1zY2htYXJybgp+IyEgdGlkPTg5MTk3MTg5NwpBdWNoIHdlbm4gRHUgcmVjaHQgaGFzdDogQml0dGUgbmljaHQgd2llZGVyIGRpZXNlIERpc2t1c3Npb24uIERpZSBpc3QgZG9jaAplcnN0IHNvIGRyZWkgV29jaGVuIGhlci4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWxpY2gsIGluIGRlciBFbGZlbnBvc3QuLi4gKEplaG92YSwgMTAuIEFwciAxOTk4LCAwMDoyMzo1Mik6Cn4jISBybj1ZZW5kaSBydD04OTIwNjIxMjUgcmc9c2NobWFycm4KfiMhIHRpZD04OTIwNjIxMjUKRHUgc29sbHRlc3QgbWljaCBtYWwgYmVpbSBWZXJrYXVmZW4gc2VoZW4gLi4uIE9obmUgRlJaRyBnZWh0IGRhcyBmYXN0IHNjaG9uCm5pY2h0IG1laHIgOikKCkoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWx0ZW4sIGFiZXIgc2Nob2VuOiAoRnJldW5kLCAxMC4gQXByIDE5OTgsIDA4OjQxOjAwKToKRGFzIGdlaHQgYXVjaCBudXIgS2FyZnJlaXRhZzoKCj4ga3dlcgpMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRnJlLCAxMC4gQXByIDE5OTgsIDA4OjM5OjQwICg4ClRlaWxuZWhtZXIpRW1iZS4uLi4uLi4uLi4uLi5zIFJpcC4uLi4uLi4uLi4uLi4ucyBPb2VycHJ1cy4uLi4uLi4uLnMKU2FuZG1hbm4uLi4uLi4uLi5zClJheWVrLi4uLi4uLi4uLi4ueiBUeWxhay4uLi4uLi4uLi4uLnMgKlR1ZmZpLi4uLi4uLi4uLi5TIEZyZXVuZC4uLi4uLi4uLi4uRQoKOCBMZXV0ZSwga2VpbmVyIGlkbGUuIDopCgpGcmV1bmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTZWx0ZW4sIGFiZXIgc2Nob2VuOiAoRW1iZSwgMTAuIEFwciAxOTk4LCAwODo0NToxMyk6Cn4jISBybj1GcmV1bmQgcnQ9ODkyMTkwNDYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkyMTkwNDYwCmRhcyBpcyBhdWNoIHNlbHRlbiB1bmQgZnJldW50IHVtc28gbWVocjoKMTIgc3BpZWxlciBpbSBTTCB1bmQgbnVyIDggaW0gTUcgOi0pCmt3ZXIKICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRnJlLCAxMC4gQXByIDE5OTgsIDA2OjQ4OjQ5ICgxMiBUZWlsbmVobWVyKQoKKkJhbGxhYmFsbGEuLi4uLnMgIExvdmV0YWguLi4uLi4uLi5zICBFeWRhLi4uLi4uLi4uLi4ucyAgU2FsYWRpbi4uLi4uLi4uLnMKRmVuZGVyLi4uLi4uLmkuLlogICpCYWxkdXIuLi4uLi5pLi5aICBUb3J0ZS4uLi4uLi4uaXcuUyAgVmVyZGFuZGkuLi4uLmkuLlMKKkZlbnJpcy4uLi4uLmkuLlMgIEVtYmVlLi4uLi4uLi4uLi5tICAqTXVhZGRpYi4uLi4uLi4uUiAgKkFuZ3JveC4uLi4uLi4uZUUKCmt3ZXIKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIEZyZSwgMTAuIEFwciAxOTk4LCAwNjo0ODo1NCAoOCBUZWlsbmVobWVyKQoKKkVtYmUuLi4uLi4uLi4uLi5zIEdhc3QxLi4uLi4uLi4uLi4ucyBTaGFubmFyYS4uLi4uLi4uLnMgU2FuZG1hbm4uLi4uLi4uLi5zClJheWVrLi4uLi4uLi4uLi4ueiBUeWxhay4uLi4uLi4uLi4uLnMgVHVmZmkuLi4uLi4uLi4uLi5TIEJpZXJjaGVuLi4uLi4uLmkuTQoKZ3J1c3MsIGVNQmVlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGVyIHVlYmxpY2hlIHdhaG5zaW5uIChab3JybywgMTEuIEFwciAxOTk4LCAwMzoyODo1Myk6CkR1IHJpY2h0ZXN0IERlaW4gS2VyYmhvbHogYXVmIFJvY2h1cywgZXMgcGFzc2llcnQgbmljaHRzLgo+IFJvY2h1cyB2ZXJrdWVuZGV0IGdyaW5zZW5kOiBFcyBpc3QgZ2VpbCwgRXJ6bWFnaWVyIHp1IHNlaW4uClJvY2h1cyBnZWh0IG5hY2ggTm9yZGVuLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDIzMCBLb256ZW50cmF0aW9uc3B1bmt0ZS4KUm9jaHVzIGtvbW10IGFuLgpCaWVyY2hlbiBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuClJvY2h1cyBmYWVsbHQgdG90IHp1IEJvZGVuLgpSb2NodXMgc2FndDogQm9oLCBiaW4gaWNoIGd1dC4KUm9jaHVzIHJhZXQ6IEhleSwgd2VyZGUgRXJ6bWFnaWVyIHVuZCBudXR6ZSBEZWluZSBNYWNodCBhdXMuClJvY2h1cyBnZWh0IG5hY2ggTm9yZGVuLgpEdSBncnVtbWVsc3QuCj4gUm9jaHVzIGtvbW10IGFuLgpEdSBoYXN0IGpldHp0IDIxMCBMZWJlbnNwdW5rdGUgdW5kIDIzMSBLb256ZW50cmF0aW9uc3B1bmt0ZS4KUm9jaHVzIHJlbXBlbHQgRGljaCBhbiB1bmQgc2FndDogSEVZLCBuZW5uIG1pY2ggU3VwZXJNQU5OLgpSb2NodXMgZ2VodCBuYWNoIFN1ZWRvc3Rlbi4KUm9jaHVzIGtvbW10IGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdXVwcy4uLjspIChTaGFoaSwgMTQuIEFwciAxOTk4LCAxMToxMjoxOCk6ClR1Tml4R3V0IHRlaWx0IERpciBtaXQ6IEJpbiB3ZWcsIGJpcyBuYWNoaGVyLCBsaWViZSBEaWNoISEhCltBbGxnZW1laW46R3JhbGtvcl0gZmVpbi4gd2VjaCBpc3NlciAqZ3JpbnMqCkR1IG5pY2tzdCB6dXN0aW1tZW5kLgoKT2NoIFNjaGF0eiwgd2FyIGRvY2ggZ2FybmljaCBTTyBnZW1laW50Li4uLjspCidmIEZhaGlsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbm9jaCBlaW5lciAoU2hhaGksIDE0LiBBcHIgMTk5OCwgMTE6MjM6MDQpOgpEdSB2ZXJzdWNoc3QsIGRpZSBUdWVyIHp1IG9lZmZuZW4sIGplZG9jaCBzY2hlaW50IGlyZ2VuZCBldHdhcyB2b24gaW5uZW4KZGFnZWdlbnp1ZHJ1ZWNrZW4gdW5kIHNpZSBnaWJ0IGtlaW5lbiBNaWxsaW1ldGVyIG5hY2guIEVudHRhZXVzY2h0IGdpYnN0IER1CndpZWRlciBhdWYuCiB1bnQgbWlsbGltZXRlcgpTb3dhcyBzaWVoc3QgRHUgZGEgbmljaHQhCk5hIHNvIHNjaGxlY2h0ZSBBdWdlbiBoYWIgaWNoIG51IGRvY2ggbmljaC4uLi4KClNoYWhpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZGVyIHVlYmxpY2hlIHdhaG5zaW5uIChSb2NodXMsIDE0LiBBcHIgMTk5OCwgMTU6NDQ6MjQpOgp+IyEgcm49Wm9ycm8gcnQ9ODkyMjU4MTMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkyMjU4MTMzCkljaCB3dWVzc3RlIG1hbCBnZXJuZSwgdm9uIHdlbSBERVIgUm9jaHVzLU5QQyBvZGVyIHdhcyBhdXMgYXVjaCBpbW1lcgprYW0uLi4uIGljaCB0aXBwZSBtYWwgYXVmIE1vcmdvdGguLi4gKHdlbm4gWm9ycm8gc2ljaCBkZW4gVGV4dApuaWNodCBnYW56IGFsbGVpbmUgYXVzIGRlbiBGaW5nZXJuIGdlc29nZW4gaGF0KS4KCiAgUm9jaHVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppY2ggc2FjaHMgamEuLi4gKFRoZXJpbiwgMTQuIEFwciAxOTk4LCAyMzowNDo0OSk6CltTZWhlcjpQYWtlXSBobW0sIGljaCB3ZWxjaGVyIHJpY2h0dW5nIHVuZ2VmYWVociBzdGVodCBkZW4gdG9ldGVycyBrbG9zdGVyPwpbU2VoZXI6UGFrZV0gMjI6NTQ6NDYKW1NlaGVyOlppbGx1c10gUmljaHR1bmcgTGFycy4gMjI6NTU6MDIKW1NlaGVyOlBha2VdIGRhbmtlLi4uIDIyOjU1OjEzCltTZWhlcjpUaGVyaW5dICJlaW4gbW9lbmNoIGRlcyBkdW5rbGVuIG9yZGVucyBoYXQgKHNldHplbiBzaWUgaGllciBpaHJlbiBuYW1lbgpbU2VoZXI6VGhlcmluXSBlaW4pIHVtZ2VicmFjaHQiIDwyMjo1NTozNz4KCnNwYWV0ZXIKW1RvZDpMYXJzXSBFaW4gTW9lbmNoIGRlcyBkdW5rbGVuIE9yZGVucyBoYXQgZ2VyYWRlIFBha2UgdW1nZWJyYWNodC4KW1RvZDpMYXJzXSAyMzowMjoyMgoKbWVpbmUgcHJhZWtvZ25pdGl2ZW4gRmFlaGlna2VpdGVuIHdlcmRlbiBpbW1lciBiZXNzZXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBpY2ggc2FjaHMgamEuLi4gKEFuYXRvbCwgMTQuIEFwciAxOTk4LCAyMzo1MTo0NSk6Cn4jISBybj1UaGVyaW4gcnQ9ODkyNTg3ODg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkyNTg3ODg5CiAgICAgICAgICAgICBQcmFla29nbml0aXY/CgpIYWJlIGljaCBkYSBqZXR6dCBlaW4ga29nbml0aXZlcyBEZWZpeml0PwoKQW5hdG9sIC0gdmVyc3RlaHQgZXMgbmljaHQgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgLi4uIChBbmF0b2wsIDE1LiBBcHIgMTk5OCwgMDA6Mjg6MjEpOgpbU2VoZXI6Q2FyYW1vbl0gc2VpdCB3YW5uIGtvbW10IGRpZSBoeWRyYSBkZW5uIGF1cyBkZW0gdGFsIGRlciBsdXBpbmVuIHJhdXM/CltUb2Q6TGFyc10gRWluIEh5ZHJha29wZiBoYXQgZ2VyYWRlIENhcmFtb24gdW1nZWJyYWNodC4KW1RvZDpFaW4gSHlkcmFrb3BmXSBoc3Nzc3NzCgpPaGEgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGRlciB1ZWJsaWNoZSB3YWhuc2lubiAoTGFyaXNzYSwgMTUuIEFwciAxOTk4LCAwODo0OToyOSk6Cn4jISBybj1Sb2NodXMgcnQ9ODkyNTYxNDY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkyMjU4MTMzCgpIaWhpLAoKTWFnaWVya3JpZWcsIE1hZ2llcmtyaWVnCgpMYXJpLCByZWlidCBzaWNoIGRpZSBIYWVuZGUgKmdlbmllc3MqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGF1ZiBkZW0gU3RhbW10aXNjaCAoUm9jaHVzLCAxNS4gQXByIDE5OTgsIDE3OjA0OjEzKToKUm9jaHVzIGxpZXN0IGRpZSBCZW5pbW1yZWdlbG4gdm9uIEhpbGxhcnkgQ2xpbnRvbiBhdWYgZGVyIFNwZWlzZWthcnRlCmRlcyBBbGFiYW1hLgpSb2NodXM6ICJTdG9wIGtpY2tpbmcgeW91ciBzaXN0ZXIiCkNhdDogRGEgc3RlaHQgYWJlciAiU3RvcCBLSUNLSU5HIHlvdXIgc2lzdGVyIgpSb2NodXM6IERhcyBoYWJlIGljaCBkb2NoIGdlc2FndCAtIHdhcyBoYXN0IER1IGRlbm4gdmVyc3RhbmRlbj8KQ2F0OiAiU3RvcCBmdWNraW5nIHlvdXIgc2lzdGVyIgpXYXJnb246IEhtbW0uLi4gYmVpIENsaW50b24ga29lbm50ZSBkYXMgYXVjaCBwYXNzZW4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJZGxlbiAoWnVlcmlsZXUsIDE2LiBBcHIgMTk5OCwgMDY6Mzc6MjYpOgpIaSwKTmEgZGEga29tbXQgbWFuIGFtIGZydWVoZW4gbW9yZ2VuIGlucyBNRyB1bmQgbXVzcyBiZW1lcmtlbiwgbWFuIGlzdCB6d2FyIG5pY2h0CmFsbGVpbmUgYWJlciBhYmVyIHNvIGd1dCB3aWUuID06KQoKa3dlcgogIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEb24sIDE2LiBBcHIgMTk5OCwgMDY6MzM6NDcgKDEyIFRlaWxuZWhtZXIpCgpFbWJlLi4uLi4uLi4uLi5KLnMgRWFkcmljLi4uLi4uLi4uLi56IFRyYWVnaWUuLi4uLi4uLi4ueiBSYXllay4uLi4uLi4uLi5pLnoKWXVkaW5vbS4uLi4uLi4uai5zIFR5bGFrLi4uLi4uLi4uLi4ucyBBdmllbmRoYS4uLi4uLi5KLlMgRXpvLi4uLi4uLi4uLi4uSi5TClp1ZXJpbGV1Li4uLi4uLi4uTSBad2lsbGluZy4uLi4uLi5KLk0gVG9ldGVyLi4uLi4uLi4uSi5NIFJ1bWF0YS4uLi4uLi4uLkouRwoKPiBpZGxlcwpBdmllbmRoYSAgICAgICAgICAgICAgICA6IElkbGV6ZWl0ICAwNTozODo0MSAKWXVkaW5vbSAgICAgICAgICAgICAgICAgOiBJZGxlemVpdCAgMDA6MzI6MTkgClRvZXRlciAgICAgICAgICAgICAgICAgIDogSWRsZXplaXQgIDFkIDA5OjI3OjA1IApSYXllayAgICAgICAgICAgICAgICAgICA6IElkbGV6ZWl0ICAwMDowMzo1NiAKRXpvICAgICAgICAgICAgICAgICAgICAgOiBJZGxlemVpdCAgMjM6Mjc6MzkgClJ1bWF0YSAgICAgICAgICAgICAgICAgIDogSWRsZXplaXQgIDEzOjA5OjMzIApFbWJlICAgICAgICAgICAgICAgICAgICA6IElkbGV6ZWl0ICAwMzozMToyOCAKWndpbGxpbmcgICAgICAgICAgICAgICAgOiBJZGxlemVpdCAgMTA6MTY6MDIgClR5bGFrICAgICAgICAgICAgICAgICAgIDogSWRsZXplaXQgIDAwOjAxOjM0IAoKClRzY2hhdSBadWVyaWxldQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWmltbWVya25hcHBoZWl0IChGcmV1bmQsIDE2LiBBcHIgMTk5OCwgMTc6NDM6NTApOgpIaSwKCmtlaW4gV3VuZGVyLCB3ZW5uIGRpZSBaaW1tZXIgaW4gV2lsaGVsbXNidXJnaCBrbmFwcCB3ZXJkZW46CgouLi4KWmltbWVyIDEzIEtyZWxsamEKWmltbWVyIDE0IEdhc3QxClppbW1lciAxNSBOb3Zhc3Rvcm0KLi4uCgpXZW5uIGpldHp0IHNvZ2FyIEdhZXN0ZSB3b2NoZW53ZWlzZSBaaW1tZXIgbWlldGVuLiA7LSkKCkZyZXVuZCBzYWd0OiBaYXBob2IgaGF0J3MgZW50ZGVja3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBob2xkZSBXZWlibGljaGtlaXQgKFRlZGR5LCAxNi4gQXByIDE5OTgsIDIzOjA3OjIzKToKU2hhcmlhIHNjaGF1dCBEaWNoIGx1ZXN0ZXJuIGFuLiAKU2hhcmlhIHZlcnBhc3N0IERpciBlaW5lIFdhdHNjaGUsIGRhc3MgRGlyIEhvZXJlbiB1bmQgU2VoZW4gdmVyZ2VodC4KClZlcnN0ZWggZWluZXIgZGllIEZyYXVlbi4gOy0pCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBob2xkZSBXZWlibGljaGtlaXQgKFNoYXJpYSwgMTYuIEFwciAxOTk4LCAyMzowOTowMSk6Cn4jISBybj1UZWRkeSBydD04OTI3NjA4NDMgcmc9c2NobWFycm4KfiMhIHRpZD04OTI3NjA4NDMKClRlZGR5IHdpciBoYWJlbiBnYW56IGVpbmZhY2ggZWluZSBhbmRlcmUgTG9naWsgLi4uLgoKYWJlciB3YXMgYW5kZXJlcyBkYW1pdHMgamVkZXIgd2Vpc3M6CgoKVGVkZHkgaGF0IHp1IEhhdXNlIG5peCB6dSBzYWdlbiAuLi4uCgoKU2hhcmlhIGlzdCB2b2xsa29tbWVuIGtsYXIgd2llc28uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipncmlucyogKFRlZGR5LCAxNi4gQXByIDE5OTgsIDIzOjEzOjExKToKRHUgdGVpbHN0IEhhcmV0aCBtaXQ6IFdpZSB3YXIgZGFzLCBkdSBiaXN0IHNwb250YW4gdW5kIGltbWVyIHp1IGplZGVyCkR1IHRlaWxzdCBIYXJldGggbWl0OiBTY2hhbmR0YXQgYmVyZWl0PwoKV2FyIGRhIG5pY2h0IGVpbiBsYXV0ZXMgU2NobmF1YmVuIGltIFN1ZWRlbiA/CgpEaWUgU3RlbGxlIGlzdCBlaW5mYWNoIG5ldHQgenVtIGlkZWxuIDspCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWhoamEgOi0pKSAoU2hhcmlhLCAxNi4gQXByIDE5OTgsIDIzOjE4OjU1KToKSGFyZXRoIHNwcmluZ3QgaGVyZWluLgpUZWRkeSBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KSGFyZXRoIHNhZ3Q6IHdhcyBpc3QgbG9zIGhpZXIgOikKc2FnIGloaCA6LSkKRHUgc2Fnc3Q6IGloaCA6LSkKPiBsYWNoCkVpbiBWb2dlbCBzaW5ndCBlaW4gZnJvZWhsaWNoZXMgTGllZC4KVGVkZHkgaGF0IGdlcmFkZSBkaWUgVmVyYmluZHVuZyB6dSBNb3JnZW5HcmF1ZW4gZ2VrYXBwdC4KRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgo+IFBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBUZWRkeS4KCgoKaG1tIGRhIGhhdXQgSGFyZXRoIFRlZGR5IGdsYXR0IGF1c3NtIE11ZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaHVjaCAoQmllcmNoZW4sIDE3LiBBcHIgMTk5OCwgMDM6MTA6MjUpOgpUaWxseSBlcnNjaGVpbnQgaW4gZWluZXIgU3BoYWVyZSBnbGVpc3NlbmRlbiBMaWNodHMuCkVpbiBnbGVpc3NlbmRlciBCbGl0eiBzY2hpZXNzdCBhdXMgZGVyIFdvbGtlIHVlYmVyIGRpciBoZXJ2b3IgdW5kIHNjaGxhZWd0CmtyYWNoZW5kIGluIGRpZSBSdWluZSBlaW4hCgpXYXMgZnVlciBlaW5lIE1hY2h0IDopCgogICAtIEJpZXJjaGVuIC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRVVVVVVVVVVVVVVVVSSUFBQUFOISA6KSkgKEFuYXRvbCwgMTcuIEFwciAxOTk4LCAxODozMjo1MCk6CgpXZWdoaWVyIG5pbW10IGVpbiBTb3VuZE9iamVjdC4KCipwcnVzdCoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2V5J3MgNDAxLiBUb2QgKFJvY2h1cywgMTcuIEFwciAxOTk4LCAxOTo0NzoyMCk6CktleSB0ZWlsdCBEaXIgbWl0OiBuaW1tIG5lc2FqYSBuZXQgZXJuc3QgPTspIFNpZSBpc3Qgc2NobGllc3NsaWNoIG5lIEZyYXUKS2V5IHRlaWx0IERpciBtaXQ6ID07KSkpCnhtc2cKU2VuZCBtZXNzYWdlIGludG8gcm9vbS4KRW5kIG1lc3NhZ2Ugd2l0aCAiLiIgb3IgIioqIi4KS2V5IHRlaWx0IERpciBtaXQ6IG5pbW0gbmVzYWphIG5ldCBlcm5zdCA9OykgU2llIGlzdCBzY2hsaWVzc2xpY2ggbmUgRnJhdQpLZXkgdGVpbHQgRGlyIG1pdDogPTspKSkKW0VuZCBvZiBtZXNzYWdlXQpncmlucwpEdSBncmluc3QuCktleSB0ZWlsdCBEaXIgbWl0OiBWRVJSQUVURVIhISAsKQpOZXNhamEgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCj4gQW5hdG9sIGh1c3RldCBzaWNoIGZhc3QgZGllIFNlZWxlIGF1cyBkZW0gTGVpYi4KTmVzYWphIHNhZ3Q6IG5hIHdhcnRlCnNhZyBicmluZyBpaG4gZ2xlaWNoIG5vY2htYWwgdW0gOikKRHUgc2Fnc3Q6IGJyaW5nIGlobiBnbGVpY2ggbm9jaG1hbCB1bSA6KQo+IE5lc2FqYSBydWZ0OiBLRVkgISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEgRHUgc3RpcmJzdCBnbGVpY2gKTmVzYWphIHJ1ZnQ6IGRhcyA0MDEgbWFsIGFuIG1pcgpLZXkgdGVpbHQgRGlyIG1pdDogQXJnbCEgamV0enQgaGFiIGljaCBkZW4gQWVyZ2VyIGFtIEhhbHMgLi4uICpOZXNhamEgbmViZW4KS2V5IHRlaWx0IERpciBtaXQ6IHNpY2ggc2l0emVuZCBoYWJlbmQqIDopCktleSBydWZ0OiBBZWggLi4uIGRhcyB3YXIgLi4uIGVpbiAuLi4gbmFqYSAuLi4uIFZlcnNlaGVuISEhIC4pCj4gTmVzYWphIGZyYWd0IERpY2g6IFd1ZXJkZXN0IGR1IG1pciBkaWVzZW4gcGsgYXVjaCBlbnRmZXJuZW4gOikpKSk/Ck5lc2FqYSBncmluc3QgdG9lZGxpY2gKdGVpbGUgbmVzYWphIG1pdCBqYSA6KQpEdSB0ZWlsc3QgTmVzYWphIG1pdDogamEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLZXkncyA0MDEuIFRvZCAoS2V5LCAxNy4gQXByIDE5OTgsIDE5OjQ4OjA2KToKfiMhIHJuPVJvY2h1cyBydD04OTI4MzUyNDAgcmc9c2NobWFycm4KfiMhIHRpZD04OTI4MzUyNDAKQWVoIC4uLiBlaW5zcHJ1Y2ghISEhIC4pKQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEtleSdzIDQwMS4gVG9kIChOYWlyb2xmLCAxNy4gQXByIDE5OTgsIDE5OjUyOjA5KToKfiMhIHJuPUtleSBydD04OTI4MzUyODYgcmc9c2NobWFycm4KfiMhIHRpZD04OTI4MzUyNDAKYWJnZWxlaG50IDotKSkpKQpOYWkqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHcmltbWJvcm5zIEZlaGxlciBzaW5kIHdlaXRyZWljaGVuZCAoQXp6dXJvLCAxOC4gQXByIDE5OTgsIDAxOjA4OjU0KToKUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiAyNiB2b24gMzIKUmU6IGVpbiB0b2xsZXIgdGFnIGFuIGVpbmVtIHNwaW5kIChHcmltbWJvcm4sIDE3LiBBcHIgMTk5OCwgMTQ6NDY6NDYpOgpbQmV6dWc6IEFydGlrZWwgMjUgdm9uIFdpbGRyb3NlIHZvbSAxNy4gQXByIDE5OTgsIDE0OjQ1OjQxXQoKaGlsZmUgZmVobGVyCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKQ2xvc2luZyBkb3duLgpDb25uZWN0aW9uIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCgpEYSBmcmFnZSBpY2ggbWljaCB3ZWxjaGVuIEZlaGxlciBlciBnZW1hY2h0IGhhdCwgdW0gbWVpbmUgVmVyYmluZHVuZyB6dQp6ZXJzdG9lcmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYSBrYW5uIG1hbiBzaWNoIG51ciB3dW5kZXJuISEgKEF6enVybywgMTguIEFwciAxOTk4LCAwMjoxNTo1NSk6CkVpbmUgR2FlcnRuZXJpbiBrb21tdCBhbi4KRGVyIFd1bmRlcmRva3RvciBuaW1tdCBlaW5lbiBrbGVpbmVuIFNjaGx1Y2sgYXVzIHNlaW5lciBQcml2YXRmbGFzY2hlIHVuZApzaWVodCBkYW5hY2ggZGV1dGxpY2ggZ2VzdWVuZGVyIGF1cy4KRGVyIFd1bmRlcmRva3RvciBzYWd0OiBHZWh0IG5pY2h0IHZvcmJlaSEgTGFzc3QgRXVjaCBuaWNodCBkaWUgQ2hhbmNlIEV1cmVzCkxlYmVucyB2ZXJkZXJiZW4hCkRlciBXdW5kZXJkb2t0b3IgcnVmdDogR3JlaWZ0IHp1IHNvbGFuZ2UgZGVyIFZvcnJhdCByZWljaHQhCkRpZSBHYWVydG5lcmluIGJ1ZWNrdCBzaWNoLgpEZXIgV3VuZGVyZG9rdG9yIHNjaGxhZWd0IGVpbmVuIFNhbHRvIHVuZCBqdWJlbHQ6IFNjaGF1dCwgd2FzIGRlciBUcmFuayBFdWNoCmZ1ZXIgRmFlaGlna2VpdGVuIHZlcmxlaWh0IQpEZXIgV3VuZGVyZG9rdG9yIHZlcnNjaHdpbmRldCBrdXJ6IGluIHNlaW5lbSBXYWdlbi4KRWluZSBHYWVydG5lcmluIGdlaHQgbmFjaCBTdWVkZW4uCkRlciBXdW5kZXJkb2t0b3IgcnVmdDogVU5HTEFVQkxJQ0gsIE5PQ0ggTklFIERBR0VXRVNFTiEgICAgICAgIAoKCkljaCB3aWxsIG5pY2h0IHdpc3NlbiB3YXMgZGllIGRhIGdlbWFjaHQgaGFiZW4hIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG1wZiAoVGVkZHksIDE4LiBBcHIgMTk5OCwgMTQ6MjQ6MTUpOgpEdSB0ZWlsc3QgSGFyZXRoIG1pdDogSWNoIG1hY2ggZ2VyYWRlIE5hZ2EKSGFyZXRoIHRlaWx0IERpciBtaXQ6IGNvb2wKW1RvZDpMYXJzXSBFaW4gVGVtcGVsd2FlY2h0ZXIgaGF0IGdlcmFkZSBUZWRkeSB1bWdlYnJhY2h0LgpEZWluIEtvZXJwZXIgZ2Vob3JjaHQgRGlyIG5pY2h0ICEKPgpNaXN0ISBEYXMgd2FyIHNjaG9uIHdpZWRlciB6dSBrbmFwcCEKCgpJY2ggbWl0IG1laW5lciBncm9zc2VuIEtsYXBwZSA7KAoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hY2hvcyB1bnRlciBzaWNoIDopIChOYWNodHdpbmQsIDE4LiBBcHIgMTk5OCwgMjE6Mjc6MTgpOgoKIERlaW4gRnJldW5kIEZyZWl0YWcgdGVpbHQgRGlyIG1pdDogZnJhdWVuIGFuIGRlbiBoZXJkISAuLi4gYWVoIC0gc29ycnksCmtpbGFyCkRlaW4gRnJldW5kIEZyZWl0YWcgdGVpbHQgRGlyIG1pdDogOykKW1RydmVzOkx1Z10gRnJhdWVuIGluIGRpZSBLbGVyaWtlcmdpbGRlISBIdWh1IE1hZW5uZXJzIHVuZCBhdXNuYWhtc3dlaXNlIGF1Y2gKW1RydmVzOkx1Z10gSWhyIFNjaG5pdHRlbgoKTmFjaHR3aW5kIGRlbmt0IC4gbyBPIChEaWUgbnUgd2llZGVyISkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClplaXRnZWZ1ZWhsLi4uIChBbmF0b2wsIDE5LiBBcHIgMTk5OCwgMDI6Mzk6MzkpOgpEZXIgU2NobmVpZGVyIHNhZ3Q6IEFuIGRlciBzY2h3YXJ6ZW4gV2lsZGxlZGVyaG9zZSB3aXJkIG1vbWVudGFuIG5vY2gKRGVyIFNjaG5laWRlciBzYWd0OiBnZWFyYmVpdGV0LiBWZXJzdWNoZW4gU2llIGVzIGRvY2ggYml0dGUgaW4gLTI0ODA0MApEZXIgU2NobmVpZGVyIHNhZ3Q6IFN0dW5kZW4sIC0zOCBNaW51dGVuIHVuZCAtNTMgU2VrdW5kZW4gbm9jaCBlaW5tYWwuCgpKYSwga2xhci4KQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTEogZW4gZ3JvcyAoQW5hdG9sLCAxOS4gQXByIDE5OTgsIDA1OjE0OjI0KToKRHUgc2Nod2ltbXN0IGluIGVpbmVtIHppZW1saWNoIGthbHRlbiBGbHVzcyAtIG5vY2ggZGF6dSBmYXN0IHVudGVyIGVpbmVtCmdlZmFlaHJsaWNoIGF1c3NlaGVuZGVuIFdhc3NlcmZhbGwuIER1IGthbm5zdCB6d2FyIGhhbGJ3ZWdzIHNjaHdpbW1lbiwgYWJlcgplcnN0ZW5zIGlzdCBEaXIgZGFzIFdhc3NlciB6dSBrYWx0IHVuZCB6d2VpdGVucyBzdHJvZW10IGVzIHp1IHN0YXJrLCBhbHMgZGFzcwptYW4gc2ljaCBoaWVyIGdlbXVldGxpY2ggYXVmaGFsdGVuIGtvZW5udGUuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB1ZmVyLgpMaXR0bGUgSm9obi4gICBMaXR0bGUgSm9obi4gICBMaXR0bGUgSm9obi4gICBMaXR0bGUgSm9obi4KTGl0dGxlIEpvaG4uICAgTGl0dGxlIEpvaG4uICAgTGl0dGxlIEpvaG4uICAgCgpPaGplZ2VybGUhIDopCldlbm4gZGFzIFJvYmluIHd1ZXNzdGUuLi4KCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBaaW1tZXJrbmFwcGhlaXQgKFd1cnplbCwgMTkuIEFwciAxOTk4LCAxMjoyNjozOCk6Cn4jISBybj1GcmV1bmQgcnQ9ODkyNzQxNDMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkyNzQxNDMwCmhtLi4uCmdhZXN0ZXppbW1lciBnaXBzIG5pY2ggbWVoci4KYXVmIHdhcyBmdWVyIGlkZWVuIG1hbmNoZSBsZXV0ZSBrb21tZW4uLi4KCnd1cnplbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXMgZ2lidCBrZWluIE11ZCBhdWYgSGF3YWlpIC0gZHJ1bSBibGVpYiduIHdlIGhpZXIhIChGcmV1bmQsIDIwLiBBcHIgMTk5OCwgMTA6MTc6NDYpOgpBdXMgZHduZXdzOgogICBVbmQgamV0enQgbm9jaCBlaW4gUmVpc2VydWY6IEZyYXUgRWxrZSBTY2htYWVkaWNrZSBhdXMgQmFkZW4sIHp1ciBaZWl0CiAgIGF1ZiBIYXdhaWksIHdpcmQgZHJpbmdlbmQgZ2ViZXRlbiwgc2ljaCBiZWkgaWhyZXIgVGFudGUgR2VyZGEgenUKICAgbWVsZGVuLgogICAoRGV1dHNjaGUgV2VsbGUsIDIwLiBBcHIgMTk5OCwgMDk6MDQ6MDEpOgoKSG0sIG9iIGVzIGF1ZiBIYXdhaWkgYXVjaCBNRy1TcGllbGVyIGdpYnQ/CgpOZXVnaWVyaWcKRnJldW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVzIGdpYnQga2VpbiBNdWQgYXVmIEhhd2FpaSAtIGRydW0gYmxlaWInbiB3ZSBoaWVyISAoS29iYXlhc2hpLCAyMC4gQXByIDE5OTgsIDExOjIyOjA0KToKfiMhIHJuPUZyZXVuZCBydD04OTMwNjAyNjYgcmc9c2NobWFycm4KfiMhIHRpZD04OTMwNjAyNjYKR2lidCdzOiBTdXJmZXIga29tbXQgYXVzIEhvbm9sdWx1IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWhoamEgKE5haXJvbGYsIDIwLiBBcHIgMTk5OCwgMTM6MDQ6NTEpOgoqbGFjaCoKd2FuZGx1bmcgc2hhcmlhIG5hY2ggbHVmdApEdSBvZWZmbmVzdCBlaW5lIGtsZWluZSBQaGlvbGUgdW5kIHNjaGxldWRlcnN0IGRlbiBJbmhhbHQgYXVmIFNoYXJpYS4KU2hhcmlhIHdlaHJ0IERlaW5lbiBTcHJ1Y2ggYWIuCgoKCndhcyBzb2xsbiBkYXMgPyA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhaGhqYSAoV2FyZ29uLCAyMC4gQXByIDE5OTgsIDEzOjA5OjI5KToKfiMhIHJuPU5haXJvbGYgcnQ9ODkzMDcwMjkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMDcwMjkxCkR1IGhhZXR0ZXN0IFNoYXJpYSB2aWVsbGVpY2h0IHZvcmhlciBlcmtsYWVyZW4gc29sbGVuLCBkYXNzIGVzIHNpY2ggZGFiZWkKTklDSFQgdW0gZWluIEJhcnR3dWNoc21pdHRlbCBoYW5kZWx0LgogIFdhcmdvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2V5IHVuZCBkaWUgRnJhdWVuLi4gOikgKFplcGh5ciwgMjAuIEFwciAxOTk4LCAxNzo1NzoyMyk6CkVzIHN0ZWh0IGRlcnplaXQgd2llIGZvbGd0OgpLZXk6IElJClRhbWVsaSo6IElJClplcGh5cjogSQpLZXkgYmVoYXVwdGV0LCBlciBoYWV0dGUgbWluZGVzdGVucyBlaW5lIDY1IGdld29yZmVuIHVuZCBnaWJ0IGRlbiBCZWNoZXIgYW4KVGFtZWxpIHdlaXRlci4KRHUgbXVzdGVyc3QgS2V5IHN0cmVuZy4KPiBLZXkgZ3JpbnN0IFRhbWVsaSBhbi4KVGFtZWxpIGhhdCBzaWNoIGVudHNjaGllZGVuIHp1IHd1ZXJmZWxuLgpUYW1lbGkgd3VlcmZlbHQgbm9jaCBlaW5tYWwgYmxpbmQuClRhbWVsaSB3dWVyZmVsdCBub2NoIGVpbm1hbCBibGluZC4KVGFtZWxpIGJlaGF1cHRldCwgc2llIGhhZXR0ZSBtaW5kZXN0ZW5zIGVpbmVuIEVpbmVycGFzY2ggZ2V3b3JmZW4gdW5kIGdpYnQgZGVuCkJlY2hlciBhbiBaZXBoeXIgd2VpdGVyLgpEdSBiZWhhdXB0ZXN0LCBEdSBoYWV0dGVzdCBtaW5kZXN0ZW5zIGVpbmVuIFp3ZWllcnBhc2NoIGdld29yZmVuIHVuZCBnaWJzdCBkZW4KQmVjaGVyIGFuIEtleSB3ZWl0ZXIuClRhbWVsaSBncmluc3QuCktleSBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpLZXkgZ3J1ZWJlbHQgZWluZSBXZWlsZSB2b3Igc2ljaCBoaW4uClRhbWVsaSBsYWVjaGVsdCB1bnNjaHVsZGlnLgpEdSBzYWdzdDogIGRhIGlzIGpldHp0biBtYXggZHJ1bnRlIHJ1bmQgS2V5IGZsaWVndCA6KQo+IEtleSBkZW5rdCAgIC4gbyBPIChuYWphIC4uLiBoYWIgbm9jaCAyIC4uLiA6KSkKS2V5IGdsYXVidCBaZXBoeXIgbmljaHQgdW5kIGhlYnQgYXVmLgpaZXBoeXIgaGF0dGUgYWJlciBzb2dhciBlaW4gTWFleGNoZW4gZ2V3b3JmZW4uCktleSBoYXQgZGllc2UgUnVuZGUgd29obCB2ZXJsb3Jlbi4KS2V5IHNjaGVpZGV0IGF1cyB1bmQgZ2lidCBUYW1lbGkgZGVuIFd1ZXJmZWxiZWNoZXIuClRhbWVsaSBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KRHUgcm90ZmxzdC4KPiBUYW1lbGkgcm90Zmx0LgpUYW1lbGkgc2FndDogc3VwZXIKS2V5IHRlaWx0IERpciBtaXQ6IEFyZ3MgOikKCmltbWVyIG5vY2gga2ljaGVybmQsIFplcGh5cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3VjaHQ/Pz8gKEFsaW5lLCAyMS4gQXByIDE5OTgsIDExOjMyOjMzKToKCkhpLAoKd2VubiBtZWluIEthbGVuZGVyIGhpZXIgc3RpbW10LCBpc3QgaGV1dGUgZGVyIDIxLjQuOTguCnRqYSB1bmQgZWluIGZpbmdlciBhbGluZSBlcmdpYnQ6CkFsaW5lIGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBIYWdlbi4KRWluZ2Vsb2dndCBzZWl0OiBNb24sICA2LiBBcHIgMTk5OCwgMTc6MjY6NTMKVm9sbGVyIE5hbWU6IFtUZWFtOld1cnN0aWVzXSBBbGluZSAoQnJhdGhhZWhuY2hlbiwga251c3ByaWcpClJhc3NlOiBFbGYsICBHaWxkZTogWmF1YmVyZXIsICBHZXNjaGxlY2h0OiB3ZWlibGljaC4uLi4uCgpEYXMgbmVubiBpY2ggU3VjaHQhClNlaXQgMTUgVGFnZW4gZWluZ2Vsb2dndCAhISEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdWNodD8/PyAoUmluZ29yLCAyMS4gQXByIDE5OTgsIDExOjM2OjU1KToKfiMhIHJuPUFsaW5lIHJ0PTg5MzE1MTE1MyByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE1MTE1MwpUc3RzdHMgLi4uIGRpZSBBdXNnYWJlIHZvbiAiZmluZ2VyIGFsaW5lIiBnYW56IGdlc2NoaWNrdCB2b3IgZGVyIFplaWxlIG1pdCBkZW0KQWx0ZXIgYWJnZXNjaG5pdHRlbi4KClJpbmdvciBkZW5rdCAuIG8gTyhGcmF1ZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFN1Y2h0Pz8/IChXYXJnb24sIDIxLiBBcHIgMTk5OCwgMTM6MjY6MTcpOgp+IyEgcm49UmluZ29yIHJ0PTg5MzE1MTQxNSByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE1MTE1MwpXZW5uIHNpZSBzY2hvbiBsYWVuZ2VyIGVpbmdlbG9nZ3QgaXN0LCBhbHMgZGFzIE11ZCBtb21lbnRhbiB1cCBpc3QsIGxhZXNzdCBkYXMKc2NobGltbWVzIGZ1ZXIgZGFzIEFsdGVyIGJlZnVlcmNodGVuLi4uIDopCiAgV2FyZ29uClBTOiBBYmVyIFNjaGF0eiwgYml0dGUgbGVnIGRvY2ggZGFzIE51ZGVsaG9seiB3ZWcuIER1IG1hY2hzdCBlaW5lbiBncm9zc2VuCiphdXRzY2gqICphdWEqIEFBQUFBQUFBQUhISEhISEgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdhdGVzIHVzdy4gKEFsYm9pbiwgMjEuIEFwciAxOTk4LCAxNDoxMjo1NSk6CkhldXRlIGluIGRlbiBOYWNocmljaHRlbiBnZWxlc2VuOgoKIldpbmRvd3MgOTgiIHN0dWVyenQgYmVpIFByYWVzZW50YXRpb24gYWIKCkNoaWNhZ28gKGRwYSkgLSBWb3IgcnVuZCA0LjAwMCBDb21wdXRlci1FeHBlcnRlbiBoYXQgTWljcm9zb2Z0LSBDaGVmIEJpbGwKR2F0ZXMgZXJsZWJ0LCB3YXMgZnxyIE1pbGxpb25lbiB2b24gUEMtQmVzaXR6ZXJuIHp1bSBsZWlkdm9sbGVuCiBBbGx0YWcgZ2VodnJ0LiBCZWkgZGVyIEVydmZmbnVuZyBkZXIgRnJ8aGphaHJzLUNvbWRleCwgZWluZXIgZ3JvX2VuCkNvbXB1dGVybWVzc2UgaW4gQ2hpY2Fnbywgc3R8cnp0ZSBHYXRlcyBkZXIgV2luZG93cy1QQyBhYi4gR2F0ZXMKIHdvbGx0ZSBkaWUgVm9yenxnZSBkZXMgbmV1ZW4gQmV0cmllYnNzeXN0ZW1zICJXaW5kb3dzIDk4IiB2b3JmfGhyZW4uClVudGVyZGVzc2VuIHN0ZWh0IGVpbmUgRW50c2NoZWlkdW5nIGltIEthcnRlbGxyZWNodHN2ZXJmYWhyZW4gZ2VnZW4KIHNlaW4gVW50ZXJuZWhtZW4gd2VnZW4gZGVyIHVuenVsYWVzc2lnZW4gQnVlbmRlbHVuZyB2b24gIldpbmRvd3MiIHVuZCBkZW0KSW50ZXJuZXQtQnJvd3NlciAiRXhwbG9yZXIiIG5vY2ggYXVzLiBkcGEgYXcgdG8gIAoKdHV0IG1pciBsZWlkIG1pdCBkZW4gVW1sYXV0ZW4gaGFicyBnZXBhc3RldApBbGJvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJlaW0gTWFleHhlbG46IChIb2JvLCAyMS4gQXByIDE5OTgsIDE2OjA2OjM0KToKWmVwaHlyIGRlbmt0ICAgLiBvIE8gKG51ciBibG9uZGUgRnJhdWVuIHNpbmQgZWNodGUgRnJhdWVuKQoKTmEsIHdlbm4gc2llIG1laW50Li4uCgogIEhvYm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCZWltIE1hZXh4ZWxuOiAoQWxpbmUsIDIxLiBBcHIgMTk5OCwgMTY6NDA6MjMpOgp+IyEgcm49SG9ibyBydD04OTMxNjc1OTQgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjc1OTQKCldvIHNpZSByZWNodCBoYXQgOikKCkFsaW5lIChyb3RibG9uZGUgRW1hbnplKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGdhdGVzIHVzdy4gKERpZWRlciwgMjEuIEFwciAxOTk4LCAxNzo0NTowNSk6Cn4jISBybj1BbGJvaW4gcnQ9ODkzMTYwNzc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTYwNzc1CmljaCBoYWJzIGluIGRlbiBuYWNocmljaHRlbiBnZXNlaGVuLi4uIHp1bSBzY2hpZXNzZW4sIHdpZSBiaWxseWJveSBhdWYgZGVuCmJsdWVzY3JlZW4gZ2VndWNrdCBoYXQgOy0pKSkKCkRpZWRlciwga2ljaGVydCBpbW1lciBub2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBnYXRlcyB1c3cuIChLZXksIDIxLiBBcHIgMTk5OCwgMTc6NTU6NTkpOgp+IyEgcm49RGllZGVyIHJ0PTg5MzE3MzUwNSByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQpIYXN0ZXMgYXVmZ2Vub21tZW4/IC4pClNvd2FzIHNvbGx0ZSBtYW4gaW0gTmV0IHZlcm9lZmZlbnRsaWNoZW4gLCkKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZ2F0ZXMgdXN3LiAoRGllZGVyLCAyMS4gQXByIDE5OTgsIDE3OjU2OjQ5KToKfiMhIHJuPUtleSBydD04OTMxNzQxNTkgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKbGVpZGVyIG5laW4uLi4ga2FtIHp1IHVlYmVycmFzY2hlbmQgKHdvYmVpIGljaCBqZXR6dCBuaWNoIGRlbiBhYnN0dXJ6IG1laW5lLApkYXMgaXN0IGphIGtsYXIgKmdyaW5zKiwgc29uZGVybiBkaWUgbmFjaHJpY2h0IGFuIHNpY2gpIDotKQoKRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGdhdGVzIHVzdy4gKFBhdHJ5biwgMjEuIEFwciAxOTk4LCAxOToyODo1OSk6Cn4jISBybj1EaWVkZXIgcnQ9ODkzMTczNTA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTYwNzc1CmljaCBmaW5kcyBlaGVyIHp1bSBzY2hpZXNzZW4sIHdpZSBkaWVzZSBtaXR0ZWlsdW5nIGpldHp0IGludGVybmF0aW9uYWwKYXVyZ2ViYXVzY2h0IHdpcmQgdm9uIGRlbiBnYW56ZW4gYW5nZWJsaWNoLXN1cGVyLXVzZXJuLWRpZS1zaWNoLWltbWVyLQpyZWNodGZlcnRpZ2VuLW11ZXNzZW4tZGFzcy1zaWUtZGFzLWJlc3NlcmUtYnMtaGFiZW4uCmRhcyB3aW5kb3dzLTk4IG5vY2ggbmljaCBmZXJ0aWcgaXN0LCBoYXQgYmlsbGkgZGllc21hbCBzb2dhciBzZWxic3QgZXJrYW5udCwKYWJlciBkYXMgc2FndCBhdWNoIGtlaW5lciBkYXp1Li4uCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBnYXRlcyB1c3cuIChBbmF0b2wsIDIxLiBBcHIgMTk5OCwgMTk6MzQ6MTIpOgp+IyEgcm49UGF0cnluIHJ0PTg5MzE3OTczOSByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQpPY2gsIGVyIHJldHRldGUgZ2Vrb25udCBzaW5uZ2VtYWVzcyBtaXQgIlRqYSwgZGFzIGlzdCBkZXIgR3J1bmQsIHdhcnVtCndpciBXaW5kb3dzOTggbm9jaCBuaWNodCBhdXNsaWVmZXJuLiIgLi4uIGFiZXIgaWNoIGdsYXViZSBrYXVtLCBkYXNzIGVyCmF1ZiBlaW5lciBQcmFlc2VudGF0aW9uIG1pdCBlaW5lbSBibHVlc2NyZWVuIGdlcmVjaG5ldCBoYXQuIDopIFVuZCBhbGxlaW4KZGFzIFByZXN0aWdlLCBkYXMgZXIgZGFkdXJjaCB3aXJrbGljaCB2ZXJsaWVydCwgZGFzIGlzdCBtaXIgZWluIGdld2lzc2VzCk1hc3MgKGphd29sbCkgYW4gU2NoYWRlbmZyZXVkZSB3ZXJ0IDopCgpBbmF0b2wsIGthbm4genVtaW5kZXN0IFdpbmRvd3M5NSBuaWNodCBtZWhyIGF1c3N0ZWhlbgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGdhdGVzIHVzdy4gKE92ZXJsb3JkLCAyMS4gQXByIDE5OTgsIDE5OjM3OjE2KToKfiMhIHJuPUFuYXRvbCBydD04OTMxODAwNTIgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKCldlbGNoZXMgUHJlc3RpZ2U/IDopCgpPdmkgKnJvdGZsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZ2F0ZXMgdXN3LiAoRW1iZSwgMjEuIEFwciAxOTk4LCAyMTowOTozOSk6Cn4jISBybj1QYXRyeW4gcnQ9ODkzMTc5NzM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTYwNzc1Cndlbm4gZXMgYWxzbyBzZWxic3R2ZXJzdCJhbmRsaWNoIGlzdCwgZGFzCnNvZnR3YXJlIGRpZSBub2NoIG5pY2h0IGZlcnRpZyBpcywgYmVpIGVpbmVyIGRlbW8gYWJzdCJ1cnR6dCwKZGFubiBlcmtsImFyIG1pciBtYWwsIHdhcnVtIGRhcyBzb25zdCBuaWNodCBwYXNzaWVydCA6LSkKCm5vcm1hbGVyd2Vpc2Ugd2VyZGVuIGJlaSBzb2xjaGVuIGRlbW9zIG1laHJlcmUgcmVjaG5lciBnbGVpY2h6ZWl0aWcKdmVyd2VuZGV0LCB3ZW5uIGVpbmVyIGFic3QidXJ0enQ6IGhvcHAgenVtIG4iYWNoc3RlbiB1bXNjaGFsdGVuLCBiZXZvciBlaW5lcgp3YXMgbWVya3QuCgp3ZW5uIGFsc28gdHJvdHphbGxlbSBiZWkgc28gZWluZXIgZGVtbyBkb2NoIHdhcyBwYXNzaWVydCwKZGFubiB3aXJkIGRhIG5peCBhdWZnZWJhdXNjaHQhCgpncnVzcywgZU1CZWUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBnYXRlcyB1c3cuIChQYXRyeW4sIDIxLiBBcHIgMTk5OCwgMjE6MzQ6MjApOgp+IyEgcm49RW1iZSBydD04OTMxODU3Nzkgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKaWhyIG1hY2h0IGV1Y2ggZWNodCBsYWVjaGVybGljaCwgaW5kZW0gaWhyIGpldHp0IGF1Y2ggbm9jaCBzb2xjaGUgdGhlb3JpZW4KYXVmc3RlbGx0Li4uc2ljaGVyIHdhciBlcyBuaWNoIGdlcGxhbnQsIHdhZXJlIGphIGRvb2YuLi5hYmVyIHp1IHJlY2huZW4gaXN0CmJlaSBlaW5lbSB1bmZlcnRpZ2VuIHByb2R1a3QgYWxsZW1hbCBkYW1pdC4gdW5kIHdlciBqZXR6dCBiZWhhdXB0ZXQsIGVzCndhZXJlIG5vY2ggbmllIHp1dm9yIGplbWFuZCBhbmRlcmVtIHBhc3NpZXJ0LCBkZXIgaGF0IGdlbGluZGUgZ2VzYWd0CjAgYWhudW5nIHZvbiBjb21wdXRlcm4gKGJpbiBpY2ggamV0enQgZWluZW0gd2luZG93cy1oYXNzZXIgenUgbmFoZSBnZXRyZXRlbj8pCmFsc28gZ2FueiBlaHJsaWNoOiBmdWVyIG1pY2ggaXN0IHdpbmRvd3MgYXVjaCBuaWNoIGdyYWQgZGVyIHdlaXNoZWl0CmxldHp0ZXIgc2NobHVzcywgYWxsZXMgc2Nob24gbWFsIGRhZ2V3ZXNlbiwgaWRlZW5rbGF1IG9obmUgZW5kZSB1bmQgbWVpc3QKbmljaHQgbWFsIGJlc29uZGVycyBndXQuIG5pY2h0c2Rlc3RvdHJvdHogbmVydnQgZWluZW4gZGllIHN0YWVuZGlnZQpiZXNzZXJ3aXNzZXJlaSB2b24gemFobHJlaWNoZW4gbGV1dGVuLCBkaWUgZWlnZW50bGljaCBiZXNzZXIgZGVuIG11bmQKaGFsdGVuIHNvbGx0ZW4sIGRhIHNpZSB2b20gdG9waWMgZWlnZW50bGljaCBuaWNodCBkaWUgYm9obmUgdmVyc3RlaGVuLgp3aW5kb3dzIGlzdCBudW5tZWhyIGxhbmdlbmljaHQgc28gc2NobGVjaHQsIHdpZSB2aWVsZSBiZWhhdXB0ZW4sIGFiZXIgYXVjaApsYW5nZW5pY2h0IHNvIGd1dCB3aWUgYmlsbGkgZXMgZ2VybmUgaGFiZW4gd29sbHRlLgppY2ggdmVyd2Vpc2UgekIgbWFsIGF1ZnMgb2ZmaWNlLXBha2V0LCBzaWNoZXIgZWluZSBpbnp3aXNjaGVuIHJlY2h0CnVlYmVyZGltZW5zaW9uaWVydGUgYW53ZW5kdW5nIGRpZSBmdWVyIGdyb3NzZSBwcm9qZWt0ZSBuaWNodCBkaWUKZ2VlaWduZXRzdGUgaXN0LCBhYmVyIHdlciBzaWNoIGVpbm1hbCBtaXQgZGVtIHBha2V0IGFuZ2VmcmV1bmRldCBoYXQsIGthbm4KYXVjaCBhdWYgemFobHJlaWNoZSB2b3J6dWVnZSB2ZXJ3ZWlzZW4uIGVzIGdpYnQgbnVyIHdlbmlnZSBwcm9ncmFtbXN5c3RlbWUsCmRpZSBlcyBkYW1pdCBhdWZuZWhtZW4ga29lbm50ZW4uCmpldHp0IGtvbW1lbiBnbGVpY2ggd2llZGVyIGVpbiBwYWFyIGtyYWtlbGVyLCBkaWUgd2FzIHZvbiBsYXRleCB1bmQgc28gd2VpdGVyCmZhc2Vsbi4uLnNpY2hlciwgYWxsZSBwcm9kdWt0ZSBzaW5kIGR1cmNoYXVzIHZlcmJlc3NlcmJhciB1bmQgamVkZXMgaGF0CnNlaW5lIHN0YWVya2VuLCBpY2ggaGFiIGF1Y2ggbWVociBtaXQgbGF0ZXggZ2VhcmJlaXRldCwgYWxzIG1hbmNoIGVpbmVyLApkZXIgYXVmIGVpbm1hbCBhbGwgZGVzc2VuIG1vZWdsaWNoa2VpdGVuIGtlbm50IChrZW5uZW4gd2lsbCkuLi5hYmVyIGZ1ZXIKa2xlaW5lIGRva3VtZW50ZS9icmllZmUgdS5zLncuIGlzdCBlaW4gd2lud29yZCB6QiBhbGxlbWFsIGJlc3NlciwgZnVlciBidWVjaGVyCmRlcnplaXQgX25vY2hfIGxhdGV4IGJ6dy4gYW5kZXJlIHN5c3RlbWUsIGRpZSB3ZWl0YXVzIGhhZXVmaWdlciB2ZXJ3ZW5kZXQKd2VyZGVuLgpuZW4gYW5kcmVzIGJlaXNwaWVsIHNpbmQgcmF5dHJhY2VyL21vZGVsZXIsIGVpbiBnZWJpZXQsIHdlbGNoZXMgaWNoIG51biBuYWVoZXIKa2VubmUuIHVudGVyIHdpbmRvd3Mgc2luZCBkb3J0IGJlcmVpdHMgYmVhY2h0bGljaGUgcHJvZ3JhbW1lIGVyaGFlbHRsaWNoCnVuZCBzdGVoZW4gZGVuIHVuaXgtcGVuZGFudGVuIGltbWVyIHdlbmlnZXIgbmFjaC4uLmJ6dy4ga29zdGVuIGphIGF1Y2gKbnVyIG5lbiBicnVjaHRlaWwgZGVyIGxldHp0ZXJlbi4KaW5zZ2VzYW10IGdlc2VoZW4gaXN0IGlzdCBuaWNodCBudXIgZGFzIGJldHJpZWJzc3lzdGVtIGZ1ZXIgZ3V0ZXMgaGFuZGxpbmcKdmVyYW50d29ydGxpY2gsIGVpbmVuIGdyb3NzZW4gdGVpbCBkYXp1IHRyYWdlbiBhdWNoIGRpZSBwcm9ncmFtbWUgZGFyYXVmCmJlaSB1bmQgbmljaHQgYWxsZSBmaXJtZW4gYXJiZWl0ZW4gZWJlbmQgZ2V3aXNzZW5oYWZ0Lgp2aWVsZSBmaXJtZW4gKHNpdWVoZSB3aW5kb3dzKSBlcnpldWdlbiBhdWNoIHZpZWxlIHNjaHdhcnplIHNjaGFmZS4KCi0tLS0tLQpwYXRyeW4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGhqYSAgKE5haXJvbGYsIDIxLiBBcHIgMTk5OCwgMjE6Mzc6MDgpOgpXaWUgc29sbCBtYW4gZGFzIGpldHp0IHZlcnN0ZWhlbiA/IDotKQoKUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiAyNyB2b24gMjcKUmU6IElDSCBXSUxMIEVJTkVOIFJFQk9PVCAhISEhIChLaWxhciwgMjEuIEFwciAxOTk4LCAyMTozNjoyMik6CltCZXp1ZzogQXJ0aWtlbCAyNiB2b24gU2hhcmlhIHZvbSAyMS4gQXByIDE5OTgsIDIxOjI1OjA2XQoKRGVtIGthbm4gaWNoIG1pY2ggbnVyIHZvbGwgYW5zY2hsaWVzc2VuLgoKS2lsYXIsIGF1Y2ggbWFsIEVpbnplaWxpZyA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBnYXRlcyB1c3cuIChBc21vZGlzLCAyMS4gQXByIDE5OTgsIDIxOjM3OjQzKToKfiMhIHJuPUFsYm9pbiBydD04OTMxNjA3NzUgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKSXN0IGlobSBkYXMgbmljaHQgc2Nob24gaW4gU3BhbmllbiBwYXNzaWVydCA/IG9kZXIgd2FyIGRhcyBiZWkgV2luZG93cyA5NSA/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBnYXRlcyB1c3cuIChSaW5nb3IsIDIxLiBBcHIgMTk5OCwgMjE6NDk6MjQpOgp+IyEgcm49UGF0cnluIHJ0PTg5MzE4NzI2MCByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQpOYWNoIGRpZXNlbSBkb2NoIHJlY2h0IGxhbmdlbiBBcnRpa2VsIHNvIGdhbnogb2huZSBuZXVlIEVya2VubnRuaXNzZSBtb2VjaHRlCmljaCBkZW4gQXV0b3IgZG9jaCBtYWwga3VyeiBhdXMgc2VpbmVtIHZvcmhlcmdlaGVuZGVuIEFydGlrZWwgeml0aWVyZW46IAoKaWNoIGZpbmRzIGVoZXIgenVtIHNjaGllc3Nlbiwgd2llIGRpZXNlIG1pdHRlaWx1bmcgamV0enQgaW50ZXJuYXRpb25hbAphdXJnZWJhdXNjaHQgd2lyZCB2b24gZGVuIGdhbnplbiBhbmdlYmxpY2gtc3VwZXItdXNlcm4tZGllLXNpY2gtaW1tZXItCnJlY2h0ZmVydGlnZW4tbXVlc3Nlbi1kYXNzLXNpZS1kYXMtYmVzc2VyZS1icy1oYWJlbi4KCjxaaXRhdCBFbmRlPgoKQmlzIHp1IGRlbiB6d2VpIEFydGlrZWxuIHZvbiBQYXRyeW4gaGFiIGljaCBlaWdlbnRsaWNoIG51ciBlaW4gcGFhciBFaW56ZWlsZXIKYWxzIFJlYWt0aW9uIGF1ZiBkaWUgTmFjaHJpY2h0IGdlbGVzZW4uIFVuZCB2b24gZGVuZW4gaGF0IGVpZ2VudGxpY2gga2VpbmVyCm5lbiBCZXRyaWVic3N5c3RlbWtyaWVnIGFuZ2VmYW5nZW4uCgpGYXNzIERpciBkb2NoIGJpdHRlIHp1IGFsbGVyZXJzdCBhbiBkaWUgZWlnZW5lIE5hc2UsIFBhdHJ5biwgYmV2b3IgRHUgenVtClJ1bmR1bXNjaGxhZyBnZWdlbiBhbGxlIENvbXB1dGVyYmVudXR6ZXIgYW5zZXR6dC4KCkluIGRlciByaWNodGlnZW4gUnVicmlrIHNpbmQgd2lyIGphIHdlbmlnc3RlbnMgc2Nob24sClJpbmdvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCZWltIE1hZXh4ZWxuOiAoVGVkZHksIDIyLiBBcHIgMTk5OCwgMDM6MTM6MjEpOgp+IyEgcm49QWxpbmUgcnQ9ODkzMTY5NjIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTY3NTk0CldhciBkYXMgbmljaHQgUm9zdCBiZWkgZGlyLCBBbGluZT8KClRlZGR5LCB2ZXJkcnVlY2t0IHNpY2ggZ2FueiBzY2huZWxsIHdpZWRlciA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmF1bGUgU3BpZWxlciAoTW9yZ290aCwgMjIuIEFwciAxOTk4LCAwNzoyMzowOSk6CiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNaXQsIDIyLiBBcHIgMTk5OCwgMDc6MjI6MzcgKDggVGVpbG5laG1lcikKCkVtYmUuLi4uLi4uLi4uLkoucyBTb3Jhbi4uLi4uLi4uLi5KLlMgWW9naWJhZXIuLi4uLi4uLi5TIFJlZG5vc2UuLi4uLi4uLkouUwpTbmlicmlsLi4uLi4uLi5KLlMgVG9ldGVyLi4uLi4uLi4uSi5NIE1vcmdvdGguLi4uLi4uLi4uUiBCbG9vZHloYXJyeS4uLi4uLlIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGdhdGVzIHVzdy4gKEdyaW1tYm9ybiwgMjIuIEFwciAxOTk4LCAwODozNTo1OSk6Cn4jISBybj1SaW5nb3IgcnQ9ODkzMTg4MTY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTYwNzc1CkJlc29uZGVycywgd2VpbCBlciBzbyBzY2hvZW4gdW5zaW5uaWdlIEJlaXNwaWVsZSBuZW5udC4uLiBJbSBSYXl0cmFjaW5nLSBldGMuCkdlYmlldCBzaW5kIGFuZ2VibGljaCAoYyd0IDcvOTgpIFNhY2hlbiB3aWUgcG92cmF5LCBCTVJULCBHaW1wLCBQaG90b1JlYWxpc3RpYwpSZW5kZXJNYW4gZGVuIHRldWVyIHp1IGVyd2VyYmVuZGVuIFdpbmRvd3MvVW5peCBQcm9ncmFtbWVuIHp1bWluZGVzdAplYmVuYnVlcnRpZy4gS2FubiBpY2ggYWJlciBuaWNodHMgenUgc2FnZW4sIGtlaW5lIGVpZ2VuZSBFcmZhaHJ1bmcuIERhZnVlcgpzY2hyZWliZSBpY2ggQnJpZWZlIG51ciBub2NoIG1pdCBkZXIgZGluYnJpZWYtS2xhc3NlIHVudGVyIExhVGVYLiBBYmVyIGRhbm4KdmVyemljaHRlIGljaCBhdWNoIGZyZWl3aWxsaWcgYXVmIHNvIHNjaG9lbmUgZmVhdHVyZXMgd2llIGRyZWkgdmVyc2NoaWVkZW5lClNjaHJpZnRhcnRlbiB1bmQgdmllciBTY2hyaWZ0Z3JvZXNzZW4gcHJvIFNlaXRlLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QgaXN0IGVpZ2VudGxpY2ggbnVyIHp1IGZhdWwgZnVlciBlaW5lbiBCcmllZiBuZXUgenUKYm9vdGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBnYXRlcyB1c3cuIChEaWVkZXIsIDIyLiBBcHIgMTk5OCwgMDk6NTA6NTYpOgp+IyEgcm49UGF0cnluIHJ0PTg5MzE4NzI2MCByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQpIYXN0IER1IGVpbiBQcm9ibGVtIG9kZXIgd2VzaGFsYiBtdXNzdCBEdSBqZXR6dCBkaWUgdGF1c2VuZHN0ZSBNUy1EaXNrdXNzaW9uCnZvbSBTdGFwZWwgYnJlY2hlbiB1bmQgRGljaCB1ZWJlciBkaWUgbW9raWVyZW4sIGRpZSBkaWVzZXIgVm9yZmFsbCBhbXVlc2llcnQKaGF0Pwprb250cm9sbGUKRGVubiBnZW5hdSBkYXMgd2FyIGVzOiBXaXIgaGFiZW4gdW5zIGxlZGlnbGljaCBhbXVlc2llcnQsIGRhcyB3aXJkIG1hbiB3b2hsCm5vY2ggZHVlcmZlbi4gVW5kIGRhcyBoYWV0dGVuIHdpciBhdWNoIGdldGFuLCB3ZW5uIGVzIElCTSBnZXdlc2VuIHdhZXJlCih3ZW5uZ2xlaWNoIGljaCB6dWdlYmVuIG11c3MsIGRhc3MgZXMgYmVpIE1TIGRvY2ggbm9jaCBlaW4gYmlzc2NoZW4gYmVzc2VyCmtvbW10KS4KCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogZ2F0ZXMgdXN3LiAoQmFib29uLCAyMi4gQXByIDE5OTgsIDA5OjUzOjA5KToKfiMhIHJuPURpZWRlciBydD04OTMyMzE0NTYgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKSG0sIGhhc3QgZHUgdmVyZ2Vzc2VuIGRlaW5Ta3JpcHQgYXVzenVzY2hhbHRlbiwgb2RlciB3YXMgaGF0IGRhcyAia29udHJvbGxlIgptaXR0ZW4gaW0gVGV4dCB6dSBzdWNoZW4uIDotKQoKQmFib29uKCkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBnYXRlcyB1c3cuIChEaWVkZXIsIDIyLiBBcHIgMTk5OCwgMDk6NTU6NDQpOgp+IyEgcm49QmFib29uIHJ0PTg5MzIzMTU4OSByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQpvb3BzLCBwZWlubGljaC4uLiBEaWVkZXIsIHNhZ2VuIFNpZSBqZXR6dCBiZXNzZXIgbmljaHRzIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZ2F0ZXMgdXN3LiAoQWxib2luLCAyMi4gQXByIDE5OTgsIDEzOjAzOjQyKToKfiMhIHJuPVBhdHJ5biBydD04OTMxNzk3Mzkgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKbW9tZW50bWFsIGRpZSBCZXRyaWVic2Rpa3Vzc2lvbiBoYXN0IF9EVV8gYW5nZWZhbmdlbi4gRXMgZ2luZyBoaWVyIGxlZGlnbGljaCAKZGFydW0gc2ljaCBtYWwgenUgYW11ZXNpZXJlbiwgZGEgQmlsbHlib3kgb2huZWhpbiBmdWVyIE1vbnBvbCB1bmQgdW5mYWlyZQpXZXR0YmV3ZXJic3Bhcmt0aWtlbiAoYmluZGVuIGRlcyBXZWJicm93c2VycyBhbnMgQmV0cmllYnNzeXN0ZW0gc3RlaHQuKSAKTWVya2U6IGVyc3QgZGVua2VuIGRhbm4gcnVtdHJvdHplbiEKCkFsYm9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZ2F0ZXMgdXN3LiAoQWxib2luLCAyMi4gQXByIDE5OTgsIDEzOjA0OjU5KToKfiMhIHJuPUFsYm9pbiBydD04OTMyNDMwMjIgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKc29sbCBuYXR1ZXJsaWNoIEJldHJpZWJzc3lzdGVtZGlza3Vzc2lvbiBoZWlzc2VuLCBzb3JyeQoKYWxib2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBnYXRlcyB1c3cuIChQYXRyeW4sIDIyLiBBcHIgMTk5OCwgMTM6Mzc6NDYpOgp+IyEgcm49UmluZ29yIHJ0PTg5MzE4ODE2NCByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQplcyBpc3QgbnVubWFsIHJlY2h0IHNjaHdlciwgenUgZGllc2VtIGF1c2dlbHV0c2NodGVuIHRoZW1hIGlyZ2VuZHdlbGNoZQpuZXVlbiBlcmtlbm50bmlzc2UgYXVmenV0cmVpYmVuLiBuaWNodHNkZXN0b3Ryb3R6IG5lcnZlbiBtaWNoIGViZW4gZGllCnphaGxsb3NlbiBlaW56ZWlsZXIgKG9kZXIgYXVjaCBtZWhyemVpbGVyKSwgZGllIGdvZW5uZXJoYWZ0IHNjaGFlYmlnZQptZXNzYWdlcyB1ZWJlciB1bmdlbGllYnRlIGJldHJpZWJzc3lzdGVtZSB2ZXJ0ZWlsZW4uCmljaCB3b2xsdGUgaGllciBhdWNoIGdhciBrZWluZW4gZ2V6aWVsdCBhbm1vc2Vybiwgd2llIGR1LCB1bmQgaWNoIGhhYmUgYXVjaApuaWNodCB6dW0gcnVuZHVtc2NobGFnIGdlZ2VuIGFsbGUgY29tcHV0ZXJiZW51dHplciBhdXNnZWhvbHQuLi5vZGVyIHdpbGxzdApkdSBtaXIgZXR3YSBlcnphZWhsZW4sIGRhc3MgYWxsZSBjb21wdXRlcmJlbnV0emVyIGJsb2VkZSByZXBsYXlzIGF1Zgplcm5zdGdlbWVpbnRlIGZyYWdlbiB6dSB3aW5kb3dzIGFibGFzc2VuICh1bmQgZGFzIGF1Y2ggbm9jaCB0b25uZW53ZWlzZSkKbWVpbmUgbmFzZSBnZWh0IGRpY2ggdWVicmlnZW5zIGdhciBuaXggYW4sIGljaCBoYXNzZSBiZXRyaWVic3lzdGVtZmxhbWV3YXJzCnVuZCBmYW5kIGhhbHQgZ3JhZCBuZSBndXRlIHN0ZWxsZSwgZGFzIG1hbCB6dW0gYXVzZHJ1Y2sgenUgYnJpbmdlbiA6KQoKLS0tLS0tCnBhdHJ5biwgZGVyIHJpbmdvciBub2NoIG1hbCB2ZXJ6ZWlodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogZ2F0ZXMgdXN3LiAoUGF0cnluLCAyMi4gQXByIDE5OTgsIDEzOjQyOjA0KToKfiMhIHJuPUdyaW1tYm9ybiBydD04OTMyMjY5NTkgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKbWFuIGthbm4gYmVpc3BpZWxlIG51ciB6dW0gdW5zaW5uIGVya2xhZXJlbiwgd2VubiBtYW4gZ2VuYXUgd2Vpc3MsIHdvdm9uCm1hbiBzcHJpY2h0OiBkYSBkaWVzIGJlaSBkaXIgaW4ga2VpbmVyIHdlaXNlIGdlZ2ViZW4gaXN0LCBzZWhlIGljaCBtaWNoCmF1Y2ggZWlnZW50bGljaCBuaWNodCBnZXp3dW5nZW4sIG5hZWhlciBkYXJhdWYgZWluenVnZWhlbi4KcmVuZGVyTWFuIGlzdCBzaWNoZXIgbmUgbmV0dGUgc2FjaGUsIGFiZXIgc29iYWxmIG1hbiBlcm5zdGhhZnQgd2FzIGRhbWl0Cm1hY2hlbgp3aWxsIG11c3MgbWFuIHRldWVyIGRhenVrYXVmZW4uLi5zZWhyIHRldWVyLiBwb3ZyYXkgdW5kIGJtcnQgc2luZCB3YXMgZnVlcgpiYXN0bGVyLCBkaWUgbWFsIHNlaGVuIHdvbGxlbiwgd2llIGVzIGluIHNvIG5lbSBzeXN0ZW0gYXVzc2llaHQgYnp3LiB3aWUgbWFuCmVzIGFuZGVycyBtYWNoZW4ga2FubiwgZGllIHByb2dyYW1tZSBzaW5kIGZ1ZXIgcHJvZmVzc2lvbmVsbGUgYXJiZWl0ZW4KaW4ga2VpbmVyIHdlaXNlIGJyYXVjaGJhci4KCi0tLS0tLQpwYXRyeW4KClBTOiB1bmQgZGllc2VzIGFuZGF1ZXJuZGUgbWVpbi1vZmZpY2Utc3R1ZXJ6dC1ncnVuZHNhZXR6bGljaC1hYiBpc3QgYXVjaCByZWNodAogICAgd2VpdCBoZXJnZWhvbHQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGdhdGVzIHVzdy4gKE1vcmdvdGgsIDIyLiBBcHIgMTk5OCwgMTQ6MDE6MzcpOgp+IyEgcm49UGF0cnluIHJ0PTg5MzI0NTMyNCByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQpBbHNvIGljaCBrb2VubnRlIHdhcyB1ZWJlciBkaWUgSW5zdGFsbGF0aW9uIHZvbiBOVCA0LjAgYXVmIG5lbSBQSUktMjY2CmVyemFlaGxlbi4uLi4gOy0pKQpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogZ2F0ZXMgdXN3LiAoR2xvaW5zb24sIDIyLiBBcHIgMTk5OCwgMTQ6MDM6NDIpOgp+IyEgcm49TW9yZ290aCBydD04OTMyNDY0OTcgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKVW5kIGljaCBkYXJ1ZWJlciwgZGFzcyBpY2ggbWVpbmVuIEVsdGVybiBsaWViZXIgTVMtT2ZmaWNlIGluc3RhbGxpZXJ0IGhhYmUsCndlaWwgZWJlbiBkYXMgQXJndW1lbnQgZGVyIGdlZ2ViZW5lbiB3ZWl0ZW4gVmVyYnJlaXR1bmcgKHNvc2VociB3aXIgYXVjaApoZXVsZW4gKSBtZWhyIHppZWh0IGFscyBkaWUgRnVua3Rpb25hbGl0YWV0IHVuZCBTaWNoZXJoZWl0IHZvbiBMYVRlWCA6KQoKQWV0c2NoLCBHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogZ2F0ZXMgdXN3LiAoR3VuZHVyLCAyMi4gQXByIDE5OTgsIDE0OjE0OjA2KToKfiMhIHJuPU1vcmdvdGggcnQ9ODkzMjQ2NDk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTYwNzc1CkpvIHZvbiBuZXIgaW5zdGFsbGF0aW9uIGF1ZiBuZW0gcElJLTI2NiBrb2VubnQgaWNoIGF1Y2ggZXJ6YWVobGVuLgpDb21wdXRlciB6dXNhbW1lbmdlc2NocmF1YnQgY2QgcmVpbiBoYWxiZSBzdHVuZGUuLi5mZXJ0aWcuCk5vY2ggRnJhZ2VuIFpldXNzZXI/Ck5laW4gVmVyYml0emxlIQpHcnVzcyB2b24KR3VuZHVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBnYXRlcyB1c3cuIChSaW5nb3IsIDIyLiBBcHIgMTk5OCwgMTQ6MTY6NDIpOgp+IyEgcm49UGF0cnluIHJ0PTg5MzI0NTA2NiByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQpWaWVsbGVpY2h0IGhhYiBpY2ggZGVuIHVyc3BydWVuZ2xpY2hlbiBBcnRpa2VsIGphIGZhbHNjaCB2ZXJzdGFuZGVuIC0gYWJlcgptZWluZXIgTWVpbnVuZyBuYWNoIHdhciBkYSBuaXggdm9uIGVpbmVyIGVybnN0Z2VtZWludGVuIEZyYWdlIHp1IHNlaGVuLApzb25kZXJuIGRlciBBcnRpa2VsIGRpZW50ZSAoYmVhY2h0ZSBhdWNoIGRpZSBSdWJyaWshKSBsZWRpZ2xpY2ggZGVyClVudGVyaGFsdHVuZyBXaW5kb3dzLWdlcGxhZ3RlciBBbndlbmRlci4KClVuZCB3aWUgZGllIFJlcGx5cyB6ZWlndGVuLCBoYXQgZXIgZGllc2VuIFp3ZWNrIGF1Y2ggZHVyY2hhdXMgZXJmdWVsbHQgZ2VoYWJ0LgoKVmllbGxlaWNodCB3YXJlbiBkaWUgInVlYmVyaGVibGljaGVuIiBLb21tZW50YXJlIHZvbiB2ZXJtZWludGxpY2hlbiBCZW51dHplcm4KImJlc3NlcmVyIiBCZXRyaWVic3N5c3RlbWUgYXVjaCBnYW56IGVpbmZhY2ggVW5tdXRzYWV1c3NlcnVuZ2VuIHZvbiBMZXV0ZW4sCmRpZSB0YWd0YWVnbGljaCBtaXQgV2luZG93cyBhcmJlaXRlbiAobXVlc3Nlbik/CgpSaW5nb3Igc2FndDogbmljaHQgbnVyIFVuaXgtTnV0emVyIGtvZW5uZW4gS3JpdGlrIGFuIE1TLVByb2R1a3RlbiB1ZWJlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlcmVjaHRpZ2tlaXQ/IChBbGluZSwgMjIuIEFwciAxOTk4LCAxNDo1MToyNyk6CgpTbyB3aWUgZXMgYXVzc2llaHQsIHNjaHVic3QgdW5zZXIgU2hlcmlmZiB1bmxpZWJzYW1lIFNwaWVsZXIgaW4KZGllIEdydWJlLCBvZGVyIHdpZSBzb2xsIGljaCBkYXMgZGV1dGVuPwoKRWluIEZyZXVuZCBydWZ0OiBHZXdvbm5lbiEKS2V5IHJ1ZnQ6ICEmJCMnISEgR3J1YmUhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmdyaW5zKiAoVGVkZHksIDIyLiBBcHIgMTk5OCwgMTQ6NTE6NDEpOgpTbmlicmlsIG11cm1lbHQgZWluIHBhYXIgdW52ZXJzdGFlbmRsaWNoZSBXb3J0ZSB1bmQgbWFjaHQgZWluaWdlIGJlc2Nod29lcmVuZGUKR2VzdGVuIHVlYmVyIHNlaW5lciBLcmlzdGFsbGt1Z2VsCkplbWFuZCBiZXNjaHdvZXJ0IERlaW4gQmlsZCBoZXJhdWYuCgpEYXMga2FubiBtYW4gYXVjaCBlaW5mYWNoZXIgaGFiZW4sIGVpbmZhY2ggc2NoYXUgZWluZ2ViZW4uCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogZ2F0ZXMgdXN3LiAoUGF0cnluLCAyMi4gQXByIDE5OTgsIDE0OjUzOjEwKToKfiMhIHJuPVJpbmdvciBydD04OTMyNDc0MDIgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKbmEgb2ssIGZyaWVkZW5zcGZlaWZlLi4uaWNoIHdhciBhbiBkZW0gdGFnIGhhbHQgc2Nob24gbGVpY2h0IGdlbmVydnQsIHdlaWwKaWNoIHZvciBsZXNlbiBkZXMgYXJ0aWtlbHMgc2Nob24gbWluZGVzdGVucyAxMCBuYWNocmljaHRlbnNlbmR1bmdlbgpnZXNlaGVuIGhhYiwgaW4gZGVtIG1pdCBtb3JhbGluc2F1cmVtIGxhZWNoZWxuIGRlciByZXBvcnRlciBlYmVuIGRpZXNlCmdlc2NoaWNodGUgenVtIGJlc3RlbiBnYWIgKG9iIGRpZSBhbGxlIHd1c3N0ZW4sIHdvdm9uIHNpZSByZWRlbj8pLgp3aWUgZ2VzYWd0LCBpbiBlaW5lbSB1bmZlcnRpZ2VuIHByb2R1a3Qga2FubiBkYXMgamVkZW0gcGFzc2llcmVuIHVuZAplcyBoaWxmdCB3aWVkZXIgbWFsIGRlciBhbHRiZWthbm50ZSBzcHJ1Y2g6CiAnd2VyIGRlbiBzY2hhZGVuIGhhdCwgYnJhdWNodCBmdWVyIGRlbiBzcG90dCBuaWNodCB6dSBzb3JnZW4nCi4uLndpZSBhdWNoIGltbWVyIG1hbiBkYXMgdmVyc3RlaGVuIHdpbGwgOikKCi0tLS0tLQpwYXRyeW4KClBTOiB1bmQgZGllIG1vcmFsIHZvbiBkZXIgZ2VzY2hpY2h0OiBpY2ggZ2xvdHogenUgdmllbCBUViA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogZ2F0ZXMgdXN3LiAoRGhvamFrdCwgMjIuIEFwciAxOTk4LCAxNzoyMzozMSk6Cn4jISBybj1QYXRyeW4gcnQ9ODkzMjQ5NTkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTYwNzc1CkRhcyBQcm9ibGVtIGlzdCBqYSBhdWNoIHdlbmlnZXIsIGRhc3MgZWluIHVuZmVydGlnZXMgUHJvZHVrdCBtYWwgYWJzdHVlcnp0IGFscwpkYXNzIGVpbmlnZSB2b24gTWljcm9zb2Z0cyBQcm9kdWt0ZW4gbmFjaCBkaWVzZW0gS3JpdGVyaXVtIG5pZSBmZXJ0aWd3ZXJkZW4KKHdlbm4gbWlyIHdvcmQgYWJzdHVlcnp0IHVuZCBkYW5uIGdsZWljaCBub2NoIGRhcyBCYWNrdXAgZGVyIGRhdGVpIHNjaHJvdHRldApkYW5uIGthbm4gaWNoIGRhcyB3b3JkIG5pY2h0IGFscyBmZXJ0aWcgYW5zZWhlbiwgc29ycnkpLgpLaGlkYXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBnYXRlcyB1c3cuIChBc21vZGlzLCAyMi4gQXByIDE5OTgsIDE4OjIwOjQzKToKfiMhIHJuPUFsYm9pbiBydD04OTMyNDMwMjIgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKdHNzLCBNb25vcG9sIGhhdCBlciBudXIsIHdlaWwgZXIgZWJlbiBldHdhcyBjbGV2ZXIgYWxzIEFuZGVyZSB3YXIsCnVuZCBtaXQgZWluZXIgbmV1ZW4gSWRlZSBlaW5lcyBCZXRyaWVic3N5c3RlbXMgZGVuIE1hcmt0IHVlYmVybmFobS4KQXVjaCB3ZW5uIFdpbmRvd3Mgb2VmdGVyIGFic3R1ZXJ6dCwgaXN0IGVzIG1laW5lciBNZWludW5nIGJlc3NlcgphbHMgZmFzdCBhbGxlIGFuZGVyZW4gQmV0cmllYnNzeXN0ZW1lLCB2b3IgYWxsZW0gZGllIEluc3RhbGxhdGlvbgppc3QgbmljaHQgdWViZXJtYWVzc2lnIHNjaHdlci4KICAKICAgQXNtb2RpcyAoZmVuc3Rlcmx0IGdlcm5lIDopICApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBnYXRlcyB1c3cuIChIaWdobGFuZGVyLCAyMi4gQXByIDE5OTgsIDE4OjQzOjQ2KToKfiMhIHJuPUFzbW9kaXMgcnQ9ODkzMjYyMDQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTYwNzc1CkR1IGZlbnN0ZXJsc3QgZ2VybmU/IE5pbW0gZG9jaCBYLUZlbnN0ZXIgOz4KVW5kIExpbnV4IGluc3RhbGxpZXJ0IHNpY2ggbWluZGVzdGVucyBzbyBlaW5mYWNoIHdpZSBXaW4uCk51ciBzbyBhbHMgQmVtZXJrdW5nLAogICBIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGdhdGVzIHVzdy4gKE92ZXJsb3JkLCAyMi4gQXByIDE5OTgsIDE5OjA0OjUyKToKfiMhIHJuPVBhdHJ5biBydD04OTMyNDUzMjQgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKCk1laW4tT2ZmaWNlLXN0dWVyenRlLWFuLW1hbmNoZW4tVGFnZW4tc28tb2Z0LWFiLWRhc3MtaWNoLWdhbnota3JpYmJlbGlnLXdlcmRlLQp3ZW5uLWljaC0yMC1zZWMtbml4LWdlc2F2ZXQtaGFiZSBpc3QgYmVpIG1pciBGYWt0LgoKT3ZpIHNjaHVldHRlbHQgbWl0dGxlcndlaWxlIHZvbGwgcmVsaW51eGVkIGRlbiBLb3BmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBnYXRlcyB1c3cuIChTaWx2YW5hLCAyMi4gQXByIDE5OTgsIDE5OjQzOjM2KToKfiMhIHJuPVBhdHJ5biBydD04OTMyNDUzMjQgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKQWxzbyBkYXMgbWl0IFBvdnJheSBrYW5uIGljaCBzbyBuaWNodCBzdGVoZW4gbGFzc2VuIC0gdW5kIGltIEdlZ2Vuc2F0egp6dSBHcmltbWJvcm4gd2Vpc3MgaWNoLCB3b3ZvbiBpY2ggZGEgc2NocmVpYmUuIFBvdnJheSBhbGxlaW5lIGlzdCAKc2ljaGVyIGVoZXIgd2FzIGZ1ZXIgQmFzdGxlciAtIG9id29obCBlcyBuaWNodCB2aWVsIGdpYnQsIHdhcyBkYXMgCm5pY2h0IGthbm4uIElzdCBoYWx0IGV4dHJlbSB1bXN0YWVuZGxpY2ggenUgJ2JlZGllbmVuJywgd2VubiBtYW4gCmRhcyB1ZWJlcmhhdXB0IHNvIG5lbm5lbiBrYW5uLgpXZW5uIG1hbnMgYWxsZXJkaW5ncyBtaXQgZWluZW0gZGVyIHphaGxyZWljaGVuIEVkaXRvcmVuIGtvbWJpbmllcnQsCmRpZSBlcyBzcGV6aWVsbCBmdWVyIFBvdnJheSBnaWJ0IChCcmVlemUtRGVzaWduZXIgYmVpc3BpZWxzd2Vpc2UpLAp3aXJkIGRpZSBBcmJlaXQgZGFtaXQgZWNodCBzcGFzc2lnLiBCcmVlemUgRGVzaWduZXIga2FubiB6dWRlbQphdWNoIGVpbmUgUmVpaGUgZ2FlbmdpZ2VyIFN0ZC1Gb3JtYXRlIHdpZSBkeGYgKGJla2FubnQgdm9uIEFyY2hpdGVrdHVyLQpDQUQtU3lzdGVtZW4gdS5hLikgaW5zIFBvdnJheS1Gb3JtYXQga29udmVydGllcmVuLCBzbyBkYXNzIGRpZSAKS29tYmluYXRpb24gYmVpZGVyIFByb2dyYW1tZSB6dXIgZWNodGVuIEFsdGVybmF0aXZlIHdpcmQuIApQb3ZyYXkgdW5kIEJyZWV6ZURlc2lnbmVyIGdpYnRzIHVlYnJpZ2VucyBzb3dvaGwgZnVlciBXaW5kb3dzIGFscwphdWNoIGZ1ZXIgTGludXgvVW5peCBhbHMgU2hhcmV3YXJlLi4uIERlciBlaW56aWdlIGtvbWVyemllbGwgcmVsZXZhbnRlClVudGVyc2NoaWVkIGlzdCwgZGFzcyBiZWkgUG92cmF5L0JyZWV6ZSBkZXIgU3VwcG9ydCB6d2FyIGtvc3Rlbmxvcwp1bmQga29tcGV0ZW50LCBkYWZ1ZXIgYWJlciBfZXh0cmVtXyBsYW5nc2FtIGlzdCAtIHdhZXJlbmQgYmVpIE0kLQpQcm9kdWt0ZW4gendhciBzY2huZWxsIGVycmVpY2hiYXIsIGRhZnVlciB0ZXVlciB1bmQgb2Z0bWFsIGlua29tcGV0ZW50LgooT2Z0bWFscywgZGEgZGllIE1TRE4tSG90bGluZSB0ZWlsd2Vpc2UgZWNodCB3YXMgdGF1Z3QhKQoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBnYXRlcyB1c3cuIChTdGluZywgMjIuIEFwciAxOTk4LCAxOTo1Mjo0Nik6Cn4jISBybj1PdmVybG9yZCBydD04OTMyNjQ2OTIgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKSG1tLCBhbHNvIHdlbm4gZGlyIGRhdWVybmQgZGVpbiBPZmZpY2UgYWJzdHVlcnp0LCBkYW5uIGJpc3QgZHUgc2VsYmVyIHNjaHVsZCwKbWlyIHBhc3NpZXJ0IGRhcyBuaWNoIDopICBIYXN0IGR1IHNjaG9ubWFsIHdhcyB2b24gU2VydmljZS1QYWNrcyBnZWhvZXJ0ID8gSW0KdWVicmlnZW4gZ2VodCBhdWNoIG1pciBkaWVzZSBEaXNrdXNzaW9uIGF1ZiBkaWUgTmVydmVuLCBpY2ggcGVyc29lbmxpY2ggaGFsdGUKV2luZG93cyBmdWVyIGRhcyBkZWZpbml0aXYgYmVzdGUgQlMgZnVlciBkZW4gZ3JvZXNzdGVuIFRlaWwgZGVyIEJldm9lbGtlcnVuZywKZGEgZXMgYW0gZWluZmFjaHN0ZW4genUgYmVkaWVuZW4gaXN0IChuYWphLCBhdXNzZXIgTWFjIHZpZWxsZWljaHQgOikpLgpBYmdlc2VoZW4gZGF2b24gc2luZCBkaWUgYWt0dWVsbGVuIFZlcnNpb25lbiAoV2luOTUgdW5kIFdpbk5UIDQpIGF1Y2ggbmljaHQKc29vIHNjaGxlY2h0IHVuZCB1bnNpY2hlciB3aWUgZGllIExldXRlIGltbWVyIHdpZWRlciBiZWhhdXB0ZW4sIGljaCBrYW5uIGVzCm9mdCBnZW51ZyBzZWhlbiwgZGEgaWNoIHNvd29obCBwcml2YXQgZ2VudWcga2VubmUgZGllIGVzIGJlbnV0emVuIHVuZCBhdWNoCmdlc2NoYWVmdGxpY2guIFdlbm4gamVtYW5kIHNvIGV4dHJlbWUgUHJvYmxlbWUgaGF0IHdpZSBtYW5jaGUgTGV1dGUgZGFzIGhpZXIKYmVzY2hyZWliZW4sIHNvbGx0ZW4gc2llIHNpY2ggdmllbGxlaWNodCBtYWwgX3VlYmVybGVnZW5fIHdhcyBkYXMKdGF0c2FlY2hsaWNoZSBwcm9ibGVtIHNlaW4ga29lbm50ZS4uLiBFcyBsaWVndCBuYWVtbGljaCBhdWNoIG9mdCBhbiBzZWx0c2FtZXIKSGFyZHdhcmUgKGRpZSBlcyBnZXJhZGUgaW0gUEMtQmVyZWljaCB6dSB0YXVzZW5kZW4gZ2lidCkgdW5kIG5pY2h0IGFuIGRlcgpTb2Z0d2FyZS4gV2luZG93cyBtdXNzIHNvdmllbGUgU2FjaGVuIHVudGVyc3R1ZXR6ZW4gKGFsbGVzKSBkYW1pdCBkaWUgTGV1dGUKenVmcmllZGVuIHNpbmQsIHVuZCBlcyB1bnRlcnN0dWV0enQgd29obCBhdWNoIGRlbiBncm9lc3N0ZW4gdGVpbCBkYXZvbiByZWxhdGl2CnByb2JsZW1sb3MsIGthbm4gei5CLiBMaW51eCBkYXMgYXVjaCA/IERhIGdpYnRzIGxhbmdlIG5pY2h0IHNvdmllbGUgVHJlaWJlcgpkYWZ1ZXIgKGF1Y2ggaGV1dGUgbm9jaCBuaWNodCkuCgpTdGluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IGdhdGVzIHVzdy4gKE92ZXJsb3JkLCAyMi4gQXByIDE5OTgsIDIwOjA4OjU1KToKfiMhIHJuPVN0aW5nIHJ0PTg5MzI2NzU2NiByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQpXZW5uIHNpY2ggZGllIFNvZnR3YXJlZmlybWVuIG5pY2h0IHNvIGVpbnNjaGxhZWdpZyBhdWYgQmlsbHlib3kgKGtlbm5lIGljaAp1ZWJyaWdlbnMgZWhlciBhbHMgS29uZG9tbWFya2UgKnJvdGZsKi4uKSBlaW5zY2hpZXNzZW4gd3VlcmRlbiBzb25kZXJuIGF1Y2gKbWFsIGJlbWVya2VuLCBkYXNzIGVzIGF1Y2ggbm9jaCB3YXMgYW5kZXJlcyBnaWJ0LCBkYW5uIHdhZXJlIGRhcyBBbmdlYm90IGZ1ZXIKYW5kZXJlIGF1Y2ggZ3JvZXNzZXIuCgpBdXNzZXJkZW0gaGFiZSBpY2ggdm9uIHNjaGxlY2h0ZW4gVGFnZW4gZ2VyZWRldCwgZGllIHNlbHRlbiB2b3JnZWtvbW1lbiBzaW5kLgpEYXMgaGVpc3N0IGF1ZiBkZXV0c2NoLCBkYXNzIGVzIG1pciBpbW1lciBudXIgZGFubiBhYmdlc2NobWllcnQgaXN0LCB3ZW5ucwplaWxpZyB1bmQgd2ljaHRpZyB3YXIuIFdhcyBudW4gRGFzIE9mZmljZXBha2V0IGFuZ2VodCwgdmVyc3VjaCBkb2NoIG1hbApWRVJOVUVORlRJRyBtaXQgZGVtIFpldWdzIHp1IGxheW91dGVuLiBEYXMgaXN0IHR5cGlzY2ggTWljcm9zb2Z0OiBqZWRlIE1lbmdlClpldWdzIGRyaW4sIGRhcyBrZWluIE5vcm1hbHN0ZXJibGljaGVyIGJyYXVjaHQsIGFiZXIgTGF5b3V0IG1hbmdlbGhhZnQuLi53ZW5uCm1hbiBleHBvcnRpZXJ0LCBsYXlvdXRldCBtaXQgZWluZW0gZW50c3ByZWNoZW5kZW4gcHJvZ3JhbW0gdW5kIHdpZWRlcgppbXBvcnRpZXJ0IGZhbmdlbiBkaWUgcHJvYmxlbWUgZXJzdCByaWNodGlnIGFuIHVzdyB1c2YuClVlYmVyIGRpZSBkaXZlcnNlbiBhYnNvbHV0IHVlYmVyZmx1ZXNzaWdlbiBNYWNrZW4gdm9tIFdpbmRvb2YgaGFiZW4gc2ljaCBzY2hvbgphbmRlcmUgYXVzZ2VsYXNzZW4uLi4KCk92aSBUZVh0IGdsdWVja2xpY2ggdm9yIHNpY2ggaGluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogZ2F0ZXMgdXN3LiAoUGF0cnluLCAyMi4gQXByIDE5OTgsIDIwOjQwOjIyKToKfiMhIHJuPVNpbHZhbmEgcnQ9ODkzMjY3MDE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTYwNzc1CmFsc28gaWNoIGJpbiBkZXIgbWVpbnVuZywgbWFuIGthbm4gZWluIHByb2dyYW1tIHdpZSBwb3ZyYXkgaW5rbHVzaXZlIGRlbgpuZXR0ZW4gdG9vbHMgd2llIHpCIG1vcmF5LCBicmVlemUtZGVzaWduZXIgdW5kIHdhcyBlcyBzb25zdCBub2NoIHNvIG5ldHRlcwpnaWJ0IG5pY2h0IG1hbCBhbnNhdHp3ZWlzZSBtaXQgZWluZW0gM2Qtc3R1ZGlvLCBzb2Z0aW1hZ2UsIGxpZ2h0d2F2ZQpvZGVyIGFobmxpY2hlbSB2ZXJnbGVpY2hlbiwgZGVyIGZ1bmt0aW9uZWxsZSB1bnRlcnNjaGllZCBkZXIgbW9kZWxsZXIgaXN0Cmdld2FsdGlnLiBkZXIgcmF5dHJhY2VyIHNlbGJzdCBpc3QgcmVjaHQgZ3V0LCBrYW5uIGFiZXIgbWl0IGFuaW1hdGlvbmVuCm5pY2h0IGFsbHp1dmllbCBhbmZhbmdlbiB1bmQgYXVjaCBiZWkgcGFydGlrZWxzeXN0c21lbiB1bmQgZ2FlbmdpZ2VuCm9wdGltaWVydW5nZW4gc2llaHRzIHNjaGxlY2h0IGF1cy4gaWNoIHdlaXNzIGR1cmNoYXVzIGF1Y2gsIHdvdm9uIGljaCByZWRlLApkZW5ubiBpY2ggaGFiIHNjaG9uIGluIGRlbiBpbnRlcm5hcyBkZXMgREtCLXJheXRyYWNlcnMgKG5lbiB2b3JnYWVuZ2VyKQpydW1nZWZ1bW1lbHQgdW0gaWhtIG5vY2ggZWluIHBhYXIgc2FjaGVuIGJlaXp1YnJpbmdlbi4Kd2llIGdlc2FndDogZnVlciBiYXN0bGVyIHNlaHIgbmV0dCwgZnVlciBwcm9maXMgbWFsIHp1bSBhbnNjaGF1biwgbmljaHQKenVtIGVybnN0aGFmdGVuIGFyYmVpdGVuLgoKLS0tLS0tCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBiZWkgTWFleGNoZW4gKFJvY2h1cywgMjIuIEFwciAxOTk4LCAyMTo0NzoyOSk6Clhlbm9uIHd1ZXJmZWx0IHVuZCBzdGFydGV0IGRhbWl0IGVpbmUgbmV1ZSBSdW5kZS4KWGVub24gYmVoYXVwdGV0LCBlciBoYWV0dGUgbWluZGVzdGVucyBlaW5lIDMyIGdld29yZmVuIHVuZCBnaWJ0IGRlbiBCZWNoZXIgYW4gCk1hdGlzIHdlaXRlci4KWWVuZGkgc2FndDogKmFyZ2wqIFdlbm4gWGVub24gYW5mYWVuZ3QsIGRhbm4gcmVpY2h0IEM0IG1pciBnYXJhbnRpZXJ0ClllbmRpIHNhZ3Q6IG1pbm5pZ2VueiBuZW4gM2VyLVBhc2NoLi4uClplcGh5ciBncmluc3QgWWVuZGkgYW4uCk1hdGlzIGhhdCBzaWNoIGVudHNjaGllZGVuIHp1IHd1ZXJmZWxuLgpNYXRpcyBiZWhhdXB0ZXQsIGVyIGhhZXR0ZSBtaW5kZXN0ZW5zIGVpbmUgNTIgZ2V3b3JmZW4gdW5kIGdpYnQgZGVuIEJlY2hlciBhbiAKWmVwaHlyIHdlaXRlci4KPiBaZXBoeXIgYmVoYXVwdGV0LCBzaWUgaGFldHRlIG1pbmRlc3RlbnMgZWluZW4gRHJlaWVycGFzY2ggZ2V3b3JmZW4gdW5kIGdpYnQgCmRlbiBCZWNoZXIgYW4gWWVuZGkgd2VpdGVyLgpZZW5kaSBzYWd0OiBIZSEgClplcGh5ciBwZmVpZnQgdW5zY2h1bGRpZy4KWWVuZGkgZ2xhdWJ0IFplcGh5ciBuaWNodCB1bmQgaGVidCBhdWYuClplcGh5ciBoYXR0ZSBhYmVyIHNvZ2FyIGVpbmVuIEZ1ZW5mZXJwYXNjaCBnZXdvcmZlbi4KWWVuZGkgaGF0IGRpZXNlIFJ1bmRlIHdvaGwgdmVybG9yZW4uClplcGh5ciBzYWd0OiAgRHUgaGFzdCBnZXNhZ3QgaWNoIHJlaWNoZSBEaXIgbWluZGVzdGVucyBuZW4gMzNlciA6KQpZZW5kaSBicmljaHQgaW4gVHJhZW5lbiBhdXMgdW5kIHdlaW50IGJpdHRlcmxpY2guClJlYXBlciBncmluc3QuClplcGh5ciBncmluc3QgWWVuZGkgYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogZ2F0ZXMgdXN3LiAoU3RpbmcsIDIyLiBBcHIgMTk5OCwgMjE6NTU6NTMpOgp+IyEgcm49T3ZlcmxvcmQgcnQ9ODkzMjY4NTM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTYwNzc1CkFlaG0uLi4gRXJzdGVucyBzdHVlcnp0IGVzIGJlaSBtaXIgYXVjaCBuaWNodCBhYiB3ZW5ucyBtYWwgZWlsaWcgdW5kIHdpY2h0aWcKaXN0IDopIHVuZCB6d2VpdGVuczogaGFzdCBkdSB1ZWJlcmhhdXB0IGRlbiBTaW5uIGRlcyBPZmZpY2UtUGFrZXRlcyB2ZXJzdGFuZGVuCj8gZGFzIHNvbGwgZG9jaCBuaWNodCB6dW0gTGF5b3V0ZW4gZGEgc2VpbiwgZGFzIGlzdCBlaW4gX0JST19PZmZpY2UtUGFrZXQuIFVuZAp3YXMgdHV0IG1hbiBpbSBCcm8gPyBCcmllZmUgc2NocmVpYmVuIHVuZCBUYWJlbGxlbmthbGt1bGF0aW9uZW4gc293aWUgZWluCmJpc3NsIERhdGVuYmFuayB2ZXJhcmJlaXRlbi4gSWNoIHNlbGJzdCBCSU4gc296dXNhZ2VuIExheW91dGVyLCB1bmQgaWNoIHdlaXNzCmRhcyBtYW4gZGFmdWVyIHNvd2llc28gc3BlemllbGxlIFByb2dyYW1tZSB3aWUgUXVhcmsgWHByZXNzIG9kZXIgUGFnZW1ha2VyCmJyYXVjaHQsIGVpbiBPZmZpY2UtUGFrZXQgd2lyZCBOSUUgenVtIExheW91dGVuIGd1dCBzZWluLCBkYSBlcyBlaW5lIGdhbnoKYW5kZXJlIFppZWxncnVwcGUgYW5zcHJpY2h0LgoKU3RpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBnYXRlcyB1c3cuIChTdGluZywgMjIuIEFwciAxOTk4LCAyMTo1NzowMik6Cn4jISBybj1TdGluZyBydD04OTMyNzQ5NTMgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKSHJtcGYsIGJsb2VkZSBVbWxhdXRlLCBkYXMgQnJvIHNvbGx0ZSBuYXR1ZXJsaWNoIGluIGJlaWRlbiBGYWVsbGVuIF9CdWVyb18KaGVpc3NlbiA6KQoKU3RpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGdhdGVzIHVzdy4gKEdyaW1tYm9ybiwgMjIuIEFwciAxOTk4LCAyMjo0OTo1NCk6Cn4jISBybj1QYXRyeW4gcnQ9ODkzMjQ1MzI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTYwNzc1CkljaCBoYWJlIG5pZSBiZWhhdXB0ZXQgZGFzcyBpY2ggbWljaCBtaXQgZGllc2VuIEdyYXBoaWtzcGllbGNoZW4gYXVza2VubmUuCkRhaGVyIGhhYmUgaWNoIGF1Y2ggbWVpbmUgUXVlbGxlIHppdGllcnQuClVuZCBtZWluIE9mZmljZSBzdHVlcnp0IGF1Y2ggbmljaHQgc3RhZW5kaWcgYWIuIHhkdmkgaXN0IGFsbGVzIGFuIFdZU0lXWU1HIHdhcwppY2ggbWl0dGxlcndlaWxlIGJyYXVjaGUuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogZ2F0ZXMgdXN3LiAoR3JpbW1ib3JuLCAyMi4gQXByIDE5OTgsIDIyOjU5OjIyKToKfiMhIHJuPUFzbW9kaXMgcnQ9ODkzMjYyMDQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTYwNzc1CkljaCBoYWJlIGRpZSB2ZXJnYW5nZW5lbiB6d2VpIFdvY2hlbiBkYW1pdCB6dWdlYnJhY2h0IHp1IHZlcnN1Y2hlbiB3aW45NSB6dQppbnN0YWxsaWVyZW4uIEljaCBiaW4ga2VpbiB3aW45NS1FeHBlcnRlLCBiZWhhdXB0ZSBhYmVyLCBoYWxid2VncyBtaXQKQ29tcHV0ZXJuIGtsYXJ6dWtvbW1lbiwgYWxzbyBpbiBkZW0gQmVyZWljaCBuaWNodCBzbyBzY2h3ZXIgdm9uIEJlZ3JpZmYgenUKc2Vpbi4gSWNoIGhhYmUgZXMgaW5zZ2VzYW10IDE1IG1hbCBpbnN0YWxsaWVydCAoU3RyaWNobGlzdGUpLCBqZXR6dCBsYWV1ZnQgZXMKbWVociBzY2hsZWNodCBhbHMgcmVjaHQsIGF1c3NlcmRlbSBmZWhsZW4gMi8zIGRlciBIRC4gTmFlY2hzdGUgV29jaGUgbmFlY2hzdGUKUnVuZGUuIFdlbm4gaWNoIG5pY2h0cyB6dSB0dW4gaGFiZSBrYW5uIGljaCBtb3JnZW4gZWluZSBadXN3YWhsIGRlciBlcmxlYnRlbgpQcm9ibGVtZSBwb3N0ZW4uIEljaCBiaW4gX25pY2h0XyBndXQgYXVmIGRhcyBTeXN0ZW0genUgc3ByZWNoZW4uCk5hdHVlcmxpY2ggd2Vpc3MgaWNoLCBkYXNzIGRhcyBzdGF0aXN0aXNjaCBuaWNodCBzaWduaWZpa2FudCBpc3QgdW5kIGFuZGVyZQpMZXV0ZSBhZWhubGljaGUgUHJvYmxlbWUgbWl0IExpbnV4IGhhYmVuIChkYXMgaWNoIGJlaSBmdWVuZiB2ZXJzY2hpZWRlbmVuCkdlbGVnZW5oZWl0ZW4gcHJvYmxlbWxvcyBpbnN0YWxsaWVydCBoYWJlKS4gQWJlciBkYXMgaXN0IG1pciBpbiBkZW0KWnVzYW1tZW5oYW5nIGVpZ2VudGxpY2ggdm9lbGxpZyBlZ2FsLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IGhhdCB3YXMgZ2VnZW4gU3lzdGVtZSwgZGllIG5pY2h0IGVyemFlaGxlbiB3YXMgc2llCm1hY2hlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IGdhdGVzIHVzdy4gKEdyaW1tYm9ybiwgMjIuIEFwciAxOTk4LCAyMzowMTozMyk6Cn4jISBybj1TdGluZyBydD04OTMyNjc1NjYgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKSWNoIGJpbiB6aWVtbGljaCBzaWNoZXIsIGRhc3MgZXMgYW4gZGVyIFRyZWliZXJmcm9udCBmdWVyIExpbnV4IG1pdHRsZXJ3ZWlsZQpiZXNzZXIgYXVzc2llaHQgKHZpZWxsZWljaHQgdm9uIFNvdW5kdW50ZXJzdHVldHp1bmcgYWJnZXNlaGVuKSBhbHMgZnVlciBOVC4KV2FzIHNpY2ggYmVpc3BpZWxzd2Vpc2UgSFAgYW4gTlQtVHJlaWJlcm4gbGVpc3RldCBpc3QgZWluZSBGcmVjaGhlaXQuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGdhdGVzIHVzdy4gKFN0aW5nLCAyMi4gQXByIDE5OTgsIDIzOjAxOjQ5KToKfiMhIHJuPUdyaW1tYm9ybiBydD04OTMyNzg3NjIgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKSG1tLCBmdWVyIGRlaW4gUHJvYmxlbSBnaWJ0cyBlcyBkcmVpIG1vZWdsaWNoZSBHcnVlbmRlOgoKMS4gRXMgbGllZ3QgYW4gZGVpbmVtIFBDIChIYXJkd2FyZSB1c3cpCjIuIER1IGhhdHRlc3QgX2V4dHJlbWVzXyBQZWNoIChzZWhyIHVud2FocnNjaGVpbmxpY2gpCjMuIER1IGJpc3QgenUgZG9vZiBkYWZ1ZXIsIHNvIGhhcnQgZGFzIGF1Y2gga2xpbmd0LCBhYmVyIGljaCBrZW5uZSBuZW4KRmFzdC1EYXUsIGRlciBXSU45NSBtaXQgX3NlaHJfIHNlbHRzYW1lciB1bmQga2VpbmVyIFN0YW5kYXJkLUhhcmR3YXJlIGF1ZgpBbmhpZWIgaW5zdGFsbGllcnQgaGF0Li4uCgoKU3RpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGdhdGVzIHVzdy4gKEhhbmdvdmVyLCAyMi4gQXByIDE5OTgsIDIzOjAzOjUwKToKfiMhIHJuPVN0aW5nIHJ0PTg5MzI3ODkwOSByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQpVbmQgbWVpbiBXaW5kb3dzOTUgYmVoYXVwdGV0LCBkYXNzIGljaCBrZWluZW4gSURFLUNvbnRyb2xsZXIgbWVociBpbQpSZWNobmVyIGhhYmUuIERhc3MgZXMgdHJvdHpkZW0gYXVmIGRpZSBQbGF0dGVuIHp1Z3JlaWZlbiBrYW5uLCBzY2hlaW50CmlobSBlZ2FsIHp1IHNlaW4uCgotSGFuZ292ZXIKKGRlbSBkYXp1IE5JWCBtZWhyIGVpbmZhZWxsdCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBnYXRlcyB1c3cuIChTdGluZywgMjIuIEFwciAxOTk4LCAyMzowMzo1MSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODkzMjc4ODkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTYwNzc1CkhtbSwgd2llIHNpZWh0cyBtaXQgVHJlaWJlci1VbnRlcnN0dWV0enVuZyBmdWVyIFNhY2hlbiB3aWUgVFYtR3JhYmJlci1LYXJ0ZW4sClRWLUthcnRlbiwgVmlkZW8tU2Nobml0dC1LYXJ0ZW4sIFJhZGlvLUthcnRlbiB1bmQgZGVtIGdhbnplbiBNaXN0LCBkZW4KZWlnZW50bGljaCBrZWluIE1lbnNjaCBicmF1Y2h0LCBhYmVyIGRlbiBlcyBoYWx0IGFsbGVzIGdpYnQsIGF1cyA/CgpTdGluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogZ2F0ZXMgdXN3LiAoUmluZ29yLCAyMi4gQXByIDE5OTgsIDIzOjA1OjAwKToKfiMhIHJuPVN0aW5nIHJ0PTg5MzI3ODkwOSByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQpLb21pc2NoLiBEYXMgIjEuIEVzIGxpZWd0IGFuIGRlaW5lbSBQQyAoSGFyZHdhcmUgdXN3KSIgd2FyIGRvY2ggZ2VuYXUgZGVyClB1bmt0LCBkZW4gRHUgTGludXggdm9yZ2V3b3JmZW4gaGFzdCAobWFuZ2VsbmRlIEhhcmR3YXJlLVVudGVyc3R1ZXR6dW5nKSwKb2Rlcj8KCkljaCBoYWIgV2luOTUgei5CLiBuaWUgbWl0IG5lciBwb3BlbGlnZW4gU3RhbmRhcmQtU2Nobml0dHN0ZWxsZW5rYXJ0ZSBzdGFiaWwKenVtIExhdWZlbiBiZWtvbW1lbi4gTGludXggbGllZiBtaXQgZGVyc2VsYmVuIEhhcmR3YXJlLiBTZWxic3Qgc293YXMgc2ltcGxlcwp3aWUgQ09NIDEgdW5kIENPTSAzIHN0YXR0IDErMiBtYWNodCBzb3dvaGwgdW50ZXIgV2luOTUgYWxzIGF1Y2ggdW50ZXIgTlQgNC4wClByb2JsZW1lLgoKTGFldWZ0IG1pdCBMaW51eCBhbGxlcy4gQWJlciBkYXMgc2FndGUgaWNoIGdsYXViZSBpY2ggc2Nob24uIDstKQoKUmluZ29yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBnYXRlcyB1c3cuIChTdGluZywgMjIuIEFwciAxOTk4LCAyMzowNToyOCk6Cn4jISBybj1IYW5nb3ZlciBydD04OTMyNzkwMzAgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKSG1tLCBpY2ggaGFiIGdlcmFkZSBtZWluZSBzY2hyZWliZnJldWRpZ2UgUGhhc2UgOikKWnVnZWdlYmVuLCBpY2ggaGF0dGUgYXVjaCBzY2hvbiBzZWx0c2FtZSBWb3JmYWVsbGUgYmVpbiBXaW5kb29mLCBhbGxlcmRpbmdzOgpXZW5uIGt1ZW1tZXJ0cyBzb2xhbmdlIGVzIHRyb3R6ZGVtIHByb2JsZW1sb3MgbGFldWZ0ID8/CgpTdGluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogZ2F0ZXMgdXN3LiAoSGFuZ292ZXIsIDIyLiBBcHIgMTk5OCwgMjM6MDc6MTkpOgp+IyEgcm49U3RpbmcgcnQ9ODkzMjc5MTI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTYwNzc1CkhtbS4uLmFiZXIgZGllc2VzIEZlYXR1cmUgZXJyZWljaHQgc2Nob24gZmFzdCBQYXJhb3JraGF1c2Vubml2ZWF1LgooKmdyaW5zIE1vcmdvdGggYW4qKSBVbmQgZGFzIG11c3MgaWNoIGluIG1laW5lbSBSZWNobmVyIG51biB3aXJrbGljaApuaWNodCBoYWJlbiA7KQoKLUhhbmdvdmVyCihkZXIgV2luKiBlaW5mYWNoIG5pY2h0IG1laHIgZXJuc3RuZWhtZW4gbWFnKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIGdlYnMgYXVmIDopICAoU3RpbmcsIDIyLiBBcHIgMTk5OCwgMjM6MTA6MjEpOgpJY2ggZ2VicyBhdWYsIG5hY2hkZW0gaWNoIG51biBzdGFlbmRpZyBUZWlsZS1NaXRzIGJla29tbWUsIGJlZW5kZSBpY2ggdm9uCm1laW5lciBTZWl0ZSBoaWVybWl0IGRhcyBHZWZsYW1lIG1pdCBkZW0gc2ljaGVybGljaCB2b24gYWxsZW4gU2VpdGVuCmFremVwdGFibGVuIFJlc3VtZWU6CkplZGVyIHNvbGwgZGFzIGJlbnV0emVuIGRhcyBlciBmdWVyIHNpY2ggZGFzIHJpY2h0aWdlIGhhZWx0ICpncmlucyoKClN0aW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogZ2F0ZXMgdXN3LiAoR3JpbW1ib3JuLCAyMi4gQXByIDE5OTgsIDIzOjExOjE2KToKfiMhIHJuPVN0aW5nIHJ0PTg5MzI3OTAzMSByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQpSYWRpbyB3ZWlzcyBpY2ggbmljaHQgKHVuZCB3dWVyZGUgZGFzIGF1Y2ggbmljaHQgdW5iZWRpbmd0IG1pdGtyaWVnZW4pLCBhYmVyCmRpZSBUVi1LYXJ0ZW4gd2VyZGVuIHVudGVyc3R1ZXR6dC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogZ2F0ZXMgdXN3LiAoR3JpbW1ib3JuLCAyMi4gQXByIDE5OTgsIDIzOjE0OjU2KToKfiMhIHJuPUhhbmdvdmVyIHJ0PTg5MzI3OTAzMCByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQpFaW5lbiBoYWIgaWNoIG5vY2g6CkRpZSBwYXJ0aXRpb24gdGFibGUgemVpZ3Q6IGVpbmUgcHJpbWFlcmUsICh6d2VpdGUgdW5kIGRyaXR0ZSBwcmltYWVyZSBoYXR0ZQppY2ggZ2Vsb2VzY2h0KSB1bmQgZWluZSBlcndlaXRlcnRlIFBhcnRpdGlvbiAoYXVmIGRlciBpY2ggZWluIGtsZWluZXMgTGludXgKdW50ZXJnZWJyYWNodCBoYXR0ZSkuIFdpbjk1IHdhciB0cm90emRlbSBpbiBkZXIgTGFnZSwgUGxhdHRlbiBDLCBEIHVuZCBFIHp1CnplaWdlbi4gVW5kIGF1ZiBDIHVuZCBFIHp1enVncmVpZmVuLiBBdWYgRCBuaWNodCwgZGFzIGhhdHRlIGF1Y2ggdm9yaGVyIG51cgpGZWhsZXIgZ2VnZWJlbiwgd2Vzd2VnZW4gaWNoIGRpZSBiZWlkZW4gamEgYXVjaCBnZWxvZXNjaHQgaGF0dGUuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogZ2F0ZXMgdXN3LiAoR3JpbW1ib3JuLCAyMi4gQXByIDE5OTgsIDIzOjE2OjQ4KToKfiMhIHJuPUdyaW1tYm9ybiBydD04OTMyNzk2OTYgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKRmFsbHMgZGFzIG5pY2h0IG9idmlvdXMgd2FyOiBOYXR1ZXJsaWNoIGhhYmUgaWNoIG5hY2ggZmRpc2sgcmVib290ZXQgZGFtaXQgZGllCnBhcnRpdGlvbiB0YWJsZSBhdWNoIGdlc2NocmllYmVuIHdpcmQuIFVuZCB3aW45NSBuZXUgaW5zdGFsbGllcnQsIHdhcyBzbyBpbQpTY2huaXR0IChuaWNodCByZWdlbG1hZXNzaWchKSBub2NobWFsIGRyZWkgcmVib290cyBzaW5kLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCBiZWkgTWFleGNoZW4gKE1vcmdvdGgsIDIzLiBBcHIgMTk5OCwgMDc6NDY6MjEpOgp+IyEgcm49Um9jaHVzIHJ0PTg5MzI3NDQ0OSByZz1zY2htYXJybgp+IyEgdGlkPTg5MzI3NDQ0OQpLYW5uIG5jaWh0IG1hbCBlaW5lIHJ1YnJpayBtYWV4Y2hlbiBlaW5yaWNodGVuLiBkYW5uIGthbm4gbWFuIGRpZSB3ZW5pZ3N0ZW5zCmFiYmVzdGVsbGVuIHVuZCBtdXNzIHNvbGNoZW4gZ2FtbWVsIG5pY2h0IGVydHJhZ2VuIApNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEljaCBnZWJzIGF1ZiA6KSAgKExhcmlzc2EsIDIzLiBBcHIgMTk5OCwgMDk6NDI6NTEpOgp+IyEgcm49U3RpbmcgcnQ9ODkzMjc5NDIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMjc5NDIxCgpIbSwgYWxzbyBpY2ggZmluZGUgZGEgbWFjaHN0IER1cyBEaXIgZXR3YXMgenUgZWluZmFjaDoKCldlbm4gei5CLiBlaW4gZ3Jvc3NlciBLb256ZXJuIGVpbmUgY29vbGUgRXJmaW5kdW5nIGthdWZ0IHVuZCBzaWUKaHVlYnNjaCBpbiBkZW4gVHJlc29yIHNwZXJydCwgc2FnZW4gd2lyIG1hbCBhbHMgQmVpc3BpZWwsIGVpbmUKVWx0cmFzY2hhbGwtV2FzY2htYXNjaGluZSwgZGFubiBrYW5uc3RlIGphIGF1Y2ggbmljaHQgc2FnZW46CkplZGVyIGhhdCBkb2NoIGVpbmUgV2FzY2htYXNjaGluZSBmdWVyIFdhc3NlciB1bmQga2FubiBzaWUgZ3V0CmJlZGllbmVuLCBkYXMgQXVmc3RlbGxlbiBpc3QgYXVjaCBlaW5mYWNoIGFsc28gaXN0IGFsbGVzIHRvbGwuLi4KCkxhcmksIG5hamEsIGhpbmt0IHppZW1saWNoLCBhYmVyIGlzdCBkb2NoIHdhcyBkcmFuLCBvZGVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEljaCBnZWJzIGF1ZiA6KSAgKFp3aWxsaW5nLCAyMy4gQXByIDE5OTgsIDA5OjUwOjM4KToKfiMhIHJuPVN0aW5nIHJ0PTg5MzI3OTQyMSByZz1zY2htYXJybgp+IyEgdGlkPTg5MzI3OTQyMQpKYSwgZ2VuYXUgU3RpbmcuIER1IGhhc3QgZGEgZGVuIGVudHNjaGVpZGVuZGVuIEtyaXRpa3B1bmt0IGdlZ2VuIFdpbmRvd3MKZ2VmdW5kZW46ICJKZWRlciBzb2xsIGRhcyBiZW51dHplbiBkYXMgZXIgZnVlciBzaWNoIGRhcyByaWNodGlnZSBoYWVsdCIuCldlbm4gRHUgRGlyIGpldHp0IG5vY2ggYW5zY2hhdXN0IHdpZXZpZWxlIExldXRlIGdlend1bmdlbmVybWFzc2VuIFdpbmRvd3MKYmVudXR6ZW4sIG51ciB3ZWlsIEJpbGx5Ym95IGFuZ2VibGljaCB1ZWJlciA4MCUgTWFya3RhbnRlaWwgYmVzaXR6dC4uLgpEYWdlZ2VuLCBkYXNzIHNpY2ggamVtYW5kIFdpbmRvd3MgZnJlaXdpbGxpZyBhbnR1dCBpc3Qgd29obCB3ZW5pZyB6dSBzYWdlbi4KClp3aWxsaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEljaCBnZWJzIGF1ZiA6KSAgKE5haXJvbGYsIDIzLiBBcHIgMTk5OCwgMTA6MDI6NTkpOgp+IyEgcm49WndpbGxpbmcgcnQ9ODkzMzE3ODM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMjc5NDIxCmFsbGVzIGtlaW4gUHJvYmxlbSAuLi4Kc293b2hsIExpbnV4IGFsc2F1Y2ggV0luZG9vZiBsYXVmZW4gKGZhc3QpIGZlaGxlcmZyZWkgYmVpIG1pciBhdWYgZWluZXIgMzUwTUIKcGxhdHRlIC4uLi4gd28gaXMgZGEgZGFzIFByb2JsZW0gPyA6LSkKYWxsZXJkaW5ncyB3dWVyZCBpY2ggYXVmIFdpbmRvb2YgdmVyemljaHRlbiB3ZW5uIGljaCB3dWVzc3RlIHdpZSBpY2ggbWVpbmUgVFYKS2FydGUgdW50ZXIgTGludXggenVtIGxhdWZlbiBrcmllZ2UgOy0pIGhhdCBkYSBqZW1hbmQgdm9yc2NobGFlZ2UgPyA6LSkKCk5haS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBnYXRlcyB1c3cuIChTaWx2YW5hLCAyMy4gQXByIDE5OTgsIDEwOjA0OjA4KToKfiMhIHJuPUdyaW1tYm9ybiBydD04OTMyNzk0NzYgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKTWFsIG1pdHRlbiBpbiBkZW4gVGhyZWFkIHJlaW4uLi4gUmFkaW8gdW5kIEFtYXRldXJmdW5rIGdpYnRzIGF1Y2gsCmFsbGVyZGluZ3Mga2VpbmUgQWhudW5nLCBpbiB3ZWxjaGVyIFF1YWxpdGFldC4KCiAgU2lsdmFuYSAtIGJyYXVjaHQgc293YXMgbmljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWxpY2ggYmVpIE1hZXhjaGVuIChSb2NodXMsIDIzLiBBcHIgMTk5OCwgMTA6Mzk6MDkpOgp+IyEgcm49TW9yZ290aCBydD04OTMzMTAzODEgcmc9c2NobWFycm4KfiMhIHRpZD04OTMyNzQ0NDkKRnVlciBlaW5lbiBlaW56aWdlbiBBcnRpa2VsIHdlcmRlIGljaCBOSUNIVCBlaW5lIHNvbGNoZSBSdWJyaWsgZWlucmljaHRlbi4KCgogIFJvY2h1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IGdhdGVzIHVzdy4gKEZyZXVuZCwgMjMuIEFwciAxOTk4LCAxMDo0NToxNyk6Cn4jISBybj1TaWx2YW5hIHJ0PTg5MzMxODY0OCByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQpUamEsIGRhIHdhcmVuIHNpZSB3aWVkZXIsIG1laW5lIGRyZWkgUHJvYmxlbWU6CkxpbnV4LCBXaW5kb3dzIHVuZCBkZXIgZXdpZ2UKTWVpbi1CZXRyaWVic3N5c3RlbS1pc3QtYWJlci1iZXNzZXItYWxzLURlaW5lcy1UaHJlYWQuCkljaCBtdXNzIFN0aW5nIGluIHNlaW5lbSBsZXR6dGVuIFB1bmt0IHVudGVyc3R1ZXR6ZW46IEVzIGthbm4gZG9jaCBqZWRlciBkYXMKbnV0emVuLCB3YXMgZXIgbW9lY2h0ZS4gRGVyIFZlcmdsZWljaCBtaXQgZGVuIFdhc2NobWFzY2hpbmVuIGhpbmt0IHNlaHIgc3RhcmssCmRhIHNvd29obCBMaW51eCBhbHMgYXVjaCBXaW5kb3dzIGVyaGFlbHRsaWNoIHNpbmQuIE9kZXIgZ2xhdWJzdCBEdSwgTGFyaXNzYSwKZGFzcyBpcmdlbmR3ZXIgZGFzIFVsdGltYXRpdmUgQmV0cmllYnNzeXN0ZW0gKFVCUykgaW0gU2FmZSBsaWVnZW4gaGF0LCB1bmQKc2ljaCBkaWUgS29obGUgZGFmdWVyIGVudGdlaGVuIGxpZXNzZT8gKEhtLCBJQk0gT1MvMiBnaW5nIGluIGRpZQpSaWNodHVuZy4uLjstKQoKRmFrdCBpc3QgZG9jaDogV2VyIGVpbiBTeXN0ZW0gYmVzc2VyIGtlbm50IGFscyBkYXMgYW5kZXJlLCBrYW5uIGRhbWl0IGF1Y2gKYmVzc2VyIGFyYmVpdGVuLiBXZXIgYWxsZSBUcmlja3MgdW5kIEtuaWZmZSB2b24gV2luOTUga2VubnQsIGRlciBoYXQgZWluIHNlaHIKc3RhYmlsZXMgU3lzdGVtLiBVZWJlciBkYXMgSGFuZGJ1Y2ggb2RlciBkaWUgT25saW5lLUhpbGZlIGlzdCBkYSBuYXR1ZXJsaWNoCm51ciBzZWhyIHdlbmlnIHp1IHJlaXNzZW4uIFdlciBlaW4gTGludXgtR3VydSBpc3QsIHdpcmQgYXVmIHNlaW5lbSBTeXN0ZW0gYXVjaApzZWx0ZW4gZWluIFByb2JsZW0gaGFiZW4sIGRhc3MgZXIgbmljaHQgaW5uZXJoYWxiIHZvbiA1IE1pbnV0ZW4gYmVob2JlbgpoYWV0dGUuIChWaWVsbGVpY2h0IG1hbCA1IFZlcnplaWNobmlzc2UgZHVyY2hzdWNoZW4sIGluIGRlbmVuIGRpZSBEYXRlaSBnZXJhZGUKc3RlaHQuLi47LSkKCkFsc28sIHZpZWxsZWljaHQga29lbm5lbiB3aXIgdW5zIGF1ZiBmb2xnZW5kZXMgZWluaWdlbjoKV2luZG93czk1IGlzdCBpbnp3aXNjaGVuIGFscyBTcGllbGVwbGF0dGZvcm0gZnVlaHJlbmQuIDotKQoKRnJldW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IGdhdGVzIHVzdy4gKEtleSwgMjMuIEFwciAxOTk4LCAxMjoyMTo1NCk6Cn4jISBybj1GcmV1bmQgcnQ9ODkzMzIxMTE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTYwNzc1Cj5XaW5kb3dzIDk1IGlzdCBpbnp3aXNjaGVuIGFscyBTcGllbGVwbGF0dGZvcm0gZnVlaHJlbmQuCgpQZmYgbml4IGdlaHQgdWViZXIgZGllIGFsdGVuIERvc3NwaWVsZSA7KSB3aWUgQ2FzaCwgTmliYmVscywgdXN3ICwpCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBnYXRlcyB1c3cuIChBbmF0b2wsIDIzLiBBcHIgMTk5OCwgMTI6NDk6MjEpOgp+IyEgcm49RnJldW5kIHJ0PTg5MzMyMTExNyByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQo+IFRqYSwgZGEgd2FyZW4gc2llIHdpZWRlciwgbWVpbmUgZHJlaSBQcm9ibGVtZToKCldpZSBqZXR6dCwgIk90dG8gLSBkZXIgRmlsbSI/IElzdCBkYXMgbmljaHQgc2Nob24gZWluIGJpc3NjaGVuIGFsdD8gOikKCkFuYXRvbCwgdWViZXIgc2VpbiBHZWRhZWNodG5pcyBzdGF1bmVuZAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBnYXRlcyB1c3cuIChMYXJpc3NhLCAyMy4gQXByIDE5OTgsIDEzOjU2OjM1KToKfiMhIHJuPUZyZXVuZCBydD04OTMzMjExMTcgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKRXMgZ2luZyBiZWkgZGVtIFdhc2NobWFzY2hpbmVuLVZlcmdsZWljaCBhdWNoIGVociB1bToKCidCbG9zcyB3ZWlscyBqZWRlciBoYXQgdW5kIHZpZWxsZWljaHQgbml4IGFuZHJlcyBrZW5udCBtdXNzIGVzIGphIG5pY2h0IAogYmVzc2VyIHNlaW4uJwoKWnVyIFNwaWVsZXBsYXR0Zm9ybSBrYW5uIGljaCBudXIgc2FnZW46IFNjaGFkZSwgZGVubiBpY2ggaGFiIG5vY2ggX2tlaW5fClNwaWVsIHVudGVyIE1TLXdhc2F1Y2hpbW1lciBnZXNwaWVsdCwgd2FzIG5pY2h0IHdlbmlnc3RlbnMgZWlubWFsIHBybyBTcGllbAphYmdlc3R1ZXJ6dCB3YWVyZS4KCkxhcmkuICAgICAgICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGdhdGVzIHVzdy4gKFRyZWthbiwgMjMuIEFwciAxOTk4LCAxNToyMzoyMSk6Cn4jISBybj1TaWx2YW5hIHJ0PTg5MzI2NzAxNiByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQppY2ggZGVua2UgZGEgbnVyIGFuIGRpZSBNJC1Ib3RsaW5lLCBkaWUgZnVlciB1bXNvbnN0IGFuZ2Vib3RlbiB3dXJkZQp1bmQgZGllIG51bW1lcjogMDE4MCAvIHh4eHggaXJnZW5kd2FzLgpEYXMgc29sbCB1bXNvbnN0IHNlaW4/IERhIHNvbGwgbWFuIGRlciBXZXJidW5nIGdsYXViZW4KVHJla2FuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogZ2F0ZXMgdXN3LiAoUmluZ29yLCAyMy4gQXByIDE5OTgsIDE1OjI3OjEzKToKfiMhIHJuPVRyZWthbiBydD04OTMzMzc4MDEgcmc9c2NobWFycm4KfiMhIHRpZD04OTMxNjA3NzUKSXJnZW5kZWluZSBOdW1tZXIgaGF0IE0kIGFiZXIgd2lya2xpY2ggbWFsIGtvc3RlbmxvcyBhbmdlYm90ZW4gKDAxMzAteHh4eHgpLgoKTmFjaGRlbSBodW5kZXJ0ZSBDb21wdXRlcm51dHplciB0YWVnbGljaCBwZXIgU2tyaXB0IGRpZSBUZWxlZm9ucmVjaG51bmcgdm9uIE0kCmhvY2hnZXRyaWViZW4gaGF0dGVuLCB3dXJkZSBkaWUgTnVtbWVyIGF1Y2ggZ2FueiBzY2huZWxsIHdpZWRlciBlaW5nZXN0YW1wZnQuCgpEZXIgUHJlc3Nlc3ByZWNoZXIgdm9uIE0kIHJlZGV0ZSBoaW50ZXJoZXIgdm9uICJLaW5kZXJuIiwgZGllIHNpY2ggU2NoZXJ6ZQplcmxhdWJ0IGhhZXR0ZW4uIFdlbm4gZGVyIE1hbm4gd3Vlc3N0ZSwgd2llIGFsdCBkaWVzZSAiS2luZGVyIiBpbSBTY2huaXR0CndhcmVuIC4uLiA7LSkKClJpbmdvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogZ2F0ZXMgdXN3LiAoVHJla2FuLCAyMy4gQXByIDE5OTgsIDE1OjM4OjE3KToKfiMhIHJuPUhhbmdvdmVyIHJ0PTg5MzI3OTAzMCByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQpjb29vbCAuLiBkYXMgcHJvYmxlbSBoYXR0ZSBpY2ggYXVjaC4gaGFiIGVzIGVpbmZhY2ggZHVyY2ggZGFzIGxvZXNjaGVuIGRlcwp6dWdydW5kZWxpZWdlbmRlbiBiZXRyaWVic3N5c3RlbWVzIGVybGVkaWd0OikKCkFiZXIgd2lyIGhhYmVuIGpldHp0IGRlbiBhYnNvbHV0ZW4gaGFtbWVyIGJla29tbWVuLiBFaW5pZ2UgTGV1dGUgdW5zZXJlciBmaXJtYQpoYWJlbiBzaWNoIHp1IGVpbmVtIFdvcmtzaG9wIHp1bSBjZXJ0aWZpemllcnRlbiBXaW5kb3dzL25ldHp3ZXJrc3VwcG9ydGVyCmFuZ2VtZWxkZXQuCkRvcnQgZXJoaWVsdGVuIHdpciBwcm9tcHQgYXVjaCBlaW4gYnVjaCBmdWVyIGRpZSBlcnN0ZSBwcnVlZnVuZywgaW4gd2VsY2hlbSBpbQpoaW50ZXJlbiB0ZWlsIGZpa3RpdmUgcHJ1ZWZ1bmdzYXVmZ2FiZW4gZ2VzdGVsbHQgd2VyZGVuLgoKU2lubmdlbWFlc3MgbGF1dGV0ZSBkaWUgZXJzdGUgZnJhZ2U6IApTaWUga29tbWVuIG1vcmdlbnMgaW5zIEJ1ZXJvLCB3ZWxjaGVzIHVlYmVyIGVpbmUgVDEgTGVpdHVuZyBuYWNoIGF1c3NlbgphbmdlYnVuZGVuIGlzdCB1bmQgZGllIEFuZ2VzdGVsbHRlbiBzYWdlbiwgZXMgZnVua3Rpb25pZXJ0IGtlaW4gTmV0eiwgYWJlcgp0ZWxlZm9uaWVyZW4ga2FubiBtYW4gbm9jaC4KCkxvZXN1bmc6IFVlYmVycHJ1ZWZlbiBzaWUgZGllIHJlY2huZXIgYXVmIGRpZSBuZXR6d2Vya2Z1bmt0aW9uYWxpdGFldCBoaW4uCnNvbHRsZSBzaWNoIGRvcnQga2VpbiBmZWhsZXIgZmluZGVuIHVuZCBkYXMgbmV0eiBuaWNodCBsYXVmZW4sIGZhaHJlbiBzaWUgZGFzCm5ldHp3ZXJrIGhpbnVudGVyIHVuZCBzdGFydGVuIG5ldS4gZnVua3Rpb25pZXJ0IGRhcyBuZXR6IGRhbm4gaW1tZXIgbm9jaApuaWNodCwgbWVsZGVuIHNpY2ggYmVpIGRlciBNJC1Ib3RsaW5lLgoKU29sbCBtYW4gZGEgbmljaHQgbGFjaGVuPyBTb3dhcyBzb2xsIHNpY2ggZGFubiBjZXJ0aWZpemllcnRlciBzdXBwb3J0IG5lbm5lbi4KRGEgc2FnZSBpY2ggbnVyIC0+IGdyYXVlbnZvbGwKVHJla2FuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogZ2F0ZXMgdXN3LiAoT3ZlcmxvcmQsIDIzLiBBcHIgMTk5OCwgMjA6MDc6MzYpOgp+IyEgcm49U3RpbmcgcnQ9ODkzMjc0OTUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTYwNzc1CkFiZXIgd2VubiBtYW4gbmljaHQgbWFsIG5vcm1hbGUgQnJpZWZlIGVpbmlnZXJtYXNzZW4gc28gZXJzdGVsbGVuIGthbm4sIGRhc3MKc2llIG5hY2ggd2FzIGF1c3NlaGVuLCB3b3p1IGlzdCBkZW4gZGVyIGdhbnplIG1pc3QgVWViZXJoYXVwdCBudWV0emU/IFVuZCBtaXQKZGVuIEltLXVuZCBFeHBvcnRmaWx0ZXJuIGthbm4gbWFuIHNjaGllciB2ZXJ6d2VpZmVsbiwgZGEgZGllIGFsbGVzIG1vZWdsaWNoZQptYWNoZW4sIG51ciBuaWNodCBzYXViZXIgaW1wb3J0aWVyZW4uLi5hdWNoIGVpbmUgbW9lZ2xpY2hrZWl0IHZvbiBNUywgZGllCktvbmt1cnJlbnoga2xlaW56dWhhbHRlbgoKT3ZpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBnYXRlcyB1c3cuIChLb2JheWFzaGksIDIzLiBBcHIgMTk5OCwgMjA6MDg6MTIpOgp+IyEgcm49VHJla2FuIHJ0PTg5MzMzODY5NyByZz1zY2htYXJybgp+IyEgdGlkPTg5MzE2MDc3NQpOYWNoIGRlbSBpY2ggbnVuIGRlbiB0aHJlYWQgZHJ1Y2ggaGFiZSB3aWxsIGljaCBhdWNoIHdhcyBzYWdlbiA6LSkKClp1bSBUaGVtYSBWb3JmdWhlcnVuZyB2b24gdW5mZXJ0aWdlciBTb2Z0d2FyZTogV2VubiBCaWxseWJveSB3aXJrbGljaAp1bmZlcnRpZ2UgU29mdHdhcmUgaGFldHRlIHZvcmZ1ZXJoZW4gd29sbGxlbiwgd29iZWkgbWl0IHNvIGV0d2FzIGltbWVyCnp1IHJlY2huZW4gZ2V3ZXNlbiB3YWVyZSwgd2llc28gaGF0IGVyIGRhbm4gbm9jaCB2b3IgZGVtIEVuZGUgZGVyIE1lc3NlCmRhcyBrb21wbGV0dGUgRGVtby1UZWFtIGZyaXN0bG9zIGdla3VlbmRpZ3QgPwoKS29iYXlhc2hpClAuUy4gQml0dGUgZnJhZ3QgamV0enQgbmljaHQgbmFjaCBkZW4gUXVlbGxlLCBpY2ggaGFiZSBsZWlkZXIgdmVyZ2Vzc2VuLCB3bwppc3QgZGFzIGdlbGVzZW4gaGFiZSAoIG5laW4sIGVzIHdhciBuaWNodCBkaWUgQklMRCApIC4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBnYXRlcyB1c3cuIChPdmVybG9yZCwgMjMuIEFwciAxOTk4LCAyMDowODo0OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODkzMjc4MTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzMTYwNzc1ClVuZCBiZWltIE9mZmljZS1QYWtldCBpc3QgV1lTSVdZRyBqYSB3b2hsIG4gV2l0ei4uLgoKT3ZpIGVpbnplaWxlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIChNb3Jnb3RoLCAyNC4gQXByIDE5OTgsIDA4OjAyOjA2KToKRWluIGZsYWNoZXIgS2FzdGVuIG1pdCBoZWxsZW4gU2FlZ2VzcGFlbmVuLiBFeHRyYSBmdWVyIE1pZXplLgo+IE1pZXplIGJlbnV0enQgZGFzIEthdHplbmtsby4KU2llIHNpZWh0IHJlY2h0IGVybGVpY2h0ZXJ0IGF1cy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1FSU4gTW9yZ2VuR3JhdWVuIChNb3Jnb3RoLCAyNC4gQXByIDE5OTgsIDA4OjA0OjIyKToKICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRnJlLCAyNC4gQXByIDE5OTgsIDA4OjAzOjU2ICgxOSBUZWlsbmVobWVyKQoKRW1iZS4uLi4uLi4uLi4uSi5zIE1hcHBpLi4uLi4uLi4uLkoucyBBbGNpbmEuLi4uLi4uLi4uLnogWGFyLi4uLi4uLi4uLi4uaS56CkZpc2guLi4uLi4uLi4uLi4ucyBFYWRyaWMuLi4uLi4uLi4uLnogU2FwaGlyYS4uLi4uLi4uLi5zIFJheWVrLi4uLi4uLi4uLi4uegpZdWRpbm9tLi4uLi4uLi5qLnMgVHlsYWsuLi4uLi4uLi4uLi5zIFppbGx1cy4uLi4uLi4uLi4uUyBNaWV6ZS4uLi4uLi4uLi4uLlMKQ29yb25lci4uLi4uLi4uSi5TIFRyZWthbi4uLi4uLi4uLkoueiBYYW5kLi4uLi4uLi4uLi5pLlMgWmluby4uLi4uLi4uLi4uSi56ClJlZG5vc2UuLi4uLi4uLkouUyBSb2FkcnVubmVyLi4uLi5JLlMgTW9yZ290aC4uLi4uLi4uLi5SCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaW45NS1CZXJpY2h0IChHcmltbWJvcm4sIDI0LiBBcHIgMTk5OCwgMTA6Mzc6NDApOgpJY2ggaGF0dGUgZGFzIGRpZSBUYWdlIGFuZ2VrdWVuZGlndCwgaGllciBpc3QgZGllIG1haWwsIGRpZSBpY2ggaW0gRnJ1c3QgbmFjaAplaW5lbSBtYWVzc2lnIGVyZm9sZ3JlaWNoZW4gd2luOTUtSW5zdGFsbGF0aW9uc25hY2htaXR0YWcgZ2VzY2hyaWViZW4gaGF0dGU6CgoKQWxzbywgaWNoIGhhYmUgaGV1dGUgZGVuIGRyaXR0ZW4gVGFnIGJlaSBlaW5lciBGaXJtYSB2ZXJzdWNodCBXaW45NSB6dQppbnN0YWxsaWVyZW4uIEluc2dlc2FtdCBiaW4gaWNoIGpldHp0IGF1ZiAxNSBJbnN0YWxsYXRpb25zdmVyc3VjaGVuLgpGb2xnZW5kZSBTYWNoZW4gaGFiZSBpY2ggZGFiZWkgZmVzdGdlc3RlbGx0OgotIERhcyB3aW45NS1mZGlzayBpc3Qga3JhbmsuIFNlaHIga3JhbmsuIFRyb3R6ZGVtIEZpbmdlciB3ZWcgdm9tCiAgTGludXgtZmRpc2shIFp1IGVpbmVtIGtyYW5rZW4gU3lzdGVtIGdlaG9lcmVuIGtyYW5rZSBQcm9ncmFtbWUhCi0gRXMgaXN0IEtFSU5FIGd1dGUgSWRlZSwgZWluZSBQbGF0dGUgZXJzdCB1bnRlciBMaW51eCB6dSBQYXJ0aXRpb25pZXJlbgogIHVuZCBkYW5uIHp1IGhvZmZlbiwgd2luOTUgd3VlcmRlIHNjaG9uIG1pdCBkcmVpIHByaW1hZXJlbiBQYXJ0aXRpb25lbgogIHp1cmVjaHQga29tbWVuLiBEYXMgaXN0IG5hZW1saWNoIG5pY2h0IGRlciBGYWxsLiBEaWUgZHJpdHRlIFBhcnRpdGlvbgogIGhhdCBlciB2ZXJ3ZXJ0ZW4ga29lbm5lbiwgbmljaHQgZGllIHp3ZWl0ZS4KLSBCZWkgZWluZXIgTmV1aW5zdGFsbGF0aW9uIG5hY2ggZWluZW0gbWlzc2dsdWVja3RlbiBWZXJzdWNoIFVOQkVESU5HVCBkYXMgCiAgV2luZG93cy0gdW5kIGRhcyBQcm9ncmFtbWUtVmVyemVpY2huaXMgbG9lc2NoZW4uIEVzIGlzdCBtaXRuaWNodGVuIHNvLAogIGFscyB3dWVyZGVuIGRhIG5ldWUgRWluc3RlbGx1bmdlbiBiZWkgZGVyIE5ldWluc3RhbGxhdGlvbiBlcnpldWd0LiAKICBTZWxic3R2ZXJzdGFlbmRsaWNoIGJyYXVjaHQgbWFuIGdhciBuaWNodCBlcnN0IHp1IGhvZmZlbiwgZGFzcyBlaW5lbSBkYXMgCiAgbWl0Z2V0ZWlsdCB3aXJkLgotIE5JRU1BTFMgZGVuIElFIGVudGZlcm5lbi4gWndhciBoYXQgTVMgZGVuIFByb3plc3MgdmVybG9yZW4gdW5kIHNlaXRkZW0KICBrYW5uIG1hbiBkZW4gSUUgbWl0IGRlbSAiYWN0aXZlIGRlc2t0b3AiIGVudGZlcm5lbiwgYWJlciBhbnNjaGVpbmVuZCBoYXQKICBkYXMgVXJ0ZWlsIHZlcnNhZXVtdCBmZXN0enVsZWdlbiwgZGFzcyBkYXMgUmVzdWx0YXQgYXVjaCBudXIgaW0KICBlbnRmZXJudGVzdGVuIHN0YWJpbCBzZWluIHNvbGx0ZS4KLSBFaW4gTmV0endlcmsgKG9rLCBhbHNvIHp3ZWkgUmVjaG5lciBtaXRlaW5hbmRlciB2ZXJiaW5kZW4pIGR1cmNoIGtsaWNrZW4KICBhdWYgQmlsZGVyIGVpbnp1cmljaHRlbiBpc3QgZGV1dGxpY2ggc2Nod2VyZXIgYWxzIGRhcyBEdXJjaGFyYmVpdGVuCiAgaXJnZW5kd2VsY2hlciBIT1dUT3MgamVtYWxzIHNlaW4ga2Fubi4gQWxsZXJkaW5ncywgZGllc2VyCiAgRmVoXkhpbGZlYXNzaXN0ZW50IHp1IE5ldHp3ZXJrcHJvYmxlbWVuIGlzdCB2b3JiaWxkbGljaC4gTnV0enQgYWJlciBhdWNoCiAgbmljaHRzIHdlbm4gdmVybXV0bGljaCBkaWUgVGVybWluYXRvcmVuIGRpZSBBcmJlaXQgc2Fib3RpZXJlbi4gV2FzCiAgYW5kZXJlcyBrYW5ucyBqZWRlbmZhbGxzIHdpcmtsaWNoIG5pY2h0IG1laHIgc2Vpbi4KLSBNZXJrZTogSW4gZWluZW0gU3lzdGVtLCBkYXNzIERpciBuaWNodCBlcnphZWhsdCB3YXMgZXMgdHV0IGJyYXVjaHQgbWFuCiAgbmljaHQgenUgZXJ3YXJ0ZW4sIGRhc3MgZGllIGdsZWljaGVuIEhhbmRsdW5nZW4gYW4gYW5zY2hlaW5lbmQgZGVyc2VsYmVuCiAgU3RlbGxlIGF1Y2ggZGFzc2VsYmUgRXJnZWJuaXMgbGllZmVybi4gRGFzIGlzdCBwcmFrdGlzY2ggbmllIHNvLgotIEljaCBtYWNoZSBkcmVpIEtyZXV6ZSwgd2VubiBkaWUgT2ZmaWNlYW53ZW5kdW5nZW4gdW50ZXIgTGludXggc28gd2VpdAogIHNpbmQgZGFzcyBtYW4gc2llIGF1Y2ggREFVcyBpbiAiZGVyIFdpcnRzY2hhZnQiIHZvcnNldHplbiBrYW5uIG9obmUKICBnbGVpY2ggZnVlciBqZWRlcyBrbGVpbmUgUHJvYmxlbSB2ZXJhbnR3b3J0bGljaCBnZW1hY2h0IHp1IHdlcmRlbi4gQWxsZXMKICB3YXMgZGllIExldXRlIHdvbGxlbiBpc3QgV29yZCwgRXhjZWwsIEFjY2VzcywgYmlzY2hlbiBTUFNTIHVuZCBadWdyaWZmCiAgYXVmIGRlbiBEcnVja2VyIGRlcyBqZXdlaWxzIGFuZGVyZW4gUmVjaG5lcnMgKHVuZCBhdWYgZGllIGZpbGVzCiAgbmF0dWVybGljaCkuIEljaCBiaW4gamEgbmljaHQgZGVyIEhlbGQsIGFiZXIgdW50ZXIgTGludXggaGFldHRlIGljaCBkYXMKICBpbiB2aWVsbGVpY2h0IDRoIGhpbmJla29tbWVuLiBBbiBkZXIgd2luOTUgR2VzY2hpY2h0ZSBzaXR6ZSBpY2ggc2VpdAogIGZhc3QgMTVoLCBiaW4gbm9jaCBuaWNodCB2b2VsbGlnIGZlcnRpZyB1bmQgZGllIGxldHp0ZSBJbnN0YWxsYXRpb24gaGF0CiAgZWluZSBrbGVpbmUgRmVobGVybWVsZHVuZyBnZWJyYWNodCB2b24gZGVyIGljaCBob2ZmZSBkYXNzIHNpZSBrZWluZQogIGZhdGFsZW4gQXVzd2lya3VuZ2VuIGhhYmVuIHdpcmQuLi4KCk1hbm4sIGJpbiBpY2ggYmVkaWVudC4uLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLQpUaXRhbmljIDEyIC0gSGlyb3NoaW1hIDQ1IC0gVHNjaGVybm9ieWwgODYgLSBXaW5kb3dzIDk1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplbmdsaXNjaCBvZGVyIGRldXRzY2g/IChHcmltbWJvcm4sIDI0LiBBcHIgMTk5OCwgMTM6MDE6NTcpOgpVZWJlciBkZW4gaGllciBoYWJlIGljaCBtaWNoIGdlc3Rlcm4gYWJnZXJvbGx0Li4uCgpTdWJqZWN0OiBSZTogcGFyYW5vaWQgbmV3IGhhbXN0ZXIgCkZyb206IEZyYW5rIEhpbnRlcm1haWVyIDxGcmFuay5IaW50ZXJtYWllckBwaXJvbmV0LmRlPgpOZXdzZ3JvdXBzOiBhbHQucGV0cy5oYW1zdGVycwoKTG9ycmFpbmUgSGlsbCBzY2hyaWViIGluIE5hY2hyaWNodCA8MzUzMzEzNDcuNjkzNDk3QG5ld3MudWtvbmxpbmUuY28udWs+Li4uCj5PbiBTYXQsIDExIEFwciAxOTk4IDA0OjQxOjU0IC0wNTAwLCBNaWNoYWVsIFdvbmcgPHN0NWgyQGJheW91LnVoLmVkdT4KPndyb3RlOgo+Cj4+SSByZWFkIGluIHRoZSBGQVFzIHRoYXQgIkhhbXN0ZXJzIGhhdmUgYW4gZXh0cmFvcmRpbmFyaWx5IGhpZ2ggbGlraW5nIGFuZAo+PnRvbGVyYW5jZSBmb3IgYWxjb2hvbC4iICBXb3VsZCB0aGF0IG1ha2UgYSBoYW1zdGVyIG1vcmUgc29jaWFibGU/Cj4KPkFsdGhvdWdoIHRoZXkgaGF2ZSBhIGhpZ2ggdG9sZXJhbmNlIGZvciBhbGNvaG9sIHRoaXMgZG9lcyBub3QgbWVhbgo+dGhhdCB5b3Ugc2hvdWxkIGdpdmUgeW91ciBoYW1zdGVyIGFsY29ob2wgYXMgaXQgaXMgbm90IGdvb2QgZm9yIGl0Lgo+UGF0aWVuY2UgYW5kIGdlbnRsZW5lc3MgaXMgdGhlIGJlc3Qgd2F5IHRvIHRhbWUgdGhlIGhhbXN0ZXIuCgpIaSBMb3JyYWluZSEgOjstKSkKClRoYW5rIHlvdSBmb3IgdGhpcyB3b3Jkcy4gSSB3YXlzIHJlYWxseSB1cHNldCwgd2hlbiBJIHJlYWQgYWJvdXQgYWxrb2hvbCBmb3IKaGFtc3RlcnMuIFVuZm9ydHVuYWxseSBteSBlbmdsaXNoIGlzIHRvIGJhZCB0byBhbnN3ZXJlZCBpbiB0aGUgcmlnaHQgd29yZHMuCjotKAoKSSBzdHVkeSAiR2V0cmFlbmtldGVjaG5vbG9naWUiIChkcmlua3RlY2hub2xvZ3kgPz8pIGFuZCBzbyBJIGtub3cgYSBsaXR0bGUKYml0IGFib3V0IGFsa29ob2wuCgpQZXJoYXBzIEkgdHJ5IGl0LiA6LSkpICBBbGtvaG9sIGlzIGEgZHJ1Zy4gV2hlbiBoYW1zdGVycyBsaWtlIGFsa29ob2wgYW5kCmRyaW5rIGEgbG90IG9mIHRoZW0sIHRoaXMgaW5kaWNhdGVzIHRoYXQgdGhleSBhcmUgdmVyeSBxdWljayBpbiBkZXBlbmRpbmcuCkEgaGlnaCB0b2xlcmFuY2UgbWVhbnMgbm90LCB0aGF0IHRoZXkgYXJlIGltdW4gYWdhaW5zdCB0aGUgcG9pc29uIGFsa29ob2wuCgpBbmQgZ2l2aW5nIHRoZW0gYWxrb2hvbCBpcyB2ZXJ5IGRhbmdlcm91cyAgYmVjYXVzZSBvZiB0aGVpciBsaXR0bGUgYm9keS4KUmVsYXRpb24gYm9keXdlaWdodC9hbGtvaG9sLgoKQWxrb2hvbGtvbnN1bSBkZXBlbmRzIGFsd2F5cyBvbiBhIHNvY2lhbCBiYWNrZ3JvdW5kLiBDdWx0dXJlcyBsaWtlIHRoZQpldXJvcGVhbiAoZXNwZWNpYWxseSBCYXZhcmlhKSBsaXZlIHdpdGggYWxrb2hvbCBvdmVyIG1hbnkgaHVuZGVyZWQgeWVhcnMuCihCZWVyIGFuZCB2aW5lKS4gU28gbmVhcmx5IGV2ZXJ5IGtub3dzIHNpbmNlIGJlaW5nIGEgY2hpbGQgdG8gaGFuZGxlIGl0LgpUaGV5IGNhbiBkcmluayBldmVyeSBkYXkgYSBsb3QgIk1hc3MgQmllciIgd2l0aG91dCBiZWNvbWluZyBkZXBlbmQuIChJIGhvcGUKdGhpcyBpcyB0aGUgcmlnaHQgd29yZCBmb3IgInN1ZWNodGlnIHdlcmRlbiwgYWJoYWVuZ2lnIHdlcmRlbiIpIE90aGVyIHBlb3BsZQpsaWtlIG9yaWdpbmFsIGFtZXJpY2FuIGluZGlhbnMgaGF2ZSBubyByZWFsbHkgY3VsdHVyZSBvZiBhbGtvaG9sLCBhbmQgc28KdGhleSBoYXZlIGEgZmF0YWwgcmVha3Rpb24uCgpUaGUgdHJhaW5pbmcgb2Ygc2V2YXJhbCBodW5kZXJlZCB5ZWFycyBvZiBkcmlua2luZyBiZWVyIGFuZCB2aW5lIGluIGV1cm9wZQpoYXZlICJicmVlZCIgYSBtYXNzIG9mIHBlb3BsZSB3aXRoIGEgc3Ryb25nIGFsa29ob2xkZWh5ZHJvZ2VuYXNlIChhIGh1bWFuCmVuenltLCB3aXRoIGRlc3Ryb3kgdGhlIGFsa29ob2wgaW4gdGhlIGJsb29kKS4gSGFtc3RlcnMgYXJlIG5vdCB3ZWxsIHRyYWluZWQKaW4gZHJpbmtpbmcgYWxrb2hvbC4gIEFuZCBsaWtlIGFsa29ob2wgZGVzdHJveSB0aGUgaW5kaWFucyBpbiBhbWVyaWthLCBzbyBpdAp3aWxsIGRlc3Ryb3kgaGFtc3RlcnMuCgpJdCBpcyBsaWtlIGFyc2VuLiBBIGxpdHRsZSBiaXQgaXMgbm90IHNvIGJhZCwgb2Z0ZW4gZ29vZC4gQnV0IGEgbGl0dGxlIHRvbwptdWNoIGFuZCAuLi4uLi4uLi4uCgpNYWtpbmcgYWxrb2hvbC1leHBlcmltZW50cyB3aXRoIGhhbXN0ZXJzIGlzIHNvbWV0aGluZyBmb3Igc2NpZW50aXN0cyBhbmQgbm90CmZvciBub3JtYWwgcGVvcGxlLiBJbnN0ZWFkIG9mIHRyeWluZyB0byBnaXZlIGFsa29ob2wgdG8gaGFtc3RlcnMsIHRoZXkKc2hvdWxkIGxlYXJuIHRvIGhhbmRsZSB0aGVpciBvd24gYWxrb2hvbGtvbnN1bS4gVGhpcyBpcyBtdWNoIG1vcmUgaW1wb3J0YW50CnRoYW4gdGhhbiB1c2luZyBhbGtvaG9sIGFzIG5hcmtvc2UgZm9yIGJpdHRpbmcgaGFtc3RlcnMuCgpXaGF0IHRvIGRvIHdpdGggYml0dGluZyBoYW1zdGVycyBoYXZlIHlvdSB3cml0ZSwgTG9ycmFpbmUuIFBlcmhhcHMsIHRoaXMgaXMKbm90IHNvIHF1aWNrIGFuZCBlYXN5IChJc250IGl0Pz8/KSBidXQgaXQgaXMgbm90IHNvIGRhbmdlcm91cy4gQW5kIHRoZQpoYW1zdGVyLWZyaWVuZCBjYW4gcHJvb2YgaGlzIG93biBiZWhhdmlvci4KCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXaW45NS1CZXJpY2h0IChHbm9tZSwgMjQuIEFwciAxOTk4LCAyMjoxMzowMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODkzNDA3MDYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzNDA3MDYwCnVuZCB3YXMgbGVocnQgdW5zIGRhcz8KYmVudXR6ZSBuaWVtYWxzIGV0d2FzLCB3YXMgbWl0ICJ3aW4iIGFuZmFlbmd0LCB3ZW5uIGVzIG5pY2h0IHVuYmVkaW5ndCBzZWluCm11c3MuLi4KCmFiZXIgbm9jaCB3YXMgYW5kZXJlczogZXMgZ2lidCBzb29vIHZpZWxlIGxldXRlLCAgZGllIHNpY2ggdWViZXIKTVMtcHJvZHVrdGUgYmVzY2h3ZXJlbiB1bmQgc2llIGRhbm4gZG9jaCBiZW51dHplbiwgc2VpIGVzIGltIGJ1ZXJvIG9kZXIKenUgaGF1c2UuIHNjaGF1dCBkb2NoIG1hbCBuZW4gYmlzc2VsIHVlYmVybiB0ZWxsZXJyYW5kLiAgdW5kIGljaCBtZWluZSBqZXR6dApuaWNodCBudXIgdW5peC9saW51eCBhbHMgYWx0ZXJuYXRpdmUsIGVzIGdpYnQgYXVjaCBPUy8yIG9kZXIgQW1pZ2FPUyBlLmcuCgp1bmQgamV0enQga29tbXQgbWlyIG5pY2h0IG1pdDogIndlbm4gamVkZXIgZGFzIGJlbnV0enQgbXVzcyBpY2ggZGFzIGF1Y2gKYmVudXR6ZW4iIG9kZXIgImRhcyBhbmRlcmUgaXN0IGFiZXIgNTAuLSB0ZXVyZXIgYWxzIGRlciBNUy1tdWVsbCIsIGRlbm4KU08gd2lyZCBkYXMgTVMtaW1wZXJpdW0gbmllIHplcnNjaGxhZ2VuLgoKaWNoIHNlbGJlciBoYWJlIHNlaXQgNyBqYWhyZW4gZWluZW4gYW1pZ2EuIHp1Z2VnZWJlbiwgZXIga2FubiBuaWNodCBtZWhyCm1pdCBuZW0gUDE2NiBtaXRoYWx0ZW4gdW5kIGRlciBzb2Z0d2FyZS1iZXJlaWNoIGhhdCBhdWNoIHNjaG9ubWFsIGJlc3NlcmUKdGFnZSBlcmxlYnQsIGFiZXIgZWlucyB3ZWlzcyBpY2ggamV0enQgc2Nob246IGljaCBicmF1Y2hlIG1heGltYWwgZWluZW4KdmVyc3VjaCwgd2VubiBpY2ggbWlyIGRlbW5hZWNoc3QgT1MgMy41IGluc3RhbGxpZXJlIDstKQoKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3dhcy4uLiAoR3JpbW1ib3JuLCAyNi4gQXByIDE5OTgsIDExOjA4OjI3KToKLWxpbj8KRGllc2UgQW5nYWJlIHdhciBuaWNodCBlaW5kZXV0aWchIEZvbGdlbmRlIEViZW5lbiBwYXNzZW46CmxpbnV4LCBsaW51eCwKCkFoc28uLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTVMuLi4gKEdyaW1tYm9ybiwgMjYuIEFwciAxOTk4LCAxMToxNDo0MCk6CkF1ZiBkZXIgIk1TLUlFIGZvciBVbml4IiBwYWdlIGdlZnVuZGVuOiAiT3V0bG9vayBFeHByZXNzIGFkZHMgZS1tYWlsIGFuZApuZXdzZ3JvdXAgZmVhdHVyZXMgdG8gSW50ZXJuZXQiCgpEYW5rZSwgQmlsbCEKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTm9jaG1hbCBJRSBmb3IgVW5peCAoR3JpbW1ib3JuLCAyNi4gQXByIDE5OTgsIDExOjIxOjQ0KToKQWNoIGphLCBuYWNoZGVtIGljaCAibmV1Z2llcmlnIiBtaWNoIGZ1ZXIgZGVuIElFIGZvciBVbml4IGludGVyZXNzaWVydCBoYWJlCnN0ZWxsdCBzaWNoIGF1ZiBkZXIgdmllcnRlbiBTZWl0ZSBoZXJhdXMsIGRhc3MgbWl0ICJVbml4IiBtaXRuaWNodGVuIEhQLVVYLApJUklYLCBBSVgsIER1bml4IG9kZXIgZ2FyIExpbnV4IGdlbWVpbnQgaXN0IHNvbmRlcm4gYXVzc2NobGllc3NsaWNoIFNvbGFyaXMuCkFjaCBqYSwgdW5kIHNpZSBmZWllcm4gc2ljaCwgZGFzcyBtaXQgZGVtIElFIGZvciBVbml4IGVuZGxpY2ggZWluZSB0cnVlCnBsYXR0Zm9ybSBpbmRlcGVuZGVudCBMb2VzdW5nIG1vZWdsaWNoIHNlaS4gS2VubnQgamVtYW5kIGVpbiAoYWt0dWVsbGVzKSBPUwpmdWVyIGRhcyBOUyBuaWNodCBlcmhhZWx0bGljaCBpc3Q/IEljaCB3ZWlzcyBuaWNodCwgZGllc2UgRHJlaXN0aWdrZWl0CnZlcmRpZW50IHNjaG9uIGlyZ2VuZHdpZSBSZXNwZWt0Li4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzb3dhcy4uLiAoRnJldW5kLCAyNi4gQXByIDE5OTgsIDExOjI1OjMyKToKfiMhIHJuPUdyaW1tYm9ybiBydD04OTM1ODE3MDcgcmc9c2NobWFycm4KfiMhIHRpZD04OTM1ODE3MDcKSGFsbG8sIAoKc2VsYmlnZXMgUHJvYmxlbSBnZWhhYnQuIExvZXN1bmc6CmViZW5lIGFiYyA9IGxpbnV4LAotYWJjLQoKRnJldW5kLgoKUC5TLjogSWNoIGhvZmZlLCBkaWUgUmVpaGVuZm9sZ2UgZGVyIFBhcmFtZXRlciBkZXIgImViZW5lID0iLUFud2Vpc3VuZyBzdGltbXQuClNvbnN0IHRhdXNjaGVuLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5vY2htYWwgSUUgZm9yIFVuaXggKEtvYmF5YXNoaSwgMjYuIEFwciAxOTk4LCAxMjoxNjozNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODkzNTgyNTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzNTgyNTA0Ck5hamEsIGVpbiBwYWFyIGdpYnRzIGRhIHNjaG9uLCBhYmVyIGVzIGdpYnQgKHVuZCB3aXJkIGVzIGhvZmZlbnRsaWNoIGltbWVyCmdlYmVuKSBtZWhyIHBsYXR0Zm9ybWVuIGFscyBmdWVyIGRlbiBNU0lFLgpBbHMgUGxhdGZvcm0gc2VpIHouWi4gTVBFIGdlbmFubnQgKGlzdCBhbGxlcmRpbmdzIGF1Y2ggbmUgc3BlemlhbHBsYXR0Zm9ybQpmdWVyIEhQIFdTLCBvcHRpbWllcnQgZnVlciBEYXRlbmJhbmtlbi4KCktvYmF5YXNoaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2VubiBzaWNoIE1hZ2llciBzdHJlaXRlbi4uLiAoRGllZGVyLCAyNi4gQXByIDE5OTgsIDE1OjE4OjM0KToKRm9sZ2VuZGVyIERpYWxvZyBzcGllbHRlIHNpY2ggbmV1bGljaCBhYiwgYWxzIGljaCBtZXJrdGUsIGRhc3MgZGllIG5ldWUKQ2hhb3NiaWIgYnVnZ3QuLi4gZWluIFBhcmFkZWJlaXNwaWVsIGZ1ZXIgZ3V0ZSB6d2lzY2hlbm1lbnNjaGxpY2hlIEJlemllaHVuZ2VuCjopCgo+IERpZSBCaWJsaW90aGVrIGRlcyBDaGFvcy4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRvc3Rlbi4KRHUgdGVpbHN0IFRpbGx5IG1pdDogYWVoLi4uIGluZGVyIGJpYm8sIHNpbmQgZGEga2VpbmUgZGV0YWlscyB6dQpEdSB0ZWlsc3QgVGlsbHkgbWl0OiB1bnRlcnN1Y2hlbj8/Pwo+IFRpbGx5IHRlaWx0IERpciBtaXQ6IGFlZ2htbW0uIGVpZ2VudGxpY2ggc2Nob24KRHUgdGVpbHN0IFRpbGx5IG1pdDogaWhjIGthbm4gaGllciBuaXggdW50ZXJzdWNoZW4KPiBUaWxseSB0ZWlsdCBEaXIgbWl0OiBpY2ggc2NoYXVzIG1pciBnbGVpY2ggbWFsIGFuCkR1IGdyaW5zdCBUaWxseSBhdXMgZGVyIEZlcm5lIGFuLgpEdSB0ZWlsc3QgVGlsbHkgbWl0OiB0eXBpc2NoIGNoYW9zIDopCj4gRHUgaG9lcnN0IGRpZSBVaHIgc2NobGFnZW46IEVzIGlzdCBqZXR6dCAxIFVoci4KVGlsbHkgZXJzY2hlaW50IGluIGVpbmVyIFNwaGFlcmUgZ2xlaXNzZW5kZW4gTGljaHRzLgpUaWxseSBzYWd0OiBoaQpUaWxseSBzYWd0OiBhZWhtbQpCaWVyY2hlbiBzYWd0OiBkYSBoYXQgZGllZGVyIHdvaGwgcmVjaHQsIHdhcz8gOikKQmllcmNoZW4gdHJpdHQgVGlsbHkuClRpbGx5IHNhZ3Q6IGtvbWlzY2hlcndlaXNlIGphClRpbGx5IGdyaW5zdC4KRHUgc2Fnc3Q6IGxhZXNzdCBzaWNoIG5peCB1bnRlcnN1Y2hlbgpEdSBraWNoZXJzdC4gKFdpZSBhbGJlcm4gdm9uIERpcikKPiBUaWxseSBzYWd0OiBzbyBlaW4gc2NoZWlzcywgaXN0IGRpZSBhbHRlIGZhc3N1bmZnCkJpZXJjaGVuIHNhZ3Q6IHRpbGx5LCBkZWluIGdlaGFsdCB3aXJkIGdla3Vlcnp0Li4uLgpUaWxseSBzYWd0OiBtb21wbApEdSBzYWdzdDogaWNoIGhhYiBhbmdlZmFuZ2VuIGRhcyByZXBmaWxlIG1pdCBmZWhsZW5kZW4gZGV0YWlscyB2b2xsenVtdWVsbGVuCkR1IHNhZ3N0OiBiaXMgaWNoIGdlbWVya3QgaGFiIGRhc3MgZ2FyIG5peCBnZWh0Cj4gVGlsbHkgdmVyZmx1Y2h0IEJpZXJjaGVuLgpEdSBncmluc3QuCj4gVGlsbHkgYXJnbHQgZWluIHdlbmlnIHZvciBzaWNoIGhpbi4KVGlsbHkgc2FndDogYWNoIG1lbm5vIGRpZWRlcgpEdSBkZW5rc3QgICAuIG8gTyAodHlwaXNjaCBjaGFvcykKPiBUaWxseSBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgoqKiogRGllc2VyIFJhdW0gd2lyZCBnZXJhZGUgbmV1IGdlbGFkZW4gKioqCkRpZSBNYWdpZSBEZWluZXIgQXVnZW4gbGFlc3N0IG5hY2ggdW5kIHZlcnNjaHdpbmRldC4KVGlsbHkgc2FndDogbmEgYWxzbwpJbm1pdHRlbiB2b24gdW1nZXN0dWVyenRlbiBSZWdhbGVuIHVuZCBodW5kZXJ0ZW4gdm9uIEJ1ZWNoZXJuLCBTY2hyaWZ0cm9sbGVuCnVuZCBhbmRlcmVuIFpldWduaXNzZW4gZGVyIERydWNra3Vuc3Qgc3RlaHN0IER1IGluIGRlciBCaWJsaW90aGVrLCBkaWUgZGVtCkF1c3NlaGVuIG5hY2ggbnVyIHp1IGd1dCB6dSBkaWVzZXIgR2lsZGUgcGFzc3QuIFp1bSBUZWlsIHp1IFN0YXBlbG4KYXVmZ2V0dWVybXQsIG9kZXIgYWNodGxvcyB1bmQgemVyZmxlZGRlcnQgYmVpc2VpdGUgZ2V3b3JmZW4sIGxpZWdlbiBkaWUKU2NocmlmdHN0dWVja2UgdWViZXJhbGwgaGVydW0gdW5kIGJpbGRlbiBlaW4gd2FocmVzIER1cmNoZWluYW5kZXIuIFZvbSBCb2RlbgprYW5uc3QgRHUgc28gZ3V0IHdpZSBuaWNodHMgZXJrZW5uZW4sIGFuIGRlbiBXYWVuZGVuIGhhZW5nZW4gZGllIFJlc3RlIHZvbgpSZWdhbGVuIHVuZCBlaW56aWcgdm9uIGRlciBEZWNrZSBiYXVtZWx0IGRhcyBhbnNjaGVpbmVuZCBpbnRha3Rlc3RlIFN0dWVjawpkaWVzZXMgUmF1bWVzOiBFaW4gcmllc2lnZXIgc2Nod2FyemVyIEtyb25sZXVjaHRlci4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRvc3Rlbi4KVGlsbHkgc2FndDogU3RpcmIhLgpFaW4gQmllcmNoZW4gc2NobWVja3QgaW1tZXIgZ3V0LgpEZXIgcmllc2lnZSBzY2h3YXJ6ZSBLcm9ubGV1Y2h0ZXIgYmF1bWVsdCB2b24gZGVyIERlY2tlLiBTZWluZSBIYWx0ZXJ1bmcgaXN0CmluIGRlciBNaXR0ZSBlaW5lcyBkb3J0IGF1ZmdlemVpY2huZXRlbiBQZW50YWdyYW1tZXMgYmVmZXN0aWd0LiBIdW5kZXJ0ZSB2b24Kc2Nod2FyemVuIEtlcnplbiB3ZXJmZW4gaWhyIHVucnVoaWcgZmxhY2tlcm5kZXMgTGljaHQgaW4gZGVuIFJhdW0uIERhcwpNYXRlcmlhbCwgYXVzIGRlbSBkZXIgTGV1Y2h0ZXIgYmVzdGVodCwgc2NoZWludCBrZWluIGhlcmtvZW1tbGljaGVzIHp1IHNlaW4uCkRlbm4gYWIgdW5kIGFuIGJlbWVya3N0IER1IGVpbmVuIGxlaWNodGVuIG1hZ2lzY2hlbiBTY2hpbW1lciwgZGVyIHNpY2ggaW4KemlzY2hlbG5kZW4gRW50bGFkdW5nZW4gYWV1c3NlcnQsIGRpZSBpbiBnZXdpc3NlbiBBYnN0YWVuZGVuIHZvbSBaZW50cnVtIGRlcwpQZW50YWdyYW1tZXMgdWViZXJzcHJpbmdlbi4KRHUgc2Fnc3Q6IGFoYSA6KQpEdSBzYWdzdDogc2llaHQgc2Nob24gYmVzc2VyIGF1cwo+IFRpbGx5IHNhZ3Q6IGJpdHRlIGtlaW5lIGZlaGxlbmRlbiBkZXRhaWxzIGFic2V0emVuIDopClRpbGx5IHNhZ3Q6IGJpdHRlIQpEdSBzYWdzdDogd2llc28gbmljaHQ/Cj4gRWluIFRlc3RlciBrb21tdCBhbi4KQmllcmNoZW4gdHJpbmt0IGVpbiBKZXZlciB1bmQga290enQuCioqKiBEaWVzZXIgUmF1bSB3aXJkIGdlcmFkZSBuZXUgZ2VsYWRlbiAqKioKQmllcmNoZW4gc2FndDogc2F1IQpUaWxseSBzYWd0OiBkZXNoYWxiIDopCkJpZXJjaGVuIHNhZ3Q6IHBmZiwgZGV0YWlscHJ1ZWZlciA6KQpUaWxseSBkZW5rdCAgIC4gbyBPIChmZWhsZW4gbm9jaCBlaW4gb2RlciB6d2VpLi4uKQpEdSBzYWdzdDogb2tvaywgaWNoIGhhbHQgbWljaCB1cnVlY2suLi4gc2FndCBtaXIgd2VubiBpY2ggZGFubiBkYXMgcmVwZmlsZQpEdSBzYWdzdDogYmVhcmJlaXRlIGRhcmYgOikKPiBUaWxseSBzYWd0OiBva2kgOikKU293YXMgc2llaHN0IER1IGRhIG5pY2h0IQpJbiBkZXIgTWl0dGUgZGVyIERlY2tlIGlzdCBlaW4gcmllc2lnZXMgUGVudGFncmFtbSBhdWYgZGFzIEdlc3RlaW4gZ2V6ZWljaG5ldApvZGVyIGVpbmdlbWVpc3NlbHQgd29yZGVuLiBTZWluZSBTcGl0emVuIHplaWdlbiBpbiBkaWUgc2VjaHMgRWNrZW4gZGVzIFJhdW1lcy4KRWluZ2VmYXNzdCB3aXJkIGRhcyBQZW50YWdyYW1tIHZvbiB2aWVsZW4gT3JuYW1lbnRlbiB1bmQgVmVyemllcnVuZ2VuLiBHZW5hdQppbiBkZXIgTWl0dGUgZGVzIFBlbnRhZ3JhbW1zIGhhZW5ndCBlaW4gZ2lnYW50aXNjaGVyIEtyb25sZXVjaHRlciBoZXJhYiwgZGVyCm1pdCBzY2h3YXJ6ZW4gS2VyemVuIGJlc3R1ZWNrdCBpc3QuCkRpZSBEZWNrZSBiZXN0ZWh0IGF1cyBlaW5lbSBtYXR0Z2xhZW56ZW5kZW4sIHNjaHdhcnplbiBHZXN0ZWluLiBTaWUgaXN0IHVlYmVyCnVuZCB1ZWJlciBiZWRlY2t0IG1pdCBPcm5hbWVudGVuIHVuZCBWZXJ6aWVydW5nZW4sIGRpZSBlaW4gcmllc2lnZXMgUGVudGFncmFtbQp1bXJ1bmRlbiwgaW4gZGVzc2VuIE1pdHRlIGVpbiBLcm9ubGV1Y2h0ZXIgYW5nZWJyYWNodCBpc3QuCkRpZSBWZXJ6aWVydW5nZW4gdW1nZWJlbiBkaWUga3Vuc3R2b2xsZW4gT3JuYW1lbnRlLiBTaWUgYmVzdGVoZW4gYXVzIHNlbHRzYW1lbgpTeW1ib2xlbiB1bmQgUnVuZW4sIGRpZSB3b2hsIGVpbmUgdGllZmVyZSBCZWRldXR1bmcgaGFiZW4uCkt1bnN0dm9sbGUgT3JuYW1lbnRlIHppZXJlbiBlaW5lbiBHcm9zc3RlaWwgZGVyIERlY2tlLiBTaWUgc2luZCB2b24KdmVyc2Nobm9lcmtlbHRlbiBWZXJ6aWVydW5nZW4gZWluZ2VmYXNzdCwgZGllIHVtIGVpbiByaWVzaWdlcyBQZW50YWdyYW1tCmFuZ2VvcmRuZXQgc2luZCwgZGFzIGFuIGRlciBEZWNrZSBhdWZnZXplaWNobmV0IGlzdC4KRGllIFN5bWJvbGUgc2luZCBteXN0aXNjaGVuIFVyc3BydW5ncyB1bmQgb2huZSBIaWxmZSBuaWNodCB6dSBkZXV0ZW4uClNvd2FzIHNpZWhzdCBEdSBkYSBuaWNodCEKQnVlY2hlciB1ZWJlciBCdWVjaGVyLiBHcm9zc2UsIGRpY2tlLCBkdWVubmUsIGFsdGUsIG5ldWUsIGluIExlZGVyIGdlYnVuZGVuZSwKaW4gTGVpbmVuLCBNZW5zY2hlbmhhdXQgb2RlciBhbmRlcmUgTWF0ZXJpYWxpZW4uIEJ1ZWNoZXIgdWViZXIgYm9lc2UgWmF1YmVyLApzY2h3YXJ6ZSBNYWdpZSwgRGFlbW9uZW4sIGFuZGVyZSBEaW1lbnNpb25lbi4gRWluZSBVZWJlcnNpY2h0IGRlciBCdWVjaGVyLCBkaWUKRHUgenVyIFplaXQgbGVzZW4ga2FubnN0IGJla29tbXN0IER1IG1pdCAnaW5oYWx0c3ZlcnplaWNobmlzJy4KPiBCaWVyY2hlbiBzYWd0OiBrZWluZSBibHV0c3B1cmVuLCBlc3NlbnNyZXN0ZSwgemVudHJ1bSwgdWViZXJyZXN0ZSwgc3RhdWIsCkJpZXJjaGVuIHNhZ3Q6IGxpY2h0LCBtYWdpZSwgbGVkZXIuLi4uLi4uLi4KVGlsbHkgc2FndDogQUxTIFdFTk4gSUNIIERBUyBOSUNIVCBTQ0hPTiBXRUlTUyEKRHUgZ3JpbnN0LgpCaWVyY2hlbiBzYWd0OiBwZmZmLi4uLi4uIHd1cnN0bWFnIQpUaWxseSBzYWd0OiBydWhlLCBqYS4KQmllcmNoZW4gc2FndDogYWNoLCBoYWx0cyBtYXVsLi4uClRpbGx5IHNhZ3Q6IHBmZmZmLCB2b24gZGlyIGxhc3MgaWNoIG1pciBuaXggc2FnZW4KVGlsbHkgZGVua3QgICAuIG8gTyAoYmxvZWRlIHNhdSkKRGllZGVyIHZlcnN1Y2h0IGRpZSBTdHJlaXRoYWVobmUgYXVzZWluYW5kZXJ6dWtyaWVnZW4uCkR1IGdyaW5zdC4KPiBUaWxseSBncmluc3QgRGljaCBhbi4KQmllcmNoZW4gc2FndDogbmljaHQhIGRhbm4gd2lsbCBpY2ggbWFsIHNlaGVuLCB3YXMgZHUgYmVpIGRlaW5lbSBuYWVjaHN0ZW4gYnVnCkJpZXJjaGVuIHNhZ3Q6IG1hY2hzdC4uLndlaW5lbj8KVGlsbHkgc2FndDogbm9wZSwgYmVpIGRpciBhbnNjaGxpZXNzZW4gdW5kIGxhY2hlbgpCaWVyY2hlbiBzYWd0OiBoYXN0IGR1IG1hbCBnZXNlaGVuLCB3aWUgc2NobmVsbCBlaW4gdnVsa2FuIHNpY2ggYXVmbG9lc2VuCkJpZXJjaGVuIHNhZ3Q6IGthbm4/ClRpbGx5IHNhZ3Q6IGRhbm4gdHJpZmZ0cyB3ZW5pZ3N0ZW5zIGRlbiBtZWlzdGVyLWJ1Z2dlcgpCaWVyY2hlbiBkZW5rdCAgIC4gbyBPIChhcnNjaGxvY2gpClRpbGx5IHNhZ3Q6IHBmZiwgdnVsa2FuLiBkYW5uIHN0YW1wZiBpY2ggZGllIGYtaW5zZWwgZWluClRpbGx5IHNhZ3Q6IGZlZGRpY2ggYXVzClRpbGx5IGRlbmt0ICAgLiBvIE8gKGFuZ2ViZXIpCkJpZXJjaGVuIHNhZ3Q6IHZvciB0eXBvcyB1bmQgYnVncyBzaW5kIGRlaW5lIHJhZXVtZSBkb3J0IGVoIGVpbmUgZ2VmYWhyIGZ1ZXIKQmllcmNoZW4gc2FndDogZGllIG9lZmZlbnRsaWNoa2VpdApEdSBzYWdzdDogbWl0IGRpZXNlbiAidmVyYmxvZWRldGVuIE1hZ2llciIgaW4gZGVtIEJ1Y2ggYzEuLi4gc2VpZCBkYSBldHdhIGlocgpEdSBzYWdzdDogZ2VtZWludD8gOikKRHUgZ3JpbnN0LgpUaWxseSBncmluc3QgRGljaCBhbi4KVGlsbHkgc2FndDogbmFqYSA6KQpCaWVyY2hlbiBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuClRpbGx5IGZhZWxsdCB0b3QgenUgQm9kZW4uCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCklubWl0dGVuIHZvbiB1bWdlc3R1ZXJ6dGVuIFJlZ2FsZW4gdW5kIGh1bmRlcnRlbiB2b24gQnVlY2hlcm4sIFNjaHJpZnRyb2xsZW4KdW5kIGFuZGVyZW4gWmV1Z25pc3NlbiBkZXIgRHJ1Y2trdW5zdCBzdGVoc3QgRHUgaW4gZGVyIEJpYmxpb3RoZWssIGRpZSBkZW0KQXVzc2VoZW4gbmFjaCBudXIgenUgZ3V0IHp1IGRpZXNlciBHaWxkZSBwYXNzdC4gWnVtIFRlaWwgenUgU3RhcGVsbgphdWZnZXR1ZXJtdCwgb2RlciBhY2h0bG9zIHVuZCB6ZXJmbGVkZGVydCBiZWlzZWl0ZSBnZXdvcmZlbiwgbGllZ2VuIGRpZQpTY2hyaWZ0c3R1ZWNrZSB1ZWJlcmFsbCBoZXJ1bSB1bmQgYmlsZGVuIGVpbiB3YWhyZXMgRHVyY2hlaW5hbmRlci4gVm9tIEJvZGVuCmthbm5zdCBEdSBzbyBndXQgd2llIG5pY2h0cyBlcmtlbm5lbiwgYW4gZGVuIFdhZW5kZW4gaGFlbmdlbiBkaWUgUmVzdGUgdm9uClJlZ2FsZW4gdW5kIGVpbnppZyB2b24gZGVyIERlY2tlIGJhdW1lbHQgZGFzIGFuc2NoZWluZW5kIGludGFrdGVzdGUgU3R1ZWNrCmRpZXNlcyBSYXVtZXM6IEVpbiByaWVzaWdlciBzY2h3YXJ6ZXIgS3JvbmxldWNodGVyLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZG9zdGVuLgpFaW4gQmllcmNoZW4gc2NobWVja3QgaW1tZXIgZ3V0LgpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCj4gVGlsbHkgZXJzY2hlaW50IGluIGVpbmVyIFNwaGFlcmUgZ2xlaXNzZW5kZW4gTGljaHRzLgpUaWxseSBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuCkJpZXJjaGVuIGZhZWxsdCB0b3QgenUgQm9kZW4uCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCkR1IHJvdGZsc3QuCkR1IHNhZ3N0OiB0c3RzCkR1IGdyaW5zdC4KPiBUaWxseSBzYWd0OiBkaWVzZXIgYmxvZWRlIGtlcmwKVGlsbHkgZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KQmllcmNoZW4gdmVyZmx1Y2h0IFRpbGx5LgpUaWxseSBpbnRlcmVzc2llcnQgZGFzIGdhciBuaWNodC4KRHUgc2Fnc3Q6IHNjaGxhZ3QgZXVjaCwgdHJhbnN0IGV1Y2ggaW4gZGllIEFyZW5hIDopCj4gVGlsbHkgc2FndDogZGVyIHRyYXV0IHNpY2ggZGFzIG5pY2h0LCBrbmVpZmVuIHVuZCBmdXNjaGVuLCBkYXMga2FubiBlci4KbmViZW4KVGlsbHkgc2FndDogYnVnZ2VuIHZpZWxsZWljaHQgbm9jaApUaWxseSBncmluc3QuCkR1IGtpY2hlcnN0LiAoV2llIGFsYmVybiB2b24gRGlyKQpCaWVyY2hlbiBzY2htZWlzc3QgZWluZW4gRnJvc2NoIGFuIGRpZSBXYW5kLgpUaWxseSBzYWd0OiBuaWNoIGRvY2gsIGR1IHVlYmVyaGVic3QgZGljaCBhdWYgZGVpbiBhbHRlcgpUaWxseSBkZW5rdCAgIC4gbyBPIChhbHRlciBzYWNrKQpEdSBncmluc3QgVGlsbHkgYW4uCj4gVGlsbHkgc3VtbXQgdW52ZXJzdGFlbmRsaWNoZXMgdW5kIGhhZWx0IGRhcmF1ZmhpbiBldHdhcyBpbiBzZWluZW4gSGFlbmRlbi4KQmllcmNoZW4gc2FndDogcGZmLCBraW5kY2hlbiwgZ3JhZCBtYWwgYXVzIGRlbSBzYW5ka2FzdGVuIGdla3JhYmJlbHQgdW5kIGpldHp0CkJpZXJjaGVuIHNhZ3Q6IGF1ZiBnaWxkZW5tYWcgbWFjaGVuIHdvbGxlbi4uClRpbGx5IGdpYnQgQmllcmNoZW4gYXVzIGRlciBGZXJuZSBlaW5lbiBSb2xsc3R1aGwuCkVpbiBSb2xsc3R1aGwgd2lyZCB2b24gQmllcmNoZW4gaW5zIEtsbyBnZWtpcHB0Lgo+IFRpbGx5IHNhZ3Q6ICpsYWNoKiAuLi4gd2VyIGhhdCBkZW5uIGhpZXIgendlaSBzZWl0ZW4gc2Nyb2xsIGF1ZiAtZGViIGdlbWFjaHQKVGlsbHkgc2FndDogd2VpbCBlciB6dSBibG9lZCB3YXIgZWluIGZpbGUgenUga29waWVyZW4/CkR1IHdhZWx6dCBEaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KPiBCaWVyY2hlbiBzYWd0OiB0eXBpc2NoLCB3aWUgc2VpbiBtYWctcGFwYS4uLiBpbW1lciBuZSBncm9zc2Uga2xhcHBlLi4KVGlsbHkgc2FndDogcGZmZmYKRHUgZ3JpbnN0IEJpZXJjaGVuIGFuLgpUaWxseSBzYWd0OiBrb2VubnRlc3QgZHUgZ3V0IGdlYnJhdWNoZW4sIHp1Y2tlcmJyb3QgdW5kIHBlaXRzY2hlIHVuZCBkYXMgYnJvdApUaWxseSBzYWd0OiBrcmllZyBpY2gKRHUgd2VkZWxzdCB3aWxkIG1pdCBkZWluZW0gJ0thZW1wZmVyIGFid2VydGVuJy1GYWVobmNoZW4uCkR1IHNhZ3N0OiBtYWNodCBkb2NoIG1hbCBlaW4gJ0NoYW90ZW4gYXVmd2VydGVuJy1GYWVobmNoZW4gOikKPiBUaWxseSBzYWd0OiBOSUUhCkR1IGdyaW5zdC4KPiBCaWVyY2hlbiBzYWd0OiBzY2hhdSBkaXIgZG9jaCBudXIgbWFsIGRlaW5lbiBjb2RlIGFuLi5zaWVodCBhdXMsIGFscyBzZWkKZWluZQpCaWVyY2hlbiBzYWd0OiBiZXNvZmZlbmUga3JhZWhlIHVlYmVyIGRlaW5lbiBtb25pdG9yIGdlbGF1ZmVuLi4KVGlsbHkgc2FndDogbWl0IGJpZXJjaGVuIGdlaHN0IGRlbiBiZXJnIHJ1bnRlcgpEdSByb3RmbHN0LgpUaWxseSBzYWd0OiB1bmQgaWNoIGthbm4gbWlyIGRpZSBrbGFnZW4gYW5ob2VyZW4gd2VubiBlcnMgdmVyYm9ja3QKVGlsbHkgd2VpbnQgc2ljaCBiZWkgRGlyIGF1cy4KRHUgdHJvZXN0ZXN0IFRpbGx5Lgo+IFRpbGx5IHNjaG5pZWZ0LgpCaWVyY2hlbiBzYWd0OiB1bmQgc293YXMgbmVubnQgc2ljaCBjaGFvcy4uLiBuYWphLCBnaWJ0IGphIGJhbGQgZGllCkJpZXJjaGVuIHNhZ3Q6IGJsdWVtY2hlbnBmbHVlY2tlci4uCj4gVGlsbHkgc2FndDogcHJvZ2cgbGllYmVyIGJlaSBkZW4gZm9yc2NoZXJuIG1pdCwgZGEgYmlzdCBkdSBiZXNzZXIgYXVmZ2Vob2JlbgpCaWVyY2hlbiBzYWd0OiAqbGFjaCogb2huZSBtaWNoIGdld2lubnN0IGR1IGhpZXIga2VpbmVuIGJsdW1lbnRvcGYsIGtsZWluZXIKQmllcmNoZW4gc2FndDogc2NoZWlzc2VyClRpbGx5IGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpUaWxseSBkZW5rdCAgIC4gbyBPIChzbyBlaW4gZ3Jvc3Nrb3R6KQpEaWVkZXIgaXN0IGtyYWVmdGlnIGFtIE1pdGxvZ2dlbiB1bmQgdWViZXJsZWd0IHNpY2gsIGRhcyBHZXNwcmFlY2ggaW4gU2NobWFycm4KenUgcG9zdGVuLi4uCkJpZXJjaGVuIHNjaHdlaWd0IApEdSBncmluc3QuClRpbGx5IHNhZ3Q6IHdlbm4gaWNoIGRpciBuaWNoIG1vbmF0ZWxhbmcgaW4gZGVuIGFyc2NoIGdldHJldGVuIGhhZXR0ZSB3dWVyZGVzdApUaWxseSBzYWd0OiBkdSBuaWNodHMgZmVydGlnIGhhYmVuLCBhYmdlc2VoZW4gdm9uIGVpbmVtIGJ1Z2dlbmRlbiBob21lLW11ZApUaWxseSBzdHV0enQuClRpbGx5IGRlbmt0ICAgLiBvIE8gKG1pdGxvZ2dlbj8/KQpUaWxseSBzY2h3ZWlndC4KRHUga2ljaGVyc3QuIChXaWUgYWxiZXJuIHZvbiBEaXIpClRpbGx5IGxhZWNoZWx0IHVuc2NodWxkaWcuCkR1IGJlc2Nod29lcnN0IGZpbnN0ZXJlIEtyYWVmdGUgdW5kIG9lZmZuZXN0IHNvIGVpbiBUb3IgaW4gYW5kZXJlIFdlbHRlbi4KSW50YXJiaXIga29tbXQgYW4uCkR1IGhhc3QgamV0enQgMjI2IExlYmVuc3B1bmt0ZSB1bmQgMjIxIEtvbnplbnRyYXRpb25zcHVua3RlLgo+IER1IGhhc3QgamV0enQgMjI2IExlYmVuc3B1bmt0ZSB1bmQgMjIyIEtvbnplbnRyYXRpb25zcHVua3RlLgpJbnRhcmJpciBzY2hhdXQgVGlsbHkgYWJzY2hhZXR6ZW5kIGFuLgo+IEludGFyYmlyIHNhZ3Q6IEFsc28sIG51bi4gTGF1c2NoZSBtZWluZW4gV29ydGVuOiBUaWxseSBpc3QgZXR3YSBnbGVpY2ggc3RhcmsKSW50YXJiaXIgc2FndDogd2llIER1LiBEZWluZSBSdWVzdHVuZyBpc3QgdW5nbGF1YmxpY2ggdmllbCBiZXNzZXIgYWxzIGRpZQpJbnRhcmJpciBzYWd0OiBUaWxseXMuIFp1IGd1dGVyIExldHp0OiBEZWluZSBXYWZmZSBpc3QgZWlnZW50bGljaCBzY2hvbiBmYXN0CkludGFyYmlyIHNhZ3Q6IHVudmVyc2NoYWVtdCBndXQgZ2VnZW4gc28gZWluZW4gbGFlY2hlcmxpY2hlbiBHZWduZXIuIEVyCkludGFyYmlyIHNhZ3Q6IGthZW1wZnRtaXQgZGVtIGJvZXNlbiBCbGljayB1bmQgbWFjaHQgZGFtaXQgZm9sZ2VuZGVuIFNjaGFkZW46CkludGFyYmlyIHNhZ3Q6IFNjaGxhZWdlLiAKRHUgaGFzdCBqZXR6dCAyMjYgTGViZW5zcHVua3RlIHVuZCAyMjMgS29uemVudHJhdGlvbnNwdW5rdGUuCkludGFyYmlyIHZlcmxhZXNzdCBkaWVzZSBXZWx0LgpEdSBoYXN0IGpldHp0IDIyNiBMZWJlbnNwdW5rdGUgdW5kIDIyNCBLb256ZW50cmF0aW9uc3B1bmt0ZS4KRHUgYmVzY2h3b2Vyc3QgZmluc3RlcmUgS3JhZWZ0ZSB1bmQgb2VmZm5lc3Qgc28gZWluIFRvciBpbiBhbmRlcmUgV2VsdGVuLgpJbnRhcmJpciBrb21tdCBhbi4KRHUgaGFzdCBqZXR6dCAyMjYgTGViZW5zcHVua3RlIHVuZCAyMTkgS29uemVudHJhdGlvbnNwdW5rdGUuCkludGFyYmlyIHNjaGF1dCBCaWVyY2hlbiBhYnNjaGFldHplbmQgYW4uCj4gSW50YXJiaXIgc2FndDogQWxzbywgbnVuLiBMYXVzY2hlIG1laW5lbiBXb3J0ZW46IER1IGJpc3Qgc3RhZXJrZXIgYWxzCkludGFyYmlyIHNhZ3Q6IEJpZXJjaGVuLCB3YXMga2VpbiBHcnVuZCB6dXIgQW5nZWJlcmVpIGlzdC4gRGVpbmUgUnVlc3R1bmcgaXN0CkludGFyYmlyIHNhZ3Q6IHVuZ2xhdWJsaWNoIHZpZWwgYmVzc2VyIGFscyBkaWUgQmllcmNoZW5zLiBadSBndXRlciBMZXR6dDoKSW50YXJiaXIgc2FndDogRGVpbmUgV2FmZmUgaXN0IGVpZ2VudGxpY2ggc2Nob24gZmFzdCB1bnZlcnNjaGFlbXQgZ3V0IGdlZ2VuIHNvCkludGFyYmlyIHNhZ3Q6IGVpbmVuIGxhZWNoZXJsaWNoZW4gR2VnbmVyLiBFciBrYWVtcGZ0IG1pdCBzY2h3YWNoZW4gSGFlbmRlbgpJbnRhcmJpciBzYWd0OiB1bmQgbWFjaHQgZGFtaXQgZm9sZ2VuZGVuIFNjaGFkZW46IFNjaGxhZWdlLiAKRHUgaGFzdCBqZXR6dCAyMjYgTGViZW5zcHVua3RlIHVuZCAyMjAgS29uemVudHJhdGlvbnNwdW5rdGUuCkludGFyYmlyIHZlcmxhZXNzdCBkaWVzZSBXZWx0LgpKYW1hbHNraSB3aXJkIHZvbiBzZWluZW4gMTIgU2tsYXZpbm5lbiBoZXJlaW5nZXRyYWdlbi4KVHV0c3p0IHNjaGxlaWNodCBibHV0Z2llcmlnIGhlcmVpbi4KSmFtYWxza2kga251ZGRlbHQgVHV0c3p0LCBCaWVyY2hlbiwgVGlsbHkgdW5kIERpY2guCkR1IGdyaW5zdC4KVGlsbHkga251ZGRlbHQgSmFtYWxza2kuCkR1IGtudWRkZWxzdCBKYW1hbHNraS4KPiBKYW1hbHNraSBzYWd0OiBUYWNoIQpUaWxseSBzYWd0OiBtb2luCkphbWFsc2tpIHNwdWNrdCBhdWYgZGVuIEJvZGVuLgpEdSBzYWdzdDogaGloClRpbGx5IHN0ZWNrdCBzaWNoIGRlbiBGaW5nZXIgdGllZiBpbiBkZW4gSGFscyB1bmQgCmZhZW5ndCBhbiB6dSBodXN0ZW4gdW5kIHp1IHd1ZXJnZW4hClRpbGx5IGtvdHp0IHNlaW4gRXNzZW4gYXVzLi4uClRpbGx5IHNwdWNrdCBlaW5lIHRydWViZSwgc2FldWVybGljaCByaWVjaGVuZGUgQnJ1ZWhlIGF1cyEKRGFzIGlzdCByaWNodGlnIGVrbGlnISBEaXIgd2lyZCBzZWxic3QgZ2FueiBzY2hsZWNodCEKRGllIEtvdHplIGJpbGRldCBlaW5lIHdpZGVybGljaGUgTGFjaGUgYXVmIGRlbSBCb2Rlbi4KRHUgc2Fnc3Q6IHdhYWFhYWFhYWFhaApKYW1hbHNraSBncmluc3QgVGlsbHkgYW4gdW5kIGZyZXV0IHNpY2guClRpbGx5IGdyaW5zdCBpcnJlLgpUaWxseXMgS290emUgc3Rpbmt0IHdpcmtsaWNoIGVrZWxlcnJlZ2VuZC4KSmFtYWxza2kgZGV1dGV0IGF1ZiBLb3R6bGFjaGUuCkphbWFsc2tpIGxhZXNzdCBlaW5lbiBTdGlua2VmdXJ6IGZhaHJlbi4KRnVlcmNodGVybGljaGVyIEdlc3RhbmsgZXJmdWVsbHQgZGVuIFJhdW0uClRpbGx5cyBLb3R6ZSBzdGlua3Qgd2lya2xpY2ggZWtlbGVycmVnZW5kLgpEdSBmYWVuZ3N0IGFuIHp1IHd1ZXJnZW4uCj4gVGlsbHkgZ3JpbnN0IEphbWFsc2tpIGFuLgpFaW5lIHNhZXVlcmxpY2ggcmllY2hlbmRlIHNjaGxlaW1pZ2UgUGZ1ZXR6ZSwgZGllIHNvIGF1c3NpZWh0LAphbHMgaGFldHRlIHNpY2ggamVtYW5kIHNlaW5lbiBNYWdlbmluaGFsdCBub2NobWFsIGR1cmNoIGRlbiBLb3BmIGdlaGVuIApsYXNzZW4gdW5kIHNpY2ggZGFiZWkgc2F1cmUgVm9yd3VlcmZlIGdlbWFjaHQhCkV0d2FzIHdpcmQgdm9uIEJpZXJjaGVuIGlucyBLbG8gZ2VraXBwdC4KQmVpbmFoZSB3YWVyc3QgRHUgaW4gVGlsbHlzIEtvdHplIGdldHJldGVuLgpKYW1hbHNraSB3aW5rdC4KVHV0c3p0IHdpdHRlcnQgQmx1dCB1bmQgc2NobGVpY2h0IGRhdm9uLgpUaWxseSB3aW5rdC4KTnVyIG1pdCBNdWVoZSB1bnRlcmRydWVja3N0IER1IGRlbiBCcmVjaHJlaXouCklubWl0dGVuIHZvbiB1bWdlc3R1ZXJ6dGVuIFJlZ2FsZW4gdW5kIGh1bmRlcnRlbiB2b24gQnVlY2hlcm4sIFNjaHJpZnRyb2xsZW4KdW5kIGFuZGVyZW4gWmV1Z25pc3NlbiBkZXIgRHJ1Y2trdW5zdCBzdGVoc3QgRHUgaW4gZGVyIEJpYmxpb3RoZWssIGRpZSBkZW0KQXVzc2VoZW4gbmFjaCBudXIgenUgZ3V0IHp1IGRpZXNlciBHaWxkZSBwYXNzdC4gWnVtIFRlaWwgenUgU3RhcGVsbgphdWZnZXR1ZXJtdCwgb2RlciBhY2h0bG9zIHVuZCB6ZXJmbGVkZGVydCBiZWlzZWl0ZSBnZXdvcmZlbiwgbGllZ2VuIGRpZQpTY2hyaWZ0c3R1ZWNrZSB1ZWJlcmFsbCBoZXJ1bSB1bmQgYmlsZGVuIGVpbiB3YWhyZXMgRHVyY2hlaW5hbmRlci4gVm9tIEJvZGVuCmthbm5zdCBEdSBzbyBndXQgd2llIG5pY2h0cyBlcmtlbm5lbiwgYW4gZGVuIFdhZW5kZW4gaGFlbmdlbiBkaWUgUmVzdGUgdm9uClJlZ2FsZW4gdW5kIGVpbnppZyB2b24gZGVyIERlY2tlIGJhdW1lbHQgZGFzIGFuc2NoZWluZW5kIGludGFrdGVzdGUgU3R1ZWNrCmRpZXNlcyBSYXVtZXM6IEVpbiByaWVzaWdlciBzY2h3YXJ6ZXIgS3JvbmxldWNodGVyLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZG9zdGVuLgpFaW5lIEtvdHpsYWNoZS4KRWluIEJpZXJjaGVuIHNjaG1lY2t0IGltbWVyIGd1dC4KVGlsbHkgc2FndDogU3RpcmIhLgpEdSBzYWdzdDogbm9jaCBlaW4gYnVnLi4uCldhcyBoYXQgVGlsbHkgbnVyIGdlZ2Vzc2VuIHVuZCBnZXRydW5rZW4/CkJlaW5haGUgd2FlcnN0IER1IGluIFRpbGx5cyBLb3R6ZSBnZXRyZXRlbi4KRHUgc2Fnc3Q6IG1hbiBzaWVodCBuZWQsIHdlbm4gZWluIHNwaWVsZXIgcmF1c2dlaHQKPiBEaXIgd2lyZCByaWNodGlnIHNjaGxlY2h0LgpUaWxseXMgS290emUgdmVyc2lja2VydCBpbSBCb2Rlbi4KQmllcmNoZW4gc2FndDogaGF0IHRpbGx5IGdlc2NocmllYmVuLCB3dW5kZXJ0IG1pY2ggbmljaHQKRHUgZ3JpbnN0IEJpZXJjaGVuIGFuLgo+IFRpbGx5IHNwcmluZ3QgYXVmIGVpbm1hbCBCaWVyY2hlbiBhbiB1bmQgd3Vlcmd0IGlobi4KPiBUaWxseSBzYWd0OiBoYWx0IGVuZGxpY2ggZGVpbmUga2xhcHBlCkJpZXJjaGVuIHNhZ3Q6IHNvLCBkZXIgaXN0IGVoIHp1IGRhZW1saWNoIHVtIHp1IGJlbWVya2VuLCBkYXNzIGVyIHRhdWIgaXN0CkR1IHNhZ3N0OiBpc3QgZXIgZXJ0YXVidD8KQmllcmNoZW4gbmlja3QgenVzdGltbWVuZC4KRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpEdSB3YWVsenQgRGljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uCioqKiBEaWVzZXIgUmF1bSB3aXJkIGdlcmFkZSBuZXUgZ2VsYWRlbiAqKioKVGlsbHkgZ2VodCBuYWNoIFN1ZWRvc3Rlbi4KVGlsbHkga29tbXQgc2VsaWcgbGFlY2hlbG5kIGhlcmVpbi4KVGlsbHkgc2FndDogd2VubiBkdSBtYWwgc28gZml4IHdhZXJzdCB3aWUgaWNoLCBhYmVyIGJlaSBkaXIgaXN0IGRhcyBmaW5kZW4gZGVyClRpbGx5IHNhZ3Q6IGZlaGxlciBqYSBzY2hvbiBlaW5lIHVubW9lZ2xpY2hrZWl0CkR1IGJlZGFua3N0IERpY2ggYmVpIFRpbGx5Lgo+IEJpZXJjaGVuIHVlYmVyZ2lidCBzaWNoIG5hY2ggSGF1c2UuClRpbGx5IHNhZ3Q6IHB1aGhoaCwgZW5kbGljaCA6KQpEdSBncmluc3QuCkR1IHNhZ3N0OiB3YXMgZGFnZWdlbiB3ZW5uIGljaCBkYXMgaW4gU2NobWFycm4gcG9zdGUuLi4/Cj4gVGlsbHkgc2NodWV0dGVsdCBkZW4gS29wZi4KVGlsbHkgc2FndDogYWJlciBmcmFnIG5jaG1hbCBiaWVyY2hlbiA6KQpEdSBncmluc3QuCj4gVGlsbHkgZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KPiBCaWVyY2hlbiB0ZWlsdCBEaXIgbWl0OiBtaXIgaXN0IGRhcyB3dXJzdApEdSBzYWdzdDogYmllcmNoZW4gdGVpbHQgZGlyIG1pdDogbWlyIGlzdCBkYXMgd3Vyc3QKRHUga251ZGRlbHN0IFRpbGx5LgpEdSBmcmV1c3QgRGljaC4KVGlsbHkgYW4gZGllIExpc3RlIGFuZ2VoYWVuZ3QuCj4gVGlsbHkgZ3JpbnN0IERpY2ggYW4uClRpbGx5IHNhZ3Q6IGRhbm4gbW9udGFnIDopCkR1IHNhZ3N0OiBpY2ggdHUgZGFzIGxvZyBhdWZiZXJlaXRlbiB1bmQgYW0gTW9udGFnIGtvbW10cyByZWluIDopCj4gVGlsbHkgbmlja3QgenVzdGltbWVuZC4KPiBUaWxseSBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpEdSBncmluc3QgYnJlaXQuCkR1IHJ1ZnN0OiBDSEFPUyBSVUxFWiAhISEKVGlsbHkgZ3JpbnN0LgpEdSBzYWdzdDogaGloaQpEdSBzYWdzdDogaXMgaW1tZXIgd2llZGVyIGFuZ2VicmFjaHQgOikKVGlsbHkgc2FndDogZWluIGRhdWVyYnJlbm5lciA6KQpEdSBuaWNrc3QgenVzdGltbWVuZC4KTWlzdGJyYXR6ZSBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgpEdSBzYWdzdDogc28gaWNoIGhhdSBkYW5uIG1hbCBsYW5nc2FtIGFiLi4uLgpUaWxseSBzYWd0OiBpY2ggbXVzcyBub2NoIGRlYnVnZ2VuClRpbGx5IHNldWZ6dC4KRHUgZ3JpbnN0LgoKU29ycnkgZnVlciBkaWUgTGFlbmdlLi4uIApEYXMgZ2FuemUgaXN0IHdvaGwgdHlwaXNjaCBDSEFPUyEhISBJbiBkaWVzZW0gU2lubmU6IFdlaXRlciBzbywgVGlsbHkgdW5kCkJpZXJjaGVuIDstKSkKCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdlbm4gc2ljaCBNYWdpZXIgc3RyZWl0ZW4uLi4gKEFzbW9kaXMsIDI2LiBBcHIgMTk5OCwgMTY6MTY6MTMpOgp+IyEgcm49RGllZGVyIHJ0PTg5MzU5NjcxNCByZz1zY2htYXJybgp+IyEgdGlkPTg5MzU5NjcxNApIbW0sIHdhcyBtaWNoIGRhIGJlc29uZGVycyBpbnRlcmVzc2llcnQ6IFdpZSBwYXNzdCBlaW4gUm9sbHN0dWhsIGlucyBLbG9zZXR0ID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogd2VubiBzaWNoIE1hZ2llciBzdHJlaXRlbi4uLiAoVGhlcmluLCAyNi4gQXByIDE5OTgsIDE2OjM1OjE0KToKfiMhIHJuPUFzbW9kaXMgcnQ9ODkzNjAwMTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzNTk2NzE0CgpNZWluIHNjaG9lbmVyIFJvbGxzdHVobC4uLgpBIHByb3Byb3M6IFRpbGx5LCB3byBibGVpYnQgZGllIFZlcnNpb24gMS4yPyAKRGllIFR5cG9zIHNpbmQgamEgZ3JhdXNhbSA6KQooRXJ3YWVobnRlIEJpZXJjaGVuIG5pY2h0IGV0d2FzIHVlYmVyIGRlaW5lIE9ydGhvZ3JhcGhpZXByb2JsZW1lPyA6LSkgKQoKVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRlZmluaXRpdiBxdWFsaWZpemllcnQgYWxzIEZMVyAoVGhlcmluLCAyNi4gQXByIDE5OTgsIDIzOjU3OjQ4KToKPiBOYWNodHdpbmQgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgpbU2VoZXI6TmFjaHR3aW5kXSBLRUlORSBGRVVFUkJBRUxMRSBKRVRaVApbVG9kOkxhcnNdIEVpbiBGZXVlcmJhbGwgaGF0IGdlcmFkZSBOYWNodHdpbmQgdW1nZWJyYWNodC4KW1NlaGVyOlJpZGRsZXJdIGFyZ2wKW1NlaGVyOlRhcnNdIGlkaW90CltTZWhlcjpSaWRkbGVyXSBTQUcgREFTIERPQ0ggTUFMIEVJTkVSIDooCltCZWlsZWlkOkJlbGdhcmlhZF0gb2ggd2VoCltCZWlsZWlkOkl2b10gRkxXCltCZWlsZWlkOlJhaWRlbl0gc3RpbmcgZHUgSURJT1QhCltCZWlsZWlkOlJhaWRlbl0gb2ggbWFubiEgaWNoIHNhY2hzIG5vY2ghCj4gW0JlaWxlaWQ6UmlkZGxlcl0gc29ycnksIGljaCBoYWJzIGdlbGVzZW4gYWxzIGVzIHp1IHNwYWV0IHdhciAuKApbQmVpbGVpZDpSaWRkbGVyXSBuYWd1dCwgd2VubiBkYW5ubm4gcmljaHRpZwpdW0JlaWxlaWQ6THVnXSBCYWVyY2hlbj8KW1RvZDpMYXJzXSBTQVRBTiBoYXQgZ2VyYWRlIFJpZGRsZXIgdW1nZWJyYWNodC4KW1RvZDpMYXJzXSBFaW4gU2FldXJlZGFlbW9uIGhhdCBnZXJhZGUgR3JleXN0b25lIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNhZXVyZWRhZW1vbl0gTWlzdC4gSmV0enQgaXN0IG1laW5lIFNhZXVyZSBtaXQgRGVpbmVtIEJsdXQgdmVyc2F1dC4KXVtCZWlsZWlkOkphbWFsc2tpXSBHZW51Zz8gOigoKApbQmVpbGVpZDpOZWIganViZWx0IEV1Y2ggYWxsZW4genUuXQpbQmVpbGVpZDpCcmFuZGlyXSBkaWUgc3RyYWZlIGZvbGd0IGF1ZiBkZW0gZnVzc2UKW0JlaWxlaWQ6VGFyc10gaWNoIHdpbGwgaGllciByYXVzISEhISEhISEhISA6KApbQmVpbGVpZDpJdm9dIGpldHp0IGdlaHQgZXMgYWJlciBhYgpbQmVpbGVpZDpOYWlyb2xmXSBhZWhtCltCZWlsZWlkOk5haXJvbGZdIGFlaG0KXVtCZWlsZWlkOkZyZWl0YWddIGhvZXJ0IGlociBhdWNoIG1hbCBhdWYgZGE/IDsoKCgKXVtCZWlsZWlkOlppbm9dIGhpZXIgaXN0IHdhcyBsb3MgOikKXVtCZWlsZWlkOk5lYiBncmluc3QgVGFycyBhbi5dCltCZWlsZWlkOktpbGFyIGdlaHQgZGEgbGllYmVyIG5pY2h0IHJlaW4gLSBuaWVtYWxzLi4uXQpdW0JlaWxlaWQ6U3RpbmddIHdpZSB3YWVycyBtaXQgbmVyIGthcmF0ZS1hcm1lZQpleHRyYWhhbmQKXVtCZWlsZWlkOkx1Z10gV2FzIGlzdCBkYSBsb3M/Cl1bQmVpbGVpZDpTdGluZ10gaWNoIGJpbiBmdWVyIHJlYm9vdAoKRGVpbiBGcmV1bmQgRnJlaXRhZyB0ZWlsdCBEaXIgbWl0OiBzY2hvbiB0cmF1cmlnIHdlbm4gbWFuIGZ3ZXIgb3J0IG1hY2h0IHVuZApEZWluIEZyZXVuZCBGcmVpdGFnIHRlaWx0IERpciBtaXQ6IGhhdWZlbndlaXNlIG5hbWVuIHNpZWh0LCBoaW50ZXIgZGVuZW4gc3RlaHQKRGVpbiBGcmV1bmQgRnJlaXRhZyB0ZWlsdCBEaXIgbWl0OiA6IkFyYmVpdHN6aW1tZXIgZGVzIFRvZGVzIiA7KCgKCnRvIGJlIGNvbnRpbnVlZC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZXh0cmEgZnVlciBhbmF0b2wgKFRoZXJpbiwgMjcuIEFwciAxOTk4LCAwMDoxMDozOSk6CgpiZXNzZXI/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGV4dHJhIGZ1ZXIgYW5hdG9sIChBbmF0b2wsIDI3LiBBcHIgMTk5OCwgMDA6MTE6MDEpOgp+IyEgcm49VGhlcmluIHJ0PTg5MzYyODYzOSByZz1zY2htYXJybgp+IyEgdGlkPTg5MzYyODYzOQpwb3JjdXMgZXhpdHVzLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBleHRyYSBmdWVyIGFuYXRvbCAoQXNtb2RpcywgMjcuIEFwciAxOTk4LCAwMDoxNTo0NCk6Cn4jISBybj1UaGVyaW4gcnQ9ODkzNjI4NjM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzNjI4NjM5ClBmZnQsIGRhZ2VnZW4gaGFiZW4gd2lyIGluIGVpbmVyIGFuZGVyZW4gUnVicmlrIHNjaG9uIHdhcyAKZ2V0YW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm11cm1lbCBoYXQgbnVyIGZyZXVuZGUgKFRoZXJpbiwgMjcuIEFwciAxOTk4LCAwMToxMzoyNik6Cj4gW1RvZDpMYXJzXSBFaW5lIHNjaGFyZmUgSGVua2Vyc2F4dCBoYXQgZ2VyYWRlIExhZHlkZWF0aCB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgc2NoYXJmZSBIZW5rZXJzYXh0XSBWZXJkYW1tdCwgZGFzIHdhciBqYSBnYXIgbmljaHQgTXVybWVsISBNZWluCltUb2Q6RWluZSBzY2hhcmZlIEhlbmtlcnNheHRdIEZlaGxlciEKW0JlaWxlaWQ6R3JhdXdvbGZdIEplc3MgOykKW0JlaWxlaWQ6QnJhbmRpcl0gd2llIGdlaHQgZGFzID8KPiBbQmVpbGVpZDpHcmF1d29sZl0gUHJvYmllciBoYWx0IG1hbCA7KQpbQmVpbGVpZDpNdXJtZWxdIGltbWVyIGRpZXNlIG1vcmRyb2hudW5nZW4gOikpCltBbGxnZW1laW46TXVybWVsXSBuYWEgc29sbCBpY2ggbWljaCBhdWYgZGVuIHJpY2h0YmxvY2sgbGVnZW4/IDopKQotYSBKQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQpbQWxsZ2VtZWluOkJyYW5kaXJdIGphYWFhYWFhYQpbQWxsZ2VtZWluOlRoZXJpbl0gSkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEKPiBbQWxsZ2VtZWluOk11cm1lbF0gaWNoIG1hY2ggZXMgbmljaHQgd2VubiBzaWNoIG5pY2h0IG1pbmRlc3RlbnMgMTAgbGV1dGUKW0FsbGdlbWVpbjpNdXJtZWxdIGZpbmRlbiBkaWUgZGFmdWVyIHNpbmQgOykKPiBbQWxsZ2VtZWluOkJyYW5kaXJdIGphYWFhYWFhYQpbQWxsZ2VtZWluOkJyYW5kaXJdIGphYWFhYWFhYQpbQWxsZ2VtZWluOkJyYW5kaXJdIGphYWFhYWFhYQpbQWxsZ2VtZWluOkJyYW5kaXJdIGphYWFhYWFhYQpbQWxsZ2VtZWluOkJyYW5kaXJdIGphYWFhYWFhYQpbQWxsZ2VtZWluOkFuYXRvbF0gRGFmdWVyLgpbQWxsZ2VtZWluOk11cm1lbF0gaWhyIHNjaHdlaW5lIDopCltBbGxnZW1laW46QW5hdG9sXSBCcmFuZGlyLCBUaGVyaW4sIEFuYXRvbCwgWGVyYS4uLiA0CltBbGxnZW1laW46QnJhbmRpciAgYXVjaC5dCltBbGxnZW1laW46TWFyc10gdHUgZXMhCltBbGxnZW1laW46QW5hdG9sXSBNYXJzLCA1CltBbGxnZW1laW46VGVkZHldIEhpZXIsIGljaCwgaWNoIGJpbiBkYWZ1ZXIgOykKW0FsbGdlbWVpbjpBbmF0b2xdIFRlZGR5LCA2CltBbGxnZW1laW46TXVybWVsXSBpY2ggd3Vzc3RlIGljaCBoYWIgbnVyIGZyZXVuZGUgaGllciA6KQpbQWxsZ2VtZWluOkxvZnd5cl0gZ3V0ZSBpZGVlIDstKQpBdXNzaWUgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KW0FsbGdlbWVpbjpTaGFubmFyYV0gTHVnIGF1ZiBkZW4gUmljaHRibG9jaz8KW0FsbGdlbWVpbjpLdXNjaGVsYmFlcl0gRGFmdWVyIDstKQpbQWxsZ2VtZWluOkFuYXRvbF0gV2lyIHdvbGxlbiBudXIgZGFzIGJlc3RlIGZ1ZXIgRGljaCwgTXVybWVsCltBbGxnZW1laW46SXJhXSBEYWZ1ZXIhCj4gW0FsbGdlbWVpbjpMdWcgaXN0IGRhZnVlci5dCltBbGxnZW1laW46RnJlaXRhZ10gZGVmaW5pdGl2IGF1Y2ggZGFmdWVyIDspCltBbGxnZW1laW46QnJhbmRpciBsYWNodC5dCltBbGxnZW1laW46TXVybWVsXSBodWNoIHdpZSBwZWlubGljaCBlaW5pZ2Ugc2luZCBhdWNoIG5vY2ggYXVmIG1laW5lbSBmYmFuZCA7KQpbQWxsZ2VtZWluOkpvZGEgZGFmdWVyLl0KW0FsbGdlbWVpbjpBbmF0b2xdIExvZiwgNywgU2hhbm5hcmEsIDgsIEt1c2NoZWxiYWVyIDksIElyYSAxMCwgTHVnIHVuZCBGcmVpdGFnCltBbGxnZW1laW46QW5hdG9sXSAxMSB1bmQgMTIuLi4KW0FsbGdlbWVpbjpMYW5mZWFyIGRhZnVlci5dCltBbGxnZW1laW46R2FzdDJdIGphCkdhc3QyIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCltBbGxnZW1laW46VGVkZHldIFBzc3QsIHZlcnNhdSB1bnNlcmVuIFJ1ZiBuaWNodCA7KQpbQWxsZ2VtZWluOk11cm1lbF0gaGV5IHp3ZWl0aXMgemFlaGxlbiBuaWNodCA7KQpbQWxsZ2VtZWluOkFuYXRvbF0gSm9kYSAxMywgTGFuZmVhciBkYXJmIG5pY2h0IDopCltBbGxnZW1laW46S3VzY2hlbGJhZXJdIFdlciBpc3QgaGllciAydGllPyA7KQpbQWxsZ2VtZWluOkFuYXRvbF0gSm9kYSBhdWNoIG5pY2h0LCBzZWggaWNoIGdyYWQgOykKW0FsbGdlbWVpbjpMYW5mZWFyIGdydW1tZWx0Ll0KW0FsbGdlbWVpbjpNdXJtZWxdIGpvZGEgaXN0IHp3ZWl0aWlpaSA6KSkKW0FsbGdlbWVpbjpKb2RhXSBtaXN0IDo5CltBbGxnZW1laW46QW5hdG9sXSBFZ2FsLCAxMCBzaW5kcyA6KQpbQWxsZ2VtZWluOk11cm1lbF0gaWNoIGhhYiBudXIgOSBnZXphZWhsdCA6KQpbQWxsZ2VtZWluOkFuYXRvbF0gWGVyYSB6YWVobHQgYXVzc2VyZGVtIGRyZWlmYWNoIDopCltBbGxnZW1laW46QW5hdG9sXSBOYWNodHdpbmQ/CltBbGxnZW1laW46WGVyYSBncmlzbnQuXQpbQWxsZ2VtZWluOk5hY2h0d2luZF0gd2FzPwpbQWxsZ2VtZWluOkFuYXRvbF0gR3V0LCBOYWNodHdpbmQ6IDEwLgpbQWxsZ2VtZWluOk11cm1lbF0geGVyYSB3YXMgaGFiIGljaCBkaXIgbnVyIGFuZ2V0YW4/IDopCj4gW0FsbGdlbWVpbjpNdXJtZWxdIG5peCB3YXMgemFlaGx0IG5pY2h0CltBbGxnZW1laW46WGVyYV0gaWNoIGJpbiB1bnNjaHVsZGlnISEhCl1bQWxsZ2VtZWluOkpvZGFdIGltbWVyIGRpZXNlIGRpc2tyaW1pbmllcnVuZyB2b24gendlaXRpZXMgOikKW0FsbGdlbWVpbjpJcmFdIE5XLCBzYWcgSmEhCltBbGxnZW1laW46THVnXSBXYXJ1bT8gU2VpdCB3YW5uIGlzdCBYZXJhIGRlbm4gc28gZmV0dD8gOykKW0FsbGdlbWVpbjpOYWNodHdpbmRdIGphCl1dXVtBbGxnZW1laW46QW5hdG9sXSBOYSBhbHNvLgpbQWxsZ2VtZWluOkFuYXRvbF0gMTAgOikKW0FsbGdlbWVpbjpJcmFdIDEwITtdW0FsbGdlbWVpbjpBbmF0b2xdIEdPIE1VUk1FTCBHTyEgOikKXVtBbGxnZW1laW46TmFjaHR3aW5kXSB1bSB3YXMgZ2VodHM/OikKW0FsbGdlbWVpbjpMdWddIE5hY2h0d2luZCwgRHUgbGFlc3N0IERpY2ggc28gbGVpY2h0IG1hbmlwdWxpZXJlbi4KXV1bQWxsZ2VtZWluOlRlZGR5XSBNdXJtZWxzIEtvcGYgYXVmIGRlbiByaWNodGJsb2NrCltBbGxnZW1laW46TXVybWVsXSB1bSB2ZXJyYWV0ZXIgbmFjaHR3aW5kIHVtIHZlcnJhZXRlciA6KQpbQWxsZ2VtZWluOk5hY2h0d2luZF0gSkEhOikKW1NlaGVyOk9yb2RyZXRoXSBrb2VubnQgaWhyIGRpZSBzYWNoZW4gcmF1c3RyYWdlbiA/IGRlciBiaXNjaG9mIGlzIHJlc2V0dGUKKDtbQWxsZ2VtZWluOk5hY2h0d2luZF0gSkEhOikKW0FsbGdlbWVpbjpOYWNodHdpbmRdIEpBITopCltBbGxnZW1laW46QW5hdG9sXSBIZWhlIDopCltBbGxnZW1laW46QnJhbmRpciBncmluc3QuXQpbQWxsZ2VtZWluOk5hY2h0d2luZF0gcmljaHRibG9jayEgcmljaHRibG9jayEgOikKXVtBbGxnZW1laW46TXVybWVsXSBkYXJmIGljaCBkaWUgemFobCBub2NobWFsIGF1ZiAzMCBob2NobGVnZW4/IDopCltBbGxnZW1laW46QW5hdG9sXSBOZWluIDopCltBbGxnZW1laW46WGVyYV0gamEhCkFuYXRvbCBydWZ0OiBXZXIgaXN0IGRhZnVlciwgZGFzcyBNdXJtZWwgc2VpbiBIYXVwdCBhdWYgZGVuIFJpY2h0YmxvY2sgYmV0dGV0PwpBbmF0b2wgcnVmdDogQml0dGUgdW0gUnVmemVpY2hlbiEgOikKR3JhdXdvbGYgcnVmdDogSmVwcApNdXJtZWwgcnVmdDogaGV5IGtlaW5lIHByIGthbXBhZ25lIDspClRhcmluYSBydWZ0OiB2b3IgZGVuIHJpY2h0YmxvY2sgOi0pCkxvZnd5ciBydWZ0OiBtdXJtZWwgc29sbCBzZWluIDczLiBsZWJlbiBhbmZhbmdlbiA7KQpbQWxsZ2VtZWluOlRoZXJpbl0gV08gQkxFSUJUIERFUiBUT0QKW0FsbGdlbWVpbjpMdWddIEFyZ2ggWGVuYSBsYWV1ZnQgamEgc2Nob24uCk5vcmRvc3RlbgoKKHNwYWV0ZXIpCgpNdXJtZWwgd3VzZWx0IGhlcmVpbi4KTXVybWVsIGFyZ2x0IGVpbiB3ZW5pZyB2b3Igc2ljaCBoaW4uCk11cm1lbCBkZW5rdCAgIC4gbyBPIChzY2h3ZWluZSkKZ3JpbnMKRHUgZ3JpbnN0LgonbnVyIHp1CkR1IHNhZ3N0OiBudXIgenUKTXVybWVsIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCk11cm1lbCBzYWd0OiBhZWhlbQpNdXJtZWwgc2FndDogZGEgZHJhdWYKTXVybWVsIHppdHRlcnQgdm9yIEFuZ3N0LgpnYWVobgpLYW5uc3QgRHUgYWJlciBEZWluKGVuKSBNdW5kL01hdWwvU2NobmFiZWwgd2VpdCBhdWZyZWlzc2VuIQpNdXJtZWwgc2FndDogd2FhYWFoCltBbGxnZW1laW46TXVybWVsIGhvZXJ0IGRlbiBUcm9tbWVsd2lyYmVsLl0KJzptYWNodCBlaW5lbiBUcm9tbWVsd2lyYmVsClRoZXJpbiBtYWNodCBlaW5lbiBUcm9tbWVsd2lyYmVsCkZyZWl0YWcgc2NobGVpbXQgYWV0emVuZCBoZXJlaW4uCkZyZWl0YWcgZ3JpbnN0LgpbQWxsZ2VtZWluOk11cm1lbCBzZXVmenN0IGVpbiBsZXR6dGVzIG1hbF0KW0FsbGdlbWVpbjpBbmF0b2xdIFR1IGVzIGZ1ZXIgZGllIE11ZGhlaXQhCk11cm1lbCBsZWd0IHNlaW4gS29wZiBhdWYgZWluIFJpY2hibG9jay4KRnJlaXRhZyBzYWd0OiBzeW50YXg6IGxlZ2Uga29wZiBpbiBtdWxkZSA7KQpCaWVyY2hlbiBzYWd0OiBkb2NoIGRvY2ggOikKW0FsbGdlbWVpbjpCcmFuZGlyXSBtb20sIGljaCB3aWxsIGRhYmVpIHNlaW4gOikKRnJlaXRhZyBzYWd0OiBzeW50YXg6IGxlZ2Uga29wZiBpbiBtdWxkZSA7KQpGcmVpdGFnIHNhZ3Q6IHN5bnRheDogbGVnZSBrb3BmIGluIG11bGRlIDspCkZyZWl0YWcgc2FndDogc3ludGF4OiBsZWdlIGtvcGYgaW4gbXVsZGUgOykKRnJlaXRhZyBzYWd0OiBzeW50YXg6IGxlZ2Uga29wZiBpbiBtdWxkZSA7KQpbQWxsZ2VtZWluOkFuYXRvbCB3YXJ0ZXQgYXVmIE11cm1lbC5dCk11cm1lbCBzYWd0OiBlcyBrbGFwcHQgbmljaHQgOikKQmllcmNoZW4gc2FndDogc2Vpbi4uLiBzdGFuZCBkYSAsIGFiZXIgZXMgaGVpc3N0IDpkZW4gOikKRnJlaXRhZyBzYWd0OiBvaG5lIGVtb3RlIGJpdHRlIDspClRlZGR5IGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpUZWRkeSBzYWd0OiBIaWNrIQpNdXJtZWwgemllaHQgc2VpbiAzMGNtIFN0YWhsLUFudGkgUmljaHRibG9jayBIYWxzYmFuZCBhdXMuClRlZGR5IGRydWVja3QgTXVybWVscyBLb3BmIGluIGRpZSBNdWxkZQpGcmVpdGFnIHp3aW5ndCBNdXJtZWwgenU6IGxlZ2Uga29wZiBpbiBtdWxkZS4KTXVybWVsIGdyaW5zdC4KTXVybWVsIGxlZ3QgZGVuIEtvcGYgYXVmIGRlbiBSaWNodGJsb2NrLiBEaWUgSGVua2Vyc2F4dCBqdWJlbHQgZXJmcmV1dCBhdWYgdW5kCnNjaGxhZWd0IGVpbm1hbCBrcmFmdHZvbGwgenUuCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCltUb2Q6TGFyc10gRWluZSBzY2hhcmZlIEhlbmtlcnNheHQgaGF0IGdlcmFkZSBNdXJtZWwgdW1nZWJyYWNodC4KW1RvZDpFaW5lIHNjaGFyZmUgSGVua2Vyc2F4dF0gRW5kbGljaCEgRXJ3aXNjaHQhCltBbGxnZW1laW46QW5hdG9sXSA5O11dW0FsbGdlbWVpbjpGcmVpdGFnXSA4CltBbGxnZW1laW46QnJhbmRpcl0gd2FydGV0IDopO11bQWxsZ2VtZWluOkFuYXRvbF0gVUkgOikKW0JlaWxlaWQ6R3JhdXdvbGZdIEp1aHVoeiE7XVtCZWlsZWlkOk5hY2h0d2luZF0gZ3JhdHMhOikKVGVkZHkgc2FndDogSGljayEKW0JlaWxlaWQ6QnJhbmRpcl0gamFhYWFhYWFhYWFhCkZyZWl0YWcgc2FndDogSGljayE7XVtCZWlsZWlkOlppbm9dIGphd29sbGphCk9yb2RyZXRoIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uO11bQmVpbGVpZDpUYW1lbGldIGdyYXRzIQpbQmVpbGVpZDpMdWddIEhpaGloaWhpaGloaWloaSA7KT8KW0JlaWxlaWQ6RnJlaXRhZ10gdXV1dW5kIGFiISA7KQpCZWlsZWlkOkphbWFsc2tpIGFwcGxhdWRpZXJ0Ll0KW0JlaWxlaWQ6VGVkZHldIHVuZCB0c2NodWVzcyA7KQpbQmVpbGVpZDpKYW1hbHNraV0gc2NobGVjaHRlIFF1b3RlIGZ1ZXIgZGllIEF4dCEKW0JlaWxlaWQ6RnJlaXRhZ10gIk11cm1lbCBsZWd0IGRlbiBLb3BmIGF1ZiBkZW4gUmljaHRibG9jay4gRGllCkhlbmtlcnNheHQ7W0JlaWxlaWQ6RnJlaXRhZ10ganViZWx0IGVyZnJldXQgYXVmIHVuZCBzY2hsYWVndCBlaW5tYWwga3JhZnR2b2xsCnp1LiIgOykKVGVkZHkgZ3JpbnN0LgpGcmVpdGFnIHJ1ZWxwc3QuCltCZWlsZWlkOkFuYXRvbF0gdG9ldGUgYXh0LgpUZWRkeSB0cm9sbHQgc2ljaCBuYWNoIE5vcmRvc3Rlbi4KW0JlaWxlaWQ6VGhlcmluXSBzY2hhZGUsIGdsZWljaCBrb21tdCBlciB3aWVkZXIKRnJlaXRhZyBqdWJlbHQgQmllcmNoZW4genUuCgpuCncKIFlFUyAhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChOYWlyb2xmLCAyNy4gQXByIDE5OTgsIDAxOjE1OjAyKToKPiBYYW5kIHRlaWx0IERpciBtaXQ6IG1pbmRiYWxkZSBub2NoIHJhdXNob2xlbiBkZXIgc2NobGFmIG5vY2ggZG9ydCB1bnRlYm4KRGVyIFRvdGVuZ3JhZWJlciBzYWd0OiBTdG9lcmUgZGllIFRvdGVuIG5pY2h0IG9kZXIgRHUgd2lyc3Qgc2VsYmVyIHRvdCBzZWluLgpbVG9kOkxhcnNdIEVpbiBTYWV1cmVkYWVtb24gaGF0IGdlcmFkZSBNaW5kYmxhZGUgdW1nZWJyYWNodC4KW1RvZDpFaW4gU2FldXJlZGFlbW9uXSBNaXN0LiBKZXR6dCBpc3QgbWVpbmUgU2FldXJlIG1pdCBEZWluZW0gQmx1dCB2ZXJzYXV0LgoKCm9obmUgd29ydGUgOi0oCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIHZvciBNb3JpYSAoVGVkZHksIDI3LiBBcHIgMTk5OCwgMDI6NTA6MDYpOgp0cml0dCBBZmZlCkR1IHRyaXR0c3QgRGVubmlzLgogRGVubmlzIHNwcmluZ3QgRGljaCBhbiB1bmQgcGF0c2NodCBEaXIgbWl0IGRlbiBIYWVuZGVuIGlucyBHZXNpY2h0LiAKRGVyIEdlc3RhbmsgaXN0IGthdW0gYXVzenVoYWx0ZW4uCgoKVGVkZHksIHJlaWNodCBkZW0gQWZmZW4gZXR3YXMgV2Fzc2VyIHVuZCBTZWlmZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtcGYgKFRlZGR5LCAyNy4gQXByIDE5OTgsIDAyOjUxOjAwKToKW0FiZW50ZXVlcjpNZW5hY2VdIHdpZSBrb21tZSBpY2ggYXVzIGRlciBob2VsbGU/IDwwMjo0Mzo1NT4KW0FiZW50ZXVlcjpUZWRkeV0gcmVjaHRzIDwwMjo0NDowMz4KW0FiZW50ZXVlcjpNZW5hY2VdIGJlaSBsYXJzPyA8MDI6NDQ6MjE+CltBYmVudGV1ZXI6VGVkZHldIEplcHAgPDAyOjQ0OjI1PgpbQWJlbnRldWVyOkphbWFsc2tpXSBkYXMgd2FycyB2ZXJtdXRsaWNoIG5jaHQgZ3NueiwsIHRlZGR5eCA8MDI6NDQ6MjU+CltBYmVudGV1ZXI6TWVuYWNlXSB1bmQgZGFubj8gPDAyOjQ0OjMzPgpbQWJlbnRldWVyOlRlZGR5XSBCZWkgbWlyIHJlaWNodCBkYXMgaW1tZXIgOykgPDAyOjQ0OjM3PgpbQWJlbnRldWVyOkphbWFsc2tpXSBvZGVyIGRvY2g/IDwwMjo0NDo0MT4KW0FiZW50ZXVlcjpUZWRkeV0gZGFubiB3ZXN0ZW4gPDAyOjQ0OjUxPgpbQWJlbnRldWVyOlRlZGR5IG1laW50ZSBkYXMgdXJzcHJ1ZW5nbGljaCBhdWNoIGFscyBTY2hlcnogOykgPDAyOjQ1OjAzPl0KW0FiZW50ZXVlcjpKYW1hbHNraV0gb2hhIDspIDwwMjo0NToxMT4KW0FiZW50ZXVlcjpUZWRkeV0gRGVyIEdhZyBnaW5nIGRhbm4gd29obCBuYWNoIGhpbnRlbiBsb3MgOykgPDAyOjQ1OjM5PgoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVyd2lzY2h0IChUZWRkeSwgMjcuIEFwciAxOTk4LCAwMzoxMzowMik6CgogTHVnIHRlaWx0IERpciBtaXQ6IExhbmcgbGViZSBDNCA7KSAgIAoKVGVkZHksIHZvZWxsaWcgdmVyd2lycnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZXJ3aXNjaHQgKE1vcmdvdGgsIDI3LiBBcHIgMTk5OCwgMDc6MTE6NDMpOgp+IyEgcm49VGVkZHkgcnQ9ODkzNjM5NTgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzNjM5NTgyCkFlaG0sIFRlZGR5LCAKQzQgaXN0IFBsYXN0aWtzcHJlbmdzdG9mZi4KTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBkZWZpbml0aXYgcXVhbGlmaXppZXJ0IGFscyBGTFcgKEtleSwgMjcuIEFwciAxOTk4LCAwODoxMzozMyk6Cn4jISBybj1UaGVyaW4gcnQ9ODkzNjI3ODY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzNjI3ODY4CipwcnVzdCoKVW5kIG1pY2ggaGFidCBpaHIgbmV0IG1pdGdlbm9tbWVuPyA6KQpTY2hhZW10IGV1Y2ggOykKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZGllKCk6IGphIG9kZXIgbmVpbiA/IChCb2luZywgMjcuIEFwciAxOTk4LCAwODo1ODoyMSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9ODkzNjI2NDMxIG9nPXNlaGVyLmVudHdpY2tsdW5nCn4jISBybj1aaW5vIHJ0PTg5MzYyNjAwNiByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTg5MzYyNTgwMApXZWlzcyBuaWNodCB3YXMgaWhyIGhhYnQsIGljaCBmaW5kcyBwcmFrdGlzY2guLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZGllKCk6IGphIG9kZXIgbmVpbiA/IChCb2luZywgMjcuIEFwciAxOTk4LCAwODo1ODoyMik6Cn4jISBvbj1TaGFyaWEgb3Q9ODkzNjI2ODA5IG9nPXNlaGVyLmVudHdpY2tsdW5nCn4jISBybj1HcmltbWJvcm4gcnQ9ODkzNjI2NDMxIHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9ODkzNjI1ODAwCmtsYXNzZSBrb21tZW50YXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGRpZSgpOiBqYSBvZGVyIG5laW4gPyAoQm9pbmcsIDI3LiBBcHIgMTk5OCwgMDg6NTg6MjMpOgp+IyEgb249QXNtb2RpcyBvdD04OTM2MjY4ODAgb2c9c2VoZXIuZW50d2lja2x1bmcKfiMhIHJuPVNoYXJpYSBydD04OTM2MjY4MDkgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD04OTM2MjU4MDAKSGFzdCBkdSB3YXMgYW5kZXJlcyB2b24gZ3JpbW1pIGVyd2FydGV0ID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGRpZSgpOiBqYSBvZGVyIG5laW4gPyAoQm9pbmcsIDI3LiBBcHIgMTk5OCwgMDg6NTg6MzIpOgp+IyEgb249U2hhcmlhIG90PTg5MzYyNjk3MCBvZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgcm49QXNtb2RpcyBydD04OTM2MjY4ODAgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD04OTM2MjU4MDAKZWlnZW50bGljaCBuaWNodCBzdGltbXQgYXVjaCB3aWVkZXIgLi4gaWNoIGJpdHRlIGRhcnVtIGRpZSBsZXR6dGVuIDQgYXJ0aWtlbAp6dSBsb2VzY2hlbiAoaW5jbCBkaWVzZW0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBkaWUoKTogamEgb2RlciBuZWluID8gKEJvaW5nLCAyNy4gQXByIDE5OTgsIDA4OjU4OjM4KToKfiMhIG9uPUFzbW9kaXMgb3Q9ODkzNjI3MDc2IG9nPXNlaGVyLmVudHdpY2tsdW5nCn4jISBybj1TaGFyaWEgcnQ9ODkzNjI2OTcwIHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9ODkzNjI1ODAwCk5lLCBsaWViZXIgdmVybGVnZW4sIGRhZnVlciBpc3QgZ3JpbW1pIGRvY2ggenVzdGFlbmRpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcGVpbmxpY2ggcGVpbmxpY2ggKEFsYm9pbiwgMjcuIEFwciAxOTk4LCAxMjo0NTo0NSk6CltBbGxnZW1laW46QWxib2luXSBpY2ggaGFiZSBudSBuZSBNYXNzZW5Wb3JsZXN1bmc6IFBhcmFsbGVsZSBBcmNoaXRla3R1cmVuIG1pdApbQWxsZ2VtZWluOkFsYm9pbl0gMyAoISkgVGVpbG5laG1lcm4sIGltIFdlc3RlbiB3aXJkIG1hbiBtaXIgZGFzIHNpY2hlciBuaWNodApbQWxsZ2VtZWluOkFsYm9pbl0gZ2xhdWJlbiA7KSA8MTA6NDM6MzA+CltBbGxnZW1laW46WFhYXSBJbSBIYXVwdHN0dWRpdW0gaXN0IGFsbGVzIG1vZWdsaWNoLiBVbmQgaW4KW0FsbGdlbWVpbjpYWFhdIEluZ2VuaWVydXN3aXNzZW5zY2hhZnQgc293aWVzby4gPDEwOjQzOjU1PgoKQWxib2luCgpQLlMuIEZ1ZXIgZGllLCBkaWUgamV0enQgZHVtbSBzY2hhdWVuOiBQYXJhbGxlbGUgQXJjaGl0ZWt0dXJlbiBnZWhvZXJ0IHp1bQpJbmZvcm1hdGlrc3R1ZGl1bSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBwZWlubGljaCBwZWlubGljaCAoQWxib2luLCAyNy4gQXByIDE5OTgsIDEyOjUyOjUxKToKfiMhIHJuPUFsYm9pbiBydD04OTM2NzM5NDUgcmc9c2NobWFycm4KfiMhIHRpZD04OTM2NzM5NDUKenVtIFRoZW1hICJwZWlubGljaCBwZWlubGljaCIgZmFlbGx0IG1pciBub2NoIGVpbmUgYWVsdGVyZSBCZWdlYmVuaGVpdGUgZWluOgoKQXVmIGVpbmVyIGRlciB2aWVsZW4gTW9udGFnc2RlbW9zIHp1ciBXZW5kZXplaXQgdHJlZmZlbiBzaWNoIFN0dWRlbnQgdW5kCk5pY2h0c3R1ZGVudC4KTmljaHRzdHVkZW50OiBXYXMgc3R1ZGllcnN0IGR1IGRlbm4/ClN0dWRlbnQ6IEluZm9ybWF0aWsKTmljaHRzdHVkZW50OiBBY2ggamEsIGljaCB3YXIgYXVjaCBtYWwgYmVpIGRlciBQb3N0LgoKQWxib2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogcGVpbmxpY2ggcGVpbmxpY2ggKFRlZGR5LCAyNy4gQXByIDE5OTgsIDE0OjE5OjIyKToKfiMhIHJuPUFsYm9pbiBydD04OTM2NzM5NDUgcmc9c2NobWFycm4KfiMhIHRpZD04OTM2NzM5NDUKV293LCBkYXMgaXN0IGZ1ZXIgZGVuIEt1cnMgZWNodCB2aWVsLgpCZWkgdW5zIGhpZXIgaW0gV2VzdGVuIDspIG1hY2hlbiBkZW4gbmljaHQgc28gdmllbGUuCgpUZWRkeSwgd2lkZXJsZWZndCBBdXNzYWdlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogcGVpbmxpY2ggcGVpbmxpY2ggKEdsb2luc29uLCAyNy4gQXByIDE5OTgsIDE4OjA2OjIyKToKfiMhIHJuPVRlZGR5IHJ0PTg5MzY3OTU2MiByZz1zY2htYXJybgp+IyEgdGlkPTg5MzY3Mzk0NQpKbywgd29sbHRlIGljaCBkb2NoIG1laW5lbi4gWFhYPUdsb2luLiBBbGJvaW4gc29sbHRlIHZpZWxsZWljaHQgbWFsCmF1ZiBkZXIgbmFlY2hzdGVuIEtJRi9kZW0gRmFrdWx0YWV0ZW50YWcgbWFsIGRpZSBBbmZhZW5nZXJ6YWhsZW4gZWluLQpob2xlbiwgZGllIHBhYXIgTWFlbm5la2VuIHZlcnN0cmV1ZW4gc2ljaCBhdWNoIGltIFdlc3RlbiBzY2huZWxsLgoKR2xvaW4gLi4uIGlkZWx0IGpldHp0IHp3ZWkgSW5mb3NlbWVzdGVyIGluIEJlcmxpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHBlaW5saWNoIHBlaW5saWNoIChHbG9pbnNvbiwgMjcuIEFwciAxOTk4LCAxODowODozMyk6Cn4jISBybj1HbG9pbnNvbiBydD04OTM2OTMxODIgcmc9c2NobWFycm4KfiMhIHRpZD04OTM2NzM5NDUKT2guIEthbm4gbGF0dWVybmljaCBzZWluLCBkYXNzIGVyIFdpcnRzY2hhZnRzaW5mb3JtYXRpayBvZGVyIGlyZ2VuZGVpbmVuCmFuZGVyc2FydGlnZW4gWm9tYmllc3R1ZGllbmdhbmcgYmVzdWNodCwgZGVyIGF1cyBWZXJzZWhlbiAnSW5mb3JtYXRpaycKbWl0IGltIE5hbWVuIGZ1ZWhydCwgZGFubiBpc3Qgc2VpbiBFcnN0YXVuZW4gdmllbGxlaWNodCB2ZXJzdGFlbmRsaWNoIDopCgpHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHBlaW5saWNoIHBlaW5saWNoIChBbHBoYSwgMjcuIEFwciAxOTk4LCAxODoxMjozNCk6Cn4jISBybj1BbGJvaW4gcnQ9ODkzNjczOTQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzNjczOTQ1CjMgVGVpbG5laG1lciBzaW5kIGRvY2ggZWNodCB2aWVsLiAyIFRlaWxuZWhtZXIgc2luZCBiZWkgbWlyIGhpZXIgZ2FueiBub3JtYWwsCndvYmVpIGRpZSB6d2VpIG5hdHVlcmxpY2ggZGllIE1heGltYWxhbnphaGwgZGVyIFRlaWxuZWhtZXIgaXN0LgpBbHBoYSwgc3R1ZGllcnQgZmFzdCBhbGxlaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprbHVnZXIgYnVyc2NoZS4uLiAoTGlsbGVicm9yLCAyNy4gQXByIDE5OTgsIDIzOjUzOjQ2KToKZWJlbiBncmFkLi4uCgpEdSByaWNodGVzdCBEZWluIEtlcmJob2x6IGF1ZiBIaXBwZSwgZXMgdmlicmllcnQgbGVpY2h0LgpHZW9yZGkgdHJpdHQgSGlwcGUuCkhpcHBlIGlzc3QgU3BhZ2hldHRpIGNhcmJvbmFyYS4KRHUgc2Fnc3Q6IGh1Y2gKSGlwcGUgZnJhZ3QgOiBXYXJ1bSBzYWd0IExpbGxlYnJvciAnaHVjaCcgPwpHZW9yZGkgc2FndDogZGVyIGhhdCBlaW5lbgpEdSBzYWdzdDogZGVuIGhhYiBpY2ggbm9jaCBnYXIgbmljaHQgOikKR2VvcmRpIHNhZ3Q6IGlzdCBuaWNodCBzdGFyawpIaXBwZSBmcmFndCA6IFdhcnVtIHNhZ3QgR2VvcmRpICdpc3QgbmljaHQgc3RhcmsnID8KSGlwcGUgZ2VodCBuYWNoIFN1ZWRlbi4KCi4uLi4gZXIgd2lyZCBzY2hvbiB3aXNzZW4gd2FydW0gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBwZWlubGljaCBwZWlubGljaCAoRmxpbngsIDI4LiBBcHIgMTk5OCwgMTE6MTE6MDEpOgp+IyEgcm49QWxib2luIHJ0PTg5MzY3Mzk0NSByZz1zY2htYXJybgp+IyEgdGlkPTg5MzY3Mzk0NQpqYXUuLi5lcyBsZWJlIGRlciBPc3RlbiAhCgpGbGlueC4gQmlzaGVyaWdlciBSZWtvcmQgOiAxIFByb2YsIDIgU3R1ZGVudGVuLiBWb3JsZXN1bmdzb3J0IDogTWVpbmUKV0ctS3VlY2hlIFRoZW1hIDogTWFzY2hpbmVuZWxlbWVudGVrb25zdHJ1a3Rpb24uLi4gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHcmFkIGJlaSBkZW4gS2FlbXBmZXJuLi4uIChBcmF0aCwgMjguIEFwciAxOTk4LCAxMTozNzozMSk6CkR1IHN0ZWhzdCBzdGlsbC4KRHUgZnJhZ3N0IEtsb2lyZW4gRWlzZW5oZWxtIG5hY2ggQXp1YmkuCktsb2lyZW4gRWlzZW5oZWxtIHNhZ3Q6IEZ1ZXIgRGljaCBrYWVtZW4gZm9sZ2VuZGUgVHJ2ZXMgYWxzIEF6dWJpcyBpbiBGcmFnZToKS2xvaXJlbiBFaXNlbmhlbG0gc2FndDogR3JhbGtvciB1bmQgTXVhZGliLgo+IGZpbmdlciBtdWFkaWIKTXVhZGliIGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBEZXV0c2NobGFuZC4KUGFzc2l2IHNlaXQ6IDAwOjI0OjMxCkVpbmdlbG9nZ3Qgc2VpdDogRGllLCAyOC4gQXByIDE5OTgsIDExOjEwOjM1ClZvbGxlciBOYW1lOiBNdWFkaWIKUmFzc2U6ICwgIEdpbGRlOiBLYWVtcGZlciwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogNDFkIDA5OjA4OjU2LCAgIE1hZ2llcmxldmVsOiAyNQpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiB2b3IgZGVtIDEwLiBOb3YgMTk5NQp6LlouIGFid2VzZW5kLCBHcnVuZCAgOiBlc3NlbgpSZWdpb25zbWl0YXJiZWl0ZXIgdm9uOiBXdWVzdGUuClByb2pla3Q6IElkbGVkaSBJZGxlZGEKUGxhbjoKICAgICAgICAgICAgICAgICAgICAgICAgICBcXHx8fC8vCiAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgfiB+IC8gICAgICAgICAgICAgIF9cfC9fCiAgICAgICAgICAgICAgICAgICBcT09vLiAgIEAgbyBvIEAgICAgICAgICAgICAgIC1PLk8tCiAgICAgICAgICAgXFxcLy8gICAgfCMjfCAgIHwgKCApIHwgICAgICAgICAgICAgICggPSApICAgICAgICAgICB8fHx8fAogICAgICAgICAgIyhvIG8pIyAgIC8gLyAgICB8YC0tLSd8ICAgICAgICAgICAgIF9fLS0tX18gICAgICAgICAoIDAgMCApCiBfX19fLm9PT19fXyhfKV9fX18vXy9fX29PT09vX19fb09PT29fX19fX19fb29PX19fX19fX09vb19fX29PT19fKH4pX19PT29fXwoKQXJhdGgsIGtpY2hlcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHBlaW5saWNoIHBlaW5saWNoIChKaW1kaWdyaXosIDI4LiBBcHIgMTk5OCwgMTM6NDY6NDIpOgp+IyEgcm49RmxpbnggcnQ9ODkzNzU0NjYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzNjczOTQ1ClBmZiwgCgpkYSBrb21tIGljaCBub2NoIGRydWViZXIgOikKCkRlciBEb3plbnQgdW5kIGljaC4gOikgVGhlbWE6IEZvcnRnZXNjaHJpdHRlbmUgUmVzdWx0YXRlIGRlciBRdWFudG9yZW5sb2dpawpPcnQ6IGRpZSBJbnN0aXR1dHNiaWJsaW90aGVrLgoKSmltIERpR3JpegoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogcGVpbmxpY2ggcGVpbmxpY2ggKFJhdHosIDI4LiBBcHIgMTk5OCwgMTg6MjY6MTMpOgp+IyEgcm49SmltZGlncml6IHJ0PTg5Mzc2NDAwMiByZz1zY2htYXJybgp+IyEgdGlkPTg5MzY3Mzk0NQpEYXMgZ2VodCBhYmVyIGF1Y2ggbm9jaCBiZXNzZXIhCkVpbiBTdHVkZW50IHp3ZWkgUHJvZnMuIApFcyBnaWJ0IFN0dWRpZW5nbmdlIHdvIGVzIG1laHIgUHJvZnMgYWxzIFN0dWRlbnRlbiBnaWJ0IQpHcnVzcyBSYXR6IEZhdHoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHBlaW5saWNoIHBlaW5saWNoIChUZWRkeSwgMjkuIEFwciAxOTk4LCAwMDo0MjozNyk6Cn4jISBybj1KaW1kaWdyaXogcnQ9ODkzNzY0MDAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzNjczOTQ1CkJlaSBkZW0gVGhlbWEgaXN0IGRhcyBqYSBhdWNoIGtlaW4gV3VuZGVyLgoKVGVkZHksIHZlcnN1Y2h0IGRlbiBNdW5kIHdpZWRlciB6dXp1a3JpZWdlbiBuYWNoIGRlbSBnYWVobmVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgc29sbCBkYXMgZGVubiBoZWlzc2VuPyA7KSAoVGVkZHksIDI5LiBBcHIgMTk5OCwgMDQ6MDk6MTIpOgoKW0FsbGdlbWVpbjpUZWRkeV0gV2FzIG1pY2ggZGFyYW4gZXJpbm5lcnQsIGRhcyBpY2ggbGFlbmdzdCBpbSBCZXR0IHNlaW4gd29sbHRlCkRlciBPYmVycHJpZXN0ZXIgc2NoYXV0IERpY2ggdmVyd3VuZGVydCBhbi4gICAgCgpXaWxsIGRlciBkYW1pdCBpcmdlbmR3YXMgenVtIEF1c2RydWNrIGJyaW5nZW4/CgpUZWRkeSwgaXJyaXRpZXJ0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBwZWlubGljaCBwZWlubGljaCAoUGFwaWVydGlnZXIsIDI5LiBBcHIgMTk5OCwgMDg6NDA6NTUpOgp+IyEgcm49UmF0eiBydD04OTM3ODA3NzMgcmc9c2NobWFycm4KfiMhIHRpZD04OTM2NzM5NDUKSG1tLCBzb3dhcyBoYXR0ZW4gd2lyIGhpZXIgbGV0enRlcyBTZW1lc3RlciBhdWNoOiBFaW5lIGdyb3NzIGFuZ2VrdWVuZGlndGUKS29vcGVyYXRpb25zdm9ybGVzdW5nIHZvbiBtYXRoLiBTZW1pbmFyIHVuZCBUZWNobmlzY2hlciBGYWt1bHRhZXQuIEVyZ2VibmlzOgpCZWltIGVyc3RlbiBNYWwgd2FyZW4gZGllIGJlaWRlbiBQcm9mcyBkYSwgc29uc3QgbmllbWFuZC4gRGFuYWNoIGZhbmQgc2llIGF1Y2gKbmljaHQgbWVociBzdGF0dC4KClBkbkEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE1vZWdlbiBTaWUgQjU/IChHcmltbWJvcm4sIDI5LiBBcHIgMTk5OCwgMTE6MDQ6NDMpOgp+IyEgb249TGkgb3Q9ODkzODM2MjkyIG9nPWFsbGdlbWVpbmVzCn4jISBybj1XYXJnb24gcnQ9ODkzNjcyNDE5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODkzMjQ0NzU4CldVQUFBSEhISEhIISAqcm90ZmwqCktlaW4ga29tbWVudGFyIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQmVzY2h3ZXJkZSB1ZWJlciBMVUchIChHcmltbWJvcm4sIDI5LiBBcHIgMTk5OCwgMTM6NDI6MzApOgp+IyEgcm49QWxib2luIHJ0PTg5Mzg0NjQzMSByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9ODkzODAwMTgxCkhtbT8gV2llc28gc29sbHRlIGljaCBlaW4gKmlyb25pZSBvZmYqIG1hY2hlbiB3ZW5uIGljaCBnYXIgbmljaHQgaXJvbmlzY2gKZ2V3ZXNlbiBiaW4/CgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEJlc2Nod2VyZGUgdWViZXIgTFVHISAoSGFyZGlsLCAyOS4gQXByIDE5OTgsIDEzOjQzOjQyKToKfiMhIHJuPUdyaW1tYm9ybiBydD04OTM4NTAxNTAgcmc9c2NobWFycm4KfiMhIHRpZD04OTM4MDAxODEKCkhldWwgZG9jaCEgPjotKQoob2RlciBtYWNoIFNlbGJzdGxvZXNjaHVuZyAoYykgR3JpbW1ib3JuIDE5OTUpCgotSGFyZGlsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdlZnVuZGVuIDspIChIYXJkaWwsIDI5LiBBcHIgMTk5OCwgMTM6NDk6MjUpOgp+IyEgcm49VGFtZWxpIHJ0PTg5Mzg1MDM2MCByZz1zY2htYXJybgp+IyEgdGlkPTg5Mzg1MDM2MAoKVmllbCB3aXR6aWdlciBmaW5kZSBpY2ggZXMsIHdlbm4gTGV1dGUgYmVpbSBTY3JpcHRlbiBBcnRpa2VsIHNjaHJlaWJlbiwgdXluZApkYW5uIGRpdmVyc2UgQmVmZWhsZSB2b20gQXJ0aWtlbCBhYmdlZmFuZ2VuIHdlcmRlbi4KRGFzIERvbGNoenVlY2tlbiBoYXQgbmFlbWxpY2ggZ2FyIG5peCBtaXQgRWhlZnJhdSBWLjEgenUgdHVuIC4KCk5laW4sIGljaCBiZXNjaHdlcmUgbWljaCBuY2lodCBkYXJ1ZWJlciwgZGFzcyBkaWVzZXIgQXJ0aWtlbCBlcnN0IHp1bSAzNHRlbgpNYWwgaGllciBnZXBvc3RldCB3dXJkZS4gRGFzIHVlYmVybGFzc2UgaWNoIGFuZGVyZW4uCldpZSB3YWVyZSBlcywgZWluZSBSdWJyaWsgd2llZGVyaG9sdW5nZW4gZWluenVyaWNodGVuPyBEYW5uIHd1ZXNzdGUgR3JpbW1ib3JuLApkZXIgd2VpbmVuZGUgQXRoZWlzdCB3ZW5pZ3N0ZW5zLCB3b2hpbiBlciBkaWUgbWVpc3RlbiBTYWNoZW4gdmVybGVnZW4gZGFyZi4KR2xlaWNoemVpdGlnIHBsYWVkaWVyZSBpY2ggYXVjaCBmdWVyIGVpbmUgU3VicnVicmlrCm11ZWxsLmF1Z2Vrb2NodGVyLnRocmVhZC56dS5mcnVlaCB1bmQgZWluZSBTdWJydWJyaWsKbXVlbGwuYXVmZ2Vrb2NodGVyLnRocmVhZC56dS5zcGFldC4KCi1IYXJkaWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdlZnVuZGVuIDspIChUYXJpbmEsIDI5LiBBcHIgMTk5OCwgMTM6NTQ6MTkpOgp+IyEgcm49SGFyZGlsIHJ0PTg5Mzg1MDU2NSByZz1zY2htYXJybgp+IyEgdGlkPTg5Mzg1MDM2MApXZW5uIER1IHRhdHNhZWNobGljaCBzY2hvbiBzbyBsYW5nZSBkYWJlaSBiaXN0LCBkYXNzIER1IGRpZSBtZWlzdGVuIEFydGlrZWwKYWxzIFdpZWRlcmhvbHVuZyBlcmtlbm5zdCwgZGFubiBtdWVzc3Rlc3QgRHUgZWlnZW50bGljaCB3aXNzZW4sIGRhc3MgZGFzCkdlZGFlY2h0bmlzIGRlcyBJbnRlcm5ldHMgaG9lY2hzdGVucyAzIE1vbmF0ZSBhbHQgaXN0LgoKRGVuayBlaW5mYWNoIG1hbCBkcmFuLCBkYXMgamVkZW4gVGFnZSBuZXVlIExldXRlIGRhenVrb21tZW4gdW5kIGFsdGUgd2VnZ2VoZW4uCkRhbm4gaXN0IGVpbmUgV2llZGVyaG9sdW5nIGdhcm5pY2h0IHNjaGxpbW0uIFZvciBhbGxlbSBlaW5lIHNvIG5ldHRlLgoKVGFyaW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHZWZ1bmRlbiA7KSAoSGFyZGlsLCAyOS4gQXByIDE5OTgsIDE0OjA0OjQ5KToKfiMhIHJuPVRhcmluYSBydD04OTM4NTA4NTkgcmc9c2NobWFycm4KfiMhIHRpZD04OTM4NTAzNjAKClRqYSwgZWlubWFsIGJpbiBpY2ggbmljaHQgZGFzIEludGVybmV0IChkZXN3ZWdlbiBHZWRhZWNodG5pcyBncm9lc3NlciBnbGVpY2gKZHJlaSBNb25hdGUpLCB1bmQgendlaXRlbnMgcGxhZWRpZXJlIGljaCBqYSBhdWNoIGZ1ZXIgZGllIEVpbmZ1ZWhydW5nIGRlcwpCcmV0dHMgIldpZWRlcmhvbHVuZ2VuIi4KCmRlbmtlIC4gbyBPIChGcmF1ZW4hISEpIChjKSBBbmF0b2wKCi1IYXJkaWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBwZWlubGljaCBwZWlubGljaCAoSmltZGlncml6LCAyOS4gQXByIDE5OTgsIDE0OjU0OjEwKToKfiMhIHJuPVRlZGR5IHJ0PTg5MzgwMzM1NyByZz1zY2htYXJybgp+IyEgdGlkPTg5MzY3Mzk0NQoKU2ljaGVyLCAKaWNoIGhhdHRlIHNjaHdpZXJpZ2tlaXRlbiBiZWltIGF1ZmJla29tbWVuIGRlcgpBdWdlbiA6LX19LCBGYXRhbCB3ZW5uIG1hbiBkZXIgZWluemlnZSBhdXNzZXIgZGVtCkRvemVudGVuIGlzdCAuLi4uCgpDaWFvLAogSmRHCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHZWZ1bmRlbiA7KSAoVGFyaW5hLCAyOS4gQXByIDE5OTgsIDE1OjAwOjAwKToKfiMhIHJuPUhhcmRpbCBydD04OTM4NTE0ODkgcmc9c2NobWFycm4KfiMhIHRpZD04OTM4NTAzNjAKVW5kIHdpZSwgdmVyZWhydGVyIE1laXN0ZXIsIHNvbGxlbiBuZXVlIExldXRlIGFobmVuIGtvZW5uZW4sIGRhc3MgRHUgaW4KRGVpbmVyIHVuZW5kbGljaGVuIFdlaXNoZWl0IHNjaG9uIGFsbGVzIGtlbm5zdCwgd2FzIHNpZSBnZXJhZGUgZXJzdCBob2VyZW4/CgpTZXR6ZW4sIHNlY2hzIQoKVGFyaW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHZWZ1bmRlbiA7KSAoSGFyZGlsLCAyOS4gQXByIDE5OTgsIDE1OjAwOjU4KToKfiMhIHJuPVRhcmluYSBydD04OTM4NTQ4MDAgcmc9c2NobWFycm4KfiMhIHRpZD04OTM4NTAzNjAKCk5hamEsIHZpZWxsZWljaHQgbWFsIGRlbiBCZWdyaWZmIEZpbmdlciB2ZXJ3ZW5kZW4gdW5kIG5hY2hzY2hhdWVuLCB3ZXIgaGllcgpsYWVuZ2VyIGFscyBkcmVpIE1vbmF0ZSBleGlzdGllcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBHZWZ1bmRlbiA7KSAoVGFyaW5hLCAyOS4gQXByIDE5OTgsIDE1OjAyOjMxKToKfiMhIHJuPUhhcmRpbCBydD04OTM4NTQ4NTggcmc9c2NobWFycm4KfiMhIHRpZD04OTM4NTAzNjAKc2NobWFycm4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBHZWZ1bmRlbiA7KSAoSGFyZGlsLCAyOS4gQXByIDE5OTgsIDE1OjE1OjQwKToKfiMhIHJuPVRhcmluYSBydD04OTM4NTQ5NTEgcmc9c2NobWFycm4KfiMhIHRpZD04OTM4NTAzNjAKCkd1dCwgbWl0IGRpZXNlbSBQb3N0aW5nIGhhc3QgRFUgd2VuaWdzdGVucyBkaWUgcmljaHRpZ2UgUnVicmlrIGdldHJvZmZlbi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClMoaGFhcilpYXMgQmFydCA/Pz8gKE1vcmdvdGgsIDI5LiBBcHIgMTk5OCwgMTY6Mjc6MzIpOgo+IFNoYXJpYSBncmluc3QuClNoYXJpYSBzYWd0OiBkYW5rZSA6LSkKU2hhcmlhIGt1c2NoZWx0IHNpY2ggYW4gRGljaCBhbi4KRHUgc2Fnc3Q6IHVwcHMKPiBNZXJsaW4gcnVmdDogSWNoIGJpbiB3ZXJ3ZWlzc3dvIC4uLgpTaGFyaWEgZGVua3QgICAuIG8gTyAoaWNoIGJpbiB3ZWlibGljaCBpY2ggZGFyZiBkYXMgOi0pKQpTaGFyaWEgZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KRHUgZGVua3N0ICAgLiBvIE8gKERVIEtSQVRaVCAhISEpCj4gU2hhcmlhIHRyaXR0IERpY2guCkR1IHdhZWx6dCBEaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KPiBTaGFyaWEgc2FndDogVGV2aWxkbyBzdGVodCBpbiBkZXIgS2xlcnVzZ2lsZGUKQW1hem9yYSBydWZ0OiBNZXJsaW4gaXN0IFNjaGVpc3NlClNoYXJpYSBzYWd0OiBJQ0ggSEFCRSBLRUlORU4gQkFSVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVybGluIGJyYXVjaHQgbmUgS2FydGUgKFFpdGVzcywgMjkuIEFwciAxOTk4LCAxNjoyODo0NSk6CnNjaGF1CkRhcyBCdWVybyBkZXMgRm9lcmRlcnZlcmVpbnMgUHJvamVrdCBNb3JnZW5HcmF1ZW4gZS5WLiBpc3Qgc2NobGljaHQsIGFiZXIKZnVuay0KdGlvbmVsbCBlaW5nZXJpY2h0ZXQsIGRlbm4gZGFzIEdlbGQgZGVyIE1pdGdsaWVkZXIgc29sbCBqYSBuaWNodCBmdWVyIHVubm9lLQp0aWdlbiBMdXh1cyBhdXNnZWdlYmVuIHdlcmRlbi4KSW4gZWluZW0gUmVnYWwgbGllZ3QgZWluIE9yZG5lciwgaW4gZGVtIHdvaGwgZGllIHdpY2h0aWdzdGVuIFZlcmVpbnMtRG9rdW1lbnRlCmdlc2FtbWVsdCB3ZXJkZW4uIEF1ZiBkZW0gU2NocmVpYnRpc2NoIHN0ZWh0IGVpbiBSZWNobmVyLCBkZXNzZW4gTW9uaXRvciBlaW4tCmdlc2NoYWx0ZXQgaXN0LiBBbiBkZXIgV2FuZCBoaW50ZXIgZGVtIFNjaHJlaWJ0aXNjaCBoYWVuZ3QgZWluIEJpbGQgZGVzIFZlci0KZWluc3ZvcnN0YW5kcywgZGFuZWJlbiBlaW4gZ3Jvc3NlcyBQb3N0ZXIuIEF1c3NlcmRlbSBzaWVoc3QgRHUgbm9jaCBlaW5lIGdlLQptdWV0bGljaGUgU2l0emVja2UsIGRpZSB6dW0gRGlza3V0aWVyZW4gZWlubGFlZHQuCkFuIGRlciBXYW5kIHVlYmVyIGRlciBTaXR6ZWNrZSBoYWVuZ3QgZWluZSBncm9zc2UgVGFmZWwuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB1bnRlbi4KTWVybGluIGRlciBVcnZhdGVyIGFsbGVyIE1hZ2llcgoKPiBNZXJsaW4gcnVmdDogSWNoIGhhYiBtaWNoIHZlcmxhdWZlbiAtIGljaCBzY2hhZXR6ZSwgVmlwZXIgaGF0IHdhcyBkYW1pdCB6dSAKdHVuLi4uCk1lcmxpbiBydWZ0OiBJY2ggaGFiIG1pY2ggdmVybGF1ZmVuIC0gaWNoIHNjaGFldHplLCBWaXBlciBoYXQgd2FzIGRhbWl0IHp1IAp0dW4uLi4KPiBNZXJsaW4gemllaHQgd2VpdGVyLgpzY2hhdQpEYXMgQnVlcm8gZGVzIEZvZXJkZXJ2ZXJlaW5zIFByb2pla3QgTW9yZ2VuR3JhdWVuIGUuVi4gaXN0IHNjaGxpY2h0LCBhYmVyCmZ1bmstCnRpb25lbGwgZWluZ2VyaWNodGV0LCBkZW5uIGRhcyBHZWxkIGRlciBNaXRnbGllZGVyIHNvbGwgamEgbmljaHQgZnVlciB1bm5vZS0KdGlnZW4gTHV4dXMgYXVzZ2VnZWJlbiB3ZXJkZW4uCkluIGVpbmVtIFJlZ2FsIGxpZWd0IGVpbiBPcmRuZXIsIGluIGRlbSB3b2hsIGRpZSB3aWNodGlnc3RlbiBWZXJlaW5zLURva3VtZW50ZQpnZXNhbW1lbHQgd2VyZGVuLiBBdWYgZGVtIFNjaHJlaWJ0aXNjaCBzdGVodCBlaW4gUmVjaG5lciwgZGVzc2VuIE1vbml0b3IgZWluLQpnZXNjaGFsdGV0IGlzdC4gQW4gZGVyIFdhbmQgaGludGVyIGRlbSBTY2hyZWlidGlzY2ggaGFlbmd0IGVpbiBCaWxkIGRlcyBWZXItCmVpbnN2b3JzdGFuZHMsIGRhbmViZW4gZWluIGdyb3NzZXMgUG9zdGVyLiBBdXNzZXJkZW0gc2llaHN0IER1IG5vY2ggZWluZSBnZS0KbXVldGxpY2hlIFNpdHplY2tlLCBkaWUgenVtIERpc2t1dGllcmVuIGVpbmxhZWR0LgpBbiBkZXIgV2FuZCB1ZWJlciBkZXIgU2l0emVja2UgaGFlbmd0IGVpbmUgZ3Jvc3NlIFRhZmVsLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogdW50ZW4uCgpBbHNvLCB3ZW5uIGVyIG1pY2ggZ2VmcmFndCBoYWV0dGUsIGhhZXR0ZSBpY2ggZXMgaWhtIGphIHNhZ2VuIGtvZW5uZW4uIEVyIHdhcgpxdWFzaSBpbSBaZW50cnVtLi4uCgpRSSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBCZXNjaHdlcmRlIHVlYmVyIExVRyEgKEFuYXRvbCwgMjkuIEFwciAxOTk4LCAxNjo0MjoyOCk6Cn4jISBybj1BbHBoYSBydD04OTM4NjA4NDQgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTg5MzgwMDE4MQpCZXZvciBpaHIgbmFjaCBlaW5lbSAiVmVybGVnZXIiIHNjaHJlaXQsIHNlaWQgZXVjaCBiaXR0ZSBiZXd1c3N0LCBkYXNzCm51ciBFcnptYWdpZXIgaW4gcG9saXplaS5iZXNjaHdlcmRlbiBsb2VzY2hlbiBkdWVyZmVuLiBWaWVsbGVpY2h0IHBmbGFuenQKaWhyIGRlbiBNaXN0IGlyZ2VuZHdvIGZvcnQsIHdvIEdyaW1taSBhdWNoIGRpZSBlbnRzcHJlY2hlbmRlbiBSZWNodGUgaGF0LgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcyBzb2xsIGRhcyBkZW5uIGhlaXNzZW4/IDspIChBc21vZGlzLCAyOS4gQXByIDE5OTgsIDE4OjI0OjUyKToKfiMhIHJuPVRlZGR5IHJ0PTg5MzgxNTc1MiByZz1zY2htYXJybgp+IyEgdGlkPTg5MzgxNTc1MgpUamEsIHByaWVzdGVyIHN0ZWhlbiBmcnVlaCBhdWYgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhldXRlIGdlZnVuZGVuIChaZXBoeXIsIDI5LiBBcHIgMTk5OCwgMjI6NTg6NTEpOgpIZXV0ZSBnZWZ1bmRlbiBpbiBkZXIgSGFlbmdlbWF0aGUgIChaZWl0c2NocmlmdCBkZXIgTWF0aGVmYWNoc2NoYWZ0IGRlcgpVbmkgQm9ubikuIElyZ2VuZGVpbiBTY2hlcnprZWtzIGhhdCBkZW4gVWViZXJzZXR6dW5nc2RpZW5zdCB2b24gQWx0YXZpc3RhCmVpbm1hbCBpbnMgRW5nbGlzY2hlIHVuZCB3aWVkZXIgenVydWVjayBhbmdlc2NobWlzc2VuOgoKRGFzIE9yaWdpbmFsOiAgICAgICAgICAgICAgICAgICAgICAgRGllIFVlYmVyc2V0enVuZzoKfn5+fn5+fn5+fn5+fiAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5+fn5+fn5+fn5+fn4gIApFcyB3YXIgZWlubWFsICBlaW4gTWFlZGNoZW4sICBkZW0gICBFcyB3YXIsICBzb2JhbGQgIGVpbiBNYWVkY2hlbiwgIGRhcyAKd3VyZGUgICBlaW5laW5kZXV0aWcgICBlaW5lICByb3RlICAgYml1bmlxdWVseSAgZWluZSAgcm90ZSAgU2NodXR6a2FwcGUKS2FwcGUgenVnZW9yZG5ldCwgd29kdXJjaCBlcyAgYWxzICAgenVnZXdpZXNlbiB3dXJkZSwgIGhpbmdlZ2VuIHNpZSBhbHMKUm90a2FlcHBjaGVuIGRlZmluaWVydCB3dXJkZS4gICAgICAgUm90a2FlcHBjaGVuICBkZWZpbmllcnQgd3VyZGUuCiJLaW5kIiwgYXJndW1lbnRpZXJ0ZSBkaWUgTXV0dGVyLCAgICJkYXMgS2luZCIsICBhcmd1bWVudGllcnQgIGRlciBNdXQtCiJ3ZXJkZSAgIGtyZWF0aXYsICBtYXRoZW1hdGlzaWVyZSAgIHRlciwgICJ3aXJkIGtyZWF0aXYsIGRlciAga3Vlcnplc3RlIApkaWUgICBrdWVyemVzdGUgICBWZXJiaW5kdW5nICBkZXMgICBBbnNjaGx1c3MgIGRlciAgbWF0aGVtYXRpc2llcmUgIGRlciAKV2VnZXMgenVyIEdyb3NzbXV0dGVyLCBhbmFseXNpZXJlICAgV2Vpc2UgIHp1ciBHcm9zc211dHRlciwgIGFuYWx5c2llcnQgCmFiZXIgIG5pY2h0IGRpZSBCbHVtZW4gIGFtICBXZWdlLCAgIGplZG9jaCAgbmljaHQgIGRpZSAgQmx1bWVuICBhbiAgZGVyIApzb25kZXJuICBmb3JtYWxpc2llcmUgIERlaW5lbiBXZWcgICBXZWlzZSwgYWJlciBmb3JtYWxpc2llcnQgaWhyZSBXZWlzZSAgICAgIAppbiBzeXN0ZW1hdGlzY2hlciBPcmRudW5nLiIgICAgICAgICBpbiBkZXIgc3lzdGVtYXRpc2NoZW4gT3JkbnVuZy4iClJvdGthZXBwY2hlbiAgIHZlcmVpbmlndGUgICBlaW5lbiAgIFJvdGthZXBwY2hlbiAgICBrb21iaW5pZXJ0ZSAgIGVpbmVuCkt1Y2hlbiwgICBlaW5lICBXdXJzdCAgIHVuZCAgZWluZSAgIEt1Y2hlbiwgICBlaW5lICBXdXJzdCAgIHVuZCAgIGVpbmVuCkZsYXNjaGUgIFdlaW4gICB6dSAgZWluZXIgIE1lbmdlLCAgIEZsYXNjaGVud2VpbiAgenUgIGVpbmVyIFF1YW50aXRhZXQsIApoaW50ZXJmcmFndGUgbm9jaG1hbCBkZW4gV2VnICB1bmQgICB3aWVkZXIgIGFuYWx5c2llcnQgIGRlciAgV2Vpc2UgIHVuZCAgCmdpbmcgbG9zLiBJbSAgV2FsZGUgIHNjaG5pdHQgIGlociAgIGdpbmcgIGxvc2UuICBJbSAgV2FsZCAgc2VpbmUgIFdlaXNlIApXZWcgZGVuIFdlZyBkZXMgV29sZmVzLiBFciBkaXNrdS0gICBnZXNjaG5pdHRlbiBkaWUgV2Vpc2UgZGVzIFdvbGZzLiBFciAKdGllcnRlIG1pdCBpaHIgdWViZXIgZGllIFJlbGV2YW56ICAgYmVoYW5kZWx0ZSAgbWl0ICBpaG0gIGRpZSBCZWRldXR1bmcgCmVpbmVzICBCbHVtZW5zdHJhdXNzZXMgIGZ1ZXIgIGRpZSAgIGVpbmVzICBCbHVtZW5zdHJhdXNzZXMgICBmdWVyICAgZGllIApHcm9zc211dHRlciAgdW5kICBtb3RpdmllcnRlIHNpZSwgICBHcm9zc211dHRlciBnZW9yZG5ldCAgdW5kIG1vdGl2aWVydCAKZWluZW4gIGdlb3JkbmV0ZW4sIGhvZWNoc3RlbnMgYWItICAgaWhyLCAgdW0gIGFtICB6YWVobGJhcnN0ZW4gIEJ1ZW5kZWwgCnphZWhsYmFyZW4gU3RyYXVzcyB6dSB2ZXJrbnVlcGZlbi4gIHp1IGJpbmRlbi4gTWl0dGxlcndlaWxlIGJpbGRldGUgZGVyIApJbnp3aXNjaGVuICBtYWNodGUgIGRlciBXb2xmICBkaWUgICBXb2xmIGRpZSBHcm9zc211dHRlciBlaW5lIFRlaWxtZW5nZSAKR3Jvc3NtdXR0ZXIgIHp1ICBlaW5lciAgVGVpbG1lbmdlICAgdm9uIHNpY2guCnZvbiBzaWNoLiAgCkFscyAgUm90a2FlcHBjaGVuICBhbmthbSwgIGZyYWd0ZSAgIEFscyBSb3RrYWVwcGNoZW4gYW5rYW0sIGJhdCBzaWU6CnNpZTogIkdyb3NzbXV0dGVyLCB3YXJ1bSBoYXN0ICBEdSAgICJHcm9zc211dHRlciwgICB3YXJ1bSAgaGFiZW4gU2llIHNvIApzbyBncm9zc2UgQXVnZW4/IiAgICAgICAgICAgICAgICAgICBncm9zc2UgQXVnZW4/IgoiSWNoICAgaGFiZSAgZ2VyYWRlICBtZWluICBCQUZvZUcgICAiSWNoIGVtcGZpbmcgc29nYXIgbWVpbiBCQWZvZUchIgplcmhhbHRlbiEiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiJHcm9zc211dHRlciwgd2FydW0gIGhhc3QgIER1ICBzbyAgICJHcm9zc211dHRlciwgICB3YXJ1bSAgaGFiZW4gU2llIHNvCmdyb3NzZSBPaHJlbj8iICAgICAgICAgICAgICAgICAgICAgIGdyb3NzZSBPaHJlbj8iIAoiSWNoIGhhYmUgdmVyc3VjaHQsIFBydWVmdW5nc2ZyYS0gICAiSWNoIHZlcnN1Y2h0ZSwgIFVlYmVycHJ1ZWZ1bmdzZnJhLSAgCmdlbiBkdXJjaCBkaWUgVHVlciB6dSBlcmxhdXNjaGVuISIgIGdlbiBkdXJjaCAgZGllIFR1ZXIgenUgZXJsYXVzY2hlbiEiIAoiR3Jvc3NtdXR0ZXIsIHdhcnVtIGhhc3QgRHUgZWluZW4gICAiR3Jvc3NtdXR0ZXIsICB3YXJ1bSBoYWJlbiBTaWUgZWluZQpzbyBncm9zc2VuIE11bmQ/IiAgICAgICAgICAgICAgICAgICBzbyBncm9zc2UgT2VmZm51bmc/IgoiSWNoICBoYWJlICBnZXJhZGUgIHZlcnN1Y2h0LCBkYXMgICAiSWNoIHZlcnN1Y2h0ZSAgc29nYXIsICBkaWUgIFJlZmVrLQpNZW5zYWVzc2VuIHp1IHNjaGx1Y2tlbiEiICAgICAgICAgICB0b3JpdW1tYWhsemVpdCB6dSBzY2hsdWNrZW4hIgpEYXJhdWZoaW4gbWFjaHRlICBzaWNoICBkZXIgIFdvbGYgICBEYXJhdWYgIGJpbGRldGUgIHNpY2ggIGRlciBXb2xmIGRpZSAgCnp1ciBrb252ZXhlbiBIdWVsbGUgdm9uIFJvdGthZXBwLSAgIGtvbXBsZXhlIEJlZGVja3VuZyB2b24gUm90a2FlcHBjaGVuLgpjaGVuLiBFaW4gSmFlZ2VyICBrYW0sICBzYWggIGVpbmUgICBFaW4gIEphZWdlciAga2FtLCAgc2FoICBlaW5lICBsZWVyZQpsZWVyZSBNZW5nZSB2b24gR3Jvc3NtdWV0dGVybiAgaW0gICBRdWFudGl0YWV0ICAgR3Jvc3NtdWV0dGVyICBpbSAgSGF1cwpIYXVzICAgdW5kICBwcm9ibGVtYXRpc2llcnRlICBkaWUgICB1bmQgIHByb2JsZW1hdGlzaWVydGUgICBkaWUgIEZyYWdlLApGcmFnZSwgIGJpcyAgc2llICBpaG0gdHJhbnNwYXJlbnQgICBiaXMgZXMgdHJhbnNwYXJlbnQgd3VyZGUuIAp3dXJkZS4gIApEYW5uICBuYWhtICBlciAgc2VpbiAgTWVzc2VyICB1bmQgICBEYW5uICBuYWhtICBlcyAgc2VpbiBNZXNzaW5zdHJ1bWVudAptYWNodGUgYXVzIGRlbSBXb2xmIGVpbmUgU2Nobml0dC0gICB1bmQgYmlsZGV0ZSAgdm9tIFdvbGYgZWluZSBTY2huaXR0LQptZW5nZS4gRGllICBpbSAgV29sZiBpbnRlZ3JpZXJ0ZW4gICBtZW5nZS4gIERpZSBQZXJzb25lbiwgIGRpZSAgaW0gV29sZgpQZXJzb25lbiAgd3VyZGVuICBzY2hsZXVuaWdzdCB2b24gICBpbnRlZ3JpZXJ0ICB3dXJkZW4sICB3dXJkZW4gIHNvZm9ydAppaG0gc3VidHJhaGllcnQuICAgWnVtIFdvbGYgd3VyZGUgICB2b24gaWhtICBzdWJ0cmFoaWVydC4gIERlbSBXb2xmIGVpbgplaW5lIG1hZWNodGlnZSBNZW5nZSAgdm9uIFN0ZWluZW4gICBsZWlzdHVuZ3NmYWVoaWdlICBRdWFudGl0YWV0IFN0ZWluZQphZGRpZXJ0LiAgRXIgIGZpZWwgIGluIGVpbmVuICB6eS0gICB3dXJkZSBoaW56dWdlZnVlZ3QuIFNpZSBmaWVsIGluIGVpbgpsaW5kZXJmb2VtaWdlbiBjYXJ0ZXNpc2NoZW4gQnJ1bi0gICBjeWxpbmRyaWMgIGNhcnRlc2lzY2hlbiAgZ3V0LCAgIGJpcyAKbmVuLCAgYmlzICBzZWluZSBSZXN0bWVuZ2UgIG5pY2h0ICAgc2VpbiAgVWViZXJyZXN0ICAgbmljaHQgICBpcmdlbmR3aWUKbWVociBsZWJ0ZS4gICAgICAgICAgICAgICAgICAgICAgICAgbGFlbmdlciBsZWJ0ZS4KICAKClplcGh5ciwgZmluZGV0IGRhcyBtYXRoZW1hdGlzY2hlIFJvdGthZXBwY2hlbiBhbGxlaW4gc2Nob24gaGVycmxpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIZXV0ZSBnZWZ1bmRlbiAoVGVkZHksIDI5LiBBcHIgMTk5OCwgMjM6MzQ6MTUpOgp+IyEgcm49WmVwaHlyIHJ0PTg5Mzg4MzUzMSByZz1zY2htYXJybgp+IyEgdGlkPTg5Mzg4MzUzMQpHdXQgZGFzIGR1IGRydWViZXJnZXNjaHJpZWJlbiBoYXN0LCB3YXMgZGFzIE9yaWdpbmFsIHVuZCB3YXMgVW5zaW5uIGlzdCA7KQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhldXRlIGluIGRlciBHcnVmdCAoR29yb2csIDMwLiBBcHIgMTk5OCwgMDk6MzE6MjgpOgpEZXIgR2Vpc3RsaWNoZSBzY2hhdXQgRGlyIHRpZWYgaW4gZGllIEF1Z2VuLgpEZXIgS3JlaXMgd2lyYmVsbmRlciBNZXNzZXIgdmVyc2Nod2luZGV0IHdpZWRlci4KRGVyIFNoYWl0YW4gdmVyZmVobHQgRGljaC4KRGVyIFNoYWl0YW4gdmVyZmVobHQgRGljaC4KTWF0cml4OiBFaW4gU2hhaXRhbiBpc3QgbGVpY2h0IGdlc2Nod2FlY2h0LgpEZXIgU2hhaXRhbiB2ZXJmZWhsdCBEaWNoLgpEZXIgU2hhaXRhbiB2ZXJmZWhsdCBEaWNoLgpEZXIgU2hhaXRhbiB2ZXJmZWhsdCBEaWNoLgpEdSB0cmlmZnN0IGRlbiBTaGFpdGFuIHNlaHIgaGFydC4KCkRhcyB3YXIgd29obCBuaWNodHMgKDsKCkdvcm9nIGxpZWJ0IHNlaW5lbiBIZWlsaWdlbnNjaGVpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJydXN0IG9kZXIgS2V1bGUgLi4uIG9kZXIgLi4uIFNjaHdlcnQ/PyAoU2Nob2tvLCAzMC4gQXByIDE5OTgsIDEwOjQ5OjE1KToKVmxhbmQgaGFsdC4uLiAgCgpEaWVzZXIgT3JrIGdlaG9lcnQgenVyIFN0YWR0d2FjaGUuIApbLi4uXQpBdWZncnVuZCBzZWluZXIgQXVzYmlsZHVuZyB3ZWlzcyBlciBuYXR1ZXJsaWNoIGF1Y2gsIHdpZSBtYW4gYmVzc2VyZQpSdWVzdHVuZyB1bmQgV2FmZmVuIGJlbnV0enQuIEdpYiBpaG0gZWluIGd1dGVzIFNjaHdlcnQgdW5kIGVyIHdpcmQgZXMgbWl0CkZyZXVkZSB6dWVja2VuLgpFciBpc3QgYWJzb2x1dCBmaXQuICgxMDAlKQpFciB0cmFlZ3QgYmVpIHNpY2g6CjQ3MSBNdWVuemVuLgpFaW4gT3JraGVsbSAoYW5nZXpvZ2VuKS4KRWluIFBhYXIgT3Jrc3RpZWZlbCAoYW5nZXpvZ2VuKS4KRWluZSBPcmt3ZXN0ZSAoYW5nZXpvZ2VuKS4KRWluZSBUcm9sbGtldWxlIChnZXp1ZWNrdCkuCkVpbiBoZWxsIGdsYWVuemVuZGVyIFRhbGlzbWFuIChhbmdlem9nZW4pLgoKU2Nob2tvIGtvZW5udGUgd2V0dGVuLCBkYXNzIE1vcmdvdGhzIEtsZXJpa2VyLU9ya3MgYXVjaCBub2NoIG5lbiBCb251cyBhdWYgIAogICAgICAgU2Nod2VydGthbXBmIGhhYmVuLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSXN0IGVyIG51biBkYSBvZGVyIG5pY2h0PyAoQmFyYmFyLCAzMC4gQXByIDE5OTgsIDEwOjUzOjU2KToKQnJpZXNlbHRyaW0gc2FndDogQnJpZXNlbHRyaW0gaXN0IGxlaWRlciBuaWNodCBkYSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIZXV0ZSBnZWZ1bmRlbiAoR3JpbW1ib3JuLCAzMC4gQXByIDE5OTgsIDEyOjQwOjA4KToKfiMhIHJuPVplcGh5ciBydD04OTM4ODM1MzEgcmc9c2NobWFycm4KfiMhIHRpZD04OTM4ODM1MzEKRGVyIFRleHQgaXN0IGRlc2hhbGIgbm9jaCByZWxhdGl2IHZlcnN0YWVuZGxpY2gsIHdlaWwgZXIgdmllbGUgV29lcnRlcgplbnRoYWVsdCwgZGllIG5pY2h0IGViZW4gYXVzIGRlciBBbGx0YWdzc3ByYWNoZSBzdGFtbWVuLiBTb2xjaGUgV29lcnRlciB3ZXJkZW4Kdm9uIEJhYmVsZmlzaCAoc28gaGVpc3N0IGRhcyBQcm9ncmFtbSBhdWYgYWx0YXZpc3RhKSB1bnVlYmVyc2V0enQgdWViZXJub21tZW4KKHVuZCBlcmhhbHRlbiBzaWNoIHNvIGF1Y2ggZnVlciBkaWUgUnVlY2t1ZWJlcnNldHp1bmcpLiBEaWUgRXJnZWJuaXNzZSBtaXQKQWxsdGFnc3RleHRlbiBzaW5kIElNTlNITyBub2NoIHdlc2VudGxpY2ggdmVyYmx1ZWZmZW5kZXIuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEdlZnVuZGVuIDspIChZZW5kaSwgMzAuIEFwciAxOTk4LCAxMjo1MDozMSk6Cn4jISBybj1IYXJkaWwgcnQ9ODkzODU0ODU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzODUwMzYwCkhleSwgRHUga2FubnN0IG5pY2h0IGVyd2FydGVuLCBkYXNzIGRpZSBOZXdiaWVzIGRlbiAiZmluZ2VyIi1CZWZlaGwgc2Nob24Ka2VubmVuLi4uCgpHZWhhZXNzaWcsCiAgICAgICAgICAgIFllbmRpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHZWZ1bmRlbiA7KSAoU2lsdmFuYSwgMzAuIEFwciAxOTk4LCAxODo1MTo0MSk6Cn4jISBybj1IYXJkaWwgcnQ9ODkzODUwNTY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzODUwMzYwCk9jaCwgc28gcmljaHRpZyBndXQga29tbWVuIG5pY2h0IGFiZ2VzdGVsbGUgU2tyaXB0ZSwgd2VubiBtYW4KQnJpZWZlIGFuIGlzX2FyY2ggc2NocmVpYnQuIE1hbiBzb2xsdGUgZXMgbmljaHQgZ2xhdWJlbiwgYWJlciBlcwprb21tdCB0YXRzYWVjaGxpY2ggaW1tZXIgd2llZGVyIHZvci4uLgoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHZWZ1bmRlbiA7KSAoVGhlcmluLCAzMC4gQXByIDE5OTgsIDE4OjUyOjQyKToKfiMhIHJuPVNpbHZhbmEgcnQ9ODkzOTU1MTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzODUwMzYwCm9jaCwgZWluIHp3aXNjaGVuZHVyY2ggZWluZ2VzdHJldXRlcwp3aWxsZQplbnRzb3JnZW4gbGVpY2hlCgp3dWVyZGUgbWljaCBuaWNodCBzdG9lcmVuLCBkZW4gYnJpZWYgZGVubm9jaCBhYnp1c2NoaWNrZW4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHZWZ1bmRlbiA7KSAoU2lsdmFuYSwgMzAuIEFwciAxOTk4LCAxOTowMTowMSk6Cn4jISBybj1UaGVyaW4gcnQ9ODkzOTU1MTYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzODUwMzYwCkluIGVpbmVtIEJyaWVmIGluIGRlbSBEdSBEaWNoIHVlYmVyIG5lbiBhbmdlYmxpY2ggc2NyaXRlbmRlbiAKYW5kZXJlbiBTcGllbGVyIGJlc2Nod2Vyc3Q/CgogIFNpbHZhbmEgLSBoYXR0ZSBkYXMgYXVjaCBzY2hvbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmxhY2gqIChOYWlyb2xmLCAzMC4gQXByIDE5OTgsIDIwOjMxOjU1KToKc29vbyB1bmQgZGFzIHBhc3NpZXJ0IHdlbm4gbWFuIGVpbiBwYWFyIGxldXRlbiBlaW4gZ2V3aXNzZXMgbG9nZmlsZSB2b24gZWluZXIKSG9jaHplaXQgZWluZXIgU2NoaWxka3JvZXRlIHVuZCBlaW5lbSBTdGVyYmV6d2VpdGkgc2NoaWNrdDoKCgpBY3JpbW9uIHRlaWx0IERpciBtaXQ6IElzdCBzY2hvbiBkYS4gNTAwSyEgV293ISBbMjA6MjldClR5cm8gdGVpbHQgRGlyIG1pdDogYW5nZWtvbW1lbiAoNDQ5aykgWzIwOjMwXQpaZXBoeXIgdGVpbHQgRGlyIG1pdDogODg5MCBaZWlsZW4uLi4gcGZ0IFsyMDozMF0KCjotKSkpKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBEcm9tIHVuZCBkZXIgWndlcmdlbmp1dy4gYmVzY2hlaXNzZW4uLi4gKFRoZXJpbiwgMzAuIEFwciAxOTk4LCAyMDozOToyNSk6CkR1IGtsb3Bmc3QgcHJ1ZWZlbmQgYXVmIGVpbmVzIFBsYXRpbnJpbmdzIE9iZXJmbGFlY2hlIGhlcnVtLiBJbSBHZWlzdAplcnRhc3Rlc3QgRHUgYXVjaCBkaWUgdGllZmVyZW4gU3RydWt0dXJlbi4uLgpEZXIgUGxhdGlucmluZyBiZXN0ZWh0IHZvbGxzdGFlbmRpZyBhdXMgU2lsYmVyLgoKCkR1IGtsb3Bmc3QgcHJ1ZWZlbmQgYXVmIGVpbmVzIFZlcmxvYnVuZ3NyaW5ncyBPYmVyZmxhZWNoZSBoZXJ1bS4gSW0gR2Vpc3QKZXJ0YXN0ZXN0IER1IGF1Y2ggZGllIHRpZWZlcmVuIFN0cnVrdHVyZW4uLi4KRGVyIFZlcmxvYnVuZ3NyaW5nIGJlc3RlaHQgdm9sbHN0YWVuZGlnIGF1cyBMZWRlci4KClNvd2FzIGFiZXIgYXVjaC4uLgoKVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBoZXV0ZSBpbiBkZXIgR3J1ZnQgKEtleSwgMzAuIEFwciAxOTk4LCAyMToyNzo0Mik6Cn4jISBybj1Hb3JvZyBydD04OTM5MjE0ODggcmc9c2NobWFycm4KfiMhIHRpZD04OTM5MjE0ODgKS2xlcmlrZXIgYWJ3ZXJ0ZW4gOykpKQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBEb29mZSBad2VyZ2Vua2F0YWtvbWJlbiAoR3JpbW1ib3JuLCAzMC4gQXByIDE5OTgsIDIzOjMzOjE0KToKfiMhIHJuPVd1ciBydD04OTM5Njk3NjIgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD04OTMyNDA1MzIKSHVjaD8gSWNoIGhlaXNzZSBhYmVyIGdhciBuaWNodCBTY2h1a28uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVtIDc6MTUgaW0gTUcgKFp1ZXJpbGV1LCAgMS4gTWFpIDE5OTgsIDA3OjE3OjQxKToKSGksCk5hIHRvbGwgaWNoIGthbm4gbmljaHQgc2NobGFmZW4sIGtvbW1lIGlucyBNRyB1bmQgd2FzIGxhZXVmdCBkYSA/IFdpZSBpbiBhbHRlbgpaZWl0ZW4sIHdvIGRhcyBNRyBub2NoIGtsZWluZXIgd2FyLi4uaGVoZS4uCgo+IGt3ZXIgCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBGcmUsICAxLiBNYWkgMTk5OCwgMDc6MTU6MjMgKDUgVGVpbG5laG1lcikKCkVtYmUuLi4uLi4uLi4uLkoucyBNYXBwaS4uLi4uLi4uLi5KLnMgWmluby4uLi4uLi4uLi4uSi56IFJlZG5vc2UuLi4uLi4uLkouUwpadWVyaWxldS4uLi4uLi4uLk0KCj4gaWRsZXMKWmlubyAgICAgICAgICAgICAgICAgICAgOiBJZGxlemVpdCAgMTU6Mjk6NTMgCkVtYmUgICAgICAgICAgICAgICAgICAgIDogSWRsZXplaXQgIDAyOjA0OjIzIApSZWRub3NlICAgICAgICAgICAgICAgICA6IElkbGV6ZWl0ICAxZCAyMjoxMTo1NCAKTWFwcGkgICAgICAgICAgICAgICAgICAgOiBJZGxlemVpdCAgMWQgMTM6MzE6MTMgCgpBbGxlIGFtIGlkbGVuLCBzY2hvbiBzZWl0IGV3aWdrZWl0ZW4gPTooCgp0c2NoYXUgQWxhaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkludGltZXMgTW9yZ2VuR3JhdWVuIChGcmV1bmQsICAxLiBNYWkgMTk5OCwgMDg6MTk6MzMpOgpTbyBpbnRpbSB3YXIgZXMgbGFuZ2UgbmljaHQgbWVocjoKCiBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRnJlLCAgMS4gTWFpIDE5OTgsIDA4OjE2OjUwICgyIFRlaWxuZWhtZXIpClppbGx1cy4uLi4uLi4uLi4uUyBGcmV1bmQuLi4uLi4uLi4uLkUKCkljaCBoYWIgWmlsbHVzIGdsZWljaCBtYWwgZ2VzY3JpcHRkaW5nc3QuLi4KCkZyZXVuZCAoaW4gQmxhY2spLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEludGltZXMgTW9yZ2VuR3JhdWVuIChHcmltbWJvcm4sICAxLiBNYWkgMTk5OCwgMjM6NTc6MzYpOgp+IyEgcm49RnJldW5kIHJ0PTg5NDAwMzU3MyByZz1zY2htYXJybgp+IyEgdGlkPTg5NDAwMzU3MwpXYXMgaGFidCBpaHIgYWxsZSBmdWVyIFByb2JsZW1lIGRhc3MgaWhyIG1pdHRlbiBpbiBkZXIgTmFjaHQgYXVmc3RlaHQ/CgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoVGVkZHksICAyLiBNYWkgMTk5OCwgMDQ6MTQ6MDYpOgo+IFRCRiBydWZ0OiB1bSBoaWxmCgpEdSBzY2hhdXN0IHRpZWYgaW4gZGllIEt1Z2VsLCBsYW5nc2FtIGxvZXN0IHNpY2ggZGVyIG1pbGNoaWdlIFJhdWNoIGluIAppaHIgdW5kIER1IHNpZWhzdCA6CkR1IHNjaHdpbW1zdCBpbiBkZW4gZWlzaWdlbiBXYXNzZXJuIGRlcyBXZWloZXJzLCBkZXIganVzdCB1bnRlcgpEaXIgZWluIExvY2ggaW4gZGVyIEVpc2RlY2tlIGhhdC4KRGFzIFVmZXIgaXN0IGR1cmNoIGVpbmUgdW5kdXJjaGRyaW5nbGljaGUgUmllZGdyYXN3aWVzZSB2b24gRGlyCmdldHJlbm50LgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIG5vcmRlbiwgbm9yZG9zdGVuIHVuZCBzdWVkb3N0ZW4uClRCRiBkaWUgUGFydHlib21iZS4KCltBbGxnZW1laW46VGVkZHldIFRCRiwgZHUgaGFzdCBlaW4gUHJvYmxlbQo+IFtBbGxnZW1laW46VEJGXSBpY2ggd2Vpc3MuLi4uCltUcnZlczpMaWxsZWJyb3JdIG5hIGFsc28sIGRhIGZpbmRldCBzaWNoIHNjaG9uIGVpbmUgZnVlciBkaWNoIHRlZGR5IDspCltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIFRiZiB1bWdlYnJhY2h0LgpbQWxsZ2VtZWluOlRlZGR5XSBBbHNvIGljaCB3ZWlzcyBuaWNodCwgd2llIG1hbiBkYSBub2NoIHJhdXMga29tbXQsIGljaCB3YXIgZGEKW0FsbGdlbWVpbjpUZWRkeV0gZ2x1ZWNraWNoZXJ3ZWlzZSBub2NoIG5pZSBkcmluCj4gW0FsbGdlbWVpbjpUZWRkeV0gT2gsIFByb2JsZW0gZ2Vsb2VzdCA7KQo+IFtBbGxnZW1laW46TGlsbGVicm9yXSBrbGFzc2UgOikKW0JlaWxlaWQ6VGVkZHldIGJlaWxlaWQgOi0oCgoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkphamEgKFRlZGR5LCAgMi4gTWFpIDE5OTgsIDA1OjA3OjMxKToKW0FsbGdlbWVpbjpLZXkgZ3J1ZWJlbHQgPDA1OjAxOjA4Pl0KW0FsbGdlbWVpbjpLZXldIGhtbSBzZWggaWNoIGRhcyByaWNodGlnPyB3aXIgaGFiZW4gNSB1aHI/IDwwNTowMToxNj4KW0FsbGdlbWVpbjpUZWRkeV0gSmVwcCA8MDU6MDE6MjA+CltBbGxnZW1laW46THVnXSBKYXUgPDA1OjAxOjI0PgpbQWxsZ2VtZWluOktleSB3b2xsdGUgZG9jaCBudXIgYmlzIDIzOjAwIGJsZWliZW4gLi4uLiA8MDU6MDE6MzA+XQpbQWxsZ2VtZWluOlRlZGR5XSBBQkVSOiA8MDU6MDE6MzI+CltBbGxnZW1laW46S2V5XSBJcmdlbmR3YXMgaXN0IGRhIGZhbHNjaCBnZWxhdWZlbiAuLi4gLikgPDA1OjAxOjQyPgpbQWxsZ2VtZWluOlRlZGR5XSBXaXIgc2luZCBuY2lodCBzdWVjaHRpZyA8MDU6MDE6NDY+CltBbGxnZW1laW46S2V5IG5pY2t0IFRlZGR5IHp1IDwwNTowMTo1Mj5dCltBbGxnZW1laW46S2V5XSBOYXR1ZXJsaWNoIG5pY2h0IDwwNTowMTo1ND4KW0FsbGdlbWVpbjpMdWddIERPQ0ghIDwwNTowMTo1Nj4KW0FsbGdlbWVpbjpOYWNodHdpbmQga2FubiBqZWRlcnplaXQgYXVmaG9lcmVuLiA8MDU6MDE6NTY+XQpbQWxsZ2VtZWluOkx1Z10gRE9DSCEgPDA1OjAxOjU4PgpbQWxsZ2VtZWluOkx1Z10gRE9DSCEgPDA1OjAyOjAwPgpbQWxsZ2VtZWluOktleSBrYW5uIGplZGVyenRlaXQgYXVmaG9yZW4gOyggPDA1OjAyOjAyPl0KW0FsbGdlbWVpbjpLZXkgZ3JpbnN0IE5XIGFuIDwwNTowMjowNj5dCltBbGxnZW1laW46S2V5IGt1c2NoZWx0IHNpY2ggYW4gTHVnIDwwNTowMjoxND5dCltBbGxnZW1laW46TmFjaHR3aW5kXSBzY2huZWxsZXIgOikgPDA1OjAyOjE0PgpbQWxsZ2VtZWluOkxpbGxlYnJvciBsYWNodCA8MDU6MDI6MTg+XQpbQWxsZ2VtZWluOkdlbmVzeXMgZ3JpbnN0IEtFWSAodXBzLi4uIDpvKSApIHVuZCBOVyBhbi4uLi4gPDA1OjAyOjI4Pl0KW0FsbGdlbWVpbjpMdWddIElyZ2VuZHdhcyBsYWV1ZnQgaGllciBmYWxzY2ggPDA1OjAyOjM0PgpbQWxsZ2VtZWluOkx1Z10gSWNoIGJpbiBibG9zcyB6dSBtdWVkZSBmZXN0enVzdGVsbGVuIHdhcyA8MDU6MDI6NTY+CltBbGxnZW1laW46S2V5XSBIbW0gYWJlciBqZXR6dCB3ZWlzcyBpY2ggd2VuaWdzdGVucyB3aWVzbyBpY2ggaHVuZ2VyIHVuZCBkdXJzdApbQWxsZ2VtZWluOktleV0gaGFiIC4uLiA9OykgPDA1OjAyOjU4PgpbQWxsZ2VtZWluOktleSBncmluc3QgTHVnIGRhcyBrZW5uZW5kIGFuIDwwNTowMzowOD5dCltBbGxnZW1laW46TmFjaHR3aW5kXSBkdSBiaXN0IGhpZXIgZmFsc2NoLiB3aXIgc2luZCBkaXN6aXBsaW5pZXJ0ZSBtZW5zY2hlbiwKW0FsbGdlbWVpbjpOYWNodHdpbmRdIGRpZSBpaHJlIHByb2JsZW1lIGltIGdyaWZmIGhhYmVuLiBkdSBiaXN0IGVpbiBzdWNodGllLApbQWxsZ2VtZWluOk5hY2h0d2luZF0gbHVnIDopIDwwNTowMzowOD4KW0FsbGdlbWVpbjpGaXNoXSBnZW5hdSBpY2ggaGFiIGF1Y2ggaHVuZ2VyIHVuZCBkdXJzdCAuLi4gOykgPDA1OjAzOjE0PgpbQWxsZ2VtZWluOktleV0gaGF0IG1hbCB3ZXIgbmUgY3Vycnl3dXJzY2h0IHVuIG5lbiBiaWVyPyA6KSA8MDU6MDM6MzI+CltBbGxnZW1laW46THVnXSBJY2ggaGVpc3NlIEx1ZywgYWVoIEcuUy4gdW50IGJpbiBNdWRzdWVjaHRpZyA8MDU6MDM6MzY+CltBbGxnZW1laW46TmFjaHR3aW5kXSB3ZW5uIGljaCBzY2hvbiB1bmQgbWl0ICd0JyBzZWhlLCBpc3QgYWxsZXMga2xhciA6KQpbQWxsZ2VtZWluOk5hY2h0d2luZF0gPDA1OjAzOjU0PgpbQWxsZ2VtZWluOktleSBidXV1dWhoaHR0dHQgPDA1OjAzOjU0Pl0KW0FsbGdlbWVpbjpEaG9qYWt0XSBobSwgaWNoIGZyYWcgbWljaCBzb3dpZXNvLCB3YXMgaWhyIHp1IHNvIG5hY2h0c2NobGFmZW5lcgpbQWxsZ2VtZWluOkRob2pha3RdIHplaXQgYWxsZSBoaWVyIG1hY2h0LiA8MDU6MDQ6MTI+ICAgICAgICAgICAgIApbQWxsZ2VtZWluOktleV0gSG1tIGludGVyZXNzYW50ZSBGcmFnZSBEaG9qKiA8MDU6MDQ6MjY+CltBbGxnZW1laW46RGhvamFrdCBwcm9nZ3QgYW4gc2VpbmVtIFJlY2huZXIgdW5kIGlzdCBlaCBudXIgc28gaGllciBlaW5nZWxvZ2d0LgogICAgICAgICAgIDwwNTowNDoyOD5dCltBbGxnZW1laW46S2V5IGdydWViZWx0IDwwNTowNDozMD5dCltBbGxnZW1laW46TmFjaHR3aW5kXSBndXQgZGFzIGR1IGF1Y2ggZGEgYmlzdCwgdW0gZGFzIHp1IGZyYWdlbiA6KSA8MDU6MDQ6MzI+CltBbGxnZW1laW46S2V5IGlzdCBlaWdlbnRsaWNoIGF1Y2ggbnVyIHNvIGVpbmdlbG9nZ3QgLi4uIDopIDwwNTowNDo0Mj5dCltBbGxnZW1laW46VGVkZHkgZGV1dGV0IGRpc2tyZXQgYXVmIGRpZSBFYmVuZTogbXVkc3VlY2h0aWcgPDA1OjA1OjM0Pl0KCgoKSmFqYSwgZGFzIHVlYmxpY2hlIGhhbHQgOykKClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCZXNjaHdlcmRlIHVlYmVyIExVRyEgKEZyZXVuZCwgIDIuIE1haSAxOTk4LCAxMzoyNDo0MCk6Cn4jISBvbj1MdWcgb3Q9ODkzODAwMTgxIG9nPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KCk1vaW4sCgppY2ggYmVzY2h3ZXIgbWljaCB1ZWJlciBtaWNoIHNlbGJzdCwgd2VpbCBlcyBqYSBzb25zdCBrZWluZXIgdHV0LgpCdXV1dWguCgpGaWRLRwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCZXNjaHdlcmRlIHVlYmVyIExVRyEgKEZyZXVuZCwgIDIuIE1haSAxOTk4LCAxMzoyNDo0OSk6Cn4jISBvbj1aaW5vIG90PTg5MzgwMDM1MiBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISBybj1MdWcgcnQ9ODkzODAwMTgxIHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD04OTM4MDAxODEKRGEgTHVnIGVzIG9mZmVuYmFyIHNjaG9uIHNlbGJlciBlaW5zaWVodCwgaGllciBub2NoIG1hbCBmdWVyIGFsbGU6CgpMdWcgaXN0IGVpbiBQdWxsZXJwb3R0LCBTYW5kaG9ja2VyLCBQaWVzZXBhbXBlbCwgdm9sbGdlZnJlc3NlbmVyIEZldHRzYWNrLApzdHJvaGR1bW1lciBIb2hsa29wZiwgZXJiYWVybWxpY2hlIEZpbHpsYXVzLCB0YWxlbnRsb3NlciBLYWVzZWthY2tlciwgYmx1dGlnZXIKQW1hdGV1ciB1bmQgZWxlbmRlciBBbmZhZW5nZXIuIEphd29obCEKClppbm8gKHdlaXNzIGVzIGdlbmF1KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCZXNjaHdlcmRlIHVlYmVyIExVRyEgKEZyZXVuZCwgIDIuIE1haSAxOTk4LCAxMzoyNDo1MSk6Cn4jISBvbj1MdWcgb3Q9ODkzODAxOTM0IG9nPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHJuPVppbm8gcnQ9ODkzODAwMzUyIHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD04OTM4MDAxODEKVGphLAoKd28gZXIgcmFjaHQgaGF0LCBoYXQgZXIgcmVjaHQuCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJlc2Nod2VyZGUgdWViZXIgTFVHISAoRnJldW5kLCAgMi4gTWFpIDE5OTgsIDEzOjI0OjUyKToKfiMhIG9uPUdyaW1tYm9ybiBvdD04OTM4MDgyMzIgb2c9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgcm49THVnIHJ0PTg5MzgwMTkzNCByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9ODkzODAwMTgxCkRlaW5lIFNlbGJzdGdlcmVjaHRpZ2tlaXQgZ2VodCBtaXIgZ2V3YWx0aWcgYXVmIGRpZSBOZXJ2ZW4uIE5hIHNjaG9lbiwgRHUKa2xhZ3N0IERpY2ggc2VsYmVyIGFuLiBBYmVyIHdhcyBoZWlzc3QgZGFzIHNjaG9uPyBTYWdzdCBEdSBpcmdlbmRldHdhcyB6dW0KWnVzdGFuZCBkZXIgaGV1dGlnZW4gSnVnZW5kPyBadSBzY2hsZWNodGVyIEJpbGR1bmcsIERyb2dlbiB1bmQKSnVnZW5ka3JpbWluYWxpdGFldD8gVHV0IERpciBkYXMgbmljaHQgbGVpZD8gV2lsbHN0IER1IERpY2ggdm9yIGRpZXNlcgpWZXJhbnR3b3J0dW5nIGV0d2EgZHJ1ZWNrZW4/IFVuZCBkYXMgT3pvbmxvY2g/IERlciBUcmVpYmhhdXNlZmZla3Q/IERhcwpBYmhvbHplbiBkZXIgUmVnZW53YWVsZGVyPyBIYXN0IER1IGRhbWl0IGV0d2EgbmljaHRzIHp1IHR1bj8KClVuZCBFbCBOaW5vISBNaWNoIHd1ZXJkZSBtYWwgaW50ZXJlc3NpZXJlbiwgd2llIER1IERpY2ggZGEgcmVjaHRmZXJ0aWdlbgp3aWxsc3QuIERpZSBnYW56ZW4gVWViZXJzY2h3ZW1tdW5nZW4sIFN0dWVybWUsIHZlcmRvcmJlbmVuIEZlcmllbi4uLiBUdXQgRGlyCmRhcyB3ZW5pZ3N0ZW5zIGxlaWQ/IEhvZXIgYXVmIEF1c2ZsdWVjaHRlIHp1IG1hY2hlbiB1bmQgc2FnIGVzIGRldXRsaWNoOgpFbnNjaHVsZGlnc3QgRHUgRGljaCBqZXR6dCBmdWVyIEVsIE5pbm8gb2RlciBpc3QgRGlyIGRhcyBhdWNoIGVnYWw/CgpEaWUgc3BhbmlzY2hlIElucXVpc2l0aW9uLiBOZXJvLiBBdHRpbGEuIERzY2hpbmdpcyBLaGFuLiBEZXIgRHJlaXNzaWdqYWVocmlnZQpLcmllZy4gRGllIFBlc3QuIEhpcm9zaGltYS4gSGVsbXV0IEtvaGwuIElyZ2VuZGplbWFuZCBtdXNzIGRhcmFuIHNjaHVsZCBzZWluLAp1bmQgdmVyZGFtbXQgbm9jaCBtYWwsIGljaCBmaW5kZSwgTHVnIHNpZWh0IGdlbmF1IHdpZSBkaWVzZXIgJ2lyZ2VuZGplbWFuZCcKYXVzLiBLb21tIGhlciwgTHVnLCBzdGVsbCBEaWNoIHdpZSBlaW4gTWFubiBEZWluZXIgVmVyYW50d29ydHVuZzogV28gZ2VuYXUKc3RlaHN0IER1PwoKVW5kIGRlciBIaXR6ZXRvZCBkZXMgVW5pdmVyc3VtcywgZGllc2VzIGdhbnplIFpldWNoLiBJY2ggaG9mZmUgd2lya2xpY2gsCndlbmlnc3RlbnMgZGFzIHR1dCBEaXIgbGVpZC4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQmVzY2h3ZXJkZSB1ZWJlciBMVUchIChGcmV1bmQsICAyLiBNYWkgMTk5OCwgMTM6MjQ6NTMpOgp+IyEgb249THVnIG90PTg5MzgwODM0MyBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISBybj1HcmltbWJvcm4gcnQ9ODkzODA4MjMyIHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD04OTM4MDAxODEKSG0sCgppY2ggZGFjaHRlLCBkYXNzIG1pciBFbCBOaW5pbyBlY2h0IGd1dCBnZWx1bmdlbiBpc3QgOykgVW5kIGRpZSBJbnF1aXNpdGlvbiB3YXIKZWluIGZsYW1tZW5kZXIgRXJmb2xnLgpXYXMgZ2lidCBlcyBkYSB6dSBtZWNrZXJuPwoKRmlkS0cgCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQmVzY2h3ZXJkZSB1ZWJlciBMVUchIChGcmV1bmQsICAyLiBNYWkgMTk5OCwgMTM6MjQ6NTQpOgp+IyEgb249QWxib2luIG90PTg5Mzg0NjQzMSBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISBybj1HcmltbWJvcm4gcnQ9ODkzODA4MjMyIHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD04OTM4MDAxODEKaWNoIGJlc2Nod2VyZSBtaWNoIHVlYmVyIEdyaW1tYm9ybiwgZXIgaGF0IGRhcyAqaXJvbmllIG9mZiogdmVyZ2Vzc2VuLgpzdGVpbmlndCBpaG4hCkFsYm9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQmVzY2h3ZXJkZSB1ZWJlciBMVUchIChGcmV1bmQsICAyLiBNYWkgMTk5OCwgMTM6MjQ6NTUpOgp+IyEgb249UHJhIG90PTg5Mzg0NjUxNCBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISBybj1BbGJvaW4gcnQ9ODkzODQ2NDMxIHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD04OTM4MDAxODEKdW5kIGF1c3NlcmRlbSBoYXQgZXIgaW1tZXIgbm9jaCBuaWNodCBhdWYgZWluZSBNYWlsIGdlYW50d29ydGV0LCBkaWUKaWNoIGlobSB2b3JnZXN0ZXJuIGdlc2NocmllYmVuIGhhYmUhIEtyZXV6aWd0IGlobiEKClByYS4gV2Flc2NodCBkcmVja2lnZSBTb2NrZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBCZXNjaHdlcmRlIHVlYmVyIExVRyEgKEZyZXVuZCwgIDIuIE1haSAxOTk4LCAxMzoyNDo1Nik6Cn4jISBvbj1SYW50YW5wbGFuIG90PTg5Mzg0NjgzNSBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISBybj1QcmEgcnQ9ODkzODQ2NTE0IHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD04OTM4MDAxODEKCk5vYm9keSBleHBlY3RzIHRoZSBzcGFuaXNoIElucXVpc2l0aW9uICEhIQoKV2lyIGhhdHRlbiBtYWwgbmVuIEh1bmQgbWl0IGRlbSBOYW1lbiBOaW5vLCBzb2xsIHVucyBkYXMgZXR3YXMgc2FnZW4uLi4/CgpJY2ggZnVlcmNodGUgamEsIGFiZXIgbGVpZGVyIHdlaXNzIGljaCBuaWNodCB3YXMuCgpVbmQgZnVlciBlaW5lbiBpcmdlbmRqZW1hbmQgaGFsdGUgaWNoIEx1ZyBmdWVyIGRlZmluaXRpdiB6dSBhbHQgIQoKT2UqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCZXNjaHdlcmRlIHVlYmVyIExVRyEgKEZyZXVuZCwgIDIuIE1haSAxOTk4LCAxMzoyNDo1Nyk6Cn4jISBvbj1SYW50YW5wbGFuIG90PTg5Mzg0NjkwMiBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISBybj1SYW50YW5wbGFuIHJ0PTg5Mzg0NjgzNSByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9ODkzODAwMTgxClVuZCBmdWVyIG1laW5lbiBTYXR6YmF1IGthbm4gaWNoIG5peCBkYWZ1ZXIgdHVuIHp1IGhhYmVuIHNlaW4uLi4KCk9lKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQmVzY2h3ZXJkZSB1ZWJlciBMVUchIChGcmV1bmQsICAyLiBNYWkgMTk5OCwgMTM6MjQ6NTgpOgp+IyEgb249RGFtaWVuIG90PTg5Mzg1NzQ4NiBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISBybj1SYW50YW5wbGFuIHJ0PTg5Mzg0NjgzNSByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9ODkzODAwMTgxCkljaCBtb2VjaHRlIG1pY2ggdWJlciBPZXR0aS9SYW50YW5wbGFuIGJlc2Nod2VyZW4uLi5uYWphLCB3aWUgYXVjaCBpbW1lciwKYXVmIGFsbGUgRmFlbGxlIGlzdCA+Tm9ib2R5IGV4cGVjdHMgdGhlIHNwYW5pc2ggSW5xdWlzaXRpb24hPCBpbW1lciBub2NoCihjKSBieSBOYWNodHdpbmQgdW5kIG1pci4gKEphamEsIGRpZSBndXRlbiBhbHRlbiBaZWl0ZW4uLi4pCgpEYW1pZW4KLT4gU2NobWFycm4gKHdhbm4gd2lyZCBkZXIgVGhyZWFkIGVpZ2VudGxpY2ggdmVybGVndD8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBCZXNjaHdlcmRlIHVlYmVyIExVRyEgKEZyZXVuZCwgIDIuIE1haSAxOTk4LCAxMzoyNDo1OSk6Cn4jISBvbj1BbHBoYSBvdD04OTM4NjA4NDQgb2c9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgcm49RGFtaWVuIHJ0PTg5Mzg1NzQ4NiByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9ODkzODAwMTgxCkhtLAooYykgYnkgTW9udHkgUC4uLgpvZGVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQmVzY2h3ZXJkZSB1ZWJlciBMVUchIChGcmV1bmQsICAyLiBNYWkgMTk5OCwgMTM6MjU6MDApOgp+IyEgb249THVnIG90PTg5Mzg4MDg0MyBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISBybj1SYW50YW5wbGFuIHJ0PTg5Mzg0NjgzNSByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9ODkzODAwMTgxCkFlaCwKCk9ldHRpIC0gRHUgU2Nod2VpbiEgSWNoIHVuZCBhbHQuLi4KCgpHcnVtbWVsCkx1ZwogUC5TLjogVGF0dGVyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBCZXNjaHdlcmRlIHVlYmVyIExVRyEgKEZyZXVuZCwgIDIuIE1haSAxOTk4LCAxMzoyNTowMSk6Cn4jISBvbj1Bc3RhciBvdD04OTM5MzcxNzcgb2c9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgcm49QWxwaGEgcnQ9ODkzODYwODQ0IHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD04OTM4MDAxODEKSnVwCgpBc3RhciAoZWluc2lsYmlnKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQmVzY2h3ZXJkZSB1ZWJlciBMVUchIChGcmV1bmQsICAyLiBNYWkgMTk5OCwgMTM6MjU6MDIpOgp+IyEgb249T3ZlcmxvcmQgb3Q9ODk0MDY1OTg1IG9nPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHJuPUdyaW1tYm9ybiBydD04OTM4MDgyMzIgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTg5MzgwMDE4MQpudXIgbWFsIHNvOiBFbnRyb3BpZXRvZCwgbmljaHQgSGl0emV0b2QuIEhpdHpldG9kIGlzdCBhbmdlbmVobWVyIHNjaGFldHplIGljaAptYWwuLi4KCk92aSBzY2htYXJybmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQmVzY2h3ZXJkZSB1ZWJlciBMVUchIChHcmltbWJvcm4sICAyLiBNYWkgMTk5OCwgMTY6MjI6MTkpOgp+IyEgcm49RnJldW5kIHJ0PTg5NDEwODMwMiByZz1zY2htYXJybgp+IyEgdGlkPTg5MzgwMDE4MQpEYXMga29tbXQgZHJhdWYgYW4gb2IgRHUgZGFzIFdlbHRhbGwgYWxzIHB1bHNpZXJlbmQgb2RlciBudXIgYWxzIGV4cGFuZGllcmVuZAphbnNpZWhzdC4gVm9uIGRlciBGcmFnZSBkZXMgTmV1dHJvbmVuemVyZmFsbHMgbWFsIHp1IHNjaHdlaWdlbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCBmcmFndDogVW5kIHdpZSBob2NoIHNjaGFldHp0IERVIGRpZSBNYXNzZSBkZXMgV2VsdGFsbHM/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBCZXNjaHdlcmRlIHVlYmVyIExVRyEgKEdub21lLCAgMy4gTWFpIDE5OTgsIDAwOjAzOjA1KToKfiMhIHJuPUdyaW1tYm9ybiBydD04OTQxMTg5Mzkgcmc9c2NobWFycm4KfiMhIHRpZD04OTM4MDAxODEKIi4uLmZyYWd0OiBVbmQgd2llIGhvY2ggc2NoYWV0enQgRFUgZGllIE1hc3NlIGRlcyBXZWx0YWxscz8iCgpldHdhIDEwKio4MCBhdG9tZS4KCmduT21lIGZyYWd0OiBpbnRlcmVzc2llcnQgZGFzIHVlYmVyaGF1cHQgZWluZW4/IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEN5cmF4IGlzdCBqZXR6dCBlaW4gTWFnaWVyISAoQW5hdG9sLCAgMy4gTWFpIDE5OTgsIDAxOjE2OjU0KToKfiMhIHJuPU1lcmxpbiBydD04OTQxNDg4NTcgcmc9c3R1ZmVuCn4jISB0aWQ9ODk0MTQ4ODU3ClN0aW1tdCwgZXIga29lbm50ZSB2ZXJtdXRsaWNoIERlaW4gU29obiBzZWluLgoKQW5hdG9sICpwcnVzdCogOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCZXNjaHdlcmRlIHVlYmVyIExVRyEgKEppbWRpZ3JpeiwgIDMuIE1haSAxOTk4LCAxNTozMjowMyk6Cn4jISBybj1Hbm9tZSBydD04OTQxNDY1ODUgcmc9c2NobWFycm4KfiMhIHRpZD04OTM4MDAxODEKU28gaG9jaCA/PwoKSWNoIGRlbmtlIGljaCBoYWIgbWFsIGdlaG9lcnQgZGllCkFuemFobCBkZXIgRWxla3Ryb25lbiBpbSBVbml2ZXJzdW0gaXN0IHNvIAp1bSBkaWUgMTBeMzIsIEF0b21lIG11ZXNzdGUgZXMgYWxzbwpub2NoIHdlbmlnZXIgZ2ViZW4sIGFiZXIga2FubiBhdWNoIHNlaW4sCmRhc3MgaWNoIG1pY2ggZ2V0YWV1c2NodCBoYWIgKmdydWViZWwqLi4uLgoKQ2lhbywKIEpkRwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaHVjaCE/IChQYWtlLCAgMy4gTWFpIDE5OTgsIDIxOjAwOjE2KToKdW50IHRpY2h5CkVpbiBodWVic2NoZXIga3JhZWZ0aWcgYXVzc2VoZW5kZXIgS2F0ZXIgbmFtZW5zIFRpY2h5LiBFcgpnZWhvZXJ0IFBha2UuIEVyIHNjaGF1dCBEaWNoIG1pdCBsZXVjaHRlbmRlbiBBdWdlbiBhbiB1bmQKc2NobnVycnQgc2FuZnQgdm9yIHNpY2ggaGluLgpFciBpc3QgYWJzb2x1dCBmaXQuOz4gc2NoYWV0eiB0aWNoeQpEdSBiaXN0IHN0YWVya2VyIGFscyBUaWNoeS4KVmVyZ2xpY2hlbiBtaXQgVGljaHkgYmlzdCBEdSBydWVzdHVuZ3Nsb3MuCkRpZSBXYWZmZSBUaWNoeXMgaXN0IHZpZWwgYmVzc2VyIGFscyBEZWluZS4KVGljaHkgaXN0IGV0d2EgMWNtIGdyb3NzLgpyCmljaCBrYW5uIG1pY2ggamEgaXJyZW4sIGFiZXIgaWNoIGhhYmUga2F0ZXIgZ3JvZXNzZXIgaW4gZXJpbm5lcnVuZy4uLgoKUGFrZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQmVzY2h3ZXJkZSB1ZWJlciBMVUchIChHcmltbWJvcm4sICAzLiBNYWkgMTk5OCwgMjE6Mzg6NDYpOgp+IyEgcm49R25vbWUgcnQ9ODk0MTQ2NTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzODAwMTgxCkhtbSwgaWNoIGhhYiBqZXR6dCBlaW4gcGFhciBCdWVjaGVyIGdld2FlbHp0LCAiYXRvbWUiIGFscyBNYXNzZW5laW5oZWl0IGlzdAp1bmJla2FubnQuIDotKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBCZXNjaHdlcmRlIHVlYmVyIExVRyEgKEdub21lLCAgMy4gTWFpIDE5OTgsIDIyOjI3OjI1KToKfiMhIHJuPUdyaW1tYm9ybiBydD04OTQyMjQzMjYgcmc9c2NobWFycm4KfiMhIHRpZD04OTM4MDAxODEKSmRHOiBkaWUgc29ubmUgaGF0IHNjaG9uIDEwKiozMCBrZy4uLiAKCmdyaW1taTogYXJnbCwgaWNoIGhvZmZlLCBuZWluLCBpY2ggcmF0ZSBlaW5mYWNoIG1hbCwKZGFzcyBkYXMgbmljaHQgZXJuc3QgZ2VtZWludCB3YXIgOy0pCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVjaHRzY2hyZWlicmVmb3JtIGRpZSAxMDkzLiAoWmVwaHlyLCAgMy4gTWFpIDE5OTgsIDIyOjQ5OjM5KToKQW5nZWJsaWNoIHdvbGxlbiBkaWUgRW5nbGFlbmRlciBudSBqYSBhdWNoLi4gOykgCgogSW4gdGhlIGZpcnN0IHllYXIsICdzJyB3aWxsIGJlIHVzZWQgaW5zdGVhZCBvZiB0aGUgc29mdCAnYycuClNlcnRhaW5seSBzaXZpbCBzZXJ2YW50cyB3aWxsIHJlc2VpdmUgdGhpcyBuZXdzIHdpdGggam95LiBBbHNvLAp0aGUgaGFyZCAnYycgd2lsbCBiZSByZXBsYXNlZCB3aXRoICdrJy4gTm90IG9ubHkgd2lsbCB0aGlzIGtsZWFyCnVwIGtvbmZ1c2lvbiwgYnV0IHR5cGUgd3JpdGVycyBrYW4gaGF2ZSBvbmUgbGVzcyBsZXR0ZXIuCiBUaGVyZSB3aWxsIGJlIGdyb3dpbmcgcHVibGlrIGVudGh1c2lhc20gaW4gdGhlIHNva29uZCB5ZWFyLAp3aGVuIHRoZSB0cm91Ymxlc29tZSAncGgnIHdpbGwgYmUgcmVwbGFzZWQgYnkgJ2YnLiBUaGlzIHdpbGwKbWFrZSB3b3JkcyBsaWtlICdmb3RvZ3JhZicgMjAgcGVyIHNlbnQgc2hvcnRlci4KIEluIHRoZSB0aGlyZCB5ZWFyLCBwdWJsaWsgYWtzZXB0YW5zZSBvZiB0aGUgbmV3IHNwZWxsaW5nIGthbgpiZSBleG9la3RlZCB0byByZWFjaCB0aGUgc3RhZ2Ugd2hlcmUgbW9yZSBrb21wbGlrYXRlZCBjaGFuZ2VzCmFyZSBwb3NzaWJsZS4gR292ZXJubWVudHMgd2lsbCBlbmtvdXJhZ2UgdGhlIHJtb3ZhbCBvZiBkb3VibGUKbGV0dGVycywgd2hpY2ggaGF2ZSBhbHdheXMgYmVuIGEgZGV0ZXJlbnQgdG8gYWt1cmF0ZSBzcGVsaW5nLgpBbHNvLCBhbCB3aWwgYWdyZSB0aGF0IHRoZSBob3JpYmxlIG1lcyBvZiBzaWxlbnQgJ2UncyBpbiB0aGUKbGFuZ3VhZyBpcyBkaXNncmFzZnVsLCBhbmQgdGhleSB3b3VsZCBnby4KIEJ5IHRoZSBmb3VydGggeWVhciwgcGVvcGwgd2lsIGJlIHJlc2VwdGl2IHRvIHN0ZXBzIHN1Y2ggYXMKcmVwbGFzaW5nICd0aCcgd2l0aCAneicgYW5kICd3JyB3aXogJ3YnLgogRHVyaW5nIHplIGZpZnogeWVhciwgemUgdW5lc2VzYXJ5ICdvJyBrYW4gYmUgZHJvcGVkIGZyb20Kd29yZHMga29udGFpbmluZyAnb3UnLCBhbmQgc2ltaWxhciBjaGFuZ2VzIHZ1ZCBvZiBrb3JzIGJlIGFwbGlkCnRvIG96ZXIga29tYmluYXRpb25zIG9mIGxldGVycy4KIEFmdGVyIHplIGZpZnogeWVyLCB2ZSB2aWwgaGF2IGEgcmVsaSBzZW5zaWJsIHJpdGVuIHN0eWwuIFplciAKdmlsIGJlIG5vIG1vciB0cnVibHMgb3IgZGlmaWt1bHRpcyBhbmQgZXZyaXZ1biB2aWwgZmluZCBpdCBlemkKdG8gdW5kZXJzdGFuZCBlY2ggb3plci4KIFplIGRyZW0gdmlsIGZpbmFsaSBrdW0gdHJ1LgogCgoKSW1tZXIgbm9jaCBncmluc2VuZCwKICAgICAgICAgICAgICAgICAgICAgICAgICBTZWZpcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQmVzY2h3ZXJkZSB1ZWJlciBMVUchIChHcmltbWJvcm4sICA0LiBNYWkgMTk5OCwgMDA6MDA6NDMpOgp+IyEgcm49R25vbWUgcnQ9ODk0MjI3MjQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzODAwMTgxCktsYXIgd2FyIGRhcyBlcm5zdCBnZW1laW50LgpVZWJyaWdlbnMgaXN0IGVzIG5hdHVlcmxpY2ggaXJyZWxldmFudCBvYiBtYW4gbnVuIHZvbiBBdG9tZW4gb2RlcgpFbGVtZW50YXJ0ZWlsY2hlbiBzcHJpY2h0LiBFaW4gQXRvbSBzZXR6dCBzaWNoIChpbSB3ZWx0YWxsd2VpdGVuIER1cmNoc2Nobml0dCkKYXVzIGNhLiAyIFRlaWxjaGVuIHp1c2FtbWVuLCBkYXMgaXN0IGVpbiBGYWt0b3IgendlaSwgYmVpIGVpbmVyIFVuc2ljaGVyaGVpdAp2b24gZWluaWdlbiBaZWhuZXJwb3Rlbnplbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKUC5TLiBBY2ggamEsIG1laW5lIExpZWJsaW5nc2VpbmhlaXQgaXN0IHVlYnJpZ2VucyBQU0kuIAogICAgIChBbWVyaWthbmlzY2hlKSBQZnVuZCBwcm8gc3F1YXJlIGluY2guIERhcyBnaWJ0IGRhbm4gZWluZW4gRHJ1Y2suCiAgICAgTWVociBvZGVyIHdlbmlnZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmVjaHRzY2hyZWlicmVmb3JtIGRpZSAxMDkzLiAoRGhvamFrdCwgIDQuIE1haSAxOTk4LCAwMDoyNjoyNSk6Cn4jISBybj1aZXBoeXIgcnQ9ODk0MjI4NTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk0MjI4NTc5CkhtLCBlaWdlbnRsaWNoIHdhZXJlIGphIG5lIHJlZm9ybSwgd28gc2ljaCBkaWUgc2NocmVpYndlaXNlIG1laHIgZGVuIHBob25lbWVuCmFubmFlaGVydCBnYW56IHd1ZW5zY2hlbnN3ZXJ0LCBudXIgZ2lidHMgZGF6dSB6dXdlbmlnZSBidWNoc3RhYmVuLCB1bSBkYXMgYXVjaApudXIgYW5uYWVoZXJuZCB6dSByZWFsaXNpZXJlbi4KU2NobHVzczogVW0gZGVtIG1hbmdlbCBoZXJyIHp1IHdlcnRlbiBiaW4gaWNoIGluIGRlciA2LiBwaGFzZSBmdWVyIGRlbiBpbXBvcnQKZWluaWdlciBndXRhdXNzZWhlbmRlciB6ZWljaGVuIGF1cyBkZW0gZ3JpZWNoaWNoZW4sIGt5cmlsbGlzY2hlbiwKcnVuZW5hbHBoYWJldCBvZGVyIHNvbnN0d29oZXIsIHVtIGRhcyBhdXN6dWdsZWljaGVuLiB6ZWljaGVuLCBkaWUgc2Nob24gaW0KOC1iaXQtc3RhbmRhcmQtYXNjaWktemVpY2hlbnNhdHogZW50aGFsdGVuIHNpbmQgd2FlcmVuIGhpZXJiZWkgYXVzIHRlY2huaXNjaGVuCmdydWVuZGVuIHp1IGJldm9yenVnZW4uIGV2dGwga29lbm5lbiBhdWNoIGJlZGV1dHVuZ3NhZW5kZXJ1bmdlbiB2b3JnZW5vbW1lbgp3ZXJkZW4sIHpiIHggLT4ga3MgdW5kIGNoICh3aWUgaW4gYWNoKSAtPiB4LgpLaGlkYXIgcnVmdDogRXMgbGViZSBkaWUgU2NocmVpYnJlZm9ybSEKQWNoamEsIGRpZSBydWJyaWsgc2NoZWludCBzY2hvbiBnYW56IGd1dCB6dSBwYXNzZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqc3RhdW4qIChMaWxsZWJyb3IsICA0LiBNYWkgMTk5OCwgMDE6MDI6MzEpOgpncmFkIGViZW4sIG5hY2ggZWluZW0gJ3J1ZnQ6JwoKRWluZSBoZXJybGljaGUgV2Flcm1lIGdlaHQgdm9uIERlaW5lbSBBbXVsZXR0IGF1cywgdW5kIER1IGZ1ZWhsc3QKRGljaCBwcmltYS4KRHUgaWdub3JpZXJzdCBqZXR6dCBmb2xnZW5kZSBNaXR0ZWlsdW5nZW46IGdyb28uCgouLi4gc29sbHQgaWNoIHdpcmtsaWNoIG9lZnRlciBtYWNoZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBCZXNjaHdlcmRlIHVlYmVyIExVRyEgKEJhcmFrLCAgNC4gTWFpIDE5OTgsIDA3OjE2OjA5KToKfiMhIHJuPUdyaW1tYm9ybiBydD04OTQyMzI4NDMgcmc9c2NobWFycm4KfiMhIHRpZD04OTM4MDAxODEKSG0sIEVsZW1lbnRhcnRlaWxjaGVuIHNpbmQgbmFjaCBoZXV0aWdlbiBFcmtlbm50bmlzc2VuIFF1YXJrcyB1bmQgTGVwdG9uZW4uCkFiZXIgYmVpIHNvIGdyb3NzZW4gWmFobGVuIHNldHp0IGJlaSB1bnMgRXJkZW52b2Vsa2VybiBlaCBkaWUgVm9yc3RlbGx1bmcgYXVzLgpFaW4gR2xhcyBCaWVyIGJlc3RlaHQgYXVzIGNhIDEwKioyMyBNb2xla3VlbGVuZGEgCkFiZXIgWmFobGVuIHNpbmQgZG9jaCBudXIgU2NoYWxsIHVuZCBSYXVjaC4gVmllbCB3aWNodGlnZXIgaXN0IGVzIGRhcyBpY2ggbWl0CkJpZXIgS29lbHNjaCBtZWluZSwgYmVpIGRpZXNlbSBQdW5rdCBnaWJ0IGVzIGF1Y2gga2VpbmUKTWVpbnVuZ3N2ZXJzY2hpZWRlbmhlaXRlbi4gKEZ1ZXIgR3JpbW1ib3JuIEdpZXNzZWxlciBLb2Vsc2NoLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEJlc2Nod2VyZGUgdWViZXIgTFVHISAoTW9yZ290aCwgIDQuIE1haSAxOTk4LCAwNzoyODowMSk6Cn4jISBybj1CYXJhayBydD04OTQyNTg5Njkgcmc9c2NobWFycm4KfiMhIHRpZD04OTM4MDAxODEKQmFhYWhoaGhoLCB6dSBLb2Vsc2NoIEJJRVIgc2FnZW4gaXN0IHdpZS4uLndpZS4uLi5zb2xjaCBlaW5lbiBzY2hsZWNodGVuClZlcmdsZWljaCBnaWJ0IGVzIGtlaW4gendlaXRlcyBNYWwuCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqKldBRUxaKiogKE1vcmdvdGgsICA0LiBNYWkgMTk5OCwgMTA6MDI6MzUpOgpIYXJpYSBzYWd0OiBub2NoIHdhcyBrb2VubnQgaWNoIGJyYXVjaGVuOiBuZW4gdGVkZHkgISA6LSkKJUR1IHNhZ3N0OiBub2NoIHdhcyBrb2VubnQgaWNoIGJyYXVjaGVuOiBuZW4gdGVkZHkgISA6LSkKJT4gVGVkZHkgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqKldBRUxaKiogKFRlZGR5LCAgNC4gTWFpIDE5OTgsIDEwOjA0OjA0KToKfiMhIHJuPU1vcmdvdGggcnQ9ODk0MjY4OTU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk0MjY4OTU1Cldhbm4gaW1tZXIgaWNoIGdlYnJhdWNodCB3ZXJkZSwgaWNoIGJpbiBkYS4gOy0pCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1ZXIgTnBjc3BlbGw/IChCYXJiYXIsICA0LiBNYWkgMTk5OCwgMTM6NTM6MDYpOgpGb25kaWwgaHVlbGx0IERpY2ggaW4gZ3J1ZW5lbiwgYWV0emVuZGVuIE5lYmVsLgpEZXIgRG9yZnNjaHJlaWJlciBtdXJtZWx0IGVpbmUgRm9ybWVsLgpFaW5lIGhlcnJsaWNoZSBXYWVybWUgZ2VodCB2b24gRGVpbmVtIEFtdWxldHQgYXVzLCB1bmQgRHUgZnVlaGxzdApEaWNoIHByaW1hLgoKQmFyYmFyLCBGb25kaWwgZGFua2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVnZSAoQ2FsdW0sICA0LiBNYWkgMTk5OCwgMTQ6MTc6MjApOgpOZXVsaWNoIGJlaW0gKGRlKWJ1Z2dlbjoKClZvbSBNYWdpc2NoZW4gQXVnZSB3YWxsdCBOZWJlbCBhdWYsIGF1cyBkZW0gZGllIFdvcnRlIHRvZW5lbjoKW0RlYnVnOkNhbHVtXSBGZWhsZXI6ICJEaXZpc2lvbiBieSB6ZXJvIiwgT2JqZWt0OgpbRGVidWc6Q2FsdW1dIGQvZWJlbmUvY2FsdW0vTW9yb24vb2JqL2F1Z2UjMTczOTg0OCwgUHJvZ3JhbW06CltEZWJ1ZzpDYWx1bV0gIi9kL2ViZW5lL2NhbHVtL01vcm9uL29iai9hdWdlLmMiLCBaZWlsZSAyNTMgKENhbHVtKQoKSXJnZW5kd2llIGhhdCBkYXMgRGluZyBhdWNoIHNjaG9uIG1hbCBlcmZyZXVsaWNoZXJlIE1lbGR1bmdlbgphdXNnZXNwdWNrdCA6LSkKCiAtIENhbHVtIC0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTaWUgbWFnIG1pY2ggbmljaHQuLi4gKEhhbmdvdmVyLCAgNC4gTWFpIDE5OTgsIDE3OjQ2OjUyKToKR3JhZGUgYmVpIGRlciBIeWRyYToKCiAgRHUgdHJpZmZzdCBkaWUgSHlkcmEgc2VociBoYXJ0LgpBdXMgZGVtIExlaWNobmFtIGVyc2NoZWludCBkaWUgTGljaHRnZXN0YWx0IFB1bWFzIHVuZCB1ZWJlcnJlaWNodCBEaXIKbGFlY2hlbG5kIGVpbmUgUnVlc3R1bmcgYXVzIGZ1bmtlbG5kZW4gSnV3ZWxlbi4gTWl0IGRlbSBuYWVjaHN0ZW4KQXVnZW56d2lua2VybiBpc3Qgc2llIHZlcnNjaHd1bmRlbi4KRHUgYmlzdCBudW4gZnVlciBzZWNocyBXb2NoZW4gZGVyIFRyYWVnZXIgZGVyIFJ1ZXN0dW5nIGVpbmVzIEh5ZHJhdG9ldGVycwp1bmQgbmllbWFuZCBhdWYgZGVyIFdlbHQga2FubiBEaXIgZGllc2VuIFN0YXR1cyBzdHJlaXRpZyBtYWNoZW4sIGRlbm4gZGllc2UKUnVlc3R1bmcgaGFzdCBudXIgRHUgRGlyIHZlcmRpZW50LgpEaWUgSHlkcmEgemVyZmFlbGx0IHp1IGVpbmVtIGdpZ2FudGlzY2hlbiBCZXJnIEdlYmVpbi4KRHUgc2llaHN0IGVpbmVuIEZlaGxlciBpbSBSYXVtLVplaXQtR2VmdWVnZS4KClNlbGJzdCBkaWUgYnVnZ3QgbWljaCBhbiA6KAoKLUhhbmdvdmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzaGl6bz8gKFRlZGR5LCAgNC4gTWFpIDE5OTgsIDIxOjExOjIxKToKTmFjaHR3aW5kIGtudWRkZWx0IE5hY2h0d2luZC4KTmFjaHR3aW5kIGtudWRkZWx0IE5hY2h0d2luZC4KCk11ZGRlbiBzY2hlaW50IGRvY2ggTmViZW53aXJrdW5nZW4genUgaGFiZW4uIDspCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBMaW51eCB1bmQgY2RyIChBbmF0b2wsICA0LiBNYWkgMTk5OCwgMjM6NTY6MDgpOgp+IyEgcm49WnVlcmlsZXUgcnQ9ODk0MzE4MTY0IHJnPWdpbGRlbi5jaGFvcwp+IyEgdGlkPTg5NDI3MDUyOQpEZXIgQmV6dWcgdWViZXIgInJlcGx5IiBpc3QgRGlyIGhlcnJsaWNoIGdlbHVuZ2VuLCBadWVyaWxldSA6KS4KVWVicmlnZW5zIGlzdCBlaW4gIlNjaGF0dGVua3JpZWdlciIgZXR3YXMgR0FOWiBhbmRlcmVzLCBkYXMgaGF0IApuaWNodHMgbWl0IENoYW9zIHp1IHR1bi4gOikKCkV2ZXJ5Ym9keSBkZWFkIC0gSSBsaWtlIHRoYXQhIDopCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBCZXNjaHdlcmRlIHVlYmVyIExVRyEgKEdyaW1tYm9ybiwgIDUuIE1haSAxOTk4LCAwMDowMjoxMCk6Cn4jISBybj1CYXJhayBydD04OTQyNTg5Njkgcmc9c2NobWFycm4KfiMhIHRpZD04OTM4MDAxODEKV2FzIHNwaWVsdCBkYXMgZnVlciBuZSBSb2xsZT8gRHJlaSAoPykgRGVpbmVyIEVsZW1lbnRhcnRlaWxjaGVuIGJpbGRlbiBlaW4KUHJvdG9uL05ldXRyb24uIEVzIHNwaWVsdCBlaW5mYWNoIGtlaW5lIFJvbGxlIG9iIGljaCBXYXNzZXJzdG9mZmF0b21lIHphZWhsZQpvZGVyIGRyZWkgUXVhcmtzIHVuZCBlaW4gRWxla3Ryb24sIHdlbm4gZXMgdW0gZGllIEdlc2FtdHphaGwgZGVyIFRlaWxjaGVuIGltClVuaXZlcnN1bSBnZWh0LiBEZXIgRmVobGVyLCBkZW4gaWNoIG1hY2hlIGlzdCBkZXIgRmFrdG9yIHZpZXIuIERlciBGZWhsZXIsIGRlbgppY2ggbWFjaGUgd2VpbCBpY2ggbmljaHQgd2Vpc3Mgb2IgZXMgMTBeODAgb2RlciAxMF43NSBzaW5kIChpY2ggaGFiCnRhdHNhZWNobGljaCBrZWluZSBBaG51bmcsIGFiZXIgaWNoIGdsYXViZSwgZGllIHNpbmQgYmVpZGUgdmllbCB6dSBob2NoKSBpc3QKZGVyIEZha3RvciAxMDAgMDAwLgoKVW5kIEdpZXNzbGVyIGlzdCBrZWluIEtvZWxzY2guIEF1c3NlciBpbSBTb21tZXIgZnJpc2NoIHVuZCBrdWVobCB2b20gRmFzcy4KV2lya2xpY2ggc2NobGltbSBpc3QgRG9tIC0gZHJlaSBHbGFlc2VyIGdldHJ1bmtlbiAoPTAuNmwpIHVuZCBhbSBuYWVjaHN0ZW4gVGFnCm1lcmtiYXIgRHJ1Y2sgaW0gU2NoYWVkZWwuIAoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogQmVzY2h3ZXJkZSB1ZWJlciBMVUchIChSYW50YW5wbGFuLCAgNS4gTWFpIDE5OTgsIDAwOjA2OjUyKToKfiMhIHJuPUdyaW1tYm9ybiBydD04OTQzMTkzMzAgcmc9c2NobWFycm4KfiMhIHRpZD04OTM4MDAxODEKKmhpY2tzKgoKQWFhbHNvLCBpc3QgZG9jaCBrb3NtaWNoIGdlc2VoZW4gdG90YWwgZWdhbCwgd2ljaHRpZyBpc3QgZGllIGdlc2FtdG1hc3NlIHVuZApkaWUKQXVzd2lya3VuZyBhdWYgZGllSHViYmxlLUtvbnN0YW50ZW4uLi5CbGEuLi4KClVuZCBpbiBzb3Vuc292aWVsIDEwXjQwIEphaHJlbiB3aXNzdCBpaHIgZGFubiwgb2IgaWhyIHplcnN0YXVidCwgb2RlcgpleHBhbmRpZXJ0LCBvZGVyIGVpbmVuIHN0ZWFkeSBzdGF0ZSBlcnJlaWNodC4uLgoKV2VubiBlcyBqZW1hbmQgbWl0YmVrb21tdCBtYWlsZSBlciBtaXIgYml0dGUgdW50ZXIgb2V0dGlAc2F1dG90K3NjaGVpc3NlZ2FsLmhlCihoZWF2ZW4gb3IgaGVsbCwgd2UnbGwgc2VlKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEJlc2Nod2VyZGUgdWViZXIgTFVHISAoU2Nob2tvLCAgNS4gTWFpIDE5OTgsIDAwOjA3OjI0KToKfiMhIHJuPUdyaW1tYm9ybiBydD04OTQzMTkzMzAgcmc9c2NobWFycm4KfiMhIHRpZD04OTM4MDAxODEKRGFzIGtvbW10IGRhdm9uLCB3ZWlsIER1IG5peCBnZXdvaG50IGJpc3QsIEdyaW1tYm9ybi4gVm9uIERvbSBrcnJpY2h0IG1hbgprZWluZW4gU2NoYWVkZWwsIGRhcyBpcyBzdXBlcnIgOykpCgpTY2hva28gKHRyaW5rdCBGZWxza3JvbmUsIDksODAgZGVyIEthc3RlbiA7KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBCZXNjaHdlcmRlIHVlYmVyIExVRyEgKFJhbnRhbnBsYW4sICA1LiBNYWkgMTk5OCwgMDA6MDk6MzIpOgp+IyEgcm49U2Nob2tvIHJ0PTg5NDMxOTY0NCByZz1zY2htYXJybgp+IyEgdGlkPTg5MzgwMDE4MQoKYnR3LiBGcnVlaCBLb2Vsc2NoIHJ1bGV6ICIKCk9lKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmFjaHJpY2h0ZW5lbnR6dWc/IChUaGVyaW4sICA1LiBNYWkgMTk5OCwgMDA6MjI6MzcpOgoKTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4KSXJnZW5kd28gaW4gZGVyIEVudGZlcm51bmcgaG9lcnN0IER1IGVpbmVuIGdyYXVlbnZvbGxlbiBTY2hyZWkuCgp1aCBvaC4uLgpUaGVyaW4gc2NocmVpYnQgc2NobmVsbCB3YXMgaW4gU2NobWFycm4uLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmVjaHRzY2hyZWlicmVmb3JtIGRpZSAxMDkzLiAoQmFyYWssICA1LiBNYWkgMTk5OCwgMDc6Mjc6MzApOgp+IyEgcm49WmVwaHlyIHJ0PTg5NDIyODU3OSByZz1zY2htYXJybgp+IyEgdGlkPTg5NDIyODU3OQpGcnVlaCBpc3Mgb2ssIGZlbHNrcm9uZSB3aXJkIHNvIHdlaXQgaWNoIHdlaXNzIHNvZ2FyIHZvbiBkZW4gbWVpc3RlbiBQZW5uZXJuCnZlcnNjaG1hZWh0LiBEYSBoZWlzc3QgZXMgbnVyIEdpbGRlbiBnaWx0Li4uClJpY2h0aWcgbGVra2EgaXN0IGplZG9jaCBSZWlzc2RvcmYuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmVjaHRzY2hyZWlicmVmb3JtIGRpZSAxMDkzLiAoU2Nob2tvLCAgNS4gTWFpIDE5OTgsIDExOjE4OjQ1KToKfiMhIHJuPUJhcmFrIHJ0PTg5NDM0NjA1MCByZz1zY2htYXJybgp+IyEgdGlkPTg5NDIyODU3OQpIbW1tIFJlaXNzZG9yZiBpcyBleHRyZW0gbGVja2VyLCBhYmVyIHdlciBrYW5uIHNpY2ggZGFzIHNjaG9uIGxlaXN0ZW4gLi4sIDspCgpTY2hva28gKHd1ZXJkZSBzb25zdCBNdWVobGVua29lbHNjaCB0cmlua2VuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ2F0d2VhemxlIGJlc2NoZWlzc3QgYmVpbSBNYWV4Y2hlbnNwaWVsZW4gOikgKEhhcmRpbCwgIDUuIE1haSAxOTk4LCAxMzowNjoyNyk6CgpVbmdlbG9nZW4gdW5kIGxpdmUgbWl0Z2VzY2huaXR0ZW46CgphdWZkZWNrZW4KQ2F0d2VhemxlIGhhdHRlIG51ciBlaW5lIDQzIGdld29yZmVuLCBoYWV0dGUgYWJlciBlaW5lbiBFaW5lcnBhc2NoIGhhYmVuCm11ZXNzZW4uClRhbWVsaSBoYXQgZGllc2UgUnVuZGUgd29obCB2ZXJsb3Jlbi4KCkhtbW0uIENhdHdlYXpsZSB3dWVyZmVsdCBmYWxzY2gsIHVuZCBUYW1lbGkgdmVybGllcnQgZGFmdWVyIGVpbmVuIFN0cmljaC4KV2VubiBkYXMgYWxsZSBNYWdpZXIgc28gbWFjaGVuLCBkYW5uIGd1dGUgTmFjaHQuIDopCgotSGFyZGlsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IENhdHdlYXpsZSBiZXNjaGVpc3N0IGJlaW0gTWFleGNoZW5zcGllbGVuIDopIChIYXJkaWwsICA1LiBNYWkgMTk5OCwgMTM6MDg6MzYpOgp+IyEgcm49SGFyZGlsIHJ0PTg5NDM2NjM4NyByZz1zY2htYXJybgp+IyEgdGlkPTg5NDM2NjM4NwoKTmFjaHRyYWc6CgpBbnNjaGxpZXNzZW5kIHdhciBwbG9ldHpsaWNoIGRlciBXdWVyZmVsYmVjaGVyIHdlZy4gVW5kIGRhcyBiZWkgZm9sZ2VuZGVtClNwaWVsc3RhbmQ6Cgo+IGxpZXMgbGlzdGUKRXMgc3RlaHQgZGVyemVpdCB3aWUgZm9sZ3Q6CkhhcmRpbDogSUlJSQpNYWdpY29sbGk6IElJSUkKVHJhdW1hOiBJSUlJCkNhdHdlYXpsZTogSQoKRGFzIGlzdCBlaW4gRmFsbCBmdWVyIGRlbiBTaGVyaWZmISBGcmV1bmQsIHVlYmVybmVobWVuIFNpZSEgOikKLT4gbXVzcyBtYW4gZGFzIG5hY2ggcG9saXplaS5iZXNjaHdlcmRlbiB2ZXJsZWdlbj8gR3JpbW1ib3JuPyAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW4gZGVyIFN0ZXBwZS4uLiAoT3ZlcmxvcmQsICA1LiBNYWkgMTk5OCwgMjE6NDI6MzcpOgo+dW50IHdlZwpEdSBiaXN0IGpldHp0IGFscyBhYndlc2VuZCBnZWtlbm56ZWljaG5ldC4KCkVpbiBsZWdhc3RoZW5pc2NoZXIgTUctU2VydmVyLiBIYXQgbWFuIHNvd2FzIHNjaG9uIGdlc2VoZW4/CgpPdmkgKmtpY2hlcioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCip3YWVseiogKFN0aW5nLCAgNS4gTWFpIDE5OTgsIDIxOjU5OjQxKToKQWxzIFJvYWRydW5uZXJzIFNwaW9uYWdlLURhZW1vbiB2ZXJzdWNodCBEaXIgZXR3YXMgenUgc2FnZW4gc2NobHVja3QgZXMgV2Fzc2VyCnVuZCBtdXNzIGZ1cmNodGJhciBrYWVtcGZlbiBuaWNodCBub2NoIG1laHIgenUgc2NobHVja2VuLgpJbW1lciB3aWVkZXIgbHVzdGlnLCBzb3dhcyA6KQoKU3RpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdyYWRlIGFtIFRvciBkZXMgU3RydXYgKE5lYiwgIDUuIE1haSAxOTk4LCAyMjo1MDo0Myk6Cj4gT3ZlcmxvcmQgaGFlbHQgRGljaCBhdWYhIER1IHNvbGx0ZXN0IGlobSB3b2hsIGJlc3NlciBlcmtsYWVyZW4sIHdhcyBEdSBpbQpTdHJ1diB3aWxsc3QKPiBncnVtbWVsCkR1IGdydW1tZWxzdC4KPiBzYWcgbGFzcyBkZW4gcXVhdHNjaCA7KQpEdSBzYWdzdDogbGFzcyBkZW4gcXVhdHNjaCA7KQpPdmVybG9yZCBoYWVsdCBEaWNoIGF1ZiEgRHUgc29sbHRlc3QgaWhtIHdvaGwgYmVzc2VyIGVya2xhZXJlbiwgd2FzIER1IGltClN0cnV2IHdpbGxzdC4KPiBPdmVybG9yZCBmcmFndDogQmVzdWNoc2dydW5kPyBuYWNoPwpncmluc2UKRHUgZ3JpbnN0Lgo+IE92ZXJsb3JkIGZyYWd0IERpY2g6IE5hY2ggQmVzdWNoc2dydW5kPwpzYWcga2FlbXBmZXItbnBjcyBtZXR6ZWxuIDspIApEdSBzYWdzdDoga2FlbXBmZXItbnBjcyBtZXR6ZWxuIDspCltUcnZlczpOZWJdIFBLcyBhbiB0b3J3YWNoZW4gc2luZCBhYmVyIGVybGF1YnQsIG9kZXIgPyA7KQpPdmVybG9yZCBsYWVzc3QgRGljaCBwYXNzaWVyZW4hIER1IGRhcmZzdCBudW4gZGFzIFN0cnV2IGJldHJldGVuIQoKCk5lYiBmaW5kZXQsIGRhc3MgZGllIEtvbW1hbmRhbnRlbiBkZXMgU3RydXYgZG9jaCBldHdhcyB6dXZlcmxhZXNzaWdlcmUKVG9yd2FjaGVuIHp1bSBTY2h1dHogaWhyZXMgTGViZW5zIGFia29tbWFuZGllcmVuIHNvbGx0ZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcmV1bmQgaXN0IHdlZy4gKEdyaW1tYm9ybiwgIDYuIE1haSAxOTk4LCAwMDoyMDo1Myk6Cn4jISBvbj1LZXkgb3Q9ODk0MzcyMTU4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1UZWRkeSBydD04OTQzNzE3NTQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04OTQzNzE3NTQKU2hpdAoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZyZXVuZCBpc3Qgd2VnLiAoR3JpbW1ib3JuLCAgNi4gTWFpIDE5OTgsIDAwOjIwOjU5KToKfiMhIG9uPUxpbGxlYnJvciBvdD04OTQzNzc0MzMgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUtleSBydD04OTQzNzIxNTggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04OTQzNzE3NTQKKm1lZ2Etc2V1ZnoqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRnJldW5kIGlzdCB3ZWcuIChHcmltbWJvcm4sICA2LiBNYWkgMTk5OCwgMDA6MjE6MDMpOgp+IyEgb249SmFzcGVyIG90PTg5NDM4NjE1MCBvZz1hbGxnZW1laW5lcwp+IyEgcm49TGlsbGVicm9yIHJ0PTg5NDM3NzQzMyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg5NDM3MTc1NAoKSWNoIHdpbGwgU2hlcmlmZiB3ZXJkZW4hISEKCld5YXR0IEphc3BlciBwb2xpZXJ0IHNjaG9uIG1hbCBzZWluZW4gU3Rlcm4uIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU29ycnkgKEdyaW1tYm9ybiwgIDYuIE1haSAxOTk4LCAwMDoyNjowMCk6Cn4jISBvbj1TdGluZyBvdD04OTQzODk2MjIgb2c9cGFydHkKfiMhIHJuPVJvY2h1cyBydD04OTQzODMyOTQgcmc9cGFydHkKfiMhIHRpZD04OTQxODk4NzkKSWNoIGF1Y2guCgpTdGluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChEaWVkZXIsICA2LiBNYWkgMTk5OCwgMDM6MDA6NDYpOgpVZ2kgZ3JpbnN0IERpY2ggZnJvbGljaCBhdXMgZGVyIEZlcm5lIGFuLgpbWmVpdHZlcnpvZWdlcnVuZyAxMCBzZWsuXQpbVG9kOkxhcnNdIEVpbiBVbmZhbGwgaW0gSG9jaGdlYmlyZ2UgaGF0IGdlcmFkZSBVZ2kgdW1nZWJyYWNodC4KW1RvZDpFaW4gVW5mYWxsIGltIEhvY2hnZWJpcmdlXSBXZXIgdmllbCB3YWd0LCBrYW5uIGF1Y2ggdmllbCB2ZXJsaWVyZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKERob2pha3QsICA2LiBNYWkgMTk5OCwgMDM6MDU6MzQpOgp+IyEgcm49RGllZGVyIHJ0PTg5NDQxNjQ0NiByZz1zY2htYXJybgp+IyEgdGlkPTg5NDQxNjQ0NgpJc3Qgd29obCBlaGVyIG5lIEZMQS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1cyBkZXIgUmVpaGUgIkx1c3RpZ2UgU291bGVyZWllbiIuLi4gKEFuYXRvbCwgIDYuIE1haSAxOTk4LCAwMzo1MjowNik6Cj4gZnJhZ2UgdG9yc28gbmFjaCB3ZWcKRWluIFRvcnNvIHNhZ3Qgb2huZSBLb3BmIGVpZ2VudGxpY2ggbmljaHQgdmllbC4uLgo+IGtpdHpsZSB0b3JzbwpEdSBraXR6ZWxzdCBlaW5lbiBUb3JzbyBhbiBzZWluZW0gS2lubi4KRWluIFRvcnNvIHZlcnN1Y2h0LCBzaWNoIHp1IGJlaGVycnNjaGVuLCBtdXNzIGFiZXIgZG9jaCBsYWNoZW4uCgpBdXRzY2ggOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlY2h0c2NocmVpYnJlZm9ybSBkaWUgMTA5My4gKFphcm5peWEsICA2LiBNYWkgMTk5OCwgMDk6MTY6MjcpOgp+IyEgcm49QmFyYWsgcnQ9ODk0MzQ2MDUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk0MjI4NTc5Ck11ZWhsZW5rb2Vsc2NoIFJVTEVaLi4uIHVuZCB3ZXIgd2FzIGFuZGVyZXMgc2FndCwgZGVyIHdpcmQgZ2VtYXJ0ZXJ0IGR1cmNoIGRpZQpIYW5kIGRlciBSdWRpcmF0dGVycyA6KQoKWmFybml5YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGcmV1bmQgaXN0IHdlZy4gKEtleSwgIDYuIE1haSAxOTk4LCAxMDoxNjoyMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODk0NDA2ODUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk0MzcxNzU0CkdSSU1NSSEhCkRhcyBnZWhvZXJ0IG5pY2h0IG5hY2ggc2NobWFycm4hCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBNaXNzdHJhdWVuIGRlciBMZXV0ZS4uLiAoSGFuZ292ZXIsICA2LiBNYWkgMTk5OCwgMTI6NDk6MjgpOgpHcmFkZSBlYmVuOgo+IFNoYXJpYSB0ZWlsdCBEaXIgbWl0OiBzYWdtYWwgaGFzdCBkdSBuZW4gdGYtYnVtaS10cmlnZ2VyIHdvIHdpciBnZXJhZGUgCmRydWViZXIKU2hhcmlhIHRlaWx0IERpciBtaXQ6IHJlZGVuIDotKQoKCjMwIHNlYy4gc3BhZXRlcjoKCktleSB0ZWlsdCBEaXIgbWl0OiBoYXNzdSBidW1pdHJpZ2dlcj8gOikKCkljaCBmYXNzIGVzIG5pY2h0Li4uCgotSGFuZ292ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBCZXNjaHdlcmRlIHVlYmVyIExVRyEgKEFzbW9kaXMsICA2LiBNYWkgMTk5OCwgMTg6NDM6NTcpOgp+IyEgcm49QmFyYWsgcnQ9ODk0MjU4OTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODkzODAwMTgxCkJpZXIgb2RlciBLb2Vsc2NoID8gZW50c2NoZWlkZSBkaWNoICEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHcmFkZSBhbSBUb3IgZGVzIFN0cnV2IChPdmVybG9yZCwgIDYuIE1haSAxOTk4LCAxOTo0OToyMSk6Cn4jISBybj1OZWIgcnQ9ODk0NDAxNDQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk0NDAxNDQzCklzdCBEaXIgYmV3dXNzdCwgZGFzcyBpY2ggdWViZXIgc29sY2hlbiBrbGVpbmxpY2hlbiBEcm9odW5nZW4gc3RlaGU/IE1laW4KTW90dG86IHphcHBlbG4gbGFzc2VuIDspCgpPdmksIHNjaG1laXNzdCBOZWIgZGFzIG5hZWNoc3RlIE1hbCBnYXJhbnRpZXJ0IHJhdXMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR3JhZGUgYW0gVG9yIGRlcyBTdHJ1diAoT3ZlcmxvcmQsICA2LiBNYWkgMTk5OCwgMTk6NTI6MTQpOgp+IyEgcm49T3ZlcmxvcmQgcnQ9ODk0NDc2OTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk0NDAxNDQzClBTOiBJY2ggbWFnIFp3ZXJnZS4uLmFtIGxpZWJzdGVuIGFtIFNwaWVzcy4KCk92aSAqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBCZXNjaHdlcmRlIHVlYmVyIExVRyEgKEdyaW1tYm9ybiwgIDYuIE1haSAxOTk4LCAyMTozNjozOSk6Cn4jISBybj1Bc21vZGlzIHJ0PTg5NDQ3MzAzNyByZz1zY2htYXJybgp+IyEgdGlkPTg5MzgwMDE4MQpLb21tLCBnZWggRHUgbGllYmVyIGRpZSBNZWlzdGVyc2NoYWZ0IEthaXNlcnNsYXV0ZXJucyBmZWllcm4gdW5kIG1pc2NoIERpY2gKbmljaHQgaW4gTWFlbm5lcnRoZW1lbi4KRWluIGt1ZWhsZXMgS29lbHNjaCB6dXIgcmljaHRpZ2VuIFplaXQgaXN0IHdhcyBmZWluZXMsIGRhIHJlaWNodCBrZWluIGFuZGVyZXMKQmllciBhdWNoIG51ciBhbnNhdHp3ZWlzZSByYW4uLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcmVudG5lci1nYW5nPyAoV2ltLCAgNy4gTWFpIDE5OTgsIDAxOjEyOjQzKToKaWNoIGJpbiB6ZXVnZSwgd2VubnMgdm9yIGdlcmljaHQgZ2VodCA6KQpmaW5kZSBraWxhcgpEdSBzY2hhdXN0IHRpZWYgaW4gZGllIEt1Z2VsLCBsYW5nc2FtIGxvZXN0IHNpY2ggZGVyIG1pbGNoaWdlIFJhdWNoIGluCmlociB1bmQgRHUgc2llaHN0IDoKRHUgc3RlaHN0IGluIGRlciBlaW5sYWRlbmRlbiBFbXBmYW5nc2hhbGxlIGRlcyBXZXR0cGFsYXN0ZXMgJ0x1Y2t5IFRpZ2VyYHMnLgouLi4uLgpFcyBnaWJ0IGZ1ZW5mIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCB1bnRlbiwgc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KW1RlYW06UmVudG5lcl0gVGhlcmluIEwuIFRlbGFtb24gZGVyIExvcmQgRHJhZ29uLgpbVGVhbTpSZW50bmVyXSBLaWxhciBkaWUgZ3Jvc3NlIFZhbXBpcmZsZWRlcm1hdXMgKGlkbGUpLgpFaW5lIEJyZWNoc3RhbmdlLgoKaG0sIHdhcyBoYWJlbiBkaWUgYmVpZGVuIGRlbm4gZGEgdm9yPyByZW50ZSBhdWZiZXNzZXJuPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHJlbnRuZXItZ2FuZz8gKFRoZXJpbiwgIDcuIE1haSAxOTk4LCAwMToyMTowNik6Cn4jISBybj1XaW0gcnQ9ODk0NDk2MzYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk0NDk2MzYzCgpSdWVzdGlnZSBSZW50bmVyIGhhbHQuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGhqYSE6KSAoTWluZGJsYWRlLCAgNy4gTWFpIDE5OTgsIDAxOjI1OjI5KToKW2lkZW50aWZpemllcmUgc2Nod2VydF0KRHUga2FubnN0IG5pY2h0cyBiZXNvbmRlcmVzIGFuIGRlbSBIb2x6c2Nod2VydCBlcmtlbm5lbi4KCkRhcyBIb2x6c2Nod2VydCBiZXN0ZWh0IGF1czoKTWV0YWxsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVmltLi4uIChBbmF0b2wsICA3LiBNYWkgMTk5OCwgMDQ6NDU6MzUpOgpWaW0gQW50aS1Hb2FscyAKClRoZXJlIGFyZSBzb21lIHRoaW5ncyB0aGF0IFZpbSBkb2VzIG5vdCB0cnkgdG8gYmU6IAoKICAgICAgIFZpbSBpcyBub3QgYSBjb21waWxlci4gCiAgICAgICBWaW0gaXMgbm90IGEgbWFpbCBwcm9ncmFtLiAKICAgICAgIFZpbSBpcyBub3QgYSBuZXdzcmVhZGVyLiAKICAgICAgIFZpbSBpcyBub3QgYSBwcmludCBwcm9ncmFtLiAKICAgICAgIFZpbSBpcyBub3QgYSBzaGVsbC4gCiAgICAgICBWaW0gaXMgbm90IGEgc3BlbGxpbmcgY2hlY2tlci4gCiAgICAgICBWaW0gaXMgbm90IGEgd2ViIGJyb3dzZXIuIAogICAgICAgVmltIGlzIG5vdCBhbiBvcGVyYXRpbmcgc3lzdGVtLiAKICAgICAgIFZpbSBpcyBub3QgRW1hY3MuIAoKSSBob3BlIEkgaGF2ZSBtYWRlIGEgcG9pbnQgaGVyZS4gCgooaHR0cDovL3d3dy52aW0ub3JnL2RldmUuaHRtbCkKCkFuYXRvbCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBCZXNjaHdlcmRlIHVlYmVyIExVRyEgKEJhcmFrLCAgNy4gTWFpIDE5OTgsIDA2OjU5OjMxKToKfiMhIHJuPUdyaW1tYm9ybiBydD04OTQ0ODMzOTkgcmc9c2NobWFycm4KfiMhIHRpZD04OTM4MDAxODEKSG0sIGdpYnQgZXMgd2lya2xpY2ggQmllciBhdXNzZXIgS29lbHNjaD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiByZW50bmVyLWdhbmc/IChKaW1kaWdyaXosICA3LiBNYWkgMTk5OCwgMTQ6MTc6MzApOgp+IyEgcm49V2ltIHJ0PTg5NDQ5NjM2MyByZz1zY2htYXJybgp+IyEgdGlkPTg5NDQ5NjM2MwpIbW0sIAoKd2VubiBpY2ggbWlyIG9ubGluZXplaXQgdW5kIERhdHVtIGRlcwplcnN0ZW4gZWlubG9nZ2VucyBzbyBhbnNlaGUsIHNpbmQgZGllIHNvZ2VuYW5udGVuClJlbnRuZXIgZ3JhZGUgbWFsIGRlciBQdWJlcnRhZXQgZW50d2FjaHNlbi4gOi0pCgpTQ05SLAogSmRHIChhdWNoIG5vY2ggcnVlc3RpZykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClphdWJlcnNwcnVlY2hlIGFid2VocmVuIT8gKEdvciwgIDcuIE1haSAxOTk4LCAyMDowNzoyNyk6CmJlb2JhY2h0ZSBnb3IKCkdvciB3ZWhydCBEZWluZW4gWmF1YmVyc3BydWNoIGFiLgoKKndhZWx6KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFphdWJlcnNwcnVlY2hlIGFid2VocmVuIT8gKEhhbmdvdmVyLCAgNy4gTWFpIDE5OTgsIDIxOjQyOjIxKToKfiMhIHJuPUdvciBydD04OTQ1NjQ0NDcgcmc9c2NobWFycm4KfiMhIHRpZD04OTQ1NjQ0NDcKS2xhciEKCi1IYW5nb3Zlcgood2FyIGF1Y2ggc2Nob24gc28gc2NoaXpvLCBkYXNzIGVyIGVpbiBlaWdlbmVzICdiZW9iYWNodGUgaGFuZ292ZXInCmFiZ2V3ZWhydCBoYXQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHJlbnRuZXItZ2FuZz8gKFRoZXJpbiwgIDcuIE1haSAxOTk4LCAyMjowNDo0OCk6Cn4jISBybj1KaW1kaWdyaXogcnQ9ODk0NTQzNDUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk0NDk2MzYzCk5laW4sIGljaCB3ZXJkZSBtaWNoIGpldHp0IG5pY2h0IHJlY2h0ZmVydGlnZW4gdW5kIG5pY2h0IHNhZ2VuLCBkYXNzIGljaAplaWdlbnRsaWNoIHZvbiBtaXR0ZSA5NCBzdGFtbWUgdW5kIGRhcyBtZWluIENoYXJha3RlciB6d2lzY2hlbnplaXRsaWNoCnZlcmxvcmVuIGdpbmcuIE5laW4gZGFzIHdlcmRlIGljaCBuaWNodC4uLgoKVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkx1ZyAoVGVkZHksICA4LiBNYWkgMTk5OCwgMDA6NDY6MzIpOgogW0FsbGdlbWVpbjpEb3R0ZXJiYXJ0XSBoZXksIHNvIHJ1aGlnIGF1ZiAtYT8gCltBbGxnZW1laW46WGVyYV0gZXJ6YWVobCBkb2NoIHdhcy4uLiA6KQpbQWxsZ2VtZWluOkx1Z10gV2FzLgpbQWxsZ2VtZWluOkRvdHRlcmJhcnRdIGFsc28sIGRhIGdhYiBlcyBtYWwgZWluZW4ga2xlaW5lbiBqdW5nZW4gbWl0IGRlbSBuYW1lbgpbQWxsZ2VtZWluOkRvdHRlcmJhcnRdIGx1ZywgZGVyIG1laW50ZS4uLi4uCltBbGxnZW1laW46SGVsdmFdIHZpZWwgU3Bhc3Mgbm9jaCA6KQpbPE1hc3RlUj46SGVsdmEgdmVybGFlc3N0IGFscyBMZXR6dGUgZGllIEViZW5lICd6TXVkJywgd29yYXVmIGRpZXNlIHNpY2ggaW4KICAgICAgICAgIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXQoKQWxzbyBTTyBzY2hsaW1tIGlzdCBMdWcgZG9jaCBhdWNoIG5pY2h0IDspCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEx1ZyAoTHVnLCAgOC4gTWFpIDE5OTgsIDAxOjIxOjMzKToKfiMhIHJuPVRlZGR5IHJ0PTg5NDU4MTE5MiByZz1zY2htYXJybgp+IyEgdGlkPTg5NDU4MTE5MgoKQWVoIFRlZGR5PwoKSWNoIGJpbiBub2NoIHZpZWwgc2NobGltbWVyLiBIYXR0ZSBlYmVuIG1laW5lbiBzdWJ0aWxlbiBUYWcuCgoKRmlkS0cKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbmV1bGljaCBnZWxlc2VuIChNb3Jnb3RoLCAgOC4gTWFpIDE5OTgsIDA3OjE5OjU4KToKfiMhIG9uPUphc3BlciBvdD04OTQ1NzY2OTEgb2c9d2l0emUKfiMhIHJuPVNtYXJ0ZSBydD04OTQzODIzNjIgcmc9d2l0emUKfiMhIHRpZD04OTQzODIzNjIKd2FyIGRhcyBuZXQgdm9uIGhhcmFsZCBzY2htaWR0CgpzcGFydCBzaWNoIGRlbiB3aXR6LCBlaW4gZ2V3aXNzZXIgaWRpb3Qgd2lyZCBkZW4gYXJ0aWtlbCBlaCB2ZXJsZWdlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBuZXVsaWNoIGdlbGVzZW4gKE1vcmdvdGgsICA4LiBNYWkgMTk5OCwgMDc6MjA6NDApOgp+IyEgcm49TW9yZ290aCBydD04OTQ2MDQ3OTggcmc9c2NobWFycm4KfiMhIHRpZD04OTQzODIzNjIKSG9lciBtYWwsIFNvZWhuY2hlbi4uLi5NSUNIIGFscyBJZGlvdCB6dSBiZXplaWNobmVuIGlzdCBnYW56IHNjaG9lbiBnZXdhZ3QuIER1Cm11c3N0IG1hbCB3aWVkZXIgdWViZXJzIEtuaWUgZ2VsZWd0IHdlcmRlbi4gOy0pCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHdXRlIGFsdGUgVHJhZGl0aW9uLi4uIChHcmltbWJvcm4sICA4LiBNYWkgMTk5OCwgMTA6MjE6MjQpOgpJcmdlbmR3aWUgaXN0IGRhcyBlaW5nZXNjaGxhZmVuLCB3ZWlzcyBhdWNoIG5pY2h0IHdpZS4gSGllciBpc3QgZXIgYWxzbywgZGVyClNwcnVjaCBkZXIgV29jaGU6CgoiRGllIGJlc3RlIEFydCBaZWl0IHp1IHNwYXJlbiBpc3QsIHNpZSB6dSBudXR6ZW4uIgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IG1pdCBLYWxlbmRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogV29obnVuZyBpbiBEdWVzc2VsZG9yZiBnZXN1Y2h0IChBbmF0b2wsICA5LiBNYWkgMTk5OCwgMDI6MDU6MDYpOgp+IyEgb249QW5hdG9sIG90PTg5NDY3MjI2OSBvZz1zdWNoZS1iaWV0ZQp+IyEgcm49RGllZGVyIHJ0PTg5NDY3MTMxNSByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTg5NDQ3ODM0NwpKYSwgZGFzIHdlaXNzIEVtYmUgZG9jaCBhbGxlcywgYWJlciBkaWUgV2llbmVyIHJlZGVuIG51bm1hbCwgc28sIHdlbm4KZXIgZGFzIHNhZ3QuIERhcyBpc3QgZG9jaCAoZG9wcGVsdGUtQW5mKGRvcHBlbHRlLUFuZihkb3BwZWx0ZS1BbmYoZG9wcGVsdGUuLi4KW1JlY291cnNpb24gdG9vIGRlZXAgZXJyb3JdLXVuZ3N6ZWljaGVuKXViZXJoYXVwdCBrZWluIFByb2JsZW0gOikKCkFuYXRvbCwga2VpbiBXaWVuZXIgVyhkb3BwZWx0ZS1BbmYoZG9wcGVsdGUtQW5mKGRvcHBlbHRlLUFuZihkb3BwZWx0ZS1BbmRmKC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW5uZXIgUG9tbWVzYnVkZSAoVGVkZHksICA5LiBNYWkgMTk5OCwgMjE6NDA6MDMpOgpHZXN0ZXJuIGlubmVyIFBvbW1lc2J1ZGUgaW4gR2Vsc2Vua2lyY2hlbjoKClJlaW4gaW4gZGllIEthcnRvZmZlbCwgCnNvIGtvbW1lbiBkaWUgUG9tbWVzLgoKVGVkZHkgd2FyIGVpbiB3ZW5pZyBlcnN0YXVudCB1ZWJlciBkYXMgbmV1ZSB1bmQgcmV2b2x1dGlvbmFlcmUKSGVyc3RlbGx1bmdzdmVyZmFocmVuLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhcmFjZWxzdXMgKyBSb2NodXMgPSBbVG9kOkxhcnNdID8gKEFuYXRvbCwgIDkuIE1haSAxOTk4LCAyMzoxMDoxNik6Ck5haXJvbGYgdGVpbHQgRGlyIG1pdDogaWNoIGlkbGUgLi4gTmVzaSBpcyB0YXViIHdlaWwgc2llIE15dW5nIG1hY2h0IHVuZCBobW0KTmFpcm9sZiB0ZWlsdCBEaXIgbWl0OiB3ZXIgaXMgbnIgMyA/IGtleSA/LS0+IHNpZWhlIG5lc2FqYSA6LSkKW1RvZDpMYXJzXSBTY2hyZWluZW1ha2VycyBpaHJlIFNjaHdlc3RlciBoYXQgZ2VyYWRlIEtleSB1bWdlYnJhY2h0LgpbVG9kOlRvZF0gREFTIFdBUiBTQ0hPTiBEQVMgNDA3VEUgTUFMIQpbVG9kOlNjaHJlaW5lbWFrZXJzIGlocmUgU2Nod2VzdGVyXSBTY2hpY2h0IGltIFNjaGFjaHQhCgpPaywgamV0enQgd2lzc2VuIHdpciBhdWNoLCB3b2hpbiBNeXVuZyB1ZWJlcmFsbCBoaW50cmFuc2VuIGthbm4uCkF1YS4KCkF1YXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoIGlubmVyIFBvbW1lc2J1ZGUgKFRoZXJpbiwgIDkuIE1haSAxOTk4LCAyMzozNDo0NSk6Cn4jISBybj1UZWRkeSBydD04OTQ3NDI4MDMgcmc9c2NobWFycm4KfiMhIHRpZD04OTQ3NDI4MDMKVGVkZHksIGRhcyBoYXQgYWJlciBsYW5nIGdlZGF1ZXJ0LCBiaXMgRHVzIHZlcm9lZmZlbnRsaWNodCBoYXN0IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVsaWNoIGlubmVyIFBvbW1lc2J1ZGUgKFRlZGR5LCAgOS4gTWFpIDE5OTgsIDIzOjM1OjA5KToKfiMhIHJuPVRoZXJpbiBydD04OTQ3NDk2ODUgcmc9c2NobWFycm4KfiMhIHRpZD04OTQ3NDI4MDMKSGV5LCBpY2ggbXVzcyBhdWNoIGlyZ2VuZHdhbm4gbWFsIHNjaGFsZmVuIDspCgpUZWRkeSwgbm9jaCBpbW1lciBtdWVkZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVhLi4uIChBbmF0b2wsIDExLiBNYWkgMTk5OCwgMDE6NDY6NTIpOgpEdSBuaW1tc3Qgc2Nob24gYW0gU3BpZWwgdGVpbCEKVmVyd2VuZGUgRGVpbmUgYWx0ZSBzdGVyYmxpY2hlIEh1ZWxsZSAuLi4KU2Nob2tvLCBOYWNodHdpbmQgdW5kIEx1ZyBzaW5kIGltIFNwaWVsLgpFaW4gSGludGVyemltbWVyLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogcmF1cy4KRWluZSBGYWxsdHVlciAoZ2VvZWZmbmV0KS4KPiBMdWcgZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBtaXQgbmFkZWxzcGl0emVuIEVja3phZWhuZW4gYW4uCk5hY2h0d2luZCBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgpTY2hva28gZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBhbi4KCkZSRVVOREUgOikgCgpBbmF0b2wsIGZyb2ggd2VsY2hlIHp1IGhhYmVuIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VubiB2aWVsZSBzaWNoIHN0cmVpdGVuLCBmcmV1dCBzaWNoIGVpbiBFaW5ob3JuIChNYWhhdG1hLCAxMS4gTWFpIDE5OTgsIDEzOjM5OjQ0KToKSHlkcmEgemVyc2NobWV0dGVydCBFem8gLgpEdSBzY2hsYWVnc3QgSHlkcmEgbWl0IGhlaWxpZ2VuIEVsZW1lbnRhcnNjaHdlcnQuCkV6byB0cmlmZnQgSHlkcmEgaGFydCAuClRodWZoaXIgdmVyZmVobHQgSHlkcmEgLgpFaW5ob3JuIHRyaWZmdCBIeWRyYSAuCkRhcyBNb3JnZW5HcmF1ZW4gZXJ6aXR0ZXJ0IHVudGVyIGVpbmVtIGxhbmdlem9nZW5lbiwgdW5tZW5zY2hsaWNoZW4gU2NocmVpLgpEaWUgSHlkcmEgc3RpcmJ0IGluIGVpbmVtIE1lZXIgdm9uIEJsdXQuCkF1cyBkZW0gTGVpY2huYW0gZXJzY2hlaW50IGRpZSBMaWNodGdlc3RhbHQgUHVtYXMgdW5kIHVlYmVycmVpY2h0IFNpbHZhbmEKbGFlY2hlbG5kIGVpbmUgUnVlc3R1bmcgYXVzIGZ1bmtlbG5kZW4gSnV3ZWxlbi4gTWl0IGRlbSBuYWVjaHN0ZW4gQXVnZW4tCnp3aW5rZXJuIGlzdCBzaWUgdmVyc2Nod3VuZGVuLgpTaWx2YW5hIHJlaWh0IHNpY2ggbnVuIGluIGRpZSBMaXN0ZSBkZXIgc2FnZW51bXdvYmVuZW4gSHlkcmF0b2V0ZXIgZWluIHVuZApiZWtvbW10IGVpbmUgZGVyIGxlZ2VuZGFlcmVuIFJ1ZXN0dW5nZW4gZGllc2VyIFp1bmZ0LgpEaWUgSHlkcmEgemVyZmFlbGx0IHp1IGVpbmVtIGdpZ2FudGlzY2hlbiBCZXJnIEdlYmVpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipsYWNoKiAoTmFpcm9sZiwgMTEuIE1haSAxOTk4LCAxNDo1MzoyNSk6CmlpIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwp8IFtURUFNOlRvZCBkZW0gZGllKCldIFNoYXJpYS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwp8IEdpbGRlOiBLbGVydXMgICAgICAgICAgICAgICAgICAgICAgIHwgQ2hhcmFrdGVyOiBndXQgICAgICAgICAgICAgICAgICAgICAgfAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwp8IFNlaGVybGV2ZWwuLi46IDYyICg2MCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAp8IEdpbGRlbmxldmVsLi46IDcgKGRpZSBFcmxldWNodGV0ZSBkZXMgTGVtYm9sZCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwp8IEVyZmFocnVuZzogLTM5Njg1NjYwICgtOTYzMjU2MjEpICAgIHwgVG9kZTogMTAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAp8IEFiZW50ZXVlcjogMjUyMyB2b24gMjM4MSBQdW5rdGUgICAgIHwgR2lmdDogZ2VzdW5kICAgICAgICAgICAgICAgICAgICAgICAgfAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwp8IEtyYWZ0Li4uLi4uLi4uLi46IDIwICAgICAgICAgICAgICAgIHwgR2VzY2hpY2tsaWNoa2VpdDogMjAgKCsyKSAgICAgICAgICAgfAp8IEF1c2RhdWVyLi4uLi4uLi46IDIwICgrMSkgICAgICAgICAgIHwgSW50ZWxsaWdlbnouLi4uLjogMjAgKCszKSAgICAgICAgICAgfAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwp8IFZvcnNpY2h0Li4uLi46IDEwMC8yMDkgIDAlICAgICAgICAgMjUlICAgICAgICAgNTAlICAgICAgICAgNzUlICAgICAgIDEwMCUgfAp8IEdlc3VuZGhlaXQuLi46IDE1MC8yMTAgICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjKiMjIyMjIyMjIyMjICAgICAgICAgICAgICAgfAp8IEtvbnplbnRyYXRpb246IDE2MC8yMjYgICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgICAgICAgICAgICAgICAgfAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwpEdSBiaXN0IG5pY2h0IGFuc3ByZWNoYmFyOiBzb3JyeSBnZXJhZGUga2VpbmUgemVpdApGbHVjaHRyaWNodHVuZzogYWJlbnRldXJlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmxhY2gqIGRpZSAyLiAoTmFpcm9sZiwgMTEuIE1haSAxOTk4LCAxNTowMToyMCk6Ci0gW1RFQU06VG9kIGRlbSBkaWUoKV0gU2hhcmlhLiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KUmFzc2UgLi4uLi4uLi4uLi4uIEVsZiAgICAgICAgICAgICAgICBDaGFyYWt0ZXIgLi4uLi4uLi4gZ3V0Ckdlc2NobGVjaHQgLi4uLi4uLiB3ZWlibGljaCAgICAgICAgICAgR3JvZXNzZSAuLi4uLi4uLi4uIDE5NSBjbQpTdHVmZSAuLi4uLi4uLi4uLi4gNjIgICAgICAgICAgICAgICAgIEdld2ljaHQgLi4uLi4uLi4uLiA3MSBrZwpHaWxkZSAuLi4uLi4uLi4uLi4gS2xlcnVzICAgICAgICAgICAgIEdpbGRlbnN0dWZlIC4uLi4uLiA3CkVyZmFocnVuZyAuLi4uLi4uLiA1OTAwMDAwMCBQdW5rdGUgICAgQWJlbnRldWVyIC4uLi4uLi4uIDI1MjMgKDIzODEpCgpHZXNjaGlja2xpY2hrZWl0IC4gMjAgKCs4KSAgICAgICAgICAgIEF1c2RhdWVyIC4uLi4uLi4uLiAyMCAoKzcpCktyYWZ0IC4uLi4uLi4uLi4uLiAyMCAoKzYpICAgICAgICAgICAgSW50ZWxsaWdlbnogLi4uLi4uIDIwICgrOSkKCkdlc3VuZGhlaXQgLi4uLi4uLiAyNDMgKDI1OCkgICAgICAgICAgR2lmdCAuLi4uLi4uLi4uLi4uIGdlc3VuZApLb256ZW50cmF0aW9uIC4uLi4gMjcwICgyNzQpICAgICAgICAgIFZvcnNpY2h0IC4uLi4uLi4uLiAxMDAKVG9kZSAuLi4uLi4uLi4uLi4uIGtlaW4gTWFsdXMgICAgICAgICBGbHVjaHRyaWNodHVuZyAuLi4gImFiZW50ZXVyZXIiClZlcmdsaWNoZW4gbWl0IERlaW5lbiBNaXRzcGllbGVybiwga2VubnN0IER1IERpY2ggaW0gTW9yZ2VuR3JhdWVuCmF1c3Nlcm9yZGVudGxpY2ggZ3V0IGF1cy4gQWJzb2x1dCBnZXNlaGVuIGJpc3QgRHUgc2Nob24gd2VpdApoZXJ1bWdla29tbWVuLgpEdSBiaXN0IG5pY2h0IGFuc3ByZWNoYmFyOiAic29ycnkgZ2VyYWRlIGtlaW5lIHplaXQiCkFsdGVyOiAgOTUgVGFnZSAyMSBTdHVuZGVuIDEzIE1pbnV0ZW4gMTggU2VrdW5kZW4uCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbnNpY2h0ID8/PyAoTW9yZ290aCwgMTEuIE1haSAxOTk4LCAxNToyODowNCk6Cj4gUmluZ29yIHNhZ3Q6IGhleSwgaWNoIGJpbiBlaW4gdG90YWwgdW5rcmVhdGl2ZXIgendlcmcKPiBSaW5nb3Igc2FndDogaWNoIGhhYiBzY2hvbiBwcm9ibGVtZSBkYWJlaSwgbWlyIHZhcmlhYmxlbm5hbWVuIGF1c3p1ZGVua2VuCmJlaW0KUmluZ29yIHNhZ3Q6IHByb2dnZW4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUdWZmaSB1bmQgc3Vlc3MgOykgKEFuYXRvbCwgMTEuIE1haSAxOTk4LCAxNjo1MzoxMik6ClsxNTJxCgpFYmVuIHp1bSBUaGVtYSAiV2VyIGlzdCBzdWVzc2VyLi4uIjoKW1NlaGVyOlR1ZmZpXSBkYXMgaXN0IHZpZWxsZWljaHQgZXR3YXMgcHJvdm9rYW50LCBhYmVyIGljaCBmaW5kZSBudXIgWndlcmdlCltTZWhlcjpUdWZmaV0gc3Vlc3MKW1NlaGVyOlplcGh5cl0gZGFzIGlzdCBuaWNodCBwcm92b2thbnQsIGRhcyBpc3QgcGVydmVycywgdHVmZmkhCltTZWhlcjpOZXNhamFdIGRhcyBpc3QgbmljaHQgcHJvdm9rYW50IFR1ZmZpIGRhcyBpc3QgZWtsaWcKW1NlaGVyOkFuYXRvbF0gVHVmZmksIGRhcyBpc3QgbmljaHQgcHJvdm9rYW50LCBkYXMgaXN0IGdlc2NobWFja3N2ZXJpcnJlbmQgOikKW1NlaGVyOlR1ZmZpXSAqd2FlbHoqCltTZWhlcjpOZXNhamEgc3RpbW10IEM0IHZvbGwgdW5kIGdhbnogenUgLi4uLl0KW1NlaGVyOlplcGh5cl0gKnBydXN0KgpbU2VoZXI6TmVzYWphXSBkcmVpIEVsZmVuIHVuZCBlaW4gR2VkYW5rZSA6KSkpKQoKU3Vlc3MgaXN0IFR1ZmZpIG5pY2h0IGdlcmFkZSwgYWJlciBoaW4gdW5kIHdpZWRlciBrbnVmZmlnIDopCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHdXRlIGFsdGUgVHJhZGl0aW9uLi4uIChBY3JpbW9uLCAxMS4gTWFpIDE5OTgsIDIwOjMxOjE0KToKfiMhIHJuPUdyaW1tYm9ybiBydD04OTQ2MTU2ODQgcmc9c2NobWFycm4KfiMhIHRpZD04OTQ2MTU2ODQKSGllciBlaW4gYW5kZXJlciBTcHJ1Y2ggZGVyIFdvY2hlLiBFciBmdW5rdGlvbmllcnQgc29nYXI6CgoiRGllIGJlc3RlIEFydCBaZWl0IHp1IGJla29tbWVuIGlzdCwgc2llIHNpY2ggenUgbmVobWVuLiIKCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHdXRlIGFsdGUgVHJhZGl0aW9uLi4uIChBbmF0b2wsIDExLiBNYWkgMTk5OCwgMjI6NDI6MjgpOgp+IyEgcm49QWNyaW1vbiBydD04OTQ5MTE0NzQgcmc9c2NobWFycm4KfiMhIHRpZD04OTQ2MTU2ODQKSWNoIGtlbm4gZGFzIHdlbmlnZXIgYWxzIGVpbmVuIFNwcnVjaCBkZXIgV29jaGUsIHNvbmRlcm4gCmFscyBlcm5zdHp1bmVobWVuZGUgdW5kIGJydXRhbGUgV2FocmhlaXQ6CgoiRnVlcidzIE11ZCBtdXNzdCBEdSBkaXIga2VpbmUgWmVpdCBuZWhtZW4uIERhcyBNdWQgbmltbXQgc2llIHNpY2ggc2VsYnN0LiIKCkRpZSBTdWNodCBydWZ0OiBBbmF0b2whIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG0sIG9iIElDSCBkYXMgTGFnIGJpbiA/PyAoTW9yZ290aCwgMTIuIE1haSAxOTk4LCAwNzoxMzozOSk6CkdlcmFkZSBlaW5nZWxvZ2d0Li4uLgpMZXR6dGUgNjAgbWluOiAjIyAoMi4yJSkKTGV0enRlIDE1IG1pbjogIyMjICgyLjUlKQpMZXR6dGUgTWludXRlOiAjIyMjIyMjIyAoOC4zJSkKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9lZnRlcnMgbWFsd2FzIG5ldWVzIDotKSAoU2hhcmlhLCAxMi4gTWFpIDE5OTgsIDExOjMyOjMyKToKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKfCBbVEVBTTpUb2QgZGVtIGRpZSgpXSBTaGFyaWEuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKfCBHaWxkZTogS2xlcnVzICAgICAgICAgICAgICAgICAgICAgICB8IENoYXJha3RlcjogaGVpbGlnICAgICAgICAgICAgICAgICAgIHwKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKfCBTZWhlcmxldmVsLi4uOiA2MiAoNjIpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKfCBHaWxkZW5sZXZlbC4uOiA3IChkaWUgRXJsZXVjaHRldGUgZGVzIExlbWJvbGQpICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKfCBFcmZhaHJ1bmc6IDYwNjg1MTEyIFB1bmt0ZSAgICAgICAgICB8IFRvZGU6IGtlaW4gTWFsdXMgICAgICAgICAgICAgICAgICAgIHwKfCBBYmVudGV1ZXI6IDI1MjMgdm9uIDIzODEgUHVua3RlICAgICB8IEdpZnQ6IGdlc3VuZCAgICAgICAgICAgICAgICAgICAgICAgIHwKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKfCBLcmFmdC4uLi4uLi4uLi4uOiAyMCAoKzMwKSAgICAgICAgICB8IEdlc2NoaWNrbGljaGtlaXQ6IDIwICgrNTApICAgICAgICAgIHwKfCBBdXNkYXVlci4uLi4uLi4uOiAyMCAoKzM1KSAgICAgICAgICB8IEludGVsbGlnZW56Li4uLi46IDIwICgrMzApICAgICAgICAgIHwKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKfCBWb3JzaWNodC4uLi4uOiAxNDAvMjU3ICAwJSAgICAgICAgIDI1JSAgICAgICAgIDUwJSAgICAgICAgIDc1JSAgICAgICAxMDAlIHwKfCBHZXN1bmRoZWl0Li4uOiAyNTgvMjU4ICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIHwKfCBLb256ZW50cmF0aW9uOiAyNzQvMjc0ICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIHwKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9od2VoIC4uLiB3ZW5uIG1hZ2llciB6dXNhbW1lbnN0ZWhlbiB3ZW5ucyBpcmdlbmR3byBidWdndCA6LSkgKE5haXJvbGYsIDEyLiBNYWkgMTk5OCwgMTE6NDI6MTcpOgpXaWUgaGVpc3N0IER1IGRlbm4gPyBTY2hvZW4sIGRhc3MgRHUgd2llZGVyIGRhIGJpc3QsIFNoYXJpYSEKUGFzc3dvcmQ6CkR1IG5pbW1zdCBzY2hvbiBhbSBTcGllbCB0ZWlsIQpWZXJ3ZW5kZSBEZWluZSBhbHRlIHN0ZXJibGljaGUgSHVlbGxlIC4uLgo+IER1IHNpZWhzdCBlaW5lbiBGZWhsZXIgaW0gUmF1bS1aZWl0LUdlZnVlZ2UuCkR1IHNpZWhzdCBlaW5lbiBGZWhsZXIgaW0gUmF1bS1aZWl0LUdlZnVlZ2UuCkVpbiBzZWx0c2FtZXMgR2VmdWVobCB1ZWJlcmtvbW10IERpY2ggLi4uCkR1IHZlcmxpZXJzdCBkaWUgT3JpZW50aWVydW5nIC4uLgpFaW4gUGVudGhvdXNlLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogdW50ZW4gdW5kIHZvcmhhbmcuClBhdHJ5biwgUGFkcmVpYyBvZGVyIFBhcmFjZWxzdXM/LgpTaGFkb3cgUmlrdXMgbXVzcyBpbW1lciBhbiAuLi4gZGVua2VuLgpDYXR3ZWF6bGUgd2FlY2hzdCBlaW5lIG5ldWUgTmFzZS4KQ2F0d2VhemxlIHNhZ3Q6IHRzY2hhClJpa3VzIHNhZ3Q6IG9oLCBoYXN0IGR1IHdhcyBkcmFuIGdlbWFjaHQsIGNhdD8KUGFkcmVpYyBzYWd0OiBsaWVndCBiZXN0aW1tdCBhbiBpaHJlbSBQcmVzYXkgOikKc2MKRHUgc2llaHN0IGVpbmVuIEZlaGxlciBpbSBSYXVtLVplaXQtR2VmdWVnZS4KSGFuZ292ZXIgdGVpbHQgRGlyIG1pdDogd2FzIG1hY2hzdCBkdT4/IQpDYXR3ZWF6bGUgc2FndDogaGF0IGpleHByb3BzICRoLnNoYXJpYQpSaWt1cyBzYWd0OiBtb20sIGljaCBlZGl0aWVyIG1hbCBzYXZlZmlsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGF0ZSAoUm9jaHVzLCAxMi4gTWFpIDE5OTgsIDEzOjE3OjUxKToKW01hZ2llcjpSdW1hdGFdIGRhcyBpc3QgTUlTVCB3aWUgZGFzIHByb2dyYW1taWVydCBpc3QgOigKW01hZ2llcjpSb2NodXNdIGtvbW10IGRhcyBscyBuaWNodCB2b24gaGF0ZT8KW01hZ2llcjpSdW1hdGEgIHNpZWh0IGRhIGtlaW5lbiBXaWRlcnNwcnVjaF0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQmVnaW5uIGVpbmVyIEludmFzaW9uPyAoQW5hdG9sLCAxMi4gTWFpIDE5OTgsIDE0OjM3OjEwKToKfiMhIHJuPVllbmRpIHJ0PTg5NDk2ODAwMyByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTg5NDk2NzE1MwpNdWVzc3RlIGRhcyBuaWNodCAiV2VzZW4gdW5kIHZlcndlc2VuIGxhc3Nlbi4uLiIgaGVpc3Nlbj8KCkFuYXRvbCwgYmVpZGVzIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHVtbWVyIEFmZmUuLi47KSAoU2hhaGksIDEyLiBNYWkgMTk5OCwgMTY6NDY6MTkpOgoKS2xhdXRmaXh3ZWNoIGx1dHNjaHQgZXR3YXMgYW4gZWluZW0gV2VzcGVuc3RhY2hlbCB1bmQgdmVyemllaHQgZGFzIEdlc2ljaHQuCkRhbmFjaCBwYXRzY2h0IGVyIG1pdCBkZXIgSGFuZCBkcmF1ZiB1bmQgc2NobmF0dGVydCBsYXV0LgoKV2VubiB3dW5kZXJ0cz8/Pz8KCidzIFNoYWhlcmwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggaW0gdG9kZXNyYXVtIChIYW5nb3ZlciwgMTIuIE1haSAxOTk4LCAxNjo0ODoyNik6CltUb2Q6TGFyc10gRWluIEh5ZHJha29wZiBoYXQgZ2VyYWRlIEV6byB1bWdlYnJhY2h0LgpbVG9kOkVpbiBIeWRyYWtvcGZdIGhzc3Nzc3MKICBEZXIgSHlkcmFrb3BmIHRyaWZmdCBFem8gc2VociBoYXJ0LgogIERlciBIeWRyYWtvcGYgdHJpZmZ0IEV6byBoYXJ0LgogIERlciBIeWRyYWtvcGYgdHJpZmZ0IEV6byBzZWhyIGhhcnQuCiAgRGVyIEh5ZHJha29wZiB0cmlmZnQgRXpvIHNlaHIgaGFydC4KCgpEYXNzIGRpZSBLb2VwcGUgZWluZW4gYXVjaCBkYWhpbiB2ZXJmb2xnZW4uLi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJlZ2lubiBlaW5lciBJbnZhc2lvbj8gKEdyaW1tYm9ybiwgMTIuIE1haSAxOTk4LCAyMzoyODowOCk6Cn4jISBybj1BbmF0b2wgcnQ9ODk0OTc2NjMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk0OTY3MTUzCkRhcyAidW5kIiBpc3Qgbm9jaCB6dXZpZWwsIGRhbm4gc3RpbW10cy4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbSBEdWVzdGVyd2FsZC4uLiAoVHN1bmFtaSwgMTMuIE1haSAxOTk4LCAxNDo0ODo0Nik6Ck9obmUgZWluZSBaZWlsZSBnZWxvZXNjaHQgenUgaGFiZW46CgpkcnVlY2tlIHJ1YmluCkR1IGJlcnVlaHJzdCBkZW4gUnViaW4gaW4gZGVyIFNvbm5lIGRlciBUYWZlbC4KQm9pbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpnZWZhZWhybGljaCwgZ2VmYWVocmxpY2ggaXN0IGRhcyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaWNoIGZ1ZWhsIG1pY2ggc28gYWxsZWluLi4uIChUaGVyaW4sIDE0LiBNYWkgMTk5OCwgMDU6NTM6MzQpOgogIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEb24sIDE0LiBNYWkgMTk5OCwgMDU6NTI6MTQgKDE0IFRlaWxuZWhtZXIpCgpFbWJlLi4uLi4uLi4uLi5KLnMgU2FsaW5hLi4uLi4uLi4uSi5zIEFscGhhLi4uLi4uLi4uLkoucyBTZWxic3Rtb3JkLi4uLi5KLnoKSW5lbHVraS4uLi4uLi4uSi56IEh5cG8uLi4uLi4uLi4uLmkuUyBTbWVhZ29sLi4uLi4uLi5KLlMgU2NobGlwcy4uLi4uLi4uaS5TCkxpbnV4Li4uLi4uLi4uLkoueiBaaW5vLi4uLi4uLi4uLi5JLnogTmFpcm9sZi4uLi4uLi4uSi5TIFNoYXJpYS4uLi4uLi4uLkouUwpUaGVyaW4uLi4uLi4uLi4uLlMgS29iYXlhc2hpLi4uLi4uSS5NCgpBbGxlcyBKb2Z0IGhlcnVtLCBpY2ggZ2xhdWIgaWNoIGdlaCBhdWNoIGdsZWljaC4uLgoKRGFzIG1hY2h0IGRhbm4gMTMgZWluZ2Vsb2dndGUgSWRsZXIgOikKKExlaWRlciBibGVpYnQgZGFubiBrZWluZXIgdWViZXIsIGRlciBkYXJ1ZWJlciB3YXMgbmFjaCBzY2htYXJybiBwb3N0ZW4Ka29lbm50ZSkKClQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2h1aGUgenViaW5kZW4gKEtudXJ0LCAxNC4gTWFpIDE5OTgsIDA3OjU5OjAwKToKT2ZmZW5zaWNodGxpY2ggbXVzcyBtaXIgbWVpbiBWZXJsb2J0ZXIgU2NodWhlIHVuZCBNYW50ZWwgenViaW5kZW46CgooLi4uKQpBbGxlcyBhbmdlem9nZW4sIHdhcyBnaW5nLgo+IHNjaGxpZXNzZSBtYW50ZWwKRHUgc2NobGllc3N0IERlaW5lbiBNYW50ZWwgZmVzdGVyIHVtIERpY2guCgpEZWluIFBhcnRuZXIgaXN0IGxlaWRlciBuaWNodCBkYSwgdW0gRGlyIGJlaXp1c3RlaGVuLgoKKC4uLikKU2VociBtZXJrd3VlcmRpZy4KS251cnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVlIE5ldHp3ZXJra2FydGUgKEdyaW1tYm9ybiwgMTQuIE1haSAxOTk4LCAxMjoyODo0Myk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9ODk1MTI5ODUzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODk1MTI5ODUzCkJvaCwgb2IgaWNoIGJlaSBtaXIgYXVjaCBlaW5lIE5ldHp3ZXJra2FydGUgZHJpbiBoYWJlIHdlbm4gaWNoIG5ldSBib290ZT8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVpbiBQaG9lbml4IG1laW4gQWJiaWxkIHVuZCBpY2guIChHb3JvZywgMTQuIE1haSAxOTk4LCAxMzoxMTo0Mik6CkR1IHNhZ3N0OiBLbGVyaWtlciBzaW5kIGtsYXNzZSAKPiBCZWxnYXJpYWQgbmlja3QgenVzdGltbWVuZC4gCkJlbGdhcmlhZCBrbnVkZGVsdCBlaW5lbiBQaG9lbml4LCBEaWNoIHVuZCBlaW4gQWJiaWxkIERpY2hzLgoKV3Vzc3RlIGdhciBuaWNodCBkYXMgTWljaHMgYXVjaCBBYmJpbGRlciBtYWNoZW4ga2FubiAoOwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1laW4gUGhvZW5peCBtZWluIEFiYmlsZCB1bmQgaWNoLiAoTWFoYXRtYSwgMTQuIE1haSAxOTk4LCAxMzoyMTozNCk6Cn4jISBybj1Hb3JvZyBydD04OTUxNDQzMDIgcmc9c2NobWFycm4KfiMhIHRpZD04OTUxNDQzMDIKRGFzIGVyaW5uZXJ0IG1pY2ggZ2FueiBzdGFyayBhbiBlaW4gVm9ya29tbW5pcyBpbSBSZWdlbmJvZ2VuOgoKTmljaHRzIGtudWRkZWx0IERpY2gsIGVpbmVuIERpY2hrb3BmLCBlaW5lbiBEaWNoa29wZiwgLi4uIHVuZCBlaW5lbiBEaWNoa29wZi4KCk1haGF0bWEgKHVtZ2ViZW4gdm9uIE1haGF0bWFrb2VwZmVuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV3VlbnNjaGUgZGVyIFNwaWVsZXIuLi4gKExhcmlzc2EsIDE0LiBNYWkgMTk5OCwgMTU6NDk6MzkpOgoKVGFtZWxpIHNhZ3QgenUgQW5hdG9sOiBCaXR0ZSB3YXMga2xlaW5lcy4KCkxhcmksIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkaWUgbGV0enRlbiB3ZXJkZW4gZGllIGVyc3RlbiBzZWluIChUaGVyaW4sIDE0LiBNYWkgMTk5OCwgMTk6NDI6MzQpOgpXaWUgaGVpc3N0IER1IGRlbm4gPyB0aGVyaW4KU2Nob2VuLCBkYXNzIER1IHdpZWRlciBkYSBiaXN0LCBUaGVyaW4hClBhc3N3b3JkOiAKRHUgbmltbXN0IHNjaG9uIGFtIFNwaWVsIHRlaWwhClZlcndlbmRlIERlaW5lIGFsdGUgc3RlcmJsaWNoZSBIdWVsbGUgLi4uCltNYXN0ZVI6VGhlcmluIGxhZXNzdCBkaWUgRWJlbmUgJ1dvVCcgZW50c3RlaGVuLl0KWndpbGxpbmcsIFNoYXJpYSwgVGh1ZmhpciwgSXZvIHVuZCBCaXJkeSBzaW5kIGltIFNwaWVsLjtEZWluIFZlcmxvYnVuZ3NyaW5nCmxldWNodGV0IGF1Zi4gRHUgbGllc3Q6IEtpbGFyIGlzdCBsZWlkZXIgbmljaHQgZGEuO0FtIFBvcnQgVmFpbmVyIFN0YWR0dG9yLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiB1bmQgd2VzdGVuLgpFaW4gbWFnaXNjaGVzIFBvcnRhbC4KSHBtYW4gcnVmdDogbmVpbm5ubm4KQXJtYWdlZGRvbiBydWZ0OiBJY2ggc3RhcnRlIGRhcyBTcGllbCBqZXR6dCBuZXUgIQpHYW1lIGRyaXZlciBzaG91dHM6IExQbXVkIHNodXR0aW5nIGRvd24gaW1tZWRpYXRlbHkuCkRpcmlvbiBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpFbmlybyBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpUYWthbiBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpOZXZhZGEgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KS29yIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCk1pa2EgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KU2Nob2tvIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uClNvbmdva3UgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KUm9hZHJ1bm5lciBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpBbGV4dHIgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KWGVub24gaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KS29iYXlhc2hpIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uClNoYWRlIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkNvcnVzIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uClBoaWxvdSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpUaHVmaXIgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KSm9sbHlyb2dlciBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpMaW51eCBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpTYXBoaXJhIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uClJlYXBlciBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpTcGVpY2hlcmUgVGhlcmluLgpEdSB6aWVoc3QgZGVuIFZlcmxvYnVuZ3NyaW5nIGF1cy4KRHUgemllaHN0IGRlbiBEcmFjaGVudG9ldGVyLU9yZGVuIGF1cy4KRHUgemllaHN0IGRlbiBGdXNzcmluZyBhdXMuCkJpcyBiYWxkIQpDbG9zaW5nIGRvd24uO0RpZSBsZXR6dGVuIHdlcmRlbiBkaWUgZXJzdGVuIHNlaW4sIGRpZSByYXVzZmxpZWdlbj8gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbWFuZGEgc3Bpbm50ISAoSGFuZ292ZXIsIDE1LiBNYWkgMTk5OCwgMTU6MDc6NTgpOgpHcmFkZSBlYmVuOgoKQW1hbmRhIHNhZ3Q6IEhhbGxvIEVpbiBmcm9zY2ghCkFtYW5kYSBzYWd0OiBXaWUgd2FlcnMgZGVubiBtaXQgdW5zLCBLbGVpbmVyPwoKU2FjaGVuIGdpYnRzLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2huZWV3aXR0Y2hlbiBzcGlubnQgYXVjaCAoSGFuZ292ZXIsIDE1LiBNYWkgMTk5OCwgMTU6MDk6MDApOgpOb2NoIGVpbmVuIHZvbiBkZXIgU29ydGU6CgpTY2huZWV3aXR0Y2hlbiBzYWd0IDogJ0JvaW5nIGhhdCBzbyBlaW5lbiBzdWVzc2VuIFN0ZWluYmVpc3Nlci4nCgpJY2ggdmVyc3VjaGUgbGllYmVyIG5pY2h0IHJhdXN6dWZpbmRlbiwgd2llIGRhcyB6dSB2ZXJzdGVoZW4gaXN0LgoKLUhhbmdvdmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW1hbmRhIHNwaW5udCEgKEFzbW9kaXMsIDE1LiBNYWkgMTk5OCwgMTU6MzE6MDYpOgp+IyEgcm49SGFuZ292ZXIgcnQ9ODk1MjM3Njc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk1MjM3Njc4CldpZXNvPyBGcm9lc2NoZSBzaW5kIGViZW4ga2xlaW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTY2huZWV3aXR0Y2hlbiBzcGlubnQgYXVjaCAoS2V5LCAxNS4gTWFpIDE5OTgsIDE1OjU1OjMyKToKfiMhIHJuPUhhbmdvdmVyIHJ0PTg5NTIzNzc0MCByZz1zY2htYXJybgp+IyEgdGlkPTg5NTIzNzc0MApTY2h3ZWluISAuKQoKS2V5IGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW1hbmRhIHNwaW5udCEgKEdyaW1tYm9ybiwgMTUuIE1haSAxOTk4LCAxNjoyNzo1OCk6Cn4jISBybj1IYW5nb3ZlciBydD04OTUyMzc2Nzggcmc9c2NobWFycm4KfiMhIHRpZD04OTUyMzc2NzgKSWNoIGZpbmRlLCBkaWVzZSBTb2RvbWllIGhhdCBpbSBNRyBuaWNodHMgenUgc3VjaGVuLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipsYWNoKiBuZXVsaWNoIGltIGxhZGVuOiAoTmFpcm9sZiwgMTUuIE1haSAxOTk4LCAyMDoxMjowNSk6CjEuIFRyYW5rIGRlciBLcmFmdCAgICAgICAgICAgICA2MDAwIHwgICAyLiBUcmFuayBkZXIgQXVzZGF1ZXIgICAgICAgICAgNjAwMAogIDMuIFRyYW5rIGRlciBJbnRlbGxpZ2VueiAgICAgICA2MDAwIHwgICA0LiBUcmFuayBkZXMgR2VzY2hpY2tzICAgICAgICAgNjAwMAogIDUuIFZhbGEgTW9yZ290aCBzaW5ndDogLi4ud2UgMzAwMDAwIHwgICA2LiBUZXZpbGRvLCBNb3Jnb3RocyBLYXR6ZW53ICAgICAgMAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpsYWNoKiBuZXVsaWNoIGltIGxhZGVuOiAoQXNtb2RpcywgMTYuIE1haSAxOTk4LCAwMDo0MzoxMik6Cn4jISBybj1OYWlyb2xmIHJ0PTg5NTI1NTkyNSByZz1zY2htYXJybgp+IyEgdGlkPTg5NTI1NTkyNQpBZWhtLCBmdWVyIE1vcmdvdGhzIEdlZ3JvZWhsZSBzb2xsIG1hbiBhdWNoIG5vY2ggemFobGVuID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoYS4uLiAoV29vZHksIDE2LiBNYWkgMTk5OCwgMTI6Mjg6MDEpOgo+IHRyZXRlIGRvc2UKRHUgdHJpdHRzdCBhdWYgZGllIHVuYmVzY2hhZWRpZ3RlIERvc2UuCkpldHp0IGlzdCBhdWNoIGRpZSBrYXB1dHQuCj4gdW50IGRvc2UKRWluZSBkZXIgRG9zZW4gYXVmIGRlbSBCb2RlbiBpc3QgdW5iZXNjaGFlZGlndC4KCkFoYS4uLgpXb29keS4tIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb2ViZW4gYW0gVGlnZXI6IChMdWcsIDE2LiBNYWkgMTk5OCwgMjE6NTg6MjgpOgoKTm92YXN0b3JtIHJhbW10IHNlaW4gU2Nod2VydCBpbiBkZW4gQm9kZW4sIGtuaWV0IGRhdm9yIG5pZWRlciwgc2Vua3Qgc2VpbmVuCktvcGYgdW5kIHZlcmJsYXNzdC4KRHUgdGVpbHN0IEtleSBtaXQ6IEhhYiBoYXJ0IGdlcm9lZGVsdApLZXkgaXN0IGdlcmFkZSBuaWNodCBkYToga2lwcGUKVGFyaW5hIHJhbW10IHNpY2ggZGFzIFNjaHdlcnQgd28gcmVpbiB1bmQgdmVycm9lY2hlbHQuCkR1IHdhZWx6dCBEaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KCkdyaW5zCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5kIG5vY2htYWw6IChMdWcsIDE2LiBNYWkgMTk5OCwgMjI6MDc6NDkpOgoKU2FwaGlyYSBrb256ZW50cmllcnQgc2ljaCwgaGVidCBkaWUgSGFlbmRlIHVuZCBtdXJtZWx0IGxhdXRsb3MgV29ydGUgZGVyCk1hY2h0LiBFaW4gRHJhY2hlIGF1cwpyZWluZW0sIERpY2ggYmxlbmRlbmRlbiBMaWNodCBtaXQgZnVua2VsbmRlbiBBdWdlbiBrb21tdCBhbi4gU2FwaGlyYSBrbGV0dGVydAphdWYgZGVuIERyYWNoZW4gdW5kCmRpZSBiZWlkZW4gdmVyc2NobWVsemVuIG1pdCBkZXIgU29ubmUuCltBbGxnZW1laW46THVnXSBTZWggaWNoIGF1cyB3aWUgZWluIE1hZ2llcj8KVGFyaW5hIHJ1ZnQgZWluZW4gcmllc2lnZW4gR2VpZXIgaGVydW50ZXIuIFNpZSBzY2htZWlzc3Qgc2ljaCBhdWYgc2VpbmVuClJ1ZWNrZW4uLi4gZGFzIGhlaXNzdCwgc2llIHZlcnN1Y2h0cywgcGxhdHNjaHQgYWJlciBhdWYgZGVtIEJvZGVuIG5lYmVuIGRlbQpHZWllciBhdWYgdW5kIHNjaGFmZnRzIGdyYWQgbm9jaCBzbywgc2ljaCBiZWltIEFiaGViZW4gZGVzIEdlaWVycyBhbiBzZWluZW4KRnVlc3NlbiAoISkgZmVzdHp1aGFsdGVuLgoKR3JpbnMKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgRnJhdSwgYWxzbyBlaHJsaWNoOiAoTHVnLCAxNi4gTWFpIDE5OTgsIDIyOjExOjAyKToKClRoZXJpbiB6ZWlndCBEaXIgdm9sbGVyIFN0b2x6IHNlaW5lbiBSdW5lbnN0YWI6CkRpZXMgaXN0IGRlciBSdW5lbnN0YWIgdm9uIFRoZXJpbi4KRXIgaXN0IGJlcmVpdHMgbWl0IDI4IFJ1bmVuIHVuZCB6d2VpIFN5bWJvbGVuIGRlciBNYWNodCB2ZXJzZWhlbi4KClRhcmluYSB6ZWlndCBEaXIgaWhyZW4gUnVuZW5zdGFiLiBFciBpc3QgdWViZXIgdW5kIHVlYmVyIG1pdCBGYWx0ZW4gdW5kCkF1Z2VucmluZ2VuIGJlZGVja3QgLi4uIFN5bWJvbGUgZGVyIE5hY2h0LgoKUHJ1c3QKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbSwgZGEgd2FyIGVpbmVyIGZsZWlzc2lnLi4uIChMdWcsIDE2LiBNYWkgMTk5OCwgMjI6MjM6MTEpOgpFaW4gSGludGVybiB2b24gTHVnLgpFaW4gWFhYWFggdm9uIEx1Zy4KRWluIFRvcnNvIHZvbiBMdWcuCkVpbiBrbGVpbmVyIEZyb3NjaCBuYW1lbnMgTm92YXN0b3JtLgpFaW4gemllbWxpY2gga2xlaW5lIEdlaGlybiB2b24gTHVnLgpFaW4gR2VoaXJuIHZvbiBMdWcuCkVpbmUgTmFzZSB2b24gTHVnLgpFaW4gT2JlcmFybSB2b24gTHVnLgpFaW4gVW50ZXJhcm0gdm9uIEx1Zy4KQm9pbmdzIEhvZWxsZW5mZXVlci4KRWluIFplaWdlZmluZ2VyIHZvbiBMdWcuCkVpbiBNaXR0ZWxmaW5nZXIgdm9uIEx1Zy4KTWVyY2VuYXJ5IGRlciBTdHJldW5lci4KRWluIFJpbmdmaW5nZXIgdm9uIEx1Zy4KRWluIEZ1c3Mgdm9uIEx1Zy4KClNvd2FzCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhtLCBkYSB3YXIgZWluZXIgZmxlaXNzaWcuLi4gKEx1ZywgMTYuIE1haSAxOTk4LCAyMjoyMzo0Nyk6Cn4jISBybj1MdWcgcnQ9ODk1MzUwMTkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk1MzUwMTkxCkZBTFNDSCEKCkljaCBiZXRvbmUgaWNoIGhhYmUgd2VkZXIgZWluIEhpcm4gbm9jaCBlaW4gSGVyeiEKCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIbSwgZGEgd2FyIGVpbmVyIGZsZWlzc2lnLi4uIChUaGVyaW4sIDE2LiBNYWkgMTk5OCwgMjI6MjU6MTgpOgp+IyEgcm49THVnIHJ0PTg5NTM1MDIyNyByZz1zY2htYXJybgp+IyEgdGlkPTg5NTM1MDE5MQoKYmVzc2VyPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEhtLCBkYSB3YXIgZWluZXIgZmxlaXNzaWcuLi4gKFppbGx1cywgMTYuIE1haSAxOTk4LCAyMjoyNTo1MCk6Cn4jISBybj1UaGVyaW4gcnQ9ODk1MzUwMzE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk1MzUwMTkxCmphCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBIbSwgZGEgd2FyIGVpbmVyIGZsZWlzc2lnLi4uIChEaG9qYWt0LCAxNi4gTWFpIDE5OTgsIDIyOjI3OjQwKToKfiMhIHJuPVppbGx1cyBydD04OTUzNTAzNTAgcmc9c2NobWFycm4KfiMhIHRpZD04OTUzNTAxOTEKQXJnbCwgeGNhbGwgZ3JpbW1ib3JuLT5Nb3ZlKHRoaXNfdGhyZWFkLCAvbXBhL211ZWxsKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSG0sIGRhIHdhciBlaW5lciBmbGVpc3NpZy4uLiAoS2lsYXIsIDE2LiBNYWkgMTk5OCwgMjI6Mjg6MDYpOgp+IyEgcm49RGhvamFrdCBydD04OTUzNTA0NjAgcmc9c2NobWFycm4KfiMhIHRpZD04OTUzNTAxOTEKV2VpY2hlaSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhtLCBkYSB3YXIgZWluZXIgZmxlaXNzaWcuLi4gKEFzbW9kaXMsIDE3LiBNYWkgMTk5OCwgMTc6MDQ6MDkpOgp+IyEgcm49THVnIHJ0PTg5NTM1MDE5MSByZz1zY2htYXJybgp+IyEgdGlkPTg5NTM1MDE5MQpIb2ZmZW50bGljaCBoYXQgZGVyamVuaWdlLCBkZXIgTHVnIHdpZWRlciB6dXNhbW1lbnNldHplbgptdXNzLCBhdWNoIGVpbmUgQmF1YW5sZWl0dW5nIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhtLCBkYSB3YXIgZWluZXIgZmxlaXNzaWcuLi4gKEx1ZywgMTcuIE1haSAxOTk4LCAyMzoyMTo0NCk6Cn4jISBybj1Bc21vZGlzIHJ0PTg5NTQxNzQ0OSByZz1zY2htYXJybgp+IyEgdGlkPTg5NTM1MDE5MQoKSG0sIGRhIGhvZmZzdCBEdSB3b2hsIGFscyBFaW56aWdlci4uLgoKRmlkS0cKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIbSwgZGEgd2FyIGVpbmVyIGZsZWlzc2lnLi4uIChUYXJpbmEsIDE3LiBNYWkgMTk5OCwgMjM6MjU6MDcpOgp+IyEgcm49THVnIHJ0PTg5NTQ0MDEwNCByZz1zY2htYXJybgp+IyEgdGlkPTg5NTM1MDE5MQpOYSwgRHUgYnJhdWNoc3QgZG9jaCBuaWNodCB6dSBlcndhZWhuZW4sIGRhc3MgZXMgc2Nob25tYWwgamVtYW5kIHZlcnN1Y2h0IGhhdAp1bmQgbmljaHQgZ2VzY2hhZmZ0IGhhdCA6LSkKRGFzIHdhcmVuIGRpZSBUZWlsZSwgZGllIHVlYnJpZyB3YXJlbgpUYXJpbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNleCAoVGVkZHksIDE3LiBNYWkgMTk5OCwgMjM6NDU6MTcpOgpOZXVsaWNoIGltIFJhZGlvIDoKRWluZSBGcmF1IHp1bSBUaGVtYSBTZXg6CgpXaXIgaGFiZW4gZGFzIG1pdCBkZW0gU2V4IGdhbnogZWluZmFjaCBnZWxvZXN0LCB3ZW5uIG1laW4gTWFubiBTZXggaGFiZW4gd2lsbCwKcGZlaWZ0IGVyLgoKV2llIGljaCBkYXMgbWFjaGUsIHdlbm4gaWNoIFNleCBoYWJlbiB3aWxsIGZyYWdlbiBTaWU/Li4uCgoKCgoKCgoKCgoKCgoKCgoKCgoKSWNoIGdlaCB6dSBpaG0gaGluIHVuZCBmcmFnOiBMaWVibGluZywgaGFzdCBkdSBnZXBmaWZmZW4/IDstKQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTZXggKEx1ZywgMTguIE1haSAxOTk4LCAwMDoyODoxOSk6Cn4jISBybj1UZWRkeSBydD04OTU0NDE1MTcgcmc9c2NobWFycm4KfiMhIHRpZD04OTU0NDE1MTcKCk93ZWlhaCwKCgpkaWUgc2luZCBhbGxlIGJlc2NoZXVlcnQuLi4KCkZpZEtHCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYmlldGUgaHlkcmEgZnJldW5kc2NoYWZ0IGFuID8gKEFuYXRvbCwgMTguIE1haSAxOTk4LCAwMTowMTo1Nyk6CkRlaW4gRnJldW5kIE1haGF0bWEgd2lua3QgRGlyIGF1cyBkZXIgRmVybmUgenUuCkRpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgpbU2VoZXI6TWFoYXRtYV0gZG9jaCBuaWNodCA6KQoKSG0sIGljaCBzY2hhZXR6ZSwgZGllIEh5ZHJhIGhhdCBpaG4gYXVmIGRlbSBGcmV1bmRzY2hhZnRzYmFuZC4KV2FzIGZ1ZXIgZWluZSBIYXNzZnJldW5kc2NoYWZ0Li4uCgpBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpiaXR0ZXJlcyBCaWVyPz8hIT8/IChPdmVybG9yZCwgMTguIE1haSAxOTk4LCAwMjoyNToxMCk6CkFsc28gaGllciBpbiBkZXIgS25laXBlIGluIFRhcmtvIFJldWIgd2lyZCBkYXMgQmllciBhbHMgbWluZGVyd2VydGlnCmVpbmdlc3R1ZnQsIHdlaSBlcyAnYml0dGVyJyBpc3QuLi5hbHNvIGljaCB0cmlua2UgZ2VybiBnZWhvcGZ0ZSBCaWVyZSwgbmljaHQKc29ubmUgV2Fyc3RlaW5lci0gb2RlciBWZWx0aW5zcGxvZXJyZSwgb2RlciBnYXIgYmF5cmlzY2hlcywgd2FzIG5pY2h0IGF1ZgotYm9jayBvZGVyIC1hdG9yIGVuZGV0Li4uIGRhcyBmaW5kZSBpY2ggc2VociBiZWRlbmtsaWNoLgoKRnJlaWhlaXQgZnVlciBkYXMgQmllciEgTmllZGVyIG1pdCBLb2Vsc2NoIQoKT3ZpLi4uaGV1dCBtYWwgamVuc2VpdHMgdm9tIFRyZXNlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhtLCBkYSB3YXIgZWluZXIgZmxlaXNzaWcuLi4gKEhpZ2hsYW5kZXIsIDE4LiBNYWkgMTk5OCwgMTI6MzA6MjQpOgp+IyEgcm49THVnIHJ0PTg5NTM1MDE5MSByZz1zY2htYXJybgp+IyEgdGlkPTg5NTM1MDE5MQpXYXMgbWlyIGRhYmVpIGF1ZmZhZWx0OgpFaW4gemllbWxpY2gga2xlaW5lIEdlaGlybiB2b24gTHVnLgpFaW4gR2VoaXJuIHZvbiBMdWcuCkV4cGFuZGVkIG1lbW9yeT8gRWluIFRlcm1pbmFsPyBFaW4gQ29wcm96ZXNzb3I/ClJhZXRzZWxoYWZ0IGZpbmRldCBkYXMKICAgIEhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVzIGRlciBSZWloZTogImx1c3RpZ2UgbXNnLW91dHMiIChBbmF0b2wsIDE4LiBNYWkgMTk5OCwgMjE6Mzc6MzMpOgpXb29keSBzYWd0OiBXYXJ1bSBnZWhlbiBhbGxlIGlucyBSZWljaCBkZXIgTmV0enRvdGVuID8uCgpMaWViZXIgV29vZHksIHdvaGluIHNvbGxlbiBkaWUgc29uc3QgYWxsZSBnZWhlbj8gOikKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1ZXIgRGFlbW9uIGluIGRlciBDaGFvc2dpbGRlLi4uISAoUHVjaywgMTguIE1haSAxOTk4LCAyMTo0ODoyMSk6CgpERVIgREFFTU9OIElOIERFSU5FUiBIQVVUIFdJUkQgR0xFSUNIIFZFUlNVQ0hFTiBTSUNIIFpVIEJFRlJFSUVOISEhCgpUaWxseSBlcnNjaGVpbnQgaW4gZWluZXIgU3BoYWVyZSBnbGVpc3NlbmRlbiBMaWNodHMuClRpbGx5IHNhZ3Q6IGhpaG8KCkFyZ2guClB1Y2sKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gd2VuaWcgd2FobnNpbm5pZyBzaW5kIHdpciBqYSBhbGxlLCBhYmVyIC4uLiAoTmViLCAxOC4gTWFpIDE5OTgsIDIxOjUzOjA1KToKPm5uClJ1YnJpayA0Mjogc3R1ZmVuLCBBcnRpa2VsOiAyNyB2b24gMjkKU3djIGlzdCBqZXR6dCBlaW4gU2VoZXIhIChNZXJsaW4sIDE3LiBNYWkgMTk5OCwgMTk6NDk6MzUpOgoKCj5ubgoKUnVicmlrIDQyOiBzdHVmZW4sIEFydGlrZWw6IDI4IHZvbiAyOQpTd2EgaXN0IGpldHp0IGVpbiBTZWhlciEgKE1lcmxpbiwgMTcuIE1haSAxOTk4LCAxOTo0OTozNyk6CgoKCj5ubgpSdWJyaWsgNDI6IHN0dWZlbiwgQXJ0aWtlbDogMjkgdm9uIDI5ClN3YiBpc3QgamV0enQgZWluIFNlaGVyISAoTWVybGluLCAxNy4gTWFpIDE5OTgsIDE5OjQ5OjM4KToKCgpOZWIgZnJhZ3Q6IFdlciBiaWV0ZXQgbWVociBTZWhlcnp3ZWl0aWVzIGluIGVpbiB1bmQgZGVyc2VsYmVuIEdpbGRlIGFuIGVpbmVtClRhZyA/IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcmVjaHQuLi4gKExpbGxlYnJvciwgMTkuIE1haSAxOTk4LCAwMDozODozMik6CmViZW4gaW0gd2FsZC4uLgoKdW50IHJlY2h0ClNvd2FzIGdpYnQgZXMgaGllciBkb2NoIG5pY2h0IDopCgouLi4gaWNoIHZlcnN0ZWggZGVuIHNtaWxpZSBkYWhpbnRlciBuaWNodCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRk5MVyAoWWVuZGksIDE5LiBNYWkgMTk5OCwgMTE6MjM6MDkpOgpMZWljaHQgYmVyZWluaWd0OgoKW0FiZW50ZXVlcjpBbGJlcnRvXSB3aWUga2FubiBtYW4gZGVuIG9wZmVyc3RvY2sgcGx1ZW5kZXJuCltBYmVudGV1ZXI6U25vdHR5XSBwZnVpLCBnYXIgbmljaHQKW0FiZW50ZXVlcjpTbm90dHldIHp1bWluZGVzdCBzb2xsdGUgbWFuIG5pY2h0IDspCltBYmVudGV1ZXI6QWxiZXJ0b10gbmF0dWVybGljaCBzbm90dHkga2FubiBtYW4gaWhuIHBsdWVuZGVybiBibG9zIG1pdCB3ZWxjaGVuCltBYmVudGV1ZXI6QWxiZXJ0b10gYmVmZWhsCltBYmVudGV1ZXI6VHVOaXhHdXRdIGJyZWNoZSAuLi4gYXVmIQpbQWJlbnRldWVyOlNub3R0eV0gdmVycmFldGVyLCBnZXN0ZWluaWd0IHNvbGx0ZXN0IGR1IHdlcmRlbgoKMSBtaW4uIHNwYWV0ZXI6CltBYmVudGV1ZXI6QWxiZXJ0b3F1ZV0gd2llIGJla29tbWUgaWNoIGFsYmVydG8gd2llZGVyIGF1cyBkZXIgaG9lbGxlIGxlenRlCltBYmVudGV1ZXI6QWxiZXJ0b3F1ZV0gZG9ydCBpc3QgZXMgZ2FyIG5pY2h0IHNjaG9lbiB1bmQgaGlwcGUgZ2VodCBtaXIKW0FiZW50ZXVlcjpBbGJlcnRvcXVlXSBtYWVjaHRpZyBhdXNmIGRlbSBzYWNrCgpUamFqYWphYS4uLiB3ZXIgbmljaHQgaG9lcmVuIHdpbGwsIG11c3MgSGlwcGUgenVob2VyZW4uLi4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBhdWYgZGVyIERyYWNoZW5ob3J0ZXIgTGFuZHN0cmFzc2UgKFNoYW5uYXJhLCAxOS4gTWFpIDE5OTgsIDE2OjM0OjQyKToKCkxlb25hcmQga3JhdHp0IHNpY2ggbWl0IHNlaW5lbSByZWNodGVuIEhpbnRlcmJlaW4gaGludGVyIGRlbiBPaHJlbi4KRHUgbmlja3N0IHp1c3RpbW1lbmQuCj4gU2hhYmF0YSBzY2hsZWljaHQgaGVyZWluLgo+IEFuZHkga29tbXQgYW4uCkR1IGtyYXVsc3QgU2hhYmF0YSBoaW50ZXIgZGVuIE9ocmVuLiBTaGFiYXRhIHNjaG51cnJ0IGdsdWVja2xpY2guCj4gRWluIFRhdXNlbmRmdWVzc2xlciBnZWh0LgpBbmR5IHNhZ3Q6IExlb25hcmQsIHN0b2VocnQgZXMgZGljaCwgd2VubiBpY2ggbWFsIGt1cnogZXVyZW4gYWRtaW4gYW5ydWZlLApBbmR5IHNhZ3Q6IHVuZCBpaG0gbWl0dGVpbGUgZGFzIGV1cmUgcmVjaG5lciBuaWNodCBmdWVyIHdpc3NlbnNjaGFmdGxpY2hlCkFuZHkgc2FndDogendlY2tlIGdlbnV0enQgd2VyZGVuLCBiZXNvbmRlcnMgdm9uIGRpcj8KQW5keSBnZWh0LgpHYW5kdXIgdG9idCBoZXJlaW4uCkdhbmR1ciB3dWV0ZXQgbmFjaCBXZXN0ZW4uCk1pZXplIHNhZ3Q6IEFOZHkgcXVhdHNjaHQgbWl0IEhhdXN0aWVyZW4gOikKRHUgZ3JpbnN0LgoKSG9pLi4gZGVyIFJMLUFuZHkgbXVzcyBqYSBlY2h0IHN0YXJrIGdld2VzZW4gc2Vpbi4uLiAqbGFjaCoKClNoYW5uYXJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpxdWFrIChUZWRkeSwgMjAuIE1haSAxOTk4LCAwMjo0MzoyOSk6Ck5ldWxpY2ggYW0gU2FuZHRpZ2VyOgoKRWluIEZyb3NjaCAsIEhlZmUgdW5kIE5pbWJ1cyBwZmVpZmVuICdNeSBsaXR0bGUgYnV0dGVyY3VwJyB1bmQgcmVpdGVuIGRhdm9uLiAgCgpUZWRkeSwga2FubiBzaWNoIGRhcyBHcmluc2VuIGthdW0gdmVya25laWZlbi4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprb21tZW4gdW5kIGdlaGVuLi4uIChSaWt1cywgMjAuIE1haSAxOTk4LCAxNjowNTowMSk6Ci4uLiB0ZWlsdCBEaXIgbWl0OiBrb21tbXN0IGJpdHRlIGt1cnogbWFsPwpEdSB0ZWlsc3QgLi4uIG1pdDogYWVobSwgaGllciB2b3IgYWxsZW4gbGV1dGVuPyA6LSkKLi4uIHRlaWx0IERpciBtaXQ6IFJPVEZMCi4uLiB0ZWlsdCBEaXIgbWl0OiBLQU5OU1QgRFUgQklUVEUgTUFMIEtVUlogCl9ISUVSXyBIRVIgS09NTUVOPyA6KSkKClJpa3VzLCBrbmFsbHJvdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS29taXNjaGVzIFJvdXRpbmcuLi4gKEFuYXRvbCwgMjAuIE1haSAxOTk4LCAxNzo0Mzo1OSk6CkJpZWxlZmVsZCBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogSGFtYnVyZy4KCkljaCBkYWNodGUsIGRpZSB3dWVyZGVuIHVlYmVyIEhhbm5vdmVyIGdlcm91dGV0IHdlcmRlbiA7KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS29taXNjaGVzIFJvdXRpbmcuLi4gKEFzbW9kaXMsIDIwLiBNYWkgMTk5OCwgMTg6NDc6MzQpOgp+IyEgcm49QW5hdG9sIHJ0PTg5NTY3OTAzOSByZz1zY2htYXJybgp+IyEgdGlkPTg5NTY3OTAzOQpJY2ggc2FjaCBkb2NoLCBCaWVsZWZlbGRlciBnaWJ0cyBnYXIgbmljaHQsIGFsbGVzIEhhbWJ1cmdlciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBiZWltIFJvbGxlbnNwaWVsLi4uIChTaWx2YW5hLCAyMC4gTWFpIDE5OTgsIDIzOjI5OjUzKToKRWluIHNlaHIgdmVyc3BpZWx0ZXIgTWFnaWVyOiBXZW5uIGljaCBzY2hvbiBtYWwgbmVuIEdyb2cgKFdhY2hzb2xkYXQpCiAgZGFiZWkgaGFiZSwgbWl0IGRlbSBpY2ggcnVtc3BpZWxlbiBrYW5uLi4uICplcnJvZXQqIEFlaCwgaWNoIG1laW5lLCBtaXQKICBkZW0gaWNoIG5lbiBiaXNzY2hlbiBTcGFzcyBoYWJlbiBrYW5uLi4uICpzY2hsdWNrLCBlcnJvZXQgbm9jaCBtZWhyKgoKIC4gbyBPIChEYSBnZWh0IGVyIGhpbiwgZGVyIGd1dGUgUnVmLi4uKQoKRWluIEFyc01hZ2ljYS1GYW4gdWViZXIgRFNBOgogIEZsaW0tRmxhbS1GdXJ1bmtlbC4uLiBuZWUsIGxhc3MgbWFsLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIHBhc3N0IGphIDopIChBbmF0b2wsIDIxLiBNYWkgMTk5OCwgMjA6Mjc6NDcpOgpTY2hva28gcXVpZXRzY2h0IGxhdXQuClNjaG9rbyBpc3N0IGVpbiBwYWFyIEZsZWlzY2hyZXN0ZS4KU2Nob2tvIHZlcmRyZWh0IGRpZSBBdWdlbiB1bmQga290enQuClNjaG9rbyB3YXRzY2hlbHQgcXVpZXRzY2hlbmQgbmFjaCBTdWVkZW4sIG5vY2ggd2FzIEVzc2VuIHN1Y2hlbi4KClBydXN0IE1haGx6ZWl0IDopCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2luZG93cyBOVCA0LjAgbWFsIHdpZWRlciAoQW5hdG9sLCAyMi4gTWFpIDE5OTgsIDE2OjA4OjE4KToKfiMhIHJuPU1vcmdvdGggcnQ9ODk1ODQxNjUzIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTg5NTg0MTY1MwpUdSB3YXMgc2lubnZvbGxlcy4KRGVidWcnIGRlbiBoZWlsaWdlbiBPcmRlbi4KTmVlZWVpbiwgbmljaHQga2FwdXR0bWFjaC4uLi4genUgc3BhZXQgOi1cCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgogSW5rb21wZXRlbnRlLCBhYmVyIGtyYWVmdGlnZSBSdWRlcmVyID8gKFR5cm8sIDIyLiBNYWkgMTk5OCwgMTY6MjA6MTkpOgpEaWUgT3JrZ2FsZWVyZSBhdXMgZGVtIHZlcmxvcmVuZW4gTGFuZCByYW1tdCBmYXN0IGRlbiBBbmxlZ2VwbGF0ei4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCldvaGwgbmljaHQgbnVyICdmYXN0JyBnZXJhbW10IC4uIDotKQoKICAgVHlybwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjNDb20gKENhdHdlYXpsZSwgMjIuIE1haSAxOTk4LCAxOTozMzo0Mik6CkhhYiBncmFkIGZvbGdlbmRlIG1haWwgdm9uIGRlciBzZWN1cml0eS1saXN0IGJla29tbWVuLiAzQ09NIGhhdCBlcyBkYW5uCmRvY2ggZW5kbGljaCB6dWdlZ2ViZW4gOikKVHJvdHpkZW0genVtIHNjaG11bnplbG4gOikKCllUQwotLS0tLQpMaWViZSBLb2xsZWdpbm5lbiB1bmQgS29sbGVnZW4sCiAKc29lYmVuIGVycmVpY2h0ZSB1bnMgZWluIEFkdmlzb3J5IGRlciBGaXJtYSAzQ29tIGJ6Z2wuIEJhY2tkb29ycwppbiBpaHJlbiBTd2l0Y2hlcy4gV2llIGdld29obnQsIHJlaWNoZW4gd2lyIElobmVuIGRpZXNlcyBBZHZpc29yeQppbSBBbmhhbmcgd2VpdGVyLgogCkRpZXNlcyBBZHZpc29yeSAoYnp3LiBha3R1YWxpc2llcnRlIFZlcnNpb25lbikgZXJoYWx0ZW4gU2llIGF1Y2ggYXVmCjNDb20ncyBXZWItU2VydmVyIHVudGVyIGh0dHA6Ly93d3cuM2NvbS5jb20vbmV3cy9hZHZpc29yeTUxNDk4Lmh0bWwKIApEYXMgYmVzY2hyaWViZW5lIFByb2JsZW0gYmVzdGVodCBkYXJpbiwgZGFzcyBlcyBhdWYgZGVuIFN3aXRjaGVzCiJDb3JlQnVpbGRlciIgdW5kICJTdXBlclN0YWNrIElJIiB1bmRva3VtZW50aWVydGUgQmVudXR6ZXJrZW5udW5nZW4KbWl0IHZvcmVpbmdlc3RlbGx0ZW4gUGFzc3dvcnRlbiBnaWJ0LCBkaWUgYWRtaW5pc3RyYXRpdmUgUmVjaHRlCmhhYmVuLiBWb3JnZXNlaGVuIHdhcmVuIGRpZXNlICJCYWNrZG9vciItTG9naW5zIHp1IFNlcnZpY2UtWndlY2tlbgpkdXJjaCAzQ29tLVBlcnNvbmFsLgogCkRhIGRpZXNlIEtlbm51bmdlbiB1bmQgaWhyZSBQYXNzd29ydGUgamVkb2NoIGVpbnNjaGxhZWdpZyB2ZXJvZWZmZW50bGljaHQKd3VyZGVuLCBlbXBmZWhsZW4gd2lyIGFsbGVuIEFkbWluaXN0cmF0b3JlbiBiZXRyb2ZmZW5lciBTd2l0Y2hlcywgdW1nZWhlbmQKZGllIHZvcmVpbmdlc3RlbGx0ZW4gUGFzc3dvcnRlLCB3aWUgaW0gQWR2aXNvcnkgYmVzY2hyaWViZW4sIHp1IGFlbmRlcm4uCiAKTWl0IGZyZXVuZGxpY2hlbiBHcnVlc3NlbgotLS0tLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVWl1aXVpIC4uLi4gKEFuYWNyaW9uLCAyNC4gTWFpIDE5OTgsIDAyOjA0OjQ5KToKRGVpbiBGcmV1bmQgSGFuZ292ZXIgd2lua3QgRGlyIGF1cyBkZXIgRmVybmUgenUuCkhhbmdvdmVyICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKVWl1aXVpLi4uLi4gZGFzIE1HIHNjaGVpbnQgc2Nob24genUgd2lzc2VuLCB3ZXNzZW4gV2VnZ2FuZyBlaW5lIFZlcmFlbmRlcnVuZwpkYXJzdGVsbHQgLi4uLgoKYW5hYyoKKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2VmYWVocmxpY2gsIGdlZmFlaHJsaWNoLi4uIChPdmVybG9yZCwgMjQuIE1haSAxOTk4LCAwNTozNDoyNSk6CltBYmVudGV1ZXI6TmlydW5dICpmYXN0c2Nob253ZWluZW5kKiBpY2ggYmVrb21tZSBrZWluZSBwdW5rdGUgZnVlciBkYXMKW0FiZW50ZXVlcjpOaXJ1bl0gcXVlc3QhISEKW0FiZW50ZXVlcjpPdmVybG9yZF0gZGEgaGlsZnQgbnVyIG5vY2htYWwgbWFjaGVuIF06KQo+IFtBYmVudGV1ZXI6TmlydW5dIGhlLCBkYXMga2FubiBuaWNodCBzZWluLCB3aWVzbyBiZWtvbW1lIGljaCBrZWluZSBwdW5rdGUKW0FiZW50ZXVlcjpPdmVybG9yZF0gd2VpbCBkaWUgbWFuY2htYWwgYnVnZ3QKW0FiZW50ZXVlcjpOaXJ1bl0gd28gc3RlaHQgZGVyIHNlcnZlcj8KW0FiZW50ZXVlcjpPdmVybG9yZF0gaWNoIGhhYiBkaWUgZnVlciBkcmVpIGNoYXJha3RlcmUgNXggZ2VtYWNodAo+IFBsb2V0emxpY2ggZmFlbGx0IERpciBzaWVkZW5kaGVpc3MgZWluLCBkYXNzIER1IG5vY2ggZWluIFBha2V0IGF1ZiBkZXIgUG9zdAphYmhvbGVuIHdvbGx0ZXN0LgoKT2hqZWVlIHdhcyBkYSB3b2hsIGRyaW4gaXN0PwoKT3ZpLi4ueml0dGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS29taXNjaGVzIFJvdXRpbmcuLi4gKEtvYmF5YXNoaSwgMjQuIE1haSAxOTk4LCAwOTozNzozMik6Cn4jISBybj1Bc21vZGlzIHJ0PTg5NTY4Mjg1NCByZz1zY2htYXJybgp+IyEgdGlkPTg5NTY3OTAzOQpIZXQgaXJnZW5kd2VyIG5vY2ggZGllIGdlbmV1IGJld2Vpc2Z1ZWhydW5nLCB3YXJ1bSBlcyBiaWVsZWZlbGQgbmljaHQgZ2lidD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAzQ29tIChHcmltbWJvcm4sIDI0LiBNYWkgMTk5OCwgMjI6NDc6NDApOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTg5NTg1ODQyMiByZz1zY2htYXJybgp+IyEgdGlkPTg5NTg1ODQyMgpJbnRlcmVzc2FudCBpc3QgZGllIEltcGxpemllcnVuZyBkYXNzIG5pY2h0IGRpZXNlIEhpbnRlcnR1ZXJjaGVuIGRpZQpTaWNoZXJoZWl0c2x1ZWNrZSBzaW5kIHNvbmRlcm4gZGllIExldXRlLCBkaWUgZGFydWViZXIgcmVkZW4uClNvbGNoZW4gRmlybWVuIGdlaG9lcnQgZGVyIEhvc2VuYm9kZW4gc3RyYW1tIGdlem9nZW4uIEFiZXIga3JhZWZ0aWcuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCkhtbSwgZGFzIGthbm4gbWFuIGF1c2JhdWVuOiBXaW45NS85OCBpc3QgZ2FyIG5pY2h0IGluc3RhYmlsLCBkYXMgc2luZCBhbGxlcwpudXIgZGllIExldXRlIHNjaHVsZCBkaWUgdmVyc3VjaGVuLCBkYW1pdCB3YXMgenUgbWFjaGVuICh6LkIuIGVzIHp1Cmluc3RhbGxpZXJlbikuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBLb21pc2NoZXMgUm91dGluZy4uLiAoWWVuZGksIDI1LiBNYWkgMTk5OCwgMTE6MTc6MzgpOgp+IyEgcm49S29iYXlhc2hpIHJ0PTg5NTk5NTQ1MiByZz1zY2htYXJybgp+IyEgdGlkPTg5NTY3OTAzOQpXYXJ1bSBlcyBfd2FzXyBuaWNodCBnaWJ0PwoKWWVuZGksIHZlcndpcnJ0CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaW4gZGVuIFB5cmFtaWRlbiAoWmFwaG9iLCAyNS4gTWFpIDE5OTgsIDE4OjQ2OjMxKToKV293LCB3YXMgZnVlciBlaW4gQmV0cmllYiwgZ2VyYWRlIGViZW46CihJbSBaYWVobC1iaXMtMjM1LVJhdW0pCkR1IGdlaHN0IGR1cmNoIEF1c2dhbmcgMTQxLgogICAgICAgICAgICBEaWVzIGlzdCBkZXIgUmF1bSBtaXQgZGVyIE51bW1lciAyMzUuCkRlciBSYXVtIGlzdCB2b2VsbGlnIGthaGwgdW5kIGJpZXRldCBuaWNodHMgYmVzb25kZXJlcyAuLi4gaGFsdCBkb2NoLiBIaWVyIGlzdApkb2NoIGV0d2FzIEJlc29uZGVyZXMsIGhpZXIgZ2lidCBlcyBuYWVtbGljaCBlaW5lbiBEdXJjaGdhbmcsIHN0YXR0IG1pdApOdW1tZXIgbWFya2llcnRlciBBdXNnYWVuZ2UuIEVzIHNjaGVpbnQgZ2FueiBzbywgYWxzIG9iIER1IGVzIGdlc2NoYWZmdCBoYXN0IQpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogbm9yZGVuLgo+IE5pcnVuIHJ1ZnQ6IGphamFqYWphamEKW0FiZW50ZXVlcjpHbG9pbnNvbl0gSXN0IGVyIGphIHNjaG9uOiBHcmF0cy4KClphcCosIGZyZXV0IHNpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc3NoIChBbmF0b2wsIDI1LiBNYWkgMTk5OCwgMjM6MDc6MTYpOgp+IyEgb249QW5hdG9sIG90PTg5NjEzMDQyNiBvZz1lbnR3aWNrbHVuZwp+IyEgcm49U211cmYgcnQ9ODk2MTI2MTM1IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODk2MDQzMTMyCldhYWguCgpTbXVyZiwgRHUgaGFzdCBzb2ViZW4gZWluIEthcGl0YWx2ZXJicmVjaGVuIGJlZ2FuZ2VuLiAKCkR1IGhhc3QgR3JpbW1ib3JuIGVybnN0IGdlbm9tbWVuLgoKRnJpZWRlIERlaW5lciBBc2NoZSA7KQoKQW5hdG9sIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU29tbWVyY2FtcDk4IChDYXR3ZWF6bGUsIDI2LiBNYWkgMTk5OCwgMTM6MTE6MjYpOgp+IyEgb249VGVkZHkgb3Q9ODk2MTgwODgyIG9nPXBhcnR5Cn4jISBybj1DYXR3ZWF6bGUgcnQ9ODk2MDgxNTM0IHJnPXBhcnR5Cn4jISB0aWQ9ODk1NjYxMTM0CkNhdHR5IHNjaHJpZWI6CkRhZnVlciBpc3QgZXIgdm9uIGRlciBMYWdlIF9pZGVhbF8uIEF1c3NlcmhhbGIgendhciwgYWJlciBtaXQgdmllbGVuCnRvbGxlbiBmZWF0dXJlcyBkcnVtcnVtLgoKV2llIGpldHp0LCBkZXIgQ2FtcGluZ3BsYXR6IGJ1Z2d0PyBPZGVyIGhhYiBpY2ggZGEgd2FzIGZhbHNjaCB2ZXJzdGFuZGVuPyA7LSkKClRlZGR5ClNDTlIgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB0c2hpcnQgKENhdHdlYXpsZSwgMjYuIE1haSAxOTk4LCAxMzoxMTo1OCk6Cn4jISBvbj1Bc3RhciBvdD04OTYxMDI4MDAgb2c9cGFydHkKfiMhIHJuPUNhdHdlYXpsZSBydD04OTYxMDExMTMgcmc9cGFydHkKfiMhIHRpZD04OTYxMDExMTMKSG1tLCBCZWxvaG51bmcgaW0gTXVkLCB3aWUgc2llaHQgc293YXMgd29obCBmdWVyIE1hZ2llciBhdXMuLi4KCkFzdGFyCgotLT4gc2NobWFycm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdHNoaXJ0IChDYXR3ZWF6bGUsIDI2LiBNYWkgMTk5OCwgMTM6MTI6MDIpOgp+IyEgb249R2xvaW5zb24gb3Q9ODk2MTExNjgxIG9nPXBhcnR5Cn4jISBybj1Bc3RhciBydD04OTYxMDI4MDAgcmc9cGFydHkKfiMhIHRpZD04OTYxMDExMTMKUnVlY2tzdHVmdW5nIHp1bSBTcGllbGVyIHVuZCAnaWdub3JpZXJlJyBhdWYgYWxsZSwgZGllIGltIFJFUC1GaWxlIHN0YW5kZW4/CgpHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc293YXMhIChMYXJpc3NhLCAyNy4gTWFpIDE5OTgsIDAwOjA0OjA1KToKClZhZXRlcmNoZW4gWmVpdCBmcmFndDogTGFyaXNzYSwgTmVubmUgZWluIHNlaHIgYmVydWVobXRlcyBNb25zdGVyIGF1cwpNb3JnZW5ncmF1ZW4uCnNhZyBoeWRyYQpEdSBzYWdzdDogaHlkcmEKPiBWYWV0ZXJjaGVuIFplaXQgc2FndDogRGllc2VzIE1vbnN0ZXIgaXN0IG5pY2h0IHNvIHNlaHIgYmVydWVobXQuCgpMYXJpLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHT1RDSEEhIChMdWcsIDI3LiBNYWkgMTk5OCwgMDQ6Mzk6MTUpOgoKSGFoLAoKaWNoIHd1c3N0ZSBpY2ggYmluIGRlciBCZXN0ZSBhdWYgZGVtIFNla3RvcjoKCkVzIGdpYnQgZnVlbmYgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHdlc3Rlbiwgbm9yZGVuLCBub3Jkd2VzdGVuIHVuZApub3Jkb3N0ZW4uCkFuZHkuCkFuZHkgc2FndDogTHVnLCB3aWVzbyBuZXJ2dCBEdSBtaWNoIHNjaHJlY2tsaWNoPwoKQWIgNDo0MCBVaHIgd2lyZCB6dXJ1ZWNrZ2VuZXJ2dCA7KQpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZhbHNjaGVyIFdvY2hlbnRhZyAoQmVuc29ubWFtLCAyNy4gTWFpIDE5OTgsIDA4OjMwOjU3KToKW01vZXJkZXI6R2Vpc3QgZWluZXMgV2VnaGllcnNdIFdpZWRlciBtYWwgYW4gRnJlaXRhZyBnZXN0b3JiZW4sIGZpbmQgaWNoCltNb2VyZGVyOkdlaXN0IGVpbmVzIFdlZ2hpZXJzXSBhbGJlcm4hCgpLb21pc2NoLCBkYWJlaSBpc3QgaGV1dGUgZG9jaCBNaXR0d29jaC4uLgoKSi5CZW5zb25tYW0gKGdydWViZWxuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClB1ZW5rdGxpY2gsIHB1ZW5rdGxpY2ggOikgKFRzdW5hbWksIDI3LiBNYWkgMTk5OCwgMTM6MDE6MTIpOgp1bmdlc2Nobml0dGVuIQoKRXR3YXMgZXJzY2hlaW50IGluIGVpbmVyIFJhdWNod29sa2UuCkR1IGhvZXJzdCBkaWUgVWhyIHNjaGxhZ2VuOiBFcyBpc3QgamV0enQgMTMgVWhyLgoKCnByYWV6aWVzZXIgYWxzIGVpbiBTY2h3ZWl6ZXIgVWhyd2Vyay4uLi4KClRzdW5hbWksIHNjaG1hcnJlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZXhjaGVuLi4uIChXb29keSwgMjcuIE1haSAxOTk4LCAxNTo0MzoyMSk6ClRhbWVsaSBydWZ0OiBtYWV4Y2hlbiBpc3QgYmVzc2VyIDsuKQpEdSBncmluc3QuCkR1IGRlbmtzdCAgIC4gbyBPIChiZXNzZXIgYWxzLi4uLi4uKQpEdSBkZW5rc3QgICAuIG8gTyAoY29sYT8pClJvY2h1cyBzYWd0OiBuZWluClJvY2h1cyBzYWd0OiBuaWNodCBiZXNzZXIgYWxzIGNvY2Fjb2xhIDopCgpXYXIgZG9jaCBrbGFyLiBPZGVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGViZW5kZSBUaXNjaGUgKFJvY2h1cywgMjcuIE1haSAxOTk4LCAxNjoyMzo0Mik6Cldvb2R5IHdpbmt0IERpciwgVGFtZWxpLCBQYWRyZWljLCBCaWVsZWZlbGQgdW5kIGVpbmVtIFRpc2NoIHp1LgpCaWVsZWZlbGQga251ZGRlbHQgZWluZW4gVGlzY2guCldvb2R5IHRyb2VzdGV0IGVpbmVuIFRpc2NoLgpCaWVsZWZlbGQgdmVyd3VzY2hlbHQgZWluZXMgVGlzY2hzIEhhYXJlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExlYmVuZGUgVGlzY2hlIChXb29keSwgMjcuIE1haSAxOTk4LCAxNjoyNDoyMSk6Cn4jISBybj1Sb2NodXMgcnQ9ODk2Mjc5MDIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk2Mjc5MDIyCnVuZCAxMCBzZWt1bmRlbiBzcGFldGVyOgoKUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFBhZHJlaWMuClBhZHJlaWMgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1ZXIgR2lsZGVubWFnaWVyIChCb2luZywgMjcuIE1haSAxOTk4LCAxNjo1Njo0Myk6Cn4jISBvbj1Bc3RhciBvdD04OTYyODA4NTMgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1Cb2luZyBydD04OTYyODA4MjAgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9ODk2MjgwODIwCkFid2VydHVuZz8gOykKCkFzdGFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWVyIEdpbGRlbm1hZ2llciAoQm9pbmcsIDI3LiBNYWkgMTk5OCwgMTY6NTY6NDQpOgp+IyEgb249UGF0cnluIG90PTg5NjI4MDkwMCBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPUFzdGFyIHJ0PTg5NjI4MDg1MyByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD04OTYyODA4MjAKZGFmdWVyIDopCmpldHp0IHRyYXV0IHNpY2ggcGFyYSBnbGVpY2ggZ2FyIG5pY2ggbWVociBhbiBkaWUgZ2lsZGUgcmFuIDspCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXVlciBHaWxkZW5tYWdpZXIgKEJvaW5nLCAyNy4gTWFpIDE5OTgsIDE2OjU2OjQ1KToKfiMhIG9uPUJpZWxlZmVsZCBvdD04OTYyODA5Mzcgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1QYXRyeW4gcnQ9ODk2MjgwOTAwIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTg5NjI4MDgyMApJY2ggZGFjaHRlIGRlbiBTb3VyY2UgaGF0IHZvcmhlciBzY2hvbiBrZWluZXIgbWVociB2ZXJzdGFuZGVuPyA7KQoKSmVtYW5kIGF1cyBCaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGYWxzY2hlciBXb2NoZW50YWcgKEFzbW9kaXMsIDI3LiBNYWkgMTk5OCwgMTk6MDA6MTApOgp+IyEgcm49QmVuc29ubWFtIHJ0PTg5NjI1MDY1NyByZz1zY2htYXJybgp+IyEgdGlkPTg5NjI1MDY1NwpBbHNvIGljaCBzdGVyYmUgaW1tZXIgYW4gTW9udGFnIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3b3cgOikgKEdub21lLCAyNy4gTWFpIDE5OTgsIDIxOjQ2OjMwKToKU21lYWdvbCBzdGVja3QgZWluZW4gTWFnaWV3ZXNlbnphaG4genVydWVjay4KU21lYWdvbCB6dWVja3QgZWluZW4gVGlnZXJzY2h3ZWlmLgpTbWVhZ29sIHN0ZWNrdCBlaW5lbiBUaWdlcnNjaHdlaWYgenVydWVjay4KU21lYWdvbCB6dWVja3QgZWluZW4gTWFnaWV3ZXNlbnphaG4uCkRlciBUb3RlbmdyYWViZXIgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KCndvdywgd2llIG1hY2h0IGVyIGRhcyBudXI/IDopCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGVyIGFlbHRlc3RlIHp1ZmFsbCBkZXMgbWcgKEFuYWtpbiwgMjguIE1haSAxOTk4LCAxNDowMDowNSk6CgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgpUb2V0ZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpBbmFraW4uIChhdWNoIG1hbCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmljaCB3aWxsIGF1Y2ggbWFsIHdpZWRlci4uLiAoV29vZHksIDI5LiBNYWkgMTk5OCwgMDk6MDc6MTUpOgpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KSGF0ZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKd2lldmllbCBYUCBicmluZ3QgZGVyPwp3b29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaWNoIHdpbGwgYXVjaCBtYWwgd2llZGVyLi4uIChHbG9pbnNvbiwgMjkuIE1haSAxOTk4LCAxMDo1MjozOCk6Cn4jISBybj1Xb29keSBydD04OTY0MjU2MzUgcmc9c2NobWFycm4KfiMhIHRpZD04OTY0MjU2MzUKTGVpZGVyIGtlaW5lbiwgYWJlciB2aWVsbGVpY2h0IHNldHp0IGlobSBlaW4gRXJ6IG1hbCBlaW4gcGFhciBTdHVwc2UgOikpKQpBbSBiZXN0ZW4gZXIgc2ljaCBzZWxic3QgOy0pIEVyIHdpcmQgamEgd2lzc2VuLCB3YXMgZXIgd2VydCBpc3QuCgpHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS29taXNjaGVzIFJvdXRpbmcuLi4gKEhpZ2hsYW5kZXIsIDI5LiBNYWkgMTk5OCwgMTM6MTY6NDYpOgp+IyEgcm49S29iYXlhc2hpIHJ0PTg5NTk5NTQ1MiByZz1zY2htYXJybgp+IyEgdGlkPTg5NTY3OTAzOQpOaWNodCBkaWUgQmV3ZWlzZnVlaHJ1bmcsIGFiZXIgZGVuIEJlcmljaHQgdWViZXIgZGllIFZlcnNjaHdvZXJ1bmcgZmluZGV0Cm1hbiB1bnRlcgpodHRwOi8vd3d3LmFncy51bmktc2IuZGUvfmtyb2VuZXIvL1RLUi9iaWVsZWZlbGQuaHRtbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmFqYSAxMTIgKEtleSwgIDEuIEp1biAxOTk4LCAxODoxOToyMik6ClNvIGFsc28gYWxzIFZvcmdlc2NoaWNodGU6CkljaCB3b2xsdGUgbmVtIGFybWVuIGtsZWluZW0gTWFlZGNoZW4gaGVsZmVuIHVuZCBpaG0gUGFwcGEgdW5kIE1hbW1hCnp1cnVlY2ticmluZ2VuIC4uLiB1bmQgZGFubiBrYW0gZGFzOgpOZXNhamEgd2lua3QgbWl0IGRlciBMZWljaGVuaGFuZCBkZW0gTWFlZGNoZW4genUgLi4uLiBIdWh1IC4uIGljaCBiaW5zLCBkZXIKUGFwcGkgLi4uLgpEYXMgTWFlZGNoZW4gc2FndDogTmljaHQgZGllIE1hbW1hIQoKS2V5IGZyYWd0IHNpY2ggd2FzIGVyIGRhIG5vY2ggc2FnZW4gc29sbCAsKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXICEhISAoTmFpcm9sZiwgIDEuIEp1biAxOTk4LCAxODo1NzowMik6CkRlaW4gRnJldW5kIEZldWVyd2VociB0ZWlsdCBEaXIgbWl0OiBPY2gsIE5lZWVlZWVzaSEgS29tbSBpY2ggbGFzcyBpaG4gZnVlcgpEZWluIEZyZXVuZCBGZXVlcndlaHIgdGVpbHQgRGlyIG1pdDogRGljaCBzdGVyYmVuIQpbVG9kOkxhcnNdIEVpbiBTcHJ1bmcgaW4gZGVuIFNjaGxlaW0gaGF0IGdlcmFkZSBLZXkgdW1nZWJyYWNodC4KW1RvZDpUb2RdIERBUyBXQVIgU0NIT04gREFTIDQxNVRFIE1BTCEKCgoKREFTIHBhc3N0ZSA6LSkKTmFpcm9sZiBrZXJidCBGZXVlcndlaHIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXICEhISAoQXNtb2RpcywgIDEuIEp1biAxOTk4LCAyMToyNjoxNSk6Cn4jISBybj1OYWlyb2xmIHJ0PTg5NjcyMDIyMiByZz1zY2htYXJybgp+IyEgdGlkPTg5NjcyMDIyMgpIbW0sIGFsc28gZWluIFBLIGZ1ZXIgMTEyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEdWVzdGVyd2FsZCB1bmQgd2FzIHNvbnN0IG5vY2ggc28gcGFzc2llcnQuLi4gKExldiwgIDIuIEp1biAxOTk4LCAwMDo1ODozNyk6CkF1ZiBkZW0gU2VoZXJrYW5hbCBfenVmYWVsbGlnXyBtaXRnZWxvZ2d0Li4uLi4KCltTZWhlcjpLZXkgcnVmdCBUT0VFRUVUVFRURUVFRU5OTiEhISEgOildCltTZWhlcjpTY2hva28gbXVzdGVydCBLZXkgZXJzdGF1bnQuXQpbU2VoZXI6U2hhcmlhIHRhZXRzY2hlbHQgS2V5XQpbU2VoZXI6TmVzYWphXSBpY2ggc2NoYXUgZG9jaCBuaWNodCB6dSB3ZW5uIGVpbiB0eXAgaGllciBuZSBmcmF1IHF1YWVsdCAuLi4KW1NlaGVyOkNhcmFtb25dIG9kZXIgaGFsdCBzdGVyYmVuIDotKQpbU2VoZXI6U2Nob2tvIGtpY2hlcnQuXQpbU2VoZXI6U2Nob2tvXSBEaWUgaGFzdCB2ZXJkaWVudCA7KQpbU2VoZXI6S2V5XSBNYWNodCBkZXIgVHlwIG5pbW1lciAuLi4uIGFiZXIgLi4uIEZFVUVSV0VIUiEKW1NlaGVyOktleSBrbnVycnQgMTEyIHdpbGQgYW5dCltTZWhlcjpLZXldIERlciBUeXAga3JpZWd0IG5lbiBhbmRlcmVuIE5hbWVuIQpbU2VoZXI6TmVzYWphIGdyaW5zdF0KW1NlaGVyOlNoYXJpYV0gS2V5IGR1IGthbm5zdCBzaWUgZG9jaCBiZWZyZWllbiA6KW9jaCBwYXNzdCBkYXMgbmljaCBkYSA/IDopCltTZWhlcjpTY2hva28ga2ljaGVydC5dCltTZWhlcjpLZXldIE5lbm4gaWhuIENocmlzdG9waGVyIG9kZXIgc29uc3R3YXMgLi4uCltTZWhlcjpLZXldIGFiZXIgbmV0IHNvIQpbU2VoZXI6U2Nob2tvXSBJY2ggaGFiIGRhcyBiZWkgQnJ1ZGVyIFRvYmlhcyBhdWNoIHNjaG9uIHZlcnN1Y2h0IC4uLiAxMTIgaXMgZGEKW1NlaGVyOlNjaG9rb10gaGFydCA7KQpbU2VoZXI6S2V5IGdyaW5zdCBTY2hva28gYW5dCltTZWhlcjpGZXVlcndlaHJdIEJydWRlciBUb2JpLi4uIExlYmVuc2Vyd2FydHVuZyA8IDEwIHNlYy4uLiBtZWluIGdyb2Vzc3RlcgpbU2VoZXI6RmV1ZXJ3ZWhyXSBUcml1bXBoIQpbU2VoZXI6S2V5IGxhY2h0XQpbU2VoZXI6TmVzYWphIGdyaW5zdF0KW1NlaGVyOlNjaG9rbyBobXJwZnQuXQpbU2VoZXI6S2V5XSBBYmVyIEJydWRlciBBbmRyZWFzIGRhcmZzdGUgdHJvdHpkZW0gYWVuZGVybiAuLi4KW1NlaGVyOlNjaG9rb10gSWNoIGxhc3MgbWlyIG5vY2ggd2FzIGVpbmZhbGxlbiBmdWVyIERpY2ggZmV1ZXJ3ZWhyIDspCltTZWhlcjpQYWRyZWljXSBhaGhoaGggZW5kbGljaCB3aWVkZXIgZGllIGd1bHRlIGFsdGUgWmVpdC4uLiAoYWxsZSAyIHNlay4gZWluZQpbU2VoZXI6UGFkcmVpY10gTW9yZ290aG1lbGR1bmcgYXVmIC1kZWJ1ZyA6KQpbU2VoZXI6S2V5XSBCaXN0ZSBzdG9seiBkYXMgd2VyIG1laHIgYnVndCBhbHMgRHUgQnVnZHJlaWM/IDopCltTZWhlcjpQYWRyZWljXSBQZmZmLi4uCltTZWhlcjpLZXkgd2lsbCBuZW4gUGlsel0KW1NlaGVyOlNjaG9rbyBsaWViZXIgbiBQaWxzIDspXQpbU2VoZXI6U2hhcmlhXSBzY2hhdSBhbiBkZWluZSBmdWVzc2UgOi0pCltTZWhlcjpSaWt1c10gZnVzc3BpbHo/CltTZWhlcjpTaGFyaWFdICpyb3RmbCoKW1NlaGVyOktleV0gU2Nod2VpZyEiCltTZWhlcjpTaGFyaWFdIEtleTogIkVpIGljaCBrcmllZyBtZWluZW4gbmljaCBhdXNtIFBha2V0IHJhdXMhIgpbU2VoZXI6TGlsbGVicm9yIGtpY2hlcnRdCltTZWhlcjpTYXJhbWlyXSBsYWNodCA6KSkKW1NlaGVyOlJpa3VzIHN1Y2h0IGRlbiBCb2RlbiBhYl0KW1NlaGVyOktleSBsYWNoXQpbU2VoZXI6U2FyYW1pcl0ga2xpbmd0IGVoZXIgbmFjaCBNdXJtZWwgOykKW1NlaGVyOlJpa3VzIGhvbHQgZGllIEx1cGVdCltTZWhlcjpTaGFyaWFdIEtleTogZGVpbmUgbXVybWVsbiA/IDotKQpbU2VoZXI6S2V5XSBBY2ggc2VpZCBzdGlsbApbU2VoZXI6U2hhcmlhXSBLZXk6ICJXaWVzbyBrcmllZyBpY2gga2VpbmVuIFBpbHMgd2VubiBkdSBuZW4gUGlscyBrcmllZ3N0PyIKW1NlaGVyOlNoYXJpYV0gLS0+IEdlc2NobGVjaHRza3JhbmtoZWl0ZW4gPyA6LSkKW1NlaGVyOktleSBoYXQgamV0enQgbmVuIEZ1c3NwaWx6XQpbU2VoZXI6U2hhcmlhXSB0c3RzIE5lc2kgdW5kIEtleSB3YXMgdHJlaWJ0IGlociBkZW5uIGRhID8gOi0pCltTZWhlcjpOZXNhamFdIG5hamEgc3RlbGwgZGljaCBuY2lodCBzbyBhbiAuLi4KW1NlaGVyOlNjaG9rb10gSWhyIHNvbGx0ZXQgbmljaCBxdWVzdGVuLCBpaHIgaGFidCBkZW4gdGllZmVyZW4gU2lubiB2b24gc293YXMKW1NlaGVyOlNjaG9rb10gbmljaCB2ZXJzdGFuZGVuIGdsYXViIGloYyA7KQpbU2VoZXI6S2V5IGxhY2h0XQpbU2VoZXI6TmVzYWphXSB3aXIgdmVyc3RlaG4gYWxsZXMgc2Nob2tvIDopIGdsYXViIGljaCA6KQpbU2VoZXI6U2Nob2tvIGdsYXVidCBkYXMgbmljaCBzbyA7KV0KW1NlaGVyOk5lc2FqYV0gaWNoIGZyYWcgbWljaCBudXIgZGllIGdhbnplIHplaXQgLi53ZXIgZWlnZW50bGljaCBuJ29zI2ZyZXQgaXN0CltTZWhlcjpOZXNhamFdIC4uLi51bmR3aWVzbyB3aXIgZGVuIGJlZnJlaWVuIHNvbGxlbiA6KQpbU2VoZXI6U2hhcmlhXSBXQUhISCBpY2ggd2lsbCBuZW4gUkwtbG9nZmlsZSA6LSkpKSkpCltTZWhlcjpOZXNhamFdIGljaCBoYWIgbm9jaCAxOSBscHMgLi4uCltTZWhlcjpOZXNhamFdIGRhbmtlIGtleSAuLi4KW1NlaGVyOktleV0gaWNoIDM2IC4uLiBva2kgaWNoIGdlaCByZWluIDspCltTZWhlcjpOZXNhamFdIHN1cGVyIGlkZWUgbWl0IGRlbSBhbmdyaWZmCltTZWhlcjpTY2hva28gbGFjaHQsXQpbU2VoZXI6S2V5XSAyNyAuLi4gaWNoIGthbm4gbm9jaG1hbCA7KQpbU2VoZXI6U2Nob2tvXSB3ZW4gZ3JlaWZ0IGlociBkZW5uIGFuPwpbU2VoZXI6TmVzYWphXSBzb24gdG9yc28KW1NlaGVyOktleV0gYWNoIHNvbiB0b3JzbyBkZXIgdWZmbXVja2Ugd2lsbApbU2VoZXI6U2Nob2tvXSBvaGEgOykKW1NlaGVyOlNjaG9rb10gVmllbCBzcGFzcyAnOykKW1NlaGVyOlNoYXJpYV0gdG9yc29zIC4uLiBzaWUgZ2VoZW4gZGllIEVUV0FTIGJydXRhbGVyZSBtZXRob2RlIDopIHNpZSB3b2xsZW4KW1NlaGVyOlNoYXJpYV0gYWJlciBrZWluZSB0aXBzIDotKQpbU2VoZXI6S2V5XSBSdWloZSBTaGFyaWEKW1NlaGVyOk5lc2FqYV0ga2V5IG1laW50ZSBkZXIgd2FlciBzb29vIHN1cGVyIGVlYXN5CltTZWhlcjpLZXldIGRlciBpcyBnbGVpY2ggd2VnCltTZWhlcjpTY2hva28gbGFjaHQuXQpbU2VoZXI6U2Nob2tvXSBXZXIgRHU/IDspCltTZWhlcjpLZXkgc2Nod2VpZ3QgdWViZXIgc2VpbmUgbHBdCltTZWhlcjpTaGFyaWFdICpsYWNoKiBOZXNpIG1laW50IG1pdCAyNSBscCBnZWh0IGRhcyBsb2NrZXIuLi4KW1NlaGVyOlNjaG9rb10gR2FueiBrbGFyIDspCltTZWhlcjpOZXNhamFdIGtleSBoYXQgNTQgbHBzCltTZWhlcjpOZXNhamFdIGFlaGVtIDQKW1NlaGVyOktleV0gVHJhZXVtZXJpbiA7KQpbU2VoZXI6S2V5IGhhZXR0ZSBnZXJuZSA1NDRdCltTZWhlcjpLZXkgaGFldHRlIGdlcm5lIDU0XQpbU2VoZXI6U2Nob2tvXSBJaHIgc2VpZCBrbGFzc2U7KQpbU2VoZXI6TmVzYWphXSB3ZXIgaWRsZXQgc2NoZWxsZXIgaG9jaCB3aXIgb2RlciBkZXIgdG9yc28KW1NlaGVyOlNoYXJpYV0gbGVja2VyLi4uIGpldHp0IGtvdHp0IE5lc2kgYXVjaG5vY2ggaGllciBpbSByYXVtIHJ1bSA6LSkKW1NlaGVyOktleV0gY29vbCAuLi4gTmVzYWphIGthbm4gaGV1dGUgd2VkZXIgZXNzZW4gbm9jaCB0cmlua2VuIC4uLiB2b3JoaW4KW1NlaGVyOktleV0gc3BpZXNzdCBzaWUgc2ljaCBoYWxiIGF1ZiwgdW5kIGpldHp0IHRyaW5rdCBzaWUgbmFzYWwgLi4uCltTZWhlcjpTaGFyaWFdIE1BTU1JSUlJSUkgOi0pCltTZWhlcjpOZXNhamFdIGlociBzZWlkIGRvb29mCltTZWhlcjpLZXkga25hYmJycnQgYW4gc2VpbmVtIEZ1c3NwaWx6XQpbU2VoZXI6U2Nob2tvIHd1ZXJkIGRhcyBnZXJuZSBSTCBzZWhlbiA7KV0KW1NlaGVyOktleV0gdHUgZGlyIGRhcyBuZXQgYW4gOykKW1NlaGVyOlNjaG9rb10gU2luZCBkYSBub2NoIGFuZHJ0ZSBMZXV0ZSBhdXNzZXIgZXVjaD8gOykKW1NlaGVyOktleV0gbmVlIGRpZSBzaW5kIGdlZmxvaGVuCltTZWhlcjpTaGFyaWFdIGJlc3NlciBuaWNoIHNjaG9rbyAuLi4gbmVzaSBtdXNzICBnZXJhZGUgdGlzY2ggdW5kIHRhc3RhdHVyCltTZWhlcjpTaGFyaWFdIGFid2lzY2hlbiAuLjotKQpbU2VoZXI6U2Nob2tvXSBkZW5rIGljaCBtaXIgOykKW1NlaGVyOktleV0gSEFIISB3aWVkZXIgYXVmIDE0IGxwIC4uLiBhbHNvIGF1c3NlcmhhbGIgZGVzIGtyaXRpc2NoZW4gYmVyZWljaGVzCltTZWhlcjpLZXldIC4uLiBhYmVyIGRlciB0b3JzbyBoYXQgbWVpbmUgYnVtaXMKW1NlaGVyOlNjaG9rbyBkZW5rdCAuIG8gTyAoc2Nob2VuZSBGcmF1ZW4gbXVlc3NlbiBwdXR6ZW4sIGRlbm4genVtIHB1dHplbiBzaW5kCiAgICAgICBzaWUgZGEuLi4ufTspKV0KW1NlaGVyOk5lc2FqYV0gc3VwZXIgZGEgZ2VoIGljaCBtaXQgMzggbHBzIHJlaW4gdW0ga2V5IHp1IGhlbGZlbiB1bmQgZXIgbW90enQKW1NlaGVyOk5lc2FqYV0gbWljaCBhbiB3aWVzbyBpY2ggc28gc2NobmVsbCByYXVzIGJpbgpbU2VoZXI6S2V5IGdyaW5zdF0KW1NlaGVyOktleV0gWUVBSCEKW1NlaGVyOlNjaG9rb10gR3JhdHMhIDspCltTZWhlcjpaaWxsdXMgc3RhdW50IDspXQpbU2VoZXI6S2l1XSB3aWVzbyBtdXNzIHNvZ2FyIG5lc2kgZnVlciBkaWNoIG1ldHplbG4/IHNjaGFlbSBkaWNoIGtleSA7KQpbU2VoZXI6TmVzYWphIGxhY2h0IHNpY2ggdG90OiBrZXkgZnJhZ3QgbWljaDogc29sbCBpY2ggZGlyIGVpbiBlaSBnZWJlbiBpY2gKICAgICAgIGhhYiBqZXR6dCB6d2VpIG1laHIgOildCltTZWhlcjpLaXUgbGFjaHRdCltTZWhlcjpTY2hva28gYnJ1ZWxsdC5dCltTZWhlcjpLaXVdIHdpZXZpZWwgZWllciBoYXN0IGRlbm4gamV0enQ/IGtleSA7KQpbU2VoZXI6S2V5XSAzIDspCltTZWhlcjpLZXkgZ3JpbnN0IHN0b2x6IHVuZCB6ZWlndCBLaXUgc2VpbmUgZWllcl0KW1NlaGVyOlNjaG9rb10gTG9nZ3QgZGFzIHdlciBtaXQ/PwpbU2VoZXI6S2V5IHdhZWx6dCBzaWNoIGF1ZiBkZW0gQm9kZW5dCltTZWhlcjpOZXNhamFdIGthbm4gbWljaCBtYWwgamVtYW5kIGhlaWxlbiBpY2ggYmluIHRhdWIgZGFzIGZpbmRlIGljaCBqYQpbU2VoZXI6TmVzYWphXSB1bnZlcnNjaGFlbXQKW1NlaGVyOktleV0gTmVzYWphIC4uLiBFeSB3YXJ1bSBiaW4gaWNoIHRhdWI/IEthbm4gbWljaCB2aWVsbGVpY2h0IG1hbCBqZW1hbmQKW1NlaGVyOktleV0gaGVpbGVuPyA6KQpbU2VoZXI6TGV2XSBKby4uLiBpY2ggbG9nZ2Ugc2Nob24gZWluIHBhYXIgTWludXRlbi4uLgpbU2VoZXI6S2V5XSBMZXYgbGFzcyBkYXMgLCkKW1NlaGVyOk5lc2FqYV0gd2VyIGxvZ2d0IGRlciBsdWVndCBvZGVyc28gYWVobmxpY2gKW1NlaGVyOk5lc2FqYV0gc2NoYWV0emVybCAuLi53YXMgbWFjaGVuIHdpciBudW4KW1NlaGVyOkxldl0gSWNoIGxvZ2cgd2VnZW4gd2FzIGFuZGVyZW0uLi4gYWJlciBpY2gga2FubiBkZW4gU2VoZXItS2FuYWwKW1NlaGVyOkxldl0gcmF1c3NjaG5laWRlbi4uLgpbU2VoZXI6U2Nob2tvXSBHdXQgc28sIGljaCB3aWxsbmVuIEJld2VpcywgZGFzcyBLZXkgaGVyIG9lZmZlbnRsaWNoIHNlaW5lIEVpZXIKW1NlaGVyOlNjaG9rb10genVyIFNjaGF1IHN0ZWxsdDspCltTZWhlcjpBc21vZGlzXSB3YXMgaXN0IG1pdCBMdWcgPwpbU2VoZXI6TGV2XSBNb2VjaHRldCBJaHIgZXMgaW4gZGVyIE1QQSBoYWJlbj8KW1NlaGVyOktleV0gT0hPSCAuLi4gR2VmYWhyIGluIFZlcnp1ZyAuLi4KW1NlaGVyOktleV0gbWVpbmUgZGFlbW9uIG1laW50IGVyIG11ZXNzZSBhdXNmbGlwcGVuIHVuZCBtZWluZSBrb250cm9sbGUKW1NlaGVyOktleV0gbWlzc2xpbmd0IC4uLiBFWUVZRVlFWSAsKQpbU2VoZXI6U2Nob2tvIGxhY2h0Ll0KW1NlaGVyOk5lc2FqYV0ga2xhc3NlIG1laW4gbWFubiBsYWV1ZnQgbWFsIHdpZWRlciB1bmtvbnRyb2xsaWVydCBkdXJjaCBkaWUKW1NlaGVyOk5lc2FqYV0gZ2VnZW5kIC4uLi4uaWNoIGZ1ZWhsIG1pY2hoaWVyIGdhbnogd2llIHp1YWhzdWUKW1NlaGVyOktleV0gSEFIISBJY2ggYmluIGRvY2ggZWluIE1laXN0ZXIgOykgZ2VsdW5nZW4KW1NlaGVyOkFzbW9kaXNdIHNjaGVuayBkZW0gRGFlbW9uIGVpbiBFaSA6KQpbU2VoZXI6S2l1XSBmdWV0dGVyIGRvY2ggZGVpbmVtIGRhZW1vbiBtaXQgZGVpbmVtIDMuIGVpIDspCltTZWhlcjpBc21vZGlzXSB3ZW5uIGplbWFuZCBsb2dndCwgaWNoIGhhZXR0ZSBnZXJuIG5lIEtvcGllIDopCltTZWhlcjpMZXYgbm90aWVydCBlaW5lIEtvcGllIGZ1ZXIgQXNtb2Rpcy5dCltTZWhlcjpLZXldIERBTktFIFNIQVJJQSEKW1NlaGVyOktleV0gSG1wZnQKW1NlaGVyOktleV0gS2xlcmlrZXIKW1NlaGVyOlNoYXJpYV0ga2xhcHBlIGtleSA6LSkKW1NlaGVyOk5lc2FqYV0gaGllciB3aXJkIG5pY2h0cyBnZWxvZ2d0CltTZWhlcjpOZXNhamFdIGtleSBkdSBic3Qgc29vb29vIHNlbHRlbiBkYWVtbGljaApbU2VoZXI6S2V5XSBkYSBpc3QgbWFuIGhhbGJ0b3QsIGRhIGtvbW10IGRpZSBiYWVydGlnZSwgZHJ1ZWNrdCBlaW5lbSB3YXMgaW4KW1NlaGVyOktleV0gZGllIGhhbmQsIG1laW50IG1hY2ggbWFsLCBkZXIgZHVtbWUgY2hhb3QgbWFjaHQsIHVuZCB3aXJkIHp1IGJyZWkKW1NlaGVyOktleV0gZ2VzY2hsYWdlbiAuLi4KW1NlaGVyOktleV0gS0xFUklLRVIhCltTZWhlcjpBc21vZGlzXSBuaWNodHMgd2lsbCBpY2ggamEgYXVjaCBuaWNodCBnZWxvZ2d0IGhhYmVuCltTZWhlcjpOZXNhamFdIHdpZXNvIGhvbHN0IGR1IGF1Y2ggc3RlYW5lZGlnIGlyZ2VuZHdlbGNoZSBkYWVtb2VuIHdlbm4gZHUgZ3V0CltTZWhlcjpOZXNhamFdIGJpc3QKW1NlaGVyOlNjaG9rbyBraWNoZXJ0Ll0KW1NlaGVyOlNoYXJpYSBsYWNodCBzaWNoIHNjaGxhcHAgLi4gdGphIHdhcyBiaXN0IGR1IGFscyBDaGFvdCBhdWNoIGd1dCB1bmQKICAgICAgIG5pY2ggc2F0YW5pc2NoIDotKV0KW1NlaGVyOlNjaG9rb10gRGllIHN0ZWxsZSBtaXQgZGVtIGR1bW1lbiBDaGFvdGVuIGdlZmFlbGx0IG1pciA7KQpbU2VoZXI6U3RpbmddIGtlaW5lIHZlcmFsbGdlbWVpbmVydW5nZW4gYml0dGUgOikKW1NlaGVyOktleV0gQWhqYSEgSmV0enQgd2lsbCBkaWUgQmFlcnRpZ2UgZGFzIGljaCBhbiBtZWluZW4gZWllcm4ga25hYmJlcmUgLi4uCltTZWhlcjpOZXNhamFdIGRpZSBiYWVydGlnZSB3aWxsIG1laW5lbSBtYW5uIGFuIGRpZSBlaWVyCltTZWhlcjpTaGFyaWFdIFN0aW5nIGR1IGJpc3QgbmUgQXVzbmFobWUKW1NlaGVyOlN0aW5nIGdyaW5zdCBzZWluZSBTY2h3ZXN0ZXIgYW4uXQpbU2VoZXI6TmVzYWphIHdhZWx6dCBzaWNoIGFtIEJvZGVuXQpbU2VoZXI6U2hhcmlhIGhtcGZ0XQpbU2VoZXI6QXNtb2Rpc10gS2V5LCBnZWggbGllYmVyIHp1IGRlbiBCaWVyc2NodWV0dGxlcm4KW1NlaGVyOktleSBncmluc3QgQXNtbyBhbl0KW1NlaGVyOktleV0gUnVoZSBBc21vICwpCltTZWhlcjpOZXNhamFdIHNvb28genVydWVjayB6dW0gZXJuc3QgZGVyIHNhY2hlIGtleSAgLi4ud2lyIG11ZXNzZW4gd2VpdGVyCltTZWhlcjpOZXNhamFdIHF1ZXN0ZW4gLi4uYWxzbyB3ZW4ga2lsbGVuIHdpciBqZXR6dCA/CltTZWhlcjpLZXkgZ3JpbnN0IE5lc2FqYSBhbl0KW1NlaGVyOktleV0gTmEgaGFiIGljaCBtZWluZXIgRnJhdSBuZXQgZWluIG9yZGVudGxpY2hlcyBCZW5laG1lbiBiZWlnZWJyYWNmaHQ/CltTZWhlcjpLZXldIC4pCltTZWhlcjpTY2hva29dIEhhYnQgIGlociBCcnVkZXIgQWJkcmVhcyBldHdhIGxlYmVuIGxhc3Nlbj8gOykKW1NlaGVyOktleV0gSG1tIHdlaXNzIG5ldCAuLi4KW1NlaGVyOktleV0gYW5kcmVhcyBzdGFyYiAuLi4gZXIgc3VlbmRpZ3RlIHVuZCBidWVzc3RlIDopCltTZWhlcjpTY2hva29dIGFlaGggQW5kcmVhcyBtZWluIGljaCA7KQpbU2VoZXI6U2Nob2tvXSBBaCA7KQpbU2VoZXI6TmVzYWphXSBkZXIgc3RhcmIgYWJlciBzb2ZvcnQgc2Nob2tvIHdhcyBkZW5rc3QgZHVkIGVubgpbU2VoZXI6S2l1XSBkYSBnaWJzIGRvY2ggc28gZWluIGtvYm9sZCB6dSB0b2V0ZW4KW1NlaGVyOk5lc2FqYV0gZ3V0ZSBpZGVlIGtpdQpbU2VoZXI6S2V5XSBEZXIga29ib2xkIHN0aW5rdCB6dXNlaHIgOykKW1NlaGVyOktleV0gZGVuIGZhc3MgaWNoIG5ldCBhbiA7KQpbU2VoZXI6QXNtb2Rpc10gdW5kIGRpZSBCYWVydGlnZSBoYWJ0IGlociBhdWNoIExlYmVuIGxhc3NlbiA/IDopCltTZWhlcjpLZXldIGRpZSBpcyBnZWZsb2hlbgpbU2VoZXI6S2V5XSB0eXBpc2NoIGtsZXJpa2VyIDspCltTZWhlcjpOZXNhamFdIGNvb2wgYW5kcmVhcyBpcyBiYWNrIDopCltTZWhlcjpLZXkgbGFjaHRdCltTZWhlcjpLZXldIDExMiBpc3QgZWluIHNjaHdlaW4gOykKW1NlaGVyOk5lc2FqYV0gc28gbm9jaCBtYWwga3VyeiBwYXVzZSB1bmQgZGFubiB3ZXJkZW4gd2lyIG1hbCBkZXIgbm9zLWRpbmdlbnMKW1NlaGVyOk5lc2FqYV0gZGEgYXVmIGRpZSBudXNzIGhhdW4KW1NlaGVyOlNjaG9rb10gSG1tIGphIHdpZXNvLCBLZXk/CltTZWhlcjpMZXYgbm90aWVydCBub2NoIGVpbmUgS29waWUgZnVlciAxMTIuXQpbU2VoZXI6S2V5XSBFdHdhcyB2ZXJhZW5kZXJ0IHNpY2ggaW4gZGlyLiBEaWVzZSBNdXNpayBkcmluZ3QgaW4gRGljaCBlaW4gdW5kCltTZWhlcjpLZXldIC4uLiBUVVQgRVMuCltTZWhlcjpLZXkgZ3JpbnN0XQpbU2VoZXI6U2Nob2tvIGtpY2hlcnQuXQpbU2VoZXI6U2Nob2tvXSAxMTIgaXMgZWluZGV1dGlnIHp1IG9mdCBiZWkgdW5zLCBlciBoYWV0dGUgbmljaCBoaWVyaGVyemllaGVuCltTZWhlcjpTY2hva29dIHNvbGxlbiA7KQpbU2VoZXI6SHlwb10gd2VyIG9kZXIgd2FzIGlzdCBjZXJvIGlnbmVtLyBpbSBpbmZlcm5vIHF1ZXN0CltTZWhlcjpOZXNhamEgYmVlbmRldCBkYXMgcXVlc3RlbiBzcG9udGFuXQpbU2VoZXI6U2Nob2tvXSBIbW0/CltTZWhlcjpLZXldIG5lZWUgbmVlZSA7KQpbU2VoZXI6U2Nob2tvXSBLZWluZSBMdXN0IG1laHI/IDspCltTZWhlcjpOZXNhamFdIGRvY2ggZG9jaApbU2VoZXI6TmVzYWphXSBsdXN0IHNjaG9uIG5vY2ggLi4uYWJlciB3ZW5uIGtleSBkaWVzZSBxdWVzdCBzY2hhZmZ0IHVkbgpbU2VoZXI6TmVzYWphXSBkYWR1cmNoIGxldmVsIDUwIHdpcmQgLi4uLmhhYiBpY2ggbmljaHRzIG1laHIgenUgbGFjaGVuIHNjaG9rbwpbU2VoZXI6S2V5IGdyaW5zdF0KW1NlaGVyOlNjaG9rb10gV2llc28gZGFzIGRlbm4/CltTZWhlcjpOZXNhamFdIGljaCBtdXNzIGRhbm4gNiBsZXZlbCBhdWZob2xlbiAqc2NoYXVkZXIqCltTZWhlcjpTY2hva28ga2ljaGVydC5dCltTZWhlcjpIeXBvXSBodWh1IHdhcyBoZWlzdC9vZGVyIGlzdCBhdWYgZGVtIGFsdGFyIGltIGluZmVybm8gIHF1ZXN0IGRhcyB3b3J0CltTZWhlcjpIeXBvXSBDUkVPIElHTkVNLi4uaXN0IGRhcyB3aWNodGlnCltTZWhlcjpTY2hva29dIExhc3MgRGljaCBtYWwgbiBiaXNzY2hlbiB2b24gbWlyIGF1c2JpbGRlbiwgZGFubiBtYWNoc3QgRHUKW1NlaGVyOlNjaG9rb10gZ2xlaWNoIG4gcGFhciBMZXZlbCBhdWYgZWlubWFsIDspCltTZWhlcjpLZXldIEhhaCEgdW5kIHdpZWRlciBzdGFyYiBlaW4gQnJ1ZGVyICpncmlucyBzYXRhbmlzY2gqCltTZWhlcjpTY2hva28gaXMgZGFmdWVyIEVQIEdyZW56ZW4gbmljaCBudXIgZnVlciBkaWUgU2VoZXJ3ZXJkdW5nIGVpbnp1ZnVlaHJlbgogICAgICAgOyldCltTZWhlcjpLZXldIE9IT0gKW1NlaGVyOktleV0gOCBtaW9zIC4uLiBpY2ggc3RlcmIgYmFsZApbU2VoZXI6TGV2IHdpbmt0IG5vY2ggZWlubWFsIGluIGRpZSBSdW5kZS4uLiB1bmQgbWFjaHQgc2ljaCBkYXZvbi4uLl0KCgoKWmllbWxpY2ggbGFuZyBhYmVyIGF1Y2ggemllbWxpY2ggbHVzdGlnLi4gOikpKSkKCgpMZXYuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTnBjLVdpbGxrdWVyIChUaWxseSwgIDIuIEp1biAxOTk4LCAwMToxMzowOCk6CmViZW4gZ3JhZC4uLgoKRHUgemFwcHN0IGVpbmVuIFNoZXJpZmYuCkVybGVpY2h0ZXJ0IGF0bWVzdCBEdSBhdWYuCkRlciBzY2h3YXJ6ZSBTaGVyaWZmIHRlaWx0IERpciBtaXQ6IFdpciBzZWhlbiB1bnMgd2llZGVyLi4uCkRlciBTaGVyaWZmIGZhZWxsdCB3aWUgZWluIEtsb3R6IHp1IEJvZGVuLgpBcHUgZW50c2ljaGVydCBzZWluZSBhYmdlc2FlZ3RlIFNjaHJvdGZsaW50ZS4KCmRhIHdlbmRlbiBzaWNoIGRpZSBlaWdlbmVuIEtyZWF0dXJlbiBnZWdlbiBtaWNoLCB0c3RzLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTaGFyaWFzIEJhcnQgZGllIChYK3kpc3RlLCBlaW4gTG9nZmlsZSAoTW9yZ290aCwgIDIuIEp1biAxOTk4LCAwNzo1NDo0Mik6Cj4gW1NlaGVyOlNoYXJpYSBpZ25vcmllcnQgZGFzIHZvZWxsaWcgLi4gaWNoIG1hY2ggamV0enQgbmVuIC9nYWcgKmJhcnQqIHVzdwouLi5dCltTZWhlcjpJdm9dIEJBQVJSVFRUCltTZWhlcjpEaWVkZXJdIHNwaWVsdmVyZGVyYmVyIDopKQpbU2VoZXI6S2hvcmFrXSBvY2ggbm9lLCBtdXNzIGRhcyBzZWluID8gaXNzIGRvY2ggbnVyIG5lbiBTcGFzcwpbU2VoZXI6TWFycyBydWZ0IEhpbGJhcnRdCkdub21lIG5pY2t0IFplcGh5ciB6dS4KW1NlaGVyOkRpZWRlciBncmluc3QgTWFycyBhbi5dCltTZWhlcjpNb3Jnb3RoXSBoZXkgc2hhcmlhLCBpY2ggaGFiIG5lbiBGUCBiZWkgZGVtIG1hbiBuZW4gYmFydCB1bnRlcnN1Y2hlbgpbU2VoZXI6TW9yZ290aF0gbXVzcy4uLi4KW1NlaGVyOk1vcmdvdGhdIGxlaWRlciBuaXggZnVlciBkaWNoCj4gU2NobmVld2l0dGNoZW4gcnVmdDogRGFua2UsIFRhcm5vcywgZGFzcyBEdSBtZWluZSBad2VyZ2UgYmVmcmVpdCBoYXN0Lgo+IFtURjpTaGFyaWFdIHd1YWhoIHdpZSBpY2ggZGFzcyBsaWViZSAuLiB3ZWdlL1dFR0UzOiBsaW5lIDExNzU6IHdhcm5pbmc6CltURjpTaGFyaWFdIHBvc3NpYmx5IG1pc3NpbmcgdHJhaWxpbmcgXApbVEY6U2hhcmlhXSB3dXJzdGZlaGxlcm1lbGR1bmcuLi4KW1RGOk1vcmdvdGhdIGhvZSBob2UKPiBbVEY6U2hhcmlhXSB1bmQgZGFuIGluIERFUiBaZWlsZS4uLgpbVEY6U2hhcmlhXSBzY3JvbGxsbGxsbGxsCltURjpNb3Jnb3RoXSBoYXN0IGR1IHJpbmdvcnMgc2FjaGVuIGluc3RhbGxpZXJ0Cj4gW1RGOkRpZWRlcl0gdHN0c3RzIDopClNlbm8gcnVmdDogbmFjaCBoaWxiZXJ0Ckdub21lIHdhdHNjaGVsdCBlbnRlbmdsZWljaCByYXVzLgpbVEY6UmluZ29yXSBkYW5uIG1hY2ggL3NldCBwZWRhbnRpYyBvZmYuIG9kZXIgcHJvZ3JhbW1pZXIgc2F1YmVyIDteKQpbVEY6U2hhcmlhXSBkYXMgSVNTIHBlZGFudGljIG9mZgpbVEY6TWFyc10gY2F0IC1uIGRhdGVpIHxncmVwIDExNzUKRHUgdGVpbHN0IFJpbmdvciBtaXQ6IGtudXJ0IGdyaW5zdCBkaWNoIGJydWVsbGVuZCB2b3IgbGFjaGVuIGFuCj4gW1RGOlNoYXJpYV0gbWl0IGtvZW5udGUgaWNoIG5peG1laHIgbWFjaGVuIDotKQo+IFtURjpSaW5nb3JdIGRhbm4gYmxlaWJ0IG51ciBkZXIgVGVpbCBtaXQgZGVtIHNhdWJlcmVyIHByb2dyYW1taWVyZW4gOykKVGFyaW5hIHRlaWx0IERpciBtaXQ6IG9rYXkKW1RGOlNoYXJpYV0gZGVyIGZlaGxlciBpcyBudXIgZWlubWFsIHNoaWZ0IGdldGlwcHQgaW4gbmVyIGxlZXJ6ZWlsZSAuLiAqd3VlcmcqCltURjpNb3Jnb3RoXSBmYXNzIGFuIGRlaW5lIGVpZ2VuZSBuYXNlCj4gW1RGOkRpZWRlciBkZW5rdCAuIG8gTyAobWFuY2hlIFNlaGVyIGtvZW5udGVuIG9obmUgU2tyaXB0IG5pY2h0IG1hbCBtZWhyIHZvbQogICAgRWxmZW5kb3JmIG5hY2ggUFYgcmVubmVuKSA6KSldCltURjpNb3Jnb3RoXSB3ZXIgaXMgZGllZGVyPwo+IFtURjpSaW5nb3JdIFNoaWZ0IHNvbGx0ZSBuaXggbWFjaGVuLCBkYSBlcyBrZWluIFplaWNoZW4gaXN0LiBBYmVyIGVpbgpbVEY6UmluZ29yXSBMZWVyemVpY2hlbiB6LkIuIHN0b2VydApEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgpbVEY6UmluZ29yIGZhc3N0IGFuIE1vcmdvdGhzIE5hc2VdCltURjpEaWVkZXJdIGh1aHUgTW9vcmdvdHQgOikpCltURjpTaGFyaWFdIGphamEgaWNoIHdlaXNzIHNwYWNlIHVuZCBzaGlmdCBpcyBkb2NoIGZhc3QgZGFzc2VsYmUgOi0pCltURjpEaWVkZXIgZ3JpbnN0IGZyZWNoLl0KW1RGOk1vcmdvdGhdIExBU1MgTUVJTkUgTkFTRSBMT1MKPiBbVEY6UmluZ29yXSBub2UKW1RGOlNoYXJpYSB6aWVodCBrcmFlZnRpZyBhdWNoIG1hbCBhbiBNb3Jnb3RocyBOYXNlXQpbVEY6UmluZ29yIGhhdCBuZW4gTWFnaWVyIGluIGRlciBIYW5kLiBOZXR0ZSBTYWNoZSBkYXMgOyldCltURjpNb3Jnb3RoIHZlcnN1Y2h0IGFuIFJpbmdvcnMgQmFydCB6dSB6aWVoZW4sIGVyd2lzY2h0IGFiZXIgU2hhcmlhc10KW1RGOk1vcmdvdGggc2NobmFldWJ0IHNpY2gga3JhZWZ0aWcuLi4uXQo+IFtURjpTaGFyaWFdIElDSCBIQUJFIEtFSU5FTiBCKgpbVEY6U2hhcmlhXSBhZWhtIEJBUlQgOikKW1RGOktpbGFyXSBXZXIgc2NocmVpdCwgaGF0IHVucmVjaHQKW1RGOk1vcmdvdGhdIGphYWFhYQo+IFtURjpTaGFyaWFdIG1laW5lIGNhcHNsb2NrdGFzdGVrbGVtbXRlLi4uIG1pc3N0dGFzdGF0dXIuLi5pY2ggbWVpbnRlIGljaApoYWJlCltURjpTaGFyaWFdIGtlaW5lbiBiYXJ0CltURjpEaWVkZXJdIGphamFqYSA6KQpbVEY6S2lsYXIga2ljaGVydF0KW1RGOktpbGFyXSBMZWlkZXIgenUgc3BhZXQgOikKW1RGOkRpZWRlcl0gZGFzIHNhZ2VuIHNpZSBhbGxlIDopCltURjpTaGFyaWFdIGFjaCBnZWh0IGRvY2ggYWxsZSB3ZWcKW1RGOk1vcmdvdGhdIGFsc28gamFqYSBoZWlzc3QgbGVjayBtaWNoIGFtIGFyc2NoLCB3YXMgaXN0IGRhbm4gamFqYWphPyB6aWVoCltURjpNb3Jnb3RoXSBtaWNoIGFtIGJhcnQ/Cj4gW1RGOlNoYXJpYV0gcGFhaGhoIHVuZCBzb3dhcyB3b2xsZW4gbWVpbmUgZnJldW5kZSBzZWluICEKRGVpbmUgRnJldW5kaW4gWmVwaHlyIHRlaWx0IERpciBtaXQ6IGdlaCBzY2hsYWZlbiA7KQpEdSB0ZWlsc3QgWmVwaHlyIG1pdDogd2llc28gc29sbCBpY2ggc2NobGFmZW4gZ2VoZW4gOy0pID8/Cj4gWmVwaHlyIHRlaWx0IERpciBtaXQ6IG5pY2ggRHUuLgpEdSB0ZWlsc3QgWmVwaHlyIG1pdDogYWNoIHNvby4uLi4qKmdyaW5zKiogc2NoYWxmIGd1dCBrbGVpbmUKPiBbVEY6RGllZGVyXSBnZW5hdS4uLiB1bmQgamFqYWphamEgaGVpc3N0ICJ6aWVoIG1pY2ggYW0gQmFydCBhYmVyIHJlaXNzIGlobgpbVEY6RGllZGVyXSBuaWNodCBhYiIgOikpCltURjpNb3Jnb3RoXSBpY2ggZGFjaHRlIGRhcyB3YWVyZSBkZXIgbXVsdGktb3JnYXNtdXMKPiBbVEY6U2hhcmlhXSB1bmQgTkVJTiBoZWlzc3Q6IFNoYXJpYSBoYXQga2VpbmVuIEJhcnQKW1RGOlNoYXJpYV0gTkVJTgpTaGFyaWEgdGVpbHQgRGlyIG1pdDogd2VsY2hlIDQgZmx1ZXNzZSBrb2VubmVuIHNpY2ggc2VsYnN0IEJsb25kaW5lbiBtZXJrZW4gPwpEdSB0ZWlsc3QgU2hhcmlhIG1pdDogaG1tLCB3dXNzdGUgaWNoIG1hbApTaGFyaWEgaXN0IGdlcmFkZSBuaWNodCBkYTogaWNoIHNlaGUgcmVjaHQgd2VuaWcgLi4uIHNvcnJ5IHdlbm4gYW50d29ydGVuCmV0d2FzIHNwYWV0IGtvbW1lbiAuLi4KPiBTaGFyaWEgdGVpbHQgRGlyIG1pdDogUmhlaW4gSW5uIE1haW4gUG8gOi0pCkV2YWx1YXRpb24gdGltZTogMCBtcy4KUmVzdWx0OiAwCkR1IHRlaWxzdCBTaGFyaWEgbWl0OiBkdSBmZXJrZWwKPiBTaGFyaWEgdGVpbHQgRGlyIG1pdDogZG9vZmVzIFJhZGlvIHdlbm4gbWFuIGZydWVoc2NoaWNodCBoYXQgdW5kIG5peApiZXNzZXJlcwpTaGFyaWEgdGVpbHQgRGlyIG1pdDogenUgdHVuIGFscyBkYSB6dXp1aG9lcmVuIDotKQpbU2VoZXI6TW9yZ290aF0gU2hhcmlhIHRlaWx0IERpciBtaXQ6IFJoZWluIElubiBNYWluIFBvIDstKSkgPz8/Pwo+IFtTZWhlcjpSaW5nb3JdIGlzIFNoYXJpYSBibG9uZD8KW1NlaGVyOk1vcmdvdGhdIHdhcyBzb2xsIG1pciBkYXMgc2FnZW4/Pwo+IFtTZWhlcjpEaWVkZXJdICpyb3RmbCoKW1NlaGVyOlplcGh5ciBtdXN0ZXJ0IFJpbmdvci5dClNoYXJpYSB0ZWlsdCBEaXIgbWl0OiBEVSBCSVNUIFNPT09PT09PT09PT09PT09PT09PT09PT09PIFRPT09PT09PT09PT09PT09PT1QgIQpTaGFyaWEgdGVpbHQgRGlyIG1pdDogOi0pCltTZWhlcjpNb3Jnb3RoXSBzaWUgaGF0IG5lbiBibG9uZGVuIGJhcnQKPiBbU2VoZXI6SXZvXSBpc3QgZGFzIG5lIGVpbmxhZHVuZyA/ICpncnVlYmVsKgpbU2VoZXI6WmVwaHlyXSBpY2ggbWFjaCBESUNIIGdsZWljaCBibG9uZCwgUmluZ29yCltTZWhlcjpTaGFyaWEgaG1wZnQgcnVtIHVuZCBnZWh0IGxpZWJlcl0KRHUgZ3JpbnN0IFNoYXJpYSBhdXMgZGVyIEZlcm5lIGFuLgpEdSBncmluc3QgU2hhcmlhIGF1cyBkZXIgRmVybmUgYW4uCkR1IGdyaW5zdCBTaGFyaWEgYXVzIGRlciBGZXJuZSBhbi4KPiBbU2VoZXI6UmluZ29yXSBrdWVuc3RsaWNoZSBEdW1taGVpdD8gTmVlZSBkYW5rZQpTaGFyaWEgdGVpbHQgRGlyIG1pdDogRFUgQklTVCBTT09PT09PT09PT09PT09PT09PT09PT09PTyBUT09PT09PT09PT09PT09PT09UICEKU2hhcmlhIHRlaWx0IERpciBtaXQ6IDotKQpTaGFyaWEgdGVpbHQgRGlyIG1pdDogRFUgQklTVCBTT09PT09PT09PT09PT09PT09PT09PT09PTyBUT09PT09PT09PT09PT09PT09UICEKU2hhcmlhIHRlaWx0IERpciBtaXQ6IDotKQpTaGFyaWEgdGVpbHQgRGlyIG1pdDogRFUgQklTVCBTT09PT09PT09PT09PT09PT09PT09PT09PTyBUT09PT09PT09PT09PT09PT09UICEKU2hhcmlhIHRlaWx0IERpciBtaXQ6IDotKQpbU2VoZXI6RGllZGVyIGdyaW5zdCBJdm8gYW4uXQpbU2VoZXI6U2hhcmlhIGdydW1tZWx0IHJ1bV0KW1NlaGVyOkdub21lXSB3YXMgaXN0IG5lIGJsb25kaW5lLCBkaWUgc2ljaCBkaWUgaGFhcmUgYnJhdW4gZ2VmYWVyYnQgaGF0PyA6KQpbU2VoZXI6R25vbWVdIGt1ZW5zdGxpY2hlIGludGVsbGlnZW56IDstKQpbU2VoZXI6TW9yZ290aF0gd2llc28gbWFjaGVuIGJsb25kaW5lbiBuYWNobSBzZXggbmVuIGhhbmRzdGFuZD8KPiBbU2VoZXI6WmVwaHlyXSBJU1RTIEpFVFpUIEVORExJQ0ggR1VUPwpbU2VoZXI6TW9yZ290aF0gZGFtaXQgZHUgZGllIEVDLUthcnRlIGR1cmNoemllaGVuIGthbm5zdAo+IFtTZWhlcjpHbm9tZSBraWNoZXJ0Ll0KW1NlaGVyOkRpZWRlcl0gd2FzIGlzIG5lIGJsb25kaW5lLCBkaWUgbmVuIGhhbmRzdGFuZCBtYWNodD8KW1NlaGVyOkdub21lIHBydXN0ZXQuXQpEdSBrbnVkZGVsc3QgWmVwaHlyIG5pbW1zIG5pY2h0IGVybnN0Lgo+IFplcGh5ciB0ZWlsdCBEaXIgbWl0OiBub2UgOikKRHUgdmVyd3VzY2hlbHN0IFplcGh5cnMgSGFhcmUuCj4gW1NlaGVyOkRpZWRlcl0gYnJ1ZW5ldHRlIG1pdCBNdW5kZ2VydWNoLi4uICpodWVzdGVsKgpaZXBoeXIgdGVpbHQgRGlyIG1pdDogdHUgaWNoIG5pY2h0Li4gYWJlciBuZW4gYmlzc2NoZW4gYXVmcmVnZW4gbXVzcyBzZWluIDspCltTZWhlcjpLaWxhciBrbmViZWx0IERpZWRlcl0KW1NlaGVyOlNoYXJpYV0gamV0enQgd2lyZHMgZWtlbGlnCkR1IG5pY2tzdCB6dXN0aW1tZW5kLgpEdSBncmluc3QuCj4gW1NlaGVyOktob3Jha10gYmFlZWhoaGggOigKW1NlaGVyOkdub21lIGdlaHQgamV0enQgbGllYmVyLiA6KV0KW1NlaGVyOk1vcmdvdGhdIGphamFqYWphamFqYQo+IFtTZWhlcjpEaWVkZXJdIGphamEsIGljaCBnZWJzIGphIHp1Li4uIHVudGVyZSBTY2h1YmxhZGUKW1NlaGVyOk1vcmdvdGhdIFdoYXQgaXMgdGhlIHRoaW5uZXN0IGJvb2sgb24gZWFydGg/CltTZWhlcjpNb3Jnb3RoXSAiV2hhdCBtYW4ga25vdyBhYm91dCB3b21lbiIKPiBbU2VoZXI6RGllZGVyXSB3YXMgaXN0IHdlaXNzIHVudCByZW5uIHZvbiBCdXNjaCB6dSBCdXNjaD8KW1NlaGVyOlNoYXJpYV0gZGVpbiB0YWdlYnVjaCB3ZWlsIGR1IG5pY2htZWhyIGxhbmcgbGVic3QgPyA6LSkKW1NlaGVyOkRpZWRlcl0gb2VzdGVycmVpY2hpc2NoZXIgQXJ6dCBiZWkgZGVyIFplY2tlbnNjaHV0emltcGZ1bmcgOikKW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGRlbiBTY2hsZWltIGhhdCBnZXJhZGUgQ2hyaXN0b3BoZXIgdW1nZWJyYWNodC4KCldlbGNoIHd1ZXJkaWdlcyBFbmRlLi4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhIGhhbW1hIGRlbiBTY2h1bGRpZ2VuISA7bykgKFR1bml4Z3V0LCAgMi4gSnVuIDE5OTgsIDExOjQ3OjI0KToKW1RvZDpMYXJzXSBVbmdsYXVibGljaGVyIExlaWNodHNpbm4gYmVpbSBCZXRyZXRlbiBlaW5lciBUcmVwcGUgaGF0IGdlcmFkZQpbVG9kOkxhcnNdIEdhc3QyIHVtZ2VicmFjaHQuCltBbGxnZW1laW46QmVuZGVpZ2lkIHZlcnNjaHdpbmRldCBoZWltbGljaCBzdGlsbCB1bmQgbGVpc2UuXQoKRGFzcyBlcyBpbW1hIHNvIGxlaWNodCBpcywgZGVuIFVlYmVsdGFldGVyIHp1IGVudGxhcnZlbi4uLgoncyBLYXJhdGUtWndlcmNobGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQWNyaW1vbiwgIDIuIEp1biAxOTk4LCAxNjoxNDoxNCk6Cls8TWFzdGVSPjpNYXRpc10gbApbPE1hc3RlUj46PE1hc3RlUj5dIDEyLjI4IGNtZHMvcywgNzQuMzAgY29tcCBsaW5lcy9zCls8TWFzdGVSPjo8TWFzdGVSPl0gTGFnOiAyLjklLzYwLCAyLjUlLzE1LCA3LjclLzEKWzxNYXN0ZVI+OlRlZGR5XSBBcmdzLCBoYWJ0IGlociBkYSBrZWluZW4gYmVzc2VyZW4gemVpdHB1bmt0IGZ1ZXI/IDotKApbVG9kOkxhcnNdIEVpbiBTdGVpbmJlaXNzZXIgaGF0IGdlcmFkZSBUZWRkeSB1bWdlYnJhY2h0LgoKRGVyIFplaXRwdW5rdCB3YXIgd29obCBiZXd1c3p0IGdlc2V0enQgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOb2x0ZSAmIEludGVybmV0IChSb2NodXMsICAyLiBKdW4gMTk5OCwgMTY6NDY6NTUpOgpGcm9tOiBlbHdvb2RAcnVtYmEubS5pc2FyLmRlIChLb25zdGFudGlub3MgQWdvdXJvcykKU3ViamVjdDogUmU6IENvbXB1c2VydmUsIEZlbGl4IFNvbW0gdmVydXJ0ZWlsdApOZXdzZ3JvdXBzOiBkZS5vcmcuY2NjCkluIGRlbSBadXNhbW1lbmhhbmcgZmFlbGx0IG1pciBub2NoIGV0d2FzIGVpbiwgd2FzIGljaCB1ZWJlciBkaWUgJ0tvbXBldGVueicKdW5zZXJlciBsaWViZW4gRmFtaWxpZW5taW5pc3RlcmluIE5vbHRlIGdlaG9lcnQgaGFiZToKRGVyIEZyYXUgc2Nod2VidGUgdGF0c2FlY2hsaWNoIHZvciwgZGFzcyB3ZW5uIHNjaG9uIFBvcm5vZ3JhcGhpZSBpbSBJbnRlcm5ldCwKZGFubiBlcnN0IG5hY2ggMjM6MDAuIEFscyBzaWUgZGFubiBnZWZyYWd0IHd1cmRlIDIzOjAwIHdvPyBIYXQgc2llIGRpZSBGcmFnZQpuaWNodCB2ZXJzdGFuZGVuIFw6KSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBcmtgcyBHZWdlbmQgKENhdHdlYXpsZSwgIDIuIEp1biAxOTk4LCAyMDowMzo1MSk6Cn4jISBvbj1MeXJhIG90PTg5NjgwMTI5MCBvZz1hbGxnZW1laW5lcwp+IyEgcm49QWxwaGEgcnQ9ODk2ODAxMjE2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODk2NDM3MTk5ClVuZCB3YXMgaXN0IG1pdCBkZXIgU2F1YmVya2VpdCB1bmQgZGVuIHZpZWxlbiBhbnN0ZWNrZW5kZW4gS3JhbmtoZWl0ZW4sIGRpZQpkYW5uIHZvbiBkZW4gTGVpY2hlbmJlcmdlbiBhdXNnZWhlbj8KCkx5ciwgbWFjaHQgc2ljaCBTT3JnZW4gdW0gZGllIEdlc3VuZGhlaXQgZGVyIE11ZGRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQXJrYHMgR2VnZW5kIChDYXR3ZWF6bGUsICAyLiBKdW4gMTk5OCwgMjA6MDM6NTkpOgp+IyEgb249QWxwaGEgb3Q9ODk2ODAxNDU2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1MeXJhIHJ0PTg5NjgwMTI5MCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg5NjQzNzE5OQpCbHVldGVud2Vpc3NlIGFiZ2VuYWd0ZSBLbm9jaGVuIGJlcmdlbiBkb2NoIGtlaW5lIEdlZmFociwgb2Rlcj8KQXVzc2VyZGVtIGtvZW5udGVuIGRpZSBTa2VsZXR0ZSB2b24gZWluZW0gbWFnaXNjaGVuIFNjaHV0enNjaGlsZCB1bWdlYmVuCndlcmRlbiwgZGFzcyBkaWUgU3BpZWxlciB2b3IgZGVtIFNrZWxldHQgdW5kIGRhcyBTa2VsZXR0IHZvcgpsZWljaGVuc2NoYWVuZGVuZGVuIFNwaWVsZXJuIHNjaHVldHp0OikKQWxwaGEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBcmtgcyBHZWdlbmQgKENhdHdlYXpsZSwgIDIuIEp1biAxOTk4LCAyMDowNDoxMSk6Cn4jISBvbj1Bc21vZGlzIG90PTg5NjgwMTkyNyBvZz1hbGxnZW1laW5lcwp+IyEgcm49QWxwaGEgcnQ9ODk2ODAxNDU2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODk2NDM3MTk5CkhtbSwgZGllIHZlcmJyYXVjaGVuIGRvY2ggenV2aWVsIFNwZWljaGVyLCBiZWkgZGVuIEh1bmRlcnRlbiB2b24gVG9kZW4gcHJvClJlYm9vdCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFya2BzIEdlZ2VuZCAoQ2F0d2VhemxlLCAgMi4gSnVuIDE5OTgsIDIwOjA0OjM3KToKfiMhIG9uPVNlcnZlcnVzIG90PTg5NjgwMzUyMSBvZz1hbGxnZW1laW5lcwp+IyEgcm49QWxwaGEgcnQ9ODk2ODAxNDU2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODk2NDM3MTk5CnVuZCB1ZWJlcmFsbCBrcmVpc2VuZGUgR2VpZXIKCmhldXRlIG1hbCBlaW56ZWlsaWcsIFNlcnZlcnVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBcmtgcyBHZWdlbmQgKENhdHdlYXpsZSwgIDIuIEp1biAxOTk4LCAyMDowNDo0NSk6Cn4jISBvbj1NYWhhdG1hIG90PTg5NjgwMzYyNSBvZz1hbGxnZW1laW5lcwp+IyEgcm49QWxwaGEgcnQ9ODk2ODAxNDU2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODk2NDM3MTk5CkRhbm4gbXVzcyBtYW4gYWJlciBnZXdpc3NlIFNlaGVyIGJlaSBkZW4gS25vY2hlbmJlcmdlbiBvcGZlcm4ga29lbm5lbiwgdW0gc2llCndpZWRlciB6dW0gTGViZW4genUgZXJ3ZWNrZW4uIENhcmFkaHJhcyBpbnMgTHVwaW5lbnRhbCEKCk1haGF0bWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEFya2BzIEdlZ2VuZCAoQ2F0d2VhemxlLCAgMi4gSnVuIDE5OTgsIDIwOjA1OjI0KToKfiMhIG9uPUFjcmltb24gb3Q9ODk2ODA0NDU2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1Bc21vZGlzIHJ0PTg5NjgwMTkyNyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTg5NjQzNzE5OQpLb21pc2NoZSBBcmd1bWVudGF0aW9uLgpEaWUgd2VyZGVuIGRvY2ggcmF1c2dlc3dhcHB0LCBzb2xhbmdlIHNpZSBuaWNodCBnZWJyYXVjaHQgd2VyZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaW50ZXJuZXQgc3VlY2h0aWc/IChadWVyaWxldSwgIDMuIEp1biAxOTk4LCAwNDoyMzozNik6CkhpZXIgbWFsIHdpZWRlciBlaW5lIGtsZWluZSBNZXNzaSB2b24gbWlyLCBhbmhhbmQgZGllc2VtIFRleHQga2FubnN0IGR1CmVya2VubmVuLCBvYiBkdSBJbnRlcm5ldCBzdWVjaHRpZywgZWluIFByb2ZpIG9kZXIgZWluIExvb29zZXIgYmlzdC4KSWNoIGJpdHRlIERpY2gsIGRpZXNlbiBUZXh0IGdlZGFua2VubG9zIGR1cmNoenVsZXNlbi4gTmltbSBkaXIgbmljaHQKdmllbCBaZWl0IGRhenUsIGRlbm4gZGFzIGJyaW5ndCBlaGhoIG5peC4KClp3aXNjaGVuZHVyY2ggc2luZCBub2NoIHZvZWxsaWcgc2lubnZvbGxlIEJlc2NocmVpYnVuZ2VuIGJlciBkaWUKdmVyc2NoaWVkZW5lbiBCZXRyaWVic3N5c3RlbWUgZGllIER1IGF1ZiBkZXIgV29sa2UgNyBkb3dubG9hZGVuIGthbm5zdC4KCkZhbGxzIER1IG5vY2ggZnJhZ2VuIGRhenUgaGFzdCwga2FubnN0IGR1IG1pY2ggZ2VybmUgYW5ydWVwZWxuLCBzY2hpY2sKbWlyIGRvY2ggZWluZSBNZXNzYWdlIG1pdCBkZXIgUFRUIFN3aXNzY29tLCBkaWUga29tbXQgd2VuaWdzdGVucyBuaWUKYW4uLi4gCgpGYWxscyBEdSBrZWluZSBaZWl0IGhhc3QsIGthbm5zdCBEdSBhdWNoIGVpbmZhY2ggZGVuIGtsZWluZW4gRmluZ2VyIGluCmRpZSAyMjBWIERvc2Ugc3RlY2tlbiwgZGFubiBtdXNzdCBEdSBkaWNoIGF1ZiBtZWluZW4gTmFtZW4ga29uemVudHJpZXJlbgooZGVuayBhbiBtaWNoKSwgd2VubiBpY2ggbWljaCBuaWNodCBpbm5lcnQgMCwwMDMgTWlsaXNla3VuZGVuIGJlaSBkaXIKTWVsZGUgYmluIGljaCAobGVpZGVyKSBiZXNldHp0IChUb2lsZXR0ZSkuIEZocmUgZGFubiBlaW5mYWNoIGRlbiBGaW5nZXIKYWxsZSAyIE1pbnV0ZXIgd2llZGVyIGluIGRpZSAyMjBWIERvc2UsIHdlbm4gRHUgZXMgcmljaHRpZyBtYWNoc3Qgd2lyc3QKZHUgbWljaCBOSUUgZXJyZWljaGVuLgoKT2sgbnVuIHdpbGwgaWNoIERpY2ggYWJlciBuaWNodCBub2NoIGxhbmdlIHZvbGxzbHplbiwgYW5hbHlzaWVyZQplaW5mYWNoIG1hbCBtaXQgZGVtIENvbXB1dGVyIGRlaW5lbiBTdGFuZHB1bmt0IGltIEludGVybmV0LgpEZW5uIGRlciBiZXN0ZSBTVEFORFBVTktUIGlzdCB1bnRlciAtLT4gaHR0cDovL3d3dy5zaWxlbnRzLmNvbS8genUKZXJyZWljaGVuLgoKRVMgR0VIVCBMT1MgLi4uLi4uLi4KCkZSQUdFIFVORCBFUktFTk5FIERJQ0ggU0VMQlNUIAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PQoKV29yYW4gZXJrZW5uc3QgZHUsIGRhc3MgZHUgSW50ZXJuZXQgc3VlY2h0aWcgYmlzdAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCjEuICBEdSB3YWNoc3QgMyBVaHIgbW9yZ2VucyBhdWYgdW0gYXVmIGRpZSBUb2lsZXR0ZSB6dSBnZWhlbiB1bmQgYmVpbQp6dXJ1Y2tnZWhlbiBzaWVoc3QgZHUgbmFjaCBvYiBkdSBFLW1haWxzIGJla29tbWVuIGhhc3QuCjIuICBXZW5uIGR1IGRlaW5lbiBNYWlsb3JkbmVyIGF1Zm1hY2hzdCB1bmQgZXMgc3RlaHQ6IiBubyBuZXcgbWVzc2FnZXMiCnZlcnN1Y2hzdCBkdSBlcyBub2NoIG1hbC4KMy4gIER1IHJ1ZnN0IGRlaW5lIE11dHRlciBuaWNodCBtZWhyIGFuIHdlaWwgc2llIGtlaW4gTW9kZW0gaGF0Lgo0LiAgRGVpbiBIdW5kIGhhdCBlaW5lIGVpZ2VuZSBIb21lcGFnZS4KNS4gIEFsbGUgZGVpbmUgRnJldW5kZSBoYWJlbiBlaW4gQCBpbiBpaHJlbSBOYW1lbi4KNi4gIERlaW5lIFRlbGVwaG9ucmVjaG51bmcga29tbXQgaW4gZWluZW0gUGFrZXQuCjcuICBEdSB3ZWlzc3QgZGFzIEdlc2NobGVjaHQgZGVpbmVyIGJlc3RlbiBmdWVuZiBGcmV1bmRlIG5pY2h0IHdlaWwgc2llCkt1cnpuYW1lbiBiZW51dHplbiB1bmQgZHUgaGFzdCBuaWVtYWxzIGdldHJhdXQgenUgZnJhZ2VuLgo4LiAgRHUgaGFzdCBlaW4gVGF0b28gZGFzIGhlaXNzdDoiVGhpcyBib2R5IGJlc3Qgdmlld2VkIHdpdGggTmV0c2NhcGUKTmF2aWdhdG9yIDIuMCBvciBoaWdoZXIiLgo5LiAgRGllIE5hbWVuIGRlaW5lciBLaW5kZXIgc2luZCBZYWhvbywgTWFnZWxsYW4sIEx5Y29zIHVuZCBEZWluIEh1bmQKaGVpc3N0IEN5YmVyLgoKClNoYXJld2FyZQotLS0tLS0tLS0KRXMgZ2lidCBlaW5lIEZsdXQgdm9uIFByb2JsZW1lbiBiZWkgZGVyIEJlbnV0enVuZyB1bmQgdXBkYXRpbmcgdm9uClNoYXJld2FyZS4gVmllbGUgTGV1dGUgaGFiZW4gR2lybEZyaWVuZCA2LjAgenUgV2lmZSAxLjAgdXBkYXRlZCB1bmQKZmFuZGVuIGhlcmF1cywgZGFzcyBlcyBlaW4gc2VociBTcGVpY2hlcmZyZXNzZW5kZXMgUHJvZ3JhbW0gaXN0LiBTaWUKbXVzc3RlbiBhbmRlcmUgQW53ZW5kdW5nZW4gdmVybGFzc2VuIHVtIFJlc3NvdXJjZW4genUgc3BhcmVuLiBFcyB3dXJkZQpiZXJpY2h0ZXQsIGRhc3MgbmFjaCBlaW5lbSBKYWhyIEJlbnV0enVuZyB2b24gV2lmZSAxLjAsIGRhcyBQcm9ncmFtbQpiZWdpbm50LCBzb2dlbmFubnRlICJjaGlsZCBwcm9jZXNzZXMiIGFienVzcGFsdGVuLCB3ZWxjaGUgZGVuIFJlc3QgZGVyClJlc3NvdXJjZW4gYXVjaCBub2NoIGF1ZmJyYXVjaGVuLiBBbmRlcmUgc2VsdHNhbWUgVm9ya29tbW5pc3NlIHdhcmVuLApkYXNzIHdhaHJlbmQgQmVudXR6dW5nIHZvbiBXaWZlIDEuMCwgV2lmZSAxLjAgc2ljaCBhdXRvbWF0aXNjaCBpbiBkaWUKU3lzdGVtaW5pdGlhbGlzaWVydW5nIHNjaGxpY2ggdm9uIHdvIGF1cyBlcyBhbGxlIFN5c3RlbWFrdGl2aXRhdGVuCmJlb2JhY2h0ZXQuIFNpZSB3ZXJkZW4gZmVzdHN0ZWxsZW4sIGRhc3MgQW53ZW5kdW5nZW4sIGRpZSB2b3IgZGVyCkluc3RhbGxhdGlvbiB2b24gV2lmZSAxLjAgcGVyZmVrdCBmdW5rdGlvbmllcnRlbiwgbmljaHQgbGFlbmdlcgpmdW5rdGlvbmllcmVuIHdlcmRlbi4gQmVpc3BpZWxlIGRhZnVyIHNpbmQ6IFBva2VyTmlnaHQgMTAuMywgQmVlckJhc2gKMi41LCBQdXBOaWdodCA3LjAuIEFuZGVyZSB1bnd1ZW5zY2hlbnN3ZXJ0ZSBWb3Jrb21tbmlzc2UgbWl0IFdpZmUgMS4wCnNpbmQsIGRhc3MgZXMgYXV0b21hdGlzY2ggdW5lcnd1bnNjaHRlIFBsdWctaW5zLCB3aWUgU2Nod2llZ2VybXV0dGVyCjU1LjggdW5kIFNjaHdpZWdlcnZhdGVyIEJldGEgUmVsZWFzZSwgaW5zdGFsbGllcnQuIEFscyBLb25zZXF1ZW56IHdpcmQKZGllIFN5c3RlbXBlcmZvcm1hbmNlIGplZGVuIFRhZyBrbGVpbmVyLgoKQUNIVFVORzoKCkZhbGxzIHNpZSB2ZXJzdWNoZW4gR2VsaWVidGUgMS4xIHp1IGluc3RhbGxpZXJlbiBiZXZvciBzaWUgV2lmZSAxLjAKZGVpbnN0YWxsaWVydCBoYWJlbiB3aXJkIFdpZmUgMS4wIGFsbGUgaWhyZSBNb25leSBGaWxlcyBsb2VzY2hlbiB1bmQKZGFuYWNoIGVpbmUgU2VsZi0gRGVpbnN0YWxsYXRpb24gZHVyY2hmdWhyZW4uIFZlcnN1Y2hlbiBzaWUgR2VsaWVidGUgMS4xCmF1ZiBlaW5lbSBhbmRlcmVuIFN5c3RlbSB6dSBpbnN0YWxsaWVyZW4gZGFubiBhY2h0ZW4gc2llIGRhcmF1ZiBkYXMKa2VpbmUgVHJhbnNmZXJzIHp3aXNjaGVuIGRlbiBTeXN0ZW1lbiBkdXJjaGdlZnVlaHJ0IHdlcmRlbi4gUGFzc2VuIHNpZQphdWYgZGFzIGJlaSBWZXJ3ZW5kdW5nIHZvbiB2ZXJzY2hpZWRlbmVuIFByb2dyYW1tZW4ga2VpbiBWaXJ1cyBhdWYgZGFzClN5c3RlbSB2b24gV2lmZSAxLjAga29tbXQuIEFjaHRlbiBzaWUgYmVpIGplZGVyIEJlbnV0enVuZyBkZXMgSS9PIFBvcnRzCmF1ZiBkZW4gTGVzZS0gU2NocmVpYmUtIFNjaHV0ei4gV2VubiBzaWUgZGllClByb2JsZW1lIG1pdCBXaWZlIDEuMCB1bWdlaGVuIHdvbGxlbiBpc3QgdW5zZXIgVHlwLCBlaW5mYWNoIGJlaSBJaHJlcgpha3R1ZWxsZW4gVmVyc2lvbiB2b24gR2lybEZyaWVuZCB6dSBibGVpYmVuLiBEb2NoIGF1Y2ggaGllciBnaWJ0IGVzClByb2JsZW1lLiBTaWUga29lbm5lbiBuaWNodCBHaXJsRnJpZW5kIDIuMCB1ZWJlciBHaXJsRnJpZW5kIDEuMAppbnN0YWxsaWVyZW4uIFNpZSBtdWVzc2VuIHp1ZXJzdCBkaWUgYWVsdGVyZSBWZXJzaW9uIGRlaW5zdGFsbGllcmVuLiBEYXMKbXVzcyBzZWluLCBkYSB2ZXJzY2hpZWRlbmUgVmVyc2lvbmVuIHZvbiBHaXJsRnJpZW5kIEtvbmZsaWt0ZSBiZWkgZGVyCmdlbWVpbnNhbWVuIEJlbnV0enVuZyBkZXMgSS9PIFBvcnRzIGhhYmVuLiBFaW4gYW5kZXJlcyBQcm9ibGVtIHZvbgpHaXJsRnJpZW5kIGlzdCBkaWUgaW1tZXIgd2llZGVyIGtvbW1lbmRlIFBvcFVwIE1lc3NhZ2UsIHdlbGNoZSBkaWUKVXBkYXR1bmcgenUgV2lmZSAxLjAgdmVybGFuZ3QuIEluIGRlciBuZXVlcmVuIFZlcnNpb24sIFdpZmUgMi4wLCB3dXJkZQpmb2xnZW5kZSBGZWF0dXJlcyBoaW56dWdlZnVndC4gRWluZSAiRGVpbnN0YWxsIGF0IGFueXRpbWUiIEZ1bmt0aW9uCihvaG5lIFZlcmx1c3Qgdm9uIFJlc3NvdXJjZW4pLCBNdXRlIEZ1bmt0aW9uLCBNaW5pbWl6ZSBCdXR0b24KCgoKRGllIHZlcnNjaGllZGVuZW4gQ29tcHV0ZXJtZW5zY2hlbjoKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCkRlciBDaGVmc29mdHdhcmVlbnR3aWNrbGVyCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkVyIGlzdCBtaXQgc2VpbmVtIENvbXB1dGVyIGZlc3QgdmVyd2FjaHNlbiwgdGlwcHQgc2NobmVsbGVyLCBhbHMgZGVyCkNvbXB1dGVyIGVzIHZlcmFyYmVpdGVuIGthbm4sIGRlbmt0IGluIEFzc2VtYmxlciwgdWViZXJzdGVodCBTY2hvY2tzIHZvbgozODAgViB1bmQga2VubnQgYWxsZSBDaGlwcyBhdXN3ZW5kaWcuCgpEZXIgU3RhcnByb2dyYW1taWVyZXIKLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkVyIHNpdHp0IDIwIFN0dW5kZW4gcHJvIFRhZyBhbSBDb21wdXRlciwgdGlwcHQgMTAgV29lcnRlciBwcm8gU2VrdW5kZSwKYmVoZXJyc2NodCBQYXNjYWwsIEJBU0lDLCBBc3NlbWJsZXIsIEZvcnRyYW4sIExvZ28sIEFQTCwgQWxnb2wsIFByb2xvZwp1bmQgQywgaGFlbHQgMjIwIFYgYXVzIHVuZCBrZW5udCBhbGxlIEhhbmRidWVjaGVyLgoKRGVyIERpcGxvbS1JbmZvcm1hdGlrZXIKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQmVudXR6dCBzZWluZW4gQ29tcHV0ZXIgMTYgU3R1bmRlbiBhbSBUYWcsIHRpcHB0IDEwIFplaWNoZW4gcHJvIFNla3VuZGUsCmJlaGVycnNjaHQgUGFzY2FsLCBCQVNJQywgQyB1bmQgQXNzZW1ibGVyIGZsaWVzc2VuZCwga2FubiBlaW5lbiBoZWlzc2VuCkxvZXRrb2xiZW4ga3VyeiBhbmZhc3NlbiB1bmQgaGF0IGFsbGUgSGFuZGJ1ZWNoZXIuCgpEZXIgSW5mb3JtYXRpa2VyCi0tLS0tLS0tLS0tLS0tLS0KRXIgdmVyYnJpbmd0IHNlaW5lbiBBcmJlaXRzdGFnIHVuZCBhbGxlIFBhdXNlbiB2b3IgZGVtIENvbXB1dGVyLCB0aXBwdCA1ClplaWNoZW4gcHJvIFNla3VuZGUsIGJlaGVycnNjaHQgUGFzY2FsIHVuZCBCQVNJQyBmbGllc3NlbmQsIHVlYmVyYnJ1ZWNrdApTaWNoZXJ1bmdlbiwgd2Vpc3MsIHdvIGVzIGluIGRlciBCaWJsaW90aGVrIGRpZSBIYW5kYnVlY2hlciBnaWJ0LgoKRGVyIFByb2dyYW1taWVyZXIKLS0tLS0tLS0tLS0tLS0tLS0KRXIgdmVyYnJpbmd0IG51ciBkaWUgcmVpbmUgQXJiZWl0c3plaXQgdm9yIGRlbSBDb21wdXRlciwgdGlwcHQgd2llIGVpbmUKU2VrcmV0YWVyaW4sIGthbm4gbWl0IEhpbGZlIGVpbmVzIE5hY2hzY2hsYWdld2Vya2VzIGluIEFzc2VtYmxlcgpwcm9ncmFtbWllcmVuLCBrYW5uIFNpY2hlcnVuZ2VuIGF1c3RhdXNjaGVuIHVuZCB3ZWlzcywgd28gZXIgSGFuZGJ1ZWNoZXIKa2F1ZmVuIGthbm4uCgpEZXIgSW5mb3JtYXRpa3N0dWRlbnQKLS0tLS0tLS0tLS0tLS0tLS0tLS0tClNpdHp0IGFscyBIb2JieSB2b3IgZGVtIENvbXB1dGVyLCB0aXBwdCAxMCBXb2VydGVyIHBybyBNaW51dGUsIGthbm4gbWl0CkhpbGZlIGVpbmVzIExlaHJidWNoZXMga2xlaW5lIFBhc2NhbC1Qcm9ncmFtbWUgZXJzdGVsbGVuLCBrYW5uCkJhdHRlcmllbiBpbSBUYXNjaGVucmVjaG5lciBhdXN3ZWNoc2Vsbiwgd2Vpc3MsIGRhc3MgZXMgSGFuZGJ1ZWNoZXIKZ2lidC4KCkRlciBVc2VyCi0tLS0tLS0tClNpdHp0IGFiIHVuZCB6dSBhbSBDb21wdXRlciwgdGlwcHQgZWluIFdvcnQgcHJvIE1pbnV0ZSwga2FubiBrdXJ6ZQpCQVNJQy1Qcm9ncmFtbWUgYWJ0aXBwZW4sIGJla29tbXQgdm9uIGVpbmVyIDlWLUJhdHRlcmllIGVpbmVuIFNjaGxhZwp1bmQgaW50ZXJlc3NpZXJ0IHNpY2ggbmljaHQgZnVlciBIYW5kYnVlY2hlciwgd2VpbCBlciBzaWUgc293aWVzbyBuaWNodAp2ZXJzdGVodC4KCkRhcyBMb29vc2VyCi0tLS0tLS0tCkVyIHdlaXNzIGdlcmFkZSBlYmVuLCB3YXMgZGVyIEJpbGRzY2hpcm0gaXN0LCB0cmlmZnQga2VpbmUgVGFzdGUgYmVpbQplcnN0ZW4gVmVyc3VjaCwgZmluZGV0IHdlZGVyIGRpZSBEaXNrZXR0ZSBtaXQgZGVyIFByb2dyYW1taWVyc3ByYWNoZSwKbm9jaCBrb2VubnRlIGVyIHNpZSBlaW5sZWdlbiwga2FubiBrZWluZW4gU3RlY2tlciBlaW5zdGVja2VuLCBvaG5lIGVpbmVuClNjaGxhZyB6dSBiZWtvbW1lbiB1bmQgaGF0IGtlaW5lIEhhbmRidWVjaGVyLCB3ZWlsIGVyIHNvd2llc28gbmljaHQKbGVzZW4ga2Fubi4gVW5kIHdlbm4gZXIgcHJvZ3JhbW1pZXJ0LCBkYW5uIGluIFBBU0dPTCBvZGVyIEFMRk9OUyA2OC4KCkRlciBIYWNrZXIKLS0tLS0tLS0tLQpFciBpc3QgZWlucyBtaXQgZGVtIENvbXB1dGVyLCB0aXBwdCBuaWNodCwgc29uZGVybiB1ZWJlcnRyYWVndCBzZWluZQpHZWRhbmtlbiBkaXJla3QgYW4gZGVuIENvbXB1dGVyLCBzY2hyZWlidCBiZWkgQmVkYXJmIHNjaG5lbGwgc2VsYnN0CmVpbmUgUHJvZ3JhbW1pZXJzcHJhY2hlLCBlcnpldWd0IGRpZSBiZW5vZXRpZ3RlbiAyMjAgViBzZWxic3QgdW5kIGhhdAphbGxlIGJlc3NlcmVuIEhhbmRidWVjaGVyIGdlc2NocmllYmVuLgoKQmV0cmllYnNzeXN0ZW1lIGFscyBGbHVnZ2VzZWxsc2NoYWZ0ZW4KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCkRPUyBBaXJsaW5lcwotLS0tLS0tLS0tLS0KQWxsZSBzY2hpZWJlbiBkYXMgRmx1Z3pldWcgYW4sIGJpcyBlcyBhYmhlYnQuIERhbm4gc3ByaW5nZW4gYWxsZSBhdWYgdW5kCmxhc3NlbiBlcyB0cnVkZWxuLCBiaXMgZXMgd2llZGVyIGF1ZiBkZW0gQm9kZW4gYXVmc2NobGFlZ3QuIERhbm4Kc2NoaWViZW4gd2llZGVyIGFsbGUsIHNwcmluZ2VuIGF1Zi4uLi4KCk1BQyBBaXJsaW5lcwotLS0tLS0tLS0tLS0KQWxsZSBTdGV3YXJkcywgU3Rld2FyZGVzc2VuLCBQaWxvdGVuLCBHZXBhZWNrdHJhZWdlciB1bmQKVGlja2V0dmVya2FldWZlciBzZWhlbiBnbGVpY2ggYXVzLCBiZXdlZ2VuIHNpY2ggZ2xlaWNoIHVuZCBzYWdlbiBkYXMKR2xlaWNoZS4gV2VubiBtYW4gbmFjaCBEZXRhaWxzIGZyYWd0LCBiZWtvbW10IG1hbiBpbW1lciBkaWUgZ2xlaWNoZQpBbnR3b3J0OiBEYXMgbXVzcyBtYW4gbmljaHQgd2lzc2VuLCBzb2xsIG1hbiBhdWNoIG5pY2h0IHdpc3NlbiB1bmQgYWxsZXMKbGFldWZ0IHNjaG9uCnJpY2h0aWcuIE1hbiBzb2xsdGUgYWxzbyBsaWViZXIgZ2xlaWNoIHN0aWxsIHNlaW4uCgpXaW5kb3dzIEFpcmxpbmVzCi0tLS0tLS0tLS0tLS0tLS0KRGFzIEZsdWdoYWZlbnRlcm1pbmFsIGlzdCBzY2hvZW4gYnVudCwgZGllIFN0ZXdhcmRzIHVuZCBTdGV3YXJkZXNzZW4KZnJldW5kbGljaC4gTWFuIGdlbGFuZ3Qgb2huZSBQcm9ibGVtZSBhbiBCb3JkLCBlaW4gcmVpYnVuZ3Nsb3NlcgpTdGFydC4uLiBQbG9ldHpsaWNoIHN0dWVyenQgZGFzIEZsdWd6ZXVnIG9obmUgamVnbGljaGUgVm9yd2FybnVuZyBhYi4KCk9TLzIgQWlybGluZXMKLS0tLS0tLS0tLS0tLQpVbSBhbiBCb3JkIGRlcyBGdWd6ZXVncyB6dSBrb21tZW4sIG11c3MgbWFuIHNlaW4gVGlja2V0IHplaG4gbWFsCnN0ZW1wZWxuIGxhc3NlbiB1bmQgaW4gemVobiB1bnRlcnNjaGllZGxpY2hlbiBTY2hsYW5nZW4gYW5zdGVoZW4uIERhbm4KZnVlbGx0IG1hbiBlaW4gRm9ybXVsYXIgYXVzLCBpbiBkZW0gbWFuIGFuZ2ViZW4gbXVzcywgd28gbWFuIHNpdHplbgptb2VjaHRlIHVuZCBvYiBkZXIgU2l0enBsYXR6IHdpZSBpbiBlaW5lbSBCdXMsIFNjaGlmZiBvZGVyIGVpbmVtIFp1ZwphdXNzZWhlbiBzb2xsLiBXZW5uIGVzIGVpbmVtIGdlbGluZ3QgYW4gQm9yZCB6dSBrb21tZW4gdW5kIGRhcyBGbHVnemV1Zwp3aXJrbGljaCB2b20gQm9kZW4gYWJoZWJ0LCBoYXQgbWFuIGVpbmVuIHd1bmRlcmJhcmVuIEZsdWcuLi4gYXVzc2VyCndlbm4gZGllIEhvZWhlbi0gdW5kIFNlaXRlbnJ1ZGVyIGVpbmZyaWVyZW4uIEluIGRpZXNlbSBGYWxsIGhhdCBtYW4KamVkb2NoIGltbWVyIG5vY2ggZ2VudWVnZW5kIFplaXQsIHNpY2ggYXVmIGVpbmVuIEFic3R1cnogdm9yenViZXJlaXRlbi4KClVOSVggQWlybGluZXMKLS0tLS0tLS0tLS0tLQpKZWRlcm1hbm4gYnJpbmd0IGVpbiBTdHVlY2sgZGVzIEZsdXpldWdzIHp1bSBGbHVnaGFmZW4gbWl0LiBBbGxlIGdlaGVuCmF1ZiBkaWUgU3RhcnRiYWhuIHVuZCBzZXR6ZW4gZGFzIEZsdWd6ZXVnIFN0dWVjayBmdWVyIFN0dWVjayB6dXNhbW1lbi4KRGFiZWkgZGlza3V0aWVyZW4gc2llIGZvcnR3YWVocmVuZCwgd2VsY2hlIEFydCB2b24gRmx1Z3pldWcgc2llIGdlcmFkZQp6dXNhbW1lbmJhdWVuLgoKTlQgQWlybGluZXMKLS0tLS0tLS0tLS0KQWxsZSBnZWhlbiBhdWYgZGllIFN0YXJ0YmFobiwgc2FnZW4gaW0gQ2hvciBkYXMgUGFzc3dvcnQgdW5kIGJpbGRlbgpVbXJpc3NlIGVpbmVzIEZsdWd6ZXVnZXMuIERhbm4gc2V0emVuIHNpZSBhbGxlIGF1ZiBkZW4gQm9kZW4gdW5kIGdlYmVuCkdlcmFldXNjaGUgdm9uIHNpY2gsIGFscyB3dWVyZGVuIHNpZSB3aXJrbGljaCBmbGllZ2VuLgoKCgp0c2NoYXUgQWxhaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEhpZXIgc3ByaWNodCBaYXJkb3ogOikgKENhdHdlYXpsZSwgIDMuIEp1biAxOTk4LCAxMDozMzo0MSk6Cn4jISBvbj1LZXkgb3Q9ODk2ODYyNTAyIG9nPWV0aWtldHRlCn4jISBybj1TaWx2YW5hIHJ0PTg5Njg2MTMzMiByZz1ldGlrZXR0ZQp+IyEgdGlkPTg5Njc4Mjk5OQpIbW1tIC4uLiBMYXVuaXNjaCwgV2VjaHNlbGhhZnQsIFVuenV2ZXJsYWVzc2lnIC4uLi4gZGFzIGJlc2NocmVpYnQgZG9jaCBhbQplaHN0ZW4gbmUgRnJhdT8gb2Rlcj8gOikKCktleSBnZWh0IGluIERlY2t1bmcgOykpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaW50ZXJuZXQgc3VlY2h0aWc/IChSaW5nb3IsICAzLiBKdW4gMTk5OCwgMTE6NDE6MDkpOgp+IyEgcm49WnVlcmlsZXUgcnQ9ODk2ODQwNjE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk2ODQwNjE2ClppdGF0OgoKMS4gIER1IHdhY2hzdCAzIFVociBtb3JnZW5zIGF1ZiB1bSBhdWYgZGllIFRvaWxldHRlIHp1IGdlaGVuIHVuZCBiZWltCnp1cnVja2dlaGVuIHNpZWhzdCBkdSBuYWNoIG9iIGR1IEUtbWFpbHMgYmVrb21tZW4gaGFzdC4KCkFsc28gYmVpIGVjaHRlciBJbnRlcm5ldC1TdWNodCBrYW5uIGRlciBUZWlsIG1pdCBkZW0gX0F1ZndhY2hlbl8gdW0gMyBVaHIKbW9yZ2VucyBuaWNodCBnYW56IHN0aW1tZW4uIERhcyBpc3QgZG9jaCBkaWUgYmVzdGUgWmVpdCB6dW0gTXVkZGVuLCBvZGVyPyA7LSkKClJpbmdvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU29mdHdhcmUtTWFnaWVyZWlnZW50dW0gKFNjaG9rbywgIDMuIEp1biAxOTk4LCAxMjowNzoyNCk6Cn4jISBybj1QYXRyeW4gcnQ9ODk2ODY4MTkxIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODk2ODY2MzkzCipsYWNoKiBtYW4gc29sbHRlIHdpcmtsaWNoIG1hbCBuZSBzb2FwIHZvbSBNRyBoaWVyIGRyZWhlbiwgZGFzIE5pdmVhdSB2b24gZ3pzegprb2VubmVuIHdpciBsb2NrZXIgdW50ZXJiaWV0ZW4gOykKClNjaG9rbyAoa29wZnNjaHVldHRlbG5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGFzIHBhc3N0IDopIChIb29kLCAgMy4gSnVuIDE5OTgsIDEzOjI0OjQ5KToKPiBbWmF1YmVyZXI6TW9yZ2FyXSBXZXIgd2lsbCBiZWkgZGVuIFN0ZWluYmVpc3Nlcm4gaGVsZmVuPwooIC4gWCAgICBXIC4gKSAgICAgIDE2MyAoMCkgMjEwICAgIDE2ICgrMSkgMjI2ICAgIDEyODYgKDApIDE1MApBbGluZSBhbiBhbGxlIFphdWJlcmVyOiBUamEgZGVyIFR5cG8gaXN0IHNjaG9uIGxhZW5nZXIgYmVrYW5udApbWmF1YmVyZXI6S2V5XSBMdXNjaGUhCiggLiBYICAgIFcgLiApICAgICAgMTY0ICgrMSkgMjEwICAgIDE3ICgrMSkgMjI2ICAgIDEyODUgKC0xKSAxNTAKW1phdWJlcmVyOkx5cmFdIEVpbmUgc28gbHVtcGlnZSBLYWVtcGZlcmluIHdpZSBtaWNoIGJyYXVjaHN0IER1IGJlc3RpbW10IG5pY2h0Ck5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCiggLiBYICAgIFcgLiApICAgICAgMTY1ICgrMSkgMjEwICAgIDE4ICgrMSkgMjI2ICAgIDEyODQgKC0xKSAxNTAKW1phdWJlcmVyOk5vdmFzdG9ybSBuaWNrdCBLZXkgenUuXQpTYXVsIHdhbmRlbHQgaGVyZWluLgpbVG9kOkxhcnNdIEVpbiBaaWVnZW5ib2NrIGhhdCBnZXJhZGUgTHlyYSB1bWdlYnJhY2h0LgoKLS0tLS0tCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGFlPyAoQW5hdG9sLCAgMy4gSnVuIDE5OTgsIDE1OjE0OjU3KToKW0FsbGdlbWVpbjpaYXJuaXlhXSB3ZXIgaXN0IHlhbnRybwpEcm9sbGkgdGVpbHQgRGlyIG1pdDogbmEgZHUgc2FjayA6KQoKRGVuIGpldHp0IG5pY2h0IHZlcnN0YW5kZW4gaGFiZW5kLApBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3Nvc28uLi4gKEV0YWluLCAgMy4gSnVuIDE5OTgsIDE2OjQ3OjMwKToKTmVzYWphICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpBYmVudGV1ZXIgZGFzIGFybWUgZGluZyBpc3QgaGFsdCBlaW4gd2VuaWcgZWluc2FtIDstKQpBbmF0b2wgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpFdGFpbiwgd3VuZGVydCBzaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2VyYWRlIGluIEZyYW5rJ3MgS25laXBlIChEYXJrd2luZywgIDQuIEp1biAxOTk4LCAwMjo0NjoyOCk6CkR1IHNjaG1laXNzdCBlaW4gS2lzc2VuIG5hY2ggZWluZW0gVGlzY2guCkRhcmt3aW5nIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBlaW5lbSBUaXNjaC4KZWluIFRpc2NoIHZlcnN1Y2h0IHdlZ3p1cmVubmVuLCBkb2NoIGRhcyBLaXNzZW4gdHJpZmZ0IGRlbiBIaW50ZXJrb3BmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBpbnRlcm5ldCBzdWVjaHRpZz8gKFRlZGR5LCAgNC4gSnVuIDE5OTgsIDE1OjIyOjUwKToKfiMhIHJuPVJpbmdvciBydD04OTY4NjY4Njkgcmc9c2NobWFycm4KfiMhIHRpZD04OTY4NDA2MTYKSmVwcCwgaGFiIG1pY2ggYXVjaCBnZXd1bmRlcnQsIHdpZSBpY2ggdW0gMyBVaHIgbW9yZ2VucyBhdWZ3YWNoZW4gc29sbC4gMyBVaHIKbWl0dGFncyBmaW5kIGljaCBkYSBzY2hvbiB3YWhyc2NoZWlubGljaGVyLiA7KQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTW9yZ290aCwgIDQuIEp1biAxOTk4LCAxNToyODo0Nyk6CltBbGxnZW1laW46RmlzaF0gaWNoIHN0ZXJiZSAuLi4gOykKW1RvZDpMYXJzXSBFaW4gR2Vpc3QgaGF0IGdlcmFkZSBGaXNoIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFsIHdhcyBhbmRlcmVzIChIYWRyYSwgIDQuIEp1biAxOTk4LCAxNzoxMzoxNCk6Cn4jISBybj1aZXBoeXIgcnQ9ODk2OTYzMzY5IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9ODk2OTYzMzY5CmhtbSwgd29yaW4gbG9lc3QgZGVpbmUgc2Nod2VzdGVyIGRlbm4gZGllIHp1Y2tlcnN0dWVja2UgYXVmPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAhISEgKFphcGhvYiwgIDQuIEp1biAxOTk4LCAxODoxMzozNik6Cn4jISBybj1OYWlyb2xmIHJ0PTg5NjcyMDIyMiByZz1zY2htYXJybgp+IyEgdGlkPTg5NjcyMDIyMgpXYXMgaWNoIHNjaG9uIGltbWVyIG1hbCB3aXNzZW4gd29sbHRlOiB3YXMgaGVpc3N0IGVpZ2VudGxpY2ggRkxXPwoKWmFwKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGTFcgISEhIChZZW5kaSwgIDQuIEp1biAxOTk4LCAxOTo1OToxNyk6Cn4jISBybj1aYXBob2IgcnQ9ODk2OTc2ODE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk2NzIwMjIyCgpGYW1vdXMgTGFzdCBXb3Jkcywgb2RlciBCZXJ1ZWhtdGUgTGV0enRlIFdvcnRlLgoKKFdpZXNvIGVpZ2VudGxpY2ggbmljaHQgZ2xlaWNoIGF1ZiBEZXV0c2NoPyBEYXMgaGF0IGRvY2ggYXVjaCBzY2hvbiBlaW4gcGFhcgogSmFocmh1bmRlcnRlIFRyYWRpdGlvbi4uLikKCllUWQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEhpZXIgc3ByaWNodCBaYXJkb3ogOikgKEx1ZywgIDUuIEp1biAxOTk4LCAwMzo1MToyMSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9ODk2ODYyODIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk2NzgyOTk5CkhtLAoKaWNoIG11c3MgZXMgZG9jaCBub2NoIGxvc3dlcmRlbjogU2VsYnN0dmVyc3RhZW5kbGljaCBiZXNjaHJlaWJlbiBkaWVzZQpBdHRyaWJ1dGUgZWluZSBGcmF1IQoKS29wZnNjaHVldHRlbG5kIHVlYmVyIHNvdmllbCBOYWl2aXRhZXQKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTb2Z0d2FyZS1NYWdpZXJlaWdlbnR1bSAoQW5hdG9sLCAgNS4gSnVuIDE5OTgsIDA1OjU3OjMxKToKfiMhIG9uPUFuYXRvbCBvdD04OTcwMTkwNDUgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUx1ZyBydD04OTcwMTIzNTQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04OTY4NjYzOTMKSWNoIHdvbGx0ZSBpaHIgc2Nob25lbmQgYmVpYnJpbmdlbiwgd29oZXIgc2llIGRhcyAgIipwZmZmZmZmZmZmZmZmdCoiIGhhdCwKYWJlciBlcyBrbGFwcHRlIG5pY2h0LiBHZW5hdXNvd2VuaWcgd2llIGRhcyAiKnBvZWgqIiB2b24gZGl2ZXJzZW4gYW5kZXJlbgpQZXJzb25lbi4gCgpGaWRLRyEgKGMpIEx1ZyEKQW5hdG9sIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFNvZnR3YXJlLU1hZ2llcmVpZ2VudHVtIChDYXR3ZWF6bGUsICA1LiBKdW4gMTk5OCwgMTA6Mjc6MzIpOgp+IyEgcm49QW5hdG9sIHJ0PTg5NzAxOTA1MSByZz1zY2htYXJybgp+IyEgdGlkPTg5Njg2NjM5MwpQb2VoIQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbnRpLUdyYXZpdGF0aW9uPyAoTW9yZ290aCwgIDUuIEp1biAxOTk4LCAxNDoxNDoyNCk6ClJpbmdvciBoYXV0IHNpY2ggc2VpbmVuIFNjaGlsZCB2b3JzIEtpbm4gdW5kIGZhZWxsdCBuYWNoIG9iZW4uCgpOYWNoIG9iZW4gZmFsbGVuLi4uLkhNTU1NPz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbnRpLUdyYXZpdGF0aW9uPyAoWWVuZGksICA1LiBKdW4gMTk5OCwgMTQ6MTk6NDgpOgp+IyEgcm49TW9yZ290aCBydD04OTcwNDg4NjQgcmc9c2NobWFycm4KfiMhIHRpZD04OTcwNDg4NjQKS2VpbiBQcm9ibGVtLCBtYW4gYnJhdWNodCBudXIgZ2VudWcgU2Nod3VuZy4KQmlzdCBEdSBiZWltIHZvbi1kZXItU2NoYXVrZWwtcnV0c2NoZW4gbm9jaCBuaWUgbmFjaCBvYmVuIGdlZmFsbGVuPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQW50aS1HcmF2aXRhdGlvbj8gKEFsYm9pbiwgIDUuIEp1biAxOTk4LCAxNDoyNzo0NSk6Cn4jISBybj1ZZW5kaSBydD04OTcwNDkxODggcmc9c2NobWFycm4KfiMhIHRpZD04OTcwNDg4NjQKbmFjaCBEb3VnbGFzIEFkYW1zIGlzc2VzIG5vY2ggZWluZmFjaGVyOgoKbWFuIHdpcmZ0IHNpY2ggYXVmIGRpZSBFcmRlLCBhYmVyIGRhbmViZW4hCgpBbGJvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFudGktR3Jhdml0YXRpb24/IChLb2JheWFzaGksICA1LiBKdW4gMTk5OCwgMTk6MzM6MDcpOgp+IyEgcm49QWxib2luIHJ0PTg5NzA0OTY2NSByZz1zY2htYXJybgp+IyEgdGlkPTg5NzA0ODg2NApEYXMgaXN0IGFiZXIgbmljaHQgc28gZWluZmFjaC4gTWFuIG11c3MgaW0gcmljaHRpZ2VuIE1vbWVudCBhYmdlbGVua3Qgd2VyZGVuLAp6LkIuIGR1cmNoIGVpbmUgcGxvZXR6bGljaCBzZWl0IDIgbWlsbGlvbmVuIGphaHJlIHZlcm1pc3N0ZSBhdWZ0YXVjaGVuZGUKc3BvcnR0YXNjaGUsIGRhbWl0IG1hbiBhbSBib2RlbiB2b3JiZWlmYWVsbHQgdW5kIGxvc2ZsaWVnZW4ga2Fubi4KCktvYmF5YXNoaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTHVnIGxhbmd3ZWlsdCBzaWNoLiAoU2hhbm5hcmEsICA1LiBKdW4gMTk5OCwgMjM6MjA6MDgpOgpMdWcsIGhpZXIgaXN0IGRlaW4gQXJ0aWtlbC4gRGVua2UgZGlyIHdhcyBhdXMuLi4KClNoYW5uYXJhCgooLS0+IG11ZWxsKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEx1ZyBsYW5nd2VpbHQgc2ljaC4gKEx1ZywgIDUuIEp1biAxOTk4LCAyMzoyMTowOCk6Cn4jISBybj1TaGFubmFyYSBydD04OTcwODE2MDggcmc9c2NobWFycm4KfiMhIHRpZD04OTcwODE2MDgKSG0sCgpzY2hvbiBlaW4gZXJzdGVyIEZvcnRzY2hyaXR0LCBkZW4gaWNoIHNlaHIgenUgd3VlcmRpZ2VuIHdlaXNzLiBMb3MgV0VJVEVSIQoqcGVpdHNjaCoKSXN0IGRhcyBvZWRlIG51ciBydW16dWlkbGVuIHVuZCBhdWYgTVAgQW5zdGllZyB6dSB3YXJ0ZW4uCgpGaWRLRwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthZW1wZmVyLi4uIDopIChTdGluZywgIDcuIEp1biAxOTk4LCAwMzozMTowMyk6CkViZW4gaW4gZGVyIFNTUDoKUmluZ29yIHRyaWZmdCBkZW4gS2lsbGVycG9wZWwgaGFydC4KRGVyIEtpbGxlcnBvcGVsIHZlcmZlaGx0IFJpbmdvci4KUmluZ29yIGFlbmRlcnQgc2VpbmUgS2FtcGZ0ZWNobmlrLgpSaW5nb3IgemVyc2NobWV0dGVydCBkZW4gS2lsbGVycG9wZWwgaW4ga2xlaW5lIFN0dWVja2NoZW4uCgpUc3RzLi4uIHR5cGlzY2ggS2FlbXBmZXIgOikKClN0aW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCYW5kID8gKENhdHdlYXpsZSwgIDguIEp1biAxOTk4LCAxNDowNToxNik6Cn4jISBvbj1Bcmsgb3Q9ODk3MzA3NDM5IG9nPXBhcnR5Cn4jISBybj1TaWx2YW5hIHJ0PTg5NzMwNjMyOCByZz1wYXJ0eQp+IyEgdGlkPTg5NzE2OTk2OQpLZXksIElociBBdWZ0cml0dCBiaXR0ZSA6LSkKCk9rIC0+IFNjaG1hcnJuIC4uLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthbmluY2hlbiB0cmFldW10IHZvbiBPc3Rlcm4gKE1vcmdvdGgsICA4LiBKdW4gMTk5OCwgMTU6MzM6NDcpOgpLbnVydCB0ZWlsdCBEaXIgbWl0OiBpY2ggaGFiZSBrZWluZSBhbmdzdCB2b3IgZGlyLiBkZXIgdG9kIGdlaG9lcnQgenVtIGxlYmVuLgpLbnVydCB0ZWlsdCBEaXIgbWl0OiBpY2ggYmluIGdyb3NzIHVuZCBzdGFyayB1bmQgaGFiIGRlbiBsYWVuZ3N0ZW4uCktudXJ0IHRlaWx0IERpciBtaXQ6IGJsYWhibGFoYmxhaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQXVzZ2xlaWNoIChHcmltbWJvcm4sICA4LiBKdW4gMTk5OCwgMjI6NDk6MzQpOgp+IyEgb249QXp6dXJvIG90PTg5Njk3MTM5MSBvZz13aXR6ZQp+IyEgcm49SmFzb25yaWdpZCBydD04OTY4ODM3NDEgcmc9d2l0emUKfiMhIHRpZD04OTY4ODI0NjgKRW50d2VkZXIgRnJhdWVud2l0emUgcmVpc3NlbiB1bmQgZGF6dSBzdGVoZW4sIG9kZXIgZXMgbGFzc2VuLgpBYmVyIHVudGVyIGplZGVtIFdpdHogZXJrbHJlbiB3aWUgc2VociBtYW4gRnJhdWVuIGRvY2ggbWFnLi4uLgpJY2ggd2Vpc3MgbmljaHQhIT8/ISEKCkdpbmcgbWlyIG51ciBzbyBkdXJjaCBkZW4gS29wZgoKQXp6dXJvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBdXNnbGVpY2ggKEdyaW1tYm9ybiwgIDguIEp1biAxOTk4LCAyMjo0OTozNik6Cn4jISBvbj1KYXNvbnJpZ2lkIG90PTg5NzIxOTg5NCBvZz13aXR6ZQp+IyEgcm49QXp6dXJvIHJ0PTg5Njk3MTM5MSByZz13aXR6ZQp+IyEgdGlkPTg5Njg4MjQ2OAoKSGFsbG8gKndpbmsqIEF6enVybyAhISEKCkFlaCwgZmFsbHMgZXMgRGlyIGVudGdhbmdlbiBzZWluIHNvbGx0ZSwgZGFzIGhpZXIgaXN0IGRpZSBSdWJyaWsgJ1dpdHplJwoKR2luZyBtaXIgbnVyIHNvIGR1cmNoIGRlbiBLb3BmCgpKYXNvbiBSaWdpZCwgd2lkZXIgZGVuIHRpZXJpc2NoZW4gRXJuc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIYW5keSAoR3JpbW1ib3JuLCAgOC4gSnVuIDE5OTgsIDIyOjQ5OjU0KToKfiMhIG9uPVRlZGR5IG90PTg5NzI1NjQ0NSBvZz13aXR6ZQp+IyEgcm49SmFzb25yaWdpZCBydD04OTcyMzEwNjcgcmc9d2l0emUKfiMhIHRpZD04OTcyMzEwNjcKSXJnZW5kd2llIGthbSBkZXIgc2Nob24gYXVmIGRlciBTb21tZXJwYXJ0eSBpbiBNdWVuc3RlciwgZnVlciBhbGxlIGRpZSBzaWNoCnZlcnp3ZWlmZWx0IGZyYWdlbiB3b2hlciBzaWUgaWhuIGtlbm5lbiA7KQoKVGVkZHksIGxlaWNodCBnZWhhZXNzaWcgLCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGFuZHkgKEdyaW1tYm9ybiwgIDguIEp1biAxOTk4LCAyMjo1MDoxNik6Cn4jISBvbj1KYXNvbnJpZ2lkIG90PTg5NzMwMTE2MiBvZz13aXR6ZQp+IyEgcm49VGVkZHkgcnQ9ODk3MjU2NDQ1IHJnPXdpdHplCn4jISB0aWQ9ODk3MjMxMDY3CkphLCBUZWRkeSwgbWFnIHNlaW4sIGFiZXIgRHUgc29sbHRlc3Qgd2lzc2VuLCBkYXNzIGljaCBkYSBnYXIgbmljaHQgd2FyCipncmlucyoKCkphc29uLCBoYXQgaWhuIGVyc3QgYW0gU29ubmFiZW5kIGF1ZiBlaW5lciBQYWNodHkgZ2Vob2VydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSGFuZHkgKFRlZGR5LCAgOS4gSnVuIDE5OTgsIDAyOjI2OjI5KToKfiMhIHJuPUdyaW1tYm9ybiBydD04OTczMzkwMTYgcmc9c2NobWFycm4KfiMhIHRpZD04OTcyMzEwNjcKTWFuIGJpc3QgZHUganVuZyAob2RlciBpY2ggYWx0PykgOy0pCgpTQ05SLCBUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW50ZWxsZWt0dWVsbCAoVGVkZHksICA5LiBKdW4gMTk5OCwgMDI6MzQ6MDIpOgpMdWcgaGF0dGUgc2VpbmUgaW50ZWxsZWt0dWVsbGUgUGhhc2UKCltBbGxnZW1laW46THVnXSBBY2hzbywgZGFjaHRlIGRhcyB3YWVyIG5lbiBQbHVyYWxpcyBtYWplc3RhdGlzIDspIDwwMjozMDo0Mz4gIAoKClRlZGR5LCB2b2VsbGlnIHNjaG9ja2llcnQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJbnRlbGxla3R1ZWxsIChMdWcsICA5LiBKdW4gMTk5OCwgMDI6Mzk6MzgpOgp+IyEgcm49VGVkZHkgcnQ9ODk3MzUyNDQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk3MzUyNDQyCgpOYWphLAoKCnd1cmRlIGluIGRlbSBNb21lbnQgZ2VyYWRlIG1pdCBlaW5lbSBSaWVzZW5rbnVlcHBlbCBrbyBnZXNjaGxhZ2VuLi4uCgoKRmlkS0cKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEludGVsbGVrdHVlbGwgKFRlZGR5LCAgOS4gSnVuIDE5OTgsIDAyOjQwOjEwKToKfiMhIHJuPUx1ZyBydD04OTczNTI3Nzggcmc9c2NobWFycm4KfiMhIHRpZD04OTczNTI0NDIKQmlsbGlnZSBBdXNyZWRlLCBzdGVoIHdlbmlnc3RlbnMgenUgZGVpbmVtIEF1c3J1dHNjaGVyCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV0dGUgTlBDIChOb3Zhc3Rvcm0sICA5LiBKdW4gMTk5OCwgMDk6MDM6MDUpOgoKRGVyIFdhZWNodGVyIHd1ZW5zY2h0IERpciB2aWVsIEdsdWVjayBhdWYgRGVpbmVtIHdlaXRlcmVuIFdlZy4KRGVyIFdhZWNodGVyIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KClRzcy4uLgpIYXR0ZXIgbm9jaCBlaW4gR2VzY2hlbmsgZnVlciBtaWNoID8KCk5vdmEgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFJpbmdvciwgIDkuIEp1biAxOTk4LCAwOTo1MjoyNik6CltTZWhlcjpLZXldIEFSR0whISEgV2llc28gdmVyZ2Vzc2UgaWNoIGltbWVyIGRhcyBkaWUgdGFudGUgZGEgaXN0Pz8/CltUb2Q6TGFyc10gRWluIEh5ZHJha29wZiBoYXQgZ2VyYWRlIEtleSB1bWdlYnJhY2h0LgpbVG9kOlRvZF0gREFTIFdBUiBTQ0hPTiBEQVMgNDE3VEUgTUFMIQpbVG9kOkVpbiBIeWRyYWtvcGZdIGhzc3Nzc3MKCjxrZWluIEtvbW1lbnRhcj4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhvbHpheHQgKEphc29ucmlnaWQsICA5LiBKdW4gMTk5OCwgMTQ6MDQ6MzgpOgpEdSBncmVpZnN0IGRpZSBEcmFjaGVuc2NoaWxka3JvZXRlIG1pdCBlaW5lciBIb2x6YXh0IGFuLgpEaWUgRHJhY2hlbnNjaGlsZGtyb2V0ZSB2ZXJmZWhsdCBEaWNoLgo+IER1IHNjaGltcGZzdDogTWl0IGRpZXNlciBXYWZmZSBoaWVyIG1hY2ggaWNoIERpY2ggbG9ja2VyIGZlcnRpZyEKRWluZSBEcmFjaGVuc2NoaWxka3JvZXRlIGVyd2lkZXJ0OiBIZWgsIGRpZSBrZW5uIGljaCwgZGllIGlzdCBpbGxlZ2FsIQpFaW5lIERyYWNoZW5zY2hpbGRrcm9ldGUgZXJ3aWRlcnQ6IFBhcmFjZWxzdXMsIGhpZXIgYmVudXR6dCBlaW5lciBpbGxlZ2FsZQpFaW5lIERyYWNoZW5zY2hpbGRrcm9ldGUgZXJ3aWRlcnQ6IFdhZmZlbiEKRGllIERyYWNoZW5zY2hpbGRrcm9ldGUgc3R1ZXJ6dCBzaWNoIHZvbGwgV3V0IGF1ZiBEaWNoIQoKSXN0IGRpZSBIb2x6YXh0IGF1Zmdld2VydGV0IHdvcmRlbiA/Pz8gKmdyaW5zKgoKSmFzb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtLi4uIChMdWcsICA5LiBKdW4gMTk5OCwgMjM6NDk6MDIpOgoKRWluIExvZWZmZWxyZWloZXIuCkR1IHRlaWxzdCBLYWRhYnJhIG1pdDogWnVtIFJlaWhlcgpFaW4gVGF1c2VuZGZ1ZXNzbGVyIGtvbW10IGFuLgpLYWRhYnJhIGtvbW10IGFuLgoKQWxzbywgaWNoIGhhdHRlIHNpZSBtaXIgaW1tZXIgendlaWJlaW5pZyB2b3JnZXN0ZWxsbHQgOykKCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGFldXNsaWNoZSBHZXdhbHQ/IChZZW5kaSwgMTAuIEp1biAxOTk4LCAxOTozMzo0Nyk6ClNvbGx0ZSBkYSBuaWNodCBkZXIgU2hlcmlmZiBlaW5ncmVpZmVuLCBiZWkgZWluZW0gZGVyYXJ0IGZyYXBwaWVyZW5kZW4gKCEpCkJlaXNwaWVsIGZ1ZXIgR2V3YWx0IGluIGRlciBFaGU/IAoKCj4gZmluZ2VyIHJvY2h1cwooLi4uKQpSYXNzZTogQ29sYWtpbGxlciwgIEdpbGRlOiAoLi4uKQooLi4uKQpWZXJoZWlyYXRldCBtaXQ6IENvY2Fjb2xhCiguLi4pCgpIaWdobGFuZGVyLCB1ZWJlcm5laG1lbiBzaWUhCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdhZXN0ZSBnaWJ0cy4uLiAoU2FwaGlyYSwgMTAuIEp1biAxOTk4LCAyMzo1NToxOSk6CgpHYXN0MiBiZXRyaXR0IGRpZXNlIFdlbHQuCltNb2VyZGVyOkdlaXN0IGVpbmVzIGJsYXVlbiBEcmFjaGVuXSBOYWVjaHN0ZXMgTWFsIGJyaW5nIG1pciBsaWViZXIgUG9zdCBzdGF0dApbTW9lcmRlcjpHZWlzdCBlaW5lcyBibGF1ZW4gRHJhY2hlbl0gbWljaCB6dSBlcm1vcmRlbiwgU2hhcmlhIQpHYXN0MiB2ZXJzY2h3aW5kZXQgbWl0IEtuYWxsIHVuZCBTY2h3ZWZlbGR1ZnQuCgpTb3dhcy4uLgpTYXBoaXJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcm1lciBHYXN0MiAoTW9yZ290aCwgMTAuIEp1biAxOTk4LCAyMzo1ODozOSk6CltUb2Q6TGFyc10gRGVyIEF1ZnByYWxsIGFuIGVpbmVyIEVpc3dhbmQgaGF0IGdlcmFkZSBHYXN0MiB1bWdlYnJhY2h0LgpbVG9kOkxhcnNdIDwyMzo1Mzo1Nz4KW1RvZDpMYXJzXSBFaW4gc3BpdHplciBFaXN6YXBmZW4gaW4gZGVyIEJydXN0IGhhdCBnZXJhZGUgR2FzdDIgdW1nZWJyYWNodC4KW1RvZDpMYXJzXSA8MjM6NTQ6NTc+CltUb2Q6TGFyc10gRWluZSBoYXJ0ZSBFaXN3YW5kIGhhdCBnZXJhZGUgR2FzdDIgdW1nZWJyYWNodC4gPDIzOjU1OjU2PgpbVG9kOkxhcnNdIEVpbmUgc2NoYXJmZSBLYW50ZSBoYXQgZ2VyYWRlIEdhc3QyIHVtZ2VicmFjaHQuIDwyMzo1NjoyOD4KRmV1ZXJ3ZWhyIHRlaWx0IERpciBtaXQ6IER1IHRlc3Rlc3QgVG9kZXNzZXF1ZW56ZW4/IDopCkR1IHRlaWxzdCBGZXVlcndlaHIgbWl0OiBuZWluLCB0b2Rlc0ZBTExFTgoKT2huZSAod2VpdGVyZSkgV29ydGUuLi4uLk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWbGFuZCAtIERhenUgbXVzcyBtYW4gbml4IHNhZ2VuIDopIChTdGluZywgMTEuIEp1biAxOTk4LCAxOTowNjozMik6CkViZW4gaW4gVmxhbmQ6CnVudCBvcmsKCkRpZXNlciBPcmsgZ2Vob2VydCB6dXIgU3RhZHR3YWNoZS4gRXIgcGF0cm91bGxpZXJ0IGR1cmNoIGRpZSBnYW56ZSBTdGFkdCB1bmQKYWNodGV0IGRhcmF1ZiwgZGFzcyBuaWVtYW5kIGVpbmUgU3RyYWZ0YXQgYmVnZWh0LiBEdSBkZW5rc3QgYW4gZGllIFdhY2hlbiBpbgpNb3Vsb2tpbiwgZGllIERpciB2aWVsIHN0YWVya2VyIGluIHNjaG1lcnpsaWNoZXIgRXJpbm5lcnVuZyBzaW5kLiBBYmVyIGhpZXIKc2NoZWludCBoYWx0IGRpZXNlIEF1c3J1ZXN0dW5nIHp1IHJlaWNoZW4sIGRpZSBkZXIgT3JrIG1pdCBzaWNoIHRyYWVndCB1bmQKYXVjaCBzaWNoZXIgZ3V0IGVpbnp1c2V0emVuIHdlaXNzLiBBdWZncnVuZCBzZWluZXIgQXVzYmlsZHVuZyB3ZWlzcyBlcgpuYXR1ZXJsaWNoIGF1Y2gsIHdpZSBtYW4gYmVzc2VyZSBSdWVzdHVuZyB1bmQgV2FmZmVuIGJlbnV0enQuIEdpYiBpaG0gZWluCmd1dGVzIFNjaHdlcnQgdW5kIGVyIHdpcmQgZXMgbWl0IEZyZXVkZSB6dWVja2VuLgpFciBpc3QgbGVpY2h0IGFuZ2VzY2hsYWdlbi4gKDcwJSkKTW9yZ290aCBpc3QgYW0gZ2FuemVuIEtvZXJwZXIgYmVoYWFydC4KTW9yZ290aCBpc3Qgdm9uIGVpbmVtIG1hZ2lzY2hlbiBTY2hpbW1lciB1bWdlYmVuLgpFciB0cmFlZ3QgYmVpIHNpY2g6CjE5MCBNdWVuemVuLiAgICAgICAgICAgICAgICAgICAgICAgICAgIEVpbmUgQmllcnNjaHVlcnplIChhbmdlem9nZW4pLgpFaW4gU2NobGFncmluZyAoYW5nZXpvZ2VuKS4gICAgICAgICAgICBFaW4gT3JraGVsbSAoYW5nZXpvZ2VuKS4KRWluIFNjaGxhZ3JpbmcuICAgICAgICAgICAgICAgICAgICAgICAgRWluIFBhYXIgT3Jrc3RpZWZlbCAoYW5nZXpvZ2VuKS4KMTEgV3VyZnN0ZXJuZS4gICAgICAgICAgICAgICAgICAgICAgICAgRWluIE9ya3NjaHdlcnQuCgoKU29zbywgTW9yZ290aCBpc3QgYWxzbyBhbSBnYW56ZW4gS29lcnBlciBiZWhhYXJ0IDopKQoKU3RpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWbGFuZCAtIERhenUgbXVzcyBtYW4gbml4IHNhZ2VuIDopIChCaWVsZWZlbGQsIDExLiBKdW4gMTk5OCwgMTk6NTg6MjgpOgp+IyEgcm49U3RpbmcgcnQ9ODk3NTg0NzkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk3NTg0NzkyCkhtLi4uZnVlciBlaW4gcGFhciBkcmVja2lnZSBPcmtzIGJhdSBpY2ggYW4gZGVyIFN0ZWxsZSBkYXMgU3BlbGxib29rCk5JQ0hUIHVtLi4uIDspCgpKZW1hbmQgYXVzIEJpZWxlZmVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWRlbG5kZSBHYWVzdGUgKEJpZWxlZmVsZCwgMTEuIEp1biAxOTk4LCAyMDowMzo1MCk6CldhcyBzb2xsIGljaCBkYXZvbiBoYWx0ZW46CgpHYXN0MSBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogLi4uClBhc3NpdiBzZWl0OiAwNzo1NToxMQpFaW5nZWxvZ2d0IHNlaXQ6IERvbiwgMTEuIEp1biAxOTk4LCAxMjowNzowMQpWb2xsZXIgTmFtZTogR2FzdDEgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlcgpSYXNzZTogPGtlaW5lPiwgIEdpbGRlOiBBYmVudGV1cmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAwNzozNzo0MCwgICBTcGllbGVybGV2ZWw6IDEKCkRlciB3YXIgc2Nob24gaWRsZSwgYmV2b3IgZXIgdWViZXJoYXVwdCBlaW5nZWxvZ2d0IHdhci4uLgoKSmVtYW5kIGF1cyBCaWVsZWZlbGQgKHJhdGxvcykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIbS4uLiAoS2FkYWJyYSwgMTEuIEp1biAxOTk4LCAyMjo0Nzo0OSk6Cn4jISBybj1MdWcgcnQ9ODk3NDI4OTQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk3NDI4OTQyCnNvc28gOykKa2FkYWJyYSBzZXR6dCBsdWcgZWluZW4gZnVzcyBpbiBkZW4gbmFja2VuLi4uLgprYWRhYnJhIHNldHp0IGx1ZyBkZW4gendlaXRlbiBmdXNzIGluIGRlbiBuYWNrZW4Ka2FkYWJyYSBzZXR6dCBsdWcgZGVuIGRyaXR0ZW4gZnVzcyBpbiBkZW4gbmFja2VuLi4uCmV0Y2V0ZXJhIGV0Y2V0ZXJhIGV0Y2V0ZXJhCiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBWbGFuZCAtIERhenUgbXVzcyBtYW4gbml4IHNhZ2VuIDopIChNb3Jnb3RoLCAxMS4gSnVuIDE5OTgsIDIyOjUwOjA0KToKfiMhIHJuPUJpZWxlZmVsZCBydD04OTc1ODc5MDggcmc9c2NobWFycm4KfiMhIHRpZD04OTc1ODQ3OTIKc2FnIGJsb3NzIGR1IGhhc3QgZGllIGJpZXJzY2h1ZXR0bGVyZ2lsZGUgc2Nob24/CmhleSwgaWNoIGdsYXViIGljaCB6aWVoIHVtLgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGpva2UrcXVpeiAoR3JpbW1ib3JuLCAxMi4gSnVuIDE5OTgsIDA0OjMzOjUzKToKfiMhIG9uPVRlZGR5IG90PTg5NzUwMzQyOCBvZz13aXR6ZQp+IyEgcm49WmFybml5YSBydD04OTc0Njc1NjMgcmc9d2l0emUKfiMhIHRpZD04OTc0Njc1NjMKVGVkZHkgc3VjaHQgdmVyendlaWZlbHQgZGVuIFdpdHouCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBWbGFuZCAtIERhenUgbXVzcyBtYW4gbml4IHNhZ2VuIDopIChCaWVsZWZlbGQsIDEyLiBKdW4gMTk5OCwgMDg6MTk6NDUpOgp+IyEgcm49TW9yZ290aCBydD04OTc1OTgyMDQgcmc9c2NobWFycm4KfiMhIHRpZD04OTc1ODQ3OTIKV29oaW4/CgpKZW1hbmQgYXVzIEJpZWxlZmVsZCAoYW11ZXNpZXJ0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogc3NoIChHcmltbWJvcm4sIDEyLiBKdW4gMTk5OCwgMTA6MjY6MTUpOgp+IyEgb249WWVuZGkgb3Q9ODk2ODY5NTY3IG9nPWVudHdpY2tsdW5nCn4jISBybj1Cb3R0b20gcnQ9ODk2NzkxNjYzIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9ODk2MDQzMTMyCkVya2xhZXIgbWFsLiBXZXIgd2llc28gc2VpdCB3YW5uPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hbmNoZSBMZXV0ZSBzaW5kIGVrbGljaC4uLiAoVHVuaXhndXQsIDEyLiBKdW4gMTk5OCwgMTI6NTY6NTgpOgpbQmVpbGVpZDpUaGVyaW4gbGFlY2hlbHRdCltCZWlsZWlkOlR1Tml4R3V0IHNpZWh0IFRoZXJpbnMgdmVyZ2lsYnRlIGRyaXR0ZSBaQWFlaG5lLi4uXQpbQWxsZ2VtZWluOlRvbWF0b3JdIE1haGx6ZWl0IGFsbGVyc2VpdHMgISA6KQpCQUghCidzIEthcmF0ZS1ad2VyY2hsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIC4uIGRhcyBpcyBhYmVyIG5pY2ggdm9uIE0qIDotKSAoTmFpcm9sZiwgMTMuIEp1biAxOTk4LCAyMjoxNDowOSk6CkRpZXNlIEBAYWxsZXNmcmVzc2VuZGVAQCBQZmxhbnplIGhhdCBlaW5lbiB1bmVyc2FldHRsaWNoZW4gSHVuZ2VyLCB2b3IKYWxsZW0gYXVmIERpY2ghIElocmUgWmFlaG5lIHNpbmQgbGFuZyB1bmQgc3BpdHosIGlociBNYXVsIGdyb3NzIGdlbnVnCnVtIERpY2ggenUgdmVyc2NobGluZ2VuICh2b3IgYWxsZW0sIGRhIHNpZSBlaWdlbnRsaWNoIG51ciBhdXMgTWF1bApiZXN0ZWh0KS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkltbWVyIGRpZXNlIFphdWJlcmVyIC4uLiA7KSAoRnJvZ2h1bnRlciwgMTQuIEp1biAxOTk4LCAxNjozMjoyNik6CkVpbiBTYW5kdGlnZXIuCkVpbiBtYWdpc2NoZXMgUG9ydGFsLgpEdSBrbnVkZGVsc3QgS2lsYXIuCj4gS2lsYXIga251ZGRlbHQgRGljaC4KRHUgZ3JpbnN0LgpEdSBkZW5rc3QgICAuIG8gTyAoWmF1YmVyZXIgYWJ3ZXJ0ZW4gOykpCj4gS2lsYXIgc2NoYXV0IHBsb2V0emxpY2ggdm9lbGxpZyBlbnRzcGFubnQuIFNjaGVpbmJhciBiZXJlaXRldCBzaWUgc2ljaCBhdWYKZXR3YXMgc2VociBXaWNodGlnZXMgdm9yLgpLaWxhciBzdGFycnQgRGljaCBhbiB1bmQgc2FndDogU2NoYWVtZSEKRHUgZ2Voc3QgaW4gZGllIEVja2UgdW5kIHNjaGFlbXN0IERpY2ggLSB3b2Z1ZXIgbnVyPwpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCj4gRHUgZ2Voc3QgaW4gZGllIEVja2UgdW5kIHNjaGFlbXN0IERpY2ggLSB3b2Z1ZXIgbnVyPwpLaWxhciBxdWFrdCBEaXIgZXR3YXMgaW5zIE9oci4KS3JycmNrcyBrb21tdCBhbi4KS2lsYXIgcXVha3QgRGlyIGV0d2FzIGlucyBPaHIuCkR1IGZ1ZWhsdCBEaWNoIHBsb2V0emxpY2ggc2VsdHNhbSBhbmRlcnMuIFVuZDogd2llc28gaGFzdCBEdSBwbG9ldHpsaWNoIEh1bmdlcgphdWYgRmxpZWdlbj8KRHUgZ2Voc3QgaW4gZGllIEVja2UgdW5kIHNjaGFlbXN0IERpY2ggLSB3b2Z1ZXIgbnVyPwpLaWxhciBkZW5rdCAgIC4gbyBPIChTby4uLiA6KSkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1cHBwcyA6KSAoVGhlcmluLCAxNC4gSnVuIDE5OTgsIDE5OjU4OjMxKToKW0ZFOlN0aW5nXSBUVUFSRUcKW0ZFOlN0aW5nXSBUVUFSRUcKW0ZFOlNjaG9rb10gYWNoc28gOykKW0ZFOlN0aW5nXSBUVUFSRUcKW0ZFOlR1YXJlZyBpc3QgZWluIGRlcHBdCltUb2Q6TGFyc10gRWluIE1hZ21hZ2lnYW50IGhhdCBnZXJhZGUgVHVhcmVnIHVtZ2VicmFjaHQuCltGRTpLZXldIFJlc2V0dCEhISEKW0JlaWxlaWQ6UGVydGluYXhlXSBIZXJ6bGljaGVzIEJlaWxlaWQgIQpbQmVpbGVpZDpSaW5nb3JdIDE/CltCZWlsZWlkOlBhdHJ5bl0gd3VzY2gKW1RvZDpMYXJzXSBFaW4gTWFnbWFnaWdhbnQgaGF0IGdlcmFkZSBGYXN0IHVtZ2VicmFjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2VpbiBvZGVyIG5pY2h0IHNlaW4uLi4gKE5hY2h0d2luZCwgMTUuIEp1biAxOTk4LCAwMTo0NzoyNyk6CltUb2Q6TGFyc10gRWluIGdlbGFuZ3dlaWx0ZXIgT3JrIGhhdCBnZXJhZGUgS251cnQgdW1nZWJyYWNodC4KW1RvZDpFaW4gZ2VsYW5nd2VpbHRlciBPcmtdIEljaCBrYW5uIG5peCBkYWZ1ZXIgLi4uIEtudXJ0IGlzdCBtaXIgZWluZmFjaCBpbnMKW1RvZDpFaW4gZ2VsYW5nd2VpbHRlciBPcmtdIFNjaHdlcnQgZ2VsYXVmZW4uCltUb2Q6TGFyc10gRWluIFdhc3NlcnRyb2xsIGhhdCBnZXJhZGUgU2hhbm5hcmEgdW1nZWJyYWNodC4KW0JlaWxlaWQ6VGFyaW5hXSBvaCBvaC4KW0JlaWxlaWQ6S2hpZGFyXSBhcmdsCltCZWlsZWlkOk5hY2h0d2luZF0gTEVVVEUhCltCZWlsZWlkOkJyYW5kaXJdIGFyZ2wKW0JlaWxlaWQ6U3Rvcm13aW5kXSBCZWlsZWlkICEgRG9wcGVsdCAhCltCZWlsZWlkOkRhcmt3aW5nXSB3byByZW5uc3RlIGRlbm4gaGluID8KW0JlaWxlaWQ6VGFyaW5hXSBuZSBzZXJpZT8KW0JlaWxlaWQ6VGVkZHldIEtudXJ0aSwgd2FzIG1hY2hzdCBkdSA6LSgKW0JlaWxlaWQ6TmFjaHR3aW5kXSAzZmFjaApbQmVpbGVpZDpLbnVydF0gd2FzIHdhciBkYXM/CltCZWlsZWlkOkNocmlzdG9waGVyXSBCZWlsZWlkIGlociBiZWlkZW4gLigKW0JlaWxlaWQ6S251cnRdIGljaCBiaW4gbmljaHQgdG90CltCZWlsZWlkOkZyb2dodW50ZXJdIEJlaWxlaWQgOigoCltCZWlsZWlkOkJyYW5kaXIgZ3JpbnN0IEtudXJ0IGFuLl0KW0JlaWxlaWQ6TmFjaHR3aW5kXSBhZWg/OikKW0JlaWxlaWQ6U3Rvcm13aW5kXSBOb2NobWFsIEJlaWxlaWQgIQpbQmVpbGVpZDpTY2hva29dIEFlaGggS251cnQ/PyA7KQpbQmVpbGVpZDpOYWNodHdpbmRdIHN0aXJiIHNjaG9uLCBrbnVydCA6KQpbQmVpbGVpZDpLbnVydF0gaG1tbQpbQmVpbGVpZDpCcmFuZGlyXSBkYXMgZ2xhdWJzdCBEdSwgS251cnQgOikKCj4gZmluZ2VyIGtudXJ0CktudXJ0IGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBDYXN0cm9wLVJhdXhlbC4KRWluZ2Vsb2dndCBzZWl0OiBEaWUsICAyLiBKdW4gMTk5OCwgMDI6NDA6NTUKVm9sbGVyIE5hbWU6IEVpbiBLYW5pbmNoZW4gbmFtZW5zIEtudXJ0IApIb3BwbGEsIGVpbiBHZWlzdCEKUmFzc2U6IEhvYmJpdCwgIEdpbGRlOiBaYXViZXJlciwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogNDRkIDIzOjU1OjIyLCAgIFNwaWVsZXJsZXZlbDogNTUgKFNlaGVyKSwgICBHaWxkZW5sZXZlbDogOQpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBTb24sIDEzLiBBcHIgMTk5NywgMjM6MTM6MjEKQmlzaGVyIGJlcmVpdHMgNjMgbWFsIGdlc3RvcmJlbgpQcm9qZWt0OiBNZWluIEhhZXVzY2hlbiBzY2hvZW4gZWlucmljaHRlbgoKW0JlaWxlaWQ6U2Nob2tvXSBHYWJzIFJaRyBvZGVyIHdhcz8KW0JlaWxlaWQ6S251cnRdIGljaCBiaW4gZWluIHNlaWwgaG9jaGdla2xldHRlcnQgdW5kIGRhbm4ga2FtIGRhcwoKW0JlaWxlaWQ6TmFjaHR3aW5kXSBkb2NoIGR1IGJpc3QgdG90IDopCltCZWlsZWlkOktudXJ0XSBrZWluIHJ6ZwpbQmVpbGVpZDpTY2hva29dIEdlaXN0IGJpc3RlIGplZGVuZmFsbHMgOykKW0JlaWxlaWQ6VGVkZHldIERlaW5lIExlaWNoZSBsaWVndCBoaWVyIDspCltCZWlsZWlkOk5hY2h0d2luZF0gY29vbCA6KSAKW0JlaWxlaWQ6S2hpZGFyXSBhY2hzbywgZGFzIHppZWh0IGJpcyAxNSBscApbQmVpbGVpZDpOYWNodHdpbmRdIGljaCBwb3N0ZSA6KQpbQmVpbGVpZDpUZWRkeV0gTWl0IGRlaW5lbiBTYWNoZW4gOykKW0JlaWxlaWQ6S2hpZGFyXSBhbHNvOiBhdWZwYXNzZW4sIGxldXRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ0hBT1MgUlVMRVohIChUZWRkeSwgMTUuIEp1biAxOTk4LCAwNTowMDoyNCk6Cmt3ZXIgYWxsZSBhdXNzZXIgaWRsZToKCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNb24sIDE1LiBKdW4gMTk5OCwgMDQ6NTk6MzIgKDUgVGVpbG5laG1lcikKIApWYW1waXJlLi4uLi4uLi4uLnMgWmluby4uLi4uLi4uLi4uLi56ICpUZWRkeS4uLi4uLi4uLi4uUyBCaWVyY2hlbi4uLi4uLi4uLk0KKlRpbGx5Li4uLi4uLi4uLi5NCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IENIQU9TIFJVTEVaISAoVGhlcmluLCAxNS4gSnVuIDE5OTgsIDA1OjI5OjUwKToKfiMhIHJuPVRlZGR5IHJ0PTg5Nzg3OTYyNCByZz1zY2htYXJybgp+IyEgdGlkPTg5Nzg3OTYyNAoKcGZmZmZmZmYgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IENIQU9TIFJVTEVaISAoVGVkZHksIDE1LiBKdW4gMTk5OCwgMDU6MzA6MzIpOgp+IyEgcm49VGhlcmluIHJ0PTg5Nzg4MTM5MCByZz1zY2htYXJybgp+IyEgdGlkPTg5Nzg3OTYyNApBaCwgZGllIE5laWRlciBzaW5kIGF1Y2ggd2FjaCBnZXdvcmRlbiA7KQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IENIQU9TIFJVTEVaISAoVGhlcmluLCAxNS4gSnVuIDE5OTgsIDA1OjMxOjMyKToKfiMhIHJuPVRlZGR5IHJ0PTg5Nzg4MTQzMiByZz1zY2htYXJybgp+IyEgdGlkPTg5Nzg3OTYyNApuZW5lLi4uIE5PQ0ggd2FjaCB1bmQgYXVzc2VyZGVtIHdhciBpY2ggbnVyIG5lIGhhbGJlIHN0dW5kZSBvZmZsaW5lIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQ0hBT1MgUlVMRVohIChUZWRkeSwgMTUuIEp1biAxOTk4LCAwNTozMjo1Mik6Cn4jISBybj1UaGVyaW4gcnQ9ODk3ODgxNDkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk3ODc5NjI0CkF1c3JlZGVuLCBhbGxlcyBBdXNyZWRlbiwgc28ga3JpZWdzdCBkdSBuaWUgZGllIERhdWVybXVkZGVybGl6ZW56LgoKVGVkZHkgKlBhdXNlbixwZmYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBDSEFPUyBSVUxFWiEgKFRoZXJpbiwgMTUuIEp1biAxOTk4LCAwNTozNDo1Nik6Cn4jISBybj1UZWRkeSBydD04OTc4ODE1NzIgcmc9c2NobWFycm4KfiMhIHRpZD04OTc4Nzk2MjQKTmFjaCAyMSBTdHVuZGVuIGRhdWVybXVkZGVuIG11c3N0ZSBpY2ggbGVpZGVyIG1hbCBkYXMgVGVsZXBob24gZnJlaWdlYmVuLApEb3BwZWxhbnNjaGx1ZXNzZSBzaW5kIGxlaWRlciBub2NoIE1hbmdlbHdhcmUgaW4gSG90ZWxzIDopCgpULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQ0hBT1MgUlVMRVohIChUZWRkeSwgMTUuIEp1biAxOTk4LCAwNTozNTo0NCk6Cn4jISBybj1UaGVyaW4gcnQ9ODk3ODgxNjk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk3ODc5NjI0Ck5hamEsIGRhbm4gd29sbGVuIHdpciBlcyBtYWwgYmVpIG5lciBWZXJ3YXJudW5nIGJlbGFzc2VuLCBhYmVyIG5pY2h0IGRhcyBtaXIKZGFzIG5vY2htYWwgdm9ya29tbXQuIDspCgpUZWRkeSwgaGV1dGUgbWFsIGduYWVkaWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IENIQU9TIFJVTEVaISAoU2Nob2tvLCAxNS4gSnVuIDE5OTgsIDEyOjUxOjEwKToKfiMhIHJuPVRlZGR5IHJ0PTg5Nzg4MTc0NCByZz1zY2htYXJybgp+IyEgdGlkPTg5Nzg3OTYyNApJY2ggZGVua2UgZnVlciBqZW1hbmRlbiwgZGVyIG5hY2ggSGF3YWlpIGluIFVybGF1YiBmYWVocnQgdW5kIGRhbm4gZG9jaCBub2NoCjIxIGFtIFN0dWVjayBpbSBtdWQgaXN0LCB3YWVyZSBlaW5lIEVocmVubWVkYWlpbGUgZmFlbGxpZywgb2Rlcj8gOykKClNjaG9rbyAoc2luZCB3aXIgZXR3YSBhbGxlIHNvIGtyYW5rPykgOykpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBDSEFPUyBSVUxFWiEgKFRlZGR5LCAxNS4gSnVuIDE5OTgsIDEyOjUzOjQ3KToKfiMhIHJuPVNjaG9rbyBydD04OTc5MDc4NzAgcmc9c2NobWFycm4KfiMhIHRpZD04OTc4Nzk2MjQKRGFzIHByZWRpZ2UgaWNoIHNjaG9uIHNlaXQgbmVyIFdvY2hlLCBlciBlcnphZWhsdCB3YXMgdm9uIGh1ZWJzY2hlbgpCaWtpbmlzY2hvZW5oZWl0ZW4gKFdhcyB3YXIgZGFzIG5vY2htYWw/OykgKSB1bmQgbXVkZGVkIG9obmUgRW5kZS4KRGFzIGthbm4gbmljaHQgZ2VzdW5kIHNlaW4hCgpUZWRkeSwgTklDSFQgc3VlY2h0aWcgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hbnU/IChNb3Jnb3RoLCAxNS4gSnVuIDE5OTgsIDEyOjU4OjA1KToKTmFpcm9sZiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKWmVwaHlyICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpVbmdlc2Nobml0dGVuLCBtaXQgMSBzZWt1bmRlIHdhcnRlemVpdC4uLi4KTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF6enVybyBTVElOS1QgZG9jaCEgKEV0YWluLCAxNS4gSnVuIDE5OTgsIDE4OjA5OjI3KToKPiBBenp1cm8gc2FndDogaG1tIGljaCBrYW5uIG5pY2h0cyBCZXNvbmRlcmVzIGFuIG1pciByaWVjaGVuLiBTdGlua2VuZCBzdGltbXQKYWxzbyBuaWNodC4KRXRhaW4gaGFlbHQgc2ljaCBkaWUgTmFzZSB6dS4KRm9uZGlsIG5pY2t0IGthdW0gbWVya2xpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUaW1pbmcsIG9kZXIgd2FzPyAoTW9yZ290aCwgMTYuIEp1biAxOTk4LCAxMDoyNTo0Nik6ClplciBpc3QgbmljaHQgYW53ZXNlbmQuClp1bGV0enQgZWluZ2Vsb2dndCB2b246IHRob3IuQ2hlbWllLlVuaS1Eb3J0bXVuZC5ERSBbRG9ydG11bmRdLgpadWxldHp0IGF1c2dlbG9nZ3Q6IERpZSwgMTYuIEp1biAxOTk4LCAwOToxMToyNiAoMDE6MTM6NTYpClZvbGxlciBOYW1lOiBaZXIgZGVyIGFuZ2VoZW5kZSBTZWhlcgpSYXNzZTogTWVuc2NoLCAgR2lsZGU6IEFiZW50ZXVyZXIsICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKQWx0ZXI6IDNkIDAwOjAwOjAwLCAgIFNwaWVsZXJsZXZlbDogMjUsICAgR2lsZGVubGV2ZWw6IDI1CkRhdHVtIGRlcyBlcnN0ZW4gTG9naW46IE1pdCwgMjcuIE1haSAxOTk4LCAwOTo1MzoxOAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmFydCAoVGVkZHksIDE3LiBKdW4gMTk5OCwgMDI6Mjc6NDQpOgoKRHUgdGVpbHN0IFNoYXJpYSBtaXQ6IEljaCBzb2xsIGRpciB3YXMgbWl0dGVpbGVuClNoYXJpYSBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBJY2ggSEFCRSBlaW5lbiBCYXJ0CgpKZXR6dCBkb2NoPyA7LSkKClRlZGR5LCBpcnJpdGllcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hpem9waHJlbmUgTWFnaWVyLi4uIChCaWVsZWZlbGQsIDE3LiBKdW4gMTk5OCwgMTI6MjU6NTEpOgpBenJhZWwgc2V0enQgc2ljaCBhbiBkZW4gVGlzY2guCltNYWV4Y2hlbjpGcmFua10gRWluZSBuZXVlIGdlc2VsbGlnZSBNYWV4Y2hlbi1SdW5kZSBiZWdpbm50IGJhbGQuIEJlc3RlbGx1bmdlbgpbTWFleGNoZW46RnJhbmtdIGZ1ZXIgU2thcmEgQnJhZXUgYml0dGUgYmVpIG1pciEKQXpyYWVsIHNldHp0IHNpY2ggYXVjaCBhbiBkZW4gVGlzY2guCgoKSmV0enQgd2Vpc3MgaWNoIHdlbmlnc3RlbnMsIHdhcnVtIGljaCBpbW1lciBnZWdlbiBBenJhZWwgdmVybGllci4uLiA7KQoKSmVtYW5kIGF1cyBCaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBsYWctdmVybWVpZHVuZyAoYW50d29ydCBhdWYgYm9pbmcpIChBbmF0b2wsIDE4LiBKdW4gMTk5OCwgMTM6Mjk6MTApOgp+IyEgcm49SmFzb25yaWdpZCBydD04OTgxNjkyODMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD04OTgxNjkyODMKKGEpIEFydGlrZWwgbGVzZW4KKGIpIFJ1YnJpayB3ZWNoc2VsbgooYykgInJlcGx5IiB0aXBwZW4KClVuZCBzY2hvbiBrbGFwcHQgZGFzIG1pdCBkZW0gQmV6dWcgYXVmIGRlbiByaWNodGlnZW4gQXJ0aWtlbC4KCkFuYXRvbCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbGFnLXZlcm1laWR1bmcgKGFudHdvcnQgYXVmIGJvaW5nKSAoQW5hdG9sLCAxOC4gSnVuIDE5OTgsIDEzOjMyOjA0KToKfiMhIHJuPUphc29ucmlnaWQgcnQ9ODk4MTY5NDA3IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODk4MTY5MjgzClVuZCBpbiBESUVTRU0gWnVzYW1tZW5oYW5nIHdlaXNlIGljaCBudXIgenUgZ2VybmUgYXVmIGRlbiBCZWZlaGwgImxvZXNjaGUiCmhpbiwgbWl0IGRlbSBtYW4gYWxzIFNwaWVsZXIgZWlnZW5lIEFydGlrZWwsIHNvZmVybiBzaWUgbmljaHQgdm9uIGFuZGVyZW4KdmVybGVndCB3dXJkZW4sIGxvZXNjaGVuIGthbm4uCgpWaWVsbGVpY2h0IHd1ZXJkZSBlaW4gInVudCB6ZWl0dW5nIiBmdWVyIGRlbiBlaW5lbiBvZGVyIGFuZGVyZW4gcmljaHRpZwppbnRlcmVzc2FudCB3ZXJkZW4sIGZhZWxsdCBtaXIgZ3JhZGUgc28gZWluLiA6KQoKQW5hdG9sLCB3ZWlzcywgd28gZXIgcG9zdGV0CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbGFnLXZlcm1laWR1bmcgKGFudHdvcnQgYXVmIGJvaW5nKSAoVGVkZHksIDE4LiBKdW4gMTk5OCwgMTM6NTU6NDEpOgp+IyEgcm49QW5hdG9sIHJ0PTg5ODE2OTUyNCByZz1zY2htYXJybgp+IyEgdGlkPTg5ODE2OTI4MwpTdGltbXQsIHVudCBaZWl0dW5nIHdhciBpbnRlcmVzc2FudCwgaGFiIGdlbWVya3QgZGFzIGljaCBhdWYgdW50IG1hbCB3aWVkZXIKZWluIGFsaSBnZWxlZ3QgaGF0dGUgOykKRGFua2UgQW5hdG9sLiA7KQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEhhcHBhIEhhcHBhIEhleSEgKEdyaW1tYm9ybiwgMTguIEp1biAxOTk4LCAxNzo0NzozOCk6Cn4jISBvbj1KYXNwZXIgb3Q9ODk4MTM1NjQ0IG9nPWtvY2hyZXplcHRlCn4jISBybj1DYXJhZGhyYXMgcnQ9ODk4MDk5OTAyIHJnPWtvY2hyZXplcHRlCn4jISB0aWQ9ODk3NjY5MjE4CmljaCBkYWNodGUgZnJhbnpvZXNpc2NoIHdhZXJlLCB3ZW5ubi4uLi4gYWVoICplcnJvZXQqIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIYXBwYSBIYXBwYSBIZXkhIChHcmltbWJvcm4sIDE4LiBKdW4gMTk5OCwgMTc6NDc6NDkpOgp+IyEgb249QXp6dXJvIG90PTg5ODE1NzM2OSBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49Q2FyYWRocmFzIHJ0PTg5ODA5OTkwMiByZz1rb2NocmV6ZXB0ZQp+IyEgdGlkPTg5NzY2OTIxOApXYXNzZXIgaXN0IHRldWVyISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIYXBwYSBIYXBwYSBIZXkhIChHcmltbWJvcm4sIDE4LiBKdW4gMTk5OCwgMTc6NDc6NTEpOgp+IyEgb249R2xvaW5zb24gb3Q9ODk4MTU4NjA1IG9nPWtvY2hyZXplcHRlCn4jISBybj1DYXJhZGhyYXMgcnQ9ODk4MDk5OTAyIHJnPWtvY2hyZXplcHRlCn4jISB0aWQ9ODk3NjY5MjE4CkhtIC4uLiB3YXJ1bSBiaXN0IER1IGRhbm4gdm9uIE1haGF0bWFzIFN0cm9oIDgwIGltbWVyIHNvIHdlaXQgZW50ZmVybnQ/CgpHbG9pbiAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEhhcHBhIEhhcHBhIEhleSEgKE1vcmdvdGgsIDE4LiBKdW4gMTk5OCwgMjI6MjM6MzcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg5ODE4NDg1OCByZz1zY2htYXJybgp+IyEgdGlkPTg5NzY2OTIxOAoKLi5EdSBkZW4gS29mcCBkZXIgRnJhdSB2b24gb2JlbiBzaWVoc3QuLi4KTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyZXVuZGUgOy0oIChUZWRkeSwgMTkuIEp1biAxOTk4LCAwMDozNToxMyk6CgpEdSB0ZWlsc3QgZGVpbmVuIEZyZXVuZGVuIG1pdDogU2Nob25tYWwgdm9tIGhlei1EcmFjaGVuIGdlaG9lcnQgOykKRGVpbiBGcmV1bmQgUmluZ29yIHdpbmt0IERpciB6dW0gQWJzY2hpZWQgYXVzIGRlciBGZXJuZSB6dS4KUmluZ29yICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKCkZhc3QgdW5nZXNjaG5pdHRlbiA7KQoKVGVkZHkKUC5TLiBEaWUgYW5kZXJlbiBzaW5kIGxlaWRlciBzY2hvbiBhdXNtIFB1ZmZlciByYXVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogT2JqZWt0ZSByZWR1emllcmVuIChHcmltbWJvcm4sIDE5LiBKdW4gMTk5OCwgMTE6MzY6MzgpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTg5ODI0ODg0MCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTg5ODE1NTIyNQpDb29sLiBFcmlubmVydCBzaWNoIG5vY2ggamVtYW5kIGFuIGRpZSBmcnVlaGVyZW4gY2FsbG91dCBXYXJudW5nc2dld2l0dGVyPyBEaWUKZ2FicyBzbyBiaXMgZXR3YSBFbmRlIDk0Li4uCkRhZnVlciEKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogT2JqZWt0ZSByZWR1emllcmVuIChBbmF0b2wsIDE5LiBKdW4gMTk5OCwgMTM6MTM6MzkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTg5ODI0ODk5OCByZz1zY2htYXJybgp+IyEgdGlkPTg5ODE1NTIyNQpBY2ggR3JpbW1pLCBkYXMgaXN0IG5pY2h0cywgd2FzIG1hbiBuaWNodCBqZWRlcnplaXQgd2llZGVyIGhlcnN0ZWxsZW4gCmtvZW5udGUuIFNhZycgZWluZmFjaCBtYWwgbmUgVWhyemVpdCwgZGFubiBzY2hhdSduIHdpciBtYWwsIHdhcyB3aXIKZWlucmljaHRlbiBrb2VubmVuLCBobT8gOikKCkFuYXRvbCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZlcmZvbGd1bmdzd2Fobj8gOykgKFNjaG9rbywgMTkuIEp1biAxOTk4LCAyMzo1NDo1Mik6CkhpbnRlcmhvZi4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuIHVuZCBzdWVkZW4uCkVpbiBidWxsaWdlciBSYXVzc2NobWVpc3Nlci4KRWluIGJ1bGxpZ2VyIFJhdXNzY2htZWlzc2VyLgpFaW4gYnVsbGlnZXIgUmF1c3NjaG1laXNzZXIuCkVpbiBidWxsaWdlciBSYXVzc2NobWVpc3Nlci4KbwpFaW4gUmF1c3NjaG1laXNzZXIgdmVyZm9sZ3QgTGludXguCkVpbiBSYXVzc2NobWVpc3NlciBnZWh0IG5hY2ggT3N0ZW4uCkR1IHZlcmZvbGdzdCBqZXR6dCBlaW5lbiBSYXVzc2NobWVpc3Nlci4KRWluIFJhdXNzY2htZWlzc2VyIHZlcmZvbGd0IExpbnV4LgpFaW4gUmF1c3NjaG1laXNzZXIgZ2VodCBuYWNoIE9zdGVuLgpEdSB2ZXJmb2xnc3QgamV0enQgZWluZW4gUmF1c3NjaG1laXNzZXIuCkVpbiBSYXVzc2NobWVpc3NlciB2ZXJmb2xndCBMaW51eC4KRWluIFJhdXNzY2htZWlzc2VyIGdlaHQgbmFjaCBPc3Rlbi4KRHUgdmVyZm9sZ3N0IGpldHp0IGVpbmVuIFJhdXNzY2htZWlzc2VyLgpIb2ZzY2hhZW5rZS4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHdlc3Rlbi4KCldpbGRlIFZlcmZvbGd1bmdlbiBoaWVyIDspKQoKU2Nob2tvIChpLlYuIGZ1ZXIgc2VpbmVuIGtsZWluZW4gbGludXggOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1c2dld2ljaGVuIG9kZXIgbmljaHQsIGRhcyBpc3QgaGllciBkaWUgRnJhZ2UuLi4gKE1pbmRibGFkZSwgMTkuIEp1biAxOTk4LCAyMzo1NzoyNCk6CgpEZXIgRHJhY2hlIGxhZWhtdCBEaWNoIG1pdCBzZWluZW0gQmxpY2suCkR1IHVtdGFlbnplbHN0IGRlbiBBbmdyaWZmIHZvbGxzdGFlbmRpZy4KRHUgc3RlY2tzdCBkYXMgU2Nod2VydCB6dXJ1ZWNrLgpEdSB6dWVja3N0IGRlbiBTYWV1cmVzcGVlci4KRHUgYmlzdCBpcmdlbmR3aWUgcGFyYWx5c2llcnQgdW5kIGthbm5zdCBEaWNoIG5pY2h0IHJpY2h0aWcgYmV3ZWdlbiEKCgpUamEgYmluIGljaCBudSBhdXNnZXdpY2hlbiBvZGVyIG5pY2h0Li4uCgpNaW5kKiwgZ3J1ZWJlbHQgaW1tZXJub2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEF1c2dld2ljaGVuIG9kZXIgbmljaHQsIGRhcyBpc3QgaGllciBkaWUgRnJhZ2UuLi4gKE1vcmdvdGgsIDIwLiBKdW4gMTk5OCwgMjE6Mzk6MDQpOgp+IyEgcm49TWluZGJsYWRlIHJ0PTg5ODI5MzQ0NCByZz1zY2htYXJybgp+IyEgdGlkPTg5ODI5MzQ0NApEaWVzIGlzdCBlaW4gUHJvYmxlbSBkZXMgJ0FkZFNwZWxscycgaW4gTlBDcy4gTGVpZGVyIGdpYnQgZXMga2VpbmUgbWlyCkJla2FubnRlIE1vZWdsaWNoa2VpdCB6dSB1ZWJlcnBydWVmZW4sIG9iIER1IG51biBhdXNnZXdpY2hlbiBiaXN0IChTaWVodCBuYWNoCm1laW5lbSByb3RlbiBEcmFjaGVuIGF1cykuIERhIG11ZXNzdGUgZXZ0bC4gbm9jaCBlaW4gUGFyYW1ldGVyIG9kZXIgc28gaW4gZGllCkZ1bmt0aW9uIGVpbmdlYmF1dCB3ZXJkZW4sIGRpZSB2b24gQWRkU3BlbGwgYXVmZ2VydWZlbiB3aXJkLiA7LSkpClNvcnJ5Li4uLml0J3Mgbm90IG15IGJ1ZwoKTW9yZ290aAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmFtb3VzLUxhc3QtTGFnIChMaWxsZWJyb3IsIDIxLiBKdW4gMTk5OCwgMjA6NTI6MzYpOgpbPE1hc3RlUj46VGVkZHldIGwKWzxNYXN0ZVI+OjxNYXN0ZVI+XSA5LjY2IGNtZHMvcywgMjIzLjc5IGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMi42JS82MCwgMy40JS8xNSwgMTAuMCUvMQpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBUZWRkeSB1bWdlYnJhY2h0LgoKdHN0c3RzLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprbGVpbmUgRmV0ZSBsZXR6dGVucyBiZWkgS2V5IDotKSAoTmFpcm9sZiwgMjEuIEp1biAxOTk4LCAyMjoyMzozNSk6CgpUamEgZGEgc2l0enQgbWFuIGdhbnogb2huZSBib2VzZSBCZWZ1ZXJjaHR1bmdlbiBhbiBlaW5lbSBzY2hvZW5lbiBTb21tZXJhYmVuZAppbiBlaW5lbSBHYXJ0ZW4gdW5kIGdyaWxsdCB1bmQgZGEgZ2VzY2hlaGVuIHNjaG9uIHNlbHRzYW1lIERpbmdlOgoKU2Nob2tvIHVuZCBTdGluZyBlcmhlYmVuIHNpY2ggdW5kIGVyc2NoaWVzc2VuIGdsZWljaHplaXRpZyBTaGFyaWEgLi4uLiBmcmFndAptaWNoIE5JQ0ggd2llc28gLi4uLi46LSkKClNjaG9rbyBzY2hhdXQgTmVzYWphIHRpZWYgaW4gZGllIEF1Z2VuIHVuZCBmcmFndDogIiBXaWxsc3QgRHUgZmlja2VuID8gIgoKU2Nob2tvIHNhZ3Q6ICIgTWVpbmVyIGlzdCBhdWNoIHNjaG9uIGdyb2Vzc2VyICEiCgpTY2hva28gc2FndDogIiBCZWkgRmV1ZXJ3ZWhyIGthbm4gbWFuIGltbWVyICdEaW5nZSB0dW4nICEiCk5lc2FqYSBzYWd0OiAiIE5hIERBIG11c3MgaWNoIGlobiBtYWwgZHJhdWYgYW5zcHJlY2hlbiEiCihobW0gbGV0enRlcyBaaXRhdCBrb2VubnRlIGF1Y2ggZXR3YXMgYW5kZXJzIGdla2x1bmdlbiBoYWJlbiA6LSkgKQoKCkhtbSB2aWVsbGVpY2h0IGZhbGxlbiBkZW4gYW5kZXJlbiBqYSBhdWNoIG5vY2ggbmVuIHBhYXIgJ0RpbmdlJyBlaW4gLi46LSkKClVlYnJpZ2VuczogRWlnZW50bGljaCBkYWNodGUgamEgamVkZXIgZGFzc2VzIGJlaSBLZXkgZGFzc2VzIDIuMyBtbSBzaW5kIC4uCmFiZXI6CktleSBzYWd0OiAiIE5lZWUgZGFzIHNpbmQgMi4xICEiCgoKTmFqYSBzY2hlaXNzIEluc2lkZXIgOi0pCgoKTmFpcm9sZiwgZGVyIGRhcyBhbGxlcyBudXIgc28gd2VpdGVyZ2lidCB3aWUgZXIgZXMgbWl0YmVrb21tZW4gaGF0IHVuZCBlciBoYXQKZXMgbmljaHQgc28gZ2VtZWludCAuLi4gCgoKCgpUcnlmYW4gd28gYmxlaWJlbiBkaWUgR2x1ZWh3dWVybWNoZW4gPyA6LSkpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGtsZWluZSBGZXRlIGxldHp0ZW5zIGJlaSBLZXkgOi0pIChOYWlyb2xmLCAyMS4gSnVuIDE5OTgsIDIyOjMyOjMzKToKfiMhIHJuPU5haXJvbGYgcnQ9ODk4NDYwNjE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk4NDYwNjE1CnV1dXVwcyBoYWIgbm9jaCB3YXMgdmVyZ2Vzc2VuOgoKCklyZ2VuZHdlciBmcmFndDogIiBOYSBTdGluZyB3aWUgd2FycyA/ICIKU3Rpbmcgc2FndDogIiBLdXJ6LCBoZWZ0aWcsIGFiZXIgZ3V0ICIKCklDSCB3YXIgbmljaHQgbWl0IGlobSB3ZWcgbmVpbiBuZWluIG5laW4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGtsZWluZSBGZXRlIGxldHp0ZW5zIGJlaSBLZXkgOi0pIChTY2hva28sIDIxLiBKdW4gMTk5OCwgMjI6Mzc6MTApOgp+IyEgcm49TmFpcm9sZiBydD04OTg0NjExNTMgcmc9c2NobWFycm4KfiMhIHRpZD04OTg0NjA2MTUKSG1tIGphamEgdW5kIGRhbm4gd2FyIGRhIG5vY2ggTmFpcm9sZiwgZGVyIHp3aXNjaGVuIE5lc2FqYSB1bmQgWmVwaHlyIHNpdHplbmQsCm1pdCBpcmdlbmR3ZWxjaGVuIERpbmdlbiBpbiBzZWluZW0gU2Nob3NzIHNwaWVsdGUuIFVuZCBhbHMgZGFubiBLZXkgdW5kIFRvbGdhbgpzaWNoIGluIHdpbGRlbSBMaWViZXNwaWVsIG5hc3MgbWFjaHRlbiBwbGF0emUgcGxvZXR6bGljaCB3YXMgYmVpIGlobSB1bmQgZXIKd2FyZCB6aWVtbGljaCBmZXVjaGp0IHp3aXNjaGVuIGRlbiBCZWluZW4uLi4uCgpTY2hva28gKER1IHdlaHJzdCBkZW4gU3BydWNoIGFiISkgOykpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBrbGVpbmUgRmV0ZSBsZXR6dGVucyBiZWkgS2V5IDotKSAoTmFpcm9sZiwgMjEuIEp1biAxOTk4LCAyMjozOTowOSk6Cn4jISBybj1TY2hva28gcnQ9ODk4NDYxNDMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk4NDYwNjE1CnVuZCB3aWVzbyB3YXIgZGllIEhvc2Ugdm9uIFN0aW5nIGhpbnRlbiBzbyBmZXVjaHQgPzotKSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBrbGVpbmUgRmV0ZSBsZXR6dGVucyBiZWkgS2V5IDotKSAoU3RpbmcsIDIxLiBKdW4gMTk5OCwgMjI6NDA6MjApOgp+IyEgcm49TmFpcm9sZiBydD04OTg0NjE1NDkgcmc9c2NobWFycm4KfiMhIHRpZD04OTg0NjA2MTUKSG1tLCBuYWphIGJlaSBkZW4ga29taXNjaGVuIERJTkdFTiBkaWUgaW4gTWFyYnVyZyBzbyBwYXNzaWVyZW4uLi4gZGEgd2FyIGRhcwpqYSBub2NoIGV0d2FzIHZvbiBkZW4gbm9ybWFsZXJlbiBESU5HRU4uLi4uIDopKQoKU3RpbmcKKHNjaHVldHRlbHQgamV0enQgbm9jaCBkZW4gS29wZikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGtsZWluZSBGZXRlIGxldHp0ZW5zIGJlaSBLZXkgOi0pIChTdGluZywgMjEuIEp1biAxOTk4LCAyMjo0MjoxOSk6Cn4jISBybj1TdGluZyBydD04OTg0NjE2MjAgcmc9c2NobWFycm4KfiMhIHRpZD04OTg0NjA2MTUKRWJlbiBpc3QgbWlyIG5vY2ggd2FzIGVpbmdlZmFsbGVuIDopCkFtIE1vcmdlbiAiZGFyYXVmIjogS2V5IGhvbHQgS2xvcGFwaWVyLi4uClNjaG9rbzogIkRhcyBoYWV0dGVzdCBEdSBiZXNzZXIgZ2VzdGVybiBuYWNodCBkYWJlaWdlaGFidCwgYmVpIGRlciBnYW56ZW4KU2NoZWlzc2UgZGllIHdpciBkYSBnZXJlZGV0IGhhYmVuLiIgOikpCgpTdGluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjoga2xlaW5lIEZldGUgbGV0enRlbnMgYmVpIEtleSA6LSkgKE5haXJvbGYsIDIxLiBKdW4gMTk5OCwgMjI6NDQ6MzEpOgp+IyEgcm49U3RpbmcgcnQ9ODk4NDYxNzM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk4NDYwNjE1CmhtbSBXaWUgd2FyIGRhcyA/CgpJY2ggZnJhZ2UgTGVmdHk6ICIgTmEgd2FzIGhhYnQgaWhyIGRlbm4gaGV1dGUgbW9yZ2VuIHNvIGdlbWFjaHQgPyIKTGVmdHk6ICJLbG9wYXBpZXIgZ2VzdWNodCIKRGFyYXVmIEtleTogIiBOYSBpaHIgaGFidCBkb2NoIGRpZSBnYW56ZSBOYWNodCBkYW5lYmVuIGdlc2NobGFmZW4uLi4iCgoqb2huZSBXb3J0ZSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBrbGVpbmUgRmV0ZSBsZXR6dGVucyBiZWkgS2V5IDotKSAoS251cnQsIDIyLiBKdW4gMTk5OCwgMDE6MTE6MDgpOgp+IyEgcm49TmFpcm9sZiBydD04OTg0NjA2MTUgcmc9c2NobWFycm4KfiMhIHRpZD04OTg0NjA2MTUKVmVyZGFtbXQgLSB1bmQgaWNoIERlcHAgaGFiZSBkYXMgbG9nIHZvbiBNb3Jnb3RocyBQYXJ0eSB2ZXJrbHVlbmdlbHQsIHdvIGljaApkb2NoIHNvIHNjaG5lbGwKVGVkZGllcyBoZWlzc2JsdWV0aWdlIExpZWJlc2Vya2xhZXJ1bmcgYW4gTmFjaHR3aW5kIG1pdGdlc2NocmllYmVuIGhhdHRlLi4uCipzZXVmeioKCktudXJ0IChpc3QgamEgc29vb28gZG9vZikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZToga2xlaW5lIEZldGUgbGV0enRlbnMgYmVpIEtleSA6LSkgKEtudXJ0LCAyMi4gSnVuIDE5OTgsIDAxOjIyOjU2KToKfiMhIHJuPUtudXJ0IHJ0PTg5ODQ3MDY2OCByZz1zY2htYXJybgp+IyEgdGlkPTg5ODQ2MDYxNQpBYWFhYWguIGljaCBoYWIgZG9jaCBub2NoIGVpbiBwYWFyIEZldHplbiB2b24gTW9yZ290aHMgUGFydHkgZ2VmdW5kZW46CgpEYXMgZ2FuemUgd2FyIGltIFJhaG1lbiBlaW5lciBQYXJ0eSAiTWl4dHVyIiAoZWluIEthcnRlbnNwaWVsIHZvbiBFZGdlKToKVGVkZHkgenUgTW9yZ290aDogIkFjaCB3YXMgc2luZCBXaXIgZnJvaCwgZGFzIHdpciBuaWNodCBmdWVyIFNpZSByZWltZW4KbXVlc3NlbiwgTWVpc3RlciIKClRlZGR5IHp1IE5hY2h0d2luZDogIkdlbGllYnRlLCBkaWVzZXMgZW5nZWxzZ2xlaWNoZSBIYWFyLCBkaWVzZXIgbGVpY2h0IGJsYXNzZQpUYWludCwgZGllc2VyIGZldXJpZ2UgQmxpY2ssIGRpZXNlIE5hc2UgLi4uIGRpZXNlIHZlcnp1ZWNrZW5kZSBOYXNlIC4uLiBkaWVzZSwKZGllc2UsIGRpZXNlIE1JVFRJR0UgTkFTRSEKRGllc2VyIGxlaWNodGUgU2Nod3VuZyBFdXJlciBMaXBwZW4sIGRpZXNlIGFlaCwgYWVoIGRpZXNlIEdydWViY2hlbiBhbSBLaW5uCnZlcnp1ZWNrZW4gdW5zIGVpbmZhY2guLi4iCk5hY2h0d2luZCBzY2htb2x6IGRhaGluLi4uCgpOYWphIFN0YW5kYXJkc2F6dCB2b24gTW9yZ290aCB3YXIgbmF0dWVybGljaCAiV2VubiBEdSBEQVMgdHVzdCBzb2xsdGVzdCBEdSBUZWwKMzIgTklFIHdpZWRlciBiZW51dHplbiEiIDopCgpUamEsIHVuZCB3aWUgTW9yZ290aHMgdm9yIHZlcnNhbW1lbHRlciBNYW5uc2NoYWZ0ICJBbGxlIG1laW5lIEVudGNoZW4iCmdlc3VuZ2VuIGhhdCB1bmQgdm9yIGplZGVtIFNhdHogYXVjaCBub2NoICJLcmV1enNhcHBlcmxvdCEiIGVpbmZ1ZWdlbiBtdXNzdGUKa2FubiBtYW4gaGllciB3b2hsIGthdW0gd2llZGVyZ2ViZW4uLi4gOikKCk9kZXIgYWxzIE1vcmdvdGggdmVyc3VjaHRlIHNpY2ggYXVmIGVpbmUgaG9lY2h0cyBzZXh5ICg/KSBBcnQgc2VpbmVzCkhhYXJiYW5kZXMgZXJsZWRpZ3RlIChudW4gZXMgZXJpbm5lcnRlIGFuIGRpZSBlcnN0ZW4gVmVyc3VjaGUgaW0gRmlsbSAiR2FuegpvZGVyIGdhcm5pY2h0Ii4uLgoKS251cnQgKGluIEVyaW5uZXJ1bmdlbiBzY2h3ZWxnZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzoga2xlaW5lIEZldGUgbGV0enRlbnMgYmVpIEtleSA6LSkgKFRlZGR5LCAyMi4gSnVuIDE5OTgsIDAxOjI2OjEzKToKfiMhIHJuPUtudXJ0IHJ0PTg5ODQ3MTM3NiByZz1zY2htYXJybgp+IyEgdGlkPTg5ODQ2MDYxNQpJY2ggbW9lY2h0ZSBiZXRvbmVuLCBkYXMgaWNoIG5jaWh0IGJldHJ1bmtlbiB3YXIgdW5kIG1laW5lIE1hdXMgZWJlbmZhbGxzCmFud2VzZW5kIHdhciA7KQoKClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBrbGVpbmUgRmV0ZSBsZXR6dGVucyBiZWkgS2V5IDotKSAoTW9yZ290aCwgMjIuIEp1biAxOTk4LCAwODoxMToxNik6Cn4jISBybj1UZWRkeSBydD04OTg0NzE1NzMgcmc9c2NobWFycm4KfiMhIHRpZD04OTg0NjA2MTUKRGFubiB3YXJlbiBkYSBub2NoIGRpdmVyc2UgSHVlcGYtT3JnaWVuLCBkaWUgbWVpc3RlbnMgZGVyIGFybWUgTmFjaHR3aW5kCmhhbHRlbiBtdXNzdGUuIEVJbm1hbCBoYXRzIGRhbm4gZG9jaCBUZWRkeSBlcndpc2NodC4uLi4gCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYW5kb3JhLi4uIChUaGVyaW4sIDIyLiBKdW4gMTk5OCwgMTg6MzY6NTYpOgpbQWJlbnRldWVyOlBsb3Rpbl0gd2FzIG1hY2h0IG1hbiBnZWdlbiBwYXJhc2l0ZW4gaW0gb2hyIChwYW5kb3JhKT8gMTg6MzE6MDEKW0FiZW50ZXVlcjpNb3Jnb25hdGVdIHN0ZXJiZW4/IDsoIDE4OjMxOjA5O1tBYmVudGV1ZXI6QmllbGVmZWxkXSBzdGVyYmVuCjE4OjMxOjExO1tBYmVudGV1ZXI6TGV2XSBzdGVyYmVuLiAxODozMToxNTtbQWJlbnRldWVyOlBsb3Rpbl0gYXVmIGplZGVuIGZhbGw/CjE4OjMxOjI1O1tBYmVudGV1ZXI6UXVlc3RdIFBsb3RpbiBoYXQgZ2VyYWRlIGVpbiBBYmVudGV1ZXIgYmVzdGFuZGVuOiBEaWUKQnVlY2hzZSBjWzM2bWRlcjtbQWJlbnRldWVyOlF1ZXN0XSBQYW5kb3JhICAxODozNDoyNDtbQWJlbnRldWVyOldpbGxvd10gdWksCm1pdCBwYXJhc2l0ZW4gaW0gb2hyPz8/IDspIDE4OjM0OjQyCltBYmVudGV1ZXI6U2lsdmFuYV0gS25hcHAgYWJlciBkb2NoPyAxODozNDo1OQpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBQbG90aW4gdW1nZWJyYWNodC4KW0JlaWxlaWQ6VmlzbWFoZWxdIHBsb3Rpbiwgd2FzIHdhciBkYXM/CltCZWlsZWlkOlZpc21haGVsXSBhbiBkYXMgRW5kZSBkZXIgUXVlc3Qga2FubiBpY2ggbWljaCBnYXIgbmljaHQgbWVocgpbQmVpbGVpZDpWaXNtYWhlbF0gZXJpbm5lcm4uLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGFuZG9yYS4uLiAoTGV2LCAyMi4gSnVuIDE5OTgsIDE4OjM5OjAzKToKfiMhIHJuPVRoZXJpbiBydD04OTg1MzM0MTYgcmc9c2NobWFycm4KfiMhIHRpZD04OTg1MzM0MTYKVGhlcmluIHdhciB6d2FyIHNjaG5lbGxlci4uLiBhYiBoaWVyIGV0d2FzIHNjaG9lbmVyLi4uIDogCgpbQWJlbnRldWVyOlBsb3Rpbl0gd2FzIG1hY2h0IG1hbiBnZWdlbiBwYXJhc2l0ZW4gaW0gb2hyIChwYW5kb3JhKT8gPDE4OjMxOjAxPgpbQWJlbnRldWVyOk1vcmdvbmF0ZV0gc3RlcmJlbj8gOyggPDE4OjMxOjA5PgpbQWJlbnRldWVyOkJpZWxlZmVsZF0gc3RlcmJlbiA8MTg6MzE6MTE+CltBYmVudGV1ZXI6TGV2XSBzdGVyYmVuLiA8MTg6MzE6MTU+CltBYmVudGV1ZXI6UGxvdGluXSBhdWYgamVkZW4gZmFsbD8gPDE4OjMxOjI1PgpbQWJlbnRldWVyOjxRdWVzdD5dIFBsb3RpbiBoYXQgZ2VyYWRlIGVpbiBBYmVudGV1ZXIgYmVzdGFuZGVuOiBEaWUgQnVlY2hzZSBkZXIKW0FiZW50ZXVlcjo8UXVlc3Q+XSBQYW5kb3JhICA8MTg6MzQ6MjQ+CltBYmVudGV1ZXI6V2lsbG93XSB1aSwgbWl0IHBhcmFzaXRlbiBpbSBvaHI/Pz8gOykgPDE4OjM0OjQyPgpbQWJlbnRldWVyOlNpbHZhbmFdIEtuYXBwIGFiZXIgZG9jaD8gPDE4OjM0OjU5PgoKW0dyYXRzOkhhc2VuZnVzc10gR3JhdHMhISEgPDE4OjM0OjMwPgpbR3JhdHM6VmlzbWFoZWxdIGdyYXRzLCBwbG90aW4hIDwxODozNDozMj4KW0dyYXRzOlRvbWF0b3JdIEdSQVRTICEgPDE4OjM0OjM2PgpbR3JhdHM6VHN1bmFtaSBrbGF0c2NodCA8MTg6MzQ6NDI+XQpbR3JhdHM6QmllbGVmZWxkXSBobSwgZ3JhdHMsIHVuZCBzY2hvbm1hbCBiZWlsZWlkIDwxODozNTozMz4KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgUGxvdGluIHVtZ2VicmFjaHQuCltUb2Q6TGFyc10gPDE4OjM1OjM1PgpbQmVpbGVpZDpUc3VuYW1pIGdyaW5zdF0gPDE4OjM1OjQzPl0KW0JlaWxlaWQ6TGV2XSBCZWlsZWlkLi4uIDwxODozNTo0NT4KW0JlaWxlaWQ6SGFzZW5mdXNzXSBVcmdzIC4uLiA6KCA8MTg6MzU6NDc+CltCZWlsZWlkOlZpc21haGVsXSBwbG90aW4sIHdhcyB3YXIgZGFzPyA8MTg6MzU6NDk+CltCZWlsZWlkOlZpc21haGVsXSBhbiBkYXMgRW5kZSBkZXIgUXVlc3Qga2FubiBpY2ggbWljaCBnYXIgbmljaHQgbWVocgpbQmVpbGVpZDpWaXNtYWhlbF0gZXJpbm5lcm4uLi4gPDE4OjM2OjEyPgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCb2VzZSBUcnVoZSEgKExpZ2h0bmluZywgMjIuIEp1biAxOTk4LCAyMjoyNDo1Mik6CkZpcmVwaG9lbml4IGhhdHRlIHNlaW5lIEhhbmQgYW4gZGllIFRydWhlIHZlcmxvcmVuLCBlaW5lIFZpZXJ0ZWxzdHVuZGUgc3BhZXRlcgppbiBDYXR3ZWF6bGVzIFR1cm06CgpGaXJlcGhvZW5peCBrbnVycnQgZWluZSBUcnVoZSBhbi4KTGlnaHRuaW5nIHN0YXJydCBkaWUgVHJ1aGUgZmluc3RlciBhbi4KPiBEaWUgVHJ1aGUgaGF0IGdlcmFkZSBGaXJlcGhvZW5peCBlaW5lIEhhbmQgYWJnZWJpc3Nlbi4KPiBGaXJlcGhvZW5peCBzYWd0OiBuZWlpaWlpaW4KRGllIFRydWhlIHNhZ3Q6IEJ1YWVoIQpEaWUgVHJ1aGUgc3B1Y2t0IGVpbmUgSGFuZCBhdXMuCkZpcmVwaG9lbml4IGJyaWNodCBpbiBUcmFlbmVuIGF1cyB1bmQgd2VpbnQgYml0dGVybGljaC4KCkxpZ2h0bmluZywga2ljaGVydCBqZXR6dCBub2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWmVwaHlyIHdpZWRlci4uLiAoTm92YXN0b3JtLCAyMi4gSnVuIDE5OTgsIDIyOjU2OjU0KToKWmVwaHlyIGRlbmt0ICAgLiBvIE8gKHJlc2V0IHJlc2V0IHJlc2V0KQpbQWJlbnRldWVyOlR5cmlvbl0gIG1pc3QhIGRhdCB3YXIgd29obG4gZWlnZW50b3IuLi4uLi4gOigoKCgoKCgoCkhleidab2FyYXRoIGtvbW10IGFuLgoKKnNldWZ6KiBhdGVtYmVyYXViZW5kCk5vdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFybWVyIFp3ZXJnIChNb3Jnb3RoLCAyMi4gSnVuIDE5OTgsIDIzOjQwOjE2KToKUmluZ29yIHRlaWx0IERpciBtaXQ6IGJla29tbSBpY2ggYXVjaCBuZW4gc2Fjaz8gOikKCldvcmluIGJlc3RlaHQgZGVyIHVudGVyc2NoaWVkIHp3aXNjaGVuIGVpbmVtIGxlZ29zdGVpbiB1bmQgbmVyIGZyYXUuLi4/Pz8KCmphamEuLi5nZWggbWl0IGxlZ29zdGVpbmVuIHNwaWVsZW4sIHJpbmdvcgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW1tZXIgd2llZGVyIGRhcyBzZWxiZS4uLiAoSG9ibywgMjMuIEp1biAxOTk4LCAxMTo0Mzo1NSk6ClNjaG9rbyB0ZWlsdCBEaXIgbWl0OiBKTyBiaW4gYXVjaCBnbGVpY2ggd2VnLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4gICAgICAgICAgICAgICAgICAKCkljaCAoYWVoLCBtZWluZSBad2VpdGluZSkgaGFlbmcgamEgYXVjaCBhbiBpaG0uLi4gYWJlciBkYXNzIGRhcyBnYW56ZSBNdWQgZWluZQpTY2hva28tZnJlaWUgWmVpdCBmdWVyY2h0ZXQ/CgogICBmdWVyIElja3MuLi4gSG9ibwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdm9yc2NobGFlZ2UgenUgemF1YmVyc3BydWVjaGVuIHVuZCBzby4uLiA6KSAoUGF0cnluLCAyMy4gSnVuIDE5OTgsIDE2OjU0OjA4KToKQW5hY3Jpb24gdGVpbHQgRGlyIG1pdDogd2llIHdhZXJzIG1pdCBiZWhlcnJzY2h1bmdlbiBicmVjaGVuIDspICpiZWkgRFNBCkFuYWNyaW9uIHRlaWx0IERpciBtaXQ6IGFiZ3VjayoKW1RydmVzOkxhbWFyaW9uXSBqZW1hbmQgZGVyIG5lIERyb20tS2V1bGUgYnJhdWNoID8KQW5hY3Jpb24gdGVpbHQgRGlyIG1pdDogLT4gd2Vpc3NtYWdpZQpbQWxsZ2VtZWluOlNwaXJpbGxdIGVzIHNlaSBkZW5uIGR1IHdpcnN0IGJpZXJzY2h1ZXR0bGVyLCBkYSBnZWh0cyBzY2huZWxsZXIhCltaYXViZXJlcjpOaWV0ZV0gc28sIHdlY2ggZnVlciBoZXV0ZS4gYmlzIG1vcmdlbi4uLgpEdSB0ZWlsc3QgQW5hY3Jpb24gbWl0OiBobW1tLCB3YWVyIGF1Y2ggbmUgaWRlZQpEdSB0ZWlsc3QgQW5hY3Jpb24gbWl0OiBhYmVyIHNvIHZpZWxlIGJlaGVycnNjaHVuZ2VuIGdpYnRzIGphIGxlaWRlciBuaWNoIDopCj4gQW5hY3Jpb24gdGVpbHQgRGlyIG1pdDogYWxzbyBuYWphCkR1IHRlaWxzdCBBbmFjcmlvbiBtaXQ6IGltbWVyIG1haWxlIGRlaW5lIGlkZWVuCj4gQW5hY3Jpb24gdGVpbHQgRGlyIG1pdDogc28gcXVhc2kgd2lsbGUgZGFuYWNoIC4uLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBXYWVjaHRlcnNdIEhhbGxvPyBIYXQgamVtYW5kIG1laW5lbiBLb2VycGVyIGdlc2VoZW4/CltNb2VyZGVyOkdlaXN0IGVpbmVzIFdhZWNodGVyc10gTXVlc3N0ZSBpcmdlbmR3byBiZWkgWmVwaHlyIGxpZWdlbiEKRHUgdGVpbHN0IEFuYWNyaW9uIG1pdDogaWNoIHdlaXNzIHNjaG9uLi4uIC4pCj4gQW5hY3Jpb24gdGVpbHQgRGlyIG1pdDogd2llIHBpbGxlIGRhbmNoIDspCkR1IHRlaWxzdCBBbmFjcmlvbiBtaXQ6IHdlaHJlIGFsaW1lbnRlIGFiPyA6KQo+IFtaVDpUd2luc2VuXSBadSBoZWxmZW4gZmFlbGx0IGRvY2ggZ2FyIG5pY2h0IHNjaHdlciwgQW0gQmFkZXN0cmFuZCwgZ2FueiBuYWgKW1pUOlR3aW5zZW5dIGJlaW0gTWVlcixEdXJjaCBOdXR6dW5nIHNjaG9uIHZvbiAndHlwbycgZ2FyLCBEZW4gQm9pbmcsIGRlbgpbWlQ6VHdpbnNlbl0gZnJldXRzIGdhciBzb25kZXJiYXIuCkFuYWNyaW9uIHRlaWx0IERpciBtaXQ6IHphdWJlcnNwcnVjaCBSVTQ4NiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWlmZXJzdWNodD8gKEV0YWluLCAyMy4gSnVuIDE5OTgsIDE3OjQxOjQ3KToKV2FybG9yZCBkcnVlY2t0IERpY2ggemFlcnRsaWNoIGFuIHNpY2ggdW5kIGdpYnQgRGlyCmVpbmVuIHphZXJ0bGljaGVuIHVuZCBsZWlkZW5zY2hhZnRsaWNoZW4gS3Vzcy4gRHUgc2NobGllc3N0IGRpZQpBdWdlbiB1bmQgdHJhZXVtc3QgZWluIHdlbmlnLi4uLi4uRHUgc2Nod2Vic3QgYXVmIFdvbGtlbiBkaXJla3QKaW4gZGVuIHNpZWJ0ZW4gSGltbWVsLgpEZXIgV2Vyd29sZiBrbnVycnQgYm9lc2FydGlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFoYXRtYSB1bmQgZGllIEh5ZHJhIChOb3Zhc3Rvcm0sIDI0LiBKdW4gMTk5OCwgMTE6MTc6NTApOgoKTWFoYXRtYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbPE1hc3RlUj46TWFoYXRtYV0gdQpbPE1hc3RlUj46TWFoYXRtYV0gbApbPE1hc3RlUj46PE1hc3RlUj5dIDEyLjE5IGNtZHMvcywgODI2LjI5IGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMi4xJS82MCwgMC45JS8xNSwgMS42JS8xCls8TWFzdGVSPjo8TWFzdGVSPl0gRGFzIE1VRCBsYWV1ZnQgamV0enQgMSBTdHVuZGUsIDM3IE1pbnV0ZW4gdW5kIDU0IFNla3VuZGVuLgpbPE1hc3RlUj46PE1hc3RlUj5dIEVzIHNpbmQgbW9tZW50YW4gODEgU3BpZWxlciBlaW5nZWxvZ2d0OyBkYXMgTWF4aW11bSBsYWcKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBoZXV0ZSBiZWkgMTIyIHVuZCBkZXIgUmVrb3JkIGJpc2hlciBpc3QgMjE0LgpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KCnVuZ2VzY2huaXR0ZW4gOi0pCk5vdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGFwcGEgSGFwcGEgSGV5ISAoR3JpbW1ib3JuLCAyNC4gSnVuIDE5OTgsIDExOjI2OjQ1KToKfiMhIG9uPVllbmRpIG90PTg5ODUxMTM2NiBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49QWNyaW1vbiBydD04OTgzNjAwMDYgcmc9a29jaHJlemVwdGUKfiMhIHRpZD04OTc2NjkyMTgKQWNyaW1vbiwgc28gYWxsbWFlaGxpY2ggcmlza2llcnN0IER1IG1laW5lIGlnbm9yaWVyZS1MaXN0ZS4uLgpOaWNodHMgZ2VnZW4gZWluIHBhYXIgcGVwcGlnIHZlcmFsbGdlbWVpbmVydGUgUnVuZHVtc2NobGFlZ2UsIGFiZXIgc28gYXVmCkRhdWVyIGxhZXNzdCBkZXIgVW50ZXJoYWx0dW5nc3dlcnQgZGVubiBkb2NoIG5hY2guCgpZVFkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptYWwgd2FzIChUaGVyaW4sIDI0LiBKdW4gMTk5OCwgMTY6MDM6MDApOgptYWwgd2FzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbWFsIHdhcyAoVHJla2FuLCAyNC4gSnVuIDE5OTgsIDE2OjM2OjM1KToKfiMhIHJuPVRoZXJpbiBydD04OTg2OTY5ODAgcmc9c2NobWFycm4KfiMhIHRpZD04OTg2OTY5ODAKVHJla2FubiBmYWVsbHQgZXJmdWVyY2h0aWcgYXVmIGRpZSBLbmllIG51ZCByb2VjaGVsdDogRGFua2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3dhcyAuLi4gKEFuYWNyaW9uLCAyNC4gSnVuIDE5OTgsIDE2OjQ4OjE3KToKW01vZXJkZXI6R2Vpc3QgZWluZXMgTGljaHR3ZXNlbnNdIFVuZCB3aWVkZXIgZWluIERyaXR0ZWwgRXJmYWhydW5nIHdlZyB3ZWdlbgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBMaWNodHdlc2Vuc10gTmljaHRzIC4uLiAgICAgICAKCk5hIHdhcyBiZXNjaHdlcnN0ZSBEaWNoIGRlbm4gZGFubiA/IT8KCkFuYWMqIC0gaW1tZXIgbm9jaCBncmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNNUyAoUm9jaHVzLCAyNC4gSnVuIDE5OTgsIDE3OjA5OjI3KToKQXVmIGRlciBOYWdyYXZpc2lvbiBIb21lcGFnZToKUHJvYmxlbXM/IFNlbmQgbWUgYSBTTVMKOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEcm9nZW5taXNzYnJhdWNoPz8gKEF6enVybywgMjQuIEp1biAxOTk4LCAxODo0NzoxMyk6CltBbGxnZW1laW46UHVrXSBrYW5uIG1pciBqZW1hbmQgc2FnZW4gd2FzIGZlbnRhbnlsIGlzdCB1bmQgd2llIG1hbiBlcyBhbndlbmRldApbQWxsZ2VtZWluOlB1a10gYnp3LiBvYiBlcyBuZWJlbndpcmt1bmdlbiBoYXRuYiA/CltBbGxnZW1laW46U3RpbmddIDEwMCUgYWxrb2hvbApbQWxsZ2VtZWluOkhhcmRpTF0gamEsIGRhcyBicmF1Y2hzdCBEdSBpbiBlaWVuciBRdWVzdApbQWxsZ2VtZWluOkt5YXJhXSBpcmdlbmR3ZXIgaGF0IG1pciBnZXNhZ3QsIGVyIHdhZXJlIGRhcmFuIGdlc3RvcmJlbi4uCltBbGxnZW1laW46UHVrXSBpY2ggYmluIGhpZXIgaW0gaG9laGxlbnN5c3RlbSBiZWltIHNjaG5lZWhhc2VuLCBkYSBsaWVndCBkYXMKW0FsbGdlbWVpbjpQdWtdIHRvbm5lbndlaXNlIHJ1bQpbQWxsZ2VtZWluOkt5YXJhXSBtaXIgaGF0cyBuaWNodCBnZXNjaGFkZXQuLmVzIGhlaWx0IGVpbiBiaXNjaGVuCltUb2Q6TGFyc10gRWluIEZlbnRhbnlsIGhhdCBnZXJhZGUgUHVrIHVtZ2VicmFjaHQuCgpKYWphLCBNZXNzZXIsIEdhYmVsLCBEcm9nZW4gTGljaHQgc2luZCBmdWVyIGtsZWluZSBTcGllbGVyIG5pY2h0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXb2VydGxpY2ggKEFydXRoYSwgMjQuIEp1biAxOTk4LCAxODo1MzowNik6CltUb2Q6TGFyc10gRWluIGR1bmtsZXIgU2NoYXR0ZW4gaGF0IGdlcmFkZSBIb256IHVtZ2VicmFjaHQuCltUb2Q6RWluIGR1bmtsZXIgU2NoYXR0ZW5dIE9oLCBlaW4gbmV1ZXIgUmVrcnV0IGZ1ZXIgdW5zZXJlIEFybWVlLiBIYWxsbyBIb256IQo+IFtCZWlsZWlkOkF6enVyb10gQmVpbGVpZAo+IFRhbWVsaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbQmVpbGVpZDpTdWNjYW1vcmVdIHNldWZ6IDooCltCZWlsZWlkOkZyb2dodW50ZXJdIEtvbW1lICEhIQpMZWFoIHdldHp0IGlocmUgS3JhbGxlbiBhdWYgZGVtIEJvZGVuLiBFaW4gZnVlcmNodGVybGljaGVzIEdlcmFldXNjaC4KW1RvZDpMYXJzXSBEZXIgdG9kYnJpbmdlbmRlIEZsdWNoIGRlcyBNb29zbW9uc3RlcnMgaGF0IGdlcmFkZSBGcm9naHVudGVyCltUb2Q6TGFyc10gdW1nZWJyYWNodC4KCkhtLCBvYiBlciBkYXMgc28gd29ydGxpY2ggZ2VtZWludCBoYXQgLi4uCgpBcnV0aGEsIGlzdCBuaWNodCBzbyBzY2hhcmYgZHJhdWYsIHp1IExhcnMgenUga29tbWVuIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWmVwaHlycyBCZWZvZXJkZXJ1bmcsIHVuZCAhTWFnaWVyISAoU3RpbmcsIDI0LiBKdW4gMTk5OCwgMjI6NDY6MzMpOgpOdXIgZWluIGtsaXR6ZWtsZWluZXIgQXVzenVnIGF1cyBkZW0gYWxsdGFlZ2xpY2hlbiBDaGFvczoKClRlZGR5IGtuZWlmdCBzZWluZW4gSGludGVybiBmZXN0IHp1c2FtbWVuIHVuZCBidWVja3Qgc2ljaCBuaWNodC4KTW9yZ290aCBzYWd0OiB3YXMgbnU/Ckl2byBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KSXNodGFyIGt1c2NoZWx0IHNpY2ggYW4gUGFyYWNlbHN1cyBhbi4KTW9yZ290aCBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpaZXBoeXIgdHJhdXQgc2ljaCBuaWNoLgoKClN0aW5nLCBzaWNoIHppZW1saWNoIHd1bmRlcm5kICpncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZlaWdsaW5nIChNb3Jnb3RoLCAyNS4gSnVuIDE5OTgsIDEwOjI1OjIwKToKUmFzY2FsICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkR1IHZlcnd1c2NoZWxzdCBSYXNjYWxzIEhhYXJlIGF1cyBkZXIgRmVybmUuCkR1IHRlaWxzdCBSYXNjYWwgbWl0OiBkaWUgb3JrcyB3YXJ0ZW4gYXVmIGRpY2gKUmFzY2FsICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhdWYgYWx0YXIgUkVHTyBIRVJCQU0gKEdyaW1tYm9ybiwgMjUuIEp1biAxOTk4LCAxNTowODoxMik6Cn4jISBvbj1UaGVyaW4gb3Q9ODk4Njk3MTQxIG9nPWFsbGdlbWVpbmVzCn4jISBybj1QaHlnb3MgcnQ9ODk4Njk3MTA3IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODk4Njk3MTA3CkRFUiB3YXIgZ3V0IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTG9naWsgPyAoRmVsYm8sIDI1LiBKdW4gMTk5OCwgMTk6NDM6MDcpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBMaWNodHdlc2Vuc10gTmljaHRzIGlzdCBOSUNIVCB6dSBtZWluZXIgQmVlcmRpZ3VuZwpbTW9lcmRlcjpHZWlzdCBlaW5lcyBMaWNodHdlc2Vuc10gZWluZ2VsYWRlbiEKCkFsc28gYWxsZSBvZGVyIHdhcz8KCkZlbGJvLCBrbGVpbiBhYmVyIGZlaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmdlc2NoaWNrdGUgTWFnaWVyLi4uLiAoUm9jaHVzLCAyNS4gSnVuIDE5OTgsIDIwOjU0OjExKToKU2Nob2tvIHRlaWx0IERpciBtaXQ6IEJyYXVjaHN0IER1IGVpbmVuICs0IEdlc2NoaWNrbGljaGtlaXQgcmluZz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbmdlc2NoaWNrdGUgTWFnaWVyLi4uLiAoU2Nob2tvLCAyNS4gSnVuIDE5OTgsIDIwOjU3OjQyKToKfiMhIHJuPVJvY2h1cyBydD04OTg4MDA4NTEgcmc9c2NobWFycm4KfiMhIHRpZD04OTg4MDA4NTEKW0FsbGdlbWVpbjpTY2hva29dIERhcyBpc3QgbWFza3VsaW4sIHBsdXJhbCA7KQpTY2hva28gdGVpbHQgRGlyIG1pdDogQnJhdWNoc3QgRHUgZWluZW4gKzQgR2VzY2hpY2tsaWNoa2VpdCByaW5nPwpEYXJrd2luZyB0ZWlsdCBEaXIgbWl0OiBqYWFhYSA6LSkpClJvbmRhIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCk1lbmFjZSB0ZWlsdCBEaXIgbWl0OiBpbW1lciEKU3JhYmkgdGVpbHQgRGlyIG1pdDogamEKVHJ1ZyB0ZWlsdCBEaXIgbWl0OiBpbW1lcgpOb3Zhc3Rvcm0gdGVpbHQgRGlyIG1pdDogS2xhYWFhYWFhYWFhYXIgOikKUGxvdGluIHRlaWx0IERpciBtaXQ6IGplcCAgCltBbGxnZW1laW46U2Nob2tvXSBKbyBKYXNwZXIgOykKSHVlcGZlciB0ZWlsdCBEaXIgbWl0OiBqYSBrbGFyIDopClJpbmdvciB0ZWlsdCBEaXIgbWl0OiBpY2ggd3VlcmRlIGlobiBsaWViZW5kZ2VybmUgbmVobWVuIDopCltBYmVudGV1ZXI6QmJveV0gbXVzcyBtYW4gZGFtaXQgbWFuIGRhcyBvZWwgZnVlciBkZW4gbGV1Y2h0dXJtIGZpbmRldCBkZW4KW0FiZW50ZXVlcjpCYm95XSBnYW56ZW4gdXJ3YWxkIGR1cmNoc3VjaGVuICh1bnQgd2VnLCB1bnQgcGZsYW56ZW4gLi4uKQpUYXJpbmEgdGVpbHQgRGlyIG1pdDogc2NobHVjayEgamEgOi0pCkhhc2VuZnVzcyB0ZWlsdCBEaXIgbWl0OiBKb29vb28hCkdhdmVyZWwgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KUmVhcGVyIHRlaWx0IERpciBtaXQ6IEFBQUFBQVJSUlJSUlJSUkdHR0dHR0dHSEhISEggISEhISEhISEhISEhIGlzdCBlaW4KUmVhcGVyIHRlaWx0IERpciBtaXQ6IHNjaGVyeiwgb2RlciBgPyEKTmFjaHR3aW5kIHRlaWx0IERpciBtaXQ6IGlzdCBkYXMgZWluIGdhZz86KQpCZWxnYXJpYWQgdGVpbHQgRGlyIG1pdDogaG1tIGcrMiB3dWVyZGUgcmVpY2hlbiBhYmVyIG5laG1lbiB0dSBpY2ggaWhuIGdlcm5lCktpbWFyIHRlaWx0IERpciBtaXQ6IGtsYXIhIDopCkFuYXRvbCB0ZWlsdCBEaXIgbWl0OiB3ZXIgYnJhdWNodCBkYXMgbmljaHQhPyA6KQpUeWxhayB0ZWlsdCBEaXIgbWl0OiBPaCwgamEgZ2VybmUuCk1lbmFjZSB0ZWlsdCBEaXIgbWl0OiB3bz8KQWx5c3NhIHRlaWx0IERpciBtaXQ6IGljaCB3dWVyZGUgbmllIG5laW4gc2FnZW4gOikpKSkKTmVzYWphIHRlaWx0IERpciBtaXQ6IGltbWVyIDopKSkpKQpbQWxsZ2VtZWluOlNjaG9rb10gSmFhYWFhYWFhYWFhYWFhYWFhYQpTZW5vIHRlaWx0IERpciBtaXQ6IEtsYXIhCkhleHhlciBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uCkdhdG8gdGVpbHQgRGlyIG1pdDogSmEgLSB1bmQgd2VubidzIGdlaHQgYXVjaCBlaW5lbiBBdXNkYXVlciArNCA7LSkKTWFsaWthIHRlaWx0IERpciBtaXQ6IGtsYXIsIHdhZXJlIHN1cGVyICEhIQpbQWxsZ2VtZWluOkphc3Blcl0gemFlaGwgbWFsIGRpZSB0ZWlsZSBtaXRzIDspClZhbXBpcmUgdGVpbHQgRGlyIG1pdDogd2VubiBkdSBlaW5lbiB1ZWJlciBoYXN0IGphIGJpdHRlCk1vcnJpc29uIHRlaWx0IERpciBtaXQ6IERhbmtlLCBpY2ggbXVzcyBsb3MuLi4KQW5hdG9sIHRlaWx0IERpciBtaXQ6IEd1dGVzIEVjaG9hbGwgdWVicmlnZW5zOiApCkJpZ3JhdCB0ZWlsdCBEaXIgbWl0OiBpbW1lciAuLiA7KQpHYWJpbG9uIHRlaWx0IERpciBtaXQ6IG5vZSwgYW4gc2ljaCBuaWNodCA6KSBJY2ggaWRsZSBlaCBudXIgaW4gZGVyIEdlZ2VuZCBydW0KR2FiaWxvbiB0ZWlsdCBEaXIgbWl0OiA6KSBBYmVyIGRhbmtlIGZ1ZXJzIGFuZ2Vib3QgOikKUm9uZGEgdGVpbHQgRGlyIG1pdDogZGFua2UgZnVlciBkYXMgQW5nZWJvdCAtIGljaCBjbG9uZSBtaXIgZWluZW4gPTopCkxlb25kcmlhIHRlaWx0IERpciBtaXQ6IG1laW5zdCBEdSBtaWNoPwpbQWxsZ2VtZWluOkphc3Blcl0gIGhlaGUKW0FsbGdlbWVpbjpTY2hva29dIEJlcnVoaWd0IGV1Y2ggOykKUmVhcGVyIHRlaWx0IERpciBtaXQ6IC4uLi4uLi4uLi4uLi4uLmFlaGguLi4uLi4uLi4uLi4uLi4uLi4uCk5hY2h0d2luZCB0ZWlsdCBEaXIgbWl0OiBlY2hvYWxsPzopCk92ZXJsb3JkIHRlaWx0IERpciBtaXQ6IGdlcm5lLiBpY2ggc2l0emUgYWxsZXJkaW5ncyBiZWkgbG9md3lyIGZlc3QuIG1vbSBpY2gKT3ZlcmxvcmQgdGVpbHQgRGlyIG1pdDogc2NoaWNrIG5lbiB6d2VpdGllCk5hY2h0d2luZCB0ZWlsdCBEaXIgbWl0OiBtaWVzIDopClNyYWJpIHRlaWx0IERpciBtaXQ6IHdvIHdvIHdvIHdvClJlYXBlciB0ZWlsdCBEaXIgbWl0OiBoYXN0ZSBlY2h0IGVpbmVuID8hPyE/IT8KVHJ1ZyB0ZWlsdCBEaXIgbWl0OiBhZWhtLCB3YXIgZGFzIHdpcmtsaWNoIGFuIG1pY2ggZ2VyaWNodGV0PwpTaWx2YW5hIHRlaWx0IERpciBtaXQ6IE5vZSwgaWNoIGhhYiBuZSAzMGVyIEdlc2NoaWNrbGljaGtlaXQsIGFiZXIgbWVpbmUKU2lsdmFuYSB0ZWlsdCBEaXIgbWl0OiBad2VpdGllIG5pbW10cyBnZXJuZS4uLiA6KQpUeWxhayBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpOamFsYSB0ZWlsdCBEaXIgbWl0OiBiZXN0ZW4gRGFuayAuLi4gaWNoIGJpbiBrZWluIFNwaWVsZXIKU2hhbmdUaSB0ZWlsdCBEaXIgbWl0OiBqYSBiaXR0ZQpTdGVlbHJhdCBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uCkplbWFuZCBiZXNjaHdvZXJ0IERlaW4gQmlsZCBoZXJhdWYuCkxlaWJuaXogdGVpbHQgRGlyIG1pdDoga2xhciBuZWhtIGljaCBlaW5lbiArNCByaW5nLi4uClJlYXBlciB0ZWlsdCBEaXIgbWl0OiAqbGVjaHoqCldpZGV3aXR0IHRlaWx0IERpciBtaXQ6IGVpZ2VudGxpY2ggd2lsbCBpY2ggZ3JhZCB1ZWJlbiwgaWNoIGdsYXViIGRhIGlzIGRlcgpXaWRld2l0dCB0ZWlsdCBEaXIgbWl0OiBuY2ljaHQgc28gZ2VzY2hpY2t0IC4uLiBhYmVyIGRhbmtlIGRlciBuYWNoZnJhZ2UgLi4uCldpZGV3aXR0IHRlaWx0IERpciBtaXQ6IGFiZXIgc2FnIG1pciBkb2NoIG1hbCwgd28gbWFuIGRlbiBiZWtvbW1lbiBrYW5uLCBmYWxscwpXaWRld2l0dCB0ZWlsdCBEaXIgbWl0OiBpY2ggbWFsIGVpbmVuIGJyYXVjaGVuIGthbm4KW0FsbGdlbWVpbjpBbHBoYV0gV2llIGhhc3RlIGRhdHQgZ2VtYWNodD8KU2VubyB0ZWlsdCBEaXIgbWl0OiBXaWUga29tbSBpY2ggenUgZGVyIEVocmUsIGlzdCBqYSBvYmVybmV0dCEhCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBSb2NodXMgaW4gUnVicmlrICJzY2htYXJybiIuCkJpZ3JhdCB0ZWlsdCBEaXIgbWl0OiBobW0gaWNoIGJpbiBhYmEgaW0gbW9tIGluIGRlciBrcmlzdGFsbGt1Z2VscXVlc3QKQmJveSB0ZWlsdCBEaXIgbWl0OiBrYW5uIGljaCBzaWNoZXJsaWNoIGdlYnJhdWNoZW4gKGVyaG9laHQgZXIgZGllIGdzIHVtICs0LApCYm95IHRlaWx0IERpciBtaXQ6IG9kZXI/KQpIYXNlbmZ1c3MgdGVpbHQgRGlyIG1pdDogV2VubiBEdSBlaW5lbiB6dXZpZWwgaGFzdCAuLiBnZXJuZS4KQmVsZ2FyaWFkIHRlaWx0IERpciBtaXQ6IGFkYW1hbnRzY2h1aGVuIGdsZWljaApTaGFuZ1RpIHRlaWx0IERpciBtaXQ6IGljaCBiaW4gYmxvc3MgZXR3YXMgd2VpdCBlbnRmZXJudCBpcyBzY2hsZWNodCB6dXIgemVpdApTdGVlbHJhdCB0ZWlsdCBEaXIgbWl0OiBzYW5kdGlnZXIKTWVuYWNlIHRlaWx0IERpciBtaXQ6IHdvIHNvbGwgaWNoIGhpbmtvbW1lbj8KSmVtYW5kIGJlc2Nod29lcnQgRGVpbiBCaWxkIGhlcmF1Zi4KVHJ1ZyB0ZWlsdCBEaXIgbWl0OiB3byBrYW5uIGljaCBkaWVzZW4gYWJob2xlbj8KU08gd2FyIGRhcyA7KSkKClNjaG9rbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2Nob2tvLCBkZXIgU2NocmVja2VuIGFsbGVyIE1vbnN0ZXIgKFJpbmdvciwgMjYuIEp1biAxOTk4LCAxMjozMDowNCk6ClVuZ2VzY2huaXR0ZW46CgpTY2hva28gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKWzxNYXN0ZVI+OlNjaG9rbyBsYWVzc3QgZGllIEViZW5lICdzZW1tZWwnIGVudHN0ZWhlbi5dCkRlaW4gRnJldW5kIFNjaG9rbyBrbnVkZGVsdCBEaWNoIHp1ciBCZWdydWVzc3VuZyBhdXMgZGVyIEZlcm5lLiBbMTI6MjddCkRlaW4gRnJldW5kIFNjaG9rbyB0ZWlsdCBEaXIgbWl0OiBNb2luCltCZWlsZWlkOlNBVEFOXSBIdXBwcywgbXVzcyBpY2ggamV0enQgQW5nc3QgYmVrb21tZW4/CgoKUmluZ29yIG1laW50OiBKYS4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2Nob2tvLCBkZXIgU2NocmVja2VuIGFsbGVyIE1vbnN0ZXIgKE1vcmdvdGgsIDI2LiBKdW4gMTk5OCwgMTI6NTk6MzYpOgp+IyEgcm49UmluZ29yIHJ0PTg5ODg1NzAwNCByZz1zY2htYXJybgp+IyEgdGlkPTg5ODg1NzAwNApNb3Jnb3RoIG1laW50OiBwb2VoIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2VoZWltZXMgVm9lbGtjaGVuIChGZXVlcndlaHIsIDI2LiBKdW4gMTk5OCwgMTM6MDM6NDMpOgpHcmFkZSBnZWhvZXJ0OgoKU2VydmVydXMgc2FndCBjaGFvdGlzY2g6ICoKRnJlaXRhZyBzYWd0IGNoYW90aXNjaDogJApEdSBzYWdzdCBjaGFvdGlzY2g6ID8KPiBJcmEgc2FndCBjaGFvdGlzY2g6ICMKRnJlaXRhZyBzYWd0IGNoYW90aXNjaDogPD4KSXJhIHNhZ3QgY2hhb3Rpc2NoOiA8Pj8gLyEKCk5hIG51IHZlcnN1Y2h0IG1hbCwgZGllc2VuIENvZGUgenUgZW50emlmZmVybiA6LSkuCgogIEZldWVyd2Voci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFJlaXNlc3lzdGVtIChHcmltbWJvcm4sIDI2LiBKdW4gMTk5OCwgMTU6MTY6MzYpOgp+IyEgb249R3JpbW1ib3JuIG90PTg5ODg2NTkwMyBvZz1hbGxnZW1laW5lcwp+IyEgcm49VmFtcHkgcnQ9ODk4ODY1NDI0IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODk4NjkxMzEwCkRlaW5lIEFyZ3VtZW50YXRpb25zd2Vpc2UgaXN0IHNjaGxpY2h0IHp1bSBLb3R6ZW4uICJ1ZWJlcmFsbCBzaWVodCBtYW4gZGFzClZvcnRzY2hyaXR0IHNlaW4gbXVzcyB1bmQgdW5hdWZoYWx0c2FtIGlzdC4iCgpFcyBnaWJ0IHp3ZWkgQXJ0ZW4gdm9uIE5hcnJlbi4uLiAoMjAgaWxsZWdhbCBnZWNsb250ZSBNdWVuemVuIGZ1ZXIgZGllCmtvcnJla3RlIEVyZ2Flbnp1bmcgZGVzIFNhdHplcyEpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFJlaXNlc3lzdGVtIChHcmltbWJvcm4sIDI2LiBKdW4gMTk5OCwgMTU6MTY6NDYpOgp+IyEgb249RW5kZXIgb3Q9ODk4ODY2NDA5IG9nPWFsbGdlbWVpbmVzCn4jISBybj1HcmltbWJvcm4gcnQ9ODk4ODY1OTAzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODk4NjkxMzEwCkRlZmluaWVyZSBtYWwgVm9ydHNjaHJpdHQsIGRhbm4gYmVrb21tc3QgZHUgdmllbGVpY2h0IG5lIEVyZ2Flbnp1bmcuCkVuZGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUmVpc2VzeXN0ZW0gKEdyaW1tYm9ybiwgMjYuIEp1biAxOTk4LCAxNToxNjo1Mik6Cn4jISBvbj1Sb2NodXMgb3Q9ODk4ODY2NjgxIG9nPWFsbGdlbWVpbmVzCn4jISBybj1HcmltbWJvcm4gcnQ9ODk4ODY1OTAzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9ODk4NjkxMzEwCkVzIGdpYnQgendlaSBBcnRlbiB2b24gTmFycmVuLi4uCkRpZSBlaW5lbiBzYWdlbiwgZGFzcyBpc3QgYWx0IHVuZCBkZXNoYWxiIGd1dC4KRGllIGFuZGVyZW4gc2FnZW4sIGRhcyBpc3QgbmV1IHVuZCBkZXNoYWxiIGJlc3Nlci4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKb2huIEJydW5uZXIsIGRlciBTY2hvY2t3ZWxsZW5yZWl0ZXIKKFNvIG11c3N0IER1IGRpZSBNdWVuemVuIHdlbmlnc3RlbnMgbmljaHQgSUxMRUdBTCBjbG9uZW4gOi0pCgogIFJvY2h1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUmVpc2VzeXN0ZW0gKEdyaW1tYm9ybiwgMjYuIEp1biAxOTk4LCAxNToxNzo0Mik6Cn4jISBybj1HcmltbWJvcm4gcnQ9ODk4ODY2OTk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk4NjkxMzEwCkljaCBoYXR0ZSBnZWRhY2h0LCBpY2ggaGFldHRlIGRhcyBpbiBzY2htYXJybiBnZXBvc3RldC4gRHVyY2ggcmwtQWJsZW5rdW5nIGhhYgppY2ggZGFzIGEpIG5pY2h0IGdlbWFjaHQgdW5kIGIpIG5pY2h0IHNvIHNjaG5lbGwgYmVtZXJrdC4gSWNoIGhhYiBkYXMgYWxzbwpzYW10IHJlcGxpZXMgaGllcmhpbiB2ZXJsZWd0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbmdlc2NoaWNrdGUgTWFnaWVyLi4uLiAoS2V5LCAyNi4gSnVuIDE5OTgsIDE3OjMxOjE0KToKfiMhIHJuPVJvY2h1cyBydD04OTg4MDA4NTEgcmc9c2NobWFycm4KfiMhIHRpZD04OTg4MDA4NTEKSkEhISEhIC4pKQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzZWxic3RlcmZ1ZWxsZW5kZSBwcm9waGV6ZWlodW5nPyAoVGhlcmluLCAyNi4gSnVuIDE5OTgsIDIzOjE4OjU2KToKSGF0IHNpY2ggendhciBhdWYgZXR3YXMgYW5kZXJlcyBiZXpvZ2VuLCBwYXNzdCBhYmVyIGRlbm5vY2ggZ3V0IHp1c2FtbWVuCltTZWhlcjpTdGluZ10gaXN0IHNjaG9uIGFsbGVzIHRvdCA6KQpbVG9kOkxhcnNdIEVpbiBVbmZhbGwgaW0gSG9jaGdlYmlyZ2UgaGF0IGdlcmFkZSBTaGFubmFyYSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBVbmZhbGwgaW0gSG9jaGdlYmlyZ2VdIFdlciB2aWVsIHdhZ3QsIGthbm4gYXVjaCB2aWVsIHZlcmxpZXJlbi4uLgpbQmVpbGVpZDpTdGluZ10gYXJnbCwgYmVpbGVpZApbQmVpbGVpZDpCaWVsZWZlbGRdIHRqYQoKKC4uKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG5lbGxlciBhbHMgZXMgZGFzIGluZm9ybSBlcmxhdWJ0IChUaGVyaW4sIDI3LiBKdW4gMTk5OCwgMDA6MDY6MDgpOgoKPiBEZWluIEZyZXVuZCBTd2lmdCBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuClN3aWZ0IGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KCmhtbS4uIGRlciB1ZWJlcmhvbHQgc2VsYnN0IGRhcyBpbmZvcm0uLi4gc293YXMgY2hhb3Rpc2NoZXMKClQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2NobmVsbGVyIGFscyBlcyBkYXMgaW5mb3JtIGVybGF1YnQgKFRyZWthbiwgMjcuIEp1biAxOTk4LCAwMDowNjo1Nyk6Cn4jISBybj1UaGVyaW4gcnQ9ODk4ODk4NzY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk4ODk4NzY4CnRzdHMgLi4gZGFzIGdsZWljaGUgaXMgbWlyIGF1Y2ggZ3JhZCBhdWZnZWZhbGxlbiA7KSkpKSkKVHJla2FuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpjaGFvdGVuIDopIChCaWVyY2hlbiwgMjcuIEp1biAxOTk4LCAwNDo0OToxOCk6ClN3aWZ0IHNhZ3Q6IENoYW9zIHJ1bGV6ISEhCltEZWJ1ZzpQYXJhY2Vsc3VzXSBGZWhsZXI6ICJGYWlsZWQgdG8gbG9hZCBmaWxlLiIsIE9iamVrdDoKW0RlYnVnOlBhcmFjZWxzdXNdIGQvd2FsZC9wYXJhY2Vsc3VzL21vbi9rYXJsbGEjMjEwMDkzLCBQcm9ncmFtbToKW0RlYnVnOlBhcmFjZWxzdXNdICIvZC93YWxkL3BhcmFjZWxzdXMvbW9uL2thcmxsYS5jIiwgWmVpbGUgOTIgKExpbGlwdXQpCltEZWJ1ZzpQYXJhY2Vsc3VzXSBGZWhsZXI6ICJGYWlsZWQgdG8gbG9hZCBmaWxlLiIsIE9iamVrdDoKW0RlYnVnOlBhcmFjZWxzdXNdIGQvd2FsZC9wYXJhY2Vsc3VzL21vbi9rYXJsbGEjMjEwMDkzLCBQcm9ncmFtbToKW0RlYnVnOlBhcmFjZWxzdXNdICIvZC93YWxkL3BhcmFjZWxzdXMvbW9uL2thcmxsYS5jIiwgWmVpbGUgOTIgKExpbGlwdXQpClN3aWZ0IHNhZ3Q6IGhtbW0KCmdyaW5zIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogY2hhb3RlbiA6KSAoVGVkZHksIDI3LiBKdW4gMTk5OCwgMDQ6NTI6MDkpOgp+IyEgcm49QmllcmNoZW4gcnQ9ODk4OTE1NzU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk4OTE1NzU4CkRhYmVpIGlzdCBkYXMgbmljaHQgZGFzIGVyc3RlIE1hbCA7KQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvIGdlaHRzIGF1Y2ggOykgKERlbnRpLCAyNy4gSnVuIDE5OTgsIDE1OjE1OjE4KToKCltaYXViZXJlcjpMbHlzdHJhdGhlXSBNdHYgaGF0IGRpZSBHaWxkZW4tQXVmZ2FiZTogJ01haVRhbkxpbnMgV3Vuc2NoJyBnZWxvZXN0LgpbWmF1YmVyZXI6TXR2XSBkYW5rZQpbWmF1YmVyZXI6TXR2XSBncmF0cwoKRWluIGdyaW5zZW5kZXIgRGVudGkuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYmVpIENoaWxhbmEgKE92ZXJsb3JkLCAyNy4gSnVuIDE5OTgsIDE4OjMyOjQ2KToKPnVudCBwcmVzc2UKRGllIFByZXNzZSB3aXJkIENoaWxhbmEgZ2VybmUgd2llZGVyaGFiZW4gd29sbGVuLgo+Z2liIHByZXNzZSBhbiBjaGlsYW5hCkR1IGdpYnN0IGRpZSBQcmVzc2UgYW4gQ2hpbGFuYS4KQ2hpbGFuYSBiZWRhbmt0IHNpY2guCkJlYWNodGUgZGllc2VzIG5pY2h0OiBEaWUgUHJlc3NlIHdpcmQgQ2hpbGFuYSBnZXJuZSB3aWVkZXJoYWJlbiB3b2xsZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnaWxkZW4uc2NobWFycm4gKEJpZXJjaGVuLCAyNy4gSnVuIDE5OTgsIDE4OjQ4OjA5KToKfiMhIG9uPUFuYXRvbCBvdD04OTg5NjE1MDYgb2c9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCltTZWhlcjpCaWVyY2hlbl0gZ2VodCBkYXMgc2Nob24gd2llZGVyIGxvcy4gd2VubiBpaHIgd29sbHQsIGRhc3MgZGllIGdpbGRlbgpbU2VoZXI6QmllcmNoZW5dIG5pY2h0IG5hY2ggb2JlbiBnZWRyZWh0IHdlcmRlbiwgc2V0enQgZXVjaCBtYWwgZGFmdWVyIGVpbiwKW1NlaGVyOkJpZXJjaGVuXSBkYXNzIGRpZSBydWVzdHVuZ3NzcGlyYWxlIGJlaSBkZW4gbnBjcyBhdWZob2VydC4gZ2lidCBqYSBub2NoCltTZWhlcjpCaWVyY2hlbl0ga2F1bSBuZW4gbmV1ZW4sIGRlciBuaWNodCBpbiBpcmdlbmR3ZWxjaGVuIGdpbGRlbiBpc3QgdW5kCltTZWhlcjpCaWVyY2hlbl0gdW52ZXJzY2hhZW10ZSBmYWVoaWdrZWl0ZW4gZGFvbiBoYXQKW1NlaGVyOkJpZWxlZmVsZCBtdXNzIEJpZXJjaGVuIGRhIG1hbCB6dXN0aW1tZW4uXQoKKlBSVVNUKgpEYXMgaXN0IGRpZSBtaXQgQWJzdGFuZCB1bnNpbm5pZ3N0ZSBSZWNodGZlcnRpZ3VuZywgZGllIGljaCBqZW1hbHMgZ2Vob2VydApoYWJlLiBBbGxlaW4gZGVyIFVtc3RhbmQsIGRhc3MgQXVzbmFobWVzZWhlciwgZGllIGluIGVpbmVyIGFuZXJrYW5udCBzY2h3YWNoZW4KR2lsZGUgc2luZCAoZGllc2UgR2lsZGVuIHNpbmQgdm9tIEF1c3N0ZXJiZW4gYmVkcm9odCksIGdhbnogb2JlbiBtaXRtaXNjaGVuLApiZXdlaXN0LCBkYXNzIG1pdCBkZW0gcmljaHRpZ2VuIEtub3ctSG93IGplZGVzIE1vbnN0ZXIgZmFlbGx0LCBkYXMgbWl0CmRlbSBaaWVsIHp1IGZhbGxlbiBnZXNjaGFmZmVuIHd1cmRlLiBNeXVuZyB1bmQgYWVobmxpY2hlIFNjaGVyemUgc3RlaGVuCmdsdWVja2xpY2hlcndlaXNlIE5JQ0hUIHp1ciBEZWJhdHRlLgoKU2V0emVuLCBCaWVyY2hlbi4gNi4KCkFuYXRvbCAqZmxhbWUgb24qCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGV1ZmVsIHJ1ZnQ6IEJFRUVFTFpFQlVCPyA6KSAoQW5hdG9sLCAyNy4gSnVuIDE5OTgsIDIwOjEyOjA0KToKTW9yZ290aCBydWZ0OiBQQURSRUlJSUlJSUNDQyAqKldVRVJHKioKCk5vIGNvbW1lbnQgOykKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGNoYW90ZW4gOikgKE1vcmdvdGgsIDI3LiBKdW4gMTk5OCwgMjA6MTM6MzUpOgp+IyEgcm49QmllcmNoZW4gcnQ9ODk4OTE1NzU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk4OTE1NzU4CndpZSB3YXIgZGFzIG1pdCBwZmFkbmFtZW4gaW4gc3BpZWxlci1ydWJyaWtlbj8/CgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbmF0b2wsIDI4LiBKdW4gMTk5OCwgMDA6NDg6MzkpOgpbU2VoZXI6RnJvZ2h1bnRlcl0gS29tbXQgamVtYW5kIG1pdCB1bSBlaW4gcGFhciBHcnVtbWVsYmVpc3NlciB6dSBraWxsZW4gPyBJY2gKW1NlaGVyOkZyb2dodW50ZXJdIGhhYnMgbm9jaCBuaW0KW1RvZDpMYXJzXSBFaW4gc2Nod2FyemVyIEdydW1tZWxiZWlzc2VyIGhhdCBnZXJhZGUgRnJvZ2h1bnRlciB1bWdlYnJhY2h0LgpbVG9kOkVpbiBzY2h3YXJ6ZXIgR3J1bW1lbGJlaXNzZXJdIEdydW1tZWwgR3J1bW1lbCBHcnVtbWVsIQoKSHVwcy4KQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RhbW10aXNjaCBEb3J0bXVuZCA7KSAoVGVkZHksIDI4LiBKdW4gMTk5OCwgMDM6NDU6MDkpOgpIaWhvLAoKaGllciBkaWUgJ0hvZWhlcHVua3RlJyBkZXMgbGV0enRlbiBEb3J0bXVuZGVyIFN0YW1tdGlzY2hlczoKClJpbmdvcjogJ0ljaCBtYWcgZGFzIG5pY2h0LCBpY2ggbWFjaCdzIG1pciBsaWViZXIgc2VsYmVyLicgCgpLdXJ6IGRhcmF1ZjogCk5hY2h0d2luZCBoYXR0ZSBpcmdlbmR3byB3YXMgaW4gZGVyIEFydDogSWNoIGhhYiBkZW4gR3JvZXNzdGVuIHVuZCBMYWVuZ3N0ZW4KZ2VzY2hyaWViZW4uIApEYXJhdWYgTWluZGJsYWRlOiAnSWNoIHdlaXNzIHNjaG9uLCB3YXJ1bSBpY2ggbWl0IGRlbSBLZXJsIHZlcmxvYnQgYmluLicKCgpUZWRkeSwgb2huZSBHYXJhbnRpZSBvZGVyIEFuc3BydWNoIGF1ZiBWb2xsc3RhZW5kaWdrZWl0LgoKU0NOUiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdGFtbXRpc2NoIERvcnRtdW5kIDspIChUZWRkeSwgMjguIEp1biAxOTk4LCAwMzo0Njo0MSk6Cn4jISBybj1UZWRkeSBydD04OTg5OTgzMDkgcmc9c2NobWFycm4KfiMhIHRpZD04OTg5OTgzMDkKQXVmIGJlc29uZGVyZW4gV3Vuc2NoOgoKW1NlaGVyOlJpbmdvcl0gZGVyIGlzdCB0b3RhbCBmYWxzY2ggeml0aWVydC4gZGFzIHdhciAibmVpbiwgZGFzIHdpbGwgaWNoCltTZWhlcjpSaW5nb3JdIG5pY2h0LiBpY2ggYmVzb3JncyBtaXIgaW1tZXIgc2VsYnN0Ii4gd2VubiBzY2hvbiwgZGFubiByaWNodGlnLgpbU2VoZXI6UmluZ29yXSA8MDM6NDU6NDU+CgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT3V0IE9mIENvbnRleHQgRXJyb3IgKEFuYXRvbCwgMjguIEp1biAxOTk4LCAxODozMDozOCk6CltTZWhlcjpUaGVyaW4gaGF0cyBkYXMgZXJzdGUgbWFsIG9obmUgZ2VtYWNodCwgd2VubiBkdSBkaWNoIGVyaW5uZXJzdF0KCldFTiBtZWludGUgZXIgZGFtaXQgamV0enQ/CgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFeHRyYSBmdWVyIEx1ZyAoVGhlcmluLCAyOC4gSnVuIDE5OTgsIDE4OjM3OjI4KToKCkpldHp0IGhhdCBlciBkb2NoIGdlaGVpcmF0ZXQgdW5kIGR1IHdhcnN0IG5pY2h0IGRhLi4uLgpBbmF0b2wgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IE9zbmFicnVlY2suCkVpbmdlbG9nZ3Qgc2VpdDogTWl0LCAyNC4gSnVuIDE5OTgsIDEzOjIxOjIzClZvbGxlciBOYW1lOiBUdXJ0bGVndWFyZCBBbmF0b2wgdHJhZXVtdCB2b24gZWluZXIgYmVzcydyZW4gV2VsdApSYXNzZTogRWxmLCAgR2lsZGU6IFphdWJlcmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAyMDdkIDA5OjEwOjEwLCAgIFNwaWVsZXJsZXZlbDogNTAgKFNlaGVyKSwgICBHaWxkZW5sZXZlbDogOQpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiB2b3IgZGVtIDEwLiBOb3YgMTk5NQpWZXJoZWlyYXRldCBtaXQ6IERlciBLb2VuaWdpbiBkZXIgRHVua2VsZWxmZW4KQmlzaGVyIGJlcmVpdHMgMTUgbWFsIGdlc3RvcmJlbgpQcm9qZWt0OiBXaGF0ZXZlciBjb21lcywgZmFjZSBpdCBvbiB5b3VyIGZlZXQuIChhbCdMYW4gTWFuZHJhZ29yYW4pCgpBYmVyIGVpbmdlbGFkZW4gaGF0IGVyIHVucyBhdWNoIG5pY2h0Li4uLgoKVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoUmluZ29yLCAyOC4gSnVuIDE5OTgsIDIyOjA5OjE3KToKW1RydmVzOkZyb2dodW50ZXJdIFdpciBtYWNoZW4gaGllciBzY2hvbiBlaW4gcGFhciByZXNldHMgYmVpIGRlbgpbVHJ2ZXM6RnJvZ2h1bnRlcl0gR3J1bW1lbGJlaXNzZXJuIGR1cmNoLiBXaWxsIG5vY2ggamVtYW5kIG1pdG1hY2hlbiA/IFdpcgpbVHJ2ZXM6RnJvZ2h1bnRlcl0gYnJhdWNoZW4gVmVyc3RhZXJrdW5nIDopIDwyMjowNTo1OT4KCltUb2Q6TGFyc10gRWluIG1hZ2lzY2ggYmVnYWJ0ZXIgc2Nod2FyemVyIEdydW1tZWxiZWlzc2VyIGhhdCBnZXJhZGUgRnJvZ2h1bnRlcgpbVG9kOkxhcnNdIHVtZ2VicmFjaHQuIDwyMjowNjo1MT4KW1RvZDpFaW4gbWFnaXNjaCBiZWdhYnRlciBzY2h3YXJ6ZXIgR3J1bW1lbGJlaXNzZXJdIEhvbW1tbW1tIG5vZWxlZ3J1bW0KW1RvZDpFaW4gbWFnaXNjaCBiZWdhYnRlciBzY2h3YXJ6ZXIgR3J1bW1lbGJlaXNzZXJdIHNpbmdzYW5nIEdydW1tZWwhCltUb2Q6RWluIG1hZ2lzY2ggYmVnYWJ0ZXIgc2Nod2FyemVyIEdydW1tZWxiZWlzc2VyXSA8MjI6MDY6NTE+CgoKUmluZ29yIHNhZ3Q6IHEuZS5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdHlwb3MuLi4gKExpbGxlYnJvciwgMjkuIEp1biAxOTk4LCAwNDo1Mjo0Myk6CgplYmVuIGFtIHNhbmR0aWdlcjogSHlwbyBsYWVzc3QgZGFzIFR5cG8gZmFsbGVuLgoKTGlsbGVicm9yLCBpbW1lciBub2NoIGtpY2hlcm5kIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXIgVHJvbGwgaXMgdm9sbCEgO28pIChUdW5peGd1dCwgMjkuIEp1biAxOTk4LCAwODowNjo1Nik6Ckt1cnplbiBEdW1tY2hlbi1UZXN0IGdlbWFjaHQ6CkltIFRyb2xsd2VnLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiB1bmQgbm9yZGVuLgpFaW4gVHJvbGwuCj4gc3RlY2tlIHRyb2xsIGluIG11ZWxsc2FjawpEZXIgVHJvbGwgaXN0IG5pY2h0IGxlZXIgIQoKJ3MgS2FyYXRlLVp3ZXJjaGxlIC0ga2ljaGVybmQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTW9yZ290aCwgMjkuIEp1biAxOTk4LCAxNToxMzoyMyk6ClRhbWVsaSB0ZWlsdCBEaXIgbWl0OiB3YXMgaGFiZW4gZGkgZW51ciBmdWVyIHByb2JsZW1lIGF1ZiAtYSA/PwpbVG9kOkxhcnNdIEVpbmUgYnJlbm5lbmRlIEJydWVja2UgaGF0IGdlcmFkZSBUYW1lbGkgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKFR1bml4Z3V0LCAyOS4gSnVuIDE5OTgsIDE1OjE0OjMxKToKfiMhIHJuPU1vcmdvdGggcnQ9ODk5MTI2MDAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk5MTI2MDAzClByb2JsZW1FPyBEaWUgaGF0dGVuIGRvY2ggbnVyIGVpbmVzISA7bykKRWluZXMsIGRhcyBtaXQgTSBhbmZhZW5ndCB1bmQgbWl0IG9yZ290aCBhdWZob2VydC4uLgoncyBLYXJhdGUtWndlcmNobGUgLSBiZXJlaXRzIGluIERlY2t1bmcuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClR5cGlzY2ggTWFlbm5lci4uIChaZXBoeXIsIDI5LiBKdW4gMTk5OCwgMTc6MjY6MDYpOgpEdSB0ZWlsc3QgZGVpbmVuIEZyZXVuZGVuIG1pdDogc28uLiBpY2ggdmVyemllaCBtaWNoIG1hbC4uIG1hIHNlaG4gb2IKRHUgdGVpbHN0IGRlaW5lbiBGcmV1bmRlbiBtaXQ6IGljaCBkZW4gc2VpdCAzIFdvY2hlbiB3YWNoc2VuZGVuIFN0YXBlbApEdSB0ZWlsc3QgZGVpbmVuIEZyZXVuZGVuIG1pdDogQnVlZ2Vsd2Flc2NoZSBrbGVpbmtyaWVnIDopCkRlaW4gRnJldW5kIEl2byB0ZWlsdCBEaXIgbWl0OiBuaW1tIG5lIGdyb3NzZSBzY2h3ZXJlLCBjNApNb3Jnb3RoIHRlaWx0IERpciBtaXQ6IGhpaGloaQpBbGluZSB0ZWlsdCBEaXIgbWl0OiBoYWV0dGVzdGUgZGFzIGVoZXIgZ2VzYWd0Li4uCkRlaW4gRnJldW5kIE5vdmFzdG9ybSB0ZWlsdCBEaXIgbWl0OiBlaW4gbXVlbGxlaW1lciBwYXNzdCBkYSBiZXN0aW1tdCBhdWNoIEM0CkRlaW4gRnJldW5kIE5vdmFzdG9ybSB0ZWlsdCBEaXIgbWl0OiA7LSkKVHN1bmFtaSB0ZWlsdCBEaXIgbWl0OiAqZ3V0IGJ1ZWdlbCogOikpIGljaCBtdWVzc3RlIGF1Y2ggbWFsIHdpZWRlciwgYWJlciBkYXMKVHN1bmFtaSB0ZWlsdCBEaXIgbWl0OiBXZXR0ZXIgaXN0IHNvIHNjaG9lbiA6KQpBbGluZSB0ZWlsdCBEaXIgbWl0OiBoZXV0ZSBoYWIgaWNoIG51ciBub2NoIDIgQmx1c2VuIHVlYnJpZy4uLi4KUmlrdXMgdGVpbHQgRGlyIG1pdDogbWFjaHN0IGR1IG1laW5lIHdhZXNjaGUgYXVjaD8gOi0pCkR1IHRlaWxzdCBkZWluZW4gRnJldW5kZW4gbWl0OiBpY2ggaGF0dGUgZWluZmFjaCBrZWluZSBMdXN0IHVuZCBub2NoCkR1IHRlaWxzdCBkZWluZW4gRnJldW5kZW4gbWl0OiBnZW51ZyBpbSBTY2hyYW5rIDopCkphbWVzb24gdGVpbHQgRGlyIG1pdDogZGlyIGdlaGVuIHdvaGwgZGllIEtsYW1vdHRlbiBhdXMgd2FzICpraWNoZXIqCkR1IHRlaWxzdCBBbGluZSBtaXQ6IHBmdCA6KQpEZWluIEZyZXVuZCBOb3Zhc3Rvcm0gdGVpbHQgRGlyIG1pdDogYnR3LCBtYWdzdGUgbWVpbmUgbWl0YnVlZ2VsIGM0ID8gPjopCkRlaW5lIEZyZXVuZGluIEFsaW5lIHRlaWx0IERpciBtaXQ6IGpldHp0IGhhYiBpY2ggc2Nob24gZ2VzdGVybiBnZWJ1ZWdlbHQKRHUgdGVpbHN0IGRlaW5lbiBGcmV1bmRlbiBtaXQ6IE5FSU4sIERVIE1BQ0hTVCBERUlORSBXQUVTQ0hFIEdFRkFFTExJR1NUCkR1IHRlaWxzdCBkZWluZW4gRnJldW5kZW4gbWl0OiBTRUxCRVIgOikKRGVpbiBGcmV1bmQgTW9yZ290aCB0ZWlsdCBEaXIgbWl0OiBoZXkgaGV5IHplcGh5ciwgZGVpbmUgY2Fwcy1sb2NrIHRhc3RlCkRlaW4gRnJldW5kIE1vcmdvdGggdGVpbHQgRGlyIG1pdDoga2xlbW10CkRlaW5lIEZyZXVuZGluIEFsaW5lIHRlaWx0IERpciBtaXQ6IE5BIEdVVCEgQWJlciBpY2ggaGFldHRlIGRhIG5vY2ggRmVuc3RlciB6dQpEZWluZSBGcmV1bmRpbiBBbGluZSB0ZWlsdCBEaXIgbWl0OiBwdXR6ZW4gOykKRGVpbiBGcmV1bmQgUmlrdXMgdGVpbHQgRGlyIG1pdDogb29vY2ggYml0dGUsIGM0CkRlaW4gRnJldW5kIE1vcmdvdGggdGVpbHQgRGlyIG1pdDogaWNoIGhhZXR0ZSBlaW5tYWwgc3B1ZWxlbiwgZWlua2F1ZmVuIHVuZApEZWluIEZyZXVuZCBNb3Jnb3RoIHRlaWx0IERpciBtaXQ6IHdpc2NoZW4gYW56dWJpZXRlbgpEZWluIEZyZXVuZCBUdW5peGd1dCB0ZWlsdCBEaXIgbWl0OiAoKnNldWZ6KikgR2VodCBkYXMgbmV0IGF1Y2ggdWViZXIKRGVpbiBGcmV1bmQgVHVuaXhndXQgdGVpbHQgRGlyIG1pdDogdGVpbGUtbWl0cz8/PwpEZWluZSBGcmV1bmRpbiBBbGluZSB0ZWlsdCBEaXIgbWl0OiBDbG9uZCBEaXIgZG9jaCBlaW5mYWNoIG5ldWVzIEdlc2NoaXJyLApEZWluZSBGcmV1bmRpbiBBbGluZSB0ZWlsdCBEaXIgbWl0OiBNb3Jnb3RoCgpncmluc2VuZCwKICAgICAgICAgICAgWmVwaHlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTY2huYXV6ZSB2b2xsISAoRW1iZSwgMjkuIEp1biAxOTk4LCAxODozNDo1NCk6Cn4jISBybj1UcnVnIHJ0PTg5OTEyODE0MyByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9ODk5MDYxMzEwCmJsb3Mgd2VpbCBpY2ggcGFyYW5vaWQgYmluLApoZWlzc3QgZGFzIG5vY2ggbGFuZ2UgbmljaHQsIApkYXNzIGljaCBuaWNodCB2ZXJmb2xndCB3ZXJkZSEKCmVNYmVlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2NobmF1emUgdm9sbCEgKFRlZGR5LCAyOS4gSnVuIDE5OTgsIDIyOjAzOjIxKToKfiMhIHJuPUVtYmUgcnQ9ODk5MTM4MDk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk5MDYxMzEwCkhleSwgZGFzIGlzdCBlaW4gWml0YXQgYXVzIFJvY2t5IEhvcnJvciwgbWFya2llciBkYXMgd2VuZ3N0ZW5zIDspCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmFsbGVuIChUcmVrYW4sIDI5LiBKdW4gMTk5OCwgMjI6MjA6MDgpOgppbiBkZXIgc2VpbGZhbGxlIGRlciByYWV1YmVyOgpbLi4uXQpEdSB6dWVja3N0IEtvY2hsb2VmZmVsLgpEdSB6ZXJzY2huZWlkZXN0IGRhcyBTZWlsIHVuZCBmYWVsbHN0IHp1IEJvZGVuISAKVHJla2FuIHNjaG11bnplbHQgZWluIHdlbmlnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdWNodGJla2VubnRuaXNzZS4uLiAoQW5hdG9sLCAyOS4gSnVuIDE5OTgsIDIyOjI5OjE1KToKRHUgdGVpbHN0IGRlaW5lbiBGcmV1bmRlbiBtaXQ6ICpzZXVmeiogSWNoIGJpbiBuaWNodCBzdWVjaHRpZy4KTWFoYXRtYSB0ZWlsdCBEaXIgbWl0OiBuZWVlZWlpaWluIDopClJpbmdvciB0ZWlsdCBEaXIgbWl0OiBpcyBkb2NoIGtlaW5lciB2b24gdW5zLCBvZGVyPwpEZWluZSBGcmV1bmRpbiBUaG9yIHRlaWx0IERpciBtaXQ6IHVuZCBpY2ggYmluIGtlaW4gendlcmcKUm9uZGEgdGVpbHQgRGlyIG1pdDogRHUgYmlzdCBuaWNodCBzdWVjaHRpZyA7KSBOdXIgYWJoYWVuZ2lnIDopCkZldWVyd2VociB2ZXJ3dXNjaGVsdCBEZWluZSBIYWFyZSB6aXR0ZXJuZCB1bmQgc2FiYmVybmQgYXVzIGRlciBGZXJuZS4KCipzZXVmeioKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNb3Jnb3RoLCAzMC4gSnVuIDE5OTgsIDExOjE5OjE4KToKW0FsbGdlbWVpbjpNYWdpY29sbGldIEp1Y2hodSBpY2ggc3RlcmJlIGdsZWljaC4uLgpbQWxsZ2VtZWluOk5vdmFzdG9ybV0gY29vb29vbAouLi4uLgpbVG9kOkxhcnNdIERlciBVcnN1bXBmIGhhdCBnZXJhZGUgTWFnaWNvbGxpIHVtZ2VicmFjaHQuCltUb2Q6RGVyIFVyc3VtcGYgaGF0IG1hbCB3aWVkZXIgZWluIE9wZmVyIGdlZnVuZGVuLl0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldHQgOyAoVGVkZHksIDMwLiBKdW4gMTk5OCwgMTM6Mzk6MDcpOgp1bmdlc2Nobml0dGVuOgoKW0FsbGdlbWVpbjpSb2NodXNdIGljaCBiaW4gdWVicmlnZW5zIGpldHp0IDMwMCBnZXdvcmRlbiA6LSkKW01vZXJkZXI6R2Vpc3QgZWluZXMgQnJ1ZGVycyBkZXMgU2Nod2VydG1laXN0ZXJzXSBOaWV0ZSBpc3Qgc3RhZXJrZXIgYWxzIGljaApbTW9lcmRlcjpHZWlzdCBlaW5lcyBCcnVkZXJzIGRlcyBTY2h3ZXJ0bWVpc3RlcnNdIGRhY2h0ZS4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldHQgOyAoTW9yZ290aCwgMzAuIEp1biAxOTk4LCAxMzozOTo0Nyk6Cn4jISBybj1UZWRkeSBydD04OTkyMDY3NDcgcmc9c2NobWFycm4KfiMhIHRpZD04OTkyMDY3NDcKSG0sIHdvIGlzdCBkZXIgV2l0ej8/Ck0qIChncnVlYmVsbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldHQgOyAoVGVkZHksIDMwLiBKdW4gMTk5OCwgMTM6NDA6MjgpOgp+IyEgcm49TW9yZ290aCBydD04OTkyMDY3ODcgcmc9c2NobWFycm4KfiMhIHRpZD04OTkyMDY3NDcKV2llIGtvbW1zdCBkdSBoZXV0ZSBlaWdlbnRsaWNoIHdpZWRlciBuYWNoIEhhdXNlPwoKU2llaHN0IGR1IGpldHp0IGRlbiBXaXR6PyAKCnRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXR0IDsgKE1vcmdvdGgsIDMwLiBKdW4gMTk5OCwgMTM6NDA6NTYpOgp+IyEgcm49VGVkZHkgcnQ9ODk5MjA2ODI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk5MjA2NzQ3CldBQUFBQUFBQUFISEgKCk0qIChiZXR0ZWx0IFRlZGR5IHVtIEduYWRlIGFuLi4uLioqd2luc2VsKiopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXR0IDsgKFRlZGR5LCAzMC4gSnVuIDE5OTgsIDEzOjQxOjE0KToKfiMhIHJuPU1vcmdvdGggcnQ9ODk5MjA2ODU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk5MjA2NzQ3CkljaCB3dXNzdGUgaWNoIGthbm4gZGljaCB1ZWJlcnpldWdlbiA7KQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVy4uLiAoVHN1bmFtaSwgMzAuIEp1biAxOTk4LCAxNDo0NTozNSk6ClVuZ2VzY2huaXR0ZW4uLi5hdXRzY2ghCgpLb3IgdGVpbHQgRGlyIG1pdDogbmljaHQgZGFzLCBpY2ggaGFiIG5vY2ggNiBscCB1bmQgZGFzIHVudGllciB2ZXJmb2xndCBtaWNoCkR1IHRlaWxzdCBLb3IgbWl0OiBtaXN0CktvciB0ZWlsdCBEaXIgbWl0OiBzCltUb2Q6TGFyc10gRWluIFVudGllciBoYXQgZ2VyYWRlIEtvciB1bWdlYnJhY2h0LgoKZGFiZWkgd29sbHQgaWNoIGlobiBncmFkIGVycmV0dGVuLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldHQgOyAoVGVkZHksIDMwLiBKdW4gMTk5OCwgMTQ6NTQ6NTMpOgp+IyEgcm49VGVkZHkgcnQ9ODk5MjA2NzQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk5MjA2NzQ3CkRhIGlobiBzY2hlaW5iYXIgbmllbWFuZCB2ZXJzdGVodDogSWhyIHNlaWQgYWxsZSBibG9lZCA7LSgKClRlZGR5IHNjaG1vbGx0IGpldHp0IGFiZXIgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqd2FlbHoqIEViZW4gaW0gV2Fyb2sgKFN0aW5nLCAzMC4gSnVuIDE5OTgsIDE5OjQxOjIwKToKYmVmZWhsZSBrcnVmdHVyIHZlcnNjaHdpbmRlCktydWZ0dXIgZ2lidCBlaW5lbSBFaXNlbGYgZWluZW4gVHJpdHQgaW4gZGVuIEhpbnRlcm4uCgpTb3dhcyBwYXNzaWVydCB3ZW5uIE5QQ3MgZWluZW0gYWxsZXMgbmFjaG1hY2hlbiwgdW5kIG5pY2h0IGJlcmVjaHRpZ3QgZGF6dQpzaW5kIDopKSkKCgpTdGluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJpc2NoIHZvbSBTdGFtbXRpc2NoLi4uOiAoQW5hdG9sLCAgMS4gSnVsIDE5OTgsIDAwOjEyOjE0KToKCk1vcmdvdGggc2FndDogTmVlZWUsIGRhcyB3YWVyZSBaVSBoYXJ0Li4uLgoKV2lyIGhhYmVuIGVzIGFsbGUgZ2Vob2VydCB1bmQga2VpbmVyIHdvbGx0J3MgZ2xhdWJlbi4uLgpBbmF0b2wgOm8pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZyaXNjaCB2b20gU3RhbW10aXNjaC4uLjogKE1vcmdvdGgsICAxLiBKdWwgMTk5OCwgMDE6NTY6MDkpOgp+IyEgcm49QW5hdG9sIHJ0PTg5OTI0NDczNCByZz1zY2htYXJybgp+IyEgdGlkPTg5OTI0NDczNApHcnVtcGYuLi4uYWJlciBpY2ggaGFiIGF1Y2ggZWluZW46CgpCZWVsemVidWIgc2FndDogT2huZSBUb24gc2NoYXUgaWNoIG1pciBhdWNoIEJsdWVtY2hlbiBWaWRlb3MgYW4uCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZSAoTW9yZ290aCwgIDEuIEp1bCAxOTk4LCAwMjo1Nzo0MSk6CltBbGxnZW1laW46VG1tIHNpbmd0OiBXZSBoYXZlIGpveSwgd2UgaGF2ZSBmdW4sIHdlIGhhdmUgTGludXggb24gYSBTdW5dCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZXIgaXN0IGhpZXIgZGVyIElkbGUtS29lbmlnPz8gKE1vcmdvdGgsICAxLiBKdWwgMTk5OCwgMDc6MzY6MzMpOgogIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNaXQsICAxLiBKdWwgMTk5OCwgMDc6MzU6NTUgKDIwIFRlaWxuZWhtZXIpCgpFbWJlLi4uLi4uLi4uLi5KLnMgRnJpdHkuLi4uLi4uLi4uSi5zIEZpc2hzYmltYm8uLi4uLkoueiBUaHVmaXIuLi4uLi4uLi5KLnoKVGhvci4uLi4uLi4uLi4uSi5zIENodHVyci4uLi4uLi4uLkoucyBUeWxhay4uLi4uLi4uLi4uLnMgUXVpY2suLi4uLi4uLi4uSS5TClR3aXN0Li4uLi4uLi4uLmkuUyBHcmFjZS4uLi4uLi4uLi5JLlMgQW5ha2luLi4uLi4uLi4uSi5TIFJlZG5vc2UuLi4uLi4uLkouUwpaaW5vLi4uLi4uLi4uLi5pLnogRnJvZ2h1bnRlci4uLi4uai5TIExpbGlwdXQuLi4uLi4uLmkuUyBUaHVmaGlyLi4uLi4uLi5KLlMKTmFjaHR3aW5kLi4uLi4uaS5TIFF1aWxsaWFuLi4uLi4uLkouTSBNb3Jnb3RoLi4uLi4uLi4uLlIgUnVtYXRhLi4uLi4uLi4uSi5HCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQaHlzbmV3IHVwZGF0ZS4zNzggKENhdHdlYXpsZSwgIDEuIEp1bCAxOTk4LCAxNDowNDo0OSk6ClRIRSBQSFlTSUNTIE9GIEZPT1RCQUxMIChzb2NjZXIpIGlzIGF1IGNvdXJhbnQgbm93IHRoYXQgdGhlCjE5OTggV29ybGQgQ3VwIGhhcyBiZWd1biBpbiBGcmFuY2UuIFRoZSBKdW5lIDE5OTggaXNzdWUgb2YKUGh5c2ljcyBXb3JsZCBhbmF0b21pemVzIGEgZ3JlYXQgbW9tZW50IGluIHJlY2VudCBzb2NjZXIgaGlzdG9yeQotLS10aGUgcGVuYWx0eSBraWNrIHRha2VuIGJ5IEJyYXppbGlhbiBwbGF5ZXIgUm9iZXJ0byBDYXJsb3MgaW4gYQpnYW1lIGxhc3QgeWVhciBhZ2FpbnN0IEZyYW5jZS4gQ2FybG9zIGtpY2tzIHRoZSBiYWxsIHdpdGggaGlnaCBzcGVlZAooNzAgbXBoKSBhbmQgaW1wYXJ0cyBhIGhpZ2ggc3BpbiAoMTAgcmV2L3NlYykuIEFpcmZsb3cgcGFzdCB0aGUKcm9ja2V0aW5nIGJhbGwgaXMgYXQgZmlyc3QgaW4gdGhlIGxvdy1kcmFnLCB0dXJidWxlbnQgcmVnaW1lLiAKSG93ZXZlciwgYWJvdXQgMTAgbSBhbG9uZyBpdHMgdHJhamVjdG9yeSAoanVzdCBhcyBpdCBzaG9vdHMgd2lkZSBvZgphIHdhbGwgb2YgcG9pc2VkIGRlZmVuZGVycykgdGhlIGJhbGwgc2xvd3MgZW5vdWdoIGZvciBpdCB0byBlbnRlciBpbnRvCmEgc21vb3RoLWFpcmZsb3cgKGxhbWluYXIpIHBoYXNlLiAgVGhpcyBlbnRhaWxzIGFuIGV2ZXIgaW5jcmVhc2luZwpkZWdyZWUgb2YgZHJhZywgd2hpY2ggaW4gdHVybnMgYnJpbmdzIHRoZSBCZXJub3VpbGxpIHByaW5jaXBsZSAoYW5kCmEgaGVmdHkgc2lkZXdheXMgZm9yY2UsIG9yICJsaWZ0IikgaW50byBwbGF5LCBkcmFtYXRpY2FsbHkgY3VydmluZyB0aGUKYmFsbCBwYXN0IHRoZSBnb2FsaWUgaW50byB0aGUgbmV0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldHQgOyAoQXNtb2RpcywgIDEuIEp1bCAxOTk4LCAxODo0ODozOSk6Cn4jISBybj1UZWRkeSBydD04OTkyMDY3NDcgcmc9c2NobWFycm4KfiMhIHRpZD04OTkyMDY3NDcKU28gZWluIEp1bmdzcHVuZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW5hdG9sIGlzdCBkYSA6LSkgKFRyYW5jZWZlYXIsICAxLiBKdWwgMTk5OCwgMTg6NTc6NDEpOgo+IEFuYXRvbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbQWxsZ2VtZWluOkFseXNzYSBoZXVsdCBORUVFRUVFSUlJSUlJSUlJSUlJSUlJSUlJSUlJSU5OTk5OTk5OTk5OTk5OTk5OTk5OTl0KW0FsbGdlbWVpbjpBbHlzc2EgaGV1bHQgTkVFRUVFRUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlOTk5OTk5OTk5OTk5OTk5OTk5OTk5dCltBbGxnZW1laW46QWx5c3NhIGhldWx0IE5FRUVFRUVJSUlJSUlJSUlJSUlJSUlJSUlJSUlJTk5OTk5OTk5OTk5OTk5OTk5OTk5OXQoKb2huZSBXb3J0ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFuYXRvbCBpc3QgZGEgOi0pIChBbmF0b2wsICAxLiBKdWwgMTk5OCwgMTg6NTg6MTYpOgp+IyEgcm49VHJhbmNlZmVhciBydD04OTkzMTIyNjEgcmc9c2NobWFycm4KfiMhIHRpZD04OTkzMTIyNjEKU2llIGtlbm50IG1pY2guCgpad2VpZmVsbG9zLApBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuYSBrbGFzc2UgOi0pIChOYWlyb2xmLCAgMS4gSnVsIDE5OTgsIDIyOjMwOjIxKToKRHUgdGVpbHN0IFN0aW5nIG1pdDogd2FzIG1hY2hzdG4gPyA6LSkKPiBbRkU6U3RpbmcgdWViZXJnaWJ0IGRpZSBFYmVuZSBhbiBOb2suXQpTdGluZyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCgoKZGVyIG1hZyBtaWNoIG5pY2ggOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmFsYW5jZS1UZWFtIChFbWJlLCAgMS4gSnVsIDE5OTgsIDIzOjAxOjQ3KToKfiMhIHJuPUJvaW5nIHJ0PTg5OTMwMjMxNyByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9ODk5MzAyMzE3CnNpbmQgZGllIG5ldW4gc2Nob24gZ2VzZXR6dGVuIGtvbW1hdGEgZWluIHdlcmJlLWJvbnVzPwpvZGVyIHdlciBoYXQgZGllIGJlemFobHQ/Cgo6LSkpCgpncnVzcywgZU1CZWUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYW5rZSBmdWVyIGRpZSBNaXR0ZWlsdW5nIChNaW5kYmxhZGUsICAyLiBKdWwgMTk5OCwgMDA6NDU6NTIpOgpEZXIgS2FyYXRlb3JrIHNhZ3Q6IERlaW5lIEZlcnRpZ2tlaXQgbWl0IGRlbiBXdXJmc3Rlcm5lbiBsaWVndCBiZWkgOiA3MDIwLgpEZXIgS2FyYXRlb3JrIGZhZWxsdCB0b3QgenUgQm9kZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFua2UgZnVlciBkaWUgTWl0dGVpbHVuZyAoQW5hdG9sLCAgMi4gSnVsIDE5OTgsIDAwOjUyOjIxKToKfiMhIHJuPU1pbmRibGFkZSBydD04OTkzMzMxNTIgcmc9c2NobWFycm4KfiMhIHRpZD04OTkzMzMxNTIKT2IgZGFzIFppbm8gYXVjaCBzYWd0LCB3ZW5uIGVyIHRvdCB1bWZhZWxsdD8gOikKCkFuYXRvbCA6bykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnaWZ0LCBibGl0eiwgcmVpc3Nlbj8gKFRhcnMsICAyLiBKdWwgMTk5OCwgMDI6MzQ6MTMpOgpTaGFpLUh1bHVkIGlzdCBsZWljaHQgYW5nZWtyYXR6dCB1bmQgaXN0IGRhbWl0IGplbnNlaXRzIGFsbGVyIEdyZW56ZW4gdmllbApzdGFlcmtlciBhbHMgRHUuIEVyIGthZW1wZnQgbWl0IGdpZnRpZ2VuIEtsYXVlbi4gRXIgbWFjaHQgZGFtaXQgZm9sZ2VuZGVuClNjaGFkZW46IEJsaXR6ZSB1bmQgUmVpc3Nlbi4gRGFtaXQga2FlbXBmdCBlciBqZW5zZWl0cyBhbGxlciBHcmVuemVuIHZpZWwKYmVzc2VyIGFscyBEdS4gU2hhaS1IdWx1ZCB0cmFlZ3QgZWluZW4gbWFnaXNjaGVuIEVsZW1lbnRhcnNjaGlsZC4gRGFtaXQgaXN0IGVyCmVpbiBrbGVpbmVzIGJpc3NjaGVuIGJlc3NlciBhbHMgRHUgZ2VzY2h1ZXR6dC4gClNoYWktSHVsdWQgaXN0IGV0d2EgNTQxY20gZ3Jvc3MuCgpUYXJzIHJ1ZnQ6IE1PUkdPVEghISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZ2lmdCwgYmxpdHosIHJlaXNzZW4/IChNb3Jnb3RoLCAgMi4gSnVsIDE5OTgsIDA3OjI5OjMzKToKfiMhIHJuPVRhcnMgcnQ9ODk5MzM5NjUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk5MzM5NjUzCk9laG0uLi5kYSBpcyB3b2hsIGVpbiBhcnJheSB2ZXJydXRzY2h0Li4uLgpIdXBzLgoKTSogOy0pKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklzIGtsYXIuLi4gKE1vcmdvdGgsICAyLiBKdWwgMTk5OCwgMTQ6MDI6MDEpOgpQaHlnb3MgZnJhZ3QgTWluZHJhIG5hY2ggQWJhcnRpZ2VuIFNleCBtaXQgS2V0dGVuIHVuZCBQZWl0c2NoZW4uCk1pbmRyYSBrcmF0enQgc2ljaCBhbSBLb3BmIHVuZCBzYWd0OiBEYXp1IHdlaXNzIGljaCBsZWlkZXIgbm9jaApuaWNodHMsIGFiZXIgaWNoIHdlcmRlIG1pY2ggYmVpIEdlbGVnZW5oZWl0IG1hbCBzY2hsYXUgbWFjaGVuLgoKUGh5Z29zIGZyYWd0IE1pbmRyYSBuYWNoIFNjaHdhcnplciBNZXNzZS4KTWluZHJhIGtyYXR6dCBzaWNoIGFtIEtvcGYgdW5kIHNhZ3Q6IERhenUgd2Vpc3MgaWNoIGxlaWRlciBub2NoCm5pY2h0cywgYWJlciBpY2ggd2VyZGUgbWljaCBiZWkgR2VsZWdlbmhlaXQgbWFsIHNjaGxhdSBtYWNoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGluIGVpbmVyIGZlc3R1bmcgKEdvcm9nLCAgMi4gSnVsIDE5OTgsIDE3OjE5OjU2KToKICBEdSB0cmlmZnN0IGRlbiBBdXJhayBEcmFrb25pZXIgc2VociBoYXJ0LgpEZXIgQXVyYWsgRHJha29uaWVyIHZlcndhbmRlbHQgc2ljaCBpbiBlaW5lbiByYXNlbmRlbiBGZXVlcmJhbGwuCkRlciBGZXVlcmJhbGwgZ3JlaWZ0IERpY2ggbWl0IHVuZ2VoZXVyZXIgSGl0emUgYW4uCkVpbiBGZXVlcmJhbGwgd2lyZCBlaW4gd2VuaWcgdHJhbmNoaWVydC4KRGllIERyYWNoZW5zY2h1cHBlIGZhZW5ndCBkZW4gQW5ncmlmZiBhYi4KRGFzIEtyZXV6IGZhZW5ndCBhbiB6dSBsZXVjaHRlbi4KRGVyIEZldWVyYmFsbCBraXR6ZWx0IERpY2ggYW0gQmF1Y2guCkR1IGdyZWlmc3QgZGVuIEZldWVyYmFsbCBtaXQgZGVtIEdvbGVtYXJtIGFuLgpEdSB6ZXJzY2htZXR0ZXJzdCBkZW4gRmV1ZXJiYWxsIGluIGtsZWluZSBTdHVlY2tjaGVuLgpEdSB6ZXJzY2htZXR0ZXJzdCBkZW4gRmV1ZXJiYWxsIGluIGtsZWluZSBTdHVlY2tjaGVuLgpEYXMgS3JldXogZmFlbmd0IGFuIHp1IGxldWNodGVuLgpEZXIgRmV1ZXJiYWxsIGV4cGxvZGllcnQuCgphaGpldHp0IGphLCBGZXVlcmJhZWxsZSB3b2xsdGUgaWNoIGltbWVyIHNjaG9uIG1hbCB0cmFuY2hpZXJlbiAoOwoKR29yb2csIGRlciBub2NoIGVpbiBwYWFyIEZpbGV0cyB1ZWJlciBoYXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXb3cgOykgKFRlZGR5LCAgMy4gSnVsIDE5OTgsIDAwOjQ0OjUyKToKW01vZXJkZXI6R2Vpc3QgZWluZXIgRmxpZWdlXSBUYXJzLCB3YWVyIGpldHp0IG5pY2h0IGVpZ2VudGxpY2ggVm9ybGVzdW5nPwpbTW9lcmRlcjpHZWlzdCBlaW5lciBGbGllZ2VdIDwwMDo0MTozNj4KW01vZXJkZXI6R2Vpc3QgZWluZXIgRmxpZWdlXSBXYXJ1bSBoYXQgbWlyIG5pZW1hbmQgZ2VnZW4gVGFycyBnZWhvbGZlbj8KW01vZXJkZXI6R2Vpc3QgZWluZXIgRmxpZWdlXSA8MDA6NDE6NDI+CgpEdSBtdXJtZWxzdCBlaW4gcGFhciB1bnZlcnN0YWVuZGxpY2hlIFdvcnRlLCBtYWNoc3QgZWluaWdlIGJlc2Nod29lcmVuZGUKR2VzdGVuIHVlYmVyIGRlciBLdWdlbCwgdW5kIER1IHNpZWhzdDoKSGllciB3ZWNoc2VsdCBkaWUgVW1nZWJ1bmcgZmFzdCBzY2hsYWdhcnRpZyB2b24gZWluZW0gbGljaHRlbiBMYXVid2FsZCB6dQplaW5lbSBkdWVzdGVyZW4gTmFkZWx3YWxkLCBkZXIgc2ljaCBuYWNoIE5vcmR3ZXN0ZW4gd2VpdGVyIGF1c2JyZWl0ZXQuIERvcnQKc2NoZWludCBlcyBhdWNoIHN0aWxsZXIgenUgc2Vpbi4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuIHVuZCBub3Jkd2VzdGVuLgp7WyggVGFycyBtZXR6ZWx0IG1hbCB3aWVkZXIgcmljaHRpZyApXX0uCkVpbiBXaWxkZWJlci4KClRlZGR5IHppdHRlcnQgamV0enQgbm9jaCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGVpc3NlcyBFaXNlbiBvZGVyIGRpZSBGaW5nZXIgdmVyYnJhbm50PyAoQW5hdG9sLCAgMy4gSnVsIDE5OTgsIDAzOjM3OjU1KToKRm9sZ2VuZGVzIGlzdCBhdWYgJ0ZFJyBwYXNzaWVydDoKW0ZFOlBhbnphIHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gU2hhcmlhLiA8MDg6NTc6NDM+XQpbRkU6U2hhcmlhIHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gTmFpcm9sZi4gPDA5OjAyOjUxPl0KW0ZFOk5haXJvbGYgdWViZXJnaWJ0IGRpZSBFYmVuZSBhbiBKZW1hbmQuIDwwOTowMzoxNT5dCltGRTpKZW1hbmQgdWViZXJnaWJ0IGRpZSBFYmVuZSBhbiBQYW56YS4gPDEwOjAxOjI4Pl0KW0ZFOlBhbnphIHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gS2l1LiA8MTA6Mjg6NDk+XQpbRkU6S2l1IHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gS2V5LiA8MTA6NTI6Mzk+XQpbRkU6S2V5IHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gS2l1LiA8MTI6MjU6NDA+XQpbRkU6S2l1IHVlYmVybmltbXQgZGFzIHVuZ2VybmUgYWJlciB0amEgOikgPDEyOjI1OjU2Pl0KW0ZFOktpdSB1ZWJlcmdpYnQgZGllIEViZW5lIGFuIEl2by4gPDEzOjMwOjQ4Pl0KW0ZFOkl2byB1ZWJlcmdpYnQgZGllIEViZW5lIGFuIEtleS4gPDE0OjI5OjE4Pl0KW0ZFOktleSB1ZWJlcmdpYnQgZGllIEViZW5lIGFuIFRzdW5hbWkuIDwxNjozNToyNj5dCltGRTpUc3VuYW1pIHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gRGllZGVyLiA8MTc6MTY6NDM+XQpbRkU6RGllZGVyIHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gVGhlcmluLiA8MTc6MjU6MjU+XQpbRkU6VGhlcmluIHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gTWlzdGJyYXR6ZS4gPDE4OjI0OjMxPl0KW0ZFOk1pc3RicmF0emUgdWViZXJnaWJ0IGRpZSBFYmVuZSBhbiBTdGluZy4gPDE5OjM1OjQwPl0KW0ZFOlN0aW5nIHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gTm9rLiA8MjI6Mjk6NDA+XQpbRkU6Tm9rIHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gVGhlcmluLiA8MDU6NDA6MTE+XQpbRkU6VGhlcmluIHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gTm9rLiA8MDY6MTY6MjA+XQoKV2FyIGFiZXIgYXVjaCBlaW4gbGFuZ2VyIFRhZywgZ2VsbC4uLgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJiZWl0ZW4uLi4/IChBbmF0b2wsICAzLiBKdWwgMTk5OCwgMTQ6NTk6MDApOgpSaW5nb3IgZGVua3Q6IHNvIGlociBiYW5hdXNlbiwgaWNoIG11c3MgbWFsIHdhcyBhcmJlaXRlbiBnZWhlbi4gY2lhbyA6KQpEZWluIEZyZXVuZCBSaW5nb3IgdGVpbHQgRGlyIG1pdDogc28sIGRhcyBzb21tZXJmZXN0IHJ1ZnQuIGNpYW8gaWhyIQoKQWNoIGphPyA6KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXJiZWl0ZW4uLi4/IChSaW5nb3IsICAzLiBKdWwgMTk5OCwgMTQ6NTk6MzkpOgp+IyEgcm49QW5hdG9sIHJ0PTg5OTQ3MDc0MCByZz1zY2htYXJybgp+IyEgdGlkPTg5OTQ3MDc0MApLbGFyLiBEYXMgU29tbWVyZmVzdCBiZWdpbm50IGhldXRlIGFiZW5kLCB1bmQgamV0enQgbXVzcyBpY2ggYmVpbSBBdWZiYXUKaGVsZmVuLiAKClJpbmdvciBkZW5rdDogLiBvIE8oRWxmZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGRlemltaWVydGUgR2lsZGVuc2tpbGxzIChHcmltbWJvcm4sICAzLiBKdWwgMTk5OCwgMTY6MDg6MzMpOgp+IyEgcm49VHVuaXhndXQgcnQ9ODk5NDQyNTk1IHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD04OTkxMjQ0NTEKSWNoIHd1ZXJkIGphIEhhZW5kY2hlbiBoYWx0ZW4ga29tbWVuLCBhYmVyIGxlaWRlciBiaW4gaWNoIGtlaW4gRU0uLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCBmb3IgRU0hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbG9lc2NodW5nIChHcmltbWJvcm4sICAzLiBKdWwgMTk5OCwgMTg6NTI6MTApOgp+IyEgb249VGhlcmluIG90PTg5OTE1MjAzMCBvZz13aXR6ZQp+IyEgcm49UGFkcmVpYyBydD04OTkxNTE5MTUgcmc9d2l0emUKfiMhIHRpZD04OTkxNTE5MTUKCkFiZXIgc2NobGllc3MgZXJzdCBkZW4gUGFyYS1TY2hsYWNodGhvZiBhbiEgOikKClQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbG9lc2NodW5nIChHcmltbWJvcm4sICAzLiBKdWwgMTk5OCwgMTg6NTQ6MDcpOgp+IyEgb249QXNtb2RpcyBvdD04OTkzMTIwNzUgb2c9d2l0emUKfiMhIHJuPVBhZHJlaWMgcnQ9ODk5MTUxOTE1IHJnPXdpdHplCn4jISB0aWQ9ODk5MTUxOTE1CkhtcGYsIGpldHp0IGhhZXR0ZSBpY2ggbWljaCBmYXN0IGdlZnJldXQsIGFiZXIgaW4gZGllc2VyClJ1YnJpayAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVpdWl1aSAuLi4uIChFdGhhdmFyLCAgMy4gSnVsIDE5OTgsIDIyOjEyOjQwKToKQW5uYXB1bmEgc3ByaWNodCBlaW5lIG1hZ2lzY2hlIEZvcm1lbC4KQmVsbG8gaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KRGVyIEdlc3RhbmsgdmVyc2Nod2luZGV0LgoKV2FzIGRpZSBOUENzIGpldHp0IHNjaG9uIGtvZW5uZW4gLi4uLiAKdW5kIC4uLi4gc3Rpbmt0IEJlbGxvID8KCipncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtlaW5lIExlc2VyZWNodGU/IChBbmF0b2wsICA0LiBKdWwgMTk5OCwgMDM6MzY6MTUpOgpUaGVyaW4gaGF0IGVpbmVuIEFydGlrZWwgaW4gZGVyIFplaXR1bmcgdmVyb2VmZmVudGxpY2h0LgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gVGhlcmluIGluIFJ1YnJpayAic2NobWFycm4iLgpUaGVyaW4gbG9lc2NodCBlaW5lbiBBcnRpa2VsIGF1cyBkZXIgWmVpdHVuZy4KVGhlcmluIGdyaW5zdC4KClBmb29vaCA6KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYWNobGVzZSB6dW0gU3RhbW10aXNjaCBBYWNoZW4gKE5lYiwgIDQuIEp1bCAxOTk4LCAxNDozODo1NCk6Ckdlc3Rlcm4gYmVpbSBNYWV4Y2hlbiBhdWYgZGVtIEFhY2hlbmVyIFN0YW1tdGlzY2ggbWl0Z2Vsb2dndDoKCk5lYiB3dWVyZmVsdC4KTmViIGJlaGF1cHRldCwgZXIgaGFldHRlIGVpbmUgMzEgZ2V3b3JmZW4gdW5kIGdpYnQgZGVuIFd1ZXJmZWxiZWNoZXIgYW4KaGFuZ292ZXIgd2VpdGVyLgpTdWNjYW1vcmUgcGxhdXNjaHQgaW50ZXJlc3NpZXJ0IG1pdCBCb2dhYnVuZGEuCkhhbmdvdmVyIGhhdCBzaWNoIGVudHNjaGllZGVuIHp1IHd1ZXJmZWxuLgpIYW5nb3ZlciBhcmdlbHQuCkhhbmdvdmVyIGRlbmt0IC4gbyAwICgzMSAhKQpTdWNjYW1vcmUgZGlza3V0aWVydC4KSGFuZ292ZXIgd3VlcmZlbHQgbm9jaCBlaW5tYWwgYmxpbmQuCkhhbmdvdmVyIGJlaGF1cHRldCwgZXIgaGFldHRlIG1pbmRlc3RlbnMgZWluZSAzMiBnZXdvcmZlbiB1bmQgZ2lidCBkZW4KV3VlcmZlbGJlY2hlciBhbiBTdWNjYW1vcmUgd2VpdGVyLgpTdWNjYW1vcmUgZ2VzdGlrdWxpZXJ0IHVuZCByZWRldCBhdWYgQm9nYWJ1bmRhIGVpbi4KSGFuZ292ZXIgdGlwcHQgdW5nZWR1bGRpZyBtaXQgc2VpbmVtIEZ1c3MgYXVmIGRlbiBCb2Rlbi4KSGFuZ292ZXIgcmFldXNwZXJ0IHNpY2guClN1Y2NhbW9yZSByZWRldCB1bmQgcmVkZXQgdW5kIHJlZGV0LgpIYW5nb3ZlciBzdHVwc3QgU3VjY2Ftb3JlIGFuLgpIYW5nb3ZlciBzYWd0OiAzMi4KU3VjY2Ftb3JlIHNjaGF1dCB1bndpbGxpZy4KU3VjY2Ftb3JlIGdsYXVidCBIYW5nb3ZlciBuaWNodCB1bmQgaGVidCBhdWYuCkhhbmdvdmVyIGhhdHRlIGFiZXIgdGF0c2FlY2hsaWNoIGVpbmUgNjMgZ2V3b3JmZW4uClN0b3Jtd2luZCBzZXVmenQuClN0b3Jtd2luZCBtYWNodCB6dW0gd2llZGVyaG9sdGVuIE1hbGUgZWluZW4gU3RyaWNoIGJlaSBTdWNjYW1vcmUuCkhhbmdvdmVyIHNjaHVldHRlbHQgbWl0IGRlbSBLb3BmLgpOZWIga2ljaGVydC4KQWxsZXMgZ3JpbnN0LgpTdWNjYW1vcmUgZGlza3V0aWVydCB3ZWl0ZXIuCgp1c3cuCgpOZWIsIHd1bmRlcnQgc2ljaCBrZWluIGJpc3NjaGVuLCBkYXNzIFN1Y2NhbW9yZSBnZXN0ZXJuIGtlaW4gTWFleGNoZW5zcGllbApnZXdvbm5lbiBoYXQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthZW1wZmVyISA6KSAoU3RpbmcsICA1LiBKdWwgMTk5OCwgMTI6MTE6MjApOgpLcnV1b2xxIGZldWVydCBlaW5lbiBzYXRhbmlzY2hlbiBGbHVjaCBhdWYgU25vdHR5IGFiLgpTbm90dHkgbWFjaHQgZWluZW4gU3BydW5nIG5hY2ggaGludGVuIHVuZCB3ZWljaHQgc28gZGVtIEFuZ3JpZmYgdm9sbHN0YWVuZGlnCmF1cy4KClN0aW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXIgVHJ2ZXMtS29jaCBoYXRzIGFiZXIgbm9ldGlnIDopIChTdGluZywgIDUuIEp1bCAxOTk4LCAxMjo0NToyNSk6CmZyYWdlIGtvY2ggbmFjaCBmbGVpc2NoCkVpbiBLb2NoIHNhZ3Q6IEJlc29yZ3MgbWlyIHVuZCBzZWkgc3RpbGwhIERhcyB3aXJzdCBEdSBkb2NoIHdvaGwgbm9jaApzY2hhZmZlbj8KClN0aW5nLCBzY2htdW56ZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gd2FzICEgKFBlcnRpbmF4ZSwgIDUuIEp1bCAxOTk4LCAxNDoyMDo0Mik6ClBhc3NpZXJ0IGJlaW0gcXVlc3RlbiBtaXQgQmFua2VyOgoKRGllIE9ya2dhbGVlcmUgcmFtbXQgZmFzdCBkZW4gQW5sZWdlcGxhdHouCkRyYXJlZyBiZXRyaXR0IGRpZSBHYWxlZXJlIC4KRXR3YXMgc2FndDogT2hhLCBlaW4gQmFua3p3ZWl0aWUhCkV0d2FzIHNhZ3Q6IER1IGhhc3QgZG9jaCBiZXN0aW1tdCBldHdhcyBHZWxkIHVlYnJpZz8KRHUgZ2lic3QgRXR3YXMgZXR3YXMgR2VsZC4KRXR3YXMgZXJzY2hlaW50IGluIGVpbmVyIFJhdWNod29sa2UuCkV0d2FzIHNhZ3Q6IEhpY2shRXR3YXMgdmVyc2Nod2luZGV0IG1pdCBLbmFsbCB1bmQgU2Nod2VmZWxkdWZ0LgpEYSBiaXN0ZSBwbGF0dCAhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHVlYmVyd2FjaHVuZ3N0YWF0IChBbmF0b2wsICA1LiBKdWwgMTk5OCwgMTY6MTY6NTgpOgp+IyEgcm49WmFybml5YSBydD04OTk2NDMwNzkgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTg5OTUxNTU3OApaPiBadWVyaXNjaGFldHpjaGVuLi4uIGljaCBiaW4gd2llIGltbWVyIGRlciBNZWludW5nLCBkYXNzIER1IG5jaWh0IGRlbiBNdW5kClo+IGF1Zm1hY2hlbiBzb2xsdGVzdCwgd2VubiBEdSBuaWNodCB3ZWlzc3QsIHVlYmVyIHdhcyBzaWNoIGVyd2FjaHNlbmUgTGV1dGUKWj4gZ2VyYWRlIHVudGVyaGFsdGVuOiAKCkFlaCwgQVVTR0VSRUNITkVUIER1IHJlZGVzdCB2b24gImVyd2FjaHNlbmUgTGV1dGUiPyA6LSkgVHV0IG1pciBhdWZyaWNodGlnCmxlaWQsIFphcm5peWEsIGFiZXIgS2VubnRuaXMgZGVyIE11ZGxpYiBoYXQgbmljaHRzIG1pdCBFcndhY2hzZW5zZWluIHVuZApkZW0gKGhvZmZlbnRsaWNoKSBkYXp1Z2Vob2VyaWdlbiBnZXN1bmRlbiBNZW5zY2hlbnZlcnN0YW5kIHp1IHR1bi4KCkFuYXRvbCwgbWFsIHdpZWRlciBmdWVyIGVpbiBQX0xBRUNIRVJMSUNIIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGVoZSA6KSAoU3RpbmcsICA1LiBKdWwgMTk5OCwgMTg6MDU6NDApOgprYXVmZSBlaXN3dWVyZmVsc3VwcGUKRHUgYmVrb21tc3QgZWluZW4gVGVsbGVyIG1pdCBFaXN3dWVyZmVsbi4KRGllIGVpc2thbHRlIFN1cHBlIHplcnN0YWV1YnQgRGljaC4KVG9kOkxhcnNdIEVpbmUgZWlza2FsdGUgU3VwcGUgaGF0IGdlcmFkZSBSaWRkbGVyIHVtZ2VicmFjaHQuCgpTdGluZywga2ljaGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipzaWdoKiAoU2lsdmFuYSwgIDUuIEp1bCAxOTk4LCAxOTozNDozMCk6CiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBTb24sICA1LiBKdWwgMTk5OCwgMTk6MzI6MTggKDcgVGVpbG5laG1lcikKClF1aWxsaWFuLi4uLi4uLkouTSBHYW5kby4uLi4uLi4uLi5pLk0gWndpbGxpbmcuLi4uLi4uSS5NIFp1ZXJpbGV1Li4uLi4uLkkuTQpCaWVyY2hlbi4uLi4uLi5pLlIgU2lsdmFuYS4uLi4uLi4uLi5FICpIYXRlLi4uLi4uLi4uLkouRQoKR3V0ZSBOYWNodCwgS29sbGVnZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIZWhlIDopIChUZWRkeSwgIDYuIEp1bCAxOTk4LCAwMDoyNjo1Myk6Cn4jISBybj1TdGluZyBydD04OTk2NTQ3NDAgcmc9c2NobWFycm4KfiMhIHRpZD04OTk2NTQ3NDAKV2llIGpldHp0LCBzbyBlaW4gemVyc3RhZXViZW4gaGF0IGRpY2ggZ2VraWxsdD8gOykKClRlZGR5LCBzY2hvbiBtZWhyZXJlIGF0b21pc2llcnQgZG9ydCB1ZWJlcnN0YW5kZW4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE5vdmFzdG9ybSwgIDYuIEp1bCAxOTk4LCAwOTowNDo1NSk6CgoKUGFudGhlciB0ZWlsdCBEaXIgbWl0OiB3ZW5uIGljaCBuZXQgd2llZGVyIG11ZWxsIGVpbmdlYiBwYXNzaWVydCBkYXMgc2Nob24gbmV0ClBhbnRoZXIgdGVpbHQgRGlyIG1pdDogOikKRHUgdGVpbHN0IFBhbnRoZXIgbWl0OiAqZ3JpbnMqCltUb2Q6TGFyc10gS3J1dW9scSBoYXQgZ2VyYWRlIFBhbnRoZXIgdW1nZWJyYWNodC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpaaXRhdGUgKFBhZHJlaWMsICA2LiBKdWwgMTk5OCwgMTY6MTc6MTIpOgpaYXViZXJtYXVzIFBhdHJ5biBzYWd0OiB1ZWJlcmdlaGUgZGVuIHNhdHogZWluZmFjaCwgd2VubiBkdSBpaG4gbmljaHQKWmF1YmVybWF1cyBQYXRyeW4gc2FndDogdmVyc3RlaHN0LCBtYWNoIGljaCBhdWNoIGltbWVyIHNvIHVuZCBlcyBmdW5rdGlvbmllcnQKWmF1YmVybWF1cyBQYXRyeW4gc2FndDogOikKCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQYWRyZWljLCBncmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh1Y2ggPyAoTm92YXN0b3JtLCAgNi4gSnVsIDE5OTgsIDE2OjUxOjM1KToKRGVyIFRvZGVzZHJhY2hlIGZhZWxsdCB0cmF1cmlnIGluIHNpY2ggenVzYW1tZW4uCltNb2VyZGVyOkdlaXN0IGVpbmVzIFRvZGVzZHJhY2hlbl0gV2llZGVyIG1hbCBhbiBOb3Zhc3Rvcm0gZ2VzdG9yYmVuLCBmaW5kIGljaApbTW9lcmRlcjpHZWlzdCBlaW5lcyBUb2Rlc2RyYWNoZW5dIGFsYmVybiEKV2VuIHdpbGxzdCBEdSBkZW5uIGZpZXMgbWl0IERlaW5lciBXYWZmZSBzY2hsYWdlbj8KCkR1IGthbm5zdCBkZW4gVG9kZXNwYW56ZXIgbmljaHQgbWVociB0cmFnZW4uCkR1IG5pbW1zdCBlaW5lbiBUb2QuCgpTbyB2aWVsIHdvbGx0IGljaCBnYXIgbmljaHQgKnNjaGx1Y2sqCk5vdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWJzYWdlIChBbmF0b2wsICA2LiBKdWwgMTk5OCwgMTc6MjA6NDUpOgp+IyEgcm49TWFoYXRtYSBydD04OTk3MjgxMTcgcmc9cGFydHkKfiMhIHRpZD04OTk3MTU3NTQKV2llIC0gRHUgdHJpbmtzdCBCSUVSPyBWZXJkdWVubnQgZGFzIG5pY2h0IERlaW5lbiBCbHV0YWxrb2hvbGFudGVpbD8KCkFuIE1haGF0bWFzICJDb2xhLTQwIiBkZW5rZW5kLApBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBYnNhZ2UgKEdsb2luc29uLCAgNi4gSnVsIDE5OTgsIDE3OjQxOjIzKToKfiMhIHJuPUFuYXRvbCBydD04OTk3Mzg0NDUgcmc9c2NobWFycm4KfiMhIHRpZD04OTk3MTU3NTQKRGFzIEJpZXIgdHJpbmt0IGVyIGF1cyBwdXJlciBHZW1laW5oZWl0OiBVbSBiZXNzZXIgZnVyemVuIHp1IGtvZW5uZW4uCgpHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2VsdHNhbSAuLi4gKEphc29ucmlnaWQsICA2LiBKdWwgMTk5OCwgMTc6NDg6NTIpOgoKTmV1bGljaCBhdWYgLWEgOgoKW0FsbGdlbWVpbjpXaGlzcGVyXSBzY2hvbiBtYWwgdm9uIE1hZ2llcndpbGxrdWVyIGdlaG9lcnQgPyA7KQpbQWxsZ2VtZWluOkphc29uUmlnaWRdIGdlaG9lcnQgPz8gd2VyIGhhdCBkaWUgbm9jaCBuaWNodCBlcmxlYnQgOikKW0FsbGdlbWVpbjpSb25kYV0gSHVodSEKClNvbGwgbWlyIGRhcyBpcmdlbmR3YXMgc2FnZW4gPz8/Pz8/IDspCgoqbm8gb2ZmZW5jZSoKCkphc29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXIgamEga2xhciAoRmV1ZXJ3ZWhyLCAgNi4gSnVsIDE5OTgsIDE4OjExOjQ1KToKR2VyYWRlIGdlc2VoZW46CgpEYXMgUGFydHltb25zdGVyIHJ1ZnQ6IExlaWJuaXogc3BlbmRpZXJ0IEZSRUlCSUVSIQpDaGFvdCBCaWVyY2hlbiAoTGV2ZWwgNjY2LCBNYWdpZXIpIGJldHJhdCBnZXJhZGUgZGFzIE1vcmdlbmdyYXVlbi4KCkh1aWlpLCBtYW4ga2FubiBpaG4gTE9DS0VOIDotKSkpCgogICBGZXVlcndlaHIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOaWNodCBtYWwgaWRlbG4ga2FubiBtYW4gaW4gRnJpZWRlbi4uIChTaGF5YSwgIDYuIEp1bCAxOTk4LCAxODo1ODozMSk6CgpTY2hva28gZ3JpbnN0LgpTY2hva28gd2lua3QuClNjaG9rbyBrdXNjaGVsdCBzaWNoIGVpbiB3ZW5pZyA7KSBhbiBEaWNoIGFuLgpTY2hva28gaG9yY2h0IG5hY2ggRGVpbmVtIEF0ZW0uClNjaG9rbyBlcnNjaHJpY2t0LiAKU2Nob2tvIGxlaXRldCBFcnN0ZSBIaWxmZSBhbiBEZWluZW0gZXJzdGFycnRlbiBLb2VycGVyLgpTY2hva28gYmV1Z3Qgc2ljaCB0aWVmIHVlYmVyIERpY2ggdW5kIHB1c3RldCBpbiBEZWluZW4gTXVuZC4KU2Nob2tvIGhvcmNodCBub2NobWFsIG5hY2ggRGVpbmVtIEF0ZW0uClNjaG9rbyBzZXVmenQuClNjaG9rbyBzY2h1ZXR0ZWx0IERpciBkaWUgSGFlbmRlLgpTY2hva28gZ3J1ZWJlbHQgZWluZSBXZWlsZSB2b3Igc2ljaCBoaW4uClNjaG9rbyBsZWd0IERlaW5lIEJlaW5lIGhvY2guClNjaG9rbyBzaWVodCBsZWlkZXIga2VpbmUgSG9mZm51bmcgbWVoci4KU2Nob2tvIHNjaHJlaXQ6IFdlZyBoaWVyIQpTY2hva28gZ2VodCBuYWNoIFdlc3Rlbi4KCnRpZWYgTHVmdCBob2xlbmQsCiAgICAgICAgICAgICAgICAgICAgICAgIFNoYXlhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmljaHQgbWFsIGlkZWxuIGthbm4gbWFuIGluIEZyaWVkZW4uLiAoQW5hdG9sLCAgNi4gSnVsIDE5OTgsIDE4OjU5OjUxKToKfiMhIHJuPVNoYXlhIHJ0PTg5OTc0NDMxMSByZz1zY2htYXJybgp+IyEgdGlkPTg5OTc0NDMxMQpPQiBlciBkYXMgYXVjaCBiZWkgUmluZ29yIGdlbWFjaHQgaGFldHRlLi4uPwoKQW5hdG9sLCBtdXNzIHNjaG11bnplbG4gOm8pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5pY2h0IG1hbCBpZGVsbiBrYW5uIG1hbiBpbiBGcmllZGVuLi4gKEphbWVzb24sICA2LiBKdWwgMTk5OCwgMTk6MDQ6MjUpOgp+IyEgcm49U2hheWEgcnQ9ODk5NzQ0MzExIHJnPXNjaG1hcnJuCn4jISB0aWQ9ODk5NzQ0MzExCi4uLnVuZCBrdXJ6IGRhcmF1ZjoKCltUb2Q6TGFyc10gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSBTY2hva28gdW1nZWJyYWNodC4gPDE4OjI2OjE2PgpbVG9kOmVpbiBXZWdoaWVyXSBHb3RjaGEhIDwxODoyNjoxNj4KCk1hbmNoZSBXdWVuc2NoZSBnZWhlbiBhbmRlcnMgaW4gRXJmdWVsbHVuZyBhbHMgbWFuIGRlbmt0Li4uCgpqQW1lc29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5pY2h0IG1hbCBpZGVsbiBrYW5uIG1hbiBpbiBGcmllZGVuLi4gKFNjaG9rbywgIDYuIEp1bCAxOTk4LCAxOTowNToyOSk6Cn4jISBybj1KYW1lc29uIHJ0PTg5OTc0NDY2NSByZz1zY2htYXJybgp+IyEgdGlkPTg5OTc0NDMxMQpRdWF0c2NoIGRhcyB3YXIgc2Nob24gd2VpdCB2b3JoZXIgOykKClNjaG9rbyAoU2FuaXRvZXRlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBaaXRhdGUgKEtleSwgIDcuIEp1bCAxOTk4LCAxMDoxMTowNyk6Cn4jISBybj1QYWRyZWljIHJ0PTg5OTczNDYzMiByZz1zY2htYXJybgp+IyEgdGlkPTg5OTczNDYzMgpIbW0gZGFubiBtdWVzc3RlIFBhZHJlaWMgamEgYXVmaG9lcmVuIHp1IG11ZGRlbiAuLi4KCkt5IHRpZWZzaW5uaWcgZWluemVpbGVuZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW1tYSBkaWVzZSBCaWVyc2NodWV0dGxlciA6LSkgKE5vdmFzdG9ybSwgIDcuIEp1bCAxOTk4LCAxNDo1MjoxOSk6CgpBdWYgZWluZW0gSG9senN0ZWcuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBzdWVkZW4uCkVpbiBSdWRlcmJvb3QuICg1KQpJdm8ga29tbXQgYW5nZXNjaHdvbW1lbi4KSXZvIGZsaWVzc3Qgdm9tIFN0ZWcuCgpOb3ZhIChzY2htdW56ZWxuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBYnNhZ2UgKENhdHdlYXpsZSwgIDcuIEp1bCAxOTk4LCAxNToyMzoxNyk6Cn4jISBvbj1IYXJkaWwgb3Q9ODk5ODE1ODU1IG9nPXBhcnR5Cn4jISBybj1TdW5mbG93ZXIgcnQ9ODk5NzE1NzU0IHJnPXBhcnR5Cn4jISB0aWQ9ODk5NzE1NzU0CgpPaCwgZGFzIGlzdCBzY2hvZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBYnNhZ2UgKENhdHdlYXpsZSwgIDcuIEp1bCAxOTk4LCAxNToyMzoyMSk6Cn4jISBvbj1TdW5mbG93ZXIgb3Q9ODk5ODE1OTc2IG9nPXBhcnR5Cn4jISBybj1IYXJkaWwgcnQ9ODk5ODE1ODU1IHJnPXBhcnR5Cn4jISB0aWQ9ODk5NzE1NzU0Ck5hamEgbnVuIGtvZW5uZW4gd2lyIHVucyBnYXJuaWNodCBydW1rbG9wcGVuLCBuYSBhYmVyIGRpZSB3aW50ZXJwYXJ0eQprb21tdCBiZXN0aW1tdCB1bmQgZGFubiBrb2VubmVuIHdpciB1bnMgbWl0IHNjaG5lZWJhZWxsZW4gYmV3ZXJmZW4gb2RlcgpvcHRpb25hbCBhdWNoIG1pdCB3YXR0ZWJhZWxsY2hlbiwgYWJlciB3aXIga29lbm5lbiBhdWNoIGdlbWVpbnNhbQptaW5lbiBzdWNoZW4gc3BpZWxlbiwgZHUgd2Vpc3N0IGphOiBXZXIgc3VjaGV0IGRlciBmaW5kZXQsIHdlciBkcmF1ZnRyaXR0CnZlcnNjaHdpbmRldC4KClN1bgotLS0tCk1hbmNobWFsIGthbm4gaWNoIGluIGVpbmVtIHZlcnRyYXV0ZW4gR2VzaWNodCAKbmljaHRzIHdlaXRlciBlcmtlbm5lbiwgYWxzIGRpZSBTcHVyZW4KZGllIGRlciBUb2QgZGFyaW4gaGludGVybGFzc2VuIHdpcmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBYnNhZ2UgKENhdHdlYXpsZSwgIDcuIEp1bCAxOTk4LCAxNToyMzoyMik6Cn4jISBvbj1IYXJkaWwgb3Q9ODk5ODE2MDE2IG9nPXBhcnR5Cn4jISBybj1TdW5mbG93ZXIgcnQ9ODk5ODE1OTc2IHJnPXBhcnR5Cn4jISB0aWQ9ODk5NzE1NzU0CgpEYW5uIGhvZmZlbiB3aXIgZG9jaCwgZGFzcyBEdSBiaXMgenVyIFdpbnRlcnBhcnR5IGluIEJvc25pZW4gZWluZSBnZWZ1bmRlbgpoYXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQWJzYWdlIChDYXR3ZWF6bGUsICA3LiBKdWwgMTk5OCwgMTU6MjM6MjMpOgp+IyEgb249U3VuZmxvd2VyIG90PTg5OTgxNjEyOSBvZz1wYXJ0eQp+IyEgcm49SGFyZGlsIHJ0PTg5OTgxNjAxNiByZz1wYXJ0eQp+IyEgdGlkPTg5OTcxNTc1NApKYSBIb2ZmbnVuZyBpc3Qgd2FzIHNjaG9lbmVzLCBpY2ggd2VyZCBhYmVyIGVpbmUgZnVlciBkaWNoIGF1c2J1ZGRlbG4KdW5kIGRpciBhbHMgR2VzY2hlbmsgbWl0YnJpbmdlbi4gU28gbWl0IHJvc2Egc2NobGVpZmNoZW4uIFVuZCB2aWVsbGVpY2h0CmZpbmQgaWNoIGphIG5vY2ggZnVlciBkaWNoIHNvIGVpbmUgdm9uIGRpZXNlbiBrbGVpbmVuIGdlbWVpbmVuIHVuZCBuaWVkbGljaGVuClNwbGl0dGVybWluZW4vU2NodWV0emVuYWJ3ZWhyIG1pbmVuLCBkYSBoYXN0ZSBkYW5uIGVpbiBibGVpYmVuZGVzIGVybGVibmlzCnZvbiB1bnNlcmVyIFp1c2FtbWVua3VuZnQgKCBuZWluIG5pY2h0IE1hZ2ljICkuCi0tLS0KTWFuY2htYWwga2FubiBpY2ggaW4gZWluZW0gdmVydHJhdXRlbiBHZXNpY2h0IApuaWNodHMgd2VpdGVyIGVya2VubmVuLCBhbHMgZGllIFNwdXJlbgpkaWUgZGVyIFRvZCBkYXJpbiBoaW50ZXJsYXNzZW4gd2lyZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFic2FnZSAoQ2F0d2VhemxlLCAgNy4gSnVsIDE5OTgsIDE1OjIzOjI0KToKfiMhIG9uPUhhcmRpbCBvdD04OTk4MTYzMDggb2c9cGFydHkKfiMhIHJuPVN1bmZsb3dlciBydD04OTk4MTYxMjkgcmc9cGFydHkKfiMhIHRpZD04OTk3MTU3NTQKSWNoIGdsYXViZSwgZGFzcyBqZWRlciwgZGVyIG1pdCBEaXIgenVzYW1tZW50cmlmZnQsIGVpbiAiYmxlaWJlbmRlcyBFcmxlYm5pcyIKaGF0LiBEYW5rZS4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgbWFjaHQgc2llIGRhcyBkZW5uPz8gKEJlbnNvbm1hbSwgIDcuIEp1bCAxOTk4LCAxNjo1Mzo0Myk6CkViZW4gaW4gRnJhbmtzIEtuZWlwZToKCj4gUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIExhcmlzc2EuCkxhcmlzc2Egc3RlaHQgd2llZGVyIHZvbSBUaXNjaCBhdWYuCkxhcmlzc2EgbGFlc3N0IGRlbiBXdWVyZmVsYmVjaGVyIGZhbGxlbi4KCmouQmVuc29ubWFtIChzY2h3ZXIgYmVlaW5kcnVja3QpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRW1haWwtVmlydXMgKEdyaW1tYm9ybiwgIDcuIEp1bCAxOTk4LCAxODowODoyMik6Cn4jISBvbj1CbG9vZHloYXJyeSBvdD04OTk3OTA5Nzkgb2c9d2l0emUKfiMhIHJuPUJlbnNvbm1hbSBydD04OTk3NDA3MDAgcmc9d2l0emUKfiMhIHRpZD04OTk3NDA3MDAKWnVzYXR6OgoKLi4uZXIgd2lyZCBzaWUgbWl0IG1laHJzZWl0aWdlbiBBcnRpa2VsbiBpbiBSdWJyaWsgd2l0emUgbmVydmVuLi4uCgoKYmgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFbWFpbC1WaXJ1cyAoR3JpbW1ib3JuLCAgNy4gSnVsIDE5OTgsIDE4OjA4OjIzKToKfiMhIG9uPUphc29ucmlnaWQgb3Q9ODk5Nzk3ODUxIG9nPXdpdHplCn4jISBybj1CZW5zb25tYW0gcnQ9ODk5NzQwNzAwIHJnPXdpdHplCn4jISB0aWQ9ODk5NzQwNzAwCioqKioqKioqKioqKioqIFBSVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTVCAqKioqKioqKioqKioqKioqKioqKioqKiogISEhIQoKSmFzb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFbWFpbC1WaXJ1cyAoR3JpbW1ib3JuLCAgNy4gSnVsIDE5OTgsIDE4OjA4OjI5KToKfiMhIG9uPUtleSBvdD04OTk3OTkyMzAgb2c9d2l0emUKfiMhIHJuPUJlbnNvbm1hbSBydD04OTk3NDA3MDAgcmc9d2l0emUKfiMhIHRpZD04OTk3NDA3MDAKVXBzIC4uLi4gamV0enQgd2lyZCBtaXIgZWluaWdlcyBrbGFyIDspCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOaWNodCBtYWwgaWRlbG4ga2FubiBtYW4gaW4gRnJpZWRlbi4uIChCaWVyY2hlbiwgIDcuIEp1bCAxOTk4LCAyMTo1ODo0Myk6Cn4jISBybj1TaGF5YSBydD04OTk3NDQzMTEgcmc9c2NobWFycm4KfiMhIHRpZD04OTk3NDQzMTEKPFRlZGR5OiAxMjo0Njo1OT4gTWVpbmUgR3VldGUsIG1hbiBmaW5kZXQgamEgbmlyZ2VuZHMgbWVociBpbiBkZXIgR2lsZGUgbmVuCiAgICAgIHJ1aGlnZW4gZWluc2FtZW4gT3J0IHp1bSBpZGVsbiA7KAo8UHJhOiAxMjo0ODowOD4gc3RpbW10LCBpbW1lciBrb21tdCBUZWRkeSByZWluLCB1bmQgZ3Vja3QsIG9iIG1hbiBub2NoIGRhCiAgICAgIGlzdC4uLgo8VGVkZHk6IDEyOjQ4OjMxPiBIbXBmLCBpY2ggd29sbHRlIG51ciBlaW4gYWJnZXNjaGllZGVuZXMgUGxhZXR6Y2hlbiB1bSBpbgogICAgICBSdWhlIHp1IGlkZWxuIDspCjxQcmE6IDEyOjUyOjA1PiBkYW5uIGtvbW0genUgbWlyLCBkYW5uIGlkbGVuIHdpciB6dXNhbW1lbiA6LSkgKmt1c2NoZWwqCjxUZWRkeTogMTI6NTI6MTk+IE5peCwgaWNoIHdpbGwgYWxsZWluZSBpZGVsbiA7KQo8UHJhOiAxMjo1Mjo1OT4gaWNoIHdvbGx0ZSBqYSBudXIgbWFsIHRlc3Rlbiwgb2IgZHUgZWluIGVjaHRlciBDaGFvdCBiaXN0Li4uCiAgICAgIDstKQo8VGVkZHk6IDEyOjUzOjIxPiBKZXBwLCBpY2ggdmVyZ2V3YWx0aWdlIGxpZWJlciBLbGVya2VyaW5uZW4gOykKCi4uaXN0IHdvaGwgZWluIHZlcmJyZWl0ZXRlcyBQcm9ibGVtIDopCiAtIEJpZXJjaGVuIC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hIGd1dGUgTmFjaHQgISA9OiggKFp1ZXJpbGV1LCAgOC4gSnVsIDE5OTgsIDA3OjEzOjQyKToKSGksCgpOYSBkYW5uIGthbm4gaWNoIGphIHNjaGxhZmVuIGdlaGVuOgoKRW1iZS4uLi4uLi4uLi4uSi5zIEZpc2hzYmltYm8uLi4uLkoueiBNaXJvc2xhdi4uLi4uLi4uLnMgUm9kZXJpY2suLi4uLi4uai5zClRodWZpci4uLi4uLi4uLkoueiBLYXJhbS4uLi4uLi4uLi5KLnogV3VsZmVyZS4uLi4uLi4uai5zIEdhdG8uLi4uLi4uLi4uLkoucwpSb3Jpay4uLi4uLi4uLi5KLnMgQWxwaGEuLi4uLi4uLi4uSi5zIFRlbHlhLi4uLi4uLi4uLkouUyBBbmFraW4uLi4uLi4uLi5KLlMKUmVkbm9zZS4uLi4uLi4uSi5TIFppbm8uLi4uLi4uLi4uLmkueiBRdWlsbGlhbi4uLi4uLi5KLk0gR2FuZG8uLi4uLi4uLi4uSi5NClp1ZXJpbGV1Li4uLi4uLi4uTSBCbG9vZHloYXJyeS4uLi4uLlIgQ2F0d2VhemxlLi4uLi4uSi5XCgo+IGlkbGVzCkFscGhhICAgICAgICAgICAgOiBJZGxlemVpdCAgMDI6MjI6MDYgCld1bGZlcmUgICAgICAgICAgOiBJZGxlemVpdCAgMDE6MjM6MDUgCkZpc2hzYmltYm8gICAgICAgOiBJZGxlemVpdCAgMDY6MTY6MTUgCkFuYWtpbiAgICAgICAgICAgOiBJZGxlemVpdCAgMTQ6NTA6MzUgClJvZGVyaWNrICAgICAgICAgOiBJZGxlemVpdCAgMDA6NTk6MDkgClRlbHlhICAgICAgICAgICAgOiBJZGxlemVpdCAgMTI6NTQ6NDUgClJvcmlrICAgICAgICAgICAgOiBJZGxlemVpdCAgMDY6NDY6NDcgCkVtYmUgICAgICAgICAgICAgOiBJZGxlemVpdCAgMDM6MDg6MzIgClppbm8gICAgICAgICAgICAgOiBJZGxlemVpdCAgMDA6MDg6MDQgClRodWZpciAgICAgICAgICAgOiBJZGxlemVpdCAgMDk6NDQ6NDYgCkNhdHdlYXpsZSAgICAgICAgOiBJZGxlemVpdCAgMTQ6Mzk6NDMgCkthcmFtICAgICAgICAgICAgOiBJZGxlemVpdCAgMDY6NTU6MjQgCkdhdG8gICAgICAgICAgICAgOiBJZGxlemVpdCAgMDg6NTU6MTcgCkdhbmRvICAgICAgICAgICAgOiBJZGxlemVpdCAgMTY6NDc6MjMgClF1aWxsaWFuICAgICAgICAgOiBJZGxlemVpdCAgMTk6Mzk6MTIgClJlZG5vc2UgICAgICAgICAgOiBJZGxlemVpdCAgMjA6Mjk6NDIgCgpHaWJ0IGVzIGVpZ2VudGxpY2ggUHJlaXNlIGZ1ZXIgYW0gbGFlbmdzdGVuIGlkbGVuID8gVW5kIGRhIHNhZ3QgbWFuIGRhbm4gaW1tZXIKZGllIE1hZ2llciBpZGxlbiBzbyBsYW5nZS4uaGVoZS4uCgpUc2NoYXUgQWxhaW4gKmd1dGUgTmFjaHQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0ZWxlcGF0aXNjaCBiZWdhYnQgKEJlbnNvbm1hbSwgIDguIEp1bCAxOTk4LCAwOTo0NDowOCk6CkViZW4gaW4gUFY6CgpCYWNrdHJhY2tlciBrcmFlY2h6dDoga3Jyb29hYSAuLi4gQmFja3RyYWNrZXIgd2lsbG4gS2VrcwpMZWlibml6IGtvbW10IGFuLgpMZWlibml6IGdlaHQgbmFjaCBPc3Rlbi4KQmFja3RyYWNrZXIga3JhZWNoenQ6IC4uLiBrcnJyb29vYWFhIC4uLiBIYWxsbyBMZWlibml6IC4uLgoKai5CZW5zb25tYW0gKGdyaW5zZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluIHBhYXIgVm9lZ2VsIGhpZXIgKFR1bml4Z3V0LCAgOC4gSnVsIDE5OTgsIDEwOjU5OjM3KToKRGVpbiBGcmV1bmQgTm92YXN0b3JtIHRlaWx0IERpciBtaXQ6IHRzY2hpZXBwcCA6LSkKRHUgdGVpbHN0IE5vdmFzdG9ybSBtaXQ6IER1IFZPR0VMIERVISA7bykKTm92YXN0b3JtIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCkltIFdhbGQgZGEgc2luZCBkaWUgUmFldWJlciAuLi4uCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgd2VzdGVuIHVuZCBzdWVkb3N0ZW4uCkR1IGhvZXJzdCBWb2dlbHp3aXRzY2hlcm4uCkR1IGhvZXJzdCBkYXMgc3Vlc3NlIExhbGxlbiBlaW5lciBOYWNodGlnYWxsLgpGYXN0IHVuZ2VzY2huaXR0ZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmluIHNjaG1hcnJuIChIaWdobGFuZGVyLCAgOC4gSnVsIDE5OTgsIDEyOjI3OjMzKToKfiMhIG9uPUVpc2kgb3Q9ODk5ODQ0NzAzIG9nPWhhcmRzb2Z0d2FyZQpTYXJldGgga29tbXQga2FtcGZiZXJlaXQgaGVyYmVpLgpTYXJldGggc2FndDogTW9tZW50IG5vY2gKCipraWNoZXIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggd2lsbCBoaWVyIHdlZyEhISAoSGFuZ292ZXIsICA4LiBKdWwgMTk5OCwgMTM6MzE6MTkpOgpEdSB3aXJzdCB2b24gZWluZW0gZ3JhdWVuIE5lYmVsc2NobGVpZXIgZ2V0cmFnZW4sIHdlbGNoZXIgbGFuZ3NhbSB6d2lzY2hlbgpkZW0gV2FsZCB1bmQgZGVyIEJlcmdzcGl0emUgd2FsbHQuIER1cmNoIGRpZSBkaWNrZW4gU2Nod2FkZW4gaXN0IGthdW0gZXR3YXMKYXVzenVtYWNoZW4uCkVzIGdpYnQga2VpbmUgc2ljaHRiYXJlbiBBdXNnYWVuZ2UuCkF1c3NlcmhhbGIgc2llaHN0IER1OgpOZWJlbGlnZXIgV2FsZC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHdlc3RlbiB1bmQgc3VlZHdlc3Rlbi4KRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuCkVpbmUgdGllZmdydWVuZSBNb2VuY2hzcm9iZS4gKDIpCgpCbG9lZGUgR2VzZWxsc2NoYWZ0IGlzdCBkYXMgaGllci4uLgoKLUhhbmdvdmVyCihmaW5kZXRzIGlyZ2VuZHdpZSBrb21pc2NoKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEljaCB3aWxsIGhpZXIgd2VnISEhIChHbG9pbiwgIDguIEp1bCAxOTk4LCAxNTowNDozOCk6Cn4jISBybj1IYW5nb3ZlciBydD04OTk4OTc0Nzkgcmc9c2NobWFycm4KfiMhIHRpZD04OTk4OTc0NzkKSG1tbW0gLi4uLiB3YXJ1bSBiaXN0IER1IG5pY2h0IHJhdXNnZWdhbmdlbiB1bmQgaGFzdCBwYXJ0eSBnZWZlaWVydD8KCmdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdGVsZXBhdGlzY2ggYmVnYWJ0IChFbWJlLCAgOC4gSnVsIDE5OTgsIDE1OjIyOjQzKToKfiMhIHJuPUJlbnNvbm1hbSBydD04OTk4ODM4NDggcmc9c2NobWFycm4KfiMhIHRpZD04OTk4ODM4NDgKbmFudT8KYmFja3RyYWNrZXIgd2FyIGRvY2ggZWluIHNwaWVsZXIgZGVyIHNpY2ggZ2VsIm9zY2h0IGhhdCwKd2llIGtvbW10IGRlciBwYXBhZ2VpIHp1IGRlbSBuYW1lbj8KCmdydXNzLCBlTUJlZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdGVsZXBhdGlzY2ggYmVnYWJ0IChHbG9pbnNvbiwgIDguIEp1bCAxOTk4LCAxNTo0OTozOCk6Cn4jISBybj1FbWJlIHJ0PTg5OTkwNDE2MyByZz1zY2htYXJybgp+IyEgdGlkPTg5OTg4Mzg0OApPY2guIEtlaW4gUHJvYmxlbS4gSWNoIGhhdHRlIGF1Y2ggbWFsIGVpbmUgVGlnZXJlbnRlIG5hbWVucyBNYWhhdG1hLiBEaWUKd2FyIHZpZWxsZWljaHQgbmllZGxpY2ggLi4uCgpnbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogdGVsZXBhdGlzY2ggYmVnYWJ0IChLb29taSwgIDguIEp1bCAxOTk4LCAyMDoxNzoyOSk6Cn4jISBybj1HbG9pbnNvbiBydD04OTk5MDU3Nzggcmc9c2NobWFycm4KfiMhIHRpZD04OTk4ODM4NDgKTWFsIHNlaGVuIHdhcyBCYWNraSBzbyBkYXZvbiBoYWVsdC4uLiAqZ3JpbnMqCgpLb29taSwgV2FuZGVyZXIgdmllbGVyIFdlbHRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBkZW5uIG51PyBHcm9zcyBvZGVyIGtsZWluPyAoTWluZGJsYWRlLCAgOS4gSnVsIDE5OTgsIDAwOjIzOjU2KToKRWluIGtsZWluZXMgU2FlY2tjaGVuIG1pdCBFZGVsc3RlaW5lbi4gKDIpCltuaW1tIHNhZWNrY2hlbl0KRHUgbmltbXN0IGVpbiBncm9zc2VzIFNhZWNrY2hlbiBFZGVsc3RlaW5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc293YXMgbmVpbiAoU2VydmVydXMsICA5LiBKdWwgMTk5OCwgMTA6NDg6MzcpOgpIZWZlIHNwZW5kaWVydCBUdXRzenQgZXR3YXMuClR1dHN6dCB0cmlua3QgZWluZW4gQmVjaGVyIENoYW9zIHVuZCBmdWVobHQgc2ljaCBtZXJrd3VlcmRpZy4KVHV0c3p0ICBiaWRldCBlaW5lIGdyb3NzZW4gQmx1dGZsZWNrLgoKRGVtIG11c3Mgd29obCBzY2hsZWNodGdld29yZGVuIHNlaW4uOikKKHVuZ2VzY2huaXR0ZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNaXQga3JlaXNjaGVuZGVuIFJlaWZlbiBrb21tdCBkaWUgQW1idWxhbnogdm9yIGRlbSBIYXVzIHp1bSBzdGVoZW4sIGRlciAoR3JpbW1ib3JuLCAgOS4gSnVsIDE5OTgsIDE5OjQ2OjIwKToKfiMhIG9uPVNvbmdva3Ugb3Q9ODk5ODk5MDg1IG9nPXdpdHplCn4jISBybj1TY2hva28gcnQ9ODk5ODk5MDE0IHJnPXdpdHplCn4jISB0aWQ9ODk5ODQ1NDI4CkFoYSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1pdCBrcmVpc2NoZW5kZW4gUmVpZmVuIGtvbW10IGRpZSBBbWJ1bGFueiB2b3IgZGVtIEhhdXMgenVtIHN0ZWhlbiwgZGVyIChHcmltbWJvcm4sICA5LiBKdWwgMTk5OCwgMTk6NDY6MzcpOgp+IyEgb249U29uZ29rdSBvdD04OTk4OTkyNTcgb2c9d2l0emUKfiMhIHJuPVNjaG9rbyBydD04OTk4OTkyMjAgcmc9d2l0emUKfiMhIHRpZD04OTk4NDU0MjgKRHUgQXJiZWl0ZXN0IGluIG5lciBLbGluaWs/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNaXQga3JlaXNjaGVuZGVuIFJlaWZlbiBrb21tdCBkaWUgQW1idWxhbnogdm9yIGRlbSBIYXVzIHp1bSBzdGVoZW4sIGRlciAoR3JpbW1ib3JuLCAgOS4gSnVsIDE5OTgsIDE5OjQ2OjQ1KToKfiMhIG9uPVNjaG9rbyBvdD04OTk4OTkzMjAgb2c9d2l0emUKfiMhIHJuPVNvbmdva3UgcnQ9ODk5ODk5MjU3IHJnPXdpdHplCn4jISB0aWQ9ODk5ODQ1NDI4Ck9rIHp1ciBFcmtsYWVydW5nIGljaCB3YXIgMiBKYWhyZSBiZWltIEJ1bmQgU2FuaS4gRGEgZ2Vob2VydGUgZGFzIHp1cgoiR3J1bmRhdXNiaWxkdW5nIiA7KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE1pdCBrcmVpc2NoZW5kZW4gUmVpZmVuIGtvbW10IGRpZSBBbWJ1bGFueiB2b3IgZGVtIEhhdXMgenVtIHN0ZWhlbiwgZGVyIChHcmltbWJvcm4sICA5LiBKdWwgMTk5OCwgMTk6NDY6NDkpOgp+IyEgb249R2FuZG8gb3Q9ODk5ODk5MzkwIG9nPXdpdHplCn4jISBybj1HYW5kbyBydD04OTk4OTkzNDkgcmc9d2l0emUKfiMhIHRpZD04OTk4NDU0MjgKSWNoIGRhY2h0ZSwgZGllIGFyYmVpdGVuIGRhIG1laHIgbWl0IHBhbnplcnJvaHJlbiAuLi4uCkdhbmRvIC0+IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBNaXQga3JlaXNjaGVuZGVuIFJlaWZlbiBrb21tdCBkaWUgQW1idWxhbnogdm9yIGRlbSBIYXVzIHp1bSBzdGVoZW4sIGRlciAoR3JpbW1ib3JuLCAgOS4gSnVsIDE5OTgsIDE5OjQ3OjAxKToKfiMhIG9uPVNvbmdva3Ugb3Q9ODk5ODk5NzEzIG9nPXdpdHplCn4jISBybj1TY2hva28gcnQ9ODk5ODk5MzIwIHJnPXdpdHplCn4jISB0aWQ9ODk5ODQ1NDI4CkRhcyBSYXVzaG9sZW4gb2RlciBkYXMgLi4uIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNjaGxlY2h0ZSBOZXVpZ2tlaXRlbi4uLiAoQW5hdG9sLCAgOS4gSnVsIDE5OTgsIDIyOjU0OjUzKToKfiMhIG9uPUFuYXRvbCBvdD05MDAwMTc2ODkgb2c9ZC51bnRlcndlbHQKfiMhIHJuPVBhZHJlaWMgcnQ9OTAwMDE2OTc4IHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9OTAwMDE2OTc4CkJpc3QgRHUgRGlyIHNpY2hlciwgZGFzcyBEdSBkYXMgc2NocmVpYmVuIHdvbGx0ZXN0PyBPZGVyIHdvIHdhcnN0IER1IG1pdApEZWluZW4gR2VkYW5rZW4sIGFscyBEdSBkZW4gVGl0ZWwgZGVzIEFydGlrZWxzIGVpbmdlZ2ViZW4gaGFzdD8gOm8pCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZXIgd2FjaHQgdWViZXIgZGFzIE1vcmdlbkdyYXVlbi4uLj8gKEFuYXRvbCwgMTAuIEp1bCAxOTk4LCAwNDo0Mjo1MCk6CmttCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBGcmUsIDEwLiBKdWwgMTk5OCwgMDQ6NDE6MzUgKDMgVGVpbG5laG1lcikKCldpbS4uLi4uLi4uLi4uLi4ubSBUaWxseS4uLi4uLi4uLi4uLk0gQmllcmNoZW4uLi4uLi4uLi5SCgpBcmdoLCBudXIgQ2xhdXN0aGFsLVplbGxlcmZlbGQgbWFnaXNjaCB2ZXJ0cmV0ZW4/ICpzZXVmeiogCgpISUlJSUlJSUlMRkUhCgpBbmF0b2wgOm8pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVC1TaGlydC1Nb3RpdmUgKEJvaW5nLCAxMC4gSnVsIDE5OTgsIDE0OjMxOjU0KToKfiMhIG9uPUhhbmdvdmVyIG90PTkwMDA3MzcyOSBvZz1kLnVudGVyd2VsdAp+IyEgcm49R2xvaW5zb24gcnQ9OTAwMDczNjI4IHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9ODk5ODM3NzE0CkhtLi4ua29taXNjaGUgSWRlZSBmdWVybiBULVNoaXJ0Li4uCgpIYW5nb3Zlci0+c2NobWFycm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFQtU2hpcnQtTW90aXZlIChCb2luZywgMTAuIEp1bCAxOTk4LCAxNDozMjowMik6Cn4jISBvbj1HbG9pbnNvbiBvdD05MDAwNzM4MDcgb2c9ZC51bnRlcndlbHQKfiMhIHJuPUhhbmdvdmVyIHJ0PTkwMDA3MzcyOSByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTg5OTgzNzcxNApXYWFhaCA7LSkgQWRkSXRlbSBhdWYgVC1TaGlydCBpc3QgYXVjaCBlaW5lIElkZWUgLi4uIGFlaD8KCkdsb2luIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqZ3JpbnMqIChEaWVkZXIsIDExLiBKdWwgMTk5OCwgMDA6Mjg6NTcpOgpFaW4gRnJvc2NoIHRlaWx0IERpciBtaXQ6IGthbm4gZXMgc2VpbiwgZGFzcyBtYW4gYmVpbSBoYXVzIHZvbSB6b3R0ZWwgenVtCkVpbiBGcm9zY2ggdGVpbHQgRGlyIG1pdDogZnJvc2NoIHdpcmQgd2VubiBtYW4gZWluZW4ga3Vlc3N0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT29wcyAoV29vZHksIDExLiBKdWwgMTk5OCwgMDA6NTA6MjQpOgpSb25kYSB0ZWlsdCBEaXIgbWl0OiBzb2xsdGUgZXIgYXVjaCBuaWNodCwgc29sbHRlIGRpZSgpIGF1ZnJ1ZmVuLi4uIG1pc3QuLi4KUm9uZGEgdGVpbHQgRGlyIG1pdDogTW9tCltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIEdhbmR1ciB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGVyIGtvYm9sZCBsYXNzdCBzaWNoIGFiZXIgemVpdC4uLiAoRW1iZSwgMTEuIEp1bCAxOTk4LCAxMDo0Mjo0OCk6CmV3ZXIKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIFNhbSwgMTEuIEp1bCAxOTk4LCAxMDozNTozMSAoMyBUZWlsbmVobWVyKQoKKkVtYmUuLi4uLi4uLi4uLi5zICpHcmFjZS4uLi4uLi4uLkkuUyAqTGlsaXB1dC4uLi4uLi4uLlMKCj4gdCBncmFjZSBodWh1ISEhISEhISEhISEhISEhISEKRHUgdGVpbHN0IEdyYWNlIG1pdDogaHVodSEhISEhISEhISEhISEhISEhCj4gRWluIGtsZWluZXIgS29ib2xkIHRlaWx0IERpciBmb2xnZW5kZXMgbWl0OgpKZW1hbmQgdGVpbHQgRGlyIG1pdDogQXV0b21hdGlzY2ggZ2V0cmlnZ2VydD8/PyA6KSBbMDU6MTZdCkdyYWNlIHRlaWx0IERpciBtaXQ6IGhleWEgZHUhISB3aWUgZ2VodHMgYW0gbW9yZ2VuIHNvIGZydWVoPyA7KSBbMTA6MzZdCi4uLgoKaHVjaCEgZWluZSBrb2JvbGQtbWVsZHVuZyBtaXQgNSBzdHVuZGVuIHZlcnNwImF0dW5nPz8/CgpncnVzcywgZU1CZWUuCnBzLiBhbiBqZW1hbmQ6IG5laW4sIG5pY2h0IGdldHJpZ2dlcnQsIGljaCBoYWIgZGllIDIgc2NobGFmIGVpbiwgdW5kIGRhcyBlaW5lCmVuZGUgKG9kZXIgd2FycyBlaW4gZGlzY29ubmVjdCkgbGl2ZSBtaXRlcmxlYnQuIDotKSkpKSkpKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBkZXIga29ib2xkIGxhc3N0IHNpY2ggYWJlciB6ZWl0Li4uIChXb29keSwgMTEuIEp1bCAxOTk4LCAxMzoyMjo0Nyk6Cn4jISBybj1FbWJlIHJ0PTkwMDE0NjU2OCByZz1zY2htYXJybgp+IyEgdGlkPTkwMDE0NjU2OApEYXMgbGllZ3QgYW4gZGVyIEFyYmVpdHN3ZWlzZSBkZXMgS29ib2xkcyAtIE1pdHRlaWx1bmdlbiwgZGllCmVyIHNpY2ggZ2VtZXJrdCBoYXQsIHNhZ3QgZXIgRGlyIGVyc3QsIHdlbm4gRHUgZWluIFRlaWxlLU1pdAoob2RlciBlaW5lbiBhbmRlcmVuIFRleHQgdmlhIE1lc3NhZ2UoKSkgYmVrb21tc3QsIG9kZXIgd2VubgpEdSBleHBsaXppdCAna29ib2xkJyB0aXBwc3QgKGhtbSwgbWFuIGtvZW5udGUgZGVuIEtvYm9sZCBqYQphdWNoIGltIEhCIG9kZXIgUmVzZXQgZmFzZWxuIGxhc3Nlbi4uLikuCgpXb29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbnZhc2lvbnNnZWZhaHIgPyAoTm92YXN0b3JtLCAxMS4gSnVsIDE5OTgsIDE0OjMxOjU3KToKRWJlbiBpbiBkZW4gU2NobGFmcmFldW1lbiBkZXIgRHJha29uaWVyIDoKCnJvbGxlIG1hdHRlCkR1IHJvbGxzdCBlaW5lIE1hdHRlIHp1ciBTZWl0ZS4gRGEgRHUgbmljaHRzIGZpbmRlc3QsIHJvbGxzdCBEdSBzaWUgd2llZGVyCnp1cnVlY2suCnJvbGxlIG1hdHRlIDIKRHUgcm9sbHN0IGVpbmUgTWF0dGUgenVyIFNlaXRlLiBEYSBEdSBuaWNodHMgZmluZGVzdCwgcm9sbHN0IER1IHNpZSB3aWVkZXIKenVydWVjay4Kcm9sbGUgbWF0dGUgMwpEdSByb2xsc3QgZWluZSBNYXR0ZSB6dXIgU2VpdGUuIERhIER1IG5pY2h0cyBmaW5kZXN0LCByb2xsc3QgRHUgc2llIHdpZWRlcgp6dXJ1ZWNrLgpyb2xsZSBtYXR0ZSA0CkR1IHJvbGxzdCBlaW5lIE1hdHRlIHp1ciBTZWl0ZS4gRGEgRHUgbmljaHRzIGZpbmRlc3QsIHJvbGxzdCBEdSBzaWUgd2llZGVyCnp1cnVlY2suCgouLi4KCnJvbGxlIG1hdHRlIDUyMzEwMApEdSByb2xsc3QgZWluZSBNYXR0ZSB6dXIgU2VpdGUuIERhIER1IG5pY2h0cyBmaW5kZXN0LCByb2xsc3QgRHUgc2llIHdpZWRlcgp6dXJ1ZWNrLgoKUHJvIFNjaGxhZm1hdHRlIGVpbiBEcmFrb25pZXIgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJnaCA6KSAoQW5hdG9sLCAxMi4gSnVsIDE5OTgsIDA1OjM2OjAwKToKWzxNYXN0ZVI+Okpha3NjaGEgdmVybGFlc3N0IGFscyBMZXR6dGVyIGRpZSBFYmVuZSAnV00nLCB3b3JhdWYgZGllc2Ugc2ljaCBpbgogICAgICAgICAgZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCls8TWFzdGVSPjpKYWtzY2hhIHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ0ZFJywgd29yYXVmIGRpZXNlIHNpY2ggaW4KICAgICAgICAgIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXQpbPE1hc3RlUj46SmFrc2NoYSB2ZXJsYWVzc3QgYWxzIExldHp0ZXIgZGllIEViZW5lICdzZW1tZWwnLCB3b3JhdWYgZGllc2Ugc2ljaAogICAgICAgICAgaW4gZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCls8TWFzdGVSPjpKYWtzY2hhIHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ1dlaXplbicsIHdvcmF1ZiBkaWVzZSBzaWNoCiAgICAgICAgICBpbiBlaW5lbSBCbGl0eiBva3RhcmluZW4gTGljaHRzIGF1ZmxvZXN0Ll0KWzxNYXN0ZVI+Okpha3NjaGEgdmVybGFlc3N0IGFscyBMZXR6dGVyIGRpZSBFYmVuZSAnS2FybHNydWhlJywgd29yYXVmIGRpZXNlCiAgICAgICAgICBzaWNoIGluIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXQpbPE1hc3RlUj46SmFrc2NoYSB2ZXJsYWVzc3QgYWxzIExldHp0ZXIgZGllIEViZW5lICdLYXR6ZW5rcmllZ2VyJywgd29yYXVmCiAgICAgICAgICBkaWVzZSBzaWNoIGluIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXQpbPE1hc3RlUj46SmFrc2NoYSB2ZXJsYWVzc3QgYWxzIExldHp0ZXIgZGllIEViZW5lICdwb2xpdGlrJywgd29yYXVmIGRpZXNlIHNpY2gKICAgICAgICAgIGluIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXQpbPE1hc3RlUj46SmFrc2NoYSB2ZXJsYWVzc3QgYWxzIExldHp0ZXIgZGllIEViZW5lICdQaXJhdGVuJywgd29yYXVmIGRpZXNlIHNpY2gKICAgICAgICAgIGluIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXQpbPE1hc3RlUj46SmFrc2NoYSB2ZXJsYWVzc3QgYWxzIExldHp0ZXIgZGllIEViZW5lICdKdW5nc2VoZXInLCB3b3JhdWYgZGllc2UKICAgICAgICAgIHNpY2ggaW4gZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCls8TWFzdGVSPjpKYWtzY2hhIHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ1JDNS9ERVMnLCB3b3JhdWYgZGllc2Ugc2ljaAogICAgICAgICAgaW4gZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCls8TWFzdGVSPjpKYWtzY2hhIHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ2thdGFrb21iZW4nLCB3b3JhdWYgZGllc2UKICAgICAgICAgIHNpY2ggaW4gZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCls8TWFzdGVSPjpKYWtzY2hhIHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ0RyZXNkZW4nLCB3b3JhdWYgZGllc2Ugc2ljaAogICAgICAgICAgaW4gZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCgpBZWhtLi4uIHZpZWxsZWljaHQgc29sbHRlIG1hbiBkaWVzZSBNZWxkdW5nIGRhbm4gZG9jaCBtYWwgYXVmIGVpbmUgWmVpbGUKenVzYW1tZW5rdWVyemVuLi4uPyA6KQoKQW5hdG9sLCBndXQgZ2VzY2hvY2t0IDpvKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRhbmtlLCBIYW5nb3Zlci4uLiAoVGhlcmluLCAxMi4gSnVsIDE5OTgsIDIwOjAxOjU5KToKCm5uCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCj4gW0FsbGdlbWVpbjpIYW5nb3Zlcl0gbm5hZHcuLi5zb3dhcy4uLgoKaG1wZi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGRhbmtlLCBIYW5nb3Zlci4uLiAoSXZvLCAxMi4gSnVsIDE5OTgsIDIyOjQ0OjQwKToKfiMhIHJuPVRoZXJpbiBydD05MDAyNjY1MTkgcmc9c2NobWFycm4KfiMhIHRpZD05MDAyNjY1MTkKbm4KTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4KPiBbQWxsZ2VtZWluOkhhbmdvdmVyXSBubmFkdy4uLnNvd2FzLi4uCgpobXBmLi4uCj4gTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4KCkhtcGZmIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDaGFvcyAoVGVkZHksIDEzLiBKdWwgMTk5OCwgMDI6MzY6MTYpOgpIaWhvLAoKenVtIERhbmsgZnVlciBlaW5lbiBuaWNodCBuYWVoZXIgZ2VuYW5udGVuIEFydGlrZWwgaGllciBudW4gMiBtaXIgYW5vbnltCnp1Z2VzYW5kdGUgTG9nZmlsZXMgdWViZXIgdW5zZXJuIGZ1cmNodGVpbmZsb2Vzc2VuZGVuIENoYW9zbWFnaWVyOgoKQmllcmNoZW4gbXVybWVsdCBsZWlzZSBXb3J0ZSBlaW5lciBndXR0dXJhbGVuIFNwcmFjaGUgdW5kIGxhZXNzdCBlaW5lIHJvdGUsCm1hZ2lzY2hlIFdvbGtlIGVudHN0ZWhlbiwgYXVzIGRlciBlaW5lIGZpbnN0ZXJlIEdlc3RhbHQgaGVydm9ya29tbXQuCkludGFyYmlyIGtvbW10IGFuLgpJbnRhcmJpciBoYXV0IEJpZXJjaGVuIGVpbmUgYXVmcyBNYXVsLgoKQmllcmNoZW4gZHJ1ZWNrdCBhdWYgZWluZW4gS25vcGYgc2VpbmVyIEtub3BmbGVpc3RlLgpCaWVyY2hlbiB2ZXJiYW5udCBJbnRhcmJpci4KSW50YXJiaXIgd2lyZCB2b24gZWluZXIgdW53aWRlcnN0ZWhsaWNoZW4gTWFjaHQgaW5zIE5pY2h0cyBnZXpvZ2VuLgpCaWVyY2hlbiBncnVtbWVsdCBpcmdlbmRldHdhcyBVbnZlcnN0YWVuZGxpY2hlcyB1bmQgbWFjaHQgZGFiZWkgbWFnaXNjaGUKWmVpY2hlbi4gUGxvZXR6bGljaCBiaWxkZXQgc2ljaCBlaW4gUmlzcyBpbiBkZXIgUmVhbGl0YWV0LgpLcnVmdHVyIGtvbW10IGFuLgpLcnVmdHVyIGhhdXQgQmllcmNoZW4gZWluZSBpbiBkaWUgRnJlc3NlLgoKCkphamEsIENoYW9zIGhhbHQgOy0pClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYWphLCBUYW50Y2hlbiB3aXJkIGFsdCAoVGVkZHksIDEzLiBKdWwgMTk5OCwgMDI6NTQ6NDEpOgpbVG9kOkxhcnNdIEVpbiBTdGllciBoYXQgZ2VyYWRlIFNtZWFnb2wgdW1nZWJyYWNodC4gPDAyOjI0OjM4PgoKU2hhcmlhIHRlaWx0IERpciBtaXQ6IEljaCBrYW5uIHNlaW5lIFNhY2hlbiBuaWNodCBmaW5kZW4uCmt1cnogZGFyYXVmOgpTaGFyaWEgdGVpbHQgRGlyIG1pdDogdW5kIHBhZHJlaWMga29ubnRlIGhlbGZlbiA6LSkgWzAyOjQyXQpEdSB0ZWlsc3QgU2hhcmlhIG1pdDogd29yYW4gbGFncz8KU2hhcmlhIHRlaWx0IERpciBtaXQ6IHNtZWFnb2wgd2FyIHBhcmF3ZWx0IHVuZCBpY2ggbmljaCA6KSBbMDI6NDhdICAgCgpTaGFyaWEgdGVpbHQgRGlyIG1pdDogcGVpbmxpY2ggc293YXMgOi0pIFswMjo0OF0KCipncmlucyoKVGVkZHkgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSmFqYSwgVGFudGNoZW4gd2lyZCBhbHQgKE5haXJvbGYsIDEzLiBKdWwgMTk5OCwgMDM6MDg6MTQpOgp+IyEgcm49VGVkZHkgcnQ9OTAwMjkxMjgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAwMjkxMjgxCm5hamEgLi4gZG9vZmUgWndlaXRpIGhhbHQgOi0pCgpOYWlyb2xmIGhhdCBuaXggZGFtaXQgenUgdHVuICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXJrZW5udG5pcyBlaW5lciBBbWVyaWthbmVyaW4uLi4gKEFuYXRvbCwgMTMuIEp1bCAxOTk4LCAwMzozMToxOCk6CgpHbG9yaWUgc2FndDogWWVhaCwgbGlmZSBpcyB0b3VnaCBmb3IgS2FuaW5jaGVucyBhdCBNRy4KCldvIHNpZSByZWNodCBoYXQuLi4KCkFuYXRvbCA6bykgCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmFqYSAoVGVkZHksIDEzLiBKdWwgMTk5OCwgMDU6NDY6MDkpOgpBbmF0b2wga2FubiBlaW5lIGdhbnplIE1lbmdlIDspCkFuYXRvbCBncmluc3QgRGljaCBhbi4KRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpBbmF0b2wgc2FndDogaWNoIGthbm4gYXVjaCBKRURFUlpFSVQgYXVmaG9lcmVuISA6KQoKVGVkZHksIHp3ZWlmZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFyZ2ggOikgKEJvaW5nLCAxMy4gSnVsIDE5OTgsIDA5OjAyOjEwKToKfiMhIHJuPUFuYXRvbCBydD05MDAyMTQ1NjAgcmc9c2NobWFycm4KfiMhIHRpZD05MDAyMTQ1NjAKSWNoIGJpbiBlaGVyIGdlc2Nob2NrdCwgZGFzcyBlcyBMZXV0ZSBnaWJ0LCBkaWUgZGllc2UgRWJlbmUgdGF0c2FlY2hsaWNoCm1pdGhvZXJlbiAuLi4gOykKICBKZW1hbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hc3NlbnNlbGJzdG1vcmQgPz8/IChKYXNvbnJpZ2lkLCAxMy4gSnVsIDE5OTgsIDExOjA1OjA4KToKTmV1bGljaCwgYmVpIExhcnMgOgoKW1RvZDpMYXJzXSBFaW4gRnVlcmNodGVyLUxpY2ggaGF0IGdlcmFkZSBMZWxsZG9yaW4gdW1nZWJyYWNodC4gPDEwOjM0OjAxPgpbVG9kOmVpbiBGdWVyY2h0ZXItTGljaF0gU2NoaWNodCBpbSBTY2hhY2h0ISAgPDEwOjM0OjAxPgpbVG9kOkxhcnNdIEVpbmUgTmFjaGJhcmluIGRlcyBCcnVkZXJzIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgaGF0IGdlcmFkZSBLZXkKW1RvZDpMYXJzXSB1bWdlYnJhY2h0LiA8MTA6MzY6MDY+CltUb2Q6VG9kXSBEQVMgV0FSIFNDSE9OIERBUyA0MjhURSBNQUwhIDwxMDozNjowNj4KW1RvZDplaW5lIE5hY2hiYXJpbiBkZXMgQnJ1ZGVycyBkZXMgU2Nod2VydG1laXN0ZXJzXSBTY2hpY2h0IGltIFNjaGFjaHQhIApbVG9kOmVpbmUgTmFjaGJhcmluIGRlcyBCcnVkZXJzIGRlcyBTY2h3ZXJ0bWVpc3RlcnNdIDwxMDozNjowNj4KW1RvZDpMYXJzXSBTY2hyZWluZW1ha2VycyBpaHJlIFNjaHdlc3RlciBoYXQgZ2VyYWRlIFR1YXJlZyB1bWdlYnJhY2h0LgpbVG9kOkxhcnNdIDwxMDozNzozNj4KW1RvZDpTY2hyZWluZW1ha2VycyBpaHJlIFNjaHdlc3Rlcl0gU2NoaWNodCBpbSBTY2hhY2h0ISAgPDEwOjM3OjM2PgpbVG9kOkxhcnNdIEVpbmUgTmFjaGJhcmluIGRlcyBCcnVkZXJzIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgaGF0IGdlcmFkZSBMZWxsZG9yaW4KW1RvZDpMYXJzXSB1bWdlYnJhY2h0LiA8MTA6NDA6MTI+CltUb2Q6ZWluZSBOYWNoYmFyaW4gZGVzIEJydWRlcnMgZGVzIFNjaHdlcnRtZWlzdGVyc10gU2NoaWNodCBpbSBTY2hhY2h0ISAKW1RvZDplaW5lIE5hY2hiYXJpbiBkZXMgQnJ1ZGVycyBkZXMgU2Nod2VydG1laXN0ZXJzXSA8MTA6NDA6MTI+CgpOYWphLCB2b24gS2V5IGlzdCBtYW4ncyBqYSBnZXdvZWhudCwgYWJlciBnbGVpY2ggZGllIGdhbnplIEZhbWlsaWUgbWl0bmVobWVuCj8/PwoKSmFzb24sIGhldXRlIG1hbCBzY2hhcnJtZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgLCggKE5vdmFzdG9ybSwgMTMuIEp1bCAxOTk4LCAxMToyMDo1NSk6CgpEdSB0ZWlsc3QgRGVsIG1pdDogYWxsZXMga2xhciA/IDspCkRlbCB0ZWlsdCBEaXIgbWl0OiBobS4uLiB3aXJkIHNpY2ggemVpZ2VuLi4uIGJpbiBpbiBtb3JvbiA6KQpSZWFwZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkR1IHRlaWxzdCBEZWwgbWl0OiBzYWcgYmVzY2hlaWQgd2VubiBkdSBoaWxmZSBicmF1Y2hzdApbVG9kOkxhcnNdIEVpbmUgUmllc2Vuc3Bpbm5lIGhhdCBnZXJhZGUgRGVsIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBSaWVzZW5zcGlubmVdIERlbCBhbHMgQWJlbmRlc3NlbiB3YXIgZ2FyIG5pY2h0IG1hbCBzY2hsZWNodC4gRGFyZgpbVG9kOkVpbmUgUmllc2Vuc3Bpbm5lXSBpY2ggamV0enQgZW5kbGljaCBtZWluIFZlcmRhdXVuZ3NzY2hsYWVmY2hlbiBoYWx0ZW4/CltUb2Q6RWluZSBSaWVzZW5zcGlubmVdICpnZW5lcnZ0IGd1Y2sqIQoKTm92YSwgc2V1ZnplbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11bmRnZXJ1Y2guLi4/IDopIChBbmF0b2wsIDEzLiBKdWwgMTk5OCwgMTc6MDg6MjYpOgpaZXBoeXJzICpwZmZmZmZmZmZ0KiBob2Vyc3QgRHUgc29nYXIgYXVzIGRlciBGZXJuZS4KW01vZXJkZXI6R2Vpc3QgZWluZXMgSG9oZW5wcmllc3RlcnNdIE5hIHByaW1hLCBzY2hvbiB3aWVkZXIgZGllc2VyIGR1bmtsZSBUeXAhCltNb2VyZGVyOkdlaXN0IGVpbmVzIEhvaGVucHJpZXN0ZXJzXSBVbmQgYWxsZXMgbnVyIHdlZ2VuIFplcGh5ci4KCkFuYXRvbCwgZnJvaCB1ZWJlciBkaWUgRmVybmUKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGluIEthdHptYW5kdSAoRGllZGVyLCAxMy4gSnVsIDE5OTgsIDE3OjI1OjM5KToKdG9ldGUgbWFzYW11bmUKLi4uCk1hc2FtdW5lIHNhZ3Q6IEhlLCBsYXNzIGRhcywgRGllZGVyIQoKLi4KYmVmZWhsZSB5cmludHJpIHRvZXRlIG1hc2FtdW5lCk1hc2FtdW5lIHNhZ3Q6IEhlLCBsYXNzIGRhcywgR1VJTEQuY2hhb3MhCgo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ldWxpY2ggaW4gS2F0em1hbmR1IChOb3Zhc3Rvcm0sIDEzLiBKdWwgMTk5OCwgMTc6Mjg6MzgpOgp+IyEgcm49RGllZGVyIHJ0PTkwMDM0MzUzOSByZz1zY2htYXJybgp+IyEgdGlkPTkwMDM0MzUzOQpSdWJyaWsgMzg6IHNjaG1hcnJuLCBBcnRpa2VsOiAzOCB2b24gMzgKbmV1bGljaCBpbiBLYXR6bWFuZHUgKERpZWRlciwgMTMuIEp1bCAxOTk4LCAxNzoyNTozOSk6Cgp0b2V0ZSBtYXNhbXVuZQouLi4KTWFzYW11bmUgc2FndDogSGUsIGxhc3MgZGFzLCBEaWVkZXIhCgouLgpiZWZlaGxlIHlyaW50cmkgdG9ldGUgbWFzYW11bmUKTWFzYW11bmUgc2FndDogSGUsIGxhc3MgZGFzLCBHVUlMRC5jaGFvcyEKCjopCltUb2Q6TGFyc10gTWFzYW11bmUgaGF0IGdlcmFkZSBEaWVkZXIgdW1nZWJyYWNodC4KW1RvZDpNYXNhbXVuZV0gVW50ZXJzY2hhZXR6ZSBuaWUgZGllIE1hY2h0IGRlcyBHZWlzdGVzIQoKTWFzYW11bmUgc2NoZWludCBHVUlMRC5jaGFvcyBuaWNoIHp1IG1vZWdlbiA7LSkKTm92YSwga29wZnNjaHVldHRlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bmdlc2Nobml0dGVuLi4uIChBbmF0b2wsIDE0LiBKdWwgMTk5OCwgMDE6MTU6MzIpOgpbQWxsZ2VtZWluOkdyb29dIGFsbHNvIHNjaGxhZmZpcyAsIG5hZWNodGxlClRvZXRlciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCkVpbmUgV2VsdCBicmljaHQgZnVlciBtaWNoIHp1c2FtbWVuLi4uCkFuYXRvbCA7bykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdW5nZXNjaG5pdHRlbi4uLiAoVGVkZHksIDE0LiBKdWwgMTk5OCwgMDE6MTY6MjgpOgp+IyEgcm49QW5hdG9sIHJ0PTkwMDM3MTczMiByZz1zY2htYXJybgp+IyEgdGlkPTkwMDM3MTczMgpFaW5lIFdlbHQ/IERlaW5lIFdlbHQgb2RlciBoYXN0IGR1IG5vY2ggbmUgYW5kZXJlIFdlbHQgYXVzc2VyIGRpZXNlciBoaWVyPwoKVGVkZHksIGhhdCBtYWwgdm9uIFJMIGdlaG9lcnQuLi4gaXJnZW5kd2Fubi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdW5nZXNjaG5pdHRlbi4uLiAoQW5hdG9sLCAxNC4gSnVsIDE5OTgsIDAxOjE3OjE2KToKfiMhIHJuPVRlZGR5IHJ0PTkwMDM3MTc4OCByZz1zY2htYXJybgp+IyEgdGlkPTkwMDM3MTczMgpNb21lbnRhbiBiaW4gaWNoIG1pciBkYSBnYXIgbmljaHQgc28gc2ljaGVyLi4uCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHYW56IHNjaG9lbiBhbHQsIGRhcyBNRy4uLiAoSGFuZ292ZXIsIDE0LiBKdWwgMTk5OCwgMTM6Mzg6MjcpOgpbZmluZ2VyIGdhc3QxXQpHYXN0MSBpc3QgbmljaHQgYW53ZXNlbmQuClp1bGV0enQgZWluZ2Vsb2dndCB2b246IE9lc3RlcnJlaWNoClp1bGV0enQgYXVzZ2Vsb2dndDogRG9uLCAgMS4gSmFuIDE5NzAsIDAwOjU5OjU5ICgxMDQyMWQgMTE6Mzc6NDEpCgpXdXNzdGUgZ2FyIG5pY2h0LCBkYXNzIGVzIHVucyBzY2hvbiBzbyBsYW5nZSBnaWJ0LgoKLUhhbmdvdmVyCihraWNoZXJuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsdGVyIFNhY2sgISAoTW9yZ290aCwgMTQuIEp1bCAxOTk4LCAxNDozMTozMSk6Ck1haGF0bWEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbiBGcmV1bmQgTWFoYXRtYSB0ZWlsdCBEaXIgbWl0OiBiYWgsIHNlaXRkZW0gaWNoIG1pY2ggYXVmcyBhbHRlbnRlaWwKRGVpbiBGcmV1bmQgTWFoYXRtYSB0ZWlsdCBEaXIgbWl0OiB6dXJ1ZWNrZ2V6b2dlbiBoYWIsIGhhdCBkaWUgaHlkcmEKRGVpbiBGcmV1bmQgTWFoYXRtYSB0ZWlsdCBEaXIgbWl0OiBlcnN0YXVubGljaGUgdWViZXJsZWJlbnNjaGFuY2VuClRPRC1LQVJBVEVPUksgOiBaaW5vIGhhdCBkZW4gS2FyYXRlb3JrIGdla2lsbHQuCgpKYWphLCBhYmVyIERlaW4gYXJtZXIgMnRpZSBtdXNzIGxlaWRlbiA7LSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbiBDaWZlcnMgSG9laGxlIChEaWVkZXIsIDE0LiBKdWwgMTk5OCwgMTY6NDI6MjkpOgpEZXIgUGZvZXJ0bmVyIHNwaWVsdCBtaXQgc2VpbmVtIExvY2hlci4KCipncmlucyogZGFzIGthbm4gbWFuIGpldHp0IHNvIG9kZXIgc28gdmVyc3RlaG4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlZmx1ZWdlbCB1bmQgQ28uIChUZWRkeSwgMTQuIEp1bCAxOTk4LCAxOTozMDo0MSk6ClRoZXJpbiBzY2htaWVndCBzaWNoIGFuIFplcGh5ciBhbi4gICAgIApOb3Zhc3Rvcm0gZmxhdHRlcnQgYXVmZ2VyZWd0IG1pdCBkZW4gRmx1ZWdlbG4uCk5vdmFzdG9ybSBtdXN0ZXJ0IFRoZXJpbi4KVGhlcmluIGJyZWl0ZXQgc2VpbmUgbWFlY2h0aWdlbiBTY2h3aW5nZW4gYXVzIHVuZCBmbGllZ3QgdW0gbm92YXN0b3JtIGhlcnVtLgpOb3Zhc3Rvcm0gc2FndDogbGFzcyBtYW1hIGluIHJ1aGUhClRoZXJpbiBsZWd0IHNlaW5lIEZsdWVnZWwgenVzYW1tZW4uCgoKVGVkZHkgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNlbHRzYW1lIGFuZmFlbGxlLi4uIChUaGVyaW4sIDE0LiBKdWwgMTk5OCwgMjA6MDY6MjApOgoKPiBUZWRkeSB0cm9lc3RldCBaZXBoeXIgdm9yc2ljaHRpZy4KVGVkZHkgZnVjaHRlbHQgbWl0IGRlbiBIYWVuZGVuIGhlcnVtLCB1bmQgc3ByaWNodCBzZWx0c2FtZSBXb3J0ZS4gUGxvZXR6bGljaApzY2hlaW5lbiBzZWluZSBzZWx0c2FtZW4gQW5mYWVsbGUgd2VnIHp1IHNlaW4uCgpULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNlbHRzYW1lIGFuZmFlbGxlLi4uIChUZWRkeSwgMTQuIEp1bCAxOTk4LCAyMDowNjo0Mik6Cn4jISBybj1UaGVyaW4gcnQ9OTAwNDM5NTgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAwNDM5NTgwCkNoYW9zIGhhbHQuCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIDspIChUZWRkeSwgMTQuIEp1bCAxOTk4LCAyMDowODozMSk6CkRhcyBVbmdlaGV1ZXIgbGFjaHQgdWViZXIgRGljaCBrbGVpbmVuIFd1cm0uCiAgLi4uLi5DaGFvcy9XYXNzZXIrU2Nobml0dCBEdS4uLi4uLi4uLi4uIDogVW5nZWhldWVyLi4uLiAqKioqKioqKiAtPiB6dSBCcmVpCiAKRGFzIFVuZ2VoZXVlciBmYWVsbHQgdG90IHp1IEJvZGVuLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBVbmdlaGV1ZXJzXSBJY2ggaGFiIGtlaW5lIEFuZ3N0IHZvciBkaXIsIFRlZGR5IQoKV2VyIHp1bGV0enQgbGFjaHQuLi4gOykKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZmFlaGlnZSBNYWdpZXIgPyA7LSkgKE5vdmFzdG9ybSwgMTUuIEp1bCAxOTk4LCAxMTowMTozMyk6CkRpZSBXYW5kIGltIE9zdGVuIHNjaGxpZXNzdCBzaWNoLgpDYWxpbWVyYSBtYXVlcnQgZGVuIER1cmNoZ2FuZyB6dS4KRHUgbmlja3N0IHp1c3RpbW1lbmQuCkNhbGltZXJhIGRlbmt0ICAgLiBvIE8gKHJ1aGUgaXMpCkR1IGdyaW5zdC4KUGxvZXR6bGljaCBvZWZmbmV0IHNpY2ggZGllIFdhbmQgaW0gT3N0ZW4uCkphc29uUmlnaWQgcmVpdGV0IGF1ZiBzZWluZW0gRHJhY2hlbiBoZXJlaW4uCkphc29uUmlnaWQgcmVpdGV0IGF1ZiBzZWluZW0gRHJhY2hlbiBuYWNoIFN1ZWRlbi4KCm5vY2ggZWluIGJpc3NjaGVuIGxlcm5lbiBkYW5uLi4uCk5vdmEgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW5mYWVoaWdlIE1hZ2llciA/IDstKSAoSmFzb25yaWdpZCwgMTUuIEp1bCAxOTk4LCAxMTowNToyMyk6Cn4jISBybj1Ob3Zhc3Rvcm0gcnQ9OTAwNDkzMjkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAwNDkzMjkzCk5vZSwgbnVyIGFuIGZhbHNjaGVyIFN0ZWxsZSBnZWlkZWx0ICpncmlucyogOykKCkphc29uCgpQLlMgOiBBbHRlcm5hdGl2ZW4gOiBIb3Juc3Bpbm5lLCBBdGFsYW4sIEtsaXR6ZWxkcm9tLCBMZXVjaHR0cm9sbGUgLi4uIERhIGlzdAptYW4gbmllIGFsbGVpbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW50ZXJlc3NhbnRlIFdhZmZlIDopIChIYW5nb3ZlciwgMTUuIEp1bCAxOTk4LCAxMzoyOTo0NSk6CkdyYWRlIGdlc2VoZW46CgpFaW4gT3JrIHdvbGx0ZSBtYWwgYmVzb25kZXJzIGNvb2wgc2VpbiB1bmQgZWluZSBGaW50ZSBnZWdlbiBEaWNoIG1hY2hlbiwgZG9jaAppaG0gZ2VzY2hpZWh0IGVpbiBkdW1tZXMgTWlzc2dlc2NoaWNrIHVuZCAwIFdhZmZlIGZsaWVndCBpbiBob2hlbSBCb2dlbiBkdXJjaApkaWUgTHVmdC4KCldvIGdpYnRzIGRlbm4gZGllIDAtV2FmZmU/IDspCi1IYW5nb3ZlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc293YXMuLi4gKEJlZWx6ZWJ1YiwgMTUuIEp1bCAxOTk4LCAxNDoyNTozMCk6CklzdCBkYXMgbm9ybWFsID8KCj4gZXJob2VoZQpEdSBrb2VubnRlc3QgZGVpbmUgU3R1ZmUgZXJob2VoZW4hCj4gZXJob2VoZQpEaXIgZmVobGVuIGJpcyB6dXIgbmFlY2hzdGVuIFN0dWZlIG5vY2ggMSBTdHVmZW5wdW5rdGUuCgpCZWltIGRyaXR0ZW4gTWFsIGhhdHMgZGFubiBnZWtsYXBwdC4uLgoKQmVlbHplIF06LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYXVmIGRlbSBTdGFtbXRpc2NoIChSb2NodXMsIDE1LiBKdWwgMTk5OCwgMTc6MzM6MzIpOgpUaGVtYSB3YXIgZ2VyYWRlICJHb2R6aWxsYSI6CkNhdHdlYXpsZSBzYWd0OiBEZXIgU3BydWNoIGlzdCBuZSBBbnNwaWVsdW5nIGF1ZiBpcmdlbmQgZWluZW4gU2xvZ2FuCiAgaW4gZGVuIFVTQS4uLi4KV2FyZ29uIHNhZ3Q6IFZpZWxsZWljaHQgdm9uIFZpYWdyYS1HZWduZXJuPwpDYXR3ZWF6bGUgc2FndDogRGllIGhhZXR0ZW4gZGllIFBpbGxlICJHb2R6aWxsYSIgbmVubmVuIHNvbGxlbi4KUm9jaHVzIHNhZ3Q6IER1IG1laW5zdCwgZGFubiBoYWV0dGVuIGRpZSBhbHMgV2VyYmVzbG9nYW4gIkVzIGtvbW10CiAgRE9DSCBhdWYgZGllIEdyb2Vzc2UgYW4hIiBuZWhtZW4ga29lbm5lbj8KQ2F0d2VhemxlIG5pY2t0LgpDYXR3ZWF6bGUgcm90Zmx0LgpXYXJnb24gcm90Zmx0LgpSb2NodXMgcm90Zmx0LgpHb3JvZyBsYWVjaGVsdC4KQmVlbHplYnViIGdyaW5zdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoWmVyLCAxNS4gSnVsIDE5OTgsIDIyOjEzOjExKToKW0tsZXJ1czpQYWtlXSBvIGhhLiBkaWUgYmxpbmRoZWl0IGR1ZXJmdGUgbnVuIGRlaW4gZ2VyaW5nc3RlcyBwcm9iIHNlaW4gOigKW0tsZXJ1czpQYWtlXSA8MjI6MTI6Mzc+CltUb2Q6TGFyc10gWnUgbGFuZ2VyIEF1ZmVudGhhbHQgaW4gZGVyIHByYWxsZW4gU29ubmUgaGF0IGdlcmFkZSBQdWsKW1RvZDpMYXJzXSB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT3JrcyBoYWx0IChUZWRkeSwgMTYuIEp1bCAxOTk4LCAwMzo1MDozMCk6CnVudCBvcmsKQWxzbyBkaWVzZXIgT3JrIHNpZWh0IGlyZ2VuZHdpZSB1ZWJlcmhhdXB0IG5pY2h0IG1laHIgZnJldW5kbGljaCBhdXMuIE1pdApncmltbWlnZW4sIGR1bmtlbHJvdGVuIEF1Z2VuIGZ1bmtlbHQgZXIgRGljaCBhbi4gRXIgaXN0IHNpY2hlciBiZXJlaXQsIERpcgpzb2ZvcnQgRGVpbmUgS2VobGUgYXVmenVzY2hsaXR6ZW4sIHdlbm4gRHUgaXJnZW5kd2FzIGZhbHNjaGVzIG1hY2hzdC4KRXIgaXN0IGxlaWNodCBhbmdlc2NobGFnZW4uCk1vcmdvdGggaXN0IGFtIGdhbnplbiBLb2VycGVyIGJlaGFhcnQuCk1vcmdvdGggaXN0IHZvbiBlaW5lbSBtYWdpc2NoZW4gU2NoaW1tZXIgdW1nZWJlbi4KClRlZGR5LCB3b2xsdGUgZXMgZ2FybmljaHQgU08gZ2VuYXUgd2lzc2VuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtcGYsIGltbWVyIHNvbGxlbiBkaWUgR2xhZGlhdG9yZW4gZ2V3aW5uZW4gOy0pIChOb3Zhc3Rvcm0sIDE2LiBKdWwgMTk5OCwgMDg6NDM6MTkpOgoKbgpEZXIgV2FlY2h0ZXIgc2FndDogU29ycnksIGFiZXIgZWluZW4gWmF1YmVydHJhbmsgaGFzdCBEdSBzY2hvbiBkcmVpbWFsCmJlbnV0enQuIFVuZCBtZWhyIGFscyBkcmVpbWFsIGRhcmYgbWFuIGVpbmVuIEdlZ2Vuc3RhbmQgbmljaHQgYmVudXR6ZW4hCkRlc2hhbGIga2FubiBpY2ggRGljaCBuaWNodCBpbiBkaWUgQXJlbmEgbGFzc2VuIQoKUG9laCwgZGFubiBoYWx0IG5pY2h0IQpOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT3JrcyBoYWx0IChNb3Jnb3RoLCAxNi4gSnVsIDE5OTgsIDA5OjI4OjU1KToKfiMhIHJuPVRlZGR5IHJ0PTkwMDU1MzgzMCByZz1zY2htYXJybgp+IyEgdGlkPTkwMDU1MzgzMApUamEsIGRhcyBzaW5kIGhhbHQgZGllIEdpbGRlbiwgZGllIG51ciBnZXR1aWQoKSBiZW51dHplbiA7LSkKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp1IGZydWVoIGdlZnJldXQgKE1vcmdvdGgsIDE2LiBKdWwgMTk5OCwgMDk6NDk6NDIpOgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gVHJhbmNlZmVhciBpbiBSdWJyaWsgImFsbGdlbWVpbmVzIi4KVWViZXJnZWhlIEFydGlrZWwgNTIgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KW0RlYnVnOk1QQV0gSGllciBzdGVodCBuaWNodCBtZWhyIGRyaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTYW5pdGFlcmUgRWlucmljaHR1bmdlbiBpbiBLbmVpcGVuIChCb2luZywgMTYuIEp1bCAxOTk4LCAxMTozMjo0NCk6Cn4jISBvbj1XaWRld2l0dCBvdD05MDA1ODE1MjUgb2c9cG9saXplaS5iZXNjaHdlcmRlbgpNaXIgaXN0IGF1ZmdlZmFsbGVuLCBkYXMgaGllciBrZWluZSBLbmVpcGUgZWluIEtsbyBiZXNpdHp0IC4uLiBsYXV0IEdlc2V0egpkdWVyZmVuIHNvbGNoZSBFdGFibGlzc2VtZW50cyBudXIgYmlzIDE5LjAwIFVociBvZmZlbiBoYWJlbiAuLi4KTGF1dCBtZWluZXIgRXJmYWhydW5nZW4sIHdpcmQgZGllc2UgQmVzY2hyYWVua3VuZyBhYmVyIG5pY2h0IGVpbmdlaGFsdGVuIC4uLgp0amEsIGRhIG11c3MgZHJpbmdlbmQgd2FzIHVudGVybm9tbWUgbiB3ZXJkZW4gLi4uCgplaW4gdmVyYWVyZ2VydGVyIGtuZWlwZW4gbmFjaGJhcgp3aWRld2l0dAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNhbml0YWVyZSBFaW5yaWNodHVuZ2VuIGluIEtuZWlwZW4gKEJvaW5nLCAxNi4gSnVsIDE5OTgsIDExOjMzOjM1KToKfiMhIG9uPUdsb2luc29uIG90PTkwMDU4MTU4MiBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISBybj1XaWRld2l0dCBydD05MDA1ODE1MjUgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTkwMDU4MTUyNQpEdSBtdXNzdCBkZW0gV2lydCBudXIgc2FnZW4sIHdhbm4gMTk6MDAgVWhyIGlzdCwgZGFubiBtYWNodCBlciBhdWNoIHp1LgpBbSBiZXN0ZW4gemVpZ3N0IER1IGlobSwgd2VubiBkaWUgU29ubmUgdW50ZXJnZWh0LgoKR2xvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTYW5pdGFlcmUgRWlucmljaHR1bmdlbiBpbiBLbmVpcGVuIChCb2luZywgMTYuIEp1bCAxOTk4LCAxMTozMzo0Mik6Cn4jISBvbj1NYWhhdG1hIG90PTkwMDU4MTU4OCBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISBybj1XaWRld2l0dCBydD05MDA1ODE1MjUgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTkwMDU4MTUyNQpGYWxzY2ghIEVzIGdpYnQgS25laXBlbiwgZGllIEtsb3MgYmVzaXR6ZW4sIHdlbm4gYXVjaCBuaWNodCBhbGxlLgpNYWhhdG1hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2FuaXRhZXJlIEVpbnJpY2h0dW5nZW4gaW4gS25laXBlbiAoSG9ibywgMTYuIEp1bCAxOTk4LCAxMjoxNTo1MSk6Cn4jISBybj1Cb2luZyBydD05MDA1ODE1NjQgcmc9c2NobWFycm4KfiMhIHRpZD05MDA1ODE1NjQKV2VsY2hlcyBHZXNldHo/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2FuaXRhZXJlIEVpbnJpY2h0dW5nZW4gaW4gS25laXBlbiAoVGVkZHksIDE2LiBKdWwgMTk5OCwgMTM6MjI6MTYpOgp+IyEgcm49Qm9pbmcgcnQ9OTAwNTgxNTY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAwNTgxNTY0CkVzIGdpYnQgaGllciAyIEtuZWlwZW4gbWl0IEtsbywgbWluZGVzdGVucy4KClRlZGR5LCBncnVtbWVsdCBydW0gd2VpbCBtZWlzdCBuYWNoIDE5IFVociBkYSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNhbml0YWVyZSBFaW5yaWNodHVuZ2VuIGluIEtuZWlwZW4gKEtvb21pLCAxNi4gSnVsIDE5OTgsIDE4OjA2OjQ2KToKfiMhIHJuPUJvaW5nIHJ0PTkwMDU4MTU2NCByZz1zY2htYXJybgp+IyEgdGlkPTkwMDU4MTU2NApIbSwgdW5kIGluIGRlciBXaWxoZWxtc2J1cmdlciBLbmVpcGUgaXN0IGRhcyBEYW1lbi0gdW5kIEhlcnJlbmtsbyBlaW5lCklsbHVzaW9uPwoKKmdydWViZWwqCktvb21pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYWNodCBpbiBNb3JnZW5ncmF1ZW4gKEtldG9zLCAxNy4gSnVsIDE5OTgsIDA5OjA3OjM1KToKRGFzIGZhbmQgaWNoIGhldXRlIG1vcmdlbiBpbiBtZWluZW0gRmVuc3Rlci4gV2FyIG5lIHJ1aGlnZSBOYWNodDoKRXMgaGF0IDIzIGdlc2NobGFnZW4uCktpZGR5IHJ1ZnQ6IGhpbGJlcnQKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KTWVybGluIHJ1ZnQ6IEljaCBoYWIgbWljaCB2ZXJsYXVmZW4gLSBpY2ggc2NoYWV0emUsIFZpcGVyIGhhdCB3YXMgZGFtaXQgenUKdHVuLi4uCkVzIGhhdCAwIGdlc2NobGFnZW4uClBsb2V0emxpY2ggaG9lcnN0IER1IGVpbiBsYXV0ZXMgU2NobmFyY2hlbi4gUGFuY2FrZSBoYXQgZGVtIFNjaHJhdApzZWluIGxhbmdlcnNlaG50ZXMgU2NobGFmbWl0dGVsIGdlYnJhY2h0LgpEZWluIEZyZXVuZCBHb2x1bSB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4KQW5uZSBydWZ0OiBGcmVpdGFnLCBwcm9iaWVyIGRhcyBiZWkgZWluZXIgYW5kZXJlbiEhISEhCkVpbiBCZWlmYWxsc3N0dXJtIGJyYW5kZXQgaW0gRGlhbW9uZHBhcmsgYXVmLiBXYXMgZGEgd29obCB3aWVkZXIgbG9zIGlzdD8KRmFuZmFyZW4gc2NoYWxsZW4gdm9uIGRlciBBcmVuYSBoZXJ1ZWJlci4gUGFrZSBoYXQgYWxsZQpHbGFkaWF0b3JlbiBiZXNpZWd0IHVuZCB0cmFlZ3QgZm9ydGFuIGRlbiBUaXRlbCAnT2JlcmdsYWRpYXRvcicuCktldG9zIHJ1ZnQ6IERhbmtlLCBHYWJpbG9uISBEdSBoYXN0IGRpZSBXb2xwZXJ0aW5nZXIgZ2VyZXR0ZXQuCkVpbmUgV29scGVydGluZ2VyaW4gd3VzZWx0IGhlcmVpbi4KRWluIFdvbHBlcnRpbmdlciB3dXNlbHQgaGVyZWluLgpFaW4gd2luemlnZXIgV29scGVydGluZ2VyIHRhcHBzdCBoZXJlaW4uCkRlciBXb2xwZXJ0aW5nZXIgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRWluIHdpbnppZ2VyIFdvbHBlcnRpbmdlciB0YXBwc3QgZGF2b24uCkVpbmUgV29scGVydGluZ2VyaW4gd3VzZWx0IG5hY2ggaGludGVuLgpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KRXMgaGF0IDEgZ2VzY2hsYWdlbi4KQ2xvZHNhaGFtcCBydWZ0OiBKYWtzY2hhIG1laW5lbiBEYW5rICEgSWNoIGJpbiB3aWVkZXIgZ2VzdW5kLgpKYWtzY2hhIHJ1ZnQ6IE5FSU4KSmFrc2NoYSBydWZ0OiBpY2ggaGFzc2Ugcm9iaW4KWnVlcmlsZXUgcnVmdDogU2FsaSB6YWVtZSA9OikKRGllIEh5ZHJhIGVyaGVidCBzaWNoIGF1cyBkZW0gVGFsIGRlciBMdXBpbmVuLgpWYWxhIE1vcmdvdGggcnVmdDogbmFjaHQgbGV1dGUuLi4uClBhdHR5IGhhdCBzaWNoIGdlZ2VuIGFsbGUgVW5hbm5laG1saWNoa2VpdGVuIGltIERzY2h1bmdlbCBhbHMgZXJmb2xncmVpY2hlcgpWZXJtaXNzdGVuLVN1Y2hlciBiZXdhZWhydC4gRWluIGRyZWlmYWNoZXMgJ0d1dCBOYXNlJy4KVmFsYSBNb3Jnb3RoIHJ1ZnQ6IGJpcyB1bSBoYWxiIDgKRXMgaGF0IDIgZ2VzY2hsYWdlbi4KU2VodCBkZW4gU3RlaW4gdm9uIER1bmN0b24sIHdpZSBhdWZyZWNodCBlciBzdGVodCEKT3d5biBoYXQgZGVuIHNpZWJ0ZW4gU3RpbGxlbiBTdGVpbiBnZWZ1bmRlbi4KRXMgaGF0IDMgZ2VzY2hsYWdlbi4KSmFrc2NoYSBydWZ0OiB3YWFhaGhoIHJhbXN0ZWluClp1ZXJpbGV1IGJlc2Nod29ydCBEaWNoOiBUc2NodWVzcyBpY2ggZ2VoIGpldHp0ICp3aW5rKiA9OikpCkVzIGhhdCA0IGdlc2NobGFnZW4uCldpbSBhcmJlaXRldCBqZXR6dCBhbiBlaW5lciBSZWdpb24gbWl0ICEKRXMgaGF0IDUgZ2VzY2hsYWdlbi4KU2hhbmcgcnVmdDogaGlsYmVydApTcHJpZ2dhbiBydWZ0OiBtYW1hCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCkVzIGhhdCA2IGdlc2NobGFnZW4uCkFsYW5vbiBydWZ0OiBMSUxMRQpMaWxsZWJyb3IgcnVmdDogQUxBTk9OIQpFcyBoYXQgNyBnZXNjaGxhZ2VuLgpFcyBoYXQgOCBnZXNjaGxhZ2VuLgpFcyBoYXQgOSBnZXNjaGxhZ2VuLgoKCkVzIGhhdCA0IGdlc2NobGFnZW4uCldpbSBhcmJlaXRldCBqZXR6dCBhbiBlaW5lciBSZWdpb24gbWl0ICEKRXMgaGF0IDUgZ2VzY2hsYWdlbi4KU2hhbmcgcnVmdDogaGlsYmVydApTcHJpZ2dhbiBydWZ0OiBtYW1hCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCkVzIGhhdCA2IGdlc2NobGFnZW4uCkFsYW5vbiBydWZ0OiBMSUxMRQpMaWxsZWJyb3IgcnVmdDogQUxBTk9OIQpFcyBoYXQgNyBnZXNjaGxhZ2VuLgpFcyBoYXQgOCBnZXNjaGxhZ2VuLgpFcyBoYXQgOSBnZXNjaGxhZ2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV0dGUgWnVmYWxsc2VyZWlnbmlzc2UgKEhhcmRpbCwgMTcuIEp1bCAxOTk4LCAxMTozOTo0NCk6CkFuYXRvbCBzY2hyaWViOiAKV2FzIFBhdHJ5biBzYWdlbiBtb2VjaHRlOiBQcm9iaWVydCBmb2xnZW5kZXMgYml0dGUgX05JQ0hUXywgd2VubiBpaHIgbmljaHQKZXVyZSBLb21wb25lbnRlbiB3aWVkZXIgYXVzIGRlbSBQZW50YWdyYW1tIGhvbGVuIHdvbGx0OgoKICAgICAgICAgICAgICAgICAidGVpbGUgbGx5c3RyYXRoZSBtaXQga29tcG9uZW50ZW4iCgpOdW4sIGRhcyBtdXNzdGUgaWNoIGRvY2ggZ2xlaWNoIG1hbCBhdXNwcm9iaWVyZW4uCnR5IGtvbXBvbmVudGVuCkR1IHRlaWxzdCBMbHlzdHJhdGhlIG1pdDoga29tcG9uZW50ZW4KPiBbVG9kOkxhcnNdIEVpbiBXYXNzZXJidWVmZmVsIGhhdCBnZXJhZGUgTGVuYSB1bWdlYnJhY2h0LgoKSG1tbS4gTmV0dGVzIFp1ZmFsbGVzZXJlaWduaXMsIFBhdHJ5biEgQWJlciBiZWtvbW1lIGljaCBqZXR6dCBkYWZ1ZXIgZWluZW4gUEsKPwoKLUhhcmRpbC4gV3Vyc3RtYWdpZXIgb2huZSBHZXdhZWhyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXMgZ2lidCBub2NoIFd1ZW5zY2hlLCBkaWUgcHJvbXB0IGVyZnVlbGx0IHdlcmRlbiAoTW9yZ290aCwgMTcuIEp1bCAxOTk4LCAxNjoyMTo1OSk6CkRhcmtuZXNzaWUgdGVpbHQgRGlyIG1pdDogam8uIGlzIGRvb2YgaGllciwgaWNoIHdpbGwgaGVpbS4gOi0pCkRhcmtuZXNzaWUgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW5zaWNodCEgKE1pbmRibGFkZSwgMTcuIEp1bCAxOTk4LCAyMzoyMToxNSk6CltTZWhlcjpMaWxsZWJyb3JdIGhtbSwgdGF1c2NoZSBpbnQrMyBnZWdlbiBnZWJvdCA6KQpbU2VoZXI6SGFuZ292ZXJdIGhtLi4uUkwga29lbm50ZSBpY2ggaW50KzMgYnJhdWNoZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBTcGllbGVyIG5pY2h0IHNvIGFsbGVzIHR1bi4uLiAoSGFuZ292ZXIsIDE4LiBKdWwgMTk5OCwgMjE6MDk6MTgpOgpTb3JyeSB3ZWdlbiBkZXMgVHlwby4uLgoKTHVyY2hpIHRlaWx0IERpciBtaXQ6IGljaCBkYWNodGUgaWNoIGhhZXR0ZSBkaWUgbGVpY2hlIHNjaG9uIDQgbWFsCkx1cmNoaSB0ZWlsdCBEaXIgbWl0OiBkdXJjaGdla2F1dC4uLiA6KQoKLUhhbmdvdmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFchIG9kZXIgIlp1IGZydWVoIGdlZnJldXQiIChKYW5rYSwgMTkuIEp1bCAxOTk4LCAxNTowMDoxMSk6CltNb2VyZGVyOkdlaXN0IFNob290aW5nIFN0YXJzXSBWZXJyb3R0ZSwgVHVmZmkhCltTZWhlcjpUdWZmaV0gamFhYWFhISBzdHJpa2UhCltTZWhlcjpGZXVlcndlaHJdIFdlciBpc3QgU2hvb3RpbmcgU3Rhcj8gOikKW1RvZDpMYXJzXSBFaW4gSWZyaXQgaGF0IGdlcmFkZSBUdWZmaSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBJZnJpdF0gSGFzdCBEaXIgd29obCBkaWUgRmluZ2VyIHZlcmJyYW5udCwgd2FzPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2lsbCBpbiBBYndlc2VuaGVpdCAoTWFoYXRtYSwgMTkuIEp1bCAxOTk4LCAxODowMDoxNik6CkRpZSBBbmdzdCBpc3Qgc3RhZXJrZXIgYWxzIER1IC4uLiBEdSB3aWxsc3QgbnVyIG5vY2ggd2VnIGhpZXIuCkVpbmUgSHlkcmEgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgpJbiBlaW5lbSBQZmlyc2ljaGhhaW4uCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkd2VzdGVuLCBub3Jkd2VzdGVuIHVuZCBzdWVkb3N0ZW4uCkVpbiBncm9zc2VyIEhhdWZlbiBzZWx0c2FtZXIgS25vY2hlbi4gKDcpCkVpbmUgSHlkcmEgd2FlbHp0IGhlcmVpbi4KSHlkcmEgc2NobGFlZ3QgRGljaCAuCkxQIDQ4ICgtMjIpICBNUCA3CkRlciBCdW1lcmFuZyBmbGllZ3QgaGVyZWluLgpEZXIgQnVtZXJhbmcgZmxpZWd0IGhlcmVpbi4KRGllIEFuZ3N0IGlzdCBzdGFlcmtlciBhbHMgRHUgLi4uIER1IHdpbGxzdCBudXIgbm9jaCB3ZWcgaGllci4KRWluZSBIeWRyYSBpc3QgamV0enQgaGludGVyIERpciBoZXIuClRpZWYgaW0gRmVlbndhbGQuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4sIG5vcmR3ZXN0ZW4gdW5kIG5vcmRvc3Rlbi4KICBEZXIgQnVtZXJhbmcgemVyc2NobWV0dGVydCBkZXIgSHlkcmEgZGVuIEtvcGYgaW4ga2xlaW5lIFN0dWVja2NoZW4uCiAgRGVyIEJ1bWVyYW5nIHNjaGxhZWd0IGRlciBIeWRyYSBkZW4gS29wZiBlaW4uCkRhcyBNb3JnZW5HcmF1ZW4gZXJ6aXR0ZXJ0IHVudGVyIGVpbmVtIGxhbmdlem9nZW5lbiwgdW5tZW5zY2hsaWNoZW4gU2NocmVpLgpEaWUgSHlkcmEgc3RpcmJ0IGluIGVpbmVtIE1lZXIgdm9uIEJsdXQuCkF1cyBkZW0gTGVpY2huYW0gZXJzY2hlaW50IGRpZSBMaWNodGdlc3RhbHQgUHVtYXMgdW5kIHVlYmVycmVpY2h0IERpcgpsYWVjaGVsbmQgZWluZSBSdWVzdHVuZyBhdXMgZnVua2VsbmRlbiBKdXdlbGVuLiBNaXQgZGVtIG5hZWNoc3RlbgpBdWdlbnp3aW5rZXJuIGlzdCBzaWUgdmVyc2Nod3VuZGVuLgpEdSBiaXN0IG51biBmdWVyIHNlY2hzIFdvY2hlbiBkZXIgVHJhZWdlciBkZXIgUnVlc3R1bmcgZWluZXMgSHlkcmF0b2V0ZXJzCnVuZCBuaWVtYW5kIGF1ZiBkZXIgV2VsdCBrYW5uIERpciBkaWVzZW4gU3RhdHVzIHN0cmVpdGlnIG1hY2hlbiwgZGVubiBkaWVzZQpSdWVzdHVuZyBoYXN0IG51ciBEdSBEaXIgdmVyZGllbnQuCk1haGF0bWEgcmVpaHQgc2ljaCBudW4gaW4gZGllIExpc3RlIGRlciBzYWdlbnVtd29iZW5lbiBIeWRyYXRvZXRlciBlaW4gdW5kCmJla29tbXQgZWluZSBkZXIgbGVnZW5kYWVyZW4gUnVlc3R1bmdlbiBkaWVzZXIgWnVuZnQuCgpNYWhhdG1hICh1bmQgZGEgc2FnIG5vY2ggbWFsIHdlciwgZGllIEh5ZHJhIHdhZXIgbGFuZ3dlaWxpZykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmphIHdhdHQgbWFjaGVuIGRpZSB6d2VpIGRhPyAoWmFybml5YSwgMjAuIEp1bCAxOTk4LCAxMjozODozNSk6CktleSBydWZ0OiBORVNBSkEhISEKTmVzYWphIHJ1ZnQ6IEtFWSEKRWluIEJlaWZhbGxzc3R1cm0gYnJhbmRldCBpbSBEaWFtb25kcGFyayBhdWYuIFdhcyBkYSB3b2hsIHdpZWRlciBsb3MgaXN0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtpbGwgaW4gQWJ3ZXNlbmhlaXQgKEtleSwgMjAuIEp1bCAxOTk4LCAxMjo0MDowOSk6Cn4jISBybj1NYWhhdG1hIHJ0PTkwMDg2NDAxNiByZz1zY2htYXJybgp+IyEgdGlkPTkwMDg2NDAxNgpTb3dhcyBzY2hhZmZzdCBhdWNoIG51ciBEdSA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXIgYWxsZSwgZGllIHp1IGFsdCBmdWVycyBvcmlnaW5hbCBzaW5kLiAoWmFybml5YSwgMjAuIEp1bCAxOTk4LCAxMzowNzo0MCk6CgpodHRwOi8vd3d3LmhvbWUucGFnZXMuZGUvfmFudGlicmF2bwoKWmFybml5YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyEgb2RlciAiWnUgZnJ1ZWggZ2VmcmV1dCIgKFR1ZmZpLCAyMC4gSnVsIDE5OTgsIDE3OjE3OjA0KToKfiMhIHJuPUphbmthIHJ0PTkwMDg1MzIxMSByZz1zY2htYXJybgp+IyEgdGlkPTkwMDg1MzIxMQpBY2ggd2FzLCBuaXggenUgZnJ1ZWggZ2VmcmV1dC4gOikgRGVyIEtpbGwgd2FyIGRpZSBIYXVwdHNhY2hlIHVuZCBkZW4KVG9kIGFsbGVtYWwgd2VydCwgZGFuYWNoIGJpbiBpY2ggaGFsdCBpbiBlaW5lIHVuZW50cmlubmJhcmUgVG9kZXNmYWxsZQpnZXJhbm50LCBzaGl0IGhhcHBlbnMgLi4uIDspCiAgVHVmZmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFchIG9kZXIgIlp1IGZydWVoIGdlZnJldXQiIChTY2hva28sIDIwLiBKdWwgMTk5OCwgMTc6MTg6MzcpOgp+IyEgcm49SmFua2EgcnQ9OTAwODUzMjExIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAwODUzMjExCk5hIHdlbm4gZGFzIG5pY2ggZGllIFdvcnRlIGVpbmVzIHdhaHJlbiBLYWVtcGZlcnMgd2FyZW4gLi4uIGF1Y2ggd2VubnMgbnVyIG4KWndlcmcgaXMgOykKClNjaG9rbyAod2Vpc3MgamV0enQsIHdpZXNvIFR1ZmZpIGJsdXRldC4uLi59OykpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLaW5kZXJsaWViZS4uLiAoVGhlcmluLCAyMC4gSnVsIDE5OTgsIDIwOjU3OjMwKToKRGllIE1hbW11dGt1aCBmYWVsbHQgd2llIGVpbiBCZXJnIGluIHNpY2ggenVzYW1tZW4gdW5kIHZlcmVuZGV0IGxhbmdzYW0uCltNb2VyZGVyOkdlaXN0IGVpbmVyIE1hbW11dGt1aF0gVGhlcmluIGhhdCBtaWNoIGVybW9yZGV0IQpEYXMgTWFtbXV0YmFieSBnbHVja3N0IGdsdWVja2xpY2guCgpHbHVlY2tsaWNoZSBLaW5kZXIgZ2x1ZWNrbGljaGVyIEVsdGVybi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFjaHQgaW1tZXIgd2llZGVyIFNwYXNzIDopIChNYWhhdG1hLCAyMC4gSnVsIDE5OTgsIDIxOjQxOjIwKToKRHUgdmVyYnJlaXRlc3Q6Ck1lcmxpbiBydWZ0OiBNYWhhdG1hIGlzdCBpbiBkZW4gS3JlaXMgZGVyIE1hZ2llciBhdWZnZW5vbW1lbiB3b3JkZW4hCj4gW0dyYXRzOkNlbGJhcm5dIC0tLSA8PDwgRypSKkEqVCpVKkwqQSpUKkkqTypOID4+PiAtLS0KW0dyYXRzOkRlZXBdIEcgUiBBIFQgUyAgIQplaW5lIEhleGUgZ3JhdHVsaWVydCBEaXIgYXVzIGRlciBGZXJuZS4KU2tpcHBlciBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuClJpa3VzIHRlaWx0IERpciBtaXQ6IGdyYXRzIDopCkdub21lIHRlaWx0IERpciBtaXQ6IEFSUlJSUlJSUlJSUlJSR0dHR0dHCltHcmF0czpMZXZdIGhlaGVoZS4uLi4KSXZvIHRlaWx0IERpciBtaXQ6IGhlaGUgOykKUm9jaHVzIHJ1ZnQ6IE1BSEFUTUE/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/ClJvY2h1cyBydWZ0OiA/Pz8KCk1haGF0bWEgKGxhY2h0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hY2h0IGltbWVyIHdpZWRlciBTcGFzcyA6KSAoVGF6LCAyMC4gSnVsIDE5OTgsIDIxOjQyOjM0KToKfiMhIHJuPU1haGF0bWEgcnQ9OTAwOTYzNjgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAwOTYzNjgwCgpFaW4gc2NobmVsbGVyIGZpbmdlciBvZGVyIG5uIHJlaWNodCB1bSBkaWUgVmVybXV0dW5nIGVpbmVzIGVjaG9zCnp1IGJlc3RhZXRpZ2VuLgoKQW5ha2luLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRE9SVE1VTkRFUiAhISEgKFplciwgMjEuIEp1bCAxOTk4LCAwNzo0MDoxNCk6CiAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERpZSwgMjEuIEp1bCAxOTk4LCAwNzozOTo0NCAoMTcgVGVpbG5laG1lcikKCkZpc2hzYmltYm8uLi4uLkoueiBQcm9sb2cuLi4uLi4uLi5pLnogU2hhbmcuLi4uLi4uLi4uSi5zIEhlbC4uLi4uLi4uLi4uLmkudApIZXh4ZXIuLi4uLi4uLi5KLnMgU2lndXJhLi4uLi4uLi4uSS5zIEdhdG8uLi4uLi4uLi4uLkoucyBBY2VnLi4uLi4uLi4uLi5JLlMKQ2hhcmx5Li4uLi4uLi4uSi5TIFplci4uLi4uLi4uLi4uLi4uUyBYYW5kLi4uLi4uLi4uLi4uLlMgWmluby4uLi4uLi4uLi4uaS56ClF1aWxsaWFuLi4uLi4uLkouTSBadWVyaWxldS4uLi4uLi5JLk0gTGV1c2VsLi4uLi4uLi4uSi5NIEtvYmF5YXNoaS4uLi4uLkkuTQpLZXRvcy4uLi4uLi4uLi5KLlIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkphamEsICdhdXNnZXN3YXBwZWQnIDstKCggKFplciwgMjEuIEp1bCAxOTk4LCAwNzo0MTo1Nik6CkR1IHp1ZWNrc3QgZGVuIFZvbGxzdHJlY2tlci4KICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBEdS4uLi4uLi4uLi4uIDogU2NobmVlYmFsbC4uLiAqKioqKioqKiAtPgpTY2htZXR0ZXJuCkRlciBTY2huZWViYWxsIHNjaG1pbHp0IGRhaGluLgpFaW4gU2NobmVlYmFsbCBrb21tdCBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBlcyBuaWNodCBzbyBhbGxlcyBnaWJ0LiAoWmVyLCAyMS4gSnVsIDE5OTgsIDA4OjIyOjQxKToKW3plaWdlIHZlcl0KIDE1LiBFaW5lIEhhbmQgdm9uIFR1dHN6dCAgICAgICAgICA5MCB8ICAxNi4gRWluIFBhYXIgRnJvc2Noc2NoZW5rZWwgICAgICAgNDUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVoci0vbm5hZHctTWVsZHVuZ2VuIChIaWdobGFuZGVyLCAyMS4gSnVsIDE5OTgsIDE0OjU1OjE2KToKRXJzdCBtYWwgZWluZSBrbGVpbmUgRW50c2NodWxkaWd1bmcgYW4gZGllIFNwaWVsZXIgdW5kIGVpbmUgZ3Jvc3NlIGFuCmRlbiBHb3R0IGRlcyBIYXVwdHNwZWljaGVycyAtIGRhcyBsYWcgdm9yaGluIHdhciBpY2gsIGFscyBpY2gKdW5hdXNnZXNjaGxhZmVuZXJ3ZWlzZSBzYWVtdGxpY2hlIG5ldHp0b3RlbiBTcGllbGVyIGVpbmdlc3dhcHB0IGhhYmUuCk5hamEsIG51IHNpbmQgc2Ugc2Nob24gaW0gU3BlaWNoZXIsIGRhIGtvbm50ZSBpY2ggZGllIEFiZnJhZ2VuIGF1Y2gKZmVydGlnbWFjaGVuIC0gZXMgZm9sZ2VuIGFsc28gbmFjaCBsYW5nZXIgWmVpdCBlaW5tYWwgd2llZGVyIGRpZQpzZWxic3RnZXNldHp0ZW4gVWhyLSB1bmQgIk5peCBOZXVlcyBhdWYgZGVyIFdlbHQiLU1lbGR1bmdlbi4KQmVpIGRlbiBMZWVyemVpbGVuIGlzdCBkZXIgV2VjaHNlbCwgZXJzdCBkaWUgVWhybWVsZHVuZ2VuLi4uCgogICBIclQgKHZlcmxlZ2VuKQoKWmlubzogRGVyIFRhZyBpc3Qgc2Nob24gJWQgU3R1bmRlbiBhbHQuCk1vcmdvdGg6IERlaW5lICVkIEtuZWNodGUga3JpZWNoZW4gdm9yIERpciBpbSBTdGF1YiB1bmQgd2luc2VsbiB1bSBHbmFkZS4KVGF6OiBEdSBzY2hhdXN0IGt1cnogaG9jaCB1bmQgZXJpbm5lcnN0IERpY2guICVkIFVociEKWmVwaHlyOiBEaXIgZmVobGVuIG5vY2ggJWQgWndlcmdlbm9ocmVuIGluIERlaW5lciBTYW1tbHVuZy4KUmlrdXM6ICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjICVkIFVociAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpSaW5nb3I6IEJyaWVzZWx0cmltIHRlaWx0IERpciBtaXQ6IER1IG11c3N0IG5vY2ggJWQgU2tpbGxzIHZlcmJlc3Nlcm4hCk1vcmdvbmlhOiBTY2hvbiB3aWVkZXIgJWQgQWJ3ZXJ0dW5nZW4gaW4gZGVyIFphdWJlcmVyZ2lsZGUhCktldG9zOiBFcyBoYXQgJWQgZ2VzY2hsYWdlbi4KSGlnaGxhbmRlcjogIyMjIEpvZiBpc3QgamV0enQgc2VpdCAlZCBTdHVuZGVuIGlkbGUuICMjIwpBdWdyYTogRXMgaXN0IGpldHp0ICVkIFVoci4gQmlzdCBkdWUgZWlnZW50bGljaCBiZWtsb3BwdD8gR2VoIGVudHdlZGVyIHNjaGxhZmVuIG9kZXIgZmFuZyBhbiB6dSBhcmJlaXRlbiEKTWFoYXRtYTogRHUgaGFldHRlc3QgaGV1dGUgc2Nob24gJWQgUGFyYWxsZWx3ZWx0a2FyYXRlb3JrcyB0b2V0ZW4ga29lbm5lbi4KU2hhZGU6IEh1Y2ghIFVtICVkIFVociB3b2xsdGVzdCBEdSBkb2NoIHNjaG9uIGxhbmdlIHp1IEhhdXNlIHNlaW4uClJvY2h1czogRHUgaG9lcnN0IGRpZSBTY2hyZWllIHZvbiAlZCBzdGVyYmVuZGVuIFNwaWVsZXJuLgpBcXVhZGVzdDogRXMgZmFlbmd0IGFuIHp1IHJlZ25lbi4gJWQgV2Fzc2VydHJvcGZlbiBtYWNoZW4gRGVpbmUgSGFhcmUgZ2FueiBuYXNzLgpBbmF0b2w6IER1IGhvZXJzdCBlaW4gc2FuZnRlcyBMYWV1dGVuIHZvbSBIaW1tZWwga29tbWVuLiAlZCBVaHIuClN2ZWFyOiBEdSBzY2hhdXN0IGF1ZiBEZWluZSBVaHIgdW5kIHN0ZWxsc3QgbWl0IFNjaHJlY2tlbiBmZXN0IGRhcyBlcyBzY2hvbiAlZCBVaHIgaXN0LgpZZW5kaTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVyIFRvZCBzYWd0OiBCRUlNIE5BRUNIU1RFTiBUT0QgSVNUIEVTICVkIFVIUiwgMCBNSU5VVEVOIFVORCAwIFNFS1VOREVOLiAgICAgICBEZXIgVG9kIGdyaW5zdCBEaWNoIGFuLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4KUHJhOiBEZWluIFNjaGFlZGVsIGJydW1tdC4gRXMgaXN0IGpldHp0IGJlc3RpbW10IHNjaG9uIG5hY2ggJWQgVWhyLgpBbmFraW46IEVpbmUgVWhyIHNjaGxhZWd0ICVkIG1hbCBlaW5lbiBFbGZlbi4gRXIgd2ltbWVydCBqYWVtbWVybGljaC4gKGMpIEJvaW5nCkFuZHJlczogWWEgc29uIGxhcyAlZCxTYWJlcyBxdWUgRGFuaWVsYSB0ZSBxdWllcmUgbXVjaG8/IQpMZXJveTogc2Nob24gJWQgdW5kIGR1IHNpdHp0IHZvcm0gY29tcHV0ZXIgYmVpbSB6b2NrZW4uLi4gbmljaHRzIHp1IHR1biA/PwpNaXJha2E6IE9obywgZXMgaXN0IGphIGJlcmVpdHMgJWQgVWhyISEhClNoYXlhOiBEdSBtdXNzdCBub2NoICVkMDAwIFphdWJlcnNwcnVlY2hlIHVlYmVuLgpTYXJhbWlyOiAlZCBrbGVpbmUgU2NoYXR0ZW4gZXJzY2hlaW5lbiB1bmQgdGFuemVuIHVtIERpY2ggaGVydW0uClJhc2NhbDogJWQga2xlaW5lIFphdWJlcmVyIGh1ZXBmZW4gdW0gRGljaCBoZXJ1bS4KSGFyZGlsOiBFcyBpc3QgJWQgVWhyLCB1bmQgZWluIEdyaW1tYmFlciBxdWVuZ2VsdCBoZXJ1bS4KTWF6b2xpOiBTY2hvbiB3aWVkZXIgJWQgVWhyIQpEZXNpZGVyaWE6ICVkIEZyb2VzY2hlIHdhcnRlbiBub2NoIGF1ZnMgRW50ZnJvc2NoZW4uClZlcndpcnJ1bmc6IER1IHNjaGF1c3QgdmVyd2lycnQgaW4gJWQgUmljaHR1bmdlbiBnbGVpY2h6ZWl0aWcuClplcjogRHUga3JhdHp0IERpY2ggJWQgbWFsIGFtIEJhdWNoLgpRdWljazogRHUgYnJhdWNoc3QgaGV1dGUgbm9jaCAlZCBBdXNiaWxkdW5nc2tpbGxzLgpOYWNodHdpbmQ6IERpciBmZWhsZW4gYmlzIHp1IG5hZWNoc3RlbiBTdHVmZSBub2NoICVkIFN0dWZlbnB1bmt0ZS4KVGhhcmVuOiBFaW5lIEt1aCBrcmVpc3QgRGlyICVkIG1hbCBsYW5nc2FtIHVtIGRlbiBLb3BmLgpEcmFnb29uOiBKZXR6dCBoYW1tZXIgJWQgVWhyIHVuZCBpY2ggaG9jayBpbW1lciBub2NoIHZvciBkZXIgS2lzdGUhISEhIQpXb29keTogKCgoKCgoKCgoKCgoKCgoKCgoKCggSHV1dWNoIT8gU2Nob24gJWQgVWhyPyE/ISApKSkpKSkpKSkpKSkpKSkpKSkpKQpBdmllbmRoYTogJWQgaW4gQ2FkaW4nc29yIGdla2xlaWRldGUgRmFyIERhcmVpcyBNZWkgYmVnaW5uZW4gZGVuIFRhbnogZGVyIFNwZWVyZS4KRW5neXd1Y2s6IER1IHNpZWhzdCAlZCByb3NhIEthcm5pY2tlbCB2b3JiZWlsYXVmZW4uClRhcnM6IER1IGhvZXJzdCBlaW5lIEdsb2NrZSB1bmdlZmFlaHIgJWQgbWFsIGF1cyBkZXIgRmVybmUgc2NobGFnZW4uCkZpcHBzOiBFcyB3ZWNrZXJ0ICVkIFVocgpHbm9tZTogRGlyIHNpbmQgc2Nob24gd2llZGVyICVkIEJhcnRoYWFyZSBhdXNnZWZhbGxlbi4KTGlsbGVicm9yOiBCcmllc2VsdHJpbSB0ZWlsdCBEaXIgbWl0OiBEdSBiaXN0IGpldHp0IGF1ZiBHaWxkZW5sZXZlbCAlZApCb2ViYmVsOiBNZWluZSBHdWV0ZSwgaXN0IGVzIHdpcmtsaWNoIHNjaG9uICVkIFVocj8KVG9tYXRvcjogRXMgaXN0IGpldHp0ICVkIFVociwgaGF0dGVzdCBEdSBuaWNodCB3YXMgV2ljaHRpZ2VzIHZvciA/CllhcmVuOiBESU5HIERPTkchIEVzIGlzdCBqZXR6dCAlZCBVaHIuCllldGk6IEFVRlNURUhFTiAhISEhLCBFcyBpc3Qgc2Nob24gVGFnIHNlaXQgJWQgU3R1bmRlbiAhISEKU2x5Zm94OiBFcyBpc3QgamV0enQgJWQgVWhyIQpOaXhpaG91OiBFaW4gVHJldC1FdW1lbCBzYWd0OiBUcml0dCBtaWNoIGVzIGlzdCBqZXR6dCBzY2hvbiAlZCwgdW5kIGljaCBzY2htZWlzcyBkaWNoIGpldHp0IGhpZXIgcmF1cyEKQW5ncm94OiBJbiAlZCBKYWhyZW4gYmlzdCBEdSBhdWNoIGhpZXIgU2VoZXIuClRvZTogV2FzIGlzdCBkZXMgRXJnZWJuaXMgdm9uICVkPwpTdWNjYW1vcmU6IERlaW4ga2xlaW5lciBNYW5uIGltIE9ociBmbHVlc3RlcnQgZGlyenU6IDw8IEVzIGlzdCBqZXR6dCAlZCBVaHIuPj4KQXBwbGU6IEdBQkksIGVzIGlzdCBlcnN0ICVkISEhClNlaHJpOiBTY2hvbiAlZCBVaHIgdW5kIER1IGhhc3QgVm9ybGVzdW5nIC4uLiB1bmQgRGVpbmUgQmVyaWNodGUgLi4uPz8/Ck5lc2FqYTogJWQga2xlaW5lIFNjaGlsZGtyb2V0ZW4ga3VsbGVybiB0YXBwc2lnIGR1cmNoIGRlbiBSYXVtLgpGZW5kZXI6IER1IGhvZXJzdCBpbiBkZXIgRmVybmUgZGllIFR1cm1nbG9ja2VuICVkIFVociBzY2hsYWdlbi4uLgpTdG9uZTogRHUgYnJpY2hzdCBmYXN0IHp1c2FtbWVuLCBhbHMgJWQgU3RlaW5lIGF1ZiBEaWNoIG5pZWRlcnBsdW1wc2VuLgpSYWlkZW46IEJvaW5nIHNjaGVua3QgRGlyIGF1cyBkZXIgRmVybmUgJWQgU3R1cHNlClNlbGlzc2E6IEtldG9zIHNhZ3Q6IEJlaW0gbmFlY2hzdGVuIFB1bmt0IGlzdCBlcyAlZCBVaHIgdW5kIDAgU2VrdW5kZW4uCkNoaWNvbGE6IFdpZSB3YWVyZSBlcyBkZW5uIG1hbCBtaXQgLiVkIFByb3plbnQgS2FyYXRlIHVlYmVuPwpMYXJpZWw6IER1IGhvZXJzdCB2b24gd2VpdCBoZXIsIHdpZSBkaWUgR2xvY2tlbiB2b24gTW9yb24gJWQgbWFsIHNjaGxhZ2VuLgpLYWxsaW9wZTogTm9jaCAlZCBhcm1lIG1hZW5ubGljaGUgV2VzZW4gd2FydGVuIGF1ZiBEZWluZSBWZXJmdWVocnVuZ3NrdW5zdC4uLgpZb2dpYmFlcjogSGF1IGVuZGxpY2ggYWIgaGllciwgZXMgaXN0IHNjaG9uICVkIFVociAhCkV6bzogQmllcmNoZW4gaGF0IG1pciBzY2hvbiB3aWVkZXIgJWQxIE5lcnZlbiBnZWtvc3RldC4KTWlrYWdlOiBFaW4gV2Vja2VyIG5lcnZ0IERpY2ghIEVzIGlzdCBzY2hvbiAlZCAhIER1IGZsdWNoc3QhCkxvdTogJWQgRnJvZXNjaGUgd2FydGVuIG5vY2ggYXVmcyBFbnRmcm9zY2hlbi4KSmFxdWVuZXR0YTogRHUgc2llaHN0ICVkIGtsZWluZSBLYWV0emNoZW4gdm9yYmVpc3ByaW5nZW4uClBhbnRoZXI6IER1IGhhZXR0ZXN0IHNjaG9uIHdpZWRlciAlZCBad2VpdGllcyB6dW0gU2VoZXIgbWFjaGVuIGtvZW5uZW4uOykKQXJhbWVhOiBTY2hvbiAlZCBVaHIuIHVuZCBpbW1lciBub2NoIGltIE11ZC4KU2hhbm5hcmE6IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gJWQgVWhyIGlzdCBlcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkZlZG9yOiBTQ0hPTiBXSUVERVIgQklTICVkIFVIUiBTSU5OTE9TIEhJRVIgUlVNR0VIQU5HRU4KRXRhaW46IER1IGhvZXJzdCBkaWUgR2xvY2tlbiB2b24gTW9yb24gJWQgbWFsIHNjaGxhZ2VuLgpBdG96OiBBVUNIIEZVRVIgWldFSVRJUyBJU1QgRVMgSkVUWlQgJWQgVUhSISEhClZhbmlyOiBMYXJzIGhhdCBkaWUgSG9lbGxlIGZ1ZXIgRGljaCB1bSAlZCBHcmFkIGF1ZmdlaGVpenQuClRBUkFHT046ICUlIEVzIGlzdCBudW4gJWQgVWhyLgpBbmNhbGFnb246IERpZSBLbnVkZGVsbXVzZSBrbnVkZGVsdCBkaWNoIHVuZCBtZWludDogU2VpIGNyZWF0aXYhIFNlbWlyYSBoYXQgbWluZGVzdGVucyAlZCBLbnVkZGxlciBWb3JzcHJ1bmchISEKWGVyYTogRWluIFNjaGF0dGVuIG5lYmVuIERpciBzY2hlaW50IGt1cnogYXVmenVmbGltbWVybi4gUGxvZXR6bGljaCBsb2VzZW4gc2ljaCAlZAprbGVpbmUsIHNjaHdhcnplIFNhbmR0aWdlciBhdXMgZGVyIER1bmtlbGhlaXQgdW5kIGJlZ2lubmVuLCBEaWNoIHphZXJ0bGljaAphYnp1c2NobXVzZW4uIEVpbmVyIGRlciBrbGVpbmVuIFd1c2NoZWx0aWVyZSBzY2hhdXQgRGljaCBsaWViZXZvbGwgYW4gdW5kCnNhZ3Q6CiAgICAgICBJY2ggc29sbCBEaXIgdm9uIEphbiBhdXNyaWNodGVuLCBkYXNzIGVyIERpY2ggc2VociBsaWViIGhhdC4KR3JhbGtvcjogRHUgc2NobGFlZ3N0IGRpZSBVaHIgJWQgbWFsLgpTdGFobGRvcm46IEJPTkcgQk9ORyBCT05HICVkIFVociBCT05HIEJPTkcgQk9ORyEKSnVsYW50ZTogU2Nob24gd2llZGVyICVkIFVocjsgdW5kIER1IHNpdHp0IG5vY2ggaGllciE/IT8KVGFpcGFuOiBtaXR0bGVyd2VpbGUgc2luZCBlcyBzY2hvbiAlZCBVaHIgICBaZWl0IG5hY2ggSGF1c2UgenUgZ2VoZW4KSGFzZW5mdXNzOiBEaW5nIGRvbmcsIGVzIGlzdCBqZXR6dCAlZCBVaHIuCk1hcnM6IER1IGhvZXJzdCBkaWUgVWhyIHNjaGxhZ2VuOiBFcyBpc3QgamV0enQgJWQgVWhyLgpBc3Nhc3NpbmU6IER1IGhhc3Qgbm9jaCAlZCBPcGZlciBhdWYgRGVpbmVyIExpc3RlIQpCZWVsemVidWI6IEFybWFnZWRkb24gcnVmdDogSW4gJWQgTWludXRlbiB3ZXJkZSBpY2ggZGllIFdlbHQgemVyc3RvZXJlbiB1bmQgbmV1IGVyc2NoYWZmZW4uClRob3J2aW46IEVzIGlzdCBqZXR6dCAlZCBVaHIgdW5kIERVIHNwaWVsc3QgaW1tZXJub2NoIGhpZXIgcnVtLgpBcnVuOiBCZWltIG5hZWNoc3RlbiBUb24gaXN0IGVzICVkIFVociAgLi4uLiAgIEJFRUVQIC4uLi4KUXVlbmdpc3R1OiBEdSBmaW5kZXN0ICVkIFphdWJlcnRyYWVua2UuIFdhcyBtb2VjaHRlc3QgRHUgZXJob2VoZW4/Ckdsb2luOiBXYXMgc3VjaHN0IER1IG5vY2ggaW4gTUcgPyBEdSBoYWV0dGVzdCBzZWl0ICVkIFVociBpbiBSR0IgcHJvZ2dlbiBzb2xsZW4gIQpUcmFuY2VmZWFyOiB4Y2FsbCAkbS0+U2V0UHJvcChQX1VIUlpFSVQsICVkKQpBY3JpbW9uOiBEZXIgTmFjaHR3YWVjaHRlciBydWZ0OiBFcyBpc3QgJWQgVWhyLCB1bmQgYWxsZXMgaXN0IGd1LWh1dXQhClR1Tml4R3V0OiAncyBpcyAlZDowMCBVaHIKVmlkcmFqOiAlZCBLTEVJTkUgVkFNUElSRSBNVUVTU0VOIFZPUiBTT05ORU5BVUZHQU5HIFNDSExBRkVOIEdFSEVOIQpSYWZmaTogRHUgc2FtbWVsc3QgZGFzIEVsZmVuYmVpbiB2b24gJWQgRWxmZW4uCk5pY2h0czogMSs0KihzcXJ0KDUqNSkvMislZCoxMykrKDIwKihzcXJ0KDEyKjIqNikpKzE2KT0gLi4uIE5hYWE/CkhvcHBsYTogQWJlciBIb3BwbGEsIHNjaG9uICVkIFVoci4uLgpBcXVhdG9sbDogSmFqYWphamEhIEVzIGlzdCBzb3dlaXQhIEVzIGlzdCAlZCBVaHIhISEhClBpZXJjZTogTWVpbmUgR3VldGUgRHUgYmlzdCBqYSBpbW1lciBub2NoIG5pY2h0IExldmVsICVkCk1vcHB5OiAhISEgRGlyIHdpcmQgJWQgbWFsIGRpZSBOYXNlIGxhbmdnZXpvZ2VuISEhCkxlbGxkb3JpbjogRGVpbiBLb3BmIHNjaGxhZWd0ICVkeCBhdWYgZGllIFRhc3RhdHVyLgpMb3J0aGE6IExvcyB3ZWcgZXMgaXN0IHNjaG9uICVkIExvcnRoYSEgR2VoIHNjaG9uIGxvcyAsIGxvcyBsb3MhIQpTZW1pcmE6IER1IGt1ZXNzdCBEZWluIEVpc2JhZXJsaSAlZCBtYWwuCkZhZ3VzOiBEdSBtdXNzdCAlZCBtYWwga3JhZWZ0aWcgbmllc2VuLgpQdWNrOiBOb2NoICVkIFJ1bmRlbiwgYmlzIER1IFplcGh5ciBlbmRsaWNoIGVpbmdlaG9sdCBoYXN0LgpNaWV6ZTogWmVpdCBpc3QgR2VsZC4gV2lyIGhhYmVuIGVzIGpldHp0ICVkICBNYXJrIHVuZCAwMCBQZmVubmlnZS4KTWF1bno6IEhleSwgZGEgbGF1ZmVuIGdlcmFkZSAlZCBodWVic2NoZSBLYXRlciBhbiBEaXIgdm9yYmVpIQpNb3JvbjogRGllIEdsb2NrZW4gdm9uIE1vcm9uIHNjaGxhZ2VuICVkIFVoci4KSnVzdWZmOiBCZWltIEdlcmFldXNjaCBkZXMgYnJlY2hlbmRlbiBBcm1zIHdhciBlcyAlZC4KQ2FyYWRocmFzOiBBcm1hZ2VkZG9uIHJ1ZnQ6IE9oIEdvdHQgSm9mISEgV2FzIG1hY2hzdCBEdSBzY2hvbiB3aWVkZXI/IEluICVkIE1pbnV0ZW4gd2VyZGUgaWNoIGRpZSBXZWx0IHplcnN0b2VyZW4uClFpdGVzczogQUIgTkFDSCBIQVVTRSBVTkQgQVJCRUlURU4gISEhIEVTIElTVCBOQUVNTElDSCBTQ0hPTiAlZCBVSFIgISEhCkZlbGJvOiBNVURERU4gTVVEREVOICVkIFVociBNVURERU4gTVVEREVOIFJMLWVnYWwgTVVEREVOIE1VRERFTgpBc21vZGlzOiBEdSBzY2hsYWVnc3QgbWl0IGVpbmVyIFN0YW5kdWhyICVkIE1hbCBhdWYgU3VuZmxvd2VyIGVpbi4KS2VkUnluOiBTY2hvbiAlZCBVaHIhISEhISEKU2VsYnN0bW9yZDogRHUgbXVzc3QgRGljaCBub2NoICVkIG1hbCB1bWJyaW5nZW4KUmVpbmVsZGU6IFJlaW5lbGRlIGRpZSBLYXJhdGUtS2FlbXBmZXJpbiAlZC4gRGFuCkNlbGluYTogRHUgZXJmdWVsbHN0ICVkIFNwaWVsZXJuIGlocmVuIHNlaG5saWNoc3RlbiBXdW5zY2ggdW5kIHdpcnN0IGRhZnVlciBoZWlsaWcgZ2VzcHJvY2hlbi4KTmphbGE6IDElZCBUb2RlIHNvbGxzdCBEdSBzdGVyYmVuLCB2ZXJsYXNzZW4gdW5kIGVpbnNhbSBvaG5lIEhvZmZudW5nIGF1ZiBMaWNodC4KTWVuYWNlOiBFcyBpc3Qgc2Nob24gJWQgVWhyISBXaWxsc3QgRHUgbmljaHQgYmFsZCBtYWwgZ2VoZW4/CkN1Y2h1bGxpbjogSW4gJWQgVGFnZW4gbXVzcyBkZXIgQ3UgU2l0aCBmZXJ0aWcgc2VpbiEhClp1bGppbjogRXkgd2FhYWFzLCBzY2hvbiAlZCBVaHIhPyEgQWIgaW4gZGllIEhlaWEhCgoKCk1vcmdvdGg6IFtEZWJ1ZzpNUEFdIEhpZXIgc3RlaHQgbmljaHQgbWVociBkcmluLgpaZXBoeXI6IFplaXQsIHdpZWRlciB2b24gdm9ybiBhbnp1ZmFuZ2VuLi4uClF1aWxsaWFuOiBOSVggTUVIUiBaVSBMRVNFTiEgLT4gQVVTTE9HR0VOIQpSaW5nb3I6IFNjaHJlaWIgZG9jaCBzZWxic3QgbWFsIHdhcyEKSGlnaGxhbmRlcjogTmVpbiwgTW9yZ290aCBoYXQga2VpbmVuIG5ldWVuIEJ1ZyBnZWZ1bmRlbiB1bmQgaWhuIGdlcG9zdGV0LgpBc3RhcjogRXMgd2lyZCBtYWwgd2llZGVyIFplaXQgZWluZW4gUmVeMTAwMCBUaHJlYWQgenUgc3RhcnRlbi4uLgpNYWhhdG1hOiBHbG9pbiwgZGVyIFB1bGxlcnBvdHQsIGhhdCBuaWNodCBnZW51ZyBCbG9lZHNpbm4gaW4gZGllIE1QQSBnZXNjaHJpZWJlbi4KU25pYnJpbDogRGllIFplaXR1bmcgaXN0IG5vY2ggbmljaHQgZGEuCkFuYXRvbDogTmljaHRzIE5ldWVzIGF1ZiBkZXIgV2VsdC4gTkVJTiwgRFUgQUVOREVSU1QgREFTIEpFVFpUIE5JQ0hUIQpLYXRyaXg6IFB1aCEgVWViZXJzdGFuZGVuLiAqU0NITlVSUioKUHJhOiBaZWl0dW5nIGxlZXI/IFplaXQgenVtIFF1ZXN0ZW4hISEKS2Fyb2w6ICEhISEhIVR6amEgZGFzIHdhciBkYW5uIHdpZWRlciBkZXIgbGV0enRlIEFydGlrZWw6LSgoKCEhISEhIQpUenVpb3A6IFNjaHJlaWIgZG9jaCBzZWxic3Qgd2FzIQpFbmd5d3VjazogT2VkZS4gTGVlcmUuIFplaXR1bmcuClNyYWJpOiAhISEgRGFzIHdhcnMgZnVlciBIZXV0ZSAhISEKWGVub246IEtlaW5lIG5ldWVzIE1HIEdlbGFiZXIuCllhcmVuOiAtLTwgWmVpdHVuZyBhbGxlID4tLQpXaWxsaTogR2VoIGxpZWJlciB3YXMgdHJpbmtlbiAhCk5peGlob3U6IERpZSBSZXBvcnRlciBzY2hsYWZlbiBtYWwgd2llZGVyLiAtPiBuaWNodHMgTmV1ZXMgYWxzbyEhIQpHbG9pbnNvbjogRHUgc3R1ZGllcnN0IG5vY2ggZWluZSBXZWlsZSBkaWUgSW1tb2JpbGllbmFuemVpZ2VuIGZ1ZXIgZGllIFNTUCwgZmluZGVzdCBhYmVyIGxlaWRlciBEZWluZSBnZWxpZWJ0ZSBad2VpemltbWVyd29obnVuZyBiZWltIEtsaXR6ZWxkcm9tIG5pY2h0IHp1IGVpbmVtIGZ1ZXIgRGljaCBlcnNjaHdpbmdsaWNoZW4gUHJlaXMgdW5kIHN0ZWNrc3QgZGllIFplaXR1bmcgZW50dGFldXNjaHQgd2VnLgpUcnVnOiBEaWUgZWxmaXNjaGVuIERpZW5lcmlubmVuIG1lbGRlbiwgZGFzcyBrZWluZSBuZXVlbiBOYWNocmljaHRlbiBhYnJ1ZmJhciBzaW5kLgpTaWx2YTogTm8gTmV3cyBJcyBHb29kIE5ld3MuClZhbmlyOiBTZXR6IE5pYWwgbWFsIG5lIGFrdHVlbGxlIE1QQQpUQVJBR09OOiBObyBuZXdzIChpcyBnb29kIG5ld3MpCkFuY2FsYWdvbjogRVhUUkFCTEFUVCEgS0VJTkUgTkVVSUdLRUlURU4gSU0gTU9SR0VOR1JBVUVOISBFWFRSQUJMQVRUISEKQmVlbHplYnViOiBEdSBsaWVzdCBkZWZpbml0aXYgenUgc2NobmVsbC4KTmlyZGF2bzogQWxsZXMgYXVzZ2VsZXNlbiwga2VpbmVyIGhhdHRlIEx1c3Qgd2FzIE5ldWVzIHp1IHNjaHJlaWJlbgpFbWJlOiBOaXggTmV1ZXMgaW0gTW9yZ2VuR3JhdWVuClF1ZW5naXN0dTogRHUgd2lyZnN0IGRpZSBNUEEgaW4gZGVuIEFsdHBhcGllcmNvbnRhaW5lci4KR2xvaW46IE51ciBub2NoIFdlcmJ1bmcuIER1IGtudWVsbHN0IGRpZSBaZWl0dW5nIHp1c2FtbWVuIHVuZCB3aXJmc3Qgc2llIHVlYmVyIGRpZSBTY2h1bHRlci4gRGEgdG9lbnQgZXM6IFVtd2VsdHZlcnNjaG11dHplciAhIER1IHppZWhzdCBkZW4gS29wZiBlaW4gdW5kIHZlcmRydWVja3N0IERpY2guCkRhbW9rbGVzOiBLZWluZSB3ZWl0ZXJlbiBuZXVlbiBBcnRpa2VsIHZvcmhhbmRlbi4KR3J1bWJhcnQ6IERpZSBNUEEgd2lyZCBhdWNoIGltbWVyIGR1ZW5uZXIuClJhZmZpOiBOb2NoIGhhc3QgRHUgZWluZSBOTkFEVy1NZWxkdW5nLgpOaWNodHM6IERpY2ggTmV1ZXMgYXVmIGRlciBXZWx0LgpTZW1pcmE6IEtlaW5lciBzY2hyZWlidCB3YXMgLSBmYXVsZXMgVm9sayEKUWl0ZXNzOiBEaWUgWmVpdHVuZyBmYWVuZ3QgRmV1ZXIuIFVlYnJpZyBibGVpYnQgZWluIEhhZXVmY2hlbiBBc2NoZS4KQXVyZXVzOiBEdSBiaXN0IG5pY2h0IFF1ZW5naXN0dQpBc21vZGlzOiBTY2huZWxsLCBzY2hyZWliIHdhcyBpbiBkaWUgWmVpdHVuZyEKTmphbGE6IEFyYmVpdGUgbGllYmVyIG1hbCB3YXMgIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIEVuZGUgPz8/IChNb3Jnb3RoLCAyMi4gSnVsIDE5OTgsIDAwOjQxOjQ4KToKICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTWl0LCAyMi4gSnVsIDE5OTgsIDAwOjM5OjE1ICg1NyBUZWlsbmVobWVyKQouLi4uLltjdXRdLi4uLi4KTGlsbGVicm9yLi4uLi4uLi5TIE1hdGlzLi4uLi4uLi4uLi4uUyBUaGVyaW4uLi4uLi4uLi4uLlMgSGFkcmEuLi4uLi4uLi4uaS5tClF1aWxsaWFuLi4uLi4uLkouTSBad2lsbGluZy4uLi4uLi5JLk0gU3dpZnQuLi4uLi4uLi4uLi5NIEtvYmF5YXNoaS4uLi4uLmkuTQpNb3Jnb3RoLi4uLi4uLi4uLlIgQmxvb2R5aGFycnkuLi4uLi5SIEtldG9zLi4uLi4uLi4uLkouUiBCaWVyY2hlbi4uLi4uLi5pLlIKUGF0cnluLi4uLi4uLi4uLi5SCgpUaGVyaW4gYWxzIGhvZWNoc3RlciBTcGllbGVyIHVuZCBQYXRyeW4gYWxzIGhvZWNoc3RlciBNYWdpZXIuLi4uCkRhIGthbm4gZXMgbnVyIGNyYXNoZW4gb2RlciBzb25zdHdhcyBzY2hsaW1tZXMgcGFzc2llcmVuLi4uCmFybWVzIE1HLi4uZ3V0ZSBuYWNodAoKTSogd2lua3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYXMgRW5kZSA/Pz8gKFBhdHJ5biwgMjIuIEp1bCAxOTk4LCAwMDo0OTowNSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkwMTA2MDkwOCByZz1zY2htYXJybgp+IyEgdGlkPTkwMTA2MDkwOApoZXksIGVzIGdhYiA0IGhvZWNoc3RlIG1hZ2llciwgc3RhbmQgbnVyIHp1ZmFlbGxpZyBhbSBlbmRlLgp1bmQgdWViZXJoYXVwdDogd2FzIGhhc3QgZHUgZ2VnZW4gdGhlcmluIGFscyBzcGllbGVyPyBpc3QgbWlyIG5vY2ggbmllIGFscwphdXNuYWhtZWVyc2NoZWludW5nIGF1ZmdlZmFsbGVuIDopCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmQgd2llZGVyIGVpbiBCZWlzcGllbCBmdWVyIGRlbiBTd2FwLU91dC1SZXNldCAoWmVyLCAyMi4gSnVsIDE5OTgsIDA3OjUzOjM2KToKW01vZXJkZXI6R2Vpc3QgZWluZXMgU2NobmVlcmllc2VuXSBJY2ggZ2xhdWIsIGpldHp0IGtlbm5lIGljaCBBTExFCltNb2VyZGVyOkdlaXN0IGVpbmVzIFNjaG5lZXJpZXNlbl0gVG9kZXNzZXF1ZW56ZW4sIFplciEgPDA3OjM2OjI1PgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFaXNnaWdhbnRlbl0gV2VsY2hlIFNjaG1hY2ghIFplciBoYXQgbWljaCBiZXNpZWd0LgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFaXNnaWdhbnRlbl0gPDA3OjQ2OjUyPgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBLbGl0emVsZHJvbXNdIFplciBpc3Qgc2NobGltbWVyIGFscyBkYXMgTWVuc2Flc3Nlbi4KW01vZXJkZXI6R2Vpc3QgZWluZXMgS2xpdHplbGRyb21zXSBBYnNvbHV0IHRvZWRsaWNoLiA8MDc6NDc6MzA+CltNb2VyZGVyOkdlaXN0IGVpbmVzIEVpc2dpZ2FudGVuXSBEaWUgRWhyZSB3ZXJkIGljaCBaZXIgbmljaHQgYW50dW4sIHVuZCBoaWVyCltNb2VyZGVyOkdlaXN0IGVpbmVzIEVpc2dpZ2FudGVuXSBoZXJ1bXBvc2F1bmVuLCB3ZXIgbWljaCB1bWdlbmlldGV0IGhhdCEKW01vZXJkZXI6R2Vpc3QgZWluZXMgRWlzZ2lnYW50ZW5dIDwwNzo1MDozOD4KW01vZXJkZXI6R2Vpc3QgZWluZXMgS2xpdHplbGRyb21zXSBPaywgWmVyLCBEdSB3aXJzdCB2b24gbWVpbmVyIEVyd2FydGVsaXN0ZQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBLbGl0emVsZHJvbXNdIGdlc3RyaWNoZW4hIDwwNzo1MToyNj4KCk5hamEsIHdhcmVuIGdhbnogbmV0dGUgUmluZ2UgZGFiZWkgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVWhyLS9ubmFkdy1NZWxkdW5nZW4gKExhcmlzc2EsIDIyLiBKdWwgMTk5OCwgMDk6NDU6MTMpOgp+IyEgcm49SGlnaGxhbmRlciBydD05MDEwMjU3MTYgcmc9c2NobWFycm4KfiMhIHRpZD05MDEwMjU3MTYKSGloaSwgaWNoIGhhZXR0ZSBkYSBlaW5lIGZ1ZXIgZGVuIENhdHdlYXpsZToKCkFDSFRVTkcsIGVzIGlzdCAlZCBVaHIhIFplaXQsIGVuZGxpY2ggbWVociBJbmZvcyB1ZWJlciBQYXJ0eSB1bmQgQ2FtcGluZ3BsYXR6CmluIGRpZSBNUEEgenUgc2V0emVuLgoKTGFyaSwgaW4gUGFydHlsYXVuZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN1ZXNzZXIgRGFlbW9uIChNb3Jnb3RoLCAyMi4gSnVsIDE5OTgsIDExOjEwOjE4KToKVHV0c3p0IHRlaWx0IERpciBtaXQ6IEtpdSBpc3QgYWJzb2x1dCBmaXQuIFdhcyBpbW1lciBkYXMgaGVpc3NlbiBtYWcuLi4KVHV0c3p0IGJydWVsbHQ6IFdvdywgaWNoIGZ1ZWhsIG1pY2ggcmVjaHQga3JpYmJlbGlnLi4uClR1dHN6dCB0ZWlsdCBEaXIgbWl0OiBLaXUgaXN0IGFic29sdXQgZml0LiBXYXMgaW1tZXIgZGFzIGhlaXNzZW4gbWFnLi4uClR1dHN6dCBicnVlbGx0OiBJY2ggbWFnIE1pdGdlbm9tbWVuIGF1c3NlaGVuLCBhYmVyIGljaCBiaW4gdm9sbCBoaW50ZXIgRGlyIQoKSXNzZXIgbmljaHQgbmllZGxpY2guLi5kYW5rZSBUdXRzemlsZWluLCBkYXMgaGFiIGljaCBnZWJyYXVjaHQuCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqeml0dGVyKiAoTm92YXN0b3JtLCAyMi4gSnVsIDE5OTgsIDE2OjEwOjI3KToKCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBLZXkgaW4gUnVicmlrICJlbnR3aWNrbHVuZyIuCk9ueXggdGVpbHQgRGlyIG1pdDogKmxhY2gqIFRyZWZmZXIKW0FiZW50ZXVlcjpUZWx5YV0gV2llIGlzdCBkaWUgU3ludGF4LCB1bSBkYXMgaXJnZW5kd2FzIGF1cyBkZW0gQXF1YXJpdW0gdm9uCltBYmVudGV1ZXI6VGVseWFdIFNhbSBIYXJrd2luZCB6dSBhbmdlbG4gPwpbPE1hc3RlUj46QW5hdG9sXSBhcmdoLgpbPE1hc3RlUj46VG9tYXRvcl0gbApbPE1hc3RlUj46PE1hc3RlUj5dIDguNzQgY21kcy9zLCAxMDYuOTggY29tcCBsaW5lcy9zCls8TWFzdGVSPjo8TWFzdGVSPl0gTGFnOiAxMS44JS82MCwgMjkuNSUvMTUsIDg3LjglLzEKClB1aC4uLiBHbHVlY2sgZ2VoYWJ0ICptaXNzdHJhdWlzY2ggT255eCBhbmd1Y2tlbmQqCk5vdmEgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggbWljaCByZWNodGZlcnRpZ2VuPyBOaWUhIChUdWZmaSwgMjIuIEp1bCAxOTk4LCAxNjo0NjoyOCk6CiAgRHUgdHJpZmZzdCBkaWUgU2luZ3NjaGFyIHNlaHIgaGFydC4KRGllIFNpbmdzY2hhciBmYWVsbHQgdG90IHp1IEJvZGVuLgpbTW9lcmRlcjpHZWlzdCBlaW5lciBTaW5nc2NoYXJdIERhcyBzYWcgaWNoIGFsbGVzIGRlbSBTaGVyaWZmLCBUdWZmaSEKRHUgYmVnaW5uc3QgbnVuIG1pdCBkZXIgUmVjaHRmZXJ0aWd1bmdzc2VxdWVuei4KCkhhYiBpY2ggZGEgd2lya2xpY2ggUmVjaHRmZXJ0aWd1bmcgbm9ldGlnPyBJY2ggZ2xhdWJlIG5pY2h0IC4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIFpUIGdlaHQgc29sYW5nZSB6dW0gQ3JpdHRlciwgYmlzIGVyIHplcmJyaWNodCAoSGFucywgMjIuIEp1bCAxOTk4LCAxNzoyMDozOCk6CkNyaXR0ZXIgcnVmdDogZ3JhZCB3ZXIgbHVzdCBkaWUgd2FlY2h0ZXIgaW0gaG9iYml0IGRvcmYgbWl0IHp1bWV0emVsbi4uLiB3ZWdlbgpDcml0dGVyIHJ1ZnQ6IGRlbSB6dCBkYT8hCgpbVG9kOkxhcnNdIEVpbiBIb2JiaXQgaGF0IGdlcmFkZSBDcml0dGVyIHVtZ2VicmFjaHQuCltUb2Q6RWluIEhvYmJpdF0gSG1wZi4uLmFsdGUgZ3JlaXNlIEhvYmJpdHMgYW5ncmVpZmVuLi4uc293YXMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsaW5lIHVuZCBad2VyZ2UgLi4uIChOb3Zhc3Rvcm0sIDIyLiBKdWwgMTk5OCwgMTc6MzE6NTkpOgpbVG9kOkxhcnNdIEVpbiBGbHVnIHVlYmVyIGRlbiBXb2xrZW4gaGF0IGdlcmFkZSBUdWZmaSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBGbHVnIHVlYmVyIGRlbiBXb2xrZW4ga2FubiB0b2VkbGljaCBlbmRlbi5dCltBbGxnZW1laW46QWxpbmUgZ3JpbnN0IG5vY2ggenVmcmllZGVuZXJdCgpUc3RzIDstKQpOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcm1lIE1hZ2llci4uLiAoU2Nob2tvLCAyMi4gSnVsIDE5OTgsIDE5OjA1OjI0KToKVGhlbWEgd2FyIEthZW1wZmVyLUdpbGRlOgoKU2lsdmFuYSB0ZWlsdCBEaXIgbWl0OiBJY2ggZGVuayBkZXIgR2lsZGVubWFnaWVyIHNvbGx0ZSBkZW4gSGVyemluZmFrdCBzY2hvbgpTaWx2YW5hIHRlaWx0IERpciBtaXQ6IG5vY2ggYWxzIGVyc3RlciBiZWtvbW1lbi4gOikgWzE5OjAyXQpFaW4gZW50c2V0emxpY2hlciBTY2hyZWkgaGFsbHQgdm9tIEZyaWVkaG9mIGhlcnVlYmVyLgoKQXJtZXIgQm9pbmcuLi4uIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKMyBEb29mZS4uLiAoTW9yZ290aCwgMjIuIEp1bCAxOTk4LCAyMzowMDowMSk6CkR1IHNpbmdzdCAnLi4uIHp1bSB6d2VpdGVuIG1hbCBlbnRrb21tc3QgZHUgbWlyLi4uJy4KS251cnQgc2luZ3QgJ0hlaXJhdGUgbWljaCcuCkR1IHNpbmdzdCAnLi4gaGVpcmF0ZSBtaWNoLi4uIGhlaSBoZWkgaGVpIGhlaXJhdGUgbWljaC4uLicuClZhbXBpcmUgc2FndDogZ2VpbCBSYW1tc3RlaW4KRHUgbmlja3N0IHp1c3RpbW1lbmQuCktudXJ0IHNpbmd0ICdJQ0ggV0lMTCBGSUNLRU4nLgpLbnVydCBncmluc3QuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ290dGVzZ2xhdWJlbi4uLi4/IChUaGVyaW4sIDIzLiBKdWwgMTk5OCwgMDA6MzY6MTcpOgoKSXZvIGZyYWd0IFdpbmZyaWVkIG5hY2ggS3JldXouCldpbmZyaWVkIGJla3JldXppZ3Qgc2ljaC4KV2luZnJpZWQgZmFlbGx0IG1pdCBlaW5lbSBsZXR6dGVuIEdlYmV0IGF1ZiBkZW4gTGlwcGVuIHVtLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBnb3R0ZXNnbGF1YmVuLi4uLj8gKExpbGxlYnJvciwgMjMuIEp1bCAxOTk4LCAwMjozNTozMCk6Cn4jISBybj1UaGVyaW4gcnQ9OTAxMTQ2OTc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAxMTQ2OTc3CipncnVtbWVsKi4uLiB1bmQgaWNoIGhhdSBuYXR1ZXJsaWNoIGRyYXVmIHVuZCBzdGVyYiBkcmFuCmhhZXR0IG1pciBhdWNoIHdlciBzYWdlbiBrb2VubmVuLi4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmVpbSBzdG9lYmVybiBlbnRkZWNrdCAoR3JpbW1ib3JuLCAyMy4gSnVsIDE5OTgsIDEyOjQ0OjQyKToKfiMhIG9uPVJhbnRhbnBsYW4gb3Q9OTAxMDQ5MjY5IG9nPXdpdHplCn4jISBybj1Nb3Jnb3RoIHJ0PTkwMTAyMDY1MSByZz13aXR6ZQp+IyEgdGlkPTkwMTAyMDY1MQpEYW5rZSBNb3Jnb3RoLCBlbmRsaWNoIG1hbCB3aWVkZXIgZ2VsYWNodCA7LSkKCk9lKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTlBDcyAoRGllZGVyLCAyMy4gSnVsIDE5OTgsIDE1OjQ0OjI2KToKdG0gbG9md3lyIHRlc3QKS2VpbiBzb2xjaGVyIFNwaWVsZXIhCi4uLgp0bSBsb2Z3eXIga29tbSBlbmRsaWNoIGR1IFNhY2shCkR1IHRlaWxzdCBMb2Z3eXIgbWl0OiBrb21tIGVuZGxpY2ggZHUgU2FjayEKCkFoYSwgc28gbXVzcyBtYW4gZGllIE5QQ3MgYWxzbyBiZWhhbmRlbG4uLi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTW9yZ290aCwgMjMuIEp1bCAxOTk4LCAyMjoyNTo1OCk6CltrYXRha29tYmVuOk1vcmdvdGhdIHNoYW5uYXJhIDwyMjoyNDowOD4KW2thdGFrb21iZW46TW9yZ290aF0gYXJnbC4uLi4gPDIyOjI0OjI2Pgpba2F0YWtvbWJlbjpTaGFubmFyYV0gSmEsIGljaCBzdGVoZSBncmFkIGRvcnQuIHNvbGwgaWNoIGF1cyBkZW4gcmF1bSByYXVzPwpba2F0YWtvbWJlbjpTaGFubmFyYV0gPDIyOjI0OjM0Pgpba2F0YWtvbWJlbjpNb3Jnb3RoXSBkYXVlcnQgbmljaHQgbGFuZ2UuLi5pc3QgenUgc3BhZXQgPDIyOjI0OjUwPgpba2F0YWtvbWJlbjpTaGFubmFyYV0gamEsIGljaCBoYWJzIGdlbWVya3QgPDIyOjI0OjU4PgpbVG9kOkxhcnNdIEVpbiBab21iaWV2aXJ1cyBoYXQgZ2VyYWRlIFNoYW5uYXJhIHVtZ2VicmFjaHQuIDwyMjoyNToxMD4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBHZWxkIGJ1Z2d0LiAoTW9yZ290aCwgMjQuIEp1bCAxOTk4LCAxMjo1OTowNyk6CjEwMzA3NyBNdWVuemVuIHNhZ3Q6IDxIaWNrPiEKCkhpbGZlLCB3ZXIgaGF0IGRhIC9zdGQvcHViIG1pdCAvb2JqL21vbmV5IGdla3JldXp0ID8/IDstKQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjIgVGFudGVuIChNb3Jnb3RoLCAyNC4gSnVsIDE5OTgsIDEzOjA0OjUxKToKU2hhcmlhICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRlaW5lIEZyZXVuZGluIFNoYXJpYSBrbnVkZGVsdCBEaWNoIG1pdCBlaW5lbSBoZWlsaWdlbiBHcmluc2VuIGF1cyBkZXIgRmVybmUuIApbMTM6MDNdCkRpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgpbU2VoZXI6U2hhcmlhXSBUQU5URSAhCgpVbmdlc2Nobml0dGVuLi4uCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhcyBHZWxkIGJ1Z2d0LiAoQXp6dXJvLCAyNC4gSnVsIDE5OTgsIDE3OjQ2OjU3KToKfiMhIHJuPU1vcmdvdGggcnQ9OTAxMjc3OTQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAxMjc3OTQ3CktlaW4gV3VuZGVyIGRhc3MgZGllIExhZWRlbiBzdGFlbmRpZyBwbGVpdGUgc2luZC4KV2VubiBNb3Jnb3RoIDEwMzA3NyBNdWVuemVuIG1pdCBzaWNoIHJ1bXNjaGxlcHB0IHVuZCBkaWUgZGFubiBub2NoIGlocmUKRnJldW5kZSB6dSBlaW5lbSB3aWxkZW4gU2F1ZmdlbGFnZSBlaW5sYWRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpciBrYW5uIGdlaG9sZmVuIHdlcmRlbiAoSmFua2EsIDI1LiBKdWwgMTk5OCwgMDI6NDQ6MzUpOgpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KW1NlaGVyOlplcl0gdGFudGUKW01vZXJkZXI6R2Vpc3QgZWluZXMgS2xpdHplbGRyb21zXSBaZXIsIGRpZSBIeWRyYSBpc3QgbWlyIGxpZWJlci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIGd1dGVuIGFsdGVuIEthZW1wZmVyIChTcmFiaSwgMjUuIEp1bCAxOTk4LCAxMDoyODo1OCk6CiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBTYW0sIDI1LiBKdWwgMTk5OCwgMTA6MjY6NDIgKDMgVGVpbG5laG1lcikgCgpSYW50YW5wbGFuLi4uLi5JLnogKk11YWRkaWIuLi4uLi4uaS5zIFNyYWJpLi4uLi4uLi4uLi4uUwoKU3JhYmksIGRlciB3b2hsIGVpbnppZ2UgYWt0aXZlIEthZW1wZmVyIGFtIFNhbXN0YWdtb3JnZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtLCBlaW5tYWwgaGFldHRlIGdlcmVpY2h0IChTcmFiaSwgMjUuIEp1bCAxOTk4LCAxMDo1MTo1OSk6CkRlciBLaWxsZXJwb3BlbCBmYWVsbHQgdG90IHp1IEJvZGVuLgpEZXIgQmxvY2sgZnVlciBkaWVzZSBSYXRlIGlzdCBqZXR6dCB2b2xsIQpEZXIgQmxvY2sgZnVlciBkaWVzZSBSYXRlIGlzdCBqZXR6dCB2b2xsIQpEZXIgQmxvY2sgZnVlciBkaWVzZSBSYXRlIGlzdCBqZXR6dCB2b2xsIQpEZXIgQmxvY2sgZnVlciBkaWVzZSBSYXRlIGlzdCBqZXR6dCB2b2xsIQoKU3JhYmksIGRlbSBtYW4gbmljaHQgYWxsZXMgdmllcm1hbCBzYWdlbiBtdXNzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCaWVyc2NodWV0dGxlciEgKE5vdmFzdG9ybSwgMjUuIEp1bCAxOTk4LCAxMzowMDo0NSk6CkRlaW4gRnJldW5kIEl2byB0ZWlsdCBEaXIgbWl0OiBtZW5zYSwgYWVoIG5pY2h0IG1lbnNhLCBtYWhsemVpdCA7KQpbQmllcnNjaHVldHRsZXI6QnJ1bm9dIE1FTlNBIQoKKmtpY2hlcioKTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWlzZWxmZW4gLi4uIHRzc3NzLi4uIChBbmFjcmlvbiwgMjYuIEp1bCAxOTk4LCAwMzo0NDoxMCk6CgpLbnVydCBrbnVkZGVsdCBEaWNoIHVuZW5kbGljaCBnbHVlY2tsaWNoIGF1cyBkZXIgRmVybmUuCkVpbiBFaXNlbGYga251ZGRlbHQgRGljaCB1bmVuZGxpY2ggZ2x1ZWNrbGljaCBhdXMgZGVyIEZlcm5lLgoKRGVuIEVpc2VsZmVuIHNjaGVpbnQgZXMgYXVjaCB6dSBmcmV1ZW4sIGJmcmVpdCB6dSB3ZXJkZW4gOikKCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllIGd1dGVuIGFsdGVuIEthZW1wZmVyIChUZWRkeSwgMjYuIEp1bCAxOTk4LCAyMjo0OTozNyk6Cn4jISBybj1TcmFiaSBydD05MDEzNTUzMzggcmc9c2NobWFycm4KfiMhIHRpZD05MDEzNTUzMzgKQWxzbyBPZSogYWxzIEthZW1wZmVyIHp1IGJlemVpY2huZW4gaXN0IHNjaG9uIGZhc3QgbmUgQmVsZWlkaWd1bmcgZnVlciBpaG4KZmluZCBpY2ggOykKClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSG0sIGVpbm1hbCBoYWV0dGUgZ2VyZWljaHQgKFRlZGR5LCAyNi4gSnVsIDE5OTgsIDIyOjUwOjAxKToKfiMhIHJuPVNyYWJpIHJ0PTkwMTM1NjcxOSByZz1zY2htYXJybgp+IyEgdGlkPTkwMTM1NjcxOQpWaWVsbGVpY2h0IGRvY2g/IDspCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhhIChNb3Jnb3RoLCAyNy4gSnVsIDE5OTgsIDExOjM2OjI3KToKT0ssIHJlbmV3aW5nIGR3YXJmOnNwaWVsZXJjaGVuCltEZWJ1ZzpNb3Jnb3RoXSBSRU5FV0lORzogc3RkL3NoZWxscy9kd2FyZiMxMTMyMjk2IGR3YXJmOnNwaWVsZXJjaGVuCkRpbmcgdmVybGFlc3N0IGRpZXNlIFdlbHQuCkJvaW5nICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkpldHp0IHNjaG9uLi4uIChBbmF0b2wsIDI3LiBKdWwgMTk5OCwgMjM6MDg6NTMpOgpWYWxhIE1vcmdvdGggcnVmdDogYXJnbCwga29lbm50IGlociBlbmRsaWNoIGF1ZmhvZXJlbiBhcnRpa2VsIHp1IHNjaHJlaWJlbgoKQWNoIE1vZ2dpLCB3ZW5uIER1IEpFVFpUIHNjaG9uIGphbW1lcnN0LCB3YXMgdHVzdCBEdSBkYW5uLCB3ZW5uIGRpZSBQYXJ0eQpyaWNodGlnIGFiZ2VodD8gU2VsYnN0bG9lc2NodW5nPyBTcGllbHBhdXNlIC0xIFRhZ2U/IDotKQoKSGV1bCBkb2NoISA6KQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEpldHp0IHNjaG9uLi4uIChNb3Jnb3RoLCAyNy4gSnVsIDE5OTgsIDIzOjA5OjMzKToKfiMhIHJuPUFuYXRvbCBydD05MDE1NzM3MzMgcmc9c2NobWFycm4KfiMhIHRpZD05MDE1NzM3MzMKQlVIVVVIVVVVVVVVVQpNb3Jnb3RoIHdlaW50IGJpdHRlcmxpY2guLi4uCgpPayBzbz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEpldHp0IHNjaG9uLi4uIChOYWlyb2xmLCAyNy4gSnVsIDE5OTgsIDIzOjExOjA2KToKfiMhIHJuPU1vcmdvdGggcnQ9OTAxNTczNzczIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAxNTczNzMzClRqYSBNb2dnaSBpc3QgZWluZmFjaCBzdWVzcyB3dWVyZGUgaWNoIHNhZ2VuLi4uIHdpZSBzbyBuZW4ga2xlaW5lcyBNb24tQ2hpLUNoaQouLi4uIGVpbmZhY2ggbmllZGxpY2gsIGdvbGRpZyB1bmQgcHV0emlnIDotKSAKClRqYSBNb3Jnb3RoIGlzIHNjaG9uIG5lbiBlY2h0IGxpZWJlciBLZXJsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmVpZ2UgU2F1ISAoTWluZGJsYWRlLCAyOC4gSnVsIDE5OTgsIDAwOjM3OjI3KToKRWluIE9mZml6aWVyIGtvbW10IHdpZWRlciB6dSBzaWNoLgpFaW4gT2ZmaXppZXIgZmFlbGx0IG9obm1hZWNodGlnIHVtLgoKVW5kIGRhYmVpIGhhYmVuIHdpciBkaWNoIGdhciBuaWNodCB6dWdlaGF1ZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoQW5hdG9sLCAyOC4gSnVsIDE5OTgsIDAxOjEyOjE0KToKW0FsbGdlbWVpbjpLbG9uZGlrZV0gaGlsZmUgaWNoIHN0ZWNrZSBpbSB0cmVpYnNhbmQgZmVzdApbVG9kOkxhcnNdIFRyZWlic2FuZCBoYXQgZ2VyYWRlIEtsb25kaWtlIHVtZ2VicmFjaHQuCgpQcm9ibGVtIGdlbG9lc3QuLi4KQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWlpaWlpZWggOikgKENlbGVzdGUsIDI4LiBKdWwgMTk5OCwgMDI6MzY6MDkpOgpFYmVuIHBhc3NpZXJ0Li4uCkdydW50IGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenVtIE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgR3J1bnQuCj4gIER1IGJla29tbXN0IGVpbmUgVGFzc2UgbWl0IGhlaXNzZW0gWmF1YmVyZXJzYWZ0LCBlciBzY2htZWNrdCBiZXNjaGlzc2VuLgpHcnVudCBzdGlua3QgYWJzY2hldWxpY2guCgoKQ2VsZXN0ZSAqc2ljaGRpZW5hc2V6dWhhbHRlbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGVyc3RlIGFlbmRlcnVuZ2VuIChBbmF0b2wsIDI4LiBKdWwgMTk5OCwgMTE6NTc6MDYpOgp+IyEgcm49QW5hdG9sIHJ0PTkwMTYxOTc4MSByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD05MDE1NzcwNDQKSmEsIGljaCB3ZWlzcywgZGFzcyBlcyBuaWNodCAiZWluZW4gSGFuZCIgaGVpc3N0IC0gYWJlciBpY2ggd2lsbCBkYXMKamV0enQgbmljaHQga29ycmlnaWVyZW4uIFVuZCBNdHYgd2lyZHMgZWggbmljaHQgc3RvZXJlbiwuIDopCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaGEgOikgKEdhbmR1ciwgMjguIEp1bCAxOTk4LCAxMjowODoxMik6CgpTaWx2YW5hICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClsuLi5dClphcm5peWEgcnVmdDogU2NoYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWF0emlsZWluIDopCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgpvaG5lIHdvcnRlIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTTVMgdW5kIGFsdGUgU3BpZWxlciB1bmQgc28gLi4uIChHbG9pbiwgMjguIEp1bCAxOTk4LCAxNDozNTozOSk6CltUcnZlczpPcmt0b2V0ZXJdIERhcyB6dW0gVlMsIGFiZXIgd2FzIHNvbGwgYW0gU01TIHNvIGd1dCBzZWluID8gPDE0OjMyOjM5PgpbVHJ2ZXM6R2xvaW5dIEFuc2NoYXVlbiwgT3JrdHJvZXRlLCBhbnNjaGF1ZW4uIDwxNDozMzowMj4KW1RydmVzOlNuaWJyaWxdIFNNUyBpcyBub2NoIHZpZWwgbHVzdGlnZXIgPDE0OjMzOjEyPgpbVHJ2ZXM6UmluZ29yXSBhdSBtYW5uIE9ya2llIC4uIGVzIGlzdCBzbyBzY2hsZWNodCwgZGFzcyBkaWUgZ2FuemVuIEthZW1wZmVyCltUcnZlczpSaW5nb3JdIGRhcyBudXIgenVyIFppZXJkZSBtaXRzY2hsZXBwZW4gPDE0OjMzOjE4PgpbVHJ2ZXM6U25pYnJpbF0gZGEgc2VoIHNvZ2FyIGljaCBkZW4gbnV0emVuLCBqZWRlbmZhbGxzIGZ1ZXIgbWVuc2NobGljaGUKW1RydmVzOlNuaWJyaWxdIGthZW1wZmVyIDwxNDozMzozMD4KW1RydmVzOkJlbGdhcmlhZF0gc3RpbW10IHdpbGwgamVtYW5kIGVpbmVzPyA6KSA8MTQ6MzM6MzY+Ci4uLgpPcmt0b2V0ZXIgdGVpbHQgRGlyIG1pdDogSG0gaWNoIGthZW1wZmUgZmFzdCBpbW1lciBtaXQgZGVtIERpbmcsIGVzIGhhdCBlaW5lCk9ya3RvZXRlciB0ZWlsdCBEaXIgbWl0OiBuZXR0ZSBkZWZlbmQtZnVua3Rpb24sIGFiZXIgc28gdWVicnJhZ2VuZCBpc3QgZGllCk9ya3RvZXRlciB0ZWlsdCBEaXIgbWl0OiBhdWNoIG5pY2h0Li4uCkRlaW4gRnJldW5kIE1haGF0bWEgdGVpbHQgRGlyIG1pdDogb2ggbWFubiwgb3JrdG9ldGVyIHdpcmQgaW1tZXIgZHVlbW1lci4uLgoKKmh1ZXN0ZWwqIDopIEdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hyb3R0IC4uLiAoR2xvaW5zb24sIDI4LiBKdWwgMTk5OCwgMTQ6NDA6MzEpOgpEdSBpZGVudGlmaXppZXJzdCBkaWUgU2NocmlmdHJvbGxlLgpEaWUgU2NocmlmdHJvbGxlIGJlc3RlaHQgYXVzIE1hZ2llIHVuZCBQYXBpZXIuCkF1c3NlcmRlbSBlbnRkZWNrc3QgRHUgYW4gaWhyIGZvbGdlbmRlczoKRGVyIGF1ZmdlemVpY2huZXRlIFNwcnVjaCBpc3QgZWluIEtyYW5raGVpdHNoZWlsc3BydWNoLgoKRHUgc3RlY2tzdCBlaW5lIFNjaHJpZnRyb2xsZSBpbiBkZW4gbWFnaXNjaGVuIE11ZWxsc2Fjay4KRGVyIE11ZWxsc2FjayBydW1wZWx0IHVuZCByYXNjaGVsdC4KCldlbmlnc3RlbnMgenUgZXR3YXMgaXN0IGVyIGd1dCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllc2UgV2VzdHdlc3RwaGFsZW4uLi4gKERhcmlhLCAyOC4gSnVsIDE5OTgsIDE2OjQ4OjQ2KToKRWJlbiBpbSBNdWQ6CkVpbiBaaXR0ZXJuIGdlaHQgZHVyY2ggTXVlbnN0ZXIuCkRpZSBEb3J0bXVuZGVyIGtvbW1lbiB6dW0gU3RhbW10aXNjaC4KCkd1dCwgZGFzcyBpY2ggZGEgbmljaHQgd2VjaCBrb21tZS4uLgoKRGFyaWEKKGF1cyBkZW0gUGFkZXJib3JuZXJzY2hlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWVzZSBXZXN0d2VzdHBoYWxlbi4uLiAoQWxpbmUsIDI4LiBKdWwgMTk5OCwgMTY6NTg6NDUpOgp+IyEgcm49RGFyaWEgcnQ9OTAxNjM3MzI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAxNjM3MzI2CgpIbW0gaWNoIGhhdHRlIFBhZGVyYm9ybiBpbW1lciB6dSBPc3R3ZXN0ZmFsZW4vTGlwcGUgZ2V6YWVobHQuLi4KV2llIG1hbiBzaWNoIGlycmVuIGthbm4uIDopCgpBbGluZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2Vob3JzYW0gKE5haXJvbGYsIDI4LiBKdWwgMTk5OCwgMTc6Mzk6MjgpOgpbU2VoZXI6QW5hdG9sXSBMb3MsIGhhdSBhYiwgTW9yZ290aCEKTW9yZ290aCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKW0FsbGdlbWVpbjpHbG9pbnNvbl0gV2VpbCBLdWVoZSBidW50IHNpbmQgLT4gc2Nyb2xsIG1hbCAtdHJ2ZXMgenVydWVjayAod2VubgpbQWxsZ2VtZWluOkdsb2luc29uXSBkaWUgSGlzdG9yeSBzbyBsYW5nIGlzdCkKW1NlaGVyOkFuYXRvbF0gQnJhdmVzIE1vbi1DaGktQ2hpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWJlbiBhbSBUaWdlciAtKSkpIChTcmFiaSwgMjguIEp1bCAxOTk4LCAxOToxNDoyMik6ClNhbmRtYW5uIG11c3RlcnQgZWluZW4gU2FuZHRpZ2VyIGVpbmRyaW5nbGljaC4gU2FuZG1hbm4ga3VzY2hlbHQgc2ljaAplbnRzcGFubnQgaW4gZGllIGJyZWl0ZW4gUHJhbmtlbiBkZXMgU2FuZHRpZ2VycyB1bmQgc2NobGFlZnQgZWluLiBQbG9ldHpsaWNoCndlaWNodCBhbGxlcyBMZWJlbiBhdXMgU2FuZG1hbm4uIFNhbmRtYW5uICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNCkUgSCBSICAgRCBBICEhIQoKU3JhYmksIGV0d2FzIHZlcnd1bmRlcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGllc2UgV2VzdHdlc3RwaGFsZW4uLi4gKERhcmlhLCAyOC4gSnVsIDE5OTgsIDE5OjQ3OjQwKToKfiMhIHJuPUFsaW5lIHJ0PTkwMTYzNzkyNSByZz1zY2htYXJybgp+IyEgdGlkPTkwMTYzNzMyNgoKUGFkZXJib3JuIGdlaG9lcnQgZGEgc2Nob24gaGluLiBBYmVyIG1hbiBtb2VjaHRlIHNpY2ggZG9jaCBhYnNldHplbiB2b24gZGVtLAp3YXMgZGEgd2VzdGxpY2ggdm9uIFNvZXN0IHJ1bWZsZXVjaHQuLi4KKGRlc3dlZ2VuIGF1Y2ggV2VzdC1XZXN0cGhhbGVuKQoKOy0pCgpEYXJpYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWVzZSBXZXN0d2VzdHBoYWxlbi4uLiAoS251cnQsIDI4LiBKdWwgMTk5OCwgMjE6MTA6NDIpOgp+IyEgcm49QWxpbmUgcnQ9OTAxNjM3OTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAxNjM3MzI2CmFyZ2wgTGlwcGUgaGF0IGphIG51biB3aXJrbGljaCBnYXJuaXgsIGFiZXIgYXVjaCBnYXJuaXggbWl0IE9zdHdlc3RmYWxlbiB6dQp0dW4uCktudXJ0ICpzY2hhdWRlcm5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gc2NobmVsbCAoU3JhYmksIDI4LiBKdWwgMTk5OCwgMjE6MTE6MDIpOgogSGV4eGVyICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClRvZCBFaW4gUGVpdHNjaGVuZGFlbW9uIGhhdCBnZXJhZGUgSGV4eGVyIHVtZ2VicmFjaHQuCgpTcmFiaSB2ZXJzdGVodCBkYXMgbmljaHQsIGthdW0gZGEgdW5kIHNjaG9uIFRvZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGllc2UgV2VzdHdlc3RwaGFsZW4uLi4gKExhcmlzc2EsIDI5LiBKdWwgMTk5OCwgMTI6MDg6MTUpOgp+IyEgcm49S251cnQgcnQ9OTAxNjUzMDQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAxNjM3MzI2CgppY2ggaG9mZmUgbnVyLCBkYXNzIGRpZSBuZXVlIFJlY2h0c2NocmVpYnVuZyBhdXMgZGVtIHNjaG9lbmVuIFdlc3RmYWxlbiBrZWluCldlc3RwaGFsZW4gbWFjaCAqc2NodWV0dGVsKi4KCkxhcmksIGFsdGUgUnVocnBvZXR0bGVyaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEaWVzZSBXZXN0d2VzdHBoYWxlbi4uLiAoUmFudGFucGxhbiwgMjkuIEp1bCAxOTk4LCAxMjoxMTozMCk6Cn4jISBybj1MYXJpc3NhIHJ0PTkwMTcwNjg5NSByZz1zY2htYXJybgp+IyEgdGlkPTkwMTYzNzMyNgpVbmQgdWViZXJoYXVwdCBpc3QgZGVyIFdlc3RmYWxlIGRlciBuYXR1ZXJsaWNoZSBGZWluZApkZXMgUmhlaW5sYWVuZGVyISEhCgoKT2UqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZW5pZ3N0ZW5zIGVpbmVyIGhhdCBub2NoIFNpbm4gZnVlciBHZXNjaG1hY2sgOy0pIChOb3Zhc3Rvcm0sIDI5LiBKdWwgMTk5OCwgMTQ6MjE6NTIpOgoKSW4gZWluZW0gcmllc2lnZW4gQmF1bSAtIERpZWxlLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogb2Jlbi4KVGVkZHkgdHJvbGx0IGhlcmVpbi4KClRlZGR5IGtyYWVjaHp0IGVpbiBMaWVkIHVuZCBpc3QgdmVyc2Nod3VuZGVuLgoKRGFua2UgUGFyYSogOy0pKQpOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZXJhZGUgaW4gTmVza2F5YSAoRGFya3dpbmcsIDI5LiBKdWwgMTk5OCwgMTg6MzQ6MTkpOgo7W01vZXJkZXI6R2Vpc3QgZWluZXMgR2FyZGlzdGVuYW5mdWVocmVyc10gVGFtZWxpLCB3YWVyIGpldHp0IG5pY2h0IGVpZ2VudGxpY2gKW01vZXJkZXI6R2Vpc3QgZWluZXMgR2FyZGlzdGVuYW5mdWVocmVyc10gVm9ybGVzdW5nPwpIYXVwdHdhY2hlIHZvbiBOZXNrYXlhLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogb3N0ZW4uCkRpZSBMZWljaGUgZWluZXMgR2FyZGlzdGVuYW5mdWVocmVycy4KRGllIExlaWNoZSBlaW5lcyBTdGFkdGdhcmRpc3RzLgpEaWUgYmVyZWl0cyB6aWVtbGljaCBzdGlua2VuZGUgTGVpY2hlIGVpbmVzIFN0YWR0Z2FyZGlzdHMuCktvYWxhIFRhbWVsaSAoZmxhdXNjaGlnd2VpY2gpLjs+IFRhbWVsaSBmcmV1dCBzaWNoLgpFaW4gU3RhZHRnYXJkaXN0IG1hcnNjaGllcnQgaGVyYmVpLgpFaW4gU3RhZHRnYXJkaXN0IG1hcnNjaGllcnQgaGVyZWluLgpEZXIgR2FyZGlzdCB2ZXJsYWdlcnQgc2VpbiBHZXdpY2h0IGF1ZiBkYXMgYW5kZXJlIEJlaW4uCkRlciBHYXJkaXN0IHNhZ3Q6IEJpdHRlIGJlc3VjaGVuIFNpZSB1bnMgd2llZGVyIQpUYW1lbGkgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGhoamEgKFplciwgMzAuIEp1bCAxOTk4LCAwMDowMzo1Myk6CkR1IHN0ZWNrc3QgZWluZW4gS2FyYXRla2EgaW4gZGVuIG1hZ2lzY2hlbiBNdWVsbHNhY2suCkRlciBNdWVsbHNhY2sgcnVtcGVsdCB1bmQgcmFzY2hlbHQuCkR1IHN0ZWNrc3QgZWluZW4gSWRpb3QgaW4gZGVuIG1hZ2lzY2hlbiBNdWVsbHNhY2suCkRlciBNdWVsbHNhY2sgcnVtcGVsdCB1bmQgcmFzY2hlbHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0dGUgQmVncnVlc3N1bmcgKE1vcmdvdGgsIDMwLiBKdWwgMTk5OCwgMDk6MDM6MjIpOgpGbGF4dHJpIGJydWVsbHQ6IFdJUiBTRUhOIFVOUyBJTiBERVIgSE9FTExFLCBNT1JHT1RIIQoKSmFqYSwgaWNoIHdhcnRlIGRhIGF1ZiBEaWNoLCBKdW5nZS4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYSwgZW5kbGljaCBoYXR0ZXIgbWFsIGRhcyBuYWNoc2VoZW4hIChEaG9qYWt0LCAzMC4gSnVsIDE5OTgsIDE5OjE0OjMyKToKRWJlbiBiZWkgTGxseXN0cmF0aGU6CgpQaGx5YWtlbiBzdGFycnQgRGljaCBhbiB1bmQgbWFjaHQgc2VsdHNhbSBzY2h3dW5ndm9sbGUgQmV3ZWd1bmdlbi4KUGhseWFrZW5zIFphdWJlcnNwcnVjaCB2ZXJwdWZmdCBpbSBOaWNodHMuClBobHlha2VuIHN0YXJydCBEaWNoIGFuIHVuZCBzYWd0OiBMYWVjaGVsIQpQaGx5YWtlbnMgWmF1YmVyc3BydWNoIHZlcnB1ZmZ0IGltIE5pY2h0cy4KCklyZ2VuZHdpZSB1ZWJlcmtvbW10IG1pY2ggZGEgRnJldWRlLCBkYXNzIGF1Y2ggZGllIG5wY3Mgdm9uIGFid2VydHVuZ2VuIG5pY2h0CnZlcnNjaG9udCBibGVpYmVuLi4uCktoaWRhci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpZSB3YWhyLi4uIChOb3Zhc3Rvcm0sIDMwLiBKdWwgMTk5OCwgMjA6NTQ6MjIpOgpEZXIgRnJvc2NoIHF1YWt0OiAnU1RJUkIhJwogIC4uLi5ub3JtYWwvU2Nod2VydC4uLi4uIER1Li4uLi4uLi4uLi4gOiBTY2h3YXJ6ZnJvc2NoICoqKioqKioqIC0+IEtyYWNoZW4KRGVyIFNjaHdhcnpmcm9zY2ggZmFlbGx0IHRvdCB6dSBCb2Rlbi4KTGV2IHRlaWx0IERpciBtaXQ6IGJsb2VkZXMgdmllaC4KCk5hamEsIGVoZXIgbmVydmVuZCwgYWJhIHN1ZXNzLi4uCk5vdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXaWUgd2Foci4uLiAoR2FuZG8sIDMwLiBKdWwgMTk5OCwgMjI6MjM6MDgpOgp+IyEgcm49Tm92YXN0b3JtIHJ0PTkwMTgyNDg2MiByZz1zY2htYXJybgp+IyEgdGlkPTkwMTgyNDg2MgpXaWUgd2VpdCBzaW5kIGVpZ3RsIGRpZXNlIGthbXBmdHJpZ2dlciB2ZXJicmVpdGV0ID8KR2FuZG8gLT4gc2ljaCB3dW5kZXJuZCB1bmQgbWl0IC9zdGQtc2Nyb2xsIGthZW1wZmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXaWUgd2Foci4uLiAoRGhvamFrdCwgMzAuIEp1bCAxOTk4LCAyMjoyNTo0OCk6Cn4jISBybj1HYW5kbyBydD05MDE4MzAxODggcmc9c2NobWFycm4KfiMhIHRpZD05MDE4MjQ4NjIKWmllbWxpY2guIEFiIDMgbWFubisyIG1vbnN0ZXIgd2lyZCBkZXIga2FtcGYgbmFlbWxpY2ggZ2FueiBzY2hvZW4KdW51ZWJlcnNpY2h0bGljaCwgd2VubiBtYW4gbnVyIGRlbiAvc3RkL3Njcm9sbCBoYXQsIGF1c3NlcmRlbSBpc3NlcyBtaXIgc2Nob24Kdm9yZ2Vrb21tZW4sIGRhc3MgbWVpbiAzODZlciBkZW4gKGRhcnN0ZWxsdW5ncy0pc2Nyb2xsIGJlaSBkZW4gcmF0dGVuIG5pY2h0Cm1laHIgaW4gZGVyIG5vcm1hbGVuIGZhc3N1bmcgZ2VzY2hhZmZ0IGhhdC4KS2hpZGFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2llIHdhaHIuLi4gKEdhbmRvLCAzMC4gSnVsIDE5OTgsIDIyOjM5OjI1KToKfiMhIHJuPURob2pha3QgcnQ9OTAxODMwMzQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAxODI0ODYyCmluIGRlbSBmYWxsIC0+IGVpbmZhY2ggbnVyIGRpIGVpZ2VuZW4gc2FjaGVuIGZhcmJpZyBtYWNoZW4gLi4gZGVyIHJlc3QgaXMgZ3JhdQphdWYgaGVsbGdyYXUgOykKR2FuZG8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHVlYmVyd2FjaHVuZ3N0YWF0IChBbmF0b2wsIDMxLiBKdWwgMTk5OCwgMDA6MDU6NDkpOgp+IyEgcm49QXp6dXJvIHJ0PTkwMTgzNjI0OSByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9ODk5NTE1NTc4Ck1vbWVudCwgQWNyaW1vbiBpc3QgZGVyLCBkZXIgbWl0IEJpc3ogc2NocmVpYnQuIERlciBhbmRlcmUsIGRlciBtaXQKQW5mInVocnVuZ3N6ZWljaGVuICJ1YmVyaGF1cHQgbmljaHQga2xhcmtvbW10LCBoZWkic3QgKHVwcykgRW1iZWUuIDopCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXaWUgd2Foci4uLiAoS2V5LCAzMS4gSnVsIDE5OTgsIDA5OjQ3OjE2KToKfiMhIHJuPURob2pha3QgcnQ9OTAxODMwMzQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAxODI0ODYyCkhtbSBtdXNzIG1hbiBiZWltIGthbXBmIHdhcyBzZWhlbj8gLikKCkFsc28gd2VubiBpY2ggbG9zemllaCBzZWggaWNoIG1laXN0IG5ldG1hbCBkaWUgTFBgcyA9OykKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTW9yZ2VuR3JhdWVuIEFuZmFlbmdlcnNlaXRlbiAoSGlnaGxhbmRlciwgMzEuIEp1bCAxOTk4LCAxMjozNTowMCk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTkwMTg4MTIzMSByZz13d3cKfiMhIHRpZD05MDEyMjkxOTMKQWFhYWFoLCB0cmV0ZSBtaWNoIGVpbmVyISBJY2ggaGFiZSBhdWYgZWluZW4gc3otQXJ0aWtlbCBnZWFudHdvcnRldC4uLi4KICAgSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXaWUgd2Foci4uLiAoWWVuZGksIDMxLiBKdWwgMTk5OCwgMTQ6Mjk6MzUpOgp+IyEgcm49S2V5IHJ0PTkwMTg3MTIzNiByZz1zY2htYXJybgp+IyEgdGlkPTkwMTgyNDg2Mgo+IEFsc28gd2VubiBpY2ggbG9zemllaCBzZWggaWNoIG1laXN0IG5ldG1hbCBkaWUgTFBgcyA9OykKPiAKPiBLZXkKCgpIbW1tLi4uIGZpbmdlciBLZXk6CgpLZXkgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IE1hcmJ1cmcuCi4uLgouLi4KQmlzaGVyIGJlcmVpdHMgNDI5IG1hbCBnZXN0b3JiZW4KCgpLZWluZSB3ZWl0ZXJlbiBGcmFnZW4sIEV1ZXIgRWhyZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogdWViZXJ3YWNodW5nc3RhYXQgKEFjcmltb24sIDMxLiBKdWwgMTk5OCwgMTg6MzI6MDEpOgp+IyEgcm49QW5hdG9sIHJ0PTkwMTgzNjM0OSByZz1zY2htYXJybgp+IyEgdGlkPTg5OTUxNTU3OApFbWJlZSBrb21tdCBzZWhyIHdvaGwgbWl0IEFuZiJ1aHJ1bmdzemVpY2hlbiBrbGFyLgpFcyBrb21tdCBudXIgZGVyamVuaWdlIG5pY2h0IGRhbWl0IGtsYXIsIGRlciBkYXMgbmljaHQgdmVyc3RlaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB1ZWJlcndhY2h1bmdzdGFhdCAoTm9rLCAzMS4gSnVsIDE5OTgsIDIxOjAzOjM2KToKfiMhIHJuPUJvdHRvbSBydD05MDE5MDkzMzEgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTg5OTUxNTU3OApXZWlsIHdpciBnZXJhZGUgYmVpIFZlcmZlaGx1bmdlbiBzaW5kOiBEYXMgbWl0IGRlbSBHZW5pdGl2IHNvbGx0ZSBub2NoIGV0d2FzCmdldWVidCB3ZXJkZW4uICpraWNoZXIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJyYXRlbiB1bmQgdmVya2F1ZnQgKE5lYiwgMzEuIEp1bCAxOTk4LCAyMToyMzo0NCk6CkVpc2ViZW5lLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb2Jlbiwgc3VlZGVuIHVuZCBub3JkZW4uCkRhcyBBYmJpbGQgTmVicy4KRWluIEVpc2dpZ2FudC4KRWluIEVpc2dpZ2FudCB3aXJkIGVpbiB3ZW5pZyB0cmFuY2hpZXJ0LgpEZXIgRWlzZ2lnYW50IHZlcmZlaGx0IERpY2guCkR1IGdyZWlmc3QgZGVuIEVpc2dpZ2FudGVuIG1pdCBkZW0gSEFNTUVSIGFuLgpEdSB0cmlmZnN0IGRlbiBFaXNnaWdhbnRlbiBzZWhyIGhhcnQuCkVpbiBBYmJpbGQgTmVicyB0YWV1c2NodCBlaW5lbiBBbmdyaWZmIGFuLgpFaW4gUGhvZW5peCBmbGllZ3QgaGVyZWluLgpEZXIgRWlzZ2lnYW50IHZlcmZlaGx0IGRlbiBQaG9lbml4Lgp0cApEdSBrcmF0enQgZGVuIEVpc2dpZ2FudGVuLgpFaW4gQWJiaWxkIE5lYnMgdGFldXNjaHQgZWluZW4gQW5ncmlmZiBhbi4KRWluIFBob2VuaXggZmxpZWd0IG5hY2ggTm9yZGVuLgoKSmEgd2llIGpldHp0PyBIZXksIHdhcnRlIGF1ZiBtaWNoLCBEdSBkdW1tZXMgVmllaCAhCk5lYiwgZnVlaGx0IHNpY2ggYXVmIGVpbm1hbCBzZWhyIGVpbnNhbS4uLi4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAsKCAoTm92YXN0b3JtLCAgMS4gQXVnIDE5OTgsIDAwOjEwOjE5KToKRGVpbiBGcmV1bmQgTmViIHRlaWx0IERpciBtaXQ6IHdlciBrZW5udCBkaWUgc2FldXJlIGluIGRlciBnb2JsaW5ob2VobGUgYmVpbQpEZWluIEZyZXVuZCBOZWIgdGVpbHQgRGlyIG1pdDogbmVhbmRlcnRhbCA/CgpbVG9kOkxhcnNdIEVpbmUgc3RhcmsgYWV0emVuZGUgRmx1ZXNzaWdrZWl0IGhhdCBnZXJhZGUgTmViIHVtZ2VicmFjaHQuCgouLi4KTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQVJHTCAoWmVyLCAgMS4gQXVnIDE5OTgsIDIzOjIzOjQ5KToKW2lkZW50aWZpemllcmUgemVyXQpaZXIgd2VocnQgRGVpbmVuIFNwcnVjaCBhYi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouIG8gTyAoIC4uLiApIChBbmF0b2wsICAyLiBBdWcgMTk5OCwgMDA6NTI6NTcpOgpFaW5lIER1bmtlbGVsZmluIGphZ3QgRGljaCBuaWNodCBtZWhyLgpFaW5lIER1bmtlbGVsZmluIGphZ3QgRGljaCBuaWNodCBtZWhyLgpEdSBqYWdzdCBlaW5lIER1bmtlbGVsZmluIG5pY2h0IG1laHIuCkVpbmUgRHVua2VsZWxmaW4gamFndCBEaWNoIG5pY2h0IG1laHIuCkR1IGphZ3N0IGVpbmUgRHVua2VsZWxmaW4gbmljaHQgbWVoci4KRWluZSBEdW5rZWxlbGZpbiBqYWd0IERpY2ggbmljaHQgbWVoci4KCi4uLiBGUkFVRU4hCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFJpbmdvciwgIDIuIEF1ZyAxOTk4LCAwMTowNzo0MCk6CltTZWhlcjpaZXJdIEFSR0hMTExMTApbVG9kOkxhcnNdIEVpbmUgaGVyYWJzdHVlcnplbmRlIERlY2tlIGhhdCBnZXJhZGUgWmVyIHVtZ2VicmFjaHQuCgoKUmVjaHQgaGF0IGVyLgoKUmluZ29yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hvbiByaWNodGlnIHNvIChLYXJ0b2ZmZWwsICAyLiBBdWcgMTk5OCwgMDE6MTU6NDQpOgpJY2ggaGFiIG1laW5lIE5OYWRXX01lbGR1bmcgc2Nob24gcmljaHRpZyBnZXNldHp0OgpBbGxlcyBmYXVsZSBTYWVja2UsIGtlaW5lciBzY2hyZWlidCB3YXMuCgonVG9mZmVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHdXRlbiBNb3JnZW4gOy0pIChNb3Jnb3RoLCAgMi4gQXVnIDE5OTgsIDA1OjM1OjA4KToKCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBTb24sICAyLiBBdWcgMTk5OCwgMDU6MzQ6MzcgKDQgVGVpbG5laG1lcikKClRodWZpci4uLi4uLi4uLkoueiBOb2suLi4uLi4uLi4uLi4uLnogSm9kYS4uLi4uLi4uLi4uSS56IE1vcmdvdGguLi4uLi4uLi4uUgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEd1dGVuIE1vcmdlbiA7LSkgKFRoZXJpbiwgIDIuIEF1ZyAxOTk4LCAwNTozODoyMCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkwMjAyODkwOCByZz1zY2htYXJybgp+IyEgdGlkPTkwMjAyODkwOApHbGVpY2hmYWxscyA6KQogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gU29uLCAgMi4gQXVnIDE5OTgsIDA1OjM4OjA4ICg0IFRlaWxuZWhtZXIpCgpUaHVmaXIuLi4uLi4uLi5KLnogTm9rLi4uLi4uLi4uLi4uLi56IEpvZGEuLi4uLi4uLi4uLkkueiBUaGVyaW4uLi4uLi4uLi4uLlMKClQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcm1lcyBtZy4uLiAoUGFrZSwgIDIuIEF1ZyAxOTk4LCAwODoyOToxMCk6Cj4ga3dlcgpMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gU29uLCAgMi4gQXVnIDE5OTgsIDA4OjI3OjIyICgyIFRlaWxuZWhtZXIpCjtUaHVmaXIuLi4uLi4uLi5KLnogUGFrZS4uLi4uLi4uLi4uLi5TCgpQYWtlIChncmluc2VuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsbGVzIG1laW5zIDspIChUaHVmaGlyLCAgMi4gQXVnIDE5OTgsIDA5OjEwOjAwKToKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIFNvbiwgIDIuIEF1ZyAxOTk4LCAwOTowODoyNiAoMiBUZWlsbmVobWVyKQoKVGh1ZmlyLi4uLi4uLi4uLi56IFRodWZoaXIuLi4uLi4uLi4uUwoKV2VsY2ggaGltbWxpc2NoZSBSdWhlLgpXdXJzdHNlaGVyIFRodWZoaXIgZW50c3Bhbm5lbmQuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIZSEgKEFuYXRvbCwgIDIuIEF1ZyAxOTk4LCAyMzowMzo0Mik6CnJncmluc2UgcGF0cnluCkNsb3NpbmcgZG93bi4KJSBDb25uZWN0aW9uIHRvIG1nYSBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgotLS0tIE5vIHdvcmxkIC0tLS0KCipTQ0hNT0xMKgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWZydWYhIChTb21tZXIsICAzLiBBdWcgMTk5OCwgMDI6MDU6NTMpOgoKU2NocmVpYnQgbWlyIQoKU29tbWVyLCBGcmF1IERyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdWZydWYhIChQYWtlLCAgMy4gQXVnIDE5OTgsIDAzOjAzOjAwKToKfiMhIHJuPVNvbW1lciBydD05MDIxMDI3NTMgcmc9c2NobWFycm4KfiMhIHRpZD05MDIxMDI3NTMKbWlyIQoKUGFrZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW5mYWVuZ2VyLi4uIChIaWdobGFuZGVyLCAgMy4gQXVnIDE5OTgsIDEzOjA5OjAwKToKPiBKZWRlciBBbmZhZW5nZXIgbGVybnQsIEVSU1QgQWRkRXhpdCgpLCBEQU5OIEFkZEl0ZW0oKSAqKnJvY2h1cyB0cmV0KioKClRqYSwgQW5mYWVuZ2VyIGxlcm5lbiBub2NoLi4uIGFiZXIgUm9jaHVzPwoKICBIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9kZXIgZG9jaCBiZXNzZXIgUnVicmlrICJ3d3ciPyAoR2FzdDEsICAzLiBBdWcgMTk5OCwgMTM6NTY6MjYpOgpodHRwOi8vd3d3LnRoZW9uaW9uLmNvbS9vbmlvbjMxMjEvYmlsbGdhdGVzLmh0bWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWdoaWVyIGJ1Z2d0IChXb29keSwgIDMuIEF1ZyAxOTk4LCAxNTowNTozOCk6Cn4jISBvbj1Xb29keSBvdD05MDIxNDk0ODMgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU1vcmdvdGggcnQ9OTAyMTQyNDQyIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTAyMTQyNDQyClVuZCBkYW5uIGdhYnMgZGllLCBkaWUgc2ljaCBhdWZtYWNodGVuLCBBZGRJdGVtKCkgc2ljaGVyZXIgenUgbWFjaGVuLi4uCjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VnaGllciBidWdndCAoQW5hdG9sLCAgMy4gQXVnIDE5OTgsIDE1OjA1OjQwKToKfiMhIHJuPU1vcmdvdGggcnQ9OTAyMTQyNDQyIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTAyMTQyNDQyCkljaCBzZWhlIGRhcyBQcm9ibGVtIG5pY2h0IC0gYmVpIERFTiBBdXNnYWVuZ2VuIG1hY2h0IGVzIGVpZ2VudGxpY2ggc2Vocgp3ZW5pZyBhdXMsIHdlbm4gc2llIGZlaGxlbiwgZmluZGUgaWNoLi4uIDopCgpIYXQgaGllciBqZW1hbmQgZXR3YXMgZ2VnZW4gWmF1YmVyZXI/IDspCgpBbmF0b2wgCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZWdoaWVyIGJ1Z2d0IChOb3Zhc3Rvcm0sICAzLiBBdWcgMTk5OCwgMTU6MDY6MzIpOgp+IyEgcm49QW5hdG9sIHJ0PTkwMjE0OTU0MCByZz1zY2htYXJybgp+IyEgdGlkPTkwMjE0MjQ0MgpIbXBmIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2VnaGllciBidWdndCAoQW5hdG9sLCAgMy4gQXVnIDE5OTgsIDE1OjA3OjAxKToKfiMhIHJuPU5vdmFzdG9ybSBydD05MDIxNDk1OTIgcmc9c2NobWFycm4KfiMhIHRpZD05MDIxNDI0NDIKRHUgc2VpIHN0aWxsIHVuZCB1ZWJlIFJ1ZWNrZW5kZWNrdW5nLgoKSG1wZiBhZWggQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2VnaGllciBidWdndCAoTm92YXN0b3JtLCAgMy4gQXVnIDE5OTgsIDE1OjA5OjQ2KToKfiMhIHJuPUFuYXRvbCBydD05MDIxNDk2MjEgcmc9c2NobWFycm4KfiMhIHRpZD05MDIxNDI0NDIKSmFqYSwgaWNoIHNlaHMgc2Nob24gZGV1dGxpY2ggdm9yIG1pciEKdG9ldGUgd2VnaGllcgpydWVja2VuZGVja3VuZyBhbmF0b2wKCmVpbmUgS2FtcGZydW5kZSBzcGFldGVyOgpBbmF0b2wgdmVyc2Nod2luZGV0IGluIGVpbmVyIFNjaHdlZmVsd29sa2UuCltUb2Q6TGFyc10gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSA8S2FlbXBmZXI+IHVtZ2VicmFjaHQuCltUb2Q6V2VnaGllcl0gR290Y2hhIQoKTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2VnaGllciBidWdndCAoQW5hdG9sLCAgMy4gQXVnIDE5OTgsIDE1OjExOjE3KToKfiMhIHJuPU5vdmFzdG9ybSBydD05MDIxNDk3ODYgcmc9c2NobWFycm4KfiMhIHRpZD05MDIxNDI0NDIKTWFsIFBhdHJ5biBmcmFnZW4sIG9iIGRlciBTdHJ1ZGVsIGRlcyBUZWxlcG9ydHMgZWluZW4gUnVlY2tlbmRlY2t1bmcKYXVzdWViZW5kZW4gS2FlbXBmZXIgbWl0cmVpc3NlbiBrb2VubnRlLiBXYWVyIG5hdHVlcmxpY2ggcGVpbmxpY2gsIAp3ZW5uIGRlciBUZWxlcG9ydCBGRUhMU0NITEFHRU4gd3VlcmRlLCBhYmVyIGRhcyBpc3QgamEgZGFzIFJpc2lrbyBkZXMKS2FlbXBmZXJzLCBvZGVyPyAKCkFuYXRvbCwgZ3JpbnN0IGZyZWNoIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChOb3Zhc3Rvcm0sICAzLiBBdWcgMTk5OCwgMTg6MTU6MjEpOgpbU2VoZXI6UGxvdGluXSBobW0sIGhhdCBtYWwgZWJlbiBqZW1hbmQgbHVzdCwgZGFzIHNrZWxldHQgbWl0IHp1IG1ldHplbG4sIGltCltTZWhlcjpQbG90aW5dIHBhcmEtdmxhbmQ/CgpbVG9kOkxhcnNdIFNrZWxldHQgaGF0IGdlcmFkZSBQbG90aW4gdW1nZWJyYWNodC4KW1RvZDpTa2VsZXR0XSBXZW5uIER1IGVyc3QgbWFsIHZlcmZhdWx0IGJpc3QsIGRhbm4ga29lbm5lbiB3aXIgenVzYW1tZW4KW1RvZDpTa2VsZXR0XSBTcGllbGVyIHVtYnJpbmdlbiEKLi4uCk5vdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlciB3aXJkIGRlbm4gZGEuLi4/IChCaWVsZWZlbGQsICAzLiBBdWcgMTk5OCwgMTk6MTA6NDgpOgpTaWx2YW5hICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpFaW4gQmVpZmFsbHNzdHVybSBicmFuZGV0IGltIERpYW1vbmRwYXJrIGF1Zi4gV2FzIGRhIHdvaGwgd2llZGVyIGxvcyBpc3Q/CgpTb3dhcy4uLiA6LSkKQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzdHJlbmcgbW9ub2dhbT8gKEhhZHJhLCAgNC4gQXVnIDE5OTgsIDAwOjU5OjI0KToKUGFkcmVpYyBzYWd0OiBuZW5lLi4gbWVociBhbHMgZWluIGtpbmQgYXVmIGVpbm1hbCBtYWNoIGljaCBuaWNodAoKaGFkcmEgLSBmaW5kZXQgYXVjaCwgZGFzcyBtYW4gcHJpb3JpdGFldGVuIHNldHplbiBtdXNzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgaXN0IGphd29obCBuZSBGcmVjaGhlaXQhIChUYW1pLCAgNC4gQXVnIDE5OTgsIDAxOjUyOjEwKToKQW5keSBrb21tdCBhbi4KQW5keSBzcHVja3QgQXJrc2hhdCBhbi4KQW5keSBzYWd0OiBIZXV0ZSBoYXQgbWljaCBzY2hvbiB3aWVkZXIgZWluIE1hZ2llciBnZXphcHB0IQpBbmR5IHNhZ3Q6IEhhZT8KQW5keSBnZWh0LgoKQ2hlZmNoZW4sIGFlbmRlciBkYXMgYml0dGUsIGRlciBpc3QgendhciBnZWR1bGRpZywgYWJlciBzb29vbyBnZWR1bGRpZyBudW4KYXVjaCB3aWVkZXIgbmljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2VtaW5hciAoUGFkcmVpYywgIDQuIEF1ZyAxOTk4LCAwMjozMzo1Nyk6Cn4jISBybj1TaWx2YW5hIHJ0PTkwMjE4NjMwOSByZz1wYXJ0eQp+IyEgdGlkPTkwMjE4NjMwOQpaYXViZXJtYXVzIFBhdHJ5biBzYWd0OiBpY2gga25hbGwgbmUgcmllc2VuLWNsb3N1cmUgYW4gZGVuIHByb2pla3Rvciwgc2FnZToKWmF1YmVybWF1cyBQYXRyeW4gc2FndDogZGF0IGlzdCBuZSBjbG9zdXJlLCB1bmQgZ2VoZSBkYW5uIHdpZWRlciA6KQoKCiAgICAgICAgICAgICAgICAgICBQYWRyZWljLCBzZWhuc3VlY2h0aWcgYXVmIGRpZSBQYXJ0eSB3YXJ0ZW5kLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9kZXIgZG9jaCBiZXNzZXIgUnVicmlrICJ3d3ciPyAoU29uZ29rdSwgIDQuIEF1ZyAxOTk4LCAxMjoxNzo1OCk6Cn4jISBybj1HYXN0MSBydD05MDIxNDUzODYgcmc9c2NobWFycm4KfiMhIHRpZD05MDIxNDUzODYKRWluZGV1dGlnIHp1dmllbCBBRCZEIGdlc3BpZWx0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3b2hsIHNjaHdlcmhvZXJpZyA6KSAoSmFzb25yaWdpZCwgIDQuIEF1ZyAxOTk4LCAxNzozMzowMik6CkR1IHNhZ3N0OgojIyAgICAgICAgICAgICAgICAgICAgICAgICAjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKIyAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKIyAjICMjICAjIyAgICAjIyAgICMjIyAgICAgICAgICAjIyAgIyMgIyMgICMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiMgIyAjICAgICAjICAjICAjICAjICAjICAgICAgICAgICAjICAjICAjICAgIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAojICMgIyAgICMjIyAgIyAgICAgIyAgIyAgICAgICAgICMjIyAgIyAgIyAgICMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKIyAjICAgIyAgIyAgIyAgIyAgIyAgIyAgICAgICAgIyAgIyAgIyAgIyAgICMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKIyAjICAgICMjICMgICMjICAjIyMgIyMgICAgICAgICMjICMgICMjICMgIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCgo+IER1IGhhc3QgamV0enQgMTY2IExlYmVuc3B1bmt0ZSB1bmQgNjQgS29uemVudHJhdGlvbnNwdW5rdGUuCkVpbiBPZmZpemllciBrb21tdCB3aWVkZXIgenUgc2ljaC4KRHUgcm90ZmxzdC4KCkphc29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd29obCBzY2h3ZXJob2VyaWcgOikgKEphc29ucmlnaWQsICA0LiBBdWcgMTk5OCwgMTc6MzY6NTMpOgp+IyEgcm49SmFzb25yaWdpZCBydD05MDIyNDQ3ODIgcmc9c2NobWFycm4KfiMhIHRpZD05MDIyNDQ3ODIKU2hpdCwgamV0enQgbWFjaHQgbWlyIGRpZSBFaW5ydWVja3VuZyBkZW4gSm9rZSBrYXB1dHQuCgpEYXMgaGllc3MgV0FDSCBBVUYgISEKCkphc29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYXRzY2hpICEhIChKYXNvbnJpZ2lkLCAgNC4gQXVnIDE5OTgsIDE3OjU4OjQ5KToKU3VnYWFuIG11c3Mgbm9jaCBlaW5tYWwgbGF1dCBuaWVzZW4gdW5kIG5vY2ggZWlubWFsIGlocmUgTmFzZSBob2NoemllaGVuLgpEYXMgTW9yZ2VuR3JhdWVuIGVyeml0dGVydCB1bnRlciBlaW5lbSBsYW5nZXpvZ2VuZW4sIHVubWVuc2NobGljaGVuIFNjaHJlaS4KRGllIEh5ZHJhIHN0aXJidCBpbiBlaW5lbSBNZWVyIHZvbiBCbHV0LgoKRGFzIG5lbm4gaWNoIFNjaG51cGZlbiA6KQoKSmFzb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaHVsZGlnICEgKEFuYWNyaW9uLCAgNC4gQXVnIDE5OTgsIDE4OjA4OjMyKToKU2EgaGVpc3N0IGVzIHBsb2V0emxpY2g6IENsb3NpbmcgZG93biAuLiB1bmQgbWFuIGJlc2Nod2VydCBzaWNoIC4uLiA6CkFuYWNyaW9uIHJ1ZnQ6IGFlaC4gaGF0IG1pY2ggamVtYW5kIGRpc2Nvbm5lY3RlZCA/IT8KQm9pbmcgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4gICAgICAgIAoKRGEgaGF0IGVyIHNpY2ggYWJlciBzY2huZWxsIGF1cyBkZW0gU3RhdWIgZ2VtYWNodCA6KQoKQW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIYXRzY2hpICEhIChTb25nb2t1LCAgNS4gQXVnIDE5OTgsIDExOjE1OjM5KToKfiMhIHJuPUphc29ucmlnaWQgcnQ9OTAyMjQ2MzI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyMjQ2MzI5CkJlaSBkZW0gc2NobnVwZmVuIG1vZWNodGUgaWNoIG1pY2ggYXVjaCBtYWwgYW5zdGVja2VuIDopCkthbXBmbmllc2VyIGRpZSBuZXVlIEdpbGRlIGltIE1HIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IChCdXp6Y3V0LCAgNS4gQXVnIDE5OTgsIDEzOjEwOjU2KToKW0FiZW50ZXVlcjpDYXJsb3NdIHdhcnVtIHNjaG5laWRlIGljaCBtaWNoIHN0YWVuZGlnCltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIENhcmxvcyB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYmVzb2ZmZW5lciBQYWdhZ2VpID8gKEphc29ucmlnaWQsICA1LiBBdWcgMTk5OCwgMTY6MzI6NTEpOgpQaHlnb3MgdG9ya2VsdCBicmVubmVuZCBoZXJlaW4uClBoeWdvcyBleHBsb2RpZXJ0LiBCQUFBQlVNTU1NTS4KUGh5Z29zIGZhZWxsdCBicmVubmVuZCB2b20gSGltbWVsLgpQaHlnb3MgdG9ya2VsdCBicmVubmVuZCBuYWNoIFdlc3Rlbi4KUGluamkga3JhZWNoenQ6IC4uLiBrcnJyb29vYWFhIC4uLiBIYWxsbyBQaHlnb3MgdW5kIFBoeWdvcyAuLi4KCipncmlucyogSmFzb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaGxlY2h0ZXMgZ2V3aXNzZW4/IChUaWxseSwgIDUuIEF1ZyAxOTk4LCAxODozMTozMyk6CkhlaGVoZSwgZWJlbiBncmFkIGluIGRlciBzY2hvZW5zdGVuIEdpbGRlIGRlcyBNRzoKClR5cmlvbiBzYWd0OiBoaSEgOikpClR5cmlvbiBkZW5rdCAgIC4gbyBPIChpY2ggaGFiIG5peCBhbmdlc3RlbGx0ISEhISkKVHlyaW9uIHppdHRlcnQgdm9yIEFuZ3N0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgVHlyaW9uLgpDaGFvdCBUeXJpb24gdmVybGllc3MgZ2VyYWRlIGRhcyBNb3JnZW5ncmF1ZW4uCi4uLiB3ZW5uIGRhcyBtYWwgbmljaHQgZnVlciBzaWNoIHNwcmljaHQgPjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEdW5rZWxlbGZlbiBtaXQgVkxhbmQtRmFrdG9yPyA7KSkgKFNjaG9rbywgIDUuIEF1ZyAxOTk4LCAyMToxMTo1NSk6Ck5ldWxpY2ggYmVpIGRlbiBEdW5rZWxlbGZlbjoKCkR1IG1hY2hzdCBlaW5lIGVyZm9sZ3JlaWNoZSBGaW50ZSBnZWdlbiBkZW4gV2FlY2h0ZXIuCiogTFAgMTkyICAgTVAgMTM1ICgtOCkKRWluIFdhZWNodGVyIHdlaWNodCBEZWluZW0gQW5ncmlmZiBnZXNjaGlja3QgYXVzLgogIHZlcmZlaGx0Li4gLT4gLi50b2VkbGljaC9Ub2Rlc3N0b3NzLi4gKioqKioqKiogRHUuLi4uLi4uLi4uLiA6CldhZWNodGVyLi4uLi4KKiBMUCAxOTIgICBNUCAxMTAgKC0yNSkKICB2ZXJmZWhsdC4uIC0+IC4uLi5ub3JtYWwvS25vY2hlbnNjaGFlICoqKioqKioqIER1Li4uLi4uLi4uLi4gOgpXYWVjaHRlci4uLi4uCiAgc2VociBoYXJ0LiAtLSAuLi4ubm9ybWFsL2hlaWxpZ2VuIEhhbSAqKioqKioqKiBUYW5pcy4uLi4uLi4uIDoKV2FlY2h0ZXIuLi4uLgpEZXIgV2FlY2h0ZXIgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KCkFsc28gamV0enQgZmFuZ2VuIHNjaG9uIGRpZSBEdW5rZWxlbGZlbiBhbiBpcmdlbmR3ZWxjaGVuIEFuZ3JpZmZlbiAxMDAlCmF1c3p1d2VpY2hlbiBvZGVyIHdhcz8gSWNoIGdsYXViZSBkYXMgc29sbHRlIG1hbiBub2NobWFsIHVlYmVyZGVua2VuLCBvZGVyPwo7KSkKClNjaG9rbyAoc29uc3Qgc3RvbHogYXVmIHNlaW5lbiBUb2Rlc3N0b3NzKQoKUC5TLjogU29ycnkgd2VnZW4gZXZlbnR1ZWxsZW4gVW1icnVlY2hlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHVua2VsZWxmZW4gZGllIDIuIDspIChTY2hva28sICA1LiBBdWcgMTk5OCwgMjI6NTk6NDUpOgoKSGF1cHRzdHJhc3NlLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuLCBub3JkZW4sIG5vcmRvc3RlbiB1bmQgc3VlZG9zdGVuLgpFaW5lIG1hZW5ubGljaGUgRHVua2VsZWxmZW4gV2FjaGUuCkVpbiBXYWVjaHRlciBiZXNjaHdvZXJ0IGRpZSBNYWVjaHRlIGRlciBGaW5zdGVybmlzLgpQbG9ldHpsaWNoIHNjaGllc3N0IGVpbiBncm9zc2VyIEJsaXR6IGF1ZiBlaW4gRGluZyBuaWVkZXIuCkRlciBXYWVjaHRlciBmYWVsbHQgdG90IHp1IEJvZGVuLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBXYWVjaHRlcnNdIFNoZXJpZmYhIFZlcmhhZnRlIExpbnV4IQoKU28gZG9vZiBrb2VubmVuIGF1Y2ggbnVyIE1vbnN0ZXIgdm9uIFBhKiBzZWluIDspKQoKU2Nob2tvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRHVua2VsZWxmZW4gZGllIDIuIDspIChGZXVlcndlaHIsICA1LiBBdWcgMTk5OCwgMjM6MzU6MTYpOgp+IyEgcm49U2Nob2tvIHJ0PTkwMjM1MDc4NSByZz1zY2htYXJybgp+IyEgdGlkPTkwMjM1MDc4NQpIZSEKCkRhcyBzaW5kIGtlaW5lIGRvb2ZlbiBNb25zdGVyLCBkYXMgaXN0IGRpZSBuZXVlIE5QQy1CYWxhbmNlLCBkaWUgCmhpZXIgZ3JlaWZ0LiBJaHIgc29sbHRldCBkZW4gV2VnaGllciBzZWhlbiwgd2VubiBlciBzaWNoIHNlbGJzdApkZW4gVG9kZXNzdG9zcyBhbnNldHp0IDotKQoKICAgRmV1ZXJ3ZWhyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IER1bmtlbGVsZmVuIGRpZSAyLiA7KSAoUGFkcmVpYywgIDYuIEF1ZyAxOTk4LCAwMDo0ODo1Mik6Cn4jISBybj1TY2hva28gcnQ9OTAyMzUwNzg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyMzUwNzg1CkF1Y2ggZWluZW0gTlBDIGthbm4gZWlubWFsIGVpbiBzY2h3ZXJlciBQYXR6ZXIgdW50ZXJsYXVmZW4gOikKKGRlbiBGZWhsZXIgbWl0IGRlbSBEaW5nIGhhYiBpY2ggc29lYmVuIGF1Y2ggYXVzZ2ViYXV0IDopCgogICAgICAgICAgICAgICAgICAgICAgICAgICBQYWRyZWljCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRHVua2VsZWxmZW4gbWl0IFZMYW5kLUZha3Rvcj8gOykpIChUZWRkeSwgIDYuIEF1ZyAxOTk4LCAwMzo0MToyOSk6Cn4jISBybj1TY2hva28gcnQ9OTAyMzQ0MzE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyMzQ0MzE1CkFoLCBzbyBsYW5nc2FtIGtyaWVnIGljaCBVbnRlcnN0dWV0enVuZzoKCkRpZXNlcyBQcm9ibGVtIGhhYmVuIGFsbGUgR2lsZGVuIG1pdCBTcGVsbHMgc2Nob24gbGFlbmdlciwgaWNoIGJpbiBkYWdlZ2VuIHVuZApmaW5kZSBlcyB6aWVtbGljaCBhYmFydGlnLgoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1haWwgKFRlZGR5LCAgNi4gQXVnIDE5OTgsIDA0OjAxOjQyKToKSGlobywKCkFic2VuZGVyOiBOZSBkYXMga2FubiBpY2ggS251cnQgbmljaHQgYW50dW4gdW5kIGhpZXIgc2NocmVpYmVuIGRhcyBkaWUgdm9uIGlobSBrYW0gOy0pCkFuOiBDYW1waW5nCkNjOiBUZWRkeSwgTWl0LCBEb25uZXJzdGFnLCBBbSwgRXJzdCwgU29uZGVybiwgTWl0LCBEaXIsIE1pdCwgTmljaHQsIERvY2gsClVlYnJpZ2VucywgUGFydHksIFp1ciwgS29tbWUsIEljaCwgVG16CkRhdHVtOiBNaXQsICA1LiBBdWcgMTk5OCwgMjI6MTI6NTgKVGl0ZWw6IGFyZ2wKVGVkZHkgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTOiBHZWhlaW1hZ2VudCBtaXQgU3R1ZGVudGVuYXVzd2VpcyAoQmFib29uLCAgNi4gQXVnIDE5OTgsIDA4OjQxOjU3KToKV2FzIHBhc3NpZXJ0LCB3ZW5uIGRpZSBMZXV0ZSB6dXZpZWxlIEtyaW1pcyBsZXNlbiwgaGFiIGljaCAKZWJlbiBlcmxlYnQuIEJlaSBkZXIgU3R1ZGVudGVudmVybWl0dGx1bmcgZGVzCkFyYmVpdHNhbXRzIGhhdCBqZW1hbmQgZWluZSBBcmJlaXRzYW5iZ2Vib3QgZWluZ2VyaWNodC4KR2VzdWNodCB3aXJkIGVpbiBTdHVkZW50IGFscyBQcml2YXRkZWRla3RpdiwKbWl0IGF1dG8gdW5kIGJpcyBhdWYgd2VpdGVyZXMuIEVzIHNvbGwgZGllIEV4LUZyYXUgYmVzY2hhdHRldAp3ZXJkZW4sIHdlaWwgZGVyIEF1ZnRyYWdnZWJlciBrZWluZW4KVW50ZXJoYWx0IG1laHIgYmV6YWhsZW4gbW9lY2h0ZS4gRGVyIEpvYiBkYXVlciBzb2xhbmdlLCBiaXMgZGllCkZyYXUgdWViZXJmdWVocnQgaXN0IHVuZCBkZXIgIkRlZGVrdGl2IiBtdXNzIG5hdHVlcmxpY2ggYXVjaAp2b3IgR2VyaWNodCBhdXNzYWdlbi4KRGFzIEJlc3RlIGlzdCBhYmVyLCBkYXNzIGRlbiBqb2Igc29nYXIgamVtYW5kIGFuZ2Vub21tZW4gaGF0LgoKQmFCT09uKCkgc3VjaHQgbmFjaCBzZWluZXIgTGl6ZW56IHp1bSBUb2V0ZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFM6IEdlaGVpbWFnZW50IG1pdCBTdHVkZW50ZW5hdXN3ZWlzIChUdW5peGd1dCwgIDYuIEF1ZyAxOTk4LCAwOTozNzo0NSk6Cn4jISBybj1CYWJvb24gcnQ9OTAyMzg1NzE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyMzg1NzE3Cldlbm4gZGFzIGd1dCBLb2hsZSBnaWJ0Li4uCndhcyBnZWh0IG1pY2ggZnJlbWRlcyBFbGVuZCBhbi4uLgoncyBLYXJhdGUtWndlcmNobGUgLSBmdWVyIGplZGUgU2NobGVjaHRpZ2tlaXQgenUgaGFiZW4gLSB3ZW5uIGVzIHNpY2ggZGVubgpsb2hudC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUzogR2VoZWltYWdlbnQgbWl0IFN0dWRlbnRlbmF1c3dlaXMgKFNvbmdva3UsICA2LiBBdWcgMTk5OCwgMTA6NDk6NDcpOgp+IyEgcm49VHVuaXhndXQgcnQ9OTAyMzg5MDY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyMzg1NzE3ClZpZWxlaWNodCBrYW5uIG1hbiBqYSBlaW4gcGFhciBzY2hvZW5lIFBob3RvcyBtYWNoZW4gOz4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlaXRlciBQYXJ0eWFrdGlvbiAoQ2F0d2VhemxlLCAgNi4gQXVnIDE5OTgsIDEwOjUwOjU0KToKfiMhIG9uPVZhbXB5IG90PTkwMjI2NTQ1MyBvZz1wYXJ0eQpBbHNvIHdpbGwgbmljaHQgamVtYW5kIGF1ZiBkZW0gU29tbWVyY2FtcCBlaW4gU2F1ZndldHRiZXdlcmIgCnZlcmFuc3RhbHRlbj8hPyAgU28gd2llIGRlciBTZWhlcndldHRiZXdlcmIgOykKICAgdmFtcHksIGxlcm50IGVzIGVyc3QgenUgc2NobWFycm5lbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWl0ZXIgUGFydHlha3Rpb24gKENhdHdlYXpsZSwgIDYuIEF1ZyAxOTk4LCAxMDo1MTowNCk6Cn4jISBvbj1HcmFsa29yIG90PTkwMjMwMjY4NCBvZz1wYXJ0eQp+IyEgcm49VmFtcHkgcnQ9OTAyMjY1NDUzIHJnPXBhcnR5Cn4jISB0aWQ9OTAyMjY1NDUzCm51ciBmdWVyIEthZW1wZmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdlaXRlciBQYXJ0eWFrdGlvbiAoQ2F0d2VhemxlLCAgNi4gQXVnIDE5OTgsIDEwOjUxOjMyKToKfiMhIG9uPVZhbXB5IG90PTkwMjMxMzUyNiBvZz1wYXJ0eQp+IyEgcm49R3JhbGtvciBydD05MDIzMDI2ODQgcmc9cGFydHkKfiMhIHRpZD05MDIyNjU0NTMKdW5kIHdhcyBpcyBtaXQgZGVuIHBpcmF0ZW4/IT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdlaXRlciBQYXJ0eWFrdGlvbiAoQ2F0d2VhemxlLCAgNi4gQXVnIDE5OTgsIDEwOjUxOjM4KToKfiMhIG9uPUdyYWxrb3Igb3Q9OTAyMzE1MTQxIG9nPXBhcnR5Cn4jISBybj1WYW1weSBydD05MDIzMTM1MjYgcmc9cGFydHkKfiMhIHRpZD05MDIyNjU0NTMKb2ssIHZvbiBtaXIgYXVzLCB3ZW5uIGRpZSBhdWNoIG5lbiBTYXVmc2tpbGwgaGFiZW4gLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXZWl0ZXIgUGFydHlha3Rpb24gKENhdHdlYXpsZSwgIDYuIEF1ZyAxOTk4LCAxMDo1MTo0NSk6Cn4jISBvbj1Nb3Jnb3RoIG90PTkwMjMxNTQ0OCBvZz1wYXJ0eQp+IyEgcm49R3JhbGtvciBydD05MDIzMTUxNDEgcmc9cGFydHkKfiMhIHRpZD05MDIyNjU0NTMKV2FzIGhhYmVuIGRpZSBQaXJhdGVuIE5JQ0hUPz8/CgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2VpdGVyIFBhcnR5YWt0aW9uIChDYXR3ZWF6bGUsICA2LiBBdWcgMTk5OCwgMTA6NTE6NTkpOgp+IyEgb249VGVkZHkgb3Q9OTAyMzY4OTU0IG9nPXBhcnR5Cn4jISBybj1Nb3Jnb3RoIHJ0PTkwMjMxNTQ0OCByZz1wYXJ0eQp+IyEgdGlkPTkwMjI2NTQ1MwpOYWNodGVpbGU/ClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNlbWluYXIgKEtleSwgIDYuIEF1ZyAxOTk4LCAxNzo1Mzo1NCk6Cn4jISBybj1QYWRyZWljIHJ0PTkwMjE5MDgzNyByZz1zY2htYXJybgp+IyEgdGlkPTkwMjE4NjMwOQpXYXMgaXN0IG5lbiBwcm9qZWt0b3I/CgpLZXkgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgV2VsdCBpc3Qgc2Nob2VuIDopIChaYXJuaXlhLCAgNi4gQXVnIDE5OTgsIDE4OjM2OjI3KToKbm4KVWViZXJnZWhlIEFydGlrZWwgNjIgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNjMgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4KClphcm5peWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFyZ2ghIChBbmF0b2wsICA2LiBBdWcgMTk5OCwgMjE6Mzk6NTkpOgoKTHljYXIgc2FndDogVXJmICEgVXJmISBVUmYhCnxvICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG98CnxvIFVyZiBiZXRldCB6dSBlaW5lbSBHb3R0IHVuZCBibGVpYnQga3VyeiBzdGVoZW4sIHdhcyB6d2FyIGVpbiAgIG98CnxvIHdlbmlnIFplaXQga29zdGV0Li4uIGFiZXIgZGVyIEdvdHQgc2NoZWludCBlcndhY2h0IHp1IHNlaW4gdW5kIG98CnxvIHNjaGVua3QgVXJmIGVpbmVuIFJhdGluZ3B1bmt0LCBkZW4gZXIgVmFuZGVyYmFydCBhYnppZWh0ISAgICAgIG98CnxvICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG98CkR1IHNhZ3N0OiBWQU5ESVZBTkRJVkFOREkgOikKCipTVE9FSE4qCkF1ZiBad2VyZ2UgaXN0IGVpbmZhY2gga2VpbiBWZXJsYXNzLi4uCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYXBzIChNb3Jnb3RoLCAgNi4gQXVnIDE5OTgsIDIzOjAzOjQ4KToKVGV2aWxkbyBzY2hsZWljaHQgaGVyZWluLgpEdWtlIG51a2VtIGtyYWVjaHp0OiAuLi4ga3Jycm9vb2FhYSAuLi4gSGFsbG8gVGV2aWxkbyAuLi4KVGV2aWxkbyBzdHVlcnp0IHNpY2ggYXVmIER1a2UgbnVrZW0gdW5kIGZyaXNzdCBpaG4gYXVmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2VyYWRlIGluIEFzYW5pZWxzIEJhdW0gKERhcmt3aW5nLCAgNy4gQXVnIDE5OTgsIDAyOjAyOjIyKToKSW4gZWluZW0gQmF1bS4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9iZW4gdW5kIHVudGVuLgpbSGVsZCBkZXIgRHJhY2hlbmxhbnplOl0gVGFuaXMgZmVobGVuIG51ciBub2NoIDI0OSBTdHVwc2UgenVtIEhvaGVwcmllc3Rlci4uLi4KVGFyaW5hIGVyc2NoZWludC4KVGFuaXMgc2FndDogd2FydCBpaHIgc2Nob25tYWwgaGllciA/CmphCkR1IG5pY2tzdCB6dXN0aW1tZW5kLgpIb2xsbyB2ZXJkcmVodCBkaWUgQXVnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWdpZXItR2lsZGU/IChUaWxseSwgIDcuIEF1ZyAxOTk4LCAxMToxMDo1OSk6Cmt3ZXIgZ2lsZGUgY2hhb3M6CiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBGcmUsICA3LiBBdWcgMTk5OCwgMTE6MDk6NTIgKDYgVGVpbG5laG1lcikKCkRhbnRlLi4uLi4uLi4uLi4ubSBHYW5kby4uLi4uLi4uLi5qLk0gRnJhbnouLi4uLi4uLi4uLi5NIEF6cmFlbC4uLi4uLi4uLi4uTQooVGVycm9yaXN0Li4uKS5qLk0gVGlsbHkuLi4uLi4uLi4uLi5NCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVG9kIG1pdCBWb3Jhbmt1ZW5kaWd1bmcgKFNyYWJpLCAgNy4gQXVnIDE5OTgsIDE2OjIxOjE3KToKRGVpbiBGcmV1bmQgQmlyZHkgdGVpbHQgRGlyIG1pdDogdW5kIHRzY2h1ZXNzLCBpY2ggc3RlcmJlIG1hbCBzY2huZWxsClRvZCBEZXIgdG9kYnJpbmdlbmRlIEZsdWNoIGRlcyBNb29zbW9uc3RlcnMgaGF0IGdlcmFkZSBCaXJkeQpUb2QgdW1nZWJyYWNodC4KClNyYWJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmQgZXIgaXMgRE9DSCBzdWVzcyEgOykgKFNjaG9rbywgIDcuIEF1ZyAxOTk4LCAxNjo0NToxMyk6CgpbS2xlcnVzOk5vbm5lXSBtYWNodHMgZ3V0LCBpaHIgc3Vlc3NlbiwgYmlzIGRpZSB0YWdlLCBzY2hvZW5lcyBXRSA6KQpbS2xlcnVzOk1vcmdvdGggd2lua3QgTm9ubmVdCgpEYXMgaXN0IGRlciBCZXdlaXMsIGVyIGZ1ZWhsdGUgc2ljaCBhbmdlc3Byb2NoZW4hIDspKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVuZCBlciBpcyBET0NIIHN1ZXNzISA7KSAoTW9yZ290aCwgIDcuIEF1ZyAxOTk4LCAxNjo0Nzo0Nyk6Cn4jISBybj1TY2hva28gcnQ9OTAyNTAxMTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyNTAxMTEzCkdSUlJSUk1QRiwgSUNIIEJJTiBOSUNIVCBTVUVTUyEhISEKCkR1LCBEdSBkdW1tZSBNaWxrYXRhZmVsLCBoYXN0IHp1IGxhbmdlIGluIGRlciBTb25uZSBnZWxlZ2VuIHdhcz8KCk1vcmdvdGggaXN0IE5JQ0hUIHN1ZXNzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVuZCBlciBpcyBET0NIIHN1ZXNzISA7KSAoTm92YXN0b3JtLCAgNy4gQXVnIDE5OTgsIDE2OjQ4OjU3KToKfiMhIHJuPU1vcmdvdGggcnQ9OTAyNTAxMjY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyNTAxMTEzCkhtbS4uLi4gZ2V0cm9mZmVuZSBIdW5kZSAodW5kIGF1Y2ggVGV1ZmVsY2hlbikgYmVsbGVuID8gOy0pCgpOb3ZhLCBlaW56ZWlsZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBVbmQgZXIgaXMgRE9DSCBzdWVzcyEgOykgKE1vcmdvdGgsICA3LiBBdWcgMTk5OCwgMTY6NDk6MzEpOgp+IyEgcm49Tm92YXN0b3JtIHJ0PTkwMjUwMTMzNyByZz1zY2htYXJybgp+IyEgdGlkPTkwMjUwMTExMwpQYXNzIGF1Ziwgc29uc3QgQkVJU1NFIGljaCBEaWNoIGF1Y2ggbm9jaCBdOy0pCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2FjaGVuIGdpYnRzLi4uLiAoS251cnQsICA3LiBBdWcgMTk5OCwgMjM6MTA6NTYpOgpEdSB2ZXJ3dXNjaGVsc3QgRmV1ZXJ3ZWhycyBIYWFyZSBtaXQgZWluZW0gZnJldW5kbGljaGVuICJIdWh1IiBhdXMgZGVyIEZlcm5lLgpGZXVlcndlaHIgdGVpbHQgRGlyIG1pdDogTWl0IERpciByZWQgaWNoIGphIGdhcm5pY2ggbWVoci4uLgpEdSB0ZWlsc3QgRmV1ZXJ3ZWhyIG1pdDogaG1tbW0/CkZldWVyd2VociB0ZWlsdCBEaXIgbWl0OiBEdSBGbGVnZWwhCkR1IHRlaWxzdCBGZXVlcndlaHIgbWl0OiBobW1tbW1tbT8KRmV1ZXJ3ZWhyIHRlaWx0IERpciBtaXQ6IER1IGhhc3QgaW4gbWVpbiBSZXBvcnQtRmlsZSBnZXNjaHJpZWJlbiwgRHV1dXUuIER1CkZldWVyd2VociB0ZWlsdCBEaXIgbWl0OiBoYXN0IFRZUE9TIGFiZ2VzZXR6dCEKRHUgc2NoYXVzdCBGZXVlcndlaHIgdmVyd3VuZGVydCBhdXMgZGVyIEZlcm5lIGFuLgpGZXVlcndlaHIgdGVpbHQgRGlyIG1pdDogU293YXMgR0VNRUlORVMhISEhCkR1IHNjaGF1c3QgRmV1ZXJ3ZWhyIGJydWVsbGVuZCB2b3IgbGFjaGVuIGF1cyBkZXIgRmVybmUgYW4uCkR1IHRlaWxzdCBGZXVlcndlaHIgbWl0OiBkYXMgcG9zdGUgaWNoIGRhcyBwb3N0ZSBpY2gKRmV1ZXJ3ZWhyIHRlaWx0IERpciBtaXQ6IHNvd2FzIEhJTlRFUkhBRUxUSUdFUyEgRXJzdCAuLi4gSEUhCkR1IGdyaW5zdCBGZXVlcndlaHIgYXVzIGRlciBGZXJuZSBhbi4KRmV1ZXJ3ZWhyIHRlaWx0IERpciBtaXQ6IGxhc3MgZGFzIGJsb3NzIGJsZWliZW4gOikKCkRhIHdpbGwgbWFuIGVpbm1hbCBoaWxmcmVjaWggc2Vpbi4uLiA6KAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNhY2hlbiBnaWJ0cy4uLi4gKE5haXJvbGYsICA4LiBBdWcgMTk5OCwgMDk6Mzk6NTApOgp+IyEgcm49S251cnQgcnQ9OTAyNTI0MjU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyNTI0MjU2Cm9jaCA6LSkgZGEga29lbm50ZW4gc28gbWFuY2hlIExldXRlIERJTkdFIHVlYmVyIEZldWVyd2VociBzY2hyZWliZW4KLi4uLi4uLi4uLi4uLgoKZGVyIGJlc2Nod2VydCBzaWNoIGltbWVyIHdlbm4gbWFuIG1hbCBuZW4gImJpc3NjaGVuIiBpbiBzZWluIHJlcGZpbGUgc2NocmVpYnQKOi0pCgpOYWlyb2xmCgpQLlMuOiBOYWlyb2xmIHdhcnRldCBpbW1lcm5vY2ggYXVmIGVpbmUgRnVlaHJ1bmcgaW4gZGllIFdlbHQgZGVyIERlc3NvdXMgZnVlcgpGZXVlcndlaHIgdm9uIE5lc2kgPTotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCB6YXViZXJlciAqcGZmKiAoSmFzb25yaWdpZCwgIDguIEF1ZyAxOTk4LCAxMTo0MjoxOCk6CkVpbiBIb3JucGFuemVyIHRhbnp0IHdpZSBpbiBUcmFuY2UgZHVyY2ggZGllIEdlZ2VuZC4KRWluIFNhbmR0aWdlciBodWVwZnQgZ2Vpc3Rsb3MgZHVyY2ggZGllIEdlZ2VuZC4KU3VnYWFuIHNhZ3Q6IGZlaW4gd2FzIHNvIGFsbGVzIGZ1bmt0aW9uaWVydApFaW4gSG9ybnBhbnplciB0YW56dCB3aWUgaW4gVHJhbmNlIGR1cmNoIGRpZSBHZWdlbmQuCgpKYXNvbiwgZ3JpbnN0IHNpY2ggZWlucyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaW5mb3JtYXRpa2VyIC4uLiAoSmFzb25yaWdpZCwgIDguIEF1ZyAxOTk4LCAxMjowNToxNSk6CkRhIHNpZWh0IG1hbiBtYWwsIGRhc3MgZGllIFN1Y2htYXNjaGluZSBBbWF6b24uY29tIHZvbiBJbmZvcm1hdGlrZXJuCnByb2dyYW1taWVydCB3dXJkZSAuLi4gV2llc28gPwoKSG9ycm9yClZhbXBpcmVzLCBHaG9zdHMsIEVyb3RpY2EsIENsYXNzaWNzIC4uLgoKRXJvdGlrIHN0ZWh0IHVudGVyIEhvcnJvciA6KQoKSmFzb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldHRlIEJlZ3J1ZXNzdW5nIDstKSAoTm92YXN0b3JtLCAgOC4gQXVnIDE5OTgsIDEyOjI4OjI0KToKRHUgdmVybGllcnN0IGRpZSBCZXNpbm51bmcuLi4uCgpEdSB0YXVjaHN0IGluIGVpbmVuIFN0cnVkZWwgYnVudGVyIEZhcmJlbiBlaW4uCkVpbiBrbGVpbmVyIGdydWVuZXIgU3RlaW5iZWlzc2VyIGVyc2NoZWludC4KCkRlciBTdGVpbmJlaXNzZXIgc2FndDoKICAnV2lsbGtvbW1lbiBpbSBNb3JnZW5HcmF1ZW4uJwogICdEaWVzZXMgTXVkIGJlZmluZGV0IHNpY2ggaW4gTXVlbnN0ZXIgKERldXRzY2hsYW5kKScKICAnQmVpIGdyb2Vzc2VyZW4gUHJvYmxlbWVuIGthbm5zdCBEdSBEaWNoIGFuIGRlbiBNdWRnb3R0JyAnQm9pbmcgd2VuZGVuIG9kZXIKYXVjaCBlbWFpbCBhbiBkaWUnICdBZHJlc3NlICJtdWRAbWcubXVkLmRlIiBzY2hyZWliZW4uJwoKICAnV2VubiBEdSBudXIgbWFsIHJlaW5zY2hudWVmZmVsbiB3aWxsc3QsIHNvIG5lbm5lIERpY2ggImdhc3QiLicKCkRlciBTdGVpbmJlaXNzZXIgd2FybnQgRGljaDoKICAnV2VoZSwgRHUgZmFlbmdzdCBhbiwgYW5kZXJlIFNwaWVsZXIgYW56dWdyZWlmZW4uJwoKRGVyIFN0ZWluYmVpc3NlciB2ZXJzY2h3aW5kZXQgd2llZGVyLCB1bmQgRHUgd2FjaHN0IGluIGVpbmVyIGFuZGVyZW4gV2VsdCBhdWYuCgpXaWUgaGVpc3N0IER1IGRlbm4gPyBTY2hvZW4sIGRhc3MgRHUgd2llZGVyIGRhIGJpc3QsIE5vdmFzdG9ybSEKUGFzc3dvcmQ6CkR1IG5pbW1zdCBzY2hvbiBhbSBTcGllbCB0ZWlsIQpWZXJ3ZW5kZSBEZWluZSBhbHRlIHN0ZXJibGljaGUgSHVlbGxlIC4uLgpEdSBoYXN0IDIgbmV1ZSBCcmllZmUgaW0gUG9zdGFtdCBsaWVnZW4uCkR1IGphZ3N0IGVpbmVuIEtvZW5pZyBuaWNodCBtZWhyLgpEdSBqYWdzdCBlaW5lbiBad2VyZyBuaWNodCBtZWhyLgpEdSBqYWdzdCBlaW5lbiBad2VyZyBuaWNodCBtZWhyLgpFaW4gWndlcmcgamFndCBEaWNoIG5pY2h0IG1laHIuCgpOb3ZhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnVlciBzY2hva28gKFF1aWNrLCAgOC4gQXVnIDE5OTgsIDEyOjU4OjQ2KToKamV0enQgbmljaCBtZWhyIDopCgpxdWljawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzIGdpYnQncyB6dW0gV2VpaG5hY2hzdHNjaG1hdXMgPyAoSmFzb25yaWdpZCwgIDguIEF1ZyAxOTk4LCAxMzoxMDo0MSk6ClVudGVyc3VjaGUgRHJhY2hlbnNjaGlsZGtyb2V0ZSA6CgpEaWVzZSBnZXdhbHRpZ2UgRHJhY2hlbnNjaGlsZGtyb2V0ZSBpc3QgZHVyY2ggaWhyZW4gZGlja2VuIFBhbnplcgp3YWhyc2NoZWlubGljaCBrYXVtIHZlcnd1bmRiYXIuIFNpZSBzaWVodCBzZWhyIGtyYWVmdGlnIGF1cyAtIER1CnNvbGx0ZXN0IHNpZSBhbHNvIGJlc3NlciBuaWNodCBhbmdyZWlmZW4gb2RlciBhZXJnZXJuLCBpbmRlbSBEdQp6LkIuIHVlYmVyIHNpZSBydWViZXIgbGFldWZzdC4uLgpTaWUgaXN0IGFic29sdXQgZml0LiAoMTAwICkKU2llIHRyYWVndCBiZWkgc2ljaDoKRWluIE5hY2h0ZG9sY2guICg0NCkKRWluIERyYWNoZW5kb2xjaC4gKDIpCkVpbiBTYWxhdGJsYXR0IChnZXp1ZWNrdCkuCgpIbSwgbGVja2VyLCBnZXNwaWNrdGUgU2NoaWxka3JvZXRlICpncmlucyoKCkphc29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbyBzY2huZWxsPz8/IChTcmFiaSwgIDguIEF1ZyAxOTk4LCAxNzoxMzo0Nyk6CkFiZW50ZXVlciBkYXMgd2Fzc2VyZWxlbWVudGFyIGthbm4gaWNoIGphIG5pY2h0IG1hbCBhbmtyYXR6ZW4KVG9kIEVpbiBBYm9sZXRoIGhhdCBnZXJhZGUgU2hhbm5hcmEgdW1nZWJyYWNodC4KClNyYWJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpITVBGIChUaGVyaW4sICA4LiBBdWcgMTk5OCwgMTc6Mjg6NDQpOgpbTW9lcmRlcjpHZWlzdCBlaW5lciBzY2h3YXJ6ZW4gWmF1YmVyaW5dIFNhZyBkb2NoIG1hbCBlaW5lciBQYXJhY2Vsc3VzCltNb2VyZGVyOkdlaXN0IGVpbmVyIHNjaHdhcnplbiBaYXViZXJpbl0gYmVzY2hlaWQsIGhpZXIgaXN0IGVpbiBCdWchIFRoZXJpbgpbTW9lcmRlcjpHZWlzdCBlaW5lciBzY2h3YXJ6ZW4gWmF1YmVyaW5dIGhhdCBtaWNoIGJlc2llZ3QhCkplbWFuZCBiZXNjaHdvZXJ0IERlaW4gQmlsZCBoZXJhdWYuCkplbWFuZCBiZXNjaHdvZXJ0IERlaW4gQmlsZCBoZXJhdWYuCktudXJ0IHRlaWx0IERpciBtaXQ6IHdvIHdhciBkYXMgZGVubj8KSmVtYW5kIGJlc2Nod29lcnQgRGVpbiBCaWxkIGhlcmF1Zi4KSmVtYW5kIGJlc2Nod29lcnQgRGVpbiBCaWxkIGhlcmF1Zi4KSmVtYW5kIGJlc2Nod29lcnQgRGVpbiBCaWxkIGhlcmF1Zi4KCgpULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2x1ZWNrIGdlaGFidD8gKFJpbmdvciwgIDguIEF1ZyAxOTk4LCAyMjoyMjo1MSk6ClVuZ2VzY2huaXR0ZW46CgpEZWluZSBGcmV1bmRpbiBOZXNhamEgdGVpbHQgRGlyIG1pdDogKmxhY2gqIGtlaW5lIHNvcmdlIGFuYXRvbCA6KSBkZXJ6ZWl0CkRlaW5lIEZyZXVuZGluIE5lc2FqYSB0ZWlsdCBEaXIgbWl0OiBiZXN0ZWh0IGtlaW5lIGFrdXRlIG5lc2ktZ2VmYWhyIC4uLi4uLjopCkVpbiBCZWlmYWxsc3N0dXJtIGJyYW5kZXQgaW0gRGlhbW9uZHBhcmsgYXVmLiBXYXMgZGEgd29obCB3aWVkZXIgbG9zIGlzdD8KCkRhIGhhdCB3b2hsIGplbWFuZCBBbmdzdCB2b3IgZGVyIGtsZWluZW4gTmVzaSAuLi4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2x1ZWNrIGdlaGFidD8gKEFuYXRvbCwgIDguIEF1ZyAxOTk4LCAyMjoyNTowMyk6Cn4jISBybj1SaW5nb3IgcnQ9OTAyNjA3NzcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyNjA3NzcxCgpXdW5kZXJ0IERpY2ggZGFzPwoKR2VodCBzY2huZWxsIGF1ZnJhZXVtZW4sCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR2x1ZWNrIGdlaGFidD8gKFJpbmdvciwgIDguIEF1ZyAxOTk4LCAyMjoyNjo0OCk6Cn4jISBybj1BbmF0b2wgcnQ9OTAyNjA3OTAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyNjA3NzcxCkJlaSBEaXIgd3VuZGVydCBtaWNoIG5peC4gCgpBYmVyIGRhc3MgZ2xlaWNoIGVpbiBnYW56ZXMgU3RhZGlvbiB2b2xsZXIgTGV1dGUgQW5nc3Qgdm9yIE5lc2kgaGF0LCB3dW5kZXJ0Cm1pY2ggZG9jaCBlaW4ga2xlaW5lcyBiaXNzY2hlbi4gOy0pCgpSaW5nb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdsdWVjayBnZWhhYnQ/IChLZXksICA4LiBBdWcgMTk5OCwgMjM6MTQ6MzMpOgp+IyEgcm49UmluZ29yIHJ0PTkwMjYwODAwOCByZz1zY2htYXJybgp+IyEgdGlkPTkwMjYwNzc3MQpUc3RzIHNjaGVpbmJhciBrZW5uc3RlIG1laW5lIGhvbGRlIEZyYXUgbmljaHQgcmljaHRpZyAuLi4gLikKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IDooIChEYXJrd2luZywgIDkuIEF1ZyAxOTk4LCAwMDoxMToyMik6CkRlaW4gRnJldW5kIEdhbmR1ciB0ZWlsdCBEaXIgbWl0OiBobXBmIGRlciB3ZWdoaWVyIG1hY2h0IGtlaW4gc3Bhc3MgbWVociBzZWl0CkRlaW4gRnJldW5kIEdhbmR1ciB0ZWlsdCBEaXIgbWl0OiBkZXIgYXVzcnVlc3R1bmcgcHV0IG1hY2h0IDooCltUb2Q6TGFyc10gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSBHYW5kdXIgdW1nZWJyYWNodC4KW1RvZDpFaW4gV2VnaGllcl0gR290Y2hhIQpFaW4ga2FsdGVyIFNjaGF1ZXIgbGFldWZ0IERpciB1ZWJlciBkZW4gUnVlY2tlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFyZ2wuIFNjaGF1dCBtYWwgYXVmIGRpZSBVaHIuLi4uIChNb3Jnb3RoLCAgOS4gQXVnIDE5OTgsIDAyOjM0OjQ2KToKICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gU29uLCAgOS4gQXVnIDE5OTgsIDAyOjMzOjUyICg2MiBUZWlsbmVobWVyKQoKR2FzdDIuLi4uLi4uLi4uLi5zIEdhc3QxLi4uLi4uLi4uLkoucyBIeXBvYmFuay4uLi4uLi5qLnogSHVqLi4uLi4uLi4uLi4uaS56Ck5haHVqLi4uLi4uLi4uLkoucyBWZXJldGhyYWduYS4uLi5pLnMgRHJ6ZW4uLi4uLi4uLi4uLi5zIFRsYWtoLi4uLi4uLi4uLkkucwpDYWx6b25lLi4uLi4uLi4uLnMgWmlsbGVpLi4uLi4uLi4uLi5zIFNjdWxseS4uLi4uLi4uLi4ucyBQcm9sb2cuLi4uLi4uLi5pLnoKVGh1ZmlyLi4uLi4uLi4uSi56IEhpdG9taS4uLi4uLi4uLkkueiBEaXJpb24uLi4uLi4uLi4uLnMgVHJ1Zy4uLi4uLi4uLi4uLi5zClZpb2xhLi4uLi4uLi4uLi4ucyBIZWwuLi4uLi4uLi4uLi5pLnQgTGlhcmEuLi4uLi4uLi4uLi5zIE1hcnN1cGlsYW1pLi4uLkkucwpNdHYuLi4uLi4uLi4uLi4uLnMgWnVsamluLi4uLi4uLi4uLi5zIERvdHRlcmJhcnQuLi4uLi4ucyBNYW1taS4uLi4uLi4uLi4uLnMKTHVjaWZlci4uLi4uLi4uaS50IEFjZWcuLi4uLi4uLi4uLmkuUyBDYXRmb2cuLi4uLi4uLi4uLnogSHViYmEuLi4uLi4uLi4uSi56Ckpha3NjaGEuLi4uLi4uLi4uVCBQbG90aW4uLi4uLi4uLi4uLlMgTmVkcmEuLi4uLi4uLi4uLi56IFR5cmlvbi4uLi4uLi4uLi4uUwpUcmF1bWEuLi4uLi4uLi5pLlMgQ2VsZXN0ZS4uLi4uLi4uSS5TIFR5cmFubi4uLi4uLi4uLkkueiBNaW5vdGF1ci4uLi4uLi5qLnoKQ2FyYW1vbi4uLi4uLi4uSS56IEdhYmlsb24uLi4uLi4uLi4uUyBIeXBvLi4uLi4uLi4uLi4uLlMgRmFzdC4uLi4uLi4uLi4uSi56ClphaXZhbi4uLi4uLi4uLi4ueiBaYWNhdHQuLi4uLi4uLi5pLnogVGFuaXMuLi4uLi4uLi4uLi5TIFRhZ28uLi4uLi4uLi4uLkkuUwpQaHlnb3MuLi4uLi4uLi5KLlMgVGFyaW5hLi4uLi4uLi4uLi5TIERhcmt3aW5nLi4uLi4uLi4uUyBSYXNjYWwuLi4uLi4uLi4uLlMKR2VvcmRpLi4uLi4uLi4uLi5TIExpZ2h0bmluZy4uLi4uLi4ueiBFbGVuZGlsLi4uLi4uLi4uLlMgTGlsbGVicm9yLi4uLi4uLi5TCktudXJ0Li4uLi4uLi4uLi4uUyBMaWxpcHV0Li4uLi4uLi4uLlMgVGh1Zmhpci4uLi4uLi4uSi5TIEJpcmR5Li4uLi4uLi4uLi4uUwpDYWtleS4uLi4uLi4uLi5pLlMgUmluZ29yLi4uLi4uLi4uSS5TIFN0aW5nLi4uLi4uLi4uLi4uUyBTaGFuZy4uLi4uLi4uLi4uLm0KU3dpZnQuLi4uLi4uLi4uLi5NIE1vcmdvdGguLi4uLi4uLi4uUgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFyZ2wuIFNjaGF1dCBtYWwgYXVmIGRpZSBVaHIuLi4uIChUcnVnLCAgOS4gQXVnIDE5OTgsIDAyOjM1OjI5KToKfiMhIHJuPU1vcmdvdGggcnQ9OTAyNjIyODg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyNjIyODg2CnVuZD8gZXMgaXN0IFNhbXN0YWcgbmFjaHQgOi0pCgpUcnVnIChlaW56ZWlsZXJuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXJnbC4gU2NoYXV0IG1hbCBhdWYgZGllIFVoci4uLi4gKE5haXJvbGYsICA5LiBBdWcgMTk5OCwgMTE6NDY6NDgpOgp+IyEgcm49VHJ1ZyBydD05MDI2MjI5Mjkgcmc9c2NobWFycm4KfiMhIHRpZD05MDI2MjI4ODYKa2FubiBpY2ggYXVjaCA6LSkKPiBbU2VoZXI6R2FuZG9dIG1taCAuLiBtYWNodCBqZXR6dCBtb3Jnb3RoIGplZGVuIHRhZyBlaW4gJ2t3ZXInPXBvc3RpbmcgaW4gZGllCltTZWhlcjpHYW5kb10gemVpdHVuZyA/IC0+IHNlaHIgc2VociB1bm5vZXRpZwoKPiBbU2VoZXI6U2Nob2tvXSBKZXBwIDspCmt3ZXIKICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gU29uLCAgOS4gQXVnIDE5OTgsIDExOjQ2OjIwICgzMSBUZWlsbmVobWVyKQoKQXJpbW9uLi4uLi4uLi4uLi5zIEdhc3QyLi4uLi4uLi4uLmkucyBHYXN0My4uLi4uLi4uLi4uLnMgR2FzdDEuLi4uLi4uLi4uSi5zCkh1ai4uLi4uLi4uLi4uLmkueiBOYWh1ai4uLi4uLi4uLi5KLnMgRWljaHNwaWVsLi4uLi4uSS5zIFRsYWtoLi4uLi4uLi4uLmkucwpQcm9sb2cuLi4uLi4uLi5pLnogVGh1ZmlyLi4uLi4uLi4uSi56IFNtdXQuLi4uLi4uLi4uLi4ueiBIZWwuLi4uLi4uLi4uLi5pLnQKTGVpYm5pei4uLi4uLi4uLi5zIEFjZWcuLi4uLi4uLi4uLmkuUyBIdWJiYS4uLi4uLi4uLi5KLnogTmVkcmEuLi4uLi4uLi4uLi56Ckh5cG8uLi4uLi4uLi4uLkouUyBGYXN0Li4uLi4uLi4uLi5JLnogTWF0aXNzZW4uLi4uLi4uLi56IFBoeWdvcy4uLi4uLi4uLkouUwpUYXJpbmEuLi4uLi4uLi4uLlMgTmFpcm9sZi4uLi4uLi4uLi5TIFRodWZoaXIuLi4uLi4uLkouUyBTY2hva28uLi4uLi4uLi4uLlMKU2tpcHBlci4uLi4uLi4uaS5TICpTaGFyaWEuLi4uLi4uLi4uUyBTdGluZy4uLi4uLi4uLi4uLlMgR2FuZG8uLi4uLi4uLi4uLi5NCkZhZ2d1Li4uLi4uLi4uLi4uTSBTd2lmdC4uLi4uLi4uLi4uLk0gUGFkcmVpYy4uLi4uLi4uLi5SCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVEhFUklOIElTVCBFSU4gQkxVRU1DSEVOUEZMVUVDS0VSISEhIChTdGluZywgIDkuIEF1ZyAxOTk4LCAxOTowMDozNCk6CkRlaW4gRnJldW5kIFRoZXJpbiB0ZWlsdCBEaXIgbWl0OiBWZXJnbGljaGVuIG1pdCBEZWluZW4gTWl0c3BpZWxlcm4ga2VubnN0IER1CkRpY2ggaW0gTW9yZ2VuR3JhdWVuIHVuaGVpbWxpY2ggZ3V0IGF1cy4KCkljaCB3dXNzdGUgZXMgaW1tZXI6IFRoZXJpbiBpc3QgZWluIFdhc2NobGFwcGVuLCBkZXIgbmljaHRtYWwgbWVociBuZSBLcm9ldGUKYXVmIGRlciBIRSBraWxsZW4ga2Fubiwgd2VpbCBlciBkYW5uIHZpZWxsZWljaHQgZWluIEJsdWVtY2hlbiB6ZXJzdG9lcmVuCnd1ZXJkZSEhISEKCgpTdGluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRIRVJJTiBJU1QgRUlOIEJMVUVNQ0hFTlBGTFVFQ0tFUiEhISAoVGhlcmluLCAgOS4gQXVnIDE5OTgsIDE5OjAxOjIwKToKfiMhIHJuPVN0aW5nIHJ0PTkwMjY4MjAzNCByZz1zY2htYXJybgp+IyEgdGlkPTkwMjY4MjAzNApQRVRaRSEKClRoZXJpbiwga2VubnQgc2ljaCBpbSBNb3JnZW5ncmF1ZW4gdWViZXJoYXVwdCBuaWNodCBhdXMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVEhFUklOIElTVCBFSU4gQkxVRU1DSEVOUEZMVUVDS0VSISEhIChTdGluZywgIDkuIEF1ZyAxOTk4LCAxOTowMTo1MCk6Cn4jISBybj1UaGVyaW4gcnQ9OTAyNjgyMDgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyNjgyMDM0CldhcnVtIGRhbm4gZGFzIFdvcnQgIlBFVFpFIiA/PwpMVUVHTkVSISEhCgpTdGluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVEhFUklOIElTVCBFSU4gQkxVRU1DSEVOUEZMVUVDS0VSISEhIChUaGVyaW4sICA5LiBBdWcgMTk5OCwgMTk6MDI6NTApOgp+IyEgcm49U3RpbmcgcnQ9OTAyNjgyMTEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyNjgyMDM0CkljaCBiaW4gZWluIGdhbnogZ3Jvc3NlciBtZXR6bGVyLCBqYXdvbGwuLi4uCkhpbGZzdCBEdSBtaXIsIGVpbmVuIFNjaG1ldHRlcmxpbmcgYXVmIFNjaHdlbGxlIHp1IHN0ZWxsZW4/ClQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUSEVSSU4gSVNUIEVJTiBCTFVFTUNIRU5QRkxVRUNLRVIhISEgKEFzbW9kaXMsICA5LiBBdWcgMTk5OCwgMTk6MDI6NTgpOgp+IyEgcm49U3RpbmcgcnQ9OTAyNjgyMTEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyNjgyMDM0CnRyYWd0IGRhcyBkb2NoIGluIGRlciBBcmVuYSBhdXMsIG1pdCBCbHVlbWNoZW4gYWxzIFdhZmZlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVEhFUklOIElTVCBFSU4gQkxVRU1DSEVOUEZMVUVDS0VSISEhIChTdGluZywgIDkuIEF1ZyAxOTk4LCAxOTowMzo0Myk6Cn4jISBybj1UaGVyaW4gcnQ9OTAyNjgyMTcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyNjgyMDM0CktsYXIsIHdlbm4gZHUgbWlyIGRhZnVlciBkZW4gU2NobWV0dGVybGluZ3NGQUVOR0VSIGF1ZiBTY2h3ZWxsZSBzdGVsbHN0ID8gOikpCgpTdGluZyoqCmFlaCwgYmxvZWRlciBFZGl0b3IgOikpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaCBzbyBnZWh0IGRhcy4gKE1pbmRibGFkZSwgIDkuIEF1ZyAxOTk4LCAyMjowMTo1OSk6ClhhbmQgc2NobmlwcHQgbWl0IGRlbiBGaW5nZXJuLgpFaW5lIFN0aW1tZSBzYWd0OiBSRVNFVApTdGluZyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChMZXYsICA5LiBBdWcgMTk5OCwgMjM6NDY6MzEpOgoKW01vZXJkZXI6R2Vpc3QgZWluZXMgT3JrcHJpZXN0ZXJzXSBUeXJhbm4gaGF0IG1pY2ggYmV6d3VuZ2VuLiA8MjM6NDU6Mjk+CltUb2Q6TGFyc10gRWluIFN0YWR0b3JrIGhhdCBnZXJhZGUgVHlyYW5uIHVtZ2VicmFjaHQuIDwyMzo0NTozNT4KW0JlaWxlaWQ6VGFuaXNdIHNvdmllbCB6dW0gaGVpbGlnZW4gaGFtbWVyCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvd2FzOikgKFdvb2R5LCAxMC4gQXVnIDE5OTgsIDAyOjExOjAxKToKUm9iaW4gc2FndDogTmVobWVuIGlzdCBzZWxpZ2VyIGRlbm4gR2ViZW4uCkxpYXJhIHJ1ZnQ6IEZpbmdlciB3ZWchCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPcmtzLi4uIChEYXJrd2luZywgMTAuIEF1ZyAxOTk4LCAxNjoyNTo0Myk6CkR1IGJlZmluZGVzdCBEaWNoIGF1ZiBkZXIgT3JrYWxsZWUuIEFtIFN0cmFzc2VucmFuZCBzdGVoZW4gd3VuZGVydm9sbGUgUGFwcGVsbgp1bmQgS2FzdGFuaWVuYmFldW1lLiBEYXMgSGF1cyBpbSBPc3RlbiBzaWVodCBlaW5sYWRlbmQgYXVzLiBEaWUgU3RyYXNzZQpvZWZmbmV0IHNpY2ggbmFjaCBOb3JkZW4gaGluIHVuZCBmdWVocnQgYXVmIGRlbiBNYXJrdHBsYXR6LgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiB1bmQgbm9yZGVuLgpFaW4gT3JrIGtvbW10IGFuLgpFaW4gT3JrIGtvbW10IGFuLgpFaW4gT3JrIGtvbW10IGFuLgpFaW4gT3JrIGtvbW10IGFuLgoKWzEwIHNlayBzcGFldGVyIF0KRWluIE9yayBnZWh0IG5hY2ggU3VlZGVuLgpFaW4gT3JrIGdlaHQgbmFjaCBTdWVkZW4uCkVpbiBPcmsgZ2VodCBuYWNoIFN1ZWRlbi4KRWluIE9yayBnZWh0IG5hY2ggU3VlZGVuLgoKYWxzIG9iIGRpZSBhbGxlaW5lIG5pY2h0IHN0YXJrIGdlbnVnIHdhZXJlbmIuLi4gYWJlciBnbGVpY2ggaW0gVmllcmVycGFjayA/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT3Jrcy4uLiAoTW9yZ290aCwgMTAuIEF1ZyAxOTk4LCAxNjoyODowMSk6Cn4jISBybj1EYXJrd2luZyBydD05MDI3NTkxNDMgcmc9c2NobWFycm4KfiMhIHRpZD05MDI3NTkxNDMKVGphLCBkaWUgR2lsZGVuYWJ3ZXJ0dW5nIGhhYmVuIGhhbHQgYXVjaCBtZWluZSBPcmtzIGV0d2FzIGdlc2Nod2FlY2h0LiA7LSkKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh5ZHJhIG1hbCB0b3RnZWlkbGV0IDspIChOZWIsIDEwLiBBdWcgMTk5OCwgMjA6NDM6MzgpOgpHcmFkZSBiZWkgZGVyIEh5ZHJhIChhbGxlcyBsaXZlIHVuZCB1bmdlc2Nobml0dGVuKToKCkRhcyBpc3QgZGVyIEhBTU1FUiEKRHUgdHJpZmZzdCBkaWUgSHlkcmEgaGFydC4KRHUga3JhdHp0IGRpZSBIeWRyYS4KRHUgdmVyZmVobHN0IGRpZSBIeWRyYS4KRHUgdmVyZmVobHN0IGRpZSBIeWRyYQpEdSB2ZXJmZWhsc3QgZGllIEh5ZHJhLgpEYXMgaXN0IGRlciBIQU1NRVIhCkR1IHZlcmZlaGxzdCBkaWUgSHlkcmEuCkR1IHZlcmZlaGxzdCBkaWUgSHlkcmEuCkR1IHRyaWZmc3QgZGllIEh5ZHJhIHNlaHIgaGFydC4KRHUgdmVyZmVobHN0IGRpZSBIeWRyYS4KRHUgdHJpZmZzdCBkaWUgSHlkcmEgc2VociBoYXJ0LgpEdSBrcmF0enQgZGllIEh5ZHJhLgpEdSBrcmF0enQgZGllIEh5ZHJhLgpEYXMgaXN0IGRlciBIQU1NRVIhCkR1IHRyaWZmc3QgZGllIEh5ZHJhIGhhcnQuCkR1IHZlcmZlaGxzdCBkaWUgSHlkcmEuCkR1IHZlcmZlaGxzdCBkaWUgSHlkcmEKCi4uLgoKRHUgdHJpZmZzdCBkaWUgSHlkcmEgc2VociBoYXJ0LgpEdSBzY2hsYWVnc3QgZGllIEh5ZHJhIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCkF1cyBkZW0gTGVpY2huYW0gZXJzY2hlaW50IGRpZSBMaWNodGdlc3RhbHQgUHVtYXMgdW5kIHVlYmVycmVpY2h0IERpcgpsYWVjaGVsbmQgZWluZSBSdWVzdHVuZyBhdXMgZnVua2VsbmRlbiBKdXdlbGVuLiBNaXQgZGVtIG5hZWNoc3RlbgpBdWdlbnp3aW5rZXJuIGlzdCBzaWUgdmVyc2Nod3VuZGVuLgpEdSBiaXN0IG51biBmdWVyIHNlY2hzIFdvY2hlbiBkZXIgVHJhZWdlciBkZXIgUnVlc3R1bmcgZWluZXMgSHlkcmF0b2V0ZXJzCnVuZCBuaWVtYW5kIGF1ZiBkZXIgV2VsdCBrYW5uIERpciBkaWVzZW4gU3RhdHVzIHN0cmVpdGlnIG1hY2hlbiwgZGVubiBkaWVzZQpSdWVzdHVuZyBoYXN0IG51ciBEdSBEaXIgdmVyZGllbnQKClRzcywga2FubiBpY2ggZGFzIGpldHp0IGJpdHRlIGltbWVyIHNvIGhhYmVuID8gT2RlciByZXNpZ25pZXJ0IGRpZSBUYW50ZSBldHdhLAp3ZW5uIGljaCBrb21tZSA/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWxsIGRlciBtaWNoIGFic2NobGVwcGVuPz8gKEFsaW5lLCAxMC4gQXVnIDE5OTgsIDIwOjQ3OjAwKToKCmViZW4gaW4gZGVyIEtuZWlwZSB2b24gTmVzcXVpY2s6Cgo8SGljaz4hIE9oLCBUc2NodWxkaWd1bmcuCkR1IGJpc3QgbmFoZXp1IG51ZWNodGVybi4KPiBEZXIgR2FyZGlzdCBzYWd0OiBOYWNoIGRlbSBEaWVuc3QgZ2VoZSBpY2ggZWluZW4gVHJpbmtlbi4gS29tbWVuIFNpZSBtaXQ/CgpCbG9lZGUgQW5tYWNoZSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGlwcGUuLi4uIChUcnVnLCAxMC4gQXVnIDE5OTgsIDIxOjM3OjUyKToKCkhpcHBlIGtvbW10IGFuLgpIaXBwZSBpc3N0IFNwYWdoZXR0aSBjYXJib25hcmEuCkhpcHBlIHRyaW5rdCBub2NoIGVpbiBNYWx6Ymllci4KSGlwcGUgc2FndCA6ICdXbyBpc3QgZGFzIE1hbHpiaWVyID8nCkR1IHNhZ3N0OiB2aWVsbGVpY2h0IGRlcG9uaWVyc3QgZHUgaWhuIGJlaW0gc2FuZHRpZ2VyPwo+IER1IHRyaXR0c3QgSGlwcGUuCj4gSGlwcGUgdmVya2xhZ3QgRGljaCB3ZWdlbiBpbnZpdGF0aW8gYWQgb2ZmZXJlbmR1bS4KTXR2IHNhZ3Q6IG9kZXIgaWNoIGtpbGwgaWhuCkhpcHBlIGdlaHQgbmFjaCBOb3Jkd2VzdGVuLgpNdHYgc2FndDogb2RlciBlciBnZWh0CkR1IHNjaG11bnplbHN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV0dGVzIHNldG1taW46IChMZXYsIDEwLiBBdWcgMTk5OCwgMjE6NTg6MDgpOgoKRGVyIFNhbmR0aWdlciBiZWdydWVzc3QgQXJ1dGhhIG1pdDogSWNoIHNvbGwgRGlyIHZvbiBKYXNvbnJpZ2lkIGF1c3JpY2h0ZW46CkhhbGxvIExpZWJsaW5nc2FiZW50ZXVyZXIgOikgU2VpIGZyb2gsIGRhc3MgRHUgZWluZXIgYmlzdCwgRHUgd2lyc3Qgc28KemllbWxpY2ggYWxzIGVpbnppZ2VyIG5pY2h0IGFiZ2V3ZXJ0ZXQgKmdyaW5zKgpBcnV0aGEgdGF1Y2h0IGVyZnJldXQgYXVmLgoKKmdyaW5zKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBuZXR0ZXMgc2V0bW1pbjogKEdlbSwgMTAuIEF1ZyAxOTk4LCAyMjowMDoxNSk6Cn4jISBybj1MZXYgcnQ9OTAyNzc5MDg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyNzc5MDg4CgogRWluemlnZSBHaWxkZT8gRGllIEthdHplbmtyaWVnZXIgd2VyZGVuIGF1Y2ggbmljaHQgYWJnZXdlcnRldCEKCkdlbSwgaW1tZXIgYXVmIGRlciBTdWNoZSBuYWNoIHNjaG9lZWVlbmVuIEVkZWxzdGVpbmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGEgZnJldWVuIHNpY2ggYWJlciB2aWVsZSAoTXR2LCAxMC4gQXVnIDE5OTgsIDIyOjIxOjUxKToKVHJ1ZyBzYWd0OiBhYmVyIGljaCB3ZXJkZSBub2NoIGVpbmUgemVpdGxhbmcgYmxlaWJlbgpFaW4gQmVpZmFsbHNzdHVybSBicmFuZGV0IGltIERpYW1vbmRwYXJrIGF1Zi4gV2FzIGRhIHdvaGwgd2llZGVyIGxvcyBpc3Q/CgoKSHVjaCBkYSBmcmV1ZW4gc2ljaCBhYmVyIHZpZWxlLCBkYXNzIHNpZSBibGVpYnQgKHVuZ2VzY2huaXR0ZW4pCgpNVFYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1ldHplbG4gKEdhbmRvLCAxMS4gQXVnIDE5OTgsIDAwOjI4OjQwKToKZmluZ2VyIHh4eApQYXNzaXYgc2VpdDogMDY6NTI6MTcKLiAiIgp6LlouIGFid2VzZW5kLCBHcnVuZCAgOiBhbGxlcyBzY3JvbGx0Ci4gIiIKd2FobnNpbm4sIHdpZSBkYXMgam9mZW4gcnVtc2Nyb2xsdCA7KSkKR2FuZG8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnByYWt0aXppZXJ0ZXMgInN1cnZpdmFsIG9mIHRoZSBmaXR0ZXN0IiA6KSAoQW5hdG9sLCAxMS4gQXVnIDE5OTgsIDAwOjM3OjExKToKW1RvZDpMYXJzXSBQYWRyZWljIGhhdCBnZXJhZGUgUGF0cnluIGVudHNvcmd0CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gYmVsZWlkaWd0IG1hbiBCZWVsemVidWJlbiEgO28pIChUdW5peGd1dCwgMTEuIEF1ZyAxOTk4LCAxNTo0MDoxMSk6ClVuZ2VzY2huaXR0ZW46CkR1IHRlaWxzdCBCZWVsemVidWIgbWl0OiBIYWInIERpY2ggdWViYWhvbHQhIDpvKSkpCkJlZWx6ZWJ1YiB0ZWlsdCBEaXIgbWl0OiBncmF0cyA6KQpCZWVsemVidWIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXQgZGVubiBudW4gPz8/IERlciBpc3QgZG9jaCBzY2hvbiB0b3QgISEhIChTcmFiaSwgMTEuIEF1ZyAxOTk4LCAyMDo0NjozNyk6CkRlciBFaXNkYWVtb24gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KQ2FybG9zIHp1ZWNrdCBlaW4gRmV1ZXJzY2h3ZXJ0LgpDYXJsb3Mgc3RlY2t0IGVpbiBGZXVlcnNjaHdlcnQgenVydWVjay4KQ2FybG9zIHp1ZWNrdCBlaW4gRmV1ZXJzY2h3ZXJ0LgpDYXJsb3Mgc3RlY2t0IGVpbiBGZXVlcnNjaHdlcnQgenVydWVjay4KQ2FybG9zIHp1ZWNrdCBlaW4gRmV1ZXJzY2h3ZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBuZXR0ZXMgc2V0bW1pbjogKFBhcmFjZWxzdXMsIDExLiBBdWcgMTk5OCwgMjE6MTI6NDkpOgp+IyEgcm49R2VtIHJ0PTkwMjc3OTIxNSByZz1zY2htYXJybgp+IyEgdGlkPTkwMjc3OTA4OApGYWxzY2gsIER1IGhhc3QgZXMgbnVyIG5pY2h0IGdlbWVya3QuIE5hamEsIGRhIHBhc3N0IGRpZSBSdWJyaWsgamEgOykKClBhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSnVuZ21hZ2dpZXMgOikgKEFsaW5lLCAxMi4gQXVnIDE5OTgsIDE1OjI3OjU4KToKCltTZWhlcjpTY2hva29dIEh1aHUgVGFudGUgOykgPDE0OjQ1OjA2PgpbU2VoZXI6Tm9ubmVdIG1hY2h0IGtlaW5lciBkaWUgdGFudGU/IGVzIGxhZ3QgZ2FybmljaHQgOikgPDE1OjA1OjQxPgpbU2VoZXI6VHVOaXhHdXRdIE1hY2ggRHUgc2llLi4uIDwxNTowNTo1Nj4KW1NlaGVyOkZyYW56XSBpY2ggd3VlcmRlIGVzIGdlcm5lIG1hY2hlbiBoYWJlIHNpZSBub2NoIG5pZSBnZWtpbGx0Li4uCltTZWhlcjpGcmFuel0gPDE1OjA2OjA0PgpbU2VoZXI6VHVOaXhHdXRdIE1hY2ggZG9jaCwgZXMgd2lsbCBkb2NoIG9mZmVuc2ljaHRsaWNoIGtlaW5hLCB3ZXIgc29sbHRlIERpcgpbU2VoZXI6VHVOaXhHdXRdIERBTk4gd2FzIHZvcmhhbHRlbi4uLiA8MTU6MDY6NTA+CltTZWhlcjpGcmFuel0gb2sgYWJzdGltbXVuZy4gd2VyIGhhdCB3YXMgZGFnZWdlbiB3ZW5uIGljaCBoeWRyYSBraWxsZSA/CltTZWhlcjpGcmFuel0gPDE1OjA3OjA0PgpbU2VoZXI6UmluZ29yXSBoYXUgcmVpbiwgTGFycyBoYXQgbmljaHQgZXdpZyBaZWl0IDwxNTowODo0MT4KW1NlaGVyOlR1Tml4R3V0XSBMYW5nZSBpcyBkaWUgZWggbmV0IG1laHIgaW0gdGFsLi4uIDwxNTowOTowNj4KW1NlaGVyOkZyYW56XSB3aWUgbGFuZ2Ugd2lyZCBzaWUgbm9jaCBoaWVyIHNlaW4gPyBzbyBjYS4uLiA8MTU6MTA6NTY+CltTZWhlcjpSaW5nb3JdIHdlbm4gZHUgbm9jaCBsYW5nZSBxdWF0c2NodCwgZ2FyIG5pY2h0IG1laHIgOy0pIDwxNToxMTowNj4KW1NlaGVyOlJpbmdvcl0gc2llIGlzdCBzY2hvbiAyNiBNaW4gZGEgPDE1OjExOjE4PgpbU2VoZXI6V29vZHldIGVyIGJyYXVjaHQgZWggbnVyIGVpbiBjb21tYW5kIGVpbnRpcHBlbiA7KSA8MTU6MTE6Mjg+CltTZWhlcjpNdWR0aWdlcl0gZGFzIHdhZXJlIGphIG5pY2ggaW0gc2lubmUgZGVzIGVyZmluZGVycywgb2RlciBXb29keT8KW1NlaGVyOk11ZHRpZ2VyXSA8MTU6MTE6NTI+CltTZWhlcjpGcmFuel0gZXMgZ2lidCBhdWNoIG1zY2hhdSBhdXMgLi4gPDE1OjEyOjAyPgpbU2VoZXI6V29vZHldIGFiZXIgZWZmZWt0aXYgOykgPDE1OjEyOjA2PgpbU2VoZXI6Tm9ubmVdIGFuZGVycyBzY2hhZmZ0IGVyIHNpZSBhYmVyIG5pY2h0IG1laHIgPDE1OjEyOjEwPgpbU2VoZXI6RnJhbnpdIGFiZXIgbmljaHQgc3Bhbm5lbmQgPDE1OjEyOjE0PgpbU2VoZXI6VHVOaXhHdXRdIFdlbm4gZXIgc2ljaCAnbmUgV0lSS0xJQ0ggZ3V0ZSBBdXNydWVzdHVuZyBjbG9udC4uLgpbU2VoZXI6VHVOaXhHdXRdIDwxNToxMjozMD4KW1NlaGVyOldvb2R5XSBtc2NoYXUgYXVzPyB1bmQgZGllIGF1c3J1ZXN0dW5nPyBzdGF0cyBldGMuPyA6KSA8MTU6MTI6Mzg+CltTZWhlcjpGcmFuel0gYXVjaCBuaWNodCBzcGFubmVuZCA8MTU6MTI6NDQ+CltTZWhlcjpOb25uZV0gdW5kIGtsZXJpa2VyIHdpcmQuLi4uIDwxNToxMjo1Nj4KW1NlaGVyOk1vcmdvdGhdIFMgJG0gUF9IUCAyMDAsRl9RVUVSWV9NRVRIT0QgOy0pKSkgPDE1OjEyOjU2PgpbU2VoZXI6VHVOaXhHdXQgZ3JpbnN0Li4uIDwxNToxMzoxOD5dCltTZWhlcjpGcmFuel0gb2sgb2sgaWNoIGdlYnMgenUgaWNoIGhhYmUga2VpbmUgYWhudW5nIHZvbSBtdWQuIHd1ZXJkZSBtaXIgd2VyCltTZWhlcjpGcmFuel0gZXJrbGFlcmVuIHdhcyBkYXMgRl9RVUVSWV9NRVRIT0QgYXVmIHNpY2ggaGF0IGJpdHRlID8gPDE1OjE0OjQzPgpbU2VoZXI6VHVOaXhHdXRdIEljaCB3dWVuc2NodGUsIGljaCBrb2VubnRlIEZyYW56IGpldHp0IHNub29wZW4hIDtvKQpbU2VoZXI6VHVOaXhHdXRdIDwxNToxNDo1Mz4KW1NlaGVyOk5vbm5lXSBkdSBiaXN0IGRvY2ggbWFnaWVyPyE/IT8gPDE1OjE0OjU5PgpbU2VoZXI6TW9yZ290aF0gLT4gTFBDIDwxNToxNDo1OT4KCltTZWhlcjpUdU5peEd1dF0gc2FndCBkb2NoIGRlciBOYW1lIHNjaG9uISA8MTU6MTU6MDc+CltTZWhlcjpUaWxseV0gZnJhZyBkZWluZW4gZGFkZHkgOykgPDE1OjE1OjEzPgpbU2VoZXI6RnJhbnpdIGFlbSB3aWVzbyBkYXMgdHVuaXhndXQgPyA8MTU6MTU6MTU+CltTZWhlcjpOb25uZV0gTSogc25vb3AgaWhuIHVuZCBzZXR6dCBkYXMgbG9nIGluIGRpZSB6ZWl0dW5nISA8MTU6MTU6MjE+CltTZWhlcjpUdU5peEd1dF0gQWJmcmFnZS1NZXRob2RlIGRlciBwcm9wLCBnaWJ0IGhhbHQga29udGFudCAyMDBMUCA8MTU6MTU6MjM+CltTZWhlcjpUdU5peEd1dF0gSWNoIGthbm4gbmV0IFNPIGJlaW0gS2Ftb3BmIHp1Z3VnZ2UsIGZsaXR6ZSBqYSBnbGVpY2gsCltTZWhlcjpUdU5peEd1dF0gZnJhbnouLi4gPDE1OjE1OjUxPgpbU2VoZXI6RnJhbnpdIGR1IGdsYXVic3QgZWNodCwgZGFzIGljaCBqZXR6dCB6dXIgaHlkcmEgcmVubmUgPyA8MTU6MTY6MjM+CltTZWhlcjpUdU5peEd1dF0gV2llc28gbmV0PyA8MTU6MTY6Mzc+CltTZWhlcjpXb29keV0gYWxzbyBkYXMgdmVyc3RhZW5kbmlzIHZvbiAvc3RkL3RoaW5nL3Byb3BlcnRpZXMgcmVpY2h0IGRhenUKW1NlaGVyOldvb2R5XSB2b2xsa29tbWVuIGF1cywgaXMgbmljaHQgc28gbGFuZywgZGFzIGZpbGUgOykgPDE1OjE2OjU5PgpbU2VoZXI6RnJhbnpdIHdlaWwgbWFnaWVyIGRhcyB0ZWlsIG5pY2h0IHJlZ3VsYWVyIGtpbGxlbiBrb2VubmVuIDwxNToxNzowNT4KPiBWYWxhIE1vcmdvdGggcnVmdDogamFqYWphLCBpaHIgbWljaCBhdWNoLi4uLgpbU2VoZXI6VHVOaXhHdXRdIE9IIQpbU2VoZXI6VHVOaXhHdXRdIEF1Y2ggbmV0IG1pdCBtc2NoYXUgYXVzPwoKW1NlaGVyOlNjaG9rb10gQWxzbyBTaWx2YW5hIGhhdCBkaWUgSHlkcmEgc2Nob25tYWwgZ2VraWxsdCA7KQpbU2VoZXI6U2Nob2tvXSBEYSB3YXIgaWNoIHNvZ2FyIGRhYmVpIDspCltTZWhlcjpGcmFuel0gZGFzIHdlaXNzIGljaCBuaWNodCBvYiBkYXMgZ2VodCBtaXQgbXNjaGF1IGF1cwpbU2VoZXI6V29vZHldIGx2IGh5ZHJhIFtkaWVdID8KW1NlaGVyOlR1Tml4R3V0IGZhZW5kZSBkYXMgZG9vZi4uLl0KCi4uLgpbVG9kOkxhcnNdIEVpbmUgSHlkcmEgaGF0IGdlcmFkZSBGcmFueiB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgSHlkcmFdIGhzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcwpbQmVpbGVpZDpCbHVlbWVsXSBIbQpbQmVpbGVpZDpUdU5peEd1dCBsYWNodC4uLl0KW0JlaWxlaWQ6Tm9ubmUgbGFjaHRdCm1tW1NlaGVyOkJpZ3JhdCBncmluc3QuXQogW0JlaWxlaWQ6U2Nob2tvIGxhY2h0Ll0KW0JlaWxlaWQ6VGlsbHldICp3YWVseioKW0JlaWxlaWQ6V29vZHldIEdyYWQgbm9jaCBpbiBkZXIgWmVpdC4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIC4uLiBhZWhoIG5lIGRpZXNtYWwgYW5kZXJzcnVtIDspIChTY2hva28sIDEyLiBBdWcgMTk5OCwgMTk6Mjc6NDQpOgoKW1RvZDpMYXJzXSBFaW4gR29ibGlucHJpZXN0ZXIgaGF0IGdlcmFkZSBLYXR6ZW50YW50ZSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBHb2JsaW5wcmllc3Rlcl0gVW5kIHdpZWRlciBlaW4gT3BmZXIgZnVlciBkZW4gZ3Jvc3NlbiBOZW1lc2lzLgpbQWxsZ2VtZWluOkdvbGFzXSBjaWFvCltBbGxnZW1laW46RnJlc2VuaXVzXSBrYW5uIGplbWFuZCBrYXR6ZW50YW50ZSBoZWxmZW4/IFNpZSBpc3QgYmVpIGRlbiBHb2JsaW5zCltBbGxnZW1laW46RnJlc2VuaXVzXSBhbSBhbHRhciBnZWJ1bmRlbiB1bmQgd2lyZCB3b2hsIGdsZWljaHQgZ2VraWxsdCEKW0JlaWxlaWQ6QmlncmF0XSBiZWlsZWlkCgpOYWphIG9mZmVuc2ljaHRsaWNoIGhhdHRlciBlciByZWNodCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNb3Jnb3RoLCAxMy4gQXVnIDE5OTgsIDAwOjEyOjE5KToKW1NlaGVyOlNoYW5uYXJhXSBIbSwgc2VpdCB3YW5uIGxhZXVmdCBlaW4gQ291Z2FyIGJlaW0gRnVzcyBkZXMgVGFsa2Vzc2VscyBiZWkKW1NlaGVyOlNoYW5uYXJhXSBkZXIgRHJha29uaWVycHlyYW1pZGUgaGVydW0/IGJpbiBpY2ggaW4gcGFyYSBnZWxhbmRldD8KW1NlaGVyOlNoYW5uYXJhXSA8MDA6MDg6MTQ+CltTZWhlcjpTY2hva29dIGphIDwwMDowODoyNj4KW1NlaGVyOk1vcmdvdGhdIG5lZSwgQkVJIHBhcmEqIDwwMDowODoyNj4KW1NlaGVyOlNoYW5uYXJhXSBBaGEuLi4gZGFubiB3ZXJkIGljaCBtYWwgenVydWVja2xhdHNjaGVuLiB2ZXJkYW1tdGVzCltTZWhlcjpTaGFubmFyYV0gc2Nod2FyemVzIHBvcnRhbCA8MDA6MDg6NDg+CltTZWhlcjpTY2hva29dIGRhcyBhdWNoIDwwMDowODo1ND4KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgU2hhbm5hcmEKW1RvZDpMYXJzXSB1bWdlYnJhY2h0LiA8MDA6MTE6Mjk+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXMgc29sbCBkYXMgd2VyZGVuPyAoVGFyaW5hLCAxMy4gQXVnIDE5OTgsIDAxOjE1OjUwKToKRHUgcmFtbXN0IGRlbSBodWVwZmVuZGVuIEtudXRzY2hmaXNjaCBkYXMgS25pZSBpbiBkZW4gS29lcnBlci4KRGVyIEtudXRzY2hmaXNjaCB3aXJkIHJvdCB1bmQgd2VkZWx0IG1pdCBkZW0gU2Nod2Fuei4KClNvbGwgZGFzIGVpbiBlaW5kZXV0aWdlcyBBbmdlYm90IHNlaW4gb2RlciBudXIgZWluZSBhbmdlbWVzc2VuZSBSZWFrdGlvbgphdWYgbWVpbmVuIEtuaWVzdG9zcz8KClRhcmluYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5nZXNjaG5pdHRlbi4uLiAoQW5hdG9sLCAxMy4gQXVnIDE5OTgsIDAyOjE1OjQwKToKTGlhcmEga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEdSBiaXN0IGpldHp0IHZvZWxsaWcgZW50c3Bhbm50LgoKQXJnaCEKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdhcyBzb2xsIGRhcyB3ZXJkZW4/IChCb2luZywgMTMuIEF1ZyAxOTk4LCAxMjowNzoyNCk6Cn4jISBybj1UYXJpbmEgcnQ9OTAyOTYzNzUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyOTYzNzUwCkphamEgLi4uIGljaCB3ZWlzcyEgKmFyZ2wqIDopIEVpZ2VudGxpY2ggc29sbHRlIGRpZXNlIE1lbGR1bmcgbnVyCmtvbW1lbiwgd2VubiBtYW4gZGVuIEtudXRzY2hmaXNjaCBrbnV0c2NodCwgaWNoIHZlcnN0ZWggYmlzIGhldXRlIG5pY2h0LAp3aWUgZGFzIHBhc3NpZXJlbiBrYW5uLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHdhcyBzb2xsIGRhcyB3ZXJkZW4/IChUYXJpbmEsIDEzLiBBdWcgMTk5OCwgMTU6MjA6MjcpOgp+IyEgcm49Qm9pbmcgcnQ9OTAzMDAyODQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyOTYzNzUwCkVocmxpY2ggZ2VzYWd0LCBmYW5kIGljaCBkaWUgTWVsZHVuZyBzZWhyIGtvbWlzY2guIFdhZXJlIHNjaGFkZSwgd2VubiBzaWUKdmVyc2Nod2luZGVuIHd1ZXJkZS4gOi0pCgpHcnVzcywKVGFyaW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJlbmdtZWlzdGVyIGJlaSBkZXIgQXJiZWl0IDspIChTY2hva28sIDEzLiBBdWcgMTk5OCwgMTU6Mjk6NDEpOgoKUGh5Z29zIHRvcmtlbHQgYnJlbm5lbmQgbmFjaCBTdWVkd2VzdGVuLgpQaHlnb3MgdG9ya2VsdCBicmVubmVuZCBoZXJlaW4uCltBbGxnZW1laW46U2FuZG1hbm5dIFRhdXNjaGUgRmV1ZXJzY2h3ZWVydCBnZWdlbiBGZXVlcmtldWxlLi4uLgpQaHlnb3MgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpMYXJzXSBFaW4gRmV1ZXJzdGVpbiBoYXQgZ2VyYWRlIFBoeWdvcyB1bWdlYnJhY2h0LgpbVG9kOkVpbiBGZXVlcnN0ZWluIGlzdCBoYWx0IGV4cGxvZGllcnQuXQoKCldlciBtaXQgZGVtIEZldWVyIHNwaWVsdC4uLi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDYW1waW5nOiBMYXN0IEluZm9zISAoQW5hdG9sLCAxMy4gQXVnIDE5OTgsIDE3OjAyOjQ3KToKfiMhIG9uPUFuYXRvbCBvdD05MDMwMjA1NjEgb2c9cGFydHkKfiMhIHJuPUNhdHdlYXpsZSBydD05MDMwMjA1MDcgcmc9cGFydHkKfiMhIHRpZD05MDMwMjA1MDcKTG9lc2Noc3QgRHUgc2llIGRhbmFjaCBhdWNoPwoKQW5hdG9sLCBUcmlnZ2VyIHNpbmQgbmljaHQgZXJsYXVidCEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IENhbXBpbmc6IExhc3QgSW5mb3MhIChSaW5nb3IsIDEzLiBBdWcgMTk5OCwgMTc6MDM6NDYpOgp+IyEgcm49QW5hdG9sIHJ0PTkwMzAyMDU2NyByZz1zY2htYXJybgp+IyEgdGlkPTkwMzAyMDUwNwpTbyBsYW5nZSBlciBkYW5lYmVuIHN0ZWh0IHVuZCBzaWUgYmVhdWZzaWNodGlndCwgZHVlcmZlbiBzaWUgbmV1ZXJkaW5ncwp0cmlnZ2Vybi4KClJpbmdvci4gV3VlbnNjaHQgQ2F0d2VhemxlIHZpZWwgU3Bhc3MgZGFiZWkgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGZWlnZXMgV2VpYnN0dWVjayAoTW9yZ290aCwgMTMuIEF1ZyAxOTk4LCAxNzozNDozNCk6CltTZWhlcjpBbGluZV0gV2FzIGhhYnQgaWhyIGdlZ2VuIEZyYXVlbj8KRGVpbmUgRnJldW5kaW4gQWxpbmUga251ZGRlbHQgRGljaCBsaWViZXZvbGwgYXVzIGRlciBGZXJuZS4gWzE3OjE5XQpBbGluZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKClVuZ2VzY2huaXR0ZW4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTYW1zdGFnIGlzdCBiZXNvbmRlcmUgUGFydHkgKFJvY2h1cywgMTMuIEF1ZyAxOTk4LCAxODowNToyMCk6Cn4jISBvbj1aYXJuaXlhIG90PTkwMzAyMzkyMCBvZz1wYXJ0eQpGdWVyIGFsbGUsIGRpZSBiaXMgamV0enQgbm9jaCB1bmVudHNjaGxvc3NlbiB3YXJlbiwgbW9lY2h0IGljaCBlaW4gd2VuaWcKV2VyYnVuZyBmdWVyIGRlbiBTYW1zdGFnIGRlciBGZXRlIG1hY2hlbi4gU2ljaGVyIGlzdCBkZXIgQmFobmhvZiBzY2hvZW4gdW5kCmRhcyBCaWVyIHVuZCBkaWUgTXVja2UgdW5kIGFsbGVzLCBhYmVyIGRlciBhYnNvbHV0ZSBIb2VoZXB1bmt0IGZpbmRldCBzY2hvbgpTYW1zdGFncyBhbSBOYWNobWl0dGFnIHN0YXR0OiBPcmt0b2V0ZXJzIEFCUkVJU0UuIERlbW5hY2ggaGF0IG1hbiBuYWNoCmV0bGljaGVuIEphaHJlbiBkZXMgTGVpZHMgZW5kbGljaCBtYWwgR2VsZWdlbmhlaXQsIGVpbmUgUGFydHkgb2huZSBkaWVzZW4KU2NobWFyb3R6ZXIgenUgZXJsZWJlbiAod2VyIHdlaXNzLCB3byB1bmQgaW4gd2VsY2hlbSBTdGlsIE9ya3RpZSBnZXJhZGUgZHVyY2gKRCB0cmFtcHQsIGRlciB3ZWlzcywgd2FzIGljaCBtZWluZSkuIAoKRXMgbGViZSBkaWUgR2VzZWxsaWdrZWl0LgoKWmFybml5YSwgd3VlcmQgYXVjaCBrb21tZW4sIGFiZXIgbWljaCB3aWxsIGRhIHNvd2llc28ga2VpbmVyIHNlaGVuLCBhdXNzZXIKU2lsdmFuYSB1bmQgZGllIHdpbGwgbWljaCBudXIgaGludGVybSBTY2hsYWd6ZXVnLiBXRUlCRVIgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXIgQ2hlZiBnZWh0IGltbWVyIG1pdCBndXRlbSBWb3JiaWxkIHZvcmFuLiAoQXp6dXJvLCAxMy4gQXVnIDE5OTgsIDE5OjUxOjE5KToKCltBbGxnZW1laW46QXp6dXJvXSBGRUlFUkFCRU5EISEhIDopIHVuZCB0c2NodWVzcwpSaWt1cyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCkVjaHRlIEJlYW10ZW5tZW50YWxpdGFldCBpc3QgZGFzIGltIERzY2h1bmdlbCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcmFjaGJsdWV0ZW4uLi4gKFR1bml4Z3V0LCAxNC4gQXVnIDE5OTgsIDA4OjEwOjEzKToKSGV1dGUgZnJ1ZWggaW4gZGVyIFplaXR1bmcgZ2VsZXNlbiwgZWluIHBhYXIgU3BydWVjaGUgZGV1dHNjaGVyIFBvbGl0aWtlciwgaWNoCmhhYicgc2llIG1hbCBzbyBzb3J0aWVydCwgZGFzcyBkaWUgYmVzdGVuIChpbiBtZWluZXIgQW5vcmRudW5nKSBlbSBFbmRlCnN0ZWhlbi4KCk1hbmZyZWQgS2FudGhlciAoaW0gWnVzYW1tZW5oYW5nIG1pdCBkZW0gT2RlcmhvY2h3YXNzZXIpOiBEaWUKICAgICAgIEhvY2h3YXNzZXJrYXRhc3Ryb3BoZSBpc3QgImJhbGQgaW4gdHJvY2tlbmVuIFR1ZWNoZXJuIgpIZXJ0YSBEYWV1Ymxlci1HbWVsaW46ICJJY2ggbW9lY2h0ZSBqZXR6dCBtYWwgbWVpbmUgZWlnZW5lIEJldHJvZmZlbmhlaXQKICAgICAgIGVpbmJyaW5nZW4uIgpIZWxtdXQgS29obDogIkRpZSBXaXJrbGljaGtlaXQgc3RlbGx0IHNpY2ggb2Z0IGFuZGVycyBkYXIgYWxzIGRpZSBSZWFsaXRhZXQuIgpOb2NobWFsIEthbnRoZXI6ICIoKnN1ZWx6KikuLi4gLCBkZW5uIHdhcyB3aXIgaGludGVuIHJlaW5zY2hpZWJlbiwga29tbXQgdW50ZW4KICAgICAgIHdpZWRlciByYXVzLiIKREVSICh6dWdlZ2ViZW5lcm1hc3NlbiByZWNodCBkZWZ0aWdlKSBCcnVlbGxlciBzY2hsZWNodGhpbiBpcyBpbiBtZWluZW4gQXVnZW4KICAgICAgIGplZG9jaDoKJ3MgS2FyYXRlLVp3ZXJjaGxlCktsYXVzIEtpbmtlbDogIkRhcyBQcm9ibGVtIGRlciBUcmV0bWluZW4gbGFlc3N0IHNpY2ggbnVyIFNjaHJpdHQgZnVlciBTY2hyaXR0CiAgICAgICBsb2VzZW4uIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogd2FzIHNvbGwgZGFzIHdlcmRlbj8gKEJvaW5nLCAxNC4gQXVnIDE5OTgsIDA5OjMyOjIzKToKfiMhIHJuPVRhcmluYSBydD05MDMwMTQ0Mjcgcmc9c2NobWFycm4KfiMhIHRpZD05MDI5NjM3NTAKKmdyaW5zKgpBbHNvIFNpbHZhbmEgaGF0IGRlbiBGZWhsZXIgamV0enQgZ2VmdW5kZW4gLi4uIHdpcmtsaWNoIHppZW1saWNoIGRhZW1saWNoCnVuZCBzZWhyIHVuYXVmZmFlbGxpZyAuLi4gbmFqYS4gSWNoIHdlcmRlIGVzIHRyb3R6ZGVtIHNvIGxhc3NlbiAuLi4KbWFzb2NoaXN0aXNjaGUgRmlzY2hlIGdpYnQncyBhdWNoIG5pY2h0IHVlYmVyYWxsIC4uLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB3YXMgc29sbCBkYXMgd2VyZGVuPyAoVHVuaXhndXQsIDE0LiBBdWcgMTk5OCwgMDk6MzM6MDcpOgp+IyEgcm49Qm9pbmcgcnQ9OTAzMDc5OTQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyOTYzNzUwCkRFVEFJTFMsIEJvaW5nLCB3aXIgd29sbGVuIG1pdGxhY2hlbiEgO28pCidzIEthcmF0ZS1ad2VyY2hsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNwcmFjaGJsdWV0ZW4uLi4gKEplc2tvLCAxNC4gQXVnIDE5OTgsIDEwOjMxOjQ0KToKfiMhIHJuPVR1bml4Z3V0IHJ0PTkwMzA3NTAxMyByZz1zY2htYXJybgp+IyEgdGlkPTkwMzA3NTAxMwpQZWFjZSEKCk1laW4gTGllYmxpbmdzc3BydWNoIHZvbiB1bnNlcm0gZGlja2VuIEthbnpsZXIgaXN0OgoiRGFzIGlzdCB6d2FyIHJpY2h0aWcsIGVudHNwcmljaHQgYWJlciBuaWNodCBkZXIgV2FocmhlaXQuIgooVWViZXIgam91cm5hbGlzdGlzY2hlIEJlaGF1cHR1bmdlbi4KCklzdCBJTU8gZG9jaCBzZWhyIGJlemVpY2huZW5kIGZ1ZXIgUG9saXRpa2VyLCB2b24gd2VnZW4KZGVyIFdhaHJoZWl0IHVuZCB3YXMgZGFzIHNvIGlzdCB1bmQgc28gLi4uCgpKZXNrbywgaGF0IGFsbGUgUG9saXRpa2VyIGxpZWIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGt3ZXIgKEFuYXRvbCwgMTQuIEF1ZyAxOTk4LCAxNToyNDo1OSk6Cn4jISBvbj1BbmF0b2wgb3Q9OTAzMTAxMDkzIG9nPWVudHdpY2tsdW5nCn4jISBybj1QYXRyeW4gcnQ9OTAzMDkzMTczIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTAyOTEyMjk5CldpZSB3YWVyZSBlcyBtaXQgImt3ZXIgdWViZXJmbHVlc3NpZyB1bmQgdHJvdHpkZW0gbmVydmVuZCIgPyBEYXMgc29sbHRlIGRhbm4KYWJlciBleHBsaXppdCBuaWNodCBhdXNzY2hsaWVzc2xpY2ggTWFnaWVyIHRyZWZmZW4sIGdlbGw/IDspCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBrd2VyIChOb25uZSwgMTQuIEF1ZyAxOTk4LCAxNToyODozNik6Cn4jISBybj1BbmF0b2wgcnQ9OTAzMTAxMDk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAyOTEyMjk5CmRhbm4gc2NocmVpYiBkaXIgbiBhbGksIGRhcyBpbW1lciAnQW5hdG9sJyBhdXNnaWJ0LCBpc3QgZGFzIHNlbGJlIHVuZCBtYWNodAprZWluIGxhZyA7KQoKTm9ubmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvc28uLiAoVGhlcmluLCAxNC4gQXVnIDE5OTgsIDIzOjA2OjU4KToKCltBbGxnZW1laW46S2lsYXIgd2lyZnQgZ2VsYW5nd2VpbHQgbWl0IFdhdHRlYmFlbGxjaGVuIHVtIHNpY2hdOwpbQWxsZ2VtZWluOkJhcmQgc2NocmVpdCB2b3IgU2NobWVyeiBhdWYuXTsKRHUgaG9lcnN0IGRhcyBHZWphdWxlIGVpbmVzIFdvbGZlcy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgc2FnZW4gc2llIG5hY2hoZXIgaW1tZXIgKEF6enVybywgMTUuIEF1ZyAxOTk4LCAwMDozMzo0Nik6CiBUb2Q6TGFycyBFaW4gU2F0eXIgaGF0IGdlcmFkZSBMYWR5ZGVhdGggdW1nZWJyYWNodC4KQmFybnkgcnVmdDogZXMgdHV0IG1pciBsZWlkIGljaCBoYWJlIG51ciB3YXMgYXVzcHJvYmllcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZsZWlzc2lnZSBNYWdpZXIhIChTcmFiaSwgMTUuIEF1ZyAxOTk4LCAxMDowMTo1NSk6CiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBTYW0sIDE1LiBBdWcgMTk5OCwgMTA6MDA6NTkgKDQKVGVpbG5laG1lcil8TGVmdHkuLi4uLi4uLi4uaS5tIFF1aWxsaWFuLi4uLi4uLkouTSAqS29iYXlhc2hpLi4uLi5JLk0KS2V0b3MuLi4uLi4uLi4uSi5SCgpTcmFiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEh5ZHJhIG1hbCB0b3RnZWlkbGV0IDspIChBc21vZGlzLCAxNS4gQXVnIDE5OTgsIDE3OjU1OjM5KToKfiMhIHJuPU5lYiBydD05MDI3NzQ2MTggcmc9c2NobWFycm4KfiMhIHRpZD05MDI3NzQ2MTgKS2xlcmlrZXIgbm9jaG1hbCBhYndlcnRlbiAhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEh5ZHJhIG1hbCB0b3RnZWlkbGV0IDspIChUYW5pcywgMTUuIEF1ZyAxOTk4LCAyMDo0NzoxNik6Cn4jISBybj1Bc21vZGlzIHJ0PTkwMzE5NjUzOSByZz1zY2htYXJybgp+IyEgdGlkPTkwMjc3NDYxOApUb2Q6TGFycyBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgUGxvdGluIHVtZ2VicmFjaHQuIDIwOjAxOjEwClRvZDplaW4gSHlkcmFrb3BmIGhzc3Nzc3MgIDIwOjAxOjEwClRvZDpMYXJzIEVpbiBIeWRyYWtvcGYgaGF0IGdlcmFkZSBQbG90aW4gdW1nZWJyYWNodC4gMjA6MDc6NDMKVG9kOmVpbiBIeWRyYWtvcGYgaHNzc3NzcyAgMjA6MDc6NDMKVG9kOkxhcnMgRWluZSBIeWRyYSBoYXQgZ2VyYWRlIEthcm9sIHVtZ2VicmFjaHQuIDIwOjA5OjExClRvZDplaW5lIEh5ZHJhIGhzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcyAgMjA6MDk6MTEKVG9kOkxhcnMgRWluIEh5ZHJha29wZiBoYXQgZ2VyYWRlIFRhbmlzIHVtZ2VicmFjaHQuIDIwOjExOjA1ClRvZDplaW4gSHlkcmFrb3BmIGhzc3Nzc3MgIDIwOjExOjA1CgpVbmQgZGEgd2lsbHN0IGR1IHVucyBOT0NIIHdlaXRlciBhYndlcnRlbj8gKmdydWViZWwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIeWRyYSBtYWwgdG90Z2VpZGxldCA7KSAoQXNtb2RpcywgMTUuIEF1ZyAxOTk4LCAyMDo0OTozOCk6Cn4jISBybj1UYW5pcyBydD05MDMyMDY4MzYgcmc9c2NobWFycm4KfiMhIHRpZD05MDI3NzQ2MTgKd2FydW0gbmljaHQ/IGthbm4gamVkZW5mYWxscyBuaWNodCBzY2hhZGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bmQgcmVjaHQgc29sbHRlIGVyIGJlaGFsdGVuIChUaGVyaW4sIDE2LiBBdWcgMTk5OCwgMDI6MDk6MjIpOgpbQmVpbGVpZDpGcm9naHVudGVyXSBIYWxsbyB0b2QsIGljaCBrb21tZS4gTWVpbiBLb21wYXNzIGlzdCB3ZWNoLiAwMjowNjoyMwpbQmVpbGVpZDpTaGFkZSBzY2hhdXQgRnJvZ2h1bnRlciBlbnRzZXR6dCBhbi4gMDI6MDY6NDFdCltCZWlsZWlkOkJhcmRdIHNvd2FzIGVpdGxlcywgd3VlbnNjaHQgc2ljaCAqdm9yaGVyKiBiZWlsZWlkIDopKSAwMjowNjo0MQpbQmVpbGVpZDpDYWx6b25lXSBhY2gga29tbS4uLiAwMjowNjo0NQpbQmVpbGVpZDpUYW5pc10gd2llc28gaXN0IGRlciB3ZWc/IDooKCgoIDAyOjA2OjUzCltCZWlsZWlkOkZyb2dodW50ZXJdIEljaCBkYWNodGUsIGRlbiBrYW5uIG1hbiBuaWNodCB2ZXJrYXVmZW4uIGVzIGdlaHQgZG9jaC4KW0JlaWxlaWQ6RnJvZ2h1bnRlcl0gMDI6MDc6MTkKW1RvZDpMYXJzXSBIb2VsbGVuZmV1ZXIgaGFiZW4gZ2VyYWRlIEZyb2dodW50ZXIgdW1nZWJyYWNodC4KW1RvZDpIb2VsbGVuZmV1ZXIgc2luZCBoZWlzcyFdCltCZWlsZWlkOkRpcmlvbl0gQmVpbGVpZCAwMjowNzo1MgpbQmVpbGVpZDpUYW5pc10gYmVpbGVpZCA6KCgoCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVmVyZ2ViZW5lIExpZWJlc211ZWggKEFzbW9kaXMsIDE2LiBBdWcgMTk5OCwgMTY6MTY6MDUpOgpFaW4gV2lydCB6aWVodCBlaW5lbiBQYW56ZXIgYW4KRWluIFdpcnQgemllaHQgZWluZW4gU2NoaWxkIGFuLgogIER1IHRyaWZmc3QgZGVuIFdpcnQgc2VociBoYXJ0LgpEZXIgV2lydCBmYWVsbHQgdG90IHp1IEJvZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXPyAoS2FtaWxsZSwgMTYuIEF1ZyAxOTk4LCAxODoxNzo1MSk6CgpbQmVpbGVpZDpUaGVyaW5dIG5hdHVlcmxpY2gga2FubiBtYW4gZ2xlaWNoemVpdGlnIGNoYXR0ZW4gdW5kIG11ZGRlbiBvaG5lCltCZWlsZWlkOlRoZXJpbl0gZ2xlaWNoIHp1IHN0ZXJiZW4gPDE4OjE1OjA0PgpbVG9kOkxhcnNdIEVpbiBrbGVpbmVyIEtub3BmIGhhdCBnZXJhZGUgVGhlcmluIHVtZ2VicmFjaHQuIDwxODoxNTowNj4KW1RvZDpFaW4ga2xlaW5lciBLbm9wZl0gVW5kIGljaCBzYWNoIG5vY2g6IExhc3MgZXMhIDwxODoxNTowNj4KCkFuc2NoZWluZW5kIGRvY2ggbmljaHQgOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoUmluZ29yLCAxNy4gQXVnIDE5OTgsIDE0OjEyOjI0KToKW0FiZW50ZXVlcjpBbHBoYV0gTWlzdC4uLmRpZSBIZXR6ZXIgc2luZCBpbW1lciBub2NoIGRhOiggdW5kIGRpZSBnZWlzdGVybgpbQWJlbnRldWVyOkFscGhhXSBqZXR6dCBzY2hvbiBpbSBMdXBpdGFsIHJ1bTooIDwxNDoxMDowMz4KW0FiZW50ZXVlcjpSaW5nb3JdIGFsc28gYW4gQWx0ZXJzc2Nod2FlY2hlIHdlcmRlbiBzaWUgc2ljaGVybGljaCBuaWNodCBzdGVyYmVuCltBYmVudGV1ZXI6UmluZ29yXSA6LSkgPDE0OjEwOjI0PgpbQWJlbnRldWVyOlR1Tml4R3V0cyA6Z3JpbnN0Li4uIDwxNDoxMDozOD5dCltBYmVudGV1ZXI6QWxwaGFdIFdlcmRlbiBkaWUgbmljaHQgd2VnZ2VyZXNldGV0PyA8MTQ6MTA6NDQ+CltBYmVudGV1ZXI6QWxwaGEgZnVlaGx0IHNpY2ggbWl0IDIgTFAgbmljaHQgd29obDooIDwxNDoxMTowNj5dCltUb2Q6TGFyc10gRWluIEhldHplciBoYXQgZ2VyYWRlIEFscGhhIHVtZ2VicmFjaHQuIDwxNDoxMTowOD4KCk9mZmVuc2ljaHRsaWNoIG5pY2h0LgoKUmluZ29yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUaGVvcmV0aXNjaGUgUGh5c2lrIC0gQWxsZXMgUXVhdHNjaCAoQ2F0d2VhemxlLCAxOC4gQXVnIDE5OTgsIDExOjE5OjQyKToKV2VyIHNjaG9uIGltbWVyIGRpZSBXYWhyaGVpdCB1ZWJlciBkaWUgdGhlb3JldGlzY2hlIFBoeXNpayBlcmZhaHJlbiB3b2xsdGU6Cnd3dy5ib3VyYmFraS5kZQoKRW5kbGljaCBicmluZ3QgbWFsIGplbWFuZCBkaWUgV2FocmhlaXQgYXVmIGRlbiBQdW5rdC4KWVRDCgpQUzogQWxzbyBqZW1hbmQgZGVyIHVlYmVyIHNpY2ggc2VsYnN0IGluIGRlciBkcml0dGVuIFBlcnNvbiBzY2hyZWlidCBpc3QgbWlyCiAgICBob2NoZ3JhZGlnIHN1c3Bla3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoQXNtb2RpcywgMTguIEF1ZyAxOTk4LCAyMjoyMTozNSk6CltUcnZlczpTaGFubmFyYV0gaWNoIHByb2JpZXIgaGFsdCBtYWwgbnVyZGlrIGZ1ZXIgZGVuIGFuZmFuZyA6KQouLi4KW1RvZDpMYXJzXSBHcm9nZyBacidrdW1wZiBoYXQgZ2VyYWRlIFNoYW5uYXJhIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZmx3IChTaGFubmFyYSwgMTguIEF1ZyAxOTk4LCAyMjoyNzo1MSk6Cn4jISBybj1Bc21vZGlzIHJ0PTkwMzQ3MTY5NSByZz1zY2htYXJybgp+IyEgdGlkPTkwMzQ3MTY5NQoKR2VnZW4gNSBUcnZlcyBnbGVpY2h6ZWl0aWcga2FlbXBmZW4gbXVlc3N0ZSBhYmVyIGZ1ZXIgamVkZW4gZXR3YXMgaGFydCBzZWluLgoKU2hhbm5hcmEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpub2NobWFsIGZsdyAoQXNtb2RpcywgMTguIEF1ZyAxOTk4LCAyMjoyODozNSk6CltBYmVudGV1ZXI6QWxwaGFdIFN0aXJidCBtYW4gYW0gS2xhbW1lcmdyYXM/IDwyMjoxNTo0ND4KW0FiZW50ZXVlcjpBbHBoYSB3aWxsIGtlaW5lIEZMVy4uLiA8MjI6MTU6NTY+XQpbQWJlbnRldWVyOkFuYXRvbF0gRGFubiBzZWkgbGllYmVyIHN0aWxsLCBBbHBoYSA7KSA8MjI6MTY6MDQ+CltBYmVudGV1ZXI6QWxwaGFdIEhhY2tlbiBrYW5uIG1hbiBlcyBuaWNodDooIDwyMjoxNjoyND4KW0FiZW50ZXVlcjpBbGluZV0gSGF1IGFiISEhIDwyMjoxNjozMj4KW0FiZW50ZXVlcjpBbHBoYV0gTG9lc2VuIGF1Y2ggbmljaHQ6KCA8MjI6MTY6MzY+CltBYmVudGV1ZXI6QWxpbmVdIFNpZWggenUgZGFzcyBEdSB3ZWdna29tbXN0IDwyMjoxNjo0OD4KW1RvZDpMYXJzXSBFaW4gRGVyIEdhcnRlbiBkZXMgVG9kZXMgaGF0IGdlcmFkZSBBbHBoYSB1bWdlYnJhY2h0LiA8MjI6MTY6NDg+CltBYmVudGV1ZXI6QWxpbmVdIEZMVz8gPDIyOjE2OjU2PgoKd2llIHJlY2h0IHNpZSBoYXQgOi0pCgpQLlMuOiB1bndpY2h0aWdlcyB3ZWdnZXNjaG5pdHRlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2VpbmUgRkxXIChBbGluZSwgMTguIEF1ZyAxOTk4LCAyMjoyODozNik6CgpBbmF0b2wgd2llIG1hbiBpaG4ga2VubnQ6IGFycm9nYW50IHVuZCAuLi4gOykKCltBYmVudGV1ZXI6QWxwaGFdIFN0aXJidCBtYW4gYW0gS2xhbW1lcmdyYXM/IDwyMjoxNTo0ND4KW0FiZW50ZXVlcjpBbHBoYSB3aWxsIGtlaW5lIEZMVy4uLiA8MjI6MTU6NTY+XQpbQWJlbnRldWVyOkFuYXRvbF0gRGFubiBzZWkgbGllYmVyIHN0aWxsLCBBbHBoYSA7KSA8MjI6MTY6MDQ+CltBYmVudGV1ZXI6TW96YXJ0XSBXbyBrYW5uIGljaCBkZW5uIGVpbiBTZWlsIGthdWZlbiA/IC4uQWxsZSBMYWVkZW4gZGllIGljaApbQWJlbnRldWVyOk1vemFydF0ga2VubmUgaGFiZSBpY2ggZHVyY2ggLi4gPDIyOjE2OjA4PgpbQWJlbnRldWVyOkFscGhhXSBIYWNrZW4ga2FubiBtYW4gZXMgbmljaHQ6KCA8MjI6MTY6MjQ+CltBYmVudGV1ZXI6QWxpbmVdIEhhdSBhYiEhISA8MjI6MTY6MzI+CltBYmVudGV1ZXI6QXNtb2Rpc10gaW0gd2FuZ2Vkb3JmLCB6LkIuIDwyMjoxNjozND4KW0FiZW50ZXVlcjpBbHBoYV0gTG9lc2VuIGF1Y2ggbmljaHQ6KCA8MjI6MTY6MzY+CltBYmVudGV1ZXI6QWxpbmVdIFNpZWggenUgZGFzcyBEdSB3ZWdna29tbXN0IDwyMjoxNjo0OD4KW0FiZW50ZXVlcjpBbGluZV0gRkxXPyA8MjI6MTY6NTY+CltBYmVudGV1ZXI6QW5hdG9sXSBXYXMgenUgZXJ3YXJ0ZW4gd2FyLiA6KSA8MjI6MTY6NTg+CltCZWlsZWlkOlRpbGx5XSBiZWlsZWlkIGFscGhhIDspIDwyMjoxNjo0ND4KW1RvZDpMYXJzXSBFaW4gRGVyIEdhcnRlbiBkZXMgVG9kZXMgaGF0IGdlcmFkZSBBbHBoYSB1bWdlYnJhY2h0LiA8MjI6MTY6NDg+CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIE9lc3RlcnJlaWNoZXIga29tbWVuISAoQW5hdG9sLCAxOC4gQXVnIDE5OTgsIDIyOjQwOjE0KToKW0JlaWxlaWQ6R3JlaWZheF0gc2hhbm5hcmE6IHdlciBpc3QgaGFubmVzIGFuZHJvc2NoPwpbQmVpbGVpZDpXb29keV0gamVzc2FzLCB3ZXIgbmVubnQgZGVubiBkYSBzcGllbGVyIG5hY2ggZWhlbWFsaWdlbgpbQmVpbGVpZDpXb29keV0gb2VzdGVycmVpY2hpc2NoZW4gZmluYW56bWluaXN0ZXJuPwpbQWJlbnRldWVyOjxRdWVzdD5dIE1vemFydCBoYXQgZ2VyYWRlIGVpbiBBYmVudGV1ZXIgYmVzdGFuZGVuOiBGaW5kZSBkaWUgRmVlCltBYmVudGV1ZXI6PFF1ZXN0Pl0gQW1hcnlsbGlzCltCZWlsZWlkOldvb2R5XSBhZWgsIHMuby4gOikKCkFyZ2ggOikKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RhbW10aXNjaGxvZ3MuLi4gKFRoZXJpbiwgMTkuIEF1ZyAxOTk4LCAwNDozMzo1MSk6ClRlZGR5LCBUaGVyaW4sIFJpbmdvciwgS251cnQgdW5kIFNub3R0eSBhdWYgZGVyIEZhaHJ0IG5hY2ggTVMuCgpQbG9ldHpsaWNoIHJpZWNodCBlcyBuYWNoIEFkZGwuClRoZXJpbiByaWVjaHQuClRoZXJpbiBzYWd0OiBEaWVzZSBIb2JiaXRzLi4uClRoZXJpbiBibGlja3QgS251cnQgdW5kIFNub3R0eSBhbi4KVGVkZHkgcmllY2h0LgpUZWRkeSBzYWd0OiBXYXMgbXVlc3NlbiBkaWUgc2ljaCBhdWNoIGRpZSBTY2h1aGUgYXVmYmluZGVuLgpUZWRkeSBuaW1tdCBlaW5lIERvc2UgRGVvLgpUZWRkeSBzcHJ1ZWh0IERlbyB3aWxkIGluIFJpY2h0dW5nIGRlciBSdWVja2JhbmsgZGVzIFdhZ2Vucy4KVGVkZHkgcmllY2h0LgpUZWRkeSBzYWd0OiBiZXNzZXIuClRoZXJpbiByaWVjaHQuClRoZXJpbiBzYWd0OiB2aWVsIGJlc3Nlci4KU25vdHR5IHNjaHJlaXQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTVMuLi4gKFRoZXJpbiwgMTkuIEF1ZyAxOTk4LCAwNDozNDo1Nyk6CgpUZWRkeSwgVGhlcmluLCBSaW5nb3IsIEtudXJ0IHVuZCBTbm90dHkgaXJnZW5kd2FubiBhdWYgZGVyIFJ1ZWNrcmVpc2UuClBsb2V0emxpY2ggZWluIFN0aW1tY2hlbiB2b24gZGVyIFJ1ZWNrYmFuay4KClNub3R0eSBzYWd0OiBXb2Z1ZXIgc3RlaHQgZWlnZW50bGljaCBNUz8KCihPaG5lIFdvcnRlLi4uKQoKKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtlaW5lIEZMVyAoWmFybml5YSwgMTkuIEF1ZyAxOTk4LCAxMjoyNjo1MCk6Cn4jISBybj1BbGluZSBydD05MDM0NzIxMTYgcmc9c2NobWFycm4KfiMhIHRpZD05MDM0NzIxMTYKc2llaHQgbWFuIHZvciBhbGxlbSB3aWVkZXIsIHdpZSBHdXQgaGllciBNYWdpZXIgZGllIGFuZ2VzY2hsb3NzZW5lbiBHZWJpZXRlCmdldGVzdGV0IGhhYmVuLHcgZW5uIFNPIGVpbmUgYnVnZ3kgVG9kZXNtZWxkdW5nIHVlYmVyIGRlbiBLYW5hbCBnZWhlbiBrYW5uLgpJY2ggc2FjaCBqYSBudXI6IFVORkFFSElHLi4uIGljaCB3dWVyZHMgamEgcmVwYXJpZXJlbi4gV2VyIHNwb25zb3J0IG1pY2g/CgpaYXJuaXlhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgTWFnaWVyIGluIGFuZGVyZW4gTXVkcy4uLiAoVHVuaXhndXQsIDE5LiBBdWcgMTk5OCwgMTQ6MDE6NDEpOgpbU2VoZXI6TXNhcl0gd2VyIGhhdCBtaWNoIGdlcmFkZSB3YXJ1bSByYXVzZ2V3b3JmZW4/CltBbGxnZW1laW46UmFrYWwgbGVybnQgbm9jaCBlaW4gYmlzc2VybC4uLl0KCidzIEthcmF0ZS1ad2VyY2hsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLZWluZSBGTFcgKFJpa3VzLCAxOS4gQXVnIDE5OTgsIDE3OjA4OjQ3KToKfiMhIHJuPVphcm5peWEgcnQ9OTAzNTIyNDEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAzNDcyMTE2CmFwcm9wb3MgdW5mYWVoaWcuLi4gaWNoIGhhYmUgYXVzIGRlbSBleHBsb3JhdGlvbm1hc3RlciBidWdzIHZvbiBkaXIKcmF1c2dlbWFjaHQsIGRvcnQgc2luZCBzaWUgbm9jaCB1bmFuZ2VicmFjaHRlciBhbHMgYmVpIGVpbmVyIHRvZGVzLQptZWxkdW5nLi4uCgpSaWt1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYmx1bWVuIChUYXJpbmEsIDE5LiBBdWcgMTk5OCwgMTg6NDg6NDIpOgoKRWluZSB3dW5kZXJzYW1lIEJsdW1lLgpEdSBzY2hsaWVzc3QgZGllIEF1Z2VuLCBzY2htaWVnc3QgRGljaCBlbmcgYW4gZWluZSB3dW5kZXJzYW1lIEJsdW1lIHVuZCBnaWJzdAppaHIgZWluZW4gemFlcnRsaWNoZW4gdW5kIGxlaWRlbnNjaGFmdGxpY2hlbiBLdXNzLgpVbSBEaWNoIGhlcnVtIHZlcnNpbmt0IGRpZSBXZWx0IHVuZCBEdSBnbGF1YnN0LCBhdWYgV29sa2VuIHp1IHNjaHdlYmVuLgo+IEVpbmUgd3VuZGVyc2FtZSBCbHVtZSB3aWxsIGRlZmluaXRpdiB2b24gRGlyIGdlcGZsdWVja3Qgd2VyZGVuLgoKR3JpbnMsClRhcmluYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbm9jaCBtZWhyIGxvZ3MgKEtudXJ0LCAxOS4gQXVnIDE5OTgsIDIyOjExOjExKToKSm8gaWNoIGhhYiBkYSBhdWNoIG5vY2ggendlaSBsb2dmaWxlcyB2b20gTW9udGFnYWJlbmRiZXNhZXVmbmlzIG1pdCBUaGVyaW4sClJpbmdvciB1bmQgU25vdHR5IGJlaXp1c3RldWVybjoKClJpbmdvcjogIkhtbW0sIGljaCBoYWJlIGRlbiBrbGVpbmVuIEhvYmJpdCBuaWNodCBnZWxlc2VuLiIgKmFsbGdlbWVpbnMKZW50c2V0enRlcyBnZW11cm1lbCogUmluZ29yOiAiRGVuIEhlcnJuIGRlciBSaW5nZSBhdWNoIG5pY2h0Ii4gKkFsbGdlbWVpbmVzCkJ1dXV1dXVoKiBSaW5nb3I6ICJVbmQgaWNoIHNjaGFlbWUgbWljaCBuaWNodC4uLiIKU25vdHR5IHp1bSBUaGVtYSBMaWxsZWJyb3I6ICJJY2ggd2FyIGphIGVyc3RhdW50LCBkYXNzIGVpbmUgRnJhdSBzbyBzY2huZWxsCmhvY2hrb21tdC4uLiIgClRlZGR5IGltIEF1dG8gYXVmIGRlciBGYWhydCBuYWNoIE1TIGFscyBUaGVyaW4gdW5kIGljaCB1bnMgb2IgZGVyClphdWJlcmVyYWJ3ZXJ0dW5nIHdlaW5lbmQgKGhpaGkpIGluIGRlbiBBcm1lbiBsYWdlbjogIklociB0dXQgbWlyIGxlaWQsIElocgprcmllZ3QgYXVmIGVpbm1hbCBTY2hhZGVuLCB3ZW5uIElociBkZW4gR2VnbmVyIG1pdCBlaW5lbSBTY2hsYWcgemVybWFuc2NodCIuCgpCaXMgZGVubmUgenVyIFBhcnR5LApLTnVydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdWggb2guLi4gKFRoZXJpbiwgMjAuIEF1ZyAxOTk4LCAwMTozNzoxNik6CktudXJ0IHRlaWx0IERpciBtaXQ6IHRqYSB3ZW5uc3QgZGljaCBhdXNzbG9nZ3N0IGJpbiBpY2ggZGVyIGJlc3RlIFNlaGVyLgpLbnVydCB0ZWlsdCBEaXIgbWl0OiBFcnNjaGllc3MgRGljaCB1bmQgd2VpbmU6KQoKVC4sIHdpbGwgZXVjaCBkYXMgaXJnZW5kd2llIG5pY2h0IGFudHVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWndlcmNoZSEgKFNoYWhpLCAyMC4gQXVnIDE5OTgsIDEwOjQ4OjA3KToKVHVOaXhHdXQgZ3JpbnN0LgpUdU5peEd1dCB6ZWlndCBEYW5jZXIgc2VpbmVuIEJvZ2VuLgpUdU5peEd1dCB6ZWlndCBEYW5jZXIgc2VpbmVuIEtvZWNoZXIuCj5TaGFoaSB3YXJ0ZXQgc2Nob24gZGFyYXVmIGRhcyBUdW5peCBzZWluZSBIb3NlIHJ1bnRlciBsYWVzc3QgYmVpIHNlaW5lcgpaZWlnZS1XdXQuLi47KQo+IERhbmNlciBiYXV0IHNlaW5lIHp3ZWkgVm9yZGVycHJhbmtlbiB2b3IgVHVuaXhndXQgYXVmLgpUdU5peEd1dCBoYXQgZG9jaCBnYXJrZWluZSBhbiEgO28pCkVpbmUgR2FlcnRuZXJpbiBrb21tdCBhbi4KRGllIEdhZXJ0bmVyaW4gYnVlY2t0IHNpY2guCgpVbmQgbWlyIHdhcyB2b24gVHJldWUgdm9yc2V1c2VsbiEKClNoYWhpLCB0cm90eiBhbGxlbSBraWNoZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWJlbiBiZWltIERhbmNlciBhYmZ1ZWxsZW4uLi4gKFR1bml4Z3V0LCAyMC4gQXVnIDE5OTgsIDEwOjU5OjEyKToKRHUgc3BlbmRpZXJzdCBEYW5jZXIgZXR3YXMuCkRhbmNlciB0cmlua3QgZWluIEdsYXMgV2Fzc2VyIHVuZCBmYWVsbHQgd2llIHRvdCB6dSBCb2Rlbi4KRWluaWdlIEVsZmVuIGxhdWZlbiBoZXJiZWkgdW5kIHNjaGFmZmVuIGVzLCBEYW5jZXIgd2llZGVyenViZWxlYmVuLAp1bmQgc2V0emVuIGRhbm4gaWhyZSBNYWhsemVpdCBmb3J0LiBPZmZlbnNpY2h0bGljaCBwYXNzaWVydCBzb3dhcwpoaWVyIG9lZnRlci4KCk5vY2ggc28gMjAgbWFsLiwuLgoKRGFubiB1bmdlc2Nobml0dGVuOgpEZXIgV2lydCBzYWd0OiBXYXMgYmVrb21tZW4gU2llIG5vY2htYWw/ClR1Tml4R3V0IGJydW1tZWx0IHdhcyB2b24gIkVpbmVuIFNjaG5lZWxoYWVydGVyIGZ1ZXIgRGFuY2VyISIgaW4gc2VpbmVuIEJhcnQuCkRlciBHYXN0d2lydCBzYWd0OiBQYXNzZW4gU2llIGF1ZiwgZGFzcyBlcyBuaWNodCB6dXZpZWwgd2lyZC4KVHVOaXhHdXQgbGFjaHQKCidzIGthcmF0ZS16d2VyY2hsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLZWluZSBGTFcgKFRheiwgMjAuIEF1ZyAxOTk4LCAxMjowMDoyOSk6Cn4jISBybj1aYXJuaXlhIHJ0PTkwMzUyMjQxMCByZz1zY2htYXJybgp+IyEgdGlkPTkwMzQ3MjExNgoKSWNoIHJlcGFyaWVyIGVzIGF1Y2ggd2VubiBtaWNoIGplbWFuZCBtYWwgZWJlbiB6dW0gRXJ6bWFnaWVyIG1hY2h0LgpIaWVyIGhpZXIgaWNoLiBVbmZhZWhpZyBpc3QgZGVyIGRlciBzaWNoIHNlbGJzdCBsb2VzY2h0IGRhbmFjaCB3aWVkZXIga29tbXQKdW5kIHVlYmVyIGFsbGVzIG1lY2tlcnQuCgpBbmFraW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGF1ZiBkZW0gQW5nZWxrdXR0ZXIgKFVydGhvbmEsIDIwLiBBdWcgMTk5OCwgMTI6NDk6MzQpOgo+dW50IHNhZWdlZmlzY2gKRHUgZmluZGVzdCBhbiBlaW5lbSBTYWVnZWZpc2NoIGtlaW4gIlNhZWdlZmlzY2giLgoKaGFlaD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaGVpc3MtUm91dGVyIDstKCgoKCAoTW9yZ290aCwgMjAuIEF1ZyAxOTk4LCAxNjoyMTo0Nik6Cj4ga3dlcgogIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEb24sIDIwLiBBdWcgMTk5OCwgMTY6MjA6NDAgKDE1IFRlaWxuZWhtZXIpCiAKSGFydmVzdGVyLi4uLi4uLi5zIFJ5YW5hLi4uLi4uLi4uLi4ucyBTaGVhLi4uLi4uLi4uLi5pLnMgVGFyLi4uLi4uLi4uLi4uaS5zCkJoYW1pci4uLi4uLi4uLi4ucyBZZW5kaS4uLi4uLi4uLi5qLnMgVGFyYm9zLi4uLi4uLi4uLi5zIFRvbWF0b3IuLi4uLi4uLi4ucwoqWGFuZC4uLi4uLi4uLi4uLlMgKkxpZ2h0bmluZy4uLi4uLi56IE15c3RlcmlvdXMuLi4uLi4uUyAqQmlyZHkuLi4uLi4uLi4uLlMKKkFlbmVhcy4uLi4uLi4uLi5TIE1vcmdvdGguLi4uLi4uLi4uUiBSdW1hdGEuLi4uLi4uLi5qLkcKIAo+IGt3ZXIgYXVzIG11ZW5zdGVyCiAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERvbiwgMjAuIEF1ZyAxOTk4LCAxNjoyMDo0NiAoMTUgVGVpbG5laG1lcikKIApIYXJ2ZXN0ZXIuLi4uLi4uLnMgUnlhbmEuLi4uLi4uLi4uLi5zIFNoZWEuLi4uLi4uLi4uLmkucyBUYXIuLi4uLi4uLi4uLi5pLnMKQmhhbWlyLi4uLi4uLi4uLi5zIFllbmRpLi4uLi4uLi4uLmoucyBUYXJib3MuLi4uLi4uLi4uLnMgVG9tYXRvci4uLi4uLi4uLi5zCipYYW5kLi4uLi4uLi4uLi4uUyAqTGlnaHRuaW5nLi4uLi4uLnogTXlzdGVyaW91cy4uLi4uLi5TICpCaXJkeS4uLi4uLi4uLi4uUwoqQWVuZWFzLi4uLi4uLi4uLlMgTW9yZ290aC4uLi4uLi4uLi5SIFJ1bWF0YS4uLi4uLi4uLmouRwogCnVuZCBkYXMgbWl0IG5vcm1hbGVtIHRlbG5ldAoKTSogKGdydW1tZWxuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklzdCBkYXMgbm9jaCBsdXN0aWc/ICp3dWVyZyogKFphcGhvYiwgMjAuIEF1ZyAxOTk4LCAxOTo0MDoyMCk6CkdlcmFkZSBlYmVuOgoKRGVyIGtsdWdlIFBvbGFyZnVjaHMgd2VpY2h0IERlaW5lbSBIaWViIGF1cyB1bmQgYmVpc3N0IERpciBpbiBkaWUgSGFuZC4KRHUgd2VocnN0IGRlbiBTcHJ1Y2ggYWIuCgpGaW5kZXQgZGFzIGdhciBuaWNodCBzY2hvZW4sIFphcCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTY2hlaXNzLVJvdXRlciA7LSgoKCggKEFsaW5lLCAyMC4gQXVnIDE5OTgsIDE5OjU2OjUxKToKfiMhIHJuPU1vcmdvdGggcnQ9OTAzNjIyOTA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAzNjIyOTA2CkhpIE1vbiBDaGljaGksCgpudXIgbWFsIHNvIGFtIFJhbmRlIGJlbWVya3QuLi5kZXIgUm91dGVyIHdhciBlcyBuaWNodCA6KQoKbGVpZGVyIGdpYnQgZXMgd2llZGVyIGVpbmUgU3RvZXJ1bmcgZGVzIEItV2lOLUFuc2NobHV1c2VzIHNlaXQKMjAuOC4gY2EuIDE1OjIwLgpERk4gbm9jIGlzdCBpbmZvcm1pZXJ0LCBkaWUgU3RvZXJ1bmcgYmV0cmlmZnQgd2llZGVyCmFsbGUgYW0gRG9ydG11bmRlciBLbm90ZW4gYW5nZXNjaGxvc3NlbmVuIEVpbnJpY2h0dW5nZW4uCmRpZSBUZWxla29tIHN1Y2h0IGRlbiBGZWhsZXIuCgpBbGluZSBkZW5rdCAuIG8gTyAoVGVsZWtvbWlrZXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpyZWJvb3QgKFRhcmluYSwgMjAuIEF1ZyAxOTk4LCAyMjoyODoyNSk6CltBYmVudGV1ZXI6SGFpcl0gaG0uLnJlYm9vdD8/CltBYmVudGV1ZXI6RGlyaW9uXSBobW1tLiBKQSBTQ0hFSVNTRSEKRGVyIEdlaXN0IGhldWx0IHZvbGxlciBXdXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGJlaW0gU2llZGVsbiAoUm9jaHVzLCAyMS4gQXVnIDE5OTgsIDEzOjU0OjU1KToKR25vbWUgenUgWmVwaHlyOiBFcnN0IHN0ZWxsc3QgRHUgbWlyIGVpbmVuIFJhZXViZXIgZGEgaGluLCBkYW5uIGtsYXVzdAogIER1IG1pciBtZWluZW4gU2FjayB1bmQgZGFubiB3aWxsc3QgRHUgYXVjaCBub2NoIG1laW4gQnVjaCEKKEhhY2gsIGVzIGlzdCBkb2NoIGltbWVyIHdpZWRlciBuZXR0LCBTYWV0emUgYXVzIGRlbSBadXNhbW1lbmhhbmcgenUgcmVpc3Nlbgo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW1hbmRhIChSb2NodXMsIDIxLiBBdWcgMTk5OCwgMTM6NTY6MTMpOgpYeHh4eHg6IEdpYnQgZXMgZWlnZW50bGljaCBlaW4gbWFlbm5saWNoZXMgR2VnZW5zdHVlY2sgenUgQW1hbmRhPwpBbGluZTogSmEsIGplZGVyIG1hZW5ubGljaGUgU3BpZWxlciBkZXIgc2ljaCBlaW5sb2dndC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNrcnVwZWwgKFJvY2h1cywgMjEuIEF1ZyAxOTk4LCAxNDowMjo1Mik6CkJlaW0gIlNrcnVwZWwiLVNwaWVsOgpYeHh4eHg6IFJvY2h1cywgRGVpbmUgTmFjaGJhcm4gbGFkZW4gRGljaCBpbiBpaHJlIFNhdW5hIGVpbi4KICBOaW1tc3QgRHUgRGllIEVpbmxhZHVuZyBhbj8KUm9jaHVzOiBCZWkgREVOIE5hY2hiYXJuIG5pY2h0LgogIDxQYXVzZT4KICBJY2ggd29obmUgbmViZW4gZWluZW0gRnJpZWRob2YuCgpJbiBlaW5lbSBzcGFldGVyZW4gU3BpZWwgKFl5eXl5eSB3YXIgaW4gZGVtIHZvcmhlciBlcndhZWhudGVuIG5pY2h0IGRhYmVpKToKWXl5eXl5OiBSb2NodXMsIERlaW5lIE5hY2hiYXJuIHJ1ZmVuIGF1cyBkZW0gVXJsYXViIGFuLiBJaHIgU29obiBmZWllcnQKICBpbiBpaHJlciBBYndlc2VuaGVpdCBlaW5lIFBhcnR5LiBTYWdzdCBEdSBlcyBpaG5lbj8KKFh4eHh4eCB1bmQgZGllIGFuZGVyZW4gVGVpbG5laG1lciBkZXIgdm9yYW5nZWdhbmdlbmVuIFJ1bmRlIGdyaW5zZW4pClJvY2h1czogTmVpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5vY2htYWwgYXVzIGRlbSBadXNhbW1lbmhhbmcgZ2VyaXNzZW4gKFJvY2h1cywgMjEuIEF1ZyAxOTk4LCAxNDowNjoyNik6Ck1vcmdvdGg6IExlaWJuaXosIER1IHNwaWVsc3Qgd29obCBnZXJuZSBtaXQgRWllcm4uCkNhdHdlYXpsZTogQW5zY2hlaW5lbmQgbGllYmVyIG1pdCBkZW0gSW5oYWx0IHZvbiBFaWVybi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTa3J1cGVsIChSb2NodXMsIDIxLiBBdWcgMTk5OCwgMTQ6MTE6MzMpOgp+IyEgcm49Um9jaHVzIHJ0PTkwMzcwMDk3MiByZz1zY2htYXJybgp+IyEgdGlkPTkwMzcwMDk3MgpBZWgsIGljaCBoYWJlIG5vY2ggZGllIEZyYWdlIHZlcmdlc3NlbiAiUm9jaHVzLCBEZWluZSBOYWNoYmFybiBzaW5kCmdlcmFkZSBuaWNodCBEYSB1bmQgZXMgd2lyZCBmdWVyIHNpZSBlaW4gUGFrZXQgbWl0IDMwIERNIE5hY2huYWhtZQpnZWxpZWZlcnQuIE5pbW1zdCBEdSBlcyBmdWVyIHNpZSBhbj8iCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNrcnVwZWwgKEhhcmRpbCwgMjEuIEF1ZyAxOTk4LCAxNDoyMzoyOSk6Cn4jISBybj1Sb2NodXMgcnQ9OTAzNzAxNDkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTAzNzAwOTcyCgpEdSBzb2xsdGVzdCBuaWNodCB2ZXJnZXNzZW4sIFJvY2h1cywgZGFzcyBzcGVrdWxpZXJ0IHd1cmRlLCBvYiBCb2luZyBqZXR6dApleHl0cmEgZnVlciBEaWNoIGluIGRpZSBGcmllZGhvZnF1ZXN0IGVpbmUgU2F1bmEgZWluYmF1dC4KCkVpbiBWYW1waXIga29tbXQgYW4uCkRlciBWYW1waXIgc2FndDogS29tbSBtaXQgbWlyIGluIGRpZSBTYXVuYSwgU3RlcmJsaWNoZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcmdzIChaYXJuaXlhLCAyMi4gQXVnIDE5OTgsIDE5OjI1OjM5KToKZGFzIExlYmVuIGFscyBFeEVNIGlzdCBoYXJ0Li4uIHdlbm4gaWNoIHdhcyB6dSBzYWdlbiBoYWV0dGUsZCBhbm4gZ2FlYmUgZXMgbnUKZWluZW4gU3BpZWxlciB3ZW5pZ2VyOgoKU3JhYmkgdGVpbHQgRGlyIG1pdDogaGksIGthbm5zdCBkdSBtaXIgdmllbGxlaWNodCBtYWwgYml0dGUgaGVsZmVuPwp0bSBzcmFiaSB1bSB3YXMgZ2VodCBlcwpEdSB0ZWlsc3QgU3JhYmkgbWl0OiB1bSB3YXMgZ2VodCBlcwo+IFNyYWJpIHRlaWx0IERpciBtaXQ6IGljaCBicmF1Y2hlIGRyaW5nZW5kIHNpZWJlbiBzaWNoZXJlIGZwcywga2FubnN0IGR1IG1pcgpTcmFiaSB0ZWlsdCBEaXIgbWl0OiBzYWdlbiwgd28gd2VsY2hlIHNpbmQ/CgpEaWUgSnVnZW5kIHZvbiBoZXV0ZS4uLiBrYXVtIHp1IGZhc3Nlbi4KClphcm5peWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCBiaW4gbmljaHQgc3VlY2h0aWcgKFJvY2h1cywgMjMuIEF1ZyAxOTk4LCAwMjo1ODozOCk6CkljaCBiaW4gbmljaHQgc3VlY2h0aWcuLi4KLi4udW5kIGljaCBtdWRkZSBuaWNodCB2b20gUGFydHlyYXVtIGF1cy4uLiA7LSkKCmFlaCwgdW5kIGljaCBrb2VubnRlIGplZGVyemVpdCBhdWZob2VyZW4gOikKCiAgUm9jaHVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIGJpbiBuaWNodCBzdWVjaHRpZyAoR25vbWUsIDIzLiBBdWcgMTk5OCwgMDM6MzI6MzMpOgp+IyEgcm49Um9jaHVzIHJ0PTkwMzgzMzkxOCByZz1zY2htYXJybgp+IyEgdGlkPTkwMzgzMzkxOAp1bmQgaWNoLi4uIGFlaC4uLiBpY2ggYmluIGF1Y2ggbmljaHQgc3VlY2h0aWcuLi4KaWNoIG11ZGRlIGF1Y2ggbmljaHQgdm9uIGRlciBwYXJ0eSBhdXMuLi4gYWVoIDopKSkKCmljaCBrb2VubnRlIGF1Y2ggamVkZXJ6ZWl0IGF1ZmhvZXJlbiEgOikpKQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBcmdzIChTcmFiaSwgMjMuIEF1ZyAxOTk4LCAxODowNToyNik6Cn4jISBybj1aYXJuaXlhIHJ0PTkwMzgwNjczOSByZz1zY2htYXJybgp+IyEgdGlkPTkwMzgwNjczOQpBcmdsLCBqZXR6dCBzdGVoZSBpY2ggaW4gZGVyIFplaXR1bmcgIQoKSWNoIHdpbGwgZWlnZW50bGljaCBudXIgZWluZXMgS2xhcnN0ZWxsZW4sIGljaCB3b2xsdGUgS0VJTkUgRlAtTGlzdGUuCgpJY2ggaGFiZSBlaW5mYWNoIG51ciBnZWZyYWd0LCB3byBlaW4gcGFhciAiRlBzIiBsaWVnZW4sIGRhIGljaCBzZWl0IGVpbmVyCldvY2hlIG5pY2h0IG1laHIgd2VpdGVya29tbWUuCgpBbHNvLCBncmF0dWxpZXJ0IG1pciBuaWNodCwgdWViZXJyZWljaHQgbWlyIGtlaW5lIFRyb3N0cHJlaXNlIHVuZCBzcHJlY2h0IG1pY2gKYml0dGUgbmljaHQgbWVociBkYXJhdWYgYW4uCgpTcmFiaSwgZGVyIHNpY2ggYWVyZ2VydCwgZ2VmcmFndCB6dSBoYWJlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXJncyAoWmlsbHVzLCAyMy4gQXVnIDE5OTgsIDE4OjA5OjA5KToKfiMhIHJuPVNyYWJpIHJ0PTkwMzg4ODMyNiByZz1zY2htYXJybgp+IyEgdGlkPTkwMzgwNjczOQpBbHNvIGljaCB3aWxsIGVpbmUgRlAtTGlzdGUuIFdlciBzY2hpY2t0IG1pciBlaW5lIDstKSA/ClppbGx1cy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBudSB3aWVkZXIuLi4gKE5hY2h0d2luZCwgMjQuIEF1ZyAxOTk4LCAwNDo0MDowMSk6CkFuZHkgc2FndDogSGF0IGplbWFuZCBLaXJrIGdlc2VoZW4/CkFuZHkgc2FndDogSGlwcGUsIGJpc3QgRHUgaW0gUlo/CkhpcHBlIGZyYWd0IDogV2FydW0gc2FndCBBbmR5ICdIaXBwZSwgYmlzdCBEdSBpbSBSWj8nID8KQW5keSBncnVlc3N0IEhpcHBlLgpIaXBwZSBzYWd0IDogJ0ljayB1biBtZW5lIEJlRGVCZSAxMS80MC4nCkhpcHBlIGdlaHQgbmFjaCBOb3JkZW4uCkFuZHkgc2FndDogSGFsdCdzIE1hdWwsIEhpcHBlIQpBbmR5IGdlaHQuCgpOYWNodHdpbmQgZGVua3QgLiBvIE8gKE5QQ3MhKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFsIHdpZWRlciBlaW4gcGFhciBXb3J0ZSBhdXMgZGVtIE11bmRlIHVuc2VyZXIgVm9sa3N2ZXJ0cmV0ZXIuLi4gKFR1bml4Z3V0LCAyNC4gQXVnIDE5OTgsIDA3OjUxOjQ1KToKR2VzdGVybiBpbSBSYWhtZW4gZWluZXIgV2VyYmV2ZXJhbnN0YWx0dW5nOgpLaW5nIEt1cnQ6IFdhZXJlIFNjaHJvZWRlciBkaWUgVGl0YW5pYywgaGFldHRlIGRhcyBTY2hpZmYgZGVuIEhhZmVuIE5JRQogICAgICAgICAgIHZlcmxhc3Nlbi4KICAgICAgICAgICBXYWVyZSBIZWxtdXQgS29obCBkaWUgVGl0YW5pYywgd2FlcmUgZGVyIEVpc2JlcmcgZ2VzdW5rZW4hCidzIEthcmF0ZS1ad2VyY2hsZSAtIG1laW50ICJXaWUgd2Fociwgd2llIHdhaHIuLi4uIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUHJvbXB0IGVybGVkaWd0Li4uIDpvKSAoVHVuaXhndXQsIDI0LiBBdWcgMTk5OCwgMDc6NTQ6NTMpOgpEdSB0ZWlsc3QgRWxlbmRpbCBtaXQ6IExvZ2dzdGUgRGljaCBtYWwga3VyeiBhdXMsIGRhbm4gYmluIGljaCBhdWNoIG1hbCBkZXIKRHUgdGVpbHN0IEVsZW5kaWwgbWl0OiBob2VjaHN0ZSBTZWhlciBpbSBTcGllbCEgO28pKSkKRWxlbmRpbC0+VHVOaXhHdXQgZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBhbi4KRWxlbmRpbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKWmFjYXR0IHJ1ZnQ6IFR1bml4Z3V0IGlzdCB1bnNlciBNZWlzdGVyIDopCldlbm4gc2llIGRvY2ggYmxvc3MgQUxMRSBzbyBhdWYgbWljaCBob2VyZW4gdGFldGVuLi4uCidzIEthcmF0ZS1ad2VyY2hsZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBhdWYgbWVpbmVtIFJ1ZWNrc2l0eiAoVGVkZHksIDI0LiBBdWcgMTk5OCwgMDg6NTE6MjYpOgpGcmVpdGFnIEtudXJ0IGF1ZiBTbm90dHlzIFNjaG9zcyBzaXR6ZW5kOiBIYWx0IGlobiBmZXN0LCBpY2ggbWFjaCBpaG4gbGFlbmdlci4KU29ubnRhZyBGcnVlaCBLbnVydCB6dSBSaW5nb3I6IGhhYiBpY2ggZGVpbmVuPyBOaW1tIG5lbiBhbmRlcmVuLgoKVGVkZHksIGhhdCBzaWNoIE5JQ0hUIHVtZ2VkcmFodCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTW9yZ290aCB1bmQgSGF1c3RpZXJlIC4uLiAoRnJvZ2h1bnRlciwgMjQuIEF1ZyAxOTk4LCAxMjoxODozNCk6CkdlcmFkZSBhbSBTYW5kdGlnZXI6CgpEdSB6aWVoc3QgZGVuIE1vcmdvdGgtaXN0LXN1ZXNzLUJ1dHRvbiBhbi4KR2hhbmRpIHdpcmZ0IERpciBlaW5lbiBza2VwdGlzY2hlbiBCbGljayB6dS4KCkhhdXN0aWVyZSBtdWVzc2VuIHdvaGwgbm9jaCB1ZWJlcnpldWd0IHdlcmRlbiAuLi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1Y2ggTHVnIGthbm4ncy4uLiAoQW5hdG9sLCAyNC4gQXVnIDE5OTgsIDE0OjU0OjU2KToKCkx1ZyAodm9ybnVlYmVyZ2ViZXVndCB1bmQgbmFjaGRlbmtsaWNoKTogSWNoIG1laW5lLCBlciBpc3QgbGFlbmdlciBnZXdvcmRlbi4uLgoKQW5hdG9sIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc3Vlc3MgKENhbGltZXJhLCAyNC4gQXVnIDE5OTgsIDE2OjA4OjM1KToKPiB1bnQgc2F0YW4KRGVyIExlaWJoYWZ0aWdlIHN0ZWh0IHZvciBEaXIuIEF1cyBzZWluZW4gTnVlc3Rlcm4gZHJpbmd0IGR1bmtsZXIgUmF1Y2guIEVyCnN0aW5rdCBuYWNoIFNjaHdlZmVsLCB3aWUgZWJlbiBudXIgZGVyIFNhdGFuIHN0aW5rZW4ga2Fubi4gU2VpbmUgSG9lcm5lcgpzY2hlaW5lbiBudXIgZGFyYXVmIHp1IHdhcnRlbiwgRGljaCB6dSBkdXJjaGJvaHJlbi4gRWluZSB0b2VkbGljaGUgQXVyYSB1bWdpYnQKaWhuLiBBbGxlcyBCb2VzZSBpc3QgaGllciBpbiBlaW5lbSB2ZXJlaW50LiBTaWVoIHp1LCBkYXNzIER1IGhpZXIKdmVyc2Nod2luZGVzdC4KRXIgaXN0IGFic29sdXQgZml0LgpTZWluZSBUZXVmZWxzaG9lcm5lciBsYXNzZW4gaWhuIHJpY2h0aWcgYm9lc2UgYXVzc2VoZW4uCkVyIHRyYWVndCBiZWkgc2ljaDoKRWluIE1vcmdvdGgtaXN0LXN1ZXNzLUJ1dHRvbiAoYW5nZXpvZ2VuKS4KRWluIFBhYXIgVGV1ZmVsc2hvZXJuZXIgKGFuZ2V6b2dlbikuCkVpbiBEYWVtb25lbmF1Z2UuClNhdGFucyBLbHVtcGZ1c3MuCgoKQ2FsaW1lcmEsIHVuc2NodWxkaWdwZmVpZmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIFd1Y2h0IGRlcyBLbnVkZGVsbnMhISEgKFNyYWJpLCAyNC4gQXVnIDE5OTgsIDIxOjEwOjQ2KToKQmVpIFRvdGVua29wZnMgQWJzY2hpZWQKCkRlaW4gRnJldW5kIFRvdGVua29wZiBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUufCAgICAgICAgICAgICA4ODg4ICAgOCAgIDggCjg4ODg4ICA4ODg4OCAgODg4ODggIDg4ODg4ICAgODg4CjggICA4ICA4ICAgOCAgOCA4IDggIDggOCA4ICA4IDggOCAgOCAgICAgICA4OAo4ODg4ICAgOCAgIDggIDggOCA4ICA4IDggOCAgOCA4IDggIDg4ODg4ICAgOAo4ICAgOCAgOCAgIDggIDggICA4ICA4ICAgOCAgOCAgIDggICAgICA4CjggICA4ICA4ODg4OCAgOCAgIDggIDggICA4ICA4ICAgOCAgODg4ODggICA4CnxEZXIgS25hbGwgcmF1YnQgRGlyIGRpZSBCZXNpbm51bmcsIGRlciBSZXN0IGRlciBFeHBsb3Npb24gRGVpbmUgdmVyYmxpZWJlbmVuCkxlYmVuc3B1bmt0ZS4KCgpTcmFiaSwgZXR3YXMgZ2VzY2hvY2t0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFJpbmdvciwgMjQuIEF1ZyAxOTk4LCAyMjoxNDoyNyk6CltaYXViZXJlcjpSZWFwZXJdIEhhZXR0ZSBlaW5lciBMdXN0IG1pciB6dSBoZWxmZW4gbWVpbmUgU2FjaGVuIHdpZWRlciBhdXMgZGVtCltaYXViZXJlcjpSZWFwZXJdIFN0cnV2IHp1IGhvbGVuID8hIGljaCBmdWVyY2h0ZSBkaWUgc2luZCBpcmdlbmR3aWUgaGludGVyIG1pcgpbWmF1YmVyZXI6UmVhcGVyXSBoZXIgdW5kIGljaCBoYWIgc2Nob24gd2llZGVyIG51ciBub2NoIDIwIExQUy4uLiA8MjI6MTE6MDI+CltUb2Q6TGFyc10gWnpycnJrbCBoYXQgZ2VyYWRlIFJlYXBlciB1bWdlYnJhY2h0LiA8MjI6MTI6Mzk+CgpKdXAsIHdhcmVuIHNpZS4KClJpbmdvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc3RpbW10ISAoVGhlcmluLCAyNC4gQXVnIDE5OTgsIDIyOjE5OjE0KToKW1NlaGVyOkdhdG9dIFNvIGVpbiBibG9lZGVyIFNjaGVtZW4uLi4gMjI6MTg6NDMKW1RvZDpMYXJzXSBFaW4ga2xlaW5lciBTY2hlbWVuIGhhdCBnZXJhZGUgR2F0byB1bWdlYnJhY2h0LiAyMjoxODo0NwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyA7KSAoQW5hdG9sLCAyNS4gQXVnIDE5OTgsIDAwOjAwOjAzKToKQ2FrZXkgcnVmdDogISYkIychISBHcnViZSEKW1RvZDpMYXJzXSBFaW4gTGVpY2huYW0gaGF0IGdlcmFkZSBDYWtleSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBMZWljaG5hbV0gSWNoIHdlcmRlIERlaW4gc2Nob2VuZXMgR2VzaWNodCB6ZXJmZXR6ZW4uCgpHdXQsIGRhc3Mgd2lyIG5pY2h0IHJhZXRzZWxuIG11ZXNzZW4sIHdlbGNoZXIgTGVpY2huYW0gZGFzIHdvaGwgZ2V3ZXNlbiBpc3QuCkFuYXRvbCA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCYXN0YXJkIG9wZXJhdG9yIGZyb20gaGVsbCAoSmFua2EsIDI1LiBBdWcgMTk5OCwgMDA6MTM6MzcpOgoKRnVlciBhbGxlIGRpZSBlcyBub2NoIG5pY2h0IGtlbm5lbi4KRWluZSBkZXIgYmVzdGVuIEdlc2NoaWNodGVuLCBkaWUgaWNoIHNlaXQgbGFuZ2VtIGdlbGVzZW4gaGFiZS4KRnVlciBhbGxlIFN5c3RlbW9wZXJhdG9ycyBlaW4gYWJzb2x1dGVzIE1VU1MhCgpodHRwOi8vbWVtYmVycy5hb2wuY29tL21ya2FlaGxlcjMvYmFzdGFyZC9vcGVyYXRvci9vcGVyYXRvci5odG0KCkphbmthLCB2ZXJzdGVodCBqZXR6dCBzbyBlaW5pZ2VzLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUm9jaHVzIGhhbHQuLi4gKE9tLCAyNS4gQXVnIDE5OTgsIDAxOjI5OjE0KToKClNpbHZhbmEga29tbXQgYW4uClJvY2h1cyBmcmFndCBTaWx2YW5hOiBIYXN0IER1IENvbGEgbWl0Z2VicmFjaHQ/ClNpbHZhbmEgc2FndDogTm9lLgpSb2NodXMgc2FndDogR3JyciEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG9uIHdpZWRlciBkaWVzZXMgTlBDcyAoUXVpY2ssIDI1LiBBdWcgMTk5OCwgMDQ6NDg6MTkpOgpbdW50IGVsc3Rlcl0KCkRpZXNlciBWb2dlbCBpc3QgYmVydWVobXQgZnVlciBzZWluZW4gYXVzZ2V3YWVobHRlbiBHZXNjaG1hY2ssIHdhcyBrbGVpbmUsCndlcnR2b2xsZSBHZWdlbnN0YWVuZGUgYmV0cmlmZnQuIEVyIGhhdCBhdWNoIHNjaG9uIGVpbiBBdWdlIGF1ZiBEZWluZQpBdXNydWVzdHVuZyBnZXdvcmZlbi4gR2liIEFjaHQhClNpZSBpc3QgYmVpIDEwMCUuCk1pdCBpaHJlciBTZWhlci1GQVEgb3V0ZXQgc2llIHNpY2ggYWxzIFd1cnN0c2VoZXJpbi4KU2llIHRyYWVndCBiZWkgc2ljaDoKRGllIFNlaGVyRkFRLgoKSmV0enQgc2Nob24gV3Vyc3RzZWhlciB1bnRlciBkZW4gTlBDcyEgV2FzIGtvbW0gYWxzIG5hZWNoc3Rlcz8/CgpRdWljay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1vcmdvdGggdWViZXJ0cmVpYnQgPyAoTmViLCAyNS4gQXVnIDE5OTgsIDE0OjE5OjE1KToKRGVpbiBGcmV1bmQgTm92YXN0b3JtIHRlaWx0IERpciBtaXQ6IEthcmF0ZWthcyBhYndlcnRlbiEKLi4uCltUb2Q6TGFyc10gRWluIEZldWVyd2VzZW4gaGF0IGdlcmFkZSBOb3Zhc3Rvcm0gdW1nZWJyYWNodC4KClNvc28sIGpldHp0IHNpbmQgc2Nob24gZGllIEZldWVyd2VzZW4gaW4gZGVuIEthdGFrb21iZW4gS2FyYXRla2FzID8KCk5lYiwgd3VlcmRlIGRhcyBhdWNoIG5pY2h0IG1laHIgd3VuZGVybiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWndlcmdlIChOb3Zhc3Rvcm0sIDI1LiBBdWcgMTk5OCwgMTU6NDg6NDkpOgoKVHVmZmkgc3Rpbmt0IGZ1ZXJjaHRlcmxpY2guIEVpbiBTY2h3YXJtIFNjaG1laXNzZmxpZWdlbiB1bWtyZWlzdCBpaG4KYXVmZ2VyZWd0LgpUdWZmaSBzb2xsdGUgYmVzc2VyIHZlcnNjaHdpbmRlbiwgc29uc3Qgd2lyZCBEaXIgc2NobGVjaHQuCkVpbiBGdXJ6IGlzdCBoYXJtbG9zIGdlZ2VuIFR1ZmZpcyBHZXN0YW5rIQoKICAgICBOb3ZhKiAoa2ljaGVybmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqbGFjaCogKE5vdmFzdG9ybSwgMjUuIEF1ZyAxOTk4LCAxNzoxMDoxMyk6CkRlbCBydWZ0OiB3aHJlIGxpZWJlIGdpYnQncyBudXIgdW50ZXIgZnJhdWVuIDopKQpEdSBob2Vyc3QgZWluIGxlaXNlcyBLaWNoZXJuLgogCiAgIE5vdmEqIChzYWd0IHNvbnN0IG5peCB6dSkgOikpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgaXN0IG1pdCBSb2NodXMgbG9zPyAoV2FyZ29uLCAyNi4gQXVnIDE5OTgsIDEyOjExOjIyKToKSXN0IFJvY2h1cyBnZWdlbiBlaW4gRG91YmxlIGF1c2dldGF1c2NodCB3b3JkZW4/IEJlaSBkZXIgUGFydHkgYmxpZWJlbiA2CihzZWNocyEpIEtpc3RlbiBDb2xhIHVlYnJpZywgdW5kIGdlc3Rlcm4gYmVpbSBTdGFtbXRpc2NoIGhhdCBlaW5lIFJvY2h1cyBzdGFyawphZWhuZWxuZGUgUGVyc29uIGVpbmUgX2tsZWluZV8gQ29sYSBiZXN0ZWxsdCEKV28gaXN0IGRlciBlY2h0ZSBSb2NodXM/Ck9kZXIgaGF0dGVyIHNpY2ggbmVuIEZyaXNiZWUgYW4gZGVuIEtvcGYgZ2V3b3JmZW4gdW5kIGxhYm9yaWVydCBub2NoIGFuIGRlbgpTcGFldGZvbGdlbj8KU2FjaGRpZW5saWNoZSBIaW53ZWlzZSBuaW1tdCBqZWRlcyBSYWV1YmVyZ2VidWVzY2ggZW50Z2VnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqd3VmZiogKFdvb2R5LCAyNi4gQXVnIDE5OTgsIDEyOjIzOjIxKToKPiB0cmV0ZSBiZXJuaGFyZGluZXIKVG90ZSBTYWNoZW4gdHJpdHQgbWFuIG5pY2h0IGF1Y2ggbm9jaCEKCktlaW4gV3VuZGVyLCBzbyBvZnQgd2llIGRlciBzY2hvbiBMZXV0ZSB1ZWJlciBkZW4gUGFzcyBnZWxvdHN0IGhhdDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhqYSA6LSkpIChOb3Zhc3Rvcm0sIDI2LiBBdWcgMTk5OCwgMTI6Mjk6NDUpOgpbVG9kOkxhcnNdIExlbWJvbGQgaGF0IGdlcmFkZSBKdW5ncGFwc3QgdW1nZWJyYWNodC4KVmFsYSBNb3Jnb3RoIHJ1ZnQ6IGdydWVzc2UgYXVzIGRlciBzY2h3ZWl6IDstKSkKCiAgICBOb3ZhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBiZWltIHNhbmR0aWdlciAoSmFzb25yaWdpZCwgMjYuIEF1ZyAxOTk4LCAxNjowMDo0Mik6CkVpbiBTYW5kdGlnZXJiYWJ5IGtvbW10IGFuLgpNYXRpcyBrbGV0dGVydCBhcmcgemVyc2NodW5kZW4gYXVzIGVpbmVyIEZhbGxncnViZSBoZXJhdXMuCk1hdGlzIGhhdXQgbmFjaCBPc3RlbiBhYi4KU2hvcmthbiAgbXVybWVsdDogSWxsdWh4aW8gZnVsaHJheHRyaiB3aHUhIHVuZCBzcHJpbmd0IGhlcmVpbi4KVGFyaW5hIHZlcnNjaHdpbmRldCBtaXQgS25hbGwgdW5kIFNjaHdlZmVsZHVmdC4KU2FuZG1hbm4gcnVmdDogQmFsZCBiaW4gaWNoIGVpbiBTZWhlciEgICA6KQpDb2xsZWN0ZSBnZWh0IGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgpUYXJpbmEgdHJpdHQgYXVzIGVpbmVyIFNjaHdlZmVsd29sa2UuClNob3JrYW4gZ3JpbnN0LgpUYXJpbmEgdmVyc2Nod2luZGV0IG1pdCBLbmFsbCB1bmQgU2Nod2VmZWxkdWZ0LgpNYXRpcyBrb21tdCBnYW56IGF1c3NlciBBdGVtIGhlcmVpbmdlc3R1ZXJ6dC4KRWluIFNhbmR0aWdlciBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KCkhtLCB3YXMgd2FyIGRhcmFuIGpldHp0IHNvIHdpdHppZyA/IERhc3MgU2FuZG1hbm4gU2VoZXIgd2VyZGVuIHdpbGwgPyBPZGVyIGlzdApkZXIgVGlnZXIgc2Nob24gc28gb2Z0IG1pdCBkZW0gTWVzc2VyIHZvbiBHaWFubmkgYmVhcmJlaXRldCB3b3JkZW4sIGRhc3MgZXIKc2VpbmUgTmFjaGtvbW1lbnNjaGFmdCB2ZXJsZXVnbmV0ID8KCkphc29uLCBzY2htdW56ZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcyBpc3QgbWl0IFJvY2h1cyBsb3M/IChSYW50YW5wbGFuLCAyNi4gQXVnIDE5OTgsIDE5OjQ5OjMzKToKfiMhIHJuPVdhcmdvbiBydD05MDQxMjYyODIgcmc9c2NobWFycm4KfiMhIHRpZD05MDQxMjYyODIKKkpVQkVMIElDSCBCSU4nUyBESUVTTUFMIF9OSUNIVF8gaWNoIHdpZWRlcmhvbGUgX05JQ0hUXyBTY2h1bGQuCgpKYXdvbGwgaWNoIGRlciBPZSogZGVyIHNjaHJlY2tlbiBhbGxlciBLYXNzaWVyZXIgaGF0CkJFLVpBSC1MVAoKSGEsIGZpZXNlcyBQQWNrIGthbm4gbmljaHQgbWFsIHNlaW5lIFJlY2hudW5nZW4gYmVnZWxpY2hlbi4uLgoKWkVDSFBSRUxMRVIsIEFTSVMsIEFMTEUgISA7LSkKCk9lKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdXBzLCBzb3JyeSA7KSAoVGFuaXMsIDI2LiBBdWcgMTk5OCwgMjA6MzE6MjgpOgp3dW5kZXIKRHUgd2lya3N0IGVpbiBXdW5kZXIuCkVpbiB6aWVtbGljaCBkdWVycmVyIE1hbm4gbWl0IFNlbnNlIGVpbHQgdm9yYmVpLgoKVG9kIEVpbiBXYXNzZXJnZWlzdCBoYXQgZ2VyYWRlIENodHVyciB1bWdlYnJhY2h0LgoKCnNvcnJ5LCB3YXIgbmljaHQgYmVhYnNpY2h0aWd0IC4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIDooIChUYW5pcywgMjYuIEF1ZyAxOTk4LCAyMzo1NToxNCk6CkFlbmVhcyB0ZWlsdCBEaXIgbWl0OiBsYWV1ZnQgamEgZ3V0IG1pdCB1bnMgendlaWVuIDopCkFlbmVhcyBzY2h3ZW5rdCBzZWluZW4gU2lsYmVycG9rYWwuCldpbmZyaWVkIHRyaWZmdCBBZW5lYXMgaGFydC4KRXMgZG9ubmVydC4KQWVuZWFzIGdyZWlmdCBXaW5mcmllZCBtaXQgZWluZW0gRHJhY2hlbnNjaHdlcnQgYW4uCkFlbmVhcyB0cmlmZnQgV2luZnJpZWQgc2VociBoYXJ0LgpBZW5lYXMgbWFjaHQgZWluZSBGaW50ZSBnZWdlbiBXaW5mcmllZC4KQWVuZWFzIHN0ZWNrdCBlaW4gRHJhY2hlbnNjaHdlcnQgenVydWVjay4KQWVuZWFzIHp1ZWNrdCBlaW4gcGVjaHNjaHdhcnplcyBTY2h3ZXJ0LgpBZW5lYXMgc2NobGFlZ3QgV2luZnJpZWQgcGxvZXR6bGljaCB1bmQgdm9lbGxpZyB1bmVyd2FydGV0IG1pdCBlaW5lbQpwZWNoc2Nod2FyemVuIFNjaHdlcnQuCkFlbmVhcyB6ZXJzY2htZXR0ZXJ0IFdpbmZyaWVkIGluIGtsZWluZSBTdHVlY2tjaGVuLgpoIGFlbmVhcwpEdSBzcHJpY2hzdCBkaWUgSGVpbGVuZGVuIFdvcnRlIHVlYmVyIEFlbmVhcy4KRXIgZnVlaGx0IHNpY2ggamV0enQgc2VociB2aWVsIGJlc3Nlci4KQWVuZWFzIGdyZWlmdCBXaW5mcmllZCBtaXQgZWluZW0gcGVjaHNjaHdhcnplbiBTY2h3ZXJ0IGFuLgpXaW5mcmllZCBrb256ZW50cmllcnQgc2ljaCBhdWYgc2VpbmVuIEdsYXViZW4gdW5kIHdpcmQgcGxvZXR6bGljaCBzY2huZWxsZXIuCkFlbmVhcyB0cmlmZnQgV2luZnJpZWQgc2VociBoYXJ0LgpEYXMgS3JldXogdWViZXIgZGVtIEFsdGFyIGJlZ2lubnQgenUgZ2x1ZWhlbi4gRWluIEJsaXR6IGxvZXN0IHNpY2ggZGFyYXVzLApmbGllc3N0IGluIFdpbmZyaWVkcyBIYW5kIHVuZCB3aXJkIGF1ZiBBZW5lYXMgYWJnZWxlbmt0IQpXaW5mcmllZCB0cmlmZnQgQWVuZWFzIGhhcnQuCjoKOgpBZW5lYXMgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KKFRvZDpMYXJzKSBXaW5mcmllZCBoYXQgZ2VyYWRlIEFlbmVhcyB1bWdlYnJhY2h0LgooVG9kOldpbmZyaWVkKSBEYXMgR3V0ZSBzaWVndCBpbW1lciEKCipzY2huaWVmKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNdHYsIDI3LiBBdWcgMTk5OCwgMDA6MjE6NDEpOgpQcm9nIHRlaWx0IERpciBtaXQ6IGthbm5zdCBkdSBkaWUgZ29ibGlucyB0b2V0ZW4/CgpUb2Q6TGFycyBFaW4gR29ibGluIGhhdCBnZXJhZGUgUHJvZyB1bWdlYnJhY2h0LgoKdXBzLCBsYXNzIGVzIGRvY2ggc2VpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTnVyIGZ1ZXIgQzQgKFRlZGR5LCAyNy4gQXVnIDE5OTgsIDAxOjU3OjQ1KToKRGFtaXQgZHUgbmFjaGhlciB3YXMgenUgbGVzZW4gaGFzdCA7KQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZ1ZXIgWmVwaHlyIChUaGVyaW4sIDI3LiBBdWcgMTk5OCwgMDE6NTc6NTkpOgoKc2Nob25tYWwgZGVuIEJlZ2lyZmYgIlRhbnRhbHVzcXVhbGVuIiBnZWhvZXJ0PwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlZmx1ZWdlbCBoYWx0LiAoTWluZGJsYWRlLCAyNy4gQXVnIDE5OTgsIDAyOjQyOjM5KToKRWJlbiBpbiBkZW4gS2F0YWtvbWJlbjoKCkVpbiBWYW1waXJzY2h3ZXJ0LgpFaW4gVmFtcGlycGFuemVyLgpFaW4gSGVyei4KCgpaZXBoeXIgc2FndDogIEVpbiBIZXJ6IC0gZXMga29lbm50ZSBkdXJjaGF1cyB2b24gZWluZW0gSHVobiBzdGFtbWVuLgoKW3NjaGF1XQoKRWluIFZhbXBpcnNjaHdlcnQuCkVpbiBWYW1waXJwYW56ZXIuCkVpbiBIZXJ6LgpEZXIgU2NoYXR0ZW4gdm9uIE5hY2h0d2luZCBzdGVodCBtYWwgd2llZGVyIGR1bW0gcnVtLgpbTWV0emVsdGVhbTpHZWZsdWVnZWxdIGBgSXJvbiBXaWxsJycgTmFjaHR3aW5kIChaYXViZXJ3YWNodGVsLCBsZWNrZXIpLgpbTWV0emVsdGVhbTpHZWZsdWVnZWxdIEtpdHplbGhleGUgWmVwaHlyIGF1ZiBBdWZob2xqYWdkIChLYW1wZmh1aG4sYnJ1ZXRlbmQpLgoKTm9jaCBGcmFnZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprYWVtcGZlciAuLi4gKFRhbmlzLCAyNy4gQXVnIDE5OTgsIDEzOjQwOjU3KToKKFRydmVzOkJvaW5nKSBzbywgamV0enQgaXN0IGRlciBuZXVlIHNjaG5lbGxrYW1wZiBkcmFuIC4uLiBpY2ggbmVobWUKKFRydmVzOkJvaW5nKSB0ZXN0ZXJnZWJuaXNzZSBnZXJuIGVudGdlZ2VuIDspCihNb2VyZGVyOkdlaXN0IGVpbmVzIEhvZWxsZW5kcmFjaGVuKSBadXIgSG9lbGxlIG1pdCAuLi4gTWlyLCBLaXU/IT8KCgpEQVMgZ2luZyBqYSBudW4gZWNodCBTQ0hORUxMIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdXNyZWRlIGRlcyBUYWdlcyAoQmllbGVmZWxkLCAyNy4gQXVnIDE5OTgsIDEzOjUwOjI1KToKR3JhZGUgZWJlbjoKCltUcnZlczpUZWRkeV0gS2FlbXBmZXIgYWJ3ZXJ0ZW4gOykKW1RydmVzOkJvaW5nXSBpY2ggaGFiJ3MgdmVyc3VjaHQgLi4uIGVzIGdpbmcgbmljaHQgOykKCkJpZWxlZmVsZCwga29wZnNjaHVldHRlbG5kLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgaXN0IGRlbm4gamV0enQgZGFzIG9kZXIgc28/IChBenp1cm8sIDI3LiBBdWcgMTk5OCwgMTg6MjY6MjgpOgpGTFcgLSBPZGVyIG1hbmNoZSBrb2VubmVuIHNpY2ggbmljaHQgZW50c2NoZWlkZW46CltCZWlsZWlkOlNoYW5uYXJhXSBpY2ggYmluIGF1Y2ggYmFsZCB3ZWcuLi4gd2FocnNjaGVpbmxpY2ggZGVyIHBhcmEtdHJvbGxtb3BzCltCZWlsZWlkOlNoYW5uYXJhXSBvZGVyIHNvCiBbVG9kOkxhcnNdIEVpbiBXYWxkZ2Vpc3QgaGF0IGdlcmFkZSBTaGFubmFyYSB1bWdlYnJhY2h0LgouLi4gMSBNaW4uIHNwYWV0ZXIgLi4uCltUb2Q6TGFyc10gU2hpcm9rYXQgaGF0IGdlcmFkZSBTaGFubmFyYSB1bWdlYnJhY2h0LgpbVG9kOlNoaXJva2F0XSBIYSBoYSBoYSBoYSBoYSEKCkFsc28gZWlucyBpc3Qgc2ljaGVyLCBkZXIgcGFyYS10cm9sbG1vcHMgd2FyIGVzIG5pY2h0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIE1hZ2llciBrb2VubnRlbiBtYWwgbmVuIElkZWwtQ2x1YiBhdWZtYWNoZW4gKFNoYW5uYXJhLCAyNy4gQXVnIDE5OTgsIDE4OjMyOjQzKToKPiA+ICAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEb24sIDI3LiBBdWcgMTk5OCwgMTg6MzE6NDAgKDYgVGVpbG5laG1lcikKUXVpbGxpYW4uLi4uLi4uSS5NIEZyYW56Li4uLi4uLi4uLkkuTSBUc3VuYW1pLi4uLi4uLi5pLk0gQXp6dXJvLi4uLi4uLi4uLi5NCktldG9zLi4uLi4uLi4uLkouUiBSdW1hdGEuLi4uLi4uLi5qLkcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWUgTWFnaWVyIGtvZW5udGVuIG1hbCBuZW4gSWRlbC1DbHViIGF1Zm1hY2hlbiAoQXp6dXJvLCAyNy4gQXVnIDE5OTgsIDE4OjM0OjUzKToKfiMhIHJuPVNoYW5uYXJhIHJ0PTkwNDIzNTU2MyByZz1zY2htYXJybgp+IyEgdGlkPTkwNDIzNTU2MwpXdWVyZGUgamEgZ2VybmUgbWl0bWFjaGVuLCBTaGFubmFyYS4KQWJlciBlaW5lciBtdXNzIERlaW5lIHVuZmFlaGlnZW4gVG9kZSBqYSBpbiBkaWUgTVBBIHBvc3Rlbi4gOykKQXp6dXJvLCBnZWh0IGpldHp0IGF1Y2ggaWRsZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbiB3dW5kZXJ0cz8gKEF6enVybywgMjcuIEF1ZyAxOTk4LCAxODo0ODozNyk6CltEZWJ1ZzpFYmVuZV0gRmVobGVyOiAiRXMgaXN0IGVpbiBzY2h3ZXJ3aWVnZW5kZXIgQXVzbmFobWVmZWhsZXIgYmVpbSBDbG9uZW4KW0RlYnVnOkViZW5lXSBkZXIgUGl6emEgYSBsYSBCaWxsIEdhdGVzIGF1ZmdldHJldGUiLCBPYmpla3Q6CltEZWJ1ZzpFYmVuZV0gZC9lYmVuZS9yb29tL1BvcnRWYWluL3BpenphLCBQcm9ncmFtbToKW0RlYnVnOkViZW5lXSAiL2QvZWJlbmUvcm9vbS9Qb3J0VmFpbi9waXp6YS5jIiwgWmVpbGUgNDUwIChHbG9pbgpbRGVidWc6RWJlbmVdIEZlaGxlcjogIkVzIGlzdCBlaW4gc2Nod2Vyd2llZ2VuZGVyIEF1c25haG1lZmVobGVyIGJlaW0gQ2xvbmVuCltEZWJ1ZzpFYmVuZV0gZGVyIFBpenphIGEgbGEgQmlsbCBHYXRlcyBhdWZnZXRyZXRlIiwgT2JqZWt0OgpbRGVidWc6RWJlbmVdIGQvZWJlbmUvcm9vbS9Qb3J0VmFpbi9waXp6YSwgUHJvZ3JhbW06CltEZWJ1ZzpFYmVuZV0gIi9kL2ViZW5lL3Jvb20vUG9ydFZhaW4vcGl6emEuYyIsIFplaWxlIDQ1MCAoWmlubykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZW4gd3VuZGVydHM/IChBbHBoYSwgMjcuIEF1ZyAxOTk4LCAxOTowODoyNyk6Cn4jISBybj1Benp1cm8gcnQ9OTA0MjM2NTE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA0MjM2NTE3CkRhcyB3YXIgZG9jaCBBYnNpY2h0LCBwdXJlIEFic2ljaHQgd2FyIGRhcyEKQWxwaGEgd2Vpc3MgZXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaWhpIDotKSAoTWlyYWthLCAyNy4gQXVnIDE5OTgsIDE5OjMxOjM1KToKQW5uYXB1bmEgc2FndDogTnVuLCBpbSBIb2JiaXQtRG9yZiBpc3QgaGV1dGUgZWluZSBUcmF1ZXJmZWllciA7KQpVbmlwdW1hIGxhY2h0LgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBFem8gdW1nZWJyYWNodC4KVW5pcHVtYSBzYWd0OiBHZXNjaGllaHQgaWhtIHJlY2h0IQpTb3dhcywgZGFiZWkgd2FyJ3MgZG9jaCBudXIgZWluIFp3ZXJnIC4uLgoKTWlyYWthIGxhY2h0IHNpY2ggdHJvdHpkZW0gc2NoaWVmIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIHNlaCcgYWxsZXMgZG9wcGVsdCA6KSAoTWlyYWthLCAyNy4gQXVnIDE5OTgsIDIyOjExOjM5KToKRHUgc3RlaWdzdCBkaWUgbGlua2UgU2VpdGVudHJlcHBlIGVtcG9yIHVuZCBnZWxhbmdzdCBpbiBlaW5lbiBsYW5nZW4gR2FuZy4gRHUKaGFzdGVzdCBpaG4gZW50bGFuZywga2xvcGZzdCBhbiB1bnphZWhsaWdlbiBUdWVyZW4gb2RlciB2ZXJzdWNoc3QsIHNpZSB6dQpvZWZmbmVuLiBFaW5lIFR1ZXIgb2VmZm5ldCBzaWNoIHNvZ2FyLCB1bmQgRHUgdHJpdHRzdCBlaW4uCkluIGVpbmVyIEFtdHNzdHViZS4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHJhdXMuCkVpbiBrbGVpbmVyIEZyb3NjaCBuYW1lbnMgVG9yd2FsbCAoMikuClZlbG9jaXR5IGRlciBPYmVyZ2xhZGlhdG9yLgpUd2luc2VuIGRlciBEYWVtb25lbi1CZXNjaHdvZXJlci4KT29oIGRlciBXYW5kZXJnZXNlbGxlLgpFaW4gZ2VsYW5nd2VpbHRlciBCdWVyb2tyYXQuCkVpbiBnZWxhbmd3ZWlsdGVyIEJ1ZXJva3JhdC4KCgpISUdHUyA6KQoKTWlyYWthIHNhZXVmdCBkb2NoIG5pY2h0IGV0d2E/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXIgTWFleGNoZW50aXNjaC4uLiAoS3JycmNrcywgMjcuIEF1ZyAxOTk4LCAyMzo0MzoxMSk6Cgo+dW50IHRpc2NoCkRlcnplaXQgc2l0enQgbm9jaCBuaWVtYW5kIGFtIFRpc2NoIHVuZCBzcGllbGVuIE1hZXhjaGVuLiBXZW5uIER1IG1vZWNodGVzdCwKa2FubnN0IER1IGphIGVpbiBiaXNzY2hlbiB6dXNjaGF1ZW4uCgouIG8gTyAoSW50ZXJlc3NhbnQuLi4gOykpKSkpKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1Y2ggbmljaHQgc2NobGVjaHQ6IChHbG9pbnNvbiwgMjguIEF1ZyAxOTk4LCAwMjoyODozMSk6CkRpZSBOb3Jkd2FuZCBiZXN0ZWh0IG51ciBhdXMgRmxhbW1lbiwgYWJlciB3ZW5pZ3N0ZW5zIGZpbmRlc3QgRHUgYW4gZGVyCnN1ZWRsaWNoZW4gV2FuZCBlaW5lbiBLbm9wZi4KCkVyIHdpcmQgZ2VyYWRlIHZvbiBHbG9pbnNvbiBnZWhhbHRlbi4KCkRhcyBpc3QgR2xvaW5zb24uIEVyIGlzdCBmdWVyIGVpbmVuIFp3ZXJnIG1pdHRlbGdyb3NzLgpEYW1pdCBoYXQgZXIgZXR3YSBEZWluZSBHcm9lc3NlLgoKCi4uLiBzY2hvZW4sIG1pY2gga2VubmVuenVsZXJuZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhtbW0uLi4uIChUaGVyaW4sIDI4LiBBdWcgMTk5OCwgMDU6NTc6MTMpOgpEaWUgR2FlcnRuZXJpbiBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW5lIExlaWNoZSB3aXJkIHZvbiBlaW5lciBHYWVydG5lcmluIHZvbGwgSGluZ2VidW5nIHZlcnNwZWlzdC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCBhdWYgbWVpbmVtIFJ1ZWNrc2l0eiAoQXNtb2RpcywgMjguIEF1ZyAxOTk4LCAyMjowMDoxNSk6Cn4jISBybj1UZWRkeSBydD05MDM5NDE0ODYgcmc9c2NobWFycm4KfiMhIHRpZD05MDM5NDE0ODYKVGphLCBad2VyZ2UgdW5kIEhvYmJpdHMgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWluZXIgZ2VodCBub2NoLi4uIChHcmltbWJvcm4sIDI5LiBBdWcgMTk5OCwgMjI6MTM6NDIpOgp+IyEgb249VmFtcHkgb3Q9OTAzOTgzMjk2IG9nPXdpdHplCn4jISBybj1BbmF0b2wgcnQ9OTAzNzUxMTkwIHJnPXdpdHplCn4jISB0aWQ9OTAzNzUxMTkwCmFlaG0uLi4gc2FndCBtYWwuLi4Kd2FzIGlzIGRlbm4gZGFyYW4gc28gc2NobGltbT8gYWxzbyBhbiBkZXIgdGF0c2FjaGUgZGFzIGRpZSBsZXV0ZSBqdWVuZ2VyCndlcmRlbi4uLgpmaW5kZXQgaWhyIGRhcyBnYXIgbmljaHQgZ3V0LCB3b2xsdGV0IGlociBsaWViZXIgZGFzIGVpbmUgYWx0ZXJiZXNjaHJlYW5rdW5nCmltIG1nIGVpbmdlZnVlaHJ0IHdpcmQ/CnZhbXB5LCBncnVlYmVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWluZXIgZ2VodCBub2NoLi4uIChHcmltbWJvcm4sIDI5LiBBdWcgMTk5OCwgMjI6MTM6NTQpOgp+IyEgb249VGVkZHkgb3Q9OTAzOTgzNDMyIG9nPXdpdHplCn4jISBybj1WYW1weSBydD05MDM5ODMyOTYgcmc9d2l0emUKfiMhIHRpZD05MDM3NTExOTAKTmVuZSwgd2lyIGZ1ZWhsZW4gdW5zIG51ciBub2NoIGFlbHRlciBhbHMgYmlzaGVyLCBpcyBuaWNoIHBlcnNvZW5saWNoIGdlbWVpbnQuCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmxhY2gqIChUYW5pcywgMjkuIEF1ZyAxOTk4LCAyMjoyOTo0OSk6CiAgRHUgemVyc2NobWV0dGVyc3QgTmVuYWlzJ3UgaW4ga2xlaW5lIFN0dWVja2NoZW4uCk5lbmFpcyd1IGZhZWxsdCB0b3QgenUgQm9kZW4uCihNb2VyZGVyOkdlaXN0IE5lbmFpcyd1cykgSWNoIGhhYiBrZWluZSBBbmdzdCB2b3IgZGlyLCBUYW5pcyEKZ3JpbnMKRHUgZ3JpbnN0Lgo+IHJ1ZiBTVFJJS0UhISEhIQpEdSBydWZzdDogU1RSSUtFISEhISEKUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFBhZHJlaWMuCgpqYWphIC4uLiBzaWUgaXN0IHVuYmVzaWVnYmFyLCBtZWludGUgcGFkcmVpYyB2b3JoZXIgbm9jaCA7KSkpKQoKaGF0IGVyIHdvaGwgbmljaCB2ZXJrcmFmdGV0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2htZXR0ZXJsaW5nZSAoQXNtb2RpcywgMzAuIEF1ZyAxOTk4LCAxNzoxNDoxMSk6CltUb2Q6TGFyc10gRWluIFNjaG1ldHRlcmxpbmcgaGF0IGdlcmFkZSBGbHVzc3dpbmQgdW1nZWJyYWNodC4gPDE3OjA3OjE4PgpbVG9kOkxhcnNdIEVpbiBTY2htZXR0ZXJsaW5nc2ZhZW5nZXIgaGF0IGdlcmFkZSBGYXN0IHVtZ2VicmFjaHQuIDwxNzowOToyMT4KW1RvZDplaW4gU2NobWV0dGVybGluZ3NmYWVuZ2VyXSBXZW5uIGljaCBEaWNoIGhpZXIgbm9jaCBtYWwgc2VoZSwgZGFubiBzdGVja2UKW1RvZDplaW4gU2NobWV0dGVybGluZ3NmYWVuZ2VyXSBpY2ggRGljaCBpbiBtZWluIFNjaG1ldHRlcmxpbmdzZ2xhcyEKW1RvZDpMYXJzXSBFaW4gU2NobWV0dGVybGluZyBoYXQgZ2VyYWRlIEtleSB1bWdlYnJhY2h0LiA8MTc6MDk6MjU+CltUb2Q6VG9kXSBEQVMgV0FSIFNDSE9OIERBUyA0MzBURSBNQUwhIDwxNzowOToyNT4KW1RvZDpMYXJzXSBFaW4gU2NobWV0dGVybGluZyBoYXQgZ2VyYWRlIExlbGxkb3JpbiB1bWdlYnJhY2h0LiA8MTc6MDk6NDM+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNVURERVIgKFNpbHZhbmEsIDMwLiBBdWcgMTk5OCwgMjA6Mjc6NDEpOgpJbSBMYXVmZSBkZXMgWmF1YmVyZXItS3JlYXRpdi1XRXM6CgpMaSBrb21tdCBhbi4KTGkgYmVzdGF1bnQgZWluZSB2b2xsZSBLaXN0ZSBDb2xhLgpMaSBzYWd0OiBFcndhcnRldCBpaHIgYXVjaCBub2NoIFJvY2h1cz8KCiAtLS0KCkFuYXRvbCBzYWd0OiBNZWluZSBOUENzIGJ1Z2dlbiBuaWNodC4gTmljaHQsIHdlbm4gc2llIGZlcnRpZyBzaW5kIQpQYXRyeW4sIE5hY2h0d2luZCB1bmQgU2lsdmFuYSBicmVjaGVuIHZvciBMYWNoZW4genVzYW1tZW4uCkFuYXRvbCBzY2hhdXQgZGVwcmltaWVydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXIgWmVwaHlyIChTdGluZywgMzAuIEF1ZyAxOTk4LCAyMjoxMjozNik6CldhcyBmdWVyIGRpZSBNUEEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFVQSwgaWNoIHdhcnMgbmljaHQgKE1vcmdvdGgsIDMxLiBBdWcgMTk5OCwgMDA6MTc6MTIpOgpbVG9kOkxhcnNdIEVpbiBQYWFyIEFkYW1hbnRzY2h1aGUgaGF0IGdlcmFkZSBHYXN0MSB1bWdlYnJhY2h0LiA8MDA6MTY6MTI+CltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIEFuYXRvbCB1bWdlYnJhY2h0LgpbVG9kOkxhcnNdIDwwMDoxNjoyMD4KW1RvZDpMYXJzXSBFaW4gUG9ydGFsIGhhdCBnZXJhZGUgWmVwaHlyIHVtZ2VicmFjaHQuIDwwMDoxNjoyMj4KW1RvZDpFaW4gUG9ydGFsXSBVbmQgVHNjaHVlc3MhICA8MDA6MTY6MjI+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaWxmYWVlZWVoaGhoIChNb3Jnb3RoLCAzMS4gQXVnIDE5OTgsIDAwOjQwOjAzKToKS251cnQgc2FndDogd2FzIG1hY2ggaWNoIGRlbm4gaGV1dGUgbm9jaD8gaWNoIGJpbiBhdWYgZW50enVnCkR1IHNhZ3N0OiBlbnR6dWcgdm9uIHdhcz8KS251cnQgc2FndDogbXVkCkR1IHNhZ3N0OiBhY2ggZGVzaGFsYiBiaXN0IGR1IGhpZXI/CktudXJ0IHNhZ3Q6IGphCkR1IGRlbmtzdCAgIC4gbyBPIChrYXJuaWNrZWxsb2dpaykKS251cnQgc2FndDogd2FydW0gZGVubiBzb25zdD8gaWNoIGdlYmUgbWVpbmVtIGxlYmVuIGdlcmFkZSBlaW5lbiBzaW5uLiB1bmQgZHUKS251cnQgc2FndDogaGFzdCBtaXIgZ2VmZWhsdApEdSBmYWVuZ3N0IGFuIHp1IHd1ZXJnZW4uCktudXJ0IGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCktudXJ0IHN0cmVpY2hlbHQgRGljaC4KTW9yZ290aCBzY2hyZWl0IApLbnVydCBncmluc3QuClJhc2NhbCBzYWd0OiBzdG9lciBpY2ggZXVjaCA/IDopCktudXJ0IHNjaHVldHRlbHQgZGVuIEtvcGYuClJhc2NhbCBncmluc3QuCktudXJ0IHNhZ3Q6IGljaCBtYWcgenVzY2hhdWVyClJhc2NhbCBzYWd0OiB2aWVsbGVpY2h0IG1hY2h0IG1vcmdvdGggaWhuIGRpciBqYSBhdWNoIGdyb3NzIHVuZCBsYW5nIDopCktudXJ0IGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpEdSBhcmdsc3QgZWluIHdlbmlnIHZvciBEaWNoIGhpbi4KS251cnQgc2FndDogZGFzIHdhZXIgc3BpZWxlcmhpbGZlCkR1IHNhZ3N0OiBpaHIgc2VpZCBqYSBrcmFuawpSYXNjYWwgZ3JpbnN0LgpLbnVydCBzYWd0OiBrbGFyClJhc2NhbCBzYWd0OiBkdSB3YXJzdCBoYWx0IGZyZWl0YWcgbmNpaHQgZGEKUmFzY2FsIHNhZ3Q6IGRhbm4gd3Vlc3N0ZXN0IGR1IHdhcyB3aXIgbWVpbmVuCktudXJ0IHNhZ3Q6IG1laW4gYXJpZWxsZSBiZWNoZXIgaXN0IGdlaWwKRHUgc2Fnc3Q6IGFtIGZyZWl0YWcgaGFiIGljaCBpbiBkZXIgc29ubmUgZ2VsZWdlbiB1bmQgbWljaCBicnV0emVsbiBsYXNzZW4KS251cnQgc2FndDogaWNoIHRyaW5rIGdlcmFkZSBxdWVuc2NoIGRhcmF1cwpEdSBncmluc3QgZGFlbW9uaXNjaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTW9yZ290aCwgMzEuIEF1ZyAxOTk4LCAwODo0MTozNSk6Ck1hdmVyaWNrIHRlaWx0IERpciBtaXQ6IGhpIGhhYiBkaWNoIGdhciBuaWNodCBzaCBbMDg6NDBdCltUb2Q6TGFyc10gRWluIEJ1bGx5d3VnIGhhdCBnZXJhZGUgTWF2ZXJpY2sgdW1nZWJyYWNodC4gPDA4OjQwOjQ1PgoKSHVwcHMgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbm9vcGVuIFNlaGVyIE1hZ2llcj8gKEhvYm8sIDMxLiBBdWcgMTk5OCwgMDk6NTk6NDApOgpEdSB0ZWlsc3QgTGFyaXNzYSBtaXQ6IHdpZSB3YXIncyBkZW5uPyAgIApbQWxsZ2VtZWluOlNob3JrYW5dIExlY2tlciB3YXJzIDspIAoKSG1tbSwgZGFzIGdpYnQgbWlyIGphIGpldHp0IHNjaG9uIHp1IGRlbmtlbi4uLgoKCiAgIEhvYm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRhcmt3aW5nIHN1Y2h0IG1pdHNwaWVsZXIgOikgKENyaXR0ZXIsIDMxLiBBdWcgMTk5OCwgMTU6MDg6MjMpOgpEZWluIEZyZXVuZCBEYXJrd2luZyB0ZWlsdCBEaXIgbWl0OiBzcGllbHQgbm9jaCB3ZXIgbWl0IG5lIFJ1bmRlIE1hZXhjaGVuID8gOikKRGFya3dpbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCnNjaGVpbmJhciBuaWNodCA6KSkKY3JpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG1tLi4uIEtvZXBmZS4uLiAoTGV2LCAzMS4gQXVnIDE5OTgsIDIyOjE3OjM3KToKCltTZWhlcjpUZWRkeSBoYXQgZWluIHp1IHdlaWNoZXMgSGVyeiA7KSA8MjI6MTQ6MTc+XQpbU2VoZXI6R29yb2ddIHNhZyBkYXMgbmljaHQgMTEyICg7IDwyMjoxNDoyMz4KW1NlaGVyOkxldl0gb2hoaGhoLi4uLiA8MjI6MTQ6MjU+CltTZWhlcjpUaWxseV0gaGEsIGRhcyBoYWIgaWNoIGdlaG9lcnQgPDIyOjE0OjI3PgpbU2VoZXI6QW5hdG9sXSBCZXNzZXIgZWluIHp1IHdlaWNoZXMgSGVyeiBhbHMgZWluZSB6dSB3ZWljaGUgQmlybmUuIDwyMjoxNDozMz4KW1NlaGVyOlRlZGR5XSBBcmdzLCBpY2ggaGFiIGdlbG9nZW4sIGRhcyBzdGltbXQgYWxsZXMgbmljaHQgPDIyOjE0OjQxPgpbU2VoZXI6R29yb2ddIHdpbGxzdGUgbmNpaHQgZG9jaCBrbGVyaWtlciB3ZXJkZW4gPyA8MjI6MTQ6NDU+CltTZWhlcjpWYW1weV0gd2llIG1laW5zdCBkdSBkYXMgZGVubiBqZXR6dCBBbmF0b2wgPyA8MjI6MTQ6NDk+CltTZWhlcjpMZXZdIEhtbS4uIEFuYXRvbCBnbGFlbnp0IHdpZWRlciBtaXQgZGVuIFdlaXNzaGVpdGVuIGRlcyBMZWJlbnMuLi4gOikKW1NlaGVyOkxldl0gPDIyOjE0OjUxPgpbU2VoZXI6QW5hdG9sIG11c3RlcnQgVGlsbHkuIFRpbGx5IGhhdCBrZWluIHdlaWNoZXMgSGVyeiA6KSA8MjI6MTQ6NTM+XQpbU2VoZXI6TGV2IGxhY2h0LiA8MjI6MTQ6NTk+XQpbU2VoZXI6VGVkZHldIE5lLCBpbiBtZWluZW0gQWx0ZXIgaGFiIGljaHMgbWl0IGRlbSBrbmllbiB1bmQga3JpZWNoZW4KW1NlaGVyOlRlZGR5XSBuaWNodG1laHIgc28gPDIyOjE1OjAzPgpbU2VoZXI6R29yb2ddIGRhcyB0dW4gbnVyIGRpZSBtZXNzZGllbnJpbm5lbiA8MjI6MTU6MTg+CltTZWhlcjpUaWxseSBuaWNrdCBBbmF0b2wgenUgdW5kIGtsb3BmdCBhbiBzZWluZSBCaXJuZSA7KSA8MjI6MTU6MTg+XQpbU2VoZXI6QW5hdG9sIGhvZXJ0IGVpbiAicGZsb3RzY2ggcGZsb3RzY2giIHN0YXR0IGVpbmVzICJUb2NrIHRvY2siCjwyMjoxNTozND5dCltTZWhlcjpBbmF0b2xdIE9oLW9oLi4uIDspID8gPDIyOjE1OjQyPgpbU2VoZXI6TGV2IGxhZWNodCBzaWNoIGthcHV0dC4gPDIyOjE1OjU0Pl0KW1NlaGVyOlRpbGx5XSBkYXMgbGllZ3QgYWJlciBhbiBkZW0gc3R1ZWNrIGt1Y2hlbiB3YXMgaWNoIG5vY2ggaW4gZGVyIGhhbmQgaGFiCltTZWhlcjpUaWxseV0gOikgPDIyOjE1OjU0PgpbU2VoZXI6TGV2XSBUaWxseS4uLiBzY2h3YWNoZSBBdXNyZWRlLi4uIDwyMjoxNjowNj4KW1NlaGVyOkFuYXRvbF0gTWFuIG11c3Mgc2Nob24gZWluZSBzZWhyIHdlaWNoZSBCaXJuZSBoYWJlbiwgdW0gc2ljaCBkZW4gS3VjaGVuCltTZWhlcjpBbmF0b2xdIHNlbGJzdCBhbiBkaWUgUnVlYmUgenUga2xhdHNjaGVuIDopIDwyMjoxNjoxMj4KW1NlaGVyOkxldiBraWNoZXJ0LiA8MjI6MTY6Mjc+XQpbU2VoZXI6QW5hdG9sXSBOaWNodG1hbCBlaW4gV3Vyc3RzZWhlciB3dWVyZGUgLi4uIEhleSwgdW5kIGRhcyBoZWlzc3Qgd2FzISA6KQpbU2VoZXI6QW5hdG9sXSA8MjI6MTY6Mjc+CltTZWhlcjpUaWxseV0gaG1qYW1tLCBkZXIgaXMgbGVja2VyISA8MjI6MTY6Mjc+CltTZWhlcjpHb3JvZ10gbXVuZCBuaWNodCBnZXRyb2ZmZW4/IDwyMjoxNjoyNz4KW1NlaGVyOkxldiBwcnVzdGV0LiA8MjI6MTc6MDE+XQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYWphIChUZWRkeSwgMzEuIEF1ZyAxOTk4LCAyMjo1NjoxMik6ClNoYXJpYSB0ZWlsdCBEaXIgbWl0OiBJQ0ggSEFCRSBLRUlORU4gQkFSVCAhISEhClNoYXJpYSB0ZWlsdCBEaXIgbWl0OiBJQ0ggSEFCRSBLRUlORU4gQkFSVCAhISEhClNoYXJpYSB0ZWlsdCBEaXIgbWl0OiBJQ0ggSEFCRSBLRUlORU4gQkFSVCAhISEhClNoYXJpYSB0ZWlsdCBEaXIgbWl0OiBJQ0ggSEFCRSBLRUlORU4gQkFSVCAhISEhClNoYXJpYSB0ZWlsdCBEaXIgbWl0OiBJQ0ggSEFCRSBLRUlORU4gQkFSVCAhISEhCgpXZXIgbGF1dCBzY2hyZWl0IGhhdCBVbnJlY2h0LiA7LSkKClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZW5uIEthZW1wZmVyL2lubmVuIHVlYmVuLi4uIChMZXYsIDMxLiBBdWcgMTk5OCwgMjI6NTc6MTMpOgoKRGVyIGJlcnVlaG10ZSBTY2htZXR0ZXJsaW5nIG1pc2NodCBUYXJpbmEgdW5kIG1pY2ggYmVpbSBVZWJlbiBhdWY6CgpbLi4uXSAKCiAgRHUuLi4uLi4uLi4uLiA6IFNjaG1ldHRlcmxpbmcgLT4gU2NobWV0dGVybiAuLi4uLmV4dHJhL0thbXBmdHJpdHQuLgoqKioqKioqKgpEZXIgU2NobWV0dGVybGluZyBmYWVsbHQgdG90IHp1IEJvZGVuLgoqKioqIExQOiA2OSBLUDogOTYgKC01KQpHZW9yZGkgc2NodWV0dGVsdCBzaWNoIGF1cyBkZW0gQWVybWVsLgpUYXJpbmEgZXJzY2hlaW50LgpUYXJpbmEgemllaHQgZWluZW4gRmV1ZXJzY2hpbGQgYXVzLgpUYXJpbmEgenVlY2t0IGVpbiBTY2h3ZXJ0LgpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uClRhcmluYSBnZWh0IG5hY2ggT3N0ZW4uCj4gc2NoYXUKRGllIEFrYWRlbWllc3RyYXNzZSBmdWVocnQgd2VpdGVyIGluIE9zdC1XZXN0IFJpY2h0dW5nLiBXZWl0IGltIE5vcmRlbgpiZWdpbm50IGRpZSBHZWJpcmdzcmVnaW9uIGRlciBad2VyZ2UuIEltIFN1ZWRlbiBsaWVnZW4gZGllIEF1ZW4gZGVzCkR1bmtlbHdhc3NlcnMsIHdvIHphaGxyZWljaGUgQmF1ZXJuaG9lZmUgc3RlaGVuLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4gdW5kIHdlc3Rlbi4KR2VvcmRpLgpEaWUgTGVpY2hlIGVpbmVzIFNjaG1ldHRlcmxpbmdzLgpUYXJpbmEgZXJzY2hlaW50LgpUYXJpbmEgZ3JpbnN0LgpEdSBzYWdzdDogdGphLi4uCkR1IHNhZ3N0OiBkZXIgYXJtZSBrZXJsLi4uIDopKSkKVGFyaW5hIHNhZ3Q6IHRqYT8KR2VvcmRpIHNhZ3Q6IGljaD8KVGFyaW5hIHNhZ3Q6IGRlciBzY2htZXR0ZXJsaWNoPwpHZW9yZGkgc2NodWV0dGVsdCBkZW4gS29wZi4KRHUgc2Fnc3Q6IG5lLCBkZXIgc2NobWV0dGVybGluZy4uLi4KRHUga2ljaGVyc3QuIChXaWUgYWxiZXJuIHZvbiBEaXIpClRhcmluYSBzYWd0OiB3aXIgaGFiZW4gaWhuIGdlc2NobWV0dGVydApUYXJpbmEgc2FndDogZGVzd2VnZW4gaGVpc3N0IGVyIGphIGF1Y2ggc28KRHUgc2Fnc3Q6IHNvenVzYWdlbi4uLiA6KSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSmFqYSAoTW9yZ290aCwgMzEuIEF1ZyAxOTk4LCAyMjo1NzoxOSk6Cn4jISBybj1UZWRkeSBydD05MDQ1OTY5NzIgcmc9c2NobWFycm4KfiMhIHRpZD05MDQ1OTY5NzIKQWxzbyB3ZW5uIFNoYXJpYSBLRUlORU4gQmFydCBoYXQsIGJpbiBJQ0ggc3Vlc3MuIAoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSmFqYSAoTmViLCAzMS4gQXVnIDE5OTgsIDIyOjU4OjEyKToKfiMhIHJuPU1vcmdvdGggcnQ9OTA0NTk3MDM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA0NTk2OTcyClRhbnRlLCByYXNpZXIgRGljaCAhIDspCgpOZWIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSmFqYSAoVGVkZHksIDMxLiBBdWcgMTk5OCwgMjI6NTk6MjQpOgp+IyEgcm49TW9yZ290aCBydD05MDQ1OTcwMzkgcmc9c2NobWFycm4KfiMhIHRpZD05MDQ1OTY5NzIKcS5lLmQuCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVG9sbGVzIFZvcmJpbGQgKE1vcmdvdGgsIDMxLiBBdWcgMTk5OCwgMjM6MDI6NTUpOgpbS2xlcnVzOlZpZHJhal0gVW5kIGRhIHdhciBub2NoIGRlciBlaW5lIGFuZGVyZSB1bmQgZXMgZmxvc3MgQmx1dCBvZGVyPwpbS2xlcnVzOkxlbWJvbGRdIEhvZXJldCwgR2xhZXViaWdlISBWb24gU3R1bmQgYW4gaXN0IFNjaHdlc3RlciBTaGFyaWEgbWVpbmUKW0tsZXJ1czpMZW1ib2xkXSBIb2hlcHJpZXN0ZXJpbiEKU2hhcmlhICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2VsdGVuIHNvIGdlbGFjaHQgOykgKFRlZGR5LCAzMS4gQXVnIDE5OTgsIDIzOjI0OjAzKToKVGlsbHkgdGVpbHQgRGlyIG1pdDogaG1wZiEgOykKUGFkcmVpYyB0ZWlsdCBEaXIgbWl0OiBoZXkhIHRpbGx5IGlzdCBtZWluIHNvaG4sIGRlciBidWdndCBuaWNodCA7KQpGZXVlcndlaHIgdGVpbHQgRGlyIG1pdDogSGV5LCBUaWxseSBwcm9nZ3QgbnVyIGd1dGVzIFpldWcuCgpUZWRkeSwga3JpbmdlbHQgc2ljaCBub2NoIGltbWVyIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2VsdGVuIHNvIGdlbGFjaHQgOykgKE1vcmdvdGgsIDMxLiBBdWcgMTk5OCwgMjM6Mjc6NDUpOgp+IyEgcm49VGVkZHkgcnQ9OTA0NTk4NjQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA0NTk4NjQzCltEZWJ1ZzpUaWxseV0gRmVobGVyOiAiRmFpbGVkIHRvIGxvYWQgZmlsZS4iLCBPYmpla3Q6IG1hZ2llcjp0aWxseSwgUHJvZ3JhbW06CltEZWJ1ZzpUaWxseV0gIjxsYW1iZGEgMHhiZmZmYzY0Nj4iLCBaZWlsZSAxIChUaWxseSkKCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNb3Jnb3RoLCAgMS4gU2VwIDE5OTgsIDAwOjA4OjI2KToKW1NlaGVyOlRlZGR5XSBUeXBpc2NoIGZ1ZXIgbWljaCwgZXJzdGVyIHJhdW0sIGVyc3RlciBOUEMgdW5kIHNjaG9uIGtvbW0gaWNoCltTZWhlcjpUZWRkeV0gbmljaHRtZWhyIGtsYXIgOygKW1NlaGVyOlRoZXJpbl0gKnRyb2VzdCogbnVyIGdlZHVsZCwgaWNoIGtvbW0gamEgZ2xlaWNoCltTZWhlcjpUZWRkeV0gR2xlaWNoPyBTb2ViZW4gd2FyZW5zIG5vY2ggMiBTdHVuZGVuCltTZWhlcjpBbmF0b2xdIFd1YWgsIFRoZXJpbiwgZGFzIHdvbGxlbiB3aXIgZ2FyIG5pY2h0IHdpc3NlbiA7KQpbU2VoZXI6VGlsbHkgbGFjaHRdCltTZWhlcjpUaGVyaW5dICJnbGVpY2giIHNpbmQgZG9jaCAyIHN0dW5kZW4KLi4uLnRpY2suLi50aWNrLi4uLnRpY2suLi4uCltUb2Q6TGFyc10gRWluIENlbnRhdXJlbndhZWNodGVyIGhhdCBnZXJhZGUgVGhlcmluIHVtZ2VicmFjaHQuCltUb2Q6RWluIENlbnRhdXJlbndhZWNodGVyXSBQZmZmZiwgZWluIFNwaWVsZXIgbWVociBvZGVyIHdlbmlnZXIsIHdhcyBtYWNodApbVG9kOkVpbiBDZW50YXVyZW53YWVjaHRlcl0gZGFzIHNjaG9uLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKE1vcmdvdGgsICAxLiBTZXAgMTk5OCwgMDA6MTA6MTgpOgp+IyEgcm49TW9yZ290aCBydD05MDQ2MDEzMDYgcmc9c2NobWFycm4KfiMhIHRpZD05MDQ2MDEzMDYKa2F1bSBhdXMgZGVyIHRvZGVzc2VxdWVueiByYXVzLi4uLgoKW1RvZDpMYXJzXSBFaW4gRHJha29uaWVyYWRlcHQgaGF0IGdlcmFkZSBUaGVyaW4gdW1nZWJyYWNodC4KCkRBUyBnaWJ0IGtlaW5lbiBTdHVwcywgVGhlcmluLi4ub2RlciBkb2NoID8/PwoKTSogOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYWphIChUZWRkeSwgIDEuIFNlcCAxOTk4LCAwMToyMjowMSk6CktudXJ0IHRlaWx0IERpciBtaXQ6IGR1IHNvbGx0ZXN0IGJlc3NlciB2ZXJnZXNzZW4gV0FTIG1hbiBtaXQgbmVyIGZyYXUgbWFjaGVuCktudXJ0IHRlaWx0IERpciBtaXQ6IGthbm4gOikKClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogamFqYSAoQW5hdG9sLCAgMS4gU2VwIDE5OTgsIDAxOjIyOjI5KToKfiMhIHJuPVRlZGR5IHJ0PTkwNDYwNTcyMSByZz1zY2htYXJybgp+IyEgdGlkPTkwNDYwNTcyMQpWZXJnaXNzIGJlc3Nlciwgd2FzIHNpZSBtaXQgRElSIG1hY2hlbiBrYW5uLi4uCgoqc2V1ZnoqCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHcnVlbmRlIDopIChBbmF0b2wsICAxLiBTZXAgMTk5OCwgMDQ6MTU6NDYpOgpbVG9kOkxhcnNdIEVpbiBTcHJ1bmcgaW4gZGVuIFNjaGxlaW0gaGF0IGdlcmFkZSBRdWljayB1bWdlYnJhY2h0LgouLi4KW0JlaWxlaWQ6S251cnRdICJzdWVkZW4iIHN0YXR0ICJiZXRyZXRlIGJydWVja2UiPwpbQmVpbGVpZDpOYWNodHdpbmRdIG5laW4gbmVpbiwgc3VlZGVuIHN1ZWRlbiBzdGF0dCAic2NoYXUgYXVmIGthcnRlLCBkdSBkZXBwIgoKTm9tZW4gZXN0IG9tZW4uCkFuYXRvbCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoYSwgQm9pbmcgaXN0IGRlciBUZXVmZWwgISAoTW9yZ290aCwgIDEuIFNlcCAxOTk4LCAxMjo0MjoxMyk6CltBbGxnZW1laW46QmVlbHplYnViXSBNYWhsemVpdCAhCkJvaW5nICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCltBbGxnZW1laW46R29yb2ddIG1vaW5zIHRldWZlbGNoZW4gKDsKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUZWxlcGF0aGllIChBbmFjcmlvbiwgIDEuIFNlcCAxOTk4LCAxNjowMjo0OCk6CkR1IHNhZ3N0OiAgbmUgX3phdWJlcmVyXy1hYmZyYWdlIGFuc3RhdHQgbmVyIG1hZ2llcmFiZnJhZ2UgaXN0IGRvY2ggZ2Vob3BwdApEdSBzYWdzdDogd2llIGdlZG9wcHQgOykKPiBNdWNrcyBncmluc3QuCiUgU2NvcmU6IDIxMC8yMjkvMjQ5ICBHaWZ0Ok4gIG8oMTAwKSAgICAgICAgICAgCltBbGxnZW1laW46TWFnaWNvbGxpIHNjaG11bnplbHRdCgpXaXIgc3RlaGVuIGJlc3RpbW10IGluIG5lciB0ZWxlcGF0aGlzY2hlbiBWZXJiaW5kdW5nIDspCgpBbmFjKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2V5IChSb2NodXMsICAxLiBTZXAgMTk5OCwgMTg6MTg6MjYpOgo+IERlaW4gRnJldW5kIEtleSB0ZWlsdCBEaXIgbWl0OiB1aXVpIC4uLiAxNiw1IG1pb3MgZXBzZSAuLi4gaWNoIHN0ZXJiZSB6dSAKd2VuaWcKRGVpbiBGcmV1bmQgS2V5IHRlaWx0IERpciBtaXQ6IDopCgpEYXMga2FubiBpY2ggZ2VybmUgYWVuZGVybiA6LSkKCiAgUm9jaHVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpjb2xhIChSb2NodXMsICAxLiBTZXAgMTk5OCwgMTk6NDQ6NTUpOgpbQWxsZ2VtZWluOkFsYm9pbl0gUm9jaHVzIGt1ZW1tZXIgRGljaCBsaWViZXIgdW0gZGllIENvbGEtUmVzdGUgdm9uIGRlciBQYXJ0eQpbQWxsZ2VtZWluOlJvY2h1c10gZGllIGNvbGEtcmVzdGUgdm9uIGRlciBwYXJ0eSBoYWJlIGljaCBzY2hvbiBsYW5nZSBlcmxlZGlndC4KQXVncmEgdGVpbHQgRGlyIG1pdDogdWZmLCBnb3R0c2VpZGFuaywgbmFjaCBkZW4gcmVzdGUtbWVsZHVuZ2VuIGRhY2h0ZSBpY2gKQXVncmEgdGVpbHQgRGlyIG1pdDogc2Nob24sIGVzIHNlaSB3YXMgZXJuc3RlczopIFsxOTo0NF0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUuLiAoWmVwaHlyLCAgMS4gU2VwIDE5OTgsIDIxOjU1OjQxKToKTm92YXN0b3JtIHNhZ3Q6IGhpZXIgaXN0IHp1dmllbCBzY3JvbGwKTm92YXN0b3JtIHZlcndpcmZ0IHNlaW5lIEVudHNjaGVpZHVuZyB1bmQgc3R1ZXJtdCB3ZWl0ZXIgbmFjaCBXZXN0ZW4uCk5vdmFzdG9ybSBzdWNodCBzZWluZW4gV2VnLgpOb3Zhc3Rvcm0gdmVyd2lyZnQgc2VpbmUgRW50c2NoZWlkdW5nIHVuZCBzdHVlcm10IHdlaXRlciBuYWNoIFN1ZWRlbi4KTm92YXN0b3JtIHN1Y2h0IHNlaW5lbiBXZWcuCk5vdmFzdG9ybSB2ZXJ3aXJmdCBzZWluZSBFbnRzY2hlaWR1bmcgdW5kIHN0dWVybXQgd2VpdGVyIG5hY2ggTm9yZGVuLgpOb3Zhc3Rvcm0gc3VjaHQgc2VpbmVuIFdlZy4KTm92YXN0b3JtIHZlcndpcmZ0IHNlaW5lIEVudHNjaGVpZHVuZyB1bmQgc3R1ZXJtdCB3ZWl0ZXIgbmFjaCBPc3Rlbi4KCkRlciBXZWcsIGRlciBoaWVyIGVpbmUgQmllZ3VuZyB2b24gT3N0ZW4gbmFjaCBTdWVkZW4gbWFjaHQsIGZ1ZWhydCBhbgplaW5lbSBHZWJhZXVkZSB2b3JiZWksIGF1cyBkZW0gR2VsYWVjaHRlciB1bmQgbGF1dGVzIFNwcmVjaGVuIHp1IGhvZXJlbgppc3QuIERhcyBTY2hpbGQgdWViZXIgZGVyIFR1ZXJlIGJlc3RhZXRpZ3QsIHdhcyBEdSBzY2hvbiB2ZXJtdXRldCBoYXN0LAplcyBoYW5kZWx0IHNpY2ggbmFlbWxpY2ggd2lya2xpY2ggdW0gZWluZSBLbmVpcGUuIFdlc3RsaWNoIHZvbiBoaWVyIGxpZWd0Cm5vY2ggZWluIGVpbnplbG5lcyBHcmFiLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCgprb3Bmc2NodWV0dGVsbmQsIEM0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDaGFvcyA7KSAoVGVkZHksICAyLiBTZXAgMTk5OCwgMDE6MTk6MzUpOgo8U3dpZnQ6IDAxOjE1OjEyPiBmYWxscyBpaHIgYnVncyBmaW5kZXQgKG5pZWVlZWVlKSBkYW5uIGltbWVyIG1haWxlbiA6KQo8UHVjazogMDE6MTU6NDg+IEZhbGxzIGVyIHp1IGhlZnRpZyBpc3QsIHdlcmRlbiB3aXIgc2Nob24gZGFmdWVyIHNvcmdlbiwKICAgICAgIGRhc3MgZXIgd2llZGUgcmF1c2tvbW10LCBrZWluZSBBbmdzdCA6KQo8VGVkZHk6IDAxOjE1OjU0PiBBcmdzLCBkZXIgdGVzdGV0IGphIGRlbiBHaWxkZW5sZXZlbAoKT21iYXRpcyB0ZWlsdCBEaXIgbWl0OiBEYXMgd2VyZCBpY2ggTklDSFQgbWFjaGVuISBRdWljayBoYXQgc2NobGllc3NsaWNoIG5lbgpPbWJhdGlzIHRlaWx0IERpciBtaXQ6IGhvZWhlcmVuIEdpbGRlbmxldmVsLiBEYXMgbXVzcyBkb2NoIGF1Y2ggbWFsIHp1IHdhcyBndXQKT21iYXRpcyB0ZWlsdCBEaXIgbWl0OiBzZWluLCBvZGVyPyBBbHNvIG5lcnYgaWNoIG51ciBDaGFvdGVuLCBkaWUgbmVuCk9tYmF0aXMgdGVpbHQgRGlyIG1pdDogbmllZHJpZ2VyZW4gb2RlciBnbGVpY2hob2hlbiBHaWxkZW5sZXZlbCBoYWJlbiB3aWUgRHUKT21iYXRpcyB0ZWlsdCBEaXIgbWl0OiA6KQoKR2VmdW5kZW4gOy0pCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IENoYW9zIDspIChNaW5kYmxhZGUsICAyLiBTZXAgMTk5OCwgMDE6MjE6MDEpOgp+IyEgcm49VGVkZHkgcnQ9OTA0NjkxOTc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA0NjkxOTc1Ck5lLCBuZSwgc28ga2FubiBkYXMgcnVoaWcgYmxlaWJlbiE6KQpNaW5kKiwgR2lsZGVubGV2ZWwgdWViZXIgMjAgaGFiZW4gd2FzIGZ1ZXIgc2ljaCE6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBDaGFvcyA7KSAoVGVkZHksICAyLiBTZXAgMTk5OCwgMDE6MjE6MjkpOgp+IyEgcm49TWluZGJsYWRlIHJ0PTkwNDY5MjA2MSByZz1zY2htYXJybgp+IyEgdGlkPTkwNDY5MTk3NQoKWmF1YmVyZXIgdW5kIEtsZXJpa2VyIGthbm4gaWNoIGRhbm4gaW1tZXJub2NoIHF1YWVsZW4sIGRhcyByZWljaHQgOykKCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT21iYXRpcyBpbiBIb2NoZm9ybSAuLi4gKEdsb2luLCAgMi4gU2VwIDE5OTgsIDAyOjQzOjQ1KToKRGVyIE5lcnZkYWVtb24gbWVpbnQ6IElnaXR0ISBEdSBlcndhcnRlc3QgamE6IE1haGF0bWEsIFBhbnRoZXIsIEhvb2QsIFBhdHJ5biwKRGVyIE5lcnZkYWVtb24gbWVpbnQ6IE1wYSwgSXdvLCBJdm8sIEFubmloaWxhdG9yLCBNZXNpcmlpLCBNaWV6ZSwgQW5hdG9sLApEZXIgTmVydmRhZW1vbiBtZWludDogU2FteSwgRnJldW5kLCBIYW5nb3ZlciwgTW9yZ290aCwgTmV2YWRhLiBEaWUgc2luZCBkb2NoCkRlciBOZXJ2ZGFlbW9uIG1laW50OiBhbGxlIGRvb29vZiEKClNhZyBpY2ggamEgYXVjaCBpbW1lciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHJ2ZXMsIHdpZSBzaWUgd2lya2xpY2ggbGViZW4uLi4gKEFuYXRvbCwgIDIuIFNlcCAxOTk4LCAwMzozNjoyMik6CkhvbmRhbSBVbnRlcmZlbHMgc2FndDogV2FzIGlzdCBkZW5uIGRhcyBoaWVyPyBIYXVzdGllcmUgaW0gU3RydXY/IFNvIGdlaHQgZGFzCkhvbmRhbSBVbnRlcmZlbHMgc2FndDogYWJlciBuaWNodCwgQW5hdG9sISBEYXMgZ2lidCBsZWlkZXIgZWluZW4gVmVyd2VpcyEKSG9uZGFtIFVudGVyZmVscyBob2x0IHdlaXQgYXVzIHVuZCB2ZXJzdWNodCBHbG9lY2tjaGVuIHp1IHRyZXRlbi4gRG9jaCBkaWVzZQprbGVpbmUgTWF1cyBpc3Qgc28gc2NobmVsbCwgZGFzcyBIb25kYW0gVW50ZXJmZWxzIGVoZXIgYXVmcGFzc2VuIG11c3MsIGRhc3MgZXIKc2ljaCAgbmljaHQgenVtIERlcHBlbiBtYWNodC4KClRvbyBsYXRlISA6KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcmdsLi4ubWFsIHdpZWRlciA7LSgoIChaZXIsICAyLiBTZXAgMTk5OCwgMDg6MjU6MDUpOgpEZXIgU2NodWVsZXIgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRWluIERpZW5lciBrb21tdCBhbi4KRWluIERpZW5lciBrb21tdCBhbi4KRWluIFNjaHVlbGVyIGtvbW10IGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9tYmF0aXMgaW4gSG9jaGZvcm0gLi4uIChNb3Jnb3RoLCAgMi4gU2VwIDE5OTgsIDA4OjUyOjQ0KToKfiMhIHJuPUdsb2luIHJ0PTkwNDY5NzAyNSByZz1zY2htYXJybgp+IyEgdGlkPTkwNDY5NzAyNQpXaWVzbyBlcndhcnRlc3QgZHUgTUlDSCA/Pz8gKip6aXR0ZXIqKgoKTSogCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE9tYmF0aXMgaW4gSG9jaGZvcm0gLi4uIChHbG9pbnNvbiwgIDIuIFNlcCAxOTk4LCAxMTo1OToxMik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkwNDcxOTE2NCByZz1zY2htYXJybgp+IyEgdGlkPTkwNDY5NzAyNQpOdXIgdW0gRGlyIGltbWVyIHdpZWRlciBiZXN0YWV0aWdlbiB6dSBrb2VubmVuLCBkYXNzIER1IHN1ZXNzIGJpc3QsIE1vcmdvdGhpCjopCgpHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcnVldHRlbC1zY2h1ZXR0ZWwgKEphc29ucmlnaWQsICAyLiBTZXAgMTk5OCwgMTg6MzE6NTQpOgpDcnlzYW5pYSBzY2h1ZXR0ZWx0IG1pdCBpaHJlciBTcGVuZGVuYnVlY2hzZS4gRHUgc29sbHRlc3QgbGllYmVyIGVpbiBwYWFyCk11ZW56ZW4gc3BlbmRlbiwgc2NobGllc3NsaWNoIGlzdCBkYXMgR2VsZCBmdWVyIGVpbmVuIGd1dGVuIFp3ZWNrLgpDcnlzYW5pYSBzY2h1ZXR0ZWx0IHNpY2guCgoKaG0sIHdpcmYgMjAwIG11ZW56ZW4gaW4gY3J5c2FuaWEgPz8gZ2VodCBuaWNodCA6KQoKSmFzb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtbS4uLiBuZXVlIFF1ZXN0ZW4uLi4gKE5vdmFzdG9ybSwgIDIuIFNlcCAxOTk4LCAxODo1MzoyNyk6CkRlaW5lIEZyZXVuZGluIExpbGxlYnJvciB0ZWlsdCBEaXIgbWl0OiB3YXMgZ2lidHMgZGVubiBub2NoIGFuIHJhc3NlbiBpbgpEZWluZSBGcmV1bmRpbiBMaWxsZWJyb3IgdGVpbHQgRGlyIG1pdDogb3JraGF1c2VuIGF1c3NlciBkZW4gMyBiZWthbm50ZW4/CgpEZWluIEZyZXVuZCBCbHVlbWVsIHRlaWx0IERpciBtaXQ6IFdlbGNoZSByYXNzZW4gZ2lidHMgaW4gT1JraGF1c2VuCgouLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRHVkZWxzYWNrc3BpZWxlciBpbiBSTCA/IChHcmltbWJvcm4sICAyLiBTZXAgMTk5OCwgMjE6Mzk6NTYpOgp+IyEgcm49R3JvbyBydD05MDQ3NTI1NTEgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MDQ3NTI1NTEKU3BpZWx0IGtlaW5lIFJvbGxlLCBhdWNoIGJlaSBEdWRlbHNhY2tzcGllbGVybiBob2VydCBzaWNoIGRhcyBpbW1lciBzbyBhbiBhbHMKa29lbm50ZW4gc2llIG5pY2h0IHNwaWVsZW4uIE5hamEsIHp1bWluZGVzdCBhbHMga29lbm50ZW4gc2llIG5pY2h0IHN0aW1tZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTW9yZ290aC4uIDopIChaZXBoeXIsICAzLiBTZXAgMTk5OCwgMDE6NTA6NDIpOgpbVG9kOkxhcnNdIEVpbiB1bWZhbGxlbmRlciBCYXVtIGltIHZlcmxvcmVuZW4gTGFuZCBoYXQgZ2VyYWRlIEdhc3QxCltUb2Q6TGFyc10gdW1nZWJyYWNodC4KW1RvZDpFaW4gdW1mYWxsZW5kZXIgQmF1bSBpbSB2ZXJsb3JlbmVuIExhbmRdIEFlaG0uIEludGVyZXNzaWVydCBkYXMKW1RvZDpFaW4gdW1mYWxsZW5kZXIgQmF1bSBpbSB2ZXJsb3JlbmVuIExhbmRdIGlyZ2VuZHdlbj8KW05hY2hyaWNodGVuOkVpbiB1bWdlZmFsbGVuZXIgQmF1bSBpbSB2ZXJsb3JlbmVuIExhbmRdIEFlaG0uIEludGVyZXNzaWVydCBkYXMKW05hY2hyaWNodGVuOkVpbiB1bWdlZmFsbGVuZXIgQmF1bSBpbSB2ZXJsb3JlbmVuIExhbmRdIGlyZ2VuZHdlbj8KPiBWYWxhIE1vcmdvdGggcnVmdDogWUVTICEhISEKW0JlaWxlaWQ6TGV2XSBhaGEuLi4KW0JlaWxlaWQ6WmVwaHlyXSAqbGFjaCoKW0JlaWxlaWQ6RGhvamFrdF0gR3V0IGdldHJvZmZlbi4KW0JlaWxlaWQ6RnJvZ2h1bnRlcl0gSG1tLgpbQmVpbGVpZDpaZXBoeXJdIGRlciBCYXVtIGF1ZiBuYWNocmljaHRlbj8gOikKPiBbQmVpbGVpZDpUaGVyaW5dIHN1ZXNzLi4uCkR1IHRlaWxzdCBNb3Jnb3RoIG1pdDogKmtpY2hlciogIHdhciBkYXMgYWJzaWNodCBkYXNzIGRlciBhdWYgbmFjaHJpY2h0ZW4KRHUgdGVpbHN0IE1vcmdvdGggbWl0OiBzZW5kZXQ/IDopCltCZWlsZWlkOlRoZXJpbl0gZWluZSBuYWNocmljaHQsIGRpZSBrZWluZW4gaW50ZXJlc3NpZXJ0IDopClZhbGEgTW9yZ290aCB0ZWlsdCBEaXIgbWl0OiBOYWNocmljaHRlbiA/Pz8/CkR1IHRlaWxzdCBNb3Jnb3RoIG1pdDogamF1Cj4gLW5hY2hyaWNodGVuKjIKRm9sZ2VuZGVzIGlzdCBhdWYgJ05hY2hyaWNodGVuJyBwYXNzaWVydDoKW05hY2hyaWNodGVuOmVpbiB1bWdlZmFsbGVuZXIgQmF1bSBpbSB2ZXJsb3JlbmVuIExhbmRdIEFlaG0uIEludGVyZXNzaWVydCBkYXMKW05hY2hyaWNodGVuOmVpbiB1bWdlZmFsbGVuZXIgQmF1bSBpbSB2ZXJsb3JlbmVuIExhbmRdIGlyZ2VuZHdlbj8gPDAxOjQyOjMxPgo+IHRtbyAtbmFjaHJpY2h0ZW4qMgpEdSB0ZWlsc3QgTW9yZ290aCBtaXQ6IC1uYWNocmljaHRlbioyClZhbGEgTW9yZ290aCB0ZWlsdCBEaXIgbWl0OiB1cHBzLCBrZWluZSBhaG51bmcgd2llc28KW0JlaWxlaWQ6WmVwaHlyXSAqcm90ZmwqIFZhbGEgTW9yZ290aCB0ZWlsdCBEaXIgbWl0OiB1cHBzLCBrZWluZSBhaG51bmcgd2llc28KW0JlaWxlaWQ6VGhlcmluIHJvdGZsdCBtaXRdCltCZWlsZWlkOkxpbGxlYnJvcl0gKmxhY2gqCltCZWlsZWlkOkRob2pha3Qgc2NobGFlZ3QgZXJrdW5kZW4gdm9yLl0KW0JlaWxlaWQ6VGhlcmluXSBNb3Jnb3RoIGlzdCBoYWx0IGJlc29uZGVycyBzdWVzcywgd2VubiBlciB3aWVkZXIgYnVnZ3QKW0JlaWxlaWQ6R2xvaW5zb25dIE1vcmdvdGguIFN1ZXNzIHdpZSBpbW1lciA6KQpbQmVpbGVpZDpUaGVyaW5dIHNjaG5lbGxlcgpWYWxhIE1vcmdvdGggdGVpbHQgRGlyIG1pdDogQVJHTCA7LSkKCipraWNoZXJuZCoKICBDNAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT1JLUyEgKFR1bml4Z3V0LCAgMy4gU2VwIDE5OTgsIDA3OjMxOjQwKToKW0FsbGdlbWVpbjpUdU5peEd1dF0gRXkgYm9haCBleSwgYmluIGphIHJhbmdob2VjaHN0ZXIgU2VoZXIgaG9pZXIhIDpvKQpEZXIgT3JrIHRyaXR0IERpciB2b3IgRGVpbiBTY2hpZW5iZWluIHVuZCBsYWNodCBsYXV0LgoKS2VpbiByZXNwZWt0LCBkaWUgVmllY2hlciEKJ3MgS2FyYXRlLVp3ZXJjaGxlLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOaWV0ZSBicmF1Y2h0cyBoZXV0ZSBlY2h0IGRvbGwgKFphcm5peWEsICAzLiBTZXAgMTk5OCwgMTQ6Mzg6NTMpOgpbQWxsZ2VtZWluOk5pZXRlXSB6YXJuaXlhLCBzY2hyZWliIGxpZWJlciB3YXMgaW5uZXIgemVpdHVuZywgZGEgaGFiZW4gd2lyIGFsbGUKW0FsbGdlbWVpbjpOaWV0ZV0gd2FzIHZvbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGhtbW0gZWluIGJpc3NjaGVuIHp1IGxhbmdzYW0gZGVyIGZpc2NoIChDcml0dGVyLCAgMy4gU2VwIDE5OTgsIDE3OjEzOjA0KToKdW5kIGRvb29mIGlzc2VyIGF1Y2ggbm9jaC4uLgoKCkR1IHRyaWZmc3QgZGVuIGh1ZXBmZW5kZW4gS251dHNjaGZpc2NoIHNlaHIgaGFydC4KRGVyIGh1ZXBmZW5kZSBLbnV0c2NoZmlzY2ggdmVyZmVobHQgRGljaC4KRHUgdHJpZmZzdCBkZW4gaHVlcGZlbmRlbiBLbnV0c2NoZmlzY2ggc2VociBoYXJ0LgpEZXIgaHVlcGZlbmRlIEtudXRzY2hmaXNjaCBmYWVsbHQgdG90IHp1IEJvZGVuLiAoMCApCkRlciBLbnV0c2NoZmlzY2ggZ2lidCBEaXIgdm9yc2ljaHRpZyBlaW5lbiBLdXNzLgoKY3JpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzIE1lcmlzYSBzbyB0cmVpYnQuIChUYXJpbmEsICAzLiBTZXAgMTk5OCwgMTk6MDA6MDgpOgoKR3JhZGUgaW0gTHVwaW5lbnRhbDoKCk1lcmlzYSBzaXR6dCBsZWlzZSBsYWVjaGVsbmQgdm9yIERpci4gSWhyIGxhbmdlcywgYmlzIHp1bSBCb2RlbgpyZWljaGVuZGVzIEhhYXIgd2VodCBzYW5mdCBpbiBlaW5lciBsZWljaHRlbiBCcmlzZSBbLi4uXSBBbmdlYmxpY2gKaXN0IHNpZSB2ZXJmbHVjaHQgYXVmIGV3aWcgaGllciB6dSBzaXR6ZW4gdW5kIGRpZSBTY2hsZWllciBhbGxlcgpTaWRoZS1QcmluemVzc2lubmVuIDEwMDAgbWFsIHp1IHN1Y2hlbiwgb2huZSBzaWNoIHZvbiBkZXIgU3RlbGxlCnp1IHJ1ZWhyZW4uClNpZSBpc3QgYWJzb2x1dCBmaXQuClNpZSB0cmFlZ3QgYmVpIHNpY2g6CkVpbiBQbGF5Z2lybCBIZWZ0LgpFaW4gaGF1Y2hkdWVubmVyLCBkYWVtbWVyZ3JhdWVyIFNjaGxlaWVyIChhbmdlem9nZW4pLgoKTmEsIGljaCBkZW5rZSwgamV0enQgaXN0IGlociB3ZW5pZ3N0ZW5zIG5pY2h0IG1laHIgbGFuZ3dlaWxpZy4KClRhcmluYQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyBvZGVyIGF1Y2ggaG1tLi4uIFNvbGlkYXJpdGFldCA/IChjKSAoU2FwaGlyYSwgIDMuIFNlcCAxOTk4LCAyMDo1Mjo0NSk6CltCZWlsZWlkOlRvdGVua29wZiBzaW5ndCA6IGljaCBoYXR0IGVpbmVuIEthbWVyYWRlbi4uLi5dCltBbGxnZW1laW46WmVkaWN1c10ga2VpbmVyPwpbVG9kOkxhcnNdIEVpbmUgU2NoYXR0ZW5mcmF1IGhhdCBnZXJhZGUgVG90ZW5rb3BmIHVtZ2VicmFjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWnUgbGFuZ2UgVXB0aW1lcyAuLi4gKEdsb2luc29uLCAgNC4gU2VwIDE5OTgsIDAwOjA5OjQ2KToKRGFzIGtvbW10IGRhdm9uOgoKPiBEaXIgZnJpZXJ0IGRpZSBOYXNlIGVpbi4KRHUgbGFlc3N0IGRlbiBCZXJuc3RlaW5yaW5nIGZhbGxlbi4KPiBUZWRkeSBzYWd0OiArMyByZWljaHQgbWlyIDspCk5vdmFzdG9ybSBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpEdSBraWNoZXJzdC4gKFdpZSBhbGJlcm4gdm9uIERpcikKRHUgc2Fnc3Q6ICs0IGhhYiBpY2gKTm92YXN0b3JtIHNjaG11bnplbHQuCkR1IHNhZ3N0OiBuaW1tIGlobiBtaXQgaG9jaApCcnJyIC4uLiBpc3QgZGFzIGthbHQgaGllciEKTm92YXN0b3JtIG5pbW10IGVpbmVuIEJlcm5zdGVpbnJpbmcuCkxQOiA4NyAoMikgTVA6IDE0MyAoMSkKVGVkZHkga2xhdXQgR2xvaW5zb24gZGVuIFJpbmcKCkdsb2luIC4uLiBraWNoZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcyBNZXJpc2Egc28gdHJlaWJ0LiAoSmFzb25yaWdpZCwgIDQuIFNlcCAxOTk4LCAxMjowODo0Nik6Cn4jISBybj1UYXJpbmEgcnQ9OTA0ODQyMDA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA0ODQyMDA4CkhtLCBpY2ggZGFjaHRlLCBkZXIgWlQgd2FlcmUgOiAiQnJpbmdlIE1lcmlzYSBpaHJlIFNjaGxlaWVyIiB1bmQgbmljaHQgIkJyaW5nZQpNZXJpc2EgaWhyIFBsYXlnaXJsLUhlZnQiLgoKRnJhdWVuICEhIDspCgpKYXNvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IENEVS1XaXR6IChHcmltbWJvcm4sICA0LiBTZXAgMTk5OCwgMTQ6MDU6MjApOgp+IyEgb249Q2F1bm8gb3Q9OTA0OTA1NTM0IG9nPXdpdHplCn4jISBybj1TbHlmb3ggcnQ9OTA0ODM0OTUyIHJnPXdpdHplCn4jISB0aWQ9OTA0ODM0OTUyCldhaHJzY2hlaW5saWNoIGJyYXVjaHQgZGVyIGRpZSBBcnNjaGhlYmVtYXNjaGluZSBzY2hvbiBmcnVlaGVyLCBzbyB3aWUgZGVyIGluCmRlbiBsZXR6dGVuIDQgQW10c3BlcmlvZGVuIHp1Z2VsZWd0IGhhdC4KCkMuIE5vIGhhdCBzY2hvbiBnZXdhZWhsdAoKQmluIGFtIFdhaGx0YWcgbmFlbWxpY2ggYXVzc2VyIExhbmRlcy4gSG9mZmUsIHdlbm4gaWNoIHp1cnVlY2sgYmluLCBoYXQgc2ljaAp3YXMgZ2VhZW5kZXJ0IC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBDRFUtV2l0eiAoR3JpbW1ib3JuLCAgNC4gU2VwIDE5OTgsIDE0OjA1OjI4KToKfiMhIG9uPUdsb2luc29uIG90PTkwNDkxMDU1NSBvZz13aXR6ZQp+IyEgcm49Q2F1bm8gcnQ9OTA0OTA1NTM0IHJnPXdpdHplCn4jISB0aWQ9OTA0ODM0OTUyClNjaG9tbWEgd2FzIHZvbiBCcmllZndhaGwgZ2Vob2VydD8gS2FubnN0IGFsc28gbWl0YWVuZGVybi4KCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2htZXR0ZXJsaW5ncy1yYXNzZSA/IChKYXNvbnJpZ2lkLCAgNC4gU2VwIDE5OTgsIDE2OjE3OjU2KToKRHUgc2NobGFlZ3N0IGRlbiBTY2htZXR0ZXJsaW5nIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCkRlciBTY2htZXR0ZXJsaW5nIHRyaWZmdCBEaWNoIGhhcnQuCkR1IGhhc3QgamV0enQgMTU2IExlYmVuc3B1bmt0ZSB1bmQgMTAxIEtvbnplbnRyYXRpb25zcHVua3RlLgpEdSBrcmF0enQgZGVuIFNjaG1ldHRlcmxpbmcuCkR1IHNjaGxhZWdzdCBkZW4gU2NobWV0dGVybGluZyBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgpEdSBrcmF0enQgZGVuIFNjaG1ldHRlcmxpbmcuCkR1IHRyaWZmc3QgZGVuIFNjaG1ldHRlcmxpbmcgc2VociBoYXJ0LgpEZXIgU2NobWV0dGVybGluZyBmYWVsbHQgdG90IHp1IEJvZGVuLiAoMCApCltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIEFjaW5vIHVtZ2VicmFjaHQuCkR1IGhhc3QgamV0enQgMTU3IExlYmVuc3B1bmt0ZSB1bmQgMTAyIEtvbnplbnRyYXRpb25zcHVua3RlLgpBY2lubyBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogLi4uLgpFaW5nZWxvZ2d0IHNlaXQ6IEZyZSwgIDQuIFNlcCAxOTk4LCAxNDo0MzoxNgpWb2xsZXIgTmFtZTogQWNpbm8gZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlcgpIb3BwbGEsIGVpbiBHZWlzdCEKUmFzc2U6IE1lbnNjaCwgIEdpbGRlOiBBYmVudGV1cmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAwMTozMDowNiwgICBTcGllbGVybGV2ZWw6IDEsICAgR2lsZGVubGV2ZWw6IDEKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogRnJlLCAgNC4gU2VwIDE5OTgsIDE0OjQxOjMwCkhvbWVwYWdlOiBodHRwOi9hLnJlZWguaG9tZS5wYWdlcy5kZS8KQmlzaGVyIGJlcmVpdHMgMSBtYWwgZ2VzdG9yYmVuCgpVcHMsIG5hZ3V0LCBlciBpc3Qgc2Nod2FjaCwgYWJlciBlaW4gU2NobWV0dGVybGluZyA/PyBVbmQgc2VpdCB3YW5uIGJpbiBpY2gKR2VoZWltbmlzdm9sbCB1bmQgdW5iZWthbm50ID8/CgpKYXNvbiwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXIgTGV2IChOb3Zhc3Rvcm0sICA0LiBTZXAgMTk5OCwgMTc6NDM6MjApOgptZWhyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ0RVLVdpdHogKEdyaW1tYm9ybiwgIDQuIFNlcCAxOTk4LCAxODo0Mzo0Myk6Cn4jISBvbj1Lb2JheWFzaGkgb3Q9OTA0OTI3Mzk5IG9nPXdpdHplCn4jISBybj1TbHlmb3ggcnQ9OTA0ODM0OTUyIHJnPXdpdHplCn4jISB0aWQ9OTA0ODM0OTUyCldlbmlnc3RlbnMgZGFzIE1VRCBzb2xsdGUgbWFuIHZvbSBXYWhsa2FtcGYgZnJlaWhhbHRlbiAuLi4KCktvYmF5YXNoaQpQLlMuIERhcyBiZXppZWh0IHNpY2ggYXVmIGRhcyBQLlMuLCBuaWNodCBhdWYgZGVuIFdpdHogLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ0RVLVdpdHogKEdyaW1tYm9ybiwgIDUuIFNlcCAxOTk4LCAxNjo1NDoyMik6Cn4jISBvbj1MdWcgb3Q9OTA0OTY0MjE1IG9nPXdpdHplCn4jISBybj1TbHlmb3ggcnQ9OTA0ODM0OTUyIHJnPXdpdHplCn4jISB0aWQ9OTA0ODM0OTUyCmRhcyBTbHksCnNlaGUgaWNoIGdlbmF1cyBTT09PT09PIQoKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbGxlcyBrbGFyISAoTWluZGJsYWRlLCAgNS4gU2VwIDE5OTgsIDIyOjMxOjU1KToKRGVyIExlaHJlciBsYWVzc3QgVGFycyBnZWdlbiBlaW5lIHVuc2ljaHRiYXJlIFdhbmQgbGF1ZmVuLgpUYXJzIG1hY2h0IGVpbmVuIFNhbHRvIHJ1ZWNrd2FlcnRzIHVuZCBlbnRnZWh0IHNvIGRlbSBBbmdyaWZmIHZvbGxzdGFlbmRpZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXJlIExldiAoU3RpbmcsICA2LiBTZXAgMTk5OCwgMTQ6NDU6MDcpOgpGdWVyIExldiwgc29nYXIgbWl0IFR5cG8gaW0gVGl0ZWwgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBCZXdlaXMgKFJpbmdvciwgIDYuIFNlcCAxOTk4LCAyMTowMzoxMSk6CkhpZXIgaXN0IGRlciBCZXdlaXM6CgpMZWlibml6IHJ1ZnQ6IHN1ZXNzZXIhISEhIQpWYWxhIE1vcmdvdGggcnVmdDogaGkKCkpldHp0IGhvZXJ0IGVyIHNjaG9uIGF1ZiAic3Vlc3NlciIgOi0pCgpSaW5nb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldHRlIE1hdHJpeCAoWmVyLCAgNi4gU2VwIDE5OTgsIDIyOjQxOjAxKToKTWF0cml4OiBaZXIgZnVlaGx0ZSBzaWNoIGhldXRlIGF1Y2ggc2Nob24gYmVzc2VyLiAoODAlKQoKSG0sIGRhbmtlIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNjaG1ldHRlcmxpbmdzLXJhc3NlID8gKFRlZGR5LCAgNi4gU2VwIDE5OTgsIDIzOjE1OjM0KToKfiMhIHJuPUphc29ucmlnaWQgcnQ9OTA0OTE4Njc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA0OTE4Njc2ClBLIGZ1ZXIgSmFzb25yaWdpZCBiaXR0ZSA7KQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiBzYXViZXJlciBad2VyZywgSUdJVFQgKFplciwgIDYuIFNlcCAxOTk4LCAyMzo1NzoxNSk6CkR1IGtvdHp0IHVlYmVyIGRlaW5lIFNjaHVoZS4KRHUga290enQgdWViZXIgZGVpbmUgU2NodWhlLgpSaW5nb3Igc2FndDogaGV5LCBuaWNodCBoaWVyIGRyaW5uZW4hIGljaCBoYWIga2VpbmVuIGJvY2ssIGhpbnRlciBkaXIgc2F1YmVyClJpbmdvciBzYWd0OiB6dSBtYWNoZW4gO14pCgpaZXIsIGRpZSBSYXR0ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG1tLCBkYW5uIGViZW4gbmljaCA7KSAoTGlsbGVicm9yLCAgNy4gU2VwIDE5OTgsIDA2OjQyOjM2KToKPiBUaGVyaW4gc2FndDogaWNoIGJsZWliIG5vY2ggbmUgaGFsYmUgc3R1bmRlIHdhY2gKRHUgZ3JpbnN0Lgo+IFRoZXJpbiBzYWd0OiB0b3BsaXN0ZW5ha3R1YWxpc2llcnVuZwouLi4gMW1pbiBzcGFldGVyCj4gVGhlcmluICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKd2FyIHdvaGwgbmljaCBzbyBkcmluZ2VuZCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa2V5ID8/IChKYXNvbnJpZ2lkLCAgNy4gU2VwIDE5OTgsIDExOjQ2OjU1KToKR2FzdDEga29tbXQgYW4uCkdhc3QxIGdlaHQgbmFjaCBXZXN0ZW4uClJlYXBlciBlcnNjaGVpbnQgZ3JpbnNlbmQgaW4gZWluZXIgUmF1Y2h3b2xrZS4KUmVhcGVyIGtsZW1tdCBzZWluZSBCb25nIHVudGVyIGRlbiBBcm0gdW5kIHNjaHdlYnQgIG5hY2ggT3N0ZW4uCltUb2Q6TGFyc10gRGllIHVuaGVpbWxpY2hlIEhhZW5nZWJydWVja2UgaGF0IGdlcmFkZSBHYXN0MSB1bWdlYnJhY2h0LgpbVG9kOkRpZSB1bmhlaW1saWNoZSBIYWVuZ2VicnVlY2tlXSBEYXMgQWVjaHplbiBkZXIgUGxhbmtlbiBob2VydCBzaWNoCltUb2Q6RGllIHVuaGVpbWxpY2hlIEhhZW5nZWJydWVja2VdIGhhZW1pc2NoIGFuLgoKTWFubiwgaGF0IGRlciBlcyBhYmVyIGVpbGlnIGdlaGFidC4gSWNoIHd1c3N0ZSBuaWNodCwgZGFzcyBLZXkgamV0enQgbmljaHQKbWVociBzZWxiZXIgc3RpcmJ0LCBzb25kZXJuIEdhZXN0ZSB2b3JzY2hpY2t0IDspCgpKYXNvbiwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBrZXkgPz8gKEtleSwgIDcuIFNlcCAxOTk4LCAxMjo0NTozOSk6Cn4jISBybj1KYXNvbnJpZ2lkIHJ0PTkwNTE2MTYxNSByZz1zY2htYXJybgp+IyEgdGlkPTkwNTE2MTYxNQpWRVJMRVVNTkRVTkchISEhISEKSWNoIHdhciBkYXMgbmljaHQhCgpXZXIgR2Flc3RlIG9kZXIgWndlaXRpZXMgdm9yc2NoaWNrdCBpc3QgZWluIGVsZW5kZXIgRmVpZ2xpbmchIFVuZCBkYXMgaXN0IGdhbnoKdW5kIGdhcm5ldCBtZWluZSBBcnQhIC4pCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhJTEZFICEhISBFSU4gREFVICEhISEgKFNoYXJpYSwgIDcuIFNlcCAxOTk4LCAxMzoxNjoxMCk6CgpOZXVsaWNoIGF1ZmZlciBBcmJlaXQ6ClJla2xhbWF0aW9uIGVpbmVzIEt1bmRlbiAuLiBlciBzY2hpY2t0IHNlaW5lbiBTY2FubmVyIGVpbiB1bmQgc2NocmVpYnQgYmVpIGRlcgpGZWhsZXJiZXNjaHJlaWJ1bmcgcmVpbjogRFJVQ0tUIE5JQ0hUICEhCgoKU2hhcmlhICpvaG5lIFdvcnRlKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmFqYSwgZGllIEtsZXJ1c3RhbnRlIHZlcmJyZWl0ZXQgQW5nc3QgdW5kIFNjaHJlY2tlbi4uLi4gKE1vcmdvdGgsICA3LiBTZXAgMTk5OCwgMTk6MjQ6NDcpOgpFaW4gZW50c2V0emxpY2hlciBTY2hyZWkgaGFsbHQgdm9tIEZyaWVkaG9mIGhlcnVlYmVyLgpTaGFyaWEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCk5haXJvbGYgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmEgaHVjaCA/IDspIChOb3Zhc3Rvcm0sICA3LiBTZXAgMTk5OCwgMjA6MjU6MzApOgpTdGluZyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbQWxsZ2VtZWluOlNyYWJpIHZlcmxhZXNzdCBkYXMgTW9yZ2VuR3JhdWVuICEhIV0KCldhcyBkaWVzIHdvaGwgYmVkZXV0ZXQgPyA7LSkKICAgICBOb3ZhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaWNoIHdhcnMgbmljaHQuLi4gKFRoZXJpbiwgIDcuIFNlcCAxOTk4LCAyMTo1NTowOCk6CiAgRHUgemVyc2NobWV0dGVyc3QgSmVtYW5kIGluIGtsZWluZSBTdHVlY2tjaGVuLgpKZW1hbmQgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KW1RvZDpMYXJzXSBFaW4gU2NobGFlY2h0ZXIgaGF0IGdlcmFkZSBWZXJiYXRpbSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTY2hsYWVjaHRlcl0gU2NoaWNodCBpbSBTY2hhY2h0IQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuaXggKEhvdXNlaG9sZGVyLCAgOC4gU2VwIDE5OTgsIDAwOjI1OjQ3KToKTml4IG5ldWVzIGF1ZiBkZXIgV2VsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVuZ2VzY2huaXR0ZW4gKEJpcmR5LCAgOC4gU2VwIDE5OTgsIDEyOjE0OjE2KToKPiBEdSBzcHVlcnN0IGVpbiBHcnVtbWVsbiBpbiBkZWluZW0gQmF1Y2guClBhdHJ5biAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKSlVOSU9SICEhIDspIEJpcmR5IGdhbnogdmVya3JhbXBmdCAhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYW5nYmFuZCAoR29yb2csICA4LiBTZXAgMTk5OCwgMTY6MTQ6MDgpOgpJY2ggc3RlbGwgbWlyIGdlcmFkZSB2b3IgbWl0IDMgbWlvIG11ZW56ZW4gdW5kIDE2MCBrZyBhdXNydWVzdHVuZyBpbSBNRyBkdXJjaApkaWUgR2VnZW5kIHp1IGxhdWZlbi4gV2FlcmUgd29obCBldHdhcyB6dSB2aWVsIGZ1ZXIgbWljaC4gCgpHb3JvZyBmcmV1dCBzaWNoLCBkYXNzIGJlaSBBbmdiYW5kIGRpZSBNdWVuemVuIG5peCB3aWVnZW4sIGRhIG1hbiBzaWNoIGphIGF1Y2gKbml4IGRhZnVlciBrYXVmZW4ga2FubiAoamVkZW5mYWxscyBmYXN0IG5peCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtcGYgOykgKE5vdmFzdG9ybSwgIDguIFNlcCAxOTk4LCAyMDo0ODowMSk6CltGZXVlcjpSaW5nb3JdIHRyZWZmZW4gYmVpIEV4LUhlej8KSGV6J1pvYXJhdGgga29tbXQgYW4uCgpEYXMgZGVyIHNvIGVtcGZpbmRsaWNoIHJlYWdpZXJlbiBtdXNzIDspCiAgICBOb3ZhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmFudSAoVGVkZHksICA4LiBTZXAgMTk5OCwgMjM6MjQ6NTQpOgpEdSBzYWdzdDogRHUgYmlzdCBhdWNoIFp3ZXJnClR1ZmZpIHNjaHVldHRlbHQgZGVuIEtvcGYuCgpUZWRkeSwgbWFsIHdpZWRlciBpcnJpdGllcnQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmluIGRlciB0b2Rlc3NlcXVlbnogaXJnZW5kd2Fubi4uLiAoSG9vZCwgIDkuIFNlcCAxOTk4LCAwMDoxNDoxOCk6CkVpbiBTZWhlciBuaWNrdCB6dXN0aW1tZW5kLgpFaW4gU2VoZXIgc2FndDogT2RlciBiZWkgT0JJLgpEZWluIEtvZXJwZXIgZ2Vob3JjaHQgRGlyIG5pY2h0ICEKPiBEaWUgYnVudGVuIEJhZWxsZSBmbGllZ2VuIHdpZWRlciBuYWNoIG9iZW4uCgpEZXIgVG9kIHNhZ3Q6IExBUlMgSEFUIE1JQ0ggRUJFTiBEQVJBTiBFUklOTkVSVCwgREFTUyBJQ0ggREVJTkUgU0VFTEUgTk9DSApOSUNIVCBVTlRFUlNVQ0hUIEhBQkUuCgpbVG9kOkxhcnNdIEVpbiBFaXN3aXJiZWwgaGF0IGdlcmFkZSBCaXJkeSB1bWdlYnJhY2h0LgogIERlciBFaXN3aXJiZWwgdHJpZmZ0IEJpcmR5IGhhcnQuCiAgRGVyIEVpc3dpcmJlbCB0cmlmZnQgQmlyZHkuCiAgRGVyIHJpZXNpZ2UgVGlnb25lIHRyaWZmdCBCaXJkeSBoYXJ0LgogIERlciByaWVzaWdlIFRpZ29uZSB0cmlmZnQgQmlyZHkgc2VociBoYXJ0LgpCaXJkeSB3ZWlsdCB3aWVkZXIgdW50ZXIgZGVuIExlYmVuZGVuLgpEZXIgVG9kIHNhZ3Q6IERVIERBQ0hURVNUIFdPSEwsIERBUyBIT0xFIElDSCBKRVRaVCBOQUNILCBXSUU/Ck5FRSwgU08gQkxPRUQgQklOIElDSCBOSUNIVC4gSUNIIEhBQkUgR0VOVUcgWlUgVFVOLgoKTGFycyBhdG1ldCBlcmxlaWNoZXJ0IGF1Zi4KW0JlaWxlaWQ6V29vZHldIE9od2UKW0JlaWxlaWQ6TGlnaHRuaW5nXSBCZWlsZWlkIDooCkxhcnMgd2lsbCB3aWVkZXIgZ2VoZW4sIHN0b2xwZXJ0IGplZG9jaCB1bnMgc2NobWVpc3N0IGRhYmVpIGVpbiBSZWdhbAptaXQgU2FuZHVocmVuIHVtLgoKRAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVzd2VydHVuZyAoSG9vZCwgIDkuIFNlcCAxOTk4LCAwMDozMDowMik6CmFsc28gZGllIG1ldHplbHBhcnR5IGluIGRlciBzc3Agd2FyIGVjaHQgbHVzdGlnLiBkYXMgZXJnZWJuaXMgd2FyIGxlaWRlcgp3ZW5pZ2VyIGJlcmF1c2NoZW5kIDopCltUb2Q6TGFyc10gRWluIEJydXR6bGVyIGhhdCBnZXJhZGUgR2FzdDIgdW1nZWJyYWNodC4gPDIwOjM3OjE1PgpbVG9kOkxhcnNdIEVpbiBQeXJvbWFuZSBoYXQgZ2VyYWRlIEdhdG8gdW1nZWJyYWNodC4gPDIwOjUwOjU4PgpbVG9kOkxhcnNdIEVpbiBEcmFjaGVucHJpZXN0ZXIgaGF0IGdlcmFkZSBHYXRvIHVtZ2VicmFjaHQuIDwyMDo1ODoyMD4KW1RvZDpMYXJzXSBFaW4gR2x1dGJlaXNzZXIgaGF0IGdlcmFkZSBHYXRvIHVtZ2VicmFjaHQuIDwyMTowOTo1MD4KW1RvZDpMYXJzXSBFaW4gR2lmdGlnZXIgRGFtcGYgaGF0IGdlcmFkZSBGYXN0IHVtZ2VicmFjaHQuIDwyMTozMToyNz4KW1RvZDpMYXJzXSBFaW4gWndlcmdlbnByaWVzdGVyIGhhdCBnZXJhZGUgQ2hpYW0gdW1nZWJyYWNodC4gPDIxOjM3OjE2PgpbVG9kOkxhcnNdIEVpbiBab21iaWVraW5kIGhhdCBnZXJhZGUgVGVlbG8gdW1nZWJyYWNodC4gPDIxOjM4OjE1PgpbVG9kOkxhcnNdIEVpbiBNYWdtYWdpZ2FudCBoYXQgZ2VyYWRlIEdhc3QzIHVtZ2VicmFjaHQuIDwyMTo1Mzo0MD4KW1RvZDpMYXJzXSBFaW4gRm9yc2NoZXJwdW5rdHNhbW1sZXIgaGF0IGdlcmFkZSBUZWVsbyB1bWdlYnJhY2h0LiA8MjE6NTY6NDY+CltUb2Q6ZWluIEZvcnNjaGVycHVua3RzYW1tbGVyXSBIZXksIGljaCBiaW4gZG9jaCBrZWluIE1ldHpsZXIuIExhc3MgbWljaCBhbHNvCltUb2Q6ZWluIEZvcnNjaGVycHVua3RzYW1tbGVyXSBpbiBSdWhlISA8MjE6NTY6NDY+CltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIERyemVuIHVtZ2VicmFjaHQuCltUb2Q6TGFyc10gPDIyOjAxOjAxPgpbVG9kOkxhcnNdIEFsZnJlZCBoYXQgZ2VyYWRlIEZvb3QgdW1nZWJyYWNodC4gPDIyOjE0OjEwPgpbVG9kOkFsZnJlZF0gRHVtcGZiYWNrZS4gPDIyOjE0OjEwPgpbVG9kOkxhcnNdIEVpbiBQeXJvbWFuZSBoYXQgZ2VyYWRlIE1vdG9rbyB1bWdlYnJhY2h0LiA8MjI6Mjc6MjI+CltUb2Q6TGFyc10gRWluIFNjaGF0dGVuIGhhdCBnZXJhZGUgSG9vZCB1bWdlYnJhY2h0LiA8MjI6MzE6MjM+CltUb2Q6TGFyc10gRWluIEZldWVyZHJhY2hlIGhhdCBnZXJhZGUgWmVwaHlyIHVtZ2VicmFjaHQuIDwyMjo0NjozNj4KW1RvZDpMYXJzXSBFaW4gRmV1ZXJkcmFjaGUgaGF0IGdlcmFkZSBTYXBoaXJhIHVtZ2VicmFjaHQuIDwyMjo0NjozOT4KKCAuIC4gICAgLiAuICkgICAgICAxMjUgKCsxKSAxOTQgICAgMTk0ICgwKSAyMTAgICAgMTMzNjEgKDApIDE1MApbVG9kOkxhcnNdIEVpbiBGZXVlcmRyYWNoZSBoYXQgZ2VyYWRlIExpZ2h0bmluZyB1bWdlYnJhY2h0LiA8MjI6NDY6NDE+CltUb2Q6TGFyc10gRWluIFNjaG1ldHRlcmxpbmcgaGF0IGdlcmFkZSBJdm8gdW1nZWJyYWNodC4gPDIzOjQ3OjU2PgpbVG9kOkxhcnNdIEVpbiBTY2htZXR0ZXJsaW5nIGhhdCBnZXJhZGUgSXZvIHVtZ2VicmFjaHQuIDwyMzo1MjoxND4KW1RvZDpMYXJzXSBFaW4gRHJhY2hlIGhhdCBnZXJhZGUgTWVuYWNlIHVtZ2VicmFjaHQuIDwyMzo1NDo1MD4KW1RvZDplaW4gRHJhY2hlXSBVbmQgd2llZGVyIGdpYnQgZXMgZWluZSBndXQgZHVyY2hnZWdhcnRlIE1haGx6ZWl0IGZ1ZXIgZGVuCltUb2Q6ZWluIERyYWNoZV0gRHJhY2hlbi4uLiAgPDIzOjU0OjUwPgpbVG9kOkxhcnNdIEVpbiBTY2htZXR0ZXJsaW5nIGhhdCBnZXJhZGUgSGVyYSB1bWdlYnJhY2h0LiA8MDA6MDY6Mzg+CltUb2Q6TGFyc10gRWluIFNjaG1ldHRlcmxpbmcgaGF0IGdlcmFkZSBIb29kIHVtZ2VicmFjaHQuIDwwMDoxMToyMj4KWwplaW4gdGVpbCBkZXIgcGFydHkgd2VjaGVsc3RlIGlyZ2VuZHdhbm4gYXVmIGRlbiBmYWVuZ2VyLCBlcmdlYm5pczoKIHNjaG1ldHRlcmxpbmdlIGdlZ2VuIHNlaGVyIDQ6MSAqZ3JycnIqIDopCgpldnRsLiBrb2VubmVuIHdpciBkYSBzYmVpIGdlbGVnZW5oZWl0IG1hbCB3aWVkZXJob2xlbiwgd2FyIGx1c3RpZyA6KQoKLS0tLS0tCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGF1c3dlcnR1bmcgKEx1ZywgIDkuIFNlcCAxOTk4LCAwMDozMDoyOCk6Cn4jISBybj1Ib29kIHJ0PTkwNTI5MzgwMiByZz1zY2htYXJybgp+IyEgdGlkPTkwNTI5MzgwMgoKR2FlaG4hICA7OQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGVyemVsZWlkIChKYXNvbnJpZ2lkLCAgOS4gU2VwIDE5OTgsIDE1OjMyOjQ5KToKW1RvZDpMYXJzXSBMaWViZXNrdW1tZXIgaGF0IGdlcmFkZSBGcmFueiB1bWdlYnJhY2h0LgoKU29zbywgc3RpcmJ0IG1hbiBqZXR6dCBzY2hvbiwgd2VubiBkZXIgUGFydG5lciB6dSBsYW5nZSBuaWNodCBtZWhyIGRhIHdhciwgd2FzCj8gSWNoIGhvZmZlLCBTdWdhYW4gaG9lcnQgbmllIGF1ZiB6dSBNdWRkZW4sIHNvbnN0IGtvbW1lIGljaCBhdXMgZGVtIElkZWxuCm5pY2h0IG1laHIgcmF1cyA6KQoKSmFzb24sIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdW5nZXIgKEJvaW5nLCAgOS4gU2VwIDE5OTgsIDE2OjEyOjE5KToKfiMhIG9uPUJsdWVtZWwgb3Q9OTA1MzUwMzI1IG9nPWVudHdpY2tsdW5nCldlbm4gaWNoIGhpZXIgdm9yIHNvbmVyIE1vZWhyZSBzaXR6ZSB1bmQgbXVkZGUgaGFiIGljaCBncnVuZHNhZXR6bGljaCBIdW5nZXIgIQpfXz4gc2NobWFycm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClplcGh5ciBrbnVkZGVsdCBEaWNoIGdsdWNrc2VuZCB1ZWJlciBkZW4gSGF1ZmVuLiAoSmFzb25yaWdpZCwgIDkuIFNlcCAxOTk4LCAxNjozMzowMyk6CkVpbiBGZXVlcmVsZW1lbnRhciBrb21tdCBnbHVlaGVuZCBoZXJlaW4uClplcGh5ciBzdWNodCBpaHIgTmVzdCB1bmQgdmVyZ2x1Y2tzdCBzaWNoIG5hY2ggV2VzdGVuLgpEZXIgRmV1ZXJlbGVtZW50YXIgd2FlbHp0IHNpY2ggZ2x1ZWhlbmQgbmFjaC4KClNvIGVpbiBIYXVzdGllciB3aWxsIGljaCBhdWNoIDopIEdpYnRzIGRhcyBnZWdlbiBBdWZwcmVpcyBhdWNoIGluIExhc2ggPz8/CgpKYXNvbiBncmluc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIdW5nZXIgKEFscGhhLCAgOS4gU2VwIDE5OTgsIDE2OjM3OjI1KToKfiMhIHJuPUJvaW5nIHJ0PTkwNTM1MDMzOSByZz1zY2htYXJybgp+IyEgdGlkPTkwNTM1MDMzOQpJY2gga3JpZWdlIGtlaW5lbiBIdW5nZXIsIHdlbm4gaWNoIHZvciBuZXIgTW9laHJlIHNpdHplLCBkYSBtdXNzIGVzIHNjaG9uCmxlY2tlcmVzIGdlYnJhdGVuZXMgR2V0aWVyIHNlaW46KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG1tLi4uIFdpZSBqZXR6dCA/IChOb3Zhc3Rvcm0sICA5LiBTZXAgMTk5OCwgMTk6NDI6MzgpOgpOZXVsaWNoIGJlaSBlaW5lbSAoaW50ZWxsaWdlbnRlbiA/KSBTcGllbDoKCkVyZ2VibmlzIGRlcyBTcGllbHM6Ci0tLS0tLS0tLS0tLS0tLS0tLS0tClplcGh5ciBlcnJlaWNodGUgMTQwIFB1bmt0ZS4KTm92YXN0b3JtIGVycmVpY2h0ZSAxNjYgUHVua3RlLgpHbm9tZSBlcnJlaWNodGUgMTcyIFB1bmt0ZS4KCioqKioqKiogR25vbWUgSEFUIERBUyBTUElFTCBHRVdPTk5FTi4gKioqKioqKgpXaWUgd2FyIGRhcyBtaXQgZGVuIFp3ZXJnZW4gdW5kIGRlbiBFbGZlbiA/ICpncnVlYmVsKgoKICAgICBOb3ZhKiAoaW1tZXIgbm9jaCBsYWNoZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGllcnF1YWVsZXJlaSAhISAoSmFzb25yaWdpZCwgIDkuIFNlcCAxOTk4LCAxOTo1MDoxMCk6CkFBQUFISEghIEVpbmUgTWF1cyEgRGlyZWt0IHZvciBEaXIhClFVVUlRSSEgUVVVSUNLSSEgTWlzY2hrYSBxdWlldHNjaHQgbWl0IHNlaW5lciBNYXVzLgoKSWNoIGJlYW50cmFnZSBNaXNjaGthcyBMb2VzY2h1bmcgd2VnZW4gUXVhZWxlcmVpIGVpbmVzIEhhdXN0aWVyZXMgOykKCkphc29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbiBqdWFuIChHcmltbWJvcm4sICA5LiBTZXAgMTk5OCwgMjE6NDU6MzMpOgp+IyEgb249U2lndXJhIG90PTkwNTE2NjAzNSBvZz1hbGxnZW1laW5lcwpTY2hvZW5lIGtsZWluZSBTcGllbHpldWdlIGJla29tbXQgbWFuIGFscyBTZWhlciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2Flc3RlLi4uIChEYXJrd2luZywgMTAuIFNlcCAxOTk4LCAwNDo1NjowMyk6CkR1IHplcnNjaG1ldHRlcnN0IGRlbiBHYXN0IGluIGtsZWluZSBTdHVlY2tjaGVuLgpEZXIgR2FzdCBmYWVsbHQgdG90IHp1IEJvZGVuLgpEZXIgV2lydCBsYWVjaGVsdCBnbHVlY2tsaWNoIHVuZCB6dWZyaWVkZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVmVybGVnZXJlaSAoR3JpbW1ib3JuLCAxMC4gU2VwIDE5OTgsIDE0OjM1OjI1KToKfiMhIG9uPUdyaW1tYm9ybiBvdD05MDU0MzA4OTAgb2c9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgcm49UmluZ29yIHJ0PTkwNTQyOTgyOCByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9OTA1NDI5NTQ4ClJpbmdvciwgRHUuLi4gYWVoLCB3aWUgc2FjaCBpY2ggZGFzLCBEdSBEYXJtYXVzZ2FuXldIYWVtb3JyaG9pZGVuc2l0XlcKc3ltcGF0aGlzY2hlciwganVuZ2VyIE1hbm4sIGRhcyBpc3QgZWluZSBGcmVjaGhlaXQuIE51ciB3ZWlsIGljaCBhdWNoIG11ZWxsCmFib25uaWVydCBoYWJlIGxhc3NlIGljaCBtaWNoIHZvbiBEaXIgbmljaHQgZGlza3JpbWluaWVyZW4sIER1Cld1cm1eV2xhZWNoZXJsaWNoZXIgV2ljaF5XXldzeW1wYXRoaXNjaGVyIGp1bmdlciBNYW5uLgoKTmViZW5iZWkga2FubiBpY2ggaW1tZXIgbm9jaCBuaWNodCB2b24gaGllciB2ZXJsZWdlbiAoYXVzc2VyIG1laW5lbiBlaWdlbmVuCkFydGlrZWxuKSwgd2VubiBpaHIgZGFzIG5pY2h0IGF1ZiBkaWUgUmVpaGUgYmVrb21tdCwgdHV0IG1pciBsZWlkLCBkYW5uIGhpbGZ0CndvaGwgYWxsZXMgbml4IHVuZCBpY2ggbXVzcyBFTSB3ZXJkZW4uIFBlY2ggZnVlciBldWNoLi4uCgpHcmltbWJvcm4gZm9yIEVNISBTYWd0IG1laW4gUHN5Y2hvdGhlcmFwZXV0IGF1Y2ggaW1tZXIhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBWZXJsZWdlcmVpIChBbGluZSwgMTAuIFNlcCAxOTk4LCAxNDo0MTowNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTA1NDMwOTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA1NDI5NTQ4CkFlaD8Kc3ltcGF0aGlzY2hlciBqdW5nZXIgTWFubj8/ClVuZCBkYXMgenUgUmluZ29yPwpHcmltbWkgc2V0eiBuZSBCcmlsbGUgYXVmIQoKQWxpbmUsIGRpZSBSaW5nb3IgaW1tZXIgZnVlciBlaW5lbiBzdGlua2VuZGVuIFp3ZXJnIGdlaGFsdGVuIGhhdHRlICh3ZW5uIGF1Y2gKZnVlciBlaW5lbiBuZXR0ZW4gOykgKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGhseWFrZW4gKEphc29ucmlnaWQsIDEwLiBTZXAgMTk5OCwgMTU6MTk6NTYpOgpQaGx5YWtlbiBmaXhpZXJ0IEx5cmEgdW5kIG1hY2h0IHNjaHd1bmd2b2xsZSBCZXdlZ3VuZ2VuLgpMeXJhIHRhbnp0IHdpZSBpbiBUcmFuY2UgZHVyY2ggZGllIEdlZ2VuZC4KRHUgdHJpdHRzdCBQaGx5YWtlbi4KPiBQaGx5YWtlbiB2ZXJzY2h3aW5kZXQgbWl0IGVpbmVtIEZpbmdlcnNjaG5pcHBlbi4KTHlyYSB0YW56dCB3aWUgaW4gVHJhbmNlIGR1cmNoIGRpZSBHZWdlbmQuCkR1IGZsaXBwc3QgcnVtIC0gd2FzIGhhdCBEaWNoIGRlbm4gZ2VzdG9jaGVuPwpMeXJhIHRhbnp0IHdpZSBpbiBUcmFuY2UgZHVyY2ggZGllIEdlZ2VuZC4KRHUgZ3JpbnN0Lgo+IEx5cmEgc2FndDogRGFzIHdhciBpaG0gd29obCB6dSB2aWVsIDstKQoKV2VubiBkYXMgbWFsIGltbWVyIHNvIGVpbmZhY2ggd2FlcmUgLi4uCgpKYXNvbiwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9iIGRhcyBpbW1lciBzbyBnZWh0PyAoVGhlcmluLCAxMC4gU2VwIDE5OTgsIDIyOjQ4OjA5KToKPiB1bnQgaG9ybgpEdSBzaWVoc3QgZWluIEhvcm4gZGVyIEh5ZHJhLgo+IERpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaHdlcnRlciB1bmQgc28uLi4gKExldiwgMTAuIFNlcCAxOTk4LCAyMzo0MjozMyk6CgpBbHNvLCBpY2ggc29sbHRlIGRhcyBqYSBiZXNzZXIgZXJrZW5lbm4sIGFiZXIuLiBudW4gamEuLgoKPiB1bnQgZGFlbW9uCgpEaWVzZXIgV2FlY2h0ZXIgaXN0IGVpbiBEdW5rZWxkYWVtb24gZGVyIHVlYmVsc3RlbiBTb3J0ZS4gU2VpbmUKdW5kdXJjaGRyaW5nbGljaGUgUnVlc3R1bmcgdW5kIGRhcyByaWVzaWdlIFNjaHdlcnQgc2FnZW4gRGlyIGVpbmRydWNrc3ZvbGwsCmRhc3MgbWFuIHNpY2ggbWl0IGRpZXNlbSBEYWVtb24gYmVzc2VyIG5pY2h0IGFubGVndC4KaXN0IGFic29sdXQgZml0LiAoMTAwJSkKRXIgdHJhZWd0IGJlaSBzaWNoOgpFaW5lIER1bmtlbG1hZ2llcnVlc3R1bmcgKGFuZ2V6b2dlbikuCkVpbiBEYWVtb25lbmhhbW1lciAoZ2V6dWVja3QpLgoKCipncmlucyoKCkxldi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCZWlsZWlkIG9kZXIgbmljaHQ/IChMZXYsIDExLiBTZXAgMTk5OCwgMDA6MzE6MTkpOgoKW0FsbGdlbWVpbjpLb29taV0gYml0dGUgamV0enQga2VpbiBiZWlsZWlkLgpbVG9kOkxhcnNdIEVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsIGhhdCBnZXJhZGUgS29vbWkgdW1nZWJyYWNodC4KW1RvZDpFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbF0gUGZmZmZmZmZmZmZmdC4uLi4uLi5QTFVNUFMhCgoKTGV2CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBWZXJsZWdlcmVpIChHcmltbWJvcm4sIDExLiBTZXAgMTk5OCwgMDk6Mzc6MzkpOgp+IyEgcm49UmFudGFucGxhbiBydD05MDU0NTExNzQgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTkwNTQyOTU0OAphcmdsLiBFcyB3aXJkIHdpcmtsaWNoIFplaXQgZGFzcyBzaWNoIGRpZSBIZXJyZW4gKHVuZCBEYW1lKSBFTSBkYXp1IGF1ZnJhZmZlbiwKZGFzcyBpY2ggaW4gcG9saXplaS5iZXNjaHdlcmRlbiBsb2VzY2hlbiBrYW5uLiBEaWVzZW4gQXJ0aWtlbCBoYWV0dGUgaWNoIHp1Cmdlcm5lIG5hY2ggbXVlbGwgdmVyc2Nob2Jlbiwgdm9uIHdlZ2VuIGRydW0gZ2ViZXRlbi4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IGZvciBFcnptYWdpZXIhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBWZXJsZWdlcmVpIChBbmF0b2wsIDExLiBTZXAgMTk5OCwgMTA6Mjk6MDMpOgp+IyEgcm49WmFybml5YSBydD05MDU1MDIzMjMgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTkwNTQyOTU0OApBY2gsIFphcm5peWEsIGlzdCBlcyBuaWNodCBERUlOIFJlZmxleCwgYmVpIGdld2lzc2VuIE5hbWVuIG1pdCBlaW5lcgpiZW1lcmtlbnN3ZXJ0ZW4gVmllbGZhbHQgYW4gQmVzY2hpbXBmdW5nZW4gYXVmenV3YXJ0ZW4/IDopCgpGcmVpIG5hY2ggT2V0dGk6IFdlciBhbmRlcmUgZXJuc3QgbmltbXQsIGhhbmRlbHQgc2VsYnN0dmVyYW50d29ydGxpY2guIDpvKQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVmVybGVnZXJlaSAoSGFkcmEsIDExLiBTZXAgMTk5OCwgMTA6MzI6MTkpOgp+IyEgcm49QW5hdG9sIHJ0PTkwNTUwMjU0MyByZz1zY2htYXJybgp+IyEgdGlkPTkwNTQyOTU0OApoaWVzcyBkYXMgbmljaHQgYmVpIG9ldHRpOgp3ZXIgc2ljaCBzZWxiZXIgZXJuc3QgbmltbXQsIGhhbmRlbHQgb2RlciBsYWVzc3QgZXMgYmxlaWJlbiAtIGF1ZiBhbGxlIGZhZWxsZQpoYXQgZXIgcGVjaCBnZWhhYnQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaGVrcmFjaD8gKE1vcmdvdGgsIDExLiBTZXAgMTk5OCwgMTI6MzM6MTQpOgpEZWluZSBGcmV1bmRpbiBBbGluZSBrbnVkZGVsdCBEaWNoIGxpZWJldm9sbCBhdXMgZGVyIEZlcm5lLiBbMTI6MDVdCkFsaW5lICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpXYXJnb24gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKV2FyZ29uIHJ1ZnQ6IEhpaG8hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWhla3JhY2g/IChXYXJnb24sIDExLiBTZXAgMTk5OCwgMTI6Mzc6MzkpOgp+IyEgcm49TW9yZ290aCBydD05MDU1MDk5OTQgcmc9c2NobWFycm4KfiMhIHRpZD05MDU1MDk5OTQKSWNoIGhhYiBudXIgZ2V3YXJ0ZXQsIGJpcyBkaWUgTHVmdCByZWluIGlzdC4gOikKICBXYXJnb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaGVrcmFjaD8gKEFsaW5lLCAxMS4gU2VwIDE5OTgsIDE2OjA0OjM4KToKfiMhIHJuPU1vcmdvdGggcnQ9OTA1NTA5OTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA1NTA5OTk0CgpWZXJnaXNzIG5pY2h0IE1vbiBDaGljaGkgOikKCldhcmdvbiBpc3QgR0xVRUNLTElDSCB2ZXJoZWlyYXRldCEKCkFsaW5lIGRlbmt0IC4gbyBPIChPZGVyIGVyIGxlYnQgbmljaHQgbWVociBsYW5nZSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWhla3JhY2g/IChSb2NodXMsIDExLiBTZXAgMTk5OCwgMTY6MzE6NDgpOgp+IyEgcm49QWxpbmUgcnQ9OTA1NTIyNjc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA1NTA5OTk0CkFsc28gZ2x1ZWNrbGljaCBiaXMgenVtIExlYmVuc2VuZGUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRzdHMgOy0pIChOb3Zhc3Rvcm0sIDExLiBTZXAgMTk5OCwgMTc6NDM6NDIpOgpaZXBoeXJzIEtvbGxlZ2UgaXN0IGdyYWQgd2llZGVyIG1hbCB2b24gbmVtIGFuZHJuIEtvbGVnZW4gYWJnZXNjaG9zc2VuIHdvcmRlbi4KW1RydmVzOktpdSB3aW5rdF0KVGVkZHkgZGVua3Q6IEljaCBoYXNzZSBlcywgd2VubiBtZWluIFJlY2huZXIgYWJzY2htaWVydCA6LSgKCiAgICAgIE5vdmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdWNodGllOiAoVGVkZHksIDExLiBTZXAgMTk5OCwgMTc6NDQ6MTApOgpUaGVyaW4gdGVpbHQgRGlyIG1pdDogRWluZ2Vsb2dndCBzZWl0OiBNb24sIDMxLiBBdWcgMTk5OCwgMjM6MjY6MDAgLi4uREFTClRoZXJpbiB0ZWlsdCBEaXIgbWl0OiBCRVNUUkVJVEUgSUNICgoKSmFqYSwgVGVkZHkuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN1Y2h0aWU6IChUaGVyaW4sIDExLiBTZXAgMTk5OCwgMTc6NTM6MTgpOgp+IyEgcm49VGVkZHkgcnQ9OTA1NTI4NjUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA1NTI4NjUwCgpEYXMgc2FndCBkZXIgcmljaHRpZ2UuLi4KVGVkZHkgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IEhhZ2VuLgpFaW5nZWxvZ2d0IHNlaXQ6IFNhbSwgMjkuIEF1ZyAxOTk4LCAwNTo1NTo1MAooLi4uKQoKVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3VjaHRpZTogKFRlZGR5LCAxMS4gU2VwIDE5OTgsIDE3OjU0OjE3KToKfiMhIHJuPVRoZXJpbiBydD05MDU1MjkxOTggcmc9c2NobWFycm4KfiMhIHRpZD05MDU1Mjg2NTAKS2FubiBqYSBnYXJuaWNodCBzZWluLCBpY2ggaGFiIG1pY2ggZ3JhZCBlcnN0IGVpbmdlbG9nZ3QgdW5kIGdlaCBhdWNoIHNjaG9uCndpZWRlcjogSWNoIGJpbiBqYSBzY2hsaWVzc2xpY2ggbmljaHQgc3VlY2h0aWcuIDspCgpUZWRkeSwgZ2VodCBkYW5uIG1hbCBsaWViZXIgd2llZGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGVsZXBvcnQgT3JrcyA/IChEYXJrd2luZywgMTEuIFNlcCAxOTk4LCAxOTowNjoyMCk6CkVpbiBPcmsgZXJzY2hlaW50IGluIGVpbmVyIFJhdWNod29sa2UuCkRlciBPcmsgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIHNlaHIgZ2VsdW5nZW5lbiBZb2tvLW1hd2FzaGktZ2VyaSBhbi4KRGVyIE9yayBzY2hsYWVndCBEaWNoIHp1IEJyZWkuCkVpbiBPcmsgdmVyc2Nod2luZGV0IG1pdCBLbmFsbCB1bmQgU2Nod2VmZWxkdWZ0LgoKYWxsZXMga2xhci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFQtU2hpcnRzIChHcmltbWJvcm4sIDExLiBTZXAgMTk5OCwgMjE6MTg6MDApOgp+IyEgb249VGVkZHkgb3Q9OTA1NTI3OTg4IG9nPXdpdHplCn4jISBybj1TbHlmb3ggcnQ9OTA1NTIwNDA5IHJnPXdpdHplCn4jISB0aWQ9OTA1NTIwNDA5CldBUyBIQVNUIERVIEdFR0VOIFhYWEwgPwoKVGVkZHkgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVC1TaGlydHMgKEdyaW1tYm9ybiwgMTEuIFNlcCAxOTk4LCAyMToxODoxMyk6Cn4jISBvbj1HbG9pbnNvbiBvdD05MDU1MjkzNDkgb2c9d2l0emUKfiMhIHJuPVRlZGR5IHJ0PTkwNTUyNzk4OCByZz13aXR6ZQp+IyEgdGlkPTkwNTUyMDQwOQpEYSB3YXIgZGVyIHZvcmhlciBiZXNzZXIgKmVpbnN0dWYqIE1pdCBkZW0gaGFiZSBpY2ggc29nYXIgbWVpbmUgRnJldW5kZQp6dW0gTGFjaGVuIGdlYnJhY2h0LgoKR2xvaW4gLi4uIHVlYmVybGVndCBzaWNoIGRpZSBXYWhsIG5vY2ggZWluIHBhYXIgV29jaGVuIC4uLiBhZWggVGFnZSA/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVXJsYXViICh3YXMgc29uc3QpIChHbG9pbnNvbiwgMTIuIFNlcCAxOTk4LCAwMzo0MTozMik6Cn4jISBybj1TaWx2YW5hIHJ0PTkwNTU2MDAxNyByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9OTA1NTYwMDE3CkR1IGhhc3QgZWluIFJMLUxlYmVuPyBFY2h0PyA7LSkKVmllbCBTcGFzcyB1bmQgdmVyc3VjaCBtYWwgZGllIGtsZWluZSBidW50ZSBLaXN0ZSBnYW56IHp1IHZlcmdlc3Nlbi4KCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCZWdydWVzc3VuZyAoPykgKExldiwgMTIuIFNlcCAxOTk4LCAxNzoxNzo0Mik6CgpHZW9yZGkgcnVmdDogISYkIychISBHcnViZSEKRGVsIGRlbmt0OiBodWh1IGdlb3JkaQoKCipraWNoZXIqCgpMZXYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEc2NodW5nZWxtdW5kLCB0dXQgV2FocmhlaXQga3VuZC4uLiAoVGhlcmluLCAxMi4gU2VwIDE5OTgsIDIzOjM3OjA4KToKW1RvZDpMYXJzXSBLcmF2ZWsgQW5hZ2FkYSBoYXQgZ2VyYWRlIExhZHlkZWF0aCB1bWdlYnJhY2h0LgpbVG9kOkxhcnNdIEVpbiBIYW1tZXIgaGF0IGdlcmFkZSBUYW5pcyB1bWdlYnJhY2h0LgpBdXMgZGVyIEZlcm5lIGhvZXJzdCBEdSBkZW4gVG9kZXNzY2hyZWkgZWluZXMgYW5kZXJlbiBBYmVudGV1cmVycy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTQ1JJUFQ/IT8gKEFuYXRvbCwgMTMuIFNlcCAxOTk4LCAwMDoxODo1OCk6Cn4jISBybj1aYXJuaXlhIHJ0PTkwNTYxNzk3MCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTkwNTQyNzU2OAouLi4gImRlbm4gc28gZWluZW4gd3VlcmQgaWNoIGFscyBTaGVyaWZmL0dvdHQgLi4uICIgLi4uCgpQdWggOikKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvIHdhciBkYXMgbmljaHQgZ2VtZWludCAoU2NobGVpY2hlciwgMTMuIFNlcCAxOTk4LCAwMjozNTo0MCk6CnVuZ2VrdWVyenQgRHUgdGVpbHN0IGRlaW5lbiBGcmV1bmRlbiBtaXQ6IC4uLnVuZCB0c2NodWVzcy4uLiA+IERpZSBPcmtnYWxlZXJlCmxlZ3QgYWIuIEZlbmRlciB0ZWlsdCBEaXIgbWl0OiB5byBIYXQgc2ljaCBkYSBuaWNodCBldHdhcyBpbSBXYXNzZXIgYmV3ZWd0PwpbVG9kOkxhcnNdIEVpbiBGcm9zdHd1cm0gaGF0IGdlcmFkZSBGZW5kZXIgdW1nZWJyYWNodC5EdSB0ZWlsc3QgZGVpbmVuCkZyZXVuZGVuIG1pdDogLi4udW5kIHRzY2h1ZXNzLi4uPiBEaWUgT3JrZ2FsZWVyZSBsZWd0IGFiLiBGZW5kZXIgdGVpbHQgRGlyCm1pdDogeW8gSGF0IHNpY2ggZGEgbmljaHQgZXR3YXMgaW0gV2Fzc2VyIGJld2VndD8gW1RvZDpMYXJzXSBFaW4gRnJvc3R3dXJtIGhhdApnZXJhZGUgRmVuZGVyIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplYmVuIGJlaSBTaGFyaWEgKE5haXJvbGYsIDEzLiBTZXAgMTk5OCwgMTM6NTA6NTMpOgo+IHd1CkR1IHdpcmtzdCBlaW4gV3VuZGVyLgpNb3Jnb3RoIHZlcndhbmRlbHQgc2ljaCBpbiBlaW5lbiBrbGVpbmVuIGdydWVuZW4gRnJvc2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZWZmZWt0dm9sbGVyIEF1ZnRyaXR0IChtYWwgd2llZGVyKSAoVHJhbmNlZmVhciwgMTQuIFNlcCAxOTk4LCAwMDo0ODozMik6Cj4gRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KQmFtYnVsa28gYmV0cml0dCBkaWVzZSBXZWx0LgoKKGphamEgaWNoIHdlaXNzIGRhcyBpc3QgYWx0LCBhYmVyIGltbWVyIG5vY2ggbmV0dCkKCnRmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptZWluIGdvdHQsIHdhbHRlciEgKE5hY2h0d2luZCwgMTQuIFNlcCAxOTk4LCAwNDoxNjo0OCk6CiAKRHUgZ2lic3QgV2FsdGVyIGRhcyB6ZXJicm9jaGVuZSBSdW5lbnNjaHdlcnQuCldhbHRlciBzY2hhdXQgRGljaCBhbi4KV2FsdGVyIHNhZ3Q6IEljaCBrYW5uIGtlaW5lbiBTY2hhZGVuIGFuIGRlciBXYWZmZSBlbnRkZWNrZW4uCldhbHRlciBsYWVzc3QgZGllIFdhZmZlIGZhbGxlbi4KCkJlcnVmIHZlcmZlaGx0LiBHYW56IGtsYXIhCk5hY2h0d2luZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdXMgZGVtIFdvZXJ0ZXJidWNoIGVpbmVzIFNvbmRlcmVybWl0dGxlcnMgKENhdHdlYXpsZSwgMTQuIFNlcCAxOTk4LCAwOTo0MzoxNCk6Cldhc2hpbmd0b24oQVApLQpEb2UgNTAwMCB2ZXJzY2hpZWRlbmVuIFdvZXJ0ZXIsIGRpZSBTb25kZXJlcm1pdHRsZXIgS2VubmV0aCBTdGFyciB1bmQgc2VpbmUKTWl0YXJiZWl0ZXIgaW4gaWhyZW0gQmVyaWNodCB1ZWJlciBVUy1QcmFlc2lkZW50IEJpbGwgQ2xpbnRvbiBiZW51dHplbiwKYmlsZGVuIGdlcmFkZXp1IGVpbiBXb2VydGVyYnVjaCBkZXMgU2V4dWVsbGVuLiBEaWVzIGVyZ2FiIGVpbmUgQ29tcHV0ZXItCmFuYWx5c2UgZGVzIFRleHRlcy4gSW4gZGVtIEJlcmljaHQgU3RhcnJzIGRyZWh0IHNpY2ggYWxsZXMgdW0gIlNleCIsIG9iIG51bgoib3JhbCIgb2RlciBhbSAiVGVsZXBob24iLiBPZGVyIGF1Y2ggdW0gZGFzICJTZXh1ZWxsZSIgLSB3aWUgaW4gInNleHVlbGxlCkJlZ2VnbnVuZyIsICJzZXh1ZWxsZSBCZXppZWh1bmciLCAic2V4dWVsbGVzIFZlcmxhbmdlbiIgb2RlciAic2V4dWVsbGVyClZlcmtlaHIiLiBWaWVsZSBBYmdlb3JkbmV0ZSBvZGVyIEp1cmlzdGVuIGFldXNzZXJ0ZW4gWndlaWZlbCwgb2IgdGF0c2FlY2gtCmxpY2ggYWxsZSBFaW56ZWxoZWl0ZW4gZGVyIEJlemllaHVuZyBDbGludG9uIHp1ciBFeHByYWt0aWthbnRpbiBNb25pY2EKTGV3aW5za3kgaGFldHRlbiBhdXNnZWJyZWl0ZXQgd2VyZGVuIG11ZXNzZW4uCkRhcyBXb3J0ICJTZXgiIHN0aWNodCBtaXQgMTY0IE5lbm51bmdlbiBhdXMgZGVtIFRleHQgaGVydm9yLCBlcyB3aXJkIG51cgpub2NoIHVlYmVydHJvZmZlbiB2b24gZGVtIGRhenVnZWhvZXJpZ2VuIEFkamVrdGl2ICJzZXh1ZWxsIiwgZGFzIDQwNSBNYWwKdmVyd2VuZGV0IHdpcmQuIEVpbmUgb2RlciBtZWhyZXJlICJCcnVlc3RlIiB3ZXJkZW4gNjIgbWFsIHZlcndlbmRldCwgZGllCiJaaWdhcnJlIiAyMywgIlNhbWVuIiAxOSB1bmQgIlZhZ2luYSIgZnVlbmYgTWFsLiBEYXMgIkdlbml0YWwiIHVuZCBzZWluZQpXb3J0dmFyaWF0aW9uZW4gZmluZGV0IG1hbiA2NCBNYWwuIERhendpc2NoZW4gaXN0IGFiZXIgYXVjaCBub2NoIFBsYXR6IGZ1ZXIKIkxpZWJlIiAoMTgpIHVuZCAiR2VzY2hlbmtlIiAoMjE1KSwgZGllIHZpZWxsZWljaHQgZWluIExpZWJlbmRlciBlaW5lbQphbmRlcmVuIGdpYnQuCkp1cmlzdGlzY2hlIEFzcGVrdGUga29tbWVuIHJlbGF0aXYgc2VsdGVuIHZvci4gIkJlaGluZGVydW5nIiwgb2Z0IGltClp1c2FtbWVuaGFuZyBtaXQgIkp1c3RpeiIsIHRhdWNodCBlbGYgTWFsIGF1ZiwgIk1laW5laWQiIGltbWVyaGluIG5vY2ggNDAKTWFsLiBVbmQgZGllIEhvZWNoc3RzdHJhZmVmdWVyIGRlbiBQcmFlc2lkZW50ZW4sICJJbXBlYWNobWVudCIgKEFtdHNlbnQtCmhlYnVuZyksIGdpYnQgZXMgMTUgTWFsLiBBYmVyIFNleCB1bmQgU3RyYWZlIHNpbmQgbmljaHQgYWxsZXM6ICJQaXphIiBnaWJ0CmVzIGF1Y2ggLSAyMCBNYWwuCi0tLS0tCkFydGlrZWwgZGVyIFN1ZWRkZXV0c2NoZW4gWmVpdHVuZywgMTQuIFNlcCAxOTk4CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEVVJTVCAhISEgKFB5cmRhY29yLCAxNC4gU2VwIDE5OTgsIDE0OjQ4OjA3KToKRHUgYmVmaW5kZXN0IERpY2ggaW0gd2VpbmVuZGVuIERyYWNoZW4uCkRpZXNlIFNjaGVua2UgaXN0IGRpZSBlaW56aWdlIGFuIGRpZXNlciBFY2tlIGRlciBXZWx0LiBIaWVyIHdpcmQgYXVjaCBkZXIKYmVydWVobXRlIFBvcnR3ZWluIGF1cyBQb3J0IFZhaW4gYXVzZ2VzY2hlbmt0LiBEYW1pdCBkZXIgaHVuZ3JpZ2UgV2FuZGVyZXIKc2ljaCBzdGFlcmtlbiBrYW5uLCBnaWJ0IGVzIGF1Y2ggZWluIHBhYXIgZWluZmFjaGUgR2VyaWNodGUuCkRlciBBdXNnYW5nIGJlZmluZGV0IHNpY2ggaW0gTm9yZGVuLgpEaWUgU3BlaXNla2FydGUgbGFlc3N0IHNpY2ggbWl0ICdtZW51ZScgYW5zZWhlbi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG5vcmRlbi4KRGVyIEtvcGYgZWluZXMgZ2lnYW50aXNjaGVuIFRhdXNlbmRmdWVzc2xlcnMuClJha29yaXVtLgpEaWUgVG9wLUxpc3RlLCBUb3AtU3BpZWxlcmxpc3RlIHVuZCBUb3AtU2VoZXJsaXN0ZS4KCkhtLCBvZmZlbmJhciBtdXNzIGVyIGF1Y2ggYWIgdW5kIGFuIGVpbmVuIGhlYmVuICpncmlucyoKClB5cmRhY29yIGdyaW5zdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZXhjaGVuIChBY3JpbW9uLCAxNC4gU2VwIDE5OTgsIDE5OjE3OjQzKToKRGFya3dpbmcga251ZGRlbHQgS2FtZWxvdCwgQ2FsaW1lcmEsIERpY2gsIEhhaXIsIEZyb2dodW50ZXIsIEdoYW5kaSB1bmQgZWluZW4KVGlzY2guCkthbWVsb3Qgc2FndDogd2FydW0ga251ZGRlbHN0IGR1biBkZW4gdGlzY2gKRnJvZ2h1bnRlciBrbnVkZGVsdCBEYXJrd2luZy4KQ2FsaW1lcmEga251ZGRlbHQgZWluZW4gVGlzY2guCkNhbGltZXJhIHNhZ3Q6IGRlciBtYWcgZGFzCkRhcmt3aW5nIGJlc2NoaW1wZnQgZWluZW4gVGlzY2g6IFNvd2FzIHdpZSBEdSBnZWhvZXJ0IGF1ZiBkaWUgSG9jaGViZW5lIQpFaW4gVGlzY2ggZXJ3aWRlcnQ6IEhvY2hlYmVuZT8gTmVpbiwgYml0dGUgbmljaHQsIGRhIHNpbmQgZGllIGdhbnplbgpFaW4gVGlzY2ggZXJ3aWRlcnQ6IEFuZmFlbmdlciEKCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluIEh1aG4uLi4gKFRodWZoaXIsIDE0LiBTZXAgMTk5OCwgMTk6NDI6MDcpOgoKW2thdGFrb21iZW46RWluIEh1aG4gdWViZXJnaWJ0IGRpZSBFYmVuZSBhbiBHYXRvLl0KCm9obmUgV29ydGUsIFRodWZoaXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkphamEuLi4gIChMZXYsIDE0LiBTZXAgMTk5OCwgMjE6MDc6MTIpOgoKKHVuZ2VzY2huaXR0ZW4pCgpEaWUgQWthZGVtaWVzdHJhc3NlIGZ1ZWhydCB3ZWl0ZXIgaW4gT3N0LVdlc3QgUmljaHR1bmcuIFdlaXQgaW0gTm9yZGVuCmJlZ2lubnQgZGllIEdlYmlyZ3NyZWdpb24gZGVyIFp3ZXJnZS4gSW0gU3VlZGVuIGxpZWdlbiBkaWUgQXVlbiBkZXMKRHVua2Vsd2Fzc2Vycywgd28gemFobHJlaWNoZSBCYXVlcm5ob2VmZSBzdGVoZW4uCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3RlbiB1bmQgd2VzdGVuLgpDYWxpbWVyYSAtIEhvaGVwcmllc3RlcmluIGRlciBTY2hsdW1wZmluYS4KQ2FsaW1lcmEga2xhcHB0IGlocmVuIFNjaGF1a2Vsc3R1aGwgenVzYW1tZW4gdW5kIGVpbHQgd2VnLi4KRWluIGxhdXRlciBLbmFsbCBoYWxsdCB2b20gR2ViaXJnZSBoZXJ1ZWJlci4KCgpVbmQgZGFzIGFsbGVzIG51ciwgdW0gbWljaCB6dSBiZWVpbmRydWNrZW4/Pz8/IAoKCipncmlucyoKCkxldgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFppdGF0ZSBpbiAuc2lncyAoR3JpbW1ib3JuLCAxNC4gU2VwIDE5OTgsIDIzOjA3OjEyKToKfiMhIG9uPVNvbmdva3Ugb3Q9OTA1NzcwMDgzIG9nPXdpdHplCn4jISBybj1aYXJuaXlhIHJ0PTkwNTYxNzE2MSByZz13aXR6ZQp+IyEgdGlkPTkwNTYxNzE2MQpXbyBoYXN0IGR1IGRlbiBnZWZ1bmRlbj8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFppdGF0ZSBpbiAuc2lncyAoR3JpbW1ib3JuLCAxNC4gU2VwIDE5OTgsIDIzOjA3OjIyKToKfiMhIG9uPUhvYm8gb3Q9OTA1NzcwMjMwIG9nPXdpdHplCn4jISBybj1Tb25nb2t1IHJ0PTkwNTc3MDA4MyByZz13aXR6ZQp+IyEgdGlkPTkwNTYxNzE2MQpEaWUgc2lnIGhhYicgaWNoIGF1Y2ggc2Nob24gbWFsIGdlc2VoZW4uIElyZ2VuZGVpbiBab29waGlsZXIgaGF0dGUgZGllLCBhYmVyCmZyYWcgbWljaCBuaWNoLCB3ZWxjaGVyIGRhcyB3YXIuLi4KCiAgSG9ibwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogWml0YXRlIGluIC5zaWdzIChHcmltbWJvcm4sIDE0LiBTZXAgMTk5OCwgMjM6MDc6MjMpOgp+IyEgb249VGFyaW5hIG90PTkwNTc3OTIxMCBvZz13aXR6ZQp+IyEgcm49SG9ibyBydD05MDU3NzAyMzAgcmc9d2l0emUKfiMhIHRpZD05MDU2MTcxNjEKSWNoIHdlaXNzIGVzLCBzYWdzIGFiZXIgbmljaHQuIEFldHNjaC4KClRhcmluYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwZWlwbGFuIChUcmFuY2VmZWFyLCAxNS4gU2VwIDE5OTgsIDAxOjQ4OjE5KToKTWVuc2EtU3BlaXBsYW4gZnVlciBkaWUgWmVpdCB2b20gMTQuIFNlcCAxOTk4IGJpcyAxNi4gU2VwIDE5OTgKRXNzZW5zcHJlaXNlCiAgICAgIGZ1ZXIgQVVTR0FCRSBJICAgICAgICAgQVVTR0FCRSBJSSAgICAgICAgICAgICAgIEFVU0dBQkUgSUlJClN0dWRlbnRlbiAgMjUgTXVlbnplbiAgICAgICAgMzAgTXVlbnplbiAgICAgICAgICAgICAgIDM1IE11ZW56ZW4KIEJlZGllbnRlICAzMiBNdWVuemVuICAgICAgICAzNyBNdWVuemVuICAgICAgICAgICAgICAgNDIgTXVlbnplbgogICBHYWVuc2UgIDM5IE11ZW56ZW4gICAgICAgIDQ0IE11ZW56ZW4gICAgICAgICAgICAgICA0OSBNdWVuemVuCk1vb3J0YWcgICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgIFNjaG9ud2llZGVyc2Nobml0emVsIG1pdCBESUUgQUxURVJOQVRJVkU6ICAgICAgICAgR3VsYXJzY2hzdXBwZQogICBHZW11ZXNlcGl0c2NoaXBhdHNjaGkgICAgU2FobmVoYXNjaGlzY2gsIENhY2tlciAgIG1pdCBLcmFtcGZudWRlbG4KICAgdW5kIFNjaG51ZGVsbiAgICAgICAgICAgIEhhbmZzYWxhdCwgTW9obnN0cmllemVsICB1bmQgS2FtaWxsZW5zYXVjZQpEaW5nc2RhICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBBbHRvZWxzYXJkaW5lbiAgICAgICAgICAgSGFuZGNyZW1lc3VwcGUgICAgICAgICAgICAgICAgICAgVyBlIGcgZSBuCiAgIG1pdCBSb3R6bW91bGFkZSAgICAgICAgICBadWVyaWNoZXIgR2VtZXR6ZWx0ZXMgICAgICAgIFUgZSBiIGUgbCBrIGUgaSB0CiAgIHVuZCBHcnVuenNjaG1hbGFkICAgICAgICBhdWYgYnVudGVtIFBpc3NvdHRvICAgICAgICBnIGUgcyBjIGggbCBvIHMgcyBlIG4KU2NoaXR0d29jaCAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgQ2FsYW1hcmlzIGEgbGEgdGV4ICAgICAgIEJpb2thcnRvZmZlbGthZWZlciAgICAgICBUb3RlIExpbmlzLCBTY2h3ZWluZS0KICAgUGZpZmZpZ2VyIER1ZW5ucXVhcmsgICAgIFN1bXBmcmVpc2JyZWkgICAgICAgICAgICBrYWNrYmFlbGxjaGVuLCBCbGF0dC0KICAgRmxvdHRlciBLYWVmZXJzYWxhdCAgICAgIEZhdWxiZWVyZW5hdXNsZXNlICAgICAgICBzcGluYXQgUmlubm1hbm5zIEFydAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpLb3R6dHVldGVuIHp1IGFsbGVuIEdlcnVlY2h0ZW4uIERlc3NlcnQgenVyIFF1YWwgZ2VnZW4gU2F1cHJlaXMgdm9uIDMgTXVlbnplbi4KRGVyIEt1ZWNoZW5jaGVmIHJhZXQ6IExhc3NlbiBTaWUgc2ljaCBkYXMgRXNzZW4gbm9jaG1hbCBydWVja3dhZXJ0cwogICAgICAgICAgICAgICAgICAgICAgZHVyY2ggZGVuIEtvcGYgZ2VoZW4uCgooZ2VmdW5kZW4gaW4gZWluZW0gYW5kZXJlbiBNVUQpCgp0ZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNwZWlwbGFuIChBbmF0b2wsIDE1LiBTZXAgMTk5OCwgMTA6MjM6NDEpOgp+IyEgcm49VHJhbmNlZmVhciBydD05MDU4MTY4OTkgcmc9c2NobWFycm4KfiMhIHRpZD05MDU4MTY4OTkKU3VwZXIsIGRhc3MgZWluIE11ZGdvdHQgaW4gc2VpbmVtIGVpZ2VuZW4gTXVkIG5vY2ggRGluZ2UgZmluZGV0Li4uCgoqdGFldHNjaGVsKgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTcGVpcGxhbiAoTW9yZ290aCwgMTUuIFNlcCAxOTk4LCAxMDoyNDoxNyk6Cn4jISBybj1BbmF0b2wgcnQ9OTA1ODQ3ODIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA1ODE2ODk5Ck5hIHdlbm4gaWhyIHNvbGNoIGVpbmVuIHNjaGVpc3MgbmFjaCBkLmVyem1hZ2llciBwb3N0ZXQgOy0pCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBwZXJsLXNhY2hlbiAoQW5hdG9sLCAxNS4gU2VwIDE5OTgsIDIwOjMzOjQ0KToKfiMhIHJuPU11YWRkaWIgcnQ9OTA1ODgzNTE5IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTkwNTgwMzU2OQpBbHNvIHdlbm4gdW5zZXIgTWF0aGUtUHJvZiBtaXQgIkRlciByZXN0IGlzdCB0cml2aWFsIiBhdWZ3YXJ0ZXRlLCB3YXIgCmRhcyBlaW4gZXJuc3R6dW5laG1lbmRlciBHcnVuZCwgZGllIEF1ZmdhYmVuIE5JQ0hUIHp1IGJlZ2lubmVuLi4uIHNpZQp3dWVyZGVuIGVoIHp1IGxhbmdlIGRhdWVybiA6KS4KCkFuYSAtIHRvbCwgbmljaHQgbHlzaXMKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBwZXJsLXNhY2hlbiAoV3VyemVsLCAxNS4gU2VwIDE5OTgsIDIyOjMwOjU1KToKfiMhIHJuPUFuYXRvbCBydD05MDU4ODQ0MjQgcmc9c2NobWFycm4KfiMhIHRpZD05MDU4MDM1NjkKd2VpY2hlaS4gd2FzIHRyaXZpYWwgaXN0IG9kZXIgbmljaHQsIGthbm4gbWFuIGVoIGZydWVoZXN0ZW5zIG5hY2ggZGVyCnplaG50ZW4gZW5nYmVzY2hyaWViZW5lbiBzZWl0ZSBlbnRzY2hlaWRlbi4gd2FzIHJpY2h0aWcgZ3V0IGtvbW10IGlzdCwKd2VubiBtYW4gbWl0c2FtdCBkZW4gemVobiBzZWl0ZW4gYmVpbSBwcm9mIGFua29tbXQgdW5kIGdlemVpZ3QgYmVrb21tdCwKd2llIGVzIGF1Y2ggaW4gdmllciBzZWl0ZW4gZ2VodC4KbWFuIGthbm4gbmF0dWVybGljaCBhdWNoIGRlbiBnYW56ZW4ga3JhbSBlaW5mYWNoIGdsYXViZW4gdW5kIGluIGRlciBzbwpnZXdvbm5lbmVuIHplaXQgbXVkZGVuLgoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmbHcgPyAoRGFya3dpbmcsIDE2LiBTZXAgMTk5OCwgMDA6MjU6MzIpOgpUYW1lbGkgZGVua3Q6IG5hIE1vbmljYSB3aWUgaXNzZXMgPyA6LSkKTGV2IGRlbmt0OiBobW0uLmtqbHNramQga2RqICBramRzIGtqa3NqIGt3ZXIgd2V3CkxldiBkZW5rdDogc29ycnkuLi4gaGF0dGUgZGVuIG11bmQgbm9jaCB2b2xsLi4uIDspCltUb2Q6TGFyc10gRWluIEJydWRlciBkZXMgU2Nod2VydG1laXN0ZXJzIGhhdCBnZXJhZGUgTGV2IHVtZ2VicmFjaHQuCltUb2Q6RWluIEJydWRlciBkZXMgU2Nod2VydG1laXN0ZXJzXSBTY2hpY2h0IGltIFNjaGFjaHQhClRhbWVsaSBzYWd0OiBoYWV0dCBlciBtYSBuaWNodCBkZW4gbXVkbiBzbyB2b2xsIGdlbm9tbWVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcmJlaXQ/IChGcmFueiwgMTYuIFNlcCAxOTk4LCAwOTo0NjozNSk6ClNpZ3VyYSB0ZWlsdCBEaXIgbWl0OiBoYWIgRHUgcnVoaWcgRGVpbmVuIFNwYXNzIGltIEJ1ZXJvLCB3YWVocmVuZCBhbmRlcmUgaGllcgpTaWd1cmEgdGVpbHQgRGlyIG1pdDogaW0gTUcgc2NodWZ0ZW4gOikKUHJpb3JpdGFldGVuIGltIExlYmVuIHNldHplbiBnZWxsPyA6LSkKCmZyYW56bAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGVncmFkaWVydW5nIChBbmF0b2wsIDE2LiBTZXAgMTk5OCwgMDk6NTc6NDEpOgp+IyEgcm49U3JhYmkgcnQ9OTA1OTMyNDg5IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTkwNTQzMjA2MgpBdSBqYSAtIHVuZCB3ZW5uIHp3ZWkgYW53ZXNlbmRlIEdlbmVyYWVsZSBiZWkgQnJpZXNlbCBkaWUgRGVncmFkaWVydW5nCmVpbmVzIGFuZGVyZW4gVHJ2ZXMgYmVhbnRyYWdlbiwgZ2VodCBkYXMgYXVjaC4gRGFzIHd1ZXJkZSBkaWUgU3VtbWUgCmFsbGVyIGR1bW1lbiBGcmFnZW4gYXVmIGRlbSBBYmVudGV1cmVyLS9UcnZlcy1LYW5hbCBkZXV0bGljaCBlaW5zY2hyYWVua2VuLgoKKmdyaW5zZnJlY2gqCkFuYXRvbCwgWmF1YmVyZXIgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEZWdyYWRpZXJ1bmcgKEJvaW5nLCAxNi4gU2VwIDE5OTgsIDEyOjMzOjQwKToKfiMhIHJuPUFuYXRvbCBydD05MDU5MzI2NjEgcmc9c2NobWFycm4KfiMhIHRpZD05MDU0MzIwNjIKQW0gYmVzdGVuIG5pY2h0IG51ciBkZWdyYWRpZXJlbiwgc29uZGVybiBnbGVpY2ggaW4gZGllIFphdWJlcmVyZ2lsZGUKYXVzd2Vpc2VuIC4uLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEZWdyYWRpZXJ1bmcgKFF1aWNrLCAxNi4gU2VwIDE5OTgsIDEyOjM0OjMwKToKfiMhIHJuPUJvaW5nIHJ0PTkwNTk0MjAyMCByZz1zY2htYXJybgp+IyEgdGlkPTkwNTQzMjA2MgpOaXggaXMhIERlciBNdWVsbCBibGVpYnQgYmVpIEV1Y2gsIHNvIHdhcidzIHVuZCBzbwpibGVpYnRzIGF1Y2ghIDopCm53LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRGVncmFkaWVydW5nIChQYXRyeW4sIDE2LiBTZXAgMTk5OCwgMTI6MzQ6NTQpOgp+IyEgcm49Qm9pbmcgcnQ9OTA1OTQyMDIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA1NDMyMDYyCnBhaC4uLmV1cmUgZGVwcGVuIG5laG1lbiB3aXIgbmljaHQgOikKCi0tLS0tLQpwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IERlZ3JhZGllcnVuZyAoS2V5LCAxNi4gU2VwIDE5OTgsIDEzOjAwOjA0KToKfiMhIHJuPUJvaW5nIHJ0PTkwNTk0MjAyMCByZz1zY2htYXJybgp+IyEgdGlkPTkwNTQzMjA2MgpGcmF1ZW4gaW4gZGllIEtsZXJpa2VyZ2lsZGUhISEgKGMpIEx1ZyA6KSkKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBiZWltIFN0YW1tdGlzY2ggKENhdHdlYXpsZSwgMTYuIFNlcCAxOTk4LCAxNDo1OToxNik6CgpMYXJpc3NhIHNhZ3Q6IE5hIHdlbm4gQ2F0IG5pY2h0IHdpbGwsIGtvZW5uZW4gd2lyIGphIGVyc3QgbWFsIGVpbmUgZnVlciBXYXJnb24KTGFyaXNzYSBzYWd0OiBzdWNoZW4uCldhcmdvbiBiZWtvbW10IGdyb3NzZSBBdWdlbi4KTGFyaXNzYSBmcmFndCBXYXJnb246IFdpZSBzb2xsIHNpZSBkZW5uIGF1c3NlaGVuPyBTY2hsYW5rPwpXYXJnb24gc2FndDogRWdhYWFhYWwuCkxhcmlzc2EgZnJhZ3QgV2FyZ29uOiBVbmQgd2llIGdyb3NzPwpXYXJnb24gc2FndDogRWdhYWFhYWwuCkxhcmlzc2EgZnJhZ3QgV2FyZ29uOiBVbmQgd2VsY2hlIEhhYXJmYXJiZT8KV2FyZ29uIHNhZ3Q6IEVnYWFhYWFsLgpDYXR3ZWF6bGUgc2FndDogSWNoIHdlaXNzIGdhciBuaWNodCwgd2FzIGlociB3b2xsdC4gV2FyZ29uIGlzdCBkb2NoIHZvbGwKQ2F0d2VhemxlIHNhZ3Q6IGdsdWVja2xpY2ggdmVyaGVpcmF0ZXQuCldhcmdvbiBiZWtvbW10IG5vY2ggZ3JvZXNzZXJlIEF1Z2VuIHVuZCB3ZWRlbHQgd2lsZCBhYndpbmtlbmQgbWl0IGRlbiBIYWVuZGVuLgpXYXJnb24gc2FndDogS2VpbmUgRWxmZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bmQgdHNjaHVlc3MgKFNveW8sIDE2LiBTZXAgMTk5OCwgMjA6Mjg6NDYpOgpTY2FsYXJlIHNjaHdpbW10IG5hY2ggU3VlZHdlc3Rlbi4KCkR1IGZ1ZWhsc3QgRGljaCBuaWNodCBnYW56IGFsbGVpbiBoaWVyLgoKbmEgZGFubiA/IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluIEZyb3NjaCBtaXQgV2VncHJvYmxlbWVuIChTcmFiaSwgMTYuIFNlcCAxOTk4LCAyMTowNjoyOCk6CldvIHdpbGwgZXIgZGVubiBudW4gaGluLi4uCgpFaW4gRnJvc2NoIGh1ZXBmdCBoZXJlaW4uCkVpbiBGcm9zY2ggaHVlcGZ0IG5hY2ggT3N0ZW4uCkVpbiBGcm9zY2ggaHVlcGZ0IGhlcmVpbi4KRWluIEZyb3NjaCBodWVwZnQgbmFjaCBXZXN0ZW4uCkVpbiBGcm9zY2ggaHVlcGZ0IGhlcmVpbi4KRWluIEZyb3NjaCBodWVwZnQgbmFjaCBPc3Rlbi4KRWluIEZyb3NjaCBodWVwZnQgaGVyZWluLgpFaW4gRnJvc2NoIGh1ZXBmdCBuYWNoIFdlc3Rlbi4KClNyYWJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphdXNuYWhtc3dlaXNlIG1hbCBnbHVlY2sgZ2VoYWJ0IG5hY2ggbmVtIGZsdWNodGVsZXBvcnQgaW5zIGJlc2V0enRlIGx1cGl0YWwgOikgKEFnb255LCAxNi4gU2VwIDE5OTgsIDIyOjU3OjMxKToKPiBEaWUgQW5nc3QgaXN0IHN0YWVya2VyIGFscyBEdSAuLi4gRHUgd2lsbHN0IG51ciBub2NoIHdlZyBoaWVyLgpEdSBtYWNoc3QgZWluZSBwbG9ldHpsaWNoZSBQaXJvdWV0dGUuCkVpbiBHcnViZW51bmdlaGV1ZXIgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgpBbiBlaW5lciBrbGVpbmVuIFF1ZWxsZS4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG5vcmRvc3Rlbi4KRWluIHJhdXNjaGVuZGVyIFdhc3NlcmdlaXN0LgpFaW4gbW9yc2NoZXIgRHJlaXphY2suICgzKQooIEggWCAgICBXIC4gKSAgICAgIDExMyAoMCkgMjEwICAgIDg3ICgtMTUpIDIyNiAgICAxNDY5ICgwKSAxNTAKRGVpbiBaYXViZXJzdGFiIHVudGVyc3R1ZXR6dCBEaWNoIGJlaSBkZW0gU3BydWNoLgooIEggWCAgICBXIC4gKSAgICAgIDExMyAoMCkgMjEwICAgIDg4ICgrMSkgMjI2ICAgIDE0NjkgKDApIDE1MApEaWUgVmVyemF1YmVydW5nIERlaW5lciBIYWVuZGUgbGFlc3N0IGxhbmdzYW0gbmFjaC4KQW4gZWluZW0gQmFjaC4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4gdW5kIHN1ZWR3ZXN0ZW4uCkVpbiBLb3BmIGRlciBIeWRyYS4KICBEZXIgSHlkcmFrb3BmIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gZnVlcmNodGVybGljaGVuIEdlYmlzcyAgYW4uCnwuLi4uLi4ufC4tLS0tfAooIEggWCAgICBXIC4gKSAgICAgIDEwMyAoLTEwKSAyMTAgICAgODggKDApIDIyNiAgICAxNDY4ICgtMSkgMTUwCkVpbiBIeWRyYWtvcGYgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgpJbSBGZWVud2FsZC4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4sIG5vcmRlbiB1bmQgbm9yZG9zdGVuLgpEaWUgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4KRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gZ3Jvc3NlciBIYXVmZW4gc2VsdHNhbWVyIEtub2NoZW4uICgyKQogIERpZSBIeWRyYSBncmVpZnQgRGljaCBtaXQgaWhyZW4gc3RhY2hlbGJld2VocnRlbiBTY2h3aW5nZW4gYW4uCnwuLi4uLi4ufC0tLS0tfAooIEggWCAgICBXIC4gKSAgICAgIDkyICgtMTEpIDIxMCAgICA4OCAoMCkgMjI2ICAgIDE0NjggKDApIDE1MAogIERlciBIeWRyYWtvcGYgZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbSBmdWVyY2h0ZXJsaWNoZW4gR2ViaXNzICBhbi4KfC4uLi4uLi58Li4tLS18CiggSCBYICAgIFcgLiApICAgICAgODggKC00KSAyMTAgICAgODggKDApIDIyNiAgICAxNDY4ICgwKSAxNTAKICBEZXIgSHlkcmFrb3BmIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gZnVlcmNodGVybGljaGVuIEdlYmlzcyAgYW4uCnwuLi4uLi4ufC4uLi0tfAooIEggWCAgICBXIC4gKSAgICAgIDg1ICgtMykgMjEwICAgIDg4ICgwKSAyMjYgICAgMTQ2OCAoMCkgMTUwCkRpZSBBbmdzdCBpc3Qgc3RhZXJrZXIgYWxzIER1IC4uLiBEdSB3aWxsc3QgbnVyIG5vY2ggd2VnIGhpZXIuCkR1IGJpc3Qgdm9tIGxldHp0ZW4gVGVsZXBvcnRpZXJlbiBub2NoIHp1IGVyc2Nob2VwZnQuCkVpbmUgSHlkcmEgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgpFaW4gSHlkcmFrb3BmIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KRWluIEh5ZHJha29wZiBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkFuIGVpbmVtIEJhY2guCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuIHVuZCBzdWVkd2VzdGVuLgpFaW4gS29wZiBkZXIgSHlkcmEuCkRpZSBBbmdzdCBpc3Qgc3RhZXJrZXIgYWxzIER1IC4uLiBEdSB3aWxsc3QgbnVyIG5vY2ggd2VnIGhpZXIuCkR1IGthbm5zdCBudXIgYXVzIEthZW1wZmVuIG1pdCBkZW0gU3BydWNoIGZsaWVoZW4uCkltIEZlZW53YWxkLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiwgbm9yZGVuIHVuZCBub3Jkb3N0ZW4uCkRpZSBIeWRyYS4KRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBncm9zc2VyIEhhdWZlbiBzZWx0c2FtZXIgS25vY2hlbi4gKDIpCnwuLi4uLi4ufC4uLS0tfAooIEggWCAgICBXIC4gKSAgICAgIDgxICgtNCkgMjEwICAgIDg4ICgwKSAyMjYgICAgMTQ2OCAoMCkgMTUwCnwuLi4uLi4ufC0tLS0tfAooIEggWCAgICBXIC4gKSAgICAgIDY3ICgtMTQpIDIxMCAgICA4OCAoMCkgMjI2ICAgIDE0NjggKDApIDE1MAp8Li4uLi4uLnwuLS0tLXwKKCBIIFggICAgVyAuICkgICAgICA1OCAoLTkpIDIxMCAgICA4OCAoMCkgMjI2ICAgIDE0NjggKDApIDE1MApFaW5lIEh5ZHJhIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KRWluIEh5ZHJha29wZiBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkVpbiBIeWRyYWtvcGYgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgpBbiBkZXIgQmF1bWdyZW56ZS4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHdlc3Rlbiwgbm9yZGVuIHVuZCBzdWVkb3N0ZW4uCkVpbiBLb3BmIGRlciBIeWRyYS4KRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gZ3Jvc3NlciBIYXVmZW4gc2VsdHNhbWVyIEtub2NoZW4uCiAgRGVyIEh5ZHJha29wZiBncmVpZnQgRGljaCBtaXQgc2VpbmVtIGZ1ZXJjaHRlcmxpY2hlbiBHZWJpc3MgIGFuLgp8Li4uLi4uLnwuLS0tLXwKKCBIIFggICAgVyAuICkgICAgICA0OSAoLTkpIDIxMCAgICA4OCAoMCkgMjI2ICAgIDE0NjggKDApIDE1MAogIERlciBIeWRyYWtvcGYgZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbSBmdWVyY2h0ZXJsaWNoZW4gR2ViaXNzICBhbi4KfC4uLi4uLi58LS0tLS18CiggSCBYICAgIFcgLiApICAgICAgMzggKC0xMSkgMjEwICAgIDg4ICgwKSAyMjYgICAgMTQ2OCAoMCkgMTUwCj4gW1NlaGVyOk5vdmFzdG9ybV0gTWFoYXRtYQpEaWUgQW5nc3QgaXN0IHN0YWVya2VyIGFscyBEdSAuLi4gRHUgd2lsbHN0IG51ciBub2NoIHdlZyBoaWVyLgpEdSBiaXN0IHZvbSBsZXR6dGVuIFRlbGVwb3J0aWVyZW4gbm9jaCB6dSBlcnNjaG9lcGZ0LgpFaW4gSHlkcmFrb3BmIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KRWluIEh5ZHJha29wZiBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkltIEZlZW53YWxkLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiwgbm9yZGVuIHVuZCBub3Jkb3N0ZW4uCkRpZSBIeWRyYS4KRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBncm9zc2VyIEhhdWZlbiBzZWx0c2FtZXIgS25vY2hlbi4gKDIpCkVpbiBIeWRyYWtvcGYgc2NobGFlbmdlbHQgc2ljaCBwcnVlZmVuZCB1bWJsaWNrZW5kIGhlcmVpbi4KICBEZXIgSHlkcmFrb3BmIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gZnVlcmNodGVybGljaGVuIEdlYmlzcyAgYW4uCnwuLi4uLi4ufC4uLS0tfAooIEggWCAgICBXIC4gKSAgICAgIDMzICgtNSkgMjEwICAgIDg4ICgwKSAyMjYgICAgMTQ2OCAoMCkgMTUwCkVpbiBIeWRyYWtvcGYgc2NobGFlbmdlbHQgc2ljaCBwcnVlZmVuZCB1bWJsaWNrZW5kIGhlcmVpbi4KICBEZXIgSHlkcmFrb3BmIGdyZWlmdCBEaWNoIG1pdCBzZWluZW0gZnVlcmNodGVybGljaGVuIEdlYmlzcyAgYW4uCnwuLi4uLi4tfC0tLS0tfAooIEggWCAgICBXIC4gKSAgICAgIDEyICgtMjEpIDIxMCAgICA4OCAoMCkgMjI2ICAgIDE0NjggKDApIDE1MApFaW4gSHlkcmFrb3BmIHNjaGxhZW5nZWx0IHNpY2ggcHJ1ZWZlbmQgdW1ibGlja2VuZCBoZXJlaW4uCkVpbiBIeWRyYWtvcGYgc2NobGFlbmdlbHQgc2ljaCBwcnVlZmVuZCB1bWJsaWNrZW5kIGhlcmVpbi4KRWluIEh5ZHJha29wZiBzY2hsYWVuZ2VsdCBzaWNoIHBydWVmZW5kIHVtYmxpY2tlbmQgaGVyZWluLgp8Li4uLi4uLnwtLS0tLXwKKCBIIFggICAgVyAuICkgICAgICAwICgtMTIpIDIxMCAgICA4OCAoMCkgMjI2ICAgIDE0NjggKDApIDE1MApEaWUgQW5nc3QgaXN0IHN0YWVya2VyIGFscyBEdSAuLi4gRHUgd2lsbHN0IG51ciBub2NoIHdlZyBoaWVyLgpEdSBiaXN0IHZvbSBsZXR6dGVuIFRlbGVwb3J0aWVyZW4gbm9jaCB6dSBlcnNjaG9lcGZ0LgpFaW4gSHlkcmFrb3BmIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KRWluIEh5ZHJha29wZiBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkVpbiBIeWRyYWtvcGYgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgpBbiBkZXIgQmF1bWdyZW56ZS4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHdlc3Rlbiwgbm9yZGVuIHVuZCBzdWVkb3N0ZW4uCkVpbiBncm9zc2VyIEhhdWZlbiBzZWx0c2FtZXIgS25vY2hlbi4KW1NlaGVyOkZldWVyd2Vocl0gcmF0ZQpbU2VoZXI6TWFoYXRtYV0gaWNoCiggLiBYICAgIFcgLiApICAgICAgMSAoKzEpIDIxMCAgICA4OSAoKzEpIDIyNiAgICAxNDY4ICgwKSAxNTAKRGllc2VyIEJlZmVobCBiZWVuZGV0IERlaW5lIFZlcmJpbmR1bmcgbWl0IE1vcmdlbmdyYXVlbi4gRHUgYmVoYWVsdHN0IERlaW5lClNhY2hlbiwgYWJlciBWb3JzaWNodDogV2VubiBNb3JnZW5HcmF1ZW4gYWJzdHVlcnp0LCB3YWVocmVuZCBEdSB3ZWcgYmlzdCwKdmVybGllcnN0IER1IHNpZSBkb2NoLCBnZW5hdXNvLCBhbHMgd2VubiBEdSBEZWluZSBWZXJiaW5kdW5nIG1pdCAiZW5kZSIKYmVlbmRldCBoYWV0dGVzdCAoYWxsZXJkaW5ncyBiZWtvbW1zdCBEdSBkYW5uIGVpbmUgZmluYW56aWVsbGUKRW50c2NoYWVkaWd1bmcpLgpBQkVSOiBCRU5VVFpVTkcgQVVGIEVJR0VORSBHRUZBSFIgISEhCk1hcmlhbiBoYXV0IGFiLgpDbG9zaW5nIGRvd24uClNhdmluZyBsaXN0IEhvb2RzYXZlZAolIENvbm5lY3Rpb24gdG8gaG9vZCBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgotLS0tIE5vIHdvcmxkIC0tLS0KCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYXVzbmFobXN3ZWlzZSBtYWwgZ2x1ZWNrIGdlaGFidCBuYWNoIG5lbSBmbHVjaHRlbGVwb3J0IGlucyBiZXNldHp0ZSBsdXBpdGFsIDopIChUcmFuY2VmZWFyLCAxNi4gU2VwIDE5OTgsIDIzOjAyOjU4KToKfiMhIHJuPUFnb255IHJ0PTkwNTk3OTQ1MSByZz1zY2htYXJybgp+IyEgdGlkPTkwNTk3OTQ1MQpXYXNuIGRhcyBmdWVybiBaYWhsZW5zYWxhdCBhYiB1bmQgenUgbWl0dGVuZHJpbj8KCnRmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBEZWdyYWRpZXJ1bmcgKFRlZGR5LCAxNi4gU2VwIDE5OTgsIDIzOjA1OjA1KToKfiMhIHJuPUtleSBydD05MDU5NDM2MDQgcmc9c2NobWFycm4KfiMhIHRpZD05MDU0MzIwNjIKSmVwcCB1bmQgZGllIFR5cGVuIGtvZW5uZW4gU2NodWV0dGxlciB3ZXJkZW4gdW5kIGlociBMZWJlbiBkZW0gU3VmZiB3aWRtZW4uCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBpbiBkZXIgb3JraG9laGxlIChKYXNvbnJpZ2lkLCAxNy4gU2VwIDE5OTgsIDE2OjMyOjM4KToKcmVwb3J0IGF1cwpCb2luZyBzYWd0OiBOYWphLCBlaW4gRWhlcmluZyBrYW5uIGljaCBqYSBub2NoCnNvIGdlcmFkZSB2ZXJzdGVoZW4sIGFiZXIgbWVociBkYXJmIGVzIGF1Y2ggbmljaHQgc2VpbiEKCldhZXJlIGF1Y2ggbm9jaCBzY2hvZW5lciwgd2VubiBlaW4gR290dCBkZW4gaGVpbGlnZW4gU3RhbmQgZGVyIEVoZSBuaWNodApha3plcHRpZXJ0ZSAqZ3JpbnMqCgpKYXNvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2hhIDopIChBbGluZSwgMTcuIFNlcCAxOTk4LCAxNzo0Mjo1NSk6CgpWZWlsbGVpY2h0IGVyaW5uZXJuIHNpY2ggamEgZWluaWdlIGhpZXIgYW4gZWluZW4gbmljaHQgbmFlaGVyIGdlbmFubnRlbgpNYWdpZXIsIGRlciBnZXN0ZXJuIGF1ZiBkZW0gS2FuYWwgZWluICJiZWxhZXN0aWdlIG1pY2gsIGJlbGFlc3RpZ2UgbWljaCIKYW4gbWljaCByaWNodGV0ZSwgbnVuIGhpZXIgZWluIEJlcmljaHQgd2FzIGZyYXUgc28gZXJsZWJlbiBrYW5uIDspCgo+IHNjaGF1CkRpZXMgd2FyIGVpbm1hbCBlaW4gaGVpbWVsaWdlcywga2xlaW5lcyBCZXJnZG9yZiwgYmV2b3IgSGVlcnNjaGFyZW4gdm9uClRvdXJpc3RlbiB1bmQgZXJob2x1bmdzdWNoZW5kZW4gQWJlbnRldXJlcm4gaGllciBlaW5maWVsZW4uIER1IHN0ZWhzdCBhdWYKZGVtIERvcmZwbGF0eiBuZWJlbiBlaW5lbSBTcHJpbmdicnVubmVuLiBJbSBOb3JkZW4gc3RlaHQgZGFzIFdpcnRzaGF1cwp6d2lzY2hlbiBkZXIga2xlaW5lbiBEb3Jma2FwZWxsZSBpbSBOb3Jkd2VzdGVuIHVuZCBkZXIgQmFlY2tlcmVpIGltCk5vcmRvc3Rlbi4gSW0gU3VlZG9zdGVuIHJlaWh0IHNpY2ggZGllIEFwb3RoZWtlIGFuIGRlbiBCYXJiaWVybGFkZW4gaW0KU3VlZGVuIHVuZCBkaWUgR2FlcnRuZXJlaSBpbSBTdWVkd2VzdGVuLiBFaW4gV2VnIGZ1ZWhydCB2b24gT3N0ZW4gbmFjaApXZXN0ZW4genVtIFNlZS4KRXMgZ2lidCBhY2h0IHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4sIHdlc3Rlbiwgbm9yZGVuLCBzdWVkd2VzdGVuLApub3Jkd2VzdGVuLCBub3Jkb3N0ZW4gdW5kIHN1ZWRvc3Rlbi4KWmF1YmVybWF1cyBQYXRyeW4gZGVyIEVyem1hZ2lzdGVyLgo+IFRhcmluYSBlcnNjaGVpbnQuClRhcmluYSBnZWh0IG5hY2ggV2VzdGVuLgp0cmlua2UgdHJhbmsKRHUgdHJpbmtzdCBkZW4gTGllYmVzdHJhbmsgdW5kIGZ1ZWhsc3QgRGljaCBzbyB3YXJtIHVtcyBIZXJ6Lgo+IFBhdHJ5biBodWVwZnQgdW0gRGljaCBuZXR0IGhlcnVtLgpQYXRyeW4gZ3JpbnN0LgpCZWxhZXN0aWdQYXRyeW4gendpbmtlcnQgRGlyIGZyb2VobGljaCB6dS4KWmF1YmVybWF1cyBQYXRyeW4gc2FndDogaG9laCA6KQpEdSBkZW5rc3QgICAuIG8gTyAoQmVsYWVzdGlnZSBtaWNoISEpCj4gRGlyIGlzdCBnYW56IHdhcm0gdW0gRGVpbiBIZXJ6Lgo+IFBhdHJ5biBodWVwZnQgdW0gRGljaCBuZXR0IGhlcnVtLgpncmlucyBwYXRyeW4KWmF1YmVybWF1cyBQYXRyeW4gc2FndDogaGVodCBuaWNoLCBzY2hlaXNzIHNvdWwgOikKUGF0cnluIGh1ZXBmdCB1bSBEaWNoIHphZXJ0bGljaCBoZXJ1bS4KRHUgZ3JpbnN0IFBhdHJ5biBhbi4KPiBraWNoZXIKUGF0cnluIGxhZWNoZWx0IERpY2ggendlaWRldXRpZyBhbi4KRHUga2ljaGVyc3QuIChXaWUgYWxiZXJuIHZvbiBEaXIpCj4gWmF1YmVybWF1cyBQYXRyeW4gc2FndDogc2lsdmFuYSBtYWlsZW4gOikKUGF0cnluIGh1ZXBmdCB1bSBEaWNoIHp3ZWlkZXV0aWcgaGVydW0uCnNhZyBXYXM/ClphdWJlcm1hdXMgUGF0cnluIHNhZ3Q6IGljaCB3aWxsIGJlbGFlc3RpZ2UgOikKRHUgc2Fnc3Q6IFdhcz8KPiBQYXRyeW4gaHVlcGZ0IHVtIERpY2ggbmV0dCBoZXJ1bS4Kc2FnIFR1c3QgRHUgZG9jaCBzY2hvbiAKUGF0cnluIGh1ZXBmdCB1bSBEaWNoIHZlcmtuYWxsdCBoZXJ1bS4KRHUgc2Fnc3Q6IFR1c3QgRHUgZG9jaCBzY2hvbgo+IFBhdHJ5biBzY2hhdXQgRGlyIHZlcmxpZWJ0IGluIGRpZSBBdWdlbi4KUGF0cnluIHp3aW5rZXJ0IERpciB6YWVydGxpY2ggenUuClBhdHJ5biBzY2hhdXQgRGlyIHphZXJ0bGljaCBpbiBkaWUgQXVnZW4uCkR1IGRlbmtzdCAgIC4gbyBPIChkYXMgc29sbHRlIG1hbiBsb2dnZW4gOykpCj4gUGF0cnluIGxhZWNoZWx0IERpY2ggdmVya25hbGx0IGFuLgpaYXViZXJtYXVzIFBhdHJ5biBzYWd0OiBpc3QgZGFzIG5lbiBhbGluZS1ucGM/IDopClBhdHJ5biBzY2hhdXQgRGlyIHZlcmtuYWxsdCBpbiBkaWUgQXVnZW4uCnNhZyBub2UKRHUgc2Fnc3Q6IG5vZQo+IFBhdHJ5biBsYWVjaGVsdCBEaWNoIHNhbmZ0IGFuLgpQYXRyeW4gbGFlY2hlbHQgRGljaCB2ZXJrbmFsbHQgYW4uClBhdHJ5biBzY2hhdXQgRGlyIHp3ZWlkZXV0aWcgaW4gZGllIEF1Z2VuLgpaYXViZXJtYXVzIFBhdHJ5biBzYWd0OiBhZWgsIGljaCBuZWhtIGRhcyB6dXJ1ZWNrLCBpY2ggd2lsbCBuaWNoIG1laHIKWmF1YmVybWF1cyBQYXRyeW4gc2FndDogYmVsYWVzdGlndCB3ZXJkZW4gOikKUGF0cnluIGxhZWNoZWx0IERpY2ggemFlcnRsaWNoIGFuLgpsYWNoCkR1IGJyaWNoc3Qgdm9yIExhY2hlbiB6dXNhbW1lbi4KPiBPaGEhIFBhdHJ5biBrbnVkZGVsdCBEaWNoIHN0dWVybWlzY2guClphdWJlcm1hdXMgUGF0cnluIHJ1ZnQ6IEhVRUxGRUVFIDopClBhdHJ5biBrbnVkZGVsdCBEaWNoIHNhbmZ0Lgp3YWVsegpEdSB3YWVsenQgRGljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uCj4gUGF0cnluIHZlcnd1c2NoZWx0IERlaW4gSGFhciBzdHVlcm1pc2NoLgpQYXRyeW4gdmVyd3VzY2hlbHQgRGVpbiBIYWFyIGVyZ2ViZW4uCkRhcyBQYXRyeW4gc3RyZWljaGVsdCBEaWNoIHNhbmZ0LgpQYXRyeW4gc3RyZWljaGVsdCBEaWNoIGVyZ2ViZW4uClphdWJlcm1hdXMgUGF0cnluIHJ1ZnQ6IGljaCB3ZXJkIGJlbGFlc3RpZ3QhCkR1IHNhZ3N0OiBEYXMgaXN0IGRlciBMaWViZXN0cmFuayA7KQo+IFtBbGxnZW1laW46Um9uZGFdIGhtPwpQYXRyeW4gZ3JpbnN0LgpQYXRyeW4gcmVpc3N0IHNpY2ggYW4gRGljaCB1bmQgdGFuenQgbWl0IERpciB2ZXJrbmFsbHQgZWluZSBSdW5kZSBIZXhlbnRhbnouCnJ1ZmUgTm9lIGFuZGVyc2hlcnVtIQpbQmVpbGVpZDpBY3JpbW9uIHNjaGxpZXQgUGF0cnluIGluIHNlaW4gR2ViZXQgbWl0IGVpbi5dCkR1IHJ1ZnN0OiBOb2UgYW5kZXJzaGVydW0hCj4gW0FsbGdlbWVpbjpaZXBoeXIgd2Vpc3MgbmljaHQgb2Igc2llIEFMaW5lIGdyYXR1bGllcmVuIG9kZXIgc2llIGJlbWl0bGVpZGVuCiAgICAgICAgICAgc29sbCA7KV0KWmF1YmVybWF1cyBQYXRyeW4gc2FndDogd28gZ2lidHMgZGVuPyA7KQpbQWxsZ2VtZWluOlJvbmRhXSBBbmR5PyBIaXBwZT8gOykKUGF0cnluIHN0cmVpY2hlbHQgRGljaCBhdGVtbG9zLgpzYWcgaGllciBpbiBkZXIgQXBvdGhla2UgClBhdHJ5biBzdHJlaWNoZWx0IERpY2ggdW5hbnN0YWVuZGlnLgpwW0FsbGdlbWVpbjpSb25kYV0gT2RlciBzY2hsaW1tZXI/CkR1IHNhZ3N0OiBoaWVyIGluIGRlciBBcG90aGVrZQo+IFphdWJlcm1hdXMgUGF0cnluIHNhZ3Q6IHdpbGwgYXVjaCBoYWJlbiA6KQpPaCBtZWluIEdvdHQhIFBhdHJ5biB2ZXJ3dXNjaGVsdCBEZWluIEhhYXIgdmVybGllYnQuCltCZWlsZWlkOlplcGh5cl0gaGF0IERpciB3ZXIgZGllIFRhc3RhdHVyIGdla2xhdXQsIEFjcmltb24/IGhldXRlIG9obmUgc3o/PwpQYXRyeW4gc3RyZWljaGVsdCBEZWluZW4gS29wZiBlcmdlYmVuLgpaYXViZXJtYXVzIFBhdHJ5biBzYWd0OiBpc3QgamEgbHVzdGlnIDopClBhdHJ5biBzdHJlaWNoZWx0IERpY2ggYXRlbWxvcy4KbmljawpEdSBuaWNrc3QgenVzdGltbWVuZC4KPiBbQWxsZ2VtZWluOlNob3JrYW4gZ3JpbnN0IGJyZWl0Ll0KUGF0cnluIHN0cmVpY2hlbHQgRGljaCBlcmdlYmVuLgo+IFBhdHJ5biBzdHJlaWNoZWx0IERlaW5lbiBLb3BmIGdyb2IuClBhdHJ5biBrbnV0c2NodCBEaWNoIGdyb2IgYWIuClphdWJlcm1hdXMgUGF0cnluIHNhZ3Q6IGdyb2I/IGF1ZiBzb3dhcyBzdGVoIGljaCBuaWNodCA6KQpkZW5rIEhleSEhClBhdHJ5biB1bWFybXQgRGljaCBhdGVtbG9zLgpEdSBkZW5rc3QgICAuIG8gTyAoSGV5ISEpCj4gClBhdHJ5biBrbnV0c2NodCBEaWNoIGdyb2IgYWIuClVtIERpY2ggZHJlaHQgc2ljaCBhbGxlcy4KW0FsbGdlbWVpbjpQaHlnb3NdIGFsaW5lIGJlbWl0bGVpZGVuICBhY2ggd2FzICBkaWUgaXN0IHNvIGhlZnRpZyBkaWUga2FubiBuaXgKW0FsbGdlbWVpbjpQaHlnb3NdIGVyc2NodWV0dGVybiA6KQpEdSBzY2h3ZWJzdCBhdWYgV29sa2UgU2llYmVuLgpQYXRyeW4gYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCk5pY2h0IHNjaG9uIHdpZWRlciEgUGF0cnluIHN0cmVpY2hlbHQgRGVpbmVuIEtvcGYgenVtIEFic2NoaWVkLgpQYXRyeW4gZ2lmdGV0IERpY2ggZWlmZXJzdWVjaHRpZyBhbi4KUGF0cnluIGdyaW5zdC4Ka2ljaGVyCkR1IGtpY2hlcnN0LiAoV2llIGFsYmVybiB2b24gRGlyKQo+IFBhdHJ5biBtYXVsdCBEaWNoIGZyZWNoIGFuLgpQYXRyeW4gc3RvZXNzdCBEaWNoIHdhaG5zaW5uaWcgd2VnLgpzZXVmegpQYXRyeW4gZmx1Y2h0IHVlYmVyIERpY2ggZ3JvYi4KRHUgc2V1ZnpzdC4KPiBaYXViZXJtYXVzIFBhdHJ5biBzYWd0OiBqYSBqYS4uLnNvIGlzdCBkaWUgbGllYmUsIGtvbW10IHVuZCBnZWh0IDopCldhcyBoYXN0IER1IG51ciBhbmdlc3RlbGx0PyEKUGF0cnluIGdpYnQgRGlyIHp1bSBBYnNjaGllZCBlaW5lIHNjaGFsbGVuZGUgT2hyZmVpZ2UuClBhdHJ5biB3aW5rdC4KUGF0cnluIGdyaW5zdC4KUGF0cnluIGVudHNjaHVsZGlndCBzaWNoIGJlaSBEaXIgdmVyc29laG5saWNoLgpQYXRyeW4gendpbmtlcnQgRGlyIHp1LgpQYXRyeW4gZXJyb2V0ZXQgdW5kIHZlcnNjaHdpbmRldCBuYWNoIEhhdXNlLgoKQWxpbmUgKCpzZXVmeiogRGFzOiAiUGF0cnluIHN0cmVpY2hlbHQgRGljaCBlcmdlYmVuIiBnZWh0IHJ1bnRlciB3aWUgT2VsIDopKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXJ0YXBwdCBiZWltIENyYV5EXkReaCEgKE5vdmFzdG9ybSwgMTcuIFNlcCAxOTk4LCAxODo1NDoxMik6CltTZWhlcjpQYXRyeW5dIGhhdCB3ZXIgMjA6MDAgbHVzdCBhdWYgaGV6J3pvYXJhdGg/CltTZWhlcjpCb2luZ10gMjAgdWhyIGlzdCBzdGFtbXRpc2NoIGluIGthcmxzcnVoZSwgZGFzIGlzdCB3aWNodGlnIQpbU2VoZXI6WmVwaHlyXSBEdSBoYXN0IHNjaG9uIG1pdGdla3JpZWd0LCBkYXNzIFJlYm9vdCB3YXIsIFBhdHJ5bj8gOikKW1NlaGVyOlBhdHJ5bl0gamEgamEgOikKW1NlaGVyOlplcGh5ciBkZW5rdCAuIG8gTyAoa2FubiBtYW4gYmVpIE1hZ2llcm4gamEgbmllIHdpc3NlbildCltTZWhlcjpQYXRyeW5dIHdhciBqYSBzcGllbGVuZGVyd2Vpc2UgbmFjaHRzdWViZXIgZHJpbgpbU2VoZXI6Tm92YXN0b3JtXSBzcGllbGVuZGVyd2Vpc2UgPyBuaWNoIHp1ZmFlbGxpZ2Vyd2Vpc2UgcHJvZ2dlbmRlcndlaXNlID8KW1NlaGVyOk5vdmFzdG9ybV0gKmZ1bmtlbCoKW1NlaGVyOlBhdHJ5bl0gZGFzIGF1Y2gsIGRhcyB3YXIgYWJlciBpbiBuZXIgdmlydGVsc3R1bmRlIGVybGVkaWd0Cgoqd3VlcmcgUGF0cnluKiA7LSkKICAgIE5vdmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptYXVzcXVlc3QgKHNwb2lsZXIpIChLbnVydCwgMTguIFNlcCAxOTk4LCAwMDozNToyOSk6ClZhZXRlcmNoZW4gWmVpdCBmcmFndDogVWJlbGl4LCBXYXMgaXN0IGVpbiBBYmVudGV1ZXI/CkR1IGFudHdvcnRlc3Q6IGVpbiBhYmVudGV1ZXIgaXN0IGVzIDMgdGFnZSBvaG5lIG11ZCB6dSBsZWJlbgpWYWV0ZXJjaGVuIFplaXQgc2FndDogV2lya2xpY2g/CkR1IGFudHdvcnRlc3Q6IGphCkR1IGFudHdvcnRlc3Q6IHF1ZXN0IHB1bmt0ZSBzY2huaWNrc2NobmFjawpWYWV0ZXJjaGVuIFplaXQgc2FndDogR2VuYXUuCgoiU2Nobmlja3NjaG5hY2siIHdhcnMgd29obCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTXVkZGVyIHNpbmQga3JhbmsgKEhvYm8sIDE4LiBTZXAgMTk5OCwgMDk6Mjc6NDgpOgo+IFtLYXJsc3J1aGU6VHVmZmkgdWViZXJnaWJ0IGRpZSBFYmVuZSBhbiBIb2JvLl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKVHVmZmkgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCi1rYXJsJ2hlciBkYW1pdCEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApbS2FybHNydWhlOkhvYm9dIGhlciBkYW1pdCEKPiAta2FybD8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkthcmxzcnVoZSwgS2FybHNydWhlIGhhbHQhIDopLgpEdSBzaWVoc3QgZWluIEdlc2ljaHQgYXVmIGRlciBFYmVuZSAnS2FybHNydWhlJzoKSG9ibwpIb2JvIGhhdCBkYXMgU2FnZW4gYXVmIGRpZXNlciBFYmVuZS4KPiAta2FybDpmdWVocnQgU2VsYnN0Z2VzcHJhZWNoZS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltLYXJsc3J1aGU6SG9ibyBmdWVocnQgU2VsYnN0Z2VzcHJhZWNoZS5dCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgaGllciBzbyBhbGxlcyBwYXNzaWVydC4uLi4gKFNjaG9rbywgMTkuIFNlcCAxOTk4LCAwMDoyMjo1NSk6CkdyYWRlIGluIE5pYmVsaGVpbToKTGVpYm5peiBzYWd0OiBFIEkgTiBTIFAgUiBVIEMgSCAhISEhCkNhbGltZXJhcyBrbGVpbmVyIEJhZXIga25laWZ0IHZlcmtyYW1wZnQgZGllIEJlaW5lIHp1c2FtbW1lbi4KV2FzIGVyIGpldHp0IHdvaGwgd2llZGVyIGhhdD8KCldpZSBkYXJmIGljaCBkYXMgamV0enQgYml0dGUgdmVyc3RlaGVuPyA7KQoKU2Nob2tvICplcnJvZXRlbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FzIGhpZXIgc28gYWxsZXMgcGFzc2llcnQuLi4uIChMdWcsIDE5LiBTZXAgMTk5OCwgMDA6MjM6MjkpOgp+IyEgcm49U2Nob2tvIHJ0PTkwNjE1NzM3NSByZz1zY2htYXJybgp+IyEgdGlkPTkwNjE1NzM3NQoKQm9hYWFhYWhoaGhoaGhoaGhoLAoKCmlzdCBkYXMgd2lkZXJsaWNoIDspCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipncmlucyogKERpZWRlciwgMTkuIFNlcCAxOTk4LCAwMzo1NDozNSk6ClNvcmNlcmVyIHdhbmRlbHQgaGVyZWluLgpTb3JjZXJlciBmcmFndCBIdXRzY2hhdCBuYWNoIEdvbGRzdGF1Yi4KSHV0c2NoYXQgc2FndDogRnJhZyBLcnV1b2xxLgpTb3JjZXJlciBmcmFndCBLcnV1b2xxIG5hY2ggR29sZHN0YXViLgpLcnV1b2xxIHNhZ3Q6IEZyYWcgbWFsIEh1dHNjaGF0LgpTb3JjZXJlciB3YW5kZWx0IG5hY2ggT3N0ZW4uCgpEaWVkZXIsIGtpY2hlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuaW1tIGFsbGVzIGphLi4uIG1pdCBSaW5nIHdhZXJlIGRhcyBuaWNodCBwYXNzaWVydCAoU3JhYmksIDE5LiBTZXAgMTk5OCwgMTc6NDE6NDgpOgpFYmVuLi4uCgpEdSB0ZWlsc3QgZGVpbmVuIEZyZXVuZGVuIG1pdDogcmluZyBrcmFmdCsyIHp1IHZlcnNjaGVua2VuCiBEdSBoYXN0IGpldHp0IDIyNiBMZWJlbnNwdW5rdGUgdW5kIDIwNSBLb256ZW50cmF0aW9uc3B1bmt0ZS4KVm9yc2ljaHQ6IDMwLiBGbHVjaHRyaWNodHVuZzoga2VpbmUKU2lyb25hIHRlaWx0IERpciBtaXQ6IGhpZXIhClNpcm9uYSB0ZWlsdCBEaXIgbWl0OiBiaXR0ZSAhClRvZCBFaW4gRmV1ZXJiYWxsIGhhdCBnZXJhZGUgU2lyb25hIHVtZ2VicmFjaHQuClRvZCBTY2hvbiBtYWwgdWViZXIgZGVuIFdlZyBkZXMgZ2VyaW5nZXJlbiBXaWRlcnN0YW5kZXMKVG9kIG5hY2hnZWRhY2h0PwoKU3JhYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipzZXVmeiogKFNjaG9rbywgMTkuIFNlcCAxOTk4LCAyMTowNzo1MSk6ClRhbmlzIHRlaWx0IERpciBtaXQ6IG5hamEsIHVudGVyIHplcnN0YWV1YmVuIG1hY2h0IGRlciBpcmdlbmR3aWUgbnVyIHZlcmRhbW10ClRhbmlzIHRlaWx0IERpciBtaXQ6IHNlbHRlbiAuLi4uIDopClsuLi5dCltUb2Q6TGFyc10gRGllIEZsYW1tZSB2b24gVWR1biBoYXQgZ2VyYWRlIFRhbmlzIHVtZ2VicmFjaHQuCltUb2Q6RGllIEZsYW1tZSB2b24gVWR1bl0gSGFzdCBEdSBldHdhcyBhbmRlcmVzIGVyd2FydGV0PwpEdSB0ZWlsc3QgVGFuaXMgbWl0OiBBbHNvIGxhc3NlcyB1bmQgd2FydGUsIG9iYmVyIHNpY2ggYmVydWhpZ3QsIHdlbm4gbmljaHQKRHUgdGVpbHN0IFRhbmlzIG1pdDogZnJhZyBuZW4gTWFnaWVyLC4uLgpbQmVpbGVpZDpEYXJrd2luZ10gbGFuZ3NhbSByZWljaHRzCgouLi51bmQgaWNoIHNhY2ggbm9jaCAuLi4gZGVyIHN0aXJidCBzY2huZWxsZXIsIGFscyBtYW4gaWhtIFJhdHNjaGxhZWdlIGdlYmVuCmthbm4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoamEhIChUYW1pLCAyMC4gU2VwIDE5OTgsIDAxOjA3OjE1KToKU2NobmVsbCB3aWxsc3QgRHUgZGVuIEtlbGxlciB3aWVkZXIgdmVybGFzc2VuLi4uenUgc2NobmVsbCEhISBTY2hvbiB3aWVkZXIgYXVmCmRlbSBoYWxiZW4gV2VnIG5hY2ggb2JlbiBmYWVsbHN0IER1ciBkaWUgVHJlcHBlIHJ1ZWNrd2FlcnRzIHdpZWRlciBydW50ZXIuCkFVVFNDSC4gV1VNTU0uIEtSQUNILiBTdGlsbGUuLi4KRGlyIGZhZWxsdCBlaW5lIGZhdGFsZSBTY2h3YWVjaGUgaW4gRGVpbmVyIFNjaHV0emh1ZWxsZSBhdWYhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbmRsaWNoIG1hbCB3YXMgTmV0dGVzLi4uIChMdWcsIDIwLiBTZXAgMTk5OCwgMTU6NDM6MzUpOgpEZXIgd2FyIGd1dDoKClNpcm9uYSAoYW5nZWhlbmRlIFd1cnN0a2xlcmlrZXJpbikgdWViZXIgTHVnOgoKRXIgZW50c3ByaWNodCBuaWNodCBkZXIgU3BpZWxlcm5vcm0uCgpXYWhuc2lubiwgc2llIGhhdHMgZ2VtZXJrdCA7KQpGaWRLRwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNpcm9uYSBJSSAoTHVnLCAyMC4gU2VwIDE5OTgsIDE1OjQ1OjIzKToKClNpcm9uYSB1ZWJlciBMdWcgenVtIFp3ZWl0ZW46CgpbVHJ2ZXM6U2lyb25hXSBlciBlbnRzcHJpY2h0IGRlbSBuZXJ2aWdlbiBhYnNjaGF1bSBkZXIgaW5zIGphaWwgZ2Vob2VydAoKV2lyZCBqYSBpbW1lciBiZXNzZXIgOykKCkZpZEtHCkx1ZwoKUC5TLjogTW9yZ290aCBzY2hpY2sgbWlyIG5vY2htYWwgZWluZW4gU3RhcGVsIFNhcGhpbmEgUHJvc3Bla3RlIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXR0IDotKSAoTm92YXN0b3JtLCAyMC4gU2VwIDE5OTgsIDE2OjU0OjM4KToKRWluZSBIeWRyYSBqYWd0IERpY2ggbmljaHQgbWVoci4KRGllIEh5ZHJhIGVyaGVidCBzaWNoIGF1cyBkZW0gVGFsIGRlciBMdXBpbmVuLgoKUHVoLCBub2NobWFsIEdsdWVjayBnZWhhYnQgOy0pCiAgICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBHZWxkIChHbG9pbnNvbiwgMjEuIFNlcCAxOTk4LCAwOTozMTo1MSk6Cn4jISBybj1SaW5nb3IgcnQ9OTA2MzYyOTA0IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTA2MzMyNTg4CipwZnJ6KgpKZWRlc21hbCByZWJvb3Rlbiwgd2VubiBlaW4gQmV0cnVnIG1pdCBHZWxkIGF1ZmdlZGVja3Qgd2FyZD8gOikKVXB0aW1lOiAzMCBNaW51dGVuIChWb3JhdXNzZXR6dW5nOiBCZXRydWVnZXIgbWVsZGVuIHNpY2gpCgpHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogR2VsZCAoUmluZ29yLCAyMS4gU2VwIDE5OTgsIDA5OjM1OjU3KToKfiMhIHJuPUdsb2luc29uIHJ0PTkwNjM2MzExMSByZz1zY2htYXJybgp+IyEgdGlkPTkwNjMzMjU4OApJY2ggZ2xhdWIsIER1IGhhc3QgbWljaCBmYWxzY2ggdmVyc3RhbmRlbiA6LSkKCkVpbiBSZWJvb3QgaGFldHRlIG51ciBkaWUgImVocmxpY2hlbiIgTXVkZGVyIChnaWJ0cyBzb3dhcz8pIGJlc3RyYWZ0LiBEaWUKIkJldHJ1ZWdlciIgaGFldHRlbiBpaHIgR2VsZCBqYSBiZWhhbHRlbiBkYWR1cmNoLiBEYXMgd2FlciBzb3p1c2FnZW4gbmUKR2VsZHdhZXNjaGUgZ2V3ZXNlbi4gOy0pCgpSaW5nb3IuIENvbnRyYSBSZWJvb3QgLSBtaXQgQXVzcnVlc3R1bmcga29tbXQgbWFuIGVpbmZhY2ggbGVpY2h0ZXIgYW4gR2VsZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9iIGRhcyBpbW1lciBrbGFwcHQ/IDopIChaZXBoeXIsIDIxLiBTZXAgMTk5OCwgMTI6MDg6MDMpOgo+IGJldGUKRHUgaGFlbHRzdCBlaW5lIGt1cnplIEFuZGFjaHQuCj4gRWluIERyYWtvbmllcmxldXRuYW50IGphZ3QgRGljaCBuaWNodCBtZWhyLgpFaW4gRHJha29uaWVyd2FlY2h0ZXIgamFndCBEaWNoIG5pY2h0IG1laHIuCkVpbiBEcmFrb25pZXJ3YWVjaHRlciBqYWd0IERpY2ggbmljaHQgbWVoci4KCnNldWZ6ZW5kLCBDNAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKeml0YXRlIChHYW5kbywgMjEuIFNlcCAxOTk4LCAxMzozNTozNik6CkhpZXIgZWluIFppdGF0IGF1cyBXb1QsIHdhcyBpY2ggdm9yaGluIGxhczoKCkVyIHdpcmt0ZSB3aWUgZGllIE1hdGVyaWUgZ2V3b3JkZW5lIFZlcm5laW51bmcgYWxsZXIgQmV3ZWd1bmcuCgpHYW5kbyAtPiBsYWVzc3QgZGVuIFNwcnVjaCBlcnN0IGVpbm1hbCBhdWYgc2ljaCB3aXJrZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB6aXRhdGUgKEJvaW5nLCAyMS4gU2VwIDE5OTgsIDE0OjA1OjQ1KToKfiMhIHJuPUdhbmRvIHJ0PTkwNjM3NzczNiByZz1zY2htYXJybgp+IyEgdGlkPTkwNjM3NzczNgpVZWJlcnNldHp0OiBFciB3aXJrdGUgd2llIGVpbiAxMDAtVG9ubmVuLUdld2ljaHQ/IDopCgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFJpbmdvciwgMjEuIFNlcCAxOTk4LCAxNTozNToyMCk6CltTZWhlcjpMeXJhXSBFZ2FsIGJlaSBkZW0gTGFnIGxhc3MgaWNoIGRlbiBEYWVtb24gc2Vpbi4gRWhlIGljaCBhdWNoIG51ciBGaW50ZQpbU2VoZXI6THlyYV0gdW5kIGVpbmUgVGVjaG5payBnZW1hY2h0IGhhYmUgc2luZCA0IG9kZXIgNSBLYW1wZnJ1bmRlbiB2b3JiZWkKW1NlaGVyOkx5cmFdIHVuZCBtZWluZSBMUHMgdm9uIDIwMCBhdWYgNDAuIDwxNTozMzoxNj4KCltUb2Q6TGFyc10gRWluIFNhZXVyZWRhZW1vbiBoYXQgZ2VyYWRlIEx5cmEgdW1nZWJyYWNodC4gPDE1OjM0OjA2PgpbVG9kOmVpbiBTYWV1cmVkYWVtb25dIE1pc3QuIEpldHp0IGlzdCBtZWluZSBTYWV1cmUgbWl0IERlaW5lbSBCbHV0IHZlcnNhdXQuIApbVG9kOmVpbiBTYWV1cmVkYWVtb25dIDwxNTozNDowNj4KCgpIYWV0dGVzdCBEdSBtYWwgbGllYmVyIGF1ZmdlaG9lcnQgLi4uCgpSaW5nb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnp3ZXJnZSAqZ3J1bW1lbCogKEphc29ucmlnaWQsIDIxLiBTZXAgMTk5OCwgMTg6MDY6MDUpOgpIYWZheCBrb21tdCBsdXN0aWcgcGZlaWZlbmQgaGVyZWluLgpIYWZheCBzY2h1bHRlcnQgc2VpbmUgS2V1bGUgdW5kIGdlaHQgbmFjaCBOb3Jkb3N0ZW4uClBsb2V0emxpY2ggZmFlbmd0IGVzIGFuIHp1IHJlZ25lbi4KRGVpbmUgU2FjaGVuIHNpbmQgbnVuIGV0d2FzIGZldWNodC4KClR5cGlzY2ggWndlcmdlLCAqZ3J1bW1lbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxvZ2ludHJpZ2dlcj8gKEJpZWxlZmVsZCwgMjEuIFNlcCAxOTk4LCAxODowNzoxNik6CkdyYWRlIGViZW46CgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBTY2htZXR0ZXJsaW5nc10gUGFuemEgaGF0IG1pY2ggZXJtb3JkZXQhClBhdHJ5biAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKCkRhcyBnaWJ0IG1pciB6dSBkZW5rZW4uLi4gOikKLUJpZWxlZmVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xlcmlrZXIhIChOb3Zhc3Rvcm0sIDIxLiBTZXAgMTk5OCwgMjM6NDA6MDQpOgpbS2xlcnVzOkxlbWJvbGRdIEhvZXJldCwgR2xhZXViaWdlISBWb24gU3R1bmQgYW4gaXN0IFNjaHdlc3RlciBTaGFyaWEgbWVpbmUKW0tsZXJ1czpMZW1ib2xkXSBIb2hlcHJpZXN0ZXJpbiEKW0tsZXJ1czpTaGFyaWEgd2lua3QgaWhyZW4gQnJ1ZWRlcm4gdW5kIFNjaHdlc3Rlcm4genUgdW5kIHZlcm5laWd0IHNpY2ggZWluCiAgICAgICAgbGV0emVzIG1hbCB2b3IgZGVtIEFsdGFyIGRlcyBMZW1ib2xkLl0KW0tsZXJ1czpTaGFyaWFdIG5hY2h0IDotKQpTaGFyaWEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCltLbGVydXM6TGVtYm9sZF0gSG9lcmV0LCBHbGFldWJpZ2UhIFZvbiBTdHVuZCBhbiBpc3QgQnJ1ZGVyIE5lYiBtZWluCltLbGVydXM6TGVtYm9sZF0gSG9oZXByaWVzdGVyIQoKU293YXMgaGludGVyaGFlbHRpZ2VzIDstKQogICAgIE5vdmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogeml0YXRlIChHb3JvZywgMjIuIFNlcCAxOTk4LCAxNTozMzowMik6Cn4jISBybj1HYW5kbyBydD05MDYzNzc3MzYgcmc9c2NobWFycm4KfiMhIHRpZD05MDYzNzc3MzYKSWNoIGhvZmZlIER1IG11c3N0ZXN0IGRhcyBzZWxiZXIgdWViZXJzZXR6ZW4gKDsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVya3MsIHNvIHNjaG5lbGw/IChTcmFiaSwgMjIuIFNlcCAxOTk4LCAxOTozNDo1MCk6ClR6amEsIHZlcmtlaHJ0IGdlZHJlaHQgYmVpIFBhZ2FuaW5pCgpIZXh4ZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKVG9kIEVpbiBHaHVsIGhhdCBnZXJhZGUgSGV4eGVyIHVtZ2VicmFjaHQuCgpTcmFiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xlcmlrZXIuLi4gKExldiwgMjIuIFNlcCAxOTk4LCAyMzoxMDowOSk6CgpEZWluIEZyZXVuZCBOYWlyb2xmIHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1LgpEZWluIEZyZXVuZCBOYWlyb2xmIHRlaWx0IERpciBtaXQ6IGNpYW8KW0tsZXJ1czpMZW1ib2xkXSBIb2VyZXQsIEdsYWV1YmlnZSEgVm9uIFN0dW5kIGFuIGlzdCBCcnVkZXIgTmViIG1laW4KW0tsZXJ1czpMZW1ib2xkXSBIb2hlcHJpZXN0ZXIhClZvcnNpY2h0LU1vZHVzICg4MCkKWmlubyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbS2xlcnVzOkxlbWJvbGRdIEhvZXJldCwgR2xhZXViaWdlISBWb24gU3R1bmQgYW4gaXN0IFNjaHdlc3RlciBTaGFyaWEgbWVpbmUKW0tsZXJ1czpMZW1ib2xkXSBIb2hlcHJpZXN0ZXJpbiEKU2hhcmlhICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpbS2xlcnVzOk5lYiB3aW5rdCBTaGFyaWEuXQpNYWhhdG1hICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCltLbGVydXM6TGVtYm9sZF0gSG9lcmV0LCBHbGFldWJpZ2UhIFZvbiBTdHVuZCBhbiBpc3QgQnJ1ZGVyIE5lYiBtZWluCltLbGVydXM6TGVtYm9sZF0gSG9oZXByaWVzdGVyIQpOYWlyb2xmICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpbS2xlcnVzOlppbm9dIGRpZSBzcGlubmVuLCBkaWUga2xlcmlrZXIKCgpMZXYuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU293YXMgKEx1ZywgMjMuIFNlcCAxOTk4LCAwMTo0MzowOCk6CgpNdWVzc2VuIFp3aWxsaW5nZSBzZWluOgoKRHUgYmVmaW5kZXN0IERpY2ggbnVuIGVuZGd1ZWx0aWcgaW0gUmVpY2ggZGVyIGZpbnN0ZXJlbiBNYWVjaHRlLiBEaWUgZmVybmVuCkVja2VuIHNpbmQgbnVyIFNjaGF0dGVuLCB1bmQgZGVyIGdhbnplIFJhdW0gaXN0IHVtaHVlbGx0IHZvbiBlaW5lciBuZWJsaWdlbgpVbndpcmtsaWNoa2VpdCwgZGllIHNlaW5lbiBDaGFyYWt0ZXIgdmVyZmluc3RlcnQgdW5kIGRpZSBJbWFnaW5hdGlvbiB6dQpTeW1ib2xpayB1bmQgUGhhbnRhc2llIGVpbmxhZWR0LiBFaW5lIEF1cmEgYXVzIE1hZ2llIHVuZCBNeXN0aWsgdW1naWJ0IERpY2guCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiB1bnRlbiB1bmQgb2Jlbi4KRGllIExlaWNoZSBOYWFtYWhzLgpEaWUgTGVpY2hlIE1haGxhaHRzLgpEaWUgTGVpY2hlIEVpc2JldGhzLgpEaWUgc2NoaW1tZWxuZGUgdW5kIGhhbGJ2ZXJ3ZXN0ZSBMZWljaGUgTWFobGFodHMuCkRpZSBzY2hpbW1lbG5kZSB1bmQgaGFsYnZlcndlc3RlIExlaWNoZSBFaXNiZXRocy4KRGllIHNjaGltbWVsbmRlIHVuZCBoYWxidmVyd2VzdGUgTGVpY2hlIE5hYW1haHMuCkVpbiBFeG9yemlzdC4KCkZpZEtHCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWJlciBLbGFyby4uLlNjaG51Y2tlbGNoZW4gKE1vcmdvdGgsIDIzLiBTZXAgMTk5OCwgMDk6MTc6MTQpOgpUdXRzenQgYnJ1ZWxsdDogV0lSIFNFSE4gVU5TIElOIERFUiBIT0VMTEUsIE1PUkdPVEghCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWJlbiBpbiBkZXIgVG9kZXNzZXF1ZW56IChaZXBoeXIsIDIzLiBTZXAgMTk5OCwgMTI6MzE6NTkpOgoKRGllIFN0aW1tZSAoc2llIGdlaHQgRGlyIGluendpc2NoZW4gZ2FueiBzY2hvZW4gYXVmIGRlbiBOZXJ2KSBzcHJpY2h0CndlaXRlcjogR0VXT0VITiBESUNIIFNDSE9OIE1BTCBBTlMgV0FSVEVOLi4uIFdFTk4gSUNIIERFSU5FIFNFRUxFIEVSU1QgTUFMCkFVRiBFSVMgR0VMRUdUIEhBQkUgV0lSU1QgRFUgRVdJRyBXQVJURU4gTVVFU1NFTi4KClRoZXJpbiB0ZWlsdCBEaXIgbWl0OiBrYW5uIGljaCBkaXIgaGVsZmVuPwpEaXIgd2lyZCBiZWkgZGllc2VtIEdlZGFua2VuIGdhbnogc2NobGVjaHQuCgoKc2V1ZnplbmQsIEM0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaWxmZSEgTGF1dGVyIFd1cnN0bWFnaWVyISAoWmlubywgMjMuIFNlcCAxOTk4LCAxNjoxMzoyNik6ClZhZXRlcmNoZW4gWmVpdCBmcmFndDogTWFoYXRtYSwgV2llIGhlaXNzdCBkZXIgdW5mYWVoaWdzdGUgTWFnaWVyIHZvbgpNb3JnZW5ncmF1ZW4/CgpEdSBhbnR3b3J0ZXN0OiBHdXRlIEZyYWdlLiBFaW5pZ2Ugc2FnZW4gTW9yZ290aCwgYW5kZXJlIHRlbmRpZXJlbiBlaGVyIHp1ClBhZHJlaWMuIFd1cnN0Y29kZSBzY2hyZWliZW4gc2llIGFiZXIgZmFzdCBhbGxlLiA7KQoKPiBWYWV0ZXJjaGVuIFplaXQgc2FndDogRGEga2FubiBpY2ggRGlyIG51ciB6dXN0aW1tZW4uCgpFciBtdXNzIGVzIGphIHdpc3Nlbi4uLgpNYWhhdG1hIChraWNoZXJuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLnVuZCBpY2ggYmluIE5JQ0hUIHN1ZXNzLi4uLiAoTW9yZ290aCwgMjMuIFNlcCAxOTk4LCAxODo0NDo1OCk6Ck5lc2FqYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEdSB2ZXJ3dXNjaGVsc3QgTmVzYWphcyBIYWFyZSBhdXMgZGVyIEZlcm5lLgpOZXNhamEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHVtbSBnZWxhdWZlbiAoVGFycywgMjQuIFNlcCAxOTk4LCAwMDowNDo0OSk6CltUb2Q6TGFyc10gRWluIE1pbmlzY2hlbWVuIGhhdCBnZXJhZGUgTGlnaHRuaW5nIHVtZ2VicmFjaHQuCltCZWlsZWlkOkRpcmlvbl0gQmVpbGVpZCA6KApbQmVpbGVpZDpMZXZdIGJlaWxlaWQuLi4uIDooKCgoKCgoKCgoKCgKW0JlaWxlaWQ6RnJvZ2h1bnRlcl0gQmVpbGVpZCA6KApbQmVpbGVpZDpOaXRlbWFuXSBCZWlsZWlkISA6KCgKW0JlaWxlaWQ6VGhlcmluXSB3YXMgZnVlciBlaW5lIHNjaGFuZGUKW0JlaWxlaWQ6S2FtZWxvdF0gaWNoIGJldGUgZnVlciBkaWNoCltCZWlsZWlkOkxpYXJhXSB1dXVwcyA6KCgKW0JlaWxlaWQ6Q2FrZXldIER1bW0gZ2VsYXVmZW4KSXNpcyBydWZ0OiAhJiQjJyEhIEdydWJlIQpbVG9kOkxhcnNdIEVpbiBNaW5pc2NoZW1lbiBoYXQgZ2VyYWRlIENha2V5IHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE10diwgMjQuIFNlcCAxOTk4LCAwMjowNjoxMyk6CkRlaW4gRnJldW5kIERhcmt3aW5nIHRlaWx0IERpciBtaXQ6IGdlaWwuLi4gZGVyIGZldXJlaWdlIFNjaGVtZW4gemVyc3RhZXVidApkaWNoLgoKVG9kOkxhcnMgRWluIGtsZWluZXIgU2NoZW1lbiBoYXQgZ2VyYWRlIERhcmt3aW5nIHVtZ2VicmFjaHQuCgpobW0sIG9iIGVyIGVzIHdvaGwgaW1tZXIgbm9jaCBzbyBnZWlsIGZpbmRldD8/PwoKCk1UVgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmFtaWxpZW52ZXJoYWVsdG5pc3NlIGdla2xhZXJ0IChNb3Jnb3RoLCAyNC4gU2VwIDE5OTgsIDA4OjI5OjM3KToKRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuCltTZWhlcjpLZXldIEhZRFJBS0lMTEVOSFlEUkFLSUxMRU4hISEgOikKW1NlaGVyOk1vcmdvdGhdIGhpIHRhbnRlCltTZWhlcjpLZXldIG1laW5lIHRhbnRlIDspCltTZWhlcjpNb3Jnb3RoXSBhaGhoamEKW1NlaGVyOk5lc2FqYSB3ZWludCB1bSBpaHJlbiB0cmV1ZW4gTmF0dXJlXQpbU2VoZXI6S2V5IG5pY2t0IE1vcmdvdGggenUgOildCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS2FtcGZzcHJ1bmc/IChCb2luZywgMjQuIFNlcCAxOTk4LCAxMDo1ODoyNyk6Cn4jISBvbj1XdXJ6ZWwgb3Q9OTA2NTY5NzE0IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49THVnIHJ0PTkwNjM5NTExMCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05MDYxNjQ3MjMKamF1LiBkaWUga29taXNjaGVuIGFia3Vlcnp1bmdlbiB2b24gbHVnIHdlcmRlbiBhdWNoIGltbWVyIGxhZW5nZXIuCnZlcnN0ZWh0IGRhcyBlaWdlbnRsaWNoIGplbWFuZCBhdXNzZXIgZGlyPwoKd3VyemVsIHJhZmZ0IG5peC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEthbXBmc3BydW5nPyAoQm9pbmcsIDI0LiBTZXAgMTk5OCwgMTA6NTg6MjgpOgp+IyEgb249THVnIG90PTkwNjU3ODc2NyBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPVd1cnplbCBydD05MDY1Njk3MTQgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTA2MTY0NzIzCiBOYSBrbGFyIFd1cnplbC4KTWFuY2hlIGZyYWdlbiBiZWkgZGVuIGxhZW5nZXJlbiBhdWNoIG1hbCBuYWNoIDspCgpGaWRLR3VLaWRTdU16UwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEthbXBmc3BydW5nPyAoQm9pbmcsIDI0LiBTZXAgMTk5OCwgMTA6NTg6MjkpOgp+IyEgb249TW9yZ290aCBvdD05MDY1Nzg4MTggb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1MdWcgcnQ9OTA2NTc4NzY3IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTkwNjE2NDcyMwpIbSwgYWxzbyBpY2ggd3VlcmRlICdmaWNrIERpY2ggaW5zIEtuaWUnIG1pdCBmRGlLIGFia3Vlcnplbi4uLi5hYmVyIG5hamEgTHVnLApEdSBiaXN0IGhhbHQgZXR3YXMgYW5kZXJzIDstKQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEthbXBmc3BydW5nPyAoQm9pbmcsIDI0LiBTZXAgMTk5OCwgMTA6NTg6MzApOgp+IyEgb249THVnIG90PTkwNjU3ODg1MiBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPU1vcmdvdGggcnQ9OTA2NTc4ODE4IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTkwNjE2NDcyMwoKVGphZSBNb3Jnb3RoLAoKZGFzIHd1ZXJkZSBpY2ggYXVjaCBzbyBhYmt1ZXJ6ZW4sIGFiZXIgZGFzIGlzdCBlcyBqYSBuaWNodCBTdWVzc2VyIDspCgpGaWRLdU1oTQpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEthbXBmc3BydW5nPyAoQm9pbmcsIDI0LiBTZXAgMTk5OCwgMTA6NTg6MzEpOgp+IyEgb249VGVkZHkgb3Q9OTA2NTg3MTYyIG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49V3VyemVsIHJ0PTkwNjU2OTcxNCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05MDYxNjQ3MjMKTXVzcyBtYW4gTHVnIHZlcnN0ZWhlbj8KClRlZGR5LCB3YWVyZSBlbm9ybSBiZXVucnVoaWd0LCB3ZW5uIGVyIEx1ZyB2ZXJzdGVoZW4gd3VlcmRlIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBLYW1wZnNwcnVuZz8gKEJvaW5nLCAyNC4gU2VwIDE5OTgsIDEwOjU4OjMyKToKfiMhIG9uPUx1ZyBvdD05MDY1OTY3OTcgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1UZWRkeSBydD05MDY1ODcxNjIgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTA2MTY0NzIzCgpDZW4gZmFvaXRoPyBUZWRkeT8KCkZpZEtHdUNzYUwKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBLYW1wZnNwcnVuZz8gKEJvaW5nLCAyNC4gU2VwIDE5OTgsIDEwOjU4OjMzKToKfiMhIG9uPUtleSBvdD05MDY2MjA4MjAgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1MdWcgcnQ9OTA2NTc4NzY3IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTkwNjE2NDcyMwpGcmF1ZW4gaW4gZGllIEtsZXJpa2VyZ2lsZGUgdW5kIEtsZXJpa2VyIGluIGRlbiBTdW1wZiB1bmQgTWFnaWVyIHp1bSBTYXRhbj8gLikKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogS2FtcGZzcHJ1bmc/IChCb2luZywgMjQuIFNlcCAxOTk4LCAxMDo1ODozNCk6Cn4jISBvbj1MeXJhIG90PTkwNjYyMjUwNCBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPUtleSBydD05MDY2MjA4MjAgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTA2MTY0NzIzCkFsc28gS2V5LCB3ZW5uIGljaCBCZW5kZWlnaWQgc28gd2VpdCBlcnpvZ2VuIGhhYmUsIGRhc3MgZXIgdm9uIGFsbGVpbiBhdWNoCkZyYXVuIGdydWVzc3QsIGJpc3QgRHUgZ2xlaWNoIGRlciBuYWVjaHN0ZSBhdWYgbWVpbmVyIExpc3RlIDstKQoKTHlyYSBtdXNzIEFsaW5lIG1hbCBzYWdlbiwgZGFzcyBoaWVyIG5vY2ggdmllbCB6dSB0dW4gaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBLYW1wZnNwcnVuZz8gKEJvaW5nLCAyNC4gU2VwIDE5OTgsIDEwOjU4OjM3KToKfiMhIG9uPUFsaW5lIG90PTkwNjYyMzA3NSBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPUx5cmEgcnQ9OTA2NjIyNTA0IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTkwNjE2NDcyMwoKV2llc28gQmVuZGVJR0lUVCBlcnppZWhlbj8gCkFsc28gaWNoIHdlcmRlIHZvbiBpaG0gaW1tZXIgbWluZGVzdGVucyBsaWViZXZvbGwgenVyCkJlZ3J1ZXNzdW5nIGdla251ZGRlbHQuCgpBbGluZSBncmluc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEthbXBmc3BydW5nPyAoQm9pbmcsIDI0LiBTZXAgMTk5OCwgMTA6NTg6MzgpOgp+IyEgb249THlyYSBvdD05MDY2MjMzODEgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1BbGluZSBydD05MDY2MjMwNzUgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTA2MTY0NzIzCkxlaWRlciBpY2ggbm9jaCBuaWNodCA6KQoKbHlyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogS2FtcGZzcHJ1bmc/IChUZWRkeSwgMjQuIFNlcCAxOTk4LCAxMzoxNzoxOSk6Cn4jISBybj1Cb2luZyBydD05MDY2Mjc1MTIgcmc9c2NobWFycm4KfiMhIHRpZD05MDYxNjQ3MjMKRGFua2UgTHVnLCBqZXR6dCBiaW4gaWNoIHdpZWRlciBiZXJ1aGlndC4KClRlZGR5LCBoYXQgTklYIHZlcnN0YW5kZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBLYW1wZnNwcnVuZz8gKEJvaW5nLCAyNC4gU2VwIDE5OTgsIDEzOjIxOjM2KToKfiMhIHJuPVRlZGR5IHJ0PTkwNjYzNTgzOSByZz1zY2htYXJybgp+IyEgdGlkPTkwNjE2NDcyMwpBbHNvIGRhcyBNaE0gYW0gRW5kZSBoaWVzcyAnTW9yZ290aCBoYWx0cyBNYXVsJyA6KQogIEJvaW5nLCB2ZXJzdGVodCBMdWcgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhYnQgaWhyIHNpZSBub2NoIGFsbGU/IChIYW5nb3ZlciwgMjQuIFNlcCAxOTk4LCAxMzoyNjo1MSk6CldhcyBwYXNzaWVydCwgd2VubiBtYW4gNSBtaW4gaWRlbHQ6CgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gS2V5IGluIFJ1YnJpayAiZW50d2lja2x1bmciLgpbU2VoZXI6UGF0cnluXSB0b2V0ZSBtb25zdGVyOiBkYSBkaWNoIGRhcyBtb25zdGVyIG5pY2ggc2llaHQsIGthbm5zdCBkdSBlcwpbU2VoZXI6UGF0cnluXSB3b2hsIGF1Y2ggbmljaCBzZWhlbiwgZnJlaSBuYWNoIGRvdWdsYXMgYWRhbXMgOikKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEJvaW5nIGluIFJ1YnJpayAiZW50d2lja2x1bmciLgpbVHJ2ZXM6THlyYV0gRGFydW0gZnJhZ2UgaWNoIGVyc3Qgc28gOy0pCltTZWhlcjpLZXkgbmlja3QgUGF0cnluIGdyaW5zZW5kIHp1XQpSYW5hZ2FyIHJ1ZnQ6IGJvaW5nCltBbGxnZW1laW46Um9uZGFdIGRhcyBibG9lZGUgRGluZyBrYW5uIGRhcyB3dW5kZXJzY2hvZW4gaW4gc2VpbmUgRGlhZ3JhbW1lCltBbGxnZW1laW46Um9uZGFdIHJlaW5waW5uZW4gLSBhYmVyIGVzIGxhZXNzdCBzaWNoIGRpZSBXZXJ0ZSBlaW5mYWNoIG5pY2h0CltBbGxnZW1laW46Um9uZGFdIGVudGxvY2tlbiA6KAoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gUmluZ29yIGluIFJ1YnJpayAiZW50d2lja2x1bmciLgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gS2V5IGluIFJ1YnJpayAiZW50d2lja2x1bmciLgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gQm9pbmcgaW4gUnVicmlrICJzY2htYXJybiIuCltBbGxnZW1laW46Um9uZGFdIGhlaiwgSWhyIHNlaWQgYXVmIEVudHdpY2tsdW5nIHVuZCBTY2htYXJybiB6aWVtbGljaCBzY2huZWxsCltBbGxnZW1laW46Um9uZGFdIDspCltBbGxnZW1laW46Qm9pbmddIGFyZ2wgOykgamEhCltBbGxnZW1laW46S2V5IGdyaW5zdHpdCltBbGxnZW1laW46S2V5IGdyaW5zdF0KKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIFRyYW5jZWZlYXIgaW4gUnVicmlrICJlbnR3aWNrbHVuZyIuCltBbGxnZW1laW46UmluZ29yXSBoZXksIGVuZGxpY2ggbWFsIHdhcyB6dSBsZXNlbi4gV2VpdGVyIHNvIDotKQpbQWxsZ2VtZWluOlRoZXJpbl0gaGlsZmUsIGljaCBrb21tIG5pY2h0IG5hY2gKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIE1vcmdvdGggaW4gUnVicmlrICJlbnR3aWNrbHVuZyIuCltBbGxnZW1laW46VGVkZHkgbXVzcyBkcmluZ2VuZCBzZWluZW4gTVBBLVNraWxsIGVyaG9laGVuXQoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gQm9pbmcgaW4gUnVicmlrICJlbnR3aWNrbHVuZyIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBLZXkgaW4gUnVicmlrICJlbnR3aWNrbHVuZyIuCltBbGxnZW1laW46Um9uZGFdIGFyZ3MKW0FsbGdlbWVpbjpHYW5kb10gaWhyIHNlaWQgamEgYWxsZSBrcmFuayAhCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBUaHVmaGlyIGluIFJ1YnJpayAidHJlZmZlbiIuCltBbGxnZW1laW46U2hhbm5hcmFdIGdlaHRzIE5PQ0ggc2NobmVsbGVyPyAqRyoKRGVyIFRvdGVuZ3JhZWJlciBzaW5ndDogRGllcyBpc3QgZGVyIFpvbWJpZS1CbHVlcywgYmFkYWR1YmR1dSAuLi4KW0FsbGdlbWVpbjpIYW5nb3ZlciBmZWhsdCBkZXIgJ3NjaG5lbGwnLWJlZmVobCBiZWkgZGVyIHplaXR1bmcgOildCltTZWhlcjpTY2hva29dIHdhYWggaXMgamV0enQgYmFsZCBnZW51ZyBtaXQgZGVyIG1wYT8gIDspCltTZWhlcjpNb3Jnb3RoXSBnZWggc2NobGFmZW4KW0FsbGdlbWVpbjpHYW5kb10gaWNoIHd1ZXJkZSBzYWdlbiwgTVBBIHNvbGx0ZSAxMDBNUCdzIHBybyBlaW50cmFnIGtvc3RlbgpbQWxsZ2VtZWluOlJvbmRhXSBOZWluIC0gbmljaHQgYXVjaCBub2NoIGF1ZiBUcmVmZmVuISBOaWNodCBhYmxlbmtlbiEKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIFJpbmdvciBpbiBSdWJyaWsgImVudHdpY2tsdW5nIi4KW1NlaGVyOlNjaG9rb10gTWhNIDspCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBLZXkgaW4gUnVicmlrICJlbnR3aWNrbHVuZyIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBNb3Jnb3RoIGluIFJ1YnJpayAidHJlZmZlbiIuCltBbGxnZW1laW46Um9uZGFdIHNjaHJlaWJzIG5hY2ggRW50d2lja2x1bmcsIEdhbmRvID06KQpbQWxsZ2VtZWluOktleV0gbG9zIHNjaG5lbGxlciA7KQoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gVGVkZHkgaW4gUnVicmlrICJlbnR3aWNrbHVuZyIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBCb2luZyBpbiBSdWJyaWsgImVudHdpY2tsdW5nIi4KKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIFJpbmdvciBpbiBSdWJyaWsgInRyZWZmZW4iLgpbVHJ2ZXM6QXJhdGhdIG1vaW4gS2FlbXBmZXIKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIFRyYW5jZWZlYXIgaW4gUnVicmlrICJlbnR3aWNrbHVuZyIuCls8TWFzdGVSPjpGb290IHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ2RyZXNkZW4nLCB3b3JhdWYgZGllc2Ugc2ljaCBpbgogICAgICAgICAgZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBSaW5nb3IgaW4gUnVicmlrICJlbnR3aWNrbHVuZyIuCltBbGxnZW1laW46S2V5IGtpY2hlcnRdCls8TWFzdGVSPjpGYWdndSBsYWVzc3QgZGllIEViZW5lICdkcmVzZGVuJyBlbnRzdGVoZW4uXQpbQWxsZ2VtZWluOkRpZWRlcl0gbW9pbgpbU2VoZXI6UmluZ29yXSBpaHIgd2VyZGV0IGxhbmdzYW1lciA6KQpbQWxsZ2VtZWluOlNjaGxlaWNoZXJdIHNvIGVyc3RtYWwgdm9tIHRvZCBlcmhvbGVuIGJpcyBzcGFldGVyICp3aW5rKgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gS2V5IGluIFJ1YnJpayAiZW50d2lja2x1bmciLgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gQm9pbmcgaW4gUnVicmlrICJlbnR3aWNrbHVuZyIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBUZWRkeSBpbiBSdWJyaWsgImVudHdpY2tsdW5nIi4KCgpaZWl0dW5nIGFid2VydGVuIQotSGFuZ292ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaHJlaWJ3dXQgLi4uIChZYXJlbiwgMjQuIFNlcCAxOTk4LCAxMzoyNzo0NCk6ClVuZ2VzY2huaXR0ZW5lIFNjaHJlaWJ3dXQgLSB3ZWlhIQoKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIFJpbmdvciBpbiBSdWJyaWsgImVudHdpY2tsdW5nIi4KW1NlaGVyOlNjaG9rb10gTWhNIDspCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBLZXkgaW4gUnVicmlrICJlbnR3aWNrbHVuZyIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBNb3Jnb3RoIGluIFJ1YnJpayAidHJlZmZlbiIuCltBbGxnZW1laW46Um9uZGFdIHNjaHJlaWJzIG5hY2ggRW50d2lja2x1bmcsIEdhbmRvID06KQpbQWxsZ2VtZWluOktleV0gbG9zIHNjaG5lbGxlciA7KQoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gVGVkZHkgaW4gUnVicmlrICJlbnR3aWNrbHVuZyIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBCb2luZyBpbiBSdWJyaWsgImVudHdpY2tsdW5nIi4KCgpZYXJlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hY2hzY2h1YiAoSGFuZ292ZXIsIDI0LiBTZXAgMTk5OCwgMTM6Mjg6NTUpOgpGZXVlcndlaHIgcnVmdDogSWNoIGhhYiBkaWUgWmVpdHVuZyBkdXJjaCEgTmFjaHNjaHViIQoKQml0dGUgc2Voci4uLgoKLUhhbmdvdmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdvIGlzdCBkaWUgR3JlbnplPyAoQ2F0d2VhemxlLCAyNC4gU2VwIDE5OTgsIDE0OjExOjA5KToKfiMhIG9uPUJvaW5nIG90PTkwNjYzODE0NiBvZz1kaXNrdXNzaW9uCn4jISBybj1LZXkgcnQ9OTA2NjM4MDEwIHJnPWRpc2t1c3Npb24KfiMhIHRpZD05MDY2Mzc3NDAKVmVyc3VjaCBudXIgbWljaCB6dSBtZXR6ZWxuLCB2ZXJzdWNoJ3MgbnVyISEgOykKICBCb2luZyAoR290dCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdvIGlzdCBkaWUgR3JlbnplPyAoQ2F0d2VhemxlLCAyNC4gU2VwIDE5OTgsIDE0OjExOjE1KToKfiMhIG9uPVRyYW5jZWZlYXIgb3Q9OTA2NjM4MTgwIG9nPWRpc2t1c3Npb24KfiMhIHJuPUJvaW5nIHJ0PTkwNjYzODE0NiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTA2NjM3NzQwCk51bmphIHdpciB1ZWJlbiBlcnN0bWFsIGFuIGRlaW5lbSBEb3VibGUgOi0pCgp0ZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV28gaXN0IGRpZSBHcmVuemU/IChDYXR3ZWF6bGUsIDI0LiBTZXAgMTk5OCwgMTQ6MTE6MjMpOgp+IyEgb249S2V5IG90PTkwNjYzODIzNSBvZz1kaXNrdXNzaW9uCn4jISBybj1Cb2luZyBydD05MDY2MzgxNDYgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTkwNjYzNzc0MApLb21tIGRvY2ggQm9pbmcsIGtvbW0gZG9jaCA7KQpMb3MgdHJhdSBEaWNoISA7KQoKS2V5LCBraWxsdCBhbGxlcyB3YXMga2VpbmVuIHBrIGJyaW5ndCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV28gaXN0IGRpZSBHcmVuemU/IChDYXR3ZWF6bGUsIDI0LiBTZXAgMTk5OCwgMTQ6MTE6MjkpOgp+IyEgb249VHJhbmNlZmVhciBvdD05MDY2MzgyNTcgb2c9ZGlza3Vzc2lvbgp+IyEgcm49VHJhbmNlZmVhciBydD05MDY2MzgxODAgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTkwNjYzNzc0MApJbSB1ZWJyaWdlbjogdmVyc3VjaGVuIGthbm4gbWFucyBqYSBtYWwgOi0pIEF1Y2ggd2VubiB3b2hsIG5peCBiZWkgcnVta29tbXQgZXMKc2VpIGRlbm4gd2lyIGhhYmVuIGtvbXBsaXplbiBpbSBXaXpsYWdlci4uLgoKdGYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV28gaXN0IGRpZSBHcmVuemU/IChQYWRyZWljLCAyNC4gU2VwIDE5OTgsIDE0OjEzOjIzKToKfiMhIG9uPVNoYXJpYSBvdD05MDY2MzgwOTQgb2c9ZGlza3Vzc2lvbgp+IyEgcm49U2hhcmlhIHJ0PTkwNjYzODAzNiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTA2NjM3NzQwCkFwcm9wb3MgLi46IHd1ZXJkZSBkYSBqZXR6dCBuaWNodCBHT1RULCBzb25kZXJuIExlbWJvbGQgU2FwaGluYSBvZGVyIEthbmRyaQpzdGVoZW4gZGFubiBmYWVuZGUgaWNoIGRhcyBhdWNoIG5pY2h0IHNvIHdpdHppZyAuLi4uOi0pCgpTaGFyaWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEthbXBmc3BydW5nPyAoTHVnLCAyNC4gU2VwIDE5OTgsIDE3OjQ5OjUzKToKfiMhIHJuPUJvaW5nIHJ0PTkwNjYzNjA5NiByZz1zY2htYXJybgp+IyEgdGlkPTkwNjE2NDcyMwpBcmdoLAoKQm9pbmcgdmVyc3RlaHQgbWljaCBlY2h0IDspCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFlaG0gSmEhIChBc3Nhc3NpbmUsIDI0LiBTZXAgMTk5OCwgMTg6NTI6MjgpOgpbVG9kOkxhcnNdIEVpbiBTY2hsYWVjaHRlciBoYXQgZ2VyYWRlIEthcmlzIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNjaGxhZWNodGVyXSBTY2hpY2h0IGltIFNjaGFjaHQhCltCZWlsZWlkOlJvY2h1c10gdW0gZGVtIGdsYXVid3VlcmRpZ2tlaXQgenUgZ2ViZW4sIG11c3MgSUNIIGVzIHNhZ2VuLCBoYW5nb3ZlcgpbQmVpbGVpZDpSb2NodXNdIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGhoamEuLi4gKExldiwgMjQuIFNlcCAxOTk4LCAyMjo1NzoxMSk6CgpHb2xpYXRoIHJ1ZnQ6IEdFU1JBIENVIERPT0YKW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgR2VzcmEgdW1nZWJyYWNodC4KCkxldiB3dW5kZXJ0IHNpY2guLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWhoamEuLi4gKFplciwgMjQuIFNlcCAxOTk4LCAyMzoyMjoxMCk6CkZldWVyZWJlbmUuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uCkVpbiBLbm9jaGVucGFuemVyLgozIFBoaW9sZW4gbWl0IHJlaW5lbSBGZXVlci4KRWluIEVjaHNlbnBhbnplci4KRHUgc3RlY2tzdCBlaW5lIFBoaW9sZSBtaXQgcmVpbmVtIEZldWVyIGluIGRhcyBQYWtldC4KRHUgc3RlY2tzdCBlaW5lIFBoaW9sZSBtaXQgcmVpbmVtIEZldWVyIGluIGRhcyBQYWtldC4KRHUgc3RlY2tzdCBlaW5lIFBoaW9sZSBtaXQgcmVpbmVtIEZldWVyIGluIGRhcyBQYWtldC4KRHUgc3RlY2tzdCBlaW5lIFBoaW9sZSBtaXQgcmVpbmVtIEZldWVyIGluIGRhcyBQYWtldC4KRHUgc3RlY2tzdCBlaW5lIFBoaW9sZSBtaXQgcmVpbmVtIEZldWVyIGluIGRhcyBQYWtldC4KaG1tbS4uLmFsc28gc2luZCAzID0gNSA/Pz8KCgpaZXIgZGllIFJhdHRlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdvIGlzdCBkaWUgR3JlbnplPyAoQW5hdG9sLCAyNC4gU2VwIDE5OTgsIDIzOjIyOjEyKToKfiMhIHJuPUFuYXRvbCBydD05MDY2NzIwNjEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTkwNjYzNzc0MApPaCwgaGFiZSBpY2ggRGljaCBmYWxzY2ggdmVyc3RhbmRlbiwgU2hhcmlhPwoKU29vb29vb29vIHNvb29vb29ycnkgOikKCkFuYXRvbCA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogV28gaXN0IGRpZSBHcmVuemU/IChQYWRyZWljLCAyNS4gU2VwIDE5OTgsIDE0OjI5OjA3KToKfiMhIG9uPU11cmtlcyBvdD05MDY3MjYzNzMgb2c9ZGlza3Vzc2lvbgp+IyEgcm49Qm9pbmcgcnQ9OTA2NzI2MTQyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD05MDY2Mzc3NDAKV2llIHdhZXIncyB3ZW5uIG1hbiBtaXQgJ3RvZXRlIEJvaW5nJyBkZW4gbmV1ZW4gR290dCBhbmdyZWlmZW4ga29lbm50ZSAuLi4/IQpNdXJrZXMKcC5TLjogSXN0IEdyaW1ib3JuIG5pY2h0IGRhPyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBXbyBpc3QgZGllIEdyZW56ZT8gKFBhZHJlaWMsIDI1LiBTZXAgMTk5OCwgMTQ6Mjk6MTEpOgp+IyEgb249Tm9ubmUgb3Q9OTA2NzI2NDgyIG9nPWRpc2t1c3Npb24KfiMhIHJuPU11cmtlcyBydD05MDY3MjYzNzMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTkwNjYzNzc0MApTY2hvZW4sIGRhc3MgZGllIERpc2t1c3Npb24gaW5zIGxhZWNoZXJsaWNoZSBhYmdsZWl0ZXQsIGRhIGdlaG9lcnQgc2llCm5hZW1saWNoIGhpbiA7KQoKTm9ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEQVMgbXVzcyBpY2ggcG9zdGVuIDstKSkgKE1vcmdvdGgsIDI1LiBTZXAgMTk5OCwgMTU6MDY6NDgpOgpFVkVOVC1DSVRZIDogUGxvdGluIGhhdCBkaWUgU3RhZHQgYmV0cmV0ZW4uCktLOiBzY2huZWxsICgwLUhhbmQpCktLOiBzY2huZWxsICgwLUhhbmQpCktLOiBmZXVlcmJhbGwgcGxvdGluICgyLUhhbmQpCktLOiBhdXN3ZWljaGVuICgwLUhhbmQpCktLOiBhdXN3ZWljaGVuICgwLUhhbmQpCktLOiBhdXN3ZWljaGVuICgwLUhhbmQpCktLOiBrYW1wZnNjaHJlaSAgKDAtSGFuZCkKS0s6IHNhZXVyZXN0cmFobCBwbG90aW4gKDItSGFuZCkKS0s6IGthbXBmc2NocmVpICAoMC1IYW5kKQpLSzogYXVzd2VpY2hlbiAoMC1IYW5kKQpLSzogc2FldXJlc3RyYWhsIHBsb3RpbiAoMi1IYW5kKQpLSzoga2FtcGZzY2hyZWkgICgwLUhhbmQpCktLOiBwZmVpbCBwbG90aW4gKDEtSGFuZCkKS0s6IGF1c3dlaWNoZW4gKDAtSGFuZCkKS0s6IHNhZXVyZXN0cmFobCBwbG90aW4gKDItSGFuZCkKS0s6IHNhZXVyZXN0cmFobCBwbG90aW4gKDItSGFuZCkKW1RvZDpMYXJzXSBFaW4gT3JrIGhhdCBnZXJhZGUgUGxvdGluIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBXbyBpc3QgZGllIEdyZW56ZT8gKEFuYXRvbCwgMjUuIFNlcCAxOTk4LCAxNToxOTo0Nyk6Cn4jISBybj1aYXJuaXlhIHJ0PTkwNjcyMTk1NCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTA2NjM3NzQwCkljaCBiZXp3ZWlmbGUsIGRhc3MgQm9pbmcvSm9mL1J1bWF0YSBkaWUgc3ByaWNod29lcnRsaWNoZSBnb2V0dGxpY2hlIEFsbG1hY2h0CmJlc2l0emVuLCBpbW1lcmhpbiBzZWhlbiB1bmQgd2lzc2VuIHNpZSBlYmVuIE5JQ0hUIGFsbGVzLCBnZWxsPyA6KQoKQW5hdG9sIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogV28gaXN0IGRpZSBHcmVuemU/IChCb2luZywgMjUuIFNlcCAxOTk4LCAxNToyMToyNSk6Cn4jISBybj1BbmF0b2wgcnQ9OTA2NzI5NTg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA2NjM3NzQwCkFiZXIgd2lyIGtvZW5udGVuLCB3ZW5uIHdpciB3b2xsdGVuIC4uLiA6KSAodW5kIGRpZSBaZWl0IGRhZnVlciBoYWV0dGVuKQogIEJvaW5nIChHb3R0LCBhbGxtYWVjaHRpZykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBXbyBpc3QgZGllIEdyZW56ZT8gKEFuYXRvbCwgMjUuIFNlcCAxOTk4LCAxNToyNTo0MCk6Cn4jISBybj1Cb2luZyBydD05MDY3Mjk2ODUgcmc9c2NobWFycm4KfiMhIHRpZD05MDY2Mzc3NDAKRWluIEdvdHQsIGRlciBuaWNodCB1ZWJlciBzb2xjaGVuIExhcHBhbGllbiB3aWUgIlplaXQiIHN0ZWh0LCBpc3Qgd29obCBhdXMKZWluZXIgV3Vlc3RlIGJlaSBFcGhlYmUgZW50bGF1ZmVuLi4uIDopCgoqdHJvZXN0IGJvaW5nKgpBbmF0b2wgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogV28gaXN0IGRpZSBHcmVuemU/IChMdWcsIDI1LiBTZXAgMTk5OCwgMjE6MjQ6MzApOgp+IyEgcm49QW5hdG9sIHJ0PTkwNjcyOTk0MCByZz1zY2htYXJybgp+IyEgdGlkPTkwNjYzNzc0MApEYW5uIHdlaXNzdGUgamEgQmVzY2hlaWQgQW5hdG9sLAoKRHUgbXVzc3QgbnVyIGFuIGlobiBnbGF1YmVuIDspCgpGaWRLRwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBXbyBpc3QgZGllIEdyZW56ZT8gKFBhZHJlaWMsIDI1LiBTZXAgMTk5OCwgMjM6MjE6MjApOgp+IyEgb249U2hhcmlhIG90PTkwNjczOTg0NCBvZz1kaXNrdXNzaW9uCn4jISBybj1MeXJhIHJ0PTkwNjcyNTg2NiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTA2NjM3NzQwCm9oIG9oIC4uLi4gZGFzIERyYWNoZW5iYWJ5IHNvbGx0ZSBhYmVyIGJlc3NlciBuaWVtYW5kIHRvZXRlbiAuLi4uLi4uLgoKU2hhcmlhLCBoYWVsdCBpaHJlbSBFcnN0aWUgT2hyZW4gdW5kIEF1Z2VuIHp1LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTnVyIG1hbCBzb25lIElkZWUgKFBhZHJlaWMsIDI1LiBTZXAgMTk5OCwgMjM6NTc6MTUpOgp+IyEgb249THVnIG90PTkwNjc1MTI3NiBvZz1kaXNrdXNzaW9uCn4jISBybj1BY3JpbW9uIHJ0PTkwNjc1MTEwMiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTA2NjIzOTMxCgpIYWgsCgppY2ggaGVsZmUgZWJlbiBnZXJuIDspIFVuZCBtdWVsbCBuZWJlbmJlaSBkaWUgUnVicmlrIHZvbGwuLi4KTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBOdXIgbWFsIHNvbmUgSWRlZSAoUGFkcmVpYywgMjUuIFNlcCAxOTk4LCAyMzo1Nzo1OCk6Cn4jISBvbj1MdWcgb3Q9OTA2NzUxNTg1IG9nPWRpc2t1c3Npb24KfiMhIHJuPUFjcmltb24gcnQ9OTA2NzUxNDUyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD05MDY2MjM5MzEKTmVpbiwgZWhybGljaD8KCkRhcyBpc3QgZWNodCBncm9zenVlZ2lnIDspCgpJcm9uaXNpZXJlbmQKTHVnCgpQLlMuOiBIaW53ZWlzOiBBY2h0dW5nISBXYXJudW5nISBJcm9uaWUhIElyb25pZSBnZWZhZWhyZGV0IElocmUgZ2Vpc3RpZ2UKZ2VzdW5kaGVpdCB1bmQga2FubiB6dSBXYWhuc2lubiBmdWVocmVuIQoKUC5QLlMuOiBJY2ggd3VlcmRlIHNvd2FzIGphIG5pZWVlIHR1biA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTnVyIG1hbCBzb25lIElkZWUgKFBhZHJlaWMsIDI2LiBTZXAgMTk5OCwgMjM6NDc6MTYpOgp+IyEgb249UmFudGFucGxhbiBvdD05MDY4MDAyNzkgb2c9ZGlza3Vzc2lvbgp+IyEgcm49QWNyaW1vbiBydD05MDY3NTA0Njkgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTkwNjYyMzkzMQoKWnVtIDEuZTktdGVuIE1hbCBkaWUgRGlza3Vzc2lvbjogIkdvdHQsIENocmlzdGVuLCBUb2xlcmFueiwgU2F0YW4sIEhpdGxlciB1bmQKZGVyIGdhbnplIFJlc3QiCgpUb2xlcmFueiBoZWlzc3QgbmljaHQsIGRhc3MgbWFuIGFsbGVzIGhpbm5pbW10LCB3YXMgYXVzIHN1Ympla3RpdmVyIFNpY2h0CnVuYW5nZW5laG0gaXN0LgoKRGVyIFJ1ZiBuYWNoIFRvbGVyYW56IGlzdCBlaW4gZGVua2JhciB1bmdlZWlnbmV0ZXMgQXJndW1lbnQgc2VpbmUsIHdpZSBhdWNoCmltbWVyIGdlYXJ0ZXRlbiBndXRlbiByZXNwZWt0aXZlIHNjaGxlY2h0ZW4gSWRlZW4gZHVyY2h6dXNldHplbi4KCkVpbmlnZSBmb3JkZXJuIGhpZXIgZWluZSBUbyhlKWxlcmFueiA7KSwgZGllIGdsZWljaHp1c2V0emVuIHdhZXJlIG1pdApJbmRpZmZlcmVueiwgaWNoIHBlcnNvZW5saWNoIGJpbiBpbiBkaWVzZXIgZ2FuemVuIERpc2t1c3Npb24gc2VociAidG9sZXJhbnQiCndlaWwgdm9lbGxpZyBpbmRpZmZlcmVudCwgYWJlciBtaWNoIHN0b2VydCBkaWUgQXJndW1lbnRhdGlvbnNrZXR0ZSwgZGEgc2llCnJlbGF0aXYKdW5vcmlnaW5lbGwgaXN0LgoKQWxzbyBrb21tdCBtYWx3ZWcgdm9uIGRlciBnYW56ZSBUb2xlcmFueiB1bmQgc2NobGFndCBldWNoIGRpZSBLb2VwcGUgd2VnZW4gd2FzCndpcmtsaWNoIHdpY2h0aWdlbSBlaW4uLi4KClRpdHRlbiAhIQoKT2UqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBOdXIgbWFsIHNvbmUgSWRlZSAoUGFkcmVpYywgMjYuIFNlcCAxOTk4LCAyMzo0NzozMCk6Cn4jISBvbj1MdWcgb3Q9OTA2ODA4NjM5IG9nPWRpc2t1c3Npb24KfiMhIHJuPVJhbnRhbnBsYW4gcnQ9OTA2ODAwMjc5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05MDY2MjM5MzEKT2V0dGk/CgoKUHVzc2llcy4KCkdlaHRzIERpciBudW4gYmVzc2VyPyBJbmRpZmZlcmVueiBpc3QgbWlyIHBlcnNvZW5saWNoIGxpZWJlciBhbHMgZWluIEtyZXV6enVnLAphYmVyIEplZGVtIGRhcyBTZWluZSB1bmQgbWlyIGRhcyBSZWNodCA7KQoKQmFlaCEKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJsYWZhc2VsIChQYWRyZWljLCAyNi4gU2VwIDE5OTgsIDIzOjQ4OjA3KToKfiMhIG9uPUFzc2Fzc2luZSBvdD05MDY4MDg5ODMgb2c9ZGlza3Vzc2lvbgp+IyEgcm49THVnIHJ0PTkwNjgwODc1NiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTA2NzkwODkzCkFlaGVtLi4uCkx1dWh1dWcgPyAKYSkgV2FzIHp1bSBIZW5rZXIgaXN0ICdHcnVtbWVsJyBzY2hvbiB3aWVkZXIgZnVlciBuZSBBYmt1ZXJ6dW5nID8KYikgVW5kIHdlciB6dXIgSG9lbGxlIHdhciBTbm9ycmkgPwoKICAgIE5vdmEsIHVud2lzc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FobnNpbm46IChMdWcsIDI3LiBTZXAgMTk5OCwgMDE6MzE6MTkpOgoKQXVmIHdhcyBGcmF1ZW4gc28gYWxsZXMga29tbWVuLCBzcG90dGV0IGplZGVyIEJlc2NocmVpYnVuZzoKCkxlbmEgdGVpbHQgRGlyIG1pdDogc2FnIG1hbCwgd3VlcmRlc3QgZHUgZGljaCAocmVpbiBpbmZvcm1hdGl2KSBmdWVyIExpYXJhCkxlbmEgdGVpbHQgRGlyIG1pdDogbG9lc2NoZW4/CgpGelMKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUZWlsIDIgKEx1ZywgMjcuIFNlcCAxOTk4LCAwMjoyMzoxMSk6CgpOYSBzb3dhcywKCkxlaWJuaXogdGVpbHQgRGlyIG1pdDogaWNoIGRhY2h0ZSBkdSBsaWVic3QgbGlhcmE/CgpOdW4gd2lyZCBlcyBzcGFubmVuZC4uLgoKU2FkS2YKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIG9laG0uLiAoTGlsbGVicm9yLCAyNy4gU2VwIDE5OTgsIDAzOjQyOjQ2KToKRGFzIFBhcnR5bW9uc3RlciBncmluc3QgbWl0IHNlaW5lbSB2b2xsZW4gU2F0eiByYXNpZXJtZXNzZXJzY2hhcmZlcgpGYW5nemFlaG5lLgoKd29oZXIga2VubiBpY2ggZGFzIG51ciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFydGlrZWwgb2VobS4uIChMdWcsIDI3LiBTZXAgMTk5OCwgMDM6NDM6MjYpOgp+IyEgcm49TGlsbGVicm9yIHJ0PTkwNjg2MDU2NiByZz1zY2htYXJybgp+IyEgdGlkPTkwNjg2MDU2NgoKSG1tLAoKbWFuIGtvZW5udGUgc2FnZW46IHdhaHJzY2hlaW5saWNoIG51ciB6dSBndXQuCgpNaXQgZ2VzY2hsb3NzZW5lbSBNdW5kIGdyaW5zZW5kCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU29zbyAuLi4gKEdsb2luc29uLCAyNy4gU2VwIDE5OTgsIDE1OjA0OjQxKToKPiBEdSB6ZXJzY2hsYWVnc3QgZGFzIEdsYXMgbWl0IDEzNSBXdXJmc3Rlcm5lIC4uLgoKRGFzIG1vZWNodGUgaWNoIHNlaGVuIDstKQoKR2xvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmxldHp0ZW5zIGluIGRlciBNYWVyY2hlbnF1ZXN0IChaYXBob2IsIDI3LiBTZXAgMTk5OCwgMTk6Mzk6NTYpOgpEdSBlcnNjaGxhZWdzdCBkaWUgYm9lc2UgSGV4ZSB1bmQgZGVyIEhleGVudG9ldGVyIHZlcmJyZW5udCBpbiBlaW5lcgpTdGljaGZsYW1tZS4KRHUgc3RlY2tzdCBIZXhlbnRvZXRlciB6dXJ1ZWNrLgpIZXhlIGZhZWxsdCB0b3QgenUgQm9kZW4uCj4gbgpIZXhlIGtvbW10IGFuLgpEaWUgSGV4ZSB2ZXJzcGVycnQgRGlyIGRlbiBXZWcuCgpEYSBtdXNzIGlyZ2VuZHdvIGVpbiBOZXN0IHNlaW4uLi4KWmFwKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVXBzIChUZWRkeSwgMjcuIFNlcCAxOTk4LCAyMToyNjoxNSk6ClRldmlsZG8gc3B1Y2t0IFN0aW5nIGF1cy4KVGV2aWxkbyBzcHVja3QgU3RpbmcgYXVzLgpUZXZpbGRvIHNwdWNrdCBTdGluZyBhdXMuCgpJcyBlciBqZXR6dCBpbiBrbGVpbmVuIFN0dWVja2VuIHJhdXNnZWtvbW1lbj8KClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpza2lmYWhyZXIgKEppZGR1LCAyNy4gU2VwIDE5OTgsIDIzOjAzOjA1KToKQWxsZ2VtZWluZSBiZWthbm50bWFjaHVuZzoKClNraWZhaHJlciBzaW5kIHNjaGxlY2h0ZSBtZW5zY2hlbiwgc2llIG11ZXNzZW4gYWxsZSBzdGVyYmVuLgoKRnZkWgpKaWRkdSwgd2FobnNpbm5pZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcm51bmcgKERpZWRlciwgMjcuIFNlcCAxOTk4LCAyMzoyNDowMSk6CkFjaHR1bmc6IERlciBCdW5kZXNnZXN1bmRoZWl0c21pbmlzdGVyIHdhcm50OiBEYXMgRWluc2NoYWx0ZW4gZGVzCiJNdXNpa2FudGVuc3RhZGxzIiBpbSBGZXJuZXNlaGVuIGdlZmFlaHJkZXQgZGllIEdlc3VuZGhlaXQgSWhyZXMgUmVjaG5lcnMhCgpTbyBiZWkgbWlyIHRhdHNhZWNobGljaCBnZXNjaGVoZW4gLSBpbiBkZW0gTW9tZW50LCBhbHMgaWNoIGF1cyBMYW5nZXdlaWxlIGRlbgpGZXJuc2VoZXIgZWluc2NoYWx0ZXRlIC0gdW5kIGRvcnQgZ3JhZCB6dWZhZWxsaWcgQVJEIG1pdCBkZW0gIickJyYvISImJyUvCk11c2lrYW50ZW5zdGFkbCAtIHZlcmFic2NoaWVkZXRlIHNpY2ggbWVpbiBSZWNobmVyIGJ6dy4gZGFzIE1vdGhlcmJvYXJkIG1pdHRlbgppbSBCZXRyaWViLi4uCgpEaWVkZXIsIHd1ZW5zY2h0IHNpY2ggZWluZW4gIk1vaWsiLU5QQywgYXVmIGRlbSBlciBnbmFkZW5sb3MgcnVta2xvcHBlbiBrYW5uIC0Kd2VyIHByb2dndCBpaG4/IDopClRpbGx5LCB1ZWJlcm5laG1lbiBTaWUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXJudW5nIChKaWRkdSwgMjcuIFNlcCAxOTk4LCAyMzoyNzoyNCk6Cn4jISBybj1EaWVkZXIgcnQ9OTA2OTMxNDQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA2OTMxNDQxCkRhcyBtdXNzIGFiZXIgZWluIHp1ZmFsbCBnZXdlc2VuIHNlaW4gLSBpY2ggc2NoYXUgZGFzIHNjaG9uIHNlaXQgMTYgamFocmVuCnRhZWdsaWNoIHVuZCBtZWluIHBjIGlzdCBub2NoIG5pZSBhYmdlc3R1ZXJ6dCwgaWNoIHdpbGwgc29nYXIgYmVoYXVwdGVuIGRhbmsKTXVzaWthbnRlbnN0YWR0IGlzdCBtZWluIFdJTjk1IHJlY2huZXIgbm9jaCBuaWVtYWxzIGFiZ2VzdHVlcnp0LgoKRnZkWiwKSmlkZHUsIHdhaG5zaW5uaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZ1ZXIgQWxpbmUgKEdyaW1tYm9ybiwgMjcuIFNlcCAxOTk4LCAyMzo0NToyNyk6Cn4jISBvbj1aYXJuaXlhIG90PTkwNjU1ODM0NyBvZz13aXR6ZQp+IyEgcm49QWxwaGEgcnQ9OTA2NDk4OTkxIHJnPXdpdHplCn4jISB0aWQ9OTA2MzkyMDA1ClJvY2h1cyByYXNpZXJ0IHNpY2ggZWlnZW50bGljaCBOSVJHRU5EV08uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQUxTTyEgKFRlZGR5LCAyOC4gU2VwIDE5OTgsIDAxOjIzOjA1KToKfiMhIHJuPUx1ZyBydD05MDY5Mzg1MjIgcmc9c2NobWFycm4KfiMhIHRpZD05MDY5Mzg1MjIKWnVtaW5kZXN0IG1vZWNodGUgaWNoIEVpY2hzcGllbCBpbSBNb21lbnQgbmljaHQgZGllIEhhbmQgZ2ViZW4uCgpUZWRkeSAoRGllc21hbCBvaG5lIFR5cG8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFMU08hIChMdWcsIDI4LiBTZXAgMTk5OCwgMDE6MjU6NDMpOgp+IyEgcm49VGVkZHkgcnQ9OTA2OTM4NTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA2OTM4NTIyClRzcyBUZWRkeSwKCgp3YXMgaGVpc3N0IGRhICJpbSBNb21lbnQiPwoKCldmZVMKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBTFNPISAoVGVkZHksIDI4LiBTZXAgMTk5OCwgMDE6Mjg6MTApOgp+IyEgcm49THVnIHJ0PTkwNjkzODc0MyByZz1zY2htYXJybgp+IyEgdGlkPTkwNjkzODUyMgpJY2ggaG9mZmUsIGRhcyBzaWUgc2ljaCBnZWxlZ2VudGxpY2ggbWFsIGRpZSBIYWVuZGUgd2Flc2NodCwgZGFubiBrYW5uIG1hbgpkcnVlYmVyIHJlZGVuIDspCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQUxTTyEgKEx1ZywgMjguIFNlcCAxOTk4LCAwMTo0OTozNCk6Cn4jISBybj1UZWRkeSBydD05MDY5Mzg4OTAgcmc9c2NobWFycm4KfiMhIHRpZD05MDY5Mzg1MjIKCkljaCBob2ZmZSBUZWRkeSwKCkR1IGhhc3QgZGVuIEZpbG0gIkRlciBQYXRlIiBnZXNlaGVuIDspCgpHbW5FCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG1wZiAoVGVkZHksIDI4LiBTZXAgMTk5OCwgMDI6MDM6MjkpOgpEdSBzYWdzdDogSWNoIHdvbGx0ZSBlaCB6dSBpaG0gaGluLCBiaW4gcGVpdGUgOykKRnJvZ2h1bnRlciBrb3R6dCBEaXIgYXVmIGRpZSBGdWVzc2UuCgpUZWRkeSwgZG9jaCBldHdhcyBiZWxlaWRpZ3QgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoamEuLi4gKE1vcmdvdGgsIDI4LiBTZXAgMTk5OCwgMTM6MjU6MDEpOgpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KTGVpYm5peiAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyB3b2xsdGUgaWNoIG5pY2h0ISAoQWxpbmUsIDI4LiBTZXAgMTk5OCwgMTY6NDI6NDYpOgoKZWJlbiBnZXJhZGUgc28gcGFzc2llcnQ6CkVpbiBMZW1taW5nIGF1ZiBXYW5kZXJzY2hhZnQuCiAgRHUgdHJpZmZzdCBkZW4gTGVtbWluZyBzZWhyIGhhcnQuCkRlciBMZW1taW5nIGZhZWxsdCB0b3QgenUgQm9kZW4uCj4gW1RvZDpMYXJzXSBFaW4gS29tbWFuZG9mdWVocmVyIGhhdCBnZXJhZGUgU2Nob2tvIHVtZ2VicmFjaHQuCgpTb3JyeSA6KAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpraWNoZXIqIChNb3Jnb3RoLCAyOC4gU2VwIDE5OTgsIDIyOjAwOjU1KToKfiMhIHJuPVRpbGx5IHJ0PTkwNzAwNjYzNyByZz1zY2htYXJybgp+IyEgdGlkPTkwNzAwNjYzNwpEdSB0ZWlsc3QgTWluZGJsYWRlIG1pdDogRFUgQlVHR1NUCk1pbmRibGFkZSBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBJaHIgd2lzc3Qgc2Nob24uLi4uCk1pbmRibGFkZSB0ZWlsdCBEaXIgbWl0OiBobT8gWzIxOjU3XQpEdSB0ZWlsc3QgTWluZGJsYWRlIG1pdDogaGFzdCB3aWVkZXIgd2FzIHZlcmthdWZ0LCBqYT8KTWluZGJsYWRlIGlzdCBnZXJhZGUgbmljaHQgZGE6IElociB3aXNzdCBzY2hvbi4uLi4KTWluZGJsYWRlIHRlaWx0IERpciBtaXQ6IGpvIGViZW4sIGdhYiBuZW4gcGFhciBGaVJaRyE7KSBbMjE6NTldCgpJQ0ggd2FycyBOQ0lIVCAhISEKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICpraWNoZXIqIChNaW5kYmxhZGUsIDI4LiBTZXAgMTk5OCwgMjI6MDQ6MTMpOgp+IyEgcm49TW9yZ290aCBydD05MDcwMTI4NTUgcmc9c2NobWFycm4KfiMhIHRpZD05MDcwMDY2MzcKTmFqYSwgd2FzIGthbm4gaWNoIGRlbm4gZGFmdWVyLCB3ZW5uIGVzIG5lIHp1IGhvaGUgZXZhbHVhdGlvbi10aW1lIGdpYnQuLi4KRGllIEZ1bmt0aW9uIGlzdCBzY2guLi4hOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZlcmRhbW10ZSBJbmZsYXRpb24gOy0pIChOb3Zhc3Rvcm0sIDI4LiBTZXAgMTk5OCwgMjM6MDQ6MjEpOgp6ZWlnZSB2ZXIKIDExLiBFaW5lIEF1Z2Vua2xhcHBlICAgICAgICAgICAgICA4NyB8ICAxMi4gSWtvbm9ncmFwaGllcGFwaWVyICAgICAgICAgICA5MDAKIDEzLiA0MzMzIE11ZW56ZW4gICAgICAgICAgICAgICAxMjk5OSB8ICAxNC4gRWluIFNlaWwgICAgICAgICAgICAgICAgICAgICAgNDUKIC4uLgogICBOb3ZhLCBrYXVmdCBET1JUIG5peCBtZWhyIC4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbGVtZW50YXJlYmVuZSAoVGVkZHksIDI5LiBTZXAgMTk5OCwgMTA6MjA6MjEpOgpFaW4gSHJpbWh1bmUgc3RhcGZ0IGhlcmVpbi4KICAuLi4ubm9ybWFsL0Vpc3NjaHdlcnQuLiBIcmltaHVuZS4uLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSBoYXJ0Ci4uLi5ub3JtYWwvR2xpdHplcnNjaHdlIER1Li4uLi4uLi4uLi4gOiBIcmltaHVuZS4uLi4uICoqKioqKioqIC0+IHZlcmZlaGx0CiAgRGVyIEhyaW1odW5lIHphdWJlcnQgZWluZW4gRWlzaGFnZWwuCiAgLi4uLm5vcm1hbC9FaXNzY2h3ZXJ0Li4gSHJpbWh1bmUuLi4uLiA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gS3JhY2hlbgpFaW4gSHJpbWh1bmUgZ2VodCB6dXJ1ZWNrIGluIGRlbiBFaXNzdHVybS4KRHUgdmVyZm9sZ3N0IGpldHp0IGVpbmVuIEhyaW1odW5lLgoKV2VuaWcgc3BhZXRlciBpbSBFaXNzdHVybToKCkR1IHNjaHVldHRlbHN0IGRpZSBzY2h3YXJ6ZSBTY2hlaWJlLgpVZWJlciBkZXIgc2Nod2FyemVuIFNjaGVpYmUgZXJzY2hlaW50IGZ1ZXIgZWluZW4ga3VyemVuIE1vbWVudCBlaW4gd2Vpc3MKc2NoaW1tZXJuZGVyIFBmZWlsLCBkZXIgbmFjaCBOb3Jkb3N0ZW4gemVpZ3QuCiAgLi4uLm5vcm1hbC9HbGl0emVyc2Nod2UgRHUuLi4uLi4uLi4uLiA6IEhyaW1odW5lLi4uLi4gKioqKioqKiogLT4gc2VociBoYXJ0CkRlciBIcmltaHVuZSBmYWVsbHQgdG90IHp1IEJvZGVuLgoKSmV6dCBnZWhlbiBkaWUgc2Nob24gaW0gRWlzc3R1cm0gYXVmIEphZ2QgYW5zdGF0dCBhdWYgbWljaCB6dSB3YXJ0ZW4gOykKClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXJvayAoVGVkZHksIDI5LiBTZXAgMTk5OCwgMTM6NTE6NTEpOgpLdXJ6IHVuZCBzY2htZXJ6bG9zOgoKVHVmZmkga2xldHRlcnQgYXVmIGRlbiBHbGV0c2NoZXIuClR1ZmZpIGtsZXR0ZXJ0IGhlcnVudGVyLgpUdWZmaSBzYWd0OiBvaywgaXN0IHRvdAoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRvcHBlbGhlaWx1bmcgKFF1ZW5naXN0dSwgMjkuIFNlcCAxOTk4LCAxNDo1Mjo1Myk6CnVuZ2VzY2huaXR0ZW46CgpEdSBoYXN0IGpldHp0IDkxIExlYmVuc3B1bmt0ZSB1bmQgNiBLb256ZW50cmF0aW9uc3B1bmt0ZS4KRHUgYmlzdCBpbSBIb2VobGVubGFieXJpbnRoIGRlciBTY2hyZWNrZW5zc3BpdHplLiBEZXIgR2FuZyBtYWNodCBoaWVyCmVpbmVuIEtuaWNrIHVuZCBmdWVocnQgaW4gbm9lcmRsaWNoZSB1bmQgd2VzdGxpY2hlIFJpY2h0dW5nLiBHcm9zc2UKRWlzemFwZmVuIGhhZW5nZW4gdm9uIGRlciBEZWNrZSBoZXJ1bnRlciwgbWFuY2hlIGVycmVpY2hlbiBmYXN0IGRlbgpCb2Rlbi4gRWluIGthbHRlciBXaW5kIGhldWx0IGR1cmNoIGRlbiBzY2htYWxlbiBHYW5nIHVuZCBEZWluZSBaYWVobmUKYmVnaW5uZW4genUga2xhcHBlcm4uCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiB3ZXN0ZW4gdW5kIG5vcmRlbi4KPiB1bnQgcnVuZW4KRWluZSBoZXJybGljaGUgV2Flcm1lIGdlaHQgdm9uIERlaW5lbSBBbXVsZXR0IGF1cywgdW5kIER1IGZ1ZWhsc3QKRGljaCBwcmltYS4KRHUgaGFzdCBqZXR6dCAxOTIgTGViZW5zcHVua3RlIHVuZCAxMDYgS29uemVudHJhdGlvbnNwdW5rdGUuCkRlaW5lIFNjaHVoZSBnbHVlaGVuIGt1cnogYXVmIHVuZCBoZWlsZW4gRGljaCBlaW4gd2VuaWcuCkR1IGhhc3QgamV0enQgMjEwIExlYmVuc3B1bmt0ZSB1bmQgMjEwIEtvbnplbnRyYXRpb25zcHVua3RlLgpEaWUgUnVuZW4gbGV1Y2h0ZW4gaW4gaGVsbGVtIFJvdC4KCk9iIGRhcyBvZWZ0ZXIga2xhcHB0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERvcHBlbGhlaWx1bmcgKEJvaW5nLCAyOS4gU2VwIDE5OTgsIDE0OjU0OjA3KToKfiMhIHJuPVF1ZW5naXN0dSBydD05MDcwNzM1NzMgcmc9c2NobWFycm4KfiMhIHRpZD05MDcwNzM1NzMKTm9ybWFsZXJ3ZWlzZSBwYXNzaWVydCBzb3dhcyBkb2NoIG51ciwgd2VubiBtYW4gJ2xpZXMgcnVuZW4nIHRpcHB0IC4uLiAKbXVzcyBlaW4gYnVnIHNlaW4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEb3BwZWxoZWlsdW5nIChNb3Jnb3RoLCAyOS4gU2VwIDE5OTgsIDE0OjU0OjE3KToKfiMhIHJuPVF1ZW5naXN0dSBydD05MDcwNzM1NzMgcmc9c2NobWFycm4KfiMhIHRpZD05MDcwNzM1NzMKTmF0dWVybGljaCwgd2VpbCBkZXIgcmVzZXQgaW4gZGVuIG9iamVrdGVuIG1laXN0ZW5zIHp1c2FtbWVuZmFlbGx0LiBJY2ggaGF0dGUKZGEgamEgc2Nob25tYWwgZWluZSBsb2VzdW5nIHBhcmF0IDstKCgoCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEb3BwZWxoZWlsdW5nIChUZWRkeSwgMjkuIFNlcCAxOTk4LCAxNDo1NTowMCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkwNzA3MzY1NyByZz1zY2htYXJybgp+IyEgdGlkPTkwNzA3MzU3MwpIbXBmZ3J1bW1lbGZsdWNoc2NoaW1wZgoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEb3BwZWxoZWlsdW5nIChaaW5vLCAyOS4gU2VwIDE5OTgsIDE3OjI3OjAyKToKfiMhIHJuPVF1ZW5naXN0dSBydD05MDcwNzM1NzMgcmc9c2NobWFycm4KfiMhIHRpZD05MDcwNzM1NzMKTWFuIGJlYWNodGUgZGFzIF9laW4gd2VuaWdfIGJlaSBkZW4gU2NodWhlbi4gRGFzIGtvbW10IGRhdm9uLCB3ZW5uIG1hbiBkaWUKdXJzcHJ1ZW5nbGljaGUgQmlsbGlndmFyaWFudGUgaW1tZXIgbWVociBhdWZtb3R6dCB1bmQgZGFiZWkgdmVyZ2lzc3QsIGRpZQpNZWxkdW5nZW4gYW56dXBhc3Nlbi4gTW9yZ290aCBlYmVuLiA7KQoKWmlubwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2Vpc2VyIEVudHNjaGx1c3MgKFNyYWJpLCAyOS4gU2VwIDE5OTgsIDE4OjA3OjA1KToKRXMgaXN0IGplZGVzbWFsIGRhcyBzZWxiZS4uLi4uCgpIZXh4ZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKU2VoZXIgbWV0emVscGFydHk/IHdvID8gd2Fubj8gd2FzPwpUb2QgRWluIFdhc3NlcmVsZW1lbnRhciBoYXQgZ2VyYWRlIEhleHhlciB1bWdlYnJhY2h0LgpIZXh4ZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpTcmFiaSwgdHJhdWVydCB1bSBlaW5lbiBGcmV1bmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWlzZXIgRW50c2NobHVzcyAoUmluZ29yLCAyOS4gU2VwIDE5OTgsIDE5OjMxOjA2KToKfiMhIHJuPVNyYWJpIHJ0PTkwNzA4NTIyNSByZz1zY2htYXJybgp+IyEgdGlkPTkwNzA4NTIyNQpLb2VubnRlbiBzaWNoIGRpZSBsaWViZW4gek11ZC1CZW51dHplciB2aWVsbGVpY2h0IGFuZ2V3b2VobmVuLCBhdWNoIGRpZQoidW53aWNodGlnZW4iIFNhY2hlbiBtaXQgenUgcXVvdGVuPwoKRGFzcyBkaWUgdmVyc3R1ZW1tZWx0ZW4gS2FuYWxtZWxkdW5nZW4gYmVpIG1pciBuaWNodCBoZXJ2b3JnZWhvYmVuIHdlcmRlbiwKb2theS4gRGFzcyBoaW50ZXIgIlRvZDoiIG1laXN0IG5vY2ggIkxhcnMiIGdlaG9lcnQsIHdlaXNzIGljaCBhdWNoLiBBYmVyCnNwYWV0ZXN0ZW5zIGJlaSBaaXRhdGVuIHZvbiBhbmRlcmVuIEthbmFlbGVuIHd1ZXJkZSBtaWNoIGRlciBBdXRvciBkYW5uIGRvY2gKaW50ZXJlc3NpZXJlbi4gOy0pCgpWZXJ3b2VobnRlciBURi1OdXR6ZXIuIFJpbmdvci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2Vpc2VyIEVudHNjaGx1c3MgKEdsb2luc29uLCAyOS4gU2VwIDE5OTgsIDE5OjQ2OjE4KToKfiMhIHJuPVJpbmdvciBydD05MDcwOTAyNjYgcmc9c2NobWFycm4KfiMhIHRpZD05MDcwODUyMjUKRGFzIGhhdCBuaWNodHMgbWl0IHpNVUQtb25seSB6dSB0dW4uIE1hbmNobWFsIHNjaGF1IGljaCBMZXV0ZW4gYXVmIGRlbgpTY3JlZW4gdW5kIGZyYWcgc2llLCBvYiBzaWUgZGFzIEthbXBmZXJnZWJuaXMgbmljaHQgbGllYmVyIGdsZWljaCBiZS0KcmVjaG5ldCBoYWJlbiB3b2xsZW4gLi4uIFRGJ2xlci4gQXVjaCB3ZW5uIGVzIGJlaSB6TVVEIHdvaGwgbWVociBGZWF0dXJlCmlzdCA6KQoKR2xvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdlaXNlciBFbnRzY2hsdXNzIChHYW5kbywgMjkuIFNlcCAxOTk4LCAxOTo0ODowMCk6CldpZSB3ZWlzZXIgbWFubiwgZGVyIGR1cmNoIGZlbnN0ZXIgYXVmIHNhbmR1aHIgc2NoYXV0ZSBiZXJlaXRzIHNhZ3RlOgpiZXJlaXRzIHNhZ3RlOgpJdHMgbm90IGEgYnVnLCBpdHMgYSBmZWF0dXJlLgoKCkdhbmRvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXZWlzZXIgRW50c2NobHVzcyAoV2ltLCAyOS4gU2VwIDE5OTgsIDE5OjUwOjU3KToKfiMhIHJuPUdhbmRvIHJ0PTkwNzA5MTI4MCByZz1zY2htYXJybgp+IyEgdGlkPTkwNzA5MTI4MAoKV2FzIGVyd2FydGVzdCBEdSBkZW5uIGJlaSBlaW5lbSBkZXJhcnRpZ2VuIFBDPyBCZWkgZGVuIGdhbnplbiBnZW9lZmZuZXRlbgpGZW5zdGVybiBoYXQgZGVyIHNpY2ggYmVzdGltbXQgc2Nob24gbGFlbmdzdCBlaW5lbiBTY2hudXBmZW4gZ2Vob2x0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdlaXNlciBFbnRzY2hsdXNzIChHYW5kbywgMjkuIFNlcCAxOTk4LCAxOTo1MjowNCk6Cn4jISBybj1XaW0gcnQ9OTA3MDkxNDU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA3MDkxMjgwCkFsc28gaXN0IFphY2hhcmlhcyBpbiB3aXJrbGljaGtlaXQgQmlsbD8KCkdhbmRvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTVElORyEgLCkgKE5vdmFzdG9ybSwgMjkuIFNlcCAxOTk4LCAyMDoyNToyOSk6CkRlaW4gRnJldW5kIFN0aW5nIHRlaWx0IERpciBtaXQ6IHJlCgpbPE1hc3RlUj46QXZpZW5kaGFdIGwKU3RpbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCls8TWFzdGVSPjo8TWFzdGVSPl0gOC4zMiBjbWRzL3MsIDYxLjYzIGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogNC4wJS82MCwgNy4yJS8xNSwgNDUuNiUvMQoKVXJzYWNoZSBnZWZ1bmRlbiA/ICwpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuYW51IChEaWVkZXIsIDI5LiBTZXAgMTk5OCwgMjI6Mjk6MTIpOgpmd2VyIG9ydAouLi4KTmViIC0gSW4gZWluZW0gcmllc2lnZW4gQmF1bSAtIEhvaGxrdWdlbApTdGluZyAtIEluIGVpbmVtIHJpZXNpZ2VuIEJhdW0gLSBIb2hsa3VnZWwKU3dpZnQgLSBJbiBlaW5lbSByaWVzaWdlbiBCYXVtIC0gSG9obGt1Z2VsClRlZGR5IC0gSW4gZWluZW0gcmllc2lnZW4gQmF1bSAtIEhvaGxrdWdlbApUaWxseSAtIEluIGVpbmVtIHJpZXNpZ2VuIEJhdW0gLSBIb2hsa3VnZWwKCgpEaWVkZXIsIHd1bmRlcnQgc2ljaC4uLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTnVyIG1hbCBzb25lIElkZWUgKEFuYXRvbCwgMjkuIFNlcCAxOTk4LCAyMjo1MzowMCk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTA3MDA3NzU5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05MDY2MjM5MzEKRGFua2UgZnVlciBEZWluZW4gQmVpdHJhZyB6dW0gVGhlbWEgIkdla29ubnRlcyBWZXJhbGxnZW1laW5lcm4iLgoKQW5hdG9sIDpvKSAtIE1hZ2llciBzaW5kIGRvb2YgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYWU/IChUZWRkeSwgMzAuIFNlcCAxOTk4LCAwMTowODoyMCk6CltDaGFvczpDYWx6b25lXSBtY2RvbmFsZHMgaXMgYXVjaCBuaWNodCBzY2hsZWNodC4uLiAgICAgICAgICAgICAgICAgICAgICAKCldpZSBqZXR6dCwgbWFjaGVuIGRpZSBqZXR6dCBoaWVyIFdlcmJ1bmc/CgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2luLU5UICYgSmFzcGVyIChHbG9pbnNvbiwgMzAuIFNlcCAxOTk4LCAwNDoxNjo1NSk6CltBbGxnZW1laW46SmFzcGVyXSB3aWUga2FubiBpY2ggdW50ZXIgd2luZG93cyBudCBlaW4gbmV0c2NhcGUga2lsbGVuLCBvaG5lIApkZW4KW0FsbGdlbWVpbjpKYXNwZXJdIHJlY2huZXIgenUgcmVzZXRlbj8KLi4uIHZpZWxlICd0aXBzJyBzcGFldGVyOgpbQWxsZ2VtZWluOkphc3Blcl0gdGFza21hbmFnZXIgaGFzIGJlZW4gZGlzYWJsZWQgYnkgeW91ciBhZG1pbmlzdHJhdG9yIDopCltBbGxnZW1laW46R2xvaW5zb24gZ3JvZWhsdC5dCj4gW0FsbGdlbWVpbjpMaWFyYV0gKndhZWx6KgpbQWxsZ2VtZWluOlRtbSB3YWVsenQgSmFzcGFyIHZvciBMYWNoZW4gYW0gQm9kZW4uXQoKV2llIHdhciBkYXMgbWl0IGRlciBTY2hhZGVuZnJldWRlID0pID8KCmdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaG5lIHdvcnRlIChQeXJkYWNvciwgMzAuIFNlcCAxOTk4LCAxNTowMTo0NSk6CkVpbiBCZXR0bGVyIGZyYWd0OiBIYXN0ZSBtYWwgbmVuIEV1cm8/CkRlciBCZXR0bGVyIGdlaHQgbmFjaCBXZXN0ZW4uCgouLi4uIHdhcyBzb2xsIG1hbiBkYXp1IG5vY2ggc2FnZW4gKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV293LCBzY2huZWxsZXIgYWxzIGRlciBTY2hhdHRlbi4uIGFlaCBQb3N0bWVpc3RlciA7LSkgKE5vdmFzdG9ybSwgMzAuIFNlcCAxOTk4LCAxNToxMDo1OCk6CkR1IGFudHdvcnRlc3Q6IEphCkR1IHppZWhzdCBkaWUgUG9zdG11ZXR6ZSBhbi4KVGhvcmJvbGQgZ2lidCBEaXIgZWluZSBNdWV0emUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYm9jayB1bmQgZ2FlcnRuZXIgdW5kIHNvIC4uLiAoUHlyZGFjb3IsIDMwLiBTZXAgMTk5OCwgMTc6MDc6NDEpOgpEaWUgU2NoYXR6a2FtbWVyLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogd2VzdGVuLgpEZXIgU2NoYXR6bWVpc3Rlci4KCmZyYWdlIHNjaGF0em1laXN0ZXIgbmFjaCBzY2hhdHoKCkRlciBTY2hhdHptZWlzdGVyIHNjaGF1dCBEaWNoIGZyYWdlbmQgYW4uCgpEYXMgbmVubmUgaWNoIGVpbmRldXRpZyBCZXJ1ZiB2ZXJmZWhsdC4KClB5cmRhY29yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hlaXNzcXVlc3QgOikgKE1haGF0bWEsIDMwLiBTZXAgMTk5OCwgMTc6MjM6MDIpOgpWYWV0ZXJjaGVuIFplaXQgZnJhZ3Q6IFppbm8sIFdhcyBpc3QgZWluIFp3ZWl0aWU/CkR1IGFudHdvcnRlc3Q6IGljaCBiaW4gZWluZXIgOikKPiBWYWV0ZXJjaGVuIFplaXQgc2FndDogU28ga2FubiBpY2ggZGFzIG5pY2h0IGFremVwdGllcmVuLgpEdSBhbnR3b3J0ZXN0OiBlaW4gendlaXRlciBzcGllbGVyIGVpbiB1bmQgZGVyc2VsYmVuIHJsLXBlcnNvbgo+IFZhZXRlcmNoZW4gWmVpdCBzYWd0OiBTbyBrYW5uIGljaCBkYXMgbmljaHQgYWt6ZXB0aWVyZW4uCkR1IGFudHdvcnRlc3Q6IGVpbiB6d2VpdHNwaWVsZXIKPiBWYWV0ZXJjaGVuIFplaXQgc2FndDogSmEsIGRhcyBrYW5uIGljaCBnZWx0ZW4gbGFzc2VuLgoKU28gZWluIEtvcmludGhlbmthY2tlci4KWmlubwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVXJrcyAoU3JhYmksIDMwLiBTZXAgMTk5OCwgMTg6MDg6NTYpOgpIbW0sIGhhdCBTY2hsZWljaGVyIGVpbmUgYW5zdGVja2VuZGUgS3JhbmtoZWl0IG9kZXIgbWFnaXNjaGUgS3JhZWZ0ZT8/PwoKU2NobGVpY2hlciAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpUb2QgRWluIFdhaG5zaW5uIGhhdCBnZXJhZGUgU295byB1bWdlYnJhY2h0LgoKU3JhYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEb3BwZWxoZWlsdW5nIChKaWRkdSwgMzAuIFNlcCAxOTk4LCAxOTozNjoyOCk6Cn4jISBybj1RdWVuZ2lzdHUgcnQ9OTA3MDczNTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA3MDczNTczCkRhcyBoYXR0ZSBpY2ggZ2VzdGVybiBhdWNoLgoKRWluZSBoZXJybGljaGUgV2Flcm1lIGdlaHQgdm9uIERlaW5lbSBBbXVsZXR0IGF1cywgdW5kIER1IGZ1ZWhsc3QKRGljaCBwcmltYS4KRGVpbmUgU2NodWhlIGdsdWVoZW4ga3VyeiBhdWYgdW5kIGhlaWxlbiBEaWNoIGVpbiB3ZW5pZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2Vpc2VyIEVudHNjaGx1c3MgKEppZGR1LCAzMC4gU2VwIDE5OTgsIDE5OjM5OjUwKToKfiMhIHJuPVJpbmdvciBydD05MDcwOTAyNjYgcmc9c2NobWFycm4KfiMhIHRpZD05MDcwODUyMjUKRWhoIHdhcyBoYXQgZGFzIG1pdCB6TVVEIHp1IHR1bj8KW0FsbGdlbWVpbjpKaWRkdSBoYXQgem11ZCB1bmQgbWFjaHQgYWxsZXMgcmljaHRpZy4gOl0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZvcnNjaGVuIG1hbCBhbmRlcnMgKFJpbmdvciwgMzAuIFNlcCAxOTk4LCAyMjowMjo1OCk6CkRvdHRlcmJhcnQga29tbXQgYW4uCltGZXVlcjpUZWRkeV0gTmUgV2FmZmUgbWl0IE1hZ2llIG9kZXIgV2luZHNjaGFkZW4KRG90dGVyYmFydCBnZWh0IG5hY2ggV2VzdGVuLgpEb3R0ZXJiYXJ0IGtvbW10IGFuLgpEb3R0ZXJiYXJ0IGdlaHQgbmFjaCBPc3Rlbi4KW1RvZDpMYXJzXSBFaW4gRHJhY2hlbnByaWVzdGVyIGhhdCBnZXJhZGUgRG90dGVyYmFydCB1bWdlYnJhY2h0LgoKS2FydGVuIG1hbGVuIGlzdCBqYSBuZXR0IC0gYWJlciB6d2lzY2hlbmR1cmNoIGRhcyBUYW5rZW4gbmljaHQgdmVyZ2Vzc2VuIDstKQoKUmluZ29yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTEwgKEZhbW91cyBsYXN0IGxvZ2luKSAoTW9yZ290aCwgMzAuIFNlcCAxOTk4LCAyMjo0ODozNCk6ClRlZGR5ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCltUb2Q6TGFyc10gRWluIEZldWVycHJpZXN0ZXIgaGF0IGdlcmFkZSBUZWRkeSB1bWdlYnJhY2h0LgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTGV2LCAzMC4gU2VwIDE5OTgsIDIzOjQ2OjA5KToKCltGZXVlcjpUZWRkeV0gSWNoIGdsYXViIGljaG1hY2ggbWFsIFBhdXNlIGJpcyBpaHIgZGVuIFJhdW0gbGVlciBoYWJ0IDsoCltUb2Q6TGFyc10gV3Vxb3VyJ3MgSGVpbHVuZyBoYXQgZ2VyYWRlIFRlZGR5IHVtZ2VicmFjaHQuCltUb2Q6V3Vxb3VyJ3MgSGVpbHVuZyB3YXIgZG9jaCBldHdhcyBydXBwaWcuLi5dCgoKSG1tLi4uIGtvbWlzY2hlIFBhdXNlLi4uIAoKTGV2LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoVGVkZHksIDMwLiBTZXAgMTk5OCwgMjM6NTY6NTQpOgp+IyEgcm49TGV2IHJ0PTkwNzE5MTk2OSByZz1zY2htYXJybgp+IyEgdGlkPTkwNzE5MTk2OQpJY2ggaGFiIGRhbmFjaCB3aXJrbGljaCBuaXggZ2VtYWNodCwgbnVyIGdld2FydGV0IGJpcyBkaWUgVG9kZXNzZXF1ZW56IHZvcmJlaQpzaXQuCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS29ib2xkZSBhYndlcnRlbiA7KSAoTmViLCAgMS4gT2t0IDE5OTgsIDAwOjMzOjIwKToKZndpbmtlCktpbGFyIG1vZWNodGUgZ2VyYWRlIG5pY2h0IGdlc3RvZXJ0IHdlcmRlbi4KRGllIE1pdHRlaWx1bmcgd3VyZGUgdm9uIGVpbmVtIGtsZWluZW4gS29ib2xkIGluIEVtcGZhbmcgZ2Vub21tZW4uCkVyIHdpcmQgc2llIHNwYWV0ZXIgd2VpdGVybGVpdGVuIQpLaXUgbW9lY2h0ZSBnZXJhZGUgbmljaHQgZ2VzdG9lcnQgd2VyZGVuLgpEaWUgTWl0dGVpbHVuZyB3dXJkZSB2b24gZWluZW0ga2xlaW5lbiBLb2JvbGQgaW4gRW1wZmFuZyBnZW5vbW1lbi4KRXIgd2lyZCBzaWUgc3BhZXRlciB3ZWl0ZXJsZWl0ZW4hClNjaG9rbyBpc3QgbW9tZW50YW4gbGVpZGVyIHRhdWIuCkRpZSBNaXR0ZWlsdW5nIHd1cmRlIHZvbiBlaW5lbSBrbGVpbmVuIEtvYm9sZCBpbiBFbXBmYW5nIGdlbm9tbWVuLgpFciB3aXJkIHNpZSBzcGFldGVyIHdlaXRlcmxlaXRlbiEKRHUgd2lua3N0IGRlaW5lbiBGcmV1bmRlbiB6dS4KClRzLCBpbW1lciByZWRldCBtYW4gbnVyIG1pdCBkaWVzZW4gcGllc2VsaWdlbiBrbGVpbmVuIEFuZ2VzdGVsbHRlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtvYm9sZGUgYWJ3ZXJ0ZW4gOykgKFRlZGR5LCAgMS4gT2t0IDE5OTgsIDAwOjM0OjEyKToKfiMhIHJuPU5lYiBydD05MDcxOTQ4MDAgcmc9c2NobWFycm4KfiMhIHRpZD05MDcxOTQ4MDAKQW5ydWZiZWFudHdvcnRlIGhhbHQuCgpUZWRkeSwgbGFlc3N0IGRpZSBMZXV0ZSBhdWNoIHZvbiBzZWluZW0gQW5ydWZiZWFudHdvcnRlciBhbnJ1ZmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWx0ZXMgaWRsZXBhY2sgKEJvaW5nLCAgMS4gT2t0IDE5OTgsIDAxOjM2OjA5KToKa3dlciBtYWdpZXIKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERvbiwgIDEuIE9rdCAxOTk4LCAwMTozNToxOCAoNiBUZWlsbmVobWVyKQoKR2FuZG8uLi4uLi4uLi4uSi5NIFF1aWxsaWFuLi4uLi4uLkouTSBQYXRyeW4uLi4uLi4uLi5KLlIgQ2F0d2VhemxlLi4uLi4uSi5XCkJvaW5nLi4uLi4uLi4uLi4uRyBSdW1hdGEuLi4uLi4uLi5KLkcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhbHRlcyBpZGxlcGFjayAoVGVkZHksICAxLiBPa3QgMTk5OCwgMDE6MzY6NDYpOgp+IyEgcm49Qm9pbmcgcnQ9OTA3MTk4NTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA3MTk4NTY5CkJldW5ydWhpZ2VuZCwgZGFzIGR1IG5pY2h0IGlkbGUgd2Fyc3QuCgpUZWRkeSwgYXVmIGRlbiBpZGVsbmRlIE1hZ2llciBlaW5lIGVoZXIgYmVydWhpZ2VuZCBXaXJrbHVuZyBoYWJlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhbHRlcyBpZGxlcGFjayAoSmlkZHUsICAxLiBPa3QgMTk5OCwgMDE6Mzc6NDYpOgp+IyEgcm49Qm9pbmcgcnQ9OTA3MTk4NTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA3MTk4NTY5CktsZWluZSBKb2Zlc2FuYmV0ZXIgaG0/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb2xkYXRlbiAoR29yb2csICAxLiBPa3QgMTk5OCwgMDI6MDg6NTMpOgpHZXJhZGUgYmVpIFNtYWxsIFNvbGRpZXJzLgoKTWFuIGhvZXJ0IGxhdXQgZGllIFNwaWNlIEdpcmxzLgpGcmFnZTogd2FzbiBkYXM/PwpBbnR3b3J0OiBwc3ljaG9sb2dpc2NoZSBLcmllZ3NmdWVocnVuZyEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc29sZGF0ZW4gKE1vcmdvdGgsICAxLiBPa3QgMTk5OCwgMDg6MTE6NTUpOgp+IyEgcm49R29yb2cgcnQ9OTA3MjAwNTMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA3MjAwNTMzCkFlaD8gU3BpY2UgR2lybHMgc2luZCBkb2NoIGVjaHQgZ2VuaWFsISA7LSkpCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzb2xkYXRlbiAoVGVkZHksICAxLiBPa3QgMTk5OCwgMDg6MTU6MDcpOgp+IyEgcm49TW9yZ290aCBydD05MDcyMjIzMTUgcmc9c2NobWFycm4KfiMhIHRpZD05MDcyMDA1MzMKV2lyIHdpc3NlbiBkYXMgZHUgQ0RzIHZvbiBkZW4gU3BpY2UgR2lybHMgaGFzdCwgTW9yZ290aCwgYXVjaCB3ZW5uIGljaHMgbmljaHQKZ2xhdWJlbiBrYW5uLgoKVGVkZHksIGhhdHMgbWl0IGVpZ2VuZW4gQXVnZW4gZ2VzZWhlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhqYSAoSGFuZ292ZXIsICAxLiBPa3QgMTk5OCwgMTY6MDk6MzkpOgpHcmFkZSBlYmVuOgoKRGVyIERyYWtvbmllcndhZWNodGVyIGZhZWxsdCB0b3QgenUgQm9kZW4uCkVpbiBEcmFrb25pZXJ3YWVjaHRlciBqYWd0IERpY2ggbmljaHQgbWVoci4KCldpZSBuZXR0IHZvbiBpaG0uLi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBJbnRlcm5ldHN0cmVpayAoQm9pbmcsICAxLiBPa3QgMTk5OCwgMTc6MjQ6MzQpOgp+IyEgb249THlyYSBvdD05MDcyNTQ2MDkgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVJvYWRydW5uZXIgcnQ9OTA3MjU0NTc2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTA3MjQyNDQ2ClJlYm9vdD8gQWJlciBpbW1lciA7LSkKCkx5cmEgc2NobWFycm50CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLTGVyaWtlci4uLiAoRGFya3dpbmcsICAxLiBPa3QgMTk5OCwgMjI6MzU6MzEpOgpEZWluIEZyZXVuZCBUYW5pcyB0ZWlsdCBEaXIgbWl0OiBvZWhtIC4uLiB3aWUgZGVuayBtYW4gbm9jaG1hbD8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmh1enJ1Y2sgdHN0c3RzIChKYXNvbnJpZ2lkLCAgMi4gT2t0IDE5OTgsIDExOjI3OjIwKToKRHUgZ2lic3QgSHV6cnVjayBkYXMgRmV1ZXJzY2h3ZXJ0LgpIdXpydWNrIHNhZ3Q6IE9oLCBlaW4gRmV1ZXJzY2h3ZXJ0IGlzdCBqYSBiZXNjaGFlZGlndC4gSWNoIHdlcmRlIGVzIGdsZWljaCBtYWwKSHV6cnVjayBzYWd0OiByZXBhcmllcmVuLiBEYXMgZGF1ZXJ0IG5hdHVlcmxpY2ggZWluZW4gTW9tZW50LgpIdXpydWNrIGhhZW1tZXJ0IGFuIGVpbmVtIEZldWVyc2Nod2VydCBoZXJ1bS4KSHV6cnVjayBzYWd0OiBTbywgZmVydGlnLCBzaWUgaXN0IG5vY2ggaGVpc3MsIGljaCBsZWcgc2llIG1hbCBoaWVyIGhpbi4KCk5hLCB3aWxsIGljaCBkb2NoIGhvZmZlbiwgZGFzcyBkYXMgbm9jaCBoZWlzcyBpc3QgLi4uCgpKYXNvbiwgZ3JpbnNlbmQKKysKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc29sZGF0ZW4gKEdyaW1tYm9ybiwgIDIuIE9rdCAxOTk4LCAxNTo1ODoyMyk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkwNzIyMjMxNSByZz1zY2htYXJybgp+IyEgdGlkPTkwNzIwMDUzMwpEYXMgaXN0IGltbWVyaGluIEdlc2NobWFja3NzYWNoZS4KSGllciBnaW5ncyBhYmVyIHVtIGRpZSBNdXNpayBkZXIgU3BpY2UgR2lybHMuIFVuZCBkYXMgaXN0IGtlaW5lCkdlc2NobWFja3NzYWNoZS4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCBtYWcgbnVyIEJhY2tzdHJlZXQgQm95cy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvbGNoZSBWZXJsZXR6dW5nZW4gbWFnIGljaCA6KSAoWmFwaG9iLCAgMi4gT2t0IDE5OTgsIDE5OjA3OjA4KToKR2VyYWRlIGViZW46CgpEdSBoYXN0IGpldHp0IDIwMCBMZWJlbnNwdW5rdGUgdW5kIDEzNSBLb256ZW50cmF0aW9uc3B1bmt0ZS4KT2ggd2VoISBEdSB0cmlmZnN0IERpY2ggbWl0IGRlbSBFaXNzdGFiIHNlbGJlciB1bmQgdmVybGV0enQgRGljaCBldHdhcyEKRHUgaGFzdCBqZXR6dCAyMDAgTGViZW5zcHVua3RlIHVuZCAxMjUgS29uemVudHJhdGlvbnNwdW5rdGUuCgpaYXAqLCBmaW5kZXQgZGFzIGd1dCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNvbGNoZSBWZXJsZXR6dW5nZW4gbWFnIGljaCA6KSAoRGllZGVyLCAgMi4gT2t0IDE5OTgsIDE5OjA4OjI0KToKfiMhIHJuPVphcGhvYiBydD05MDczNDgwMjggcmc9c2NobWFycm4KfiMhIHRpZD05MDczNDgwMjgKWmFwaG9iLCBkZWluZW4gTmFtZW4gc28gYWJ6dWt1ZXJ6ZW4ga2FubiBnZWZhZWhybGljaCB3ZXJkZW4uLi4gOi0pCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG9uIHdpZWRlciAoWmFwaG9iLCAgMi4gT2t0IDE5OTgsIDE5OjI5OjM1KToKS2FlbXBmZW4gaXN0IGx1c3RpZzoKCkRlciBCbHV0c2F1Z2Vyc3RhY2hlbCBibGVpYnQgaW4gZGVtIGh1ZXBmZW5kZW4gS251dHNjaGZpc2NoIHN0ZWNrZW4hCkRlciBLbnV0c2NoZmlzY2ggaXN0IGdsdWVja2xpY2ggd2llIG5pZSB6dXZvci4KClphcCosIGt1ZXJ6dCBzaWNoIGltbWVyIHNvIGFiCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEdXJjaHNjaGxhZ2VuZGUgV2lya3VuZyAoU3JhYmksICAyLiBPa3QgMTk5OCwgMTk6NTg6NDUpOgpNYW4gbXVzcyBkZXIgc3Rhcmsgc2VpbgoKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KRmlzaCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKU3JhYmksIGltbWVyIHdpZWRlciB2ZXJ3dW5kZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcGllbGVyIChTcGF0eiwgIDIuIE9rdCAxOTk4LCAyMDo0MDowMyk6Cj4gPwpPaGEhIFdvIGJpc3QgRHUgZGVubiBoaWVyIGdlbGFuZGV0PyBEdSBiaXN0IGluIGVpbmVyIFplbGxlLCBhbiBkZXJlbiBXYWVuZGVuCnVlYmVyYWxsIGtsZWluZSBHaXR0ZXJtdXN0ZXIgbWl0IFggdW5kIE8gZGFyaW4gZ2VtYWx0IHNpbmQuIEhpZXIgc2NoZWludCB3b2hsCmVpbiBiZWdhYnRlciBUaWMtVGFjLVRvZS1TcGllbGVyIHp1IHdvaG5lbi4KRWluZSBhYmdlc2NobG9zc2VuZSBaZWxsZW50dWVyLiAKRXMgZ2lidCBrZWluZSBzaWNodGJhcmVuIEF1c2dhZW5nZS4KWG9veG8uCj4gPyB6ZWxsZQpUYXVzZW5kZSB2b24gVGljLVRhYy1Ub2UtU3BpZWxlbiBzaW5kIGFuIGRpZSBXYWVuZGUgZ2VtYWx0Lgo+ID8gd2FlbmRlCkFuIGVpbmVyIFdhbmQgaXN0IGVpbiBTcGllbCBhbmdlbWFsdCwgZGFzIFhvb3hvIHdvaGwgZnVlciBEaWNoIHJlc2VydmllcnQgaGF0LApkZW5uIGRvcnQgaXN0IG5vY2ggbmljaHRzIGFuZ2VrcmV1enQuCj4gPyBzcGllbAoxICAgIHwyICAgIHwzCnwgICAgIHwgICAKX19fX198X19fX198X19fX18KNCAgICB8NSAgICB8Ngp8ICAgICB8ICAgCl9fX19ffF9fX19ffF9fX19fCjcgICAgfDggICAgfDkKfCAgICAgfCAgIAp8ICAgICB8CkRhcyBzaWVodCBkb2NoIGVpbmZhY2ggYXVzLgo+ID8gc3BpZWxlcgpYb294byBpc3QgZ2VtZWludC4KPiA/IHhvb3hvCkRhcyBpc3QgWG9veG8uIFNpZSBpc3Qgc2VociBrbGVpbi4KRXIgaXN0IGFic29sdXQgZml0Lgo+IHEgeG9veG8gc3BpZWwKWG9veG8gc2FndDogRGF2b24gaGFiZSBpY2ggbm9jaCBuaWUgZ2Vob2VydC4KClNvc28gLi4uCgpUc2NoaWxwCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2Nob24gd2llZGVyIChNb3Jnb3RoLCAgMi4gT2t0IDE5OTgsIDIxOjE0OjQ5KToKfiMhIHJuPVphcGhvYiBydD05MDczNDkzNzUgcmc9c2NobWFycm4KfiMhIHRpZD05MDczNDkzNzUKSGF0dGUgZXIgc2ljaCB2aWVsbGVpY2h0IHZvcmhlciBnZWJ1ZWNrdD8/CgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzY2hvbiB3aWVkZXIgKFllbmRpLCAgMi4gT2t0IDE5OTgsIDIxOjI1OjAxKToKfiMhIHJuPU1vcmdvdGggcnQ9OTA3MzU1Njg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA3MzQ5Mzc1CkZpc2NoZSwgZGllIHNpY2ggYnVlY2tlbj8KRHUgbWVpbnN0ICJCdWVja2xpbmdlIj8KCllUWQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhlaWxpZ2UgU2NoLi4uIDspIChUZWRkeSwgIDMuIE9rdCAxOTk4LCAwNTowMDowMyk6CkhpaG8gaWhyIGxpZWJlbiBLbGVyaWtlcjoKCkhhYnQgaWhyIGV1Y2ggYXVjaCBzY2hvbiBnZXd1bmRlcnQsIHdhcnVtIGV1ZXIgZ2VsaWVidGVyIGhlaWxpZ2VyIEhhbW1lciBhdWYKZWlubWFsIHNvIHNjaHdhY2ggdHJpZmZ0PyBad2VpZmVsdCBpaHIgYW4gZXVyZXIgR2xhdWJlbnNrcmFmdCB1bmQgdWViZXJsZWd0LApvYiBpaHIgZGllIEdvZXR0ZXIgdmVyYWVyZ2VydCBoYWJlbiBrb2VubnRldD8KV2VpdCBnZWZlaGx0LCBlciBrb21tdCB2aWVsIFNjaGxpbW1lcjoKCgpbQWxsZ2VtZWluOlR5cmFubl0gd29sbHRlIHNjaG9uIGltbWVyIG1hbCBkZW4gaGVpbGlnZW4gaGFtbWVyIGVpbmhhZW5kaWcKW0FsbGdlbWVpbjpUeXJhbm5dIG1hY2hlbiA8MDQ6MjY6MjE+CltBbGxnZW1laW46VGVkZHldIGRhcyB3aXJkIGludGVyZXNzYW50IDwwNDoyNjozOT4KW0FsbGdlbWVpbjpUZWRkeV0gRGVyIGJsZWlidCBldnRsLiBkYW5uIGRpZSBnZXNhbXRlIFVwdGltZSBlaW5oYWVuZGlnIDspCltBbGxnZW1laW46VGVkZHldIDwwNDoyNjo0OT4KIFtBbGxnZW1laW46VGVkZHldIE5lbiBjaGFvdCwgZGVyIG5lbiBoZWlsaWdlbiBoYW1tZXIgaGFiZW4gd2lsbCwgcGZ1aQpbQWxsZ2VtZWluOlRlZGR5XSA8MDQ6Mjc6NTQ+CltBbGxnZW1laW46VHlyYW5uIGlzIGRvY2ggbnVyIG5lbiB6d2VpdGllIC4uLiA7KSA8MDQ6Mjg6NDg+XQpbQWxsZ2VtZWluOlR5cmFubl0gb2ggLi4uIGVyIG1hY2h0IGRpZSB3YWZmZSBsZWljaHRlcj8gZGFzIHNoaXQgLi4uIDwwNDozMDoxMD4KW0FsbGdlbWVpbjpUZWRkeSBncmluc3QgZ2VoYWVzc2lnIDwwNDozMDoyMj5dCltBbGxnZW1laW46VHlyYW5uXSBBUkdIISEhISA8MDQ6MzE6MzE+CltBbGxnZW1laW46VHlyYW5uXSBkZXIgd2llZ3QgamV0enQgamEgbnVybm9jaCA3LDUga2cgOigoKCgoIDwwNDozMTo0Nz4KW0FsbGdlbWVpbjpUZWRkeV0gV2llIHdhciBkYXMgbWl0IGdlc2FtdGUgVXB0aW1lPyA8MDQ6MzI6MTE+CltBbGxnZW1laW46VHlyYW5uXSBNSVNUIEVMRU5ERVIhISEgPDA0OjMyOjIxPgpbQWxsZ2VtZWluOlRlZGR5IHNpZWh0IHNjaG9uIFNjaGFyZW4gdm9uIEtsZXJpa2VybiBhdWYgZGVyIEphZ2QgbmFjaCBUeXJhbm4KICAgICAgICAgICA7LSkgPDA0OjMyOjMwPl0KW0FsbGdlbWVpbjpUZWRkeV0gV2VubiBkYXMgd2lya2xpY2ggYmxlaWJ0IHdhZXIgZGFzIG5lIG1ldGhvZGUsIGRpZXNlCltBbGxnZW1laW46VGVkZHldIEJldGZ1enppcyBlbmRsaWNoIG1hbCB6dSBhZXJnZXJuIDstKSA8MDQ6MzI6NTY+CltBbGxnZW1laW46VHlyYW5uIHN0ZWxsdCBzaWNoIHNjaG9ubWFsIHZvcnNpY2h0c2hhbGJlciBhdWZzIHNjaGxhY2h0ZmVsZCAuLi4KICAgICAgICAgICA7KSA8MDQ6MzI6NTg+XQpbQWxsZ2VtZWluOlR5cmFubl0gbWlzdCwgbWlzdCwgbWlzdCA8MDQ6MzM6MzQ+CltBbGxnZW1laW46Wm9ycm9dIGhtbSBkYWZ1ZXIgZGFzIGRlbiBkb29mZW4gdHJvcGZlbiBzZWlkIG5lciB3b2NoZSBrZWluZXIKW0FsbGdlbWVpbjpab3Jyb10gaGFiZW4gd29sbHRlIDwwNDozNTowND4KW0FsbGdlbWVpbjpUYW5pc10gQVJHTCwgMSBzdHVmZSBzY2hsZWNodGVyIGltIGFuZ3JpZmYgOiggPDA0OjQwOjI5PgpbQWxsZ2VtZWluOlRlZGR5XSBHcmF0cyA8MDQ6NDA6MzU+CltBbGxnZW1laW46VGVkZHkgcGFzdGV0IHNjaG9ubWFsIGZ1ZXIgZGllIE1QQSB6dXNhbW1lbiA8MDQ6NDA6NDk+XQoKRGFzIGhhYiBpY2ggZGVubiBhdWNoIHNvIHVuZ2VmYWVociBnZXRhbiwgdmllbCBTcGFzcyBkYW1pdC4gOy0pCgpUZWRkeSwgcm90ZmxuZAoKUC5TLjogSWNoIHNjaGxhZ2UgZnVlciBab3JybyBuZSBjaGFvdGlzY2hlIEF1c3plaWNobnVuZyB2b3IsIHNvIGd1dCB3dXJkZSBub2NoCm5pZSBlaW4gQmx1dHN0cm9wZmVuIGludmVzdGllcnQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyg/KSAoTGV2LCAgMy4gT2t0IDE5OTgsIDE2OjQ0OjMwKToKCls8TWFzdGVSPjpHb29meSBsYWVzc3QgZGllIEViZW5lICdkcmVzZGVuJyBlbnRzdGVoZW4uXQpbVG9kOkxhcnNdIEVpbiBXYXNzZXJ1bndlc2VuIGhhdCBnZXJhZGUgR29vZnkgdW1nZWJyYWNodC4KCgpMZXYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaGVpbGlnZSBTY2guLi4gOykgKE1haGF0bXUsICAzLiBPa3QgMTk5OCwgMTk6MDc6MjMpOgp+IyEgcm49VGVkZHkgcnQ9OTA3MzgzNjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA3MzgzNjAzClN0ZWNrdCBkZW4gbWFsIGJpdHRlIGVpbmVyIGluIGRlbiBNdWVsbHNhY2sgOy0pID8KCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIb2JiaXRzLi4uIChMaWxsZWJyb3IsICA0LiBPa3QgMTk5OCwgMDA6NDY6MTgpOgpbQWJlbnRldWVyOkx5cmF4aW5hXSBrYW5uIG1pciBqZW1hbmQgc2FnZW4gd2llIGRpZSB2aWVydGUgcmFzc2UgaW4KW0FiZW50ZXVlcjpMeXJheGluYV0gb3JraGF1c2VuIGhlaXNzdD8gdHJvbGxlIG9ya3MgZ29ibGlucyB1bmQuLi4/CltBYmVudGV1ZXI6QmFyZF0gaG9iYml0cz8KW0FiZW50ZXVlcjpNVFZdIGhvYmJpdHM/Pz8KKnNjaG5pcHAqCltBYmVudGV1ZXI6TGlsbGVicm9yXSBrbGVpbmUsIGJsb2VkZSBwZWx6dmllY2hlciA7KQpbQWJlbnRldWVyOlRhbmlzXSBndXQgdW1zY2hyaWViZW4gOykKW0FiZW50ZXVlcjpMeXJheGluYV0gYmluIGljaCBkb29mISBkYW5rZSEgKmdyaW5zCltBYmVudGV1ZXI6TVRWXSB2aWVsZnJlc3NlciBoYXN0IGR1IHZlcmdlc3NlbiA7KQoKLT5maW5nZXIgbHlyYXhpbmE6Ckx5cmF4aW5hIGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBDT00uCkVpbmdlbG9nZ3Qgc2VpdDogU2FtLCAxOS4gU2VwIDE5OTgsIDExOjQ0OjI5ClZvbGxlciBOYW1lOiBMeXJheGluYSBkaWUgTGFuZHN0cmVpY2hlcmluClJhc3NlOiBIb2JiaXQsICBHaWxkZTogQWJlbnRldXJlciwgIEdlc2NobGVjaHQ6IHdlaWJsaWNoCkFsdGVyOiAxZCAyMTozMDo1OCwgICBTcGllbGVybGV2ZWw6IDIsICAgR2lsZGVubGV2ZWw6IDIKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogRG9uLCAgOS4gQXByIDE5OTgsIDIyOjE5OjIxCgouLi4gc2VsYnN0ZXJrZW5udG5pcyB3YXIgZGFzIHdvaGwuLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRVAtVmVybHVzdCBiZWltIFRvZCBiZWdyZW56ZW4gKEFuYXRvbCwgIDQuIE9rdCAxOTk4LCAxOTo1MDoyOCk6Cn4jISBvbj1BbmF0b2wgb3Q9OTA3NTIzNDI0IG9nPXNlaGVyLmVudHdpY2tsdW5nCn4jISBybj1QYXRyeW4gcnQ9OTA3NTIzMjA5IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9OTA3NTExMzExCkFycm9nYW56IHZlcmJlcmdlbj8gVHNjaHVsZGlnZSBtYWwuCgpBYmVyIG1hbCBnYW56IGltIFZlcnRyYXVlbiB1bmQgdW50ZXIgdW5zOiBGaW5kZXQgRHUgZXMgbmljaHQgYXVjaCB3aXR6aWcsCndlbm4gInVuc2VyZSIgVG9wbGlzdGVuZnVlaHJlciBhbmdlcmFkZWx0IGtvbW1lbiB1bmQgdWViZXIgaWhyZSBFUC0KVmVybHVzdGUgYmVpbSB1bmZyZWl3aWxsaWdlbiBFbnRsZWliZW4gamFtbWVybj8gW3Bhc3NlbmRlcyBsYXRlaW5pc2NoZXMKWml0YXQgc2VsYnN0c3RhZW5kaWcgZWluZnVlZ2VuXS4KCkFuYXRvbCAtIHZlcmxlZ3QgaW4gc2VsYnN0IG5hY2ggInNjaG1hcnJuIi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEVQLVZlcmx1c3QgYmVpbSBUb2QgYmVncmVuemVuIChQYXRyeW4sICA0LiBPa3QgMTk5OCwgMTk6NTQ6MjApOgp+IyEgcm49QW5hdG9sIHJ0PTkwNzUyMzQyOCByZz1zY2htYXJybgp+IyEgdGlkPTkwNzUxMTMxMQpoZXkuLi5pY2ggc3RpbW1lIGRpciBqYSBpbnNvZmVybiB6dSwgZGFzcyBlcyBzaWNoIHdhaHJzY2hlaW5saWNoIG51ciB1bQpuZW4gcG9zdC10b2QgZnJ1c3RhcnRpa2VsIGhhbmRlbHRlOiBpY2ggYmluIGVpZ2VudGxpY2ggc29nYXIgZGFmdWVyLApkYXNzIHRvZGUgaGFlcnRlciBiZXN0cmFmdCB3ZXJkZW4uIGFiZXIgZGVubm9jaCBtdXNzIG1hbiBuaWNoIGFsbGUKYXVmZ2V3b3JmZW5lbiB0aGVtZW4sIGRpZSBlaW5lbSBuaWNodCB6dXNhZ2VuLCBpbnMgbGFlY2hlcmxpY2hlIHppZWhlbgp3b2xsZW4uIGVpbiBlaW5mYWNoZXM6ICduZWluLCB0b2RlIHNvbGx0ZW4gd2VpdGVyaGluIGJlc3RyYWZ0IHdlcmRlbicsCmhhZXR0ZSBlcyB6dW1pbmRlc3QgYXVjaCBnZXRhbi4KCi0tLS0tLQpwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlZyBuYWNoIFRhcmFtaXMgKFNpcm9uYSwgIDUuIE9rdCAxOTk4LCAxMDoxMDoxNik6CmdyYWQgZWJlbiBpbiBkZXIgc2VxdWVueiBzb2xsdGUgbm9jaCBnZWFlbmRlcnQgd2VyZGVuOgoKRGVyIFRhZyBhbiBkZW0gZHUgU2VoZXJpbiB3dXJkZXN0LiBXYXMgZnVlciBlaW4gZ2xvcnJlaWNoZXIgVGFnIQoKKndpZXNvIGthbm4gaWNoIGtlaW5lIHBvcnRhbGUgYmVudWV0emVuPyA6LSkgKgotIHNpcm9uYSAtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS29ib2xkZSBhYndlcnRlbiA7KSAoS2V5LCAgNS4gT2t0IDE5OTgsIDEwOjIwOjI3KToKfiMhIHJuPU5lYiBydD05MDcxOTQ4MDAgcmc9c2NobWFycm4KfiMhIHRpZD05MDcxOTQ4MDAKVGphIG5ldG1hbCBEZWluZSBGcmV1bmRlIGhvZXJlbiBEaXIgenUgLi4uCgpUeXBpc2NoIEtsZXJpa2VyIDopCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLmVoZSB6aWVtbGljaCBzY2hsZWNodD8gOikgKE5hY2h0d2luZCwgIDUuIE9rdCAxOTk4LCAxMjoxMjo0MSk6CltTZWhlcjpUdU5peEd1dF0gTWFjaCBtYWwgZWluYSBkaWUgSHlkcmEsIGljaCBzdApbVG9kOkxhcnNdIEVpbiBIeWRyYWtvcGYgaGF0IGdlcmFkZSBUdW5peGd1dCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBIeWRyYWtvcGZdIGhzc3Nzc3MKW1NlaGVyOlByYV0gZmx3Li4uCltCZWlsZWlkOkl2b10gZmx3CgpkYXMgd2FyIGRvY2ggbWFsIGVpbiBndXRlciA6KQpudy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMzNDUzNCAoS2V5LCAgNS4gT2t0IDE5OTgsIDE1OjAxOjI2KToKCkljaCB3YXIgZGFzIG5pY2h0IDspCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvbGxlIEdpbGRlPz8/IChMZXYsICA1LiBPa3QgMTk5OCwgMTg6Mjc6NDYpOgoKCnVuZ2VzY2huaXR0ZW46CgpbS2xlcnVzOkxlbWJvbGRdIEJydWRlciBQbG90aW4gaGF0IGRlbSBIZWlsaWdlbiBPcmRlbiBkZW4gUnVlY2tlbiBnZWtlaHJ0LiBXaXIKW0tsZXJ1czpMZW1ib2xkXSBiZWRhdWVybiBkYXMgc2Vociwgd3VlbnNjaGVuIGlobSBhdWYgZGVtIHdlaXRlcmVuIFdlZyBqZWRvY2gKW0tsZXJ1czpMZW1ib2xkXSBhbGxlcyBHdXRlLgpNb3Jnb3RoICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKCgplaW4gcGFhciBtaW51dGVuIHNwYWV0ZXI6CgpbQ2hhb3M6S3J1dW9scV0gUGxvdGluIGthZW1wZnQgbnVuIG1pdCB1bnMgenVzYW1tZW4gYXVmIGRlciBkdW5rbGVuIFNlaXRlIGRlcgpbQ2hhb3M6S3J1dW9scV0gTWFjaHQhIEVpbmUgd2Vpc2UgRW50c2NoZWlkdW5nLiBHcmF0dWxhdGlvbiEKCgoKTGV2IGRlbmt0IC4gbyBPIChLTGVydXMgbXVzcyBqYSBlaW5lIHRvbGxlIEdpbGRlIHNlaW4uLi4gOykpKSkpKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTW9yZ290aCwgIDUuIE9rdCAxOTk4LCAxOTo1NDozOSk6CltTZWhlcjpTdGluZ10gc2NoZWlzcyBuYXpndWxzCltTZWhlcjpOb3Zhc3Rvcm1dIHNjaGVpc3MgbXVkIDspCltUb2Q6TGFyc10gRWluIE5la3JvbWFudCBoYXQgZ2VyYWRlIFN0aW5nIHVtZ2VicmFjaHQuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoU3RpbmcsICA1LiBPa3QgMTk5OCwgMjA6MDI6NDkpOgp+IyEgcm49TW9yZ290aCBydD05MDc2MTAwNzkgcmc9c2NobWFycm4KfiMhIHRpZD05MDc2MTAwNzkKSGllciBlaW4gR1VURVIgUmF0IGZ1ZXIgYWxsZSBTcGllbGVyIDopClNlaWQgTklFTUFMUyBzbyBmYXVsIGluIGdlZmFlaHJsaWNoZW4gR2ViaWV0ZW4gaW4gZGVuZW4gaWhyIHNjaG9uIGxhbmdlIG5pY2h0Cm1laHIgd2FydCBvaG5lIEthcnRlIGhpbnp1Z2VoZW4gOikKCgpTdGluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOiggKEppZGR1LCAgNS4gT2t0IDE5OTgsIDIxOjA4OjI4KToKSGV4bGUgc2FndDogYWxzbyBzb2xsbWVyIGRhIHJ1bnRlcj8/PwpIZXhsZSBzYWd0OiBpY2ggZ2VoIGRhIGV0eiBlaW5mYWNoIG1hbCBoaW4gZ2xhdWIgaWNoLi4uLnppdHRlcgpEdSBzYWdzdDogbGFkaWVzIGZpcnN0LiBtdWVzc2VuIGphIG5lZCBiZWlkZSBzdGVyYmVuCkR1IGdyaW5zdCBmaWVzLgpIZXhsZSBzYWd0OiBib2FhYWFhYWguLi4uZGFzIG1lcmsgaWNoIG1pciA7KQpIZXhsZSBkcnVlY2t0IGF1ZiBlaW5lbiBLbm9wZi4KSGV4bGUgdmVyc2Nod2luZGV0IG1pdCBLbmFsbCB1bmQgU2Nod2VmZWxkdWZ0LgpbVG9kOkxhcnNdIEVpbiBCYWxyb2cgaGF0IGdlcmFkZSBIZXhsZSB1bWdlYnJhY2h0LgoKSmlkZHUgZnVlaGx0IHNpY2ggdW5lbmRsaWNoIHNjaHVsZGlnIDooCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogOiggKEppZGR1LCAgNS4gT2t0IDE5OTgsIDIxOjI1OjMzKToKfiMhIHJuPUppZGR1IHJ0PTkwNzYxNDUwOCByZz1zY2htYXJybgp+IyEgdGlkPTkwNzYxNDUwOApJY2ggYmluIHVlYnJpZ2VucyBzZWxic3QtZXJuYW5udC11bnNjaHVsZGlnLi4gOykKSWhyZSBRdWVsbGVuIG1laW50ZW4gZGEgZ2VodHMgbGFuZyA7KQoKSmlkZHUgZnJhZ3Qgc2ljaCBvYiBkZXIgU2F0eiAnSGV4bGUgc2FndDogYm9hYWFhYWFoLi4uLmRhcyBtZXJrIGljaCBtaXIgOyknCmVybnN0IGdlbWVpbnQgd2FyIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpad2VyZ2UgOikgKEppZGR1LCAgNS4gT2t0IDE5OTgsIDIxOjUwOjI4KToKTGlhcmEgdGVpbHQgRGlyIG1pdDogYXZvY2Fkb2JhdW0gKmZyZXVmcmV1KgpMaWFyYSB0ZWlsdCBEaXIgbWl0OiBzaWUgd2FjaHNlbiB6dSBob2NoICpncnVtbWVsZnJpbnMqCkxpYXJhIHRlaWx0IERpciBtaXQ6IGhtbSBkaWUga29rb3NudXNzIGlzdCBhdWNoIHp1IGhvY2ggKmdydWViZWxncmlucyoKClJhc3NlOiAtPlpXRVJHPC0sIEdpbGRlOiBCaWVyc2NodWV0dGxlciwgR2VzY2hsZWNodDogd2VpYmxpY2gKCkppZGR1LCBvaG5lIFdvcnRlIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2huZWxsZXIgYWxzIHNlaW4uLi4gZWdhbCA7KSAoTm92YXN0b3JtLCAgNi4gT2t0IDE5OTgsIDE0OjI2OjU0KToKS2V5IGtvbW10IGFuLgpLZXkgZ2VodCBuYWNoIFN1ZWRvc3Rlbi4KS2V5IGtvbW10IGFuLgpLZXkgZ2VodCBuYWNoIE5vcmRvc3Rlbi4KS2V5ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgogICBOb3ZhLCBncnVlYmVsbmQgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdWNodGllcyAuKSAoTm92YXN0b3JtLCAgNi4gT2t0IDE5OTgsIDE0OjQ3OjA0KToKRGVpbiBGcmV1bmQgTWFoYXRtYSB0ZWlsdCBEaXIgbWl0OiB1bmQgd2VjaC4uLiBlaCBpY2hzIG5vY2ggYmVyZXVlCk1haGF0bWEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpNYWhhdG1hICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRlaW4gRnJldW5kIE1haGF0bWEgdGVpbHQgRGlyIG1pdDogaWNoIGJpbiBibG9lZCA6KQoKICAgTm92YSwga2ljaGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1HIGlzdCBzdGVyYmxpY2ggKEFjcmltb24sICA2LiBPa3QgMTk5OCwgMTU6NDU6NDMpOgp1bmdlc2Nobml0dGVuOgoKW1RydmVzOk5vdmFzdG9ybV0gTmFjaHQgVHJ2ZXMKW1RydmVzOlJvY2h1c10gbmFjaHQsIHN0ZXJibGljaGUKW1RydmVzOk5vdmFzdG9ybSBrbnVycnQgYW11ZXNpZXJ0Ll0KW1RydmVzOkFuYWNyaW9uXSBiaXN0IGR1IGdvdHQgPwpbVHJ2ZXM6VGFyaW5hXSBoYXQgZXIgZGFzIGdlc2FndD8KW1RydmVzOlNpcm9uYV0gd2VyIGhhdCBnZXNhZ3QgZGFzIGdvdHQgdW5zdGVyYmxpY2ggaXMgPwpbVHJ2ZXM6TmFjaHR3aW5kIGlzdCBuaWNodCBzdGVyYmxpY2guIFVuZCBoYXN0IGRhcyBzY2hvbiA4NyBtYWwgYmV3aWVzZW4uXQpbVHJ2ZXM6Um9jaHVzXSBsZWlkZXIgbmljaHQgaW4gUkwuLi4uIG9kZXIgYmVzc2VyIGdlc2FndCwgZ2x1ZWNrbGljaGVyd2Vpc2UgOikKWzxNYXN0ZVI+OlRhbWVsaV0gbApbPE1hc3RlUj46PE1hc3RlUj5dIDEzLjk5IGNtZHMvcywgMTEwLjA2IGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogNi45JS82MCwgNy4yJS8xNSwgMTYuMSUvMQpbVHJ2ZXM6QW5hY3Jpb25dIGFiZXIgd2VubiBnb3R0IG5pY2h0IHVuc3RlcmJsaWNoIGlzdCAuLi4uIHdlciBpc3QgREFOTgpbVHJ2ZXM6QW5hY3Jpb25dIHN0ZXJibGljaCA/IDopCltUcnZlczpBbmFjcmlvbl0gYWVoLiB1bnN0ZXJibGljaApDb25uZWN0aW9uIGNsb3NlZCBieSByZW1vdGUgaG9zdC4KClRqYS4KV2VubiBHb3R0IHN0ZXJibGljaCB3YWVyZSwgZGFubiBsZWJ0IGF1Y2ggZGFzIE1HIG5pY2h0IG1laHIhCgo6LSkKCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdXBzIChCaXJkeSwgIDYuIE9rdCAxOTk4LCAxOTowODo1Myk6Cj4gcmtudWRkZWwgcGF0cnluCkR1IGtudWRkZWxzdCBQYXRyeW4gYXVzIGRlciBGZXJuZS4KPiBFaW4gZW50c2V0emxpY2hlciBTY2hyZWkgaGFsbHQgdm9tIEZyaWVkaG9mIGhlcnVlYmVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJhZ2VyZWkgKEFuYWNyaW9uLCAgNi4gT2t0IDE5OTgsIDIzOjExOjI0KToKCkR1IGFudHdvcnRlc3Q6IGZ1ZXIgZGllIGVpZ2Vuc2NoYWZ0ZW4gdW5kIGhlaWx1bmcgdW5kIHN0dWZlbnB1bmt0ZQo+IFZhZXRlcmNoZW4gWmVpdCBzYWd0OiBNaXQgZGllc2VyIEFudHdvcnQgYmluIGljaCBuaWNodCB6dWZyaWVkZW4uCkR1IGFudHdvcnRlc3Q6IHp1ciBlcmhvZWh1bmcgZGVyIHN0YXRzCj4gVmFldGVyY2hlbiBaZWl0IHNhZ3Q6IFN0aW1tdC4gRHUga2FubnN0IGRhbWl0IGRlaW5lIEF0dHJpYnV0ZSBlcmhvZWhlbi4KWwoqYXJnbCogcGZmZiA6KCgKCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdXBwcywgZmFzdCB2ZXJnZXNzZW4gKE1vcmdvdGgsICA2LiBPa3QgMTk5OCwgMjM6MjQ6MzcpOgpMb2dmaWxlIHZvbiBLbnVydHMgTWluaS1QYXJ0eToKCktudXJ0OiBTY2h3dXBwcywgZGFubiBpc3NlciBkcmluLgpLbnVydDogSWNoIG1hY2ggZGFzIGltbWVyIG1pdCBkZW0gRnVzcy4KS251cnQ6IERhbm4gZmFlaHJ0IGVyIHJpY2h0aWcgaG9jaC4KCktudXJ0KDMpOiBJY2ggYnJhdWNoIG51ciBlaW4gU3RhbmRnZWJsYWVzZSB2b24gMSBNZXRlciA2MCBtaXQgZGlja2VuIFRpdHRlbi4KCkhtLCBpcmdlbmR3aWUgaGF0IEtudXJ0aSBkYSBzY2hsZWNodCBhYmdlc2Nobml0dGVuIDstKSkKCk0qICguLmRlciBQYXBhKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEh1cHBzLCBmYXN0IHZlcmdlc3NlbiAoVGVkZHksICA2LiBPa3QgMTk5OCwgMjM6MjU6NTEpOgp+IyEgcm49TW9yZ290aCBydD05MDc3MDkwNzcgcmc9c2NobWFycm4KfiMhIHRpZD05MDc3MDkwNzcKQmVpIGRlciBBdXNzYWdlIG1pdCBkZW0gU3RhbmRnZWJsYWVzZSB3YXIgZXIgbmNpaHRtYWwgYmVzb2ZmZW4sIGRhIHdhciBpY2gKc29nYXIgbm9jaCBkYS4KClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZWxpZ2lvbiAoTm92YXN0b3JtLCAgNy4gT2t0IDE5OTgsIDEzOjU0OjA1KToKCltNb2VyZGVyOkdlaXN0IGVpbmVzIERyYWtvbmllcndhZWNodGVyc10gUmV0dGV0IGRlbiBUZW1wZWwgdm9yIE5vbm5lIQoKQWhqYSwgc28gd2lyZCBpbSBNZyBhbHNvIGRlciBHbGF1YmVuIHZlcmJyZWl0ZXQgOy0pCiAKICAgTm92YSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoUmluZ29yLCAgNy4gT2t0IDE5OTgsIDEzOjU2OjIwKToKUXVpY2sgdGVpbHQgRGlyIG1pdDogZGFzIG1hY2h0IHJpY2h0aWcgc3Bhc3MsIGluIGRlciBncnVtbWVsYmVpc3NlcmhvZWhsZQpRdWljayB0ZWlsdCBEaXIgbWl0OiBmYWxzY2ggZmxpZWhlbiA6KQoKW1p3ZWkgTWludXRlbiBzcGFldGVyXQpbVG9kOkxhcnNdIEVpbiBzY2h3YXJ6ZXIgUHJpZXN0ZXIgZGVyIEdydW1tZWxiZWlzc2VyIGhhdCBnZXJhZGUgUXVpY2sKW1RvZDpMYXJzXSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBzY2h3YXJ6ZXIgUHJpZXN0ZXIgZGVyIEdydW1tZWxiZWlzc2VyXSBHcnVtbWVsIHVuc2VyIGltCltUb2Q6RWluIHNjaHdhcnplciBQcmllc3RlciBkZXIgR3J1bW1lbGJlaXNzZXJdIEdydW1tZWxoaW1tZWwsIGdlZ3J1bW1lbHQgc2VpCltUb2Q6RWluIHNjaHdhcnplciBQcmllc3RlciBkZXIgR3J1bW1lbGJlaXNzZXJdIERlaW4gR3J1bW1lbG4sIERlaW4gR3J1bW1lbG4KW1RvZDpFaW4gc2Nod2FyemVyIFByaWVzdGVyIGRlciBHcnVtbWVsYmVpc3Nlcl0gZ3J1bW1lbHQsIERlaW4gR3J1bW1lbApbVG9kOkVpbiBzY2h3YXJ6ZXIgUHJpZXN0ZXIgZGVyIEdydW1tZWxiZWlzc2VyXSBnZXNjaGVoZSwgd2llIGltIEdydW1tZWxoaW1tZWwKW1RvZDpFaW4gc2Nod2FyemVyIFByaWVzdGVyIGRlciBHcnVtbWVsYmVpc3Nlcl0gc28gdW50ZXIgZGVyIEdydW1tZWxlcmRlCgpSaW5nb3IgdWViZXJsZWd0IHNpY2ggbm9jaCwgb2IgZXIgZGFzIGF1Y2ggbWFsIHByb2JpZXJlbiBzb2xsdGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2htYXJybiAoU2lyb25hLCAgNy4gT2t0IDE5OTgsIDE2OjA3OjQwKToKTWlycm9yIHRlaWx0IERpciBtaXQ6IGhtbSBpY2ggZ2xhdWJzIGljaCBraWxsIGRpY2ggbWFsIHNvIHNjaG5lbGwuLiBhbHMgUEssCk1pcnJvciB0ZWlsdCBEaXIgbWl0OiBndXRlIGlkZWU/IG9kZXIgbmVpbiBiZXNzZXIgaWNoIGtpbGwgU3RpbmcgKmdyaW5zKgpEdSB0ZWlsc3QgTWlycm9yIG1pdDogaG0gd2FzIGdpYnN0IGR1IG1pciBkYXMgaWNoIGRhcyBuaWNodCBpbiBkaWUgbXBhIHBvc3RlID8KRHUgdGVpbHN0IE1pcnJvciBtaXQ6IDoiLSlfCk1pcnJvciB0ZWlsdCBEaXIgbWl0OiBpY2ggbGFzcyBkaWNoIGxlYmVuIHVuZCBnZWhlIGRpcmVrdCB6dSBzdGluZyAqZ3JpbnMqCkR1IHRlaWxzdCBNaXJyb3IgbWl0OiBobSBtcGEgPwpNaXJyb3IgdGVpbHQgRGlyIG1pdDogaG1tIGFyZW5hPyA6KQpNaXJyb3IgdGVpbHQgRGlyIG1pdDogaWNoIGhhYmUgZGllIHdhaGwgZGVyIHdhZmZlbiA6KQoKc3RpbmcgPyA6LSkgLXNpcm9uYS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQWxpbmUsICA3LiBPa3QgMTk5OCwgMTY6Mjk6MjEpOgoKW0JlaWxlaWQ6QmlyZHldIGFyZ2wgISEgc2NoZWlzcyBkdW5rZWxlbGZlbiwgaGFicyBncmFkIHNvIHVlYmVybGVidCA8MTY6Mjc6MDU+CltCZWlsZWlkOkJpcmR5XSBiZWlsZWlkIGxhbWFyaW9uIDwxNjoyNzoxMz4KCltUb2Q6TGFyc10gRWluIFdhZWNodGVyIGhhdCBnZXJhZGUgQmlyZHkgdW1nZWJyYWNodC4gPDE2OjI3OjU4PgoKQWxpbmUgOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtbW0uLi4uIChMZXYsICA3LiBPa3QgMTk5OCwgMTg6NTA6NTgpOgoKW1RvZDpMYXJzXSBFaW4gT3JrIGhhdCBnZXJhZGUgTmFpcm9sZiB1bWdlYnJhY2h0LgpOYWlyb2xmICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgoKTGV2LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNpdHRlbnZlcmZhbGwsIG9kZXIgd2FzPyAoQXRveiwgIDcuIE9rdCAxOTk4LCAyMjoxNzozNCk6CkNhbGltZXJhIHNhZ3Q6IGJpbiBpbiBlaWxlCgpzZWt1bmRlbiBzcGFldGVyLi4uLgoKPiBDYWxpbWVyYSBzYWd0OiBwYWRyZWljIDopIGJpbiBiZXJlaXQgOykKCkZyYWd0IHNpY2ggbnVyIHdvZnVlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIbW1tLi4uLiAoTW9yZ290aCwgIDcuIE9rdCAxOTk4LCAyMjozNjoyOSk6Cn4jISBybj1MZXYgcnQ9OTA3Nzc5MDU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA3Nzc5MDU4Ckxhc3MgbWljaCByYXRlbiBvaG5lIGRlbiBUaHJlYWQgYmlzIHp1bSBFbmRlIHp1IGxlc2VuLgpCZWltIFBvcnRhbCB2ZXJ0aXBwdCwgZWluZ2VwZW5udCB1bmQgLi4uLiBQZWNoIGdlaGFidCA7LSkpCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhqYSEgKE1pbmRibGFkZSwgIDcuIE9rdCAxOTk4LCAyMjo1MDowOSk6CgpEZXIgV2FuZGxlciB3YWJlcnQgYXVmIGRpZSBUb2lsZXR0ZS4KCk5hLCB3ZW5pZ3N0ZW5zIG11c3MgZGVyIGF1Y2ggbWFsLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhqYSAoSGFuZ292ZXIsICA4LiBPa3QgMTk5OCwgMDA6Mjk6MzIpOgpEZWluIEZyZXVuZCBUZWRkeSB0ZWlsdCBEaXIgbWl0OiBTbywgaWNoIGZhaHIgenVyIFVuaSwgYmlzIG5hY2hoZXIKRGVpbiBGcmV1bmQgVGVkZHkga251ZGRlbHQgRGljaCB6dW0gQWJzY2hpZWQgYXVzIGRlciBGZXJuZS4gWzAwOjI4XQoKVW0gZGllc2UgWmVpdD8gTWVpbmUgR3VldGUsIG11c3MgZGVyIHN0cmVic2FtIHNlaW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBaGphIChGZXVlcndlaHIsICA4LiBPa3QgMTk5OCwgMDA6MzA6NTApOgp+IyEgcm49SGFuZ292ZXIgcnQ9OTA3Nzk5MzcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA3Nzk5MzcyCgpEZWluIEZyZXVuZCBUZWRkeSBrbnVkZGVsdCBEaWNoIHp1bSBBYnNjaGllZCBhdXMgZGVyIEZlcm5lLgpEdSB0ZWlsc3QgVGVkZHkgbWl0OiBzYWNoIG1hbApEdSB0ZWlsc3QgVGVkZHkgbWl0OiB3YXMgbWFjaHN0IGR1IHVtIGhhbGIgMSBpbm5lciB1bmk/Cj4gVGVkZHkgdGVpbHQgRGlyIG1pdDogbXVkZGVuCgoqbG9sKgoKICAgIEZldWVyd2Voci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW0gU0wgKFRlZGR5LCAgOC4gT2t0IDE5OTgsIDA4OjQ4OjAyKToKW0FsbGdlbWVpbjpLbnVydF0gaWNoIGdlaCBkYW5uIG1hbCBpbnMgYmV0dGNoZW4uIGJhYmEgPDA4OjQ1OjM2PiAgICAgCgpUZWRkeSwgYXVjaCBiYWJhIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCBpbSBTTCAoTW9yZ290aCwgIDguIE9rdCAxOTk4LCAwODo0ODo1NSk6Cn4jISBybj1UZWRkeSBydD05MDc4MjkyODIgcmc9c2NobWFycm4KfiMhIHRpZD05MDc4MjkyODIKS2FubnN0IGR1IGpldHp0IG5vY2ggZGllIHBvaW50ZSB2ZXJyYXRlbj8KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWxpY2ggaW0gU0wgKFRlZGR5LCAgOC4gT2t0IDE5OTgsIDA4OjUwOjEzKToKfiMhIHJuPU1vcmdvdGggcnQ9OTA3ODI5MzM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA3ODI5MjgyCk5vZSwgd2VyIHNpZSBuaWNodCBrYXBpdWVydCBoYXQgcGVjaCBnZWhhYnQsIEtudXJ0aSB2ZXJzdGVodCBzaWUgZ2FyYW50aWVydAp1bmQgaWNoIGVya2xhZXIgc293YXMgbmljaHRtZWhyLgoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTy1Ub24gR3JpbW1ib3JuIChHcmltbWJvcm4sICA4LiBPa3QgMTk5OCwgMTE6NTU6NTcpOgp+IyEgb249Qm9pbmcgb3Q9OTA3Njc3NDU1IG9nPXdpdHplCn4jISBybj1NYXJjdXMgcnQ9OTA3NjczNzgxIHJnPXdpdHplCn4jISB0aWQ9OTA3NjczNDgzCkRlciBBdXRvciBzdGFuZCBpbSBTdWJqZWN0IDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTy1Ub24gR3JpbW1ib3JuIChHcmltbWJvcm4sICA4LiBPa3QgMTk5OCwgMTE6NTc6MjgpOgp+IyEgb249R3JpbW1ib3JuIG90PTkwNzg0MDY0NCBvZz13aXR6ZQp+IyEgcm49TWFyY3VzIHJ0PTkwNzY3Mzc4MSByZz13aXR6ZQp+IyEgdGlkPTkwNzY3MzQ4MwpOYWphLCB3ZW5uIGRpZSBMZXV0ZSBuaWNodHMgQmVzc2VyZXMgenUgdHVuIGhhYmVuIGFscyBzaWNoIGRhcnVlYmVyIHp1CnVudGVyaGFsdGVuLCB3YXMgc2llIGFuaGFiZW4sIGRhIGZhZWxsdCBlaW5lbSBkb2NoIG5pY2h0cyBhbmRlcmVzIG1laHIgZWluLi4uCkF1c3NlcmRlbSBoYWJlIGljaCBnZWxvZ2VuLCBkaWUgVW50ZXJ3YWVzY2hlIHdhciBncnVlbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRHJvZ2VuIHZlcmdpZnRlbiBkaWUgTWVuc2NoaGVpdCAoR3JpbW1ib3JuLCAgOC4gT2t0IDE5OTgsIDE0OjAwOjI3KToKfiMhIG9uPUdyaW1tYm9ybiBvdD05MDc3OTQyMDcgb2c9ZGlza3Vzc2lvbgp+IyEgcm49V3VyemVsIHJ0PTkwNzY5MzM4MCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTA3NjEzMDMyCktlaW5lIEdlZmFociwgc29sYW5nZSBEdSBuaWNodCBpbmhhbGllcnN0IGlzdCBkYXMgYWxsZXMgbm9jaCBvay4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTUcgaXN0IHN0ZXJibGljaCAoWWVuZGksICA4LiBPa3QgMTk5OCwgMTU6Mzk6MDQpOgp+IyEgcm49QWNyaW1vbiBydD05MDc2ODE1NDMgcmc9c2NobWFycm4KfiMhIHRpZD05MDc2ODE1NDMKV2VubiBHb3R0IHN0ZXJibGljaCB3YWVyZSwgZGFubiBsZWJ0IGF1Y2ggZGFzIE1HIG5pY2h0IG1laHI/CgpLb2VubnRlc3QgRHUgZGllc2VuIFNhdHogYml0dGUgbWFsIGdyYW1tYXRpa2FsaXNjaCB1bmQgaW5oYWx0bGljaCBlcmxhZXV0ZXJuLApBY3JpbW9uPyBEYW5rZS4KCllUWQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTUcgaXN0IHN0ZXJibGljaCAoQWNyaW1vbiwgIDguIE9rdCAxOTk4LCAxNzozNToxMik6Cn4jISBybj1ZZW5kaSBydD05MDc4NTM5NDQgcmc9c2NobWFycm4KfiMhIHRpZD05MDc2ODE1NDMKR3JhbW1hdGlrYWxpc2NoIGlzdCBlciBrb3JyZWt0LCB1bmQgaW5oYWx0bGljaCBhdWNoLgpJbiBhbGxlbiBkcmVpIEJlZGV1dHVuZ2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTUcgaXN0IHN0ZXJibGljaCAoVHJhbmNlZmVhciwgIDguIE9rdCAxOTk4LCAyMDozNzoxMyk6Cn4jISBybj1BY3JpbW9uIHJ0PTkwNzg2MDkxMiByZz1zY2htYXJybgp+IyEgdGlkPTkwNzY4MTU0MwpNYW5jaG1hbCBoYWIgaWNoIGRhcyBHZWZ1ZWhsLCBBY3JpbW9uIGlzdCBlaW4gcmFmZmluaWVydCBnZXByb2dndGVzCktJLVNjcmlwdC4uLgoKdGYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2VuZiAoQW5hdG9sLCAgOC4gT2t0IDE5OTgsIDIxOjQyOjAzKToKfiMhIHJuPUx1ZyBydD05MDc4NzU2ODIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTkwNzc4MTE1NApUeXBvPyBIaWVzcyBkYXMgZXR3YSAiTHVnZHVkdW1tPyIgVW5kIHdvIHdhcmVuIGRhIGRpZSBMZWVyemVpY2hlbj8gOykKCkFuYXRvbCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEJvaW5nLVJlc2V0cyAoQW5hdG9sLCAgOC4gT2t0IDE5OTgsIDIxOjUwOjE3KToKfiMhIG9uPUFuYXRvbCBvdD05MDc4NzYyMDkgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUx1ZyBydD05MDc4NzYwODQgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05MDc4Mjg1NDkKRGVwcC4gRWluIHJpY2h0aWdlciBSRUZSRVNIX0JPSU5HLVJlc2V0IHF1YWVsdCBuaWNodC4gRXIgbGFlc3N0IERpciBkYXp1CmVpbmZhY2gga2VpbmUgWmVpdC4gV2VubiBEdSBqYW1tZXJuIHdpbGxzdCwgbGllc3QgRHUgZGFubiBudXIgbm9jaC4uLjoKCgoKRGVpbiBLb2VycGVyIGdlaG9yY2h0IERpciBuaWNodCEKCgpNaXQgU2VsYnN0a29udHJvbGxlIGVoIG5pY2h0IHZpZWwgYW0gSHV0IGhhYmVuZCA7KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChMdWcsICA4LiBPa3QgMTk5OCwgMjE6NTM6MzUpOgp+IyEgcm49UmluZ29yIHJ0PTkwNzc2MTM4MCByZz1zY2htYXJybgp+IyEgdGlkPTkwNzc2MTM4MAoKT2VoOwoKQm9pbmcgaXN0IGRhcyBEZWluIEtvbW1lbnRhciB6dXIgR290dGVzbGFlc3RlcnVuZ3NkZWJhdHRlPyA7KQoKS2lkS0cKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTZW5mIChMdWcsICA4LiBPa3QgMTk5OCwgMjE6NTU6NDUpOgp+IyEgcm49QW5hdG9sIHJ0PTkwNzg3NTcyMyByZz1zY2htYXJybgp+IyEgdGlkPTkwNzc4MTE1NAoKTmFqYSwKCndlaWwgRGVpbiB4LXRpZSBtZWluIERyaXR0ZWxzb2huIGlzdCwgd2lsbCBpY2ggZXMgRGlyIGVya2xhZXJlbi4KTHVnZHVudW0gPSBMdWcgKyBrZWx0aXNjaGVzIFdvcnQgZnVlciBiZWZlc3RpZ3RlIFNpZWRsdW5nIChpbiBkaWVzZW0gRmFsbCBlaW4KT3BwaWR1bSwgUHVyYWwgT3BwaWRhKS4KCkJyYXYKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBCb2luZy1SZXNldHMgKEx1ZywgIDguIE9rdCAxOTk4LCAyMTo1NjozOSk6Cn4jISBybj1BbmF0b2wgcnQ9OTA3ODc2MjE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA3ODI4NTQ5CgpEZXBwIGlzdCBlaW4gYmF5cmlzY2hlciBOYW1lLCBBbmF0b2wuIERhcyBrYW5uIGF1ZiBtaWNoIGVjaHQgbmljaHQgenV0cmVmZmVuLApkZW5uIGljaCBiaW4gd2VkZXIgdmVyd2FjaHNlbiwgbm9jaCBoYWIgaWNoIGVpbmVuIEtyb3BmIG9kZXIgZ2FyIGVpbiBDU1UKUGFydGVpYnVjaC4KCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQm9pbmctUmVzZXRzIChBbmF0b2wsICA4LiBPa3QgMTk5OCwgMjE6NTc6NTIpOgp+IyEgcm49THVnIHJ0PTkwNzg3NjU5OSByZz1zY2htYXJybgp+IyEgdGlkPTkwNzgyODU0OQpBY2gsIGdpYiBlcyBkb2NoIHp1LCBEdSB0cmFldW1zdCB2b24gZWluZW0gZ2VwZmxlZ3RlbiBTZWl0ZW5zY2hlaXRlbC4uLgoKQW5hdG9sLCBrZW5udCBMdWcKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQm9pbmctUmVzZXRzIChMdWcsICA4LiBPa3QgMTk5OCwgMjE6NTg6MjYpOgp+IyEgcm49QW5hdG9sIHJ0PTkwNzg3NjY3MiByZz1zY2htYXJybgp+IyEgdGlkPTkwNzgyODU0OQoKS2FubiBuaWNodCBzZWluLAoKZGVubiBkYWZ1ZXIgaGFiIGljaCBqYSBnYXIga2VpbmUgSGFhcmUgbWVociBhdWZmbSBLb3BwLgoKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogQm9pbmctUmVzZXRzIChUcmFuY2VmZWFyLCAgOC4gT2t0IDE5OTgsIDIxOjU5OjEyKToKfiMhIHJuPUx1ZyBydD05MDc4NzY3MDYgcmc9c2NobWFycm4KfiMhIHRpZD05MDc4Mjg1NDkKSGF0IGVyIHdhcyB2b24gS29wZiBnZXNjaHJpZWJlbj8KCnRmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogQm9pbmctUmVzZXRzIChBbmF0b2wsICA4LiBPa3QgMTk5OCwgMjE6NTk6MjMpOgp+IyEgcm49THVnIHJ0PTkwNzg3NjcwNiByZz1zY2htYXJybgp+IyEgdGlkPTkwNzgyODU0OQpEZXN3ZWdlbiBibGVpYnQgZXMgamEgYmVpbSBUcmFldW1lbiwgZ2VsbD8KCkFuYXRvbCwgS0VOTlQgTHVnIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogQm9pbmctUmVzZXRzIChMdWcsICA4LiBPa3QgMTk5OCwgMjI6MDA6MjgpOgp+IyEgcm49QW5hdG9sIHJ0PTkwNzg3Njc2MyByZz1zY2htYXJybgp+IyEgdGlkPTkwNzgyODU0OQoKCgpBbmF0b2w/CgpTZWl0IHdhbm4gaGFiZW4gc29sY2hlIERpbmdlciB1ZWJlcmhhdXB0IEhhYXJlPwoKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogQm9pbmctUmVzZXRzIChBbmF0b2wsICA4LiBPa3QgMTk5OCwgMjI6MDI6MTkpOgp+IyEgcm49THVnIHJ0PTkwNzg3NjgyOCByZz1zY2htYXJybgp+IyEgdGlkPTkwNzgyODU0OQpJY2ggd2Vpc3MgYXVjaCBuaWNodCwgd2FzIER1IGRhIGF1ZiBkZW0gSGFscyBoYXN0LgpJc3QgamEgbmljaHQgbWVpbiBQcm9ibGVtLgpFY2h0IG5pY2h0LgpTaWNoZXIuCkpvLgoKQS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogQm9pbmctUmVzZXRzIChMdWcsICA4LiBPa3QgMTk5OCwgMjI6MDU6NTApOgp+IyEgcm49QW5hdG9sIHJ0PTkwNzg3NjkzOSByZz1zY2htYXJybgp+IyEgdGlkPTkwNzgyODU0OQoKQWxzbyBuZWUsIG5hdHVlcmxpY2ggYmV6b2cgc2ljaCBkYXMgYXVmIGRhcyB2b24gZGVtIGljaCB0cmFldW0uCldpcmtsaWNoLgpOYWd1dC4KVGphLgoKTC4KCkFpZEtHCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogQm9pbmctUmVzZXRzIChBbmF0b2wsICA4LiBPa3QgMTk5OCwgMjI6MDk6MzApOgp+IyEgcm49THVnIHJ0PTkwNzg3NzE1MCByZz1zY2htYXJybgp+IyEgdGlkPTkwNzgyODU0OQpCaXN0IER1IHNvIHVuZmxleGliZWwsIHdlbm4gRHUgdHJhZXVtc3Q/IER1IGhhc3QgamEgZWNodGUgUHJvYmxlbWUuLi4genVyCk5vdCBrYW5uIG1hbiBhdWNoIG5lIFNjaG5hcHNmbGFzY2hlIHJhc2llcmVuLiBadW1pbmRlc3QgaW0gVHJhdW0uCgpBbmF0b2wuIFRyYXVtdGFlbnplcgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBCb2luZy1SZXNldHMgKEx1ZywgIDguIE9rdCAxOTk4LCAyMjoxMDowNCk6Cn4jISBybj1BbmF0b2wgcnQ9OTA3ODc3MzcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA3ODI4NTQ5CgpOYWd1dCBBbmF0b2wsCgpyYXNpZXJlbiBpc3QgbmF0dWVybGljaCBhdWNoIGRyaW4uLi4KCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IEJvaW5nLVJlc2V0cyAoQW5hdG9sLCAgOC4gT2t0IDE5OTgsIDIyOjEyOjM3KToKfiMhIHJuPUx1ZyBydD05MDc4Nzc0MDQgcmc9c2NobWFycm4KfiMhIHRpZD05MDc4Mjg1NDkKTmEgYml0dGUuCgpBY2ggamEsIGVoZSBpY2ggZXMgdmVyZ2Vzc2UuIERhcyBpc3QgbmljaHQgbWVpbiAieC10aWUiLiBJbW1lcmhpbiB3YXIgZGVyCmJlc3RpbW10IGtlaW5lIGVpbnppZ2UgTWludXRlIG1pdCBtaXIgZ2xlaWNoemVpdGlnIGVpbmdlbG9nZ3QuIFdpZSBoYWV0dGUKaWNoIGlobiBtYXJraWVyZW4gc29sbGVuPyBBdXNzZXJkZW0gd2VocmVuIHNpY2ggRXhlcnN0aWVzIGltbWVyIHNvIHNlaHIuCgpMaWRCRywKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2VyYWRlIGJlaSBkZW4gRHVua2VsZWxmZW4uLi4gKERhcmt3aW5nLCAgOS4gT2t0IDE5OTgsIDEwOjMyOjQyKToKRGllIFR1ZXIgZ3JlaWZ0IERpY2ggbWl0IGVpbmVtIFR1ZXJrbm9wZiBhbi4KRGEgYmlzdCBEdSB3b2hsIGdlcmFkZSBlaW5lciBGaW50ZSBhdWYgZGVuIExlaW0gZ2VnYW5nZW4gdW5kIGJla29tbXN0IERpY2ggbnVuCmtyYWVmdGlnIHp1IHNwdWVyZW4uCkRpZSB0dWVyIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KCmFhYWFhYWFhYWFhYWggamEgOi0pKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IEJvaW5nLVJlc2V0cyAoQm9pbmcsICA5LiBPa3QgMTk5OCwgMTE6Mjg6MzYpOgp+IyEgcm49QW5hdG9sIHJ0PTkwNzg3NzU1NyByZz1zY2htYXJybgp+IyEgdGlkPTkwNzgyODU0OQpBcmdsISBNdXNzIGRlciBNaXN0IHVudGVyIE1FSU5FTSBOYW1lbiBsYXVmZW4/IDspCiAgQm9pbmcgKEVyZmluZGVyIGRlcyBCb2luZy1SZXNldHMpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogQm9pbmctUmVzZXRzIChNYWhhdG11LCAgOS4gT2t0IDE5OTgsIDExOjUwOjQyKToKfiMhIHJuPUJvaW5nIHJ0PTkwNzkyNTMxNiByZz1zY2htYXJybgp+IyEgdGlkPTkwNzgyODU0OQpEZWluZSBHZWdlbmRlbiBoYXR0ZW4gZHVyY2ggZGllc2VzIFBoYWVub21lbiBiZWRpbmd0IGRpZSBob2VjaHN0ZW4gU3BpZWxlci0KYXVzZmFlbGxlIHp1IHZlcnplaWNobmVuLiBBbHNvIHdhcyBiZXNjaHdlcnN0IER1IERpY2g/IFJvY2h1cyB3YWVyIGdsdWVja2xpY2guCgpHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS29ua3VycmVueiB1bnRlciBLYWVtcGZlcmlubmVuIC4uLiA7KSAoVHVmZmksICA5LiBPa3QgMTk5OCwgMTc6Mjk6NTkpOgpbVHJ2ZXM6TWlzdGJyYXR6ZV0gYXp1YmkgZ2VzdWNodCAhCltUcnZlczpNaXN0YnJhdHplXSBuaWVtYW5kID8/Pz8gaGFmYXggYXJhdGggbmVzYWphIGNyaXR0ZXIgPyBhbGxlIGxlcm5mYXVsCltUcnZlczpNaXN0YnJhdHplXSBnZXdvcmRlbiA/CltUcnZlczpBcmF0aF0gc28gaXNzZXMgOikKW1RydmVzOlF1aWNrXSB3ZXIgYXp1YmkgZnVlciBkaWNoIG1hY2h0LCBrb21tdCBhdWYgZGllIHNjaHdhcnplIGxpc3RlIDopCltUcnZlczpUdWZmaV0gKmxhY2gqIGFjaCBzbyBsYWV1ZnQgZGVyIGhhc2UgOykKW1RydmVzOk1pc3RicmF0emVdIHNvc28gaGF0IGM0IGRhIHdhcyB2ZXJrdWVuZGV0ID8KW1RydmVzOlF1aWNrIHdpbmt0IG1pdCBlaW5lbSAnWmVwaHlyIGZvciBaYWxoJ0JhdGFyJy1TY2hpbGQuXQpbVHJ2ZXM6TWlzdGJyYXR6ZV0gZ2VoIGxlcm4gc2NocmVpYmVuIApbVHJ2ZXM6UXVpY2sgd2lyZnQgZWluIGsgaGludGVyaGVyLl0gCltUcnZlczpEZW1vbmEgd3VuZGVydCBzaWNoXQpbVHJ2ZXM6UXVpY2tdIHNjaHJlaWJlbiBicmF1Y2ggaWNoIG5pY2h0LCBiaW4gendlcmcuIHp1aGF1biBrYW5uIGljaCA6KQpbVHJ2ZXM6VHVmZmldIDUwayBmdWVyIGRlbiwgZGVyIDEyNSBraWxscyBtaXQgbWlzdGJyYXR6ZSBtYWNodCA7KSAKW1RydmVzOlF1aWNrXSBzbyBsYWV1ZnQgYWxzbyBkZXIgaGFzZSwgdHVmZmkgOikgCltUcnZlczpUdWZmaSBncmluc3QuXQpbVHJ2ZXM6VHVmZmldIG5hamEsIGR1IGhhc3Qgc28gYW5nZWZhbmdlbiA6KSAKW1RydmVzOk1pc3RicmF0emVdIHNhZyBuaWNoIGhhc2UgenUgbWVpbmVtIHp3ZXJnIApbVHJ2ZXM6VHVmZmkga3VzY2hlbHQgc2ljaCBhbiBzZWluIEJyYXR6ZWxjaGVuIGFuLl0KW1RydmVzOk1pc3RicmF0emUgd3VzY2hlbHQgaWhyIFNjaG51ZmZlbHR1ZmZpXQpEdSBzYWdzdDogd2llIGF1Y2ggaW1tZXIgLi4uIHdpciB3ZXJkZW4gZGFzIGVyc3RlIGdlbmVyYWxzLWVoZXBhYXIgOykKTWlzdGJyYXR6ZSBzYWd0OiBqYQpNaXN0YnJhdHplIHNhZ3Q6IGFiZXIgbmljaHQgYXVmIHRydmVzIHNhZ2VuCk1pc3RicmF0emUgc2FndDogc29uc3QgbWFjaHQgYzQgYW50cmFlZ2UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyYXVlbiAoRGVlcGJsdWUsICA5LiBPa3QgMTk5OCwgMjI6MzM6MjEpOgpXYXMgaXN0IGRlciBVbnRlcnNjaGllZCB6d2lzY2hlbiBlaW5lciBodWVic2NoZW4gdW5kIGVpbmVyIGhhZXNzbGljaGVuIEZyYXU/CjUgQmllcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWxpY2ggaW0gU0wgKEppZGR1LCAxMC4gT2t0IDE5OTgsIDAyOjQ3OjQ1KToKfiMhIHJuPVRlZGR5IHJ0PTkwNzgyOTI4MiByZz1zY2htYXJybgp+IyEgdGlkPTkwNzgyOTI4MgpJbSBTaWxiZXJMYW5kIHdhciBpY2ggYXVjaCBtYWwuLiBhYmVyIGRhcyBkYXVlcm5kZSBCYWJhIGZhbmQgaWNoIHNvCnNjaHJlY2tsaWNoIG5lcnZlbmQgZGFzIGljaHMgbWFsIGdlZ2FnZ3QgaGFiZS4uLiBkYW5uIGhhYiBpY2ggbmllIHdpZWRlciBuZQp6ZWlsZSB2b20gbXVkIGdla3JpZWd0IC4uLiBudSBiaW4gaWNoIHdpZWRlciBpbSBNRyA7KQpKaWRkdSwgZWdhbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1HIGlzdCBzdGVyYmxpY2ggKEppZGR1LCAxMC4gT2t0IDE5OTgsIDAyOjUwOjEwKToKfiMhIHJuPVRyYW5jZWZlYXIgcnQ9OTA3ODcxODMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA3NjgxNTQzCkppZGR1IGRlbmt0IC4gTyBPIChyYWZmaW5pZXJ0IHVuZCBLSSB3ZWdsYXNzZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV1bGljaCBpbSBTTCAoRW1iZSwgMTAuIE9rdCAxOTk4LCAwNDoyNjo1NSk6Cn4jISBybj1KaWRkdSBydD05MDc5ODA0NjUgcmc9c2NobWFycm4KfiMhIHRpZD05MDc4MjkyODIKdGphLCB3aXIgcmVkbiBoYWx0IGFuc3QiYW5kaWcsIHVuZCBuaWNodCBkaWVzZXMgayJ1bnN0bGljaGUgaG9jaGRldXRzY2ghCgpncnVzcywgZU1CZWUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWxpY2ggaW0gU0wgKEppZGR1LCAxMC4gT2t0IDE5OTgsIDA0OjI4OjE5KToKfiMhIHJuPUppZGR1IHJ0PTkwNzk4MDQ2NSByZz1zY2htYXJybgp+IyEgdGlkPTkwNzgyOTI4MgpJY2ggZ2xhdWJlIHdlZGVyIGRhcyAnQmFiYScgYW5zdGFlbmRpZyBpc3QsIG5vY2ggZGFzIG1laW4gZGV1dHNjaCBrdWVuc3RsaWNoCmlzLi4gYWJlciBpY2ggd29sbHRlIGRpY2ggYXVjaCBuZWQgYmVsZWlkaWdlbi4uCkppZGR1LCBlZ2FsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmV1bGljaCBpbSBTTCAoRW1iZSwgMTAuIE9rdCAxOTk4LCAwNDo0NDoyNik6Cn4jISBybj1KaWRkdSBydD05MDc5ODY0OTkgcmc9c2NobWFycm4KfiMhIHRpZD05MDc4MjkyODIKaWNoIGJpbiBuaWNodCBiZWxlaWRpZ3QKCmljaCBzdGVsbGUgbnVyIGF1cyBzcHJhY2h3aXNzZW5zY2hhZnRsaWNoZXIgc2ljaHQgZmVzdCwKZGFzcyBob2NoZGV1dHNjaCBlaW5lIGt1bnN0c3ByYWNoZSBpc3QuCgphYmVyIHdlbm4gZHUgYW5mYW5nc3QgenUgYmVoYXVwdGVuLCBkYXMgYmFiYSB1bmFuc3QiYW5kaWcgdyJhciwKZGFubiBiaW4gaWNoIGJlbGVpZGlndCA6LSkKCmdydXNzLCBlTWJlZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiBXYW4gTGlhbyBGdS4gKEppZGR1LCAxMC4gT2t0IDE5OTgsIDA1OjUwOjQwKToKVmVyc2NoaWVkZW5lczoKIEVpbiBXYW4gTGlhbyBGdS4KCkRlciBEc2NoaW5uaSBzdGVsbHQgc2NobmVsbCBkaWUgRmlndXJlbiBhdWYgdW5kIHNhZ3Q6IFNvIHNpZWh0IGRhcyBCcmV0dCBqZXR6dAphdXM6Cgo4IFggUyAuIC4gLiAuIC4gLgo3IC4gLiBTIC4gLiBTIC4gLgo2IC4gLiAuIFMgLiAuIC4gLgo1IC4gUyAuIC4gLiBTIC4gLgo0IC4gLiAuIC4gLiAuIFMgLgozIC4gLiAuIC4gLiAuIC4gLgoyIFMgLiBTIC4gUyBTIC4gLgoxIC4gLiAuIC4gLiAuIC4gTwoKICAxIDIgMyA0IDUgNiA3IDgKCkR1IGhhc3Qgbm9jaCBrZWluZW4gU2NoYXR6IHVuZCBkZXIgRHNjaGlubmkgaGF0IGF1Y2ggbm9jaCBrZWluZW4gU2NoYXR6LiAKQWxzbywgaWNoIGZhbmdlIGFuLi4uIApEZXIgRHNjaGlubiB1ZWJlcmxlZ3QgZWluZW4ga2xlaW5lbiBNb21lbnQuCkRlciBEc2NoaW5uaSBzYWd0OiBEdSB3aWxsc3Qgd29obCBkYXMgU3BpZWwga2xhdWVuLCB3YXM/IFNvIG5pY2h0ISBJY2gKdmVyc2Nod2luZGUhIApEZXIgRHNjaGlubmkgbXVybWVsdCBsZWlzZSB2b3Igc2ljaCBoaW4uCkRlciBEc2NoaW5uaSBzYWd0OiBJY2ggemllaGUgdm9uIDE4IG5hY2ggMTIuCkRlciBEc2NoaW5uaSBzYWd0OiBKdWNoZWVlZWUhIEljaCBoYWIgZWluZW4gU2NoYXR6IQoKOCAuIFMgLiAuIC4gLiAuIC4KNyAuIC4gUyAuIC4gUyAuIC4KNiAuIC4gLiBTIC4gLiAuIC4KNSAuIFMgLiAuIC4gUyAuIC4KNCAuIC4gLiAuIC4gLiBTIC4KMyAuIC4gLiAuIC4gLiAuIC4KMiBYIC4gUyAuIFMgUyAuIC4KMSAuIC4gLiAuIC4gLiAuIE8KCiAgMSAyIDMgNCA1IDYgNyA4CgpEdSBoYXN0IG5vY2gga2VpbmVuIFNjaGF0eiB1bmQgZGVyIERzY2hpbm5pIGhhdCBlaW5lbiBTY2hhdHouIAoKVW5kIHdlZyB3YXIgZGFzIFNwaWVsIGhlaGUgOikKSmlkZHUsIGVnYWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXVsaWNoIGltIFNMIChXb29keSwgMTAuIE9rdCAxOTk4LCAxMzozNDoxNik6Cn4jISBybj1FbWJlIHJ0PTkwNzk4NzQ2NiByZz1zY2htYXJybgp+IyEgdGlkPTkwNzgyOTI4MgpVbmQgYXVzc2VyZGVtOiBFciBiZWthbSBudXIga2VpbmUgd2VpdGVyZSBaZWlsZSBtZWhyLAp3ZWlsIGVyIHNpY2ggbmljaHQgbWl0IEdhZ2dpbmcgYXVza2VubnQuLi4gOykKCmJhYmEgOikKd29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmV1bGljaCBpbSBTTCAoVHJhbmNlZmVhciwgMTAuIE9rdCAxOTk4LCAxMzo1Njo0Nyk6Cn4jISBybj1FbWJlIHJ0PTkwNzk4NjQxNSByZz1zY2htYXJybgp+IyEgdGlkPTkwNzgyOTI4MgpOYSBzb2xhbmdlIHNpY2ggZGFzIGF1ZnMgUmVkZW4gYmVzY2hyYWVua3QuLi4gTXVuZGFydCBpbiBSYXVtYmVzY2hyZWlidW5nZW4Kb2RlciBnYXIgaW4gQmVmZWhsZW4gKCJrcmF4ZWwgbmFjaCBvYmVuIikgc2NocmVja2VuIGRhbm4gZG9jaCB2aWVsZQpOaWNodC1PZXN0ZXJyZWljaGVyIGFiLiBJc3QgaGFsdCBkb2NoIGVpbiAiT2VzaS1NdWQiLi4uCgp0ZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmV1bGljaCBpbSBTTCAoVHJhbmNlZmVhciwgMTAuIE9rdCAxOTk4LCAxMzo1ODoyOSk6Cn4jISBybj1UcmFuY2VmZWFyIHJ0PTkwODAyMDYwNyByZz1zY2htYXJybgp+IyEgdGlkPTkwNzgyOTI4MgouLi5tYW4gc3RlbGxlIHNpY2ggenVtIFZlcmdsZWljaCBlaW4gTVVEIGluIHNhZWNoc2lzY2hlciBNdW5kYXJ0IHZvci4uLiA6LSkKCnRmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXVsaWNoIGltIFNMIChVcnRob25hLCAxMC4gT2t0IDE5OTgsIDE0OjE5OjAzKToKfiMhIHJuPVRyYW5jZWZlYXIgcnQ9OTA4MDIwNjA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA3ODI5MjgyCnp3aW5ndCBEaWNoIGphIGtlaW5lciBpbSBTTCB6dSBtdWRkZW4uClVydGhvbmEgYnp3IFJhaWx1ciwgc2VpbmVzIFplaWNoZW5zIGZsZXhpYmxlciBGaXNjaGtvcHAgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXVsaWNoIGltIFNMIChXb29keSwgMTAuIE9rdCAxOTk4LCAxNDo0NTozMik6Cn4jISBybj1UcmFuY2VmZWFyIHJ0PTkwODAyMDYwNyByZz1zY2htYXJybgp+IyEgdGlkPTkwNzgyOTI4MgpEb29ma29wcC4gRGllc2UgU3ludGF4ZW4gc2luZCBhbHRlcm5hdGl2LCB1bmQgYXVzc2VyZGVtIG51ciBhbQpCYXVlcm5ob2YuIFdpciB3aXNzZW4gaGFsdCwgd2llIG1hbiBVcmxhdWIgYW0gQmF1ZXJuaG9mIHJpY2h0aWcKYXV0aGVudGlzY2ggZ2VzdGFsdGV0IDstKQoKV29vZHksIGRlciBhdWNoIEtsZXR0ZXJlciB0b2xlcmllcnQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5ldWxpY2ggaW0gU0wgKE1haGF0bXUsIDEwLiBPa3QgMTk5OCwgMTQ6NDk6MTQpOgp+IyEgcm49VHJhbmNlZmVhciBydD05MDgwMjA3MDkgcmc9c2NobWFycm4KfiMhIHRpZD05MDc4MjkyODIKRXR3YSBzbz86Cj4gRGVyIEtvZW5pZyBmcmFndCBEaWNoOiBXaWxsc3QgRHUgZGllIEF1ZmdhYmUgdWViZXJuZWhtZW4/Cj4gamEKPiBEdSBhbnR3b3J0ZXN0OiBOdS4KCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXVsaWNoIGltIFNMIChRaXRlc3MsIDEwLiBPa3QgMTk5OCwgMTY6MDc6NTEpOgp+IyEgcm49RW1iZSBydD05MDc5ODc0NjYgcmc9c2NobWFycm4KfiMhIHRpZD05MDc4MjkyODIKbmEgaXN0IGRvY2ggYWJlciByaWNodGlnOgp3ZW5uIG1hbWkgc2FndCwgZGFzIGlzdCAnYmFiYScsIGRhbm4gaXN0IGVzIGF1Y2ggJ2JhYmEnLCBhbHNvIHVuYW5zdGFlbmRpZy4Kc29nYXIgenV0aWVmc3QgdW5hbnN0YWVuZGlnLgoKUUkqKiBzcHJpY2h0IGhvY2hkZXV0c2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmV1bGljaCBpbSBTTCAoQW5hdG9sLCAxMC4gT2t0IDE5OTgsIDE2OjA5OjQ1KToKfiMhIHJuPVFpdGVzcyBydD05MDgwMjg0NzEgcmc9c2NobWFycm4KfiMhIHRpZD05MDc4MjkyODIKSGEgaGEuIFRvbGxlciBXaXR6LiBXaWUgc2FndCBlaW5lIE9lc3RlcnJlaWNoZXJpbiAiVHNjaGF1LCBHYXR0ZSEiPyBCb2gsCmljaCBsYWNoJyBtaWNoIHRvdC4gU2VsdGVuIHNvIGd1dCBnZWxhY2h0LiBLb2VubnRlIHZvbiBkZXIgRUFWIHNlaW4uIE9kZXIKdm9uIFNoYWtlZGJlZXIuIE9kZXIgdm9uIE9iaS4KCk1hbm4sIHNjaHJlaWJ0IG1laW4gR2hvc3R3cml0ZXIgd2llZGVyIFNjaGVpc3NlLi4uCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBXbyBpc3QgZGllIEdyZW56ZT8gKEFuYXRvbCwgMTAuIE9rdCAxOTk4LCAxODozODozOSk6Cn4jISBybj1TdGluZyBydD05MDgwMzE1ODYgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTkwNjYzNzc0MApJY2ggZ2xhdWJlLCBkZXIgbGllYmUgR290dCBoYXQgZXZlbnR1ZWxsIGJlc3NlcmVzIHp1IHR1biwgYWxzIGRlciBMb2dpawpzZWluZXIgZ2VsaWVidGVuIFN0ZXJibGljaGVuIHp1IGdlaG9yY2hlbi4uLiA6bykKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV1bGljaCBpbSBTTCAoS29vbWksIDEwLiBPa3QgMTk5OCwgMjA6NTU6NTMpOgp+IyEgcm49SmlkZHUgcnQ9OTA3OTgwNDY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA3ODI5MjgyCkpFSE9WQSEgCgotLT4gbXVlbGwKCktvb21pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGEuLiAoTHVnLCAxMS4gT2t0IDE5OTgsIDAyOjMxOjE2KToKCkRlciBXYWVjaHRlciBkZXIgR2FyZGUgYmVhZXVndCBEaWNoIG1pc3N0cmF1aXNjaC4KRHUgdGVpbHN0IExpbGxlYnJvciBtaXQ6IFJpbmcKTmFjaHR3aW5kIHRlaWx0IERpciBtaXQ6IG9rLi4KTGlsbGVicm9yIHRlaWx0IERpciBtaXQ6IG9raQoKU293YXMuLi4KCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbm8gbWVyY3khIDopIChOYWNodHdpbmQsIDExLiBPa3QgMTk5OCwgMDM6NDU6MTUpOgpbVG9kOkxhcnNdIEVpbiBIYW1tZXIgaGF0IGdlcmFkZSBUYW5pcyB1bWdlYnJhY2h0LgpbLi4uXQpbQmVpbGVpZDpTaGFyaWFdIGxlcm5zdCBkdSBlcyBlaWdlbnRsaWNoIGlyZ2VuZHdhbm4gPyA6LSkpKQpbQmVpbGVpZDpDb25uZXJdIGRlciBoZWlsaWdlIGhhbW1lcgpbQmVpbGVpZDpDYXJhbW9uXSBzb3JyeSwgd3Vzc3RlIGphIG5pY2gsIGRhcyBkaWUgaGVpbGlnZSB2ZXJlaXNlcmluIGhlaWxpZyBpc3QKW0JlaWxlaWQ6Q2FyYW1vbl0gLi4uIEFSR0wgOigoKCgKW0JlaWxlaWQ6U2hhcmlhXSAqbGFjaCoKW0JlaWxlaWQ6UXVpY2sgcHJ1c3RldCBsb3MuXQoKQWxzbyBkYXMgZ2Vob2VydGUgZWNodCBiZXN0cmFmdCA6KSkKbncuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2hvZW4gc2F1YmVyIG1hY2hlbiAhISEgKFFpdGVzcywgMTEuIE9rdCAxOTk4LCAxNToxNTozNCk6Cj5uCkJydWRlciBUb2JpYXMga29tbXQgYW4uCkRpZXMgaXN0IGVpbmUgTW9lbmNoc3plbGxlLiBJbiBncm9zc2VyIEFid2VuZHVuZyB2b24gbWF0ZXJpZWxsZW4gRGluZ2VuIGlzdApkaWVzZSBaZWxsZSBnZXJhZGUgZWlubWFsIHNvIGxhbmcgd2llIGRhcyBCZXR0LCB3ZWxjaGVzIGluIGlociBzdGVodCwgdW5kCmJpZXRldCBhdXNzZXIgaWhtIGxlZGlnbGljaCBub2NoIGVpbmVtIFRpc2NoIHVuZCBlaW5lbSBTdHVobCBQbGF0ei4gQW5zb25zdGVuCmlzdCBkZXIgUmF1bSBsZWVyLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZGVuLgpCcnVkZXIgVG9iaWFzLgo+IEVpbiBNb2VuY2ggZHJlaHQgc2ljaCB6dSBEaXIgdW0sIG1pdCBlaW5lbSBEb2xjaCBpbiBkZXIgSGFuZC4KRXIgd2VpbnQgd2llIGVpbiBLaW5kLCBhbHMgZXIgZGFzIE1lc3NlciB3ZWl0IHZvbiBzaWNoIGhhZWx0Li4uClVtIGVzIGRhbm4gbWl0IGFsbGVyIEtyYWZ0IGluIHNlaW4gSGVyeiB6dSByYW1tZW4uClRvdCBicmljaHQgZXIgenVzYW1tZW4sIHVuZCBkYXMgTGV0enRlLCB3YXMgRHUgdm9uIGlobSBob2Vyc3QsCmlzdCBkYXMgV29ydDogJ0VybG9lc3VuZycuCkJydWRlciBUb2JpYXMgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRWluIERpZW5lciBrb21tdCBhbi4Kc3RhdW5lCkR1IGJpc3QgZXJzdGF1bnQuCj4gRGVyIERpZW5lciBmZWd0IHVuYmVob2xmZW4gZGVuIEJvZGVuLgoKClFJKiogZnJldXQgc2ljaCB1ZWJlciBlaW4gd2VuaWcgUmVpbmxpY2hrZWl0IGltIEtsb3N0ZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTVBBIDooIChNYWhhdG11LCAxMS4gT2t0IDE5OTgsIDE4OjMyOjQyKToKV2llIGljaCBzb3dhcyBoYXNzZToKVWViZXJnZWhlIEFydGlrZWwgMjY3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDI2OCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAyNjkgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4KCipoZXVsKiA6KQpHbG9pbgoKUFM6IE5FSU4sIGljaCBsZXNlIGRpZXNlbiBUaHJlYWQgdHJvdHpkZW0gbmljaHQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTVBBIDooIChaaWxsdXMsIDExLiBPa3QgMTk5OCwgMTk6MzU6MDIpOgp+IyEgcm49TWFoYXRtdSBydD05MDgxMjM1NjIgcmc9c2NobWFycm4KfiMhIHRpZD05MDgxMjM1NjIKVW5kIHdhcyB3aWxsc3QgRHUgZGFtaXQgc2FnZW4gOy0pID8KVW5kIHdhcyB3aWxsc3QgRHUgZGFtaXQgc2FnZW4gOy0pID8KWmlsbHVzClppbGx1cwpQUzogSkEgaWNoIGxlc2UgZGVuIFRocmVhZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNUEEgOiggKEFuYXRvbCwgMTEuIE9rdCAxOTk4LCAxOTozNjowNik6Cn4jISBybj1aaWxsdXMgcnQ9OTA4MTI3MzAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA4MTIzNTYyCj4gYWxjb3Rlc3QKRHUgYmlzdCB2b2VsbGlnIG51ZWNodGVybi4KCkhtcGY/CkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVz8gOikgKEFuYXRvbCwgMTEuIE9rdCAxOTk4LCAxOTo1NjowMSk6CltBYmVudGV1ZXI6RmlyZWhhd2tdIE5pZW1hbmQ/IEhtbSwgZGFubiB3ZXJkIGljaCB3b2hsIGRvY2ggbWFsIGRpZSBUcm9sbGUKW0FiZW50ZXVlcjpGaXJlaGF3a10gemVybGVnZW4uCltUb2Q6TGFyc10gRWluIFRyb2xsIGhhdCBnZXJhZGUgRmlyZWhhd2sgdW1nZWJyYWNodC4KCk5hamEsIG9kZXIgc28gaGVydW0uLi4KQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJhdWVuLi4uIChMdWcsIDEyLiBPa3QgMTk5OCwgMDA6MzQ6MzMpOgoKVXJ0aG9uYSB0ZWlsdCBEaXIgbWl0OiBpY2ggd2Vpc3Mgc2VociB3b2hsIHdhcnVtIGljaCBkaWUgZnJhZ2Ugc3RlbGxlLCBkZXBwCkR1IHRlaWxzdCBVcnRob25hIG1pdDogTGVtYm9sZCBzb2xsIGdhbnogbmV0dCBzZWluLi4uClVydGhvbmEgdGVpbHQgRGlyIG1pdDogZGFzIGJlYW50d29ydGV0IG1laW5lIGZyYWdlIG5pY2h0CgpIYXR0ZSBpY2ggZGFzIGV0d2Egdm9yPwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmljaCBoYXNzZSBtaWNoIHNlbGJzdCA6KSAoSmlkZHUsIDEyLiBPa3QgMTk5OCwgMDE6MzY6MjQpOgpwZmZ0IQoKdwpEZXIgUmllc2UgdmVyc3BlcnJ0IERpciBkZW4gV2VnLgp6aWVoZSBoZWxtIGF1cwpEdSBlbnRmZXJuc3QgZGVuIEhlbG0gdW5kIHdpcnN0IHdpZWRlciB6dSBKaWRkdS4KdwogICAgICAgICAgICAgICAgICAgICAgICBEaWUgS3VlY2hlCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBvc3Rlbi4KCkljaCB2ZXJzcGVycmUgbWlyIGFsc28gc2VsYnN0IGRlbiB3ZWcuLiBrbHVnLi4gOykKSmlkZHUuIFNjaG1hcnJuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKndhZWx6KiAoTGlsbGVicm9yLCAxMi4gT2t0IDE5OTgsIDAyOjQ5OjA1KToKZ3JhZCBlYmVuIC4uLgoKPiBEZWluIEZyZXVuZCBMdWcgdGVpbHQgRGlyIG1pdDogKkdydW56LCBpY2ggYmluIGVpbiBUaWVyKiA7KQpEZXIgQWZmZSBiZWRhdWVydCwgZGFzcyBEdSBrZWluZSBCYW5hbmUgZnVlciBpaG4gaGFzdCB1bmQgYmVzY2hsaWVzc3QgenUKZ2VoZW4uCkRlciBHb3JpbGxhIGdlaHQgbmFjaCBPc3Rlbi4KCkxpbGxlYnJvciAoaW1tZXIgbm9jaCBsYWNoZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICp3YWVseiogKEx1ZywgMTIuIE9rdCAxOTk4LCAwMjo1MDozMCk6Cn4jISBybj1MaWxsZWJyb3IgcnQ9OTA4MTUzMzQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA4MTUzMzQ1CkUgdHUgQnJ1dGE/CgpHUlJSUlJSVU5OWlpaWlpaWiAqbWl0IEZhZXVzdGVuIGF1ZiBkaWUgQnJ1c3QgdHJvbW1lbCoKCkljaCBzYWcgamV0enQgbmljaHQgd2VsY2hlCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEJvaW5nLVJlc2V0cyAoS2V5LCAxMi4gT2t0IDE5OTgsIDEzOjMyOjQxKToKfiMhIHJuPUx1ZyBydD05MDc4NzY3MDYgcmc9c2NobWFycm4KfiMhIHRpZD05MDc4Mjg1NDkKRG9jaCBBbmF0b2wgaGF0IHJlY2h0IC4uLgpEdSB3b2xsdGVzdCBzY2hvbiBpbW1lciBuZW4gU2VpdGVuc2NoZWl0ZWwgaGFiZW4gOikKCk51ciBzdG9laHJ0IGRhYmVpIGxlaWRlciBEZWluZSBHbGF0emUgPTspCgpLZXksIGZyZWNoIDopCgpQLlMuOiBCZXdlZyBEZWluZW4gbGFuZ2VuIEFkb25pc2tvZXJwZXIgbWFsIGFtIERpZW5zdGFnIG5hY2ggTWFyYnVyZyEgLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZSQVVFTiEgKE5vdmFzdG9ybSwgMTIuIE9rdCAxOTk4LCAxNzo0Mjo0Nyk6CkFtYW5kYSBrb21tdCBpbiBlaW5lciBXb2xrZSB2b24gUGFyZnVlbSBhbi4KCkFtYW5kYSBzY2h3ZWJ0IGluIGVpbmVyIFdvbGtlIHZvbiBQYXJmdWVtIGF1ZiBkaWUgVG9pbGV0dGUuCkFtYW5kYSB0ZWlsdCBEaXIgbWl0OiBXb2hpbiBzbyBzY2huZWxsLCBOb3Zhc3Rvcm0/CkFtYW5kYSB0ZWlsdCBEaXIgbWl0OiBJbW1lciBzaW5kIHNpZSBzbyBlaWxpZywgZGllIE1hZW5uZXIuLi4KCiAgIE5vdmEsIGRlcnplaXQgaWRlbG5kIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQVJHTCAoQW5hY3Jpb24sIDEzLiBPa3QgMTk5OCwgMTg6NDQ6MzIpOgoKV2FzIGVpbmVtIHNvIHBhc3NpZXJ0IC4uLi4KCnhoYW5kCk1laHIgYWxzIGVpbmUgenVzYWV0emxpY2hlIEhhbmQga2FubnN0IER1IGxlaWRlciBuaWNodCBrb250cm9sbGllcmVuLgo+IERlaW5lIEV4dHJhaGFuZCBsb2VzdCBzaWNoIGF1Zi4KCgp1bmdlc2Nobml0dGVuICphcmdsKgoKQW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5hbnVlPyAoS2FydG9mZmVsLCAxNC4gT2t0IDE5OTgsIDEwOjM1OjM3KToKRHUgc2Fnc3Q6IFBhcnR5bW9uc3RlciB2ZXJzY2h3aW5kZQpbQWxsZ2VtZWluOkJlbmRlaWdpZCB2ZXJzY2h3aW5kZXQgaGVpbWxpY2ggc3RpbGwgdW5kIGxlaXNlXQoKJ1RvZmZlbCAtIHdlaXNzIGpldHp0IHdpZSBkYXMgUGFydHltb25zdGVyIGF1c3NpZWh0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTYXVmZW4gZnVlciBkZW4gUnVmIGRlciBHaWxkZS4uLiAoS2FydG9mZmVsLCAxNC4gT2t0IDE5OTgsIDExOjU0OjU2KToKQW53ZXNlbmRlIEJpZXJzY2h1ZXR0bGVyICg2IFNwaWVsZXIpOgpOYW1lICAgICAgICAgIExQICAgTVAgU3R1ZmUgSWRsZSBBbGtvaG9sICAgIE9ydApJdm8gICAgICAgICAgMjE4ICAyMDIgICA2OSAgICBpICBudWVjaHRlcm4gIE1hbGthc3RlbiwgZGllIEtuZWlwZSBtaXQgR2FsZXJpZQpLYXJ0b2ZmZWwgICAgMjE4ICAgMjIgICA0OCAgICAgICB2b2xsICAgICAgIFN0cmFuZHdlZyBhdWYgU2hha3kgSXNsYW5kClJhZmZpICAgICAgICAxNzggICA1MCAgICAzICAgIEogIG51ZWNodGVybiAgSW0gR2VsZHNwZWljaGVyIGRlciBaZW50cmFsYmFuawpHb3IgICAgICAgICAgMjE4ICAgODMgICAzNyAgICBpICBudWVjaHRlcm4gIFdhbGR3ZWcgaW0gR3JpbW1zd2FsZApMZWlibml6ICAgICAgMjE4ICAyMDIgICA0MyAgICAgICBudWVjaHRlcm4gIEdhbnogdW50ZW4gaW4gZWluZXIgS2Vrc2Rvc2UKR29sYXMgICAgICAgIDE3MCAgMTg2ICAgMjEgICAgaSAgbnVlY2h0ZXJuICBEaWUgRGlhbWFudGJhciAgICAgICAKCidUb2ZmZWwgLWFyYmVpdGV0IGhhcnQgYW0gSW1hZ2UgZGVyIEdpbGRlIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdWVyIEtleSB6dW0gVWViZW4gKEthcmlzLCAxNC4gT2t0IDE5OTgsIDE0OjE4OjA3KToKRGFubiBtYWNoIG1hIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVlciBLZXkgenVtIFVlYmVuIChLZXksIDE0LiBPa3QgMTk5OCwgMTQ6MjA6MDIpOgp+IyEgcm49S2FyaXMgcnQ9OTA4MzY3NDg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA4MzY3NDg3CkF1ZiBzb2xjaGUgQXJ0aWtlbCBhbnR3b3J0ZSBpY2ggbmljaHQhCktvZW5udCBqYSBqZWRlciBrb21tZW4gdW5kIHZlcmxhbmdlbiBkYXMgaWNoIG1pY2ggYWJtdWVoZSB1bmQgYW5mYW5nZSB6dQp0aXBwZW4gbnVyIHdlaWwgaXJnZW5zb2VpbmhlcmdlbGF1ZmVuZXIgbW9lY2h0ZWdlcm4gZGFzIHdpbGwhCgpLZXkgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRnVlciBLZXkgenVtIFVlYmVuIChLYXJpcywgMTQuIE9rdCAxOTk4LCAxNDoyMTo1NCk6Cn4jISBybj1LZXkgcnQ9OTA4MzY3NjAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA4MzY3NDg3CkRhIHdpbGwgbWFuIGlobSBudSBhdXNuYWhtc3dlaXNlIG1hbCBoZWxmZW4gLi4uIHVuZCBkYW5uIGRhcy4uLi4KCkthcmlzLCB2b2VsbGlnIGdla25pY2t0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGdWVyIEtleSB6dW0gVWViZW4gKFR1bml4Z3V0LCAxNC4gT2t0IDE5OTgsIDE0OjIzOjM5KToKfiMhIHJuPUthcmlzIHJ0PTkwODM2NzcxNCByZz1zY2htYXJybgp+IyEgdGlkPTkwODM2NzQ4NwpZZXAsIHNjaGVpc3MgQ2hhb3RlbiwgZXJzdCBzY2hyZWllbiBzaWUgdW0gSGlsZmUgdW5kIGRhbm4gc2NocmVpZW4gc2llCmZvZXJtbGljaCBkYW5hY2gsIHNpZSBpbiBkZW4gQXJzY2ggenUgdHJldGVuIC0gdW5kIGRhbm4gc2NocmVpZW4gc2llIHdpZWRlciB1bQpIaWxmZSAtIGVpbmUgdW5lbmRsaWNoZSBHZXNjaGljaHRlLi4uCidzIEthcmF0ZS16d2VyY2hsZSAtIGR1Y2t0IHNpY2guLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdvZXR0ZXIgc2luZCBhdWNoIG5pY2h0IG1laHIgZGFzIHdhcyBzaWUgbWFsIHdhcmVuIDo5IChTYXBoaXJhLCAxNC4gT2t0IDE5OTgsIDE3OjU0OjI5KToKICAuLi4ubm9ybWFsL0hBTU1FUi4uLi4uLiBOZWIuLi4uLi4uLi4uIDogT20uLi4uLi4uLi4uLiAqKioqKioqKiAtLSBLcmFjaGVuCk5lYiBnZWh0IGF1ZiBkZXIgU3VjaGUgbmFjaCBkZW0gdmVybG9yZW5lbiBCYXJ0IFNoYXJpYXMgYXVjaCBpbnMgRnJlaWUuClNhcGhpcmEga29tbXQgZ2xlaWNoIHdpZWRlciA7LSkKU2hhcmlhIHRlaWx0IERpciBtaXQ6IHNjaGFsdCBkb2NoIG1hbCBhdWYgbm92YSB1bSAhISEKW0FiZW50ZXVlcjpNZW5hY2VdIGtsaW5ndCBhbCBicmFldXRlc3QgZHUgbm9jaCBuZSBzY2hudXI/Ck5lYiBlcnNjaGVpbnQgaW4gZ29ldHRsaWNoZW0gQXVmdHJhZy4KICAuLi4ubm9ybWFsL0tyYWVmdGVuLi4uLiBPbS4uLi4uLi4uLi4uIDogTmViLi4uLi4uLi4uLiAqKioqKioqKiAtLQp2ZXJuaWNodGV0Ck5lYiBmYWVsbHQgdG90IHp1IEJvZGVuLgpEdSBzaWVoc3QgZWluZSBkdW5rbGUgR2VzdGFsdCwgZGllIGV0d2FzIER1bnN0IGVpbnNhbW1lbHQgLi4uIG9kZXIgdmllbGxlaWNodApiaWxkZXN0IGR1IERpciBkYXMgYXVjaCBudXIgZWluIC4uLgpbVG9kOkxhcnNdIE9tIGhhdCBnZXJhZGUgTmViIHVtZ2VicmFjaHQuCgpBbHNvIGVpbiBhbnMgS3JldXogc2NobGFnZW4gd2FlciBkb2NoIHdvaGwgbWluZGVzdGVucyBkcmlubmUgZ2V3ZXNlbi4uLgogKmVudHRhZXVzY2h0Z3VjayoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNoYW90ZW4gLi4uIChGcmF0eiwgMTQuIE9rdCAxOTk4LCAxOTo0ODoxNyk6Cj4gRGllIHNjaGFlYmlnZSBLbmVpcGUgZGVyIENoYW90ZW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBzdWVkZW4uCkRpZWRlciAsIEhlZmUgdW5kIE5pbWJ1cyBzaW5kIGRpZSAzIEFtaWdvcy4KRGllIFRvcC1MaXN0ZSwgVG9wLVNwaWVsZXJsaXN0ZSB1bmQgVG9wLVNlaGVybGlzdGUuCj4gQnJpZXNlbHRyaW0gZmxhdHRlcnQgaGVyZWluLgpCcmllc2VsdHJpbSBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIGVpbiBNdWVsbHNjaGx1Y2tlciB1bmQgRGllZGVyCkJyaWVzZWx0cmltIGtyYWVjaHp0OiAuLi4KRHUgc2Fnc3Q6IHdlciBpc3QgaGllciBlaWdlbnRsaWNoIEVyem1laXN0ZXI/CkRpZWRlciBzYWd0OiBzdGluZwpCcmllc2VsdHJpbSBrcmFlY2h6dDogLi4uIGtlaW4gd3VuZGVyIC4uZXIgZ2xhZW56dCA6KSAuLi4ga3Jycm9vYWFhIQoKRnJhdHoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZ1ZXIgS2V5IHp1bSBVZWJlbiAoVGVkZHksIDE0LiBPa3QgMTk5OCwgMjM6MjY6MzcpOgp+IyEgcm49VHVuaXhndXQgcnQ9OTA4MzY3ODE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA4MzY3NDg3CkljaCBoYWIgbmFjIGRpciB1bSBIaWxmZSBnZXNjaHJpZWVuPwoKVGVkZHksIGthbm4gc2ljaCBkYSBlaWdlbnRsaWNoIGhvZWNoc3RlbnMgYW4gZGllIHVtZ2VrZWhydGUgU2l0dWF0aW9uCmVyaW5uZXJuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRnVlciBLZXkgenVtIFVlYmVuIChUdW5peGd1dCwgMTUuIE9rdCAxOTk4LCAwNjo0OTowMCk6Cn4jISBybj1UZWRkeSBydD05MDg0MDAzOTcgcmc9c2NobWFycm4KfiMhIHRpZD05MDgzNjc0ODcKTmFqYSwgTmFjaGhpbGZlIGluIFJFQ0hUU0NIUkVJQlVORyBrb2VubnRlIGljaCBEaXIgZ2ViZW4hIDtvKQoncyBLYXJhdGUtWndlcmNobGUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTGludXggdW5kIFdpbjk4IChHcmltbWJvcm4sIDE1LiBPa3QgMTk5OCwgMDk6NDc6MzQpOgp+IyEgb249R3JpbW1ib3JuIG90PTkwODQzNzY0NiBvZz1oYXJkc29mdHdhcmUKfiMhIHJuPUhhdGUgcnQ9OTA4MzY0MDg3IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTkwODMxMTg1MwpEdSBpcnJzdC4gV2luOTggc3Vja3Mgbm9jaCBtZWhyLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBGdWVyIEtleSB6dW0gVWViZW4gKFRlZGR5LCAxNS4gT2t0IDE5OTgsIDEwOjQ3OjMyKToKfiMhIHJuPVR1bml4Z3V0IHJ0PTkwODQyNjk0MCByZz1zY2htYXJybgp+IyEgdGlkPTkwODM2NzQ4NwpJY2ggd2VyZCBkcmFuIGRlbmtlbiwgd2VubiBkdSB3aWVkZXIgbWFsIGluIGRlciBTU1Agc3RlaHN0IHVuZCBIaWxmZSBicmF1Y2hzdAo7KQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSWRlZT8gKENhdHdlYXpsZSwgMTUuIE9rdCAxOTk4LCAxMjo0OTowMyk6Cn4jISBvbj1BY3JpbW9uIG90PTkwODM4NDE4MyBvZz1wYXJ0eQp+IyEgcm49SmltZGlncml6IHJ0PTkwODE5MjQ4MCByZz1wYXJ0eQp+IyEgdGlkPTkwODEwODI2OQpBYmhpbGZlIGdlZ2VuIGFtb2tsYXVmZW5kZSBHZXJhZXRlOiBNdWRkZW4gOi0pCgo+IHNjaGF1CkRpZSBCZXJnZSB2b24gVGluZ2FuIHNpbmQgd2VzdGxpY2ggenUgc2VoZW4sIHZvbiBkZW5lbiBkZXIgT3N0ZXJiYWNoLCBoaWVyCm5vY2ggZWluIGtsZWluZXMgQmFlY2hsZWluLCBzZWluZW4gQXVzZ2FuZyBuaW1tdC4gRWluIFdlZyBmdWVocnQgZW50bGFuZwpkZXMgQmFjaGVzIGluIE9zdC1XZXN0LVJpY2h0dW5nLiBEaWUgU2lsYmVyYmVyZ2UgaW0gU3VlZGVuIHNpbmQgZGV1dGxpY2gKenUgZXJrZW5uZW4sIG51ciBlaW4ga3VyemVzIFN0dWVjayB2b24gaGllci4gRGVyIFdlZyBmdWVocnQgZW50bGFuZyBkZXIKQmVyZ2UgaW4gTm9yZC1TdWVkLVJpY2h0dW5nLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCkVpbiBLYW5pbmNoZW4uCkVpbiBidW50ZXIgU2NobWV0dGVybGluZy4KV3VuZGtsZWUuCj4gc2NoYXUga2FuaW5jaGVuCkVpbiBrbGVpbmVzLCBoYXJtbG9zZXMgS2FuaW5jaGVuLgpFcyBpc3QgYWJzb2x1dCBmaXQuCj4gdG9ldGUga2FuaW5jaGVuCkRhcyBLYW5pbmNoZW4gaGFlbHQgZWluIFNjaGlsZCBob2NoOiAnQWV0c2NoLCBpY2ggYmluIG5vY2ggbmljaHQKcHJvZ3JhbW1pZXJ0IScgdW5kIGh1ZXBmdCBmcm9laGxpY2ggZ3JpbnNlbmQgdm9uIGRhbm5lbi4KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcHJvbXB0ZSBiZWRpZW51bmcgb2RlciB0ZWxlcGF0aGllID8/IChKYXNvbnJpZ2lkLCAxNS4gT2t0IDE5OTgsIDEyOjU5OjA4KToKUWl0ZXNzIHRlaWx0IERpciBtaXQ6IGhvbCBtYWwgZmVzdGluIGhlci4gaWNoIGhhYiBodW5nZXIuLi4KW1NlaGVyOk5vbm5lXSBpc3QgaGllciBlaW5lciwgZGVyIHJhZXViZXIgYmVmcmllZGVuIGthbm4/CltTZWhlcjpMeXJhXSBNb20sIE9NIGtvbW10CltTZWhlcjpNb3Jnb3RoXSBpY2gga29lbm50ZSBhdWNoCkR1IHRlaWxzdCBRaXRlc3MgbWl0OiBqYW1tZXIgbmljaHRtIGhvbCBpaG4gc2VsYmVyIDopIHNlbGJzdCBpc3QgZGllIGZyYXUgdW5kCkR1IHRlaWxzdCBRaXRlc3MgbWl0OiBkZXIgendlcmcgZXJzdCByZWNodCAqZ3JpbnMqCj4gUWl0ZXNzIHRlaWx0IERpciBtaXQ6IGhtbW0gLSBpcyBqYSBzY2hvbiBndXQuLi4gOi8KRmVzdGluICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpzbyBlaW5mYWNoIGdlaHQgZGFzID8/IG11c3MgaWNoIG1pciBtZXJrZW4gOikKCkphc29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbyBmaXggZ2VodCBkYXMuLi4gKFFpdGVzcywgMTUuIE9rdCAxOTk4LCAxMzowMToxNSk6CgpEdSB0ZWlsc3QgSmFzb25yaWdpZCBtaXQ6IGhvbCBtYWwgZmVzdGluIGhlci4gaWNoIGhhYiBodW5nZXIuLi4KCkphc29uUmlnaWQgdGVpbHQgRGlyIG1pdDogamFtbWVyIG5pY2h0bSBob2wgaWhuIHNlbGJlciA6KSBzZWxic3QgaXN0IGRpZSBmcmF1Ckphc29uUmlnaWQgdGVpbHQgRGlyIG1pdDogdW5kIGRlciB6d2VyZyBlcnN0IHJlY2h0ICpncmlucyoKCkR1IHRlaWxzdCBKYXNvbnJpZ2lkIG1pdDogaG1tbSAtIGlzIGphIHNjaG9uIGd1dC4uLiA6LwoKRmVzdGluICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpGZXN0aW4gdGVpbHQgRGlyIG1pdDogTUVOU0E/IENocmlzdGlhbiBmcmFndGUgZ2VyYWRlLi4uCgpRSSoqIHdlaXNzIHNjaG9uLCB3aWUgbWFuJ3MgbWFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU28gZml4IGdlaHQgZGFzLi4uIChRaXRlc3MsIDE1LiBPa3QgMTk5OCwgMTM6MDE6NDQpOgp+IyEgcm49UWl0ZXNzIHJ0PTkwODQ0OTI3NSByZz1zY2htYXJybgp+IyEgdGlkPTkwODQ0OTI3NQphZWhtIGphLCBpcyBzY2hvbiBndXQuIGRvcHBlbHRnZW1vcHBlbHQuCgpRSSoqIHdlaXNzIHdpZSBtYW4ncyBtYWNodCwgaXN0IGFiZXIgZXR3YXMgbGFuZ3NhbS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTm92YSBsZXJudCBzY2huZWxsIChDYWxpbWVyYSwgMTUuIE9rdCAxOTk4LCAxNToxOToyNik6CkF1c3p1ZyBhdXMgZGVtIE1hcmJ1cmdlciBTdGFtbXRpc2NobG9nOgoKTm92YXN0b3JtIGZyYWd0IGJldHRlbG5kOiBLbGFlcnN0IER1IG1pY2ggYXVmID8/PwoKRWluaWdlIFplaXQgc3BhZXRlcjoKCk5vdmFzdG9ybSBzYWd0IHp1IE5lc2FqYTogT2NoLCBtaXQgQW1hbmRhIGthbm4gbWFuIGVjaHQgdG9sbGUgU2FjaGVuIG1hY2hlbi4uCgpoaWhpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQSWx6ZSAoQWxpbmUsIDE1LiBPa3QgMTk5OCwgMTc6NDU6MDkpOgoKc29lYmVuIGdlc2VoZW46Cgo+IHcKRHUgYmlzdCBhbSBzdWVkbGljaGVuIFJhbmQgZGVyIEhvY2hlYmVuZSwgZGllIGhpZXIgdm9uIGRlbiB3dW5kZXJzY2hvZW5lbgpTaWxiZXJiZXJnZW4gYmVncmVuenQgd2lyZC4gVm9yIGxhbmdlciBaZWl0IGVudGRlY2t0ZW4gZGllIFp3ZXJnZSByaWVzaWdlClNpbGJlcnZvcmtvbW1lbiwgdW5kIHNlaXRkZW0gc2luZCBkaWVzZSBCZXJnZSBpaHJlIGxpZWJzdGUgSGVpbWF0LiBEaWUKSG9jaGViZW5lIGVyc3RyZWNrdCBzaWNoIHdlaXQgbmFjaCBOb3JkZW4gdW5kIE9zdGVuIHVuZCBub2NoIGVpbiBrbGVpbmVzClN0dWVjayBpbiBSaWNodHVuZyBXZXN0ZW4uIEltIE5vcmRlbiBob2Vyc3QgZHUgZGFzIFBsYWV0c2NoZXJuIGVpbmVzIGtsZWluZW4KQmFjaGVzLiBFaW4ga2xlaW5lcyBIYXVzIHN0ZWh0IHN1ZWRsaWNoIHZvbiBEaXIuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgd2VzdGVuIHVuZCBub3JkZW4uCkVpbiBnZW5vcHB0ZXMgRmVlbmh1ZXRjaGVuLiAgICAgICAgICAgIEVpbiBnZW1laW5lcyBLb3RrYWVwcGNoZW4uCkVpbiBXYXJzdGVpbmVycGlsei4gICAgICAgICAgICAgICAgICAgIEVpbiBiZWphdWNodGVyIEtyaW5nZWxncnVtLgpFaW4ga2xlYnJpZ2VyIFdhbGRzY2hvcmZsaW5nLiAgICAgICAgICBFaW4gZ2V0dWVwZmVsdGVyIEdyb3R0ZW5mdXNzLgpFaW4gc2NoYWZ0c3RpZWZsaWdlciBIb2NoaHV0LiAgICAgICAgICBFaW4gU2NobGVoZW5zY2hub3JjaGVsLgpFaW4gZ3J1ZW5lcyBGaWNodGVuc2Nod2FlbW1jaGVuLgp1bmQgZGEgYmVoYXVwdGUgbm9jaG1hbCBlaW5lciwgZXMgZ2FlYmUga2VpbmUgUGlsemUgYXVmIGRlciBIRS4gOikKCkFsaW5lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpyZWNodHNjaHJlaWJyZWZvcm0gKEdvcm9nLCAxNS4gT2t0IDE5OTgsIDIzOjI1OjEwKToKQm9oaGggdm9yIHNvd2FzIGdyYXV0IG1pcjoKCkR1IGZyYWdzdDogV2llIGhlaXNzdCBlaWdlbnRsaWNoIGRlciBzb2huIGVpbmVyIHRhbnRlPwpMaWdodG5pbmcgc2FndDogTmViPyAKTGlnaHRuaW5nIGdyaW5zdC4KPiBMaWdodG5pbmcgc2FndDogQW5zb25zdGVuIEt1c2VuZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYnJhdmVzIE9ya2lsZWluIChNb3Jnb3RoLCAxNi4gT2t0IDE5OTgsIDA5OjAxOjA4KToKRGllc2VyIE9yayBnZWhvZXJ0IHp1ciBTdGFkdHdhY2hlLiBFciBwYXRyb3VsbGllcnQgZHVyY2ggZGllIGdhbnplIFN0YWR0IHVuZAphY2h0ZXQgZGFyYXVmLCBkYXNzIG5pZW1hbmQgZWluZSBTdHJhZnRhdCBiZWdlaHQuIER1IGRlbmtzdCBhbiBkaWUgV2FjaGVuIGluCk1vdWxva2luLCBkaWUgRGlyIHZpZWwgc3RhZXJrZXIgaW4gc2NobWVyemxpY2hlciBFcmlubmVydW5nIHNpbmQuIEFiZXIgaGllcgpzY2hlaW50IGhhbHQgZGllc2UgQXVzcnVlc3R1bmcgenUgcmVpY2hlbiwgZGllIGRlciBPcmsgbWl0IHNpY2ggdHJhZWd0IHVuZAphdWNoIHNpY2hlciBndXQgZWluenVzZXR6ZW4gd2Vpc3MuIEF1ZmdydW5kIHNlaW5lciBBdXNiaWxkdW5nIHdlaXNzIGVyCm5hdHVlcmxpY2ggYXVjaCwgd2llIG1hbiBiZXNzZXJlIFJ1ZXN0dW5nIHVuZCBXYWZmZW4gYmVudXR6dC4gR2liIGlobSBlaW4KZ3V0ZXMgU2Nod2VydCB1bmQgZXIgd2lyZCBlcyBtaXQgRnJldWRlIHp1ZWNrZW4uCkVyIGlzdCBhYnNvbHV0IGZpdC4gKDEwMCUpCkVyIHRyYWVndCBlaW5lbiBTY2hhbCBtaXQgZGVyIEF1ZnNjaHJpZnQgJ1lvdSdsbCBuZXZlciB3YWxrIGFsb25lJy4KRXIgdHJhZWd0IGJlaSBzaWNoOgpFaW4gaGVpbGlnZXIgSGFtbWVyLiAgICAgICAgICAgICAgICAgICBFaW5lIE9ya3dlc3RlIChhbmdlem9nZW4pLgoyMTM5IE11ZW56ZW4uICAgICAgICAgICAgICAgICAgICAgICAgICBFaW4gT3Jrc2Nod2VydC4KRWluIE9ya2hlbG0gKGFuZ2V6b2dlbikuICAgICAgICAgICAgICAgRWluIFNjaGFsIChhbmdlem9nZW4pLgpFaW4gUGFhciBPcmtzdGllZmVsIChhbmdlem9nZW4pLiAgICAgICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBicmF2ZXMgT3JraWxlaW4gKE5lYiwgMTYuIE9rdCAxOTk4LCAxMzowNTo0OSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkwODUyMTI2OCByZz1zY2htYXJybgp+IyEgdGlkPTkwODUyMTI2OApKbywgTG9iIG5vY2htYWwgYW4gQ2FrZXksIGRhcyB3YXIgZWluIGZlaW4gYXVzZ2VrbHVlZ2VsdGVyIFBsYW4sIGhhZXR0IGljaCBpaG0KbWFsIGJlc3NlciB2b3JoZXIgbmV0IHNvIHZpZWwgQmllciBnZWdlYmVuLCBhYmVyIHdlciByZWNobmV0IHNjaG9uIGRhbWl0LCBkYXNzCm5lbiBCaWVyc2NodWV0dGxlciBkYXMgbmljaHQgdmVydHJhZWd0IDspCgpOZWIsIGZpbmRldCBDYWtleXMgUGxhZW5lIGZhc3QgaW1tZXIgZ2VuaWFsIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbHNvIExlaWJuaXogKE1vcmdvdGgsIDE2LiBPa3QgMTk5OCwgMTQ6NTQ6MjQpOgpMZWlibml6IGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCkxlaWJuaXogZGVua3QgICAuIG8gTyAoZHVtbWUga2F0emUpCltUb2Q6TGFyc10gRGVyIEFiZ3J1bmQgaGF0IGdlcmFkZSBLYXR6ZW50YW50ZSB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIChXaW0sIDE3LiBPa3QgMTk5OCwgMDM6MzU6MTQpOgp3YXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndlciAoRW1haWwsIDE3LiBPa3QgMTk5OCwgMTA6MzY6MTQpOgp3aWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkphamEsIGRpZXNlIGV3aWdlIFF1ZXN0ZXJlaS4uLiAoVXJ0aG9uYSwgMTcuIE9rdCAxOTk4LCAxNzo0OTowMik6CgpbQWxsZ2VtZWluOlphcmRvel0gaG0sIGljaCBtdXNzIG1hbCB3aWVkZXIgbmUgcXVlc3QgbWFjaGVuLi4uIDwxNzo0MzozNj4KW0JlaWxlaWQ6U2tpcHBlcl0gQmVpbGVpZCA6KCggPDE3OjQzOjQyPgpbQmVpbGVpZDpSYXNwdXRpbiBsZWd0IGVpbmUgZ2VkZW5rbWludXRlIGVpbiA6KCA8MTc6NDM6NDY+XQpbQmVpbGVpZDpGb290XSBhcmdzIDooIDwxNzo0Mzo0OD4KW0JlaWxlaWQ6VHdpbnNlbl0gQmVpbGVpZCA6KCA8MTc6NDM6NDg+CltCZWlsZWlkOkZyb2dodW50ZXJdIGJlaWxlaWQgOiggPDE3OjQzOjUyPgpbQmVpbGVpZDpDaXNvdV0gYmVpbGVpZCA6KCA8MTc6NDM6NTQ+CgoKVXJ0aG9uYSwgb2huZSBXb3J0ZS4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnplcmdlICEgKFR3aW5zZW4sIDE3LiBPa3QgMTk5OCwgMTg6MjU6NTkpOgp1bnQgendlcmdlClNvd2FzIHNpZWhzdCBEdSBkYSBuaWNodCEKdW50IGF1c3N0cmFobHVuZwpGcmV1bmRsaWNoIGJpcyB6d2VyZ2lzY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTaGFyaWEgYXVmIEFid2VnZW4uLi4gKEFuYXRvbCwgMTcuIE9rdCAxOTk4LCAxOTozMDo0Myk6CkRlciBTYW5kdGlnZXIgYmVncnVlc3N0IE5lc2FqYSBtaXQ6IEljaCBzb2xsIERpciB2b24gU2hhcmlhIGF1c3JpY2h0ZW46IElDSApIQUJFIEtFSU5FTiBCQVJUICEhISEgamF3b2xsICEhISEhIQoKRGFzIGdpYnQgQWJ6dWcsIFNoYXJpYS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2hhcmlhIGF1ZiBBYndlZ2VuLi4uIChTaGFyaWEsIDE3LiBPa3QgMTk5OCwgMTk6MzE6MzIpOgp+IyEgcm49QW5hdG9sIHJ0PTkwODY0NTQ0MyByZz1zY2htYXJybgp+IyEgdGlkPTkwODY0NTQ0MwpQQUggISEgREFTIEhBVCBKRU1BTkQgR0VGQUVMU0NIVCAhISEKClNoYXJpYSBoYXQgbmVuIEJhcnQgIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTm9tZW4gZXN0IC4uLiAoQW5hdG9sLCAxOC4gT2t0IDE5OTgsIDA0OjEwOjA3KToKCltNb2VyZGVyOkdlaXN0IEplc3VzJ10gSXMgbWlyIGRvY2ggZWdhbCBOZXNhamEsIGljaCBnbGF1YmUgYW4gZGllCltNb2VyZGVyOkdlaXN0IEplc3VzJ10gV2llZGVyZ2VidXJ0IQoKT2gtb2ggOikKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnJlY2hlIFdhZWNodGVyaW5uZW4uLi4gOikgKE1pZXplLCAxOC4gT2t0IDE5OTgsIDExOjM3OjI4KToKaGlobywgZ3JhZGUgaW4gS2F0em1hbmR1IHBhc3NpZXJ0IC4uLgoKCkVpbmUgZmVsaW5pc2NoZSBXYWVjaHRlcmluIHNjaGxlaWNodCBoZXJlaW4uCkRpZSBmZWxpbmlzY2hlIFdhZWNodGVyaW4gc2FndDogQWxzbyB3aXJrbGljaCwgTWllemUsIGVpbmVuIEthdGVyIGFscyBIYXVzdGllcgpEaWUgZmVsaW5pc2NoZSBXYWVjaHRlcmluIHNhZ3Q6IHp1IGhhbHRlbiBpc3QgamEgc2Nob24gemllbWxpY2ggYmVzY2hldWVydC4KRGllIGZlbGluaXNjaGUgV2FlY2h0ZXJpbiBzYWd0OiBBYmVyIGRhbm4gYXVjaCBub2NoIGhpZXIgZGFtaXQgb2ZmZW4KRGllIGZlbGluaXNjaGUgV2FlY2h0ZXJpbiBzYWd0OiBoZXJ1bXp1bGF1ZmVuIGlzdCB3aXJrbGljaCBkcmVpc3QuCgoKTWllemUsIGdyaW5zdCBpbW1lcm5vY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZW5hY2UgdW5kIGRpZSBGcmF1ZW4gKExlaWJuaXosIDE4LiBPa3QgMTk5OCwgMTc6MTQ6MTcpOgpEZWluIEZyZXVuZCBNZW5hY2UgdGVpbHQgRGlyIG1pdDogaWNoIGhhYiBzb3ZpZWwgbGllYmUgaW4gbWVpbmVtIEhlcnplbiwgZGFzCkRlaW4gRnJldW5kIE1lbmFjZSB0ZWlsdCBEaXIgbWl0OiByZWljaHQgZnVlciB2aWVsZSBGcmF1ZW4sIExlaWJuaXoKKmtpY2hlcioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNTIChKaWRkdSwgMTguIE9rdCAxOTk4LCAxOTo1MTozMik6CkNhaXRTaXRoIHRlaWx0IERpciBtaXQ6IG1ldHplbCBkb2NoIG1hbCBkaWUgbmV0dGVuIFVuaXB1bWJhcyBkb3J0IDopIGJpdHRlCkR1IHRlaWxzdCBDYWl0c2l0aCBtaXQ6IHN0aXJiIHNlbGJlciEKQ2FpdFNpdGggdGVpbHQgRGlyIG1pdDogaGV5IGljaCBiaW4gbmljaHQgZ2VzdG9yYmVuCkNhaXRTaXRoIHRlaWx0IERpciBtaXQ6IG51ciBkaWUgdHJlZmZlbiBnYW56IG5ldHQgOikKRHUgdGVpbHN0IENhaXRzaXRoIG1pdDogamEgZHUgaGFzdCBhbmRlcmUgc3RlcmJlbiBsYXNzZW4KQ2FpdFNpdGggdGVpbHQgRGlyIG1pdDogYW0gdW5pbXB1bWJhIG5pZW1hbmRlTiEKQ2FpdFNpdGggdGVpbHQgRGlyIG1pdDogc2llaCBkaWUgaGVyYXVzZm9yZGVydW5nIQpEdSB0ZWlsc3QgQ2FpdHNpdGggbWl0OiBnZWggdHdpbnNlbiBuZXJ2ZW4hCkNhaXRTaXRoIHRlaWx0IERpciBtaXQ6IEFubmFwdW5hIHJ1ZnQ6IFN0aXJiIER1IEFyc2NoIQpbVG9kOkxhcnNdIEFubmFwdW5hIGhhdCBnZXJhZGUgQ2FpdHNpdGggdW1nZWJyYWNodC4KW1RvZDpBbm5hcHVuYV0gRXJ3aXNjaHQhCgpKaWRkdSwgZ3JpbnNlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZnJlY2hlIFdhZWNodGVyaW5uZW4uLi4gOikgKFBhcmFjZWxzdXMsIDE4LiBPa3QgMTk5OCwgMjE6NTA6MDUpOgp+IyEgcm49TWllemUgcnQ9OTA4NzAzNDQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA4NzAzNDQ4ClRqYSwgaXJnZW5kd2llIGtvbm50ZSBpY2ggbWlyIG5pY2h0IHZlcmtuZWlmZW4sIGRhcyBlaW56dWJhdWVuIF06LT4KClBhcmEqLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VnaGllciAic3RlaGVuIi4uLiAoQW5hdG9sLCAxOC4gT2t0IDE5OTgsIDIyOjA1OjE5KToKRHUgYmVmaW5kZXN0IERpY2ggYW0gRW5kZSBlaW5lcyBXYWxkd2VnZXMgZHVyY2ggZGVuCkdyaW1tc3dhbGQuIEltIFdlc3RlbiBrYW5uc3QgRHUgZWluZSBMaWNodHVuZyBlcmtlbm5lbi4KRXMgZ2lidCB2aWVsZSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBoaWxmZSwgcmF1cywgd2VzdGVuLCBub3RhdXNnYW5nLCBhcmdoLApuaWNodHN3aWV3ZWcsIGVnYWx3b2hpbiwgd2VpdHdlZywgaWNod2lsbGhpZXJ3ZWcsIG1hYWFtaWlpaWlpIHVuZAppY2h3aWxsaGllcnJhdXMuCltNZXR6ZWx0ZWFtOkdlZmx1ZWdlbF0gU2Nob2tvIGlzdCBlaW4gemllbWxpY2ggYXJyb2dhbnRlcyBBcnNjaC4KRGllIExlaWNoZSBlaW5lcyBXZWdoaWVycy4KW01ldHplbHRlYW06R2VmbHVlZ2VsXSBLaXR6ZWxoZXhlIFplcGh5ciAoS2FtcGZodWhuLCB2b3JzaW50Zmx1dGxpY2gpLgpbTWV0emVsdGVhbTpHZWZsdWVnZWxdIFRlZGR5IGdvZXMgdG8gPz8/IChDaGFvc2dhbnMsIHRvbHBhdHNjaGlnKS4KW0RyYWNoZW50b2V0ZXI6XSBTdGluZyBpc3QgbWl0dGVuIGF1ZiBkZXIgU3Rpcm4gd2Vpc3MtaGVsbGdyYXUgZ2VwdW5rdGV0LgpLZXkgaXN0IG1pdHRlbiBhdWYgZGVyIFN0aXJuIGxpbGEtcm90IGdlc3RyZWlmdC4KW01ldHplbHRlYW06R2VmbHVlZ2VsXSBUdWZmaSBkZXIgSGFtc3RlcnRyYWVnZXIgKEthbXBmdHJ1dGhhaG4sIGJsdXRlbmQpLgpbTWV0emVsdGVhbTpHZWZsdWVnZWxdIE5hY2h0d2luZCBzaW5ndDogJ1NldCBtZSBhZmxhbWUgYW5kIGNhc3QgbWUgZnJlZS4nLgpUdXJ0bGVwcmluY2VzcyBOZXNhamEgaXN0IGF1ZiBkZXIgU3VjaGUgbmFjaCBkZXIgdmVybG9yZW5nZWdhbmdlbmVuIFJvbWFudGlrLgpbTWV0emVsdGVhbTpHZWZsdWVnZWxdIFNjaG9rb3MgVGl0ZWwgaXN0IChjKSBSaW5nb3IgKEd1bW1pLUFkbGVyLCB6YWVoKS4KW01ldHplbHRlYW06R2VmbHVlZ2VsXSBUaG9ybiBOb3Zhc3Rvcm0gKFN0dXJtdm9nZWwsIGJlZ3JlaWZlbmQpLgoKKk5hdHVlcmxpY2gqIGthbm4gbWFuIGRlbiBXZWdoaWVyICJzdGVoZW4iLgpBbmF0b2wgOm8pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIGJlaW0gUGFyYWdhc3QuLi4gOi1cIChBbmF0b2wsIDE5LiBPa3QgMTk5OCwgMDA6MjA6MTYpOgpbQmVpbGVpZDpUZWRkeV0gSmEsIGFiZXIgaGllciBrb21tdCBlciB3ZW5pZ3N0ZW5zIG5jaWh0IHJlaW4KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgVGVkZHkgdW1nZWJyYWNodC4KClRyYXVyaWcgYWJlciB3YWhyLi4uCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIGJlaW0gUGFyYWdhc3QuLi4gOi1cIChaaWxsdXMsIDE5LiBPa3QgMTk5OCwgMDA6MjY6MjQpOgp+IyEgcm49QW5hdG9sIHJ0PTkwODc0OTIxNiByZz1zY2htYXJybgp+IyEgdGlkPTkwODc0OTIxNgpEYXMgd2VyayBkZXMgUGFyYS1HYXN0ZXMgOykgPwpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBTaGFyaWEgdW1nZWJyYWNodC4KW1RvZDpMYXJzXSA8MDA6MTc6NDU+CltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIE5hY2h0d2luZApbVG9kOkxhcnNdIHVtZ2VicmFjaHQuIDwwMDoxODoyNz4KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgVGVkZHkgdW1nZWJyYWNodC4KW1RvZDpMYXJzXSA8MDA6MTk6NDQ+CltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIFNjaG9rbyB1bWdlYnJhY2h0LgpbVG9kOkxhcnNdIDwwMDoyMDoxMD4KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgR3JleXN0b25lCltUb2Q6TGFyc10gdW1nZWJyYWNodC4gPDAwOjIxOjQ0PgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBOYWlyb2xmCltUb2Q6TGFyc10gdW1nZWJyYWNodC4gPDAwOjIyOjQ5PgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBOYWNodHdpbmQKW1RvZDpMYXJzXSB1bWdlYnJhY2h0LiA8MDA6MjQ6MTE+CgppbnRlcmVzc2FudC4uLi4KCnppbGx1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmVpZ2xpbmcgKE1vcmdvdGgsIDE5LiBPa3QgMTk5OCwgMDk6NDY6MDMpOgpOYWlyb2xmICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClNoYXJpYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEZWluZSBGcmV1bmRpbiBTaGFyaWEga251ZGRlbHQgRGljaCBtaXQgZWluZW0gaGVpbGlnZW4gR3JpbnNlbiBhdXMgZGVyIEZlcm5lLgpEZWluIEZyZXVuZCBOYWlyb2xmIGtudWRkZWx0IERpY2ggbWl0IGVpbmVtIGthZXNpZ2VuIEdyaW5zZW4gYXVzIGRlciBGZXJuZS4KRGllIEh5ZHJhIGVyaGVidCBzaWNoIGF1cyBkZW0gVGFsIGRlciBMdXBpbmVuLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClllc3MgOikgKEFuYWNyaW9uLCAxOS4gT2t0IDE5OTgsIDE5OjAxOjQ0KToKRWluZSBoZXJybGljaGUgV2Flcm1lIGdlaHQgdm9uIERlaW5lbSBBbXVsZXR0IGF1cywgdW5kIER1IGZ1ZWhsc3QKRGljaCBwcmltYS4KJSBTY29yZTogMTUxLzIyNi8xMjUxICBHaWZ0Ok4gIHRlbGVwb3J0KDEwMCkKRGVpbmUgU2NodWhlIGdsdWVoZW4ga3VyeiBhdWYgdW5kIGhlaWxlbiBEaWNoIGVpbiB3ZW5pZy4KJSBTY29yZTogMjEwLzIyNi8xMjUxICBHaWZ0Ok4gIHRlbGVwb3J0KDEwMCkKWzxNYXN0ZVI+OktleV0gbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgouLi4gbmEgd2VubiBkYXMga2VpbiBTZXJ2aWNlIGlzdCA6KSkKCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWWVzcyA6KSAoTm92YXN0b3JtLCAxOS4gT2t0IDE5OTgsIDE5OjAzOjI3KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTkwODgxNjUwNCByZz1zY2htYXJybgp+IyEgdGlkPTkwODgxNjUwNApBbmFjcmlvbiBidWdndCwga2FubiBpaG0gYml0dGUgbWFsIHdlciBoZWxmZW4gPyA6KQoKQWNoamEuLi4gaGllciBub2NoIGt1cnogc28gZWluZSBBcnQgRkxXIDstKQpSdWJyaWsgNDA6IHNjaG1hcnJuLCBBcnRpa2VsOiAzNiB2b24gMzYKWWVzcyA6KSAoQW5hY3Jpb24sIDE5LiBPa3QgMTk5OCwgMTk6MDE6NDQpOgoKRWluZSBoZXJybGljaGUgV2Flcm1lIGdlaHQgdm9uIERlaW5lbSBBbXVsZXR0IGF1cywgdW5kIER1IGZ1ZWhsc3QKRGljaCBwcmltYS4KJSBTY29yZTogMTUxLzIyNi8xMjUxICBHaWZ0Ok4gIHRlbGVwb3J0KDEwMCkKRGVpbmUgU2NodWhlIGdsdWVoZW4ga3VyeiBhdWYgdW5kIGhlaWxlbiBEaWNoIGVpbiB3ZW5pZy4KJSBTY29yZTogMjEwLzIyNi8xMjUxICBHaWZ0Ok4gIHRlbGVwb3J0KDEwMCkKWzxNYXN0ZVI+OktleV0gbAoKLi4uIG5hIHdlbm4gZGFzIGtlaW4gU2VydmljZSBpc3QgOikpCgpBbmFjKgpbVG9kOkxhcnNdIEVpbiBVbmZhbGwgaW0gSG9jaGdlYmlyZ2UgaGF0IGdlcmFkZSBBbmFjcmlvbiB1bWdlYnJhY2h0LgpbVG9kOkVpbiBVbmZhbGwgaW0gSG9jaGdlYmlyZ2VdIFdlciB2aWVsIHdhZ3QsIGthbm4gYXVjaCB2aWVsIHZlcmxpZXJlbi4uLgoKICAgTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3Li4uIChBbmF0b2wsIDE5LiBPa3QgMTk5OCwgMjI6MTI6NDEpOgpbU2VoZXI6UmlkZGxlcl0gYXJnCltUb2Q6TGFyc10gRWluIEVpc3NjaGVtZW4gaGF0IGdlcmFkZSBSaWRkbGVyIHVtZ2VicmFjaHQuCgpIYWV0dGUgZGFzICJhcmdoIiBvZGVyICJhcmdsIiB3ZXJkZW4gc29sbGVuPyA6KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIChQYXJhY2Vsc3VzLCAxOS4gT2t0IDE5OTgsIDIzOjAwOjA0KToKW0FsbGdlbWVpbjpBbHBoYV0gV2FzIGJlZGV1dGVuIGFscGhhIHVuZCBiZXRhPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGlsZmUgKFJhbnRhbnBsYW4sIDIwLiBPa3QgMTk5OCwgMTI6NTA6NTYpOgoKW3NdIEdhc3QyIGRpZSBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXJpbiAtIE1lbnNjaCAtIFtiLCByb3V0ZSBkZSBUcmV2ZXNdCgpEaWUgS2FlbXBmZXIgaGFiZW4gaWhyZW4gZWlnZW5lbiBTZXJ2ZXIuLi4KCk9lKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQnJhdW5zY2h3ZWlnZXIgOikgKENyaXR0ZXIsIDIwLiBPa3QgMTk5OCwgMTc6MDg6NTMpOgpCcmF1bnNjaHdlaWdlciB1bnRlciBzaWNoIDopKSkKClFpdGVzcyB0ZWlsdCBEaXIgbWl0OiB3byBob2Nrc3RlIGRlbm4gPwpEdSB0ZWlsc3QgUWl0ZXNzIG1pdDogb2JlcmVyIGNpcHBvb2wKUWl0ZXNzIHRlaWx0IERpciBtaXQ6IGFjaGphLgpEdSB0ZWlsc3QgUWl0ZXNzIG1pdDogd28gc3RlY2tzdSBkZW5uClFpdGVzcyB0ZWlsdCBEaXIgbWl0OiBpbSB1bnRlcmVuIGNpcCBwb29sIGF1ZiBkZXIgZW1wb3JlCkR1IHRlaWxzdCBRaXRlc3MgbWl0OiBobW1tIDopIGtvbW1zdSByYXVmPyEgOikKUWl0ZXNzIHRlaWx0IERpciBtaXQ6IHVuZCBkYW5uID8KRHUgdGVpbHN0IFFpdGVzcyBtaXQ6IHdpbGRlciBzZXggPyEgOikpKSkKUWl0ZXNzIHRlaWx0IERpciBtaXQ6IGRhcyBpc24gYXJndW1lbnQuIGljaCBlaWxlIC0gaWNoIGZsaWVnZS4uLgpRaXRlc3MgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCltBYmVudGV1ZXI6PFF1ZXN0Pl0gQWxzaGFqYSBoYXQgZ2VyYWRlIGVpbiBBYmVudGV1ZXIgYmVzdGFuZGVuOiBOaWJlbHVuZ2VuCkRpZSBSaGVpbnRvZWNodGVyIHJ1ZmVuIDogJ0Fsc2hhamEgaGF0IE5pYmVsaGVpbSB2b24gQWxiZXJpY2ggYmVmcmVpdCAhJwpRaXRlc3MgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKUWl0ZXNzIHJ1ZnQ6IENSSVRURVIgR09FUyBIQUNLRkxFSVNDSCAhISEKQy4gd3Vzc3RlIGdhcm5ldCBkYXMgZXIgU09MQ0ggZWluZSB3aXJrdW5nIGF1ZiBRaXRlc3MgaGF0IDopCk1hbCBndWNrZW4gd2FzIEZlc3RpbiBzYWNodCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJyYXVuc2Nod2VpZ2VyIDopIChRaXRlc3MsIDIwLiBPa3QgMTk5OCwgMTc6MTA6MTkpOgp+IyEgcm49Q3JpdHRlciBydD05MDg4OTYxMzMgcmc9c2NobWFycm4KfiMhIHRpZD05MDg4OTYxMzMKV0FBQUFIICEgRHUgRGVudW56aWFudCEgVmVycmFldGVyICEKClFJKiogdW0gaWhyZW4gZ3V0ZW4gUnVmIGJlbXVlaHQuIEFlaG0sIG9kZXIgc28uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQnJhdW5zY2h3ZWlnZXIgOikgKFRlZGR5LCAyMC4gT2t0IDE5OTgsIDE3OjEwOjM1KToKfiMhIHJuPVFpdGVzcyBydD05MDg4OTYyMTkgcmc9c2NobWFycm4KfiMhIHRpZD05MDg4OTYxMzMKR3V0ZW4gV2FzPwoKVGVkZHksIGlycml0aWVydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2x1ZWNrIGdlaGFidCEgKEppZGR1LCAyMS4gT2t0IDE5OTgsIDAwOjEwOjI1KToKV09XISEhCgpVZWJlcmdlaGUgQXJ0aWtlbCAxMCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxMSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxMiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxMyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgogICAuLi4KVWViZXJnZWhlIEFydGlrZWwgNTMgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNTQgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNTUgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KCkppZGR1LCBmcm9oIGRpZXNlIDQ1IGFydGlrZWwgdWViZXJzcHVuZ2VuIHp1IGhhYmVuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmluIGljaCBmcm9oLCBvYiBkZXIgVGFybnVuZyA7LSkgKFByeWRlLCAyMS4gT2t0IDE5OTgsIDA5OjMwOjQ5KToKRHUgc2NobmVpZGVzdCBkaWUgSGFycHlpZSBtaXQgZGVyIEVpZXJzY2hhbGUsIHdvcmF1ZiBldHdhcyBCbHV0IGluIGRpZSBTY2hhbGUKbGFldWZ0LiBadW0gR2x1ZWNrIHRyYWVnc3QgRHUgZGllIEZlZGVybiBhbHMgVGFybnVuZywgc29uc3QgaGFldHRlIERpY2ggZGllCkhhcnB5aWUgd29tb2VnbGljaCBub2NoIGFuZ2VncmlmZmVuLiBTbyBzY2hhdXQgc2llIG51ciB2ZXJ3aXJydCBpbiBkZXIgR2VnZW5kCnVtaGVyLgogIC4uLi5ub3JtYWwvPz8/Li4uLi4uLi4uIEhhcnB5aWUuLi4uLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIGdldHJvZmZlbgpEaWUgSGFycHlpZSBzcHVja3QgZWluZW4ga2xlaW5lbiBGZXVlcmJhbGwgaW4gRGVpbmUgUmljaHR1bmcuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RlaW5iZWlzc2VyYV5IXkh1bGV0dCAoTm92YXN0b3JtLCAyMS4gT2t0IDE5OTgsIDExOjE1OjQ5KToKRWluIFN0ZWluYmVpc3NlciBrb21tdCBhbi4KUGxvZXR6bGljaCBsZXVjaHRldCBkYXMgRmV1ZXJhbXVsZXR0IGdyZWxsIGF1Zi4gRHUgd2lyc3Qgdm9uIGVpbmVyIGxldWNodGVuZGVuCkF1cmEgZWluZ2VodWVsbHQuIEFscyBkaWUgQXVyYSBlcmxpc2NodCwgZnVlaGxzdCBkdSBkaWNoIHNlaHIgdmllbCBiZXNzZXIuCgpJbnRlcmVzc2FudC4uLiBTTyBnZWh0IGRhcyBhbHNvCiAgICAgTm92YSwgbGVybmVuZCA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBtaWNhQG9zYiAoTm92YXN0b3JtLCAyMS4gT2t0IDE5OTgsIDE0OjQwOjA0KToKfiMhIHJuPUNyaXR0ZXIgcnQ9OTA4OTczNTM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA4OTczNTM2CkhBRUggPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbGluZSwgMjEuIE9rdCAxOTk4LCAxNDo0Njo1Nyk6CgpbU2VoZXI6THlyYV0gR2lidCBlcyBQYXJhLUR1bmtlbGVsZmVuPyA8MTQ6MjY6NTQ+CltTZWhlcjpGcm9naHVudGVyXSBqdXBzIDwxNDoyNzowNz4KW1NlaGVyOk5vbm5lXSBnZWggbmFjaHNjaGF1ZW4gKC1UKykgPDE0OjI3OjEzPgpbU2VoZXI6THlyYV0gSG0sIGRpZSBub3JtYWxlbiBtYWNoZW4gbWljaCBqYSBzY2hvbiBiYWxkIGFsbGUuIFdpZSBzaW5kIGRpZQpbU2VoZXI6THlyYV0gZGFubiBpbiBwYXJhPyA8MTQ6Mjc6MzE+CltTZWhlcjpOb25uZV0gYmVzdGltbXQgc2Nod2FlY2hlciA7KSA8MTQ6Mjc6NDQ+CltTZWhlcjpNZXNrb25vXSBsZWljaHRlciAqbGFjaCogPDE0OjI3OjQ2PgpbU2VoZXI6THlyYV0gV2FzIHNvbGxzOiB3YXIgaGV1dGUgbm9jaCBuaWNodCBnZXN0b3JiZW4gPDE0OjI3OjUyPgpbU2VoZXI6RnJvZ2h1bnRlciBraWNoZXJ0LiA8MTQ6Mjc6NTQ+XQpbU2VoZXI6VHN1bmFtaSBkZW5rdC4uemFwIGx5cmEgPDE0OjI4OjA2Pl0KW1NlaGVyOlBsb3RpbiBncmluc3QgPDE0OjI4OjEyPl0KLi4uCltTZWhlcjpMeXJhXSBJY2ggbGFzc2UgZXMgd29obCBkb2NoIG1hbCBlcnN0LiBJY2ggc3RlaGUgamEga2VpbmUgMyBLYW1wZnJ1bmRlbgpbU2VoZXI6THlyYV0gZHVyY2ggPDE0OjM5OjM5PgouLgpbVG9kOkxhcnNdIEVpbiBOZ2hvZyBoYXQgZ2VyYWRlIEx5cmEgdW1nZWJyYWNodC4KW0JlaWxlaWQ6Q29sb3NzdXNdIGJlaWxlaWQKW0JlaWxlaWQ6RG90dGVyYmFydF0gZGllIGdlZ2VuZCBpc3QgYXVjaCBuaWNodCBiZXNzZXIgOigKW0JlaWxlaWQ6QnJhbmRpcl0gZGFzIHdhciB3b2hsIGRpZTQuIEthbXBmcnVuZGUgOigKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFdpbSwgMjEuIE9rdCAxOTk4LCAxNTozMToxMik6CgpbU2VoZXI6VHVmZmldIGFsaW5lIG1hY2h0IGRpZSBoeWRyYT8gOikKW1NlaGVyOlNhcGhpcmFdIGplcCA7KQpbU2VoZXI6U25pYnJpbF0gZ2xhdWJpY2ggbmljaHQKW1NlaGVyOkFsaW5lXSBzaWUgZWhlciBtaWNoCltUb2Q6TGFyc10gRWluZSBIeWRyYSBoYXQgZ2VyYWRlIEFsaW5lIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBIeWRyYV0gaHNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzCgpbU2VoZXI6TG9sbGldIGh5ZHJhIDogYWxpbmUgLS0+IDEgOiAwLi4uIG1laW4gYWxsZXJoZXJ6bGljaHN0ZXMgQmVpbGVpZAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyB6dW0geHRlbiAoTmViLCAyMS4gT2t0IDE5OTgsIDIxOjM5OjE5KToKU2x5Zm94IHRlaWx0IERpciBtaXQ6IGthbm5zdGUga3VyeiBiZWltIFNlZWJhZXIgaGVsZmVuPyBXZW5uIGljaCB0YW5rZSwgaXN0ClNseWZveCB0ZWlsdCBEaXIgbWl0OiBkZXIgYXVjaCB3aWVkZXIgZml0IDooCiAuLi4uLi4uCjIgU2VrdW5kZW4gdmVyZ2VoZW4uLi4uCiAuLi4uLi4KW1RvZDpMYXJzXSBVZWJlcmhhc3RldGUgRWlsZSBoYXQgZ2VyYWRlIFNseWZveCB1bWdlYnJhY2h0LgpbVG9kOlVlYmVyaGFzdGV0ZSBFaWxlXSBXYXJ1bSBoYXR0ZXN0IER1IGVzIG51ciBzbyBlaWxpZz8hICpTZXVmeioKClVuZCBkZXN3ZWdlbiBsaWViZXIgZ2FyIG5pY2h0IHRhbmtlbiBnZWhlbj8KCk5lYiBtbW1tbWh0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmxlaXNzaWcgb2RlciBEcnVlY2tlYmVyZ2VyPz8gKE1vcmdvdGgsIDIxLiBPa3QgMTk5OCwgMjE6NTY6NDYpOgpSb2NodXMgdGVpbHQgRGlyIG1pdDogZGFzIHByb2dyYW1tIGlzdCBnZW5pYWwgOikgWzIxOjU0XQpEdSB0ZWlsc3QgUm9jaHVzIG1pdDogYWJlciB3YXMgaXN0IG1pdCBkZW0gZnRwLWRhZW1vbgpSb2NodXMgdGVpbHQgRGlyIG1pdDogaWNoIGthbm4gbmNpaHQgYWxsZXMgZ2xlaWNoemVpdGlnIFsyMTo1NV0KUm9jaHVzICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKTW9yZ290aCwgZ3J1ZWJlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmxlaXNzaWcgb2RlciBEcnVlY2tlYmVyZ2VyPz8gKEFuYXRvbCwgMjEuIE9rdCAxOTk4LCAyMTo1Nzo1MCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkwODk5OTgwNiByZz1zY2htYXJybgp+IyEgdGlkPTkwODk5OTgwNgpSb2NodXMgaGF1dCBfZ3J1bmRzYWV0emxpY2hfIGt1cnogdm9yIDIyLjAwIFVociBhYi4KCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhtcGYgKFRlZGR5LCAyMS4gT2t0IDE5OTgsIDIyOjQ2OjA3KToKeHh4IHRlaWx0IERpciBtaXQ6IFRFREREREREREREWSBXRVJEIEpFWiBOSUNIIEhPRUZMSUNIIDspKSAgCgpXaWUgZGFyZiBpY2ggZGFzIGRlbm4gamV6dCBtaXNzdmVyc3RlaGVuPwoKVGVkZHksIHd1ZXJkZSBuaWUgaGVmbGljaCB3ZXJkZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoYSAoVHdpbnNlbiwgMjEuIE9rdCAxOTk4LCAyMzoxMzozOSk6CmxhZXV0ZSBnbG9ja2UKRHUgbGFldXRlc3QgZGllIEdsb2NrZS4gRWluIGhlbGxlciBUb24gc2NoYWxsdCB3ZWl0IHVlYmVyIGRhcyBNZWVyIGhpbmF1cy4KVmlvbGEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCkRhcyBtYWNoIGljaCBhYiBqZXp0IG9lZnRlciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFydGlrZWwgT3phcGZ0aXMgLi4uIChBbmF0b2wsIDIyLiBPa3QgMTk5OCwgMTU6MDI6MDIpOgp+IyEgcm49S2FyaXMgcnQ9OTA5MDYxMDg0IHJnPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgdGlkPTkwOTA2MTA4NApTb2xhbmdlIER1IG1pciBuaWNodCB1bnRlcnN0ZWxsc3QsIGRpZSBBZWhubGljaGtlaXQgZGVzIE5hbWVucyAiT3phcGZ0aXMiCm1pdCBkZW0gZWluZXMgYmVyZWl0cyBleGlzdGllcmVuZGVuIENoYW9zLURhZW1vbnMgYmVhYnNpY2h0aWd0IHp1IGhhYmVuLi4uCgpBbmF0b2wgOm8pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCBPemFwZnRpcyAuLi4gKFBhZHJlaWMsIDIyLiBPa3QgMTk5OCwgMTc6MDQ6MzkpOgp+IyEgb249S2FyaXMgb3Q9OTA5MDYxMDg0IG9nPWdpbGRlbi5iaWVyc2NodWV0dGxlcgpEaWUgSWRlZSBpcyBqYSBudSBuaWNoIHZvbiBtaXIgLi4uIGFiZXIgaWNoIGZpbmQgc2llIHRyb3R6ZGVtIEtsYXNzZSwgQW5hdG9sCjspCkVzIHdpcmQgWmVpdCBmdWVyIGRlbiBCaWVyc2NodWV0dGxlci1EYWVtb24gJ096YXBmdGlzJy4gCkRhbWl0IGtvZW5udGUgbWFuIGRpZSBCaWVyc2NodWV0dGxlciBldHdhcyBjaGFvdGlzY2hlciBnZXN0YWx0ZW4sICBpaG5lbiBtZWhyCgpLYW1wZmtyYWZ0IGdlYmVuIHVuZCBnbGVpY2ggbm9jaCB2aWVsIG1laHIgU3Bhc3MgaGFiZW4uCgpLYXJpcyAtPiBTY2htYXJybgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIG11c3N0IG1hbCBzZWluIChUd2luc2VuLCAyMi4gT2t0IDE5OTgsIDIxOjM2OjQ5KToKTW90aGVyIHB1dCBoZXIgbGl0dGxlIGRhdWdodGVyIGZpZnRlZW4gbWludXRlcyB1bmRlciB3YXRlciBub3QgdG8gbWFrZSBoZXIgYW55CnRyb3VibGVzIGp1c3QgdG8gc2VlIHRoZSBmdW5ueSBidWJibGVzLgoKVHdpbmdvIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgbWFuIHNvIGFsbGVzIGZpbmRldC4uLiAoU2lsdmFuYSwgMjIuIE9rdCAxOTk4LCAyMjo1NDo0Nik6CkFsc28sIGxpZWJlIFphdWJlcmVyLCBsZWd0IEV1Y2ggbWFsIHZlcm51ZW5mdGlnZSBCZXNjaHJlaWJ1bmdlbiB6dS4KRGFzIGhpZXIgc2luZCBhbGxlcyBCdWdtZWxkdW5nZW4gYXVzIGRlbSBTY2hhdHRlbjoKCjE6ICB1bnQga29wZiAtPiBzb3dhcyBzaWVoc3QgZHUgZGEgbmljaHQhCjI6ICBkZXIgaGF0IG5lIGxvbmc6IGVpbiBXZWdoaWVyXG5FciB0cmFlZ3QgYmVpIHNpY2g6XG4gKHVzdykKMzogIG1pc3NpbmcgZGV0YWlsOiBkdXJjaG1lc3Nlcgo0OiBlcyB3YWVyZSBnZWlsIHdlbm4gZWluZW0gbm9zZnJldCB3aXR6ZSBlcnphZWhsZW4gd3VlcmRlLCB3ZW5uIG1hbiBoaWVyCnJ1bWlkbGV0LiBlcyBpc3QgbGFuZ3dlaWxpZwoKU3BlemllbGwgYmVpbSBsZXR6dGVuIGZyYWcgaWNoIG1pY2gsIHdhcyBkYXMgZnVlciBuZW4gU2NoYXR0ZW4gd2FyLi4uCgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJpbmdvci4uLiAoV29vZHksIDIyLiBPa3QgMTk5OCwgMjM6NDE6NDUpOgpEZWluIEZyZXVuZCBSaW5nb3IgdGVpbHQgRGlyIG1pdDogaWNoIGdlYiBtaWNoIGdlc2NobGFnZW4gLSBpY2ggZmx1ZWNodGUgdm9yCkRlaW4gRnJldW5kIFJpbmdvciB0ZWlsdCBEaXIgbWl0OiBlaW5lbSBCdWcgaW5zIEJldHQgOykKRGVpbiBGcmV1bmQgUmluZ29yIHRlaWx0IERpciBtaXQ6IHVudGVyc3RlaCBkaWNoIDopCgpJY2ggd3Vzc3RlIGVzLiBFciBpc3QgRE9DSCBzY2hpem9waHJlbi4KCgpXb29keSwga2FubiBqZWRlcnplaXQgYXVmaG9lcmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJpbmdvci4uLiAoTW9yZ290aCwgMjIuIE9rdCAxOTk4LCAyMzo0MjozMSk6Cn4jISBybj1Xb29keSBydD05MDkwOTI1MDUgcmc9c2NobWFycm4KfiMhIHRpZD05MDkwOTI1MDUKRHUgaGF0dGVzdCBtZWluZSBmcmFnZSBkYXp3aXNjaGVuIG5pY2h0OgpEdSB0ZWlsc3QgZGVpbmVuIEZyZXVuZGVuIG1pdDogZGFyZiBpY2ggZGFzIHBvc3RlbiA/Pz8KCk0qIGlzdCB1bnNjaHVsZGlnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJpbmdvci4uLiAoV29vZHksIDIyLiBPa3QgMTk5OCwgMjM6NDM6MzIpOgp+IyEgcm49TW9yZ290aCBydD05MDkwOTI1NTEgcmc9c2NobWFycm4KfiMhIHRpZD05MDkwOTI1MDUKVXBzYSA7KSAgV2FyIG1pciBrbGFyLCBkYXNzIGljaCBlaW4gZnJ1ZmUgbmljaHQgbWl0YmVrYW0sIGFiZXIKREVSIEluaGFsdCBtYWNodCBkaWUgU2FjaGUgbmF0dWVybGljaC4uLi4uIGludHJlc3NhbnQuIDopCgp3b29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcyBrbGFwcHQgZG9jaCEgKE1vcmdvdGgsIDIzLiBPa3QgMTk5OCwgMTM6MDk6NTApOgpbU2VoZXI6U2hhcmlhXSBjdQpbU2VoZXI6TW9yZ290aF0gc2l0aApbU2VoZXI6U2hhcmlhXSAuLi4gd2FyIGltIEFMIGludGVyZXNzYW50ZXIgYWxzIGhpZXIgLi4uCltTZWhlcjpTaGFyaWEgZ3JpbnN0IFJpa3VzIGFuLl0KW1NlaGVyOk1vcmdvdGggZ3JpbnN0XQpbU2VoZXI6Tm9ubmVdIGRhbm4gZ2VoIGRvY2ghClNoYXJpYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClphdWJlcmVyIDspIChQeXJkYWNvciwgMjMuIE9rdCAxOTk4LCAxNjozMTowMik6CkR1IHN0ZWhzdCBpbSBTZWUgZGVzIGV3aWdlbiBSZWdlbnMgdW5kIHN0YXVuc3QgZGllIExhbmRzY2hhZnQgYW4uIFZpZWwga2FubnN0CkR1IHZvbiBpaHIgbmljaHQgc2VoZW4sIGRlbm4gZGVyIFJlZ2VuIG5pbW10IERpciBkb2NoIGV0d2FzIGRpZSBTaWNodC4KV2VzdGxpY2ggdW5kIHN1ZWRsaWNoIGlzdCBkYXMgVWZlciBkZXV0bGljaCB6dSBzdGVpbCB1bSBhbiBMYW5kIHp1IGdlaGVuLCBpbQpOb3JkZW4gd2lyZCBkZXIgU2VlIGVyaGVibGljaCB0aWVmZXIgdW5kIGRlciBSZWdlbiBub2NoIGRpY2h0ZXIuIE51ciBvZXN0bGljaApzY2hlaW50IGVzIGZsYWNoZXIgenUgd2VyZGVuLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4gdW5kIG5vcmRlbi4KUGhseWFrZW4gZGVyIEhhZW5kbGVyLgpFaW4gQnJldHQuICgyKQpFaW4gWmFobiBkZXMgVW5nZWhldWVycyB2b20gU2VlIGRlcyBld2lnZW4gUmVnZW5zLiAoMikKPiBQaGx5YWtlbiBuaW1tdCBlaW4gQnJldHQuClBobHlha2VuIG5pbW10IGVpbmVuIFphaG4uClBobHlha2VuIG5pbW10IGVpbiBCcmV0dC4KUGhseWFrZW4gbmltbXQgZWluZW4gWmFobi4KUGhseWFrZW4gdmVyc2Nod2luZGV0IG1pdCBlaW5lbSBGaW5nZXJzY2huaXBwZW4uCgpEYXp1IG11c3MgaWNoIGpldHp0IG5peCBzYWdlbiBvZGVyID8/PwoKUHlyZGFjb3IgZ3JpbnN0IGltbWVyIG5vY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQbG9ldHpsaWNoLi4uIChNb3JvbiwgMjQuIE9rdCAxOTk4LCAwMjo0NTozOSk6CltBbGxnZW1laW46THVnXSBUaXR0ZW4hIFdlbm4gaWNoIGRhcyBlaW5tYWwgc28gcG9zdG1vZGVybmlzdGlzY2ggYXVzZHJ1ZWNrZW4KW0FsbGdlbWVpbjpMdWddIGthbm4uCkRBIC0gV0FTIFdBUiBEQVM/Pz8/Cgoqc2V1ZnoqIEx1ZyBoYWx0LgoKTW9yb24KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZXNjaGVua2U/IChCaWVyY2hlbiwgMjQuIE9rdCAxOTk4LCAxNDowMDoxNCk6CltTZWhlcjpCZWxnYXJpYWRdIHdpbGwgamVtYW5kIGVpbmVuIHZzPyB1ZWJlcnMgd29jaGVuZW5kZSBiaW4gaWNoIG5pY2h0IGRhCltTZWhlcjpUd2lzdF0gaGllcgoqKioqIEJlbGdhcmlhZCBncmVpZnQgVHdpc3QgYW4gKioqCgpWb24gZGVtIHd1ZXJkZSBpY2ggbml4IG5laG1lbiB3b2xsZW4gOikKCmdyaW5zZW5kLAogICAgICAgICAgQmllcmNoZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpZSBqZXR6dCA/IDopIChCdXp6Y3V0LCAyNC4gT2t0IDE5OTgsIDE4OjQxOjM4KToKQW1hbmRhIGRydWVja3QgRGljaCB6YWVydGxpY2ggYW4gc2ljaC4KSXJnZW5kd2llIGlzdCBlcyBuaWNodCBzbyBzY2hvZW4gd2llIHNvbnN0LgpBbWFuZGEgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KCipzY2huaWVmKiBkYXMgbWVyayBpY2ggbWlyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpaaXRhdCBkZXIgV29jaGUgenVtIFRoZW1hIEdpbGRlbjogKEFuYXRvbCwgMjQuIE9rdCAxOTk4LCAxODo1ODo1Mik6CiAgICAiaWNoIGRlbmtlIGdlcmFkZSBXRUlMIGljaCBtYWdpZXIgYmluIHVuZCBwcmFrdGlzY2ggbmljaHQgbWVociAKICAgIHNwaWVsZSBrYW5uIGljaCBkYXMgYmVzc2VyIGJldXJ0ZWlsZW4gYWxzIHNvIG1hbmNoZXIgYW5kZXJlLi4uIgoKbm8gbWVyY3kgOikKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VsdHNhbWVzIHVuZCBUb2RlIDstKSAoUHJ5ZGUsIDI0LiBPa3QgMTk5OCwgMTk6Mzk6MTgpOgpbVG9kOkxhcnNdIEVpbiBTY2hhZWZlcmh1bmQgaGF0IGdlcmFkZSBJZGVmaXggdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNhdHR5IGdvZXMgd2lsZCAhISEgKFphcm5peWEsIDI0LiBPa3QgMTk5OCwgMjA6NDM6NDcpOgpDYXR3ZWF6bGUgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IE11ZW5zdGVyLgpQYXNzaXYgc2VpdDogMDU6NDU6MzgKRWluZ2Vsb2dndCBzZWl0OiBTYW0sIDI0LiBPa3QgMTk5OCwgMTM6NDM6NDUKVm9sbGVyIE5hbWU6IENhdHdlYXpsZSB3aWxsIGFucyBnbG9iYWxlIE1lbW9yeQpSYXNzZTogV2Vpc2VyLCAgR2lsZGU6IEFiZW50ZXVyZXIsICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKTWFnaWVybGV2ZWw6IDU1IChXZWlzZXIpCkRhdHVtIGRlcyBlcnN0ZW4gTG9naW46IE1vbiwgMjYuIEFwciAxOTkzLCAxMzoyMDowMApCaXNoZXIgYmVyZWl0cyA0IG1hbCBnZXN0b3JiZW4KUmVnaW9uc21pdGFyYmVpdGVyIHZvbjogV3Vlc3RlLgoKRHUgdGVpbHN0IEFuYXRvbCBtaXQ6IGhhdCBKb2YgZWlnZW50bGljaCBjYXR0eXMgcGFzc3dvcnQ/Cj4gQW5hdG9sIHRlaWx0IERpciBtaXQ6IEdsYXViIGljaCBuaWNodCA6KQpBbmF0b2wgdGVpbHQgRGlyIG1pdDogQWJlciBDYXR3ZWF6bGUgd2lsbCB2ZXJtdXRsaWNoIGF1Y2ggbWFsIEdvdHQgd2VyZGVuIDpvKQoKClphcm5peWEsIGdydWViZWxuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClpXRVJHRSEgKFNvcmNlcmVyLCAyNC4gT2t0IDE5OTgsIDIzOjI3OjU4KToKIER1IGdyZWlmc3QgZGllIEhvcm5pc3NlIG1pdCBicmVubmVuZGVuIEhhZW5kZW4gYW4uCiAgRHUgdHJpZmZzdCBkaWUgSG9ybmlzc2UuCkRpZSBIb3JuaXNzZSBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW5lIExlaWNoZSB3aXJkIHZvbiBlaW5lbSBad2VyZyB2b2xsIEhpbmdlYnVuZyB2ZXJzcGVpc3QuCkVpbiBad2VyZyBuaW1tdCBlaW5lbiBIb3JuaXNzZW5zdGFjaGVsLgoKLi4uZGllIFp3ZXJnZSBzY2hlaW5lbiB3b2hsIGluIE5haHJ1bmdzbWl0dGVsLSB1bmQgV2FmZmVua25hcHBoZWl0IGdlcmF0ZW4genUKc2Vpbi4uLi4KClNvcmNlcmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaG1wZiAoS2FkYWJyYSwgMjUuIE9rdCAxOTk4LCAwMDoxMjoxNSk6Cn4jISBybj1UZWRkeSBydD05MDkwMDI3Njcgcmc9c2NobWFycm4KfiMhIHRpZD05MDkwMDI3NjcKS2FkYWJyYSBraWNoZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWml0YXQgZGVyIFdvY2hlIHp1bSBUaGVtYSBHaWxkZW46IChBbmF0b2wsIDI1LiBPa3QgMTk5OCwgMDM6MDQ6MzMpOgp+IyEgcm49QW5hdG9sIHJ0PTkwOTI0ODMzMiByZz1zY2htYXJybgp+IyEgdGlkPTkwOTI0ODMzMgpJY2ggdmVyZ2FzczogRGVyIE1hZ2llciB3b2xsdGUgbmljaHQsIGRhc3MgaWNoIGRpZXMgdmVyb2VmZmVudGxpY2hlLAp2ZXJzaWNoZXJ0ZSBtaXIgYWJlciwgZGFzcyBlciBuYXR1ZXJsaWNoIHZvbGwgenUgZGllc2VyIEF1c3NhZ2Ugc3RlaGUuCgpzdGlsbCBubyBtZXJjeSA6KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkYXMgS3JpZWdlcmRlbmttYWwgKE5lcmRhbmVsLCAyNS4gT2t0IDE5OTgsIDE1OjAzOjQyKToKRnVlcmNodGVybGljaGVyIEdlc3RhbmsgZXJmdWVsbHQgZGVuIFJhdW0uCkR1IG11c3N0IERpY2ggYmVpbmFoIHVlYmVyZ2ViZW4sIGFscyBlaW5lcyBLcmllZ3NkZW5rbWFscyBGdXJ6IGluIERlaW5lIE5hc2UKa3JpZWNodC4KRGVyIEZ1cnogcmllY2h0LCBhbHMgd3VlcmRlIGVpbiBLcmllZ3NkZW5rbWFsIGlubmVybGljaCB2ZXJmYXVsZW4uCgpuYWphLCB6dW0gR2x1ZWNrIGdpYnRzIEVudGZ1cnplciA7KQoKTmVyZGFuZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFoYSAoTGVpYm5peiwgMjUuIE9rdCAxOTk4LCAyMTo0MDo1OSk6CkR1IHNhZ3N0OiBncmF0dWxpZXJzdCBkdSBqZWRlbT8KJ3dpbGwtbmV0LWdlbmFubnQtd2VyZGVuJ3NhZ3Q6IGplcHAKJ3dpbGwtbmV0LWdlbmFubnQtd2VyZGVuJ3NhZ3Q6IGF1c3NlciBsdWcKRHUgc2Fnc3Q6IHdhcnVtIG5ldCBsdWc/Cid3aWxsLW5ldC1nZW5hbm50LXdlcmRlbidzYWd0OiBpcyBuZW4gYXNzc2kKJ3dpbGwtbmV0LWdlbmFubnQtd2VyZGVuJ3NhZ3Q6IGlzIG5lbiBhc3NzaQoqa2ljaGVyKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FydW0gbXBhID8gKE11YWRpYiwgMjYuIE9rdCAxOTk4LCAxMzo0MjoxNSk6CmhpLAoKa2FubiBtaXIgamVtYW5kIHNhZ2VuIHdhcyBpY2ggd2VzaGFsYiBpbiBkciBtcGEgbGVzZW4gc29sbHRlID8KCmJ5YQoKbXVhZGliICpsYW5nd2VpbHQgc2ljaCBncmFkZSB1bmQgZG9lbnN0IGRydW0gcnVuKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaXJnZW5kd2llIGJla29tbWUgaWNoIGdyYWRlIGtvbXBsZXhlIC4uIChKYXNvbnJpZ2lkLCAyNi4gT2t0IDE5OTgsIDE0OjIzOjUxKToKW01vZXJkZXI6R2Vpc3QgZWluZXMgUmllc2VuXSBEYWJlaSB3YXIgRWluIEZyb3NjaCBkb2NoIHNvb29vIGtsZWluIQoKS29taXNjaCwgaWNoIGhhYmUgZGVuIHVuZ2Vmcm9zY2h0IGdlbWFjaHQgdW5kIG1pY2ggaGFsYiB0b3RnZXRhbmt0IDopCgpKYXNvbiwgd2lyZCB3b2hsIGxhbmdzYW0gYWx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IGJ1bWlzIChHcmltbWJvcm4sIDI3LiBPa3QgMTk5OCwgMDA6NDY6NDcpOgp+IyEgb249R3JpbW1ib3JuIG90PTkwOTQ0NTU5NyBvZz1iYWxhbmNlCn4jISBybj1UZWRkeSBydD05MDk0NDU1NDEgcmc9YmFsYW5jZQp+IyEgdGlkPTkwODg2NjQ3NwpOZWluLCBzYWUgZmFzZWxuLCBTYWUgb252ZXJzY2hhZW10ZXIgTG9lbW1lbCwgU2FlIQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBpZGVudGlmaXppZXJlbiBkZXIga2FlbXBmZXIgKFNjaG9rbywgMjcuIE9rdCAxOTk4LCAxMzoyNjo1Myk6Cn4jISBvbj1TY2hva28gb3Q9OTA5NDkxMTU5IG9nPWdpbGRlbi5hYmVudGV1cmVyCn4jISBybj1Ib2JvIHJ0PTkwOTQ5MTAzMSByZz1naWxkZW4uYWJlbnRldXJlcgp+IyEgdGlkPTkwOTQ4NjQ0MApGcmFnIERlaW5lbiBad2VpdG1hbm4sIGRlciBicmluZ3QgYmVzdGltbXQgYXVjaCBnZXJuZSBBbnNjaGF1dW5nc21hdGVyaWFsIG1pdAppbnMgQmV0dC4uLiBhZWhoIC4uLiAtPiBzY2htYXJybiA7KSkKClNjaG9rbyAoa3VzY2hlbGlnKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogaWRlbnRpZml6aWVyZW4gZGVyIGthZW1wZmVyIChIb2JvLCAyNy4gT2t0IDE5OTgsIDEzOjI3OjQ5KToKfiMhIHJuPVNjaG9rbyBydD05MDk0OTEyMTMgcmc9c2NobWFycm4KfiMhIHRpZD05MDk0ODY0NDAKQWVoaCwgYWJnZXJpc3NlbmUgR2xpZWRlciwgYmx1dHZlcnNjaG1pZXJ0ZSBXYWZmZW4uLi4gCk5peCBkYSwgZGllIEFyYmVpdCB3aXJkIHZvciBkZXIgdHVlciBnZWxhc3NlbiEKCiAgSG9ibwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogaWRlbnRpZml6aWVyZW4gZGVyIGthZW1wZmVyIChCb2luZywgMjcuIE9rdCAxOTk4LCAxNDo1MjoyNik6Cn4jISBvbj1Ib2JvIG90PTkwOTQ5MTAzMSBvZz1naWxkZW4uYWJlbnRldXJlcgp+IyEgcm49U2Nob2tvIHJ0PTkwOTQ5MDg5MyByZz1naWxkZW4uYWJlbnRldXJlcgp+IyEgdGlkPTkwOTQ4NjQ0MApXZXIga2VubnQgc2ljaCBiZWkgZGVuIEthZW1wZmVybiBzY2hvbiBhdXM/Ck1laW4gWndlaXRtYW5uIGVyemFlaGx0IG1pciBqYSBhYmVuZHMgaW4gZGVuIEt1c2NoZWxzdHVuZGVuIGdhciBuaWNodHMgdm9uCnNlaW5lbSBKb2IuLiA7KQoKICBIb2JvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBpZGVudGlmaXppZXJlbiBkZXIga2FlbXBmZXIgKEJvaW5nLCAyNy4gT2t0IDE5OTgsIDE0OjUyOjMyKToKfiMhIG9uPUFsaW5lIG90PTkwOTQ5NjI5MyBvZz1naWxkZW4uYWJlbnRldXJlcgp+IyEgcm49SG9ibyBydD05MDk0OTEwMzEgcmc9Z2lsZGVuLmFiZW50ZXVyZXIKfiMhIHRpZD05MDk0ODY0NDAKCkVyemFlaGwgRHUgZG9jaCBtYWwgd2FzIHZvbiBkZW4gS3VzY2hlbHN0dW5kZW4gaGllciBpbiBkZXIgTVBBLiA6KQoKQWxpbmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkltbWVybWFsIHdpZWRlciAoRW1haWwsIDI3LiBPa3QgMTk5OCwgMTU6NDE6MDUpOgoKTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsZXJpa2VyIC4pKSAoTm92YXN0b3JtLCAyNy4gT2t0IDE5OTgsIDE3OjAyOjQ5KToKICBEZXIgUGFudGhlciB2ZXJmZWhsdCBEaWNoLgogIER1IHRyaWZmc3QgZGVuIFBhbnRoZXIgaGFydC4KICBEZXIgUGFudGhlciB2ZXJmZWhsdCBEaWNoLgpEdSBiZWdpbm5zdCBpbmJydWVuc3RpZyB6dSBiZXRlbi4KPiAgIERlciBQYW50aGVyIHZlcmZlaGx0IERpY2guCiAgRGVyIFBhbnRoZXIgdmVyZmVobHQgRGljaC4KICBEZXIgUGFudGhlciB2ZXJmZWhsdCBEaWNoLgogIERlciBQYW50aGVyIHZlcmZlaGx0IERpY2guCiAgRGVyIFBhbnRoZXIgdmVyZmVobHQgRGljaC4KICBEZXIgUGFudGhlciB2ZXJmZWhsdCBEaWNoLgogIERlciBQYW50aGVyIHZlcmZlaGx0IERpY2guCiAgRGVyIFBhbnRoZXIgdmVyZmVobHQgRGljaC4KICBEZXIgUGFudGhlciB2ZXJmZWhsdCBEaWNoLgogIERlciBQYW50aGVyIHZlcmZlaGx0IERpY2guCkR1IGJldGVzdCBmdWVyIGVpbiBiYWxkaWdlcyBFbmRlIGRpZXNlciBHZWJldHNydW5kZS4KICBEZXIgUGFudGhlciBraXR6ZWx0IERpY2ggYW0gQmF1Y2guCgpEdSBiaXR0ZXN0IHVtIGVpbiBFbmRlIGRlcyBLYW1wZmVzLgouLi4uCgoqcm90ZmwqIE5vdmEgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5QQy1CYWxhbmNlIChQYWRyZWljLCAyNy4gT2t0IDE5OTgsIDE5OjMzOjAwKToKfiMhIG9uPVNtYXJ0ZSBvdD05MDk1MTExNDYgb2c9YmFsYW5jZQp+IyEgcm49QXJrIHJ0PTkwOTUxMDIyOCByZz1iYWxhbmNlCn4jISB0aWQ9OTA5NTAwNTgxCk5vZSwgd2VpbmVuIG11c3MgaWNoIG5pY2h0ISA6KQoKU21hcnRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTlBDLUJhbGFuY2UgKFBhZHJlaWMsIDI3LiBPa3QgMTk5OCwgMTk6MzM6MTIpOgp+IyEgb249QXJrIG90PTkwOTUxMjA3MiBvZz1iYWxhbmNlCn4jISBybj1TbWFydGUgcnQ9OTA5NTExMTQ2IHJnPWJhbGFuY2UKfiMhIHRpZD05MDk1MDA1ODEKVWZmLCBkYW5uIGlzc2VzIGphIGd1dCA6LSkKCgpLZWluIE51bGwtYWNodC1mdWZmemVobi1TdGFuZGFyZC1ad2VyZyAuLi4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOUEMtQmFsYW5jZSAoUGFkcmVpYywgMjcuIE9rdCAxOTk4LCAxOTozNDoyMik6Cn4jISBvbj1TdGluZyBvdD05MDk1MTI5MzEgb2c9YmFsYW5jZQp+IyEgcm49V3VyemVsIHJ0PTkwOTUxMjg1OSByZz1iYWxhbmNlCn4jISB0aWQ9OTA5NTAwNTgxCkphLCBhbGxlIFp3ZXJnZSAgc3RpbmtlbiB1bmQgc2luZCBkb29mISBBYmVyIGluICBQdW5rdCBiZWkgZGVuIEVsZmVuIGthbm4gaWNoCmRpciBuaWNodCB6dXN0aW1tZW4gKmdyaW5zKgoKClN0aW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOUEMtQmFsYW5jZSAoUGFkcmVpYywgMjcuIE9rdCAxOTk4LCAxOTozNDozNCk6Cn4jISBvbj1Cb3R0b20gb3Q9OTA5NTEzMDM2IG9nPWJhbGFuY2UKfiMhIHJuPVd1cnplbCBydD05MDk1MTI4NTkgcmc9YmFsYW5jZQp+IyEgdGlkPTkwOTUwMDU4MQoKU3RpbW10ISBBdXNuYWhtZTogZXMgc2luZCBuaWNodCBhbGxlIE1lbnNjaGVuIGJsb25kLCBzb25kZXJuIGFsbGUgRnJhdWVuIC0KdW5hYmhhZW5naWcgdm9uIGlocmVyIGhhYXJmYXJiZSEgRGllIHVlYnJpZ2VuIEF1c3NhZ2VuIGthbm4gbWFuIHNvIHN0ZWhlbgpsYXNzZW4hCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzIHNhZ3QgbWlyIGRhcy4uLj8gKFNpbHZhbmEsIDI3LiBPa3QgMTk5OCwgMTk6NDQ6MTYpOgpEZWluIEZyZXVuZCBBbmF0b2wgdGVpbHQgRGlyIG1pdDogQW5keT8KRGVpbiBGcmV1bmQgQW5hdG9sIHRlaWx0IERpciBtaXQ6IEhhZmlzPwpEZWluIEZyZXVuZCBBbmF0b2wgdGVpbHQgRGlyIG1pdDogU3VuZmxvd2VyPyA6bykKRGVpbiBGcmV1bmQgU3RpbmcgdGVpbHQgRGlyIG1pdDogU0hBUklBCgogSG1tbS4uLiBHZXNldHogZGVyIFNlcmllPwogU2lsdmFuYSAoZmFuZCBTaGFyaWEgZWlnZW50bGljaCBuaWNodCBTTyBzY2hsaW1tLiA6KSApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGhqYSA6LSkgKE5haXJvbGYsIDI3LiBPa3QgMTk5OCwgMjA6MjU6MjQpOgpFaW4gZW50c2V0emxpY2hlciBTY2hyZWkgaGFsbHQgdm9tIEZyaWVkaG9mIGhlcnVlYmVyLgpTcmFiaSBncmFiYmVsdCBhbiBEaXIgaGVydW0uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnbG9ycmVpY2hlciB0YWcgKFNvcmNlcmVyLCAyNy4gT2t0IDE5OTgsIDIxOjA0OjU2KToKRGVyIFRhZyBhbiBkZW0gZHUgZGVyIGVoZW1hbGlnZSBFdW51Y2ggd3VyZGVzdC4gV2FzIGZ1ZXIgZWluIGdsb3JyZWljaGVyIFRhZyEKClNPIGthbm4gbWFuIGdsb3JyZWljaCBhdWNoIGRlZmluaWVyZW4uLi4uCgppbW1lciBub2NoIGxhY2hlbmQsIFNvcmNlcmVyCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB2ZXJob2Vyc3BydWNoIHVuZCBzY2hsaW1tZXJlcyAoU2lsdmFuYSwgMjcuIE9rdCAxOTk4LCAyMzowNjoxMSk6Cn4jISBybj1LYXJhbSBydD05MDk1MDgxMDIgcmc9Z2lsZGVuLmFiZW50ZXVyZXIKfiMhIHRpZD05MDk0NzYwNzkKTWVpbmUgR3VldGUuLi4gSGFldHRlIG5pY2h0IGdlZGFjaHQsIGRhc3MgZGllIFJ1YnJpawpnaWxkZW4uYWJlbnRldXJlciBtYW4gc28gYW11ZXNhbnQgd2VyZGVuIHd1ZXJkZS4uLgoKICBTaWx2YW5hIChmYXNzdCBlcyBuaWNodCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkltbWVyIGRpZXNlIEZydWNodC4uLmFlaC4uLiAtZWxmZW4gKFdvb2R5LCAyNy4gT2t0IDE5OTgsIDIzOjI4OjA4KToKPiBwZmx1ZWNrZSBlcmRiZWVyZQpBbmF0b2wgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKClVuZCBpY2ggZGFjaHRlLCBlcyBnaWJ0IG51ciBGcnVjaHR6d2VyZ2UuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa29taWNoIChCZWxnYXJpYWQsIDI3LiBPa3QgMTk5OCwgMjM6NTQ6MDUpOgpEdSB2ZXJzZXR6dCBQb2xnYXJhIGVpbmVuIGhlaW10dWVja2lzY2hlbiBLYW1wZnRyaXR0LgogIER1IHNjaGxhZWdzdCBQb2xnYXJhIHp1IEJyZWkuClBvbGdhcmEgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgUG9sZ2FyYQpbVG9kOkxhcnNdIHVtZ2VicmFjaHQuCkRlciBUZWRkeSBrbnVkZGVsdCBEaWNoIGVpbiBsZXR6dGVzIE1hbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjotKSkpIChEYXJpYSwgMjguIE9rdCAxOTk4LCAxMDozNzo0Nik6ClBsb2V0emxpY2ggZHJpbmdlbiBlbnRzZXR6dGUgU2NocmVpZSBhdXMgZGVtIExhbmRlc2lubmVyZW4gYW4gRGVpbiBPaHIuIEVpbmUKR3J1cHBlIHZvbiBNb2VuY2hlbiBzdHVlcm10IGluIHBhbmlzY2hlciBIYXN0IGF1ZiBkYXMgU2NoaWZmIHp1LgogRGllIE1vZW5jaGUgc3R1ZXJ6ZW4gc2ljaCBpbiBkaWUgQmFya2UsIGVyZ3JlaWZlbiBkaWUgUnVkZXIgdW5kIHBhZGRlbG4gSGFscwp1ZWJlciBLb3BmIGRhdm9uLgpbQWJlbnRldWVyOkxlbmFdIGFyZ2ghIFNjaGVpc3NlIQoKV2FzIGhhdCBzaWUgZGVubiBqZXR6dCB3aWVkZXIgYW5nZXN0ZWxsdD8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVlcyBBbXVsZXR0ID8gKE5lYiwgMjguIE9rdCAxOTk4LCAxMzozNDoxOSk6ClNoYXJpYSB3aW5rdC4KU2hhcmlhIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBTaGFyaWEuClNoYXJpYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKIC4uLi4uLgpTaGFyaWEgd2lyZCBrdXJ6IHZvbiBlaW5lciBsZXVjaHRlbmRlbiBBdXJhIGVpbmdlaHVlbGx0LCBkaWUgdm9uIGlocmVtIEFtdWxldHQKYXVzenVnZWhlbiBzY2hlaW50LgpTaGFyaWEgbGFldXRlcnQgRGljaCBub2NobWFsIHVuZCBnZWh0IGRhbm4gaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4uCgpOZWIsIHd1bmRlcnQgc2ljaCB1ZWJlciBkYXMgQW11bGV0dCwgZGFzcyBlaW5lbiBpbnMgTmV0enRvdGVucmVpY2ggYmVmb2VyZGVydAo7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGdsb3JyZWljaGVyIHRhZyAoQWxwaGEsIDI4LiBPa3QgMTk5OCwgMTU6MjQ6MTkpOgp+IyEgcm49U29yY2VyZXIgcnQ9OTA5NTE4Njk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA5NTE4Njk2CkRlciBUYWcgYW4gZGVtIGR1IFNlaGVyIHd1cmRlc3QuIFdhcyBmdWVyIGVpbiBnbG9ycmVpY2hlciBUYWchCkRhcyBEaW5nIGthbm4gYmVpIG1pciBhYmVyIGdhbnogc2Nob2VuIHdlaXQgaW4gZGllIFp1a3VuZnQgZ3Vja2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBnbG9ycmVpY2hlciB0YWcgKEdub21lLCAyOC4gT2t0IDE5OTgsIDE4OjQ0OjU1KToKfiMhIHJuPUFscGhhIHJ0PTkwOTU4NDY1OSByZz1zY2htYXJybgp+IyEgdGlkPTkwOTUxODY5NgplcyBzaWVodCBzb2dhciBkaW5nZSwgZGllIG5pZW1hbHMgd2lya2xpY2hrZWl0IHdlcmRlbiwga29taXNjaC4uLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBaGphIC4uLiAoR3JpbW1ib3JuLCAyOC4gT2t0IDE5OTgsIDE5OjM1OjA4KToKfiMhIHJuPU1haGF0bXUgcnQ9OTA5NTk3NDIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA5NTk3NDIxCkljaCBoYWIgZGVuIEFydGlrZWwgdm9uIE1haGF0bWEgZ2Vsb2VzY2h0IChuaWNodCB2ZXJsZWd0KS4gTWVpbiBSZWFsbmFtZSBoYXQKaW0gTUcgbmljaHRzIHp1IHN1Y2hlbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2lnbmFsd2lya3VuZz8gKFRhcmluYSwgMjguIE9rdCAxOTk4LCAxOTozNjo1OSk6CkRlaW4gRnJldW5kIEJlbGdhcmlhZCB0ZWlsdCBEaXIgbWl0OiBrb21tdCBub2NoIGplbWFuZCBtaXQgZGllIHJhdHRlbmtvZW5pZ2luCkRlaW4gRnJldW5kIEJlbGdhcmlhZCB0ZWlsdCBEaXIgbWl0OiBraWxsZW4/ClNseWZveCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgInNjaG1hcnJuIi4KSHViYmEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhClBoeWdvcyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCjotKQpUYXJpbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIHdhZXJzIHBlcmZla3QgKE1vcmdvdGgsIDI5LiBPa3QgMTk5OCwgMTA6MDA6MzcpOgpOYWlyb2xmICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkJvaW5nIHRyb3R0ZXQgaGVyZWluLgpUZXZpbGRvIHN0dWVyenQgc2ljaCBhdWYgQm9pbmcgdW5kIGZyaXNzdCBpaG4gYXVmLgpCb2luZyBoYXV0IGFiLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWhqYSAuLi4gKE1haGF0bXUsIDI5LiBPa3QgMTk5OCwgMTE6Mzc6NDkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTkwOTU5OTcwOCByZz1zY2htYXJybgp+IyEgdGlkPTkwOTU5NzQyMQpUamEsIGljaCBoYWJzIGF1Y2ggbnVyIGF1cyBlaW5lbSBhbmRlcmVuIE1VRCwgRHUgc29sbHRlc3QgdmllbGxlaWNodCBpbiBEZWluZW4KQXJ0aWtlbG4gZGFyYXVmIGhpbndlaXNlbiwgZGFzcyBEdSBkYXMgbmljaHQgd2lsbHN0LgpJbSB1ZWJyaWdlbiB0cmF1IGljaCBEaXIgenUsIGhlcmF1c2ZpbmRlIHp1IGtvZW5uZW4sIGRhc3MgaWNoIG5pY2h0IE1haGF0bWEKYmluLgoKTWFoYXRtdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTnVtbWVyIDMwNyAoQWNyaW1vbiwgMjkuIE9rdCAxOTk4LCAyMDoyMDozNyk6CltUb2Q6TGFyc10gRWluZSBFcmRncnViZSBoYXQgZ2VyYWRlIEdhc3QxIHVtZ2VicmFjaHQuCltCaWVyc2NodWV0dGxlcjpCcnVub10gV2VyIHdpbGwgZGllIE51bW1lciAzMDggc2Vpbj8KCjotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnVlciBUZWRkeSAoTmFpcm9sZiwgMjkuIE9rdCAxOTk4LCAyMToyNzoyMCk6CkhhbGxvIFRlZGR5CkljaCB3b2xsdGUgZGlyIGphIHNjaG9uIGxhbmdlIG1hbCBtYWlsZW4uLi4gYWJlciBpY2ggYmluIG5vY2ggbmljaHQgZGF6dQpnZWtvbW1lbiBkYWhlciBqZXR6dCB1ZWJlciBkaWVzZW4gd2VnIC4uLi4KCkljaCB3b2xsdGUgc2FnZW4gZGFzcyBlaW5lIG1haWwgZWlnZW50bGljaCBiZXNzZXIgaXN0IGFscyBlaW4gemVpdHVuZ3NhcnRpa2VsCndlaWwgc2llIGV0d2FzIHBlcnNvZW5saWNoZXIgaXN0IGFiZXIgaWNoIGRlbmtlIG1hbCBkYXMgd2Vpc3N0IGR1IGphIC4uIGRhaGVyCnNjaHJlaWJlIGljaCBrZWluZSBtYWlsIHNvbmRlcm4gZWluZW4gemVpdHVuZ3NhcnRpa2VsIC4uIGFlaG0gZGFzIGhlaXNzdCBpY2gKd2Vpc3MgZWlnZW50bGljaCBnYXJuaWNodCB3aWVzbyBpY2ggZGlyIGVpbmVuIGFydGlrZWwgYWxzbyBrZWluZSBtYWlsIHNjaHJlaWJlCmRlbm4gZGFzIHdhZXJlIGFlaG0gaG1tIGtvbWlzY2ggaWNoIGhhYiBtYW5jaG1hbCBkYXMgZ2VmdWVobCBkYXNzIGljaCBtaWNoCnZlcmhhc3BlbGUuLi4ga29taXNjaCBpY2ggd2VyZGUgd2FocnNjaGVpbmxpY2ggYWx0IApJY2ggaG9mZmUgbmF0dWVybGljaCBhdWNoIGRhc3MgZHUgZGljaCB1ZWJlciBkaWVzZSBtYWlsIGZyZXVzdCAuLi4gYWVobSBuZWluCmhhbHQgbWlyIGZhZWxsdCBlaW4sIGRhc3MgaWNoIGphIGdlcmFkZSBrZWluZSBtYWlsIHNvbmRlcm5lIGVpbmUgbmFydGlrZWwKc2NocmVpYmUgdW5kIGRhcyBhbGxlcyBudXIgd2VpbCBkdSBkaWNoIGxhbmd3ZWlsc3QgLi4gbmEgd2VubiBkdSBkaWNoCmxhbmd3ZWlsc3QgZGFubiB3ZWNoc2VsIGRvY2ggei5iLiBkaWUgR2lsZGUgLi4gdW5kIGtvbW0genUgZGVuIEtsZXJpa2VybiAuLgpzb2xsIG5lIHRvbGxlIGdpbGRlIHNlaW4uLiB1bmQgd2llIGR1IG1pciBqYSBsZXR6dGVucyBzY2hvbnMgYWd0ZXN0IGJpc3QgZGEgamEKb2huZWhpbiBtaXQgZGVuIENoYW90ZW4gbmljaHRtZWhyIHp1ZnJpZWRlbiBzZWl0ZGVtICh2ZXJ6ZWloZSB3ZW5uIGljaCBkaWNoCmpldHp0IHppdGllcmUpICJzbyBrb21pc2NoZSBtYWdpZXIgZGFyYW4gcnVtZnVtbWVsbiB1bmQgaWhyZSBmaW5nZXIgbmljaHQgdm9uCmFsdGVuIGd1dGVuIHNhY2hlbiBsYXNzZW4ga29lbm5lbiIgdGphIGRhbm4gZ2VoIHp1IGRlbiBLbGVyaWtlcm4sIHNvIHdpZSBkdQpkYXMgYXVjaCBzY2hvbiBzYWd0ZXN0ICJpY2ggZGVua2UgaWNoIHdlcmQgenUgZGVuIEtsZXJpa2VybiBnZWhlbiAuLiBkYXMgYm9lc2UKZ2VmYWVsbHQgbWlyIGphIGVoIG5pY2h0IHNvIiBpY2ggc2NoYWV0emUgZGFzcyBkaWNoIGRhIGRpZSBLbGVyaWtlciBmcmV1ZGlnCmF1Zm5laG1lbiB3ZXJkZW4gbnVuamEgaWNoIGZyYWdlIG1pY2ggZ2VyYWRlIG9iIGljaCBkaWVzZSBtYWlsIGRpZSBqYSBrZWluZQptYWlsIGlzdCBiZWVuZGVuIHNvbGwgb2RlciBuaWNodCBkZW5uIGVpZ2VudGxpY2ggaXN0IHNpZSBhZWhtIGVyIG9kZXIgd2llIGF1Y2gKaW1tZXIgc2Nob24gcmVjaHQgbGFuZyBhYmVyIGljaCBkZW5rZSBlaW5mYWNoIG5vY2ggbmljaHQgbGFuZyBnZW51ZyB1bSBqZXR6dAplaW5mYWNoICoqIG9kZXIgYmVzc2VyIC4genUgbWFjaGVuIC4uLiBkYXMgd2FlcmUgamEgbGFuZ3dlaWxpZyB1bmQgZ2VuYXUgZGFzCmlzdCBqYSB3YXMgZHUgbmljaHQgaGFiZW4gd2lsbHN0IC4uLiBuYSBzY2hhdWVuIHdpciBtYWwgd2FzIGljaCBub2NoIHNvCnp1c3RhbmRlIGJyaW5nZSAuLi4gaWNoIGRlbmtlIGVpbmUgQmlsZHNjaGlybXNlaXRlIG5hamEgYmVpIG1pciB1bmQgaWNoIGhhYgpuZW4ga2xlaW5lbiBiaWxkc2NoaXJtIHJlaWNodCBhYmVyIGRvY2ggLi4gb2ggbmVpbiBnZXJhZGUgZWJlbiBzY3JvbGx0ZSBlcwpyYXVzIHNvIGRhc3Mgd2lyIGpldHp0IGJlc3RpbW10IHNjb24gaXJnZW5kZWluIG1vcmUgaGFiZW4gLi4uIGFsc28gd2VyZGUgaWNoCmRhbm4gZGllc2VuIGFydGlrZWwgZGVyIGtlaW5lIG1haWwgaXN0IGJlZW5kZW4gdW5kIG1pY2ggYW4gZGVpbmVtIGdsdWVja2xpY2hlbgpsYWVjaGVsbiBlcmZyZXVlbiA6LSkKCgpNYWNocyBHZ3V0IHVuZCBWSUVMIFNQQVNTIGJlaSBkZW4gS2xlcmlrZXJuICEKTmFpcm9sZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGZ1ZXIgVGVkZHkgKFRyYW5jZWZlYXIsIDI5LiBPa3QgMTk5OCwgMjE6Mjk6MDEpOgp+IyEgcm49TmFpcm9sZiBydD05MDk2OTI4NDAgcmc9c2NobWFycm4KfiMhIHRpZD05MDk2OTI4NDAKRHUgc29sbHRlc3QgYmVpbSBNdWRkZW4gbmljaHQgc292aWVsIHRyaW5rZW4sIE5haXJvbGYgOi0pCgp0ZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBmdWVyIFRlZGR5IChOYWlyb2xmLCAyOS4gT2t0IDE5OTgsIDIxOjI5OjMzKToKfiMhIHJuPVRyYW5jZWZlYXIgcnQ9OTA5NjkyOTQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA5NjkyODQwCklDSCBUUklOS0UgTklDSFRTIDotKQpOYWlyb2xmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBmdWVyIFRlZGR5IChUcmFuY2VmZWFyLCAyOS4gT2t0IDE5OTgsIDIxOjMwOjQ0KToKfiMhIHJuPU5haXJvbGYgcnQ9OTA5NjkyOTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA5NjkyODQwCkFjaGphLiBVbmQgS3JhZXV0ZXJ6aWdhcmV0dGVuIHJhdWNoZW4uLi4KCnRmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBmdWVyIFRlZGR5IChOYWlyb2xmLCAyOS4gT2t0IDE5OTgsIDIxOjMxOjIxKToKfiMhIHJuPVRyYW5jZWZlYXIgcnQ9OTA5NjkzMDQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA5NjkyODQwCk5JRSA6LSkKTmFpcm9sZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc28gZ2VodCBhbHNvIGRhcyBBcnRpa2Vsc2NocmVpYmVuIDotKSAoUHJ5ZGUsIDI5LiBPa3QgMTk5OCwgMjE6NDc6NTcpOgogIC4uLi5ub3JtYWwvU2NoYXVmZWwuLi4uIFRvdGVuZ3JhZWJlci4gOiBQZXJ0aW5heGUuLi4uICoqKioqKioqIC0tIHZlcmZlaGx0ClBlcnRpbmF4ZSBzdGVja3QgZWluIEJsdXRzYXVnZXItU2Nod2VydCB6dXJ1ZWNrLgpQZXJ0aW5heGUgemllaHQgZWluZW4gU3BpZWdlbHNjaGlsZCBhdXMuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBUcmFuY2VmZWFyIGluIFJ1YnJpayAiZ2lsZGVuLmFiZW50ZXVyZXIiLgpQZXJ0aW5heGUgenVlY2t0IGVpbiBCbHV0c2F1Z2VyLVNjaHdlcnQuClBlcnRpbmF4ZSB6aWVodCBlaW5lbiBTcGllZ2Vsc2NoaWxkIGFuLgogIC4uLi5ub3JtYWwvPz8/Li4uLi4uLi4uIFBlcnRpbmF4ZS4uLi4gOiBUb3RlbmdyYWViZXIuICoqKioqKioqIC0tIGhhcnQKCiBpbnRlcmVzc2FudC4uLiA6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNoaXQgd2llZGVybWFsIDopIChOb3Zhc3Rvcm0sIDI5LiBPa3QgMTk5OCwgMjI6Mjk6MTkpOgpEZXIgU3RlaW5iZWlzc2VyIGZhZWxsdCB0b3QgenUgQm9kZW4uCnVudCB2b3JzcHJ1bmcKRWluIFN0ZWluYmVpc3NlciBrb21tdCBhbi4KTWF0cml4OiBFaW4gU3RlaW5iZWlzc2VyIGlzdCBhYnNvbHV0IGZpdC4gKDEwMCUpCiAgLi4uLm5vcm1hbC9TdGVpbmJlaXNzZXIgU3RlaW5iZWlzc2VyLiA6IERpY2guLi4uLi4uLi4gKioqUyoqKiogPC0gc2VociBoYXJ0CkRlciBzY2h3YXJ6ZSBTdGVpbmJlaXNzZXIgc3RlaHQgZGF2b3IsIER1IGthbm5zdCBuaWNodHMgZXJrZW5uZW4uCgogICAgICBOb3ZhIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmEgd2llIGpldHp0ID8gOikpIChOb3Zhc3Rvcm0sIDI5LiBPa3QgMTk5OCwgMjM6MDg6MjkpOgpEZWluZSBGcmV1bmRpbiBEZWwgdGVpbHQgRGlyIG1pdDogKmxhY2gqIGd1dCBOZXNpIDotKSkKRGVsIGlzc3QgZWluZSB2ZWdldGFyaXNjaGUgU2NoaWxka3JvZXRlbnN1cHBlLgoKICAgIE5vdmEsIHNpY2ggZHVja2VuZCAsKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJhdWVuIHVuZCBzbyA6LSkgKE5vdmFzdG9ybSwgMjkuIE9rdCAxOTk4LCAyMzoyNzo0Mik6CkRlbCBzYWd0OiBOZXNhamEgbGF1ZiEKTmVzYWphIGt1bGxlcnQgZWllcm5kIG5hY2ggU3VlZHdlc3Rlbi4Kc3cgCkVpbiBrbGVpbmVyIFRyYW1wZWxwZmFkLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZHdlc3RlbiB1bmQgbm9yZG9zdGVuLgpUdXJ0bGVwcmluY2VzcyBOZXNhamEgd2lsbCBzdXJ2aXZlLgpOZXNhamEgc2FndDogSEFMVApOZXNhamEga3VsbGVydCBlaWVybmQgbmFjaCBTdWVkd2VzdGVuLgoKICAgICBOb3ZhLCB3YWVsenQgc2ljaCBpbW1hIG5vY2ggLCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjIgQnVncyBnZWZ1bmRlbiA7LSkpIChaZXIsIDMwLiBPa3QgMTk5OCwgMDc6NDM6MTEpOgpbc3RlY2tlIGFsbGVzIGluIHJhdW0gaW4gbXVlbGxzYWNrXQpBYmVyIEZhcmdvYWwgbGVidCBkb2NoIQpEdSBzdGVja3N0IGVpbmUgU3RhdHVlIGluIGRlbiBtYWdpc2NoZW4gTXVlbGxzYWNrLgpEdSBzdGVja3N0IGV0d2FzIGluIGRlbiBtYWdpc2NoZW4gTXVlbGxzYWNrLgpEdSBrYW5uc3QgZGFzIEJ1Y2ggc28gbmlyZ2VuZHdvIHJlaW5zdGVja2VuLgpBYmVyIEljZWJyZWFrZXIgbGVidCBkb2NoIQpEdSBzdGVja3N0IGVpbmUgWmVpdHVuZyBpbiBkZW4gbWFnaXNjaGVuIE11ZWxsc2Fjay4KCkhtLCBhbHNvIHdhcyB3YXIgamV0enQgJ2V0d2FzJyB1bmQgd2llc28gaXMgZGllIE1QQSB3ZWc/Pz8gOy0pCgpaZXIsIGRpZSBraWNoZXJuZGUgUmF0dGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzbyBnZWh0IGFsc28gZGFzIEFydGlrZWxzY2hyZWliZW4gOi0pIChCb2luZywgMzAuIE9rdCAxOTk4LCAxMTo0ODowMyk6Cn4jISBybj1QcnlkZSBydD05MDk2OTQwNzcgcmc9c2NobWFycm4KfiMhIHRpZD05MDk2OTQwNzcKS2FubiBtaXIgZGFzIG1hbCBqZW1hbmQgdWViZXJzZXR6ZW4/CkRhbmtlLAogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHNvIGdlaHQgYWxzbyBkYXMgQXJ0aWtlbHNjaHJlaWJlbiA6LSkgKFByeWRlLCAzMC4gT2t0IDE5OTgsIDExOjU2OjUwKToKfiMhIHJuPUJvaW5nIHJ0PTkwOTc0NDQ4MyByZz1zY2htYXJybgp+IyEgdGlkPTkwOTY5NDA3NwpLbGFhYWFyISA6KQpBbnN0ZWxsZSB2b246IAogc3RlY2tlIHNjaHdlcnQgd2VnO3ppZWhlIHNjaGlsZCBhdXM7PHNwZWxsPi88dGVjaG5paz47enVlY2tlIHNjaHdlcnQ7dHJhZ2UKc2NoaWxkOwplaW5mYWNoOgogc3RlY2tlIC4uLjt2ZXJvZWZmZW50bGljaGUgYXJ0aWtlbDt6aWVoZS4uLgoKb2RlciA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGhqYSAuLi4gKE5haXJvbGYsIDMwLiBPa3QgMTk5OCwgMTc6NDQ6MjApOgpEZWluIEZyZXVuZCBBbmF0b2wgdGVpbHQgRGlyIG1pdDogREFTIEJBRCBJU1QgRlJFSUlJSUlJSUlJSUlJSUlJSUlJSUlJSSEhISEhISEKQW5hdG9sICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKb2huZSBXb3J0ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKW0tsZXJ1czpBbmFjcmlvbl0gd2FhYWguIGljaCB2ZXJyYXR6ZSBpbW1lciBzY2huZWxsZXIgLi4uLiBrYW5uIG5pY2h0IG1hbCBlaW4gKEFyYXRoLCAzMC4gT2t0IDE5OTgsIDE3OjUyOjI1KToKW0tsZXJ1czpBbmFjcmlvbl0ga2xlcmlrZXIgYW0gdGlnZXIgbmFjaCBtaXIgZ3Vja2VuID8KW0tsZXJ1czpBbmFjcmlvbl0gc2Nob24gQVUgLTYgOigoCltLbGVydXM6U2hhcmlhXSB0c3RzdHMgc29ycnkgcGFyYSBkcmFrbyBweXJhIC4uLgpbVG9kOkxhcnNdIERlciBGbHVjaCBkZXMgUGhhcmFvcyBFc3RoZWtvdGggaGF0IGdlcmFkZSBBbmFjcmlvbiB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChEaWVkZXIsIDMwLiBPa3QgMTk5OCwgMjE6MTg6NDYpOgpbQWJlbnRldWVyOkJpZ2Zvb3RdIHdpZSB3aXJkIG1hbiBkZW4gTXVtaWVuZmx1Y2ggd2llZGVyIGxvcz8KCnBhYXIgWmVpbGVuIHNwYWV0ZXI6CgpbVG9kOkxhcnNdIERlciBGbHVjaCBkZXMgUGhhcmFvcyBFc3RoZWtvdGggaGF0IGdlcmFkZSBCaWdmb290IHVtZ2VicmFjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcHV0X2FuZF9nZXQuYyAoUmluZ29yLCAzMS4gT2t0IDE5OTgsIDA1OjMxOjUzKToKV29yYXVmIG1hbiBzbyBrb21tdCwgd2VubiBtYW4gbWl0IGFuZGVyZW4gZ2VuYXVzbyB2ZXJydWVja3RlbiBNdWRkZXJuCnp1c2FtbWVuaG9ja3QgLi4uCgpBbHNvIGZ1ZXIgZGVuIEZhbGwsIGRhc3MgamVtYW5kIGVpbiBwYWFyIFBvcnRhbGUsIFNjaGlmZmUgdW5kIFNlaGVyaGFldXNlcgp2ZXJtaXNzZW4gc29sbHRlIC0gaWNoIGhhYiBzaWUgaW4gbWVpbmVtIEludi4gWnVtaW5kZXN0IHRlaWx3ZWlzZSAtIG1hbmNoZQpzY2hlaW5lbiBlaW5mYWNoIHp1IHZlcnNjaHdpbmRlbiwgd2VubiBtYW4gc2llIG5pbW10LiAKClJpbmdvci4gTXVzc3RlIGRhcyBlaW5mYWNoIG5vY2ggcHJvYmllcmVuIDteKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHB1dF9hbmRfZ2V0LmMgKFJpbmdvciwgMzEuIE9rdCAxOTk4LCAwNTo1NTozNCk6Cn4jISBybj1SaW5nb3IgcnQ9OTA5ODA4MzEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA5ODA4MzEzClNvcnJ5LCBpY2ggbm9jaG1hbC4gQWJlciBlaW4gIlJpbmdvciBrYW5uIGVpbiBIYXVzIG5pY2h0IG1laHIgdHJhZ2VuLiIgaXN0CmRvY2ggZWluZmFjaCB6dSBzY2hvZW4uIFdvcmFuIGRhcyB3b2hsIGxpZWdlbiBtYWc/CgpbaSArdiAtYV0KClZlcnNjaGllZGVuZXM6CiBFaW4gUG9ydGFsIHp1IFJ5bmVzIEJhbGxwYXJrLgogRGFzIEhhdXMgdm9uIFJ1ZGlyYXR0ZXIuCiBIZXJjdWxlcyBPbHltcCwgZGllIFJlc2lkZW56IGRlcyBHb2V0dGVyc29obmVzLgogRWluIHNlbHRzYW1lcyBNZXRhbGxnZWJpbGRlLgogTGF1cmlucyBad2VyZ2VuaG9laGxlLgoKQnp3LiBlaW4gInNjaGF1IiBicmluZ3Q6CgpEdSBiaXN0IGFtIFN0YWR0dG9yIHZvbiBQb3J0IFZhaW4gYW5nZWtvbW1lbiwgZGFzIHVubWl0dGVsYmFyIHZvciBEaXIgbGllZ3QuCkluCndlc3RsaWNoZXIgUmljaHR1bmcgZnVlaHJ0IGRpZSBQb3J0IFZhaW5lciBMYW5kc3RyYXNzZSBpbiBkaWUgZ3Jvc3NlLCB3ZWl0ZQpXZWx0IGhpbmF1cyB1bmQgaW4gb2VzdGxpY2hlciBSaWNodHVuZyB6dW0gZ3Jvc3NlbiBTdGFkdHplbnRydW0gZGVyCkhhZmVuc3RhZHQuClVubWl0dGVsYmFyIHN1ZWRsaWNoIHZvbiBEaXIsIGRpcmVrdCBuZWJlbiBkZW0gU3RhZHR0b3Igc2llaHN0IER1IGRpZSByaWVzaWdlClBmb3J0ZSBlaW5lcyBub2NoIHJpZXNpZ2VyZW4gV2V0dHBhbGFzdGVzIHZvciBEaXIgYXVmcmFnZW4uIER1IGxlZ3N0IERlaW5lbgpLb3BmIGluIGRlbiBOYWNrZW4sIHVtIGlobiBnYW56IGJldHJhY2h0ZW4genUga29lbm5lbi4gRWluIGdyb3NzZXMgU2NoaWxkCmhhZW5ndCB1ZWJlciBkZXIgRWluZ2FuZ3NwZm9ydGUuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuIHVuZCB3ZXN0ZW4uCltNZXR6ZWx0ZWFtOkdlZmx1ZWdlbF0gUmluZ29yIGRlciBlcnN0ZSBaYWxraCdCYXRhciAoR3VtbWktQWRsZXIsIHphZWgpLgpFaW5lIEdhcmFnZS4KRWluIEZhY2h3ZXJraGF1cy4KRGllIFRvcC1MaXN0ZSwgVG9wLVNwaWVsZXJsaXN0ZSwgVG9wLVNlaGVybGlzdGUgdW5kIFRvcC1NYWV4Y2hlbmxpc3RlLgpEYXMgSGF1cyB2b24gTGVsbGRvcmluLgpFaW4gU3RyYW5ka29yYi4KRWluZSBaZWxsZS4KRWluIFN0ZWcuCkRlciBTdGVpbmJydWNoIHZvbiBLaWVzZWxzdGVpbi4KRWluZSBLZWtzZG9zZS4KRGFzIEhhdXMgZGVyIE5vY2gtTmljaHQtV2llZGVyLVdpdHdlIFRlbGthLgpMYXVyaW5zIFp3ZXJnZW5ob2VobGUuCkVpbiBzZWx0c2FtZXMgTWV0YWxsZ2ViaWxkZS4KRGFzIE1vcmdlbkdyYXVlbi1NdXNldW0uCkhlcmN1bGVzIE9seW1wLCBkaWUgUmVzaWRlbnogZGVzIEdvZXR0ZXJzb2huZXMuCkRhcyBIYXVzIHZvbiBSdWRpcmF0dGVyLgpFaW4gUG9ydGFsIHp1IFJ5bmVzIEJhbGxwYXJrLgpFaW4gU2FuZHRpZ2VyLgoKUmluZ29yLiBCZWhhZWx0IGRhcyBQb3J0YWwgYWxzIEFuZGVua2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBwdXRfYW5kX2dldC5jIChBbmF0b2wsIDMxLiBPa3QgMTk5OCwgMTA6MTk6MjYpOgp+IyEgcm49UmluZ29yIHJ0PTkwOTgwOTczNCByZz1zY2htYXJybgp+IyEgdGlkPTkwOTgwODMxMwpFaW4gSGF1cyBmYWVsbHQgZGVuIFNjaGFjaHQgaGludW50ZXIuCgpVcHMgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpsZXR6dGVyICEhIChNb3Jnb3RoLCAgMi4gTm92IDE5OTgsIDExOjM4OjIxKToKW1NlaGVyOktleV0gTGV0enRlciEgOykKW1NlaGVyOktleV0gTGV0enRlciEgOykKW1NlaGVyOktleV0gTGV0enRlciEgOykKW1NlaGVyOktleV0gTGV0enRlciEgOykKW1NlaGVyOk1vcmdvdGhdIG5vZQpBcm1hZ2VkZG9uIHJ1ZnQ6IEljaCBzdGFydGUgZGFzIFNwaWVsIGpldHp0IG5ldSAhCkdhbWUgZHJpdmVyIHNob3V0czogTFBtdWQgc2h1dHRpbmcgZG93biBpbW1lZGlhdGVseS4KS2V5ICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpTcGVpY2hlcmUgTW9yZ290aC4KRGFzIHNjaHdhcnplIExvY2ggdm9uIE1vcmdvdGggWy9wbGF5ZXJzL21vcmdvdGgvd29ya3Jvb21dLgpEdSB6aWVoc3QgZGVuIEtyYWdlbiBtaXQgendlaSBhYmxhdWZlbmRlbiBTYW5kdWhyZW4gdW5kIGVpbmVtIEtub2NoZW4gYXVzLgpEdSB6aWVoc3QgZGVuIE1hZ2llcmd1ZXJ0ZWwgYXVzLgpCaXMgYmFsZCEKQ2xvc2luZyBkb3duLgolIENvbm5lY3Rpb24gdG8gbWcgY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBsZXR6dGVyICEhIChCb2luZywgIDIuIE5vdiAxOTk4LCAxMTozOTowNyk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkxMDAwMzEwMSByZz1zY2htYXJybgp+IyEgdGlkPTkxMDAwMzEwMQpXYXMgbWFsIHdpZWRlciBiZXdlaXN0OiBJaHIga29lbm50IHBvbGxlbiBzb3ZpZWwgaWhyIHdvbGx0LCBkZXIgR2FtZSBkcml2ZXIKaXN0IGltbWVyIGRlciBsZXR6dGUuCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbGV0enRlciAhISAoWWVuZGksICAyLiBOb3YgMTk5OCwgMTI6NTU6NTYpOgp+IyEgcm49Qm9pbmcgcnQ9OTEwMDAzMTQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEwMDAzMTAxCkRhbm4gcGF0Y2ggZGVuIGRvY2ggd2VuaWdzdGVucywgZGFtaXQgYXVjaCBkaWUgbGV0enRlbiBXb3J0ZSBkZXMgTW9yZ2VuZ3JhdWVucwpub2NoIGF1ZiBkZXV0c2NoIHNpbmQuIEFuc29uc3RlbiBrcmllZ3QgbWFuIGphIHZvbSBHYW1lIERyaXZlciAoU3BpZWx0cmVpYmVyPwpXYXJ1bSBuaWNodC4uLikgcmVjaHQgd2VuaWcgbWl0LgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBsZXR6dGVyICEhIChBbmFjcmlvbiwgIDIuIE5vdiAxOTk4LCAxMjo1Njo0Mik6Cn4jISBybj1ZZW5kaSBydD05MTAwMDc3NTYgcmc9c2NobWFycm4KfiMhIHRpZD05MTAwMDMxMDEKTmEgamEgOikKQWxzbyB6dW0gVGhlbWEgcGF0Y2hlbiBoYWV0dGUgaWNoIGF1Y2ggbm9jaCBlaW4gcGFhciBJZGVlbiA6KQoKQW5hYyogOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhaGhqYSAuLi4gKFllbmRpLCAgMi4gTm92IDE5OTgsIDEyOjU4OjMzKToKfiMhIHJuPU5haXJvbGYgcnQ9OTA5NzY1ODYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTA5NzY1ODYwCkRhIGtvbW10IG1pciBzbyBlaW5lIE1lbG9kaWUgaW4gZGVuIEtvcGY6CiJEYXMgQmFkIGlzdCB3aWVkZXIgZnJlaSAvCiBJY2gga2FubidzIGthdW0gZXJ3YXJ0ZW4uIC8KIEljaCBmbGllZ2UgaGVyYmVpIC8KLi4uIGFlaC4uLiBlaW4gcGFzc2VuZGVyIFJlaW0gYXVmIC1hcnRlbj8gRWdhbC4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbGV0enRlciAhISAoQW5hdG9sLCAgMi4gTm92IDE5OTgsIDEyOjU4OjUyKToKfiMhIHJuPVllbmRpIHJ0PTkxMDAwNzc1NiByZz1zY2htYXJybgp+IyEgdGlkPTkxMDAwMzEwMQpEdSBtZWluc3Q6CkFybWFnZWRkb24gcnVmdDogSWNoIHN0YXJ0ZSBkYXMgU3BpZWwgamV0enQgbmV1ICEKR2FtZSBkcml2ZXIgc2hvdXRzOiBMZXR6dGVyISA6LSkKU3BlaWNoZXJlIEFuYXRvbC4KQmlzIGJhbGQhCi4uLgoKQW5hdG9sID8gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBsZXR6dGVyICEhIChZZW5kaSwgIDIuIE5vdiAxOTk4LCAxMjo1OToxMCk6Cn4jISBybj1BbmF0b2wgcnQ9OTEwMDA3OTMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEwMDAzMTAxCiphcmdsKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW0gU2lsYmVybGFuZC4uLiBvZGVyOiBhbHMgZGFzIE1HIGRvd24gd2FyLi4uIChBcmF0aCwgIDIuIE5vdiAxOTk4LCAxNToxMjozOSk6CkRlciBncm9zc2UgUmF1bSBtaXQgc2VpbmVyIG5pZWRyaWdlbiBEZWNrZSB1bmQgZGVuIGdyb2IgZ2VzY2huaXR0ZW5lbgpRdWVyYmFsa2VuIGhhdCBQbGF0eiBmdWVyIHNlaHIgdmllbGUgUGVyc29uZW4uIEtuYXJyZW5kZSBEaWVsZW4gZXJ6YWVobGVuCnVlYmVyIEhlbGRlbnRhdGVuIGxhZW5nc3QgdmVyZ2Vzc2VuZXIgQWJlbnRldXJlciwgYmVydWVobXRlciBhbHMgbWFuY2hlcgpXZWlzZSB1bnNlcmVyIFplaXQuCkFiZW50ZXVyZXIsIGFiZXIgYXVjaCBhbmRlcmUgQmV3b2huZXIgZGllc2VyIFdlbHQga29tbWVuIGhpZXJoZXIsIHVtCnNpY2ggenUgaW5mb3JtaWVyZW4sIGlocmUgRXJmYWhydW5nZW4gYXVzenV0YXVzY2hlbiBvZGVyIHNpY2ggaW4gZGVuCnZlcnNjaGllZGVuc3RlbiBXaXNzZW5zY2hhZnRlbiB6dSB2ZXJiZXNzZXJuLgpEdXJjaCBkaWUgaW1tZXIgb2ZmZW5lIFR1ZXIgc2NoZWludCBkaWUgYXVmZ2VoZW5kZSBTb25uZSBoZXJlaW4gdW5kIGZ1ZWxsdApkZW4gUmF1bSBtaXQgaWhyZW0gZ29sZGVuZW4gTGljaHQuIFNvbnN0IGdpYnQgZXMgaGllciBudXIgbm9jaCBkZW4gQXVzZ2FuZwppbSBXZXN0ZW4sIHdlbGNoZXIgaGluYXVzIGluIGRpZSBXZWx0IGZ1ZWhydCB1bmQgQmlsZGVyIGFuIGRlbiBXYWVuZGVuLAptaXQgWmVpY2hudW5nZW4gdW5kIEdlbWFlbGRlbiB2b20gU2lsYmVyTGFuZC4gRWlucyBkZXIgQmlsZGVyIGVybGFldXRlcnQKZGllIEZ1bmt0aW9uIGRlciBHaWxkZSB1bmQgZWluZSBncm9zc2UgVWhyIGFuIGRlciBXYW5kIHplaWd0LCB3YXMgZGllClN0dW5kZSBzY2hsYWVndC4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHdlc3Rlbi4KU2FyZ29sYSBkZXIgU3R1ZGlvc3VzIC4uLiBvZGVyIHNvIC4uLi4KQnV6emN1dCBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyLgpHcmF1ZW5oYWZ0ZSBFcm9zaW9uc2Vyc2NoZWludW5nZW4uCkJpZXJjaGVuIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIuCkVpbiBQYXJ0eWJyZXR0LgpFaW4gWmV0dGVsIG1pdCBIaW53ZWlzZW4uCkVpbmUgWmVpdHVuZy4KRHUgc2Fnc3Q6IGhpClNhcmdvbGEgZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KQnV6emN1dCB2ZXJ3dXNjaGVsdCBEZWluZSBIYWFyZS4KQnV6emN1dCBzdHVwc3QgRGljaC4KRHUgZ3JpbnN0LgpEdSBodWVwZnN0IHVtIEJ1enpjdXQgaGVydW0uCj4gQnV6emN1dCB0ZWlsdCBEaXIgbWl0OiBXbyBpc24gZGFzIE1HIGhpbiA/PwpCdXp6Y3V0IGdyaW5zdCBEaWNoIGFuLgpEdSB0ZWlsc3QgQnV6emN1dCBtaXQ6IGluIGRpZSBld2lnZW4gamFnZGdydWVuZGUKPiBCdXp6Y3V0IGVyc2Nocmlja3QgZnVlcmNodGVybGljaC4KQnV6emN1dCBmcmFndDogV0FIID8KRHUgbmlja3N0IHp1c3RpbW1lbmQuCj4gQnV6emN1dCB3ZWludCBzaWNoIGJlaSBEaXIgYXVzLgpEdSBzYWdzdDogd2lyZHMgbmllIHdpZWRlciBnZWJlbgo+IEJ1enpjdXQgZnJhZ3Q6IEVXSUcgPz8/CkR1IG5pY2tzdCB6dXN0aW1tZW5kLgo+IEVyb3MgZnJhZ3Q6IHdhcz8KQnV6emN1dCBpc3QgZXJzdGF1bnQuCkR1IHNhZ3N0OiBkYXMgbWcKPiBCdXp6Y3V0IGZyYWd0OiBPZGVyID8KRXJvcyBzYWd0OiBhaHNvPzopCkR1IHNhZ3N0OiBkZXIgcmVjaG5lciB3dXJkZSBlaW5nZXN0YW1wZnQKRHUgc2Fnc3Q6IG1pdHNhbXQgYWxsZW4gYmFja3Vwcwo+IEJ1enpjdXQgc3ByaW5ndCBEaWNoIGF1ZiBlaW5tYWwgYW4gdW5kIHd1ZXJndCBEaWNoLgpCdXp6Y3V0IHNhZ3Q6IFNBRyBEQVMgREFTIE5JQ0hUIFNUSU1NVApEdSBzYWdzdDogbWFzc25haG1lIGRlciBuZXVlbiByZWdpZXJ1bmcgdW5kIGlocmVyIG9la28tcmVmb3JtCj4gQmllcmNoZW4gc2FndDogaXN0IGFiZXIgc28KRHUgbmlja3N0IEJpZXJjaGVuIHp1LgoKPiA+QnV6emN1dCBpc3QgYW0gQm9kZW4gemVyc3RvZXJ0LgpEdSB6dWNrc3QgbWl0IGRlbiBTY2h1bHRlcm4uCj4gQnV6emN1dCBzdGFtcGZ0IG1pdCBkZW0gRnVzcyBhdWYuCkJ1enpjdXQgZmFlbmd0IGZ1ZXJjaHRlcmxpY2ggYW4genUgZmx1Y2hlbi4KRHUgc2Fnc3Q6IGthbm5zdGUgbml4IG1hY2hlbgpEdSB0ZWlsc3QgQmllcmNoZW4gbWl0OiAqbGFjaCoKPiA+QnV6emN1dCBzY2hyZWl0IHdpZSBlaW4ga2xlaW5lcyBCYWJ5LgpCdXp6Y3V0IGdyaW5zdC4KRHJvbGxpIGtvbW10IGFuLgo+QnV6emN1dCBlcnNjaHJpY2t0LiAKQmllcmNoZW4gdGVpbHQgRGlyIG1pdDogdGphLCBkZXIgc3RpcmJ0IGdsZWljaCA6KQpCdXp6Y3V0IHNhZ3Q6IE9oYSBzbyBzY2hsaW1tIGlzc2VzIHNjaG9uICEKRXJvcyBzYWd0OiB1ZmYgZW5kbGljaCwgZGFubiBrb21tIGljaCB3aWVkZXIgenVtIHN0dWRpZXJlbiwgdW5kIHdlcmQgZG9jaCBub2NoCkVyb3Mgc2FndDogZXJmb2xncmVpY2gKQnV6emN1dCBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpCdXp6Y3V0IHRlaWx0IERpciBtaXQ6IE5lZSBqZXR6ZSBtYWwgZWhybGljaCAhCkR1IHNhZ3N0OiBqbywgZnJldSBkaWNoLCBlcm9zCj4gRXJvcyBmcmV1dCBzaWNoLgpEdSBncmluc3QgRXJvcyBhbi4KPiBCdXp6Y3V0IHRlaWx0IERpciBtaXQ6IFNlaXQgd2FubiBpc3NlcyBkZW5uIHdlY2ggPwpCaWVyY2hlbiBzYWd0OiBkZXIgdmVyZWluIHdhciBwbGVpdGUsIHphY2stPmFsbGVzIG5hY2ggL2Rldi9udWxsCkR1IHNhZ3N0OiBidXp6aSBlcyBpc3Qgc2Nob24gc2VpdCB1ZWJlciBuZW0gdGFnIHdlZy4uLiBrb21tdCBuaWUgd2llZGVyCj4gRXJvcyBzYWd0OiBuZWluIGljaCBoYWIgZ2Vob2VydCBzaWUgaGF0dGVuIGdlcmFkZSBub2NoIGdlbnVnIHVtIGRpZQpFcm9zIHNhZ3Q6IG11ZWxsYWJmdWhyIHp1IGJlemFobGVuCkR1IHNhZ3N0OiBlYmVuIC0gaGFldHRlIGVyIG51ciBtZWhyIG1pdGdsaWVkZXIgZ2VoYWJ0CkR1IHNldWZ6dC4KPiBEcm9sbGkgZnJhZ3QgQmllcmNoZW46IEFsbGVzIG9rIGJlaSBkaXI/CkR1IHNhZ3N0OiBlcm9zIGRhcnVlYmVyIG1hY2h0IG1hbiBrZWluZSB3aXR6ZQo+IFNhcmdvbGEgc2FndDogYWFhZWhtClNhcmdvbGEgc2FndDogaWNoIGlkZWwgZGEgZ3JhZCBmcmllZGxpY2ggdm9yIG1pY2ggaGluCkR1IHRlaWxzdCBFcm9zIG1pdDogKmxhY2gqCj4gU2FyZ29sYSBmcmFndDogd2llIHdhciBkYXMgbm9jaG1hbCBtaXQgZGVtIG1nPz8KRXJvcyBzYWd0OiBlY2h0IGhhdCBtaXIgcGFkcmVpcyBlcnphZWhsdApFcm9zIHNhZ3Q6IHBhZHJlaWMKU2FyZ29sYSBzYWd0OiBwYXJhZGVpc2VyPyA7KQpEdSBzYWdzdDogaG1wZi4uLiBkZXIgcmVjaG5lciB3dXJkZSBqZWRlbmZhbGxzIHNjaHdhcnogZW50c29yZ3QuLi4gc292aWVsCkR1IHNhZ3N0OiB3ZWlzcyBpY2gKPiBTYXJnb2xhIHNhZ3Q6IGhtbW0uLi4gYWJlciBiYWNrdXBzIG11c3NlcyBkb2NoIGdlYmVuIC4uLgpEdSBzYWdzdDogbmVpbiAsIFNhcmdvbGEuLi4uIGFsbGVzIHdlY2gKRXJvcyBzYWd0OiBzbyBlaW4gc2NodW1tbGVyICwgZGVyIHBhZHJlaWMgd2VpcyBlaCBuaXggYWJlciBmZXN0IGRyYXVmCkVyb3Mgc2FndDogc2Nod29lcmVuIGRhcyBlcyBzbyB3YXIKRXJvcyBncnVtbWVsdC4KRHUgc2Fnc3Q6IGJhY2t1cHMgaGF0dGUgamEgYWxsZSBkaWUgdW5pIHVuZCBtdXNzdGUgc2llIHJhdXNydWVja2VuClNhcmdvbGEgZnJhZ3Q6IGtlaW4gZXJ6aSBlaW4gcHJpdmF0ZXMgPwpTYXJnb2xhIGZhZW5ndCBmdWVyY2h0ZXJsaWNoIGFuIHp1IGZsdWNoZW4uCkR1IHNhZ3N0OiBzaWVodCBuaWNodCBzbyBhdXMKPiBTYXJnb2xhIGZyYWd0OiB3YXJ1bSBpcyBkZXIgcmVjaG5lciB3ZWc/CkR1IHNhZ3N0OiBzbyBlaW4gYmFja3VwIGJyYXVjaHQgamEgaHVuZGVydCB2b24gTUIKRHUgc2Fnc3Q6IHdlbm5zIG51ciByZWljaHQuLi4KPiBFcm9zIHNhZ3Q6IGhlIGRhbm4ga29lbm50ZW4gamEgd2lyIGRlcyBzaWxiZXJsYW5kIHVtYmVuZW5uZW4gYXVmIG1nLm11ZC5kZQoKQmllcmNoZW4gc2FndDogYm9lc2Ugc2FjaGUsIGRhcy4KRXJvcyBncmluc3QgZ2VtZWluLgpEdSBzYWdzdDogaWNoIHNjaGFldHplIG1hbCBkYXMgZ2FuemUgTUcgd2FyIG1laHJlcmUgR0IgZ3Jvc3MKPiBFcm9zIHN0dXBzdCBTYXJnb2xhLgpFcm9zIGZyYWd0OiB3YXMgbWVpbnN0PwpTYXJnb2xhIGZyYWd0OiB3YXJ1bSAtIHdhcyBpc3QgbWl0IGRlbSByZWNobmVyIHBhc3NpZXJ0PwpCaWVyY2hlbiBzYWd0OiBnZXBmYWVuZGV0LCBzYWdlbiBlaW5pZ2UgZXJ6aWVzLgpTYXJnb2xhIHNhZ3Q6IHd1YWgKQmllcmNoZW4gc2FndDogenVnYW5nIG5hdHVlcmxpY2ggd2VnZW4gbWlzc2JyYXVjaCBnZXNwZXJydApCdXp6Y3V0IHRyaXR0IERpY2guClNhcmdvbGEgZXJibGVpY2h0LgpCdXp6Y3V0IGdydW1tZWx0LgpEdSBzYWdzdDogaW0gdWVicmlnZW4gaGF0IGRpZSBrYXRob2xpc2NoZSBmYWt1bHRhZXQgc2Nob24gc2VpdCBtb25hdGVuIGRhCkR1IHNhZ3N0OiBnZW1lY2tlcnQgdW5kIGdlcGV0enQKPiBCaWVyY2hlbiBuaWNrdCB6dXN0aW1tZW5kLgpFcm9zIHRlaWx0IERpciBtaXQ6IGRhcyB3aXJkIHVuZ2xhdWJ3dWVyZGlnOikKU2FyZ29sYSBzYWd0OiBlaW5ib3NjaG4gOykKRHUgc2Fnc3Q6IHZvbiB3ZWdlbiBrb3N0ZW5sb3NlIGludGVybmV0YW5iaW5kdW5nIGZ1ZXIgbWV0emVsbXVkIGV0Yy4uLgpEdSBzYWdzdDogZ2V3YWx0dmVyaGVycmxpY2hlbmQKRHUgc2V1Znp0Lgo+IEJ1enpjdXQgbGFjaHQgdWViZXIgRGljaC4KQmllcmNoZW4gc2FndDogbWl0IHNhdGFuIGV0Yy4KU2FyZ29sYSBzYWd0OiBpY2ggc2FnIGphOiBlaW5ib3NjaG4gOykpKSkKRHUgbmlja3N0IEJpZXJjaGVuIHp1Lgo+IFNhcmdvbGEgc2FndDogZGFubiBtZXJrZW4gc2llIHNpbm5sb3NlIGdld2FsdGFud2VuZHVuZyBkaXJla3QgYW0gZWlnZW5lbgpTYXJnb2xhIHNhZ3Q6IGtvZXJwZXIgKmdyaW5zKgpFcm9zIGZyYWd0IERpY2g6IFN0aW1tdCBkYXMgbWl0IGRlciBGcmF1ZW5leHRyZW1pc3RlbmdydXBwZSBkaWUgc2ljaCBhdWZyZWd0ZQp3ZWdlbiBkZW0ga251ZGRlbG4/CkJ1enpjdXQgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCkJ1enpjdXQgbmlja3QgRGlyIHp1LgpEdSBhbnR3b3J0ZXN0IEVyb3M6IFdlaXNzIGljaCBuaWNoIGdlbmF1LCBhYmVyIGVzIGdpYnQgZGEgZ2VydWVjaHRlCj5CdXp6Y3V0IGhhdCBkYSBhdWNoIHNjaG9uIG1hbCB2b24gZ2Vob2VydC4KU2FyZ29sYSBzYWd0OiBhbHNvIGRhcyBtaXQgZGVuIGZyYXVuIGlzdCBqYSBkYXMgc2NoYWVyZnN0ZSA6KSkKQnV6emN1dCBuaWNrdCBTYXJnb2xhIHp1LgpEdSBzYWdzdDogaWNoIGthbm4gamEgamVkZXJ6ZWl0IG1pdCBkZW0gbXVkZGVuIGF1ZmhvZXJlbi4uLiBlcyBpc3QgbnVyCkR1IHNhZ3N0OiBhZXJnZXJsaWNoIHVtIGRpZSB6ZWl0LCBkaWUgbWFuIHJlaW5nZXN0ZWNrdCBoYXQsIHVtIDIgY2hhcmFrdGVyCkR1IHNhZ3N0OiByZWxhdGl2IGhvY2ggenUgaGFiZW4KPiBEcm9sbGkgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCkJpZXJjaGVuIHNhZ3Q6IGljaCBrb3BpZXJlIGdlcmFkZSBtZWluZSBzYWNoZW4gaW5zIGdsLi4KU2FyZ29sYSBzYWd0OiBkaWUgZ3JvZXNzdGUgbHVlZ2Ugdm9uIGplZG1lIG11ZGRlciA7KSkKRHJvbGxpIHNhZ3Q6IGRhcyBpc3QgZGllIHNjaGVpbmhlaWxpZ3N0ZSBhdXNyZWRlIGRpZSBpY2ggamUgaG9lcnRlClNhcmdvbGEgc2FndDogaWNoIGthbm4gamVkZXJ6ZWl0IGF1ZmhvZXJlbi4uLiA6KSkpCkJ1enpjdXQgdmVyd3VzY2hlbHQgU2FyZ29sYXMgSGFhcmUuCkRyb2xsaSBzYWd0OiBkYXMgaXN0IGdlbmF1IHdpZSBiZWkgZGVuIHJhdWNoZXJuClNhcmdvbGEgbmlja3QgRHJvbGxpIHp1LgpTYXJnb2xhIGdyaW5zdC4KRHJvbGxpIHNhZ3Q6IGRpZSBzYWdlbiBhdWNoIGltbWVyIHNpZSBrb2VubmVuIGplZGVyemVpdCBhdWZob2VyZW4KRHUgc2Fnc3Q6IG5hamEuLi4gaWNoIHdhbmRlciBpbnMgUEsgYXVzIHVuZCBzdGVjayBtZWluZW4gRnJ1c3QgaW4gUGxheWVya2lsbHMKU2FyZ29sYSBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpCdXp6Y3V0IHdhZWx6dCBzaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KCkVyb3MgZGVua3QgICAuIG8gTyAoYWxzbyB3ZW5uIGRpZSBmZW1pbmlzdGlubmVuIGZ1ZXIgamRlbmUga251ZGRsZXIgZWluZSBrbGFnZQp3ZWdlbiBzZXh1ZWxsZXIgYmVsYWVzdGlndW5nIGVpbmdlcmVpY2h0IGhhYmVuKQpTYXJnb2xhIGdyaW5zdC4KRXJvcyBkZW5rdCAgIC4gbyBPIChkYW5uIGthbm4gaWNoIG1pciB2b3JzdGVsbGVuIHdhcnVtIGRlciB2ZXJlaW4gcGxlaXRlIGlzdCkKRHUgbmlja3N0IEVyb3MgenUuClNhcmdvbGEgc2FndDogYWxzbyBkaWUgYmVzZXNzZW5oZWl0IGdyZWlmdCBoZXV0IHVtIHNpY2ggOikKU2FyZ29sYSBncmluc3QgRXJvcyBhbi4KRHUgc2Fnc3Q6IEFsaWNlIFNjaHdhcnplciBoYXQgc29nYXIgbmVuIEFydGlrZWwgaW4gRU1NQSB1ZWJlciBkYXMgTUcKRHUgc2Fnc3Q6IGdlYnJhY2h0Li4uIGRhcyB3YXIgZGFubiBkYXMgSS1UdWVmcGVsY2hlbgo+IEJ1enpjdXQgZ2VodCBuYWNoIFdlc3Rlbi4KU2FyZ29sYSBmcmFndDogZWNodCB3YWhyPwpTYXJnb2xhIHNhZ3Q6IGRlbiBtYWcgaWNoIGxlc2VuIDopKQpEdSBzYWdzdDogYXVzZ2FiZSAxMC85OAo+IEVyb3MgZGVua3QgICAuIG8gTyAobmFqYSBtaXQgZGVyIHF1b3RlbnJlZ2VsdW5nIGhhdHMgamEgYXVjaCBuZWQKZnVua3Rpb25pZXJ0CmltIG1nIGtlaW4gZ290dCB3ZWlibGljaCwgdW5kIG51ciBlaW4gRSspCkR1IGZyYWdzdDogbG9nZ3QgZGFzIHdlciBtaXQ/Cj4gU2FyZ29sYSBncmluc3QgRGljaCBhbi4KSHVzdCEgS2V1Y2ghIEhhbHQgZGlyIGRvY2ggd2VuaWdzdGVucyBkaWUgSGFuZCB2b3IgZGVuIE11bmQhCj4gRXJvcyBzYWd0OiBobSBtYWwgc2NoYXVuIG9iIGljaCBkYXMgbm9jaCBhbGxlcyBlcndpc2NoCkR1IHNhZ3N0OiBpY2ggaGFldHQgZ2VybiBuZSBrb3BpZQpEcm9sbGkgc2FndDogc2FnIGJsb3Mgc2llIGZvcmRlcnQgZWluZSA1MCUgcXVvdGUgOykKQnV6emN1dCBrb21tdCBhbi4KRXJvcyBzYWd0OiBpY2ggaGFicwpTYXJnb2xhIHNhZ3Q6IGJlaSBkZW4gZ29ldHRlcm4gaGFiZW4gd2lyIHNpZSA7KQpCdXp6Y3V0IGxlZ3QgZGVuIFN0aWZ0IGFiLgpCdXp6Y3V0IHNhZ3Q6IGhpZXIgZnVlciBkaWUgc2Nod2Fyem1hbGVyCkRyb2xsaSBmcmFndDogZHUgbWVpbnN0IGhpZXIgaW0gc2lsYmVybGFuZD8KQnV6emN1dCBsZWd0IGRlbiBTdGlmdCBhYi4KU2FyZ29sYSBuaWNrdCB6dXN0aW1tZW5kLgpEcm9sbGkgZnJhZ3Q6IG5hamEgYWJlciB3aWV2aWVsZSB2b24gZGVuIGdvZXR0aW5uZW4gc2luZCBtYWVubmVyIDspKSA/CkJ1enpjdXQgbGVndCBkYXMgUGFhciBIYXVzc2NodWhlIGFiLgpTYXJnb2xhIHNhZ3Q6IGtlaW5lIDspCkVyb3Mgc2FndDogaWNoIGhhYiBkZXMgbG9nOikKCkFyYXRoIGpldHp0IGF1Y2guLi4ga2ljaGVydCBpbW1lciBub2NoIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhaGhqYSAuLi4gKEppZGR1LCAgMi4gTm92IDE5OTgsIDE2OjAzOjI4KToKfiMhIHJuPVllbmRpIHJ0PTkxMDAwNzkxMyByZz1zY2htYXJybgp+IyEgdGlkPTkwOTc2NTg2MApFbnRhcnRlbiwgS2FydGVuLCBTcGFydGVuLCBGYWhydGVuIC4uLiA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbW1lciBkaWVzZSBOUENzIChNb3Jnb3RoLCAgMy4gTm92IDE5OTgsIDEwOjE1OjA5KToKVE9ELUtBUkFURU9SSyA6IFNoYXJpYXMgU2NodXR6ZW5nZWwgaGF0IGRlbiBLYXJhdGVvcmsgZ2VraWxsdC4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWYgenVtIHJpZXNpZ2VuIFNhZXVyZWRhZW1vbmVuISAoTm92YXN0b3JtLCAgMy4gTm92IDE5OTgsIDIyOjE1OjEzKToKS2V5IGZyYWd0OiBXYXMgaXNzbiBpbSBzPwpEdSBzYWdzdDogKnplbnNpZXJ0KgpLZXkgc2NoYXV0IG1hbCBuYWNoIDspCkR1IGFyZ2xzdCBlaW4gd2VuaWcgdm9yIERpY2ggaGluLgpLZXkgZ2VodCBuYWNoIFN1ZWRlbi4KRHUgdGVpbHN0IGRlaW5lbiBGcmV1bmRlbiBtaXQ6IGFlaG0gS2V5IC4uLiBkYSBpc3Qgc29uIEZldWVyYmFsbCAuLi4uCktleSB0ZWlsdCBEaXIgbWl0OiB1aSBlaW4gZ3Jvc3NlciA6KQpEZWluIEZyZXVuZCBLZXkgdGVpbHQgRGlyIG1pdDoga2VpbmUgc29yZ2UsIGRlbiBoYWIgaWNoIGViZW4gc2Nob24gYWJiZWtvbW1lbgpEZWluIEZyZXVuZCBLZXkgdGVpbHQgRGlyIG1pdDogOykKRHUgdGVpbHN0IEtleSBtaXQ6IHVuZCBlaW4ga2xlaW5lciB1bmQgZWluIHJpZXNpZ2VyIDspCktleSBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBAd29yawpEZWluIEZyZXVuZCBCdXp6Y3V0IHRlaWx0IERpciBtaXQ6IEZlZGVyYmFsbCA/PwoKS2V5IHRlaWx0IERpciBtaXQ6IERhbmtlIGZ1ZXIgZGVuIHRpcCBBUkdMCgpbVG9kOkxhcnNdIEVpbiBGZXVlcmJhbGwgaGF0IGdlcmFkZSBLZXkgdW1nZWJyYWNodC4KW1RvZDpUb2RdIERBUyBXQVIgU0NIT04gREFTIDQ0MlRFIE1BTCEKc2NoYXUKSW4gZWluZXIgZnJlbWRlbiBEaW1lbnNpb24uCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4sIG5vcmRlbiB1bmQgbm9yZHdlc3Rlbi4KW0JlaWxlaWQ6U2hhcmlhIHdpY2tlbHQgRGljaCBpbiBlaW4gTGVpY2hlbnR1Y2gsIGJlc3BydWVodCBEaWNoIG1pdCBldHdhcwogICAgICAgICBXZWlod2Fzc2VyIHVuZCBiZWdyYWVidCBEaWNoLCB3YWVocmVuZCBTaWUgRGlyIGRlbiBsZXR6dGVuIFNlZ2VuCiAgICAgICAgIGVydGVpbHQuXQoKICAgIE5vdmEsIHNhZ3Qgbml4IHp1ICwpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGFoaGphIC4uLiAoQWNyaW1vbiwgIDMuIE5vdiAxOTk4LCAyMjozODo0NCk6Cn4jISBybj1ZZW5kaSBydD05MTAwMDc5MTMgcmc9c2NobWFycm4KfiMhIHRpZD05MDk3NjU4NjAKLi4uIHp1IHNhZXViZXJuIGRpZSBTY2h3YXJ0ZW4uIgoKOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzbyB1bndhaHJzY2hlaW5saWNoPyAoU29yY2VyZXIsICAzLiBOb3YgMTk5OCwgMjM6MTU6NTUpOgpbQWJlbnRldWVyOjxRdWVzdD5dIFNvcmNlcmVyIGhhdCBnZXJhZGUgZWluIEFiZW50ZXVlciBiZXN0YW5kZW46IFZhbGdlc3NhIApFaW4gUG9zdHJlaXRlciBydWZ0IERpciBhdXMgZWluaWdlciBFbnRmZXJudW5nIHp1LCBkYXNzIER1IG5ldWUgUG9zdCBoYXN0IQpEdSBmdWVobHN0IERpY2ggZGV1dGxpY2ggZXJmYWhyZW5lci4KPiBbQWxsZ2VtZWluOlRyYW5jZWZlYXJdIGthbm4gbmljaHQgc2VpbgoKR2xhdWJ0IGRhIGVpbmVyIG5pY2h0IGFuIG1pY2g/IDopCgpTb3JjKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNvIHVud2FocnNjaGVpbmxpY2g/IChUcmFuY2VmZWFyLCAgMy4gTm92IDE5OTgsIDIzOjE2OjUxKToKfiMhIHJuPVNvcmNlcmVyIHJ0PTkxMDEzMTM1NSByZz1zY2htYXJybgp+IyEgdGlkPTkxMDEzMTM1NQpJY2ggYmV6b2cgbWljaCBhdWYgUGFkcmVpYyBkZXIgYmVoYXVwdGV0IGhhdHRlIGRhc3MgZXIgZ3J1ZWJlbHQuCgp0ZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmxhY2gqIGViZW4gYmVpIFNoYXJpYS4gKE5haXJvbGYsICA0LiBOb3YgMTk5OCwgMDI6MDU6MDApOgpEYXMgVmllY2ggYXVzIGRlbSBTdW1wZiBkZXIgZXdpZ2VuIFZlcmRhbW1uaXMuCkVpbiBWaWVjaCB2ZXJnaWZ0ZXQgRGljaCwgd29obCB3aXNzZW5kLCBkYXNzIGVzIGRlbiBFbnRnaWZ0ZS1TcHJ1Y2ggZnVlcgpOaWNodC1LbGVyaWtlciBuaWNodCBtZWhyIGdpYnQuCkVpbiBWaWVjaCB2ZXJnaWZ0ZXQgU2hhcmlhLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRydmVzIEhvISAoUXVpY2ssICA0LiBOb3YgMTk5OCwgMDc6MTU6NDQpOgpEdSB6dWVja3N0IGRpZSBGZXVlcmF4dC4KRHUgc2NoYWVyZnN0IGRpZSBGZXVlcmF4dC4gRGllIEtsaW5nZSBzaWVodCBqZXR6dCB3aWVkZXIgcmVjaHQgZ2VmYWVocmxpY2gKYXVzLiBEYW1pdCBpc3QgZGllIEZldWVyYXh0IGpldHp0IG5pY2h0IGdlc2NoYWVyZnQuCgpOYSBkYSB3ZWlzcyBtYW4gZG9jaCwgd29mdWVyIG1hbiBzZWluZW4gU2NoYWVyZnNraWxsIGF1ZiA5NSUgaGF0IDopKQoKUXVpY2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11c3MgZGllICduZW4gU2lsYmVyYmxpY2sgaGFiZW4gOy0pIChNb3Jnb3RoLCAgNC4gTm92IDE5OTgsIDA5OjEyOjIwKToKTW9pcmFpbmUgYmxpY2t0IE1vaXJhaW5lIG1pdCBpaHJlbiBkdW5rZWxncnVuZW4gQXVnZW4gbWFnaXNjaCBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQm9pbmcsICA0LiBOb3YgMTk5OCwgMTY6NTU6MTIpOgpGYXN0IHVuZ2VzY2huaXR0ZW46CgpCcm9kYXIgdGVpbHQgRGlyIG1pdDogRGFua2UgZnVlciBkZWluZSBzcG9udGFuZSBIaWxmZSBbMTY6NDddCltUb2Q6TGFyc10gRWluIEFib2xldGggaGF0IGdlcmFkZSBCcm9kYXIgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkR1ZW5zdGUgPz8gKEJ1enpjdXQsICA0LiBOb3YgMTk5OCwgMTg6MDA6NDUpOgpQbG90aW4gZ2VodCBuYWNoIGF1ZiBkaWUgVG9pbGV0dGUgdW5kIGVzIHdpcmQgd2llZGVyIGhlbGxlci4KCkphIGFlaCB3aWUgamV0enQgPz8/CgpCdXp6Y3V0IGRlciBOYXNlbmdla2xhbW1lcnRlIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJzY2hpZWRlbmVzIDspIChLYWRhYnJhLCAgNS4gTm92IDE5OTgsIDAwOjIxOjUwKToKIHN0ZWNrZSB2ZXJzY2hpZWRlbmVzIGluIHBha2V0CkR1IHN0ZWNrc3QgZWluZSBvcmFuZ2UgTWF1cyBhbSBCYW5kIGluIGRhcyBQYWtldC4KRHUgc3RlY2tzdCBlaW5lbiBrbGVpbmVuIEthc3RlbiBpbiBkYXMgUGFrZXQuCkR1IHN0ZWNrc3QgZWluZSBLdWdlbCBpbiBkYXMgUGFrZXQuCkR1IHN0ZWNrc3QgZWluZW4gU2NobHVlc3NlbCBpbiBkYXMgUGFrZXQuCkR1IApEdSBzdGVja3N0IGVpbiBTemVwdGVyIGluIGRhcyBQYWtldC4KU2llIHN0ZWNrdCBpbiBEZWluZW0gSGFhci4gRHUgbXVzc3Qgc2llIGVyc3QgZW50ZmVybmVuLlNvIHdpcnN0IER1IGRhcwpGcmV1bmRzY2hhZnRzYmFuZCBuaWNodCBsb3MuLi4KU28gd2lyc3QgRHUgZGFzIEZlaW5kc2NoYWZ0c2JhbmQgbmljaHQgbG9zLi4uCkRpZXMgaXN0IGRpZSBiZXNvbmRlcmUgU2VoZXItRWRpdGlvbiwgZGllIGthbm5zdCBEdSBkb2NoIG5pY2h0IHdlZ3dlcmZlbiEKRGllIEdlbGRib2Vyc2UgaXN0IG5pY2h0IGxlZXIhClNvIHdpcnN0IER1IGRlbiBUZWRkeWJhZXIgbmljaHQgbG9zLi4uCkRhcyBwZXJzb2VubGljaGUgU2VydmljZXBha2V0IGRlciBtcGEga2FubiBtYW4gbmljaHQgd2Vnd2VyZmVuLgpTbyB3aXJzdCBEdSBkZW4gU2NobHVlc3NlbCBuaWNodCBsb3MuLi4KRHUgdWViZXJsZWdzdCBlcyBEaXIgbm9jaG1hbC4KRHUgd2lsbHN0IGRhcyBBYmVudGV1ZXJ0YWdlYnVjaCBkb2NoIG5pY2h0IHdlZ3dlcmZlbj8KU28gd2lyc3QgRHUgZGFzIFBmZWlmY2hlbiBuaWNodCBsb3MuLi4KS2FkYWJyYSBrYW5uc3QgRHUgZGEgbmljaHQgcmVpbiB0dW4uCkVpbmVuIE11ZWxsc2NobHVja2VyIGthbm5zdCBEdSBkYSBuaWNodCByZWluIHR1bi4KSWNoIGhhYnMgaW1tZXIgZ2V3dXNzdCwgaWNoIGJpbiB2ZXJzY2hpZWRlbiA7KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVyd2lzY2h0IC4uLiAoQW5hY3Jpb24sICA1LiBOb3YgMTk5OCwgMDM6MjQ6MjQpOgoKLXphPwpEdSBzaWVoc3QgMTUgR2VzaWNodGVyIGF1ZiBkZXIgRWJlbmUgJ1phdWJlcmVyJzoKQW5hY3Jpb24sIEJpZXJjaGVuLCBEYXJrd2luZywgRGhvamFrdCwgR2FuZG8sIEdhbmR1ciwgSmVtYW5kLCBKaWRkdSwKTGx5c3RyYXRoZSwgTWluZGJsYWRlLCBOYWNodHdpbmQsIFF1aWNrLCBUYW1pLCBUZWRkeSwgWGFuZAo8TWFzdGVSPiBoYXQgZGFzIFNhZ2VuIGF1ZiBkaWVzZXIgRWJlbmUuICAgICAgICAgICAgICAgICAgCiAuLi4uLiBobW1tIDopCgpBbmFjKiAtIGJ1ZyBvZGVyIGZlYXR1cmUgZnJhZ2VuZCAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhSTkdMLCBzY2hlaXNzIHJlc2V0cyAoWmVyLCAgNi4gTm92IDE5OTgsIDA4OjQ3OjQyKToKICAuLi4ubm9ybWFsL1NjaHdlcnQuLi4uLiBEdS4uLi4uLi4uLi4uIDogRWlzZ2lnYW50ZW4uLiAqKioqKioqKiAtPiBzZWhyIGhhcnQKRGVyIEVpc2dpZ2FudCBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW4gRWlzZ2lnYW50IGtvbW10IGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZWJlbiBpbSBTTCAoTGVpYm5peiwgIDYuIE5vdiAxOTk4LCAxODowNzoyNSk6CgpbQWJlbnRldWVyOlNjaG9rb10gQWJlciB3aWUgZ2VzYWd0LiBVbnRlcnN1aWNoZW4ga2FubiBpY2ggR2FlbnNlYmx1ZW1jaGVuLApbQWJlbnRldWVyOlNjaG9rb10gYWJlciBwZmx1ZWNrZW4gdHUgaWNoIGRhbm4gaW1lciBudXIgTG9ld2VuemFobgoKaGloaSwgU2Nob2tvIHdpcmQgenVtIEJsdWVtY2hlbnBmbHVlY2tlciA7KQoKTGVpYm5pegoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTm9yZHR1ZXIgKFNwYXR6LCAgNi4gTm92IDE5OTgsIDE4OjQ4OjAwKToKPiB3CkR1IHNjaGxpZXNzdCBlaW5lIEVpc2VudHVlci4KRGVyICBncm9zc2UgIFJhdW0gYmVzaXR6dCBlYmVuZmFsbHMgZGllIGdsYXR0ZW4sIGxldWNodGVuZGVuIFdhZW5kZSwgZGllCkR1IHNjaG9uIGtlbm5zdC4gIFZvciAgZGVyICBXZXN0d2FuZCAgc3RlaHQgIGF1ZiAgZWluZW0gIFBvc3RhbWVudCAgZWluZQpTdGF0dWUuCkRpZSBPc3R0dWVyIChnZXNjaGxvc3NlbikuIERpZSBOb3JkdHVlciAoZ2VzY2hsb3NzZW4pLiAKRXMgZ2lidCBrZWluZSBzaWNodGJhcmVuIEF1c2dhZW5nZS4KRWluZSAgd29obGtsaW5nZW5kZSAgTWFlbm5lcnN0aW1tZSBzcHJpY2h0IERpY2ggYW4gLSBzaWUgc2NoZWludCBhdXMgZGVtCklubmVyZW4gZGVyIFN0YXR1ZSB6dSBrb21tZW4uIEdlc2ljaHQgdW5kIExpcHBlbiBkZXIgU3RhdHVlIGJsZWliZW4gYWJlcgp2ZXJzdGVpbmVydC4gRGllIFN0aW1tZSBzYWd0OiBTZWkgbWlyIHdpbGxrb21tZW4sIGFiZXIgc2VpIGdld2FybnQhIFZlci0KbGFzcyBkaWVzZSBIYWxsZW4gYXVmIGRlbSBnbGVpY2hlbiBXZWcsIGF1ZiBkZW0gIER1ICBnZWtvbW1lbiAgYmlzdC4gIER1CmJsZWlic3QgIGFtIExlYmVuIHVuZCBrYW5uc3QgRGVpbmVuIEZyZXVuZGVuIGVyemFlaGxlbiwgRHUgaGFldHRlc3QgZWluLQptYWwgdm9yIGRlbSBPcmtlbmhvcnQgZ2VzdGFuZGVuLiBXZW5uICBEdSAgb2huZSAgVmVybnVuZnQsICBhYmVyICB2b2xsZXIKV2FnZW11dCAgYmlzdCwgIGRhbm4gZ2VoIGR1cmNoIGRpZSBOb3JkdHVlci4gRHUgd2lyc3QgZXJzdGF1bmxpY2hlIERpbmdlCnp1IHNlaGVuIGJla29tbWVuLCBhYmVyIGljaCBiZXp3ZWlmbGUsIGRhc3MgRHUgamVtYWxzIEdlbGVnZW5oZWl0ICBoYWJlbgp3aXJzdCwgIGRhdm9uICB6dSAgZXJ6YWVobGVuLiAgV2VubiBEdSBkdXJjaCBkaWUgTm9yZHR1ZXIgZ2VnYW5nZW4gYmlzdCwKd2VyZGUgIGljaCAgc2llICB2ZXJzY2hsaWVzc2VuIHVuZCBiZXdhY2hlbiB1bmQgRHUga2FubnN0IGRpZXNlbiBBdXNnYW5nCnZlcmdlc3Nlbi4KPiBvZWZmbmUgbm9yZHR1ZXIKPiBuCkR1IG9lZmZuZXN0IGVpbmUgTm9yZHR1ZXIuCkVpbmUgTm9yZHR1ZXIgc2NobGllc3N0IHNpY2guCkRpZSBOb3JkdHVlciBpc3QgZ2VzY2hsb3NzZW4uCgpBbnNjaGVpbmVuZCBpc3QgbWVpbiBTY2hhdHRlbiBzY2huZWxsZXIgYWxzIGljaCBzZWxic3QgOi0pCgpTcGF0egoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbWFncyBsZWJlbiBnZWZhZWhybGljaCA6KSAoQmllcmNoZW4sICA3LiBOb3YgMTk5OCwgMDA6MDI6NDYpOgpEdSBzY2hsYWVnc3QgRHJvbGxpIGF1cyBkZXIgRmVybmUuCkRyb2xsaSB0ZWlsdCBEaXIgbWl0OiBkYXMgZXJob2VodCBudXIgZGVpbmUgc2NobWVyemVuIHdlbm4gd2lyIHVucyBkYXMKbmFlY2hzdGUKRHJvbGxpIHRlaWx0IERpciBtaXQ6IG1hbCBiZWdlZ25lbiA7KQpEcm9sbGkgdGVpbHQgRGlyIG1pdDogaWNoIGZ1ZWhyZSBidWNoCkR1IHRlaWxzdCBEcm9sbGkgbWl0OiBodWNoLCBkdSB6YWVobHN0IG1pdC4gd2lldmllbCBzY2hsYWVnZSB3YXJlbnMgZGVubgpEdSB0ZWlsc3QgRHJvbGxpIG1pdDogc2Nob24/IDopCkRyb2xsaSB0ZWlsdCBEaXIgbWl0OiBlcyBnaWJ0IGJlaSBkaXIgYmlzaGVyIDEyIG1hbCBhdWYgZGllIGZyZXNzZSAxIGFybWJydWNoCkRyb2xsaSB0ZWlsdCBEaXIgbWl0OiAzIG1hbCBzY2hpZW5iZWludHJldGVuIHVuZCBlaW5tYWwga2FzdHJhdGlvbgpEcm9sbGkgdGVpbHQgRGlyIG1pdDogc292aWVsIHN0ZWh0IGF1ZiBkZWluZXIgbGlzdGUgbmFqYSBiZWkgdGlsbHkgZXR3YXMKRHJvbGxpIHRlaWx0IERpciBtaXQ6IHdlbmlnZXIKRHJvbGxpIHRlaWx0IERpciBtaXQ6IHdlaWwgZXIgdmVyc3Byb2NoZW4gaGF0IGRpY2ggZmVzdHp1aGFsdGVuIDspCkR1IHRlaWxzdCBEcm9sbGkgbWl0OiB0c3RzLCBpY2ggZ2VoIHNvd2llc28gbmljaHQgbWVociB2b3IgZGllIHR1ZXIuIGFldHNjaCA6KQpEcm9sbGkgdGVpbHQgRGlyIG1pdDogZmVpZ2Ugc2F1IDopIGd1dCBkYXMgZXMgYmVzdGVsbGtpbGxlciBnaWJ0IDopCgoqZ3JpbnMqIGljaCB2ZXJsYW5nZSBwb2xpemVpc2NodXR6ISA6KQogLSBCaWVyY2hlbiAtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadSBzcGFldCAoR2VvcmRpLCAgNy4gTm92IDE5OTgsIDAyOjMwOjQ2KToKRGVpbiBGcmV1bmQgRmV1ZXJ3ZWhyIHRlaWx0IERpciBtaXQ6IFdhYWFhYWgsIG1pc3QsIFdJRSBTcGFldCBpc3QgZGFzPz8/CklyZ2VuZHdvIGluIGRlciBFbnRmZXJudW5nIGhvZXJzdCBEdSBlaW5lbiBncmF1ZW52b2xsZW4gU2NocmVpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZlcnNjaGllZGVuZXMgOykgKEphc29ucmlnaWQsICA3LiBOb3YgMTk5OCwgMTY6MDM6MDUpOgp+IyEgcm49S2FkYWJyYSBydD05MTAyMjE3MTAgcmc9c2NobWFycm4KfiMhIHRpZD05MTAyMjE3MTAKSWNoIG5pY2h0ICEhIQoKRGFzIExlYmVuIGRlcyBKYXNvblJpZ2lkICpncmluc2VuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktleSBTY2hsdWVzc2VsIChTdGluZywgIDcuIE5vdiAxOTk4LCAxOTo1NzoyOSk6Ck5lc2FqYSBzYWd0OiB3ZWlsIGtleSBuZW4gc2NobHVlc3NlbCBoYXQKCip3YWVseioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLZXkgU2NobHVlc3NlbCAoTm92YXN0b3JtLCAgNy4gTm92IDE5OTgsIDE5OjU4OjQ1KToKfiMhIHJuPVN0aW5nIHJ0PTkxMDQ2NTA0OSByZz1zY2htYXJybgp+IyEgdGlkPTkxMDQ2NTA0OQpVbmQgd28gaXN0IGhpZXIgZGVyIFdpdHogZGFiZWkgPyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVzc2VuIG1pdCBGUkFVRU4hIChLZXksICA3LiBOb3YgMTk5OCwgMjI6MDE6NTQpOgpUYW5kYTogV2VubiBtYW4gZXMgaXN0IGFuZmFzc3QgaXN0IGVzIGVudHdlZGVyIHdlaWNoIG9kZXIgaGFydCEKTmVzYWphOiBVbmQgd2VubiBtYW4gZXMgYXVmc2NobmVpZGV0IGtvbW1lbiBIYWFyZSB1bmQgWmFlaG5lIHJhdXMuCgpJY2ggZnJhZyBtaWNoIGRvY2ggZWNodCB3b3J1ZWJlciBkaWUgbGFiZXJuICwpCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIGthbm4gbWFuIGRhcyBhdWNoIG1hY2hlbiA6KSAoTmFjaHR3aW5kLCAgNy4gTm92IDE5OTgsIDIyOjM3OjA5KToKS2V5IHN0ZWNrdCBlaW4gR2xpdHplcnNjaHdlcnQgaW4gZWluZSBPZWZmbnVuZyBpbiBkZXIgV2FuZC4KRGFzIFN5bWJvbCBkZXMgS3Jpc3RhbGxzIHdpcmQgdm9uIGVpbmVtIG1hZ2lzY2hlbiBMZXVjaHRlbiB1bWdlYmVuLgpLZXkgc3RlY2t0IGVpbiBFaXNzY2h3ZXJ0IGluIGVpbmUgT2VmZm51bmcgaW4gZGVyIFdhbmQuCkRhcyBTeW1ib2wgZGVzIEVpc2JlcmdlcyB3aXJkIGluIHdlaXNzZXMgTGljaHQgZ2V0YXVjaHQuCktleSBzdGVja3QgZWluIEZldWVyc2Nod2VydCBpbiBlaW5lIE9lZmZudW5nIGluIGRlciBXYW5kLgpEYXMgU3ltYm9sIGRlciBGbGFtbWUgbG9kZXJ0IGF1Zi4KS2V5IHN0ZWNrdCBlaW5lbiBWb2xsc3RyZWNrZXIgaW4gZWluZSBPZWZmbnVuZyBpbiBkZXIgV2FuZC4KRGVyIFZvbGxzdHJlY2tlciB2ZXJzY2h3aW5kZXQsIGFiZXIgbmljaHRzIHBhc3NpZXJ0LgpLZXkgYXJnbHQgZWluIHdlbmlnIHZvciBzaWNoIGhpbi4KS2V5IHNjaHJlaXQgbGF1dCEKS2V5IGZhZW5ndCBmdWVyY2h0ZXJsaWNoIGFuIHp1IGZsdWNoZW4uCkxpbGxlYnJvciBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KPgpEdSB3YWVsenQgRGljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uCj4gTGlsbGVicm9yIHRyb2VzdGV0IEtleS4KW1NlaGVyOktleV0gQUFBQUFBQUFBQUFBQUFBQVJSUlJSUlJSUlJSUlJHR0dHR0dHR0dHR0dHR0dHTExMTExMTExMTExMTAoKTmFjaHR3aW5kLiBMYWNodCBpbW1lciBub2NoIGRyZWNraWcgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipsYWNoKiBHdXQgZXJrYW5udCA6LSkgKE5vdmFzdG9ybSwgIDguIE5vdiAxOTk4LCAwMjozMTo1OSk6CltCaWVyc2NodWV0dGxlcjpCcnVub10gSWNoIGhhYmUgZ2VyYWRlIGRpZSBUb3BsaXN0ZSBha3R1YWxpc2llcnQuCkVpbiBsZWlzZXMgU2V1ZnplbiBpc3QgenUgaG9lcmVuLgoKICAgIE5vdmEgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRXNzZW4gbWl0IEZSQVVFTiEgKE1vcmdvdGgsICA4LiBOb3YgMTk5OCwgMTE6MTg6MDEpOgp+IyEgcm49S2V5IHJ0PTkxMDQ3MjUxNCByZz1zY2htYXJybgp+IyEgdGlkPTkxMDQ3MjUxNApIYXN0IER1IEtyaWVnIGRlciBFaXNwaXJhdGVuIGdlc2VoZW4/Pz8KTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwb3J0bGljaGVyIFdhbmRsZXIgKFdvb2R5LCAgOC4gTm92IDE5OTgsIDE5OjQ1OjI2KToKVm9uIHdlaXRlbSBzaWVoc3QgRHUgZWluZW4gV2FuZGxlciBlbGVnYW50IHVlYmVyIGRhcyBFaXMgZ2xlaXRlbi4KCm8uVy4KV29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIGdpbmcgYWJlciBmaXggKFR3aW5zZW4sICA4LiBOb3YgMTk5OCwgMjI6MDg6MjApOgpQbG90aW4gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKIFtUb2Q6TGFyc10gRWluIEFib2xldGggaGF0IGdlcmFkZSBQbG90aW4gdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWUgSG9jaGViZW5lLCBvZGVyOiBCb3lrb3R0aWVydCBQYS1Cb29uID8gKE5lYiwgIDkuIE5vdiAxOTk4LCAwMDo1Mzo0OSk6CkRpZXNlcyBMb2cgdmVyb2VmZmVudGxpY2hlIGljaCBpbSBBdWZ0cmFnIHZvbiBMaWxsZWJyb3IsIGF1cyBkZXJlbiBTaWNodCBkaWUKZm9sZ2VuZGVuIHR1cmJ1bGVudGVuIEVyZWlnbmlzc2UgYmVpIEVyZm9yc2NodW5nIGRlciBuZXVlbiBIb2VobGVuIHZvbiBCYWJvb24KKG9kZXIgZG9jaCBQYS1Cb29uPykgZ2VzY2hpbGRlcnQgc2luZC4gRXMgaXN0IHp3YXIgbGFuZywgYWJlciBpY2ggZmFuZAplaWdlbnRsaWNoIGFsbGVzIHp1IHNjaGFkZSwgdW0gYXVjaCBudXIgaXJnZW5kZXR3YXMgenUga3Vlcnplbi4KQUxzbywgaGllciBmb2xndCBMaWxsZWJyb3JzIEJlcmljaHQgdWViZXIgZGVuIG5haGV6dSBkcmFtYXRpc2NoZW4gS2FtcGYgdm9uIDMKd2Fja2VyZW4gU2VoZXJuIGdlZ2VuIFBhLUJvb25zIG5ldWVzIFBhcmFkZW1vbnN0ZXIsIGRlbiBCbGluZGZpc2NoLCBiaXMgenUKaWhyZXIgZ2xvcnJlaWNoZW4gUmV0dHVuZyBkdXJjaCBlaW5lbiBoaWxmc2JlcmVpdGVuIEVyem1hZ2llcjoKCgpEdSB0ZWlsc3QgTmViIG1pdDogYmluIHVudGVyd2VncwpEZXIgR2FuZyB2ZXJsYWV1ZnQgaGllciBzY2hudXJnZXJhZGUgaW4gTm9yZC1TdWVkLVJpY2h0dW5nLCB3b2JlaSBlciBuYWNoCk5vcmRlbiBoaW4gbGVpY2h0IGFuc3RlaWd0LiBFciB2ZXJlbmd0IHNpY2ggZXR3YXMsIGlzdCBhYmVyIGltbWVyIG5vY2ggYnJlaXQKZ2VudWcuIEdlbXVldGxpY2ggaXN0IGVzIGhpZXIgdHJvdHpkZW0gbmljaHQ6IEVzIGlzdCBrYWx0LCB6dWdpZyB1bmQgYXVzIGRlcgpEdW5rZWxoZWl0IGtvZW5udGUgZGljaCBqZWRlbiBNb21lbnQgZWluIGdyYXVlbmhhZnRlcyBNb25zdGVyIGFuc3ByaW5nZW4sCnVtIGRlaW5lbSBMZWJlbiBlaW4gRW5kZSB6dSBzZXR6ZW4uCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4gdW5kIG5vcmRlbi4KSGllciBnYWJlbHQgc2ljaCBkZXIgR2FuZy4gRGVyIEhhdXB0Z2FuZyBmdWVocnQgbmFjaCBTdWVkZW4gbGVpY2h0IGFid2FlcnRzCnVuZCBuYWNoIE5vcmRvc3RlbiBsZWljaHQgYXVmd2FlcnRzLiBOYWNoIE5vcmR3ZXN0ZW4gendlaWd0IGVpbiBzY2htYWxlciwKc3RlaWwgYW5zdGVpZ2VuZGVyIFNlaXRlbmdhbmcgYWIuIFZvbiBkb3J0IHJpbm50IGVpbiBrbGVpbmVzIFJpbm5zYWwgaGVyYWIKdW5kIHZlcnNpY2tlcnQgaW0gS2llcyBkZXMgSGF1cHRnYW5ncy4gQW5zb25zdGVuIHNjaGVpbnQgZXMgaGllciBhYmVyIGF1c3NlcgpEdW5rZWxoZWl0LCBLYWVsdGUsIHVuZCBOYWVzc2UgbmljaHQgdmllbCB6dSBnZWJlbi4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiwgbm9yZG9zdGVuIHVuZCBub3Jkd2VzdG9iZW4uOz4gTmViCmVyc2NoZWludCBpbiBnb2V0dGxpY2hlbSBBdWZ0cmFnLgpFaW4gUGhvZW5peCBmbGllZ3QgaGVyZWluLgpEdSBncmluc3QuCk5lYiBiZWdpYnQgc2ljaCBuYWNoIE5vcmRvc3Rlbi4KRGVyIFBob2VuaXggZmxpZWd0LgpIaWVyIGdhYmVsdCBzaWNoIGRlciBHYW5nLiBEZXIgSGF1cHRnYW5nIGZ1ZWhydCBuYWNoIFN1ZWRlbiBsZWljaHQgYWJ3YWVydHMKdW5kIG5hY2ggTm9yZG9zdGVuIGxlaWNodCBhdWZ3YWVydHMuIE5hY2ggTm9yZHdlc3RlbiB6d2VpZ3QgZWluIHNjaG1hbGVyLApzdGVpbCBhbnN0ZWlnZW5kZXIgU2VpdGVuZ2FuZyBhYi4gVm9uIGRvcnQgcmlubnQgZWluIGtsZWluZXMgUmlubnNhbCBoZXJhYgp1bmQgdmVyc2lja2VydCBpbSBLaWVzIGRlcyBIYXVwdGdhbmdzLiBBbnNvbnN0ZW4gc2NoZWludCBlcyBoaWVyIGFiZXIgYXVzc2VyCkR1bmtlbGhlaXQsIEthZWx0ZSwgdW5kIE5hZXNzZSBuaWNodCB2aWVsIHp1IGdlYmVuLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuLCBub3Jkb3N0ZW4gdW5kIG5vcmR3ZXN0b2Jlbi4KRGVyIEdhbmcgZnVlaHJ0IHNjaGVpbmJhciBld2lnIHdlaXRlciBkdXJjaCBkZW4gQmVyZy4gRHVyY2ggZGllIGFuc3RyZW5nZQpMYXVmZXJlaSBiaXN0IGR1IHRyb3R6IGRlciBrdWVobGVuIEx1ZnQgc2Nob24gZWluIHdlbmlnIGlucyBTY2h3aXR6ZW4KZ2Vrb21tZW4uIERlciBCb2RlbiBzdGVpZ3QgbGFuZ3NhbSBhYmVyIHN0ZXRpZyBuYWNoIE5vcmRvc3RlbiBoaW4gYW4uClZvbiBkb3J0IHNpZWhzdCBkdSBhdWNoIGVpbiBMaWNodCBpbiBkZXIgRmVybmUgc2NoaW1tZXJuLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZHdlc3RlbiB1bmQgbm9yZG9zdGVuLgpFaW4gUGhvZW5peC4KTmViIGhhdCBkZW4gQmFydCBkZXIgU2hhcmlhIGdlZnVuZGVuIC0gSmV0enQgaXN0IHNpZSB3b2hsIGVpbiBad2VyZy47PiBOZWIKdGVpbHQgRGlyIG1pdDogbm8KTmViIGJlZ2lidCBzaWNoIG5hY2ggTm9yZG9zdGVuLgpEZXIgUGhvZW5peCBmbGllZ3QuCkRlciBHYW5nIHdlaXRldCBzaWNoIGhpZXIgenUgZWluZXIgc2NobGF1Y2hmb2VybWlnZW4sIGdlYm9nZW5lbiBIb2VobGUsCmRpZSB2b24gZWluZW0gZGlmZnVzZW4sIGdlbGJlbiBHbHVlaGVuIGVybGV1Y2h0ZXQgaXN0LiBBbHMgUXVlbGxlIGRpZXNlcwpHbHVlaGVucyBtYWNoc3QgZHUgZGFzIE1vb3MgYXVzLCBkYXNzIGhpZXIgYWxsZXMgdWViZXJ3dWNoZXJ0LiBBdXMgZGVyCkhvZWhsZSBoZXJhdXMgZnVlaHJlbiB6d2VpIFdlZ2UgaW4gZGllIER1bmtlbGhlaXQ6IEVpbm1hbCBnZWh0IGVzIGxlaWNodApiZXJnYWIgbmFjaCBTdWVkd2VzdGVuIHVuZCB6dW0gWndlaXRlbiB6aWVtbGljaCBzdGVpbCBhYndhZXJ0cyBpbgpub3Jkd2VzdGxpY2hlIFJpY2h0dW5nLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZHdlc3RlbiB1bmQgbm9yZHdlc3R1bnRlbi4KRWluIFBob2VuaXguCk5lYiBoYXQgZGVuIEJhcnQgZGVyIFNoYXJpYSBnZWZ1bmRlbiAtIEpldHp0IGlzdCBzaWUgd29obCBlaW4gWndlcmcuClZlcnRlaWRpZ2VyaW4gZGVzIHdhaHJlbiBCbG9lZHNpbm5zIE5lc2FqYSBzYWd0OiBUb2QgLSBkZW0gZmFsc2NoZW4KQmxvZWRzaW5uLi4KTmViIHNhZ3Q6IHZvbiBoaWVyIGF1cyBub3Jkd2VzdHVudGVuCk5lc2FqYSBzYWd0OiBKdW5ncyB1bmQgTWFlZGVscwpOZWIgc2FndDogYWJlciBWT1JTSUNIVCAhCkR1IGdlaHN0IHZvcnNpY2h0aWcgZGVuIEdhbmcgaGludW50ZXIsIGRlciBpbW1lciBuYXNzZXIgd2lyZC4gTmFjaCBlaW5pZ2VuCmh1bmRlcnQgTWV0ZXJuIHdhdGVzdCBkdSBiZXJlaXRzIGZsdWNoZW5kIGR1cmNoIHN0ZXRpZyB0aWVmZXIgd2VyZGVuZGVzCldhc3Nlci4gU2NobGllc3NsaWNoIGVya2VubnN0IGR1LCBkYXNzIGRpZXMgd29obCBlaW5lIFNhY2tnYXNzZSBpc3QuCkR1IHN0ZWhzdCBiZXJlaXRzIGJpcyB6dSBkZW4gS25pZW4gaW0gV2Fzc2VyIHVuZCBkZXIgYWJzY2h1ZXNzaWdlIEdhbmcKZnVlaHJ0IGltbWVyIG5vY2ggdGllZmVyIGhpbmFiLiBJbSBQcmluemlwIHd1ZXJkZXN0IGR1IGRpY2ggZGF2b24gbmljaHQKYXVmaGFsdGVuIGxhc3NlbiwgZG9jaCB3ZW5pZ2UgTWV0ZXIgdm9yIGRpciBzaWVoc3QgZHUgZGllIEdhbmdkZWNrZQp1bnRlciBkZW0gV2Fzc2Vyc3BpZWdlbCB2ZXJzY2h3aW5kZW4uIERhbWl0IGlzdCBoaWVyIHdvaGwgRW5kc3RhdGlvbi4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHdhc3NlciB1bmQgc3VlZG9zdG9iZW4uCkVpbiBCbGluZGZpc2NoLgpFaW4gQmxpbmRmaXNjaCBpc3QgYWJzb2x1dCBmaXQgdW5kIGlzdCBkYW1pdCB1bmdsYXVibGljaCBzY2h3YWVjaGVyIGFscyBEdS4gRXIKa2FlbXBmdCBtaXQgZXJzdGF1bmxpY2ggc2NoYXJmZW4gWmFlaG5lbi4gRXIgbWFjaHQgZGFtaXQgZm9sZ2VuZGVuIFNjaGFkZW46ClN0aWNoZS4gRGFtaXQga2FlbXBmdCBlciB2aWVsIHNjaGxlY2h0ZXIgYWxzIER1LiBFaW4gQmxpbmRmaXNjaCB0cmFlZ3Qga2VpbmUKenVzYWV0emxpY2hlIFJ1ZXN0dW5nLiBEYW1pdCBpc3QgZXIgc2VociB2aWVsIHNjaGxlY2h0ZXIgYWxzIER1IGdlc2NodWV0enQuCkVpbiBCbGluZGZpc2NoIGlzdCBldHdhIDZjbSBncm9zcy4KTmVzYWphIGtvbW10IGR1cmNoIGRlbiBHYW5nIGhlcmFiZ2V3YXRldC4KRGVyIEJsaW5kZmlzY2ggdmVyZmVobHQgTmVzYWphLgpOZXNhamEgZ3JlaWZ0IGRlbiBCbGluZGZpc2NoIG1pdCBlaW5lbSBUaGVhdGVybWVzc2VyIGFuLgpOZXNhamEga3JhdHp0IGRlbiBCbGluZGZpc2NoLgpOZXNhamEga3JhdHp0IGRlbiBCbGluZGZpc2NoLgpEZXIgQmxpbmRmaXNjaCB2ZXJmZWhsdCBOZXNhamEuCk5lYiBrb21tdCBkdXJjaCBkZW4gR2FuZyBoZXJhYmdld2F0ZXQuCk5lc2FqYSBrcmF0enQgZGVuIEJsaW5kZmlzY2guCkRlciBCbGluZGZpc2NoIHZlcmZlaGx0IE5lc2FqYS4KRWluIFBob2VuaXggZmxpZWd0IGhlcmVpbi4KTmVzYWphIHNhZ3Q6IHZvcnNpY2h0Ck5lc2FqYSBrcmF0enQgZGVuIEJsaW5kZmlzY2guCkRlciBCbGluZGZpc2NoIHZlcmZlaGx0IE5lc2FqYS4KTmVzYWphIGtyYXR6dCBkZW4gQmxpbmRmaXNjaC4KRGVyIEJsaW5kZmlzY2ggdmVyZmVobHQgTmVzYWphLgpOZWIgcnVmdCBkaWUgc2NoYWZmZW5kZSBLcmFmdCBMZW1ib2xkcyBhbi4KTmViIHNjaGFmZnQgRnJpZWRlbi4KTmVzYWphIHNhZ3Q6IG5lYiAuLi4uLmRlbmsgYW4gZGVpbmUgbHBzCk5lc2FqYSBzYWd0OiBHVVQKRHUgYmlzdCBlcnN0YXVudC4KTmViIHNhZ3Q6IG1taCwgaWNoIGtvZW5udGUgYmVmcmllZGVuID8KTmVzYWphIHNhZ3Q6IHdhaG5zaW5uIDopIHRlbGVwb3J0IGZhZW5ndCBlciBhYgpOZWIgc2FndDogbGlsbGVicm9yIDogdm9yc2ljaHQgMTUwLCBmbHVjaHRyaWNodHVuZyBzdWVkb3N0b2JlbiAhCkR1IG5pY2tzdCBOZWIgenUuCk5lc2FqYSBuaWNrdCB6dXN0aW1tZW5kLgpEdSBzYWdzdDogZnVlciBhbmZhZW5nZXIgaXN0IGRlciBlY2h0IHVlYmVydHJpZWJlbgpPaywgRmx1Y2h0cmljaHR1bmcgInNvb2IiLgpOZXNhamEgc2FndDogYWJlciB0b3RhbApOZWIgbmlja3QgRGlyIHp1LgpOZWIgc2FndDogdW5kIHNvbiB3dXJzdG1vbnN0ZXIgd2llIGRpZSBoeWRyYSBrcmllZ3QgNzUgc3R1cHNlCk5lYiBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpOZXNhamEgc2FndDogbmViIHVuZCBpY2ggc2luZCBlYmVuIGhpZXIgbnVyIGtuYXBwIHJhdXNnZWtvbW1lbgpOZXNhamEgbmlja3QgenVzdGltbWVuZC4KRHUgc2Fnc3Q6IGlzdCBlY2h0IG51ciBkZXIgc3ludGF4IHp1enVzY2hyZWliZW4gZGFzcyBoaWVyIG5vY2gga2VpbmVyCkR1IHNhZ3N0OiBnZXN0b3JiZW4gaXN0Ck5lc2FqYSBzYWd0OiB1bmdsYXVibGljaApOZWIgc3RlY2t0IGVpbmVuIFdlc3BlbnN0YWNoZWwgenVydWVjay4KTmViIHJpY2h0ZXQgc2VpbiBLZXJiaG9seiBhdWYgZWluZW4gQmxpbmRmaXNjaC4KTmVzYWphIHN0ZWNrdCBlaW4gVGhlYXRlcm1lc3NlciB6dXJ1ZWNrLgpOZXNhamEgcmljaHRldCBpaHIgS2VyYmhvbHogYXVmIGVpbmVuIEJsaW5kZmlzY2guCkR1IHN0ZWNrc3QgWW50IFF1YSB6dXJ1ZWNrLgpOZXNhamEgenVlY2t0IGVpbiBUaGVhdGVybWVzc2VyLgpOZWIgc2FndDoga2VpbiBlaW56aWdlbiBzdHVwcyBkYXMgdGVpbApEdSByaWNodGVzdCBEZWluIEtlcmJob2x6IGF1ZiBlaW5lbiBCbGluZGZpc2NoLCBlcyBwYXNzaWVydCBuaWNodHMuCk5lc2FqYSBzYWd0OiBqYSAuLmljaCBzYWd0ZSBqYTogenUgc2Nod2VyIGZ1ZXIgc3R1cHNlCk5lYiBkZW5rdCAgIC4gbyBPIChtcnVmZSBtZWluIGtlcmJob2x6IGJ1Z2d0ID8pCk5lc2FqYSBuaWNrdCB6dXN0aW1tZW5kLgpEdSBuaWNrc3QgTmViIHp1LgpMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gU29uLCAgOC4gTm92IDE5OTgsIDE2OjM5OjQzICg0ClRlaWxuZWhtZXIpO1F1aWxsaWFuLi4uLi4uLkouTSBDeW1vbmsuLi4uLi4uLi5pLlIgUGFkcmVpYy4uLi4uLi4uLi5SCkhhdGUuLi4uLi4uLi4uLkouRTtOZWIgZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KRHUgc2Fnc3Q6IHJpa3VzIHdhciB2b3JoaW4gc29nYXIgZGEuLgpOZWIgc2FndDogaGF0ZSB6YXB0IG1pY2ggOykKRHUga2ljaGVyc3QuIChXaWUgYWxiZXJuIHZvbiBEaXIpCk5lc2FqYSBzYWd0OiBwYWRyZWljID8KTmViIG5pY2t0IE5lc2FqYSB6dS4KTmVzYWphIHNhZ3Q6IGRlciBrb21tdCBnYXJhbnRpZXJ0IHdlbm4gaWNoIHJ1ZmUKRHUgbmlja3N0IHp1c3RpbW1lbmQuCk5lYiBzYWd0OiBydWYgbWFsLCBuZXNpICEKTmViIHNhZ3Q6IE1JUiBGQUVMTFQgR1JBRCBXQVMgRUlOICEKTmViIGFyZ2x0IGVpbiB3ZW5pZyB2b3Igc2ljaCBoaW4uCk5lYiBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpOZWIgYXJnbHQgZWluIHdlbmlnIHZvciBzaWNoIGhpbi4KTmVzYWphIHNhZ3Q6IHdhcwpEdSBzYWdzdDogaG0/Ck5lYiBzYWd0OiBpY2ggZ2xhdWJlOiBXSVIgU0lORCBISUVSIEFVRiBERVIgUEFSQS1IT0NIRUJFTkUgISEhCk5lYiBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpOZWIgYXJnbHQgZWluIHdlbmlnIHZvciBzaWNoIGhpbi4KTmViIGFyZ2x0IGVpbiB3ZW5pZyB2b3Igc2ljaCBoaW4uCk5lc2FqYSBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpEdSBmbHVjaHN0IGxhdXRzdGFyay4KTmViIGZhZW5ndCBmdWVyY2h0ZXJsaWNoIGFuIHp1IGZsdWNoZW4uCk5lc2FqYSBzYWd0OiBkdSBtZWluc3QgZGllIG1vdmVuIGVpbmVtIGFtIGVmZXUgaW4gZGllIHBhcmF3ZWx0Ck5lYiBuaWNrdCBOZXNhamEgenUuCk5lc2FqYSBzYWd0OiBoZXkgZGFzIHd1ZXJkZSBhdWNoIGRlbiBuZWJlbGRyYWNoZW4gYXVmIGRlbSB0YW5rd2VnIGVya2xhZXJlbgpOZWIgc2FndDogYmFib29uIGlzIGZ1ZXIgc293YXMgYmVrYW5udCAhCk5lc2FqYSBuaWNrdCBOZWIgenUuCk5lc2FqYSBzYWd0OiBzdGltbXQKRHUga3JhdHp0IGRpY2ggYW0gS29wcC4KTmViIHNhZ3Q6IHNvbGwgamV0enQgYXVjaCBpbiAiUGEtYm9vbiIgdW1nZXRhdWZ0IHdlcmRlbiAhCkR1IHNhZ3N0OiBvYiBpY2ggbGllYmVyIGdsZWljaCAnZW5kZScgbWFjaGU/Ck5lc2FqYSBzYWd0OiBQYXJhLWJvb24KTmViIGxhdXNjaHQgZHVyY2ggZWluIG1hZ2lzY2hlcyBIb2Vycm9oci4KTmViIGxhdXNjaHQgZHVyY2ggZWluIG1hZ2lzY2hlcyBIb2Vycm9oci4KTmViIGFyZ2x0IGVpbiB3ZW5pZyB2b3Igc2ljaCBoaW4uCkVpbmUgU3RpbW1lIGZsdWVzdGVydDogRGllc2VyIFJhdW0gd3VyZGUgdm9uIEJhYm9vbiBnZXNjaHJpZWJlbi4KTmViIHNhZ3Q6IGljaCBiaW4gdGF0c2FlY2hsaWNoIGluIGVpbmVtICJQYS1ib29uIi1nZWJpZXQKTmViIHppdHRlcnQgdm9yIEFuZ3N0LgpOZXNhamEgYmVydWhpZ3QgTmViLgpOZXNhamEgc2FndDoga2VpbmUgc29yZ2UgLi4uLnNvbGFuZ2UgaWNoIGxlYmUgLi5iaXN0ZSBzaWNoZXIKTmVzYWphIGRlbmt0ICAgLiBvIE8gKFNPTEFOR0UpCkR1IGdyaW5zdC47PiBOZWIgbmlja3QgTmVzYWphIHp1LgpOZWIgenVlY2t0IGVpbmVuIFdlc3BlbnN0YWNoZWwuCndhc3NlcgpEdSBoYXN0IGRvY2ggbmljaHQgZGllIGdlcmluZ3N0ZSBBaG51bmcsIHdpZSB3ZWl0IGRlciBHYW5nIHVudGVyIFdhc3Nlcgp2ZXJsYWV1ZnQuIER1IHd1ZXJkZXN0IGhvZWNoc3R3YWhyc2NoZWlubGljaCBlbGVuZGlnIGVydHJpbmtlbi4gVmVyZ2lzcwplcyBhbHNvIGdhbnogc2NobmVsbCB3aWVkZXIhCk5lYiBzYWd0OiBndXQgZGFzcyB3aXIgdm9yaGVyIG5vY2ggZGVuIHdlc3BlbnN0YWNoZWwgZ2VtZXR6ZWx0IGhhYmVuCk5lc2FqYSBzYWd0OiBqYSBsaWxsZWJyb3IgLi4ud2FzIHR1biB3aXIgamV0enQKTmVzYWphIHNhZ3Q6IGphIC4uLnNvbnN0IHd1ZXJkZSBlcyBqZXR6dCBlY2h0IHVlYmVsIGF1c3NlaGVuCk5lYiBzYWd0OiBkYSBrYW5uIG1hbiBzaWNoIGF1ZiBzZWluZSBhdXNydWVzdHVuZyB2ZXJsYXNzZW4gIQpEdSBzYWdzdDogaG1tbW0uLi4uIGltbWVyIHp1c2FtbWVuIGJsZWliZW4gYXVmIGplZGVuIGZhbGwKTmViIG5pY2t0IERpciB6dS4KTmVzYWphIHNhZ3Q6IGFjaCBuZWIgZ2liIG1pciBtYWwgZGVuIHN0YWNoZWwKRHUgc2Fnc3Q6IHNvbnN0IGVuZGV0IGRhcyBnYW56IHVlYmVsIGhpZXIKTmViIHN0ZWNrdCBlaW5lbiBXZXNwZW5zdGFjaGVsIHp1cnVlY2suCk5lYiBnaWJ0IGRlbiBXZXNwZW5zdGFjaGVsIGFuIE5lc2FqYS4KTmVzYWphIG5pY2t0IERpciB6dS4KTmVzYWphIHNhZ3Q6IHdvdwpOZWIgbXVzdGVydCBzZWluIEludmVudGFyIHVuZCBzaWVodCBzb25zdCBsZWlkZXIgbnVyIHVuenVyZWljaGVuZGUKQXVzcnVlc3R1bmcuCk5lYiBzZXVmenQuCk5lc2FqYSBzYWd0OiBkZXIgaXN0IGRlciB1bmlxdWUgc3RhY2hlbApEdSBwZmVpZnN0IGFuZXJrZW5uZW5kLgpOZXNhamEgc2FndDogZGEgaGFzdGUgYWJlciBHbHVlY2sgZ2VoYWJ0Ck5lYiBzYWd0OiBqYSwgZGVyIGhhdCBkb19kYW1hZ2UKTmVzYWphIGdpYnQgZGVuIFdlc3BlbnN0YWNoZWwgYW4gTmViLgpOZXNhamEgbmlja3QgenVzdGltbWVuZC4KUGFkcmVpYyBlcnNjaGVpbnQuClBhZHJlaWMgc2FndDogaGkgOikKTmVzYWphIHNhZ3Q6IGRlciBrb21tdCBudXIgYWxsZSBSYW5kb20oMjUwKSByZWJvb3RzIG1hbCB2b3IKTmVzYWphIHNhZ3Q6IGhpIFBhZApEdSBzYWdzdDogaGFsbG8gcGFkcmVpYwpOZWIgc2FndDogaGkKTmVzYWphIHNhZ3Q6IG1laW4gS2VyYmhvbHogYnVnZ3QKTmViIHNhZ3Q6IG1laW5zIGF1Y2ggIQpMaWxsZWJyb3JzIGF1Y2guCk5lc2FqYSBzYWd0OiBmZXJuZXIgbW9lY2h0IGljaCBtaWNoIGVpbiBiaXNzbCBiZXNjaHdlcmVuCk5lc2FqYSBzYWd0OiBkYXMgaGllciBzb2xsIG5lbiBhbmZhZW5nZXIgZ2ViaWV0IHNlaW4KTmVzYWphIHNhZ3Q6IHVuZCBkYW5uIFNPV0FTCk5lYiBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KTmViIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpOZWIgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCk5lYiBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KTmViIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpQYWRyZWljIHNhZ3Q6IG9raSwgd29sbHQgbnVyIHZvcmhlciBmcmFnZW4gOikKUGFkcmVpYyBsb2VzY2h0IGVpbmVuIEFydGlrZWwgYXVzIGRlciBaZWl0dW5nLgpQYWRyZWljIGxvZXNjaHQgZWluZW4gQXJ0aWtlbCBhdXMgZGVyIFplaXR1bmcuCk5lc2FqYSBzYWd0OiBkYXMga2FubiBqYSB3b2hsIG5pY2h0IHNlaW4gLi5pY2ggc2l0enQgaGllciBmZXN0IHVuZCBkYW5uIHNvd2FzCk5lYiBzYWd0OiB1bmQgamV0enQgenVtIGtlcmJob2x6ICEKTmVzYWphIHNhZ3Q6IHdhcyBmcmFnZW4gPwpQYWRyZWljIHNhZ3Q6IG5pY2h0IGRpY2ggOikKUGFkcmVpYyBzYWd0OiBoYXQgc2ljaCBzY2hvbiBlcmxlZGlndApQYWRyZWljIHdpbmt0LgpQYWRyZWljIHdhdGV0IG5hY2ggSGF1c2UuCk5lc2FqYSBzYWd0OiB0enR6dHoKRHUgc2Fnc3Q6IGFlaG0KTmVzYWphIHNhZ3Q6IE1BR0lFUgpEdSBzYWdzdDogdW5kIHNvd2FzIGlzdCBtYWdpZXIsIHRzdHN0cwpOZWIgaXN0IGVyc3RhdW50LgpOZWIgc2FndDogdGphIDooCk5lc2FqYSBzYWd0OiB3b2xsZW53IGlyIHdldHRlbgpOZXNhamEgc2FndDogZGFzIGRpZSBhbmRlcmVuIG1hZ2llciBoaWVyIGFud2Vpc3VuZyBoYWJlbiBuaWNodCB6dSBoZWxmZW4KTmViIHNhZ3Q6IHdhcyBkZW5uLCBuZXNpID8KTmViIG5pY2t0IE5lc2FqYSB6dS4KTmViIHNhZ3Q6IG1tcGYKTmVzYWphIHNhZ3Q6IG9rYXkKTmViIHNhZ3Q6IHdpciBzaXR6ZW4gZ2FueiBzY2hvZW4gaW4gZGVyIGtsZW1tZQpEdSBzY2huaWVmc3QuCk5lc2FqYSBzYWd0OiBsaWxsZSBkdSBnaWJ0cyBuZWIgcnVlY2tlbmRlY2t1bmcKTmVzYWphIHNhZ3Q6IGljaCBiZXNjaGltcGZlCk5lYiBzYWd0OiB1bmQgZGVyIGR1bW1lIGZpc2NoIGlzdCBpbW1lciBub2NoIGZpdApOZWIgYXJnbHQgZWluIHdlbmlnIHZvciBzaWNoIGhpbi4KRHUgc2Fnc3Q6IG9raSEKTmVzYWphIHNhZ3Q6IHNhZyBuZWI6IGZyICB1bmQgdiB3aWUgZ2VoYWJ0Ck5lYiBuaWNrdCBOZXNhamEgenUuClZvcnNpY2h0LU1vZHVzICgxNTApCkRhcyBHZXNpY2h0IE5lYnMgbmltbXQgYXVmIGVpbm1hbCBlaW5lbiBlbnRydWVja3RlbiBBdXNkcnVjayBhbi4gRG9jaCBzY2hvbgpiYWxkIG5vcm1hbGlzaWVydCBzaWNoIHNlaW4gR2VzaWNodHNhdXNkcnVjayB3aWVkZXIsIHVuZCBhdXMgZGVtIE5pY2h0cwplcnNjaGVpbnQgZWluIEFiYmlsZCBOZWJzLgpOZXNhamEgc2FndDogaGFzdCBlaW4gcGFhciBtcHMgenVtIHphdWJlcm4gPwpEaWUgRXJkZSB6dSBEZWluZW4gRnVlc3NlbiB3b2VsYnQgc2ljaCB1bmQgYnJpY2h0IGF1Zi4gRWluIGlyZGVuZXIgU2NoaWxkCnNjaGllc3N0IGVtcG9yIHVuZCB1bWdpYnQgTmViLgpVZWJlciBOZWJzIEhhdXB0IGVyc2NoZWludCBlaW4gSGVpbGlnZW5zY2hlaW4uCk5lc2FqYSBzYWd0OiBndXQKRWluIEtyZWlzIHdpcmJlbG5kZXIgTWVzc2VyIHVtZ2lidCBhdWYgZWlubWFsIE5lYi4gRHUgc29sbHRlc3QgaWhtIG5pY2h0IHp1Cm5haGUga29tbWVuIQpEdSBlbnRmZXJuc3QgZGFzIEFsaWFzICJyZCIuCk5lc2FqYSBzYWd0OiB3ZXIgemFlaGx0IGFuCk5lYiB6dWVja3QgZWluZW4gV2VzcGVuc3RhY2hlbC4KTmV1ZXMgQWxpYXM6IHJkID0gcnVlY2tlbmRlY2t1bmcgbmViCk5lYiBzYWd0OiBhdWYgMyA/Ck5lc2FqYSBuaWNrdCB6dXN0aW1tZW5kLjsqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gUGFkcmVpYyBpbiBSdWJyaWsKImQudW50ZXJ3ZWx0Ii4KRHUgc2Fnc3Q6IGF1ZiAzCk5lYiB6aXR0ZXJ0IHZvciBBbmdzdC4KUGFkcmVpYyBlcnNjaGVpbnQuClBhZHJlaWMgc2FndDogc28gOikKUmVwb3J0bW9kdXMgaXN0IGpldHp0IGVpbmdlc2NoYWx0ZXQuCk5lc2FqYSBzYWd0OiBobXBmbApOZXNhamEgZGVua3QgICAuIG8gTyAoTWFnaWVyIC4uLi46KSkpKSkKTmViIHdldHp0IGdyYWRlIHNlaW5lbiBTdGFjaGVsLgpOZXNhamEgc2FndDogZ2liIGlobiBsaWxsZSB6dW0gc2NoYWVyZmVuClBhZHJlaWMgc2FndDogaWNoIGRlbmtlIGRhbWl0IHNvbGx0ZW4gZGFubiBhbGxlIHByb2JsZW1lIGVybGVkaWd0IHNlaW4uLi4KTmViIHNjaHVldHRlbHQgZGVuIEtvcGYuCk5lYiBzYWd0OiBkYXMgd2lya2xpY2hlIHByb2JsZW0gaXN0IGhpZXIsIHBhZHJlaWMgIQpEdSBuaW1tc3QgZGVuIFlyZHN0ZWluLgpQYWRyZWljIHNhZ3Q6IGhpZXI/CkR1IGtvbnplbnRyaWVyc3QgRGljaCBhdWYgZGVuIEJsaW5kZmlzY2ggdW5kIHNhbW1lbHN0IGRpZSBFbmVyZ2llbiBkZXMgWXJkLApkYW5uIHN0cmVpY2hzdCBEdSBtaXQgZGVtIFlyZHN0ZWluIHVlYmVyIGRlbiBCbGluZGZpc2NoIHVuZCBlcmhhZWxzdCBmb2xnZW5kZQpFaW4gbGVpY2h0ZXIgV2luZCBrb21tdCBhdWYuClJpa3VzIHNhZ3Q6IGphPwpEdSBrbnVkZGVsc3QgUmlrdXMuClBhZHJlaWMgc2FndDogZGEgaGFidCBpaHIgdmVybXV0bGljaCBkZW4gc2NodWxkaWdlbi4uLiA6KQpEdSBzYWdzdDogaHVodSByaWt1cyA6KQpQYWRyZWljIHplaWd0IGtpY2hlcm5kIGF1ZiBzZWluZW4gR3Jvc3NuZWZmZW4uClJpa3VzIHNhZ3Q6IGhpaG8KTmViIGF0bWV0IGVybGVpY2h0ZXJ0IGF1Zi4KUmlrdXMgc2FndDogd2FzIGlzPwpOZXNhamEgc2FndDogaGkgcmlrdXMKTmVzYWphIHNhZ3Q6IGhpZXIgYnVnZ3RzCk5lYiBkZW5rdCAgIC4gbyBPIChqZXR6dCB3aXJkIGFsbGVzIGd1dC4uLi4pClJpa3VzIHNhZ3Q6IGh1aHUgTmVzaQpOZXNhamEgbmlja3QgTmViIHp1LgpOZXNhamEgdmVyc3RlY2t0IE5lYiBoaW50ZXIgUmlrdXMKTmViIHJhZXVzcGVydCBzaWNoLgpOZXNhamEgc2FndDogZGFzIHNvbGwgaGllciBlaW4gYW5uZmFlbmdlcmdlYmlldCBzZWluID8KUGFkZHkgaG9wcHN0IGhlcmVpbi47PiBQYWRyZWljIHNhZ3Q6IGFyZ2guLi4gcmVoaSA6KQpQYWRyZWljIHNhZ3Q6IHJpa3VzLCBpaHJlIGtlcmJob2VsemVyIGJ1Z2dlbgpOZWIgbmlja3QgenVzdGltbWVuZC4KTmVzYWphIG5pY2t0IHp1c3RpbW1lbmQuClJpa3VzIHNhZ3Q6IGlud2llZmVybj8KTmViIHNhZ3Q6IGxhdXQga2VyYmhvbHogaGF0IGRpZXNlcyBtb2VyZGVydGVpbCBkYSBrZWluZSBzdHVwc2UKTmVzYWphIG5pY2t0IHp1c3RpbW1lbmQuCkR1IHNhZ3N0OiBnZW5hdQpOZXNhamEgc2FndDogZGFzIGthbm4gamEgbmljaHQgYW5nZWhlbgpQYWRyZWljIHNhZ3Q6IGRhIGRhY2h0ZSBpY2ggZGFzIGhhZXR0ZSBldnRsIHdhcyBtaXQgZGVpbmVuIGFlbmRlcnVuZ2VuIHp1IHR1bgpQYWRyZWljIHNhZ3Q6IDopCk5lYiBkZXV0ZXQgYXVmIGRlbiBCbGluZGZpc2NoLgpOZXNhamEgc2FndDogZ2VoIG5pY2h0IHp1IGRpY2h0IHJhbiBuZWIgLi4uCk5lc2FqYSBzYWd0OiB2aWVsbGVpY2h0IHdpcmQgZXIgYWdyZXNzaXYgYmVpIG5hZWhlCk5lYiBzYWd0OiBpY2ggaGFiIGlobiBiZWZyaWVkZXQsIG5lc2kgIQpSaWt1cyBzYWd0OiB3YXMsIGRlciBnaWJ0IGtlaW5lbiBzdHVwcz8KTmViIHNhZ3Q6IGxhdXQga2VyYmhvbHogbmljaHQgIQpOZXNhamEgc2FndDogbGF1dCBrZXJiaG9seiBuaWNodApSaWt1cyBzYWd0OiBhYmVyPwpOZWIgaXN0IG51biBuaWNodCBtZWhyIHZvbiB3aXJiZWxuZGVuIE1lc3Nlcm4gdW1nZWJlbi4KTmViIHNhZ3Q6IGRhYmVpIGhhdWVuIHdpciBzZWl0IG5lciBoYWxiZW4gc3R1bmRlIGF1ZiBpaG0gcnVtICEKTmVzYWphIG5pY2t0IE5lYiB6dS4KTmViIHNhZ3Q6IHVuZCBlciBpcyBpbW1lciBub2NoIGZpdApOZXNhamEgc2FndDogZXIgdGFua3QKTmViIG5pY2t0IE5lc2FqYSB6dS4KTmVzYWphIHNhZ3Q6IHVuZCBub2NoIGVpbmlnZSB1bnNjaG9lbmRlIGRpbmdlIHR1dCBlcgpOZWIgc2FndDogdW5kIHRyYW5zdCBlaW5lbiBpbiBkaWUgcGFyYS1ob2NoZWJlbmUKTmVzYWphIG5pY2t0IHp1c3RpbW1lbmQuClJpa3VzIHNhZ3Q6IG9vb29jaApOZXNhamEgc2FndDogemllaHQgbXBzIG9obmUgZW5kZQpOZWIgc2FndDogdW5kIGZyaXNzdCBtYWdpZS1wdW5rdGUKRHUgc2V1ZnpzdCB0aWVmLgpQYWRkeSBtYWNodCBlaW5lbiBQdXJ6ZWxiYXVtIHVuZCBzY2hsYWVndCBkYW5hY2ggZnJvZWhsaWNoIHNjaG5hdHRlcm5kCmRpZSBIYWVuZGUgZ2VnZW5laW5hbmRlci4KTmViIHNhZ3Q6IHZvbiBQQS1Cb29uIGhhbHQgClJpa3VzIHNhZ3Q6IGRhcyBrZXJiaG9seiBpc3Qgc2Nob24gb2sKTmVzYWphIHNhZ3Q6IHdhcz8KTmVzYWphIGlzdCBhYmVyIGVyc2NodWV0dGVydC4KUmlrdXMgZ3J1ZWJlbHQsIGRlbmt0IHNjaGFyZiBuYWNoIHVuZCBrcmFtdCBzY2hsaWVzc2xpY2ggZXR3YXMgYXVzIGRlbiBUaWVmZW4KcwpSaWt1cyBwdXN0ZXQgZWluZW4gbWFnaXNjaGVuIEt1c3MgZ2VuIEhpbW1lbC4KTmViIHNhZ3Q6IGRpZXNlIEJhLU1hZ2llcgpOZWIgc2V1Znp0LgpOZWIgc2FndDogbWFjaGVuIHVlYmVybW9uc3RlciBvaG5lIHN0dXBzZQpOZXNhamEgbmlja3QgTmViIHp1LgpEdSBzdHV0enQuCk5lc2FqYSBzYWd0OiB1bmdsYXVibGljaApOZWIgbXVzdGVydCBSaWt1cy4KTmVzYWphIHNhZ3Q6IHdpcmQgZGFzIGVpZ2VudGxpY2ggbmljaHQgdWViZXJydWVmdCB3YXMgc29sY2hlIG1hZ3MgYW5oYWVuZ2VuCk5lc2FqYSBzYWd0OiAuLi46KQpOZWIgc2FndDogaWNoIHdlaXNzLCByaWt1cywgZXMgaXN0IGdlZ2VuIGRpZSByZWdlbG4sIGFiZXIga29lbm50ZXN0IGR1IHVucyBhdXMKTmViIHNhZ3Q6IGRpZXNlciBob2VsbGUgaGllciB2aWVsbGVpY2h0IHJhdXN0cmFuc2VuID8KRHUgc2Fnc3Q6IG5hY2hsYWVzc2lnZSBybSBzaW5kIGRhcyBoaWVyIDopClJpa3VzIHNhZ3Q6IGVzIHNvbGwgYmFsZCBkaWUgbnBjLWJhbGFuY2UgZ2ViZW4KRGVyIEhlaWxpZ2Vuc2NoZWluIHVlYmVyIGRlbSBIYXVwdGUgTmVicyB2ZXJnbGltbXQuClBhZGR5IG1hY2h0IGVpbmVuIFB1cnplbGJhdW0gdW5kIHNjaGxhZWd0IGRhbmFjaCBmcm9laGxpY2ggc2NobmF0dGVybmQKZGllIEhhZW5kZSBnZWdlbmVpbmFuZGVyLgpOZWIgc2FndDogaXN0IGRvY2ggb2ZmZW5zaWNodGxpY2gsIGRhc3MgZGFzIGhpZXIgenUgaGFydCBpcwpEdSBzYWdzdDogbmljaCB3aXJrbGljaCByaWt1cywgb2Rlcj8KUmlrdXMgc2FndDogd2llc28gbmljaHQ/CkRlbCB0ZWlsdCBEaXIgbWl0OiB3aWUgc2llaHRzIGF1cz8gZmVydGlnIG1pbSBlc3Nlbj8KRHUgc2Fnc3Q6IGlzdCBkb2NoIG1laHIgYWxzIHVlYmVyZmx1ZXNzaWcKUmlrdXMgc2FndDogdGphLCBoaWVyIHNpZWhzdCBkdSBlcyBqYSwgZGFzIGVzIG5vZXRpZyBpc3QsIG9kZXI/Ck5lYiBuaWNrdCBSaWt1cyB6dS4KUmlrdXMgZGV1dGV0IGF1ZiBkZW4gQmxpbmRmaXNjaC4KRHUgc2Fnc3Q6IGlzdCBkb2NoIHNhY2hlIGRlciBybS4gc29uc3QgaGFiZW4gZGllIGphIG5peCB6dSB0dW4hCktleSBrb21tdCBkdXJjaCBkZW4gR2FuZyBoZXJhYmdld2F0ZXQuCk5lc2FqYSBzYWd0OiBkdSBzaWVoc3QgbGlsbGUgZXMgaXN0IG5vZXRpZwpOZWIgbWFjaHQgc2ljaCBkaXJla3QgZWluICJOUEMtQmFsYW5jZSBnZWdlbiBiYWJvb24tTW9uc3RlciItRmFlaG5jaGVuCktleSBmcmFndCBOZXNhamE6IE5hY2ggc3RpZWZlbD8KUGFkcmVpYyBzYWd0OiBzbywgaWNoIG11c3MgbGVpZGVyLi4uLgpOZXNhamEgemllaHQgZWluIFBhYXIgQWRhbWFudHNjaHVoZSBhdXMuCk5lc2FqYSBnaWJ0IGRhcyBQYWFyIEFkYW1hbnRzY2h1aGUgYW4gS2V5LgpEdSB3aW5rc3QgUGFkcmVpYyB6dS4KUGFkcmVpYyBzYWd0OiBtdXNzIGluIDEgc3R1bmRlIG5lbiB0cm9tcGV0ZW5rb256ZXJ0IHNwaWVsZW4gdW5kIG1pY2ggdm9yaGVyClBhZHJlaWMgc2FndDogbm9jaCBmaXQgbWFjaGVuIDopCk5lYiB3aW5rdCBQYWRyZWljIHp1LgpLZXkgYmVkYW5rdCBzaWNoIGJlaSBOZXNhamEuCktleSB3YXRldCBuYWNoIFN1ZWRvc3RlbiBkZW4gR2FuZyBoaW5hdWYuCk5lYiBzYWd0OiBkYW5rZSB0cm90emRlbSwgcGFkcmVpYwpOZXNhamEgbmlja3QgenVzdGltbWVuZC4KUmlrdXMgc2FndDogZGllIGFybWVuIGxldXRlCk5lc2FqYSBzYWd0OiBjaWFvIHVuZCBoeCBwYWQKUGFkcmVpYyBzYWd0OiBwb2VoLi4uCk5lc2FqYSBncmluc3QuCk5lYiBncmluc3QgUmlrdXMgKHNjaGVpbiloZWlsaWcgYW4uClJpa3VzIHNhZ3Q6IGdpYiBkZW5lbiBvcm9wYXgKUGFkcmVpYyBzYWd0OiBpY2ggd2Vpc3Mgd2FzIGljaCB0dWUgUmlrdXMgOikKUmlrdXMgc2FndDogZWJlbiwgZWJlbgpEdSBraWNoZXJzdC4gKFdpZSBhbGJlcm4gdm9uIERpcikKTmVzYWphIHNhZ3Q6IERBUyBmdWVyY2h0ZW4gd2lyIGphIGdlcmFkZSBQYWQgKgpQYWRyZWljIHNhZ3Q6IGFyZy4uLiA7KQpOZXNhamEgc2FndDoganVuZ3MgaWNoIG11c3MgYmFsZCBsb3MgLi4uYWxzbyB3aXIgbWV1c3NuZSBoaWVyIG5vY2ggcmF1cwpOZXNhamEgc2FndDogdW5kIG5lYiBkZW4ga2lsbApQYWRyZWljIHNhZ3Q6IGtlaW5lIHNvcmdlLCBkaWUgemFobGVuIG1pY2ggZGEgbmljaHQgZnVlcnMgcXVhZWxlbiA6KQpOZXNhamEgc2FndDogYWxzbyBsaWxsZSBiaXN0ZSBkYT8KRHUgc2Fnc3Q6IGljaCBiaW4gaGllcgpQYWRyZWljIHdhdGV0IG5hY2ggSGF1c2UuClBhZGR5IGhvcHBzdCBQYWRyZWljIGhpbnRlcmhlci4KTmVzYWphIHNhZ3Q6IGFuZ3JpZmZzcGxhbiB3aWUgZ2VoYWJ0CkR1IG5pY2tzdCB6dXN0aW1tZW5kLgpOZWIgbmlja3QgTmVzYWphIHp1LgpEaWUgRXJkZSB6dSBEZWluZW4gRnVlc3NlbiB3b2VsYnQgc2ljaCB1bmQgYnJpY2h0IGF1Zi4gRWluIGlyZGVuZXIgU2NoaWxkCnNjaGllc3N0IGVtcG9yIHVuZCB1bWdpYnQgTmViLgpOZXNhamEgc2FndDogbmViIGZyIHVuZCB2IGtvbnRyb2xsaWVyZW4KVWViZXIgTmVicyBIYXVwdCBlcnNjaGVpbnQgZWluIEhlaWxpZ2Vuc2NoZWluLgpOZXNhamEgc2FndDogaWNoIHphZWhsIGFubgpEdSBzYWdzdDogb2tpCk5lc2FqYSBzYWd0OiAxCk5lc2FqYSBzYWd0OiAyCk5lYiBzYWd0OiB2b3JzaWNodCAxODAsIGZsdWNodHJpY2h0dW5nIHN1ZWRvc3RvYmVuCk5lc2FqYSBzYWd0OiAzClZvcnNpY2h0LU1vZHVzICgxNjApCk5lc2FqYSBncmVpZnQgZGVuIEJsaW5kZmlzY2ggbWl0IGVpbmVtIFRoZWF0ZXJtZXNzZXIgYW4uCk5lc2FqYSBrcmF0enQgZGVuIEJsaW5kZmlzY2guCkRlciBCbGluZGZpc2NoIGdyZWlmdCBOZXNhamEgbWl0IGVyc3RhdW5saWNoIHNjaGFyZmVuIFphZWhuZW4gYW4uCkRlciBCbGluZGZpc2NoIHZlcmZlaGx0IE5lc2FqYS4KT2sKRHUgZ3JlaWZzdCBkZW4gQmxpbmRmaXNjaCBtaXQgZWluZW0gdW13ZXJmZW5kZW4gTGFlY2hlbG4gYW4uCkR1IHRyaWZmc3QgZGVuIEJsaW5kZmlzY2ggc2VociBoYXJ0LgpOZXNhamEga3JhdHp0IGRlbiBCbGluZGZpc2NoLgpOZWIgZ3JlaWZ0IGRlbiBCbGluZGZpc2NoIG1pdCBlaW5lbSBXZXNwZW5zdGFjaGVsIGFuLgpOZWIgdHJpZmZ0IGRlbiBCbGluZGZpc2NoLgpEZXIgQmxpbmRmaXNjaCBzY2h3aW1tdCBpbiBkZW4gdWViZXJmbHV0ZXRlbiBHYW5nLgpEdSB2ZXJmb2xnc3QgamV0enQgZWluZW4gQmxpbmRmaXNjaC4KTmViIGthZW1wZnQgZG9jaCBnYXIgbmljaHQgdW5kIER1IGhhc3Qgbm9jaCBuaWNodCBnZW51ZWdlbmQgRXJmYWhydW5nIG1pdCBkZXIKUnVlY2tlbmRlY2t1bmcsIHVtIERpY2ggdm9yIGVpbmVtIEthbXBmIGRhcmF1ZiBlaW56dXN0ZWxsZW4uCk5lYiBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpOZXNhamEgc2FndDogYXJnaApOZWIgc2FndDogc2Nob24gd2llZGVyCkR1IHNldWZ6c3QuCkR1IHNhZ3N0OiBvY2ggbWVubm8KTmVzYWphIHppZWh0IEtyYWxsZW4gYXVzLgpOZXNhamEgemllaHQgZWluZSBTY2hlcmJlbmhvc2UgYXVzLgpOZWIgc2FndDogd2lyIGhhdHRlbiBpaG4gZmFzdCAhCktleSBrb21tdCBkdXJjaCBkZW4gR2FuZyBoZXJhYmdld2F0ZXQuCk5lc2FqYSB6aWVodCBlaW5lbiBVbWhhbmcgYXVzLgpOZXNhamEgZ2lidCBLcmFsbGVuIGFuIEtleS4KTmVzYWphIGdpYnQgZGllIFNjaGVyYmVuaG9zZSBhbiBLZXkuCk5lc2FqYSBnaWJ0IGRlbiBVbWhhbmcgYW4gS2V5LgpSaWt1cyBzYWd0OiBpc3QgZGVyIHRvdCBvZGVyIHdlZz8KQnJpZXNlbHRyaW0gdGVpbHQgRGlyIG1pdDogRHUgYmlzdCBqZXR6dCBhdWYgR2lsZGVubGV2ZWwgMTcKTmViIHNhZ3Q6IGVyIHRhbmt0LCByaWt1cyEKTmVzYWphIHNhZ3Q6IFRBTktFTgpOZWIgZmFlbmd0IGZ1ZXJjaHRlcmxpY2ggYW4genUgZmx1Y2hlbi4KS2V5IHdhdGV0IG5hY2ggU3VlZG9zdGVuIGRlbiBHYW5nIGhpbmF1Zi4KTmVzYWphIHNhZ3Q6IHVuZCBkYW5uIHNvIGxhbmdlCk5lYiBzYWd0OiBuYSB3YXJ0ZSwgd2VubiBpY2ggYmFib29uIHp1IGZhc3NlbiBrcmllZ2UKTmViIHN0ZWNrdCBlaW5lbiBXZXNwZW5zdGFjaGVsIHp1cnVlY2suCk5lc2FqYSBzYWd0OiBkYXMgaXN0IG5mYWlyCkR1IG5pY2tzdCBOZWIgenUuCk5lYiBsYXVzY2h0IGR1cmNoIGVpbiBtYWdpc2NoZXMgSG9lcnJvaHIuCk5lYiB6dWVja3QgZWluZW4gV2VzcGVuc3RhY2hlbC4KTmViIHNhZ3Q6IHVuZCBkYXMgbWl0IHVuaXF1ZS13ZXNwZW5zdGFjaGVsCk5lc2FqYSBuaWNrdCB6dXN0aW1tZW5kLgpOZWIgc2FndDogZGVyIGRlbiB0b2Rlc3N0b3NzIGJlaSA5MCUgYW5zZXR6dApOZXNhamEgc2FndDogamEKTmVzYWphIHNhZ3Q6IGRlciB2b2VsbGlnZSBpcnJzaW5uCk5lYiBmcmFndCBSaWt1czogRGVyIGlzdCBkb2NoIG5pY2h0IGdlYWVuZGVydCB3b3JkZW4sIG9kZXI/Ck5lYiBmYWVuZ3QgZnVlcmNodGVybGljaCBhbiB6dSBmbHVjaGVuLgpOZXNhamEgc2FndDogb2NoIG5vZQpOZXNhamEgc2FndDogbmljaHQgYXVjaCBkZXIgc3RhY2hlbApOZWIgc2FndDogZGVyIHN0YWNoZWwgbXVzc3RlIGJlc3RpbW10IGR1cmNoIGRpZSBiYWxhbmNlCkR1IGFyZ2xzdCBlaW4gd2VuaWcgdm9yIERpY2ggaGluLgpOZWIgYXJnbHQgZWluIHdlbmlnIHZvciBzaWNoIGhpbi4KTmVzYWphIHNhZ3Q6IGljaCB3ZXJkIHNoYXJpYSB1bmQgcGFwaSBlcnd1ZXJnZW4KRHUgc2Fnc3Q6IGRpZSBzYW5pZXJlbiBlY2h0IGdydWVuZGxpY2gKTmViIHNhZ3Q6IG5hIHRvbGwKTmVzYWphIG5pY2t0IHp1c3RpbW1lbmQuCk5lYiBzYWd0OiBvaG5lIHdlc3BlbnN0YWNoZWwga2FubnN0ZSBrbGVyaWtlciBlY2h0IHZlcmdlc3Nlbi4uLgpOZXNhamEgbmlja3QgTmViIHp1LgpOZWIga29tbXQgYmFsZCBnYXIgbmljaHQgbWVoci4uLi4KTmVzYWphIHNhZ3Q6IGthbm5zdGUgZGllIGdpbGRlIGRvY2ggZ2xlaWNoIGRpY2h0IG1hY2hlbgpOZWIgbmlja3QgTmVzYWphIHp1LgpOZXNhamEgYXVjaCBuaWNodCAuLi4uClJpa3VzIHdhdGV0IG5hY2ggU3VlZG9zdGVuIGRlbiBHYW5nIGhpbmF1Zi4KRWluIGxlaWNodGVyIFdpbmQga29tbXQgYXVmLgpOZWIgc2FndDogdW5kIGpldHp0ID8KTmVzYWphIHNhZ3Q6IGpldHp0IHNhZyBuaWNodCBlcyBpc3J0IHJlc2V0IGhpbnRlciB1bnMKTmVzYWphIHNhZ3Q6IG1vbQpOZWIgc2FndDogbGFldWZ0IGRlciBmaXNjaCBldHdhIGF1Y2ggbm9jaCBydW0gPwpEdSBzYWdzdDogZWNodD8hPzs+IE5lYiBzYWd0OiBkYXMgaXN0IHNvbiBnZWJpZXQsIGRhc3MgaWNoIGRlbW5hZWNoc3QKaWdub3JpZXJlLCB3ZW5uIGljaAplcnN0bWFsCk5lYiBzYWd0OiByYXVzIGJpbgpEZXIgV2luZCB3ZWh0IHdlaXRlci4KTmVzYWphIG5pY2t0IHp1c3RpbW1lbmQuCk5lc2FqYSBzYWd0OiBhdXNnYW5nIHdhc3NlciBzY2hlaW50IG5lIGZhbGxlIHp1IHNlaW4gd2llIGluIGRlciBuYWRlcmVuIGVja2UKRWluIGxlaWNodGVyIFdpbmQga29tbXQgYXVmLgpOZWIgbmlja3QgTmVzYWphIHp1LgpOZWIgc2FndDogYmxvc3MgbmljaHQsIG5lc2kKUmlrdXMgc2FndDogaWNoIHNlaGUgbml4IHZvbiB0YW5rZW4KUmlrdXMgc2FndDogZXIgZmxpZWh0IG51cgpOZWIgc2FndDogZGEgc2luZCB3aXIgaW4gZGVtIGFuZGVyZW4gZ2FuZyBkZW0gdG9kIHNjaG9uIHZvbiBkZXIgc2NoaXBwZQpOZWIgc2FndDogZ2VzcHJ1bmdlbgpOZXNhamEgbmlja3QgTmViIHp1LgpOZXNhamEgc2FndDogZGFzIHdhciBrbmFwcApOZXNhamEgc2FndDogcmlrdXMgYWJlciBkZXIgZmlzY2gga29tbXQgd2llZGVyIHVuZCBpc3Qgdm9sbApOZXNhamEgc2FndDogdW5kIHdpciBoYXR0ZW4gaWhuIHNjaG9uIGtuYXBwIDkwJQpEZXIgV2luZCB3ZWh0IHdlaXRlci4KTmViIHNhZ3Q6IGRhcyBpc3QgamEgZGFzIGZpZXNlc3RlOiBpbW1lciB3ZW5uIG1hbiBkZW5rdCwgbWFuIGhhdCBpaG4gbmFjaCBuZXIKTmViIHNhZ3Q6IGhhbGJlbiBzdHVuZGUsIGRhbm4gdmVyc2Nod2luZGV0IGVyCk5lc2FqYSBuaWNrdCB6dXN0aW1tZW5kLgpEdSBncnVlYmVsc3QgZWluZSBXZWlsZSB2b3IgRGljaCBoaW4uCkVpbiBsZWljaHRlciBXaW5kIGtvbW10IGF1Zi4KTmViIHRlaWx0IERpciBtaXQ6IGljaCBmYWxsIGdsZWljaCB2b20gc3R1aGwgcmwgOykKUmlrdXMgc2FndDogbWFpbHQgYW0gYmVzdGVuIG1hbCBiYWJvb24KRHUgdGVpbHN0IE5lYiBtaXQ6IGpvb28sIGljaCBrcnVlbW0gbWljaCBzY2hvbiA7KQpOZXNhamEgbmlja3QgenVzdGltbWVuZC4KUmlrdXMgc2FndDogaWNoIG11c3MgbWFsIG1pdHRhZ2Vzc2VuCk5lc2FqYSBzYWd0OiBqYSBkYXJhdWYga2FubnN0ZSB3ZXR0ZW4KUmlrdXMgbmlja3QgenVzdGltbWVuZC4KTmViIG11c3RlcnQgUmlrdXMuCk5lc2FqYSBzYWd0OiB0b2xsIHVuZCB3aXIga29tbWVuIHdpciByYXVzID8KUmlrdXMgc2FndDogd29sbHQgaWhyIHdlZz8KRHUgc2Fnc3Q6IGZ1bnplbiBkaWUgYXVzZ2FlbmdlIGhpbnRlbiB3aWVkZXI/Ck5lc2FqYSBuaWNrdCB6dXN0aW1tZW5kLgpOZWIgc2FndDogZGVyIGZpc2NoIGlzdCBkb2NoIGJ1Z2d5IG9obmUgZW5kZSwgdHlwaXNjaGVyIGJhYm9vbi1zY2huZWxsc2NodXNzClJpa3VzIGZhZWxsdC4KTmViIGZhZWxsdC4KTmVzYWphIGZhZWxsdC4KUGxvZXR6bGljaCBsb2VzdCBzaWNoIGRlaW5lIFdlbHQgaW4gaWhyZSBCZXN0YW5kdGVpbGUgYXVmLiBadW0gR2x1ZWNrIHdpcnN0CmR1IGlyZ2VuZHdvIGhpbiBnZXNjaGxldWRlcnQgLi4uCkR1IHNjaHdlYnN0IGltIGFic29sdXRlbiwgZXdpZ2VuIHVuZCBsZWVyZW0gTmljaHRzIHVtaGVyLiBIaWVyIGtvbW1lbgphbGwgZGllIGhpbiwgZGVyZW4gV2VsdCwgaW4gZGVyIHNpZSBzaWNoIGJlZmFuZGVuLCB6ZXJzdG9lcnQgd29yZGVuIGlzdC4KV2VubiBEdSBkYXMgbWFnaXNjaGUgS29tbWFuZG8gJ3dlbHQnIGdpYnN0LCB3aXJzdCBEdSB3aWVkZXIgaW4gRGVpbmUgV2VsdAp6dXJ1ZWNrdmVyc2V0enQgd2VyZGVuLgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgpWZXJ0ZWlkaWdlcmluIGRlcyB3YWhyZW4gQmxvZWRzaW5ucyBOZXNhamEgc2FndDogVG9kIC0gZGVtIGZhbHNjaGVuCkJsb2Vkc2lubi4uCk5lYiBoYXQgZGVuIEJhcnQgZGVyIFNoYXJpYSBnZWZ1bmRlbiAtIEpldHp0IGlzdCBzaWUgd29obCBlaW4gWndlcmcuClNoYWRvdyBSaWt1cyBzY2hlbmt0IERpciBlaW5lbiBaVC4KUmlrdXMgc2FndDogb2sKRWluIFNjaGlsZGtyb2V0ZW5wYW56ZXIga3VsbGVydCB3ZWcuCkRlciBncm9zc2UgUmF1bSBtaXQgc2VpbmVyIG5pZWRyaWdlbiBEZWNrZSB1bmQgZGVuIGdyb2IgZ2VzY2huaXR0ZW5lbgpRdWVyYmFsa2VuIGhhdCBQbGF0eiBmdWVyIHNlaHIgdmllbGUgUGVyc29uZW4uIEtuYXJyZW5kZSBEaWVsZW4gZXJ6YWVobGVuCnVlYmVyIEhlbGRlbnRhdGVuIGxhZW5nc3QgdmVyZ2Vzc2VuZXIgQWJlbnRldXJlciwgYmVydWVobXRlciBhbHMgbWFuY2hlcgpXZWlzZSB1bnNlcmVyIFplaXQuCkFiZW50ZXVyZXIsIGFiZXIgYXVjaCBhbmRlcmUgQmV3b2huZXIgZGllc2VyIFdlbHQga29tbWVuIGhpZXJoZXIsIHVtCnNpY2ggenUgaW5mb3JtaWVyZW4sIGlocmUgRXJmYWhydW5nZW4gYXVzenV0YXVzY2hlbiBvZGVyIHNpY2ggaW4gZGVuCnZlcnNjaGllZGVuc3RlbiBXaXNzZW5zY2hhZnRlbiB6dSB2ZXJiZXNzZXJuLgpEdXJjaCBkaWUgaW1tZXIgb2ZmZW5lIFR1ZXIgc2NoZWludCBkaWUgYXVmZ2VoZW5kZSBTb25uZSBoZXJlaW4gdW5kIGZ1ZWxsdApkZW4gUmF1bSBtaXQgaWhyZW0gZ29sZGVuZW4gTGljaHQuIFNvbnN0IGdpYnQgZXMgaGllciBudXIgbm9jaCBkZW4gQXVzZ2FuZwppbSBOb3JkZW4sIHdlbGNoZXIgYXVmIGRpZSBIYWZlbnN0cmFzc2UgZnVlaHJ0IHVuZCBCaWxkZXIgYW4gZGVuIFdhZW5kZW4sCm1pdCBaZWljaG51bmdlbiB1bmQgR2VtYWVsZGVuIHZvbiBNb3JnZW5HcmF1ZW4uIEVpbnMgZGVyIEJpbGRlciBlcmxhZXV0ZXJ0CmRpZSBGdW5rdGlvbiBkZXIgR2lsZGUgdW5kIGVpbmUgZ3Jvc3NlIFVociBhbiBkZXIgV2FuZCB6ZWlndCwgd2FzIGRpZQpTdHVuZGUgc2NobGFlZ3QuIEFuIGVpbmVyIGFuZGVyZW4gV2FuZCBoYWVuZ3QgZWluZSBzdGVpbmVybmUgVGFmZWwuCk5hY2ggb2JlbiBmdWVocnQgZWluZSBUcmVwcGUgaW4gZGFzIEJ1ZXJvIGRlcyBGb2VyZGVydmVyZWlucyBQcm9qZWt0Ck1vcmdlbkdyYXVlbiBlLlYuLCBkYXMgRHUgdW5iZWRpbmd0IGJlc3VjaGVuIHNvbGx0ZXN0LgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb2JlbiB1bmQgbm9yZGVuLgpWZXJ0ZWlkaWdlcmluIGRlcyB3YWhyZW4gQmxvZWRzaW5ucyBOZXNhamEgc2FndDogVG9kIC0gZGVtIGZhbHNjaGVuCkJsb2Vkc2lubi4uCkVpbiBIYW5kYnVjaCBmdWVyIEFuZmFlbmdlci4KRWluZSBaZWl0dW5nLgpJY2VicmVha2VyIGRlciBMYW5kc3RyZWljaGVyLgpOZWIgZW50c3RlaWd0IGRlbiBIYWxsZW4gZGVyIEdvZXR0ZXIuCk5lYiBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KTmViIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpOZWIgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCk5lYiBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KTmViIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpEdSB0ZWlsc3QgTmViIG1pdDogKmxhY2gqCk5lc2FqYSB0ZWlsdCBEaXIgbWl0OiBpY2ggc3Rlcm4gdm9yIGxhY2hlbgpEdSByb3RmbHN0LgpOZXNhamEgd2FlbHp0IHNpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgpOZWIgYnJ1ZWxsdCB2b3IgTGFjaGVuLgpOZXNhamEgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCk5lc2FqYSBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KTmVzYWphIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpOZXNhamEgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCk5lYiBzYWd0OiBpY2ggZmFsbCB2b20gU3R1aGwgOykKTmVzYWphIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpOZXNhamEgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCkR1IHRlaWxzdCBOZXNhamEgbWl0OiAqZ3JvZWgqIDopKSkKTmVzYWphIGlzdCBnZXJhZGUgbmljaHQgZGE6IC0tPiBUdGVzdApOZWIgc2FndDogaGF0IGRhcyBrZWluZXIgZ2Vsb2dndCA/IDspCk5lYiBzdG9laG50LgpEdSBzY2h1ZXR0ZWxzdCBkZW4gS29wZi4KRHUgc2Fnc3Q6IGxlaWRlciBuaWNodApEZXIgSGVpbGlnZW5zY2hlaW4gdWViZXIgZGVtIEhhdXB0ZSBOZWJzIHZlcmdsaW1tdC4KTmViIHNhZ3Q6IGRhbmtlLCBpaHIgYmVpZGVuCkR1IG1hY2hzdCBlaW5lbiBhbm11dGlnZW4gS25pY2tzLgpOZWIgc2FndDogb2huZSBldWNoIHdhZXJlIGljaCBkYSBtaW5kZXN0ZW5zIDEweCBnZXN0b3JiZW4KTmViIGtudWRkZWx0IERpY2guCk5lYiBrbnVkZGVsdCBOZXNhamEuCkR1IGtudWRkZWxzdCBOZWIuCkR1IGtudWRkZWxzdCBOZXNhamEuCk5lYiBzYWd0OiBkYXMgd2FyIHJldHR1bmcgaW4gbGV0enRlciBzZWt1bmRlICEKTmVzYWphIG5pY2t0IHp1c3RpbW1lbmQuCkR1IHNhZ3N0OiByaWt1cyBzZWkgZGFuayEKTmVzYWphIHNhZ3Q6IGphIC4uLgpOZXNhamEgc2FndDogZGFzIHdlcmQgaWNoIHNvIHNjaG5lbGwgbmljaHQgdmVyZ2Vzc2VuCk5lc2FqYSBzYWd0OiB3b3cgd2lzc3QgaWhyIGpldHp0IHdlbGNoZSBtZWxkdW5nIGthbToKRHUgc2Fnc3Q6IEhFIGlzdCBmdWVyIG1pY2ggZXJzdG1hbCBnZXN0b3JiZW4KRHUgc2V1ZnpzdC4KTmVzYWphIHNhZ3Q6IGRhIGthbSBncmFkZSBkaWUgbWVsZHVuZzogRGVyIEJsaW5kZmlzY2ggdmVyZm9sZ3QgRGljaCBuaWNodApOZXNhamEgc2FndDogbWVoci4gQWJlciBlciBoYXQgc2ljaCBEZWluIEdlc2ljaHQgZ2VtZXJrdC4KRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpOZXNhamEgc2FndDogZGFzIGtsaW5ndCBib2VzZQpOZWIgc2FndDogYXJnaApOZWIgc2FndDogZGFubiBzdHVlcnp0IGF1Y2ggbm9jaCBtZWluIG1vZGVtIGFiCk5lc2FqYSBzYWd0OiBqdW5ncyB1bmQgbWFlZGVscyBpY2ggbXVzcyBsb3MgLi4uaWNoIG11c3MgbWljaCBlcnN0bWFsIGVyaG9sZW4KRHUgc2Fnc3Q6IG1hbm5vbWFubi4uLiBkYXMga2xpbmd0IHdpcmtsaWNoIGJvZXNlLiBkZXIgbWVya3Qgc2ljaCBkaWUgbGV1dGUKRHUgc2Fnc3Q6IGF1Y2ggbm9jaApOZXNhamEgc2FndDogaWNoIGdlaCBkYSBhYmVyIG5jb2htYWwgaGluCk5lc2FqYSBzYWd0OiBkZW4ga2lsbCBpY2ggLi4KTmVzYWphIHNhZ3Q6IHVuZCBkYW5uIG5lYiBnZWhlbiB3aXIgbm9jaG1hbCBoaW4KTmVzYWphIG5pY2t0IERpciB6dS4KTmVzYWphIGt1c2NoZWx0IHNpY2ggYW4gTmViIGFuLgpOZWIgc2FndDogaWNoIHNjaHJlaWIgbm9jaCBuZW4gZmxhbWVhcnRpa2VsIGdlZ2VuIEIqLgpOZXNhamEga251ZGRlbHQgRGljaC4KTmVzYWphIHNhZ3Q6IGRhbmtlIExpbGxlIGZ1ZXIgZGllIGhpbGZlCk5lYiBzYWd0OiBzbyBsYW5nIGljaCBub2NoIHJpY2h0aWcgaW4gcmFnZSBiaW4KTmVzYWphIHNhZ3Q6IG9obmUgZGljaCB3YWVycyB3b2hsIGFuZGVyc3QgYXVzZ2VnYW5nZW4KTmViIG5pY2t0IHp1c3RpbW1lbmQuCk5lc2FqYSBuaWNrdCBOZWIgenUuCk5lc2FqYSBzYWd0OiBva2F5CkR1IHNhZ3N0OiBhdWYgZGVuIHNjaHJlY2sgZXNzIGljaCBlcnN0bWFsIHdhcy4uLi4KTmViIHdpbmt0IE5lc2FqYSB6dS4KTmVzYWphIHdpbmt0LgpOZWIgYmVkYW5rdCBzaWNoIGJlaSBEaXIuCk5lc2FqYSBrdWVzc3QgTmViIGxhY2hlbmQuCkR1IG1hY2hzdCBlaW5lbiBhbm11dGlnZW4gS25pY2tzLgpOZXNhamEga3VsbGVydCBlaWVybmQgbmFjaCBOb3JkZW4uCkR1IHdpbmtzdC4KCgpIaWVybWl0IGVuZGV0IGRpZSBBdWZ6ZWljaG51bmcgdW5zZXJlciBBYmVudGV1ZXIgYW0gaGV1dGlnZW4gTmFjaG1pdHRhZywgdW5kCndpciB3YXJlbiB3aWtybGljaCBmcm9oLCBub2NoIGVpbm1hbCBtaXQgZGVtIExlYmVuIGRhdm9uZ2Vrb21tZW4genUgc2Vpbi4uLi4KSWNoIGhvZmZlLCBlcyB3YXIgbmljaHQgenUgbGFuZywgaWNoIGplZGVuZmFsbHMgaGFiIGltbWVyIG5vY2ggQmF1Y2hzY2htZXJ6ZW4Kdm9yIExhY2hlbiwgYmlzIGRlbm4KCk5lYi4KClAuUy4gRGFzIGRpZXNlcyBoaWVyIGdsZWljaHplaXRpZyBlaW4gRmxhbWUtQXJ0aWtlbCBnZWdlbiBQYS1Cb29ucwpVZWJlcm1vbnN0ZXIgaXN0LCB2ZXJzdGVodCBzaWNoIHdvaGwgZnVlciBqZWRlbiB2b24gc2VsYnN0LCBkZXIgZGVuIEFydGlrZWwKYmlzIGhpZXJoZXIgZ2VsZXNlbiBoYXQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVlIEhvY2hlYmVuZSwgb2RlcjogQm95a290dGllcnQgUGEtQm9vbiA/IChUaWxseSwgIDkuIE5vdiAxOTk4LCAwMTowNzowOSk6Cn4jISBybj1OZWIgcnQ9OTEwNTY5MjI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEwNTY5MjI5CklzdCBlY2h0IHVuZXJob2VydCB3YXMgRXVjaCBkYSBwYXNzaWVydCBpc3QuIEFiZXIgZGVyIE11dCB1bmQgZGllCkVpbnNhdHpiZXJlaXRzY2hhZnQgZGVyIE1hZ2llciBtdXNzIG1hbCBnZWxvYnQgd2VyZGVuLiBJY2ggYmluIG1pciBzaWNoZXIsCmFsbGUgYW5kZXJlbiBoYWV0dGVuIGRlbSBFbGVuZCBoaWxmbG9zIHp1Z2VzZWhlbiB1bmQgaWhyIHdhZXJkIGFsbGUgZ2VzdG9yYmVuIQpTZWl0IGZyb2ggZGFzcyBlcyBfc29sY2hlXyBNYWdpZXIgZ2lidC4KICAgICAgICAgICAgICAgICAgICAgICAgICAgVGlsbHkgKHZvbGxlciBFcm5zdCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV1ZSBIb2NoZWJlbmUsIG9kZXI6IEJveWtvdHRpZXJ0IFBhLUJvb24gPyAoU2FsYWRpbiwgIDkuIE5vdiAxOTk4LCAwMTowODozMik6Cn4jISBybj1UaWxseSBydD05MTA1NzAwMjkgcmc9c2NobWFycm4KfiMhIHRpZD05MTA1NjkyMjkKRnJldWUgbWljaCBpbW1lciB3aWVkZXIgdWViZXIgdm9sbCBlcm5zdGUgQXJ0aWtlbCBpbiBTY2htYXJybjopCgpTYWxhZGluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXVlIEhvY2hlYmVuZSwgb2RlcjogQm95a290dGllcnQgUGEtQm9vbiA/IChUaWxseSwgIDkuIE5vdiAxOTk4LCAwMTowOTo1OSk6Cn4jISBybj1TYWxhZGluIHJ0PTkxMDU3MDExMiByZz1zY2htYXJybgp+IyEgdGlkPTkxMDU2OTIyOQpOdXIgZGVyIFRpdGVsIGVpbmVyIFJ1YnJpayBzYWd0IG5pY2h0cyB1ZWJlciBkZW4gRXJuc3QgaWhyZXMgSW5oYWx0cyBhdXMuClp1bWluZGVzdCBpc3QgZGllcyBpbiBkZXIgTXBhIHNvIC4uLiA6KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSBUaWxseSAtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXVlIEhvY2hlYmVuZSwgb2RlcjogQm95a290dGllcnQgUGEtQm9vbiA/IChOYWlyb2xmLCAgOS4gTm92IDE5OTgsIDAyOjUwOjAxKToKfiMhIHJuPVRpbGx5IHJ0PTkxMDU3MDE5OSByZz1zY2htYXJybgp+IyEgdGlkPTkxMDU2OTIyOQppY2gga3JhbSB2ZXJ6d2VpZmVsdCBuYWNoIG5lbSBUYXNjaGVudHVjaCAuLiBpY2ggZmluZGUgZXMgcnVlaHJlbmQgd2llIHNpY2gKUklrdXMgdW0gZXVjaCBnZWt1ZW1tZXJ0IGhhdCAhCgpOYWkqCi0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1cmE/IChNb3Jnb3RoLCAgOS4gTm92IDE5OTgsIDA5OjQyOjU1KToKS2V5ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRlaW4gRnJldW5kIEtleSBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCktleSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKW1RvZDpMYXJzXSBFaW4gRmV1ZXJyaWVzZSBoYXQgZ2VyYWRlIERlbW9uYSB1bWdlYnJhY2h0LgoKVW5nZXNjaG5pdHRlbiAsLSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVlIEhvY2hlYmVuZSwgb2RlcjogQm95a290dGllcnQgUGEtQm9vbiA/IChCYWJvb24sICA5LiBOb3YgMTk5OCwgMTI6NTY6MzgpOgp+IyEgcm49TmViIHJ0PTkxMDU2OTIyOSByZz1zY2htYXJybgp+IyEgdGlkPTkxMDU2OTIyOQpXYXMgbWFjaHQgaWhyIEJhc3RhcmRlIGRhIG1pdCBtZWluZW0gYXJtZW4gQmxpbmRmaXNjaD8KWnUgZHJpdHQgZ2VnZW4gZWluZW4gdW5kIGRhbm4gYXVjaCBub2NoIG1pdCBzb2xjaGVuClVlYmVyd2FmZmVuIHdpZSBkZW0gdW5pcXVlLVdlc3BlbnN0YWNoZWwuIEtlaW4gV3VuZGVyLApkYXNzIGRhcyBhcm1lIFRpZXIgYXVmIGRlbiBTY2hyZWNrIGVyc3RtYWwgZWluZW4KdGFua2VuIHNjaHdpbW10LiBXZW5uIGljaCBub2NobWFsIGplbWFuZGVuIGJlaSBlaW5lcgpzb2xjaGVuIEdlbWVpbmhlaXQgZXJ3aXNjaGUgemVpZyBpY2ggaWhuIHdlZ2VuIApUaWVycXVhZWxlcmVpIGFuLgoKQmFCT09uKCkgd2lyZCBzYXVlciB3ZW5uIG1hbiBzZWluZSBNb25zdGVyIGFic2NobGFjaHRldC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcuLi4gKE5vdmFzdG9ybSwgIDkuIE5vdiAxOTk4LCAxNzowNDoyMyk6CkRlaW4gRnJldW5kIEJlbGdhcmlhZCB0ZWlsdCBEaXIgbWl0OiBnb3IgdmVycmVja3QgbWlyIG51ciBpbW1lciB3ZWlsIGVyIGtlaW5lCkRlaW4gRnJldW5kIEJlbGdhcmlhZCB0ZWlsdCBEaXIgbWl0OiBhdXNydWVzdHVuZyBoYXQKW1RvZDpMYXJzXSBFaW5lIExlaWNoZSBoYXQgZ2VyYWRlIEJlbGdhcmlhZCB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2V5IHVuZCBzZWluZSBTa2lsbHMgOikgKFN0aW5nLCAgOS4gTm92IDE5OTgsIDE3OjQwOjU1KToKRWJlbiBmcmFndGUgaWNoIEtleSBub2NoIHdpZSBzZWluZSBTa2lsbHMgc2luZCA6KQpEYW5uLCAyIHNlYy4gc3BhZXRlcjoKW1RvZDpMYXJzXSBFaW4gVW5mYWxsIGltIEhvY2hnZWJpcmdlIGhhdCBnZXJhZGUgS2V5IHVtZ2VicmFjaHQuCgpGbHVzc3dpbmQgdGVpbHQgRGlyIG1pdDogd2Fyb2sgbm9jaCB6dSBuaWVkZXIgOigKCgoqbGFjaCogOikpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBVUFBQUFBQUFBQUFBQUEgKFplciwgMTAuIE5vdiAxOTk4LCAwOToyOToxMyk6CmZsdWNodHJpY2h0dW5nIG9zdCB1bmQgZWluIGJsb2NrZW5kZXIgTlBDIG5hY2ggU3VlZGVuLCB3aWUgZ2VodCBEQVMKRGVyIERhZW1vbiBzY2hsZXVkZXJ0IGVpbmVuIEZldWVyYmFsbCBuYWNoIERpci4KTWF0cml4OiBFaW4gZ3Jvc3NlciBGZXVlcmRhZW1vbiBzY2h3YW5rdCB1bmQgd2Fua3QuICg0MCUpCioqKiogTFA6IDEwNyAoLTE0KSBLUDogNApEaWUgQW5nc3QgaXN0IHN0YWVya2VyIGFscyBEdSAuLi4gRHUgd2lsbHN0IG51ciBub2NoIHdlZyBoaWVyLgpFaW4gZ3Jvc3NlciBGZXVlcmRhZW1vbiBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkZldWVyaG9lbGxlLi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG5vcmRlbi4KRWluIHJpZXNpZ2VyIEZldWVyZGFlbW9uLgogIC4uLi5ub3JtYWwvS2xhdWVuLi4uLi4uIEZldWVyZGFlbW9uLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIEtyYWNoZW4KKioqKiBMUDogNzcgKC0zMCkgS1A6IDQKRGllIEFuZ3N0IGlzdCBzdGFlcmtlciBhbHMgRHUgLi4uIER1IHdpbGxzdCBudXIgbm9jaCB3ZWcgaGllci4KSW4gZGllc2UgUmljaHR1bmcga2FubnN0IER1IG5pY2h0IGdlaGVuLgpFaW4gcmllc2lnZXIgRmV1ZXJkYWVtb24gaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgpJbiBlaW5lciBmcmVtZGVuIERpbWVuc2lvbi4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuIHVuZCBzdWVkZW4uCkRpZSBMZWljaGUgZWluZXMgZ3Jvc3NlbiBGZXVlcndlc2Vucy4KRGllIGJlcmVpdHMgemllbWxpY2ggc3RpbmtlbmRlIExlaWNoZSBlaW5lcyBncm9zc2VuIEZldWVyd2VzZW5zLgpFaW4gZ3Jvc3NlciBGZXVlcmRhZW1vbi4KICAuLi4ubm9ybWFsL0tsYXVlbi4uLi4uLiBGZXVlcmRhZW1vbi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSBzZWhyIGhhcnQKKioqKiBMUDogNjMgKC0xNCkgS1A6IDQKRGVyIERhZW1vbiBzcGVpdCBGZXVlciBhdWYgRGljaC4KRGllIEFuZ3N0IGlzdCBzdGFlcmtlciBhbHMgRHUgLi4uIER1IHdpbGxzdCBudXIgbm9jaCB3ZWcgaGllci4KRWluIGdyb3NzZXIgRmV1ZXJkYWVtb24gaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgpJbiBlaW5lciBmcmVtZGVuIERpbWVuc2lvbi4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHdlc3RlbiB1bmQgbm9yZHdlc3Rlbi4KClplciwgeml0dGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBVUFBQUFBQUFBQUFBQUEgKE1vcmdvdGgsIDEwLiBOb3YgMTk5OCwgMDk6NTE6MDIpOgp+IyEgcm49WmVyIHJ0PTkxMDY4NjU1MyByZz1zY2htYXJybgp+IyEgdGlkPTkxMDY4NjU1MwpKYWphLCBrZWluZSBBbmdzdCBrbGVpbmUgUmF0dGUuIERhIGhhdCBtYWwgd2llZGVyIGVpbmVyIGluIG1laW5lbiBGaWxlcwpnZWZ1bW1lbHQuIEFiIGpldHp0IGJsb2NrdCBkZXIgd2llZGVyLCBEdSBrYW5uc3QgYWxzbyBtaXQgVm9yc2ljaHQgMTAwIHJlaW4uCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3RhbW10aXNjaCBpbiBEZG9yZiB2ZXJsZWdlbj8gKEdyaW1tYm9ybiwgMTAuIE5vdiAxOTk4LCAxMjoxMjozNyk6Cn4jISBvbj1Ib3VzZWhvbGRlciBvdD05MTA2NjQ1MDkgb2c9a3VsdHVyCn4jISBybj1SYW50YW5wbGFuIHJ0PTkxMDY2MzQ5OSByZz1rdWx0dXIKfiMhIHRpZD05MTAzODY4ODEKbWFjaCB2b3IgIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FhYWFhaCAoRGFya3dpbmcsIDEwLiBOb3YgMTk5OCwgMTY6MDM6MzkpOgpUYW1lbGkgaGFzdGV0IHBsb2V0emxpY2ggZHVyY2ggZGllIFR1ZXIgaW0gTm9yZG9zdGVuIGluIGRlbiBHYW5nCmhpbmVpbixVbnZlcnN0YWVuZGxpY2hlcyBpbiBpaHJlbiBCYXJ0IG11cm1lbG5kLgoKRGFya3dpbmcgZ2xhdWJ0IGVzIGphIG5pY2h0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2FhYWFhaCAoVGFtZWxpLCAxMC4gTm92IDE5OTgsIDE2OjA1OjA4KToKfiMhIHJuPURhcmt3aW5nIHJ0PTkxMDcxMDIxOSByZz1zY2htYXJybgp+IyEgdGlkPTkxMDcxMDIxOQpFaW5zcHJ1Y2gsIFZlcmxldW1kdW5nICEhCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhvbWVtdWQgZnVlciBhbGxlIChSb2NodXMsIDEwLiBOb3YgMTk5OCwgMTY6MjI6MTIpOgpGdWVyIGFsbGUsIGRpZSBzY2hvbiBpbW1lciBtYWwgZGFzIE11ZCBrb21wbGV0dCB6dWhhdXNlIGhhYmVuIHdvbGx0ZW46CiAgbWcubXVkLmRlIDMxMzM3CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSG9tZW11ZCBmdWVyIGFsbGUgKEppbWRpZ3JpeiwgMTAuIE5vdiAxOTk4LCAyMDozNzo1Nik6Cn4jISBybj1Sb2NodXMgcnQ9OTEwNzExMzMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEwNzExMzMyCkhvaSwKCmxlaWRlciBjb25uZWN0aW9uIHJlZnVzZWQgYWJlciB3aWUgd2FlcnMgZGVubiBtaXQ6Cgo+IGdyZXAgMzEzMzcgL2V0Yy9zZXJ2aWNlcwpob21lbXVkICAgICAgICAzMTMzNy90Y3AgICAgICAgICAgICAgICAjIGhvbWVtdWQtc3RyZWFtCgo+IGdyZXAgaG9tZW11ZCAvZXRjL2luZXRkLmNvbmYKaG9tZW11ZCAgICAgc3RyZWFtIHRjcCBub3dhaXQgcm9vdCAvdXNyL2Jpbi90YXIgdGFyIGNmIC0gL2hvbWUvbWcKCiA6LX0KCkNpYW8sCiBKZEcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIHdhcy4uLiA6KSAoR2FzdDEsIDExLiBOb3YgMTk5OCwgMDg6NDQ6MjEpOgpba3dlcl0KTG9nb24uLi4uLi4uLi4uLi5zIEVtYmUuLi4uLi4uLi4uLmp3cyBHYXN0MS4uLi4uLi4uLi4uLnMgQXJhZ29yLi4uLi4uLi4uLi5zCk1lcmN1dGlvLi4uLi4uLi53cyBJc2lzLi4uLi4uLi4uLi5Kd3ogU2FsYWRpbi4uLi4uLi4uLi5zIEFscGhhLi4uLi4uLi4uLkp3cwpSaWNoZWxpZXUuLi4uLi5JLnogTWllemUuLi4uLi4uLi4uLi5TIFF1aWNrLi4uLi4uLi4uLi4ueiBaZXIuLi4uLi4uLi4uLi4uLlMKUXVpbGxpYW4uLi4uLi4uSndNIEtvYmF5YXNoaS4uLi4uLkkuTSBSdW1hdGEuLi4uLi4uLi5Kd0cKCmZpbmdlciBsb2dvbgo+IEhtbS4uLiBkaWVzZW4gTmFtZW4gZ2lidCBlcyBpbiBNb3JnZW5ncmF1ZW4gbmljaHQuICAgICAgCmt3ZXIKPiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNaXQsIDExLiBOb3YgMTk5OCwgMDg6NDI6MDggKDE1IFRlaWxuZWhtZXIpCgpMb2dvbi4uLi4uLi4uLi4uLnMgRW1iZS4uLi4uLi4uLi4uandzIEdhc3QxLi4uLi4uLi4uLi4ucyBBcmFnb3IuLi4uLi4uLi4uLnMKTWVyY3V0aW8uLi4uLi4uLndzIElzaXMuLi4uLi4uLi4uLkp3eiBTYWxhZGluLi4uLi4uLi4uLnMgQWxwaGEuLi4uLi4uLi4uSndzClJpY2hlbGlldS4uLi4uLkkueiBNaWV6ZS4uLi4uLi4uLi4uLlMgUXVpY2suLi4uLi4uLi4uLi56IFplci4uLi4uLi4uLi4uLi4uUwpRdWlsbGlhbi4uLi4uLi5Kd00gS29iYXlhc2hpLi4uLi4uSS5NIFJ1bWF0YS4uLi4uLi4uLkp3RwoKSWNoIGdsYXViIGljaCBibGVpYiBoaWVyIEdhc3QgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIDstKSAoTm92YXN0b3JtLCAxMS4gTm92IDE5OTgsIDE3OjU5OjQ5KToKQmVsZ2FyaWFkIHJ1ZnQ6IGZvcmUKCltUb2Q6TGFyc10gRWluZSBEcmFjaGVuc2NoaWxka3JvZXRlIGhhdCBnZXJhZGUgQmVsZ2FyaWFkIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdWVyIEtleSAoU3RpbmcsIDExLiBOb3YgMTk5OCwgMjA6MDI6NDgpOgpuZSBzY2hvZW5lIGRpc2t1c3Npb24KCgpTdGluZywgd2FyIGRhcyBvayBzbyA/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqd2FlbHoqIChBbmFjcmlvbiwgMTEuIE5vdiAxOTk4LCAyMTozNjozMSk6CgpNaWtvc2ggdGVpbHQgRGlyIG1pdDogaGFsdCBkaWUga2xhcHBlLCBzb25zdCBsYW5kZXN0ZSBtaXQgc3JhYmkgaW4gZGVyIGFyZW5hIApbMjE6MzNdCkR1IHRlaWxzdCBNaWtvc2ggbWl0OiBpY2gga29tbSBnZXJuZSBpbiBkaWUgYXJlbmEKPiBNaWtvc2ggdGVpbHQgRGlyIG1pdDogYWVoaGhtLCBsYXNzIG1hbCBndXQgc2VpbiwgaWNoIGJpbiBnZXJhZGUgc2Nob24gdG90CgpBbmFjKiAtICp3YWVsemVuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVudGVya3VuZnQgenVyIFdpbnRlcnBhcnR5IGJlaSAxMTIgKFJvY2h1cywgMTEuIE5vdiAxOTk4LCAyMjo0MDoxMik6CltNYWdpZXI6RmV1ZXJ3ZWhyXSBIbW0uIEljaCBoYWIgbmV0dGUgTWl0YmV3b2huZXJpbm5lbi4gSWhyIHdvbGx0IGJlc3RpbW10CltNYWdpZXI6RmV1ZXJ3ZWhyXSBuaWNodCBpbiBtZWluIEJldHQuCk1vcmdvdGggICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbnRlcmt1bmZ0IHp1ciBXaW50ZXJwYXJ0eSBiZWkgMTEyIChNb3Jnb3RoLCAxMS4gTm92IDE5OTgsIDIyOjQ0OjA2KToKfiMhIHJuPVJvY2h1cyBydD05MTA4MjA0MTIgcmc9c2NobWFycm4KfiMhIHRpZD05MTA4MjA0MTIKQWVobS4uLi5NT09PT09PTUVOVApJY2gga3JhYmJlbCBudXIgbm9jaCBpbiBlaW4gQmV0dCA7LSkpKQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVW50ZXJrdW5mdCB6dXIgV2ludGVycGFydHkgYmVpIDExMiAoQm9pbmcsIDExLiBOb3YgMTk5OCwgMjI6NDQ6MzApOgp+IyEgcm49TW9yZ290aCBydD05MTA4MjA2NDYgcmc9c2NobWFycm4KfiMhIHRpZD05MTA4MjA0MTIKS2FubnN0IER1IGRhcyBtYWwgZ2VuYXVlciBhdXNmdWVocmVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGFuZ2VudGlhbGh5cGVyZWJlbmVuPyAoQW5hdG9sLCAxMS4gTm92IDE5OTgsIDIyOjU1OjQ4KToKRHUgdGVpbHN0IGRlaW5lbiBGcmV1bmRlbiBtaXQ6IFNlaWQgaWhyIGZpdD8gSWNoIHdlcmRlIGVpbiBwYWFyIGh1ZWJzY2hlCkR1IHRlaWxzdCBkZWluZW4gRnJldW5kZW4gbWl0OiBBYmxlaXR1bmdlbiBicmF1Y2hlbiAtIHVuZCBqZW1hbmQsIGRlciBtaXIKRHUgdGVpbHN0IGRlaW5lbiBGcmV1bmRlbiBtaXQ6IG5vdGZhbGxzIGRlbiBHcmFkaWVudGVuYWJzdGllZyBlcmtsYWVydCA7KQpEZWluIEZyZXVuZCBNb3Jnb3RoIHRlaWx0IERpciBtaXQ6IGdlaCBzY2hsYWZlbiBhbmF0b2wgdW5kIHRyYWV1bSBkYXZvbgpEZWluIEZyZXVuZCBGZXVlcndlaHIgdGVpbHQgRGlyIG1pdDogV2VpY2hlLCBBbmF0b2whIFdlaWNoZSEKRGVpbiBGcmV1bmQgVGVkZHkgdGVpbHQgRGlyIG1pdDogQXJncywgZGFzIGF1Y2ggbm9jaCwgQW5hdG9sPyBJY2ggYmluIGVoIHNjaG9uCkRlaW4gRnJldW5kIFRlZGR5IHRlaWx0IERpciBtaXQ6IGltIFN0cmVzcwpEZWluZSBGcmV1bmRpbiBOZXNhamEgdGVpbHQgRGlyIG1pdDogQWVoZW0gLi5hbmF0b2wgZ3JhZCBnZXN0ZXJuIGhhYiBpY2ggZGFzCkRlaW5lIEZyZXVuZGluIE5lc2FqYSB0ZWlsdCBEaXIgbWl0OiBub2NoIGplbWFuZGVuIGVya2xhZXJ0IGFiZSByaGV1dGUKRGVpbmUgRnJldW5kaW4gTmVzYWphIHRlaWx0IERpciBtaXQ6IC4uLmRpZXNlciBzY2hlcm16IC4uLi5hbHRlCkRlaW5lIEZyZXVuZGluIE5lc2FqYSB0ZWlsdCBEaXIgbWl0OiBrcmllZ3N2ZXJsZXR6dW5nIC4uZHV3IGVpc3N0IHNjaG9uCgouIG8gTyAoIEZyZXVuZGUuLi4gKS4KQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRhbmdlbnRpYWxoeXBlcmViZW5lbj8gKE1vcmdvdGgsIDExLiBOb3YgMTk5OCwgMjI6NTc6MTQpOgp+IyEgcm49QW5hdG9sIHJ0PTkxMDgyMTM0OCByZz1zY2htYXJybgp+IyEgdGlkPTkxMDgyMTM0OApJY2ggd3VlcmRlIHNhZ2VuOiB0YW5nZW50aWFsIGFtIGFyc2NoIHZvcmJlaSA7LSkKCk0qCgpQLlMuOiBuYXR1ZXJsaWNoIG51ciByZWluIGh5cG90aGV0aXNjaCBnZXNwcm9jaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBVVRTQ0ggKEthZGFicmEsIDExLiBOb3YgMTk5OCwgMjM6MjI6MTYpOgpEdSBrbnVkZGVsc3QgRGFya3dpbmcsIFRhbWVsaSB1bmQgZWluZW4gQmllbmVuc2Nod2FybS4KYWxzbyBzb3dhcyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVW50ZXJrdW5mdCB6dXIgV2ludGVycGFydHkgYmVpIDExMiAoVGVkZHksIDEyLiBOb3YgMTk5OCwgMDE6MDg6MjkpOgp+IyEgcm49Qm9pbmcgcnQ9OTEwODIwNjcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEwODIwNDEyCk9jaCBub2UsIG5pY2h0IHNjaG9uIHdpZWRlciA7KQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggaW0gYXVyb3JhIChKYXNvbnJpZ2lkLCAxMi4gTm92IDE5OTgsIDE0OjU5OjM1KToKc2NoYWVyZndhZmZlClByaW56IEFydXRoYSB0cmFldW10IHZvbiBkZXIgU29ubmUuCk1lcmxpbiwgZGVyIFVydmF0ZXIgYWxsZXIgTWFnaWVyLgpBcnV0aGEgc2FndDogbWVybGluLCBtYWNoIGphc29uIHp1bSBtYWdpZXIKQXJ1dGhhIHRyaXR0IE1lcmxpbi4KQXJ1dGhhIGFyZ2x0IGVpbiB3ZW5pZyB2b3Igc2ljaCBoaW4uCkFydXRoYSBncnVtbWVsdC4Kc2NoYWVyZndhZmZlCkFydXRoYSBzYWd0OiBtZXJsaW4sIG1hY2ggamFzb24genVtIG1hZ2llciAuLiBiaXR0ZSA/CkFydXRoYSBzdGFtcGZ0IG1pdCBkZW0gRnVzcyBhdWYuCkFydXRoYSBzYWd0OiBtZW5ubwpBcnV0aGEgZ3J1ZWJlbHQgZWluZSBXZWlsZSB2b3Igc2ljaCBoaW4uCnNjaGFlcmZ3YWZmZQoKc2NoYWVyZndhZmZlCkphc29uLCBnYXIgbmljaHQgbWFsIHNvIGVpbmZhY2ggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBuZXVsaWNoIGltIGF1cm9yYSAoSG9ibywgMTIuIE5vdiAxOTk4LCAxNToxMTozMCk6Cn4jISBybj1KYXNvbnJpZ2lkIHJ0PTkxMDg3OTE3NSByZz1zY2htYXJybgp+IyEgdGlkPTkxMDg3OTE3NQpXdXN0bWFnaWVyIDspCgpIb2JvIC0gM2ZhY2hlIE11dHRlciAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBuZXVsaWNoIGltIGF1cm9yYSAoQm9pbmcsIDEyLiBOb3YgMTk5OCwgMTU6MTM6MDApOgp+IyEgcm49SmFzb25yaWdpZCBydD05MTA4NzkxNzUgcmc9c2NobWFycm4KfiMhIHRpZD05MTA4NzkxNzUKV3Vyc3RzY3JpcHRlciA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG1tIDopIChOb3Zhc3Rvcm0sIDEyLiBOb3YgMTk5OCwgMTY6MjU6NTApOgpNb3Jnb3RoIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCkR1IGtudXJyc3QgTW9yZ290aCBhbi4KW1RvZDpMYXJzXSBFaW4gT3JrIGhhdCBnZXJhZGUgUHJhIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSG1tIDopIChMZW5hLCAxMi4gTm92IDE5OTgsIDE2OjI3OjM1KToKfiMhIHJuPU5vdmFzdG9ybSBydD05MTA4ODQzNTAgcmc9c2NobWFycm4KfiMhIHRpZD05MTA4ODQzNTAKV2FzIGlzdCBkYXJhbiBzbyB3aXR6aWc/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhtbSA6KSAoTm92YXN0b3JtLCAxMi4gTm92IDE5OTgsIDE2OjI4OjE2KToKfiMhIHJuPUxlbmEgcnQ9OTEwODg0NDU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEwODg0MzUwClNoaXQsIGljaCB1bmQgbWVpbiBLdXJ6emVpdGdlZGFlY2h0bmlzLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IG5ldWxpY2ggaW0gYXVyb3JhIChKYXNvbnJpZ2lkLCAxMi4gTm92IDE5OTgsIDE3OjM1OjM3KToKfiMhIHJuPUJvaW5nIHJ0PTkxMDg3OTk4MCByZz1zY2htYXJybgp+IyEgdGlkPTkxMDg3OTE3NQp3dXJzdGVkaXRvciA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGVhbWdlaXN0ISAoVHVuaXhndXQsIDEyLiBOb3YgMTk5OCwgMTc6NDI6MjQpOgp1bmdlc2Nobml0dGVuOgpQeXJkYWNvciBsYW5kZXQgYWxzIHJpZXNlbmhhZnRlciBEcmFjaGUgdm9yIERpciB1bmQgRGlyIHNjaHdpbmRlbiBkaWUgU2lubmUuIApBbHMgRHUgd2llZGVyIHp1IERpciBrb21tc3QsIHN0ZWh0IGRlciBFbGYgUHlyZGFjb3Igdm9yIERpci4KSmFzb25SaWdpZCB3aXJkIHZvbiBlaW5lbSByaWVzZW5oYWZ0ZW4gRHJhY2hlbiBoaWVyIGFiZ2VzZXR6dC4KSmFzb25SaWdpZCBzdGVpZ3QgYXVmIGVpbmVuIHJpZXNlbmhhZnRlbiBEcmFjaGVuIHVuZCBmbGllZ3QgZm9ydC4KUHlyZGFjb3IgdmVyd2FuZGVsdCBzaWNoIGluIGVpbmVuIHJpZXNlbmhhZnRlbiBEcmFjaGVuLCB1bmQgRHUgZmFlbGxzdCBpbiAKT2hubWFjaHQuIEFscyBEdSB3aWVkZXIgenUgRGlyIGtvbW1zdCwgaXN0IGRlciBEcmFjaGUgdmVyc2Nod3VuZGVuLgoKU2FjaGVuIGdpYidzLi4uCidzIEthcmF0ZS1ad2VyY2hsZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVzYmlsZHVuZyB2b20gU3BpZWxmZWxkcmFuZCA/PyAoQnV6emN1dCwgMTIuIE5vdiAxOTk4LCAxODowMzowNik6CkR1IHNjaGltcGZzdDogSWNoIGdlYiBEaXIgbmUgZmFpcmUgQ2hhbmNlIHVuZCBzdGVja2UgbWVpbmUgV2FmZmUgd2VnLgpFaW4gV29scGVydGluZ2VyIGVyd2lkZXJ0OiBEdSBrYW5uc3Qgc29nYXIgbWl0IGJsb3NzZW4gSGFlbmRlbiB0b2V0ZW4/CkVpbiBXb2xwZXJ0aW5nZXIgZXJ3aWRlcnQ6ICp6aXR0ZXIqCkRlciBXb2xwZXJ0aW5nZXIgc3R1ZXJ6dCBzaWNoIHZvbGwgV3V0IGF1ZiBEaWNoIQogIC4uLi5ub3JtYWwvU2Vuc2UuLi4uLi4uIERlbC4uLi4uLi4uLi4gOiBXb2xwZXJ0aW5nZXIuICoqKioqKioqIC0tIGhhcnQKICAuLi4ubm9ybWFsL0F1Z2VuLi4uLi4uLiBXb2xwZXJ0aW5nZXIuIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSBnZWtyYXR6dApEaWVzZW4gV29scGVydGluZ2VyIGthbm4gbnVyIHNlaW4gU2Nob2VwZmVyICdEZWwnIGluCmRhcyBSZWljaCBkZXIgVG90ZW4gdmVyYmFubmVuLgogIC4uLi5ub3JtYWwvU3RlY2hlbC4uLi4uIERlbC4uLi4uLi4uLi4gOiBXb2xwZXJ0aW5nZXIuICoqKioqKioqIC0tIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9BdWdlbi4uLi4uLi4gV29scGVydGluZ2VyLiA6IERlbC4uLi4uLi4uLi4gKioqKioqKiogLS0gaGFydAogIC4uLi4uZXh0cmEvS2FtcGZ0cml0dC4uIERlbC4uLi4uLi4uLi4gOiBXb2xwZXJ0aW5nZXIuICoqKioqKioqIC0tIHNlaHIgaGFydAogIC4uLi5ub3JtYWwvU2Vuc2UuLi4uLi4uIERlbC4uLi4uLi4uLi4gOiBXb2xwZXJ0aW5nZXIuICoqKioqKioqIC0tIGhhcnQKICAuLi4ubm9ybWFsL0F1Z2VuLi4uLi4uLiBXb2xwZXJ0aW5nZXIuIDogRGVsLi4uLi4uLi4uLiAqKioqKioqKiAtLSBnZWtyYXR6dAogIC4uLi5ub3JtYWwvU2Vuc2UuLi4uLi4uIERlbC4uLi4uLi4uLi4gOiBXb2xwZXJ0aW5nZXIuICoqKioqKioqIC0tIGdla2l0emVsdAogIC4uLi5ub3JtYWwvQXVnZW4uLi4uLi4uIFdvbHBlcnRpbmdlci4gOiBEZWwuLi4uLi4uLi4uICoqKioqKioqIC0tIGdla3JhdHp0CkRlciBXb2xwZXJ0aW5nZXIga3JhdHp0IERpY2guCiAgLi4uLm5vcm1hbC9TZW5zZS4uLi4uLi4gRGVsLi4uLi4uLi4uLiA6IFdvbHBlcnRpbmdlci4gKioqKioqKiogLS0gaGFydAogIC4uLi5ub3JtYWwvQXVnZW4uLi4uLi4uIFdvbHBlcnRpbmdlci4gOiBEZWwuLi4uLi4uLi4uICoqKioqKioqIC0tIGdla3JhdHp0CiAgLi4uLm5vcm1hbC9TZW5zZS4uLi4uLi4gRGVsLi4uLi4uLi4uLiA6IFdvbHBlcnRpbmdlci4gKioqKioqKiogLS0gaGFydAogIC4uLi5ub3JtYWwvQXVnZW4uLi4uLi4uIFdvbHBlcnRpbmdlci4gOiBEZWwuLi4uLi4uLi4uICoqKioqKioqIC0tIGhhcnQKICAuLi4ubm9ybWFsL1NlbnNlLi4uLi4uLiBEZWwuLi4uLi4uLi4uIDogV29scGVydGluZ2VyLiAqKioqKioqKiAtLSBoYXJ0CiAgLi4uLm5vcm1hbC9BdWdlbi4uLi4uLi4gV29scGVydGluZ2VyLiA6IERlbC4uLi4uLi4uLi4gKioqKioqKiogLS0gdmVyZmVobHQKICAuLi4ubm9ybWFsL1NlbnNlLi4uLi4uLiBEZWwuLi4uLi4uLi4uIDogV29scGVydGluZ2VyLiAqKioqKioqKiAtLSBoYXJ0CiAgLi4uLm5vcm1hbC9BdWdlbi4uLi4uLi4gV29scGVydGluZ2VyLiA6IERlbC4uLi4uLi4uLi4gKioqKioqKiogLS0gZ2VrcmF0enQKICAuLi4ubm9ybWFsL1NlbnNlLi4uLi4uLiBEZWwuLi4uLi4uLi4uIDogV29scGVydGluZ2VyLiAqKioqKioqKiAtLSBoYXJ0CiAgLi4uLm5vcm1hbC9BdWdlbi4uLi4uLi4gV29scGVydGluZ2VyLiA6IERlbC4uLi4uLi4uLi4gKioqKioqKiogLS0gZ2VraXR6ZWx0CkRlbCB0cml0dCBkaWUgTHVmdCBrcmFlZnRpZy4KICAuLi4ubm9ybWFsL1NlbnNlLi4uLi4uLiBEZWwuLi4uLi4uLi4uIDogV29scGVydGluZ2VyLiAqKioqKioqKiAtLSBzZWhyIGhhcnQKICAuLi4ubm9ybWFsL0F1Z2VuLi4uLi4uLiBXb2xwZXJ0aW5nZXIuIDogRGVsLi4uLi4uLi4uLiAqKioqKioqKiAtLSBoYXJ0CkRlciBXb2xwZXJ0aW5nZXIga3JhdHp0IERpY2guCiAgLi4uLm5vcm1hbC9TZW5zZS4uLi4uLi4gRGVsLi4uLi4uLi4uLiA6IFdvbHBlcnRpbmdlci4gKioqKioqKiogLS0gZ2VrcmF0enQKICAuLi4ubm9ybWFsL0F1Z2VuLi4uLi4uLiBXb2xwZXJ0aW5nZXIuIDogRGVsLi4uLi4uLi4uLiAqKioqKioqKiAtLSBnZWtyYXR6dApPawpEYWZ1ZXIgd2FlcmUgZWluZSBXYWZmZSBuaWNodCBzY2hsZWNodCEKRGllc2VuIFdvbHBlcnRpbmdlciBrYW5uIG51ciBzZWluIFNjaG9lcGZlciAnRGVsJyBpbgpkYXMgUmVpY2ggZGVyIFRvdGVuIHZlcmJhbm5lbi4KICAuLi4ubm9ybWFsL1N0ZWNoZWwuLi4uLiBEZWwuLi4uLi4uLi4uIDogV29scGVydGluZ2VyLiAqKioqKioqKiAtLSBoYXJ0CiAgLi4uLm5vcm1hbC9BdWdlbi4uLi4uLi4gV29scGVydGluZ2VyLiA6IERlbC4uLi4uLi4uLi4gKioqKioqKiogLS0gZ2V0cm9mZmVuCkRlbSBXb2xwZXJ0aW5nZXIgdHJpZWZ0IFdhc3NlciBhdXMgZGVtIE1hdWwuCldlbSB3aWxsc3QgRHUgZGVubiBlaW5lbiBLbmllc3Rvc3MgdmVyc2V0emVuPwpXZW4gd2lsbHN0IER1IGRlbm4gdHJldGVuPwogIC4uLi5ub3JtYWwvU2Vuc2UuLi4uLi4uIERlbC4uLi4uLi4uLi4gOiBXb2xwZXJ0aW5nZXIuICoqKioqKioqIC0tIGdla2l0emVsdAogIC4uLi5ub3JtYWwvQXVnZW4uLi4uLi4uIFdvbHBlcnRpbmdlci4gOiBEZWwuLi4uLi4uLi4uICoqKioqKioqIC0tIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9TZW5zZS4uLi4uLi4gRGVsLi4uLi4uLi4uLiA6IFdvbHBlcnRpbmdlci4gKioqKioqKiogLS0gdmVyZmVobHQKICAuLi4ubm9ybWFsL0F1Z2VuLi4uLi4uLiBXb2xwZXJ0aW5nZXIuIDogRGVsLi4uLi4uLi4uLiAqKioqKioqKiAtLSBnZWtyYXR6dApEZW0gV29scGVydGluZ2VyIHRyaWVmdCBXYXNzZXIgYXVzIGRlbSBNYXVsLgogIC4uLi5ub3JtYWwvU2Vuc2UuLi4uLi4uIERlbC4uLi4uLi4uLi4gOiBXb2xwZXJ0aW5nZXIuICoqKioqKioqIC0tIGhhcnQKRGllcyB3YXIgTW9uc3RlciBOci4gNzIhCkZ1ZXIgRGVsIHdhciBkaWVzIE1vbnN0ZXIgTnIuIDEhCkRlciBXb2xwZXJ0aW5nZXIgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgenVlY2tzdCBkaWUgRmV1ZXJheHQuCkR1IGdyaW5zdC4KRGVsIGdyaW5zdC4KRGVsIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpEZWwgd2FlbHp0IHNpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgpEdSBuaWNrc3QgenVzdGltbWVuZC4KRGVsIGRlbmt0ICAgLiBvIE8gKHNvIGdlaHQgamEgYXVjaCBuZSBhdXNiaWxkdW5nIDotKSkpCgoqZ2VtdWV0bGljaCB6dXJ1ZWNrZ2VsZWhudCogICBEaWUgS2FtcGZiaWVuZSAuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXR0ZSBTYWNoZSA7KSAoQmVsZ2FyaWFkLCAxMi4gTm92IDE5OTgsIDE3OjUwOjUyKToKQmVpbSBFaXN0aXRhbi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRlbi4KRWluIFRpdGFuIGF1cyBFaXN6b21iaWUuCiAgRGVyIFRpdGFuIGF1cyBFaXN6b21iaWUgZ3JlaWZ0IERpY2ggbWl0IHZlcmZsZWRkZXJ0ZW4gSGFlbmRlbiBhbi4KICBEZXIgVGl0YW4gYXVzIEVpc3pvbWJpZSBrcmF0enQgRGljaC4KRWluIFRpdGFuIGF1cyBFaXN6b21iaWUgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgpFaXNlYmVuZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdXNiaWxkdW5nIHZvbSBTcGllbGZlbGRyYW5kID8/IChUaWxseSwgMTIuIE5vdiAxOTk4LCAxODowMzowNCk6Cn4jISBybj1CdXp6Y3V0IHJ0PTkxMDg5MDE4NiByZz1zY2htYXJybgp+IyEgdGlkPTkxMDg5MDE4NgpBbHRlIEhvZWxsZSBub2NobWFsLCB3YXMgaXN0IGRlbm4gZGFzIGZ1ZXIgZWluIGJlc2NoZXVlcnRlcyBTY3JpcHQgKG9kZXIgd2FzCmF1Y2ggaW1tZXIpLCB3ZWxjaGVzIHNvbGNoZSBNZWxkdW5nZW4gYXVzZ2lidD8gRGEgcmVnIGljaCBtaWNoIG5pY2h0IGRhcwplcnN0ZW1hbCBkcnVlYmVyIGF1Ziwga2FubnN0IER1IGRhcyBuaWNodCB3ZW5pZ3N0ZW5zIHVlYmVyYXJiZWl0ZW4gdW5kCnJhdXNzdHJlaWNoZW4gd2VubiBEdSBlcyBkZW5uIHVuYmVkaW5ndCBwb3N0ZW4gd2lsbHN0PwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtIFRpbGx5IC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXVzYmlsZHVuZyB2b20gU3BpZWxmZWxkcmFuZCA/PyAoQnV6emN1dCwgMTIuIE5vdiAxOTk4LCAxODowNTo1MCk6Cn4jISBybj1UaWxseSBydD05MTA4OTM3ODQgcmc9c2NobWFycm4KfiMhIHRpZD05MTA4OTAxODYKTWFuIG11c3Mgc2ljaCBkb2NoIHJpY2h0aWcgcmVpbmRlbmtlbiBrb2VubmVuIC4uLiB1bmQgYXVzc2VyZGVtIHNpbmQgbWFuY2gKYW5kZXJlIEFydGlrZWwgaGlybiB1bmQgaGVyemxvc2VyIGFscyBqZW5lciB3ZWxjaGVyLCBhbHNvIG1laW5lciAhCiBCdXp6aSAqcmVjaHRmZXJ0aWdlbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPZWg/IChEYW5jZXIsIDEyLiBOb3YgMTk5OCwgMTk6NDQ6MzQpOgpIZWhlLCBnZXJhZGUgd2FyIGljaCBtYWwgenVmYWVsbGlnIGVpbmdlbG9nZ3QsIGFscyBpbiBtZWluZW0gV2V0dHBhbGFzdCBkYXMKd29lY2hlbnRsaWNoZSBSZW5uZW4gbG9zZ2luZy4uLiBuYWNoIGRlbSBSZW5uZW4gYmVrYW0gaWNoIGZvbGdlbmRlIFd1cnN0Cm1pdGdldGVpbHQ6CgpNQVNURVI6IFdpbm5lcnMgc2V0LgpNQVNURVI6IEV2YWx1YXRpb24gT2xsaSAtIDIgMCAKTUFTVEVSOiBFdmFsdWF0aW9uIE9ra2UgLSAyIDEwMDAgCk1BU1RFUjogRXZhbHVhdGlvbiBaaXBwaWkgLSAyIDMwIApNQVNURVI6IEV2YWx1YXRpb24gVGhvcm9uIC0gMiAwIApNQVNURVI6IFN0YXJ0aW5nIHVwZGF0ZSBvZiBUT1RBTC4uLgpNQVNURVI6IFVwZGF0aW5nIG9mIFRPVEFMIGZvciA1MSBmaW5pc2hlZC4KTUFTVEVSOiBORVcgU1RBUlQgVElNRSBjYWxjdWxhdGVkOiBUaHUgTm92IDE5IDIwOjMwOjAwIDE5OTguCk1BU1RFUjogVElHRVJEQVkgNTEgc2V0IHRvIEVYUElSSU5HLgpNQVNURVI6IE1BVENIREFZIGluY3JlYXNlZCB0bzogNTIuCk1BU1RFUjogVElHRVJEQVkgNTIgaW5pdGlhbGl6ZWQgYW5kIHNldCB0byBDT0xMRUNUSU5HLgpNQVNURVI6IEdBTUJMRVIgY2xlYXJlZC4KTUFTVEVSOiBOZXcgcm91bmQgNTIgb3BlbmVkLgpNQVNURVI6IERhdGEgc2F2ZWQuCgpIZXV0ZSBrb2VubnRlIGljaCBrYXVtIG5vY2ggbmUgWmVpbGUgZXJrbGFlcmVuLi4uIHdlcmRlIGljaCBhbHQgb2RlciB3YXIgaWNoCmRhbWFscyBudXIgc28gdWViZXJ3YWNodW5nc2dlaWw/IDopCgpEYW5jZXIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT2VoPyAoV3VyemVsLCAxMi4gTm92IDE5OTgsIDE5OjUzOjI1KToKfiMhIHJuPURhbmNlciBydD05MTA4OTk4NzQgcmc9c2NobWFycm4KfiMhIHRpZD05MTA4OTk4NzQKZHUgd2lyc3QgYWx0LiBkYXMgc2llaHN0IGR1IHNjaG9uLCB3ZW5uIGR1IGluIGRlbiBzcGllZ2VsIHNjaGF1c3QsIGRhZnVlcgpicmF1Y2hzdCBkdSBrZWluZSBrb21wbGl6aWVydGVuIHRvb2xzIDopCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndvdyEgKFRhcmluYSwgMTIuIE5vdiAxOTk4LCAyMTo0ODo0OSk6ClNseWZveCBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCkR1IHNwdWVyc3QgZWluIHByaWNrZWxuZGVzIEdlZnVlaGwgYXVmIGRlciBIYXV0LgoKVW5kIGRhcyBhdXMgZGVyIEZlcm5lIDstKQoKVGFyaW5hCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VydWVjaHRla3VlY2hlLi4uLj8/Pz8gKE1vcmdvdGgsIDEyLiBOb3YgMTk5OCwgMjM6Mzk6NTQpOgpEZWluIEZyZXVuZCBCcmFuZGlyIHRlaWx0IERpciBtaXQ6IHVuZCB3aWVkZXIgd2VnLi4gZ2VoYWJ0IGV1Y2ggd29obApEZWluIEZyZXVuZCBCcmFuZGlyIHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1LgpEZWluIEZyZXVuZCBCcmFuZGlyIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRHUgdGVpbHN0IEJyYW5kaXIgbWl0OiBiaXMgU0EKRGVpbiBGcmV1bmQgTGVpYm5peiB0ZWlsdCBEaXIgbWl0OiBpY2ggYmluIGRhbm5hIHVjaCB3ZWcKQnJhbmRpciB0ZWlsdCBEaXIgbWl0OiBrbGFyCkRlaW4gRnJldW5kIExlaWJuaXogZ3JpbnN0IGF1cyBkZXIgRmVybmUuCkR1IHRlaWxzdCBkZWluZW4gRnJldW5kZW4gbWl0OiB2aWVsIHNwYXNzIGJyYW5kaXIKQnJhbmRpciBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgpEZWluIEZyZXVuZCBMZWlibml6IHRlaWx0IERpciBtaXQ6IGphYWEsIG1hY2h0IGV1Y2ggZ2VkYWtlbiA7KQpEZWluIEZyZXVuZCBMZWlibml6IGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRGVpbiBGcmV1bmQgTGVpYm5peiB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4KRGVpbiBGcmV1bmQgTGVpYm5peiB0ZWlsdCBEaXIgbWl0OiBiaXMgZGFubgpCcmFuZGlyICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpMZWlibml6ICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJlbGllYnQ/IChaYXJuaXlhLCAxMy4gTm92IDE5OTgsIDEwOjE3OjUwKToKRHUgdmVybGllcnN0IGRpZSBCZXNpbm51bmcuLi4uCgpEdSB0YXVjaHN0IGluIGVpbmVuIFN0cnVkZWwgYnVudGVyIEZhcmJlbiBlaW4uCkVpbiBrbGVpbmVyIGdydWVuZXIgU3RlaW5iZWlzc2VyIGVyc2NoZWludC4KCkRlciBTdGVpbmJlaXNzZXIgc2FndDoKICAnV2lsbGtvbW1lbiBpbSBNb3JnZW5HcmF1ZW4uJwogICdEaWVzZXMgTXVkIGJlZmluZGV0IHNpY2ggaW4gTXVlbnN0ZXIgKERldXRzY2hsYW5kKScKICAnQmVpIGdyb2Vzc2VyZW4gUHJvYmxlbWVuIGthbm5zdCBEdSBEaWNoIGFuIGRlbiBNdWRnb3R0JwogICdCb2luZyB3ZW5kZW4gb2RlciBhdWNoIGVtYWlsIGFuIGRpZScKICAnQWRyZXNzZSAibXVkQG1nLm11ZC5kZSIgc2NocmVpYmVuLicKCiAgJ1dlbm4gRHUgbnVyIG1hbCByZWluc2NobnVlZmZlbG4gd2lsbHN0LCBzbyBuZW5uZSBEaWNoICJnYXN0Ii4nCgpEZXIgU3RlaW5iZWlzc2VyIHdhcm50IERpY2g6CiAgJ1dlaGUsIER1IGZhZW5nc3QgYW4sIGFuZGVyZSBTcGllbGVyIGFuenVncmVpZmVuLicKCkRlciBTdGVpbmJlaXNzZXIgdmVyc2Nod2luZGV0IHdpZWRlciwgdW5kIER1IHdhY2hzdCBpbiBlaW5lciBhbmRlcmVuIFdlbHQgYXVmLgoKV2llIGhlaXNzdCBEdSBkZW5uID8gU2Nob2VuLCBkYXNzIER1IHdpZWRlciBkYSBiaXN0LCBaYXJuaXlhIQpQYXNzd29yZDoKRHUgbmltbXN0IHNjaG9uIGFtIFNwaWVsIHRlaWwhClZlcndlbmRlIERlaW5lIGFsdGUgc3RlcmJsaWNoZSBIdWVsbGUgLi4uCkRpZXMgaGllciBpc3QgZGllIFBvc3RzdGVsbGUgZGVyIEVsZmVuLgpFcyBpc3QgZWluIGZ1ZW5mIG1hbCBmdWVuZiBNZXRlciBncm9zc2VyIFJhdW0sIGRlc3NlbiBXYWVuZGUgdm9sbCBtaXQKUmVnYWxlbiBzaW5kLgpEdSBrYW5uc3Qgdm9uIGhpZXIgYXVzIEJyaWVmZSBhbiBhbmRlcmUgU3BpZWxlciBzY2hpY2tlbiBvZGVyIERlaW5lClBvc3QgbGVzZW4uIFdlbm4gZGllcyBEZWluZSBBYnNpY2h0IGlzdCwgdGlwcGUgJ3Bvc3QnLgpJbSBXZXN0ZW4ga2FubnN0IGR1IGRpZSBQb3N0IHZlcmxhc3Nlbi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHdlc3Rlbi4KRWluIFBha2V0c2NoYWx0ZXIuCkVpbmUgU2NocmVpYmthYmluZS4gKDIpCj4gUGFkcmVpYyBydWZ0OiBKQUFBQUFBQUFBQUFBQUEhISEhISEhISEhISEhISEgOikKW1RydmVzOlJpbmdvcl0gbW9pbiBDaGVmY2hlbgoKaWNoIHd1c3N0IGltbWVyLCBkYXNzIGljaCBuaWNodCBudXIgdmVya2FubnQgd2VyZGUgOikKClphcm5peWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldHRlIEZyZXVuZGUgKE1vcmdvdGgsIDEzLiBOb3YgMTk5OCwgMTI6MDI6NDcpOgpFaW5lIGFsdGUgT21tYSBydWZ0OiBUYWFhYWFhYWFhYW1lbGkKW1RvZDpMYXJzXSBTY2h3ZXJlIFN0ZWluYnJvY2tlbiBoYWJlbiBnZXJhZGUgVGFtZWxpIHVtZ2VicmFjaHQuCltUb2Q6U2Nod2VyZSBTdGVpbmJyb2NrZW4gYnJpbmdlbiBkZW4gVW52b3JzaWNodGlnZW4gZGVuIFRvZCAhXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWlzdCwgaWNoIGhhc3NlIGlobiBqYSBtYW5jaG1hbC4uLi4gKFplciwgMTMuIE5vdiAxOTk4LCAxMjowODozOCk6CnZlcnNldHplIGFsbGVzIGF1cyBwYWtldApFaW5lIERpZW5lcnJvYmU6IEljaCBiaW4gYWJzb2x1dCBwbGVpdGUuIFR1dCBtaXIgYXVmcmljaHRpZyBsZWlkLgpBYmVyIGljaCBuZWhtIGRhcyB0cm90emRlbS4uLi5EYW5rZSEKRGVyIEhhZW5kbGVyIGZpbmRldCBHZWZhbGxlbiBhbiBkZXIgRGllbmVycm9iZSB1bmQgbGVndCBzaWUgenUgCnNlaW5lbiBQcml2YXRzYWNoZW4uIEVyIHphaGx0IERpciAwIGRhZnVlci4KRGVyIEhhZW5kbGVyIHphaGx0IERpciAwIEdvbGRzdHVlY2tlLgpFaW4gUGFhciBBZGFtYW50c2NodWhlOiBJY2ggYmluIGFic29sdXQgcGxlaXRlLiBUdXQgbWlyIGF1ZnJpY2h0aWcgbGVpZC4KQWJlciBpY2ggbmVobSBkYXMgdHJvdHpkZW0uLi4uRGFua2UhCkRlciBIYWVuZGxlciBmaW5kZXQgR2VmYWxsZW4gYW4gZGVtIFBhYXIgQWRhbWFudHNjaHVoZSB1bmQgbGVndCBlcyB6dSAKc2VpbmVuIFByaXZhdHNhY2hlbi4gRXIgemFobHQgRGlyIDAgZGFmdWVyLgpEZXIgSGFlbmRsZXIgemFobHQgRGlyIDAgR29sZHN0dWVja2UuCgpaZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXVzYmlsZHVuZyB2b20gU3BpZWxmZWxkcmFuZCA/PyAoUWl0ZXNzLCAxMy4gTm92IDE5OTgsIDEyOjE1OjIwKToKfiMhIHJuPVRpbGx5IHJ0PTkxMDg5Mzc4NCByZz1zY2htYXJybgp+IyEgdGlkPTkxMDg5MDE4NgpnYW56IG1laW4gcmVkZW4uIHZvciBsYXV0ZXIgemVpY2hlbiBrYW5uIG1hbiBkZW4gdGV4dCBnYXIgbmljaHQgbWVociBmaW5kZW4uLi4KClFJKioqKioqKioqKioqKmxhY2hlbi8tLS1ncnVtbWVsID8qKioqKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFSR0wgKE1vcmdvdGgsIDEzLiBOb3YgMTk5OCwgMTQ6NDE6MTApOgpEdSB0ZWlsc3QgQWxpbmUgbWl0OiBoYXN0IGR1IHdhcyBnZXJhdWNodD8/PyB3YXMgbGFiZXJzdCBkdSBkYSBmdWVybiBzY2hlaXNzPwpBbGluZSB0ZWlsdCBEaXIgbWl0OiB3aWVzbz8gRXNzZW4gaXN0IGRvY2gga2VpbiBTY2hlKiogPwpEdSB0ZWlsc3QgQWxpbmUgbWl0OiBuYWphLi4uYWxzbyBkdSBoYXR0ZXN0IGF1Y2ggc2Nob25tYWwgYmVzc2VyZSB0aGVtZW4KQWxpbmUgdGVpbHQgRGlyIG1pdDogRXNzZW4gdW5kIFNleCBpc3QgZmFzdCBkYXMgc2VsYmUgOykKRHUgdGVpbHN0IEFsaW5lIG1pdDogaXMga2xhci4uLgpBbGluZSB0ZWlsdCBEaXIgbWl0OiBiZWlkZXMgbWFjaHQgU3Bhc3MgdW5kIGRpY2sgd2VubiBtYW4gbmljaHQgYXVmcGFzc3QgOykKWzE1OjM5XQoKTSogYXJnbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE9ueXgsIDEzLiBOb3YgMTk5OCwgMTU6Mjc6MTkpOgpEZWluZSBGcmV1bmRpbiBRaXRlc3MgdGVpbHQgRGlyIG1pdDogaGlsZmUsIGthbm4gbWljaCBtYWwgZWluZXIgaGllciBhdXMgbQpEZWluZSBGcmV1bmRpbiBRaXRlc3MgdGVpbHQgRGlyIG1pdDogc2NoYWNodCByYXVzaG9sZW4gPyA7KQpbVG9kOkxhcnNdIEVpbiBGdWVyY2h0ZXItTGljaCBoYXQgZ2VyYWRlIFFpdGVzcyB1bWdlYnJhY2h0LgpbVG9kOkVpbiBGdWVyY2h0ZXItTGljaF0gU2NoaWNodCBpbSBTY2hhY2h0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoUWl0ZXNzLCAxMy4gTm92IDE5OTgsIDE1OjQ0OjMxKToKfiMhIHJuPU9ueXggcnQ9OTEwOTcwODM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEwOTcwODM5CndhcyBpY2ggbm9jaCBzYWdlbiB3b2xsdGU6IGljaCBiaW4gbmljaHQgbWl0IE9ueXggYmVmcmV1bmRldC4KClFJKioKCiAgICAgaG9lY2hzdGVucyBtaXQgbmVtIGFuZGVyZW4gRHJlc2RlbmVyIGJlZnJldW5kZXQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdlcnVlY2h0ZWt1ZWNoZS4uLi4/Pz8/IChCcmFuZGlyLCAxMy4gTm92IDE5OTgsIDE4OjAwOjQ2KToKfiMhIHJuPU1vcmdvdGggcnQ9OTEwOTEzOTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEwOTEzOTk0ClRqYSwgZXMgZ2lidCBlYmVuIGRvY2ggZWluZW4gRnJ1ZWhsaW5nIGltIE1HIDstKQoKKnNjaGllbCB3YXMgZHVua2xlcyB1bmQgd2FzIGZsYXVzY2hpZy1mdXNzbGlnZXMgYW4qCgoKZGVua3QgZXVjaCBkb2NoIHdhcyBpaHIgd29sbHQsIGFiZXIgbW9lZ2xpY2hzdCB2aWVsIDstKQoKQnJhbmRpciAtIG5vY2ggMjIgU3R1bmRlbiB3YXJ0ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWndlcmdlbndpdHplIChHcmltbWJvcm4sIDEzLiBOb3YgMTk5OCwgMTg6MDU6MTMpOgp+IyEgb249UWl0ZXNzIG90PTkxMDk1OTgwNyBvZz13aXR6ZQp+IyEgcm49S29vbWkgcnQ9OTEwOTQzNDUwIHJnPXdpdHplCn4jISB0aWQ9OTEwOTQzNDUwCktvb21pLCBEZWluIEFydGlrZWwgaXN0IGxlaWNodCB6dSBsZXNlbiwgZGEgZXMgdm9lbGxpZyB1ZWJlcmZsdWVzc2lnIGlzdAonZXMtemV0cycgdW5kIFVtbGF1dGUgenUgc2NocmVpYmVuLgpIZXJ6bGljaGVuIEdsdWVja3d1bnNjaC4KUUkqKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFyYmVpdGVuIGltIFJaIChHcmltbWJvcm4sIDEzLiBOb3YgMTk5OCwgMTg6MDU6MjIpOgp+IyEgb249Q2F1bm8gb3Q9OTEwOTcwMzI1IG9nPXdpdHplCn4jISBybj1aYXJuaXlhIHJ0PTkxMDg5Mjg1NiByZz13aXR6ZQp+IyEgdGlkPTkxMDg5Mjg1NgpVbmQgd2llIGhhc3QgZHUgZGljaCBnZWRydWVja3Q/CgpDLiBObwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBcmJlaXRlbiBpbSBSWiAoR3JpbW1ib3JuLCAxMy4gTm92IDE5OTgsIDE4OjA1OjUwKToKfiMhIG9uPVByYSBvdD05MTA5NzAzODQgb2c9d2l0emUKfiMhIHJuPUNhdW5vIHJ0PTkxMDk3MDMyNSByZz13aXR6ZQp+IyEgdGlkPTkxMDg5Mjg1NgpFciBoYXQgYmVzdGltbXQgZGllIEZvdG9zIGdlbWFjaHQuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFp3ZXJnZW53aXR6ZSAoS29vbWksIDEzLiBOb3YgMTk5OCwgMjE6NDI6NDUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTkxMDk4MDMxMyByZz1zY2htYXJybgp+IyEgdGlkPTkxMDk0MzQ1MApEZW4gVGV4dCBoYWIgaWNoIHZvbiBlaW5lciBSUEctTUwsIGlzdCBhbHNvIG5pY2h0IGF1ZiBtZWluZW4gTWlzdCBnZXdhY2hzZW4uIAoKTmViZW5iZWkgZ2VzYWd0LCBpc3QgZGVpbmUgUmVha3Rpb24gZGFyYXVmIGF1Y2ggc2Nob2VuIHp1IGxlc2VuLCBhYmVyIGF1Y2gKbGVpZGVyIHNlaHIgdWViZXJmbHVlc3NpZy4gT2gsIGF1c3NlcmRlbSBoYWIgaWNoIHdpcmtsaWNoIGdlc2FndCwgbGFuZ3NhbQprZWluZSBMdXN0IG1laHIsIG1pY2ggZnVlciBqZWRlbiBBcnRpa2VsIHJlY2h0ZmVydGlnZW4genUgbXVlc3Nlbi4KCldlbmlnc3RlbnMgd2Vpc3MgaWNoIGpldHp0LCB3ZXIgaGludGVyIFFpdGVzcyBhbmdlYmxpY2ggc3RlaHQuCgogICAgSGFsYmVsZiBLb29taS4KICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBad2VyZ2Vud2l0emUgKFJpbmdvciwgMTMuIE5vdiAxOTk4LCAyMjozMTozNyk6Cn4jISBybj1Lb29taSBydD05MTA5OTMzNjUgcmc9c2NobWFycm4KfiMhIHRpZD05MTA5NDM0NTAKVmllbGxlaWNodCBoYWV0dGUgUWl0ZXNzIHNpY2ggZWluZmFjaGVyIGF1c2RydWVja2VuIG11ZXNzZW4sIGRhbWl0IGF1Y2ggZWluCkhhbGJlbGYgc2llIHZlcnN0ZWh0IC4uLgoKRXMgZ2VodCBuaWNodCBkYXJ1bSwgZGFzcyBpcmdlbmRqZW1hbmQgZGVuIEFydGlrZWwgYW4gc2ljaCBuaWNodCBndXQgZmluZGV0LApzb25kZXJuIGRhc3MgZXIgZHVyY2ggZGllIFVtbGF1dGUgc2NobGljaHQgdW5kIGVyZ3JlaWZlbmQgdG90YWwgc2NoZWlzc2UgenUKbGVzZW4gaXN0LiAKCldlaXRlcmxlaXRlbiB2b24gbmV0dGVuIEFydGlrZWxuIGluIGRpZSBNUEEgaXN0IG5ldHQgZ2VtZWludCAtIGFiZXIgZWlubWFsCmR1cmNoIGVpbiBlbnRzcHJlY2hlbmRlcyBUb29sIGphZ2VuLCB1bSBVbWxhdXRlIGluIGVpbmUgbGVzYmFyZSBGb3JtIHp1CndhbmRlbG4sIHNvbGx0ZSBzY2hvbiBub2NoIGRyaW4gc2Vpbi4KClJpbmdvci4gSGFldHRlIG5pY2h0IGdlZGFjaHQsIGRhc3MgZXIgamVtYWxzIFFpdGVzcyB2ZXJ0ZWlkaWdlbiB3dWVyZGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMVyAoTWFoYXRtdSwgMTQuIE5vdiAxOTk4LCAxMjowNjoyNCk6Cn4jISBybj1RaXRlc3MgcnQ9OTEwOTcxODcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEwOTcwODM5Ck1pdCBNYWhhdG1hPyBEYXMgaXN0IGphIGludGVyZXNzYW50IC4uLiBNYWhhdG1hIGdlaHQgZnJlbWQgLi4uCgpHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogWndlcmdlbndpdHplIChUZWRkeSwgMTQuIE5vdiAxOTk4LCAxMjowODoxMyk6Cn4jISBybj1SaW5nb3IgcnQ9OTEwOTk2Mjk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEwOTQzNDUwCkRhIGl3ciBlaCBzY2hvbiBpbiBzY2htYXJybiBzaW5kOiBSaW5nb3IgaWNoIGJpbiBzY2hvY2tpZXJ0IDstKQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgaW4gcnVicmlrIHNjaG1hcnJuIChTaXJvbmEsIDE1LiBOb3YgMTk5OCwgMTA6MzY6NTYpOgprd2VyIGdpbGRlIGthZW1wZmVyCgogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gU29uLCAxNS4gTm92IDE5OTgsIDExOjM1OjQ2ICgyIFRlaWxuZWhtZXIpCgpDb25uZXIuLi4uLi4uLi4uLnMgKlNpcm9uYS4uLi4uLi4uLi5TCgp3YXMgaXMgbG9zIG1pdCBldWNoID8gc29ubnRhZyBmcnVlaCB3aXJkIGdlbWV0emVsdCBuaWNodCBnZXBlbm50IS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTGV2LCAxNS4gTm92IDE5OTgsIDEzOjI4OjI5KToKCltBYmVudGV1ZXI6U2FicmluYV0gb2plIHdhcyB0dXQgbWFuIGdlZ2VuIHRyZWlic2FuZCBhdWYgdGl0dXd1PyA8MTQ6MjY6NDQ+CltBYmVudGV1ZXI6SGFtYnRpXSBlbmRlICEhISEhIGRhIGtvbW1zdCBkdSBuaWNoIHJhdXMuLiA8MTQ6Mjc6MDM+CltBYmVudGV1ZXI6U3JhYmldIHdvcmF1cyBIYW1idGkgPDE0OjI3OjA5PgpbQWJlbnRldWVyOkhhbWJ0aV0gYXVzc2VyIGR1IHdpbGxzdCB6dSBsYXJzIDwxNDoyNzoxMz4KW1RvZDpMYXJzXSBUcmVpYnNhbmQgaGF0IGdlcmFkZSBTYWJyaW5hIHVtZ2VicmFjaHQuIDwxNDoyNzoxMT4KCkxldi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipncmlucyogKExldiwgMTUuIE5vdiAxOTk4LCAxNToyODowMik6CgpNb3Jnb3RoICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkVzIHNjaGVpbnQga2VpbiBmcmV1ZGlnZXIgQW5sYXNzIHp1IHNlaW4sIGRlciBoaWVyIGdlZmVpZXJ0IHdpcmQuCgoKdW5nZXNjaG5pdHRlbi4uLi4KCmxldi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKmdyaW5zKiAoTW9yZ290aCwgMTUuIE5vdiAxOTk4LCAxNToyOToyOCk6Cn4jISBybj1MZXYgcnQ9OTExMTQzNjgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTExMTQzNjgyCmVuZGxpY2ggZXJrZW5udCBtYW4gd2llZGVyIG1laW4gd2FocmVzIGljaCA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprb21pc2NoIChNb3Jnb3RoLCAxNi4gTm92IDE5OTgsIDA5OjM4OjE3KToKWmVwaHlyICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRlaW5lIEZyZXVuZGluIFplcGh5ciBrbnVkZGVsdCBEaWNoIHZvbGxlIEthbm5lIGF1cyBkZXIgRmVybmUuIFsxMDozN10KRGVpbmUgRnJldW5kaW4gWmVwaHlyIHRlaWx0IERpciBtaXQ6IGh1aHV1dSA6KQpaZXBoeXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpEYXMgd2FybiBrdXJ6ZXIgQmVzdWNoLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBad2VyZ2Vud2l0emUgKFFpdGVzcywgMTYuIE5vdiAxOTk4LCAxMTo0MToyNik6Cn4jISBybj1Lb29taSBydD05MTA5OTMzNjUgcmc9c2NobWFycm4KfiMhIHRpZD05MTA5NDM0NTAKZGVyIHRleHRpbmhhbHQgaXN0IGtsYXNzZS4gZXMgbmVydnQgbWljaCBudXIgaW1tZXIgZGllIHVtbGF1dGUgZGFyZWluenVkZW5rZW4uCm1hbmNobWFsIGlzdCBlcyBuYWVtbGljaCBnYXIgbmljaHQgenUgZXJrZW5uZW4sIHdhcyByZWlua29tbXQuCgpieSB0aGUgd2F5IC0gd2VyIHN0ZWh0IGRlbm4gaGludGVyIG1pcj8KClFJKiogREFTIE9SSUdJTkFMCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBad2VyZ2Vud2l0emUgKFFpdGVzcywgMTYuIE5vdiAxOTk4LCAxMTo0NDoyMSk6Cn4jISBybj1RaXRlc3MgcnQ9OTExMjE2NDg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEwOTQzNDUwCmFjaCBhZWgsIGRlciBhcnRpa2VsIGlzdCBuaWNodCBrbGFzc2UgLSBpY2ggbXVzcyBtaWNoIGJlcmljaHRpZ2VuLgplciBpc3QgbnVyICdnYW56IG9rYXknCgpRSSoqIC0gc2NoZ3JlaWJ3dWV0aWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLZWluIFd1bmRlci4uLiAoTm92YXN0b3JtLCAxNi4gTm92IDE5OTgsIDEzOjIzOjU0KToKQm9pbmcgZnJhZ3QgS2xvaXJlbiBFaXNlbmhlbG0gbmFjaCBTb2xkLgpLbG9pcmVuIEVpc2VuaGVsbSBzYWd0OgonV2llIGljaCBpbiBtZWluZW4gVW50ZXJsYWdlbiBzZWhlLCBiZWtvbW1zdCBEdSAxMzUgTXVlbnplbiBhbiBTb2xkLCBhdWNoIHdlbm4KIER1IGVzIG5pY2h0IHZlcmRpZW50IGhhc3QhIERpZSBMb2hua29zdGVuIHdlcmRlbiBkYXMgU3RydXYgbm9jaCBiYW5rcm90dAogbWFjaGVuIScKS2xvaXJlbiBFaXNlbmhlbG0gZ2lidCBCb2luZyAxMzUgTXVlbnplbi4KCkFsc28gZGFzIGJlaSBkaWVzZW0gJ0dlaGFsdCcgdWViZXJoYXVwdCBub2NoIHdhcyBnZXRhbiB3aXJkLi4uLgogICAgICBOb3ZhLCBrb3Bmc2NodWV0dGVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZlaWdsaW5nIChNb3Jnb3RoLCAxNi4gTm92IDE5OTgsIDEzOjQwOjQ3KToKRGVpbmUgRnJldW5kaW4gTmVzYWphIHRlaWx0IERpciBtaXQ6IEtFWSAuLi4uIE5vdmEgYmVkcm9odCBtaWNoIC4uLi4uCkRlaW4gRnJldW5kIEtleSB0ZWlsdCBEaXIgbWl0OiBXQVM/CkRlaW4gRnJldW5kIEtleSB0ZWlsdCBEaXIgbWl0OiBOT19WQT8KS2V5ICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbXVyYWRocyB0dXJtIChOYWNodHdpbmQsIDE3LiBOb3YgMTk5OCwgMDE6NDM6NDApOgpuIGVpbmVtIFJ1bmRnYW5nIGltIHdlaXNzZW4gVHVybS4KRXMgZ2lidCBmdWVuZiBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvYmVuLCB1bnRlbiwgc3VlZHdlc3Rlbiwgbm9yZG9zdGVuIHVuZApzdWVkb3N0ZW4uCltNZXR6ZWx0ZWFtOkdlZmx1ZWdlbF0gS2l0emVsaGV4ZSBaZXBoeXIgKEthbXBmaHVobiwgdm9yc2ludGZsdXRsaWNoKS4KPiBaZXBoeXIgb2VmZm5ldCBkaWUgSG9senR1ZXIgdW5kIHZlcnNjaHdpbmRldCBpbSBSYXVtIGRhaGludGVyLgpaZXBoeXIgc2NobGllc3N0IGRpZSBUdWVyIGhpbnRlciBzaWNoLgpaZXBoeXIgaGFzdGV0IHBsb2V0emxpY2ggZHVyY2ggZGllIFR1ZXIgaW0gTm9yZG9zdGVuIGluIGRlbiBHYW5nIGhpbmVpbiwKVW52ZXJzdGFlbmRsaWNoZXMgaW4gaWhyZW4gQmFydCBtdXJtZWxuZC4KCkR1IGJyaWNoc3Qgdm9yIExhY2hlbiB6dXNhbW1lbi4KClplcGh5ciBoYXQgbmVuIEJhcnQ/IEludGVyZXNzYW50IDopCgpOYWNodHdpbmQKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFplciwgMTcuIE5vdiAxOTk4LCAwNzozODoxNik6CkdvckRvbiB0ZWlsdCBEaXIgbWl0OiBtb2luIFswODozN10KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgR29yZG9uIHVtZ2VicmFjaHQuCltUb2Q6TGFyc10gPDA4OjM3OjMwPgoKTmljaHQgcmVkZW4sIGhhbmRlbG4gOy0pKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbXVzcyBEQVMgc2Vpbj8/PyAoWmVyLCAxNy4gTm92IDE5OTgsIDA4OjI1OjIzKToKTGV0enRlIDYwIG1pbjogIyMjIyMjIyMgKDguNCUpCkxldHp0ZSAxNSBtaW46ICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyAoMjQuMiUpCkxldHp0ZSBNaW51dGU6CiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIyMjIAooODIuMSUpCj4+IERpZXNlIE1lc3N1bmcgd3VyZGUgZ2VzcG9uc29ydCB2b246IExhZy1PLUluZHVzdHJpZXMgPDwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIG1hY2h0cyBTcGFzcyAhISAoTW9yZ290aCwgMTcuIE5vdiAxOTk4LCAxMzowNTo1OCk6ClVlYmVyZ2VoZSBBcnRpa2VsIDI5IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDMwIHZvbiBFbWJlIGluIFJ1YnJpayBhbGxnZW1laW5lcy4KVWViZXJnZWhlIEFydGlrZWwgMzEgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMzIgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMzMgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMzQgdm9uIEVtYmUgaW4gUnVicmlrIGFsbGdlbWVpbmVzLgpVZWJlcmdlaGUgQXJ0aWtlbCAzNSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAzNiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAzNyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpbRGVidWc6TVBBXSBIaWVyIHN0ZWh0IG5pY2h0IG1laHIgZHJpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBzdGFtbXRpc2NoIGluIEIgKEdyaW1tYm9ybiwgMTcuIE5vdiAxOTk4LCAxMzo0MDoyMSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTExMzEwMDE1IG9nPXRyZWZmZW4KfiMhIHJuPUtleSBydD05MTEzMDk5MjAgcmc9dHJlZmZlbgp+IyEgdGlkPTkxMDExOTU5NwpIbW0/IERhIHJlaWNodCBlcyBkb2NoIHNjaG9uLCBlaW4gS2FuaW5jaGVuIGFuenVzY2hhZmZlbiwgdW5kIGRpZQpEdXJjaHNjaG5pdHRzaW50ZWxsaWdlbnogc2lnbmlmaWthbnQgenUgc3RlaWdlcm4uLi4KCldvIGxpZWd0IGVpZ2VudGxpY2ggTWFyYnVyZz8gSXN0IGRhcyBCYXllcm4gb2RlciBTYWNoc2VuPyA7LSkKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IHN0YW1tdGlzY2ggaW4gQiAoQXRveiwgMTcuIE5vdiAxOTk4LCAxMzo0Mjo0Myk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTExMzEwMDIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEwMTE5NTk3ClJlaW4gSW50ZWxsaWdlbnptYWVzc2lnIGdlaG9lcnQgTWFyYnVyZyB6dSBPZXN0ZXJyZWljaCwgR3JpbW1ib3JuLgoKVW5kIEtleSBpY2ggZ2xhdWJlIHdpciBtdWVzc2VuIHVucyBtYWwgd2llZGVyIHVlYmVyIERlaW5lIG5pY2h0IHZvcmhhbmRlbmUKTWl0c3ByYWNoZWVybGF1Ym5pcyB1bnRlcmhhbHRlbiwgS2xlaW5lci4gS2F1bSBpc3QgRGVpbmUgRnJhdSBuZXR0IGRhIHdpcnN0ZQp3aWVkZXIgZnJlY2ggdHp0enR6CgpBdG96IC0gdWViZXJuaW1tdCBhdWNoIGdlcm5lIGRpZSBFcnppZWh1bmcgd2VubiBOZXNhamEgbmV0dCBkYSBpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsbGVzIEd1dGUgdW5kLi4uIChOb3Zhc3Rvcm0sIDE3LiBOb3YgMTk5OCwgMTQ6NDI6MjEpOgpNb3Jnb3RoIGtvbW10IGdhbnogcGxvZXR6bGljaCBhdXMgZWluZW0gc2Nod2FyemVuIExvY2guClRldmlsZG8gc2NobGVpY2h0IGhlcmVpbi4KRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogc3RhbW10aXNjaCBpbiBCIChXb29keSwgMTcuIE5vdiAxOTk4LCAxNToyMDoxNSk6Cn4jISBybj1BdG96IHJ0PTkxMTMxMDE2MyByZz1zY2htYXJybgp+IyEgdGlkPTkxMDExOTU5NwpCZWhhbHRldCBldXJlIEludC1Ib2NoYnVyZ2VuIHJ1aGlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogMzEgKFRlZGR5LCAxNy4gTm92IDE5OTgsIDE2OjA2OjMyKToKfiMhIHJuPVNoYXJpYSBydD05MTEzMTg3NTUgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MTAyNzI2NjkKV292b24gZ2Vob2VydCwgU2hhcmlhPyBleHRyYWxvb2sgdW5kIC1uIG9kZXIgdm9uIGRlbiBTZWhlcm4/IDspCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogMzEgKFRlZGR5LCAxNy4gTm92IDE5OTgsIDE2OjIxOjIwKToKfiMhIG9uPVRlZGR5IG90PTkxMTMxOTY2NiBvZz1hbGxnZW1laW5lcwp+IyEgcm49RGllZGVyIHJ0PTkxMTMxOTY0MiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTkxMDI3MjY2OQpBdSBqYSwgd2VsY2hlciBFTSBnZWh0IGRhbm4gZGllc21hbD8gOykKClRlZGR5LCBSb2xsZW4gdmVydGVpbGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdXJnaHMgKEFsYm9pbiwgMTcuIE5vdiAxOTk4LCAxOToyMTozOSk6ClJhbnRhbnBsYW4gdGVpbHQgRGlyIG1pdDogTWVpbmUgVGFzdGF0dXIgaGF0IGF1c3NldHplciBpY2ggbXVzcyBkaWUgbWFsIHdpZWRlcgpSYW50YW5wbGFuIHRlaWx0IERpciBtaXQ6IHJlaW5pZ2VuCgpEdSB0ZWlsc3QgUmFudGFucGxhbiBtaXQ6IG5pbW1zZSBhdXNlaW5hbmRlciB1bmQgc2NobWVpc3MgZXMgaW5zIHBhbG1vbGl2ZWJhZApEdSB0ZWlsc3QgUmFudGFucGxhbiBtaXQ6IGljaCBuZWhtZSB6d2FyIGZpdCwgYWJlciBkYXMga2VubnN0ZSBhbHMgd2Vzc2kgbmljaHQKRHUgdGVpbHN0IFJhbnRhbnBsYW4gbWl0OiBvZGVyPzopCgo+IFJhbnRhbnBsYW4gdGVpbHQgRGlyIG1pdDogV2FzIGZ1ZXIgRkVsY2tlbiBzY2hhZmZ0IFBhbG1vbG92ZSBkZW5uIHNvLi4uOy0pID8KRHUgdGVpbHN0IFJhbnRhbnBsYW4gbWl0OiBsYWNoKiEhISEhCgpBbGJvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBtdXJhZGhzIHR1cm0gKEFyaywgMTcuIE5vdiAxOTk4LCAyMDozMjo0Myk6Cn4jISBybj1OYWNodHdpbmQgcnQ9OTExMjY3MDIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTExMjY3MDIwCkhtLCBlaWdlbnRsaWNoIGhhYiBpY2ggZ2Vob2ZmdCwgZGFzcyBkYSBtYWwgbmUgRGFtZSBkZXMgS2xlcnVzIGVudGxhbmdsYWV1ZnQKdW5kIGlocmVuIGFuZ2VibGljaCBuaWNodCB2b3JoYW5kZW5lbiBCYXJ0IGVudGRlY2t0IDteKQpEYXNzIFplcGh5ciAnbmVuIEJhcnQgaGF0LCBpc3QgbWlyIGFsbGVyZGluZ3MgYXVjaCBuZXUsIGRlciBtdXNzIGphIHRpZXJpc2NoCnNjaG5lbGwgZ2VzcHJpZXNzdCBzZWluIC4uLgoKTm9jaCBnYW56IGVudHNldHp0IC4uLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBtdXJhZGhzIHR1cm0gKFBhbXBlcnMsIDE4LiBOb3YgMTk5OCwgMTA6NDQ6MTYpOgp+IyEgcm49TmFjaHR3aW5kIHJ0PTkxMTI2NzAyMCByZz1zY2htYXJybgp+IyEgdGlkPTkxMTI2NzAyMApaZXBoeXIgaXN0IGFsc28gWndlcmdpbi4uLi4KClBhbXBlcnMuIEhhdCBlcyBzY2hvbiBpbW1lciBnZXd1c3N0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXIgTWFubiwgZGVyIHNjaG5lbGxlciBzdGlyYnQgYWxzIHNlaW4gU2NoYXR0ZW4uLi4gKEFuYXRvbCwgMTguIE5vdiAxOTk4LCAxMzo0MzowOCk6CltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIEJyYW5kaXIgdW1nZWJyYWNodC4KQnJhbmRpciAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKVXBzLgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGVyIE1hbm4sIGRlciBzY2huZWxsZXIgc3RpcmJ0IGFscyBzZWluIFNjaGF0dGVuLi4uIChCcmFuZGlyLCAxOC4gTm92IDE5OTgsIDE2OjIzOjA5KToKfiMhIHJuPUFuYXRvbCBydD05MTEzOTY1ODggcmc9c2NobWFycm4KfiMhIHRpZD05MTEzOTY1ODgKRGllc2VuIFRvZCB3aWRtZSBpY2ggbWVpbmVuIGR1bW1lbiBBbGlzIHVuZCBNb3Jnb3RoLi4uCgpCcmFuZGlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bnd1ZXJkaWc/IChSZWFwZXIsIDE4LiBOb3YgMTk5OCwgMTc6MDI6MjQpOgo+IHNjaGFldHogc2tlbGV0dAoKRGFzIFNrZWxldHQgaXN0IGtlaW4gd3VlcmRpZ2VyIEdlZ25lciBmdWVyIERpY2guCkRpZSBSdWVzdHVuZyBkZXMgU2tlbGV0dHMgaXN0IHVuZ2xhdWJsaWNoIHZpZWwgYmVzc2VyIGFscyBEZWluZS4KRGllIFdhZmZlIGRlcyBTa2VsZXR0cyBpc3QgRGVpbmVyIGhhdXNob2NoIHVlYmVybGVnZW4uCkRhcyBTa2VsZXR0IGlzdCBldHdhIDE0MWNtIGdyb3NzLgoKZGFubiBkb2NoIGxpZWJlciBuZW4gd3VlcmRpZ2VuIEdlZ25lciBzdWNoZW4gPz8KCkRpZSB1ZWJlcmxlZ2VuZSBXdXJzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmEsIGphIGphIGRpZSBOUENzITspIChNaW5kYmxhZGUsIDE4LiBOb3YgMTk5OCwgMjE6MDQ6NDQpOgpEZXIgV2FuZGxlciB2ZXJzY2h3aW5kZXQgdXJwbG9ldHpsaWNoLgpFaW4gd2FiZXJuZGVzIEdlYmlsZGUgZXJzY2hlaW50IHVycGxvZXR6bGljaCB2b3IgRGlyLgpbWmF1YmVyZXI6Q2lzb3VdIHdpZSBrYW5uIGRlbm4gZGFzIGFuZ2VoZW4sIHdlbm4gbWFuIDIxMCBtcHMgdmVyemF1YmVydCwgMzAgeApbWmF1YmVyZXI6Q2lzb3VdIGRlciBzcHJ1Y2ggYmVpIHdlcnRlIG1pc3NnbHVlY2t0IHVuZCBtYW4gZ2FyIG54IGF1cyBzZWluZW4KW1phdWJlcmVyOkNpc291XSBmZWhsZXJuIGxlcm50PwpbWmF1YmVyZXI6Qmx1ZW1lbF0gSG0sIFBlY2ggb2RlciB1bmZhZWhpZ2tlaXQgOikKVG9tIHNhZ3Q6IE1vbWVudCBlaW4gV2FuZGxlciEgRXJzdCBGdWVzc2UgYWJwdXR6ZW4hIFNvbnN0IG1vdHp0IFByaW11bGEgcnVtLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1ZXMgYXVzIGRlciBHZXJ1ZWNodGVrdWVjaGUgKEF6enVybywgMTguIE5vdiAxOTk4LCAyMToxMzowNik6CklociBMaXZlLVJlcG9ydGVyIG9obmUgU2NoYW0gdW5kIFJlc3Bla3Qgdm9yIGRlciBJbnRpbXNwaGFlcmUgaXN0IHdpZWRlcgp1bnRlcndlZ3M6CgpTaXRoYWx5biBzYWd0OiB0ZWlsZSByaWt1cyBtaXQgZHVzY2hlbiBldGMuClNpdGhhbHluIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBTaXRoYWx5bi4KUmlrdXMgaXN0IGVyc3RhdW50LgpTaXRoYWx5biBzY2hsZWljaHQgaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4uCgoyIG1pbiBzcGFldGVyOgoKUmlrdXMgc2FndDogb2ssIG11c3MgbWFsIGxvcywgZHVzY2hlbiBldGMgOikKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEphLCBqYSBqYSBkaWUgTlBDcyE7KSAoUGF0cnluLCAxOC4gTm92IDE5OTgsIDIyOjA2OjAyKToKfiMhIHJuPU1pbmRibGFkZSBydD05MTE0MjMwODQgcmc9c2NobWFycm4KfiMhIHRpZD05MTE0MjMwODQKaWNoIGhhYiBkYXMgZ2VmdWVobCwgZGVyIHdhbmRsZXIgd2lyZCBub2NoIGZ1ZXIgdmllbGUgbHVzdGlnZSBhcnRpa2VsCnNvcmdlbi4uLndvIGRlciBzaWNoIHVlYmVyYWxsIHNvIHJ1bXRyZWlidCA6KQpkYXMgYmVzdGUgd2FyIGphIGJpc2hlciBkYXMgYW0gd2VpaGVyICpncmlucyoKCi0tLS0tLQpwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGVyIE1hbm4sIGRlciBzY2huZWxsZXIgc3RpcmJ0IGFscyBzZWluIFNjaGF0dGVuLi4uIChNb3Jnb3RoLCAxOC4gTm92IDE5OTgsIDIyOjMyOjQ5KToKfiMhIHJuPUJyYW5kaXIgcnQ9OTExNDA2MTg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTExMzk2NTg4CkRhbmtlLCBkaWVzZSBLZXJiZSBpbiBtaXIgd2lyZCBmdWVyIGltbWVyIGJsdXRlbiA7LSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEphLCBqYSBqYSBkaWUgTlBDcyE7KSAoWmVwaHlyLCAxOC4gTm92IDE5OTgsIDIyOjQ3OjIwKToKfiMhIHJuPVBhdHJ5biBydD05MTE0MjY3NjIgcmc9c2NobWFycm4KfiMhIHRpZD05MTE0MjMwODQKTmFqYS4uIG1pciBoYXQgZGllIFN0ZWxsZSBpbSB3ZWlzc2VuIFR1cm0gaXJnZW5kd2llIGF1Y2ggZ2VmYWxsZW46CgpFaW4gV2FuZGxlciBoYXN0ZXQgcGxvZXR6bGljaCBkdXJjaCBkaWUgVHVlciBpbSBOb3Jkb3N0ZW4gaW4gZGVuIEdhbmcgaGluZWluLApVbnZlcnN0YWVuZGxpY2hlcyBpbiBzZWluZW4gQmFydCBtdXJtZWxuZC4KCkltbWVyIG5vY2ggZ3JpbnNlbmQsIEM0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogc3RhbW10aXNjaCBpbiBCIChHcmFsa29yLCAxOS4gTm92IDE5OTgsIDA4OjU2OjAzKToKfiMhIHJuPUF0b3ogcnQ9OTExMzEwMTYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEwMTE5NTk3CmJlbGVpZGlnZSBkaWUgT2VzdGVycmVpY2hlciBuaWNodCAhCgpHLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKnNjaG1vbGwqIChQcnlkZSwgMTkuIE5vdiAxOTk4LCAxNDozNjo0Nik6CkFtYW5kYSBkaWUgSHVyZS4KRWluIGVpbmFybWlnZXIgQmFuZGl0LgpEaWUgVG9wLUxpc3RlLCBUb3AtU3BpZWxlcmxpc3RlIHVuZCBUb3AtU2VoZXJsaXN0ZS4KQW1hbmRhIHNhZ3Q6IEhhbGxvIEVpbiBmcm9zY2ghCkFtYW5kYSBzYWd0OiBXaWUgd2FlcnMgZGVubiBtaXQgdW5zLCBLbGVpbmVyPwoKSG1wZiwgaWNoIGJpbiBOSUNIVCBrbGVpbi4uLiB1bmQgZWluIHdlaWJsaWNoZXIgRnJvc2NoIQoKUHJ5ZGUsIHdlZGVyIHBydWVkZSBub2NoIHNvbnN0d2FzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKnNjaG1vbGwqIChBbGluZSwgMTkuIE5vdiAxOTk4LCAxNjowMzoxOCk6Cn4jISBybj1QcnlkZSBydD05MTE0ODYyMDYgcmc9c2NobWFycm4KfiMhIHRpZD05MTE0ODYyMDYKClR1dCBtaXIgamEgZnVyY2h0YmFyIHRyYXVyaWcgUHJ5ZGUuCkFiZXIgYWxzIEZyb3NjaCBiaXN0ZSBrbGVpbiB1bmQgbWFlbm5saWNoLgoKQWxpbmUgZGllIHNpY2ggaW1tZXIgZnJldXQgYWxzIEZyb3NjaCBpbiBkZXIga3dlciBtYWVubmxpY2ggTGlzdGUgenUgc3RlaGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICpzY2htb2xsKiAoV29vZHksIDE5LiBOb3YgMTk5OCwgMTY6MjI6MTcpOgp+IyEgcm49QWxpbmUgcnQ9OTExNDkxMzk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTExNDg2MjA2CklyZ2VuZGVpbmVuIFZvcnRlaWwgbXVzcyBGcm9zY2hzZWluIGphIGhhYmVuIDstKSkpKSkKCmZyZWNoLApXb29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICpzY2htb2xsKiAoUHJ5ZGUsIDE5LiBOb3YgMTk5OCwgMTY6MjQ6MTApOgp+IyEgcm49QWxpbmUgcnQ9OTExNDkxMzk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTExNDg2MjA2ClVuZCBzb3dhcyBpc3QgbnVuIEZyYXVlbmJlYXVmdHJhZ3RlIGRlcyBNRy4KClByeWRlLCB3ZWRlciBwcnVlZGUuLi4gZGFmdWVyIGVudHRhZXVzY2h0CgpOSUVERVIgTUlUIE1VRERFUk4uLiBFcyBsZWJlIGRpZSBFbWFuemlwYWxsYXN0cmlvbiBvZGVyIHNvIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogKnNjaG1vbGwqIChBbGluZSwgMTkuIE5vdiAxOTk4LCAxNjozODoyNSk6Cn4jISBybj1QcnlkZSBydD05MTE0OTI2NTAgcmc9c2NobWFycm4KfiMhIHRpZD05MTE0ODYyMDYKCk5hdHVlcmxpY2ggaGFiIGljaCBtaWNoIGRhcnVlYmVyIGJlc2Nod2VydCEKU2VsYnN0cmVkZW50ISEKQWJlciBhYiB1bmQgenUgbWFjaHQgZXMgYXVjaCBTcGFzcyBzaWNoIGF1ZiBkaWUgbWFlbm5saWNoZSBFYmVuZQpoZXJhYnp1YmVnZWJlbi4gOykKCkFsaW5lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGltIFNjaGFjaHQgKFRlZGR5LCAyMC4gTm92IDE5OTgsIDAwOjM5OjI1KToKVHV0c3p0IGJpbGRldCBlaW5lbiBncm9zc2VuIEJsdXRmbGVjay4KRWluIEJsdXRmbGVjayBmYWVsbHQgZGVuIFNjaGFjaHQgaGludW50ZXIuCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2huZSB3b3J0ZSAoSmFzb25yaWdpZCwgMjAuIE5vdiAxOTk4LCAxNDowMjozNCk6CltBbGxnZW1laW46UGFtcGVycyBqdWJlbHQgR2FzdDEgenUuXQpbQWxsZ2VtZWluOkdhc3QxXSBzbyBkb2ZmIGlzdCBtYW4gZG9jaCBuZXQKW0JlaWxlaWQ6RGFya3dpbmddIGJlaWxlaWQgOigKW1RvZDpMYXJzXSBEZXIgRmFsbCBhdXMgYWxsZW4gV29sa2VuIGhhdCBnZXJhZGUgR2FzdDIgdW1nZWJyYWNodC4KW0FsbGdlbWVpbjpKYXNvblJpZ2lkXSBhbHMgZ2FzdCwgbmEgaWNoIHdlaXNzIG5pY2h0IDspCgpWaWVsbGVpY2h0IGhhYiBpY2ggamEgZG9jaCByZWNodCA6KQoKSmFzb24gZ3JpbnN0IGltbWVyIG5vY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IDMxIChBbmF0b2wsIDIwLiBOb3YgMTk5OCwgMTg6NTM6NTEpOgp+IyEgb249QW5hdG9sIG90PTkxMTU4ODAyNSBvZz1hbGxnZW1laW5lcwp+IyEgcm49SmlkZHUgcnQ9OTExNTg3ODkyIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTEwMjcyNjY5CkFyZ2guIE9rLCBibGVpYiB3ZWl0ZXIgTExQLgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTUcgeml0dGVydCB2b3IgTlcuLi4gKEdub21lLCAyMC4gTm92IDE5OTgsIDE5OjA3OjM4KToKW1NlaGVyOk5hY2h0d2luZCB3aWxsIGRpZSBUdXJiby1WZXJzaW9uLiAyIG1pbyBpbiAyIHN0dW5kZW4gb2RlciBzby5dCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgphbHNvIERFUiBwYXNzdGUuLi4gOikKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgd2lsbCBpY2ggYXVjaCBrb2VubmVuLi4uIChOYWNodHdpbmQsIDIwLiBOb3YgMTk5OCwgMTk6MTM6MTApOgogRHUgc2NobGFlZ3N0IGRlbiBTaXZhayBEcmFrb25pZXIgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KRGVyIFNpdmFrIERyYWtvbmllciBnZWh0LgpEdSB2ZXJmb2xnc3QgamV0enQgZWluZW4gU2l2YWsgRHJha29uaWVyLgogIERlciBTaXZhayBEcmFrb25pZXIgZ3JlaWZ0IERpY2ggbWl0IGRlbSBkcmFrb25pc2NoZW4gWmFobmthbW0gYW4uCiAgRGVyIFNpdmFrIERyYWtvbmllciB2ZXJmZWhsdCBEaWNoLgpbS2FyYXRlOlppbm9dIGhpZXIgZ2lidHMgamEgbmljaHRtYWwgbmVuIGtpYWkKdmwKV2VuIG1vZWNodGVzdCBEdSB2ZXJsZXR6ZW4/Cj4gc2NoYXUKRHUgYmlzdCBudW4gaW4gZGVtIEtvbW1hbmRvcG9zdGVuIGRlciBEcmFrb25pZXIuIE5hY2hkZW0gZGVyIFNpdmFrIGJlc2VpdGlndAppc3QsIGthbm5zdCBEdSBEaWNoIGV0d2FzIHJ1aGlnZXIgdW1zZWhlbi4gSW0gTm9yZGVuIHNpZWhzdCBEdSBlaW5lCmdlc2NobG9zc2VuZSwgc2Nod2VyZSBFaWNoZW50dWVyIHVuZCBpbSBXZXN0ZW4gZWluZW4gRHVyY2hnYW5nIGluIGRhcyBuYWVjaHN0ZQpaaW1tZXIuIEltIFN1ZWRlbiBpc3QgZWluZSBnZW9lZmZuZXRlIE1ldGFsbHR1ZXIgYW5nZWJyYWNodCwgZGllIHVuZ2ViZXRlbmUKQmVzdWNoZXIgZmVybiBoYWVsdC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgd2VzdGVuLgpEZXIgU2NoYXR0ZW4gdm9uIE5hY2h0d2luZCBzdGVodCBtYWwgd2llZGVyIGR1bW0gcnVtLgoKTmFjaHR3aW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXV3ZWlhIDspIChJdm8sIDIxLiBOb3YgMTk5OCwgMDA6MDg6MjYpOgo+UnVicmlrIDE3OiBkaXNrdXNzaW9uLCBBcnRpa2VsOiAzOSB2b24gNDcKPlJlXjM6IFZlcmhhbHRlbiBlaW5lcyBNdWRnb3R0ZXMgKEhhdGUsIDIwLiBOb3YgMTk5OCwgMTM6MjY6MjgpOgo+W0JlenVnOiBBcnRpa2VsIDM1IHZvbiBaYXJuaXlhIHZvbSAyMC4gTm92IDE5OTgsIDEzOjA0OjU1XQoKPlZpZWxsZWljaHQgaXN0IGVzIERpciBqYSBub2NoIG5pY2h0IGF1ZmdlZmFsbGVuLCBZYW50cm86Cgo+RHUgaGFzdCBrZWluIFJlY2h0IGRhcmF1ZiB2b24gaXJnZW5kZW5kamVtYW5kZW0gZXJuc3QgZ2Vub21tZW4genUgd2VyZGVuLgo+VW5kIG5hY2ggZGVtIFZlcmhhbHRlbiwgYXVjaCB3ZW5uIG51ciBWZXJiYWwsIGRhc3MgRHUgaGllciBpbiBsZXR6dGVyIFplaXQKPnplaWdzdCB3dW5kZXJ0IGVzIHdvaGwga2VpbmVuLCBkYXNzIGRpY2ggYXVjaCBuaWVtYW5kIHNvIHJpY2h0aWcgd2Focm5laG1lbgo+bW9lY2h0ZS4KCm5uCj4gVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNDAgdm9uIFphcm5peWEgaW4gUnVicmlrIGRpc2t1c3Npb24uCgoKV28gSGF0ZSBSZWNodCBoYXQsIGhhdCBlciByZWNodCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYnJ1bnN2aWcgbWFkbmVzcyAoSmFzb25yaWdpZCwgMjEuIE5vdiAxOTk4LCAxNDo1MDozMik6Ckt5YXJhIGZyYWd0OiBXbyBnaWJ0cyBkZW5uIGRpZSBuZXVlbiBxdWVzdGVuID8/Pz8/CkFydXRoYSBmcmFndDogQmVpIHF1ZXN0ZW4ta2FsbGUgb2RlciBiZWkgb2JpPwpBcnV0aGEgZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KS3lhcmEgc2FndDogSEFIQUhBLi4uCkR1IHNhZ3N0OiBuZWluLCBpbiBwb3J0IHZhaW4gdW5kIGluIGRlciB3dWVzdGUgOikKS3lhcmEgZ2VodCBuYWNoIE9zdGVuLgpBcnV0aGEgc2FndDogcGFoCkFydXRoYSBncmluc3QuCkR1IGdyaW5zdC4KCkphc29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKnNjaG1vbGwqIChLZXksIDIxLiBOb3YgMTk5OCwgMTk6MTI6MDIpOgp+IyEgcm49UHJ5ZGUgcnQ9OTExNDg2MjA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTExNDg2MjA2Ckh1c3QKQWVobSBhbHNvIG1laW5lIFN1ZXNzZSBQcnVlZGUgLi4uIHp1bWluZGVzdCBpbiAyIFB1bmt0ZW4gbXVzcyBpY2ggRGlyCndpZWRlcnNwcmVjaGVuIEtsZWluZXMgOykKClJhdCBtYWwgaW4gd2VsY2hlbiA7KQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICpzY2htb2xsKiAoUHJ5ZGUsIDIxLiBOb3YgMTk5OCwgMjE6MjE6MDIpOgp+IyEgcm49S2V5IHJ0PTkxMTY3NTUyMiByZz1zY2htYXJybgp+IyEgdGlkPTkxMTQ4NjIwNgpBY2hqYS4uLiA/IE1laW5zdCBEdSBldHdhIGRhc3MgaWNoIG1pY2ggYXVmIERlaW4gJ05pdmVhdScgaGVydW50ZXJiZWdlYmUgdW5kCkRpciBqZXR6dCBzYWdlIGluIHdlbGNoZW4gUHVua3RlIER1IG1laW50ZXN0IG1pciB6dXN0aW1tZW4genUgbXVlc3NlbiA/ClZFUkdJU1MgZXMhCkJpdHRlIGxhc3MgaW4gWnVrdW5mdCBkaWVzZSBwbHVtcGVuIERpc2t1c3Npb25zYW5zYWV0emUuLi4KRGljaCBrYW5uIGljaCBlaW5mYWNoIG5pY2h0IGVybnN0bmVobWVuIQoKUHJ5ZGUgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAqc2NobW9sbCogKFN0b3BkZW5idXMsIDIyLiBOb3YgMTk5OCwgMDA6MzA6MTIpOgp+IyEgcm49UHJ5ZGUgcnQ9OTExNjgzMjYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTExNDg2MjA2Cm9jaCBQcnlkZSwgbWFjaCBkaXIgbWFsIGtlaW5lbiBrb3BmIHdlZ2VuIEtleSB1bmQgZXJuc3RuZWhtZW4sIEtleSBrYW5uIG1hbgplaW5mYWNoIG5pY2h0IGVyc3RuZWhtZW4sIGRhZnVlciBpc3QgZXIgYWJlciBrbnVmZmlnIDopCgpTZGIgc2FndDogIk5pbW0gZGVuIEZ1c3Mgdm9uIGRlbSBHYXNwZWRhbCAhIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogKnNjaG1vbGwqIChLZXksIDIyLiBOb3YgMTk5OCwgMDA6MzE6MjEpOgp+IyEgcm49U3RvcGRlbmJ1cyBydD05MTE2OTQ2MTIgcmc9c2NobWFycm4KfiMhIHRpZD05MTE0ODYyMDYKUGFoIQpJY2ggc2NobmVrIERpciBuaWUgd2llZGVyIG5lIFJvc2UgbmFjaGRlbSBEdSBtaWNoIGdldG9ldGV0IGhhc3QhCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFZlcmhhbHRlbiBlaW5lcyBNdWRnb3R0ZXMgKEFuYXRvbCwgMjIuIE5vdiAxOTk4LCAwNzoyMTo0Myk6Cn4jISBybj1TaGFyaWEgcnQ9OTExNjg3Mjg3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05MTE1NjU4NzgKV2VubiBEdSBEQVMgIndpbGQgcnVtZmxhbWVuIiBuZW5uc3QsIGhhc3QgRHUgZWluIGV4dHJlbSBzY2hsZWNodGVzCkdlZGFlY2h0bmlzLCBTaGFyaWEuLi4uIDpvKQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSSdtIGxvbmVseSwgbG9uZWx5LCBsb25lbHkuLi4gKEFuYXRvbCwgMjIuIE5vdiAxOTk4LCAwNzozMDoxNyk6Cj4ga2t3ZXIKQW5hdG9sLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJJ20gbG9uZWx5LCBsb25lbHksIGxvbmVseS4uLiAoQ2F0d2VhemxlLCAyMi4gTm92IDE5OTgsIDExOjQyOjI0KToKfiMhIHJuPUFuYXRvbCBydD05MTE3MTk4MTcgcmc9c2NobWFycm4KfiMhIHRpZD05MTE3MTk4MTcKRGFzIGlzdCBqYSBla2VsaGFmdC4KSGFldHN0ZSBEaXIgbmljaHQgbmVuIHNjaG9lbmVyZXMgU3R1ZWNrIGF1c3N1Y2hlbiBrb2VubmVuLgpaQiB2b24gUG9saWNlIG9kZXIgc28gPwpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSSdtIGxvbmVseSwgbG9uZWx5LCBsb25lbHkuLi4gKEFuYXRvbCwgMjIuIE5vdiAxOTk4LCAxMTo0MzoyMCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9OTExNzM0OTQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTExNzE5ODE3CkVpbm1hbCBTaGVyaWZmLCBpbW1lciBTaGVyaWZmLCB3YXM/IDopCgpBbmF0b2wgKHdlZGVsdCB3aWxkIG1pdCBlaW5lbSBDYXR3ZWF6bGUtZm9yLVNoZXJpZmYtRmFlaG5jaGVuKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJJ20gbG9uZWx5LCBsb25lbHksIGxvbmVseS4uLiAoTW9yZ290aCwgMjIuIE5vdiAxOTk4LCAxODoxNjoxNCk6Cn4jISBybj1BbmF0b2wgcnQ9OTExNzE5ODE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTExNzE5ODE3Cld1bmRlcnQgRGljaCBkYXM/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbW1lciBkaWVzZSBwcm9maXMgOikgKE5hY2h0d2luZCwgMjMuIE5vdiAxOTk4LCAwMDo1MzowNSk6CkhhcmFraXJpIHJ1ZnQ6IGdyZWxnZW4gaGlsYmVydCBzY2huZWVtYW5uIG5hY2ggd2VnIFBFUkRPIFZJTSEgUmVkIENsb2RzYWhhbXAhCgpEdSB0ZWlsc3QgSGFyYWtpcmkgbWl0OiAqV0FFRUVFRUVFRUVFRUVFRUVFTFoqCj4gCkR1IHdhZWx6dCBEaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KPiBIYXJha2lyaSB0ZWlsdCBEaXIgbWl0OiBIYXVwdHNhY2hlIGZ1bmt0aW9uaWVydCBbMDA6NTFdCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGF1c3RpZXJlICpwZmZmZmYqIChKYXNvbnJpZ2lkLCAyMy4gTm92IDE5OTgsIDExOjQyOjU2KToKV3Vyc3RlbCBrb21tdCBhbi4KR3JldGwgZmxhdHRlcnQgaGVyZWluLgpHcmV0bCBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIEJlbGdhcmlhZCwgUmVhcGVyLCBWaWJ1cm4sIGVpbgpHcmV0bCBrcmFlY2h6dDogU2FuZHRpZ2VyIHVuZCBDb25uZXIgLi4uCgpNdXNzIGljaCBtaXIgamV0enQgd2FzIGRhYmVpIGRlbmtlbiwgZGFzcyBkaWVzZXMgR2VmbHVlZ2VsIHp3YXIgbWVpbmVuIEh1bmQKZ3J1ZXNzdCwgYWJlciBrZWluZW4gUmVzcGVrdCB2b3IgZWluZW0gT2ZmaXppZXIgaGF0ID8/CgpKYXNvbiwgYW4gc2VpbmVyIEF1dG9yaXRhZXQgendlaWZlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbW0uLi4gKE5vdmFzdG9ybSwgMjMuIE5vdiAxOTk4LCAxMzo1NTo0Nyk6CkRlaW4gRnJldW5kIFJpbmdvciB0ZWlsdCBEaXIgbWl0OiBzbywgaWNoIHRlc3RlIG1hbCBtb3Jnb3RocyBhYnN0dXJ6IGF1cyAuLi4KRGVpbiBGcmV1bmQgUmluZ29yIHRlaWx0IERpciBtaXQ6IGZhbGxzIGljaCBnbGVpY2ggbmljaHQgbWVociBhbnR3b3J0ZW4KRGVpbiBGcmV1bmQgUmluZ29yIHRlaWx0IERpciBtaXQ6IHNvbGx0ZSwgaGF0dGUgZXIgcmVjaHQgO14pClJpbmdvciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCkhhdCBkYXMgaXJnZW5kd2FzIHp1IGJlZGV1dGVuID8gCiAgICBOb3ZhLCBuYWNoZGVua2xpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIbW0uLi4gKE1vcmdvdGgsIDIzLiBOb3YgMTk5OCwgMTM6NTY6MTcpOgp+IyEgcm49Tm92YXN0b3JtIHJ0PTkxMTgyOTM0NyByZz1zY2htYXJybgp+IyEgdGlkPTkxMTgyOTM0NwpSaW5nb3IgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbiBGcmV1bmQgUmluZ29yIHRlaWx0IERpciBtaXQ6IG9rYXksIG1vcmdvdGggaGF0dGUgcmVjaHQgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGhqYSAoTmFpcm9sZiwgMjMuIE5vdiAxOTk4LCAxNDoxODo1OCk6CmVtYW5kIHN0aWZ0ZXQgRnJpZWRlbi4KRHUgamFnc3QgZWluIERyYWNoZW5iYWJ5IG5pY2h0IG1laHIuCkVpbiBEcmFjaGVuYmFieSBqYWd0IERpY2ggbmljaHQgbWVoci4KSmVtYW5kIHNhZ3Q6IEhFWSEKRHUgZ3JpbnN0Lgo+IEplbWFuZCBzYWd0OiBkYXMgc3Vlc3NlIGJhYnkKSmVtYW5kIGJlc2Nod29lcnQgZWluZW4gQmxpdHogdm9tIEhpbW1lbC4KRGFzIERyYWNoZW5iYWJ5IGZhZWxsdCB0b3QgenUgQm9kZW4uCgoKCm1laW4gWndlaXRpIHVuZCBKZW1hbmQgc2luZCBzY2hyZWNrbGljaCA7KCgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvZnVlciBzaWNoIG1hbmNoZSBMZXV0ZSBlaW5sb2dnZW4uLi4gKEhhbmdvdmVyLCAyMy4gTm92IDE5OTgsIDE0OjMyOjIzKToKW1RvZDpMYXJzXSBFaW4gV2Fzc2VyZGFlbW9uIGhhdCBnZXJhZGUgQmVsZ2FyaWFkIHVtZ2VicmFjaHQuCltUb2Q6RWluIFdhc3NlcmRhZW1vbl0gQmx1YmIsIGJsdWJiLCBibHViYi4uLgpCZWxnYXJpYWQgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCgpIbS4uLmlzdCBkYXMgZWluIFplaWNoZW4gdm9uIE11ZHN1Y2h0LCB3ZW5uIG1hbiBleHRyYSB6dW0gU3RlcmJlbiBrdXJ6CnJlaW5zY2hhdXQ/CgotSGFuZ292ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhenUgbWVsZCBpY2ggbWljaCBrcmFuayAuLi4ga3poICEhIDspIChCdXp6Y3V0LCAyMy4gTm92IDE5OTgsIDE3OjIwOjQ5KToKRHUgZ2lic3QgZGVuIEtvY2hsb2VmZmVsIGFuIEdyYW1kYWxhIFpvcmtrZWxiYS4KR3JhbWRhbGEgWm9ya2tlbGJhIHNhZ3Q6IERhbmtlIGZ1ZXIgZGllIFNwZW5kZS4gRGllIFdhZmZlbmthbW1lciBrYW5uIG5pY2h0CkdyYW1kYWxhIFpvcmtrZWxiYSBzYWd0OiB2b2xsIGdlbnVnIHNlaW4uIFdpciBtdWVzc2VuIGF1ZiBkZW4gbmFlY2hzdGVuCkdyYW1kYWxhIFpvcmtrZWxiYSBzYWd0OiBLcmllZyB2b3JiZXJlaXRldCBzZWluLiAKR3JhbWRhbGEgWm9ya2tlbGJhIGxlZ3QgZWluZW4gS29jaGxvZWZmZWwgaW4gZWluIFJlZ2FsLgoKQnV6emksIGRlciBnYXIgbmljaCB3aXNzZW4gd2lsbCwgZ2VnZW4gd2VuIGVyIGRhbWl0IGFudHJldGVuIHNvbGwgKmFlY2h6KgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYXp1IG1lbGQgaWNoIG1pY2gga3JhbmsgLi4uIGt6aCAhISA7KSAoU29uZ29rdSwgMjMuIE5vdiAxOTk4LCAxNzoyMzozMSk6Cn4jISBybj1CdXp6Y3V0IHJ0PTkxMTg0MTY0OSByZz1zY2htYXJybgp+IyEgdGlkPTkxMTg0MTY0OQpEaWUgYnJhdWNodCBtYW4gZ2VnZW4gZGllIEtpbGxlcnRvbWF0ZW4hISEKU2F5b25hcmEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXNuPyAoSGFuZ292ZXIsIDIzLiBOb3YgMTk5OCwgMTc6Mzk6NDIpOgpHcmFkZSBlYmVuOgoKd2lyZiBraXNzZW4gbmFjaCB3b29keQpEdSBiaXN0IHp1IGtsZWluIHVtIGRlbiBCdW1lcmFuZyB6dSB3ZXJmZW4uCgpEYXMgdmVyc3RlaCBlaW5lci4uLiA6LSkKCi1IYW5nb3ZlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBhdWYgZGVyIERyYWNoZW5ob3J0ZXIgTGFuZHN0cmFzc2UgKFNoYW5uYXJhLCAyMy4gTm92IDE5OTgsIDE4OjAyOjEyKToKPnNjaGF1CkRpZSBEcmFjaGVuaG9ydGVyIExhbmRzdHJhc3NlIGZ1ZWhydCB2b24gV2VzdGVuIG5hY2ggU3VlZG9zdGVuIHdlaXRlci4gSW0KV2VzdGVuIGVya2VubnN0IER1IGRhcyBtYWxlcmlzY2hlIERvcmYgRHJhY2hlbmhvcnQsIGRhcyBhbSBGdXNzZSBkZXIgCkRyYWNoZW56aW5uZW4gZ2VsZWdlbiBpc3QuIEltIE5vcmRlbiBpc3QgZWluZSBXaWVzZSwgbmFjaCBTdWVkZW4ga29tbXN0CkR1IHp1IE9ya3RvZXRlcnMgdW5mZXJ0aWdlbSBTY2hsb3NzLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuLCB3ZXN0ZW4sIG5vcmRlbiB1bmQgc3VlZG9zdGVuLgpBbmR5LgpFaW4gbWl0dGxlcmVyIFRlaWwgZWluZXMgZ2lnYW50aXNjaGVuIFRhdXNlbmRmdWVzc2xlcnMuCj5IaXBwZSBrb21tdCBhbi4KPkFuZHkgaG9sdCBhdWYgZWlubWFsIGlyZ2VuZHdvaGVyIGVpbmVuIE1vcmdlbkdyYXVlbiBoYW5kZ2VhcmJlaXRldGVuCk1pbmktRmxhbW1lbndlcmZlciAodG0pLCByaWNodGV0IGlobiBhdWYgRGljaCBhdXMgdW5kLi4uCmZldWVydCBlaW5lbiByaWVzaWdlbiBGZXVlcmJhbGwgYXVmIERpY2ggYWIuCkRpciB3aXJkIHNvIHdhcm0gdW1zIEhlcnouLi4KPkFuZHkgZ3J1ZXNzdCBIaXBwZS4KSGlwcGUgdHJpbmt0IG5vY2ggZWluIE1hbHpiaWVyLgpBbmR5IHNhZ3Q6IEljaCB3aWxsIGF1Y2ggZWluIE1hbHpiaWVyIQpBbmR5IGdlaHQuCkVpbiBUYXVzZW5kZnVlc3NsZXIga29tbXQgYW4uCkhpcHBlIGZyYWd0IDogJ1VuZCB3aWUgbWFjaGUgaWNoIGVpbiBib290ZmFlaGlnZXMgQmFuZCA/JwpBbmR5IGtvbW10IGFuLgpIaXBwZSB6ZWlndCBEaXIgc2VpbmVuIFZlY3RyYS4KQW5keSBzYWd0OiBXaWVzbyBmYWVocnN0IER1IGRlbm4ga2VpbiB2ZXJudWVmdGlnZXMgQXV0bz8gRXR3YSBlaW5lbiBNYW50YT8KSGlwcGUgZ2VodCBuYWNoIFN1ZWRlbi4KQW5keSBnZWh0Lgo+IEhpcHBlIGtvbW10IGFuLgpUb21hdG9yIGR1cmNoc3VjaHQgZGVuIFJhdW0gbmFjaCBLZXR6ZXJuLgpIaXBwZSB0cmlua3Qgbm9jaCBlaW4gTWFsemJpZXIuCkhpcHBlIGZyYWd0IDogJ1VuZCB3aWUgbWFjaGUgaWNoIGVpbiBib290ZmFlaGlnZXMgQmFuZCA/JwpUb21hdG9yIHZlcmJyZW5udCBkaWUgS2V0emVyIHVuZCBnZWh0IG5hY2ggU3VlZG9zdGVuLgpIaXBwZSBnZWh0LgoKClNoYW5uYXJhIGdyaW5zdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXNuPyAoVHJhbmNlZmVhciwgMjMuIE5vdiAxOTk4LCAyMDowMjoyMCk6Cn4jISBybj1IYW5nb3ZlciBydD05MTE4NDI3ODIgcmc9c2NobWFycm4KfiMhIHRpZD05MTE4NDI3ODIKSG0uLi4gZGF2b3IgdmllbGxlaWNodCAic3RlY2tlIGJ1bWVyYW5nIGluIGtpc3NlbiIgPyA6LSkKCnRmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGF6dSBtZWxkIGljaCBtaWNoIGtyYW5rIC4uLiBremggISEgOykgKFR1bml4Z3V0LCAyNC4gTm92IDE5OTgsIDA3OjMxOjM2KToKfiMhIHJuPUJ1enpjdXQgcnQ9OTExODQxNjQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTExODQxNjQ5CkRhcyBtdWVzc3RlIGpldHp0IGVpZ2VudGxpY2ggbWluZGVzdGVucyBlaW5lIFZlcndhcm51bmcsIGVoZXIgbm9jaCBlaW5lIExBTkdFClp3YW5nc3BhdXNlIGJlaSBCZWZvZXJkZXJ1bmdlbiwgc2Vpbi4uLiBTaWNoIGVpbmZhY2ggc28gaW0gQW5ncmlmZnNmYWxsZQprcmFua3p1bWVsZGVuLi4uClRydmVzIHNpbmQgYXVjaCBuaWNodCBtZWhyIGRhcywgd2FzIHNpZSBvaG5laGluIG5pZSBnZXdlc2VuIHNpbmQuLi4gLSBvZGEgc28KYWVobmxpY2guLi4KCkVpbiBhbm9ueW1lciBBdXNzZW5zdGVoZW5kZXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGF6dSBtZWxkIGljaCBtaWNoIGtyYW5rIC4uLiBremggISEgOykgKEdyYWxrb3IsIDI0LiBOb3YgMTk5OCwgMDg6MzE6NTApOgp+IyEgcm49VHVuaXhndXQgcnQ9OTExODkyNjk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTExODQxNjQ5Ck5peG51dHosIGR1IG11c3N0IG5pY2ggaW1tZXIgdm9uIE1JUiBhdWYgQW5kZXJlIEthZW1wZmVyIHNjaGxpZXNzZW4uCkRpZSBBbmRlcmVuIGtlbm5lbiBtZWhyIGFscyBudXIgZGllIEhvbHpwdXBwZS4KCkcuLCB2ZXJ0ZWlkaWd0IGltIEtyaWVnc2ZhbGwgZGllIEhvbHpwdXBwZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGF6dSBtZWxkIGljaCBtaWNoIGtyYW5rIC4uLiBremggISEgOykgKFR1bml4Z3V0LCAyNC4gTm92IDE5OTgsIDA4OjM4OjE3KToKfiMhIHJuPUdyYWxrb3IgcnQ9OTExODk2MzEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTExODQxNjQ5CkR1IHVuZCBkaWUgSG9senB1cHBlIC0gZGFzIGlzdCBkb2NoIGVpbmUgZ2FueiBhbmRlcmUgU2FjaGUuLi4gSWNoIHJlZGUgZG9jaAp2b24gS0FFTVBGRU4hISEgTmVpbiwgdW5kIHZvbiBkZWluZXIgR3VtbWlwdXBwZSBlcnphZWhsZSBpY2ggbmllbWFuZGVtLApuZWlubmVpbi4uLgpESVIgd3VlcmRlIGVpbmUgQmVmb2VyZGVydW5nc3NwZXJyZSBqYSBub2NoIHJpY2h0aWcgd2VodHVuLi4uLCBkZXNoYWxiIGJsZWlidApkYXMgbGllYmVyIHVudGVyIHVucy4uLgoKUFM6IFdvaGVyIHdlaXNzdCBEdSBlaWdlbnRsaWNoPywgaWNoIGhhYmUgZG9jaCBtaXQgImFub255bSIgdW50ZXJzY2hyaWViZW4hCjtvKQoKRWluIGFub25teW1lciBBdXNzZW5zdGVoZW5kZXIgLSBzY2hyZWlidCBkZW1uYWVjaHN0IG51ciBub2NoIG1pdCBHYWVzdGVuISA7bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhIHdhcmVuIHNpZSB3aWVkZXI6IEZMVyAoSHJlaWRtYXIsIDI0LiBOb3YgMTk5OCwgMTA6MDE6NDMpOgpOYWphLCBpcmdlbmR3aWUgaGF0dGUgaWNoIGRhcyBhbmRlcnMgZ2VtZWludDoKRHUgdGVpbHN0IEN1cmFsZGlyIG1pdDogTW9pbiwgbW9pbiEKW1RvZDpMYXJzXSBFaW4gU2NoYXR0ZW5tYW5uIGhhdCBnZXJhZGUgQ3VyYWxkaXIgdW1nZWJyYWNodC4KCkhyZWlkbWFyLCB1ZWJlciBzZWluZSBQU0ktS3JhZWZ0ZSBncmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmF1YSAhISEgKFNoYXJpYSwgMjQuIE5vdiAxOTk4LCAxMjo0ODowNik6CgotIFRhbnRlIFNoYXJpYSB0b2V0ZXQgZGVuIGZhbHNjaGVuIEJsb2Vkc2lubi4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkVyZmFocnVuZyAuLi4uLi4uLiAxMTc1MDI5OTUgUHVua3RlICAgQWJlbnRldWVyIC4uLi4uLi4uIDI2MjYgKDI0MjIpCgpHZXNjaGlja2xpY2hrZWl0IC4gMjAgKC03KSAgICAgICAgICAgIEF1c2RhdWVyIC4uLi4uLi4uLiAyMCAoLTIxKQpLcmFmdCAuLi4uLi4uLi4uLi4gMjAgICAgICAgICAgICAgICAgIEludGVsbGlnZW56IC4uLi4uLiAyMCAoLTE4KQoKR2VzdW5kaGVpdCAuLi4uLi4uIDM0ICAgICAgICAgICAgICAgICBHaWZ0IC4uLi4uLi4uLi4uLi4gZ2VzdW5kCktvbnplbnRyYXRpb24gLi4uLiA1OCAgICAgICAgICAgICAgICAgVm9yc2ljaHQgLi4uLi4uLi4uIG11dGlnClRvZGUgLi4uLi4uLi4uLi4uLiAxICAgICAgICAgICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgpuYSBkYW5uIC4uIGd1dGUgbmFjaHQgLi4uClNoYXJpYSBsZWJ0IC4uIE5PQ0gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUgKFplcGh5ciwgMjQuIE5vdiAxOTk4LCAxMjo1MDoxMyk6CkViZW4gcGFzc2llcnQ6CgpUc3VuYW1pIHppZWh0IHNpY2ggZXR3YXMgYXVzIHNlaW5lciBOYXNlLgpQYWRyZWljIGtvbW10IGFuLgoKU2ljaCB1ZWJlciBuaXggbWVociB3dW5kZXJuZCwgQzQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJlc29mZmVuZSBWb2VnZWw/IChIYW5nb3ZlciwgMjQuIE5vdiAxOTk4LCAxMzo0MTowNCk6CkdyYWRlIGViZW46CgpBYnJheGFzIGZsYXR0ZXJ0IGhlcmVpbi4KQWJyYXhhcyBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIExhbiBGdSB1bmQgTGFuIEZ1IC4uLgoKV3Vzc3RlIGdhciBuaWNodCwgZGFzcyBkaWUgSGF1c3RpZXJlIG1pdHNhdWZlbi4uLiA6LSkKLUhhbmdvdmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggd3Vzc3RzIHNjaG9uIGltbWVyLi4uIChBdG96LCAyNC4gTm92IDE5OTgsIDE2OjE3OjQzKToKRGVpbiBGcmV1bmQgS2V5IHRlaWx0IERpciBtaXQ6IEt1cnogd2VnLgoKQ2F0d2VhemxlICBJIFMgVCAgSiBFIFQgWiBUICBEIEEgISEhIApLZXkgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpKZXR6dCB3ZWlzcyBpY2ggd2FzIEtleSBpbW1lciBtaXQgJ21laW4gQ2F0d2VhemxlJyBtZWludGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJpbiBpY2ggc29vb28gZGljaz8gKE1pZXplLCAyNC4gTm92IDE5OTgsIDE3OjU3OjA3KToKZWJlbiBpbiBQb3J0IFZhaW4uLi4KCgpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCkR1IHdhZWx6dCBEaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEtsb25rLgoKTWllemUuLi4gbGFjaHQgaW1tZXJub2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXh0cmFibGF0dCB2b20gQm91bGV2YXJkLVJlcG9ydGVyIElJIChBenp1cm8sIDI0LiBOb3YgMTk5OCwgMTg6NTA6MjQpOgpVbmQgd2llZGVyIGlzdCBlciBkYS4gRGVyIHJhc2VuZGUgS2xhdHNjaHJlcG9ydGVyIG9obmUgU2tydXBlbCB2b3IgZGVyCkludGltc3BoYWVyZS4KRGllc21hbCB3YXIgZXMgdW5zIGxlaWRlciBuaWNodCB2ZXJnb2VubnQgZWluZW4gcmljaHRpZ2VuIFByb21pIHp1IGVyd2lzY2hlbiwgCmRlc2hhbGIgbXVzc3RlbiB3aXIgdW5zIG1pdCBlaW5lbSBrbGVpbmVuIFJlZ2lvbnNtYWdpZXIgenVmcmllZGVuIGdlYmVuLgpBYmVyIGxlc2VuIFNpZSBzZWxic3Q6ClNob3J0OiBFaW4gV29obnppbW1lciBpbiBlaW5lbSBhbHRlbiBUZW1wZWxzIApMb25nIDoKRHUgc3RlaHRzIGluIGVpbmVtIGdlbXVldGxpY2ggZWluZ2VyaWNodGV0ZW4gV29obnppbW1lci4gRGllIE5vcmR3YW5kIAp3aXJkIHZvbiBlaW5lbSByaWVzaWdlbiBLYW1pbiB2ZXJ6aWVydC4gTWl0dGVuIGltIFJhdW0gc3RlaHQgZWluZSBnZW11ZXRsaWNoZSAKQ291Y2gsIGRlbSBLYW1pbiB6dWdld2FuZC4gV2VpdGVyIHNpZWhzdCBkdSBlaW5pZ2UgYmVxdWVtZSBTZXNzZWwKdW5kIGVpbmVuIGdyb3NzZW4gVGlzY2guIApWb3IgZGVtIEthbWluIGxpZWd0IGVpbiBrbnVkZGVsaWdlcyBGZWxsLgpDb250ZW50OgoxLiBEYW5jZXIKMi4gRGVsIApJc3QgZGFzIEZlbGwgdm9ybSBLYW1pbiB3aXJrbGljaCBkYXMgbGVnZW5kYWVyZSBTYW5kdGlnZXJmZWxsPyBGcmllcnQgRGFuY2VyCm5pY2h0IHNvIHVuYmVrbGVpZGV0IHVuZCB3YXMgcGFzc2llcnQgaW4gZGllc2VtIFJhdW0gdWViZXJoYXVwdD8/PwpGcmFnZW4gdWViZXIgRnJhZ2VuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLbGFwcHQgZG9jaCEgKE1lbmFjZSwgMjQuIE5vdiAxOTk4LCAyMjo1ODoxNSk6CmthdWZlIDkKVHV0IG1pciBsZWlkLCB2b24gZGllc2VtIEFydGlrZWwgZGFyZiBpY2ggRGlyIGltIE1vbWVudCBrZWluIHp3ZWl0ZXMKRXhlbXBsYXIgdmVya2F1ZmVuLiBGcmFnIG5vY2ggZWlubWFsIG5hY2gsIHdlbm4gaWNoIGRpZSBuYWVjaHN0ZSBMaWVmZXJ1bmcKYmVrb21tZW4gaGFiZS4KRWluIEFyYmVpdGVyIHNjaGxlcHB0IGVpbmUgS2lzdGUgbWl0IFdhcmVuIGhlcmVpbiB1bmQgc3RlbGx0IHNpZSBpbnMgTGFnZXIuCmthdWZlIDkKRHUgYmVrb21tc3QgZWluZW4gQnVtZXJhbmcuCgpVbmdlc2Nobml0dGVuISA7LSkKCk1lbmFjZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGVpc3NlbiBkYW5rIDopIChOYWNodHdpbmQsIDI1LiBOb3YgMTk5OCwgMDI6NTk6MzYpOgpEdSBzdGVoc3QgaW4gZGVyIEhvZWhsZSBkZXIgU2NocmVja2Vuc3dlc2VuLiBEdXJjaCBlaW5lbiBGZWhsZXIgaW0gUmF1bXplaXQtCmdlZnVlZ2Ugc2luZCBzaWUgaW4gZGllc2VzIE11ZCBnZXN0dWVyenQgd29yZGVuLiBXZW5uIER1IG5vY2ggbGFuZ2UgaGllcgpydW1zdGVoc3QsIHdpcnN0IER1IGluIGlocmUgRGltZW5zaW9uIGdlem9nZW4uIEF1cyBlaW5lbSBzZWx0c2FtZW4gU3BhbHQKenVja2VuIGR1bmtlbGJsYXVlIEJsaXR6ZSB1bmQgdmVyc2Nod2luZGVuIG5hY2ggT3N0ZW4uCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3RlbiB1bmQgc3BhbHQuCj4gTFA6IDE1OSAoMTAwKSBNUDogNjggU1Q6IDk2IEhhOlthdXNdIFhIOltlaW5dIFdpOlthdXNdIERmOltrZWluZV0KRWI6W0dFTEFERU5dIFtVTkRFRl0KTFA6IDE2MCAoMTAwKSBNUDogNjggU1Q6IDk2IEhhOlthdXNdIFhIOltlaW5dIFdpOlthdXNdIERmOltrZWluZV0gRWI6W0dFTEFERU5dCltVTkRFRl0KTFA6IDE2MCAoMTAwKSBNUDogNjkgU1Q6IDk3IEhhOlthdXNdIFhIOltlaW5dIFdpOlthdXNdIERmOltrZWluZV0gRWI6W0dFTEFERU5dCltVTkRFRl0KQW5hY3Jpb24gdGVpbHQgRGlyIG1pdDogZGEgd28gZHUgYmlzdCwgZGEgcmVzZXR0ZW4gYmFsZCBuZSBfbWVuZ2VfIGZpZXNlcgpBbmFjcmlvbiB0ZWlsdCBEaXIgbWl0OiB2aWVjaGVyCgpFaW4gU2NocmVja2Vuc21laXN0ZXIga29tbXQgYW4uCkVpbiBTY2hyZWNrZW5zbG9yZCBrb21tdCBhbi4KRWluIFNjaHJlY2tlbnNsb3JkIGtvbW10IGFuLgpFaW4gU2NocmVja2Vuc3dlc2VuIGtvbW10IGFuLgoKRGFzIGtsYXBwdCBqYSBtYWwgd2llZGVyIDopCk5hY2h0d2luZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBiaW4gaWNoIHNvb29vIGRpY2s/IChRaXRlc3MsIDI1LiBOb3YgMTk5OCwgMTI6NDM6MTMpOgp+IyEgcm49TWllemUgcnQ9OTExOTMwMjI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTExOTMwMjI3Cm1pZXplIGlzdCBlaW5lIGt1Z2Vsa2F0emUgdW5kIGhpZXNzIGVpZ2VudGxpY2ggZnJ1ZWhlciBtYWwgZ2FyZmllbGQuLi4KUUkqKiBNaWV6ZSBrcmF1bGVuZAoKUC5TLjogb29wcywgamV0enQgbXVzcyBpY2ggc2Nob24gd2llZGVyIGRpZXNlIGdhbnplbiBrYXR6ZW5oYWFyZSBlbnRmZXJuZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG5lbGwtU3BydWNoIGRlciBLYXR6ZW5rcmllZ2VyLi4uIChNaWV6ZSwgMjUuIE5vdiAxOTk4LCAxODoxNjoxMCk6CmViZW4gYXVmIEF1cm9yYQoKCkltIGRpY2h0ZW4gVW50ZXJob2x6LgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogb3N0ZW4uCkF1ZiBkZW0gQXBwYXJhdCBsZXVjaHRldCBkZXIgU2NocmlmdHp1ZyAiQml0dGUgZ2VkdWxkZW4gU2llIHNpY2ghIiBhdWYuCkRlaW5lIEdlc2Nod2luZGlna2VpdCB3aXJkIHdpZWRlciBub3JtYWwuCgpNaWV6ZSAuLi4gd2llZGVyIGxhbmdzYW0gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpZSBudT8gKE1vcmdvdGgsIDI2LiBOb3YgMTk5OCwgMTA6NDQ6MTIpOgpOaWV0ZSBzYWd0OiBoYWV0dGVzdCBlYmVuIG5pY2h0IHNvIHZpZWxlIGRldGFpbHMgbWFjaGVuIGR1ZXJmZW4gOikKRHUgZGVua3N0ICAgLiBvIE8gKGFyZ2wpCgpNb3Jnb3RoLCB2ZXJ3aXJydCAuIG8gTyAoIGRldGFpbHMgb2RlciBrZWluZSBkZXRhaWxzLCBkYXMgaXN0IGhpZXIgZGllIGZyYWdlKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2huZSB3b3J0ZSA7KSAoQmVsZ2FyaWFkLCAyNi4gTm92IDE5OTgsIDE0OjI1OjM3KToKTWNDYXVscyB0ZWlsdCBEaXIgbWl0OiB3aWVzbyBoYXN0IGR1IGRlbiBvcmthbmZ1ZWhyZXIgZGVuIGljaCBncmFkIGtsb3BwZW4KTWNDYXVscyB0ZWlsdCBEaXIgbWl0OiB3b2xsdGUgaW4gZWluIHBha2V0IGdlc3RlY2t0PwoKKkdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQVJHTCAoQW5hY3Jpb24sIDI2LiBOb3YgMTk5OCwgMTY6MTc6NDMpOgouLi4gCldlbm4gZXMgaGllciBuaWNodCBzbyB3YWhuc2lubmlnIGhlbGwgd2FlcmUsIGtvZW5udGVzdCBEdSB3b2hsIERlaW4gZWlnZW5lcwpTcGllZ2VsYmlsZCBiZXRyYWNodGVuLgo+YmV0cmFjaHRlIHNwaWVnZWxiaWxkCkVzIGlzdCB6dSBoZWxsLCB1bSBpcmdlbmRldHdhcyB6dSBlcmtlbm5lbi4KPmxpY2h0IGF1cwpEdSBrb256ZW50cmllcnN0IERpY2guClBsb2V0emxpY2ggd2lyZCBlcyBkdW5rbGVyLgo+IGJldHJhY2h0ZSBzcGllZ2VsYmlsZApFcyBpc3QgenUgZHVua2VsICEKCi4uLipncnVtbWVsKiAuLi4gb2IgVHN1bmFtaSBqZXR6dCBoYWxiZSBMaWNodGxldmVscyB3aWxsID8KCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYW5uIE5lYiBoZWxsc2VoZW4/IChXaW0sIDI2LiBOb3YgMTk5OCwgMTk6MzI6MzQpOgoKW1NlaGVyOk5lYiBkZW5rdCAuIG8gMCAoS2lsYXIgc2V0enQgaGV1dGUgaWhyIFByb2pla3QgYXVmICJkZWJ1ZyIgZm9ydCIgOykpXQpbRGVidWc6S2lsYXJdIEZlaGxlcjogIkZhaWxlZCB0byBsb2FkIGZpbGUuIiwgT2JqZWt0OiBtYWdpZXI6a2lsYXIsIFByb2dyYW1tOgpbRGVidWc6S2lsYXJdICI8bGFtYmRhIDB4YmZmZmMyMmE+IiwgWmVpbGUgMSAoS2lsYXIpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW50ZXJlc3NhbnRlIE5lYmVuZWZmZWt0ZS4gKExlbmEsIDI2LiBOb3YgMTk5OCwgMTk6NTY6NDMpOgoKW0FiZW50ZXVlcjo8UXVlc3Q+XSBlaW5lIFBsdWVzY2hoeWRyYSBoYXQgZ2VyYWRlIGVpbiBBYmVudGV1ZXIgYmVzdGFuZGVuOgpbQWJlbnRldWVyOjxRdWVzdD5dIFRpdGl3dSAgPDE5OjU0OjUwPgoKTGVuYSBhbGlhcyBkaWUgUGx1ZXNjaGh5ZHJhLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEludGVyZXNzYW50ZSBOZWJlbmVmZmVrdGUuIChTb25nb2t1LCAyNy4gTm92IDE5OTgsIDEzOjI0OjA4KToKfiMhIHJuPUxlbmEgcnQ9OTEyMTEwMjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEyMTEwMjAzCkljaCB3YXJ0ZSBhdWYgOgpFaW5lIFBsdWVzY2hoeWRyYSByZWlodCBzaWNoIGluIGRpZSBSZWloZW4gZGVyIEh5ZHJhdG9ldGVyIGVpbiA6KSkKClNheW9uYXJhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIHdvbGx0ZSBpY2ggbmljaHQhIChBenp1cm8sIDI3LiBOb3YgMTk5OCwgMTc6MTQ6NTYpOgpyd3VzY2hlbCByaWt1cwpEdSB2ZXJ3dXNjaGVsc3QgUmlrdXMnIEhhYXJlIGF1cyBkZXIgRmVybmUuCj4gZ290byByaWt1cwoKT2ggTWFubiwgaGllciBsaWVnZW4gamEgdmllbGUgSGFhcmJ1ZXNjaGVsIHJ1bS4gClNvIHNjaGVpbnQgZXMgYWJlciBiZWkgSGFhcnd1c2NobGVybiBpbW1lciBhdXN6dXNlaGVuLgpSb3RlLCBicmF1bmUsIHNjaHdhcnplLCBibG9uZGUsIGJsYXVlIHVuZCwgYWNoIHdhcyBpc3QgZGFzPyE/CkRhcyBzaWVodCBzdGFyayB3aWUgRGVpbmUgZWlnZW5lIEhhYXJmYXJiZSBhdXMuCldhbm4gS2Fubml4IGRhcyB3b2hsIGVyZ2F0dGVydCBoYXQ/ClVuZCB3aWVzbyBzaWUgZGFzIGltbWVyIG5vY2ggaGllciBsaWVnZW4gaGF0PwpBY2ggT2xsaSwgV3VzZWwgc2luZCBzY2hvbiBrb21pc2NoLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogZ2lsZGUuClNoYWRvdyBSaWt1cyBtZWludDogaSdtIG5vdCBzdXJlIHdoYXQgaSdtIGxpdmluZyBmb3IuIAoKRGFiZWkgaGF0IGVyIGRvY2ggc2Nob24gc28gd2VuaWdlIGRhdm9uIDstKQoKQXp6dXJvLCBkZXIgU3VwZXJ3dXNjaGxlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xlcmlrZXIgISEgOy0pKSAoTW9yZ290aCwgMjcuIE5vdiAxOTk4LCAxNzo0ODo0Myk6ClNoYXJpYSBmYWVuZ3QgYW4genUgZGVua2VuLgpLbGVpbmUgUmF1Y2h3b2Vsa2NoZW4gc3RlaWdlbiBhdWYuLi4KRGVyIEhlaWxpZ2Vuc2NoZWluIHVlYmVyIGRlbSBIYXVwdGUgU2hhcmlhcyB2ZXJnbGltbXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgd2FyIGRlbm4gZGFzPyAoU3JhYmksIDI5LiBOb3YgMTk5OCwgMTg6MjU6NDUpOgoKRWJlbiBhdWYgbWVpbmVtIEJpbGRzY2hpcm0KCkRlaW5lIEZyZXVuZGluIEluZ3JpZCB0ZWlsdCBEaXIgbWl0OiBoaSEKU2lhbm4gc2FndDogd2llIGJpdHRlPwpJbmdyaWQgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpTcmFiaSwgbm9jaCBpbW1lciBlcnN0YXVudAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmtudXRzY2gqIChJY2tzLCAgMS4gRGV6IDE5OTgsIDEyOjA3OjM4KToKRHUgdHJpZmZzdCBkZW4gaHVlcGZlbmRlbiBLbnV0c2NoZmlzY2ggaGFydC4gCkRlciBodWVwZmVuZGUgS251dHNjaGZpc2NoIGZhZWxsdCB0b3QgenUgQm9kZW4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApEZXIgS251dHNjaGZpc2NoIGdpYnQgRGlyIGVpbmVuIHRpZWZlbiB1bmQgaGluZ2VidW5nc3ZvbGxlbiBLdXNzLiAgICAgICAgIAoKSmFqYSwgRHUgYmlzdCBqYSBhbHMgbmFlY2hzdGVzIGRyYW4sIG51ciBuaWNodCBkcmFlbmdlbG4gOykKCiAgSWNrcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzIGhhdCBNb3Jnb3RoPyAoUnVtYXRhLCAgMS4gRGV6IDE5OTgsIDEyOjUwOjUwKToKW0xQQzpNb3Jnb3RoXSBmdWNrCltMUEM6TW9yZ290aF0gYXJnbCwgaWNoIGhhYnMKUGFkcmVpYyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUHJvdGVzdCEgKENhdHdlYXpsZSwgIDEuIERleiAxOTk4LCAxMzoyOToyMSk6Cn4jISBvbj1MZW5hIG90PTkxMjA5NTU3MSBvZz1hbGxnZW1laW5lcwpEaWVzIGlzdCBlaW4gUHJvdGVzdGJyaWVmLgpHcnVuZDogZ3JhZCBzby4KQW5zY2hlaW5lbmQgYmluIGljaCBoaWVyIGphIGRlciBEcmVjayB2b20gRGllbnN0LCBhYmVyIGVzIHNvbGx0ZW4gc2ljaCBtYWwKZWluaWdlIExldXRlIGVyc3QgbWFsIHNlbGJzdCBhbiBkZXIgTmFzZSBncmVpZmVuLCBlaGUgc2llIG1pY2ggaGllciBzbwpkZW51bnppZXJlbi4KCkxlbmEsIGdlZ2VuICJqZW1hbmQiIHByb3Rlc3RpZXJlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUHJvdGVzdCEgKENhdHdlYXpsZSwgIDEuIERleiAxOTk4LCAxMzoyOToyNSk6Cn4jISBvbj1QYW1wZXJzIG90PTkxMjA5NzE2MSBvZz1hbGxnZW1laW5lcwp+IyEgcm49TGVuYSBydD05MTIwOTU1NzEgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MTIwOTU1NzEKU29zbywgRHUgYmlzdCBhbHNvIGRlciBEcmVjayB2b20gRGllbnN0LgoKRGFzIGlzdCBzY2hvZW4sIGRhcyBpY2ggZGFzIGpldHp0IHdlaXNzLCBhYmVyIGVpbmUgRnJhZ2UgYmxlaWJ0OgpXZXIgYmlzdCBEdT8gVW5kIHdpZXNvIGhhYmUgaWNoIGRhcyBub2NoIG5pY2h0IGdlbWVya3QgKGRhc3MgRHUgZGVyIERyZWNrIHZvbgpEaWVuc3QgYmlzdCkKClBhbXBlcnMuIFdlaXNzIHNlbGJlciwgZGFzcyBkYXMgendlaSBGcmFnZW4gd2FyZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUHJvdGVzdCEgKENhdHdlYXpsZSwgIDEuIERleiAxOTk4LCAxMzoyOTo0Myk6Cn4jISBvbj1LZXkgb3Q9OTEyMTAxMDc5IG9nPWFsbGdlbWVpbmVzCn4jISBybj1MZW5hIHJ0PTkxMjA5NTU3MSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTkxMjA5NTU3MQpNYWNoIERpY2ggbmV0IHdpY2h0aWdlciBhbHMgRHUgamVtYWxzIHNlaW4gd2lyc3QKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQcm90ZXN0ISAoQ2F0d2VhemxlLCAgMS4gRGV6IDE5OTgsIDEzOjI5OjU5KToKfiMhIG9uPUd1eWJydXNoIG90PTkxMjI4MzgxMCBvZz1hbGxnZW1laW5lcwp+IyEgcm49S2V5IHJ0PTkxMjEwMTA3OSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTkxMjA5NTU3MQpBZWgsIHNvbGwgaWNoIGRhIGpldHp0IHdhcyBkcmF1ZiBzYWdlbj8gCgpWaWVsbGVpY2h0IGJlc3NlciBuaWNodCwgZGVubiBlcyBrb2VubnRlIGhlaXNzZW4gZGVyIHVlYmxpY2hlIEFsayBoYWV0dGUgbWljaApkYXp1IHZlcmxlaXRlbiB1bmQgZGFubiBuaW1tdCBtaWNoIGhpZXIga2VpbmVyIG1laHIgZXJuc3QuIERhbWl0IGtvZW5udGUgaWNoCmRhbm4gd2lya2xpY2ggbmljaHQgbWVociBsZWJlbiAuLgoKCkd1eWJydXNoLCBleHRyZW0gd2ljaHRpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhoaGphIChaZXIsICAxLiBEZXogMTk5OCwgMTY6Mzc6NDcpOgpEZWluIEZyZXVuZCBLZXkgdGVpbHQgRGlyIG1pdDogSG1wZiB0ZXN0ZW4gZXJ6ZXVndCB2aWVsZSBUb2RlCgpaZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRhbnplbiBpbiBNb3JvbiA6KSAoQWxjaW5hLCAgMS4gRGV6IDE5OTgsIDE3OjA0OjE4KToKCmViZW4gaW4gTW9yb24gcGFzc2llcnQ6CgoKTWllemUgZmFlbmcgYW4sIHdpZSB3aWxkIG1pdCBkZW4gQXJtZW4genUgcnVkZXJuLgpFcyB3aXJkIHBsb2V0emxpY2gga2FlbHRlci4KRGllIFNjaGF0dGVuZnJhdSBmYWVsbHQgdG90IHp1IEJvZGVuLgpEaWUgTXVzaWsga2xpbmd0IHdpcmtsaWNoIHdpZSBlaW4gVG90ZW50YW56LgpEaWUgTXVzaWsgaGllciBrbGluZ3QgYmVkcnVlY2tlbmQuCgoKQWxjaW5hLCBncmluc3QgaW1tbWVyIG5vY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUHJvdGVzdCEgKFRlZGR5LCAgMS4gRGV6IDE5OTgsIDIyOjA1OjM2KToKfiMhIHJuPUNhdHdlYXpsZSBydD05MTI1MTg5NjEgcmc9c2NobWFycm4KfiMhIHRpZD05MTI1MTg5NjEKSG1wZiwgYmVpIHZlcmxlZ3RlbiBBcnRpa2VsbiBmdW5rdGlvbmllcnQgZGFzIGlnbm9yaWVyZSBuaWNodCwgYWxzbyBkZW4gZ2FuemVuCk1pc3Qgbm9jaG1hbCBsZXNlbiA7KAoKVGVkZHksIGhhbGJoZXJ6aWcgYmVzY2h3ZXJlbmQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClB1bmt0IDEgVWhyLCBuYWNodHMsIGltIE1HLi4uIChXb29keSwgIDIuIERleiAxOTk4LCAwMTowMDo1MSk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIEZldWVydGV1ZmVsc10gV2VubiBpY2ggbWFsIGdyb3NzIGJpbiwgemFobCBpY2ggRGlyIGRhcwpbTW9lcmRlcjpHZWlzdCBlaW5lcyBGZXVlcnRldWZlbHNdIGFsbGVzIGhlaW0sIFRob3IhCkR1IGJlc2Nod29lcnN0IDEgRmV1ZXJ0ZXVmZWwgaGVyYmVpLgoKRG9vZmUgVWhybWVsZHVuZyBhYmVyIGF1Y2ggOykKV29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFB1bmt0IDEgVWhyLCBuYWNodHMsIGltIE1HLi4uIChXb29keSwgIDIuIERleiAxOTk4LCAwMTowMjoxMCk6Cn4jISBybj1Xb29keSBydD05MTI1NjA0NTEgcmc9c2NobWFycm4KfiMhIHRpZD05MTI1NjA0NTEKVWVicmlnZW5zOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBGZXVlcnRldWZlbHNdIFdlbm4gaWNoIG1hbCBncm9zcyBiaW4sIHphaGwgaWNoIERpciBkYXMKW01vZXJkZXI6R2Vpc3QgZWluZXMgRmV1ZXJ0ZXVmZWxzXSBhbGxlcyBoZWltLCBUaG9yISA8MDE6MDA6MDE+CgpEaWUgVWhybWVsZHVuZ2VuIGdlaGVuIGZhbHNjaC4gS2FubiBkaWUgbWFsIHdlciBuYWNoc3RlbGxlbj8gOikKCgpXb29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpISUxGRSA6LSkgKE5haXJvbGYsICAyLiBEZXogMTk5OCwgMTI6NDI6MjgpOgpEdSBzdGVoc3QgaW4gZWluZW0gZ3Jvc3NlbiBSYXVtLiBJbiBkZXIgbm9yZHdlc3RsaWNoZW4gdW5kIHN1ZWRvZXN0bGljaGVuCkVja2Ugc3RlaHQgamV3ZWlscyBlaW5lIFN0YXR1ZS4gWndpc2NoZW4gYmVpZGVuIGlzdCBlaW5lIEFydCBBbHRhciB6dQplcmtlbm5lbi4gRGFzIExpY2h0IGlzdCBoaWVyIGV0d2FzIGR1bmtsZXIgYWxzIGJpc2hlci4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG9zdGVuLgpCb2luZ3Mga2xlaW5lciBncnVlbmVyIFN0ZWluYmVpc3Nlci4KQm9pbmcgLiBvIE8gbyAuIEJvaW5nIC4gbyBPIG8gLiBCb2luZy4KRWluIFNjaGFlZmVyaHVuZCBuYW1lbnMgQm9pbmcuCkJvaW5nIC4gbyBPIG8gLiBCb2luZyAuIG8gTyBvIC4gQm9pbmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBQcm9ibGVtL3ZlcmVpbnMtZWlnZW50dW0gKEFuYXRvbCwgIDIuIERleiAxOTk4LCAxNDo1MTo1NSk6Cn4jISBvbj1BbmF0b2wgb3Q9OTEyNjEwMzA4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1IYXRlIHJ0PTkxMjYxMDIxNiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTkxMjYwODAxNwpTb2xsIGhlaXNzZW4sIGRhc3MgZGFzIEVpbnZlcm5laG1lbiBpc3QgIkplZGVyIE1hZ2llciBrYW5uIHNlaW5lbiBLcmFtCm1pdG5laG1lbiwgd2VubiBlciB1bmJlZGluZ3Qgd2lsbCIgdW5kIGRhbm4gYWxzIGdlc3RvZXJ0IGdpbHQsIHdlbm4gZXMKdGF0c2FlY2hsaWNoIGplbWFuZCB0dXQ/IDopIAoKT2sgb2ssIGljaCB2ZXJsZWcnIGVzIHNlbGJzdCBuYWNoIFNjaG1hcnJuLi4uCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXIgZGFzIGVpbiBvdXRpbmc/IChBenp1cm8sICAyLiBEZXogMTk5OCwgMTU6MTQ6NDcpOgpWYWxhIE1vcmdvdGggcnVmdDogQklMTCBHQVRFUy0+ZGllZGllZGllKCkKSHVlcGZlciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxpY2h0dmVyaGFlbHRuaXNzZSBpbiBkZXIgU1NQIChIZXJkYWwsICAyLiBEZXogMTk5OCwgMTk6MTU6MjIpOgoKPiB1bnQgZ2VydWNoCkVzIGlzdCB6dSBkdW5rZWwgIQoKRXR3YXMgc3BhZXRlciwgYW5kZXJlIFN0ZWxsZToKPiB1bnQgbGVpY2hlCkRpZSBwbG9ldHpsaWNoZSBIZWxsaWdrZWl0IGxhZXNzdCBEaWNoIGt1cnpmcmlzdGlnIGVyYmxpbmRlbi4KRHUgc2llaHN0IGRpZSBzdGVyYmxpY2hlbiBVZWJlcnJlc3RlIGVpbmVzIFNjaGxhYmJlcm11cmtzLgoKSGVyZGFsIHRyYXV0IHNlaW5lbiBTaW5uZW4gYmFsZCBuaWNodCBtZWhyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIb2VsemVybmUgU2Vuc2UgYXVzIE1ldGFsbCAoQnJhbndlbiwgIDMuIERleiAxOTk4LCAwMDowODoyMSk6Cgo+dW50IHNlbnNlCkR1IGZ1ZWhsc3QgRGljaCBtaXQgRGVpbmVyIFdhZmZlIG5pY2h0IHNlaHIgd29obC4KRXMgaGFuZGVsdCBzaWNoIHVtIGVpbmUgZWlnZW50bGljaCBnYW56IG5vcm1hbGUgU2Vuc2UgZnVlciBkaWUgTWFoZC4KRXJzdGF1bmxpY2ggaXN0IGJsb3NzLCBkYXNzIG5pY2h0IG51ciBkZXIgU3RpZWwgc29uZGVybiBhdWNoIGRhcyBCbGF0dCBhdXMKSG9seiBnZWZlcnRpZ3Qgd3VyZGUuIFdlaWwgc2llIHRyb3R6ZGVtIGhvZWxsaXNjaCBzY2hhcmYgaXN0IGthbm5zdCBkdSBzaWUKendhciBhdWNoIGFscyBXYWZmZSBiZW51dHplbiwgYWJlciBkYSBzaWUgbmljaHQgZnVlciBkZW4gS2FtcGYgZ2ViYXV0IHdvcmRlbgppc3QgZHVlcmZ0ZSBzaWUgZWhlciB3ZW5pZyBkYWZ1ZXIgdGF1Z2VuLgoKPmlkZW50aWZpemllcmVbMzdtIFswbXNlbnNlCkRlbiBVbWdhbmcgbWl0IGRlciBTZW5zZSBzZWhlbiBkaWUgR29ldHRlciBuaWNodCBzbyBnZXJuZS4KRGllIFNlbnNlIGJlc3RlaHQgYXVzIE1ldGFsbC4KQXVzc2VyZGVtIGVudGRlY2tzdCBEdSBhbiBpaHIgZm9sZ2VuZGVzOgpQbG9ldHpsaWNoIHJpZWNoc3QgZHUgZ2FueiBkZXV0bGljaCBmcmlzY2ggZ2VtYWVodGVzIFdpZXNlbmhldS4KCgpEaWUgd3VuZGVyYmFyZSBNdXRhdGlvbiB2b24gSG9seiB6dSBNZXRhbGw/CgpFaW5lIHN0YXVuZW5kZSBCcmFud2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChEaWVkZXIsICAzLiBEZXogMTk5OCwgMDA6MzM6MzgpOgpbQWJlbnRldWVyOlRlcnJhbmFdIGhhdCBqZW1hbmQgbmUgaWRlZSB3byBpY2ggZWluIGdsb2Vja2NoZW4gaW0gVEkga2xvc3RlcgpbQWJlbnRldWVyOlRlcnJhbmFdIGZpbmRlbiBrYW5uPwpbVG9kOkxhcnNdIEVpbiBNb2VuY2ggZGVzIGR1bmtsZW4gT3JkZW5zIGhhdCBnZXJhZGUgVGVycmFuYSB1bWdlYnJhY2h0LgoKRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqKnNldWZ6KiogKFplciwgIDMuIERleiAxOTk4LCAwNzo1MzoxNSk6CkRlciBLaWxsZXJwb3BlbCBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW4gS2lsbGVycG9wZWwga29tbXQgYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKipzZXVmeioqIChaaW5vLCAgMy4gRGV6IDE5OTgsIDA3OjU1OjI1KToKfiMhIHJuPVplciBydD05MTI2NzE1OTUgcmc9c2NobWFycm4KfiMhIHRpZD05MTI2NzE1OTUKU29sYW5nZSBlcyBudXIgS2lsbGVycG9wZWwgc2luZCwgZ2VodHMgamEgbm9jaCwgZGEga2FubiBtYW4gZGllIEJvbnVzYW5ncmlmZmUKbmFjaCBuZW0gVm9sbHN0cmVja2VyLVRvZGVzc3Rvc3MgZ2xlaWNoIG5vY2ggYW53ZW5kZW4gOikKWmlubwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXMgbXVzc3RlIGphIHNvIGtvbW1lbiA7LSkgKE1vcmdvdGgsICAzLiBEZXogMTk5OCwgMDk6MjQ6MzUpOgpFVkVOVC1VS0FUOSA6IE5haXJvbGYgaGF0IGRlbiBQb3J0YWxyYXVtIGJldHJldGVuLgpbVG9kOkxhcnNdIEVpbiBTYWV1cmVkYWVtb24gaGF0IGdlcmFkZSBOYWlyb2xmIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNhZXVyZWRhZW1vbl0gTWlzdC4gSmV0enQgaXN0IG1laW5lIFNhZXVyZSBtaXQgRGVpbmVtIEJsdXQgdmVyc2F1dC4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRXMgbXVzc3RlIGphIHNvIGtvbW1lbiA7LSkgKE5vbm5lLCAgMy4gRGV6IDE5OTgsIDA5OjI5OjI4KToKfiMhIHJuPU1vcmdvdGggcnQ9OTEyNjc3MDc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEyNjc3MDc1CnN0ZWxsIG4gd2FybnNjaGlsZCBhdWY6IEFiIGhpZXIgbnVybm9jaCBmdWVyIEtsZXJpa2VycyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFcyBtdXNzdGUgamEgc28ga29tbWVuIDstKSAoTW9yZ290aCwgIDMuIERleiAxOTk4LCAwOTozMTowMik6Cn4jISBybj1Ob25uZSBydD05MTI2NzczNjggcmc9c2NobWFycm4KfiMhIHRpZD05MTI2NzcwNzUKaWNoIGhhdHRlIGdlZGFjaHQgemF1YmVyZXIgd2FlcmVuIHNvIG9tbmlwb3RlbnQsIGRhc3Mgc2llIG5peCBkYWhpbnJhZmZlbgprb2VubnRlLiBuYWphLCBtZWluZSB2aWVjaGVyIGhhYmVuIG1hbCB3aWVkZXIgZGFzIGdlZ2VudGVpbCBiZXdpZXNlbgoqKmtpY2hlcioqIAoKTSogdGFldHNjaGVsdCBOYWlyb2xmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSG9lbHplcm5lIFNlbnNlIGF1cyBNZXRhbGwgKEJhYm9vbiwgIDMuIERleiAxOTk4LCAxMjo0MzozMyk6Cn4jISBybj1CcmFud2VuIHJ0PTkxMjY0MzcwMSByZz1zY2htYXJybgp+IyEgdGlkPTkxMjY0MzcwMQpEYSBkaWUgU2Vuc2UgbXVkdGVjaG5pc2NoIGVpbiBTY2h3ZXJ0IGlzdCwgd2lyZApmdWVyIHNpZSBwZXIgZGVmYXVsdCBhbHMgTWF0ZXJpYWwgTWV0YWxsIGFuZ2Vub21tZW4uCld1ZXJkIGljaCBqYSBnZXJuZSBhZW5kZXJuLCBhYmVyIGRhcyB2b24gbWlyIGdld3VlbnNjaHRlIE1hdGVyaWFsIGV4aXN0aWVydApzb3dlaXQgaWNoIHdlaXNzIGltbWVyIG5vY2ggbmljaHQuIEljaCBoYWJzIGphIGF1Y2ggZXJzdCBhdWYgZGVyIGxldHplbiBQYXJ0eQpiZWFudHJhZ3QuIDotKQoKQmFCT09uKCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmlzIGphIHNpbm5pZy4uLiAoQXJhdGgsICAzLiBEZXogMTk5OCwgMTU6MTk6MTIpOgpmaW5nZXIga2FybHNydWhlCgpLYXJsc3J1aGUgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IE1hbm5oZWltLgpFaW5nZWxvZ2d0IHNlaXQ6IERpZSwgIDEuIERleiAxOTk4LCAxNTowNzo1MQpWb2xsZXIgTmFtZTogS2FybHNydWhlIGRhcyBibGluZGUgS2FldHpjaGVuClJhc3NlOiBGZWxpbmUsICBHaWxkZTogS2F0emVua3JpZWdlciwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogMDE6MzA6MDAsICAgU3BpZWxlcmxldmVsOiAxLCAgIEdpbGRlbmxldmVsOiAxCkRhdHVtIGRlcyBlcnN0ZW4gTG9naW46IERpZSwgIDEuIERleiAxOTk4LCAxNTowNzozNQoKQXJhdGgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBpcyBqYSBzaW5uaWcuLi4gKE1vcmdvdGgsICAzLiBEZXogMTk5OCwgMTU6MjY6MjMpOgp+IyEgcm49QXJhdGggcnQ9OTEyNjk4MzUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEyNjk4MzUyCkRvcnRtdW5kIGlzdCBuaWNodCBhbndlc2VuZC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogdGhvci5DaGVtaWUuVW5pLURvcnRtdW5kLkRFIFtEb3J0bXVuZF0uClp1bGV0enQgYXVzZ2Vsb2dndDogRG9uLCAgMy4gRGV6IDE5OTgsIDE1OjI1OjQ3ICgwMDowMDoxMCkKVm9sbGVyIE5hbWU6IERvcnRtdW5kIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIKUmFzc2U6IEhvYmJpdCwgIEdpbGRlOiBBYmVudGV1cmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAwMDowMDoxMiwgICBTcGllbGVybGV2ZWw6IDEKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogRG9uLCAgMy4gRGV6IDE5OTgsIDE1OjI1OjI2CkUtTWFpbC1BZHJlc3NlOiBub25lCgpTbyBiZXNzZXIgPz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJlZ3J1ZXNzdW5nZW4gLi4gKEthcnRvZmZlbCwgIDMuIERleiAxOTk4LCAxNzoyNTo1OSk6CldhcyBtYW4gc2ljaCBzbyBhbGxlcyBnZWZhbGxlbiBsYXNzZW4gbXVzczoKQmVuZGVpZ2lkIGtudWRkZWx0IERpY2ggZ3JhZGV6dSBmcml0dGllcmVuZCBhdXMgZGVyIEZlcm5lLiAgICAgClBoeWdvcyBrbnVkZGVsdCBEaWNoIGJpcyBkYXMgZGllIFB1ZXJyZWZsb2NrZW4gZmxpZWdlbi4gVW5kIGRhcyBhdXMgZGVyIEZlcm5lLgoKJ1RvZmZlbCAtIHRvdGFsIHplcmtudWRkZGVsdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHJpZ2dlcj8gKEFuYXRvbCwgIDMuIERleiAxOTk4LCAxNzo1MzoyNCk6CltBbGxnZW1laW46U3JhYmkgZXJzdHVlcm10IGRhcyBNb3JnZW5HcmF1ZW4gISEhXQpbPE1hc3RlUj46U3RpbmcgdmVybGFlc3N0IGFscyBMZXR6dGVyIGRpZSBFYmVuZSAnR2llc3NlbicsIHdvcmF1ZiBkaWVzZSBzaWNoCiAgICAgICAgICBpbiBlaW5lbSBCbGl0eiBva3RhcmluZW4gTGljaHRzIGF1ZmxvZXN0Ll0KU3RpbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpOZSwgaXMga2xhciA6KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplaW5mYWNoIG51ciBzY2hvZW4gKFplciwgIDMuIERleiAxOTk4LCAyMjo1MDoxMyk6CiAgLi4uLm5vcm1hbC9FaXNlbGZlbnNjaHcgRWlzZWxmZW53YWVjaCA6IERpY2guLi4uLi4uLi4gKioqUyoqSCogPC0gdmVyZmVobHQKICAuLi4ubm9ybWFsL0Vpc2VsZmVuc2NodyBFaXNlbGZlbndhZWNoIDogRGljaC4uLi4uLi4uLiAqKipTKipIKiA8LSB2ZXJmZWhsdAoKWmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXdWNoZXIgKE1pbmRibGFkZSwgIDQuIERleiAxOTk4LCAwMDo1NjowNyk6CgpEZXIgVHJvZWRsZXIgc2FndDogRGllIEVudHNvcmd1bmcgZGVzIFZhbXBpcnNjaHdlcnRzIHd1ZXJkZSBEaWNoIDI1MDAwCkRlciBUcm9lZGxlciBzYWd0OiBNdWVuemVuIGtvc3RlbiwgYWJlciBEdSBoYXN0IG51ciAwIE11ZW56ZW4uCgpQdWgsIG5vY2htYWwgR2x1ZWNrIGdlaGFidCE7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSkFBQUFBQUFBQUFBQUEgKEx1ZywgIDQuIERleiAxOTk4LCAwMTo0MTo0NCk6CgpOYSBzb3dhcywKClBhZHJlaWMgdGVpbHQgRGlyIG1pdDogZHUgdHVzdCBtaXIgbGVpZC4uLgoKQ29vb29vb2wKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFciBtdWVzc3RlIGVzIGJlc3NlciB3aXNzZW4uLi4gKEx1ZywgIDQuIERleiAxOTk4LCAwMTo0NDo1Myk6CgpOYSBlaHJsaWNoCgpQYWRyZWljIHRlaWx0IERpciBtaXQ6IGdpYnMgd2VuaWdzdGVucyB6dSA6KQoKTmllCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG9mZm51bmdzbG9zIChMdWcsICA0LiBEZXogMTk5OCwgMDE6NTA6MjcpOgoKVHNzLAoKUGFkcmVpYyB0ZWlsdCBEaXIgbWl0OiBuYWphLi4gbmVuIHZlcnN1Y2ggd2FyIGVzIHdlbmlnc3RlbnMgbm9jaG1hbCB3ZXJ0IDopCgpHbGF1YiBpY2ggbmljaHQKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZWluZmFjaCBudXIgc2Nob2VuIChCb2luZywgIDQuIERleiAxOTk4LCAxMTozMzowMik6Cn4jISBybj1aZXIgcnQ9OTEyNzI1NDEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEyNzI1NDEzCmhuZ2dsYmwuLi4vR25hZ25hZ25hIGh1cmdsIDogLi4uLipIVSpnZyoqKnQuLi4uLiBXZW4/ICoqKioqKiA8LT4gQnJvZXNlbCEKClN0aW1tdC4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV3Vyc3RlbCBrYXVmIGRlaW5lbSBQYXBhZ2VpZW4gbWFsIG5lIEJyaWxsZSAoTWVuYWNlLCAgNC4gRGV6IDE5OTgsIDExOjM4OjU4KToKV3Vyc3RlbCBrb21tdCBhbi4KR3JldGwgZmxhdHRlcnQgaGVyZWluLgpHcmV0bCBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIGVpbiBXZWlzc2tlaGxjaGVuLCBlaW4gTHVjaHMgdW5kIGVpbgpHcmV0bCBrcmFlY2h6dDogRmlzY2hvdHRlciAuLi4KCld1cnN0ZWwgZ2VodCBhdWYgZGllIFRvaWxldHRlLgpHcmV0bCBmbGF0dGVydCBXdXJzdGVsIGhpbnRlcmhlci4KV3Vyc3RlbCBrb21tdCBhbi4KR3JldGwgZmxhdHRlcnQgaGVyZWluLgpHcmV0bCBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIE1lcmN1dGlvIC4uLgpXdXJzdGVsIGdlaHQgbmFjaCBOb3JkZW4uCkdyZXRsIGZsYXR0ZXJ0IFd1cnN0ZWwgaGludGVyaGVyLgpzY2hhdQpFaW4gc2NoYWViaWdlciBrbGVpbmVyIFNjaG5lbGxpbWJpc3MsIHdpZSBtYW4gaWhuIGhhZXVmaWcgaW4gZGVyIE5hZWhlIHZvbgpIYXVwdHZlcmtlaHJzd2VnZW4gZmluZGV0LiBFaW5lIG11ZXJyaXNjaGUgdW5kIHNjaGxlY2h0IGJlemFobHRlIEF1c2hpbGZza3JhZnQKc3RlaHQgaGludGVyIGRlciBUaGVrZS4gSW0gT3N0ZW4gZ2VodCBlcyB6dSBkZW4gVG9pbGV0dGVuLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4gdW5kIG5vcmRlbi4KRWluIEt1cGZlcnJpbmcuCkVpbiBlaW5hcm1pZ2VyIEJhbmRpdC4KRGllIFRvcC1MaXN0ZSwgVG9wLVNwaWVsZXJsaXN0ZSB1bmQgVG9wLVNlaGVybGlzdGUuCgpXZWRlciBNZXJrdXRpbywgbm9jaCBXZWlzc2tlaGxjaGVuLCBMdWNocyBvZGVyIEZpc2Nob3R0ZXIgaGllciEKCldpZSBnZXNhZ3Q6IFd1cnN0ZWwga2F1ZiBkZWluZW0gUGFwYWdlaWVuIG1hbCBuZSBCcmlsbGUhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSYXNjYWxzIGd1dGUgYWx0ZSBaZWl0OiAoTmViLCAgNC4gRGV6IDE5OTgsIDEyOjI3OjQwKToKUmFzY2FsIHNhZ3Q6IG1lbnNjaCB3YXIgZGFzIGxlYmVuIGhpZXIgZWluZmFjaCBhbHMgaWNoIGFuZmluZyBtaXQgZGVtIG1nClJhc2NhbCBzYWd0OiBkYSBnYWIgZXMga2VpbmUgZnJhdWVuIGF1c3NlciB6ZXBoeXIgOikKUmFzY2FsIHNhZ3Q6IHVuZCB3YXMgaXN0IGpldHp0IHNjaGxpbW1lciBhbHMgaW0gYWx0ZW4gUm9tIDopClJhc2NhbCBzYWd0OiB1bmQgbWl0IGRlbSBFcmdlYm5pcyBkYXMgc2ljaCA4MCAlIGRlciBEZXBwZW4gbG9lc2NoZW4gc3BpZWxwYXVzZQpSYXNjYWwgc2FndDogc2V0emVuIG9kZXIgR2VydWVjaHRlIGVyemFlaGxlbiBzaWUgaGFldHRlbiBkaWUgRnJhdWVuClJhc2NhbCBzYWd0OiBydW1iZWtvbW1lbiA6KQogLi4uLi4uLi4uClJhc2NhbCBzYWd0OiB3ZW5uIGljaCBlaHJsaWNoIGJpbiBmaW5kIGljaCBkYXMgc3VwZXIgOikKRHUgZ3JpbnN0IFJhc2NhbCBhbi4KUmFzY2FsIGdyaW5zdCBEaWNoIGFuLgpEdSBzYWdzdDogbW1oLCBkYXMgbXVzcyBpY2ggZWlnZW50bGljaCBwb3N0ZW4gaW4gInNjaG1hcnJuIiA7KQoKVW5kIGljaCB0dXMgYXVjaCA7KQpOZWIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcmdsLi4gZGFzIE1VU1MgamV0enQgc2VpbiAoTW9yZ290aCwgIDQuIERleiAxOTk4LCAxMjozMDo0NCk6CltNYWdpZXI6UGFkcmVpY10gYXJnLi4gbWFuIHNvbGx0ZSBhdWNoIGRyYW4gZGVua2VuIGRhcyBzcGllbGVyIGluIHRyYW5zcG9ydGVybgpbTWFnaWVyOlBhZHJlaWNdIGVpbnNjaGxhZmVuIGtvZW5uZW4gdW5kIGF1ZndhY2hlbiBrb2VubmVuIHdlbm4gZGllc2UgYmVyZWl0cwpbTWFnaWVyOlBhZHJlaWNdIGRlc3RydWN0ZXQgc2luZCAqc2V1ZnoqIDwxMjoyMjowMD4KW01hZ2llcjpNb3Jnb3RoXSBvaGhoLCBoYXN0IGR1IGV0d2EgZWluZW4gZmVobGVyIGdlbWFjaHQ/IDwxMjoyMjoyND4KW01hZ2llcjpQYWRyZWljXSB3ZW5uIHNpZSBkYW5uIGF1ZndhY2hlbiBzdGVoZW4gc2llIHp3YXIgaW0gdHJhbnNwb3J0ZXJ0LCBhYmVyCltNYWdpZXI6UGFkcmVpY10gZGVyIHdpcmQgbmV1Z2VsYWRlbiB1bmQgaGF0IGRhbm4ga2VpbiBlbnZpcm9ubWVudCBtZWhyCltNYWdpZXI6UGFkcmVpY10gPDEyOjIyOjI4PgpbTWFnaWVyOkJvaW5nXSBwYWRyZWljIG1hY2h0IGRvY2gga2VpbmUgZmVobGVyIDwxMjoyMjozMj4KW01hZ2llcjpCb2luZ10gZGFzIGhhYmVuIHdpciBkb2NoIHZvcmhpbiBlcnNjaG9lcGZlbmQgZ2VrbGFlcnQgOikgPDEyOjIyOjQyPgpbTWFnaWVyOk1vcmdvdGhdIGFybWVzIHBhZHJlaWMgPDEyOjIyOjQ2PgpbTWFnaWVyOkJlbmRlaWdpZF0gdGphLCBvZGVyIGVpbnNjaGxhZmVuLCB1bmQgZGFubiBnYW56IHdvYW5kZXJzIGF1ZndhY2hlbi4uLgpbTWFnaWVyOkJlbmRlaWdpZF0gbWFuIGthbm4gbmljaHQgYW4gYWxsZXMgZGVua2VuIDwxMjoyMjo0OD4KW01hZ2llcjpQYWRyZWljXSBib2luZyB1bmQgd2VubiBpaHIgZXMgbm9jaCBmdWVuZnVuZHJlaXNzaWd0YXVzZW5kbWFsCltNYWdpZXI6UGFkcmVpY10gYmVoYXVwdGV0LCBpY2ggaGFiIGVzIGltbWVyIG5vY2ggbmllIHNvIGdlc2FndCA6KSA8MTI6MjI6NTY+CltNYWdpZXI6QmVuZGVpZ2lkXSBzaW5uZ2VtYWVzcyA7KSA8MTI6MjM6MTE+CltNYWdpZXI6KEtvb21pKV0gOmRlbmt0IC4gbyBPIChqZXR6dCB3YWNoZW4gYWxsZSBhdWYpIDwxMjoyMzoxMT4KLS1tZWhyLS0oNDMlKSBBTkZBTkcgQ2FsaW1lcmEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEKISEhCltNYWdpZXI6Qm9pbmddIG5laW4sIG5laW4sIGRhcyBtdXNzdCBkdSBnYXIgbmljaHQgc2FnZW4sIGplZGVyIHdlaXNzIGRhcyA6KQpbTWFnaWVyOkJvaW5nXSA8MTI6MjM6MTM+CltNYWdpZXI6TW9yZ290aF0gYWNoIGphLi4uYWxzbyBpY2ggd3Vlc3N0ZSBqZW1hbmRlbiwgZGVyIGVpbiBsb2dmaWxlIGRhdm9uIGhhdApbTWFnaWVyOk1vcmdvdGhdIDwxMjoyMzoxNT4KW01hZ2llcjpQYWRyZWljXSBhbHNvIGRhcyB3aWxsIGljaCBzZWhuIG1vcmdvdGggaWNoIHdldHRlIGRhcyBzdGVodCBkYSBuaWNodApbTWFnaWVyOlBhZHJlaWNdIF9zb18gZHJpbiA8MTI6MjM6NDk+CltNYWdpZXI6QmVuZGVpZ2lkXSBuZWluLiB3b3J0d29lcnRsaWNoIG5pY2h0LiBhYmVyIGRpZSBkZXV0c2NoZSB1ZWJlcnNldHp1bmcKW01hZ2llcjpCZW5kZWlnaWRdIGlzdCBfc29fIDwxMjoyNDoxNT4KW01hZ2llcjpQYWRyZWljXSBpY2ggYmluIGphIG5pY2h0IGRlciBQYXBzdCAodW5kIHNlbGJzdCBkZXNzZW4gdW5mZWhsYmFya2VpdApbTWFnaWVyOlBhZHJlaWNdIGJlcnVodCBqYSBhdWYgNiBmYWVsc2NodW5nZW4gZWhlbWFsaWdlciBLaXJjaGVucmVjaHRzYnVlY2hlcgpbTWFnaWVyOlBhZHJlaWNdIDopIDwxMjoyNDozMj4KW01hZ2llcjpCb2luZ10gYWNoIGR1IGJpc3QgZ2FyIG5pY2h0IGRlciBwYXBzdD8gPDEyOjI0OjQ4PgpbTWFnaWVyOk1vcmdvdGhdIEJMQVNQSEVNSUUgISEhIDwxMjoyNDo1MD4KW01hZ2llcjpCb2luZyBpc3QgamV0enQgYWJlciBlbnR0YWV1c2NodC4gPDEyOjI0OjUyPl0KW01hZ2llcjpNb3Jnb3RoXSBkdSBoYXN0IGdvdHRlc2xhZXN0ZXJ1bmcgYmV0cmllYmVuIHBhZHJlaWMgPDEyOjI1OjAwPgpbTWFnaWVyOlBhZHJlaWNdIG1vcmdvdGgsIGRhcyBrYW5uIG1hbiBlaW5kZXV0aWcgbmFjaHdlaXNlbiA8MTI6MjU6MDY+CltNYWdpZXI6TW9yZ290aF0gZ2VoIHNvZm9ydCBiZWljaHRlbiA8MTI6MjU6MDY+CltNYWdpZXI6UGFkcmVpY10gMyBkZXIgZG9rdW1lbnRlIGtvbW1lbiBkaXJla3QgYXVzIGVpbmVyIGZhZWxzY2hlciB3ZXJrc3RhdHQKW01hZ2llcjpQYWRyZWljXSBkaWUgYW5kZXJlbiAzIGtvbW1lbiBhdXMgZWluZXIgYWJzY2hyaWZ0IGVpbmVyCltNYWdpZXI6UGFkcmVpY10gZmFlbHNjaGVyd2Vya3N0YXR0IDwxMjoyNTozND4KW01hZ2llcjpQYWRyZWljXSBoYWIgZGEgdm9yZ2VzdGVybiBhdWYgZGVtIGRpZXMgbmUgaW50ZXJlc3NhbnRlIFZvcmxlc3VuZyB6dQpbTWFnaWVyOlBhZHJlaWNdIGdlaG9lcnQgOikgPDEyOjI1OjUwPgpbTWFnaWVyOkJlbmRlaWdpZF0gZGFzIG1pdCBkZW0gUGFwc3QgdW5kIGRlciB1bmZoZWxiYXJrZWl0IGlzdCBibG9zcyBuZQpbTWFnaWVyOkJlbmRlaWdpZF0gZGVmaW5pdGlvbiB1bmQgYXVmIGdsYXViZW5zZnJhZ2VuIGJlc2NocmFlbmt0LiBkYXMgbWl0IHBhKgpbTWFnaWVyOkJlbmRlaWdpZF0gdW5mZWhsYmFya2VpdCBpc3QgZGFnZWdlbiBOYXR1cmdlc2V0eiA8MTI6MjY6MDY+CltNYWdpZXI6UGFkcmVpY10gYmxhIGJsdWIgYmxhIGJsLi4uIDwxMjoyNjoyND4KW01hZ2llcjpCZW5kZWlnaWQgbmlja3QgYmVzdGltbXQuIDwxMjoyNjozND5dCltNYWdpZXI6UGFkcmVpY10gd2llIHdhciBkYXMsIGtvbm50ZSBtYW4gbmljaHQgc29nYXIgYmV3ZWlzZW4sIGRhcyBkaWUgYW56YWhsCltNYWdpZXI6UGFkcmVpY10gZGVyIGJ1Z3MgZXhwb25lbnRpZWxsIHp1ciBncm9lc3NlIGVpbmVzIHByb2dyYW1tcyB6dW5pbW10Li4uCltNYWdpZXI6UGFkcmVpY10gPDEyOjI2OjUwPgpbTWFnaWVyOk1vcmdvdGhdIHdpZSBwYWRyZWljLCBzdGVodCBkaXIgZGFzIHdhc3NlciBzY2hvbiBzbyBob2NoPyA8MTI6MjY6NTY+CltNYWdpZXI6QmVuZGVpZ2lkXSBobS4gZGFubiBtdWVzc3RlIGRhcyBib290IGFiZXIgREVVVExJQ0ggbGFlbmdlciBzZWluLCB3ZW5uCltNYWdpZXI6QmVuZGVpZ2lkXSBkYSBlaW4gR0FOWkVSIEJ1ZyB2b24gZGlyIGRyaW4gaXN0LiA8MTI6Mjc6MjA+CltNYWdpZXI6TW9yZ290aCByb3RmbHQgPDEyOjI3OjU4Pl0KW01hZ2llcjooUGF0cnluKV0gZmFlbGx0IG1pciBqYSBhdWNoIGdyYWQgYXVmLCBkYXNzIGRlciBwYXBzdCB6dSBkZW4gcGEqCltNYWdpZXI6KFBhdHJ5bildIGdlaG9lcnQgOikgPDEyOjI4OjE3PgpbTWFnaWVyOk1vcmdvdGggd2FlbHp0IHNpY2ggYXVmIGRlbSBCb2RlbiA8MTI6Mjg6MzM+XQoKc29ycnksIGF1Y2ggd2VubnMgZGVyIG1hZ2llcmthbmFsIGlzdCwgYWJlciBEQVMgbXVzcyBzZWluIAoKTW9yZ290aCwgZmFlbGx0IHZvciBMYWNoZW4gZmFzdCB2b20gU3R1aGwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRGllZGVyLCAgNC4gRGV6IDE5OTgsIDEzOjA5OjQxKToKW0FsbGdlbWVpbjpLYWZmXSB3aWUga29tbSBpY2ggYXVzIGRlbSB3ZWloZXIgcmF1cz8KW0FsbGdlbWVpbjpSYXJkaWFuXSBlaW5nZWJyb2NoZW4/CltBbGxnZW1laW46S2FmZl0ganVwcApbQWxsZ2VtZWluOlJhcmRpYW5dIGJlaWxlaWQhCltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIEthZmYgdW1nZWJyYWNodC4KCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoTW9yZ290aCwgIDQuIERleiAxOTk4LCAxMzoxMDo1Myk6Cn4jISBybj1EaWVkZXIgcnQ9OTEyNzc2OTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEyNzc2OTgxCnNjaG9lbiwgd2llZGVyIGVpbiBiZWlzcGllbCwgd2llIG1hbiBzcGllbGVyIG5pY2h0IGtpbGxlbiBzb2xsdGUuIGRhIGZlaGx0CmRvY2ggZ2xhdHQgZGllIG1lbGR1bmcsIHdhcyBpaG4gZ2VraWxsdCBoYXQuCmRhIHNvbGwgZGVyIHp1c3RhZW5kaWdlIG1hZ2llciBtYWwgYmFzdGVsbgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBWZXJzdGVoZW4gc2ljaCEgOykgKE1lbmFjZSwgIDQuIERleiAxOTk4LCAxMzo0MjoxNik6Cld1cnN0ZWwga29tbXQgYW4uCkdyZXRsIGZsYXR0ZXJ0IGhlcmVpbi4KRGVubmlzIGtyYWVjaHp0OiAuLi4ga3Jycm9vb2FhYSAuLi4gSGFsbG8gR3JldGwgLi4uCkdyZXRsIGtyYWVjaHp0OiAuLi4ga3Jycm9vb2FhYSAuLi4gSGFsbG8gRGVubmlzIC4uLgoKTmEgbG9zIERlbm5pcywgYmlldGUgR3JldGwgZG9jaCBEZWluZSBGcmV1bmRzY2hhZnQgYW4hIDspCgpNZW5hY2UgZ3JpbnN0IGltbWVybm9jaCB1ZWJlciBzZWluZW4gUGFwYWdlaSA6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWUgVmVyc3RlaGVuIHNpY2ghIDspIChDYWxpbWVyYSwgIDQuIERleiAxOTk4LCAxNTowNToxMyk6Cn4jISBybj1NZW5hY2UgcnQ9OTEyNzc4OTM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEyNzc4OTM2CgoqZ3J1ZWJlbCogCgphbHNvIGljaCBpY2ggZmluZCBkYXMgbmljaHQga29taXNjaAoKZWNodCBuaWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG1tLi4uIChMaWxsZWJyb3IsICA0LiBEZXogMTk5OCwgMjE6Mzc6NTYpOgpEZWluIFJpbmcgemllaHQgZGllIEZsYW1tZW4gYXVmIHNpY2ggdW5kIGJld2FocnQgRGljaCBzbyB2b3IgU2NoYWRlbi4KTWF0cml4OiBMaWxsZWJyb3Igc2llaHQgcmVjaHQgbWl0Z2Vub21tZW4gYXVzLgpEdSBoYXN0IGpldHp0IDk5IExlYmVuc3B1bmt0ZSB1bmQgMjIgS29uemVudHJhdGlvbnNwdW5rdGUuClZvcnNpY2h0OiAzMC4gRmx1Y2h0cmljaHR1bmc6IG4KCi4uLiBhbHNvIGRhcyBoYWIgaWNoIHdvaGwgc2VsYnN0IGJlbWVya3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFtYW5kYSBpc3Qgd2lya2xpY2ggbmljaHQgd2FlaGxlcmlzY2ggKFNoYW5uYXJhLCAgNS4gRGV6IDE5OTgsIDAxOjUxOjA4KToKdGVuLgpBbWFuZGEgZGllIEh1cmUuCkVpbiBNdWVsbHNjaGx1Y2tlci4KPiBBbWFuZGEgcHVkZXJ0IGlocmUgTmFzZS4KRWluIFBmbGFuemVua3JpZWdlciBzdGFtcGZ0IGhlcmVpbi4KQW1hbmRhIHNhZ3Q6IEhhbGxvIEVpbiBwZmxhbnplbmtyaWVnZXIhCkFtYW5kYSBzYWd0OiBXaWUgd2FlcnMgZGVubiBtaXQgdW5zLCBLbGVpbmVyPwoKU2hhbm5hcmEgZ3JpbnN0IGluIHNpY2ggaGluZWluIDgtKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSEhIRUVFWVlZWVlZWVkhIChBbmF0b2wsICA1LiBEZXogMTk5OCwgMDM6MDQ6NTEpOgp+IyEgb249QW5hdG9sIG90PTkxMjgyNzA4MyBvZz1hbGxnZW1laW5lcwp+IyEgcm49THVnIHJ0PTkxMjgyNzA0OSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTkxMjczOTIxNwoiRnJhdSIgaXN0IGZ1ZXIgZWluZSBFbWFuemUgZWluIEtvbXBsaW1lbnQuCgpOdWxwZSEgOikKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSEhIRUVFWVlZWVlZWVkhIChMdWcsICA1LiBEZXogMTk5OCwgMDM6NDg6NDApOgp+IyEgcm49QW5hdG9sIHJ0PTkxMjgyNzA5MSByZz1zY2htYXJybgp+IyEgdGlkPTkxMjczOTIxNwoKVGphZSBBbmF0b2wsCgpFeWUgb2YgdGhlIEJlaG9sZGVyCgpLCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVjaCBlaW4gbmV0dGVyIEJ1ZzogKEhhbmdvdmVyLCAgNS4gRGV6IDE5OTgsIDE2OjI1OjM0KToKICBEdSBncmVpZnN0IGRlbiBGZXVlcnJpZXNlbiBtaXQgZGVtIFZvbGxzdHJlY2tlciBhbi4KICBEdSB6ZXJzY2htZXR0ZXJzdCBkZW4gRmV1ZXJyaWVzZW4gaW4ga2xlaW5lIFN0dWVja2NoZW4uCkRlaW4gUmluZyB6aWVodCBkaWUgRmxhbW1lbiBhdWYgc2ljaCB1bmQgYmV3YWhydCBEaWNoIHNvIHZvciBTY2hhZGVuLgpEZWluIFJpbmcgZGVzIEZldWVycyB2ZXJzY2h3aW5kZXQgbWl0IGVpbmVtICpQVUZGKi4KICBEZXIgRmV1ZXJyaWVzZSB2ZXJmZWhsdCBEaWNoLgpNaXN0ISBEZXIgQW50aS1GZXVlci1SaW5nIGlzdCB2ZXJmbHVjaHQgd29yZGVuIQoKUm9jaHVzLCB1ZWJlcm5laG1lbiBTaWUuLi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBUkdMIChIaWJiZWxpZywgIDUuIERleiAxOTk4LCAxNzo0Mzo1Nik6CkRpZSBEb2dnZSBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW5lIERvZ2dlIGtvbW10IGFuLgpFaW5lIERvZ2dlIGtvbW10IGFuLgpFaW5lIERvZ2dlIGtvbW10IGFuLgoKKipncnVtbWVsKioKCkhpYmJlbGlnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIZWxsc2VoZXIgKEx1ZywgIDYuIERleiAxOTk4LCAwMTo1MTozNSk6CgpobSwKCkppZGR1IHRlaWx0IERpciBtaXQ6IHBhaGggZHUgbGllYnN0IG1pY2ggd29obCBkb2NoIG5pY2h0IDspCgoKU3RpbW10Ckx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHNzIChMdWcsICA2LiBEZXogMTk5OCwgMDE6NTM6MDEpOgoKU293YXMsCgpUaXRlbCBkZXMgQXJ0aWtlbHM6IExpbGxlYnJvciB0ZWlsdCBEaXIgbWl0OiB3YXMgaXN0IGRlbm4gc28gZG9vZj8KCkhhYiBpY2ggc28gbmljaHQgZ2VzY2hyaWViZW4uLi4KUklOR09PT09PUlJSUiwgd2FzIG1hY2h0IG1laW4gVEYgZGE/Ckx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhlbGxzZWhlciAoSmlkZHUsICA2LiBEZXogMTk5OCwgMDE6NTc6MjEpOgp+IyEgcm49THVnIHJ0PTkxMjkwOTA5NSByZz1zY2htYXJybgp+IyEgdGlkPTkxMjkwOTA5NQpKZXR6IGhhc3QgZHUgbWVpbmUgR2VmdWVobGUgdmVybGV0enQgOykKSmlkZHUsIGVpbnplaWxpZyBzbmlmZmVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGVsbHNlaGVyIChMdWcsICA2LiBEZXogMTk5OCwgMDE6NTc6NTMpOgp+IyEgcm49SmlkZHUgcnQ9OTEyOTA5NDQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEyOTA5MDk1CgpKdWh1dXV1dXUsIGdlcm4gZ2VzY2hlaGVuIQoKSGV1dGUgbWFsIGxpZWIKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIZWxsc2VoZXIgKEppZGR1LCAgNi4gRGV6IDE5OTgsIDAyOjAyOjE2KToKfiMhIHJuPUx1ZyBydD05MTI5MDk0NzMgcmc9c2NobWFycm4KfiMhIHRpZD05MTI5MDkwOTUKW3ZlcmFjaHRlIGx1Z10KWndpc2NoZW4gTHVnIHVuZCBEaXIgYmVzdGFuZCBkb2NoIGtlaW5lIEZyZXVuZHNjaGFmdC4KcGxvZWRlIHNhY2hlIDspCiBKaWRkdSwgZ2VybiB2ZXJsZXR6dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEhlbGxzZWhlciAoTHVnLCAgNi4gRGV6IDE5OTgsIDAyOjAzOjQ2KToKfiMhIHJuPUppZGR1IHJ0PTkxMjkwOTczNiByZz1zY2htYXJybgp+IyEgdGlkPTkxMjkwOTA5NQpUamFlLi4uCgpEYSBtdXNzdGUgbm9jaCB2aWVsIHVlYmVuLCBhYmVyIGRpZXNlIE11ZCBpc3QgcHJpbWEgZGFmdWVyLiBEZXIgR3JhZCBhbgptZW5zY2hlbnZlcmFjaHRlbmRlciBSdWVja3NpY2h0c2xvc2lna2VpdCBzcG9ybnQgbWljaCBpbW1lciB3aWVkZXIgYW4sIGRpZXNlCmhvaGUgTml2YWV1IG5vY2ggenUgZXJyZWljaGVuLi4uCgpBRGgKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBYmJpbGRlciwgZGllIEVwc2Ugc2FtbWVsbj8gKE5lYiwgIDYuIERleiAxOTk4LCAxODozNTozMCk6CkdyYWQgZWJlbiBpbiBPcmtoYXVzZW46CgpBdWYgZGVyIFN0cmFzc2UgZGVyIEhvZmZudW5nLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCkRhcyBBYmJpbGQgZWluZXMgT3Jrcy4KPiB3dQpEdSB3aXJrc3QgZWluIFd1bmRlci4KRWluIEFiYmlsZCBlaW5lcyBPcmtzIHNpZWh0IGF1ZiB3dW5kZXJiYXJlIFdlaXNlIGV0d2FzIGVyZmFocmVuZXIgYXVzLgoKQWggamEgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVzIGlzdCBuaWNodCB6dSBmYXNzZW4sIHR5cGlzY2ggTW8qLi4uIChUaHVmaGlyLCAgNy4gRGV6IDE5OTgsIDA5OjA0OjA0KToKRGVyIEthcmF0ZW9yayBmYWVsbHQgdG90IHp1IEJvZGVuLgogIC4uLi5LYXR6ZW4vQmxpdHouLi4uLi4uIE9yay4uLi4uLi4uLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHNlaHIgaGFydAogIC4uLi5ub3JtYWwvT3Jrc2Nod2VydC4uIE9yay4uLi4uLi4uLi4gOiBEaWNoLi4uLi4uLi4uICpCdSoqKioqIDwtIGdldHJvZmZlbgpFaW4gT3JrIG5pbW10IGRpZSBMZWljaGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWnV3ZW5pZyBBcnRpa2VsISAoQmVuZGVpZ2lkLCAgNy4gRGV6IDE5OTgsIDA5OjQxOjI2KToKfiMhIG9uPUxpbGxlYnJvciBvdD05MTMwMDAxMDkgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUx1ZyBydD05MTMwMDAwMjcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MTMwMDAwMjcKRGVtIGthbm4gaWNoIG51ciB6dXN0aW1tZW4sIGVpbmUgRnJlY2hoZWl0LCB3YXMgZmFlbGx0IEV1Y2ggZWluLgoKTGlsbGVicm9yICh3aWxsIHdhcyB6dSBsYWNoZW4gaGFiZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadXdlbmlnIEFydGlrZWwhIChCZW5kZWlnaWQsICA3LiBEZXogMTk5OCwgMDk6NDE6MzQpOgp+IyEgb249THVnIG90PTkxMzAwMDAyNyBvZz1hbGxnZW1laW5lcwoKSXN0IGRpZSBTY2hyZWliZmF1bGhlaXQgYXVzZ2Vicm9jaGVuPyBLYXVtIHdhcyB6dSBsZXNlbiwgd2VubiBtYW4gcnVtaWRlbHQuCgpUc3MKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXByZXNzaW9uZW4gKEJlbmRlaWdpZCwgIDcuIERleiAxOTk4LCAwOTo0MTo0MCk6Cn4jISBvbj1MdWcgb3Q9OTEyOTA5MDM3IG9nPWFsbGdlbWVpbmVzCgpFcyBpc3QgYWxsZXMgc28gZnVyY2h0YmFyIGRlcHJpbWllcmVuZC4KClNldWZ6Ckx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBISEhFRUVZWVlZWVlZWSEgKEJlbmRlaWdpZCwgIDcuIERleiAxOTk4LCAwOTo0MTo0NCk6Cn4jISBvbj1MdWcgb3Q9OTEyODI3MDkyIG9nPWFsbGdlbWVpbmVzCn4jISBybj1NZW5hY2UgcnQ9OTEyNzY5ODExIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTEyNzM5MjE3ClNvc28KCkJhaCBIdW1idWcuIE1pciBkb2NoIGVnYWwsIHdhcyBmdWVybiBSTD8KCklramEKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhISEVFRVlZWVlZWVlZISAoQmVuZGVpZ2lkLCAgNy4gRGV6IDE5OTgsIDA5OjQxOjQ4KToKfiMhIG9uPUx1ZyBvdD05MTI4MjcwNDkgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUFsaW5lIHJ0PTkxMjc2NTk1OCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTkxMjczOTIxNwpXYWFhYWFhYWFhYWFycnJyZ2dnZ2hoaGhoaGhoaGhoaGhoaGghCgpBbGluZSwgRHUgU3VwcGVuaHVobiwgRHUgRnJhdSEKUm9tYW50aXNjaD8gSWNoPyBXb2hsIHp1dmllbCBUaXRhbmljIGdlc2VoZW4/IFN1Y2ggRGlyIG5lbiBFaXNiZXJnLi4uCkFsc28gd2lya2xpY2guLi4KRmF1Y2gKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSEhIRUVFWVlZWVlZWVkhIChCZW5kZWlnaWQsICA3LiBEZXogMTk5OCwgMDk6NDE6NTIpOgp+IyEgb249UGFtcGVycyBvdD05MTI3ODY2NDkgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUx1ZyBydD05MTI3MzkyMTcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MTI3MzkyMTcKV2VyIGlzdCBMaWFyYT8KClBhbXBlcnMuIElnbm9yYW50LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhISEVFRVlZWVlZWVlZISAoQmVuZGVpZ2lkLCAgNy4gRGV6IDE5OTgsIDA5OjQxOjU4KToKfiMhIG9uPU1lbmFjZSBvdD05MTI3Njk4MTEgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUx1ZyBydD05MTI3MzkyMTcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MTI3MzkyMTcKYSkgZGFzIHdhciB3b2hsIExpYXJhIHNlbGJlciAoUXVlc3RzIGdlbG9lc3QpISBBbHNvIGxhc3NlbiB3aXIgZGFzIG1pdCBkZXIgClNlbGJzdGxvZXNjaHVuZyEgOikKCmIpIE1laW5lcyBXaXNzZW5zIE5pZW1hbmQgYXVzIGRlbSBNb3JnZW5HcmF1ZW4sIHNvbmRlcm4gcHJpdmF0LiAoaWNoIGhhYiBtYWwKZ2VydWVjaHRld2Vpc2UgZ2Vob2VydCwgZGFzcyBlcyBhdWNoIG5vY2ggZWluZSBXZWx0IGF1c3NlcmhhbGIgZGVzIApNb3JnZW5HcmF1ZW5zIGdlYmVuIHNvbGwuLi4pIAoKYykgZGFzIHNvbGx0ZSBzaWUgd29obCBzZWxiZXIgdmVyYW5sYXNzZW4sIG1laW5zdCBEdSBuaWNodCBhdWNoPwoKZCkgc2FnIGljaCBqZXR6dCBOaWNodHMgenUuLi4KCk1lbmFjZSB2ZXJtaXNzdCBzZWluZSBGcmV1bmRpbiBMaWFyYSBhdWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSEhIRUVFWVlZWVlZWVkhIChCZW5kZWlnaWQsICA3LiBEZXogMTk5OCwgMDk6NDI6MDQpOgp+IyEgb249QWxpbmUgb3Q9OTEyNzY1OTU4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1MdWcgcnQ9OTEyNzM5MjE3IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTEyNzM5MjE3CgpXaWUgcm9tYW50aXNjaCA6KQoKTHVnIER1IHNjaGVpbnN0IGphIGFyZyB2ZXJsaWVidCB6dSBzZWluIGluIExpYXJhLiBLZWluIFd1bmRlciwKZGFzcyBEdSBEaWNoIGRhbm4gdWViZXIgaWhyZSBTcGllbHBhdXNlIGFlcmdlcnN0LgoKQWxpbmUgKHRyb2VzdGUgTHVnIHVuZCBmcmV1dCBzaWNoIHVlYmVyIGRpZSBSb21hbnRpayBpbiBkZXIgTVBBKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSEhIRUVFWVlZWVlZWVkhIChCZW5kZWlnaWQsICA3LiBEZXogMTk5OCwgMDk6NDI6MDgpOgp+IyEgb249THVnIG90PTkxMjczOTIxNyBvZz1hbGxnZW1laW5lcwoKV2VyIHdhciBkYXM/CkthdW0gaXN0IG1hbiB3aWVkZXIgZGEsIG11c3MgbWFuIHp3ZWkgRGluZ2UgZmVzdHN0ZWxsZW46CgphKSBXaWUga29ubnRlIExpYXJhIFNlaGVyIHdlcmRlbj8gRGllIFNjaHVsZGlnZW4gc29mb3J0IHNlbGJzdGxvZXNjaGVuLgoKYikgV2VyIGlzdCBmdWVyIGRpZSBTcGllbHBhdXNlIHZlcmFudHdvcnRsaWNoPyBJY2ggd3VlcmRlIGdlcm5lIGplbWFuZGVuCnBlcnNvZW5saWNoIGRhZnVlciBlcnd1ZXJnZW4uLi4KCkRhcmF1cyByZXN1bHRpZXJ0OgoKYykgaGVidCBtYWwgZWluZXIgZGllIFNwaWVscGF1c2UgYXVmPyBIdWh1IElociBHb2V0dGVyPwoKZCkgU2FndCBpaHIgbWFsIGVpbmVyIGRhcyBkaWUgW1pFTlNVUl0gW1pFTlNVUl0gaWhyZW4gW1pFTlNVUl0gW1pFTlNVUl0KZ2VmYWVsbGlnc3Qgd2llZGVyIGluIGRpZXNlcyBbWkVOU1VSXSBiZXdlZ2VuIHNvbGw/IFNvbGwgaWNoIG1pY2ggZXR3YQp0b3RsYW5nd2VpbGVuPyBKYSBzb2xsIGljaCwgaWNoIHdlaXNzLi4uCgoKRmlkS0d1TGlkVwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEhISEVFRVlZWVlZWVlZISAoQWxpbmUsICA3LiBEZXogMTk5OCwgMTE6Mjc6MzMpOgp+IyEgcm49QmVuZGVpZ2lkIHJ0PTkxMzAyMzcwOCByZz1zY2htYXJybgp+IyEgdGlkPTkxMjczOTIxNwoKV2VsY2ggemFydGUgV29ydGUgaW4gQmV6dWcgYXVmIG1pY2ggKmZyZXUqIDopCgpBYmVyIEx1ZywgZXMgaXN0IGthdW0genUgdWViZXJzZWhlbiB3ZWxjaCByb21hbnRpc2NoZSBHZWZ1ZWhsZSBEdSBmdWVyCkxpYXJhIGhlZ3N0LiBTb3dhcyBoYWV0dGUgaWNoIGthdW0gdm9uIERpciBnZWRhY2h0LCBlcyBzdGVja3QgaGFsdCBkb2NoCmVpbiB6YXJ0ZXIgS2VrcyBpbiBkZWluZXIgcmF1aGVuIFNjaGFsZS4KCkt1ZXNzY2hlbgoKQWxpbmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCBnbGF1YnMgamEgbmljaHQgKEhhbmdvdmVyLCAgNy4gRGV6IDE5OTgsIDEzOjQwOjA4KToKR3JhZGUgZWJlbjoKCltNb2VyZGVyOkdlaXN0IGVpbmVzIE9ya3NdIEZyZWloZWl0IGZ1ZXIgTmljaHQtU3BpZWxlciEgVmVybmljaHRldCBPcmt0b2V0ZXIhCgpfRGFzXyBoYWJlIGljaCB2b24gT1Qgc2VpdCB1ZWJlciAyIEphaHJlbiBuY2lodCBnZXNlaGVuLgoKSGFuZ292ZXIgKHZlcnd1bmRlcnQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIGdsYXVicyBqYSBuaWNodCAoTW9yZ290aCwgIDcuIERleiAxOTk4LCAxMzo0NzoxNyk6Cn4jISBybj1IYW5nb3ZlciBydD05MTMwMzgwMDggcmc9c2NobWFycm4KfiMhIHRpZD05MTMwMzgwMDgKZGFzIHdhciBzaWNoZXIgZWluZXIgdm9uIGRlbiBrbGVpbmVuLCBvZXN0bGljaCBkZXIgZHJhY2hlbnppbm5lbi4gYW4gd2FzCmFuZGVyZXMgdHJhdXQgc2ljaCBkZXIgZG9jaCBlaCBuaWNodCBkcmFuLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFISEhKQSAhISBFUiBJU1QgTklDSFQgU1VFQ0hUSUcgISEhIChOYWlyb2xmLCAgNy4gRGV6IDE5OTgsIDE2OjQ1OjAzKToKPiBHcmsgdGVpbHQgRGlyIG1pdDogb2ggbWFuLCBiaW4gaWNoIHd1cnN0aWcgZ2V3b3JkZW4gLi4uICp1cmFhYWdnZ2cqIC4uLiBJY2gKR3JrIHRlaWx0IERpciBtaXQ6IGthbm4gc2Nob24gbmljaHRtZWhyIG1ldHplbG4gLi4uICprcnJyKiAuLi4gT2ggb2gsIC4uLi4KR3JrIHRlaWx0IERpciBtaXQ6IFdBSEhISCwgaWNoIGJla29tbSB3aWVkZXIgTHVzdCBhdWZzIHpvY2tlbiAuLi4uLiBORUlOIC4uLi4KR3JrIHRlaWx0IERpciBtaXQ6IFdFSUNIRSEhISEhISEhIEFISEhISEghISEhISEhISEhISEhISEhISEhISEhCgoKCk9obmUgV29ydGUgLi4uOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplYmVuIGluIGRlciBzc3AgKEthbWVsb3QsICA3LiBEZXogMTk5OCwgMTc6NDg6NTkpOgpzcGllbGUgTXVuZGhhcm1vbmljYQpUb2QgRWluIFNjaG5lZW1vbnN0ZXIgaGF0IGdlcmFkZSBUb2R0ZXN0ZXIgdW1nZWJyYWNodC4KVG9kIEFuIG1pciBrb21tdCBrZWluZXIgdm9yYmVpIQpEdSBzcGllbHN0IGRhcyAiTGllZCB2b20gVG9kIiBhdWYgRGVpbmVyIE11bmRoYXJtb25pY2EuCioqKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogcHJpbXphaGxlbiAoR3JpbW1ib3JuLCAgOC4gRGV6IDE5OTgsIDAwOjI3OjE2KToKfiMhIG9uPUNhdHdlYXpsZSBvdD05MTI2MTA4ODMgb2c9d2l0emUKfiMhIHJuPUF6enVybyBydD05MTI2MTA4MzMgcmc9d2l0emUKfiMhIHRpZD05MTIzNzcxOTMKSGUsIGRhcyBpc3QgZmllcywgaWNoIHdpbGwgamV0enQgYXVjaCB3aXNzZW4gd2llcyBnZWh0IDopCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogcHJpbXphaGxlbiAoR3JpbW1ib3JuLCAgOC4gRGV6IDE5OTgsIDAwOjI3OjQwKToKfiMhIG9uPURpZWRlciBvdD05MTI2MjI3ODYgb2c9d2l0emUKfiMhIHJuPVJvY2h1cyBydD05MTI2MjIxNDggcmc9d2l0emUKfiMhIHRpZD05MTIzNzcxOTMKS2x1Z3NjaCoqKioqKiA7LSkKCkRpZWRlciwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCUkVOTkVUIElIUiBDSFJJU1RFTiAoR3JpbW1ib3JuLCAgOC4gRGV6IDE5OTgsIDAwOjMxOjQ1KToKfiMhIG9uPUFuYXRvbCBvdD05MTI5MTg5NjAgb2c9d2l0emUKfiMhIHJuPUppZGR1IHJ0PTkxMjkxODkxMiByZz13aXR6ZQp+IyEgdGlkPTkxMjkxODkxMgpEZW4ga2VubiBpY2ggbWl0IFN1cGVybWFuIHVuZCBiZXNzZXIuCgpHZWggaW5zIEJldHQsIEppZGR1IDopCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCUkVOTkVUIElIUiBDSFJJU1RFTiAoR3JpbW1ib3JuLCAgOC4gRGV6IDE5OTgsIDAwOjMxOjUxKToKfiMhIG9uPVFpdGVzcyBvdD05MTMwNDY4MjYgb2c9d2l0emUKfiMhIHJuPUppZGR1IHJ0PTkxMjkxODkxMiByZz13aXR6ZQp+IyEgdGlkPTkxMjkxODkxMgpHVVVVVVQgIQoKUUkqKiBsYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmF1cyBkZW0gWnVzYW1tZW5oYW5nLi4uIChXaW0sICA4LiBEZXogMTk5OCwgMDE6MjQ6NTMpOgpnZXJpc3NlbiBtYWNodHMgbWVociBzcGFzcy4KCltBbGxnZW1laW46QW5hdG9sIGlzdCBrbGVpbiwgZHVtbSB1bmQgc3Rpbmt0Ll0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouLi5vZGVyIGRvY2ggZXJ3aXNjaHQ/IChKYW1lc29uLCAgOC4gRGV6IDE5OTgsIDAxOjI3OjEzKToKW0FsbGdlbWVpbjpBbmF0b2wgaXN0IGtsZWluLCBkdW1tIHVuZCBzdGlua3QuIDwwMToyMzoyMz5dCltBbGxnZW1laW46QW5hdG9sXSBXYXJuIHdpdHogOykgPDAxOjIzOjI3PgpbQWxsZ2VtZWluOkphbWVzb25dIGR1IGJpc3QgZWluIFp3ZXJnLi4uPyA8MDE6MjM6NDU+CkFuYXRvbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCmhtbW1tLi4uCgpqQW1lc29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadW0gR2x1ZWNrIGFuZ2VrZXR0ZXQhOykgKFRhbWksICA4LiBEZXogMTk5OCwgMDE6Mzg6MTcpOgpEdSBzdGVja3N0IGVpbmVuIFBsYXR0ZW5wYW56ZXIgaW4gZGFzIFBha2V0LgpEdSBzdGVja3N0IGVpbiBSdW5lbnNjaHdlcnQgaW4gZGFzIFBha2V0LgpEdSBzdGVja3N0IExlZGVyaGFuZHNjaHVoZSBpbiBkYXMgUGFrZXQuCkR1IHN0ZWNrc3QgTGVkZXJzdGllZmVsIGluIGRhcyBQYWtldC4KRHUgc3RlY2tzdCBlaW5lbiBQbGF0dGVucGFuemVyIGluIGRhcyBQYWtldC4KRHUgc3RlY2tzdCBlaW4gUnVuZW5zY2h3ZXJ0IGluIGRhcyBQYWtldC4KRHUga2FubnN0IGRlciBEdXJjaGdhbmcgc28gbmlyZ2VuZHdvIHJlaW5zdGVja2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVpbiBzdWVzc2VyIEV4IC4uLiAoTGlsbGVicm9yLCAgOC4gRGV6IDE5OTgsIDAzOjIwOjE5KToKc2NoYXUgLT4KCkVpbiBXZWd3ZWlzZXIuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4sIHdlc3RlbiB1bmQgbm9yZGVuLgpQYXBzdCBMdWcgZGVyIFNjaGF0dGVuLgpEYXMgTGFuZGhhdXMgdm9uIEJlcm5oYXJkLgo+IEx1ZyBzYWd0OiBIZXksIGljaCBiaW4gUGFwc3QgOykKRHUgd2FlbHp0IERpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgoKCipsYWNoKiAuLiBqZXR6dCBnZWh0cyBpbiBkaWUgbGV0enRlIFJ1bmRlIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWVpbiBzdWVzc2VyIEV4IC4uLiAoTHVnLCAgOC4gRGV6IDE5OTgsIDAzOjIxOjAxKToKfiMhIHJuPUxpbGxlYnJvciBydD05MTMwODcyMTkgcmc9c2NobWFycm4KfiMhIHRpZD05MTMwODcyMTkKS2xhcm8sCgpsb3MgYWIgaW4gZGllIEthcGVsbGUgbWl0IERpci4KCkl3RGgKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYSBzbyB3YXM/IChaZXIsICA4LiBEZXogMTk5OCwgMDg6MzQ6MzUpOgpEdSBiaXN0IG51biBpbSAiS3VyeiJtb2R1cy4KJSBXaXIgc2luZCBqZXR6dCBoaWVyOiAnbW9yb24nIC0gTW9yb24KRHUgYmlzdCBmYXN0IGFtIEVuZGUgZGVzIFRvcndlZ3MgYW5nZWtvbW1lbiwgZGVyIGhpZXIgdm9uIE9zdGVuIGhlcmtvbW10IHVuZAppbQpXZXN0ZW4gYXVmIGVpbmVuIGdyb2Vzc2VyZW4gUGxhdHogbXVlbmRldC4gSW0gU3VlZGVuIGJlZmluZGV0IHNpY2ggZWluCkdlYmFldWRlLCBkYXMgaW0gR2VnZW5zYXR6IHp1IGRlbiBIYWV1c2VybiB3ZWl0ZXIgb2VzdGxpY2ggZWluZSB2aWVsCnNjaHdhZXJ6ZXJlIEZhcmJlIGF1ZndlaXN0OyBhdXNzZXJkZW0gc2NoZWludCBlcyBlaW5lbiBFaW5nYW5nIHp1IGJlc2l0emVuLiBJbQpOb3JkZW4gYmVmaW5kZXQgc2ljaCBudXIgZGllIFdhbmQgZWluZXMgZXR3YXMgZ3JvZXNzZXJlbiB1bmQgcmVsYXRpdiBndXQKZXJoYWx0ZW5lbiBHZWJhZXVkZXM7IGltIFN1ZWRlbiBmdWVocnQgZWluZSBUdWVyIGluIGV0d2FzIG1vZGVyaWcgYXVzc2VoZW5kZXMsCmFiZXIgdHJvdHpkZW0gbm9jaCBnYW56IGd1dCBlcmhhbHRlbmVzIEdlYmFldWRlLgpFaW5lIGdlc2NobG9zc2VuZSBUdWVyIG5hY2ggU3VlZGVuLiAKRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuIHVuZCB3ZXN0ZW4uCkV4LUtlbXBzIEZyZXVkZW5oYXVzLgpEYXMgSGF1cyB2b24gU2hhbm5hcmEuCkVpbiBIaW50ZXJoYWx0ICEhISBFaW5lIFJlaWhlIHZvbiBSYWV1YmVybiB1ZWJlcmZhbGxlbiBEaWNoICEKRWluIFJhZXViZXIgc3ByaW5ndCB2b24gZWluZW0gQmF1bS4KRWluIFJhZXViZXIgc3ByaW5ndCB2b24gZWluZW0gQmF1bS4KRWluIFJhZXViZXIgc3ByaW5ndCB2b24gZWluZW0gQmF1bS4KRWluIFJhZXViZXIgc3ByaW5ndCB2b24gZWluZW0gQmF1bS4KRWluIFJhZXViZXIgc3ByaW5ndCB2b24gZWluZW0gQmF1bS4KICAuLi4ubm9ybWFsL2Jsb3NzZW4gSGFlbiBSYWV1YmVyLi4uLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSB2ZXJmZWhsdApNYXRyaXg6IEVpbiBSYWV1YmVyIGlzdCBhYnNvbHV0IGZpdC4gKDEwMCUpCiAgLi4uLm5vcm1hbC9ibG9zc2VuIEhhZW4gUmFldWJlci4uLi4uLiA6IERpY2guLi4uLi4uLi4gKioqUyoqKiogPC0gdmVyZmVobHQKICAuLi4ubm9ybWFsL2Jsb3NzZW4gSGFlbiBSYWV1YmVyLi4uLi4uIDogRGljaC4uLi4uLi4uLiAqKipTKioqKiA8LSB2ZXJmZWhsdApNYXRyaXg6IEVpbiBSYWV1YmVyIGlzdCBhYnNvbHV0IGZpdC4gKDEwMCUpCiAgLi4uLm5vcm1hbC9ibG9zc2VuIEhhZW4gUmFldWJlci4uLi4uLiA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gdmVyZmVobHQKICAuLi4ubm9ybWFsL2Jsb3NzZW4gSGFlbiBSYWV1YmVyLi4uLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvU2Nod2VydC4uLi4uIER1Li4uLi4uLi4uLi4gOiBSYWV1YmVyLi4uLi4uICoqKioqKioqIC0+IGhhcnQKClplciwgZGllIGVyc3RhdW50ZSBSYXR0ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNb3Jnb3RoLCAgOC4gRGV6IDE5OTgsIDEwOjI4OjMyKToKW1NlaGVyOktleV0gSFlEUkFLSUxMRU5IWURSQUtJTExFTiEhISA6KQpBbmF0b2wgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKW1RvZDpMYXJzXSBFaW5lIEVyZGdydWJlIGhhdCBnZXJhZGUgS2V5IHVtZ2VicmFjaHQuCltUb2Q6VG9kXSBEQVMgV0FSIFNDSE9OIERBUyA0NDlURSBNQUwhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprZWluZSBhaG51bmcsIHdpZXNvIGljaCBsYWNoZSA6KSAoSmFzb25yaWdpZCwgIDguIERleiAxOTk4LCAxMTozNDo0Nik6CkFydXRoYUBhdXJvcmEgdGVpbHQgRGlyIG1pdDogYXJnbGFyZ2xhcmdsYXJnbGFyZ2xhcmdsCgpEdSB0ZWlsc3QgQXJ1dGhhQGF1cm9yYSBtaXQ6IHdhc3dhc3dhc3dhc3dhc3dhc3dhcyA/PwoKQXJ1dGhhQGF1cm9yYSB0ZWlsdCBEaXIgbWl0OgpudXJzb251cnNvbnVyc29udXJzb251cnNvbnVyc29udXJzb251cnNvbnVyc29udXJzbwpBcnV0aGFAYXVyb3JhIHRlaWx0IERpciBtaXQ6IG51cnNvCgpEdSB0ZWlsc3QgQXJ1dGhhQGF1cm9yYSBtaXQ6IGFjaHNvYWNoc29hY2hzb2FjaHNvIDopCgpKYXNvbiwgZ3JpbnN0IGltbWVyIG5vY2gsIHVuZCB3ZWlzcyBuaWNodCB3aWVzbyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU08gaXN0IGRhcyBhbHNvIChNb3Jnb3RoLCAgOC4gRGV6IDE5OTgsIDEyOjQ4OjEyKToKSmVtYW5kIHNhZ3Q6IGFiIHVuZCB6dSBoYWVuZ3QgZXIKRHUgc2Fnc3Q6IHRyb2VzdGUgZGljaC4uLmRhcyBpc3Qgbm9ybWFsIGZ1ZXIgbWFlbm5lciBpbiBkZWluZW0gYWx0ZXIKRHUgd2FlbHp0IERpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgpKZW1hbmQgZGVua3QgICAuIG8gTyAocG9laCkKRHUgcm90ZmxzdC4KSmVtYW5kIGJpbmRldCBlaW5lbiBBcnp0c3BhdGVsIGRydW50ZXIKCkVpbiBTY2hlbG0sIHdlciBzY2hsaW1tZXMgZGFiZWkgZGVua3QKCk0qLCBrYW5uIHNpY2gga2F1bSBhdWYgZGVtIEJ1ZXJvc3R1aGwgaGFsdGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZXIgbGllYnQgd2VuPyAoTW9yZ290aCwgIDguIERleiAxOTk4LCAyMzozNToyMSk6ClJhc2NhbCBzYWd0OiBlciBsaWVidCBtZWluZSBJZGVlbiA6KQpEZWluZSBGcmV1bmRpbiBMZWlibml6IHRlaWx0IERpciBtaXQ6IHdpZSBpY2ggbWVpbmUgcmVjaG5lciBsaWViZS4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYXJ0eSBiZWkgZGVuIE1vZW5jaGVuPyAoS2FyYW0sICA5LiBEZXogMTk5OCwgMDA6NTY6NDYpOgpFYmVuIGltIER1ZXN0ZXJ3YWxkLUtsb3N0ZXIsIHVuZ2VrdWVyenQ6CgpJcmdlbmQgZXR3YXMgaXN0IGhpZXIuIEVzIHNjaGxlaWNodCB1bSBEaWNoIGhlcnVtIHVuZCAuLi4gbGFjaHQhCkRhcyBQYXJ0eW1vbnN0ZXIgcnVmdDogU2NobGVpY2hlciBzY2htZWlzc3QgZWluZSBQYXJ0eSEKCkthcmFtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChNZW5hY2UsICA5LiBEZXogMTk5OCwgMDE6MDc6MzkpOgp+IyEgcm49TW9yZ290aCBydD05MTMxMTI5MTIgcmc9c2NobWFycm4KfiMhIHRpZD05MTMxMTI5MTIKTWFsIG5lIEZyYWdlOgpCaWV0ZW4gVG9kIG9kZXIgTGFycyBlaW5lbSBlaWdlbnRsaWNoIGJlaW0gNTAwdGVuIG1hbCBkaWUgRnJldW5kc2NoYWZ0IGFuLAp3ZWlsIG1hbiBzaWNoIGphIHNjaG9uIHNvIGd1dCBrZW5udD8KCk1lbmFjZSBudXIgaW50ZXJlc3NlaGFsYmVyIG5hY2hmcmFnZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMVyAoSGFyYWtpcmksICA5LiBEZXogMTk5OCwgMDE6NDQ6MzYpOgp+IyEgcm49TWVuYWNlIHJ0PTkxMzE2NTY1OSByZz1zY2htYXJybgp+IyEgdGlkPTkxMzExMjkxMgpOZWluLCBkYXZvbiB3dWVzc3RlIGljaC4KClMuSC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqd3VlcmcqIChXb29keSwgIDkuIERleiAxOTk4LCAwMzowMDo0Nik6Cj4gbGljaHQKRHUga29uemVudHJpZXJzdCBEaWNoLgpFaW5lIHN0cmFobGVuZCBoZWxsZSBLdWdlbCBlcnNjaGVpbnQgYXVzIGRlbSBOaWNodHMuCj4gd2lyZiBrdWdlbCB3ZWcKRHUgbGFlc3N0IGRpZSBMaWNodGt1Z2VsIGZhbGxlbi4KPiB3dWVyZ2Uga3VnZWwKRHUgc3ByaW5nc3QgZGllIExpY2h0a3VnZWwgYW4gdW5kIGZhZW5nc3QgYW4sIHNpZSB6dSB3dWVyZ2VuLgoKV2FzIHNpY2ggRGluZ2Ugc28gYWxsZXMgZ2VmYWxsZW4gbGFzc2VuIDopCgoKV29vZHkuLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVwcyA/Pz8gKEFuYWNyaW9uLCAgOS4gRGV6IDE5OTgsIDA0OjQwOjMwKToKCltaYXViZXJlcjpGcm9zY2ggQW5hY3Jpb25dIFlFU1NTU1NTU1NTU1NTU1NTU1NTIDopIGFsbGUgbW9tZW50YW4gbGVybmJhcmVuCltaYXViZXJlcjpGcm9zY2ggQW5hY3Jpb25dIHNwcnVlY2hlIGF1ZiAxMDAlIDopKSkKW1phdWJlcmVyOlJoYWtpXSB3YXUgLSBncmF0cyEgOi0pCltELWNoYXQ6U21sQFd1bmRlcmxhbmRdIHNjcnB0ZXMgZHUgYXVjaCBnZXJhZGUuLi4KCldpZSBrb25udGUgZXIgd2lzc2VuID8gKmdyaW5zKgoKQW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRkxXIChLZXksICA5LiBEZXogMTk5OCwgMDk6MDU6NTUpOgp+IyEgcm49TWVuYWNlIHJ0PTkxMzE2NTY1OSByZz1zY2htYXJybgp+IyEgdGlkPTkxMzExMjkxMgoqZ2FlaG4qIEJlaW0gNTAwLiBtYWw/CkljaCBiaW4gc2Nob24gZXdpZyBtaXQgTGFycyBiZWZyZXVuZGV0IDspCgpLZXkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3JpbW1ib3JuIGZvciBQcmVzaWRlbnQhIChHcmltbWJvcm4sICA5LiBEZXogMTk5OCwgMTA6MTQ6NDgpOgp+IyEgb249SmlkZHUgb3Q9OTEzMTU1MDI1IG9nPWFsbGdlbWVpbmVzCn4jISBybj1MdWcgcnQ9OTEzMDgzMjcyIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTEzMDgzMjcyCkViZW4hISBXZW5uIGlociBuZW4gYXJ0aWtlbCBuYWNoIHNjaG1hcnJuIGhhdXQsIGRhbm4gZG9jaCB3b2hsIHdlaWwgZXIKc2NobWFycm4gaXN0IC0gYWJlciBpc3QgZXIgZXMgZGFubiB3ZXJ0LCBkYXNzIGlobiBqZWRlciAyIG1hbCBsaWVzdD8gKk5FUlYhISoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR3JpbW1ib3JuIGZvciBQcmVzaWRlbnQhIChHcmltbWJvcm4sICA5LiBEZXogMTk5OCwgMTA6MTU6MjgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTkxMzE5ODQ4OCByZz1zY2htYXJybgp+IyEgdGlkPTkxMzA4MzI3MgpFcyBsaWVndCAoYXVjaCkgYW4gRGlyLCBkYWZ1ZXIgenUgc29yZ2VuLCBkYXNzIGVpbiBWZXJsZWdlbiBnYXIgbmljaHQgZXJzdApub3R3ZW5kaWcgaXN0LiA7LSkKCkdyaW1tYm9ybiBkZXIgVmVybGVnZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYmVpIGRlciBHcnVwcGVua2FtcGZkaXNrdXNzaW9uIChDYXR3ZWF6bGUsICA5LiBEZXogMTk5OCwgMTI6NTg6MjYpOgpFcyBnaW5nIHVtIGRpZSBBdWZzdGVsbHVuZyB1bmQgQW56YWhsIGRlciBLYW1wZnJlaWhlbjoKCldhcmdvbiBzYWd0OiBCZWkgQVJEIHVuZCBaREYgc3RlcmJlbiBzaWUgaW4gZGVyIGVyc3RlbiBSZWloZS4KUm9jaHVzIHNhZ3Q6IFVuZCB3YXMgaGVpc3N0IGRhbm4gQVJEIHVuZCBaREY/CkNhdHdlYXpsZSBzYWd0OiBBUkQ6IEFsbGUgUmVpbiBEYS4KV2FyZ29uIHNhZ3Q6IFpERjogWndlaXRpZXMgRHVlcmZlbiBWb3IuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQKiAoV29vZHksICA5LiBEZXogMTk5OCwgMTM6MDI6NDEpOgpbVG9kOkxhcnNdIExoYW5hIGRpIExlb25kcm8gaGF0IGdlcmFkZSBQOnphdWJlcmVyIHVtZ2VicmFjaHQuCltUb2Q6TGhhbmEgZGkgTGVvbmRyb10gS2FuIHdpcmQgaW4gS3VlcnplIGJlZ3JhYmVuLiBXaXIgYml0dGVuIHVtCltUb2Q6TGhhbmEgZGkgTGVvbmRyb10gQmx1bWVuc3BlbmRlbi4KRHUgaG9lcnN0IGRpZSBVaHIgc2NobGFnZW46IEVzIGlzdCBqZXR6dCAxMiBVaHIuCltCZWlsZWlkOlRlcnJvcmlzdCBraWNoZXJ0XQpbQmVpbGVpZDpBbGluZV0gV2VyIGlzdCBQOnphdWJlcmVyPwpbQmVpbGVpZDpSYXJkaWFuXSB2aWVsYmVzY2hhZWZ0aWd0ZXMgaW5kaXZpZHV1bSwgYmVpbGVpZCEKW0JlaWxlaWQ6VGVycm9yaXN0XSBEaWUgWmF1YmVyZXJnaWxkZSA7KSBEaWUgaXN0IGpldHp0IHRvdCwgZ2Vsb2VzY2h0ICwpCltCZWlsZWlkOlJhcmRpYW5dIEJlaWxlaWQhIDspCltCZWlsZWlkOk5vbm5lXSBqYSBjb29vb29vb2wgOykKW0JlaWxlaWQ6QWxpbmUgZGFjaHRlIHNjaG9uIGRhcyBQIHN0ZWh0IGZ1ZXIgUGF0cnluIDo5XQoKbm8gY29tbWVudCA6KQp3b29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYSogQWJsb2VzZSA/IChXb29keSwgIDkuIERleiAxOTk4LCAxMzo1NToxNyk6ClBhcmFjZWxzdXMgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhClBhZHJlaWMgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqZ3JpbnMqIChBcmF0aCwgIDkuIERleiAxOTk4LCAxNDo1NToyMSk6Ck1hdGlzIGJlc2NobGV1bmlndCBzZWluZSBBdHRhY2tlbiEKRGVyIEtsaXR6ZWxkcm9tIGZ1Y2h0ZWx0IGluIE1hdGlzJyBSaWNodHVuZy4KTWF0aXMgaGF0IG1hbCB3aWVkZXIgZWluZSBGYWxsZSB1ZWJlcnNlaGVuIHVuZCBicmljaHQgaW4gZGVuIEJvZGVuIGVpbi4KCkFyYXRoLCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGTFcgKEppZGR1LCAgOS4gRGV6IDE5OTgsIDE1OjMyOjExKToKfiMhIHJuPU1lbmFjZSBydD05MTMxNjU2NTkgcmc9c2NobWFycm4KfiMhIHRpZD05MTMxMTI5MTIKbm9jaCA1MCBtYWwgZGFubiB3aXNzZW4gd2lycyA6KQpKaWRkdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FyYXRla2EuLi4gKERhcmt3aW5nLCAxMC4gRGV6IDE5OTgsIDAzOjI1OjQ5KToKRWluIEVyZGVsZW1lbnRhciBpc3QgdWVicmlnZW5zIGVpbiBkdW1tZXIgS2FyYXRla2EuIEVyIGlzdCBkYXJpbiBuaWNodCB6dQp1bnRlcnNjaGFldHplbi4gCgpkaWUgbmVobWVuIHdvaGwgYWxsZXMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9iIGVyIENoYW90IHdpcmQgKE1vcmdvdGgsIDEwLiBEZXogMTk5OCwgMTE6MTA6MDEpOgpOb25uZSB0ZWlsdCBEaXIgbWl0OiBzdWVzc2Uga2xlaW5lIGt1ZWhlIG1pdCB0cmV1ZW4gYXVnZW4gZHVyY2ggZGVuIHdvbGYKTm9ubmUgdGVpbHQgRGlyIG1pdDogZ2VkcmVodD8gZ2VpbCA7KQoKTW9yZ290aCwgendlaWZlbHQgYW4gZGVyIEd1dGhlcnppZ2tlaXQgc2VpbmVyIEtsZXJpa2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT2IgZXIgQ2hhb3Qgd2lyZCAoTm9ubmUsIDEwLiBEZXogMTk5OCwgMTE6MTE6NTApOgp+IyEgcm49TW9yZ290aCBydD05MTMyODgyMDEgcmc9c2NobWFycm4KfiMhIHRpZD05MTMyODgyMDEKQmluIGljaCBIaW5kdT8gTmVpbiEgQWxzbyBoZXIgbWl0IGRlbiBGbGVpc2NoYmVyZ2VuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWNoICduZSBBbnR3b3J0Li4uIChUdW5peGd1dCwgMTAuIERleiAxOTk4LCAxMTozNDo1Nik6CkR1IGJpZXRlc3QgTW9yZ29uYXRlIGRlaW5lIEZyZXVuZHNjaGFmdCBhbi4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIE1vcmdvbmF0ZS4KCkRhbm4gZWJlbiBuaWNodC4uLgoKJ3MgS2FyYXRlLVp3ZXJjaGxlIC0gc2NobW9sbHQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdWNoICduZSBBbnR3b3J0Li4uIChBbmF0b2wsIDEwLiBEZXogMTk5OCwgMTI6NTE6MzQpOgp+IyEgcm49VHVuaXhndXQgcnQ9OTEzMjg5Njk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzMjg5Njk2ClZlcnN0YWVuZGxpY2hlIFJlYWt0aW9uLgoKQW5hdG9sIGhhdXQgaW4gZGllIEtlcmJlIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmVpZ2xpbmcgKE1vcmdvdGgsIDEwLiBEZXogMTk5OCwgMTU6Mjk6MTYpOgpbTWFnaWVyOk1vcmdvdGhdIFBBQUFBUkFBQUFBQ0VFRUVMTFNTU1VVVVVVVVVVVVVVVVVVVVVVVVVVU1NTU1NTU1NTClBhcmFjZWxzdXMgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEF1Y2ggJ25lIEFudHdvcnQuLi4gKFR1bml4Z3V0LCAxMC4gRGV6IDE5OTgsIDE2OjU1OjAyKToKfiMhIHJuPUFuYXRvbCBydD05MTMyOTQyOTQgcmc9c2NobWFycm4KfiMhIHRpZD05MTMyODk2OTYKKCogT2huZSBXb3J0ZSAqKQoKJ3MgS2FyYXRlLVp3ZXJjaGxlIC0gVE9UdHJhdXJpZy4uLiBFSFJMSUNIISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZW5uIG1hbiBzY2hyZWl0LCBkYW5uIGtvbW10IGVyIChUcnVnLCAxMC4gRGV6IDE5OTgsIDIzOjA3OjE0KToKRHUgdGVpbHN0IGRlaW5lbiBGcmV1bmRlbiBtaXQ6IHdhaCwgZGVyIGFuZ2Vsa3V0dGVyIGJyYXVjaHQgc28KRHUgdGVpbHN0IGRlaW5lbiBGcmV1bmRlbiBtaXQ6IGxhYWFhYWFhYWFhYW5nCmZ3ZXIgb3J0CkVpbiBBbmdlbGt1dHRlciBsZWd0IGFuLgoKKmdyaW5zKgpUcnVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYW51PyAoVHJhbmNlZmVhciwgMTEuIERleiAxOTk4LCAwMDoyNzoxNyk6CkZvbGdlbmRlIE1haWwgaXN0IGJlaSBtaXIgZWluZ2V0cnVkZWx0OgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQWJzZW5kZXI6ICBFc2VsQGVyaWNzc29uZXcuY29tCkFuOiBUcmFuY2VmZWFyQG1nLnVuaS1tdWVuc3Rlci5kZQpEYXR1bTogRGllLCAgOC4gRGV6IDE5OTgsIDE3OjEyOjQ1ClRpdGVsOiAgQml0dGUgYmVwYWNrZSBtaWNoIQoKCkx5bm4gTGFodXNlbiwgZXJyZWljaGJhciB1bnRlciBMTGFodXNlbkBsaW5kdC5jb20sIHNlbmRldCBJaG5lbiBkaWVzZQpNYWlsLgoKCkhhbGxpaGFsbG8uCgpJY2ggYmluIGVpbiBFc2VsLiBVbmQgc2FtbWxlIGZyIG1laW5lIEJlc2l0emVyaW4gTHlubiBMYWh1c2VuIFBja2NoZW4uCkRhbWl0IHNpZSBhbiBkZXIgVmVybG9zdW5nIHZvbiAxMCBFcmljc3Nvbi1Nb2JpbGVwaG9uZXMgR0YgNzY4IHRlaWxuZWhtZW4Ka2Fubi4KCkJpdHRlIHBhY2tlbiBTaWUgbWlyIGVpbiBQY2tjaGVuIGF1ZiBkZW4gUmNrZW4uIFNpZSBuZWhtZW4gZGFtaXQKYXV0b21hdGlzY2ggYW4gZGVyIFZlcmxvc3VuZyB2b24gMTAgRXJpY3Nzb24tTW9iaWxlcGhvbmVzIEdGIDc2OCB0ZWlsLgoKVW0gbWljaCBpbiBtZWluZW0gU3RhbGwgenUgYmVzdWNoZW4gdW5kIGRvcnQgenUgYmVsYWRlbiwgZm9sZ2VuIFNpZSBiaXR0ZQpkaWVzZW0gTGluazogaHR0cDovL3d3dy5oYW5keS5jaC9yYWNlL2xvYWQvZG9ua2V5cmFjZV9sb2FkMS5hc3AgdW5kIGdlYmVuCmZvbGdlbmRlIERhdGVuIGVpbjoKCkJlbnV0emVybmFtZTogdHJhbmNlZmVhckBtZy5tdWQuZGUKUGFzc3dvcnQ6IDU1MzQxNjYKClNvbGx0ZSBJaHJlIE1haWwtU29mdHdhcmUga2VpbmVuIGRpcmVrdGVuIFp1Z2FuZyB2b24gaGllciBhdXMgenVsYXNzZW4sCmJlc3VjaGVuIFNpZSBtaWNoIGVpbmZhY2ggdW50ZXIgaHR0cDovL3d3dy5oYW5keS5jaC4KCkljaCBmcmV1ZSBtaWNoIGF1ZiBJaHJlbiBCZXN1Y2ghCgpQUzogTmF0cmxpY2gga25uZW4gU2llIGF1Y2ggc2VsYnN0IGdsZWljaCBJaHJlbiBlaWdlbmVuIEVzZWwgYXVmIGRpZQpSZWlzZSBzY2hpY2tlbiAtIGRhbm4gdmVyZG9wcGVsbiBzaWNoIElocmUgQ2hhbmNlbiBhdWYgZWluZXMgZGVyIDEwCnRvcGFrdHVlbGxlbiBFcmljc3Nvbi1IYW5keXMgR0YgNzY4IG1pdCBFYXN5Y2FyZC4KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkJla29tbWVuIGhpZXIgbm9jaCBhbmRlcmUgTWl0c3BpZWxlciBXZXJiZW1haWxzIGlucyBNVUQgPwoKdGYgKHd1bmRlcnQgc2ljaCBnYXIgc2VocikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOYW51PyAoQW5hdG9sLCAxMS4gRGV6IDE5OTgsIDAwOjM0OjE0KToKfiMhIHJuPVRyYW5jZWZlYXIgcnQ9OTEzMzM2MDM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzMzM2MDM3CkphdSwgYWxsZXJkaW5ncyB3dXJkZSBpY2ggdm9uICJ2b3lldXJAcGVudGhvdXNlbWFpbC5jb20iIGJlZ2x1ZWNrdC4KCkFscyBvYiBpY2ggbmljaHQgc2VsYmVyIHd1ZXNzdGUsIHdvIGljaCB6dSBzdWNoZW4gaGFiZSwgd2VubiBpY2ggc3VjaGVuCm11ZXNzdGUsIHdhcyBpY2ggYWJlciBzZWxiZXIgd2lzc2VuIG11ZXNzdGUuIE9kZXI/CgpBbmF0b2wgOm8pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQVVBISBIb2x6a29wZi4uLiAoTHVnLCAxMS4gRGV6IDE5OTgsIDAyOjIxOjM0KToKCkJlaWxlaWQ6THVnIGtpY2hlcnQuXQpbQmVpbGVpZDpEcm9sbGldIGRlciBwb2VzZSBwdXJzY2hlCltCZWlsZWlkOldvb2R5XSBmaWVzZSBEaW5nZSBnZXByb2dndC4gVW5kIGljaCBEZXBwIGhhYiBuaWNoIGdlbWVya3QsIGRhc3MKW0JlaWxlaWQ6V29vZHldIG1laW5lIExpY2h0a3VnZWxuIGFsbGUgd2FyZW4uCltCZWlsZWlkOkRyb2xsaV0gZ2VoIHNjaG5lbGwgenUgbWFtbWEgZGljaCBhc3dlaW5lbgpbQmVpbGVpZDpMdWddIFNlbGJzdGVya2VubnRuaXMgaXN0IGRlciBlcnN0ZSBXZWcgenVyIFNlbGJzdGxvZXNjaHVuZy4KRklDSyBESUNIIERVIEFSU0NIISBNUEEgSVNUIExFRVIgUEVOTkVSIQpbQmVpbGVpZDpUcmFuY2VmZWFyXSB6dSB0aG9yLCBkcm9sbGksIHp1IHRob3IKW0JlaWxlaWQ6V29vZHldIGFjaCBoYWx0ZXQgZGllIGtsYXBwZS4KW0JlaWxlaWQ6RHJvbGxpXSBuYSBkaWUgaXN0IGRvY2ggc2VpbmUgbWFtbWEgb2RlciBuaWNodD8gOikKW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgV29vZHkgdW1nZWJyYWNodC4KW0JlaWxlaWQ6QW5hdG9sXSBBdWEuCgpIaWhpCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOYW51PyAoQWxpbmUsIDExLiBEZXogMTk5OCwgMTE6MDE6MjApOgp+IyEgcm49QW5hdG9sIHJ0PTkxMzMzNjQ1NCByZz1zY2htYXJybgp+IyEgdGlkPTkxMzMzNjAzNwoKS29taXNjaCBBbmF0b2wsIGljaCBkYWNodGUgaW1tZXIgc293YXMgYmVrb21tZW4gbnVyIFN0YW1ta3VuZGVuIHp1Z2VzY2hpY2t0LgoKQWxpbmUgKmdyaW5zZW5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRkxXIChNZW5hY2UsIDExLiBEZXogMTk5OCwgMTE6MTg6MzApOgp+IyEgcm49SGFyYWtpcmkgcnQ9OTEzMTY3ODc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzMTEyOTEyClNjaGFkZSwgd2FlciBkb2NoIGVpbiBuZXR0ZXMgZmVhdHVyZSwgb2RlciBuaWNodD8KCk1lbmFjZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2gsIGdlcmFkZSBnZXNlaGVuLi4uIChZZW5kaSwgMTEuIERleiAxOTk4LCAxNzowMTowNSk6Clt6XSBBZm1vZGlmIGRlciBLYXJhdGUtS2FlbXBmZXIsIDguIEt5dSAtIEZlbGluZSAtIFtEcmVzZGVuXQoKU29sbHRlIGRhIGltIFBsYW4gbmljaHQgc3RlaGVuOgoiSmVnbGljaGUgQWVobmxpY2hrZWl0IG1pdCBsZWJlbmRlbiBvZGVyIGJlcmVpdHMgMzltYWwgZ2VzdG9yYmVuZW4gUGVyc29uZW4KIGlzdCByZWluIHp1ZmFlbGxpZyI/CgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPaCwgZ2VyYWRlIGdlc2VoZW4uLi4gKFByeWRlLCAxMS4gRGV6IDE5OTgsIDE3OjA2OjMxKToKfiMhIHJuPVllbmRpIHJ0PTkxMzM5NTY2NSByZz1zY2htYXJybgp+IyEgdGlkPTkxMzM5NTY2NQpNbW1oLi4uIG5lbmUsIHdvIGtvbW1lbiB3aXIgZGVubiBkYWhpbiEKSmVkZSBNYWhhdG11IG9kZXIgYWVobmxpY2ggdm9sbHdlcnRpZ2VuIFNwaWVsZXIgKmh1c3QqIGV4dHJhIHp1bSBTZWhlcgp6dWVjaHRlbiB1bSBkYXMgUGxhbmZpbGUgYW5sZWdlbiB6dSBrb2VubmVuID8KTXVzcyBqYSBuaWNodCBzZWluLi4uCgpQcnlkZSwga29wZnNjaHVldHRlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1ZXMgSXRlbSAoUGFkcmVpYywgMTEuIERleiAxOTk4LCAxODoxMTozMik6Cn4jISBvbj1KYXNwZXIgb3Q9OTEzMzk5MTE3IG9nPWQudW50ZXJ3ZWx0Cn4jISBybj1QYWRyZWljIHJ0PTkxMzExODQxMyByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTkxMzExODQxMwp6emVyd2Fhc3M/IHdpZXNvIGhhc3QgZHUgZGVubiBkZW4gcHJvamVrbmFtZW4gZ2VhZW5kZXJ0PyBhbHNvIGljaCBmYW5kCididWdjaXR5JyBnYW56IHBhc3NlbmQgOlAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOYW51PyAoS3JldGVrLCAxMS4gRGV6IDE5OTgsIDE5OjE0OjA0KToKfiMhIHJuPVRyYW5jZWZlYXIgcnQ9OTEzMzM2MDM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzMzM2MDM3CkRlZmluaXRpdi4gSWNoIGhhYmUgIk5hY2hzZW5kZWF1ZnRyYWciIGdlc3RlbGx0LCBkZXN3ZWdlbiB0cnVkZWxuIGRpZSBiZWkKbWlyIHByaXZhdCBlaW4sIGFiZXIgc2llIGtvbW1lbiB1ZWJlciBkYXMgTUctQWNjb3VudC4KQWxsZXJkaW5ncyBuaWNodCBiZXNvbmRlcnMgdmllbGUuLi4KICAgICAgICAgIAogICAgICAgICAga3JldGVrQGFudGlzb2NpYWwuY29tCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhqYS4gKFdvb2R5LCAxMS4gRGV6IDE5OTgsIDIxOjE5OjE0KToKPiB3ZXJ0ZSBzdGlmdGUKLi4uCjQgbGV1Y2h0ZW5kZSBTdGlmdGUgbGV1Y2h0ZW4gdWViZXJoYXVwdCBuaWNodC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaG5lIHdvcnRlIChHbm9tZSwgMTEuIERleiAxOTk4LCAyMjoyMjoyMSk6Cj4gRWluZSBMZWljaGUgZXhwbG9kaWVydC4KRGllIExlaWNoZSBzaWVodCBzbyBhdXMsIGFscyB3dWVyZGUgc2llIGplZGVuIE1vbWVudCBleHBsb2RpZXJlbi4uLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsdGUgU3BpZWxlciBnaWJ0cyA6KSAoV29vZHksIDEyLiBEZXogMTk5OCwgMDE6MjI6NTMpOgpbZmluZ2VyIC1uIGdhc3QyXQpHYXN0MiBpc3QgbmljaHQgYW53ZXNlbmQuClp1bGV0enQgZWluZ2Vsb2dndCB2b246IFdpZW4sIEF1c3RyaWEKWnVsZXR6dCBhdXNnZWxvZ2d0OiBNaXQsIDMxLiBEZXogMTk2OSwgMjM6NTk6NTkgKDEwNTcyZCAwMToyMjoxOCkKVm9sbGVyIE5hbWU6IEdhc3QyIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIKUmFzc2U6IE1lbnNjaCwgIEdpbGRlOiBBYmVudGV1cmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAwMDowNjozNiwgICBTcGllbGVybGV2ZWw6IDEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEZXIgRWluemlnIFdhaHJlIEtvZWxuZXIgU3RhbW10aXNjaCAoQW5hdG9sLCAxMy4gRGV6IDE5OTgsIDAxOjI2OjA1KToKfiMhIHJuPUx1ZyBydD05MTM1MDUwNTEgcmc9dHJlZmZlbgp+IyEgdGlkPTkxMzIwNjg0MwpaaXRhdCBMdWc6IFRvbGwsIGljaCB3ZXJkIHdvaGwgQ2hyaXN0Li4uCgpOYSBlbmRsaWNoISA6bykKCkFuYXRvbCAtIGZyZXV0IHNpY2gKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBEZXIgRWluemlnIFdhaHJlIEtvZWxuZXIgU3RhbW10aXNjaCAoTHVnLCAxMy4gRGV6IDE5OTgsIDAxOjI3OjI5KToKfiMhIHJuPUFuYXRvbCBydD05MTM1MTIzNjUgcmc9c2NobWFycm4KfiMhIHRpZD05MTMyMDY4NDMKS2xhciBkb2NoLAoKc292aWVsIEJvZXNhcnRpZ2tlaXQgemllaHQgbWljaCBhbi4uLgoKSGFoCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW5mbGF0aW9uPz8/IChKYW1lc29uLCAxMy4gRGV6IDE5OTgsIDAyOjQ4OjQ1KToKTXVjayBmbGF0dGVydCBoZXJlaW4uCk11Y2sga3JhZWNoenQ6IC4uLiBrcnJyb29vYWFhIC4uLiBIYWxsbyBlaW4gLiwgSGlwcGUsIGVpbiBXZWlzc2tlaGxjaGVuLApNdWNrIGtyYWVjaHp0OiBIaXBwZSwgSGlwcGUsIEhpcHBlLCBIaXBwZSwgZWluIE11ZWxsc2NobHVja2VyLCBCZWxnYXJpYWQgdW5kCk11Y2sga3JhZWNoenQ6IEphbWVzb24gLi4uCgpIb2ZmZW50bGljaCBnaWJ0J3MgZGF2b24gbmljaHQgd2lya2xpY2ggc28gdmllbGUgOikKCmpBbWVzb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFNRCBrb250cmEgV2luZG9vZiEgKEFudGlsZW5hLCAxMy4gRGV6IDE5OTgsIDE1OjU4OjAxKToKRWluaWdlIHZvbiBldWNoIHdpc3NlbiBqYSwgZGFzcyBpY2ggbGV0enRlbnMgbWVpbiBNYWluYm9hcmQgbWl0IEFPTCBnZWNyYXNodApoYWJlLgpJY2ggaGFiZSBkYXJhdWZoaW4gYmVzY2hsb3NzZW4sIG5pY2h0IG51ciBlaW4gbmV1ZXMgQm9hcmQsIHNvbmRlcm4gYXVjaCBlaW5lbgpuZXVlbiBQcm96ZXNzb3IgenUga2F1ZmVuLgpBbnN0YXR0IG5lbiBJbnRlbCAxMzMgaGFiIGljaCBtaXQgbmVuIEFNRCBLNi0yIDMwMCBnZWhvbHQuCkx1c3RpZ2Vyd2Vpc2UgdmVyaGluZGVydCBkaWVzZXIgUHJvemVzc29yIGVyZm9sZ3JlaWNoIGRpZSBJbnN0YWxsYXRpb24gc293b2hsCnZvbiBXaW45NSAoYikgYWxzIGF1Y2ggdm9uIFdpbiBOVC4KCkljaCBkYWNodGUsIGRhcyBzZWkgbHVzdGlnIGdlbnVnLCBoaWVyIHZlcm9lZmZlbnRsaWNodCB6dSB3ZXJkZW4uCgpBbnRpbGVuYSwgd2llZGVyIGlocmVuIEludGVsIDEzMyBiZW51dHplbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSW5mbGF0aW9uPz8/IChBbmF0b2wsIDEzLiBEZXogMTk5OCwgMTY6NDA6NDcpOgp+IyEgcm49SmFtZXNvbiBydD05MTM1MTczMjUgcmc9c2NobWFycm4KfiMhIHRpZD05MTM1MTczMjUKV3VhaCwgVU5EIGF1Y2ggbm9jaCBCZWxnYXJpYWQuIERhcyB3YWVyIHdpcmtsaWNoIHNjaGxpbW0uCgpBbmF0b2wgLSBjb3VsZG4ndCByZXNpc3QgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQU1EIGtvbnRyYSBXaW5kb29mISAoR3VuZHVyLCAxMy4gRGV6IDE5OTgsIDE4OjI3OjM3KToKfiMhIHJuPUFudGlsZW5hIHJ0PTkxMzU2NDY4MSByZz1zY2htYXJybgp+IyEgdGlkPTkxMzU2NDY4MQpEYXMgaGFsdCBpY2ggZnVlciBlaW4gR2VydWVjaHQKRGVyIHByb3plc3NvdHIgbGFldWZ0IHVudGVyIFdpbiA5NSBhIGIgV2luIDk4IFdpbiBOVCBlaW53YW5kZnJlaS4uClZpZWxsZWljaHQgbGllZ3RzIGFuIHdhcyBhbmRlcmVtPyA6LSkKTW9lZ2xpY2hlcndlaXNlIGRhcmFuIGRhcyBkZXIgQXJ0aWtlbCBoaWVyIGluIFNjaG1hcnJuIHN0ZWh0PwpncnVzcwpHLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBTUQga29udHJhIFdpbmRvb2YhIChLZWxseWJ1bmR5LCAxMy4gRGV6IDE5OTgsIDE5OjEyOjM2KToKfiMhIHJuPUd1bmR1ciBydD05MTM1NzM2NTcgcmc9c2NobWFycm4KfiMhIHRpZD05MTM1NjQ2ODEKSmVkZXIgdmVybnVlbmZ0aWdlIFByb3plc3NvciBoYXQgc2NobGllc3NsaWNoIHNlaW5lbiBTdG9seiwgbGllZ3RzIHZpZWxsZWljaHQKZGFyYW4/CgpEdW1wZmJhY2tlIHNlbmZlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBaGphLiAoUGF0cnluLCAxMy4gRGV6IDE5OTgsIDIwOjUyOjM3KToKfiMhIHJuPVdvb2R5IHJ0PTkxMzQxMTE1NCByZz1zY2htYXJybgp+IyEgdGlkPTkxMzQxMTE1NAppbW1lciBub2NoIGJlc3NlciwgYWxzIGRpZSB0YXVzZW5kIGxldWNodGVuZGVuIHNhY2hlbiwgZGllIGVpbmVtIGhldXR6dXRhZ2UKcmVnZWxyZWNodCBhdWZnZWRyYWVuZ3Qgd2VyZGVuIDopCm5lbiBvcmRlbnRsaWNoZXMgbGljaHRzeXN0ZW0gd3VlcmRlIHNpY2hlcmxpY2ggaGVsZmVuLCBkYW5uIGtvZW5uZW4gZGllCmRpbmdlciBsZXVjaHRlbiBhYmVyIDQgbGV1Y2h0ZW5kZSBzdGlmdGUgbWFjaGVuIG5vY2gga2VpbmUgc29ubmUgOikKCi0tLS0tLQpwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFNRCBrb250cmEgV2luZG9vZiEgKEdyaW1tYm9ybiwgMTMuIERleiAxOTk4LCAyMzozOToxNSk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTkxMzU3NjM1NiByZz1zY2htYXJybgp+IyEgdGlkPTkxMzU2NDY4MQpOaWNodCBhYmxlbmtlbi4gV2VubiBEdSBkZW4gUHJvemVzc29yLCBhdWYgZGVtIHNpY2hlcmxpY2ggZWluIGJvZXNlciBGbHVjaApsYXN0ZXQsIGxvc3dlcmRlbiB3aWxsc3Qgc2FnIEJlc2NoZWlkLCBpY2ggd3VlcmRlIGlobiBmYWNoZ2VyZWNodCBlbnRzb3JnZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklkbGVtdWQgTW9yZ2VuZ3JhdWVuPyAoQW5hdG9sLCAxNC4gRGV6IDE5OTgsIDA0OjUzOjUzKToKCj4ga3dlcgogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTW9uLCAxNC4gRGV6IDE5OTgsIDA0OjUyOjQ5ICg2IFRlaWxuZWhtZXIpCgpBZm1vZGlmLi4uLi4uLi5KLnogTWVza29uby4uLi4uLi4uSndTIEFuYXRvbC4uLi4uLi4uLi4uUyBSZWRub3NlLi4uLi4uLi5KLlMKWmluby4uLi4uLi4uLi4uSi56IEtyZXRlay4uLi4uLi4uLkp3TQoKLi4uLiAqZ2FlaG4qCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJZGxlbXVkIE1vcmdlbmdyYXVlbj8gKFhhbmQsIDE0LiBEZXogMTk5OCwgMDc6MjE6NDgpOgp+IyEgcm49QW5hdG9sIHJ0PTkxMzYxMTIzMyByZz1zY2htYXJybgp+IyEgdGlkPTkxMzYxMTIzMwogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTW9uLCAxNC4gRGV6IDE5OTgsIDA3OjIwOjU0ICg0IFRlaWxuZWhtZXIpCgpNZXNrb25vLi4uLi4uLi5Kd1MgUmVkbm9zZS4uLi4uLi4uSi5TIFhhbmQuLi4uLi4uLi4uLi4uUyBLcmV0ZWsuLi4uLi4uLi5Kd00KCkVzIHdlcmRlbiBpbW1lciB3ZW5pZ2VyIGRpZSBJZGVsbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2Nod2VyZSBFbnRzY2hlaWR1bmcgKE5lYiwgMTQuIERleiAxOTk4LCAwOTo0NDoyMCk6CkR1IG11c3N0IERpY2ggamV0enQgZW50c2NoZWlkZW4sIHdlbGNoZXIgUmFzc2UgRHUgaW4gZGllc2VyIFdlbHQgYW5nZWhvZXJlbgptb2VjaHRlc3QuIEFsbGUgUmFzc2VuIGhhYmVuIHZlcnNjaGllZGVuZSBWb3ItIHVuZCBOYWNodGVpbGUsIGluc2dlc2FtdCBhYmVyCmdsZWljaCBndXRlIENoYW5jZW4uIEF1Y2ggZGFzIFN0YXJ0Z2ViaWV0IGhhZW5ndCB2b24gZGVyIGF1c2dld2FlaGx0ZW4gUmFzc2UKYWIuIEltIE5vcm1hbGZhbGwga2FubiBkaWUgUmFzc2UgbmljaHQgbWVociBnZXdlY2hzZWx0IHdlcmRlbiwgbmFjaGRlbSBzaWUgZWluCm1hbCBhdXNnZXdhZWhsdCB3dXJkZS4gVWViZXJsZWdlIERpciBEZWluZSBFbnRzY2hlaWR1bmcgYWxzbyBndXQuIERlcnplaXQgc3RlLQpoZW4gZm9sZ2VuZGUgUmFzc2VuIHp1ciBBdXN3YWhsOgoKMS4gWndlcmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMi4gRWxmICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCjMuIEZlbGluZSAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQuIEhvYmJpdCAgICAgICAgICAgICAgICAgICAgICAgICAgIAo1LiBNZW5zY2ggICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA2LiBNZW5zY2ggCgpEdXJjaCBFaW5nYWJlIGVpbmVyIFppZmZlciB3YWVobHN0IER1IGRpZSBSYXNzZSBhdXMsIGR1cmNoIEVpbmdhYmUgZWluZXMgIj8iCmdlZm9sZ3Qgdm9uIGVpbmVyIFppZmZlciBlcmhhZWxzdCBEdSBuYWVoZXJlIEluZm9ybWF0aW9uZW4gdWViZXIgZWluZSBSYXNzZS4KRWluICI/IiBhbGxlaW4gd2llZGVyaG9sdCBkaWVzZSBMaXN0ZS4KIC4uLi4uLi4uLi4uLi4uCgpOZWIsIHdpcmQgbm9jaCBnYW56IHdhaG5zaW5uaWcgYmVpIGRlciBFbnRzY2hlaWR1bmcgOiAiNSIgb2RlciAiNiIgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBTUQga29udHJhIFdpbmRvb2YhIChSaW5nb3IsIDE0LiBEZXogMTk5OCwgMDk6NTk6MDkpOgp+IyEgcm49QW50aWxlbmEgcnQ9OTEzNTY0NjgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzNTY0NjgxCkRlaW4gUHJvYmxlbSBpc3QgbmljaHQgZGVyIFByb3plc3NvciAoZGVyIGxhZXVmdCBlaW53YW5kZnJlaSksIHNvbmRlcm4gZGllCm1pZXNlIFByb2dyYW1taWVydW5nIHZvbiBXaW5kb3dzLiBEZXIgUHJvemVzc29yIGlzdCBmdWVyIG1hbmNoZQpUaW1pbmctTWV0aG9kZW4gZGllc2VzICJCZXRyaWVic3N5c3RlbXMiIGVpbmZhY2ggenUgc2NobmVsbCB1bmQgYnJpbmd0IGVzCmRhaGVyIGVyZm9sZ3JlaWNoIHp1bSBBYnN0dXJ6LgoKTSQgaGF0IGVpbmVuIFBhdGNoIGRhZnVlciAncmF1c2dlZ2ViZW4uIE5hY2ggZGVyIEluc3RhbGxhdGlvbiBsYWV1ZnQgV2luZG93cwphdWNoIG1pdCBkZW0gUHJvemVzc29yIChodXBzLCBqZXR6dCBoYWV0dGUgaWNoIGZhc3QgImVpbndhbmRmcmVpIiBnZXNjaHJpZWJlbgotIGVzIGlzdCBoYWx0IG5vY2ggZnJ1ZWggOy0pLgoKSW5zdGFsbGllcmVuIHNvbGx0ZXN0IER1IGRlbiBQYXRjaCBhYmVyIGJlc3NlciBub2NoLCBzbyBsYW5nZSBEdSBkZW4gUDEzMwpiZXRyZWlic3QuIFNvbnN0IHdpcmRzIHp1bSBHbHVlY2tzc3BpZWwsIG9iIGRhcyBTeXN0ZW0gbGFuZ2UgZ2VudWcgc3RhYmlsCmxhZXVmdCwgdW0gZGVuIFBhdGNoIHp1IGluc3RhbGxpZXJlbiAuLi4gO14pCgpSaW5nb3IKClAuUy46IFdpZSBtYW4gZWluIE1haW5ib2FyZCBkdXJjaCBBT0wga2FwdXR0IGJla29tbWVuIGthbm4sIHNvbGx0ZXN0IER1IHVucwphYmVyIG5vY2ggdmVycmF0ZW4uIEhvZXJ0IHNpY2ggZmFzdCBzbyBpbnRlcmVzc2FudCBhbiB3aWUgZGllIGJvZXNlbiBWaXJlbiwKZGllIEhhcmR3YXJlIGJlc2NoYWVkaWdlbi4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLSS1LdWg/IChNb3Jnb3RoLCAxNC4gRGV6IDE5OTgsIDEyOjU1OjA3KToKW1RvZDpMYXJzXSBFaW5lIE1pbGNoa3VoIGhhdCBnZXJhZGUgRHJhY3VsYSB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgTWlsY2hrdWhdIEthdWYgRGVpbmUgU3RlYWtzIGdlZmFlbGxpZ3N0IGJlaW0gRmxlaXNjaGVyLCBEcmFjdWxhIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9obmUgd29ydGUgKFNoYW5uYXJhLCAxNC4gRGV6IDE5OTgsIDEyOjU1OjExKToKW1RvZDpMYXJzXSBFaW5lIE1pbGNoa3VoIGhhdCBnZXJhZGUgRHJhY3VsYSB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgTWlsY2hrdWhdIEthdWYgRGVpbmUgU3RlYWtzIGdlZmFlbGxpZ3N0IGJlaW0gRmxlaXNjaGVyLCBEcmFjdWxhIQpbQmVpbGVpZDpUdU5peEd1dF0gRWluZSBXQVM/CltCZWlsZWlkOkdvcm9nXSB1aG9vbwpbQmVpbGVpZDpaaW5vXSBNdXV1dWh1dXV1aAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvdy4uLiAoTm92YXN0b3JtLCAxNC4gRGV6IDE5OTgsIDE1OjUzOjU1KToKS3JldGVLIG11c3RlcnQgRGljaCBlaXNrYWx0IHVuZCB2ZXJzY2h3aW5kZXQgZGFubiBsYXV0bG9zLgpLcmV0ZWsgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IFBhc3NhdS4KUGFzc2l2IHNlaXQ6IDFkIDE5OjQ2OjI5Ci4uLgoKCkRhcyBkaWUgWmVpdCBpbSBNdWQgX3NvXyBzY2huZWxsIHZlcmdlaHQgKmFlY2h6KgogICAgIE5vdmEsIGhhdCB3aXJrbGljaCBzbyBzY2huZWxsIHdpZSBlciBrb25udGUgZ2V0aXBwdCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgd2FhYWFhYWFhYWggOykgKEphc29ucmlnaWQsIDE0LiBEZXogMTk5OCwgMTY6MTY6MjYpOgpQZWRybyBsZWNrdCBzaWNoIHNlaW4gRmVsbC4KUGVkcm8gc2NoYXV0IERpY2ggbWl0IGxldWNodGVuZGVuIEF1Z2VuIGFuLgoKPiBzdHJlaWNoZWxlIHBlZHJvCgpEdSBzdHJlaWNoZWxzdCBQZWRyby4KUGVkcm8gc2NobnVycnQgRGljaCBnbHVlY2tsaWNoIGFuLgoKPiBrbnVkZGVsIHBlZHJvCkR1IGtudWRkZWxzdCBQZWRyby4KIFBlZHJvIHNjaGxpZXNzdCBkaWUgQXVnZW4gaGFsYiB1bmQgc2NobXVzdCBzaWNoIGFuIERpY2ggcmFuLgoKPiBob2xlIHR1ZXIKCjxob2xlIHRpZXI+IHdhZXJlIGtvcnJla3QhCgoKSWNoIHdlcmQgbm9jaCBpcnJlIGhpZXIuCgpKYXNvbiwgZGVyIEhhbmQtQXVnZS1Lb29yZGluYXRpb24gYmVyYXVidAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHZlcnN1Y2ggbnIgMyAoVGlsbHksIDE0LiBEZXogMTk5OCwgMTY6MjY6NDMpOgp+IyEgcm49UWl0ZXNzIHJ0PTkxMzY1MjczNiByZz1zY2htYXJybgp+IyEgdGlkPTkxMzY1MjczNgpTZWhyIHNjaG9lbiwgYWJlciB3aWVzbyBoYXQgZGVyIFNjaG5lZW1hbm4gZWluZW4gQnJvdHNjaGllYmVyIGluIGRlciBIYW5kPyA+OikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBTUQga29udHJhIFdpbmRvb2YhIChBY3JpbW9uLCAxNC4gRGV6IDE5OTgsIDE2OjQwOjE4KToKfiMhIHJuPUFudGlsZW5hIHJ0PTkxMzU2NDY4MSByZz1zY2htYXJybgp+IyEgdGlkPTkxMzU2NDY4MQpIbW0uIEVudHdlZGVyIGRlciBBTUQgYmVzaXR6dCBJbnRlbGxpZ2Vueiwgb2RlciBlciBiZXNpdHp0IEdlc2NobWFjaywgb2RlciBlcgpiZXNpdHp0IGJlaWRlcy4KQW5kZXJzIGthbm4gaWNoIGVzIG1pciBuaWNodCBlcmtsYWVyZW4uCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGllc2VzIEphaHIga2VpbiBXZWlobmFjaHRzbWFubiEgKEdyaW1tYm9ybiwgMTQuIERleiAxOTk4LCAxODozMTowNCk6Cn4jISBvbj1KYW1lc29uIG90PTkxMzY1OTgwNCBvZz13aXR6ZQp+IyEgcm49QWNyaW1vbiBydD05MTM2NTk3NDQgcmc9d2l0emUKfiMhIHRpZD05MTM2NTkwMjQKbmltbSdzIGRvY2ggZXJuc3QgOi0pCnNlbGJlciBzY2h1bGQKCmpBbWVzb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERpZXNlcyBKYWhyIGtlaW4gV2VpaG5hY2h0c21hbm4hIChHcmltbWJvcm4sIDE0LiBEZXogMTk5OCwgMTg6MzE6MDUpOgp+IyEgb249QWNyaW1vbiBvdD05MTM2NTk4NDQgb2c9d2l0emUKfiMhIHJuPUphbWVzb24gcnQ9OTEzNjU5ODA0IHJnPXdpdHplCn4jISB0aWQ9OTEzNjU5MDI0CldpZSBrYW5uIGljaCBhbWVyaWthbmlzY2hlbiBLaXRzY2ggZXJuc3RuZWhtZW4/CkRlciB3YXIgZG9jaCBuaWUgZGF6dSBnZWRhY2h0LCBlcm5zdGdlbm9tbWVuIHp1IHdlcmRlbi4KCkFjcmltb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1YSA6KSAoS2VsbHlidW5keSwgMTQuIERleiAxOTk4LCAxOTowNzo1OCk6CgpIdXRzY2hhdCBkZXIgVmVyd2FsdGVyIGRlcyBDaGFvcy4KS3J1dW9scSBkZXIgb2JlcnN0ZSBNZWlzdGVyIGRlcyBDaGFvcy4KPnRyZXRlIGdpbGRlIGJlaQpIYWxsbyBpbiBkZXIgdW5nbGF1YmxpY2hlbiBHaWxkZSBkZXIgS2FlbXBmZXIgZGVzIENoYW9zIQpXdW0gd2VocnQgInRyZXRlIiBhYi4KUmVhcGVyIHdlaHJ0ICJ0cmV0ZSIgYWIuClRpbGx5IHdlaHJ0ICJ0cmV0ZSIgYWIuCldvb2R5IHdlaHJ0ICJ0cmV0ZSIgYWIuClNoYXJpYSB3ZWhydCAidHJldGUiIGFiLgpNdXJtZWwgd2VocnQgInRyZXRlIiBhYi4KCkR1bXBmYmFja2UsIHNpY2ggZ2VlaHJ0IGZ1ZWhsZW5kIHZvbiBzb3ZpZWwgQm9zaGVpdCAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoaGhqYSAoTW9yZ290aCwgMTQuIERleiAxOTk4LCAyMjo0MTo1NCk6CkR1IHRlaWxzdCBkZWluZW4gRnJldW5kZW4gbWl0OiBhcmdsLCBkaWVzZXIgcGFyYWNlbHN1cyBhdWYgbWVpbmVtIGZiYW5kLi4uClBhcmFjZWxzdXMgaGF0IGRpZSBGcmV1bmRzY2hhZnQgbWl0IERpciBnZWxvZXN0LgoKbmFqYSwgU08gd2FycyBuY2lodCBnZW1laW50Li4uaGFldHRlIGVyIGF1ZiBkYXMgbmFlY2hzdGUgZnJ1ZmUgZ2V3YXJ0ZXQuLi4uCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmFuZG9tIG1hbCB3aWVkZXIgKERhcmt3aW5nLCAxNS4gRGV6IDE5OTgsIDAwOjQ1OjM2KToKIER1IHZlcnNldHp0IGRlbSBGZXVlcnN0ZWluZHJhY2hlbiBlaW5lbiBoZWltdHVlY2tpc2NoZW4gS2FtcGZ0cml0dC4KRHUgdmVybGV0enQgRGljaCBoYXVwdHNhZWNobGljaCBzZWxic3QuOz4gICBEdSBncmVpZnN0IGRlbiBGZXVlcnN0ZWluZHJhY2hlbgptaXQgWHJhcydLcnV6IGFuLgpEaWUgU2NodXR6YXVyYSB1bSBEaWNoIGxvZXN0IHNpY2ggbGFuZ3NhbSBhdWYuCkRlciBTY2hpbGRzdG9zcyBnaW5nIHZvZWxsaWcgZGFuZWJlbiEgRHUgaGF1c3QgRGlyIGRpZSByb3RlIERyYWNoZW5zY2h1cHBlCmdlZ2VuIGRlbiBLb3BmLiBBdWEhOz4gSW0gRWlmZXIgZGVzIEdlZmVjaHRzIGZhZWxsdCBEaXIgZWluZmFjaCBzbyBEZWluZSBXYWZmZQphdXMgZGVyIEhhbmQuIER1bW0KZ2VsYXVmZW4hCgp3YXJlbiBqYSBudXIgMyAxMDAlIFNraWxscyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFoaGhqYSAoTHVnLCAxNS4gRGV6IDE5OTgsIDAxOjQ3OjA3KToKfiMhIHJuPU1vcmdvdGggcnQ9OTEzNjc1MzE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzNjc1MzE0CkFoamE/CgpEYSBrZW5uIGljaCBub2NoIGVpbmVuIGRlciBuaWNodCByaWNodGlnIGhpbmhvZXJ0Li4uCgpUc3MKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmFuZG9tIG1hbCB3aWVkZXIgKEx1ZywgMTUuIERleiAxOTk4LCAwMTo0ODo0Nyk6Cn4jISBybj1EYXJrd2luZyBydD05MTM2ODI3MzYgcmc9c2NobWFycm4KfiMhIHRpZD05MTM2ODI3MzYKCk5hamEsCgoKd2FzIHNvbGwgaWNoIGRhIHNhZ2VuPyAxMDAgU2tpbGwgdW5kIHZvZWxsaWcgZml0IHNhZ3Qgbml4LgoKVmVycGF0emVuZApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSYW5kb20gbWFsIHdpZWRlciAoTW9yZ290aCwgMTUuIERleiAxOTk4LCAwOTo1MTozOCk6Cn4jISBybj1EYXJrd2luZyBydD05MTM2ODI3MzYgcmc9c2NobWFycm4KfiMhIHRpZD05MTM2ODI3MzYKRGFmdWVyIGlzdCBEZWluIEN1dCZQYXN0ZSBTa2lsbCBhdWYgLTI1MCUuIFVlYiBkZW4gbGllYmVyIG1hbC4KTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQU1EIGtvbnRyYSBXaW5kb29mISAoTGVuYSwgMTUuIERleiAxOTk4LCAxMjozNToyMyk6Cn4jISBybj1SaW5nb3IgcnQ9OTEzNjI5NTQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzNTY0NjgxCldpZSBBT0wgbWVpbiBCb2FyZCB6ZXJzdG9lcnRlLCBmYWxscyBlcyBkYXMgd2FyLCB3ZWlzcyBpY2ggbmljaHQuCkFiZXIgZ2VuZXJlbGwgaXN0IGVzIG1vZWdsaWNoLCBkdXJjaCBQcm9ncmFtbWUsIGFsc28gYXVjaCBWaXJlbiwgYmVzdGltbXRlCmhhcmR3YXJlIHp1IGJlc2NoYWVkaWdlbi4KWnVtIEJlaXNwaWVsIGlzdCBlcyBtb2VnbGljaCwgZGVuIEVsZWt0cm9uZW5zdHJhaGwgZGVzIE1vbml0b3JzIGltbWVyIGF1ZiBkZW4KZ2xlaWNoZW4gUHVua3QgenUgbGVua2VuIHVuZCBzb21pdCBkaWVzZW4gUHVua3QgYXVzenVicmVubmVuLgoKRGFua2UgZnVlciBEZWluZW4gVGlwLgoKTGVuLgphLgo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQU1EIGtvbnRyYSBXaW5kb29mISAoUGF0cnluLCAxNS4gRGV6IDE5OTgsIDEyOjU1OjMzKToKfiMhIHJuPUxlbmEgcnQ9OTEzNzI1MzIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzNTY0NjgxCmR1IG11c3N0IGphIG5lIHRvbGxlIGdyYWZpa2thcnRlIGhhYmVuLiBlaW5lIGlibS1rb21wYXRpYmxlIGthbm4gZGllcwp6dW1pbmRlc3QgbmljaHQgc2Vpbi4uLiA6KQoKLS0tLS0tCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQU1EIGtvbnRyYSBXaW5kb29mISAoWmlsbHVzLCAxNS4gRGV6IDE5OTgsIDEyOjU3OjA2KToKfiMhIHJuPVBhdHJ5biBydD05MTM3MjY1MzMgcmc9c2NobWFycm4KfiMhIHRpZD05MTM1NjQ2ODEKQXJtZXIgUHVua3QsIGRlciBnYW56IGF1c2dlYnJhbm50IHdpcmQuIFp1bSBHbHVlY2sgYmVzdGVodCBtZWluIE1vbml0b3IgYXVzCm1laHJlcmVuIFB1bmt0ZW4gOi0pCgpaaWxsdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5lZWVlLCBuZT8gKEFuYXRvbCwgMTUuIERleiAxOTk4LCAxMzo1MDoyNCk6CkRlaW5lIEZyZXVuZGluIEFsaW5lIHRlaWx0IERpciBtaXQ6IEtsYWVyIG1hbCBiaXR0ZSBlaW5lciBBbmF0b2wgYXVmIQpMZWlibml6IHJ1ZnQ6IG5lIGRlbiBoYWIgaWNoIGRvY2ggc2Nob24KCkFsc28uLi4KTmVlZWUsIG5lPwpBbmF0b2wuIEthbm4gR2VzaWNodGVyIHVudGVyc2NoZWlkZW4uIE5pY2h0IG51ciBHZXNpY2h0ZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQU1EIGtvbnRyYSBXaW5kb29mISAoUmluZ29yLCAxNS4gRGV6IDE5OTgsIDE1OjIwOjI1KToKfiMhIHJuPUxlbmEgcnQ9OTEzNzI1MzIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzNTY0NjgxCk1pdCBmdW5rdGlvbnNmYWVoaWdlciBTdGV1ZXJlbGVrdHJvbmlrIGRlcyBNb25pdG9ycz8gVW5kIHJlaW4gc29mdHdhcmVtYWVzc2lnPwoKVmVyZ2lzcyBlcy4KClJpbmdvciBmcmFndDogd28ga2FubiBtYW4gZGllIFJ1YnJpayAibW9kZXJuZSBNYWVyY2hlbiIgYmVhbnRyYWdlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFNRCBrb250cmEgV2luZG9vZiEgKENhdHdlYXpsZSwgMTUuIERleiAxOTk4LCAxNTo0MzoxMSk6Cn4jISBybj1SaW5nb3IgcnQ9OTEzNzM1MjI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzNTY0NjgxCk5pY2h0c2Rlc3RvdHJvdHoga2FubnN0IER1IG1pdCBuZW0gU29mdHdhcmV2aXJ1cyBkZW4gTW9uaXRvciBzY2hyZWRkZXJuLiAKV2VubiBkZXIgTW9uaXRvciBiaXMgYW4gZGllIEdyZW56ZW4gc2VpbmVyIExlaXN0dW5nc2ZhZWhpZ2tlaXQgYXVzZ2VsYXN0ZXQgaXN0Cih1bmQgc28gc3RlbGx0IG1hbiBzZWluZW4gTW9uaXRvciBqYSBudSBpbiBkZXIgUmVnZWwgZWluLCBqZSBtZWhyIEh6IGRlc3RvCmJlc3NlciAqYWVoZW0qKSwgYnJhdWNodCBtYW4gbnVyIG5vY2ggZWluIGJpc3NjaGVuIGFtIHJpY2h0aWdlbgpTb2Z0d2FyZS1SYWVkY2hlbiBkZXIgR3JhcGhpa2thcnRlIGRyZWhlbiB1bmQgc2Nob24gd2lyZCBkYXMgQmlsZCBlaW5pZ2UKWmVpbGVuIGhvZWhlciAoZGEgZ2lidHMgaW4gZGVyIFJlZ2VsIHNvZ2FyIFRvb2xzIGZ1ZXIsIGhhdCBiZXN0aW1tdCBzY2hvbgpqZWRlciBnZXNlaGVuKS4gVW5kIHNjaG9uOiBQYXR6ISBWZXJ0cmFlZyBkZXIgTW9uaXRvciBkaWUgRnJlcXVlbnogbmljaHQgbWVocgp1bmQgYWRpb3MgbXVjaGFjaG8uCjpIYWIgaWNoIHNjaG9uIHNlbGJlciBtaXRlcmxlYnQgKE5laW4sIG5pY2h0IHNlbGJlciBnZW1hY2h0IDotKS4KCllvdXJzIHRydWx5LAogICAgQ2F0d2VhemxlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBTUQga29udHJhIFdpbmRvb2YhIChNdWFkaWIsIDE1LiBEZXogMTk5OCwgMTU6NTM6NTYpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTkxMzczNjU5MSByZz1zY2htYXJybgp+IyEgdGlkPTkxMzU2NDY4MQp3aWUgc2Nob2VuIGRhc3MgbWVpbiBtb25pdG9yIGRhIG91dC1vZi1yYW5nZSBhbnplaWd0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBTUQga29udHJhIFdpbmRvb2YhIChSaW5nb3IsIDE1LiBEZXogMTk5OCwgMTU6NTg6NDIpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTkxMzczNjU5MSByZz1zY2htYXJybgp+IyEgdGlkPTkxMzU2NDY4MQpWb24gZWluZmFjaGVtIFVlYmVybGFzdGVuIGRlcyBNb25pdG9ycyB3YXIgamEgYXVjaCBnYXIgbmljaHQgZGllIFJlZGUsIHNvbmRlcm4Kdm9uIGdlemllbHRlbSBBdXNicmVubmVuIGVpbnplbG5lciBQdW5rdGUuIDstKQoKVW5kIGRhcyBVZWJlcmxhc3RlbiBzb2xsdGUgYXVjaCBudXIgbWl0IGFlbHRlcmVuIE1vbml0b3JlbiBrbGFwcGVuLCBkaWUgenVkZW0KbWVpc3QgYXVjaCBub2NoICpkZXV0bGljaGUqIFdhcm5zaWduYWxlIGFiZ2ViZW4gKFBmZWlmZW4sIHRvdGFsIHZlcnplcnJ0ZXMKQmlsZCBvLmFlLikuIFdlciBkYW5uIG5pY2h0IGVpbmdyZWlmdCwgaXN0IHNlbGJzdCBTY2h1bGQuCgpBdWYgZGVtIEFtaWdhIGdhYiBlcyBkYW1hbHMgc29nYXIgZWluIFByb2dyYW1tLCBkYXMgbWl0IGRlbSBTY2hyZWliLS9MZXNla29wZgpkZXIgRmxvcHB5IE11c2lrIGdlbWFjaHQgaGF0LCBpbmRlbSBlcyBzZWxiaWdlbiBpbiBlbnRzcHJlY2hlbmQgaG9oZW4KRnJlcXVlbnplbiBpbW1lciBiaXMgenVtIEFuc2NobGFnIGF1c2dlbGVua3QgaGF0LiBLbGFyLCBkYXNzIG1hbiAqc28qIGF1ZgpEYXVlciBhdWNoIEhhcmR3YXJlIGthcHV0dCBiZWtvbW10IC4uLiBdOi0+CgpSaW5nb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFSR0wgKFR3aW5zZW4sIDE1LiBEZXogMTk5OCwgMjA6NTU6NDYpOgpWZXJnbGljaGVuIG1pdCBEZWluZW4gTWl0c3BpZWxlcm4sIGtlbm5zdCBEdSBEaWNoIGltIE1vcmdlbkdyYXVlbiBiZXNzZXIgYWxzCmRlciBEdXJjaHNjaG5pdHQgYXVzLiBBYnNvbHV0IGdlc2VoZW4gYmlzdCBEdSBkdXJjaGF1cyBzY2hvbiBoZXJ1bWdla29tbWVuLgoKVW0gU2VoZXIgb2RlciBNYWdpZXIgd2VyZGVuIHp1IGtvZW5uZW4gc29sbHRlc3QgRHUgRGljaCBiZXNzZXIgaW0gTW9yZ2VuR3JhdWVuCmF1c2tlbm5lbiBhbHMgZGVyIER1cmNoc2Nobml0dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSWRsZW11ZCBNb3JnZW5ncmF1ZW4/IChKaWRkdSwgMTUuIERleiAxOTk4LCAyMToxMzozNik6Cn4jISBybj1YYW5kIHJ0PTkxMzYyMDEwOCByZz1zY2htYXJybgp+IyEgdGlkPTkxMzYxMTIzMwpVbmQgZGFzIGJlaSBlaW5lciBrb25zdGFudGVuIFphaGwgdm9uIDEgbmljaHQtaWRlbG5kZW0uIFRvbGwuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDaGFvcy4uLiAoVHJhbmNlZmVhciwgMTUuIERleiAxOTk4LCAyMjoyNToyNik6ClR3aW5zZW4gZmFlbmd0IHBsb2V0emxpY2ggYW4genUgenVja2VuLgpUd2luc2VuIGZ1Y2h0ZWx0IG1pdCBkZW4gSGFlbmRlbiBoZXJ1bSwgdW5kIHNwcmljaHQgc2VsdHNhbWUgV29ydGUuIFBsb2V0emxpY2gKc2NoZWluZW4gc2VpbmUgc2VsdHNhbWVuIEFuZmFlbGxlIHdlZyB6dSBzZWluLgpSaWt1cyBzYWd0OiBwYXJraW5zb24/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQU1EIGtvbnRyYSBXaW5kb29mISAoVHJhbmNlZmVhciwgMTUuIERleiAxOTk4LCAyMjozMDoxMCk6Cn4jISBybj1MZW5hIHJ0PTkxMzcyNTMyMyByZz1zY2htYXJybgp+IyEgdGlkPTkxMzU2NDY4MQpiZWkgaGQgb2RlciBmZCBkZW4gbW90b3IgaW1tZXIgYW4gZGVuIGFuc2NobGFnIGZhaHJlbiBpbW1lciB1bmQgaW1tZXIgd2llZGVyLgpkYXMgbWFjaHQgZGVyIGF1Y2ggbmljaHQgc28gbGFuZ2UgbWl0Li4KCnRmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDaGFvdGVuIC4uLiAoVGlsbHksIDE2LiBEZXogMTk5OCwgMDE6MTQ6MTIpOgpUaG9yIGtuaWV0IHNpY2ggaGluIHVuZCBiZWdpbm50IHdpZSB3aWxkIGVpbiBQZW50YWdyYW1tIGF1ZiBkZW4gQm9kZW4genUKbWFsZW4uIFNpZSBtYWNodCBkYWJlaSBzZWx0c2FtZSBCZXdlZ3VuZ2VuIG1pdCBkZW4gRmluZ2VybiB1bmQgZ3J1bW1lbHQKbWFnaXNjaGUgV29ydGUuClRob3IgaHVlcGZ0IHVtIGRhcyBQZW50YWdyYW1tIGhlcnVtLCBtdXJtZWx0IHNlbHRzYW1lIFdvcnRlIHVuZAp6ZWljaG5ldCBzY2h3dW5ndm9sbCBlaW5lbiBncm9zc2VuIEtyZWlzIGF1cyB2aWVsZW4ga2xlaW5lbiBSdW5lbiBkYXJ1bQpoZXJ1bSwgaW1tZXIgd2llZGVyIHVudGVyYnJvY2hlbiB2b24gc2VsdHNhbWVuIEdlc3RlbiB1bmQgV29ydGVuLgpHcmsgdmVyYnJlaXRldCBkZW4gR2VydWNoIGRlcyBUb2Rlcy4KS3J1ZnR1ciBrb21tdCBhbi4KU2loYXlhIGtvbW10IGFuLgoKVGlsbHkgKG5vY2ggc3RhdW5lbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ2hhb3RlbiAuLi4gKFRhcmluYSwgMTYuIERleiAxOTk4LCAwMToxOToxOCk6Cn4jISBybj1UaWxseSBydD05MTM3NzA4NTIgcmc9c2NobWFycm4KfiMhIHRpZD05MTM3NzA4NTIKdW5kIHdhcyBpc3QgZGFyYW4gc28genVtIHN0YXVuZW4/ClRhcmluYSAoYWhudW5nc2xvcykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFoaGphIDotKSAoTmFpcm9sZiwgMTYuIERleiAxOTk4LCAwNDo1NjowNSk6CmxlaWQgc2hhcmlhIApEdSBsZWlkZXN0IGV0d2FzLgogICAgICAgIExQOjIgKC0yNDgpICBNUDoxNjIgICAqIE5PUk0gRlI6c28gVlM6S0VJTkUKCgoqc2NobHVjayogLi4uIEVUV0FTID8/Pz8gCgoKU2hhcmlhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWhoamEgOi0pIChNb3Jnb3RoLCAxNi4gRGV6IDE5OTgsIDEyOjQwOjAxKToKfiMhIHJuPU5haXJvbGYgcnQ9OTEzNzg0MTY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzNzg0MTY1CkdMdWVjayBnZWhhYnQuLi4ud2VyIGZ1ZXIgc2ljaCBzZWxic3QgbGVpZGV0Li4uLm5hamEuLi4KCk0qIF07LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvbGwgRGV1dHNjaCAoVHdpbnNlbiwgMTYuIERleiAxOTk4LCAxNDozMTo1OSk6CkR1IGZhZWhyc3QgbnVuIG1pdCBlaW5lciBPcmtnZWxlZXJlIG5hY2ggVmVybG9yZW5lcyBMYW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRvbGwgRGV1dHNjaCAoTW9yZ290aCwgMTYuIERleiAxOTk4LCAxNDo0Nzo1Nyk6Cn4jISBybj1Ud2luc2VuIHJ0PTkxMzgxODcxOSByZz1zY2htYXJybgp+IyEgdGlkPTkxMzgxODcxOQpUamEsIGRhIGlzdCBkYXMgcmVpc2UgbGVpZGVyIHp1IHVuZmxleGliZWwsIHNvcnJ5IDstKQpUcml0dCBCbG9vZHlIYXJyeSBtYWwuLi4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBTUQga29udHJhIFdpbmRvb2YhIChHcmltbWJvcm4sIDE2LiBEZXogMTk5OCwgMTU6MTA6NDYpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTkxMzczNjU5MSByZz1zY2htYXJybgp+IyEgdGlkPTkxMzU2NDY4MQpEYXMgaXN0IGRlciBHcnVuZCwgd2llc28gbWFuIGFscyB1c2VyIGJlaSBlaW5lbSB2ZXJudWVuZnRpZ2VuIEJldHJpZWJzc3lzdGVtCih0bSkgbmljaHQgYW4gZGllIEhhcmR3YXJlIGRhcmYuLi4gb2gsIHdpciBzcHJhY2hlbiB2b24gVmlyZW4uIE5ldmVyIG1pbmQsIGRpZQpnaWJ0cyB1bnRlciB2ZXJudWVuZnRpZ2VuIEJldHJpZWJzc3lzdGVtZW4gKHRtKSBqYSBnYXIgbmljaHQuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogYWR2ZW50LCBhZHZlbnQgLi4uIChXb29keSwgMTYuIERleiAxOTk4LCAxNTo0Njo0MSk6Cn4jISBybj1FaXNpIHJ0PTkxMzgxOTc2NyByZz13aXR6ZQp+IyEgdGlkPTkxMzYzNjcwNQo+IFVtbGF1dGVuICh3YW5uIGthbm4gZGFzIE11ZCBlbmRsaWNoIDgtQml0IENoYXJzPykKCndlbm4gc2ljaCBlaW4gRSBkYXp1IGJlcXVlbXQsIGVpbmUgWmVpbGUgaW4gZGVyIE11ZGxpYiBldHdhcyB6dQphZW5kZXJuIDopLCB1bmQgd2VubiBlcyBhbGxlIGFremVwdGllcmVuICh3dWVyZGVuKSAtIGFsc28gbmllIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHp0enR6Li4uIChOb3Zhc3Rvcm0sIDE2LiBEZXogMTk5OCwgMTU6NDg6NTIpOgpbTW9lcmRlcjpHZWlzdCBQaHlnb3MnXSBQaHlnb3MgaXN0IHNjaHVsZCEKCldhcyBnZWh0IGRhIGFiID8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGFkdmVudCwgYWR2ZW50IC4uLiAoQWNyaW1vbiwgMTYuIERleiAxOTk4LCAxNTo1MjowMik6Cn4jISBybj1Xb29keSBydD05MTM4MjMyMDEgcmc9c2NobWFycm4KfiMhIHRpZD05MTM2MzY3MDUKRGFzIGthbm4gaWNoIG5pY2h0IGdsYXViZW4uCklyZ2VuZHdhbm4gd2VyZGVuIGVzIGdhbnogYmVzdGltbXQgYWxsZSBha3plcHRpZXJlbi4KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogYWR2ZW50LCBhZHZlbnQgLi4uIChBY3JpbW9uLCAxNi4gRGV6IDE5OTgsIDE1OjU3OjUyKToKfiMhIHJuPUFjcmltb24gcnQ9OTEzODIzNTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzNjM2NzA1CkF1c3plcmRlbTogU29sbGVuIHNpY2ggZGllIGFuZGVyZW4gNTAwMCBVc2VyIHZvbiA1MCBVc2VybiwgZGllIHp1IGR1bW0gc2luZCwKdW0gZWluZSB2ZXJudWVuZnRpZ2UgS29uZmlndXJhdGlvbiBlaW56dXN0ZWxsZW4sIHZlcmJpZXRlbiBsYXNzZW4sIFVtbGF1dGUgenUKdmVyd2VuZGVuPwpEYXN6IGhldXRlIGlyZ2VuZGVpbiBTeXN0ZW0gbm9jaCBuaWNodCBpbiBkZXIgTGFnZSB3YWVyZSwgSXNvLTg4NTktMSBVbWxhdXRlCmFuenV6ZWlnZW4sIGthbm4gbnVyIGVpbiB0cmF1cmlnZXMgTWFlcmNoZW4gc2Vpbi4KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogYWR2ZW50LCBhZHZlbnQgLi4uIChBbmF0b2wsIDE2LiBEZXogMTk5OCwgMTY6MDc6NDApOgp+IyEgcm49QWNyaW1vbiBydD05MTM4MjM4NzIgcmc9c2NobWFycm4KfiMhIHRpZD05MTM2MzY3MDUKTnVyIHdlaWwgRHUgYmxvZWRlciBCYXllciB2b3IgZWluZXIgdm9sbGVuIEdlbGRraXN0ZSBzaXR6c3QsIGhlaXNzdCBkYXMKbm9jaCBMQU5HRSBuaWNodCwgZGFzcyBlcyB1ZWJlcmFsbCBzbyBpc3QuIEphLCBpY2ggaGFiZSAiYmxvZWRlciBCYXllciIKZ2VzY2hyaWViZW4sIER1IGhhc3QgbWljaCBlYmVuIGFscyAienUgZHVtbSwgdW0gLi4uICIgYmV6ZWljaG5ldCwgYWxzbwpEQVJGIGljaCBkYXMuCgpBbmF0b2wgLSBhc2NpaSAxMjcsIG1laHIgSVNUIE5JQ0hUCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogYWR2ZW50LCBhZHZlbnQgLi4uIChLcmV0ZWssIDE2LiBEZXogMTk5OCwgMTY6MDg6MjEpOgp+IyEgcm49QW5hdG9sIHJ0PTkxMzgyNDQ2MCByZz1zY2htYXJybgp+IyEgdGlkPTkxMzYzNjcwNQpOZWluLCBkYXJmc3QgRHUgbmljaHQhIEljaCBiaW4gbmFlbWxpY2ggYXVjaCBCYXllciwgZmluZGUgbWljaCBhYmVyCmRlc3dlZ2VuIGVocmxpY2ggZ2VzYWd0IG5vY2ggbmljaHQgc28gZnVyY2h0YmFyIGJsb2VkIQogICAgICAgICAgCiAgICAgICAgICBrcmV0ZWtAYW50aXNvY2lhbC5jb20KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBhZHZlbnQsIGFkdmVudCAuLi4gKEFuYXRvbCwgMTYuIERleiAxOTk4LCAxNjowOToyMyk6Cn4jISBybj1LcmV0ZWsgcnQ9OTEzODI0NTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzNjM2NzA1CkphLCB1bmQgRW50c2NodWxkaWd1bmcuLi4gImJsb2VkZXIgQmF5ZXIiIGhhdCBzb3dhcyB2b24gInNjaHdhcnplciBSYXBwZSIKb2RlciBnYXIgImR1bW1lciBad2VyZyIuLi4gc29ycnkuIEFiZXIgQWNyaW1vbiB3aXJkIHZlcnN0ZWhlbiB3YXMgaWNoIG1laW5lLgoKT0RFUj8KCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGFkdmVudCwgYWR2ZW50IC4uLiAoQWNyaW1vbiwgMTYuIERleiAxOTk4LCAxNjoxMTo1MCk6Cn4jISBybj1BbmF0b2wgcnQ9OTEzODI0NDYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzNjM2NzA1CkhtbSBLaXN0ZW4sIGRpZSBuaWNodCBtZWhyIGFscyA3IEJpdCBBc2NpaSBkYXJzdGVsbGVuIGtvZW5uZW4sIGhhYmVuIGRvY2gKc2Nob24gTXVzZXVtc3dlcnQuCkluIHdlbGNoZW0gTXVzZXVtIGJpc3QgRHUgYW5nZXN0ZWxsdD8KU29sbCBpY2ggRGlyIGVpbiBwYWFyIFRpcHMgYXVmIExvY2hrYXJ0ZW4genVzY2hpY2tlbj8KClBTOiBEYXN6IER1IG1pY2ggYWxzICdibG9lZGVyIEJheWVyJyBiZXplaWNobmVzdCwgZWhydCBkaWUgYW5kZXJlbiBCYXllcm4uCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGFkdmVudCwgYWR2ZW50IC4uLiAoQW5hdG9sLCAxNi4gRGV6IDE5OTgsIDE3OjE0OjM4KToKfiMhIHJuPUFjcmltb24gcnQ9OTEzODI0NzEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzNjM2NzA1Ck9jaCwgbmljaHRzIGdlZ2VuIExvY2hrYXJ0ZW4tUG9zdGthcnRlbiwgZGEgaGFiZSBpY2ggc2Nob24gZ2FueiBuZXR0ZQpiZWtvbW1lbiwgZGFua2UgLSBkaWUgd2lyc3QgRHUgYWJlciBuaWNodCBzY2hsYWdlbiBrb2VubmVuIDpvKQoKRGllIE11c2VlbiBEZXV0c2NobGFuZHMgaGFlbmdlbiBpbSBJbnRlcm5ldCwgdmllbGUgaG9lcmVuIGF1ZiAiLip1bmktLipcLmRlIgotIHp1bWluZGVzdCBpbSBTcGFybmllZGVyc2FjaHNlbiBpc3QgZGFzIHNvLiBEZXMgd2VpdGVyZW4gaGF0IG1hbiBhbHMgQW4tCndlbmRlciAoaGllcjogU3R1ZGVudCBvLmIuIFJlY2h0ZSkgbmljaHQgZGllIE1vZWdsaWNoa2VpdCwgc2VpbmUgVGFzdGF0dXIKdm9uIFp1aGF1c2UgbWl0enVicmluZ2VuLCB1bmQgZGllIEluZm9ybWF0aWsgaXN0IHNlaHIgcHJvZ3JhbW1pZXJvcmllbnRpZXJ0LgpEYXMgaGVpc3N0LCBlcyBpc3QgZ3J1bmRzYWV0emxpY2ggKmtlaW4gZWluemlnZXIqIFVtbGF1dCBkYXJzdGVsbGJhciBvZGVyCmF1Y2ggbnVyIGF1ZiBkZXIgVGFzdGF0dXIgenUgZmluZGVuLgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ2hhb3RlbiAuLi4gKEFjcmltb24sIDE2LiBEZXogMTk5OCwgMjA6Mzg6MzUpOgpHZXJhZGUgZWJlbiBwYXNzaWVydDoKCltUb2Q6TGFyc10gRGVyIFdlaWhuYWNodHNtYW5uIGhhdCBnZXJhZGUgRmV1ZXJ3ZWhyIHVtZ2VicmFjaHQuCltUb2Q6RGVyIFdlaWhuYWNodHNtYW5uXSBEaXIgc2NoZW5rIGljaCBnYXJhbnRpZXJ0IG5pY2h0cyEKCkRlciBXZWlobmFjaHRzbWFubiBzY2hlaW50IHVlYmVyIEdpbGRlbiBCZXNjaGVpZCB6dSB3aXNzZW4gOi0pCgpBY3JpbW9uIGtsb3BmdCBkZW0gS3JhbXB1cyBhdWYgZGllIFNjaHVsdGVybi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGFkdmVudCwgYWR2ZW50IC4uLiAoVGVkZHksIDE2LiBEZXogMTk5OCwgMjI6MzY6MzIpOgp+IyEgcm49QW5hdG9sIHJ0PTkxMzgyNDQ2MCByZz1zY2htYXJybgp+IyEgdGlkPTkxMzYzNjcwNQpTZWl0IHdhbm4gYnJhdWNoc3QgZHUgZnVlcnMgQmVzY2hpbXBmZW4gbmUgUmVjaHRmZXJ0aWd1bmc/CgpUZWRkeSwgemllaHQgQW5hdG9sIDIgQXJyb2dhbnpwdW5rdGUgYWIgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQU1EIGtvbnRyYSBXaW5kb29mISAoU3RvcGRlbmJ1cywgMTcuIERleiAxOTk4LCAxMDowNzoyNCk6Cn4jISBybj1HdW5kdXIgcnQ9OTEzNTczNjU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzNTY0NjgxCmljaCBoYWIgYXVjaCBuZW4gQU1EIEsyIDIgMzAwIHVuZCBpY2ggaGFiIG1pb3QgZGVtIGtlaW5lIFByb2JsZW1lLCB3ZWdlcgphZWggd2VkZXIgdW50ZXIgV2luOTgsIFdpbk5UIG9kZXIgTGludXgsIGRhcyBkYXMgd2luIGJlaSBkaXIgbmV0IGxhZXVmdCwKbGllZ3QgYmVzdGltbXQgbmljaCBhbSBQcm96ZXNzb3IgLi4uCgpTZEIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsZXJpa2VyLCBzY2huZWxsZXIgYWxzIGRhcyBMaWNodCBkZXMgTGVtYm9sZCAoTW9yZ290aCwgMTcuIERleiAxOTk4LCAxMToyOTozNCk6CkRlaW4gRnJldW5kIEdvcm9nIHRlaWx0IERpciBtaXQ6IEJpbiBkYWFhYWFhYWFhYWFhYWFhYWFhYWFhYSB3ZXIKRGVpbiBGcmV1bmQgR29yb2cgdGVpbHQgRGlyIG1pdDogbm9vb29vb29vb29vb29vY2g/Ckdvcm9nICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGVyIHJvdGUgYmxpdHogPz8gKFB5cmRhY29yLCAxNy4gRGV6IDE5OTgsIDE0OjI4OjUwKToKW1RvZDpMYXJzXSBFaW4gU2VlYmFlciBoYXQgZ2VyYWRlIEJlbGdhcmlhZCB1bWdlYnJhY2h0LiA8MTQ6MjU6MjQ+CltUb2Q6ZWluIFNlZWJhZXJdIFdlciBzdG9lcnQgbWVpbmVuIFNjaGxhZj8gPDE0OjI1OjI0PgoKW01vZXJkZXI6R2Vpc3QgZWluZXMgYWx0ZW4gU2VlYmFlcnNdIEtvbW0gRHUgbWlyIG51ciB3aWVkZXIsIE1hdGlzISA8MTQ6MjU6NTI+Cgp2b24gTW9lcmRlciBhdWYgRXJtb3JkZXRlciBpbiAyOCBzZWt1bmRlbiwgbmljaHQgc2NobGVjaHQgOikKClB5cmRhY29yIHN0YXVudAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChEaWVkZXIsIDE3LiBEZXogMTk5OCwgMTU6MDI6MjkpOgpbQWJlbnRldWVyOk1lcmN1dGlvXSBXaWUga29tbXQgbWFuIGF1cyBlaW5lbSBGbHVnZHJhY2hlbm1hZ2VuIHJhdXMgPz8KW1RvZDpMYXJzXSBFaW4gRmx1Z2RyYWNoZSBoYXQgZ2VyYWRlIE1lcmN1dGlvIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoaWhpIChCZWxnYXJpYWQsIDE3LiBEZXogMTk5OCwgMTU6MjA6NDApOgpbQWxsZ2VtZWluOkJlbGdhcmlhZF0gc2NoYWNodCBpc3QgbGVlcgpbQWxsZ2VtZWluOkdvbGFzXSBlY2h0LCBkYSBoYWJlIGljaCBuZW4genQgKmZyZXUqCltBbGxnZW1laW46QmVsZ2FyaWFkXSBkYW5uIG1hY2ggaGlubmUKR29sYXMgdGVpbHQgRGlyIG1pdDogd28gaXN0IGRlciBzY2hhY2h0PwoKCipncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGFkdmVudCwgYWR2ZW50IC4uLiAoSmltZGlncml6LCAxNy4gRGV6IDE5OTgsIDE5OjIzOjIwKToKfiMhIHJuPUFuYXRvbCBydD05MTM4Mjg0Nzggcmc9c2NobWFycm4KfiMhIHRpZD05MTM2MzY3MDUKSG9pIEFuYXRvbCwKCld1ZXJkZSBtaWNoIG1hbCBlY2h0IGludGVyc3NpZXJlbiwgd2FzIGRhcyBpc3QsCndhcyBkYSBiZWkgRXVjaCBuaXgga2Fubi4gSnVsaWEgVGVybWluYWxzID8gCk9yaWdpbmFsIFZUMTAwID8gU2VsYnN0IFd5c2UgdGVybWluYWxzIHNvbGx0ZW4KVW1sYXV0ZSBrb2VubmVuLiBEaWUgU3lzdGVtZSBhdWYgZGVuIFJlY2huZXJuL1NlcnZlcm4Kd2hhdGV2ZXJ0IHNvbGx0ZW4gYXVjaCBrb2VubmVuLCBhdXNzZXIgc2llIHNpbmQKd2lya2xpY2ggaG9mZm51bmdzbG9zIHZlcmFsdGV0LCBkYXMgc29sbHRlIHNpY2gKYWJlciBrZWluIFN5c2FkbWluIGxlaXN0ZW4ga29lbm5lbiwgdmVyYWx0ZXRlIApTeXN0ZW1lIGF1ZiBzZWluZXIgaGFyZHdhcmUgenUgZmFocmVuLiBXZW5uIHNvZ2FyCmRpZSBIYXJkd2FyZSB6dSBhbHQgaXN0LCB3dWVyZGUgaWNoIGdlcm5lIHdpc3NlbgptaXQgd2FzIElociBFdWNoIGRhIHF1YWVsZW4gbXVlc3N0LiA6KQpTb2dhciBtaXQgTW9kZW0sIHVuZCBJQk0gWFQgc29sbHRlbiBVbWxhdXRlIGdlaGVuLi4uIDspCgpCdHcsIHdlbm4gRHUgZGVyIGVpbnppZ2UgYmlzdCwgd2FlciBkYXMgamEgZWNodApmYXN0IHp3aW5nZW5kIGRpZSBVbWxhdXRlIGVpbnp1c2NoYWx0ZW4gKmVnKiA7LSkKCkNpYW8sCiBKZEcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1dG9xdWVzdGVyPyAoQmllbGVmZWxkLCAxNy4gRGV6IDE5OTgsIDE5OjUzOjQ4KToKVW5nZXNjaG5pdHRlbjoKRmV1ZXJ3ZWhyICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCltBYmVudGV1ZXI6PFF1ZXN0Pl0gV2FyayBoYXQgZ2VyYWRlIGVpbmUgUXVlc3QgZ2Vsb2VzdDogVmVyaGFlbmduaXMgZGVzCltBYmVudGV1ZXI6PFF1ZXN0Pl0gRHVlc3RlcndhbGRzIQoKLUJpZWxlZmVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IGFkdmVudCwgYWR2ZW50IC4uLiAoQW5hdG9sLCAxNy4gRGV6IDE5OTgsIDIxOjE3OjMyKToKfiMhIHJuPUppbWRpZ3JpeiBydD05MTM5MjI2MDAgcmc9c2NobWFycm4KfiMhIHRpZD05MTM2MzY3MDUKTmFqYSwgenVtaW5kZXN0IGRpZSBTdW4gMy81MCBoYWJlbiBzaWUgbGV0enRlcyBKYWhyIHp1bWluZGVzdCB0ZWlsd2Vpc2UKZ2VnZW4gTGludXgtUENzIGF1c2dldGF1c2NodC4uLgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVwcmVzc2lvbmVuIElJIChMdWcsIDE4LiBEZXogMTk5OCwgMDI6MTg6MzEpOgoKRGVyIGF1Y2ggbm9jaDoKCkFuZHkgc2FndDogTHVnLCB3aWVzbyBkZXByaW1pZXJ0IER1IG1pY2ggbnVyIG5vY2g/CgpGaWRLRwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBhZHZlbnQsIGFkdmVudCAuLi4gKENhdHdlYXpsZSwgMTguIERleiAxOTk4LCAxMTowMDo1Nyk6Cn4jISBybj1BbmF0b2wgcnQ9OTEzOTI5NDUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzNjM2NzA1CkljaCBzZWhlIERlaW4gUHJvYmxlbSBuaWNodC4KV2lyIGhhYmVuIG5vY2ggSVBYZW4gdW5kIHNvZ2FyIG5vY2ggMiBhbHRlIEF0b21rcmFmdHdlcmtlLCBhZWgsIHN1bjQgKG5hIGd1dCwKZGllIHN0ZWhlbiBzaWNoZXJoZWl0c2hhbGJlciBpbiBuZW0gYW5kZXJlbiBHZWJhdWVkZSksIHVuZCBkaWUgCnR1biBwcmltYS4gQXVmIGRpZSBJUFhlbiBoYWIgaWNoIHNvZ2FyIFNvbGFyaXMyLjYgZ2VidWVnZWx0LCBrbGFwcHQgdG9sbCA6KQpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGFkdmVudCwgYWR2ZW50IC4uLiAoSmlkZHUsIDE4LiBEZXogMTk5OCwgMTg6NTY6NDYpOgp+IyEgcm49S3JldGVrIHJ0PTkxMzgyNDUwMSByZz1zY2htYXJybgp+IyEgdGlkPTkxMzYzNjcwNQpJY2ggYXVjaCAtIG5hamEgTXVlbmNoZW4gaXN0IGphIGVpZ2VudGxpY2ggbnVyIHZvbiBCYXllcm4gdW16aW5nZWx0IC4uLgpKaWRkdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWVneXB0aXNjaGUgZmluc3Rlcm5pcyAoS2VsbHlidW5keSwgMTguIERleiAxOTk4LCAyMDozNjoxMSk6CkZpbnN0ZXJuaXMuCj4gRHUgc2llaHN0IGVpbiBMZXVjaHRlbiBpbiBkZXIgVGllZmUuCnVudCBsZXVjaHRlbgpFcyBpc3QgenUgZHVua2VsICEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkllZWVoIChUd2luc2VuLCAxOS4gRGV6IDE5OTgsIDIwOjI4OjE2KToKRWluIHdhYmVybmRlcyBHZWJpbGRlIGVyc2NoZWludCB1cnBsb2V0emxpY2ggdm9yIERpci4KR29vZnkgZGEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYWggKmdyaW5zKiAoU2hhbm5hcmEsIDE5LiBEZXogMTk5OCwgMjE6MTY6NDQpOgpEdSBzYWdzdDogbWlyIHd1cmRlIGRhcyBoYWx0IHp1IGR1bW0gKmcqCidwYXJhY2Vsc3VzIGJla29tbXQgaGFsdCBkaWVzbWFsIHNlaW5lIHJlY2hudW5nCkR1IHNhZ3N0OiBwYXJhY2Vsc3VzIGJla29tbXQgaGFsdCBkaWVzbWFsIHNlaW5lIHJlY2hudW5nCj4gQmFyZCBzYWd0OiBhY2ggc2FnIG1hbC4uLiBpY2ggaGFiIG1hbCBuZSBmcmFnZQonamE/CkR1IHNhZ3N0OiBqYT8KPiBQYXJhY2Vsc3VzICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgoKd2FoLi4uLiAqZyoKClNoYW5uYXJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdXNzYmFsbC1MaWVkIChEZWVwYmx1ZSwgMTkuIERleiAxOTk4LCAyMzoxNDozMik6CkRhcyBGdXNzYmFsbC1MaWVkCi0tLS0tLS0tLS0tLS0tLS0tCgpWaWVydW5kdmllcnppZyBGdXNzYmFsbGJlaW5lCnJhc2VuIGhpbiB1bmQgcmFzZW4gaGVyCkRlbm4gZGFzIFNwaWVsZmVsZCBpc3QgYmVncmVuenQKdW5kIGRhcyBtYWNodHMgYmVzb25kZXJzIHNjaHdlcgoKTWFuY2htYWwgYmxlaWJlbiBzaWUgYXVjaCBzdGVoZW4Kb2RlciB0cmV0ZW4gbmFjaCBkZW0gQmFsbApEQXMga2FubiBqZWRlciBzZWxic3QgYmVzdGltbWVuLApkYXMgYWVuZGVydCBzaWNoIHZvbiBGYWxsIHp1IEZhbGwKCkVpbmVyIGlzdCBtZWlzdCBzY2h3YXJ6IGdla2xlaWRldCwKaGF0IGVpbiBEaW5nIGF1ZiBkZW0gZXIgcGZlaWZ0ClVuZCBkaWUgU3BpZWxlciBzaW5kIGJlbGVpZGlndAp3ZW5uIGVyIGluIGRpZSBUYXNjaGUgZ3JlaWZ0CgpEZW5uIGRhIGRyaW4gZGEgaGF0IGVyIEthcnRlbiwKcm90IHVuZCBnZWxiLCByZWNodCBndXQgZ2VtaXNjaHQKRGllIHplaWd0IGVyIGRhbm4gZGVtIFNwaWVsZXIsCmRlciBuYWNoIHNlaW5lbSBHZWduZXIgZHJpc2NodAoKUGxvZXR6bGljaCBNdWVsbGVydCdzIHZvciBkZW0gS2FzdGVuCkRhcyBWb2xrIHNjaHJlaXQgVXdlIHdpZSBtaXIgc2NoZWludApEYSBzY2hpZXNzdCBkZXIgTXVlbGxlciBrbmFwcCBkYW5lYmVuCmRlbm4gZXIgd2FyIGphIG5pY2h0IGdlbWVpbnQKClNpZWJ6aWd0YXVzZW5kIGF1ZiBkZW4gUmFlbmdlbgpzcGllbGVuIGluIEdlZGFua2VuIG1pdApNYW5jaGVyIGlzdCBzbyBiZWdlaXN0ZXJ0CnVuZCBnaWJ0IGRlbSBWb3JkZXJtYW5uICduZW4gVHJpdHQKCkplZGVzIFNwaWVsIHdpcmQgYmFyIGJlemFobHQKQXVmIFBmZW5uaWcgdW5kIGF1ZiBIZWxsZXIKVW5kIGxlZ3QgbWFuIGVpbiBwYWFyIFNjaGVpbmUgZHJhdWYKZGFubiBsYXVmZW4gc2llIHNjaG9uIHNjaG5lbGxlcgoKSmVkZXMgU3BpZWwgaGF0IGF1Y2ggZWluIEVuZGUKRGVubiBkaWUgU3BpZWxlciB3ZXJkZW4gbWF0dApNb3JnZW4gc3RlaHQgZGFubiBpbiBkZXIgWmVpdHVuZwp3ZXIgZGFzIE1hdGNoIGdld29ubmVuIGhhdAoKVW5kIGFtIEVuZGUgZGVyIE1laXN0ZXJzY2hhZnQKV2Vpc3MgbWFuIHdlciBhbSBtZWlzdGVuIHNjaGFmZnQKV2VyIGRlciBNZWlzdGVyIGlzdCBkZXIgV2VsdApkZXIga3JpZWd0IGF1Y2ggZGFzIG1laXN0ZSBHZWxkCgpGdWVyIEdlbGQgZGEga2FubiBtYW4gdmllbGVzIGthdWZlbgpBdWNoIExldXRlLCBkaWUgZGVtIEJhbGwgbmFjaGxhdWZlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU293YXMuLi4gKEx1ZywgMjAuIERleiAxOTk4LCAwMjo0ODo1NCk6CgpEdSBzY2huaWVmc3QuCkthZGFicmEgbXVzcyBmdWVyY2h0ZXJsaWNoIGxhdXQgbmllc2VuLgpIVUNIICEhISBXYXMgd2FyIGRhcyA/CgpLb21pc2NoZSByZWFrdGlvbgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTb3dhcy4uLiAoVHJhbmNlZmVhciwgMjAuIERleiAxOTk4LCAwMjo0OTo0MCk6Cn4jISBybj1MdWcgcnQ9OTE0MTIyMTM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE0MTIyMTM0ClNpZSBpc3QgaGFsdCBnZXRyaWdnZXJ0LiBTb3dhcyBnaWJ0cwoKdGYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk51bnJlaWNodHNhYmVyIChMdWcsIDIwLiBEZXogMTk5OCwgMDI6NTA6NTEpOgoKRHUgd2VpbnN0IERpY2ggYmVpIEthZGFicmEgYXVzLgpEdSBmdWVobHN0IERpY2ggYmVvYmFjaHRldC4KCgpQZmZmdApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1FTk5PISAoTHVnLCAyMC4gRGV6IDE5OTgsIDAyOjUxOjUzKToKCkR1IHNhZ3N0OiBJY2ggd2Vpc3MgbmljaHQuCkthZGFicmEgc2FndDogbHVnIHdhcyBzY2hyZWlic3QgZHUgbnVyIDspCklyZ2VuZGV0d2FzIGxhdWVydCBoaWVyIGF1ZiBEaWNoIQoKR3J1bW1lbApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGFkdmVudCwgYWR2ZW50IC4uLiAoQXNtb2RpcywgMjAuIERleiAxOTk4LCAxNDoyNzo1OSk6Cn4jISBybj1BY3JpbW9uIHJ0PTkxMzgyMzg3MiByZz1zY2htYXJybgp+IyEgdGlkPTkxMzYzNjcwNQpJY2ggc2VoZSBudXIgMiBvZGVyIDMgVXNlciwgZGllIHN6IHZlcndlbmRlbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyBtYW4gc28gYWxsZXMgdHJhZ2VuIGthbm4gO28pIChNZW5hY2UsIDIwLiBEZXogMTk5OCwgMjM6Mjg6MDQpOgpIYWFyZTogRHUgdHJhZWdzdCBIYWFyZSBiZXJlaXRzLgpFaW4gU2NoaW1tZXI6IER1IHRyYWVnc3QgZGVuIFNjaGltbWVyIGJlcmVpdHMuCi4uLgoKTWVuYWNlIGdyaW5zdCBpbW1lcm5vY2ggOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTRUlUIFdBTk4gUFJPR0dUIFJPQ0hVUyBERU4gRFNDSFVOR0VMOyk/IChLYWRhYnJhLCAyMS4gRGV6IDE5OTgsIDAwOjUxOjEwKToKIERlaW5lIE5hc2UgbGFldWZ0LgpTbywgamV0enQgcmVpY2h0cyBhYmVyLiBEdSBzdGVsbHN0IERpY2ggaGluLCBwYWNrc3QgZWluZSBDb2NhIENvbGEgYXVzLAp0cmlua3N0IHNpZSBpbiBlaW5lbSBadWcgbGVlciwgdW5kIHdhZWhyZW5kIER1IGluIGRpZSBLYW1lcmEgbGFlY2hlbHN0LAogc2luZ3QgaW0gSGludGVyZ3J1bmQgZWluZSB2ZXJmdWVocmVyaXNjaGUgU3RpbW1lOgpZb3UgY2FuJ3QgYmVhdCB0aGUgZmVlbGluZy4KbmltbSByb3NlIGF1CmthZGFicmEgKGdyaW5zZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSXN0IGRlciBkaWNrLCBNYW5uLi4uIChMdWcsIDIxLiBEZXogMTk5OCwgMDE6MDk6NTYpOgoKSW4gZGllc2VyIEthYmluZSBrYW5uc3QgRHUgdW5nZXN0b2VydCBQb3N0IGxlc2VuIHVuZCBzY2hyZWliZW4uIE5pZW1hbmQgYW5kZXJzCmthbm4gaGllciByZWluLCBzb2xhbmdlIER1IGRyaW4gYmlzdCwgZGFmdWVyIHdhZXJlIGRpZSBLYWJpbmUgYXVjaCB2aWVsIHp1CmVuZy4KVGlwcGUgZWluZmFjaCAncG9zdCcgb2RlciAnbWFpbCcsIGJ6dyAnbWFpbCA8c3BpZWxlcj4nIHp1bSBTY2hyZWliZW4uCk1pdCAncmF1cycga29tbXN0IER1IHdpZWRlciByYXVzLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogcmF1cy4KRGVyIEtvYm9sZCBtZXJrdCBzaWNoIGpldHp0IGFsbGVzIQpQYWRyZWljIHBhc3N0IGhpZXIgbmljaHQgbWVociByZWluLgoKCndhcyB3aWxsIGVyIGRhIGVpZ2VudGxpY2g/Ckx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VsdHNhbS4uLiAoTHVnLCAyMS4gRGV6IDE5OTgsIDAxOjE3OjU4KToKCkRlaW4gR2Vpc3QgbG9lc3Qgc2ljaCB2b24gRGVpbmVtIEtvZXJwZXIuIER1IHNjaGF1c3QgYXVmIERlaW5lIGVpZ2VuZSBMZWljaGUKaGluYWIuIFBsb2V0emxpY2ggb2VmZm5ldCBzaWNoIGVpbiBzY2h3YXJ6ZXMgUG9ydGFsIHVuZCBlaW5lIGZpbnN0ZXJlIEdlc3RhbHQKbWl0IGVpbmVyIGdyb3NzZW4sIGdyYXVzaWdlbiBTZW5zZSB0cml0dCBoZXJhdXMuCgpQYWRyZWljIGtvbW10IGFuLgpEZXIgVG9kIQoKSGFldHRlIGljaCBuaWNodCB2b24gaWhtIGdlZGFjaHQuLi4KTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWx0c2FtIDIuLi4gKEx1ZywgMjEuIERleiAxOTk4LCAwMToxODo1OCk6CgpEdSB2ZXJzdWNoc3QsIGlyZ2VuZCBldHdhcyB6dSBEZWluZXIgUmVjaHRmZXJ0aWd1bmcgenUgc2FnZW4uCkRlaW4gS29lcnBlciBnZWhvcmNodCBEaXIgbmljaHQuCgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgUGFkcmVpYy4KRHUgdmVyc3VjaHN0LCBtaXQgRGVpbmVtIEdlaXN0IHdpZWRlciBEZWluZSBMZWljaGUgenUgdmVybGFzc2VuLgpFcyBnZWh0IG5pY2h0IG1laHIhCgpFcyB3aXJkIGltbWVyIGtvbWlzY2hlciBtaXQgUGFkcmVpYywgZGFzIG1hY2h0IHdvaGwgZGFzIEFsdGVyLi4uCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogYWR2ZW50LCBhZHZlbnQgLi4uIChBY3JpbW9uLCAyMS4gRGV6IDE5OTgsIDIyOjU1OjUwKToKfiMhIHJuPUFzbW9kaXMgcnQ9OTE0MTY0MDc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTEzNjM2NzA1CkR1IHNpZWhzdCBoaWVyIHdlbmlnZXIgYWxzIGVpbmVuIEJlbnV0emVyLCBkZXIgZGFzIChlY2h0ZSkgc3ogdmVyd2VuZGV0LgpEZW5uIGhpZXIga2FubiBtYW4gc2llIGxlaWRlciBub2NoIG5pY2h0IGVpbmdlYmVuLgpEZXNoYWxiIHZlcndlbmRlbiBhbGxlIG51ciBkaWUgVW1zY2hyZWlidW5nZW4gLSBzeiBvZGVyIHNzLgoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmdyaWZmIChEZWVwYmx1ZSwgMjEuIERleiAxOTk4LCAyMzoxNzozMik6CkR1IGdyZWlmc3QgZGVuIE9yayBtaXQgZWluZW0gdG90YWwgbWlzc2x1bmdlbmVtIE1hZS1nZXJpLWtlYWdlIGFuLiAKICBEdSB6ZXJzY2htZXR0ZXJzdCBkZW4gT3JrIGluIGtsZWluZSBTdHVlY2tjaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFuZ3JpZmYgKEdyaW1tYm9ybiwgMjIuIERleiAxOTk4LCAwMTowODowNyk6Cn4jISBybj1EZWVwYmx1ZSBydD05MTQyODIyNTIgcmc9c2NobWFycm4KfiMhIHRpZD05MTQyODIyNTIKS2FyYXRla2EgYWJ3ZXJ0ZW4hCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyA6LSggKE5haXJvbGYsIDIyLiBEZXogMTk5OCwgMTY6Mzc6NDMpOgpEZWluIEZyZXVuZCBIZXh4ZXIgdGVpbHQgRGlyIG1pdDogamEgMngga3VyaWVyZSBkZXIga2xlcmlrZXIgOykpCkRlaW4gRnJldW5kIEhleHhlciB0ZWlsdCBEaXIgbWl0OiBoZWlsdCBkZW4gem9tYmlldmlydXMgISEKW1RvZDpMYXJzXSBFaW4gWm9tYmlldmlydXMgaGF0IGdlcmFkZSBIZXh4ZXIgdW1nZWJyYWNodC4KCgo6LSgoKCggU2hhcmlhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUWi1TdWNoZSAoS2V5LCAyMi4gRGV6IDE5OTgsIDE4OjIwOjU1KToKPiBrbmllIG5pZWRlcgpEdSBrbmllc3QgRGljaCBhdWYgZGllIEJvZGVucGxhdHRlLiBFcnN0IGpldHp0IGVudGRlY2tzdCBEdSBlaW5lIGtsZWluZSBNdWxkZSwKaW4gZGllIGFuc2NoZWluZW5kIHNvbnN0IEJsdW1lbiBnZWxlZ3Qgd2VyZGVuLgo+IHUgbXVsZGUKRWluZSBrbGVpbmUgTXVsZGUgZnVlciBHYWJlbi4KPiBsZWcgYmx1bWVuIGluIG11bGRlClBsb2V0emxpY2ggdmVyd2Vsa2VuIERlaW5lIHNjaG9lbmVuIEJsdW1lbiB1bmQgbG9lc2VuIHNpY2ggaW4gTmljaHRzIGF1Zi4KSGllciB3ZXJkZW4gdHJhZGl0aW9uZWxsIGF1c3NjaGxpZXNzbGljaCBCbHVtZW4gdm9uIGRpZXNlciBJbnNlbCBhbHMgR2FiZW4KZGFyZ2VicmFjaHQKCktlaW4gS29tZW50YXIKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGFuZ3NhbSBzcGlubmVuIHNpZSAoQmllbGVmZWxkLCAyMi4gRGV6IDE5OTgsIDIyOjE0OjExKToKVW5nZXNjaG5pdHRlbjoKCkRpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgpMZWlibml6IHJ1ZnQ6IGhvY2h6ZWl0ISEhISEgYWxsZSBoZXJrb21tZW4gOikKCkJpZWxlZmVsZCwgZnJhZ3Qgc2ljaCwgb2IgTGVpYm5peiBqZXR6dCBkaWUgVGFudGUgaGVpcmF0ZXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGFuZ3NhbSBzcGlubmVuIHNpZSAoVHJhbmNlZmVhciwgMjMuIERleiAxOTk4LCAwMDozOTozNyk6Cn4jISBybj1CaWVsZWZlbGQgcnQ9OTE0MzY0ODUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE0MzY0ODUxCk51bmphIGlzdCBoaWVyIGpldHp0IGdsZWljaGdlc2NobGVjaHRsaWNoZXMgSGVpcmF0ZW4gZXJsYXVidD8gCgp0ZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIC4uIG5pY2h0IGdhbnogOi0pIChOYWlyb2xmLCAyMy4gRGV6IDE5OTgsIDAxOjAxOjE0KToKICBEZXIgV2VnaGllciBzY2hsYWVndCBTdGluZyBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgogIERlciBXZWdoaWVyIHNjaGxhZWd0IFN0aW5nIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCiAgRGVyIFdlZ2hpZXIgZ3JlaWZ0IFN0aW5nIHNjaGxhbmdlbmdsZWljaCBtaXQgZWluZW0gVm9sbHN0cmVja2VyIGFuLgogIERlciBXZWdoaWVyIHplcnNjaG1ldHRlcnQgU3RpbmcgaW4ga2xlaW5lIFN0dWVja2NoZW4uClN0aW5nIHNjaHJlaXQ6IFdlZyBoaWVyIQpTdGluZyByZW5udCBpbiBwYW5pc2NoZXIgQW5nc3QgbmFjaCBXZXN0ZW4uCkRlciBWb2xsc3RyZWNrZXIgdmVyc3VjaHQsIFN0aW5nIGRlbiBUb2Rlc3N0b3NzIHp1IHZlcnNldHplbiEKICBEZXIgV2VnaGllciBncmVpZnQgU3RpbmcgbWl0IGVpbmVtIFZvbGxzdHJlY2tlciBhbi4KICBEZXIgV2VnaGllciB6ZXJzdGFldWJ0IFN0aW5nLgpTdGluZyBmYWVsbHQgdG90IHp1IEJvZGVuLgpEdSBzaWVoc3QgZWluZSBkdW5rbGUgR2VzdGFsdCwgZGllIGV0d2FzIER1bnN0IGVpbnNhbW1lbHQgLi4uIG9kZXIKdmllbGxlaWNodApiaWxkZXN0IGR1IERpciBkYXMgYXVjaCBudXIgZWluIC4uLgpbVG9kOkxhcnNdIEVpbiBXZWdoaWVyIGhhdCBnZXJhZGUgU3RpbmcgdW1nZWJyYWNodC4KW1RvZDpFaW4gV2VnaGllcl0gR290Y2hhIQpFaW5lIExlaWNoZSB3aXJkIHZvbiBlaW5lbSBXZWdoaWVyIHZvbGwgSGluZ2VidW5nIHZlcnNwZWlzdC4KRGVyIFdlZ2hpZXIgbGFlY2hlbHQuCkRlciBXZWdoaWVyIG5hZ2VsdCBTdGluZ3MgVG90ZW5zY2hhZWRlbCBhbiBlaW5lbiBCYXVtLgpEdSBzY2h3ZW5rc3QgZWluIGtsZWluZSBGbGFzY2hlIHZvciBkZXMgV2VnaGllcnMgTmFzZSBoZXJ1bS4KRHUgemF1YmVyc3QgZGVtIFdlZ2hpZXIgZWluZW4gUmF1c2NoIGFuLgpEZXIgV2VnaGllciBydWVscHN0LgpbQmVpbGVpZDpMaWxsZWJyb3JdIGhvb3BzCltCZWlsZWlkOkRpcmlvbl0gQmVpbGVpZCA6KApbQmVpbGVpZDpHcmtdIFVSS1MgOigKW0JlaWxlaWQ6VGhvcl0gYXJnaApbQmVpbGVpZDpCb21iYXJhZF0gYmVpbGVpZCA6KApbQmVpbGVpZDpGcm9naHVudGVyXSBXYWFoIDooCj4gW0JlaWxlaWQ6TWluZGJsYWRlXSBCZWlsZWlkLgpbQmVpbGVpZDpUcmFuY2VmZWFyXSBvY2ggc3RpbmcuLi4KW1NlaGVyOlN0aW5nXSBhZWhtCi4uLi4uLi4gb2huZSB3b3J0ZSAuLi4uLiA6LSkpKQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3ZXIgaXN0IEFudGlEaWNoPyAoTGVuYSwgMjMuIERleiAxOTk4LCAwNTo1MTowOSk6Cj4gR29sYXMga251ZGRlbHQgTWNDYXVscywgSGV4bGUsIERpY2gsIFR1dHN6dCwgTm9lbCwgR2VzcmEgdW5kIEFudGlEaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWhhLCB3aWUsIHdvLCBoYWVoID8/IChKYXNvbnJpZ2lkLCAyMy4gRGV6IDE5OTgsIDE0OjAxOjAwKToKcHJheWluZyBlcnJvciA0MjogZ29kIHVucmVhY2hhYmxlCkRpZSBHb2V0dGVyIHNjaGVua2VuIERpciBlaW5lIEVybGV1Y2h0dW5nLgoKYWhhIHByYXlpbmcgZXJyb3IgLi4uIGdvZCB1bnJlYWNoYWJsZSAuLi4gaGFlaCA/PwoKSmFzb24sIHd1bmRlcnQgc2ljaCBmdWVyIHNlaW5lbiB6d2VpdGllCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaW5kb3dzIDk1IEZlaGxlcmRpYWduby4uLiBhdSAoQW5hdG9sLCAyMy4gRGV6IDE5OTgsIDE0OjQwOjU2KToKCkZlaGxlciBiZWltIExhZGVuIHZvbjogZ2RpLmV4ZQpJbnN0YWxsaWVyZW4gc2llIFdpbmRvd3MgbmV1LgoKKDUgU2VrdW5kZW4gc3BhZXRlciBnZWh0IGRlciBSZWNobmVyIGF1cy4pCgoKQW5hdG9sIC0gbmEgZGFubiBGcm9oZXMgRmVzdAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hZ2llciA6KSAoSmFzb25yaWdpZCwgMjMuIERleiAxOTk4LCAxNTo1MzowOSk6ClN1Z2FhbiBrdXNjaGVsdCBzaWNoIGVudHNwYW5udCBpbiBkaWUgYnJlaXRlbiBQcmFua2VuIGRlcyBTYW5kdGlnZXJzIHVuZApzY2hsYWVmdCBlaW4uClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBTdWdhYW4uClN1Z2FhbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCkRlaW4gRWhlcmluZyBsZXVjaHRldCBhdWYuIER1IGxpZXN0OiBTdWdhYW4gaXN0IG51biBuaWNodCBtZWhyIGRhIQoKSmVtYW5kIGt1c2NoZWx0IHNpY2ggYW4gU3VnYWFuIGFuLgoKCkdhbnogc2Nob2VuIGxhbmdzYW0gOikKCkphc29uIGdyaW5zdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FybmV2YWxza2luZCBhbiBXZWlobmFjaHRlbi4uLiAoR3JpbW1ib3JuLCAyMy4gRGV6IDE5OTgsIDE2OjIzOjQ0KToKV2FzIGVpbmVtIHNvIHp1ZmFlbGxpZyBhbGxlcyBnZWxpbmd0OgpFaW5nZWxvZ2d0IHNlaXQ6IE1pdCwgMjMuIERleiAxOTk4LCAxMToxMToxMQpWb2xsZXIgTmFtZTogR3JpbW1ib3JuIGRlciBBdGhlaXN0IGlzdCBnYW56IHJlaXplbmQKWy4uLl0KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VpaG5hY2h0c2ZpZWJlcj8gKFJlYXBlciwgMjQuIERleiAxOTk4LCAwOToyMjoyMCk6CgoKPiBrd2VyCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEb24sIDI0LiBEZXogMTk5OCwgMDk6MTg6NDEgKDQgVGVpbG5laG1lcikKCklzaC4uLi4uLi4uLi4uLkoucyBCYm95Li4uLi4uLi4uLi5pLnMgUmVhcGVyLi4uLi4uLi4uLi5TICpHYW5kdXIuLi4uLi4uLi4uUwoKdW5kIGRhcyB1bSA5OjE4ID8KRGllIHdhaHJlbiBTdWNodGlzIHNpbmQgYXVjaCBuaWNodCBtZWhyIGRhcywgd2FzIHNpZSBtYWwgd2FyZW4uLi4uCgpFaW4gZGVzaWxsdXNpb25pZXJ0ZXIKUmVhcGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHcm1wZi4uLiAoTGV2LCAyNS4gRGV6IDE5OTgsIDExOjA5OjU1KToKCkRlaW4gR2VsZGJldXRlbCBpc3QgbGVpY2h0ZXIgZ2V3b3JkZW4uClJvYmluIHd1ZW5zY2h0IERpciBmcm9laGxpY2hlIFdlaWhuYWNodGVuLgoKCm5hIHByaW1hLi4uCgpMZXYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogVGphIEtvb21pLi4uIChBbmF0b2wsIDI1LiBEZXogMTk5OCwgMTI6MTQ6MTMpOgp+IyEgcm49QW50aWxlbmEgcnQ9OTE0MzQyNDk5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTE0MTE0NjQ4CkxldXRlLCBkaWUgc2ljaCB1bSBkZW4gU2hlcmlmZi1Kb2IgYmV3ZXJiZW4sIHNpbmQgcG90ZW50aWVsbCB1bmdlZWlnbmV0LgoKKm11c3RlciBIb2JvKgoKTmUgRlJBVT8gU2VpZCdzIGRlcHBlcnQ/IERhIHdhZXIgamEgbm9jaCBHcm9vXkheSF5IXkhLb29eSF5IXkhmYXN0IGplZGVyCmFuZGVyZSBiZXNzZXIuLi4KCkFuYXRvbCAtIHVuZW50c2NobG9zc2VuIDpvKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBUamEgS29vbWkuLi4gKE11YWRpYiwgMjUuIERleiAxOTk4LCAxNjo0MjoyNCk6Cn4jISBybj1BbmF0b2wgcnQ9OTE0NTg4MDUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE0MTE0NjQ4CmhvYm8gd2FlciBpZGVhbCBhbHMgc2hlcmlmZiwgZW5kbGljaCBtYWwgamVtYW5kIGRlciBoYXJ0IGR1cmNoZ3JlaWZ0LCBqZW1hbmQKbWl0IGNvam9uZXMgKG5hamEgd29obCBlaGVyIG5pY2h0KQoKbXVhZGliCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBhbGxnZW1laW5lcyBaVHMgKEdyaW1tYm9ybiwgMjYuIERleiAxOTk4LCAxMjoyOTo1Nik6Cn4jISBybj1BbmF0b2wgcnQ9OTE0Njc1MzQ2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTE0NjMyODkxCk5pZW1hbHMhIEljaCBiaW4gbmljaHQgYXVmIEdlc2NoZW5rY2hlbiBhdXMuIE1pY2ggaW50ZXJlc3NpZXJlbiBudXIgZGllCkdST1NTRU4gR2VzY2hlbmtlLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFRyYW5jZWZlYXIsIDI3LiBEZXogMTk5OCwgMDE6NDg6NTYpOgpbQmVpbGVpZDpTaGFyaWFdIFdBQUhISEhISEgKW0JlaWxlaWQ6S2V5XSA/CltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIFNoYXJpYSB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FlbXBmZXIhIChLZXksIDI3LiBEZXogMTk5OCwgMDM6NTc6MTEpOgpFaW4gR2FyZGV3YWVjaHRlciBsYWVjaHRlbHQgdmVyZ251ZWd0LgpTbWVhZ29sIGZhZWxsdCB0b3QgenUgQm9kZW4uCkR1IHNpZWhzdGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLi4KW1RvZDpMYXJzXSBFaW4gSGFtbWVyIGhhdCBnZXJhZGUgU21lYWdvbCB1bWdlYnJhY2h0LgoKS2V5IGdyaW5zdCBzaWNoIGVpbnMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBPcmtzIGluIFBhcmEtVmxhbmQuLi4uIChTdGluZywgMjcuIERleiAxOTk4LCAxOToyMjoyNCk6CkVpbiBPcmsgc3RlbGx0IG1lbnRhbCBlaW5lIFZlcmJpbmR1bmcgenUgS2FuZHJpIGRlciBHZXJlY2h0ZW4gaGVyLgpOdW4gcnVoZW4gaWhyZSBzY2h1ZXR6ZW5kZW4gSGFlbmRlIHVlYmVyIERpci4KCkRhcyBrYW0gZWJlbiBpbSBLYW1wZiBnZWdlbiBlaW5lbiBQYXJhdmxhbmQtT3JrLi4uIHVuZCBuYWNoIGNhLiAyIE1pbnV0ZW4KdmVybGllc3NlbiBtaWNoIGRpZSBzY2h1ZXR6ZW5kZW4gSGFlbmRlIGRhbm4gd2llZGVyLi4uIERhbmtlIGZ1ZXIgZGFzIEZlYXR1cmUsCmF1Y2ggd2VubnMgamV0enQgdmVybXV0bGljaCBiYWxkIGF1c2dlYmF1dCB3aXJkIDopKQoKClN0aW5nLCB3YWVsemVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhZWxkY2hlbiAoUGFkcmVpYywgMjguIERleiAxOTk4LCAxNjozNzozOSk6Cn4jISBvbj1Benp1cm8gb3Q9OTE0ODYwMzY4IG9nPWQudW50ZXJ3ZWx0Cn4jISBybj1TbmlwZXIgcnQ9OTE0MzQ0MjE1IHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9OTE0MzQ0MjE1CkFDSFRVTkcgQkFVTSBGQUVMTFQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHaWJ0cyBuZSBuZXVlIEtuZWlwZT8gKEFzbW9kaXMsIDI4LiBEZXogMTk5OCwgMjE6NTY6MjcpOgpNdXJtZWwgc2NobnVlZmZlbHQgYW4gRGlyIHVuZCBlbnRzY2hlaWRldCBzaWNoIGxpZWJlciBmdWVyIGVpbiBTdGVhayBpbnMgUmVpY2gKZGVyIE5ldHp0b3Rlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuIGhhbHQgOikgKFBhdHJ5biwgMjkuIERleiAxOTk4LCAxODo1Njo1OCk6CltUb2Q6TGFyc10gRWluZSBoZXJhYnN0dWVyemVuZGUgRGVja2UgaGF0IGdlcmFkZSBHYXN0MSB1bWdlYnJhY2h0LgpbQmVpbGVpZDpHb3JvZ10gdWhoIG9oIGthdGFzPwpbVG9kOkxhcnNdIEVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsIGhhdCBnZXJhZGUgR29yb2cgdW1nZWJyYWNodC4KW1RvZDpFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbF0gUGZmZmZmZmZmZmZmdC4uLi4uLi5QTFVNUFMhCltCZWlsZWlkOlBhdHJ5bl0gdWgsIHNjcmlwdD8gOikKCi0tLS0tLQpwYXRyeW4ga2ljaGVydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFlbW9uZW4gKEdvcm9nLCAyOS4gRGV6IDE5OTgsIDE5OjQ2OjAwKToKRGllIHNpbmQgYXVjaCBuaWNodCBtZWhyIGRhcyB3YXMgc2llIG1hbCB3YXJlbiAoOwoKRGVyIERhZW1vbiBob2x0IHNpY2ggSGlsZmUuCkR1IHdlaHJzdCBkZW4gU3BydWNoIGFiLgoKSG9laG9lLCBzY2hhZGUgZWluZ2VudGxpY2ggaGFldHRlIGJlc3RpbW10IFNwYXNzIGdlbWFjaHQgIGRlbiBhdWNoIG5vY2gKdW16dWhhdW4gKDsKCkdvcm9nIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IChUYXJpbmEsIDI5LiBEZXogMTk5OCwgMjI6NTQ6MDMpOgoKW0FiZW50ZXVlcjpTbWlsZXldICgqbGFjaCopIEVpbiBPcmsgemllaHQgc2ljaCBhbiBkZW4gSGFhcmVuLiBFaW5lbSBPcmsKW0FiZW50ZXVlcjpTbWlsZXldIHdhY2hzZW4gdWViZXJhbGwgSGFhcmUuIEVpbiBPcmsgendpbmtlcnQuCltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIFNtaWxleSB1bWdlYnJhY2h0LiAgICAgICAgICAgICAgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW0sIHNlbHRzYW0uLi4gKFBsb3RpbiwgMzAuIERleiAxOTk4LCAyMDo1MTowMyk6CkR1IHN0ZWNrc3QgZGVuIFZvbGxzdHJlY2tlciB6dXJ1ZWNrLgpEdSB6dWVja3N0IGRhcyBTY2h3ZXJ0LgogIC4uLi5ub3JtYWwvU2NobGFwcG9ocmVuIEhhc2UuLi4uLi4uLi4gOiBEaWNoLi4uLi4uLi4uICoqKlMqKioqIDwtIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9TY2h3ZXJ0Li4uLi4gRHUuLi4uLi4uLi4uLiA6IEhhc2VuLi4uLi4uLi4gKioqKioqKiogLT4gS3JhY2hlbgogIC4uLi5ub3JtYWwvU2NobGFwcG9ocmVuIEhhc2UuLi4uLi4uLi4gOiBEaWNoLi4uLi4uLi4uICoqKlMqKioqIDwtIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9TY2h3ZXJ0Li4uLi4gRHUuLi4uLi4uLi4uLiA6IEhhc2VuLi4uLi4uLi4gKioqKioqKiogLT4gc2VociBoYXJ0CkRlciBIYXNlIGZhZWxsdCB0b3QgenUgQm9kZW4uCkVpbmUgTGVpY2hlIHRhbnp0IHdpZSBpbiBUcmFuY2UgZHVyY2ggZGllIEdlZ2VuZC4KRWluZSBMZWljaGUgdGFuenQgd2llIGluIFRyYW5jZSBkdXJjaCBkaWUgR2VnZW5kLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN0aWxsZSBOYWNodC4uLiAoV2ltLCAzMS4gRGV6IDE5OTgsIDA1OjQzOjQ2KToKCmFsbGVzIHNjaGxhZWZ0LCBlaW5zYW0gd2FjaHQuLi4KICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRG9uLCAzMS4gRGV6IDE5OTgsIDA1OjQyOjQ2ICgxMyBUZWlsbmVobWVyKQpFbWJlLi4uLi4uLi4uLi5qd3MgTWF6em9vLi4uLi4uLi4uSi5zIE1jd29sZi4uLi4uLi4uLmoucyBTcGVsbGZpcmUuLi4uLi5Kd3MKRGV2aWxjaGVuLi4uLi4uai5TIEhleGxlLi4uLi4uLi4uLmouUyBJc2lzLi4uLi4uLi4uLi5Kd3ogTWVza29uby4uLi4uLi4uSndTClJlYXBlci4uLi4uLi4uLkp3UyBIZXJhLi4uLi4uLi4uLi5KLlMgR2FuZG8uLi4uLi4uLi4uSi5NIFdpbS4uLi4uLi4uLi4uLi4uTQpQYXRyeW4uLi4uLi4uLi5KLlIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2hvbiB3aWVkZXIuLi4gOiggKExldiwgIDEuIEphbiAxOTk5LCAxMjoyNTozNyk6CgpEZWluIEdlbGRiZXV0ZWwgaXN0IGxlaWNodGVyIGdld29yZGVuLgpSb2JpbiB3dWVuc2NodCBEaXIgZWluIGVyZm9sZ3JlaWNoZXMgbmV1ZXMgSmFoci4KCgpnYWFhYW56IHRvbGxlIHNhY2hlLi4uIDopKSkpCgpMZXYuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGVsbHNpY2h0PyAoU2hhbm5hcmEsICAyLiBKYW4gMTk5OSwgMTk6MjM6NTkpOgo+IER1IGZldWVyc3QgZWluZSBmcm9zdGlnZSBFaXN3b2xrZSBhdWYgZGVuIEZldWVydGV1ZmVsIGFiLgpEdSB6ZXJzY2htZXR0ZXJzdCBkZW4gRmV1ZXJ0ZXVmZWwgaW4ga2xlaW5lIFN0dWVja2NoZW4uCkRlciBGZXVlcnRldWZlbCBmYWVsbHQgdG90IHp1IEJvZGVuLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBGZXVlcnRldWZlbHNdIE1lcmxpbiwgbWFjaCBTaGFubmFyYSB6dW0gTWFnaWVyIQoKKG9obmUga29tbWVudGFyKQoKU2hhbm5hcmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIZWxsc2ljaHQ/IChEaWVkZXIsICA0LiBKYW4gMTk5OSwgMjE6NTc6NDApOgp+IyEgcm49U2hhbm5hcmEgcnQ9OTE1MzA1MDM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE1MzA1MDM5CkxlaWRlciBzY2hlaW50IGRhcyBNZXJsaW4gYmVmb2xndCB6dSBoYWJlbi4uLiA6KQoKRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplYmVuIHBhc3NpZXJ0IChBbGluZSwgIDUuIEphbiAxOTk5LCAxNzowMjoxNCk6Cgo+IHdlcnRlIHdhbmRlcnNtYW5uCkR1IHN0YXJyc3QgZGVuIGx1c3RpZ2VuIFdhbmRlcnNtYW5uIGFuLgpFaW4gT3JrIGRyb2h0IERpciBhdXMgZGVyIEZlcm5lOiBLb21tIER1IG1pciBuYWNoIE9ya2hhdXNlbiEgRGFzIHdpcnN0IER1IG1pcgpFaW4gT3JrIGRyb2h0IERpciBhdXMgZGVyIEZlcm5lOiBidWVzc2VuIQoKQWxpbmUgaGF0IGpldHp0IG5vY2ggZWluZW4gZ3V0ZW4gR3J1bmQgVkxhbmQgenUgbWVpZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWJzY2hpZWRzam9kbGVyIChBY3JpbW9uLCAgNS4gSmFuIDE5OTksIDIyOjE3OjIwKToKW0FsbGdlbWVpbjpBbG1kdWRsZXJdIHNvLCBkYXMgd2Fycy4uKndpbmsqCltBbGxnZW1laW46R3JpbU1hbl0gbmFjaHQgYWxtaQpbQWxsZ2VtZWluOkFsbWR1ZGxlcl0gVm9uIGhvZWNoc3RlciBIb2VoZSBqb2RlbHQgZGVyIEFsIGVpbmVuIHNjaG9lbmVuCltBbGxnZW1laW46QWxtZHVkbGVyXSBBbG1qb2RsZXIuLi4KW0FsbGdlbWVpbjpNZW5vbGx5XSBob2xsYXJpZGlkdWRlbGpvZQpbQWxsZ2VtZWluOkFsbWR1ZGxlcl0gd2FyIGRhcyBuaWNodCBkYXMgendlaXRlIGZ1dHVyIGJlaSBzb25uZW5hdWZnYW5nPz8/CltBbGxnZW1laW46TWVub2xseV0gKmtpY2hlcioKW0FsbGdlbWVpbjpBY3JpbW9uXSB3aWUgd2lyZCBkZW5uIGRlciBBYnNjaGllZHNqb2RsZXIgZ2VzdW5nZW4/Ck11dGFib3IgcnVmdDogaGlsYmVydApNdXRhYm9yIHJ1ZnQ6IGhpbGJlcnQKCjotKQoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVlciBEYWVtb24/IChUZWRkeSwgIDYuIEphbiAxOTk5LCAxOTozNDo0OSk6CkdyYWQgZWJlbiBpbiBkZXIgS2F0YWtvbWJlbmtuZWlwZToKRHUgc3BlbmRpZXJzdCBUdXRzenQgZXR3YXMuCkRhcmt3aW5nIGJla29tbXQgZWluZSBrbGVpbmUgTXVldHplIG1pdCBlaW5lciBrb21pc2NoZW4gRmx1ZXNzaWdrZWl0LCBkaWUgZXIKYXVzdHJpbmt0IHVuZCBkYW5uIGdlbnVlc3NsaWNoIGRpZSBNdWV0emUgdmVyc3BlaXN0LgoKVWVicmlnZW5zLCBpY2hoYWIgbmFjaGdlc2NoYXV0LCBEYXJrd2luZyB3YXIgenUgZGVyIFplaXQgaW5uZXIgU1NQIDspCgpUZWRkeSwgZ2VzcGFubnQgd2FzIGRlciBuZXVlIERhZW1vbiBzbyBhbGxlcyBrYW5uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuYSBndXQuLi4gKFRyYW5jZWZlYXIsICA3LiBKYW4gMTk5OSwgMDA6Mjk6MzMpOgpbQWxsZ2VtZWluOkxldl0gbG9zISEhCltBbGxnZW1laW46TGV2XSBzY2hyZWlidCB3YXMhCgpva29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdWVyIExldiA6KSAoU2hhbm5hcmEsICA3LiBKYW4gMTk5OSwgMDA6MzE6MjApOgpIaWVyIGhhc3QgZHUgZXR3YXMgenUgbGVzZW4uLi4uCgpTaGFubnkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGdWVyIExldiA6KSAoVHJhbmNlZmVhciwgIDcuIEphbiAxOTk5LCAwMDozMTo0OSk6Cn4jISBybj1TaGFubmFyYSBydD05MTU2NjkwODAgcmc9c2NobWFycm4KfiMhIHRpZD05MTU2NjkwODAKQm9haCB3YXQgbmUgUmVha3Rpb25zemVpdC4uLgoKdGYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpZWRlcmJlbGVidW5nLi4uPyAoVHJhbmNlZmVhciwgIDcuIEphbiAxOTk5LCAwMDo0NzoyNyk6ClNseWZveCB3aXJkIGt1cnogdm9uIGVpbmVyIGxldWNodGVuZGVuIEF1cmEgZWluZ2VodWVsbHQsIGRpZSB2b24gc2VpbmVtCkFtdWxldHQgYXVzenVnZWhlbiBzY2hlaW50LgpSaW5jZXdpbmQgd2VpbHQgd2llZGVyIHVudGVyIGRlbiBMZWJlbmRlbi4KCldvIGdpYnRzIGRlbm4gZGllc2VzIGZhbW9zZSBBbXVsZXR0PyA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZhdWxlIFdhZWNodGVyIChOZWIsICA3LiBKYW4gMTk5OSwgMTU6MzM6MTIpOgpFaW4gRWlzZWxmZW53YWVjaHRlciBrb21tdCBhbi4KRWluIEVpc2VsZmVud2FlY2h0ZXIga29tbXQgYW4uCkRlciBFaXNlbGZlbndhZWNodGVyIGZyYWd0IHNpY2gsIHdhbm4gZW5kbGljaCBkaWUgQWJsb2VzdW5nIGtvbW10CgpUcywgdW5kIGRhcyBuYWNoIDIgU2VrdW5kZW4gLSBmYXVsZSBLZXJsZSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogZW5kbGljaC4uLiAtPiBUcmVmZmVuIGluIE11ZW5jaGVuIChUZWRkeSwgIDcuIEphbiAxOTk5LCAxNzo0Mzo0MCk6Cn4jISBybj1DYWxpbWVyYSBydD05MTU3MzA5MjIgcmc9dHJlZmZlbgp+IyEgdGlkPTkxNTcyMzY3MApIbXBmIDstKAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVjaCBuYW51IT8gKE1lbmFjZSwgIDguIEphbiAxOTk5LCAwMToyNDowMSk6CmdlcmFkZSBlYmVuOgpEZWluIEZyZXVuZCBEYXJrd2luZyBodWVwZnQgaW4gZGVyIEdlZ2VuZCBydW0gYXVzIGRlciBGZXJuZS4KW1RvZDpMYXJzXSBTQVRBTiBoYXQgZ2VyYWRlIERhcmt3aW5nIHVtZ2VicmFjaHQuCgpNZW5hY2UgdHJhdWVydCBpbW1lciBub2NoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTQVRBTiAoRGFya3dpbmcsICA4LiBKYW4gMTk5OSwgMDE6Mjg6MzgpOgpEdSB6aWVoc3QgZGllIHJvdGUgRHJhY2hlbnNjaHVwcGUgYXVzLgpTQVRBTiB0b2V0ZXQgRGljaC4KRGVpbiBBbXVsZXR0IGh1ZWxsdCBEaWNoIGluIGVpbmUgaGVpbGlnZSBBdXJhLCBkaWUgZGVuIEFuZ3JpZmYgc2Nod2FlY2h0LgpEdSBtYWNoc3QgZWluZW4gU3BydW5nIG5hY2ggaGludGVuIHVuZCB3ZWljaHN0IHNvIGRlbSBBbmdyaWZmIHZvbGxzdGFlbmRpZwphdXMuCltUb2Q6TGFyc10gU0FUQU4gaGF0IGdlcmFkZSBEYXJrd2luZyB1bWdlYnJhY2h0LgpEZWluIEtvZXJwZXIgZ2Vob3JjaHQgRGlyIG5pY2h0ICEKCm5lZSBpcyBrbGFyLiBVbmQgZ2VzY2h1ZXR6dCBnZWdlbiBkYXMgZGllKCkgd2FyIGljaCBhdWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU0VYISAoUGF0cnluLCAgOC4gSmFuIDE5OTksIDAyOjM1OjQwKToKZ3JhZCBpbiBuZW0gYW5kZXJlbiBtdWQgZ2VmdW5kZW4gOikKClRoZSBVTklYIEd1cnUncyBWaWV3IG9mIFNleDoKdW56aXAgOyBzdHJpcCA7IHRvdWNoIDsgZmluZ2VyIDsgbW91bnQgOyBmc2NrIDsgbW9yZSA7IHllcyA7IHVtb3VudCA7IHNsZWVwCgotLS0tLS0KcGF0cnluIHdlZGVsdCBtaXQgZGVtIGxpbnV4LWZhZWhuY2hlbiAobmljaCBtaXNzdmVyc3RlaGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbW0gOikgKE5vdmFzdG9ybSwgIDguIEphbiAxOTk5LCAxMjo1NzowMSk6Cj4gW1NlaGVyOk1vcmdvdGhdIHdpZSwgZGllIGh5ZHJhIGlzdCBub2NoIHZvbGwgaW50YWt0ID8/PwpTaGFyaWEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoyIGRvb2ZlIDstKSAoTW9yZ290aCwgIDguIEphbiAxOTk5LCAxMzoxMToxNCk6Ck5lYiB0ZWlsdCBEaXIgbWl0OiBiaXMgaGV1dCBhYmVuZApEdSB0ZWlsc3QgTmViIG1pdDogYmlzIGhldXQgYWJlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTRVghIChKYW1lc29uLCAgOC4gSmFuIDE5OTksIDIxOjQ1OjExKToKfiMhIHJuPVBhdHJ5biBydD05MTU3NjI5NDAgcmc9c2NobWFycm4KfiMhIHRpZD05MTU3NjI5NDAKJSBjYXQgImZvb2QgaW4gY2FucyIKY2F0OiBjYW4ndCBvcGVuIGZvb2QgaW4gY2FucwoKJSBuaWNlIG1hbiB3b21hbgpObyBtYW51YWwgZW50cnkgZm9yIHdvbWFuLgoKJSBybSBHb2QKcm06IEdvZCBub25leGlzdGVudAoKJSBhciB0IEdvZAphcjogR29kIGRvZXMgbm90IGV4aXN0CgolIGFyIHIgR29kCmFyOiBjcmVhdGluZyBHb2QKCiUgIkhvdyB3b3VsZCB5b3UgcmF0ZSBRdWF5bGUncyBpbmNvbXBldGVuY2U/ClVubWF0Y2hlZCAiLgoKJSBVbm1hdGNoZWQgIi4KVW5tYXRjaGVkICIuCgolIFtXaGVyZSBpcyBKaW1teSBIb2ZmYT8KTWlzc2luZyBdLgoKJSBOSG93IGRpZCB0aGUgc2V4IGNoYW5nZSBvcGVyYXRpb24gZ28/TgpNb2RpZmllciBmYWlsZWQuCgolIElmIEkgaGFkIGEgKCBmb3IgZXZlcnkgJCB0aGUgQ29uZ3Jlc3Mgc3BlbnQsIHdoYXQgd291bGQgSSBoYXZlPwpUb28gbWFueSAoJ3MuCgolIG1ha2UgbG92ZQpNYWtlOiBEb24ndCBrbm93IGhvdyB0byBtYWtlIGxvdmUuIFN0b3AuCgolIHNsZWVwIHdpdGggbWUKYmFkIGNoYXJhY3RlcgoKJSBnb3QgYSBsaWdodD8KTm8gbWF0Y2guCgolIG1hbjogd2h5IGRpZCB5b3UgZ2V0IGEgZGl2b3JjZT8KbWFuOjogVG9vIG1hbnkgYXJndW1lbnRzLgoKJSAhOnNheSwgd2hhdCBpcyBzYWNjaGFyaW5lPwpCYWQgc3Vic3RpdHV0ZS4KCiUgJWJsb3cKJWJsb3c6IE5vIHN1Y2ggam9iLgoKJSBcKC0KKC06IENvbW1hbmQgbm90IGZvdW5kLgoKJCBQQVRIPXByZXRlbmRpbmchIC91c3IvdWNiL3doaWNoIHNlbnNlCm5vIHNlbnNlIGluIHByZXRlbmRpbmchCgokIGRyaW5rIDxib3R0bGU7IG9wZW5lcgpib3R0bGU6IGNhbm5vdCBvcGVuCm9wZW5lcjogbm90IGZvdW5kCgokIG1rZGlyIG1hdHRlcjsgY2F0ID5tYXR0ZXIKbWF0dGVyOiBjYW5ub3QgY3JlYXRlCgolIHRvdWNoIEdvZCA7IGNobW9kIDExMSAuIDsgcm0gLWkgR29kCnJtOiByZW1vdmUgR29kPyB5ZXMKcm06IEdvZCBub3QgcmVtb3ZlZDogUGVybWlzc2lvbiBkZW5pZWQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1dHNjaCAoS29vbWksICA5LiBKYW4gMTk5OSwgMDA6MDA6MjgpOgpEZWluIEZyZXVuZCBNdHYgdGVpbHQgRGlyIG1pdDogeWVzLCAyIHNpdmFrIGRyYWtvbmllciBpbiBlaW5lbSByYXVtLCBvaCBtYW5uCkR1IHRlaWxzdCBNdHYgbWl0OiBoYWJzIGdlcmFkZSBhdWYgLW1vZXJkZXIgZ2VzZWhlbgpNVFYgdGVpbHQgRGlyIG1pdDogNCBtYWwgdGFua2VuIG11c3N0ZSBpY2ggZnVlciBkaWUKRHUgdGVpbHN0IE10diBtaXQ6IHRqYSBkaWUgZHJha29uaWVyIHNpbmQgaGFsdCBoYXJ0Cj4gTVRWIHRlaWx0IERpciBtaXQ6IGplcHAsIGFiZXIgaWNoIGJpbiBoYWVydGVyIDopCkR1IHRlaWxzdCBNdHYgbWl0OiBkYXMgd2VyZGVuIHdpciBqYSBnbGVpY2ggc2VoZW4sIHdpZSBoYXJ0IGR1IGJpc3QgOikpCj4gRHUgdmVyd3VzY2hlbHN0IE1UVnMgSGFhcmUgYXVzIGRlciBGZXJuZS4KCkRlaW4gRnJldW5kIE10diB0ZWlsdCBEaXIgbWl0OiBvaCBtYW5uIGljaCBnYWx1YmUgaWNoIGJpbiBpbiBlaW4gbmVzdCB2b24KRGVpbiBGcmV1bmQgTXR2IHRlaWx0IERpciBtaXQ6IGRlbmVuIGdlcmF0ZW4KCk1UViB0ZWlsdCBEaXIgbWl0OiBlaW5lciBhbGxlaW5lIGdlaHQsIHNvbGFnZW4gZXIga2VpbiBrYWVtcGZlciBpc3QKPiBEdSB0ZWlsc3QgTXR2IG1pdDogZGllIGthZW1wZmVyLW5wY3Mgc2luZCBhbGxlc2FtdCB1ZWJlbAo+IER1IHNhZ3N0OiBobSB1bmQgd2VubiBkdSBkaWVzZW4gc3BlbGwgaW4gQXR0YWNrKCkgcmVhbGlzaWVyc3Q/Cj4gW01vZXJkZXI6R2Vpc3QgZWluZXMgU2l2YWsgRHJha29uaWVyc10gSW4gc3BhZXRlc3RlbnMgZWluZXIgU3R1bmRlIGtvbW1lIGljaApbTW9lcmRlcjpHZWlzdCBlaW5lcyBTaXZhayBEcmFrb25pZXJzXSB3aWVkZXIsIE1UViEKCihzZWhyIGJhbGQgZGFyYXVmKQoKW1RvZDpMYXJzXSBFaW4gQXVyYWsgRHJha29uaWVyIGhhdCBnZXJhZGUgTXR2IHVtZ2VicmFjaHQuCltCZWlsZWlkOktvb21pXSBtZWluIGJlaWxlaWQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmh1Y2g/IChXdW0sICA5LiBKYW4gMTk5OSwgMDg6MDU6MzEpOgpMZW5hIHdlZGVsdCB3aXJyIG1pdCBkZW4gQXJtZW4gaW4gZGVyIEx1ZnQgaGVydW0uCkRlciBzY2h3YXJ6ZSBTaGVyaWZmIHNhZ3Q6IFdhZmZlbiBzaW5kIGhpZXIgdmVyYm90ZW4sIGhlciBkYW1pdCEKCnNpbmQgZGllIGFiZXIga2xlaW5saWNoIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcm1hZ2VkZG9uLi4uIChXb29keSwgMTAuIEphbiAxOTk5LCAwMzo0NzowMik6Cj4gYWxjb3Rlc3QgYXJtYWdlZGRvbgpBcm1hZ2VkZG9uIHNvbGx0ZSBpbiBkZW0gWnVzdGFuZCBuaWNodCBtZWhyIHphdWJlcm4uCkFybWFnZWRkb24gcnVmdDogSW4gMyBUYWdlbiwgMTAgU3R1bmRlbiwgMTcgTWludXRlbiB1bmQgMFNla3VuZGVuIHdlcmRlIGljaApBcm1hZ2VkZG9uIHJ1ZnQ6IGRpZSBXZWx0IHplcnN0b2VyZW4gdW5kIG5ldSBlcnNjaGFmZmVuIQoKRWxlbmRlciBTYWV1ZmVyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipnYWVobiogKEtleSwgMTAuIEphbiAxOTk5LCAwNzowMjoxMCk6Ck1JUiBJU1QgTEFOR1dFSUxJRyEgOykKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOi0pIChOYWlyb2xmLCAxMC4gSmFuIDE5OTksIDEzOjEyOjUwKToKClNvIGdlaG9lcnQgc2ljaCBkYXMgZnVlciBGYW1pbGllbmFuZ2Vob2VyaWdlIC4uLi4KCltUb2Q6TGFyc10gS3J1dW9scSBoYXQgZ2VyYWRlIENvbm5lciB1bWdlYnJhY2h0LgpLYW1lbG90IHZlcnNpbmt0IGluIHRpZWZlciBBbmRhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHN0cywgSGF1c3RpZXJlIChIaWJiZWxpZywgMTAuIEphbiAxOTk5LCAxNDowNzoyNik6Cld1c2VsaWcgc2FndDogPEhpY2s+IQpXdXNlbGlnIHNhZ3Q6IDxIaWNrPiEKV3VzZWxpZyBydWVscHN0LgpXdXNlbGlnIHJ1ZWxwc3QuCld1c2VsaWcgc3RvbHBlcnQgdWViZXIgaWhyZSBGdWVzc2UuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VmdW5kZW4gKEthbWlsbGUsIDEwLiBKYW4gMTk5OSwgMTc6NDE6NTMpOgoKZ3JhZGUgZWJlbiBwYXNzaWVydDoKCj4gemllaCBoZWJlbApEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KRGllIFR1ZXIgc2NobGllc3N0IHNpY2guCkRlciBBdWZ6dWcgc2V0enQgc2ljaCBzY2hhdWtlbG5kIGluIEJld2VndW5nLgo+IER1IGJlZ2lubnN0IGFuZGFlY2h0aWcgenUgYmV0ZW4uCj4gRWluIGxhdXRlcyBSdW1wZWxuIGlzdCB6dSBob2VyZW4uCkVpbiBsYXV0ZXMgUnVtcGVsbiBpc3QgenUgaG9lcmVuLgoKVGphIHdhcyBpY2ggc28gYWxsZXMgaW4gQmV3ZWd1bmcgc2V0emVuIGthbm4gbWl0IGRlbiByaWNodGlnZW4gSGViZWwgOikgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHdXRlcyBBYmxlbmt1bmdzbWFub2V2ZXIgKFNyYWJpLCAxMC4gSmFuIDE5OTksIDE4OjA4OjIzKToKCkViZW4gYmVpIFJvYmluCgogUm9iaW4gc2luZ3Q6ICdFaW5lIEluc2VsLCBlaW5lIEluc2VsIC4uLicgdW5kIGRldXRldCBpbiBkaWUgRmVybmUKRGVpbiBHZWxkYmV1dGVsIGlzdCBsZWljaHRlciBnZXdvcmRlbi4KClNyYWJpLCBpbW1lciBub2NoIGdydW1tZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXYWFhYWhoIC0tIGtlaW5lIFB1c3Rla3Vlc3NlIG1laHI/IChXb29keSwgMTAuIEphbiAxOTk5LCAxOTo0NjoxMSk6Cn4jISBvbj1Xb29keSBvdD05MTU5OTc1NjEgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUFuYXRvbCBydD05MTU5ODMzMzkgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MTU5NzY5MzkKREVSIEF1ZndhbmQgamVkb2NoIHJlY2h0ZmVydGlndCwgZWluZW4gZWlnZW5lbiBad2VpdGkgZGFmdWVyIGFuenVsZWdlbiAtCmlzdCBkb2NoIGRpZSBiZXRyZWZmZW5kZSBQZXJzb24gdm9tIFN0YW1tZSBkZXIgRWxmZW4uIE9kZXI/CgpJY2ggdmVybGVnIGphIHNjaG9uIHNlbGJlciA7KQpXb29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGhoaGhoaGhoaGhoaGphIDotKSAoTmFpcm9sZiwgMTEuIEphbiAxOTk5LCAxMDoyMzo0OCk6Ckdhc3RpaSBpc3QgbmljaHQgYW53ZXNlbmQuClp1bGV0enQgZWluZ2Vsb2dndCB2b246IEdpZXNzZW4KWnVsZXR6dCBhdXNnZWxvZ2d0OiBNaXQsIDMxLiBEZXogMTk2OSwgMjM6NTk6NTkgKDEwNjAyZCAxMDoyMzowMykKVm9sbGVyIE5hbWU6IEdhc3RpaSBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyCkhvcHBsYSwgZWluIEdlaXN0IQpSYXNzZTogTWVuc2NoLCAgR2lsZGU6IEFiZW50ZXVyZXIsICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKQWx0ZXI6IDAwOjA3OjAyLCAgIFNwaWVsZXJsZXZlbDogMQpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBNb24sIDExLiBKYW4gMTk5OSwgMDM6MDQ6NTIKQmlzaGVyIGJlcmVpdHMgMSBtYWwgZ2VzdG9yYmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbnR3dXJzdGVuISAoUmVhcGVyLCAxMS4gSmFuIDE5OTksIDEwOjQ2OjIzKToKCmdyYWRlIGViZW4sIHVuZ2VrdWVyenQuLgoKW1RydmVzOlJpbmdvciBuaWNrdCBLcmVhdG9yIHp1IC4uLiBoaWVyIGdpYnRzIHNjaG9uIGdlbnV0IFd1ZXJzdGVdCj4gV3Vyc3QgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgoKZWluIGdyaW5zZW5kZXIKUmVhcGVyCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVudHd1cnN0ZW4hIChSaW5nb3IsIDExLiBKYW4gMTk5OSwgMTA6NDk6MzUpOgp+IyEgcm49UmVhcGVyIHJ0PTkxNjA1MTU4MyByZz1zY2htYXJybgp+IyEgdGlkPTkxNjA1MTU4MwpXZW5uIER1IHNjaG9uIG5pY2h0IG1pdCBDdXQmUGFzdGUgdW1nZWhlbiBrYW5uc3QsIGRhbm4gdGlwcCBiaXR0ZSB3ZW5pZ3N0ZW5zCnJpY2h0aWcgYWIuIE5hY2h0cmFlZ2xpY2ggVHlwb3MgZWluYmF1ZW4gaXMgbmljaHQgZmFpci4gOy0pCgpSaW5nb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBUYW50ZSAoTW9yZ290aCwgMTEuIEphbiAxOTk5LCAxNDoyMzo1MCk6ClNoYXJpYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEZWluZSBGcmV1bmRpbiBTaGFyaWEgdGVpbHQgRGlyIG1pdDogbnVyIGdhbnoga3VyegpFaW4gZW50c2V0emxpY2hlciBTY2hyZWkgaGFsbHQgdm9tIEZyaWVkaG9mIGhlcnVlYmVyLgoKOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbHNvIHNvIHNjaGxpbW0gaXN0IGVpbiBSZWJvb3QgZG9jaCBhdWNoIG5pY2h0IChUaGVyaW4sIDExLiBKYW4gMTk5OSwgMTY6NDg6MDEpOgpBcm1hZ2VkZG9uIHJ1ZnQ6IEluIDEgVGFnLCAyMSBTdHVuZGVuLCAxNyBNaW51dGVuIHVuZCAwIFNla3VuZGVuIHdlcmRlIGljaApBcm1hZ2VkZG9uIHJ1ZnQ6IGRpZSBXZWx0IHplcnN0b2VyZW4gdW5kIG5ldSBlcnNjaGFmZmVuIQpCZXVucnVoaWd0IHNjaGF1c3QgRHUgSXNpcyBpbiBkaWUgQXVnZW4uIFNpZSBzY2hlaW5lbiBtaXQgZWluZW0gdGllZmVuCkhhc3MgenUgbG9kZXJuLCBmYXN0IHNjaGVpbnQgZXMsIGFscyBvYiBJc2lzIERpY2ggYW5mYWxsZW4gd29sbHRlIC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN1Y2h0aWVzIDotKSAoRGFya3dpbmcsIDExLiBKYW4gMTk5OSwgMTg6MzM6MDEpOgpGcm9naHVudGVyIHRlaWx0IERpciBtaXQ6IEhhYiBtaXIgZ2VyYWRlIG5lIHJvdGUgc2NodXBwZSBnZWhvbHQuIE9iIGRhcyBzaWNoCkZyb2dodW50ZXIgdGVpbHQgRGlyIG1pdDogbm9jaCBsb2hudCA/IDspCkR1IHRlaWxzdCBGcm9naHVudGVyIG1pdDogbmFqYSBiaXMgTWl0dHdvY2ggaGFzdGUgbm9jaCA6KQpGcm9naHVudGVyIHRlaWx0IERpciBtaXQ6ICp3ZWluKiB1bmQgZGFubiBudXIgYmlzIG1vcmdlbgpEdSB0ZWlsc3QgRnJvZ2h1bnRlciBtaXQ6IGhldXRlIGlzdCBkb2NoIE1vbnRhZyA/ICpncnVlYmVsKgpGcm9naHVudGVyIHRlaWx0IERpciBtaXQ6IEFjaHNvLCBqYS4gRGEgbXVzcyBpY2ggbW9yZ2VuIGphIGF1Y2ggbm9jaCBtdWRkZW4uCgoqcm90ZmwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMZWlibml6IHVuZCBzZWluIGNvbW1pbmcgb3V0IChBenp1cm8sIDExLiBKYW4gMTk5OSwgMjA6MzE6MjEpOgpEdSBzYWdzdDogaWNoIHdlcmRlIGFuIGlyZ2VuZGVpbmVtIHNjaG9lbmVuIFRhZyBub2NoIHNjaHd1bC4KRGFzIFBhcnR5bW9uc3RlciBydWZ0OiBMZWlibml6IHNjaG1laXNzdCBlaW5lIFBhcnR5IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXIgc29sbHRlIHdpcmtsaWNoIHp1bSBBcnp0IChNb3Jnb3RoLCAxMi4gSmFuIDE5OTksIDAxOjQxOjU3KToKRGVpbmUgRnJldW5kaW4gWmVwaHlyIHRlaWx0IERpciBtaXQ6IGljaCBmaW5kIGRlbiBBdXNrbm9wZiBuaWNodApEZWluIEZyZXVuZCBBbmF0b2wgZnVtbWVsdCBhdXMgZGVyIEZlcm5lIGFuIFplcGh5cnMgS25vZXBmZW4gaGVydW0uCgpNKiwgZXJzY2h1ZXR0ZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYXVzdGllcmUgKERpZWRlciwgMTIuIEphbiAxOTk5LCAwMTo1NDoyNik6ClR1dHN6dCBzcGllbHQgZWluIGJpc3NjaGVuIG1pdCBlaW5lbSBCZXV0ZWwuClR1dHN6dCBwYXRzY2h0IG1pdCBzZWluZXIgSGFuZCBhdWYgZWluZW0gQmV1dGVsIHJ1bSB1bmQgaHVlcGZ0IGF1ZiB1bmQgYWIuClR1dHN6dCBzY2hyZWl0IGxhdXQgdW5kIHdpcmZ0IGVpbmVuIEJldXRlbCBtaXQgU2Nod3VuZyBhdWYgZGVuIEJvZGVuLgoKdG8gYmUgY29udGludWVkLi4uCkFsc28gaWNoIG11c3Mgdm9uIEdsdWVjayBzYWdlbiwgZGFzcyBkaWVzIG5pY2h0IG1laW4gQmV1dGVsIHdhciAqa2ljaGVyKgoKRGllZGVyLCBoZXV0ZSBtYWwgLi4uIGFlaC4uLiBuYWphIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVlciBBcnRpa2VsIHZvbiBBY3JpbW9uIChBY3JpbW9uLCAxMi4gSmFuIDE5OTksIDIwOjAyOjE1KToKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEFjcmltb24gaW4gUnVicmlrICJhbGxnZW1laW5lcyIuCjUgU2VrdW5kZW4gc3BhZXRlcjoKRWluIGVudHNldHpsaWNoZXIgU2NocmVpIGhhbGx0IHZvbSBGcmllZGhvZiBoZXJ1ZWJlci4KCipncmlucyoKCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWndlaSBEb29mZSwgZWluIEdlZGFua2UgLi4uIChSaW5nb3IsIDEzLiBKYW4gMTk5OSwgMDA6MTM6NDMpOgpTaXR1YXRpb246IFBhZHJlaWMgc3VjaHQgbGVpY2h0IHF1ZW5nZWxuZCBuYWNoIExldXRlbiwgZGllIG1pdCBpaG0gc3BpZWxlbjoKCltTZWhlcjpQYWRyZWljXSBsZXV0ZSBsZXV0ZS4uLiBpbnp3aXNjaGVuIHdlciBkYSBtaXQgbHVzdCBhdWYgVGFrZSBpdCBlYXN5IDopPwpbLi4uXQpbU2VoZXI6UGFkcmVpYyBkZW5rdCAuIG8gTyAoTGV1dGUgcmVpbnRyYW5zZW4gdW5kIGVyc3Qgd2llZGVyIHJhdXNsYXNzZW4sIHdlbm4KICAgICAgIHNpZSBlaW5tYWwgZ2V3b25uZW4gaGFiZW4gLCk/XQpbLi5dCltTZWhlcjpNb3Jnb3RoXSBrbGFyLCBzb25zdCBzcGllbHQgamEgbmllbWFuZCBtaXQgZGlyCltHcmF0czpTaW1zYWxhYmltIGdyYXRzdCBibHViYmVybmRdClRlZGR5IGRlbmt0OiBQYWRyZWljIHNvbGx0ZSBzaWNoIG1hbCBuZSBGcmlrYWRlbGxlIGFucyBLbmllIGJpbmRlbiBkYW1pdApUZWRkeSBkZW5rdDogd2VuaWdzdGVucyBuZW4gSHVuZCBtaXQgaWhtIHNwaWVsdCA7KQpbU2VoZXI6TW9yZ290aF0gaGFidCBpaHIgbmVuIGh1bmQ/CltTZWhlcjpUZWRkeSByb3RmbHRdCgoKTW9yZ290aCBnZWhvZXJ0ZSBuYXR1ZXJsaWNoIG5pY2h0IHp1bSBLcmVpcy4KClJpbmdvci4gVWViZXJsYWVzc3QgYW5kZXJlbiBkaWUgU2NobHVzc2ZvbGdlcnVuZ2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNb3Jnb3RoLCAxMy4gSmFuIDE5OTksIDEwOjU1OjA3KToKRGlyaW9uIHRlaWx0IERpciBtaXQ6IGRlaW4gdmlydXMgaXMgbmV0dC4uLiAqYWVjaHoqIFsxMDo0N10KW1RvZDpMYXJzXSBFaW4gWm9tYmlldmlydXMgaGF0IGdlcmFkZSBEaXJpb24gdW1nZWJyYWNodC4gPDEwOjQ4OjAyPgoKTSouCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKENyaXR0ZXIsIDEzLiBKYW4gMTk5OSwgMTY6MTM6MjQpOgpEdSB0ZWlsc3QgSmFzb25yaWdpZCBtaXQ6IE1hbCBndWNrZW4gb2IgaWNoIGRpZSBQeXRob24gbnUgcGxhdHRrcmllZ2UuLi4KNSBzZWsuIHNwYWV0ZXIKc2FnIGFua2UKW1RPRDoKW1RvZDpMYXJzXSBFaW4gRWNoc2Vud2FlY2h0ZXIgaGF0IGdlcmFkZSBDcml0dGVyIHVtZ2VicmFjaHQuCndlbm4gZGEgbmV0IGRpZSB3YWVjaHRlciB3YWVyZW4uLi4KdW5kIG5lIGZhbHNjaGUgdm9yc2ljaHQgKDApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFsaW5lLCAxMy4gSmFuIDE5OTksIDE3OjMxOjMyKToKW1phdWJlcmVyOkplbl0gbnVuamEsIG1hbCBzY2hhdWVuIG9icyBkYXMgcmljaHRpZ2UgcG9ydGFsIGlzdCAuLi4gc29uc3QgaGFsdApbWmF1YmVyZXI6SmVuXSBlaW4gdG9kIDopCltUb2Q6TGFyc10gRWluIHNjaHJlY2tsaWNoZXIgRmVobGVyIGJlaSBkZXIgTWFnaXN0ZXJwcnVlZnVuZyBoYXQgZ2VyYWRlIEplbgpbVG9kOkxhcnNdIHVtZ2VicmFjaHQuCltaYXViZXJlcjpUZWRkeV0gV2FyIGRhcyBmYWxzY2hlCltCZWlsZWlkOktleSBraWNoZXJ0XQpbWmF1YmVyZXI6TG9sbGldIHVuZCBlciBzYWNodCBub2NoIC4uLi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWNoIG5pY2h0IHNjaGxlY2h0IChTY2hsZWljaGVyLCAxNC4gSmFuIDE5OTksIDAyOjAxOjU3KToKdW5nZWt1ZXJ6dApHb2xhcyB0YW56dCBzaW5nZW5kIGltIEtyZWlzLgpNZXJjdXRpbyBlcnNjaGVpbnQKClNjaGxlaWNoZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyBrbGFzc2lzY2ggKFJpbmdvciwgMTQuIEphbiAxOTk5LCAxMzowNTo1MCk6CltTZWhlcjpTaGFubmFyYV0ga2FubiBkYXMgc2VpbiwgZGFzcyBkdXJjaCBkZW4gdGVhbWthbXBmIGFsbGVzIGlycnNpbm5pZyBsYWd0PwpbU2VoZXI6U2hhbm5hcmFdIDwxMzowMToxNj4KW1NlaGVyOlNoYW5uYXJhXSB2b3IgZGVuIHJlYm9vdCBnaW5nIGFsbGVzIG5vY2ggc3B1ZXJiYXIgc2NobmVsbGVyIHVuZCBvaG5lCltTZWhlcjpTaGFubmFyYV0gdmllbGVuIHZlcnpvZWdlcnVuZ2VuIDwxMzowMTo0ND4KW1NlaGVyOkphc29uUmlnaWQgbWVya3Qga2VpbmVuIEdST1NTRU4gdW50ZXJzY2hpZWQuIDwxMzowMjozMj5dCltTZWhlcjpTaGFubmFyYV0gYXJnaCA8MTM6MDQ6MDk+CltUb2Q6TGFyc10gRWluIEFib2xldGggaGF0IGdlcmFkZSBTaGFubmFyYSB1bWdlYnJhY2h0LiA8MTM6MDQ6MTE+CgoKUmluZ29yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFJpbmdvciwgMTQuIEphbiAxOTk5LCAxNDo0OTowOSk6Cls8TWFzdGVSPjpLYXJpc10gbApbPE1hc3RlUj46PE1hc3RlUj5dIDkuMzkgY21kcy9zLCAyMjQuNzkgY29tcCBsaW5lcy9zCls8TWFzdGVSPjo8TWFzdGVSPl0gTGFnOiAxLjclLzYwLCAyLjAlLzE1LCAwLjAlLzEKW1RvZDpMYXJzXSBFaW4gR2FyZGV3YWVjaHRlciBoYXQgZ2VyYWRlIEthcmlzIHVtZ2VicmFjaHQuCgpBbHNvIGRhcyBMYWcgd2FyJ3MgbmljaHQuCgpSaW5nb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhYWFhaCAhISEhIChNb3Jnb3RoLCAxNC4gSmFuIDE5OTksIDIyOjMyOjQ0KToKRGVpbiBGcmV1bmQgUmluZ29yIHRlaWx0IERpciBtaXQ6IGJyaW5nIG1hbCBqZW1hbmQgTGljaHQgYXVmIGRlbSBXZWcgbWl0IC4uLgpEZWluIEZyZXVuZCBSaW5nb3IgdGVpbHQgRGlyIG1pdDogaWNoIGtvbW0gbmljaCBpbiBkaWUgS2F0YXMgcmVpbiA7XikKCk0qIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhYWFhaCAhISEhIChSaW5nb3IsIDE0LiBKYW4gMTk5OSwgMjI6MzQ6MDkpOgp+IyEgcm49TW9yZ290aCBydD05MTYzNTMxNjQgcmc9c2NobWFycm4KfiMhIHRpZD05MTYzNTMxNjQKSGV5LCBpY2ggYmluIEthZW1wZmVyLCBlcyB3YXIgUmVib290LCB1bmQgbWVpbmUgQXV0b2xvYWQtRmFja2VsIGlzdCB6ZXJmYWxsZW4uCgpSaW5nb3Igd2lyZCBoYWx0IGRvY2ggYWx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gbWVya3QgbWFuIERhcyA6KCAoVHdpbnNlbiwgMTQuIEphbiAxOTk5LCAyMjo1NzoyNyk6CkRlaW4gRnJldW5kIE5pdGVtYW4gdGVpbHQgRGlyIG1pdDogd2llIG1lcmtlIGljaCBpbiBkaWVzZW0gc2Nyb2xsIGVpZ2VudGxpY2gKRGVpbiBGcmV1bmQgTml0ZW1hbiB0ZWlsdCBEaXIgbWl0OiB3ZW5uIG1pY2ggZGVyIHZpcnVzIGVyd2lzY2h0PwogW1RvZDpMYXJzXSBFaW4gWm9tYmlldmlydXMgaGF0IGdlcmFkZSBEYWVtb25hIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWb3JhaG51bmcgLi4uIChMaWFyYSwgMTUuIEphbiAxOTk5LCAwMDozNjo1Mik6CltSYWRpbzpEaXJpb25dIGtub2NrIGtub2NrIGtub2NraW5nIG9uIGhlYXZlbidzIGRvb3IuLi4KW1RvZDpMYXJzXSBFaW4gc2NobGltbWUgRXJmcmllcnVuZyBoYXQgZ2VyYWRlIFB1ayB1bWdlYnJhY2h0LgoKTGlhcmEsIGRlbmt0IC4gbyBPIChLbGVyaWtlciAuLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVm9yYWhudW5nIC4uLiAoQmVuZGVpZ2lkLCAxNS4gSmFuIDE5OTksIDEzOjU1OjI1KToKfiMhIHJuPUxpYXJhIHJ0PTkxNjM2MDYxMiByZz1zY2htYXJybgp+IyEgdGlkPTkxNjM2MDYxMgoqa2VyYioKCldlbm4gc29uc3QgbmllbWFuZCBrZXJidCwgZGFubiBtYWNoIGljaCBtaXIgc2VsYmVyIGRpZSBLZXJiZW4uLi4gKmdyaW5zKgoKQmVuZGVpZ2lkLCBpbnp3aXNjaGVuIHN0YXJrIHZlcm5hcmJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpub2NoIHNjaG5lbGxlciA/IChSZWFwZXIsIDE1LiBKYW4gMTk5OSwgMTY6MjE6MTgpOgoKCkltbWVyIHNjaG5lbGxlciBzaW5nZW5kIHRhbnp0IER1IHp1IGVpbmVtIG1hZ2lzY2hlbiBMaWVkY2hlbi4KRHUgYmV3ZWdzdCBEaWNoIG51biBkZXV0bGljaCBzY2huZWxsZXIuCkRlaW4gWmF1YmVyc3RhYiB1bnRlcnN0dWV0enQgRGljaCBiZWkgZGVtIFNwcnVjaC4KICBEZXIgWm9tYmllIHNjaGxhZWd0IERpY2ggbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KICBEZXIgWm9tYmllIHNjaGxhZWd0IERpY2ggbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KICBEZXIgWm9tYmllIHNjaGxhZWd0IERpY2ggbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KICBEZXIgWm9tYmllIHNjaGxhZWd0IERpY2ggbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KRGVyIFpvbWJpZSByYW1tdCBkaXIgc2VpbiB2ZXJmYXVsdGVzIEtuaWUgaW4gZGVuIExlaWIuIFVBUkdTLi4uCiAgRGVyIFpvbWJpZSB6ZXJzY2htZXR0ZXJ0IERpY2ggaW4ga2xlaW5lIFN0dWVja2NoZW4uCgoKCmhtbW1tbSwgZmFlbmd0IG1hbiBtaXQgZGVtIFNwcnVjaCBub2NoIHNjaG5lbGxlciBkaWUgU2NobGFlZ2UgZGVzIEdlZ25lcnMgYWI/CgpncnVlYmVsbmQsIFJlYXBlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NobmVsbHRvZCAoVHdpbnNlbiwgMTUuIEphbiAxOTk5LCAxODoyNjoyNCk6CiBbVG9kOkxhcnNdIEVpbiBCdWxseXd1ZyBoYXQgZ2VyYWRlIFNpZ3VyYSB1bWdlYnJhY2h0LgpTaWd1cmEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBub2NoIHNjaG5lbGxlciA/IChLZXksIDE1LiBKYW4gMTk5OSwgMTk6MjE6MjQpOgp+IyEgcm49UmVhcGVyIHJ0PTkxNjQxNzI3OCByZz1zY2htYXJybgp+IyEgdGlkPTkxNjQxNzI3OApDb29sLCB3byBzdGVodCBkZXI/IDopCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRGllZGVyLCAxNi4gSmFuIDE5OTksIDAxOjQwOjIyKToKS2VyYmVub2cgZnJhZ3Q6IFd1cW91ciBuYWNoIGhlaWx1bmc/ClBsb2V0emxpY2ggc2NoaWVzc3QgU2Nod2Vpc3MgYXVzIGFsbGVuIFBvcmVuIHZvbiBLZXJiZW5vZyBoZXJhdXMsIGVyIGJla29tbXQKaGVmdGlnZSBGaWViZXJhbmZhZWxsZSB1bmQgc2NodWV0dGVsdCBzaWNoIG9obmUgU2lubiB1bmQgVmVyc3RhbmQuCj4gS2VyYmVub2cgd2VuZGV0IHNpY2ggYWIgdW5kIHZlcnNjaHdpbmRldCBuYWNoIFN1ZWRlbi4KQmxvb2Qgc2FndDogSElFUiBuaWNodApbVG9kOkxhcnNdIFd1cW91cnMgSGVpbHVuZyBoYXQgZ2VyYWRlIEtlcmJlbm9nIHVtZ2VicmFjaHQuCltUb2Q6V3Vxb3VycyBIZWlsdW5nIHdhciBkb2NoIGV0d2FzIHJ1cHBpZy4uLl0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpub2NoIHNlaHIgbGViZW5kaWcgOi0pIChKYW1lc29uLCAxNi4gSmFuIDE5OTksIDEyOjQzOjI4KToKQ2lzb3Ugd2FuZGVsdCBoZXJlaW4uCkNpc291IGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBDaXNvdS4KQ2lzb3UgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkNpc291IHNhZ3Q6IDxIaWNrPiEKLi4uCkNpc291IHdhbmRlbHQgaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCZXNjaGFlZnRpZ3VuZ3N0aGVyYXBpZSAoU2hhbm5hcmEsIDE2LiBKYW4gMTk5OSwgMjE6MDQ6NDYpOgpbQWxsZ2VtZWluOkxldiBncnVtbWVsdCBzZWluZSBNUEEgYW4uXQoKQml0dGUuIEpldHp0IGhhc3QgZHUgZXR3YXMgenVtIExlc2VuLgoKU2hhbm55CgpQUzogSWNoIGtvZW5udGUgYmVpbSBIb2NoaWRsZW4gYXVjaCB3YXMgenVtIExlc2VuIGdlYnJhdWNoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3NvLi4uIChMZXYsIDE2LiBKYW4gMTk5OSwgMjE6MTA6MjApOgoKRWluIE9mZml6aWVyIGtvbW10IHdpZWRlciB6dSBzaWNoLgpEdSBzYWdzdDogamV0enQhClNveW8gcmFtbXQgc2ljaCBkYXMgS25pZSBnZWdlbnMgS2lubi4KRWluIE9mZml6aWVyIGZhZWxsdCBvaG5tYWVjaHRpZyB1bS4KCkxldiB2ZXJzdGVodCBpbW1lciBub2NoIG5pY2h0LCB3aWVzbyBkZXIgT2ZmaXppZXIgb2hubWFlY2hpZyB3dXJkZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRlYW1rYW1wZiAuLi4gKExpYXJhLCAxNy4gSmFuIDE5OTksIDAwOjUzOjE2KToKV2VubiBFbHN0ZXJuIG5lcnZlbiB1bmQgbWFuIGdyYWQgZWluIFRlYW0gZGEgaGF0IC4uLiAKCkRpZSBFbHN0ZXIgaGF0IGVpbiBBdWdlIGF1ZiBEaWNoIGdld29yZmVuLgp0b2V0ZSBlbHN0ZXIKT2sKPiAgIER1IGdyZWlmc3QgZGllIEVsc3RlciBtaXQgZWluZW0gU2NobGFncmluZyBhbi4KRHUgdHJpZmZzdCBkaWUgRWxzdGVyIGhhcnQuCkppZGR1IGdyZWlmdCBkaWUgRWxzdGVyIG1pdCBlaW5lbSBnZWx1bmdlbmVuIE1hZS1lbXBpLXVjaGkgYW4uCkppZGR1IHRyaWZmdCBkaWUgRWxzdGVyIHNlaHIgaGFydC4KRmlyZWhhd2sgZ3JlaWZ0IGRpZSBFbHN0ZXIgbWl0IGVpbmVtIFZhbXBpcnNjaHdlcnQgYW4uCkZpcmVoYXdrIHRyaWZmdCBkaWUgRWxzdGVyIHNlaHIgaGFydC4KQmlnYXMgZ3JlaWZ0IGRpZSBFbHN0ZXIgbWl0IGVpbmVtIGdlbHVuZ2VuZW4gTWFlLWVtcGktdWNoaSBhbi4KQmlnYXMgdHJpZmZ0IGRpZSBFbHN0ZXIgc2VociBoYXJ0LgpEaWUgRWxzdGVyIHN0dWVyenQgdG9lZGxpY2ggZ2V0cm9mZmVuIGFiLgpEdSB3YWVsenQgRGljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uCj4gW1RlYW0gU2hpbmluZ0ZvcmNlOkppZGR1XSBMT0wKSmlkZHUgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCgpVbnNlcmUgZXJzdGUgaGVsZGVuaGFmdGUgU2NobGFjaHQgLi4uIAoKTGlhcmEsIGhhdCBTcGFzcyBhbSBUZWFta2FtcGYgKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT3JrcyBlcm9iZXJuIGRhcyBNRyAuLi4gKEZyb2dodW50ZXIsIDE3LiBKYW4gMTk5OSwgMDI6MTc6MTQpOgpFaW4gT3JrIGtvbW10IGFuLgplaW4gT3JrIHZlcmthdWZ0IGVpbmUgT3Jrd2VzdGUuCmVpbiBPcmsgdmVya2F1ZnQgZWluZW4gT3JraGVsbS4KZWluIE9yayBrYXVmdCBlaW5lbiBTY2hhdHRlbnJpbmcuCkVpbiBPcmsgemllaHQgZWluZW4gU2NoYXR0ZW5yaW5nIGFuLgpXYUVpbiBPcmsga29tbXQgYW4uCmVpbiBPcmsgdmVya2F1ZnQgZWluZSBPcmt3ZXN0ZS4KZWluIE9yayB2ZXJrYXVmdCBlaW5lbiBPcmtoZWxtLgplaW4gT3JrIGthdWZ0IGVpbmVuIFNjaGF0dGVucmluZy4KRWluIE9yayB6aWVodCBlaW5lbiBTY2hhdHRlbnJpbmcgYW4uCgpXYXMgd2lsbCBkZXIgZGFtaXQgPyAgR2VoZW4gZGllIGpldHp0IGF1Y2ggc2Nob24gYXVmIE1ldHplbHRvdXIgaW0gTUcgPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmdyaW5zKiAoUGZlaWZlLCAxNy4gSmFuIDE5OTksIDAyOjQwOjQ4KToKRWluIExlbW1pbmcgd2FuZGVydCBoZXJlaW4uCkR1IGdpYnN0IGRlbiBCcmllZiBhbiBlaW5lbiBMZW1taW5nLgpEZXIgTGVtbWluZyBzdHVlcnp0IHNpY2ggd2llZGVyIGVpbm1hbCBpbnMgTWVlci4KCkRhYmVpIGhhYmUgaWNoIGVzIG51ciBndXQgZ2VtZWludCA6LSkKClBmZWlmZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FubiBkZXIgVGlnZXIgaGVsbHNlaGVuICAoVHdpbnNlbiwgMTcuIEphbiAxOTk5LCAxNDowMjo1Nyk6CkRlciBTYW5kdGlnZXIgYmVncnVlc3N0IFNsYXllciBtaXQ6IEljaCBzb2xsIERpciB2b24gTWlrYWdlIGF1c3JpY2h0ZW46IExhc3MKRGljaCBrbnVkZGVsbiwgbGllYnN0ZXIgSGVsZCEKU2xheWVyIGVyc2NoZWludC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBVZWJlbHRhZXRlciAoU3JhYmksIDE3LiBKYW4gMTk5OSwgMTc6NDM6MTApOgoKSmEgamEsIGVyc3QgZGVuIENsdWIgaW4gZGllIEx1ZnQgc3ByZW5nZW4gdW5kIGRhbm4gYWJoYXVlbgoKIEtSQUFBQUFBQUFBQUFBQUFBQUFBQUFBV1VNTU1NTU1NTU1NTU1NTU1NTU1NIQpKZW1hbmQgaGF0IGRlbiBXb2xwZXJ0aW5nZXJjbHViIGluIGRpZSBMdWZ0IGdlc3ByZW5ndCEKRGVpbiBGcmV1bmQgVmFtcGlyZSB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4KRGVpbiBGcmV1bmQgVmFtcGlyZSBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuClZhbXBpcmUgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpTcmFiaSwgbnVyIHZvbiBCb21iZW5sZWdlcm4gdW1nZWJlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSEFFID8gKFR3aW5zZW4sIDE3LiBKYW4gMTk5OSwgMTk6NDE6MTQpOgo+IExvdSB0ZWlsdCBEaXIgbWl0OiBwdWgsIHN0YW5kIGZydWVoZXIgYWJlciBnYW56IHNpY2hlciEKZmluZ2VyIGxvdQpadWxldHp0IGF1c2dlbG9nZ3Q6IEZyZSwgMTUuIEphbiAxOTk5LCAxNzoyMzozOCAoMmQgMDI6MTY6MDApCgpITU1NTQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT21lbiA6KSAoS2FydG9mZmVsLCAxNy4gSmFuIDE5OTksIDIyOjA1OjUyKToKRHUgdGVpbHN0IEZldWVyd2VociBtaXQ6IEljaCBoYWIgbGV0enQgbiBOdW1tZXJuc2NoaWxkIGdlc2VoZW46IApEdSB0ZWlsc3QgRmV1ZXJ3ZWhyIG1pdDogTkUtU0kgMTEyIDopKQpGZXVlcndlaHIgdGVpbHQgRGlyIG1pdDogT0ggTUVJTiBHT1RUISEhICpiaWJiZXIqISEhCkZldWVyd2VociB0ZWlsdCBEaXIgbWl0OiBOZXVzc2VyIHdhcmVuIG1pciBzY2hvbiBpbW1lciBzdXNwZWt0ISEhIQpEdSB0ZWlsc3QgRmV1ZXJ3ZWhyIG1pdDogV2FyIGRhcyBlaW4gT21lbj8gSGVpcmF0ZXQgSWhyPyA6KSkKRmV1ZXJ3ZWhyIHRlaWx0IERpciBtaXQ6IER1IHdpbGxzdCBtaXIgQW5nc3QgbWFjaGVuLCB3YXM/Pz8KRmV1ZXJ3ZWhyIHRlaWx0IERpciBtaXQ6IG51biwgaWNoIHdpbGwgRGlyIG1hbCB3YXMgc2FnZW4hCkZldWVyd2VociB0ZWlsdCBEaXIgbWl0OiBEdSBtYWNoc3QgZGFzIGdhcm5pY2h0IHNjaGxlY2h0Li4uLgoKJ1RvZmZlbCAtIGdyaW5zdCBub2NoIGltbWVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUZWFtLUtleS4uLiAoQW5hdG9sLCAxOC4gSmFuIDE5OTksIDAwOjA2OjUzKToKW1NlaGVyOkRhcmt3aW5nXSBqYSA/IEljaCBlcmlubmVyIG1pY2ggbm9jaCBndXQgYW4gZGFzICJLZXkgc3RhcnRldCBkZW4KW1NlaGVyOkRhcmt3aW5nXSBBbmdyaWZmIiBhbHMgaWNoIGdlcmFkZSBhbmZpbmcgdm9tIHRhbmtlbiBob2NoenVpZGxlbiA6KQouLi4KW1NlaGVyOkFzbW9kaXNdIHdlbm4gZHUga2V5IGZvbGdzdCBiaXN0ZSBzZWxic3Qgc2NodWxkIDotKQpbU2VoZXI6VGVkZHldIFdlciBLZXkgZm9sZ3QgbXVzcyBzaWNoIG5jaWh0IHVlYmVyIFRvZGUgd3VuZGVybiA7KQpbU2VoZXI6QW5hdG9sXSBXZXIgaW4gZWluIFRlYW0gbWl0IEtleSBhbHMgVGVhbWxlaXRlciBnZWh0Li4uIHNlbGJzdCBzY2h1ZGwgOikKW1NlaGVyOlF1aWNrXSB3ZXIga2V5IGZvbGd0LCBkYXJrd2luZy4uLiA6KQoKVmllciBEb29mZS4uLiBlaW4gS2V5IDpvKQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2FubiBkZXIgVGlnZXIgaGVsbHNlaGVuICAoTWVuYWNlLCAxOC4gSmFuIDE5OTksIDAzOjA0OjE4KToKfiMhIHJuPVR3aW5zZW4gcnQ9OTE2NTgxNzc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE2NTgxNzc3CkRlc3NlbiBTcnVjaCBrb21tdCBJTU1FUiBiZXZvciBkaWUgQW5rdW5mdHNtZWxkdW5nIGRlcyBTcGllbGVycyBrb29tdCEKCk1lbmFjZSBlaW56ZWlsaWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUZWFtLUtleS4uLiAoS2V5LCAxOC4gSmFuIDE5OTksIDA5OjE2OjUxKToKfiMhIHJuPUFuYXRvbCBydD05MTY2MTgwMTMgcmc9c2NobWFycm4KfiMhIHRpZD05MTY2MTgwMTMKSGV5ISBFcyBpc3Qgbm9jaCBrZWluZXIgZ2VzdG9yYmVuIGluIG1laW5lbSBUZWFtICwpCgpKYWphIFJvY2h1cyBpY2ggaGFsdCBtaWNoIGFuIGRpZSBRdW90ZSwgaWNoIHdpbGwgc2llIG51ciBpbSBHbGF1YmVuIGxhc3NlbiBkYXMKZXMgc2ljaGVyIGlzdCA7KQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmQgYmFsZCB3aXJmdCBtaWNoIEJyaWVzZWwgYXVzIGRlbiBUcnZlcyByYXVzPyAoS2FyYW0sIDE4LiBKYW4gMTk5OSwgMTI6NTM6MTUpOgpEYXMgQnVlcm8gZGVzIFphaGxtZWlzdGVycy4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgbm9yZGVuLgpLbG9pcmVuIEVpc2VuaGVsbS4KPiBXdWZmdHVmZiB0cm90dGV0IGhlcmVpbi4KRGlyIGZhZWxsdCBlaW4sIGRhc3MgRHUgdmllbGxlaWNodCBEZWluIEJldHQgbWFjaGVuIHNvbGx0ZXN0LgpLbG9pcmVuIEVpc2VuaGVsbSBzYWd0OiBXYXMgaXN0IGRlbm4gZGFzIGhpZXI/IEhhdXN0aWVyZSBpbSBTdHJ1dj8gU28gZ2VodCBkYXMKS2xvaXJlbiBFaXNlbmhlbG0gc2FndDogYWJlciBuaWNodCwgS2FyYW0hIERhcyBnaWJ0IGxlaWRlciBlaW5lbiBWZXJ3ZWlzIQpXdWZmdHVmZiBoYXV0IGFiLgoKS2FyYW0gKGltbWVyIG5vY2ggdWViZXIgZGllc2UgS2FlbXBmZXIgbGFjaGVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbmQgYmFsZCB3aXJmdCBtaWNoIEJyaWVzZWwgYXVzIGRlbiBUcnZlcyByYXVzPyAoTW9yZ290aCwgMTguIEphbiAxOTk5LCAxMjo1NzowNik6Cn4jISBybj1LYXJhbSBydD05MTY2NjM5OTUgcmc9c2NobWFycm4KfiMhIHRpZD05MTY2NjM5OTUKV2VyIGVpbiBWaWVjaCBOYW1lbnMgJ1d1ZmZ0dWZmJyBoYXQsIHNvbGx0ZSBzaWNoIG1hbCB1ZWJlcmxlZ2VuLCB1ZWJlciB3ZW4gZXIKbGFjaHQuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSElMRkUgISEgUEEqIEFMQVJNICEhISAoTmFpcm9sZiwgMTguIEphbiAxOTk5LCAxMjo1ODo0Nik6ClBhZHJlaWMgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKUGF0cnluICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgoKCip6aXR0ZXIKdW5kIGRhcyB1bmdlc2Nobml0dGVuIC4uLi4uLi4uLi4uLi4uLi4uLiAKCkR1IHNhZ3N0OiBJY2ggaGFiZSBBbmdzdCwgaWNoIGZsdWVjaHRlIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBLb21tZW50YXIgKFplcGh5ciwgMTguIEphbiAxOTk5LCAxMzozMTowMyk6ClBhZHJlaWMgc2FndDogYW0gYmVzdGVuIHdhZXJlLCBtYW4gdmVyYmlldGV0IGZyYXVlbiBpbSBtdWQga29tcGxldHQgOikKUGFkcmVpYyBzYWd0OiBkYW5uIGhhZXR0ZSBtYW4gdmlpaWlpZWVlZWVlZWVlZWxsbCB3ZW5pZ2VyIHByb2JsZW1lLi4uClBhZHJlaWMgZ3JpbnN0LgoKQzQgLiBvIE8gKFByb2JsZW1lLCBhdWYgaWhuLi4gKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFlbm5lciBJSS4gKFplcGh5ciwgMTguIEphbiAxOTk5LCAxMzo1NTozOSk6CgpGZXVlcndlaHIgdGVpbHQgRGlyIG1pdDogKnNldWZ6KiBQYWRyZWljIGhhdHRlIHNjaG9uIHJlY2h0IGlyZ2VuZHdpZSA6LSkKCkM0IHNjaG1laXNzdCBGZXVlcndlaHIgenUgUGFkcmVpYyBpbiBkZW4gSHV0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFlbm5lciBJSS4gKEhvYm8sIDE4LiBKYW4gMTk5OSwgMTM6NTY6NDQpOgp+IyEgcm49WmVwaHlyIHJ0PTkxNjY2NzczOSByZz1zY2htYXJybgp+IyEgdGlkPTkxNjY2NzczOQpIbW0sIGRhIHdhciBkb2NoIGlyZ2VuZHdhcyBtaXQgTkUtU0kgMTEyLi4uIGljaCBnbGF1YiwgZGFzIHVlYmVybGFzc2VuIHdpciBhbQpCZXN0ZW4gZGVyIFNjaGlsZGtyb2V0ZSBzZWxic3QuCgpIb2JvIC0gc3RlY2t0IEZldWVyd2VociB1bnRlciBkZW4gUGFudG9mZmVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFYmVuIGJlaSBUYXJhbWlzLi4uIChUdW5peGd1dCwgMTguIEphbiAxOTk5LCAxNDowMzoyNik6ClVuZ2VzY2huaXR0ZW46CgpEdSBsYWV1dGVzdCBkaWUgS3VoZ2xvY2tlLiBFcyBrbGluZ3QgZnVlcmNodGVybGljaC4KQmlyZHkgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCidzIEthcmF0ZS1ad2VyY2hsZSAtIHNhY2h0IGpldHp0IG5peCBtZWhyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE5haXJvbGYsIDE4LiBKYW4gMTk5OSwgMTk6MjM6NTYpOgpEZWluIEZyZXVuZCBOZWIgdGVpbHQgRGlyIG1pdDogYXJnbCwgYXVzYWR1ZXItNCwgd28ga29tbXQgZGVubiBkYXMgbnUgc2Nob24KRGVpbiBGcmV1bmQgTmViIHRlaWx0IERpciBtaXQ6IHdpZWRlciBoZXIgPwpEZWluIEZyZXVuZCBOZWIgdGVpbHQgRGlyIG1pdDogQUFBQUFBQUFBQUFBQUFBQVJSUlJSUlJSUlJSUlJLS0tLS0tLS0tLS0tLICEhIQpbVG9kOkxhcnNdIERlciBGbHVjaCBkZXMgUGhhcmFvcyBFc3RoZWtvdGggaGF0IGdlcmFkZSBOZWIgdW1nZWJyYWNodC4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpncmlucyogKEhpYmJlbGlnLCAxOC4gSmFuIDE5OTksIDIxOjU3OjMzKToKfiMhIHJuPVBmZWlmZSBydD05MTY1NDA4NDggcmc9c2NobWFycm4KfiMhIHRpZD05MTY1NDA4NDgKV2VubiBpY2ggdm9uIERpciBuZW4gQnJpZWYga3JpZWdlbiB3dWVyZGUsIHd1ZXJkIGljaCBtaWNoIGF1Y2ggaW5zIE1lZXIKc3R1ZXJ6ZW4uCgpIaWJiZWxpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogY2hhb3NiYWxsIGFuZGVycyAoVGVkZHksIDE5LiBKYW4gMTk5OSwgMDA6MzE6MjgpOgp+IyEgcm49S2V5IHJ0PTkxNjY2NDMwOCByZz1naWxkZW4uY2hhb3MKfiMhIHRpZD05MTY2MDkwMDIKSGV5LCBzY2htZXR0ZXJuIGlzIG5lbiBiaXNzZXJsIHNjaHdhY2gsIHB1bHZlciBuZWhtIGljaCBsaWViZXIgOykKClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBjaGFvc2JhbGwgYW5kZXJzIChXaW0sIDE5LiBKYW4gMTk5OSwgMDA6MzI6NTYpOgp+IyEgcm49VGVkZHkgcnQ9OTE2NzA1ODg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE2NjA5MDAyCgpUZWRkeSwgZHJvZ2Vuc3VlY2h0aWc/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogY2hhb3NiYWxsIGFuZGVycyAoVGVkZHksIDE5LiBKYW4gMTk5OSwgMDA6NDQ6NTMpOgp+IyEgcm49UGF0cnluIHJ0PTkxNjcwMDM0MiByZz1naWxkZW4uY2hhb3MKfiMhIHRpZD05MTY2MDkwMDIKTGFzc3QgbWVpbmUgUGZlaWZlIGRhIHJhdXMhCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogY2hhb3NiYWxsIGFuZGVycyAoVGVkZHksIDE5LiBKYW4gMTk5OSwgMDA6NDc6NDApOgp+IyEgcm49V2ltIHJ0PTkxNjcwNTk3NiByZz1zY2htYXJybgp+IyEgdGlkPTkxNjYwOTAwMgpQZWFjZSBCcnVkZXIuCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChIcmVpZG1hciwgMTkuIEphbiAxOTk5LCAxMTowMzoyMyk6Ck1hdGlzIHNhZ3Q6IG1pciBpc3QgZWJlbiBtZWluZSBhZXR6YXh0IGluIHBhcmEtbW91bG9raW4gd2VnZ2VmbG9nZW4gdW5kIGljaApNYXRpcyBzYWd0OiBmaW5kZSBzaWUgbmltbWVyIDooCk1hdGlzIGFyZ2x0IGVpbiB3ZW5pZyB2b3Igc2ljaCBoaW4uCkl2byBzYWd0OiBobXBmCk1UViBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpNVFYgc2FndDogYXVzZ2VyZWNobmV0IGRpZSBhZXR6YXh0IDooCk1hdGlzIHNhZ3Q6IG1hbCB3ZWl0ZXIgc3VjaGVuCk1hdGlzIG5pY2t0IHp1c3RpbW1lbmQuCk1hdGlzIGhhdCBtYWwgd2llZGVyIGVpbmUgRmFsbGUgdWViZXJzZWhlbiB1bmQgYnJpY2h0IGluIGRlbiBCb2RlbiBlaW4uCgp3ZW5pZ2UgU2VrdW5kZW4gc3BhZXRlci4uLgoKW1RvZDpMYXJzXSBFaW4gQ2VudGF1cmVud2FlY2h0ZXIgaGF0IGdlcmFkZSBNYXRpcyB1bWdlYnJhY2h0LgpbVG9kOkVpbiBDZW50YXVyZW53YWVjaHRlcl0gUGZmZmYsIGVpbiBTcGllbGVyIG1laHIgb2RlciB3ZW5pZ2VyLCB3YXMgbWFjaHQKW1RvZDpFaW4gQ2VudGF1cmVud2FlY2h0ZXJdIGRhcyBzY2hvbi4KCk5hamEsIGVyIGhhZXR0ZSBldHdhcyB2b3JzaWNodGlnZXIgc3VjaGVuIHNvbGxlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChEaWVkZXIsIDE5LiBKYW4gMTk5OSwgMTc6MjU6MzEpOgpbQWxsZ2VtZWluOlNpbnVzXSB3ZXIga29lbm50ZSBtZWluIHNwaWVnZWxiaWxkIG1hbCBzY2huZWxsIGtpbGxlbi4uLiBiaXR0ZQpbQWxsZ2VtZWluOlNpbnVzXSA/Pz8/CltUb2Q6TGFyc10gU2ludXMgaGF0IGdlcmFkZSBTaW51cyB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ3JhdHMgKFRlZGR5LCAxOS4gSmFuIDE5OTksIDIzOjQ0OjQxKToKW0FsbGdlbWVpbjpLYWRhYnJhIGp1YmVsdCBpY2ggaGFicyBnZXNjaGFmZnQgaWNoIGhhYmUgYWxsZSBhcnRpa2VsCmdlbGVzZW4uLi4uXSAgICAKClRlZGR5LCBncmF0dWxpZXJ0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaG5lIHdvcnRlIChDeW1vbmssIDIwLiBKYW4gMTk5OSwgMTI6MDY6NTgpOgpbTWFnaWVyOkNhbGltZXJhXSBoYWIgaWNoIGhldXQgc2Nob24gdWViZXIgbWVpbmUgc2NobGVjaHRlIGxlaXR1bmcgZ2V3ZXR0ZXJ0CltNYWdpZXI6Q2FsaW1lcmFdICthcmdsKwpbTWFnaWVyOkJvaW5nXSBzb2xsIGljaCB3aWVkZXIgYXVmc3RlaGVuPwpbTWFnaWVyOkN5TW9ua10gcm9sbCcgbmljaHQgZGF1ZXJuZCBtaXQgZGVtIGhvY2tlciB1ZWJlcnMga2FiZWwgOykKW01hZ2llcjpDYWxpbWVyYV0gZGFzIHdhZXIgZWNodCBuZXR0Li4gYWJlciBiaXNzZWxsYWVuZ2VyIGFscyBnZXN0ZXJuIDspCltNYWdpZXI6QmVuZGVpZ2lkIGdlaHQgaW4gZGllIE1lbnNhIHVuZCBydXBmdCB2ZXJzZWhlbnRsaWNoIENhbGltZXJhcyBLYWJlbAogICAgICAgIGF1cyBkZXIgV2FuZF0KQ2FsaW1lcmEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIb3BwbGEgKFB1aywgMjAuIEphbiAxOTk5LCAxNToxMzo1OCk6CkR1IHN0aWVyc3QgRmxheHRyaSBmaW5zdGVyIGFuIHVuZCBzcHJpY2hzdCBXb3J0ZSBkZXIgTWFjaHQuIApGbGF4dHJpIHdpcmQgZGFkdXJjaCBlaW5nZXNjaHVlY2h0ZXJ0IHVuZCBibGVpYnQgbGFlbmdlciB1bnRlciBEZWluZXIKS29udHJvbGxlLiAKRmxheHRyaSB3aXJkIERpciB2b3JyYXVzc2ljaHRsaWNoIGVpbmUgdWViZXJhdXMgbGFuZ2UgWmVpdCBmb2xnZW4uCkR1IGhhc3QgamV0enQgMjAyIExlYmVuc3B1bmt0ZSB1bmQgMTMwIEtvbnplbnRyYXRpb25zcHVua3RlLlZvcnNpY2h0OiA3MC4KRmx1Y2h0cmljaHR1bmc6IHc+IApGbGF4dHJpIHZlcnNjaHdpbmRldCBicm9kZWxuZCBpbSBFcmRyZWljaC4KCgpQdWsgc3RhdW50IHVlYmVyIGVpbmUgc28gbGFuZ2UgWmVpdAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS25vY2hlbm1hcmsgaXMgZGEgKEVtYmUsIDIwLiBKYW4gMTk5OSwgMTc6NDU6NTcpOgp+IyEgcm49Q2FsaW1lcmEgcnQ9OTE2ODUyNTMzIHJnPWFuemVpZ2VuCn4jISB0aWQ9OTE2ODUyNDYwCndhcyBzb2xsIGRhc3M/CnVtbGF1dGUgc2luZCBrZWluZSBzb25kZXJ6ZWljaGVuLCBzb25kZXJuIG5vcm1hbGUgYnVjaHN0YWJlbi4KYWxzbyBzZWkgYml0dGUgc28gbGllYiwgdW5kIHNjaHJlaWIgbiJhY2hzdGVzIG1hbDoKdW1sYXV0ZSB1bmQgc29uZGVyemVpY2hlbiBzaW5kIHNpY2ggenUgZGVua2VuIDotKSkKCmdydXNzLCBlTUJlZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEtub2NoZW5tYXJrIGlzIGRhIChDYWxpbWVyYSwgMjAuIEphbiAxOTk5LCAxNzo0NjozNyk6Cn4jISBybj1FbWJlIHJ0PTkxNjg1NDM1NyByZz1zY2htYXJybgp+IyEgdGlkPTkxNjg1MjQ2MApIYWFyc3BhbHRlciEKOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpad2VyZ2UgKE1pbmRibGFkZSwgMjEuIEphbiAxOTk5LCAwMDozMjozMCk6CkRlaW4gRnJldW5kIFJpbmdvciB0ZWlsdCBEaXIgbWl0OiBTdG9wISBBdWZob2VyZW4hIEljaCBhbnR3b3J0ZSBqZXR6dCBuaWNodApEZWluIEZyZXVuZCBSaW5nb3IgdGVpbHQgRGlyIG1pdDogbWVociBhdWYgdGVpbGUtbWl0cy4gSWNoIGhhdSBhYiA7KQpEZWluIEZyZXVuZCBSaW5nb3Igd2lua3QgRGlyIHp1bSBBYnNjaGllZCBhdXMgZGVyIEZlcm5lIHp1LgpEdSB0ZWlsc3QgUmluZ29yIG1pdDogbm9lIGRhcyBrYW0gZ3JhZCBnYW56IG5vcm1hbCBydWViZXIuLi5udXIgZGFzCkR1IHRlaWxzdCBSaW5nb3IgbWl0OiBncm9zc2dlc2NocmllYmVuZSBrYW0gamV0enQgbWl0IHNwYWNlcyE7KQpSaW5nb3IgdGVpbHQgRGlyIG1pdDogZmFsc2NoZXMgQWxpPwoKRGEgc2llaHQgbWFuIHdpZWRlciBad2VyZ2UgbHVlZ2VuIHdpZSBnZWRydWNrdCE7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFp3ZXJnZSAoSXZvLCAyMS4gSmFuIDE5OTksIDAwOjM1OjQ1KToKfiMhIHJuPU1pbmRibGFkZSBydD05MTY4Nzg3NTAgcmc9c2NobWFycm4KfiMhIHRpZD05MTY4Nzg3NTAKRGVpbiBGcmV1bmQgUmluZ29yIHRlaWx0IERpciBtaXQ6IFN0b3AhIEF1ZmhvZXJlbiEgSWNoIGFudHdvcnRlIGpldHp0IG5pY2h0CkRlaW4gRnJldW5kIFJpbmdvciB0ZWlsdCBEaXIgbWl0OiBtZWhyIGF1ZiB0ZWlsZS1taXRzLiBJY2ggaGF1IGFiIDspCkFuYWNyaW9uICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpEZWluIEZyZXVuZCBSaW5nb3Igd2lua3QgRGlyIHp1bSBBYnNjaGllZCBhdXMgZGVyIEZlcm5lIHp1Lgo+IER1IHRlaWxzdCBSaW5nb3IgbWl0OiB3aXJrbGljaCA/Cj4gRHUgd2lua3N0IFJpbmdvciBhdXMgZGVyIEZlcm5lIHp1Lgo+IFJpbmdvciB0cml0dCBEaWNoIGdyaW5zZW5kIGF1cyBkZXIgRmVybmUuClJpbmdvciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCmhhdCBpaG4gZG9jaCBlaW5lciBlcndpc2NodCA7KQoKSXZvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYXVmIGthc3RlbiBoeXBvIChDYXR3ZWF6bGUsIDIxLiBKYW4gMTk5OSwgMDk6NDY6MzkpOgp+IyEgb249U2hhcmlhIG90PTkxNjkxMTkzNyBvZz1hbGxnZW1laW5lcwp+IyEgcm49SHlwbyBydD05MTY4OTA3MzEgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MTY4OTA3MzEKc2llaHQgZmFzdCBhdXMgd2llIGRpZSBtcGEgb2RlciA/Ci0tPiBzY2htYXJybiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthbXBmendeSF5IZ2FzdD8gKFdvb2R5LCAyMS4gSmFuIDE5OTksIDExOjUxOjI2KToKR2FzdDEgYmV0cml0dCBkaWVzZSBXZWx0LgpSaW5nb3IgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprb25zZXF1ZW50Li4uLiAoUmVhcGVyLCAyMS4gSmFuIDE5OTksIDEyOjI4OjEzKToKCgo+IERlaW4gRnJldW5kIEdvbGFzIHRlaWx0IERpciBtaXQ6IGFjaCBqYSwgdGVsZWZvbnJlY2hudW5nIGlzdCBnZWtvbW1lbiAuLi4KRGVpbiBGcmV1bmQgR29sYXMgdGVpbHQgRGlyIG1pdDogMjUwLC0gdXJncyBudXIgZnVlciBtdWQhISEKR29sYXMgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgoKZ3JpbnNlbmQsIFJlYXBlciAKKGRlciB1ZWJlciBuZSBkcmVpc3RlbGxpZ2UgVGVsLVJlY2hudW5nIHNjaG9uIGdsdWVja2xpY2ggd2FlcmUuLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGbHVjaHQgYXVzIGRlciBGJkU/IChXaW0sIDIxLiBKYW4gMTk5OSwgMTY6NDc6NTEpOgoKUm9jaHVzIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KUm9jaHVzICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCk1hbiBob2VydCBkaWUgdmVyendlaWZlbHRlbiBSdWZlIHZvbiBGb29iYXIgYXVzIGRlbSBHcmltbXN3YWxkCmhlcnVlYmVyc2NoYWxsZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGVnYXN1cyBpc3QgVE9UIDpvKSAoUmVhcGVyLCAyMS4gSmFuIDE5OTksIDE5OjIxOjU1KToKCkVpbiBmbGllZ2VuZGVzIFBmZXJkIGVyaGVidCBzaWNoIGluIGRpZSBMdWVmdGUuCj5pZGVudGlmaXppZXJlIHBlZ2FzdXMKRHUgdmVydGllZnN0IERlaW5lIEdlZGFua2VuIGluIGRlbiBQZWdhc3VzIHVuZCB2ZXJnaXNzdCBmdWVyIGt1cnplIFplaXQgYWxsZXMKdW0gRGljaCBoZXJ1bS4uLgpEZXIgUGVnYXN1cyBpc3QgZWluIGxlYmxvc2VzIERpbmcuClNvbnN0IGthbm5zdCBEdSBuaWNodHMgYmVzb25kZXJlcyBhbiBkZW0gUGVnYXN1cyBlcmtlbm5lbi4KRGVpbiBaYXViZXJzdGFiIHVudGVyc3R1ZXR6dCBEaWNoIGJlaSBkZW0gU3BydWNoLgoKCmFsc28sIHNjaG5lbGwgd2llIGVpbiB0b3RlcyBQZmVyZCBpc3NlciBtYWwgLi4uLgoKOm8pIFJlYXBlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gZWluIGRlcHAgKFR3aW5zZW4sIDIxLiBKYW4gMTk5OSwgMjE6MDQ6NDEpOgp0ZWlsZSBrcnV1b2xxIG1pdCBzdGF0dXMKPiBEdSBnZWhvZXJzdCBkaWVzZXIgR2lsZGUgZ2FyIG5pY2h0IGFuLgpIaWVyIGtvbW10IGRpZSBMaXN0ZSBEZWluZXIgRmFlaGlna2VpdGVuOgpEdSBrYW5uc3QgZm9sZ2VuZGUgWmF1YmVyc3BydWVjaGU6CgoKClR3aW5nbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNvIGVpbiBkZXBwIChaaWxsdXMsIDIxLiBKYW4gMTk5OSwgMjE6MDU6MzkpOgp+IyEgcm49VHdpbnNlbiBydD05MTY5NTI2ODEgcmc9c2NobWFycm4KfiMhIHRpZD05MTY5NTI2ODEKZGEgc3RlbGx0IHNpY2ggbnVyIGRpZSBGcmFnZSwgd2VyIGRhIGRlciBEZXBwIGlzdCA7LSkKClppbGx1cy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNvIGVpbiBkZXBwIChUd2luc2VuLCAyMS4gSmFuIDE5OTksIDIxOjA1OjU3KToKfiMhIHJuPVppbGx1cyBydD05MTY5NTI3Mzkgcmc9c2NobWFycm4KfiMhIHRpZD05MTY5NTI2ODEKRFUgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTbyBlaW4gZGVwcCAoUmluZ29yLCAyMS4gSmFuIDE5OTksIDIxOjA2OjI3KToKfiMhIHJuPVppbGx1cyBydD05MTY5NTI3Mzkgcmc9c2NobWFycm4KfiMhIHRpZD05MTY5NTI2ODEKSW0gWndlaWZlbHNmYWxsIHp3ZWkgbmljaHQgbmFlaGVyIGdlbmFubnRlIEdpbGRlbm1hZ2llci4KClJpbmdvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU28gZWluIGRlcHAgKFRlZGR5LCAyMS4gSmFuIDE5OTksIDIyOjA1OjU3KToKfiMhIHJuPVJpbmdvciBydD05MTY5NTI3ODcgcmc9c2NobWFycm4KfiMhIHRpZD05MTY5NTI2ODEKMj8KClRlZGR5IGdydWViZWx0IGRvY2ggbWFsIHdlbGNoZSBnZW5hdSBlciBtZWluZW4ga29lbm50ZSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluc2ljaHQ/PyAoTW9yZ290aCwgMjIuIEphbiAxOTk5LCAwMDoyOTo0Nik6CkRlaW4gRnJldW5kIEJyYW5kaXIgdGVpbHQgRGlyIG1pdDogSG1tbSwgT25saW5lQ291bnRlciB0ZWlsdCBEaXIgbWl0OiBTaWUKRGVpbiBGcmV1bmQgQnJhbmRpciB0ZWlsdCBEaXIgbWl0OiBoYWJlbiBoZXV0ZSBzY2hvbiA2IERNIHZlcmJyYXVjaHQuLi4uIGRhcwpEZWluIEZyZXVuZCBCcmFuZGlyIHRlaWx0IERpciBtaXQ6IHdhcnMgZGFubiB3b2hsIDopCkR1IHRlaWxzdCBkZWluZW4gRnJldW5kZW4gbWl0OiB1bmQ/CkRlaW5lIEZyZXVuZGluIExlaWJuaXogdGVpbHQgRGlyIG1pdDogaGV5IGljaCBiaW4gYXVjaCBub2NoIHNvIHRldWVyLCBqZXR6dApEZWluZSBGcmV1bmRpbiBMZWlibml6IHRlaWx0IERpciBtaXQ6IGlzdCBlciBwbGVpdGUgOikKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXIgUHJpbnogaXN0IGthZXVmbGljaD8gKE1vcmdvdGgsIDIyLiBKYW4gMTk5OSwgMDA6NDA6NTcpOgpUYWdvIHNhZ3Q6IG9kZXIgZ2liIG1pciA1MDAgbXVlbnplbiB1bmQgaWNoIHRhbnplIDopCkhpYmJlbGlnIGZyYWd0OiBFY2h0ID8KRHUgc2Fnc3Q6IHdhaGgKSGliYmVsaWcgZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KVGFnbyBzY2h1ZXR0ZWx0IGRlbiBLb3BmLgpUYWdvIGdyaW5zdC4KVGFnbyBzYWd0OiBzbyBiaWxsaWcgYmluIGljaCBub2NoIG5pY2h0IDopCkR1IHNhZ3N0OiB3aWV2aWVsIGRlbm4/CkhpYmJlbGlnIHNhZ3Q6IHNjaGFkZSwgaGFiIGdlZGFjaHQgZHUgbGVnc3QgamV0eiBuZW4gc3RyaXAgaGluCkhpYmJlbGlnIGh1ZXBmdCBmcm9laGxpY2ggaGVydW0uClRhZ28gc2FndDogaGV5IG5pY2h0IHZvciBzdmVuIDopCkhpYmJlbGlnIGRlbmt0ICAgLiBvIE8gKGhhYiBoZXV0IGVjaHQgbnVyIHVuc2lubiBpbSBrb3BmKQpIaWJiZWxpZyBncmluc3QgVGFnbyBhbi4KVGFnbyBncmluc3QuClRhZ28gc2FndDogbWhtbW0gd2lldmllbCBtdWVuemVuIGJpbiBpY2ggZGVubiBudW4gd2VydApUYWdvIHNhZ3Q6IHdlbm4gaWNoIGpldHp0IG5lIHphaGwgbmVubmUgZGFubiBkcnVlY2t0IHN2ZW4gbWlyIGRpZSBzb2ZvcnQgaW4KVGFnbyBzYWd0OiBkaWUgaGFuZCA6KQpEdSBzYWdzdDogNTAxPwpEdSBzYWdzdDogbG9nbwpUYWdvIHNhZ3Q6IG5hIHN1cGVyIDopCkhpYmJlbGlnIHNhZ3Q6IG5hIGxvcyBzYWcgc2Nob24KVGFnbyBzYWd0OiBuZSBpY2ggd2lsbCBqZXR6dCBuaWNodCA6KQpIaWJiZWxpZyBoaWJiZWx0IHVtIFRhZ28gaGVydW0uCkhpYmJlbGlnIHNhZ3Q6IG9jaCwgemllciBkaWNoIG5pY2ggc28KVGFnbyBzYWd0OiBpY2ggaGFicyBzbyBhbiBkZXIgSHVlZnRlIDo7KQpIaWJiZWxpZyBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KRHUgcm90ZmxzdC4KSGliYmVsaWcgc2FndDogc2Nob24ga2xhcgpIaWJiZWxpZyBkZW5rdCAgIC4gbyBPIChpbiBkZW0gYWx0ZXIgOikpKQpUYWdvIHNhZ3Q6IGphIG1pdCAxMTUgZ2VodCBkYXMgbmNpaHQgbWVociBzbyBsb2NrZXIgOikKSGliYmVsaWcgbmlja3QgenVzdGltbWVuZC4KSGliYmVsaWcgc2FndDogZWJlbmQKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWxic3R1ZWJlcnNjaGFldHp1bmcgPz8/IChNb3Jnb3RoLCAyMi4gSmFuIDE5OTksIDAwOjQ5OjM0KToKUGFkcmVpYyBzYWd0OiB3aWVzbyBkYXM/IGlzdCBkb2NoIGVpbiB3YWhyZXIgZ2x1ZWNrc2ZhbGwgZWluZW4gc28KUGFkcmVpYyBzYWd0OiBzeW1wYXRoaXNjaGVuLCBsaWViZW5zd2VydGVuLCBrb21wZXRlbnRlbiBTb2huIHdpZSBtaWNoIHp1ClBhZHJlaWMgc2FndDogYmVrb21tZW4gOikKCk0qLCBlcnNjaHVldHRlcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBBcm1lISAoTW9yZ290aCwgMjIuIEphbiAxOTk5LCAwMDo1OTowMCk6ClRldmlsZG8gZ2lidCBUYWdvIGVpbmVuIHRpZWZlbiB1bmQgaGluZ2VidW5nc3ZvbGxlbiBLdXNzLgpUYWdvIGRlbmt0ICAgLiBvIE8gKG1lbnNjaCB3YXIgZGFzIGd1dCA6KSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgbWFuIHNvIGxpZXN0LCB3ZW5uIG1hbiBpZGxlIHdhciwgYmVpIC9yZWNhbGwgMTAwMCAqZHJvbGxpKiAoV29vZHksIDIyLiBKYW4gMTk5OSwgMjA6MTM6NDUpOgpEcm9sbGkgd2VpbHQgd2llZGVyIHVudGVyIGRlbiBMZWJlbmRlbi4KRHJvbGxpIGRlbmt0ICAgLiBvIE8gKG9oamUgZGllIGtpbmRpc2NoZW4gdm9sbGRlcHBlbiBhdXMgb3N0ZXJyZWljaCB3aWVkZXIgZGEpCkRyb2xsaSBsYWVzc3QgZWluZW4gU3RpbmtlZnVyeiBmYWhyZW4uCkRyb2xsaSBnZWh0IG5hY2ggTm9yZGVuLgpEZXIgRnVyeiByaWVjaHQsIGFscyB3dWVyZGUgRHJvbGxpIGlubmVybGljaCB2ZXJmYXVsZW4uCkRyb2xsaXMgRnVyeiBzdGlua3Qgd2lya2xpY2ggZ3JhdWVuZXJyZWdlbmQuCkRyb2xsaXMgRnVyeiBzdGlua3Qgd2lya2xpY2ggZ3JhdWVuZXJyZWdlbmQuCkRyb2xsaXMgd2lkZXJsaWNoZXIgRnVyeiBoYXQgc2ljaCBlbmRsaWNoIHZlcnpvZ2VuLgoKCk9obmUgV29ydGUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIGdpbmcgYWJlciBzY2huZWxsIChUd2luc2VuLCAyMy4gSmFuIDE5OTksIDExOjU1OjE4KToKTWF0aXMgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKIFtUb2Q6TGFyc10gRWluIEVpc3Ryb2xsc2NoYW1hbmUgaGF0IGdlcmFkZSBNYXRpcyB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc28gbWFnIGljaCBkYXMuLi4gOikgKExldiwgMjMuIEphbiAxOTk5LCAxMjozMzo1NSk6CgpEZXIgS2xpdHplbGRyb20gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KW01vZXJkZXI6R2Vpc3QgZWluZXMgS2xpdHplbGRyb21zXSBMZXYgaXN0IGRvb2YgdW5kIHN0aW5rdCEKCi4uLgoKRGVpbmUgU2NodWhlIGdsdWVoZW4ga3VyeiBhdWYgdW5kIGhlaWxlbiBEaWNoIGVpbiB3ZW5pZy4KKioqKiBMUDogMjI2ICgrNzIpIEtQOiAxNzkgKCsxMjApCkVpbiBLbGl0emVsZHJvbSBrb21tdCBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhcnQsIGFiZXIga29uc2VxdWVudCE6KSkgKE1pbmRibGFkZSwgMjMuIEphbiAxOTk5LCAyMTo0Mzo1Mik6CltaYXViZXJlcjpXaW0gbGFjaHQgbnVyIG5vY2ggaHlzdGVyaXNjaC5dCltaYXViZXJlcjpKZW1hbmQgdHJvZXN0ZXQgV2ltLl0KW1phdWJlcmVyOldpbV0gZGVuIG5hZWNoc3RlbiBidWdnZXIgemFwcCBpY2guLgpbWmF1YmVyZXI6UmluZ29yIG5hZ2VsdCBXaW0gYXVmIGRpZSBBdXNzYWdlIGZlc3QuXQpbWmF1YmVyZXI6TWluZGJsYWRlXSBIbSwgd2VubiBkaWVzZXIgSmVtYW5kIGRvY2ggYmxvc3MgRXJ6aQpbWmF1YmVyZXI6TWluZGJsYWRlXSB3YWVyZS4uLnd1bnNjaGRlbmtlbiwgaWNoIHdlaXNzLi47KQpbWmF1YmVyZXI6WGFuZCB3YXJ0ZXQgZ2VzcGFubnRdCltaYXViZXJlcjpBbmF0b2xdIFNjaGxpbW1lciBrYW5uIGVyJ3MgbmljaHQgbWFjaGVuLgpbWmF1YmVyZXI6QmlnYXMgd2VkZWx0IG1pdCBlaW5lbSAnWmFwIG1pY2gnLUZhZWhuY2hlbl0KW1phdWJlcmVyOldpbV0gd2VyZCB6YXViZXJlciA6KQpaYXViZXJlcjpCaWdhc10gTm9lb2VvZW8KW1phdWJlcmVyOktudXJ0XSBodWNoIGljaCBidWdnZQpbWmF1YmVyZXI6QW5hdG9sXSBTdGFicmVwb3J0IGF1cyA6bykKW1RvZDpMYXJzXSBXaW0gaGF0IGdlcmFkZSBLbnVydCB1bWdlYnJhY2h0LgpbVG9kOldpbV0gSUNIIEhBQiBESUNIIEdFV0FSTlQhCltaYXViZXJlcjpNaW5kYmxhZGUgZ3JpbnN0Ll0KW1phdWJlcmVyOkFuYXRvbCBsYWNodC5dCltaYXViZXJlcjpSaW5nb3JdIG9rYXksIGVyIGlzIGtvbnNlcXVlbnQgOikKW1phdWJlcmVyOktsZWluS251cnRdIHN1cGVyd2l0emlnIHdpbQpbWmF1YmVyZXI6QnJhbmRpciBraWNoZXJ0Ll0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZyYWdlLi4uIChUcmFuY2VmZWFyLCAyNC4gSmFuIDE5OTksIDAwOjA1OjE2KToKYW5kZXJlcyB3b3J0IGZ1ZXIgIm55bXBob21hbmlzY2giID8KCgoKCgoKCgoKCgoKCgoKInp3YW5nc2xhZXVmaWciCgp0ZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBiZWkgZGVuIFp3ZXJnZW4gLi4uIChLZXJuYmVpc3NlciwgMjQuIEphbiAxOTk5LCAwMDoxMTozOSk6Cj4gTGVpc2Ugd2VpbnQgZWluIEJhYnkgaW4gZGVyIE5hZWhlLgp1bnQgYmFieQpEaWVzZXMgRGV0YWlsIHdpcmQgZ2VyYWRlIHJlcGFyaWVydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbHRzYW1lIExldXRlIHRyZWliZW4gc2ljaCBoaWVyIGluIGxldHp0ZXIgWmVpdCBydW0gLi4uIChUaG9yLCAyNC4gSmFuIDE5OTksIDE1OjE0OjAzKToKRHUgcnVmc3Q6IFdPT0RZIQpNYWV4eCB0ZWlsdCBEaXIgbWl0OiBwc3QKRHUgdGVpbHN0IE1hZXh4IG1pdDogPwpNYWV4eCB0ZWlsdCBEaXIgbWl0OiBlcyBnaWJ0IGVpbmVuIEJlZmVobCB0ZWlsZSBtaXQuLi4gd2VubmVyIGRpY2ggaG9lcnQsCk1hZXh4IHRlaWx0IERpciBtaXQ6IGhvZXJ0IGVyIGRpY2ggYXVjaCBzbywgYW5zb25zdGVuIGhvZXJ0IGVyIGRpY2ggbmljaHQsCk1hZXh4IHRlaWx0IERpciBtaXQ6IGdlbGxlIQpEdSB0ZWlsc3QgTWFleHggbWl0OiBuYSB3YXMgZHUgbmljaHQgc2Fnc3QhCk1hZXh4IHRlaWx0IERpciBtaXQ6IHNvbGx0ZXN0IGR1IGRvY2ggZWdudGwgd2lzc2VuCkR1IHRlaWxzdCBNYWV4eCBtaXQ6IHRhdHNhZWNobGljaD8gc29sbHRlIGljaCBkYXM/Ck1hZXh4IHRlaWx0IERpciBtaXQ6IGR1IGxldmVsIDUwIGljaCBsZXZlbCAxIGR1IHNwaWVsZW4gc2VpdCAxIEphaHIsIGR1Ck1hZXh4IHRlaWx0IERpciBtaXQ6IHNlaGVyaW4uLi4gbm9jaCBmcmFnZW4/CkR1IHRlaWxzdCBNYWV4eCBtaXQ6IHNjaG9uIG1hbCBhdWYgZGllIGlkZWUgZ2Vrb21tZW4sIGRhc3Mgc2ljaCBlaW5pZ2UgbGV1dGUKRHUgdGVpbHN0IE1hZXh4IG1pdDogZWluZmFjaCBiZWltIG5hbWVuIHJ1ZmVuLCB3ZWlsIHNpZSBzaWNoIGZyZXVlbiBzaWNoIHp1CkR1IHRlaWxzdCBNYWV4eCBtaXQ6IHNlaGVuPwpNYWV4eCB0ZWlsdCBEaXIgbWl0OiBpY2ggaWdub3JpZXJlIGRpY2ggamV0enQgOi0pCgpJbiBsZXR6dGVyIFplaXQgd2VyZGVuIGRpZSBMZXV0ZSBoaWVyIGltbWVyIGtvbWlzY2hlciBoYWIgaWNoIGRlbiBFaW5kcnVjayA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVtbWUgKFJpa3VzLCAyNC4gSmFuIDE5OTksIDIyOjE2OjE0KToKRGVidWdnZXIgc2FndDogcGFydHlmb3Rvcz8gbmVlIGljaCB3dXJkZSBuaWUgZ2FueiBnZWtuaXBzdCwgaW1tZXIgbnVyIGhhbmQKRGVidWdnZXIgc2FndDogb2RlciBmdXNzIG9kZXIgdm9uIGhpbnRlbi4uLgpEZWluZSBXYW5nZW4gZ2x1ZWhlbi4KQXVncmEgZ3JpbnN0LgpEdSBzYWdzdDogdm9uIGhpbnRlbj8gZGFubiBzaW5kIHdpciBkb2NoIG5pY2h0IHNvIGFlaG5saWNoIDopCkRlYnVnZ2VyIHNhZ3Q6IGFyZ2whClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBEZWJ1Z2dlci4KRHUgZGVua3N0ICAgLiBvIE8gKHJhbW1zdGVpbjogYnVlY2sgZGljaCEpCkRlYnVnZ2VyIHppZWh0IGRpZSBIb3NlIGhvY2ggdW5kIHJlbm50IGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgpBdWdyYSBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpBdWdyYSB3YWVsenQgc2ljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uCkF1Z3JhIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCgpSaWt1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT3JkZW50bGljaCwgb3JkZW50bGljaCAuKSkgKE5vdmFzdG9ybSwgMjUuIEphbiAxOTk5LCAxMjowNjoyNCk6CkRlbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpSYWtpIHRyb3R0ZXQgaGVyZWluLgpEZWwgc2NodWV0dGVsdCBkaWUgRGVja2VuIGlociBCZXR0ZXMgYXVzLCBmYWx0ZXQgc2llIHVuZCBsZWd0IHNpZSBhbnMKRnVzc2VuZGUuIEFuc2NobGllc3NlbmQgc3RyZWljaHQgc2llIGRhcyBMYWtlbiBnbGF0dC4KPiBQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgRGVsLgpEZWwgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhClJha2kgaGF1dCBhYi4KCkZyYXVlbiBpbSBTdHJ1di4uLiBiaXR0ZSBCZWlzcGllbCBuZWhtZW4sIHVuZCBtZWluIEJldHQgYml0dGUgYXVjaCA7LSkpCiAgICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgZGVubiBqZXR6dD8gKE1lbmFjZSwgMjUuIEphbiAxOTk5LCAxMjoyOToxOSk6ClZvbSBNYWdpc2NoZW4gQXVnZSB3YWxsdCBOZWJlbCBhdWYsIGF1cyBkZW0gZGllIFdvcnRlIHRvZW5lbjoKRGllIEphZ2Rhcm1icnVzdCBpc3QgTXVuaXRpb24gZnVlciBlaW5lIFdhZmZlLgpXZW5uIG1hbiBtaXQgZGllc2VyIFdhZmZlIGFuZ3JlaWZ0LCBzdGljaHQgbWFuIGF1ZiBkZW4gR2VnbmVyIGVpbi4KRGllc2UgV2FmZmUgaXN0IHNlaHIgZ3V0LCBzZWhyIHNjaHdlciB1bmQgdW5iZXphaGxiYXIuCkRpZSBKYWdkYXJtYnJ1c3QgaXN0IHVuYmVzY2hhZWRpZ3QuCkR1IGJlbm9ldGlnc3QgMiBIYWVuZGUsIHVtIHNpZSB6dSB6dWVja2VuLgoKU29zbywgZGllIEFybWJydXN0IGlzdCBhbHNvIE11bml0aW9uISBJbiB3ZWxjaGUgV2FmZmUgbGFkZSBpY2ggZGVubiBlaW5lIApBcm1icnVzdD8gVW5kIGthbm4gaWNoIGluIGRpZXNlIG9taW5vZXNlIFdhZmZlIGF1Y2ggQm9lZ2VuIGxhZGVuPwoKTWVuYWNlIHZlcndpcnJ0IHVlYmVyIGRlbiBVbnRlcnNjaGllZCB2b24gU2NodXNzd2FmZmUgdW5kIE11bml0aW9uLiAgPzpvLwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW50ZXJlc3NhbnRlcyBBbmdlYm90IDspIChUZWRkeSwgMjYuIEphbiAxOTk5LCAwMDoyMzozNyk6ClRob3IgdGVpbHQgRGlyIG1pdDogd2VubiBkaXIgWlUgbGFuZ3dlaWxpZyBpc3QsIGRhbm4gc2FnIGJlc2NoZWlkIDopKQpEdSB0ZWlsc3QgVGhvciBtaXQ6IFdpZXNvPyBXYXMgaXMgZGFubj8gOy0pClRob3IgdGVpbHQgRGlyIG1pdDogbmFqYSwgaWNoIGJpbiBub2NoIG5hY2t0IDopCgpUZWRkeSwgaXMgc2ljaCBuY2loIHNpY2hlciB3aWUgZXIgZGFzIHp1IHZlcnN0ZWhlbiBoYXQsIHZvciBhbGxlbSBkc2EgTk9DSCA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJbnRlcmVzc2FudGVzIEFuZ2Vib3QgOykgKFRob3IsIDI2LiBKYW4gMTk5OSwgMDA6MjQ6MzQpOgp+IyEgcm49VGVkZHkgcnQ9OTE3MzEwMjE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE3MzEwMjE3Clp1ciBWZXJ0ZWlkaWd1bmc6IERhcyBzb2xsdGUgYWxzIEF1c3J1ZXN0dW5ncy1TY2hub3JyZXJlaSBnZWRhY2h0IHNlaW4hIDopCgpUaG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEludGVyZXNzYW50ZXMgQW5nZWJvdCA7KSAoVGVkZHksIDI2LiBKYW4gMTk5OSwgMDA6MjY6MTMpOgp+IyEgcm49VGhvciBydD05MTczMTAyNzQgcmc9c2NobWFycm4KfiMhIHRpZD05MTczMTAyMTcKQWNoIHNvLCBkYXMgd2FyIG5lbiBBbmdlYm90IGZhbGxzIGljaCBkaXIgQXVzcnVlc3R1bmcgYmVzb3JnZSAuLi4KClRlZGR5LCB2ZXJzdGVodCBzY2hvbiBiZXNzZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBJbnRlcmVzc2FudGVzIEFuZ2Vib3QgOykgKEFuYXRvbCwgMjYuIEphbiAxOTk5LCAwMDoyNjozNSk6Cn4jISBybj1UZWRkeSBydD05MTczMTAzNzMgcmc9c2NobWFycm4KfiMhIHRpZD05MTczMTAyMTcKTGVzZSBpY2ggZGEgRW50dGFldXNjaHVuZz8KClRzLApBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBJbnRlcmVzc2FudGVzIEFuZ2Vib3QgOykgKFRlZGR5LCAyNi4gSmFuIDE5OTksIDAwOjI3OjI1KToKfiMhIHJuPUFuYXRvbCBydD05MTczMTAzOTUgcmc9c2NobWFycm4KfiMhIHRpZD05MTczMTAyMTcKSmVwcCwgZGFzIGljaHMgY25paHQgZ2xlaWNoIGthcGllcnQgaGFiIHVuZCBnZW51dHp0IDspCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSW50ZXJlc3NhbnRlcyBBbmdlYm90IDspIChUaG9yLCAyNi4gSmFuIDE5OTksIDAwOjI4OjIxKToKfiMhIHJuPVRlZGR5IHJ0PTkxNzMxMDM3MyByZz1zY2htYXJybgp+IyEgdGlkPTkxNzMxMDIxNwpJY2ggbXVzcyBtaXIgbWVpbmUgV29ydGUgZGFzIG5hZWNoc3RlIG1hbCB3b2hsIGV0d2FzIGdlbmF1ZXIgZHVyY2ggZGVuIEtvcGYKZ2VoZW4gbGFzc2VuIC4uLiA6KQoKVGhvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSW50ZXJlc3NhbnRlcyBBbmdlYm90IDspIChUZWRkeSwgMjYuIEphbiAxOTk5LCAwMDoyODo0OSk6Cn4jISBybj1UaG9yIHJ0PTkxNzMxMDUwMSByZz1zY2htYXJybgp+IyEgdGlkPTkxNzMxMDIxNwpKZXBwLCBuYWVjaHN0ZXMgTWFsIGRlaW4gQW5nZWJvdCBiaXR0ZSBlaW5kZXV0aWdlciBmb3JtdWxpZXJlbiBkYW1pdCBpY2ggZXMKZ2xlaWNoIGVya2VubmUuCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEludGVyZXNzYW50ZXMgQW5nZWJvdCA7KSAoTW9yZ290aCwgMjYuIEphbiAxOTk5LCAwODowMDoyMyk6Cn4jISBybj1UZWRkeSBydD05MTczMTAyMTcgcmc9c2NobWFycm4KfiMhIHRpZD05MTczMTAyMTcKQnJpbmcgbWFsIERlaW5lIEhvcm1vbmUgYXVmIGRlbiBUZXBwaWNoLCBEdSB2ZXJ0aXBwc3QgRGljaCBqYSBhbmRhdWVybmQuCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFyYXRoLCAyNi4gSmFuIDE5OTksIDEyOjIxOjQzKToKW0FsbGdlbWVpbjpTaWxiZXJoZWltXSBoaWxmZSBzdGVja2UgYXVmIHRpdGl3dSBpbSB0cmVpYnNhbmQhIHdpZSBrb21tdCBtYW4gZGEKW0FsbGdlbWVpbjpTaWxiZXJoZWltXSByYXVzPz8/CltBbGxnZW1laW46WmFwaG9iXSBnYXIgbmljaHQgLT4gZW5kZQpbQWxsZ2VtZWluOlphcmRveiBzY2hhbHRldCBkZW4gVG9kZXNrYW5hbCBlaW5dCltBbGxnZW1laW46S29vbWkgZ3Vja3QgbWFsIGF1ZiAtdG9kXQpbQWxsZ2VtZWluOkRvbGxhcl0gdWViZXIgTGFycwpbVG9kOkxhcnNdIFRyZWlic2FuZCBoYXQgZ2VyYWRlIFNpbGJlcmhlaW0gdW1nZWJyYWNodC4KCkFyYXRoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgd2ljaHRpZ3N0ZXMgU2FjaGUgdm9uIFphdWJlcmVyIE5QQ3MgKFdpbSwgMjYuIEphbiAxOTk5LCAyMzo1NzowNyk6CgooLi4uKQogIERlciBIb2VobGVuZ25vbSB6ZXJzY2htZXR0ZXJ0IERpY2ggaW4ga2xlaW5lIFN0dWVja2NoZW4uCkRlciBIb2VobGVuZ25vbSBzY2hhdXQgcGxvZXR6bGljaCB2b2VsbGlnIGVudHNwYW5udC4gU2NoZWluYmFyIGJlcmVpdGV0IGVyCnNpY2ggYXVmIGV0d2FzIHNlaHIgV2ljaHRpZ2VzIHZvci4KICBEdSB0cmlmZnN0IGRlbiBIb2VobGVuZ25vbSBzZWhyIGhhcnQuCkRlciBIb2VobGVuZ25vbSBmYWVsbHQgdG90IHp1IEJvZGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoamEgKFhhbmQsIDI2LiBKYW4gMTk5OSwgMjM6NTg6MjApOgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gV2ltIGluIFJ1YnJpayAic2NobWFycm4iLgpFaW4gQmVpZmFsbHNzdHVybSBicmFuZGV0IGltIERpYW1vbmRwYXJrIGF1Zi4gV2FzIGRhIHdvaGwgd2llZGVyIGxvcyBpc3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEludGVyZXNzYW50ZXMgQW5nZWJvdCA7KSAoVGVkZHksIDI3LiBKYW4gMTk5OSwgMDA6MzQ6MDEpOgp+IyEgcm49TW9yZ290aCBydD05MTczMzc2MjMgcmc9c2NobWFycm4KfiMhIHRpZD05MTczMTAyMTcKbmVpZGlzY2g/IAoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEludGVyZXNzYW50ZXMgQW5nZWJvdCA7KSAoTW9yZ290aCwgMjcuIEphbiAxOTk5LCAwMDozNTowNyk6Cn4jISBybj1UZWRkeSBydD05MTczOTcyNDEgcmc9c2NobWFycm4KfiMhIHRpZD05MTczMTAyMTcKKmtvdHoqCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSW50ZXJlc3NhbnRlcyBBbmdlYm90IDspIChUZWRkeSwgMjcuIEphbiAxOTk5LCAwMDozOTo0NCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkxNzM5NzMwNyByZz1zY2htYXJybgp+IyEgdGlkPTkxNzMxMDIxNwpKZXBwLCBnZWh0IG1pciBhdWNoIGltbWVyIHNvLCB3ZW5uIGljaCBhbiBkaWNoIGRlbmtlLgoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklzdCBEQVMgd2lya2xpY2ggS2V5Pz8gKE1vcmdvdGgsIDI3LiBKYW4gMTk5OSwgMDg6MjU6MTgpOgpbU2VoZXI6S2V5XSBtb2luIHN1Y2h0aWVzCltTZWhlcjpNb3Jnb3RoXSB0YWNoIHN0ZXJiZXIKW1NlaGVyOk1vcmdvdGhdIGdlaHN0ZSB3aWVkZXIgenUgZGVuIGRhZW1vbmVuCltTZWhlcjpLZXldIE5lZSBsaWViZXIgenUgZGVuIE9ya3MgOikKW1NlaGVyOk1vcmdvdGhdIHdpZXNvPz8KW1NlaGVyOktleSBsYWVzc3Qgc2ljaCBkZW4gV2Fzc2VycGFuemVyIHZvbiBuZW0gU2tsYXZlbiBob2xlbiA7KV0KW1NlaGVyOktleV0gTmEgYmVpIGRlbiBPcmtzIGhhYiBpY2ggYmVzc2VyZSBDaGFuY2VuIDspCltTZWhlcjpNb3Jnb3RoXSB6dSBzdGVyYmVuPwpbU2VoZXI6S2V5XSBuZWUgenUgdWViZXJsZWJlbiA6KQoKTW9yZ290aCwgZXJzdGF1bnQgdW5kIGFlaC4uLiBzcHJhY2hsb3MKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNpcC1Qb29sLUJla2FubnRzY2hhZnRlbiAoR29yb2csIDI3LiBKYW4gMTk5OSwgMTM6NTM6NTYpOgpEZXIgTW9uaXRvciBnZWh0IGF1cy4KSWNoIHNhZzogRGFua2UhCkRpZSBGcmF1IG5lYmVuIG1pcjogT2ggaGFiIGljaCBkZWluZW4gUmVjaG5lciBhdXNnZW1hY2h0Pz8KSWNoOiBKdXBwLgpEaWUgRnJhdTogSWNoIGhvZmZlIGRhIHdhciBuaWNodHMgd2ljaHRpZ2VzLgpJY2g6IE5vZSB3YXIgbmljaHQgZGVyIFJlZGUgd2VydC4KU2llIDogTmFkYW5uLgpTaWUgZ2VodC4KCkdvcm9nIGZpbmRldCBkYXMgbGFuZ3NhbSBuaWNodCBtZWhyIGtvbWlzY2ggKDMqKSB3ZWlsIGRpZXNhbWwgc3RhbmQgZXIgaW4KUGFyYURyYWtvbmllbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDaXAtUG9vbC1CZWthbm50c2NoYWZ0ZW4gKEtleSwgMjcuIEphbiAxOTk5LCAxNTowMjo0Nik6Cn4jISBybj1Hb3JvZyBydD05MTc0NDUyMzYgcmc9c2NobWFycm4KfiMhIHRpZD05MTc0NDUyMzYKU293YXMga2FubiBudXIgTXVkZGVybiBwYXNzaWVyZW4gOikKClNpZWhzIGRvY2htYWwgc28sIGRpZSBGcmF1IGtvbW0gaW4gZGVuIFBvb2wsIHNpZWh0IGVpbmVuIGJlemF1YmVybmRlbiBNYW5uLAp1bmQgd2lsbCBpaG4gbmF0dWVybGljaCBnbGVpY2ggYW5tYWNoZW4uClRqYSBkZXIgRGVwcCBoYWVuZ3QgYWJlciB3aWVuIFN1Y2h0aWUgYW0gTW9uaXRvciwgYWxzbyBzY2hhbHRldCBzaWUgZGFzIERpbmcKYXVzIHVtIEF1Zm1lcmtzYW1rZWl0IHp1IGVycmVnZW4uClRqYSBEZWluIEZlaGxlciB3YXIgamV0enQgZGFzIER1IG5pY2h0IHNvZm9ydCBlcnN0YXVudCB6dSBpaHIgYXVmZ2VzZWhlbiBoYXN0LApkYXMga2VpbiBTdHJhbmQgZXJzY2hpZW4gYXVmIGRlbSBpaHIgYmVpZGVuIGt1c2NoZWxuIGtvbm50ZXQgdXN3IC4uLgpUeXBpc2NoIEZyYXUgaGFsdCAsKQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGEuIChMZW5hLCAyNy4gSmFuIDE5OTksIDE3OjQ3OjU2KToKRHUgaWRlbnRpZml6aWVyc3QgbmljaHRzLgpOaWNodHMgYmVzdGVodCBhdXMgdmVyc2NoaWVkZW5lbSBNYXRlcmlhbC4KQW5zb25zdGVuIGthbm5zdCBEdSBuaWNodHMgYmVzb25kZXJlcyBhbiBpaG0gZXJrZW5uZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmdzdCB2b3JtIEVjaG8/IChBenp1cm8sIDI3LiBKYW4gMTk5OSwgMTk6NDM6NDkpOgo+ICogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBCb2luZyBpbiBSdWJyaWsgInBvbGl6ZWkuYmVzY2h3ZXJkZW4iLgooQm9pbmcpICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmV0emVuIHVuZCBGdW1tZWwgOikgKENpc291LCAyNy4gSmFuIDE5OTksIDIwOjI5OjU2KToKR3JhZGUgdm9yIGRlbSBEdWVzdGVyd2FsZDoKTmltbSBIYXV0ZmV0emVuIGF1cyBMZWljaGUKRHUgbmltbXN0IGRlbiBIYXV0ZmV0emVuCnppZWggZmV0emVuIGFuCkR1IHppZWhzdCBkZW4gZW5nZW4gQm9keSBhbi4KCk5hamEsIHppZWggaWNoIGRlbiBoYWx0IGF1Y2ggbm9jaCBkcnVudGVyIDotKQoKQ2lzb3UgKGxhY2h0IHVlYmVyIFVudG90ZSBHZXNjaG1hZWNrZXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKExldiwgMjcuIEphbiAxOTk5LCAyMzo1MTozMyk6CgpEZWluZSBGcmV1bmRpbiBTaGFubmFyYSB0ZWlsdCBEaXIgbWl0OiB3YWggd2llIGthbm4gaWNoIG1pcnJvciBiZWkgZGVuCkRlaW5lIEZyZXVuZGluIFNoYW5uYXJhIHRlaWx0IERpciBtaXQ6IGthbm5pYmFsZW4gbG9zc2NobmVpZGVuPyBzY2huZWxsIQpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBNaXJyb3IgdW1nZWJyYWNodC4KRGVpbmUgRnJldW5kaW4gU2hhbm5hcmEgdGVpbHQgRGlyIG1pdDogenUgc3BhZXQgOigKCm9obmUgd29ydGUsIGxldi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiBXQVM/IChUcmFuY2VmZWFyLCAyOC4gSmFuIDE5OTksIDAwOjAzOjMwKToKW1RvZDpMYXJzXSBFaW4gQEB0ZXh0QEAgVHJhbmsgaGF0IGdlcmFkZSBEZXJ0cyB1bWdlYnJhY2h0LgoKRGFzIG11ZXNzZW4gd2lyIGFiZXIgbm9jaCB1ZWJlbiwgQXJrIDotKQoKdGYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoVHJhbmNlZmVhciwgMjguIEphbiAxOTk5LCAwMDoyMTozMik6CkplbmFuZHJhIHNhZ3Q6IGFiZXIgZGVuIGdvYmxpbiBrb2VubnQgaWNoIG1hbCB3aWVkZXIgcHJvYmllcmVuIDotKSkKW0FsbGdlbWVpbjpXb29dIG5hY2h0IGlocnMgISEhCkplbmFuZHJhIHdpbmt0LgpKZW5hbmRyYSB3YW5kZWx0IG5hY2ggTm9yZGVuLgpUaW0gd2FuZGVsdCBoZXJlaW4uCltUb2Q6TGFyc10gRWluIEdvYmxpbiBoYXQgZ2VyYWRlIEplbmFuZHJhIHVtZ2VicmFjaHQuCltUb2Q6RWluIEdvYmxpbl0gQnJhdWNodCBub2NoIGplbWFuZCBlaW4gTGFuZ3NjaHdlcnQ/Cgp0ZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1ZXN0ZSBOYWNocmljaHQgKFdvb2R5LCAyOC4gSmFuIDE5OTksIDA0OjM2OjA2KToKTWF4LCBkZXIgZnJldW5kbGljaGUgUG9zdGJvdGUsIGtvbW10IGhlcmVpbmdlcmFubnQgdW5kIGJhdXQgc2VpbmVuIHBvcnRhYmxlbgpGZXJuc2NocmVpYmVyIGF1Zi4gRGVyIEZlcm5zY2hyZWliZXIgYmVnaW5udCB6dSByYXR0ZXJuIHVuZCBEdSBsaWVzdDoKLS0tLSBOYWNocmljaHQgdm9uIEtudXJ0IC0tLS0KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEtudXJ0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCBsaWVlZWJlICd1ZWJlcmdlaGUgdGhyZWFkJyAoTW9yZ290aCwgMjguIEphbiAxOTk5LCAwOTowNTozMik6CkRpZXNlciBUaHJlYWQgd2lyZCBhYiBzb2ZvcnQgdWViZXJnYW5nZW4uCkZhbGxzIGRhcyBlaW4gSXJydHVtIHdhciwgd2llZGVyaG9sZSBkZW4gQmVmZWhsIGF1Z2VuYmxpY2tsaWNoLgpVZWJlcmdlaGUgQXJ0aWtlbCA0NyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA0OCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA0OSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA1MSB2b24gQWNyaW1vbiBpbiBSdWJyaWsgcG9saXplaS5iZXNjaHdlcmRlbi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNTIgdm9uIEFjcmltb24gaW4gUnVicmlrIHBvbGl6ZWkuYmVzY2h3ZXJkZW4uClVlYmVyZ2VoZSBBcnRpa2VsIDUzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2Vrc2UgKExlaWJuaXosIDI4LiBKYW4gMTk5OSwgMTE6MzQ6NDkpOgogW1pUOkhlbGxmbGVja10gd2llIGtvbW1lIGljaCB6dW0ga3J1ZW1tZWxtb25zdGVyPz8/CktydWVtZWxtb25zdGVyIGtyYWVjaHp0OiAuLi4gS2Vrc2UhISEhIC4uLiBrcnJyb29hYWEhCiBbWlQ6TGVpYm5pel0ga2Vrc2UhISEhIQogW1pUOlR1Tml4R3V0IGxhY2h0Li4uXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2gsIG9oIDopIChKYXNvbnJpZ2lkLCAyOC4gSmFuIDE5OTksIDEyOjQxOjQ3KToKTmVzYWphIHJ1ZnQ6IEtFWSEKW1RvZDpMYXJzXSBFaW4gR29ibGluIGhhdCBnZXJhZGUgR2FzdDMgdW1nZWJyYWNodC4KCkFsbGVpbiBkZXIgTmFtZSBzY2hlaW50IHNjaG9uIFRvZCBhdWYgZGVuIFBsYW4genUgcnVmZW4uCgpKYXNvbiwgc2FndCBkaWVzZW4gTmFtZW4gYmVzdGltbXQgTklFIHdpZWRlciA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbiBXQVM/IChBcmssIDI4LiBKYW4gMTk5OSwgMjA6MTM6MDEpOgp+IyEgcm49VHJhbmNlZmVhciBydD05MTc0ODE4MTAgcmc9c2NobWFycm4KfiMhIHRpZD05MTc0ODE4MTAKSXJnZW5kd2llIHdhciBtaXIga2xhciwgZGFzcyBzb3dhcyBoaWVyIGxhbmRldCAqZyogTG9naXNjaCwgd2VubiBtYW4gaGVrdGlzY2gKd2FzIGt1cnogdm9yIDI0LjAwIFVociBtYWNodCB1bmQgZXMga2xhcHB0IG5pY2h0LCB3ZWlsIG1hbiBhbHRlIFZlcnNpb25lbiB2b24Kc29sY2hlbiBTYWNoZW4gYXVzcHJvYmllcnQsIGdycnIuIE5hamEsIGljaCBzZWhlLCBlcyBoYXQgd2VuaWdzdGVucyB6dXIKYWxsZ2VtZWluZW4gQmVsdXN0aWd1bmcgYmVpZ2V0cmFnZW4gOi0pIE1hbCBndWNrZW4sIG9iIG5vY2ggYWxsZSBsYWNoZW4sIHdlbm4Kc2llIHNpY2ggc2VsYnN0IGFuc3RlbGxlIG1laW5lcyBEdWxsaWVzIHNlaGVuIDopIFNvLCBnbGVpY2ggbm9jaG1hbCB0ZXN0ZW4gLi4uCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xlcmlrZXIsIGltbWVyIGxpZWIgdW5kIGJyYXYuIChUYW1pLCAyOC4gSmFuIDE5OTksIDIzOjA5OjA5KToKCkdvcm9nIHNwcmluZ3QgYXVmIGVpbm1hbCBHb3JvZ3MgU2NodXR6ZW5nZWwgYW4gdW5kIHd1ZXJndCBpaG4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2xlcmlrZXIsIGltbWVyIGxpZWIgdW5kIGJyYXYuIChHb3JvZywgMjguIEphbiAxOTk5LCAyMzowOTo0OSk6Cn4jISBybj1UYW1pIHJ0PTkxNzU2NDk0OSByZz1zY2htYXJybgp+IyEgdGlkPTkxNzU2NDk0OQpIZXkgZGVyIHdvbGx0ZSBtZWluZW4gS3JhbSBuY2lodCB3aWVkZXIgcmF1cyBydWVja2VuICg7CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE1vcmdvdGgsIDI5LiBKYW4gMTk5OSwgMDA6MzA6NTcpOgpGb29iYXIgcnVmdDogU2NoKnNzLVN1bXBmCltUb2Q6TGFyc10gRWluZSBTdW1wZmtyb2V0ZSBoYXQgZ2VyYWRlIEZvb2JhciB1bWdlYnJhY2h0LgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhlaGUgKEthcmljLCAyOS4gSmFuIDE5OTksIDAxOjA2OjEzKToKTmV2b2sgc2FndDogYXJnbApOZXZvayBzYWd0OiBGTEFOREVSUwpEdSBncmluc3QuCkR1IGZ1ZWhsc3QgRGljaCBiZW5vbW1lbi4KCjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGYXVsZSBNYWdpZXI/Pz8gKE1vcmdvdGgsIDI5LiBKYW4gMTk5OSwgMTE6MjM6MjEpOgpbTWFnaWVyOlJpa3VzXSBhcmdsCltNYWdpZXI6TW9yZ290aF0gPwpbTWFnaWVyOkNhdHdlYXpsZV0gYXJnbD8KW01hZ2llcjpSaWt1c10gbml4IHdlaXRlciwgbWVpbiBoaXdpIGlzdCBub2NoIG5pY3RoIGRhCltNYWdpZXI6UmlrdXMgaGF0IGV4dHJhIG1hc3NlbiBhcmJlaXQgZnVlciBpaG4gZ2VzdWNodF0KCk1vcmdvdGggZmFlbGx0IGZhc3Qgdm9tIFN0dWhsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmF1bGUgTWFnaWVyPz8/IChSaWt1cywgMjkuIEphbiAxOTk5LCAxMTozOTowNik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkxNzYwOTAwMSByZz1zY2htYXJybgp+IyEgdGlkPTkxNzYwOTAwMQpuaXggZmF1bGUgTWFnaWVyLCBlciB3aWxsIGRvY2ggaGllciBiZWkgbWlyIHNlaW4gRGlwbG9tIG1hY2hlbiA6KQoKUmlrdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbGNoZSBDaGVmcyBzcGllbGVuIGFsbGUgaW0gTXVkPyAoUm9uZGEsIDI5LiBKYW4gMTk5OSwgMTM6Mzk6NTgpOgpOZWIgc2FndDogYXJnbCwgbXVzcyBtYWwgd2VnIApOZWIgc2FndDogY2hlZiB3YXIgYW0gdGVsZWZvbgpOZWIgZ3J1bW1lbHQuCltBbGxnZW1laW46VHJhbmNlZmVhcl0gZXJzbWEgd2VjaApEZWluIEZyZXVuZCBOZWIgdGVpbHQgRGlyIG1pdDogYXJiZWl0ZW4sIGdybXBmLCB1bmQgd2VnCkRlaW4gRnJldW5kIE5lYiB3aW5rdCBEaXIgenUuCk5lYiBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgTmViLgpOZWIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCk5lYiBnZWh0IGltIEF1ZnRyYWcgZGVzIExlbWJvbGQgYXVjaCBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KVGphLi4uIHNlaW4gQ2hlZiBoZWlzc3QgYWxzbyBMZW1ib2xkLi4uIHdhcnVtIGlzc24gZGVyIGdlYmFuaXNoZWQ/IFVuZCB3YXMgaGF0CmRlbm4gbnVuIFRyYW5jZWZlYXIgZGFtaXQgenUgdHVuPz8/CgoqZ3JpbnMqIFJvbmRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMTHkgaGF0IHdvaGwgYWxsZXMgYmVpbmhhcnQgaW0gR3JpZmYgOykgKEtvb21pLCAyOS4gSmFuIDE5OTksIDE0OjAyOjE1KToKR2VyYWRlIGluIGRlciBaYXViZXJlcmdpbGRlOgoKUmFuZGFyIFRvYmlzIHNhZ3Q6IEljaCBnbGF1YmUsIGVzIHdpcmQgbGFuZ3NhbSBaZWl0IGZ1ZXIgZWluZSBUZWVwYXVzZS4KUmFuZGFyIFRvYmlzIHZlcnN1Y2h0IG5hY2ggTm9yZGVuIHp1IGdlaGVuLgpMbHlzdHJhdGhlIHJ1ZnQ6IFJhbmRhciwgRHUgYmxlaWJzdCBISUVSLCBEdSBtdXNzdCBhcmJlaXRlbi4KUmFuZGFyIFRvYmlzIHNldHp0IHNpY2ggd2llZGVyLgpSYW5kYXIgVG9iaXMgc2V1Znp0IGVyZ2ViZW4uICAgCkhhbGJlbGYgS29vbWkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFyZ2guIERhcyB3b2xsdGUgaWNoIG5pY2h0ISAoTGVuYSwgMjkuIEphbiAxOTk5LCAxNzoyMzozMSk6CkR1IHdpcmZzdCBkaWUgQW5nZWwgYXVzLgo+IER1IGhvZXJzdCBkZW4gTWFzdCBrbmFja2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChKYW1lc29uLCAyOS4gSmFuIDE5OTksIDE4OjQyOjA5KToKRGVpbiBGcmV1bmQgU3JhYmkgdGVpbHQgRGlyIG1pdDogbWF0cml4a3Jpc3RhbGwgenUgdmVyc2NoZW5rZW4KLi4uCltUb2Q6TGFyc10gRWluIFVuc2FjaGdlbWFlc3NlciBNYXRyaXhnZWJyYXVjaCBoYXQgZ2VyYWRlIEdpemkgdW1nZWJyYWNodC4KCnRzdHMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBmdWVyIGVpbiBTY2hyZWNrISAoQWNyaW1vbiwgMjkuIEphbiAxOTk5LCAxOTo1OTo1OSk6ClRyYXVtYSBzYWd0OiBCVUghLgpUcmF1bWEgZXhwbG9kaWVydC4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KVHJhdW1hIHNjaGxhZWd0IGF1Zi4KVHJhdW1hIHppc2NodCBuYWNoIFN1ZWRvc3Rlbi4KCkFjcmltb24geml0dGVydCBpbW1lciBub2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmEgc293YXMgLi4uIChad29ja2xodWJlciwgMjkuIEphbiAxOTk5LCAyMDozOTo1Mik6Cj5zY2hhdQpEdSBiZWZpbmRlc3QgRGljaCBpbiBlaW5lbSBSYXVtIHVlYmVyIGRlciBLbmVpcGUgYXVmIFNoYWt5IElzbGFuZC4gRXIKbWFjaHQgZWluZW4gZWlubGFkZW5kZW4gRWluZHJ1Y2suIEFuIGRlbSBXYXBwZW4gYW4gZGVyIE5vcmR3YW5kIGVya2VubnN0CkR1LCBkYXNzIGRhcyBoaWVyIHdvaGwgZGllIEJpZXJzY2h1ZXR0bGVyZ2lsZGUgc2VpbiBtdXNzLiBIaWVyIHRyZWZmZW4gc2ljaAphbGxlIFNoYWtpZXMgdW5kIGJlcmF0ZW4gdWViZXIgQWJlbnRldWVyIHVuZCBkaWUgQnJhdWt1bnN0LiBBbiBkZXIgV2VzdHdhbmQKaGFlbmd0IGVpbmUgVGFmZWwgYXVzIGR1bmtsZW0sIGVkbGVuIEhvbHouIERhbmViZW4gaGFlbmd0IGVpbiBaZXR0ZWwuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB1bnRlbi4KQnJ1bm8gZGVyIEdpbGRlbnNoYWt5LgpFaW5lIFplaXR1bmcuCkVpbiBIYW5kYnVjaCBmdWVyIEFuZmFlbmdlci4KPnRyaXR0IGdpbGRlIGJlaQpCcnVubyBzYWd0OiBXaWxsa29tbWVuIGJlaSBkZW4gQmllcnNjaHVldHRsZXJuLgpSZWFwZXIgd2VocnQgInRyZXRlIiBhYi4KTmViIHdlaHJ0ICJ0cmV0ZSIgYWIuCkthcm9sIHdlaHJ0ICJ0cmV0ZSIgYWIuCk1haGF0bXUgd2VocnQgInRyZXRlIiBhYi4KCnNpY2ggZ3JpbnNlbmQgYW0gS29wZiBrcmF0emVuZAoKWndvY2tsaHViZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmV0d2FzIDopIChKYXNvbnJpZ2lkLCAzMC4gSmFuIDE5OTksIDEzOjQzOjQyKToKRXR3YXMgZXJzY2hlaW50IGluIGVpbmVyIFJhdWNod29sa2UuCkR1IHNhZ3N0OiB2ZXJzY2h3aW5kZSwgZXR3YXMsIGljaCBiaW4ga2VpbiBnZWxkLXp3ZWl0aWUgOikKRXR3YXMgdmVyc2Nod2luZGV0IG1pdCBLbmFsbCB1bmQgU2Nod2VmZWxkdWZ0LgoKSmFzb24gZ3JpbnN0LiBEYXMgd2FyIHByb21wdGUgYmVkaWVudW5nIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgOiggKEppZGR1LCAzMC4gSmFuIDE5OTksIDIxOjUzOjUwKToKW1NlaGVyOkJpZ2FzXSBBcmdsIC0gd2llIHdpcmQgbWFuIGRlbm4gZGllc2VuIGF2YWxvbmlzY2hlbiBCbHV0ZWdlbCBsb3MgOigKRHUgdGVpbHN0IEJpZ2FzIG1pdDoga2lsbHQgZGVyIGRpY2g/IQpCaWdhcyB0ZWlsdCBEaXIgbWl0OiBJc3QgZ2VyYWRlIGZsZWlzc2lnIGRhYmVpIDooCgpUaWVmZSBUcmF1ZXIgdW5kIFNjaG1lcnogdWViZXJrb21tdCBEaWNoLgpCaWdhcyBzY2hlaW50IGdlc3RvcmJlbiB6dSBzZWluLgoKW1RvZDpMYXJzXSBCbHV0dmVybHVzdCBoYXQgZ2VyYWRlIEJpZ2FzIHVtZ2VicmFjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG1tbW1tIHdpZSBzb2xsIGljaCBkYXMgZGVubiBpbnRlcnByZXRpZXJlbj8gIChUcnVnLCAzMS4gSmFuIDE5OTksIDAwOjAxOjAxKToKU2lndXJhIHNwcmluZ3QgYXVzIGRlbSBEaWNraWNodC4KU2lndXJhIHNpbmd0OiAiQ29tZSB3aXRoIG1lIC0gaW50byB0aGUgVHJlZXMiIHVuZCBsb2NrdCBEaWNoIGF1ZiBkaWUgVG9pbGV0dGUuCgpUcnVnLiBraWNoZXJ0IGltbWVyIG5vY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpwaWV0YWV0bG9zLCBpcmdlbmR3aWUgLi4uIChUcmFuY2UsIDMxLiBKYW4gMTk5OSwgMDI6NTE6MTUpOgpbVG9kOkxhcnNdIEVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsIGhhdCBnZXJhZGUgRGV2aWxjaGVuIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWxdIFBmZmZmZmZmZmZmZnQuLi4uLi4uUExVTVBTIQpEZXIgU2NocmF0IGdhZWhudCBoZXJ6aGFmdC4KClRyYW5jZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChEaWVkZXIsIDMxLiBKYW4gMTk5OSwgMTc6NDU6MTgpOgpbVHJ2ZXM6R2l6aV0ga2FubiBtYW4gd2FlaHJlbmQgZGVuIGthZW1wZmVuIGF1Y2ggdGFua2VuIGdlaGVuID8KW1RydmVzOlRlcmltXSB6d2lzY2hlbmRyaW4gamEKW1RydmVzOkdpemldIGRhbmtlLi4uIDopCltUb2Q6TGFyc10gSGVsZ2EgaGF0IGdlcmFkZSBHaXppIHVtZ2VicmFjaHQuCgpobSwgenUgc3BhZXQgZ2V0YW5rdC4uLiBvZGVyIHp1IHdlbmlnIDotKQpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyBkaWUgMi4gKERpZWRlciwgMzEuIEphbiAxOTk5LCAxOTowMjoxNSk6CltUcnZlczpHaXppXSB3b3cgbnVyIG5vY2ggNSBscHMgOygKW1RydmVzOkxldl0gYWguLi4gZGEgaXN0IGphIG5vY2ggcGxhdHouLi4gOj0KRGVpbiBGcmV1bmQgTGV2IHRlaWx0IERpciBtaXQ6ICpncmlucyoKW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgR2l6aSB1bWdlYnJhY2h0LgoKRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLaW5kZXJtdW5kIEkuIChLYXJ0b2ZmZWwsIDMxLiBKYW4gMTk5OSwgMjE6MTg6MTEpOgpJbW1lciB3aWVkZXIgc2Nob2VuLCB3ZW5uIG1hbiBkYXMgRWx0ZXJuaGF1cyByYXVzaG9lcnQ6Cgpad2VpIEtpbmRlciBpbiBkZXIgUHVwcGVuZWNrZSBpbSBLaW5kZXJnYXJ0ZW4sIHNpZSAoNiBKYWhyZSwgRGV1dHNjaGUpLCBlcgooZWJlbmZhbGxzIDYgSmFocmUsIFR1ZXJrZSkKClNpZTogSWNoIGdlaCBqZXR6dCBlaW5rYXVmZW4sIER1IGthbm5zdCBqYSBzY2hvbiBtYWwga29jaGVuLgpFcjogKHZvZWxsaWcgdW5nZXJ1ZWhydCkgSWNoIGtvY2ggbmljaCwgaWNoIGJpbiBrZWluIE1hZWRjaGVuLgpTaWU6ICh6ZXRlcnQpIER1IGthbm5zdCBhdWNoIG1hbCB3YXMgbWFjaGVuLCBkYSBzaWVoc3QgRHUgbWFsIHdhcyBpY2ggaW1tZXIKZnVlciBlaW5lIEFyYmVpdCBoYWJlLiBJbW1lciBtdXNzIGljaCBtaWNoIHNvIG1pdCBEaXIgcGxhZ2VuISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktpbmRlcm11bmQgSUkuIChLYXJ0b2ZmZWwsIDMxLiBKYW4gMTk5OSwgMjE6MTk6MzMpOgoKTWFlZGNoZW4gKDUgSmFocmUpOiBHZXN0ZXJuIGFiZW5kIGhhYmVuIG1laW5lIEVMdGVybiBnZWthZW1wZnQsIG1laW5lIE1hbWEgaGF0Cmdld29ubmVuLCBkaWUgd2FyIG9iZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2luZGVybXVuZCBJSUkuIChLYXJ0b2ZmZWwsIDMxLiBKYW4gMTk5OSwgMjE6MjE6NTApOgoKRGllIEVyemllaGVyaW4gYmxhZXR0ZXJ0IGVpbmUgVmVyc2FuZGthdGFsb2cgZHVyY2gsIGJldHJhY2h0ZXQgZ2VyYWRlIGRpZQpTZWl0ZW4gbWl0IGJlc29uZGVycyAiaGVpc3NlbiIgRGVzc291cy4KRWluIE1hZWRjaGVuICg1IEphaHJlKSBzY2hhdXQgaWhyIHVlYmVyIGRpZSBTY2h1bHRlciwgemVpZ3QgYXVmIGVpbiByb3RlcwpOaWNodHMgdW5kIHJ1ZnQ6IERhcyBoYXQgbWVpbiBQYXBhIG1laW5lciBNYW1hIGdlc2NoZW5rdCEhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NocmVpYmVuIChHcmltbWJvcm4sIDMxLiBKYW4gMTk5OSwgMjM6MDI6MDkpOgp+IyEgb249UHVrIG90PTkxNzc5MDczNSBvZz1hbGxnZW1laW5lcwpBbHNvLCBlaW4gc3BvbnRhbmVyIGF1ZnJ1ZiB3YXMgaW4gZGllIE1QQSB6dSBzY2hyZWliZW4uCldhcyBzb2xsIG1hbiBkZW4gc29uc3QgbWFjaGVuIHdlbm4gZWluZW0gbGFuZ3dlaWxpZyBpc3QgYXVzc2VyIE1QQSB6dSBsZXNlbiA/CkFsc28gYml0dGUgc3RyZW5ndCBldWNoIG1hbCBhbiA6KSkKClB1ayAoIGphamEsIHNjaG1laXNzdCBlcyBuYWNoIHNjaG1hcnJuIDooLi4uLi4uLiApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFYmVuIGltIEVsZmVubGFkZW4gLi4uIChMaWFyYSwgIDEuIEZlYiAxOTk5LCAwMDo0MzoyNik6CkFsbGdlbWVpbjpMaWFyYSBrdXNjaGVsdCBzaWNoIGFuIEFuYXRvbCBhbi4KW0FsbGdlbWVpbjpXaW1dIFdhbm4gaXN0IGRpZSBIb2NoemVpdD8KW0FsbGdlbWVpbjpEZWJ1Z2dlcl0gaWNoIHNlaCBncmFkIGJlaWRlIG5pY2h0IHZlcmhlaXJhdGV0LiBoYW13ZXIgbWFsIG5lbgpbQWxsZ2VtZWluOkRlYnVnZ2VyXSBrbGVyaWtlciB6dXIgaGFuZD8KRGVyIEtyYWVtZXIgc2FndDogQWxsZXMgaXN0IGVpbmUgRnJhZ2UgZGVzIFByZWlzZXMuCltBbGxnZW1laW46QW5hdG9sXSBBVVMhIDopCgpMaWFyYSwgZ3JpbnN0IGRlbiBLcmFlbWVyIGFuIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEViZW4gaW0gRWxmZW5sYWRlbiAuLi4gKExpYXJhLCAgMS4gRmViIDE5OTksIDAxOjA1OjA1KToKfiMhIHJuPUxpYXJhIHJ0PTkxNzgyOTgwNiByZz1zY2htYXJybgp+IyEgdGlkPTkxNzgyOTgwNgpFaW5lIE1pbnV0ZSBzcGFldGVyIC4uLgoKRGVyIEthdWZtYW5uIHNhZ3Q6IEVzIGlzdCBuaWNodCBudXIgZGVyIFByZWlzIC0gQWNodGVuIFNpZSBhdWYgZGllIEd1ZXRlLgoKTGlhcmEsIHZvZWxsaWcgdmVyd2lycnQgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbmZsYXRpb24gLi4uIChMaWFyYSwgIDEuIEZlYiAxOTk5LCAxMTo1OTozMyk6CkViZW4gaW0gRWxmZW5sYWRlbjoKCiAgNC4gRWluIFN0dWVjayBLcmVpZGUgICAgICAgICAgICAgNjAgCjUuIEVpbiBCZXV0ZWwgbWl0IFNhbmQgICAgICAgIDEwMjAwCiAgOC4gRWluIEJldXRlbCAoZ2VvZWZmbmV0KSAgICAgICAgOTAgCjkuIEdlc2NoZW5rcGFwaWVyICAgICAgICAgICAgICAgIDE1CiAxNi4gRWluIEZsYWVzY2hjaGVuIG1pdCBEcmFjaCAgICA5MDAgCjIwLiAxMSBGbGFlc2NoY2hlbiBtaXQgcmVpbmVtICAgIDgyNQogMjEuIDExIFBlbmRlbCAgICAgICAgICAgICAgICAgICAgNjYwIAoyMi4gMTEgTmFjaHRpZ2FsbGVuenVuZ2VuICAgICAgIDY5MzAKIDIzLiAxMSBHbGFzbXVybWVsbiAgICAgICAgICAgICAgICA5OSAKMjQuIDQ3MTk5IE11ZW56ZW4gICAgICAgICAgICAgMTQxNTk3CiAyNS4gRWluZSBGYWNrZWwgICAgICAgICAgICAgICAgICAgMTUgCjI2LiBFaW5lIFNjaGF1ZmVsICAgICAgICAgICAgICAgIDE1MAogMjcuIEVpbiBNYWV4Y2hlbnNwaWVsICAgICAgICAgICAxMjAwIAoyOC4gRWluZSBsZWVyZSBHZWxkYm9lcnNlICAgICAgICAyNDAKCgpNYW4gYmVhY2h0ZSBQb3N0ZW4gMjQuCgpMaWFyYSwgaGV1bHQgZGVtIEluaGFsdCBpaHJlciBCb2Vyc2UgaGludGVyaGVyIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gbWFnIGljaCBkYXMgOikgKFphcGhvYiwgIDEuIEZlYiAxOTk5LCAxMjowMDoyMik6CiAgRHUgdHJpZmZzdCBkZW4gYnJhdW5lbiBTa29ycGlvbiBoYXJ0LgpEZXIgYnJhdW5lIFNrb3JwaW9uIGZhZWxsdCB0b3QgenUgQm9kZW4uCkVpbiBicmF1bmVyIFNrb3JwaW9uIGtvbW10IGFuLiAgCgpaYXBob2IsIG1hZyBkZW4gcmVzZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnppZW1saWNoIHZvcnJhdXNzY2hhdWVuZCAoUHVrLCAgMS4gRmViIDE5OTksIDEyOjMyOjQ2KToKIERlaW4gRnJldW5kIERpcmlvbiB0ZWlsdCBEaXIgbWl0OiBzbywgYWJlciBqZXR6Li4KIFtUb2Q6TGFyc10gRWluIEFib2xldGggaGF0IGdlcmFkZSBEaXJpb24gdW1nZWJyYWNodC4KCgpQdWsgKGJlaWxlaWQgYWJlciB0cm90emRlbSA6KSkpKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhdCBOYWlyb2xmIGRvY2ggd2llZGVyIGVpbmUobikgTWFnaWVyKGluKT8/IChNb3Jnb3RoLCAgMS4gRmViIDE5OTksIDEzOjE4OjEwKToKRGVpbmUgRnJldW5kaW4gQ2FsaW1lcmEgdGVpbHQgRGlyIG1pdDogc28gbWVpbmUgbGllYmVuIC4uIHZvbiBkZXIKRGVpbmUgRnJldW5kaW4gQ2FsaW1lcmEgdGVpbHQgRGlyIG1pdDogbWl0dGFjaHNwYXVzZSBnZWh0cyBqZXR6dCB1ZWJlcmdhbmdzbG9zCkRlaW5lIEZyZXVuZGluIENhbGltZXJhIHRlaWx0IERpciBtaXQ6IGluIGRpZSBLYWZmZWVwYXVzZQpEZWluZSBGcmV1bmRpbiBDYWxpbWVyYSB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4KRGVpbmUgRnJldW5kaW4gQ2FsaW1lcmEgdGVpbHQgRGlyIG1pdDogYmlzIGRhbm4KQ2FsaW1lcmEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCk5haXJvbGYgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbiBGcmV1bmQgTmFpcm9sZiBrbnVkZGVsdCBEaWNoIG1pdCBlaW5lbSBrYWVzaWdlbiBHcmluc2VuIGF1cyBkZXIgRmVybmUuClNoYXJpYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEZWluZSBGcmV1bmRpbiBTaGFyaWEga251ZGRlbHQgRGljaCBtaXQgZWluZW0gaGVpbGlnZW4gR3JpbnNlbiBhdXMgZGVyIEZlcm5lLgpEZWluZSBGcmV1bmRpbiBTaGFyaWEgdGVpbHQgRGlyIG1pdDogaHUKCk0qLCBncnVlYmVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJbmZsYXRpb24gLi4uIChNZW5hY2UsICAxLiBGZWIgMTk5OSwgMTM6MTk6NTIpOgp+IyEgcm49TGlhcmEgcnQ9OTE3ODcwMzczIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE3ODcwMzczCndlciB2ZXJrYXVmdCBhdWNoICdhbGxlcyBhdXMgYm9lcnNlJz8KCk1lbmFjZSBkb2NoIHNlaHIgdmVyd3VuZGVydCwgd2FzIER1IGVpbmdlZ2ViZW4gaGFzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2huZSB3b3J0ZSA6KSAoSmFzb25yaWdpZCwgIDEuIEZlYiAxOTk5LCAxNToxNzozOCk6CltBYmVudGV1ZXI6VGFrZXJdIHdvIHdpcmQgZGVubiByb2dnZW4gYW5nZWJhdXQ/IChjaGlsYW5hKQpbQWJlbnRldWVyOkFsaW5lXSBDb3JvbmVydGFsCltBYmVudGV1ZXI6QWxpbmVdIFZvciBUYXJhbWlzCltBYmVudGV1ZXI6VGFrZXJdICpncnVtbWVsKiBkYSBrb21tIGljaCBncmFkIGhlci4uLgpbQWJlbnRldWVyOkhyZWlkbWFyXSBwcmltYSwgZGFubiBrZW5uc3QgZHUgamEgZGVuIFdlZyBzY2hvbiA7KQpbQWJlbnRldWVyOkFsaW5lXSBOYSBwcmltYSwgZGFubiBrZW5uc3RlIGphIGRlbiB3ZWcKW0FiZW50ZXVlcjpUYWtlciB0cml0dCBIcmVpZG1hcl0KW0FiZW50ZXVlcjpBbGluZSBncmluc3QgSHJlaWRtYXIgYW5dCltBYmVudGV1ZXI6VGFrZXIgdHJpdHQgQWxpbmUuXQpbQWJlbnRldWVyOkhyZWlkbWFyIGdyaW5zdCBBbGluZSBhbi5dCgpKYXNvbiBncmluc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlaHQgZG9jaCAuLi4gKEJ1enpjdXQsICAxLiBGZWIgMTk5OSwgMTU6Mjk6MzYpOgpEdSBiaXN0IGluIGVpbmVyIHNlaHIgZ3Jvc3NlbiBIb2VobGUsIGRlcmVuIFdhZW5kZSB1ZWJlciB1bmQgdWViZXIgbWl0CktyaXN0YWxsZW4gYmVkZWNrdCBpc3QuIEVpbmUgbmljaHQgYXVzenVtYWNoZW5kZSBMaWNodHF1ZWxsZSBicmluZ3QgZGVuCmdlc2FtdGVuIFJhdW0genVtIEZ1bmtlbG4gdW5kIEdsaXR6ZXJuLCBkYXMgTGljaHQgd2lyZCB1ZWJlcmFsbCByZWZsZWstCnRpZXJ0IHVuZCBicmljaHQgc2ljaCBpbiBhbGxlbiBGYXJiZW4uIEVzIGlzdCB3aXJrbGljaCBrZWluIFd1bmRlciwKZGFzcyBzaWNoIGhpZXIgZWluIEtyaXN0YWxsZHJhY2hlIG5pZWRlcmdlbGFzc2VuIGhhdC4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRlbi4KVGFrYWwnTW9yIFdhcmsuCltaYXViZXJlcjpKZWhvdmFdIHNpZWhzdGUsIGRhIGhhc3QgZHUgd2FzIHp1IHR1biA6KQpCdXp6Y3V0IHd1ZW5zY2h0IHNpY2ggZWluZW4gS3Jpc3RhbGxkcmFjaGVuLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBXYWVjaHRlcnNdIEljaCBoYWIga2VpbmUgQW5nc3Qgdm9yIGRpciwgUHlyZGFjb3IhCltaYXViZXJlcjpBbGluZV0gTWl0IGRlbSBrbGVpbmVuIFNjaG9lbmhlaXRzZmVobGVyLCBkYXNzIFRhcmFtaXMgbmljaHQKW1phdWJlcmVyOkFsaW5lXSBhbmdlc2NobG9zc2VuIGlzdCA6KApCdXp6Y3V0IGdlaHQgaW4gZGllIEtuaWUgdW5kIGZhbHRldCBkaWUgSGFlbmRlLgpFaW4gS3Jpc3RhbGxkcmFjaGUga29tbXQgYW4uCgoqZ3JpbnMqIEJ1enppLCBiZXRlbmQgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEluZmxhdGlvbiAuLi4gKFdvb2R5LCAgMS4gRmViIDE5OTksIDE1OjUyOjI0KToKfiMhIHJuPU1lbmFjZSBydD05MTc4NzUxOTIgcmc9c2NobWFycm4KfiMhIHRpZD05MTc4NzAzNzMKR2VsZCBrYW5uIG1hbiBuaWNodCB2ZXJrYXVmZW4gLSBudXIgQmV1dGVsL0JvZXJzZW4sIG1pdCBHZWxkIGRyaW5uZW4gOikuClVuZCB3ZW5uIGRlciBIYWVuZGxlciBkYW5uIHNvIG5lIEJvZXJzZSBkYW5uIG5vY2ggenUgc2VpbmVuIFByaXZhdHNhY2hlbgpsZWd0LCBibGVpYnQgbnVyIG5vY2ggZGVyZW4gSW5oYWx0IHVlYmVyLi4uIDopLiBJc3Qgb2huZWhpbiB2aWVsIHp1IGRvb2YKZ2VtYWNodCwgZGVyIEhhZW5kbGVyIHNvbGx0ZSBzaWNoIG0uRS4gbm9jaCBleHBsaXppdCBmdWVyIGRlbiBJbmhhbHQKZWluZXMgaWhtIHZlcmthdWZ0ZW4gQmV1dGVscyBiZWRhbmtlbiA6KSkpKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCBnbGF1YiwgaWNoIHdlcmRlIGF1Y2ggQ2hhb3QuLi4gKEthcmFtLCAgMS4gRmViIDE5OTksIDIyOjUzOjA1KToKUHVrIGtuaWV0IHNpY2ggaGluIHVuZCBiZWdpbm50IHdpZSB3aWxkIGVpbiBQZW50YWdyYW1tIGF1ZiBkZW4gQm9kZW4genUgbWFsZW4uCkVyIG1hY2h0IGRhYmVpIHNlbHRzYW1lIEJld2VndW5nZW4gbWl0IGRlbiBGaW5nZXJuIHVuZCBncnVtbWVsdCBtYWdpc2NoZQpXb3J0ZS4KUHVrIGh1ZXBmdCB1bSBkYXMgUGVudGFncmFtbSBoZXJ1bSwgbXVybWVsdCBzZWx0c2FtZSBXb3J0ZSB1bmQKemVpY2huZXQgc2Nod3VuZ3ZvbGwgZWluZW4gZ3Jvc3NlbiBLcmVpcyBhdXMgdmllbGVuIGtsZWluZW4gUnVuZW4gZGFydW0KaGVydW0sIGltbWVyIHdpZWRlciB1bnRlcmJyb2NoZW4gdm9uIHNlbHRzYW1lbiBHZXN0ZW4gdW5kIFdvcnRlbi4KUHVrIHRhbnp0IHVtIGRhcyBQZW50YWdyYW1tIGhlcnVtLCBzcHJpY2h0IG1hZ2lzY2hlIFdvcnRlIHVuZCBiZXNjaHdvZXJ0CmZpbnN0ZXJlIEtyYWVmdGUuIERhbm4gc2NoaWVzc3QgcGxvZXR6bGljaCBlaW4gYmx1dHJvdGVyIFN0cmFobCBoaW5hYiB1bmQKbGFlc3N0IGRlbiBCYW5ua3JlaXMgc2NoYXVyaWcgYXVmbGV1Y2h0ZW4uCkR1IGhhc3QgamV0enQgMjM3IExlYmVuc3B1bmt0ZSB1bmQgMjAyIEtvbnplbnRyYXRpb25zcHVua3RlLgpEdSBoYXN0IGpldHp0IDIzOCBMZWJlbnNwdW5rdGUgdW5kIDIwMiBLb256ZW50cmF0aW9uc3B1bmt0ZS4KRHUgaGFzdCBqZXR6dCAyMzkgTGViZW5zcHVua3RlIHVuZCAyMDIgS29uemVudHJhdGlvbnNwdW5rdGUuCkR1IGhhc3QgamV0enQgMjQwIExlYmVuc3B1bmt0ZSB1bmQgMjAyIEtvbnplbnRyYXRpb25zcHVua3RlLgpLb29taSBtYXRlcmlhbGlzaWVydCBhdXMgZGVtIE5pY2h0cy4KCi0tCkthcmFtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIGdsYXViLCBpY2ggd2VyZGUgYXVjaCBDaGFvdC4uLiAoVGVkZHksICAxLiBGZWIgMTk5OSwgMjI6NTM6NDUpOgp+IyEgcm49S2FyYW0gcnQ9OTE3OTA5NTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE3OTA5NTg1CkVpbmRldXRpZyBtaXNzbHVuZ2VuZSBCZXNjaHdvZXJ1bmcsIGFiZXIgYm9lc2UgbWlzc2x1bmdlbi4KClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEljaCBnbGF1YiwgaWNoIHdlcmRlIGF1Y2ggQ2hhb3QuLi4gKEtvb21pLCAgMS4gRmViIDE5OTksIDIyOjU4OjE0KToKfiMhIHJuPVRlZGR5IHJ0PTkxNzkwOTYyNSByZz1zY2htYXJybgp+IyEgdGlkPTkxNzkwOTU4NQpBY2ggdGVkZHksIHdhcyB3YWVyZSBkZW5uIG5vY2ggc2NobGVjaHRlcj8KCiJFaW4gd3VzY2hlbGlnZXIgVGVkZHkgZXJzY2hlaW50IGluIGVpbmVuIEtvbmZldHRpcmVnZW4/IgoKSGFsYmVsZiBLb29taS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEljaCBnbGF1YiwgaWNoIHdlcmRlIGF1Y2ggQ2hhb3QuLi4gKFRlZGR5LCAgMS4gRmViIDE5OTksIDIyOjU5OjUzKToKfiMhIHJuPUtvb21pIHJ0PTkxNzkwOTg5NCByZz1zY2htYXJybgp+IyEgdGlkPTkxNzkwOTU4NQpQc3N0LCBkZXIgQW50cmFnIGF1ZiBkZW4gbmV1ZW4gdW5kIGJvZXNhcnRpZ3N0ZW4gUGx1ZXNjaGRhZW1vbmVuIGlzIHZvbgpTaWx2YW5hIG5vY2ggZ2FybmljaHQgYWJnZW5vbW1lbiB3b3JkZW4uCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmEgZmx3IGlzdCBlcyBuaWNodC4uLiAoRGFyaWEsICAxLiBGZWIgMTk5OSwgMjM6NTA6NDIpOgogW1RvZDpMYXJzXSBMb3JlbnogaGF0IGdlcmFkZSBFbGVuZGlsIHVtZ2VicmFjaHQuClt6dDpVbmFzYWldIERhcyBVbnRpZXIgaGludGVyIERpciwgdm9yIERpciBudXIgZGFzIFVuZ2V3aXNzZQoKV2llIHBhc3NlbmQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkpldHp0IGFiZXIgRkxXIChEYXJpYSwgIDEuIEZlYiAxOTk5LCAyMzo1OTo0Nik6CltCZWlsZWlkOkVsZW5kaWxdIG1hbCBzY2hhdWVuLCB3ZW5uIGljaCBqZXR6dCBhdWNoIGhvcHMgZ2VoIGhvZXIgaWNoIGF1ZiA6KQpbVG9kOkxhcnNdIExvcmVueiBoYXQgZ2VyYWRlIEVsZW5kaWwgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdlcmFkZSBpbiBkZXIgRGFlbW9uZW5idXJnLi4uIChQdWssICAyLiBGZWIgMTk5OSwgMDI6MjE6MjYpOgogSmltbXkgcnVmdDogUHV0enRldWZlbCBoYXQgZGVuIEZyaWVkaG9mIHZvbSBTY2htdXR6IGJlZnJlaXQhIEppbW15IHJ1ZnQ6Cldlbm4gZGFzIGtlaW4gR3J1bmQgenVtIEZlaWVybiBpc3QgOi0pIERlciBQdXR6dGV1ZmVsIGZyYWd0IERpY2g6IEhhc3QgRHUgZGVuCldlaXNzZW4gUmllc2VuIGdlc2VoZW4gPyBEZXIgUHV0enRldWZlbCBnZWh0IG5hY2ggTm9yZG9zdGVuLgoKbWhoLCBkaWUgaXN0IGFiZXIgZWNodCBndXQgdW5kIHNjaG5lbGwsIGRpZSBrb2VubnRlIHJ1aGlnIG1sIGJlaSBtaXIKdm9yYmVpc2NoYXVlbiA6KQoKUHVrIChpbW1lciBub2NoIHNjaG11bnplbG5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGV5LCB3YXMga2FubiBpY2ggZGFmdWVyID8/PyAoWmVyLCAgMi4gRmViIDE5OTksIDEwOjE5OjExKToKRGVyIEtvbW1hbmRvZnVlaHJlciBiZXNjaGxpZXNzdCwgZGFzcyBoZXV0ZSBlaW4gU2NoZWlzc3RhZyBpc3QuCkRlciBLb21tYW5kb2Z1ZWhyZXIgYnJ1ZWxsdDogWnVtIEFhYWFhYWFuZ3JpZmZmICEhIQpEZXIgS29tbWFuZG9mdWVocmVyIHNjaGxhZWd0IERpciBkZW4gQmloYWVuZGVyIGF1ZiBkZW4gS29wZi4KKioqKiBMUDogMTM5ICgtNTUpIEtQOiAxOQoKWmVyLCBtaXQgQmV1bGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZsZXhpYmxlIFNrcmlwdGF1c3dlcnR1bmcgKE9ueXgsICAyLiBGZWIgMTk5OSwgMTE6MTE6MjYpOgpEdSBiaXN0IGpldHp0IGltICJLdXJ6Im1vZHVzLgpEZXIgU2FuZHRpZ2VyIHNhZ3Q6IEhhbGxvLCBPbnl4IQpBbSBQb3J0IFZhaW5lciBTdGFkdHRvci4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4gdW5kIHdlc3Rlbi4KRWluIEJldXRlbCAoZ2VvZWZmbmV0KS4KRWluIFNhbmR0aWdlci4KQW1ldGh5c3QgZmxhdHRlcnQgaGVyZWluLgpBbWV0aHlzdCBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIEhhdHNoZXBzdXQsIGVpbiBMdWNocywgVHJpZWZvLCBlaW4KQW1ldGh5c3Qga3JhZWNoenQ6IFNjaHdlaW4sIGVpbiBGaXNjaG90dGVyLCBlaW4gU2NobWV0dGVybGluZyB1bmQgZWluIEJldXRlbApBbWV0aHlzdCBrcmFlY2h6dDogKGdlb2VmZm5ldCkgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpRdWVzdGhpbGZlIC4uLiAoTGlhcmEsICAyLiBGZWIgMTk5OSwgMTE6MTc6MTMpOgpbQWJlbnRldWVyOkxldHRlXSBXYXMgbWFjaGUgaWNoIGJlaW0gTXVlbGxlciBnZWdlbiBkaWUgV2FjaGh1bmRlPyBRdWVzdApbQWJlbnRldWVyOkxldHRlXSAnZWlsZW5kZSBCcmllZnp1c3RlbGx1bmcnIQo+IFtBYmVudGV1ZXI6TG9sbGldIHVtaGF1ZW4KW0FiZW50ZXVlcjpDZWlsb10gZnVldHRlcm4KW0FiZW50ZXVlcjpCdXp6Y3V0XSBiZWxsZW4KPiBbQWJlbnRldWVyOk1hZ2ljb2xsaV0gZm9sdGVybgpbQWxsZ2VtZWluOkNocmlzc3ldIHN0cmlja2Vsbj8KPiBbQWxsZ2VtZWluOkNocmlzc3ldIGFlaCBzdHJlaWNoZWxuPwoKTGlhcmEsIGlzdCBkYW1hbHMgZWluZmFjaCBzdGlsbGUgZ2VzdG9yYmVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogV2FzIHNvbGwgZGFzPyAoR3JpbW1ib3JuLCAgMi4gRmViIDE5OTksIDEyOjE4OjEwKToKfiMhIG9uPUppZGR1IG90PTkxNzY1Mjg3NiBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISBybj1aYXJuaXlhIHJ0PTkxNzUzMjA0NyByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9OTE3NDUzMzU1CkJpc3QgZHUgbmljaHQgbXVsdGl0YXNraW5nZmFlaGlnPwpEdSBoYXN0IDIgSGFlbmRlIHVuZCAyIEF1Z2VuLi4gbWl0IGV0d2FzIFVlYnVuZyB1bmQgMlBjcyBrYW5uc3QgZHUgYWxzbwpwcm9ibGVtbG9zIDIgQ2hhcnMgYXVmIGVpbm1hbCBiZWRpZW5lbiBvaG5lIHp1IHNjcmlwdGVuLiA6KQpKaWRkdS0+c2NobWFycm4oKS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsZXJpa2VyIHVuZCBGcmllZGVuPz8gKE1vcmdvdGgsICAyLiBGZWIgMTk5OSwgMTI6MjE6MTMpOgpbS2xlcnVzOlRyaWVmb10gRGVyIEZyaWVkZW4gYmxlaWJlIGJlaSBFdWNoICEKS1JBQUFBQUFBQUFBQUFBQUFBQUFBQUFXVU1NTU1NTU1NTU1NTU1NTU1NTU0hCkplbWFuZCBoYXQgZGVuIFdvbHBlcnRpbmdlcmNsdWIgaW4gZGllIEx1ZnQgZ2VzcHJlbmd0IQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUgLi4uIChMaWFyYSwgIDIuIEZlYiAxOTk5LCAxMzoyMTozMik6CgogW1NlaGVyOk1vcmdvdGggd2luc2VsdCB1bSBHbmFkZV0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogV2FzIHNvbGwgZGFzPyAoQWxwaGEsICAyLiBGZWIgMTk5OSwgMTQ6MzU6NTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTkxNzk1Nzg5MCByZz1zY2htYXJybgp+IyEgdGlkPTkxNzQ1MzM1NQpXYXJ1bSBlaWdlbnRsaWNoIDJQQ3M/IFNpbmQgZGllIE1vbml0b3JlIGJlaSBEaXIgc28ga2xlaW4/IEF1ZiBkaWUgaGllciBwYXNzZW4KZ3V0IDQgV2VsdGVuIGdsZWljaHplaXRpZy4uLmRpZSBTdGV1ZXJ1bmcgaXN0IGRhIG5lIGFuZGVyZSBGcmFnZSwgYWJlciBtaXQgZGVyCk1hdXMgaW5zIGFuZGVyZSBGZW5zdGVyIHp1IHBvaW50ZW4gaXN0IG5pY2h0IHNvb28gc2Nod2VyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCB3YWFhYWFhYWFhYWFhaCA6KSAoSmFzb25yaWdpZCwgIDIuIEZlYiAxOTk5LCAxNTozMjoxNyk6CmVpbiBCZXV0ZWwgKGdlc2NobG9zc2VuKSB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggZWluZW0gQmV1dGVsIChnZW9lZmZuZXQpLgpFaW4gQmV1dGVsIChnZW9lZmZuZXQpIHNhZ3Q6IGF1dHNjaAoKSmFzb24gd2FhYWFhYWFhYWFodCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VodCBkYXMgbmljaHQgd2FzIGZydWVoZXI/IChXaW0sICAyLiBGZWIgMTk5OSwgMTk6MTY6NTApOgpubgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0Lgo+ICogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBHbm9tZSBpbiBSdWJyaWsgInRyZWZmZW4iLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWJlbiBhbSBUaWdlciAoU3JhYmksICAyLiBGZWIgMTk5OSwgMjA6NDE6MjkpOgpEaWUgdW5oZWltbGljaGVuIE1hZWNodGUgZGVzIFZhbGEgTW9yZ290aAoKTW9yZ290aCB6aWVodCBldHdhcyBhdXMgZWluZW0gc2Nod2FyemVuIExvY2guCkRlYWQga29tbXQgYW4uCgpTcmFiaSB3dW5kZXJ0IHNpY2ggaW1tZXIgbm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmFsYW5jZSB0dXQgd2VoITspIChNaW5kYmxhZGUsICAzLiBGZWIgMTk5OSwgMDM6MDA6MzkpOgpCYWxhbmNlIFtOYWNodHdpbmRdOiAxLiBkaWUgZ3Jlbnplbi4uIGF1YSAhCkJhbGFuY2UgW05hY2h0d2luZF06IG1hbiBzb2xsdGUgbmljaCBhdWYgZGVyIGdsYXNlYmVuIGlkbGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOb25uZXMgQXJiZWl0Li4uIChUdW5peGd1dCwgIDMuIEZlYiAxOTk5LCAwOTo1Njo0MSk6CkRlcyBlaW5lbiBGcmV1ZCwgZGVzIGFuZGVyZW4gTGVpZC4uLgoKVmFsYSBNb3Jnb3RoIHJ1ZnQ6IGF1dWFhYWEsIG5vbm5lIGhhdXQgbWljaApEdSB0ZWlsc3QgTm9ubmUgbWl0OiBXZWl0ZXIgc28hIDpvKSkpCk5vbm5lIGlzdCBnZXJhZGUgbmljaHQgZGE6IGFyYmVpdAoKV2FzIG1hbmNoZSBzbyBhbHMgQVJCRUlUIGJldHJhY2h0ZW4uLi4KCidzIEthcmF0ZS1ad2VyY2hsZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQVJHSCEgKEJlbmRlaWdpZCwgIDMuIEZlYiAxOTk5LCAxMzo0NDozNik6Cn4jISBvbj1MZW5hIG90PTkxODA0OTEwMCBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCm5uCgpSdWJyaWsgMzc6IHBvbGl6ZWkuYmVzY2h3ZXJkZW4sIEFydGlrZWw6IDU5IHZvbiA5MwoKVG9sbC4gRGEgaXN0IG1hbiBtYWwgZHJlaSBUYWdlIG5pY2h0IGRhIHVuZCBkYW5uIGRhcy4uLgoKOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFSR0ghIChCb2luZywgIDMuIEZlYiAxOTk5LCAxMzo1NjoxMSk6Cn4jISBvbj1MZW5hIG90PTkxODA0OTEwMCBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCm5uCgpSdWJyaWsgMzc6IHBvbGl6ZWkuYmVzY2h3ZXJkZW4sIEFydGlrZWw6IDU5IHZvbiA5MwoKVG9sbC4gRGEgaXN0IG1hbiBtYWwgZHJlaSBUYWdlIG5pY2h0IGRhIHVuZCBkYW5uIGRhcy4uLgoKOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBUkdIISAoQm9pbmcsICAzLiBGZWIgMTk5OSwgMTM6NTY6MzApOgp+IyEgcm49QmVuZGVpZ2lkIHJ0PTkxODA0OTQ3NiByZz1zY2htYXJybgp+IyEgdGlkPTkxODA0OTQ3NgpVbmQgZHVyY2ggc29sY2hlIEFydGlrZWwgd2lyZHMgbmljaHQgYmVzc2VyLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFSR0ghIChUcmFuY2VmZWFyLCAgMy4gRmViIDE5OTksIDE3OjIzOjUzKToKfiMhIHJuPUJvaW5nIHJ0PTkxODA1MDE5MCByZz1zY2htYXJybgp+IyEgdGlkPTkxODA0OTQ3NgptZSB0b28KCnRmIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFdhcyBzb2xsIGRhcz8gKEplaG92YSwgIDMuIEZlYiAxOTk5LCAxODo0NTo1MSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTE3OTU3ODkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE3NDUzMzU1CkpldHp0IG11ZXNzdGUgaWNoIG51ciBub2NoIDIgRmVuc3RlciBnbGVpY2h6ZWl0aWcgYWt0aXZpZXJlbiBrb2VubmVuIDopCgpKKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdhcyBzb2xsIGRhcz8gKEdyaW1tYm9ybiwgIDMuIEZlYiAxOTk5LCAxOToyMzoyMSk6Cn4jISBvbj1ZZW5kaSBvdD05MTgwNDc3Nzcgb2c9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgcm49QXNtb2RpcyBydD05MTc5MTQyNTkgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTkxNzQ1MzM1NQpFcyBnaWJ0IGVpbiBqYWlsPyBTZWl0IHdhbm4gZGVubiBkYXM/ICAoLT5zY2htYXJybikKCllUWQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVzIGxlYnQgLi4uIChMaWFyYSwgIDMuIEZlYiAxOTk5LCAyMTo1OToyOCk6CgpbQWxsZ2VtZWluOkRyb2xsaV0gaWNoIGhhYiBlaW5lbiBrb3BmIGVudGdlZ2VuIGFsbGVuIGdlcnVlY2h0ZW4KSXJnZW5kd2FzIGJld2VndCBzaWNoIGluIGRlbSBTY2hsZWltLgoKTGlhcmEsIHd1bmRlcnQgc2ljaCB1ZWJlciBnYXIgbml4IG1laHIgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGhqYSAuLi4gKFJpbmdvciwgIDMuIEZlYiAxOTk5LCAyMjoyNTozMik6CkViZW4gZ2VzZWhlbjogCgpbc2NoYXVdCkRhcyBFcnN0ZSwgZGFzIERpciBpbiBkaWVzZW0gSGF1cyBhdWZmYWVsbHQsIGlzdCBkYXMgU2NoaWxkIGFuIGRlcgpnZWdlbnVlYmVybGllZ2VuZGVuIFdhbmQsIGRlbm4gZXMgaXN0IGluIGVpbmVyIERpciB2ZXJ0cmF1dGVuIFNjaHJpZnQKZ2VzY2hyaWViZW4uIERpZXNlciBSYXVtIHNjaGVpbnQgZWhlciB3aWUgZWluIFZlcnNhbW1sdW5nc3ppbW1lciBhbHMgZWluCkdlc2NoYWVmdCBlaW5nZXJpY2h0ZXQgenUgc2VpbiwgZGVubiB3aWUgaW4gZWluZW0gTGFkZW4gc2llaHQgZXMgaGllciBuaWNodAphdXMuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvYmVuIHVuZCBzdWVkZW4uIApBbiBIdWEuCgpbbGllcyBzY2hpbGRdCkR1IGxpZXN0OiBuaWxpd2FuZ3hpYW8geXV5dWNoZW5nIHhpYW9jaGVuZ3l1eGkgcXVpbmdzdW5nd2FuZ2NoZW5nIGxpLgoKUmluZ29yIGRlbmt0IC4gbyBPKHdpZSBzaWVodCB3b2hsIGVyc3QgbmljaHQgdmVydHJhdXRlIFNjaHJpZnQgYXVzPykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZ2llcmxhYmVyIChNb3Jnb3RoLCAgMy4gRmViIDE5OTksIDIzOjI1OjUzKToKW0xQQzpBcmtdIG1hY2ggbWFsIHVudCBicnVzdApbTFBDOlJpa3VzXSB3ZXNzZW4/IC4pCltMUEM6TXVwZmVsXSBvaGphIHJpa3VzIDotKQpbTFBDOkFya10gZGFzIGlzdCBqZXR6dCBtaXQgU0hPUlQgYXVmIDAKW0xQQzpBcmtdIDopCltMUEM6TW9yZ290aF0gZGFyZiBpY2ggZGFzIHBvc3Rlbj8KW0xQQzpNdXBmZWxdIGtsYXIKW0xQQzpBcmtdIG9laGhoaGhoCltMUEM6UmlrdXNdIHggYnJ1c3QgYW4gY2lzb3UgLT4gc293YXMgc2llaHN0IGR1IG5pY2h0CltMUEM6TXVwZmVsIGxhY2h0XQpbTFBDOlJpa3VzIGhtdF0KW0xQQzpBcmtdIG5laW4sIERFSU5FIGJydXN0IGR1IGRvZWRlbAoKTW9yZ290aCAqcm90ZmwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFnaWVybGFiZXIgKEphbWVzb24sICA0LiBGZWIgMTk5OSwgMDE6MTQ6NTQpOgp+IyEgcm49TW9yZ290aCBydD05MTgwODQzNTMgcmc9c2NobWFycm4KfiMhIHRpZD05MTgwODQzNTMKU29sY2hlIFNhY2hlbiBzaW5kIGVzLCBkaWUgdW5zIE1hZW5uZXIgc28gYmVsaWVidCBiZWkgZGVuIEZyYXVlbgptYWNoZW4uIEhlcnpsaWNoZW4gRGFuaywgUmlrdXMsIER1IGhhc3QgZnVlciBncm9zc2UgRGFua2JhcmtlaXQKZ2Vzb3JndCwgd2lyIGJld3VuZGVybiBEaWNoIHdpcmtsaWNoIGZ1ZXIgRGVpbmUgZmVpbmZ1ZWhsaWdlbgpXb3J0ZS4gSWNoIHd1bmRlcmUgbWljaCwgZGFzcyBpY2ggZGVyIEVyc3RlIGJpbiwgZGVyIHNpY2ggb2VmZmVudGxpY2gKdWViZXIgc28gZWluZSBTY2h3ZWluZXJlaSBhdWZyZWd0LiBEdSBiaXN0IGFiIHNvZm9ydCBhdWYgbWVpbmVyCmlnbm9yaWVyZS1MaXN0ZSwgZWJlbnNvIHdpZSBEZWluZSBRdWVzdHMuCgpNb3Jnb3RoLCB2b24gRGlyIGhhZXR0IGljaCBlaWdlbnRsaWNoIGF1Y2ggZXJ3YXJ0ZXQsIGRhc3MgRHUKZ2VyYWRlIG1hbCBzbyB2aWVsIEhpcm4gaGFzdCwgZGFzcyBEdSBzbyB3YXMgbmljaHQgYXVjaCBub2NoIGluCmRpZSBtcGEga2xhdHNjaHN0LiBBdWNoIGVpbiBNYW5uLCBzZWxic3QgZWluIE1HLU1hZ2llciwga2FubiBzaWNoCmRlbmtlbiwgZGFzcyBkYXMgdmllbGUgTGV1dGUgZW1wb2VydCwgbWFuY2hlIHRyaWZmdCwgdW5kIGRpZSBCZXRyb2ZmZW5lCnNjaHdlciB2ZXJsZXR6ZW4gbXVzcy4KCkphbWVzb24sIFNUSU5LU0FVRVIsIGFuZ2V3aWRlcnQgYXVzc3B1Y2tlbmQsIGhvZmZ0LCBkYXNzIGVyIG5pY2h0IGRlcgplaW56aWdlIEtlcmwgaXN0LCBkZXIgc28gZGVua3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hZ2llcmxhYmVyIChBbmF0b2wsICA0LiBGZWIgMTk5OSwgMDE6MTY6MDgpOgp+IyEgcm49SmFtZXNvbiBydD05MTgwOTA4OTQgcmc9c2NobWFycm4KfiMhIHRpZD05MTgwODQzNTMKSGV1bCBkb2NoLgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWFnaWVybGFiZXIgKFBhcmFjZWxzdXMsICA0LiBGZWIgMTk5OSwgMDE6MTg6MTQpOgp+IyEgcm49QW5hdG9sIHJ0PTkxODA5MDk2OCByZz1zY2htYXJybgp+IyEgdGlkPTkxODA4NDM1MwpEYXMgZ2lidCBkb2NoIFdhc3NlcmZsZWNrZW4gYXVmIGRlbSBGdXNzYm9kZW4hCkhldWwgaW4gJ25lbiBFaW1lciEKClBhcmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hZ2llcmxhYmVyIChHYXN0MSwgIDQuIEZlYiAxOTk5LCAwMTo0MToxOCk6Cn4jISBybj1KYW1lc29uIHJ0PTkxODA5MDg5NCByZz1zY2htYXJybgp+IyEgdGlkPTkxODA4NDM1MwpBUkdILi4uCgpJY2ggYmlucyBMVUcgKGhhZXR0ZSBtYW4gYXVjaCBzbyBnZW1lcmt0LCBiZXZvciBHcmltbWkgZGFzIGxvZXNjaHQpOgoKU2FjaG1hLCBoYXN0ZSBlaW5lbiBhbiBkZXIgV2FmZmVsPyBHZWh0cyBEaXIgbm9jaCBndXQ/IFdhcyBzcHJpY2h0IGRhZ2VnZW4gZGVyCnBzZXVkb2h1bWFub2lkZW4gQi1SZWloZSBOZXR0aWdrZWl0ZW4genVrb21tZW4genUgbGFzc2VuPyBEaWNoIG1lcmsgaWNoIG1pcgpmdWVyIGRlbiBUYWcgbWVpbmVyIFJ1ZWNra2Voci4gTmVlLCBkYXMgaWNoIHNvIGVpbmVuIE11ZWxsIGxlc2VuIG11c3MuCgpBcHJvcG9zOiBJY2ggS09NTUUgaXJnZW5kd2FubiB3aWVkZXIgS29vbWlzY2hhdHouLi4KCkdlbnVnIGxpZWIgZ2V3ZXNlbgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBJbnRlcmVzc2FudGVzIGZ1ZXIgQWNyaW1vbiEgKEJvaW5nLCAgNC4gRmViIDE5OTksIDA4OjU4OjM0KToKfiMhIG9uPVN0aW5nIG90PTkxODA3NDEyMCBvZz1hbGxnZW1laW5lcwoKU3RpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXMgSW50ZXJlc3NhbnRlcyBmdWVyIEFjcmltb24hIChCb2luZywgIDQuIEZlYiAxOTk5LCAwODo1ODozNik6Cn4jISBvbj1aaWxsdXMgb3Q9OTE4MDc0MTU2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1TdGluZyBydD05MTgwNzQxMjAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MTgwNzQxMjAKZGFzIHdhciBhYmVyIG5pY2h0IGJlc29uZGVycyBpbnRlcmVzc2FudC4KCnppbGx1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVlciBBbmFjcmlvbiEgKEJvaW5nLCAgNC4gRmViIDE5OTksIDA4OjU4OjM3KToKfiMhIG9uPVN0aW5nIG90PTkxODA3NDE2NCBvZz1hbGxnZW1laW5lcwpFdHdhcyBpbnRlcmVzc2FudGVzIGZ1ZXIgQW5hY3Jpb24hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbSBkaWVzZSBaZWl0ID8/IChSdW1hdGEsICA0LiBGZWIgMTk5OSwgMTA6NDU6MjcpOgo+a3dlcgogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRG9uLCAgNC4gRmViIDE5OTksIDEwOjQ0OjQ1ICgxIFRlaWxuZWhtZXIpCgpSdW1hdGEuLi4uLi4uLi4uLkcKClJ1bWF0YSwgaW1tZXIgd2llZGVyIGVyc3RhdW50IC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVtIGRpZXNlIFplaXQgPz8gKEFuYXRvbCwgIDQuIEZlYiAxOTk5LCAxMjo0NjozOCk6Cn4jISBybj1SdW1hdGEgcnQ9OTE4MTI1MTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4MTI1MTI3CkhtLCBiaXN0IER1IHNpY2hlciwgZGFzcyBkYXMgZGFzIHJpY2h0aWdlIEZlbnN0ZXIgd2FyPyA6bykgSWNoIGRhY2h0ZQpiaXNoZXIgaW1tZXIsIGRhc3MgbnVyIFNvbm50YWcgbW9yZ2VuZHMgdW0gaGFsYiBhY2h0ICh3ZW5uIGRpZSBOYWNodC0Kc2NoaWNodCBpbiBkaWUgRmVkZXJuIGtyaWVjaHQpIGRhcyBNdWQgd2lya2xpY2ggbGVlciBpc3QuLi4KCkFuYXRvbCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWFnaWVybGFiZXIgKFllbmRpLCAgNC4gRmViIDE5OTksIDE0OjI2OjAwKToKfiMhIHJuPUphbWVzb24gcnQ9OTE4MDkwODk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4MDg0MzUzCkhtbW0uLi4gd29ydWViZXIgZ2VuYXUgcmVnc3QgRHUgRGljaCBqZXR6dCBzbyBhdWY/ClVuZCB3aWVzbyBEdT8gQmlzIGpldHp0IGhhYmUgaWNoIGtlaW5lIFJlYWt0aW9uIHZvbiBGcmF1ZW4gZ2VsZXNlbiAtLSB2ZXJzdWNodApkYSBqZW1hbmQsIHBhZXBzdGxpY2hlciB6dSBzZWluIGFscyBkZXIgUGFwc3Q/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWFnaWVybGFiZXIgKEtleSwgIDQuIEZlYiAxOTk5LCAxNTozMzoyNCk6Cn4jISBybj1HYXN0MSBydD05MTgwOTI0Nzggcmc9c2NobWFycm4KfiMhIHRpZD05MTgwODQzNTMKTExMTExMTExMTFVVVVVVVVVVVVVVVVVVR0dHR0dHR0dHR0dHR0dHRyEhISEhISEhISEhISEhIQpNZWxkIERpY2ggZ2VmYWVsbGlnc3QgenVyIFBhcnR5IGFuISEhISEKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNYWdpZXJsYWJlciAoSmlkZHUsICA0LiBGZWIgMTk5OSwgMTU6MzQ6NTkpOgp+IyEgcm49SmFtZXNvbiBydD05MTgwOTA4OTQgcmc9c2NobWFycm4KfiMhIHRpZD05MTgwODQzNTMKV2FoLCB3YXMgaGFzdCBEdSBkZW5uIGZ1ZXIgZWluIFByb2JsZW0/PyAKUmVkIGRvY2gga2VpbiBzb2xjaGVuIHF1YXRzY2ggLi4gIlNvbGNoZSBTYWNoZW4gc2luZCBlcywgZGllIHVucyBNYWVubmVyIHNvCmJlbGllYnQgYmVpIGRlbiBGcmF1ZW4gbWFjaGVuLiIgc2luZCBhbGxlIG1hZW5uZXIgZWlnZW50bGljaCB1bmJlbGllYnQgYmVpCkZyYXVlbiBudXIgd2VpbCBtYW5jaGUgV2l0emUgbWFjaGVuPz8gcHVoLi4gbmFqYSBzY2hlaXNzZSBnZWxhdWZlbi4uIGRlbm4gbWl0CnNvbGNoZW4gU2FjaGVuIG1hY2hzdCBEVSBEaWNoIGF1Y2ggbm9jaCB1bmJlbGllYnQgYmVpIGRlbiBNYWVubmVybiA7KQpKaWRkdSwgYmxvZWt0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChEaWVkZXIsICA0LiBGZWIgMTk5OSwgMTY6MDU6NDMpOgpbQWxsZ2VtZWluOkRyb2xsaV0gbWVuc2NoZW4gdmVyaHVuZ2VybiBkcmF1c3NlbiB1bmQgZXVjaCBmYWVsbHQgZWluIGRhc3MgZGllCltBbGxnZW1laW46RHJvbGxpXSB1aHIgMiBtaW51dGVuIHZvciBnZWh0IHRzZQpbQWxsZ2VtZWluOk5pZXRlXSBib2FoLCBiZWkgZGllc2VyIG1vcmFscHJlZGlndCBlcm50ZXN0IGR1IG51ciBiZXRyZXRlbmVzCltBbGxnZW1laW46TmlldGVdIHNjaHdlaWdlbi4uLgpbQWxsZ2VtZWluOkhvYm9dIG1lbnNjaGVuIHZlcmh1bmdlcm4gZGEgZHJhdXNzZW4gdW5kIGlociB3ZWludCwgd2VubiBpaHIKW0FsbGdlbWVpbjpIb2JvXSB2b2xsZ2V0YW5rdCBzZWlkIHRzZQpbQWxsZ2VtZWluOkRpZWRlcl0gRHJvbGxpIGxvZ2cgRGljaCBhdXMgdW5kIHNwZW5kZSBkZWluZSBnZXNwYXJ0ZW4KW0FsbGdlbWVpbjpEaWVkZXJdIFRlbGVmb25rb3N0ZW4KPiBbVG9kOkxhcnNdIEN5TW9ua3MgQ2hhb3NhbXVsZXR0IGhhdCBnZXJhZGUgRHJvbGxpIHVtZ2VicmFjaHQuCgpobSwgaGFldHRlIGVyIHdvaGwgYmVzc2VyIGdlbWFjaHQuLi4KRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW0gZGllc2UgWmVpdCA/PyAoQXp6dXJvLCAgNC4gRmViIDE5OTksIDE2OjU4OjQ5KToKfiMhIHJuPVJ1bWF0YSBydD05MTgxMjUxMjcgcmc9c2NobWFycm4KfiMhIHRpZD05MTgxMjUxMjcKS2VpbiBXdW5kZXIgUnVtYXRhLiBEYXMgTUcgd2FyIGF1Y2ggdm9uIGRlciBBdXNzZW53ZWx0IGFiZ2VzY2hsb3NzZW4uIEF1ZgpqZWRlbiBGYWxsIGthbSBpY2ggdW0gZGllIFplaXQgd2VkZXIgaW4gTXVkIG5vY2ggYXVmIGRlbiBXV1cgU2VydmVyLgpVbmQgbWFsIGVpbmZhY2ggZ2VyZWNobmV0OiBFaW4gUGxhdHogYW0gU2VydmVyIC0+IGVpbmUgUnVtYXRhLCBkaWUgc3BpZWx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBVbSBkaWVzZSBaZWl0ID8/IChLZXksICA0LiBGZWIgMTk5OSwgMTY6NTk6NTYpOgp+IyEgcm49QXp6dXJvIHJ0PTkxODE0NzUyOSByZz1zY2htYXJybgp+IyEgdGlkPTkxODEyNTEyNwpIbW0gYWxzbyBpY2ggd2Vpc3MgbnVyIGRhcyBLb2VsbiBwdXR0IHdhciwgZGFjaHRlIGRlciBSZXN0IGdpbmdlIDspCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFVtIGRpZXNlIFplaXQgPz8gKFphcm5peWEsICA0LiBGZWIgMTk5OSwgMTc6MjM6NDMpOgp+IyEgcm49S2V5IHJ0PTkxODE0NzU5NiByZz1zY2htYXJybgp+IyEgdGlkPTkxODEyNTEyNwpuaWNodCBLb2VsbiB3YXIgcHV0dC4gc29uZGVybiBHU1MgRG9ydG11bmQuLi4uIHdvbGx0cyBudXIgZXJ3YWVobnQgaGFiZW4sIGRlbm4KYmlzIEtvZWxuIHNlaXQgaWhyIGphIGFsbGUgZ2Vrb21tZW4gOikKCk1hcmMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJla2FubnRtYWNodW5nISAoQW5hdG9sLCAgNC4gRmViIDE5OTksIDE4OjI5OjA2KToKfiMhIG9uPUFuYXRvbCBvdD05MTgxNTI5NDAgb2c9cGFydHkKfiMhIHJuPUtleSBydD05MTgxNTI5MjAgcmc9cGFydHkKfiMhIHRpZD05MTgwNDU0NTkKQWxsZSBhdWYgUGFkcmVpYz8gCgpJc3Qgb2suCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hZ2llcmxhYmVyIChBY3JpbW9uLCAgNC4gRmViIDE5OTksIDE5OjQ0OjAwKToKfiMhIHJuPUphbWVzb24gcnQ9OTE4MDkwODk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4MDg0MzUzCkhtbS4KRWluZSBTY2h3ZWluZXJlaSBoYWIgaWNoIG5pY2h0IGVya2FubnQgKGhvZWNoc3RlbnMgZWluIHBhYXIgWmVpbGVuLCBkaWUgbmljaHQKZWlubWFsIHdpdHppZyB3YXJlbikuCkRyZWNraWdlIFdpdHplIGthcGllciBpY2ggZ3J1bmRzYWV0emxpY2ggbmljaHQuCkplZGVuZmFsbHMgZGFua2UgZnVlciBEZWluZW4gQXJ0aWtlbCAtIGRhcyBpc3QgYXVjaCBtZWluZSBNZWludW5nLgoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyIHNjaHVldHRlbHQgbnVyIGRlbiBLb3BmIHVlYmVyIGRpZSBJZGlvdGVuLCBkaWUKZHJlY2tpZ2UgIldpdHplIiBlcnphZWhsZW4gb2RlciBnYXIgZGFydWViZXIgbGFjaGVuIGtvZW5uZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFN0aW5nLCAgNC4gRmViIDE5OTksIDE5OjQ0OjI0KToKTGlsbGVicm9yIHNhZ3Q6IHNvLCBpY2ggaGF1IG1hbCBlYmVuIGRlbiB3aWRlcmxpY2ggd2VnLCBkZXIgZXJob2x0IHNpY2ggc29uc3QKTGlsbGVicm9yIHNhZ3Q6IHp1IHN0YXJrIDopCkxpbGxlYnJvciBncmluc3QuCgpTdGluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWFnaWVybGFiZXIgKEFuYXRvbCwgIDQuIEZlYiAxOTk5LCAxOTo0Njo1OCk6Cn4jISBybj1BY3JpbW9uIHJ0PTkxODE1NzQ0MCByZz1zY2htYXJybgp+IyEgdGlkPTkxODA4NDM1MwpUdXQgbWlyIGxlaWQgZnVlciBEaWNoLCBBY3JpbW9uLiBVbmQgYXVjaCBmdWVyIEphbWVzb24sIGRlciBkZXIKRnJhdWVud2VsdCBkaWUgSW50ZWxsaWdlbnosIGRpZSBtYW4gYnJhdWNodCwgdW0gbmljaHQgYmVpIGplZGVyCnNpY2ggYmlldGVuZGVuIEdlbGVnZW5oZWl0IHZvbiBlaW5lbSBNYW5uIGF1ZiBhbGxlIE1hZW5uZXIgenUKc2NobGllc3NlbiwgbmljaHQgenVnZXN0ZWhlbiBtb2VjaHRlLgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQmVrYW5udG1hY2h1bmchIChUZWRkeSwgIDQuIEZlYiAxOTk5LCAyMDowOTo0Myk6Cn4jISBvbj1UZWRkeSBvdD05MTgxNTg5Mjcgb2c9cGFydHkKfiMhIHJuPUtleSBydD05MTgxNTI5MjAgcmc9cGFydHkKfiMhIHRpZD05MTgwNDU0NTkKTXVkZGVya2VpbGUgYWxzIEVpbndlaWh1bmcgZnVlciBkZW4gbmV1ZW4gRU0/CgpUZWRkeSwgaXMgZGFiZWkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkcmVja2lnZSB3aXR6ZSAoSmVuYW5kcmEsICA0LiBGZWIgMTk5OSwgMjE6MDI6NTEpOgpkYXJmIGljaCBhdWNoIG1hbD8gc28gYWxzIGZyYXU/IGFsc28gLSBpY2gga2FubiBqZXR6dCBuYXR1ZXJsaWNoIG5pY2h0IGZ1ZXIKYW5kZXJlIHNwcmVjaGVuLCBhYmVyIGljaCBmaW5kZSB3aXIgc2luZCBrZWluZSBhcm1lbiBzY2h3YWNoZW4gd2VzZW4sIGRpZQptYW4obikgYmVzY2h1ZXR6ZW4gbXVzcywgd2lyIGtvZW5uZW4gdW5zIGR1cmNoYXVzIHNlbGJlciB3ZWhyZW4sIHVuZCBpY2gKcGVyc29lbmxpY2ggaGFiZSBmdWVyIGRlbiBlaW4gb2RlciBhbmRlcmVuIGRyZWNraWdlbiB3aXR6IHNvZ2FyIGVpbiBncmluc2VuCnVlYnJpZy4gc28sIGtvZW5udGVuIHdpciBkYXMgdGhlbWEgamV0enQgYmVlbmRlbj8KCkplbmFuZHJhCiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWFnaWVybGFiZXIgKEthcnRvZmZlbCwgIDQuIEZlYiAxOTk5LCAyMTozMjo1MCk6Cn4jISBybj1KYW1lc29uIHJ0PTkxODA5MDg5NCByZz1zY2htYXJybgp+IyEgdGlkPTkxODA4NDM1MwoKQWVoLCBpY2ggYmluIGtlaW4gS2VybCB1bmQgaWNoIHJlZyBtaWNoIG5pY2h0IGF1Zi4uLgoKV2FzIFJpa3VzIGRhIGdlc2NocmllYmVuIGhhdCBzaWVodCBmdWVyIG1pY2ggbmFjaCBkZXIgQXVzZ2FiZSBkZXMgTXVkcyBhdWYKc2VpbmVuIEJlZmVobCBhdXMsIGhhdCBhbHNvIHdvaGwgd2VuaWdlciB3YXMgbWl0IFJpa3VzIHBlcnNvZW5saWNoZXIgTWVpbnVuZwp6dSB0dW4uLi4KCidUb2ZmZWwgLSBicmF1Y2h0ZSBrZWluZW4gRS1tYW5uLXplLCBkZXIgaW4gbmljaHQgdm9yaGFuZGVuZSBCcmVzY2hlbiBzcHJpbmd0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW0gZGllc2UgWmVpdCA/PyAoQXNtb2RpcywgIDQuIEZlYiAxOTk5LCAyMzoyMjozNik6Cn4jISBybj1SdW1hdGEgcnQ9OTE4MTI1MTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4MTI1MTI3ClN0dWRlbnRlbiBzdGVoZW4gZXJzdCB1bSAxMTozMCBhdWYsIGFuZGVyZSBtdWVzc2VuIHp1IGRpZXNlciB6ZWl0IGFyYmVpdGVuIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBVbSBkaWVzZSBaZWl0ID8/IChBbHBoYSwgIDQuIEZlYiAxOTk5LCAyMzoyNToyOSk6Cn4jISBybj1Bc21vZGlzIHJ0PTkxODE3MDU1NiByZz1zY2htYXJybgp+IyEgdGlkPTkxODEyNTEyNwpFcyBzaW5kIFNlbWVzdGVyZmVyaWVuISBXZXIgc3RlaHQgZGEgc2Nob24gMTEuMzBVaHIgYXVmIC0gZGllIE1lbnNhIG1hY2h0IGRvY2gKZXJzdCAxNC4wMCB6dSAtIGRhIHJlaWNodHMgd2VubiBtYW4gMTMuMDAgVWhyIGF1ZnN0ZWh0LiBEYW5uIGthbm4gbWFuIGltbWVyCm5vY2ggZ2VtdWV0bGljaCBEdXNjaGVuIHVuZCBzaWNoIGF1ZiBkZW4gV2VnIG1hY2hlbjopCkFscGhhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVW0gZGllc2UgWmVpdCA/PyAoQW5hdG9sLCAgNC4gRmViIDE5OTksIDIzOjI2OjA5KToKfiMhIHJuPUFscGhhIHJ0PTkxODE3MDcyOSByZz1zY2htYXJybgp+IyEgdGlkPTkxODEyNTEyNwpQYXBwbmFzZSwgZXMgaXN0IGFsbGVyaG9lY2hzdGVucyB2b3JsZXN1bmdzZnJlaWUgWmVpdC4KCkFuYXRvbCAtIGhhdCBnZW51ZyB6dSB0dW4sIFZvcmxlc3VuZ2VuIGhpbiBvZGVyIGhlci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBVbSBkaWVzZSBaZWl0ID8/IChBbHBoYSwgIDQuIEZlYiAxOTk5LCAyMzoyNzowMyk6Cn4jISBybj1BbmF0b2wgcnQ9OTE4MTcwNzY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4MTI1MTI3CkphIGRhcywgd2FzIG1hbiB6dSB0dW4gaGF0LCBtYWNodCBtYW4gendpc2NoZW4gMC4wMCBVaHIgdW5kIDA0LjAwIFVociAtIGlzdApkb2NoIGVoIGRpZSBrcmVhdGl2c3RlIFplaXQuCkFscGhhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFtaXQgQXNtb2RpcyB3YXMgenUgbGVzZW4gaGF0IChaaW5vLCAgNS4gRmViIDE5OTksIDAwOjAzOjU4KToKQXNtb2RpcyBpc3QgZG9vZi4KWmlubwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhbWl0IEFzbW9kaXMgd2FzIHp1IGxlc2VuIGhhdCAoQW5hdG9sLCAgNS4gRmViIDE5OTksIDAwOjA0OjIyKToKfiMhIHJuPVppbm8gcnQ9OTE4MTczMDM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4MTczMDM4Ck5pY2h0cyBOZXVlcyBhdWYgZGVyIFdlbHQuCgpBbmF0b2wgOm8pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhbWl0IEFzbW9kaXMgd2FzIHp1IGxlc2VuIGhhdCAoQXNtb2RpcywgIDUuIEZlYiAxOTk5LCAwMDowNDo0MSk6Cn4jISBybj1aaW5vIHJ0PTkxODE3MzAzOCByZz1zY2htYXJybgp+IyEgdGlkPTkxODE3MzAzOApaaW5vIGlzdCBlaW4gU2FjaHNlIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEYW1pdCBBc21vZGlzIHdhcyB6dSBsZXNlbiBoYXQgKFppbm8sICA1LiBGZWIgMTk5OSwgMDE6MzU6NTQpOgp+IyEgcm49QXNtb2RpcyBydD05MTgxNzMwODEgcmc9c2NobWFycm4KfiMhIHRpZD05MTgxNzMwMzgKR2FyIG5pY2h0IHdhaHIuIERhcmF1cywgZGFzcyBpY2ggaW4gU2FjaHNlbiBzdHVkaWVyZSwgenUgc2NobHVzc2ZvbGdlcm4sIGRhc3MKaWNoIGF1Y2ggZWluIFNhY2hzZSBzZWksIGlzdCBmYWxzY2guIEljaCBoYWIgaGllciBuaWNodCBtYWwgbWVpbmVuCkhhdXB0d29obnNpdHouCgpaaW5vIChTYWNoc2VuLUFuaGFsdGluZXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEYW1pdCBBc21vZGlzIHdhcyB6dSBsZXNlbiBoYXQgKEFzbW9kaXMsICA1LiBGZWIgMTk5OSwgMDI6MDM6MDQpOgp+IyEgcm49WmlubyBydD05MTgxNzg1NTQgcmc9c2NobWFycm4KfiMhIHRpZD05MTgxNzMwMzgKV2VubiBkdSBzY2hsdXNzZm9sZ2Vyc3QsIGRhc3MgaWNoIGRvb2YgYmluLCBkYW5uIGRhcmYgaWNoIGViZW4gYXVjaCB3YXMKYW5kZXJlcyBzY2hsdXNzZm9sZ2VybiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERhbWl0IEFzbW9kaXMgd2FzIHp1IGxlc2VuIGhhdCAoQXNtb2RpcywgIDUuIEZlYiAxOTk5LCAwMjowMzo1MCk6Cn4jISBybj1Bc21vZGlzIHJ0PTkxODE4MDE4NCByZz1zY2htYXJybgp+IyEgdGlkPTkxODE3MzAzOApBdXNzZXJkZW0gaXN0IFNhY2hzZW4tQW5oYWx0IGZ1ZXIgbWljaCBkYXNzZWxiZSwgZ2Vob2VydCBkb2NoIGFsbGVzIHp1Ckdyb3NzLVNhY2hzZW4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYWphLCBkaWUgSHlkcmEgLi4uIChBbmFjcmlvbiwgIDUuIEZlYiAxOTk5LCAwMjozNDoxNik6CgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBIeWRyYWtvcGZzXSBBbmFjcmlvbiwgZGllIEh5ZHJhIGlzdCBtaXIgbGllYmVyLi4uCgpUYXRzYWVjaGxpY2ggPz8/CgpBbmFjKiAtIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEYW1pdCBBc21vZGlzIHdhcyB6dSBsZXNlbiBoYXQgKEFscGhhLCAgNS4gRmViIDE5OTksIDAyOjM3OjM5KToKfiMhIHJuPVppbm8gcnQ9OTE4MTc4NTU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4MTczMDM4Ck5hamEuLi4uTWFnZGVidXJnIGxpZWd0LCB3ZW5uIG1hbiBkZW4gRGlhbGVrdCBzaWNoIGhpZXIgc28gYW5ob2VydCBkb2NoIHNjaG9uCmluIGluIFNhZ3Nlbi4KQWxwaGEsIGtvbW10IG5pY2h0IGF1cyBNYWdkZWJ1cmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEYW1pdCBBc21vZGlzIHdhcyB6dSBsZXNlbiBoYXQgKE1haGF0bXUsICA1LiBGZWIgMTk5OSwgMDg6NDc6NTUpOgp+IyEgcm49QWxwaGEgcnQ9OTE4MTgyMjU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4MTczMDM4CkllaCwgZGFubiBiaXN0IER1IGphIGdlb2dyYXBoaXNjaCBlaW4gQnJhbmRlbmJ1cmdlci4gU28gZWluZSBhcm1lIFd1cnN0LgoKLi4uIGthbm4gbWFsIGVpbmVyIHdhcyBpbiBkaWUgWmVpdHVuZyBzY2hyZWliZW4gPwoKTWFoYXRtYSBtYWNodCBNdWRkZW4gZHVtbS4KTWFoYXRtdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSFAtU29yZ2VuIChHb3JvZywgIDUuIEZlYiAxOTk5LCAwOTo1NzozOCk6Ck5lYiBmcmFndCBBcmtzaGF0IG5hY2ggV2VuIG1hZ3N0IGR1IGxpZWJlciwgU2hhcmlhIG9kZXIgbWljaCA/LiAKQXJrc2hhdCBrcmF0enQgc2ljaCBhbSBLb3BmIHVuZCBzYWd0OiBEYXp1IHdlaXNzIGljaCBsZWlkZXIgbm9jaCBuaWNodHMsIGFiZXIKaWNoIHdlcmRlIG1pY2ggYmVpIEdlbGVnZW5oZWl0IG1hbCBzY2hsYXUgbWFjaGVuLgoKR29yb2cgd2Vpc3MgZXMgZ2VuYXUgKDssIG9kZXIgZG9jaCBuY2lodCA/IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVW0gZGllc2UgWmVpdCA/PyAoQm9pbmcsICA1LiBGZWIgMTk5OSwgMTA6MTY6MjIpOgp+IyEgcm49WmFybml5YSBydD05MTgxNDkwMjMgcmc9c2NobWFycm4KfiMhIHRpZD05MTgxMjUxMjcKR2VuYXUgZ2Vub21tZW4gd2FyIGRpZSBMZWl0dW5nIHp3aXNjaGVuIEtvZWxuIHVuZCBEb3J0bXVuZCBrYXB1dHQuCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFVtIGRpZXNlIFplaXQgPz8gKFJpbmdvciwgIDUuIEZlYiAxOTk5LCAxMDoxODoyNyk6Cn4jISBybj1Cb2luZyBydD05MTgyMDk3ODIgcmc9c2NobWFycm4KfiMhIHRpZD05MTgxMjUxMjcKV29iZWkgbWlyIGltbWVyIG5vY2ggbWFsIGplbWFuZCBlcmtsYWVyZW4gbXVzcywgd2FydW0gZGllIEtvZWxuZXIgZGFubiBuaWNodAppbnMgTUcga29lbm5lbi4KClZvbiBEb3J0bXVuZCBhdXMgc2luZCBkaWUgbmFlY2hzdGVuIGJlaWRlbiBTdGF0aW9uZW4gS29lbG4gdW5kIGRhbm4gTXVlbnN0ZXIuCkRlbW5hY2ggc29sbHRlIHNpY2ggS29lbG4gcmVjaHQgd2VuaWcgZGFydW0ga3VlbW1lcm4sIHdhcyBtaXQgRG9ydG11bmQgbG9zCmlzdCwgb2Rlcj8KClJpbmdvci4gWndlcmcuIE11c3MgbmljaHQgYWxsZXMgdmVyc3RlaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVW0gZGllc2UgWmVpdCA/PyAoQm9pbmcsICA1LiBGZWIgMTk5OSwgMTA6MTk6MzApOgp+IyEgcm49UmluZ29yIHJ0PTkxODIwOTkwNyByZz1zY2htYXJybgp+IyEgdGlkPTkxODEyNTEyNwpmaW5nZXIgMTI3MkBub2MuZGZuLmRlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE1vcmdvdGgsICA1LiBGZWIgMTk5OSwgMTM6Mzg6MTMpOgpbU2VoZXI6RGllZGVyXSB0b3QKTWluZGJsYWRlICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpbVG9kOkxhcnNdIEVpbiBIb2VsbGVuaHVuZCBoYXQgZ2VyYWRlIERpZWRlciB1bWdlYnJhY2h0LgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFVtIGRpZXNlIFplaXQgPz8gKEFjcmltb24sICA1LiBGZWIgMTk5OSwgMTc6MDY6NDEpOgp+IyEgcm49QWxwaGEgcnQ9OTE4MTcwODIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4MTI1MTI3CldvaGwgZWhlciB6d2lzY2hlbiAxNC4wMCBVaHIgKE1lbnNhKSB1bmQgNC4wMCBVaHIgKG5hY2h0cyksIGRhcyB0cmlmZnRzIHNjaG9uCmVoZXIuLi4KCkdlaG9lcnQgTXVkZGVuIGVpZ2VudGxpY2ggZGF6dT8KCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVyaXNhIChEZWVwYmx1ZSwgIDUuIEZlYiAxOTk5LCAxNzo0Njo0Nik6Cj4gZnJhZ2UgbWVyaXNhIG5hY2ggbGVpY2hlCk1lcmlzYSBzY2hhdXQgbnVyIHZlcnRyYWV1bXQgaW4gZGllIEZlcm5lLgoKRGVlcEJsdWUgZmluZGV0IGRhcyBQaWV0YWV0c2xvcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4gKEFjcmltb24sICA1LiBGZWIgMTk5OSwgMjA6MzA6MjQpOgo+IG5uCls8TWFzdGVSPjpHZW9yZGldIHVwCls8TWFzdGVSPjo8TWFzdGVSPl0gRGFzIE1VRCBsYWV1ZnQgamV0enQgMyBTdHVuZGVuLCAwIE1pbnV0ZW4gdW5kIDM5IFNla3VuZGVuLgpbPE1hc3RlUj46PE1hc3RlUj5dIEVzIHNpbmQgbW9tZW50YW4gNTEgU3BpZWxlciBlaW5nZWxvZ2d0OyBkYXMgTWF4aW11bSBsYWcKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBoZXV0ZSBiZWkgMTA5IHVuZCBkZXIgUmVrb3JkIGJpc2hlciBpc3QgMjE0LgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgpQbGF0dCB3aXJmdCBlaW5lbiBza2VwdGlzY2hlbiBCbGljayBpbiBkaWUgUnVuZGUuCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCgpQYXNzZW5kIDotKQoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuaXggKEFzbW9kaXMsICA1LiBGZWIgMTk5OSwgMjE6NTY6MTUpOgpIbW0sIG1pciBpc3QgbnVyIGZhZCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFyZ2ggOykgKEFuYXRvbCwgIDUuIEZlYiAxOTk5LCAyMjozOTo1NSk6ClBhZHJlaWMgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRHUgdGVpbHN0IFBhcmFjZWxzdXMgbWl0OiB3ZW5uIG1hbiB2b20gVGV1ZmVsIHNwcmljaHQuClBhcmFjZWxzdXMgdGVpbHQgRGlyIG1pdDogV2VubiBtYW4gdm9tIHRldWZlbCAuLi4gZ2VuYXUKClVoLW9oLgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdXMgZGVyIFJlaWhlICJGTFcgZGVyIFZlcmdhbmdlbmhlaXQiOiBGTFcgMTA5MiAoQW5hdG9sLCAgNi4gRmViIDE5OTksIDAyOjE5OjAyKToKW1NlaGVyOkZyZWl0YWddIHNjaGVpc3NlLi4uIHdlaXNzIGplbWFuZCwgd2llIGljaCBkYXMgZG9vZmUgdGFtYWhvcm55IHdpZWRlcgpbU2VoZXI6RnJlaXRhZ10gbG9zd2VyZGVuIGthbm4gPyA7KApbU2VoZXI6RGhvamFrdF0gc3RlcmJlbi4KW1NlaGVyOkZyZWl0YWddIHRvbGwuLi4gZGFubiBlcmxlYnQgaWhyIGpldHp0IHdvaGwgYmFsZCBkZW4gc3VpemlkIGVpbmVzCltTZWhlcjpGcmVpdGFnXSBjaGFvdGVuIDsoCltUb2Q6TGFyc10gRWluIFRhbWFob3JueSBoYXQgZ2VyYWRlIEZyZWl0YWcgdW1nZWJyYWNodC4KW1RvZDpFaW4gVGFtYWhvcm55XSBFbmRsaWNoIGJpc3QgRHUgbWljaCBsb3MuLi4uc2Nob2VuLCBuaWNodCB3YWhyPyA6KQpbQmVpbGVpZDpEaG9qYWt0XSB0cmVmZmVyICYgdmVyc2Vua3QuCgpBbmF0b2wgOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpiZXJlY2hlbmJhcmVyIE11cm1lbCA7LSkgKEJyYW5kaXIsICA2LiBGZWIgMTk5OSwgMDM6MDU6NTUpOgpCcmFuZGlyIHNpbmd0ICdJJ20gYSBiaWcgYmlnIGJveSBpbiBhIGJpZyBiaWcgd29ybGQuLi4nLgpMZWlibml6IGdyaW5zdC4KQnJhbmRpciBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KTGVpYm5peiBzYWd0OiBobT8KQnJhbmRpciBzYWd0OiBpY2ggaGFiIGdlcmFkZSBtYWwgdWViZXJsZWd0LCB3YXMgc2ljaCB3b2hsIGF1ZiBib3kgcmVpbXQgOikKUGFudG9mZmVsIGtyYWVjaHp0OiBQYW50b2ZmZWwgaXN0IGRhIGFuZGVyZXIgTWVpbnVuZywgQnJhbmRpciAuLi4ga3Jycm9vYWFhCkxlaWJuaXogc2FndDogdW5kPwpMZWlibml6IGZhZW5ndCBhbiB6dSBkZW5rZW4uCktsZWluZSBSYXVjaHdvZWxrY2hlbiBzdGVpZ2VuIGF1Zi4uLgpCcmFuZGlyIHNhZ3Q6IG5hIGRhcyBlaW56aWdlIHdhcyBtaXIgc28gZWluZmFlbGx0IGlzdCB0b3ksIHVuZCBkYW5uIHdpcmQgZGFzCkJyYW5kaXIgc2FndDogYWJlciBldHdhcyBzY2hsdWVwZnJpZyA6KQpMZWlibml6IGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCkJyYW5kaXIgZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KQnJhbmRpciBmcmFndDogU29sbCBpY2ggZGFzIG1hbCBsYXV0IHNpbmdlbiA/IGljaCB3ZXR0ZSAxMDAwMCBHb2xkc3R1ZWtjZSwgZGFzCm11cm1lbCByZWFnaWVydD8KTGVpYm5peiBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpMZWlibml6IHNhZ3Q6IGljaCBhdWNoCkxlaWJuaXogc2FndDogbWFjaCBtYWwKQWxsZ2VtZWluOkJyYW5kaXIgSSdtIGEgYmlnIGJpZyBib3kgd2l0aCBhIGJpZyBiaWcgdG95Li4uCkxlaWJuaXogZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KTGVpYm5peiBzYWd0OiAxCkxlaWJuaXogc2FndDogMgpMZWlibml6IHNhZ3Q6IDMKQWxsZ2VtZWluOkRlYnVnZ2VyIGFsdGUgc2F1CkxlaWJuaXogc2FndDoga2V1aW4gbXVybWVsCkFsbGdlbWVpbjpEcm9sbGkgdG95PWxlaWJuaXoKTGVpYm5peiBzYWd0OiBhaGhoClBhbnRvZmZlbCBrcmFlY2h6dDogLi4uIGtldWluIG11cm1lbCAuLi4ga2V1aW4gbXVybWVsIC4uLiAKTGVpYm5peiBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KQWxsZ2VtZWluOkJyYW5kaXIganViZWx0CkFsbGdlbWVpbjpCcmFuZGlyICp3YWVseioKQWxsZ2VtZWluOkxlaWJuaXoga2ljaGVydApBbGxnZW1laW46QnJhbmRpciBEcm9sbGksIGR1IGJpc3Qgc28gYmVyZWNoZW5iYXIKQWxsZ2VtZWluOkxlaWJuaXogZ2lidCBicmFuZGlyIDEwMDAwIG11ZW56ZW4KQWxsZ2VtZWluOkJyYW5kaXIgaGF0IDEwMDAwIE11ZW56ZW4gZ2V3b25uZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBiZXJlY2hlbmJhcmVyIE11cm1lbCA7LSkgKEFuYXRvbCwgIDYuIEZlYiAxOTk5LCAwMzowNjo1NSk6Cn4jISBybj1CcmFuZGlyIHJ0PTkxODI3MDM1NSByZz1zY2htYXJybgp+IyEgdGlkPTkxODI3MDM1NQpTdGVsbCBkYXMgWm11ZC1QYXJzaW5nIG1hbCBhdXMgOykKCkFuYXRvbCwgd2Vpc3MgZXMgd2llIGltbWVyIGJlc3NlcgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogYmVyZWNoZW5iYXJlciBNdXJtZWwgOy0pIChCcmFuZGlyLCAgNi4gRmViIDE5OTksIDAzOjA4OjE0KToKfiMhIHJuPUFuYXRvbCBydD05MTgyNzA0MTUgcmc9c2NobWFycm4KfiMhIHRpZD05MTgyNzAzNTUKSGFiIGljaCBqYSwgYWJlciBkaWUgS2xhbW1lcm4gd2VyZGVtIGJlaW0gU2VuZCBhdXMgZGVtIEVkaXRvciB0cm90emRlbSBuaWNodAp1ZWJlcm5vbW1lbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogYmVyZWNoZW5iYXJlciBNdXJtZWwgOy0pIChLbnVydCwgIDYuIEZlYiAxOTk5LCAwMzowODozNCk6Cn4jISBybj1CcmFuZGlyIHJ0PTkxODI3MDQ5NCByZz1zY2htYXJybgp+IyEgdGlkPTkxODI3MDM1NQptYWNoIGVpbiB+IGRhdm9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBiZXJlY2hlbmJhcmVyIE11cm1lbCA7LSkgKEFuYXRvbCwgIDYuIEZlYiAxOTk5LCAwMzowODo1MCk6Cn4jISBybj1CcmFuZGlyIHJ0PTkxODI3MDQ5NCByZz1zY2htYXJybgp+IyEgdGlkPTkxODI3MDM1NQpmdHA6Ly90Zi50Y3AuY29tL3B1Yi90aW55ZnVndWUvdGYtNDBnMy50YXIuZ3oKCkFuYXRvbCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTmFjaHR3aW5kLCAgNi4gRmViIDE5OTksIDA0OjE4OjA0KToKCkR1IHRlaWxzdCBBbmF0b2wgbWl0OiBlaW5lciBkZXIgZ3J1ZW5kZSwgd2FydW0gaWNoIGtlaW4gZnJldW5kIHZvbiBwYXJhcyBzdGlsCkR1IHRlaWxzdCBBbmF0b2wgbWl0OiBiaW4sIGRlciBraWxsdCBhcmcgbGVpY2hmZXJ0aWcKQW5hdG9sIHRlaWx0IERpciBtaXQ6IEhtLCBkYXMgaXN0IGVpbiBLbm9wZiBhbiBkZXIgV2FuZC4gWzA0OjE0XQpbVG9kOkxhcnNdIEVpbiBrbGVpbmVyIEtub3BmIGhhdCBnZXJhZGUgQW5hdG9sIHVtZ2VicmFjaHQuCltUb2Q6RWluIGtsZWluZXIgS25vcGZdIFVuZCBpY2ggc2FjaCBub2NoOiBMYXNzIGVzIQoKTWFsIHdpZWRlciBrbGFzc2UgOikKCk5hY2h0d2luZC4KCnBzOiBqYWphIGlzdCBmYWtlLCBpY2ggd2Vpc3MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2hlaXNzdHJpZ2dlcj8gKEFuYXRvbCwgIDYuIEZlYiAxOTk5LCAwNToyMDoyMyk6Cj4gaHVlcGYKQiBPIEkgTiBHICEhIER1IGh1ZXBmc3QgaW4gZGVyIEdlZ2VuZCBoZXJ1bS4KPiBBc2FuaWVsIHNwcmluZ3QgcGxvZXR6bGljaCBpbSBLcmVpcyBoZXJ1bS4KCkJsb2VkZXIgQWZmZS4KQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTlBDIGRpZSBzaWNoIHNlbGJzdCBiZXNjaGFlZnRpZ2VuIDopIChNY3dvbGYsICA2LiBGZWIgMTk5OSwgMDc6MjM6MzApOgoKRGllIEVsc3RlciBrbGF1dCBlaW5lciBFbHN0ZXIgZXR3YXMuICAKClNjaG9uIG9rLi4uLmhhYmVuIGRpZSBsYW5nZXdlaWxlID8gCgpNY1dvbGYgOikgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphdWNoIGJlbGViZW5kIChDeW1vbmssICA2LiBGZWIgMTk5OSwgMTM6NDQ6NDQpOgpvaCB6ZXJmcmV0dGVsdGVyIGdydW56d2FuemxpbmcKZGVpbiBoYXJuZ2VkcmFlbmdlIGlzdCBmdWVyIG1pY2gKd2llIHNjaG5hdHRlcmZsZWNrIGF1ZiBiaWVuZW5zdGljaAoKZ3J1cHAsIGljaCBiZXNjaHdvZXJlIGRpY2gKbWVpbiBwdW56aWcgdHVydGVsZHJvbQp1bmQgZHJhZW5nZWwgcmVpZmlnIG1pY2ggbWl0IGtyaW5rbGVuIGJpbmRlbHdvZXJkZWxuCmRlbm4gc29uc3Qgd2VyZCBpY2ggZGljaCByYWVuZHJuIGluIGRlaW5lIGdvYmJlcndhcnplbgptaXQgbWVpbmVtIGJvZXJnZWxrcmFuemUsCndhcnQncyBudXIgYWIKCmQuYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhdWNoIGJlbGViZW5kIChEaWVkZXIsICA2LiBGZWIgMTk5OSwgMTM6NDY6MDQpOgp+IyEgcm49Q3ltb25rIHJ0PTkxODMwODY4NCByZz1zY2htYXJybgp+IyEgdGlkPTkxODMwODY4NApXYXMgaGF0IGRhcyBtaXQgU2NobWFycm4genUgdHVuPyBJY2ggd2lsbCBkYXMgaW4gS3VsdHVyIHNlaGVuIDstKQoKRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbGhvbGRyaWVsIDopIChEYXJrd2luZywgIDYuIEZlYiAxOTk5LCAxNDozNDo1OCk6CkR1IG1hY2hzdCBlaW5lIGVyZm9sZ3JlaWNoZSBGaW50ZSBnZWdlbiBFbGhvbGRyaWVsLgpEdSB2ZXJzZXR6dCBFbGhvbGRyaWVsIGVpbmVuIGhlaW10dWVja2lzY2hlbiBLYW1wZnRyaXR0LgpEdSBzY2hsYWVnc3QgRWxob2xkcmllbCBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgpEdSBzZXR6dCBlaW5lbiBtb2VyZGVyaXNjaGVuIFRvZGVzc3Rvc3MgZ2VnZW4gRWxob2xkcmllbCBhbi4KRWxob2xkcmllbCB3YW5kZXJ0IG5hY2ggV2VzdGVuLgpEdSB2ZXJmb2xnc3QgamV0enQgRWxob2xkcmllbC4KRHUgcHVsdmVyaXNpZXJzdCBFbGhvbGRyaWVsLgoKRGFya3dpbmcsIGtvbW10IHNpY2ggdm9yIHdpZSBlaW4gUGFyYW9yayA+OikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERhbWl0IEFzbW9kaXMgd2FzIHp1IGxlc2VuIGhhdCAoU3RvcGRlbmJ1cywgIDYuIEZlYiAxOTk5LCAxNToxNzowOSk6Cn4jISBybj1NYWhhdG11IHJ0PTkxODIwNDQ3NSByZz1zY2htYXJybgp+IyEgdGlkPTkxODE3MzAzOAphaCBNYWhhdG1hIHdhcyBoYXN0IGdlZ2VuIEJyYW5kZW5idXJnID8gSWNoIHdlaXNzIG5pY2gsIGxpZWJlciBuZW4KQnJhbmRlbmJ1cmdlciBzZWluLCBhbHMgbmVuIFNhY2hzZSA6KQpXaWUgd2FlcnMgbWl0IG5lciBkaXNrdXNzaW9uLCB3ZWxjaGVzIEJ1bmRlc2xhbmQgd29obCBkYXMgYmVzc2VyZSBpc3QgPwoKU2RiCgpQLlMuIHp1bSBnbHVlY2sgc2luZCB3aXIgc2Nob24gaW4gZGVyIHJpY2h0aWdlbiBSdWJyaWsgLi4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbmhhbHQgdmVyc3VzIC4uLiB3YXMgPyAoQW5hdG9sLCAgNi4gRmViIDE5OTksIDE3OjAwOjE2KToKTWVzc2FnZSBmcm9tIFBhZHJlaWM6CltFbmQgb2YgbWVzc2FnZV0KCldlbm4gZXIgZG9jaCBpbW1lciBzbyB3ZW5pZyBTY2htYXJybiBlcnphZWhsZW4gd3VlcmRlLi4uIDpvKQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChSaW5nb3IsICA2LiBGZWIgMTk5OSwgMTc6MDI6MjUpOgpEZWluIEZyZXVuZCBLbnVydCB0ZWlsdCBEaXIgbWl0OiBiaXR0ZSBiZXRldCBmdWVyIG1pY2ggbWl0IGRhcyBqZXR6dCBrZWluIG9yawpEZWluIEZyZXVuZCBLbnVydCB0ZWlsdCBEaXIgbWl0OiBrb21tdApbVG9kOkxhcnNdIEVpbiBPcmsgaGF0IGdlcmFkZSBLbnVydCB1bWdlYnJhY2h0LgoKUmluZ29yLiBBdGhlaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNYWdpZXJsYWJlciAoQ3lhbm4sICA3LiBGZWIgMTk5OSwgMDE6NDg6MjApOgp+IyEgcm49SmFtZXNvbiBydD05MTgwOTA4OTQgcmc9c2NobWFycm4KfiMhIHRpZD05MTgwODQzNTMKV2llc28gcmVnZW4gc2ljaCBlaWdlbnRsaWNoIGltbWVyIG51ciBNYWVubmVyIHVlYmVyIHNvd2FzIGF1Zj8KCiAgIEN5YW5uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGcmFueiBGdWNocyBXaXR6ZSAoR3JpbW1ib3JuLCAgNy4gRmViIDE5OTksIDAxOjU1OjQ5KToKfiMhIG9uPUtleSBvdD05MTgxNDM1NzYgb2c9d2l0emUKfiMhIHJuPURpZWRlciBydD05MTgxNDM0NzIgcmc9d2l0emUKfiMhIHRpZD05MTgxNDMyNzMKQWNoIGRlciBEZXBwIC4uLi4KCkhtbSBuZW9uYXppc3Rpc2NoZSBhbHRlIERyZWNrc2F1IC4uLi4gYWxzbyBpY2ggaGFldHRlIGlobiBlaW5mYWNoIGFscyBkZXBwCmJlemVpY2huZXQgOikKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRnJhbnogRnVjaHMgV2l0emUgKEdyaW1tYm9ybiwgIDcuIEZlYiAxOTk5LCAwMTo1NTo1NSk6Cn4jISBvbj1EaWVkZXIgb3Q9OTE4MTQzNjQ1IG9nPXdpdHplCn4jISBybj1LZXkgcnQ9OTE4MTQzNTc2IHJnPXdpdHplCn4jISB0aWQ9OTE4MTQzMjczCnNvcnJ5IG1pciBoYXRzIGRhIGdsYXR0IGRlbiBIdXQgZ2VsdXBmdC4uLiB3b2hsIGRlc2hhbGIsIHdlaWwgaWNoIGRhcyBnZXN0ZXJuCmFiZW5kIGluIGRlciBUYWdlc3NjaGF1IGdlc2VoZW4gaGFiLCB3aWUgZGFzIGFiZ2luZyBpbSBHZXJpY2h0c3NhYWwuLi4gOigKCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRnJhbnogRnVjaHMgV2l0emUgKEdyaW1tYm9ybiwgIDcuIEZlYiAxOTk5LCAwMTo1NjowMyk6Cn4jISBvbj1TbWVhZ29sIG90PTkxODE0NzU5OCBvZz13aXR6ZQp+IyEgcm49RGllZGVyIHJ0PTkxODE0MzY0NSByZz13aXR6ZQp+IyEgdGlkPTkxODE0MzI3MwpkZXIgTWFubiBoYXQgYW5nZWJsaWNoIG5lbiBJUSB2b24gdWViZXIgMTMwIC4uLiB1bmQgbmVvbmF6aXN0aXNjaCB3dWVyZCBpY2gKbmljaCBzYWdlbiAuLi4gZXIgd2FyIHdvaGwgaW4gc2VpbmVuICJhZXVzc2VydW5nZW4iIGdlZ2VuIGFsbGVzIHVuZCBqZWRlbiAuLi4KenVkZW0gLi4gZGllIGJlaWRlbiBoYWVuZGUgaGF0cyBpaG0gYWJnZWZldHp0IHdlaWwgZXIgZGllIGxldHp0ZW4gcGFhciBncmFtbQpzcHJlbmdzdG9mZiBiZWkgc2VpbmVyIHZlcmhhZnR1bmcgbWFsIGViZW4gYW4gc2ljaCBzZWxic3QgYXVzcHJvYmllcnQgaGF0Ci4uLi4uCgoKb2RlciBzbyA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEZyYW56IEZ1Y2hzIFdpdHplIChHcmltbWJvcm4sICA3LiBGZWIgMTk5OSwgMDE6NTY6MDcpOgp+IyEgb249V29vZHkgb3Q9OTE4MTU0NTg2IG9nPXdpdHplCn4jISBybj1TbWVhZ29sIHJ0PTkxODE0NzU5OCByZz13aXR6ZQp+IyEgdGlkPTkxODE0MzI3MwpEYXJhbiBtZXJrdCBtYW4sIGRhc3MgSVEgbmljaHRzICh3ZW5pZykgbWl0IEludGVsbGlnZW56IHp1IHR1biBoYXQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRnJhbnogRnVjaHMgV2l0emUgKEdyaW1tYm9ybiwgIDcuIEZlYiAxOTk5LCAwMTo1NjoxMyk6Cn4jISBvbj1LZXkgb3Q9OTE4MTU1OTc1IG9nPXdpdHplCn4jISBybj1Xb29keSBydD05MTgxNTQ1ODYgcmc9d2l0emUKfiMhIHRpZD05MTgxNDMyNzMKSG1tIGRhbm4gaXN0IGRpZSBGcmFnZSB3YXMgSW50ZXJsaWdlbnogZGFtaXQgenUgdHVuIGhhdCAuLi4uLgpTb3dhcyBpc3QgaWRpb3Rpc2NoLCB3YXMgYWJlciBub2NoIGxhbmdlIG5ldCBoZWlzc3QgZGFzIHNvbGNoZSBMZXV0ZSBkdW1tCnNpbmQuCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZyYW56IEZ1Y2hzIFdpdHplIChHcmltbWJvcm4sICA3LiBGZWIgMTk5OSwgMDE6NTY6MTkpOgp+IyEgb249R25vbWUgb3Q9OTE4MTYwOTA4IG9nPXdpdHplCn4jISBybj1EaWVkZXIgcnQ9OTE4MTQzNDcyIHJnPXdpdHplCn4jISB0aWQ9OTE4MTQzMjczCmljaCB3dWVyZGUgc29nYXIgc2FnZW46ICJyZWNodHNyYWRpa2FsZSBhbHRlIGR1bW1lIGRyZWNrc3NhdSIuCmVyc3QgbGV1dGUgdW1icmluZ2VuLCBkYW5uIHNpY2ggZXJ3aXNjaGVuIGxhc3NlbiB1bmQgZGFubiBhdWNoCm5vY2ggenUgYmxvZWRlIHNlaW4sIHNpY2ggc2VsYnN0IHVtenVicmluZ2VuLgpuYWphLCB2b3IgZGVtIGhhYmVuIHdpciBydWhlLCBzb2Zlcm4gZXIgbmljaHQgbGVybnQsIG1pdCBkZW4KZnVlc3NlbiBib21iZW4genUgYmFzdGVsbi4uLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZyYW56IEZ1Y2hzIFdpdHplIChHcmltbWJvcm4sICA3LiBGZWIgMTk5OSwgMDE6NTY6MjUpOgp+IyEgb249QWNyaW1vbiBvdD05MTgxNjEzODIgb2c9d2l0emUKfiMhIHJuPUdub21lIHJ0PTkxODE2MDkwOCByZz13aXR6ZQp+IyEgdGlkPTkxODE0MzI3MwphYmVyIGVyIGhhdCBkb2NoIG5pZW1hbmRlbiB1bWdlYnJhY2h0LgpMZXJuIGVyc3RtYWwgbGVzZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGcmFueiBGdWNocyBXaXR6ZSAoR3JpbW1ib3JuLCAgNy4gRmViIDE5OTksIDAxOjU2OjI5KToKfiMhIG9uPUdub21lIG90PTkxODE2MTQ4OCBvZz13aXR6ZQp+IyEgcm49QWNyaW1vbiBydD05MTgxNjEzODIgcmc9d2l0emUKfiMhIHRpZD05MTgxNDMyNzMKZXMgd2FlcmUgbnVyIGVpbmUgZnJhZ2UgZGVyIHplaXQgZ2V3ZXNlbi4uLgp6dW1pbmRlc3QgaXN0IGRpZSBhYnNpY2h0IGZhc3QgZ2VuYXVzbyBzY2hsaW1tIHdpZSBkaWUgdGF0LgpsZXJuIG1hbCBkZW5rZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGcmFueiBGdWNocyBXaXR6ZSAoR3JpbW1ib3JuLCAgNy4gRmViIDE5OTksIDAxOjU2OjMzKToKfiMhIG9uPUthcnRvZmZlbCBvdD05MTgxNjM1ODIgb2c9d2l0emUKfiMhIHJuPURpZWRlciBydD05MTgxNDM2NDUgcmc9d2l0emUKfiMhIHRpZD05MTgxNDMyNzMKSm8sIGhhYiBpY2ggYXVjaCBnZXNlaGVuLCBpY2ggaGFldHQgYWxsZXJkaW5ncyBuaWNoIHNvIGxhbmcgZ2V3YXJ0ZXQgbWl0IGRlbQpFbnRmZXJuZW5sYXNzZW4gKG9kZXIga25lYmVsbiBsYXNzZW4sIHdhZXIgZG9jaCBhdWNoIG1hbCB3YXMuLi4pCgonVG9mZmVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBGcmFueiBGdWNocyBXaXR6ZSAoR3JpbW1ib3JuLCAgNy4gRmViIDE5OTksIDAxOjU2OjM5KToKfiMhIG9uPUppZGR1IG90PTkxODE2MzY2OSBvZz13aXR6ZQp+IyEgcm49S2FydG9mZmVsIHJ0PTkxODE2MzU4MiByZz13aXR6ZQp+IyEgdGlkPTkxODE0MzI3MwpJcmdlbmR3aWUga2FubiBpY2ggYW4gZGllc2VyIERpc2t1c3Npb24gZGVuIFdpdHogKGRlciBSdWJyaWsgV2l0emUpIG5pY2h0CmVya2VubmVuLi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZyYW56IEZ1Y2hzIFdpdHplIChHcmltbWJvcm4sICA3LiBGZWIgMTk5OSwgMDE6NTY6NDcpOgp+IyEgb249U2FuZCBvdD05MTgxNjUxMjkgb2c9d2l0emUKfiMhIHJuPUFjcmltb24gcnQ9OTE4MTYxMzgyIHJnPXdpdHplCn4jISB0aWQ9OTE4MTQzMjczCm5pY2h0IGdhbnoga29ycmVrdDogRXMgc2luZCBzZWhyIHdvaGwgTWVuc2NoZW4gdW1zIExlYmVuIGdla29tbWVuLiBGRiBtZWludApkYXMgd2FyIG5pY2h0IGJlYWJzaWNodGlnLCBkaWUgU3RhYXRzYW53YWx0c2NoYWZ0IHdpcmZ0IGlobSBNb3JkIHZvci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdXBlcnVzZXIgKEdyaW1tYm9ybiwgIDcuIEZlYiAxOTk5LCAwMTo1Njo1Myk6Cn4jISBvbj1Bc21vZGlzIG90PTkxODE3MjIwNiBvZz13aXR6ZQp+IyEgcm49WmFybml5YSBydD05MTc5NzcyNjAgcmc9d2l0emUKfiMhIHRpZD05MTc5NzcyNjAKSGFzdCBkdSBpaG4gZGFzIGZlbnN0ZXIgcmF1c2dld29yZmVuID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZyYW56IEZ1Y2hzIFdpdHplIChHcmltbWJvcm4sICA3LiBGZWIgMTk5OSwgMDE6NTY6NTkpOgp+IyEgb249QXNtb2RpcyBvdD05MTgxNzI4NjQgb2c9d2l0emUKfiMhIHJuPUdub21lIHJ0PTkxODE2MDkwOCByZz13aXR6ZQp+IyEgdGlkPTkxODE0MzI3MwpIbW0sIGhvZmZlbnRsaWNoIGRhcmYgZXIgaW0gS25hc3QgbnVyIG1pdCBTdGFlYmNoZW4gZXNzZW4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBGcmFueiBGdWNocyBXaXR6ZSAoR3JpbW1ib3JuLCAgNy4gRmViIDE5OTksIDAxOjU3OjAzKToKfiMhIG9uPVdvb2R5IG90PTkxODE4OTI2MiBvZz13aXR6ZQp+IyEgcm49S2V5IHJ0PTkxODE1NTk3NSByZz13aXR6ZQp+IyEgdGlkPTkxODE0MzI3MwpJY2ggbWFjaHMga3VyejogSW50ZWxsaWdlbnogaGF0IGluIG1laW5lbiBBdWdlbiBhdWNoIHNlaHIgdmllbCBtaXQKInNvemlhbGVyIEludGVsbGlnZW56IiB6dSB0dW4gLSBkZW4gUmVzdCAoZGFzIE5hY2hkZW5rZW4gZHJ1ZWJlcikKdWViZXJsYXNzZSBpY2ggamV0enQgRGlyLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRnJhbnogRnVjaHMgV2l0emUgKEdyaW1tYm9ybiwgIDcuIEZlYiAxOTk5LCAwMTo1NzozNCk6Cn4jISBvbj1Tb25nb2t1IG90PTkxODMzNzA3NSBvZz13aXR6ZQp+IyEgcm49QWNyaW1vbiBydD05MTgxNjEzODIgcmc9d2l0emUKfiMhIHRpZD05MTgxNDMyNzMKRXIgaGF0IG1pbmRlc3RlbnMgMyBSb21hIG1pdCBuZXIgUm9ocmJvbWJlIHVtZ2VicmFjaHQuCih3YXIgYWxzIFNjaGlsZCBtaXQgbmVyIE5hemlwYXJvbGUgZ2V0YXJudCkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptcGEtd2Fobj8gOykgKFRvbGdhbiwgIDcuIEZlYiAxOTk5LCAwMjowMDowOSk6CgpubgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA5MSB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgOTIgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDkzIHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA5NCB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgOTUgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDk2IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA5NyB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgOTggdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDk5IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxMDAgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDEwMSB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMTAyIHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxMDMgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDEwNCB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMTA1IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0LgoKb2huZSB3b3J0ZSA6KQpUb2xnYW4sIGdyaW5zZW5kLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVW0gZGllc2UgWmVpdCA/PyAoRW1iZSwgIDcuIEZlYiAxOTk5LCAwOToyMDo0MSk6Cn4jISBybj1BbmF0b2wgcnQ9OTE4MTcwNzY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4MTI1MTI3CmFsc28gYmVpIHVucyBoZWlzc3QgZGFzIHRhdHNhZWNobGljaCBmZXJpZW4uIDotKQoKZ3J1c3MsIGVNQmVlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW50cmFnIChSaW5nb3IsICA3LiBGZWIgMTk5OSwgMTU6MzQ6MTApOgpIaWVybWl0IGJlYW50cmFnZSBpY2ggZGllIHNvZm9ydGlnZSBSdWVja3N0dWZ1bmcgdm9uIFN0aW5nIGlubmVyaGFsYiBkZXIKQ2hhb3NnaWxkZS4gV2VyIEFldXNzZXJ1bmdlbiB3aWU6CgpEZWluIEZyZXVuZCBTdGluZyB0ZWlsdCBEaXIgbWl0OiBiaXMgaWNoIGRhcyBpbiBtZWluZW0gY2hhb3MgaGllciBmaW5kZS4uLgoKdm9uIHNpY2ggZ2lidCwgZGVyIGhhdCBkZW4gVGl0ZWwgIk1laXN0ZXIgZGVzIENoYW9zIiBuaWNodCB2ZXJkaWVudC4KClJpbmdvci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJla2FubnRtYWNodW5nISAoUG9kcmVpYywgIDcuIEZlYiAxOTk5LCAxNjowMTozNik6Cn4jISBvbj1Qb2RyZWljIG90PTkxODQwMjgwMCBvZz1hbnplaWdlbgoKCkF1cyBTcGVpY2hlcmdydWVuZGVuIHZlcmZ1ZWdlIGljaCBmb2xnZW5kZSBhYiBzb2ZvcnQgdmVyYmluZGxpY2hlCkFub3JkbnVuZ2VuLiBCZWZvbGd0IHNpZSwgc29uc3QgaGVsZmUgaWNoIG5hY2guCgotIE1haWxmb2xkZXIgZHVlcmZlbiBuaWNodCBncm9lc3NlciBhbHMgNTBrQiBzZWluLiBGb3J3YXJkZWQgZXVyZQogIE1haWwgYW0gYmVzdGVuIGdhbnogdW5kIHNvZm9ydCBuYWNoIEhhdXNlLCB3aWUgZGFzIGdlaHQsIGxhZXNzdAogIHNpY2ggaW4gamVkZXIgUG9zdCBlcmZyYWdlbi4gTWFjaHRzLCBzb25zdCBlcmxlZGlnZSBfaWNoXyBkYXMuCgotIERpZSBBbGlhcy1MaXN0ZSBkYXJmIG51bm1laHIgbnVyIG5vY2ggNjQgRWludHJhZWdlIGVudGhhbHRlbiwgCiAgbW9yZ2VuIHdpcmQgYWIgZGVtIDY0LiBBbGlhcyBhbGxlcyBhYmdlc2Nobml0dGVuLiBKZWRlcyBBbGlhcwogIGRhcmYgYXVzc2VyZGVtIG5pY2h0IG1laHIgYWxzIDgwIFplaWNoZW4gZW50aGFsdGVuLiBBdWNoIGhpZXIgCiAgd2lyZCBhdXRtYXRpc2NoIGFiZ2VzY2huaXR0ZW4uIAoKLSBTZWxic3RkZWZpbmllcnRlIEFkdmVyYmllbiB3ZXJkZW4gYWJnZXNjaGFmZnQgLSB3dXJkZSBlaCBzZWx0ZW4KICBnZW51dHp0LgoKLSBEYXMgRnJldW5kc2NoYWZ0c2JhbmQgaXN0IGF1ZiAxMCBGcmV1bmRlIGJlc2NocmFlbmt0LiBTdWNodCBzaWUKICBldWNoIGd1dCBhdXMuCgotIERhcyBTZXR6ZW4gZGVyIFNwaWVsZXJsYW5nYmVzY2hyZWlidW5nIGJlaSBNYXN0cmFkZW5hIGxhZXNzdCAKICBqZXR6dCBudXIgbm9jaCBlaW5lIFplaWxlIHp1LiBNZWhyIHdhZXJlIFZlcnNjaHdlbmR1bmcuIEF1Y2ggCiAgaGllciBnaWx0LCBkYXNzIGJlc3RlaGVuZGUgdW5kIHp1IGxhbmdlIEJlc2NocmVpYnVuZ2VuIGJlaW0gCiAgbmFlY2hzdGVuIFJlYm9vdCBnZWt1ZXJ6dCB3ZXJkZW4uCgotIEZ1ZXIgU2VoZXI6ICJleHRyYWxvb2siIGhhYnQgaWhyIG5pY2h0IHdpcmtsaWNoIGdlYnJhdWNodCwgb2Rlcj8KCkFjaCBqYSwgdm9lbGxpZyBrbGFyLCBkYXNzIG1hcmtpZXJ0ZSBad2VpdHNwaWVsZXIgd2VkZXIgTWFpbCBub2NoCkFsaWFzZSBicmF1Y2hlbiwgb2Rlcj8gTWFjaHQgZGFzIGdlZmFlbGxpZ3N0IG1pdCBldXJlbSBURiwgZGEgaGFidAppaHIgUGxhdHRlbnBsYXR6IGdlbnVnIQoKUCoKClBTOiBXZW5uIGljaCBldHdhcyB2ZXJnZXNzZW4gaGFiZSAtIG1haWx0IGVzIG1pci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmVrYW5udG1hY2h1bmchIChQYWRyZWljLCAgNy4gRmViIDE5OTksIDE2OjAyOjM2KToKfiMhIHJuPVBhZHJlaWMgcnQ9OTE4NDAzMjk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4NDAzMjk2ClN0ZWggd2VuaWdzdGVucyBkYXp1IHVuZCBtYXJraWVyZSBEZWluZW4gendlaXRpIEFuYXRvbCA6KS4KClBhZHJlaWMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEZyYW56IEZ1Y2hzIFdpdHplIChTaXRvLCAgNy4gRmViIDE5OTksIDE4OjA4OjI5KToKfiMhIHJuPUdyaW1tYm9ybiBydD05MTgzNTI2MDcgcmc9c2NobWFycm4KfiMhIHRpZD05MTgxNDMyNzMKS29lbm50ZXQgaWhyIG5pY2h0IGRhbWl0IGF1ZmhvZXJlbj8gV2l0emUgdWViZXIgamVtYW5kZW4gcmVpc3NlbiwgZGVyIHNpY2gKbmljaHQgd2VocmVuIGthbm4sIGZpbmRlIGljaCBnZXNjaG1hY2tsb3MuCgpEYXMgaXN0IGpldHp0IHVuYWJoYWVuZ2lnIGRhdm9uLCBvYiBkaWVzZSBQZXJzb24gZGFzIG9kZXIgamVuZXMgZ2VtYWNodCBoYXQsCmljaCB3aWxsIGRhdm9uIGVpbmZhY2ggbmljaHRzIGhvZXJlbi4KCihqYSwgJ21hY2ggZWluIHVlYmVyZ2VoZSB0aHJlYWQnIGlzdCBhbmdlYnJhY2h0KQoKU2l0bwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG1qYS4uLiAoTXVwZmVsLCAgNy4gRmViIDE5OTksIDE4OjU0OjM2KToKZ2lsZGVucnVmIHRlc3QKRXMgc2luZCBrZWluZSBNdXBmZWwgZGEgYXVzc2VyIERpciBzZWxic3QuCgpobSBzdGltbXQgOi0pCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRnJhbnogRnVjaHMgV2l0emUgKFp3b2NrbGh1YmVyLCAgNy4gRmViIDE5OTksIDE4OjU1OjI0KToKfiMhIHJuPVNpdG8gcnQ9OTE4NDEwOTA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4MTQzMjczCldlciBrYW5uIHNpY2ggaGllciBuaWNodCBnZWdlbiB3ZW4gd2VocmVuPyBEaWUgT3BmZXIgdm9uIEZyYW56IEZ1Y2hzISBEaWVzZQpBcnQgV2l0emUgaXN0IHZpZWxsZWljaHQgbmljaHQgSmVkZXJtYW5ucyBHZXNjaG1hY2sgKG1laW5lciBhdWNoIG5pY2h0KSwgYWJlcgplcnphZWhsIG1pciBibG9zcyBuaXggdm9uICdhcm1lIFNhdSchCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa2F0emVudmllY2hlciAuLi4gKFRyYW5jZSwgIDcuIEZlYiAxOTk5LCAxOTo0MToyMCk6CkplbWFuZCBmbHVlc3RlcnQgVW5pcHVtYSBldHdhcyBpbnMgT2hyLgpBbm5hcHVuYSBlcmJsZWljaHQuCiAgTWlzdHZpZWNoIGdyZWlmdCBVbmlwdW1hIG1pdCBzY2hhcmZlbiBLcmFsbGVuIGFuLgogIE1pc3R2aWVjaCB2ZXJmZWhsdCBVbmlwdW1hLgogIFVuaXB1bWEgZ3JlaWZ0IE1pc3R2aWVjaCBtaXQgZWluZW0gZ2VsdW5nZW5lbiBTb3RvLXVyYWtlbi11Y2hpIGFuLgogIFVuaXB1bWEgdHJpZmZ0IE1pc3R2aWVjaCBzZWhyIGhhcnQuCiAgVW5pcHVtYSBncmVpZnQgTWlzdHZpZWNoIG1pdCBlaW5lbSBnZWx1bmdlbmVuIE1pa2F6dWtpLWdlcmkgYW4uCiAgVW5pcHVtYSBzY2hsYWVndCBNaXN0dmllY2ggbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KTWlzdHZpZWNoIGZhZWxsdCB0b3QgenUgQm9kZW4uCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCltUb2Q6TGFyc10gVW5pcHVtYSBoYXQgZ2VyYWRlIE1pc3R2aWVjaCB1bWdlYnJhY2h0LgpbVG9kOlVuaXB1bWFdIEdvdGNoYSEKVW5pcHVtYSBlcmJsZWljaHQuCkplbWFuZCBncmluc3QgYm9lc2FydGlnLgpVbmlwdW1hIGtudWRkZWx0IEFubmFwdW5hLgpBbm5hcHVuYSBrbnVkZGVsdCBVbmlwdW1hLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGJlcmVjaGVuYmFyZXIgTXVybWVsIDstKSAoSmlkZHUsICA3LiBGZWIgMTk5OSwgMjA6NTc6MzQpOgp+IyEgcm49QnJhbmRpciBydD05MTgyNzAzNTUgcmc9c2NobWFycm4KfiMhIHRpZD05MTgyNzAzNTUKd2VubiBkdSBpbiA8Z2VuZXJhbD4gIkFsbG93IFtdIGZvciBldmFsIiBhdXNtYWNoc3Qga2FubnN0IGR1IGF1Y2ggdG9sbGUgZWNraWdlCmtsYW1tZXJuIG1pdHBvc3Rlbi4uIDopCkppZGR1LCBoaWxmcmVpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQSz8gKFJpbmdvciwgIDcuIEZlYiAxOTk5LCAyMjoxMDoxNyk6ClZvcmhpbiBhdWYgZGVyIE9ya2dhbGVlcmU6CgpDaHVja3kgbWFjaHQgaGVpbWxpY2ggZWluZSBzZWx0c2FtZSBIYW5kYmV3ZWd1bmcuIER1IGhhc3QgZXMgZGVubm9jaCBnZXNlaGVuIQpPYiBkYXMgd29obCBldHdhcyBtYWdpc2NoZXMgd2FyPyEKUCBFIE4gRyAhICEgIQpbVG9kOkxhcnNdIFNoYWktSHVsdWQgaGF0IGdlcmFkZSBLYW1lbG90IHVtZ2VicmFjaHQuCgpXYXIgZGFzIGpldHp0IGVpbiBQSz8KClJpbmdvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRnJhbnogRnVjaHMgV2l0emUgKEtleSwgIDguIEZlYiAxOTk5LCAwOTowMzowMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTE4MzUyNjIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4MTQzMjczCkJldm9yIER1IG1pY2ggZmFsc2NoIHZlcnN0ZWhzdCAuLi4uIGljaCBmaW5kZSBlcyBlaW5mYWNoIGJla25hY2t0IHNvbGNoZSBMZXV0ZQphbGxlaW5lIGRhZHVyY2ggc2Nob24genUgdW50ZXJzY2hhZXR6ZW4gaW5kZW0gbWFuIGFuaW1tdCBzaWUgaGFldHRlbiBrZWluZQpJbnRlbGxpZ2VueiwgdW5kIGRhenUgemFlaGxlIGljaCBhdWNoIERlaW5lIHNvemlhbGUgSW50ZWxsaWdlbnouCkRhcyBzb2xjaGUgTGV1dGUgbmV0IGR1bW0gc2luZCwgc29sbHRlbiBlbmRsaWNoIG1hbCBuZW4gcGFhciBiZWdyZWlmZW4uCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhlbGxzaWNodD8gKE1vcmdvdGgsICA4LiBGZWIgMTk5OSwgMTM6NDk6NDQpOgpEZWluZSBGcmV1bmRpbiBIaWJiZWxpZyB0ZWlsdCBEaXIgbWl0OiBuZWluIERpcmlvbiBuaWNoIHNjaG9uIHdpZWRlciBzdGVyYmVuCltUb2Q6TGFyc10gRWluIFJhZXViZXIgaGF0IGdlcmFkZSBEaXJpb24gdW1nZWJyYWNodC4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIZWxsc2ljaHQsIDI/IChNb3Jnb3RoLCAgOC4gRmViIDE5OTksIDE1OjIyOjU0KToKQXJtYWdlZGRvbiBydWZ0OiBUZWlsZSBtaXIgbWl0LCB3ZW5uIER1IGluIGRlbiBMYWRlbiBnZWJyYWNodCB3ZXJkZW4gd2lsbHN0IQpBcm1hZ2VkZG9uIHJ1ZnQ6IEluIDEwIE1pbnV0ZW4gdW5kIDAgU2VrdW5kZW4gd2VyZGUgaWNoIGRpZSBXZWx0IHplcnN0b2VyZW4KQXJtYWdlZGRvbiBydWZ0OiB1bmQgbmV1IGVyc2NoYWZmZW4hCkRpZSBXb2xrZW4gdmVyZHVua2VsbiBkZW4gSGltbWVsLiBFcyB3aXJkIHVlYmVyYWxsIGR1ZXN0ZXIgaW4gZGVyIFdlbHQKdW5kIER1IGthbm5zdCBrYXVtIG5vY2ggd2FzIGVya2VubmVuLCB3YXMgdW0gRGljaCBnZXNjaGllaHQuCls8TWFzdGVSPjpMYW1hcmlvbl0gaXN0IHBhcmEqIGdla29tbWVuID8gOikKUGFyYWNlbHN1cyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJydW5vIChSb2NodXMsICA4LiBGZWIgMTk5OSwgMTU6Mzk6MzIpOgpNb3JnZW5ncmF1ZW4gaXN0IE1vbiwgIDguIEZlYiAxOTk5LCAxNTozMToyNSB6dWxldHp0IG5ldSBnZWJvb3RlZCB3b3JkZW4uCkRhbWl0IGlzdCBlcyBzZWl0IDQ2MyBTZWt1bmRlbiBha3RpdiwgZGFzIGVudHNwcmljaHQKNyBNaW51dGVuIHVuZCA0MyBTZWt1bmRlbi4KW0JpZXJzY2h1ZXR0bGVyOkJydW5vXSBIZSwgZGFzIE1vcmdlbkdyYXVlbiBpc3QgamEgc2Nob24gd2llZGVyIGxhbmdlIHVwLgpbQmllcnNjaHVldHRsZXI6QW5hdG9sIHBydXN0ZXQuXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWVoIGphIDopIChQeXJkYWNvciwgIDguIEZlYiAxOTk5LCAxNzo0ODowNSk6CltMaWViZTpKaXZpIHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gSGF0ZS5dCgphbHNvLCBpY2ggZmluZGUsIGRlciBoYXQgYXVmIGRpZXNlciBFYmVuZSBlY2h0IG5peCB6dSBzdWNoZW4gKmdyaW5zKgoKUHlyZGFjb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWNobGljaCBiZWkgZGVuIEhvYmJpdHMgOikgKFRzdW5hbWksICA4LiBGZWIgMTk5OSwgMTg6MzM6MTUpOgpEYXMgaXN0IFN1Z2Fhbi4gU2llIGlzdCBtaXQgaWhyZW4gMS4xMCBtIGVoZXIgZ3Jvc3MgZnVlciBlaW5lIEhvYmJpdGZyYXUuCkRhbWl0IGdpYnQgc2llIGVpbmVuIGd1dGVuIEZ1c3NjaGVtZWwgZnVlciBEaWNoIGFiLgoKVHN1bmFtaSwgbGFjaHQgamV0enQgbm9jaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggaW0gRWxmZW5kb3JmIChBcmF0aCwgIDguIEZlYiAxOTk5LCAxOToxNzoyMCk6CkVpbmUgR2FlcnRuZXJpbiBrb21tdCBhbi4KRGllIEdhZXJ0bmVyaW4gYnVlY2t0IHNpY2guCkRpZSBHYWVydG5lcmluIGxhZWNoZWx0IERpY2ggYW4uCgpIbSwgd2llIHNvbGwgaWNoIGRhcyBqZXR6dCB2ZXJzdGVoZW4/PyA6LSkpCgpBcmF0aCwga2ljaGVybmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW50cmFnIChTaWd1cmEsICA4LiBGZWIgMTk5OSwgMjA6MzE6NDApOgp+IyEgcm49UmluZ29yIHJ0PTkxODQwMTY1MCByZz1zY2htYXJybgp+IyEgdGlkPTkxODQwMTY1MAoKSWNoIGRlbmtlLCBlciBlcmZ1ZWxsdCBkYW1pdCBlaGVyIGVpbmUgR3J1bmR2b3JhdXNzZXR6dW5nIDopCgpTaWcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBSZWJvb3QocykgKEFuYXRvbCwgIDguIEZlYiAxOTk5LCAyMDozNToxNCk6Cn4jISBvbj1BbmF0b2wgb3Q9OTE4NTA2MTA4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1BY3JpbW9uIHJ0PTkxODUwNjA1NCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTkxODQ5NTE5NApBYmVyIHdpciB3b2xsZW4gRGlyIGphIG5pY2h0IERlaW5lIFRyYWV1bWUgcmF1YmVuLgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUmVib290KHMpIChNYWhhdG11LCAgOC4gRmViIDE5OTksIDIwOjM1OjQ1KToKfiMhIHJuPUFuYXRvbCBydD05MTg1MDYxMTQgcmc9c2NobWFycm4KfiMhIHRpZD05MTg0OTUxOTQKT2RlciBzZWluIExlYmVuc3p3ZWNrIHVuZCAtemllbC4gQW0gRW5kZSB2ZXJzY2h3aW5kZXQgZXIgZ2FyIG5hY2ggZGVyCkVyZnVlbGx1bmcuCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBSZWJvb3QocykgKEFuYXRvbCwgIDguIEZlYiAxOTk5LCAyMDozOTo0Myk6Cn4jISBybj1NYWhhdG11IHJ0PTkxODUwNjE0NSByZz1zY2htYXJybgp+IyEgdGlkPTkxODQ5NTE5NApVbnZlcnRyZXRiYXIuIEVzIHdhZXJlIGVpbiBWZXJsdXN0IGZ1ZXIgZGFzIE11ZC4KCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXIgZGllIGdlbGFuZ3dlaWx0ZSBLYWRhYnJhIDspIChKaWRkdSwgIDguIEZlYiAxOTk5LCAyMjoyMTozMSk6CkZ1ZXIgZGllIGdlbGFuZ3dlaWx0ZSBLYWRhYnJhIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVlciBkaWUgZ2VsYW5nd2VpbHRlIEthZGFicmEgOykgKEthcnRvZmZlbCwgIDguIEZlYiAxOTk5LCAyMjoyMTo1OSk6Cn4jISBybj1KaWRkdSBydD05MTg1MTI0OTEgcmc9c2NobWFycm4KfiMhIHRpZD05MTg1MTI0OTEKSGV5LCBtaXIgYXVjaCB3YXMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRnVlciBkaWUgZ2VsYW5nd2VpbHRlIEthZGFicmEgOykgKEppZGR1LCAgOC4gRmViIDE5OTksIDIyOjIyOjMzKToKfiMhIHJuPUthcnRvZmZlbCBydD05MTg1MTI1MTkgcmc9c2NobWFycm4KfiMhIHRpZD05MTg1MTI0OTEKTWFsIHdhcyBmdWVyICdUb2ZmZWxjaGVuLi4gbWl0IGdhbnogbGllYmVuIGdydWVzc2VuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFTkRMSUNIICEhISAoU2hhcmlhLCAgOC4gRmViIDE5OTksIDIzOjEyOjU3KToKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIE1vbiwgIDguIEZlYiAxOTk5LCAyMzoxMToxNCAoNSBUZWlsbmVobWVyKQoKTG9nb24uLi4uLi4uLi4uLi5zIExvZ29uLi4uLi4uLi4uLi4ucyBMb2dvbi4uLi4uLi4uLi4uLnMgTG9nb24uLi4uLi4uLi4uLi5zClNoYXJpYS4uLi4uLi4uLi4uUwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV28gZGllIExpZWJlIGhpbmZhZWxsdC4uLi4gKE1vcmdvdGgsICA5LiBGZWIgMTk5OSwgMDA6MDE6MDYpOgpbQmllcnNjaHVldHRsZXI6QnJhbmRpcl0gYWxzbywgaWNoIG1hZyBBbGtnaWZ0LCBpY2ggaGFiIGxlaWJuaXogZ2VyYWRlIGRhbWl0CltCaWVyc2NodWV0dGxlcjpCcmFuZGlyXSB6ZXJzY2htZXR0ZXJ0IDopCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdvIGRpZSBMaWViZSBoaW5mYWVsbHQuLi4uIChCcmFuZGlyLCAgOS4gRmViIDE5OTksIDAwOjE2OjMwKToKfiMhIHJuPU1vcmdvdGggcnQ9OTE4NTE4NDY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4NTE4NDY2CkFsc28sIGRhIGtvbW10IG1hbiBtYWwgbWl0IG5lciBGYWhuZSBuYWNoIGhhdXNlIHVuZCBkYW5uIHNvd2FzLi4uCgpCcmFuZGlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZWZhZWhybGljaGUgd2Vja2VyPyAoSmVuYW5kcmEsICA5LiBGZWIgMTk5OSwgMDQ6NDQ6NTQpOgpEdSBzdHVwc3QgQ3ltb25rIGFuLgpKaWRkdSBncmluc3QuCkppZGR1IHdpcmZ0IHNlaW5lbiBXZWNrZXIgbmFjaCBDeW1vbmsuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBDeW1vbmsuCkN5bW9uayAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKSmlkZHUgZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KRHUgc2Fnc3Q6IHdhYWEKRHUgc2Fnc3Q6IEppZGR1LCB3YXMgdHVzdCBkdSEKSmlkZHUgc2FndDogZGFzIHNpbmQgc3BlemlhbC13ZWNrZXIgOikKRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgoKSmVuYW5kcmEgZ3JpbnN0IGltbWVyIG5vY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBGcmFueiBGdWNocyBXaXR6ZSAoQ2F0d2VhemxlLCAgOS4gRmViIDE5OTksIDExOjU0OjMxKToKfiMhIHJuPVNpdG8gcnQ9OTE4NDEwOTA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4MTQzMjczCkFlaG0sIER1IGhhc3QgbmljaHQgZ2VzZWhlbiwgd2llIGRlciBpbSBHZXJpY2h0c3NhYWwgcnVta3Jha2VlbHQgCmhhdCwgb2Rlcj8gSWNoIG11c3MgbGVpZGVyIGRvY2ggbWFuY2htYWwgZmVzdHN0ZWxsZW4sIGRhcyBkZXIgVGl0ZWwKJ3NvemlhbGVyIEFic2NoYXVtJyBhdWYgbWFuY2hlIE1lbnNjaGVuIHp1dHJpZmZ0LiBGYWxzY2hlIFJ1Y2tzaWNodC0KbmFobWUgaGFsdGUgaWNoIGluIGRpZXNlbSBGYWxsIGZ1ZXIgdW5hbmdlYnJhY2h0LgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBGcmFueiBGdWNocyBXaXR6ZSAoWndvY2tsaHViZXIsICA5LiBGZWIgMTk5OSwgMTI6MzY6MzEpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTkxODU2MTI3MSByZz1zY2htYXJybgp+IyEgdGlkPTkxODE0MzI3Mwp+fnMhTWVuc2NoZW4hU3ViamVrdGUhCgplaW56ZWlsZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2VnYmVzY2hyZWlidW5nIGVyc3RtYWwgbnVyIHp1ciBIYWxsZS4gKEFuYXRvbCwgIDkuIEZlYiAxOTk5LCAxNToyOTowMik6Cn4jISBybj1TaGFyaWEgcnQ9OTE4NTc0MDk1IHJnPXBhcnR5Cn4jISB0aWQ9OTE4NTU4Mzc0Ckt1cnogdW5kIGtuYXBwIC0gd2FzIGJlZ2VocnN0IER1IG1laHI/ISA6KQoKQW5hdG9sIDpvKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgMiB2b24gMTEwIC0+IChMZW5hLCAgOS4gRmViIDE5OTksIDE2OjE4OjU3KToKVWViZXJnZWhlIEFydGlrZWwgNjYgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNjcgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNjggYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNjkgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNzAgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNzEgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNzIgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNzMgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNzQgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyBtYWwgd2llZGVyIChEYXJrd2luZywgIDkuIEZlYiAxOTk5LCAxNzo0NDo1MCk6CkRlaW5lIEZyZXVuZGluIExpYXJhIGdyaW5zdCBmcm9laGxpY2ggaW4gZGllIFJ1bmRlIGF1cyBkZXIgRmVybmUuCkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IG9oIGljaCBiaW4gbm9jaCBpbiBwYXJhICpnKgpbVG9kOkxhcnNdIEVpbmUgRHJhY2hlbnNjaGlsZGtyb2V0ZSBoYXQgZ2VyYWRlIExpYXJhIHVtZ2VicmFjaHQuCgoqc2V1ZnoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWb3JhaG51bmc/IChCaWVsZWZlbGQsICA5LiBGZWIgMTk5OSwgMTk6MDg6MjEpOgpbQWxsZ2VtZWluOlN0aW5nXSBhcmdsClBhZHJlaWMgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCkJpZWxlZmVsZCwga2ljaGVybmQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAuLi4gKExpYXJhLCAgOS4gRmViIDE5OTksIDIyOjMxOjU1KToKCkRhcmt3aW5nIHRlaWx0IERpciBtaXQ6IGljaCBzc3NwcmluZyBMYXJzc3MgZGF1ZXJuZCB2b24gZGVyIFNzc2NoaXBwZQpbVG9kOkxhcnNdIEVpbiByaWVzaWdlciBTY2hlbWVuIGhhdCBnZXJhZGUgRGFya3dpbmcgdW1nZWJyYWNodC4KCkxpYXJhLCB0cmF1ZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEZyYW56IEZ1Y2hzIFdpdHplIChBc21vZGlzLCAxMC4gRmViIDE5OTksIDAyOjM5OjQzKToKfiMhIHJuPUtleSBydD05MTg0NjQ1ODMgcmc9c2NobWFycm4KfiMhIHRpZD05MTgxNDMyNzMKSG1tLCBpY2ggd2lsbCBub2NoIHdlaXRlciBnZWhlbjogU29sY2hlIExldXRlIHNpbmQgc29nYXIgbWVpc3RlbnMKdWViZXJkdXJjaHNjaG5pdHRsaWNoCmludGVsbGlnZW50LiBHZW5pZSB1bmQgV2FobnNpbm4gbGllZ2VuIGViZW4gZW5nIGJlaWVpbmFuZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZmx3IG1hbCB3aWVkZXIgKEFzbW9kaXMsIDEwLiBGZWIgMTk5OSwgMDI6NDQ6MTIpOgp+IyEgcm49RGFya3dpbmcgcnQ9OTE4NTgyMjkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4NTgyMjkwClNjaGlsZGtyb2V0ZW4gYWJ3ZXJ0ZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgc29sbCBpY2ggZGFzIHZlcnN0ZWhlbj8gKE1lbmFjZSwgMTAuIEZlYiAxOTk5LCAxMTozMjowMSk6Clt0cmFnZSBhbGxlc10KRWluZSBSdWVzdHVuZzogRHUgemllaHN0IGRpZSBSdWVzdHVuZyBhbi4KRWluIEhlbG06IER1IHppZWhzdCBkZW4gSGVsbSBhbi4KRWluIEFiemVpY2hlbjogRHUgemllaHN0IGRhcyBBYnplaWNoZW4gYW4uCkVpbiBBbGtvaG9sZ2lmdDogRHUgbXVzc3QgZGFzIEFsa29ob2xnaWZ0IGVyc3QgbmVobWVuICEKRWluIFNjaGltbWVyOiBEdSB0cmFlZ3N0IGRlbiBTY2hpbW1lciBiZXJlaXRzLgpFaW5lIEJpZXJzY2h1ZXJ6ZTogRHUgdHJhZWdzdCBkaWUgQmllcnNjaHVlcnplIGJlcmVpdHMuCkVpbiBGdXNzcmluZzogRHUgdHJhZWdzdCBkZW4gRnVzc3JpbmcgYmVyZWl0cy4KQWxsZXMgYW5nZXpvZ2VuLCB3YXMgZ2luZy4KCnNvc28sIGljaCBtdXNzIGRhcyBBbGtvaG9sZ2lmdCBhbHNvIGVyc3QgbmVobWVuIGJldm9yIGljaCBlcyBhbnppZWhlbiBrYW5uLi4uCgpNZW5hY2UgdHJhZWd0IGVpbmUgUnVlc3R1bmcgdW5kIGVpbiBBbGtvaG9sZ2lmdCA7bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgd2llc28gd29obCAqZ3JpbnMqIChKYXNvbnJpZ2lkLCAxMC4gRmViIDE5OTksIDE1OjE5OjQ1KToKSGlwcGUgZnJhZ3QgOiBXYXJ1bSBzYWd0IEphc29uUmlnaWQgJ2hpcHBlLCBoYWx0IGRpZSBrbGFwcGUnID8KCkphc29uLCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLiBvIE8gKGRpZSBhcm1lbiBEcmFjaGVuLi4pIChaZXBoeXIsIDEwLiBGZWIgMTk5OSwgMTU6Mzk6MzMpOgoKW01vZXJkZXI6R2Vpc3QgZWluZXMgS3Jpc3RhbGxkcmFjaGVuXSBGcmVpaGVpdCBmdWVyIGRpZSBTcGllbGVyISBWZXJuaWNodGV0CltNb2VyZGVyOkdlaXN0IGVpbmVzIEtyaXN0YWxsZHJhY2hlbl0gVmVsb2NpdHkhCkR1IHRlaWxzdCBWZWxvY2l0eSBtaXQ6IGFyZ2ggZGEgd29sbHQgaWNoIGF1Y2ggZ3JhZCBoaW4gOikgYnJhdWNoc3QgRHUgZGllCkR1IHRlaWxzdCBWZWxvY2l0eSBtaXQ6IEtyb25lPwpWZWxvY2l0eSB0ZWlsdCBEaXIgbWl0OiBIbS4uLm11c3N0IER1IEplaG92YSBmcmFnZW4uLmRlciBoYXQgZGVuIERyYWNoZW4KVmVsb2NpdHkgdGVpbHQgRGlyIG1pdDogYW5nZWtpbGx0Li5pY2ggaGFiIG51ciBnZWhvbGZlbi4KRHUgdGVpbHN0IEplaG92YSBtaXQ6IGh1aHUuLiB2ZWxvY2l0eSBoYXQgbWljaCBhbiBEaWNoIHZlcndpdWVzZW4uLiBpY2ggd29sbHQKRHUgdGVpbHN0IEplaG92YSBtaXQ6IGF1Y2ggZ3JhZCB6dW0gS3Jpc3RhbGxkcmFjaGVuLCBicmF1Y2hzdCBEdSBkaWUga3JvbmU/CkplaG92YSB0ZWlsdCBEaXIgbWl0OiBlaWdlbnRsaWNoIGphLiBhYmVyIHZlbG8gaGF0IHNpZSBzaWNoIGdlbm9tbWVuIDooCkplaG92YSB0ZWlsdCBEaXIgbWl0OiBrYXVtIGhhdCBtYW4gbWFsIGtlaW5lIE1QcyBtZWhyLCBzY2hvbiBraWxsdCBlaW4gYW5kZXJlcgpKZWhvdmEgdGVpbHQgRGlyIG1pdDogZGFzIGFuZ2VtZXR6ZWx0ZSB2aWVoIC4uLgpEdSB0ZWlsc3QgSmVob3ZhIG1pdDogKmtyYXR6KiBrb21pc2NoZXMgU3lzdGVtIC4uIFZlbG8gbWVpbnRlIHNpZSBoYWV0dCBEaXIKRHUgdGVpbHN0IEplaG92YSBtaXQ6IG51ciBnZWhvbGZlbgpKZWhvdmEgdGVpbHQgRGlyIG1pdDogYWNoIHNvID8gaG0uIG1hbCBmcmFnZW4gOikKQWxwaGEgdGVpbHQgRGlyIG1pdDogSWNoIGJpbiBkYWZ1ZXIsIGRhc3MgZXMgbWVociBEcmFjaGVuIGdpYnQ7KQpKZWhvdmEgdGVpbHQgRGlyIG1pdDogYXJnaC4gamV0enQgZ2lidCB2ZWxvIG1pciBkYXMgdGVpbCwgZGFtaXQgaWNoIGRpciBzYWdlbgpKZWhvdmEgdGVpbHQgRGlyIG1pdDogbXVzcywgZGFzcyBkdSBlcnN0IGRpZSBuYWVjaHN0ZSBoYWJlbiBrYW5uc3QgOikKRHUgdGVpbHN0IEplaG92YSBtaXQ6ICpwcnVzdCoKRHUgdGVpbHN0IEFscGhhIG1pdDogYWVoLi4gd2FzIHdhciBkYXMgbWl0IGRlbiBEcmFjaGVuPwpBbHBoYSB0ZWlsdCBEaXIgbWl0OiBEdSB3b2xsdGVzdCBkb2NoIGRpZSBLcm9uZSBoYWJlbi4uLi4KRHUgdGVpbHN0IEFscGhhIG1pdDogamV0enQgYmlubSBpY2ggdm9lbGxpZyB2ZXJ3aXJydC4uIHdhcyBoYXN0IERVIGRlbm4gamV0enQKRHUgdGVpbHN0IEFscGhhIG1pdDogZGFtaXQgenUgdHVuPwpBbHBoYSB0ZWlsdCBEaXIgbWl0OiBKZWhvdmEgVG9yd2FsbCBWZWxvY2l0eSB1bmQgaWNoIGhhYmVuIGF1ZiBkZW4gRHJhY2hlbgpBbHBoYSB0ZWlsdCBEaXIgbWl0OiBlaW5nZXBydWVnZWx0LgpBbHBoYSB0ZWlsdCBEaXIgbWl0OiBFciBoYXQgYWJlciBudXIgZWluZSBLcm9uZTooCkR1IHRlaWxzdCBBbHBoYSBtaXQ6ICpzdG9laG4qIGRlciBhcm1lIERyYWNoZQpBbHBoYSB0ZWlsdCBEaXIgbWl0OiBFciBrb25udGUgbmljaHQgdmllbCBtYWNoZW4gLSBtaXQgbmVyIFNjaHVldHRlbHN0YXJyZSBhbQpBbHBoYSB0ZWlsdCBEaXIgbWl0OiBIYWxzIDopCgpncmluc2VuZCwgQzQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBHcmluc2VuIHZvbiBNaW5kYmxhZGUuLi4gKE1pZXplLCAxMC4gRmViIDE5OTksIDE2OjQxOjM1KToKCmViZW4gcGFzc2llcnQ6CgoKTWluZGJsYWRlIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCkRpZSBIeWRyYSBlcmhlYnQgc2ljaCBhdXMgZGVtIFRhbCBkZXIgTHVwaW5lbi4KCk1pZXplIC0gZ3JpbnN0IGF1Y2ggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWlzdGJyYXR6ZXMgU2NoYW0gKE1lbmFjZSwgMTAuIEZlYiAxOTk5LCAxODo1NTo0NCk6Cn4jISBybj1NZW5hY2UgcnQ9OTE4NjcyODQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4NjY5MjI1Ci4uLiB1bmQgRHUgYmlzdCBzaWNoZXIsIGRhc3MgRHUgbmljaHQgIkNoYXJtZSIgbWVpbnRlc3Q/ClNvbnN0IHdhZXIgZXMgd29obCBESUUgU2NoYW0gdW5kIG9iIE1pc3RicmF0emUgRGlyIGlocmUgU2NoYW0gemVpZ3QgYmluIGljaApuaWNodCBzbyBzaWNoZXIsIGFiZXIgd2Vubiwga2FubiBtYW4gZGEgc2ljaGVyIHNjaG9uIG1hbCBkaWUgT3JpZW50aWVydW5nCnZlcmxpZXJlbiEgO28pCgpNZW5hY2UgZ2FueiBoZWZ0aWcgc2NobWFycm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSaWNodGlnc3RlbGx1bmcgIChTcmFiaSwgMTAuIEZlYiAxOTk5LCAxODo1OTo0MCk6CkVzIG11c3MgbmF0dWVybGljaCBoZWlzc2VuOiBNaXN0YnJhdHplcyBDaGFybWUgKnNjaGFlbSoKCiBNaXN0YnJhdHplICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkR1IHZlcmxpZXJzdCBmdWVyIGVpbmVuIE1vbWVudCBkaWUgT3JpZW50aWVydW5nLgoKU3JhYmksIGRlciBob2ZmdCwgZXMgc2ljaCBuaWNodCBiZWkgTWlzdGJyYXR6ZSB2ZXJzY2hlcnp0IHp1IGhhYmVuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FybmV2YWwgKEdyYWxrb3IsIDExLiBGZWIgMTk5OSwgMTE6Mjc6MTkpOgoKRkFTQ0hJTkcsIHNpZWhlIGF1Y2ggdW50ZXI6CktBUk5FVkFMLCBLT0xMRUtUSVYtV0FITiwgS1JFVVRaRkVMRC1KQUNPQgoKaG9jaGdyYWRpZyBhbnN0ZWNrZW5kZSBFcmtyYW5rdW5nIGRlciBEZW5rLSB1bmQgR2VzY2htYWNrc29yZ2FuZSwgYmVpCndlbGNoZXIgZGVyIEJldHJvZmZlbmUgZGllIEVudHdpY2tsdW5nc2dlc2NoaWNodGUgZGVyIE1lbnNjaGhlaXQgbm9jaCBlaW5tYWwKcnVlY2t3YWVydHMgZHVyY2hsZWJ0IHVuZCBpbnRlbGxla3R1ZWxsIGF1ZiBkZW4gU3RhbmQgZWluZXIgYmVzb2ZmZW5lbgpLYXVscXVhcHBlIHp1cnVlY2ttdXRpZXJ0LgpQZXJpb2Rpc2NoIHdpZWRlcmtlaHJlbmRlIGZpZWJlcmhhZnRlIFZlcmJsb2VkdW5nLCBmdWVyIGRlbgpGYXNjaGluZ3NpbmZpemllcnRlbiBhbGxlcmRpbmdzIG5pY2h0IHRvZWRsaWNoLCBhdWNoIHdlbm4gc2ljaCBkaWVzIHNlaW5lClVtZ2VidW5nIGJlaXplaXRlbiB3dWVuc2NoZW4gd3VlcmRlCkVyc3RtYWxzIGF1ZmdldHJldGVuIHVuZCB1ZWJlcnRyYWdlbiB2b3IgZWluaWdlbiBKYWhyemVobnRlbiBkdXJjaAplbmdsaXNjaGUgUmluZGVyLCBhdXNzZXJpcmRpc2NoZSBCZWFtdGUgdW5kIEtvZWxuZXIgU3Bhcmthc3NlbmFuZ2VzdGVsbHRlClN5bXRvbWU6IGFrbmVhcnRpZ2VyIFBhcHBuYXNlbnd1Y2hzLCBSdWVja2JpbGR1bmcgZGVzIEdlaGlybnMgYXVmCktvbmZldHRpLUdyb2Vzc2UsIGFnZ3Jlc3NpdmVzIEF0dGFja2llcmVuIFVuc2NodWxkaWdlciBtaXQgQm9uYm9uLQpHZXNjaG9zc2VuIHVuZCBzdGFlbmRpZ2VyIFp3YW5nIHp1IHVua29udHJvbGxpZXJ0ZXIgUG9sb25haXNlbmJpbGR1bmcKbWl0IGFuZGVyZW4gUGF0aWVudGVuIGJlZ2xlaXRldCB2b24gbWFzc2xvc2VtIEFsa29ob2xrb25zdW0sIGluIGRlcgpIb2ZmbnVuZywgZGFkdXJjaCBkaWUgS3JhbmtoZWl0c2VycmVnZXIgYWJ6dXRvZXRlbiBvZGVyIG1pdCBkZW0gZWlnZW5lbgpCbHV0IGVpbiBNb2ZhIGFudHJlaWJlbiB6dSBrb2VubmVuLCBzb3dpZSBlaW5lbSBhbGJlcm5lbgpNYXNraWVydW5nc2JlZHVlcmZuaXMsIHVtIG5pY2h0IGVya2FubnQgenUgd2VyZGVuLCB3ZW5uIG1hbiBpbiBkaWUgRWNrZQprb3R6dC4KQXVmZmFlbGxpZyBiZWkgS2FybmV2YWxzYmVmYWxsOiBkZXIgRHJhbmcgZGVyIEJldHJvZmZlbmVuIHNpY2ggbWl0Cm1vZWdsaWNoc3QgdmllbGVuIE1pdGxlaWRlbmRlbiB6dSBiaXphcnIgYW5tdXRlbmRlbiBHcnVwcGVudGhlcmFwaWVuLApzb2dlbmFubnRlbiBQcnVua3NpdHp1bmdlbiwgenUgdHJlZmZlbiwgdW5kIGRpZXNlIGF1Y2ggbm9jaCBpbSBGZXJuc2VoZW4KdWViZXJ0cmFnZW4genUgbGFzc2VuLgpTaW5uIGRpZXNlciBWZXJhbnN0YWx0dW5nIGlzdCBlcywgZHVyY2ggZWluIGVyYmFybXVuZ3Nsb3NlcwpIZWl0ZXJrZWl0c3JlZ2ltZW50IGRhcyBBdWZrb21tZW4gamVnbGljaGVuIHNwb250YW5lbiBGcm9oc2lubnMgaW0gS2VpbQp6dSBlcnN0aWNrZW4gdW5kIGRpZSBtZW5zY2hsaWNoZSBGYWVoaWdrZWl0IHp1bSBlaWdlbnN0YWVuZGlnZW4gRGVua2VuIHp1CmVsaW1pbmllcmVuLgpTYWVtdGxpY2hlIFNjaGVyemUgdW50ZXJsaWVnZW4gZGVzIFN0YXR1dGVuIGRlciBncm9zc2RldXRzY2hlbiBXaXR6b3JkbnVuZwp2b24gMTkzOC4KR2VsYWNodCB3ZXJkZW4gZGFyZiBudXIsIHdlbm4gZXR3YXMgYmV3aWVzZW5lcm1hc3NlbiBfTklDSFRfIGx1c3RpZyB3YXIsCnVuZCBkYW5uIGVyc3QgbmFjaCBFcnRvZW5lbiBkZXMgYWt1c3Rpc2NoZW4gQmVmZWhsc3NpZ25hbHMuKnRhdGEqCkdlZmVpZXJ0IHdpcmQgc3RyZW5nIG5hY2ggVm9yc2NocmlmdC4KVWViZXJ3YWNodCB2b24gZWluZXIgbWlsaXRhZXJpc2NoIG9yZ2FuaXNpZXJ0ZW4gU3BlemlhbGVpbmhlaXQgenVyClZlcm5pY2h0dW5nIGRlcyBkZXV0c2NoZW4gSHVtb3JzLCBiZXplaWNobmV0IGFscyBFbGZlcnJhdCBvZGVyIFNwYXNzLUdlU3RhUG8uCldlciBnZWdlbiBkZW4gU3Ryb20gc2NodW5rZWx0LCBrb21tdCBpbnMgRmFzdG5hY2h0c2xhZ2VyIG9kZXIgd2lyZCBlcnNjaG9zc2VuLgpVbXJhaG10IHdlcmRlbiBkaWVzZSBUcmVmZmVuIHp1bWVpc3Qgdm9uIHBvbXBvZXMgYXVmZ2V6b2dlbmVuClN0cmFzc2VudW16dWVnZW4sIGJlaSBkZW5lbiBkdXJjaCByaWVzaWdlLCBoYWVzc2xpY2hlIFBhcHBmaWd1cmVuIHZvbgpyYW1tZWxuZGVuIFBvbGl0aWtlcm4gdW5kIGRlbSBXdXJmIHZvbiBTb2xpZGFyaXRhZXRzLUthbWVsbGUgZnVlcgpWZXJzdGFlbmRuaXMgdW5kIE1pdGxlaWQgbWl0IGRlbiBGYXNjaGluZ3NpbmZpemllcnRlbiBnZXdvcmJlbiB3aXJkLgpHZWhlaW1lciBIaW50ZXJnZWRhbmtlIGRlciBuYWVycmlzY2hlbiBUYWdlOgpLb2xsZWt0aXZlcyBTYXVmZW4gYmlzIGtlaW5lciBtZWhyIGtsYXIgZ3Vja2VuIGthbm4sIHVuZCBkYW5uIGZpY2tlbiBiaXMgZGllClBhcHBuYXNlIHBsYXR6dC4KRGVubiBudXIgaW4gZGVyIERvb2Zlbi1TYWlzb24gZ2VsaW5ndCBlcyBzZWxic3QgZGVtIGRhZW1saWNoc3RlbiBBcnNjaGtvcGYKb2huZSBCZXphaGx1bmcgaXJnZW5kZWluZSBzY2hvZW5nZXNvZmZlbmUgQWx0ZSBkdXJjaHp1a25hdHRlcm4sIGRpZSBzaWNoCm1pdCBBbWFyZXR0byB1bmQgQXBmZWxrb3JsLVNjaG9ybGUgc2VsYnN0IGluIGRpZSBCZWdhdHR1bmdzc3RhcnJlCmJlZm9lcmRlcnQgaGF0LgpWb20gSW5zdGl0dXQgZnVlciBTZXVjaGVuYmVrYWVtcGZ1bmcgd2lyZCBGYXNjaGluZyBhbHMgaG9lY2hzdCBiZWRlbmtsaWNoIHVuZApnZWZhZWhybGljaCBlaW5nZXN0dWZ0LgpTb2xsdGUgYmlzIHp1bSAxMS4xMS4gZGllc2VzIEphaHJlcyBlaW5lIEJla2FlbXBmdW5nIG9kZXIgRWluZ3Jlbnp1bmcgZGVzCkthcm5ldmFscy1WaXJ1cyBuaWNodCBnZWxpbmdlbiwgd2lyZCB2b24gZGVyIFJlZ2llcnVuZyBiaXMgc3BhZXRlc3RlbnMKUm9zZW5tb250YWcgbmFlY2hzdGVuIEphaHJlcywgZGllIGtvbXBsZXR0ZSBTcHJlbmd1bmcgS29lbG5zIHVuZCBkZXMKUmhlaW5sYW5kZXMgZXJ3b2dlbi4KCiB2b24gT2xpdmVyIEthbGtob2ZlCgoKRy4sIGRhc3Mgc28gdW50ZXJzY2hyZWliZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbW1tLi4uIChab29rLCAxMS4gRmViIDE5OTksIDE2OjQ5OjQ2KToKCkR1IHdpbmtzdCBMYXJpc3NhIHp1LgpMYXJpc3NhIHNjaHJlaXQgbGF1dCEKCnNlaHIgbWVya3d1ZXJkaWcuLiA6KSAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1ldGFsbG5hc2hvZXJuZXI/IChMZW5hLCAxMS4gRmViIDE5OTksIDE4OjMxOjE0KToKRHUgaWRlbnRpZml6aWVyc3QgZGVuIE5hc2hvcm5zY2hhZWRlbC4KRGVyIE5hc2hvcm5zY2hhZWRlbCBiZXN0ZWh0IGF1cyBNZXRhbGwuCgpMZW5hLCBzaWNoIHVlYmVyIGRpZSBHZWduZXIgaW0gTHVwaW5lbnRhbCB3dW5kZXJuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFuZ3N0IHZvciBGcmF1ZW4/IChNaW5kYmxhZGUsIDExLiBGZWIgMTk5OSwgMjI6MTQ6NTUpOgpEZWluIEZyZXVuZCBOb3Zhc3Rvcm0gdGVpbHQgRGlyIG1pdDogaG1tLCBrZW5udCB3ZXIgS2Fubml4ID8gRGllIHNvbGwKRGVpbiBGcmV1bmQgTm92YXN0b3JtIHRlaWx0IERpciBtaXQ6IGlyZ2VuZHdpZSBib2VzYXJ0aWcgc2Vpbiwga2FubiBtaXIgZGFzCkRlaW4gRnJldW5kIE5vdmFzdG9ybSB0ZWlsdCBEaXIgbWl0OiBqZW1hbmQgYmVzdGFldGlnZW4gPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFuZ3N0IHZvciBGcmF1ZW4/IChNYXJjdXMsIDExLiBGZWIgMTk5OSwgMjI6MzI6MjMpOgp+IyEgcm49TWluZGJsYWRlIHJ0PTkxODc3MTI5NSByZz1zY2htYXJybgp+IyEgdGlkPTkxODc3MTI5NQpBbHNvIEthbm5peCBpc3QgaGFybWxvcywgbGllYiwgbmV0dCB1bmQgdW5zY2h1bGRpZy4gR2FueiBzaWNoZXIuIFdpZSBqZWRlCkZyYXUuCgpDaWFvLCBNYXJjdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQW5nc3Qgdm9yIEZyYXVlbj8gKE5vdmFzdG9ybSwgMTEuIEZlYiAxOTk5LCAyMjozNTo0MSk6Cn4jISBybj1NYXJjdXMgcnQ9OTE4NzcyMzQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4NzcxMjk1CipsYWNoKiBadW0gR2x1ZWNrIHNpbmQgd2lyIGluIGRlciByaWNodGlnZW4gUnVicmlrLiAKICAgICAgTm92YSwgdGllZiBkdWNrZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFuZ3N0IHZvciBGcmF1ZW4/IChLYW5uaXgsIDExLiBGZWIgMTk5OSwgMjI6NDE6MjMpOgp+IyEgcm49TWFyY3VzIHJ0PTkxODc3MjM0MyByZz1zY2htYXJybgp+IyEgdGlkPTkxODc3MTI5NQoKTXVzcyBpY2ggbnVuIGVpbmVuIGxpZWJlbiwgYnJhdmVuLCB1bnNjaHVsZGlnZW4gS3VjaGVuIG1pdCBtZWluZW0gTlVkZWxob2x6CmF1c3JvbGxlbiBvZGVyIGdhbnogdW5zY2h1bGRpZywgbGllYiB1bmQgYnJhdiBzZWxiaWdlcyBzY2h3aW5nZW4/CgpLYW5uaXgsIHZlcndpcnJ0IG9iIGlocmVyIEZyYXVlbnJvbGxlCgpuZWluLCBpY2ggd2lsbCBuaWNodCBob2VyZW4sIGRhc3MgaWNoIE51ZGVsbiBtYWNoZW4gbXVzcyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQW5nc3Qgdm9yIEZyYXVlbj8gKEFuYXRvbCwgMTEuIEZlYiAxOTk5LCAyMjo0MTo1OSk6Cn4jISBybj1LYW5uaXggcnQ9OTE4NzcyODgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4NzcxMjk1CgpFbnR3ZWRlciBGcmF1IG9kZXIgaGFybWxvcy4gCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBbmdzdCB2b3IgRnJhdWVuPyAoRGVlcGJsdWUsIDExLiBGZWIgMTk5OSwgMjM6MDA6MzEpOgp+IyEgcm49S2Fubml4IHJ0PTkxODc3Mjg4MyByZz1zY2htYXJybgp+IyEgdGlkPTkxODc3MTI5NQpOdWRlbF9OXz8gTWVocnphaGw/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWNoIEthdHplbiBtZXR6ZWxuIGdlcm5lLi4uIChLYXJhbSwgMTIuIEZlYiAxOTk5LCAwMTozOTowMSk6CkR1IHNhZ3N0OiBIYWJ0IGlociBMdXN0IGF1ZiBkZW4gV2Fzc2VydHJvbGxzY2hhbWFuZW4/Cj4gU2lsZW5jZXIgc2NoYXV0IERpY2ggbWl0IGxldWNodGVuZGVuIEF1Z2VuIGFuLgp1bnQgc2lsZW5jZXIKRWluIGh1ZWJzY2hlciBrcmFlZnRpZyBhdXNzZWhlbmRlciBLYXRlciBuYW1lbnMgU2lsZW5jZXIuIEVyCmdlaG9lcnQgRmlyZWhhd2suIEVyIHNjaGF1dCBEaWNoIG1pdCBsZXVjaHRlbmRlbiBBdWdlbiBhbiB1bmQKc2NobnVycnQgc2FuZnQgdm9yIHNpY2ggaGluLgpFciBpc3QgYWJzb2x1dCBmaXQuCgotLQpLYXJhbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ2FubmFiaXNzY2huYXBzPyAoWndvY2tsaHViZXIsIDEyLiBGZWIgMTk5OSwgMDM6MzE6MTUpOgpEdSBzZXR6dCBEaWNoIGhpbiB1bmQgcmF1Y2hzdCBkZW4gSm9pbnQuIERhcyBpc3Qgd2lya2xpY2ggZ3V0ZXIgU3RvZmYuCkR1IGZ1ZWhsc3QgRGljaCBldHdhcyBiZW5vbW1lbi4KU28gZWluIFBlY2gsIER1IGhhc3QgYWxsZXMgdmVyc2NodWV0dGV0LgoKZ3JpbnNlbmQ6IFp3b2NrbGh1YmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYWphISAoVHVuaXhndXQsIDEyLiBGZWIgMTk5OSwgMDg6MzU6NTQpOgpVbmdlc2Nobml0ZW46CkdyYWxrb3IgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRnVlciBlaW5lIGt1cnplIFplaXQgYmVmYWVsbHQgRGljaCBwbG9ldHpsaWNoIGVpbiBzZWx0c2FtZXMgR2VmdWVobC4KCkphamEsIHNvIGlzIGRhcy4uLgoKJ3MgS2FyYXRlLVp3ZXJjaGxlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ2FubmFiaXNzY2huYXBzPyAoQ2VpbG8sIDEyLiBGZWIgMTk5OSwgMTA6NDU6MDYpOgp+IyEgcm49WndvY2tsaHViZXIgcnQ9OTE4NzkwMjc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE4NzkwMjc1CkRlciBKb2ludCB3YXIgaGFsdCBzY2hsZWNodCBnZWRyZWh0LgoKQ2lhbywgQ2VpbG8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLYXJuZXZhbCAoSmFzb25yaWdpZCwgMTIuIEZlYiAxOTk5LCAxMToxNTozOSk6Cn4jISBybj1HcmFsa29yIHJ0PTkxODczMjQzOSByZz1zY2htYXJybgp+IyEgdGlkPTkxODczMjQzOQoKSmFzb24gaGF0IGRhenUgbnVyIGVpbnMgenUgc2FnZW4gOiAiSGVsYXUgISEiLCB1bmQgdW50ZXJzY2hyZWlidCBnbGVpY2ggbWl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthcm5ldmFsIChBcmlhbmEsIDEyLiBGZWIgMTk5OSwgMTI6MjE6MTgpOgp+IyEgcm49R3JhbGtvciBydD05MTg3MzI0Mzkgcmc9c2NobWFycm4KfiMhIHRpZD05MTg3MzI0MzkKKmxhY2gqCgoKYXJpYW5hICpzaWNoIGltbWVyIG5vY2ggYXVmIGRlbSBib2RlbiB3YWVsemVuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNhdGFuaXNjaCBvZGVyIHRvdD8gKEFjcmltb24sIDEyLiBGZWIgMTk5OSwgMTg6NTg6MDgpOgpbQ2hhb3M6S2VsbHlCdW5keV0ga2FubiBkYXMgc2VpbiwgZGFzcyBtYW4gbmljaHQgc2F0YW5pc2NoIHNlaW4gZGFyZiBmdWVyIGRpZQpbQ2hhb3M6S2VsbHlCdW5keV0gZHVlc3RlcndhbGRxdWVzdD8KW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGRlbiBTY2hsZWltIGhhdCBnZXJhZGUgS2VsbHlidW5keSB1bWdlYnJhY2h0LgoKOi0pCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnJlbnRuZXIuLi4gKFpvb2ssIDEyLiBGZWIgMTk5OSwgMTk6MDk6NDkpOgoKRGllZGVyIHBhY2t0IHVuZ2VuaWVydCBCdXR0ZXJicm90IHVuZCBOaWVyZW4tQmxhc2VuLVRlZSBhdXMgdW5kIGJlZ2lubnQgenUKc3BlaXNlbi4gRGEgZXIgYWJlciBuaWNodCBtZWhyIGltIFZvbGxiZXNpdHogc2VpbmVuIGtvZXJwZXJsaWNoZW4KR3J1bmRmdW5rdGlvbmVuIGlzdCwga2xlY2tlcnQgZXIgc2ljaCB2b24gb2JlbiBiaXMgdW50ZW4uIER1IGJyaWNoc3Qgdm9yCkxhY2hlbiB6dXNhbW1lbiB1bmQga2FubnN0IERpY2ggZ3JhZCBub2NoIHNvIGJlaGVycnNjaGVuIGFscyBzaWNoIERpZWRlcgpiZXNjaGFlbXQgdW1zY2hhdXQuIE5hIHdlbmlnc3RlbnMgaXN0IGVzIGlobSBwZWlubGljaC4KR2FiaWxvbiBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KRGllZGVyIHNhZ3Q6IGRpZXNlciBtaXN0c3BlbGwuLi4gaGFlbmd0IHNlaXQgbW9uYXRlbiBhdWYgOTklIHVuZCB3aWxsIG5lZApEaWVkZXIgc2FndDogaG9jaGdlaGVuIDooCkR1IGZyYWdzdDogImVzc2VuIj8KRGllZGVyIGdydW1tZWx0LgoKWm9vayBkZW5rdCAuIG8gTyAoZGllc2UgcmVudG5lci4uLi4gdHN0c3RzLi4uOikpKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClpvbWJpZXMgLSBVbmQgZGllLCBkaWUgc2ljaCBhbmdlc3Byb2NoZW4gZnVlaGxlbiAoRGVlcGJsdWUsIDEyLiBGZWIgMTk5OSwgMjI6MDU6MjEpOgpVbmdla3Vlcnp0OgoKRHUgc2Fnc3Q6ICBhbGxlIHpvbWJpZXMgdG90IDooClNwcnVkZWwgaGF0IGdlcmFkZSBkaWUgVmVyYmluZHVuZyB6dSBNb3JnZW5HcmF1ZW4gZ2VrYXBwdC4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFNwcnVkZWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMYXJzIHdhciBtYWwgd2llZGVyIHNjaG5lbGxlciAoTW9yZ290aCwgMTMuIEZlYiAxOTk5LCAxODowMjoxNSk6CltUb2Q6TGFyc10gRWluIG1lZ2F0aXRhbmlzY2hlciBSaWVzZW5ncnVtbWVsYmVpc3NlciBoYXQgZ2VyYWRlIE15c3RlcmlvdXMKW1RvZDpMYXJzXSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBtZWdhdGl0YW5pc2NoZXIgUmllc2VuZ3J1bW1lbGJlaXNzZXJdIEdSVU1NUE9MVEVSIEdSVU1NRUwgR1JVTU1TIQpNeXN0ZXJpb3VzICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVhZGx5IHdvcmRzIChOaWNodHMsIDE0LiBGZWIgMTk5OSwgMDI6Mzk6MTMpOgoKQW5hdG9sIGh1c2NodCBoZXJlaW4uCkFuYXRvbCBzYWd0OiBSZS4KTXVwZmVsIGZhZWxsdCB0b3QgenUgQm9kZW4uCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCgpBdWEhIDpvKQoiIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhpaGkgKENhbGltZXJhLCAxNC4gRmViIDE5OTksIDA1OjA3OjU3KToKIEVpbiBBbCBCdW5keSBhdWZtIFNvZmEgc2l0emVuZCBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KRWluIEFsIEJ1bmR5IGF1Zm0gU29mYSBzaXR6ZW5kIHNhZ3Q6IGFyZ2wKRWluIEFsIEJ1bmR5IGF1Zm0gU29mYSBzaXR6ZW5kIHNhZ3Q6ICI+IGJlZW5kZSBzZWxic3R2ZXJ3YW5kbHVuZy4uLiBEaWVzZW4KRWluIEFsIEJ1bmR5IGF1Zm0gU29mYSBzaXR6ZW5kIHNhZ3Q6IFphdWJlciBrYW5uIG1hbiBuaWNodCBhYmJyZWNoZW4uIgoKaGloaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJpZWRlIEZyZXVkZSBFaWVycXVhcms/IChIYXJha2lyaSwgMTQuIEZlYiAxOTk5LCAwNzoxNzo1Mik6Cj4gaQouLi4uClZlcnNjaGllZGVuZXM6ICAgIAogRWluZSBrbGVpbmUgZ3JhdWUgTWF1cy4gIAogRWluIEthdGVyIG5hbWVucyBDYXR3ZWF6bGUuIAouLi4KCk5hLCB3ZW5uIGRhcyBtYWwgd2VpdGVyIGd1dGdlaHQuLi4KUy5ILiAKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgbWFjaHQgZGVubiBERVIgYXVmIC1tb2VyZGVyPyAoVHJ1ZywgMTQuIEZlYiAxOTk5LCAwOTo1ODo1Nyk6CkZvbGdlbmRlcyBpc3QgYXVmICdNb2VyZGVyJyBwYXNzaWVydDoKW01vZXJkZXI6R2Vpc3QgZWluZXMgRWlzZWxmZW53YWVjaHRlcnNdIERpZSBFaHJlIHdlcmQgaWNoIFRydWcgbmljaHQgYW50dW4sCltNb2VyZGVyOkdlaXN0IGVpbmVzIEVpc2VsZmVud2FlY2h0ZXJzXSB1bmQgaGllciBoZXJ1bXBvc2F1bmVuLCB3ZXIgbWljaApbTW9lcmRlcjpHZWlzdCBlaW5lcyBFaXNlbGZlbndhZWNodGVyc10gdW1nZW5pZXRldCBoYXQhIDwwOTo0NDowMD4KW01vZXJkZXI6R2Vpc3QgZWluZXMgRWlzZWxmZW53YWVjaHRlcnNdIERhcyB3YXIgZWluIGdlbWVpbmVyIFRpZWZzY2hsYWcsIFRydWchCltNb2VyZGVyOkdlaXN0IGVpbmVzIEVpc2VsZmVud2FlY2h0ZXJzXSA8MDk6NTA6MzU+CltNb2VyZGVyOkdlaXN0IGVpbmVzIE9iZXJhdWZzZWhlcnNdIFRydWcsIHdhZXIgamV0enQgbmljaHQgZWlnZW50bGljaApbTW9lcmRlcjpHZWlzdCBlaW5lcyBPYmVyYXVmc2VoZXJzXSBWb3JsZXN1bmc/IDwwOTo1Njo1OT4KLW1vZXJkPwpNb2VyZGVyLCBHdWNrIG1hbCB3ZXIgZGEgc3ByaWNodC4uLi4KRHUgc2llaHN0IDggR2VzaWNodGVyIGF1ZiBkZXIgRWJlbmUgJ01vZXJkZXInOgpBcmF0aCwgRGllZGVyLCBHZWlzdCBlaW5lcyBPYmVyYXVmc2VoZXJzLCBTQVRBTiwgU2lib3JpdCwgU3BlbGxmaXJlLCBUcnVnLApaaWxsdXMKR2Vpc3QgZWluZXMgT2JlcmF1ZnNlaGVycyBoYXQgZGFzIFNhZ2VuIGF1ZiBkaWVzZXIgRWJlbmUuCgoKPz8/CgpUcnVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqamFtbWVyKiAoTm92YXN0b3JtLCAxNC4gRmViIDE5OTksIDE3OjMwOjU5KToKa2F1ZmUgbGVpY2huYW0Ka2F1ZmUgbGVpY2huYW0Ka2F1ZmUgbGVpY2huYW0KRGVpbmUgU2NodWhlIGdsdWVoZW4ga3VyeiBhdWYgdW5kIGhlaWxlbiBEaWNoIGVpbiB3ZW5pZy4KQnVhaCEgQWxzbyBndXQgc2NobWVja3QgZGFzIG5pY2h0ISBIb2ZmZW50bGljaCBoZWlsdCBlcyB3ZW5pZ3N0ZW5zIC4uLgpCdWFoISBBbHNvIGd1dCBzY2htZWNrdCBkYXMgbmljaHQhIEhvZmZlbnRsaWNoIGhlaWx0IGVzIHdlbmlnc3RlbnMgLi4uCkJ1YWghIEFsc28gZ3V0IHNjaG1lY2t0IGRhcyBuaWNodCEgSG9mZmVudGxpY2ggaGVpbHQgZXMgd2VuaWdzdGVucyAuLi4KCiAgICAgTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW13ZWx0c2NoYWVkZW4gPyAoRG9nYmVydCwgMTQuIEZlYiAxOTk5LCAxOToxMTozNSk6CkR1IGJlZ2lubnN0IGluYnJ1ZW5zdGlnIHp1IGJldGVuLgpTdGluZyB0cml0dCBhdXMgZWluZXIgV29sa2UgZGVyIEZpbnN0ZXJuaXMuClR1dHN6dCBzY2hsZWljaHQgYmx1dGdpZXJpZyBoZXJlaW4uClN0aW5nIGh1ZWxsdCBzaWNoIHNlbGJzdCBpbiBlaW5lIFdvbGtlIGRlciBGaW5zdGVybmlzLgpUdXRzenQgd2l0dGVydCBCbHV0IHVuZCBzY2hsZWljaHQgZGF2b24uCk1pc3RicmF0emUgdmVyYnJhdHplbHQgc2ljaCBpbiBlaW5lbiBsZWljaHRlbiBNaXN0aGF1Y2guCkR1IGJldGVzdCBmdWVyIGd1dCBhYmdlc3R1ZXR6dGUsIGF1c3JlaWNoZW5kIGJlbHVlZnRldGUgdW5kIGd1dCBiZWxldWNodGV0ZQpTdG9sbGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG1tIChUaGVyaW4sIDE0LiBGZWIgMTk5OSwgMTk6MTY6MTIpOgpubgpEZXIgWmF1YmVyc3BydWNoIGlzdCBEaXIgbWlzc2dsdWVja3QuCkR1IGxlcm5zdCBhdXMgRGVpbmVuIEZlaGxlcm4uCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCgpXYXMgc29sbCBpY2ggZGFyYXVzIGxlcm5lbj8gSGFldWZpZ2VyIHdhcyBzY2hyZWliZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaG1tIChOb3Zhc3Rvcm0sIDE0LiBGZWIgMTk5OSwgMTk6MTY6NDgpOgp+IyEgcm49VGhlcmluIHJ0PTkxOTAxOTc3MiByZz1zY2htYXJybgp+IyEgdGlkPTkxOTAxOTc3MgpPZGVyIFJlcGVhdHNjaGxlaWZlbiBsYXNzZW4gPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWJlbiBpbiBkZW4gU1NQIChTcmFiaSwgMTQuIEZlYiAxOTk5LCAyMDoyMTo1OSk6CgpMb2dpc2NoLCBvZGVyPz8/CgpQaXR0eSBpc3QgYXVmIGVpbm1hbCB3ZWcuIER1IGdsYXVic3QgbmFjaCBvYmVuLgpQaXR0eSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKClNyYWJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZW50bmVydGVhbSAoQW1hcnlsbGlzLCAxNC4gRmViIDE5OTksIDIyOjA4OjA5KToKW1RlYW0gUmVudG5lcl0gRHJhY2hlbnBhcHBhIFR5cmlvbiBiaXR0ZXQgdW0gQXN5bC4uLi4uICp0YXR0ZXIqLgpbVGVhbTpSZW50bmVyXSBPcGEgRGllZGVyIGVyemFlaGx0IERpciBnZXJuZSB2b24gZGVyIGd1dGVuIGFsdGVuIFplaXQuCgoqa2ljaGVyKgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcmVzZXQtYnVnLi4uIChaZXIsIDE0LiBGZWIgMTk5OSwgMjM6MjE6MjcpOgogIC4uLi5ub3JtYWwvRGFlbW9uZW5wZWl0IER1Li4uLi4uLi4uLi4gOiBFbmdlbC4uLi4uLi4uICoqKioqKioqIC0+ClNjaG1ldHRlcm4KRGVyIEVuZ2VsIGZhZWxsdCB0b3QgenUgQm9kZW4uCkVpbiBFbmdlbCBmbGllZ3QgaGVyZWluLgpFaW4gRW5nZWwgZmxpZWd0IGhlcmVpbi4KCkljaCBaZXIuIFplciB0b2V0ZXQgRGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJpZXNlbmtyYWVoZSAoRm9vYmFyLCAxNS4gRmViIDE5OTksIDAwOjAzOjQ3KToKRWluZSBLcmFlaGUgZXR3YXMgMGNtIGdyb3NzLgoKTmljaHQgc2NobGVjaHQuLi4KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJba2ddaCA7KSAoQW5hdG9sLCAxNS4gRmViIDE5OTksIDAwOjE4OjExKToKRHUgcnVmc3Q6IEFSS1RPRVRFTkFSS1RPRVRFTkFSS1RPRVRFTkFSS1RPRVRFTkFSS1RPRVRFTkFSS1RPRVRFTiEKWmVwaHlyIHRlaWx0IERpciBtaXQ6IGh1Y2g/IFswMDoxNl0KWmVwaHlyIHRlaWx0IERpciBtaXQ6IHdhcyBoYXN0IER1IGdlZ2VuIEFyaz8gWzAwOjE2XQpaZXBoeXIgdGVpbHQgRGlyIG1pdDogYWhqYSBbMDA6MTZdCldpbSB0ZWlsdCBEaXIgbWl0OiB3YXMgaGF0IGRpciBhcmsgZ2V0YW4/IFswMDoxNl0KV2ltIHRlaWx0IERpciBtaXQ6IGFoIDopIFswMDoxNl0KLi4uCkR1IGJpc3QgbmljaHQgYW5zcHJlY2hiYXI6ICJTdGVyYmVuIC0gQXVnZSBkZXMgVGV1ZmVscy4uLiIKCmsuSy4KQW5hdG9sIDpvKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoU3RpbmcsIDE1LiBGZWIgMTk5OSwgMjA6MjE6NTYpOgpEdSB0ZWlsc3QgVHVmZmkgbWl0OiBpY2ggaGFiIGRlbiBrcmFmdHJpbmcgZnVlciBkaWNoIDopIHBvcnRhbCA1ClR1ZmZpIHRlaWx0IERpciBtaXQ6IG1vbWVudCBiaXRlCgpbVG9kOkxhcnNdIERlciBTY2hyZWNrZW5zZHJhY2hlIGhhdCBnZXJhZGUgVHVmZmkgdW1nZWJyYWNodC4KClN0aW5nLCBob2ZmdCwgbmljaHQgYWJnZWxlbmt0IHp1IGhhYmVuIDooCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcmF1ZW4gLi4uIChBc21vZGlzLCAxNS4gRmViIDE5OTksIDIyOjM1OjU4KToKCltBbGxnZW1laW46RGlyaW9uXSBpcyB3ZWlidm9sayBhbndlc2VuZD8KW0FsbGdlbWVpbjpMaWFyYV0gSkEKW0FsbGdlbWVpbjpEYXJpYV0gTmVpbi4gKmtpY2hlcioKW0FsbGdlbWVpbjpUaGVyaW5dIGFsc28gaWNoIHdlaXNzIG5pY2h0LCB3YXMgZGFyYW4gYmxhc3BoZW1pZSBzZWluIHNvbGwKW0FsbGdlbWVpbjpCb25lXSBXZWlidm9saz8/Pz8KW1RvZDpMYXJzXSBFaW5lIFNjaGF0dGVuZnJhdSBoYXQgZ2VyYWRlIERhcmlhIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXR0ZSBiZWdydWVzc3VuZyAoU21pbGV5LCAxNi4gRmViIDE5OTksIDAwOjM0OjAxKToKVG9kOkxhcnMgRWluIFdhc3NlcmVsZW1lbnRhciBoYXQgZ2VyYWRlIE1hbW1pIHVtZ2VicmFjaHQuCk1hbW1pIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjE6MSAoQW5hdG9sLCAxNi4gRmViIDE5OTksIDAzOjA3OjQxKToKW01vZXJkZXI6R2Vpc3QgZWluZXMgTGVpY2hlbmZldHplcnNdIFdpZWRlciBtYWwgYW4gR2VzcmEgZ2VzdG9yYmVuLCBmaW5kIGljaApbTW9lcmRlcjpHZWlzdCBlaW5lcyBMZWljaGVuZmV0emVyc10gYWxiZXJuIQpbVG9kOkxhcnNdIEVpbiBMZWljaGVuZmV0emVyIGhhdCBnZXJhZGUgR2VzcmEgdW1nZWJyYWNodC4KClNvcnJ5LApBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNb2Rpc2NoZSBHZWxkYm9lcnNlIDopIChBbGNpbmEsIDE2LiBGZWIgMTk5OSwgMTM6MDQ6NDYpOgplYmVuIGF1ZiBkZXIgSEU6CgoKTWllemUgemVpZ3QgRGlyIGlocmVuIElkaW90LgpJZ2l0dCwgZGVyIGJld2VndCBzaWNoIGphIG5vY2ggLi4uCkVyIGVudGhhZWx0OgoxMCBNdWVuemVuLgoKQWxjaW5hLCBnZWh0IG1pdCBqZWRlciBNb2RlIG1pdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuIChLZWxseWJ1bmR5LCAxNi4gRmViIDE5OTksIDEzOjA1OjQ3KToKfiMhIG9uPUtlbGx5YnVuZHkgb3Q9OTE5MTcwMzIyIG9nPXdpdHplCltOYWNocmljaHRlbjpEV10gQU5LQVJBOiBEZXIgRnVlaHJlciBkZXIgdmVyYm90ZW5lbiBBcmJlaXRlcnBhcnRlaSBLdXJkaXN0YW5zCltOYWNocmljaHRlbjpEV10gUEtLLCBBYmR1bGxhaCBPZWNhbGFuLCBiZWZpbmRldCBzaWNoIHNlaXQgRGllbnN0YWcgbW9yZ2VuIGluCltOYWNocmljaHRlbjpEV10gZGVyIFR1ZXJrZWkuIERhcyBnYWIgZGVyIHR1ZXJraXNjaGUgTWluaXN0ZXJwcmFlc2lkZW50CltOYWNocmljaHRlbjpEV10gQnVlbGVudCBFY2V2aXQgaW4gQW5rYXJhIGJla2FubnQuCkRhcyBpc3Qgc2VsYnN0IGZ1ZXIgRGljaCB6dXZpZWwuIER1IGJldWdzdCBEaWNoIHZvcm51ZWJlciB1bmQgdWViZXJnaWJzdCBEaWNoLgoKCk9obmUgd29ydGUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRGllZGVyLCAxNi4gRmViIDE5OTksIDEzOjQ4OjQ4KToKW0FsbGdlbWVpbjpTaW51c10gaGlsZmUgIQpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBTaW51cyB1bWdlYnJhY2h0LgoKa3VyeiB1bmQga25hcHAuCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FyZW4gZnVlciBkZW4gdGFlZ2xpY2hlbiBHZWJyYXVjaCAoTWllemUsIDE3LiBGZWIgMTk5OSwgMDE6NTU6MjUpOgoKV2FzIEZlbGluZW4gYWxsZXMgbWl0IHNpY2ggcnVtc2NobGVwcGVuLi4uCgoKUnVlc3R1bmdlbjoKIEVpbiBTY2hhbCAoYW5nZXpvZ2VuKS4KIEVpbiBSaW5nIGRlciBBdXNkYXVlciAoKzEpIChhbmdlem9nZW4pLgogRWluIEVoZXJpbmcgdm9uIEVnb21pciAoYW5nZXpvZ2VuKS4KIEVpbiBGdXNzcmluZyAoYW5nZXpvZ2VuKS4KVmVyc2NoaWVkZW5lczoKIEVpbiBLb3BmIGRlciBIeWRyYS4gICAgICAgICAgICAgICAgICAgIEVpbiBGYWVobmNoZW4uCiBFaW4gS29wZiBkZXIgSHlkcmEuICAgICAgICAgICAgICAgICAgICBFaW4gbWFnaXNjaGVzIEhvZXJyb2hyLgogRWluIFNhbmR0aWdlci4gICAgICAgICAgICAgICAgICAgICAgICAgRWluIFBsYW5lZGl0b3IuCiBFaW4gYWx0ZXIgT3Jra29jaC4gICAgICAgICAgICAgICAgICAgICBFaW5lIHdpbGRlIFJvc2UuCiBFaW4gYWx0ZXIgT3Jra29jaC4gICAgICAgICAgICAgICAgICAgICBFaW4gSGVyei1TcGxpdHRlci4KIEVpbiBXYXNzZXJlbGVtZW50YXIuICAgICAgICAgICAgICAgICAgIEVpbmUgb3JhbmdlIE1hdXMgYW0gQmFuZC4KIEJydW5vIGRlciBHaWxkZW5zaGFreS4gICAgICAgICAgICAgICAgIE1pZXplcyBUZWRkeWJhZXIgS3J1ZW1lbGNoZW4uCiBFaW4gRmVpbmRzY2hhZnRzYmFuZCAoZ2V0cmFnZW4pLiAgICAgICBEaWUgWmVpdHVuZy4KIEVpbiBGcmV1bmRzY2hhZnRzYmFuZCAoZ2V0cmFnZW4pLiAgICAgIEVpbiBBYmVudGV1ZXJ0YWdlYnVjaC4KIDEwMTkwIE11ZW56ZW4uICAgICAgICAgICAgICAgICAgICAgICAgIEVpbiBLZXJiaG9sei4KIEVpbmUgRGlkZGwtS251ZGRlbC1NYXVzLiAoNSkgICAgICAgICAgIEVpbmUgS3Jpc3RhbGxrdWdlbC4KIEVpbiBoYWxidmVyZGF1dGVyIElkaW90LiAgICAgICAgICAgICAgIEVpbiBrbGVpbmVyIEtyaXN0YWxsc2NobHVlc3NlbC4KIDE0MyB3ZWxrZSBCbGFldHRlci4gICAgICAgICAgICAgICAgICAgCgpNaWV6ZSwgbmltbXQgZWluZmFjaCBhbGxlcyBtaXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWdpZXIgQWJ3ZXJ0ZW4hIChEZWVwYmx1ZSwgMTcuIEZlYiAxOTk5LCAwMzowODo0MSk6CldlcnRldCBtYWwgZGllIE1hZ2llciBhYiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1ZnJ1ZXN0dW5nID8gKE5vdmFzdG9ybSwgMTcuIEZlYiAxOTk5LCAxNToyNTo0NSk6CnVudCBwYXBhZ2VpCkRlciBQYXBhZ2VpIGhhdCBzZWhyIGZhcmJlbmZyb2hlLCBsYW5nZSBGZWRlcm4gdW5kIGRpZSB2ZXJibHVlZmZlbmRlCkZhZWhpZ2tlaXQgaW4gZWxmaXNjaGVyIFNwcmFjaGUgenUgc3ByZWNoZW4uCkVyIGlzdCBhYnNvbHV0IGZpdC4gKDEwMCUpCkVyIHRyYWVndCBiZWkgc2ljaDoKRWluIFdhZWNodGVyaGVsbSAoYW5nZXpvZ2VuKS4KRWluZSBQYXJ0aXR1ci4KCldlbm4gZGllIEdlbXVlc2VmcmVzc2VyIGpldHp0IHNjaG9uIFBhcGFnZWllbiBlaW5zdGVsbGVuLi4uCiAgICAgICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBYnRlaWx1bmcgInNlbGJzdCBzY2h1bGQiIDpvKSAoQW5hdG9sLCAxNy4gRmViIDE5OTksIDE1OjU1OjMxKToKCkhhbnNoYW5zZW4gdGVpbHQgRGlyIG1pdDogd2llIGthbm4gaWNoIGRlbm4gc2VsYnN0bW9yZCB2ZXJ1ZWJlbj8KRHUgdGVpbHN0IEhhbnNoYW5zZW4gbWl0OiA1eCAidGVpbGUgbWVybGluIG1pdCB3byBiaXN0IER1IgouLi4KW1RvZDpMYXJzXSBFaW4gZ2VuZXJ2dGVyIE1lcmxpbiBoYXQgZ2VyYWRlIEhhbnNoYW5zZW4gdW1nZWJyYWNodC4KCmdvdGNoYSA6KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHdWFyZHMuLi4gKE5vdmFzdG9ybSwgMTcuIEZlYiAxOTk5LCAxODoxNjo1MSk6ClplcGh5ciB6aWVodCBkZW4gV2Fzc2VyZ2Vpc3QgYW4gZWluIHBhYXIgVHJvcGZlbiBhdXMgZGVtIFRlaWNoLgoKWmVwaHlyIHplcnJ0IHVuZCB6ZXJydCB1bmQgemVycnQuLi4KQW5hdG9sIG5pbW10IGVpbiBlcmZyaXNjaGVuZGVzIEJhZC4KRWluIFdhc3NlcmdlaXN0IGZvcm10IHNpY2ggYXVzIGRlbSBHZXdhZXNzZXIuCgpEZXIgV2Fzc2VyZ2Vpc3QgbWFjaHQgR2VzdGVuLCBkYXNzIER1IHZlcnNjaHdpbmRlbiBzb2xsc3QuCiAgICAgICBOb3ZhLCBBYnN0YW5kIGhhbHRlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFVQSA6KSAoQW5hdG9sLCAxOC4gRmViIDE5OTksIDAwOjUzOjQ2KToKWmVwaHlyIHNhZ3Q6ICBkaWUgbGVpY2hlbiBoZWlsZW4gZ3V0Ck1pc3RicmF0emUgZ3JpbnN0LgpFaW5lIExlaWNoZSB3aXJkIHZvbiBRdWljayB2b2xsIEhpbmdlYnVuZyB2ZXJzcGVpc3QuCkVpbmUgTGVpY2hlIHdpcmQgdm9uIFNoYXJpYSB2b2xsIEhpbmdlYnVuZyB2ZXJzcGVpc3QuCkVpbmUgTGVpY2hlIHdpcmQgdm9uIExpZ2h0bmluZyB2b2xsIEhpbmdlYnVuZyB2ZXJzcGVpc3QuCgpKbyA6KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEQVMgaXN0IG1hbCBlaW4gUmVzZXQtTGFnIChaZXIsIDE4LiBGZWIgMTk5OSwgMDc6NDE6MjcpOgpEYXMgS2FtcGZibGVjaCBmYWVsbHQgbGF1dCBzY2hlcHBlcm5kIHVtLgpFaW4gS2FtcGZibGVjaCBrb21tdCBhbi4KTGV0enRlIDYwIG1pbjogIyMgKDIuMSUpCkxldHp0ZSAxNSBtaW46ICMjIyMjIyAoNS45JSkKTGV0enRlIE1pbnV0ZTogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyAoNDUuNiUpCj4+IERpZXNlIE1lc3N1bmcgd3VyZGUgZ2VzcG9uc29ydCB2b246IExhZy1PLUluZHVzdHJpZXMgPDwKICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRG9uLCAxOC4gRmViIDE5OTksIDA3OjQwOjM5ICgxMiBUZWlsbmVobWVyKQoKQW1hcmluLi4uLi4uLi4uLi5zIEVtYmUuLi4uLi4uLi4uLkp3cyBTaXJsYWdhbG90Li4uLi5KLnMgU3BydWRlbC4uLi4uLi4uLi5zCk5ldm9rLi4uLi4uLi4uLi53cyBLYWhsYW4uLi4uLi4uLi4uLnMgVmluY2VudHZlZ2EuLi4uLi5TIFppbGx1cy4uLi4uLi4uLi4uUwpSZWFwZXIuLi4uLi4uLi5Kd1MgWmVyLi4uLi4uLi4uLi4uLi5TIFppbm8uLi4uLi4uLi4uLkoueiBRdWlsbGlhbi4uLi4uLi5KLk0KCkljaCBaZXIuIFplciB0b2V0ZXQgRGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjxNYXN0ZVI+IChFbWFpbCwgMTguIEZlYiAxOTk5LCAxMToxNTo0OSk6Cls8TWFzdGVSPjpSaW5nb3JdIGhleSwgbWVpbiBLbGVpbmVyIGFyYmVpdGV0IGphIGRyYW4uIEdlYnQgaWhtIGV0d2FzIFplaXQgOykKWzxNYXN0ZVI+OkFjcmltb24gZnJhZ3Qgc2ljaCwgd2VyIGtsZWluZXIgYWxzIFJpbmdvciBpc3QuXQpbPE1hc3RlUj46UmluZ29yIG1laW50ZSBkYXMgamV0enQgcmVpbiB2b20gQWx0ZXIgaGVyLiBLb2VycGVybGljaCAod2FzIHphZWhsdAogICAgICAgICAgZGFzIHNjaG9uPyA6LSkgaXN0IG1laW4gS2xlaW5lciBuYXR1ZXJsaWNoIGdyb2Vzc2VyIGFscyBpY2ggOyldCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3NvIC0gZWluIHNhZXVmZXIuLi4gKFFpdGVzcywgMTguIEZlYiAxOTk5LCAxMzoyMTo0Nik6CltBbGxnZW1laW46WmFyZG96XSBIaQpbQWxsZ2VtZWluOkRpZWRlcl0gaGkgWmFyZG96CklyZ2VuZHdvIGZhZWxsdCBlaW5lIEZsYXNjaGUgenUgQm9kZW4uCgpRSSoqIHNhZ3QgUFJPU1QhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggbGllYmUgaWdub3JpZXJlIFRocmVhZCAoWmFyZG96LCAxOC4gRmViIDE5OTksIDE1OjI4OjE4KToKVWViZXJnZWhlIEFydGlrZWwgNjUgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNjYgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNjcgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNjggYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNjkgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNzAgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNzEgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNzIgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNzMgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNzQgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNzUgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgNzYgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KRW5kbGljaCBrZWluZSBTY2hlaXNzZSBtZWhyIGluIGRlciBaZWl0dW5nISEhCgpaYXJkb3oKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKW1pUOkZyaWVkZWxdIGltIGVpcyB1bmQgc2NobmVlIGRvY2ggbmljaHQgaW0gbm9yZGVuIGRvcnQgaXN0IGVpbiB0cmFuayBmdWVyIChEaWVkZXIsIDE4LiBGZWIgMTk5OSwgMTY6MTM6NDEpOgpbWlQ6RnJpZWRlbF0gZGljaCB2ZXJib3JnZW4gdm9tIGVpc2lnZW4gd3VybSBkZXIgd2FydGV0IGltIHN0dXJtIGR1IGFiZXIgc3VjaApbWlQ6RnJpZWRlbF0gdW5kIGhlaWxlIGRlaW5lIHNvcmdlbiA8MTY6MDg6MjQ+CltaVDpKYXNvblJpZ2lkXSBrbGluZ3Qgd2llIGRlciBmcm9zdHd1cm0sIGlzdCBhYmVyIG5pY2h0IHp1IGVtcGZlaGxlbgpbWlQ6SmFzb25SaWdpZF0gPDE2OjA4OjQ5PgpbWlQ6RnJpZWRlbF0genUgc3Rhcms/IDwxNjowOTowMz4KW1pUOkphc29uUmlnaWRdIHppZW1saWNoIDwxNjowOTowOT4KW1pUOkFyYXRoXSBrYW5uIGlobiBqYSBzY2huZWxsIHVtbGVnZW4gPDE2OjA5OjM4PgpbVG9kOkxhcnNdIEVpbiBGcm9zdHd1cm0gaGF0IGdlcmFkZSBBcmF0aCB1bWdlYnJhY2h0LiA8MTY6MTE6MjA+CgpEaWVkZXIsIGtpY2hlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobSwgd2FzIHdpbGwgZGllIGVpZ2VudGxpY2g/IChFaXNpLCAxOC4gRmViIDE5OTksIDIxOjUwOjUxKToKZnJhZyBNYXlha28gbmFjaCB2aW5jZW50Ck1heWFrb3MgR2VzaWNodCBlcnJvZXRldCB2b3IgWm9ybjoKJ0RpZXNlciBTY2h1cmtlICEgRXIgYmVuYWhtIHNpY2ggc28gdW52ZXJzY2hhZW10IG1pciBnZWdlbnVlYmVyLiBVbnNlcmUKIEdhc3RmcmV1bmRzY2hhZnQgaGF0IGVyIGF1ZiBkYXMgU2NoYWVuZGxpY2hzdGUgbWlzc2JyYXVjaHQgLi4uJwoKZnJhZyBNYXlha28gbmFjaCBnYXN0ZnJldW5kc2NoYWZ0Ck1heWFrbyBzY2hhdXQgRGljaCB2ZXJ3aXJydCBhbjoKJ0Rhdm9uIHdlaXNzIGljaCBuaWNodHMsIEVpc2ksIGVzIHR1dCBtaXIgbGVpZC4nCgpFaXNpIHd1bmRlcnQgc2ljaCBkYSBuaWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1ZmhvZXJlbj8gKExldiwgMTguIEZlYiAxOTk5LCAyMzoxOTo1Nik6CgpBbmF0b2wgdGVpbHQgRGlyIG1pdDogRHUgd2lyc3QgZG9jaCB3b2hsIG5vY2ggIkljaCBrYW5uIGplZGVyemVpdCBhdWZob2VyZW4hIgpBbmF0b2wgdGVpbHQgRGlyIG1pdDogc2NocmVpYmVuIGtvZW5uZW4gOm8pCgpMZXYgaXN0IHNpY2ggZGEgbmljaHQgc28gc2ljaGVyLi4uIDopKSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGltIG1nIChBcmlhbmEsIDE4LiBGZWIgMTk5OSwgMjM6MjA6NDgpOgpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHZlcnd1c2NoZWx0IGRpciBhdXMgZGVyIEZlcm5lIGRpZSBIYWFyZQpad2lyYmVsIHRlaWx0IGRpciBtaXQ6IGpldHp0IHNpZWhzdCBkdSBhYmVyIHplcnphdXN0IGF1cyEKCmFjaCB3YXMhISEKCmFyaWFuYSAqc2ljaCBpbW1lciBub2NoIGthZW1tZW5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWndlcmcgb2RlciBuaWNodCBad2VyZz8gKFRlZGR5LCAxOS4gRmViIDE5OTksIDAwOjAyOjQ1KToKV29vIGdyaW5zdC4KV29vIHNhZ3Q6IGljaCBiaW4gZnJpc2NoIGdlYmFkZXQgLi4gYWxzbyAuLgpBcmlhbmEgZ2lidCBkaWUgQnVlcnN0ZSBhbiBXb28uCj5Xb28gc2NocnViYnQgc2ljaCBvcmRlbnRsaW9jaCBhYgoKQWxzbyBzb3dhcyBLQU5OIGtlaW4gWndlcmcgc2Vpbi4KClRlZGR5LCBiZWFudHJhZ3QgZGllIEFiZXJrZW5udW5nIGRlcyBad2VyZ2Vuc3RhdHVzIGZ1ZXIgV29vIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbW1tIC4uLiAoTGlhcmEsIDE5LiBGZWIgMTk5OSwgMDU6MDY6NDYpOgplbnRzb3JnZSBhbmdlbApEdSBoYXN0IGtlaW5lbiByaWNodGlnZW4gS29lZGVyLgoKTGlhcmEsIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppY2ggc2VoIG51ciBuaWNoIHNjaGFmZSAoS2FyaWMsIDIwLiBGZWIgMTk5OSwgMDI6MzI6MzUpOgpEdSB2ZXJmb2xnc3QgZWluIFNjaGFmLCBlaW4gU2NoYWYgdW5kIGVpbiBTY2hhZi4KCipraWNoZXIqYWxzIG9iIGljaCBuaXggYW5kZXJlcyB2ZXJmb2xnZW4gd3VlcmRlIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChXaW0sIDIxLiBGZWIgMTk5OSwgMDI6MDQ6MDQpOgpIYXJha2lyaSB0ZWlsdCBEaXIgbWl0OiBtaXN0IHNvIG9obmUgcmVwb3J0bW9kdXM7CltUb2Q6TGFyc10gSmFuZHJhbGlnZWxpIGhhdCBnZXJhZGUgSGFyYWtpcmkgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTGV2LCAyMS4gRmViIDE5OTksIDEzOjU5OjE4KToKRGVpbiBGcmV1bmQgVHdpbnNlbiB0ZWlsdCBEaXIgbWl0OiBBUkdMCkRlaW4gRnJldW5kIFR3aW5zZW4gdGVpbHQgRGlyIG1pdDogaGFiIDMyIExQCltUb2Q6TGFyc10gRWluIEZvcnNjaGVycHVua3RzYW1tbGVyIGhhdCBnZXJhZGUgVHdpbnNlbiB1bWdlYnJhY2h0LgpbVG9kOkVpbiBGb3JzY2hlcnB1bmt0c2FtbWxlcl0gSGV5LCBpY2ggYmluIGRvY2gga2VpbiBNZXR6bGVyLiBMYXNzIG1pY2ggYWxzbwpbVG9kOkVpbiBGb3JzY2hlcnB1bmt0c2FtbWxlcl0gaW4gUnVoZSEKClRqYS4uLiB3YXMgc29sbCBtYW4gZGF6dSBzYWdlbi4uLiAKCkxldi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBad2VyZyBvZGVyIG5pY2h0IFp3ZXJnPyAoQXJpYW5hLCAyMi4gRmViIDE5OTksIDA2OjI0OjQ4KToKfiMhIHJuPVRlZGR5IHJ0PTkxOTM4MjU2NSByZz1zY2htYXJybgp+IyEgdGlkPTkxOTM4MjU2NQpob2VyIG1hbCwgbnVyIHdlaWwgZHUgZG9lIHZlcmxvYnVuZyBuaWNoIHNhYm90aWVyZW4ga29ubnRlc3QsIGJyYXVjaHN0IGR1CmpldHp0IG5pY2ggZnJlY2ggd2VyZGVuICpHR0cqCmR1IGJpc3QgYXVjaCBrZWluIHJpY2h0aWdlciBjaGFvdCwgc29uZGVybiBmdXJjaHRiYXIgbGllYiEKZHUgYmlzdCBhdWNoIGtlaW4gcmljaHRpZ2VyIGNoYW90LCBzb25kZXJuIGZ1cmNodGJhciBsaWViIQoKYXJpYW5hICppaHJlbiB6d2VyZyByZWdlbG1hZXNzaWcgd2FzY2hlbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFp3ZXJnIG9kZXIgbmljaHQgWndlcmc/IChXaW0sIDIyLiBGZWIgMTk5OSwgMDY6MjU6MjgpOgp+IyEgcm49QXJpYW5hIHJ0PTkxOTY2NDY4OCByZz1zY2htYXJybgp+IyEgdGlkPTkxOTM4MjU2NQoKVGVkZHkgaXN0IGVoJyBkZXIgS3VzY2hlbGNoYW90LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFtaVDpGcmllZGVsXSBpbSBlaXMgdW5kIHNjaG5lZSBkb2NoIG5pY2h0IGltIG5vcmRlbiBkb3J0IGlzdCBlaW4gdHJhbmsgZnVlciAoSmFzb25yaWdpZCwgMjIuIEZlYiAxOTk5LCAxMjowMDoyOCk6Cn4jISBybj1EaWVkZXIgcnQ9OTE5MzU0NDIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE5MzU0NDIxCgpTYWcgaWNoIGphLCBhYmVyIGF1ZiBtaWNoIGhvZXJ0IGphIHdpZWRlciBrZWluZXIgOikKCkphc29uLCBraWNoZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXNzbyAoS2FyaWMsIDIyLiBGZWIgMTk5OSwgMTU6MDk6MTYpOgpBZXRoZXJpc2NoZSBTcGhhZXJlbmtsYWVuZ2UgZXJmdWVsbGVuIGRpZSBMdWZ0LgpEYXMgaXN0IHNlbGJzdCBmdWVyIERpY2ggenV2aWVsLiBEdSBiZXVnc3QgRGljaCB2b3JudWViZXIgdW5kIHVlYmVyZ2lic3QgRGljaC4KCmthcmljICp3dW5kZXJ0IHNpY2ggZWluIHdlbmlnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQVJHSCA6KSAoQW5hdG9sLCAyMy4gRmViIDE5OTksIDAzOjIyOjU4KToKTGlhcmEgcnVmdDogd2FhYWFhYWFhYWgKRWluIHBsb2V0emxpY2hlcyBLcmVpc2NoZW4gbGFlc3N0IERpY2ggenVzYW1tZW5zY2hyZWNrZW4uCgpBbmF0b2wsIG1hZyBuaWNodCBtZWhyIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXV3ZWlhIDopIChBbmF0b2wsIDIzLiBGZWIgMTk5OSwgMDQ6MDI6NTUpOgpbdW50IGhhZW5kZV0KRHUgaGFzdCBkZWluZSBIYWVuZGUsIGRhbWl0IER1IGJpcyB6ZWhuIHphZWhsZW4ga2FubnN0LgpEdSBzYWdzdDogMQpEdSBzYWdzdDogMgpEdSBzYWdzdDogMwpEdSBzYWdzdDogNApEdSBzYWdzdDogNQpEdSBzYWdzdDogNgpEdSBzYWdzdDogNwpEdSBzYWdzdDogOApEdSBzYWdzdDogOQpEdSBzYWdzdDogMTAKV2ltICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKQWxsZXMga2xhciwgV2ltIDopCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdXdlaWEgOikgKEFzbW9kaXMsIDIzLiBGZWIgMTk5OSwgMDY6MTA6NDgpOgp+IyEgcm49QW5hdG9sIHJ0PTkxOTc0MjU3NSByZz1zY2htYXJybgp+IyEgdGlkPTkxOTc0MjU3NQpEdSBoYXN0IDEwIEhhZW5kZSA/IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEF1d2VpYSA6KSAoQW5hdG9sLCAyMy4gRmViIDE5OTksIDEzOjI1OjMwKToKfiMhIHJuPUFuYXRvbCBydD05MTk3NDI1NzUgcmc9c2NobWFycm4KfiMhIHRpZD05MTk3NDI1NzUKPEVpbiBad2VyZz4gdGVpbHQgRGlyIG1pdDogV2ltIGhhdCB1ZWJyaWdlbnMgc2Nob24gZGFzIG1pdCBkZW4gaGFlbmRlbgo8RWluIFp3ZXJnPiB0ZWlsdCBEaXIgbWl0OiBnZWFlbmRlcnQuIEpldHp0IGthbm4gbWFuIG51ciBub2NoIGJpcyAyIHphZWhsZW4uCjxFaW4gWndlcmc+IHRlaWx0IERpciBtaXQ6IDopCgpBbmF0b2wuIEVsZi4gOm8pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBdXdlaWEgOikgKE5vdmFzdG9ybSwgMjMuIEZlYiAxOTk5LCAxNDowMjo0Nik6Cn4jISBybj1BbmF0b2wgcnQ9OTE5Nzc2MzMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE5NzQyNTc1CkVsZiA/IFNpbmQgemVobiBtaW51cyB6d2VpIG5pY2h0IGFjaHQgb2RlciBzbyA/CiAgICAgIE5vdmEsIG5hY2hkZW5rbGljaCA7LSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVlIFNwZWxscz8gKFJlYXBlciwgMjMuIEZlYiAxOTk5LCAxNjoyMjo0Nyk6CgpMb2xsaSBrb256ZW50cmllcnQgc2ljaCBhdWYgZXR3YXMuCktSQUFBQUFBQUFBQUFBQUFBQUFBQUFBV1VNTU1NTU1NTU1NTU1NTU1NTU1NIQpKZW1hbmQgaGF0IGRlbiBXb2xwZXJ0aW5nZXJjbHViIGluIGRpZSBMdWZ0IGdlc3ByZW5ndCEKCkVuZGxpY2ggbmV1ZSBTcGVsbHMhIDpvKQoKUmVhcGVyLCBob2NoZXJmcmV1dAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NobGFnemVpbGVuLi4uIChRaXRlc3MsIDIzLiBGZWIgMTk5OSwgMTY6MjM6NTApOgpEYXMgbmVubiBpY2ggZHVyY2hzY2hsYWdlbmRlIFNjaGxhZ3plaWxlOgpFYmVuIGJlaW0gWmVpdHVuZ2xlc2VuOgoKWy4uLl0KZW5kbGljaCBtYWwgd2llZGVyIGhlaW0ga29tbS4uLiB2b20gQXV0byBzaWVodCBtYW4gbnVyIG5vY2ggbmVuIDNtIGhvaGVuClNjaG5lZWhhdWZlbiAoaGF0IDJtIFNjaG5lZSBoaWVyKSA6KCgoCgoKRGllZGVyLCBob2x0IHNpY2h0IEJvaW5ncyBIb2VsbGVuZmV1ZXIgdW5kIHNwcmVuZ3QgZGVuIFdpbnRlciB3ZWcuCj4KS1JBQUFBQUFBQUFBQUFBQUFBQUFBQUFXVU1NTU1NTU1NTU1NTU1NTU1NTU0hCkplbWFuZCBoYXQgZGVuIFdvbHBlcnRpbmdlcmNsdWIgaW4gZGllIEx1ZnQgZ2VzcHJlbmd0IQoKUUkqKiB3dXNzdGUgZ2FyIG5ldCwgZGFzcyBaZWl0dW5nbGVzZW4gc28gZ2V3YWx0aWcgc2VpbiBrYW5uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzZWx0c2FtZSBsb2dpay4uIChTcGlyaWxsLCAyMy4gRmViIDE5OTksIDE3OjUzOjMyKToKfiMhIG9uPVNwaXJpbGwgb3Q9OTE5NzkyMjYyIG9nPWdpbGRlbi5rbGVydXMKZ3JlaWZlIGluIHNwYWx0ClN5bnRheDogZ3JlaWZlIGluIGxvY2gKPiBncmVpZmUgaW4gbG9jaApEZXIgU3BhbHQgaXN0IG5vY2ggdmllbCB6dSBrbGVpbiBhbHMgZGFzIER1IGRhIGhpbmVpbmdyZWlmZW4ga29lbm50ZXN0Lgo+IGdyYWJlIGxvY2gKV2llIGJpdHRlPwo+IHVudCBsb2NoCk1pdCBldHdhcyBQaGFudGFzaWUga29lbm50ZSBtYW4gZGVuIFNwYWx0IGF1Y2ggc28gbmVubmVuLgpTcHJpcmlsbCwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVta2VocnNjaGx1c3M/Pz8gKE1vcmdvdGgsIDIzLiBGZWIgMTk5OSwgMTg6Mzc6NTMpOgpbPE1hc3RlUj46TXl0aG9zIGxhZXNzdCBkaWUgRWJlbmUgJ0RyZXNkZW4nIGVudHN0ZWhlbi5dCgpBbHNvIGlzdCBEcmVzZGVuIGVpbiBNeXRob3M/Pz8gVW5kIGFsbGUgZGllIGF1cyBEcmVzZGVuIGtvbW1lbiBhdWNoPz8/Pz8/CgpNKiA7LSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZWtyb21hbmllIGltIEFuZmFuZ3NzdGFkaXVtPyAoRGVlcGJsdWUsIDIzLiBGZWIgMTk5OSwgMTk6NDE6MTkpOgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgQ2Fzc2FuZHJhLgpDYXNzYW5kcmEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCk5pZ3RoZmFsbCBrbnVkZGVsdCBDYXNzYW5kcmEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBhdWYgZGVuIEthbmFlbGVuLi4uIChZZW5kaSwgMjMuIEZlYiAxOTk5LCAyMTo0MTozMSk6CltBbGxnZW1laW46UG1nXSBtaXQgbWVpZW4gY2hhcmFrdGVyIGdlc2NoZWhlbiBzZWx0c2FtZSBkaW5nZQpbQWxsZ2VtZWluOlF1aWNrXSBlcyBmZWhsZW4gekIgdm9rYWxlIGltIG5hbWVuPzopCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXV3ZWlhIDopIChXaW0sIDIzLiBGZWIgMTk5OSwgMjM6NTI6MDIpOgp+IyEgcm49QW5hdG9sIHJ0PTkxOTc3NjMzMCByZz1zY2htYXJybgp+IyEgdGlkPTkxOTc0MjU3NQpXaWVzbyBnZWFlbmRlcnQ/IERhcyB3YXIgdm9uIEFuZmFuZyBhbiBzbyBkcmluIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFp3ZXJnIG9kZXIgbmljaHQgWndlcmc/IChUcmFuY2VmZWFyLCAyNC4gRmViIDE5OTksIDAwOjMzOjI1KToKfiMhIHJuPUFyaWFuYSBydD05MTk2NjQ2ODggcmc9c2NobWFycm4KfiMhIHRpZD05MTkzODI1NjUKR3JhZGUsIGF1Zm0gTXVlbnN0ZXJhbmVyIE11ZHN0YW1tdGlzY2g6CgpBcmlhbmE6IEljaCB3YXNjaGUgbWVpbmVuIFp3ZXJnIHJlZ2VsbWFlc3NpZwoKUGFyYWNlbHN1czogdW5kIGFsbGUgMyBXb2NoZW4gd2VjaHNlbHN0IER1IGRhbm4gZGllIEJhdHRlcmllPwoKdGYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhbnQgdG8gbWFrZSAkJCQkIGZhc3Q/IChLbnVydCwgMjQuIEZlYiAxOTk5LCAwMTozMjozMik6ClRoaXMgaXMgdGhlIG1vc3QgaW5jcmVkaWJseSBlYXN5CndheSB0byBkbyBpdCEgIFRoZXJlJ3Mgbm8gaW52ZXN0bWVudCB0byBtYWtlLCBub3RoaW5nIHRvIGJ1eSwgCm5vIHNlbGxpbmcsIG5vIHJlY3J1aXRpbmcgYW5kIGJlc3Qgb2YgYWxsIGl0J3MgYWJzb2x1dGVseSBGUkVFIQpGb2xsb3cgdGhpcyBzaW1wbGUgcHJvZ3JhbSBhbmQgeW91IHRvbyB3aWxsIGJlIG1ha2luZyAkJCQkIGZhc3QhCgoxLiAgSG9sZCBkb3duIHRoZSBzaGlmdCBrZXkuCjIuICBIaXQgdGhlIDQga2V5IGZvdXIgdGltZXMuCgoKbmFqYSwgaWNoIGhhYnMgYXVjaCBudXIgZ2VmdW5kZW4sIGFiZXIgaXN0IGRpY2ggc3Vlc3MsIG9kZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBYmdlcGFzc3QgKERlZXBibHVlLCAyNC4gRmViIDE5OTksIDAzOjI3OjEyKToKQWx0ZXI6ICA1MiBUYWdlIDAgU2VrdW5kZW4uCkRlciBSZXN0IHd1cmRlIHdvaGwgd2VnZ2VsYXNzZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxlaWNoZW4gKERlZXBibHVlLCAyNC4gRmViIDE5OTksIDE3OjIyOjI1KToKPnN0ZWNrZSBhbGxlcyBpbiByYXVtIGluIHBha2V0CkRpZSBMZWljaGUgaXN0IG5pY2h0IGxlZXIhCgpNdXNzIG1hbm4gZXJzdCBkaWUgRWluZ2V3ZWlkZSByYXVzcmVpc3Nlbj8/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogcnVlc3R1bmdlbiAoQW5hdG9sLCAyNC4gRmViIDE5OTksIDE5OjM0OjIzKToKfiMhIHJuPUFuYXRvbCBydD05MTk4ODQ3NjYgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9OTE5ODE1MDY2CktleSB0ZWlsdCBEaXIgbWl0OiBoYWIgYWJlciBrZWluZW4gdG9kIHp1bSBhYmlkZWxuIDopCgpGcnVlaGVyIHdhciBhbGxlcyBiZXNzZXIgOi0oCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IExlbmFzIFBQIChBbmF0b2wsIDI0LiBGZWIgMTk5OSwgMjA6MTY6MTEpOgp+IyEgcm49TGVuYSBydD05MTk4ODczMDMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MTkyNzE3ODAKQW5hY3Jpb24gcnVmdDogR1JSSUlJSU1NTUJPUk4gKnNjaG5pZWYqCgpBbmF0b2wgLSBrZWluIEtvbW1lbnRhcgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBSYWNoZSBkZXIgSHlkcmEgKFNyYWJpLCAyNC4gRmViIDE5OTksIDIwOjU5OjE3KToKTmEgamEsIEJpZ2FzIGRlbiBlaW5lbiB1bmQgZGVyIGFuZGVyZSBCaWdhcwoKTW9lcmRlciBEYXMgc2FnIGljaCBhbGxlcyBCb2luZywgQmlnYXMhClRvZCBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgQmlnYXMgdW1nZWJyYWNodC4KVG9kIGhzc3Nzc3MgCgpTcmFiaSwgaW1tZXIgbm9jaCB0cmF1ZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBSYWNoZSBkZXIgSHlkcmEgKEFuYXRvbCwgMjQuIEZlYiAxOTk5LCAyMDo1OTo1Nyk6Cn4jISBybj1TcmFiaSBydD05MTk4ODk5NTcgcmc9c2NobWFycm4KfiMhIHRpZD05MTk4ODk5NTcKWm11ZC1QYXJzaW5nIGF1cywgU3JhYmkgOm8pCgpBbmF0b2wgLSBURjQwYjMKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobSAqZ3J1ZWJlbCogKEphc29ucmlnaWQsIDI0LiBGZWIgMTk5OSwgMjE6MTc6NDIpOgpbVG9kOkxhcnNdIEVpbiBIeWRyYWtvcGYgaGF0IGdlcmFkZSBMZW5hIHVtZ2VicmFjaHQuIDwyMDo0Mjo1OD4KW1RvZDplaW4gSHlkcmFrb3BmXSBoc3Nzc3NzICA8MjA6NDI6NTg+CltUb2Q6TGFyc10gRWluIEZldWVyZ2Vpc3QgaGF0IGdlcmFkZSBMZW5hIHVtZ2VicmFjaHQuIDwyMDo1ODo0Nz4KRGllIEh5ZHJhIGVyaGVidCBzaWNoIGF1cyBkZW0gVGFsIGRlciBMdXBpbmVuLgpEZXIgU2FuZHRpZ2VyIGJlZ3J1ZXNzdCBMZW5hIG1pdDogSGFsbG8sIExlbmEhCkxlbmEgaHVlcGZ0IGhlcmVpbi4KTGVuYSB3aXJkIHdlZ2dlaHVlcGZ0LgoKT2IgZGFzIHdhcyBtaXRlaW5hbmRlciB6dSB0dW4gaGF0ID8/CgpKYXNvbiB3ZWlzcyBlcyBhdWNoIG5pY2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllIFJhY2hlIGRlciBIeWRyYSAoSmlkZHUsIDI0LiBGZWIgMTk5OSwgMjE6NTM6MTUpOgp+IyEgcm49U3JhYmkgcnQ9OTE5ODg5OTU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE5ODg5OTU3ClN0ZWxsdCBlbmRsaWNoIG1hbCBldXJlIHpNVURzIHJpY2h0aWcgZWluIG9kZXIgbGFzc3QgZGFzIHBvc3RlbiA7KQpKaWRkdSwga2FubiBbXSB1bmQgIiIgdW5kIDogdW5kIHNvIDpQCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERpZSBSYWNoZSBkZXIgSHlkcmEgKFNvbmdva3UsIDI1LiBGZWIgMTk5OSwgMTE6MTg6MzQpOgp+IyEgcm49SmlkZHUgcnQ9OTE5ODkzMTk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE5ODg5OTU3CnVuZCB3aWUgZ2VodCBkYXMgPz8KKGJpbiBibG9lZCkKKGJpbiBibG9lZCkKClNheW9uYXJhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2V5cyBSZWlzZW4gOikgKEtleSwgMjUuIEZlYiAxOTk5LCAxMzowMjowNSk6CkhvZXJldCB3YXMgZXVjaCBnZXNhZ3Qgd2lyZCEKClZvciBrdXJ6ZW0gbWFjaHRlIGljaCBtaWNoIGF1ZiBkZW4gV2VnLCB1bSBkaWUgV2VsdCB6dSBzZWhlbi4KCk1laW4gRXJzdGVzIFppZWwgbGFnIGluIGVpbmVtIEdlYmlldCBkYXMgbWFuIHdlaXRsYWV1ZmlnIHVudGVyICJSdWhycG90dCIKRG9ydCBzdWNodGUgaWNoIGRpZSBTaWVkbHVuZyBCb25uIGF1ZiwgdW0genUgdHJlZmZlbiBkZW4gR3Jvc3NlbiBkZXIKS2xlaW5lbiwgdW5kIGRlbiBDaGFvdGlzY2hzdGVuIGRlciBDaGFvdGVuIDopCkJlaSBkZW0gR3Jvc3NlbiBkZXIgS2xlaW5lbiBoYW5kZWx0ZSBlcyBzaWNoIG5hdHVlcmxpY2ggdW0gU2Nob2tvLCB1bnNlcmVuCmdlc2NoYWV0emVuIEV4LUhvYmJpdC1LYWVtcGZlciwgZGVyIG51biBlaW4gZWluc2FtZXMgTGViZW4gZ2FueiBhbGxlaW5lIGluCnNlaW5lciBIb2VobGUgZnVlaHJ0LCB1bmQgYmVnZWlzdGVydCBzZWx0c2FtZSBNb2ViZWxnZXNjaGFlZnRlIGJlc3VjaHQgdW0KZG9ydCBTY2hsYWZjb3VjaHMgenUgZXJzdGVpZ2VybiA7KQpCZWkgZGVtIGNoYW90aXNjaHN0ZW4gZGVyIENoYW90aXNjaGVuIGdlaHQgZXMgbmF0dWVybGljaCB1bSB1bnNlcmVuCmdlc2NoYWV0emVuIENoYW9zbWFnaWVyIEZldWVyd2Voci4KTmljaHQgenUgdmVyZ2Vzc2VuIGlzdCBuYXR1ZXJsaWNoIGVpbmUga2xlaW5lIHdlaXNlIFNjaGlsZGtyb2V0ZSBkaWUgbWljaAphdWYgZGVyIFJlaXNlIGJlZ2xlaXRldGUsIHVuZCBkaWUgaWNoIHZvciBkZW4gYm9lc2VuIFpXRUkgYmVzY2h1ZXR6ZW4KbXVzc3RlLgoKU2Nob24gYW0gZ2xlaWNoZW4gQWJlbmQgZ2VsYW5nIGVzIG1pciBlcnN0ZSBLb250YWt0ZSB6dSBkZW4gU2VlbGVuIGJlaWRlcgpJbmRpdmlkdXVtcyBhdWZ6dW5laG1lbi4gSWNoIGhhdHRlIG5vY2ggZ3Jvc3NlcyB2b3IuCkRpZSBlcnN0ZSBCb3RzY2hhZnQgZGllIG1pY2ggYXVzIGRlbiBHZWlzdGVybiBlcnJlaWNodGUgd2FyIGRlciBHZWRhbmtlIGFuCmVpbiBGZXN0IC4uLi4KSWNoIGhpZWx0IGVzIGZ1ZXIgZWluIEZlc3QgenUgRWhyZW4gZGVzIENoYW9zLCBhbGxlcyBkZXV0ZXRlIGRhcmF1ZmhpbiBkYXMKZXMgZGllIHdvaGwgZ3JvZXNzdGUgVmVyYW5zdGFsdHVuZyBpbSBKYWhyIHNlaSB1bSBkYXMgQ2hhb3MgYW4gc2ljaCB6dQplaHJlbi4KQWxzbyBiZXNjaGxvc3MgaWNoIGRpZXNlcyBGZXN0IGF1c3p1c3VjaGVuLgpFcyBmaW5kZXQgamFocmxpY2ggc3RhdHQgYW4gZWluZW0gVGFnIGRlbiBtYW4gUm9zZW5tb250YWcgbmVubnQuCkljaCBob2ZmdGUgenVtaW5kZXN0IGRhcyBlcyBlaW4gc2Nod2FyemVyIFJvc2VubW9udGFnIHNlaS4KCkljaCBzY2huYXBwdGUgbWlyIG1laW5lIEJlZ2xlaXRlciB1bmQgem9nIGxvcy4KUmljaHR1bmcgRG9yZnBsYXR6LiBEYSBzb2xsdGVuIGVpbmlnZSBVbmdldHVlbWUgdW5kIGVpbmUgZ3Jvc3NlClN0cmVpdG1hY2h0IHZvcmJlaXppZWhlbi4KSWNoIGhhdHRlIHZvciBkaWUgZ2VzYW1tZWx0ZW4gTWFzc2VuIGRlbSBDaGFvcyB6dSB1bnRlcndlcmZlbiwgdW0gc2llIHp1CnVuc2VyZW4gU2tsYXZlbiB6dSBtYWNoZW4uCkplZGVyIHdlaXNzIG5hdHVlcmxpY2ggZGFzIGVzIGJlaSBtZWhyIGFscyA1IFBlcnNvbmVuIHRvZWRsaWNoIGlzdCBzaWUgenUKdW50ZXJ3ZXJmZW4sIGFiZXIgaWNoIGVyaW5uZXJ0ZSBtaWNoIGFuIGRpZSBHZWRhbmtlbiBkZXMgU2Nob2tvcyB1bmQgZGVzCkZldWVyd2VocnMgLi4uLi4gRGVtbmFjaCB3YXIgaWNoIHVtZ2ViZW4gdm9uIENoYW90ZW4uCkRvY2ggbm9jaCBzYWggaWNoIG5pY2h0cyBkYXZvbi4gRGllIE1lbnNjaGVuIGVyaW5uZXJ0ZW4gbWljaCBlaGVyIGFuIE5hcnJlbgouLi4KCkFsc28gaG9mZnRlIGljaCBhdWYgZGllIFN0cmVpdG1hY2h0IGRpZSBqYSBoaWVyIGZvbGdlbiBzb2xsdGUuCkljaCBmYXNzdGUgbWljaCBpbiBHZWR1bGQgdW5kIGJhbGQgaG9lcnRlIGljaCBlcyAuLi4uCkRlbiBMYWVybSBkZXIgSG9lbGxlLCBkYXMganViZWxuIHZlcmxvcmVuZXIgc2VlbGVuLgpVbmQgZGFubiBrYW0gRVMgdW0gZGllIEVja2UgLi4uLgpFcyB3YXIgZWluIHNlbHRzYW0gYnVudGVzIEdlZmFlaHJ0LCB3b2hsIGVoZXIgdm9uIHZlcnJ1ZWNrdGVuIFphdWJlcmVybgplcmZ1bmRlbiBhbHMgdm9uIENoYW90ZW4uCkV0d2FzIGVudHRhZXVzY2h0IHdhcnRldCBpY2ggYWIuIFVuZCBzaWVoZSBldHdhcyBnZXNjaGFoLgpEaWUgV2VzZW4gYXVmIGRlbiBHZWZhZWhydGVuIGdyaWZmZW4gYW4hIFNpZSB2ZXJzdWNodGVuIGRpZSBNZW5zY2hlbiB1bnRlcgppaG5lbiBpbiBpaHJlIEdld2FsdCB6dSBicmluZ2VuIQpNaXIga2xlaW5lbiBzZWhyIGhhcnRlbiBnZXNjaG9zc2VuIGJld2FyZmVuIHNpZSB1bnMgdW5kIGxhbmRldGVuIGVpbmlnZQpUcmVmZmVyISBXZXIgZGllcyB1ZWJlcmxlYnRlIGJla2FtIGVpbmUgZ2FueiBiZXNvbmRlcmUgTWFnaWUgenUgc3B1ZXJlbi4KS2xlaW5lIFBhcHB0ZWlsZSBkaWUgZWluZW4gRHVmdCB2ZXJzdHJvZW10ZW4gZGVyIGVpbmVuIGluIGRpZSBIb2VsbGUKc2NoaWNrZW4ga2FubiAuLi4uIGF1cyAzIGttIEVudGZlcm51bmchCkFiZXIgc2llIHJlY2huZXRlbiBhdWNoIGJlaSBkZW0gQW5ncmlmZiBtaXQgdWViZXJsZWJlbmRlbi4gRGllc2Ugd3VyZGVuCmltbWVyIHdlaXRlciBtaXQgZGVuIGtsZWluZW4gZ2VzY2hvc3NlbiBiZXdvcmZlbiwgdW5kIHNvZ2FyIGtsZWluZSBXb2xrZW4KYXVzIFBhcGllciB3dXJkZW4gZWluZ2VzZXR6dC4gSWNoIG5laG1lIGFuIGRhbWl0IHdvbGx0ZSBtYW4gdW5zIGVyc3RpY2tlbi4KCldlciBkaWVzIGFsbGVzIGplZG9jaCB1ZWJlcmxlYnRlIGRlciB3dXJkZSBtaXQgS3JlaXNydW5kZW4gUGxhc3Rpa3NjaGVpYmVuCmJlbG9idCwgc29nLiBDRHMgLi4uLiBEaWVzZSBrb25udGVuIGRpZSBLb2VwZmUgYWJzY2hsYWdlbiwgb2RlciBkYXMgR2VoaXJuCnplcnF1ZXRzY2hlbiB3ZW5uIG1hbiBlcyB3YWd0ZSBzaWUgc2ljaCBhbnp1aG9lcmVuIQoKV2llIGlociBzZWh0IGhhdHRlIGljaCBrZWluZSBDaGFuY2UgYmVpIGRpZXNlbSBGZXN0IGF1Y2ggbnVyIGVpbmVuIE1lbnNjaGVuCnp1IGFzc2ltaWxpZXJlbi4gRW50d2VkZXIgd2FyZW4gc2llIHRvdCwgb2RlciBpbiBlaW5lbSBkZXJhcnRpZ2VuCldhaG5zaW5uaWdlbiBadXN0YW5kIGRhcyBzaWUgbmljaHQgbWVociB6dSByZXR0ZW4gd2FyZW4uCgpBbHNvIG1hY2h0ZSBpY2ggbWljaCBtaXQgbWVpbmVuIEJlZ2xlaXRlcm4gYXVmIGRlbiBSdWVja3dlZywgd2llIGR1cmNoIGVpbgpXdW5kZXIgaGF0dGVuIHdpciBhbGxlIGtlaW5lIEVybnN0aGFmdGVuIFZlcmxldHp1bmdlbi4KCkluIHVuc2VyZW0gVm9ydWViZXJnZWhlbmRlbiBMYWdlciBhbmdla29tbWVuIGJlcnVoaWd0ZW4gd2lyIHVucyBlcnN0bWFsIG1pdAplaW5lbSBTdG9lZmZjaGVuIG5hbWVucyBLb2Vsc2NoLgoKRGFubiAuLi4uIHNwYWV0ZXIgYW0gQWJlbmQgLi4uLiBlcmJsaWNrdGUgaWNoIG1laW5lIENoYW5jZS4KRW5kbGljaCB3YXJlbiBtZWluZSBNaXRzdHJlaXRlciBtdWVkZSBnZW51ZyBkYXMgaWNoIHNpZSBhc3NpbWlsaWVyZW4ga29ubnRlIQoKTmFjaGRlbSBpY2ggenVyIFByb2JlIGVpbmVuIEhhc2VuLCBlaW5lbiBLbGVpZGVyc2NocmFuaywgZWluZSBNYXRyYXR6ZSwgdW5kCmRpdmVyc2UgSGF1c3N0YXVibWlsYmVuIGFzc2ltaWxpZXJ0ZSBtYWNodGUgaWNoIG1pY2ggYW4gZGVuIGFuZGVyZW4genUKc2NoYWZmZW4uCkRhbmsgbWVpbmVyIFZvcmFyYmVpdCB1ZWJlciBkaWUgbGV0enRlbiAyIFRhZ2Ugd2FyIGVzIHNlaHIgZWluZmFjaCBzaWUgaW4KZGllIHJpY2h0aWdlIEJhaG5lbiB6dSBsZW5rZW4gdW5kIGlobmVuIHp1bWluZGVzdCBrbGVpbmUgQmVmZWhsZQplaW56dXByYWVnZW4uCkljaCBsaWVzcyBlcyBqZWRvY2ggYmVpIGVpbmlnZW4gd2VuaWdlbiB1bSBzaWUgbmljaHQgZ2xlaWNoIHdpZWRlciBkdXJjaAplaW5lbiBVbmZhbGwgKGRlciBqYSBsZWlkZXIgc2Nob24gb2VmdGVyIHBhc3NpZXJ0ZSkgenUgdmVybGllcmVuLgoKClNvIG51biBzY2hsaWVzc2UgaWNoIGRlbiBlcnN0ZW4gVGVpbCBtZWluZXMgQmVyaWNodGVzIHVlYmVyIGRpZSBSZWlzZSBlaW5lcwpDaGFvdGVuIGluIGVpbmVyIGZyZW1kZW4gV2VsdCBhYi4KU28gbnVuIHNjaGxpZXNzZSBpY2ggZGVuIGVyc3RlbiBUZWlsIG1laW5lcyBCZXJpY2h0ZXMgdWViZXIgZGllIFJlaXNlIGVpbmVzCkNoYW90ZW4gaW4gZWluZXIgZnJlbWRlbiBXZWx0IGFiLgoKSWNoIHd1ZXJkZSBzYWdlbiBpY2ggd2FyIGVyZm9sZ3JlaWNoLCBpbW1lcmhpbiBoYWIgaWNoIGZ1ZXIgZGFzIENoYW9zIGVpbmVuCmVjaHRlbiBDaGFvc21hZ2llciwgZWluZW4gc2VociBzZWx0ZW5lbiBIb2JiaXRrYWVtcGZlciwgZWluZW4KS2xlaWRlcnNjaHJhbmssIGVpbmVuIEhhc2VuLCBlaW5lIE1hdHJhdHplLCB1bmQgZGl2ZXJzZSBIYXVzc3RhdWJtaWxiZW4KZGF6dWdld29ubmVuLgoKCkJpcyB6dW0gbmFlY2hzdGVuIFRlaWwuCgoKS2V5LCAxLiBWb3JzaXR6ZW5kZXIgZGVzIENoYW9zcmF0ZXMKClAuUy46IFNvcnJ5IGlzdCBkb2NoIGV0d2FzIGxhZW5nZXIgZ2V3b3JkZW4gOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQ3JpdHRlciwgMjUuIEZlYiAxOTk5LCAxMzo0NTo0Nyk6CkRpZXNtYWwga2VpbiBTcGllbGVyCkR1IHNjaGltcGZzdDogR2xlaWNoIG1hY2ggaWNoIERpY2ggYnJlaXQuCkVpbiBQcmllc3RlciBkZXIgWGFudGkgZXJ3aWRlcnQ6IEhtbT8KICBSaW5na2VlcGVyIHRyaWZmdCBkZW4gUHJpZXN0ZXIgZGVyIFhhbnRpIGhhcnQuCkRpZXMgd2FyIE1vbnN0ZXIgTnIuIDI4IQpGdWVyIFJpbmdrZWVwZXIgd2FyIGRpZXMgTW9uc3RlciBOci4gMjkhCmdydXNzIGMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEthcmFtLCAyNS4gRmViIDE5OTksIDE5OjUyOjU5KToKR3JvdGh5ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkdyb3RoeSB0ZWlsdCBEaXIgbWl0OiBtbWggc2NoYWRlCltUb2Q6TGFyc10gRWluIE5lY3JvbWFudCBoYXQgZ2VyYWRlIEdyb3RoeSB1bWdlYnJhY2h0LgoKS2FyYW0gKGhhdCBuaXggZ2VrdWVyenQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBad2VyZyBvZGVyIG5pY2h0IFp3ZXJnPyAoQXJpYW5hLCAyNS4gRmViIDE5OTksIDIwOjU5OjI1KToKfiMhIHJuPVRyYW5jZWZlYXIgcnQ9OTE5ODE2NDA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE5MzgyNTY1CnVuZCBpbiBtYXJidXJnIHdpcmQgZXIgc29nYXIgZHVzY2hlbi4uLi4KCmFyaWFuYSAqc2ljaCBzaWNoZXIgc2VpbmVuZCwgZGFzcyBlciB0cm90emRlbSB6d2VyZyBpcyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWndlcmcgb2RlciBuaWNodCBad2VyZz8gKFRlZGR5LCAyNS4gRmViIDE5OTksIDIxOjE5OjIxKToKfiMhIHJuPUFyaWFuYSBydD05MTk2NjQ2ODggcmc9c2NobWFycm4KfiMhIHRpZD05MTkzODI1NjUKSUNIIEJJTiBOSUNIVCBMSUVCISEhCgpUZWRkeSwgQ2hhb3QgYXVzIFVlYmVyemV1Z3VuZyB1bmQgYm9lc2FydGlnIHVuZCBnZW1laW4gdW5kIHVlYmVyaGF1cHQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBad2VyZyBvZGVyIG5pY2h0IFp3ZXJnPyAoVGVkZHksIDI1LiBGZWIgMTk5OSwgMjE6Mzc6NTIpOgp+IyEgcm49QXJpYW5hIHJ0PTkxOTk3NjM2NSByZz1zY2htYXJybgp+IyEgdGlkPTkxOTM4MjU2NQpBbHNvIGljaCBibGVpYiBkYWJlaTogU293YXMga2FubiBrZWluIHp3ZXJnIHNlaW4hCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogWndlcmcgb2RlciBuaWNodCBad2VyZz8gKFRlZGR5LCAyNS4gRmViIDE5OTksIDIxOjU0OjQxKToKfiMhIHJuPVRlZGR5IHJ0PTkxOTk3NzU2MSByZz1zY2htYXJybgp+IyEgdGlkPTkxOTM4MjU2NQpSZWFrdGlvbiAoemVuc2llcnQsIGF1ZiBtZWluZW4gQXJ0aWtlbDoKQWxpbmUgdGVpbHQgRGlyIG1pdDogbHVlZ25lciEKUmVha3Rpb24gYXVmIGRpZSB1cnNwcnVlbmdsaWNoZSBBbnR3b3J0IChnZWxvZXNjaHQpOgpDYWxpbWVyYSBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLiAgCkFyaWFuYSB0ZWlsdCBEaXIgbWl0OiBkdSBiaXN0ICAgICAgIApBcmlhbmEgdGVpbHQgRGlyIG1pdDogc29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb28KQXJpYW5hIHRlaWx0IERpciBtaXQ6IG9vb28gbGllYiAgICAgICAgICAgCgpBbHNvIGlyZ2VuZHdpZSBuaW1tdCBtaWNoIGtlaW5lciBlcm5zdCA6LSgKClRlZGR5LCBjaGFvdGlzY2gsIGJvZXNlIHVuZCBnZW1laW4gKHRyb3R6ZGVtKS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG5lbGxlciBsZXNlbiEgKEFjcmltb24sIDI1LiBGZWIgMTk5OSwgMjI6MDI6NDYpOgpBc21vZGlzIHdvbGx0ZSBkaWVzZW4gQXJ0aWtlbCA6LSkKCkFjcmltb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLZXlzIFJlaXNlbiA6KSAoQWNyaW1vbiwgMjUuIEZlYiAxOTk5LCAyMjoxMzoxNCk6Cn4jISBybj1LZXkgcnQ9OTE5OTQ3NzI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTE5OTQ3NzI1Cj4gLi4uLi4gRGVtbmFjaCB3YXIgaWNoIHVtZ2ViZW4gdm9uIENoYW90ZW4uCj4gRG9jaCBub2NoIHNhaCBpY2ggbmljaHRzIGRhdm9uLiBEaWUgTWVuc2NoZW4gZXJpbm5lcnRlbiBtaWNoIGVoZXIgYW4gTmFycmVuCj4gLi4uCgpEYXMgaXN0IGRvY2ggZGFzc2VsYmUuCgpBY3JpbW9uLCBkZXIgUm90ZSBSaXR0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFoamEuLi4gZ3V0IHp1IHdpc3Nlbi4uLi4gKExldiwgMjUuIEZlYiAxOTk5LCAyMzo0NDoxOCk6CgpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KU3RpbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCkxldiBncmluc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hsZWNodGUgU2VrdW5kZSBmdWVyIE1vbnN0ZXJsaXMgOykgKE5vdmFzdG9ybSwgMjUuIEZlYiAxOTk5LCAyMzo1NTowOCk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIFdlZ2hpZXJzXSBXYXJ1bSBoYXQgbWlyIG5pZW1hbmQgZ2VnZW4gUXVpY2sgZ2Vob2xmZW4/CkRhcyBNb3JnZW5HcmF1ZW4gZXJ6aXR0ZXJ0IHVudGVyIGVpbmVtIGxhbmdlem9nZW5lbiwgdW5tZW5zY2hsaWNoZW4gU2NocmVpLgpEaWUgSHlkcmEgc3RpcmJ0IGluIGVpbmVtIE1lZXIgdm9uIEJsdXQuCgogICAgICAgTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IDEwIEdydWVuZGUsIHdhcnVtIEJpZXIgYmVzc2VyIGlzdCBhbHMgQ2hyaXN0ZW50dW0gKEdyaW1tYm9ybiwgMjYuIEZlYiAxOTk5LCAwMDo0NToxMCk6Cn4jISBvbj1ZZW5kaSBvdD05MTk4MDA4MTQgb2c9d2l0emUKfiMhIHJuPVp3b2NrbGh1YmVyIHJ0PTkxOTYzMjI2NCByZz13aXR6ZQp+IyEgdGlkPTkxOTYzMjI2NApBY3JpbW9uLCBJaHIgRWluc2F0eiEKCllUWQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogMTAgR3J1ZW5kZSwgd2FydW0gQmllciBiZXNzZXIgaXN0IGFscyBDaHJpc3RlbnR1bSAoR3JpbW1ib3JuLCAyNi4gRmViIDE5OTksIDAwOjQ1OjE4KToKfiMhIG9uPVp3b2NrbGh1YmVyIG90PTkxOTg0OTgyMCBvZz13aXR6ZQp+IyEgcm49WWVuZGkgcnQ9OTE5ODAwODE0IHJnPXdpdHplCn4jISB0aWQ9OTE5NjMyMjY0CkphLCBhdWYgRmxhbWVzIGhhYiBpY2ggbWljaCBzY2hvbiBnZWZyZXV0LCBhYmVyIG5pY2h0IG1hbCBkYXJhdWYga2FubiBtYW4gc2ljaAp2ZXJsYXN6ZW4gOm8pCgpad29ja2wqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAxMCBHcnVlbmRlLCB3YXJ1bSBCaWVyIGJlc3NlciBpc3QgYWxzIENocmlzdGVudHVtIChHcmltbWJvcm4sIDI2LiBGZWIgMTk5OSwgMDA6NDU6MjIpOgp+IyEgb249TW9yZ290aCBvdD05MTk4NTAyNDIgb2c9d2l0emUKfiMhIHJuPVp3b2NrbGh1YmVyIHJ0PTkxOTg0OTgyMCByZz13aXR6ZQp+IyEgdGlkPTkxOTYzMjI2NApXaWVzbz8/CgpEYWdlZ2VuIGthbm4gbWFuIG5pY2h0cyBzYWdlbiwgd2VpbCBlcyB3YWhyIGlzdCAhIQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogMTAgR3J1ZW5kZSwgd2FydW0gQmllciBiZXNzZXIgaXN0IGFscyBDaHJpc3RlbnR1bSAoR3JpbW1ib3JuLCAyNi4gRmViIDE5OTksIDAwOjQ1OjMwKToKfiMhIG9uPUFjcmltb24gb3Q9OTE5ODcyMTU4IG9nPXdpdHplCn4jISBybj1ZZW5kaSBydD05MTk4MDA4MTQgcmc9d2l0emUKfiMhIHRpZD05MTk2MzIyNjQKRGFzIGlzdCBkb2NoIHp1IGxhZWNoZXJsaWNoLgpEYXMgaXN0IHNvIGJsb2VkLCBkYSBrYW5uIG1hbiBzaWNoIGdhciBuaWNodCBkYXJ1ZWJlciBhdWZyZWdlbiA6LSkKCkFjcmltb24sIGRlciBSb3RlIFJpdHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogMTAgR3J1ZW5kZSwgd2FydW0gQmllciBiZXNzZXIgaXN0IGFscyBDaHJpc3RlbnR1bSAoR3JpbW1ib3JuLCAyNi4gRmViIDE5OTksIDAwOjQ1OjM4KToKfiMhIG9uPUtlbGx5YnVuZHkgb3Q9OTE5ODc2NzMxIG9nPXdpdHplCn4jISBybj1BY3JpbW9uIHJ0PTkxOTg3MjE1OCByZz13aXR6ZQp+IyEgdGlkPTkxOTYzMjI2NApEZXN3ZWdlbiBpc3QgZGllIFJ1YnJpayBqYSBhdWNoIHJpY2h0aWcgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IDEwIEdydWVuZGUsIHdhcnVtIEJpZXIgYmVzc2VyIGlzdCBhbHMgQ2hyaXN0ZW50dW0gKEdyaW1tYm9ybiwgMjYuIEZlYiAxOTk5LCAwMDo0NTo0Nik6Cn4jISBvbj1ZZW5kaSBvdD05MTk5NTI5MDAgb2c9d2l0emUKfiMhIHJuPUFjcmltb24gcnQ9OTE5ODcyMTU4IHJnPXdpdHplCn4jISB0aWQ9OTE5NjMyMjY0CkFjcmltb24gd2lyZCBhbHRlcnN3ZWlzZSwgbmFuYW5hbmFuYWFuYWFhISA6KQpXYXJ0ZXQncyBhYiwgYWxzIG5hZWNoc3RlcyBlcnppZWhlbiB3aXIgaWhtIHNlaW4gInN6IiBhYiwKdW5kIGRhbm4gdHJpdHQgZXIgYmVpIGRlbiBDaGFvdGVuIGVpbiEKClllbmRpCiAgICAgICBmcmV1dCBzaWNoIHNjaG9uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklyZ2VuZHdpZSBha3R1ZWxsIChHZXNhbmR0ZXIsIDI2LiBGZWIgMTk5OSwgMDM6MDE6MjUpOgoKUnVicmlrIDM1OiBwYXJ0eSwgQXJ0aWtlbDogMiB2b24gMTI0ClJlOiBXYXQgaXNzIG51aD8gKEFuYWNyaW9uLCAgNy4gRGV6IDE5OTgsIDExOjIwOjQ2KToKW0JlenVnOiBBcnRpa2VsIDEgdm9uIEhhcmRpbCB2b20gIDUuIERleiAxOTk4LCAxNzoyNjowNV0KCkRvY2guIEljaCBtYWNoIGF1Y2ggZWluZS4gSW4gSXNjaGdsLCBtaXQgZWluIHBhYXIgZ3V0ZW4gRnJlbmRlbiA6KQpBbmFjKiAtIHNjaG1hcnJlbmRUc3MKTC4uR2VzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc293YXMgZ2VodCBhdWNoPyAoTWVuYWNlLCAyNi4gRmViIDE5OTksIDEyOjM4OjEwKToKV3VuZyB3aXJmdCBlaW4gRXJkYmViZW4gdm9uIGVpbmVyIEhhbmQgaW4gZGllIGFuZGVyZSB1bmQgc2NobmF0dGVydCBkYWJlaQpmcm9laGxpY2guIApXaWxsaSBncmluc3QuCndhZWx6CkR1IHdhZWx6dCBEaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KCk1lbmFjZSBzY2htdW56ZWx0IGltbWVybm9jaCA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEtvbW0gaWNoIGpldHp0IGltIEZlcm5zZWhlbj8gKEdyaW1tYm9ybiwgMjYuIEZlYiAxOTk5LCAxODozMDoxMik6Cn4jISBybj1XdXJ6ZWwgcnQ9OTIwMDMzNjg3IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTE5Nzk5NzcwCkFjaCB3YXMsIGljaCBkaXNrdXRpZXIgZG9jaCBuaWNodCBtaXQgU2NobGlwc3RyYWVnZXJuIQoKR2RBIChoZXV0ZSBtaXQgYXVzZ2VmcmFuc3RlbSByZWNodGVtIEhlbWRhZXJtZWwpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbW0gOikgKE5vdmFzdG9ybSwgMjYuIEZlYiAxOTk5LCAxOToyMzowMyk6CkNhbGltZXJhIHNhZ3Q6IHdlaXRlcm1hY2hlbgoKR2FiaWxvbiBnZWh0IG5hY2ggTm9yZGVuLgpSZWFwZXIgZGV1dGV0IGdyaW5zZW5kIG5hY2ggTm9yZGVuIHVuZCBpc3Qgd2VnLgoKV2FydGV0ISBOb3ZhIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaCA/IChOb3Zhc3Rvcm0sIDI2LiBGZWIgMTk5OSwgMTk6NTQ6MjQpOgpUb2Qga29tbXQgRGlyIG5hZWhlciwgdW5kIGFscyBzZWluIFNjaGFlZGVsIGdhbnogbmFoIHZvciBEZWluZW0gR2VzaWNodAppc3QsIHNjaGxpZXNzdCBEdSBlbnRzZXR6dCBEaWUgQXVnZW4uLi4KClRzdW5hbWkga251ZGRlbHQgRGljaC4KCkFiZXIgYWxzIER1IGRpZSBBdWdlbiB3aWVkZXIgb2VmZm5zdCwga29tbXQgRGlyIGRpZSBTemVuZXJpZSBwbG9ldHpsaWNoCnZpZWwgYmVrYW5udGVyIHZvci4KCkh1dXVlZWVsZmZmZWVlZSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRGllZGVyLCAyNi4gRmViIDE5OTksIDIxOjUwOjQ0KToKQmlncmF0IHNhZ3QgY2hhb3Rpc2NoOiAqYXJnbCogaWNoIGJpbiBoZWlsaWcgLi4uIHdhYWFhaApUaWxseSBzYWd0IGNoYW90aXNjaDogU28sIGpldHp0IHJlaWNodHMuIGljaCBzdGVjayBkaWNoIHp1IGxlbWJvbGQgZHUgZHUgLi4uClRpbGx5IHNhZ3QgY2hhb3Rpc2NoOiBuaWNodHNudXR6CkJpZ3JhdCBzYWd0IGNoYW90aXNjaDogYWFhYWFoaGggamFhYSB3dXF1b3IgcHJ1ZWdlbHQgbWljaCA6KSkpCltUb2Q6TGFyc10gQm9zaGFmdGlna2VpdCBoYXQgZ2VyYWRlIEJpZ3JhdCB1bWdlYnJhY2h0LgpbVG9kOkJvc2hhZnRpZ2tlaXQgaXN0IHNjaG9uIGZpZXMuLi5dCgoqd2FlbHoqCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJtZXIgV2FuZGxlciAoVGFyaW5hLCAyNy4gRmViIDE5OTksIDAwOjMyOjIzKToKCmVpbiBXYW5kbGVyIHdpcmQgdm9uIGRlciBmcmV1bmRsaWNoZW4gRW1wZmFuZ3NkYW1lIGRhdm9uIGFiZ2VoYWx0ZW4sIGRpZQpWLkkuUC4tTG91bmdlIHp1IGJldHJldGVuLCBkYSBlciBuaWNodCBNaXRnbGllZCBkZXMgQ2x1YnMgaXN0LgpGcmV1bmRsaWNoZXJ3ZWlzZSB1bnRlcnJpY2h0ZXQgZGllIEVtcGZhbmdzZGFtZSBlaW4gV2FuZGxlciBhdWNoIHVlYmVyIGRpZQpCZWRpbmd1bmdlbiBlaW5lcyBCZWl0cml0dHMuCmVpbiBXYW5kbGVyIGdlaHQgZHVyY2ggZGVuIG9lc3RsaWNoZW4gRHVyY2hnYW5nIGluIGRpZSBJbmZvcm1hdGlvbnMtTG91bmdlLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVyIGdpYnQgbmljaHQgYXVmIChUYXJpbmEsIDI3LiBGZWIgMTk5OSwgMDA6MzQ6NTApOgoKZGllc21hbCBpbmNvZ25pdG86CkZyZXVuZGxpY2hlcndlaXNlIHVudGVycmljaHRldCBkaWUgRW1wZmFuZ3NkYW1lIEplbWFuZCBhdWNoIHVlYmVyIGRpZQpCZWRpbmd1bmdlbiBlaW5lcyBCZWl0cml0dHMuCkRlciBXYWVjaHRlciBsYWVzc3QgSmVtYW5kIG5pY2h0IHp1ciBTY2hhdHRlbmFyZW5hIG5hY2ggdW50ZW4gcGFzc2llcmVuLCBkYQpnZXJhZGUga2VpbiBFaW5sYXNzIGlzdC4KSmVtYW5kIGdlaHQgZHVyY2ggZGVuIHdlc3RsaWNoZW4gRHVyY2hnYW5nIGluIGRpZSBXZXR0YW5uYWhtZS1Mb3VuZ2UuICAgIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZhbGxzIGVzIGplbWFuZGVuIGludGVyZXNzaWVydC4uLiAoQW5hdG9sLCAyNy4gRmViIDE5OTksIDAwOjQ0OjE5KToKfiMhIHJuPVpvb2sgcnQ9OTIwMDc2MTk5IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD05MjAwNzYxOTkKTWFya2llcmUgYmVzc2VyIERlaW5lbiBad2VpdGllIHNjaG9ubWFsIG5hbWVudGxpY2ggdW5kIHNpY2h0YmFyLCBuaWNodApkYXNzIGVyIGdlbG9lc2NodCBpc3QsIGJldm9yIER1IHp1cnVlY2trb21tc3QuLi4gOm8pCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZXIgZ2lidCBuaWNodCBhdWYgKEFzbW9kaXMsIDI3LiBGZWIgMTk5OSwgMDQ6MjA6NDgpOgp+IyEgcm49VGFyaW5hIHJ0PTkyMDA3NTY5MCByZz1zY2htYXJybgp+IyEgdGlkPTkyMDA3NTY5MApBYmVyIG5lIFdldHRlIGhhdCBlciBuaWNodCBhYmdlZ2ViZW4sIGJhdXQgZGFzIG1hbCBlaW4gISA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnF1byB2YWRpcywgY3VscHVzIGRpbmdlbnM/IChBbmF0b2wsIDI3LiBGZWIgMTk5OSwgMTY6MTc6NTMpOgpbPE1hc3RlUj46UmluZ29yXSBqZXR6dCBoYXQgbmFlbWxpY2ggYmlzIHp1bSBuYWVjaHN0ZW4gUmVib290IGtlaW5lciBtZWhyCls8TWFzdGVSPjpSaW5nb3JdIHJpY2h0aWdlIFByb21wdHMgKnNldWZ6KgpQYWRyZWljICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKU2NobGVjaHRlcyBHZXdpc3NlbiwgUGFkcmVpYz8KQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnVlciBBbHBoYSAoQXNtb2RpcywgMjcuIEZlYiAxOTk5LCAxOTowODoyOCk6CndhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnVlciBaaWxsdXMgKEFzbW9kaXMsIDI3LiBGZWIgMTk5OSwgMTk6MTA6MDcpOgpuaWNodHMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnR5cG9zIChBc21vZGlzLCAyNy4gRmViIDE5OTksIDIwOjIyOjE4KToKVGlsbHkgc2FndDogbmVuIHR5cG8gaXN0cywgZWlucml0dHNrYXJ0ZSA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthZW1wZmVyYmVzY2h3b2VydW5nIChBc21vZGlzLCAyOC4gRmViIDE5OTksIDAzOjIwOjU4KToKRGllIEhleGUgbXVybWVsdCBlaW4gcGFhciB1bnZlcnN0YWVuZGxpY2hlIFphdWJlcnNwcnVlY2hlLgpSaW5nb3IgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3NvIDopIChBcmlhbmEsICAxLiBNYXIgMTk5OSwgMDE6MDc6MTYpOgpEaWUgUGFsbWUgZmFlbmd0IG1hZWNodGlnIGFuIHp1IHZpYnJpZXJlbiB1bmQgZXR3YXMgZ3Jvc3NlcyBrb21tdCB2b24gb2JlbgpnZWZhbGxlbiB1bmQgemVyc2NoZWxsdCBhdWYgZGVpbmVtIEtvcGYuLi4uCkR1IHRyYWV1bXN0IHZvbiBzY2hvZW5lbiBEaW5nZW4sIGRvY2ggYXVmIGVpbm1hbCB3aXJkIGFsbGVzIGJ1bnQgdW5kIGVpbmUgbmV1ZQpXZWx0IG9lZmZuZXQgc2ljaCB2b3IgRGVpbmVuIEF1Z2VuLi4uCkFiZXIgYXVjaCBEZWluIEF1c3NlaGVuIGhhdCBzaWNoIGdlYWVuZGVydC4gRHUgdHJhZWdzdCBlaW5lbiB3ZWlzc2VuClN0cmFzc2VuYW56dWcgdW5kIGhhc3QgZWluIGdhbnogdW5kIGdhciBuaWNoIGJlc29uZGVycyBtYWVubmxpY2hlcyBBdXNzZWhlbjoKCmFjaCB3YXM6KSkKCmFyaWFuYSAqZWlnZW50bGljaCBqYSBhdWNoIHdlaWJsaWNoLCBhYmVyIHp1ciBzaWNoZXJoZWl0IG5vY2ggbWFsIGFuIHNpY2gKaGVydW50ZXJzY2hhdWVuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzb3NvIDopIChBc21vZGlzLCAgMS4gTWFyIDE5OTksIDAxOjI0OjA0KToKfiMhIHJuPUFyaWFuYSBydD05MjAyNTA0MzYgcmc9c2NobWFycm4KfiMhIHRpZD05MjAyNTA0MzYKd2VpYmxpY2ggc2VpbiBoZWlzc3QgbmljaHQgd2VpYmxpY2ggYXVzc2NoYXVlbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc29zbyA6KSAoVGVkZHksICAxLiBNYXIgMTk5OSwgMDE6MzI6NTcpOgp+IyEgcm49QXNtb2RpcyBydD05MjAyNTE0NDQgcmc9c2NobWFycm4KfiMhIHRpZD05MjAyNTA0MzYKQWxzbyBpY2gga29lbm50ZSBkaXIgamV0enQgd2FzIGVyemFlaGxlbiB2b24gQXJpYW5hIHVuZCB3ZWlibGljaCBhdXNzZWhlbiwKYWJlciBhbmRlcmVyc2VpdHMgZ2lidHMgZWgga2VpbmUgRnJhdWVuIGltIE1HLCBhbHNvIHdpcmRzIHNjaG9uIHN0aW1tZW4uIDspCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogc29zbyA6KSAoQXJpYW5hLCAgMS4gTWFyIDE5OTksIDA0OjAzOjU1KToKfiMhIHJuPVRlZGR5IHJ0PTkyMDI1MTk3NyByZz1zY2htYXJybgp+IyEgdGlkPTkyMDI1MDQzNgpzb3NvLCB0ZWRkeSwgaWNoIG5laG0gZGFzIG1hbCBhbHMga29tcGxpbWVudC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmx1Y2h0IChSZWFwZXIsICAxLiBNYXIgMTk5OSwgMTM6MjA6NTUpOgoKSGV4eGVyIHJ1ZnQ6IGF1YSEhISBISUxGRSBNQU1NQUFBQSEhISEgYWVobSBCT0lOR0dHRyEhISAuLi4gLi0pCktvb21pICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKCmhtbSwgb2IgZGEgZWluZXIgZWluIHNjaGxlY2h0ZXMgR2V3aXNzZW4gaGF0PwoKUmVhcGVyLCBncmluc2VuZAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGbHVjaHQgKEtvb21pLCAgMS4gTWFyIDE5OTksIDEzOjI1OjE1KToKfiMhIHJuPVJlYXBlciBydD05MjAyOTQ0NTUgcmc9c2NobWFycm4KfiMhIHRpZD05MjAyOTQ0NTUKTm9lLCB3YXJ1bSBzb2xsdGUgaWNoPwoKSGFsYmVsZmUgS29vbWksIGRhcyBVbmluZXR6IHRyZXRlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHdXRlIElkZWUgISAoTW9yZ290aCwgIDEuIE1hciAxOTk5LCAxMzo0MDo1MCk6Ck9ya3RvZXRlciBydWZ0OiBPUktUT0VURU5PUktUT0VURU5PUktUT0VURU5PUktUT0VURU5PUktUT0VURU5PUktUT0VURU4KQXJtYWdlZGRvbiBydWZ0OiBJbiAxIFN0dW5kZSwgMjAgTWludXRlbiB1bmQgMCBTZWt1bmRlbiB3ZXJkZSBpY2ggZGllIFdlbHQKQXJtYWdlZGRvbiBydWZ0OiB6ZXJzdG9lcmVuIHVuZCBuZXUgZXJzY2hhZmZlbiEKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbSB3d3cgZ2VmdW5kZW4gKEhha2xlLCAgMS4gTWFyIDE5OTksIDE0OjMxOjMzKToKSW4gZGVyIFplaXR1bmcgc3RhbmRzIHp1IGxlc2VuCiAtIGVpbiBXdW5kZXIsIGRhcyBkaWUgV2VsdCBiZXdlZ3QsClR1dC1lbmNoLUFtdW4gaXN0IGdlbmVzZW4hCiAtIEVyIHdhciBtaXQgSEFLTEUtRkVVQ0hUIGJla2xlYnQhCgpNZkcgSGFrbGUgKGtvZW5udCBzaWNoIGVpbndpY2tsZW4gdm9yIGxhY2hlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFybWFnZWRkb24gKEthcmFtLCAgMS4gTWFyIDE5OTksIDE2OjQzOjMzKToKfmMkCj4gdW50IGFybWFnZWRkb24KRGllcyBpc3QgQXJtYWdlZGRvbiwgZGVyIFdlbHR2ZXJuaWNodGVyLiBBbHMgRHUgaWhuIGFuc2llaHN0LCBibGlja3QgZXIgYXVmCnVuZApmbHVlc3RlcnQgRGlyIHp1OiBOb2NoICAtMSBTZWt1bmRlbiBtdWVzc2VuIHZlcmdlaGVuLCBlaGUgaWNoIGRpZSBXZWx0CnZlcm5pY2h0ZS4gCkVyIGlzdCBhYnNvbHV0IGZpdC4KCn5jKwpLYXJhbSAod2lsbCwgZGFzcyBkaWVzZXIgQnVnIGdlZml4dCB1bmQgYW5zY2hsaWVzc2VuZCBtaW5kLiAzIG1hbCBnZXRlc3RldAp3aXJkIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTaGVyaWZmIChLb29taSwgIDEuIE1hciAxOTk5LCAxOTo0NjozNSk6CltBbGxnZW1laW46UGh5Z29zXSBzaXhoZXIgd2llZGVyIHNvYG4gYW5nZWdydWVudGVyICAgIGtlaW5lIGFobnVuCmcgdm9uIG5lcgpbQWxsZ2VtZWluOlBoeWdvc10gb3JkZW50bGljaGVuIGhpbnJpY2h0dW5nIHVuc2VyZSBkZXJ6ZWl0aWdlbiBzaGVyaWZmcyA+OikKIG1pdCB3YXIgbnVyIGd1Z2dlbgpGZXVlcndlaHIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEgICAKCkhlaGUuLgoKS29vbWkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyBuZXR0ZXMgKFFpdGVzcywgIDEuIE1hciAxOTk5LCAxOTo1OToyMyk6CmhlaiwgZmVzdGluLCBpY2ggc2NocmVpYiBkaXIgbWFsIHdhcyBuZXR0ZXMgaW4gZGllIHplaXR1bmcsIGRhbWl0IGRpciBuaWNodApsYW5nd2VpbGlnIHdpcmQuCgpoYWxsbyAqKioqKiBpY2ggd3VlcmRlIGdlcm5lICoqKip1bmQgKioqKiA7KSBoaWhpCgpRSSoqIGVycm9ldGVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNlbHRzYW1lIEtpbmRlcnNwaWVsY2hlbiAoUWl0ZXNzLCAgMS4gTWFyIDE5OTksIDIyOjE2OjQyKToKPiB1bnQgcHVwcGUKRGllcyBpc3QgZWluZSBkZXIgUHVwcGVuIGF1cyBLcmFuZG9saW5lcyBTcGllbHppbW1lci4gSXJnZW5kd2llIGZ1ZWhsdCBzaWUKc2ljaAp2aWVsIHp1IHNjaHdlciBmdWVyIGlocmUgR3JvZXNzZSBhbi4gVmllbGxlaWNodCBzb2xsdGVzdCBEdSBEaXIgZWluaWdlIFRlaWxlCm1hbCBldHdhcyBnZW5hdWVyIGFuc2NoYXVlbi4KPiB1bnQgcHVwcGVua29wZgpEdSBmaW5kZXN0IGFuIGVpbmVyIFB1cHBlIGtlaW4gIlB1cHBlbmtvcGYiLgoKUUkqKiBmaW5kZXQgZGFzIHNlaHIgb21pbm9lcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCj8/PyAoQnJhbndlbiwgIDEuIE1hciAxOTk5LCAyMzoxMDo0NSk6CkViZW4gYW0gVGlnZXI6CkVpY2hlbiBzYWd0OiB3byBnZWh0cyB6dW0gbWV0emVsbj8/CgoKQnJhbndlbiAqd3VuZGVyIHNpY2gqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVZmYgLi4uIChOb3Zhc3Rvcm0sICAyLiBNYXIgMTk5OSwgMTU6MDU6NTkpOgpFaW4gRmFsa25lcmxhZGVuLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogbm9yZGVuLgpFaW4gRmFsa25lci4gICAgICAgICAgICAgIEVpbiBLdW5kc2NoYWZ0ZXJ2b2dlbC4gICAgRWluIEt1bmRzY2hhZnRlcnZvZ2VsLgpFaW4gS3VuZHNjaGFmdGVydm9nZWwuICAgIEVpbiBLdW5kc2NoYWZ0ZXJ2b2dlbC4gICAgRWluIEt1bmRzY2hhZnRlcnZvZ2VsLgpFaW4gS3VuZHNjaGFmdGVydm9nZWwuICAgIEVpbiBLeW9yZWJuaS4gICAgICAgICAgICAgRWluIEt1bmRzY2hhZnRlcnZvZ2VsLgpFaW4gS3lvcmVibmkuICAgICAgICAgICAgIEVpbiBGYWxrZS4KIE1laW4gR290dCwgc2NobGltbWVyIGFscyBkaWUgSGFzZW4gOi0pKSkKICAgICAgTm92YQoKUFM6IFdlciB3b2xsdGUgZGEgZWlnZW50bGljaCA/IC4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYWhyaGFmdGVyIFJ1ZiBkZXIgVmVyendlaWZsdW5nIChBbmF0b2wsICAyLiBNYXIgMTk5OSwgMTc6MTM6MDUpOgpNYW4gaG9lcnQgZGllIHZlcnp3ZWlmZWx0ZW4gUnVmZSB2b24gUWl0ZXNzIGF1cyBkZW0gR3JpbW1zd2FsZApoZXJ1ZWJlcnNjaGFsbGVuLgpRaXRlc3MgcnVmdDogRkVTVElOICEKCkFybWUgU29ja2UuLi4KQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2VsbHkgdW5kIGlociBrbGVpbmVzIFByb2JsZW0gKEVyZGJlZXJlLCAgMi4gTWFyIDE5OTksIDE5OjM4OjQ0KToKQW5hdG9sIHJ1ZnQ6ICEmJCMnISEgVGlnZXIhCkdhc3QyIHNhZ3Q6IHN0aW1tdCwga2VsbHkuIGJlaSBkaXIgaXN0IGludCBlcmhvZWhlbiBnZXNwZXJydCA6LQpEYW5jZXIgcnVmdDogQW5hYWFhYXRvbCEhISEgJSY/ICAgICAgICAgICAgICAgICAgIAoKRXJkYmVlcmUga3VnZWx0IHNpY2ggbm9jaCBpbW1lci4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWVzIGF1cyBBbWlsYW5kLi4uIChHYXN0MiwgIDIuIE1hciAxOTk5LCAxOTo1ODoyNyk6CkpldHp0IG5ldTogZGllIFZpYWdyZXR0ZSwgZnVlciBkZW4ga2xlaW5lbiBTdGFlbmRlciB6d2lzY2hlbmR1cmNoLi4uCgpnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZXVudWNoZW4gKEFzbW9kaXMsICAzLiBNYXIgMTk5OSwgMDA6Mzk6MTIpOgpbQWJlbnRldWVyOkRhcmlhXSAqa2ljaGVyKiA8MDA6MzI6MTY+CltBYmVudGV1ZXI6Q2hhb3Nsb3JkXSBkYXMgaXN0IG5pY2h0IHdpdHppZyA8MDA6MzI6NDk+CltBYmVudGV1ZXI6RGFyaWFdIFdhcyBpc3QgZGVubiBkZWluIFByb2I/IDwwMDozMzowOT4KW0FiZW50ZXVlcjpDaGFvc2xvcmRdIGljaCBiaW4gZWluIGV1bnVjaCB1bmQgZGFzIHZlcmhlaXJhdGV0IDwwMDozMzo0Mz4KW0FiZW50ZXVlcjpBc21vZGlzXSBkYSB3aXJkIGRlaW5lIGZyYXUgYWJlciBlbnR0YWV1c2NodCBzZWluIDotKSA8MDA6MzQ6MTQ+CltBYmVudGV1ZXI6Q2hhb3Nsb3JkXSBkYXMgaXN0IG5pY2h0IGx1c3RpZyA8MDA6MzQ6Mzg+CltBYmVudGV1ZXI6TWN3b2xmXSBXYWhyc2NoZWlubGljaCBrZWluZSB1bnRlcnNjaGllZCB6dSB2b3JoZXIgOikgPDAwOjM0OjUyPgpbQWJlbnRldWVyOkFzbW9kaXNdIHZpZWxsZWljaHQgaXN0IHNpZSBkYXMgZ2V3b2VobnQgPDAwOjM0OjU2PiEtYSoKIApbQWxsZ2VtZWluOkJ1ZmZ5IGdyaXNudCA8MDA6MzQ6MDQ+XQpbQWxsZ2VtZWluOkdyaW1NYW5dIGtvbWlzY2gsZGllIGdyaW5zdC4uLiA8MDA6MzQ6MzA+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLZXkgKFJvY2h1cywgIDMuIE1hciAxOTk5LCAxNjo1MTo0Myk6CkRlaW4gRnJldW5kIEtleSB0ZWlsdCBEaXIgbWl0OiBobXBmIG9raSBkb2NoIG5ldCA7KSAqRnJhdWVuIGVyd3VlcmdlbmQqIDopCk5lc2FqYSBrdWxsZXJ0IGVpZXJuZCBoZXJlaW4uCktleSBnaWJ0IE5lc2FqYSBlaW5lbiB0aWVmZW4gdW5kIGhpbmdlYnVuZ3N2b2xsZW4gS3Vzcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndlaW4gKEJpcmR5LCAgMy4gTWFyIDE5OTksIDE3OjQ1OjM5KToKRHUgc2V0enQgZGllIEZsYXNjaGUgYW4gZGVuIE11bmQgdW5kIHRyaW5rc3QgZGVuIFJvdHdlaW4gaW4gbGFuZ2VuLApnZW51ZXNzbGljaGVuIFp1ZWdlbiBhdXMuIFp1ZnJpZWRlbiBzdGVsbHN0IER1IGRpZSBGbGFzY2hlIHdpZWRlciBhdWYgZGVuClRpc2NoLiBXZWxjaCcgd29obGlnZXMgR2VmdWVobCBicmVpdGV0IHNpY2ggZGEgYmVpIERpciBhdXMuCj4gRWluZSBoZXJybGljaGUgV2Flcm1lIGdlaHQgdm9uIERlaW5lbSBBbXVsZXR0IGF1cywgdW5kIER1IGZ1ZWhsc3QgRGljaApwcmltYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdlcnVjaCAoQmlyZHksICAzLiBNYXIgMTk5OSwgMTg6MTA6NTcpOgo+IHVudCBnZXJ1Y2gKUmllY2hlbiB0dW4gaGllciBudXIgZGllIEdsYWVzZXIgYXVmIGRlbiBSZWdhbGVuIGV0d2FzLgoKZ2xhZXNlciBrb2VubmVuIHJpZWNoZW4gPzspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpncmlucyAoS2VsbHlidW5keSwgIDMuIE1hciAxOTk5LCAyMDozNzo1MSk6CkRlciBrbGVpbmUgR3J1ZnRpZSByaXR6dCBzaWNoIGV0d2FzIG1pdCBlaW5lciBSYXNpZXJrbGluZ2UgaW4gZGVuIFVudGVyYXJtLgo+dW50IHVudGVyYXJtCkR1IGZpbmRlc3QgYW4gZWluZW0gR3J1ZnRpZSBrZWluICJVbnRlcmFybSIuCkRlaW4gQmxpY2sgd2VuZGV0IHNpY2ggZGVyIFVtZ2VidW5nIHp1LgpTb3dhcyBzaWVoc3QgRHUgYXVjaCBkYSBuaWNodCEKTWFubm9tYW5uIGhhdCBkZXIgZWluIHNjaHJsZWNodGVzIEF1Z2VubWFzcyAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNhbGkgOykgKEppZGR1LCAgNC4gTWFyIDE5OTksIDAwOjA5OjQxKToKVm9yYWhudW5nPwoKc2FnIE1hZ2llcndpbGxrdWVyCkNhbGltZXJhIHNjaGxlaWNodCBuYWNoIEhhdXNlLgpDYWxpbWVyYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKRHUgc2Fnc3Q6IE1hZ2llcndpbGxrdWVyCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVlciBOb25uZSAoQm9pbmcsICA0LiBNYXIgMTk5OSwgMTI6NDk6NDUpOgp3YXMgcHJvdm9rYXRpZXZlcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZ1ZXIgTm9ubmUgKE1pZXplLCAgNC4gTWFyIDE5OTksIDEyOjUwOjI5KToKfiMhIHJuPUJvaW5nIHJ0PTkyMDU1MTc4NSByZz1zY2htYXJybgp+IyEgdGlkPTkyMDU1MTc4NQp0eXBvLCBCb2luZyA6KQoKCkdydXNzIE1pZXplCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVlciBOb25uZSAoUm9uZGEsICA0LiBNYXIgMTk5OSwgMTI6NTA6MzkpOgp+IyEgcm49Qm9pbmcgcnQ9OTIwNTUxNzg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIwNTUxNzg1Ck1laW5zdCBEdSBEZWluZSBSZWNodHNjaHJlaWJ1bmcgYmVpICJwcm92b2thdGlldmVzIj8KKmdyaW5zKgoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRnVlciBOb25uZSAoQm9pbmcsICA0LiBNYXIgMTk5OSwgMTI6NTE6MTUpOgp+IyEgcm49Um9uZGEgcnQ9OTIwNTUxODM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIwNTUxNzg1CkljaCBiZXN0ZWhlIGRhcmF1ZiwgZGFzcyBkYXMgbmljaHQgTUVJTkUgUmVjaHRzY2hyZWlidW5nIGlzdC4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGdWVyIE5vbm5lIChEaWVkZXIsICA0LiBNYXIgMTk5OSwgMTI6NTE6MTcpOgp+IyEgcm49Um9uZGEgcnQ9OTIwNTUxODM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIwNTUxNzg1Cm5vY2ggbmllIHdhcyB2b24gZGVyIHJlY2t0c2NocmFpcHJldm9ycm0gZ2Vob2VydD8gOikKCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGdWVyIE5vbm5lIChOb25uZSwgIDQuIE1hciAxOTk5LCAxMjo1MToyNSk6Cn4jISBybj1Sb25kYSBydD05MjA1NTE4Mzkgcmc9c2NobWFycm4KfiMhIHRpZD05MjA1NTE3ODUKbWFuIHdpcmQgc2ljaCBkb2NoIG5vY2ggdmVydGlwcGVuIGR1ZXJmZW4sIG9kZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZ1ZXIgTm9ubmUgKFdpbSwgIDQuIE1hciAxOTk5LCAxMjo1MTo0MSk6Cn4jISBybj1Sb25kYSBydD05MjA1NTE4Mzkgcmc9c2NobWFycm4KfiMhIHRpZD05MjA1NTE3ODUKCltTZWhlcjpOb25uZV0gc2NocmVpYiBkb2NoIG1hbCBlaW5lciB3YXMgcHJvdm9rYXRpZXZlcyBpbiBkaWUgemVpdHVuZywgCgpBbHNvIEJvaW5nIGhhdCBudXIgTm9ubmUgeml0aWVydC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRnVlciBOb25uZSAoWWVuZGksICA0LiBNYXIgMTk5OSwgMTI6NTQ6NDApOgp+IyEgcm49V2ltIHJ0PTkyMDU1MTkwMSByZz1zY2htYXJybgp+IyEgdGlkPTkyMDU1MTc4NQpJaHIgaGFidCBkb2NoIGFsbGUgZWluZW4gSGF1IQooU28sIGRhcyB3YXIgamV0enQgYXVjaCBwcm92b2thdGllZi4pCgpZVFkKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHRlYW1zcHJ1Y2ggKEFuYXRvbCwgIDQuIE1hciAxOTk5LCAxNTo1MzozMCk6Cn4jISBybj1MZW5hIHJ0PTkyMDU1NjczNCByZz1naWxkZW4ua2xlcnVzCn4jISB0aWQ9OTIwNTU2NzM0Cndhcy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFRUVFRUVFRU5OTk5ORERERExJSUlJSUlJSUlDSCAhISEgKEphc3BlciwgIDQuIE1hciAxOTk5LCAxODoxNDo1Myk6Cn4jISBvbj1Nb3Jnb3RoIG90PTkxODgxMjg1NSBvZz1naWxkZW4ua2xlcnVzCkphamFqYWphLAoKZGllIEdpbGRlbmtuZWlwZSBpc3QgZGEuIFNjaGF1dCBFdWNoIG1hbCBpbSBTdGFtbXRlbXBlbCB1bS4gOy0pKQoKVmllbCBTcGFzcyBiZWltIEJlc2FldWZuaXMKCk1vcmdvdGgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW4gTW9sdWtpbiAoQ29ubmVyLCAgNS4gTWFyIDE5OTksIDAxOjAwOjI2KToKRWluIE9mZml6aWVyIGZhZWxsdCBvaG5tYWVjaHRpZyB1bS4KRGVyIFZvbGxzdHJlY2tlciBzY2hsYWVndCBtaXQgZ3JvZXNzdGVyIEZyZXVkZSBiZXNvbmRlcnMga3JhZWZ0aWcgYXVmCkRlaW5lbiBHZWduZXIgZWluLCBhbHMgZXIgbWVya3QsIGRhc3MgZGllc2VyIGt1cnogdm9ybSBFbmRlIHN0ZWh0IQpNYW4gc2NobGFlZ3QgZG9jaCBrZWluZW4gT2hubWFlY2h0aWdlbiEKCgpDb25uZXIgdmVyc3RlaHQgZGFzIGltbWVyIG5vY2ggbmljaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhbmRsZXIgd2FuZGVsdC4uLiAoTmljaHRzLCAgNS4gTWFyIDE5OTksIDAzOjAxOjMyKToKPiB1bnQgd2FuZGxlcgpFdHdhIGVpbmVuIE1ldGVyIHZvciBkaWUgd2FiZXJ0IGVpbiBzZWx0c2FtZXMgemVyZnJhbnN0ZXMgR2ViaWxkZSBkdXJjaCBkaWUKTHVmdC4gRGFzIHNjaGlsbGVybmRlIEV0d2FzIHZlcndpcnJ0IGRpZSBTaW5uZSB1bmQgbGFlc3N0IGRpZQpkYWhpbnRlcmxpZWdlbmRlbiBTYWNoZW4gdm9lbGxpZyB2ZXJ6ZXJydCBlcnNjaGVpbmVuLi4ubnVyIGRhZHVyY2ggaXN0IGVzCmplZG9jaCB1ZWJlcmhhdXB0IHp1IHNlaGVuIQpFciBpc3QgYWJzb2x1dCBmaXQuICgxMDAlKQpFciB0cmFlZ3QgYmVpIHNpY2g6CkVpbiBtYWdpc2NoZXMgSm9qby4KCkFsc28gd2VubiBlciBhbmZhZW5ndCwgRnJpZWRob2VmZSB6dSBiZWZyZWllbiwgd2lyZCBlciBtaXIgd2lya2xpY2ggc3VzcGVrdC4KIiIgPjopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbWFnaWUgdW5kIHNvIChCaXJkeSwgIDUuIE1hciAxOTk5LCAxNjowNjowNSk6CkZhY2hpZGggdGFuenQgd2llIGluIFRyYW5jZSBkdXJjaCBkaWUgR2VnZW5kLgpEZXIganVuZ2UgTWFubiBibGlja3QgRGljaCBhbjoKJ1dpZSBrYW5uIGljaCBFdWNoIGhlbGZlbiA/IFNlaWQgSWhyIGdlc2NoaWNrdCBpbiBkZW4gYXJrYW5lbiBLdWVuc3RlbiBkZXIKIE1hZ2llLCBvZGVyIGJlaGVycnNjaHQgSWhyIHZpZWxsZWljaHQgZWluIGFuZGVyZXMgS3Vuc3RoYW5kd2VyayA/JwpGYWNoaWRoIHRhbnp0IHdpZSBpbiBUcmFuY2UgZHVyY2ggZGllIEdlZ2VuZC4KCkZyYWdlIGJlYW50d29ydGV0ID8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBtYWdpZSB1bmQgc28gKEJpcmR5LCAgNS4gTWFyIDE5OTksIDE2OjA3OjA3KToKfiMhIHJuPUJpcmR5IHJ0PTkyMDY0OTk2NSByZz1zY2htYXJybgp+IyEgdGlkPTkyMDY0OTk2NQphZWhtLCBpY2ggbWVpbiBkaWUgbWFnaWUgamEgPwp0YW56ZW4ga2FubiBpY2ggbmFlbWxpY2ggbmljaHQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZ2llcndhY2hzdHVtLi4uPyAoQXF1YXRvbGwsICA1LiBNYXIgMTk5OSwgMTg6NDc6NTQpOgo+IGR1ZW5nZSB3aW0KRHUgZHVlbmdzdCBsaWViZXZvbGwgV2ltCgpBbGxlcyBrbGFyIDopCn50b2xsCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmVpIEFuc2NobHVzcyB2ZXJhbHRldC4uLiAoQ3VjaHVsbGluLCAgNS4gTWFyIDE5OTksIDE4OjUzOjEyKToKPiBhbnR3b3J0ZSBvZXR0aQpEdSBhbnR3b3J0ZXN0OiBPZXR0aQpVZG8gc2FndDogUmljaHRpZyEgT2V0dGkgaXN0IHNvZ2FyIGVpbiBNYWdpZXIuIERhcyBnaWJ0IGRyZWkgUHVua3RlIQpXaW0gdGVpbHQgRGlyIG1pdDogc2V1ZnogOikKCkN1Y2ggOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpITVBGIChUaGVyaW4sICA3LiBNYXIgMTk5OSwgMDE6MzA6MzMpOgo+IG5uCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBEZWVwYmx1ZSBpbiBSdWJyaWsgImFsbGdlbWVpbmVzIi4Kbm4KVWViZXJnZWhlIEFydGlrZWwgMTQzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCgpVbmQgZGEgZnJldXQgbWFuIHNpY2ggc2Nob24uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBITVBGIChBc21vZGlzLCAgNy4gTWFyIDE5OTksIDAxOjMxOjE2KToKfiMhIHJuPVRoZXJpbiBydD05MjA3NzAyMzMgcmc9c2NobWFycm4KfiMhIHRpZD05MjA3NzAyMzMKRGFua2UgZnVlciBkZW4gQXJ0aWtlbCwgZW5kbGljaCB3aWVkZXIgd2FzIHp1IGxlc2VuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa29taXNjaCAoQXNtb2RpcywgIDcuIE1hciAxOTk5LCAwMTozNDo1NCk6CkRpcmlvbiByYXN0IG1pdCB3YWhuc2lubmlnZXIgR2VzY2h3aW5kaWdrZWl0IGRhdm9uLgpbVG9kOkxhcnNdIFVlYmVydHJpZWJlbmUgRWlsZSBoYXQgZ2VyYWRlIERyemVuIHVtZ2VicmFjaHQuCltUb2Q6VWViZXJ0cmllYmVuZSBFaWxlXSBJY2ggaGFiZSBub2NoIG5pZSBqZW1hbmRlbiBzbyBzY2huZWxsIGluIGRlbiBUb2QKW1RvZDpVZWJlcnRyaWViZW5lIEVpbGVdIGVpbGVuIHNlaGVuLiAKCkRlciBlaW5lIHJhc3QgaGVyZWluIHVuZCBkZXIgYW5kZXJlIHN0aXJidCA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3NvLi4uIDopIChab29rLCAgNy4gTWFyIDE5OTksIDE1OjM5OjQ2KToKCkR1IHNhZ3N0OiBwYXJ0eW1vbnN0ZXIgZ2liIG1pciBmbGVwaQpEYXMgUGFydHltb25zdGVyIGdpYnQgRGlyIGVpbiBGbGVwaS4KRWluIHBsb2V0emxpY2hlciBSdWNrIHNjaHVldHRlbHQgRGljaCBkdXJjaC4KCgpab29rIGRlbmt0IC4gbyBPICh0b2xsZXMgYmllci4uIDopKSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc29zby4uLiA6KSAoQWxwaGEsICA3LiBNYXIgMTk5OSwgMTY6MDY6MjIpOgp+IyEgcm49Wm9vayBydD05MjA4MjExODYgcmc9c2NobWFycm4KfiMhIHRpZD05MjA4MjExODYKSmFqYSwgaWNoIHphdWJlcmUgbnVyIGRpZSB3aXJrbGljaCBkZWZ0aWdlbiBQYXJ0eW1vbnN0ZXIgaGVyIDtvKQpBbHBoYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoUmluZ29yLCAgNy4gTWFyIDE5OTksIDE5OjE1OjA0KToKW1NlaGVyOlRlZGR5XSBIbSwgZ2lidHMgaW4gZGVyIG5ldWVuIEtuZWlwZSBhdWNoIG5lbiBBdXNnYW5nLCB3ZW5uIGljaCB3ZW4KW1NlaGVyOlRlZGR5XSBhbmdlZ3JpZmZlbiBoYWI/IDwxOTowNToxNT4KW1NlaGVyOlJpbmdvcl0gTGFycyA8MTk6MDU6MjM+ClsuLi5dCltUb2Q6TGFyc10gR3J1bXBlbCBoYXQgZ2VyYWRlIFRlZGR5IHVtZ2VicmFjaHQuIDwxOToxMzozOT4KClJpbmdvciBkZW5rdCAuIG8gTyguLi4gdW5kIGljaCBzYWNoIG5vY2gsIHNhY2ggaWNoIC4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKFRlZGR5LCAgNy4gTWFyIDE5OTksIDE5OjE4OjI3KToKfiMhIHJuPVJpbmdvciBydD05MjA4MzQxMDQgcmc9c2NobWFycm4KfiMhIHRpZD05MjA4MzQxMDQKSWNoIGhhYiBpaG4gamEgZGFubiBhdWNoIGdlZnVuZGVuIDspCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGVsbHNlaGVyaXNjaGUgZmFlaGlna2VpdGVuPyAoVGhlcmluLCAgNy4gTWFyIDE5OTksIDE5OjM4OjU0KToKCj4gSGF0ZSBydWZ0OiBIaWxmZSEKPiBQYWRyZWljIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaG5lIHdvcnRlIChUaGVyaW4sICA3LiBNYXIgMTk5OSwgMTk6Mzk6NTEpOgoKUGFkcmVpYyB0ZWlsdCBEaXIgbWl0OiBwYWhoaAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBvaG5lIHdvcnRlIChBbmF0b2wsICA3LiBNYXIgMTk5OSwgMTk6NDA6MTkpOgp+IyEgcm49VGhlcmluIHJ0PTkyMDgzNTU5MSByZz1zY2htYXJybgp+IyEgdGlkPTkyMDgzNTU5MQpXbyBlciByZWNodCBoYXQsIGhhdCBlciByZWNodCAtIGlobiBhbHMgSGlsZmUgenUgYmV6ZWljaG5lbi4uLgoKKnBmZmZmZmZmZmZmZmZmZmZ0KiA6KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGYW1pbGllbnRyZWZmZW4/IChEYXJpYSwgIDcuIE1hciAxOTk5LCAyMDowMTowNSk6CkFuYXRvbCBydWZ0OiBOZXNhamEgOikKUmluZ29yIHJ1ZnQ6IFVyZW5rZWxpbiEKTmVzYWphIHJ1ZnQ6IEFOQVRPTApOZXNhamEgcnVmdDogVVJPUElFRUVFRUVFRUVFCk5lc2FqYSBydWZ0OiBQQVBJRUVFRUVFRQpHaXppIHJ1ZnQ6IE1NTU1NTU1BQUFBQUFNTU1NTUFBQUFBQUFBCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGVhbWthbXBmcG9zaXRpb25za3JpZWd3aWVpbXdpcmtsaWNoZW5MZWJlbiAoQW5hdG9sLCAgNy4gTWFyIDE5OTksIDIxOjExOjQ0KToKW1RlYW0gRmV1ZXI6XSBBbmF0b2wtPjEsIEFuYXRvbC0+MiwgQW5hdG9sLT4yLCBBbmF0b2wtPjEKCipzY2hhdWRlcioKQW5hdG9sIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXNzZW4gPyAoTW9yZ290aCwgIDcuIE1hciAxOTk5LCAyMjoxMToxMik6CkRlaW5lIEZyZXVuZGluIFNoYXJpYSB0ZWlsdCBEaXIgbWl0OiBuYWphIGljaCBrb21tIG5hY2hoZXIgbm9jaG1hbCA6KSBlcnN0bWFsCkRlaW5lIEZyZXVuZGluIFNoYXJpYSB0ZWlsdCBEaXIgbWl0OiB3YXMgZXNzZW4KRHUgdGVpbHN0IGRlaW5lbiBGcmV1bmRlbiBtaXQ6IGd1dGVuIGh1bmdlcgpEZWluZSBGcmV1bmRpbiBTaGFyaWEgdGVpbHQgRGlyIG1pdDogZGFua2UgZGFua2UgOikpKSkpClNoYXJpYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKTmFpcm9sZiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKS2FydG9mZmVsICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRlaW5lIEZyZXVuZGluIEthcnRvZmZlbCB0ZWlsdCBEaXIgbWl0OiBIYWxsb2VsZQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVz8gKFJpbmdvciwgIDguIE1hciAxOTk5LCAxMzo1NDo0Nik6CltBYmVudGV1ZXI6RGFyaWFdIFdvIGZpbmRlIGljaCBkZW4gU2NobHVlc3NlbCBmdWVyIGRlbiBLZWxsZXIgKEhvcnJvcmxhZGVuKT8KW0FiZW50ZXVlcjpLYXJhbV0gRnJhZyBtYWwgRWxpemEsIG9iIHNpZSBkaXIgZGVuIGxlaWh0LgpbVG9kOkxhcnNdIEVsaXphIGhhdCBnZXJhZGUgRGFyaWEgdW1nZWJyYWNodC4KClJpbmdvciBkZW5rdCAuIG8gTyhkYSBoYXQgc2llIHdvaGwgd2FzIGZhbHNjaCB2ZXJzdGFuZGVuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChIcmVpZG1hciwgIDguIE1hciAxOTk5LCAxNjoyNzoyMSk6Ck1ldGFsbGViZW5lLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb2Jlbiwgc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4gCkNyaXR0ZXIgdGVpbHQgRGlyIG1pdDogdWZmIHdpZWRlciByYXVzLi4uCltUb2Q6TGFyc10gRWlnZW5lIER1bW1oZWl0IGhhdCBnZXJhZGUgQ3JpdHRlciB1bWdlYnJhY2h0LgpEaWUgU2NodXR6YXVyYSB1bSBEaWNoIGxvZXN0IHNpY2ggbGFuZ3NhbSBhdWYuCgpPaG5lIEtvbW1lbnRhciEKSHJlaWRtYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUzogQ29tcHV0ZXJ0ZWlsZSAoR3JpbW1ib3JuLCAgOC4gTWFyIDE5OTksIDE4OjA5OjQ1KToKfiMhIG9uPUdyaW1tYm9ybiBvdD05MjA5MTY1NzMgb2c9c3VjaGUtYmlldGUKfiMhIHJuPUFuYWtpbiBydD05MjA5MDkyNTEgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD05MjA5MDkyMDYKVkxCPyA7LSkKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaWU1IDopIChEYXJrd2luZywgIDguIE1hciAxOTk5LCAxOToxNTo0Myk6CltBbGxnZW1laW46U3RpbmddIGhtbSwgaGFiZW4gZGllIGRpZSBiZXRhIHZvbiBJRSA1IHNjaG9uIHp1cnVlY2tnZXpvZ2VuLCAKW0FsbGdlbWVpbjpTdGluZ10ga2FubiBkYXMgc2VpbiA/Ci4uLgpbQWxsZ2VtZWluOlN0aW5nXSBkYXMgd2FyIGRhcyBiZXN0ZSBhZHZlbnR1cmUgdWViZXJoYXVwdAoKKndhZWx6Ki4uLiBERVIgd2FyIGd1dCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NoYWFhYWRlIChNb3Jnb3RoLCAgOC4gTWFyIDE5OTksIDIxOjEzOjQwKToKZW50c29yZ2UgcmluZ29yCiAgUmluZ29yIGthbm4gbmljaHQgZW50c29yZ3Qgd2VyZGVuLgoKT2NoIDstKSkKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHdXRlIEZyYWdlIC4uLiAoUmluZ29yLCAgOC4gTWFyIDE5OTksIDIxOjQwOjA3KToKSGliYmVsaWcga3VzY2hlbHQgc2ljaCBhbiBNb3Jnb3RoIGFuLgpWYWxhIE1vcmdvdGggc2FndDogd2FzIHdpbGxzdCBkdSBEQT8KClJpbmdvciBmcmFndCBzaWNoIGRhcyBhdWNoLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoVGFycywgIDkuIE1hciAxOTk5LCAwMDowMDo1NCk6CktudXJ0IHRlaWx0IERpciBtaXQ6IHdhZWgKS251cnQgdGVpbHQgRGlyIG1pdDogaWNoIGJyYXVjaCBoaWVyIHVudGVuIG5lIGhlaWxlCltUb2Q6TGFyc10gRWluIE1hZ21hZ2lnYW50IGhhdCBnZXJhZGUgS251cnQgdW1nZWJyYWNodC4KS251cnQgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCltCZWlsZWlkOkplbmFuZHJhXSAuLi4gaXQncyBqdXN0IHRvbyBkYW1uIGVhc3kgdG8gZGllIGluIHRoaXMgbGlmZSAuLi4gQmVpbGVpZApbQmVpbGVpZDpKZW5hbmRyYV0gS251cnQgOi0oCltCZWlsZWlkOlpvb2tdIGJlaWxlaWQga251cnQuLiA6KQpbQmVpbGVpZDpHcmltTWFuXSB1dXVwcwpbQmVpbGVpZDpNZXJjdXRpb10gQmVpbGVpZCA6KApbQmVpbGVpZDpDb25uZXJdIGJlaWxlaWQKS2xlaW5LbnVydCB0ZWlsdCBEaXIgbWl0OiB1bmQgamV0enQgaGFiZSBpY2ggZWluIHByb2JsZW0KS2xlaW5LbnVydCB0ZWlsdCBEaXIgbWl0OiBvaCBpY2ggYmluIGphIGVoIHRvdApLbnVydCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKnN0b2VobiogKFpvb2ssICA5LiBNYXIgMTk5OSwgMDE6Mzc6MTcpOgoKYXN5YSBzYWd0OiBtaXIgZmVobGVuIGltbWVybm9jaCA0IHN0dWZlbnB1bmt0ZSA6KApSYXN5YSBoYXQgamV0enQgU3R1ZmUgNyBlcnJlaWNodC4KUmFzeWEgZnJldXQgc2ljaC4KUmFzeWEgc2FndDogZG9jaCBuaWNodCEhIQoKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXNuamV6PyAoRGVtb25heiwgIDkuIE1hciAxOTk5LCAwMjo0MDo1MCk6CgpEaWUgRWxzdGVyIGtsYXV0IERpciBlaW5lbiBBRlIhCkR1IGthbm5zdCBlaW5lbiBBRlIgbmljaHQgYXVzemllaGVuLgoKUGVjaCB3YT8KWC52LkwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFciBudS4uLiAoQW5hdG9sLCAgOS4gTWFyIDE5OTksIDAyOjU1OjU5KToKV2ltIHNhZ3Q6IGljaCBiaW4gbmljaHQgYWx0IDopCgpSRkMgOykKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFlbm5lciAuLi4gKExpYXJhLCAgOS4gTWFyIDE5OTksIDA1OjA5OjUyKToKCj4gTmV2b2sgc2FndDogd2llc28gd2llIGFsdCBiaXN0IER1IGRlbm4sIFdpbT8KV2ltIGZyYWd0IE5ldm9rOiBXaWUganVuZyBiaXN0IGR1IGRlbm4/CgpMaWFyYSwgZGVua3QgLiBvIE8gKE1hZW5uZXJnZXNwcmFlY2hlKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWRsZSBvZGVyIG5pY2h0IGlkbGUsIGRhcyBpc3QgaGllciBkaWUgRnJhZ2UgKE1vcmdvdGgsICA5LiBNYXIgMTk5OSwgMDc6NTA6NDMpOgpbU2VoZXI6TGVuYV0gbW9pbiwgaWhyLgpbS2xlcnVzOkxlbmFdIGhpaG8uIDopIFdlciBrb21tdCB6dXIgUGFydHk/CiAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERpZSwgIDkuIE1hciAxOTk5LCAwNzo0OTowNSAoMTEgVGVpbG5laG1lcikKCkRyYWN1bGEuLi4uLi4uLkp3UyBUYXJhZ29uLi4uLi4uLi5KLlMgTGVuYS4uLi4uLi4uLi4uLi5TIE1lcmN1dGlvLi4uLi4uLkp3UwpSZWFwZXIuLi4uLi4uLi5KLlMgVGh1ZmlyLi4uLi4uLi4uSi56IFppbm8uLi4uLi4uLi4uLkoueiBUaHVmaGlyLi4uLi4uLi5Kd1MKUXVpbGxpYW4uLi4uLi4uSi5NIChQYXRyeW4uLi4uLi4pLmp3SCBNb3Jnb3RoLi4uLi4uLi4uLlIKCltTZWhlcjpNb3Jnb3RoXSBhZWgsIHdpciBzaW5kIGdyYWQgYWxsZWluCltLbGVydXM6TW9yZ290aF0gYWxsZXMgYW5kZXJlIGlzIGlkbGUKW0tsZXJ1czpNb3Jnb3RoXSBhYmVyIGphLCBpY2gga29tbSB6dXIgcGFydHkKW1NlaGVyOkxlbmFdIHdpZXNvIGFsbGVpbj8gYWxsZSBpZGxlPwpbS2xlcnVzOkxlbmFdIHRvbGwuOikgSWNoIGF1Y2guIChwYW5payB2ZXJicmVpdCkKCk0qIGhhdCBzZWluZW4gS2FmZmVlIHNjaG9uIHVuZCBpc3QgZmFzdCB3YWNoICoqZ2FlZWVoaGhoaGhoaG4qKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWJlbiBiZWltIGlkbGVuIDstKSAoTW9yZ290aCwgIDkuIE1hciAxOTk5LCAwOToyOToxOCk6ClRlcmltICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClRlcmltIHRlaWx0IERpciBtaXQ6IG1vaW4gWzA5OjEzXQpUZXJpbSB0ZWlsdCBEaXIgbWl0OiBuYSwgZHUga2xlaW5lciB3aXR6Ym9sZCA/IDspIFswOToyMF0KW1RvZDpMYXJzXSBFaW4gU2FldXJlZGFlbW9uIGhhdCBnZXJhZGUgVGVyaW0gdW1nZWJyYWNodC4KW1RvZDpFaW4gU2FldXJlZGFlbW9uXSBNaXN0LiBKZXR6dCBpc3QgbWVpbmUgU2FldXJlIG1pdCBEZWluZW0gQmx1dCB2ZXJzYXV0LiAKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWndlcmdlLi4uIChHcmltbWJvcm4sICA5LiBNYXIgMTk5OSwgMTA6MzI6NDMpOgp+IyEgb249QXNtb2RpcyBvdD05MjA5Mjg3OTggb2c9d2l0emUKfiMhIHJuPUtpbGFyIHJ0PTkyMDkyMTUxNCByZz13aXR6ZQp+IyEgdGlkPTkyMDkyMTUxNApIbW0sIGRhcyBrYW0gc2Nob24gZWluIHBhYXJtYWwsIGFiZXIgaGF0IGJpc2hlciBrZWluZXIgZGllIFVtbGF1dGUga29udmVydGllcnQKOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHaWxkZW4tQ2hlZnMgKEdvcm9nLCAgOS4gTWFyIDE5OTksIDEwOjM0OjQwKToKTW9yZ290aCBmcmFndCBBcmtzaGF0IG5hY2ggS2V1bGVuLgpBcmtzaGF0IHNhZ3Q6IFNvIGV0d2FzIGZhZWxsdCBpbiBkaWUgS2F0ZWdvcmllICdTY2hsYWd3YWZmZScuCk1vcmdvdGggZnJhZ3QgQXJrc2hhdCBuYWNoIEtldWxlbnNraWxsLgpBcmtzaGF0IGtyYXR6dCBzaWNoIGFtIEtvcGYgdW5kIHNhZ3Q6IERhenUgd2Vpc3MgaWNoIGxlaWRlciBub2NoCm5pY2h0cywgYWJlciBpY2ggd2VyZGUgbWljaCBiZWkgR2VsZWdlbmhlaXQgbWFsIHNjaGxhdSBtYWNoZW4uCk1vcmdvdGggZ3J1bW1lbHQuCgpTY2hhdSBoYWx0IGltIENvZGUgbmFjaCB3YXMgRHUgZnJhZ2VuIG11c3N0LiAgKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdpbGRlbi1DaGVmcyAoTW9yZ290aCwgIDkuIE1hciAxOTk5LCAxMDozNjoxNCk6Cn4jISBybj1Hb3JvZyBydD05MjA5NzU2ODAgcmc9c2NobWFycm4KfiMhIHRpZD05MjA5NzU2ODAKSGFiIGljaCBqYSBncmFkIGdlbWFjaHQgOy0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHaWxkZW4tQ2hlZnMgKEdyaW1tYm9ybiwgIDkuIE1hciAxOTk5LCAxMDozNzo1OCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkyMDk3NTc3NCByZz1zY2htYXJybgp+IyEgdGlkPTkyMDk3NTY4MApMb3Nlci4gSWNoIHd1ZXJkZSBpbSBjb2RlIGphIG5pY2h0IG5hY2ggZGVyIEZyYWdlIHNvbmRlcm4gbmFjaCBkZXIgQW50d29ydApzdWNoZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IElkbGUgb2RlciBuaWNodCBpZGxlLCBkYXMgaXN0IGhpZXIgZGllIEZyYWdlIChBbmF0b2wsICA5LiBNYXIgMTk5OSwgMTI6MTk6MzgpOgp+IyEgcm49TW9yZ290aCBydD05MjA5NjU4NDMgcmc9c2NobWFycm4KfiMhIHRpZD05MjA5NjU4NDMKV2llc28ga3JpZWdlIGljaCBiZWkgZGVuIFN0aWNod29ydGVuICJNb3JnZW4iLCAiTW9yZ290aCIsICJQYXJ0eSIgdW5kCiJLYWZmZWUiIHNvIGVpbmUgZWlnZW5hcnRpZ2UgR2FlbnNlaGF1dCB1bmQgdmVya3JhbXBmdGUgRmluZ2VyLi4uPyAKCkFuYXRvbCA6bykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IElkbGUgb2RlciBuaWNodCBpZGxlLCBkYXMgaXN0IGhpZXIgZGllIEZyYWdlIChNb3Jnb3RoLCAgOS4gTWFyIDE5OTksIDEyOjQ1OjMzKToKfiMhIHJuPUFuYXRvbCBydD05MjA5ODE5Nzggcmc9c2NobWFycm4KfiMhIHRpZD05MjA5NjU4NDMKRGFubmxlZyBkZW4gUGxheWJveSB3ZWcgdW5kIG5pbW0gRGlyIGF1Y2ggbmUgVGFzc2UgS2FmZmVlIDstKQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSWRsZSBvZGVyIG5pY2h0IGlkbGUsIGRhcyBpc3QgaGllciBkaWUgRnJhZ2UgKFJvY2h1cywgIDkuIE1hciAxOTk5LCAxODoxMjoyMSk6Cn4jISBybj1BbmF0b2wgcnQ9OTIwOTgxOTc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIwOTY1ODQzCktlaW5lIFNvcmdlLCBBbmF0b2wuCkljaCBoYWJlIGRhcyBWZXJzcHJlY2hlbiwgZGFzcyBNb3Jnb3RoIGRpZXNtYWwgc3RpbGwgc2VpbiB3aXJkLAp2b24gZWluZXIgUGVyc29uIGJla29tbWVuIGluIGRlcmVuIE1hY2h0IGVzIHN0ZWh0LCBkaWVzZXMKVmVyc3ByZWNoZW4gYXVjaCBlaW56dWhhbHRlbiA7LSkKCiAgUm9jaHVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBJZGxlIG9kZXIgbmljaHQgaWRsZSwgZGFzIGlzdCBoaWVyIGRpZSBGcmFnZSAoQW5hdG9sLCAgOS4gTWFyIDE5OTksIDE5OjE3OjQ5KToKfiMhIHJuPVJvY2h1cyBydD05MjEwMDMxNDEgcmc9c2NobWFycm4KfiMhIHRpZD05MjA5NjU4NDMKU2llIHZlcmZ1ZWd0IHVlYmVyIGVpbmVuIGdyb3NzZW4gS251ZXBwZWw/CgpBbmF0b2wgOikKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgYXVmIGRlbiBLYW5hZWxlbi4uLiAoWWVuZGksICA5LiBNYXIgMTk5OSwgMjA6MTE6MjMpOgpbQWxsZ2VtZWluOkhpZ2h0XSBhcmdsIGhhdCB2b3JoaW4gaXJjaGVuZHdlciBtZWluIGZldWVyc2Nod2VydCB1bmQgZGVuCltBbGxnZW1laW46SGlnaHRdIGVpc3BhbnplciBtaXRnZW5vbW1lbiB3aWUgaWNoIGFuIGRlciBwaHl0b24gZ2VzdG9yYmVuIGJpbgoKSmEsIGhhdCBkZW5uIG5pZW1hbmQgZGVuIGFybWVuIEhpZ2h0IGRhcmF1ZiBoaW5nZXdpZXNlbiwgZGFzcyBlciBzZWluCkZldWVyc2Nod2VydCBnYW56IHdlaXQgd2VnIHZvbSBFaXNwYW56ZXIgYXVmYmV3YWhyZW4gbXVzcz8gV2VubiBkYXMgZGEKZHJhdWZmYWVsbHQuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IElkbGUgb2RlciBuaWNodCBpZGxlLCBkYXMgaXN0IGhpZXIgZGllIEZyYWdlIChLYXJ0b2ZmZWwsICA5LiBNYXIgMTk5OSwgMjI6NTM6MDApOgp+IyEgcm49QW5hdG9sIHJ0PTkyMDk4MTk3OCByZz1zY2htYXJybgp+IyEgdGlkPTkyMDk2NTg0MwpLYW5uIGljaCBEaXIgc2FnZW4sIGRlciBHcnVuZCB3YXIgZWluIGxhdXRzdGFya2VzOgoiTW9yZ2VuLCBlcyBpc3QgYWNodCBVaHIsIHdlbm4gaWNoIG5pY2h0IGdlc2NobGFmZW4gaGFiLCBicmF1Y2h0IElociBhdWNoCm5pY2h0IHNjaGxhZmVuISEiCkdlZm9sZ3Qgdm9uIHd1ZXN0ZW0gUnVldHRlbG4gYW4gamVkZW0gU2NobGFmc2FjayB1bmQgZGVtIFZlcnNwcmVjaGVuIHZvbgpoZWlzc2VuIER1c2NoZW4gdW5kIEthZmZlZSwgbnVyIGRhc3MgZGllIER1c2NoZW4gbWFsIGhlaXNzIF8gd2FyZW5fIHVuZCBkZXIgCmVyc3RlIEthZmZlZSBzY2hvbiB3ZWcgYWxzIGljaCBhbiBNYXNjaGluZW4gYW5rYW0uCgonVG9mZmVsIC0gZXJpbm5lcnQgc2ljaCBsZWJoYWZ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBJZGxlIG9kZXIgbmljaHQgaWRsZSwgZGFzIGlzdCBoaWVyIGRpZSBGcmFnZSAoQ2F0d2VhemxlLCAxMC4gTWFyIDE5OTksIDAyOjIyOjU4KToKfiMhIHJuPUFuYXRvbCBydD05MjEwMDcwNjkgcmc9c2NobWFycm4KfiMhIHRpZD05MjA5NjU4NDMKSG0sIHNvd2VpdCB3dWVyZCBpY2ggbmljaHQgZ2VoZW4gLi4uIDotKQpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxvZ2ZpbGUgdm9uIFN0YW1tdGlzY2ggaW4gTVMgKE1vcmdvdGgsIDEwLiBNYXIgMTk5OSwgMDg6MzU6MTYpOgpXaWUgaW1tZXIgenVzYW1tZW5oYW5nbG9zLCBtaWVzLCBoaW50ZXJoYWVsdGlnIHVuZCBHVVQgISEKCkxlaWJuaXogc2FndDogSWNoIGZpbmRzIHNjaG9lbiwgd2VubnMgaW4gTVMgcmVnbmV0IHdlbm4gaWNoIGRhIGJpbiwgZGEgbXVzcwptYW4gbmljaHQgYXVzIGRlbSBIYXVzIGdlaGVuLgpMZWlibml6IGxhZWNoZWx0IEJyYW5kaXIgYW4KQnJhbmRpciBncmluc3QKTW9yZ290aCBzcHJpY2h0IEJyYW5kaXIgc2VpbiBCZWlsZWlkIGF1cwoKQ2F0d2VhemxlOiBXZW5uIG1laW5lIEZyZXVuZGluLi4uCgpMZWlibml6IHVuZCBCcmFuZGlyIG1hY2hlbiBzaWNoIHNjaG9uIHNlaHIgZnJ1ZWggYXVmIGRlbSBXZWcuLi4KQnJhbmRpciBzYWd0OiBJY2ggbXVzcyBhcmJlaXRlbi4uLgoKQmxhaGJsYWguLmlyZ2VuZGVpbiBHZXNwcmFlY2ggdWViZXIgRnJhdWVuLi4uCkJlZWx6ZWJ1YiBzYWd0OiBad2VpIEtvdHRsZXR0cyB1bmQgbmUgSGVpenVuZyBoYWJlbiBkZW4gZ2xlaWNoZW4gRWZmZWt0CgpDYXQqIGZyYWd0OiBXbyBpc3QgbWVpbiBULVNoaXJ0PwpYeHh4IGFudHdvcnRldDogRGFzIGhhdCBEZWluZSBGcmV1bmRpbi4KClJvY2h1cyBmcmFndDogV29ydWViZXIgcmVkZXQgaWhyPwpBcmlhbmE6IFNleApDYXQqOiBOaWNodHMsIGFiZXIgaWNoIGRhY2h0ZSBnZXJhZGUgYW4gQW5hdG9sCgpBcmlhbmE6IEljaCBrYW5uIGdhbnogdmllbCB1bmQgZ2FueiBsYW5nZQoKU28sIGRhcyB3YXJzIGxlaWRlciBzY2hvbi4uLgoKTW9yZ290aAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2llIHNvbGwgaWNoIGRhc3MgdmVyc3RlaGVuPz8/IChDcml0dGVyLCAxMC4gTWFyIDE5OTksIDEzOjQwOjA5KToKRGllIEhleGUgc2NoYXV0IERpY2ggdmVyYWVjaHRsaWNoIGFuLgpFaW4gT3JrbWFnaWVyIGphZ3QgRGljaCBuaWNodCBtZWhyLgpFaW4gT3JrIGphZ3QgRGljaCBuaWNodCBtZWhyLgpFaW5lIE9ya2ZyYXUgamFndCBEaWNoIG5pY2h0IG1laHIuCkVpbiBPcmsgamFndCBEaWNoIG5pY2h0IG1laHIuCkVpbmUgT3JrIGphZ3QgRGljaCBuaWNodCBtZWhyLiAgICAgICAgIAoKZ3J1c3MgYy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaGxlY2h0ZXMgT21lbiAoSHJlaWRtYXIsIDEwLiBNYXIgMTk5OSwgMTY6MjU6MjUpOgpBbHNvLCBzbyBoYXR0ZSBkYXMgd29obCBuaWVtYW5kIGVyd2FydGV0OgpEZXIgSnV3ZWxpZXIgcnVmdDogQ2xlb3BhdHJhIHVuZCBNZW5lcyBoYWJlbiBzb2ViZW4gaWhyZSBWZXJsb2J1bmdzcmluZ2Ugdm9uCm1pciBlcmhhbHRlbi4gCgpTdG9wZGVuYnVzIHJ1ZnQ6IGdyYXRzIGV1Y2ggYmVpZGVuICEhIQpFaW5lIGR1ZXN0ZXJlIFN0aW1tdW5nIG1hY2h0IHNpY2ggYnJlaXQuCgpIcmVpZG1hciwgZGFzIHNjaGxpbW1zdGUgYmVmdWVyY2h0ZW5kLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTY2hsZWNodGVzIE9tZW4gKE1haGF0bXUsIDEwLiBNYXIgMTk5OSwgMTY6MjY6MDEpOgp+IyEgcm49SHJlaWRtYXIgcnQ9OTIxMDgzMTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIxMDgzMTI1CkphamEsIHdlbm4gU3RvcGRlbkJ1cyBlcnN0bWFsIGxvc2xlZ3QsIGJsZWlidCBrZWluIFBhYXIgenVzYW1tZW4uCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcGVuZGVuIChSb2NodXMsIDEwLiBNYXIgMTk5OSwgMTc6MDM6MjkpOgpTd29vcCBzY2h1ZXR0ZWx0IG1pdCBpaHJlciBTcGVuZGVuYnVlY2hzZS4gRHUgc29sbHRlc3QgbGllYmVyIGVpbiBwYWFyIE11ZW56ZW4Kc3BlbmRlbiwgc2NobGllc3NsaWNoIGlzdCBkYXMgR2VsZCBmdWVyIGVpbmVuIGd1dGVuIFp3ZWNrLgpzcGVuZGUgMSBtdWVuemUKRHUgd2lyZnN0IGVpbmUgTXVlbnplIGluIGRpZSBTcGVuZGVuYnVlY2hzZS4KRGllcyB3YXIgbGVpZGVyIFNwaWVsZXJoaWxmZSEgRGVyIFZvcmdhbmcgd2lyZCBhdXRvbWF0aXNjaCBnZWxvZ2d0IHVuZCBhbiBhbGxlCkVyem1hZ2llciB2aWEgTWFpbCB3ZWl0ZXJnZXJlaWNodCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIGthbm4gbWFuIGVzIGF1Y2ggbmVubmVuIChTcmFiaSwgMTAuIE1hciAxOTk5LCAxNzoxOTo1MSk6CgpFaW5lIG9iZXJkdWVzdGVyZSBTdGltbXVuZyBtYWNodCBzaWNoIGJyZWl0LgpEZWluIEZyZXVuZCBXdWVobGVyIHRlaWx0IERpciBtaXQ6IEVyc3QgbWFsIHdpZWRlciBsZXJuZW4gOigKV3VlaGxlciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKClNyYWJpLCBkZXIgc2ljaCBpbW1lciBub2NoIHd1bmRlcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZ2VzY2hpY2sgbGFlc3N0IGdydWVzc2VuIChLYXJhbSwgMTAuIE1hciAxOTk5LCAyMzozOTozOSk6CkR1IHNjaGFlcmZzdCBkaWUgR2xhc2F4dC4gRGllIEtsaW5nZSBzaWVodCBqZXR6dCB3aWVkZXIgcmVjaHQgZ2VmYWVocmxpY2ggYXVzLgpEYW1pdCBpc3QgZGllIEdsYXNheHQgamV0enQgbmljaHQgZ2VzY2hhZXJmdC4gCgotLQpLYXJhbSAoc3RlbGx2ZXJ0cmV0ZW5kIGZ1ZXIgV2FyaykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndlbm4gTXVhZGliIG1hbCBuaWNodCBpZGxlIGlzdCAuLi4gKEVpc2ksIDExLiBNYXIgMTk5OSwgMTk6NDI6NDEpOgouLi4gYWJlciBtYW4gc2VsYnN0OgoKTXVhZGliIHRlaWx0IERpciBtaXQ6IGhtbSBudSBpcyBob2JvIHdlZwpNdWFkaWIgdGVpbHQgRGlyIG1pdDogd2VubiBuZXJ2IGljaCBudSA/Ck11YWRpYiB0ZWlsdCBEaXIgbWl0OiBrZ3p2Y21oamlqIG1uLG5iCk11YWRpYiB0ZWlsdCBEaXIgbWl0OiBzbyBzaWVodHMgYXVzIHdlbm4gbWFuIGRlbiBrb3BmIGF1ZiBkaWUgdGFzdGF0dXIgZmFsbGVuCk11YWRpYiB0ZWlsdCBEaXIgbWl0OiBsYWVzc3QKTXVhZGliIHRlaWx0IERpciBtaXQ6IGljaCBzZWggd2FzIHNjaHJlY2tsaWNoZXMKTXVhZGliIHRlaWx0IERpciBtaXQ6IGljaCBoYWIgYXVzbmFobXN3ZWlzZSBtYWwgbml4IHp1IHR1bgpNdWFkaWIgdGVpbHQgRGlyIG1pdDogdW5kIHByb21wdCBpcyBtaXIgbGFuZ3dlaWxpZwpNdWFkaWIgdGVpbHQgRGlyIG1pdDogaWNoIGdsYXViIGljaCBtdXNzIG1hbCB6dSBkZW4gYW5vbnltZW4gd29ya2Fob2xpY3MKTXVhZGliIHRlaWx0IERpciBtaXQ6IGJpc3QgZHUgbm9jaCBkYSA/Ck11YWRpYiB0ZWlsdCBEaXIgbWl0OiBoYWxsbwpNdWFkaWIgdGVpbHQgRGlyIG1pdDogaWNoIGZ1ZWhsIG1pY2ggd2llIG1hcnZvbgpNdWFkaWIgdGVpbHQgRGlyIG1pdDogYWVoIG1hcnZpbgpNdWFkaWIgdGVpbHQgRGlyIG1pdDogaWRlbHNhY2sKTXVhZGliICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhISAgICAgIAoKa2ljaGVyLApFaXNpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWhqYS4uLiAoWm9vaywgMTEuIE1hciAxOTk5LCAyMDowNTo0NSk6CgpLaWxhciBob2x0IHRpZWYgTHVmdC4uLgpHYXN0MSBiZXRyaXR0IGRpZXNlIFdlbHQuCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BlbmRlbiAoQXNtb2RpcywgMTEuIE1hciAxOTk5LCAyMDo0Mzo1MSk6Cn4jISBybj1Sb2NodXMgcnQ9OTIxMDg1NDA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIxMDg1NDA5CkFzbW9kaXMgd2VkZWx0IG1pdCBlaW5lciAnUm9jaHVzIGZvciBTcGllbGVyJy1GYWhuZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFiYmlsZGVyICAoQ29ubmVyLCAxMS4gTWFyIDE5OTksIDIzOjQxOjAwKToKCkF2aWVuZGhhIGtudWRkZWx0IGVpbiBBYmJpbGQgRGljaHMsIFJhc3B1dGluLCBEaWNoLCBUdXRzenQgdW5kIFppbGx1cy4gCgpDb25uZXIgaW4gYXVmdHJhZ2UgZWluZXMgS2xlcmlrZXJzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWJiaWxkZXIgIChaaW5vLCAxMS4gTWFyIDE5OTksIDIzOjQyOjEyKToKfiMhIHJuPUNvbm5lciBydD05MjExOTU2NjAgcmc9c2NobWFycm4KfiMhIHRpZD05MjExOTU2NjAKVHNzc3MsIGRhcyBrb21tdCBpbW1lciB3aWVkZXIgZ3V0LiBJY2ggZXJpbm5lciBtaWNoIGRhIG5vY2ggZ3V0IGFuIGVpbmUKRXBpc29kZSBpbSBSZWdlbmJvZ2VuLCB3byBkYW5uIGthbToKCk5pY2h0cyBrbnVkZGVsdCBEaWNoLCBlaW5lbiBEaWNoa29wZiwgZWluZW4gRGljaGtvcGYsIC4uLiB1bmQgZWluZW4gRGljaGtvcGYuCgpNYWhhdG1hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXb2hsIHp1IHN0dWVybWlzY2guLi4gKERhcmlhLCAxMi4gTWFyIDE5OTksIDAxOjA5OjAzKToKU295byBzdHVlcm10IGhlcmVpbi4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFNseWZveC4KCipncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5JRSBXSUVERVIgUVVJQ0shIChBbmF0b2wsIDEyLiBNYXIgMTk5OSwgMDE6MzY6MzMpOgpRdWljayBtYWNodCBkaWUgQXVnZW4genUuClBhZHJlaWMgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCjooCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMb2dmaWxlIHZvbiBTdGFtbXRpc2NoIGluIE1TIChBcmlhbmEsIDEyLiBNYXIgMTk5OSwgMDU6Mjc6NTkpOgp+IyEgcm49TW9yZ290aCBydD05MjEwNTQ5MTYgcmc9c2NobWFycm4KfiMhIHRpZD05MjEwNTQ5MTYKZGFzIGdlc3ByYWVjaCBnaW5nIHVtIHdlaW4gdHJpbmtlbiB1bmQgZGllIGZvbGdlbiB1bmQgaWNoIHNhZ3RlICJpY2gga2FubiBnYW56CnZpZWwgTk9DSCBnYW56IGxhbmdlIiBtb3Jnb3RoLi4uCmFiZXIgc29uc3QgYnJpbGxhbnQgbWl0Z2Vsb2d0CgphcmlhbmEgKndhZWx6KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IChLb29taSwgMTIuIE1hciAxOTk5LCAxMTo0ODowNyk6CkFscGhhIHRlaWx0IERpciBtaXQ6IGJhYmE6KQogVG9kIEFubmUgaGF0IGdlcmFkZSBBbHBoYSB1bWdlYnJhY2h0LgogVG9kIEFscGhhLCBEdSBoYWV0dGVzdCBkYXMgZG9jaCBiZXNzZXIgYmVpIEpvZiBwcm9iaWVyZW4gc29sbGVuIQogVG9kIEFscGhhLCBEdSBoYWV0dGVzdCBkYXMgZG9jaCBiZXNzZXIgYmVpIEpvZiBwcm9iaWVyZW4gc29sbGVuIQpncmlucwprb29taQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2luZyB3aWVkZXIgbWFsIHNjaG5lbGwgKERpZWRlciwgMTIuIE1hciAxOTk5LCAxNjowNjozNCk6CltUb2Q6TGFyc10gRGVyIFNjaHJlY2tlbnNkcmFjaGUgaGF0IGdlcmFkZSBOZWIgdW1nZWJyYWNodC4KW1RvZDpEZXIgU2NocmVja2Vuc2RyYWNoZV0gTUFNUEYhIE5hZWNoc3RlciwgYml0dGUhCk5lYiAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKTGFycyBtYWwgd2llZGVyIHNjaG5lbGxlciBhbHMgZGVyIExvZ2luLgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVy4uLmhtbW0gKEFyaywgMTIuIE1hciAxOTk5LCAyMzozMDo0NSk6CgpUaGVyaW4gdGVpbHQgRGlyIG1pdDogZ3JlcCBkb2NoIGVpbmZhY2ggOikKW1RvZDpMYXJzXSBMaGFuYSBkaSBMZW9uZHJvIGhhdCBnZXJhZGUgVGhlcmluIHVtZ2VicmFjaHQuCltUb2Q6TGhhbmEgZGkgTGVvbmRyb10gVGhlcmluIHdpcmQgaW4gS3VlcnplIGJlZ3JhYmVuLiBXaXIgYml0dGVuIHVtCltUb2Q6TGhhbmEgZGkgTGVvbmRyb10gQmx1bWVuc3BlbmRlbi4KCkhtLCBlciBtZWludGUgd29obCBncmFiZW4gOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGFzIHdhciBrbmFwcCA6KSAoU29yY2VyZXIsIDEzLiBNYXIgMTk5OSwgMDA6NDQ6NTApOgpuYWNoIGVpbmVyIGZsdWNodCA6ICdpbmZvJwoKWy4uLl0KR2VzdW5kaGVpdCAuLi4uLi4uIDAgICAoMTcwKSAgICAgICAgICBHaWZ0IC4uLi4uLi4uLi4uLi4gZ2VzdW5kICAgIApbLi4uXQoKYWJlciB1ZWJlcmxlYnQgOikKClNvcmNlcmVyLCB3aXNjaHQgc2ljaCBkZW4gU2Nod2Vpc3Mgdm9uIGRlciBTdGlybgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGRhcyB3YXIga25hcHAgOikgKEFzbW9kaXMsIDEzLiBNYXIgMTk5OSwgMDI6MTQ6MDUpOgp+IyEgcm49U29yY2VyZXIgcnQ9OTIxMjg1ODkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIxMjg1ODkwCkhtbSwgZ2FicyBkYWZ1ZXIgbmljaHQgbWFsIG5lbiBFaXNlbmhlcnotb3JkZW4gPyA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBmbHcgKEppZGR1LCAxMy4gTWFyIDE5OTksIDEzOjA5OjMxKToKfiMhIHJuPUtvb21pIHJ0PTkyMTIzOTI4NyByZz1zY2htYXJybgp+IyEgdGlkPTkyMTIzOTI4NwpMZXJudCBkb2NoIEVORExJQ0ggbWFsIHJpY2h0aWcgcG9zdGVuISAqc2V1ZnogdGhlYXRyYWxpc2NoKgpKaWRkdSwga2FubiBkYXMgdW5kIGlzdCBzdG9seiBkcmF1Zi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRhcyBzYWd0IGRlciByaWNodGlnZS4uLiAoV2ltLCAxNC4gTWFyIDE5OTksIDAxOjExOjAwKToKClN0cmVhd2tjZXVyIHRlaWx0IERpciBtaXQ6IHdpZSBzb2xsIG1hbiBzbyBzcGFldCBub2NoIHNvIGxhbmdlIHdvcnRlIHRpcHBlbgoKQWJlciBzZWluZW4gTmFtZW4gc29sbCBtYW4gaGluYmVrb21tZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBkYXMgc2FndCBkZXIgcmljaHRpZ2UuLi4gKEFzbW9kaXMsIDE0LiBNYXIgMTk5OSwgMDE6MzQ6MjcpOgp+IyEgcm49V2ltIHJ0PTkyMTM3Mzg2MCByZz1zY2htYXJybgp+IyEgdGlkPTkyMTM3Mzg2MApnZW5hdSwgZGEgbG9iIGljaCBzb2xjaGUgbmFtZW4gd2llICd3aW0nLCBnZW5hdSBkYXMgcmljaHRpZ2UsIHdlbm4gbWFuCm5hY2h0cyBiZXNvZmZlbiB2b3JtIHJlY2huZXIgc2l0enQgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCYWhuIChOYWlyb2xmLCAxNC4gTWFyIDE5OTksIDAzOjI1OjU3KToKSWNoIGRlbmtlIG1hbiBzb2xsdGUgbWFsIHNpY2ggZXR3YXMgZHVyY2ggZGVuIEtvcGYgZ2VoZW4gbGFzc2VuOgoKVGFyaW5hIGlzdCBkb29mLCBtYWVubmxpY2ggdW5kIHVlYmVyYXJiZWl0ZXQgLi4gYWJlciB2b3JhbGxlbTogU0lFIFdJTEwgU1RSRUlUCiEhIQoKCk5haXJvbGYgdmVyc3RlaHQga2VpbmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgbWFjaHQgRGllZGVyIG1pdCBtZWluZXIgSGF1dD8gKEthcmFtLCAxNC4gTWFyIDE5OTksIDE3OjI0OjMzKToKPiB1bnQgbGVpY2hlCkR1IHNpZWhzdCBkaWUgc3RlcmJsaWNoZW4gVWViZXJyZXN0ZSBEaWVkZXJzLgpTaWUgZW50aGFlbHQ6CkRlaW5lIGNoYW90aXNjaCBtdXRpZXJ0ZSBIYXV0LgpFaW5lIERpZGRsLUtudWRkZWwtTWF1cy4KRWluZSBEYWVtb25lbmF4dC4KRWluZSBFcmRiZWVyZS4KRWluIGdlbGJlcyBQb3N0cGFrZXQgKGdlb2VmZm5ldCkuCjU0OTYyIE11ZW56ZW4uCgotLQpLYXJhbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZS4uLiAoTm92YXN0b3JtLCAxNC4gTWFyIDE5OTksIDE4OjUxOjI0KToKW0FsbGdlbWVpbjpBbmF0b2wgc2FndCBudXI6IEJpZXJmbGFzY2hlbi5dCkxhcnMgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCgpEdSBmYWVuZ3N0IGFuIHp1IGtpY2hlcm4uCgpIbXBmLCBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYXJ0eXNhbXN0YWdhYmVuZC4uLi4gKEFuYXRvbCwgMTQuIE1hciAxOTk5LCAxOTowMjoxMSk6CgpOYWNodHdpbmQsIE1haGF0bWEsIEFuYXRvbCBzaXR6ZW4gYXVmIGVpbmVyIEJhbmsgYW0gZmVybmVuIEVuZGUgZGVyClBhcnR5dHVybmhhbGxlLiBFcyBpc3Qgc2Nob24gZXR3YXMgc3BhZXRlciwgZGllIEhhbGxlIGlzdCBhbnNvbnN0ZW4KcGVyc29uZW5iZWRpbmd0IGxlZXIuIERhIGdlaHQgZGllIFR1ZXIgYXVmLgogICAgJycgRGVyIGtvbW10IG5pY2h0IGhpZXJoZXIuICcnCiAgICAnJyBEZXIgaG9sdCBudXIgZWluIEJpZXIuICcnCiAgICAnJyBEZXIgaG9sdCBCRVNUSU1NVCBudXIgZWluIEJpZXIhICcnCiAgICAnJyBWZXJkYW1tdC4gJycKICAgICcnIE1pc3QuIFdpZXZpZWwgc3RlaHQgZWlnZW50bGljaCBhdWYgTW9yZD8gJycKICAgICcnIEltbWVybm9jaCBsZWJlbnNsYWVuZ2xpY2guICcnCiAgICAnJyBBY2ggd2FzLCBuYWNoIDE1IEphaHJlbiBiaXN0IER1IGRyYXVzc2VuLiAnJwogICAgJycgTWl0IGd1dGVyIEZ1ZWhydW5nIG5hY2ggMTAgLSBzY2hhZmZzdGUgZGFzPyAnJwogICAgJycgRGFzIGlzdCBvaG5laGluIGtlaW4gTW9yZCwgZGFzIGlzdCBUb3RzY2hsYWcgaW0gQWZmZWt0LiAnJwogICAgJycgV2llc28sIGhhdCBlciBzY2hvbiBldHdhcyBnZXNhZ3Q/ICcnCiAgICAnJyBOb2UsIG5vY2ggbmljaHQsIGFiZXIgZ2xlaWNoLiAnJwpQYWRyZWljIHNhZ3Q6IE5hIGlocj8KCkFuYXRvbCAtIHd1cmRlIGxlaWRlciBmZXN0Z2VoYWx0ZW4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW5zYW1rZWl0Li4uIChGb29iYXIsIDE0LiBNYXIgMTk5OSwgMjM6MjM6NTMpOgpMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gU29uLCAxNC4gTWFyIDE5OTksIDIzOjIwOjE3ICgxIFRlaWxuZWhtZXIpCgpGb29iYXIuLi4uLi4uLi4uLnMKCiAgICAgRm9vKmtlaW5lcndpbGxtaXRtaXJzcGllbGVuKmJhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzJ24gaGllciBsb3M/IChBcmlhbmEsIDE1LiBNYXIgMTk5OSwgMDA6Mjc6MzUpOgo+IGt3ZXIKTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIE1vbiwgMTUuIE1hciAxOTk5LCAwMDoxNjowOSAoMgpUZWlsbmVobWVyKXxGb29iYXIuLi4uLi4uLi4uLnMgQXJpYW5hLi4uLi4uLi4uLi5zCgphbGxlIGFtIHNjaHdhZWNoZWxuLCB3ZWdlbiBkZXIgcGFydHkgamE/ICpHR0cqCgppY2ggbXVzcyBzY2hvbiBzYWdlbiwga2VpbmUga29uZGl0aW9uLCB3ZW5pZ3N0ZW5zIGVpbiBwYWFyIHNjaHVldHRsZXIgaGFldHRlCmljaCBlcndhcnRldAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU29vb29vbyBzY2hsaW1tPyAoRm9vYmFyLCAxNS4gTWFyIDE5OTksIDAwOjMxOjM0KToKQXJpYW5hIGdyaW5zdCBkcm9oZW5kLgpEZXIgQmV0dGxlciBnZWh0IG5hY2ggV2VzdGVuLgpGb29iYXIgaGVidCBiZWlkZSBBcm1lLgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgQXJpYW5hLgoKICAgICBGb29iYXIsIHNpY2ggaW1tZXIgbm9jaCBzY2hhZW1lbmQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJpZXNlbm1hdXM/Pz8gKEZvb2JhciwgMTUuIE1hciAxOTk5LCAwMDo0NToxOCk6CnNjaGFldHogbWF1cwpNb2xseSBNYWxvbmUgaXN0IGFic29sdXQgZml0IHVuZCBkYW1pdCBzY2h3YWVjaGVyIGFscyBEdS4gU2llIGthZW1wZnQgbWl0CmlocmVuIEtyYWxsZW4uIERhbWl0IGthZW1wZnQgc2llIGV0d2FzIGJlc3NlciBhbHMgRHUuIE1vbGx5IG1hbGxvbmUgdHJhZWd0CmtlaW5lIHp1c2FldGxpY2hlIFJ1ZXN0dW5nLiBEYW1pdCBpc3Qgc2llIGdlbmF1c29ndXQgd2llIER1IGdlc2NodWV0enQuCk1vbGx5IG1hbG9uZSBpc3QgZXR3YSAxNzdjbSBncm9zcy4KCiAgIEZvb2JhcgoKICAgICAgKGhhdCBqZXR6dCBub2NoIEFuZ3N0IHZvciBBcmlhbmFzIFJpZXNlbm1hdXMpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpudXIgZWluIGt1cnplciB1ZWJlcmJsaWNrLi4uLiAoQXJpYW5hLCAxNS4gTWFyIDE5OTksIDAwOjQ5OjI1KToKWnVlcnN0LCBhdWYgV3Vuc2NoIFRlZGR5czogCgoiVGVkZHkgaGF0IG5lbiBncm9zc2VuLi4uLiIgKFppdGF0KQoKYW5zb25zdGVuIFBhcnR5eml0YXRlCgpURUREWTogQmVpIENhdHRpZSBpcyBrZWluZSBTY2hyYXViZSBsb2NrZXIsIGVyIHNpZSBzb2dhciBiZXJlaXRzIHZlcmxvcmVuLgoKQ0lTT1U6IEljaCBoYWJlIExldiB2ZXJzcHJvY2hlbiwgZGFzcyBpY2gga29tbWUuLi4uLm5hamEsIGRhcyB3YXIgZGFubiB3b2hsCnVudGVyIDxBdXNzY2hsdXNzIGRlciBPZWZlbnRsaWNoa2VpdDopCgpLRUxMTkVSSU46IERhcmZzIG5vY2ggd2FzIHp1IHRyaW5rZW4gc2Vpbj8KSEFTSU06IFNhbGF0CgpTSU5VUzogRnJhdWVuIGFid2VydGVuIQoKR1JJTU1BTjogKmFuIHNlaW5lbSBHdWVydGVsIGhhbnRpZXJlbmQqIExhc3N0IHVucyBQQXJ0eSBtYWNoZW4uCgpDQVRUSUU6IEljaCBiaW4gdm9uIGFsbGVuIGRlciBTY2huZWxsc3RlLgpBcmlhbmEgKndvbGx0ZSBkYW5uIG5pY2ggbWVociB3ZWl0ZXJmcmFnZW4gdW5kIGlzIGxpZWJlciBnZWdhbmdlbgoKQkVFTFpFQlVCOiBLYXJ0b2ZmZWwgbWFncyBzY2hhcmYuLi4uc29zbyA6KQoKR1JJTU1BTjogT3JnYW5pc2F0b3JlbiBhYndlcnRlbiEKClRFRERZIHp1IFBGRUlGRTogTWl0IHdlbSBoYXR0ZXN0IER1IGRlbm4gbm9jaCBTZXg/CgpCRUVMWkVCVUIgKmF1ZiBkaWUgRnJhZ2UsIHdhcyBtaXQgQXJpYW5hIGxvcyBpc3QqOiBFbnR3ZWRlciBoYXQgc2llIGlocmUgVGFnZQpvZGVyIGlocmUgUmVnZWwuLgoKQkVFTFpFQlVCOiBJbiBkZXIgVGhlb3JpZSBiaW4gaWNoIGd1dCEgIChzaWVoZSBhdWNoIG9iZW4gKkdHRyopCgpURUREWTogQWxzbyB0aWVmZXIgd3VlcmRlIGljaCBqZXR6dCBhdWNoIG5pY2guLi4uCgpNT1JHT1RIOiBHcmVpZiBtYWwgbmFjaCB1bnRlbiB1bmQgaG9sZSBkYXMgZGlja2UgRGluZyByYXVzLi4uKHVuZCBzb3dhcyBiZWltCkZydWVoc3R1ZWNrKnNjaGF1ZGVyKikKQVJJQU5BIHp1IEJFRUxaRUJVQjogUmVkIG5pY2ggdWViZXIgRGluZ2UsIHZvbiBkZW5lbiBEdSBrZWluZSBBSG51bmcgaGFzdC4KTU9SR09USCAqYXVzIGRlciBFY2tlIGJydWVsbGVuZCogOlNFWAoKQkVFTFpFQlVCOiBUaGVvcmV0aXNjaCBpcyB6aWVtbGljaCBkZXByaW1pZXJlbmQuLi4uLi4oZGFjaHRlbiB3aXIgdW5zIG5hY2ggZGVuCnNhZXR6ZW4gb2Jlbi4uLi4pCgpHRVNQUkFFQ0ggendpc2NoZW4gVEVERFkgdW5kIFBGRUlGRToKVEVERFk6IE1hY2ggaGluLCBpY2ggd2lsbCBmZXJ0aWcgd2VyZGVuLgpQRkVJRkUgRHUgYmlzdCBmZXJ0aWchISEKVEVERFk6IEFjaCBzby4uLi4uCihuYWphLCBUZWRkeSwgd2VubiBzaWUgRGlyIGRhcyBzY2hvbiBzYWdlbiBtdXNzLi4uLi4pCgpDQVRUSUUgKgptaXQgU29ja2VuIGluIGRlciBIYW5kIGFuIHNlaW5lbSBSZWlzc3ZlcnNjaGx1c3MgaGFudGllcmVuZCogOjQgbW0gPz8/CkFyaWFuYTogRHUgc3RvcGZzdCBEaXIgU29ja2VuIGluIGRpZSBIT1NFPz8/IChDYXR0aWUgZ2VkYW5rbGljaCB3aWVkZXIgaW4gZGllCmJlZHVlcmZuaXNsaXN0ZSBhdWZuZWhtZW5kKQpURUREWTogU29zbywgRGlyIGZlaGxlbiBhbHNvIDQgbW0gdW5kIGRlc2hhbGIgc3RvcGZzdCBEdSBESXIgU29ja2VuIGluIGRpZQpIb3NlLi4uCgpHUklNTUFOOiBOb3JtYWxlcndlaXNlIGhhYiBpY2ggNCBtbS4uLi4uCgoKTmFqYSwgd2llIHVlYmxpY2ggZXR3YXMgYXVzIGRlbSBadXNhbW1lbmhhbmcsIGFiZXIgZGFmdWVyIHVtc28gYmVzc2VyOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSaWVzZW5tYXVzPz8/IChBcmlhbmEsIDE1LiBNYXIgMTk5OSwgMDA6NTA6MjEpOgp+IyEgcm49Rm9vYmFyIHJ0PTkyMTQ1ODcxOCByZz1zY2htYXJybgp+IyEgdGlkPTkyMTQ1ODcxOApOYWphLCBpcmdlbmR3YW5uIGJyYXVjaHRlIGljaCBoaWVyIFNjaHV0eiwgZGllIEJlZHVlcmZ0aWdrZWl0c2xpc3RlIGlzCmxhbmcuLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG51ciBlaW4ga3VyemVyIHVlYmVyYmxpY2suLi4uIChHcmltbWFuLCAxNS4gTWFyIDE5OTksIDE2OjI3OjQyKToKfiMhIHJuPUFyaWFuYSBydD05MjE0NTg5NjUgcmc9c2NobWFycm4KfiMhIHRpZD05MjE0NTg5NjUKTnVyIHp1IG1laW5lciBlaHJlbnJldHR1bmcuLi5pY2ggZ2xhdWJlIGVzIGdpbmcgdW0gSGFhcmUuLi4KCgo0bW0tR3JpTWFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3aWVkZXJzZWhlbnNmcmV1ZGUgLi4uIChOYWlyb2xmLCAxNS4gTWFyIDE5OTksIDE2OjU1OjM1KToKW1NlaGVyOlNjaG9rb10gSG1tIGtvZW5udGUgbWlyIGdyYWQgbWFsIGVpbiBNYWdpZXIgbWl0IG1laW5lbiBBdXRvbG9hZGVybgpbU2VoZXI6U2Nob2tvXSBoZWxmZW4/IEljaCBmdWVobGUgbWljaCBpcmdlbmR3aWUgc28gbmFja2ljaCBvaG5lIGRhcyBnYW56ZQpbU2VoZXI6U2Nob2tvXSBaZXVncyA7KQpCb2luZyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCgoKc29zbyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW52ZXJzY2hhZW10aGVpdCA6KSAoRGllZGVyLCAxNS4gTWFyIDE5OTksIDE3OjA5OjE5KToKSHVlcGZlciBzYWd0OiBhYmVyIGljaCBicmF1Y2hlIG5vY2ggbWVociBNYWVubmVyIC4uLiBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KCkRpZWRlciwgaXN0IGVtcG9lcnQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbm4gZGVyIGVpbmUgdWViZXIgVGVsZWZvbiBuaWNodCB3ZWlzcywgd2FzIGRlciBhbmRlcmUgd2lsbCAoU3JhYmksIDE1LiBNYXIgMTk5OSwgMTc6NDg6MjQpOgoKRGllIGVpbmVuIHdhcmVuIGJlaW0gQ2hpbmVzZW4gdW5kIExlbmEgdmVyc3VjaHQga3JhbXBmaGFmdCBKYW1lc29uIGFucyBUZWxlZm9uCnp1IGJla29tbWVuLCBkYXMgZ2luZyB1bmdlZmFlaHIgc286CgpIaWVyIExlbmEuLi5pY2ggaGFldHRlIGdlcm5lIG1hbCBKYW1lc29uIGdlc3Byb2NoZW4hClBhdXNlLCBkZXIgendlaXRlIEtlbGxuZXIga29tbXQgYW5zIFRlbGVmb24KCkphIGhpZXIgTGVuYSwgaWNoIGhhZXR0ZSBnZXJuZSBtYWwgSmFtZXNvbiBnZXNwcm9jaGVuIQoKRGFzc2VsYmUgU3BpZWwgbm9jaCBiZWkgZWluZW0gZHJpdHRlbiBLZWxsbmVyLgoKRGFubiB3ZWl0ZXI6CmFjaCBnZWJlbiBzaWUgbWlyIGVpbmZhY2ggTGVpYm5pei4uLmphIHdpZSBkZXIgS2Vrcy4KRGFtbSBrYW0gZWluIEphbWVzb24uLi5hbGxlcmRpbmdzIHdhciBlcyBKYXNvbnJpZ2lkLgpHZXNwcmFlY2ggd3VyZGUgdW50ZXJicm9jaGVuLgoKTmFjaCBkZW0gendlaXRlbiB3YWVobGVuOgpTZWxiZSBTcGllbCB3aWUgYmVpbSBlcnN0ZW4gbWFsIHVuZCB3aWVkZXIga2FtIEphbWVzb24gbmljaHQuLi5zb25kZXJuIEphc29uKgoKTGVuYSBtZWludGUgZGFubiBudXIgbm9jaDogSmFtZXNvbiB3aWUgSmFzb24gbnVyIG9obmUgcyB1bmQgbWl0IG0KCkpvLCB3ZW5uIGRlciBlaW5lIG5pY2h0IHdlaXNzLCB3YXMgZGVyIGFuZGVyZSB3aWxsLCBpcmdlbmR3YW5uIGthbSBkYW5uCkphbWVzb24gdW0gZGllIEVja2UuCgpaZXVnZW4gZGVzIEdlc3ByYWVjaHM6IEdvbGFzIHVuZCBLYXJvbCB1bmQgZWluIEp1bmdlLCBkZXIga3JhbXBnaGFmdAp2ZXJzdWNodGUsIElubGluZXIgenUgZmFocmVuCgpTcmFiaSBtdXNzIGltbWVyIG5vY2ggbGFjaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYXNzdCEgKERpZWRlciwgMTUuIE1hciAxOTk5LCAxNzo1Njo0Nyk6CmZ3ZXIgb3J0Ci4uLgogTmViICAgICAgICAgICAgLSBOZWJlbGlnZXIgV2FsZAouLi4KCkRpZWRlciwga2ljaGVydCBpbW1lciBub2NoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcmdocyEgKE5vdmFzdG9ybSwgMTUuIE1hciAxOTk5LCAxODozNzoxOCk6ClBhZHJlaWMgZXJzY2hlaW50LgpPaCwgTWlzdCwgZWluIFZvZ2VsIGhhdCBzZWluZW4gQmFsbGFzdCB1ZWJlciBEaXIgYWJnZXdvcmZlbi4KCiAgICAgTm92YSwgVm9lZ2VsIHNpbmQgYXVjaCBuaWNodCBtZWhyIGRhcyAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBcmdocyEgKFRhbWVsaSwgMTUuIE1hciAxOTk5LCAxODo0MzowNik6Cn4jISBybj1Ob3Zhc3Rvcm0gcnQ9OTIxNTIzMDM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIxNTIzMDM4CltUcnZlczpCaGFtaXIgZGVyIFRhbWFnb3RjaGktU2NobGFjaHRlciBpc3QgenVydWVjay5dCk9oLCBNaXN0LCBlaW4gVm9nZWwgaGF0IHNlaW5lbiBCYWxsYXN0IHVlYmVyIERpciBhYmdld29yZmVuLgoKZ2lidCBub2NoIG1laHIgZGllIGhpZXIgbXVlbGwgYWJ3ZXJmZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyBzb2xsIGF1cyBkZW4gQ2hhb3RlbiBub2NoIHdlcmRlbj8gOiggKEVpc2ksIDE1LiBNYXIgMTk5OSwgMTg6NTg6MDkpOgpUeXJpb24gZWllcnQgYXVmIGVpbmVtIFJvbGxzdHVobCBtdWVoc2FtIGhlcmVpbi4KS3J1dW9scSB2ZXJuZWlndCBzaWNoIHZvciBkZW0gRXJ6bWVpc3RlciBUeXJpb24uClR5cmlvbiBncmluc3QgRGljaCBhbi4KCipzZXVmeioKRWlzaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOi0pIChUYXJpbmEsIDE1LiBNYXIgMTk5OSwgMTk6MTA6MjgpOgoKQ2FsaW1lcmEgcnVmdDogRGFua2UgOi0pIHdhaHJlIGxpZWJlIGdpYnRzIG51ciB1bnRlciBmcmF1ZW4gOykKRGVpbiBGcmV1bmQgRGFya3dpbmcgdGVpbHQgRGlyIG1pdDogd2FhYWFhYWFhaCAKRGFya3dpbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhClJlYXBlciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEgCgpUYXJpbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbnVyIGVpbiBrdXJ6ZXIgdWViZXJibGljay4uLi4gKFRlZGR5LCAxNS4gTWFyIDE5OTksIDIwOjU0OjQ4KToKfiMhIHJuPUdyaW1tYW4gcnQ9OTIxNTE1MjYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIxNDU4OTY1Ck5pY2h0IHdpcmtsaWNoIDspCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWnUgVG9kZSBlcnNjaHJlY2t0IChLYXJhbSwgMTUuIE1hciAxOTk5LCAyMTozNzo1Myk6ClNvbG93YW4gZXJzY2hyZWNrdCBkaWUgQW53ZXNlbmRlbi4gCkJ1ZmZ5IGdlaHQgaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4uCgotLQpLYXJhbSAoaGFldHRlIG5pY2h0IGdlZGFjaHQsIGRhc3MgZGllIEphZWdlcmluIHNvdmllbCBBbmdzdCB2b3IgTWFldXNlbiBoYXQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGphLi4gc28gZ2VodCBkYXMgYWxzby4uICAoWm9vaywgMTUuIE1hciAxOTk5LCAyMzo1NTo0MSk6CgpOaWNodCBudXIgTGFycyBpc3Qgc2NobmVsbDoKCkR1IGxhZWNoZWxzdCBNdWFkaWIgYXVzIGRlciBGZXJuZSBhbi4KTXVhZGliICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5vY2ggZWluZSBuYWNobGVzZS4uLi4gKEFyaWFuYSwgMTYuIE1hciAxOTk5LCAwMDowMDozNCk6CmRlciBrcm9lbmVuZGUgQWJzY2hsdXNzIGRlciBQYXJ0eSA/CgpCRUVMWkVCVUIgKmluIHZvbGxlbSBFcm5zdCogOiBJc3QgaGllciBJcmdlbmR3ZXIgZGVyIGVpbmUgR0lMRE8gSE9STiBDRApWRVJNSVNTVCA/Pz8/CgpCZXRyZXRlbmVzIFNjaHdlaWdlbi4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3YXMnbiBoaWVyIGxvcz8gKEFzbW9kaXMsIDE2LiBNYXIgMTk5OSwgMDA6NDQ6MzIpOgp+IyEgcm49QXJpYW5hIHJ0PTkyMTQ1NzY1NSByZz1zY2htYXJybgp+IyEgdGlkPTkyMTQ1NzY1NQpWb24gd2VnZW4sIHdlbm4gbWFuIHZvbiBhdXNzZW4gbWFsIHJlaW5nZWtvbW1lbiB3YWVyZSAuLi4gOi0oCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcsIGltbWVyIHdpZWRlciBzY2hvZW4gKExpbGxlYnJvciwgMTYuIE1hciAxOTk5LCAwMToxNjoxOSk6CipoaWhpKgpKaWRkdSB0ZWlsdCBEaXIgbWl0OiBhdWZydWYgenVtIG1pdHN0ZXJiZW4gOykgcmVhcGVyIG1laW50IHdpciBzY2hhZmZlbiBkZW4KSmlkZHUgdGVpbHQgRGlyIG1pdDogYmFscm9nIGFsc28gLVQrIDspIFswMDozNF0KW1RvZDpMYXJzXSBFaW4gTmF6Z3VsIGhhdCBnZXJhZGUgSmlkZHUgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFybWVyIGZvbmRpbCAoU3RvcGRlbmJ1cywgMTYuIE1hciAxOTk5LCAwODo1NDoyNSk6CkhlbGxmbGVjayBnaWJ0IEZvbmRpbCBlaW5lbiB0aWVmZW4gdW5kIGhpbmdlYnVuZ3N2b2xsZW4gS3Vzcy4gIApGb25kaWwgRmFyaW4gemllaHQgYmVpbSBMZXNlbiBlcnN0YXVudCBzZWluZSBBdWdlbmJyYXVlbiBob2NoLgoKd2FzIGRhcyB3b2hsIGhlaXNzZW4gbWFnID8KClN0b3BpZSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1ZXIgU3RhcndhcnN0cmFpbGVyIChBbmFraW4sIDE2LiBNYXIgMTk5OSwgMDk6NTY6MzcpOgoKSGksCgpXZXIgZGVuIG5ldWVuIFN0YXJ3YXJzdHJhaWxlciBzZWhlbiB3aWxsIGljaCBoYWJlIGlobiBhbHMKbXBlZyB1bmQgcXQzIGlucyAvdG1wIHZvbSBtdWQgZ2VwYWNrdC4KCkFuYWtpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBuZXVlciBTdGFyd2Fyc3RyYWlsZXIgKEJvaW5nLCAxNi4gTWFyIDE5OTksIDEwOjQ5OjIyKToKfiMhIHJuPUFuYWtpbiBydD05MjE1NzgxOTcgcmc9c2NobWFycm4KfiMhIHRpZD05MjE1NzgxOTcKU29ycnksIGFiZXIgZGVyIE1HLVJlY2huZXIgaXN0IG5pY2h0IHp1bSBMYWdlcm4gcHJpdmF0ZXIgRGF0ZWllbiBnZWRhY2h0LAp2b3IgYWxsZW0gbmljaHQgaW4gZGllc2VyIEdyb2Vzc2UuIEVyc3Qga3VlcnpsaWNoIHdhciB1bnNlcmUgUGxhdHRlIHZvbGwuCkRpZSBEYXRlaWVuIHNpbmQgd2llZGVyIGdlbG9lc2NodC4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNb3Jnb3RoLCAxNi4gTWFyIDE5OTksIDEwOjUxOjU2KToKW01vZXJkZXI6R2Vpc3QgZWluZXMgSHlkcmFrb3Bmc10gRGFzIG5hZWNoc3RlIE1hbCBzaWVodCBtYW4gdW5zZXJlIGJlaWRlbgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBIeWRyYWtvcGZzXSBOYW1lbiBhdWYgW1RvZDpdLCBLYWZrYSEKW1RvZDpMYXJzXSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgS2Fma2EgdW1nZWJyYWNodC4KW1RvZDpFaW4gSHlkcmFrb3BmXSBoc3Nzc3NzIAoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJhY2hlIGFtIEdlZmx1ZWdlbHRlYW0gKE1vcmdvdGgsIDE2LiBNYXIgMTk5OSwgMTE6MDA6MzEpOgpbTW9lcmRlcjpHZWlzdCBlaW5lciBHYW5zXSBJY2ggZm9yZGVyZSBSZXZhbmNoZSwgVGh1ZmlyISA8MTA6NTQ6MjE+CltNb2VyZGVyOkdlaXN0IGVpbmVyIEdhbnNdIEljaCBoYWIga2VpbmUgQW5nc3Qgdm9yIGRpciwgVGh1ZmlyISA8MTA6NTQ6MjU+CltNb2VyZGVyOkdlaXN0IGVpbmVzIEhhYmljaHRzXSBUaHVmaXIgaXN0IHNjaGxpbW1lciBhbHMgZGFzIE1lbnNhZXNzZW4uCltNb2VyZGVyOkdlaXN0IGVpbmVzIEhhYmljaHRzXSBBYnNvbHV0IHRvZWRsaWNoLiA8MTA6NTQ6NDU+CltNb2VyZGVyOkdlaXN0IGVpbmVzIEFkbGVyc10gVGh1ZmlyLCBEdSBNb25zdGVyc2NoYWVuZGVyISA8MTA6NTY6Mzg+CltNb2VyZGVyOkdlaXN0IGVpbmVzIFRydXRoYWhuc10gTW9lZ2VzdCBkdSBpbSBMYWcgdmVycm90dGVuLCBUaHVmaXIhCltNb2VyZGVyOkdlaXN0IGVpbmVzIFRydXRoYWhuc10gPDEwOjU2OjU4PgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBTdHVybXZvZ2Vsc10gQUxBQUFBQUFSTSEgVGh1ZmlyIElTVCBBVVNHRUJST0NIRU4hCltNb2VyZGVyOkdlaXN0IGVpbmVzIFN0dXJtdm9nZWxzXSA8MTA6NTc6MTA+CltNb2VyZGVyOkdlaXN0IGVpbmVyIFdhY2h0ZWxdIE1lcmxpbiwgbWFjaCBUaHVmaXIgenVtIE1hZ2llciEgPDEwOjU5OjAwPgpbTW9lcmRlcjpHZWlzdCBlaW5lciBFbnRlXSBJbiBzcGFldGVzdGVucyBlaW5lciBTdHVuZGUga29tbWUgaWNoIHdpZWRlciwKW01vZXJkZXI6R2Vpc3QgZWluZXIgRW50ZV0gVGh1ZmlyISA8MTA6NTk6MTA+CltNb2VyZGVyOkdlaXN0IGVpbmVzIEh1aG5zXSBTdWNoZSBLaWxsZXIsIHphaGxlIGd1dCwgWmllbHBlcnNvbiBUaHVmaXIuCltNb2VyZGVyOkdlaXN0IGVpbmVzIEh1aG5zXSA8MTA6NTk6MjI+CgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJhY2hlIGFtIEdlZmx1ZWdlbHRlYW0gKFRodWZpciwgMTYuIE1hciAxOTk5LCAxMTowOTozNyk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkyMTU4MjAzMSByZz1zY2htYXJybgp+IyEgdGlkPTkyMTU4MjAzMQoKVGh1ZmlyIGRlbmt0IC4gbyBPICggQWNodHVuZyEgQmF1bSBmYWVsbHQhIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBuZXVlciBTdGFyd2Fyc3RyYWlsZXIgKEtleSwgMTYuIE1hciAxOTk5LCAxMTo0NTo1MSk6Cn4jISBybj1Cb2luZyBydD05MjE1ODEzNjIgcmc9c2NobWFycm4KfiMhIHRpZD05MjE1NzgxOTcKV2VyIG5vY2ggZHJhbiBpbnRlcnJlc3NpZXJ0IGlzdCBrYW5uIHNpZSBzaWNoIHZvbjoKc2VydmljZS5waHlzaWsudW5pLW1hcmJ1cmcuZGUgaG9sZW4sIGxvZ2luIHN0YXIsIHB3IGtlaW5lcyAuLi4uIEljaCBsYXNzIHNpZQptYWwgYmlzIG1vcmdlbiBkcmF1Zi4KCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGEgbWlyIGdlcmFkZSBsYW5nd2VpbGlnIGlzdC4uLiAoUGllcmNlLCAxNi4gTWFyIDE5OTksIDExOjUwOjQyKToKLi4ucG9zdGUgaWNoIGpldHp0IGRpZSBHZXNjaGljaHRlbiwgZGllIHNpY2ggZGllIFRlYW1zIGRlciBSTC1RdWVzdCBpbiBNYXJidXJnCmF1cyBkZW4gRmluZ2VybiBnZXNhdWd0IGhhYmVuLiBadXIgRXJrbGFlcnVuZzogR2Vmb3JkZXJ0IHdhciwgZWluZSBHZXNjaGljaHRlCm1pdCBtYXhpbWFsIDE1IFNhZXR6ZW4genUgZXJ6YWVobGVuLCBkaWUgZWluZSBiZXN0aW1tdGUgQW56YWhsIFdvcnQgYXVzIGVpbmVyCnZvcmhlciBmZXN0Z2VsZWd0ZW4gTGlzdGUgZW50aGFsdGVuIG11c3N0ZS4gSWNoIHBvc3RlIGRpZSBUZWFtcyBpbiBkZXIKYWxwaGFiZXRpc2NoZW4gUmVpaGVuZm9sZ2UsIGFsc28ga2VpbmUgV2VydHVuZyByZWluaW50ZXJwcmV0aWVyZW4gOykKCkhpZXIgenVuYWVjaHN0IGRhcyBbVGVhbTogQWx0ZSBPbWFzXQoKSW4gZGVyIEthdWZoYXVza2FudGluZSB0cml0dCBkaWUgSW5xdWlzaXRpb24gdm9tIGhlaWxpZ2VuIERpcHNvbWFuZW4sCmFuZ2VmdWVocnQgdm9uIFRlYW1sZWFkZXIgdW5kIEdyb3Nzb3JnYW5pc2F0b3IsIGhpZ2ggdm9uIFN1ZXNzc3RvZmZ0YWJsZXR0ZW4sCmRhc3Mgc2llIHNlbGJzdCBuaWNodCBtZWhyIHNhZ2VuIGtvZW5udGVuLCBvYiBzaWUgWCAtIG9kZXIgWS1DaHJvbW9zb21lbgpoYWJlbiwgenVzYW1tZW4sIHVtIGRhcyB3ZWdlbiBkZXIgUnVlc3R1bmdzc3BpcmFsZSBub3R3ZW5kaWcgd2VyZGVuZGUgQWJ3ZXJ0ZW4KZGVyIEJhdWVybmhvZi1TY2huZWVmcmFlc2UgYXVmIGRlciBFcmRiZWVycGxhbnRhZ2UgZGVyIFNjaHJlY2tlbnNzcGl0emUgenUKYmVzY2hsaWVzc2VuLgoKWGVyeGVzLCBUcm9nbG9keXQgZGVyIGVyc3RlbiBPcmRudW5nIHVuZCBhdXNzZXJkZW0gZWluIFJpZXNlbi1Nb25ka2FsYiwgcnVmdDoKIlp1Z2dlcnNjaG5lZ2dzY2hlIiwgd29yYXVmIGRlciByZXN0IHJ1ZnQ6ICJTaWUgc2luZCByYXVzLCBYZXJ4ZXMiIHVuZCBpaG4gdm9tCllldGkgenVtIFNjaGxhYmJlcm11cmtzIGluIGRlbiBTdHJhbmRrb3JiIHRyYW5zZW4genUgbGFzc2VuICh3YXMgbmF0dWVybGljaAp2aWVsIE1hbmEgdmVyYnJhdWNodCksIG9obmUgenUgYmVkZW5rZW4sIGRhc3MgZGllIExvY2tlbndpY2tsZXIgaW4gZGVyCkZ1c3NmZWxsZnJpc3VyIGRlcyBZZXRpIGVpbmVuIEFuYWNocm9uaXNtdXMgaW4gZGVuIExvZ2FyaXRobWVuIGRlcyBVbml2ZXJzdW1zCnZlcnVyc2FjaHRlLCB3b3J1ZmhpbiBYZXJ4ZXMgaW4gZGVyIFRlZGR5YmFlcnNjaGF1a2VsIGltIEdlcmFldGVzY2h1cHBlbiBkZXMKU3BpZWdlbHNsdXN0dHVybXMgbGFuZGV0ZSB1bmQgcHJvbXB0IHZvbSBNYXJidXJnLVZpcnVzIGJlZmFsbGVuIHd1cmRlLCBkZXIKZWtlbGhhZnRlIFd1Y2hlcnVuZ2VuIHZlcnVyc2FjaHQuCgpXdXRlbnRicmFubnQgd2FyZiBkZXIgR3Jvc3NvcmdhbmlzYXRvciBlaW5lbiBQaWxncmltc3RlaW4gbmFjaCBkZW0gVGVhbWxlYWRlcgp1bmQgc2NocmllOiAiU2llIFNwYXJzY2h3ZWluLCBTaWUga29lbm5lbiBqYSBuaWNodCBtYWwgUmhpbm9sb2dpZSB2b24KVGF1dG9sb2dpZSB1bnRlcnNjaGVpZGVuIiwgd2FzIGRlciBUZWFtbGVhZGVyIG5pY2h0IGF1ZiBzaWNoIHNpdHplbiBsaWVzcyB1bmQKbWl0IHNlaW5lbSBHcm9zc3N0YXViYWJzYWdnZWJsYWVzZSBlaW5lbiBKdWNrZXIsIGVpbmVuIERhZW1vbiBhdXMKV3VyemVsYnVlcnN0ZW4gdW5kIEZsYW5lbGxsYWVwcGNoZW4gLCBhdWYgZGVuIEdyb3Nzb3JnYW5pc2F0b3Igc2NobGV1ZGVydGUsCmRlciBtaXQgZGVtIEthbXBmc2NocmVpICJKYWxvcHBlISIgc2VpbiBPcGZlciB6dSBUb2RlIGp1Y2t0ZS4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKW1RlYW06IEJsdWVtY2hlbnBmbHVlY2tlcl0gKFBpZXJjZSwgMTYuIE1hciAxOTk5LCAxMjowMDozNSk6Ck5pY2h0IG9obmUgbWVpbmUgU2NobmVlZnJhZXNlCgpFaW5lcyBUYWdlcyBiZWthbSBkaWUgU2NobmVlZnJhZXNlIHZvbiBpaHJlbSBGdXNzZmVsbGZyaXNldXIgZGVuIEF1ZnRyYWcsCmVpbmVuIExvY2tlbndpY2tsZXIgdm9tIFNjaGxhYmJlcm11cmtzIGF1cyBkZXIgU2NocmVja2Vuc3NwaXR6ZSB6dSBob2xlbiwgYWJlcgppbSBKYWxvcHBlLgoKRGEgZGVyIFRlYW1sZWFkZXIgc2llIHNvIHN0YXJrIGFiZ2V3ZXJ0ZXQgaGF0dGUsIHZlcmxvciBzaWUgenV2aWVsIE1hbmEgdW5kCm11c3N0ZSBpbSBuYWVjaHN0Z2VsZWdlbmVuIEdlcmFldGVzY2h1cHBlbiBZLUNocm9tb3NvbWVuIHRhbmtlbi4KCkRhYmVpIGluZml6aWVydGUgc2llIHNpY2ggbGVpZGVyIG1pdCBkZW0gTWFyYnVyZy1WaXJ1cywgZGVyIHN0YXJrZSBXdWNoZXJ1bmdlbgpoZXJ2b3JyaWVmLiAKClVuZ2VhY2h0ZXQgZGVzc2VuIHNjaGxlcHB0ZSBzaWUgc2ljaCBqdWNrZXJudCAtIGFlaCBqdWNrZW5kLCB6dW0KU2NobGFiYmVybXVya3MuCgpEb2NoIGxlaWRlciBoYXR0ZSBkZXIgZGllIExvY2tlbndpY2tsZXIgYW4gZGVuIFlldGkgdmVyYm9yZ3QsIGRlciBVcmxhdWIgYW0KTWVlciBtYWNodGUuCgpUcm90eiBXYXJudW5nIHZvciBwbHVlbmRlcm5kZW4gVHJvZ2xvZHl0ZW4sIGJlZ2FiIHNpZSBzaWNoIHNjaG51cnN0cmFja3MKZG9ydGhpbi4KCkRvcnQgYW5nZWtvbW1lbiBiZWthbSBzaWUgdm9tIE1vbmRrYWxiIGVpbiBXZWdlLVNrcmlwdCB6dW0gU3RyYW5ka29yYiBkZXMKWWV0aS4KCkRvY2ggYmV2b3IgZGVyIFlldGkgZGVuIExvY2tlbndpY2tsZXIgcmF1c3J1ZWNrdGUgendhbmcgZXIgc2llLCBpaHIKU3BhcnNjaHdlaW4genUgc2NobGFjaHRlbiwgdW0gaWhtIG5vY2ggZWluZW4gUGlsZ3JpbXN0ZWluIGZ1ZXIgc2VpbmUgU2FtbWx1bmcKenUga2F1ZmVuLgoKVW0gZGllIFN0b3J5IGFienVrdWVyemVuLCB0cmFuc3RlIGRlciBHcm9zc29yZ2FuaXNhdG9yIHNpZSBpbGxlZ2FsZXJ3ZWlzZSBtaXQKc2VpbmVtIEdyb3Nzc3RhdWJhYnNhdWdnZWJsYWVzZSBkaXJla3QgenVtIEJhdWVybmhvZi4KClVtIHdlaXRlcmUgYm9lc2UgVWViZXJyYXNjaHVuZ2VuIHp1IHZlcmh1ZXRlbiwgc2V0enRlIHNpZSBlcnN0IGVpbm1hbCBpaHJlClJ1ZXN0dW5nc3NwaXJhbGUgZWluLiAKClZvcnNpY2h0aWcgbWFjaHRlIHNpZSBzaWNoIGF1ZiBkZW4gUnVlY2t3ZWcgdW5kIHBmbHVlY2t0ZSBmdWVyIGlocmVuIEZyZXVuZApYZXJ4ZXMsIGRlbiBTY2huZWVoYXNlbiwgbm9jaCBlaW4gcGFhciBGcnVlY2h0ZSBhdXMgZGVyIEVyZGJlZXJwbGFudGFnZS4KCkRhYmVpIGhhbGYgaWhyIGlocmUgU2Nod2VzdGVyIEFuYSBDaHJvbmlzbXVzLgoKRGllIGlzdCB2aWVsbGVpY2h0IGVpbiBsZWdnZXIgWnVnZ2Vyc2NobmVnZ3NjaGUuCgpVbmQgd2VubiBzaWUgbmljaHQgZ2VzdG9yYmVuIHNpbmQsIGRhbm4gaG9sZW4gd2lyIGRhcyBnbGVpY2ggbmFjaC4KClVtIGVpbmVuIDE1LiBTYXR6IHp1IHNjaHJlaWJlbiwgZnJhZ2VuIHdpcjogIkdpYnQgZGVyIERpcHNvbWFuZSBTdHVwc2U/IgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCltUZWFtOiBCdWcgLSBrZWluIFRlYW1dIChQaWVyY2UsIDE2LiBNYXIgMTk5OSwgMTI6MDg6MjYpOgoKRGFzIFRlYW0gIkJ1ZyAtIGtlaW4gVGVhbSIgd2FlaGx0ZSBzaWNoIGFscyBUZWFtbGVhZGVyIGVpbiBadWdnZXJzY2huZWdnc2NoZSwKZGFzIHNpY2ggaW4gZGVyIEthdWZoYXVza2FudGluZSBtaXQgZWluZXIgU3Vlc3NzdG9mZnRhYmxldHRlIGdlc3RhZXJrdCBoYXR0ZS4KClVtIGRlciBnZWZhZWhybGljaGVuIE1hcmJ1cmdlciBTY2huZWVmcmFlc2UgbmljaHQgenUgYmVnZWduZW4sIHZlcm1pZWRlbiB3aXIKZGVuIFBpbGdyaW1zdGVpbiB1bmQgZGVuIFNwaWVnZWxzbHVzdHR1cm0gdW5kIHN1Y2h0ZW4gc3RhdHRkZXNzZW4gaW0gQmF1ZXJuaG9mCmF1IGRlciBFcmRiZWVycGxhbnRhZ2UgbmFjaCBlaW5lciBXdXJ6ZWxidWVyc3RlLCBkaWUgdW5zIG5hY2ggZGVtIEFid2VydGVuIGRlcgpSdWVzdHVuZ3NzcGlyYWxlIGFscyBlaW56aWcgbm9jaCBnZWVpZ25ldGUgV2FmZmUgZ2VnZW4gZGVuIGdlZnVlcmNodGV0ZW4KYW5zdGVja2VuZGVuIEp1Y2tlciBlcnNjaGllbi4KCkxlaWRlciBmYW5kZW4gd2lyIGluIFhlcnhlcyBTdHJhbmRrb3JiIG51ciBlaW4gbGlsYSBGbGFuZWxsbGFlcHBjaGVuLCB3ZXNoYWxiCndpciBkZW0gR3Jvc3NvcmdhbmlzYXRvciwgZGllc2VtIERpcHNvbWFuZW4sIGZ1ZXIgZGVuIFNjaGxhYmJlcm11cmtzLCBkZW4gZXIKYW5kYXVlcm5kIGZhYnJpemllcnQsIGRpZSBJbnF1aXNpdGlvbiBhbiBkZW4gSGFscyB3dWVuc2NodGVuIHVuZCBpaG4gaW4gZWluCk1vbmRrYWxiIHZlcndhbmRlbHRlbi4KCldpciBmdWVsbHRlbiB1bnNlciBTcGFyc2Nod2VpbiwgaW5kZW0gd2lyIGRlbiBHcm9zc29yZ2FuaXNhdG9yIGFscwpGdXNzZmVsbGZyaXNldXIgYW4gZWluZW4gWWV0aSB2ZXJtaWV0ZXRlbiwgd296dSB3aXIgaWhuIG1pdCBkZW4gbm9ldGlnZW4KTG9ja2Vud2lja2xlcm4gaW4gZWluZW4gR2VyYWV0ZXNjaHVwcGVuIHNwZXJydGVuLgoKRGllIE5hc2UgZGVzIEdyb3Nzb3JnYW5pc2F0b3JzLCBkaWUgYmVydWVjaHRpZ3RlIFNjaHJlY2tlbnNzcGl0eiwgZGllIGRpZQpSaGlub2xvZ2llIGF1ZiBHcnVuZCBpaHJlciBXdWNoZXJ1bmdlbiBzY2hvbiBzZWl0IEphaHJlbiBiZXNjaGFlZnRpZ3QgaGF0dGVuCndpciBuYXR1ZXJsaWNoIG1pdCBlaW5lbSBHcm9zc3N0YXViYWJzYXVnZ2VibGFlc2Ugdm9tIE1hcmJ1cmctVmlydXMgYmVmcmVpdC4KCkVyc2Nob2VwZnQgc2V0enRlbiB3aXIgdW5zIG1pdCBkZW0gZ2FuemVuIFRlYW0gYXVmIGRpZSBUZWRkeWJhZXJzY2hhdWtlbCB1bmQKaWRlbHRlbiB6dSBkZW4gaGVpc3NlbiBMb2dhcml0aG1lbiB1bnNlcmVyIFktQ2hyb21vc29tZW4gdW5zZXJlIE1hbmEtUG9pbnRzCndpZWRlciBob2NoLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCltUZWFtOiBIZWxpeF0gKFBpZXJjZSwgMTYuIE1hciAxOTk5LCAxMjoxNzozMik6CgpNaXR0ZW4gaW0gRnJ1ZWhsaW5nLCBhbHMgZGllIFNjaG5lZWZyYWVzZSBzY2hvbiBsYW5nZSBuaWNodCBtZWhyIGltIEVpbnNhdHoKd2FyIHVuZCBhdWYgZGVtIEJhdWVybmhvZiwgaW4gZGVyIE5hZWhlIGRlciBFcmRiZWVycGxhbnRhZ2Ugc3RhbmQsIGVudHNjaGxvc3MKc2ljaCBkZXIgR3Jvc3NvcmdhbmlzYXRvciBpbSBOYW1lbiBkZXMgWWV0aSBkYXp1LCBlaW5lIFp1c2FtbWVua3VuZnQKZWluenViZXJ1ZmVuLgoKQWxzIE9ydCB3YWVobHRlIGVyIGhpZXJ6dSBkaWUgU2NocmVja2Vuc3NwaXR6ZSBnbGVpY2ggbmViZW4gZGVtClNjaGxhYmJlcm11cmtzLCBkZXIgdWVicmlnZW5zIGdlcmFkZSBpbiBzZWluZXIgVGVkZHliYWVyc2NoYXVrZWwgc2FzcyB1bnMKc2VpbmUgTG9ja2Vud2lja2xlciB2b20gRnVzc2ZlbGxmcmlzZXVyIHJpY2h0ZW4gbGllc3MsIGFiZXIgZGFtaXQgd2FyIGRpZQpzcGFuaXNjaGUgSW5xdWlzaXRpb24sIGFuZ2VmdWVocnQgdm9uIFhlcnhlcyB1bmQgZWluZW0gTW9uZGthbGIgbmF0dWVybGljaApuaWNodCBlaW52ZXJzdGFuZGVuLCB3ZXNoYWxiIGRlciBUZWFtbGVhZGVyIHNpZSBpbiBkZW4gU3RybmtvcmIgdmVybGVndGUsIGluCmRlbSB6dSBhbGxlbSBVZWJlcmZsdXNzIGdlcmFkZSBkYXMgTWFyYnVyZy1WaXJ1cyBhdXNnZWhlbmQgdm9uIGRlcgpLYXVmaGF1c2thbnRpbmUgc2VpbmUgV3VjaGVydW5nIGluIFJpY2h0dW5nIFNwaWVnZWxzbHVzdHR1cm0gZm9ydHNldHp0ZS4KCkVyc3RlcyBPcGZlciBkZXMgSnVja2VyLXZlcmJyZWl0ZW5kZW4gWS1DaHJvbW9zb21zIHdhciBkYXMgU3BhcnNjaHdlaW4sIGluIGRhcwppcmdlbmRqZW1hbmQgZWluZSBTdWVzc3N0b2ZmdGFibGV0dGUgZ2VzdGVja3QgaGF0dGUsIHdvcmF1ZiBlcyBzaWNoIGZvcnQgYW4KYWxzICJadWdnZXJzY2huZWdnc2NoZSIgZnVlaGx0ZSwgbGVpZGVyIGplZG9jaCBrdXJ6IGRhcmF1ZiBpbiBlaW5lbQpHZXJhZXRlc2NodXBwZW4gdmVyc3RhcmIgdW5kIHp1IEFzY2hlIHZlcmJyYW5udCBkdXJjaCBlaW4KR3Jvc3NzdGF1YmFic2F1Z2dlYmxhZXNlIGF1ZiBkZW4gUGlsZ3JpbXN0ZWluIGhpbmF1c2dlcHVzdGV0IHd1cmRlLgoKRGVyIGRvcnRpZ2UgSGF1c21laXN0ZXIsIGdlc2NodWV0enQgZHVyY2ggZWluIEZsYW5lbGxsYWVwcGNoZW4sIGZvcmRlcnRlCnZlaGVtZW50IGRhcyBBYndlcnRlbiBkZXIgUnVlc3R1bmdzc3BpcmFsZSBhdWYgZWluIGtsZWluc3RlcyBNaW5pbXVtCihsZXR6dGVyZXMgYmV6ZWljaG5ldCBtYW4gdWVicmlnZW5zIGFscyBUYXV0b2xvZ2llKSwgdW5kIGZ1bmRpZXJ0ZSBkaWUgbWl0CnNlaW5lbSBpbW1lbnNlbiBNYW5hLVdlcnQgdW5kIGVsbGVubGFuZ2VuIExvZ2FyaXRobWVuLgoKRGEgZGVyIEFuYWNocm9uaXNtdXMgaW4gZGllc2VtIFRleHQgbmljaHQgYXVmZ2V0YXVjaHQgaXN0LCB2ZXJ6b2cgZXIgc2ljaAptaXRzYW10IGRlciBSaGlub2xvZ2llIGluIGRpZSBTY2htb2xsZWNrZSB6dXIgSmFsb3BwZWUsIHdvIHNpZSBzaWNoCmdlZ2Vuc2VpdGlnIG1pdCBlaW5lciBXdXJ6ZWxidWVyc3RlIGJlYXJiZWl0ZXRlbiB1bmQgYWxzIERpcHNvbWFuZSB1bmQKVHJvZ2xvZHl0IGJlc2NoaW1wZnRlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpbVGVhbTogUGVyc2lsYWNodHp3dXJrZV0gKFBpZXJjZSwgMTYuIE1hciAxOTk5LCAxMjozMDowMik6CgpOYWNoZGVtIHVucyBkZXIgR3Jvc3NvcmdhbmlzYXRvciBhdWZnZWZvcmRlcnQgaGF0dGUsIFRlYW1zIHp1IGJpbGRlbiB1bmQgZWluZW4KVGVhbWxlYWRlciB6dSB3YWVobGVuLCBnaW5nZW4gd2lyIGluIGVpbmUgUXVlc3QuCgpXaXIgZ2luZ2VuIHdlZGVyIGluIGRpZSBFcmRiZWVycGxhbnRhZ2UsIG5vY2ggaW4gZGVuIFN0cmFuZGtvcmIsIHNvbmRlcm4gZHVyY2gKTWFyYnVyZywgYWxsZXJkaW5ncyBvaG5lIHVucyB2b20gTWFyYnVyZy1WaXJ1cyBpbmZpemllcmVuIHp1IGxhc3Nlbi4KClVudGVyd2VncyBzcHJhY2hlbiB3aXIgdWViZXIgZGllIFJ1ZXN0dW5nc3NwaXJhbGUgdW5kIGRpZSBBYndlcnR1bmdlbiB1bmQgZGFzcwpkaWUgU2NocmVja2Vuc3NwaXR6ZSBiYWxkIGF1Y2ggbmljaHQgbWVociBnZWZhZWhybGljaGVyIGlzdCwgYWxzIGRlcgpCYXVlcm5ob2YuCgpBdWNoIGRpZSBTY2huZWVmcmFlc2UgaXN0IGJhbGQgc28gaGFybWxvcywgd2llIGVpbmUgbWl0IGxpbGEgRmxhbmVsbGxhZXBwY2hlbgp1bmQgTG9ja2Vud2lja2xlcm4gYmV3YWZmbmV0ZSBXdXJ6ZWxidWVyc3RlIGluIGVpbmVyIFRlZGR5YmFlcnNjaGF1a2VsLgoKQXVjaCBrYW5uIGVpbiBZZXRpIGRhbm4gYmFsZCBpbiBlaW5lciBLYXVmaGF1c2thbnRpbmUgbWl0IGVpbmVyIGR1cmNoClktQ2hyb21vc29tZW5kZWZla3QgdmVydXJzYWNodGVuIFd1Y2hlcnVuZyBhbHMgWnVnZ2Vyc2NobmVnZ3NjaGUgZHVyY2hnZWhlbi4KClNjaGxpZXNzbGljaCBrb256ZW50cmllcnRlbiB3aXIgdW5zIHdpZWRlciBhdWYgZGllIFF1ZXN0IHVuZCBlbnRkZWNrdGVuIGluCmVpbmVtIEdlcmFldGVzY2h1cHBlbiBlaW5lbiBGdXNzZmVsbGZyaXNldXIsIGRlciBhdWNoIHNvIGdlZmFlaHJsaWNoZQpGZWxsa3JhbmtoZWl0ZW4gd2llIEp1Y2tlciB1bmQgUGlsZ3JpbXN0ZWluIGJlaGFuZGVsdGUuCgpVbnNlciBIb2JiaXQgd2FyIG5hY2ggZWluZXIgQmVoYW5kbHVuZyBtaXQgZGVtIEdyb3Nzc3RhdWJhYnNhdWdnZWJsYWVzZSBlcnN0CmRhbm4gYmVyZWl0IHdlaXRlcnp1Z2VoZW4sIGFscyB3aXIgaWhtIHZvbiBkZW0gTG9rYWwgJ1NwYXJzY2h3ZWluJyBlcnphZWhsdGVuLAppbiBkZW0gZXMgYmVzdGVzIE1hbmEgZ2FlYmUuCgpFcyBnZWxhbmcgdW5zIGltIHdlaXRlcmVuIFZlcmxhdWYgZGVyIFF1ZXN0IGRhcyBNb25ka2FsYiBhdXMgZGVyIElucXVpc2l0aW9uCmRlcyBTY2hsYWJiZXJtdXJrcyB6dSBiZWZyZWllbiwgZGVyIGVzIGRlciBSaGlub2xvZ2llLCBkZXIgVGF1dG9sb2dpZSB1bmQgZGVyCkRpcHNvbWFuaWUgYmVzY2h1bGRpZ3RlIHVuZCBtaXQgU3Vlc3NzdG9mZnRhYmxldHRlbiB1bmQgTG9nYXJpdGhtZW4gZm9sdGVybgp3b2xsdGUuCgpXaXIgc2NoYWZmdGVuIGRpZSA/Pz8gKGtvbm50ZSBkYXMgV29ydCBuaWNodCBsZXNlbiBBbm0gcGllcmNlKSBkZXMgVHJvZ2xvZHl0ZW4KbWl0IGRlciBKYWxvcHBlIGluIGRlbiBTcGllZ2Vsc2x1c3R0dXJtLgoKRGVyIGdyb3NzZSBHb3R0IFhlcnhlcyBzYWggYWxsIGRpZXMgbWl0IFdvaGxnZWZhbGxlbiB1bmQgZnVlaHJ0ZSB1bnMKUGVyc2lsYWNodHp3dXJrZW4gZHVyY2ggZWluZSBBbmFjaHJvbmlzbXVzIHdpZWRlciBhbiB1bnNlcmVuIFN0YXJ0cHVua3QuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKW1RlYW06IFRlcnJvcnJlbnRuZXJdIChQaWVyY2UsIDE2LiBNYXIgMTk5OSwgMTI6NDQ6NDcpOgoKV2llIGVzIGplZGVzIGhhbGJlIEphaHIgc28gdm9ya29tbXQgd3VyZGVuIGF1Y2ggaW4gZGllc2VtIGVpbiBIYXVmZW4gdm9uCld1ZXJzdGVuIHZvbiBlaW5lbSBzZWx0c2FtZW4gRmllYmVyIGVyZ3JpZmZmZW4uCgpFaW4gc2ljaCBhbHMgR3Jvc3NvcmdhbmlzYXRvciBiZXplaWNobmVuZGVzIE1vbmRrYWxiIGdhYiBrdXJ6IGRhcmF1ZiBiZWthbm50LAp1ZWJlciBTdWVzc3N0b2ZmdGFibGV0dGVuIGFsbGVzYW10IG1pdCBlaW5lciBBYmFydCBkZXMgTWFyYnVyZy1WaXJ1cyBpbmZpemllcnQKenUgaGFiZW4sIGRlcmVuIEF1c3dpcmt1bmdlbiBkYXMgR2VoaXJuIHN0YXJrIGJlZWludHJhZWNodGlndC4KCkVpbmUgSGVpbHVuZyBnYWViZSBlcyBudXIgYmVpIGRlciBEaXBzb21hbmUgaW4gZGVyIFN0YWR0IE1hcmJ1cmcuCgpXaXIgbG9zdGVuIGVpbmVuIFRlYW1sZWFkZXIgaW4gZWluZW0gU3BhcnNjaHdlaW4gYXVzLgoKQXVzIGFlc3RoZXRpc2NoZW4gR3J1ZW5kZW4gZ2V3YW5uIGVpbiBob2JiaXRpc2NoZXIgRnVzc2ZlbGxmcmlzZXVyLgoKRnJpc2NoIGR1cmNoIGlobiBtaXQgTG9ja2Vud2lja2xlcm4gYXVzZ2VzdGF0dGV0IHVuZCBkdXJjaCBlaW5lIFd1cnplbGJ1ZXJzdGUKZ2xhdHRnZWthZW1tdCwgYmVzdGllZ2VuIHdpciBkaWUgU2NobmVlZnJhZXNlLgoKV2lyIGZ1aHJlbiBhbHNvIGxvcyB1bmQga2FtZW4gRGFuayBlaW5lciBXdWNoZXJ1bmcgYW0gR2FzZnVzcyBkZXMgVGVhbWxlYWRlcnMKYXVjaCBzY2huZWxsIHZvcmFuLgoKS3VyeiB2b3IgZGVtIFppZWwgdWViZXJyb2xsdGVuIHdpciBub2NoIGVpbiBwYWFyIEJhdWVybmhvZWZlLCBhYmVyIGR1cmNoIGRpZQpBbndlc2VuaGVpdCBlaW5lcyBsb2dhcml0aG1pZXJlbmRlbiBNYWdpZXJzIHdhciBkYXMgbmljaHQgc28gc2NobGltbS4KCkRlcyBTY2hyZWNrZW5zIFNwaXR6ZSBlcndhcnRldGUgdW5zIGJlcmVpdHM6IEVpbiBUcm9nbG9keXQgd29sbHRlIHVuc2VyZQpTY2huZWVmcmFlc2Ugd2VnZW4gaWxsZWdhbGVyIE1heGltYWx3ZXJ0ZSBhYndlcnRlbiEKCldpciBkaXNrdXRpZXJ0ZW4gaGFydCB1ZWJlciBkaWUgc2ljaCBlbnR3aWNrZWxuZGUgUnVlc3R1bmdzc3BpcmFsZSwga29ubnRlbgphYmVyIG5pZW1hbmRlbiB2b24gdW5zZXJlbSBTdGFuZHB1bmt0OiAiRGllIEdlZGFua2VuIHNpbmQgZnJlaSB1bmQgZGllIFdvcnQKYXVjaCIgdWViZXJ6ZXVnZW4uCgpCZXNjaGltcGZ1bmdlbiB3aWUgV2VpY2hlaWVyLCBTY2hhdHRlbnBhcmtlciB1bmQgc29nYXIgRmxhbmVsbGFlcHBjaGVuIG11c3N0ZW4Kd2lyIHVucyBhbmhvZXJlbi4KCk51biwgd2lyIGhhYmVuIGVzIHVlYmVybGVidC4KClp1ciBTdHJhZmUgYWJlciB3dXJkZW4gd2lyIHp1IGVpbmVyIFJMLVF1ZXN0IHZlcmRvbm5lcnQsIGRpZSBlaW5tYWwgcnVuZCB1bQpkZW4gUGlsZ3JpbXN0ZWluIGZ1ZWhydGUuCgpRdWVyIHVlYmVyIGRpZSBFcmRiZWVycGxhbnRhZ2UgZnVlcmh0ZW4gdW5zIHdpcnJlIEhpbndlaXNlLCBkdXJjaCBkZW4KR2VyYWV0ZXNjaHVwcGVuIGJpcyBoaW4genVtIFNwaWVnZWxzbHVzdHR1cm0uCgpEb3J0IGdpbmdlbiB3aXIgdW5zZXJlcyBMZWFkZXJzIGFuIGVpbmVtIFlldGkgdmVybG9yZW4gdW5kIGVyc2V0enRlbiBpaG4gZHVyY2gKZGVuIHZvcmJlaWtvbW1lbmRlbiBTY2hsYWJiZXJtdXJrcy4KCkRpZXNlciBoYXR0ZSBzbyBzZWluZSBnYW56IGVpZ2VuZW4gVm9yc3RlbGx1bmdlbiB2b24gR2VtdWV0bGljaGtlaXQuCgpXaXIgZHVyZnRlbiBpbiBlaW5lciBLYXVmaGF1c2thbnRpbmUgZWlua2VocmVuLCB3byB3aXIgbWl0IFp1Z2dlcnNjaG5lZ2dzY2hlCnZvbiBlYmVuc2VsYmVyIGJlZGllbnQgd3VyZGVuLgoKUGxvZXR6bGljaCBlcndhY2h0ZSBpY2ggaW4gbWVpbmVtIFN0cmFuZGtvcmIgaW4gZGVyIE5hZWhlIFBvcnQgVmFpbnMuCgpFaW4gcGFhciB0b3RhbCBJcnJlIHNhc3NlbiB1bSBtaWNoIGhlcnVtIHVuZCBkaWt0aWVydGVuIG1pciB3aXJyZSBTYWV0emUgaW4KZGllIEZlZGVyLgoKRWluZXIgd29sbHRlIHNvZ2FyLCBkYXNzIGljaCAnR3Jvc3NzdGF1YmFic2F1Z2dlYmxhZXNlJyBpbiBkZXIgR2VzY2hpY2h0ZQp1bnRlcmJyaW5nZSwgYWJlciBpY2ggd2VpZ2VydGUgbWljaCBzdGFuZGhhZnQuCgpNZWluIEZheml0OiBNdWRkZXIgc2luZCB2b2VsbGlnIHZlcmJsb2VkZXQuCgpBYmVyIGRhcyBpc3QgYmVrYW5udGVybWFzc2VuIGVpbmUgVGF1dG9sb2dpZS4KCk51biB1ZWJlcmxhc3NlIGljaCBkYXMgV29ydCBlaW5lbSBwaGFudGFzaWV2b2xsZXJlbSBTY2hyZWliZXJrbmVjaHQuCgpMYXNzIE1hbmEgZmxpZXNzZW4sIE9oIEZydWNodC4KClNvIGthbSBlcywgZGFzcyBZLUNocm9tb3NvbWVuIGdlc3RvZXJ0ZSBJbnF1aXNpdG9yZW4gaW4gZWluZXIKVGVkZHliYWVyc2NoYXVrZWwgc2Fzc2VuIHVuZCB1ZWJlciBYZXJ4ZXMgdW5kIEp1Y2tlciBkYWhlcnJlZGV0ZW4uCgpVbmQgd2VubiBzaWUgbmljaHQgZ2VzdG9yYmVuIHNpbmQsIGRhbm4gcmVkZW4gc2llIGpldHp0IG1hbCB1ZWJlcgpBbmFjaHJvbmlzbWVuLCBKYWxvcHBlIHVuZCBSaGlub2xvZ2llLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFjaCBqYSAoUGllcmNlLCAxNi4gTWFyIDE5OTksIDEyOjUxOjU1KToKCkRhIGVpbmlnZSBnZWZyYWd0IGhhdHRlbiB1bmQgaWNoIG5hdHVlcmxpY2ggZGVuIFpldHRlbCBtaXQgZGVuIEVya2xhZXJ1bmdlbiB6dQpIYXVzZSBoYWJlIGxpZWdlbiBsYXNzZW4sIGdlYmUgaWNoIG1hbCBkaWUgQmVkZXV0dW5nZW4gdm9uIGRlbiBlaW56ZWxuZW4KRnJlbWR3b3J0ZW4gcHJlaXMuIChadW1pbmRlc3Qgdm9uIGRlbmVuLCBkaWUgaWNoIG5vY2ggd2Vpc3MuLi4pCgpKYWxvcHBlOiBpcmdlbmRzb2VpbmUgUGZsYW56ZSAod2VsY2hlIHN0ZWh0IGF1ZiBvYmVuIGVyd2FlaG50ZW0gWmV0dGVsKQoKSnVja2VyOiBrbGVpbmVzIGxlaWNodGVzIFdhZ2VucGZlcmQKCkRpcHNvbWFuZTogUXVhcnRhbHNhZXVmZXIKClJoaW5vbG9naWU6IE5hc2Vua3VuZGUKClBpbGdyaW1zdGVpbjogRWluIFN0cmFzc2VubmFtZSBpbiBNYXJidXJnCgpUcm9nbG9keXQ6IEhvZWhsZW5iZXdvaG5lciBvZGVyIEhvZWhsZW5tZW5zY2gKClRhdXRvbG9naWU6IHdlaXNzIGljaCBuaWNodCwgZnJhZ3QgSGlwcGUgLCkKCkRlciBSZXN0IHNvbGx0ZSBlaWdlbnRsaWNoIGJla2FubnQgc2Vpbi4uCgp0c2NoYXUgQXReSF5IUGllcmNlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VubiBkZXIgZWluZSB1ZWJlciBUZWxlZm9uIG5pY2h0IHdlaXNzLCB3YXMgZGVyIGFuZGVyZSB3aWxsIChKYXNvbnJpZ2lkLCAxNi4gTWFyIDE5OTksIDEzOjAyOjIxKToKfiMhIHJuPVNyYWJpIHJ0PTkyMTUyMDEwNCByZz1zY2htYXJybgp+IyEgdGlkPTkyMTUyMDEwNAoKV2FzIHdhciBkZW5uIGRhcmFuIHdpdHppZywgaWNoIHd1cmRlIHp3ZWltYWwgdm9tIEVzc2VuIGFiZ2VoYWx0ZW4gKmdyaW5zKgoKCkphc29uIGlzdCBmYXN0IHZlcmh1bmdlcnQgYW4gZGllc2VtIFdvY2hlbmVuZGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN0aW1tdCBqYSBnYXJuaWNodCEgOm8oIChNZW5hY2UsIDE2LiBNYXIgMTk5OSwgMTQ6MjM6MTEpOgphbGsgbWVuYWNlCkR1IGJhbGxlcnN0IE1lbmFjZSBlaW5lIExhZHVuZyBnZXJ1ZWhydGVzIFNjaHVldHRlbGJpZXIgdW0gZGllIE9ocmVuLgpEdSB2ZXJnaWZ0ZXN0IE1lbmFjZSBsZWljaHQuCgp1bnQgbWVuYWNlCkRhcyBpc3QgTWVuYWNlLiBFciBpc3QgcmVsYXRpdiBncm9zcywgd2VubiBhdWNoIG51ciBmdWVyIGVpbmVuIEhvYmJpdC4KLi4uCi4uLgpFciBpc3Qgc2Nob24gZXR3YXMgZ2VzY2h3YWVjaHQuCk5pY2h0cyBiZXNvbmRlcmVzIGlzdCBiZWRlY2t0IG1pdCBnaWZ0aWcgYXVzc2VoZW5kZW4gQmllcnNwcml0emVybi4KXl5eXl5eXl5eXl5eXl5eXl4KLi4uCgpNZW5hY2UgaXN0IFdPSEwgZXR3YXMgYmVzb25kZXJlcyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3YXMnbiBoaWVyIGxvcz8gKE1lbmFjZSwgMTYuIE1hciAxOTk5LCAxNDo0OTozNyk6Cn4jISBybj1BcmlhbmEgcnQ9OTIxNDU3NjU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIxNDU3NjU1Ck1lbmFjZSBoYXR0ZSBrZWluZW4gUmVjaG5lciB6dXIgVmVyZnVlZ3VuZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VtIHdpbmt0IGRlciB6dT8gKExlbmEsIDE2LiBNYXIgMTk5OSwgMTQ6NDk6MzgpOgpOZXJkYW5lbCB3aW5rdCBaaWxsdXMsIEFudGlEaXIgdW5kIERpciB6dS4gICAgIAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLiAoTGVuYSwgMTYuIE1hciAxOTk5LCAxNToxNjoyOCk6CkVpbiBGcm9zY2ggaHVlcGZ0IGhlcmVpbi4KTmluaml6enUgdGlwcGVsdCBoZXJlaW4uCkVpbiBGcm9zY2ggaHVlcGZ0IHBsb2V0emxpY2ggaG9jaCB1bmQgdmVyc2Nod2luZGV0IGltIE5pY2h0cy4KTmluaml6enUgdGlwcGVsdCBIZXhsZSBoaW50ZXJoZXIuICAgICAgICAgICAKCkFoIGphLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uIChMZW5hLCAxNi4gTWFyIDE5OTksIDE1OjU1OjE4KToKRHUgZ3JpbnN0Lgo+IERlciBJbnF1aXNpdG9yIGZhZWxsdCB0b3QgenUgQm9kZW4uICAgIAoKV2FzIG1hY2ggaWNoIGZhbHNjaD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBBbGlhc2UgKEdyaW1tYm9ybiwgMTYuIE1hciAxOTk5LCAxNjoyNDo0MSk6Cn4jISBvbj1ZZW5kaSBvdD05MjE2MDA2NTMgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVdpZGV3aXR0IHJ0PTkyMTU1NDU1MCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTkxOTk2MDAyMwpHcmltbWJvcm4hClNjaGllYiBkYXMgbWFsIG5hY2ggU2NobWFycm4sIGphPwoKWVRZCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEFsaWFzZSAoR3JpbW1ib3JuLCAxNi4gTWFyIDE5OTksIDE2OjI1OjUxKToKfiMhIHJuPUdyaW1tYm9ybiBydD05MjE2MDE0ODEgcmc9c2NobWFycm4KfiMhIHRpZD05MTk5NjAwMjMKZG9uZS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT3JnYW5pc2F0aW9uIChSb2NodXMsIDE2LiBNYXIgMTk5OSwgMTY6NDA6NDQpOgpBbmF0b2w6IFdvZnVlciBoYWJlIGljaCBlaWdlbnRsaWNoIDM1IERNIGJlemFobHQ/CktleTogSG1tbS4uLi4uIEFsc286IEZ1ZXIgZGFzIEVzc2VuIGRlciBhbmRlcmVuLCBmdWVyIGRhcyBCaWVyIGRlciBhbmRlcmVuLAogIGZ1ZXIgZGllIENvbGEgZGVyIGFuZGVyZW4sIGZ1ZXIgZGllIFNwcml0ZSBkZXIgYW5kZXJlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9yZ2FuaXNhdGlvbiAoQW5hdG9sLCAxNi4gTWFyIDE5OTksIDE4OjAxOjE4KToKfiMhIHJuPVJvY2h1cyBydD05MjE2MDI0NDQgcmc9c2NobWFycm4KfiMhIHRpZD05MjE2MDI0NDQKVHJhdXJpZyBhYmVyIHdhaHIuCgpBbmF0b2wgLSB6YWhsdCBkYXMgbmFlY2hzdGUgbWFsIG51ciBwZXIgVmVycmVjaG51bmdzY2hlcXVlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktGTFcgKFNjaG9rbywgMTYuIE1hciAxOTk5LCAxOTozMjowNik6CltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIEZsdXNzd2luZCB1bWdlYnJhY2h0LgpbQWJlbnRldWVyOkJpZXJiYXVlcl0gb2sgZGFua2UKR2FzdDEgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KW0JlaWxlaWQ6Wm9va10gb29wcy4uLgpbVHJ2ZXM6SGFmYXhdIGNpYW8gdHJ2ZXMKW0JlaWxlaWQ6S2V5XSBIbW1tIGljaCBtdXNzIG1laW5lIHRha3RpayBhZW5kZXJuIDspCltCZWlsZWlkOlNjaG9rb10gSkEhIDspCkhhZmF4IGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCltCZWlsZWlkOlRpbGx5XSBkdSBoYXN0IGVpbmU/IDopCltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIEtleSB1bWdlYnJhY2h0LgpbVG9kOlRvZF0gREFTIFdBUiBTQ0hPTiBEQVMgNDYxVEUgTUFMIQoKCk5hamEgS2V5cyB1ZWJsaWNoZSBUYWt0aWsgaGFsdCAuLi4gOykKCipncmlucyoKU2Nob2tvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYWVtb25lbiB1bmQgQ29tcHV0ZXIuLi4gKEJ5bmFuZHJlbCwgMTYuIE1hciAxOTk5LCAyMDozMTo0Mik6CltNb2VyZGVyOkdlaXN0IGVpbmVzIER1bmtlbGRhZW1vbnNdIExpbnV4IGhhdCBtaWNoIGVybW9yZGV0ISAgCltNb2VyZGVyOkdlaXN0IGVpbmVzIER1bmtlbGRhZW1vbnNdIERhcyB3YXIgZWluIGdlbWVpbmVyIFRpZWZzY2hsYWcsIExpbnV4IQoKQnluYW5kcmVsIC0gbWVpbnQsIGRhc3MgZGVyIERhZW1vbiBmcm9oIHNlaW4gc29sbHRlLApuaWNodCBhbiBXaW5kKioqcyBnZXJhdGVuIHp1IHNlaW4uLi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbm4gZGVyIER1cnN0IHN0YWVya2VyIGlzdCAoS2FyYW0sIDE2LiBNYXIgMTk5OSwgMjE6MDU6MDYpOgpIZXh4ZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkhleHhlciBrb21tdCBhbiBkaWUgVGhla2UuCkhleHhlciBzYWd0OiA8SGljaz4hCgotLQpLYXJhbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ldWVyIFN0YXJ3YXJzdHJhaWxlciAoQXNtb2RpcywgMTYuIE1hciAxOTk5LCAyMTozMjoyMik6Cn4jISBybj1BbmFraW4gcnQ9OTIxNTc4MTk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIxNTc4MTk3Ck9jaCBuZWUsIG5pY2h0IHNjaG9uIHdpZWRlciwgZGVyIFJ1bW1lbCB1bSBkaWVzZW4gdHJhaWxlciBuZXJ2dCEKSWNoIHdpbGwgZW5kbGljaCBkZW4gRmlsbSBzZWhlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2VubiBkZXIgZWluZSB1ZWJlciBUZWxlZm9uIG5pY2h0IHdlaXNzLCB3YXMgZGVyIGFuZGVyZSB3aWxsIChBcmlhbmEsIDE3LiBNYXIgMTk5OSwgMDI6MTc6NTMpOgp+IyEgcm49SmFzb25yaWdpZCBydD05MjE1ODkzNDEgcmc9c2NobWFycm4KfiMhIHRpZD05MjE1MjAxMDQKKnRyb2VzdGtudWRkZWwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBVUEsIGRhcyBtdXNzIGRvY2ggd2VoIHR1biAoTW9yZ290aCwgMTcuIE1hciAxOTk5LCAwOTowOTozMCk6CltLbGVydXM6TGVuYSBzdGFuZCBtYWwgd2llZGVyIGF1ZiBkZXIgZWlnZW5lbiBsZWl0dW5nLl0KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUZXJyb3IhIChHYXN0MSwgMTcuIE1hciAxOTk5LCAxMDozNTowNyk6CkVpbiBTYW5kdGlnZXIuCj4gRHUgYmlzdCBhbSBTdGFkdHRvciB2b24gUG9ydCBWYWluIGFuZ2Vrb21tZW4sIGRhcyB1bm1pdHRlbGJhciB2b3IgRGlyIGxpZWd0LgpJbgp3ZXN0bGljaGVyIFJpY2h0dW5nIGZ1ZWhydCBkaWUgUG9ydCBWYWluZXIgTGFuZHN0cmFzc2UgaW4gZGllIGdyb3NzZSwgd2VpdGUKV2VsdCBoaW5hdXMgdW5kIGluIG9lc3RsaWNoZXIgUmljaHR1bmcgenVtIGdyb3NzZW4gU3RhZHR6ZW50cnVtIGRlcgpIYWZlbnN0YWR0LgpVbm1pdHRlbGJhciBzdWVkbGljaCB2b24gRGlyLCBkaXJla3QgbmViZW4gZGVtIFN0YWR0dG9yIHNpZWhzdCBEdSBkaWUgcmllc2lnZQpQZm9ydGUgZWluZXMgbm9jaCByaWVzaWdlcmVuIFdldHRwYWxhc3RlcyB2b3IgRGlyIGF1ZnJhZ2VuLiBEdSBsZWdzdCBEZWluZW4KS29wZiBpbiBkZW4gTmFja2VuLCB1bSBpaG4gZ2FueiBiZXRyYWNodGVuIHp1IGtvZW5uZW4uIEVpbiBncm9zc2VzIFNjaGlsZApoYWVuZ3QgdWViZXIgZGVyIEVpbmdhbmdzcGZvcnRlLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiB1bmQgd2VzdGVuLgpMZW5hLgpMZW5hLgpMZW5hLgpCcm9kYXIgZGVyIFdpbnpsaW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWWVzICEgKE1vcmdvdGgsIDE3LiBNYXIgMTk5OSwgMTA6NDU6MDQpOgpQYWRyZWljIGJlc2Nod29lcnQgZWluZW4gQmxpdHogdm9tIEhpbW1lbC4KRGVyIFdhbmRsZXIgc2FndDogTGFzcyBkYXMsIER1IFd1cnN0bWFnaWVyIQoKTW9yZ290aCwgcm90ZmxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR01UQSAoTmV2b2ssIDE3LiBNYXIgMTk5OSwgMTg6MDg6MjcpOgpab29rIHNhZ3Q6IGFsbGVpbmUgbWl0IHNvbGNoZW4gbWFnaWVyZW4gd2llIC4uLiBuYSBqYS4uLiBzZXR6dCBlaW5lbiBuYW1lbgpab29rIHNhZ3Q6IGJlbGllYmlnZXIgd2FobCBlaW4uLi4KWm9vayBncmluc3QgV2ltIGFuLgpXaW0gc2FndDogem9vaz8gCkR1IHNhZ3N0OiB6b29rPwo+IFpvb2sgc2NocmVpdDogV2FhaGhoaCEKCgpmcmFnZSBuaWVtYWxzIG5hY2ggZXR3YXMgd2FzIER1IG5pY2h0IHVuYmVkaW5ndCBoYWJlbiBtb2VjaHRlc3QgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp3ZWl0aWVzLi4uIChaaW5vLCAxNy4gTWFyIDE5OTksIDE5OjMzOjExKToKUGF0cnluICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpQYWRyZWljICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpJbW1lciBkaWVzZXMgUGEqLVRlcnJvcnRlYW0uLi4KTWFoYXRtYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVmVyd2lycnVuZz8gKEFuYXRvbCwgMTcuIE1hciAxOTk5LCAyMDozNTo0NSk6CkRlaW4gRnJldW5kIFN0aW5nIHRlaWx0IERpciBtaXQ6IFNUSU5HCkRlaW4gRnJldW5kIFN0aW5nIHRlaWx0IERpciBtaXQ6IGFyZ2wKRGVpbiBGcmV1bmQgU3RpbmcgdGVpbHQgRGlyIG1pdDogU0hBUklBCgpKYT8gOikKQW5hdG9sIAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpbGx5IGZlaGx0ZSBub2NoIDopIChKYW1lc29uLCAxNy4gTWFyIDE5OTksIDIwOjM3OjA1KToKKHNwYWV0IGFiZXIgaW1tZXJoaW4gOykKCltBbGxnZW1laW46R3JpbU1hbl0gd2VyIHNpbmQgZGVuIGRpZSBnYW56ZW4gKmlsbHlzIGhpZXI/IDwxMzo1NzozNT4KW1RvZDpMYXJzXSBEZXIgQWJncnVuZCBoYXQgZ2VyYWRlIFJpbGx5IHVtZ2VicmFjaHQuIDwxMzo1Nzo0MT4KW0JlaWxlaWQ6R3JpbU1hbl0gb29vb29vb29vY2ggOigoKCA8MTM6NTc6NTE+CltCZWlsZWlkOkphbWVzb24gZ3JpbnN0IEdyaW1NYW4gYW4gPDEzOjU3OjU1Pl0KW0JlaWxlaWQ6TWlyamFtXSBobSBzY2hub2Vya2VsbG9zZSB0b2Rlc21lbGR1bmcgOykgYmVpbGVkIDwxMzo1ODowMz4KW0FsbGdlbWVpbjpHcmltTWFuXSBpcyBnYW56IHRvbGwscGxvZXR6bGljaCB0YXVjaGVuIGhpZXIgNSAqaWxseXMgYXVmCltBbGxnZW1laW46R3JpbU1hbl0gPDEzOjU4OjIzPgpbVG9kOkxhcnNdIERlciBBYmdydW5kIGhhdCBnZXJhZGUgSGlsbHkgdW1nZWJyYWNodC4gPDEzOjU4OjI1PgpbVG9kOkxhcnNdIERlciBBYmdydW5kIGhhdCBnZXJhZGUgRmlsbHkgdW1nZWJyYWNodC4gPDEzOjU4OjI1PgpbVG9kOkxhcnNdIERlciBBYmdydW5kIGhhdCBnZXJhZGUgWmlsbHkgdW1nZWJyYWNodC4gPDEzOjU4OjI1PgpbVG9kOkxhcnNdIERlciBBYmdydW5kIGhhdCBnZXJhZGUgR2lsbHkgdW1nZWJyYWNodC4gPDEzOjU4OjI1PgpbQmVpbGVpZDpKZW1hbmRdIHBydXN0IDwxMzo1ODozMz4KW0FsbGdlbWVpbjpHcmltTWFuXSBhYmVyIGVpbmVuIGhhdHMgZXJ3aXNjaHQgPDEzOjU4OjM1PgpbQmVpbGVpZDpEaWVkZXJdICp3YWVseiogPDEzOjU4OjM3PgpbQmVpbGVpZDpCZWxnYXJpYWRdICpCUlVFTExMTExMTExMTExMKiA8MTM6NTg6Mzk+CltCZWlsZWlkOkhyZWlkbWFyXSBGYW1pbGllbnN0ZXJiZW4/IDwxMzo1ODo0Nz4KW0JlaWxlaWQ6TWlyamFtXSArbGFjaCogPDEzOjU4OjQ3PgpbQmVpbGVpZDpKYW1lc29uXSBvayB3aWV2aWVsZSBMZXV0ZSBwb3N0ZW4gZGFzIG5hY2ggc2NobWFycm4/IDspIDwxMzo1ODo1Nz4KW0JlaWxlaWQ6SWxsbWF0aWNdIGJla29tbWVuIGRpZSBhbGxlIGRpZSBnbGVpY2hlIFRvZGVzc2VxdWVueiA/IDwxMzo1OToxMj4KW0JlaWxlaWQ6SmFtYWxza2ldIGhvZSBob2UgaG9lIDwxMzo1OTozND4KW0JlaWxlaWQ6R3JpbU1hbl0gb29vb29vb29vY2ggOigoKCBkdSB6dWVyc3ogamFtZXNvbiEgPDEzOjU5OjQwPgpbQmVpbGVpZDpKYW1lc29uXSAqZyogPDE0OjAwOjAzPgpbQmVpbGVpZDpSYXJkaWFuXSBkaWUgc2luZCB3b2hsIGltIHRlYW0gZ2VzdG9yYmVuIG9kZXI/IDwxNDowMDowOT4KW0JlaWxlaWQ6R3JpbU1hbl0gc28gc2llaHRzIGF1cyA8MTQ6MDE6MjE+CltCZWlsZWlkOkdyaW1NYW5dIGRhcyBuZW5udCBtYW4genVzYW1tZW5oYWx0IGluIGRlciBmYW1pbGllIDwxNDowMTozNT4KW0JlaWxlaWQ6VGFyaW5hXSBuYWphLCBkZXIgenVzYW1tZW5oYWx0IGZlaGx0IHVudGVuIGRhbm4gYWJlciBiZXN0aW1tdCA6LSkKW0JlaWxlaWQ6VGFyaW5hXSA8MTQ6MDE6NTk+CltCZWlsZWlkOlJhcmRpYW5dIHNpZSBiaWxkZW4gZG9ydCBkaWUgSWxseS1NYXNzZS4uLiA8MTQ6MDI6MTk+CltCZWlsZWlkOkdyaW1NYW5dIG5lZWUsaXMgZG9jaCBhbGxlcyBudXIgZWluIGJyZWkgPDE0OjAyOjE5PgpbVG9kOkxhcnNdIERlciBBYmdydW5kIGhhdCBnZXJhZGUgRWwgdW1nZWJyYWNodC4gPDE0OjAzOjQwPgpbQmVpbGVpZDpUYXJpbmFdIGlzdCBkYXMgYW5zdGVja2VuZD8gPDE0OjAzOjU2PgpbQmVpbGVpZDpKYW1hbHNraSBiZXdpcmJ0IHNpY2ggYmVpIFRvZCBmdWVyIG5lbiBKb2IuIDwxNDowNDowNj5dCltCZWlsZWlkOlRodWZoaXJdIFdhcnVtIGVpZ2VudGxpY2ggREVSIEFiZ3J1bmQ/Pz8gPDE0OjA0OjEyPgpbQmVpbGVpZDpSYXJkaWFuXSBEYXMgd2FyIGRhcyBMIHZvbiBJbGx5Li4uIDwxNDowNDoxND4KW0JlaWxlaWQ6SmFtYWxza2ldIGJvb21lbmRlIEJyYW5jaGUgPDE0OjA0OjI2PgpbVG9kOkxhcnNdIERlciBBYmdydW5kIGhhdCBnZXJhZGUgWm9vayB1bWdlYnJhY2h0LiA8MTQ6MDg6NDg+CltCZWlsZWlkOk1pcmphbV0gZ3JhdHMgPDE0OjA4OjU2PgpbQmVpbGVpZDpab29rXSBhaGphLi4gOikgPDE0OjA4OjU4PgpbQmVpbGVpZDpSYXJkaWFuXSBVbmQgd2llZGVyIGVpbmVyICEgPDE0OjA5OjAwPgpbQmVpbGVpZDpJbGxtYXRpY10gbnUgaXMgYWJlciBndXQsIGphID8hPyA8MTQ6MDk6MDA+CltCZWlsZWlkOlJhc3B1dGluXSBvaG9oLCBiZWlsZWlkIDooIDwxNDowOToxMD4KW0JlaWxlaWQ6VGh1Zmhpcl0gTWVsZHVuZ2VuIGZ1bmt0aW9uaWVyZW4uLi4ga2FubnN0IGpldHp0IGF1ZmhvZXJlbi4uLiAgOykKW0JlaWxlaWQ6VGh1Zmhpcl0gPDE0OjA5OjIyPgpbQmVpbGVpZDpJbGxtYXRpY10gbW9tZW50LCB3aWVzbyBrYW5uIGRlciBub2NoIHNwcmVjaGVuID8gPDE0OjA5OjMyPgo+IGZpbmdlciB6b29rClpvb2sgaXN0IGFud2VzZW5kLAouLi4KTWFnaWVybGV2ZWw6IDI1IChWb2xsbWFnaWVyKQpbQmVpbGVpZDpUYXJhZ29uXSBFcnN0ZSBUdWVyIHJlY2h0cywgbmljaHQgZHJhZW5nZWxuLCBqZWRlciBudXIgZWluIEtyZXV6LgpbQmVpbGVpZDpUYXJhZ29uXSA8MTQ6MDk6Mzg+CltCZWlsZWlkOlJhcmRpYW5dIE1hZ2llIGthbm4gYWxsZXMhIDwxNDowOTo0ND4KW0JlaWxlaWQ6Wm9vayBraWNoZXJ0LiA8MTQ6MDk6NTI+XQpbQmVpbGVpZDpSYXJkaWFuXSBJY2ggaGFiIEZyZWlzcHJ1Y2gsIFRhcmFnb24gPDE0OjEwOjAwPgouLi4KW0JlaWxlaWQ6SmFtZXNvbl0gc2VpZCBpaHIgamV0enQgZmVydGlnLCBkYSBhbSBBYmdydW5kPyA8MTQ6MTM6NTY+CltCZWlsZWlkOlpvb2tdIHdpbGxzdCBkdSBuaWNodCBhdWNoIG1hbCBqYW1lc29uPyBpcyBlY2h0IGx1c3RpZy4uLgo8MTQ6MTQ6MTA+CltCZWlsZWlkOkphbWVzb25dIGRhcyBlbnR3aWNrZWx0IHNpY2ggenVtIEVuZGxvc3RocmVhZCA6KSA8MTQ6MTQ6MzI+CltCZWlsZWlkOkdyaW1NYW5dIHdlciB3aWxsIGRlbiBhYmdydW5kIG1pdCBsZWljaGVuIHp1c3RvcGZlZm4/CjwxNDoxNDo0Nj4KW0JlaWxlaWQ6UmlsbHldIFNvbGxlbiB3aXIgbm9jaG1hbD8gPDE0OjE1OjEyPgpbQmVpbGVpZDpIaWxseV0gU29sbGVuIHdpciBub2NobWFsPyA8MTQ6MTU6MTI+CltCZWlsZWlkOkZpbGx5XSBTb2xsZW4gd2lyIG5vY2htYWw/IDwxNDoxNToxMj4KW0JlaWxlaWQ6SmFtZXNvbl0gYnJpbmd0IG5peCBHcmltLCBkaWUgdmVyd2VzZW4gc2NobmVsbGVyIGFscyBtYW4gbmFjaHN0ZXJiZW4KW0JlaWxlaWQ6SmFtZXNvbl0ga2FubiA8MTQ6MTU6MTI+CltCZWlsZWlkOlppbGx5XSBTb2xsZW4gd2lyIG5vY2htYWw/IDwxNDoxNToxMj4KW0JlaWxlaWQ6R2lsbHldIFNvbGxlbiB3aXIgbm9jaG1hbD8gPDE0OjE1OjEyPgpbQmVpbGVpZDpKYW1lc29uXSBrdWhsLiA8MTQ6MTU6Mjg+CltCZWlsZWlkOk1pcmphbV0gd2FzIGlzIG1pdCB0aWxseT8gPDE0OjE1OjM3PgpbQmVpbGVpZDpUaWxseV0gQWVobmxpY2hrZWl0ZW4gbWl0IGxlYmVuZGVuIFBlcnNvbmVuIHNpbmQgcmVpbiB6dWZhZWxsaWcKW0JlaWxlaWQ6VGlsbHldIDwxNDoxNTo0MT4KW0JlaWxlaWQ6R3JpbU1hbl0gYWJlciBkaWUgKmlsbHlzIHZlcnN1Y2hlbiBlcyBqYSEgPDE0OjE1OjQ1PgpbQmVpbGVpZDpSaWxseV0gSHVodSBCcnVlZGVyY2hlbiBUaWxseSEgPDE0OjE1OjU3PgpbQmVpbGVpZDpIaWxseV0gSHVodSBCcnVlZGVyY2hlbiBUaWxseSEgPDE0OjE1OjU3PgpbQmVpbGVpZDpGaWxseV0gSHVodSBCcnVlZGVyY2hlbiBUaWxseSEgPDE0OjE1OjU3PgpbQmVpbGVpZDpaaWxseV0gSHVodSBCcnVlZGVyY2hlbiBUaWxseSEgPDE0OjE1OjU3PgpbQmVpbGVpZDpHaWxseV0gSHVodSBCcnVlZGVyY2hlbiBUaWxseSEgPDE0OjE1OjU3PgpbQmVpbGVpZDpKYW1lc29uXSBqZXR6dCB3aXJkcyB6dSBraW5kaXNjaCwgZGFzIHBvc3QgaWNoIG5pY2h0IG1laHIgOikKW0JlaWxlaWQ6SmFtZXNvbl0gPDE0OjE2OjEzPgpbQmVpbGVpZDpUaHVmaGlyXSBNYXJidXJnIHNwZXJyZW4hIDspIDwxNDoxNjozMD4KW0JlaWxlaWQ6R3JpbU1hbl0gd2lyIGhhYmVuIG5lIGVpZ2VuZSBiYW5kIGltIE1HIDogZGllICpJTExZLUZBTUlMWSEhISEhIQpbQmVpbGVpZDpHcmltTWFuXSA8MTQ6MTY6MzY+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZXNwcmFlY2hlIHVtIDUgdWhyIG1vcmdlbnMuLiAoS2FyaWMsIDE4LiBNYXIgMTk5OSwgMDU6MDY6NTcpOgpOZXZvayB0ZWlsdCBEaXIgbWl0OiBobW1tbW1tbQpEdSB0ZWlsc3QgTmV2b2sgbWl0OiBobW0/ClF1aWNrIHRlaWx0IERpciBtaXQ6IGhtCgpobW0gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBnZXNwcmFlY2hlIHVtIDUgdWhyIG1vcmdlbnMuLiAoQ2FyYWRocmFzLCAxOC4gTWFyIDE5OTksIDExOjEwOjU1KToKfiMhIHJuPUthcmljIHJ0PTkyMTczMzYxNyByZz1zY2htYXJybgp+IyEgdGlkPTkyMTczMzYxNwpKZSBob2VoZXIgZGllIFppdmlsaXNhdGlvbnNzdHVmZSBpc3QsIGF1ZiBkZXIgbWFuIHN0ZWh0LCB1bXNvCndlbmlnZXIgV29ydGUgbXVzcyBtYW4gbWFjaGVuLCBkYSBkaWUgYW5kZXJlbiBkdXJjaCBpaHJlCmhvaGUgR3JlbnppbnRlbGxpZ2VueiAoZGFzIGlzdCBkZXIgR3JhZCBkZXMgS2FwaWVyZW5zIGJlaSBlaW5lbQp6dXNhZXR6bGljaGVuIGhtKSBzb2ZvcnQgd2lzc2VuLCB3YXMgZ2VtZWludCBpc3QuCgogICAgICAgICBCZXJnY2hlbiBDYXJhZGhyYXMgLSBnZXdhZ3RlIEh5cG90aGVzZW4gYXVmc3RlbGxlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYWVtb25lbiB1bmQgQ29tcHV0ZXIuLi4gKFNvbmdva3UsIDE4LiBNYXIgMTk5OSwgMTQ6MTU6NDEpOgp+IyEgcm49QnluYW5kcmVsIHJ0PTkyMTYxNjMwMiByZz1zY2htYXJybgp+IyEgdGlkPTkyMTYxNjMwMgpEZXIgRGFlbW9uIFdBUiBXKioqIDopClNheW9uYXJhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFp3ZWl0aWVzLi4uIChXb29keSwgMTguIE1hciAxOTk5LCAxNDozMjoyMyk6Cn4jISBybj1aaW5vIHJ0PTkyMTY5OTE5MSByZz1zY2htYXJybgp+IyEgdGlkPTkyMTY5OTE5MQp1bmQgZ3JhZCBlYmVuIHZvcmhpbjoKClBhZHJlaWMgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhClBhcmFjZWxzdXMgICBJIFMgVCAgIEogRSBUIFogVCAgIE0gRSBIIFIgICBEIEEgISEhCgpPaG5lIFdvcnRlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVyIHNvbGx0ZSBlcyB3aXNzZW4gOikgKEphc29ucmlnaWQsIDE4LiBNYXIgMTk5OSwgMTQ6Mzk6MzcpOgpbWlQ6R3JtYmx3bXBmXSA6LSkgVFlQTyBpcyduIFNjaHJlaWJmZWhsZXIgKHNpZWhlIGhpbGZlKQpuYSwgZXIgc29sbHRlIGVzIGVpZ2VudGxpY2ggd2lzc2VuIDopCgpKYXNvbiBncmluc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFp3ZWl0aWVzLi4uIChDYXR3ZWF6bGUsIDE4LiBNYXIgMTk5OSwgMTY6MTg6MzEpOgp+IyEgcm49V29vZHkgcnQ9OTIxNzY3NTQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIxNjk5MTkxCkJhaCwgaWhyIHNlaWQgamEgcmljaHRpZyBmaWVzZSBNYXNvY2hpc3Rlbi4gCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWhqYSAoU3RvcGRlbmJ1cywgMTguIE1hciAxOTk5LCAxNzowNTo1MSk6CnVudCBoaXR6ZQpEaWUgSGl0emUgd2lya3Qgc2ljaCBzZWx0c2FtIGF1ZiBlaWdlbnRsaWNoIGZlc3RlIEdlZ2Vuc3RhZW5kZSBhdXMuICAKdW50IGdlZ2Vuc3RhZW5kZQpEZXIgQmFsZHJpYW4gaXN0IHRyb2NrZW4gdW5kIHZlcnN0cm9lbXQgZWluZW4gYmVydWhpZ2VuZGVuIER1ZnQuICAgIAoKaWNoIGRhY2h0IGltbWVyLCBCYWxkcmlhbiB3YWVyIG5lIFBmbGFuemUsIG5hamEsIGthbm4gbWljaCBhdWNoIGlycmVuLCBtYWwKbmVuIEJpb2xvZ2VuIGZyYWdlbiA6KQoKU3RvcHBpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYXNzdCBtYWwgd2llZGVyIC4uLiAoTm92YXN0b3JtLCAxOC4gTWFyIDE5OTksIDE3OjIyOjE5KToKRGVpbiBGcmV1bmQgVHN1bmFtaSB0ZWlsdCBEaXIgbWl0OiBvZGVyIGVpbiBESUUoKSBhdWZydWZlbiBvZGVyIHNvd2FzIGluIGRlcgpEZWluIEZyZXVuZCBUc3VuYW1pIHRlaWx0IERpciBtaXQ6IEFydCA6KSkKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCiAgICAgICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouLi4gKExlbmEsIDE4LiBNYXIgMTk5OSwgMTk6MDM6MTUpOgpEdSBzcGllbHN0IGxlaXNlICdLbm9ja2luZyBvbiBoZWF2ZW5zIGRvb3InIGF1ZiBkZXIga2xlaW5lbiBGbG9ldGUuCkFyZWxpb24gZXJzdHJhaGx0IHZvciBEaXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3dW5kZXIgPyAoRG9nYmVydCwgMTkuIE1hciAxOTk5LCAwMDo1MTowOCk6CkdyZXlzdG9uZSB3aXJrdCBlaW4gV3VuZGVyLgpbVHJ2ZXM6QnJpZXNlbHRyaW1dIEthcmljIHd1cmRlIHZvbiBtaXIgYXVmIFN0dWZlIDExIGJlZm9lcmRlcnQuCgpzbyBnaGV0IGRhcyBhbHNvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaWxmZSA7KSAoQW5hdG9sLCAxOS4gTWFyIDE5OTksIDAwOjU0OjM3KToKPiB0ZWFtIHJlaWhlIDIKRHUgdmVyc3VjaHN0IGluIFJlaWhlIDIgenUgd2VjaHNlbG4uCkR1IGJpc3QgamV0enQgaW4gUmVpaGUgMi4KW1RlYW0gVGVycm9yOl0gQW5hdG9sLT4zLCBBbmF0b2wtPjIsIEFuYXRvbC0+MSwgQW5hdG9sLT4yLCBBbmF0b2wtPjIKRHUgYmlzdCBqZXR6dCBpbiBSZWloZSAxLgpbVGVhbSBUZXJyb3I6XSBBbmF0b2wtPjEsIEFuYXRvbC0+Mgo+IHRyIFd1YWggOikKW1RlYW0gVGVycm9yOkFuYXRvbF0gV3VhaCA6KQoKQW5hdG9sIC0gaGF0IGdlbnVnIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0dGVzIFdlZyAoR29yb2csIDE5LiBNYXIgMTk5OSwgMTI6MTk6MDQpOgpEdSB0ZWlsc3QgTW9yZ290aCBtaXQ6IGRhcyBidWd0IGphIGltbWVyIG5vY2ggKmdyaW5zKgpNb3Jnb3RoIGlzdCBnZXJhZGUgbmljaHQgZGE6ICoqZ3J1bW1lbCoqCgpQYXNzZW5kICg7CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptYXNzZW5zdGVyYmVuPyAoR2FzdDIsIDE5LiBNYXIgMTk5OSwgMTI6Mjk6NDApOgogUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEdhc3Q1LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgR2FzdDQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBHYXN0My4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEdhc3QxLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW50ZXJlc3NhbnRlcyBCdWNoLi4uIChGb29iYXIsIDE5LiBNYXIgMTk5OSwgMTU6NDQ6MzgpOgpOZXVsaWNoIGluIGRlciBCaWIgaW4gTW9yb246CgpJbSBnbGVpY2hlbiBTdGlsIGVybGFldXRlcnQgZGVyIEF1dG9yIHVlYmVyIGRpZSBuYWVjaHN0ZW4gU2VpdGVuIGhpbndlZyBzZWluZQpUaGVzZW4gZXR3YXMgZ2VuYXVlci4gRGEgRHUgRGlyIGlyZ2VuZHdpZSBuaWNodHMgcmVjaHRlcyB1bnRlciBkZW0gSW5oYWx0IGRlcgpnZWxlc2VuZW4gQWJzY2huaXR0ZSB2b3JzdGVsbGVuIGthbnNzdCwgYmxhZXR0ZXJzdCBEdSB6dSBlaW5lciBhbmRlcmVuIFN0ZWxsZQp3ZWl0ZXIgdW5kIGxpZXN0IGRvcnQ6CgotLS0tLS0tLS0tLS0tLS0tLQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFaXNkcmFjaGVuXSBBTEFBQUFBQUFSTSEgRHJhY3VsYSBJU1QgQVVTR0VCUk9DSEVOIQoKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2Vob3JjaHQgYXVmcyBXb3J0IChNb3Jnb3RoLCAxOS4gTWFyIDE5OTksIDE1OjU2OjEzKToKUmluZ29yIHRhdW1lbHQgZmx1Y2hlbmQgaGVyZWluLgpSaW5nb3Igc2FndDogbGF1ZgpHb3JvZyBnZWh0IG5hY2ggTm9yZGVuIGVpbiBwYWFyIEJhZXVtZSBzY2h1YnNlbi4KRGVyIFBob2VuaXggZmxpZWd0LgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCllFUyAhISEhIChNb3Jnb3RoLCAxOS4gTWFyIDE5OTksIDE1OjU3OjM3KToKRGVyIERhZW1vbiBzcHJ1ZWh0IFNhZXVyZSBhdWYgZGVuIFBob2VuaXguCiAgLi4uLm5vcm1hbC9LbGF1ZW4uLi4uLi4gU2FldXJlZGFlbW9uLiA6IFBob2VuaXguLi4uLi4gKioqKioqKiogLS0KU2NobWV0dGVybgpEZXIgUGhvZW5peCB1bWtsYW1tZXJ0IGVpbmVuIHJpZXNpZ2VuIFNhZXVyZWRhZW1vbiBtaXQgc2VpbmVuIFNjaHdpbmdlbi4KICAuLi4ubm9ybWFsL1NjaG5hYmVsLi4uLiBQaG9lbml4Li4uLi4uIDogU2FldXJlZGFlbW9uLiAqKioqKioqKiAtLSBLcmFjaGVuCkRlciByaWVzaWdlIFNhZXVyZWRhZW1vbiBmYWVsbHQgdG90IHp1IEJvZGVuLgpEZXIgUGhvZW5peCB2ZXJicmVubnQgaW4gZWluZXIgaGVsbGVuIEZsYW1tZS4KRGllIEFzY2hlIHdpcmQgZm9ydGdld2VodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktvbWlzY2hlcyBMZWhyYnVjaCA7LSkgKERhcmlhLCAxOS4gTWFyIDE5OTksIDE3OjEyOjUwKToKVHJvdWJhcnRpeCBydWZ0OiBFUyBLQU5OIE5VUiBFSU5FTiBHRUJFTi4uLi4hISEKQWJlciBzb3ZpZWxlIFNlaXRlbiBoYXQgZGFzIExlaHJidWNoIGdhciBuaWNodC4KCkRhcmlhIFdldHRlcndhY2hzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbW1lciBkaWVzZSB2ZXJ3ZWNobHVuZ2VuIC4uLiA6KSAoU21pbGV5LCAxOS4gTWFyIDE5OTksIDE5OjI1OjMzKToKQm9yYW4gdGVpbHQgRGlyIG1pdDogd2VsY2hlcyBwZW50aG91c2UKRHUgdGVpbHN0IEJvcmFuIG1pdDogZGFzIHZvbiBjYXR3ZWFsemUgLi4gCkJvcmFuIHRlaWx0IERpciBtaXQ6IHNldWZ6IHVuZCB3aWUga29tbWUgaWNoIG5hY2ggY2F0d2VhemxlPwpEdSB0ZWlsc3QgQm9yYW4gbWl0OiAoKmxhY2gqKSBjYXR3ZWFsemUgaXN0IGVpbiBtYWdpZXIuLi4KQm9yYW4gdGVpbHQgRGlyIG1pdDogYWNoIHNvIGljaCBoYWIgZGFzIG1pdCBkaWVzZXIga2F0emVuc3RhZHQgdmVyd2VjaHNlbHQuLi4KQm9yYW4gZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBhbi4KQm9yYW4gdGVpbHQgRGlyIG1pdDogYWJlciBuaXgga2F0emVud2llc2VsIQpCb3JhbiB0ZWlsdCBEaXIgbWl0OiBhbHNvIGljaCBzZWggaGllciBrZWluZSBodWV0dGVuIHZvbiBjaGltYWVyZW4KClNtaWxleSAoc2NobXVuemVsbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGltIE1HLi4uIChTbHlmb3gsIDIwLiBNYXIgMTk5OSwgMjE6MzQ6NDgpOgpHYXN0MSBydWZ0OiBiaXR0ZSwgYml0dGUgaGlsZiBtaXIKW01vZXJkZXI6R2Vpc3QgZWluZXMgV2lydHNdIFRhbWkgaXN0IGRvb2YgdW5kIHN0aW5rdCEKW01vZXJkZXI6R2Vpc3QgZWluZXMgR2FzdHNdIERhcyB3YXIgZWluIGdlbWVpbmVyIFRpZWZzY2hsYWcsIFRhbWkhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqKnNldWZ6KiogS2FlbXBmZXIgKE1vcmdvdGgsIDIwLiBNYXIgMTk5OSwgMjI6NDE6MzYpOgpIaWJiZWxpZyBzYWd0OiBobSwgaWNoIHdpbGwgd2lzc2VuLCB3aWUgbWFuIGhpZXIgbmVuIHppbW1lciBtaWV0ZXQgOikKSGliYmVsaWcgc2FndDogaGllciBsYXVmZW4gYWxsZXMgc3R1cHNlIHJ1bQpIaWJiZWxpZyBodWVwZnQgdW0gRGljaCBoZXJ1bS4KRHUgenVja3N0IG1pdCBkZW4gU2NodWx0ZXJuLgpEdSBkZW5rc3QgICAuIG8gTyAoYXJnbCkKSGliYmVsaWcgZnJhZ3Q6IFdpZXNvIGFyZ2w/CkR1IHNhZ3N0OiBudXIgc28KSGliYmVsaWcgZ3JpbnN0IERpY2ggYW4uCkhpYmJlbGlnIHNhZ3Q6IG1laW5zdGUgaWNoIGd1Y2sgbWlyIGhpZXIgZGV0YWlscyBhbiA/Pz8KRHUgc2Fnc3Q6IG9oIG1hbm4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVlc3RlIEVya2VubnRuaXM6IChSaW5nb3IsIDIwLiBNYXIgMTk5OSwgMjI6NDU6MzYpOgpWYWxhIE1vcmdvdGggdGVpbHQgRGlyIG1pdDogaWNoIGJpbiBERVIgZm9yc2NoZXIKClJpbmdvci4gU3ByYWNobG9zLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyIHVuZCBpaHJlIEVpZ2VuaGVpdGVuIDopIChTdGluZywgMjEuIE1hciAxOTk5LCAxMzoyNzo1Nik6CkViZW4gbmFjaGRlbSBpY2ggIndlY2tlIFdpbSIgZWluZ2VnZWJlbiBoYWJlOgoKV2ltIHRlaWx0IERpciBtaXQ6IFdlY2tydWZlIGFuZ2Vrb21tZW4uIFdlY2tlciB3aXJkIGdlbGFldXRldC4gYml0dGUgd2FydGVuLgooZGllcyB3YXIgZWluIFRyaWdnZXIpCgoKU3RpbmcsIHdhZWx6ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFp3ZWl0aWVzLi4uIChBc21vZGlzLCAyMS4gTWFyIDE5OTksIDIzOjM4OjI2KToKfiMhIHJuPVdvb2R5IHJ0PTkyMTc2NzU0MyByZz1zY2htYXJybgp+IyEgdGlkPTkyMTY5OTE5MQppc3QgZG9jaCBuZSBnYW56IG5vcm1hbGUgUGEqLUFibG9lc3VuZyAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhbW1lciAoTXVhZGliLCAyMi4gTWFyIDE5OTksIDEwOjU4OjU3KToKaGksCgppY2ggZGVua2UgZXMgZ2Vob2VydCBuYWNoIHNjaG1hcnJuIDopCndlciB3aWxsIGthbm4gZGVuIGhhbW1lciBpZ25vcmllcmVuLCBkaWUgcmljaHRpZ2VuIHZlcmJlbiBtdWVzc3QgaWhyCmFsbGVyZGluZ3Mgc2Nob24gc2VsYnN0IHJhdXNmaW5kZW4gKHdpcmQgamEgd29obCBuaWNodCBzbyBzY2h3ZXIgc2VpbikKCmJ5YQoKbXVhZGliCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGFtbWVyIChLZXksIDIyLiBNYXIgMTk5OSwgMTE6NTU6MDApOgp+IyEgcm49TXVhZGliIHJ0PTkyMjEwMDMzNyByZz1zY2htYXJybgp+IyEgdGlkPTkyMjEwMDMzNwpXaWUga2FubiBtYW4gbmVuIEhhbW1lciBpZ25vcmllcmVuIGRlciBlaW5lbSBkZW4gS29wZiB3ZWljaGtsb3BwdD8gOikKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIYW1tZXIgKEFwc3UsIDIyLiBNYXIgMTk5OSwgMTQ6NTM6NDMpOgp+IyEgcm49S2V5IHJ0PTkyMjEwMzcwMCByZz1zY2htYXJybgp+IyEgdGlkPTkyMjEwMDMzNwpad2VyZ2UgbmF0dWVybGljaC4gQmVpIGRlbmVuIGlzdCBhdWNoIGRhcyBTY2hhZWRlbGlubmVyZSBzdGVpbmhhcnQKCjopKSkpCgpBcHN1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIYW1tZXIgKEtleSwgMjIuIE1hciAxOTk5LCAxNDo1NDo1Nik6Cn4jISBybj1BcHN1IHJ0PTkyMjExNDQyMyByZz1zY2htYXJybgp+IyEgdGlkPTkyMjEwMDMzNwpEdSB2ZXJ3ZWNoc2Vsc3QgWndlcmdlIG1pdCBUcm9sbGUgOykKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGVsZGVuIChNaXN0YnJhdHplLCAyMi4gTWFyIDE5OTksIDE2OjE2OjU3KToKW1RlYW0gV3Vyc3RudWxwZW46TWlzdGJyYXR6ZV0gbmEgd28gYmxlaWJlbiBkZW5uIGRpZSBoZWxkZW4gPwpTY2hva28gICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2VobSA6KSAoTm92YXN0b3JtLCAyMi4gTWFyIDE5OTksIDIwOjMwOjE2KToKSGVyb01jRmx5IHNjaGxlbmRlcnQgbWl0IHVuc2NodWxkaWdlciBNaWVuZSBoZXJlaW4uCkhlcm9NY0ZseSB3YWx6dCBwbHVlbmRlcm5kIGF1ZiBkaWUgVG9pbGV0dGUuCgpWaWVsIFNwYXNzIC4pCiAgICAgIE5vdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvIGdlaHQgZGFzIGFsc28gOikgKFRoZXJpbiwgMjIuIE1hciAxOTk5LCAyMzo1NTo0OCk6CgpQYWRyZWljIGtvbW10IGFuLgpEdSBzdG9laG5zdC4KPiBEYXJrd2luZyBzZXVmenQuClBhZHJlaWMgc2FndDogaG9pIDopCkR1IHNhZ3N0OiBrdXNjaCwgd2VnClBhZHJlaWMgd2F0ZXQgbmFjaCBTdWVkZW4uCkR1IGRlbmtzdCAgIC4gbyBPIChvaCwgZXMgZnVua3Rpb25pZXJ0KQpEYXJrd2luZyBncmluc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc28gZ2VodCBkYXMgYWxzbyA6KSAoSG9vZCwgMjIuIE1hciAxOTk5LCAyMzo1Njo0NCk6Cn4jISBybj1UaGVyaW4gcnQ9OTIyMTQ2OTQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIyMTQ2OTQ4Cm11c3MgbWFuIGRhcyBwYXRlbnRpZXJlbj8KCi0tLS0tLQpwYXRyeW4sIG5ldWdpZXJpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFua2UgKFplciwgMjMuIE1hciAxOTk5LCAwNzo0NzoyMyk6Ci4uLmZ1ZXIgZGllIDQgU2NoZXJiZW4sIERyYWNoZW5rbGF1ZW4sIEVpc2F4dCB1bmQgU2FiYmVyYW11IGluIGRlbiBCZXV0ZWxuCmJlaW0gS2lsbGVycG9wZWwuLi4uCgpJY2ggWmVyLiBaZXIgdG9ldGV0IERpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbyBrYW5ucyBlaW5lbSBnZWhuLi4uIChMZW5hLCAyMy4gTWFyIDE5OTksIDEwOjQ0OjI1KToKLi4uIHdlbm4gbWFuIGVpbmUgcnVicmlrIG5ldSBhYm9ubmllcnQuCgpSdWJyaWsgMzU6IHBhcnR5LCBBcnRpa2VsOiAxIHZvbiAyMTAKCkxlbmEsIHZpZWwgemVpdCB6dW0gTGVzZW4gc3VjaGVuZC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU1NQIChHcmltbWJvcm4sIDIzLiBNYXIgMTk5OSwgMTE6MDI6MjIpOgp+IyEgcm49Qm9pbmcgcnQ9OTIyMDk2MjE2IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTkyMTc1NDcxOApOYWphLCB6dW1pbmRlc3QgdGVpbHdlaXNlLi4uCgpHcmltbSJaYXViZXJ0cmFuayAzImJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnBhcnR5IG9yZ2EuLi4gKEphc3BlciwgMjMuIE1hciAxOTk5LCAxNjowNDoyMyk6CkRhcyBXaWxkc2Nod2VpbiBoYXQgRE0gMjEwLDAwIGZyIDQwa2cgZ2Vrb3N0ZXQgKyBETSAxNzAsMDAgZnIgZGVuIEZsZWlzY2hlcgoKSmFzcGVyIG11c3N0ZSBkb2NoIGVyc3RtYWwgd3VlcmdlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHBhcnR5IG9yZ2EuLi4gKEdyaW1tYm9ybiwgMjMuIE1hciAxOTk5LCAxNjoxNjoxNCk6Cn4jISBybj1KYXNwZXIgcnQ9OTIyMjA1MDYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIyMjA1MDYzCkh1Y2gsIGVzIGdhYiBhdWNoIGVpbmVuIEZsZWlzY2hlciB6dSBlc3Nlbj8KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCBoYXQgZGEgd29obCB3YXMgdmVycGFzc3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdyYXV3b2xmIHdhcnMuLi4gKENyaXR0ZXIsIDIzLiBNYXIgMTk5OSwgMTk6Mzg6MjYpOgpkZXIgd2FyIGVyc3RlciBlaW5kZXV0aWcgOikKKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSoKfCAgICAgICAgICAgICAgICBNb3JnZW5HcmF1ZW4sIExQTXVkIDAzLjAyLjFAMTQxIChBbXlsYWFyKSAgICAgICAgICAgICAgIHwKfCAgICAgICAgICAgICAgICAgQWRyZXNzZTogTUcuTXVkLkRFICgxMjguMTc2LjE4Mi4yMzgpIDIzICAgICAgICAgICAgICAgIHwKfCAgICAgICAgICAgICAgICAgICAgVXB0aW1lOiAxIE1pbnV0ZSB1bmQgMjEgU2VrdW5kZW4gICAgICAgICAgICAgICAgICAgIHwKfCAgICAgICAgICAgICAgICAgICAgICAgICAgIE1vcmdlbkdyYXVlbiBNdWRsaWIgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSoKICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRGllLCAyMy4gTWFyIDE5OTksIDE5OjM0OjUwICgxMiBUZWlsbmVobWVyKQoKTG9nb24uLi4uLi4uLi4uLi5zIExvZ29uLi4uLi4uLi4uLi4ucyBMb2dvbi4uLi4uLi4uLi4uLnMgTG9nb24uLi4uLi4uLi4uLi5zCkxvZ29uLi4uLi4uLi4uLi4ucyBMb2dvbi4uLi4uLi4uLi4uLnMgTG9nb24uLi4uLi4uLi4uLi5zIExvZ29uLi4uLi4uLi4uLi4ucwpMb2dvbi4uLi4uLi4uLi4uLnMgTG9nb24uLi4uLi4uLi4uLi5zIExvZ29uLi4uLi4uLi4uLi4ucyBHcmF1d29sZi4uLi4uLi4uLnMgICAKCgpncnVzcyBjLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdyYXV3b2xmIHdhcnMuLi4gKEFwc3UsIDIzLiBNYXIgMTk5OSwgMjA6MTY6MzgpOgp+IyEgcm49Q3JpdHRlciBydD05MjIyMTc5MDYgcmc9c2NobWFycm4KfiMhIHRpZD05MjIyMTc5MDYKQmVpIGRlciBHZWxlZ2VuaGVpdCBrb2VubnRlIG1hbiBqYSBtYWwgZGllIFVociBkZXMgU2VydmVycyBfaGFsYndlZ3NfCmVpbnN0ZWxsZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiBobSwgd2FzIGRlbm4gbnVuPyAoTGVuYSwgMjQuIE1hciAxOTk5LCAxMTo0NjozMSk6Ckthcm9sIHRlaWx0IERpciBtaXQ6IGhpIGJldHRzY2h3ZXN0ZXI6KSkgWzExOjQ0XQpLYXJvbCB0ZWlsdCBEaXIgbWl0OiBhZWggYmVldHNjaHdlc3RlciBbMTE6NDRdCkthcm9sIHRlaWx0IERpciBtaXQ6ICp3YWFoKiBpY2gga2FubiBoZXV0ZSBuaWNodCBzY2hyZWliZW4gWzExOjQ0XQpLYXJvbCB0ZWlsdCBEaXIgbWl0OiBlcyBzb2xsdGUgbmF0dWVybGljaCBiZXRzY2h3ZXN0ZXIgaGVpc3NlbjopKSBbMTE6NDZdCi4uLgphaCBqYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdvZXR0ZXIuLi4gKExlbmEsIDI0LiBNYXIgMTk5OSwgMTE6NTU6MzcpOgo+IGxldWNodGVuCkVzIGJsZWlidCBmaW5zdGVyLgpEaWUgR29ldHRlciBzY2hlbmtlbiBEaXIgZWluZSBFcmxldWNodHVuZy4KLi4uCndhcyBkZW5uIG51bj8gQmxlaWJ0cyBkdW5rZWwgb2RlciB3aXJkcyBoZWxsPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQnVnIChaYXJkb3osIDI0LiBNYXIgMTk5OSwgMTI6NDg6MzMpOgpbRGVidWc6RWJlbmVdIEZlaGxlcjogIkVzIGlzdCBlaW4gc2Nod2Vyd2llZ2VuZGVyIEF1c25haG1lZmVobGVyIGJlaW0gQ2xvbmVuCltEZWJ1ZzpFYmVuZV0gZGVyIFBpenphIGEgbGEgQmlsbCBHYXRlcyBhdWZnZXRyZXRlIiwgT2JqZWt0OgpbRGVidWc6RWJlbmVdIGQvZWJlbmUvcm9vbS9Qb3J0VmFpbi9waXp6YSwgUHJvZ3JhbW06CltEZWJ1ZzpFYmVuZV0gIi9kL2ViZW5lL3Jvb20vUG9ydFZhaW4vcGl6emEuYyIsIFplaWxlIDQ2MSAoQm9uaW5nKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnp1ZmFsbCEhISAoUGF0cnluLCAyNC4gTWFyIDE5OTksIDE0OjE2OjAyKToKUmVhcGVyIHRlaWx0IERpciBtaXQ6IGhpIHBhdHJ5biEgOm8pIC4ubnVyIG5lIGtsZWluZSBmcmFnZSB6dXIgZ3VlcnRlbC1xdWVzdDoKUmVhcGVyIHRlaWx0IERpciBtaXQ6IGJsZWliZW4gZGllIGRpbmdlIGRpZSBtYW4gZWluemVsbiBhYmxpZWZlcnQgdWViZXIgZWluZW4KUmVhcGVyIHRlaWx0IERpciBtaXQ6IHJlYm9vdCBoaW5hdXMgZXJoYWx0ZW4gPyEKa3VyeiBzcGFldGVyOgpbRGVidWc6IFIgTyBPIFQgXSBGZWhsZXI6ICJPdXQgb2YgbWVtb3J5IiwgT2JqZWt0OiBzZWN1cmUvc2ltdWxfZWZ1biwKW0RlYnVnOiBSIE8gTyBUIF0gUHJvZ3JhbW06ICIvc2VjdXJlL3NpbXVsX2VmdW4uYyIsIFplaWxlIDgxOCAoQ2hyaXN0b3BoZXIpCiUgQ29ubmVjdGlvbiB0byBwYXRyeW4gY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KLS9xdWl0Ci0vdGYKRHUgdGVpbHN0IFJlYXBlciBtaXQ6IG5laW4gOikKUmVhcGVyIHRlaWx0IERpciBtaXQ6ICpBUkdIISEhKgpbQWxsZ2VtZWluOk5vbm5lXSBkYW5uIGtvZW5uZW4gd2lyIHVucyBkYXMgYXVzcnVlc3RlbiBqYSBlcnN0bWFsIHNwYXJlbi4uClJlYXBlciB0ZWlsdCBEaXIgbWl0OiAqZ3JpbnMqCgotLS0tLS0KcGF0cnluLCBhbnR3b3J0ZXQgc2VociBhbnNjaGF1bGljaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVG9kIChEaWVkZXIsIDI0LiBNYXIgMTk5OSwgMTY6NTQ6NDMpOgpCZWxnYXJpYWQgbWFjaHQgZWluZSBGaW50ZSBnZWdlbiBlaW5lbiBTaXZhayBEcmFrb25pZXIuCkJlbGdhcmlhZCBzZXR6dCBlaW5lbiBtb2VyZGVyaXNjaGVuIFRvZGVzc3Rvc3MgZ2VnZW4gZWluZW4gU2l2YWsgRHJha29uaWVyIGFuLgpFaW4gU2l2YWsgRHJha29uaWVyIHBhcmllcnQgZGVuIEFuZ3JpZmYgbWl0IGRlbSBkcmFrb25pc2NoZW4gWmFobmthbW0uCiAgQmVsZ2FyaWFkIHplcnN0YWV1YnQgZGVuIFNpdmFrIERyYWtvbmllci4KRGVyIFNpdmFrIERyYWtvbmllciBmYWVsbHQgdG90IHp1IEJvZGVuLgoKRGllZGVyLCB3dW5kZXJ0IHNpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnZvcmFobnVuZz8gKERpZWRlciwgMjQuIE1hciAxOTk5LCAxNzoxNDozNSk6CkRlaW4gRnJldW5kIFN0aW5nIHRlaWx0IERpciBtaXQ6IFZFUkRBTU10CiUgQ29ubmVjdGlvbiB0byBEIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCi0tLS0gTm8gd29ybGQgLS0tLQoKKnNldWZ6KgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUb2QgKE1vcmdvdGgsIDI0LiBNYXIgMTk5OSwgMTc6MTU6MjUpOgp+IyEgcm49RGllZGVyIHJ0PTkyMjI5NDQ4MyByZz1zY2htYXJybgp+IyEgdGlkPTkyMjI5NDQ4MwpVbmQgd2FzIGlzdCBkYXJhbiBudW4gc28gc2VsdHNhbT8/CgpNKiwgZnJhZ2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChLZWxseWJ1bmR5LCAyNC4gTWFyIDE5OTksIDE3OjIxOjQ2KToKRGVpbiBGcmV1bmQgSGVyb21jZmx5IHRlaWx0IERpciBtaXQ6IERhcyBkYXJmIGRvY2ggbmljaHQgd2FociBzZWluIQolIENvbm5lY3Rpb24gdG8gbWcgY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdAp1c3cgdXN3IHVzdwouLi4gOikKCkR1bXBmYmFja2UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFyZ2wgOikgKEphc29ucmlnaWQsIDI0LiBNYXIgMTk5OSwgMTc6MjU6MDEpOgpOeWVsYSBmYWVsbHQgdG90IHp1IEJvZGVuLiAoMCAlKQpbTW9lcmRlcjpHZWlzdCBOeWVsYXNdIFNoZXJpZmYhIFVudGVybmltbSB3YXMgZ2VnZW4gSmFzb25SaWdpZCEKRHUgbmltbXN0IGRhcyBSdW5lbnNjaHdlcnQuCkR1IG5pbW1zdCBkYXMgUGFhciBLYW1wZnN0aWVmZWwuCkR1IG5pbW1zdCA2IGxldWNodGVuZGUgU3RpZnRlLgpHbm9tZSBzYWd0OiBnZWh0IGRvY2ggOikKRHUgZ3JpbnN0LgpbQWJlbnRldWVyOjxRdWVzdD5dIEFzdGFyYSBoYXQgZ2VyYWRlIGVpbiBBYmVudGV1ZXIgYmVzdGFuZGVuOiBXYWxkYmF1ZXJuaG9mIAolIENvbm5lY3Rpb24gdG8gTW9yZ2VuR3JhdWVuIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCi0tLS0gTm8gd29ybGQgLS0tLQoKRGFzIGlzdCBlaWdlbnRsaWNoIGdhciBuaWNodCB3aXR6aWcgLi4uCgpEaWUgZWluemlnZSwgZGllIHNpY2ggZnJldWVuIGthbm4sIGlzdCBBc3RhcmEuCgpKYXNvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFyZ2wgOikgKEFuYXRvbCwgMjQuIE1hciAxOTk5LCAxNzoyNTo0OCk6Cn4jISBybj1KYXNvbnJpZ2lkIHJ0PTkyMjI5NjMwMSByZz1zY2htYXJybgp+IyEgdGlkPTkyMjI5NjMwMQpTaWNoZXI/IFdvaGVyIHdpbGxzdCBEdSB3aXNzZW4sIGRhc3MgQXN0YXJhcyBTYXZlZmlsZSBub2NoIGdlc3BlaWNoZXJ0Cnd1cmRlPyBWaWVsbGVpY2h0IGhhdCBnZXJhZGUgQXN0YXJhIEdydW5kIGZ1ZXIgb3JkZW50bGljaGVzIEFyZ2xuLgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhcmdsIDopIChSb2NodXMsIDI0LiBNYXIgMTk5OSwgMTc6Mjc6NDIpOgp+IyEgcm49QW5hdG9sIHJ0PTkyMjI5NjM0OCByZz1zY2htYXJybgp+IyEgdGlkPTkyMjI5NjMwMQpCZWltIExvZXNlbiBlaW5lciBRdWVzdCBvZGVyIGZpbmRlbiBlaW5lcyBaVHMgd2lyZAphdXRvbWF0aXNjaCBzYXZlKCkgYXVmZ2VydWZlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLiAoTGVuYSwgMjQuIE1hciAxOTk5LCAxODowODo1Myk6CkVpbiBGcm9zY2ggdGVpbHQgRGlyIG1pdDogYmluIGVpbiBmcm9zY2ghCi4uLgpuZWUsIEVDSFQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbHRlIEF1c2dhZW5nZS4uLiAoRGFyaWEsIDI0LiBNYXIgMTk5OSwgMTg6NDc6NDkpOgpEZXIgVHJhbXBlbHBmYWQgZnVlaHJ0IG5hY2ggT3N0ZW4gdW5kIFN1ZWR3ZXN0ZW4gZHVyY2ggZGVuIFdhbGQuCk5hY2ggT3N0ZW4gZ2VodCBlcyBzcHVlcmJhciBiZXJnYXVmLiBOYWNoIE5vcmRlbiBmdWVocnQgdm9uIGhpZXIgCmVpbmUgQWJ6d2VpZ3VuZywgd2VsY2hlIG5vY2ggbmljaHQgZ2FueiBzbyB6ZXJ0cmFtcGVsdCBpc3Qgd2llIGRlcgpSZXN0IGRlcyBQZmFkZXMuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3RlbiB1bmQgc3VlZHdlc3Rlbi4gCgpPaywgZGllICJuZXVlIiBFbGZlbnNpZWRsdW5nIGlzdCBqYSBub2NoIGlyZ2VuZHdpZSB3aXR6aWcuIEFiZXIgc29sbHRlIG1hbgpzaWNoIG5pY2h0IHVlYmVybGVnZW4sIG9iIG1hbiBoaWVyIGRpZSAiQWJ6d2VpZ3VuZyIgbWFsIHJhdXNuaW1tdD8KRGFyaWEgV2V0dGVyd2FjaHMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbHRlIEF1c2dhZW5nZS4uLiAoS2V5LCAyNC4gTWFyIDE5OTksIDE4OjQ4OjUwKToKfiMhIHJuPURhcmlhIHJ0PTkyMjMwMTI2OSByZz1zY2htYXJybgp+IyEgdGlkPTkyMjMwMTI2OQpOZW5lLCBkaWUgc3RlaHQgdW50ZXIgRGVua21haGxzY2h1dHogOikKCkt1bHR1cmVyYmUgdW5kIHNvCgpLZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNpY2hlciBpc3Qgc2ljaGVyIChUYXJpbmEsIDI0LiBNYXIgMTk5OSwgMjA6MTA6NTkpOgoKRHUgc2NoYWVyZnN0IGRhcyBEcmFjaGVuc2Nod2VydC4gRGllIEtsaW5nZSBzaWVodCBqZXR6dCB3aWVkZXIgcmVjaHQKZ2VmYWVocmxpY2ggYXVzLiBEYW1pdCBpc3QgZGFzIERyYWNoZW5zY2h3ZXJ0IGpldHp0IHNlaHIgZ3V0IGdlc2NoYWVyZnQuCkRlciBFbGZlbndhZWNodGVyIHNhbHV0aWVydC4gICAgICAgICAgICAgICAgICAgICAgICAKCjotKQoKVGFyaW5hCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbiBkZXIgVG9kZXNzZXF1ZW56OiAoSGFyYWtpcmksIDI0LiBNYXIgMTk5OSwgMjI6MDQ6NDUpOgoKPj4+CktleSBzYWd0OiBXaXIgbXVlc3NlbiB1bnRlciBhbGxlbiBVbXN0YWVuZGVuIHZlcmhpbmRlcm4sIGRhc3MgaXJnZW5kamVtYW5kCmFuIHVuc2VyZW4gU3RlcmJlLVphZWhsZXItU3RhbmQgaGVyYW5rb21tdC4KSmVob3ZhIHN0dWRpZXJ0IGF1Zm1lcmtzYW0gZGllIFRvcC1TdGVyYmUtTGlzdGUuCkFscGhhIHNhZ3Q6IFN0aW1tdC4KPDw8CgpLYW5uIGRhIG51ciBsYWNoZW4sIApIYXJha2lyaSA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNhdWZ0ZWFtPz8/IChHYXN0MSwgMjUuIE1hciAxOTk5LCAxMzo0Mzo1NCk6CltBYmVudGV1ZXI6PFF1ZXN0Pl0gVGVxdWlsYSBoYXQgZ2VyYWRlIGVpbiBBYmVudGV1ZXIgYmVzdGFuZGVuOiBEYXMgVGVzdGFtZW50CltBYmVudGV1ZXI6PFF1ZXN0Pl0gdm9uIFdpbGhlbG1zYnVyZyAgPDEzOjQxOjU3PgpbQWJlbnRldWVyOjxRdWVzdD5dIE1jQ2F1bHMgaGF0IGdlcmFkZSBlaW4gQWJlbnRldWVyIGJlc3RhbmRlbjogRGFzIFRlc3RhbWVudApbQWJlbnRldWVyOjxRdWVzdD5dIHZvbiBXaWxoZWxtc2J1cmcgIDwxMzo0MTo1Nz4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAuLi4gKE5vdmFzdG9ybSwgMjUuIE1hciAxOTk5LCAxOToyNTo0MSk6CktleSB0ZWlsdCBEaXIgbWl0OiB1cHMgLi4uIGRlciByaWVzaWdlIHNhZXVyZWRhZW1vbiB3YW5kZXJ0Pz8KRHUgdGVpbHN0IEtleSBtaXQ6IGplcCAuKQpLZXkgaXN0IGdlcmFkZSBuaWNodCBkYTogTGludXggaW5zdGFsbGF0aW9uICwpCltUb2Q6TGFyc10gRWluIFNhZXVyZWRhZW1vbiBoYXQgZ2VyYWRlIEtleSB1bWdlYnJhY2h0LgpbVG9kOlRvZF0gREFTIFdBUiBTQ0hPTiBEQVMgNDYyVEUgTUFMIQpbVG9kOkVpbiBTYWV1cmVkYWVtb25dIE1pc3QuIEpldHp0IGlzdCBtZWluZSBTYWV1cmUgbWl0IERlaW5lbSBCbHV0IHZlcnNhdXQuCgogICAgIE5vdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBUdXJuaGFsbGUgKEFuYXRvbCwgMjUuIE1hciAxOTk5LCAyMDo0OTo1Nik6Cn4jISBybj1TdW5mbG93ZXIgcnQ9OTIyMzk0OTI1IHJnPXBhcnR5Cn4jISB0aWQ9OTIxNjk2MjU0Ci0+IC4uLiB1bmQgaWNoIGJpbiBkYXZvbiBzYXR0IGdld29yZGVuIHVuZCB3ZW5uIGljaCBzYXR0IHdlcmRlIGRhbm4gbXVlc3N0ZW4KLT4gZWlnZW50bGljaCBhdWNoIGFsbGUgYW5kZXJlbiBzYXR0IHdlcmRlbiAuLi4KClZpZWxsZWljaHQgd3VyZGVuIGFsbGUgYW5kZXJlbiBOSUNIVCBzYXR0LCB3ZWlsIER1IHNhdHQgd3VyZGVzdCA6bykgPwoKQW5hdG9sIC0gS2F1c2FsenVzYW1tZW5oYWVuZ2VuIGF1ZiBkZXIgU3B1ciA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhpbGJlcnQgKEtvb21pLCAyNS4gTWFyIDE5OTksIDIwOjU0OjQ4KToKIFtBbGxnZW1laW46U3VuZmxvd2VyXSBhY2ggZGllIHF1ZXN0Li5obW0gYWVoaCBqYSAqZ3J1ZWJlbCogKmthbm4gbWljaCB3YWdlCltBbGxnZW1laW46U3VuZmxvd2VyXSBlcmlubmVybioKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCiJKZW1hbmQiIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNaWV6ZSB1bmQgZGVyIFdhbmRsZXIuLi4gKE1pZXplLCAyNS4gTWFyIDE5OTksIDIxOjA1OjI1KToKCmViZW4gaW0gTUcuLi4KCkFubS4gMTogWCBpc3QgZWluIE1hZ2llciwgZGVzc2VuIE5hbWUgaGllciBuaWNodCBnZW5hbm50IHdlcmRlbiBzb2xsIDopCkFubS4gMjogWSBpc3QgZWluIEdlYmlldCwgZGVzc2VuIE5hbWUgaGllciBuaWNodCBnZW5hbm50IHdlcmRlbiBzb2xsIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpYIHRlaWx0IERpciBtaXQ6IERlciBXYW5kbGVyIGltIFk/IFZlcmRhbW10LCBkYXNzIGlzdCBlaW4KWCB0ZWlsdCBEaXIgbWl0OiBvcmRlbnRsaWNoZXMgR2ViaWV0LCBkYSBoYXQgZGVyIG5peCB2ZXJsb3JlbiEgOikKWzIwOjM0XQouLi4KRHUgdGVpbHN0IFggbWl0OiBhaGggRHUgYmlzdCBqYSB3aXJrbGljaCBkYSA6KSkpCkRlciBXYW5kbGVyIHdhYmVydCBuYWNoIE9zdGVuLgpEdSBrbnVkZGVsc3QgWCBhdXMgZGVyIEZlcm5lLgpYIHRlaWx0IERpciBtaXQ6ICpsYWNoKiBbMjA6MzRdCkR1IHRlaWxzdCBYIG1pdDogZGEgZ2lidHMgZG9jaCBkaWVzZXMgRGV0YWlsIDopClggdGVpbHQgRGlyIG1pdDogZGEgZ2lidHMgc29nYXIgbWVocmVyZSEgWzIwOjM1XQpFaW4gV2FuZGxlciB3YWJlcnQgaGVyZWluLgouLi4KRHUgdGVpbHN0IFggbWl0OiBva2kuLi4uIGljaCBrZW5uZSBudXIgZGFzIEVpbmUKWCBncmluc3QgRGljaCB2ZXJzdGVoZW5kIGF1cyBkZXIgRmVybmUgYW4uCkRlciBXYW5kbGVyIHdhYmVydCBuYWNoIE9zdGVuLgpEdSB0ZWlsc3QgWCBtaXQ6IG1hY2h0IGVjaHQgU3Bhc3MgZGllIFF1ZXN0IC0gYmlzIGpldHp0IDopClggdGVpbHQgRGlyIG1pdDogT2theSwgdmllbCBFcmZvbGcgd2VpdGVyaGluISA6KSBbMjA6MzZdCkR1IHZlcnd1c2NoZWxzdCBYcyBIYWFyZSBhbmVya2VubmVuZCBhdXMgZGVyIEZlcm5lLgpEdSB0ZWlsc3QgWCBtaXQ6IGRhbmtlIHZpZWxtYWxzIDopCioqKm5pY2h0IGZ1ZXIgZGllIE9lZmZlbnRsaWNoa2VpdCoqKgpYIHRlaWx0IERpciBtaXQ6IEljaCBmdWVobGUgbWljaCBnZWVocnQhIFsyMDozN10KRHUga251ZGRlbHN0IFggYXVzIGRlciBGZXJuZS4KLi4uCkVpbiBXYW5kbGVyIHdhYmVydCBoZXJlaW4uCi4uLgpEdSB0ZWlsc3QgWCBtaXQ6IGRlciBXYW5kbGVyIGlzdCBhdWNoIG5vY2ggYW5oYWVuZ2xpY2ggLi4uICpnZW5lcnZ0CkR1IHRlaWxzdCBYIG1pdDogZ3VjayogOikKRGVyIFdhbmRsZXIgd2FiZXJ0IG5hY2ggT3N0ZW4uCi4uLgpYIHRlaWx0IERpciBtaXQ6IEJhZWVlZWghIDopIFsyMDozOV0KRHUgdGVpbHN0IFggbWl0OiB3b21pdCBoYWIgaWNoIGRhcyBkZW5uIG51ciB2ZXJkaWVudD8gOikKLi4uClggdGVpbHQgRGlyIG1pdDogSGFzdCBEdSBldHdhcyBib2VzZXMgdWViZXIgUGF0cnluIGdlc2FndD8gOikgWzIwOjQwXQpEdSB0ZWlsc3QgWCBtaXQ6IGthbm4gaWNoIG1pY2ggbmljaHQgZXJpbm5lcm4uLi4gaG1tbSBob2VjaHN0ZW5zLCBkYXNzCkR1IHRlaWxzdCBYIG1pdDogZXIgZWluZSBQcmluei1FaXNlbmhlcnotRnJpc3VyIGhhdCA6KQpFaW4gV2FuZGxlciB3YWJlcnQgaGVyZWluLgpYIHRlaWx0IERpciBtaXQ6IE9oYS4gRGFzIGVya2xhZXJ0IGVpbmlnZXMuIFsyMDo0MV0KWCBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgpEdSBncmluc3QgWCBiZXNjaGFlbXQgYXVzIGRlciBGZXJuZSBhbi4KLi4uCkRlciBXYW5kbGVyIHdhYmVydCBuYWNoIE9zdGVuLgouLi4KWCB0cm9lc3RldCBEaWNoIGF1cyBkZXIgRmVybmUuCkR1IGJlZGFua3N0IERpY2ggYmVpIFggYXVzIGRlciBGZXJuZS4KRWluIFdhbmRsZXIgd2FiZXJ0IGhlcmVpbi4KRHUgdGVpbHN0IFggbWl0OiBkYXMgbXVlc3N0ZSBpbiBkaWUgTVBBIDopIGhhYnMgYWJlciBuaWNodCBtaXRnZWxvZ2d0CkR1IHRlaWxzdCBYIG1pdDogOikKWCB0ZWlsdCBEaXIgbWl0OiBBYWFhaCwgYml0dGUgbmljaHQhIEduYWRlISA6KSBbMjA6NDNdCkR1IHRlaWxzdCBYIG1pdDogb2tpIDopCi4uLgpYIHRlaWx0IERpciBtaXQ6IEljaCBzdGVoZSBmdWVyIGltbWVyIGluIERlaW5lciBTY2h1bGQhIFsyMDo0M10KLi4uCkVpbiBXYW5kbGVyLgouLi4KRGVpbiBGcmV1bmQgRGllZGVyIHRlaWx0IERpciBtaXQ6IGpvIHVuZCBpY2ggYXVjaApEdSB0ZWlsc3QgWCBtaXQ6IGd1dCB6dSB3aXNzZW4gOikpCkRlaW4gRnJldW5kIERpZWRlciB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4KRGVyIFdhbmRsZXIgd2FiZXJ0IG5hY2ggT3N0ZW4uCi4uLgoKCk1pZXplIC0gaGF0IHZpZWwgU3Bhc3MgbWl0IGRlbSBXYW5kbGVyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTUctUmVjaG5lci1VbXp1ZyB1bmQgU3BlbmRlbmF1ZnJ1ZiAoU2lsdmFuYSwgMjYuIE1hciAxOTk5LCAwMDoxMjowNSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9OTIyMjA1NDQzIHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD05MjIyMDU0NDMKV2VubiB3aWVkZXIgZWluZSBwYXNzZW5kZSBUb2Rlc3NlcXVlbnogenVtIFNwZW5kZW5jb3VudGRvd24gZ2VicmF1Y2h0CndpcmQsIHNhZ3QgQmVzY2hlaWQuIEljaCBoYWV0dCBMdXN0IG1hbCB3aWVkZXIgd2FzIGtvbnN0cnVrdGl2ZXMKenUgbWFjaGVuLi4uIDopCgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFuYXRvbCBpcyBuYSBTYXUgKE1vcmdvdGgsIDI2LiBNYXIgMTk5OSwgMDE6MDI6MzEpOgpbU2VoZXI6QW5hdG9sIG5pbW10IHNpZSBnZXJuZSwgbWFjaHQgamVtYW5kIG1pdD8gOildCgpNKiwgc3ByYWNobG9zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbW1tIChDb25uZXIsIDI2LiBNYXIgMTk5OSwgMDE6MDU6NDApOgo+IEhpYmJlbGlnIGRlbmt0ICAgLiBvIE8gKG1hbCB3aWVkZXIgbmVuIGJpc2NoZW4gdGVtcGVsc2NoYWVuZGVuIGdlaGVuLi4uLi4pCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW1tLi4uIChTb3lvLCAyNi4gTWFyIDE5OTksIDA2OjE1OjIwKToKTGlhcmEgc2FndDogb2sga29tbXN0ZSBtaXQ/CkxpYXJhIGdpYnQgbmljaHQgYXVmIHVuZCBnZWh0IHdlaXRlciBhdWYgZGllIFRvaWxldHRlLgoKbmEgZGFubi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhtbW0uLi4gKE1vcmdvdGgsIDI2LiBNYXIgMTk5OSwgMDk6MzQ6NDApOgp+IyEgcm49U295byBydD05MjI0Mjg5MjAgcmc9c2NobWFycm4KfiMhIHRpZD05MjI0Mjg5MjAKSXMgZG9jaCBnYW56IGtsYXIsIHNpZSBpcyBzaWNoIGRpZSBOYXNlIHB1ZGVybiA7LSkpCgpNb3Jnb3RoIGRlbmt0IC4gbyBPIChmcmF1ZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1HLVJlY2huZXItVW16dWcgdW5kIFNwZW5kZW5hdWZydWYgKEtleSwgMjYuIE1hciAxOTk5LCAxMDo1NDoxNSk6Cn4jISBybj1TaWx2YW5hIHJ0PTkyMjQwNzEyNSByZz1zY2htYXJybgp+IyEgdGlkPTkyMjIwNTQ0MwpMdXN0IHdhcyBrb25zdHJ1a3RpdmVzIHp1IG1hY2hlbj8gOikKCipncmlucyogTG9zIGxvcyBUYW5qaWFuIGFuc2NobGllc3NlbiA7KQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXR0ZSBXaXJrdW5nIChNb3Jnb3RoLCAyNi4gTWFyIDE5OTksIDEyOjA4OjAyKToKTGFyYXIgZHJ1ZWNrdCBpaHIga2xlaW5lcyBTY2hhZiwgc2NobGllc3N0IGRpZSBBdWdlbiB1bmQgbGFlY2hlbHQuClNoYXJpYSBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgU2hhcmlhLgpTaGFyaWEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGFzIHNhZ2VuIHNpZSBhbGxlIChMZWlibml6LCAyNi4gTWFyIDE5OTksIDEzOjAyOjQzKToKU3RyYWhsZW50b2QgbGVndCBzaWNoIGluIGRhcyBncm9zc2UgYmxhdWUgQmV0dC4KU3RyYWhsZW50b2Qgc2FndDogVG9sbGVzIEJldHQhClN0cmFobGVudG9kIHNhZ3Q6IElzdCBlaWdlbnRsaWNoIG5pY2h0IG1laW5lIEFydCwgaW4gZnJlbWRlciBGcmF1ZW4gQmV0dGVuClN0cmFobGVudG9kIHNhZ3Q6IHJ1bXp1d3VlaGxlbi4KCkxlaWJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1HLVJlY2huZXItVW16dWcgdW5kIFNwZW5kZW5hdWZydWYgKENhdHdlYXpsZSwgMjYuIE1hciAxOTk5LCAxMzoxODo0MCk6Cn4jISBybj1TaWx2YW5hIHJ0PTkyMjQwNzEyNSByZz1zY2htYXJybgp+IyEgdGlkPTkyMjIwNTQ0MwpXYXJ1bSBuaWNodCA6KQoKSWNoIGhhYiBhdWNoIHNjaG9uIGRpZSBhbHRlIGdlc3VjaHQsIGxlaWRlciBhYmVyIG5pY2h0IHdpZWRlZ2VmdW5kZW4uLi4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIG1pdCBWZXJ6b2VnZXJ1bmcgKE1vcmdvdGgsIDI2LiBNYXIgMTk5OSwgMTQ6NTQ6MjYpOgpbVG9kOkxhcnNdIEVpbiBaaWVnZW5kYWVtb24gaGF0IGdlcmFkZSBQZXJ0aW5heGUgdW1nZWJyYWNodC4KW1RvZDpFaW4gWmllZ2VuZGFlbW9uXSBJY2ggd2VyZGUgRGVpbiBCbHV0IGRlciBoZWlsaWdlbiBaaWVnZSBvcGZlcm4uIApNeXRob3MgcnVmdDogbmVpbgoKMiBNaW51dGVuIHNwYWV0ZXIKCltUb2Q6TGFyc10gRWluZSBSaWVzZW5zcGlubmUgaGF0IGdlcmFkZSBNeXRob3MgdW1nZWJyYWNodC4KW1RvZDpFaW5lIFJpZXNlbnNwaW5uZV0gTXl0aG9zIGFscyBBYmVuZGVzc2VuIHdhciBnYXIgbmljaHQgbWFsIHNjaGxlY2h0LiBEYXJmCltUb2Q6RWluZSBSaWVzZW5zcGlubmVdIGljaCBqZXR6dCBlbmRsaWNoIG1laW4gVmVyZGF1dW5nc3NjaGxhZWZjaGVuIGhhbHRlbj8KW1RvZDpFaW5lIFJpZXNlbnNwaW5uZV0gKmdlbmVydnQgZ3VjayohIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NobmVsbGVyIGFscyBkZXIgU2NoYXR0ZW5eaF5oXmheaF5oMnRpZSAoTW9yZ290aCwgMjYuIE1hciAxOTk5LCAxNTo1MTo0Nyk6ClJpbmdvciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKW01hZ2llcjpNb3Jnb3RoXSBoaSB0aWFtYWsKVGlhbWFrICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogdGVsZXBvcnQgKEFuYXRvbCwgMjYuIE1hciAxOTk5LCAxNzoxODo1Mik6Cn4jISBybj1Ob25uZSBydD05MjI0NjA0MTMgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9OTIyNDU5ODMyCi0+IE5vbm5lLCBnbHVlY2tsaWNoIGluIGRlciBzY2h3YWVjaHN0ZW4gYWJlciBzdGltbWlnc3RlbiBHaWxkZS4KCkR1IGJpc3QgZG9vZmVyIGFscyBkZXIgU2hlcmlmZiBlcmxhdWJ0IC0gc2VpIGZyb2gsIGRhc3MgZXIgc28gc2VsdGVuIGRhIGlzdC4KCkFuYXRvbCwgZmFzc3QgZXMgbmljaHQgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYWhyZSBXb3J0ZSAuLi4gKE1haGF0bXUsIDI2LiBNYXIgMTk5OSwgMTc6MjE6NDIpOgoKW0JlaWxlaWQ6QWxpbmUgZnVlaGx0IHNpY2ggbWFsIHdpZWRlciBhbHQgPDE3OjE3OjM4Pl0KW0JlaWxlaWQ6QWxpbmVdIFdlbm4gYXVjaCBuaWNodCBzbyBhbHQgd2llIEFuYXRvbCA8MTc6MTc6NTA+XQoKRXR3YXMgYXVzIGRlbSBadXNhbW1lbmhhbmcgZ2VyaXNzZW4gc2NoZWludCBlcyBkb2NoIGFuenVkZXV0ZW4sIGRhcwpub2NoIGFuZGVyZSBMZXV0ZSBBbmF0b2wgZnVlciBhbHQgaGFsdGVuLiBVbmQgYWx0ZSBMZXV0ZSBuZWlnZW4gYXVjaAp6dSBTZW5pbGl0YWV0IHVuZCBTdGFycnNpbm5pZ2tlaXQuIEF1Y2ggc2lua3Qgc293b2hsIGlocmUgVG9sZXJhbnotCnNjaHdlbGxlIHdpZSBhdWNoIGlocmUgRmFlaGlna2VpdCBkZW4gSGFybiB6dSBoYWx0ZW4uCgpXYXMgbWFuIGphIGFsbGVzIGFuIEFuYXRvbCBiZW9iYWNodGVuIGthbm4gLi4uCgpHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBobW1tLi4uIChBc21vZGlzLCAyNi4gTWFyIDE5OTksIDIzOjA3OjI4KToKfiMhIHJuPU1vcmdvdGggcnQ9OTIyNDQwODgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIyNDI4OTIwClNpY2hlciwgYWJlciB3YXMgcHVkZXJ0IHNpY2ggU295byA/IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogaG1tbS4uLiAoU295bywgMjcuIE1hciAxOTk5LCAwMDo0MjowOCk6Cn4jISBybj1Bc21vZGlzIHJ0PTkyMjQ4OTY0OCByZz1zY2htYXJybgp+IyEgdGlkPTkyMjQyODkyMApEYXMgd3VlcmRldCBpaHIgZ2VybmUgd2lzc2VuIDspKQoKU295byAtIHNjaG5lbGwgc2VpbmUgUHVkZXJkb3NlIHdlZ3BhY2tlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtlaW4gV3VuZGVyIC4uLiAoRWlzaSwgMjcuIE1hciAxOTk5LCAwOTozNjo1NCk6CgpQZXJ0aW5heGUgc2FndDogaWNoIGhhYiBkaWVzZSB3b2NoZSA4IG5ldWUgcmVjaG5lciBnZWtyaWVndCB1bmQgbXVzc3RlIGRhcwpQZXJ0aW5heGUgc2FndDogZ2FuemUgbmV0eiBuZXUgbWFjaGVuClBlcnRpbmF4ZSBmYWVuZ3QgcGxvZXR6bGljaCBhbiB6dSB6dWNrZW4uClBlcnRpbmF4ZSBmdWNodGVsdCBtaXQgZGVuIEhhZW5kZW4gaGVydW0sIHVuZCBzcHJpY2h0IHNlbHRzYW1lIFdvcnRlLgpQbG9ldHpsaWNoIHNjaGVpbmVuIGlocmUgc2VsdHNhbWVuIEFuZmFlbGxlIHdlZyB6dSBzZWluLgoKRWlzaSwgaGF0IGF1Y2ggdmllbCBTdHJlc3MgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhtbSAoS2FtZWxvdCwgMjcuIE1hciAxOTk5LCAxODoyMDoxNyk6CkRhcyBBYmJpbGQgS2FtZWxvdHMgZ2VodCBuYWNoIFN1ZWRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCBoYWJzIG5pZSBmdWVyIG1vZWdsaWNoIGdlaGFsdGVuLi4uLiAoTW9yZ290aCwgMjcuIE1hciAxOTk5LCAxODo0MjoyMSk6ClBhZHJlaWMga2FubiBzb2dhciB3aXR6aWcgc2Vpbi4uLgoKUGFkcmVpYyBzYWd0OiBFaWNoZW4sIGtlbm5zdCBEdSBkaWUgZ3Jvc3NlIFNhZXVsZSBoaWVyIGluIERqZWxpYmVieT8KRWljaGVuIHNjaHVldHRlbHQgZGVuIEtvcGYuClBhZHJlaWMgc2FndDogZ2VoIGRpZSBtYWwgc3VjaGVuIHVuZCB3ZW5uIGR1IHNpZSBnZWZ1bmRlbiBoYXN0LCBrYW5uc3RlClBhZHJlaWMgc2FndDogc3R1bmRlbmxhbmcgYXVmIHNpZSBlaW5yZWRlbiwgb2s/Ci4uLi4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIGhhYnMgbmllIGZ1ZXIgbW9lZ2xpY2ggZ2VoYWx0ZW4uLi4uIChOb3Zhc3Rvcm0sIDI3LiBNYXIgMTk5OSwgMTk6NDk6MjIpOgp+IyEgcm49TW9yZ290aCBydD05MjI1NjAxNDEgcmc9c2NobWFycm4KfiMhIHRpZD05MjI1NjAxNDEKSGFzc3UgZGEgbmljaCBkaWUgYmVpZGVuIFByb3RhZ29uaXN0ZW4gdmVyd2VjaHNlbHQgPwoKICAgICBOb3ZhLCBpbiBFcmlubmVydW5nZW4ga3JhbWVuZAoKCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbnNpY2h0IG9kZXIgRmVobGxlaXR1bmc/IChOZXZvaywgMjcuIE1hciAxOTk5LCAyMDoxMDoxNSk6CkxpZ2h0bmluZyBzYWd0OiBEb25uZXIgaXMgYWJzb2x1dCBnZWlsLCBibGl0eiBnZWh0IHNvCgpEYSBmcmFndCBtYW4gc2ljaCwgd2FydW0gZXIgc2ljaCBuaWNodCBUaHVuZGVyIG5lbm50ICpnKgoKTGVtYm9sZCBQcmllc3RlciBlYmVuLi4uLgoKTmV2b2ssIGRlciBpbiBLYW5kcmlzIE5hbWVuIHN0cmVpdGV0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIG5hY2ggYmFraHRhcnJocyB0b2QgKEJpcmR5LCAyOC4gTWFyIDE5OTksIDAwOjAwOjM5KToKRGllIExldXRlIGF1cyBkZXIgZXJzdGVuIFJlaWhlIHNpbmQgZW50dGFldXNjaHQsIGRhc3MgaWNoIGlobiBhdXMgZGVyIDQuIFJlaWhlCmdla2lsbHQgaGFiZS4KSWNoOiBJY2ggaGFldHRlIGF1Y2ggbnVyIG5vY2ggZWlubWFsIHZlcmxldHplbiBrb2VubmVuLCBkYW5uIGhhZXR0ZSBpY2ggZGVuCkJsb2NrIGJlbnV0emVuIG11ZXNzZW4uCkFlbmVhczogQmxvY2sgPyBBY2ggZGVuIGJlbnV0eiBpY2ggbmljaHRtYWwuCkljaDogV2llc28gaGFzdCBEdSBkaWUgUXVlc3QgZGFubiBnZW1hY2h0ID8KQWVuZWFzOiBOYSB3ZWdlbiAuLi4gRlAgPwpDYWtleTogQWNoIFNjaGVpc3MgZG9jaCBhdWYgZGVuIEJsb2NrLCBkZW4gYnJhdWNoc3RlIG5pY2gsIER1IG1hY2hzdCBkaWUgUXVlc3QKd2VnZW4gQVAgdW5kIEZQICEgV2VnZW4gZGVyIFRvcGxpc3RlICEhCkFsbGUgZ3JpbnNlbiB1bmQgbGFjaGVuLgoKTmFqYSwgaXMgc2Nob24gemllbWxpY2ggc3BhZXQgdW5kIG5hY2ggNG1hbCBoZXoga2lsbGVuIHdpcmQgc3RlaWd0IGRpZQpFcndhcnR1bmdzaGFsdHVuZywgZW5kbGljaCBhdWNobWFsIGVpbmVuIHdpY2h0aWdlbiBLaWxsIHp1IGtyaWVnZW4uIFZpZWxsZWljaHQKZGFzIFRlYW0gYXVzZHVlbm5lbiA/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbmV1bGljaCBuYWNoIGJha2h0YXJyaHMgdG9kIChBbmF0b2wsIDI4LiBNYXIgMTk5OSwgMDA6NTM6MDIpOgp+IyEgcm49QmlyZHkgcnQ9OTIyNTc5MjM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIyNTc5MjM5CkRhcyBlaW56aWcgd2ljaHRpZ2UgYW4gZGVtIEFydGlrZWwgaXN0IGRvY2ggZGllIEF1c3NhZ2U6IAogIkhleSBpaHIgV3Vyc3RpZXMsIGljaCBoYWJlIGRlbiBEUkFDSEVOR09UVCBnZWtpbGx0ISBLbmlldCBuaWVkZXIhIgoKRWljaHQgc2VpbmUgTWVzc2VpbnJpY2h0dW5nZW4gbmV1LApBbmF0b2wgOm8pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaWNoIHd1c3N0ZSBlcy4uLiAoU29yY2VyZXIsIDI4LiBNYXIgMTk5OSwgMDU6Mzk6NDUpOgpiZXNjaHJlaWJlIHphdWJlcnN0YWIgKG1pdCBtYWdpc2NoZW0gYXVnZSkgOgpbLi4uXQpEaWVzZSBXYWZmZSBpc3QgemllbWxpY2ggc2NobGVjaHQsIGxlaWNodCB1bmQgc2VociBiaWxsaWcuClsuLi5dCgpJY2ggd3Vzc3RlIGVzIGltbWVyLCBkYXMgZGFzIERpbmcgbml4IHRhdWd0IHVuZCBudXIgQXJiZWl0IG1hY2h0Li4uCgpTb3JjZXJlciAtIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaWNoIHd1c3N0ZSBlcy4uLiAoTWluZGJsYWRlLCAyOC4gTWFyIDE5OTksIDEzOjA2OjAyKToKfiMhIHJuPVNvcmNlcmVyIHJ0PTkyMjU5OTU4NSByZz1zY2htYXJybgp+IyEgdGlkPTkyMjU5OTU4NQpEYXMgaXN0IG51ciBnZXNjaGlja3RlIFRhcm51bmchOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggKEthbWVsb3QsIDI4LiBNYXIgMTk5OSwgMTg6Mzc6NDEpOgpFaW4gQWJiaWxkIEthbWVsb3RzIHNhZ3Q6IEljaCBoYWJlIEFuZ3N0LiBJY2ggZmx1ZWNodGUuCkRhcyBBYmJpbGQgS2FtZWxvdHMgZ2VodCBuYWNoIFN1ZWRvc3Rlbi4Ka3VyaWVyZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIG5vY2ggbWFsIG5ldWxpY2ggKEthbWVsb3QsIDI4LiBNYXIgMTk5OSwgMTg6NTA6MDQpOgpncnVtbWVsCkR1IGhvZXJzdCBlaW4gR3JvbGxlbi4gRGVyIFZ1bGthbiBpc3QgbWFsIHdpZWRlciBha3Rpdi4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIGhhYnMgbmllIGZ1ZXIgbW9lZ2xpY2ggZ2VoYWx0ZW4uLi4uIChQYXRyeW4sIDI4LiBNYXIgMTk5OSwgMjA6NDM6NDkpOgp+IyEgcm49TW9yZ290aCBydD05MjI1NjAxNDEgcmc9c2NobWFycm4KfiMhIHRpZD05MjI1NjAxNDEKd2llc28gd2l0emlnPyBwYWRyZWljIHJlaWNodCBudXIgbGViZW5zZXJmYWhydW5nZW4gd2VpdGVyOgppY2ggc2NoYWV0eiBtYWwsIGRpZSBzYWVsZSB3dXJkZSBkdXJjaCBpaG4gbWF4aW1hbCBhYmdlaGFlcnRldCB1bmQgYXVmCmlocmUgYXVmZ2FiZSB2b3JiZXJlaXRldC4uLgoKLS0tLS0tCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc28gaXN0cyBicmF2IChBcHN1LCAyOS4gTWFyIDE5OTksIDAzOjM1OjA4KToKUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEthcmljLgpEdSBzYWdzdDogdXBwcyBpY2ggd2FyIHZlcmdpZnRldApbVGVhbSAxOl0gS2FyaWMgaGF0IGRhcyBUZWFtIHZlcmxhc3Nlbi4gCltUZWFtIDE6XSBBcHN1IGhhdCBkaWUgVGVhbWxlaXR1bmcgdWViZXJub21tZW4uIApbVGVhbSAxOl0gRGFzIFRlYW0gbG9lc3Qgc2ljaCBhdWYuIApEdSB2ZXJsYWVzc3QgZGFzIFRlYW0uCkthcmljIGdlaHQgaW1tZXIgYW4gZGVyIFdhbmQgbGFuZyBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLbGVyaWtlciAoTXR2LCAyOS4gTWFyIDE5OTksIDExOjU5OjQ4KToKRHUgc2Fnc3Q6IGhpCk5vbm5lIHNhZ3Q6IHRhY2gKTm9ubmUgc2FndDogaGFzdGUgbiBzZWlsIGZ1ZXIgbWljaCBiZWk/CkR1IHNhZ3N0OiB3aWUgZ2luZyBkYXMgbWl0IHphdWJlcmVyIGFlcmdlcm4gOikKTm9ubmUgc2FndDogb2RlciBrYW5uc3RlIHNvbm4gcG9ydGFsPwpEdSBncmluc3QuCkR1IHNhZ3N0OiBiZWlkZXMgOikKRHUgc2Fnc3Q6IGFiZXIgaWNoIGJpbiBqYSBudXIgc28gZWluIGRvb2ZlciB6YXViZXJlcgpOb25uZSBydXRzY2ggYXVmIEtuaWVlbiB2b3IgRGlyIHJ1bS4KTm9ubmUgc2FndDogaWNoIGxlaXN0ZSBhYmJpdHRlCk5vbm5lIGdyaW5zdC4KRHUgc2Fnc3Q6IG9rIDopCk5vbm5lIHNhZ3Q6IGRhbmtlCgoKbmEgYWxzbywgZXMgZ2VodCBkb2NoLCBhdWNoIGtsZXJpa2VyIGtvZW5uZW4gbWFsIGJpdHRlIHNhZ2VuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGphIChLYXJhbSwgMjkuIE1hciAxOTk5LCAxNjoyOToyOSk6CltTZWhlcjpBbGluZSBzY2hhdXQgZ2FueiB1bnNjaHVsZGlnXQpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KCi0tCkthcmFtIChtb2VjaHRlIG5pY2h0IHZvbiBBbGluZSdzIGJvZXNlbSBCbGljayBnZXRyb2ZmZW4gd2VyZGVuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaXN0IGRhcyBlaW4gQnVnPyAoTGVuYSwgMjkuIE1hciAxOTk5LCAxNzozMjo1OSk6Cj4gaHVlcGYgbGVuYQpEdSBodWVwZnN0IHVtIExlbmEgaGVydW0uCkxlbmEgaHVlcGZ0IHVtIERpY2ggaGVydW0uCkRlaW5lIFNjaHVoZSBnbHVlaGVuIGt1cnogYXVmIHVuZCBoZWlsZW4gRGljaCBlaW4gd2VuaWcuCi4uLgp3ZW5uIG1pY2ggc293YXMgb2VmdGVycyBoZWlsdCwgYnJhdWNodHMgbnVyIHp1IHNhZ2VuLCBkYW5uIGh1ZXBmIGljaCBOT0NICm9lZnRlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBpc3QgZGFzIGVpbiBCdWc/IChBbHBoYSwgMjkuIE1hciAxOTk5LCAxODowMzozMSk6Cn4jISBybj1MZW5hIHJ0PTkyMjcyODc3OSByZz1zY2htYXJybgp+IyEgdGlkPTkyMjcyODc3OQpFeWUsIHNvbm5lIEZlYXR1cmVzIHNldHp0IG1hbiBkb2NoIG5pY2ggaW5uZSBNUEEgLSAgZGEga29tbXQgZG9jaCBudXIgZWluCnVlYmVyZWlmcmlnZXIgRSBhdWYgZGllIElkZWUsIGRhcyBEaW5ncyBhdXN6dWJhdWVuLkZyZXVuZHNjaGFmdCBrYW5uIG1hbiBzY2hvbgpuaWNodCBtZWhyIG1pdCBzaWNoIHNlbGJlciBzY2hsaWVzc2VuIDooCkFscGhhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJlbmEga2FubiBnZWZhZWhybGljaCBzZWluLi4gKEthcmljLCAyOS4gTWFyIDE5OTksIDE5OjE5OjM5KToKQXJlbmFkdWVsbCB6d2lzY2hlbiBTaW51cyB1bmQgRnJlcmluLi4KCkR1IHRlaWxzdCBGcmVyaW4gbWl0OiBpcyBkZXIga2FtcGYgZXJuc3RoYWZ0ID8KRnJlcmluIHRlaWx0IERpciBtaXQ6IG5vZSAuLgpbVG9kOkxhcnNdIFNpbnVzIGhhdCBnZXJhZGUgRnJlcmluIHVtZ2VicmFjaHQuCltCZWlsZWlkOlNpbnVzXSBGcmVyaW4sIHdhcyBtYWNoc3QgZHUgZGVubiA/Pz8KCmFsc28gd2VubiBkYXMgbmljaCBlcm5zaGFmdCBpcz8gOykKS2FyaWMKcC5zOiBuZSBzaW51cyAuLmQuaCBTaW51cyB3YXMgbWFjaHN0IGR1IGRlbm4/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbHRlciBTYWNrPyEgKFRpYW1haywgMjkuIE1hciAxOTk5LCAyMjo1MjozMyk6CltTZWhlcjpXb29keV0gQWNodHVuZy4gRGllIEtsZWludGVpbGUga29lbm5lbiB2b24gS2luZGVybiB1bnRlciAzIEphaHJlbgpbU2VoZXI6V29vZHldIHZlcnNjaGx1Y2t0IHdlcmRlbi4KW1NlaGVyOk1vcmdvdGhdIGFhYWFyZ2ggKip6aXR0ZXIqKgoKVGlhbWFrIG1hY2h0IHNpY2ggc28gc2VpbmUgR2VkYW5rZW4genVtIEFsdGVyIGRlciBNdWRkZXIgaGllciAuLi4gXTotPgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2VyYWRlIGluIGRlciBFaXNtaW5lIChEYXJrd2luZywgMjkuIE1hciAxOTk5LCAyMzoyMzoyOCk6ClRhbWVsaSBzYWd0OiBoYXVlbWVyIG1hIGRyYXVmIGxvcwpEdSBzYWdzdDogam8gOikKIEVpbiBFaXNlbGZlbndhZWNodGVyIGtvbW10IGFuLgogRWluIEVpc2VsZmVud2FlY2h0ZXIga29tbXQgYW4uCgpoZWhlIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNdWFodWFodWFoIDopIChBbmF0b2wsIDMwLiBNYXIgMTk5OSwgMDM6NDk6MDYpOgpCZWxnYXJpYWQgdGVpbHQgRGlyIG1pdDogc2FnIG1hbCB3YXJ1bSBrb21tc3QgZHUgbmljaHQgYmVpIHR3ZXI/CkR1IHRlaWxzdCBCZWxnYXJpYWQgbWl0OiBXZWlsIGljaCBaYXViZXJlciBiaW4sIER1IFBhcHBuYXNlIDopKQoKKlNDSFJFSSogRGFiZWkgaXN0IGVyIGRvY2ggZWluIEVsZi4uLiA6KQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE11YWh1YWh1YWggOikgKEthcmljLCAzMC4gTWFyIDE5OTksIDA0OjA0OjQxKToKfiMhIHJuPUFuYXRvbCBydD05MjI3NjU3NDYgcmc9c2NobWFycm4KfiMhIHRpZD05MjI3NjU3NDYKZGFzIGhlaXNzdCBuaWNoIDogKlNDSFJFSSogRGFiZWkgaXN0IGVyIGRvY2ggZWluIEVsZi4uLiA6KQoKZGFzIGhlaXNzdCA6IEViZW4gd2VpbCBlcyBlaW4gRWxmIGlzdCA7KQoKS2FyaWMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdy4uLiAoQW5hdG9sLCAzMC4gTWFyIDE5OTksIDA0OjE1OjI1KToKW1RydmVzOlNreV0gZGVyIGRhbmsgZ2lsdCBtZWluZW4gYXVzbGJpbGRlcm4KW1RvZDpMYXJzXSBIb2dvIGhhdCBnZXJhZGUgU2t5IHVtZ2VicmFjaHQuCgpNYW4gc29sbCBkZW4gQXVzYmlsZGVyIG5pY2h0IHZvciBkZW0gQWJzY2hsdXNzIGxvYmVuLi4uCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFhYWFoamEgLi4uLiAoTGlhcmEsIDMwLiBNYXIgMTk5OSwgMDU6MTU6MzApOgpOZXVsaWNoIGluIGRlciBHbGFzZWJlbmUgLi4uCgpFaW4gR2xhc3Ryb2xsIGtvbW10IGFuLgpFaW4gR2xhc3Ryb2xsIGtvbW10IGFuLgpFaW4gd2FiZXJuZGVzIEdlYmlsZGUgZXJzY2hlaW50IHVycGxvZXR6bGljaCB2b3IgRGlyLgpFaW4gV2FuZGxlciBsYWV1ZnQgdm9sbCBnZWdlbiBkZW4gU3BpZWdlbCBpbSBPc3Rlbi4KQWJlciBpcmdlbmR3YXMga29tbXQgRGlyIGRhYmVpIHNlbHRzYW0gdm9yLgpFaW4gV2FuZGxlciBsYWV1ZnQgdm9sbCBnZWdlbiBkZW4gU3BpZWdlbCBpbSBTdWVkZW4uCkFiZXIgaXJnZW5kd2FzIGtvbW10IERpciBkYWJlaSBzZWx0c2FtIHZvci4KRGVyIFdhbmRsZXIgd2FiZXJ0IG5hY2ggV2VzdGVuLgoKTGlhcmEsIGdvZW5udCBpaG0gZGllc2UgRXJmYWhydW5nIHZvbiBIZXJ6ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYSBtdXNzIGljaCBhYmVyIG5vY2ggVklFTCB1ZWJlbi4gKExlbmEsIDMwLiBNYXIgMTk5OSwgMDk6MTE6MTEpOgo+IHNjaGFldHogZW50ZQpEdSB3aXJmc3QgZWluZXIgRW50ZSBlaW5lbiBhYnNjaGFldHplbmRlbiBCbGljayB6dSB1bmQga29tbXN0IHp1IGZvbGdlbmRlcgpFcmtlbm50bmlzOgpWZXJnbGljaGVuIG1pdCBEaXIgaXN0IGRpZSBFbnRlIGVpbmUgdmllbCBiZXNzZXIgYWxzIER1IGdlc2NodWV0enRlIHVuZCB2aWVsCmJlc3NlciBiZXdhZmZuZXRlIGViZW5idWVydGlnZSBHZWduZXJpbi4KU2llIGlzdCBlaWdlbnRsaWNoIGdhbnogbmV0dC4gQXVzc2VyZGVtIGlzdCBzaWUgc3RvY2tudWVjaHRlcm4uCkRpZSBFbnRlIHdlaXN0IHdlZGVyIFJlc2lzdGVuemVuIG5vY2ggd3VuZGUgUHVua3RlIGF1Zi4KCkxlbmEsIHZlcm11dGVuZCwgZGFzcyBkaWVzIHp1IGFsbGVtIFVlYmVyZmx1c3Mgd29obCBub2NoIGVpbmUgS2FyYXRlLWZhZWhpZ2UKRW50ZSBpc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWFhYWhqYSAuLi4uIChBbGluZSwgMzAuIE1hciAxOTk5LCAxMToxODowMSk6Cn4jISBybj1MaWFyYSBydD05MjI3NzA5MzAgcmc9c2NobWFycm4KfiMhIHRpZD05MjI3NzA5MzAKCj4gbGllcyB0YWZlbApBdWYgZGVyIEdlZGVua3RhZmVsIHN0ZWh0OgorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKfCBIaWVybWl0IGdlZGVua2VuIHdpciBkZW4gdW52b3JzaWNodGlnZW4gTGV1dGVuLCBkaWUgbmljaHQgZ2VzY2hpY2t0IGdlbnVnICB8Cnwgd2FyZW4sIHVtIGRpZSB1bmhlaW1saWNoZSBUb2Rlc2JydWVja2UgdW5iZXNjaGFkZXQgenUgdWViZXJxdWVyZW4uICAgICAgICAgfAp8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKfCBBbSAyOC4gTWFyIHVtIDA2OjI5OjQ1IHN0dWVyenRlIGVpbiBXYW5kbGVyIDAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CnwgICAgYWIgdW5kIGhhdHRlIG5hY2hoZXIgemllbWxpY2hlIEtvcGZzY2htZXJ6ZW4uCgoKQWxpbmUgZ3JpbnN0IGF1Y2ggdWViZXIgZGVuIFdhbmRsZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxlYmVuc2VyZmFocnVuZyAoR3JpbW1ib3JuLCAzMC4gTWFyIDE5OTksIDEyOjEwOjU3KToKSWNoIHdhciBoZXV0ZSBkYXMgZXJzdGUgbWFsIGluIGVpbmVtIG9lZmZlbnRsaWNoZW4gV2FzY2hzYWxvbi4gWnUgbWVpbmVyCmdyb3NzZW4gVWViZXJyYXNjaHVuZyB3YXIgZGEgamVkb2NoIGtlaW5lIHNjaG9lbmUgRnJhdSwgZGllIG1pciBpaHJlIGx1ZnRpZ2UKVW50ZXJ3YWVzY2hlIHp1IEZ1ZXNzZW4gZ2VsZWd0IGhhdC4gVW5kIGF1Y2gga2VpbiBrbmFja2lnZXIgS2VybCwgZGVyIHNlaW5lCkplYW5zIGF1c3pvZy4KCkljaCB3ZXJkZSBkYXMgR2VmdWVobCBuaWNodCBsb3MgZGFzcyBkaWUgV2VyYnVuZyBsdWVndC4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExlYmVuc2VyZmFocnVuZyAoTWFoYXRtdSwgMzAuIE1hciAxOTk5LCAxMjoxMjoxMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTIyNzk1ODU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIyNzk1ODU3CkR1IHdhcnN0IHp1ciBmYWxzY2hlbiBaZWl0IGRhLCBHcmltbWJvcm4uIEFjaHRlIGF1ZiBLYW1lcmFzLgoKTWFoYXRtdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVmVyc2NocmVja3QuLi4gKFR1bml4Z3V0LCAzMC4gTWFyIDE5OTksIDEyOjU3OjAwKToKSHVlcGZlciAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbQWxsZ2VtZWluOlppbGx1c10gaHVodSBIdWVwZmVyIDopCltBbGxnZW1laW46VHVOaXhHdXRdIEh1aHUgSHVlcHBhIQpIdWVwZmVyICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKJ3MgS2FyYXRlLVp3ZXJjaGxlIC0gaXMgc2ljaCBrZWluYSBTY2h1bGQgYmV3dXNzdC4gWklMTFVTPz8hPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhqYSAoQWxpbmUsIDMwLiBNYXIgMTk5OSwgMTQ6MTM6MTEpOgoKdW50IHdhZWNodGVyCgpEaWVzZXIgV2FlY2h0ZXIgaXN0IGVpbiBEdW5rZWxkYWVtb24gZGVyIHVlYmVsc3RlbiBTb3J0ZS4gU2VpbmUKdW5kdXJjaGRyaW5nbGljaGUgUnVlc3R1bmcgdW5kIGRhcyByaWVzaWdlIFNjaHdlcnQgc2FnZW4gRGlyIGVpbmRydWNrc3ZvbGwsCmRhc3MgbWFuIHNpY2ggbWl0IGRpZXNlbSBEYWVtb24gYmVzc2VyIG5pY2h0IGFubGVndC4KRXIgaXN0IGFic29sdXQgZml0LgpFciB0cmFlZ3QgYmVpIHNpY2g6CkVpbmUgRHVua2VsbWFnaWVydWVzdHVuZyAoYW5nZXpvZ2VuKS4KRWluIERhZW1vbmVubWVzc2VyIChnZXp1ZWNrdCkuCgpXYXJ1bSB6dWVja3QgZXIgZGFubiBudXIgZGFzIE1lc3Nlciwgd2VubiBlciBlaW4gcmllc2lnZXMgU2Nod2VydCBiZWkgc2ljaApoYXQ/CmZyYWd0IHNpY2gKCkFsaW5lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWhqYSAoQW5ha2luLCAzMC4gTWFyIDE5OTksIDE0OjE2OjE2KToKfiMhIHJuPUFsaW5lIHJ0PTkyMjgwMzE5MSByZz1zY2htYXJybgp+IyEgdGlkPTkyMjgwMzE5MQoKV2VpbCBaYXJkb3ogaXJnZW5kd2FubiBzZWluZW4gRGFlbW9uZW4gYXVjaCBhbmRlcmUgV2FmZmVuIGdlZ2ViZW4gaGF0CihmdWVyIGRpZSBhcm1lbiBLYWVtcGZlcikgdW5kIHdvaGwgZGllIExhbmdiZXNjaHJlaWJ1bmcgbmljaHQKZ2VhZW5kZXJ0IGhhdCAoYnp3LiBkaWUgaXN0IG5pY2h0IGR5bmFtaXNjaCA6KS4KCkFuYWtpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWhqYSAoQm9pbmcsIDMwLiBNYXIgMTk5OSwgMTQ6MTc6MjIpOgp+IyEgcm49QW5ha2luIHJ0PTkyMjgwMzM3NiByZz1zY2htYXJybgp+IyEgdGlkPTkyMjgwMzE5MQpJY2ggZ2xhdWIgZWhlciwgZGFzcyBEYWVtb25lbiBlaW5mYWNoIG5pY2h0IHNvIGhlbGxlIHNpbmQgLi4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFoamEgKE5vdmFzdG9ybSwgMzAuIE1hciAxOTk5LCAxNDoxODowNCk6Cn4jISBybj1Cb2luZyBydD05MjI4MDM0NDIgcmc9c2NobWFycm4KfiMhIHRpZD05MjI4MDMxOTEKT2RlciBkaWUgWmF1YmVyZXIgenUgZG9vZiBzaW5kLCBlaW4gTWVzc2VyIHZvbiBuZW0gU2Nod2VydC4uLgogICAgIE5vdmEsIGR1Y2tlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFoamEgKEdyaW1tYm9ybiwgMzAuIE1hciAxOTk5LCAxNDoxOToxMyk6Cn4jISBybj1Ob3Zhc3Rvcm0gcnQ9OTIyODAzNDg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIyODAzMTkxCkhtbSwgd2VubiBlaW4ga2xlaW5lcyBNZXNzZXIgZnVlciBlaW5lbiBEYWVtb25lbiBlaW4gcmllc2lnZXMgU2Nod2VydCBpc3Qgc2FndApkYXMgZG9jaCBlaW5pZ2VzIHVlYmVyIGRpZSBHcm9lc3NlIGRlciBEYWVtb25lbiBhdXMuLi4KCkdyaW1tIlBhc3MgZG9jaCBhdWYgd28gRHUgaGludHJpdHRzdCEiYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERlciBkdXJzdGlnZSBXYW5kZXJlciAoR3JpbW1ib3JuLCAzMC4gTWFyIDE5OTksIDE0OjMxOjQwKToKfiMhIHJuPU11Y2tzIHJ0PTkyMjgwMzQ2NiByZz1wdWl6Cn4jISB0aWQ9OTIyODAzNDY2Ck1pdCBlaW5lbSBIdWJzY2hyYXViZXIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhtbW0uLi4uIChab29rLCAzMC4gTWFyIDE5OTksIDE5OjE5OjExKToKCltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIFN0ZXJiZXRlc3RpCltUb2Q6TGFyc10gdW1nZWJyYWNodC4KRGFzIFBhcnR5bW9uc3RlciBydWZ0OiBMZWlibml6IHNjaG1laXNzdCBlaW5lIFBhcnR5IQoKClpvb2sgZGVua3QgKHRzdHN0cy4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuc2VyIGtsZWluZXIgS2V5ICEgKFNpbnVzLCAzMS4gTWFyIDE5OTksIDA5OjU4OjI0KToKCiBTZWhlciBESUVCU1RBSEwhCiBTZWhlciBrbGFwcGUga2V5IQogU2VoZXIgd2FzIGRlbm4KIFNlaGVyIEhhaCEgSmV0enQgaGFiIGljaCBEaWNoIFpvb2sgOikgSmV0enQgZ2liYmV0IGtlaW4genVydWVjayBtZWhyIC4uLgogU2VoZXIgYWVoIC4uLiBuaW1tIGRpZSBNdWVuemVuIHdpZWRlciEgbG9zIGtsYXUgc2llISAsKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVuc2VyIGtsZWluZXIgS2V5ICEgKEtleSwgMzEuIE1hciAxOTk5LCAwOTo1ODo1OCk6Cn4jISBybj1TaW51cyBydD05MjI4NzQzMDQgcmc9c2NobWFycm4KfiMhIHRpZD05MjI4NzQzMDQKQVJHTCEKU2NoZWlzcyBmb3JtYXQKCktleSwgYm9lc2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggYmluIGR1cmNoISEhIChMZW5hLCAzMS4gTWFyIDE5OTksIDEwOjIyOjE2KToKPiBubgprZWluZSB1bmdlbGVzZW5lbiBBcnRpa2VsIGluIGRlciBNUEEuCj4gRWluIEJlaWZhbGxzc3R1cm0gYnJhbmRldCBpbSBEaWFtb25kcGFyayBhdWYuIFdhcyBkYSB3b2hsIHdpZWRlciBsb3MgaXN0PwoKOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxhdXRzdGFya2UgSGlsZmUicnVmZSIgKExlbmEsIDMxLiBNYXIgMTk5OSwgMTQ6MTM6NDUpOgogW1NlaGVyOktleV0gTGFzcyBtaWNoIHJhdXMhClZvbiBGZXJuZSBob2Vyc3QgRHUgZWluIGR1bXBmZXMgU2NobGFnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgcGFzc3QuLi4gKFR1bml4Z3V0LCAzMS4gTWFyIDE5OTksIDE0OjMzOjE4KToKW0FiZW50ZXVlcjpEcm9sbGldIGRhbm4gYmlzdCBkdWEgYXVjaCBrZWluIGxhbmdoYWFyaWdlciBib21iZW5sZWdlcgpBbHMgRHJvbGxpIGVpbmVuIE1vbWVudCB3ZWdndWNrdCwgc2NobmVpZGVzdCBEdSBlaW4gcGFhciBIYWFyZSBhYi4KRHJvbGxpIHZlcnd1c2NoZWx0IERlaW5lIEhhYXJlLgoKJ3MgS2FyYXRlLVp3ZXJjaGxlIC0gdW50ZXJ3ZWdzIGluIGVpbmVyIGhhYXJpZ2VuIE1pc3Npb24uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYmVpbSBTdGFtbXRpc2NoIChSb2NodXMsIDMxLiBNYXIgMTk5OSwgMTY6MTQ6MzMpOgpDYXQ6IChsaXN0ZXQgSG9iYmllcyBhdWYpIC4uLiBzY2h3aW1tZW4sIHJhZGZhaHJlbiAuLi4uCkFyaWFuYTogTmltbSBUYW1wb25zLCBkYW1pdCBkYXJmc3QgRHUgcmVpdGVuLCBzY2h3aW1tZW4gdW5kIHJhZGZhaHJlbgpDYXQ6IERpZSBzY2htZWNrZW4gc28gc2NobGVjaHQKQXJpYW5hOiBEdSBtdXNzdCBhdWNoIGRpZSBGb2xpZSBhYm1hY2hlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaGxlY2h0ZXIgUnVmIC4uLiAoR2xvaW4sIDMxLiBNYXIgMTk5OSwgMTg6NDg6MzQpOgpEYSBpc3QgbWFuIG1hbCBlaW4gaGFsYmVzIEphaHIgbmljaHQgZGEgdW5kIHRyb3R6ZGVtIG5vY2ggc293YXM6Cgo8VGF0b3J0OiBGZXVlcmViZW5lLCBoZWZ0aWcgaWRlbG5kPgpTbmlicmlsIHNhZ3Q6IGdsb2luIGlzIG1hIHdpZWRlciBzY2h1bGQKU25pYnJpbCBnZWh0IG5hY2ggV2VzdGVuLgpMUCAyMjYgICBNUCAxMTUKSGlnaHQgc2FndDogaW1tZXJub2NoCkhpZ2h0IGZsaWVndCBuYWNoIFdlc3Rlbi4KCkdhciBuaWNodCB3YWhyISBYZW5hZGEgd2FycyEgVW5kIHVlYmVyaGF1cHQhCgpHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWVoLCBqYSA6KSAoSmFzb25yaWdpZCwgMzEuIE1hciAxOTk5LCAxODo1MjowNSk6CkRlaW4gRnJldW5kIERhcmt3aW5nIHRlaWx0IERpciBtaXQ6IGFyZ3MuLi4gRGFya3dpbmcgcHVsdmVyc2llcnQgRGljaC4KRGVpbiBGcmV1bmQgRGFya3dpbmcgdGVpbHQgRGlyIG1pdDogS2FlbXBmZXIgYWJ3ZXJ0ZW4gOigKCkhtLCBkYXMgd2FyIHdvaGwgZWluZGV1dGlnIHZlcmRhbW10IHNjaGxlY2h0IGdlemllbHQgb2RlciBtYXNvY2hpc3Rpc2NoLgoKSmFzb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hZ2llciB1bmQgbGFuZ2V3ZWlsZSAoQmlyZHksIDMxLiBNYXIgMTk5OSwgMTk6MDk6NTYpOgpEZWluIEZyZXVuZCBUc3VuYW1pIHRlaWx0IERpciBtaXQ6IGhtbSBtYWwgd2FzIGF1c3Byb2JpZXJlbgpbVG9kOkxhcnNdIERhcyBPZ2hhbSBkZXIgVmVybmljaHR1bmcgaGF0IGdlcmFkZSBaaWxsdXMgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFoamEgKEplbmFuZHJhLCAgMS4gQXByIDE5OTksIDA1OjM3OjI5KToKTG9nb24uLi4uLi4uLi4uLi5zIENvbHRzaWV3YXMuLi4uLkoueiBFbWJlLi4uLi4uLi4uLi5Kd3MgR2FzdDEuLi4uLi4uLi4uLi5zCkdhc3QxLi4uLi4uLi4uLi4ucyBHYXN0MS4uLi4uLi4uLi4uLnMgR2FzdDEuLi4uLi4uLi4uLi5zIEdhc3QxLi4uLi4uLi4uLi4ucwpHYXN0MS4uLi4uLi4uLi4uLnMgR2FzdDEuLi4uLi4uLi4uLi5zIEdhc3QxLi4uLi4uLi4uLi4ucyBHYXN0MS4uLi4uLi4uLi4uLnMKR2FzdDEuLi4uLi4uLi4uLi5zIEdhc3QxLi4uLi4uLi4uLi4ucyBHYXN0MS4uLi4uLi4uLi4uLnMgR2FzdDEuLi4uLi4uLi4uLi5zCkdhc3QxLi4uLi4uLi4uLi4ucyBHYXN0MS4uLi4uLi4uLi4uLnMgR2FzdDUuLi4uLi4uLi4uLi5zIEdhc3Q0Li4uLi4uLi4uLi4ucwpHYXN0My4uLi4uLi4uLi4uLnMgR2FzdDIuLi4uLi4uLi4uLi5zIEdhc3QxLi4uLi4uLi4uLi4ucyBNb2VwLi4uLi4uLi4uLi4uLnMKUmFuaS4uLi4uLi4uLi4uLi56IFNreS4uLi4uLi4uLi4uLi4ucyBDb25jaGkuLi4uLi4uLi4uLnMgVmVjdG9yLi4uLi4uLi4uLi5zClNtdXJmLi4uLi4uLi4uLkoucyBTcHJ1ZGVsLi4uLi4uLi4uLnMgQWxwaGEuLi4uLi4uLi4uLndzIE5ldm9rLi4uLi4uLi4uLmp3UwpEcmFjdWxhLi4uLi4uLi5pd1MgSGFyYWtpcmkuLi4uLi4uLi56IE1lcmN1dGlvLi4uLi4uLmp3UyBSZWFwZXIuLi4uLi4uLi5pd1MKWmluby4uLi4uLi4uLi4uSXd6IEFuYXRvbC4uLi4uLi4uLi4uUyBOYWNodHdpbmQuLi4uLi4uLm0KCkplbmFuZHJhLCB3dW5kZXJ0IHNpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogMiBuZXVlIEVyem1hZ2llciAoTW9yZ290aCwgIDEuIEFwciAxOTk5LCAxMjo0MToyNyk6Cn4jISBybj1Cb2luZyBydD05MjI5NjY5NDAgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTkyMjk2Njk0MApBbHNvIGVudHdlZGVyIGlzIGRhcyBqZXR6dCBlaW4gc2NobGVjaHRlciBBcHJpbHNjaGVyeiwgb2RlciBCb2luZyBoYXQgamV0enQgMwpFcnptYWdpZXJzdGltbWVuLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkViZW4gaW0gSG9tZS1NdWQgKE1vcmdvdGgsICAxLiBBcHIgMTk5OSwgMTM6MjI6MDApOgpKYSBzdGltbXQuLi5EZWluIEVuZGUgaXN0IG5haGUuLi5zZWhyIG5haGUhCltLbGVydXM6TW9yZ290aCB1ZWJlcmdpYnQgZGllIEViZW5lIGFuIFRldmlsZG8uXQpTcGVpY2hlcmUgTW9yZ290aC4KCk1vcmdvdGgsIGdyaW5zZW5kIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhhcnRlIFplaXRlbi4uLiAoTWFoYXRtdSwgIDEuIEFwciAxOTk5LCAxNjoxMToxMCk6Cn4jISBybj1Ib2JvIHJ0PTkyMjk4MjkwOCByZz1wb2xpemVpLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD05MjI5ODI5MDgKRGVuIGVybnN0ZW4gVGVpbCBzY2hyZWlic3QgRHUgYml0dGUgbW9yZ2VuIG5vY2htYWwgcmVpbiwgaG0/IDopCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhhcnRlIFplaXRlbi4uLiAoQXNzYXNzaW5lLCAgMS4gQXByIDE5OTksIDE2OjEyOjE2KToKfiMhIHJuPU1haGF0bXUgcnQ9OTIyOTgzMDcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIyOTgyOTA4CipuaWNrIE1haGF0bXUgZW50c2NoaWVkZW4genUqCiAgICAgQXNzYXNzaW5lLCBzb25zdCB1bSBzZWluIExlYmVuIHppdHRlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIYXJ0ZSBaZWl0ZW4uLi4gKEhvYm8sICAxLiBBcHIgMTk5OSwgMTY6MjE6MDcpOgp+IyEgcm49QXNzYXNzaW5lIHJ0PTkyMjk4MzEzNiByZz1zY2htYXJybgp+IyEgdGlkPTkyMjk4MjkwOApMZXV0ZSwgTGV1dGUsCgpUdXQgbWlyIGphIGxlaWQsIGFiZXIgaWhyIGJld2VndCBFdWNoIGhpZXIgaW4gZGVyIGZhbHNjaGVuIFJ1YnJpay4gQWJlciB3ZW5uCmVzIGV1Y2ggYmVydWhpZ3QsIHNjaHJlaWJlIGljaCBtb3JnZW4gbm9jaG1hbCBkZW5zZWxiZW4gQXJ0aWtlbC4uLgpEaWUgQmVncnVlbmR1bmcgZnVlciBkZW4gZXJzdGVuIFB1bmt0IGlzdCB1ZWJyaWdlbnMsIGRhc3MgaGllciBtYWwgd2lya2xpY2ggaW0KVGVhbSBnZXNwaWVsdCB3ZXJkZW4gc29sbCB1bmQgbmljaHQgbnVyLCB1bSBsZWljaHRlciBtZWhyIG1ldHplbG4genUga29lbm5lbi4gCgogIEhvYm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEhhcnRlIFplaXRlbi4uLiAoTGVuYSwgIDEuIEFwciAxOTk5LCAxNjoyMjo0Nik6Cn4jISBybj1Ib2JvIHJ0PTkyMjk4MzY2NyByZz1zY2htYXJybgp+IyEgdGlkPTkyMjk4MjkwOAp3YXMgc29sbCBkYW5uIGhlaXNzZW4sIGtlaW5lIGVpZ2VuZW4gS0xzPyBTY3JpcHRLTHMgb2RlciBBTExFIEtMcywgYWxzbyBhdWNoCk1pdHNjaHJpZWJlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSGFydGUgWmVpdGVuLi4uIChNYWhhdG11LCAgMS4gQXByIDE5OTksIDE2OjIyOjUyKToKfiMhIHJuPUhvYm8gcnQ9OTIyOTgzNjY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIyOTgyOTA4CkRpZSBSdWJyaWsgaXN0IHJpY2h0aWcuIFB1bmt0IDEgc3RvZXJ0IG1pY2gga2F1bSwgYWJlciBkYXMgS29uemVwdCBtaXQgZGVuCidpbiB3aWV2aWVsIFplaXQgbG9lc2UgaWNoIGRpZSBRdWVzdCBtaW5pbWFsJyBpc3QgZWluIFdpdHouIEdlcmFkZSB3ZWdlbgooc2llaGUgUHVua3QgMSkgVGVhbXdvcmsuCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBIYXJ0ZSBaZWl0ZW4uLi4gKEhvYm8sICAxLiBBcHIgMTk5OSwgMTY6MjM6MzUpOgp+IyEgcm49TWFoYXRtdSBydD05MjI5ODM3NzIgcmc9c2NobWFycm4KfiMhIHRpZD05MjI5ODI5MDgKRnVlciBEaXNrdXNzaW9uZW4gYmluIGljaCBnZXJuZSBvZmZlbi4gQWJlciBuaWNodCBpbiBkZXIgTVBBLCBzb25kZXJuIHBlciBNYWlsCgogIEhvYm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaHdhY2hzaW5uIGZ1ZXIgUGllcmNlIChNYWhhdG11LCAgMS4gQXByIDE5OTksIDE2OjMyOjI3KToKSG1tbS4gU2VtbWVsIGZvciBFTSEKCk1haGF0bXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRGFyaWEsICAxLiBBcHIgMTk5OSwgMTc6MTM6MTEpOgpbQWxsZ2VtZWluOlZlY3Rvcl0gbWV0emxlciBmdWVyIGdodWxzaWVkbHVuZyBnZXN1Y2h0Li4uLgpbQWxsZ2VtZWluOkphbWVzb25dIHdlbiBpbnRlcmVzc2llcnQgZGFzIGRlbm4gamV0enQsIGhpZXIgZ2VodHMgdW0KW0FsbGdlbWVpbjpKYW1lc29uXSBCb290ZGlza2V0dGVuIDopCltBbGxnZW1laW46RGFyaWFdIFdhcyB3aWxsc3QgdWViZXJoYXVwdCBkYQpbQWxsZ2VtZWluOlZlY3Rvcl0gYmluIHNjaG9uIGRhLi4uLgpbQmVpbGVpZDpMZW5hXSBCZWlsZWlkLgpbVG9kOkxhcnNdIEVpbiBHaHVsd2FlY2h0ZXIgaGF0IGdlcmFkZSBWZWN0b3IgdW1nZWJyYWNodC4KW0JlaWxlaWQ6TGVuYV0gaWNoIHNhZ3MgamEuCgo7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwuIChMZW5hLCAgMS4gQXByIDE5OTksIDE3OjE3OjIwKToKZ3V0LCBFSUdFTlRMSUNIIGlzdCBkYXMgbmljaHQgbHVzdGlnOgo+IG53CkZpbnN0ZXJuaXMuCiAgRGVyIEdodWwgZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbiBncmF1ZW52b2xsZW4gS2xhdWVuIGFuLgogIERlciBHaHVsIHRyaWZmdCBEaWNoIGhhcnQuCkRlciBUZWRkeSBrbnVkZGVsdCBEaWNoIGVpbiBsZXR6dGVzIE1hbC4KPiBEaWUgQW5nc3QgaXN0IHN0YWVya2VyIGFscyBEdSAuLi4gRHUgd2lsbHN0IG51ciBub2NoIHdlZyBoaWVyLgpFaW4gR2h1bCBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkZpbnN0ZXJuaXMuCmtpCkdlc3VuZGhlaXQ6ICAgIDAgfCAgLiAgICAuICAgIC4gICAgLiAgICAuICAgIC4gICAgLiAgICAuICB8ICAgMCAoMTIyKQpLb256ZW50cmF0aW9uOiAwIHwjIyMjIyMjLiAgICAuICAgIC4gICAgLiAgICAuICAgIC4gICAgLiAgfCAgMTYgKDkwKQo+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYXJ0aWtlbC4gKExlbmEsICAxLiBBcHIgMTk5OSwgMTc6MTk6NDQpOgp+IyEgcm49TGVuYSBydD05MjI5ODcwNDAgcmc9c2NobWFycm4KfiMhIHRpZD05MjI5ODcwNDAKYWVoLCB6dXIgRXJrbGFlcnVuZy4KRGllIERhdGVuIHNpbmQgdm9uIG1laW5lbSBad2VpdHNwaWVsZXIgQW50aUxlbmEsIE5JQ0hUIHZvbiBtaXIhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIGhhYnMgbmllIGZ1ZXIgbW9lZ2xpY2ggZ2VoYWx0ZW4uLi4uIChFaWNoZW4sICAxLiBBcHIgMTk5OSwgMTk6Mzc6NDkpOgp+IyEgcm49TW9yZ290aCBydD05MjI1NjAxNDEgcmc9c2NobWFycm4KfiMhIHRpZD05MjI1NjAxNDEKbmEgd2VubiBlaW4gbWFnaWVyIGVzIG5vZXRpZyBoYXQgZWluZW4ga2F0emVudmVybmljaHRlciBtaXR6dXNjaGxlcHBlbiBudXIKd2VpbCBlciBzaWUgbmljaHQgbWFnIHVuZCB6dSB1bmdlc2NoaWNrdCBpc3Qgc2llIGJlaW0gdHJldGVuIHp1IHRyZWZmZW4gZGFubgpmYW5nZSBpY2ggYW4genUgbGFlc3Rlcm4KbWFubiBrYW5uIHNpY2ggamEgbmljaHQgbWFsIGFuIHNlaW5lbSBwb3NpZXJsaWNoZW4gdGllcmNoZW4gcmFlY2hlbiBkYSBkdSBiZWkKZWluZW0gdHJpdHQgbWl0IDAgbHAgdW5kIGJlaSBlaW5lbSBhbmdyaWZmIG1pdCBuZXIgbmVnYXRpdmVuIHphaGwgYmVpIGRlbiBscApiZWxvaG50IHdpcnN0CmRhbm4gaXN0IGhhbHQgc2VpbiBtYWdpZXIgZHJhbm4gc2VsYnN0IHdlbm4gZXIgbSogaGVpc3N0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaWVyIGltIE11ZCBtYWNodCBlcyBqZWRlbSBTcGFzcyAuLi4gKEFyaywgIDEuIEFwciAxOTk5LCAyMDoyMToxNSk6CltaVDpFaWNoZW4gdWViZXJnaWJ0IGRpZSBFYmVuZSBhbiBlaW4gRnJvc2NoLiA8MjA6MTE6NDM+XQoKQXVjaCBUaWVyZSBmaW5kZW4gYWxzbyBkYXMgTUcgdG9sbCwgaGFldHRlIGljaCBuaWNodCBnZWRhY2h0LgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFydGlrZWwgKGdlbG9lc2NodCkgKEFuYWNyaW9uLCAgMi4gQXByIDE5OTksIDAwOjA4OjExKToKCk51ciBkZXIgdm9sbHN0YWVuZGlna2VpdCBoYWxiZXIgaGllciBlaW4ga2xlaW5lciBBdXN6dWcgYXVzIG1laW5lbSBMb2dmaWxlCipncmlucyoKClJ1YnJpayAxODogZGlza3Vzc2lvbiwgQXJ0aWtlbDogNyB2b24gNwpIb2JvJ3MgbmV1ZSBHZXNldHp0ZSAoRGFya3dpbmcsICAxLiBBcHIgMTk5OSwgMTY6MjY6NTkpOgoKSHVodSBIb2JvLAoKTnVyIGdhbnoga3VyeiB3YXMgbWlyIHp1IERlaW5lbSBUZXh0IHNwb250YW4gZHVyY2ggZGVuIEtvcGYgZ2VodDoKCk1pdCBEZWluZW0gVm9yZ2VoZW4gZm9lcmRlcnN0IER1IHVubWFya2llcnRlIFp3ZWl0aWVzLCBkaWUgaGFsdCBuZW4gYW5kZXJlbgpBY2NvdW50IGJlbnV0emVuLiBEZW4gTGV1dGVuIGRpZSB2aWVsIEFyYmVpdCBpbiBpaHJlIFp3ZWl0aWVzIGdlc3RlY2t0IGhhYmVuCnN0b2Vzc3QgRHUgZmllcyB2b3IgZGVuIEtvcGYsIHZlcmJvdGVuIHdhciBkYXMgbmFlbWxpY2ggYmlzaGVyIG5pY2h0LiAKVW5kIGRpZSBTYWNoZSBtaXQgZGVtIEtMcyB1bmQgZGVyIEZlc3RsZWd1bmcgZGVyIFplaXQgZnVlciBkaWUgUXVlc3Q6IEVpbmUKUXVlc3QgZGllIGljaCBrZW5uZSBzcGllbGUgaWNoIHNjaG5lbGwgZHVyY2gsIG9iIG1pdCBBdWZ6ZWljaG51bmdlbiBvZGVyIG9obmUuCldlbm4gRHUgbWljaCBkYW5uIGZ1ZXIgenUgc2NobmVsbGVzIFRpcHBlbiBiZXN0cmFmZW4gd2lsbHN0IC0gYml0dGVzY2hvZW4uIEljaApmaW5kcyBsYWVjaGVybGljaC4KSWNoIGthbm5zIGthdW0gZ2xhdWJlbiBkYXNzIER1IG1hbCBlYmVuIHNvIHZpZWwgdWViZXIgZGVuIGhhdWZlbiB3aXJzdC4KCkRhcmt3aW5nCgpQLlMuOiBEYSBEdSBTdG9ybXdpbmQgS2FtZWxvdCB1bmQgbWljaCBqYSBuaWNodCBybCBrZW5uc3QsIGthbm5zdCBEdSB1bnMgamEKZ2xlaWNoIGxvZXNjaGVuLCB3aXIga29tbWVuIG5hZW1saWNoIHZvbiBkZXIgZ2xlaWNoZW4gSXAgdW5kIHNpbmQgbWVpc3QgYXVjaApnbGVpY2h6ZWl0aWcgZWluZ2Vsb2dndC4KCkFuYWMqIC0gZ3JpbnNlbmQgOikpIGphLiBtYW4ga2FubiBzbyB2aWVsIFNwYXNzIGFtIDEuNC4gaGFiZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNlbHRzYW0gKE5ldm9rLCAgMi4gQXByIDE5OTksIDAwOjUzOjAwKToKYWxzbywgZGFzIEhvYmJpdHMgZXR3YXMuLi4uLi5hbmRlcmUgVm9yc3RlbGx1bmdlbiB2b24gUmVpendhZXNjaGUgaGFiZW4gaXN0IGphCmtsYXIKKioqKioqKioqIGhhdCBlaW4gU2Nod2VydCwgZWluZW4gU3RyYXBzZ3VlcnRlbCBhdXMgc2Nod2FyemVyIFNwaXR6ZSwgZWluIFBhYXIKc2Nod2FyemVyIFNlaWRlbnN0cnVlbXBmZSwoc293ZWl0IGphIGFsbGVzIGluIE9yZG51bmcgYWJlcjogZWluCkhvbHpmYWVsbGVyc3RpZWZlbCwgZWluZW4gU2NoYWwsZWluZW4gVmFtcGlycGFuemVyLCBlaW5lbiBSdWNrc2FjaywgdW5kCkRyYWNoZW5rbGF1ZW4gYW4uCm9iIGRhIGRpZSBSaWNodGlnZSBTdGltbXVuZyBhdWZrb21tdC4uLgoKZWluIHNpY2ggdm9yIHNlbGJpZ2VyIEhvYmJpdGZyYXUgdmVyc3RlY2tlbmRlcgoKCk5ldm9rLCBub2NoIEFidCBkZXIgS2FuZHJpLCB3YWhyc2NoZWlubGljaCBHZWlzdCBkZXIgS2FuZHJpIG5hY2ggZGVtCkFydGlrZWwuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsZXJpa2VyLi4uIChNb3Jnb3RoLCAgMi4gQXByIDE5OTksIDAzOjExOjI1KToKRGVyIEhlaWxpZ2Vuc2NoZWluIHVlYmVyIGRlbSBIYXVwdGUgR29yb2dzIHZlcmdsaW1tdC4KR29yb2cgZ3JpbnN0LgpVZWJlciBHb3JvZ3MgSGF1cHQgZXJzY2hlaW50IGVpbiBIZWlsaWdlbnNjaGVpbi4KCk1vcmdvdGggc2FndDogTmVpbiwgaWNoIGhhYiBuaWNodCBhbSBTcGVsbGJvb2sgZ2VmdW1tZWx0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgZXIgZGEgd29obCBpbiBkZXIgVGFzY2hlIGhhdD8/PyAoTW9yZ290aCwgIDIuIEFwciAxOTk5LCAwMzoxNToyNik6CkV0d2FzIGJld2VndCBzaWNoIGluIENhdHdlYXpsZXMgVGFzY2hlIHVuZCByYXNjaGVsdC4gQ2F0d2VhemxlIHN0ZWNrdCBrdXJ6CnNlaW5lIEhhbmQgaW4gZGllIFRhc2NoZSwgZGFuYWNoIGhhdCBkYXMgUmFzY2hlbG4gYXVmZ2Vob2VydC4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgS2xlcmlrZXIgZnVlcm4gTXVlbGwgZGFiZWkgaGFiZW4gKE1vcmdvdGgsICAyLiBBcHIgMTk5OSwgMDM6MjA6NTgpOgpLYWhsYW4gc3RlY2t0IGVpbmUgUGhpb2xlIG1pdCByZWluZXIgRXJkZSBpbiBlaW5lbiBTY2hsZWltYmV1dGVsLgpLYWhsYW4gc3RlY2t0IGVpbmUgUGhpb2xlIG1pdCByZWluZXIgRXJkZSBpbiBlaW5lbiBTY2hsZWltYmV1dGVsLgpLYWhsYW4gc3RlY2t0IGVpbmUgUGhpb2xlIG1pdCByZWluZXIgRXJkZSBpbiBlaW5lbiBTY2hsZWltYmV1dGVsLgpLYWhsYW4gc3RlY2t0IGVpbmUgU2NoYXVmZWwgaW4gZWluZW4gUnVja3NhY2suCkthaGxhbiBzdGVja3QgMiBLcmVic3NjaGVyZW4gaW4gZWluIFBha2V0LgoKTSogd3VuZGVydCBzaWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptb3JvbiBpcyBkb2NoIGx1c3RpZyAoS2FyaWMsICAyLiBBcHIgMTk5OSwgMTg6MTg6MjgpOgp1bmdla3Vlcnp0CkRlciBEaWVuZXIgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgdmVyc3VjaHN0IERpY2ggenUgYmVoZXJyc2NoZW4sIG11c3N0IGFiZXIgZG9jaCBsYWNoZW4uCgpLYXJpYyAqaW1tZXIgbm9jaCBsYWNoZW5kKiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTW9yZ290aCwgIDIuIEFwciAxOTk5LCAyMjo1NjowNik6CkRlaW4gRnJldW5kIEVsZW5kaWwgdGVpbHQgRGlyIG1pdDogbmFqYSB3ZW5pZ3N0ZW5zIHNpbmQgZGllIGtvbXBvcyBuaWNodCB3ZWcKRGVpbiBGcmV1bmQgRWxlbmRpbCB0ZWlsdCBEaXIgbWl0OiA6KQpEZWluIEZyZXVuZCBFbGVuZGlsIHRlaWx0IERpciBtaXQ6IHNjaHdhcnogd2FlcmUgcmljaHRpZyBnZXdlc2VuLCBkb2VyIDopID8KW1RvZDpMYXJzXSBEZXIgZXdpZ2UgRWlzc3R1cm0gaGF0IGdlcmFkZSBFbGVuZGlsIHVtZ2VicmFjaHQuCltUb2Q6RGVyIGV3aWdlIEVpc3N0dXJtIGhldWx0IGZ1cmNodGVycmVnZW5kLl0KCioqc2V1ZnoqKiAKCk1vcmdvdGgsIHRyYXVlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FzIGVyIGRhIHdvaGwgaW4gZGVyIFRhc2NoZSBoYXQ/Pz8gKENhdHdlYXpsZSwgIDIuIEFwciAxOTk5LCAyMzozNzoxMik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkyMzAyMjkyNiByZz1zY2htYXJybgp+IyEgdGlkPTkyMzAyMjkyNgpJY2ggd3Vzc3RlLCBkYXMgZGllc2VyIEtvbW1lbnRhciBrb21tdC4gVW5kIHp3YXIgaW4gZGVtIEF1Z2VuYmxpY2ssIAp3byBpY2ggZXMgc2VsYmVyIGdlbGVzZW4gaGFiZSwgYWJlciBpY2ggaGFiZSBkaWVzZXMgQmllc3Qgdm9yIFVyLQp6ZWl0ZW4gZ2Vwcm9nZ3QgOikKV2FzIGRhIHNvIHJhc2NoZWx0IHdhciBtZWluZSBrbGVpbmUgS3JvZXRlLgpVbmQgamEsIGljaCB3ZWlzcyBkYXNzIGF1Y2ggX2RpZXNlcl8gU2F0eiBmdWVyY2h0ZXJsaWNoIHp3ZWktCmRldXRpZyBpc3QgOi0pKQpZb3VycyB0cnVseSwKICAgIENhdHdlYXpsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQWhqYSAoQXNtb2RpcywgIDIuIEFwciAxOTk5LCAyMzo0MToxMSk6Cn4jISBybj1Ob3Zhc3Rvcm0gcnQ9OTIyODAzNDg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIyODAzMTkxCkhtbSwgYWxsZXMgaXN0IHJlbGF0aXYsIGZ1ZXIgbmVuIFp3ZXJnIHNpZWh0IGVpbiBNZXNzZXIgdmllbGxlaWNodCB3aWUKZWluIFNjaHdlcnQgYXVzIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSGFydGUgWmVpdGVuLi4uIChBc21vZGlzLCAgMi4gQXByIDE5OTksIDIzOjQ1OjIxKToKfiMhIHJuPU1haGF0bXUgcnQ9OTIyOTgzNzcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIyOTgyOTA4ClZvciBhbGxlbSwgd2FzIG1hY2h0IGVpbiBTcGllbGVyLCBkZXIgZWluZW4gWndlaXRpIGluIGVpbiBRdWVzdCBzY2hpY2t0LCBkYXMKZXIgc2Nob24gaGF0PyBNdXNzIGRlciB2b3IgZGVtIEVuZGUgKGRlciBRdWVzdCkgZXJzdCBtYWwgbmUgU2llc3RhIG1hY2hlbiA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhcyBlciBkYSB3b2hsIGluIGRlciBUYXNjaGUgaGF0Pz8/IChBc21vZGlzLCAgMi4gQXByIDE5OTksIDIzOjQ5OjQxKToKfiMhIHJuPUNhdHdlYXpsZSBydD05MjMwOTYyMzIgcmc9c2NobWFycm4KfiMhIHRpZD05MjMwMjI5MjYKSm8sIEt1ZWhsd2FsZGEga2VubmUgaWNoIGF1Y2ggbm9jaCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdhcyBlciBkYSB3b2hsIGluIGRlciBUYXNjaGUgaGF0Pz8/IChOZXZvaywgIDIuIEFwciAxOTk5LCAyMzo1MDoyNCk6Cn4jISBybj1Bc21vZGlzIHJ0PTkyMzA5Njk4MSByZz1zY2htYXJybgp+IyEgdGlkPTkyMzAyMjkyNgpUb3VjaHdvb2QgZGFjaHRlIGljaC4uLi4uLi5obW1tbW1tbW1tCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2FzIGVyIGRhIHdvaGwgaW4gZGVyIFRhc2NoZSBoYXQ/Pz8gKEFzbW9kaXMsICAzLiBBcHIgMTk5OSwgMDA6MjE6MjcpOgp+IyEgcm49TmV2b2sgcnQ9OTIzMDk3MDI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIzMDIyOTI2Cm5lbmUsIEt1ZWhsd2FsZGEgaXN0IGVzLCBkaWUgaXN0IHNjaG9uIG1hbCBmYXN0IHZvbiBtZWluZW0gSHVuZCBnZWZyZXNzZW4Kd29yZGVuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhoaGphLi4uIChNb3Jnb3RoLCAgMy4gQXByIDE5OTksIDAxOjQwOjAyKToKSGliYmVsaWcgc2FndDogZGFubiBsb2cgaWNoIGViZW4gbWVpbmUgendlaXRpZXMgZWluIHp1bSBydWZlbgpEaXJpb24gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKWFhYWFhYWCAobW9lY2h0ZSB1bmdlbmFubnQgYmxlaWJlbikgZnJhZ3Qgc2ljaCwgd2FubiBEaXJpb24gbWFya2llcnQgd2lyZC4KCk0qIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbGxlIG9zdGVyZWllciBzdWNoZW4gb2RlciB3aWU/IChMZWlibml6LCAgMy4gQXByIDE5OTksIDExOjAxOjExKToKa3dlcgpMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gU2FtLCAgMy4gQXByIDE5OTksIDEwOjU5OjM5ICgyIFRlaWxuZWhtZXIpCgpMZWlibml6Li4uLi4uLi4ud1MgQ2F0d2VhemxlLi4uLi4uai5XCgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVG9sbGVzIEludmVudGFyIChIYWVzY2hlbiwgIDMuIEFwciAxOTk5LCAxMjozNjowNSk6ClJ1ZXN0dW5nZW46CiBFaW4gZ29sZGVuZXIgUmluZy4KIEVpbiBFaGVyaW5nIHZvbiBPc3Rlcmhhc2UgKGFuZ2V6b2dlbikuCiBFaW4gVmVybG9idW5nc3Jpbmcgdm9uIE9zdGVyaGFzZSAoYW5nZXpvZ2VuKS4KVmVyc2NoaWVkZW5lczoKIEVpbiBGcmV1bmRzY2hhZnRzYmFuZCAoZ2V0cmFnZW4pLgogRGllIFplaXR1bmcuCiBFaW4gYmxhdWVzIEtpc3NlbiAoNSkKIEVpbiBnZWxiZXMgS2lzc2VuICg5KQogRWluIHJvdGVzIEtpc3NlbiAoNCkKIEVpbiBzY2h3YXJ6LXdlaXNzLWthcmllcnRlcyBLaXNzZW4gKDYpCiBFaW4gc2lsYmVyZ3JhdWVzIEtpc3NlbiAoMykKIEVpbiBvcmFuZ2UtcGluay1nZXN0cmVpZnRlcyBLaXNzZW4gKDMpCiBFaW4gbGlsYS1ncnVlbi1nZXR1ZXBmZWx0ZXMgS2lzc2VuICgzKQogRWluIGdydWVuZXMgS2lzc2VuICgzKQogRWluIGR1ZnRlbmRlciBTdHJhdXNzIHJvdGUgUm9zZW4uCiBFaW4gTG9sbGkuICgzKQogRWluZSBTYWhuZXRvcnRlLiAoMikKIEVpbmUgS2FydGUgdm9uIFBvcnQgVmFpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9zdGVyZWllciAoT3N0ZXJoYXNlLCAgMy4gQXByIDE5OTksIDEyOjQ4OjIyKToKV28gdmVyc3RlY2tlIGljaCBudXIgYWxsIG1laW5lIE9zdGVyZWllcj8/Pz8KCmludgpSdWVzdHVuZ2VuOgogRWluIFN0cnVtcGZiYW5kLgogRWluIEVoZXJpbmcgdm9uIEhhZXNjaGVuIChhbmdlem9nZW4pLgogRWluIFZlcmxvYnVuZ3NyaW5nIHZvbiBIYWVzY2hlbiAoYW5nZXpvZ2VuKS4KVmVyc2NoaWVkZW5lczoKIERpZSBaZWl0dW5nLiAgIAogRWluIGFuZ2VtYWx0ZXMgT3N0ZXJlaS4gKDkxKSAgIAogRWluIEZyZXVuZHNjaGFmdHNiYW5kIChnZXRyYWdlbikuCiAyNjAwIE11ZW56ZW4uCgpEZXIgT3N0ZXJoYXNlLCBhdWYgZGVyIFN1Y2hlIG5hY2ggVmVyc3RlY2tlbi4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJhYWFlZWVlZWggKExlaWJuaXosICAzLiBBcHIgMTk5OSwgMTg6NDM6MTIpOgplYmVuIGltIGVsZmVuaGFpbjoKCkxld2luc2t5IHNjaGxlY2t0IGFuIGlocmVtIExvbGxpLgpMZXdpbnNreSBncmluc3QuCkNsaW50b24gc2FndDogUGFydHltb25zdGVyLCBnaWIgbWlyIGpvaW50CkNsaW50b24gc2FndDogUGFydHltb25zdGVyLCBnaWIgbWlyIGpvaW50CkR1IHNjaGF1c3QgZGV6ZW50IHdlZywgYWxzIHNpY2ggQ2xpbnRvbiB1bmQgTGV3aW5za3kgdmVybGllYnQgaW4gZGllIEFybWUKc2lua2VuLgpDbGludG9uIHNhZ3Q6IG5hLCBtZWluZSBTdWVzc2UuLi4gYmlzdCBEdSBhdWNoIGdsdWVja2xpY2g/Ckxld2luc2t5IG5pY2t0IHdpZSB3aWxkLgoKbGVpYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFlaCB3ZXIgaXMgd2FzIHdpZSB3YXJ1bT8gKE5ldm9rLCAgMy4gQXByIDE5OTksIDIzOjM3OjUyKToKRHUgdGVpbHN0IERpcmlvbiBtaXQ6IHdhcyBtYWNoc3RlPwpEaXJpb24gaXN0IGdlcmFkZSBuaWNodCBkYTogbnVyIHNvLgpbVG9kOkxhcnNdIFNoYWktSHVsdWQgaGF0IGdlcmFkZSBEaXJpb24gdW1nZWJyYWNodC4KYWxzbywgaWNoIHdlaXNzIG5pY2h0LCBEdSBtdXNzdCBkYSB3YXMgdmVyd2VjaHNlbG4KQXJrc2hhdCBpcyBkZXIgT3JrIGRlciBpbiBkZXIgR2lsZGUgc3RlaHQuLi4uCmZhbHNjaGUgQWJ6d2VpZ3VuZyBnZW5vbW1lbj8KCmVpbiBncnVlYmVsbmRlcgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFlaCB3ZXIgaXMgd2FzIHdpZSB3YXJ1bT8gKE5ldm9rLCAgMy4gQXByIDE5OTksIDIzOjM4OjU0KToKfiMhIHJuPU5ldm9rIHJ0PTkyMzE4MjY3MiByZz1zY2htYXJybgp+IyEgdGlkPTkyMzE4MjY3Mgp2ZXJmbGl4dCwgdmVyc2lvbiAxLjAxCkR1IHRlaWxzdCBEaXJpb24gbWl0OiB3YXMgbWFjaHN0ZT8KIERpcmlvbiB0ZWlsdCBEaXIgbWl0OiBvcmtzIGF1Zm1pc2NoZW4gOykKW1RvZDpMYXJzXSBTaGFpLUh1bHVkIGhhdCBnZXJhZGUgRGlyaW9uIHVtZ2VicmFjaHQuCgoKc28sIGpldHp0IGFiZXIuLi4uCk5ldm9rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmbHcgKEFzbW9kaXMsICA0LiBBcHIgMTk5OSwgMDY6Mjk6MDMpOgpbQWxsZ2VtZWluOkdyaW1NYW5dIG1vaW4gYW4gYWxsZSBiZXJsaW5lciB1bmQgZGVuIHJlc3QhCltUb2Q6TGFyc10gRGllIHVuaGVpbWxpY2hlIEhhZW5nZWJydWVja2UgaGF0IGdlcmFkZSBHcmltbWFuIHVtZ2VicmFjaHQuCltUb2Q6RGllIHVuaGVpbWxpY2hlIEhhZW5nZWJydWVja2VdIERhcyBBZWNoemVuIGRlciBQbGFua2VuIGhvZXJ0IHNpY2gKW1RvZDpEaWUgdW5oZWltbGljaGUgSGFlbmdlYnJ1ZWNrZV0gaGFlbWlzY2ggYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkIChGZXVlcndlaHIsICA0LiBBcHIgMTk5OSwgMTM6NDI6MTkpOgp+IyEgb249RWNvIG90PTkyMzE4NDA3OCBvZz1hbGxnZW1laW5lcwpxCnEKcQpuCm4KcQpxCnEKcQpxCnEKdG0gZ3J1bXBmIHNoaXQgaWNoIGhhZW5nIGhpZXIgOikKdG0gZ3J1bXBmIHNoaXQgaWNoIGhhZW5nIGhpZXIgOikKcQpxCmgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmd1dGUgcmF0c2NobGFlZ2UgKG9kZXIgZmx3KSAoQXNtb2RpcywgIDQuIEFwciAxOTk5LCAyMDo0NToxOCk6CltBYmVudGV1ZXI6Tm5hbmppXSBIaWxmZSBiZWkgV2lsaGVtc2J1cmcsIGJpbiBpY2gga3JhbmsgZ2V3b3JkZW4gdW5kIHZlcmxpZXJlCltBYmVudGV1ZXI6Tm5hbmppXSBkYXVyZW4gTFAsIHdhcyBrYW5uIGljaCBkYWdlZ2VuIHR1bj8KW0FiZW50ZXVlcjpBcmFuY2lhXSBkaWNoIGhlaWxlbiBsYXNzZW4KW0FiZW50ZXVlcjpHcmltTWFuXSBsYXNzIGRpY2ggaGVpbGVuCltBYmVudGV1ZXI6SGlnaHRdIGxhc3MgZGljaCBoZWlsZW4KW0FiZW50ZXVlcjpBcmFuY2lhXSBva2ksIGthbm4gbWlyIG1hbCBqZW1hbmQgdmVycmF0ZW4gd2llIGljaCBhdXMgZGVyIHplbGxlCltBYmVudGV1ZXI6QXJhbmNpYV0ga29tbWUgZGFtaXQgaWNoIHp1IG5uYW5qaSBrYW5uPwpbQWJlbnRldWVyOk15dGhyYW5dIEJpc3QgYXVmIGVpbmVzIGRlciBGZWxkZXIgZ2V0cmV0ZW4gPwpbQWJlbnRldWVyOkFyYW5jaWFdIGphIGtsYXIKW0FiZW50ZXVlcjpLYXJpY10gaGFzdGUgZGllIGdsdWVja3NicmluZ2VyPwpbQWJlbnRldWVyOk15dGhyYW5dIEVudHdlZGVyIHR1ZXIgdW50ZXJzdWNoZW4gKGVpbnJhbW1lbikgU3Ryb2ggYW56dWVuZGVuLApbQWJlbnRldWVyOk15dGhyYW5dIFdhc3NlciBhdWZkcmVoZW4KW1RvZDpMYXJzXSBFaW5lIHNjaHdlcmUgS3JhbmtoZWl0IGhhdCBnZXJhZGUgTm5hbmppIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEthcmljLCAgNS4gQXByIDE5OTksIDAzOjAwOjU4KToKU211cmYgdGVpbHQgRGlyIG1pdDogTWVpbiBDbGllbnQgc3Bpbm50IGVpbiB3ZW5pZywgTW9tZW50Li4uCltUb2Q6TGFyc10gRWluIFNoYWl0YW4gaGF0IGdlcmFkZSBTbXVyZiB1bWdlYnJhY2h0LgoKaG1tLi5zY2hsZWNodGVyIGNsaWVudCA6KAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSURMRS1NVUQgKEFzbW9kaXMsICA1LiBBcHIgMTk5OSwgMDY6Mjc6NDApOgo+IGt3ZXIKICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIE1vbiwgIDUuIEFwciAxOTk5LCAwNjoyNjo1NiAoOSBUZWlsbmVobWVyKQoKRW1iZS4uLi4uLi4uLi4uSXdzIENvbmNoaS4uLi4uLi4uLkl3cyBTbXVyZi4uLi4uLi4uLi5Kd3MgTmV2b2suLi4uLi4uLi4uaS5TCkRyYWN1bGEuLi4uLi4uLkp3UyBNZXJjdXRpby4uLi4uLi5Kd1MgU3BlbGxmaXJlLi4uLi4uSndTIFJlYXBlci4uLi4uLi4uLkouUwpBc21vZGlzLi4uLi4uLi4ud3oKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9ya3MgdW5kIGlocmUgYnVncyAoSmlkZHUsICA1LiBBcHIgMTk5OSwgMTY6MDE6MTIpOgpEaWVzZXIgT3JrIGdlaG9lcnQgenVyIFN0YWR0d2FjaGUuIEVyIHBhdHJvdWxsaWVydCBkdXJjaCBkaWUgZ2FuemUgU3RhZHQgdW5kCmFjaHRldCBkYXJhdWYsIGRhc3MgbmllbWFuZCBlaW5lIFN0cmFmdGF0IGJlZ2VodC4gRHUgZGVua3N0IGFuIGRpZSBXYWNoZW4gaW4KKC4uLikKRXIgaXN0IGFic29sdXQgZml0LgpFciB0cmFlZ3QgKGJ1ZykgS2VpbiBNaXRnbGllZC4KKC4uLikKCkppZGR1LCBncmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBmb2FoIHdpZSBwZXJ2ZXJzIChLZWxseWJ1bmR5LCAgNS4gQXByIDE5OTksIDIwOjIxOjA5KToKRGVpbiBGcmV1bmQgTmV2b2sgdGVpbHQgRGlyIG1pdDogcGFoLCBidWVjayBkaWNoLCBidWVja3N0dWVjayAqemllaHQgc2VpbmUKRGVpbiBGcmV1bmQgTmV2b2sgdGVpbHQgRGlyIG1pdDogc2Nod2VyZW4gUmFuZ2VycyBTdGllZmVsIG1pdCBTdGFobGthcHBlIGFuKgouLi4KLi4uCkRlaW4gRnJldW5kIE5ldm9rIHRlaWx0IERpciBtaXQ6IGhtbW1tbSBuYSBndXQgZGFubiBlYmVuIHNvLCBiaXN0IGphIGtsZWluCkRlaW4gRnJldW5kIE5ldm9rIHRlaWx0IERpciBtaXQ6IGdlbnVnCkRlaW4gRnJldW5kIE5ldm9rIHRlaWx0IERpciBtaXQ6IHl1cCwgaXMgZG9jaCBnYW56IGtsYXIsIGtvbW1zdCBiZXNzZXIgaW4gZGllCkRlaW4gRnJldW5kIE5ldm9rIHRlaWx0IERpciBtaXQ6IEVja2VuIHp1bSB3aXNjaGVuIHVuZCBzbwoKRGllIE51bW1lciBtaXQgUmFuZ2Vyc3RpZWZlbG4gYmVpbSBIYXVzcHV0eiBrYW5udGUgaWNoIG5vY2ggbmljaHQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9yZG51bmcgbXVzcyBzZWluIChXb29keSwgIDYuIEFwciAxOTk5LCAwMzowNjo1Nik6CkVpbiBLaWxsZXJwb3BlbCBrb21tdCBhbi4KRWluIEtpbGxlcnBvcGVsIGhlYnQgZWluZW4gU2NobGVpbWJldXRlbCBhdWYuCgpJcyBqYSBzY2hvZW4sIHdlbm4gZGllIE5QQ3MgamV0enQgaWhyZW4gU2F1c3RhbGwgc2VsYmVyIGF1ZnJhZXVtZW4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgbGllYmVuIERhZW1vbmVuLi4uIChNb3Jnb3RoLCAgNi4gQXByIDE5OTksIDEyOjUyOjUwKToKRGEgaWRsZXQgbWFuIG1hbCBlaW4gYmlzY2hlbi4uLnVuZCB3YXMgcGFzc2llcnQuLi4KRVZFTlQtQ0lUWSA6IFNoYW5ndGkgaGF0IGRpZSBTdGFkdCBiZXRyZXRlbi4KVHV0c3p0IHRlaWx0IERpciBtaXQ6IFNoYW5ndGkgaXN0IGFic29sdXQgZml0LiBXYXMgaW1tZXIgZGFzIGhlaXNzZW4gbWFnLi4uClR1dHN6dCB0ZWlsdCBEaXIgbWl0OiBTaGFuZ3RpIGlzdCBhYnNvbHV0IGZpdC4gV2FzIGltbWVyIGRhcyBoZWlzc2VuIG1hZy4uLgpUdXRzenQgdGVpbHQgRGlyIG1pdDogU2hhbmd0aSBpc3QgYWJzb2x1dCBmaXQuIFdhcyBpbW1lciBkYXMgaGVpc3NlbiBtYWcuLi4KVHV0c3p0IHRlaWx0IERpciBtaXQ6IFNoYW5ndGkgaXN0IGdhbnogZ2FueiBsZWljaHQgYW5nZXNjaHdhZWNobGljaHQuClR1dHN6dCBicnVlbGx0OiBIdWNoLCBkYSBoYXQgbWljaCBkb2NoIGlyZ2VuZHdhcyBnZWtyYXR6dCEgU293YXMuLi4gClR1dHN6dCBicnVlbGx0OiBXb3csIGFsbGVzIHNjaHdhbmt0IHVuZCB3YW5rdCB1bSBtaWNoIGhlcnVtIQpUdXRzenQgYnJ1ZWxsdDogTWVpbmUgVmVyZmFzc3VuZyBpc3Qgc2NobGVjaHQsIGFiZXIgZnVlciBTaGFuZ3RpIHJlaWNodHMgbm9jaCEKVHV0c3p0IGJydWVsbHQ6IFdJUiBTRUhOIFVOUyBJTiBERVIgSE9FTExFLCBNT1JHT1RIIQoKSmFqYSBUdXRzenQsIGljaCB3YXJ0ZSBkYSBhdWYgRGljaCwgS2xlaW5lci4uLgoKTSogZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjstKSAoTW9yZ290aCwgIDcuIEFwciAxOTk5LCAwMDowMDoyMCk6Ck5lYiAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEZWluZSBGcmV1bmRpbiBMZWlibml6IHRlaWx0IERpciBtaXQ6IGRhcyBrYW5uIG5ldCBzZWluIQoKTSosIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpub2NoIGVpbiBzYXVibG9lZGVyIChEaWVkZXIsICA3LiBBcHIgMTk5OSwgMDA6MTA6NDIpOgpXYXJ1bSBrb21tZW4gZGllIEJhYmllcyBuYWNrdCBhdWYgZGllIFdlbHQ/CgpbSGllciBrb2VubnRlbiBqZXR6dCAzMCBaZWlsZW4gdm9sbCBuZXJ2aWdlciBQdW5rdGUgc3RlaGVuLCBkYW1pdCBtYW4gc2Nyb2xsZW4KbXVzcy5dCgpXZWlsIGRpZSBHZWJhZXJtdXR0ZXIgbmljaHQgc3RyaWNrZW4ga2Fubi4KCkRpZWRlcgpQUzogSmEsIGhhdXQgbWljaCBudXIsIGljaCB3ZWlzcyBzZWxic3QsIGRhc3MgZGVyIG5lZCB0b2xsIHdhci4uLiA6KQoKT0o6IHdoaWxlKCFhc2xlZXAoKSkgc2hlZXArKzsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiA7LSkgKERpZWRlciwgIDcuIEFwciAxOTk5LCAwMDoxMTo1OCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkyMzQ0MzIyMCByZz1zY2htYXJybgp+IyEgdGlkPTkyMzQ0MzIyMApiaXR0ZSBuYWNoIFdpdHplIHZlcmxlZ2VuLCBpY2ggYmluIHp1IGZhdWwgenVtIG5ldSB0aXBwZW4gOikKCkRpZWRlciwgR3JpbW1ib3JuIGFuc3R1cHNlbmQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogOy0pIChBc21vZGlzLCAgNy4gQXByIDE5OTksIDAwOjEyOjQwKToKfiMhIHJuPURpZWRlciBydD05MjM0NDM5MTggcmc9c2NobWFycm4KfiMhIHRpZD05MjM0NDMyMjAKV28gaXN0IGRlciBXaXR6ID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClppdHRlcm4gZGllIHh0ZSAoQXNtb2RpcywgIDcuIEFwciAxOTk5LCAwMjoyMjo1MSk6CltBYmVudGV1ZXI6QXNtb2Rpc10gdWVicmlnZW5zIGhhYiBpY2ggbWVpbmUgS2wgdmVyc2NobGFtcHQgdW5kIGhhYiBBbHpoZWltZXIKPiBbQWJlbnRldWVyOldpZGV3aXR0IGFyZ2x0IEFzbW9kaXMgYW5dCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJZGxlIChBenJhZWwsICA3LiBBcHIgMTk5OSwgMDc6NDc6NTkpOgogIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNaXQsICA3LiBBcHIgMTk5OSwgMDc6NDA6MTIgKDEzIFRlaWxuZWhtZXIpCgpMb2dvbi4uLi4uLi4uLi4uLnMgQXBzdS4uLi4uLi4uLi4uSndzIEtlbGx5YnVuZHkuLi4uLkp3cyBTbXVyZi4uLi4uLi4uLi5qd3MKU3BydWRlbC4uLi4uLi4uaS5zIFRhcmFnb24uLi4uLi4uLkp3UyBIZXh4ZXIuLi4uLi4uLi5KLlMgTWVyY3V0aW8uLi4uLi4uSndTClppbGx1cy4uLi4uLi4uLmkuUyBUd2lnZ3kuLi4uLi4uLi5JLlMgWmluby4uLi4uLi4uLi4uSXd6IEhvb2QuLi4uLi4uLi4uLml3egpBenJhZWwuLi4uLi4uLi4uLm0KCkdlZ2VuIGFsbGUgVm9ydXJ0ZWlsZS4KQXpyYWVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYW5kYnVlY2hlci4uLiAoSHJlaWRtYXIsICA3LiBBcHIgMTk5OSwgMTM6NDA6MTcpOgpTbywgaG9mZmVudGxpY2ggamV0enQgaW0gendlaXRlbiBBbmxhdWYgZWluZW4gQXVzenVnIGF1cyBlaW5lbSBIYW5kYnVjaCB6dQplaW5lciBDbGlwQXJ0LUNELiBBY2ggamEsIGRpZSAiVW1sYXV0ZSIgc2luZCBzbyBpbSBPcmlnaW5hbCBhYmdlZHJ1Y2t0Li4uCgpEaWUga2xlaW5lcmVuIEJpbGRlciBpbiBNYXN0ZXJDbGlwcyBzY2hsaWU/ZW4gZGllIEdJRiBTcGlubmV3ZWJlIEt1bnN0CmVpbi4KRGllc2UgQmlsZGVyIHdlcmRlbiBpbSByYXN0ZXJlaW5nZWZhaHJlbiwgZm9ybWF0aWVydCBiZWkgZWluZXIgYXU/ZXJzdCBrbGVpbmVuCkdybz9lLCBkYW1pdCBzaWUgYXVmCmVpbmVyClNwaW5ud2ViZS1TZWl0ZSBmdXIgUHVua3RlIHdpZQpLbm9wZmUgdW5kIFN0YW5nZW4gYmVudXR6dCB3ZXJkZW4ga29ubmVuLgoKVGF1ZmUKCk1hc3RlckNsaXBzIFRhdWZiZWNrZW4gKEFubWVyay46IFRhdWZiZWNrZW49Zm9udHMgOy0pIEJyb3dzZXIgbGE/dCBTaWUKYW5zZWhlbiwKZHJ1Y2t0LCB1bmQgc2NobGllP3QKa2VpbmUgZGVyIDIsMDAwIHdhaHJlIEFydC1UYXVmYmVja2VuIGluIGRlciBTYW1tbHVuZyBhbi4gRGllIDIwMDAKVGF1ZmJlY2tlbiwKZGllIGVpbmdlc2NobG9zc2VuCnd1cmRlbiwgZGllIGRlbiBUYXVmYmVja2VuIE51dHplbiBiZW51dHplbiwgbW9nZW4gYW5nZXNjaGxvc3NlbiB3ZXJkZW4sCm9kZXIKdW50ZXIgV2luZG93cy4gRGllClRhdWZiZWNrZW4gdW5kIGRpZSBnZXN1bmRlbiBXaXJrdW5nZW4gKEFubWVyay46IGdlc3VuZGUgV2lya3VuZ2VuPXNvdW5kCmVmZmVjdHMKOi0pIHNpbmQgbmljaHQKenVnYW5nbGljaCBkdXJjaCBkZW4gQnJvd3Nlci4KCldlbm4gU2llIGlyZ2VuZHdlbGNoZSBTY2h3aWVyaWdrZWl0ZW4gaGFiZW4sIGRpZSBkaWVzZW4gTnV0emVuIGJlbnV0emVuLApiaXR0ZQpiZW51dHplbiBTaWUgZGllCnVibGljaGVuIFRhdWZiZWNrZW4tSW5zdGFsbGF0aW9uLU51dHplbiwgZGllIG1pdCBXaW5kb3dzIGtvbW1lbi4gRGFzCldhcm5lbjoKamVuZXIgV2luZG93cyBrYW5uCmVpbmUgYmVncmVuenRlIFphaGwgdm9uIFRhdWZiZWNrZW4gdWJlcmhhdWZlbiwgdW5kIElociBDb21wdXRlciB3aXJkIHNpY2gKZHJhc3Rpc2NoIHZlcmxhbmdzYW1lbiwgd2VubgpTaWUgZGllIG1heGltYWxlIFphaGwgdm9uIFRhdWZiZWNrZW4gYW5zY2hsaWU/ZW4uIFdpciBlbXBmZWhsZW4sIGRhPyBTaWUKYmxlaWJlbiwgc2NobG8/IElocmUKR2VzYW10c3VtbWUgVGF1ZmJlY2tlbiB6dSB3ZW5pZ2VyIGFuIGRlciA1MDAgZnVyIG9wdGltYWxlIE51dHpsaWNoa2VpdC4KCldlbHRiaWxkIHVuZCBTaW5uc3VjaGUKCldpciBoYWJlbiBkaWUgV2VsdCBnZXN1Y2h0LCB1bSBhbGwgaWhyZW4gQXJiZWl0c2ZsYWNoZS1WZXJsYWcgQmVkdXJmbmlzc2UKenUKdHJlZmZlbi4gTWFzdGVyQ2xpcHMgQnJvd3NlciBpc3QKZWluIG1hY2h0aWdlciBOdXR6ZW4sIGRpZSBTaWUgbGE/dCwgZ3JlaWZlbiBTaWUgenUsIHNlaGVuIFNpZSBhbiwKc2NocmVpYmVuIFNpZQphYiwgdW5kIG1hbmlwdWxpZXJlbiBTaWUKY2xpcGFydC1CaWxkZXIgbWl0IFZpZGVvLUtsYW1tZXJuLgoKRWluIEJpbGQgenUgZGVuIG1laXN0ZW4gQW53ZW5kdW5nZW4gU2llIHp1IGVpbmtsZWJlbiB3aXJkIGhhYmVuLCBkZW4KYnJvd3NlciwgdW0KIElociBCaWxkIGF1c3p1d2FobGVuCnp1IGJlbnV0emVuLiBXZW5uIGRhcyBCaWxkIGltIFNob3ctRmVuc3RlciBoZXJhdWZrb21tdCwgd2FobGVuIFNpZSBhdXMgZGFzCmJlYXJiZWl0ZW4gU2llIFNwZWlzZWthcnRlCklocmVyIEFud2VuZHVuZywgdW5kIHdhaGxlbiBTaWUgZGllIFBhc3RlLUZ1aHJ1bmcgYXVzLiBEYW5uIFByZXNzZSA8dHJldGVuCnNpZQplaW4+LgpEaWUgNDcsODAwIHVibGljaC1CZXNjaGx1Py1Gb3RvcyB3b2xsZW4gcGl4ZWxhdGUgbGVpY2h0ZXIgYWxzIGRpZSA1LDQwMApIYWxsby1CZXNjaGx1Py1Gb3Rvcy4gV2VubiBTaWUgZGFzCkJlYXJiZWl0ZW4gZGVzIEJpbGRlcyBiZWVuZGVuLCBrb25uZW4gU2llIGRpZSBCYWxsYWJ3ZWhyLUZ1aHJ1bmcgYmVudXR6ZW4uCgpXZW5uIFNpZSBldHdhcyB1YmVyaGF1ZmVuLCB3YXMgc3ViY2F0ZWdvcmllcyBlbnRoYWx0LCB3ZXJkZW4gU2llCmJlbm90aWdlbiwgaW4KZGllIEFydCB6dSBnZWhlbiwgZGFubiBpbgpkZW4gc3ViY2F0ZWdvcnkgZGVzIFB1bmt0ZXMgd3VyZGVuIFNpZSBnZXJuIGZpbmRlbi4gRGVyIFN1Y2hlLU1vdG9yIHdpcmQKZHVyY2gKc2VpbiBTaXR0ZS1SZWdpc3RlciwgYmVpbQpGaW5kZW4gYWxsZXIgc3ViY2F0ZWdvcmllcywgZGVyIEJpbGRlciBtaXQgTm90aXplbiBlbnRoYWx0LCBkaWUgSWhyZQpCZXNjaHJlaWJ1bmcgenVzYW1tZW5wYXNzZW4sIGdlaGVuLgpEYXMgYWxsZ2VtZWluZXIgZGllIEJlc2NocmVpYnVuZywgZGFzIEJlc3NlcmUgZGllIENoYW5jZSB2b20gSG9sZW4gdm9uCklobmVuIGRlbgogQmlsZGVybiBicmF1Y2h0LgoKV2VubiBTaWUgZWluZSBTdWNoZSB2ZXJzdWNoZW4sIHVuZCBTaWUgZmluZGVuIG5pY2h0cywgdmVybGE/dCBrZWluZQpIb2ZmbnVuZy4KVmVyc3VjaCwgZGVyIHZvbiBhbmRlcmVuCldvcnRlcm4gZGVua3QsIGRpZSBkYXMgYmVzY2hyZWliZW4sIGZ1ciBkYXMgU2llIHNlaGVuLgoKTGViaGFmdGUgR2VzdW5kaGVpdAoKRGVyIDUwMC1nZXN1bmQtRXJmb2xnLCBkZW4gV0FWIEFrdGVuIG1pdCBNYXN0ZXJDbGlwcyBlaW5zY2hsb3NzZW4sIGthbm4genUKV2luZG93cyBGdW5rdGlvbmVuIGJlZmVzdGlndAp3ZXJkZW4sIGRpZSBkZW4gR2VzdW5kZXIgS29udHJvbGxldXIgYmVudXR6ZW4uIFNpZSBrb25uZW4gZGllc2UgZ2VzdW5kZW4KV2lya3VuZ2VuIGluIGlyZ2VuZGVpbmVyCkFud2VuZHVuZywgZGllIFdBViBBa3RlbiBiZW51dHp0LCBhdWNoIGJlbnV0emVuLiBXZW5uIHNpZSBkZW4gTWFzdGVyQ2xpcHMKR2VzdW5kZXIgS29udHJvbGxldXIKYmVnaW5uZW4sIHdpcmQgZXMgbWluaW1pZXJ0IHdlcmRlbi4gRGllcyBtYWcgYXVmIFdpbmRvd3MgMy4xIGhpbnRlciBJaG5lbgp2ZXJzdGVja3Qgd2VyZGVuLgoKU2llIGtvbm5lbiBhc3NvemlpZXJlbiBvZGVyIGtvbm5lbiBlaW5lbiBLbGFuZyB6dSBnZW5hdWVtIFdpbmRvd3MKYmVmZXN0aWdlbiwKZnVua3Rpb25pZXJ0LCB3aWUgQW5mYW5nCm9kZXIgQXVzZ2FuZy4gVW0gZGllc2VzIHp1IG1hY2hlbiwgenVlcnN0IHd1aGxlbiBTaWUgZWluZSBGdW5rdGlvbiBhdXMsCmRhbm4Kd2FobGVuIFNpZSBlaW5lbiBLbGFuZywKZHVyY2ggZGFzIEtsaWNrZW4gZ2VyYWRlIGluIGRlciBTY2hlY2stS2lzdGUgenVyIExpbmtlIGRlcyBLbGFuZ2VzIHp1CmJlZmVzdGlnZW4KIGF1czogRWluIFNjaGVjay1GbGVjawpuZWJlbiBkZW0gS2xhbmcgemVpZ3QsIGRhPyBlcyBhdXNnZXdhaGx0IHdpcmQuIFNpZSBtdXNzZW4gR2VzdW5kZXIKS29udHJvbGxldXIKYmVoYWx0ZW4sIG9mZm5lbiBTaWUgb2RlcgptaW5pbWllcnRlIGZ1ciBkYXMgZ2VzdW5kZSBWZXJidW5kLU1lcmttYWwsIHVtIHp1IGFyYmVpdGVuLgoKU2llIGtvbm5lbiBkaWUgU3Bpbm53ZWJlLUt1bnN0LCB1bmQgZGFzIFZpZGVvIHVuZCBMZWJoYWZ0aWdrZWl0IGFuc2VoZW4uCkRhcwpWaWRlbyB1bmQgTGViaGFmdGlna2VpdHMtCkJpYmxpb3RoZWtlbiBqZWRlcyBlbnRoYWx0IEFWSSAoRmlsbSlBa3Rlbiwgb2huZSBpcmdlbmRlaW5lbgpzdWJjYXRlZ29yeS1adXNhbW1lbmJydWNoLgoKRWluZSBVbnRlci1TcGVpc2VrYXJ0ZSB3aXJkIGVyc2NoZWluZW4gaW4gZGVtIFNpZSB3YWhsZW4ga29ubmVuLCBlbnR3ZWRlcgp6dQpzcGllbGVuIG9kZXIgZGFzIFZpZGVvIHp1CnNjaGxpbmdlbi4gQXVzZXJsZXNlbmVyIEhhbHQsIGRhIFZpZGVvIG9kZXIgTGViaGFmdGlna2VpdC1LbGFtbWVyIHp1CmhhbHRlbi4KS2xhcHBlbiBTaWUgT0ssIHVtIGFuenVmYW5nZW4KenUga29ubmVuLgoKSGlsZmUgaW4gZGVyIE5vdAoKV2VubiBJaHIgQ0QtUk9NIEFudHJpZWIgQnJpZWYgZCBuaWNodCBpc3QsIHRhdXNjaGVuIFNpZSBJaHJlbiBDRC1ST00KQW50cmllYgpCcmllZiBmdXIgZCBpbiBkZXIgRnVocnVuZyBhdXMuCktsaWNrZW4gU2llIGRpZXNlIEFrdGUgYW4sIGRhbm4ga2xhcHBlbiBTaWUgT0sgenVzYW1tZW4uIFdlbm4gU2llCnd1bnNjaGVuLCBlaW5lCiBiZXNvbmRlcmUgQ0QgenUKYmVudXR6ZW4sIHN0ZWNrZW4gU2llIGRpZSBDRCBaYWhsIGhpbmVpbiwgZGllIFNpZSB2ZXJzdWNoZW4gd2VyZGVuLCB6dQp1YmVyaGF1ZmVuLiBJaHIgQ0QtUk9NIExpY2h0IHdpcmQKYXVmIGVpbmlnZSBTZWt1bmRlbiBkcmVoZW4sIG5hY2hkZW0gU2llIGluIGlyZ2VuZGVpbmUgQ0Qgc2V0enRlbiwgaW4KUmVpaGVuZm9sZ2UKIGRhZnVyIGRpZSBWZXJ6ZWljaG5pc3NlCnZvbiBqZW5lciBDRCB6dSBsZXNlbi4KKEFubWVya3VuZzogSmV0enQga29tbXQgZGFzIGFsbGVyYmVzdGUgOy4+KQoKV2VubiBTaWUgWnVnYW5nIHp1ciBXZWx0IEJyZWl0ZSBTcGlubndlYmUgaGFiZW4sIGtvbm5lbiBTaWUgZGllIHNwYXRlc3RlbgpTcGl0emVuIHVuZCBUcmlja3MgYmxhdHRlcm4KdW5kIEhhdWZpZyBrYW5uIEZyYWdlbiBmcmFnZW4uCgonV2VubiBpY2ggdmVyZG9wcGVsZSwga2xpY2tlbiBTaWUgaW0gYnJvd3NlciwgQmlsZGVyIHdlcmRlbiBJbiBnZXNhdXN0LicgLQpEaWVzCmlzdCB3ZWdlbiBkZXMgaG9oZW4KQmVzY2hsdXNzZXMgZGVyIEJpbGRlci4gR2VoZW4gU2llIHp1ciBQcm96ZT8tU3BlaXNla2FydGUsIGF1c2VybGVzZW5lcgpSZXNpemUsCnVuZCBkYW5uIGtsaWNrZW4gU2llIGRlbgpBbmZhbGwgenUgRmVuc3Rlci1Lbm9wZiBhbi4KCidJY2gga2FubiBrZWluZSBLbGFuZ2UgenUgZGllc2VuIFZpZGVvLUFrdGVuIGJlZmVzdGlnZW4uJyAtIFNpZSBicmF1Y2hlbgplaW4KUHJvZ3JhbW0sIGRhcyBiZWFyYmVpdGVuCmthbm4sIHVuZCB3aWVkZXJmZXVjaHRlIFVtc2NobGFnIEFWSSBBa3Rlbi4KCidJY2ggYmVrYW0gZWluZSBNaXR0ZWlsdW5nLCBkaWUgc2FndCwgRmVobGVyLCBkZXIgVGF1ZmJlY2tlbi1NaXR0ZWwKaGluenVmdXQuJyAtCiBCaXR0ZSBlcnJlaWNoZW4gU2llIE1pY3Jvc29mdCBmdXIKTGlzdGVuIHZvbiBTb2Z0d2FyZSBFbnR3aWNrbGVybiwgZGllIFRhdWZiZWNrZW4tSW5zdGFsbGF0ZXVyZSBtYWNoZW4sIGRpZQpkaWVzZQpFaW5zY2hyYW5rdW5nZW4KdWJlcndhbHRpZ2VuIHdlcmRlbi4KCkhyZWlkbWFyLCBpbW1lciBub2NoIGxhY2hlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzbyBzY2h1ZXR6IG1hbiBzaWNoIGFsc28gKE1pc3RicmF0emUsICA3LiBBcHIgMTk5OSwgMjE6NTM6NTgpOgpLYWhsYW4gZmxpZWd0IGhlcmVpbi4KWmVyIHNhZ3Q6IEljaCBiaW4gRGVpbiBzY2hsaW1tc3RlciBBbHB0cmF1bS4uLnVuZCB2ZXJzY2h3aW5kZXQuCkthaGxhbiB6aWVodCBlaW4gUGFhciBPaHJlbnNjaHVldHplciBhdXMuCkthaGxhbiB2ZXJzY2h3aW5kZXQgaW4gZGllIEFybWUgZGVyIEdvZXR0ZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprYW1wZm1hdXMgOykgKEthcmljLCAgOC4gQXByIDE5OTksIDAyOjA3OjI2KToKSGliYmVsaWcgdGVpbHQgRGlyIG1pdDogaWNoIGthbm4gZ3JhZCBuaWNoIG1laHIgcmVjaG5lbgpIaWJiZWxpZyBoaWJiZWx0IGF1cyBkZXIgRmVybmUgdW0gRGljaCBoZXJ1bS4KRHUgdGVpbHN0IEhpYmJlbGlnIG1pdDogYWxsZWhvbCBtYWNodCBoaWJiZWwgdm9sbCA/IDspCkhpYmJlbGlnIGlzdCBnZXJhZGUgbmljaHQgZGE6IC0+IGZlaWVybgoKamFqYS4uc28gc2luZCBzaWUgZGllIGthbXBmbWFldXNlIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZToga2FtcGZtYXVzIDspIChOZXZvaywgIDguIEFwciAxOTk5LCAwMjowODoyOCk6Cn4jISBybj1LYXJpYyBydD05MjM1MzcyNDYgcmc9c2NobWFycm4KfiMhIHRpZD05MjM1MzcyNDYKZnJhZ2UKc2llaHQgZWluZSBLYW1wZm1hdXMgd2Vpc3NlIE1hZXVzZSB3ZW5uIHNpZSBhbG9ob2xpc2llcnQgc2luZD8KCmVpbiBncmluc2VuZGVyCk5ldm9rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGthbXBmbWF1cyA7KSAoS2FyaWMsICA4LiBBcHIgMTk5OSwgMDI6MDk6MTApOgp+IyEgcm49TmV2b2sgcnQ9OTIzNTM3MzA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIzNTM3MjQ2Cm5lIC4uLgpudXIgbGF1dGVyIHNjaG51Y2tsaWdlIHN1ZXNzZSBrbGVyaWtlciA7KQoKS2FyaWMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZToga2FtcGZtYXVzIDspIChIaWJiZWxpZywgIDguIEFwciAxOTk5LCAwMjowOTo0Nik6Cn4jISBybj1OZXZvayBydD05MjM1MzczMDggcmc9c2NobWFycm4KfiMhIHRpZD05MjM1MzcyNDYKbmVlZWVlZWVlZWUsIG5vY2ggc2VoIGljaCBrZWluZSB3ZWlzc3NlbiBtYWV1c2UgOykKaGliYmVsaWcgZGVua3QgLiBvIE8gKGtvZW5udGUgYWJlciBub2NoIGtvbW1lbi4uLiA6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGthbXBmbWF1cyA7KSAoSGliYmVsaWcsICA4LiBBcHIgMTk5OSwgMDI6MTA6NTUpOgp+IyEgcm49S2FyaWMgcnQ9OTIzNTM3MzUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIzNTM3MjQ2CmphamEKSGliYmVsaWcgaXN0IGZ1ZXIgbWVociBLbGVyaWtlciBpbSBNRyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDoga2FtcGZtYXVzIDspIChOZXZvaywgIDguIEFwciAxOTk5LCAwMjoxMTozOSk6Cn4jISBybj1IaWJiZWxpZyBydD05MjM1Mzc0NTUgcmc9c2NobWFycm4KfiMhIHRpZD05MjM1MzcyNDYKd2FzIHdpbGwga2xlaW4gaGliYmVsIG1pdCBhbGwgZGVuZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGthbXBmbWF1cyA7KSAoSGliYmVsaWcsICA4LiBBcHIgMTk5OSwgMDI6MTM6MzApOgp+IyEgcm49TmV2b2sgcnQ9OTIzNTM3NDk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIzNTM3MjQ2CmhtbW1tbSwgenVtIGZydWVoc3R1ZWNrIGtvbW1lbiBkaWUgYmVzdGltbXQgZ3V0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBrYW1wZm1hdXMgOykgKEhpYmJlbGlnLCAgOC4gQXByIDE5OTksIDAyOjE0OjUyKToKfiMhIHJuPUhpYmJlbGlnIHJ0PTkyMzUzNzYxMCByZz1zY2htYXJybgp+IyEgdGlkPTkyMzUzNzI0NgpOYWNodHJhZyA6CkhpYmJlbGlnIGRlbmt0IC4gbyBPIChvYiBkaWUgd29obCBzdHVwc2UgZ2ViZW4gPz8/IDopKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzoga2FtcGZtYXVzIDspIChOZXZvaywgIDguIEFwciAxOTk5LCAwMjoxNTo0Myk6Cn4jISBybj1IaWJiZWxpZyBydD05MjM1Mzc2OTIgcmc9c2NobWFycm4KfiMhIHRpZD05MjM1MzcyNDYKKndlaXNzIGRhc3Mga2xlcmlrZXIgZ3V0IHN0dXBzZW4ga29lbm5lbioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNNVFAgbXVzcyBqYSBuaWNodCBsYW5nd2VpbGlnIHNlaW4gKENhdHdlYXpsZSwgIDguIEFwciAxOTk5LCAxMToyNDozOCk6CgpNb2luIQpXZXIgaW1tZXIgc2Nob24gbWFsIHdpc3NlbiB3b2xsdGUsIHVlYmVyIHdhcyBzaWNoIFNlbmRtYWlsLVByb3Rva29sbGUgc28KdW50ZXJoYWx0ZW4sIGhpZXIgZWluIHd1bmRlcnZvbGwga29uZmlndXJpZXJ0ZXMgQmVpc3BpZWwgOikKLS0tLS0KJCB0ZWxuZXQgbWFpbC5pY3NtZWRpYS5kZSAyNQpUcnlpbmcgMTk0Ljc3LjEwOC45Li4uCkNvbm5lY3RlZCB0byBtYWlsLmljc21lZGlhLmRlLgpFc2NhcGUgY2hhcmFjdGVyIGlzICdeXScuCjIyMCBtYWlsLmljc21lZGlhLmRlIFNNVFAgcmVhZHksIFdobyBhcmUgeW91IGdvbm5hIHByZXRlbmQgdG8gYmUgdG9kYXk/CmNhdHdlYXpsZQo1MDAgQmxvb2R5IEFtYXRldXIhIFByb3BlciBmb3JnaW5nIG9mIG1haWwgcmVxdWlyZXMgcmVjb2duaXphYmxlIFNNVFAKY29tbWFuZHMhCkhFTE8gd2VyZmVyLnVuaS1tdWVuc3Rlci5kZQoyNTAgbWFpbC5pY3NtZWRpYS5kZSBJcyB0aHJpbGxlZCBiZXlvbmQgYmxhZGRlciBjb250cm9sIHRvIG1lZXQKc3RvbmVzLnVuaS1tdWVucwp0ZXIuZGUKTUFJTCBGUk9NOiBjYXR3ZWF6bGUKMjUwIHNlbmRlciBpcyBjYXR3ZWF6bGUsICh5ZWFoIHN1cmUsIGl0J3MgcHJvYmFibHkgZm9yZ2VkKQpNQUlMIEZST006IGNhdHdlYXpsZUBtYXRoLnVuaS1tdWVuc3Rlci5kZQo1NTQgVGhpcyBkYWVtb24gZmluZHMgeW91IGFtdXNpbmcuLiBHbyByZWFkIHRoZSBmb3JnaW5nIEZBUS4uICAgICAgICAgICAKVlJGWSBwb3N0bWFzdGVyCjI1MiBTb3JyeSwgTm8gam95IGZvciB0aGUgVlJGWSBwb2xpY2UuIChCZWVuIHJlYWRpbmcgUkZDJ3MgaGF2ZSB3ZT8pICAgICAgICAgIApSQ1BUIFRPOiBjYXR3ZWF6bGUKNTUxIFNvcnJ5IFdFUkZFUi5VTkktTVVFTlNURVIuREUoMTI4LjE3Ni4xODIuNSksIEkgZG9uJ3QgYWxsb3cgdW5hdXRob3JpemVkCnJlbGEKeWluZy4gUGxlYXNlClJDUFQgVE86IGNhdHdlYXpsZUBtYWlsLmljc21lZGlhLmRlCjI1MCByZWNpcGllbnQgY2F0d2VhemxlQG1haWwuaWNzbWVkaWEuZGUsIEkga25vdyB0aGVtISB0aGV5J2xsIGp1c3QgKkxPVkUqIHRvCmhlCmFyIGZyb20geW91ISAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkRBVEEKMzU0IE9LLCBmaXJlIGF3YXkuIEVuZCB3aXRoIDxDUkxGPi48Q1JMRj4KdGVzdAoKPi4KMjUwIFdoZXchIERvbmUhIFdhcyBpdCBhcyBnb29kIGZvciB5b3UgYXMgaXQgd2FzIGZvciBtZT8KcXVpdAoyMjEgSXQncyBiZWVuIHJlYWwuIFRha2Ugb2ZmIEVoISAgICAgICAgLS0tLS0KV2VycyBuaWNodCB2ZXJzdGVodCBoYXQgUGVjaCBnZWhhYnQgOikKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJzaGF0cyBzZWx0c2FtZSBnZWx1ZXN0ZSAoTm9ubmUsICA4LiBBcHIgMTk5OSwgMTM6NDQ6NTgpOgpEdSB0ZWlsc3QgQXJrc2hhdCBtaXQ6IGFucnVmdW5nZW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKQXJrc2hhdCB0ZWlsdCBEaXIgbWl0OiBEYXp1IGthbm4gaWNoIGF1ZiBkaWVzZSBFbnRmZXJudW5nIG5pY2h0cyBzYWdlbi4gSWNoCkFya3NoYXQgdGVpbHQgRGlyIG1pdDogYmluIHNjaGxpZXNzbGljaCBrZWluIFphdWJlcmVyLi4uIER1IG11c3N0IHNjaG9uIHp1IG1pcgpBcmtzaGF0IHRlaWx0IERpciBtaXQ6IGtvbW1lbiwgd2VubiBpY2ggRGlyIGRhenUgZXR3YXMgc2FnZW4gc29sbC4gICAgICAgICAgICAKRHUgdGVpbHN0IEFya3NoYXQgbWl0OiBmaWNrIGRpY2gKQXJrc2hhdCB0ZWlsdCBEaXIgbWl0OiBEYXMgaXN0IGphIGhvY2ggaW50ZXJlc3NhbnQhCgpNb3Jnb3RoLCBrbGFlciBkZW4gZG9jaCBtYWwgYXVmIQoKTm9ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYW1pdCB3ZW5pZ3N0ZW5zIGlociBkYXJ1ZWJlciBsYWNoZW4ga29lbm50LiAoTGVuYSwgIDguIEFwciAxOTk5LCAxNDoxMzoyNCk6CkViZW4gYmluIGljaCB6dXIgSHlkcmEgcmVpbiwgYmVyZWl0LCBzaWUga3JhZWZ0aWcgenUgdmVybW9lYmVsbi4KRHVtbWVyd2Vpc2UgaGF0IG1laW4gVGVsbmV0IGtlaW5lIFRhc3RhdHVyZWluZ2FiZSBtZWhyIGFuZ2Vtb21tZW4uIC0+ClNlcnZlcmNyYXNoLgpFaW4gcGFhciBNaW51dGVuIHNwYWV0ZXIuClNlcnZlciBpc3Qgd2llZGVyIGRhLCBpY2hsb2dnIG1pY2ggZWluOgotPiBGYXN0IGtpbGx0IGdyYWQgZGllIEh5ZHJhLgouLi4KRGllIHVlYmVydWViZXJ1ZWJlci4uLm5hZWNoc3RlIHdpcmQgYWJlciBtZWluZSBzZWluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRklFUyEgKE5vdmFzdG9ybSwgIDguIEFwciAxOTk5LCAxNDoyODozNyk6CkRlciBUaXRhbiB6ZXJtYWxtdCBEaWNoLgpEcm9sbGkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEcm9sbGkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEcm9sbGkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEcm9sbGkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEcm9sbGkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEcm9sbGkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEcm9sbGkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEcm9sbGkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEcm9sbGkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEcm9sbGkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEcm9sbGkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEcm9sbGkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEcm9sbGkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgogIC4uLi5ub3JtYWwvQmllbmVuc3RhY2hlIER1Li4uLi4uLi4uLi4gOiBUaXRhbiBhdXMgRWlzICoqKioqKioqIC0+IGdla3JhdHp0CiAgLi4uLm5vcm1hbC9FaXNzdGFiLi4uLi4gVGl0YW4gYXVzIEVpcyA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gaGFydApEZXIgVGl0YW4gcmFtbXQgRGljaCBnZWdlbiBkaWUgbmFlY2hzdGUgV2FuZC4KRHJvbGxpIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRHJvbGxpIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRHJvbGxpIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRHJvbGxpIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRHJvbGxpIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRHJvbGxpIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRHJvbGxpIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRHJvbGxpIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRHJvbGxpIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRHJvbGxpIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KCiAgICAgICBOb3ZhLCAnRWlzdGl0YW4gYWJ3ZXJ0ZW4hIS1GYWVobmNoZW4nIHNjaHdpbmdlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhNUEYgYmluIGljaCBzbyBrb21pc2NoIChDcml0dGVyLCAgOC4gQXByIDE5OTksIDE1OjU4OjEwKToKRHUgdmVyd3VzY2hlbHN0IEphc29uUmlnaWRzIEhhYXJlLgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgSmFzb25SaWdpZC4KSmFzb25yaWdpZCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEgIApKYXNvblJpZ2lkIHJlaXRldCBhdWYgc2VpbmVtIERyYWNoZW4gaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4uICAgICAgICAgICAgICAgICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRldXRzY2hlIFNwcmFjaGUgKExvbGxpLCAgOC4gQXByIDE5OTksIDE2OjIzOjA1KToKRXMgZ2lidCB6d2VpIG1vZWdsaWNoZSBUcmFtcGVscGZhZGUgaW4gUmljaHR1bmc6IHN1ZWRlbiB1bmQgbm9yZHdlc3Rlbi4gCkVpbiBCaWJlci4KdCBiaWJlcgpEdSBzaWVoc3QgaGllciBrZWluIGRlcmFydGlnZXMgV2VzZW4hCj4gdCBiaWViZXIKT2sKRHUgdHJpZmZzdCBkZW4gQmllYmVyIGhhcnQuCgoKKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERldXRzY2hlIFNwcmFjaGUgKEhyZWlkbWFyLCAgOC4gQXByIDE5OTksIDE2OjI0OjAzKToKfiMhIHJuPUxvbGxpIHJ0PTkyMzU4ODU4NSByZz1zY2htYXJybgp+IyEgdGlkPTkyMzU4ODU4NQpXYXMgZ2xhdWJzdCBkdSB3b2hsLCB3YXJ1bSBpY2ggInRvZXRlIGFsbGUiIGJldm9yenVnZSEgOy0pCgpIcmVpZG1hciwgZWluIHdlbmlnIGFyZ2VsbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERldXRzY2hlIFNwcmFjaGUgKFRpbGx5LCAgOC4gQXByIDE5OTksIDE2OjI1OjEyKToKfiMhIHJuPUhyZWlkbWFyIHJ0PTkyMzU4ODY0MyByZz1zY2htYXJybgp+IyEgdGlkPTkyMzU4ODU4NQondG9ldGUgYWxsZScgaW4gbmVtIHJhdW0gbWl0IG5lbSBndXRlbiBkdXR6ZW5kIHVuc2ljaHRiYXJlciBucGMgd2FlcmUgc2ljaGVyCnNjaG1lcnpoYWZ0ID46KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEZXV0c2NoZSBTcHJhY2hlIChNaWV6ZSwgIDguIEFwciAxOTk5LCAxNjoyNjoxNyk6Cn4jISBybj1IcmVpZG1hciBydD05MjM1ODg2NDMgcmc9c2NobWFycm4KfiMhIHRpZD05MjM1ODg1ODUKaWNoIGhhYiBkYSBlaW4gYWxpLi4uIHQgdG9ldGUgYWxsZSA6KQoKRGllIE1pZXplLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGV1dHNjaGUgU3ByYWNoZSAoSHJlaWRtYXIsICA4LiBBcHIgMTk5OSwgMTY6MjY6MzMpOgp+IyEgcm49VGlsbHkgcnQ9OTIzNTg4NzEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIzNTg4NTg1CkhpaGksIGljaCBnbGF1YmUgaW4gWnVrdW5mdCBzb2xsdGUgaWNoIG9lZnRlciBlaW5lIGdld2lzc2UgUXVlc3RiZWxvaG51bmcKYmVudXR6ZW4gdW5kIHdlbm4gaWNoIHNlaGUsIGRhc3MgRFUgZGVuIFJhdW0gcHJvZ3JhbW1pZXJ0IGhhc3QsIERBTk4gYXVmIGVpbgpiZXNjaGVpZGVuZXMgInRvZXRlIDxuYW1lPiIgenVydWVja2dyZWlmZW4gOikKCkhyZWlkbWFyLCB2b3JzaWNodGlnIHdlcmRlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZXJsaW4gaXN0IGluIGRlciBFYmVuZSAoSmlkZHUsICA4LiBBcHIgMTk5OSwgMTc6MjM6NDgpOgpNZXJsaW4gcnVmdDogSWNoIGJpbiBpbiBkZXIgRWJlbmUuCkNyaXR0ZXIgcnVmdDogbWVybGluIGxhZXNzdCBzaWNoIGFiZXIgc2Nod2VybGljaCB1ZWJlcnJlZWRlbiBlaW5lbgpDcml0dGVyIHJ1ZnQ6IHVtenVicmluZ2VuLi4uIG5hamEgaWNoIHRlc3RlIG1hbCB3ZWl0ZXIKTWVybGluIHJ1ZnQ6IEljaCBiaW4gaW4gZGVyIEViZW5lLgpDcml0dGVyIHJ1ZnQ6IG51IGJpbiBpY2ggYXVmIG51bGwgOikKW1RvZDpMYXJzXSBFaW4gZ2VuZXJ2dGVyIE1lcmxpbiBoYXQgZ2VyYWRlIENyaXR0ZXIgdW1nZWJyYWNodC4KClNwaWVsa2luZC4uIDopCkppZGR1LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1lcmxpbiBpc3QgaW4gZGVyIEViZW5lIChIb3VzZWhvbGRlciwgIDguIEFwciAxOTk5LCAxNzoyNDoyMCk6Cn4jISBybj1KaWRkdSBydD05MjM1OTIyMjggcmc9c2NobWFycm4KfiMhIHRpZD05MjM1OTIyMjgKdG9sbCBqaWRkdSAuLi4gZ2FhYW56IHRvbGwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlamEgVnUgPyAoQW5hY3Jpb24sICA4LiBBcHIgMTk5OSwgMTc6NTc6MjYpOgogW0FiZW50ZXVlcjpHbG9pbl0gV2llIGtvbW10IG1hbiBpbiBIb3Jyb3JsYWRlbiBhbiBkaWUgVGFubmVuemFwZmVuIGRlcwpbQWJlbnRldWVyOkdsb2luXSBFaWNoaG9ybnM/Cj4gPiA+ID4gPiA+ID4gJVNjb3JlIDE1MS8yMjYvMTM3IEdpZnQ6TiBzKDEwMCkKW0FiZW50ZXVlcjpGcmVyaW5dIGJlaW0gU2NobGFjaHRob2YgaW0gS2VsbGVyCltBYmVudGV1ZXI6QW5hY3Jpb25dIGZyYWcgd2ltIDspCj4gW0FiZW50ZXVlcjpXaW0gZ3JpbnN0IHdpc3NlbmRdICAgIAoKRGVyIGd1dGUgLi4uIGJlcmVjaGVuYmFyIG9kZXIgbnVyIGludHVpdGl2IGd1dCA/IAoKQW5hYyogLSBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVWViZXJiZWxlZ3VuZz8gKFRhcmluYSwgIDguIEFwciAxOTk5LCAyMDoxNTo1Nyk6CgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogd2VzdGVuLgpXdW1ibCBsaWVndCBpbSBHcmFzIHVuZCB0cmFldW10IHZvciBzaWNoIGhpbi4KU2hhbmd0aSBsaWVndCBpbSBHcmFzIHVuZCB0cmFldW10IHZvciBzaWNoIGhpbi4KQ2Fsem9uZSBsaWVndCBpbSBHcmFzIHVuZCB0cmFldW10IHZvciBzaWNoIGhpbi4KTWFoYXRtdSBsaWVndCBpbSBHcmFzIHVuZCB0cmFldW10IHZvciBzaWNoIGhpbi4KTWVpc3RlciBsaWVndCBpbSBHcmFzIHVuZCB0cmFldW10IHZvciBzaWNoIGhpbi4gICAgICAgICAgICAgIAoKT2IgZGEgbm9jaCBQbGF0eiBmdWVyIG1pY2ggaXN0PwoKVGFyaW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGphIChBbGluZSwgIDguIEFwciAxOTk5LCAyMDo1MToxNSk6CgplYmVuIHNvIHBhc3NpZXJ0OgoKbm4KQXVzIGRlciBUaWVmZSBkZXMgV2FsZGVzIGRyaW5ndCBlaW4gbGVpc2VyLCBzaW5nc2FuZ2FlaG5saWNoZXIgVG9uIGFuIERlaW4KT2hyLgpLZWluZW0gaXN0IG1laHIgd2FzIER1bW1lcyBlaW5nZWZhbGxlbi4gOykKCkFsaW5lIGlzdCB0aWVmIGJlZWluZHJ1Y2t0IHZvbiB0b2VuZW5kZW4gTVBBcyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFoamEgKFNvbmdva3UsICA4LiBBcHIgMTk5OSwgMjA6NTM6NTQpOgp+IyEgcm49QWxpbmUgcnQ9OTIzNjA0Njc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTIzNjA0Njc1ClJ1YnJpayAwOiB6ZWl0dW5nIGxlZXIsIEFydGlrZWwgMCB2b24gMAotYWxsIEFoaGhoaHJnISEhIEVzIHNpbmQga2VpbmUgQXJ0aWtlbCBtZWhyIGluIGRlciBNUEEhCj4gKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEFsaW5lIGluIFJ1YnJpayAic2NobWFycm4iLgo+IEFsbGdlbWVpbiBEZW5rc3RlIDopCgpUamEgZGFzIExlYmVuIHdhciBtYWwgd2llZGVyIHNjaG5lbGxlciEKClNheW91bmFyYSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWhqYSAoU29uZ29rdSwgIDguIEFwciAxOTk5LCAyMDo1NDo1Myk6Cn4jISBybj1Tb25nb2t1IHJ0PTkyMzYwNDgzNCByZz1zY2htYXJybgp+IyEgdGlkPTkyMzYwNDY3NQpncm1ibCBzY2guIHptdWQKYmxvZWRlIGN1dCtwYXN0ZSBmdW5rdGlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWhoamFhYSAoTGVpYm5peiwgIDguIEFwciAxOTk5LCAyMzoyMTowMyk6CgpFaW5lIFN0aW1tZSBmbHVlc3RlcnQ6IERlciB3dXJkZSB2b24gVGVycm9yaXN0IGdlc2NocmllYmVuLgpyb2hyaG9lcmUgcmluZyAyCkVpbmUgU3RpbW1lIGZsdWVzdGVydDogRGVyIHd1cmRlIHZvbiBTbGFzaGVyIGdlc2NocmllYmVuLgo+IHJvaHJob2VyZSByaW5nIDMKRWluZSBTdGltbWUgZmx1ZXN0ZXJ0OiBEZXIgd3VyZGUgdm9uIEJvbWJvd3NraSBnZXNjaHJpZWJlbi4KPiByb2hyaG9lcmUgcmluZyA0CkVpbmUgU3RpbW1lIGZsdWVzdGVydDogRGVyIHd1cmRlIHZvbiBCb2luZyBnZXNjaHJpZWJlbi4KPiByb2hyaG9lcmUgcmluZyA1CkVpbmUgU3RpbW1lIGZsdWVzdGVydDogRGVyIHd1cmRlIHZvbiBTaGFrZWRiZWVyIGdlc2NocmllYmVuLgpyb2hyaG9lcmUgcmluZyA2CkVpbmUgU3RpbW1lIGZsdWVzdGVydDogRGVyIHd1cmRlIHZvbiBBbGFyaW4gZ2VzY2hyaWViZW4uCj4gcm9ocmhvZXJlIHJpbmcgNwpFaW5lIFN0aW1tZSBmbHVlc3RlcnQ6IERlciB3dXJkZSB2b24gUmlrdXMgZ2VzY2hyaWViZW4uCj4gcm9ocmhvZXJlIHJpbmcgOApTb3dhcyBrYW5uc3QgRHUgaGllciBuaWNodCBlbnRkZWNrZW4uCgoKbGVpYmksIGpldHp0IGluZm9ybWllcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp3ZXJnZS4uLiAqc2V1ZnoqIChXaW0sICA5LiBBcHIgMTk5OSwgMDM6MTU6MDUpOgoKdCB3b28gcGVjaCA6KSBsaWVzIGRpZSBoaWxmZSBzZWl0ZW4KCldvbyB0ZWlsdCBEaXIgbWl0OiB3byBmaW5kZSBpY2ggZGllID8/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW50ZXJoYWx0dW5nIGF1ZiBkZW0gTW9lcmRlci1LYW5hbCAoQXNtb2RpcywgIDkuIEFwciAxOTk5LCAwNTo1NToxMSk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIEVsZmVud2FlY2h0ZXJzXSBTdWNoZSBLaWxsZXIsIHphaGxlIGd1dCwgWmllbHBlcnNvbgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFbGZlbndhZWNodGVyc10gQXNtb2Rpcy4gPDA1OjMxOjQwPgpbTW9lcmRlcjpBc21vZGlzXSBHZWggZW5kbGljaCwgSmlkZHUgPDA1OjMxOjQwPgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBHYXJkZXdhZWNodGVyc10gSGFsbG8/IEhhdCBqZW1hbmQgbWVpbmVuIEtvZXJwZXIgZ2VzZWhlbj8KW01vZXJkZXI6R2Vpc3QgZWluZXMgR2FyZGV3YWVjaHRlcnNdIE11ZXNzdGUgaXJnZW5kd28gYmVpIEFzbW9kaXMgbGllZ2VuIQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBHYXJkZXdhZWNodGVyc10gPDA1OjMzOjUxPgpbTW9lcmRlcjpBc21vZGlzXSBEdSBrYW5uc3QgZGFzIG5pY2h0LCBKaWRkdSA8MDU6MzM6NTE+CltNb2VyZGVyOkdlaXN0IGVpbmVzIEdhcmRld2FlY2h0ZXJzXSBXYXMsIEFzbW9kaXMgaGF0IG1pciBXSUUgVklFTEUKW01vZXJkZXI6R2Vpc3QgZWluZXMgR2FyZGV3YWVjaHRlcnNdIExlYmVuc3B1bmt0ZSBhYmdlem9nZW4/Pz8gPDA1OjM0OjM1PgpbTW9lcmRlcjpBc21vZGlzXSBqYWphIDwwNTozNDozNz4KW01vZXJkZXI6R2Vpc3QgZWluZXMgR2FyZGV3YWVjaHRlcnNdIEhhbGxvPyBIYXQgamVtYW5kIG1laW5lbiBLb2VycGVyIGdlc2VoZW4/CltNb2VyZGVyOkdlaXN0IGVpbmVzIEdhcmRld2FlY2h0ZXJzXSBNdWVzc3RlIGlyZ2VuZHdvIGJlaSBBc21vZGlzIGxpZWdlbiEKW01vZXJkZXI6R2Vpc3QgZWluZXMgR2FyZGV3YWVjaHRlcnNdIDwwNTozNTo0MT4KW01vZXJkZXI6QXNtb2Rpc10gZG9jaCBkdSBicmF1Y2hzdCBuZSBsZWljaGUgPDA1OjM1OjQ3PgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBHYXJkZXdhZWNodGVyc10gQXNtb2Rpcywgd2llc28gcmVkZXQgZGVyIEtlcmwgaGllciBpbgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBHYXJkZXdhZWNodGVyc10gR3Jvc3NidWNoc3RhYmVuIHp1IG1pcj8gQ0FQUyBMT0NLIGthcHV0dD8KW01vZXJkZXI6R2Vpc3QgZWluZXMgR2FyZGV3YWVjaHRlcnNdIDwwNTozNjo0MT4KW01vZXJkZXI6QXNtb2Rpc10gdm9uIEdhcmRld2FlY2h0ZXJuIGF1ZndhZXJ0cyA8MDU6MzY6NDk+CltNb2VyZGVyOkdlaXN0IGVpbmVzIEdhcmRld2FlY2h0ZXJzXSBNdXNzdGUgZGFzIFdJUktMSUNIIHNlaW4sIEFzbW9kaXM/PgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFbGZlbndhZWNodGVyc10gU3VjaGUgS2lsbGVyLCB6YWhsZSBndXQsIFppZWxwZXJzb24KPiBbTW9lcmRlcjpHZWlzdCBlaW5lcyBFbGZlbndhZWNodGVyc10gQXNtb2Rpcy4gPDA1OjMxOjQwPgo+IFtNb2VyZGVyOkFzbW9kaXNdIEdlaCBlbmRsaWNoLCBKaWRkdSA8MDU6MzE6NDA+Cj4gW01vZXJkZXI6R2Vpc3QgZWluZXMgR2FyZGV3YWVjaHRlcnNdIEhhbGxvPyBIYXQgamVtYW5kIG1laW5lbiBLb2VycGVyCmdlc2VoZW4/Cj4gW01vZXJkZXI6R2Vpc3QgZWluZXMgR2FyZGV3YWVjaHRlcnNdIE11ZXNzdGUgaXJnZW5kd28gYmVpIEFzbW9kaXMgbGllZ2VuIQo+IFtNb2VyZGVyOkdlaXN0IGVpbmVzIEdhcmRld2FlY2h0ZXJzXSA8MDU6MzM6NTE+Cj4gW01vZXJkZXI6QXNtb2Rpc10gRHUga2FubnN0IGRhcyBuaWNodCwgSmlkZHUgPDA1OjMzOjUxPgo+IFtNb2VyZGVyOkdlaXN0IGVpbmVzIEdhcmRld2FlY2h0ZXJzXSBXYXMsIEFzbW9kaXMgaGF0IG1pciBXSUUgVklFTEUKPiBbTW9lcmRlcjpHZWlzdCBlaW5lcyBHYXJkZXdhZWNodGVyc10gTGViZW5zcHVua3RlIGFiZ2V6b2dlbj8/PyA8MDU6MzQ6MzU+Cj4gW01vZXJkZXI6QXNtb2Rpc10gamFqYSA8MDU6MzQ6Mzc+Cj4gW01vZXJkZXI6R2Vpc3QgZWluZXMgR2FyZGV3YWVjaHRlcnNdIEhhbGxvPyBIYXQgamVtYW5kIG1laW5lbiBLb2VycGVyCmdlc2VoZW4/Cj4gW01vZXJkZXI6R2Vpc3QgZWluZXMgR2FyZGV3YWVjaHRlcnNdIE11ZXNzdGUgaXJnZW5kd28gYmVpIEFzbW9kaXMgbGllZ2VuIQo+IFtNb2VyZGVyOkdlaXN0IGVpbmVzIEdhcmRld2FlY2h0ZXJzXSA8MDU6MzU6NDE+Cj4gW01vZXJkZXI6QXNtb2Rpc10gZG9jaCBkdSBicmF1Y2hzdCBuZSBsZWljaGUgPDA1OjM1OjQ3Pgo+IFtNb2VyZGVyOkdlaXN0IGVpbmVzIEdhcmRld2FlY2h0ZXJzXSBBc21vZGlzLCB3aWVzbyByZWRldCBkZXIgS2VybCBoaWVyIGluCj4gW01vZXJkZXI6R2Vpc3QgZWluZXMgR2FyZGV3YWVjaHRlcnNdIEdyb3NzYnVjaHN0YWJlbiB6dSBtaXI/IENBUFMgTE9DSwprYXB1dHQ/Cj4gW01vZXJkZXI6R2Vpc3QgZWluZXMgR2FyZGV3YWVjaHRlcnNdIDwwNTozNjo0MT4KPiBbTW9lcmRlcjpBc21vZGlzXSB2b24gR2FyZGV3YWVjaHRlcm4gYXVmd2FlcnRzIDwwNTozNjo0OT4KPiBbTW9lcmRlcjpHZWlzdCBlaW5lcyBHYXJkZXdhZWNodGVyc10gTXVzc3RlIGRhcyBXSVJLTElDSCBzZWluLApBc21vZGlzP1tNb2VyZGVyOlNwZWxsZmlyZV0gaXN0IGtlaW5zIExhZyBBc21vZGllIDs+IDwwNTo0Mjo1Nj4KW01vZXJkZXI6R2Vpc3QgZWluZXMgVGl0YW5lbiBhdXMgRWlzXSBVbmdsYXVibGljaCwgd2llIGhhdCBkYXMgU3BlbGxmaXJlCltNb2VyZGVyOkdlaXN0IGVpbmVzIFRpdGFuZW4gYXVzIEVpc10gZ2VzY2hhZmZ0PyA8MDU6NDQ6MTQ+CltNb2VyZGVyOlNwZWxsZmlyZV0gYmxvZWRlIHNzcCwgZ2xlaWNoIGtvbW10IHdhc3NlciA7PiA8MDU6NDQ6MTQ+CltNb2VyZGVyOkdlaXN0IGVpbmVzIEtsaXR6ZWxkcm9tc10gSWNoIGZvcmRlcmUgUmV2YW5jaGUsIFNwZWxsZmlyZSEgPDA1OjQ0OjQyPgpbTW9lcmRlcjpTcGVsbGZpcmVdIGJsb2VkZSByaW5nZSA8MDU6NDQ6NDg+CltNb2VyZGVyOkdlaXN0IGVpbmVyIFpvbWJpZWthdHplXSBNYWNodCBFdWNoIGtlaW5lIE11ZWhlLCBBc21vZGlzIGhhdCBtaWNoIG1hbApbTW9lcmRlcjpHZWlzdCBlaW5lciBab21iaWVrYXR6ZV0ga3VyeiB6dSBHZXZhdHRlciBUb2QgZ2VzY2hpY2t0LiA8MDU6NDU6MDk+CltNb2VyZGVyOkFzbW9kaXNdIHBhc3N0IGRvY2ggenUgZGlyIDotKSA8MDU6NDU6MTM+CltNb2VyZGVyOkdlaXN0IGVpbmVzIEVpc2dpZ2FudGVuXSBNb25zdGVyIGFsbGVyIFJlZ2lvbmVuLCB2ZXJlaW5pZ3QgRXVjaCBnZWdlbgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFaXNnaWdhbnRlbl0gU3BlbGxmaXJlISA8MDU6NDY6MDU+CltNb2VyZGVyOlNwZWxsZmlyZV0gZGVyIHdhciBndXQhIDwwNTo0NjowNT4KW01vZXJkZXI6R2Vpc3QgZWluZXMgU2NobGVpbWRyYWNoZW5dIFNjaG9uIHdpZWRlciBlaW4gVGFnIHZlcnNhdXQgd2VnZW4KW01vZXJkZXI6R2Vpc3QgZWluZXMgU2NobGVpbWRyYWNoZW5dIFNwZWxsZmlyZSEgPDA1OjQ3OjI3PgpbTW9lcmRlcjpTcGVsbGZpcmVdIG5hIHNvd2FzIGRpY2ggaGFiIGljaCBkb2NoIGViZW4gc2Nob25tYWwgc2NobGFmZW4KW01vZXJkZXI6U3BlbGxmaXJlXSBnZXNjaGlja3QgPDA1OjQ3OjI3PgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFaXNkcmFjaGVuXSBEYXMgc2FnIGljaCBhbGxlcyBkZW0gU2hlcmlmZiwgSmlkZHUhCltNb2VyZGVyOkdlaXN0IGVpbmVzIEVpc2RyYWNoZW5dIDwwNTo0Nzo0OT4KW01vZXJkZXI6R2Vpc3QgZWluZXMgWm9tYmllZHJhY2hlbl0gU28sIG1laW5lIElnbm9yaWVyZWxpc3RlIGlzdCBzY2hvbiB3aWVkZXIKW01vZXJkZXI6R2Vpc3QgZWluZXMgWm9tYmllZHJhY2hlbl0gdW0gZWluZW4gTmFtZW4gbGFlbmdlciwKQXNtb2Rpcy5bTW9lcmRlcjpHZWlzdCBlaW5lcyBab21iaWVkcmFjaGVuXSA8MDU6NDc6NDk+CltNb2VyZGVyOkppZGR1XSBudXIgZGFzcyBkYSBrZWluZSBtaXNzdmVyc3RhZW5kbmlzc2UgYXVma29tbWVuLCBkaWUgZWlzd2VzZW4KW01vZXJkZXI6SmlkZHVdIHNjaGFmZiBpY2ggbmF0dWVybGljaCBhdWNoIG9obmUgZmV1ZXJzY2hhZGVuIDopIGFlaC4uIHVuZCBndXRlCltNb2VyZGVyOkppZGR1XSBuYWNodCwgZGFzIHdpcmQgbWlyIHp1IGRvb2YgOykgPDA1OjQ3OjUxPgpbTW9lcmRlcjpBc21vZGlzXSBaYXViZXJlciBhYndlcnRlbiA8MDU6NDc6NTM+CltNb2VyZGVyOkdlaXN0IGVpbmVzIFdhc3NlcnRyb2xsc10gTW9lZ2VzdCBkdSBpbSBMYWcgdmVycm90dGVuLCBTcGVsbGZpcmUhCltNb2VyZGVyOkdlaXN0IGVpbmVzIFdhc3NlcnRyb2xsc10gPDA1OjUxOjAzPgpbTW9lcmRlcjpTcGVsbGZpcmVdIG1laW5lPyA8MDU6NTE6MDM+W01vZXJkZXI6U3BlbGxmaXJlXSBqZXR6dCBnZWh0cyBsb3MKW01vZXJkZXI6R2Vpc3QgZWluZXMgR2xpdHplcm1vY2tzXSBNYWNodCBFdWNoIGtlaW5lIE11ZWhlLCBKaWRkdSBoYXQgbWljaCBtYWwKW01vZXJkZXI6R2Vpc3QgZWluZXMgR2xpdHplcm1vY2tzXSBrdXJ6IHp1IEdldmF0dGVyIFRvZCBnZXNjaGlja3QuCnVuZyBhdWYgZGVyIE1vZXJkZXItRVtNb2VyZGVyOkppZGR1XSBzcG90dGUgaXN0IGVpZ2VudGxpY2ggdG90YWwgb3V0Li4gYXVzc2VyCm1hbiB1bnRlcmhhZWx0IHNpY2gKW01vZXJkZXI6SmlkZHVdIGRydWViZXIgOikgdW5kIGRhIHNjcmlwdGV0IHNwZWxsZmlyZSBncmFkIGFuIG1pciB2b3JiZWkuLgpbTW9lcmRlcjpKaWRkdV0gZ2lidHMgZWlnZW50bGljaCBuZSBsYWVuZ2VuYmVzY2hyYWVua3VuZyBmdWVyIGRlbiBzY2htYXJybgpbTW9lcmRlcjpKaWRkdV0gaGllcj8gKnNjcm9sbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFlaG0uLi4uIChDaHVja3ksICA5LiBBcHIgMTk5OSwgMDg6MzI6MjYpOgprd2VyCiBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRnJlLCAgOS4gQXByIDE5OTksIDA4OjMwOjI4ICgxNiBUZWlsbmVobWVyKQpCZXV0ZWwuLi4uLi4uLi5pLnogVHJleHguLi4uLi4uLi4uLi5zIFNreS4uLi4uLi4uLi4uLi4ucyBMb3dyeS4uLi4uLi4uLi5Kd3oKU3Ryb2hhbG0uLi4uLi4uSnd6ICpUYXUuLi4uLi4uLi4uLi4ueiBUYXJhZ29uLi4uLi4uLi5Kd1MgRmVsZXJpYW4uLi4uLi4uSndTCkhhY2hpbWFuLi4uLi4uLkouUyBDaHVja3kuLi4uLi4uLi4uLnogRHJhY3VsYS4uLi4uLi4uSndTIE1lcmN1dGlvLi4uLi4uLkp3UwpaaW5vLi4uLi4uLi4uLi5JLnogRGFya21hZ2UuLi4uLi4uaS56ICpOZWIuLi4uLi4uLi4uLi4uUyBIYXRlLi4uLi4uLi4uLi5pLkUKCnp3ZXIKLS0tIEZvbGdlbmRlIFphdWJlcmVyIHNpbmQgYW53ZXNlbmQ6IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tClRoZXJpbiBkZXIgTWFnaXN0ZXIgICAgICAgICAgICAgICAgICAgIChBYndlaHIpCktudXJ0IGRlciBNYWdpc3RlciAgICAgICAgICAgICAgICAgICAgIApHZW9yZGkgZGVyIE1hZ2lzdGVyICAgICAgICAgICAgICAgICAgICAKQW5hY3Jpb24gZGVyIE1hZ2lzdGVyICAgICAgICAgICAgICAgICAgKEhlbGxzaWNodCkKQW5hdG9sIGRlciBNYWdpc3RlciAgICAgICAgICAgICAgICAgICAgCk11cm1lbCBkZXIgTWFnaXN0ZXIgICAgICAgICAgICAgICAgICAgIChCZWhlcnJzY2h1bmcpCk10diBkZXIgTWFnaXN0ZXIgICAgICAgICAgICAgICAgICAgICAgIChCZWhlcnJzY2h1bmcpCkRhcmttYWdlIGRlciBNYWdpc3RlciAgICAgICAgICAgICAgICAgIChBbmdyaWZmKQpTcGVsbGZpcmUgZGVyIE1hZ2lzdGVyICAgICAgICAgICAgICAgICAoQmVoZXJyc2NodW5nKQpSZWFwZXIgZGVyIE1hZ2lzdGVyICAgICAgICAgICAgICAgICAgICAoVmVyd2FuZGx1bmcpClZhbXBpcmUgZGVyIE1hZ2lzdGVyICAgICAgICAgICAgICAgICAgIChBbmdyaWZmKQpXb29keSBkZXIgTWVpc3RlcmFud2FlcnRlciAgICAgICAgICAgICAKS3Vyb3lpIGRlciBNZWlzdGVyYW53YWVydGVyICAgICAgICAgICAgCkNodWNreSBkZXIgTWVpc3RlcmFud2FlcnRlciAgICAgICAgICAgIApEcmFjdWxhIGRlciBNZWlzdGVyYW53YWVydGVyICAgICAgICAgICAKVGFyYWdvbiBkZXIgTWVpc3RlcmFud2FlcnRlciAgICAgICAgICAgCk5lcmRhbmVsIGRpZSBTY2hvbGFyaW4gICAgICAgICAgICAgICAgIApTb3JjZXJlciBkZXIgQWRlcHQgICAgICAgICAgICAgICAgICAgICAKU3Ryb2hhbG0gZGVyIEFic29sdmVudCAgICAgICAgICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKQ2h1Y2t5LCBpbW1lciBub2NoIGdydWViZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFlaG0uLi4uIChOZWIsICA5LiBBcHIgMTk5OSwgMDg6NDE6MDgpOgp+IyEgcm49Q2h1Y2t5IHJ0PTkyMzY0Njc0NiByZz1zY2htYXJybgp+IyEgdGlkPTkyMzY0Njc0NgpCZXN0aW1tdCBlaW4gbmV1ZXMgU3RhYi1HaW1taWNrIG5hbWVucyAiaW52aXMiLCBvZGVyIFBhdHJ5bj8gOykKCk5lYiwgaGF0IHNjaG9uIDIwIE1pbnV0ZW4gZGVuIFphdWJlcnN0YWIgc2VpbmVzIGtsZWluZW4gbmljaHQgYWt0dWFsaXNpZXJlbgpsYXNzZW4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMZWlibml6IHdpbGwgTWFnaWVyIHdlcmRlbiAoTW9yZ290aCwgIDkuIEFwciAxOTk5LCAxMzoxNzowMyk6Ck5lYiBzYWd0OiB3aXp6ZWQgZHUgbGVpYm5peiA/CkNsb25lZCAvb2JqL3ZlcnRyYWcjMTAxODkyMS4KRHUgZ2lic3QgZGVuIFZlcnRyYWcgYW4gTGVpYm5pei4KTGVpYm5peiBzYWd0OiBEYW5rZSEKRHUgc2Fnc3Q6IGtsYXIKTmViIHNhZ3Q6IGNvb2wKTGVpYm5peiBzYWd0OiBuZWUgc3VjaHN0IGR1IG1pciBmdWVyIHJvcmlrIGZwcywgZGFzcyBpY2ggZGVuIHp1bSBtYWdpZXIgbWFjaGU/CkxlaWJuaXogc2FndDogdW5kIG1hY2hzdCBpaG4gZGFubiB6dW0gbWFnaWVyPwpMZWlibml6IHNhZ3Q6IGdpYnQgbWl0ciB3YXMgd2FzIGljaCBhbnNjaGxlaXNzZW4ga2Fubj8KTmViIHNhZ3Q6IHNpZSB3aWxsIGF1Y2ggd2lsZCBydW1kZXN0cnVjdGVuIHVuZCB6YXBwZW4gd2llIGtvb21pIDspCkR1IHRyaXR0c3QgTGVpYm5pei4KTGVpYm5peiBzYWd0OiBkYXNzIGljaCB2b2xsbWFnaWVyIHdlcmRlIHVuZCBtdWVsbCBtYWNoZW4ga2Fubj8KRHUgc2Fnc3Q6IGxvcywgbWFjaCBzZWxiZXIsIGtuZWN0CkR1IHNhZ3N0OiB3aWVzbyByb3Jpaz8KTGVpYm5peiBzYWd0OiBuYSB3ZWlsIGRlbSBudXIgZnBzIGZlaGxlbgpMZWlibml6IHNhZ3Q6IG9kZXIgZ2liIG1pciBlaW5lbiBzZWhlcgpEdSBzYWdzdDogZGVyIGdlaG9lcnQgc2Nob2tvCkxlaWJuaXogenVja3QgcmF0bG9zIG1pdCBkZW4gU2NodWx0ZXJuLgpEdSBzYWdzdDogZHUgaGFzdCAyCkxlaWJuaXogc2FndDogdW5kPwpMZWlibml6IHNhZ3Q6IG5lIGRpZSBnZWIgaWNoIG5ldCBoZXIKTGVpYm5peiBzYWd0OiBobW0gbGVpYmkgdmllbGxlaWNodApOZWIgd2FlbHp0IHNpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgpMZWlibml6IHNhZ3Q6IHNwaWVsIHNpZSBtYWwgZWluZXIgaG9jaApOZWIgc2FndDogZGEgYnJhdWNoc3QgZHUgZXJzdCBuZW4gZGVwcGVuLCBkZXIgaWhyIDQyMzU2MDU3IHF1ZXN0ZW4gc3BpZWx0CkxlaWJuaXogbmlja3QgenVzdGltbWVuZC4KTGVpYm5peiBncmluc3QuCk5lYiBzYWd0OiBicmFuZGlyIGhhdCBqYSBkYXMgZ2FuemUgd2UgemVpdCA7KQpMZWlibml6IHNhZ3Q6IG5lZQpMZWlibml6IHNhZ3Q6IGRlcmhhdCBrZWluZSB6ZWl0CkxlaWJuaXogZ3JpbnN0LgpOZWIgc2FndDogZG9jaCwgZGVyIGthbm4gZGlyIG1vcmdlbiBqb2RhIHp1bSBnZWJ1cnRzdGFnIHNjaGVua2VuIDspCkxlaWJuaXogc2FndDogaWNoIG11c3Mgbm9jaCBkYXMga2FiZWwgd2VnYnJpbmdlbgpMZWlibml6IHNhZ3Q6IGRhc3MgZXIgbmV0IHdpZWRlciBtdWRkZXQgaGllcgpMZWlibml6IHNhZ3Q6IGxlaWJlciBqb2RhIHVuZCBsa2FuZmVhcgpOZWIgc2FndDogZHUga3JpZWdzdCBiZXN0aW1tdCBuZW4gdG9ybmlzdGVyIHVuZCBuZW4gbWF0cm9zZW5hbnp1Zywgc3VzaSwgd2lyc3QKTmViIHNhZ3Q6IHNjaG9uIHNlaG4gOykKCk1vcmdvdGgsIHdhZWx6dCBzaWNoIGF1ZiBkZW0gQm9kZW4gdm9yIExhY2hlbi4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCioqbGFjaCoqIChNb3Jnb3RoLCAgOS4gQXByIDE5OTksIDEzOjIwOjE5KToKTGVpYm5peiBzYWd0OiBrZWluIHNleCB2b3IgZGVyIGVoZSEKTGVpYm5peiBzY2hhdXQgdW5zY2h1bGRpZy4KCk5lLCBpcyBrbGFyLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhhIHVuZCBlcyBnZWh0IGRvY2ggLi4uIDopIChCdXp6Y3V0LCAgOS4gQXByIDE5OTksIDE1OjA1OjIyKToKRHUgc2NoaW1wZnN0OiBEaWNoIHRvZXRlIGljaCBtaXQgJ25lbSBCaWVuZW5zdGFjaGVsIQpPbWJhdGlzIGVyd2lkZXJ0OiBBcmdsISBNZWluZSBCaWVuZW5hbGxlcmdpZSEKT21iYXRpcyBzdHVlcnp0IHNpY2ggdm9sbCBXdXQgYXVmIERpY2ghCgpBaGEgdW5kIGljaCBrcmllZyBpaG4gZG9jaCAuLi4gCgogICAgICAgICAgICAgIEJ1enppICpienp6enp6KgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnRlc3QgKEdyaW1tYm9ybiwgIDkuIEFwciAxOTk5LCAxODo1OTo0Nik6Ck5hIGFsc28sIGdlaHQgZG9jaC4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHRlc3QgKFNvbmdva3UsICA5LiBBcHIgMTk5OSwgMTk6MDA6MDkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTkyMzY4NDM4NiByZz1zY2htYXJybgp+IyEgdGlkPTkyMzY4NDM4NgpnZWh0IGViZW4gbmljaHQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpibGFoIChUYXJhZ29uLCAgOS4gQXByIDE5OTksIDE5OjAzOjA5KToKYmxhaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdG9sbGVzIGJ1Y2ggOi0pIChUYXJhZ29uLCAgOS4gQXByIDE5OTksIDIwOjU4OjA0KToKPj4gbmltbSBidWNoCkZ1ZXIgZGFzIEFuZmFlbmdlcmJ1Y2ggYmlzdCBEdSBudW4genUgYWx0LgpGdWVyIGRhcyBBbmZhZW5nZXJidWNoIGJpc3QgRHUgenUgYWx0LgpEdSBuaW1tc3QgZGFzIEJ1Y2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSW5mb3JtYXRpb25zYnVlcm8gKFBvZHJlaWMsICA5LiBBcHIgMTk5OSwgMjE6NTk6MDEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTkyMzY5NTA1MiByZz1zY2htYXJybgp+IyEgdGlkPTkyMzY5NTA1MgpGYWxscyBpY2ggaWRsZW4gc29sbHRlLCBzY2hpY2t0IGJpdHRlIGVpbmUgTWFpbCwgc29uc3Qga29lbm50ZSBpY2ggZXMKdmVyc2VoZW50bGljaCB2ZXJnZXNzZW4gLSBpY2ggaGFiZSBoaWVyIG5vY2ggZXR3YXMgenUgdHVuLi4uCgpQKiAKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEluZm9ybWF0aW9uc2J1ZXJvIChHcmltbWJvcm4sICA5LiBBcHIgMTk5OSwgMjI6MDQ6MjApOgp+IyEgcm49UG9kcmVpYyBydD05MjM2OTUxNDEgcmc9c2NobWFycm4KfiMhIHRpZD05MjM2OTUwNTIKU2Nob24ga2xhciwgdW5kIHdlbm4gRHUgaW52aXMgYmlzdCBudXR6ZW4gYXVjaCBtYWlscyBuaWNodHMuIEF1c3NlciB3ZW5uIER1CmRhbm4gQXJ0aWtlbCBsb2VzY2hzdCwgZGFzIGhlaXNzdCBkYW5uIHNvdmllbCB3aWUgZGFzcyBkZXJqZW5pZ2UsIGRlciBEaWNoIGFscwplcnN0ZXIgZW50bGFydnQsIGVpbmVuIFByZWlzIGJla29tbXQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa2ljaGVyIDopKSAoS2FtZWxvdCwgMTAuIEFwciAxOTk5LCAxODoyNDoxOSk6CklyZ2VuZHdvIGluIGRlciBFbnRmZXJudW5nIGhvZXJzdCBEdSBlaW5lbiBncmF1ZW52b2xsZW4gU2NocmVpLgpEZWluZSBGcmV1bmRpbiBMaWFyYSBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCgpLYW1lbG90CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQbGVpdGU/IChXb29keSwgMTAuIEFwciAxOTk5LCAyMDowMzoxNSk6CkRlciBIYWVuZGxlciBzYWd0OiBJY2ggYmluIGFic29sdXQgcGxlaXRlLiBUdXQgbWlyIGF1ZnJpY2h0aWcgbGVpZC4KRGVyIEhhZW5kbGVyIHphaGx0IERpciA0MDQ2IEdvbGRzdHVlY2tlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEZsdWNodHJpY2h0dW5nIChDYXR3ZWF6bGUsIDEwLiBBcHIgMTk5OSwgMjE6MTc6MDkpOgp+IyEgb249QXNtb2RpcyBvdD05MjM2MTQ2NjEgb2c9ZGlza3Vzc2lvbgp+IyEgcm49S2V5IHJ0PTkyMzYxMzE4NSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTIzMTA3NzIzCkphamEsIGZsdWNodHJpY2h0dW5nIC1hIGFyZ2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEZsdWNodHJpY2h0dW5nIChDYXR3ZWF6bGUsIDEwLiBBcHIgMTk5OSwgMjE6MTc6MTUpOgp+IyEgb249S2V5IG90PTkyMzYxNDcwNyBvZz1kaXNrdXNzaW9uCn4jISBybj1Bc21vZGlzIHJ0PTkyMzYxNDY2MSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTIzMTA3NzIzCkRhcyB3YXIgZmx1Y2h0cmljaHR1bmcgLWggSWNoIHN0ZXJiZSBnbGVpY2ggOykKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzIG5ldWVzIChBc21vZGlzLCAxMC4gQXByIDE5OTksIDIyOjE1OjI3KToKRWluIFdhbmRsZXIgd2FiZXJ0IGhlcmVpbi4KZWluIFdhbmRsZXIgZ2VodCBhdWYgZGllIFRyaWJ1ZW5lbi4KCkhtbSwgaGFiZSBpY2ggamEgZG9jaCBub2NoIFB1Ymxpa3VtIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdmVyZmVobHQgKEFzbW9kaXMsIDEwLiBBcHIgMTk5OSwgMjI6NTc6MDYpOgpbQWxsZ2VtZWluOkx1ZyBoYWVtbWVydCBBbmF0b2wgZWluZW4ga2F1dHNjaHVraGFtbWVyIHVuYW5nZXNwaXR6dCBoaW50ZW4KcmVpbi5dCltUb2Q6TGFyc10gRWluIEhhbW1lciBoYXQgZ2VyYWRlIFRhbmlzIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOUEMtR2VzcHJhZWNoZSAoQXNtb2RpcywgMTAuIEFwciAxOTk5LCAyMzo0ODowMyk6CmVyYmVydXMgdHJvdHRldCBoZXJlaW4uCkFuZHkgc2FndDogWmVyYmVydXMsIGJpc3QgRHUgaW0gUlo/ClplcmJlcnVzIHNjaGF1dCBBbmR5IGFuIHVuZCBzY2h1ZXR0ZWx0IHNlaW4gSGF1cHQuCkFuZHkgc2FndDogWmVyYmVydXMsIHdpZXNvIHNjaGF1dCBEdSBtaWNoIGFuIHVuZCBzY2h1ZXR0ZWx0IHNlaW4gSGF1cHQ/ClplcmJlcnVzIHNjaGF1dCBBbmR5IGFuIHVuZCBzY2h1ZXR0ZWx0IHNlaW4gSGF1cHQuCkFuZHkgc2FndDogWmVyYmVydXMsIHdpZXNvIHNjaGF1dCBEdSBtaWNoIGFuIHVuZCBzY2h1ZXR0ZWx0IHNlaW4gSGF1cHQ/ClplcmJlcnVzIHNjaGF1dCBBbmR5IGFuIHVuZCBzY2h1ZXR0ZWx0IHNlaW4gSGF1cHQuCkFuZHkgZ2VodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOUEMtR2VzcHJhZWNoZSAoQXNtb2RpcywgMTAuIEFwciAxOTk5LCAyMzo1MDozMyk6Cn4jISBybj1Bc21vZGlzIHJ0PTkyMzc4ODA4MyByZz1zY2htYXJybgp+IyEgdGlkPTkyMzc4ODA4MwpBbmR5IHNhZ3Q6IFplcmJlcnVzLCBnaWIgbWlyIGFsbCBEZWluIEdlbGQsIG9kZXIgaWNoIHdlcmRlIERpY2ggdG9ldGVuIQpaZXJiZXJ1cyBzY2hhdXQgQW5keSBhbiB1bmQgc2NodWV0dGVsdCBzZWluIEhhdXB0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0dGVzIGF1c3dlaWNoZW4gKFRhbWksIDExLiBBcHIgMTk5OSwgMDA6MTY6MTQpOgpEZXIgTHVjaHMgc3ByaW5ndCBEaWNoIGFuLgpEdSB3ZWhyc3QgZGVuIFNwcnVjaCBhYi4KCldpZSBmdW5rdGlvbmllcnQgZGFzIGRlbm4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV0dGVzIGF1c3dlaWNoZW4gKEFzbW9kaXMsIDExLiBBcHIgMTk5OSwgMDA6MTc6NTApOgp+IyEgcm49VGFtaSBydD05MjM3ODk3NzQgcmc9c2NobWFycm4KfiMhIHRpZD05MjM3ODk3NzQKemF1YmVyZXIgYWJ3ZXJ0ZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCaXR0ZSBvZWZ0ZXIgbWFsIDopIChXb29keSwgMTEuIEFwciAxOTk5LCAwMTowNDo1NCk6CltBbGxnZW1laW46QW5hdG9sIGtpdHplbHQgS2V5IGFtIEtpbm4uXQpEZWluZSBTY2h1aGUgZ2x1ZWhlbiBrdXJ6IGF1ZiB1bmQgaGVpbGVuIERpY2ggZWluIHdlbmlnLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhvdyB0byBmaW5kIGEgd29tYW4gLSBJIChBbmF0b2wsIDExLiBBcHIgMTk5OSwgMDI6MjU6MTEpOgo+IGZpbmRlIGZyYXVlbgpEaXIgZmVobGVuIGRpZSBub2V0aWdlbiBNYXRlcmlhbGllbiEKCkFuYXRvbCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhvdyB0byBmaW5kIGEgd29tYW4gLSBJSSAoQW5hdG9sLCAxMS4gQXByIDE5OTksIDAyOjI1OjU1KToKCj4gYmVzY2h3b2VyZSBmcmF1ZW4KRnJhdWVuIGdpYnQgZXMgbmljaHQgaW0gTW9yZ2VuR3JhdWVuLgoKSWNoIHd1c3N0ZSBlcyEgOikKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa2xlcmlrZXIgLi5zb3NvIChLYXJpYywgMTEuIEFwciAxOTk5LCAwMzozMjo1NSk6CkRpcmlvbiBzYWd0OiB3aXIgaGFtIGtlaW4gem9lbGliYXQuCkRlciBIZWlsaWdlbnNjaGVpbiB1ZWJlciBkZW0gSGF1cHRlIERpcmlvbnMgdmVyZ2xpbW10LgpEaXJpb24gZ3JpbnN0IERpY2ggYW4uCgpobW0uLndhcyBzb2xsIG1hbiBub2NoIGRhenUgc2FnZW4gPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGVsaXggcG9tYXRhIGFid2VydGVuISAoS2FyaWMsIDExLiBBcHIgMTk5OSwgMTY6MDA6MDgpOgplYmVuIGlubiBzc3A6CkhlbGl4IFBvbWF0YS4KICBXYWZmZW53dXJmL0JsLmkuc2UuU3BpLiBIZWxpeCBQb21hdGEuIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSBnZWtpdHplbHQKSGVsaXggUG9tYXRhIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KCkthcmljKnd1bmRlcnQgc2ljaCBsYW5nc2FtIHVlYmVyIGdhciBuaXggbWVocioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUuLi4gKEFwc3UsIDExLiBBcHIgMTk5OSwgMTY6MTE6MDEpOgpEZXIgU2Vldm9nZWwgZW50bGVlcnQgc2VpbmUgR2VkYWVybWUgdWViZXIgRGlyLgpBaGhoaCwgZGllc2UgU2VlbHVmdCEKCmdyaW5zZW5kLi4uCkFwc3UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hbnUgOi0pIChMaWxsZWJyb3IsIDExLiBBcHIgMTk5OSwgMTY6NTM6MzMpOgpDcmVhdGl2ZSBsdXRzY2h0IGVpbiBTYWhuZW9ya2JhZXJjaGVuLgpEYXMgR2VicnVlbGwgZWluZXMgQmFlcmVuIGVyZnVlbGx0IGRlbiBXYWxkLgpEdSBkZW5rc3QgICAuIG8gTyAoSHVjaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZWNodCBuaWNodCA/IChQdWssIDExLiBBcHIgMTk5OSwgMTc6MTQ6NDgpOgpEdSBmaW5kZXN0IGFuIGVpbmVyIFN0YXR1ZSBhdXMgR2xhcyBrZWluICJHbGFzIi4KRGVpbiBCbGljayB3ZW5kZXQgc2ljaCBkZXIgVW1nZWJ1bmcgenUuCgpTb3dhcyBzaWVoc3QgRHUgYXVjaCBkYSBuaWNodCEKCgpQdWsgKHNpY2ggaW1tZXIgbm9jaCBmcmFnZW5kIHdpZXNvIGVpbmUgU3RhdHVlIGF1cyBHbGFzIGtlaW4gR2xhcyBoYXQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogRmx1Y2h0cmljaHR1bmcgKEFuYXRvbCwgMTIuIEFwciAxOTk5LCAwMDoyMjoyNSk6Cn4jISBybj1XaWRld2l0dCBydD05MjM4NzY0NDggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTkyMzEwNzcyMwoKQmVlbmRlIHNvbGNoZSBBcnRpa2VsIGJlc3NlciBtaXQgIn5xIiBzdGF0dCBtaXQgIioqIiBvZGVyICIuIi4gCgpBbmF0b2wgCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEZsdWNodHJpY2h0dW5nIChXb29keSwgMTIuIEFwciAxOTk5LCAwMDoyMzowMyk6Cn4jISBvbj1Xb29keSBvdD05MjM4NzY1NDYgb2c9ZGlza3Vzc2lvbgp+IyEgcm49V2lkZXdpdHQgcnQ9OTIzODc2NDQ4IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05MjMxMDc3MjMKSWNoIGZ1ZXJjaHRlLCBkYXMgaXN0IGtlaW5lciwgZGVyIGluIGRlciBPZWZmZW50bGljaGtlaXQgYnJlaXQtCnp1dHJldGVuZGVyIG9kZXIgd2VpdGVyenVzYWdlbmRlciBpc3Q7IHp1bWFsIG1hbiBtaXQgZXR3YXMgR3JpcHMKc2VsYmVyIGRyYXVma29tbWVuIGthbm4uCgpXb29keS4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCTEFTUEhFTUlFICEhISAoTHV0aGllbiwgMTIuIEFwciAxOTk5LCAxMzoxMDo0NCk6ClByYWlvcyBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyLgoKRGFzIGRlciBhcm1lIGFsdGUgU29ubmVuZ290dCBkYXMgYXVmIHNlaW5lIGFsdGVuIFRhZ2Ugbm9jaCBlcmxlYmVuIG11c3MKKmdyaW5zKgoKTHV0aGllbiBUaW51dmllbCwgbnVyIGRpZSBzY2hvZW5zdGUgRnJhdSBhdWYgTWl0dGVsZXJkZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5QQy1CYWxhbmNlIChNYWhhdG11LCAxMi4gQXByIDE5OTksIDE1OjE5OjAxKToKfiMhIHJuPUJvaW5nIHJ0PTkyMzkzMDA4MSByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9OTIzOTMwMDgxCipnKgpLb2VubnRlIGRlciBkZW5uIGdsZWljaCBtYWwgc2VpbmUgdW5mYWlyZSBRdWVzdC1QZmxhbnplIGFid2VydGVuPwoKR2xvaW4gLi4uIG11cm1lbHQgd2FzIHZvbiBCb2Vja2VuIHVuZCBHYWVydG5lcm4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOUEMtQmFsYW5jZSAoQm9pbmcsIDEyLiBBcHIgMTk5OSwgMTU6MzQ6NDUpOgp+IyEgcm49Qm9pbmcgcnQ9OTIzOTMwMDgxIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD05MjM5MzAwODEKQWVobSwgaWNoIGtvcnJpZ2llcmUgbWljaDogRGllIEVyc3RraWxsdmVydGVpbHVuZyBpc3QgbmF0dWVybGljaCBuaWNodAphdXMgZGVtIFJ1ZGVyIGdlbGF1ZmVuLCBhYmVyIFdpbSB1ZWJlcm5pbW10IHNpZSB0cm90emRlbS4KUmlrdXMsIER1IGthbm5zdCBqZXR6dCBhdWZob2VyZW4gbWljaCB6dSBoYXVlbiEgOykKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSnVnZW5kc3VlbmRlbiA/IChUcmFuY2UsIDEyLiBBcHIgMTk5OSwgMTg6MTc6MDEpOgpXaWUgYXVzdWVibGljaGVyd2Vpc2UgZ3V0IHVudGVyaWNodGV0ZW4gS3JlaXNlbgooaHR0cDovL3NlaXRlMS53ZWIuZGUvc2hvdy8zNzExQTVERi5BUDEvP2lkPTk5MDQxMi0xMjkzNS0wMCZmcm9tPUJyZW5ucHVua3RlL1cKdXBwZXJ0YWxlcl9TY2h3ZWJlYmFobikKCmJlcmljaHRldCB3aXJkLCBoYWJlbiBlaW5pZ2UgaGllciB1bXRyaWViaWdlIENoYXJhY3RlciBkdXJjaGF1cyBlaW4gYmV3ZWd0ZXMKVm9ybGViZW4uCgpaaXRhdDoKIjE5NTAgc3ByYW5nIGRlciBqdW5nZSBFbGVmYW50IFR1ZmZpIHdocmVuZCBlaW5lciBaaXJrdXN3ZXJiZWZhaHJ0CiBhdXMgZWluZW0gZmFocmVuZGVuIAogICAgICAgICAgU2Nod2ViZWJhaG56dWcgaW4gZGllIFd1cHBlci4gRGVyIEVsZWZhbnQgYmxpZWIgYmlzIGF1ZiBlaW5lIGtsZWluZQpTY2hyYW1tZSB1bnZlcmxldHp0LiAKIgoKSGF0dGUgd29obCBlaW5lbiBUYXJuaGVsbSBhbiwgZGFtYWxzIQpUcmFuY2UsIGF1Zm1lcmtzYW1lciBOYWNocmljaHRlbmxlc2VyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEp1Z2VuZHN1ZW5kZW4gPyAoV29vZHksIDEyLiBBcHIgMTk5OSwgMTk6MTk6MTMpOgp+IyEgcm49VHJhbmNlIHJ0PTkyMzk0MTAyMSByZz1zY2htYXJybgp+IyEgdGlkPTkyMzk0MTAyMQpRdWF0c2NoLiBUdWZmaSBpc3QgZG9jaCBrZWluIEVsZWZhbnQsIFR1ZmZpIGlzdCBuZSBNaWxjaCA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGFnIG9kZXIgd2FzPyAoR3JpbW1hbiwgMTIuIEFwciAxOTk5LCAyMzo0Mjo1MCk6Cn4jISBybj1HcmltbWFuIHJ0PTkyMzk2MDM3MyByZz1zY2htYXJybgp+IyEgdGlkPTkyMzk2MDM3MwpBUkchIGRvY2ggbGFnIC4uLgpBbHNvIG5vY2htYWwga29tbXBsZXR0OgpEZWluIEZyZXVuZCBTdWJsaW1lIHRlaWx0IERpciBtaXQ6IGRlYXRobGFnIHp1bSAyLiAhCiBbVG9kOkxhcnNdIEVpbiBad2VyZyBoYXQgZ2VyYWRlIFN1YmxpbWUgdW1nZWJyYWNodC4KClNvIHZpZWxsZWljaHQga2FwaWVyIGljaCBkaWUgTXBhIGF1Y2ggbWFsIAoKTUJJTUcgLCBHcmltTWFuIG1lcmt0IGpldHp0IGRvY2ggd2FzIHZvbSBMQUcgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0ZXJtaW5hdGUgYmVpIGtudWRkbGUgYWxsZSAhPyAoU295bywgMTIuIEFwciAxOTk5LCAyMzo1MDo0OCk6CmtudWRkbGUgYWxsZQpEdSBrbnVkZGVsc3QgUmFraSwgRGVsIHVuZCBOb3Zhc3Rvcm0uClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBEZWwuCkRlbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKUmFraSBoYXV0IGFiLgoKCipncnVtbWVsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhcnRpa2VsIDM3IChKaWRkdSwgMTIuIEFwciAxOTk5LCAyMzo1Njo1Mik6Cn4jISBvbj1KaWRkdSBvdD05MjM5NjEzNDAgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVNoYW5uYXJhIHJ0PTkyMzk0MDAxNyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTkyMzkyMDQ3MApFcyB3YXIgU2NobWFycm4uIFJ1YnJpayBzY2htYXJybiB3ZW5uIHNjaG9uLiBBY2ggcXVhdHNjaCEgRWlnZW50bGljaCBtdXNzIGljaApqYSBqZXR6dCBzYWdlbjoKSEVVTCBET0NIIQpBYmVyIGRhcyBpc3QgbWlyIHp1IGFsYmVybiA6KQpKaWRkdS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSnVnZW5kc3VlbmRlbiA/IChUYW5nYWx1ciwgMTMuIEFwciAxOTk5LCAwMDo1MToyOCk6Cn4jISBybj1Xb29keSBydD05MjM5NDQ3NTMgcmc9c2NobWFycm4KfiMhIHRpZD05MjM5NDEwMjEKLi4uIGdlaG9lcnQgZWlnZW50bGljaCBuaWNodCBuYWNoIFNjaG1hcnJlbiB3ZWlsIHdhaHIuCkRpZSBNaWxjaCB3dXJkZSBuYWNoIGRpZXNlbSBFbGVmYW50ZW4gYmVubmFubnQuIERpZSBNaWxjaGZpcm1hIGhhdHRlCnp1ZmFlbGxpZyBpaHJlbiBTaXR6IGluIFd1cHBlcnRhbCB1bmQgaGllbHQgZGFzIGdhbnplIGZ1ZXIgZWllbiBnZW5pYWxlbgpXZXJiZWdhZy4gV29oZXIgbnVuIGJlc2FndGVyIE1HIFNwaWVsZXIgc2VpZW4gTmFtbmUgaGF0IGlzdCBhbGxlcmRpbmdzIG5pY2h0CnVlYmVybGllZmVydC4KKgouLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVmVyZ2Vzc3QgZGllIEVyem1hZ2lzdGVyIG5pY2h0ISAoTm9ubmUsIDEzLiBBcHIgMTk5OSwgMTM6NTY6MDcpOgpEZXIgVmFtcGlyIHplcmZhZWxsdCB6dSBTdGF1Yi4KRHUgbmltbXN0IGRhcyBzY2hsYWdlbmRlIEhlcnouCkR1IG5pbW1zdCBkZW4gVmFtcGlycGFuemVyLgpEdSBuaW1tc3QgZGFzIFZhbXBpcnNjaHdlcnQuCltBbGxnZW1laW46VG9tYXNvXSBkZXIsIGRlciBkaWVzZSBzY2h3YWNoc2lubmlnZSBMZWl0dW5nIGZhYnJpemllcnQKT2ssIER1IHdpcnN0IGVpbmVuIFZhbXBpcnBhbnplciBqZXR6dCBiZWkgJ3ZlcmthdWZlIGFsbGVzJyBiZWhhbHRlbi4gCkR1IHRlaWxzdCBMbHlzdHJhdGhlIG1pdDoga29tcG9uZW50ZW4KTWl0IGVpbmVtIHBsb2V0emxpY2hlbiAqV1VTQ0gqIG9lZmZuZXQgc2ljaCBlaW4ga2xlaW5lcyBtYWdpc2NoZXMgUG9ydGFsLCBpbgpkYXMgbWVocmVyZSBHZWdlbnN0YWVuZGUgdm9uIERpciBoaW5laW5nZXpvZ2VuIHdlcmRlbi4KU28gc3BvbnRhbiwgd2llIGVzIGVyc2NoaWVuZW4gaXN0LCB2ZXJzY2h3aW5kZXQgZXMgYXVjaCB3aWVkZXIuCkxseXN0cmF0aGUgdGVpbHQgRGlyIG1pdDogSW0gTmFtZW4gYWxsZXIgWmF1YmVyZXIgZGFua2UgaWNoIERpciEKRHUgaG9lcnN0IGVpbiBsZWlzZXMgS2ljaGVybi4KClNvZ2FyIGRpZSBLYXRhcyBoYWVuc2VsbiBnZXJuZSA7LSkKCk5vbm5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc29zbywgaGV1dHp1dGFnZSBrbGF1dCBoaWVyIGF1Y2ggamVkZXIuLi4gKFBsb3RpbiwgMTMuIEFwciAxOTk5LCAyMDoxMDoyMCk6CkR1IGJpc3QgaW0gSG9laGxlbmxhYnlyaW50aCBkZXIgU2NocmVja2Vuc3NwaXR6ZS4gU2VsdHNhbWUgR2ViaWxkZQphdXMgRWlzIHNpbmQgaGllciBpbiBKYWhyaHVuZGVydGVuIGdld2FjaHNlbiwgbWFuY2hlIGRhdm9uIHNlaGVuIGZhc3QKbGViZW5kaWcgYXVzLiBHYWVuZ2UgZnVlaHJlbiBkdXJjaCBkYXMgRWlzIG5hY2ggTm9yZGVuLCBTdWVkZW4sIE9zdGVuCnVuZCBXZXN0ZW4uCkVzIGdpYnQgdmllciBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KRWluIFNjaG5lZXJpZXNlLgpEZWluIEdlbGRiZXV0ZWwgaXN0IGxlaWNodGVyIGdld29yZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2VsYnN0bG9lc2NodW5nZW4gb2RlciB3YXM/IChDYXR3ZWF6bGUsIDE0LiBBcHIgMTk5OSwgMTM6MDc6NDUpOgp+IyEgcm49S2V5IHJ0PTkyNDA5NTA2NCByZz1ldGlrZXR0ZQp+IyEgdGlkPTkyNDA5NDM0MApIYSEKCkR1IHdpbGxzdCBib2VzZSB1bmQgZ2VtZWluIHNlaW4/CklzdCBEaXIgc2Nob24gbWFsIGF1ZmdlZmFsbGVuLCBkYXMgYWxsZSBMZXV0ZSwgZGllIGJlaGF1cHRlbiwgc2llIHdhZXJlbgpib2VzZSB1bmQgZ2VtZWluLCB2aWVsIGVoZXIgbGllYiB1bmQga3VzY2hlbGlnIHNpbmQ/IFNpZWggRGlyIHpCIFRlZGR5IGFuLiBJc3QKZGVyIGJvZXNlIG9kZXIga3VzY2hlbGlnLCBobT8gU2llaHN0ZSAuLi4KSWNoIHdhZXJlIHZvcnNpY2h0aWcgbWl0IHNvbGNoZW4gQWV1c3NlcnVuZ2VuLCBzb25zdCBrb21tc3QgRHUgaW4gZWluZQpTY2h1YmxhZGUsIGluIGRpZSBEdSBuaWNodCByZWlud2lsbHN0LgoKWW91cnMgdHJ1bHksCiAgICBDYXR3ZWF6bGUgKGlzdCBpbW1lciBsaWViIHVuZCBuZXR0IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2VsYnN0bG9lc2NodW5nZW4gb2RlciB3YXM/IChDYXR3ZWF6bGUsIDE0LiBBcHIgMTk5OSwgMTM6MDk6MDgpOgp+IyEgb249VHVuaXhndXQgb3Q9OTI0MDk1MTI4IG9nPWV0aWtldHRlCn4jISBybj1LZXkgcnQ9OTI0MDk1MDY0IHJnPWV0aWtldHRlCn4jISB0aWQ9OTI0MDk0MzQwCldBTk4sIEtleT8/PyA7bykKCidzIEthcmF0ZS1ad2VyY2hsZSwgdmllbCBib2VzZXIgdW5kIGdlbWVpbmVyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc29zbywgaGV1dHp1dGFnZSBrbGF1dCBoaWVyIGF1Y2ggamVkZXIuLi4gKFBhZHJlaWMsIDE0LiBBcHIgMTk5OSwgMTM6NDY6MTApOgp+IyEgcm49UGxvdGluIHJ0PTkyNDAzNDIyMCByZz1zY2htYXJybgp+IyEgdGlkPTkyNDAzNDIyMApRdWF0c2NoLi4uIGRhcyBpc3QgZWluZmFjaCBudXIgS2V6IEFydCB6dSBzYWdlbjoga251ZGRlbHQgbWljaCBkb2NoIGFsbGUgbWFsLApiaW4gaWNoIG5pY2h0IHdpcmtsaWNoIGxpZWIgdW5kIG5ldHQhPwoKUGFkcmVpYywgc2ljaCB3dW5kZXJuZCwgZGFzIENhdHR5IGF1ZiBlaW5lIHNvIHBsdW1wZSBUb3VyIHZvbiBLZXkgcmVpbmZhZWxsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdvZXR0ZXIuLi4gKE1vcmdvdGgsIDE0LiBBcHIgMTk5OSwgMTM6NTU6MDApOgpCb2luZyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKRWluIGxhdXRlciBLbmFsbCBoYWxsdCB2b20gR2ViaXJnZSBoZXJ1ZWJlci4KQm9pbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyB3b2xsdGUgc2llIHVucyBkYW1pdCBudXIgc2FnZW4/IChMZW5hLCAxNC4gQXByIDE5OTksIDE2OjAxOjI3KToKIExlaWJuaXogICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbmUgRnJldW5kaW4gTGVpYm5peiB0ZWlsdCBEaXIgbWl0OiBtYWwgd2llZGVyIG5ldCBkYQpMZWlibml6ICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhISAgICAgICAKCkxlbmEsIG5vY2ggZ3J1ZWJlbG5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa2xlcmlrZXIgKFB1aywgMTQuIEFwciAxOTk5LCAxNzowOTo1OCk6CkR1IHNjaGF1c3QgZGV6ZW50IHdlZywgYWxzIHNpY2ggRGFpbiB1bmQgT21iYXRpcyB2ZXJsaWVidCBpbiBkaWUgQXJtZQoKc2lua2VuLgoKT21iYXRpcyBzYWd0IG1pdCB3ZWluZXJsaWNoZXIgU3RpbW1lOiBEYXMgaXN0IGdlZ2VuIGRpZSBHZW5mZXIgS29udmVudGlvbmVuLgpPbWJhdGlzIHNhZ3QgbWl0IHdlaW5lcmxpY2hlciBTdGltbWU6IEtlaW5lciBzb2xsdGUgZWluZW4gYXJtZW4ga2xlaW5lbgoKT21iYXRpcyBzYWd0IG1pdCB3ZWluZXJsaWNoZXIgU3RpbW1lOiBOZXJ2ZGFlbW9uIHNvIHF1YWVsZW4gZHVlcmZlbiEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkYXMgaXN0IGFsYmVybiA6KSAoSmFzb25yaWdpZCwgMTQuIEFwciAxOTk5LCAxNzozNjozOCk6CgpFYmVuIGltIEtpbm9wcm9ncmFtbSBnZWxlc2VuIDogV2VyIGxpZWJ0LCBkZW0gd2FjaHNlbiBGbCZ1dW1sO2dlbCAKCkhtLCB3ZW5uIG1hbiBkYXMgZGFkdXJjaCBiZWtvbW10LCBkYW5uIGdlaCBpY2ggZG9jaCB6dSBkZW4gQ2hhb3RlbgoKSmFzb24gZ3JpbnN0IGltbWVyIG5vY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTZWxic3Rsb2VzY2h1bmdlbiAoQW5hdG9sLCAxNC4gQXByIDE5OTksIDE5OjIzOjEyKToKfiMhIHJuPVJ1bWF0YSBydD05MjQwOTU3Nzcgcmc9ZXRpa2V0dGUKfiMhIHRpZD05MjQwOTU3NzcKRGFzIFBTIG11ZXNzdGUgaGVpc3NlbjogYWxpYXMgc2VsYnN0bG9lc2NodW5nIHNwaWVscGF1c2UgLTEgdGFnZQoKQmVzc2Vyd2lzc2VyIEFuYXRvbCA6bykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogU2VsYnN0bG9lc2NodW5nZW4gb2RlciB3YXM/IChBbmF0b2wsIDE0LiBBcHIgMTk5OSwgMjI6NDU6MDApOgp+IyEgcm49QW5hdG9sIHJ0PTkyNDEyMTA1MyByZz1ldGlrZXR0ZQp+IyEgdGlkPTkyNDA5NDM0MAoKSWNoIHd1cmRlIGViZW4gZHVyY2hzY2hhdXQuIERlciBBcnRpa2VsIGVudHNwcmljaHQgbmF0dWVybGljaCBuaWNodCAKdm9lbGxpZyBkZXIgV2FocmhlaXQuIE1laW5lIE9tYSBoYXQgZ2FyIGtlaW5lIEthdHplIHVuZCBpY2ggd2Vpc3MgYXVjaAp2b24ga2VpbmVtIE9ua2VsIG1pdCBCdWxsZG9nZ2UuCgpXbyBpc3QgZGllIEFzY2hlPyBXbyBpc3QgbWVpbiBIYXVwdD8KQW5hdG9sIDpvKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5QQydTIC4uLiAoTGlhcmEsIDE0LiBBcHIgMTk5OSwgMjM6NDc6NTUpOgoKUm9iaW4gc2luZ3Q6IEljaCBmaW5kJyBEaWNoIHNjaGVpc3NlLCBzbyByaWNodGlnIHNjaGVpc3NlIC4uLgoKU292aWVsIHp1bSBUaGVtYSBVbWdhbmdzdG9uIGltIE11ZCAuLi4gKmcqCgoKTGlhcmEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTZWxic3Rsb2VzY2h1bmdlbiBvZGVyIHdhcz8gKEhvYm8sIDE1LiBBcHIgMTk5OSwgMTA6Mzk6MzcpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTkyNDA5NTI2NSByZz1zY2htYXJybgp+IyEgdGlkPTkyNDA5NDM0MApKYXUgZ2VuYXUhCgpJY2ggZmluZGUgYXVjaCwgZGFzcyBlciBkYW1pdCBkZW4gJ0t1c2NoZWxjaGFvdGVuJyBwcm92b3ppZXJ0LgoKS2V5LCBEdSBiaXN0IGVpbiBLdXNjaGVsY2hhb3QhCgogIEhvYm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBTZWxic3Rsb2VzY2h1bmdlbiBvZGVyIHdhcz8gKEFsaW5lLCAxNS4gQXByIDE5OTksIDExOjI4OjIxKToKfiMhIHJuPUFuYXRvbCBydD05MjQxMjk5MDAgcmc9c2NobWFycm4KfiMhIHRpZD05MjQwOTQzNDAKCj5XbyBpc3QgZGllIEFzY2hlPyBXbyBpc3QgbWVpbiBIYXVwdD8KCkFsc28gd28gZGllIEFzY2hlIGlzdCwgd2Vpc3MgaWNoIGpldHp0IG5pY2h0IGFsbGVyZGluZ3MgYmVpIGRlciBTdWNoZSBuYWNoCkRlaW5lbSBIYXVwdCBrYW5uIGljaCBEaXIgaGVsZmVuOgpEYSB3byBkaWUgc3Vlc3NlbiBwaW5rZmFyYmVuZW4gU2NobGVpZmNoZW4gc2l0emVuLiA6KQoKQWxpbmUgKHJlbm50IHNjaG9uIG1hbCBpbiBEZWNrdW5nKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQVJHUyA7KSAoUHlyZGFjb3IsIDE1LiBBcHIgMTk5OSwgMTI6NDM6MDUpOgouLi4uCkRlciBTdGVpbmJlaXNzZXIgd2FybnQgRGljaDoKICAnV2VoZSwgRHUgZmFlbmdzdCBhbiwgYW5kZXJlIFNwaWVsZXIgYW56dWdyZWlmZW4uJwoKRGVyIFN0ZWluYmVpc3NlciB2ZXJzY2h3aW5kZXQgd2llZGVyLCB1bmQgRHUgd2FjaHN0IGluIGVpbmVyIGFuZGVyZW4gV2VsdCBhdWYuCgpBbmF0b2wgcnVmdDogU2NobnVja2VsISA6KQpTY2hvZW4sIGRhc3MgRHUgd2llZGVyIGRhIGJpc3QsIFB5cmRhY29yIQoKV2FoLCBpY2ggaGFldHRlIG1pY2ggdm9yIFNjaHJlY2sgZmFzdCB3aWVkZXIgYXVzZ2Vsb2dndCA6KSBBbmF0b2wsIHRzdHN0cyA7KQoKUHlyZGFjb3IgZGVyIEFsdGUgRHJhY2hlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTZWxic3Rsb2VzY2h1bmdlbiBvZGVyIHdhcz8gKENhdHdlYXpsZSwgMTUuIEFwciAxOTk5LCAxMzo0NDoxMSk6Cn4jISBvbj1NdWFkaWIgb3Q9OTI0MTExNjU5IG9nPWV0aWtldHRlCn4jISBybj1MZW5hIHJ0PTkyNDEwMzc5NyByZz1ldGlrZXR0ZQp+IyEgdGlkPTkyNDA5NDM0MApkb2NoIGxlbmEsCgpkdSBiaXN0IHNvIG5lcnZpZywgbG9lc2NodGUgZGljaCBqZXR6dCBlbmRsaWNoID8KdW5kIHNhZyBuaWNodCBuZXR0IHp1IG1pciwgaWNoIGJpbiBuaWNodCBrZXkKCm11YWRpYgpwczo8L2lyb255PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmZ1ZXJjaHQqIChXb29keSwgMTUuIEFwciAxOTk5LCAxNToxMTozOCk6ClJvY2h1cyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEZWluIFdpbGxlIGxhZXNzdCBuYWNoLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxpZWJldm9sbCBkZXRhaWxsaWVydGUgR2VnZW5kZW4uLi4gKEFuYXRvbCwgMTUuIEFwciAxOTk5LCAxOToyMzoyMyk6Cj4gZnJhZ2UgdXJpZWwgbmFjaCBnb3R0ClVyaWVsIHNjaGF1dCBEaWNoIGZyYWdlbmQgYW4uCgprd0YsCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlaHQgaW1tZXIgd2llZGVyIDopIChXb29keSwgMTYuIEFwciAxOTk5LCAwMTo0NjoyOCk6CltaYXViZXJlcjpXb29keSBkYW5rdCBKb2YgOildCkR1IGthbm5zdCB3aWVkZXIgZXR3YXMgc2VoZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOm8pIChOcGMsIDE2LiBBcHIgMTk5OSwgMTE6NTA6MjApOgoKID5rd2VyIG1hZ2llcgoKIEhhbnMuLi4uLi4uLi4uLmkubSBLbG9uay4uLi4uLi4uLi5pLm0gVGlhbWFrLi4uLi4uLi4uaXd6IEFtYXJ5bGxpcy4uLi4uLi4ubQogV3Vyc3QuLi4uLi4uLi4uLi5tIEdyaW1tYm9ybi4uLi4uLi53bSBCYW1idWxrby4uLi4uLi5qLk0gQ2F0d2VhemxlLi4uLi4uaS5XCiBIYXRlLi4uLi4uLi4uLi5JLkUgQm9pbmcuLi4uLi4uLi4uLi5HIFJ1bWF0YS4uLi4uLi4uLi4uRwoKCm1hbiBhY2h0ZSBhdWYgZGllIGVyc3RlIFNwYWx0ZS4uLiAqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyA6KCAoRGFya3dpbmcsIDE2LiBBcHIgMTk5OSwgMTM6NDE6MDUpOgpEdSBrbnVkZGVsc3QgZGVpbmUgRnJldW5kZS4KU3VnYWFuIHRlaWx0IERpciBtaXQ6IGd1Z3VnIC0gSElJSUlMTExGRkZFRUVFRUUKW1RvZDpMYXJzXSBFaW4gc2NobGltbWUgRXJmcmllcnVuZyBoYXQgZ2VyYWRlIFN1Z2FhbiB1bWdlYnJhY2h0LgoKRGFya3dpbmcgc2V1Znp0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmx1Y2h0PyAoTWVuc2FuYSwgMTYuIEFwciAxOTk5LCAxNDoxNToxMyk6CihiaW4gemF1YmVyZXIpCj5mZXVlcmJhbGwKRHUgbGFlc3N0IGVpbmUga2xlaW5lIEt1Z2VsIGF1cyBGZXVlciBlbnRzdGVoZW4uCkRpZSBLdWdlbCBhdXMgRmV1ZXIgZXhwbG9kaWVydCBpbiBEZWluZW4gSGFlbmRlbi4KRGlyIGZhZWxsdCBlaW5lIGZhdGFsZSBTY2h3YWVjaGUgaW4gRGVpbmVtIFNjaHV0enNwcnVjaCBhdWYhCkR1IHNpZWhzdCBlaW5lbiBGZWhsZXIgaW0gUmF1bS1aZWl0LUdlZnVlZ2UuCj5maW5nZXIgcGF0cnluClBhdHJ5biBpc3QgbmljaHQgYW53ZXNlbmQuClp1bGV0enQgZWluZ2Vsb2dndCB2b246IERyZXNkZW4KWnVsZXR6dCBhdXNnZWxvZ2d0OiBGcmUsIDE2LiBBcHIgMTk5OSwgMTQ6MTE6MjIgKDAwOjAwOjEyKQoKaG1tLCBtZXJrd3VlcmRpZz8gZmxvaCBlciB2b3IgZGVtIGJ1Zz8KCm1lbnNhbmEgKnNpY2ggd3VuZGVybmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2hsZWNodGVzIE9tZW4gOikgKEFwc3UsIDE2LiBBcHIgMTk5OSwgMTY6MTQ6MjEpOgpbQWxsZ2VtZWluOlRodWZoaXJdIHdhbm4gZ2lidHMgZGVuIFJlYm9vdD8gOykKRmVobHNjaGxhZWdlIGJlaSBTY2hhZXR6ZW4gaGV1dGU6IDIKCkFwc3UsIGdyaW5zZW5kIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMZWlibml6ICEhISAoTW9yZ290aCwgMTYuIEFwciAxOTk5LCAxNzozNTozNyk6CkR1IHNjaGxpZXNzdCBkaWUgQXVnZW4sIHNjaG1pZWdzdCBEaWNoIGVuZyBhbiBMZWlibml6IHVuZCBnaWJzdAppaHIgZWluZW4gemFlcnRsaWNoZW4gdW5kIGxlaWRlbnNjaGFmdGxpY2hlbiBLdXNzLgpVbSBEaWNoIGhlcnVtIHZlcnNpbmt0IGRpZSBXZWx0IHVuZCBEdSBnbGF1YnN0LCBhdWYgV29sa2VuIHp1IHNjaHdlYmVuLgpMZWlibml6IHNhZ3Q6IERhbmtlIQoKTSosIHJvdGZsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFN1YndheSB0byBTYWxseSAoR3JpbW1ib3JuLCAxNi4gQXByIDE5OTksIDE3OjQwOjM0KToKfiMhIG9uPUFwc3Ugb3Q9OTI0Mjg0MjQ4IG9nPWt1bHR1cgp+IyEgcm49R3JpbW1ib3JuIHJ0PTkyNDI4MDczOCByZz1rdWx0dXIKfiMhIHRpZD05MjM2MTM0NzIKV29sZmdhbmcgUGV0cnkgYWxzIEt1bHR1ciB6dSBiZXplaWNobmVuLCBpc3Qgc28sIGFscyBvYiBtYW4gTWlsb3NldmljIE11dHRlcgpUaGVyZXNhIG5lbm50Li4uCgotPnNjaG1hcnJuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptYWwgd2FzIChXaW0sIDE3LiBBcHIgMTk5OSwgMDA6NTY6MTcpOgoob2huZSB3b3J0ZSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRhcyBrb3N0ZXQgZW5lcmdpZS4uLiAoQW1hcnlsbGlzLCAxNy4gQXByIDE5OTksIDA0OjU2OjIxKToKRHUgc2NoYXVzdCBkZXplbnQgd2VnLCBhbHMgc2ljaCBOb2VsIHVuZCBMeXJheCB2ZXJsaWVidCBpbiBkaWUgQXJtZQpzaW5rZW4uCkx5cmF4IHNjaGxpZXNzdCBkaWUgQXVnZW4gdW5kIHJ1bnplbHQgZGllIFN0aXJuLgpFaW4gRWlsYm90ZSBsaWVmZXJ0IEx5cmF4IGVpbmUgRmxhc2NoZSBTY2h1ZXR0ZWxiaWVyLgoKRGFzIEZlZWNoZW4gZ3JpbnN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHJvbSBhbSBXZXJrLi4uIChXaW0sIDE4LiBBcHIgMTk5OSwgMDA6MDI6NTUpOgpFaW4gQWJiaWxkIERpcmlvbnMgZXJzY2hlaW50IGluIGVpbmVyIFJhdWNod29sa2UuCgpEYXMgZGVyIGF1Y2ggbmljaHQgYXVmcGFzc3QsIHdhcyBkZXIgd2VndHJhbnN0IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobWFybiAoWXVuZ2EsIDE4LiBBcHIgMTk5OSwgMTU6MDQ6NTUpOgp+IyEgb249WXVuZ2Egb3Q9OTI0NDQ3ODA3IG9nPW1vcmdlbmdyYXVlbi52ZXJlaW4KPmxpZXMgZ2VkaWNodApEZWluZSBTY2hsdXJwZmlzY2hwdXBwZW4gc2luZCBmdWVyIG1pY2gKV2llIHplcmZyZXR0ZWx0ZSBXdWVybXNjaG1hdHprb3MgaW4gQmllbmVuc3RpY2gKVW5kIGVyc3QgZGllIGhhcm52ZXJrbmFyenRlbiBPdmVsZHJhZXVtCkxpY2tsdWNrZW4gc2Nod2Vpc3NnZWJhZGV0IG1hdHQKVW5kIGxlYmVuZGUgRXJoYXNjaHVuZ3NkYWVybWUgZm51cnplbiB1bmQga251cnplbgpTY2hvZW4gc2NoYXVyaWcgamF1bGVuZCB1bmQgYWFsZ2xhdHQuJyc7PiBEYXMgTW9yZ2VuR3JhdWVuIGVyeml0dGVydCB1bnRlcgplaW5lbSBsYW5nZXpvZ2VuZW4sIHVubWVuc2NobGljaGVuIFNjaHJlaS4KRGllIEh5ZHJhIHN0aXJidCBpbiBlaW5lbSBNZWVyIHZvbiBCbHV0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gZ2VodCdzLiAoTm92YXN0b3JtLCAxOC4gQXByIDE5OTksIDE1OjU5OjIyKToKSmVuYW5kcmEgc2luZ3QgJy4uLiBpJ20gZ29ubmEgZ2V0IGNsb3NlIHRvIHlvdSAuLi4nLgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgR2FzdDIuCgogICAgICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbW1lciBkaWVzZSBhbmdlYmVyIDotKSAoU21pbGV5LCAxOC4gQXByIDE5OTksIDIyOjUxOjUxKToKQWxkdXIgcnVmdDogRVMgS0FOTiBOVVIgRUlORU4gR0VCRU4uLi4uISEhClRvZDpMYXJzIEVpbmUgUmF0dGUgaGF0IGdlcmFkZSBBbGR1ciB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGltbWVyIGRpZXNlIGFuZ2ViZXIgOi0pIChBc21vZGlzLCAxOS4gQXByIDE5OTksIDAwOjIyOjMyKToKfiMhIHJuPVNtaWxleSBydD05MjQ0NzU5MTEgcmc9c2NobWFycm4KfiMhIHRpZD05MjQ0NzU5MTEKV2llc28/IGVzIGdpYnQgZWJlbiBudXIgZWluZW4sIGRlciBhbiBSYXR0ZW4gc3RpcmJ0IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2lya2UgaWNoIHNvIGF1ZiBGcmF1ZW4/IChHcmltbWFuLCAxOS4gQXByIDE5OTksIDAxOjI3OjM3KToKQ29uY2hpIHNjaG1pZWd0IHNpY2ggYW4gZGljaApDb25jaGkgcnVlbHBzdAoKR3JpbU1hbiAsIGV0d2FzIHZlcnd1bmRlcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh5ZHJhLVRoZW9yaWVuIChUZXJpbSwgMTkuIEFwciAxOTk5LCAxMzo0MDoxNSk6CkR1IHRyaWZmc3QgZGllIEh5ZHJhIHNlaHIgaGFydC4KQXVzIGRlbSBMZWljaG5hbSBlcnNjaGVpbnQgZGllIExpY2h0Z2VzdGFsdCBQdW1hcyB1bmQgdWViZXJyZWljaHQgRGlyCmxhZWNoZWxuZCBlaW5lIFJ1ZXN0dW5nIGF1cyBmdW5rZWxuZGVuIEp1d2VsZW4uIE1pdCBkZW0gbmFlY2hzdGVuCkF1Z2Vuendpbmtlcm4gaXN0IHNpZSB2ZXJzY2h3dW5kZW4uCkR1IGJpc3QgbnVuIGZ1ZXIgc2VjaHMgV29jaGVuIGRlciBUcmFlZ2VyIGRlciBSdWVzdHVuZyBlaW5lcyBIeWRyYXRvZXRlcnMKdW5kIG5pZW1hbmQgYXVmIGRlciBXZWx0IGthbm4gRGlyIGRpZXNlbiBTdGF0dXMgc3RyZWl0aWcgbWFjaGVuLCBkZW5uIGRpZXNlClJ1ZXN0dW5nIGhhc3QgbnVyIER1IERpciB2ZXJkaWVudC4KRGllIEh5ZHJhIHplcmZhZWxsdCB6dSBlaW5lbSBnaWdhbnRpc2NoZW4gQmVyZyBHZWJlaW4uCgpTaGFuZ3RpIHRlaWx0IERpciBtaXQ6IGdyYXRzIGZ1ZXIgZGllIGh5ZHJhIGhhc3QgZHUgZ2xlaWNoIGRlbiBrb2VycGVyIGdlbWFjaHQKU2hhbmd0aSB0ZWlsdCBEaXIgbWl0OiBrYW0gZ2FyIGtlaW5lIG1lbGR1bmcgZnVlciBkaWUga29lcGZlID8KCkR1IHRlaWxzdCBTaGFuZ3RpIG1pdDogaWNoIGhhdHRlIGV0d2FzIGhpbGZlIDspCgpTaGFuZ3RpIHRlaWx0IERpciBtaXQ6IGFjaHNvIGFiZXIgZGllIGtvZXBmZSBoYWJ0IGlociB0cm96ZGVtIGdlbWFjaHQgPwoKRHUgdGVpbHN0IFNoYW5ndGkgbWl0OiBsb2dpc2NoLCBkaWUgYnJpbmdlbiBuZW4ga2FlbXBmZXIgc29uc3QgaW4gZWluZXIgcnVuZGUKRHUgdGVpbHN0IFNoYW5ndGkgbWl0OiB1bSA7KQoKU2hhbmd0aSB0ZWlsdCBEaXIgbWl0OiBuYWphIHNvIHNjaGxpbW0gc2luZGRpZSBrb2VwZmUgamEgbmljaHQgZGVyIGtvZXJwZXIKU2hhbmd0aSB0ZWlsdCBEaXIgbWl0OiBtYWNodCBkYXMgbWVpc3RlIHByb2JsZW0KClRlcmltLCBnZWh0IGRhcyBuYWVjaHN0ZSBtYWwgdHJvdHogZGllc2VyIG5ldWVuIEVya2VubnRuaXNzZSBuaWNodCBkaXJla3QgYXVmCmRlbiBLb2VycGVyIGFscyBLYWVtcGZlci4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIeWRyYS1UaGVvcmllbiAoVGVyaW0sIDE5LiBBcHIgMTk5OSwgMTM6NDg6NTQpOgp+IyEgcm49VGVyaW0gcnQ9OTI0NTI5MjE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI0NTI5MjE1Ckphc3BlciB0ZWlsdCBEaXIgbWl0OiBuYXR1ZXJsaWNoIG1ldHplbHQgbWFuIHp1ZXJzdCBzb3ZpZWwga29lcGZlLCBiaXMgZGllCkphc3BlciB0ZWlsdCBEaXIgbWl0OiBoeWRyYSBkaWUgbWF4aW1hbGUgYW56YWhsIHZvbiBrb2VwZmVuIGhhdCwgdW5kIGdlaHQgZGFubgpKYXNwZXIgdGVpbHQgRGlyIG1pdDogZGlyZWt0IGF1ZiBkZW4ga29lcnBlciwgYWxsZXMgYW5kZXJlIGlzdCBqYQpKYXNwZXIgdGVpbHQgRGlyIG1pdDogd3Vyc3RzZWhlci1zdHJhdGVnaWUgOikKCldlbmlnc3RlbnMgZWluZXIgaGF0IGVzIHZlcnN0YW5kZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuIChCYW1idWxrbywgMTkuIEFwciAxOTk5LCAxNDo0NjozOCk6CkFoYSwgc29zby4uLi4KWnVsZXR6dCBhdXNnZWxvZ2d0OiBNaXQsIDE4LiBPa3QgMTk5NSwgMTY6NTY6MzIgKDEyNzhkIDIxOjQ3OjQ1KQouLi4KLi4uCkRhdHVtIGRlcyBlcnN0ZW4gTG9naW46IE1vbiwgMTIuIE9rdCAxOTk4LCAxNzo0Njo1NQoKV2llIGdlaHQgZGFzPz8/PwoKQmFtYnVsa28uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzY2htYXJybiAoQ2F0d2VhemxlLCAxOS4gQXByIDE5OTksIDE0OjQ3OjUxKToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTkyNDUzMzE5OCByZz1zY2htYXJybgp+IyEgdGlkPTkyNDUzMzE5OApIbSwgaXN0IHdvaGwgbmVuIFkySy1Qcm9ibGVtLiAKV2VubiBEdSBlcyBsYW5nZSBnZW51ZyBkdXJjaHJlY2huZXN0LCBrcmllZ3N0ZSBiZXN0aW1tdCBpcmdlbmR3aWUgTUFYSU5UIHJhdXMKOikKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHNjaG1hcnJuIChCYW1idWxrbywgMTkuIEFwciAxOTk5LCAxNDo1MDoxMCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9OTI0NTMzMjcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI0NTMzMTk4ClNjaG1hcnJuLCBkYSBnYWJzIHNpY2hlciBlaW5lIFplaXRyZWlzZS4uLmlzdCBkb2NoIGdhbnoga2xhciEKCkJhbWJ1bGtvIChoYXQgenUgdmllbCBTdGFyIFRyZWsgZ2VzZWhlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmltbWVyIGF1ZiBkaWUgYXJtZW4sIGtsZWluZW4gSG9iYml0cyAoSGliYmVsaWcsIDE5LiBBcHIgMTk5OSwgMTU6NDc6NTMpOgpEZXIgRWlzcGFuemVyIGRlcyBFaXNyaWVzZW4gc2NobWlsenQgZHVyY2ggZGllIHp1IGdyb3NzZSBIaXR6ZS4KICAuLi4ubm9ybWFsL0VsZW1lbnRhcnNjaCBEdS4uLi4uLi4uLi4uIDogRWlzcmllc2VuLi4uLiAqKioqKioqKiAtPiBoYXJ0CiAgLi4uLm5vcm1hbC9FaXNzY2h3ZXJ0Li4gRWlzcmllc2UuLi4uLiA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gdmVyZmVobHQKICAuLi4ubm9ybWFsL0VsZW1lbnRhcnNjaCBEdS4uLi4uLi4uLi4uIDogRWlzcmllc2VuLi4uLiAqKioqKioqKiAtPiBzZWhyIGhhcnQKICAuLi4ubm9ybWFsL0Vpc3NjaHdlcnQuLiBFaXNyaWVzZS4uLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LQp2ZXJuaWNodGV0CltUb2Q6TGFyc10gRWluIEVpc3JpZXNlIGhhdCBnZXJhZGUgSGliYmVsaWcgdW1nZWJyYWNodC4KCkhpYmJlbGlnIGZhc3N0IGVzIGltbWVyIG5vY2ggbmljaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyIHVuZCBTY2h3ZWlua3JhbS4uLiA7KSAoU2Nob2tvLCAxOS4gQXByIDE5OTksIDE2OjEyOjQ4KToKSG1tbSAuLi4gaW1tZXIgZGllc2UgTmV1ZW46CgpmaW5nZXIgZ29yCgpWb2xsZXIgTmFtZTogR29yIHNjaGF1dCBpbnMgUm9ocgouLi4KZmluZ2VyIHJvaHIKVm9sbGVyIE5hbWU6IFJvaHIgZGllIFdhZmZlbmxvc2UKLi4uClJvaHIgaXN0IFRlc3RzcGllbGVyaW4gKEdvcikuCgoKU2Nob2tvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgZGllIFplaXQgdmVyZ2VodC4uLi4gKEFscGhhLCAxOS4gQXByIDE5OTksIDE4OjUzOjAyKToKW2ZpIGNvYWNoXQpDb2FjaCBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogTWFnZGVidXJnLgpQYXNzaXYgc2VpdDogMDE6MTU6MjgKRWluZ2Vsb2dndCBzZWl0OiBNb24sIDE5LiBBcHIgMTk5OSwgMTc6MzU6MzUKVm9sbGVyIE5hbWU6IENvYWNoIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIKUmFzc2U6IE1lbnNjaCwgIEdpbGRlOiBBYmVudGV1cmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAwMToxMzo1MiwgICBTcGllbGVybGV2ZWw6IDEKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogTW9uLCAxOS4gQXByIDE5OTksIDE3OjM1OjA5ICAgICAgICAgICAgICAgICAgICAgICAgICAgCldpZSBrYW5uIG1hbiBsYWVuZ2VyIGlkbGUgc2VpbiBhbHMgbWFuIGFsdCBpc3Q/CmFscGhhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmllbmU/Pz8gV29sZj8/PyAoVHVuaXhndXQsIDIwLiBBcHIgMTk5OSwgMDk6MzM6NTIpOgpCdXp6Y3V0LT5UdU5peEd1dCB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4KRHUgaG9lcnN0IGVpbiBlbnRmZXJudGVzIEhldWxlbi4KCk9laC4uLgoKJ3MgS2FyYXRlLVp3ZXJjaGxlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkcm9sbGkgKEJlbmRlaWdpZCwgMjAuIEFwciAxOTk5LCAxMDowMDoyOSk6Cn4jISBvbj1TaXRvIG90PTkyNDU1ODQ3NiBvZz1hbGxnZW1laW5lcwpbQWxsZ2VtZWluOkRyb2xsaV0ganVodXV1IGljaCBiaW4gd2llZGVyIGRhaGEgOikKRGVyIE9yayBzYWd0OiBWZXJzY2h3aW5kZSEKICBEdSB0cmlmZnN0IGRlbiBPcmsuCiAgRGVyIE9yayBraXR6ZWx0IERpY2ggYW0gQmF1Y2guCkRlciBPcmsgc2FndDogU293YXMgd2llIERpY2ggZXNzZSBpY2ggenVtIEZydWVoc3R1ZWNrIQoKKGtlaW4ga29tbWVudGFyIDopCgpLbGVpbiBTaXRvLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdpZSBkaWUgWmVpdCB2ZXJnZWh0Li4uLiAoQm9pbmcsIDIwLiBBcHIgMTk5OSwgMTA6MDg6MzYpOgp+IyEgcm49QWxwaGEgcnQ9OTI0NTQ3OTgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI0NTQ3OTgyCkR1cmNoIExhZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmltbWVyIHdpZWRlciAoUWl0ZXNzLCAyMC4gQXByIDE5OTksIDEyOjUxOjEwKToKCkRlaW4gRnJldW5kIEphc29ucmlnaWQga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKClFJKioKKgpqYXNvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdXBzIDopIChKYXNvbnJpZ2lkLCAyMC4gQXByIDE5OTksIDEyOjU5OjM1KToKRHUgc3RlY2tzdCBlaW5lbiBlaXNpZ2VuIEVsZW1lbnRhcnNjaGlsZCBpbiBkaWUgdm9uIFJhbmtlbiB1ZWJlcnd1Y2hlcnRlCkdydWJlLgpbQWxsZ2VtZWluOkRhcmtuZXNzaWUgZnVlaGx0IHNpY2ggYW4gZGllc2VtIHJlY2huZXIgbmljaHQgenVoYXVzZS4uLgooc3VuL3dvYGBdCgpEZWluIFBhcnRuZXIgaXN0IGxlaWRlciBuaWNodCBkYSwgdW0gRGlyIGJlaXp1c3RlaGVuLgoKYWVoLCBoYWIgaWNoIHdhcyBmYWxzY2ggZ2VtYWNodCA/Pz8gb2RlciBidWdndCBkZXIgdGVkZHkgPz8gKmdyaW5zKgoKSmFzb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVpZ2VudGxpY2ggdHJhdXJpZywgYWJlciAuLi4gKFB5cmRhY29yLCAyMC4gQXByIDE5OTksIDEzOjA1OjA3KToKW05hY2hyaWNodGVuOkRXXSBORVcgWU9SSzogRGllIFZlcmVpbnRlbiBOYXRpb25lbiBzaW5kIHVlYmVyIGRhcyBTY2hpY2tzYWwgZGVyCltOYWNocmljaHRlbjpEV10gVmVydHJpZWJlbmVuIGltIEtvc292byB6dW5laG1lbmQgYmV1bnJ1aGlndC4KCmRhcyBlcmlubmVydCBtaWNoIGFuIGRpZSByZWFrdGlvbnN6ZWl0IGVpbmVzIGZhdWx0aWVycywgZGFzIGljaCBtYWwgZ2VzZWhlbgpoYWJlIC4uLgoKbmFqYSwgaXN0IGVpZ2VudGxpY2ggenUgdHJhdXJpZywgdW0gZGFydWViZXIgd2l0emUgenUgcmVpc3NlbiwgYWJlciAuLi4KClB5cmRhY29yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJcmdlbmR3aWUgaGF0IGVyIG1pY2ggZmFsc2NoIHZlcnN0YW5kZW4uLi4gKE1vcmdvdGgsIDIwLiBBcHIgMTk5OSwgMTM6MjE6NDUpOgpEdSB0ZWlsc3QgUGFyYWNlbHN1cyBtaXQ6IGRhbm4gemF1YmVyIG1hbCByb2NodXMgaGVyCkJvaW5nICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKTSogOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEQVMgaXN0IFNwaWVsZXJoaWxmZSA7LSkgKE1vcmdvdGgsIDIwLiBBcHIgMTk5OSwgMTM6Mjg6NTApOgpIcmVpZG1hciBrbnVkZGVsdCBEaWNoLCBIaWJiZWxpZyB1bmQgZWluZW4gU3R1ZmVucHVua3QuIAoKQWxzbyB3ZW5uIG1hbiBkaWUgamV0enQgZHVyY2gga251ZGRlbG4gZmluZGV0Li4uLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ld3Nncm91cHMgKEJhbWJ1bGtvLCAyMC4gQXByIDE5OTksIDE1OjM2OjIxKToKRXMgZ2lidCBqYSBzb2dhciBlaW5lIGRlLmFsdC5mYW4uYWxkaSBuZXdzZ3JvdXAuLi4uLgoKU2FjaGVuIGdpYnRzLi4uLgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUeXBlbiB2b24gTXVkZGVyIChTY2hva28sIDIwLiBBcHIgMTk5OSwgMTU6Mzg6NDkpOgp+IyEgcm49QW5hdG9sIHJ0PTkyNDU2NjQ1OCByZz13aXR6ZQp+IyEgdGlkPTkyNDU2MDgzMQoKQWJlciBkaWUgVGVuZGVueiBnZWh0IHp1IEdydXBwZSAxNiwgb2Rlcj8gOykKCgpTY2hva28gKHByaW56aXBpZWxsIGF1Y2ggenUgYXJtIGZ1ZXIgbmUgVGhlcmFwaWUgLi4uICkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFiZ2FuZy4uLiAoSGFuZ292ZXIsIDIwLiBBcHIgMTk5OSwgMTk6MDU6NTQpOgpVbmdlc2Nobml0dGVuOgoKVmVyZmxpeHQsIGRpZSBCcnVlY2tlIGJlZ2lubnQgenUgYnJlbm5lbiEKRHUgdGVpbHN0IEdub21lIG1pdDogKkFSR0wqCkdub21lIHRlaWx0IERpciBtaXQ6IGhtPwpEdSB0ZWlsc3QgR25vbWUgbWl0OiBuaWNodCBicnVlY2tlIGFuenVlbmRlbi4uLi4KW1RvZDpMYXJzXSBFaW5lIGJyZW5uZW5kZSBCcnVlY2tlIGhhdCBnZXJhZGUgR25vbWUgdW1nZWJyYWNodC4KCkhhbmdvdmVyLCBzZXVmemVuZC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaW5mbGF0aW9uIG9kZXIgd3VjaGVyPyAoS2FyaWMsIDIwLiBBcHIgMTk5OSwgMjA6MzQ6NTEpOgppbSBsYWRlbiAsIHplaWdlIHZlciA6CiAyNy4gRWluIGtsZWluZXMgU3R1ZWNrIEtvaGxlICAgICAgMzAgfCAgMjguIDMyIE11ZW56ZW4gICAgICAgICAgICAgICAgICAgIDk2CiAyOS4gMzkgTXVlbnplbiAgICAgICAgICAgICAgICAgICAxMTcgfCAgMzAuIDIyIE11ZW56ZW4gICAgICAgICAgICAgICAgICAgIDY2CiAzMS4gRWluZSBTY2hhdWZlbCAgICAgICAgICAgICAgICAxNTAgfCAgMzIuIEVpbmUgbGVlcmUgR2VsZGJvZXJzZSAgICAgICAgMjQwCgpobW0uLm1lcmt3dWVyZGlnLi53ZXIgdmVya2F1ZnQgZGVubiBoaWVyIG11ZW56ZW4/CkthcmljCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaW5mbGF0aW9uIG9kZXIgd3VjaGVyPyAoV29vZHksIDIwLiBBcHIgMTk5OSwgMjE6MDA6NDYpOgp+IyEgcm49S2FyaWMgcnQ9OTI0NjQwNDkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI0NjQwNDkxClNvbGFuZyBtYW4gbmljaHRsZWVyZXMgdmVya2F1ZmVuIGthbm4sIHdpcmRzIGRhcyBpbW1lciB3aWVkZXIgZ2ViZW4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSXJnZW5kd2llIGhhdCBlciBtaWNoIGZhbHNjaCB2ZXJzdGFuZGVuLi4uIChBc21vZGlzLCAyMC4gQXByIDE5OTksIDIxOjM5OjE2KToKfiMhIHJuPU1vcmdvdGggcnQ9OTI0NjE0NTA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI0NjE0NTA1Ck51bmphLCBtaXNzbHVuZ2VuZSB6YXViZXIgaGFiZW4genV3ZWlsZW4gc2VsdHNhbWUgTmViZW53aXJrdW5nZW4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFR5cGVuIHZvbiBNdWRkZXIgKEdyaW1tYm9ybiwgMjAuIEFwciAxOTk5LCAyMjowNTo1Myk6Cn4jISBvbj1Tb25nb2t1IG90PTkyNDYxNjE0OCBvZz13aXR6ZQp+IyEgcm49QW5hdG9sIHJ0PTkyNDU2NjQ1OCByZz13aXR6ZQp+IyEgdGlkPTkyNDU2MDgzMQp3ZWxjaGUgcG9pbnRlPwoKKHR5cC02KQpTYXlvdW5hcmEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUeXBlbiB2b24gTXVkZGVyIChHcmltbWJvcm4sIDIwLiBBcHIgMTk5OSwgMjI6MDY6MDEpOgp+IyEgb249Q2FyYWRocmFzIG90PTkyNDYzMTI5OCBvZz13aXR6ZQp+IyEgcm49U29uZ29rdSBydD05MjQ2MTYxNDggcmc9d2l0emUKfiMhIHRpZD05MjQ1NjA4MzEKRXMgZmVobHRlIHVlYnJpZ2VucyBkZXIgU2NoaXpvcGhyZW5lLgoKICAgIEJlcmdjaGVuIENlbGViZGlsIChUeXAgMTgpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBUeXBlbiB2b24gTXVkZGVyIChHcmltbWJvcm4sIDIwLiBBcHIgMTk5OSwgMjI6MDY6MDMpOgp+IyEgb249S2V5IG90PTkyNDYzMTMxOCBvZz13aXR6ZQp+IyEgcm49Q2FyYWRocmFzIHJ0PTkyNDYzMTI5OCByZz13aXR6ZQp+IyEgdGlkPTkyNDU2MDgzMQpJY2g/IFdvIGZlaGxlIGljaD8gOikKCktleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU0NIVUxESUcgPyAoU295bywgMjAuIEFwciAxOTk5LCAyMzozMDozNik6CktSQUFBQUFBQUFBQUFBQUFBQUFBQUFBV1VNTU1NTU1NTU1NTU1NTU1NTU1NIQpKZW1hbmQgaGF0IGRlbiBXb2xwZXJ0aW5nZXJjbHViIGluIGRpZSBMdWZ0IGdlc3ByZW5ndCEKVGFtb3hpZmVuIHdhcnMgbmljaHQgdW5kIGdlaHQgbmFjaCBXZXN0ZW4uCgphbGxlcyBrbGFyIDspCgpTb3lvIC0gaW1tZXJub2NoIGdydWViZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFNlbGJzdGxvZXNjaHVuZ2VuIChab29rLCAyMC4gQXByIDE5OTksIDIzOjM3OjA3KToKfiMhIHJuPUFuYXRvbCBydD05MjQ2MzI3NzMgcmc9ZXRpa2V0dGUKfiMhIHRpZD05MjQwOTU3NzcKQWxzbyBzY2hvZW4gaXN0IGphIGltbWVyIGRlciBCbG9ja3NhdHogYmVpIEFuYXRvbHMgQXJ0aWtlbG4uLi4KClpvb2sgc2NobWFycnQgYXVjaCBtYWwgZWluemVpbGlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FlbmdpIHVuZCB1bmQgc29uIGtvbWlzY2hlciBSTSAobmljaCBpY2ggKSAoR3JvbywgMjEuIEFwciAxOTk5LCAwMTowMjo0MSk6CgpLYWVuZ3VydWggZ3J1bW1lbHQuCkthZW5ndXJ1aCBzYWd0OiBJbiBkZXIgTVBBIHN0ZWh0IGRlciBnbGVpY2hlIFNjaGVpc3Mgd2llIHZvciBkcmVpIEphaGhyZW4KRHUgc2Fnc3Q6IHdhcyBncnVtbWVsc3QgZHU/IHp1IGNvZGVuIHZlcnN1Y2h0PyA6KQpLYWVuZ3VydWggdHJpdHQgRGljaC4KR3JvbyBsYWNodCBzaWNoIHNjaGxhcHAuCkR1IHNhZ3N0OiB5ZXAgCkthZW5ndXJ1aCBzYWd0OiBJY2ggU0NIV09FUkUgZGlyOiBJY2ggQ29kZSBuaWUgd2llZGVyISA6LSkKRHUgc2Fnc3Q6IGF1Y2ggaW1tZXIgZGllIGdsZWljaGVuIHRoZW1lbiA6KQpEdSBzYWdzdDogaG1tLi4gd2FzIHNhZ3Rlc3QgZHUgbm9jaCB3b21pdCB2ZXJkaWVuc3QgZHUgZGVpbmUga29obGU/PwpEdSBzYWdzdDogcGxha2F0aWVyZW4/IDopKQpLYWVuZ3VydWggc2FndDogc2NyaXB0ZSBzaW5kIGRvb2Y/IG1hZ2llciBzaW5kIHNjaGVpc3NlPyBzcGllbGVyIHNpbmQgenUKS2Flbmd1cnVoIHNhZ3Q6IHNjaGxhdT8gdGVsZWtvbSB6dSB0ZXVlcj8KRHUgbmlja3N0IHp1c3RpbW1lbmQuCkR1IHNhZ3N0OiBmYWVobHRlIG5vY2ggdGhlbWEgcmVsaWdpb24gOikKS2Flbmd1cnVoIHNhZ3Q6IE9rIGFuZGVyczogSWNoIENvZGUga2VpbiBMUEMgbWVocgpEdSBuaWNrc3QgS2Flbmd1cnVoIHp1LgpEdSBzYWdzdDogb2sgOikKS2Flbmd1cnVoIHNhZ3Q6IEVzIHNlaSBkZW5uIGljaCBrYW5uIG1pY2ggd2lya2xpY2ggbWl0IDM1IHp1IFJ1aGUgc2V0emVuCkthZW5ndXJ1aCBzYWd0OiBEYW5uIGRlbmsgaWNoIG5vY2htYWwgZHJ1ZWJlciBuYWNoCkR1IHNhZ3N0OiBuYWphLCBpY2ggZGVua2UgaWNoIGJyYXVjaCBtaW5kZXN0ZW5zIGJpcyAzNyA6KQpLYWVuZ3VydWggc2FndDogSWNoIHdpbGwgbWl0IDMwIE1pbGxpb25hZXIgc2Vpbi4uLgpEdSBkZW5rc3QgICAuIG8gTyAoYWNoamEsIDE1IG11ZXNzdGUgbWFuIHdpZWRlciBzZWluIDopKSkpCkthZW5ndXJ1aCBzYWd0OiBTbyB3aWUncyBhdXNzaWVodCBrb2VubnQgZGFzIGhpbmhhdWVuCkthZW5ndXJ1aCBzYWd0OiBOYWphIHZpZWxsZWljaHQgbWl0IDMyCkR1IHNhZ3N0OiBtaWxsaW9uYWlyIHN1eCA6KSkKRHUgZGVua3N0ICAgLiBvIE8gKHVtIGVzIG1pdCBzZWluZW4gd29ydGVuIHp1IHNhZ2VuIDopKQpLYWVuZ3VydWggc2FndDogU28/IEZpbmQgaWNoIG5pY2h0Li4uIERhbm4gd2FuZGVyIGljaCBuYWNoIEZsb3JpZGEgYXVzIHVuZApLYWVuZ3VydWggc2FndDogbGFzcyBtaXIgZGllIFNvbm5lIGF1Zm4gQmF1Y2ggc2NoZWluZW4KR3JvbyBsYWNodCB1ZWJlciBLYWVuZ3VydWguCkthZW5ndXJ1aCBzYWd0OiAuLi5jb2RlIG5lYmVuYmVpIGJpc3NjaGVuIGxwYy4uLiBiencuIGxlcm5zIG5ldSA6LSkKR3JvbyBzYWd0OiBEVSBzY2hhZmZzdCBuaWUgZGllIEdyZWVua2FydApEdSBzYWdzdDogd2VpbCBpY2ggZ2VuYXUgd2Vpc3MsIHdlbm4gaWNoIG1pbGxpb25hZXJlIGJpbiwgd2VyZCcgaWNoIGVpbgpEdSBzYWdzdDogc2Nod2VpbgpLYWVuZ3VydWggc2FndDogZ3JvbzogRGVwcApHcm9vIG5pY2t0IEthZW5ndXJ1aCB6dS4KR3JvbyBzYWd0OiBqYWphCkdyb28gZ3JpbnN0LgpLYWVuZ3VydWggc2FndDogR3JvbzogQnJhdWNoc3QgYmxvc3MgNTAwLjAwMCB6dSBpbnZlc3RpZXJlbiBiencuIDEyCkthZW5ndXJ1aCBzYWd0OiBBcmJlaXRzcGxhZXR6ZSB6dSBzY2hhZmZlbgpLYWVuZ3VydWggc2FndDogRGFzIHNjaGFmZiBpY2ggbG9ja2VyCkR1IHNhZ3N0OiBnZWxkIGtvcnJ1bXBpZXJ0IHVuZCB2ZXJibG9lZGV0Ckdyb28gc2FndDogU2FjaG1hLCBiaXN0IGR1IGRpZSBGbGFzY2hlIGF1cyBGcmFua2ZydXQgPwpLYWVuZ3VydWggc2FndDogQWJlciB3aWVvcyBHcmVlbmNhcmQ/IEljaCB3aWxsIGphIGRhIGdhciBuaWNodCBhcmJlaXRlbgpEdSBzYWdzdDogdW5kIGRhbm4gcmVkZXN0IGR1IHZvbiBmcmVlbmV0IDopKSkKS2Flbmd1cnVoIHNhZ3Q6IEZMQVNDSEU/Pz8gCkR1IHJvdGZsc3QuCkdyb28gc2FndDogamEsIGlzc2EKS2Flbmd1cnVoIHNhZ3Q6IEZyZWVuZXQgaXN0IGVjaHQgaW4gb3JkbnVuZyBmdWVycyBnZWxkCkR1IGRlbmtzdCAgIC4gbyBPIChvaCBvaCBqZXR6dCB3aXJkJ3MgbmV0dCkKRHUgc2Fnc3Q6IGtpbm5lcnMsIG51ciBydWhpZyBibGVpYmVuIDopCkdyb28gc2FndDogbmFqYSwgZGFubiBicmF1Y2ggaWNoIGtlaW5lIGFuZ3N0IHp1IGhhYmVuLCBkdSBzY2hhZmZzdCBuaWUgMTIKR3JvbyBzYWd0OiBhcmJlaXRzcGxhZXR6ZSBvZGVyIDUwMC4wMDAgZG0KR3JvbyBncmluc3QuCkdyb28gc2FndDogb2RlciAkCkdyb28gZ3JpbnN0LgpLYWVuZ3VydWggc2FndDogJCAKR3JvbyBmYWVuZ3QgYXVmIGVpbm1hbCBvaG5lIGplZGVuIEdydW5kIGFuIHp1IGxhY2hlbi4KT2ZmZW5zaWNodGxpY2ggaGF0IHNpZSBqZW1hbmQgYXVzIGRlciBGZXJuZSBhbSBLaW5uIGdla2l0emVsdC4uLgpLYWVuZ3VydWggc2FndDogSWNoIHd1ZXJkZSBnZXJuIGVpbmUgUmVjaHRmZXJ0aWd1bmcgZnVlciBkaWUgIkZsYXNjaGUiIGhvZXJlbgpHcm9vIHNhZ3Q6IHdpcmtsaWNoID8KS2Flbmd1cnVoIHNhZ3Q6IGtsYXIgCkdyb28gZ3JpbnN0IEthZW5ndXJ1aCBhbi4KR3JvbyBzYWd0OiBtYWNoIDEwIGxpZWdlc3R1ZXR6Ckdyb28gZ3JpbnN0IGRhZW1saWNoLgpLYWVuZ3VydWggdHJpdHQgR3Jvby4KR3JvbyBncmluc3QuCkdyb28gc2FndDogS2FlbmdpOiBoYXN0ZSBnZXJhZGUgYXVzcHJvYmllcnQsIHVpbmQgZXMgaGF0IG5pY2ggZ2VrbGFwdCA/Ckdyb28gZ3JpbnN0LgpEdSBuaWNrc3QgS2Flbmd1cnVoIHp1LgpHcm9vIHNhZ3Q6IDEgbGllZ2VzdHVldHogdW5kIGF1ZmdlZ2ViZW4gKmxhY2gqCkthZW5ndXJ1aCBzYWd0OiBXaWV3YXN3b3dlcndhcnVtPyAKS2Flbmd1cnVoIHNhZ3Q6IEljaCB3YXMgYXVzcG9yaWJlcnQ/Ckdyb28gdGFldHNjaGVsdCBLYWVuZ3VydWggZGVuIEtvcGYuCkR1IHNhZ3N0OiBobW0gaWNoIGdsYXViZSBpY2ggcHJvYmllciBkYXMgYXVjaCBtYWwgYXVzIC4uLiA6KQpHcm9vIHNhZ3Q6IG5hamEsIHdlbm4gYmVpbSBodWVwZmVuIGRhcyBnZWhpcm4gaW1tZXIgZ2VnZW4gZGllIEtvcGZkZWNrZSBoYXV0Ckdyb28gc2FndDogLi4uCkR1IHNhZ3N0OiBiZXZvciBpY2ggaGllciBydW1sYWVzdGVyCkdyb28genVja3QgcmF0bG9zIG1pdCBkZW4gU2NodWx0ZXJuLgpHcm9vIHNhZ3Q6IHdhcyBzb2xsIG1hbiBkYSBlcndhcnRlbgpLYWVuZ3VydWggc2FndDogaWNoIGZ1ZWhsIG1pY2ggdmVyYXJzY2h0Ckdyb28gc2FndDogZWNodCA/Ckdyb28ga3JhdHp0IHNpY2ggYW0gS29wcC4KR3JvbyBzYWd0OiBrb21pc2NoCkR1IHNhZ3N0OiBpcyBhdWNoIHNvIHdpZSBmcnVlaGVyIDopCkdyb28gc2FndDogZGFzIGhvZXIgaWNoIG9lZnRlcnMsIHdlbm4gaWNoIG1pdCBqZW1hbmRlbiBzcHJlY2hlCkdyb28gaHVlcGZ0IHVtIGRpY2ggaGVydW0sIGtyYWNodCBkYWJlaSBtaXQgZGVtIEtvcGYgdm9sbCBnZWdlbiBkaWUgRGVja2UsIHVuZApzdHVlcnp0IGFiLgpHcm9vIGZhZW5ndCBhdWYgZWlubWFsIG9obmUgamVkZW4gR3J1bmQgYW4genUgbGFjaGVuLgpPZmZlbnNpY2h0bGljaCBoYXQgc2llIGplbWFuZCBhdXMgZGVyIEZlcm5lIGFtIEtpbm4gZ2VraXR6ZWx0Li4uCkdyb28gMCBuYWNoIEhhdXNlLgpHcm9vICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpLYWVuZ3VydWggc2FndDogYWggamEKR3JvbyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpHcm9vIDAuCkdyb28gc2NobGFlZ3QgS2Flbmd1cnVoIEtPLgpEdSBiaXN0IGZyb2ggbmljaHRzIGFiYmdla29tbWVuIHp1IGhhYmVuLgpHcm9vIHRyaXR0IG5vY2hlaW5tYWwga3JhZWZ0aWcgaW4gS2Flbmd1cnVoIGhpbmVpbi4KR3JvbyBncmluc3QuCkdyb28gdHJpdHQgbm9jaGVpbm1hbCBrcmFlZnRpZyBpbiBLYWVuZ3VydWggaGluZWluLgpHcm9vIHRyaXR0IG5vY2hlaW5tYWwga3JhZWZ0aWcgaW4gS2Flbmd1cnVoIGhpbmVpbi4KR3JvbyB0cml0dCBub2NoZWlubWFsIGtyYWVmdGlnIGluIEthZW5ndXJ1aCBoaW5laW4uCkdyb28gdHJpdHQgbm9jaGVpbm1hbCBrcmFlZnRpZyBpbiBLYWVuZ3VydWggaGluZWluLgpHcm9vIHRyaXR0IG5vY2hlaW5tYWwga3JhZWZ0aWcgaW4gS2Flbmd1cnVoIGhpbmVpbi4KR3JvbyB0cml0dCBub2NoZWlubWFsIGtyYWVmdGlnIGluIEthZW5ndXJ1aCBoaW5laW4uCkdyb28gdHJpdHQgbm9jaGVpbm1hbCBrcmFlZnRpZyBpbiBLYWVuZ3VydWggaGluZWluLgpHcm9vIHRyaXR0IG5vY2hlaW5tYWwga3JhZWZ0aWcgaW4gS2Flbmd1cnVoIGhpbmVpbi4KR3JvbyB0cml0dCBub2NoZWlubWFsIGtyYWVmdGlnIGluIEthZW5ndXJ1aCBoaW5laW4uCkdyb28gdHJpdHQgbm9jaGVpbm1hbCBrcmFlZnRpZyBpbiBLYWVuZ3VydWggaGluZWluLgpHcm9vIGdyaW5zdC4KS2Flbmd1cnVoIHByb2ppemllcnQgc2VpbiBBYmJpbGQgbmViZW4gRGlyLgpFaW5lIHVuaGVpbWxpY2hlIFNwYW5udW5nIGVyZnVlbGx0IGRlbiBSYXVtLgpLYWVuZ3VydWggc2FndDogTHVzdGlnIGx1c3RpZwpLYWVuZ3VydWggZ3J1bW1lbHQuCkthZW5ndXJ1aCBzYWd0OiBEZXJiZSBTY2hlcnplIG1pdCBhbHRlbSBrbGFwcHJpZ2VtIE1hZ2llciB0cmVpYmVuCkR1IHNhZ3N0OiBmZXJ0aWcgbWl0IGRlbiBzcGllbGVyZWllbj8KRHUgZ3JpbnN0LgpHcm9vIHNhZ3Q6IHdlciBoYXQgYW5nZWZhbmdlbiwgaHVlcGZlciBtaXQgZGVuIGxhbmdlbiBvaHJlbgpLYWVuZ3VydWggc2FndDogSmV0enQgc2Nob24KS2Flbmd1cnVoIHNhZ3Q6IEdyb28gaGF0IG1pY2ggcHJvdm96aWVydApHcm9vIGxhY2h0IHNpY2ggc2NobGFwcC4KR3JvbyBzYWd0OiBkdSB3ZWlzdCBnYXJuaWNodCB3YXMgcHJvdm96aWVyZW4gaGVpc3N0Ckdyb28gc2FndDogd2VyIGhhdCBkZW4gZGVuIGRhZW1saWNoZW4gbmFtZW4gPyBIQWUgPwpLYWVuZ3VydWggc2FndDogV2VubiBkZXIgU2F0eiBtaXQgZGVyIEZsYXNjaGUga2VpbmUgcHJvdm9rYXRpb24gd2FyIGRhbm4gd2Vpc3MKS2Flbmd1cnVoIHNhZ3Q6IGljaCBhdWNoIG5pY2h0Ckdyb28gc2FndDogbG9zCkdyb28gc2FndDogbWFjaCAxMCBsaWVnZXN0dWV0egpHcm9vIHNhZ3Q6IGRhbm4gbmltIGljaCBkYXMgd2llZGVyIHp1cnVlY2sKS2Flbmd1cnVoIHNhZ3Q6IE9oIGZ1Y2sgZHUgYmlzdCBqYSBlaW4gTWFnaWVyCkdyb28gbGFjaHQgc2ljaCBzY2hsYXBwLgpLYWVuZ3VydWggc2FndDogR290dCBiaW4gaWNoIGRvb2YKR3JvbyBzYWd0OiB3ZW5uIG5pY2h0LCB3YWVyZXN0IGR1IG5hY2ggZGVtIHJhdXNzY2htaXNzIHNvIGd1dCB3aWUgc3BpZWxlcgpLYWVuZ3VydWggc2FndDogSEFIQUhBSEFIQSAKS2Flbmd1cnVoIHdhZWx6dCBzaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KR3JvbyB0YWV0c2NoZWx0IEthZW5ndXJ1aCBkZW4gS29wZi4KR3JvbyBzYWd0OiBqYWphCkdyb28gc2FndDogd2lyZCBzY2hvbgpHcm9vIGdyaW5zdC4KR3JvbyB6ZWlndCBEaXIgc3RvbHogaWhyZW4gVGVkZHkuCkRlciBUZWRkeSBicnVtbXQgRGljaCBnbHVlY2tsaWNoIGFuIDogJ0hhbGxvLCBpY2ggYmluIEdyb29zIFRlZGR5IEljaCBiaW4Kc2NoZWlzc2UnCnVuZCB6d2lua2VydCBEaXIgenUuCkthZW5ndXJ1aCBzYWd0OiBJY2ggZ2VoIHNjaGxhZmVuLi4uIEdlbnVnIEJsb2Vkc2lubiBmdWVyIGhldXRlCkdyb28gc2FndDogYWNoa29tbSBLYWVuZ2kKR3JvbyBzYWd0OiBkdSBrYW5uc3QgdW5zIGRvY2ggbmljaHQgaGFlbmdlbiBsYXNzZW4KR3JvbyBzYWd0OiB3aXIgaGFiZW4gc29vb29vIHZpZWwgc3Bhc3MgbWl0IGRpcgpLYWVuZ3VydWggc2FndDogZG9jaCBrYW5uIG9lY2gKR3JvbyBzYWd0OiBvZWNoIG5vZWVlCkthZW5ndXJ1aCBzYWd0OiBzdWNodCBlaWNoIG5vZW4gYW5mYW9lbmdvZXIgenVtIHNwb2Vsb2VuCkR1IHJvdGZsc3QuCkdyb28gcHJ1c3RldCAKS2Flbmd1cnVoIHNhZ3Q6IGRvZSBmcmVpb2VuIHNvZWNoIGRvY2ggd29lbm4gbWFnb2VyIG1vZXQgb2Vobm9lbiByb2Vkb2VuCkdyb28gYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCkdyb28gbmlja3QgenVzdGltbWVuZC4KR3JvbyBzYWd0OiBqYWphCkdyb28gdGFldHNjaGVsdCBLYWVuZ3VydWggZGVuIEtvcGYuCkR1IHNhZ3N0OiBiaXR0ZSBhdWZob2VyZW4gOikKS2Flbmd1cnVoIGdhZWhudC4KR3JvbyBncmluc3QuCkdyb28gc2FndDogaWNoIGthbm4gYXVjaCBuaWNodCBtZWhyCkdyb28gZ3JpbnN0LgpLYWVuZ3VydWggc2FndDogU28sIHNjaGxzcyBqb2V0enQKS2Flbmd1cnVoIHNhZ3Q6IENVIApHcm9vIG5pY2t0IHp1c3RpbW1lbmQuCkthZW5ndXJ1aCB3aW5rdC4KS2Flbmd1cnVoIGJlc2NobGV1bmlndCBhdWYgMTUwIEJQTSB1bmQgaHVlcGZ0IG5hY2ggSGF1c2UuCkthZW5ndXJ1aCB2ZXJsYWVzc3QgZGllc2UgV2VsdC4KRHUgc2Fnc3Q6IGNpYW9pIAoKTWFobHplaXQgOikKR3JvbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIE5lYmVuZWlua3VlbmZ0ZSBlaW5lcyBNYWdpZXJzLi4uLiAoTmV2b2ssIDIxLiBBcHIgMTk5OSwgMDY6NDY6NDkpOgpTdHJvaGFsbSBzYWd0OiBwYXJ0eW1vbnN0ZXIgaG9sZSBzdHJpcHBlcgpOb2VsICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClJvc2llIGVyc2NoZWludCBpbiBlaW5lciBSYXVjaHdvbGtlLgpUb20gZXJzY2hlaW50IGluIGVpbmVyIFJhdWNod29sa2UuCgoKamEgd2llIGpldHp0LCBkcmVpPwpOYWphLCBtYWwgc2VoZW4gd2VyIGRhIG5vY2ggbWl0bWFjaHQuLi4uLgoKZWluIGtvbXBsZXR0IGRlc2lsbHVzaW9uaWVydGVyCgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZXMgYnJlbm50IChNZXNpcmlpLCAyMS4gQXByIDE5OTksIDA5OjE3OjE0KToKZmluZ2VyIDExMgpBbHNvLCBzbyAoMTEyKSBoZWlzc3QgYmVzdGltbXQga2VpbiBTcGllbGVyIGhpZXIhCiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG1tbS4uLiAoTm92YXN0b3JtLCAyMS4gQXByIDE5OTksIDE3OjI4OjU1KToKRGVpbmUgRnJldW5kaW4gTmVzYWphIHRlaWx0IERpciBtaXQ6IHdpciBnZWhlbiBydW50ZXIKTmVzYWphIGt1bGxlcnQgZWllcm5kIG5hY2ggb2Jlbi4KCk9laG0uLi4KICAgICAgTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIG1lcmsgaWNoIG1pci4uLiAoWm9vaywgMjEuIEFwciAxOTk5LCAxODoxNzo1MSk6CgpDYXR3ZWF6bGUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRHUga251ZGRlbHN0IENhdHdlYXpsZSBhdXMgZGVyIEZlcm5lLgpDYXR3ZWF6bGUgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgoKWm9vayAuIG8gTyAoT2RlciBpc3QgZGFzIGVpbiBGZWF0dXJlPykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYXMgbWVyayBpY2ggbWlyLi4uIChDYWxpbWVyYSwgMjEuIEFwciAxOTk5LCAxODoxOTo1Nyk6Cn4jISBybj1ab29rIHJ0PTkyNDcxODY3MSByZz1zY2htYXJybgp+IyEgdGlkPTkyNDcxODY3MQpoZWhlIApDYXR3ZWF6bGUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKWzxNYXN0ZVI+OkhhbmdvdmVyIHN0b2VobnQuXQpDYXR3ZWF6bGUgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE5vdmFzdG9ybSwgMjEuIEFwciAxOTk5LCAxODo1MDoyOSk6CkRlaW5lIEZyZXVuZGluIEphbmlzYSB0ZWlsdCBEaXIgbWl0OiBvaywgd2VyIHdpbGwgbWl0IG1pciBtZXR6ZWxuPwpbVG9kOkxhcnNdIEFubmFwdW5hIGhhdCBnZXJhZGUgSmFuaXNhIHVtZ2VicmFjaHQuCltUb2Q6QW5uYXB1bmFdIEVyd2lzY2h0IQoKICAgICAgTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VsY2hlIEFudGVpbG5haG1lLi4uLiAoTGV2LCAyMS4gQXByIDE5OTksIDIzOjMxOjU4KToKW1phdWJlcmVyOkxseXN0cmF0aGVdIFN0cm9oYWxtIGhhdCBkaWUgR2lsZGVuLUF1ZmdhYmU6ICdCZWZyZWllIGRlbiBhcm1lbgpbWmF1YmVyZXI6TGx5c3RyYXRoZV0gV3VtbWJlbCcgZ2Vsb2VzdC4gCltaYXViZXJlcjpNZXNpcmlpIHNldWZ6dF0KCkxldi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhIHNhZyBub2NoIG1hbCBlaW5lciwgT3JrcyB3YWVyZW4gdW5ob2VmbGljaC4uLiAoU2hhbCwgMjIuIEFwciAxOTk5LCAwNzo0MTo0Nyk6CkR1IGdpYnN0IDUwMDAgTXVlbnplbiBhbiBlaW5lbiBPcmsuCkRlciBPcmsgc2FndDogRGFua2VzY2hvZW4uCkR1IHNhZ3N0OiBiaXR0ZQoKU2hhbCwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11c3MgamEgbmVkcyBrb21tZW50aWVydCB3ZXJkZW4uLi4gKExlbmEsIDIyLiBBcHIgMTk5OSwgMDk6NTE6MTIpOgpEaWVzZXIgVGhyZWFkIHdpcmQgYWIgc29mb3J0IHVlYmVyZ2FuZ2VuLgpGYWxscyBkYXMgZWluIElycnR1bSB3YXIsIHdpZWRlcmhvbGUgZGVuIEJlZmVobCBhdWdlbmJsaWNrbGljaC4KPgo+IG5uClVlYmVyZ2VoZSBBcnRpa2VsIDMzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM1IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM4IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM5IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQxIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQ0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQ1IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQ2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQ3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQ4IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQ5IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDUwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDUxIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDUyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDUzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDU0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDU1IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuICAgICAgICAgICAgICAgICAgICAKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gRnJvc2NoIG9kZXIgd2FzPyAoU2l0bywgMjIuIEFwciAxOTk5LCAxNzozNjo1NSk6Cj4gRWluIHdhYmVybmRlcyBHZWJpbGRlIGVyc2NoZWludCB1cnBsb2V0emxpY2ggdm9yIERpci4KRWluIEZyb3NjaCBodWVwZnQgaGVyZWluLgpFaW4gRnJvc2NoIGtudWRkZWx0IERpY2guCkVpbiBGcm9zY2ggc2FndDogcXVhawoKV2FzIGpldHp0PyBFaW4gRnJvc2NoIG9kZXIgZGVyIFdhbmRsZXI/CgpTaXRvLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChDYXJhZGhyYXMsIDIyLiBBcHIgMTk5OSwgMTg6MjM6NTgpOgpVbmdlc2Nobml0dGVuOgoKW0FiZW50ZXVlcjpQYWxhZGluXSB1bmQgd2llIGlzdCBkYSBzbyBkaWUgaGFldWZpZ2tlaXRzdmVydGVpbHVuZz8KW0FiZW50ZXVlcjpTbmlicmlsXSA6KQpbQWJlbnRldWVyOlNuaWJyaWxdIG51IGphbW1lciBuaWNoIHZvcmhlciBzY2hvbiA6KQpbQWJlbnRldWVyOlNuaWJyaWxdIHRyaW5rIGRhcyB6ZXVnCltBYmVudGV1ZXI6R2FzdDJdIGltbWVyIGVyc3QgaGludGVyaGVyPwpbVG9kOkxhcnNdIEVpbiBGZW50YW55bCBoYXQgZ2VyYWRlIFBhbGFkaW4gdW1nZWJyYWNodC4KW0JlaWxlaWQ6S2FtdWhsXSB3YXIgd29obCBkb2NoIGNuaWh0IHNvIGd1dApbQmVpbGVpZDpWZWN0b3JdIHVwcywgYWxsc28gZG9jaApbQmVpbGVpZDpEaXJpb25dIEJlaWxlaWQgOigKW0FiZW50ZXVlcjpUaHVmaGlyXSBpY2ggaGFiZSBpaG4gZ2V3YXJudC4uLgpbQmVpbGVpZDpTcGVsbGZpcmVdIGJlaWxlaWQKW0JlaWxlaWQ6U25pYnJpbF0gb2IgZGFzIGFuIGRlciBoYWV1Zmlna2VpdHN2ZXJ0ZWlsdW5nIGxpZWd0PwpbQmVpbGVpZDpOaWdodF0gQmVpbGVpZCAhCltCZWlsZWlkOlRoYW5vc10gd2VyIHBvc3RldCBkYXMgZGVuIGpldHp0IGFsZSBlcnN0ZXMgPyA6KSBiZWlsZWlkIDooKAoKICAgSWNoIDopICAgICAgICAgICAgICAgICBCZXJnY2hlbiBDYXJhZGhyYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhvYmJpdHMgKE1vcmdvdGgsIDIzLiBBcHIgMTk5OSwgMDA6MTI6MTYpOgpUYWdvICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpIaWJiZWxpZyBzY2hyZWl0IGxhdXQhClRhZ28gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCk0qIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FlbXBmZXIuLi4oaG9iYml0ZnJhdWVuIG1pdCBQdXNjaGVsZnVlc3NlbikgKE1vcmdvdGgsIDIzLiBBcHIgMTk5OSwgMDA6MTU6MzQpOgpIaWJiZWxpZyBzYWd0OiBpY2ggd2VyZCB3b2hsIG1hbCBhdWYgdGkgZm9yc2NoZW4gZ2VoZW4gaXJnZW5kd2FubgpIaWJiZWxpZyB6dWVja3QgaWhyIEtlcmJob2x6CgpNb3Jnb3RoIGRlbmt0IC4gbyBPIChpcyBrbGFyLCBnZW5hdSB3aWUgTmViKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEYXMgbWVyayBpY2ggbWlyLi4uIChDYXR3ZWF6bGUsIDIzLiBBcHIgMTk5OSwgMDE6MjE6MTcpOgp+IyEgcm49Q2FsaW1lcmEgcnQ9OTI0NzE4Nzk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI0NzE4NjcxClBmZmZmZmZmZmZmZmZmZmZmLiAoYykgMTk5NyBieSBMYXJpc3NhLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSG9iYml0cyAoSmFzcGVyLCAyMy4gQXByIDE5OTksIDAxOjQ0OjI4KToKfiMhIHJuPU1vcmdvdGggcnQ9OTI0ODE5MTM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI0ODE5MTM2CnB1dWgsIHNjaG1hcnJudCBtYWwgd2FzIG5ldWVzLiBzdGFlbmRpZyBkaWVzZXMgJ2JsYSBpcyBqZXR6dCAobmljaHQgbWVocikgZGEuCmlyZ2VuZHdhcyBzZWhyIHdpdHppZ2VzLiBibGEgaXMgamV0enQgKG5pY2h0IG1laHIpIGRhJyBnZWhvZXJ0IGVoZXIgc2Nob24gbmFjaAptdWVsbC4KQ2FyYWRocmFzIHJ1ZnQ6IGRvbGwKRGVpbiBGcmV1bmQgU2x5Zm94IHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1LgpTbHlmb3ggICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpqYXNwZXIgZmluZGV0IGRhcyBhdWNoIHNlZWVlaHIgd2l0emlnICpqYXBzKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdmVybGVnZW4uIChRaXRlc3MsIDIzLiBBcHIgMTk5OSwgMTQ6NTE6MzkpOgphbHNvLCB3ZW5uIHNjaG9uIG1laW4gYXJ0aWtlbCBhdXMgd2l0emUgbmFjaCBzY2htYXJybiB2ZXJsZWd0IHd1cmRlLCBkYW5uCmdlaG9lcmVuIGRpZSBhbmRlcmVuICd3aXR6Jy1hcnRpa2VsIGphIHdvaGwgZ2VuYXVzbyBoaWVyaGVyLi4uIGFuIGRlbmVuIGlzdApuY2ggZ2VuYXVzbyB2aWVsICd3aXR6JyB3aWUgYW4gbWVpbmVtLgoKUUkqKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHZlcmxlZ2VuLiAoTWFoYXRtdSwgMjMuIEFwciAxOTk5LCAxNDo1MzoxNyk6Cn4jISBybj1RaXRlc3MgcnQ9OTI0ODcxODk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI0ODcxODk5CkR1IGJla29tbXN0IGVpbmZhY2ggZGVuIFEtPlMgLSBCb251cy4KCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdmVybGVnZW4uIChHcmltbWJvcm4sIDIzLiBBcHIgMTk5OSwgMTQ6NTQ6MzEpOgp+IyEgcm49UWl0ZXNzIHJ0PTkyNDg3MTg5OSByZz1zY2htYXJybgp+IyEgdGlkPTkyNDg3MTg5OQpKYSwgZGllc2VzICJ3aWVzbyBkZXIgYWJlciBuaWNodCBpY2giLUdlaGV1bGUgaW4gZGl2ZXJzZW4gVmFyaWF0aW9uZW4gaXN0IGRvY2gKaW1tZXIgd2llZGVyIGVyZnJpc2NoZW5kLgpPSywgbWlyIGhhdCBkZXIgWnVzYW1tZW5oYW5nIGdlZmVobHQsIG1pdCBkZW4gYW5kZXJlbiBHbGFlc2Vydm9yc2NobGFlZ2VuCnp1c2FtbWVuIGthbm4gbWFuIGFyZ3VtZW50aWVyZW4gZGFzcyBlcyBsdXN0aWcgc2VpbiBrb2VubnRlIC0+IHp1cnVlY2t2ZXJsZWd0LgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHZlcmxlZ2VuLiAoQ2FyYWRocmFzLCAyMy4gQXByIDE5OTksIDE3OjU4OjI0KToKfiMhIHJuPUdyaW1tYm9ybiBydD05MjQ4NzIwNzEgcmc9c2NobWFycm4KfiMhIHRpZD05MjQ4NzE4OTkKVGVlZnJvc2NoLCBEdSB3aXJzdCBhbHQgdW5kIHZlcndlaWNobGljaHQsIGZydWVoZXIgaGFldHRlc3QgRHUKZGFzIG5pZW1hbHMgd2llZGVyIHp1cnVlY2t2ZXJsZWd0LiBUc3RzLiA6KQoKICAgICAgIEJlcmdjaGVuIENhcmFkaHJhcyAtIHRhZGVsdCBBdGhlaXN0IFRlZWZyb3NjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIGlzdCBlaW4gWmVpY2hlbiEgOykgKFRodWZoaXIsIDIzLiBBcHIgMTk5OSwgMTg6MjY6MjEpOgoKRGFya3dpbmcgc2FndDogYmFkZWFuenVnIGtvbW10IGFiZXIgd2llZGVyIHJhbgpEYXJrd2luZyBzYWd0OiB4YW5kIHVlYmVybmltbXQgZGFzIGdlYmlldApbR3JhdHM6R29sYXNdIHZvbGwgZ3V1dXVodXV1dWh1dXV1dAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogdmVybGVnZW4uIChHcmltbWJvcm4sIDIzLiBBcHIgMTk5OSwgMjM6NDE6NTIpOgp+IyEgcm49Q2FyYWRocmFzIHJ0PTkyNDg4MzEwNCByZz1zY2htYXJybgp+IyEgdGlkPTkyNDg3MTg5OQpVbSBrb25zaXN0ZW50IHp1IGJsZWliZW4gZ2FicyBudXIgendlaSBNb2VnbGljaGtlaXRlbjogRW50d2VkZXIgUXVpdGVzc2VucwpBcnRpa2VsIHdpZWRlciB6dXJ1ZWNrenV2ZXJsZWdlbiBvZGVyIHppZW1saWNoIHZpZWxlIChtZWluZXIgQW5zaWNodCBuYWNoCm1hZXNzaWcgd2l0emlnZSkgQXJ0aWtlbCBhdXMgd2l0emUgcmF1c3p1d2VyZmVuLiBMZXR6dGVyZXMgaGFldHRlIGJlZGV1dGV0LApkYXNzIGljaCBzaWUgbm9jaG1hbCBoYWV0dGUgbGVzZW4gbXVlc3NlbiAodW0gbmljaHQgZGllIGZhbHNjaGVuIHp1IGVyd2lzY2hlbikKdW5kIHNpZSBtaWNoIGRhbmFjaCBub2NobWFsIGJlaW0gbmFlY2hzdGVuIG5uIGFuZ2VzcHJ1bmdlbiBoYWV0dGVuLgpKYSwgaWNoIGdlaGUgZGVuIFdlZyBkZXMgZ2VyaW5nc3RlbiBXaWRlcnN0YW5kZXMuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QuIDI3IG5PaG0uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFzIGlzdCBlaW4gWmVpY2hlbiEgOykgKE1vcmdvdGgsIDIzLiBBcHIgMTk5OSwgMjM6NDk6MDcpOgp+IyEgcm49VGh1ZmhpciBydD05MjQ4ODQ3ODEgcmc9c2NobWFycm4KfiMhIHRpZD05MjQ4ODQ3ODEKQWhhLCB3YXMgRHUgc28gYWxsZXMgd2Vpc3N0LiBTbyBlbnRzdGVoZW4gYWxzbyBHZXJ1ZWNodGUsIGludGVyZXNzYW50LgoKTSogc3RhdW50CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3byBnaWJ0cyBkaWVzZSBnbG9lY2tjaGVuPyA6LSkgKFN0cmVhd2tjZXVyLCAyNC4gQXByIDE5OTksIDAyOjI4OjA3KToKRWluIGhlbGxlcyBLbGluZ2VsbiBlcnNjaGFsbHQsIGFscyBGaXJlaGF3ayBlaW4ga2xlaW5lcyBHbG9lY2tjaGVuIGxhZXV0ZXQuCkdhc3QxIGJldHJpdHQgZGllc2UgV2VsdC4KCnJyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggc3RlaCBoZXV0ZSBpcmdlbmR3aWUgbmViZW4gbWlyLi4uIChTdHJlYXdrY2V1ciwgMjQuIEFwciAxOTk5LCAwMjozNDozNyk6Cj4gcnd1c2NoZWwgc3RyZWF3a2NldXIKQWJlciBkaWVzZXIgU3BpZWxlciBzdGVodCBkb2NoIG5lYmVuIERpciEKCnJyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkaWUgbmVobWVuIGF1Y2ggYWxsZXMgaGllciAqZyogKEhpZ2h0LCAyNC4gQXByIDE5OTksIDIxOjIwOjA0KToKCkVpbmUgSGFuZDogRGVyIEhhZW5kbGVyIHphaGx0IERpciAzMCBHb2xkc3R1ZWNrZS4KCgpoZWhlIGRhZnVlciBiZWtvbW10IG1hbiBnZWxkID8hIC4uLiBnb2xhcyBsYXNzIG1hbCBub2NoIHBhYXIgZmFsbGVuICpnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW1hbmRhIGluIGRlciBLb2JvbGRob2VobGUgKFNoYW5uYXJhLCAyNC4gQXByIDE5OTksIDIzOjM0OjAyKToKQW1hbmRhIHNhZ3Q6IEhhbGxvIEVpbiBrb2JvbGQhCkFtYW5kYSBzYWd0OiBXaWUgd2FlcnMgZGVubiBtaXQgdW5zLCBLbGVpbmVyPwpIaW50ZXIgRGlyIGh1c2NodCBldHdhcyB2b3JiZWkuCkFtYW5kYSBzYWd0OiBEaWUgTWFlbm5lciBzaW5kIGF1Y2ggbmljaHQgbWVociBkYXMsIHdhcyBzaWUgbWFsIHdhcmVuLi4uCkFtYW5kYSB3YWNrZWx0IG1pdCBpaHJlbSBIaW50ZXJuLgoKKmtpY2hlcioKCiAgU2hhbm5hcmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNhbXN0YWcgTmFjaHQuLi4gKERhcmt3aW5nLCAyNS4gQXByIDE5OTksIDA1OjI5OjE0KToKW1RydmVzOkhpZ2h0XSBvZWhtIHdvIGtyaWNoIGljaCBldHogbiBzZWlsIGhlciAwMzoxOTo1NQpbVHJ2ZXM6RGFya3dpbmddIGltbSBzY2hsYWZzYWFsIGJldHRsYWtlbiBrbGF1biB1bmQgenVzYW1tZW5rbm90ZW4gMDM6MjA6MzUKW1RydmVzOkplbWFuZCBncmluc3QgMDM6MjU6MTZdCltUcnZlczpIaWdodF0gb2htIHdpZSBrcmlnIGljaCBkaWUgbGFrZW4gYXVzIGRlbiBiZXR0ZW4gPyAwMzoyNTowMgoKRGFya3dpbmcsIHNpY2ggYW0gQm9kZW4ga3VnZWxuZCB2b3IgTGFjaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIHN0ZWggaGV1dGUgaXJnZW5kd2llIG5lYmVuIG1pci4uLiAoUmlrdXMsIDI1LiBBcHIgMTk5OSwgMTU6MjU6MTApOgp+IyEgcm49U3RyZWF3a2NldXIgcnQ9OTI0OTE0MDc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI0OTE0MDc3CmljaCB3dXNzdGUgZXMgZG9jaCEgOikKClJpa3VzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdWVyIE11YWRpYiEgKExldiwgMjYuIEFwciAxOTk5LCAwMToxNTozNCk6CndhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRm9ydHVuZSBkZXMgVGFnZXMuLi4gKEFuYXRvbCwgMjYuIEFwciAxOTk5LCAwMToxNjo0Myk6Ck1hdGggaXMgbGlrZSBsb3ZlIC0tIGEgc2ltcGxlIGlkZWEgYnV0IGl0IGNhbiBnZXQgY29tcGxpY2F0ZWQuCiAgICAgICAgICAgICAgICAtLSBSLiBEcmFiZWsKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqZ3J1ZWJlbCogKFRhcmFnb24sIDI2LiBBcHIgMTk5OSwgMDE6MTY6NTYpOgpbU2VoZXI6S2FydG9mZmVscyBOTmFkVy1NRWxkdW5nIGlzIDogIEFsbGVzIGZhdWxlIFNhZWNrZSwga2VpbmVyIHNjaHJlaWJ0Cndhcy5dCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBMZXYgaW4gUnVicmlrICJzY2htYXJybiIuCgoqbmFjaGRlbmsqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoaWhpLi4uIChEYXJrd2luZywgMjYuIEFwciAxOTk5LCAwMjoxMjoxOSk6CltNb2VyZGVyOkdlaXN0IE1haXNlbnNdIERhIGJpc3QgRHUgamV0enQgYmVzdGltbXQgc3RvbHogZHJhdWYsIEZyb3NjaApbTW9lcmRlcjpHZWlzdCBNYWlzZW5zXSBEYXJrd2luZy4gMjM6NTM6MzAKCmRlciB3YXIgZ3V0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpyZWtvcmQgKFB1aywgMjYuIEFwciAxOTk5LCAwNDozMzoyOCk6CkRyb2xsaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKCgp3b3cqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdydW1tZWwgKFB1aywgMjYuIEFwciAxOTk5LCAwNDozNDoyMyk6Cm1pc3RpZ2VzIHptdWQgZ290dHZlcmRhbXR0ZXMgZHJlY2tzdGVpbCAqZ3J1bW1lbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBncnVtbWVsIChBc21vZGlzLCAyNi4gQXByIDE5OTksIDA2OjA3OjAwKToKfiMhIHJuPVB1ayBydD05MjUwOTQwNjMgcmc9c2NobWFycm4KfiMhIHRpZD05MjUwOTQwNjMKV2FzIHNvbGx0ZW4gdW5zIGRpZSAyIGxldHp0ZW4gQXJ0aWtlbCBzYWdlbiA/IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBncnVtbWVsIChBcHN1LCAyNi4gQXByIDE5OTksIDA2OjA4OjAxKToKfiMhIHJuPUFzbW9kaXMgcnQ9OTI1MDk5NjIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI1MDk0MDYzClptdWQgbG9lc2NoZW4/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGVyIGFrdHVlbGxlIFBzeWNob3Rlc3Q6IEJpc3QgZHUgZWluIEthZW1wZmVyPyAoR3JpbW1ib3JuLCAyNi4gQXByIDE5OTksIDExOjAwOjA2KToKfiMhIG9uPUphc29ucmlnaWQgb3Q9OTI0OTUyMzMyIG9nPXdpdHplCn4jISBybj1LbnViYmVsIHJ0PTkyNDg3NTEwNSByZz13aXR6ZQp+IyEgdGlkPTkyNDg3NTEwNQoKV2VubiBpY2ggbWlyIHNvIG1hbmNoZW4gS2FuZHJpc3RlbiBhbnNlaGUsIHdvIGljaCBudXIgbWl0IHJ1bnRlcmdla2xhcHB0ZXIKS2lubmxhZGUgcnVtc3RlaGUsIGtvZW5udGUgZGFzIGF1Y2ggZWluZXIgdm9uIGRlbiAiQW50d29ydC0zLVR5cGVuIiBzZWluLgoKSmFzb24sIGltbWVyIG5vY2gga2ljaGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCj8/PyAoTGVuYSwgMjYuIEFwciAxOTk5LCAxMTo1Njo1NSk6CmZpbmdlciBncm1wbHdtcGYKSG1tLi4uIGRpZXNlbiBOYW1lbiBnaWJ0IGVzIGluIE1vcmdlbmdyYXVlbiBuaWNodC4KPiBHcm1ibHdtcGYgaGF0IGdlcmFkZSBkaWUgVmVyYmluZHVuZyB6dSBNb3JnZW5HcmF1ZW4gZ2VrYXBwdC4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEdybWJsd21wZi4gICAgICAgICAgICAgICAgICAgICAgICAgICAKCgpNYW4gd2lyZCBzaWNoIGRvY2ggbWFsIG9obmUgYm9lc2FydGlnZSBGb2xnZW4gdmVydGlwcGVuIGR1ZXJmZW4sIG9kZXI/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2Nob2VuZSBhdXNzaWNodGVuIDspIChEaXJpb24sIDI2LiBBcHIgMTk5OSwgMTY6MDE6MTEpOgpIb2NoIHVlYmVyIGRlbSBNb25vbGl0aGVuLCBpbiBzY2h3aW5kZWxuZGVyIEhvZWhlLCBzdGVoc3QgRHUgYXVmIGVpbmVtCmtsZWluZW4gQmFsa29uIG1pdCBuaWVkcmlnZW0gR2VsYWVuZGVyLiBEZXIgc2Nod2FyemUgVHVybSByYWd0IGVuZGxvcwppbiBkZW4gSGltbWVsIGVtcG9yLCB3YWVocmVuZCBEdSB3ZWl0ZXIgdW50ZW4gbm9jaCBlaW5lbiB3ZWl0ZXJlbiBCYWxrb24KZXJrZW5uZW4ga2FubnN0LgoKPiB1bnQgZXJkYm9kZW4KRGVyIEVyZGJvZGVuIGlzdCBmdWVyIERlaW5lbiBHZXNjaG1hY2sgdmllbCB6dSB0aWVmIHVudGVuLgo+IHVudCBnZXNjaG1hY2sKU293YXMgc2llaHN0IER1IGRhIG5pY2h0IQoKRWluIGdyaW5kZW5kZXIgRGlyaW9uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2Nob2VuZSBhdXNzaWNodGVuIDspIChNYWhhdG11LCAyNi4gQXByIDE5OTksIDE2OjA0OjMxKToKfiMhIHJuPURpcmlvbiBydD05MjUxMzUyNzEgcmc9c2NobWFycm4KfiMhIHRpZD05MjUxMzUyNzEKR3JpbmRlbmRlcj8gLi4uIGdyaW5kaW5nIC4uLgpQRlVJIQoKR2xvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoYSEhISAoU3ZldGxhbmEsIDI2LiBBcHIgMTk5OSwgMTc6MDU6MzEpOgpFaW5lIEFtZWlzZSBpc3QgZXR3YSAtOWNtIGdyb3NzLgoKU3ZldGxhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBaGEhISEgKEdyaW1tYW4sIDI2LiBBcHIgMTk5OSwgMTc6MDc6MDEpOgp+IyEgcm49U3ZldGxhbmEgcnQ9OTI1MTM5MTMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI1MTM5MTMxCnZpZWxsZWljaHQgdm9yIEFuZ3N0IGdlc2NocnVtcGZ0ID8gOykpCgpHcmltTWFuICwgTG9lc3VuZyBzdWNoZW5kIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU29uZGVyYW5nZWJvdGUuLi4hIChIYW5nb3ZlciwgMjYuIEFwciAxOTk5LCAxOTowMzozOCk6CkdyYWRlIGViZW4gaW4gT3JraGF1c2VuOgpbemVpZ2VdCi4uLgoxNy4gMTAgTGVpY2hlbnR1ZWNoZXIgICAgICAgICAgICAgIDAKLi4uCgpIdWVic2NoZXIgUHJlaXMgOikKCi1IYW5nb3ZlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWN0cm9uLi4uIChXb29keSwgMjcuIEFwciAxOTk5LCAwMDowOTo0Mik6Ci4uLnZlcmthdWZ0IGpldHp0IGdhbnogd2FzIHRvbGxlczoKCkludGVsIFBlbnRpdW0gSUkgQ1BVIDI2NiBNSHogLSBnZWJveHQgOi0pKSkpKSkKKG1hbiBrYW5uIGphIHZpZWwgdWViZXJzZXR6ZW4sIGFiZXIgYm94ZWQuLi4uLi4uLikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpjaGFvdGVuLi4uIChCaWVyY2hlbiwgMjcuIEFwciAxOTk5LCAwMDoxMTo0NSk6CkZyeWRlciBzYWd0IGNoYW90aXNjaDogSGksIHdvIHN0ZWh0IGRlbm4gZGllIEhpbGZlIHp1IGRpZXNlbSBjaGFvc3NhZz8KU3Rpbmcgc2FndCBjaGFvdGlzY2g6IGhpbGZlCkR1IHNhZ3N0IGNoYW90aXNjaDogY2hhb3NzYWcgaGlsZmU/ClN0aW5nIHNhZ3QgY2hhb3Rpc2NoOiBhcmdsIDopClN0aW5nIHNhZ3QgY2hhb3Rpc2NoOiBoaWxmZQpGcnlkZXIgc2FndCBjaGFvdGlzY2g6IEhyZ2xsLgpTdGluZyBzYWd0IGNoYW90aXNjaDogaHJtcGYKRnJ5ZGVyIHNhZ3QgY2hhb3Rpc2NoOiBoaWxmZQpEdSBzYWdzdCBjaGFvdGlzY2g6IGhvZWhvZQpFaXNpIHNhZ3QgY2hhb3Rpc2NoOiAtLWhlbHAKU3Rpbmcgc2FndCBjaGFvdGlzY2g6IHd1cmRlIGRhIHdhcyBnZWFlbmRlcnQgPwpFaXNpIHNhZ3QgY2hhb3Rpc2NoOiAtaApFaXNpIHNhZ3QgY2hhb3Rpc2NoOiAvPwpFaXNpIHNhZ3QgY2hhb3Rpc2NoOiBrbGFwcGVydHQgYWxsZXMgbmljaHQgOigKRnJ5ZGVyIHNhZ3QgY2hhb3Rpc2NoOiBJaHIgd2l0emJvbGRlIDopClN0aW5nIHNhZ3QgY2hhb3Rpc2NoOiBpY2ggd2Vpc3MgZXMgbmltbWVyLCBzZXVmeiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVWViZXJzZXR6dW5nZW4gdm9uIENvbXB1dGVyc3BpZWxlbi4uLiAoU3RpbmcsIDI3LiBBcHIgMTk5OSwgMDA6MTc6MzcpOgpEYXMgSW5zdGFsbGF0aW9uLVZlcmZhaHJlbiB3aXJkIFNpZSB2ZXJhbmxhc3NlbiBkYXMgRm9sZ2VuIGF1ZiBJaHJlIE1hc2NoaW5lCmFuenVzY2hsaWVzc2VuICguLi4pIC0gUHJvbXB0IGRpZSAzRGZ4IEZhaHJlciBhbnNjaGxraWVzc2Vuai4gRGllcyBpc3QgbnVyCm5vdHdlbmRpZywgd2VubiBkYXMgU3BpZWwgbmljaHQgbGF1ZmVuIHdpcmQsIG5hY2hkZW0gU2llIG1hY2hlbiwgZGFzIHNjaGxpZWVuClNpZSBhbi4gRGllIDNEZnggRmFyaGVyIHdlcmRlbiBpbiBJaHJlbSAgQW4gTWVudS9Qcm9ncmFtcy9TcGVjT3BzIGdlZnVuZGVuLgpTaWUgd2VyZGVuIGJlbm9ldGlnZW4sIHdpZWRlciBJaHJlIE1hc2NoaW5lIGFuenVsYXNzZW4gbmFjaCBkZW0gQW5zY2hsaWVzc2VuCmRlciBGYWhyZXIuCgoKVW5kIG5vY2ggZWluZXI6CgpEdXJjaCBkYXMgRm9ydHNldHplbiBkZXIgSW5zdGFsbGF0aW9uIGRpZXNlcyBTcGllbGVzIFByb2dyYW1tIGJlcmVjaHRpZ3RlIFNQRUMKT1BTLCBkdXJjaCBkYXMgYmVyaGF1ZmVuIG9kZXIgZGFzIHN0YXJ0ZW4gZGVzIGJlcmVpdGV0ZW4gUHJvZ3JhbW1zLCBvZGVyIHJ1Y2gKZGFzIFNldHplbiBvZGVyIGJlaW0gQWJzY2hyZWliZW4gZGVzIGJlcmVpdGV0ZW4gUHJvZ3JhbW1zIGF1ZiBJaHJlbSBDb21wdXRlcgpoYXJ0ZXIgQW50cmllYiwgQ29tcHV0ZXIgUkFNIG9kZXIgYW5kZXJlciBMYWdlcnVuZywgU2llIHN0aW1tZW4gdWViZXJlaW4sCmR1cmNoIGRpZSBCZWRpbmd1bmdlbiBkaWVzZXIgWnVzdGltbXVuZyBnZWJ1bmRlbiB6dSBzZWluLgpEdXJjaCBkYXMgRm9ydHNldHplbiBkZXIgSW5zdGFsbGF0aW9uIGRpZXNlcyBTcGllbGVzIFByb2dyYW1tIGJlcmVjaHRpZ3RlIFNQRUMKT1BTLCBkdXJjaCBkYXMgYmVyaGF1ZmVuIG9kZXIgZGFzIHN0YXJ0ZW4gZGVzIGJlcmVpdGV0ZW4gUHJvZ3JhbW1zLCBvZGVyIHJ1Y2gKZGFzIFNldHplbiBvZGVyIGJlaW0gQWJzY2hyZWliZW4gZGVzIGJlcmVpdGV0ZW4gUHJvZ3JhbW1zIGF1ZiBJaHJlbSBDb21wdXRlcgpoYXJ0ZXIgQW50cmllYiwgQ29tcHV0ZXIgUkFNIG9kZXIgYW5kZXJlciBMYWdlcnVuZywgU2llIHN0aW1tZW4gdWViZXJlaW4sCmR1cmNoIGRpZSBCZWRpbmd1bmdlbiBkaWVzZXIgWnVzdGltbXVuZyBnZWJ1bmRlbiB6dSBzZWluLgoKClNvcnJ5LCBmdWVyIGRlbiB6d2VpbWFsaWdlbiBUZXh0IDopCgpTdGluZwpQUzogVWVicmlnZW5zIE9SSUdJTkFMLCBpY2ggaGFicyBiZWkgZWluZW0gc3BpZWwgdm9uIG1pciBlbnRkZWNrdCBtYWwgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVlYmVyc2V0enVuZ2VuIGRpZSB6d2VpdGUgKFN0aW5nLCAyNy4gQXByIDE5OTksIDAwOjIyOjQwKToKTGVzZW4gU2llIGRhdW50ZW4gZHVyY2hhdXMsIGJldm9yIHNpZSBpaG4gYW4gZGllIEFyYmVpdCBicmluZ2VuCgoKQS4gU2NobGllc3NlbiBTaWUgbmljaHQgZGVuIFNjaGx1ZXNzZWwtU2NoYWx0ZXIgYXVmLCB1bmQgbmVobWVuIGRpZQpIYXJkLURpc2tldHRlIHdlZywgd2VubiBSZWFkL1dyaXRlIHp1Z2FlbmdsaWNoIGZyIGRpZSBoYXJkLWRpc2tldHRlIGlzdC4gRXMKaXN0IGRlciBWZXJsdXN0IGRlciBEYXRlbiB6dSB2ZXJoaW5kZXJuLgoKQi4gSW1tZXIgcGFya2VuIHNpZSBkYXMgSGVhZCBkZXIgSGFyZC1EaXNrZXR0ZSwgYmV2b3Igc2llIHZvbiBDb21wdXRlcgp3ZWdnZW5vbW1lbiB3aXJkLiBBdXNzZXIgd2VubiBkaWUgSGFyZC1EaXNrZXR0ZSBkaWUgYXV0b21hdGlzY2ggcGFya2VuZGUKRnVua3Rpb24gaGF0LgoKQy4gVW0gZGVuIFN0b3NzLVNjaGFkZW4gd2FlaHJlbmQgZGVyIFZlcnNlbmR1bmcgenUgdmVyaGluZGVybiBzaWNoZXJuIFNpZSwKZGFzcyBkZXIgTU9CSUxFUkFDSyBhdWYgZGVtIHNhY2sgZ2VwYXJrdCB3aXJkLiBEdXJjaCBkZW0gU2FjayBoYXQgZGllClN0b3NzLUFic29yb3B0aW9uLiBBYmVyIHNlaWVuIHNpZSB2b3JzaWNodGlnISBGYWVsbHQgZGVyIE1PQklMRVJBQ0sgbmljaHQgYXVmCmRlbiBCb2Rlbi4KCgo2LiBTY2hsaXR0ZXJuIGRpZSBBYm5laG1lbmRlLUFibGFnZSBpbiBGaXhlZC1SYWNrIGhpbmVpbi4gU2NobGllc3NlbiBzaWUgYXVmCmRlbiBTY2hsdWVzc2VsLVNjaGFsdGVyLiBNYWNoZW4gc2llIGRlbiBDb21wdXRlciBhbiB1bmQgZ2VzdGFsdGVuIHNpZSBpaHJlbgpDb21wdXRlciBhdWYgZGFzIFNldHVwLVByb2dyYW1tLiBGb3JtYXQgaWhyZSBIYXJkLURpc2tldHRlLCB3ZW5uIGVpbmUgbmV1ZQp1bmZvcm1lbmRlIEhhcmQtRGlza2V0dGUgYmVzY2hsYWdlbiB3aXJkLgoKClN0aW5nLCBzaWNoIGhhbGIgdG90IGxhY2hlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVlYmVyc2V0enVuZ2VuIFRlaWwgMy4gKFN0aW5nLCAyNy4gQXByIDE5OTksIDAwOjI1OjQyKToKCkdlc2VoZW4gaW4gTW9ydGFsIENvaWwsIGRldXRzY2hlIFZlcnNpb24sIGltIE1lbnVlIGRlcyBTZXR1cHM6CgpDb25maWd1cmF0aW9uCgpnZXN1bmRlIEthcnRlCnRhc3RhdHVyIHJlZGlmaW5pdGlvbgp6dWZyaWVkZW5lIHNlbnNpYmlsaXRhZXQKCgpTdGluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmV0dGUgRWxmZW4gPyAoQXNtb2RpcywgMjcuIEFwciAxOTk5LCAwMTo0NDo0OSk6CkVpbiBFbGZlbndhZWNodGVyIG5pbW10IGRlbiBQbGF0dGVucGFuemVyLgpEaWUgQmF1Y2hyZWlmZW4gc2luZCBsZWlkZXIgZWluIHdlbmlnIHp1IGVuZyBmdWVyIERpY2gsIHNvIGRhc3MgRHUgbmljaHQKaW4gZGVuIFBhbnplciBoaW5laW4gcGFzc3QuCgpQLlMuOyBEZXIgaGF0IHZlcnN1Y2h0LCBkZW4gcGFuemVyIGFuenV6aWVoZW4gdW5kIGdpYnQgamEgYmVrYW5udGxpY2ggZGllCm1lbGR1bmdlbiBpbiBkZW4gUmF1bSAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvc28sIGFsc28gZ2lidCBlcyBkb2NoIFNvZWxkbmVyIChTaGFsLCAyNy4gQXByIDE5OTksIDEyOjQwOjQwKToKW3plaWdlXQoxOC4gRWluIGhhbGJ2ZXJkYXV0ZXIgS2FlbXBmZXIgICAgOTAKW2thdWZlIDE4XQpEdSBrYXVmc3QgZGVuIEthZW1wZmVyLgoKU2hhbCwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9laG0gamEgIChIaWdodCwgMjcuIEFwciAxOTk5LCAyMTo1NzozOSk6CkFyYW5jaWEgcnVmdDogd2FhYWFhYWFoaGhoaAphcmEgd2FzIG5hIGxvcyA/PwpEdSB0ZWlsc3QgQXJhbmNpYSBtaXQ6IHdhcyBuYSBsb3MgPz87PiBBcmFuY2lhICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQKTSBFIEggUiAgIEQgQSAhISEKCip3dW5kZXIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXMgbmV1ZXMgKFppbGx1cywgMjcuIEFwciAxOTk5LCAyMjoyODo0Myk6CndhcyBuZXVlcyBmdWVyIGhpZ2h0CgpaLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbm9jaG1hbHMgd2FzIG5ldWVzIDopIChaaWxsdXMsIDI3LiBBcHIgMTk5OSwgMjI6MzA6NTkpOgpkaWVzbWFsIGZ1ZXIgTGVpYm5pei4gV2VyIHdpbGwgc29uc3Qgbm9jaCA6KSA/CgpaLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5vY2htYWxzIHdhcyBuZXVlcyA6KSAoQXNtb2RpcywgMjcuIEFwciAxOTk5LCAyMjozMjozMSk6Cn4jISBybj1aaWxsdXMgcnQ9OTI1MjQ1MDU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI1MjQ1MDU5Cm1pciBhdWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IG5vY2htYWxzIHdhcyBuZXVlcyA6KSAoSGlnaHQsIDI3LiBBcHIgMTk5OSwgMjI6MzQ6MDkpOgp+IyEgcm49QXNtb2RpcyBydD05MjUyNDUxNTEgcmc9c2NobWFycm4KfiMhIHRpZD05MjUyNDUwNTkKZGFzIG1hY2ggaWNoIGV0eiAqZyoKbnVyIGZ1ZXIgZGljaCAubykpKSAKCm5lcmphIHVuZCBmdWVyIGFsbWR1ZGxlciB3ZWlsIGVyIHNvIG5ldHQgZ2VmcmFnYXQgaGF0IC5vKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBub2NobWFscyB3YXMgbmV1ZXMgOikgKFppbGx1cywgMjcuIEFwciAxOTk5LCAyMjozNDoyMCk6Cn4jISBybj1Bc21vZGlzIHJ0PTkyNTI0NTE1MSByZz1zY2htYXJybgp+IyEgdGlkPTkyNTI0NTA1OQp3YXMgd2lsbHN0IGR1IGRlbm4gaG9lcmVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5vY2htYWxzIHdhcyBuZXVlcyA6KSAoTW9yZ290aCwgMjcuIEFwciAxOTk5LCAyMjozNDozMik6Cn4jISBybj1aaWxsdXMgcnQ9OTI1MjQ1MDU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI1MjQ1MDU5Cndhcz8gTGVpYm5pej8gCgpNKiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbm9jaG1hbHMgd2FzIG5ldWVzIDopIChMZWlibml6LCAyNy4gQXByIDE5OTksIDIyOjM0OjU2KToKfiMhIHJuPU1vcmdvdGggcnQ9OTI1MjQ1MjcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI1MjQ1MDU5CmtsYXIgZnVlciBtaWNoIDopCgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbm9jaG1hbHMgd2FzIG5ldWVzIDopIChNb3Jnb3RoLCAyNy4gQXByIDE5OTksIDIyOjM2OjEyKToKfiMhIHJuPUxlaWJuaXogcnQ9OTI1MjQ1Mjk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI1MjQ1MDU5CioqdGFldHNjaGVsIGJsb25kZXMgbGVpYmkqKgpMaWVzIG1hbCByaWNodGlnIDstKSkKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBub2NobWFscyB3YXMgbmV1ZXMgOikgKExlaWJuaXosIDI3LiBBcHIgMTk5OSwgMjI6MzY6NTApOgp+IyEgcm49TW9yZ290aCBydD05MjUyNDUzNzIgcmc9c2NobWFycm4KfiMhIHRpZD05MjUyNDUwNTkKSUNIIEJJTiBORVQgQkxPTkQhISEhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogbm9jaG1hbHMgd2FzIG5ldWVzIDopIChaaWxsdXMsIDI3LiBBcHIgMTk5OSwgMjI6Mzc6MjUpOgp+IyEgcm49TGVpYm5peiBydD05MjUyNDU0MTAgcmc9c2NobWFycm4KfiMhIHRpZD05MjUyNDUwNTkKb2ggc2NoYWRlLiBpY2ggbGllYmUgYmxvbmRlIGZyYXVlbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IG5vY2htYWxzIHdhcyBuZXVlcyA6KSAoSGlnaHQsIDI3LiBBcHIgMTk5OSwgMjI6NTI6NDMpOgp+IyEgcm49TGVpYm5peiBydD05MjUyNDU0MTAgcmc9c2NobWFycm4KfiMhIHRpZD05MjUyNDUwNTkKc2Nob3dlbiBmdWVyIGRpY2ggLm8pKSkgCgpuZXJqYSBpcyBhdWNoIGJlc3NlciBzbyAubykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlaGVpbW5pc2tyYWVtZXJlaW4gKFRydWcsIDI4LiBBcHIgMTk5OSwgMTI6MzE6MTUpOgo+IENhdHdlYXpsZSB2ZXJzdGVja3Qgc2ljaCBoaW50ZXIgRGVpbmVtIFJ1ZWNrZW4uCkNhdHdlYXpsZSBzY2hsZWljaHQgc2ljaCB2b24gaGludGVuIGFuIERpY2ggaGVyYW4uCidhY2ggbmljaHQgaGludGVyIG1pciBzcGllbGNoZW4gbWFjaGVuIDopCkR1IHNhZ3N0OiBhY2ggbmljaHQgaGludGVyIG1pciBzcGllbGNoZW4gbWFjaGVuIDopCj4gU25pYnJpbCBzdGVodCBoaW50ZXIgRGlyLgpHYXN0MSBiZXRyaXR0IGRpZXNlIFdlbHQuICAgIApXYXMgd29obCBkaWUgYWxsZSBoaW50ZXIgbWVpbmVuIFJ1ZWNrZW4gdHJlaWJlbj8KClRydWcgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnZ1bGthbj8gOykgKEthcmljLCAyOC4gQXByIDE5OTksIDE0OjI3OjI0KToKRHUgaG9lcnN0IGVpbiBHcm9sbGVuLiBEZXIgVnVsa2FuIGlzdCBtYWwgd2llZGVyIGFrdGl2LgpEdSBmdXJ6dCBoZW1tdW5nc2xvcy4KCnVuZCBkYXMgb2J3b2hsIGljaCBuaWNoIGluIGRlciBNZW5zYSB3YXIgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFoYSAoTGVpYm5peiwgMjguIEFwciAxOTk5LCAyMDo0OTozMyk6ClppbGx1cyBzYWd0OiBobW0gbXVzcyBtYWwgdWViZXJsZWdlbiB3YXMgaWNoIHJsIGJpbiA6KQpEdSBzYWdzdDogamEgd2FzIGJpc3RlIGR1IHJsPwpaaWxsdXMgc2FndDogbmUgZnJhdSB1bmQgbGVzYmlzY2ggOykgPwoKYWhoaGphYWFhCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhaGEgKFppbGx1cywgMjguIEFwciAxOTk5LCAyMDo1NTo1Nik6Cn4jISBybj1MZWlibml6IHJ0PTkyNTMyNTM3MyByZz1zY2htYXJybgp+IyEgdGlkPTkyNTMyNTM3MwpPaCBNaXN0LiBMZWliaSBEdSBzb2xsdGVzdCBuaWNodCBzb2xjaGUgaW50aW1lbiBHZXNwcmFlY2hlIHZlcm9lZmZlbnRsaWNoZW4sCmthbm4gaWNoIGRlbiBBcnRpa2VsIG5pY2h0IGxvZXNjaGVuICpncnVlYmVsKgpOYWphLCBhbHNvIE1hZW5uZXIgbXVlc3NlbiBtaWNoIGplZGVuZmFsbHMgbmljaHQgYW5tYWNoZW4gamV0enQgd2lzc3QgaWhycyA6LSkKClouCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMga29tbXQgdm9uIHp1dmllbCBGcmF1Li4uIChNb3Jnb3RoLCAyOC4gQXByIDE5OTksIDIyOjA0OjUyKToKRHUgc2NoYXVzdCBkZXplbnQgd2VnLCBhbHMgc2ljaCBMZWlibml6IHVuZCBCcmFuZGlyIHZlcmxpZWJ0IGluIGRpZSBBcm1lCnNpbmtlbi4KQnJhbmRpciBsYWVjaGVsdC4KQnJhbmRpciBzY2hlaW50IHp1IHNjaHdlYmVuLgpCcmFuZGlyIHN0b2Vzc3QgYW4gZGllIERlY2tlLgpCcmFuZGlyIGZhZWxsdCBydW50ZXIuClBMQVRTQ0ggISEhCkJyYW5kaXIgc3RlaHQgYXVmLgpCcmFuZGlyIHJlaWJ0IHNpY2ggS29wZiB1bmQgSGludGVybi4KQnJhbmRpciBpc3QgbnVyIG5vY2ggTWF0c2NoLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipncmlucyogKFNvcmNlcmVyLCAyOC4gQXByIDE5OTksIDIyOjQ5OjE4KToKW1phdWJlcmVyOlNvcmNlcmVyIGJlaXNzdCB2b3IgVmVyendlaWZsdW5nIGluIHNlaW5lbiBaYXViZXJzdGFiLi4uLiB3byBpc3QgIzQKICAgICAgICAgIGZ1ZXIgQXNhbmllbC4uLiAqdmVyendlaWZlbCpdCkRlaW4gWmF1YmVyc3RhYiB6ZXJzcGxpdHRlcnQgdW5kIHB1bHZlcmlzaWVydCBEaWNoLgoKSGlsZnQgendhciBuaWNodCBiZWkgZGVyIFF1ZXN0LCBhYmVyIHdlbmlnaHN0ZW5zIGVpbmUgUmVha3Rpb24gOikKClNvcmNlcmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGphIDspIChEaXJpb24sIDI5LiBBcHIgMTk5OSwgMTM6Mjc6NDApOgpEdSBiaXN0IGFtIFN0YWR0dG9yIHZvbiBQb3J0IFZhaW4gYW5nZWtvbW1lbiwgZGFzIHVubWl0dGVsYmFyIHZvciBEaXIgbGllZ3QuCkluCndlc3RsaWNoZXIgUmljaHR1bmcgZnVlaHJ0IGRpZSBQb3J0IFZhaW5lciBMYW5kc3RyYXNzZSBpbiBkaWUgZ3Jvc3NlLCB3ZWl0ZQpXZWx0IGhpbmF1cyB1bmQgaW4gb2VzdGxpY2hlciBSaWNodHVuZyB6dW0gZ3Jvc3NlbiBTdGFkdHplbnRydW0gZGVyCkhhZmVuc3RhZHQuClVubWl0dGVsYmFyIHN1ZWRsaWNoIHZvbiBEaXIsIGRpcmVrdCBuZWJlbiBkZW0gU3RhZHR0b3Igc2llaHN0IER1IGRpZSByaWVzaWdlClBmb3J0ZSBlaW5lcyBub2NoIHJpZXNpZ2VyZW4gV2V0dHBhbGFzdGVzIHZvciBEaXIgYXVmcmFnZW4uIER1IGxlZ3N0IERlaW5lbgpLb3BmIGluIGRlbiBOYWNrZW4sIHVtIGlobiBnYW56IGJldHJhY2h0ZW4genUga29lbm5lbi4gRWluIGdyb3NzZXMgU2NoaWxkCmhhZW5ndCB1ZWJlciBkZXIgRWluZ2FuZ3NwZm9ydGUuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuIHVuZCB3ZXN0ZW4uIApbVGVhbTpGZXVlcnp3ZXJnXSBLYXJpYyBzaW5ndDogc2V0IG1lIGFmbGFtZSBhbmQgY2FzdCBtZSBmcmVlLi4uCkVpbiBmZXR0ZXIgRGFlbW9uIG5hbWVucyBPbWJhdGlzLgpFaW4gR3VlcnRlbC4KRWluIFN0cnVtcGZiYW5kLgpSZXR0dW5nc3NjaHdpbW1lciBpbiBCYWRlaG9zZS4KTWFlZGNoZW4gaW0gQmlraW5pLgpUdXRzenQgZGVyIEJsdXRkYWVtb24uClppbGx1cyBpc3Qgd2llZGVyIGxlZGlnLgpEYXMgUGFydHltb25zdGVyLgpNZXJsaW4sIGRlciBVcnZhdGVyIGFsbGVyIE1hZ2llci4KWmF1YmVyc29ja2UgU3Ryb2hhbG0gcGZsdWVja3QgR2FlbnNlYmx1ZW1jaGVuLgpFaW4gU2FuZHRpZ2VyLgpFaW4gbWFnaXNjaGVzIFBvcnRhbC4KU3Ryb2hhbG0gc2FndDogcGFydHltb29uc3RlciBob2xlIHN0cmlwcGVyClRydWcgc2NobGVpY2h0IGhlcmVpbi4KQ29ubmVyIGZsaWVndCBoZXJlaW4uCgpEaXJpb24gZGVua3QgbGFjaGVuZCAuIG8gMCAocmVpc3N0IGV1Y2ggZHJ1bSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBnZWh0J3Mgbm9jaCBzY2hsZWNodGVyPyA6KSAoR3JpbW1ib3JuLCAzMC4gQXByIDE5OTksIDA5OjQ1OjEwKToKfiMhIG9uPUJhbWJ1bGtvIG90PTkyNTIyNzgzMiBvZz13aXR6ZQp+IyEgcm49U3RvZXJ0aSBydD05MjUxNjM5OTIgcmc9d2l0emUKfiMhIHRpZD05MjUxNjMwMTcKTmFqYSwgbmUgUG9pbnRlIHNvbGx0ZW4gZGllIFdpdHplIHNjaG9uLCBoYWJlbiwgc29uc3Qgc2luZCBzaWUgamEga2VpbmUKc2NobGVjaHRlbiBXaXR6ZSBtZWhyIHNvbmRlcm4gbnVyIHNjaGxlY2h0Li4uCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VtaW5hcmUgaW4gRG9ydG11bmQuLi4gKEFuYXRvbCwgMzAuIEFwciAxOTk5LCAwOTo1MjoxNCk6ClRpYW1hayBpc3QgYW53ZXNlbmQsClBhc3NpdiBzZWl0OiAxNjoxODoxMQp6LlouIGFid2VzZW5kLCBHcnVuZCAgOiBTZW1pbmFyIC4uLiA6LS8KCgpCaW4gaWNoIGZyb2gsIGRhc3MgaWNoIERBIG5pY2h0IHN0dWRpZXJlLi4uIDpvKQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBnZWh0J3Mgbm9jaCBzY2hsZWNodGVyPyA6KSAoU3RvZXJ0aSwgMzAuIEFwciAxOTk5LCAxNzoxMToyMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTI1NDU4MzEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI1MTYzMDE3Ck5hamEsIHdlbm4gRHUgZGVuIG5pY2h0IHZlcnN0YW5kZW4gaGFzdCwgdHV0cyBtaXIgYXVmcmljaHRpZyBsZWlkLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmljaHQgbnVyIGRlciAuLi4gKEFzbW9kaXMsICAxLiBNYWkgMTk5OSwgMDQ6NTg6NDQpOgpEZWluIEZyZXVuZCBTbHlmb3ggdGVpbHQgRGlyIG1pdDogaWNoIGdlaCBtYWwgZG9jaCBiZXNzZXIgd2llZGVyLCBiaW4gemllbWxpY2gKRGVpbiBGcmV1bmQgU2x5Zm94IHRlaWx0IERpciBtaXQ6IG11ZWRlClplcmJlcnVzIGxlZ3Qgc2ljaCBhdWYgZGVuIEJvZGVuIHVuZCBzY2hsaWVzc3QgZGllIEF1Z2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2VodCBkYXMgbmljaHQgc2NobmVsbGVyPyAoV2ltLCAgMS4gTWFpIDE5OTksIDA0OjU5OjE0KToKPm5uCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBBc21vZGlzIGluIFJ1YnJpayAic2NobWFycm4iLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGdlaHQgZGFzIG5pY2h0IHNjaG5lbGxlcj8gKEFzbW9kaXMsICAxLiBNYWkgMTk5OSwgMDU6MDA6MDYpOgp+IyEgcm49V2ltIHJ0PTkyNTUyNzU1NCByZz1zY2htYXJybgp+IyEgdGlkPTkyNTUyNzU1NApQZmZ0LCBzY2hyZWliIGRvY2ggc2VsYnN0IGFydGlrZWwgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmbHcgKFppbGx1cywgIDEuIE1haSAxOTk5LCAxNzowOTowNyk6CltBYmVudGV1ZXI6QWxkdXJdIEhJTEZFISBXaWUga29tbWUgaWNoIGF1cyBkZW0gV2Fzc2VyLiBCaW4gYXVmIGRlbQpbQWJlbnRldWVyOkFsZHVyXSB6dWdlZnJvcmVuZW4gU2VlIGVpbmdlYnJvY2hlbiEKW0FiZW50ZXVlcjpMZWlibml6XSBlbmRlIDopCltBYmVudGV1ZXI6WmlsbHVzXSBlbmRlCltBYmVudGV1ZXI6Q2hyaXN0b3BoZXJdIFRPRApbQWJlbnRldWVyOkNocmlzdG9waGVyXSBlbmRlCltUb2Q6TGFyc10gRWluIHp1Z2Vmcm9yZW5lciBXZWloZXIgaGF0IGdlcmFkZSBBbGR1ciB1bWdlYnJhY2h0LgpbVG9kOkVpbiB6dWdlZnJvcmVuZXIgV2VpaGVyXSBIZXksIGRhcyBFaXMgaXN0IHNjaHVsZCEgRXMgd2FyIHdvaGwgZWluZmFjaApbVG9kOkVpbiB6dWdlZnJvcmVuZXIgV2VpaGVyXSBuaWNodCBzdGFiaWwgZ2VudWcuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uQWZmZW4hIChRaXRlc3MsICAxLiBNYWkgMTk5OSwgMTc6NDA6NTApOgpEaWUgUmhlaW50b2VjaHRlciBydWZlbiA6ICdBY2hyYWNrIGhhdCBOaWJlbGhlaW0gdm9uIEFsYmVyaWNoIGJlZnJlaXQgIScKSGVucnltYXNrZSB0cm9tbWVsdCBzaWNoIGF1ZiBkaWUgQnJ1c3QgdW5kIGtyZWlzY2h0IGhlcnVtLgoKLSBnZWZpZWwgaWhtIHdvaGwgbmljaHQuCgpRSSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNY0RvbmFsZHMgZ2VnZW4gTVVEISAoQW5hdG9sLCAgMi4gTWFpIDE5OTksIDA1OjE0OjM3KToKCk1jTW9ybmluZwpGcnVlaHN0dWVjayBiZWkgTWNEb25hbGQncwoKVHVuIFNpZSB3YXMgZ2VnZW4gSWhyIHBlcnNvZW5saWNoZXMgTW9yZ2VuZ3JhdWVuIQouLi4KCk9IIE5FSU4gOm8pCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhZW1vbmVuIChIaWJiZWxpZywgIDIuIE1haSAxOTk5LCAwNjozNTo1OCk6CkR1IHNjaGxpZXNzdCBkaWUgQXVnZW4sIHNjaG1pZWdzdCBEaWNoIGVuZyBhbiBPbWJhdGlzIHVuZCBnaWJzdAppaG0gZWluZW4gemFlcnRsaWNoZW4gdW5kIGxlaWRlbnNjaGFmdGxpY2hlbiBLdXNzLgpVbSBEaWNoIGhlcnVtIHZlcnNpbmt0IGRpZSBXZWx0IHVuZCBEdSBnbGF1YnN0LCBhdWYgV29sa2VuIHp1IHNjaHdlYmVuLgpPbWJhdGlzIHNhZ3QgbWl0IHdlaW5lcmxpY2hlciBTdGltbWU6IERhcyBpc3QgZ2VnZW4gZGllIEdlbmZlciBLb252ZW50aW9uZW4uCk9tYmF0aXMgc2FndCBtaXQgd2VpbmVybGljaGVyIFN0aW1tZTogS2VpbmVyIHNvbGx0ZSBlaW5lbiBhcm1lbiBrbGVpbmVuCk9tYmF0aXMgc2FndCBtaXQgd2VpbmVybGljaGVyIFN0aW1tZTogTmVydmRhZW1vbiBzbyBxdWFlbGVuIGR1ZXJmZW4hCgpIaWJiZWxpZyBsYWNodCBudXIgbm9jaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhZW1vbmVuIChHcmltbWJvcm4sICAyLiBNYWkgMTk5OSwgMjE6MjM6MTYpOgp+IyEgcm49SGliYmVsaWcgcnQ9OTI1NjE5NzU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI1NjE5NzU4ClVuZ2ViaWxkZXRlcyBQYWNrLiBTZWl0IHdhbm4gZ2lidHMgZGllIEdlbmZlciBLb252ZW50aW9uIGltIFBsdXJhbD8KRGFlbW9uZW4gc3RyYWZhYndlcnRlbiEKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHp3ZWkga3VlaGUgKHZvcnNpY2h0IGVuZ2xpc2NoIDotKSkgKEdyaW1tYm9ybiwgIDIuIE1haSAxOTk5LCAyMzozNzoyNSk6Cn4jISBvbj1HcmltbWFuIG90PTkyNTY3ODgzNiBvZz13aXR6ZQp+IyEgcm49RGllZGVyIHJ0PTkyNTUwMzQ5NiByZz13aXR6ZQp+IyEgdGlkPTkyNTUwMzQ5NgpIbW1tbSxEaWVkZXIsaXN0IGRpciBldHdhcyBsYW5nd2VpbGlnPyAKCkdyaW1NYW4sc2ljaCB3dW5kZXJuZCB3b2Z1ZXIgbWFuY2hlIExldXRlIHNvIFplaXQgaGFiZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBkZW5uLHNvIHNjaGxpbW0/IChHcmltbWFuLCAgMy4gTWFpIDE5OTksIDAwOjAzOjQ5KToKPkdyaW1tYW4gaHVlcGZ0IHJ1bSB1bmQgcnVtIHVuZCBydW0gdW5kIHNvIHdlaXRlciB1bmQgbmVydnQgYWxsZSB1bmQgd2lsbApTcGFzcyB1bmQgZXMgaXN0IGRvY2ggc28gbGFuZ3dlaWxpZyAuLi4uICAgICAgICAgICBEaWVkZXIgaGF0IGdlcmFkZSBkaWUKVmVyYmluZHVuZyB6dSBNb3JnZW5HcmF1ZW4gZ2VrYXBwdC4KCkdyaW1NYW4gICwgZ3J1ZWJlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBIVE1MLUFuZmFlbmdlciAoR3JpbW1ib3JuLCAgMy4gTWFpIDE5OTksIDAwOjA0OjQ0KToKfiMhIHJuPVRhcmFnb24gcnQ9OTI1NjgyNTg1IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTI1NjgxNDIwCldlbm4gRHUgZGVua3N0IGRhc3MgZGVyIGVtYWNzIG1pdCA4TUIgYXVza29tbXQgc29sbHRlc3QgRHUgc2NobGV1bmlnc3QgbWl0IGRlcgpSZWFsaXRhZXQgcmVzeW5jZW4uIEJsb3NzIHNvIGFscyBUaXAuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEhUTUwtQW5mYWVuZ2VyIChUYXJhZ29uLCAgMy4gTWFpIDE5OTksIDAwOjA2OjEwKToKfiMhIHJuPUdyaW1tYm9ybiBydD05MjU2ODI2ODQgcmc9c2NobWFycm4KfiMhIHRpZD05MjU2ODE0MjAKSmEsIGljaCB3ZWlzcyBkYXNzIGRlciBlbWFjcyBzY2hvbiA4IE1CIFJBTSBzY2hsdWNrdCB3ZW5uIG1hbiBpaG4gbnVyIHNjaGllZgphbmd1Y2t0IDotKSkKd2VpdGVyZSAzNSBNQiB3ZW5uIG1hbiBzbyB2ZXJydWVja3QgaXN0IHVuZCBpaG4gYXVzIHNlaW5lbSBLYWVmaWcgbGFlc3N0IDotMAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogSFRNTC1BbmZhZW5nZXIgKEdyaW1tYm9ybiwgIDMuIE1haSAxOTk5LCAwMDoxMDo0MSk6Cn4jISBybj1UYXJhZ29uIHJ0PTkyNTY4Mjc3MCByZz1zY2htYXJybgp+IyEgdGlkPTkyNTY4MTQyMApOYWphLCBkYWZ1ZXIgaXN0IHNlaW5lIExlaXN0dW5nL1NwZWljaGVydmVyYnJhdWNoIGF1Y2ggemllbWxpY2ggZ3V0LgpEaWUgRnJhZ2UgaXN0IG5hdHVlcmxpY2ggYSkgb2IgbWFuIGRhcyBicmF1Y2h0IHVuZCBiKSBvYiBlaW5lbiBkZXIgU3BlaWNoZXIKbmljaHQgaW50ZXJlc3NpZXJ0IHVuZCBtYW4gaWhuIHRyb3R6ZGVtIG5pbW10LCB3ZWlsIG1hbnMgZWggaGF0IHVuZCBlciBlaW5mYWNoCmJlaSBkZXIgQXJiZWl0IGxvY2tlciBpbiBkZXIgSGFuZCBsaWVndC4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdC4gTGllYmVyIGZ2d20yIHVuZCBlbWFjcyBhbHMga2RlIHVuZCB2aS4gQmVpIGdsZWljaGVtClNwZWljaGVydmVyYnJhdWNoLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBIVE1MLUFuZmFlbmdlciAoU3RvZXJ0aSwgIDMuIE1haSAxOTk5LCAwMDoxMzozNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTI1NjgzMDQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI1NjgxNDIwCm5hamEsIGxpZWJlciBmdndtMiB1bmQgdmkgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogSFRNTC1BbmZhZW5nZXIgKEdyaW1tYm9ybiwgIDMuIE1haSAxOTk5LCAwMDoxNjoyNik6Cn4jISBybj1TdG9lcnRpIHJ0PTkyNTY4MzIxNSByZz1zY2htYXJybgp+IyEgdGlkPTkyNTY4MTQyMApJY2ggd2Vpc3MgbmljaHQuIExpZWJlciBjdHJsLXhjIGFscyAhOnEgKG9kZXIsIHdpZSBpY2ggZXMgaW0gTm90ZmFsbCB2b3J6aWVoZToKa2lsbCAtOSBQSUQgaW4gZWluZXIgYW5kZXJlbiBzaGVsbCkuIFVuZCBkaWVzZSBLb250ZXh0d2VjaHNlbCB6d2lzY2hlbgpCZWZlaGxzLSB1bmQgRWRpdGllcm1vZHVzIGdlaGVuIG1pciBhdWNoIGF1ZiBkZW4gU2Vua2VsLgpSaWNodGlnIFNwYXNzIGdpYnRzIGFsbGVyZGluZ3MgbWl0IHBpY28sIGRlciBhdXRvbWF0aXNjaCBqZWRlIFplaWxlIHVtYnJpY2h0CmRpZSBlciBmaW5kZW4ga2Fubi4gTHVzdGlnZSBFZmZla3RlLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogSFRNTC1BbmZhZW5nZXIgKEFuYXRvbCwgIDMuIE1haSAxOTk5LCAwMDoxODoxNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTI1NjgzMzg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI1NjgxNDIwCkdyaW1taSwgRHUgYmlzdCBlaW5mYWNoIHp1IGRvb2YgbWl0IGRlbSB2aSB1bXp1Z2VoZW4sIGdpYiBlcyBkb2NoCmVpbmZhY2ggbWFsIHp1ciBBYndlY2hzbHVuZyB6dS4gOikKCkFuYXRvbCAtIHZpIGlzdCBkYXMgRXNwZXJhbnRvIGRlciBFZGl0b3Jlbi4gTWFuIG11c3MgZXMgbnVyIGtvZW5uZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEhUTUwtQW5mYWVuZ2VyIChTdG9lcnRpLCAgMy4gTWFpIDE5OTksIDAwOjE5OjM3KToKfiMhIHJuPUFuYXRvbCBydD05MjU2ODM0OTcgcmc9c2NobWFycm4KfiMhIHRpZD05MjU2ODE0MjAKbWlzdCwgbXVzcyBpY2ggZG9jaCBhbmF0b2wgc2Nob24gd2llZGVyIHp1c3RpbW1lbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBIVE1MLUFuZmFlbmdlciAoR3JpbW1ib3JuLCAgMy4gTWFpIDE5OTksIDAwOjE5OjQ2KToKfiMhIHJuPUFuYXRvbCBydD05MjU2ODM0OTcgcmc9c2NobWFycm4KfiMhIHRpZD05MjU2ODE0MjAKcy96dSBkb29mL25pY2h0IGRvb2YgZ2VudWcvZwoKR3JpbSJzZWQgcnVsZXMhIm1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERpZWRlciwgIDMuIE1haSAxOTk5LCAwMDozNjowNCk6CkR1IHNhZ3N0OiBncmltbWFuIG5lcnYgbmVkLi4uIGljaCB3YXIgdm9yaGVyIGF1Y2ggc2Nob24ga3VyeiBkYXZvciwgZ2V6YXBwdCB6dQpEdSBzYWdzdDogd2VyZGVuIDopCkdyaW1tYW4gc2FndDogdm9sbCBkYW5lYmVuCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCltUb2Q6TGFyc10gQ3lNb25rcyBDaGFvc2FtdWxldHQgaGF0IGdlcmFkZSBHcmltbWFuIHVtZ2VicmFjaHQuCgoKRGllZGVyLCBraWNoZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGhoamV0enRqYSAoVGlhbWFrLCAgMy4gTWFpIDE5OTksIDEzOjE3OjQzKToKWzxNYXN0ZVI+OkhhdGVdIERhcyBsYWcgYmluIGljaCA6LSkKClRpYW1hayBoYXRzIHNjaG9uIGltbWVyIGdld3Vzc3QuCgpQLlM6IGljaCBsaWViZSBhdXMnbSBadXNhbW1lbmhhbmcgZ2VyaXNzZW5lIFppdGF0ZSA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgQWNoIHNvLi4uIChGb29iYXIsICAzLiBNYWkgMTk5OSwgMTY6Mzk6MTEpOgpmcmFnZSBrbG9pcmVuIG5hY2ggYXVzYmlsZGVyCgpLbG9pcmVuIEVpc2VuaGVsbSBzYWd0OgonRnVlciBEaWNoIGthZW1lbiBmb2xnZW5kZW4gVHJ2ZXMgYWxzIEF1c2JpbGRlciBpbiBGcmFnZTogWGVuYWRhLCBBbmFraW4sCkFjcmltb24sIE1hZ2ljb2xsaSwgU2Nob2tvLCBUYXJpbmEsIEhpYmJlbGlnLCBFaW4gRHVua2VsZWxmLCBHb29meSwgR3JlaWZheAp1bmQgS2FyaWMuJwoKRm9vYmFyLCBoYXQga2VpbmUgTHVzdCwgdm9uIER1bmtlbGVsZmVuIGF1c2dlYmlsZGV0IHp1IHdlcmRlbi4uLgoqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hIGRhcyBpc3QgbWFsIGVpbmUgSm9iYW56ZWlnZSA6KSAoSmFtZXNvbiwgIDMuIE1haSAxOTk5LCAxOToyNToyNik6Cmh0dHA6Ly9qb2JzLndlYi5kZS9qb2JzL2h0bWwvZC9qb2JzL2FkbWluX2d1cnUuaHRtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpZZWFoLCBCQUJZWVkhIChGZXVlcndlaHIsICAzLiBNYWkgMTk5OSwgMjE6MjM6MzEpOgpDSEFPU01BU1RFUjogU2Nob2tvIGhhdCBEaWNoIGdlZmluZ2VydCEKQ0hBT1NNQVNURVI6IERpYW5hIGhhdCBEaWNoIGdlZmluZ2VydCEKQ0hBT1NNQVNURVI6IE11cGZlbCBoYXQgRGljaCBnZWZpbmdlcnQhCkNIQU9TTUFTVEVSOiBDYWxpbWVyYSBoYXQgRGljaCBnZWZpbmdlcnQhCkNIQU9TTUFTVEVSOiBTdG9lcnRpIGhhdCBEaWNoIGdlZmluZ2VydCEKQ0hBT1NNQVNURVI6IEphc29ucmlnaWQgaGF0IERpY2ggZ2VmaW5nZXJ0IQpDSEFPU01BU1RFUjogVG9yd2FsbCBoYXQgRGljaCBnZWZpbmdlcnQhCkNIQU9TTUFTVEVSOiBHaXppIGhhdCBEaWNoIGdlZmluZ2VydCEKQ0hBT1NNQVNURVI6IFZhbXBpcmUgaGF0IERpY2ggZ2VmaW5nZXJ0IQpDSEFPU01BU1RFUjogU3RvZXJ0aSBoYXQgRGljaCBnZWZpbmdlcnQhCkNIQU9TTUFTVEVSOiBGcmVpdGFnIGhhdCBEaWNoIGdlZmluZ2VydCEKCipzaGl2ZXIqIE9vb29vb29oIHllYWghCgogICAgIEZldWVyd2Voci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFN0YWVkdGVuYW1lbiAoS2VybmJlaXNzZXIsICAzLiBNYWkgMTk5OSwgMjM6NDk6MDIpOgp+IyEgcm49QW5hdG9sIHJ0PTkyNTc2ODAxOCByZz1zY2htYXJybgp+IyEgdGlkPTkyNTc1NzUyNApPaCwgZGFzIGlzdCBhYmVyIHNjaG9uIGV0bGljaGUgSmFlaHJjaGVuIGhlciA6LSkgKERhcyBtaXQgZGVyIE1lbnNhKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VsYnN0emVyc3R1ZW1tZWx1bmc/IChXaW0sICA0LiBNYWkgMTk5OSwgMDE6MDM6MjIpOgpEcm9sbGkgYmVpc3N0IERyb2xsaS4KRHJvbGxpIGJsdXRldCBudW4gYXVzIGFsbGVuIExvZWNoZXJuIHVuZCBzY2hyZWl0IHZvciBTY2htZXJ6ZW4uCkRyb2xsaSBzYWd0OiBpaWgKRHJvbGxpIHNjaGxhZWd0IERyb2xsaS4KRHJvbGxpIHdhZWx6dCBzaWNoIHZvciBEaXIgaW0gU3RhdWIgdW5kIHNjaHJlaXQgdm9yIFNjaG1lcnplbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJldHJpZWJzc3lzdGVtIChaaWxsdXMsICA0LiBNYWkgMTk5OSwgMDc6NDA6NTUpOgpXZXIgaW1tZXIgc2Nob24gaW0gWndlaWZlbCB3YXIsIHdlbGNoZXMgZGFzIGJlc3RlIEJldHJpZWJzc3lzdGVtIGlzdCwgc29sbApzaWNoIGRvY2ggbWFsIGRpZXNlIFNlaXRlIGFuc2NoYXVlbjoKCmh0dHA6Ly93d3cueWFyb21hdC5jb20vbWFjb3M4L2luZGV4Lmh0bQoKOi0pCgpaLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogSFRNTC1BbmZhZW5nZXIgKEJvaW5nLCAgNC4gTWFpIDE5OTksIDExOjQ1OjE3KToKfiMhIHJuPVRhcmFnb24gcnQ9OTI1NjgyNzcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI1NjgxNDIwCk1hY2ggaGFsdCAnZWlnaHR5JyBkcmF1cy4KQWxsZXJkaW5ncyBoYWx0ZSBpY2ggZGVuIGVtYWNzIHRyb3R6ZGVtIGZ1ZXIgZGVuIGJlc3RlbiBlZGl0b3IsIGhhYiBpaG4Kc29nYXIgdW50ZXIgV2luTlQgaW5zdGFsbGllcnQuIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBiZXRyaWVic3N5c3RlbSAoTm9ubmUsICA0LiBNYWkgMTk5OSwgMTM6Mjk6MjEpOgp+IyEgcm49WmlsbHVzIHJ0PTkyNTc5NjQ1NSByZz1zY2htYXJybgp+IyEgdGlkPTkyNTc5NjQ1NQpXZW5uIG5lIFVSTCBzY2hvbiBtaXQgLmh0bSBhdWZob2VydCBzdGF0dCBtaXQgLmh0bWwgc2NoYXUgaWNoIHNpZSBtaXIgZ2FybmljaHQKZXJzdCBhbiA7LSkKTm9ubmUsIHN1cGVydG9sZXJhbnQgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGJldHJpZWJzc3lzdGVtIChaaWxsdXMsICA0LiBNYWkgMTk5OSwgMTM6MzE6MTcpOgp+IyEgcm49Tm9ubmUgcnQ9OTI1ODE3MzYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI1Nzk2NDU1Cm5hamEgZHUga2FubnN0IGF1Y2ggCmh0dHA6Ly93d3cueWFyb21hdC5jb20vbWFjb3M4LyBhbnNjaGF1ZW4uIERhcyBoYXQgZ2FyIGtlaW5lIEVuZHVuZyA7KQoKWi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGJldHJpZWJzc3lzdGVtIChUYXJhZ29uLCAgNC4gTWFpIDE5OTksIDE0OjQwOjEyKToKfiMhIHJuPVppbGx1cyBydD05MjU4MTc0Nzcgcmc9c2NobWFycm4KfiMhIHRpZD05MjU3OTY0NTUKU28gZWluIGthZXNlLCBkYXMgaGF0IGphIG5lIEVuZHVuZyEKCiRdIHdnZXQgaHR0cDovL3d3dy55YXJvbWF0LmNvbS9tYWNvczgvCi0tMTQ6Mzk6NDUtLSAgaHR0cDovL3d3dy55YXJvbWF0LmNvbTo4MC9tYWNvczgvCiAgICAgICAgICAgPT4gYGluZGV4Lmh0bWwnCgpCYWVoIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzIGhpZXIgbmljaHQgYWxsZXMgR08gc3BpZWx0Li4uIChUdW5peGd1dCwgIDQuIE1haSAxOTk5LCAxNToxMjoyNSk6CkR1IHNpZWhzdCBlaW4ga2xlaW5lcyBHby1CcmV0dCBhdXMgZWRsZW0gS2lyc2NoaG9sei4gQXVmIGRlciBPYmVyc2VpdGUKYmlsZGVuIDkgaG9yaXpvbnRhbGUgdW5kIDkgdmVydGlrYWxlIExpbmllbiBlaW4gR2l0dGVyLiBOZWJlbiBkZW0gQnJldHQKYmVmaW5kZW4gc2ljaCB6d2VpIFNjaGFlbGNoZW4sIGluIGRlbmVuIGpld2VpbHMgcnVuZCA1MCB3ZWlzc2UsIGJ6dy4Kc2Nod2FyemUgU3RlaW5jaGVuIGxpZWdlbi4gV2FzIGthbm4gbWFuIGRhbWl0IGJsb3NzIGFuZmFuZ2VuPyBFaW5lIFN0aW1tZQpzYWd0IERpcjogJ2dvIGhpbGZlJyB3aXJkIERlaW5lIE5ldWdpZXIgc3RpbGxlbiEKQW0gQnJldHQgc2l0enQgZWluIFBha2V0LiAKCkljaCBob2ZmZSwgZGFzIFBha2V0IGdld2lubnQuIDtvKQoKJ3MgS2FyYXRlLVp3ZXJjaGxlLi4uCmkuIEEuIFp3ZWl0aWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbnN0ZWlnZXIgZ2VzdWNodCEgKERpcmlvbiwgIDQuIE1haSAxOTk5LCAxNToxNjoxNCk6CkR1IHNpZWhzdCBlaW4ga2xlaW5lcyBHby1CcmV0dCBhdXMgZWRsZW0gS2lyc2NoaG9sei4gQXVmIGRlciBPYmVyc2VpdGUKYmlsZGVuIDkgaG9yaXpvbnRhbGUgdW5kIDkgdmVydGlrYWxlIExpbmllbiBlaW4gR2l0dGVyLiBOZWJlbiBkZW0gQnJldHQKYmVmaW5kZW4gc2ljaCB6d2VpIFNjaGFlbGNoZW4sIGluIGRlbmVuIGpld2VpbHMgcnVuZCA1MCB3ZWlzc2UsIGJ6dy4Kc2Nod2FyemUgU3RlaW5jaGVuIGxpZWdlbi4gV2FzIGthbm4gbWFuIGRhbWl0IGJsb3NzIGFuZmFuZ2VuPyBFaW5lIFN0aW1tZQpzYWd0IERpcjogJ2dvIGhpbGZlJyB3aXJkIERlaW5lIE5ldWdpZXIgc3RpbGxlbiEKQW0gQnJldHQgc2l0enQgZWluIFBha2V0LiAKCkVyZm9sZ3NlcmxlYm5pc3NlIGZvZXJkZXJuIGRhcyBJbnRlcmVzc2UuLi4KRGlyaW9uLCBncmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRVUlRMRUJBTEwgISEhIChOYWlyb2xmLCAgNC4gTWFpIDE5OTksIDE3OjUwOjIyKToKW0FsbGdlbWVpbjpOYWlyb2xmIG5pbW10IGFubGF1ZiB1bmQga2lja3QgZGVuIFNjaGlsZGtyb2V0ZW5wYW56ZXIgcnVlYmVyIHp1CiAgICAgICAgICAgUm9jaHVzXQpbQWxsZ2VtZWluOkFsYm9pbl0gbmFpcm9sZiBnaWIgc2llIG1pciBtYWwsIGljaCBicmF1Y2hlIGdyYWQgZWluZW4KW0FsbGdlbWVpbjpBbGJvaW5dIGJyaWVmYmVzY2h3ZXJlciA7LSkKW0FsbGdlbWVpbjpOYWlyb2xmXSBzb3JyeSBtdWVzc3RlIGdsZWljaCBiZWkgUm9jaHVzIGFua29tbWVuIDopCltBbGxnZW1laW46UGFkcmVpY10gaG1tLi4uIGRhYmVpIG1laW50ZSBtZWluZSBNdXR0ZXIgZnJ1ZWhlciBpbW1lciBtYW4gc29sbGUKW0FsbGdlbWVpbjpQYWRyZWljXSBuaWNodCBtaXQgbGViZW5zbWl0dGVsbmVzc2VuIHNwaWVsZW4uLi4KCnVuZCBudWtvbW10cyAuLjoKWmlzY2NoLi4uLiBFaW4gU2NoaWxka3JvZXRlbnBhbnplciBmbGllZ3QgYW4gRGlyIHZvcmJlaS4KTmVzYWphIHJ1ZnQ6IEFISEhISEhISEhISEhISEhISEhISEhISEhICgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldCBTcGVsbGJvb2sgKFJvY2h1cywgIDQuIE1haSAxOTk5LCAxODozNzo1OSk6CkltIE5ldCBTcGVsbGJvb2sgc2luZCBhdWNoIGVpbmlnZSBuaWNodCBnYW56IGVybnN0IGdlbWVpbnRlIFNwcnVlY2hlCnp1IGZpbmRlbjoKICBodHRwOi8vb255eC5hcnRzLmt1bGV1dmVuLmFjLmJlL35lenJhL2duYmEvc3BlbGxzL2duc2IvaHRtbC9sZXYwLmh0bWwKSWNoIGJpbiBtYWwgZ2VzcGFubnQsIHdpZXZpZWxlIEFuZnJhZ2VuIFBhdHJ5biBiZWtvbW1lbiB3aXJkLApkaWVzZSBpbiBkaWUgWmF1YmVyZXJyZ2lsZGUgZWluenViYXVlbiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXQgU3BlbGxib29rIChUdW5peGd1dCwgIDQuIE1haSAxOTk5LCAxOTowNTozOCk6Cn4jISBybj1Sb2NodXMgcnQ9OTI1ODM1ODc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI1ODM1ODc5CkFsc28gZGFzICJEZWxheSBPcmdhc20iIE1VU1MgaWNoIGhhYmVuIC0gZGFmdWVyIHd1ZXJkZSBpY2ggZ2xhdHQgZGllIEdpbGRlCndlY2hzZWxuISA7bykKCidzIEthcmF0ZS1ad2VyY2hsZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXQgU3BlbGxib29rIChBbHBoYSwgIDQuIE1haSAxOTk5LCAyMDowNzozNSk6Cn4jISBybj1UdW5peGd1dCBydD05MjU4Mzc1Mzggcmc9c2NobWFycm4KfiMhIHRpZD05MjU4MzU4NzkKRHUgQXJtZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmVscyBpbiBkZXIgQnJhbmR1bmcgKFppbGx1cywgIDQuIE1haSAxOTk5LCAyMDo0MTo0NCk6Cn4jISBybj1UcnVnIHJ0PTkyNTg0MzIyNiByZz1zY2htYXJybgp+IyEgdGlkPTkyNTg0MzIyNgp1bmQgd2FzIHNhZ3QgdW5zIGRpZXNlciBBcnRpa2VsICpncnVlYmVsKiA/ClouCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGZWxzIGluIGRlciBCcmFuZHVuZyAoVHJ1ZywgIDQuIE1haSAxOTk5LCAyMDo0MzoyMSk6CltBbGxnZW1laW46V2ltXSBUdSBlcyBQZXRydXMgZXQgc3VwZXIgaGFuYyBwZXRyYW0gYWVkaWZpY2FibyBlY2NsZXNpYW0gbWVhbSBldApbQWxsZ2VtZWluOldpbV0gdGliaSBkYWJvIGNsYXZlcyByZWduaSBjb2Vsb3J1bQpbQWxsZ2VtZWluOkFzbW9kaXNdIGRhbm4gaXNzZXMgZWJlbiBpcmdlbmRlaW4gc2xhbmcgLi4uCj4gW0FsbGdlbWVpbjpaaWxsdXMgZXJuZW5udCBXaW0genVtIFBhcHN0Ll0KPiBbQWxsZ2VtZWluOlpvb2tdIHdhaGhoLi4uCltBbGxnZW1laW46QXNtb2Rpc10gZXQgc3Bpcml0aSBzYW5rdGksIGFtZW4KW0FsbGdlbWVpbjpXaW0gdmVya3VlbmRldCBmcm9oOiBIYWJlbXVzIHBhcGFtXQpbQWxsZ2VtZWluOlppbGx1c10gRHUgYmlzdCBXaW0gdW5kIGF1ZiBkaWVzZW4gU3RlaW4gYmF1ZSBpY2ggbWVpbmUgS2lyY2hlCltBbGxnZW1laW46WmlsbHVzXSBkYW1pdCBzaWUgZW5kbGljaCB1bnRlcmdlaHQgb2RlciBzbyBhZWhubGljaCA6LSkKQXVmcyBNb3JnZW5HcmF1ZW4gYmV6b2dlbiwgd3VlcmRlIGljaCAnV2ltJyBtaXQgZWluZW4gYW5kZXJlbiBOYW1lbgphdXN0YXVzY2hlbgoqZ3JpbnMqClRydWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXQgU3BlbGxib29rIChIb29kLCAgNC4gTWFpIDE5OTksIDIxOjM5OjA3KToKfiMhIHJuPVJvY2h1cyBydD05MjU4MzU4Nzkgcmc9c2NobWFycm4KfiMhIHRpZD05MjU4MzU4NzkKbmEgamEsIHdldCBkcmVhbSBzY2hhdXQgZ2FueiBndXQgYXVzLCBhYmVyIGRhbm4gbXVlc3N0ZW4gd2lyIFAxOCBmdWVycyBtdWQKYXVzcnVmZW4gOikKCi0tLS0tLQpwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktlaW5lciBtYWcgaWhuIC4uLiAoQXJrLCAgNC4gTWFpIDE5OTksIDIzOjE5OjE2KToKV2ltIHNhZ3Q6IHNhdWcgbWFsIGRhcyBnZXNhbXRlIE1HIHVuZCBnZWhlIHBybyB0YWcgZGVuIGNvZGUgdm9uIDEwMCBmaWxlcwpXaW0gc2FndDogZHVyY2gKRGVyIEN1IFNpdGggZ2VpZmVydCBla2xpZyBhdWYgZGVuIEJvZGVuLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyBpc3QgZGFyYW4genVtIGZlaWVybj8gKEJhbWJpLCAgNS4gTWFpIDE5OTksIDE0OjI2OjQ4KToKPiBBcm1hZ2VkZG9uIHJ1ZnQ6IEluIDEyIE1pbnV0ZW4gdW5kIDE2IFNla3VuZGVuIHdlcmRlIGljaCBkaWUgV2VsdCB6ZXJzdG9lcmVuCkFybWFnZWRkb24gcnVmdDogdW5kIG5ldSBlcnNjaGFmZmVuIQpEYXMgZmVybmUgUmF1c2NoZW4gZGVyIEJhZWNoZSB1bmQgRmx1ZXNzZSB3aXJkIGxhdXRlci4gRGllIFdhc3Nlcm1hc3NlbgpzY2hlaW5lbiBuaWNodCBtZWhyIGtvbnRyb2xsaWVydCB6dSBmbGllc3NlbiB1bmQgRHUgYmVrb21tc3QgQW5nc3QhCkRhcyBQYXJ0eW1vbnN0ZXIgcnVmdDogTGVpYm5peiBzY2htZWlzc3QgZWluZSBQYXJ0eSEKRGFzIFBhcnR5bW9uc3RlciBydWZ0OiBJbGxtYXRpYyBzY2htZWlzc3QgZWluZSBQYXJ0eSEKRGFzIFBhcnR5bW9uc3RlciBydWZ0OiBMZWlibml6IHNjaG1laXNzdCBlaW5lIFBhcnR5IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXJzdGVyISEhIChUcmFuY2UsICA1LiBNYWkgMTk5OSwgMTU6MTU6NTIpOgogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTWl0LCAgNS4gTWFpIDE5OTksIDE1OjE1OjE4ICg0IFRlaWxuZWhtZXIpCgpMb2dvbi4uLi4uLi4uLi4uLnMgTG9nb24uLi4uLi4uLi4uLi5zIExvZ29uLi4uLi4uLi4uLi4ucyBUcmFuY2UuLi4uLi4uLi4uLnogICAKYWV0c2NoISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVyc3RlciEhISAoVGFyYWdvbiwgIDUuIE1haSAxOTk5LCAxNzoxNToyMCk6Cn4jISBybj1UcmFuY2UgcnQ9OTI1OTEwMTUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI1OTEwMTUyCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNaXQsICA1LiBNYWkgMTk5OSwgMTc6MTU6MDAgKDEgVGVpbG5laG1lcikKClRhcmFnb24uLi4uLi4uLi4uUwoKZWluemlnZXIsIGFldHNjaCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnN0aW1tdCBqYSBnYXIgbmljaCEgKFN0b2VydGksICA1LiBNYWkgMTk5OSwgMTg6NDM6MjApOgphc3Rlcml4OltodGRvY3NdICN0ZWxuZXQgd3d3Lm11ZC5kZSA0NzExClRyeWluZyAxOTQuOTUuMTcwLjQ1Li4uCkNvbm5lY3RlZCB0byB3d3cubXVkLmRlLgpFc2NhcGUgY2hhcmFjdGVyIGlzICdeXScuCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKiBNb3JnZW5HcmF1ZW4gLS0gRXJyZWljaGJhciB1bnRlciBtZy5tdWQuZGUgKgoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0tIFVwIGFuZCBydW5uaW5nIQpDb25uZWN0aW9uIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCmFzdGVyaXg6W2h0ZG9jc10gI3RlbG5ldCBtZy5tdWQuZGUgICAgICAKVHJ5aW5nIDEyOC4xNzYuMTgyLjIzOC4uLgoKYXN0ZXJpeDpbaHRkb2NzXSAjcGluZyBtZy5tdWQuZGUKUElORyBtZy51bmktbXVlbnN0ZXIuZGUgKDEyOC4xNzYuMTgyLjIzOCk6IDU2IGRhdGEgYnl0ZXMKCi0tLSBtZy51bmktbXVlbnN0ZXIuZGUgcGluZyBzdGF0aXN0aWNzIC0tLQoxMyBwYWNrZXRzIHRyYW5zbWl0dGVkLCAwIHBhY2tldHMgcmVjZWl2ZWQsIDEwMCUgcGFja2V0IGxvc3MKCgpUamEsIGFsc28gbWFuIHNvbGx0ZSBzY2hvbiBkaWUgV2FocmhlaXQgc2NocmVpYmVuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmFudT8gKEFwc3UsICA1LiBNYWkgMTk5OSwgMjE6MDQ6MjQpOgo+dW50IGh5ZHJlaXNlIAoKLi4uLgpFaW5lIEh5ZHJlaXNlIGlzdCBldHdhIC00Y20gZ3Jvc3MuCgpncmluc2VuZAoKQXBzdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG9vb3BzPyAoQXBzdSwgIDYuIE1haSAxOTk5LCAwMTo0Mjo1MSk6Cj5sb2dpbgpGZXlubWFuIGhlYnQgZGFzIEJlaW4gLi4uCltNb2VyZGVyOkdlaXN0IGVpbmVzIFdpcnRzXSBQenlub20gaXN0IHN0YWVya2VyIGFscyBpY2ggZGFjaHRlLgpEZXIgU2FuZHRpZ2VyIHNhZ3Q6IEhhbGxvLCBBcHN1IQpFaW4gU2FuZHRpZ2VyIGxvZXN0IHNpY2ggcGxvZXR6bGljaCBhdXMgZGVtIFNjaGF0dGVuIGVpbmVyIEVja2UgdW5kIHNjaGF1dApEaWNoIGZhdWNoZW5kIGF1cyBoZWxsYnJhdW5lbiwgZ2VmYWVocmxpY2hlbiBBdWdlbiBhbi4KClNjaGVpc3MgSGF1c3RpZXJlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUcnZlcyBtaXQgU3BlbGxzPyAoUGFyYWNlbHN1cywgIDYuIE1haSAxOTk5LCAxMzo1Nzo0OSk6CltUb2Q6TGFyc10gU2hhZGUgaGF0IGdlcmFkZSBTaGFkZSB1bWdlYnJhY2h0LgpbVG9kOlNoYWRlXSBJY2ggbWFjaCcgZWluZmFjaCB6dSBoYXJ0ZSBTcGVsbHMgb2Rlcj8KCj4gZmluZ2VyIHNoYWRlCgouLi4KUmFzc2U6IE1lbnNjaCwgIEdpbGRlOiBLYWVtcGZlciwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaAouLi4KCldlciBoYXQgZGVubiBkYSB3aWVkZXIgZGllIEthZW1wZmVyIGF1Zmdld2VydGV0PwoKUGFyYWNlbHN1cy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUcnZlcyBtaXQgU3BlbGxzPyAoTm92YXN0b3JtLCAgNi4gTWFpIDE5OTksIDE0OjQ0OjU4KToKfiMhIHJuPVBhcmFjZWxzdXMgcnQ9OTI1OTkxODY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI1OTkxODY5ClRqYSAuLi4gd2VubiBTaGFkZSBTcGVsbHMgYmVudXR6dCwgaXNzZXIgamEgc2Nob2VuIHNlbGJzdCBzY2h1bGQuCgogICAgTm92YSwgZ3JlaWZ0IGxpZWJlciBhdWYga2FlbXBmZXJ1ZWJsaWNoZXMgSGVydW1nZWhvcHNlIHp1cnVlY2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndvIGtvbW1lIGRpZSBrbGVpbmVuIHdhbmRlcmVyIGhlciA/Pz8gKEphc29ucmlnaWQsICA2LiBNYWkgMTk5OSwgMTY6MTk6MzIpOgoKUm9iaW4gYmVzY2h3b2VydCBlaW5lbiBCbGl0eiB2b20gSGltbWVsLgpFaW4gV2FuZGVyZXIga29tbXQgYW4uCgpKYSwgZGFzIGVya2xhZXJ0IGVpbmlnZXMKCkphc29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmQgc2llIGZ1ZXJjaHRlbiB1bnMgZG9jaCAoR3JpbW1hbiwgIDYuIE1haSAxOTk5LCAyMTozMTozNik6CkRhcmt3aW5nIGFuIGFsbGUgS2FlbXBmZXI6IFNjaGx1c3MgamV0enQsIGRhcyBrb2VubmVuIHdpciB1bnMgZG9jaCBuaWNodApiaWV0ZW4gbGFzc2VuIDopCkR1IHNwdWVyc3Qsd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCkdyaW1NYW4gLCBzY2htdW56ZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVuZCBzaWUgZnVlcmNodGVuIHVucyBkb2NoIChTdGluZywgIDYuIE1haSAxOTk5LCAyMTozMjoyOCk6Cn4jISBybj1HcmltbWFuIHJ0PTkyNjAxOTA5NiByZz1zY2htYXJybgp+IyEgdGlkPTkyNjAxOTA5NgpQZmZ0LCB3YXIgc2ljaGVyIGVpbiBlY2hvYWxsICpsYWNoKiA6KSkKCgpTdGluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE51ciBzby4uLi4gKEdyaW1tYm9ybiwgIDYuIE1haSAxOTk5LCAyMjo0MDo1NCk6Cn4jISBvbj1HcmltbWFuIG90PTkyNTg1ODAwNyBvZz1lbnR3aWNrbHVuZwp+IyEgcm49QWxwaGEgcnQ9OTI1ODI5NDMyIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTI1ODI5NDMyCkF1Y2ggd2VubiBpY2ggbmljaHRzIHp1IHNhZ2VuIGhhYmUgKkdHKixhYmVyIGRpZXNlIElkZWUgZ2VmYWVsbHQgbWlyIC4uLgoKQmllcnRyaW5rZXIgR3JpbU1hbiBlaW56ZWlsaWcgenVzdGltbWVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdlbGNvbWUgdG8gTUcgKEdyaW1tYm9ybiwgIDYuIE1haSAxOTk5LCAyMjo0NzozNCk6Cn4jISBvbj1Sb2NodXMgb3Q9OTI1OTE4MTU1IG9nPXdpdHplCn4jISBybj1QcmEgcnQ9OTI1OTE3ODE1IHJnPXdpdHplCn4jISB0aWQ9OTI1OTE3ODE1ClVuZCBlcyB3aXJkIHdhaHJzY2hlaW5saWNoIG5vY2ggYWIgdW5kIHp1IHp1IFJlYm9vdHMgb2RlciBDcmFzaHMKa29tbWVuIGJpcyB3aXIgYWxsZSBQcm9ibGVtZSBtaXQgZGVtIG5ldWVuIFJlY2huZXIKZ2VmdW5kZW4gdW5kIGJlc2VpdGlndCBoYWJlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB3ZWxjb21lIHRvIE1HIChHcmltbWJvcm4sICA2LiBNYWkgMTk5OSwgMjI6NDc6NDIpOgp+IyEgb249SXNub2dvb2Qgb3Q9OTI1OTE4MTgzIG9nPXdpdHplCn4jISBybj1Sb2NodXMgcnQ9OTI1OTE4MTU1IHJnPXdpdHplCn4jISB0aWQ9OTI1OTE3ODE1ClVuZCB3byBsaWVndCBkYSBkZXIgV2l0eiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogd2VsY29tZSB0byBNRyAoR3JpbW1ib3JuLCAgNi4gTWFpIDE5OTksIDIyOjQ4OjA4KToKfiMhIHJuPUdyaW1tYm9ybiBydD05MjYwMjM2NjIgcmc9c2NobWFycm4KfiMhIHRpZD05MjU5MTc4MTUKR2FyIG5pY2h0LiBEZXN3ZWdlbiBoYXQgZGFzIGF1Y2ggZGllIFJ1YnJpayBnZXdlY2hzZWx0Li4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktvZW5uZW4gd2lyIG1hY2hlbi4uLiAoWm9vaywgIDYuIE1haSAxOTk5LCAyMzowMToxNyk6CgpbPE1hc3RlUj46TWluZGJsYWRlXSBBbHNvIGltIE1vbWVudCBzaW5kIExhZy1BbmZyYWdlbiB6aWVtbGljaApbPE1hc3RlUj46TWluZGJsYWRlXSB1ZWJlcmZsdWVzc2lnITopKSBEYXMgZGFyZiBnZXJuZSBzbyBibGVpYmVuITopKQpEaWUgV2VsdCBiZWdpbm50IHp1IGZsYWNrZXJuLiBFcyBzY2hlaW50IDIzIFVociB6dSBzZWluLgpbPE1hc3RlUj46UmluZ29yXSBkYXMgc2luZCB6dXNhbW1lbiBqYSBrZWluZSAyMCBMZXV0ZS4gRGFubiBsaWViZXIgbWFnaWVyIDotKQpbPE1hc3RlUj46R2FuZHVyXSBsCls8TWFzdGVSPjo8TWFzdGVSPl0gMTMuMzkgY21kcy9zLCAxODcuNzggY29tcCBsaW5lcy9zCls8TWFzdGVSPjo8TWFzdGVSPl0gTGFnOiAwLjclLzYwLCAyLjQlLzE1LCAyMy4xJS8xCls8TWFzdGVSPjpBbmF0b2xdIExhYWFhYWFhYWFhYWFhYWFhYWFhZyAhIEphYWFhYWFhYWFhISA6KQpbPE1hc3RlUj46Wm9va10gam9vLi4uIDIzJQpbPE1hc3RlUj46UmluZ29yXSBXT1chCls8TWFzdGVSPjpBbmF0b2wganViZWx0Ll0KWzxNYXN0ZVI+Olpvb2sgZ3JhdHVsaWVydCBTbHlmb3guXQpbPE1hc3RlUj46VGFyYWdvbl0gV0FBQUFBQUFBQUFBSEhISEhISEhISEggOi0pCls8TWFzdGVSPjpTbHlmb3hdIGNhLiAyMCBTZXVrdW5kZW4KClpvb2sgZ3JpbnN0IE1pbmRibGFkZSBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLb2VubmVuIHdpciBtYWNoZW4uLi4gKFJpbmdvciwgIDYuIE1haSAxOTk5LCAyMzowNjowOCk6Cn4jISBybj1ab29rIHJ0PTkyNjAyNDQ3NyByZz1zY2htYXJybgp+IyEgdGlkPTkyNjAyNDQ3NwpIZXkgLSBkYSBmZWhsdCBqYSBkaWUgSGFlbGZ0ZSEKCkFsc28gaW0ga29tcGxldHRlbiBadXNhbW1lbmhhbmc6CgpbPE1hc3RlUj46Wmlub10gbApbPE1hc3RlUj46PE1hc3RlUj5dIDE0LjA1IGNtZHMvcywgMjMwLjY2IGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMC4xJS82MCwgMC4xJS8xNSwgMS42JS8xCls8TWFzdGVSPjpSaW5nb3Igc3RhdW50XQpbPE1hc3RlUj46Wm9vayBhdWNoLl0KWzxNYXN0ZVI+OlRhcmFnb24gZ3JpbnN0IGJyZWl0XQpbPE1hc3RlUj46UmluZ29yXSBkYSB3YXIgamEgbmUgMSB2b3JtIEtvbW1hCls8TWFzdGVSPjpSaW5nb3JdIGRhcyBpcyBmYXN0IG5lIHp3ZWkhCls8TWFzdGVSPjpaaW5vIGhhdCBTdGFtbXRpc2NobWFpbCBnZXNjaHJpZWJlbiA6KV0KWzxNYXN0ZVI+OkFuYWNyaW9uXSBqYS4gd2lyIHNvbGx0ZW4gbmVuIG5ldWVuIHJlaG5lciBrYXVmZW4KWzxNYXN0ZVI+OlJpbmdvcl0gRXJkZSBhbiBTbHlmb3ghIEhhZXJ0ZXRlc3QhIEJpdHRlIGVpbm1hbCAibWFpbCBmcmV1bmRlIiEKWzxNYXN0ZVI+Olppbm8ga2ljaGVydC5dCls8TWFzdGVSPjpTbHlmb3hdIHNvbGwgaWNoIHdpcmtsaWNoPwpbPE1hc3RlUj46Wmlub10gamF1Cls8TWFzdGVSPjpUYXJhZ29uXSBqYSBtYWNoIG1hbCA6LSkKWzxNYXN0ZVI+OlRhcmFnb25dIG5lIHNjaG9lbmUgbGFuZ2UgYmluYXJ5IG1haWwgOi0pKQpbPE1hc3RlUj46Wm9va10gc2x5Zm94Li4uIG1hY2ggbWFsLgpbPE1hc3RlUj46VGFyYWdvbl0gaWNoIGhhZXR0ZSBnZXJuIGVpbiBtYWwgWDExUjYgdW5nZXBhY2t0IDotKQpbPE1hc3RlUj46R2FuZHVyXSBvaG9oIDopCls8TWFzdGVSPjpSaW5nb3JdIHRzdHN0cyAuLi4gZGFzIHBhc3N0IG5pY2h0IGluIDEwayBaZWlsZW4gOikKWzxNYXN0ZVI+OlJpbmdvcl0gYWVoIC4uLiAxayBtZWluZSBpY2gKWzxNYXN0ZVI+OlRhcmFnb25dIG5pbW0gYW0gYmVzdGVuIG5vY2ggYmFsYW5jZSB1bmQgaXNfZWxkZXIgZGF6dSA6LSkpCls8TWFzdGVSPjpNaW5kYmxhZGVdIEFsc28gaW0gTW9tZW50IHNpbmQgTGFnLUFuZnJhZ2VuIHppZW1saWNoCls8TWFzdGVSPjpNaW5kYmxhZGVdIHVlYmVyZmx1ZXNzaWchOikpIERhcyBkYXJmIGdlcm5lIHNvIGJsZWliZW4hOikpCls8TWFzdGVSPjpSaW5nb3JdIGRhcyBzaW5kIHp1c2FtbWVuIGphIGtlaW5lIDIwIExldXRlLiBEYW5uIGxpZWJlciBtYWdpZXIgOi0pCls8TWFzdGVSPjpHYW5kdXJdIGwKWzxNYXN0ZVI+OjxNYXN0ZVI+XSAxMy4zOSBjbWRzL3MsIDE4Ny43OCBjb21wIGxpbmVzL3MKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDAuNyUvNjAsIDIuNCUvMTUsIDIzLjElLzEKWzxNYXN0ZVI+OkFuYXRvbF0gTGFhYWFhYWFhYWFhYWFhYWFhYWFnICEgSmFhYWFhYWFhYWEhIDopCls8TWFzdGVSPjpab29rXSBqb28uLi4gMjMlCls8TWFzdGVSPjpSaW5nb3JdIFdPVyEKWzxNYXN0ZVI+OkFuYXRvbCBqdWJlbHQuXQpbPE1hc3RlUj46Wm9vayBncmF0dWxpZXJ0IFNseWZveC5dCls8TWFzdGVSPjpUYXJhZ29uXSBXQUFBQUFBQUFBQUFISEhISEhISEhISCA6LSkKWzxNYXN0ZVI+OlNseWZveF0gY2EuIDIwIFNldWt1bmRlbgoKUmluZ29yLiBQbGFlZGllcnQgZnVlciBuZW4gc2NoZWxsZXJlbiBSZWNobmVyLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLb2VubmVuIHdpciBtYWNoZW4uLi4gKE1pbmRibGFkZSwgIDYuIE1haSAxOTk5LCAyMzowNjozNik6Cn4jISBybj1ab29rIHJ0PTkyNjAyNDQ3NyByZz1zY2htYXJybgp+IyEgdGlkPTkyNjAyNDQ3NwpEYXMgd2FyIGphIGF1Y2ggZ2VzY2h1bW1lbHQhOykKVW0gTGFnIHp1IHByb2R1emllcmVuIGdpYnRzIHNvd2llc28gbm9jaCB2aWVsIHp1IHZpZWxlIE1vZWdsaWNoa2VpdGVuLCBhdWNoCmFuZGVyZSBhbHMgIm1haWwgZnJldW5kZSIhOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVwaXNvZGUgMSAoQW5ha2luLCAgNy4gTWFpIDE5OTksIDEwOjEwOjIwKToKCkVpbiBrbGVpbmVyIFJldmlldyB2b24gRXBpc29kZSAxIChsaWVmIGdlc3Rlcm4gYWxzIFByZXNzZXZvcnN0ZWxsdW5nIGluIFVTQSkuCgpodHRwOi8vd3d3LmFpbnQtaXQtY29vbC1uZXdzLmNvbS9kaXNwbGF5LmNnaT9pZD0zNTUwCgpBbmFraW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRXBpc29kZSAxIChUcnVnLCAgNy4gTWFpIDE5OTksIDExOjEzOjU5KToKfiMhIHJuPUFuYWtpbiBydD05MjYwNjQ2MjAgcmc9c2NobWFycm4KfiMhIHRpZD05MjYwNjQ2MjAKV2FzIGZ1ZXIgRXBpc29kZSAxPz8KClRydWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVwaXNvZGUgMSAoWmFybml5YSwgIDcuIE1haSAxOTk5LCAxMToxNDoyMSk6Cn4jISBybj1UcnVnIHJ0PTkyNjA2ODQzOSByZz1zY2htYXJybgp+IyEgdGlkPTkyNjA2NDYyMApzY2hhdSBuYWNoLCBCQVVOQVVTRSAhISEgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVwaXNvZGUgMSAoWmFybml5YSwgIDcuIE1haSAxOTk5LCAxMToxNDo0NSk6Cn4jISBybj1aYXJuaXlhIHJ0PTkyNjA2ODQ2MSByZz1zY2htYXJybgp+IyEgdGlkPTkyNjA2NDYyMApobW0gbWVpbnRlIEJhbmF1c2UsIGFiZXIgQmF1KiBrbGluZ3QgYXVjaCBmaWVzIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFcGlzb2RlIDEgKEdyaW1tYm9ybiwgIDcuIE1haSAxOTk5LCAxMToxNjoxMyk6Cn4jISBybj1aYXJuaXlhIHJ0PTkyNjA2ODQ4NSByZz1zY2htYXJybgp+IyEgdGlkPTkyNjA2NDYyMApXZW5uIER1IERJY2ggc28gYXVmcmVnc3QgaGF0IGRhcyBzaWNoZXIgd2FzIG1pdCBFaXNob2NrZXkgenUgdHVuLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCB3aWxsIGZsaWVnZW4gKEdvcm9nLCAgNy4gTWFpIDE5OTksIDEyOjI5OjIxKToKCktsZWlkdW5nJlJ1ZXN0dW5nOgpFaW4gcGFhciBFbmdlbHNmbHVlZ2VsIChhbmdlem9nZW4pICg1KQoKR29yb2cgaXMgamV0enQgd29obCBlaW4gdWViZXJmbGllZ2VyLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFJhZXViZXIgLSBCdWcgb2RlciBGZWF0dXJlPyAoR3JpbW1ib3JuLCAgNy4gTWFpIDE5OTksIDEyOjI5OjU5KToKfiMhIHJuPVBhZHJlaWMgcnQ9OTI2MDcyNjg2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTI2MDYyNzU4ClNwaWVsZXJoaWxmZS4KQWJ3ZXJ0ZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktpbGxzdGF0aXN0aWsgKFJvY2h1cywgIDcuIE1haSAxOTk5LCAxNjo1NzowNSk6CgpbQmVpbGVpZDpHYXN0Ml0gaG0uIEJla29tbWVuIE1hZ2llciAiS2lsbHN0dXBzZSIgZnVlciB0b3RlIFNwaWVsZXI/IDwxNjo1NDozNT4KW0JlaWxlaWQ6S2FtZWxvdF0gZXMgZ2lidCBlaW5lIGhpdGxpc3RlIDwxNjo1NDo0Nz4KW0JlaWxlaWQ6VHN1bmFtaV0gRGFzIGlzdCBlaW5lIGdlbmlhbGUgSWRlZSA8MTY6NTQ6NDc+CltCZWlsZWlkOkFuYXRvbF0gTWVociBvZGVyIHdlbmlnZXI6IEphLiA8MTY6NTQ6NDk+CltCZWlsZWlkOlRydWddIGdpYnRzIHNjaG9uIDwxNjo1NDo1Mz4KW0JlaWxlaWQ6R2FzdDJdIHdvIG11c3MgbWFuIHVudGVyc2NocmVpYmVuPyA8MTY6NTU6MDU+CltCZWlsZWlkOk1hZ2ljb2xsaV0gV2VyIHN0ZWh0IGRhIGVpZ2VudGxpY2ggYXVmIFBsYXR6IDE/IDwxNjo1NToxOT4KW0JlaWxlaWQ6R2FzdDJdIHdvIGlzdCBkaWVzZSBMaXN0ZT8gPDE2OjU1OjI3PgpbQmVpbGVpZDpKYXNvblJpZ2lkXSBqYSwga2xhciwgdW5kIGRhbm4ga29tbXQgc28gZXR3YXMgIlVtIGF1ZiBtYWdpZXJsZXZlbCAxMQpbQmVpbGVpZDpKYXNvblJpZ2lkXSBhdWZzdGVpZ2VuIHp1IGtvZW5uZW4gbXVzc3QgZHUgbm9jaCBlaW5lIGdyb3NzZSBxdWVzdApbQmVpbGVpZDpKYXNvblJpZ2lkXSBzY2hyZWliZW4gdW5kIGF1c3NlcmRlbSBicmF1Y2hzdCBkdSBub2NoIDI0NQpbQmVpbGVpZDpKYXNvblJpZ2lkXSBzcGllbGVyLWtpbGxzdHVwc2UgPDE2OjU1OjMzPgpbQmVpbGVpZDpLYW1lbG90XSBhbHMgaWNoIHNpZSBnZXNlaGVuIGhhYmUgcGFyYSBvZGVyIG0qIDwxNjo1NTo1MT4KW0JlaWxlaWQ6R2FzdDJdIHVyZ3MuIEthbm4gbWFsIHdlciBwb3N0ZW4sIHdlciBkYSBzbyBkcmF1ZiBzdGVodD8KCnRvcCAyMCBraWxscwogIDEuIE1vcmdvdGggICAgICAgIDE1MAogIDIuIEJvaW5nICAgICAgICAgIDEzNwogIDMuIFJvY2h1cyAgICAgICAgIDEyOQogIDQuIFBhcmFjZWxzdXMgICAgICA5NQogIDUuIFNpbHZhbmEgICAgICAgICA5NAogIDYuIFd1cnplbCAgICAgICAgICA4NAogIDcuIENhbHVtICAgICAgICAgICA2MAogIDguIFBhdHJ5biAgICAgICAgICA1OAogIDkuIEJlbmRlaWdpZCAgICAgICA1NwogMTAuIFB1bWEgICAgICAgICAgICA0MAogMTEuIFRyb3kgICAgICAgICAgICAzNwogMTIuIFphcmRveiAgICAgICAgICAzMQogMTMuIE5vZWwgICAgICAgICAgICAyOAogMTQuIEdlb3JnICAgICAgICAgICAyOAogMTUuIENhZHJhICAgICAgICAgICAyOAogMTYuIFRlcnJvcmlzdCAgICAgICAyNQogMTcuIFRvZXRlciAgICAgICAgICAyMwogMTguIEd1bSAgICAgICAgICAgICAxNgogMTkuIER1cmlhbiAgICAgICAgICAxNgogMjAuIEJlcnRyYW0gICAgICAgICAxNgoKdG9wIDIwIHNjb3JlcwogIDEuIE1vcmdvdGggICAgICAgIDczNAogIDIuIEJvaW5nICAgICAgICAgIDU4OQogIDMuIFBhcmFjZWxzdXMgICAgIDU0OAogIDQuIFJvY2h1cyAgICAgICAgIDQyNwogIDUuIFBhdHJ5biAgICAgICAgIDI1NwogIDYuIFNpbHZhbmEgICAgICAgIDI1MwogIDcuIEJlbmRlaWdpZCAgICAgIDIxNAogIDguIFd1cnplbCAgICAgICAgIDE0MgogIDkuIFB1bWEgICAgICAgICAgIDEzMgogMTAuIENhZHJhICAgICAgICAgIDExMgogMTEuIE5vZWwgICAgICAgICAgIDExMAogMTIuIENhbHVtICAgICAgICAgIDEwOQogMTMuIEJpZXJjaGVuICAgICAgICA4MgogMTQuIEZldWVyd2VociAgICAgICA3MQogMTUuIFphcmRveiAgICAgICAgICA2OQogMTYuIFRlcnJvcmlzdCAgICAgICA2OAogMTcuIFRyb3kgICAgICAgICAgICA1NQogMTguIFBhZHJlaWMgICAgICAgICA1NAogMTkuIFRzdW5hbWkgICAgICAgICA0NwogMjAuIEdlb3JnICAgICAgICAgICA0NQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTG9nbW9lZ2xvY2hrZWl0IDopIChBbmF0b2wsICA3LiBNYWkgMTk5OSwgMTg6Mzk6NDMpOgp+IyEgcm49QXBzdSBydD05MjYwOTQ5ODMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MjYwODE3MTcKTXVzc3QgaGFsdCBudXIgZ2VzY2hpY2t0IGFscyBTY2hsYW1ta3VyIHRhcm5lbi4uLiA6bykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGpldHp0amEuLiA6KSAoTGV2LCAgOC4gTWFpIDE5OTksIDE3OjI5OjQ1KToKClJpbmdvciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKUGFkcmVpYyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCgpMZXYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplaW4gUG9zdGxlciA6LSkgKFRhcmFnb24sICA4LiBNYWkgMTk5OSwgMTk6NTE6MDYpOgo+IGZpbmdlciB0cm91YmFyZGl4ClRyb3ViYXJkaXggaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IFtwb3N0YWwgY29kZV06LgoKU0NOUgogICAgICAgICBUYXJhZ29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaCBqYSwgc29zby4uLnVuZCBkYXMgYW0gU3R1ZWNrIGF1Y2ggbm9jaC4uLiAoTmV2b2ssICA4LiBNYWkgMTk5OSwgMjE6MDU6NDIpOgpPcmt0b2V0ZXIgcnVmdDogT1JLVE9FVEVOT1JLVE9FVEVOT1JLVE9FVEVOT1JLVE9FVEVOT1JLVE9FVEVOT1JLVE9FVEVOClRlbGVub3MgcnVmdDogQ0FQU0xPQ0tDQVBTTE9DS0NBUFNMT0NLQ0FQU0xPQ0tDQVBTTE9DSwpaaWxsdXMgcnVmdDogV09MUElFVE9FVEVOV09MUElFVE9FVEVOV09MUElFVE9FVEVOV09MUElFVE9FVEVOV09MUElFVE9FVEVOCkhpZ2h0IHJ1ZnQ6IHNjaGF1emUKCm1hbCBzZWhlbi4uLi4uZGVtbmFlY2hzdCB2aWVsbGVpY2h0IGdlbWVpbnNhbWVzIEpvZGVsbj8gSG9sZXJpZGlkdWRlbGRvZS4uLi4KCmVpbiBncmluc2VuZGVyIApOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5hbnU/IChKaWRkdSwgIDguIE1haSAxOTk5LCAyMzoyNDozMik6Cn4jISBybj1BcHN1IHJ0PTkyNTkzMTA2NCByZz1zY2htYXJybgp+IyEgdGlkPTkyNTkzMTA2NApPaCBnb3R0IGhhYmVuIHdpciBkYSBuZW4gcGFzc2VuZGVuIHRyaXR0PyA7KQpKaWRkdS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBaGpldHp0amEuLiA6KSAoUmluZ29yLCAgOS4gTWFpIDE5OTksIDAzOjA3OjA0KToKfiMhIHJuPUxldiBydD05MjYxNzczODUgcmc9c2NobWFycm4KfiMhIHRpZD05MjYxNzczODUKLi4uIHVuZCB3ZW5uIGlociBub2NoIHNvdmllbCBiaXR0ZXQgdW5kIGJldHRlbHQ6CgpPYiBkYXMgYXVjaCBtaXQgInNlbGJzdGxvZXNjaHVuZyIga2xhcHB0LCBwcm9iaWVyIGljaCBqZXR6dCBuaWNodCBhdXMuCgpSaW5nb3IuIEJsZWlidCBkYSBlaXNlcm4uIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVjaHRmZXJ0aWd1bmdlbj8gKFRoZXJpbiwgIDkuIE1haSAxOTk5LCAwNDoyOTozMCk6CgpCaWVyY2hlbiB0ZWlsdCBEaXIgbWl0OiBpY2ggYmluIG5pY2h0IHZvbGwsIHRhc3RhdHVyIGlzdCBpbSBhcnNjaAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hY2hydWYgYnp3IE5hY2hzY2hsYWcgOikgKEJlbGdhcmlhZCwgMTAuIE1haSAxOTk5LCAwMDozOToxNyk6CkVsaG9sZHJpZWwgd2FuZGVydCBuYWNoIFdlc3Rlbi4KRHUgdmVyZm9sZ3N0IGpldHp0IEVsaG9sZHJpZWwuCiAgRHUgc2NobGFlZ3N0IEVsaG9sZHJpZWwgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KCldpZSBnZWh0IGRlbm4gc293YXM/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWhqZXR6dGphLi4gOikgKE5vdmFzdG9ybSwgMTAuIE1haSAxOTk5LCAxMDo1MTo0MCk6Cn4jISBybj1MZXYgcnQ9OTI2MTc3Mzg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI2MTc3Mzg1ClVuZCB3YXMgc29sbHRlIGRlciBqZXR6dCA/IAogICAgIE5vdmEsIGxhbmdlIGdydWViZWxuZC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtpbGxzdGF0aXN0aWsgKEJhbWJ1bGtvLCAxMC4gTWFpIDE5OTksIDExOjUzOjMxKToKfiMhIHJuPVJvY2h1cyBydD05MjYwODkwMjUgcmc9c2NobWFycm4KfiMhIHRpZD05MjYwODkwMjUKSXN0IGRhcyBwcm8gU3R1bmRlIG9kZXIgcHJvIE1pbnV0ZT8/CgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW9obmUga29tbWVudGFyIChEaWVkZXIsIDEwLiBNYWkgMTk5OSwgMTI6NTA6NDQpOgpBcmFuY2lhIHN0b2Vja2VsdCBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCkRpZWRlciwgZnJhZ3Qgc2ljaCwgd2FzIEFyYW5jaWEgZnVlciBLcmF1dHN0YW1wZmVyIGhhdCA6LSkpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlY2h0ZmVydGlndW5nZW4/IChKYXNwZXIsIDEwLiBNYWkgMTk5OSwgMTc6MTY6MTUpOgp+IyEgcm49VGhlcmluIHJ0PTkyNjIxNjk3MCByZz1zY2htYXJybgp+IyEgdGlkPTkyNjIxNjk3MApuYSBpY2ggaG9mZmUsIGR1IHdpbGxzdCB1bnMgamV0enQgbmljaHQgZXJ6YWVobGVuLCB3YXMgZGEgbm9jaCBzbyBhbGxlcwpyZWlucGFzc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFJpbmdvciwgMTAuIE1haSAxOTk5LCAyMjoxMToyNik6CltUcnZlczpNb3JnbmVyXSBoYXQgamVtYW5kIG5lIEZhY2tlbCB1bmQgaXN0IGluIGRlciBOYWVoZSBkZXMgU3RydXZzID0+IGthbm4KW1RydmVzOk1vcmduZXJdIHNjaG5lbGwgbWFsIHp1bSBLbG9zdGVyIGtvbW1lbj8/IDopCgpbVG9kOkxhcnNdIEVpbiBNb2VuY2ggZGVzIGR1bmtsZW4gT3JkZW5zIGhhdCBnZXJhZGUgTW9yZ25lciB1bWdlYnJhY2h0LgoKUmluZ29yIGRlbmt0IC4gbyBPKHp1IHNwYWV0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXKysgKFRyYW5jZSwgMTAuIE1haSAxOTk5LCAyMjoxNTo1Nyk6CgpbVHJ2ZXM6R2l6aV0gKmFyZ2wqCi4uLgpbVG9kOkxhcnNdIEVpbiBNb2VuY2ggZGVzIGR1bmtsZW4gT3JkZW5zIGhhdCBnZXJhZGUgR2l6aSB1bWdlYnJhY2h0LgoKaG0sIHdvbGx0ZSB3b2hsIGhlbGZlbiAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldJTkRPT0YgOiB3aXJrbGljaCBzb29vb28gc2NobGltbT8gKEdyaW1tYW4sIDExLiBNYWkgMTk5OSwgMDA6NDE6MjUpOgpEZWluZSBGcmV1bmRpbiBBcmFuY2lhIHRlaWx0IGRpciBtaXQ6IGljaCBoYXNzZSB3aW5kb3dzICpncnVtbWVsKgpBcmFuY2lhICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKR3JpbU1hbiAsIGltbWVybm9jaCBncnVlYmVsbmQ7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc29zbyAoRGFya3dpbmcsIDExLiBNYWkgMTk5OSwgMDI6MDI6NTgpOgpbVHJ2ZXM6QnJpZXNlbHRyaW1dIEthcmljIGhhdCBkaWUgQXVmZ2FiZSAnUmV0dHVuZ3Nha3Rpb24gaW4gZGVyIEVpc21pbmUnCltUcnZlczpCcmllc2VsdHJpbV0gZXJmb2xncmVpY2ggYmVzdGFuZGVuIQpHYW5kdXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCkthZW1wZmVyIGhhbHRlbiB6dXNhbW1lbiBvZGVyIHdpZSA/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV0lORE9PRiA6IHdpcmtsaWNoIHNvb29vbyBzY2hsaW1tPyAoVHJ1ZywgMTEuIE1haSAxOTk5LCAwOTozNDowNyk6Cn4jISBybj1HcmltbWFuIHJ0PTkyNjM3NjA4NSByZz1zY2htYXJybgp+IyEgdGlkPTkyNjM3NjA4NQoqc2V1ZnoqIGRpZSAnaXN0IGpldHp0IChuaWNodCkgd2llZGVyIGRhJyBBcnRpa2VsIHNjaGVpbmVuIHdpZWRlciBtYWwgd2llZGVyCmFuenVsYXVmZW4uCgpUcnVnLiBCZXN0ZWxsdCB3aWVkZXIgbWFsIGVpbmUgUnVicmlrIGFiLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS29vb21tbSBQdXR0IFB1dHQgKEFwc3UsIDExLiBNYWkgMTk5OSwgMDk6NDU6NDkpOgpEaWVkZXIgcnVmdDogTWlleiBNaWV6IE1pZXogTWllZWVlZWVlZWVlZWVleiEhIQpEZXIgU2FldXJlZGFlbW9uIHNjaGxlaW10IGFldHplbmQgbmFjaCBOb3JkZW4uCkRlciBTYWV1cmVkYWVtb24gc2NobGVpbXQgYWV0emVuZCBuYWNoIE5vcmRlbi4KRGVyIFNhZXVyZWRhZW1vbiBzY2hsZWltdCBhZXR6ZW5kIG5hY2ggTm9yZGVuLgoKZ3JpbnNlbmQKQXBzdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVzIGFrdHVlbGxlbSBBbmxhc3MgOi0pIChOb3Zhc3Rvcm0sIDExLiBNYWkgMTk5OSwgMTA6MjU6NDIpOgoKRGllIGxldHp0ZW4gV29ydGUgZWluZXMgTWFnaWVyOiBIQSEgRGFzIGdlaHQgc2Nob25tYWwuLi4KCiAgICAgTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIGthbm4gd2FlaHJlbmQgZGVtIEJldGVuIGthZW1wZmVuIG9kZXIgd2FzPyAoTGVuYSwgMTEuIE1haSAxOTk5LCAxMDo1NjoxNyk6Cj4gRmF4IHZhbiBEeWtlIHNjaGxlaWNodCBzaWNoIGFuLgogIEVpbiBBYmJpbGQgTGVuYXMgdGFldXNjaHQgZWluZW4gQW5ncmlmZiBhbi4KICBFaW4gQWJiaWxkIExlbmFzIHRhZXVzY2h0IGVpbmVuIEFuZ3JpZmYgYW4uCiAgRWluIEFiYmlsZCBMZW5hcyB0YWV1c2NodCBlaW5lbiBBbmdyaWZmIGFuLgogIEVpbiBBYmJpbGQgTGVuYXMgdGFldXNjaHQgZWluZW4gQW5ncmlmZiBhbi4KRHUgYmV0ZXN0IGZ1ZXIgZ3V0ZXMgV2V0dGVyLCBzY2h3YWNoZSBHZWduZXIgdW5kIGVpbiBsZWljaHRlcmVzIExlYmVuIGltCkFsbGdlbWVpbmVuIHNvd2llIGZ1ZXIgZWluIGJhbGRpZ2VzIEVuZGUgZGVyIEdlYmV0c3J1bmRlIGltIEJlc29uZGVyZW4uCiAgRWluIEFiYmlsZCBMZW5hcyB0YWV1c2NodCBlaW5lbiBBbmdyaWZmIGFuLgogIEVpbiBBYmJpbGQgTGVuYXMgdGFldXNjaHQgZWluZW4gQW5ncmlmZiBhbi4KICBFaW4gQWJiaWxkIExlbmFzIHRhZXVzY2h0IGVpbmVuIEFuZ3JpZmYgYW4uCiAgRWluIEFiYmlsZCBMZW5hcyB0YWV1c2NodCBlaW5lbiBBbmdyaWZmIGFuLgogIEVpbiBBYmJpbGQgTGVuYXMgdGFldXNjaHQgZWluZW4gQW5ncmlmZiBhbi4KICBFaW4gQWJiaWxkIExlbmFzIHRhZXVzY2h0IGVpbmVuIEFuZ3JpZmYgYW4uCiAgRWluIEFiYmlsZCBMZW5hcyB0YWV1c2NodCBlaW5lbiBBbmdyaWZmIGFuLgogIEVpbiBBYmJpbGQgTGVuYXMgdGFldXNjaHQgZWluZW4gQW5ncmlmZiBhbi4KICBFaW4gQWJiaWxkIExlbmFzIHRhZXVzY2h0IGVpbmVuIEFuZ3JpZmYgYW4uCiAgRWluIEFiYmlsZCBMZW5hcyB0YWV1c2NodCBlaW5lbiBBbmdyaWZmIGFuLgpEdSBiZXRlc3QgZnVlciBlaW4gYmFsZGlnZXMgRW5kZSBkaWVzZXIgR2ViZXRzcnVuZGUuCiAgRWluIEFiYmlsZCBMZW5hcyB0YWV1c2NodCBlaW5lbiBBbmdyaWZmIGFuLgogIEVpbiBBYmJpbGQgTGVuYXMgdGFldXNjaHQgZWluZW4gQW5ncmlmZiBhbi4KICBFaW4gQWJiaWxkIExlbmFzIHRhZXVzY2h0IGVpbmVuIEFuZ3JpZmYgYW4uCiAgRWluIEFiYmlsZCBMZW5hcyB0YWV1c2NodCBlaW5lbiBBbmdyaWZmIGFuLgogIEVpbiBBYmJpbGQgTGVuYXMgdGFldXNjaHQgZWluZW4gQW5ncmlmZiBhbi4KICBFaW4gQWJiaWxkIExlbmFzIHRhZXVzY2h0IGVpbmVuIEFuZ3JpZmYgYW4uCiAgRWluIEFiYmlsZCBMZW5hcyB0YWV1c2NodCBlaW5lbiBBbmdyaWZmIGFuLgogIEVpbiBBYmJpbGQgTGVuYXMgdGFldXNjaHQgZWluZW4gQW5ncmlmZiBhbi4KICBFaW4gQWJiaWxkIExlbmFzIHRhZXVzY2h0IGVpbmVuIEFuZ3JpZmYgYW4uCiAgRWluIEFiYmlsZCBMZW5hcyB0YWV1c2NodCBlaW5lbiBBbmdyaWZmIGFuLgpEdSBiZXRlc3QsIGRhc3MgRHUgZGVuIEthbXBmIHVlYmVyc3RlaHN0LgogIEVpbiBBYmJpbGQgTGVuYXMgdGFldXNjaHQgZWluZW4gQW5ncmlmZiBhbi4KICBEdSBrcmF0enQgRmF4IHZhbiBEeWtlLgogIEVpbiBBYmJpbGQgTGVuYXMgdGFldXNjaHQgZWluZW4gQW5ncmlmZiBhbi4KICBGYXggdmFuIER5a2UgZ3JlaWZ0IERpY2ggbWl0IGVpbmVyIGdlaGVpbWVuIFN1cGVyd2FmZmUgYW4uCiAgRmF4IHZhbiBEeWtlIHRyaWZmdCBEaWNoIGhhcnQuCkZheCB2YW4gRHlrZSBzYWd0OiBJc3QgZGFzIHNjaGVpc3NlIGhpZXIhIERhIGRlbmt0IG1hbiwgbWFuIGhhdCBlaW5lbiBQbGF0egpGYXggdmFuIER5a2Ugc2FndDogZ2VmdW5kZW4sIHdvIG1hbiBzZWluZSBSdWhlIGhhdCB1bmQgZGFubiBrb21tdCBzbyBuZSBXdXJzdApGYXggdmFuIER5a2Ugc2FndDogdW5kIG1hY2h0IG1pY2ggZHVtbSBhbi4gVHNjaHVlc3MuCkZheCB2YW4gRHlrZSB2ZXJzY2h3aW5kZXQgZ3J1bW1lbG5kLgpEdSB2ZXJmb2xnc3QgamV0enQgRmF4IHZhbiBEeWtlLgpEdSBiZXRlc3QgZnVlciBlaW5lbiBndXQgZ2VmdWVsbHRlbiBHZWxkYmV1dGVsLgpEdSBiZWVuZGVzdCBEZWluIEdlYmV0IG1pdCBlaW5lbSBlcmxlaWNodGVydGVuICdFbmRsaWNoJwpraQpHZXN1bmRoZWl0OiAgICAwIHwjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyAgfCAyMDMgKDIxMCkKS29uemVudHJhdGlvbjogMCB8IyMjIyMjIyMjIyMjIyMjIyMjIyAgIC4gICAgLiAgICAuICAgIC4gIHwgMTA0ICgyMTApCj4gc3RvcApEdSBqYWdzdCBGYXggdmFuIER5a2UgbmljaHQgbWVoci4KT2suCj4gYmkKRHUgYmVnaW5uc3QgaW5icnVlbnN0aWcgenUgYmV0ZW4uCj4gRHUgYmV0ZXN0LCBkYXNzIGpldHp0IGJsb3NzIGtlaW4gYWdncmVzc2l2ZXIgR2VnbmVyIGhlcmVpbiBrb21tZW4gbW9lZ2UuCkR1IGJldGVzdCBmdWVyIGVpbmVuIGd1dCBnZWZ1ZWxsdGVuIEdlbGRiZXV0ZWwuCkR1IGVyZmxlaHN0IGRpZSBHbmFkZSBkZXIgR29ldHRlci4KRHUgYmV0ZXN0IHVuZCBiZXRlc3QgdW5kIGJldGVzdCB1bmQgYmV0ZXN0IHVuZCAuLi4KRHUgYmVlbmRlc3QgRGVpbiBHZWJldCBtaXQgZWluZW0gZXJsZWljaHRlcnRlbiAnRW5kbGljaCcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGJheXJpc2NoZXIgc3BhcmdlbCAoR3JpbW1ib3JuLCAxMS4gTWFpIDE5OTksIDExOjAwOjA3KToKfiMhIHJuPUFwc3UgcnQ9OTI2NDA4OTkxIHJnPWtvY2hyZXplcHRlCn4jISB0aWQ9OTI2MTk0NDY4ClVuZCB3aWUgc29sbCBkZXIgU2NodWxkbmVyIGRhbm4genUgR2VsZCBrb21tZW4gdW0gZGllIFNjaHVsZGVuIHp1IGJlZ2xlaWNoZW4sCndlbm4gRHUgaWhtIGRlbiBTcGFyZ2VsIGtsYXVzdD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogYmF5cmlzY2hlciBzcGFyZ2VsIChBcHN1LCAxMS4gTWFpIDE5OTksIDExOjAzOjAwKToKfiMhIHJuPUdyaW1tYm9ybiBydD05MjY0MTMyMDcgcmc9c2NobWFycm4KfiMhIHRpZD05MjYxOTQ0NjgKTmV0IGtsYXVlbi4gVW1zY2h1bGRlbiBuZW5udCBtYW4gc293YXMgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIGthbm4gd2FlaHJlbmQgZGVtIEJldGVuIGthZW1wZmVuIG9kZXIgd2FzPyAoTWFoYXRtdSwgMTEuIE1haSAxOTk5LCAxNjo0NzoxNSk6Cn4jISBybj1MZW5hIHJ0PTkyNjQxMjk3NyByZz1zY2htYXJybgp+IyEgdGlkPTkyNjQxMjk3NwpKYSwga2FubnN0IER1LiBBYmVyIHZpZWxsZWljaHQgbmljaHQgbWVociBsYW5nZSwgd2VubiBkYXMgbmljaHQgc28KZ2VwbGFudCB3YXIuCgpHbG9pbiBmYXNzdCBMZW5hIGFuIGRlbiBoZWlzc2VuIEtvcHAuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIGthbm4gd2FlaHJlbmQgZGVtIEJldGVuIGthZW1wZmVuIG9kZXIgd2FzPyAoWWVuZGksIDExLiBNYWkgMTk5OSwgMTg6MTU6NDEpOgp+IyEgcm49TGVuYSBydD05MjY0MTI5Nzcgcmc9c2NobWFycm4KfiMhIHRpZD05MjY0MTI5NzcKV2FocmVuZCBfZGVzXyBfQmV0ZW5zXy4KClllbmRpIER1ZGVuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBJY2gga2FubiB3YWVocmVuZCBkZW0gQmV0ZW4ga2FlbXBmZW4gb2RlciB3YXM/IChBbHBoYSwgMTEuIE1haSAxOTk5LCAxODozMzozMyk6Cn4jISBybj1ZZW5kaSBydD05MjY0MzkzNDEgcmc9c2NobWFycm4KfiMhIHRpZD05MjY0MTI5NzcKQWNoLCBkZXIgR2VuaXRpdiB2ZXJzY2h3aW5kZXQgZWggYXVmIGt1cnogb2RlciBsYW5nLgpBbHBoYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEljaCBrYW5uIHdhZWhyZW5kIGRlbSBCZXRlbiBrYWVtcGZlbiBvZGVyIHdhcz8gKFplcGh5ciwgMTEuIE1haSAxOTk5LCAxODo1NDo1Mik6Cn4jISBybj1BbHBoYSBydD05MjY0NDA0MTMgcmc9c2NobWFycm4KfiMhIHRpZD05MjY0MTI5NzcKCldlbm4gd2lyIHNjaG9uIGRhYmVpIHNpbmQ6IF91ZWJlcl8ga3VyeiBvZGVyIGxhbmcgOykKKksuay4qCkM0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBJY2gga2FubiB3YWVocmVuZCBkZW0gQmV0ZW4ga2FlbXBmZW4gb2RlciB3YXM/IChMZW5hLCAxMi4gTWFpIDE5OTksIDA4OjU3OjQ3KToKfiMhIHJuPVplcGh5ciBydD05MjY0NDE2OTIgcmc9c2NobWFycm4KfiMhIHRpZD05MjY0MTI5NzcKaWNoIGJpbiBQZmFlbHplci4gSWNoIGRhcmYgZGVuIERhdGl2IGFuc3RhdHQgZGVzIEdlbml0aXZzIHZlcndlbmRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEljaCBrYW5uIHdhZWhyZW5kIGRlbSBCZXRlbiBrYWVtcGZlbiBvZGVyIHdhcz8gKE11YWRpYiwgMTIuIE1haSAxOTk5LCAxMDo0NjozOSk6Cn4jISBybj1MZW5hIHJ0PTkyNjQ5MjI2NyByZz1zY2htYXJybgp+IyEgdGlkPTkyNjQxMjk3NwpvaCBpY2ggYmluIGF1Y2ggcGZhZWx6ZXIgdW5kIHR1IGRhcyBuaWNoIG1hY2hlbiB0dW4KCm11YWRpYgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSWNoIGthbm4gd2FlaHJlbmQgZGVtIEJldGVuIGthZW1wZmVuIG9kZXIgd2FzPyAoTGVuYSwgMTIuIE1haSAxOTk5LCAxMDo0NzoyMSk6Cn4jISBybj1NdWFkaWIgcnQ9OTI2NDk4Nzk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI2NDEyOTc3CmljaCBoYWIgbmljaHQgZ2VzYWd0LCBpY2ggTVVTUyBkZW4gRGF0aXYgdmVyd2VuZGVuLCBzb25kZXJuIGljaCBEQVJGIGlobgp2ZXJ3ZW5kZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBJY2gga2FubiB3YWVocmVuZCBkZW0gQmV0ZW4ga2FlbXBmZW4gb2RlciB3YXM/IChNb3Jnb25hdGUsIDEyLiBNYWkgMTk5OSwgMTE6MDA6MDMpOgp+IyEgcm49TGVuYSBydD05MjY0OTIyNjcgcmc9c2NobWFycm4KfiMhIHRpZD05MjY0MTI5NzcKaG1tLCBkYW5uIGhhZXR0ZXN0IGR1IHRpcHBlbiBtdWVzc2VuOgppY2ggYmluIHBmYWVsemVyLiBpY2ggZGFyZiBkZW4gZGF0aXYgYW5zdGF0dCBkZW0gZ2VuaXRpdiB2ZXJ3ZW5kZW4uIDspCgp3ZW5uIGxldXRlIHNjaG9uIG5pY2h0IG1hbCBpaHJlbiBlaWdlbmVuIGRpYWxla3QgYmVoZXJyc2NoZW4uCgpNb3Jnb25hdGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEljaCBrYW5uIHdhZWhyZW5kIGRlbSBCZXRlbiBrYWVtcGZlbiBvZGVyIHdhcz8gKERpZWRlciwgMTIuIE1haSAxOTk5LCAxMTowMTozMyk6Cn4jISBybj1Nb3Jnb25hdGUgcnQ9OTI2NDk5NjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI2NDEyOTc3ClJldHRldCBkZW0gRGF0aXYhCgpEaWVkZXIKClBTOiBEYXMgZWluemlnIEd1dGUgYW4gZGVuIFBmYWVsemVybiBzaW5kIGRpZSBLYXJ0b2ZmZWxuLi4uIHNvLCB1bmQgamV0enQgZ2VoCmljaCBpbiBEZWNrdW5nLi4uIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogSWNoIGthbm4gd2FlaHJlbmQgZGVtIEJldGVuIGthZW1wZmVuIG9kZXIgd2FzPyAoTXVhZGliLCAxMi4gTWFpIDE5OTksIDExOjM1OjQzKToKfiMhIHJuPURpZWRlciBydD05MjY0OTk2OTMgcmc9c2NobWFycm4KfiMhIHRpZD05MjY0MTI5NzcKd2llc28gaW4gZGVja3VuZyA/IGR1IGhhc3QgZWluIHJlY2h0IGF1ZiBkZWluZSBlaWdlbmUgbWVpbnVuZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogSWNoIGthbm4gd2FlaHJlbmQgZGVtIEJldGVuIGthZW1wZmVuIG9kZXIgd2FzPyAoRGllZGVyLCAxMi4gTWFpIDE5OTksIDExOjM2OjUzKToKfiMhIHJuPU11YWRpYiBydD05MjY1MDE3NDMgcmc9c2NobWFycm4KfiMhIHRpZD05MjY0MTI5NzcKZGllcyBlbnRzcHJpY2h0IG5pY2h0IHVuYmVkaW5ndCBtZWluZXIgZXJuc3RoYWZ0ZW4gTWVpbnVuZy4uLiBtYW4gYmVhY2h0ZSBkaWUKUnVicmlrIDotKSkKCkRpZWRlciwgd3VyZGUgZ3JhZCBlYmVuIHNjaG9uIG1pdCBLYXJ0b2ZmZWxuIGJld29yZmVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBJY2gga2FubiB3YWVocmVuZCBkZW0gQmV0ZW4ga2FlbXBmZW4gb2RlciB3YXM/IChSaWt1cywgMTIuIE1haSAxOTk5LCAxMjo1Njo1Mik6Cn4jISBybj1Nb3Jnb25hdGUgcnQ9OTI2NDk5NjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI2NDEyOTc3CndpZSBoaWVzcyBlcyBnbGVpY2g/CgpnZW5pdGl2IGlucyB3YXNzZXIsIHdlaWxzIGRhdGl2IGlzdC4KCnJpa3VzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBJY2gga2FubiB3YWVocmVuZCBkZW0gQmV0ZW4ga2FlbXBmZW4gb2RlciB3YXM/IChBbHBoYSwgMTIuIE1haSAxOTk5LCAxMzozMTozOSk6Cn4jISBybj1SaWt1cyBydD05MjY1MDY2MTIgcmc9c2NobWFycm4KfiMhIHRpZD05MjY0MTI5NzcKTXVlc3N0ZSBlcyBuaWNodCBoZWlzc2VuOiBHZW5pZVdFSVQgaW5zIFdhc3Nlciwgd2VpbCBlcyBkYXRpdiBpc3Q/CkRhcyBlcyB0aWVmIGlzdCB3byBlcyB0aWVmIGlzdCwgaXN0IGRvY2gga2xhci4KQWxwaGEuCgpQLlMuOiBXIEUgUiBCIFUgTiBHICAgTyBOCgogICAgICBCZW51dHp0IG1laHIgR2VuaXRpdiEKCiAgICAgIFcgRSBSIEIgVSBOIEcgICBPIEYgRgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogSWNoIGthbm4gd2FlaHJlbmQgZGVtIEJldGVuIGthZW1wZmVuIG9kZXIgd2FzPyAoTGVuYSwgMTIuIE1haSAxOTk5LCAxMzo0ODozMik6Cn4jISBybj1BbHBoYSBydD05MjY1MDg2OTkgcmc9c2NobWFycm4KfiMhIHRpZD05MjY0MTI5NzcKbWFsIHNlaGVuLCBvYiBpY2ggbm9jaCBhbGxlcyB6dXNhbW1lbmJla29tbWU6CjEuIEthcnRvZmZlbG4gaGVpc3N0LCB3ZW5uIHNjaG9uLCBkYW5uICJncnVtYmVlcmUiLgoyLiB3aXIgKFBmYWVsemVyKSBzaW5kIG5pY2h0IHVubm9ldGlnIGJydXRhbC4KMy4gbnVyIHdlaWwgaWNoIGRlbiBHZW5pdGl2IHVuZCBkZW4gRGF0aXYgcmljaHRpZyB2ZXJ3ZW5kZSwgaGVpc3N0IGRhcyBub2NoCmxhbmdlIG5pY2h0LCBkYXNzIGljaCBpaG4gbmljaHQgIm5hY2ggUGZhZWx6ZXIgQXJ0IiB2ZXJ3ZW5kZW4ga2Fubi4Kb2VoLCA0PyA0LiBpY2ggc2NocmllYiwgaWNoIERBUkYgZGVuIERhdGl2IHZlcndlbmRlbiwgbmljaHQsIGljaCAibXVzcyIgaWhuCnZlcndlbmRlbi4KNS4gLi4uIE1pc3QsIGpldHp0IGhhYiBpY2ggZG9jaCB3YXMgdmVyZ2Vzc2VuLgooRGllc2VyIEFydGlrZWwgaXN0IGluIHNjaG1hcnJuLCBhbHNvIGtlaW5lIFBhbmlrLCBqYT8pCkxlbmEgaXN0IDUgSmEuLi4gYWVoIFBmYWVsemVyIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmx1Y2ggKE1vZXAsIDEyLiBNYWkgMTk5OSwgMTY6NDY6MjIpOgo+IGZsdWNoZSBEcm9sbGkKRHUgZmx1Y2hzdCB3aWUgd2lsZCB1bmQgc2Fnc3Q6IERyb2xsaQpQbG9ldHpsaWNoIGVyc2NoZWludCBtaXQgZWluZW0gUHVmZiBlaW4gRGFlbW9uIGluIGVpbmVyIFJhdWNod29sa2UuCkRlciBEYWVtb24gc2FndDogQWNoIHdpZSBzY2hvZW4sIHdlbGNoIGhlcnJsaWNoZXIgRmx1Y2ghCkRlciBEYWVtb24gc2FndDogU28gZWluZW4gc2Nob2VuZW4gaGFiIGljaCBzY2hvbiBsYW5nIG5pY2h0IG1laHIgZ2Vob2VydCwKICAnZGFmdWVyIHdlcmRlIGljaCBEaXIgZWluZSBUdWVyZSBvZWZmbmVuLgpEZXIgRGFlbW9uIHNjaG5pcHB0IG1pdCBkZW0gRmluZ2VyLgpEdSBob2Vyc3QgZWluIFJ1bXBlbG4gaW4gZGVyIEZlcm5lLgpEZXIgRGFlbW9uIHZlcnNjaHdpbmRldCBtaXQgZWluZW0gTGFlY2hlbG4gYXVmIHNlaW5lbSBHZXNpY2h0LgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBJY2gga2FubiB3YWVocmVuZCBkZW0gQmV0ZW4ga2FlbXBmZW4gb2RlciB3YXM/IChOZXZvaywgMTIuIE1haSAxOTk5LCAxNzo0MDo1Nik6Cn4jISBybj1EaWVkZXIgcnQ9OTI2NDk5NjkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI2NDEyOTc3ClNhdW1hZ2VuIGplbWFuZD8KKnZlcmJhcnJpa2FkaWVydCBzaWNoIG1pdCBCb2Nrd3VlcnN0Y2hlbiB1bmQgU2F1ZXJrcmF1dAoKTmV2b2sKLAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogSWNoIGthbm4gd2FlaHJlbmQgZGVtIEJldGVuIGthZW1wZmVuIG9kZXIgd2FzPyAoQXBzdSwgMTIuIE1haSAxOTk5LCAyMDozNTo1OSk6Cn4jISBybj1OZXZvayBydD05MjY1MjM2NTYgcmc9c2NobWFycm4KfiMhIHRpZD05MjY0MTI5NzcKRGFzIG11c3MgbWFuIGRlbiBCYXppcyBqYSBsYXNzZW4sIFNhdW1hZ2VuIGlzdCBlY2h0IHdhcyBsZWNrZXJlcyA6KQoKQXBzdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogSWNoIGthbm4gd2FlaHJlbmQgZGVtIEJldGVuIGthZW1wZmVuIG9kZXIgd2FzPyAoQ2FyYWRocmFzLCAxMi4gTWFpIDE5OTksIDIwOjQ5OjAxKToKfiMhIHJuPUxlbmEgcnQ9OTI2NTA5NzEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI2NDEyOTc3CkdydW1iaWVyZSBoZWlzc3QgZXMgYmVpIHVucy4gOikgSW4gZWluZW0ga2xlaW5lbiwgdW5iZXVnc2FtZW4gVGVpbApoaW50ZXIgTWl0dGVsZnJhbmtlbiAoYWxzbyBhbSBBRFcpLiAKCiAgICAgICAgIEJlcmdjaGVuIENhcmFkaHJhcyAtIGxpZWJ0IEthcnRvZmZlbG4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYW0gU2FuZHRpZ2VyIChIaWdodCwgMTIuIE1haSAxOTk5LCAyMTo0Mjo0Nik6CkRqdG9tIHNhZ3Q6IG1vbSBnZWggbWFsIHdvIHdlbmlnZXIgbG9zIGlzdCBvawpEanRvbSBzYWd0OiAxIHcKRGp0b20gZ2VodCBuYWNoIFdlc3Rlbi4KCndlaXNzIGphIG5ldCBhYmJhIGRhcyB3YXMgZGEgc28gc2Nyb2xsdCBzaW5kIGRvY2ggZGllIHRhbmtzY3JpcHRlIC4uLiBkaWUKcmVubmVuIGRvY2ggYXVjaCBhbGxlIG5hY2ggd2VzdGVuIG9kZXIgbmV0ID8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXBwZW4gOikgKFdvb2R5LCAxMy4gTWFpIDE5OTksIDAwOjMyOjEyKToKRGVpbiBGcmV1bmQgU2x5Zm94IHRlaWx0IERpciBtaXQ6IGhhYnQgaWhyIGF1Y2ggZGVuIEVpbmRydWNrLCBkYXNzIGRpZQpEZWluIEZyZXVuZCBTbHlmb3ggdGVpbHQgRGlyIG1pdDogd2VnZXNjcmlwdGUgc2NobmVsbGVyIGdlaGVuPwpEZWluIEZyZXVuZCBSaWt1cyB0ZWlsdCBEaXIgbWl0OiBub2UKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0byBhcnRpa2VsIDM3IChNdWFkaWIsIDEzLiBNYWkgMTk5OSwgMDk6MTA6MDYpOgp+IyEgcm49TmV2b2sgcnQ9OTI2NTIzNjU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI2NDEyOTc3Cmdlcm5lLCBpY2ggZXNzIGF1Y2ggZGVpbmUgcG9ydGlvbiBtaXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBJY2gga2FubiB3YWVocmVuZCBkZW0gQmV0ZW4ga2FlbXBmZW4gb2RlciB3YXM/IChTdG9lcnRpLCAxMy4gTWFpIDE5OTksIDEzOjUxOjI5KToKfiMhIHJuPUNhcmFkaHJhcyBydD05MjY1MzQ5NDEgcmc9c2NobWFycm4KfiMhIHRpZD05MjY0MTI5NzcKd2F0IHJlZGV0IGlociBkYW5uIGhpZXIgZnVlbiBtaXN0PwpkYXQgaGVpc3N0IGVycGVsbi4KdW4gd2F0IGFubmVycyBnaWJiZXQgbmljaCx3b2xsCgpzdG9lcnRpICp1ZWJlcnpldWd0ZXIgV3VwcGVydGFsZXIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogSWNoIGthbm4gd2FlaHJlbmQgZGVtIEJldGVuIGthZW1wZmVuIG9kZXIgd2FzPyAoU3BpcmlsbCwgMTMuIE1haSAxOTk5LCAxODo1MDo0Mik6Cn4jISBybj1TdG9lcnRpIHJ0PTkyNjU5NjI4OSByZz1zY2htYXJybgp+IyEgdGlkPTkyNjQxMjk3NwppY2ggZGFjaHRlIEVycGVsIHNpbmQgbWFlbm5sY2loZSBFbnRlbj8/IDopCm5hamEsIGltIFJoZWlubGFuZCBzaW5kIEthcnRvZmZlbG4gamVkZW5mYWxscyBBZXBlbC0ga2F1bSBhdWZ6dXNjaHJlaWJlbiwKZGllc2VyIGVyc3RlIFZva2FsLCBnYWFhYW56IGxhbmdlcyBBZSBtaXQgMiBTaWxiZW4uIApTcGlyaWxsLCBsaWVidCBEaWFsZWt0ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEljaCBrYW5uIHdhZWhyZW5kIGRlbSBCZXRlbiBrYWVtcGZlbiBvZGVyIHdhcz8gKFN0b2VydGksIDEzLiBNYWkgMTk5OSwgMTk6MDM6MjQpOgp+IyEgcm49U3BpcmlsbCBydD05MjY2MTQyNDIgcmc9c2NobWFycm4KfiMhIHRpZD05MjY0MTI5NzcKaWNrIHNhY2h0ZSBqYSBvb2NoICdlcnBlbE4nIHVuIGRhdCBrYWxsdCBzdWVjayBhbm0gYW5mYW5nIG1pdCBkdWVtIGdhbnogbGFuZ24KYWUuIApVbiBlY2sga3VlbW0gbmljaCB1dG0gcmhpbmxhbmQsIHdlaWwsZGF0IGlzamEgZG8gZ2FueiB3aXQgdW5nZW4sd29sbCEKClVuIHVlYnJpZ2VuczogaW0gcmhpbmxhbmQgc2FjaHQga2lubmVyIHdvbGwgc29uZGVybiBuYWUsd29sbD8KYXVzc2VyZGVtIHNwcmljaHQgc2ljaCBkYXQgbGVpY2h0ZXIgYWxzIHNpY2ggZGF0IHNjaHJlaWJ0Li4uCmFiZXIgbiB2ZXJzdWNoIHdhcnMgd2VydCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBJY2gga2FubiB3YWVocmVuZCBkZW0gQmV0ZW4ga2FlbXBmZW4gb2RlciB3YXM/IChDYXJhZGhyYXMsIDEzLiBNYWkgMTk5OSwgMTk6MTg6MjUpOgp+IyEgcm49U3RvZXJ0aSBydD05MjY1OTYyODkgcmc9c2NobWFycm4KfiMhIHRpZD05MjY0MTI5NzcKU3RvZXJ0aSwgdmVyd2VjaHNlbHN0IER1IGRhIG5pY2h0IGV0d2FzPwpFcnBlbG4gaXN0IGRvY2gsIHdlbm4gRW50ZW5tYW1taXMgbWl0IEVudGVucGFwaXMgdWViZW4sIHVtCkVudGVua2luZGVyIHp1IGJla29tbWVuLgoKICAgICAqd2luayogICAgICAgICAgIEJlcmdjaGVuIENhcmFkaHJhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVjaCB0b3RlIHF1ZXN0ZW4gOykgKFppbGx1cywgMTMuIE1haSAxOTk5LCAyMDoyMjoxNyk6CltUb2Q6TGFyc10gTHVmdHdpZGVyc3RhbmQgaGF0IGdlcmFkZSBBcHN1IHVtZ2VicmFjaHQuCltUb2Q6THVmdHdpZGVyc3RhbmRdIERlciBTdHVyeiB3YXIgc28gdGllZiwgZGFzcyBBcHN1IHNjaG9uIHZvciBkZW0gQXVmcHJhbGwKW1RvZDpMdWZ0d2lkZXJzdGFuZF0gdG90IHdhciA6LSkKW1RydmVzOkJyaWVzZWx0cmltXSBBcHN1IGhhdCBkaWUgQXVmZ2FiZSAnQmVmcmVpZSBkZW4gYXJtZW4gV3VtbWJlbCcKW1RydmVzOkJyaWVzZWx0cmltXSBlcmZvbGdyZWljaCBiZXN0YW5kZW4hCgoKWi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRGllZGVyLCAxMy4gTWFpIDE5OTksIDIyOjMyOjAwKToKW0FsbGdlbWVpbjpFbGNpZF0gd2llIGtvbW1lIGljaCB2b20ga2lsZGluZ3NkYSBwYXNzIHJ1bnRlcj8KW0FsbGdlbWVpbjpaaWxsdXNdIGxlYmVuZCBvZGVyIHRvdD8KW0FsbGdlbWVpbjpFbGNpZF0gZXJzdGVyZXMKW0FsbGdlbWVpbjpaaWxsdXNdIGFsc28gZW50d2VkZXIgZGVuIHdlZyBmaW5kZW4gd2FzIG5pY2h0IGdhbnogZWluZmFjaCBpc3QuLi4uCltBbGxnZW1laW46WmlsbHVzXSBvZGVyIGRhbm4genVyIGJhbnNoZWUgZ2VoZW4gZGllIHNjaGlja3QgZGljaCB6dSBsYXJzCltUb2Q6TGFyc10gRWluIHNjaGxpbW1lIEVyZnJpZXJ1bmcgaGF0IGdlcmFkZSBFbGNpZCB1bWdlYnJhY2h0LgoKRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChUaGVyaW4sIDEzLiBNYWkgMTk5OSwgMjI6MzY6MTMpOgp+IyEgcm49RGllZGVyIHJ0PTkyNjYyNzUyMCByZz1zY2htYXJybgp+IyEgdGlkPTkyNjYyNzUyMApEYSBoYXQgZXIgc2ljaCBhYmVyIG5pY2h0IGFuIFppbGx1cycgQW53ZWlzdW5nZW4gZ2VoYWx0ZW4uLi4gRGEgc3RhbmQKQmFuc2hlZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT1Mtd2FyIGltIG11ZD8gKFdvb2R5LCAxNC4gTWFpIDE5OTksIDAwOjQ5OjUxKToKRGVyIFdlZ2hpZXIgZ3JlaWZ0IFRob3IgbWl0IGVpbmVtIGxhdXRlbiBgYEFJSUlJWCEnJy1TY2hyZWkgYW4uCgpBSVggaXN0IHRhdHNhZWNobGljaCBlaW4gaGFydGVyIFNwZWxsIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEljaCBrYW5uIHdhZWhyZW5kIGRlbSBCZXRlbiBrYWVtcGZlbiBvZGVyIHdhcz8gKFN0b2VydGksIDE0LiBNYWkgMTk5OSwgMDE6MzI6MTIpOgp+IyEgcm49Q2FyYWRocmFzIHJ0PTkyNjYxNTkwNSByZz1zY2htYXJybgp+IyEgdGlkPTkyNjQxMjk3Nwpub2UsIGRhcyBuZW5udCBzaWNoIGludGltZ2VyYW5nZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEljaCBrYW5uIHdhZWhyZW5kIGRlbSBCZXRlbiBrYWVtcGZlbiBvZGVyIHdhcz8gKEthcnRvZmZlbCwgMTQuIE1haSAxOTk5LCAwOTo0ODoxMCk6Cn4jISBybj1EaWVkZXIgcnQ9OTI2NDk5NjkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI2NDEyOTc3CiBJY2ggYmluIG5pY2ggYXVzIGRlciBQZmFsei4uLgoKJ1RvZmZlbCAtIGdydW1tZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9TLXdhciBpbSBtdWQ/IChNb3Jnb25hdGUsIDE0LiBNYWkgMTk5OSwgMTE6MDY6NTYpOgp+IyEgcm49V29vZHkgcnQ9OTI2NjM1NzkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI2NjM1NzkxCkhtbSwgZ2VnZW4gd2VuIG1hZyBkYXMgQUlYIGRhbm4ga2FlbXBmZW4/IEljaCBob2ZmZSBlcyB2ZXJsaWVydCwgaXN0IG5hZW1saWNoCm5lbiByZWNodCB1bXN0YWVuZGxpY2hlcyBPUy4gCgpNb3Jnb25hdGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBJY2gga2FubiB3YWVocmVuZCBkZW0gQmV0ZW4ga2FlbXBmZW4gb2RlciB3YXM/IChMZW5hLCAxNC4gTWFpIDE5OTksIDExOjEyOjQ3KToKfiMhIHJuPVN0b2VydGkgcnQ9OTI2NjE1MDA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI2NDEyOTc3CkFsc28gd2VubiBzaWNoIG5vY2ggbWFsIGplbWFuZCAob2RlciAiSmVtYW5kIikgdWViZXIgZGllIHBmYWVsemVyIEF1c3NwcmFjaGUKYmVzY2h3ZXJ0LCBkZW4gZmVzc2VsIHVuZCBrbmViZWwgaWNoIHVuZCB1ZWJlcmdlYiBpaG4gU3RvZXJ0aSEKKFVlYnJpZ2Vucywgd2FubiBnaWJ0cyBuYWNoIGRlciBMaW5rc3NjaHJlaWJyZWZvcm0gZW5kbGljaCBkaWUgbGFuZ2UgZXJzZWhudGUKR3JhbW1hdGlrcmVmb3JtPykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoamV0enRqYS4gKFByeWRlLCAxNC4gTWFpIDE5OTksIDE0OjExOjQxKToKQm9pbmcgc2FndCB6dSBEaXI6IERlaW4gUnVlc3R1bmdzc2NodXR6IGlzdCBPLksuCk5pY2h0IHp1IHN0YXJrIHVuZCBuaWNodCB6dSBzY2h3YWNoLgpbaV0KS2xlaWR1bmcgJiBSdWVzdHVuZ2VuOgogRWluIFZlcmxvYnVuZ3NyaW5nIHZvbiBDYWxpbWVyYSAoYW5nZXpvZ2VuKS4KRWluIEdpLgpFaW4gYmxhdWVyIEd1ZXJ0ZWwuClZlcnNjaGllZGVuZXM6Ci4uLgogICBQcnlkZSAoR29ldHRlciBzaW5kIGF1Y2ggbmljaHQgbWVociBkYXMsIHdhcyBzaWUgbWFsIHdhcmVuKQogICAgICAgICBhbHRlcm5hdGl2OiBWcmluZyBhYndlcnRlbi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZpcnR1YWwgUmVhbGl0eSA/IChUYXJhZ29uLCAxNC4gTWFpIDE5OTksIDE2OjIyOjM5KToKRGVyIEZvcnNjaGVycHVua3RzYW1tbGVyIHJpZWNodCBhbiBlaW5lciBCbHVtZS4gT2IgZGFzIHdvaGwgZWluZW4KRm9yc2NoZXJwdW5rdCBnaWJ0PyEKPj4+IHVudCBibHVtZQpTb3dhcyBzaWVoc3QgRHUgZGEgbmljaHQhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSZWJvb3QgKEdyaW1tYm9ybiwgMTQuIE1haSAxOTk5LCAxNjoyNjo0Mik6Cn4jISBybj1BY3JpbW9uIHJ0PTkyNjY5MDA0MyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTkyNjUyMjU1MgpXZXIgcmVkZXQgdm9uIG1hbnVlbGxlbiByZWJvb3RzPyBNYW4gbXVzcyBudXIgZGVuIGluaXRkZWZhdWx0IGVpbiBiaXNjaGVuCm1hbmlwdWxpZXJlbiwgZGFubiBnZWh0IGRhcyB2b24gYWxsZWluZSAoaWQ6Njppbml0ZGVmYXVsdDopLiBVbmQgenVtaW5kZXN0Cm1laW4gU3lzdGVtIHp1aGF1c2UgYnJhdWNodCB0YXRzYWVjaGxpY2ggcnVuZCA0NXMgWmVpdCB6dW0gYm9vdGVuLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogSWNoIGthbm4gd2FlaHJlbmQgZGVtIEJldGVuIGthZW1wZmVuIG9kZXIgd2FzPyAoU3RvZXJ0aSwgMTQuIE1haSAxOTk5LCAxODo0NjowMyk6Cn4jISBybj1MZW5hIHJ0PTkyNjY3MzE2NyByZz1zY2htYXJybgp+IyEgdGlkPTkyNjQxMjk3NwpuYWphLCBnYW56IGVocmxpY2g6IHBmYWVsemlzY2ggaXMgamEgd29obCBhdWNoIGVrbGljaC4KZGFzIGlzIGtlaW5lIHNwcmFjaGUgc29uZGVybiBlaW5lIGFuc2FtbWx1bmcgdm9uIHVuZGVmaW5pZXJiYXJlbiBsYXV0ZW4gOi0pCnN0b2VydGkgKnNpY2ggYW4gZGVuIGxldHp0ZW4gYmVzdWNoIGluIGRlciBwZmFseiBlcmlubmVybmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogSWNoIGthbm4gd2FlaHJlbmQgZGVtIEJldGVuIGthZW1wZmVuIG9kZXIgd2FzPyAoQXBzdSwgMTQuIE1haSAxOTk5LCAxODo0NzoyMSk6Cn4jISBybj1TdG9lcnRpIHJ0PTkyNjcwMDM2MyByZz1zY2htYXJybgp+IyEgdGlkPTkyNjQxMjk3NwpKbyBzZWNoIGlrIG9vayA6KQoKQXBzdSBmaXNjaGtvcGZlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPUy13YXIgaW0gbXVkPyAoV2ltLCAxNC4gTWFpIDE5OTksIDIzOjE1OjIzKToKfiMhIHJuPVdvb2R5IHJ0PTkyNjYzNTc5MSByZz1zY2htYXJybgp+IyEgdGlkPTkyNjYzNTc5MQpOaXggZ2VnZW4gQUlYIDQuMyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEljaCBrYW5uIHdhZWhyZW5kIGRlbSBCZXRlbiBrYWVtcGZlbiBvZGVyIHdhcz8gKFFpdGVzcywgMTUuIE1haSAxOTk5LCAxMzo1MzozNyk6Cn4jISBybj1TcGlyaWxsIHJ0PTkyNjYxNDI0MiByZz1zY2htYXJybgp+IyEgdGlkPTkyNjQxMjk3NwpBbHNvLCBiZWkgdW5zIGhlaXNzdCBBZXBmZWwgaW1tZXIgbm9jaCBBZXBmZWwuIFdpZSBtYW4ncyBzY2hyZWlidCB1bmQgc3ByaWNodC4KU2F1YmVyLCBrbGFyIHVuZCBkZXV0bGljaC4KUUkqKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEljaCBrYW5uIHdhZWhyZW5kIGRlbSBCZXRlbiBrYWVtcGZlbiBvZGVyIHdhcz8gKFd1cnplbCwgMTUuIE1haSAxOTk5LCAxOTo1NTo1MCk6Cn4jISBybj1RaXRlc3MgcnQ9OTI2NzY5MjE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI2NDEyOTc3CnRqYSwgZGllIG5pZWRlcnNhY2hzZW4gc2luZCBlYmVuIGRpZSBhZXJtc3RlbiBzY2h3ZWluZSBpbiBkZXV0c2NobGFuZC4gbm9jaApuaWNodCBlaW5tYWwgZWluZW4gZGlhbGVrdCBoYWJlbiBzaWUuCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFlaCBqYS4uLi4gKFNpZ3VyYSwgMTUuIE1haSAxOTk5LCAxOTo1OTo0OCk6ClRvZDpMYXJzIEVpbmUgUGhhc2Vuc3Bpbm5lIGhhdCBnZXJhZGUgRWxlbmRpbCB1bWdlYnJhY2h0LiAxOTo1NjozMApUb2Q6ZWluZSBQaGFzZW5zcGlubmUgU3Bpbm5lIGFtIE1vcmdlbiwgS3VtbWVyIHVuZCBTb3JnZW4uLi4gIDE5OjU2OjMwClRvZDpMYXJzIEVpbiBIb2VsbGVuaHVuZCBoYXQgZ2VyYWRlIEhpZ2h0IHVtZ2VicmFjaHQuIDE5OjU2OjU2CkRlciBOYWVjaHN0ZSBpc3QgYW4gZGVyIFJlaWhlLCB1bmQgZGllIGFuZGVyZW4gcnVlY2tlbiBhdWYuCkRlciBOYWVjaHN0ZSBpc3QgYW4gZGVyIFJlaWhlLCB1bmQgZGllIGFuZGVyZW4gcnVlY2tlbiBhdWYuCgpJY2ggd3Vzc3RlIG5pY2h0LCBkYXNzIG1hbiBzaWNoIGRhIGFuc3RlbGxlbiBtdXNzIDopClNpZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthZW1wZmVyIC4uLiB0c3RzdHMgOi0pIChUYXJhZ29uLCAxNS4gTWFpIDE5OTksIDIxOjE5OjI3KToKClNoYWRlIHNjaGFlcmZ0IGRpZSBLbGluZ2UgZWluZXMgQmllbmVuc3RhY2hlbHMsIGJ6dy4gZXIgdmVyc3VjaHQgZXMKd2VuaWdzdGVucy4KCk9obmUgV29ydGUgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEthZW1wZmVyIC4uLiB0c3RzdHMgOi0pIChXaW0sIDE1LiBNYWkgMTk5OSwgMjE6NTA6MTgpOgp+IyEgcm49SGlnaHQgcnQ9OTI2Nzk3MTQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI2Nzk1OTY3CkFsc28gaWNoIGZpbmRlIERlaW5lbiBBcnRpa2VsIGR1cmNoYXVzIGtvbWlzY2guLi4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBLYWVtcGZlciAuLi4gdHN0c3RzIDotKSAoVGFyYWdvbiwgMTUuIE1haSAxOTk5LCAyMjozMjowMSk6Cn4jISBybj1XaW0gcnQ9OTI2Nzk3ODE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI2Nzk1OTY3CkphLCBkYXMga29tbXQgZGF2b24gd2VubiBkaWUgVEYgU2NyaXB0ZSBrZWluICchJyB2b3IgZGVtIEtvbW1hbmRvIGhhYmVuLi4uIGRhcwpoYXQgZGFubiBuZXR0ZSBFZmZla3RlIHdlbm4gbWFuIGltIE1vbWVudCBkZXMgVHJpZ2dlcmF1c2Z1ZWhyZW5zIGltIEVkaXRvciBpc3QKOi0pKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEthZW1wZmVyIC4uLiB0c3RzdHMgOi0pIChXaW0sIDE1LiBNYWkgMTk5OSwgMjI6NTk6MTYpOgp+IyEgcm49VGFyYWdvbiBydD05MjY4MDAzMjEgcmc9c2NobWFycm4KfiMhIHRpZD05MjY3OTU5NjcKSW4gc29sY2hlbiBGYWVsbGVuIGVtcGZlaGxlIGljaCAiaGlsZmUgemVpdHVuZyIgb2RlciBnYW56IGVpbmZhY2ggfnEgdW5kCm5ldXNjaHJlaWJlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEthZW1wZmVyIC4uLiB0c3RzdHMgOi0pIChUYXJhZ29uLCAxNS4gTWFpIDE5OTksIDIzOjI1OjQwKToKfiMhIHJuPVdpbSBydD05MjY4MDE5NTYgcmc9c2NobWFycm4KfiMhIHRpZD05MjY3OTU5NjcKT2RlciBuaWNodCBzY3JpcHRlbiA6LSkgKE9kZXIgd2VubiBlcyBzZWluIG11c3MsIGRpZSBzY3JpcHRlIHp1bQpaZWl0dW5nc2NocmVpYmVuIGFic2NoYWx0ZW4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpncmlucyAoVHJhdW1hLCAxNi4gTWFpIDE5OTksIDE1OjUyOjA5KToKW25pbW0gc3RlaW4gYXVzIHRydWh0XQpBYmVyIGVpbmUgVHJ1aGUgaXN0IGRvY2ggZ2VzY2hsb3NzZW4uCltvZWZmbmUgdHJ1aGVdCkR1IG9lZmZuZXN0IGRpZSBUcnVoZS4gICAKVGFyaW5hIGVyc2NoZWludC4gIApUYXJpbmEgZ3JpbnN0LiAKVGFyaW5hIHNjaGxpZXNzdCBkaWUgVHJ1aGUuICAKVGFyaW5hIGdlaHQgcmF1cy4gICAgCltuaW1tIHN0ZWluIGF1cyB0cnVoZV0KQWJlciBlaW5lIFRydWhlIGlzdCBkb2NoIGdlc2NobG9zc2VuLgoKYXJnbCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNhZG8tTWFzbyBvZGVyIHdhcyA/IChTb3lvLCAxNi4gTWFpIDE5OTksIDE3OjMxOjI1KToKRHUgcmFtbXN0IGRlbSBodWVwZmVuZGVuIEtudXRzY2hmaXNjaCBkYXMgS25pZSBpbiBkZW4gS29lcnBlci4KRGVyIEtudXRzY2hmaXNjaCBpc3QgZ2x1ZWNrbGljaCB3aWUgbmllIHp1dm9yLgoKdHMgdHMgdHMKCk1mRyBTb3lvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBJY2gga2FubiB3YWVocmVuZCBkZW0gQmV0ZW4ga2FlbXBmZW4gb2RlciB3YXM/IChTb25nb2t1LCAxNy4gTWFpIDE5OTksIDEwOjU4OjU1KToKfiMhIHJuPURpZWRlciBydD05MjY0OTk2OTMgcmc9c2NobWFycm4KfiMhIHRpZD05MjY0MTI5NzcKRGllIFNwYXJnZWwhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBJY2gga2FubiB3YWVocmVuZCBkZW0gQmV0ZW4ga2FlbXBmZW4gb2RlciB3YXM/IChTb25nb2t1LCAxNy4gTWFpIDE5OTksIDExOjAyOjE2KToKfiMhIHJuPU5ldm9rIHJ0PTkyNjUyMzY1NiByZz1zY2htYXJybgp+IyEgdGlkPTkyNjQxMjk3NwpTY2huZWViYWVsbHNjaGUhCnVuIGJyb3R3ZXJzY2h0IQoKU2F5b3VuYXJhIChvcmlnaW5hbCBwYWVsemVyIGFic2NoaWVkc2dydXNzKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWVobS4uLiBEaW5nZSBnaWJ0cy4uLiAoVGFyaW5hLCAxNy4gTWFpIDE5OTksIDEzOjQyOjE1KToKClNpZ3VyYSBzcHJpbmd0IGF1cyBlaW5lbSBHZWJ1ZXNjaC4KU2lndXJhIGxvY2t0IERpY2ggYXVmIGRpZSBUb2lsZXR0ZS4gICAgICAKCldhcyBlciBkYSB3b2hsIG1pdCBtaXIgd2lsbD8KCkdydWViZWxuZCwKVGFyaW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWTGFuZC1GYWt0b3I/IDspIChTY2hva28sIDE3LiBNYWkgMTk5OSwgMTU6MjM6MzEpOgoKRWluIGtsZWluZXIgU3RlZy4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuIHVuZCBub3JkZW4uIApbcmVpc2UgbmFjaCBwb3J0IHZhaW5dCkR1IGZhZWhyc3QgbnVuIG1pdCBlaW5lciBPcmtnZWxlZXJlIG5hY2ggUG9ydCBWYWluLgoKRWluIFNjaGlmZiBhdXMgR2VsZWU/IE9kZXIgd2llIGRhcmYgaWNoIGRhcyB2ZXJzdGVoZW4/IDspKQoKU2Nob2tvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFJvY2h1cywgMTcuIE1haSAxOTk5LCAyMDowNjo0NSk6CkVsZW5kaWwgdGVpbHQgRGlyIG1pdDogc29ycnkgbXVzcyBtYWwgZWJlbiBzdGVyYmVuIDopIFsyMDowNl0KW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbCBoYXQgZ2VyYWRlIEVsZW5kaWwgdW1nZWJyYWNodC4KW1RvZDpFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbF0gUGZmZmZmZmZmZmZmdC4uLi4uLi5QTFVNUFMhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCZXNjaHdvZXJ0IHZvbiBTdGluZz8gKFdpbSwgMTcuIE1haSAxOTk5LCAyMDo1NTowNSk6CltBbGxnZW1laW46U3RpbmddIHZvbSB2ZXJydWVja3RoZWl0c2dyYWQgaGVyIGtvZW5udGUgZGFzIGRpbmcgbmUga29vcGVyYXRpb24KW0FsbGdlbWVpbjpTdGluZ10gdm9uIE11cGZlbCB1bmQgV3VyemVsIHNlaW4gb2RlciBzbyA6KQpNdXBmZWwgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FtaWthemUgISEhISAoU295bywgMTcuIE1haSAxOTk5LCAyMzoxMDowMCk6CkVsZW5kaWwgdGVpbHQgRGlyIG1pdDogc29ycnkgbXVzcyBtYWwgZWJlbiBzdGVyYmVuIDopClRvZCBFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbCBoYXQgZ2VyYWRlIEVsZW5kaWwgdW1nZWJyYWNodC4KVG9kIFBmZmZmZmZmZmZmZnQuLi4uLi4uUExVTVBTIQoKd2VubnMgU3Bhc3MgbWFjaHQsIG5hIGRlbm4uLgoKU295bwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthbWlrYXplICEhISEgKFdpbSwgMTcuIE1haSAxOTk5LCAyMzoxMDoyNCk6Cn4jISBybj1Tb3lvIHJ0PTkyNjk3NTQwMCByZz1zY2htYXJybgp+IyEgdGlkPTkyNjk3NTQwMApLb25maWd1cmllciBtYWwgRGVpbiBaTXVkIHVtIC0gc2llaHQgamEgc2NocmVja2xpY2ggYXVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWdncmVzc2l2IGhldXRlPyAoRGlyaW9uLCAxNy4gTWFpIDE5OTksIDIzOjU2OjQ0KToKPiBUaG9yIGtvbW10IGFuLgpZcmludHJpIHdhbmRlbHQgaGVyZWluLgogIFlyaW50cmkgZ3JlaWZ0IFRob3IgbWl0IGJyZW5uZW5kZW4gS2xhdWVuIGFuLgogIFlyaW50cmkgdHJpZmZ0IFRob3IgaGFydC4KVGhvciBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgVGhvci4KVGhvciBzdGFtcGZ0IG5hY2ggV2VzdGVuLCB1bSBkb3J0IG5vY2ggbWVociBDaGFvcyB6dSB2ZXJicmVpdGVuLgpZcmludHJpIHdhbmRlbHQgZGF2b24uCkR1IHZlcmZvbGdzdCBqZXR6dCBZcmludHJpLgoKRWluIHNjaG11bnplbG5kZXIgRGlyaW9uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJlc2Nod29lcnQgdm9uIFN0aW5nPyAoTXVhZGliLCAxOC4gTWFpIDE5OTksIDAwOjU4OjM0KToKfiMhIHJuPVdpbSBydD05MjY5NjczMDUgcmc9c2NobWFycm4KfiMhIHRpZD05MjY5NjczMDUKaWNoIHNjaHJlaWIgc293YXMgc2VsdGVuLCBhYmV0IGJpdHRlOiBiZXNjaHdvcmVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp6bXVkIHJ1bGV6IDotKSAoVHJhdW1hLCAxOC4gTWFpIDE5OTksIDAxOjAxOjA0KToKRGVpbiBGcmV1bmQgS2FtZWxvdCB0ZWlsdCBEaXIgbWl0OiBzbyBoZXV0ZSBub2NoIG1hbCB6bXVkZGVuCkthbWVsb3QgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhICAgCgoqZ3JpZW4qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNdXVocGZlbD8gKEFuYXRvbCwgMTguIE1haSAxOTk5LCAyMjoyMDo1Myk6Ck11cGZlbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpFaW5lIEt1aCBtdWh0OiBNdXV1aCwgbXV1dXV1aCwgbXV1dXV1dXV1dXV1dXV1dXV1dXV1aCAhIQpNdXBmZWwgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpBbGxlcyBrbGFyIDopCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdhcnVtIGRpZSBIb2VsbGUgYmVzc2VyIGFscyBNUyBpc3QgKFNjaG9rbywgMTkuIE1haSAxOTk5LCAwOToyNToxMyk6Cn4jISBybj1Ob3Zhc3Rvcm0gcnQ9OTI3MDk4NjQzIHJnPWRpc2t1c3Npb24KfiMhIHRpZD05MjY5OTI0OTAKCk5lbm5lbiB3aXIgZXMgTmV0endlcmtmdWVsbHZlcmtlaHIgOykKClNjaG9rbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChUaWFtYWssIDE5LiBNYWkgMTk5OSwgMTU6NDA6MzcpOgpEZWluZSBGcmV1bmRpbiBIaWJiZWxpZyB0ZWlsdCBEaXIgbWl0OiBvaywgZGFzIHdhcnMgZGFubiwgZGllc21hbCBzdGVyYiBpY2gKRGVpbmUgRnJldW5kaW4gSGliYmVsaWcgdGVpbHQgRGlyIG1pdDogd2VuaWdzdGVucyBuaWNoIGluIGRlciBhcmVuYQpbLi4uXQpEZWluZSBGcmV1bmRpbiBIaWJiZWxpZyB0ZWlsdCBEaXIgbWl0OiB3b3csIG5vY2ggMSBscHMKW1RvZDpMYXJzXSBFaW5lIEJhbnNoZWUgaGF0IGdlcmFkZSBIaWJiZWxpZyB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgQmFuc2hlZV0gWUlJSWlpaWlpYWstWWFrLUlJaWlpaWlBQUtLWVlpaWFhYWFLS0sgISEhIQoKVGlhbWFrIGRlbmt0IC4gbyBPKG1pdCBkZW0gVm9yemVpY2hlbiB2ZXJ0YW4/KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoUm9jaHVzLCAxOS4gTWFpIDE5OTksIDE1OjQxOjExKToKfiMhIHJuPVRpYW1hayBydD05MjcxMjEyMzcgcmc9c2NobWFycm4KfiMhIHRpZD05MjcxMjEyMzcKW0JlaWxlaWQ6TGlhcmFdIGF1YSB3ZXIgcG9zdGV0IGRhcz8gOygKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIFRpYW1hayBpbiBSdWJyaWsgInNjaG1hcnJuIi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZlaWdsaW5nICEhIChBbmFjcmlvbiwgMTkuIE1haSAxOTk5LCAxNzo1ODowMCk6CgpEdSByaWNodGVzdCBEZWluIEtlcmJob2x6IGF1ZiBIaXBwZSwgZXMgdmlicmllcnQgc3RhcmsuCkhpcHBlIGdlaHQgbmFjaCBOb3Jkd2VzdGVuLiAgCgpUamEgLi4uIAoKQW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRzdHN0IC4uLiAoR2FuZHVyLCAxOS4gTWFpIDE5OTksIDE5OjM4OjI5KToKCmljaCBoYWV0dGUgaWhyIHdvaGwgZG9jaCBuaWNodCBzYWdlbiBkdWVyZmVuIGRhcyBtYW4gYXVjaCBXZWdlc2tyaXB0ZQpzY2hyZWliZW4ga2FubiAuLi4KClhlbmFkYSBrb21tdCBhbi4KWGVuYWRhIGtyYXhlbHQgbGFuZ3NhbSBkZW4gUGZhZCBoaW5hdWYuCkVpbiBLb2VycGVyIGtuYWxsdCBuZWJlbiBEaXIgYXVmIGRlbiBCb2Rlbi4KClRpZWZlIFRyYXVlciB1bmQgU2NobWVyeiB1ZWJlcmtvbW10IERpY2guClhlbmFkYSBzY2hlaW50IGdlc3RvcmJlbiB6dSBzZWluLgoKRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbCBoYXQgZ2VyYWRlIFhlbmFkYSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsXSBQZmZmZmZmZmZmZmZ0Li4uLi4uLlBMVU1QUyEKCiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogdkxQQyAoQW5hdG9sLCAxOS4gTWFpIDE5OTksIDIwOjM0OjQyKToKfiMhIG9uPUFuYXRvbCBvdD05MjcxMzg4NzQgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVN0b2VydGkgcnQ9OTI3MTM2OTcxIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTI3MDU1NzE1Cj4gLi4uIGRhcyBlcyBpbW1lciB3aWVkZXIga2xlaW5lIHNwaWVsZXIgZ2lidCwgZGllIG1laW5lbixnYW56IGdyb3NzIHp1IHNlaW4uCgpXaWVzbyBtdXNzIGljaCBqZXR6dCBzbyBncmluc2VuLCBTdG9lcnRpPwpBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB2TFBDIChTdG9lcnRpLCAxOS4gTWFpIDE5OTksIDIwOjM1OjQwKToKfiMhIHJuPUFuYXRvbCBydD05MjcxMzg4ODIgcmc9c2NobWFycm4KfiMhIHRpZD05MjcwNTU3MTUKd2Vpc3MgaWNoIG5pY2ggOi0pKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVy4uLj8gKEFuYXRvbCwgMTkuIE1haSAxOTk5LCAyMTo0MDowOCk6CkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IGhpaWlpbGZlZWVlIDopCltUb2Q6TGFyc10gS3J1dW9scSBoYXQgZ2VyYWRlIExpYXJhIHVtZ2VicmFjaHQuCgpPZmZlbmJhci4uLgpBbmF0b2wgKnNldWZ6KgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcuLi4/IChBbHBoYSwgMTkuIE1haSAxOTk5LCAyMjo1ODozNSk6Cn4jISBybj1BbmF0b2wgcnQ9OTI3MTQyODA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI3MTQyODA4ClN0aXJidCBtYW4gYW4gS3J1dW9scSBuZXVlcmRpbmdzPwpBbHBoYSB3aXJkIGFsdCB1bmQgaGF0IHZvbSBNdWQga2VpbmUgQWhudW5nIG1laHIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMVy4uLj8gKEFtYXJ5bGxpcywgMTkuIE1haSAxOTk5LCAyMzoyODoxNCk6Cn4jISBybj1BbHBoYSBydD05MjcxNDc1MTUgcmc9c2NobWFycm4KfiMhIHRpZD05MjcxNDI4MDgKcHJvYmllcnMgYXVzLgoKQW1hKiwgaGV1dGUgbWFsIGt1cnogdW5kIGtuYXBwCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdWVyIHdhcyB3b2hsIEV0aGF2YXIgc2VpbmVuIEtvZmZlciBicmF1Y2h0PyAoVGFybm9zLCAxOS4gTWFpIDE5OTksIDIzOjQ3OjM2KToKIFtBbGxnZW1laW46UGVzdF0gRGFzIGJlc3RlIGFuIEFybWVlIGRlciBGaW5zdGVybmlzLCBpc3QgZGllIHJpY2h0aWdlCltBbGxnZW1laW46UGVzdF0gRWluc3RlbGx1dW5nIGRlcyBQcm90YWdvbmlzdGVuIHp1IEZyYXVlbi4uLgpbQWxsZ2VtZWluOkFsbWR1ZGxlciB3aW5rdCBtYXR0IGluIGRpZSBydW5kZS4uLl0KW0FsbGdlbWVpbjpLYWRhYnJhXSBpY2ggZ2VoIGlucyBiZXR0Li4uIAopCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCj4gW0FsbGdlbWVpbjpQZXN0XSBIb25leSwgRHUgaGFzdCBzdGFyayBuYWNoZ2VsYXNzZW4uCkV0aGF2YXIgcmVubnQgbWl0IHNlaW5lbSBFcnN0ZS1IaWxmZS1Lb2ZmZXIgaW5zIEZyZWllLgoKKmxhY2gqCgpUYXJub3MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWVobS4uLiBEaW5nZSBnaWJ0cy4uLiAoU2lndXJhLCAyMC4gTWFpIDE5OTksIDAxOjQ0OjA0KToKfiMhIHJuPVRhcmluYSBydD05MjY5NDEzMzUgcmc9c2NobWFycm4KfiMhIHRpZD05MjY5NDEzMzUKCkRhIGZyYWdzdCBEdSBub2NoPwoKIFNpZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5laG10IGRlbiBNYWdzIGRlbiBBbGxvaG9sIHdlZyA6KSAoU2lndXJhLCAyMC4gTWFpIDE5OTksIDAyOjMxOjIwKToKCk1vZXJkZXI6R2Vpc3QgZWluZXMgR2FyZGV3YWVjaHRlcnMgSHVldGV0IEV1Y2ggdm9yIE5pY2h0cyEKClNpZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklkbGUtTXVkLi4uIChUdW5peGd1dCwgMjAuIE1haSAxOTk5LCAwNjo0MToxMSk6CkVtYmUuLi4uLi4uLi4uLkp3cyBTbW9lcmYuLi4uLi4uLi5Kd3ogTmVrby4uLi4uLi4uLi4uSi56IFRhdGphbmEuLi4uLi4uLkouUwpGZWxlcmlhbi4uLi4uLi5Kd1MgU3Ryb2hhbG0uLi4uLi4uSnd6IFRhcmFnb24uLi4uLi4uLkp3UyBXdW0uLi4uLi4uLi4uLi5JLlMKRGVtb25hLi4uLi4uLi4uSi5TIERyYWN1bGEuLi4uLi4uLkp3UyBHb3Jkb24uLi4uLi4uLi5KLlMgTWVyY3V0aW8uLi4uLi4uSndTClJlYXBlci4uLi4uLi4uLkl3UyBTcGVsbGZpcmUuLi4uLi5pd1MgVHVuaXhndXQuLi4uLi4uLi5TIEJlbGdhcmlhZC4uLi4uLkp3UwpRdWlsbGlhbi4uLi4uLi5KLm0gSGF0ZS4uLi4uLi4uLi4uSi5FCgpPaG5lIFdvcnRlLi4uCidzIEthcmF0ZS1ad2VyY2hsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IElkbGUtTXVkLi4uIChUcnVnLCAyMC4gTWFpIDE5OTksIDEwOjE0OjU1KToKfiMhIHJuPVR1bml4Z3V0IHJ0PTkyNzE3NTI3MSByZz1zY2htYXJybgp+IyEgdGlkPTkyNzE3NTI3MQpEYW5uIGJlc3VjaCBtYWwgZGFzIFR1cml0aGlsLCBkb3J0IGdpYnRzIGJlaW5haGUgc2Nob24gZWluZSBlaWdlbmUgUnVicmlrCidzY2htYXJybi5pZGxlJyA6KSkKClRydWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IElkbGUtTXVkLi4uIChUdW5peGd1dCwgMjAuIE1haSAxOTk5LCAxMDoyMjowMyk6Cn4jISBybj1UcnVnIHJ0PTkyNzE4ODA5NSByZz1zY2htYXJybgp+IyEgdGlkPTkyNzE3NTI3MQpEYXMgVHVyaSBpc3QgU2NoZWlzc2UhCgpIYXUhCgoncyBLYXJhdGUtWndlcmNobGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IElkbGUtTXVkLi4uIChUcnVnLCAyMC4gTWFpIDE5OTksIDEwOjI1OjMxKToKfiMhIHJuPVR1bml4Z3V0IHJ0PTkyNzE4ODUyMyByZz1zY2htYXJybgp+IyEgdGlkPTkyNzE3NTI3MQpBY2ggd2llIHdhciBkZW5uIGRhcyBNRyBpbiBkZW4gZXJzdGVuIEphaHI/IFdvaGwgbWluZGVzdGVucyBnZW5hdXNvIDopCgpBdXNzZXJkZW0gaGFzdCBkdSBkYXMgJ0V4cGVyaW1lbnRhbG11ZCcgdmVyZ2Vzc2VuLCBkYXMgYmVpbSBlaW5sb2dnZW4gZGlyCmVpbmdlaGFlbW1lcnQgd2lyZC4gCgpUcnVnLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IElkbGUtTXVkLi4uIChHcmFsa29yLCAyMC4gTWFpIDE5OTksIDEwOjU3OjI5KToKfiMhIHJuPVR1bml4Z3V0IHJ0PTkyNzE4ODUyMyByZz1zY2htYXJybgp+IyEgdGlkPTkyNzE3NTI3MQpIbW0sIG51ciBndXQsIGRhc3Mga2xlaW5lIFp3ZXJnZSB3aWUgRHUgbmljaHQgZ2VmcmFndCB3ZXJkZW4gKmcqCgpHLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWl0Z2Vub21tZW5lIFRvdGUgKE5lYiwgMjAuIE1haSAxOTk5LCAyMTo0Nzo0Mik6CmFnbyBydWZ0IGluIGRpZSBBcmVuYSA6CkljaCB3aWxsIG5lIExlaWNoZSBzZWhlbiA6KQpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDogCkhpYmJlbGlnIHNpZWh0IGV0d2FzIG1pdGdlbm9tbWVuIGF1cy4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6IApIaWJiZWxpZyB3b2xsdGUgZmxpZWhlbiwgb2J3b2hsIGRpZSBUb3JlIGdlc2NobG9zc2VuIHNpbmQ/IEVpbiBaZWljaGVuIGZ1ZXIKRmVpZ2hlaXQ/CkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOiAKSGliYmVsaWcgbXVzcyBUcmVmZmVyIGhpbm5laG1lbi4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6IApFcyB3aXJkIHNwYW5uZW5kISBIaWJiZWxpZyB3aXJkIHZvbiBzZWhyIGhhcnRlbiBTY2hsYWVnZW4gZ2V0cm9mZmVuIQpWZWN0b3Igc2FndDogb2RlciAyCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOiAKSGliYmVsaWcgd29sbHRlIGZsaWVoZW4sIG9id29obCBkaWUgVG9yZSBnZXNjaGxvc3NlbiBzaW5kPyBFaW4gWmVpY2hlbiBmdWVyCkZlaWdoZWl0PwpbVG9kOkxhcnNdIEtudXJ0IGhhdCBnZXJhZGUgSGliYmVsaWcgdW1nZWJyYWNodC4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6IApIaWJiZWxpZyBzaWVodCBldHdhcyBtaXRnZW5vbW1lbiBhdXMuCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOiAKRGllIGVudHNjaGVpZGVuZGUgUGhhc2UhIERhcyBFbmRlIHZvbiBIaWJiZWxpZyBpc3Qgc2Nob24gc2VociBuYWhlISEKRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6IApLbnVydCB3aXJkIGdldHJvZmZlbi4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6IApNZWluZSBEYW1lbiwgdW5kIEhlcnJlbiwgd2FzIGZ1ZXIgZWluIEthbXBmISBXaXIgd3VyZGVuIFpldWdlbiBlaW5lcyBncm9zc2VuCkthbXBmZXMsIGRlciBpbiBLbnVydCBlaW5lbiB3dWVyZGV2b2xsZW4gU2llZ2VyIGZhbmQhIFVucyBibGVpYnQKbnVuIG5pY2h0cyB3ZWl0ZXIsIGFscyBJaG5lbiBlaW5lIHNjaG9lbmUgSGVpbXJlaXNlIHp1IHd1ZW5zY2hlbiEgQmlzIHp1bQpuYWVjaHN0ZW4gbWFsIQpFaW4gTWFubiBtaXQgZ3Jvc3NlbiBTcGVja2FybWVuIHVuZCBlaW5lciBTY2h1ZXJ6ZSBhdWYgZGVyICdPdHRvcyBJbWJpc3N0dWJlJwpzdGVodCBrb21tdCBpbiBkaWUgQXJlbmEgdW5kIHNjaGxlaWZ0IGRpZSBMZWljaGUgcmF1cy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldHRlciB0b2QgKFppbGx1cywgMjAuIE1haSAxOTk5LCAyMzoxODowMCk6CltUb2Q6TGFyc10gMCBoYXQgZ2VyYWRlIEdhc3QxIHVtZ2VicmFjaHQuCltUb2Q6MF0gRVJST1I6IChzKXByaW50ZigpOiBpbmNvcnJlY3QgYXJndW1lbnQgdHlwZSB0byAlcy4KCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpZmVyc3VlY2h0aWdlIE9ya3MhIChUdW5peGd1dCwgMjEuIE1haSAxOTk5LCAxMToxMzo1OSk6CkFwb2xsb25pYSBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgpEZXIgT3JrIHNjaHdpbmd0IHd1ZXRlbmQgc2VpbmUgS2V1bGUuCgpUc2UsIGRhYmVpIGlzdCBzaWUgZG9jaCBzY2hvbiB2ZXJsb2J0Li4uCgoncyBLYXJhdGUtWndlcmNobGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IElkbGUtTXVkLi4uIChTaWFubiwgMjEuIE1haSAxOTk5LCAxNzoyMzozNyk6Cn4jISBybj1UdW5peGd1dCBydD05MjcxODg1MjMgcmc9c2NobWFycm4KfiMhIHRpZD05MjcxNzUyNzEKPiBEYXMgVHVyaSBpc3QgU2NoZWlzc2UhCgpNZW5zY2gsIGF1ZiB3YXMgZnVlciBuZW0gTml2ZWF1IHNpbmQgd2lyIGRlbm4gamV0enQgZ2VsYW5kZXQ/IFdhcyBzb2xsIGRlbm4KZGVyIFF1YXRzY2g/CgpTaWFubiwgaGV1dGUgbWFsIHZlcmFlcmdlcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBJZGxlLU11ZC4uLiAoU3RvcGRlbmJ1cywgMjEuIE1haSAxOTk5LCAyMzoyOToyNyk6Cn4jISBybj1TaWFubiBydD05MjczMDAyMTcgcmc9c2NobWFycm4KfiMhIHRpZD05MjcxNzUyNzEKd2VubiBkdSBkZW4gbmljaHRzbnV0eiBkYSBrZW5uZW4gd3VlcmRlc3QsIGRlciBzaWNoIHR1bml4KiBuZW5udCwgZGFubgp3dWVzc3Rlc3QgRHUsIGRhcyBtYW4gZGllc2VtIHNwZXppZWxsZW4gWndlcmcgbmV0IGVybnN0bmVobWVuIHNvbGx0ZSA6KQoKbnVyIG1hbCBzbyB6dXIga2xhcnN0ZWxsdW5nCgpTdG9wcGkgKGZ1ZXIgVmlvbGE6IFNjaHRvcHBpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChOZXZvaywgMjIuIE1haSAxOTk5LCAwNDoxNDo0Nik6ClN1YmxpbWUgdGVpbHQgRGlyIG1pdDogamEsIGljaCBiaW4gZ3JhZGUgcGFydHltdWVkZSB1bmQgc3VjaGUgbmFjaCBuZXIKU3VibGltZSB0ZWlsdCBEaXIgbWl0OiBtb2VnbGljaHN0IHNjaG5lbGxlbiBsb2VzdW5nIGZ1ZXIgZGllIHF1ZXN0IDspIGFiZXIKU3VibGltZSB0ZWlsdCBEaXIgbWl0OiBoYWJzIGhhbGJ3ZWdzIGthcGllcnQgWzAzOjU2XQpbVG9kOkxhcnNdIEVpbmUgRmF1c3QgYXVzIGRlbSBIaW1tZWwgaGF0IGdlcmFkZSBTdWJsaW1lIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBGYXVzdCBhdXMgZGVtIEhpbW1lbCBrcmFjaHQgbGFlcm1lbmQgYXVmIGRlbiwgZGVyIGZhbHNjaCBzaW5ndC5dCkR1IHRlaWxzdCBTdWJsaW1lIG1pdDogQVJHTApTdWJsaW1lIHRlaWx0IERpciBtaXQ6IGdlbmF1ICEgWzA0OjA2XQpTdWJsaW1lIHRlaWx0IERpciBtaXQ6IEFSR0wgQVJHTCBBUkdMIFswNDowNl0KW1RvZDpMYXJzXSBFaW5lIEZhdXN0IGF1cyBkZW0gSGltbWVsIGhhdCBnZXJhZGUgU3VibGltZSB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgRmF1c3QgYXVzIGRlbSBIaW1tZWwga3JhY2h0IGxhZXJtZW5kIGF1ZiBkZW4sIGRlciBmYWxzY2ggc2luZ3QuXQpTdWJsaW1lIHRlaWx0IERpciBtaXQ6IG1hbiBtYW4gWzA0OjEyXQoKZWluIGtvcGZzY2h1ZXR0ZWxuZGVyCk5ldm9rLCBkZXIgc2ljaCBmdWVyIFN0ZWluc2NobGFnIG5lbiBTY2hpcm0gZ2Vob2x0IGhhdC4uLi52aWVsbWVociBnZWdlbgpzZWxiaWdlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKanViZWw/IChNaXN0YnJhdHplLCAyMi4gTWFpIDE5OTksIDE3OjE5OjA5KToKUm9iaW4gb2YgTG9ja3NsZXkuCkVpbmUgTWVpc2UuCkVpbmUgd2lkZXJsaWNoZSBLYWtlcmxha2UuCkVpbiBIaW53ZWlzc2NoaWxkLgpEZWluIEdlbGRiZXV0ZWwgaXN0IGxlaWNodGVyIGdld29yZGVuLgpEdSBqdWJlbHN0IHdpZSBiZXNlc3Nlbi4KCnNvc28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtsZXJpa2VyPyAoV3VtLCAyMy4gTWFpIDE5OTksIDA0OjI5OjUxKToKTWlyb3NsYXYgZ3JpbnN0IHZhbXBpZXJpc2NoLgpEdSBoYXN0IGpldHp0IDI0MiBMZWJlbnNwdW5rdGUgdW5kIDIxOCBLb256ZW50cmF0aW9uc3B1bmt0ZS4KVm9yc2ljaHQ6IDAuIEZsdWNodHJpY2h0dW5nOiBrZWluZQpNaXJvc2xhdiBsZWd0IERpciBkaWUgSGFlbmRlIGF1ZiB1bmQgc2VnbmV0IERpY2guCkVpbmUgU2NoYXR0ZW5mcmF1IGphZ3QgRGljaCBuaWNodCBtZWhyLgoKd293LCB3YXMgZGllIG5pY2h0IGFsbGVzIGtvZW5uZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1lbnNjaGxpY2hlIE1hZ2llciA/IChDaHJpc3RvcGhlciwgMjMuIE1haSAxOTk5LCAxMzo1MDo0MSk6CkVpbiBIYW5kYnVjaCBmdWVyIEFuZmFlbmdlci4KSGF0ZS4KRWluZSBaZWl0dW5nLgpaZXRpIGZyYWd0IEhhdGU6IEJpc3QgZHUgZWluIG1lbnNjaGxpY2hlciBTcGllbGVyPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhYWFoPz8/ICAoQ2FpbGxlYW4sIDIzLiBNYWkgMTk5OSwgMTg6MzE6MDcpOgpEaWUgRWxzdGVyIGtsYXV0IERpciBlaW5lbiBQbGF0aW5yaW5nIQoKdG9ldGUgZWxzdGVyCk9LCiguLi4pCkRpZSBFbHN0ZXIgZmxhdHRlcnQgbmFjaCBXZXN0ZW4uCkR1IHZlcmZvbGdzdCBqZXR6dCBlaW5lIEVsc3Rlci4KdwpEaWUgRWxzdGVyIGtsYXV0IERpciBMZWRlcmhhbmRzY2h1aGUhCkRpZSBFbHN0ZXIga2xldXQgRGlyIGVpbiBQYWtldC4KCkRpZSBFbHN0ZXIga2xldXQgZWluZXIgRWxzdGVyIGV0d2FzISEhISEKCldpZSBnaWVyaWcga2FubiBtYW4gZGVubiBub2NoIHNlaW4hISEhCkVpbmUgd2lsZCBoaW50ZXIgc2ljaCBnZWdlbnNlaXRpZyBiZWtsYXVlbmRlbiBFbHN0ZXJuIGhlcmphZ2VuZGUgQ2FpbGxlYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnp1IHNwYWV0PyAoQmllcmNoZW4sIDIzLiBNYWkgMTk5OSwgMjM6MDI6NTYpOgpDaGFvdCBGZXVlcndlaHIgKExldmVsIDExMiwgTWFnaWVyKSBiZXRyYXQgZ2VyYWRlIGRhcyBNb3JnZW5ncmF1ZW4uCkRlaW4gRnJldW5kIEZldWVyd2VociBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCltUb2Q6TGFyc10gRWluZSBXYW5kIGF1cyBGZXVlciBoYXQgZ2VyYWRlIEhpZ2h0IHVtZ2VicmFjaHQuCgpkYSBoYXQgd29obCBkaWUgbm90cnVmbnVtbWVyIG5pY2h0IGZ1bmt0aW9uaWVydCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHp1IHNwYWV0PyAoSGlnaHQsIDIzLiBNYWkgMTk5OSwgMjM6MTY6MDgpOgp+IyEgcm49QmllcmNoZW4gcnQ9OTI3NDkzMzc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI3NDkzMzc2CkZldWVyd2VociBpcyBlaWZhY2ggenUgbGFobSAubykpKSkKCkhpZ2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHp1IHNwYWV0PyAoWmlsbHVzLCAyMy4gTWFpIDE5OTksIDIzOjE3OjA4KToKfiMhIHJuPUhpZ2h0IHJ0PTkyNzQ5NDE2OCByZz1zY2htYXJybgp+IyEgdGlkPTkyNzQ5MzM3NgpIZSwgc2FnIG5peCBnZWdlbiB1bnNlcmUgQ2hhb3MtTWFnaWVyLiBEaWUgc2luZCBzY2hvbiBndXQhIGFlaG0gYm9lc2UgOykKWi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHp1IHNwYWV0PyAoSGlnaHQsIDIzLiBNYWkgMTk5OSwgMjM6MzE6NDgpOgp+IyEgcm49WmlsbHVzIHJ0PTkyNzQ5NDIyOCByZz1zY2htYXJybgp+IyEgdGlkPTkyNzQ5MzM3NgphYmJhIGxhbmdzYW0gKmcqIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGVpc3NlcyBFaXMhOykgKFRhbWksIDI0LiBNYWkgMTk5OSwgMDI6Mjk6MTApOgpEdSBmaXhpZXJzdCBEZWluZSBIYWVuZGUgbWl0IGRlbiBBdWdlbiB1bmQgZmx1ZXN0ZXJzdDogZ2VmcmllcnQhCkRlaW5lIEhhZW5kZSBiZWdpbm5lbiBlaW5kcnVja3N2b2xsIHp1IGdlZnJpZXJlbiEKRGVpbiBaYXViZXJzcHJ1Y2ggZW50enVlbmRldCBkaWUgQnJ1ZWNrZSAhClNjaG5lbGwgZmx1ZWNodGVzdCBEdSB2b24gZGVyIGJyZW5uZW5kZW4gQnJ1ZWNrZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIZWlzc2VzIEVpcyE7KSAoV3VyemVsLCAyNC4gTWFpIDE5OTksIDAyOjMyOjEwKToKfiMhIHJuPVRhbWkgcnQ9OTI3NTA1NzUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI3NTA1NzUwCmlyZ2VuZHdvIG11c3MgZGllIGdhbnplIHdhZXJtZSBqYSBibGVpYmVuLCB3ZW5uIGRlaW5lIGhhZW5kZSBnZWZyaWVyZW4uCmljaCBzdGVsbGUgbWFsIHdpZWRlciBmZXN0LCBkYXNzIGRpZSBuYXR1cndpc3NlbnNjaGFmdGxpY2hlIGdydW5kYmlsZHVuZwppbW1lciB3ZWl0ZXIgenVydWVja2dlaHQgKnNldWZ6KgoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhlaXNzZXMgRWlzITspIChXb29keSwgMjQuIE1haSAxOTk5LCAwMjo1MjozMyk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTI3NTA1OTMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI3NTA1NzUwCkRpZSBBdXNyZWRlbiBkZXIgTWFnaWVyIHdhcmVuIHNjaG9uIG1hbCBkZXV0bGljaCBiZXNzZXIsIHVuZAp2b3IgYWxsZW0gb3JpZ2luZWxsZXIgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIZWlzc2VzIEVpcyE7KSAoQW5hdG9sLCAyNC4gTWFpIDE5OTksIDAyOjU5OjA5KToKfiMhIHJuPVdvb2R5IHJ0PTkyNzUwNzE1MyByZz1zY2htYXJybgp+IyEgdGlkPTkyNzUwNTc1MAouLi4gYWJlciBzZWx0ZW4gcGh5c2lrYWxpc2NoIHNvIGxvZ2lzY2guIDopCgpBbiBnZXdpc3NlIGtvc21pc2NoZSBJbnRlcmZlcmVuenN0cmFobHVuZyBkZW5rZW5kLApBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBIZWlzc2VzIEVpcyE7KSAoV29vZHksIDI0LiBNYWkgMTk5OSwgMDM6MDA6MDMpOgp+IyEgcm49QW5hdG9sIHJ0PTkyNzUwNzU0OSByZz1zY2htYXJybgp+IyEgdGlkPTkyNzUwNTc1MApTb2xsZW4gamV0enQgWmF1YmVyZXIgYXVmIHdhbmRlbG5kZSBQZWx0aWVyLUVsZW1lbnRlIHJlZHV6aWVydCB3ZXJkZW4/Ckt1ZWhsc2NocmFlbmtlIGFsbGVyIFdlbHQsIHZlcmVpbmlndCBldWNoIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEhlaXNzZXMgRWlzITspIChBbmF0b2wsIDI0LiBNYWkgMTk5OSwgMDM6MDE6MDEpOgp+IyEgcm49V29vZHkgcnQ9OTI3NTA3NjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI3NTA1NzUwCkhlaXNzdCBkYXMgYXVzc2VyZGVtLCBkYXNzIGJlc29uZGVycyBzInUvM2UgWmF1YmVyaW5uZW4genV2b3IKc2VociBvZnQgImhhbmQgc2FldXJlIiBnZXphdWJlcnQgaGFiZW4gbXVlc3Nlbj8KClVoLW9oIDopCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEhlaXNzZXMgRWlzITspIChLZWxseWJ1bmR5LCAyNC4gTWFpIDE5OTksIDAzOjEzOjU2KToKfiMhIHJuPUFuYXRvbCBydD05Mjc1MDc1NDkgcmc9c2NobWFycm4KfiMhIHRpZD05Mjc1MDU3NTAKbG9naXNjaD8gRHVyY2ggZGVuIDIuIEhhdXB0c2F0eiBkZXIgVGhlcm1vZHluYW1payB2b2VsbGlnIHVubW9lZ2xpY2guCgpEdW1wZmJsb2VkaWUgbWFsIHNlbmZlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjEgY20/IChOZXJkYW5lbCwgMjQuIE1haSAxOTk5LCAwOTowOToxMCk6CnNjaGFldHogbWFydmluCk1hcnZpbiBpc3QgZXR3YSBnbGVpY2ggc3Rhcmsgd2llIER1LgpEaWUgUnVlc3R1bmcgTWFydmlucyBpc3QgdW5lcmhvZXJ0IHZpZWwgYmVzc2VyIGFscyBEZWluZS4KRGllIFdhZmZlIE1hcnZpbnMgaXN0IHZpZWwgYmVzc2VyIGFscyBEZWluZS4KRXIga2FlbXBmdCBtaXQgYmxvc3NlbiBIYWVuZGVuIHVuZCBtYWNodCBkYWJlaSBtZWNoYW5pc2NoZW4gU2NoYWRlbi4KTWFydmluIGlzdCBldHdhIDFjbSBncm9zcy4KCgpEZW4gaGFiIGljaCBtaXIgbGVpY2h0IGdyb2Vzc2VyIHZvcmdlc3RlbGx0IDstKQpOZXJkYW5lbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG1wZiAoWmlsbHVzLCAyNS4gTWFpIDE5OTksIDA4OjQ4OjQwKToKS3J1dW9scSBhbiBhbGxlIE1laXN0ZXI6IEFjaHR1bmchIERlciBFcnptZWlzdGVya2FtcGYgZmluZGV0IGluIEZlaGxlciBpbSBSWkcKS3J1dW9scSBhbiBhbGxlIE1laXN0ZXI6IE1pbnV0ZW4gc3RhdHQhIEVzIHNpbmQgbm9jaCBBbm1lbGR1bmdlbiBtb2VnbGljaCEKCipncnVlYmVsKiBiaXMgd2FubiBrYW5uIGljaCBtaWNoIGpldHp0IG5vY2ggYW5tZWxkZW4gOy0pIAoKWi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVwcyBmYWxzY2hlciBiZXp1ZyByaWNodGlnZSBzdGVsbGUgOikgKEJlbmRlaWdpZCwgMjUuIE1haSAxOTk5LCAxMToyMDowMCk6Cn4jISBvbj1BcHN1IG90PTkyNzUwODU4NCBvZz13d3cKCmJsYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSGVpc3NlcyBFaXMhOykgKE5vbm5lLCAyNS4gTWFpIDE5OTksIDExOjQ0OjE4KToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9OTI3NTA4NDM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI3NTA1NzUwCldpZXNvIGRhcz8gV2VubiBtYW4gZWluZSBTcGFubnVuZyBhbiBkZW4gWmF1YmVyZXIgbGVndCwgZ2VodCBkYXMKKFBlbGx0aWVyLUVsZW1lbnQpIERhaGVyIG11c3N0ZSBqZWRlciBaYXViZXJlciwgZGVyIEhhZW5kZSB6YXViZXJ0IHBybyBydW5kZQpzYWdlbiB3aXIgNTAgTFAgRWxla3RyaXppdGFldHNzY2hhZGVuIGJla29tbWVuLiBEYW5uIHdhZXJlIGRlciBTcHJ1Y2ggYXVjaAp3aWVkZXIgdHJhZ2JhciA7LSkKCk5vbm5lLCBaYXViZXJlcmhhc3NlciBhdXMgTGVpZGVuc2NoYWZ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBIZWlzc2VzIEVpcyE7KSAoS2VsbHlidW5keSwgMjUuIE1haSAxOTk5LCAxMjowODoxOSk6Cn4jISBybj1Ob25uZSBydD05Mjc2MjU0NTggcmc9c2NobWFycm4KfiMhIHRpZD05Mjc1MDU3NTAKNTAgTFA/IFNvZm9ydCBhdWZ3ZXJ0ZW4hIChEZW4gRWxla3Ryb3NjaGFkZW4gbmF0dWVybGljaCEpCgo+OikKRHVtcGZiYWNrZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSWRsZS1NdWQuLi4gKFR1bml4Z3V0LCAyNS4gTWFpIDE5OTksIDE0OjM2OjEyKToKfiMhIHJuPVN0b3BkZW5idXMgcnQ9OTI3MzIyMTY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI3MTc1MjcxCkVZISEhISA6bykKCidzIEthcmF0ZS1ad2VyY2hsZSEgLSBlaW56ZWlsaWchCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUUE0gKEFuYWtpbiwgMjUuIE1haSAxOTk5LCAxNTowMDozNCk6CkhpLAoKTGV1dGUsIGVzIGxvaG50IHNpY2ggYXVmIEVwaXNvZGUgT25lIHp1IHdhcnRlbiA6KQpVbmQgYXVjaCBhdWYgZGllIE5hY2hmb2xnZXIuCgoKQW5ha2luLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHJvbGxpIGlzdCBqZXR6dCBSRE0sIHNvbnN0IGlzdCBhbGxlcyB3aWUgZWhlZGVtIChBY3JpbW9uLCAyNS4gTWFpIDE5OTksIDE2OjIwOjExKToKRHJvbGxpIGZyYWd0IERpY2g6IFZlcm9lZmZlbnRsaWNodCBkYXNzIGljaCByZG0gaGVpc3NlPwoKU2llaGUgVGl0ZWwgZGVzIEFydGlrZWxzLgoKQWNyaW1vbiwgZGVyIFJvdGUgUml0dGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBIZWlzc2VzIEVpcyE7KSAoTWFoYXRtdSwgMjUuIE1haSAxOTk5LCAxNjo0NDo1OCk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTkyNzUwODQzNiByZz1zY2htYXJybgp+IyEgdGlkPTkyNzUwNTc1MApEaWUgc3RlY2tlbiBkb2NoIG1hZ2lzY2hlIEVuZXJnaWUgenVzYWV0emxpY2ggcmVpbiAuLi4gYWxzbyB3YXMgd2lsbHN0CkR1PyBFaWdlbnRsaWNoIG11ZXNzdGVuIHNpY2ggWmF1YmVyLUVpZXIgaWhyIEhpcm4gZ3JpbGxlbi4KCk1haGF0bXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVyIHdpbGwgbWljaCBhZXJnZXJuIGVyIHdpbGwgbWljaCBhZXJnZXJuIGVyIHdpbGwuLi4uIChBbmF0b2wsIDI2LiBNYWkgMTk5OSwgMDA6MDI6NDEpOgpGZXVlcndlaHIgdGVpbHQgRGlyIG1pdDogSGV5LCBQZWFudXQgc29sbCBFTSB3ZXJkZW4sIHd1c3N0ZXN0IER1IGRhcz8KRmV1ZXJ3ZWhyICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKR25pZ25pZ25pZ25pLi4uCgpBbmF0b2wgCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKenUgcG9saXplaS5iZXNjaHdlcmRlbiAoQW1hcnlsbGlzLCAyNi4gTWFpIDE5OTksIDExOjIwOjE1KToKfiMhIG9uPUdhc3QxIG90PTkyNzcwOTk4MyBvZz1hbGxnZW1laW5lcwpFaW4gdm9yZ2V0YWV1c2NodGVyIFRvZCAodm9uIE1hZ2llcm4pIHZlcnVyc2FjaHQgaXN0LCBHcnVuZCBnZW51ZyB1bSB6dQpzcGVycmVuPyBQcmltYSwgZW5kbGljaCBiZWtvbW1lbiBkaWUgU3BpZWxlciBpaHJlIFJuZSBOYW1lbiBuZW5uZW4sIGFiZXIKYWxsZWluIGRpZSBUYXRzYWNoZSwgZGFzcyBpY2ggbWljaCBoaWVyIG51ciBhbHMgR2FzdCByZWludHJhdWUgaXMgZG9jaCBzY2hvbgpzY2hsaW1tIGdlbnVnLiBEYSB3aXJkIG1hbiAKbGF1ZmVuZCB2b24gZGVtIHNlbGJlbiBNYWdpZXIgYmVsYWVzdGlndCwgKGlnbm9yZSBoaWxmdCBuYXR1ZXJsaWNoIG5pY2h0KSwgbWl0CkxhcnMtTWVsZHVuZ2VuIHp1bSBCZXN0ZW4gZ2VoYWx0ZW4gZWN0LiB2b24gYW5kcm9odW5nZW4gd2llOiBpY2ggc2V0eiBkZWluZQpza2lsbHMvc3RhdHMgcnVudGVyIGZhbmcgaWNoIGdhciBuaWNodCBlcnN0IGFuLi4uCnVuZCBkYXMgYWxsZXMgbnVyLCB3ZWlsIGljaCBMZXV0ZSBoYXNzZSwgZGllICJrd2VyIHdlaWJsaWNoIiBtYWNoZW4sIHVuZApkYW5ocmUgTGlzdGUgZHVyY2hnZWhlbiwgdW5kIGhvZmZlbjogZWluZSB3aXJkIHNjaG9uIGFuYmVpc3NlbiA6KCBNYWdpZXIKYWJ3ZXJ0ZW4hIEFsbGUgTWFjaHQgZGVuIFNlaGVybi4uLi4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogenUgcG9saXplaS5iZXNjaHdlcmRlbiAoQW1hcnlsbGlzLCAyNi4gTWFpIDE5OTksIDExOjIxOjA1KToKfiMhIHJuPUFtYXJ5bGxpcyBydD05Mjc3MTA0MTUgcmc9c2NobWFycm4KfiMhIHRpZD05Mjc3MTA0MTUKd2VyIHp1IGZlaWdlIGlzdCB1bnRlciBzZWluZW0gcmljaHRpZ2VuIE5hbWVuIHp1IHBvc3RlbiBsYWVzc3QgZXMgYW0gYmVzdGVuCmJsZWliZW4uCgpBbWFyeWxsaXMsIGhhc3N0IHNvd2FzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGb3JzY2hyaXR0IChDYXR3ZWF6bGUsIDI2LiBNYWkgMTk5OSwgMTE6NDk6NDQpOgpNYXRoZW1hdGlrLVVudGVycmljaHQgaW4gRGV1dHNjaGVuIExhbmRlbjoKCkhhdXB0c2NodWxlIDE5NjAuCkVpbiBCYXVlciB2ZXJrYXVmdCBlaW5lbiBTYWNrIEthcnRvZmZlbG4gZnVlciA1MApNYXJrLiBEaWUgRXJ6ZXVnZXJrb3N0ZW4KYmV0cmFnZW4gNDAgTWFyay4KQmVyZWNobmUgZGVuIEdld2lubiEKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgClJlYWxzY2h1bGUgMTk3MC4KRWluIEJhdWVyIHZlcmthdWZ0IGVpbmVuIFNhY2sgS2FydG9mZmVsbiBmdWVyIDUwCk1hcmsuIERpZSBFcnpldWdlcmtvc3RlbgpiZXRyYWdlbiB2aWVyIGZ1ZW5mdGVsIGRlcyBFcmxvZXNlcy4KV2llIGhvY2ggaXN0IGRlciBHZXdpbm4gZGVzIEJhdWVybj8KCkd5bW5hc2l1bSAxOTgwLgpFaW4gQWdyYXJvZWtvbm9tIHZlcmthdWZ0IGVpbmUgTWVuZ2Ugc3VidGVycmFuZXIKRmVsZGZydWVjaHRlIChLKSBmdWVyIGVpbmUgTWVuZ2UKR2VsZCAoRykuIEcgaGF0IGRpZSBNYWVjaHRpZ2tlaXQgNTAuIEZ1ZXIgZGllIEVsZW1lbnRlCmF1cyBHIChnKSBnaWx0OiBnIGlzdCAxCkRNLiBEaWUgTWVuZ2UgZGVyIEhlcnN0ZWxsdW5nc2tvc3RlbiAoSCkgaXN0IHVtIHplaG4KRWxlbWVudGUgd2VuaWdlciBtYWVjaHRpZwphbHMgZGllIE1lbmdlIEcuIFplaWNobmVuIFNpZSBkYXMgQmlsZCBkZXIgTWVuZ2UgSAphbHMgVGVpbG1lbmdlIGRlciBNZW5nZSBHCnVuZCBnZWJlbiBTaWUgZGllIExvZXN1bmdzbWVuZ2UgKEwpIGFuIGZ1ZXIgZGllIEZyYWdlOgpXaWUgbWFlY2h0aWcgaXN0IGRlaSBHZXdpbm5tZW5nZSAoTSk/CgpJbnRlZ3JpZXJ0ZSBHZXNhbXRzY2h1bGUgMTk5MC4KRWluIEJhdWVyIGthdWZ0IGVpbmVuIFNhY2sgS2FydG9mZmVsbiBmdWVyIDUwIE1hcmsuCkRpZSBFcnpldWdlcmtvc3RlbiBiZXRyYWdlbgo0MCBETSEgLiBEZXIgR2V3aW5uIGJldHJhZWd0IDEwIERNLgpBdWZnYWJlOiBVbnRlcnN0cmVpY2hlIGRhcyBXb3J0ICJLYXJ0b2ZmZWxuIiB1bmQKZGlza3V0aWVyZSBtaXQgRGVpbmVtIE5hY2hiYXJuCmRhcnVlYmVyIQoKU2NodWxlIDIwMDAgbmFjaCBkZXIgQmlsZHVuZ3NyZWZvcm0uCkVpbiBrYXBpdGFsaXN0aXNjaC1wcml2aWxlZ2llcnRlciBCYXVlciBiZXJlaWNoZXJ0CnNpY2ggb25lIHJlY2h0ZmVydGlndW5rIGFuCmVpbmVtIHNhayBrYXJ0b2ZlbG4gdW0gMTBkbS4KVW50ZXJzdWNoZWRhcyB0ZWtzdCBhdWYgaW5oYWx0bGljaGUgZmVsZXIgdW50CmRlbW9uc3RyaXJlIHVucyBkYXMgbG9lc3VuayEKClNjaHVsZSAyMDEwLgpFcyBraGlwdCBrYWluZSBnYXJ0b2ZsbiBtZXIuLi4KLS0tLS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGb3JzY2hyaXR0IChHcmltbWFuLCAyNi4gTWFpIDE5OTksIDEyOjIyOjEwKToKfiMhIHJuPUNhdHdlYXpsZSBydD05Mjc3MTIxODQgcmc9c2NobWFycm4KfiMhIHRpZD05Mjc3MTIxODQKSGFldHRlIGVzIGFiIGRlbSBKYWhyIDIwMDAgbmljaHQgZWlnZW50bGljaCBFdXJvIHNlaW4gbXVlc3Nlbj8KRGFzIGhhZXR0ZSBkZW0gZ2FuemVuIG5vY2ggbWVociBXdWVyemUgZ2VnZWJlbiA7KQoKR3JpbU1hbiAsIGZpbmQgZGFzIGd1dCA7KSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOdW5qYS4uLiAoQXNzYXNzaW5lLCAyNi4gTWFpIDE5OTksIDE0OjMzOjE3KToKRGllIEdsb2NrZW4gZGVyIFRyYXVrYXBlbGxlIGxhZXV0ZW4sIEdyaW1tYW4gdW5kIEFtYXJ5bGxpcyB3b2xsZW4gaGVpcmF0ZW4hCkRlciBLbGFuZyBlaW5lciBzY2h3ZXJtdWV0aWdlbiBXZWlzZSBzdHJlaWZ0IERlaW5lIE9ocmVuLgpFcyBzY2hlaW50IGtlaW4gZnJldWRpZ2VyIEFubGFzcyB6dSBzZWluLCBkZXIgaGllciBnZWZlaWVydCB3aXJkLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoamEhIChOb3Zhc3Rvcm0sIDI2LiBNYWkgMTk5OSwgMTk6MDQ6MzkpOgpEZWluZSBGcmV1bmRpbiBDYWxpbWVyYSB0ZWlsdCBEaXIgbWl0OiBzbyAtIGljaCBoYWIgZ2VudWcgZnVlciBoZXV0ZSBnZXRhbiAtCkRlaW5lIEZyZXVuZGluIENhbGltZXJhIHRlaWx0IERpciBtaXQ6IGljaCBtYWNoIEZlaWVyYWJlbmQKW2xhZ10KTGV0enRlIDYwIG1pbjogIyMjIyAoNC4xJSkKTGV0enRlIDE1IG1pbjogIyMjIyMjIyMjIyMjIyMgKDEzLjUlKQpMZXR6dGUgTWludXRlOgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyMjIyMjICg4My41JSkKICAgIE5vdmEgKHVuZCBlcyBnZWh0IGRvY2ghIDopKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRQTSAoTXVhZGRpYiwgMjYuIE1haSAxOTk5LCAxOToyMDo1Myk6Cn4jISBybj1BbmFraW4gcnQ9OTI3NjM3MjM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI3NjM3MjM0CldhcnRlbj8gSWNoIGhhYiBpaG4gc2Nob24gZmFzdCB6d2VpbWFsIGdlc2VoZW4uIElzdCBPSywgYWJlciBuaWNodCBzbyBndXQsIHdpZQptYW4gYW5uZWhtZW4ga29lbm50ZS4gOikKCk11YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTm8gY29tbWVudC4gKEFuYXRvbCwgMjYuIE1haSAxOTk5LCAyMDozODowNik6Cn4jISBybj1TdG9lcnRpIHJ0PTkyNzc0Mzc4MCByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9OTI3NzAzOTcwCkdyb3Nza290emlnZSBBbmdlc3RlbGx0ZSwgZGllIHNpY2ggbWl0IFBvc3RlbiBicnVlc3RlbiwgZW50bGFzc2VuLgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTm8gY29tbWVudC4gKFBhdHJ5biwgMjYuIE1haSAxOTk5LCAyMDozODo0Nik6Cn4jISBybj1BbmF0b2wgcnQ9OTI3NzQzODg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI3NzAzOTcwCnVuZCB2aXN1YWwgYmFzaWMgaW4gZGVyIGZpcm1hIHZlcmJpZXRlbiA6KQoKLS0tLS0tCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTm8gY29tbWVudC4gKFN0b2VydGksIDI2LiBNYWkgMTk5OSwgMjA6NDQ6NDQpOgp+IyEgcm49QW5hdG9sIHJ0PTkyNzc0Mzg4NiByZz1zY2htYXJybgp+IyEgdGlkPTkyNzcwMzk3MApiaW4ga2VpbiBhbmdlc3RlbGx0ZXIuIApiaW4gYXVjaCBrZWluIHN0dWRlbnQuIAoKamV0eiByYXQgbWFsCihuZWluLGFyYmVpdHNsb3MgYXVjaCBuaWNoKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTm8gY29tbWVudC4gKEFuYXRvbCwgMjYuIE1haSAxOTk5LCAyMDo0NjoxOCk6Cn4jISBybj1TdG9lcnRpIHJ0PTkyNzc0NDI4NCByZz1zY2htYXJybgp+IyEgdGlkPTkyNzcwMzk3MApNaXN0LCBlciBmYWVuZ3Qgc2NobmVsbGVyIGFuLCBzaWNoIG1pdCBzZWluZW0gSm9iIHp1IGJydWVzdGVuIGFscwptZWluIFNjaGxhY2h0cGxhbiBlcyB2b3JzYWguIEljaCBtdXNzIGltcHJvdmlzaWVyZW4sIHdlciB1ZWJlcm5pbW10PyA7KQoKQW5hdG9sIDpvKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJyYXYgISAoRXRoYXZhciwgMjYuIE1haSAxOTk5LCAyMzozNzoyMCk6CkR1IHNhZ3N0OiAgYWguIGdlaCBoZWltLCBrbG9pcmVuCktsb2lyZW4gRWlzZW5oZWxtIGdlaHQgbmFjaCBOb3JkZW4uCgpTbyBzaW5kIHNlLCBkaWUgVHJ2ZXMgLi4gYnJhdiB1bmQgZ2Vob3JzYW0gOikKCkV0aGF2YXIgKGdyaW5zZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogYmllcmNoZW4gKEFuYXRvbCwgMjcuIE1haSAxOTk5LCAwMDoxMTo0Myk6Cn4jISBybj1Jc25vZ29vZCBydD05Mjc3NTY1NTkgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTkyNzY2OTkzMQpXZXIgaW0gR2xhc2hhdXMgc2l0enQuLi4/CgpBbmF0b2wgLSBtdXNzIGJlaSBJc25vIG51ciBub2NoIGdyaW5zZW4uLi4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcuLi4gKEFuYXRvbCwgMjcuIE1haSAxOTk5LCAwMDo0NDowMyk6CgpbQWxsZ2VtZWluOlNvcmNlcmVyXSBzY2hlaXNzIGxhZyEKW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgU29yY2VyZXIKW1RvZDpMYXJzXSB1bWdlYnJhY2h0LgoKVGphLCBrb21tdCBaZWl0LCBrb21tdCBSYXQsIGRvY2ggYXVjaCBlaW4gV3VybSBpbSBPaHIga29tbXQgbWFsIHZvci4uLgpBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIeWRyYSAoVHJ1ZywgMjcuIE1haSAxOTk5LCAwMTo1MTowNSk6CnMKRW5kbGljaC4gRHUgc3RlaHN0IHZvciBkZW4gaG9oZW4gZ3JhdWVuIE1hdWVybiBkZXMgYWx0ZWhyd3VlcmRpZ2VuIEtsb3N0ZXJzClN1bGEuIFNpZSByYWdlbiBkcm9oZW5kIHVlYmVyIERpciBhdWYgdW5kIHNpbmQgbWl0IGtsZWluZW4gRWNrdHVlcm1lbiBiZXNldHp0LgpEaXJla3Qgdm9yIERpciBpc3QgdWViZXIgZGVtIFRvciBlaW4gZ3Jvc3NlcyBrZWx0aXNjaGVzIE9naGFtIGluIGRpZSBXYW5kCmdlc2Nobml0dGVuIHdvcmRlbiwgZGFzIGluIGVpbmVtIHJvdGVuIHVuaGVpbGlnZW4gTGljaHQgbGV1Y2h0ZXQuIFVlYmVyYWxsCmdyaW5zZW4gRGljaCBXYXNzZXJzcGVpZXIgdW5kIEdhcmdveWxlbiB2b24gZGVuIE1hdWVybiBhbiwgYWxzIG9iIHNpZSBkaWUKYmxvc3NlIEV4aXN0ZW56IGhpZXIgdmVyaG9laG5lbiB3b2xsdGVuLiAgVW50ZXIgRGlyIGJyZWl0ZW4gc2ljaCBkaWUgZHVua2xlbgpXYWVsZGVyIGRlcyBUYWxlcyBhdXMuIEFtIEhvcml6b250IGthbm5zdCBEdSBkZW4gdGllZmVuIEVpbnNjaG5pdHQgaW4gZGVyCkdlYmlyZ3NrZXR0ZSBhdXNtYWNoZW4sIGRlciBkZW4gUGFzcyBtYXJraWVydCwgdWViZXIgZGVuIER1IGF1Y2ggdm9yIGdhciBuaWNodApsYW5nZXIgWmVpdCBnZXNjaGxlbmRlcnQgYmlzdC4gSW0gU3VlZHdlc3RlbiBmdWVocnQgZWluZSBzY2htYWxlLCBpbiBkZW4gRmVscwpnZWhhdWVuZSwgVHJlcHBlIGRlbiBCZXJnIGhpbmFiIHp1bSBQZmFkLiAKRWluIGdlb2VmZm5ldGVzLCBzY2h3YXJ6ZXMgVG9yLiAKRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHVudGVuIHVuZCBub3JkZW4uIApEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KPiBlbnRzb3JnZSBoeWRyYQoqIERpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyIHd1cmRlIGVudHNvcmd0LgpEZXIgU3RhYiBrYW5uIHNvIG5pY2h0IHdlaXRlciBhdWZnZWxhZGVuIHdlcmRlbi4KClNjaGFkZSwgZGllIHBhc3N0IG5pY2h0IGluIGRlbiBTdGFiIHJlaW4uCgooWmF1YmVyZXIgYXVmd2VydGVuISA6KQoKVHJ1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWhqYSAoQ2FpbGxlYW4sIDI3LiBNYWkgMTk5OSwgMDM6NTE6NDApOgpjYXR0aWU6IHZlcnRyYXUgbWlyIQpkdSB3YWVsenQgZGljaCB2b3IgbGFjaGVuIGF1ZiBkZW0gYm9kZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBiaWVyY2hlbiAoUnVtYXRhLCAyNy4gTWFpIDE5OTksIDExOjEyOjQ5KToKfiMhIG9uPVJ1bWF0YSBvdD05Mjc3OTYxOTkgb2c9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgcm49SmFzcGVyIHJ0PTkyNzc5NjE2NSByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9OTI3NjY5OTMxCm5laW4hIDotKQotPnNjaG1hcnJuCnJ1bWF0YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW1tZXIgd2llZGVyIHNjaG9lbiAoVGVkZHksIDI3LiBNYWkgMTk5OSwgMTI6MDM6NTgpOgpUc3VuYW1pIGtudWRkZWx0IHNlaW5lbiBUZWRkeSB2b24gZ2FuemVtIEhlcnplbi4KClRlZGR5LCBnZWhvZXJ0IGVudHdlZGVyIHNpY2ggb2RlciBhbGxlbiwgYWJlciBiZXN0aW1tdCBuaWNodCBOVVIgVHN1bmFtaS4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSW1tZXIgd2llZGVyIHNjaG9lbiAoVHN1bmFtaSwgMjcuIE1haSAxOTk5LCAxMjoyMjowNyk6Cn4jISBybj1UZWRkeSBydD05Mjc3OTk0Mzggcmc9c2NobWFycm4KfiMhIHRpZD05Mjc3OTk0MzgKV2FzIFRlZGR5IHVudGVyc2NobGFnZW4gaGF0OiBtZWluZSBzdGFya2VuIE9iZXJhcm1lIQoKVHN1bmFtaSBrbnVkZGVsdCBzZWluZW4gVGVkZHkgdm9uIGdhbnplbSBIZXJ6ZW4uClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBUZWRkeS4KW3NjaHdlaXo6TVRWIHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gVHN1bmFtaS5dCgpBbGxlcyBGZWlnbGluZ2UhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEltbWVyIHdpZWRlciBzY2hvZW4gKEFuYXRvbCwgMjcuIE1haSAxOTk5LCAxMjoyNToxMSk6Cn4jISBybj1Uc3VuYW1pIHJ0PTkyNzgwMDUyNyByZz1zY2htYXJybgp+IyEgdGlkPTkyNzc5OTQzOApEdSBoYWV0dGVzdCBEaXIgdm9yaGVyIG1hbCB3aWVkZXIgZGllIFphZWhuZSBwdXR6ZW4gc29sbGVuLi4uIDopCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEltbWVyIHdpZWRlciBzY2hvZW4gKFRlZGR5LCAyNy4gTWFpIDE5OTksIDEzOjI5OjMyKToKfiMhIHJuPVRzdW5hbWkgcnQ9OTI3ODAwNTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI3Nzk5NDM4CkVzIGdpYnQgaGFsdCBEaW5nZSwgZGllIHNpbmQga2F1bSB6dSBlcnRyYWdlbi4KClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmdWVyIGhpYmJlbC4uIChLYXJpYywgMjcuIE1haSAxOTk5LCAxNToyODoxMyk6CmF1Y2ggbWFsIHdhcwoKLT4gbXVlbGwgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGJpZXJjaGVuIChBbmF0b2wsIDI3LiBNYWkgMTk5OSwgMTY6MjA6MTEpOgp+IyEgcm49V3VyemVsIHJ0PTkyNzgwOTUxNCByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9OTI3NjY5OTMxCkFsc28uLi4gYWVoLi4uIG1vbWVudC4uLi4KRGFtaXQgZWlucyBrbGFyIGlzdDogTGllYmVyIHZvbiBCaWVyY2hlbiBnZWZha2V6YXB0IHdlcmRlbiBhbHMgYWJnZWtudXRzY2h0IQoKKlNDSFVFVFRFTCogKlNDSEFVREVSKgoKSXMgZG9jaCB3YWhyISA6KQpBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBvaCwgd2FlcmUgZXMgZG9jaCBlaW4gc3BpZWwhIChBbmF0b2wsIDI3LiBNYWkgMTk5OSwgMTk6NDQ6NTUpOgp+IyEgcm49U3RvZXJ0aSBydD05Mjc4MjcwNDMgcmc9ZXRpa2V0dGUKfiMhIHRpZD05Mjc2NzU0MTQKCiJ2ZXJicmVubmUgemVpdHVuZyIuCgpBYmVyIHNlbGJzdCBkYXp1IHp1IGJsb2VkZS4uLiA6KQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogb2gsIHdhZXJlIGVzIGRvY2ggZWluIHNwaWVsISAoVGFyYWdvbiwgMjcuIE1haSAxOTk5LCAxOTo1NTo1Mik6Cn4jISBybj1TdG9lcnRpIHJ0PTkyNzgyNzA0MyByZz1ldGlrZXR0ZQp+IyEgdGlkPTkyNzY3NTQxNApPY2ggbm9lLi4uIGtlaW5lIHZMUEMgYW5ub3VuY2VtZW50cyBtZWhyID8gKnNjaG5pZWYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBvaCwgd2FlcmUgZXMgZG9jaCBlaW4gc3BpZWwhIChNdXBmZWwsIDI3LiBNYWkgMTk5OSwgMTk6NTg6MDgpOgp+IyEgcm49VGFyYWdvbiBydD05Mjc4Mjc3NTIgcmc9c2NobWFycm4KfiMhIHRpZD05Mjc2NzU0MTQKRGllIGtvbW1lbiBkYW5uIGF1ZiBEVy1OZXdzIDotKQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGb3JzY2hyaXR0IChLYXJ0b2ZmZWwsIDI3LiBNYWkgMTk5OSwgMjI6MTg6NTMpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTkyNzcxMjE4NCByZz1zY2htYXJybgp+IyEgdGlkPTkyNzcxMjE4NAoKV2FhYWFhYWFhYWFhYWFhYWFhYWFhYWFhaCwgbWFuIHdpbGwgbWljaCBhdXNyb3R0ZW4/Pz8KCidUb2ZmZWwgLSBwYW5pc2NoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3aWUgZXJ6aWVodCBtYW4gZWluZW4gZ2lsZGVubnBjPyAoV3VtLCAyOC4gTWFpIDE5OTksIDAwOjA4OjA2KToKPC0uCkZldWVyd2VociB6dWVja3QgZWluZSBncm9zc2UgS2V1bGUgdW5kIGhhdXQgS3J1dW9scSB0b3QuCktydXVvbHEgaGF1dCBGZXVlcndlaHIga3JhZWZ0aWcgYXVmcyBNYXVsIQpLcnV1b2xxIGZhZWxsdCB0b3QgenUgQm9kZW4uCkVpbmUgTGVpY2hlIHdpcmQgdm9uIEZldWVyd2VociB2b2xsIEhpbmdlYnVuZyB2ZXJzcGVpc3QuCktydXVvbHEga29tbXQgYW4uCktydXVvbHEgaGF1dCBGZXVlcndlaHIgZWluZSBhdWZzIE1hdWwhCkZldWVyd2VociB0cml0dCBLcnV1b2xxLgotPiBuYWNoIEhhdXNlLgo8LS4KS3J1dW9scSBmYWVsbHQgYXVmIGRpZSBLbmllIHVuZCBrdWVzc3QgRmV1ZXJ3ZWhycyBGdWVzc2UhIElnaXR0IQoKc28gbWFjaHQgbWFuIGRhcyB3b2hsLi4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZXNwaWNrdGUgc2NoaWxka3JvZXRlIGdlZmFlbGxpZz8gOykgKEthcmljLCAyOC4gTWFpIDE5OTksIDAxOjAxOjI0KToKOnwgRGllc2UgZ2V3YWx0aWdlIERyYWNoZW5zY2hpbGRrcm9ldGUgaXN0IGR1cmNoIGlocmVuIGRpY2tlbiBQYW56ZXIKOnwgd2FocnNjaGVpbmxpY2gga2F1bSB2ZXJ3dW5kYmFyLiBTaWUgc2llaHQgc2VociBrcmFlZnRpZyBhdXMgLSBEdQo6fCBzb2xsdGVzdCBzaWUgYWxzbyBiZXNzZXIgbmljaHQgYW5ncmVpZmVuIG9kZXIgYWVyZ2VybiwgaW5kZW0gRHUKOnwgei5CLiB1ZWJlciBzaWUgcnVlYmVyIGxhZXVmc3QuLi4KOnwgU2llIGlzdCBiZWkgMTAwJS4KOnwgU2llIHRyYWVndCBiZWkgc2ljaDoKOnwgRWluIE5hY2h0ZG9sY2guICgxOCkKOnwgRWluIGVpc2VuYmVzY2hsYWdlbmVyIFNwZWVyLiAoNCkKOnwgRWluIFNhbGF0YmxhdHQgKGdlenVlY2t0KS4KCnVpLi4ud2F0IHNvIG5lIHNjaGlsZGtyb2V0ZSBuaWNoIGFsbGVzIG1pdHNjaGxlcHB0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZ2VzcGlja3RlIHNjaGlsZGtyb2V0ZSBnZWZhZWxsaWc/IDspIChBbmF0b2wsIDI4LiBNYWkgMTk5OSwgMDE6MDI6MDQpOgp+IyEgcm49S2FyaWMgcnQ9OTI3ODQ2MDg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI3ODQ2MDg0CkR1IHNvbGxzdCBzb3dhcyBuaWNodCBwb3N0ZW4uIFBhc3MgYXVmLCBtb3JnZW4ga2FubiBzaWUgV2FmZmVud3VyZiA7KQoKQW5hdG9sIC0ga2VubnQgUm9jaHVzIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBnZXNwaWNrdGUgc2NoaWxka3JvZXRlIGdlZmFlbGxpZz8gOykgKEthcmljLCAyOC4gTWFpIDE5OTksIDAxOjAzOjIzKToKfiMhIHJuPUFuYXRvbCBydD05Mjc4NDYxMjQgcmc9c2NobWFycm4KfiMhIHRpZD05Mjc4NDYwODQKc29sYW5nZSBzaWUga2VpbmVuIHRvZGVzc3Rvc3MgYW5zZXR6dCAuLi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGdlc3BpY2t0ZSBzY2hpbGRrcm9ldGUgZ2VmYWVsbGlnPyA7KSAoQW5hdG9sLCAyOC4gTWFpIDE5OTksIDAxOjAzOjQzKToKfiMhIHJuPUthcmljIHJ0PTkyNzg0NjIwMyByZz1zY2htYXJybgp+IyEgdGlkPTkyNzg0NjA4NApNaXQgZWluZW0gU2FsYXRibGF0dD8KCkFjaCBzbywgZGFzIHR1dCBkYW5uIG1laHIgd2VoLi4uCgpBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZ2VzcGlja3RlIHNjaGlsZGtyb2V0ZSBnZWZhZWxsaWc/IDspIChBbWFyeWxsaXMsIDI4LiBNYWkgMTk5OSwgMDE6MDM6NDkpOgp+IyEgcm49S2FyaWMgcnQ9OTI3ODQ2MDg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI3ODQ2MDg0CmRpZSBhcm1lLi4uIGVpbiBhdWZnZXBlcHB0ZXIgV2FmZmVuZ3VlcnRlbCBzb2xsdGUgaWhyIGVpbiBiaXNzY2hlbiBoZWxmZW4KKmtpY2hlciouCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBnZXNwaWNrdGUgc2NoaWxka3JvZXRlIGdlZmFlbGxpZz8gOykgKFplcGh5ciwgMjguIE1haSAxOTk5LCAwMToxNDowOSk6Cn4jISBybj1BbmF0b2wgcnQ9OTI3ODQ2MjIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI3ODQ2MDg0CktsYXIuLiBkYXMgU2FsYXRibGF0dCBtYWNodCB1QSBXYXNzZXJzY2hhZGVuLi4gdW5kCmVyIGlzdCBkb2NobiBzdGlua2VuZGVzIEtyaWVjaHRpZXIgOykKCkM0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGluIGRlciBFaXNtaW5lIC4uLiAoTGlhcmEsIDI4LiBNYWkgMTk5OSwgMDI6MTA6NDEpOgoKRGVyIEVpc2VsZmVud2FlY2h0ZXIgd2VpY2h0IERlaW5lbiBTY2hsYWVnZW4gYXVzLgpEdSBzY2hsYWVnc3QgZGVuIEVpc2VsZmVud2FlY2h0ZXIgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KRGVyIEVpc2VsZmVud2FlY2h0ZXIgcm9lY2hlbHQgbm9jaCBlaW4gbGV0enRlcyBNYWwgdW5kIGZhZWxsdCB0b3QgdW0uCgpMaWFyYSAuLi4gd3VlbnNjaHQgc2ljaCwgZGFzcyBtZWhyIFZpZWNoZXIgc28gYXVzd2VpY2hlbiB3dWVyZGVuIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGFzc3QgOikgKE10diwgMjguIE1haSAxOTk5LCAwOTozNDowMSk6CgpSZWFwZXIgemVyc2NobWV0dGVydCBkZW4gWm9tYmllIGluIGtsZWluZSBTdHVlY2tjaGVuLgpSZWFwZXIgemVyc2NobWV0dGVydCBkZW4gWm9tYmllIGluIGtsZWluZSBTdHVlY2tjaGVuLgpEdSB6ZXJzY2htZXR0ZXJzdCBkZW4gWm9tYmllIGluIGtsZWluZSBTdHVlY2tjaGVuLgpEZXIgWm9tYmllIHplcmZhZWxsdCB2b2VsbGlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBhc3N0IDopIChKYXNwZXIsIDI4LiBNYWkgMTk5OSwgMTA6NTc6MTMpOgp+IyEgcm49TXR2IHJ0PTkyNzg3Njg0MSByZz1zY2htYXJybgp+IyEgdGlkPTkyNzg3Njg0MQppaHIgaGVsZGVuLi4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0aW1pbmcgOikgKFNjaG9rbywgMjguIE1haSAxOTk5LCAxMTo0MTozOSk6CgpQYWRyZWljIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KW0FsbGdlbWVpbjpSaW5nb3IgZGV1dGV0IGF1ZiBQYWRyZWljIHVuZCBzYWd0OiAiZGVyIHdhcidzLCBkZXIgd2FyJ3MiXQoKCklzIGRhIGVpbmVyIHZvcmVpbmdlbm9tbWVuLCBvZGVyIHdhcz8gOikpClNjaG9rbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdpZXNvIGVpZ2VudGxpY2ggZGllIEF1ZnJlZ3VuZyAoR3JpbW1ib3JuLCAyOC4gTWFpIDE5OTksIDEyOjI5OjM2KToKfiMhIG9uPUFtYXJ5bGxpcyBvdD05Mjc4Nzk2OTEgb2c9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgcm49U3JhYmkgcnQ9OTI3ODc5NTE3IHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD05Mjc4Nzk1MTcKV0FBQUFBQUFBUz8KCkR1IGJpc3Qgbm9jaCBuaWNodCBnZXphcHB0IHdvcmRlbj8/PyBOYSBkYXMgbXVlc3NlbiB3aXIgZG9jaCBzb2ZvcnQgYWVuZGVybiwKd2VubiBEdSBlaW5lIGRlciB3ZW5pZ2VuIFd1ZXJzdGUgaGllciBiaXN0LCBkaWUgdm9uIHVucyBhcnJvZ2FudGVuLCBmaWVzZW4sCmhpbnRlcmhhZWx0aWdlbiwgaWRlbG5kZW4sIHN0aW5rZmF1bGVuIE1hZ2llcm4gbm9jaCBuaWNodCBnZXphcHB0IHdvcmRlbgppc3QhISEgV28ga2FlbWVuIHdpciBkZW5uIGRhIGhpbiwgd2lyIHd1ZXJkZW4gamEgdW5zZXJlbiBSdWYgcnVpbmllcmVuLi4uCgpBbWEKClBTOiA8L0lST05JRT4KUFBTOiAtLT4gU2NobWFycm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hcnZpbiAoUm9jaHVzLCAyOC4gTWFpIDE5OTksIDE0OjM4OjQxKToKTWFydmluIHNhZ3Q6IEhhbGxvLCBBbWFyeWxsaXMhIEVyemFlaGxlIG1pciwgd2FzIERpY2ggZ2VyYWRlIGJlc2NoYWVmdGlndCEKQW1hcnlsbGlzIHNhZ3Q6IE1hcnZpbiwgaWNoIGZpbmRlIGVpbmZhY2gga2VpbmVuIEVoZW1hbm4KTWFydmluIHNhZ3Q6IFdhcnVtIGVyd2FlaG5zdCBEdSBpbiBkaWVzZW0gWnVzYW1tZW5oYW5nIG1laW5lbiBOYW1lbiwKQW1hcnlsbGlzPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWVoIChUZWRkeSwgMjguIE1haSAxOTk5LCAxNDo1Nzo1NCk6CkhpYmJlbGlnIHN0ZWNrdCBlaW5lIERhZW1vbmVucGVpdHNjaGUgaW4gZWluIGtsZWluZXMgU2NoYWYuICAgICAgCgpBZWgsIHdvaGluIGdlbmF1PwoKVGVkZHksIGxlaWNodCBwaWtpZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFlaCAoTXVwZmVsLCAyOC4gTWFpIDE5OTksIDE0OjU5OjM0KToKfiMhIHJuPVRlZGR5IHJ0PTkyNzg5NjI3NCByZz1zY2htYXJybgp+IyEgdGlkPTkyNzg5NjI3NApJY2ggZGVua2UsIGRhcyBtb2VjaHRlc3QgRHUgZ2FyIG5pY2h0IHNvIGdlbmF1IHdpc3NlbiA6LSkKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFlaCAoR3JpbW1ib3JuLCAyOC4gTWFpIDE5OTksIDE1OjA2OjA0KToKfiMhIHJuPU11cGZlbCBydD05Mjc4OTYzNzQgcmc9c2NobWFycm4KfiMhIHRpZD05Mjc4OTYyNzQKV2FyIG5pY2h0IG1hbCBSem5lIEV4cGVydGUgZGFmdWVyLCBkaWUgZWluZW4gb2RlciBhbmRlcmVuIERpbmdlIGhpZXIgdW5kIGRvcnQKaW4gbWVociBvZGVyIHdlbmlnZXIgbGViZW5kZSBTY2hhZmUgcmVpbnp1c3RlY2tlbj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQWVoIChDYXR3ZWF6bGUsIDI4LiBNYWkgMTk5OSwgMTU6MDc6NDEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTkyNzg5Njc2NCByZz1zY2htYXJybgp+IyEgdGlkPTkyNzg5NjI3NApOZWluZWluLCBkYXMgd2FyZW4gSHlkcmFzLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKZXR6dCBiZWtsYXVuIGVpbmVuIHNjaG9uIGRpZSBNYWdpZXIuLi4gKFNpZ3VyYSwgMjguIE1haSAxOTk5LCAxNToxOTo0Mik6CkR1IGJpc3QgZmFzdCBhbSBUcmVmZnB1bmt0IGRlciBTaWxiZXJiZXJnZSBtaXQgZGVuIFNjaHJlY2tlbnNiZXJnZW4gaW0KTm9yZGVuIGFuZ2VsYW5ndC4gTm9lcmRsaWNoIHZvbiBoaWVyIHNpZWhzdCBkdSBkZW4gT3N0ZXJiYWNoIGluIGVpbmVyIApzY2htYWxlbiBTY2hsdWNodCBuYWNoIE9zdGVuIHZlcnNjaHdpbmRlbi4gRGllIEViZW5lIGJyZWl0ZXQgc2ljaCB3ZWl0CmluIFJpY2h0dW5nIFdlc3RlbiBhdXMgdW5kIGVpbiBQZmFkIGZvbGd0IGRlbiBTaWxiZXJiZXJnZW4gbmFjaCBTdWVkLQp3ZXN0ZW4uCmVsbGJvZ2Vuc2NobGFnIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiB3ZXN0ZW4sIG5vcmRlbiB1bmQgc3VlZHdlc3Rlbi4gCldpbSEgLSBVdCBhbGlxdWl0IGZpYXQuCkVpbiBGcm9zY2guCkVpbiBQYWFyIEZyb3NjaHNjaGVua2VsLgo+IERlaW4gR2VsZGJldXRlbCBpc3QgbGVpY2h0ZXIgZ2V3b3JkZW4uCgpTaWcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSmV0enQgYmVrbGF1biBlaW5lbiBzY2hvbiBkaWUgTWFnaWVyLi4uIChSaW5nb3IsIDI4LiBNYWkgMTk5OSwgMTU6MjQ6MjUpOgp+IyEgcm49U2lndXJhIHJ0PTkyNzg5NzU4MiByZz1zY2htYXJybgp+IyEgdGlkPTkyNzg5NzU4MgpUamFqYSwgZHVtbWUgVEYtQWxpcy4gU293YXMgd2llICJhbGkgZXMgZWxsZW5ib2dlbnNjaGxhZyAkKiIgZ2VodCBhdWNoIGltIE11ZApoZXJ2b3JyYWdlbmQuIDstKQoKUmluZ29yIGRlbmt0IC4gbyBPKFJ1YnJpayBzdGltbXQgamEgc2Nob24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJZGxlIG9kZXIgbmljaHQgaWRlbC4uLiAoTm92YXN0b3JtLCAyOC4gTWFpIDE5OTksIDE3OjEyOjI0KToKVGVkZHkgc2FndDogdWZmLCB3aW0gaXMgbmljaG1laHIgaWRsZSA7KQpEYXMgdW5zaWNodGJhcmUgT3JjaGVzdGVyIHN0aW1tdCBlaW4gbmV1ZXMgU3R1ZWNrIGFuLgpbVG9kOkxhcnNdIEVsaXphIGhhdCBnZXJhZGUgV3VsZmdhciB1bWdlYnJhY2h0LgpbVG9kOkVsaXphXSBEYSBoYXN0IER1IHdvaGwgRGVpbmUgRmFlaGlna2VpdGVuIHVlYmVyc2NoYWV0enQuLi4KCiAgICAgTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IG9kZXIgd2FzPz8gKEFtYXJ5bGxpcywgMjkuIE1haSAxOTk5LCAwMjoyMzozMSk6CkRlciBQeXJvbWFuZSBoZWJ0IGRpZSBIYWVuZGUgdW5kIGVzIHJlZ25ldCBGZXVlci4KSGFmYXggc2NodWx0ZXJ0IHNlaW5lIEtldWxlLCB1bmQgZ2VodCBsdXN0aWcgcGZlaWZlbmQgbmFjaCBXZXN0ZW4uCltUb2Q6TGFyc10gRWluIFB5cm9tYW5lIGhhdCBnZXJhZGUgSGFmYXggdW1nZWJyYWNodC4KCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogYmllcmNoZW4gKFNpZ3VyYSwgMjkuIE1haSAxOTk5LCAwNjoyMjo0Mik6Cn4jISBybj1BbmF0b2wgcnQ9OTI3ODE0ODExIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI3NjY5OTMxCgpOaWNoIFRGIC4uLiBabXVkIDopCgpTaWcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVlciBTcHJ1Y2ggZnVlciBLYXR6ZW5rcmllZ2VyPyAoTWllemUsIDI5LiBNYWkgMTk5OSwgMTg6MDE6NDcpOgoKZWJlbiBpbSBad2VyZ2VuZG9yZi4uLgoKRHUgc2Fnc3Q6IGxvcwpEdSBob2Vyc3QgZWluIEdyb2xsZW4uIERlciBWdWxrYW4gaXN0IG1hbCB3aWVkZXIgYWt0aXYuIAoKCk1pZXplIC0gZ3JpbnN0IGltbWVybm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FlbXBmZXIgLi4uIChMaWFyYSwgMjkuIE1haSAxOTk5LCAyMjowNzoxMyk6Ck5ldWxpY2ggaW4gV2lsbGlidXJnOgoKR29sYXMgc3RyYWhsdCB1ZWJlciBkYXMgZ2FuemUgR2VzaWNodCwgYWxzIGVyIGVpbmVuIERhcmplZWxpbmcgdHJpbmt0LgpHb2xhcyBnZWh0IGluIGFsbGVyIFJ1aGUgYXVmIGRpZSBUb2lsZXR0ZSwgdW0gQW5nc3QgdW5kIFNjaHJlY2tlbiB6dQp2ZXJicmVpdGVuLgpHb2xhcyB6ZWlndCBEaXIgVmlzaW9uZW4gRGVpbmVyIGR1bmtlbHN0ZW4gQWVuZ3N0ZS4KR29sYXMgZ2VodCBpbiBhbGxlciBSdWhlIG5hY2ggTm9yZGVuLCB1bSBBbmdzdCB1bmQgU2NocmVja2VuIHp1IHZlcmJyZWl0ZW4uCgpXYXMgZXIgd29obCBhdWZtIEtsbyB2b3JoYXQ/IDspCgoKTGlhcmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhZmZlbnNhbW1sdW5nIChIaWdodCwgMjkuIE1haSAxOTk5LCAyMzozOTo1MCk6CiBEaWVzZSBnZXdhbHRpZ2UgRHJhY2hlbnNjaGlsZGtyb2V0ZSBpc3QgZHVyY2ggaWhyZW4gZGlja2VuIFBhbnplcgp3YWhyc2NoZWlubGljaCBrYXVtIHZlcnd1bmRiYXIuIFNpZSBzaWVodCBzZWhyIGtyYWVmdGlnIGF1cyAtIER1CnNvbGx0ZXN0IHNpZSBhbHNvIGJlc3NlciBuaWNodCBhbmdyZWlmZW4gb2RlciBhZXJnZXJuLCBpbmRlbSBEdQp6LkIuIHVlYmVyIHNpZSBydWViZXIgbGFldWZzdC4uLgpTaWUgaXN0IGFic29sdXQgZml0LgpTaWUgdHJhZWd0IGJlaSBzaWNoOgpFaW4gTmFjaHRkb2xjaC4gKDgpCkVpbiBFaXNkb2xjaC4gKDIpCkVpbiBXYXNzZXJkb2xjaC4gKDMpCkVpbiBUcm9sbGRvbGNoLgpFaW4gTWVzc2VyLiAoMzEpCkVpbiBTYWxhdGJsYXR0IChnZXp1ZWNrdCkuCgppY2ggZ2xhdWIgaWNoIGhhYiBkYSB3YXMgZHJpbiB2ZXJnZXNzZW4gKmcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplaW4gSGVsbHNlaGVyIDopIChUcmF1bWEsIDMwLiBNYWkgMTk5OSwgMDM6NDg6MjYpOgpIZXJvTWNGbHkgc2FndDogdHlwbwpIZXJvTWNGbHkgc2FndDogYWFyY2hpdGVya3RlbnF1ZXN0Ckhlcm9NY0ZseSBzYWd0OiBhcmdzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYSBqZXR6IGdlaHRzIGFiZXIgbG9zIDotKSAoVGFyYWdvbiwgMzAuIE1haSAxOTk5LCAyMjo1Nzo0Myk6CiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBTaGFyaWEgaW4gUnVicmlrICJiYWxhbmNlIi4KPiBubgpObyBuZXdzIChpcyBnb29kIG5ld3MpCj4gcnVicmlrIGJhbGFuY2UKT2ssIER1IGhhc3QgZGllIFJ1YnJpayBiYWxhbmNlIG1pdCAwIEFydGlrZWxuIGF1Zmdlc2NobGFnZW4uCgpQb2VoIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5hIGpldHogZ2VodHMgYWJlciBsb3MgOi0pIChTaGFyaWEsIDMwLiBNYWkgMTk5OSwgMjI6NTk6MDkpOgp+IyEgcm49VGFyYWdvbiBydD05MjgwOTc4NjMgcmc9c2NobWFycm4KfiMhIHRpZD05MjgwOTc4NjMKaG1wZiA6KQoKamFqYSBmYWxzY2hlIHJ1YnJpayA6KQoKU2hhcmlhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvdXQgb2YgY29udGV4dCA6KSAoQW5hdG9sLCAzMC4gTWFpIDE5OTksIDIzOjM5OjIxKToKWmVwaHlyIHNhZ3Q6ICBkYSBoYWJlbiB3aXJzLi4gZnVtbWVsbiBpcyB1bmdlc3VuZCA7KQoKQWxzby4uLiAKQW5hdG9sIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXUgd2VpYSAoU2hhbm5hcmEsIDMxLiBNYWkgMTk5OSwgMTM6MzY6NTApOgpbI01HOiNpcmN0YW1dIGhpIG1vcwpbI01HOiNEaW1vc10gdWkKW0FsbGdlbWVpbjpNYWdpY29sbGldIFNlaXQgd2FubiBicmF1Y2h0IG1hbiBmdWVyIERyZWlyYWVkZXIgZWluZSBWZXJzaWNoZXJ1bmc/ClsjTUc6I2lyY3RhbV0gQkhrTHRFTyQ9JCYkKyEpQgpbI01HOiNEaW1vc10gcmVzaXN0NzI4CltBbGxnZW1laW46RHJvbGxpXSBzZWl0IHdhbm4gaGFiZW4gYXV0b3MgYmVpIGRpciAzIHJhZWRlcj8KWyNNRzojRGltb3NdIEI8dSQxPGgkaiQ/JCQkRyQ5QgpbI01HOiNpcmN0YW1dIEJESSQkJEQkKyRsJD9CVFQKW0FsbGdlbWVpbjpNYWdpY29sbGkgZ3JpbnN0IERyb2xsaSBsaWViIGFuXQpbI01HOlNoYW5uYXJhXSBhdSB3ZWlhLCB3YXMgc29sbCBkZW5uIERBUyB3ZXJkZW4/Cj4gWyNNRzojRGltb3NdIEI6RzZhPmUkLCRpJEokKyRDJD8kMSRJQgpbI01HOiNEaW1vc10gQjpyRnxAb0YuJDckPyRpQgpbI01HOlNoYW5uYXJhXSBpY2ggcmF0ZSBtYWw6IG1pY3Jvc29mdCBjb21pYyBjaGF0Pwo+IFtUcnZlczpOb3Zhc3Rvcm1dIFRhY2gsIGd1cnouLi4KWyNNRzojRGltb3NdIEIkXiQ/PmUkLCRqPVAkNyQ/QgpbI01HOiNpcmN0YW1dIEIjRiNCJEtKUSQoJD8kTiRiQgpbI01HOiNpcmN0YW1dIEIkaCQrJEMkPyRzJDgkYyRKJCQhKUIKW1RydmVzOkhpYmJlbGlnXSBodWh1IE5vdmFzdG9ybQpbI01HOiNEaW1vc10gQiQ9JCYkXyQ/JCQkRyQ5QgpNdHYgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKWyNNRzojRGltb3NdIEJNayRoJGokYkE0QTMkXiQ3QgpbI01HOiNpcmN0YW1dIEIkcyQ4JGMhIk5jJE4ySCReJEckLSRGJEEkZ0IKRHUga251ZGRlbHN0IE1UViBhdXMgZGVyIEZlcm5lLgo+IFsjTUc6I0RpbW9zXSBCTgoyckIKCldhcyBmdWVyICJTcHJhY2hlIiBpc3NuIGRhc3M/CgpTSGFubmFyYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBvdXQgb2YgY29udGV4dCA6KSAoTm92YXN0b3JtLCAzMS4gTWFpIDE5OTksIDEzOjQ2OjI1KToKfiMhIHJuPUFuYXRvbCBydD05MjgxMDAzNjEgcmc9c2NobWFycm4KfiMhIHRpZD05MjgxMDAzNjEKKm11c3RlciBNYW1hKiAuLi4gbyBPIChJc3QgbWFuIGVpbm1hbCBuaWNoIGltIExhbmRlLi4uKQogICAgTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEF1IHdlaWEgKFRhcmFnb24sIDMxLiBNYWkgMTk5OSwgMTY6MDk6MzIpOgp+IyEgcm49U2hhbm5hcmEgcnQ9OTI4MTUwNjEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI4MTUwNjEwClsjTUc6I0RpbW9zXSBCJF4kPz5lJCwkaj1QJDckP0IKWyNNRzojaXJjdGFtXSBCI0YjQiRLSlEkKCQ/JE4kYkIKWyNNRzojaXJjdGFtXSBCJGgkKyRDJD8kcyQ4JGMkSiQkISlCCgpEYXMgaXN0IEFGQUlLIGthbmppIGVuY29kaW5nLiBTcHJpY2g6IEJlaSBkZW5lbiBhdWYgZGVtIEJpbGRzY2hpcm0gaXN0IGRhcyBhbHMKKGNoaW5lc2lzY2hlfGphcGFuaXNjaGV8a29yZWFuaXNjaGV8c29uc3RpZ2UpIFNjaHJpZnR6ZWljaGVuIGVyc2NoaWVuZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKZXR6dCBpc3QgZXMgb2ZmaXppZWxsLi4uIChXaW0sIDMxLiBNYWkgMTk5OSwgMTg6MzE6NDUpOgpbTWFnaWVyOlJ1bWF0YSBlcm5lbm50IFBhZHJlaWMgbWl0IHNvZm9ydGlnZXIgV2lya3VuZyB6dW0gU3VlbmRlbiBFTV0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadSB3YXMgZWluIGtsZWluZXIgU2F0eiBkb2NoIGZ1ZWhyZW4ga2FubiA6KSAoU3RpbmcsIDMxLiBNYWkgMTk5OSwgMjE6MDg6MjcpOgpbU2VoZXI6QW5hY3Jpb25dIGFlaGVtLiBpc3QgZWluIG1hZyBkYSwgZGVyIG1hbCBrdXJ6IHplaXQgaGF0ID8gYWxzbyBtZWluCltTZWhlcjpBbmFjcmlvbl0gc2VoZXJoYXVzIGlzdCBmdXRzY2ggLi4KW1NlaGVyOk11cGZlbF0gdGphIGRhcyB3YXIgZWluZmFjaCB6dXZpZWwuIHBhZHJlaWMgZXJsYXVidCBudXIgbm9jaCAzMDAKW1NlaGVyOk11cGZlbF0gaGFldXNlcgpbU2VoZXI6U3RpbmddIHN0aW1tdCwgZGFzIGlzdCBiaXR0ZXIKW1NlaGVyOlN0aW5nXSBtZWlucyBoYXQgZXIgdmVyc2Nob250LCBkYSBpY2ggZ2VudWcgZGV0YWlscyBoYXR0ZQpbU2VoZXI6QW5hY3Jpb25dIGVzIGlzdCBub2NoIGRhIC4uIGFiZXIgZGllIGJlc2NyZWlidW5nIGlzdCB3ZWcgdW5kIGRpZQpbU2VoZXI6QW5hY3Jpb25dIHZ2ZXJiaW5kdW5nIGluIGRlbiByYXVtIG1pdCBtZWluZXIgcHJhbGxnZWZ1ZWxsdGVuIHRydWhlCltTZWhlcjpTdGluZ10gZHUgaGF0dGVzdCB3b2hsIHp1IHdlbmlnIGRldGFpbHMKW1NlaGVyOlN0aW5nXSBoYXN0IGR1IGV0d2Ega2VpbmUgbWFpbCB2b24gcGFkcmVpYyBiZWtvbW1lbiA/CltTZWhlcjpBbmFjcmlvbl0gYmVzY2h3b2VydCBtaWNoIG1hbCAuLiBkZXIgcmF1bSB3YXIgdm9sbGJlc2NocmllYmVuCltTZWhlcjpBbmFjcmlvbl0gaWhyIHNlaWQgc28ga2xhc3NlIGp1bmdzIC4uLgpbU2VoZXI6U3RpbmddIGhtbSwgZGFubiBpc3QgcGFkcmVpYyB3b2hsIGVpbiBtaXNzZ2VzY2hpY2sgdW50ZXJsYXVmZW4KW1NlaGVyOlNtaWxleV0gd2FzIGRlbm4sIHBhZCogaGF0cyBhdWYgaGFldXNlciBhYmdlc2VoZW4gPwpEZXIga2xlaW5lIFVyZHJhY2hlIHZvbiBNdXBmZWwgdGFwcHN0IGhlcmVpbiB1bmQgZ3JpbnN0IERpY2ggYW4uIEtpY2hlcm5kCmZsaWVndCBlciB3aWVkZXIgdm9uIGRhbm5lbi4KTXVwZmVsIHRlaWx0IERpciBtaXQ6IHBvc3Rlc3QgZHUgZGFzPyA6LSkKW1NlaGVyOlRydWddIGRhcmYgaWNoIGZyYWdlbiwgd2FydW0gZXMgamV0enQgc28gZWluZSBCZXNjaHJhZW5rdW5nIGdpYnQ/CltTZWhlcjpOb3Zhc3Rvcm1dIEVpbiBNaXNzZ2VzY2hpY2s/IDspCltTZWhlcjpUcnVnXSBTcGVpY2hlcnByb2JsZW1lPwpbU2VoZXI6U3RpbmddIHNwZWljaGVycHJvYmxlbWUKR25vbWVzIHNjaGFsbGVuZGVzIExhY2hlbiBrYW5uc3QgRHUgYXVzIGRlciBGZXJuZSBub2NoIGhvZXJlbi4KW1NlaGVyOk5vdmFzdG9ybV0gU2FnIGRpZSBXYWhyaGVpdCBTdGluZwpBbmFjcmlvbiB0ZWlsdCBEaXIgbWl0OiBzdGVodCBkYXp1IHdhcyBpbiBkZXIgTVBBID8gbm9jaCBuaWNodCB6dW0gbGVzZW4KQW5hY3Jpb24gdGVpbHQgRGlyIG1pdDogZ2Vrb21tZW4gLi4KW1NlaGVyOk5lc2FqYV0gYmVzc2VyIHNwZWljaGVycHJvYmxlbWUgYWxzIHNwZWljaGVscHJvYmxlbWUgOikKW1NlaGVyOkdvbGFzXSBtYWNodCBlciBkb2NoCkFuYWNyaW9uIHRlaWx0IERpciBtaXQ6IGFsc28gaWNoIG1laW5lIHdlZ2VuIGRlcyBiaWJvLWJ1Z3MgdW5kIHNvID8gaGFlbmd0IGRhcwpBbmFjcmlvbiB0ZWlsdCBEaXIgbWl0OiB6dXNhbW1lbiA/CltTZWhlcjpSaWt1cyBzYWJiZXJ0IFN0aW5nIHZvbGxdCltTZWhlcjpOb3Zhc3Rvcm1dIExpZWd0IGFuIGVpbmVyIEFlbmRlcnVuZyBkZXIgTXVkbGliLi4uIG11c3Mgc2ljaCBpbiBsZXR6dGVyCltTZWhlcjpOb3Zhc3Rvcm1dIFplaXQgYXVmIGVpbmlnZSBCZXJlaWNoZSBiZWxhdWZlbiBoYWJlbgpbU2VoZXI6QW5hY3Jpb25dIGFsc28gZG9jaCAuLiBuYSBqYS4gd2VuaWdzdGVuZCBkaWUgdXJzYWNoZSBnZXJhdGVuIC4uCltTZWhlcjpBbmFjcmlvbl0gZGFzIGtvbWlzY2hlIGlzdCwgZGFzcyBpY2ggZGllIHZlcmJpbmR1bmcgbm9pY2h0IG5ldQpbU2VoZXI6QW5hY3Jpb25dIGVpbnJpY2h0ZW4ga2Fubiwgd2VpbCBzaWUgYW5nZWJsaWNoIHNjaG9uIGRhIGlzdCAsLi4uLgpbU2VoZXI6Tm92YXN0b3JtXSBEdSBrYW5uc3QgZGFzIFNlaGVyaGF1cyB2b24gZWluZW0gWndlaXRpZSB2b24gbWlya3JpZWdlbiwKW1NlaGVyOk5vdmFzdG9ybV0gaGFiIGluIFp1a3VuZnQgZWgga2VpbmUgWmVpdCBtZWhyIGRhZnVlcgpbU2VoZXI6QW5hY3Jpb25dIGljaCB3aWxsIGVoIG5pY2h0IG1laHIgc28gdmllbCBtdWRkZW4gLi4uIDspIHdhciBudXIgZWJlbgpbU2VoZXI6QW5hY3Jpb25dIGJsb2VkLCB3ZWlsIGljaCBkb2NoIG1hbCBldHdhcyB0YW5rZ2VsZCBoYWV0dGUgYnJhdWNoZW4KW1NlaGVyOkFuYWNyaW9uXSBrb2VubmVuIDspCltTZWhlcjpOb3Zhc3Rvcm1dIEFoc28sIHN0aW1tdCwgaXN0IGVpbiBQcm9ibGVtCltTZWhlcjpTdGluZ10gYWxzbyBzb2xsIGljaCBtYWwgbWl0IHBhZHJlaWMgbGFiYmVybiA/CltTZWhlcjpTdGluZ10gaWNoIGhhYiBuZW4gZ3V0ZW4gZHJhaHQgenUgaWhtCltTZWhlcjpOb3Zhc3Rvcm1dIE5hamEsIHZpZWxsZWljaHQga2FubiBlciBkaWUgQW56YWhsIGF1ZiAzNTAgZXJob2VoZW4KW1NlaGVyOk5vdmFzdG9ybV0gd2FlcmUgc2Nob24gbmV0dApbU2VoZXI6VHJ1Z10gZWhlciA1MDAKW1NlaGVyOk5vdmFzdG9ybV0gTmFqYSwgNTAwLi4uIGlzdCBkYXMgbmljaHQgdWViZXJ0cmllYmVuID8KW1NlaGVyOlN0aW5nXSBkYXMgd2lyZCBzY2h3aWVyaWcsIGRhcyBsYWcgaXN0IGVjaHQgdWViZWwgZ2VzdGllZ2VuIGJlaSBkZW4KW1NlaGVyOlN0aW5nXSBsZXR6dGVuIHRlc3R2ZXJzdWNoZW4KW1NlaGVyOlRydWddIGhtIGVzIHNvbGx0ZSB2aWVsbGVpY2h0IGF1Y2ggbm9jaCAnbHVmdCcgZnVlciBuZXVlciBzZWhlciBoYWx0CltTZWhlcjpUcnVnXSBzZWluCltTZWhlcjpUcnVnXSB1bmQgd2FzIGlzdCwgd2VubiBtZWhyZXJlIHNlaGVyIGdlbWVpbnNhbSBhbiBFSU5FTiBoYXVzIGJhdWVuCltTZWhlcjpUcnVnXSBrb2VubnRlbj8KW1NlaGVyOlRydWddIGRhcyB3dWVyZGUgZGFzIGF1Y2ggcnVudGVyZHJ1ZWNrZW4uCltTZWhlcjpTdGluZ10gc293ZWl0IGljaCB3ZWlzcyB3aWxsIHBhZHJlaWMgYWxsZSBoYWV1c2VyIGR1cmNoZ2VoZW4gZGllCltTZWhlcjpTdGluZ10gd2VuaWdlciBhbHMgendlaSB6ZWlsZW4gUF9MT05HIGhhYmVuIHVuZCBkaWUgc3BlcnJlbgpbU2VoZXI6Tm92YXN0b3JtXSBTdGltbXQsIGVpbiBnZW51ZWdlbmQgZ3Jvc3NlciBQdWZmZXIgc29sbHRlIGRhIHNlaW4uLi4KW1NlaGVyOk5vdmFzdG9ybV0gdmllbGxlaWNodCBrYW5uIG1hbiBqYSBzbyBlaW5lIEFydCBmbGllZ2VuZGVuIFdlY2hzZWwKW1NlaGVyOk5vdmFzdG9ybV0gZWlucmljaHRlbiA/IFdlbm4gZWluIFNlaGVyIDUgTW9uYXRlIG9kZXIgc28gbmljaHQgZGEgd2FyLApbU2VoZXI6Tm92YXN0b3JtXSBlcyBhYnJlaXNzZW4gPwpbU2VoZXI6RnJlaXRhZ10gd2FzIHNvbGwgZGVyIHNjaGVpc3MgZGVubj8KW1NlaGVyOk5hY2h0d2luZF0gaWNoIGJpbiBmdWVyIDRlciBXR3MsIG1pbmRlc3RlbnMKW1NlaGVyOkdub21lXSBob2VydCBhdWYgbGV1dGUsIGljaCBsaWVnIGdsZWljaCB1bnRlcm0gdGlzY2ggOikpKQpbU2VoZXI6Tm92YXN0b3JtXSBKZWRlciBzb2xsdGUgZGFzIFJlY2h0IGF1ZiBlaW4gZWlnZW5lcyBIYXVzIGhhYmVuIQpbU2VoZXI6U3RpbmddIGJlaSBkZXIgZHVyY2hyZWNobnVuZyBrYW0gZWNodCB1ZWJsZSB6YWhsZW4gcmF1cwpbU2VoZXI6VGFyYWdvbiBpc3QgZnVlciBkaWUgQWJzY2hhZmZ1bmcgZGVyIEhhZXVzZXIgc29sYW5nZSBkaWUgYWJnZWxlZ3RlbgogICAgICAgU2FjaGVuIGRvcnQgbmljaHQgYXV0b2xvYWQgd2VyZGVuIDotKV0KW1NlaGVyOk5hY2h0d2luZF0gd2lyIGtvZW5udGVuIGF1Y2ggZWluIHBhYXIgc2NoaWNrZSBwbGF0dGVuYmF1dGVuIGhvY2h6aWVoZW4uCltTZWhlcjpOYWNodHdpbmRdIHpvbmktcmV0cm8tbG9vay4uLgpbU2VoZXI6Tm92YXN0b3JtXSBNbWguCltTZWhlcjpOb3Zhc3Rvcm1dIEFsYSBTdGFtbWJhdW0gPwpbU2VoZXI6R25vbWVdICp3YWVseioKW1NlaGVyOlN0aW5nXSBoZXksIGpldHp0IHdlcmRldCBpaHIgYWxiZXJuCltTZWhlcjpUYXJhZ29uXSB3aWUgd2FlcnMgbWl0IDE1ZXIgc2VoZXJob2NoaGFldXNlcm4gPwpbU2VoZXI6U3RpbmddIGRhcyB3dWVyZGUgZGllIG11ZC1hdG1vc3BoYWVyZSB6ZXJzdG9lcmVuCltTZWhlcjpUYXJhZ29uXSBzbyB3aWUgaW0gZnJhbmtmdXJ0ZXIgc296aXZpZXJ0ZWwgOi0pCltTZWhlcjpUYXJhZ29uXSBtdWRhdG1vc3BoYWVyZSA/IGdpYnRzIHNvd2FzIGhpZXIgdWViZXJoYXVwdCBub2NoID8gOi0pCltTZWhlcjpOb3Zhc3Rvcm1dIHdpZXNvIG5pY2ggYXVjaCBTZWhlcmhvY2hidXJnZW4gPwpbU2VoZXI6SXNub2dvb2RdIGFsc28gaWNoIHZlcnN0ZWhlIGRpZSBnYW56ZSBEaXNrdXNzaW9uIG5pY2h0LCBiaXNoZXIgaGFiZW4KW1NlaGVyOklzbm9nb29kXSB3aXIgZG9jaCAwIExhZyBhdWYgZGVtIE11ZHJlY2huZXIKW1NlaGVyOk5vdmFzdG9ybV0gUGZmdCwgd28gbGVic3QgRHUgZGVuIFRhcmFnb24gLi4uIFR1cm5oYWxsZW4hCltTZWhlcjpUYXJhZ29uIGdyaW5zdF0KW1NlaGVyOlN0aW5nXSB3ZW5uIGljaCBwYWRyZWljIGd1dCB6dXJlZGUga3JpZWcgaWNoIGJlc3RpbW10IDUgaGFldXNlciBwcm8KW1NlaGVyOlN0aW5nXSBidXJnIGR1cmNoCltTZWhlcjpNdXBmZWxdIHNlaGVydHVybmhhbGxlbj8gbWl0IHNjaGxhZnNhZWNrZW4gd29tb2VnbGljaD8gOi0pCltTZWhlcjpUYXJhZ29uXSBhYmVyIHNpY2hlciBkb2NoLi4uCltTZWhlcjpOb3Zhc3Rvcm1dIEFlaG0gSXNub2dvb2QsIGlyZ2VuZHdpZSB2ZXJzdGVoc3QgRHUgZGllIFByb2JsZW1hdGlrIG5pY2h0CltTZWhlcjpTdGluZ10gamEsIGRpZSBncnVuZGxlZ2VuZGUgcmVsZXZhbnoKW1NlaGVyOklzbm9nb29kXSBzaWVodCB3b2hsIHNvIGF1cwpbU2VoZXI6U3RpbmddIGVocmxpY2ggZ2VzYWd0LCBmaW5kIGljaHMgcGVyc29lbmxpY2ggYXVjaCBsdXN0aWcsIGFiZXIgbWVpbgpbU2VoZXI6U3RpbmddIGhhdXMgaXN0IGphIGF1Y2ggZ3V0IGdlbnVnIGJlc2NocmllYmVuCltTZWhlcjpUYXJhZ29uIG1hZyBkaWUgaGFldXNlciBlaCBuaWNodCBiZXNvbmRlcnMgOi0pXQoKClN0aW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWnUgd2FzIGVpbiBrbGVpbmVyIFNhdHogZG9jaCBmdWVocmVuIGthbm4gOikgKFBhZHJlaWMsIDMxLiBNYWkgMTk5OSwgMjM6MjY6MzkpOgp+IyEgcm49U3RpbmcgcnQ9OTI4MTc3NzA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI4MTc3NzA3CkdpYnQgYWxzbyBkb2NoIG5vY2ggZ3V0ZSBJZGVlbiB2b24gU3BpZWxlcnNlaXRlLi4uLgoKUGFkcmVpYywgKnJvdGZsdCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWnUgd2FzIGVpbiBrbGVpbmVyIFNhdHogZG9jaCBmdWVocmVuIGthbm4gOikgKFB1Y2ssIDMxLiBNYWkgMTk5OSwgMjM6Mjg6MjkpOgp+IyEgcm49UGFkcmVpYyBydD05MjgxODU5OTkgcmc9c2NobWFycm4KfiMhIHRpZD05MjgxNzc3MDcKSWNoIGFuIERlaW5lciBTdGVsbGUgd3VlcmRlIG1pciBHZWRhbmtlbiBkYXJ1ZWJlciBtYWNoZW4sIHdhcyBlcyBiZWRldXRldCwKZGFzcyBtYW4gRGlyIHNvbGNoZSAnJ01laXN0ZXJsZWlzdHVuZ2VuJycgenV0cmF1dCwgd2VydGVyIFBhZHJlaWMgOikKClB1Y2shIF06XikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLbGVpbmdlaGFja3Rlcy4uLiAoTm92YXN0b3JtLCAgMS4gSnVuIDE5OTksIDExOjQ0OjUxKToKRGllIERyYWNoZW5zY2hpbGRrcm9ldGUgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KW2lzcyBsZWljaGVdCkhtbW0sIGxlY2tlciEKICAgTm92YSwgcmFuZHZvbGwgLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFuZ3N0IG1hY2hlbiAoTm9ubmUsICAxLiBKdW4gMTk5OSwgMTE6NDk6MzIpOgpEaWVzZXIgQXJ0aWtlbCBpc3QgbnVyLCB1bSBoaWJiZWxpZyBhbmdzdCB6dSBtYWNoZW4gOy0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmJydWVsbCAoU2lndXJhLCAgMS4gSnVuIDE5OTksIDIxOjE2OjA4KToKSGFjaGltYW4gc2FndDogb2tpIGthcmF0ZWthIHRpbWUKSGFjaGltYW4gcmllY2h0IEJpZXIgdW5kIHN0dWVybXQgbmFjaCBkdXJjaCBlaW5lbiBkdW5rbGVuIEdhbmcuClRvZDpMYXJzIEVpbmUgUmF0dGUgaGF0IGdlcmFkZSBIYWNoaW1hbiB1bWdlYnJhY2h0LgpUb2Q6RWluZSBSYXR0ZSBIbW1tLCBEZWluIEJsdXQgc2NobWVja3QgZ2FyIG5pY2h0IHNvIHNjaGxlY2h0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMZXJuZSwgRGVpbmUgRnJhZ2UgcmljaHRpZyB6dSBzdGVsbGVuLiBUZWlsICMxIChSaW5nb3IsICAxLiBKdW4gMTk5OSwgMjE6NTY6MDkpOgpbU2VoZXI6UGFkcmVpY10gYWVoIHdpZSBzY2hpZXNzZSBpY2ggdW50ZXIgS0RFIGVpbiBmZW5zdGVyIGFiLCBkYXMgbmljaHQgbWVocgpbU2VoZXI6UGFkcmVpY10gcmVhZ2llcnQ/IDwyMTo0Mjo1Mz4KW1NlaGVyOlRodWZpcl0ga2lsbCAtOSA8MjE6NDM6MDE+CltTZWhlcjpSaW5nb3JdIHN0cmctYWx0LWJhY2tzcGFjZT8gPDIxOjQzOjExPgpbU2VoZXI6RmV1ZXJ3ZWhyXSB4a2lsbD8gPDIxOjQzOjMzPgpbU2VoZXI6TXVwZmVsXSBhbHQtZjIsIGRhbm4ga2lsbCA8MjE6NDM6Mzk+CltTZWhlcjpNdXBmZWxdIHN0ZWNrZXIgcmF1c3ppZWhlbiA6LSkgPDIxOjQzOjUyPgpbU2VoZXI6RnJlaXRhZ10gb2RlciBlaW5mYWNoIGlnbm9yaWVyZW4gOykgPDIxOjQzOjU2PgpbU2VoZXI6RmV1ZXJ3ZWhyXSB6aWVsZSBtaXQgZGVyIFBpc3RvbGUgYXVmIGRpZSBDUFUuLi4gPDIxOjQ0OjA4PgoKWy4uLl0KCltBbGxnZW1laW46UGFkcmVpY10gYXJnaHMgc3RyZy1hbHQtYmFja3NwYWNlIGhhdCBnbGVpY2ggZ2FueiB4IGJlZW5kZXQKW0FsbGdlbWVpbjpQYWRyZWljXSAqZ3J1bW1lbCogPDIxOjQ0OjMwPgoKUmluZ29yIGRlbmt0IC4gbyBPKG9iIGVyIHN0cmctYWx0LWRlbCBhdWNoIHByb2JpZXJ0IGhhZXR0ZT8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGVybmUsIERlaW5lIEZyYWdlIHJpY2h0aWcgenUgc3RlbGxlbi4gVGVpbCAjMSAoTmFjaHR3aW5kLCAgMS4gSnVuIDE5OTksIDIyOjAyOjAzKToKfiMhIHJuPVJpbmdvciBydD05MjgyNjY5Njkgcmc9c2NobWFycm4KfiMhIHRpZD05MjgyNjY5NjkKSGV5IGhleSwgd2lyIHdvbGxlbiBkb2NoIE11cGZlbHMgUG9pbnRlIG5pY2h0IHVudGVyc2NobGFnZW4uLi4gOikKCltTZWhlcjpQYWRyZWljXSBhZWggd2llIHNjaGllc3NlIGljaCB1bnRlciBLREUgZWluIGZlbnN0ZXIgYWIsIGRhcyBuaWNodCBtZWhyCltTZWhlcjpQYWRyZWljXSByZWFnaWVydD8KW1NlaGVyOlRodWZpcl0ga2lsbCAtOQpbU2VoZXI6UmluZ29yXSBzdHJnLWFsdC1iYWNrc3BhY2U/CltTZWhlcjpGZXVlcndlaHJdIHhraWxsPwpbU2VoZXI6TXVwZmVsXSBhbHQtZjIsIGRhbm4ga2lsbApbU2VoZXI6TXVwZmVsXSBzdGVja2VyIHJhdXN6aWVoZW4gOi0pCi4uLgpbTWFnaWVyOlBhZHJlaWNdIGFyZ2hzIHN0cmctYWx0LWJhY2tzcGFjZSBoYXQgZ2xlaWNoIGdhbnogeCBiZWVuZGV0ICpncnVtbWVsKgpbTWFnaWVyOk5hY2h0d2luZCBncmluc3QuXQpbTWFnaWVyOkZldWVyd2Vocl0gSmEsIG5hdHVlcmxpY2guIEFlaG0sIHdhcnVtIGhvZXJzdCBEdSBhdWYgUmluZ29yPwpbTWFnaWVyOld1cnplbF0ga2RlIGlzdCBoYWx0IG5pY2h0IHRyaXZpYWwgOikKW01hZ2llcjpOYWNodHdpbmRdIGFiZXIgZGFzIGZlbnN0ZXIgd2FyIGRvY2ggZGFubiB6dSBvZGVyPzspCltNYWdpZXI6UGFkcmVpY10gd29sbHRlIGRpZSB2b3JzY2hsYWVnZSBkZXIgcmVpaGVuZm9sZ2UgbmFjIGR1cmNoZ2VobgpbTWFnaWVyOkZldWVyd2Vocl0gKmxhY2gqCltNYWdpZXI6TXVhZGliXSB0amEgZGllIG9yZG51bmcgbWFjaHRzCltNYWdpZXI6TXVwZmVsXSBhaGphIHVuZCBhbSBlbmRlIGhhZXR0ZXN0IGR1IGRlbiBzdGVja2VyIHJhdXNnZXpvZ2VuPyA6LSkKCk5hY2h0d2luZC4gSW1tZXIgbm9jaCBncmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJvYm90ZXIsIHBmZnQuIChUcmFuY2UsICAxLiBKdW4gMTk5OSwgMjM6MzY6MjYpOgpNYXJ2aW4gc2FndDogRXJ6YWVobGUgbWlyIGVpbiB3ZW5pZyBhdXMgRGVpbmVyIEtpbmRoZWl0PwpEdSBzYWdzdDogYXVzIG1laW5lciBLaW5kaGVpdD8KTWFydmluIHNhZ3Q6IEljaCB2ZXJzdGVoZSEgRXJ6YWVobGUgcnVoaWcgd2VpdGVyIQpNYXJ2aW4gZ2VodCBuYWNoIE9zdGVuLgoKVHJhbmNlLCBlaW5lbiBQc3ljaGlhdGVyIHN1Y2hlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcmdsICEgOikgKEFuYWNyaW9uLCAgMi4gSnVuIDE5OTksIDA5OjQ4OjAzKToKCltmcmFnIGFsY2hlbWlzdCBuYWNoIGthdWZiYXJlIGtvbXBvbmVudGVuXQpEZXJ6ZWl0IGthbm5zdCBEdSBoaWVyIGtlaW5lIEtvbXBvbmVudGVuIGthdWZlbi4KRGVyIEFsY2hlbWlzdCBzYWd0OiBLYXVmZW4gU2llLCBzb2xhbmdlIGRlciBWb3JyYXQgcmVpY2h0ISAKCgpXaWxsIGRlciBkZW5uIHdhcyB2ZXJrYXVmZW4gPz8/CgpBbmFjKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZlcmFiZnJhZ2UgKEJvaW5nLCAgMi4gSnVuIDE5OTksIDIzOjA5OjQ4KToKfiMhIG9uPVRhcmluYSBvdD05MjgzNDUxNjIgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1IaWdodCBydD05MjgzMzQwOTUgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTI4MzM0MDk1Ck9oIEhpZ2h0LAppY2ggYmV3dW5kZXJlIERpY2ggZ3Jlbnplbmxvcy4uLiBjdXQgJiBwYXN0ZS4gV2VyIGhhdHRlIGRhcyBnZWRhY2h0LCBkYXNzCnptdWQgY3V0ICYgcGFzdGUgdmVydHJhZWd0LgppbiBURiBrYW5uIG1hbiBkYXMgc2Nob24gbGFuZ2UuLi4gdW5kIHVlYnJpZ2VucyBrYW5uIG1hbiBhdWNoIGVpbmZhY2ggbWFsIGVpbiAKbG9nIGVpbnNjaGFsdGVuIHVuZCB3aWVkZXIgYXVzc2NoYWx0ZW4uLi4uCgphcmdsIQoKVGFyaW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZlcmFiZnJhZ2UgKEJvaW5nLCAgMi4gSnVuIDE5OTksIDIzOjA5OjQ5KToKfiMhIG9uPVN0aW5nIG90PTkyODM0NTQxNiBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPVRhcmluYSBydD05MjgzNDUxNjIgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTI4MzM0MDk1CkRhcyBrYW5uIG1hbiBpbiBabXVkIGF1Y2guIFNvZ2FyIGJlc3NlciB1bmQga29tZm9ydGFibGVyIDopIERpZSBMZXV0ZSBudXR6ZW4KbnVyIGFsbGUgbmljaHQgd2FzIFptdWQgd2lya2xpY2gga2Fubi4gRXMga2FubiBuYWVtbGljaCBlaWdlbnRsaWNoIG1laHIgYWxzClRGLCBudXIgaXN0IGVzIG5pY2h0IGdlcmFkZSBsZWljaHQsIHZvciBhbGxlbSBkaWUgZWlnZW5lIHNjcmlwdHNwcmFjaGUgdXN3IDopCgpTdGluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRmVyYWJmcmFnZSAoQm9pbmcsICAyLiBKdW4gMTk5OSwgMjM6MDk6NTApOgp+IyEgb249VGFyaW5hIG90PTkyODM0NTQ3MCBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPVN0aW5nIHJ0PTkyODM0NTQxNiByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05MjgzMzQwOTUKYWJlciB6bXVkIGxhZXVmdCB1bnRlciBsaW51eCBuaWNodCwgb2Rlcj8gOy0pCgpUYXJpbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZlcmFiZnJhZ2UgKEJvaW5nLCAgMi4gSnVuIDE5OTksIDIzOjA5OjUxKToKfiMhIG9uPVN0aW5nIG90PTkyODM0NTUxNiBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPVRhcmluYSBydD05MjgzNDU0NzAgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTI4MzM0MDk1CkRhcyBoYWIgaWNoIG5pZSBiZWhhdXB0ZXQgOikgYWJlciB3ZW5uIGludGVyZXNzaWVydCBzY2hvbiBMaW51eCBpbSBwcml2YXRlbgpCZXJlaWNoIDopIAoKU3RpbmcsIGhvZmZlbnRsaWNoIHdpZWRlciBlaW5lIERpc2t1c3Npb24gYW56ZXR0ZWxuZCwgdWViZXIgZGllIGVyIHNpY2gKa29lc3RsaWNoIGFtdWVzaWVyZW4ga2FubiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEZlcm5hYmZyYWdlIGRlciBGYWVoaWdrZWl0ZW4gKEJvaW5nLCAgMi4gSnVuIDE5OTksIDIzOjA5OjUyKToKfiMhIG9uPVRhcmluYSBvdD05MjgzNDU1OTggb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1BbWFyeWxsaXMgcnQ9OTI4MzE4MTAwIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTkyODE3MTQ0MAptaWNoIG5hdHVlcmxpY2guIGljaCBoYWIga2VpbmVuIGJvY2ssIG1pciBkZW4ga3JhbSBmdWVyIG1laW5lbiBwcml2YXRlbgpiZXJlaWNoIHp1IGthdWZlbi4gZGEgaXN0IGxpbnV4IG9wdGltYWwgOi0pCgpUYXJpbmEgKG1laHIgZ2lidHMgbmljaHQgenUgbGFjaGVuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEZlcm5hYmZyYWdlIGRlciBGYWVoaWdrZWl0ZW4gKEJvaW5nLCAgMi4gSnVuIDE5OTksIDIzOjA5OjUzKToKfiMhIG9uPVN0aW5nIG90PTkyODM0NTY3OCBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPVRhcmluYSBydD05MjgzNDU1OTggcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTI4MTcxNDQwCkdsYXVic3RlIGljaCBrYXVmIG1pciB3YXMgPyA6KSBpY2ggYmVudXR6IGltbWVyIG5vY2ggem11ZCA0LjYyLCBkYXMgdHV0cwpnZW5hdXNvICpncmlucyogYXVzc2VyZGVtIGdpYnRzIGZ1ZXIgV2luZG93cyB3ZXNlbnRsaWNoIG1laHIgU2hhcmV3YXJlIHVuZApQdWJsaWMgRG9tYWluIGFscyBtYW5jaCBlaW5lciBoaWVyIGdsYXVidCA6KQoKU3RpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBGZXJuYWJmcmFnZSBkZXIgRmFlaGlna2VpdGVuIChCb2luZywgIDIuIEp1biAxOTk5LCAyMzowOTo1NCk6Cn4jISBvbj1UYXJpbmEgb3Q9OTI4MzQ1NzQyIG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49U3RpbmcgcnQ9OTI4MzQ1Njc4IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTkyODE3MTQ0MApib2VzZSBncmlucy4uLgoKYWJlciBkYXMgV2luZG93cyBtdXNzdCBkdSBzY2hvbiBrYXVmZW4gKHp1bWluZGVzdCByZWluIHRoZW9yZXRpc2NoKSA7LSkKCnRhcmluYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEZlcm5hYmZyYWdlIGRlciBGYWVoaWdrZWl0ZW4gKEJvaW5nLCAgMi4gSnVuIDE5OTksIDIzOjA5OjU1KToKfiMhIG9uPVN0aW5nIG90PTkyODM0NTgxMCBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPVRhcmluYSBydD05MjgzNDU3NDIgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTI4MTcxNDQwCkhtbSwgbmFqYSwgaXN0IGRvY2ggYmVpIGplZGVtIFJlY2huZXIgZGFiZWksIHdhcyB3aXIgTWljcm9zb2Z0IHVuZCBCaWxsaWUKJ3ZlcmRhbmtlbicgOikKClN0aW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogRmVybmFiZnJhZ2UgZGVyIEZhZWhpZ2tlaXRlbiAoQm9pbmcsICAyLiBKdW4gMTk5OSwgMjM6MDk6NTYpOgp+IyEgb249QWNyaW1vbiBvdD05MjgzNDU4OTQgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1TdGluZyBydD05MjgzNDU4MTAgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTI4MTcxNDQwCm5pY2h0IGJlaSBqZWRlbSBSZWNobmVyLCBzb25kZXJuIGJlaSBfZmFzdF8gamVkZW0gZHVtbWVuIFBDLgpFcnN0ZW5zIGdpYnQgZXMgYmVzc2VyZSBSZWNobmVyLCB1bmQgendlaXRlbnMga2FubiBtYW4gUENzIGF1Y2ggb2huZSBXaW5kb29mCmthdWZlbi4KCkFjcmltb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBGZXJuYWJmcmFnZSBkZXIgRmFlaGlna2VpdGVuIChCb2luZywgIDIuIEp1biAxOTk5LCAyMzowOTo1Nyk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTI4MzU3NDg0IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49QWNyaW1vbiBydD05MjgzNDU4OTQgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTI4MTcxNDQwClZvbiBhY2h0IFJlY2huZXJuLCBhbiBkZXJlbiBCZXNjaGFmZnVuZyBpY2ggYmV0ZWlsaWd0IHdhciwgd2FyIGdlbmF1IGJlaSBlaW5lbQplaW4gQmV0cmllYnNzeXN0ZW0gZGFiZWkuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBGZXJuYWJmcmFnZSBkZXIgRmFlaGlna2VpdGVuIChXdXJ6ZWwsICAyLiBKdW4gMTk5OSwgMjM6Mjg6MjYpOgp+IyEgcm49Qm9pbmcgcnQ9OTI4MzU3Nzk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI4MTcxNDQwCmJlaSBkZW4gcmVzdGxpY2hlbiBzaWViZW4gd2FyIGRhbm4gd2FocnNjaGVpbmxpY2ggZWluIHdpbmRvb2Ygdm9yaW5zdGFsbGllcnQuCmFiZXIgaW1tZXJoaW4sIGVpbmVyIHZvbiBhY2h0IG1pdCBlaW5lbSBiZXRyaWVic3N5c3RlbSwgZGFzIGlzdCBkb2NoIHNjaG9uIG1hbAp3YXMuLi4KCnd1cnplbAoKcC5zLiBkaWVzZXIgYXJ0aWtlbCBpc3Qgc2Nob24gZGEsIHdvIGVyIGhpbmdlaG9lcnQuIGxlaWRlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZlcmFiZnJhZ2UgKE11cGZlbCwgIDMuIEp1biAxOTk5LCAwMDoxNTowMSk6Cn4jISBybj1Cb2luZyBydD05MjgzNTc3OTEgcmc9c2NobWFycm4KfiMhIHRpZD05MjgzMzQwOTUKTmFqYSBpY2ggaGFiIGJlaWRlcyBhdWYgZGVtIFJlY2huZXIsIGRlbm4gc29sYW5nZSBpY2ggdW50ZXIgV2luZG9vZnMgbmljaHQKYmVpbSBNdWRkZW4gbm9jaG4gR0QgYXVmc3RhcnRlbiBrYW5uIHVuZCBtaWNoIGluIGRhcyBIb21lbXVkIG1pdCBuZW0gTWFnaWVyCnVuZCB6d2VpIFNwaWVsZXJuIGVpbmxvZ2dlbiBrYW5uLCBibGVpYnQgbGludXggZHJhdWYgOi0pCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRmVyYWJmcmFnZSAoRGFya3dpbmcsICAzLiBKdW4gMTk5OSwgMDA6MzQ6MjEpOgp+IyEgcm49Qm9pbmcgcnQ9OTI4MzU3Nzg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI4MzM0MDk1CkFlaG0gU3RpbmcuLi4KTWFjaCBtYWwgZWluIFdlZ2VzeXN0ZW0gdW50ZXIgem11ZC4uLiBzbyBlaW4gcmljaHRpZyBndXRlcy4KClZpZWxsZWljaHQgYmVrb21tc3QgRHUgZXMgdGF0c2NobGljaCBoaW4sIGFiZXIgaWNoIHdldHRlIGRhbm4gYmluIGljaCB1bnRlciB0Zgp6dSBGdXNzIHNjaG5lbGxlciA6LSkKCkRhcmt3aW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbXBmIGVpbm1hbCB3ZW5uIG1hbiB3YXMgbmFjaGhvbGVuIHdpbGwgKEhpZ2h0LCAgMy4gSnVuIDE5OTksIDAwOjQxOjM4KToKc2FnIHVpIC4uLiBtYWwgZGFzIGhhbmRidWNoIGxlc2VuIGRhcyBrZW5uIGljaCBub2NobmV0CkR1IHNhZ3N0OiB1aSAuLi4gbWFsIGRhcyBoYW5kYnVjaCBsZXNlbiBkYXMga2VubiBpY2ggbm9jaG5ldDs+IGxpZXMgaGFuZGJ1Y2gKV2FzIHdpbGxzdCBEdSBsZXNlbi9hYmxlc2VuPzs+IG5pbW0gYnVjaApGdWVyIGRhcyBBbmZhZW5nZXJidWNoIGJpc3QgRHUgbnVuIHp1IGFsdC4KRnVlciBkYXMgQW5mYWVuZ2VyYnVjaCBiaXN0IER1IHp1IGFsdC4KRHUgbmltbXN0IGRhcyBCdWNoLgoKcGhhIGRhbm4gbmV0IC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRmVyYWJmcmFnZSAoU3RpbmcsICAzLiBKdW4gMTk5OSwgMDE6NTU6MzkpOgp+IyEgcm49RGFya3dpbmcgcnQ9OTI4MzYyODYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI4MzM0MDk1CkljaCBoYWIgc2Nob24gbmVuIGZ1bmt0aW9uaWVyZW5kZW4gQXV0b21hcHBlciBnZXNlaGVuLiBFaW4gYmVzc2VyZXMgV2VnZXN5c3RlbQpmaW5kZXQgRHUgbmlyZ2VuZHMuCgpTdGluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJhdWVuLi4uIChNaW5kYmxhZGUsICAzLiBKdW4gMTk5OSwgMDI6MTM6MDEpOgpIaWJiZWxpZyBzYWd0OiBuYSBwcmltYSwgZGVyIG5hZWNoc3RlIGlzIHNhdWVyCkhpYmJlbGlnIHNhZ3Q6IGljaCBrYW5uIGRhcyBoZXV0ZSBlY2h0IGd1dCA6KQpIaWJiZWxpZyBmcmV1dCBzaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRmVyYWJmcmFnZSAoVGVkZHksICAzLiBKdW4gMTk5OSwgMTE6NTM6NDkpOgp+IyEgcm49Qm9pbmcgcnQ9OTI4MzU3Nzg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI4MzM0MDk1CkphamEsIG9kZXIgZGllIFBhc3N3b3J0dW5kZXJkcnVlY2tlbiBiZWltIEVpbmxvZ2dlbiwgZ2VsbCBTdGluZz8gOy0pKSkKClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSb3RlIEludGVybmV0dCBGcmFrdGlvbj8gKEFsYm9pbiwgIDMuIEp1biAxOTk5LCAyMTo0Mzo0Myk6CktvZWxuIChkcGEpIC0gQmlzaGVyIFVuYmVrYW5udGUgaGFiZW4gaGV1dGUgcnVuZCAyNDAuMDAwIFRlbGVmb24tIApBbnNjaGx1ZXNzZSBpbSBSYXVtIEtvZWxuIHN0dW5kZW5sYW5nIGxhaG1nZWxlZ3QuIEdsdWVja2xpY2hlcndlaXNlIApzZWllbiBJbm5lbnN0YWR0IHVuZCBFVS1HaXBmZWx0cmVmZmVuIG5pY2h0IGJldHJvZmZlbiBnZXdlc2VuLCAKYmVyaWNodGV0ZSBQb2xpemVpZGlyZWt0b3IgR3Jhbml0emthLiBEaWUgU2Fib3RhZ2UgcmljaHRldGUgc2ljaCAKbmFjaCBzZWluZXIgQXVmZmFzc3VuZyBuaWNodCBnZWdlbiBkZW4gR2lwZmVsLCBzb25kZXJuIGdlZ2VuCmRpZSBUZWxla29tLiBEaWUgVGFldGVyIGhhZXR0ZW4gaW4gendlaSBNZXRlciB0aWVmZW4gS2FiZWxzY2hhZWNodGVuCmFuIGRyZWkgU3RlbGxlbiBHbGFzZmFzZXItS2FiZWwgZmFjaG1hZW5uaXNjaCBkdXJjaHRyZW5udC4gCgpBbGJvaW4KUC5TLiBMYW5nc2FtIGZyYWdlIGljaCBtaWNoLCBvYiBkaWUgbGFnZ3kgTGVpdHVuZyBpbiBLb2VsbiBuaWNodCBhdWNoIHdhcwpkYW16dSB0dW4gaGF0LCB2aWVsbGVpY2h0ICBoYXR0ZW4gc2llIHZvcmhlciBub2NoIG5pY2h0IGRpZSBnYW56ZSBsZWl0dW5nCmR1cmNodHJlbm50ICpraWNoZXIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUm90ZSBJbnRlcm5ldHQgRnJha3Rpb24/IChHcmltbWJvcm4sICAzLiBKdW4gMTk5OSwgMjE6NDc6NDUpOgp+IyEgcm49QWxib2luIHJ0PTkyODQzOTAyMyByZz1zY2htYXJybgp+IyEgdGlkPTkyODQzOTAyMwpNaXIgZ2VmYWVsbHQgdm9yIGFsbGVtIGRlciBBdXNkcnVjayAiZmFjaG1hZW5uaXNjaCBkdXJjaHRyZW5udCIuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QgdmVyc3RlY2t0IHVuYXVmZmFlbGxpZyBkYXMgTWVzc2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBUkdMIDooIChBbmFjcmlvbiwgIDQuIEp1biAxOTk5LCAxMTozNDozOCk6CgpEYSBzdGVodCBtYW4gYW0gU3RhZHR0b3Igdm9uIFBWICh1bmdla3Vlcnp0KSAuLi4KRGFya3dpbmcgc2NobGFlZ3QgYXVmLgpEYXJrd2luZyB2ZXJzY2h3aW5kZXQgcGxvZXR6bGljaC4KRGFya3dpbmcgc2NobGFlZ3QgYXVmLgpEYXJrd2luZyB2ZXJzY2h3aW5kZXQgcGxvZXR6bGljaC4KRGFya3dpbmcgc2NobGFlZ3QgYXVmLgpEYXJrd2luZyB2ZXJzY2h3aW5kZXQgcGxvZXR6bGljaC4KW1RvZDpMYXJzXSBFaW4gV2VnaGllciBoYXQgZ2VyYWRlIERhcmt3aW5nIHVtZ2VicmFjaHQuCltUb2Q6RWluIFdlZ2hpZXJdIEdvdGNoYSEKCipzZXVmeioKCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYWVtb25lbiA6LSkgKFRyYXVtYSwgIDQuIEp1biAxOTk5LCAxMjoxOToxMyk6CkR1IHplcnNjaG1ldHRlcnN0IGRlbiBEdW5rZWxkYWVtb24gaW4ga2xlaW5lIFN0dWVja2NoZW4uCkVpbiBEdW5rZWxkYWVtb24gbGFldWZ0IGdlZ2VuIGVpbmVuIGF1ZmdlbWFsdGVuIER1cmNoZ2FuZyBpbSBPc3Rlbi4KRGVyIER1bmtlbGRhZW1vbiBicmljaHQgdG90IHp1c2FtbWVuLgoKaGVoZSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVmFtcGlyZSA6KSAoVHJhdW1hLCAgNC4gSnVuIDE5OTksIDEyOjIyOjM3KToKW01vZXJkZXI6R2Vpc3QgZWluZXMgVmFtcGlyc10gQmxvb2QgaXN0IHNjaGxpbW1lciBhbHMgZGFzIE1lbnNhZXNzZW4uIEFic29sdXQKW01vZXJkZXI6R2Vpc3QgZWluZXMgVmFtcGlyc10gdG9lZGxpY2guCgprb21pc2NoZXIgVmFtcGlyICpnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZhbXBpcmUgOikgKE1haGF0bXUsICA0LiBKdW4gMTk5OSwgMTM6NDg6MzgpOgp+IyEgcm49VHJhdW1hIHJ0PTkyODQ5MTc1NyByZz1zY2htYXJybgp+IyEgdGlkPTkyODQ5MTc1NwpMaWVzIG1hbCBkaWUgVmFtcGlyZSBDaHJvbmljbGVzIHZvbiBBbm5lIFJpY2UgOikgU28ga29taXNjaCBpc3QgZGVyIGFsc28gZ2FyCm5pY2h0IDopPQoKTWFoYXRtdQoKUFM6IERhcyBlcnN0ZSBCdWNoIHd1cmRlIHZlcmZpbG10IC4uLiAnSW50ZXJ2aWV3IHdpdGggYSBWYW1waXJlJwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbGFnIHVuZCBrb21pc2NoZXMgemV1ZyAoUHVrLCAgNS4gSnVuIDE5OTksIDE0OjUxOjQyKToKPiBUZWFtIFdvbHBpOiBMYXJhbmlzIGhhdCBkYXMgVGVhbSB2ZXJsYXNzZW4uIApUZWFtIFdvbHBpOiBEYXMgVGVhbSBsb2VzdCBzaWNoIGF1Zi4gCkR1IHZlcmxhZXNzdCBkYXMgVGVhbS4KTWVybGluIHJ1ZnQ6IExhcmFuaXMgaXN0IGpldHp0IGVpbmUgU2VoZXJpbiEKcwpEdSBiZWZpbmRlc3QgRGljaCBhbSBzdWVkd2VzdGxpY2hzdGVuIFRlaWwgZGVyIEhvY2hlYmVuZSBpbm1pdHRlbiB2b24gaG9oZW4KQmVyZ2VuLiBEaWUgQmVyZ2Ugdm9uIFRpbmdhbiB3ZXN0bGljaCB2ZXJlaW5pZ2VuIHNpY2ggaGllciBtaXQgZGVuIFNpbGJlci0KYmVyZ2VuIGltIFN1ZWRlbi4gRWluIFdlZyBmdWVocnQgZW50bGFuZyBkZXIgQmVyZ2Ugdm9uIE5vcmRlbiBuYWNoIE9zdGVuCnVuZCBlaW4gYW5kZXJlciBpbSBTdWVkd2VzdGVuIGluIGRpZSBCZXJnZSBob2NoLiBEaWVzZXIgV2VnIGlzdCBhbGxlcmRpbmdzCm1vbWVudGFuIG5pY2h0IGJlZ2VoYmFyLCBkYSBlciBlcnN0IGt1ZXJ6bGljaCB2b24gZWluZXIgTGF3aW5lIHZlcnNjaHVldHRldAp3dXJkZS4gRWluIGFuZGVyZXIgV2VnIGZ1ZWhydCBkaXJla3QgYXVmIGVpbmUgQW5ob2VoZSBpbSBTdWVkZW4uCkVzIGdpYnQgZnVlbmYgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIG9iZW4sIHN1ZWRlbiwgbm9yZGVuIHVuZCBzdWVkd2VzdGVuLgpFaW4gQmVybmhhcmRpbmVyLgo+IExhcmFuaXMgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKClB1ayAoZWlnZW50bGljaCBpbW1lciBub2NoIHNhdWVyIGF1ZiBkZW4gc2VydmVyLCBhYmVyIGRhcyBncmluc2VuIG5pY2h0CnZlcmtuZWlmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIC4uLiAoVHJhbmNlLCAgNi4gSnVuIDE5OTksIDAxOjM4OjExKToKCkFtZWxvbiB0ZWlsdCBEaXIgbWl0OiBtdXNzIG1hbiBkZW4ga29lbmlnIGRlciBkaWViZSBtZXR6ZWxuID8/PyAoYmVpIG1pcgpBbWVsb24gdGVpbHQgRGlyIG1pdDogdGF1Y2hlbiBkaWUgc2FtdXJhaXMgbmljaHQgYXVmKQpEdSB0ZWlsc3QgQW1lbG9uIG1pdDogaG0gLi4uIHNvcnJ5LCBiZWkgbWlyIHdhcmVuIGRpZSBhYmVyIGRhCltUb2Q6TGFyc10gRWluIEtvZW5pZyBkZXIgRGllYmUgaGF0IGdlcmFkZSBBbWVsb24gdW1nZWJyYWNodC4KCnRqYSAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBBdXNiaWxkZXIgaGV1dHp1dGFnZS4uLi4uIChOZXZvaywgIDYuIEp1biAxOTk5LCAxOTozODoxNCk6CklzZW5ncmltbSBzYWd0OiBKZXR6dCB6ZWlnZSBpY2ggRGlyIG1hbCBlaW5lbiByaWNodGlnZW4gSGllYiEKSXNlbmdyaW1tIG1hY2h0IGVpbmVuIFdhaG5zaW5uc2hpZWIsIGRlciBEaWNoIGZhc3QgaW4gZGllIEtuaWUgendpbmd0LgpJc2VuZ3JpbW0gdmVyZmVobHQgRGljaC4KCgpmcmFndCBzaWNoIG51ciwgV0VSIGpldHp0IExpZWdlc3R1ZXR6ZW4gbWFjaGVuIHNvbGx0ZS4uLi4uCgplaW4gaW0gU2Nod2Vpc3NlIHNlaW5lcyBBbmdlc2ljaHRzIHRyYWluaWVyZW5kZXIKCk5ldm9rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqbGFjaCogKFN0aW5nLCAgNi4gSnVuIDE5OTksIDIwOjE1OjA3KToKW1RydmVzOkhpZ2h0XSB1aSBuZSBuZXVlcnVuZyAuLi4gbWlzdGJyYXR6ZSBoYXN0IGR1IHplaXQgZnVlciA0NiBraWxscyA/PwpEZWluZSBGcmV1bmRpbiBNaXN0YnJhdHplIHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1LgpNaXN0YnJhdHplICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKClN0aW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hhZGUgS2FyaWMsIGxlaWRlciB2ZXJsb3Jlbi4uLiAoTmV2b2ssICA2LiBKdW4gMTk5OSwgMjE6MDM6MjUpOgpEdSBob2Vyc3QgZGFzIHN1ZXNzZSBMYWxsZW4gZWluZXIgTmFjaHRpZ2FsbC4KRGVpbiBGcmV1bmQgS2FyaWMgdGVpbHQgRGlyIG1pdDogKnNldWZ6KiB3aWUgYnJpbmcgaWNoIGRpciBiZWkgZGFzIGljaCBuaWNoCkRlaW4gRnJldW5kIEthcmljIHRlaWx0IERpciBtaXQ6IHN1ZXNzIGJpbj8gbXVzcyBpY2ggZGljaCBkYWZ1ZXIgbWV0emVsbj8gOykKRHUgaG9lcnN0IGRhcyBzdWVzc2UgTGFsbGVuIGVpbmVyIE5hY2h0aWdhbGwuCgoKYmlzc3UgIHVudGVyIGRpZSBWb2VnZWwgZ2VnYW5nZW4/CmlzIGRhcyBudSBbVGVhbTogRmV1ZXJ2b2dlbF0gb2RlciB3aWUgb2RlciB3YXM/IAoKZWluIHZlcndpcnJ0ZXIgbm9jaC1GZXVlcnp3ZXJnCgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFlyZHN0ZWluZSAoQmVuZGVpZ2lkLCAgNy4gSnVuIDE5OTksIDEwOjM1OjU4KToKfiMhIG9uPU11YWRpYiBvdD05Mjg1MzY5NTYgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1BcHN1IHJ0PTkyODUxOTg3NCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05Mjg1MTk4NzQKb2sgaGllciB3b3J1bSBkdSBnZWJldGVuIGhhc3Q6IGR1IGJpc3QgbmUgbWVtbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBZcmRzdGVpbmUgKEJlbmRlaWdpZCwgIDcuIEp1biAxOTk5LCAxMDozNjoyMCk6Cn4jISBvbj1Jc25vZ29vZCBvdD05Mjg1NDUyODIgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1BcHN1IHJ0PTkyODUxOTg3NCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05Mjg1MTk4NzQKbWVtbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBZcmRzdGVpbmUgKEJlbmRlaWdpZCwgIDcuIEp1biAxOTk5LCAxMDozNjoyMik6Cn4jISBvbj1IaWdodCBvdD05Mjg1OTU2Mzcgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1BcHN1IHJ0PTkyODUxOTg3NCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05Mjg1MTk4NzQKSGV1bCBkb2NoIGR1IE1lbW1lICxvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBZcmRzdGVpbmUgKEJlbmRlaWdpZCwgIDcuIEp1biAxOTk5LCAxMDozNjozMCk6Cn4jISBvbj1GcmllZGVsIG90PTkyODU5NTc1NSBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPUhpZ2h0IHJ0PTkyODU5NTYzNyByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05Mjg1MTk4NzQKS29taXNjaCBkYXMgaGllciBudXIgZGllIHNlaGVyIGRpZSBpbiBzZWsgaW4gZGVyIEdpbGRlIHNpbmQgYW5kZXJlIG1lbW1lbgpuZW5uZW4KRnJpZWRlbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogWXJkc3RlaW5lIChCZW5kZWlnaWQsICA3LiBKdW4gMTk5OSwgMTA6MzY6MzgpOgp+IyEgb249WmFybml5YSBvdD05Mjg1OTU5NjUgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1GcmllZGVsIHJ0PTkyODU5NTc1NSByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05Mjg1MTk4NzQKZnJpZWRlbCwgd2llc28gaWdub3JpZXJzdCBEdSBzb2xjaGUgYXNvemlhbGVuIEtvbW1lbnRhcmUgbmljaHQ/IEhpZ2h0IGhvbHQKc2ljaCBqZXR6dCBhdWYgRGVpbmVuIEtvbW1lbnRhciBlaW5lbiBydW50ZXIgdW5kIGRlcyBpc3Qgc2NoYWRlLi4uIERlcHBlbiBnaWJ0CmVzIGltbWVyIHdpZWRlcgoKTWFyYwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBZcmRzdGVpbmUgKEJlbmRlaWdpZCwgIDcuIEp1biAxOTk5LCAxMDozNzoxMCk6Cn4jISBvbj1BcHN1IG90PTkyODYwMDc4OCBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPUlzbm9nb29kIHJ0PTkyODU0NTI4MiByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05Mjg1MTk4NzQKCkFwc3Ugd2VkZWx0IHdpbGQgbWl0IGRlbSAnU2VoZXJwb3J0YWxlIGFic2NoYWZmZW4hJy1GYWVobmNoZW4uCgpNYWwgc2VoZW4gd2VyIF9kYW5uXyBydW1tZW1tdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFlyZHN0ZWluZSAoQmVuZGVpZ2lkLCAgNy4gSnVuIDE5OTksIDEwOjM3OjI2KToKfiMhIG9uPUZyaWVkZWwgb3Q9OTI4NjAwODQ4IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49QXBzdSBydD05Mjg2MDA3ODggcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTI4NTE5ODc0CkZyaWVkZWwgd2VkZWx0IG1pdCBkZW0gU2VoZXJwb3J0YWxlIGZ1ZXIgc3BpZWxlciBiYXVlbiItRmFlbmNoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBZcmRzdGVpbmUgKEJlbmRlaWdpZCwgIDcuIEp1biAxOTk5LCAxMDozNzozNCk6Cn4jISBvbj1UcnVnIG90PTkyODYwMjgwNSBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPUZyaWVkZWwgcnQ9OTI4NjAwODQ4IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTkyODUxOTg3NApEYW5uIHd1ZXJkZW4gZGllIFBvcnRhbGUgYWJlciBuaWNodCBtZWhyIFNlaGVycG9ydGFsZSBoZWlzc2VuLgoKVHJ1Zy4KCih3YW5uIHdpcmQgZGVyIHRocmVhZCBpbiBtdWVsbCB2ZXJsZWd0PykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFlyZHN0ZWluZSAoTmV2b2ssICA3LiBKdW4gMTk5OSwgMTY6MTM6MjUpOgp+IyEgcm49QmVuZGVpZ2lkIHJ0PTkyODc0NDU5OCByZz1zY2htYXJybgp+IyEgdGlkPTkyODUxOTg3NAp5dXAgZGVuIGVpbmRydWNrIGhhYmUgaWNoIGF1Y2ggbWFyYyB1bmQgaW4gc2VsYmlnZSBrYXRlZ29yaWUgb3JkbmVzdCBkdSBkaWNoCmhlcnZvcnJhZ2VuZHN0IGVpbi4uLgoKTmV2b2sKKmhhdCBrZWluZW4gQm9jayBhdWYgbWVja2VybmRlIEV4LW1hZ2llciBkaWUgaGFsdCB3ZWdibGVpYmVuIHNvbGx0ZW4gd2Vubgpzb3dpZXNvIGFsbGVzIHVuZCBqZWRlciBzY2hlaXNzZSBpc3QqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gTmFtZSBmdWVyIGVpbiBLdWVrZW4uLi4gKE1pZXplLCAgNy4gSnVuIDE5OTksIDE3OjA2OjEyKToKZWJlbiBpbiBad2Fja2VsbWFubnMgU2NobG9zczoKCgo+VW5hc2FpIGhhdCBpaHIgRWkgamV0enQgZmVydGlnIGF1c2dlYnJ1ZXRldC0gdW5kIHRhdGFhYWFhYSwgZGEgaXN0IGVpbgpuaWVkbGljaGVzIHd1c2NoZWxpZ2VzIEt1ZWtlbi4uLi5uYW1lcy4uLih2b3JzY2hsYWVnZSBiaXR0ZSBzY2hyaWZ0bGljaAplaW56dXJlY2loZW4pCkFuYWtpbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKCk1pZXplIC0gamV0enQgc2NobGF1ZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyB3aWxsIGVyPyAoQXNoaXlhLCAgOC4gSnVuIDE5OTksIDEyOjM1OjI5KToKW1NlaGVyOlR1Tml4R3V0XSBXZXIgaGF1dCBtaXIgZGllIEtvZXBwZSBhYj8/PyA6bykpKQoKV3Vzc3RlIGdhciBuaWNodCwgZGFzcyBUdW5peGd1dCBtZWhyIGFscyBlaW5lbiBLb3BmIGhhdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmVpbiwgbmljaHQgRFUhIChUdW5peGd1dCwgIDguIEp1biAxOTk5LCAxNTo0NTo0OSk6CkR1IHRlaWxzdCBkZWluZW4gRnJldW5kZW4gbWl0OiBXZXIga2VubnQgc2ljaCBpbiBkZXIgRGFlbW9uZW5idXJnIGVpbgpEdSB0ZWlsc3QgZGVpbmVuIEZyZXVuZGVuIG1pdDogd2VuaWcgYXVzPwpFaW4gRHVua2VsZGFlbW9uIGtvbW10IGFuLgoKRWlnZW50bGljaCBoYXR0ZSBpY2ggYW4gamVtYW5kZW4gYW5kZXJlcyBnZWRhY2h0Li4uCgoncyBLYXJhdGUtWndlcmNobGUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFsc28gZGFzIGthZW1wZmVybGViZW4gaXMgamEgZWNodCBwcmFrdGlzY2ggKE5ldm9rLCAgOC4gSnVuIDE5OTksIDE2OjIxOjUwKToKZGEgc3RlaHQgbWFuIHNpY2ggbGFuZ3dlaWxlbmQgcnVtIHVuZCB3ZWlzcyBuZXQgd2FzIG1hbiB0dW4gc29sbAp1bmQgcHJvbXB0OgoKVW5hc2FpIHdpcmQgdm9uIHp3ZWkgVHJ2ZXMgaGVyZWluZ2V0cmFnZW4gdW5kIGF1ZiBlaW4gQmV0dCBnZXNjaG1pc3Nlbi4KCmFsc28gZGFmdWVyIGJpbiBpY2ggZ2VybmUgYXVmIEdMIDguLi4uLgoKZWluIGdyaW5zZW5kIHNhbHV0aWVyZW5kZXIKTmV2b2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDaGFvcyBhdWYgZGVyIEhvY2hlYmVuZSAoUGZlaWZlLCAgOC4gSnVuIDE5OTksIDE4OjM1OjE2KToKCktydWZ0dXIgc2FndDogSWNoIGhhYmUgZm9sZ2VuZGUgSW5mb3JtYXRpb24gdWViZXIgZWluIFdhbmRlcmVyIGVyaGFsdGVuOiBEdQpLcnVmdHVyIHNhZ3Q6IGthbm5zdCBlaW4gV2FuZGVyZXIgYWxzIEJldXRlbCBiZW51dHplbi4KClBmZWlmZSB2ZXJzdGVodCBkYXMgbmljaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuIChVbmFzYWksICA4LiBKdW4gMTk5OSwgMTg6Mzg6MjQpOgp+IyEgcm49TmV2b2sgcnQ9OTI4ODUxNzEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI4ODUxNzEwClNvc28sIE5ldm9rLi4uLndhcnRzIGFiLi4KaWNoIHdlcmRlIHNvbGFuZ2Ugd2FydGVuIGJpcyBEdSBlaW5nZXNjaGxhZmVuIGJpc3QgdW5kIGltIFN0cnV2IGF1ZnMgQmV0dApnZXdvcmZlbiB3aXJzdCB1bmQgZGFubiBHYW5kZSBEaXIgR290dCwgZGFzcyBpY2ggRGlyIHdlbmlnc3RlbnMgZGFzIGxhc3NlIHdhcwpEdSAqcGllcCogbmVubnN0IDopCmVpbmUgd3VldGVuZCBzYWx1dGllcmVuZGUgVW5hc2FpICprYW5uIG1hbiBpbSBTdHJ1diBuaWNodCBtYWwgbWVociBydWhpZwpzY2hsYWZlbiBnZWhlbj8/KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNjaG1hcnJuIChOZXZvaywgIDguIEp1biAxOTk5LCAxOToxMjoyNSk6Cn4jISBybj1VbmFzYWkgcnQ9OTI4ODU5OTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI4ODUxNzEwCm11c3MgaWNoIHdvaGwgZG9jaCBzY2huZWxsIGRpZSBsZXR6dGVuIDYgUmF0ZW4gZnVlciBtZWluIEhhdXMgbWV0emVsbi4uLi4KCipHKgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobWFycm4gKFVuYXNhaSwgIDguIEp1biAxOTk5LCAyMDowMDoxNSk6Cn4jISBybj1OZXZvayBydD05Mjg4NjE5NDUgcmc9c2NobWFycm4KfiMhIHRpZD05Mjg4NTE3MTAKV2FzIGhhdCBkYXMgbWl0IERlaW5lbSBIYXVzIHp1IHR1bj8gaWNoIGZpbmQgRGljaCB1ZWJlcmFsbCA6KQpVbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzY2htYXJybiAoTmV2b2ssICA4LiBKdW4gMTk5OSwgMjE6NDU6NDgpOgp+IyEgcm49VW5hc2FpIHJ0PTkyODg2NDgxNSByZz1zY2htYXJybgp+IyEgdGlkPTkyODg1MTcxMApOSUNIVCB3ZW5uIGljaCB2b3JoZXIgYWJzY2hsaWVzc2UgdW5kIERVIGtlaW5lIFJlY2h0ZSBoYXN0CgoqZ3JpbnN0IGRlbiBTY2hsdWVzc2VsIGhhbHRlbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWRlcmxpY2gsIGJpdHRlIGxvZXNjaGVuISAoTWlyYWthLCAgOC4gSnVuIDE5OTksIDIyOjQ4OjA0KToKCltCZWlsZWlkOlpvb2tdIHdpcmQgaW1tZXIgd2llZGVyIGdlcm5lIGdlbm9tbWVuLi4uCgpCYWVoIDotKQoKTWlyYWthIE1hbmRyb3MsIFRpZ2VyaW4gdm9uIFhpYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2lkZXJsaWNoLCBiaXR0ZSBsb2VzY2hlbiEgKFpvb2ssICA4LiBKdW4gMTk5OSwgMjI6NTA6NDgpOgp+IyEgcm49TWlyYWthIHJ0PTkyODg3NDg4NCByZz1zY2htYXJybgp+IyEgdGlkPTkyODg3NDg4NApab29rIHphdWJlcnQgZWluZW4gS29udGV4dCBoZXJiZWk6CgoKW1RvZDpMYXJzXSBEaWUgdW5oZWltbGljaGUgSGFlbmdlYnJ1ZWNrZSBoYXQgZ2VyYWRlIEJ1dGNoZXIgdW1nZWJyYWNodC4KW1RvZDpMYXJzXSA8MjI6NDY6NDI+CltUb2Q6RGllIHVuaGVpbWxpY2hlIEhhZW5nZWJydWVja2VdIERhcyBBZWNoemVuIGRlciBQbGFua2VuIGhvZXJ0IHNpY2gKW1RvZDpEaWUgdW5oZWltbGljaGUgSGFlbmdlYnJ1ZWNrZV0gaGFlbWlzY2ggYW4uIDwyMjo0Njo0Mj4KW0JlaWxlaWQ6Wm9va10gdGphLCBqYS4uLiBkaWUgaGFlbmdlYnJ1ZWNrZS4uLiA8MjI6NDc6MDI+CltCZWlsZWlkOlpvb2tdIHdpcmQgaW1tZXIgd2llZGVyIGdlcm5lIGdlbm9tbWVuLi4uIDwyMjo0NzowOD4KCk9kZXIgaXMgbnUgZGVyIFdpdHogcmF1cz8gV28gd2FyIGRlciB1ZWJlcmhhdXB0PwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2lkZXJsaWNoLCBiaXR0ZSBsb2VzY2hlbiEgKEphc3BlciwgIDguIEp1biAxOTk5LCAyMjo1ODoyNCk6Cn4jISBybj1ab29rIHJ0PTkyODg3NTA0OCByZz1zY2htYXJybgp+IyEgdGlkPTkyODg3NDg4NApbQmVpbGVpZDpab29rIHdpcmQgaW1tZXIgd2llZGVyIGdlcm5lIGdlbm9tbWVuLi4uXQoKd2FlciBkZXIgd2l0eiBnZXdlc2VuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXaWRlcmxpY2gsIGJpdHRlIGxvZXNjaGVuISAoWm9vaywgIDguIEp1biAxOTk5LCAyMzowMDoxOCk6Cn4jISBybj1KYXNwZXIgcnQ9OTI4ODc1NTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI4ODc0ODg0Clpvb2sgaXMgamEgc293YXMgdm9uIHNjaHdlciB2b24gQmVncmlmZi4uIDopKSkpICpncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkR1IHdlaXNzdCAoU3RvcGRlbmJ1cywgIDguIEp1biAxOTk5LCAyMzo0MToxMyk6CmRhcyBEdSB6dXZpZWwgbXVkZGVzdCwgd2VubiBEdSBhbmRlcmUgTXVkZGVyIGluIHdlaXQgZW50ZmVybnRlbiBTdGFlZHRlbgpiZXN1Y2hzdCwgdW0gZGllIFRlbGVmb25yZWNobnVuZyB6dSBzZW5rZW4gLi4uCgpTZEIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZhdWxlcyBQYWNrIChNb3Jnb3RoLCAgOS4gSnVuIDE5OTksIDA3OjQwOjEzKToKICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTWl0LCAgOS4gSnVuIDE5OTksIDA3OjM4OjI5ICgxMCBUZWlsbmVobWVyKQoKV2F5bmUuLi4uLi4uLi4uSi5zIENob2NvbGF0ZS4uLi4uLi4ueiBOZXZvay4uLi4uLi4uLi5Kd1MgVGFyYWdvbi4uLi4uLi4uSndTCkRyYWN1bGEuLi4uLi4uLkp3UyBaaW5vLi4uLi4uLi4uLi5qd3ogUXVpbGxpYW4uLi4uLi4uSS5tIEphc3Blci4uLi4uLi4uLkouTQpVbG8uLi4uLi4uLi4uLi5KLlIgKE1vcmdvdGguLi4uLikuLndSCgpEYWUsIGFsbGUgYW0gaWRsZW4sIG1pdCBkZXIgY2hvY29sYWRpZ2VuIEF1c25haG1lLi4uCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2lkZXJsaWNoLCBiaXR0ZSBsb2VzY2hlbiEgKEFtYXJ5bGxpcywgIDkuIEp1biAxOTk5LCAwOToxMjo0Nik6Cn4jISBybj1KYXNwZXIgcnQ9OTI4ODc1NTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI4ODc0ODg0CkltbWVyIG5vY2ggYmVzc2VyLCBhbHMgdW50ZXIgZGVuIFp1Z15IXkhvb2sgZ2Vrb21tZW4uLi4gOy0pKQoKQW1hKiwga2ljaGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFISkEhIChUdW5peGd1dCwgIDkuIEp1biAxOTk5LCAwOTo1ODo1Mik6CkR1IGJsaWNrc3QgaW4gZGVuIGJsYXVlbiBIaW1tZWwgdW5kIGdsYXVic3QgaG9jaCBvYmVuIGVpbmVuIHNlbHRzYW1lbiBWb2dlbAp6dSBlcmJsaWNrZW4uClJhc3B1dGluICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpLZWluZSB3ZWl0ZXJlbiBGcmFnZW4uLi4KCidzIEthcmF0ZS1ad2VyY2hsZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmxhdXNjaGlnZXMgbWV0YWxsPyAoTm9ubmUsICA5LiBKdW4gMTk5OSwgMTA6NDg6MjkpOgpEZXIgbGFuZ2UsIGZsYXVzY2hpZ2UsIG1vbGxpZ3dhcm1lIFN0cmlja3NjaGFsIGlzdCBnZW5hdSBkYXMgUmljaHRpZ2UKZnVlciBkYXMgZWlzaWdlIEtsaW1hLiBEYW1pdCBEdSBEaXIga2VpbmUgRXJrYWVsdHVuZyBob2xzdC4KRHUgaWRlbnRpZml6aWVyc3QgZGVuIFNjaGFsLgpEZXIgU2NoYWwgYmVzdGVodCBhdXMgTWV0YWxsLgoKU3RhaGx3b2xsZSwgb2RlciB3YXM/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2htYXJybiAoVW5hc2FpLCAgOS4gSnVuIDE5OTksIDEyOjM2OjM5KToKfiMhIHJuPU5ldm9rIHJ0PTkyODg3MTE0OCByZz1zY2htYXJybgp+IyEgdGlkPTkyODg1MTcxMApEdSBnbGF1YnN0IGRvY2ggbmljaHQgaW0gRXJuc3QsIGRhc3MgaWNoIG1pY2ggdm9uIGVpbmVyIGxhZWNoZXJsaWNoZW4KZ2VzY2hsb3NzZW5lbiBUdWVyIGF1ZmhhbHRlbiBsYXNzZT8gKm1lc3NlciB3ZXR6KgpTZWxic3Qgd2Vubi4uLi5pcmdlbmR3YW5uIG11c3N0IER1IG1hbCByYXVza29tbWVuLi5pY2gga2FubiB3YXJ0ZW4gOikKVW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmF1bGVzIFBhY2sgKEphc3BlciwgIDkuIEp1biAxOTk5LCAxMzoyMDoyOSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkyODkwNjgxMyByZz1zY2htYXJybgp+IyEgdGlkPTkyODkwNjgxMwpobW1tbSwgaHVjaCB3dXNzdGUgZ2FybmljaHQgZGFzcyBpY2ggbm9jaCBlaW5nZWxvZ3Qgd2FyIHVtIGRpZSB6ZWl0LgpkYSB3YXIgaWNoIGFiZXIgbWluZGVzdGVucyBzY2hvbiBobW1tbSA5c3R1bmRlbiBpZGxlCgpKYXNwZXIgZmVpZXJ0IGJhbGQgZGVuIDIwMHN0ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWb3JzaWNodCBNYWVkZWxzISAoTWllemUsICA5LiBKdW4gMTk5OSwgMTU6NTg6MzEpOgoKZWJlbiBhdWYgZGVyIEhFOgoKUm9iaW4ga29tbXQgYW4uCkR1IHZlcmxpZXJzdCBmdWVyIGVpbmVuIE1vbWVudCBkaWUgT3JpZW50aWVydW5nLgoKSWNoIHd1c3N0ZSBuaWNodCwgZGFzcyBlciBzb29vbyBlaW5lbiBFaW5kcnVjayBhdWYgbWljaCBtYWNodC4uLgoKTWllemUKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3NvLi4uIChOb3Zhc3Rvcm0sICA5LiBKdW4gMTk5OSwgMTY6MzM6MTQpOgpFaW5lIHdlaXNlIFNjaGlsZGtyb2V0ZSBzYWd0OiBkYXMgbGFpIGlzdCBrdWx0aWcgLi4uIHNjaGF1IG1hbApFaW5lIHdlaXNlIFNjaGlsZGtyb2V0ZSBzYWd0OiBhZWggYWxpCk5lc2FqYSBncmluc3QuCk5lc2FqYSBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgTmVzYWphLgpOZXNhamEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgogICAgTm92YSwgdWViZXJ6ZXVndCBuaWNrZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqc2V1ZnoqIChUaGVyaW4sICA5LiBKdW4gMTk5OSwgMjE6MzQ6MTgpOgpVZWJlcmdlaGUgQXJ0aWtlbCA1MCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1NCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1NSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1NiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1NyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1OCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1OSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA2MCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA2MSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA2MiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA2MyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnVlciBDYWxpbWVyYSAoRGFya3dpbmcsICA5LiBKdW4gMTk5OSwgMjM6MzE6NTEpOgpkYW1pdCBhdWNoIG1hbCBlaW4gVGhyZWFkIGtvbW10LCBkZW4gRHUgbmljaHQgaWdub3JpZXJzdCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyBtYW4gc28gYWxsZXMgaW4gZGVyIGVtYWlsIGZpbmRldC4uLiAoQmFib29uLCAxMC4gSnVuIDE5OTksIDA4OjMxOjE2KToKTWFuIGJlYWNodGUgYXVjaCBkaWUgZ2VmYWVsc2NodGUgQWJzZW5kZXJhZHJlc3NlLi4uCgpEYXRlOiBUdWUsIDggSnVuIDE5OTkgMDE6MDk6MjYgR01UCkZyb206IERITU8gPGEyNzM4NDgxQHNtYWlsLlVuaS1Lb2Vsbi5ERT4KVG86IGEyNzM4NDgxQHNtYWlsLnVuaS1rb2Vsbi5kZQpTdWJqZWN0OiBUaGUgSW52aXNpYmxlIEtpbGxlciEKCgpUaGUgSW52aXNpYmxlIEtpbGxlcgoKRGloeWRyb2dlbiBtb25veGlkZSBpcyBjb2xvcmxlc3MsIG9kb3JsZXNzLCB0YXN0ZWxlc3MsCmFuZCBraWxscyB1bmNvdW50ZWQgdGhvdXNhbmRzIG9mIHBlb3BsZSBldmVyeSB5ZWFyLgpNb3N0IG9mIHRoZXNlIGRlYXRocyBhcmUgY2F1c2VkIGJ5IGFjY2lkZW50YWwgaW5oYWxhdGlvbgpvZiBESE1PLCBidXQgdGhlIGRhbmdlcnMgb2YgZGloeWRyb2dlbiBtb25veGlkZSBkbyBub3QKZW5kIHRoZXJlLiBQcm9sb25nZWQgZXhwb3N1cmUgdG8gaXRzIHNvbGlkIGZvcm0gY2F1c2VzCnNldmVyZSB0aXNzdWUgZGFtYWdlLiBTeW1wdG9tcyBvZiBESE1PIGluZ2VzdGlvbiBjYW4KaW5jbHVkZSBleGNlc3NpdmUgc3dlYXRpbmcgYW5kIHVyaW5hdGlvbiwgYW5kIHBvc3NpYmx5CmEgYmxvYXRlZCBmZWVsaW5nLCBuYXVzZWEsIHZvbWl0aW5nIGFuZCBib2R5IGVsZWN0cm9seXRlCmltYmFsYW5jZS4gRm9yIHRob3NlIHdobyBoYXZlIGJlY29tZSBkZXBlbmRlbnQsIERITU8Kd2l0aGRyYXdhbCBtZWFucyBjZXJ0YWluIGRlYXRoLgoKRGloeWRyb2dlbiBtb25veGlkZToKCiAgICAgaXMgYWxzbyBrbm93biBhcyBoeWRyb3hsIGFjaWQsIGFuZCBpcyB0aGUgbWFqb3IKICAgICBjb21wb25lbnQgb2YgYWNpZCByYWluLgogICAgIGNvbnRyaWJ1dGVzIHRvIHRoZSAiZ3JlZW5ob3VzZSBlZmZlY3QuIgogICAgIG1heSBjYXVzZSBzZXZlcmUgYnVybnMuCiAgICAgY29udHJpYnV0ZXMgdG8gdGhlIGVyb3Npb24gb2Ygb3VyIG5hdHVyYWwgbGFuZHNjYXBlLgogICAgIGFjY2VsZXJhdGVzIGNvcnJvc2lvbiBhbmQgcnVzdGluZyBvZiBtYW55IG1ldGFscy4KICAgICBtYXkgY2F1c2UgZWxlY3RyaWNhbCBmYWlsdXJlcyBhbmQgZGVjcmVhc2VkCiAgICAgZWZmZWN0aXZlbmVzcyBvZiBhdXRvbW9iaWxlIGJyYWtlcy4KICAgICBoYXMgYmVlbiBmb3VuZCBpbiBleGNpc2VkIHR1bW9ycyBvZiB0ZXJtaW5hbAogICAgIGNhbmNlciBwYXRpZW50cy4KCkNvbnRhbWluYXRpb24gSXMgUmVhY2hpbmcgRXBpZGVtaWMgUHJvcG9ydGlvbnMhCgpRdWFudGl0aWVzIG9mIGRpaHlkcm9nZW4gbW9ub3hpZGUgaGF2ZSBiZWVuIGZvdW5kIGluIGFsbW9zdApldmVyeSBzdHJlYW0sIGxha2UsIGFuZCByZXNlcnZvaXIgaW4gQW1lcmljYSB0b2RheS4gQnV0IHRoZQpwb2xsdXRpb24gaXMgZ2xvYmFsLCBhbmQgdGhlIGNvbnRhbWluYW50IGhhcyBldmVuIGJlZW4gZm91bmQKaW4gQW50YXJjdGljIGljZS4gREhNTyBoYXMgY2F1c2VkIG1pbGxpb25zIG9mIGRvbGxhcnMgb2YKcHJvcGVydHkgZGFtYWdlIGluIHRoZSBVUy4KCkRlc3BpdGUgdGhlIGRhbmdlciwgZGloeWRyb2dlbiBtb25veGlkZSBpcyBvZnRlbiB1c2VkOgoKICAgICBhcyBhbiBpbmR1c3RyaWFsIHNvbHZlbnQgYW5kIGNvb2xhbnQuCiAgICAgaW4gbnVjbGVhciBwb3dlciBwbGFudHMuCiAgICAgaW4gdGhlIHByb2R1Y3Rpb24gb2Ygc3R5cm9mb2FtLgogICAgIGFzIGEgZmlyZSByZXRhcmRhbnQuCiAgICAgaW4gbWFueSBmb3JtcyBvZiBjcnVlbCBhbmltYWwgcmVzZWFyY2guCiAgICAgaW4gdGhlIGRpc3RyaWJ1dGlvbiBvZiBwZXN0aWNpZGVzLiBFdmVuIGFmdGVyIHdhc2hpbmcsCiAgICAgcHJvZHVjZSByZW1haW5zIGNvbnRhbWluYXRlZCBieSB0aGlzIGNoZW1pY2FsLgogICAgIGFzIGFuIGFkZGl0aXZlIGluIGNlcnRhaW4gImp1bmstZm9vZHMiIGFuZCBvdGhlcgogICAgIGZvb2QgcHJvZHVjdHMuCgpDb21wYW5pZXMgZHVtcCB3YXN0ZSBESE1PIGludG8gcml2ZXJzIGFuZCB0aGUgb2NlYW4sIGFuZApub3RoaW5nIGNhbiBiZSBkb25lIHRvIHN0b3AgdGhlbSBiZWNhdXNlIHRoaXMgcHJhY3RpY2UgaXMKc3RpbGwgbGVnYWwuIFRoZSBpbXBhY3Qgb24gd2lsZGxpZmUgaXMgZXh0cmVtZSwgYW5kIHdlCmNhbm5vdCBhZmZvcmQgdG8gaWdub3JlIGl0IGFueSBsb25nZXIhCgpUaGUgQW1lcmljYW4gZ292ZXJubWVudCBoYXMgcmVmdXNlZCB0byBiYW4gdGhlIHByb2R1Y3Rpb24sCmRpc3RyaWJ1dGlvbiwgb3IgdXNlIG9mIHRoaXMgZGFtYWdpbmcgY2hlbWljYWwgZHVlIHRvCml0cyAiaW1wb3J0YW5jZSB0byB0aGUgZWNvbm9taWMgaGVhbHRoIG9mIHRoaXMgbmF0aW9uLiIKSW4gZmFjdCwgdGhlIG5hdnkgYW5kIG90aGVyIG1pbGl0YXJ5IG9yZ2FuaXphdGlvbnMgYXJlCmNvbmR1Y3RpbmcgZXhwZXJpbWVudHMgd2l0aCBESE1PLCBhbmQgZGVzaWduaW5nCm11bHRpLWJpbGxpb24gZG9sbGFyIGRldmljZXMgdG8gY29udHJvbCBhbmQgdXRpbGl6ZSBpdApkdXJpbmcgd2FyZmFyZSBzaXR1YXRpb25zLgpIdW5kcmVkcyBvZiBtaWxpdGFyeSByZXNlYXJjaCBmYWNpbGl0aWVzIHJlY2VpdmUgdG9ucwpvZiBpdCB0aHJvdWdoIGEgaGlnaGx5IHNvcGhpc3RpY2F0ZWQgdW5kZXJncm91bmQKZGlzdHJpYnV0aW9uIG5ldHdvcmsuIE1hbnkgc3RvcmUgbGFyZ2UgcXVhbnRpdGllcwpmb3IgbGF0ZXIgdXNlLgoKVGhlIEhvcnJvciBNdXN0IEJlIFN0b3BwZWQhCgpBY3QgTk9XIHRvIHByZXZlbnQgZnVydGhlciBjb250YW1pbmF0aW9uLiBGaW5kIG91dCBtb3JlCmFib3V0IHRoaXMgZGFuZ2Vyb3VzIGNoZW1pY2FsLiBXaGF0IHlvdSBkb24ndCBrbm93IGNhbgpodXJ0IHlvdSBhbmQgb3RoZXJzIHRocm91Z2hvdXQgdGhlIHdvcmxkLgoKUGxlYXNlIFNlbmQgJDMuMDAsIG9yIHdoYXRldmVyIGFtb3VudCB5b3Ugd2lzaCB0bzoKCkRITU8KUE1CIDE0NAo2MDUtQiBId3kuIDYyLTY1IE4uCkhhcnJpc29uLCBBUiA3MjYwMS0yMjA4ICAgICAgICAgICAgICAgIApQbGVhc2UgaW5jbHVkZSB5b3VyIGVtYWlsIGFkZHJlc3MgZm9yIGZhc3Rlc3QgcmVzcG9uc2UhCgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9mZml6aWVsbGUgRW50c2NodWxkaWd1bmcgKEJlbmRlaWdpZCwgMTAuIEp1biAxOTk5LCAwODo0NTozNSk6Cn4jISBvbj1KYXNwZXIgb3Q9OTI4ODU4NDc1IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49SGlnaHQgcnQ9OTI4ODU4MzQ4IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTkyODg1ODM0OAp3ZXIga2VocnQgPSB3aG8gY2FyZXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogT2ZmaXppZWxsZSBFbnRzY2h1bGRpZ3VuZyAoVGFyYWdvbiwgMTAuIEp1biAxOTk5LCAxMDoxOToyOCk6Cn4jISBybj1CZW5kZWlnaWQgcnQ9OTI4OTk3MTM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI4ODU4MzQ4CkhtbW1tbW1tbS4uLi4uLi4uLgpTbyBsYW5nc2FtIHdpcmRzIGtvbWlzY2guLi4gd2llIHdhZXJlIGVzIG1hbCBtaXQgZWluZXIgUnVicmlrCiAgICAgICAgICAgICAgZ2lsZGVuLmthZW1wZmVyLnNjaG1hcnJuCkRhbWl0IG5pY2h0IGltbWVyIF9hbGxlXyBkYXMgZ2VqYW1tZXJlIGRlciBLYWVtcGZlciBtaXRsZXNlbiBtdWVzc2VuID8gOi0pKSkKCipnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpzZXVmeiogKE5vdmFzdG9ybSwgMTAuIEp1biAxOTk5LCAxMDo0Nzo0Nik6Cn4jISBybj1UaGVyaW4gcnQ9OTI4OTU2ODU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI4OTU2ODU4CldvIHdhciBqZXR6dCBkZXIgU2NobWFycm4/ICpuYWNoZGVuayoKICAgICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQb3N0IE1vcnRlbSBNaXR0ZWlsdW5nID8gKFRhcmFnb24sIDEwLiBKdW4gMTk5OSwgMTE6MjM6NDgpOgpEaWFuYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKRGlhbmEgdGVpbHQgRGlyIG1pdDogbmEgZ3V0IC0gZGFubiBnZWggaWNoIGdsZWljaCBsb3MgZ2xhdWIgaWNoIFsxMToyMF0KClRhcmFnb24gLSB1bmdsYWV1YmlnIHN0YXVuZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogb2xkaWVzIChIYXRlLCAxMC4gSnVuIDE5OTksIDExOjQ2OjI4KToKfiMhIG9uPUFtYXJ5bGxpcyBvdD05MjkwMDc5MTggb2c9c3VjaGUtYmlldGUKfiMhIHJuPUhhdGUgcnQ9OTI5MDA3Nzk2IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9OTI4MTA1NTc0Cndhc24gZGFzIFVocmhlYmVycmVjaHQ/IEhhdCBkYXMgbmljaHQgamVkZXI/IFNjaGxpZXNzZWxpY2ggbXVzcyBpY2ggbWVpbmUKU2NoZXBwZXIgamVkZW4gVGFnIGF1ZnppZWhlbi4uLiA7KQoKQW1hcnlsbGlzIC0tPiBTY2htYXJybgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWhqYSAoTGFyYXIsIDEwLiBKdW4gMTk5OSwgMjA6NDk6NDMpOgpFaW4gT2ZmaXppZXIgZGVyIFN0YWR0d2FjaGUgdm9uIE1vdWxva2luIChvaG5tYWVjaHRpZykgKG9obm1hZWNodGlnKQoob2hubWFlY2h0aWcpIChvaG5tYWVjaHRpZykuCiBFaW4gT2ZmaXppZXIga29tbXQgd2llZGVyIHp1IHNpY2guCiBFaW4gT2ZmaXppZXIga29tbXQgd2llZGVyIHp1IHNpY2guCiBFaW4gT2ZmaXppZXIga29tbXQgd2llZGVyIHp1IHNpY2guCiBFaW4gT2ZmaXppZXIga29tbXQgd2llZGVyIHp1IHNpY2guCgoqZ3JpbnMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZW5uIEJlbiogQXJ0aWtlbCB2b24gZy5rYWVtcGZlciBuYWNoIGQudW50ZXJ3ZWx0IHZlcmxlZ3QuLi4gKFRoZXJpbiwgMTAuIEp1biAxOTk5LCAyMToxNTo0Myk6ClVlYmVyZ2VoZSBBcnRpa2VsIDEwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDExIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDEyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDEzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE1IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE4IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE5IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDIwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDIxIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDIyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDIzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDI0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDI1IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDI2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDI3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDI4IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDI5IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDMwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDMxIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDMyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDMzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM1IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM4IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM5IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQxIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQ0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQ1IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQ2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOTyBDT01NRU5UIChXaW0sIDExLiBKdW4gMTk5OSwgMDM6MjI6MTYpOgpbU2VoZXI6U2hhcmlhXSBoYXQgamVtYW5kIG5lbiBnZWxiZW4ga3Jpc3RhbGwgdWViZXIgPyA6KQpbU2VoZXI6V2lkZXdpdHRdIG5vcGUsIGZ1ZXIgd2FzIGlzJ24gZGVyIGd1dCA/CltTZWhlcjpTaGFyaWFdIGtyaXN0YWxsa3JvbmUKW1NlaGVyOldpZGV3aXR0XSBxdWVzdCA/CltTZWhlcjpXaW1dIGVpZ2VudGxpY2ggbXVlc3N0ZSBtYW4gZGFzIG5hY2ggc2NobWFycm4gcG9zdGVuCltTZWhlcjpTaGFyaWFdIGphdSBtYWNoIG1hbCBiaXR0ZSA6KQoKU2hhcmlhIHRlaWx0IERpciBtaXQ6IG1hY2hzdGUgPyA6KQoKYWJlciBrbGFyLi4uIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTXVzaWsgenVtIEVpbnNjaGx1bW1lcm4uLi4gKE1pZXplLCAxMS4gSnVuIDE5OTksIDE0OjQ2OjQzKToKCmViZW4gaW4gZGVyIEthdHplbmtyaWVnZXJnaWxkZS4uLgoKRHUgc2Fnc3Q6IGhhc3RlIEx1c3QgYXVmIEtvbnplcnQ/CkR1IGRldXRlc3QgYXVmIEFramFyYS4KQWtqYXJhIHNhZ3Q6IEJpcyBqZXR6dCBub2NoIG5pY2h0cywgYXVzc2VyIHZpZWxsZWljaHQgbWFsIGZydWVoIGlucyBCZXR0IGdlaGVuCkFramFyYSBzYWd0OiA6KQpEdSBzYWdzdDogYWxzbyBrbGFzc2lzY2hlcyBLb256ZXJ0IDopClBsb2V0emxpY2ggaG9lcnN0IER1IGVpbiBsYXV0ZXMgU2NobmFyY2hlbi4KCk1pZXplIC0gZW1wb2VydCB1ZWJlciBkaWUgS3VsdHVyYmFuYW5lbiBpbSBNRyA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh1Y2ghIEFsbHdpc3NlbmRlIFNwaWVsZXI/IChUc3VuYW1pLCAxMS4gSnVuIDE5OTksIDE4OjI0OjQzKToKV29oZXIgd2lzc2VuIGRpZSBTcGllbGVyLCB3ZW5uIHdpciBtYWwgKGdhYWFhbnogc2VsdGVuISkgYnVnZ2VuPz8/CkRhcyBoaWVyIGlzdCB1bmdlc2Nobml0dGVuIHNvIHBhc3NpZXJ0OgoKc2V0emUga2xlaW5lIEt1Z2VsIGF1ZiBtaXR0ZWxncm9zc2UgS3VnZWwKRHUgaGFzdCBlcyBnZXNjaGFmZnQuIERlciBTY2huZWVtYW5uIGlzdCBmZXJ0aWcuCgpbRGVidWc6R29yXSBGZWhsZXI6ICJGYWlsZWQgdG8gbG9hZCBmaWxlLiIsIE9iamVrdDoKW0RlYnVnOkdvcl0gcGxheWVycy9nb3IvZWlzZmVzdHVuZy9vYmovb2JqX2t1Z2VsbCM0MDUxNzAsIFByb2dyYW1tOgpbRGVidWc6R29yXSAiL3BsYXllcnMvZ29yL2Vpc2Zlc3R1bmcvb2JqL29ial9rdWdlbGwuYyIsIFplaWxlIDExMyAoVHN1bmFtaSkKClBGTFVOWiwgU2hhZGVzIEthdXRzY2h1a2hhbW1lciBmbGllZ3QgaGVyZWluLCB0YW56dCBhdWYgRGVpbmVtIEtvcGYgZWluZQpSZWloZSBsYXRlaW5hbWVyaWthbmlzY2hlciBUYWVuemUsIHNjaGxpZXNzdCBtaXQgZWluZW0gUGFzbyBEb2JsZSBhYiB1bmQKaHVlcGZ0IHdpZWRlciBkYXZvbi4KClNoYWRlIHRlaWx0IERpciBtaXQ6IG51ciBtYWwgc28gLi4uIDspKSB2b3JiZXVnZW5kCgpUc3VuYW1pIC0gdmVyd3VuZGVydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEh1Y2ghIEFsbHdpc3NlbmRlIFNwaWVsZXI/IChab29rLCAxMS4gSnVuIDE5OTksIDE4OjI1OjM5KToKfiMhIHJuPVRzdW5hbWkgcnQ9OTI5MTE4MjgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI5MTE4MjgzCj4+IFdvaGVyIHdpc3NlbiBkaWUgU3BpZWxlciwgd2VubiB3aXIgbWFsIChnYWFhYW56IHNlbHRlbiEpIGJ1Z2dlbj8/PwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXgoKWm9vayByb3RmbHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpwYXJ0eW1vbnN0ZXIgKEFtYXJ5bGxpcywgMTEuIEp1biAxOTk5LCAxOTowMToyMik6ClJhcmRpYW4gc2FndDogcGFydHltb25zdGVyIGdpYiBtaXIgTGViZW5zcHVua3RlCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogTGViZW5zcHVua3RlIGhhYmUgaWNoIG5pY2h0IQoKQW1hKiwgdmVyd3VuZGVydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2FjaGVuIGdpYnRzLi4uIChEZW1vbmF6LCAxMS4gSnVuIDE5OTksIDIxOjEyOjQ4KToKCkVpbnMgdm9yYW46IERhcyBEaW5nIHN0YW5kIGRhIHJ1bSwgYmV2b3IgaWNoIG1pY2ggbmFjaCBtZWhydGFlZ2lnZXIKQWJ3ZXNlbmhlaXQgZWluZ2Vsb2dndCBoYWIuIGljaCBoYWIgbWl0IGRlciBoZXJzdGVsbHVuZyBkZXMgYmpla3RzIG5peCB6dSB0dW4uCkRpc2NsYWltZXIgZnVlciBIZXVsYm9qZW4uCgpEaWUgU3RhdHVlIGRlciBuYWNrdGVuIFNoYW5uYXJhLgp1bnQgc3RhdHVlCgpLZWluIHNvbmRlcmxpY2ggc2Nob2VuZXIgQW5ibGljay4KQWJlciBTaWUgaGF0IE1vZXBzZSB3aWUgS2xvZXBzZQoKU3RhbmQgdWVicmlnZW5kcyBkaXJla3Qgdm9ybSBTdWVkbGFkZW4gaW4gUFYuLi4KQWxzbyBtaXIgZ2VmYWVsbHRzLi4uCgpEZW1vbmF6IGkuQS4gRXJzdGllCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2FjaGVuIGdpYnRzLi4uIChSb2NodXMsIDExLiBKdW4gMTk5OSwgMjE6MTU6MDkpOgp+IyEgcm49RGVtb25heiBydD05MjkxMjgzNjggcmc9c2NobWFycm4KfiMhIHRpZD05MjkxMjgzNjgKRGFzIGlzdCBlaW5lIElsbHVzaW9uIGRlciBaYXViZXJlciwgdW5kCmhpbmdlc3RlbGx0IHd1cmRlIHNpZSB2b24gVG9tYXNvYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTYWNoZW4gZ2lidHMuLi4gKEhvdXNlaG9sZGVyLCAxMS4gSnVuIDE5OTksIDIxOjE4OjMxKToKfiMhIHJuPURlbW9uYXogcnQ9OTI5MTI4MzY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI5MTI4MzY4CipicnVlbGwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWdpZXIgaW0gSW52Li4uIDopIChEYXJrd2luZywgMTEuIEp1biAxOTk5LCAyMToxOToxMSk6CltlbnRzb3JnZSBnb3JdCkRlciBUcm9lZGxlciBmcmFndDogV2lsbHN0IER1IEdvciB1bmQgYWxsZSBHZWdlbnN0YWVuZGUgaW4gaWhtIFdJUktMSUNICkRlciBUcm9lZGxlciBmcmFndDogbG9zd2VyZGVuPwpbamFdCkRlciBUcm9lZGxlciBuaW1tdCBkYXMgR2VsZCB1bmQgbGFlc3N0IEdvciBpbiBkZW4gV2VpdGVuIHNlaW5lcwpMb2Rlbm1hbnRlbHMgdmVyc2Nod2luZGVuLiAKR29yIGtyYWJiZWx0IG5hY2ggSGF1c2UuCkdvciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCmhlaGUgOi0pKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VsYnN0cmVkZW5kICpncmlucyogKEdvciwgMTEuIEp1biAxOTk5LCAyMTozNDo1MSk6Ck11dGFib3IgcnVmdDogaGF0IHdlciBkZW4gc2NobWllZCBpbSB6d2VyZ2VuZG9yZiBnZWtpbGx0ID8KCipncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5lZWUsIG5lPyA6KSAoTmljaHRzLCAxMi4gSnVuIDE5OTksIDAxOjAyOjQ1KToKRWluIE9waHRhbG1vbG9nZSBrb21tdCBoZXJlaW4sIHNpZWh0IERpciBpbiBkaWUgQXVnZW4gdW5kIG1laW50IDoKJ0RpciBmZWhsdCBnYXIgbmljaHRzLCBobW1tbSAuLi4gYWNoIGljaCBiaW4gamEgYXVjaCBBdWdlbmFyenQuJwo+IHNjaGF1CkR1IGJpc3QgYmxpbmQgIQoKaG1wZiwKIiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXMgdHJlaWJlbiBkaWU/IDopIChCaWVyY2hlbiwgMTIuIEp1biAxOTk5LCAwMzo0Mjo0Mik6CltBbGxnZW1laW46VmVjdG9yXSBsb3Mgc2FuZGllLCBnaWIgbWFsIGVpbiBzdGljaHdvcnQgZnVlciBuZSBzbyByaWNodGlnIHNjaG9lbgpbQWxsZ2VtZWluOlZlY3Rvcl0gYWJzdXJkZSBkaXNrdXNpb24uLi4KW0FsbGdlbWVpbjpXaW0gaXN0IGdyYWQgYmVzY2hhZWZ0aWd0XQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdlc3VjaHQ6IFRoZSBwZXJmZWN0IGRydWcgLi4uLiAoQW5hdG9sLCAxMi4gSnVuIDE5OTksIDIyOjM5OjA3KToKfiMhIHJuPU5lc2FqYSBydD05MjkyMTk0NzQgcmc9YW56ZWlnZW4KfiMhIHRpZD05MjkyMTk0NzQKV2VubiBpY2ggbmljaHQgRGVpbiBUdXJ0bGVndWFyZCB3YWVyZSwgd3VlcmRlIGljaCBhbiBkaWUgSHlkcmEgCndlaXRlcnZlcm1pdHRlbG4uLi4gbWFuY2hlIExldXRlIGtvZW5uZW4gZWluZmFjaCBuaWNodCB2b24gaWhyIGFibGFzc2VuCihEcm9nZSksIFNlaGVyYmx1dGJhZWRlciBzaW5kIGZ1ZXIgc2llIGtlaW4gUHJvYmxlbSwgdW5kIGFuZ2VzaWNodHMKaWhyZXIgRWZmZWt0aXZpdGFldCBtdXNzIHNpZSBhdWNoIGlyZ2VuZHdpZSBqdW5nIGdlYmxpZWJlbiBzZWluLgpNYW4ga2FubiBhdWNoIG5pY2h0IGJlaGF1cHRlbiwgZGFzcyBzaWUgZHVtbSBzZWkgLSB3ZXIgbWl0IGJpcyB6dSA2MApLb2VwZmVuIGhlcnVtbGFldWZ0LCBIQVQgZWluZmFjaCBlaW5lbiBnZXdpc3NlbiBJUSBzaWNoZXIuIFVuZCBtaXQgVmVybGF1YiwKYmVkaW5ndCBkdXJjaCBkZW4gd2FocmhhZnQgdmVycXVlcmVuIFNpbm4gZnVlciBIdW1vciAoc2Nob25tYWwgbmFjaApTY2hydW1wZmkgZ2VmcmFndD8pIHVuZCBkaWVzZSBaYWVobmUgZHVlcmZ0ZW4gdGllZmJlaXNeSF5IXkheSGdyZWlmZW5kZQpFcmZhaHJ1bmdlbiBtaXQgVHVydGxlcyBuaWNodCBwcm9ibGVtYXRpc2NoIHdlcmRlbi4KRGllIEh5ZHJhIGlzdCBzZWhyIHp1dmVybGFlc3NpZyB1bmQgd2VubiBtYW4gc2llIHJ1ZnQsIGtvbW10IHNpZSBpbgpyZWdlbG1hZXNzaWdlbiBBYnN0YWVuZGVuICh3YXMgd2FocmhhZnQgbmljaHQgZWluZXMgSmVkZW4gRWlnZW5zY2hhZnQKaXN0KS4KClp3YXIgbWFnIGRhcyB2aWVsZSBLb3Bmc2NodWV0dGVsbiB3aXJrbGljaCBnYXJhbnRpZXJ0IHNlaW4sIGRvY2ggc2VoZQppY2ggYmVpbSBDYW5kbGVsaWdodGRpbm5lciBncm9lc3NlcmUgSGluZGVybmlzc2UsIHNjaGxpZXNzbGljaCBpc3QgZGllCkh5ZHJhIGdld2lzc2VybWFzc2VuIGFsbGVyZ2lzY2ggZ2VnZW4gYWxsZXMsIHdhcyBtaXQgZ3JvZXNzZXJlbiBLZXJ6ZW4KaW4gZGllIEdlZ2VuZCBpaHJlcy4uLi4gcHJhY2h0dm9sbGVuLi4uLiBLb2VycGVycyBrb21tdC4KCkRvY2ggaWNoIGJpbiBEZWluIFR1cnRsZWd1YXJkLi4uClNjaGFmZicgRGlyIGVpbiBIYXVzdGllciBhbiwgUyJ1LzNlIC0gZWluZSBNYXVzPyA6KQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYmllcnNjaHVldHRsZXIgOikgKFd1bSwgMTMuIEp1biAxOTk5LCAwMDoxMTo0Nik6CiBTaGFrZWRiZWVyIHRyaXR0IG1pdCBkZW0gRnVzcyBhdWYuCkRlciBCb2RlbiByZWlzc3QgdW50ZXIgaWhtIGF1ZiB1bmQgZWluZSBCaWVyc2FlbGUgc2NoaWVzc3QgZW1wb3IuClNoYWtlZGJlZXIgd2lyZCB2b24gZGVyIEJpZXJzYWV1bGUgdmVyc2NobHVuZ2VuLgpEaWUgU2FldWxlIHZlcnNjaHdpbmRldCwgdW5kIFNoYWtlZGJlZXIgbWl0IGloci4gRGVyIEJvZGVuIHNjaGxpZXNzdCBzaWNoLgpFaW4gRXJkYmViZW4gZXJzY2h1ZXR0ZXJ0IGRlbiBCb2Rlbi4gRWluIGR1bXBmZXMgR3JvbGxlbiBpc3QgenUgaG9lcmVuLgpSYWxwaCBSdWV0dGVsIHNjaHJlaXQ6IEpldHp0IGF1Y2ggU2NodWV0dGVsYmllciBBTEtPSE9MRlJFSSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2FjaGVuIGdpYnRzLi4uIChTaGFubmFyYSwgMTMuIEp1biAxOTk5LCAwMTowMDoyNik6Cn4jISBybj1Sb2NodXMgcnQ9OTI5MTI4NTA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI5MTI4MzY4CldhcyBoYXN0IGR1IGRpciBkYWJlaSBlaWdlbnRsaWNoIGdlZGFjaHQsIFRvbWFzb2E/CgpJY2ggc3RlbGxlIGF1Y2ggbmljaHQgKG1pdCBIaWxmZSBkZXMgbWFnaXNjaGVuIEJldXRlbHMpIFBpbi1VcC1TdGF0dWVuIHZvbgppcmdlbmRqZW1hbmRlbiBpbSBNVUQgYXVmLgoKU2hhbm5hcmEuIG5vdCBhbXVzZWQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprYWVtcGZlci4uLiAoRGlyaW9uLCAxMy4gSnVuIDE5OTksIDE4OjI2OjMwKToKS2FyaWMgdmVyc3VjaHQgZWluZW4gZ2VmYWVocmxpY2hlbiBTY2hsYWcgZ2VnZW4gZWluZW4gRWlzcmllc2VuLCBkb2NoIGRpZXNlcgpnZWh0IHZvZWxsaWcgZGFuZWJlbi4KICBLYXJpYyB6ZXJzY2htZXR0ZXJ0IGRlbiBFaXNyaWVzZW4gaW4ga2xlaW5lIFN0dWVja2NoZW4uCgptb2NodCBtYWwgc2Vobiwgd2VubiBkZXIgcmljaHRpZyB0cmlmZnQgOykKRGlyaW9uLCBiZWVpbmRydWNrdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBrYWVtcGZlci4uLiAoVGFyYWdvbiwgMTMuIEp1biAxOTk5LCAxOToxMToyOSk6Cn4jISBybj1EaXJpb24gcnQ9OTI5MjkxMTkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI5MjkxMTkwCkthZW1wZmVyIGFid2VydGVuICEgOi0pKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBhdWYgZGVyIEhvbGxmYWVsbGVyaW5zZWw6IChTbHlmb3gsIDEzLiBKdW4gMTk5OSwgMjE6NDM6MDYpOgpFaW4gVm9yYXJiZWl0ZXIgaGVidCBlaW4gZ2VsYnNjaHdhcnprYXJpZXJ0ZXMgSG9semZhZWxsZXJoZW1kIGF1Zi4KRWluIFZvcmFyYmVpdGVyIHppZWh0IGVpbiBibGF1c2Nod2FyemthcmllcnRlcyBIb2x6ZmFlbGxlcmhlbWQgYW4uCgpXdXNzdGUgZ2FyIG5pY2h0LCBkYXNzIGVpbiBIZW1kIGRpZSBGYXJiZSB3ZWNoc2VsbiBrYW5uIDopCgogIFNseWZveAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ldWxpY2ggYXVmIGRlciBIb2xsZmFlbGxlcmluc2VsOiAoSG91c2Vob2xkZXIsIDEzLiBKdW4gMTk5OSwgMjE6NDM6NDIpOgp+IyEgcm49U2x5Zm94IHJ0PTkyOTMwMjk4NiByZz1zY2htYXJybgp+IyEgdGlkPTkyOTMwMjk4NgptYW4gbXVzcyBqYSBuaWNoIGltbWEgZGFzIGFuemllaGVuIHdhcyBtYW4gYXVmaGVidCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClphdWJlcmVyIDopIChQdWssIDEzLiBKdW4gMTk5OSwgMjM6MTc6NTcpOgoKTWFnZW5icm90IGhhdHNjaGVsdCBPbWJhdGlzLgpPbWJhdGlzIHNhZ3Q6IER1IGJpc3Qga3JhbmssIE1hZ2VuYnJvdCEKCgpQdWsgKHd1c3N0ZSBnYXIgbmljaHQgZGFzIG9tYmF0aXMgYXVjaCBBcnp0IGlzdCwgdW4gbmUgZ3V0ZXIgZGF6dTspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYWVtcGZlciA7KSAoUHVrLCAxMy4gSnVuIDE5OTksIDIzOjIwOjAwKToKTXl0aHJhbiB0cml0dCBPbWJhdGlzLgpPbWJhdGlzIGJydWVsbHQ6IE15dGhyYW4sIGJlaGFsdGUgRGVpbmUgU2NobXV0emZ1ZXNzZSBiZWkgRGlyIQpNeXRocmFuIGdyaW5zdC4KT21iYXRpcyBncmluc3QgenVydWVjay4KTXl0aHJhbiBzYWd0OiBpY2ggbWFnIGlobiAhCgpQdWsgKHVuZCBLYWVtcGRlciBzaW5kIGFsc28gc28gdW5yZWlubGljaDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmZWlnZSBrYXR6ZW4uLi4uIChOZXZvaywgMTMuIEp1biAxOTk5LCAyMzozMzozOCk6CkRpZSBTY2hyZWNrZW5zc3BpdHplIGVyYmVidCBpbiBpaHJlbiBHcnVuZGZlc3Rlbiwgd2FlaHJlbmQgc2ljaCBkZXIKSGltbWVsIHVlYmVyIGRlbSBNb3JnZW5HcmF1ZW4gdmVyZHVua2VsdC4gWnVja2VuZGUgQmxpdHplIHVuZCByb2xsZW5kZXIKRG9ubmVyIHZlcmt1ZW5kZW4gZGVuIFRvZCBkZXMgRHJhY2hlbmdvdHRlcy4KClNpbmlzdHJhIGF1ZiBTb3JjZXJlcnMgQXJtIG1pYXV0IGxlaXNlLgoKaXMgamEgYWxsZXMgZ3V0LCBNaWV6ZS4uLi4KCip0YWV0c2NoZWx0IGRpZSBrbGVpbmUgbm9jaG1hbHMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBY2ggc28hIChGb29iYXIsIDE0LiBKdW4gMTk5OSwgMDI6MTI6NTYpOgpFaWNoZW4gd2l0dGVydCBHZWZhaHIgdW5kIGZsdWVjaHRldCBhdWYgZGllIFRvaWxldHRlLgogICAgIEVpbmUgQnJhdHBmYW5uZSBrb21tdCBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhpbGZlISAoVHN1bmFtaSwgMTQuIEp1biAxOTk5LCAxMDozOTo1OSk6ClVuZ2VzY2huaXR0ZW46CkJlbmRlaWdpZCB0ZWlsdCBEaXIgbWl0OiAqc2NocmVpIHdhZWx6KgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKVHN1bmFtaSBtYWNodCBzaWNoIFNvcmdlbiB1bSBzZWluZW4gUGFwcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVpbiBrbGVpbmVzIExvZyB1ZWJlciBad2VyZ2UgKmdyaW5zIE1hdGlzKiAoRGFya3dpbmcsIDE0LiBKdW4gMTk5OSwgMTI6Mzc6MjIpOgpUYXJpbmEgc2FndDogaWNoIHdlcmQgYXVjaCBuaWNodCBtZWhyIGFsdC4KVGhlcmluIGxhZWNoZWx0IFRhcmluYSBhbi4KVGFyaW5hIHNhZ3Q6IGljaCBoYXR0ZSBoZXV0ZSB6dSB2aWVsIGZyaXNjaGUgbHVmdApEdSBzYWdzdDogRHUgYmlzdCBlcyBqYSBzY2hvbiA7KQpNYXRpcyBkZW5rdCAgIC4gbyBPIChpc3Qgc2llIGphIHNjaG9uIC0gYWJlciBkYXMgc2FnIGljaCBpaHIgbmljaHQgOikKVGFyaW5hIGdyaW5zdCBEaWNoIGFuLgpUaGVyaW4gc2FndDogbW9yZ2VuIGtvbW10IHJvY2h1cyB2b3JiZWkuLi4uIGlyZ2VuZHdhbm4gc29sbHRlIGljaCBkYW5uIGF1Y2gKVGhlcmluIHNhZ3Q6IG5vY2ggaW5zIGJldHRjaGVuClRhcmluYSB3YWVsenQgc2ljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uCkdhbmR1ciBncmluc3QgTWF0aXMgYW4uClRhcmluYSBzYWd0OiBuYSB3YXJ0ZXQuLi4KVGFyaW5hIHNhZ3Q6IGljaCBtYWNoIHdpZWRlciBsZWFkZXIgdW5kIHNjaGljayBldWNoIGluIGRpZSB3dWVzdGUKRGFya3dpbmcgdmVyc3RlY2t0IHNpY2ggaGludGVyIE1hdGlzLgpNYXRpcyBuaW1tdCBkaWUgU2NoYXVmZWwuClRoZXJpbiBsYWVjaGVsdCBUYXJpbmEgYW4uCk1hdGlzIGdyYWVidCBzaWNoIGVpbi4KVGFyaW5hIGdyaW5zdC4KVGhlcmluIHNhZ3Q6IGRpZSBwYWFyIGphaHJlIG1laHIKR2FuZHVyIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guClRhcmluYSBzYWd0OiB2ZXJnaXNzIG5pY2h0LCBhdWNoIHp1enVzY2hhdWZlbG4sIG1hdGlzIDotKQpNYXRpcyBzYWd0OiBtYWNodCBtaXIgZG9jaCBuaWNodHMgYWxzIHp3ZXJnCkdhbmR1ciBzYWd0OiB3aXIgZ2llc3NlbiBkYW5uIDopClRhcmluYSBzYWd0OiBpY2gga2lwcCB2b24gb2JlbiBub2NoIGV0d2FzIHdhc3NlciBoaW50ZXJoZXIKRHUga2ljaGVyc3QuIChXaWUgYWxiZXJuIHZvbiBEaXIpCkdhbmR1ciBncmluc3QgVGFyaW5hIGFuLgpNYXRpcyBzYWd0OiB3YWFhYWFhYWFhYWFhYWFoIApUYXJpbmEgZ3JpbnN0IEdhbmR1ciBhbi4KTWF0aXMgc2FndDogd2Fzc2VyIGlzdCBmaWVzClRhcmluYSBzYWd0OiBtaXQgaGVpc3NlbSEKVGhlcmluIHNhZ3Q6ICB1bmQgX3NhdWJlcmVtXyB3YXNzZXIKVGFyaW5hIHNhZ3Q6IGRhIHdpcnN0ZSBkZWluZSBnYW56ZSBrcnVzdGUgbG9zIDotKQpNYXRpcyB6aXR0ZXJ0IHZvciBBbmdzdC4KR2VvcmRpIHNhZ3Q6IG5hamEsIHJpY2h0aWcgc2F1YmVyIHdpcmQgZXIgaW4gZGVtIERyZWNrbG9jaCBuaWNodApHYW5kdXIgc2FndDogZXIgd2FlY2hzdCBkYW5uIC4uLiA6KQpNYXRpcyBkZW5rdCAgIC4gbyBPIChvaCwgbGF1dGVyIGZyZXVuZGUgaGllcikKVGhlcmluIHNhZ3Q6IHNpZWhzdCBkdSBuaWNodD8gZGFzIGxvY2ggaXN0IGV4dHJhIG1pdCBwbGFzdGlrcGxhbmUgYXVzZ2VsZWd0LApUaGVyaW4gc2FndDogYWxzIGVyIG5pY2h0IGhpbmdlc2VoZW4gaGF0ClRhcmluYSBzYWd0OiBkYXMgd2FlciBkb2NoIG1hbCB3YXMuLi4gaW0gYmVyZ2RvcmYgbmVuIHp3ZXJnZW53YXNjaHNhbG9uClRhcmluYSBzYWd0OiBlaW5yaWNodGVuCkR1IHNhZ3N0OiBoZXkgTWF0aXMsIGJpc3QgRHUgZGFzID8gRHUgc2llaHN0IHNvIHZlcmFlbmRlcnQgYXVzIDspClRoZXJpbiBncmluc3QgRGljaCBhbi4KVGhlcmluIG5pY2t0IERpciB6dS4KVGhlcmluIHNhZ3Q6IHNvLi4uIHNvLi4uIHNhdWJlcgpNYXRpcyBicmljaHQgaW4gVHJhZW5lbiBhdXMgdW5kIHdlaW50IGJpdHRlcmxpY2guCk1hdGlzIHNhZ3Q6IGlociBzZWlkIHNvIGdlbWVpbiA7KQpUYXJpbmEgc2FndDogZHUgZHVmdGVzdCBzbyBsZWNrZXIuLi4gbmFjaCBzZWlmZQpUYXJpbmEgc2NobnVwcGVydCBhbiBNYXRpcy4KTWF0aXMgc2FndDogZHUgaGFzdCBlaW4gZ2VzdG9lcnRlcyBnZXJ1Y2hzZW1wZmluZGVuLCB0YXJpbmEgOikKVGhlcmluIHNhZ3Q6IHVuZCBkZXIgQmFydCBpc3Qgd2VncmFzaWVydApUYXJpbmEgc2FndDogcGFzcyBhdWYsIGRhc3MgaWNoIG5pY2h0IHJlaW5iZWlzc2UgOi0pCk1hdGlzIHp1ZWNrdCBlaW5lbiBLcmllZ3NoYW1zdGVyLgpEdSBkZW5rc3QgICAuIG8gTyAob2ggb2gpCk1hdGlzIGZsdWVzdGVydCBkZW0gSGFtc3RlciBldHdhcyB6dS4KRGVyIEhhbXN0ZXIgc3RpcmJ0LgpUaGVyaW4gZGVua3QgICAuIG8gTyAod2FzIGhhdCBlciBqZXR6dCBnZWZsdWVzdGVydD8pClRoZXJpbiBrcmF0enQgc2ljaCBhbSBLb3BwLgpEZXIgSGFtc3RlciBmYWVuZ3QgYXVmIGVpbm1hbCBhbiwgRGljaCBhbnp1a251cnJlbi4KVGFyaW5hIGdyaW5zdC4KRGVyIEhhbWdzdGVyIGRlbmt0IG8gTyAoc28gc2F1YmVyLCBkYXMgaXN0IGtlaW4gZWNodGVyIFp3ZXJnKQpUYXJpbmEgc2FndDogc2VpIGZyaWVkbGljaCwga2xlaW5lciA6LSkKVGhlcmluIGRlbmt0ICAgLiBvIE8gKHp1IHZpZWxlIHNlaGVyIG1pdCBlY2hvKQpUYXJpbmEgc2FndDogc29uc3QgZ2lidHMgc2VuZiBhdWZzIGhldQpNYXRpcyBuaW1tdCBIZXUuCk1hdGlzIHNhZ3Q6IGJyYXZlcyB0aWVyIDopClRoZXJpbiBzYWd0OiBkZXIgYXJtZQpUYXJpbmEgZ3JpbnN0LgpUYXJpbmEgc2FndDogaW4gZWluZW4gZ3VlcnRlbCBnZXN0ZWNrdC4uLi4gdHNlIHRzZSA6LSkKTWF0aXMgbmlja3QgenVzdGltbWVuZC4KR2VvcmRpIGRlbmt0ICAgLiBvIE8gKHdlbm4gZGFzIGRlciBUaWVyc2NodXR6IHNpZWh0KQpUaGVyaW4gbmlja3QgR2VvcmRpIHp1LgpNYXRpcyBkZW5rdCAgIC4gbyBPICh0eXBpc2NoIGVsZmVuKQpUYXJpbmEgc2FndDogZGFzIGlzdCB1ZWJlcmxlYmVuc3RyYWluaW5nLi4uIHNvIGRpY2h0IGFuIG1hdGlzIGdlZmVzc2VsdApUYXJpbmEgc2FndDogd2VyZGVuLi4uClRhcmluYSBzYWd0OiBkZXIgaXN0IGJlc3RpbW10IGRpZSBnYW56ZSB6ZWl0IGJld3Vzc3Rsb3MuCkdlb3JkaSBzYWd0OiBsYXNzIGlobiBkb2NoIG5lIEhvZWhsZSBpbiBkZWluZW4gQmFydCBiYXVlbgpNYXRpcyBzYWd0OiBoZXksIGRlciBrcmllZ3QgZ2VudWcgZ2VsZCBkYWZ1ZXIKRHUgcm90ZmxzdC4KVGFyaW5hIHNhZ3Q6IG5lLCBkYSB3b2huZW4gZG9jaCBzY2hvbiBkaWUgcmF0dGVuIGRyaW4gOy0pClRoZXJpbiBmcmFndCBUYXJpbmE6IERpZSB2b24gcGF0cnluPwpUYXJpbmEgc2FndDogYmVzdGltbXQgbmljaHQgOi0pClRhcmluYSBzYWd0OiBkaWUgc2luZCB6dSBncm9zcyBmdWVybiB6d2VyZ2VuYmFydApNYXRpcyBkZW5rdCAgIC4gbyBPIChvZWZmbmUgYmFydCAtIGtsZXR0ZXJlIGluIGxvY2gpClRoZXJpbiBzY2h1ZXR0ZWx0IHNpY2guCk1hdGlzIGRlbmt0ICAgLiBvIE8gKGRhIGlzbmQgc2llIHp1IGZlaWdlIHp1KQpHZW9yZGkgZGVua3QgICAuIG8gTyAoaXNkbj8pCk1hdGlzIG9yZG5ldCBzZWluZW4gQmFydCB3aWVkZXIuClRhcmluYSBzYWd0OiB3ZXIgaXN0IGZlaWdlPyBkaWUgcmF0dGU/CkR1IGRlbmtzdCAgIC4gbyBPIChTdHVuZGVuIHNwYWV0ZXIpClRhcmluYSBzYWd0OiBpY2ggd3VlcmRlIGF1Y2ggbmljaHQgaW4gZGVpbmVtIGJhcnQgd29obmVuIHdvbGxlbi4KTWF0aXMgb3JkbmV0IHNlaW5lbiBCYXJ0IGltbWVyIG5vY2guCkR1IHNhZ3N0OiB3YWVyZSBkYXMgbmljaHQgZWluIFBsYXR6IGZ1ZXIgRGVpbiBIYXVzID8KVGFyaW5hIHNhZ3Q6IHNvbGwgaWNoIGlobiBhYnNjaG5laWRlbj8KRGFya3dpbmcgc2NoYXV0IFRhcmluYSBmcmFnZW5kIGFuLgpUYXJpbmEgc2FndDogbmVlZSEKVGhlcmluIHNjaG11bnplbHQuCkdlb3JkaSBzYWd0OiBpbiBlaW5lbSBad2VyZ2VuYmFydCAqaWdpdHQqClRoZXJpbiBuaWNrdCBHZW9yZGkgenUuCkdlb3JkaSBzY2h1ZXR0ZWx0IHNpY2guClRhcmluYSBzYWd0OiBkYW5uIGthbm4gaWNoIGphIG5pZSBtZWhyIGx1ZWZ0ZW4hClRhcmluYSBncmluc3QuCk1hdGlzIHNhZ3Q6IGRhZnVlciBpc3RzIG1vbGxpZyB3YXJtClRoZXJpbiBzYWd0OiBrbGFyLCBGYXVsd2Flcm1lClRhcmluYSBzYWd0OiBkYW5uIGthbm4gaWNoIGphIG5pZSBtZWhyIGx1ZWZ0ZW4hClRhcmluYSBncmluc3QuCk1hdGlzIHNhZ3Q6IGRhZnVlciBpc3RzIG1vbGxpZyB3YXJtClRoZXJpbiBzYWd0OiBrbGFyLCBGYXVsd2Flcm1lClRhcmluYSBzYWd0OiBzbyBuYWNoIGRlbSBtb3R0bzogZXMgc2luZCB2aWVsZSBlcmZyb3JlbiBhYmVyIG5vY2gga2VpbmVyClRhcmluYSBzYWd0OiBlcnN0dW5rZW4/Ck1hdGlzIHNhZ3Q6IG5hIHVuZCAtIHdhcm0gaXN0IHdhcm07CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIHNjaG1hcnJuIChVbmFzYWksIDE0LiBKdW4gMTk5OSwgMTQ6MjU6MTEpOgoodG9kOkxhcnMpIFBoeWxha2VuIGhhdCBnZXJhZGUgU2ljaHNlbGJ0IHVtZ2VicmFjaHQuCih0b2Q6TGFycykgRWluZSBNb2V3ZSBoYXQgZ2VyYWRlIFNlbGJzdG1vcmQgdW1nZWJyYWNodC4KCndhcyB3aXJkIGRhcz8/IHdldHRiZXdlcmIgZGVyIHVuZ2V3b2VobmxpY2hzdGVuIE5hbWVuPyAKZWluZSB6aWVtbGljaCB2ZXJ3dW5kZXJ0ZSBVbmFzYWkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnN0ZXJiZW4gdmVyYm90ZW4gOikgKFRydWcsIDE1LiBKdW4gMTk5OSwgMDA6MzI6MjEpOgo+IERlaW4gRnJldW5kIFB1ayB0ZWlsdCBEaXIgbWl0OiBkYSBzYWd0IG1hbiBub2NoIGdlcmFkZSBzdGVyYmVuIHVudGVyc2FndCwKdW5kCkRlaW4gRnJldW5kIFB1ayB0ZWlsdCBEaXIgbWl0OiBtYW4gaXN0IGtlaW5lIHNla3VuZGUgcmF1cyB1bmQgZGFubiBkYXMgKmFyZ2wqCgpUcnVnIGVudGhhZWx0IHNpY2ggZWluZW5zIEtvbW1lbnRhcnMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGtpbmRlcj8gKENhdHdlYXpsZSwgMTUuIEp1biAxOTk5LCAwOToxNjo1OCk6Cn4jISBvbj1DYXR3ZWF6bGUgb3Q9OTI5NDMwOTA3IG9nPWVudHdpY2tsdW5nCn4jISBvbj1XaW0gb3Q9OTI5MzY0NDUzIG9nPWFsbGdlbWVpbmVzCn4jISBybj1CYW1idWxrbyBydD05MjkzNjQwOTQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MjkzNjM5MjAKQWJlciBWb3JzaWNodDogVmllbGUgTWFnaWVyIGhhYmVuIFByb2JsZW1raW5kZXIgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGtpbmRlcj8gKENhdHdlYXpsZSwgMTUuIEp1biAxOTk5LCAwOToxNzowMCk6Cn4jISBvbj1DYXR3ZWF6bGUgb3Q9OTI5NDMwOTIwIG9nPWVudHdpY2tsdW5nCn4jISBvbj1Ib3VzZWhvbGRlciBvdD05MjkzNjQ0ODQgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVdpbSBydD05MjkzNjQ0NTMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MjkzNjM5MjAKZGF0IGlzIGphIHp1bSBraW5kYWtyaWVnZW4gaXQgZXVjaCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGtpbmRlcj8gKENhdHdlYXpsZSwgMTUuIEp1biAxOTk5LCAwOToxNzowMSk6Cn4jISBvbj1DYXR3ZWF6bGUgb3Q9OTI5NDMwOTMwIG9nPWVudHdpY2tsdW5nCn4jISBvbj1TaGFyaWEgb3Q9OTI5MzY0NTA4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1XaW0gcnQ9OTI5MzY0NDUzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTI5MzYzOTIwCmZnIHdpbQpXaW0gaXN0IGFud2VzZW5kLAouLi4KVm9yZmFocmU6ICAgICBSb2NodXMKCi4uLgoKClN0aW1tdCAuLi4gYXJtZXIgUm9jaHVzIDotKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGtpbmRlcj8gKENhdHdlYXpsZSwgMTUuIEp1biAxOTk5LCAwOToxNzowMik6Cn4jISBvbj1DYXR3ZWF6bGUgb3Q9OTI5NDMwOTQyIG9nPWVudHdpY2tsdW5nCn4jISBvbj1XaW0gb3Q9OTI5MzY0NTUwIG9nPWFsbGdlbWVpbmVzCn4jISBybj1TaGFyaWEgcnQ9OTI5MzY0NTA4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTI5MzYzOTIwCnZmIG5haXJvbGYKSm9mICgxMTEpIC0+IE1pcmlsICgzNSkgLT4gQm9pbmcgKDExMSkgLT4gQ2F0d2VhemxlICg1NSkgLT4gS29iYXlhc2hpOygyNikgLT4KVmlwZXIgKDM1KSAtPiBOYWlyb2xmICgxKSAKCkFybWVyIFZpcGVyLCBtZWluc3QgRHUgd29obC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjoga2luZGVyPyAoQ2F0d2VhemxlLCAxNS4gSnVuIDE5OTksIDA5OjE3OjAzKToKfiMhIG9uPUNhdHdlYXpsZSBvdD05Mjk0MzA5NDggb2c9ZW50d2lja2x1bmcKfiMhIG9uPU5vdmFzdG9ybSBvdD05MjkzNjQ1NzQgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVdpbSBydD05MjkzNjQ1NTAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MjkzNjM5MjAKREVSIHdhciBmaWVzISAuKQogICAgTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzoga2luZGVyPyAoQ2F0d2VhemxlLCAxNS4gSnVuIDE5OTksIDA5OjE3OjA0KToKfiMhIG9uPUNhdHdlYXpsZSBvdD05Mjk0MzA5NTQgb2c9ZW50d2lja2x1bmcKfiMhIG9uPVNoYXJpYSBvdD05MjkzNjQ2MDQgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU5vdmFzdG9ybSBydD05MjkzNjQ1NzQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MjkzNjM5MjAKaG1wZmdybWJsIC4uLiAKClNoYXJpYSBrYW5uIGphIGF1Y2ggbml4IGZ1ZXIgaWhyZW4gRXJzdGllIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBraW5kZXI/IChDYXR3ZWF6bGUsIDE1LiBKdW4gMTk5OSwgMDk6MTc6MDUpOgp+IyEgb249Q2F0d2VhemxlIG90PTkyOTQzMDk2MCBvZz1lbnR3aWNrbHVuZwp+IyEgb249U2lsdmFuYSBvdD05MjkzODIwOTAgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVdpbSBydD05MjkzNjQ0NTMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MjkzNjM5MjAKV2VubiBJa2VhIEtpbmRlciBrcmllZ3QsIGhlaXNzZW4gZGllIGRhbm4gQmpvZXJuLCBPbGUgb2RlciBTdmVuPwoKU2lsdmFuYSAtIG5pY2h0IGVybnN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBraW5kZXI/IChDYXR3ZWF6bGUsIDE1LiBKdW4gMTk5OSwgMDk6MTc6MDYpOgp+IyEgb249Q2F0d2VhemxlIG90PTkyOTQzMDk2NCBvZz1lbnR3aWNrbHVuZwp+IyEgb249VGFyYWdvbiBvdD05MjkzODIxMjEgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVNpbHZhbmEgcnQ9OTI5MzgyMDkwIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTI5MzYzOTIwClNtb2VyZWJyb2VkCgpUYXJhZ29uIC0gbm9jaCB2aWVsIHVuZXJuc3RlciA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGtpbmRlcj8gKENhdHdlYXpsZSwgMTUuIEp1biAxOTk5LCAwOToxNzowNyk6Cn4jISBvbj1DYXR3ZWF6bGUgb3Q9OTI5NDMwOTcwIG9nPWVudHdpY2tsdW5nCn4jISBvbj1BbHBoYSBvdD05MjkzODIxMjMgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVNpbHZhbmEgcnQ9OTI5MzgyMDkwIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTI5MzYzOTIwCkhlaXNzZW4gZGllIGRhbm4gbmljaHQgUG9ydGEgb2RlciBNYWNvPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFleGNoZW4/IChDYXR3ZWF6bGUsIDE1LiBKdW4gMTk5OSwgMDk6MTc6MDgpOgp+IyEgb249Q2F0d2VhemxlIG90PTkyOTQzMDk3OCBvZz1lbnR3aWNrbHVuZwp+IyEgb249Wm9vayBvdD05Mjk0MDE2NDQgb2c9YWxsZ2VtZWluZXMKR2FicyB6dW0gTWFleGNoZW4tU3BpZWwgaW4gRnJhbmtzIEFiZW50ZXVyZXItS25laXBlIG5pY2ggbWEgbmVuCmVpZ2VuZW4gS2FuYWw/IFdvIGlzbiBkZXIgZ2VibGllYmVuPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGtpbmRlcj8gKERhcmlhLCAxNS4gSnVuIDE5OTksIDEyOjEzOjQwKToKfiMhIHJuPUNhdHdlYXpsZSBydD05Mjk0MzEwMjUgcmc9c2NobWFycm4KfiMhIHRpZD05MjkzNjM5MjAKQWxzbyBiZWkgSWtlYSBnaWJ0cyBlaW4gS2luZGVyYmV0dCwgZGFzIGhlaXNzdCBHdXRmaWsuCipnKiBEYXJpYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjoga2luZGVyPyAoR29yLCAxNS4gSnVuIDE5OTksIDEyOjE0OjA4KToKfiMhIHJuPURhcmlhIHJ0PTkyOTQ0MTYyMCByZz1zY2htYXJybgp+IyEgdGlkPTkyOTM2MzkyMApNaXQgd2FzIGlociBldWNoIGFsbGVzIGJlc2NoYWVmdGlndC4gSXMgZXVjaCBsYW5nd2VpbGlnPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzoga2luZGVyPyAoTm9ubmUsIDE1LiBKdW4gMTk5OSwgMTI6MzA6NDEpOgp+IyEgcm49R29yIHJ0PTkyOTQ0MTY0OCByZz1zY2htYXJybgp+IyEgdGlkPTkyOTM2MzkyMApJa2VhIGlzdCBkb2NoIGdhcmtlaW5lIGJlbGdpc2NoZSBGaXJtYSwgb2Rlci4uLiA/IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBtZWluIGFydGlrZWwgdm9uIGdlc3Rlcm4gKENhdHdlYXpsZSwgMTUuIEp1biAxOTk5LCAxMzowNTowMik6Cn4jISBvbj1CYW1idWxrbyBvdD05Mjk0NDEwOTEgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVByYSBydD05Mjk0NDA1NzQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05Mjk0NDAxMTcKSGFsbG8hCkhhbGxvIQoKU3Bpbm50IGlociBqZXR6dCBhbGxlPwpTcGlubnQgaWhyIGpldHp0IGFsbGU/CgpCYW1idWxrbwpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbWVpbiBhcnRpa2VsIHZvbiBnZXN0ZXJuIChDYXR3ZWF6bGUsIDE1LiBKdW4gMTk5OSwgMTM6MDU6MDQpOgp+IyEgb249Tm92YXN0b3JtIG90PTkyOTQ0MTE0MSBvZz1hbGxnZW1laW5lcwp+IyEgcm49QmFtYnVsa28gcnQ9OTI5NDQxMDkxIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTI5NDQwMTE3ClNjaG9lbiBkYXNzIER1IHRyb3R6ZGVtIGF1ZiBkYXMgTml2ZWF1IGVpbmdlaHN0LgogICAgTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjoga2luZGVyPyAoUGFyYWNlbHN1cywgMTUuIEp1biAxOTk5LCAxNDoxNzo0Nyk6Cn4jISBybj1EYXJpYSBydD05Mjk0NDE2MjAgcmc9c2NobWFycm4KfiMhIHRpZD05MjkzNjM5MjAKVGphLCB3YXMgZGVua3N0IER1IGRlbm4sIHdvIGRpZSBLaW5kZXIgaGVya29tbWVuPyBPZGVyIGdsYXVic3QgRHUgbm9jaAphbiBkaWUgR2VzY2hpY2h0ZSB2b20gU3RvcmNoPwoKUGFyYSogXTotPgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWggamEgcGFwYWdlaWVuIChDcml0dGVyLCAxNS4gSnVuIDE5OTksIDE0OjQwOjQyKToKRGVyIFBhcGFnZWkgaGF0IHNlaHIgZmFyYmVuZnJvaGUsIGxhbmdlIEZlZGVybiB1bmQgZGllIHZlcmJsdWVmZmVuZGUKRmFlaGlna2VpdCBpbiBlbGZpc2NoZXIgU3ByYWNoZSB6dSBzcHJlY2hlbi4KRXIgaXN0IGFic29sdXQgZml0LiAoMTAwICUpCkVyIHRyYWVndCBiZWkgc2ljaDoKRWluIGdyb3NzZXIgU2NoaWxkIChhbmdlem9nZW4pLgpFaW4gRWxmZW5wYW56ZXIgKGFuZ2V6b2dlbikuCkRlciBQYXBhZ2VpIHNhZ3Q6IE5vcmEhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbm9lLCBhbGxlcyBub2VyZGxpaGMgZGVyIERvbmF1IGlzIFN1ZWRzY2h3ZWRlbiA6KSAoR3JpbW1ib3JuLCAxNS4gSnVuIDE5OTksIDE0OjQ0OjIyKToKfiMhIG9uPVdpZGV3aXR0IG90PTkyOTQ0ODI4NCBvZz13aXR6ZQp+IyEgcm49QXBzdSBydD05Mjk0MDMyOTIgcmc9d2l0emUKfiMhIHRpZD05MjkzNTM4MDMKTm9lLCBhbGxlcyBub2VyZGxpY2ggZGVyIERvbmF1IGlzdCBTdWVkc2Nod2VkZW4gOikKCndpZGV3aXR0IG1hbCBwYXRyaW90aXNjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5vZSwgYWxsZXMgbm9lcmRsaWhjIGRlciBEb25hdSBpcyBTdWVkc2Nod2VkZW4gOikgKEdyaW1tYm9ybiwgMTUuIEp1biAxOTk5LCAxNDo0NDo0OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTI5NDUwNjYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI5MzUzODAzCkdhbnogc2ljaGVyIG5pY2h0LiBNaXQgU3VlZHNjaHdlZGVuIGtlbm5lIGljaCBtaWNoIGF1cy4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbm9lLCBhbGxlcyBub2VyZGxpaGMgZGVyIERvbmF1IGlzIFN1ZWRzY2h3ZWRlbiA6KSAoWWVuZGksIDE1LiBKdW4gMTk5OSwgMTQ6NTE6MTUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTkyOTQ1MDY4OCByZz1zY2htYXJybgp+IyEgdGlkPTkyOTM1MzgwMwpRdWF0c2NoLgpHcnVuZHNhZXR6bGljaCBpc3QgTXVlbnN0ZXIgZGVyIE5hYmVsIGRlciAoTVVELSlXZWx0LCBvYiBkZXIgTUctUmVjaG5lciBub2NoCmRvcnQgc3RlaHQgb2RlciBuaWNodC4gQmxvc3Mgd2VpbCBkZXIgYmVydWVobV5IXkhjaHRpZ3RlIG11ZW5zdGVyYW5lciBGaWx6CmpldHp0IGF1Y2ggYXVmIGFuZGVyZSBHZWdlbmRlbiB1ZWJlcmdlZ3JpZmZlbiBoYXQsIGhlaXNzdCBkYXMgbGFlbmdzdCBuaWNodCwKZGFzcyBNdWVuc3RlciBzZWluZSBtdWRkZXJpc2NoZSwgbW9yYWxpc2NoZSBvZGVyIG1hY2h0bWFlc3NpZ2UKVm9ycmFuZ3NzdGVsbHVuZyB2ZXJsb3JlbiBoYWV0dGUuCgpEYWhlcjogTXVlbnN0ZXIgaXN0IE1pdHRlIC0tIGRlciBSZXN0IGlzdCBQcm92aW56IQoKCllUWQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhaCBqYSBwYXBhZ2VpZW4gKFRhcmFnb24sIDE1LiBKdW4gMTk5OSwgMTY6MDI6NTYpOgp+IyEgcm49Q3JpdHRlciBydD05Mjk0NTA0NDIgcmc9c2NobWFycm4KfiMhIHRpZD05Mjk0NTA0NDIKIyBFciBpc3QgYWJzb2x1dCBmaXQuICgxMDAgJSkKV3VlcnN0ZS4uLiBzY2hhZmZlbiBlcyBuaWNodCBtYWwsIG9obmUgZWluZSBwcm96ZW50dWFsZSBBbmdhYmUgOi0pKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW1hcnlsbGlzLCAxNS4gSnVuIDE5OTksIDE5OjEzOjAxKToKW0FsbGdlbWVpbjpQaHlnb3NdIGplbWFuZCBiZWRhcmYgYW4gbmVtIGhlaWxpZ2VuIGhhbW1lcj8gZ2VzdW5kYmV0ZXIKW0FsbGdlbWVpbjpQaHlnb3NdIGFibGFzc2hhZW5kbGVyIG9kZXIgd2llIGRpZSBhbGxlIGhlaXNzZW4gPjopCltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIFBoeWdvcyB1bWdlYnJhY2h0LgoKenUgc3BhZXQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKE5ldm9rLCAxNS4gSnVuIDE5OTksIDE5OjE4OjIyKToKfiMhIHJuPUFtYXJ5bGxpcyBydD05Mjk0NjY3ODEgcmc9c2NobWFycm4KfiMhIHRpZD05Mjk0NjY3ODEKdGphamEgaWNoIEtlbm5lIGplbWFuZGVuIGRlciBlaW5lbiB2b24gZGVyIFNvcnRlIGdlYnJhdWNodCBoYWV0dGUgenVtCmhvY2hoZWlsZW4uLkR1IGpldHp0IGF1Y2gsIFBoeWdvcz8gOykKICAgICAgICAgICAgICAgICAgICAgICAgICBvb29vJCQkJCQkJCQkJCQkb29vbwogICAgICAgICAgICAgICAgICAgICAgb28kJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCRvCiAgICAgICAgICAgICAgICAgICBvbyQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJG8gICAgICAgICBvJCAgICQkIG8kCiAgIG8gJCBvbyAgICAgICAgbyQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJG8gICAgICAgJCQgJCQgJCRvJApvbyAkICQgIiQgICAgICBvJCQkJCQkJCQkICAgICQkJCQkJCQkJCQkJCQgICAgJCQkJCQkJCQkbyAgICAgICAkJCRvJCRvJAoiJCQkJCQkbyQgICAgIG8kJCQkJCQkJCQgICAgICAkJCQkJCQkJCQkJCAgICAgICQkJCQkJCQkJCRvICAgICQkJCQkJCQkCiAgJCQkJCQkJCAgICAkJCQkJCQkJCQkJCAgICAgICQkJCQkJCQkJCQkICAgICAgJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQKICAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCAgICAkJCQkJCQkJCQkJCQkICAgICQkJCQkJCQkJCQkJCQkICAiIiIkJCQKCiAgICIkJCQiIiIiJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCAgICAgIiQkJAoKICAgICQkJCAgIG8kJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCAgICAgIiQkJG8KICBvJCQiICAgJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkICAgICAgICQkJG8KICAgJCQkICAgICQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCIgIiQkJCQkJG9vb29vJCQkJG8KIG8kJCRvb29vJCQkJCQgICQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQgICBvJCQkJCQkJCQkJCQkJCQkJCQKICQkJCQkJCQkIiQkJCQgICAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkICAgICAkJCQkIiIiIiIiIiIKICIiIiIgICAgICAgJCQkJCAgICAiJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCIgICAgICBvJCQkCiAgICAgICAgICAgIiQkJG8gICAgICIiIiQkJCQkJCQkJCQkJCQkJCQkJCIkJCIgICAgICAgICAkJCQKCiAgICAgICAgICAgICAgICQkJCRvICAgICAgICAgICAgICAgICBvbyAgICAgICAgICAgICBvJCQkIgoKICAgICAgICAgICAgICAgICAgIiQkJCQkb28gICAgICIiJCQkJG8kJCQkJG8gICBvJCQkJCIgCiAgICAgICAgICAgICAgICAgICAgIiIkJCQkJG9vb28gICIkJCRvJCQkJCQkJCQkIiIiCiAgICAgICAgICAgICAgICAgICAgICAgIiIkJCQkJCQkb28gJCQkJCQkJCQkJCAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIiIiIkJCQkJCQkJCQkJCAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQkJCQkJCQkJCQkJCAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkJCQkJCQkJCQkIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiQkJCIiIiIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFybWVyIFJvY2h1cyAhISEhISEhISEhIChOZXZvaywgMTUuIEp1biAxOTk5LCAxOTo1MzoyMSk6CgoyMDAgS2lzdGVuIENvY2EtQ29sYSBhdXMgQmVsZ2llbiBpbiBSaGVpbmxhbmQtUGZhbHogc2ljaGVyZ2VzdGVsbHQKTWFpbnogKGRwYSkgLSBJbSByaGVpbmxhbmQtcGZsemlzY2hlbiBHcmVuemdlYmlldCB6dSBCZWxnaWVuIGlzdCBlaW4gZ3JlcmVyClBvc3RlbiBDb2NhIENvbGEgYXVzIEJlbGdpZW4gdm9uIGRlciBMZWJlbnNtaXR0ZWwtIGJlcndhY2h1bmcgc2ljaGVyZ2VzdGVsbHQKd29yZGVuLiBJbSBOYWNoYmFybGFuZCB3YXJlbiBHZXRybmtlIGRlciBGaXJtYSBDb2NhIENvbGEgbmFjaCBFcmtyYW5rdW5nZW4gdm9uClZlcmJyYXVjaGVybiBtaXQgZWluZW0gVmVya2F1ZnN2ZXJib3QgYmVsZWd0IHdvcmRlbi4gQmVsZ2lzY2hlIENvbGEgZGFyZiB3ZWdlbgppaHJlciBLZW5uemVpY2hudW5nIGluIGZyYW56c2lzY2hlciBTcHJhY2hlIGluIERldXRzY2hsYW5kIG5pY2h0IHZlcmthdWZ0CndlcmRlbi4gRGllIEdldHJua2Ugc2luZCBhbGxlcmRpbmdzIGRldXRsaWNoIGJpbGxpZ2VyLCBhbHMgZGV1dHNjaGUuIERldXRzY2hlCkNvY2EgQ29sYSBpc3QgbmFjaCBBbmdhYmVuIGRlcyBIZXJzdGVsbGVycyB1bmJlZGVua2xpY2guIAoKYWxsZXJkaW5ncyBhdWNoIGFuZGVycy4uLgoKQ29jYS1Db2xhJ3MgV3JvbmcgRml6eiBQcm9tcHRzIEhlYWx0aCBBbGVydApCUlVTU0VMUyAoUmV1dGVycykgLSBVLlMuIHNvZnQgZHJpbmtzIGdpYW50IENvY2EtQ29sYSBiZWdhbiBwdWxsaW5nIG1pbGxpb25zCm9mIGNhbm5lZCBhbmQgYm90dGxlZCBkcmlua3MgZnJvbSBzZXZlcmFsIEV1cm9wZWFuIG1hcmtldHMgVHVlc2RheSBhZnRlciBpdApwdXQgdGhlIHdyb25nIGZpenogaW50byBpdHMgZHJpbmtzIGFuZCBzY29yZXMgb2YgeW91bmdzdGVycyBmZWxsIGlsbC47ClRoZSBjb21wYW55IHNhaWQgaXRzIEFudHdlcnAgYm90dGxpbmcgcGxhbnQgaGFkIHVzZWQgdGhlICcnd3JvbmcnJyBjYXJib24KZGlveGlkZSBnYXMgKENPMikgdG8gcHV0IHRoZSBmaXp6IGludG8gZHJpbmtzLCB3aGlsZSBzZXBhcmF0ZWx5LCBjYW5zIGF0CmFub3RoZXIgcGxhbnQgaW4gdGhlIG5vcnRoZXJuIEZyZW5jaCBwb3J0IHRvd24gb2YgRHVua2lyayBoYWQgYmVlbgpjb250YW1pbmF0ZWQgd2l0aCBhIGZ1bmdpY2lkZSB1c2VkIHRvIHRyZWF0IHRyYW5zcG9ydGF0aW9uIHBhbGxldHMuOwpGb3J0c2V0enVuZyA6Cmh0dHA6Ly9kYWlseW5ld3MueWFob28uY29tL2hlYWRsaW5lcy93bC9zdG9yeS5odG1sP3M9di9ubS8xOTk5MDYxNS93bC9iZWxnaXVtXwpjb2xhXzMuaHRtbAoKKmZyYWd0IHNpY2ggb2IgUm9jaHVzIGluIEtyaXNlbnplaXRlbiBhdWYgUGVwc2kgdW1zdGVpZ3QqCgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFybWVyIFJvY2h1cyAhISEhISEhISEhIChSb25kYSwgMTUuIEp1biAxOTk5LCAxOTo1NToyMCk6Cn4jISBybj1OZXZvayBydD05Mjk0NjkyMDEgcmc9c2NobWFycm4KfiMhIHRpZD05Mjk0NjkyMDEKT2ggTmV2b2suLi4KPipmcmFndCBzaWNoIG9iIFJvY2h1cyBpbiBLcmlzZW56ZWl0ZW4gYXVmIFBlcHNpIHVtc3RlaWd0KgoKVHJpbmt0IGRlciBUZXVmZWwgaW4gTm90emVpdGVuIFdlaWh3YXNzZXI/Pz8KClJvbmRhICpzY2h1ZXR0ZWx0IHNpY2ggLSBhcm1lciBSb2NodXMhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBcm1lciBSb2NodXMgISEhISEhISEhISAoTmV2b2ssIDE1LiBKdW4gMTk5OSwgMTk6NTY6MDYpOgp+IyEgcm49Um9uZGEgcnQ9OTI5NDY5MzIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI5NDY5MjAxCmF1Y2ggd2llZGVyIHdhciwgVmVyemVpaCBtaXIgUm9jaHVzCipzaWVodCBzaWNoIGluIGVpbmVtIE1lZXIgdm9uIFBlcHNpIHVuZCBTaW5hbGNvIENvbGEgZXJ0cmlua2VuLi4uLnVhZWgqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcnRpa2VsIFNjaG1hYXJuIHdhcyBiaW4gaWNoIGZ1ZXIgZWluIEhlbGQgKFVuYXNhaSwgMTUuIEp1biAxOTk5LCAyMDowODozOCk6CkR1IGdyZWlmc3QgZGFzIEh1aG4gbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4gIApEdSB0cmlmZnN0IGRhcyBIdWhuLiAKRGFzIEh1aG4gZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbiBzY2hhcmZlbiBLcmFsbGVuIGFuLgpEYXMgSHVobiBraXR6ZWx0IERpY2ggYW0gQmF1Y2guIApEdSB0cmlmZnN0IGRhcyBIdWhuIGhhcnQuIApEdSB2ZXJzZXR6dCBkZW0gSHVobiBlaW5lbiBoZWltdHVlY2tpc2NoZW4gS2FtcGZ0cml0dC4KRHUgc2NobGFlZ3N0IGRhcyBIdWhuIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCkRhcyBodWhuIGZhZWxsdCB0b3QgenUgQm9kZW4uCgpudWphLCBnZWxlZ2VudGxpY2ggYnJhdWNodCBkaWUgRWxmZSBlYmVuIGF1Y2ggRXJmb2xnc2VybGVibmlzc2UgKmdyaW5zKgplaW5lIHZvciBTZWxic3QtdW5kIEthZW1wZmVyYmV3dXNzdHNlaW4gbmljaHQgZ2VyYWRlIHN0cm90emVuZGUgVW5hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChtaXQgVmVyem9lZ2VydW5nKSAoS2FyYW0sIDE2LiBKdW4gMTk5OSwgMDI6NTg6NTgpOgotaCoxCltTZWhlcjpCcmVpdGldIGhhdCBqZW1hbmQgbHVzdCBkaWUgYmFuc2hlZSB6dSBraWxsZW4/IGplcnJpY28gbXVzc3RlIGRhIGxkCltTZWhlcjpCcmVpdGldIGdlaGVuIDwwMjoyMjo1Nz4KPiAtVCoxCkZvbGdlbmRlcyBpc3QgYXVmICdUb2QnIHBhc3NpZXJ0OgpbVG9kOkxhcnNdIEVpbiBzY2hsaW1tZSBFcmZyaWVydW5nIGhhdCBnZXJhZGUgSmVycmljbyB1bWdlYnJhY2h0LiA8MDI6NTY6NDg+CgotLQpLYXJhbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogWXJkc3RlaW5lIChCaWVyY2hlbiwgMTYuIEp1biAxOTk5LCAwNDoxNzoxOCk6Cn4jISBvbj1CZW5kZWlnaWQgb3Q9OTI4OTk3MDI3IG9nPWQudW50ZXJ3ZWx0Cn4jISBvbj1UYXJpbmEgb3Q9OTI4Njk5NTE3IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49QWxwaGEgcnQ9OTI4Njk5MzgxIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTkyODUxOTg3NApEaWUgZWluIF9ub3JtYWxlcl8gZXJzdGllIG1pdCBTcGllbGVybGV2ZWwgMS0xMCBhYmVyIGVudHdlZGVyIG5pY2h0IGtlbm50LApvZGVyIG5pY2h0IGJld2FlbHRpZ2VuIGthbm4sIG9kZXI/CkljaCBrZW5uIGF1c3NlciBQZWdhc3N1cyBhdWNoIGtlaW5lIGFuZGVyZSBNb2VnbGljaGtlaXQuIEljaCB3ZWlzcyB6d2FyLCBkYXNzCmVzIGVpbmUgZ2lidCwgYWJlciBiaW4gc2llIG5vY2ggbmljaHQgZ2VnYW5nZW4uCgpUYXJpbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFlyZHN0ZWluZSAoQmllcmNoZW4sIDE2LiBKdW4gMTk5OSwgMDQ6MTc6MzQpOgp+IyEgb249QmVuZGVpZ2lkIG90PTkyODk5NzA2MyBvZz1kLnVudGVyd2VsdAp+IyEgb249U29uZ29rdSBvdD05Mjg3MzkxOTQgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1UcnVnIHJ0PTkyODYwMjgwNSByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05Mjg1MTk4NzQKVW5kIHdhcyBtYWNoZW4gZGllIFNlaGVySU5ORU4/CgpIYWJlbiBkaWUga2VpbmUgUG9ydGFsZT8/CgpTYXlvbmFyYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFlyZHN0ZWluZSAoQmllcmNoZW4sIDE2LiBKdW4gMTk5OSwgMDQ6MTc6NDApOgp+IyEgb249QmVuZGVpZ2lkIG90PTkyODk5NzA2NSBvZz1kLnVudGVyd2VsdAp+IyEgb249U29uZ29rdSBvdD05Mjg3MzkzNjQgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1BbHBoYSBydD05Mjg2OTkzODEgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTI4NTE5ODc0CkVzIGdpYnQgYW5kZXJlIFdlZ2UgbmFjaCBGVyBhbHMgZGllIEthcmF3YW5lPz8KV2VsY2hlIHdvIHVuZCB3aWU/CihiaW4gdm9yIGxhdXRlciBUcmFpbmllcmVuIG5vY2ggbmljaHQgZGF6dWdla29tbWVuIG5hY2ggYW5kZXJlbiBXZWdlbiB6dQpzdWNoZW4uClNheW91bmFyYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEZlcm5hYmZyYWdlIGRlciBGYWVoaWdrZWl0ZW4gKEJpZXJjaGVuLCAxNi4gSnVuIDE5OTksIDA0OjE4OjAyKToKfiMhIG9uPUJlbmRlaWdpZCBvdD05Mjg5OTcwOTkgb2c9ZC51bnRlcndlbHQKfiMhIG9uPUdvciBvdD05Mjg3NTc3NDkgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1BcHN1IHJ0PTkyODE3MjUyMCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05MjgxNzE0NDAKU3Vlc3NlcyBTY3JpcHQuIGN0cmwgYyB1bmQgZGFubiBwIHNvbGx0ZSBhYmhpbGZlIHNjaGFmZmVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBZcmRzdGVpbmUgKEJpZXJjaGVuLCAxNi4gSnVuIDE5OTksIDA0OjE4OjEyKToKfiMhIG9uPUJlbmRlaWdpZCBvdD05Mjg5OTcxMTUgb2c9ZC51bnRlcndlbHQKfiMhIG9uPU5lYiBvdD05Mjg3ODg2ODAgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1BbHBoYSBydD05Mjg2OTkzODEgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTI4NTE5ODc0CkRhbmtlIEFscGhhLApEdSBiaXN0IGZ1ZXIgbWljaCBlY2h0IGRlciBEZXBwIGRlcyBKYWhyaHVuZGVydHMsCkR1IHVuZCBEZWluZSBiaWxsaWdlICJtZWluZSB0b2xsZW4gS2FyYXRla2Egc2NyaXB0ZW4gc28gbGVpY2h0IGR1cmNoCkZlcm53ZXN0Ii1QcmFobGVyZWkgaGFiZW4gZXMgdGF0c2FlY2hsaWNoIGdlc2NoYWZmdCwgZGFzcyBkaWVzZXIgV2VnIGF1c2dlYmF1dAp3dXJkZS4KS2xhc3NlIGdlbWFjaHQsIG5lbiBMb2IgZGFmdWVyLAoKTmViCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogWXJkc3RlaW5lIChCaWVyY2hlbiwgMTYuIEp1biAxOTk5LCAwNDoyMDowMyk6Cn4jISBvbj1CZW5kZWlnaWQgb3Q9OTI4OTk3MTg5IG9nPWQudW50ZXJ3ZWx0Cn4jISBvbj1Jc25vZ29vZCBvdD05Mjg5MjAxNDUgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1VbG8gcnQ9OTI4OTE3NTI3IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTkyODUxOTg3NApNYWwgbmUgZ2FueiB1bmJlZGFyZnQgRnJhZ2UgOykKV2FydW0gcmVndCBzaWNoIGVpZ2VudGxpY2ggZWluIFNlaGVyIHVlYmVyIG5lIEFlbmRlcnVuZyBkZXMgRnVzc3dlZ2VzIGF1Zj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogWXJkc3RlaW5lIChCaWVyY2hlbiwgMTYuIEp1biAxOTk5LCAwNDoyMToxMyk6Cn4jISBvbj1CZW5kZWlnaWQgb3Q9OTI4OTk3MTkwIG9nPWQudW50ZXJ3ZWx0Cn4jISBvbj1Ib3VzZWhvbGRlciBvdD05Mjg5MjIzMTEgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1Jc25vZ29vZCBydD05Mjg5MjAxNDUgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTI4NTE5ODc0CndlaWwgamVkZXIgc2VoYSB2aWVsZSB2aWVsZSAydGllcyBicmF1Y2h0IGRhcnVudGVyIHVuYmVkaW5rdCBrYXJhdGVrYXMgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogJCVeJiogYmFuc2hlZSAoQmVuZGVpZ2lkLCAxNi4gSnVuIDE5OTksIDA5OjE0OjQ2KToKfiMhIHJuPUplcnJpY28gcnQ9OTI5NTAxMTIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI5NTAxMTIxClRqYSwgZGllIEJhbnNoZWUgYnVnZ3QgZGVubm9jaCBuaWNodC4gV2FzIG1pY2ggYWxsZXJkaW5ncyB2ZXJ3dW5kZXJ0IGlzdCBkaWUKWmVpbGUgbWl0IGRlbSBBZWd5cHRlbj8/PyAxMDAgTWFyaz8gd2FzIGlzdCBkYXM/IDopCgpXYXMgZWluIGJ1ZyBzZWluIEtPRU5OVEUgaXN0LCBkYXNzIGRpZSBCYW5zaGVlIGZ1ZXIgZGllIGxldHp0ZW4gcGFhciAyMSBIUApzb29vbyBsYW5nZSBnZWJyYXVjaHQgaGF0LiBJY2ggd2VyZGUgaWhyIGJlaWJyaW5nZW4sIHBhcmFseXNpZXJ0ZSBTcGllbGVyCmdsZWljaCB6dSBraWxsZW4sIGRhbm4gc2Nyb2xsdCBkYXMgbmljaHQgc28uCgpXYXMgZGllIFNhY2hlIG1pdCBkZW4gLi4uRHUga29tbXN0IGhpZXIgbmljaHQgd2VnLi4uIG1laHJmYWNoLU1lbGR1bmdlbgphbmdlaHQsIHNvIGlzdCBkYXMgZWluZSBFaWdlbnNjaGFmdCBkZXMgRmx1Y2h0bWVjaGFuaXNtdXMsIGF1ZiBkZW4gaWNoIE5VTEwKRWluZmx1c3MgaGFiZS4gRGFzIGxpZWd0IGluIGRlciBMaWIuIERhIG1pciBiaXNoZXIga2VpbmVyIGRlciBFcnppcyBlaW5lCkxvZXN1bmcgZnVlciBkYXMgUHJvYmxlbSBhbmJpZXRlbiBrb25udGUgKHdlbGNoZXMgdWVicmlnZW5zIGxlaWRlciBzY2hvbiBzZWl0CkJlc3RlaGVuIGRlcyBQYXNzZXMgZXhpc3RpZXJ0KSwgaXN0IHdlaXRlcmhpbiBkYW1pdCB6dSByZWNobmVuLCBkYXMgc293YXMKcGFzc2llcnQgKHVuZCBzY3JvbGx0KS4gCgpaJ3BhciBTZXJ2dSwKICAgICAgICAgICAgIEJlbmRlaWdpZCwgc2VpbmUgSGFlbmRlIGluIHVuc2NodWxkaWdlbSBTY2huZWUgd2FzY2hlbmQgdW5kIGVpbmUKZnJpc2NoZSBLZXJiZSBhdWYgc2VpbmVtIEtlcmJob2x6IGJld3VuZGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogJCVeJiogYmFuc2hlZSAoVGh1ZmhpciwgMTYuIEp1biAxOTk5LCAwOToyMDowNCk6Cn4jISBybj1CZW5kZWlnaWQgcnQ9OTI5NTE3Mjg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI5NTAxMTIxCj4gVGphLCBkaWUgQmFuc2hlZSBidWdndCBkZW5ub2NoIG5pY2h0LiAuLi4KCmZlaW4sIGRpZSBhdXNzYWdlIGhhYmUgaWNoIGlyZ2VuZHdpZSBzY2hvbm1hbCBnZWhvZXJ0Li4uCgp0aHVmaGlyIHd1bmRlcnQgc2ljaCB1ZWJlciBuaXggbWVociB1bmQgbGFlc3N0IG5lc2theWEgbmVza2F5YSBzZWluLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogJCVeJiogYmFuc2hlZSAoQmFib29uLCAxNi4gSnVuIDE5OTksIDEwOjEyOjQ5KToKfiMhIHJuPUplcnJpY28gcnQ9OTI5NTAxMTIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI5NTAxMTIxCkFiZ2VzZWhlbiBkYXZvbiwgZGFzcyBkaWUgVG9kZXNtZWxkdW5nIHZvcgpkZW0gVG9kIGtvbW10LCBpc3QgbWlyIG5vY2ggZm9sZ2VuZGVzCmF1ZmdlZmFsbGVuOiBXZW5uIHNpZSBlaXNnZXNjaGFlcmZ0ZQpLcmFsbGVuIGhhdCwgd2FydW0gYmV3ZWd0IHNpZSBzaWNoIGRhbm4gc2NobGlkZGVybmQ/CgpEYXMgc2ljaCBkYXMgIkR1IGJpcyBQQVJBTFlTSUVSVC4uLiIgc28gb2Z0CndpZWRlcmhvbHQgbGllZ3QgSU1ITyBkYXJhbiwgZGFzcyBiZWkKZWluZW0gRmx1Y2h0dmVyc3VjaCBqZWRlciBBdXNnYW5nIGVpbnplbG4gZ2V0ZXN0ZXQKd2lyZC4gRGEga2FubiBCZW5kZSogd29obCBuaXggZHJhbiBkcmVoZW4uClVuZCBlaW4gYnVnIGlzdHMgc2Nob24gbWFsIGdhciBuaWNodC4KQWxzbyBsYXNzdCBtZWluZW4gQnJ1ZGVyIDotKSBpbiBydWhlLgoKQmFCT09uKCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogJCVeJiogYmFuc2hlZSAoSG91c2Vob2xkZXIsIDE2LiBKdW4gMTk5OSwgMTA6Mzg6NDYpOgp+IyEgcm49QmVuZGVpZ2lkIHJ0PTkyOTUxNzI4NiByZz1zY2htYXJybgp+IyEgdGlkPTkyOTUwMTEyMQpzZWxic3Qgc2NodWxkIHdlbm4gZHUgYW4gZGVyIGJhbnNoZWUgZHJhdWZnZWhzdCBpY2ggaGFiIG5ldWxpY2ggZ2VsZXJudCB3aWUKbWFuIGRhcyB1bnRhIGFsbGVuIHVtc3RhZW5kZW4gdmVybWVpZGVuIGthbm46LSkgZWlnZW50bGljaCByZWNodCBmYWlyIGdlbWFjaHQgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIHNjaG1hcnJuIEljaCBiaW4gZG9jaCBrZWluIGdyb3NzZXIgSGVsZCEgKENhdHdlYXpsZSwgMTYuIEp1biAxOTk5LCAxMDozOTowMCk6Cn4jISBvbj1VbmFzYWkgb3Q9OTI5NDcwNDg5IG9nPXBhcnR5Ck9rCkR1IHJpY2h0ZXN0IERlaW5lIGdhbnplIEF1Zm1lcmtzYW1rZWl0IGF1ZiBkYXMga2FuaW5jaGVuLgpFaW4gS2FuaW5oZW4gaXN0IGFic29sdXQgZml0LgpEdSB0cmlmZnN0IGRhcyBLYW5pbmNoZW4uCkRhcyBrYW5pbmNoZW4gdmVyZmVobHQgRGljaC4KRGllIEFuZ3N0IGlzdCBzdGFlcmtlciBhbHMgRHUuLi4gRHUgd2lsbHN0IG51ciBub2NoIHdlZyB2b24gaGllci4uLgoKV2FzIGhhYiBpY2ggdmVycGFzc3Q/Pz8/ZWluZSBzaWNoIG1hZWNodGlnIHd1bmRlcm5kZSBVbmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAkJV4mKiBiYW5zaGVlIChCZW5kZWlnaWQsIDE2LiBKdW4gMTk5OSwgMTA6NDE6MzIpOgp+IyEgcm49SG91c2Vob2xkZXIgcnQ9OTI5NTIyMzI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI5NTAxMTIxCkRBTktFISEhCmljaCBoYWJlIHZlcmRyYWVuZ3QsIGRhcyBCYWJvb24gbWVpbiBCcnVkZXIgaXN0LCBhYmVyIHdlbm4gZXIgbWljaCBzbyBuZXR0Cih1bmQgdm9yIGFsbGVtIHJpY2h0aWcpIHVudGVyc3R1ZXR6dCwgZGFubiBnZWJ1ZWhydCBpaG0gRGFuay4KTmF0dWVybGljaCBhdWNoIEhvdXNlaG9sZGVyIGZ1ZXIgZGFzICJmYWlyIi4KCldhcyBkYXMgc2NobGlkZGVybiBhbmdlaHQ6IGEpIGhhdCBzaWUgSGVrdGlrIGltIEthbXBmLCB1bmQgZGFtaXQga2FubiBtYW4gd2FzCmF1c3dlaWNoZW4sIHVuZCBiKSBpc3QgZXMgZGEgb2JlbiBFWFRSRU0gZ2xhdHQsIHNvZ2FyIGZ1ZXIgc2NoYXJmZSBLcmFsbGVuIDopCgpCZW5kZWlnaWQsIGdsdWVja2xpY2ggdWViZXIgc28gdmllbCBWZXJzdGFlbmRuaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6ICQlXiYqIGJhbnNoZWUgKEhvdXNlaG9sZGVyLCAxNi4gSnVuIDE5OTksIDEwOjQ5OjI3KToKfiMhIHJuPUJlbmRlaWdpZCBydD05Mjk1MjI0OTIgcmc9c2NobWFycm4KfiMhIHRpZD05Mjk1MDExMjEKZGVpbiBicnVkYSA/IFJMID8/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogJCVeJiogYmFuc2hlZSAoQmVuZGVpZ2lkLCAxNi4gSnVuIDE5OTksIDExOjE3OjQxKToKfiMhIHJuPUhvdXNlaG9sZGVyIHJ0PTkyOTUyMjk2NyByZz1zY2htYXJybgp+IyEgdGlkPTkyOTUwMTEyMQpTT09PIHZlcnJ1ZWNrdCBiaW4gaWNoIGRhbm4gZG9jaCBuaWNodC4gbmVpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB2ZXJsZWd1bmcgKEFuYXRvbCwgMTYuIEp1biAxOTk5LCAxNDo1MDo0OSk6Cn4jISBvbj1BbmF0b2wgb3Q9OTI5NTM3NDQzIG9nPWFsbGdlbWVpbmVzCn4jISBybj1DYXR3ZWF6bGUgcnQ9OTI5NTIxOTYxIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTI5NTAzNzk2CkdlYnQgZGVtIEZhbmF0aWtlciBhdXMgU2ljaGVyaGVpdHNncnVlbmRlbiBXaXpsZXZlbCAyNi4gOikKCkFuYXRvbCAtIHdpcmQgZXMgKmxlaWRlciogbmFjaCAic2NobWFycm4iIHZlcmxlZ2VuIG11ZXNzZW4uLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW1tIHdpZSBzb2xsIGljaCBkYXMgdmVyc3RlaGVuID8/IChIaWdodCwgMTYuIEp1biAxOTk5LCAxNTo1OTozOSk6CkZvb3QgdGVpbHQgRGlyIG1pdDogaGFzdCBkdSBsdXN0IGRlbiBicnVkZXIgYmVpbSBmZW1kZ2VoZW4gZWluZSBydW50ZXJ6dWhhdWVuLApGb290IHRlaWx0IERpciBtaXQ6IGRlciBpc3QgZ2VyYWRlIGJlaSBkZXIgbmFjaGJhcmluCgpIaWdodCBncmluc3Qgc2ljaCBlaW5zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaG1tbSB3aWUgc29sbCBpY2ggZGFzIHZlcnN0ZWhlbiA/PyAoUm9jaHVzLCAxNi4gSnVuIDE5OTksIDE2OjAyOjE4KToKfiMhIHJuPUhpZ2h0IHJ0PTkyOTU0MTU3OSByZz1zY2htYXJybgp+IyEgdGlkPTkyOTU0MTU3OQpJY2ggdmVyc3RlaGUgZGFzIGFscyAtVCsuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGhtbW0gd2llIHNvbGwgaWNoIGRhcyB2ZXJzdGVoZW4gPz8gKE5vdmFzdG9ybSwgMTYuIEp1biAxOTk5LCAxNzowOTowMik6Cn4jISBybj1Sb2NodXMgcnQ9OTI5NTQxNzM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI5NTQxNTc5ClVlYmVydHJlaWIgbmljaCBzby4gOi0pCiAgICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcuLi4gKE5vdmFzdG9ybSwgMTYuIEp1biAxOTk5LCAxODo1MTo1OSk6CkthcmlzIHRlaWx0IERpciBtaXQ6IEhhc3QgRHUga3VyeiBaZWl0LCBtaXIgYmVpbSBCUml1ZGVyIHp1IGhlbGZlbj8KW1RvZDpMYXJzXSBTY2hyZWluZW1ha2VycyBpaHJlIFNjaHdlc3RlciBoYXQgZ2VyYWRlIEthcmlzIHVtZ2VicmFjaHQuCltUb2Q6U2NocmVpbmVtYWtlcnMgaWhyZSBTY2h3ZXN0ZXJdIFNjaGljaHQgaW0gU2NoYWNodCEKICAgIE5vdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkV0d2FzIGF1cyBkZW0gWnVzYW1tZW5oYW5nLCBhYmEgaW1tYWhpbiA6KSAoTm92YXN0b3JtLCAxNi4gSnVuIDE5OTksIDE5OjMyOjM3KToKRnJlcmluIHNhZ3Q6IFdlbm4gbmljaHQgYmFsZCBzY2hsdXNzIGlzdCBrb21tdCBpaHIgYWxsZSBtaXQgbWlyIGluIGRpZSBBUkVOQSEhCkZyZXJpbiBzYWd0OiA9OykKRnJlcmluIHRyb21tZWx0IHZvciBMYWNoZW4gbWl0IGRlbiBIYWVuZGVuIGF1ZiBkZW4gQm9kZW4uCldpdGNoYmxhZGUga3J1ZW1tdCBzaWNoIHZvciBMYWNoZW4uCkR1IHdpbmRlc3QgRGljaCBpbiBMYWNoa3JhZW1wZmVuLgpMZXR0ZSBicmljaHQgaW4gdW5rb250cm9sbGllcnRlcyBHZWxhZWNodGVyIGF1cy4KU3BlbGxmaXJlIHdpbmRldCBzaWNoIGluIExhY2hrcmFlbXBmZW4uCkhpYmJlbGlnIGtydWVtbXQgc2ljaCB2b3IgTGFjaGVuLgpCbHVlbWVsIGtydWVtbXQgc2ljaCB2b3IgTGFjaGVuLgpLYW1lbG90IHRyb21tZWx0IHZvciBMYWNoZW4gbWl0IGRlbiBIYWVuZGVuIGF1ZiBkZW4gQm9kZW4uClJhcmRpYW4ga3J1ZW1tdCBzaWNoIHZvciBMYWNoZW4uCk5ldm9rIGJyaWNodCBpbiB1bmtvbnRyb2xsaWVydGVzIEdlbGFlY2h0ZXIgYXVzLgpTdHJvaGFsbSBicmljaHQgaW4gdW5rb250cm9sbGllcnRlcyBHZWxhZWNodGVyIGF1cy4KS2FyaWMgcHJ1c3RldCBsYXV0aGFscyBsb3MuCkphbWVzb24gdHJvbW1lbHQgdm9yIExhY2hlbiBtaXQgZGVuIEhhZW5kZW4gYXVmIGRlbiBCb2Rlbi4KRnJlaXRhZyBrcnVlbW10IHNpY2ggdm9yIExhY2hlbi4KTmV2b2sgcHJ1c3RldCBsYXV0aGFscyBsb3MuCgogICAgTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTWFyYnVyZ2VyIEJpbGRlciAoUmluZ29yLCAxNy4gSnVuIDE5OTksIDEyOjU2OjE5KToKfiMhIHJuPVNoYXJpYSBydD05Mjk2MTY5MzEgcmc9d3d3Cn4jISB0aWQ9OTI5NTM3NzkxCkZhbHNjaC4gTWFuIG11c3MgbnVyIGFuc3ByZWNoYmFyIHNlaW4gZGFiZWkuIF06LT4KClJpbmdvci4gR2VodCBtYWwgaW4gZGllIHJpY2h0aWdlIFJ1YnJpay4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3aWUgamV0enQ/IChLYXJpYywgMTcuIEp1biAxOTk5LCAxMjo1ODoyNSk6CkRlciBEcmFrb25pZXJ3YWVjaHRlciBmYWVsbHQgdG90IHp1IEJvZGVuLgpEdSB2ZXJmb2xnc3QgamV0enQgZWluZW4gRHJha29uaWVyd2FlY2h0ZXIuCgphZWhtLi4gbmUuLiB6dSBsYXJzIGZvbGdlbiBpY2ggZGVtIGJlc3RpbW10IG5pY2ggOykKCmthcmljCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNYXJidXJnZXIgQmlsZGVyIChHcmltbWJvcm4sIDE3LiBKdW4gMTk5OSwgMTI6NTk6MjkpOgp+IyEgcm49U2hhcmlhIHJ0PTkyOTYxNjkzMSByZz13d3cKfiMhIHRpZD05Mjk1Mzc3OTEKUXVvZCBsaWNldCBKb3ZpIG5vbiBsaWNldCBib3ZpLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3aWUgamV0enQ/IChCYW1idWxrbywgMTcuIEp1biAxOTk5LCAxMzoxNjoyMSk6Cn4jISBybj1LYXJpYyBydD05Mjk2MTcxMDUgcmc9c2NobWFycm4KfiMhIHRpZD05Mjk2MTcxMDUKSG1tIGZlaGx0IG51ciBub2NoIGVpbjoKW1RvZDogRWluIERyYWtvbmllcndhZWNodGVyIGhhdCBnZXJhZGUgS2FyaWMgdW1nZWJyYWNodC5dCgp1bmQgZXMgd2FlcmUgZWluIGdlbmlhbGVzIEZMVy4uLi4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNlbWluYXJlIChUZWRkeSwgMTcuIEp1biAxOTk5LCAxODoyOTo0OCk6Cn4jISBybj1KYXNwZXIgcnQ9OTI5NTg4MTM4IHJnPXBhcnR5Cn4jISB0aWQ9OTI5NTY1ODE1CkFsc28gZWlnZW50bGljaCBiaW4gaWNoIGdlZ2VuIGxhbmd3ZWlsaWdlIFRoZW1lbiBkaWUgc2Nob24geC1tYWwgYmVoYW5kZWx0CndvcmRlbiBzaW5kLiBCaXR0ZSBhbHNvIHdhcyBzaW5udm9sbGVyZXMgYWxzIEVNLVJlY2h0ZSBmdWVyIFd1cnN0bWFncwoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndlcnRsb3NlIGhscHMgPyAoTXVhZGliLCAxNy4gSnVuIDE5OTksIDE4OjMyOjA0KToKZXMgZ2luZyBkYXJ1bSB3aWV2aWVsIHB1bmt0ZSBlaW4ga2lsbCBlaW5lcyBwbGF5ZXJzIHNvIGZ1ZXIgZGVuIG1hZyBnaWJ0IDopCltCZWlsZWlkOlR1Tml4R3V0XSBXaWV2aWVsIGJpbiBpY2ggZGVubiBudW4gd2VydD8KW0JlaWxlaWQ6Um9jaHVzXSBoYWIgaWNoIGRvY2ggZ2VzZ2F0LCA3CltCZWlsZWlkOlBhcmFjZWxzdXMgd2lua3QgaW4gZGllIFJ1bmRlIHVuZCB3dWVuc2NodCB3ZWl0ZXJoaW4gZnJvaGVzIFN0ZXJiZW4uXQpbQmVpbGVpZDpUdU5peEd1dF0gQWhzbywgVEhYISA6bykKW0JlaWxlaWQ6TXVhZGliXSA3PyBzb3ZpZWwgPyBzb3ZpZWwgd3VlcmQgaWNoIGFiZXIgbmljaCBhdXNnZWJlbgpbQmVpbGVpZDpNVFZdIGR1IG1laW5zdCBmcm9oZXMgU3RlcmJlIEJFSSBkaXIgOikKW0JlaWxlaWQ6TXVhZGliXSB3YXMga3JpZWcgaWNoIGRlbiBmdWVyIDEgPwpTdGluZyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbQmVpbGVpZDpNdWFkaWJdIGFoCgpudSB3ZWlzcyBpY2ggd2FzIHN0aW5nIHdlcnQgaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIbXBmLiAoUGFkcmVpYywgMTguIEp1biAxOTk5LCAxMzo0MDoyOSk6Cn4jISBybj1QcnlkZSBydD05Mjk3MDU4NzUgcmc9c2NobWFycm4KfiMhIHRpZD05Mjk3MDU4NzUKRGFzIG11c3N0IER1IG1pciBiZWkgR2VsZWdlbmhlaXQgbWFsIHZvcmZ1ZWhyZW4sIGRlaW5lIFplaXR2b3JzdGVsbHVuZyB2b24gMgpzZWsuIGhhbHRlIGljaCBqZWRlbmZhbGxzIGZ1ZXIgc2VociBtZXJrd3VlcmRpZy4KVW0gZ2VuYXVlciB6dSBzZWluLCB3YXMgRHUgZGEgc2Fnc3QgaXN0IHNjaGxpY2h0d2VnIF91bm1vZWdsaWNoXy4KClBhZHJlaWMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hZ2llciAuLi4gKEplbmFuZHJhLCAxOC4gSnVuIDE5OTksIDE0OjAzOjU1KToKU2NobGVpY2hlciBkZW5rdCAgIC4gbyBPIChuaXggbG9zIGhpZXIsIHNvIGVpbiBsYW5nd2VpbGlnZXMgbXVkLCBobW1tLCB3ZW4KemFwcCBpY2ggZGVubiBtYWwgPz8/KQpQYWRyZWljIGVyc2NoZWludC4KU2NobGVpY2hlciBtdXN0ZXJ0IFBhZHJlaWMuCgpKZW4qIGRlbmt0IC5vTyhqbywgbWFjaCBtYWwgOi0pCi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptYWNodHMgZGVyIG5hbWUgPyA7LSkgKERpYW5hLCAxOC4gSnVuIDE5OTksIDIxOjU2OjI3KToKRGVpbiBGcmV1bmQgTWFnZW5icm90IGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRWluIGVudHNldHpsaWNoZXIgU2NocmVpIGhhbGx0IHZvbSBGcmllZGhvZiBoZXJ1ZWJlci4KCipnKgogIERpYW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXJ0ZW4gaXMgbmV0bWFsIHNvIHVubHVzdGlnIChIaWdodCwgMTguIEp1biAxOTk5LCAyMzoxODozNyk6CkR1IGJldHJhY2h0ZXN0IGRhcyBLcmV1eiBkZXIgV2FocmhlaXQgZWluZ2VoZW5kLgpFcyBpc3QgZWluZSAxLUhhbmR3YWZmZSB1bmQgZ2Vob2VydCBkZXIgR3J1cHBlIGRlciBNZXNzZXIgYW4uIEVzIG1hY2h0CnNpY2hlcmxpY2ggZWluZW4gdWViZXJhdXMgbGFlY2hlcmxpY2hlbiBTY2hhZGVuLiBFcyBzdGljaHQgd2lya2xpY2ggc2VocgpnZWZhZWhybGljaC4gCkVzIGlzdCBuaWNodCBnZXNjaGFlcmZ0LiBFcyBoYXQgdW5nZWZhZWhyIGVpbiBHZXdpY2h0IHZvbiAtMzkgR3JhbW0uIER1Cnd1ZXJkZXN0IHNlaW5lbiBXZXJ0IGF1ZiBldHdhIDEwMDg1IE11ZW56ZW4gc2NoYWV0emVuLiBFcyBpc3QgbmljaHQKYmVzY2hhZWRpZ3QuCkpvZiBhdWNoLgoKc29sbCBkYXMgaGVpc3NlbiBkYXMgam9mIGRhcyBkaW5nIGdlbmF1c28gZWluc2NoYWV0enQgb2RlciBkYXMgZXIgbmljaHQKYmVzY2hhZWRpZ3QgaXN0ID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXJ0ZW4gaXMgbmV0bWFsIHNvIHVubHVzdGlnIChUYXJhZ29uLCAxOC4gSnVuIDE5OTksIDIzOjMxOjIyKToKfiMhIHJuPUhpZ2h0IHJ0PTkyOTc0MDcxNyByZz1zY2htYXJybgp+IyEgdGlkPTkyOTc0MDcxNwpIbW1tLi4uIGljaCB3dWVyZGUgc2FnZW4sIGRhcyBLcmV1eiB3YXIgc28gbGFjaGhhZnQgZ2Vwcm9nZ3QgZGFzcyBzb2dhciBKb2YKdm9uIHNlaW5lbSBEYXVlcmlkbGVuIHdhY2ggd3VyZGUgdW5kIGtvbW1lbnRpZXJlbiB3b2xsdGUgOi0pKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTY2hlaXNzZ2VnZW5kIChHcmltbWJvcm4sIDE4LiBKdW4gMTk5OSwgMjM6MzY6MjApOgp+IyEgb249RGFya3dpbmcgb3Q9OTI5NzI5ODYyIG9nPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHJuPVRvbWFzb2EgcnQ9OTI5NzI5ODEyIHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD05Mjk3Mjg4NDgKbXVzcyBpbSBTa3JpcHQgdW50ZXJnZWdhbmdlbiBzZWluIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FubiBIaXBwZSB1bmQgQW5keSBzaWNoIHRyZWZmZW4gLi4uIChHYXN0MiwgMTkuIEp1biAxOTk5LCAxMzo1MToxMyk6CkFuZHkgc2FndDogaGFsbG8/PwpIaXBwZSBzYWd0IDogJ0Egc2NobGFlZ3QgQiBlaW5lbiBOYWdlbCBpbiBkZW4gS29wZiwgd29yYXVmIEEgZGllIEVyYmVuO0QgdW5kIEUKYXVmIEhlcmF1c2dhYmUgZGVzIE5hZ2VscyB2ZXJrbGFndC4uLicKQW5keSBzYWd0OiBJY2ggc2NobGFnZSBEaXIgZ2xlaWNoIGVpbmVuIE5hZ2VsIGluIGRlbiBLb3BmIQpIaXBwZSBmcmFndCA6IFdhcnVtIHNhZ3QgQW5keSAnaGFsbG8/PycgPzs+QW5keSBncnVlc3N0IEhpcHBlLjs+QW5keSBncnVlc3N0Ck1laW5rbmVjaHQuCkhpcHBlIGZyYWd0IDogV2FydW0gc2FndCBBbmR5ICdJY2ggc2NobGFnZSBEaXIgZ2xlaWNoIGVpbmVuIE5hZ2VsIGluIGRlbgpLb3BmIScgPwpIaXBwZSBzYWd0IDogJ1dvIGlzdCBkYXMgTWFsemJpZXIgPycKQW5keSBzYWd0OiBJY2ggd2lsbCBhdWNoIGVpbiBNYWx6YmllciEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRhcyBhdWdlIGRlcyBza2lwcGVyIC4uLiA/IChUYXJhZ29uLCAxOS4gSnVuIDE5OTksIDE0OjA1OjI5KToKRHUga2xvcGZzdCBhbiBkaWUgVHVlci4gRHVtcGZlIFNjaGxhZWdlIGVyc2NodWV0dGVybiBkYXMgSGF1cy4KTmFjaCBrdXJ6ZXIgWmVpdCBvZWZmbmV0IHNpY2ggZGllIFR1ZXIsIHVuZCBlaW4gYWx0ZXIgTWFubiBpbiBEaWVuZXJ1bmlmb3JtCmVyc2NoZWludC4KU2tpcHBlciAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9obmUgd29ydGUgKFNvcmNlcmVyLCAxOS4gSnVuIDE5OTksIDE5OjQ4OjIzKToKPnZlcmthdWZlIGZvdG8KRGVyIEhhZW5kbGVyIGZpbmRldCBHZWZhbGxlbiBhbiBkZW0gTmFja3Rmb3RvIHVuZCBsZWd0IGlobiB6dSBzZWluZW4KUHJpdmF0c2FjaGVuLgpEZXIgSGFlbmRsZXIgemFobHQgRGlyIDEgR29sZHN0dWVjay4gCgpTb3JjZXJlciAtIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqbmVydiogKEdub21lLCAyMC4gSnVuIDE5OTksIDAwOjM1OjI2KToKSG9lbGxlLgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgouLi4KRWluIEhpcHBlIGtvbW10IGhlcmVpbiB1bmQgbGFiZXJ0IERpY2ggdm9sbC4KSGlwcGUgZnJhZ3QgOiAnVW5kIHdpZSBtYWNoZSBpY2ggZWluIGJvb3RmYWVoaWdlcyBCYW5kID8nCkhpcHBlIHplaWd0IERpciBzZWluZW4gVmVjdHJhLgpIaXBwZSBpc3N0IFNwYWdoZXR0aSBjYXJib25hcmEuCgpuaWNobWEgaW5uZXIgaG9lbGxlIGhhdCBtYW4gc2VpbmUgcnVoZSB2b3IgZGVtLi4uIGFyZ2wgOikKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmYXN0Zmx3IDspIChBbmF0b2wsIDIwLiBKdW4gMTk5OSwgMDM6MTc6MTApOgpLYXJpYyB0ZWlsdCBEaXIgbWl0OiByZXRhcmcKW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbCBoYXQgZ2VyYWRlIEthcmljIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWxdIFBmZmZmZmZmZmZmZnQuLi4uLi4uUExVTVBTIQoKRGFmdWVyIGhhZXR0ZXN0IER1IG5pY2h0IG1pdCBkZW0gaWRsZW4gYXVmaG9lcmVuIG11ZXNzZW4uLi4KCkFuYXRvbCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFoaGhqYSA6KSAoTmFpcm9sZiwgMjAuIEp1biAxOTk5LCAyMTo1MjowOCk6CgpEQVMgbmVubmUgaWNoIHNwb250YW4gLi4uICMKCj4gcGFkIGRhID8KRHUgdGVpbHN0IFBhZHJlaWNzIHByaXZhdHNla3JldGFlciBtaXQ6IGRhID8KUGFkcmVpYyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQo+IHBhZCAqcm90ZmwqCkR1IHRlaWxzdCBQYWRyZWljIG1pdDogKnJvdGZsKgpQYWRyZWljIHRlaWx0IERpciBtaXQ6ID8gWzIxOjUwXQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZsdWdkcmFjaGVuLi4uIChNYWdlbmJyb3QsIDIwLiBKdW4gMTk5OSwgMjI6MjA6MjIpOgoqZ3JpbnMqCgpFaW4gRmx1Z3NhdXJpZXIgbmFlaGVydCBzaWNoIGltIFN0dXJ6Zmx1ZyB1bmQgc2NoZWlzc3QgVG9waW5hbWJ1ciB6dS4KRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpEdSBzYWdzdDogbWVubm8gOigKTWFnZW5icm90IHB1dHp0IFRvcGluYW1idXIKVG9waW5hbWJ1ciBzYWd0OiBkZXIgc3Bpbm50ClRvcGluYW1idXIgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uClRvcGluYW1idXIgc3Rpbmt0IHdpZGVybGljaC4KVG9waW5hbWJ1ciBnaWJ0IG1hZ2VuYnJvdCBlaW5lIHdhZXNjaGtsYW1tZXIgZnVlciBkaWUgbmFzZQpUb3BpbmFtYnVyIHN0aW5rdCB2b3Igc2ljaCBoaW4uClRvcGluYW1idXIgc3Rpbmt0IGFic2NoZXVsaWNoLgp1bnQgdG9waW5hbWJ1cgpUb3BpbmFtYnVyIGhhdCBzaWNoIG1pdCBHdWFubyBnZXNjaG1pbmt0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFoaGhqYSA6KSAoQWxwaGEsIDIxLiBKdW4gMTk5OSwgMDE6MzM6MzApOgp+IyEgcm49TmFpcm9sZiBydD05Mjk5MDgzMjggcmc9c2NobWFycm4KfiMhIHRpZD05Mjk5MDgzMjgKRGVyIFByaXZhdHNla3JldGFlciBoYXQgZGVuIFR5cG8gaW1tZXIgbm9jaD8KQWxwaGEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUkNTLUVpbnRyYWVnZSBiaXMgMTk5OS0wNi0yMCAgU2lsdmFuYSAgPFNpbCAoTW9yZ290aCwgMjEuIEp1biAxOTk5LCAwNzozNzowNCk6Cn4jISBybj1SQ1MyTkVXUyBydD05Mjk5MTgxOTkgcmc9bWFnaWVyLm11ZGxpYgp+IyEgdGlkPTkyOTkxODE5OQpJaGhoaCwgZGllIEJFVEVOID8/PwoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNhbmQgKEJlbmRlaWdpZCwgMjEuIEp1biAxOTk5LCAxMDoxNzoxNSk6Cn4jISBvbj1LZXJvayBvdD05Mjk4OTg1MTYgb2c9YWxsZ2VtZWluZXMKKld1aGFoYWhhaGFoYWhhaGFoYWhoYWhhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa2FlbXBmZXIhIDspIChUaHVmaGlyLCAyMS4gSnVuIDE5OTksIDE0OjExOjU5KToKW0FiZW50ZXVlcjpYWFhdIGFyZ2wsIHNjaG8gd2llZGVyLCBpY2ggYmluIGltIG9ya2xhZ2VyIGVpbmdla2VpbHQuLi53ZXIKW0FiZW50ZXVlcjpYWFhdIGthbm4gbWFsIGRpZSB6d2VpIHdhZWNodGVyIHVtaGF1ZW4uLi4gPDE0OjA2OjEwPgoKWFhYID0gS2FlbXBmZXIgTGV2ZWwgMzEvMTQKClRodWZoaXIsIG9obmUgV29ydGUuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbW0uLi4gKE5vdmFzdG9ybSwgMjEuIEp1biAxOTk5LCAxNTo0MTo1Nyk6CltLbGVydXM6VGFuaXNdIHd1YSAuLiBzb24gaGF1ZmVuIGtsZXJpa2VyIGF1ZiBlaW5tYWwgaGFiIGljaCBqYSBub2NoIG5pZQpbS2xlcnVzOlRhbmlzXSBnZXNlaGVuIC4uLiB3byBrb21tdCBpaHIgYWxsZSBoZXI/ICpzdGF1bioKW2t3ZXIgYmVpIHRhbmlzXQogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTW9uLCAyMS4gSnVuIDE5OTksIDE1OjQxOjEzICg1IFRlaWxuZWhtZXIpCgpSZW0uLi4uLi4uLi4uLi5pLlMgRXJ6ZW5nZWwuLi4uLi4uaS56ICpDYXJhbW9uLi4uLi4uLmkueiBUeXJhbm4uLi4uLi4uLi4uLnoKVGFuaXMuLi4uLi4uLi4uLi5TCgogICAgIE5vdmEsIFNFSFIgbmFjaGRlbmtsaWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphdWZ3ZXJ0dW5nPyA7KSAoS2FyaWMsIDIxLiBKdW4gMTk5OSwgMTU6NTU6MDcpOgpEZXIgQmtub3Igc2NobGFlZ3QgRGljaCBtaXQgZWluZW0gRmx1ZWdlbC4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCmRhIGtyaWVndCBtYW4gamEgcmljaHRpZyBhbmdzdCBiZWkgZGVtIDspCmthcmljCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYWphLCB6dW0gMTAwMHN0ZW4gbWFsIDpvKSAoUmVhcGVyLCAyMS4gSnVuIDE5OTksIDE1OjU5OjIxKToKCgogQnJhbndlbiBydWZ0OiBMVUcgRk9SIFNIRVJJRkYKIER1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgphYmVyIGRpZXNtYWwgd2llZGVyIGJlc29uZGVycyBzY2hvZW4gOm8pCkVpbiB6dXN0aW1tZW5kZXIKUmVhcGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGluIGRlciBHaWxkZSAoQW1hcnlsbGlzLCAyMS4gSnVuIDE5OTksIDE2OjE3OjQzKToKLi4uaW1tZXIgd2llZGVyIG5ldHQgKFhYWCA9IFNwaWVsZXIgTGV2ZWwgMSA7KSkKClhYWCB0ZWlsdCBEaXIgbWl0OiBkdS4uLj8KRHUgdGVpbHN0IFhYWCBtaXQ6IGhtPwpYWFggdGVpbHQgRGlyIG1pdDogSGFiIGljaCBkaWNoIGpldHp0IGdlZnVuZGVuPwoKWyJzY2hhdSIgZXJnaWJ0LCBkYXNzIGRlciBHdXRlIGF1Y2ggaW4gZGVyIEdpbGRlIHN0ZWh0IDspKV0KCkR1IHRlaWxzdCBYWFggbWl0OiBXaWxsc3QgZHUgZGllIFF1ZXN0IG1hY2hlbj8KWFhYIG5pY2t0IHp1c3RpbW1lbmQuCkR1IHRlaWxzdCBYWFggbWl0OiBIbSBzbyBlaW5mYWNoIGlzdCBlcyBsZWlkZXIgbmljaHQsIGljaCBiaW4gbnVyIGRhcwpEb3VibGUuLi4gOykKCnVzdy4uLgpBbWFyeWxsaXMsIGtpY2hlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZToga2FlbXBmZXIhIDspIChUYXJhZ29uLCAyMS4gSnVuIDE5OTksIDE2OjI4OjUzKToKfiMhIHJuPVRodWZoaXIgcnQ9OTI5OTY3MTE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI5OTY3MTE5Ck5hamEsIHdlciBzaWNoIHNjaG9uIG5hY2ggZWluZW0gYmF5cmlzY2hlbiBMdXN0a2lsbGVyZ2V0cmFlbmsgbmVubnQsIHVuZCBkYW5uCm5vY2ggbmljaHQgbWFsIGRlbiAnSGludGVyYXVzZ2FuZycgZGVzIE9ya2xhZ2VycyBrZW5udCwgZGVyIGhhdCBkZWZpbml0aXYgYmVpbQpob2Noc3BpZWxlbiBldHdhcyBuaWNodCBzbyBnYW56IHJpY2h0aWcgZ2VtYWNodCA6LSkpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBrYWVtcGZlciEgOykgKFR3aW5zZW4sIDIxLiBKdW4gMTk5OSwgMTc6MjU6NDYpOgp+IyEgcm49VGFyYWdvbiBydD05Mjk5NzUzMzMgcmc9c2NobWFycm4KfiMhIHRpZD05Mjk5NjcxMTkKSGVpc3N0IGRhcyBHZXRyYWVuayBuaWNodCBLZWZpciA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcmdsIChUd2luc2VuLCAyMS4gSnVuIDE5OTksIDE4OjAwOjE4KToKZGVua2UKRHUgZmFlbmdzdCBhbiB6dSBkZW5rZW4uCktsZWluZSBSYXVjaHdvZWxrY2hlbiBzdGVpZ2VuIGF1Zi4KRWluIGVudHNldHpsaWNoZXIgU2NocmVpIGhhbGx0IHZvbSBGcmllZGhvZiBoZXJ1ZWJlci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogamFqYSwgenVtIDEwMDBzdGVuIG1hbCA6bykgKEx1ZywgMjIuIEp1biAxOTk5LCAwMDoyMjoyMyk6Cn4jISBybj1SZWFwZXIgcnQ9OTI5OTczNTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTI5OTczNTYxCgpIbWphLAoKZGEgd3VlcmRlbiBzaWNoIGF1Y2ggZWluaWdlIGJhbGQgd2llIFdhY2tlbHB1ZGRpbmcgZnVlaGxlbi4uLgoKS3VyegpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoIGluIGRlciBHaWxkZSAoQmFtYnVsa28sIDIyLiBKdW4gMTk5OSwgMDk6MzM6MDcpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTkyOTk3NDY2MyByZz1zY2htYXJybgp+IyEgdGlkPTkyOTk3NDY2MwpHZW5hdSwgQW1hcnlsbGlzIGxvZXNjaGVuIDstKQoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBcmdsIChHcmltbWJvcm4sIDIyLiBKdW4gMTk5OSwgMTA6MDU6MDEpOgp+IyEgcm49VHdpbnNlbiBydD05Mjk5ODA4MTggcmc9c2NobWFycm4KfiMhIHRpZD05Mjk5ODA4MTgKV29yYW4gbWFuIHdpZWRlciBzaWVodCBkYXNzIG1hbiBiZXNzZXIgZGllIEZpbmdlciB2b24gd2FzIGxhc3NlbiBzb2xsdGUgd2FzCm1hbiBuaWNodCBrYW5uLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFjaCBkYSBrb21tZW4gZGllIGhlciAoQnV6emN1dCwgMjIuIEp1biAxOTk5LCAxMDowOTozNyk6CkJ1enpjdXQga29udHJvbGxpZXJ0IERlaW5lbiBQdWxzLgpEZWwgc2FndDogaWNoIHdlaXNzIGF1Y2ggbmljaHQuLi4KRHUgc2Fnc3Q6IHNhZyBtYWwgQUFBQUFBQUFoCkRlbCBzYWd0OiBhYWFhYWFhYWFhYWFhaGhoaGhoaGhoaApCdXp6Y3V0IHN0ZWNrdCBEaXIgZWluIEhvbHpsb2VmZmVsY2hlbiBpbiBkZW4gSGFscyB1bmQgc2NoYXV0IGludGVyZXNzaWVydC4KU2FyYWggICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCldpZSBqZXR6dCAuLi4gZG9jaCBuaXggbWl0IEtsYXBwZXJzdG9yY2ggPz8/CiAgIAoKICAgICBCdXp6aSAqZG9rdGVybmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEthcmFtLCAyMy4gSnVuIDE5OTksIDExOjQwOjM4KToKW1RydmVzOkdvbGFzXSBhZWhtLCBicmllc2VsIGdlaHQgbmFjaCBub3JkZW4gLi4uID8hPwpbVG9kOkxhcnNdIEhpbnRlciBMaXN0IGhhdCBnZXJhZGUgUGVjaHZvZ2VsIHVtZ2VicmFjaHQuCgotLQpLYXJhbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2lzc2Vuc2NobGFjaHQgKFdpbSwgMjMuIEp1biAxOTk5LCAxNzoxNTowNSk6ClJpa3VzIGdyaW5zdCBSb2NodXMgYW4uClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJvY2h1cyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggUmlrdXMuClJvY2h1cyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggUmlrdXMuClJvY2h1cyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggUmlrdXMuClJvY2h1cyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggUmlrdXMuClJvY2h1cyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggUmlrdXMuClJvY2h1cyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggUmlrdXMuClJvY2h1cyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggUmlrdXMuClJvY2h1cyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggUmlrdXMuClJvY2h1cyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggUmlrdXMuClJvY2h1cyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggUmlrdXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuClJpa3VzIHdpcmZ0IGVpbiBLaXNzZW4gbmFjaCBSb2NodXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmdWVyIHB1ayAoU2FtdHBmb3RlLCAyMy4gSnVuIDE5OTksIDIxOjM3OjAyKToKW0FsbGdlbWVpbjpQdWtdIHNjaHdhY2gsIGluIDQgc3R1bmRlbiBudXIgMiBhcnRpa2VsID8/IHNjaHdhY2gsIGVjaHQgc2Nod2FjaApbQWxsZ2VtZWluOlB1a10gKnNldWZ6KgoKSmV0enQgaGFzdCBkdSB3YXMgenVtIExlc2VuLiBWaWVsIFNwYXNzIGRhbWl0IDopCgpTYW10cGZvdGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIZWlsc2FtZSBNYWdpZXIuLi4gKE1pZXplLCAyMy4gSnVuIDE5OTksIDIyOjQ5OjEzKToKCmViZW4gaW4gbWVpbmVtIEhhdXMuLi4KCkRlciBCb2RlbiBiZWJ0LiBEdSBrYW5uc3QgRGljaCBrYXVtIGF1ZiBkZW4gQmVpbmVuIGhhbHRlbi4KRGVyIEJvZGVuIHJlaXNzdCBkaXJla3QgbmViZW4gRGlyIGF1ZiB1bmQgZWluZSBCaWVyc2FldWxlIHNjaGllc3N0IGVtcG9yLgpEZXIgQm9kZW4gc2NobGllc3N0IHNpY2ggd2llZGVyIHVuZCBTaGFrZWRiZWVyIHN0ZWh0IG5lYmVuIERpci4KRGVpbmUgU2NodWhlIGdsdWVoZW4ga3VyeiBhdWYgdW5kIGhlaWxlbiBEaWNoIGVpbiB3ZW5pZy4KRWluZSBoZXJybGljaGUgV2Flcm1lIGdlaHQgdm9uIERlaW5lbSBBbXVsZXR0IGF1cywgdW5kIER1IGZ1ZWhsc3QKRGljaCBwcmltYS4KCk1pZXplIGRlbmt0IChtYW4gc29sbHRlIE1hZ3MgbWFsIGltIEthbXBmIHp1IGVpbmVtIGJlc3RlbGxlbiA6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZToga2FlbXBmZXIhIDspIChDYXJhZGhyYXMsIDI0LiBKdW4gMTk5OSwgMDA6NTI6MjIpOgp+IyEgcm49VGFyYWdvbiBydD05Mjk5NzUzMzMgcmc9c2NobWFycm4KfiMhIHRpZD05Mjk5NjcxMTkKV2llPyBEYXMgT3JrbGFnZXIgaGF0IGVpbmVuICdIaW50ZXJhdXNnYW5nJz8gOikgSXN0IGRlciBuZXU/ICpncmlucyoKCiAgICBCZXJnY2hlbiBDYXJhZGhyYXMgLSBrZW5udCBzaWNoIG1pdCBsdiA0MCBoaWVyIGdvciBudWVzY2ggYXVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2lzc2Vuc2NobGFjaHQgKE1vcmdvdGgsIDI0LiBKdW4gMTk5OSwgMDg6MDU6MzMpOgp+IyEgcm49V2ltIHJ0PTkzMDE1MDkwNSByZz1zY2htYXJybgp+IyEgdGlkPTkzMDE1MDkwNQpBZWgsIERlaW5lIE1hdXN0YXN0ZSBoYWt0LCBEdSBoYXN0IHp1IG9mdCBnZXBhc3RlZC4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXMgKEhvdXNlaG9sZGVyLCAyNC4gSnVuIDE5OTksIDExOjM5OjExKToKd2FzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSb2NodXMgISEhIChEYXJrd2luZywgMjQuIEp1biAxOTk5LCAxMzo1NDoyNik6CmcgYXVmbmFobWUgc3BlbGxmaXJlCltUZWFtIDE6XSBTcGVsbGZpcmUgd3VyZGUgaW5zIFRlYW0gYXVmZ2Vub21tZW4uIApbVGVhbSAxOl0gRGFya21hZ2UtPjIKW1RlYW0gMTpdIFNwZWxsZmlyZS0+MiwgRGFya21hZ2UtPjMKW1RlYW0gMTpdIFNwZWxsZmlyZS0+MiwgRGFya21hZ2UtPjMKW1RlYW0gMTpdIFNwZWxsZmlyZS0+MiwgRGFya21hZ2UtPjMKW1RlYW0gMTpdIFNwZWxsZmlyZS0+MywgRGFya21hZ2UtPjQsIERhcmttYWdlLT4yCltUZWFtIDE6XSBTcGVsbGZpcmUtPjIsIERhcmttYWdlLT4zLCBEYXJrbWFnZS0+NApbVGVhbSAxOl0gU3BlbGxmaXJlLT4yLCBTcGVsbGZpcmUtPjMsIERhcmttYWdlLT40LCBEYXJrbWFnZS0+NQpbVGVhbSAxOl0gU3BlbGxmaXJlLT4yCltUZWFtIDE6XSBTcGVsbGZpcmUtPjIKW1RlYW0gMTpdIFNwZWxsZmlyZS0+MywgU3BlbGxmaXJlLT4yCgpiaXR0ZSBiaXR0ZSBiYXUgZGllc2UgdmVyZmx1Y2h0ZW4gU2NoYXR0ZW4gZW5kbGljaCBhdXMgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGYXEgKFNjaG9rbywgMjQuIEp1biAxOTk5LCAxNTo1MjoyOSk6Cn4jISBvbj1TY2hva28gb3Q9OTMwMjMyMzMzIG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49Tm92YXN0b3JtIHJ0PTkzMDIyNDk4NSByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05MzAyMjM3OTIKTm92YSB1ZWJ0IExJZWJlIG1pdCBkZXIgUHVwcGUgbWFjaGVuPyA7KSkKCgpTY2hva28sIGdlaHQgaW4gRGVja3VuZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZCBkYXMgbmFlY2hzdGUgTWFsIGF1Y2ggbm9jaD8gKEthcmFtLCAyNC4gSnVuIDE5OTksIDE2OjM2OjQyKToKW1RvZDpMYXJzXSBVbnMtVXdlIGhhdCBnZXJhZGUgTWFnaWNvbGxpIHVtZ2VicmFjaHQuCltNb2VyZGVyOkdlaXN0IFVucy1Vd2VzXSBOQUVDSFNURVMgTUFMIE5FSE0gSUNIIERJQ0ggQVVDSCBNSVQsIE1hZ2ljb2xsaSEKCi0tCkthcmFtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBGYXEgKFVuYXNhaSwgMjQuIEp1biAxOTk5LCAxNjozOTo1OCk6Cn4jISBybj1TY2hva28gcnQ9OTMwMjMyMzQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwMjIzNzkyCnNvc28sIERBUyB3dWVyZGUgbWljaCBqZXR6dCBhYmVyIGF1Y2ggbWFsIGludGVyZXNzaWVyZW4gTm92YSA6KQoqZWluZSBncmluc2VuZGUgVW5hKiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmFudT8gKEFwc3UsIDI0LiBKdW4gMTk5OSwgMTc6NDM6NTUpOgo+dW50ZXJzdWNoZSBzY2h3ZXJ0CkVzIGlzdCBkYXMgaGVpbGlnZSBTY2h3ZXJ0IHZvbiBUaWhhbmFjby4KPnNjaGFldHogc2Nod2VydApFaW4gU2Nod2VydCBpc3Qgd2VkZXIgZWluZSBXYWZmZSBub2NoIGVpbmUgUnVlc3R1bmcuIER1IGthbm5zdCBlcyBhbHNvIG5pY2h0CmVpbnNjaGFldHplbi4KCkFwc3UsIGdydWViZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbGFuZ2UgbGVpdHVuZz8gOikgKFNoYW5uYXJhLCAyNC4gSnVuIDE5OTksIDE4OjI3OjA3KToKU3Ryb2hhbG0gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbiBGcmV1bmQgU3Ryb2hhbG0gdGVpbHQgRGlyIG1pdDogZ3VndXggOikKRGVpbiBGcmV1bmQgU3Ryb2hhbG0ga251ZGRlbHQgRGljaCBtaXQgZGVtIEZlaW5nZWZ1ZWhsIGVpbmVyIEhlcmRlIEVsZWZhbnRlbgphdXMgZGVyIEZlcm5lLgpEdSB0ZWlsc3QgU3Ryb2hhbG0gbWl0OiBoYWxsbwpEdSB0ZWlsc3QgU3Ryb2hhbG0gbWl0OiBzY2hyZWkgamV0enQgbmljaHQgbmljaHQgJ25lZWVlZWVlZWluJyA6KQpEZWluIEZyZXVuZCBTdHJvaGFsbSB0ZWlsdCBEaXIgbWl0OiA/ClN0cm9oYWxtIHRlaWx0IERpciBtaXQ6ID8KW0FsbGdlbWVpbjpab29rIHdhcnRldCBhdWNoLl0KRHUgdGVpbHN0IFN0cm9oYWxtIG1pdDogd2lyc3Qgc2Nob24gZHJhdWZrb21tZW4KRGVpbiBGcmV1bmQgU3Ryb2hhbG0gdGVpbHQgRGlyIG1pdDogTkVFRUVFRUlOISA6KApbPE1hc3RlUj46U3Ryb2hhbG1dIHUKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBEYXMgTVVEIGxhZXVmdCBqZXR6dCA3IFN0dW5kZW4sIDM5IE1pbnV0ZW4gdW5kIDI1Cls8TWFzdGVSPjo8TWFzdGVSPl0gU2VrdW5kZW4uIEVzIHNpbmQgbW9tZW50YW4gODcgU3BpZWxlciBlaW5nZWxvZ2d0OyBkYXMKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBNYXhpbXVtIGxhZyBoZXV0ZSBiZWkgMTE1IHVuZCBkZXIgUmVrb3JkIGJpc2hlciBpc3QgMjE0LgpEZWluIEZyZXVuZCBEaXJpb24gdGVpbHQgRGlyIG1pdDogb2ggZG9jaC4uLiA6LwoKU2hhbm5hcmEuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWVjaHogKEx1ZywgMjUuIEp1biAxOTk5LCAwMzoyNzo0MSk6CgpkYXMgc29sbCBtaXIgZWluZXIgbmFjaG1hY2hlbjoKCltNb2VyZGVyOkdlaXN0IEhlbGl4IFBvbWF0YXNdIE1lcmxpbiwgbWFjaCBMdWcgenVtIE1hZ2llciEKCgpIQUghCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJvY2h1cyAhISEgKE1vcmdvdGgsIDI1LiBKdW4gMTk5OSwgMDc6NTk6MjApOgp+IyEgcm49RGFya3dpbmcgcnQ9OTMwMjI1MjY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwMjI1MjY2CldhYWFhaCwgUm9sYW5kICEhIEluIGVpbmVtIFRlYW0gbWl0IFNwZWxsZmlyZSA/Pz8gClN1Y2ggRGlyIGVpbmUgR1JPU1NFIEVja2UgdW5kIHNjaGFlbSBEaWNoLiAKClN2ZW4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGYXVsdGllcmUgKERpZWRlciwgMjUuIEp1biAxOTk5LCAxMTo0MzowOCk6Clt4eHggc3RlaHQgZnVlciBlaW5lbiBKdW5nc2VoZXIsIGRlciBuaWNodCBnZW5hbm50IHdlcmRlbiBtb2VjaHRlIDspXQoKeHh4IHRlaWx0IERpciBtaXQ6IGJpbiBncmFkIHp1IGZhdWwgbmUgTWF1cyB6dSBrYXVmZW4sIGZ1ZWhsIERpY2ggYW5nZWdyaW5zdAo7KQoKc28ganVuZyB1bmQgc2Nob24gc28gZmF1bC4uLiB0c3RzdHMuLi4gbmFqYSBmcnVlaGVyIHdhciBhbGxlcyBiZXNzZXIsIGFscyB3aXIKbm9jaCBqdW5nIHVuZCBodWVic2NoIHdhcmVuLi4uICp0YXR0ZXIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcmVpdGFnIChEaWVkZXIsIDI1LiBKdW4gMTk5OSwgMTM6NTU6MjQpOgpGcmVpdGFnICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpEaWVkZXIsIHNjaGF1dCBhdWYgZGllIFVociB1bmQgd2VkZWx0IHdpbGQgbWl0IGVpbmVtICJTdGVsbHQgZGllIFVocgpyaWNodGlnIi1GYWVobmNoZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcmVpdGFnIChUZWRkeSwgMjUuIEp1biAxOTk5LCAxMzo1NzoyMik6Cn4jISBybj1EaWVkZXIgcnQ9OTMwMzExNzI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwMzExNzI0CkRpZWRlciwgZXMgaXN0IEZyZWl0YWcgdW5kIGRlciBGcmVpdGFnIGlzdCBpbW1lciBldHdhcyBydWhpZ2VyIHVuZApnZW1hZWNobGljaGVyLCBkZXIgZmFlbmd0IGhhbHQgZXJzdCBqZXR6dCBhbi4KClRlZGR5LCBhdWNoIG5vY2ggbmljaHQgd2lya2xpY2ggd2FjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobWFycm4gKFZlY3RvciwgMjUuIEp1biAxOTk5LCAxNDoxNjoxNyk6CkRlaW4gWmF1YmVyc3BydWNoIG1pc3NnbHVlY2t0LiBJcmdlbndhcyBpc3QgZ2VyYWRlIHBhc3NpZXJ0LCBudXIgd2FzPwpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KClVwczopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaG5lIHdvcnRlIChHdWlsZG8sIDI1LiBKdW4gMTk5OSwgMTQ6Mzk6MjIpOgplYmVuIGluIGRlciBQb3N0cXVlc3QgKHVuZ2VzY2huaXR0ZW4pOgoKRHUgZ2lic3QgZGVuIEJyaWVmIGFuIEhlcnJuIE11ZWxsZXIuCkhlcnIgTXVlbGxlciBsaWVzdCBlaW5lbiBCcmllZi4KPiBEYXMgTW9yZ2VuR3JhdWVuIGVyeml0dGVydCB1bnRlciBlaW5lbSBsYW5nZXpvZ2VuZW4sIHVubWVuc2NobGljaGVuIFNjaHJlaS4KCgpIaWhpLApHdWlsZG8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXIgQ2lzb3UgKEdyaW1tYm9ybiwgMjUuIEp1biAxOTk5LCAxNToxMTowNyk6Cn4jISBvbj1ab29rIG90PTkzMDE3ODU1MCBvZz1hbGxnZW1laW5lcwpEYW1pdCBEdSB3YXMgenUgbGVzZW4gaGFzdC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVlciBDaXNvdSAoR3JpbW1ib3JuLCAyNS4gSnVuIDE5OTksIDE1OjExOjA4KToKfiMhIG9uPUthcmljIG90PTkzMDE3ODU5MCBvZz1hbGxnZW1laW5lcwp+IyEgcm49Wm9vayBydD05MzAxNzg1NTAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MzAxNzg1NTAKbWlyIHdhciBpcmdlbmR3aWUga2xhciBkYXMgc293YXMga29tbXQgOykKa2FyaWMqYXVjaG1hbHdpZWRlcm1wYXp1bXVlbGxlbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp2b3JhaG51bmcgOi0pIChUYXJhZ29uLCAyNS4gSnVuIDE5OTksIDE1OjE3OjE5KToKW0FsbGdlbWVpbjpIaWdnc10gaWhyIGhhYnQgUHJvYmxlbWUKW1RvZDpMYXJzXSBEaWUgdW5oZWltbGljaGUgSGFlbmdlYnJ1ZWNrZSBoYXQgZ2VyYWRlIEJ1dGxlcnNhbSB1bWdlYnJhY2h0LgoKKndpZSBoYXR0ZXIgZGFzIG51ciB2b3JoZXJzZWhlbiBrb2VubmVuID8gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGxvdmUtcGFyYWRlIChOb3Zhc3Rvcm0sIDI1LiBKdW4gMTk5OSwgMTU6MTc6MzUpOgp+IyEgb249Tm92YXN0b3JtIG90PTkzMDMxNjYyOSBvZz10cmVmZmVuCn4jISBybj1BbHBoYSBydD05MzAzMTY1MzMgcmc9dHJlZmZlbgp+IyEgdGlkPTkzMDI0MDQzOQpBdWphLi4uIHdlciBicmluZ3QgZGFzIFNjaGlsZCAnTW9yZ2VuZ3JhdWVuJyBtaXQ/CiAgICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBsb3ZlLXBhcmFkZSAoQWxwaGEsIDI1LiBKdW4gMTk5OSwgMTU6MTk6MzEpOgp+IyEgcm49Tm92YXN0b3JtIHJ0PTkzMDMxNjY1NSByZz1zY2htYXJybgp+IyEgdGlkPTkzMDI0MDQzOQpMYWVzc3QgZGFzIFJlc3RnZWxkIGluIGRlciBQYXJ0eWthc3NlIG5pY2h0IGVpbmVuIGVpZ2VuZW4gTW9yZ2VuR3JhdWVuV2FnZW4genUKbWl0IGVjaHRlbiBEcmFjaGVuIGRyYXVmIHVuZCBaYXViZXJ0cmFlbmtlbiwgZGllIHdpciBydW50ZXJ3ZXJmZW4ga29lbm5lbj8KQWxwaGEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprYXJhd2FuZSAoR3VpbGRvLCAyNS4gSnVuIDE5OTksIDE2OjQ4OjEwKToKRWJlbiBiZWltIEJldHJldGVuIGRlciBLYXJhd2FuZToKRGVyIFdhZ2VubGVua2VyIHNjaG11bnplbHQgdW5kIHNhZ3Q6ICdPaCwgamVtYW5kIGRlciBzaWNoIGRlbiBXdWNoZXJwcmVpcyBkZXMKTWVpc3RlcnMgbGVpc3RlbiBrb25udGUuCgoKRGVzIE1laXN0ZXJzPyBEYXMgYmluIGRvY2ggaWNoIT8hCgpWZXJ3aXJydGUgR3J1ZXNzZSwKR3VpbGRvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZToga2FyYXdhbmUgKEd1aWxkbywgMjUuIEp1biAxOTk5LCAxNzowMDoxMik6Cn4jISBybj1HdWlsZG8gcnQ9OTMwMzIyMDkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwMzIyMDkwCkFiZXIgZGVyIEdub20gd2Vpc3Mgd2VuaWdzdGVucyBCZXNjaGVpZDoKCkRlciBHbGFzZ25vbSBiZWdpbm50IG1pdCBrbGlycmVuZGVyIFN0aW1tZSB6dSBzcHJlY2hlbjoKJ01laXN0ZXIgR3VpbGRvLCBkaWUgS2FyYXdhbmUgbmFjaCBGZXJud2VzdCBoYXQgZ2VyYWRlIGltIE1vbWVudAogZWluZW4gUmFzdHBsYXR6IGFtIFJhbmRlIGVpbmVyIFN0ZWlud3Vlc3RlIGVycmVpY2h0LicKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUb2xsLCBuZXVlcyBGZWF0dXJlIDotKSAoTWlyYWthLCAyNS4gSnVuIDE5OTksIDIzOjAwOjIzKToKVW5nZXNjaG5pdHRlbjoKCkR1IGtvdHp0IHVlYmVyIERlaW5lIFNjaHVoZS4KRGVpbmUgU2NodWhlIGdsdWVoZW4ga3VyeiBhdWYgdW5kIGhlaWxlbiBEaWNoIGVpbiB3ZW5pZy4KCkRhbmtlIE1vcmdvdGggOi0pCgpNaXJha2EgTWFuZHJvcywgVGlnZXJpbiB2b24gWGlhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRhdHRlcmdyZWlzZSAoUHVrLCAyNi4gSnVuIDE5OTksIDAxOjI5OjI1KToKQ2hhb3M6VGF0amFuYSAgRGllZGVyIHdhciBuaWNodCBncm9zcywgd2FyIGVoZXIga2xlaW4sIHRyb3R6ZGVtIGdsYXVidGUgZXIKQ2hhb3M6VGF0amFuYSB2b24gZGVuIGtsZWluc3RlbiBlaW5lciBkZXIgZ3JvZXNzdGVuIHp1IHNlaW4uIFNlaW5lIEZyYXUgZGllCkNoYW9zOlRhdGphbmEgRGFya25lc3NpZSBzYWcgZ2FueiBndXQgYXVzIGhpbiB1bmQgd2llZGVyLCB1bmQgd2VubiBzaWUgd2FzCkNoYW9zOlRhdGphbmEgc2FndCBkYW5uIG1laXN0OiBNZWluIEdvdHQgRGllZGVyCkNoYW9zOkRpZWRlciAqd2FlbHoqCkNoYW9zOkFyYW5jaWEgZ3JpbnN0IFRhdGphbmEgYW4KQ2hhb3M6UHVrIGxhY2h0Cj4gCkNoYW9zOlB1ayBwb3N0ZW4gOikgZGFzIG11c3MgZXJoYWx0ZW4gYmxlaWJlbgo+IENoYW9zOlRhdGphbmEgZ3JpbnN0CkNoYW9zOkRpZWRlciBpY2ggYWJlciBuaWNoIDopCgoxMCBtaW4gc3BhZXRlciA6IApEaWVkZXIgdGVpbHQgRGlyIG1pdDogd2lsbHN0ZSBuaWNoIHBvc3Rlbj8gOikKTWZHClB1ayAoc2FndCBkYSBqZXR6dCBuaWNodHMgbWVociB6dSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRhdHRlcmdyZWlzZSAoRGllZGVyLCAyNi4gSnVuIDE5OTksIDAxOjMwOjU0KToKfiMhIHJuPVB1ayBydD05MzAzNTMzNjUgcmc9c2NobWFycm4KfiMhIHRpZD05MzAzNTMzNjUKd2lsbHN0ZSBqZXR6dCBtaXQgZGVuIDEwIE1pbi4gYXVmIG1laW5lIHRhdHRyaWdlIFJlYWt0aW9uc3plaXQgb2RlciBtZWluZW4KQWx6aGVpbWVyIGFuc3BpZWxlbj8KCk9wYSBEaWVkZXIsIGFlY2h6ZW5kLiA6KQoKUFM6IERlciBWZXJzIHdhciBlY2h0IGtsYXNzZSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUYXR0ZXJncmVpc2UgKFB1aywgMjYuIEp1biAxOTk5LCAwMTozMzowMSk6Cn4jISBybj1EaWVkZXIgcnQ9OTMwMzUzNDU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwMzUzMzY1Ck5hamEsIGFsdGUgTGV1dGUgd2llIGR1IGJyYXVjaGVuIHdvaGwgaW1tZXIgZXR3YXMgbGFlbmdlciA6KQpBYmVyIGdsZWljaCBzb2xhbmdlID8/Pz8/PwoKUHVrIChoYXQgc2Nob24gc2NobmVsbGVyZSwgYWJlciBhdWNoIHp1Z2VnZWJlbmVyd2Vpc2UgbGFuZ3NhbWVyZSBPcGlzCmdldHJvZmZlbjspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUYXR0ZXJncmVpc2UgKERpZWRlciwgMjYuIEp1biAxOTk5LCAwMTozNTowNyk6Cn4jISBybj1QdWsgcnQ9OTMwMzUzNTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwMzUzMzY1CmhlZWVlLi4uIDEwIG1pbiBpc3Qgc3VwZXIhCmJpcyBpY2ggbWVpbmVuIEJsYXNlbnRlZSBhYmdlc2V0enQgdW5kIGRhYmVpIHZlcmtsZWNrZXJ0IGhhYiwgbWljaCBkZXIKVGFzdGF0dXIgYW5nZW5hZWhlcnQgdW5kIHppdHRyaWcgZGllIEJ1Y2hzdGFiZW4gZWluZ2VoYWNrdCBoYWIgZXRjLi4uCgpkYXMgYnJhdWNodCBzZWluZSBaZWl0ISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3dhcy4uLiAoWmFwaG9iLCAyNi4gSnVuIDE5OTksIDE3OjUwOjE3KToKRHUgc3RlaHN0IGltIEdhcnRlbiBkZXMgR28tQ2x1YnMuIEFuc3RlbGxlIGVpbmVyIFdpZXNlLCBvZGVyIHp1bWluZGVzdGVucwpQZmxhbnplbiwgZmluZGVzdCBEdSBudXIgZWluZSByZWNodGVja2lnZSBGbGFlY2hlLCBhdWYgZGVyIHNpY2ggZWluZSBNZW5nZQpLaWVzZWxzdGVpbmUgdW5kIGVpbnplbG5lIGdyb3NzZSBTdGVpbmUgenUgTXVzdGVybiBncnVwcGllcmVuLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogb2Jlbi4KPiB1bnQgbXVzdGVyCkRpZSBNdXN0ZXIgd2lya2VuIHNlaHIgYmVydWhpZ2VuZCBhdWYgRGljaC4gVmllbGxlaWNodCBrYW5uc3QgRHUgaGllcgpldHdhcyBtZWRpdGllcmVuLi4uCj4gbWVkaXRpZXJlCkR1IG1lZGl0aWVyc3QuLi4KLi4udW5kIG1lZGl0aWVyc3QuCi4uLnVuZCBtZWRpdGllcnN0LgouLi51bmQgbWVkaXRpZXJzdC4KRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuCi4uLnVuZCBtZWRpdGllcnN0LgouLi51bmQgbWVkaXRpZXJzdC4KbWcubXVkLmRlOiBOZXR3b3JrIGlzIHVucmVhY2hhYmxlCkNvbm5lY3Rpb24gY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KCmZpbmRlIGljaCBlY2h0IGNvb2wsIGRhcyBtdXNzIGljaCBvZWZ0ZXIgbWFjaGVuIDopClphcGhvYgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdmVyZmxpeHRlcyBUaW1pbmcgKE5ldm9rLCAyNy4gSnVuIDE5OTksIDAwOjI0OjUxKToKVHJ1ZyBzYWd0OiBtb20gaWNoIG11c3Mga3VyeiB6dSBtdHYKVHJ1ZyB2ZXJzY2h3aW5kZXQgbWl0IGVpbmVtIGdyZWxsZW4gQmxpdHouCk1UViB0cml0dCBhdXMgZWluZXIgU2Nod2VmZWx3b2xrZS4KRHUgd2FlbHp0IERpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBcmF0aCwgMjcuIEp1biAxOTk5LCAxMTo1NTo0Myk6CltLYXJhdGU6SWZpcm5dIGJlbnV0enQgZWluZXIgdm9uIEV1Y2ggem11ZCB1bmQgaGF0IGVpbiBicmF1Y2hiYXJlcyBUb29sIGZ1ZXJzCltLYXJhdGU6SWZpcm5dIE9yZG5lbiB2b24gZGVuIFN0YXR1c3dlcnRlbj8KW1RvZDpMYXJzXSBHcm9zc2UgSGl0emUgaGF0IGdlcmFkZSBJZmlybiB1bWdlYnJhY2h0LgoKSG0sIFN0YXR1c3dlcnRlIHp1IHNwYWV0IGdlb3JkbmV0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIChBc2hpeWEsIDI3LiBKdW4gMTk5OSwgMTU6MTI6MzMpOgpKb2hhbm5hIGxlZ3QgRGFya3dpbmcgZGllIEhhZW5kZSBhdWYgdW5kIHNlZ25ldCBpaG4uCkRhcmt3aW5nIHNhZ3Q6IGZvcmUKRGFya3dpbmcgYnJpY2h0IHZvbiBlaW5lbSBCbGl0eiBnZXRyb2ZmZW4genVzYW1tZW4uCkRhcmt3aW5nIGdyaW5zdC4KClsxMCBTZWt1bmRlbiBzcGFldGVyLi4uXQoKRGFya3dpbmcgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpMYXJzXSBFaW4gYWJrbGluZ2VuZGVyIFNlZ2VuIGhhdCBnZXJhZGUgRGFya3dpbmcgdW1nZWJyYWNodC4KCltFaW5lIFRvZGVzc2VxdWVueiBzcGFldGVyLi4uXQoKRGFya3dpbmcgc2FndDogbWFuIGthbm4gZWNodCBub2NoIGRhZW1saWNoZXIgc3RlcmJlbiBhbHMgaW0gU2tyaXB0IDUweCB2b3IgbmUKRGFya3dpbmcgc2FndDogV2FuZCByZW5uZW4gOi0pCgpEZW0gaXN0IG5pY2h0cyBtZWhyIGhpbnp1enVmdWVnZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZ2VrdWVyenQ6IChLYXJhbSwgMjcuIEp1biAxOTk5LCAxNjo0NDoxNik6CkRlciBPcmsgYnJ1ZWxsdDogVmVyc2Nod2luZGUsIER1IGhhc3QgaGllciBuaWNodHMgenUgc3VjaGVuICEhCkJvaW5nIGh1ZXBmdCBuYWNoIE5vcmRlbi4KCi0tCkthcmFtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdWVyIFB1ayAoRm9vYmFyLCAyOC4gSnVuIDE5OTksIDAzOjE5OjAxKToKTWFsIHdpZWRlciB3YXMuCgogICBGb29iYXIgLSBleHRyYSBmdWVyIFB1ayBoZXV0ZSBhdWNoIGF1Y2ggbWFsIGVpbnplaWxlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdWVwcGEgKERpZWRlciwgMjguIEp1biAxOTk5LCAxMTozNDo1MSk6CkJhQk9PbiB2ZXJzY2h3aW5kZXQgbWl0IGVpbmVtIEh1ZXBmZXIgaW4gZGVuIEJhdW1rcm9uZW4uCgpIZWVlLCBIdWVwZmVyLCB3YXMgdHJlaWJ0IGlociBkYT8KRGllZGVyLCB2ZXJ3dW5kZXJ0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW5nZWt1ZXJ6dDogKFNvbmdva3UsIDI4LiBKdW4gMTk5OSwgMTQ6Mzk6MjEpOgp+IyEgcm49S2FyYW0gcnQ9OTMwNDk0NjU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwNDk0NjU2CkRhIHNpZWh0IG1hbiwgd2VyIGhpZXIgZGFzIHNhZ2VuIGhhdCA6KQoKU2F5b3VuYXJhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKndhZWx6KiAoQW5hY3Jpb24sIDI4LiBKdW4gMTk5OSwgMTY6MTM6NTgpOgpUaHVmaGlyIHNhZ3Q6IDxIaWNrPiEKVGh1ZmhpciBzdGFycnQgZGFzIFBhYXIgQWRhbWFudHNjaHVoZSBhbiB1bmQgbXVybWVsdCBldHdhcy4KRGFzIFBhYXIgQWRhbWFudHNjaHVoZSB3ZWhydCBkZW4gWmF1YmVyIGFiLgpUaHVmaGlyIHN0YXJydCBkYXMgUGFhciBBZGFtYW50c2NodWhlIGFuIHVuZCBtdXJtZWx0IGV0d2FzLgpEYXMgUGFhciBBZGFtYW50c2NodWhlIHdlaHJ0IGRlbiBaYXViZXIgYWIuCltDaGFvczpUdU5peEd1dCBsYWNodC4uLl0KVGh1ZmhpciBzdGFycnQgZGFzIFBhYXIgQWRhbWFudHNjaHVoZSBhbiB1bmQgbXVybWVsdCBldHdhcy4KRGFzIFBhYXIgQWRhbWFudHNjaHVoZSB3ZWhydCBkZW4gWmF1YmVyIGFiLgpUaHVmaGlyIGFyZ2x0IGVpbiB3ZW5pZyB2b3Igc2ljaCBoaW4uClRodWZoaXIgc2FndDogPEhpY2s+ISAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKCk1pc3QgU3BlbGxkZWZlbmQgaW4gZGVyIGF1c3J1ZXN0dW5nIDopCgpBbmFjKiAtIHZvciBzaWNoIGhpbmdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoga2FlbXBmZXIgdW5kIHNpbmdlbiA6KSAoUHVrLCAyOC4gSnVuIDE5OTksIDIzOjQ5OjQwKToKRGlyaW9uIGRlbmt0OiBhYmVyIG5pY2ggc2luZ2VuLCBqYT8gOykKRHUgaG9lcnN0IGRhcyBHZWphdWxlIGVpbmVzIFdvbGZlcy4KClB1ayAobXVzcyBkYXMgbmljaHQga29tZW50aWVyZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWYgZGVyIEZsdWNodCBlcnNjaGxhZ2VuLi4uIChHYXN0MSwgMjkuIEp1biAxOTk5LCAwMTo0MDowMyk6CkRyb2xsaSBmbGllZ3QgaGVyZWluLgpLYXJpY3MgS2F1dHNjaHVraGFtbWVyIGZsaWVndCBoZXJlaW4sIHRyaWZmdCBEcm9sbGkgYW0gS29wZiwgdGFuenQgZG9ydAplaW5lIGtsZWluZSBSdW1iYSB1bmQgc3ByaW5ndCB3aWVkZXIgZGF2b24uIEVpZ2VuYXJ0aWcuCkRyb2xsaSBmbGllZ3QgbmFjaCBOb3JkZW4uCgpHdXRlciBXdXJmLCBnZWh0IGRhcyBhdWNoIG1pdCBLYW1wZmJyb3Q/IDspCkdhc3QxCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICp3YWVseiogKE1vcmdvdGgsIDI5LiBKdW4gMTk5OSwgMDc6NTQ6MTMpOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTMwNTc5MjM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwNTc5MjM4ClNvcnJ5LCBhYmVyIHdhciBCZWRpbmd1bmcgdm9uIFNpbHZhbmEgZGFtYWxzLiBJY2ggd3VlcmRlIGphIG5pZWVlZWVlIHNvZXR3YXMKbWFjaGVuIDstKSkKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGYW1pbGllbnZlcmhhZWx0bmlzc2UgKFJpbmdvciwgMjkuIEp1biAxOTk5LCAwOTozODo1Nyk6CltBYmVudGV1ZXI6QXN0ZXJvdGhdIHdhbm4gaXMgZGVyIFJlYm9vdD8KClt0ZWlsZSBhcm1hZ2VkZG9uIG1pdCBodWh1XQpBcm1hZ2VkZG9uIHRlaWx0IERpciBtaXQ6IEVzIGlzdCBub2NoIHp1IGZydWVoISBQcm9iaWVycyAxMCBNaW51dGVuIHZvciBkZW0KRW5kZQpBcm1hZ2VkZG9uIHRlaWx0IERpciBtaXQ6IG5vY2htYWwhCkFybWFnZWRkb24gdGVpbHQgRGlyIG1pdDogSW4gNiBTdHVuZGVuLCAyMiBNaW51dGVuIHVuZCAzNCBTZWt1bmRlbiBpc3QgZXMgc28KQXJtYWdlZGRvbiB0ZWlsdCBEaXIgbWl0OiB3ZWl0IQpEdSB0ZWlsc3QgQXJtYWdlZGRvbiwgZGVyIHNjaHdhZ2VyIHZvbiBwKiBtaXQ6IGh1aHUKClJpbmdvci4gRnJhZ3QgbGllYmVyIGdhciBuaWNodCBlcnN0IHdlaXRlciBuYWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNvIHNvIC4uLiAoR3JpbW1ib3JuLCAyOS4gSnVuIDE5OTksIDEyOjQxOjA3KToKfiMhIG9uPVNjaG9rbyBvdD05MzA2NTE0MDkgb2c9d2l0emUKfiMhIHJuPUJ1enpjdXQgcnQ9OTMwNjQ2MTk2IHJnPXdpdHplCn4jISB0aWQ9OTMwNjQ2MTk2CgoqZ3JpbnMqIGljaCB3dXNzdGUgZGFzIHNjaG9uIGltbWVyIDspCgoKU2Nob2tvIChhbGxlcmRpbmdzIG1pdCBlaW5pZ2VuIFB1bmt0ZW4gbmljaHQgZ2FueiBlaW52ZXJzdGFuZGVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0ZWlsZSBub3ZhG1tEG1tEG1tEG1tEG1tEG1tEG1tEG1tERnJhdWVuPz8/IChHcmltbWJvcm4sIDI5LiBKdW4gMTk5OSwgMTQ6MTY6MjUpOgp+IyEgb249QXBvbGxvbmlhIG90PTkzMDY1NTA4OSBvZz13aXR6ZQpBbHNvIG5lLCBpY2ggd2lsbCBoaWVyIGJsb3NzIG1hbCBhbm1lcmtlbiwgZGFzcyBlcyBkdXJjaGF1cyBGcmF1ZW4gZ2lidCwgbWl0CmRlbmVuIGRhcyBTTyBuaWNodCBsYXVbRGV1ZnQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB0ZWlsZSBub3ZhG1tEG1tEG1tEG1tEG1tEG1tEG1tEG1tERnJhdWVuPz8/IChHcmltbWJvcm4sIDI5LiBKdW4gMTk5OSwgMTQ6MTY6MzkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTkzMDY1ODU4NSByZz1zY2htYXJybgp+IyEgdGlkPTkzMDY1ODU4NQpLYW5uc3QgRHUgZ2VybmUgbWFjaGVuLCBhYmVyIG5pY2h0IGluIHdpdHplLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIQSwgaWNoIFdVU1NURSwuLi4gKE5ldm9rLCAyOS4gSnVuIDE5OTksIDE4OjMyOjM0KToKZGFzcyBpY2ggZWluIGhvZWhlcmVzIFdlc2VuIGJpbi4uLgpkZXIgQmV3ZWlzOgoKc2NoYWV0eiBHcmltbWFuCkdyaW1tYW4gd2Fua3QgYmVyZWl0cyBiZWRlbmtsaWNoIHVuZCBpc3QgZGFtaXQgdW5nbGF1YmxpY2ggc2Nod2FlY2hlciBhbHMgRHUuCkVyIGhhdCBlaW4gS25vY2hlbmJlaWwgZ2V6dWVja3QuIERhbWl0IGthZW1wZnQgZXIgZXR3YXMgc2NobGVjaHRlciBhbHMgRHUuCgpHcmltbWFuIHRyYWVndCBlaW4gIldhaG5zaW5ucy1NYWdpZXItTW9uc3Rlci1aYXB0b29sIChmdWVyIFNwaWVsZXIgbGVpZGVyCgp1bnNpY2h0YmFyKSIsIGVpbmVuIEtyYWdlbiBtaXQgZWluZW0gS25vY2hlbmtyZXV6LCBlaW5lbiBFY2hzZW5oZWxtLCBlaW5lbgpFY2hzZW5wYW56ZXIsIGVpbiBQYWFyIFN0aWVmZWwsIGVpbmVuIFNjaGlsZCwgZWluZW4gVW1oYW5nLiBEYW1pdCBpc3QgZXIgZXR3YXMKc2NobGVjaHRlciBhbHMgRHUgZ2VzY2h1ZXR6dC4KR3JpbW1hbiBpc3QgZXR3YSAxNjdjbSBncm9zcy4KRXIgaGF0IGRhcyBLYWVtcGZlbiBpbiBlaW5lbSBTdHJ1diBlcmxlcm50IHVuZCBpc3QgaW0gUmFuZ2UgZWluZXMgR3JhJ1Rha2FsCgoKc29zbyBmdWVyIHNwaWVsZXIgdW5zaWNodGJhcgp3YXMgYmluIGljaCBkZW5uIGRhbm4/Cm11c3MgaWNoIG1pY2ggbnVuIHdpZSBnb3R0IG5hY2ggZGVyIHNhY2hlIG1pdCBkZW0gYmFiZWxmaXNjaCBpbiBlaW4KbG9naWt3b2Vsa2NoZW4gYXVmbG9lc2VuPwp3ZXIgYmV3ZWlzdCBkYXMgc2Nod2Fyej13ZWlzcyBpcyB1bmQgd2lyZCBhdWYgbmVtIHplYnJhc3RyZWlmZW4gdWViZXJmYWhyZW4/Pz8KCk5ldm9rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSEEsIGljaCBXVVNTVEUsLi4uIChCaWVsZWZlbGQsIDI5LiBKdW4gMTk5OSwgMjA6Mjc6MjApOgp+IyEgcm49TmV2b2sgcnQ9OTMwNjczOTU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwNjczOTU0Cldlbm4gRHUgYXVmIGVpbmVtIFplYnJhc3RyZWlmZW4gdWViZXJmYWhyZW4gd2VyZGVuIHdpbGxzdCwKZnJhZ2UgZWluZmFjaCBlaW5lbiBNYWdpZXIgRGVpbmVzIFZlcnRyYXVlbnMuLi4KLi4uZGllIG1hY2hlbiBkYXMgOi0pCgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkZXIgSGFtbWVyIChNYWdlbmJyb3QsIDI5LiBKdW4gMTk5OSwgMjE6MjY6MjcpOgoKCkRlaW4gRnJldW5kIFB1ayB0ZWlsdCBEaXIgbWl0OiBtYW4gd2FzIGlzdCBkZW4gbWl0IGRlbSBoYW1tZXIgbG9zID8KUmVpc3N3b2xmIGdhZWhudCBoZXJ6emVycmVpc3NlbmQuCkRlaW4gRnJldW5kIFB1ayB0ZWlsdCBEaXIgbWl0OiBpY2ggaGFlbW1lciBldWNoIGFsbGUgdW5kIGVyIHNhZ3QgbWlyIHZpZWxlCkRlaW4gRnJldW5kIFB1ayB0ZWlsdCBEaXIgbWl0OiBmcmV1bmRlIGhhc3QgZHUgamEgbmljaHQgZ2VyYWRlICpncm1wZioKUmVpc3N3b2xmIGdhZWhudCBoZXJ6emVycmVpc3NlbmQuCgoKIE1hZ2VuYnJvdCAoYnJlaXQgZ3JpbnNlbmQpCiBQUzogUmVpc3N3b2xmIGhlaXNzdCBtZWluIEh1bmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBFbGZlbiBzaW5kIGRvY2ggaXJyZSAoS2FyYW0sIDI5LiBKdW4gMTk5OSwgMjI6MDM6NTkpOgogIER1IHplcnNjaG1ldHRlcnN0IE11bGFpIE9sb3JuIHRpciBUYWlybmdpcmUgaW4ga2xlaW5lIFN0dWVja2NoZW4uCk11bGFpIE9sb3JuIHRpciBUYWlybmdpcmUgc3RlY2t0IGVpbmVuIEhlaWxpZ2VuIFN0YWIgZGVyIEVsZmVuIHp1cnVlY2suCk11bGFpIE9sb3JuIHRpciBUYWlybmdpcmUgbGFlc3N0IGRlbiBIZWlsaWdlbiBTdGFiIGRlciBFbGZlbiBmYWxsZW4uCk11bGFpIE9sb3JuIHRpciBUYWlybmdpcmUgemllaHQgZWluZW4gV2lycndhcnJtb29yc3VtcGZncmFzc2VpZGVudW1oYW5nIGF1cy4KTXVsYWkgT2xvcm4gdGlyIFRhaXJuZ2lyZSBsYWVzc3QgZGVuIFdpcnJ3YXJybW9vcnN1bXBmZ3Jhc3NlaWRlbnVtaGFuZyBmYWxsZW4uCk11bGFpIE9sb3JuIHRpciBUYWlybmdpcmUgYmxpY2t0IERpY2ggdHJhdXJpZyBhbiB1bmQgZmFlbGx0IGluIHNpY2ggenVzYW1tZW4uCkRlciBXYWVjaHRlciBkZXIgR2FyZGUgc2FndDogTGFuZyBsZWJlIGRlciBNdWxhaSAhCgotLQpLYXJhbSAoaGF0IG5peCBnZWt1ZXJ6dCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1Zm0gU3BpZWxwbGF0eiAoS2FydG9mZmVsLCAyOS4gSnVuIDE5OTksIDIzOjA3OjQ2KToKSGV1dGUgYXVmbSBTcGllbHBsYXR6OiAKRWluZSBHcnVwcGUgS2luZGVyIChzbyB6d2lzY2hlbiA3IHVuZCAxMikgc2l0enQgYXVmIGVpbmVtIEthcnVzc2VsbCBuZCBzaW5ndDoKCkF1ZiBkZXIgZ3J1ZW5lbiBXaWVzZQpBdWYgZGVyIGdydWVuZW4gV2llc2UuLgoKRGllIEJldHJldWVyIHNjaHJlY2tlbiBhdWYgdW5kIHJ1ZmVuIGhla3Rpc2NoOiAiTmVpbiwgbmljaHQgZGFzIExpZWQuLi4iCgpEaWUgS2luZGVyIHdlaXRlcjoKLi4uIGxpZWd0IGRlciBUaGVvZG9yLApsaWVndCBkZXIgVGhlb2Rvci4uLgoKREllIEJldHJldWVyOiAiIE5laW4sIGF1ZmhvZXJlbiwgU2NobHVzcyBtaXQgZGVtIExpZWQiCgpESWUgS2luZGVyOgoKLi4udW50ZXIgaWhtIGRpZSBMaWVzZQp1bnRlciBpaG0gZGllIExpZXNlLi4uCgpCZXRyZXVlcjogIk9rYXksIHJ1bnRlciBkYSwgd2lyIGdlaGVuIiwgc2NobmFwcHRlbiBkaWUgVGFzY2hlbiwgZGllIEtpbmRlciB1bmQKdmVyc2Nod2FuZGVuLi4uCgpEYSB3YXIgd29obCBuZSBTY2hhbWdyZW56ZSB1ZWJlcnNjaHJpdHRlbiA7KSkKCidUb2ZmZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFuZ2VoZW5kZSBLYWVtcGZlci4uLi4gKFNveW8sIDMwLiBKdW4gMTk5OSwgMDA6MDk6NTUpOgpNaXJhZG9yIHNhZ3Q6IEljaCBoYWJlIEFuZ3N0LiBJY2ggZmx1ZWNodGUuCk1pcmFkb3IgZ2VodCBuYWNoIE9zdGVuLgoKbmFqYSAtIGRhcyB3aXJkIG5vY2ggOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbmdlaGVuZGUgS2FlbXBmZXIuLi4uIChEaWVkZXIsIDMwLiBKdW4gMTk5OSwgMDA6MTA6MzkpOgp+IyEgcm49U295byBydD05MzA2OTQxOTUgcmc9c2NobWFycm4KfiMhIHRpZD05MzA2OTQxOTUKaXN0IGRhcyBiZWkga2FlbXBmZXJuIG5pY2h0IGRlZmF1bHQ/PwoKRGllZGVyLCBnZWh0IHRhdHRlcm5kIGluIERlY2t1bmcgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBtZWluIGFydGlrZWwgdm9uIGdlc3Rlcm4gKEJlbmRlaWdpZCwgMzAuIEp1biAxOTk5LCAwOToxNDozMCk6Cn4jISBvbj1Hd2VuZG9saW4gb3Q9OTMwNjg2Nzc1IG9nPWFsbGdlbWVpbmVzCn4jISBybj1Ja2VhIHJ0PTkyOTQ0MDExNyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTkyOTQ0MDExNwpzYWcgd2FydW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdWZtIFNwaWVscGxhdHogKEd1aWxkbywgMzAuIEp1biAxOTk5LCAxMDo1NTo1Myk6Cn4jISBybj1LYXJ0b2ZmZWwgcnQ9OTMwNjkwNDY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwNjkwNDY2CkludGVyZXNzYW50ZXMgTGllZC4uLgoKR3VpbGRvICh1ZWJlcmxlZ3QgamV0enQgbnVyLCB3YXMgc2ljaCBhbGxlcyBhdWYgIlRoZW9kb3IiIHJlaW10KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBdWZtIFNwaWVscGxhdHogKE1vcmdvbmF0ZSwgMzAuIEp1biAxOTk5LCAxMzoyNjoxNCk6Cn4jISBybj1HdWlsZG8gcnQ9OTMwNzMyOTUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwNjkwNDY2Clp1ciBOb3QgaW1tZXIgbm9jaCBkYXMgImZ1c3NiYWxsdG9yIi4KCk1vcmdvbmF0ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCByYWV1YmVyIHZvbiBoZXV0ZSAuLi4gKEphc29ucmlnaWQsIDMwLiBKdW4gMTk5OSwgMTU6MzM6NTApOgpEdSB0cml0dHN0IGR1cmNoIGRlbiBWb3JoYW5nIGF1cyBTY2hsaW5ncGZsYW56ZW4sIGRlciBEaXIgYmVyZWl0d2lsbGlnIFBsYXR6Cm1hY2h0LCBpbiBkYXMgUmVmdWdpdW0gdm9uIFN1Z2FhbiB1bmQgSmFzb25SaWdpZC4gRXMgc2llaHQgYXVzLCBhbHMgaGFldHRlCm1hbiBudXIgZGFzIEFldXNzZXJlIGRlcyBIYXVzZXMgbmFjaCBpbm5lbiBnZWtyZW1wZWx0LCBkZW5uIGF1Y2ggaGllciBiZWRlY2tlbgpTY2hsaW5ncGZsYW56ZW4gZmFzdCBhbGxlcywgd2FzIGRhcyBBdWdlIHNpZWh0LiBOdXIgZWluaWdlIEJpbGRlciBoYWVuZ2VuIGFuCmRlbiBXYWVuZGVuLiBJbiBlaW5lciBFY2tlIGhhZW5ndCBlaW5lIGdlbXVldGxpY2hlIEhhZW5nZW1hdHRlLCBlaW4ga2xlaW5lcwpTY2hyZWlicHVsdCBzdGVodCBpbiBlaW5lciBhbmRlcmVuLiBBbiBkZXIgZGVuIEJpbGRlcm4gZ2VnZW51ZWJlcmxpZWdlbmRlbgpXYW5kIGhhZW5ndCBlaW4ga2xlaW5lciwgYmVzY2hlaWRlbmVyIFRyb3BoYWVlbnNjaHJhbmsgdW5kIGRhbmViZW4gZWluZQpzZWx0c2FtZSBMaXN0ZS4gVWViZXIgZGVtIFNjaHJlaWJwdWx0IGthbm5zdCBEdSBlaW4gRmVuc3RlciBlcmtlbm5lbiwgZWJlbnNvCmVpbmVzIGtuYXBwIG5lYmVuIGRlbSBUcm9waGFlZW5zY2hyYW5rLiBJbSBCb2RlbiBzY2hsaWVzc2xpY2ggYmVmaW5kZXQgc2ljaAplaW5lIEdydWJlLCBkaWUgYWJlciB2b24gU2NobGluZ3BmbGFuemVuIHVlYmVyd3VjaGVydCBpc3QuCkVzIGdpYnQgZnVlbmYgc2ljaHRiYXJlIEF1c2dhZW5nZTogb2JlbiwgdW50ZW4sIHJhdXMsIHN1ZWR3ZXN0ZW4gdW5kCm5vcmR3ZXN0ZW4uIApFaW5lIHZvbiBSYW5rZW4gdWViZXJ3dWNoZXJ0ZSBHcnViZSAoZ2VzY2hsb3NzZW4pLgpEZWluIEdlbGRiZXV0ZWwgaXN0IGxlaWNodGVyIGdld29yZGVuLgpFaW4gSGludGVyaGFsdCAhISEgRWluZSBSZWloZSB2b24gUmFldWJlcm4gdWViZXJmYWxsZW4gRGljaCAhCkVpbiBSYWV1YmVyIHNwcmluZ3Qgdm9uIGVpbmVtIEJhdW0uCkVpbiBSYWV1YmVyIHNwcmluZ3Qgdm9uIGVpbmVtIEJhdW0uCkVpbiBSYWV1YmVyIHNwcmluZ3Qgdm9uIGVpbmVtIEJhdW0uCkVpbiBSYWV1YmVyIHNwcmluZ3Qgdm9uIGVpbmVtIEJhdW0uCkVpbiBSYWV1YmVyIHNwcmluZ3Qgdm9uIGVpbmVtIEJhdW0uCiAgRGVyIFJhZXViZXIgZ3JlaWZ0IERpY2ggbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4KICBEZXIgUmFldWJlciB2ZXJmZWhsdCBEaWNoLgogIERlciBSYWV1YmVyIGdyZWlmdCBEaWNoIG1pdCBibG9zc2VuIEhhZW5kZW4gYW4uCi4uLi4uCgpKZXR6dCBncmVpZmVuIGRpZSBtaWNoIHNjaG9uIGluIG1laW5lbSBlaWdlbmVuIEhhdXMgYW4gISEhIQoKSmFzb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9rLCB6d2VpdGVyIEFubGF1Zi4uLiAoTm92YXN0b3JtLCAzMC4gSnVuIDE5OTksIDE4OjIxOjI0KToKRGVpbiBGcmV1bmQgVHN1bmFtaSB0ZWlsdCBEaXIgbWl0OiBodXV1Y2ggOikKRGVpbiBGcmV1bmQgVHN1bmFtaSB0ZWlsdCBEaXIgbWl0OiBkYXMgRGluZyBpc3QgbmljaHQgdm9uIG1pciEgOikKWzxNYXN0ZVI+OkdhbmR1cl0gTApbPE1hc3RlUj46R2FuZHVyXSBMIDwxODoxNzowND4KWzxNYXN0ZVI+OjxNYXN0ZVI+XSAxNS40NSBjbWRzL3MsIDIxMS44MSBjb21wIGxpbmVzL3MKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDMuNSUvNjAsIDEyLjQlLzE1LCA3My4zJS8xCgogIE5vdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTmFpcm9sZiwgIDEuIEp1bCAxOTk5LCAxMDoxMTo1OCk6CltTZWhlcjpMZW5hXSBzZWggaWNoIGRhcyByaWNodGlnLCBkYXNzIGljaCBncmFkIGFsbGVpbmUgaW0gTHVwaW5lbnRhbCBiaW4/CltTZWhlcjpMZW5hXSA8MTA6MTA6MjA+CltUb2Q6TGFyc10gRWluIEh5ZHJha29wZiBoYXQgZ2VyYWRlIExlbmEgdW1nZWJyYWNodC4gPDEwOjEwOjU4PgpbVG9kOmVpbiBIeWRyYWtvcGZdIGhzc3Nzc3MgIDwxMDoxMDo1OD4KPgouLi4uIG5pY2h0IGdhbnogLS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmFqYSB3aWUgbWFucyBuaW1tdCwgYWJlciBzb3dhcyBpcyBpcmdlbmR3aWUgYmV6ZWljaG5lbmQuLi4uIChOZXZvaywgIDEuIEp1bCAxOTk5LCAxMjo1MToyOCk6CnVuZ2VrdWVyenQgaW4gZWluZW0gc2Nyb2xsLi4uLi4KCgpEZXNpZGVyaWEgYmV0cml0dCBkaWVzZSBXZWx0LgpEZXNpZGVyaWEgYmV0ZXQgYW5kYWVjaHRpZy4gUGxvZXR6bGljaCBiZWdpbm50IGRpZSBMdWZ0IHZvciBpaHIgZ3J1ZW5saWNoIHp1CnNjaGltbWVybiEgRG9ydCBlcnNjaGVpbnQgZWluZSBrbGVpbmUgRmxhc2NoZSwgZGllIERlc2lkZXJpYSBzb2ZvcnQgYW4gc2ljaApuaW1tdC4KRGVzaWRlcmlhIHBpbGdlcnQgbmFjaCBOb3JkZW4gYXVmIGRlciBTdWNoZSBuYWNoIGRlbSBuYWVjaHN0ZW4gRnJvc2NoLgoKCnRqYWphLi4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2Nod2ltbWJhZCAhIChHcmltbWJvcm4sICAxLiBKdWwgMTk5OSwgMTQ6MTE6NTIpOgp+IyEgb249SmFtZXNvbiBvdD05MzA2OTU5NjUgb2c9d2l0emUKfiMhIHJuPVNveW8gcnQ9OTMwNjk1ODY3IHJnPXdpdHplCn4jISB0aWQ9OTMwNjk1ODY3CmhpaGkgd2FyIGRhcyBlaW4gRnJldWRzY2h3ZXIgVmVydGlwcGVyPyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyA6KCAoTm92YXN0b3JtLCAgMS4gSnVsIDE5OTksIDE0OjE5OjE3KToKUmVhcGVyIHRlaWx0IERpciBtaXQ6IHdlaXNzdCBkdSB3byBtZWluZSBzYWNoZW4gc2luZCwgd2VubiBpY2ggYW4gZGVtIHNjaHd1bGVuClJlYXBlciB0ZWlsdCBEaXIgbWl0OiBjaGFvcy1nb2JsaW4gaW0gVkwgZ2VzdG9yYmVuIGJpbiA/CltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIFJlYXBlciB1bWdlYnJhY2h0LgoKICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFRpYW1haywgIDEuIEp1bCAxOTk5LCAyMzowMToxNyk6CltTZWhlcjpEaWVkZXJdIGhlaGUga29lcHBlIHp1ZWNodGVuIG1hY2h0IGxhdW5lIDwyMjo1NTozNT4KWy4uLl0KW1NlaGVyOkRpZWRlcl0gb2h3ZWlhIGRhcyBnaW5nIGdyYWQgZmFzdCBpbiBkaWUgaG9zZSA6KSA8MjI6NTg6MTU+CltUb2Q6TGFyc10gRWluIEh5ZHJha29wZiBoYXQgZ2VyYWRlIERpZWRlciB1bWdlYnJhY2h0LiA8MjI6NTk6MjM+CltUb2Q6ZWluIEh5ZHJha29wZl0gaHNzc3NzcyAgPDIyOjU5OjIzPgoKVGlhbWFrIGRlbmt0IC4gbyBPKHdlciBoYXQgRGllZGVyIGRpZSBGcm9zY2hwaWxsZW4gZ2VnZWJlbj8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChIb3VzZWhvbGRlciwgIDIuIEp1bCAxOTk5LCAwMTo0NDo0Nik6Cn4jISBybj1UaWFtYWsgcnQ9OTMwODYyODc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwODYyODc3Cnd1YWFhaGFyaGFyaGFocmFocmhhcmhhaHJoYXJoYXJoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkYXMgbmVubnQgbWFuIFBlY2ggOikgKFRzdW5hbWksICAyLiBKdWwgMTk5OSwgMTA6MjQ6NTIpOgpbVHJ2ZXM6QmVuZGVpZ2lkXSB0c2NodWVzcyB2b3JlcnN0ClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBCZW5kZWlnaWQuCkJlbmRlaWdpZCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCi4uLiBldHdhcyBzcGFldGVyLi4uIAoKW1RydmVzOlBlY2h2b2dlbF0gY2lhbyBCZW5kZWlnaWQuLi4KCk5vbWVuIGVzdCBPbWVuIDopKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFphaGxlbmZvbGdlIElJSSAoR3JpbW1ib3JuLCAgMi4gSnVsIDE5OTksIDE0OjM0OjAzKToKfiMhIHJuPUd1aWxkbyBydD05MzA5MTU1ODIgcmc9cHVpegp+IyEgdGlkPTkzMDgzMDQ3MwpNZWluZSBHdWV0ZSBiaXN0IER1IGluZGlza3JldC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdXNnZWxhY2h0ICEgKFNveW8sICAyLiBKdWwgMTk5OSwgMjM6MDc6MTYpOgpEdSB0cmlmZnN0IGRpZSBIeWFlbmUgc2VociBoYXJ0LgpEaWUgSHlhZW5lIGxhY2h0IHNpY2ggc2NoYWxsZW5kIHVlYmVyIGRpY2gga2FwdXR0LgpEdSBzY2hsYWVnc3QgZGllIEh5YWVuZSBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgpEaWUgSHlhZW5lIGZhZWxsdCB0b3QgenUgQm9kZW4uCgpTY2hsdXNzIG1pdCBsdXN0aWcgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBXYWhyaGVpdCB1ZWJlciBlbGJlbiAoR29yb2csICAyLiBKdWwgMTk5OSwgMjM6MjQ6NDYpOgpEaXJrZXQgYXVzIExvcmQgb2YgdGhlIFJpbmdzICAoRmVsbG93c2hpcCBvZiB0aGUgUmluZykKCkF1ZiBGcm9kb3MgRnJhZ2Ugd2FzIFNhbSBudW4gdm9uIGRlbiBFbGJlbiBoYWVsdCBhbnR3b3J0ZXQgZGllc2VyOgoKVGhleSBhcmUgcXVpdGUgZGlmZmVyZW50IGZyb20gd2hhdCBJIGV4cGVjdGV0ZCAtIHNvIG9sZCBhbmQgc28geW91bmcsIGFuZCBzbwpnYXkgYW5kIHNhZCwgYXMgaXQgd2VyZS4KCk5hamEgZ3V0IGRhcyBpY2ggbiBad2VyZyBiaW4sIGFscyBFbGIgd2FlciBpY2ggd29obCBhdWNoIGV0d2FzIGJldHJ1ZWJ0IHVlYmVycwpnYXkgc2VpbiAoOwoKR29yb2csIGRlciBkZW4gZmluYWxlbiBCZXdlaXNzIGF1ZiBTZWl0ZSAgMTI0IGZhbmQuIChIYXJwZXIsIFNvZnRjb3ZlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRFTiBSZWNobmVyIHdpbGwgaWNoIHNlaGVuICAoTmV2b2ssICAzLiBKdWwgMTk5OSwgMDQ6MzU6MTMpOgpEZXIgZGFzIG5pY2gga2FubiBhYmVyIHRyb3R6ZGVtIG5lbiBNdWQgc3BpZWxlbiB6dWxhZXNzdC4uLgpOZXZvayBoYXQgamV0enQgQmFyZCdzIHRhbGUgMS0zCkR1IGZyZXVzdCBEaWNoClNvcmNlcmVyIHNhZ3Q6IGRpZSAzIHNpbmQgZ2VuaWFsIDopCkR1IHNhZ3N0OiBkYW1pdCBoYWIgaWNoIGF1ZiBtIFNjaG5laWRlciBDUENQIG1pdCBkYXRhc2V0dGUgdW5kIGdydWVubW9uaXRvcgpEdSBzYWdzdDogYW5nZWZhbmdlbgpEdSBzZXVmenN0Ckt1cm95aSBicmFldWNodGUgZnVlciBzb3dhcyBlcnN0bWFsIG5lbiBuZXVlbiBSZWNobmVyLgpEdSB3YWVsenQgRGljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllIFdhaHJoZWl0IHVlYmVyIGVsYmVuIChTcGVsbGZpcmUsICAzLiBKdWwgMTk5OSwgMTA6NDY6NTApOgp+IyEgcm49R29yb2cgcnQ9OTMwOTUwNjg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwOTUwNjg2ClRqYSBsZWlkZXIgaXN0IHNjaHd1bCBuaWNodCBkaWUgZWluemlnZSB1ZWJlcnNldHp1bmcgZnVlciBnYXkgOz4KCmN5YSBTcGVsbGZpcmUsIGRlciB1ZWJlcnpldWd0ZSBoZXRlcm9zZXh1ZWxsZSBFbGYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERpZSBXYWhyaGVpdCB1ZWJlciBlbGJlbiAoU3RyZWF3a2NldXIsICAzLiBKdWwgMTk5OSwgMTE6MzA6MDEpOgp+IyEgcm49U3BlbGxmaXJlIHJ0PTkzMDk5MTYxMCByZz1zY2htYXJybgp+IyEgdGlkPTkzMDk1MDY4NgpXaWVzbyAibGVpZGVyIiA/IDotKQoKcnIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERpZSBXYWhyaGVpdCB1ZWJlciBlbGJlbiAoSG91c2Vob2xkZXIsICAzLiBKdWwgMTk5OSwgMTI6MTA6MDEpOgp+IyEgcm49U3RyZWF3a2NldXIgcnQ9OTMwOTk0MjAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwOTUwNjg2CmhtIGluIGRpZXNlbSB6dXNhbW1lbmhhbmcgaXN0IGFiZXIgdm9lbGxpZyBrbGFyLCBkYXNzIGdvcm9nIGRpZSByaWNodGlnZQppbnRlcnByZXRhdGlvbiBnZXdhZWhsdCBoYXQKOi0pCkhIICpzY2hhZGVuZnJvaCBncnVuemVuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWUgV2FocmhlaXQgdWViZXIgZWxiZW4gKEthZGFicmEsICA0LiBKdWwgMTk5OSwgMDQ6MDA6MjkpOgp+IyEgcm49R29yb2cgcnQ9OTMwOTUwNjg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwOTUwNjg2ClZvbiBCZWRldXR1bmdlbiBkaWUgc2ljaCB3YW5kZWxuLi4uCkxpZWJlciBHb3JvZywgRHUgd2VpdCBuYXRybGljaCBkYSBnYXkgdXJzcHJ1ZW5nbGljaCBmcm9laGxpY2ggb2RlciBndXRnZXN0aW1tdApiZWRldXRldCA7KSBHcnVzcywga2FkYWJyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSW50ZXJuZXRzdWNodCEhIChBbmF0b2wsICA0LiBKdWwgMTk5OSwgMDg6NDM6MzIpOgp+IyEgcm49QWNyaW1vbiBydD05MzEwNTU4MDcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MzA4NDkzMTEKRHUgYmlzdCBlaW5mYWNoIG51ciBncmVuemVubG9zIG9wdGltaXN0aXNjaCwgQWNyaW1vbiA6bykKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGllIFdhaHJoZWl0IHVlYmVyIGVsYmVuIChUYXJhZ29uLCAgNC4gSnVsIDE5OTksIDExOjUyOjM5KToKfiMhIHJuPUthZGFicmEgcnQ9OTMxMDUzNjI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwOTUwNjg2CkhpZXJ6dSBkaWUgVWViZXJzZXR6dW5nZW4gdm9uIExFTwooaHR0cDovL3d3dy5sZW8ub3JnL2NnaS1iaW4vZGljdC1zZWFyY2g/c2VhcmNoPWdheSk6CgpnYXkgYnVudApnYXkgZ2xhZW56ZW5kCmdheSBoZWl0ZXIKZ2F5IGxlYmVuc2x1c3RpZwpnYXkgbGllZGVybGljaApnYXkgbHVzdGlnCmdheSB2ZXJnbnVlZ3QKZ2F5IGx1c3RpZzsgdmVyZ251ZWd0CgpnYXkgc2Nod3VsCmdheSBkZXIgSG9tb3NleHVlbGxlCmdheSBkZXIgU2Nod3VsZQpnYXkgZGllIEhvbW9zZXh1ZWxsZQoKV2VsY2hlIEJlemVpY2hudW5nZW4gdWViZXJ3aWVnZW4gbGFzc2VuIHNpY2ggaGllciBrbGFyIGVya2VubmVuLCB3b21pdCBtYWwKd2llZGVyIGJld2llc2VuIHdhZXJlIGRhc3MgYWxsZSBLbGlzY2hlZXMgZWluZSByZWluZSBGcmFnZSBkZXIgSW50ZXJwcmV0YXRpb24Kc2luZCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERpZSBXYWhyaGVpdCB1ZWJlciBlbGJlbiAoVHJ1ZywgIDQuIEp1bCAxOTk5LCAxMTo1MzozNyk6Cn4jISBybj1UYXJhZ29uIHJ0PTkzMTA4MTk1OSByZz1zY2htYXJybgp+IyEgdGlkPTkzMDk1MDY4NgpOYWphLCBpY2ggZnJhZyBtaWNoIGhhbHQsIHdhcnVtIHNpY2ggZGllIEVsZmVuIGltbWVyIGRpZXNiZXp1ZWdsaWNoCnZlcnRlaWRpZ2VuIG11ZXNzZW4uCgpTY2hvbiBkYXMgYWxsZWluZSBpc3QgZXR3YXMgdmVyZGFlY2h0aWcgOikKClRydWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnJ1YnJpayBzY2htYXJybiAoWmlsbGVpLCAgNC4gSnVsIDE5OTksIDEyOjM0OjI0KToKU2Nob2VuLCB3YXMgZXMgbmljaHQgc28gYWxsZXMgaW4gZGVyIFNTUCBnaWJ0Li4uCgp1bnQgYm9kZW4KR3J1ZW5lcyBHcmFzIHdhZWNoc3QgYXVmIGlobS4KdW50IGdyYXMKRHUgc2llaHN0IGVpbiBHcmFtbSBTa3Vuay4KOm8pCgplaW4gZXR3YXMgaXJyaXRpZXJ0ZXIgLVppbGxlaS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERpZSBXYWhyaGVpdCB1ZWJlciBlbGJlbiAoSG9vZCwgIDQuIEp1bCAxOTk5LCAxODoyODowMyk6Cn4jISBybj1UcnVnIHJ0PTkzMTA4MjAxNyByZz1zY2htYXJybgp+IyEgdGlkPTkzMDk1MDY4NgpoaSB0cnVnOyBkdSBiaXN0IHNjaHd1bCwgaGFlc3NsaWNoIHVuZCBvYmVuZHJlaW4gbmljaHQgYmVzb25kZXJzIGhlbGwuLi4KLiBvIE8oIG5hIG1hbCBzZWhlbiwgb2IgZGVyIHNpY2ggamV0enQgdmVydGVpZGlndCkKCi0tLS0tLQpwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERpZSBXYWhyaGVpdCB1ZWJlciBlbGJlbiAoVHJ1ZywgIDQuIEp1bCAxOTk5LCAxODoyOToyMyk6Cn4jISBybj1Ib29kIHJ0PTkzMTEwNTY4MyByZz1zY2htYXJybgp+IyEgdGlkPTkzMDk1MDY4NgprbGVpbmUgZnJhZ2U6IHdhcyBzb2xsIGRlbm4gZGFzIHNjaG9uIHdpZWRlciBob29kPwoKZHUgZ2Voc3Qgdm9uIHNhY2hlbiBhdXMsIHZvbiBkZW5lbiBkdSBrZWluZW4gYmxhc3NlbiBzY2hpbW1lciBoYXN0LgoKVHJ1Zy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IERpZSBXYWhyaGVpdCB1ZWJlciBlbGJlbiAoSG9vZCwgIDQuIEp1bCAxOTk5LCAxODozMTowNSk6Cn4jISBybj1UcnVnIHJ0PTkzMTEwNTc2MyByZz1zY2htYXJybgp+IyEgdGlkPTkzMDk1MDY4NgpoYWgsIGRhcyBrYW5uIG1hbiBzY2hvbiBmYXN0IGFscyB2ZXJ0ZWlkaWd1bmcgZ2VsdGVuIGxhc3Nlbi4KaGllcm1pdCBpc3Qgd29obCBlaW5kZXV0aWcgZXJ3aWVzZW4sIGRhc3MgbWVpbmUgYmVoYXVwdHVuZ2VuIHdhaHIgc2luZAogKHp1bWluZGVzdCBsYXV0IGRlaW5lciBsb2dpayA6KQoKLS0tLS0tCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmlvbG9naWU6IHVuZ2VudWVnZW5kIChXaW0sICA0LiBKdWwgMTk5OSwgMjA6MzY6NDIpOgpbQWxsZ2VtZWluOkdhbGF4aWFzXSB3aWUgemllaGUgaWNoIGVpbiBrb25kb20gYW4/Cj5bQWxsZ2VtZWluOlZlY3Rvcl0gbWFuY2hlIHNhY2hlbiBzb2xsdGUgbWFuIG5pY2h0IGZyYWdlbgpbQWxsZ2VtZWluOkZyZWl0YWcga2FubiBzaWNoIGVpbiBLaWNoZXJuIG5pY2h0IHZlcmtuZWlmZW5dCltBbGxnZW1laW46VmVjdG9yXSA7KQpbQWxsZ2VtZWluOkdhc3QxXSB3ZW5uIGR1IGRhcyBub2NoIG5pY2h0IGthbm5zdCAuLjopCltBbGxnZW1laW46R2FsYXhpYXNdIG5hamEsIGljaCBoYWIgaGFsdCBrZWluZSBlcmZhaHJ1bmcgZGFtaXQKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZXNjaG1hY2suLi4gKEdub21lLCAgNC4gSnVsIDE5OTksIDIxOjQxOjE5KToKW2lzcyBlaXN9CgpOYWphLCBWYW5pbGxlIGlzdCBzY2hvbiBlaW4gYmlzY2hlbiBmYWRlLiBFcyBzY2htZWNrdCBuaWNodCBhbmFuYXNzaWchCgpuYSBqb2Ygc2VpIGRhbmssIHd1ZXJkIGljaCBzYWdlbi4uLiA7LSkKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcnRpa2VsIChHcmltbWFuLCAgNS4gSnVsIDE5OTksIDA0OjE4OjQ5KToKTmFlY2hzdGVubGllYmUKS3VyeiB1bmQgc2NobWVyemxvcyA6IEtlaW5lIHdpbGwgbWljaCAuLi4KCk1CSU1HICwgR3JpbU1hbiAsIGFtdWVzaWVydCB1bmQgZWluc2FtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaCwgc2luZCBkaWUgZ2Vob3JzYW0gOikgKFd1bSwgIDUuIEp1bCAxOTk5LCAwNjowMTo1OCk6CkR1IHNhZ3N0OiBXQUhIISBoYWJ0IGlociBub2NoIGdsdWVoZW5kZSBuYWRlbG4gZGFiZWk/CkplbmFuZHJhIHp1ZWNrdCBtaXQgZ2VtZWluZW0gTGFlY2hlbG4gZWluZSBrbGVpbmUgaGFuZGxpY2hlIDlzY2h3YWVuemlnZQpMZWRlcnBlaXRzY2hlLgpFaW4gU2hlcmlmZiBodXNjaHQsIHNpY2ggcHJ1ZWZlbmQgdW1ibGlja2VuZCwgaGVyZWluLgpKZW5hbmRyYSBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpEdSBzYWdzdDogc2hlcmlmZiwgdmVyaGFmdGUgc2llIQpEZXIgc2Nod2FyemUgU2hlcmlmZiBzYWd0OiBXYWZmZW4gc2luZCBoaWVyIHZlcmJvdGVuLCBoZXIgZGFtaXQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEaWUgV2FocmhlaXQgdWViZXIgZWxiZW4gKFNvbmdva3UsICA1LiBKdWwgMTk5OSwgMTE6MDQ6NTApOgp+IyEgcm49VGFyYWdvbiBydD05MzEwODE5NTkgcmc9c2NobWFycm4KfiMhIHRpZD05MzA5NTA2ODYKVW5kIEdheSBpc3QgZWluIEZyYXVlbm5hbWUhCgpTYXlvdW5hcmEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpla2VsaWcgKE5haXJvbGYsICA1LiBKdWwgMTk5OSwgMTM6NTU6NTIpOgpEZWluIEZyZXVuZCBOb3Zhc3Rvcm0gdGVpbHQgRGlyIG1pdDogYWFoLCBpY2ggbGllYmUgZGVuIGdlcnVjaCB2b24gc2Nod2Vpc3MKRGVpbiBGcmV1bmQgTm92YXN0b3JtIHRlaWx0IERpciBtaXQ6IHZvbiBlaW5lciBhYnNvbHV0IHN0b2NraGFlc3NsaWdlbiBhZWgKRGVpbiBGcmV1bmQgTm92YXN0b3JtIHRlaWx0IERpciBtaXQ6IG1taCwgbmViZW4gbWlyCgoKaWNoIHd1c3N0cyBzY2hvbiBpbW1lciAuLi4uIAoKTmFpcm9sZiwgZXJzY2h1ZXR0ZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZWtlbGlnIChOb3Zhc3Rvcm0sICA1LiBKdWwgMTk5OSwgMTM6NTY6NDQpOgp+IyEgcm49TmFpcm9sZiBydD05MzExNzU3NTIgcmc9c2NobWFycm4KfiMhIHRpZD05MzExNzU3NTIKKlNvbW1lcnplaXQgdHJldCogKk5haXJvbGYgdHJldCogKmdydW1tbCoKICAKICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGVrZWxpZyAoQW5hdG9sLCAgNS4gSnVsIDE5OTksIDEzOjU4OjMwKToKfiMhIHJuPU5vdmFzdG9ybSBydD05MzExNzU4MDQgcmc9c2NobWFycm4KfiMhIHRpZD05MzExNzU3NTIKU3RlaHN0IGdyYWQgZWluIHdlbmlnIG5lYmVuIERpciwgTm92YT8gCgpBbmF0b2wgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGVrZWxpZyAoTmFpcm9sZiwgIDUuIEp1bCAxOTk5LCAxMzo1ODozOCk6Cn4jISBybj1Ob3Zhc3Rvcm0gcnQ9OTMxMTc1ODA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxMTc1NzUyCgpJSEhIICEhIQpEZWluIEZyZXVuZCBTY2hva28gdGFldHNjaGVsdCBOb2F2YXMgVHVlcm1jaGVuIGVpbiBiaXNzY2hlbiBhdXMgZGVyIEZlcm5lLgoKCmpldHp0IHdpcmRzIGVrZWxpZwoKTmFpcm9sZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCBtb21lbnQgOikgKFVuYXNhaSwgIDUuIEp1bCAxOTk5LCAxNDowMDowOCk6Ck5lYmVuIE5vdmEgc3RlaCBsZWlkZXIgaWNoIDooCgoqZWluZSBleHRyZW0gdmVyd2lycnRlIHVuZCBiZWxlaWRpZ3RlIFVuYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhcnRpa2VsIG1vbWVudCA6KSAoQW5hdG9sLCAgNS4gSnVsIDE5OTksIDE0OjAwOjQ2KToKfiMhIHJuPVVuYXNhaSBydD05MzExNzYwMDggcmc9c2NobWFycm4KfiMhIHRpZD05MzExNzYwMDgKRHUsIFVuYS4uLiBnYW56IGltIFZlcnRyYXVlbi4uLgoKLi4uIERlaW4gRGVvIGhhdCB2ZXJzYWd0IDspIAoKQW5hdG9sIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFydGlrZWwgbW9tZW50IDopIChQYXJhY2Vsc3VzLCAgNS4gSnVsIDE5OTksIDE0OjAxOjEyKToKfiMhIHJuPVVuYXNhaSBydD05MzExNzYwMDggcmc9c2NobWFycm4KfiMhIHRpZD05MzExNzYwMDgKR2lidHMgYmVpIGV1Y2gga2VpbmUgU3R1ZWhsZSB6dW0gc2l0emVuPwoKUGFyYSouCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGFydGlrZWwgbW9tZW50IDopIChOYWlyb2xmLCAgNS4gSnVsIDE5OTksIDE0OjAyOjI1KToKfiMhIHJuPVBhcmFjZWxzdXMgcnQ9OTMxMTc2MDcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxMTc2MDA4CmljaCB3aWxsIGphIG5lZGQgZGlza3JpbWluaWVyZW5kIHdpcmtlbiAuLiBhYmVyLi4gCgogZmcgdW5hc2FpClVuYXNhaSBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogTGVpcHppZy4KRWluZ2Vsb2dndCBzZWl0OiBEaWUsIDI5LiBKdW4gMTk5OSwgMjA6MDE6MTgKVm9sbGVyIE5hbWU6IFVuYXNhaSBkaWUgRWluemVsa2FlbXBmZXJpbgpSYXNzZTogRWxmLCAgR2lsZGU6IEthZW1wZmVyLCAgR2VzY2hsZWNodDogd2VpYmxpY2gKQWx0ZXI6IDE2ZCAxNzoxNTowMiwgICBTcGllbGVybGV2ZWw6IDE3LCAgIEdpbGRlbmxldmVsOiAxMQpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBEb24sICA1LiBOb3YgMTk5OCwgMTg6NDM6MDYKVmVyaGVpcmF0ZXQgbWl0OiBOb3Zhc3Rvcm0KQmlzaGVyIGJlcmVpdHMgMjAgbWFsIGdlc3RvcmJlbgoKKG1hbiBhY2h0ZSBhdWYgZGFzICJ1bmQgendhciB2b246IiB1bmQgZGFubiB1ZWJlcmxlZyBkaXIgZGllIGZyYWdlIG1pdCBkZW4KU1R1ZWhsZW4gbm9jaG1hbCA6LSkgKQoKTmFpcm9sZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogYXJ0aWtlbCBtb21lbnQgOikgKE5vdmFzdG9ybSwgIDUuIEp1bCAxOTk5LCAxNDowMzozMSk6Cn4jISBybj1OYWlyb2xmIHJ0PTkzMTE3NjE0NSByZz1zY2htYXJybgp+IyEgdGlkPTkzMTE3NjAwOApERVIgd2FyIGZpZXMhIEFscyBvYiBkZXIgTWFyYnVyZ2VyIFZvcm9ydCBhdXMgZGVtIGRlciBIZXJyIE5haXJvbGYga29tbXQsIG1laHIKVGVjaG5payBoYWV0dGUgOy0pCgogIE5vdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXR6d2Vya3VudGVyYnJlY2h1bmcgYW0gRGkgNi43LiAoQW5hdG9sLCAgNS4gSnVsIDE5OTksIDE0OjA4OjI2KToKfiMhIHJuPUhhdGUgcnQ9OTMxMTc2NDQyIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD05MzExNzY0NDIKR0FOWkUgWkVITiBNSU5VVEVOPwoKV2FzIG1hY2hlbiBkaWUgU3VjaHRpZXMgaGllciB3YWVocmVuZGRlc3Nlbj8gV2llIHdpbGxzdCBEdSBkYXMgCnZlcmFudHdvcnRlbj8hIE5hamEsIHdpciB3ZXJkZW4gZXMgaW4gZGVuIFplaXR1bmdlbiBsZXNlbi4uLgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXR6d2Vya3VudGVyYnJlY2h1bmcgYW0gRGkgNi43LiAoUGFyYWNlbHN1cywgIDUuIEp1bCAxOTk5LCAxNDowODo1Mik6Cn4jISBybj1BbmF0b2wgcnQ9OTMxMTc2NTA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxMTc2NDQyCkFjaCwgZ2lidCBkb2NoIG5vY2ggYW5kZXJlIE11ZHMsIGluIGRpZSBtYW4gc29sYW5nZSBhdXN3ZWljaGVuIGthbm4uCgpQYXJhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJncyAoVW5hc2FpLCAgNS4gSnVsIDE5OTksIDE0OjA4OjUzKToKTGllYmVyIE5haXJvbGYsCkR1IGJpc3Qgd29obCBuaWNodCBnYW56IGRpY2h0IGltIE9iZXJzdHVlYmNoZW4uLi46KSBUamEsIEludGVsbGlnZW56IGlzdCBiZWkKamVkZW0gYW5kZXJzIGF1c2dlcHJhZWd0IG5pY2h0IHdhaHI/Cip0c3RzdHMqClVuYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCaW9sb2dpZTogdW5nZW51ZWdlbmQgKFJvY2h1cywgIDUuIEp1bCAxOTk5LCAxNDoxNjoxNSk6Cn4jISBybj1XaW0gcnQ9OTMxMTEzNDAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxMTEzNDAyCltBbGxnZW1laW46R2FsYXhpYXNdIHdpZSB6aWVoZSBpY2ggZWluIGtvbmRvbSBhbj8KRnJhZyBlaW5mYWNoIGlyZ2VuZGVpbmUgRnJhdS4KW011ZW5zdGVyYW5lciBTdGFtbXRpc2NoOkFyaWFuYV0gSkVERSBGcmF1IGthbm4gZWluIEtvbmRvbSB1ZWJlcnppZWhlbi4KW011ZW5zdGVyYW5lciBTdGFtbXRpc2NoOkFyaWFuYV0gTWl0IGRlciBIYW5kIHVuZCBtaXQgZGVtIE11bmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJpb2xvZ2llOiB1bmdlbnVlZ2VuZCAoUmlrdXMsICA1LiBKdWwgMTk5OSwgMTQ6NTU6MDgpOgp+IyEgcm49Um9jaHVzIHJ0PTkzMTE3Njk3NSByZz1zY2htYXJybgp+IyEgdGlkPTkzMTExMzQwMgpkYW5uIG11c3MgZXMgYWJlciBYWEwgc2VpbiwgZGFtaXQgZXMgdWViZXIgZGllIEZyYXUgcGFzc3QhIDopCgpSaWt1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWxsZXMgTHVlZ2UgISAoTmViLCAgNS4gSnVsIDE5OTksIDE1OjEyOjE5KToKZmluZ2VyIHRpYW1hawpUaWFtYWsgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IERvcnRtdW5kLgpFaW5nZWxvZ2d0IHNlaXQ6IE1vbiwgIDUuIEp1bCAxOTk5LCAxNTowODo1MApWb2xsZXIgTmFtZTogVGlhbWFrIGlzdCBhdWYgZGVyIEphZ2QgbmFjaCBCdWdzClJhc3NlOiBNZW5zY2gsICBHaWxkZTogS2FtbWVyamFlZ2VyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAyM2QgMTg6MTM6MDYsICAgTWFnaWVybGV2ZWw6IDI1IChWb2xsbWFnaWVyKQpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBNaXQsIDI4LiBPa3QgMTk5OCwgMjI6NDM6MzYKVGlhbWFrIGlzdCBad2VpdHNwaWVsZXIgKFJvY2h1cykuCgpNYW4gYWNodGUgYXVmIGRpZSBad2VpdGllbWFya2llcnVuZyA7KQoKTmViLCBmaW5kZXQsIGRhc3MgUm9jaHVzIGtlaW5lbiBWb2xsbWFnaWVyLTJ0aWUgbm9ldGlnIGhhdCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCaW9sb2dpZTogdW5nZW51ZWdlbmQgKEdyaW1tYW4sICA1LiBKdWwgMTk5OSwgMTU6NDY6NDIpOgp+IyEgcm49Um9jaHVzIHJ0PTkzMTE3Njk3NSByZz1zY2htYXJybgp+IyEgdGlkPTkzMTExMzQwMgpJY2ggd3Vzc3RlIGVzIHNjaG9uIGltbWVyIEFyaSogLi4uIGFjaCBzbywgdW5kIGR1IHNhbW1lbHN0IHdpZWRlciBTcHJ1ZWNoZQphdWZmZXIgUGFydHk/CkRhcyB3YWVyZSBkYW5uIGphIHdvbGwgd2llZGVyIGVpbiBIaWdobGlnaHQgOykKCk1CSU1HICwgR3JpbU1hbiAsIHNjaG11bnplbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpob2ZmZW50bGljaCBwbGF0enQgc2llIG5pY2h0IC4uIChBbGJvaW4sICA1LiBKdWwgMTk5OSwgMjA6MzA6MTQpOgpmaW5nZXIgdGhvciAKClRob3IgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IGF0cGZvcmVzdC50dXdpZW4uYWMuYXQgKDEyOC4xMzAuNDUuMjAxKSBbV2llbiwgQXVzdHJpYV0uClBhc3NpdiBzZWl0OiAwNzowOToyNgpFaW5nZWxvZ2d0IHNlaXQ6IE1vbiwgIDUuIEp1bCAxOTk5LCAxMDo0Nzo1OApWb2xsZXIgTmFtZTogQ2hhb3N6d2VyZyBUaG9yIGlzdCBzdWVzcyAoc2FndCBXb29keSkKUmFzc2U6IFp3ZXJnLCAgR2lsZGU6IENoYW9zLCAgR2VzY2hsZWNodDogd2VpYmxpY2gKQWx0ZXI6IDg2ZCAxOTo0NTo0NCwgICBTcGllbGVybGV2ZWw6IDYxIChTZWhlcmluKSwgICBHaWxkZW5sZXZlbDogMTEKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogRGllLCAyNC4gTWFyIDE5OTgsIDAwOjA4OjI4CkUtTWFpbC1BZHJlc3NlOiB0aG9yQGF0cGZvcmVzdC50dXdpZW4uYWMuYXQKSG9tZXBhZ2U6IGh0dHA6Ly9hdHBmb3Jlc3QudHV3aWVuLmFjLmF0L350aG9yLwp6LlouIGFid2VzZW5kLCBHcnVuZCAgOiAtRXNzZW4tCkJpc2hlciBiZXJlaXRzIDI3IG1hbCBnZXN0b3JiZW4gIAoKCmFsYm9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWxmZW4hISEgKE5ldm9rLCAgNS4gSnVsIDE5OTksIDIyOjUxOjIxKToKU2luZCB6dSBibG9lZGUgdW5kIGF1c3NlcmRlbSBub2NoIEthbm5pYmFsZW4KCkJld2Vpcz8ga2VpbiBUaGVtYQoKSWNoIGxvZXNlIG5ldHQgYXVmIFp3ZXJnZW5hcnQgZWluZW4gRWxmZW53YWVjaHRlciB2b20gbGFuZ3dlaWxpZ2VuCldhY2hkaWVuc3QuLi4uCldhZWhyZW5kIGRlcyBLYW1wZmVzIHNjaGxldWRlcnQgZXIgbWlyIGVpbiAKRGVyIEVsZmVud2FlY2h0ZXIgc2FndDogU3RpcmIsIFp3ZXJnZW5mcmV1bmQhCmFuIGRlbiBLb3BmLCBkYXMgdHJpZmZ0IG1pY2ggbmF0dWVybGljaCBoYXJ0IGFscyBad2VyZy4uLgoKdGphIHVuZCBkYW5uIGhhYiBpY2ggaWhuIHNjaGxpZXNzbGljaCBnZWtsb3BwdCB1bmQgd2lsbCBkaWUgRnJ1ZWNodGUgbWVpbmVyCkFyYmVpdCBlcm50ZW4uLi4KdW5kIGRhbm4gc293YXM6CgpEZXIgRWxmZW53YWVjaHRlciBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW5lIExlaWNoZSB3aXJkIHZvbiBlaW5lbSBFbGZlbndhZWNodGVyIHZvbGwgSGluZ2VidW5nIHZlcnNwZWlzdC4KRGVyIEVsZmVud2FlY2h0ZXIgbmltbXQgNjIgTXVlbnplbi4KZXIgRWxmZW53YWVjaHRlciBuaW1tdCBkZW4gU2NoaWxkCkRlciBFbGZlbndhZWNodGVyIG5pbW10IGRlbiBQYW56ZXIuCkRlciBFbGZlbndhZWNodGVyIG5pbW10IGRhcyBMYW5nc2Nod2VydC4KV2VtIHdpbGxzdCBEdSBkZW5uIGVpbmVuIEtuaWVzdG9zcyB2ZXJzZXR6ZW4/CgoKRGEgZnJhZ3QgbWFuIHNpY2ggZG9jaCB3ZXMgR2Vpc3RlcyBLaW5kIGRhcyBTcGl0em9ocmVuZ2Vzb2Nrc2UgaXN0Li4uCgpOZXZvaywgWndlcmcgYXVzIFVlYmVyemV1Z3VuZywgdW5kIGRhcyBpcyBrZWluIEdlc3Rhbmsgc29uZGVybiBkaWUgRHVmdG5vdGUKZWluZXMgZXJmb2xncmVpY2hlbiBLcmllZ2VycywgaWhyIEJhdW1wb3BwZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpZSwgaGllciBhdWNoPyAoTmV2b2ssICA1LiBKdWwgMTk5OSwgMjM6MDk6MjApOgpNYW4gdW50ZXJoYWVsdCBzaWNoIHVlYmVyIGRpZSAnUG9saWN5CmF1cyBkZW0gU2lsYmVybGFuZCB1bmQgb2IgZGFzIG51biBldGhuaXNjaCBoZWlzc2VuIHNvbGwgb2RlciBldGhpc2NoLi4uCgo3LiBFaW4gTXVkIGlzdCBrZWluIE1lZGl1bSB6dXIgVmVyYnJlaXR1bmcgdm9uIHJhZGlrYWxlbSBHZWRhbmtlbmd1dCBvZGVyCnZlcmJvdGVuZXIgU2NocmlmdGVuLCBkYWhlciBpc3QgZGllcyBhdWNoIGhpZXIgbmljaHQgZXJsYXVidC4gICBFYmVuc28KaXN0IHNleHVlbGwgb2RlciBldGhuaXNjaCBhbnN0b2Vzc2lnZXMgVmVyaGFsdGVuIGluIGRlciAgIk11ZC1PZWZmZW50bGljaGtlaXQiCnp1IHVudGVybGFzc2VuLgoKRHUgc2Fnc3Q6IGRhcyBzb2xsIHdvaGwgZXRoaXNjaCBoZWlzc2VuIGhvZmZlIGljaC4uClRpdGFuaWEgc2FndDogaG0KVGl0YW5pYSB6dWNrdCByYXRsb3MgbWl0IGRlbiBTY2h1bHRlcm4uCkFsZXBoIHNhZ3Q6IG5hamEgZXRobmlzY2ggYW5zdG9lc3NpZyBzaSBlaW4gYmlzc2NoZW4gbmUgc2V0bHNhbWUgZm9ybXVsaWVydW5nCkR1IG5pY2tzdCB6dXN0aW1tZW5kLgpEdSBzYWdzdDogZHVlcmZlbiBlbGZlbiBkYSBuZXQgendlcmdlIGtudWRkZWxuCkR1IGdyaW5zdC4KRHUga251ZGRlbHN0IFRpdGFuaWEuCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgptYW4gbWFuIG1hbiwgZGEgc2luZCBhYmVyIG4gcGFhciBMZXV0Y2hlbnMgZW1wZmluZGxpY2guLi4KCk5ldm9rLCBkZXIgc2ljaCBiZWkgZGVtIEdlYnJhdWNoIHZvbiAnZXRobmlzY2ggYW5zdG9lc3NpZ2VtIFZlcmhhbHRlbicKdW5hbmdlbmVobSBhbiBwb2xpdGlzY2hlIEdlYmlsZGUgZGVyIHJlY2h0ZXJlbiBOYXR1ciBlcmlubmVydCBmdWVobHQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhhbW1lciAoTXVhZGliLCAgNi4gSnVsIDE5OTksIDAwOjE3OjEyKToKaGksCgpkZXIgaGFtbWVyIHNvbGx0ZSB3aWVkZXIgZ2VoZW4sIGZhbGxzIG5pY2h0IHJlY2huZXQgZXMgYml0dGUgdWhyemVpdCB1bmQKYW5kZXJlbiBkaW5nZW4gYW4gOikKCm11YWRpYgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhhbW1lciAoTXVhZGliLCAgNi4gSnVsIDE5OTksIDAwOjIwOjA4KToKfiMhIHJuPU11YWRpYiBydD05MzEyMTMwMzIgcmc9c2NobWFycm4KfiMhIHRpZD05MzEyMTMwMzIKYWVoamEgYWx0ZSBoYW1tZXIgaGFiIGljaCBtYWwgZW50c29yZ3QsIHNvIGJ0dwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2IgaWhtIGRhcyBvZWZmdGVyIHBhc3NpZXJ0PyAoV2ltLCAgNi4gSnVsIDE5OTksIDAxOjA5OjM2KToKCj5QYWRyZWljIHNhZ3Q6IGFyZ2hzIHNpZSBob2VydCBqYSBnYXIgbmV0IG1laHIgenUKUGFkcmVpYyBncnVtbWVsdC4KCihvaG5lIHdvcnRlKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9iIGlobSBkYXMgb2VmZnRlciBwYXNzaWVydD8gKEFuYXRvbCwgIDYuIEp1bCAxOTk5LCAwMToyMjowMSk6Cn4jISBybj1XaW0gcnQ9OTMxMjE2MTc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxMjE2MTc2Ck5laW4sIGRhcyBwYXNzaWVydCBpaG0gTklDSFQgb2VmdGVyLgoKCi4uLiBmdWVyIGdld29laG5saWNoIG1lcmt0IGVyIGVzIG5hZW1saWNoIG5pY2h0IDspCgpBbmF0b2wgOm8pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCaW9sb2dpZTogdW5nZW51ZWdlbmQgKENhaWxsZWFuLCAgNi4gSnVsIDE5OTksIDAxOjMxOjA3KToKfiMhIHJuPVJvY2h1cyBydD05MzExNzY5NzUgcmc9c2NobWFycm4KfiMhIHRpZD05MzExMTM0MDIKZGFzIHdhciBqZXR6dCBqYSB3b2hsIGV0d2FzIGF1cyBkZW0genVzYW1tZW5oYW5nIHJvY2h1cywgbmljaHQgd2Foci4KaWNoIGZpbmRlLCB3ZW5uIHNjaG9uLCBkYW5uIGF1Y2ggdm9sbHN0YWVuZGlnOgphcmlhbmEgamVkZSBmcmF1IGthbm4gZWluIGtvbmRvbSB1ZWJlcnppZWhlbiwgTUFOQ0hFIGF1Y2ggbWl0IGRlbSBtdW5kLgoKcm9jaHVzOiBhbHNvIGljaCBrYW5uIGRhcyB1ZWJlcmhhdXB0IG5pY2h0IQoKdGphIHJvY2h1cywgZGVzd2VnZW4ga29lbm5lbiB3aXIgZnJhdWVuIGRhcyA6KQoKY2FpbGxlYW4sIGhldXRlIGlocmUgZXJzdGllIHZlcnRlaWRpZ2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQmlvbG9naWU6IHVuZ2VudWVnZW5kIChDYWlsbGVhbiwgIDYuIEp1bCAxOTk5LCAwMTozMTo1NSk6Cn4jISBybj1HcmltbWFuIHJ0PTkzMTE4MjQwMiByZz1zY2htYXJybgp+IyEgdGlkPTkzMTExMzQwMgphYmVyIHNpY2hlciA6KQoKaWNoIHNwaXR6IHNjaG9uIGRlbiBibGVpc3RpZnQ6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQmlvbG9naWU6IHVuZ2VudWVnZW5kIChOZXZvaywgIDYuIEp1bCAxOTk5LCAwMTozMjowNyk6Cn4jISBybj1DYWlsbGVhbiBydD05MzEyMTc0Njcgcmc9c2NobWFycm4KfiMhIHRpZD05MzExMTM0MDIKbmljaCB3YXMsIG1pdCBkZW0gbXVuZCBvZGVyIGdlbmVyZWxsLi4uLi5tYW4ga29lbm50ZSBqYSBhbiBjb2xhZmxhc2NoZW4KdWViZW4uLi4uLi4uLi4KCmdlaHQgbWFsIHZvcnNpY2h0c2hhYmxlciBpbiBEZWNrdW5nCgpOZXZvaywgYXVzIGRlciBIZWltYXQgZGVyIENvY2EgQ29sYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQmlvbG9naWU6IHVuZ2VudWVnZW5kIChHcmltbWJvcm4sICA2LiBKdWwgMTk5OSwgMTE6NDU6NTcpOgp+IyEgcm49TmV2b2sgcnQ9OTMxMjE3NTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxMTEzNDAyCkRhcyB3dWVyZGUgaWNoIGdlcm5lIHNlaGVuIHdpZSBEdSBEaXIgc2VsYmVyIGVpbiBLb25kb20gbWl0IGRlbSBNdW5kCnVlYmVyemllaHN0LgoKW1hdIFNlbmQgUGl4IQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCaW9sb2dpZTogdW5nZW51ZWdlbmQgKFJvY2h1cywgIDYuIEp1bCAxOTk5LCAxNToyNzoxMCk6Cn4jISBybj1DYWlsbGVhbiBydD05MzEyMTc0Njcgcmc9c2NobWFycm4KfiMhIHRpZD05MzExMTM0MDIKU29ycnksIGljaCBoYWJlIGRhcyB3aXJrbGljaCBzbyBnZWhvZXJ0IDotKQooT2hyZW4gcmVpbmlnZW5kKQoKICBSb2NodXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJpb2xvZ2llOiB1bmdlbnVlZ2VuZCAoUm9jaHVzLCAgNi4gSnVsIDE5OTksIDE1OjI4OjUwKToKfiMhIHJuPUNhaWxsZWFuIHJ0PTkzMTIxNzQ2NyByZz1zY2htYXJybgp+IyEgdGlkPTkzMTExMzQwMgpBY2ggamEsIHVuZCBub2NoIGV0d2FzLCBpY2gga2FubiBtaWNoIG5pY2h0IGVyaW5uZXJuIGRhcwpnZWFudHdvcnRldCB6dSBoYWJlbiwgaWNoIGJpbiBtaXIgYWxsZXJkaW5ncyB6aWVtbGljaApzaWNoZXIgZGFzcyBkaWVzZSBBbnR3b3J0IHZvbiBFSU5FTSBkZXIgQW53ZXNlbmRlbiBrYW0gOikKCiAgUm9jaHVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiB0ZXN0IChHcmltbWJvcm4sICA2LiBKdWwgMTk5OSwgMTU6NTM6MjIpOgp+IyEgb249R3JpbW1ib3JuIG90PTkzMTI2OTE5MiBvZz1wdWl6Cn4jISBybj1QaG9ib3MgcnQ9OTMxMjY4NjY3IHJnPXB1aXoKfiMhIHRpZD05MzA4Mzg0NjkKU29zby4KTGF1dCBCWmdBIHNvbGx0ZXN0IER1IERpciBkcmluZ2VuZCB1ZWJlcmxlZ2VuLCBzdGF0dCBkZXNzZW4gaW1tZXIgZWluIEtvbmRvbQp6dSBiZW51dHplbi4KT2J3b2hsLCB3ZW5uIER1IGRhcyBiZW51dHp0IHdhcyBEdSBhbmdlZ2ViZW4gaGFzdCBpc3QgZGFzIHZpZWxsZWljaHQgZ2FyIG5pY2h0Cm1laHIgbm9ldGlnLi4uCgpHcmltbWJvcm4gZGVyIEFodGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZlcnN0ZWhlIGRhcyB3ZXIgd2lsbCAob2RlciBrYW5uKSA6byggKE1lbmFjZSwgIDYuIEp1bCAxOTk5LCAyMTowMDoyNik6CmkKRWluIEdlb2xvZ2VuaGFtbWVyLiAgICAgICBFaW4gYWx0ZXMgR29ibGlubWVzc2VyLiAgIE1lbmFjZXMgUnVuZW5zdGFiLgouLi4KenVlY2tlIEdlb2xvZ2VuaGFtbWVyCkR1IGhhc3Qgc293YXMgbmljaHQuCgp6dWVja2UgaGFtbWVyCkR1IGhhc3Qgc293YXMgbmljaHQuCgoKd2FzIHdpbGwgbWlyIGRhcyBqZXR6dCBzYWdlbj8gaGFiIGljaCBkZW4gSGFtbWVyLCBvZGVyIGhhYiBpY2ggaWhuIG5pY2h0PyBvZGVyCmlzdCBlciBrZWluZSBXYWZmZT8gCgpNZW5hY2UgdmVyd3VuZGVydCB1bmQgbnVyIG5vY2ggcmF0bG9zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERpZWRlciwgIDYuIEp1bCAxOTk5LCAyMjowNToyMyk6CltBYmVudGV1ZXI6U3lyYWt1c10gb2VobSB3aWUga29tbXQgYXVzIGRlbSBtYWdlbiBkZXMgZHJhY2hlbj8/PwpbVG9kOkxhcnNdIEVpbiBGbHVnZHJhY2hlIGhhdCBnZXJhZGUgU3lyYWt1cyB1bWdlYnJhY2h0LgoKRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoaW4gZGVyIG9ya2hvZWxlLi4uIChBbG1kdWRsZXIsICA3LiBKdWwgMTk5OSwgMDA6Mjk6MzcpOgpEdSBsYWVzc3QgZGllIEhvc2UgZmFsbGVuLgpvb29oaGhoaGhoClBhbGFkaW4gc2FndDogbmEhCgoKYWxzbyBEaW5nZSBnaWJ0cywgZGllIGthbm4gbmFtIG5pY2h0IGVya2xhZXJlbi4uLgpBbG1pIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llIGthbm4gbWFuIGRhcyBQYXNzd29ydCBzZWluZXMgRXJzdGllcyB2ZXJnZXNzZW4/IChXaW0sICA3LiBKdWwgMTk5OSwgMDI6MTM6MjIpOgp+IyEgb249V2ltIG90PTkzMTMwNjE0NiBvZz1tYWdpZXIuc2NobWFycm4KTGFyYXIgdGVpbHQgRGlyIG1pdDogaGFzdCBkdSBtYWwga3VyeiB6ZWlvdD8KRHUgdGVpbHN0IExhcmFyIG1pdDogd2FzIGdpYnRzIDopCj5MYXJhciB0ZWlsdCBEaXIgbWl0OiBpY2ggaGFiIG1laW4gcGFzc3dvcnQgdm9uIGxlaWJuaXogdmVyZ2Vzc2VuIDopCkR1IHdhZWx6dCBEaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KPkxhcmFyIHRlaWx0IERpciBtaXQ6IG5hamEgaWNoIGhhYiBzbyBlaW5lbiBkdW1tZW4gZWlubG9ndHJpZ2dlcgpMYXJhciBzZXVmenQuCkxhcmFyIHNhZ3Q6IG5ldCB3aXR6aWcKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIFBmdWksIEFtYW5kYS4uLiAoRm9vYmFyLCAgNy4gSnVsIDE5OTksIDAyOjUzOjA3KToKQW1hbmRhIHRlaWx0IERpciBtaXQ6IFdvaGluIHNvIGVpbGlnLCBFaW4gZnJvc2NoPwpBbWFuZGEgdGVpbHQgRGlyIG1pdDogSW1tZXIgc2luZCBzaWUgc28gZWlsaWcsIGRpZSBNYWVubmVyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE9iIGlobSBkYXMgb2VmZnRlciBwYXNzaWVydD8gKEphc3BlciwgIDcuIEp1bCAxOTk5LCAwNDozNDo1MCk6Cn4jISBybj1BbmF0b2wgcnQ9OTMxMjE2OTIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxMjE2MTc2CgpKYXNwZXIgbXVzcyBhbmF0b2wgcmVjaHQgZ2ViZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKEdvciwgIDcuIEp1bCAxOTk5LCAxMTowMzowMCk6Cn4jISBybj1EaWVkZXIgcnQ9OTMxMjkxNTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxMjkxNTIzCkhhZXR0ZXN0IGR1IGRhcyBnZXd1c3N0PyA6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhpbGZlIE1vcmR3YWZmZSEgKEFwc3UsICA3LiBKdWwgMTk5OSwgMTY6NDk6MDQpOgo+c2NoYWV0eiBmZWRlcgoKRHUgYmV0cmFjaHRlc3QgZGllIEhhcnB5aWVuZmVkZXIgZWluZ2VoZW5kLgpTaWUgc2NodWV0enQgZGVuIEtvZXJwZXIgZ2FyIG5pY2h0LgpTaWUga2FubiBwcnVlZ2VsbiBiZWltIEVsbGJvZ2Vuc2NobGFnLiBEYWJlaSBtYWNodCBzaWUgdWViZXJoYXVwdCBrZWluZW4KU2NoYWRlbi4KLi4uLgoKQXBzdSwgc3ByYWNobG9zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaGEgOikgKFVuYXNhaSwgIDcuIEp1bCAxOTk5LCAxOToyMjo0NCk6CihGcmF1ZW5wb3dlcjpIb3VzZWhvbGRlciB1ZWJlcmdpYnQgZGllIEViZW5lIGFuIFNlaS4gCihGcmF1ZW5wb3dlci5IZWxsZmxlY2spIGVuZGxpY2ggd2llZGVyIGVpbmUgRnJhdSBhbiBkZXIgTWFjaHQuLi4KKEZyYXVlbnBvd2VyOlNlaSB1ZWJlcmdpYnQgZGllIEViZW5lIGFuIE5vdmFzdG9ybSApCgppY2ggbXVzcyBtaWNoIGRvY2ggd3VuZGVybi4uLndhcyBoYXQgZXIgbWlyIHZvciBkZXIgSG9jaHplaXQgd29obAp2ZXJzY2h3aWVnZW4/Pz8/CiplaW5lIGdyaW5zZW5kZSBVbmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnYXN0MSB1bmQgc28gLi4uIChHcmltbWFuLCAgNy4gSnVsIDE5OTksIDIzOjQ3OjQxKToKZ2FzdDEgdW5kIHNvIC4uLgpmaW5nZXIgZ2FzdDEKWnVsZXR6dCBhdXNnZWxvZ2d0OkRvbiwgMS5KYW4gMTk3MCwgMDA6NTk6NTkgKDEwNzc5ZCAyMTo0NDozNykKCldhcyBlcyBuaWNodCBzbyBhbGxlcyBnaWJ0IDspCgpNQklNRyAsIEdyaW1NYW4gLCB6aWVtbGljaCB1ZWJlcnJhc2NodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJtZXIgVG9kLi4uIChNYWdlbmJyb3QsICA3LiBKdWwgMTk5OSwgMjM6NTg6MzMpOgpEZWluIEZyZXVuZCBRdWFsbWkgdGVpbHQgRGlyIG1pdDogZ3V0ZSBOYWNodCAhISEgSWNoIGdlaGUgZGVubmUgbWFsIGlucwpEZWluIEZyZXVuZCBRdWFsbWkgdGVpbHQgRGlyIG1pdDogYmV0dGNoZW4uLi4KRWluIGVudHNldHpsaWNoZXIgU2NocmVpIGhhbGx0IHZvbSBGcmllZGhvZiBoZXJ1ZWJlci4KCgoKCmVpbiB2ZXJ3aXJydGVyIE1hZ2VuYnJvdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG1tbSEgKEphbWVzb24sICA3LiBKdWwgMTk5OSwgMjM6NTk6MjkpOgpbVG9kOkxhcnNdIEVpbiBab21iaWV2aXJ1cyBoYXQgZ2VyYWRlIENpc291IHVtZ2VicmFjaHQuCkR1IHVtYXJtc3QgQ2lzb3UgdHJvZXN0ZW5kIGF1cyBkZXIgRmVybmUuCkVpbiBlbnRzZXR6bGljaGVyIFNjaHJlaSBoYWxsdCB2b20gRnJpZWRob2YgaGVydWViZXIuCgpTbyBzY2hsaW1tIHdhcidzIGRhbm4gZG9jaCBob2ZmZW50bGljaCBuaWNodCwgb2Rlcj8KakFtZXNvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhtbW0hIChNb3Jnb3RoLCAgOC4gSnVsIDE5OTksIDA3OjEzOjQxKToKfiMhIHJuPUphbWVzb24gcnQ9OTMxMzg0NzY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxMzg0NzY5CkRhbmtlc2Nob2VuICEKCk1vcmdvdGggZ3JpbnN0IFJvY2h1cyBhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTW1oLiAoTm92YXN0b3JtLCAgOC4gSnVsIDE5OTksIDEzOjQyOjA0KToKW1RvZDpMYXJzXSBFaW4gRmV1ZXJkYWVtb24gaGF0IGdlcmFkZSBMeXJhIHVtZ2VicmFjaHQuCltUb2Q6RWluIEZldWVyZGFlbW9uXSBFcyByaWVjaHQgc28gdmVyYnJhbm50IGhpZXIuIEJpc3QgRHUgZGFzPwpbZmcgbHlyYV0KTHlyYSBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogRGV1dHNjaGxhbmQuCkVpbmdlbG9nZ3Qgc2VpdDogRG9uLCAgMS4gSnVsIDE5OTksIDExOjUwOjAxClZvbGxlciBOYW1lOiBMeXJhIGRpZSBTY2huZWVmbG9ja2UKLi4uCgpTZWxic3Qgc2NodWxkIT8KCiAgTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGllIFdhaHJoZWl0IHVlYmVyIGVsYmVuIChUd2luc2VuLCAgOC4gSnVsIDE5OTksIDE0OjQ4OjUwKToKfiMhIHJuPVNvbmdva3UgcnQ9OTMxMTY1NDkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMwOTUwNjg2CkdFSUwgYXVjaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJnbC4gOikgKFdhcmssICA4LiBKdWwgMTk5OSwgMTg6MzQ6NTMpOgo+IGtvc3RlbgpEdSBrb2VubnRlc3QgRGVpbmUgU3R1ZmUgZXJob2VoZW4hCj4gZXJob2VoZSAKRHUga29lbm50ZXN0IERlaW5lIFN0dWZlIGVyaG9laGVuIQo+ICYmIApbZXJob2VoZV0KRGlyIGZlaGxlbiBiaXMgenVyIG5hZWNoc3RlbiBTdHVmZSBub2NoIDMgU3R1ZmVucHVua3RlLgoKLS0KV2FyawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2VpbiB0ZXN0YW1lbnQgKFdpbSwgIDguIEp1bCAxOTk5LCAxODozNTo0MSk6Cn4jISBvbj1TZW5zaSBvdD05MzE0NTA4MzEgb2c9YWxsZ2VtZWluZXMKdW50IGtvY2gKcAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaGVmcmF1IDEuMCAoR3JpbW1ib3JuLCAgOC4gSnVsIDE5OTksIDIwOjU4OjMxKToKfiMhIG9uPUNhdHdlYXpsZSBvdD05MzE0MjU1Mjcgb2c9d2l0emUKfiMhIG9uPUhpZ2h0IG90PTkzMTM2NzU1OCBvZz1hbGxnZW1laW5lcwp+IyEgcm49UmVhcGVyIHJ0PTkzMTM2MzQwMSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTkzMTM2MzQwMQpoZWhlIHp3YXIgdXJhbHQgYWJiZXIgaW1td2llZGVyIGd1dCAubykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEludGVybmV0c3VjaHQhISAoQmVuZGVpZ2lkLCAgOS4gSnVsIDE5OTksIDA4OjU4OjU3KToKfiMhIG9uPUx1ZyBvdD05MzEzMTE3Njggb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVphcGhvYiBydD05MzExOTAxMDAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MzA4NDkzMTEKCldlbm4gaGllciBlaW5lciBkYXMgbGV0enRlICh1bmQgendhciBkYXMgYWxsZXJsZXR6dGUpIFdvcnQgaGF0LCBkYW5uIElDSCEKClNvdmllbCBkYXp1Ckx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogSW50ZXJuZXRzdWNodCEhIChCZW5kZWlnaWQsICA5LiBKdWwgMTk5OSwgMDg6NTk6MDkpOgp+IyEgb249VHJ1ZyBvdD05MzEzNDY4NzYgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUx1ZyBydD05MzEzMTE3Njggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MzA4NDkzMTEKQWNoIGphPyA6KQoKVHJ1Zy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEludGVybmV0c3VjaHQhISAoQmVuZGVpZ2lkLCAgOS4gSnVsIDE5OTksIDA4OjU5OjI5KToKfiMhIG9uPVRydWcgb3Q9OTMxNDY5NTA4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1MdWcgcnQ9OTMxNDY4Mjg5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTMwODQ5MzExClNvPwoKVHJ1Zy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBJbnRlcm5ldHN1Y2h0ISEgKEJlbmRlaWdpZCwgIDkuIEp1bCAxOTk5LCAwODo1OTozOSk6Cn4jISBvbj1LYXJ0b2ZmZWwgb3Q9OTMxNDY5NTU0IG9nPWFsbGdlbWVpbmVzCn4jISBybj1UcnVnIHJ0PTkzMTQ2OTUwOCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTkzMDg0OTMxMQpHcnVtbWVsLCBkYSBicmF1Y2ggaWNoIGxhZW5nZXIgdW0gbm4genUgdGlwcGVuIGFscyBzb2xjaGUgQXJ0aWtlbCB6dSBsZXNlbi4uLgoKJ1RvZmZlbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogSW50ZXJuZXRzdWNodCEhIChUcnVnLCAgOS4gSnVsIDE5OTksIDA5OjQ0OjI5KToKfiMhIHJuPUJlbmRlaWdpZCBydD05MzE1MDM1Mzcgcmc9c2NobWFycm4KfiMhIHRpZD05MzA4NDkzMTEKS2luZHN6YXBmZW4uCgpUcnVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQZXJmZWt0ZSBTY2hhdXNwaWVeSF5IXkhmcm9lc2NoZSAoUHJ5ZGUsICA5LiBKdWwgMTk5OSwgMTc6MDQ6MzYpOgpEdSBncmVpZnN0IGRlbiBXZWlzc2Zyb3NjaCBtaXQgZGVtIFRoZWF0ZXJtZXNzZXIgYW4uCkRlciBGcm9zY2ggdmVyc3VjaHQsIGluIGRlbiBUdWVtcGVsIHp1IGZsaWVoZW4uCkRlciBXZWlzc2Zyb3NjaCBxdWFrdCBsYXV0IGF1ZiB2b3IgU2NobWVyemVuLgpEaWUgSGF1dCBkZXMgRnJvc2NoZXMgaXN0IHZvbiBCbHV0IGdldHJhZW5rdC4KCiAgUHJ5ZGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG5pdHpsZWxqYWdkPyAoV2ltLCAgOS4gSnVsIDE5OTksIDIyOjQyOjQ2KToKRHUgdGVpbHN0IExlaWJuaXogbWl0OiBibGEKTGVpYm5peiBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBsYXJhcgoKRHUgdGVpbHN0IExhcmFyIG1pdDogYmxhCkxhcmFyIGlzdCBnZXJhZGUgbmljaHQgZGE6IGxlaWJpCgp0IGxlaWJpIGJsYQpLZWluIHNvbGNoZXIgU3BpZWxlciEKCkhtbW0uLi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN0YXR0IFRlbGVrb20gdW50ZXJzdHVldHplbiB2aWVsbGVpY2h0IGRvY2ggTG90dG8gc3BpZWxlbj8gKE5ldm9rLCAgOS4gSnVsIDE5OTksIDIzOjE1OjA5KToKMTlqaHJpZ2Ugam5nc3RlIGRldXRzY2hlIExvdHRvLU1pbGxpb25yaW4KCk1hZ2RlYnVyZyAoZHBhKSAtIEVpbmUgMTlqaHJpZ2UgYXVzIFNhY2hzZW4gQW5oYWx0IGlzdCBuYWNoIEFuZ2FiZW4gZGVyCkxvdHRvZ2VzZWxsc2NoYWZ0ZW4gZGllIGpuZ3N0ZSBMb3R0by1NaWxsaW9ucmluIGluIGRlciBkZXV0c2NoZW4KV2V0dGdlc2NoaWNodGUuIERpZSBqdW5nZSBGcmF1IHVuZCBpaHIgRnJldW5kIGdld2FubmVuIG1laHIgYWxzIDIsNCBNaWxsaW9uZW4KTWFyay4gU2llIGxhbmRldGVuIGRlbiBUcmVmZmVyIGJlaW0gVGVsZS1CaW5nbywgdGVpbHRlIGRpZSBMb3R0by1Ub3RvIEdtYkgKU2FjaHNlbi1BbmhhbHQgbWl0LiBEYXMganVuZ2UgUGFhciB3aWxsIHNpY2ggZGVuIEFuZ2FiZW4genVmb2xnZSBBdXRvcwphbnNjaGFmZmVuLiBBdWYgZGVyIFd1bnNjaGxpc3RlIGRlciBBdXN6dWJpbGRlbmRlbiBzdGVoZW4gYXVlcmRlbSBlaW5lIFJlaXNlCmluIGRlbiBTZGVuIHVuZCBFaW5rdWZlIGZyIGRpZSBnZXJhZGUgZXJzdCBiZXpvZ2VuZSBXb2hudW5nLiAKCmhtcGYKCk5ldm9rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYWQqIChSaWt1cywgIDkuIEp1bCAxOTk5LCAyMzo1Mzo1MCk6ClBhZHJlaWMgc2NobHVja3QgZXR3YXMgcnVudGVyLgpQYWRyZWljIGthdXQgZWluZSBTY2hhdWZlbCB3aWVkZXIuCkRpZWRlciB0YXR0ZXJ0IGFlY2h6ZW5kIGFtIEFybSBzZWluZXIgaHVlYnNjaGVuIFBmbGVnZXJpbiBoZXJlaW4uCiAgUGFkcmVpYyB6ZXJzY2htZXR0ZXJ0IERpZWRlciBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KICBEaWVkZXIgZ3JlaWZ0IFBhZHJlaWMgbWl0IHppdHRyaWdlbiBIYWVuZGVuIGFuLgogIERpZWRlciB2ZXJmZWhsdCBQYWRyZWljLgpQYWRyZWljIGthdXQgZ2VudWVzc2xpY2ggYXVmIGVpbmVyIFNjaGF1ZmVsLgpEaWVkZXIgZmV1ZXJ0IGVpbmUgZnJvc3RpZ2UgRWlzd29sa2UgYXVmIFBhZHJlaWMgYWIuCiAgRGllZGVyIHRyaWZmdCBQYWRyZWljIHNlaHIgaGFydC4KUGFkcmVpYyBmYWVsbHQgdG90IHp1IEJvZGVuLgoKUmlrdXMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQYWQqIChEaWVkZXIsICA5LiBKdWwgMTk5OSwgMjM6NTg6MjYpOgp+IyEgcm49UmlrdXMgcnQ9OTMxNTU3MjMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxNTU3MjMwCm5pY2h0IHp1IHZlcmdlc3NlbiBkaWUgTW9lcmRlcm1lbGR1bmc6CgpbTW9lcmRlcjpQYWRyZWljXSBJY2ggaGFiIGtlaW5lIEFuZ3N0IHZvciBEaXIsIERpZWRlciEKCkRpZWRlciwgcm90ZmxuZCB1bmQga2F1bSBnbGF1YmVuZCwgZGFzcyBzZWluIHNlaG5saWNoc3RlciBXdW5zY2ggbWFsIGluCkVyZnVlbGx1bmcgZ2luZyA6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUGFkKiAoRGllZGVyLCAxMC4gSnVsIDE5OTksIDAwOjA4OjQxKToKfiMhIHJuPURpZWRlciBydD05MzE1NTc1MDYgcmc9c2NobWFycm4KfiMhIHRpZD05MzE1NTcyMzAKYWNoc28sIGRlciBBbmZhbmcgKGljaCBrYW5ucyBtaXIgbmljaCB2ZXJrbmVpZmVuLCBzb3JyeSEpIDopKToKCkljaCBrb21tIGluIGRpZSBHaWxkZS4gRG9ydCBzdGVodCBuZSBLdWggcnVtIChzY2h3YXJ6d2Vpc3MtZ2VzY2hlY2t0KS4KQW5kZXJlcnNlaXRzIHNjcm9sbHQgUGFkcmVpYyBoaWVyIGNhLiAxIG1hbCBwcm8gU2VrdW5kZS4KS2VyYmhvbHogS3VoIC0tPiBTdHVwc2UhISEgKmxlY2h6KgpJbnRhcmJpciAtLT4gUGFkcmVpYywgdW5kIHp3YXIgaHlkcmFtYWVzc2lnIHN0YWVya2VyLgp0bSAqeHh4bWFnaWVyKiB3YXNuIGhpZXIgbG9zPyBrYW5uIGljaCBkaWUgS3VoIHBsYWV0dGVuPyA6KQp4eHhtYWdpZXI6IG1hY2ggZG9jaCA6KQoKYWxzbyBnaW5ncyBsb3MuLi4KZGVuIFJlc3Qga2VubnQgaWhyIGphIDotKSkKCkRpZWRlciwgaW1tZXIgbm9jaCByb3RmbG5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUGFkKiAoUGFkcmVpYywgMTAuIEp1bCAxOTk5LCAwMDoxMDoxMyk6Cn4jISBybj1EaWVkZXIgcnQ9OTMxNTU4MTIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxNTU3MjMwCkRpZSBnYWIgbmVuIFN0dXBzPz8/CkhtbS4uLiBva2ksIGpldHp0IG5pY2ggbWVociA6KQoKUGFkcmVpYwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUGFkKiAoTmV2b2ssIDEwLiBKdWwgMTk5OSwgMDA6MTE6MDUpOgp+IyEgcm49UGFkcmVpYyBydD05MzE1NTgyMTMgcmc9c2NobWFycm4KfiMhIHRpZD05MzE1NTcyMzAKZ2ViZW4gbWFnaWVyIFN0dXBzZT8KCk5ldm9rLCBrZXJiaG9seiB6dWVja2VuZC4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFBhZCogKERpZWRlciwgMTAuIEp1bCAxOTk5LCAwMDoxMjowNSk6Cn4jISBybj1OZXZvayBydD05MzE1NTgyNjUgcmc9c2NobWFycm4KfiMhIHRpZD05MzE1NTcyMzAKbnVyLCB3ZW5uIHNpZSBlcyBuaWNodCBtZXJrZW4uLi4KCkRpZWRlciwgaGFldHRlIHNlaW4gTWF1bCBoYWx0ZW4gc29sbGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBQYWQqIChQYWRyZWljLCAxMC4gSnVsIDE5OTksIDAwOjEyOjE5KToKfiMhIHJuPU5ldm9rIHJ0PTkzMTU1ODI2NSByZz1zY2htYXJybgp+IyEgdGlkPTkzMTU1NzIzMApKZWluLCBlciBoYXQgbmljaCBnZWdlbiBtaWNoIGdla2FlbXBmdCBzb25kZXJuIGdlZ2VuIGRpZSBLdWggKG51ciBoYXR0ZSBSaWt1cwpzaWUgdW1iZW5hbm50IDopLi4uCgpQYWRyZWljCgpQLlMuOiBBYmVyIHdlbm4gaWNoIGVzIG1pciByZWNodCB1ZWJlcmxlZ2Uga29lbm5lbiB3aXIgendlaSBhdWNoIGdlcm5lIG1hbApnZWdlbmVpbmFuZGVyIGthZW1wZmVuLCBrcmllZ3N0IGF1Y2ggbmVuIFN0dXBzIHdlbm4gRHUgZ2V3aW5uc3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFBhZCogKE5ldm9rLCAxMC4gSnVsIDE5OTksIDAwOjEzOjIxKToKfiMhIHJuPVBhZHJlaWMgcnQ9OTMxNTU4MzM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxNTU3MjMwCkRhbmtlLCBhYmVyIFRydmVzIGdlYmVuIHNpY2ggbmljaCBtaXQgWmF1YmVyZXJ3dWVyc3RlbiBhYiA7KQoKZWluIHNjaG5lbGwgd2VncmVubmVuZGVyCgpOZXZvaywgbmljaHQgYmxpdHotc2ljaGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBQYWQqIChEaWVkZXIsIDEwLiBKdWwgMTk5OSwgMDA6MTM6NTQpOgp+IyEgcm49UGFkcmVpYyBydD05MzE1NTgzMzkgcmc9c2NobWFycm4KfiMhIHRpZD05MzE1NTcyMzAKT2ssIHdlbm4gaWNoIHZvcmhlciAzIEJlZmVobGUgc2FnZW4gZGFyZiwgZGllIER1IGVpbmdlYmVuIHVuZCBuaWNodCBtZWhyCm1hbmlwdWxpZXJlbiBkYXJmc3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFBhZCogKFBhZHJlaWMsIDEwLiBKdWwgMTk5OSwgMDA6MTQ6NTgpOgp+IyEgcm49RGllZGVyIHJ0PTkzMTU1ODQzNCByZz1zY2htYXJybgp+IyEgdGlkPTkzMTU1NzIzMApXZW5uIGljaCBfdm9yXyBkZW4gZHJlaSBCZWZlaGxlbiBub2NoIGlyZ2VuZHdhcyBlaW5nZWJlbiBkYXJmLCBrZWluIFByb2JsZW0gOikKClBhZHJlaWMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFBhZCogKERpZWRlciwgMTAuIEp1bCAxOTk5LCAwMDoxNTo0OCk6Cn4jISBybj1QYWRyZWljIHJ0PTkzMTU1ODQ5OCByZz1zY2htYXJybgp+IyEgdGlkPTkzMTU1NzIzMApqYSwgZGFzIG11c3MgYWJlciBkYW5uIGVpbiAic2VsYnN0bG9lc2NodW5nIiBtaXQgUFdEIHNlaW4uLi4gOy0pKSkKCk9rLCBqZXR6dCB3aXJkcyBhbGJlcm4uCgpEaWVkZXIsIG11ZWRlIHVuZCBhdWZob2VyZW5kIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKZSBzcGFldGVyIGRlciBBYmVuZCA7KSAoQ2lzb3UsIDEwLiBKdWwgMTk5OSwgMDE6MTI6NTMpOgpEaWUgYmVydWVobXRlIEFiZW50ZXVyZXJnaWxkZS4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9iZW4gdW5kIG5vcmRlbgpXYW0KU0FORHxFIGRpZSBXYW5rZW5kZQpPbGxpIGRlciBTY2hhdHpzdWNoZXIuCk1hcmN1cyB3YW5kZXJ0IGR1cmNoIGRlbiBzb25uaWdlbiBGcnVlaGxpbmcuCkVpbmUgWmVpdHVuZy4KRWluIEhhbmRidWNoIGZ1ZXIgQW5mYWVuZ2VyLgpFaW4gUGFydHlicmV0dC4KIE1hcmN1cyBkZW5rdCBrdXJ6IGRydWViZXIgbmFjaCwgU2FuZHxlIGlucyBCZXR0IHp1IGtyaWVnZW4sIHZlcndpcmZ0IGRlbgpHZWRhbmtlbiBhYmVyIGFscyBzaW5ubG9zLgpNYXJjdXMgdmVyd3VzY2hlbHQgRGVpbmUgSGFhcmUuCgpXZWdoaWVyIDotKSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXMgaWhyIGltbWVyIHZvbiBtaXIgZGVua3QgKE5ldm9rLCAxMC4gSnVsIDE5OTksIDAyOjEwOjMyKToKW01vZXJkZXI6R2Vpc3QgZWluZXMgaHVlcGZlbmRlbiBLbnV0c2NoZmlzY2hzXSBPaCBuZWluLCBOZXZvayBoYXQgbWljaCBzY2hvbgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBodWVwZmVuZGVuIEtudXRzY2hmaXNjaHNdIHdpZWRlciBrYWx0Z2VtYWNodCEKU2t5IHRlaWx0IERpciBtaXQ6IGFsdGVyIG1ldHpsZXIKRGFya3dpbmcgdGVpbHQgRGlyIG1pdDogS2lsbGVyCgppY2ggYmluIGRvY2ggbnVyIGVpbiBrbGVpbmVyIHp3ZXJnIGRlciBhYiB1bmQgenUgbWFsIHdlbiBoYXV0Li4uc28gbgpiaXNjaGVuLi4uCgpOZXZvaywgZ3Jvc3NlIHVuc2NodWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouIChWZWN0b3IsIDEwLiBKdWwgMTk5OSwgMDM6NDg6MjgpOgpbVHJ2ZXM6U2t5IGh1ZXBmdCB1bSBzZWluIDJ0ZW4gbWF4c2tpbGwgaGVydW0gPDAzOjQ0OjQxPl0KW1RydmVzOk5ldm9rXSBhbmdlYmVyIDopIDwwMzo0NDo0OT4KW1RydmVzOlNreV0gd2VubiBpY2ggYW5nZWJlbiB3b2xsdGUgd3VlcmQgaWNoIHNhZ2VuLCBkYXNzIGljaCBoZXV0ZSBhdWYgMTkKW1RydmVzOlNreV0gQmVmb2VyZGVydCB3b3JkZW4gYmluIHVuZCBncmFkIG1laW5lIFN0dWZlIGFiZ2V1ZWJ0IGhhYiA6KSkKW1RydmVzOlNreV0gPDAzOjQ1OjIxPgpbVHJ2ZXM6U2t5XSA6KSA8MDM6NDU6Mzc+CltUcnZlczpOZXZva10geWFkZGEgeWFkZGEgeWFkZGEgPDAzOjQ2OjAxPgpbVHJ2ZXM6U2t5XSBlaD8gPDAzOjQ2OjE3PgpbVHJ2ZXM6U2t5IGdyaW5zdF0KW1RydmVzOk5ldm9rXSBhbWVyaWthbmlzY2hlcyBhZXF1aXZhbGVudCBmdWVyIEJsYSBCbGEgQmthIDwwMzo0NjozNz4KW1RydmVzOk5ldm9rXSBhZWggYmxhIDspIDwwMzo0Njo0MT4KW1RydmVzOlNreV0gaGloaSA8MDM6NDY6NDU+Ci10cnZlcy0gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhpaGkgKFR3aW5zZW4sIDEwLiBKdWwgMTk5OSwgMTQ6MTU6MjMpOgpEZXIgT2JlcmF1ZnNlaGVyIHNjaHJlaXQ6IGpldHp0IHN0aXJiIHNjaG9uIGVuZGxpY2ghCiAgRHUgc2NobGFlZ3N0IGRlbiBPYmVyYXVmc2VoZXIgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KRGVyIE9iZXJhdWZzZWhlciBmYWVsbHQgd2llIGVpbiBCYXVtIHVtLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd293IGlzdCBkZXIgYm9lc2UgOikgKFB1aywgMTAuIEp1bCAxOTk5LCAxNDo0MDoxNyk6CgpXdXFvdXIgc2NobmlwcHQgbWl0IGRlbiBGaW5nZXJuIHVuZCBzYWd0OiBOdW4gYmlzdCBEdSBibGluZCB1bmQgdGF1YiB1bmQKRnJvc2NoIHVuZCB2ZXJnaWZ0ZXQsIENob2Nob3MuIEhhYiBTcGFzcy4KRHUgdHJpZmZzdCBlaW5lbiBGcm9zY2guCmVpbiBkYWVtb25pc2NoIGxhY2hlbmRlciBQdWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN1ZWNodGlnPyAoQmllbGVmZWxkLCAxMC4gSnVsIDE5OTksIDIwOjEwOjQzKToKW2ZoaXN0XQpbLi4uXQogICAgICAgICBOZWIgdm9tIDI5LiBKdW4gMTk5OSwgMTc6NDEgYmlzICA5LiBKdWwgMTk5OSwgMTE6MTAsIDIzM2ggMjltaW4KWy4uLl0KCkRhcyBnaWJ0IG1pciBkb2NoIHp1IGRlbmtlbi4uLiA7LSkKCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJvZXNlIFNwaWVsZXIgKExhbmZlYXIsIDEwLiBKdWwgMTk5OSwgMjE6MzE6MzcpOgogIEdpbGdhbWVzY2ggdHJpZmZ0IGRlbiBFbGZlbndhZWNodGVyIHNlaHIgaGFydC4KRGVyIEVsZmVud2FlY2h0ZXIgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KR2lsZ2FtZXNjaCBuaW1tdCBkYXMgTGFuZ3NjaHdlcnQuCkdpbGdhbWVzY2ggbmltbXQgZGVuIFBhbnplci4KR2lsZ2FtZXNjaCBuaW1tdCBkZW4gU2NoaWxkLgpHaWxnYW1lc2NoIG5pbW10IGRlbiBTY2hpbGQuCkdpbGdhbWVzY2ggbmltbXQgZGVuIFBhbnplci4KR2lsZ2FtZXNjaCBuaW1tdCBkYXMgTGFuZ3NjaHdlcnQuCkdpbGdhbWVzY2ggbmltbXQgMTYyIE11ZW56ZW4uCkdpbGdhbWVzY2ggbmltbXQgZGVuIFNjaGlsZC4KR2lsZ2FtZXNjaCBuaW1tdCBkZW4gUGFuemVyLgpHaWxnYW1lc2NoIG5pbW10IGRhcyBMYW5nc2Nod2VydC4KRWluZSBMZWljaGUgYnJpY2h0LCB2b24gZWluZW0gV2VpbmtyYW1wZiBnZXNjaHVldHRlbHQsIHp1c2FtbWVuLgoKCkltbWVyIHdlcmRlbiBkaWVzZSBhcm1lbiBMZWljaGVuIHNvIGF1c2dlbnV0enQuLi4KCgpMYW5mZWFyIC0gdHJvZXN0ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2llLCBoaWVyIGF1Y2g/IChXb29keSwgMTEuIEp1bCAxOTk5LCAwMDoyMDoxNCk6Cn4jISBybj1OZXZvayBydD05MzEyMDg5NjAgcmc9c2NobWFycm4KfiMhIHRpZD05MzEyMDg5NjAKPiBOZXZvaywgZGVyIHNpY2ggYmVpIGRlbSBHZWJyYXVjaCB2b24gJ2V0aG5pc2NoIGFuc3RvZXNzaWdlbSBWZXJoYWx0ZW4nCj4gdW5hbmdlbmVobSBhbiBwb2xpdGlzY2hlIEdlYmlsZGUgZGVyIHJlY2h0ZXJlbiBOYXR1ciBlcmlubmVydCBmdWVobHQuLi4KCkVoIGtsYXIuIEFuc3RhdHQgZGFzcyBtYW4gZGllc2VuIFR5cG8sIGRlciBnYW56IG9mZmVuc2ljaHRsaWNoIGJlaQpkZXIgVWViZXJzZXR6dW5nIGVudHN0YW5kLCBpbSB6dWdlaG9lcmlnZW4gTXVkIG1lbGRldCwgdW50ZXJzdGVsbHQKbWFuIGxpZWJlciBpbiBlaW5lbSBhbmRlcmVuIE11ZCBkZW0gQXV0b3IgUmVjaHRzbGFzdGlna2VpdC4gQWxzbwppY2ggZGVua2UgZGFzIHdhciBlaW4gemllbWxpY2hlciBHcmlmZiBpbnMgS2xvLgoKbGVpY2h0IHNhZXVlcmxpY2gsCndvb2R5Li0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2llLCBoaWVyIGF1Y2g/IChOZXZvaywgMTEuIEp1bCAxOTk5LCAwNzoxMzozMCk6Cn4jISBybj1Xb29keSBydD05MzE2NDUyMTQgcmc9c2NobWFycm4KfiMhIHRpZD05MzEyMDg5NjAKaG1tbW1tbSBhbHNvIGljaCB3ZWlzcyBuZXQgd2llIGlociBkYXMgaW0gU0wgaGFuZGhhYnQsIG9oIER1IEdvdHQgaW0gRXhpbCwKYWJlciBkYXMgaGllciBpcyBkaWUgc2NobWFycm4gUnVicmlrCgpGYWxscyBEdSBkYXMgdW50ZW5kcmFuIGF1Y2ggbWl0Z2VsZXNlbiBoYWV0dGVzdCBkdWVyZnRlc3QgRHUgbWl0Z2VrcmllZ3QKaGFiZW4sIGRhc3MgZGFzIHdvaGwgc28gZXJuc3QgbmV0IGdlbWVpbnQgd2FyCldlbm4gRHUgZGllc2UgQXJ0IEh1bW9yIG5pY2h0IHZlcnRyYWVnc3QgbGllcyBpbiBadWt1bmZ0IE9SREVOVExJQ0ggd2FzIER1CnNjaHJlaWJzdCwgdW5kIGdsZWljaCBkcmVpbWFsIHdlbm4gZXMgZXR3YXMgd2llIGVpbmUgR2VzZXR6Z2VidW5nIGlzdCBkZXJlbgpFcmZ1ZWxsdW5nL0FuZXJrZW5udW5nIER1IGZvcmRlcnN0LiBUeXBvcyB3aWUgZGllc2Uga29lbm5lbiBwYXNzaWVyZW4sIERVRVJGRU4KYmVpIHNvIGV0d2FzIGFiZXIgbmljaHQgc2Vpbi4gRGEgYmVpc3N0IGRpZSBNYXVzIGtlaW5lbiBGYWRlbiBhYi4KSmVkZW5mYWxscyBoYXN0IER1IGRpZSAnSWNoIG1vZWNodGUgZ2VybmUgZGllc2VuIE5hbWVuIGhhYmVuLCBrYW5uc3QgRHUgbWlyCmRlbiBDaGFyYWt0ZXIgZXJzY2hhZmZlbicgUG9saWN5IGdsdWVja2xpY2hlcndlaXNlIGFiZ2VzY2hhZmZ0LCBkaWUgaGFldHRlCm5vY2ggdmllbCBtZWhyIGluIFNjaG1hcnJuIGdlaG9lcnQuLi4KCk5ldm9rLCBkZXIgZ2xhdWJ0IGRhcyBtYW5jaGUgTGV1dGUgenUgdmllbCB6dSBlcm5zdCBuZWhtZW4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXaWUsIGhpZXIgYXVjaD8gKEFuYXRvbCwgMTEuIEp1bCAxOTk5LCAwNzoxNTo1Nik6Cn4jISBybj1OZXZvayBydD05MzE2NzAwMTAgcmc9c2NobWFycm4KfiMhIHRpZD05MzEyMDg5NjAKUmVnZWwgMTogTGVybmUsIHdpZSBtYW4gZWluIEJyZWl0c2Nod2VydCBmdWVocnQuClJlZ2VsIDI6IExlcm5lLCB3aWUgbWFuIGVpbmVuIERlZ2VuIGhhbmRoYWJ0LgpSZWdlbCAzOiBMZXJuZSwgd2FubiB3ZWxjaGUgSGFuZGhhYmUgYW5nZWJyYWNodCBpc3QuCgpIYXN0IG5vY2ggdmllbCB6dSBsZXJuZW4gOykKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdpZSwgaGllciBhdWNoPyAoTmV2b2ssIDExLiBKdWwgMTk5OSwgMDc6MjY6MjgpOgp+IyEgcm49QW5hdG9sIHJ0PTkzMTY3MDE1NiByZz1zY2htYXJybgp+IyEgdGlkPTkzMTIwODk2MApEdSBiZXRyYWNodGVzdCBkYXMgQnJlaXRzY2h3ZXJ0IGVpbmdlaGVuZC4KRXMgaXN0IGVpbmUgMi1IYW5kd2FmZmUgdW5kIGdlaG9lcnQgZGVyIEdydXBwZSBkZXIgS2xpbmdlbi1IaWVid2FmZmVuIGFuLiBFcwptYWNodCBzaWNoZXJsaWNoIGVpbmVuIHNlaHIgaG9oZW4gU2NoYWRlbi4gRXMgaXN0IG5pY2h0IGdlc2NoYWVyZnQuIEVzIGhhdAp1bmdlZmFlaHIgZWluIEdld2ljaHQgdm9uIDYwMDAgR3JhbW0uIER1IHd1ZXJkZXN0IHNlaW5lbiBXZXJ0IGF1ZiBldHdhIDYwMDAKTXVlbnplbiBzY2hhZXR6ZW4uIEVzIGlzdCBuaWNodCBiZXNjaGFlZGlndC4gRXMgaXN0IGVpbmUgaGVydm9ycmFnZW5kZSBXYWZmZQpmdWVyIEtyaWVnZXIuCgpEdSBiZXRyYWNodGVzdCBkYXMgUmFwaWVyIGVpbmdlaGVuZC4KRXMgaXN0IGVpbmUgMS1IYW5kd2FmZmUgdW5kIGdlaG9lcnQgZGVyIEdydXBwZSBkZXIgS2xpbmdlbi1TdGljaHdhZmZlbiBhbi4gRXMKbWFjaHQgZWluZW4gbGFlY2hlcmxpY2ggZ2VyaW5nZW4gU2NoYWRlbi4gR2VnZW4gYWVobmxpY2hlIFdhZmZlbiBpc3QgZXMgZWluZQpoZXJ2b3JyYWdlbmRlIFBhcmFkZXdhZmZlLCBsYWV1ZnQgYWJlciBHZWZhaHIgenUgemVyYnJlY2hlbiB3ZW5uIHNpZSBnZWdlbgpIaWVid2FmZmVuIGVpbmdlc2V0enQgd2lyZC4gRXMgaXN0IHNwaXR6IGdlc2NoYWVyZnQuIEVzIGhhdCB1bmdlZmFlaHIgZWluCkdld2ljaHQgdm9uIDMwMDAgR3JhbW0uIER1IHd1ZXJkZXN0IHNlaW5lbiBXZXJ0IGF1ZiBldHdhIDIwMDAgTXVlbnplbgpzY2hhZXR6ZW4uIEVzIGlzdCBuaWNodCBiZXNjaGFlZGlndC4gRXMgaXN0IGVpbmUga3VlbW1lcmxpY2hlIFdhZmZlIGZ1ZXIgZWluZW4KS3JpZWdlci4gRXMgaXN0IGVoZXIgd2FzIGZ1ZXIgWmF1YmVyZXJ3dWVyc3RlIHVuZCBhbmRlcmUgU2Nod2FlY2hsaW5nZS4KCgpEYXMgc2FndCBtZWluIFNjaGFldHpza2lsbCB1ZWJlciBkaWVzZSBiZWlkZW4gV2FmZmVuIGF1cyB1bmQgZGVyIGhhdCBzaWNoCmJpc2hlciBub2NoIG5pZSBnZWlycnQuCkRlc3dlaXRlcmVuIHNpbmQgZGllIGVpbnppZyB3YWhyZW4gV2FmZmVuIGZ1ZXIgWndlcmdlIHNvd2llc28gS2V1bGVuIHVuZApBZXh0ZS4gCk5vY2ggZnJhZ2VuPwoKTmV2b2ssIGRpZSB6d2VpaGFlbmRpZ2UgRG9wcGVsa29wZmF4dCBmdWVocmVuZAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdpZSwgaGllciBhdWNoPyAoQW5hdG9sLCAxMS4gSnVsIDE5OTksIDA3OjI3OjU2KToKfiMhIHJuPU5ldm9rIHJ0PTkzMTY3MDc4OCByZz1zY2htYXJybgp+IyEgdGlkPTkzMTIwODk2MAo+IE5ldm9rLCBkaWUgendlaWhhZW5kaWdlIERvcHBlbGtvcGZheHQgZnVlaHJlbmQKCkphLCBzcGllbCcgbGllYmVyIERvcHBlbGtvcGYuLi4gO28pCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3VlY2h0aWc/IChOZWIsIDExLiBKdWwgMTk5OSwgMTM6MTQ6MTcpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTkzMTYzMDI0MyByZz1zY2htYXJybgp+IyEgdGlkPTkzMTYzMDI0MwpXZW5uIGRpZXNlIE9ubGluZS1aYWVobHVuZyBfc29fIGJ1Z2d5IGlzLCBrYW5uIGljaCBtaXIgZW5kbGljaCBtZWluIGhvaGVzCkFsdGVyIGVya2xhZXJlbiA7KQoKTmViLCBhdG1ldCBhdWYgdW5kIGlzdCB3b2hsIGRvY2ggbmljaHQgc3VlY2h0aWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYW5kbGVyIG1hbCB3aWVkZXIgOykgKERhcmt3aW5nLCAxMS4gSnVsIDE5OTksIDEzOjE1OjI1KToKRWluIFdhbmRsZXIgc2NocmVpdDogV2VnIGhpZXIhCkRlciBXYW5kbGVyIHdhYmVydCBuYWNoIFdlc3Rlbi4KKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VnaGllciBzY2hvZW4gdW5kIGd1dCAoTmV2b2ssIDEyLiBKdWwgMTk5OSwgMDM6NDU6NDkpOgphYmVyIGRhcz8KU29yY2VyZXIgc2NocmVpdDogV2VnIGhpZXIhClNvcmNlcmVyIHZlcnNjaHdpbmRldCBuYWNoIFdlc3RlbiBpbnMgTmljaHRzLgpEdSBmb2xnc3QgRGVpbmVtIFRlYW0gbWl0ICJoaWxmZSB0ZWFta2FtcGYiLgoKCmFoIGpldHp0IGphLCBmbHVjaHRyaWNodHVuZyBoaWxmZSB0ZWFta2FtcGYgb2RlciB3aWUgb2RlciB3YXM/Pz8KCgpOZXZvaywgcmF0bG9zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcmRiZWJlbiA/IChNb3Jnb3RoLCAxMi4gSnVsIDE5OTksIDEwOjA3OjE4KToKRWluIGxhdXRlciBLbmFsbCBoYWxsdCB2b20gR2ViaXJnZSBoZXJ1ZWJlci4KTWFsYW50dXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgYWx0ZW4gWmVpdGVuLi4uIChBbmFraW4sIDEyLiBKdWwgMTk5OSwgMjE6MDk6MzQpOgoKV2VyIHNpY2ggbm9jaCBhbiBkaWUgYWx0ZW4gWmVpdGVuIGVyaW5uZXJ0IChzbyB1bSAxOTk2KSBkZXIga2FubgpqYSBtYWwgaGllciBzY2hhdWVuOgoKaHR0cDovL3d3d21hdGgudW5pLW11ZW5zdGVyLmRlL2luZm9ybWF0aWsvdS9wYWVobGVyL3Vuc2lubi9oeWRyYS5odG1sCgpBbmFraW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGZXVlcnRldWZlbCAoRGllZGVyLCAxMi4gSnVsIDE5OTksIDIxOjMxOjQzKToKTW9lcmRlcjpHZWlzdCBlaW5lcyBGZXVlcnRldWZlbHNdIFdpZWRlciBtYWwgYW4gRnJlaXRhZyBnZXN0b3JiZW4sIGZpbmQgaWNoCltNb2VyZGVyOkdlaXN0IGVpbmVzIEZldWVydGV1ZmVsc10gYWxiZXJuIQoKSG0sIGhldXRlIGlzIGRvY2ggTW9udGFnLi4uCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEVoZWZyYXUgMS4wIChHcmltbWJvcm4sIDEyLiBKdWwgMTk5OSwgMjI6NDY6MTQpOgp+IyEgb249SG9ibyBvdD05MzE3NzE0NDYgb2c9ZGlza3Vzc2lvbgp+IyEgcm49THVnIHJ0PTkzMTU0NTE4NCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTMxMzYzNDAxCkljaCBrYW5uIGFscyAnRW50c2NodWxkaWd1bmcnIG51ciBhbmJyaW5nZW46CkljaCB3b2xsdGUgbnVyLCBkYXNzIHdpciBhbGxlIHZvbSBzZWxiZW4gc3ByZWNoZW4hCgpDaWFvCiBIb2JvIC1uaWNodCBTTyBzZWhyIHNjaHVsZGJld3Vzc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEVoZWZyYXUgMS4wIChHcmltbWJvcm4sIDEyLiBKdWwgMTk5OSwgMjI6NDY6MTYpOgp+IyEgb249TWFoYXRtdSBvdD05MzE3NzU5OTcgb2c9ZGlza3Vzc2lvbgp+IyEgcm49SG9ibyBydD05MzE3NzE0NDYgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTkzMTM2MzQwMQpEZXIgU2NobHVzcywgZGFzcyBpbiBqZWRlciBFaGUgYXVjaCBTZXggYW4gZGVyIFRhZ2VzLSAob2RlciBXb2NoZW4tKW9yZG51bmcKaXN0LCBzY2hlaW50IG1pciBhYmVyIG1hZWNodGlnIHdlaXQgaGVyZ2Vob2x0IC0gZGFtaXQgYXVjaCBkaWUgd2VpdGVyZW4KU2NobHVlc3NlIGRlciBTb2RvbWllIGJlaSBFcnNhdHogdm9uIEZyYXUgZHVyY2ggVGllci4KSG9ib2NoZW4sIHdvaGVyIGtvbW1lbiBEZWluZSBzY2htdXR6aWdlbiBHZWRhbmtlbj8KCk1haGF0bXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEVoZWZyYXUgMS4wIChHcmltbWJvcm4sIDEyLiBKdWwgMTk5OSwgMjI6NDY6MTcpOgp+IyEgb249WmFybml5YSBvdD05MzE3NzYxNzkgb2c9ZGlza3Vzc2lvbgp+IyEgcm49TWFoYXRtdSBydD05MzE3NzU5OTcgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTkzMTM2MzQwMQphbHNvIGljaCB3ZWlzcyBzb3dpZXNvIG5pY2h0LCB3aWVzbyBoaWVyIGVpbmVyIEhvYm8gZXJuc3RuaW1tdCwgd2VubiBzaWUgd2FzCnVlYmVyLCBiencgZ2VnZW4gU29kb21pZSBzYWd0Li4uLiBuZSBGcmF1LCBkaWUgZXMgc2Nob24gc2VpdCBKYWhyZW4gbWl0IG5lbQpTdGVpbmJlaXNzZXIgdHJlaWJ0IDopIFNvd2FzIFNjaGVpbmhlaWxpZ2VzIGFiZXIgYXVjaCA6KQoKTWFyYwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEVoZWZyYXUgMS4wIChHcmltbWJvcm4sIDEyLiBKdWwgMTk5OSwgMjI6NDY6MTgpOgp+IyEgb249U2hhcmlhIG90PTkzMTc3NjMwNCBvZz1kaXNrdXNzaW9uCn4jISBybj1aYXJuaXlhIHJ0PTkzMTc3NjE3OSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTMxMzYzNDAxCnVuZCBub2NoIGJlc3NlcjogCmZnIGhvYm8KSG9ibyBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogUGZvcnpoZWltLgouLi4uClZlcmhlaXJhdGV0IG1pdDogQm9pbmcKLi4uClZvcmZhaHJlOiAgICAgQm9pbmcKCgp3YXMgc29sbCBtYW4gZGEgbm9jaCB6dSBzYWdlbiAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBFaGVmcmF1IDEuMCAoR3JpbW1ib3JuLCAxMi4gSnVsIDE5OTksIDIyOjQ2OjE5KToKfiMhIG9uPUhvYm8gb3Q9OTMxNzc2MzYwIG9nPWRpc2t1c3Npb24KfiMhIHJuPVNoYXJpYSBydD05MzE3NzYzMDQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTkzMTM2MzQwMQpXb2JlaSBpY2ggYW5tZXJrZW4gbW9lY2h0ZSwgZGFzcyB3aXIgRVJTVCB2ZXJoZWlyYXRldCB3YXJlbiwgYmV2b3IgZXIgbWVpbgpQYXBhIHd1cmRlLiBBbHNvIGlyZ2VuZHdpZSBrZWluIEluemVzdC4uLgoKICBIb2JvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogRWhlZnJhdSAxLjAgKEdyaW1tYm9ybiwgMTIuIEp1bCAxOTk5LCAyMjo0NjoyMCk6Cn4jISBvbj1NYWhhdG11IG90PTkzMTc3NjQ2NCBvZz1kaXNrdXNzaW9uCn4jISBybj1Ib2JvIHJ0PTkzMTc3NjM2MCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTMxMzYzNDAxCkllZWVoLCBJbnplc3Qgdm9uIGhpbnRlbiAuLi4KCk1haGF0bXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBFaGVmcmF1IDEuMCAoR3JpbW1ib3JuLCAxMi4gSnVsIDE5OTksIDIyOjQ2OjIxKToKfiMhIG9uPUhvYm8gb3Q9OTMxNzc2NjAyIG9nPWRpc2t1c3Npb24KfiMhIHJuPU1haGF0bXUgcnQ9OTMxNzc2NDY0IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05MzEzNjM0MDEKTmFjaGRlbSBkYXMgaGllciBrZWluZSBEaXNrdXNzaW9uIHdpcmQsIHNvbGx0ZW4gd2lyIHZpZWxsZWljaHQgbmFjaCBzY2htYXJybj8gCiBIb2JvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogRWhlZnJhdSAxLjAgKEdyaW1tYm9ybiwgMTIuIEp1bCAxOTk5LCAyMjo0NjoyMik6Cn4jISBvbj1aYXJuaXlhIG90PTkzMTc3NjcyNCBvZz1kaXNrdXNzaW9uCn4jISBybj1Ib2JvIHJ0PTkzMTc3NjYwMiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTMxMzYzNDAxCmhtbSBpY2ggZGVua2UsIGRhIHNvbGx0ZW4gd2lyIG1hbCBkcnVlYmVyIGRpc2t1dGllcmVuLCBkZW5uIGR1Y2ggZGFzIHdlY2hzZWxuCm5hY2ggc2NobWFycm4gcmVpc3NlbiB3aXIgaGllciBuaWNodCBudXIgZGVuIEZhZGVuIGFiLCBzb25kZXJuIGdlZmFlcmRlbiBhdWNoCkdyaW1tYm9ybnMgSm9iLiBJY2ggZGVua2UgYW5nZXNpY2h0cyBkZXMgaGV1dGlnZW4gQXJiZWl0c21hcmt0ZXMgaXN0IGRhcyBuY2lodAp6dSB2ZXJhbnR3b3J0ZW4uCgpNYXJjCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogRWhlZnJhdSAxLjAgKEdyaW1tYm9ybiwgMTIuIEp1bCAxOTk5LCAyMjo0NzowMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTMxODEyMzgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxMzYzNDAxCkluIGRlciBUYXQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhZWghIChBbmF0b2wsIDEyLiBKdWwgMTk5OSwgMjI6NDg6MjApOgpEZXZpbGNoZW4ga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgo+IHJodWUgZGV2aWxjaGVuCkRldmlsY2hlbi0+QW5hdG9sIGh1ZXBmdCBhdXMgZGVyIEZlcm5lIHVtIERpY2ggaGVydW0uCltUb2Q6TGFyc10gTWVpbmUgR2FzdGZyZXVuZGxpY2hrZWl0IGhhdCBnZXJhZGUgRGV2aWxjaGVuIHVtZ2VicmFjaHQuCgpBbmF0b2wgLSBodWVwZnQgbnVyIG5vY2ggZ2FhYWFhYWFueiB2b3JzaWNodGlnICpzZXVmeioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllIGFsdGVuIFplaXRlbi4uLiAoVHJ1ZywgMTIuIEp1bCAxOTk5LCAyMjo1MTowMik6Cn4jISBybj1BbmFraW4gcnQ9OTMxODA2NTc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxODA2NTc0CkNvb2wsIGVpbmUgU25pY2tlcnMtaHlkcmEgOikpCgpUcnVnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJhdWVuIC4uLiAoQW5hY3Jpb24sIDEzLiBKdWwgMTk5OSwgMDM6MTk6MDEpOgpNaXJqYW0gd2lua3QgRGlyIGF1cyBkZXIgRmVybmUgenUuCkRlaW5lIFNjaHVoZSBnbHVlaGVuIGt1cnogYXVmIHVuZCBoZWlsZW4gRGljaCBlaW4gd2VuaWcuCgp3b3cuIApEdSBrYW5uc3QgbWlyIGR1Y2hnYWVuZ2lnIHdpbmtlbiA6KSkKCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXaWUsIGhpZXIgYXVjaD8gKFllbmRpLCAxMy4gSnVsIDE5OTksIDE0OjA2OjQ0KToKfiMhIHJuPU5ldm9rIHJ0PTkzMTY3MDc4OCByZz1zY2htYXJybgp+IyEgdGlkPTkzMTIwODk2MApFaW4gQnJlaXRzY2h3ZXJ0IHZvbiA2IEtpbG8/Pz8KKnNjaGx1Y2sqCk9LLCBkYW1pdCBrYW5uIGljaCBtaWNoIG5vY2ggYW5mcmV1bmRlbi4gSXN0IGphIGVpbiBCaWhhZW5kZXIuCgpBYmVyIGVpbiBfUmFwaWVyXyB2b24gX2RyZWlfIEtpbG8/IFdlbGNoZSAiWmF1YmVyZXJ3dWVyc3RlIHVuZCBhbmRlcmUKU2Nod2FlY2hsaW5nZSIgaGFiZW4gZGVubiBlaW4gSGFuZGdlbGVuaywgd2VsY2hlcyBlcyBpaG5lbiBlcmxhdWJ0LCBtaXQgZWluZW0KX2RyZWktS2lsby1SYXBpZXJfIHp1IF9mZWNodGVuXz8/PwoKSXJyaXRpZXJ0LAogICAgICAgICAgIFllbmRpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFsIHdpZWRlci4uLiA6KSAoTmljaHRzLCAxMy4gSnVsIDE5OTksIDE0OjI3OjM5KToKLi4uCkNjOiAqVU5HVUVMVElHRVIgTkFNRTogamEuICosIEVzLCBNYW4sIExlcm50LCBEYWJlaSwgQWJlciwgSGVydW1zdWNoZW4sIFp1bSwKVmllbCwgR3V0LCBHYW56LCBGYW5zLCBCYXNlYmFsbCwgKlVOR1VFTFRJR0VSIE5BTUU6IGZyICosICpVTkdVRUxUSUdFUiBOQU1FOgpwcm9ibGVtLiAqLCAqVU5HVUVMVElHRVIgTkFNRTogcGVyc25saWNoZXMgKiwgRWluLCBXb2hsLCBKYSwgSXN0LCBEYXMsIEFiZXIsCkJhc2ViYWxsLCBBbHMsIEhhc3NlLCBNZWhyLCBOaWNodHMsIEljaCwgV2VpbCwgR2VmYWxsZW4sIE5pY2h0LCBNaXIsIEhhdApEYXR1bTogTWl0LCAyMy4gSnVuIDE5OTksIDEwOjI1OjI3CgpVcHMgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2FtcGZsb2dpayA6LSkgKEdyaW1tYm9ybiwgMTMuIEp1bCAxOTk5LCAxNjoyMzoxMyk6Cn4jISBybj1UYXJhZ29uIHJ0PTkzMTg3NDk1MyByZz1zY2htYXJybgp+IyEgdGlkPTkzMTg3NDk1MwpXaWVzbyBiaXR0ZSBzb2xsdGUgamVtYW5kIERlaW4ga2FwdXR0ZXMgdGYgbmFjaGJlc3Nlcm4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEthbXBmbG9naWsgOi0pIChHcmltbWJvcm4sIDEzLiBKdWwgMTk5OSwgMTY6NDU6MDIpOgp+IyEgcm49VGFyYWdvbiBydD05MzE4NzY0Mjcgcmc9c2NobWFycm4KfiMhIHRpZD05MzE4NzQ5NTMKQWxzbywgZGEgc3RlaHQgaW4gQmV6dWcgYXVmIEdlZ25lciBudXIgd2FzIG1pdCBibG9zc2VyIERlY2t1bmcsIGRhbmFjaCBlaW5lClplaWxlIGthcHV0dGVzIHRmLgoKVW5kIHdlbm4gRHUgRGVpbmUgTWVpbnVuZyBkdXJjaHNldHp0IHdpcnN0IER1IHNpY2hlciBiZWkgbmFjaHRha3RpdmVuCkluc2VrdGVuLCBkaWUgU3RyZXNzIG1pdCBGbGVkZXJtYWV1c2VuIGhhYmVuLCB6aWVtbGljaCBwb3B1bGFlci4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa29taXNjaGUgTGV1dGUgZ2lidHMgKEhpYmJlbGlnLCAxMy4gSnVsIDE5OTksIDE5OjUwOjU5KToKRWluZSBPcmtnYWxlZXJlLgpFaW4gUGFwYWdlaSBuYW1lbnMgSW5lcy4KR3dlbmRvbGluIGRpZSBXYWZmZW5sb3NlLgpbVGVhbTpTYW5pdG9ldGVyXSBGZXkgQW5hY3Jpb24uCkluZXMga3JhZWNoenQ6IC4uLiBkZXIgRHVyY2hzY2huaXR0IGF1cy4gQWJzb2x1dCBnZXNlaGVuIGJpc3QgLi4uIGRlcgpJbmVzIGtyYWVjaHp0OiBEdXJjaHNjaG5pdHQgYXVzLiBBYnNvbHV0IGdlc2VoZW4gYmlzdCAuLi4gCkFuYWNyaW9uIHRyaXR0IEluZXMuCkluZXMgYmVnaW5udCBhdWZnZXJlZ3QgcnVtenVmbGF0dGVybiB1bmQgcnVtenVrcmFlY2h6ZW4uCkVyIHNjaGxhZWd0IEFuYWNyaW9uIGVpbiBwYWFyIG1hbCBtaXQgc2VpbmVuIEZsdWVnZWxuIGlucyBHZXNpY2h0IHVuZAprcmFlY2h6dCAnTGFzcyBkYXMgLi4uIGtycnJvb2FhYScuCkR1IHRlaWxzdCBBbmFjcmlvbiBtaXQ6IGljaCBmcmFnIG1pY2gsIHdhcyBkaWUgaGllciBydW1zdGVodCA/IGRpZSBpZGxldCBqYQpEdSB0ZWlsc3QgQW5hY3Jpb24gbWl0OiBuaWNoIG1hbApEdSBzcHJpbmdzdCBJbmVzIGFuIHVuZCBmYWVuZ3N0IGFuLCBpaG4genUgd3Vlcmdlbi4KRHUgc2Fnc3Q6IGJsb2VkZXIgcGFwYWdlaQpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgR3dlbmRvbGluLgpJbmVzIGhhdXQgYWIuCkFuYWNyaW9uIHRlaWx0IERpciBtaXQ6IHNvb28gc2NobmVsbCA/IFsxOTozOF0KRHUgd2FlbHp0IERpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgpBbmFjcmlvbiBzYWd0OiAgYWggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmF1IHdlaWEgOikgKE1vb25ibGFkZSwgMTMuIEp1bCAxOTk5LCAyMDo0Njo0NCk6CkhlbGxmbGVjayBrb256ZW50cmllcnQgc2ljaC4KWmFwaG9iIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBaYXBob2IuCgooZ2VmYWVocmxpY2hlIGZyYXUgOikKCk1vb25ibGFkZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthcmwgRnJpdHNjaCBtYWwgd2llZGVyLi4uIChBbWFyeWxsaXMsIDEzLiBKdWwgMTk5OSwgMjM6MTk6NTgpOgp+IyEgcm49TmV2b2sgcnQ9OTMxODk4ODM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxODk4ODM3CipCUlVFTEwqCgptYW4gYmVhY2h0ZSBhdWNoIGRpZSBzZWl0ZQpmZWVkYmFjay5odG0KYXJiZWl0Lmh0bQoKamV0enQgbWFsIHZvbSBEZXNpZ24gZXRjLiBhYmdlc2Vobi4uLiBhdWYgd2VsY2hlciBXZWx0IGxlYnQgZGVyIFR5cAplaWdlbnRsaWNoPz8/CgpBbWFyeWxsaXMsIGVyc2NodWV0dGVydCA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2FybCBGcml0c2NoIG1hbCB3aWVkZXIuLi4gKEFtYXJ5bGxpcywgMTMuIEp1bCAxOTk5LCAyMzoyNToxMSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9OTMxOTAwNzk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxODk4ODM3Cipyb3RmbCogaWNoIG11c3MgZG9jaCBub2NoIHdhcyBuYWNoc2NoaWViZW4sIG1pY2ggdmVycmVpc3N0cyBiZWluYWhlLi4uCnNjaGF1dCBFdWNoIF91bmJlZGluZ3RfIHNlaW4gZGV1dHNjaGVzIEdhZXN0ZWJ1Y2ggYW4gOikpCgpBbWFyeWxsaXMsIHNpY2ggZGVuIEJhdWNoIHZvciBMYWNoZW4gaGFsdGVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkt1ZWhsc2NocmFuayBvZGVyIGVoZXIgS3VlaGxoYXVzPyAoV2ltLCAxNC4gSnVsIDE5OTksIDAzOjIzOjU2KToKU3BpZWxlciAgICAgIElkbGV0aW1lICAgICAgV2VnbWVsZHVuZwooLi4uKQpNY3dvbGYuLi4uLi4uWzBkLDAyOjE2OjA1XSBlc3NlbiBpbiBrdWVobHNjaHJhbmsgcmFldW1lbgooLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthcmwgRnJpdHNjaCBtYWwgd2llZGVyLi4uIChKYXNwZXIsIDE0LiBKdWwgMTk5OSwgMDQ6Mzg6MDQpOgp+IyEgcm49TmV2b2sgcnQ9OTMxODk4ODM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxODk4ODM3CmphdSBpc3Qgd2lya2xpY2gga2xhc3NlIDopCj4oRGllIEZhbnMgYXVzIE5vcndlZ2VuOiAiS2FybCBGcml0c2NoOiBUaGUgR29kIG9mCj5ibGlua2luZyBnaWZzIG5lZWRzIHdvcmsgcGxlYXNlIGhpcmUgaGltIGJlZm9yZSBoZSBtYWtlcyBzb21lIG1vcmUiKSAKCgpKYXNwZXIgbWl0IG1pbHpyaXNzICpwcnVzdCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLdWVobHNjaHJhbmsgb2RlciBlaGVyIEt1ZWhsaGF1cz8gKExpYXJhLCAxNC4gSnVsIDE5OTksIDA1OjIyOjM4KToKfiMhIHJuPVdpbSBydD05MzE5MTU0MzYgcmc9c2NobWFycm4KfiMhIHRpZD05MzE5MTU0MzYKTWN3b2xmIGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiA8VW5iZWthbm50Pi4KUGFzc2l2IHNlaXQ6IDA0OjEzOjA1CkVpbmdlbG9nZ3Qgc2VpdDogU29uLCAxMS4gSnVsIDE5OTksIDIzOjExOjAzClZvbGxlciBOYW1lOiBNY1dvbGYgClJhc3NlOiBNZW5zY2gsICBHaWxkZTogWmF1YmVyZXIsICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKQWx0ZXI6IDI2ZCAwNDoxODowNCwgICBTcGllbGVybGV2ZWw6IDM1IChTZWhlciksICAgR2lsZGVubGV2ZWw6IDUKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogRG9uLCAxMC4gRGV6IDE5OTgsIDA1OjI1OjE3CnouWi4gYWJ3ZXNlbmQsIEdydW5kICA6IGVzc2VuIGluIGt1ZWhsc2NocmFuayByYWV1bWVuCkJpc2hlciBiZXJlaXRzIDExIG1hbCBnZXN0b3JiZW4KCkxpYXJhLCB0aXBwdCBhdWYgS3VlaGxpbXBlcml1bSAqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2FybCBGcml0c2NoIG1hbCB3aWVkZXIuLi4gKEd1aWxkbywgMTQuIEp1bCAxOTk5LCAwOToxOToyOSk6Cn4jISBybj1KYXNwZXIgcnQ9OTMxOTE5ODg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxODk4ODM3CgpHb2V0dGxpY2ghISEKSGFidCBJaHIgRXVjaCBtYWwgc2VpbmUgQnVuZGVzd2Voci1Gb3RvcyBhbmdlc2VoZW4/IChEZXIgbGluayBpc3QgbGlua3MgbmViZW4KZGVtIG1pdCBkZW0gQXJiZWl0c2FtdC4pCgpHdWlsZG8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLYXJsIEZyaXRzY2ggbWFsIHdpZWRlci4uLiAoS2FybGZyaXRzY2gsIDE0LiBKdWwgMTk5OSwgMDk6Mjg6MDcpOgp+IyEgcm49TmV2b2sgcnQ9OTMxODk4ODM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxODk4ODM3CkFjaCBsYXNzdCBtaWNoIGRvY2ggYWxsZSBpbiBydWhlLi4uaWhyIHNlaWQgamEgbnVyIG5laWRpc2NoLi4uLi4KCkVpbiBnZW5lcnZ0ZXIgS2FybAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3VjaGUgQXJiZWl0ISAoS2FybGZyaXRzY2gsIDE0LiBKdWwgMTk5OSwgMDk6NDE6MjkpOgpIYWxsbyBoaWVyIGlzdCBLYXJsLAoKaGllcm1pdCBtb2VjaHRlIGljaCBtaWNoIG9mZml6aWVsbGwgYmVpbSBNR19WZXJlaW4gYmV3ZXJiZW4uIEljaCBrb2VubnRlIGRpZQpHZXN0YWx0dW5nIGRlciBNRy1Ib21lcGFnZSB1ZWJlcm5laG1lbi4gRGllIGlzdCBlaCB2aWVsIHp1IGxhbmd3ZWlsaWcuCkljaCBoYWJlIHNlaHIgdmllbCBFcmZhaHJ1bmcgaW0gcHJvZ3JhbWllcmVuIHVuZCBtYW4ga2FubiBtZWluZQpoZXJycmF1c3NyYWdlbmRlbiBGYWVoaWdrZWl0ZW4gYXVmIG1laW5lciBIb21lcGFnZSBiZXd1bmRlcm4uLi4KCk1pdCBmcmV1bmRsaWNjaGVuIEdydXVlc3NzZW4KCkthcmwgRnJpdHNjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN1Y2hlIEFyYmVpdCEgKE5vdmFzdG9ybSwgMTQuIEp1bCAxOTk5LCAwOTo0MTo1Myk6Cn4jISBybj1LYXJsZnJpdHNjaCBydD05MzE5MzgwODkgcmc9c2NobWFycm4KfiMhIHRpZD05MzE5MzgwODkKKmh1c3QqCgogIE5vdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJlc2Nod29lcnVuZz8gKEZvb2JhciwgMTQuIEp1bCAxOTk5LCAxMjowMzowMSk6CkR1IHNhZ3N0OiBsaXJ1bSBsYXJ1bSBsb2VmZmVsc3RpZWwKVW5hc2FpICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpGb29iYXIgLSBwcm9iaWVydCBkYXMgamV0enQgb2VmdGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN1Y2hlIEFyYmVpdCEgKEFtYXJ5bGxpcywgMTQuIEp1bCAxOTk5LCAxMjo1Njo0MCk6Cn4jISBybj1LYXJsZnJpdHNjaCBydD05MzE5MzgwODkgcmc9c2NobWFycm4KfiMhIHRpZD05MzE5MzgwODkKKndhZWx6KiBpc3QgZGFzIERlaW4gRXJuc3Q/IE1pciB0dW4gamV0enQgbm9jaCBkaWUgQXVnZW4gd2VoLi4uCgpBbWFyeWxsaXMsIHNjaG9ubWFsIG5lbiBUZXJtaW4gYmVpbSBPcHRpa2VyIGhvbGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdWNoZSBBcmJlaXQhIChLYXJsZnJpdHNjaCwgMTQuIEp1bCAxOTk5LCAxMjo1ODozMik6Cn4jISBybj1BbWFyeWxsaXMgcnQ9OTMxOTQ5ODAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxOTM4MDg5Ckphd29obCwgZGFzIGlzdCBtZWluIGVybnN0Li4uIApJY2ggYmluIEtVTFQhCgpLYXJsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdWNoZSBBcmJlaXQhIChBbWFyeWxsaXMsIDE0LiBKdWwgMTk5OSwgMTM6MDY6NDUpOgp+IyEgcm49S2FybGZyaXRzY2ggcnQ9OTMxOTQ5OTEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxOTM4MDg5CndpZXNvIGhhYiBpY2ggZGEgbnVyIG1laW5lIFp3ZWlmZWwgZGFzcyBEdSBkZXIgZWNodGUgSy5GLiBiaXN0PwoKTmFqYSwga2VpbiBrb21tZW50YXIgbWVociwgbG9obnQgbmVkLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3VjaGUgQXJiZWl0ISAoS2FybGZyaXRzY2gsIDE0LiBKdWwgMTk5OSwgMTM6MTA6MjcpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTkzMTk1MDQwNSByZz1zY2htYXJybgp+IyEgdGlkPTkzMTkzODA4OQpBYWFhYWFhaGhoaGhoaCwgbmF0dWVybGljaCBiaW4gaWNoIGRlciBFQ0hURSBLYXJsIEZyaXRzY2guLi4uLkRhcyBzaWVoc3QgRHUKZG9jaCBhbiBtZWluZW0gTmFtZW4uLi4KCkF1c3NlcmRlbTogS2FybCBGcml0c2NoIGlzdCB1ZWJlcmFsbC4uLi4uLi4KCkt1bHQgS2FybAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaW50ZXJlc3NhbnQuLi4gKEd1aWxkbywgMTQuIEp1bCAxOTk5LCAxMzoyNTo0MSk6CgpFYmVuIGltIEdsb2NrZW53YWxkOgoKU2hvcmthbiBtdXJtZWx0OiAiSWxsdWh4aW8gZnVsaHJheHRyaiB3aHUhIiB1bmQgaHVlcGZ0IGhlcmVpbi4KQWxpcmlvbiBsYWVzc3QgZGVuIEd1ZXJ0ZWwgZmFsbGVuLgoKCk5vIGNvbW1lbnQsCkd1aWxkbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS2FybCBGcml0c2NoIG1hbCB3aWVkZXIuLi4gKEJhbWJ1bGtvLCAxNC4gSnVsIDE5OTksIDEzOjMzOjE4KToKfiMhIHJuPUd1aWxkbyBydD05MzE5MzY3Njkgcmc9c2NobWFycm4KfiMhIHRpZD05MzE4OTg4MzcKQWVoLCB3YXMgZnVlciBlaW4gTWlkaS1zdHVlY2sgd2lyZCBkYSBlaWdlbnRsaWNoIGFiZ2VzcGllbHQuLi5pY2ggaGFiZSBoaWVyCmxlaWRlciBrZWluZSBTb3VuZGthcnRlLi4uCgoKQmFtYm51bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdWNoZSBBcmJlaXQhIChIb2JvLCAxNC4gSnVsIDE5OTksIDE2OjEwOjM4KToKfiMhIHJuPUthcmxmcml0c2NoIHJ0PTkzMTk0OTkxMiByZz1zY2htYXJybgp+IyEgdGlkPTkzMTkzODA4OQpXZW5uIGhpZXIgZWluZXIgS1VMVCBpcywgZGFubiBpcyBkYXMgS3VydCBtaXRtIFRSZWNrZXIhCgogSG9ibwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3VjaGUgQXJiZWl0ISAoR3JlbGxnZW4sIDE0LiBKdWwgMTk5OSwgMTY6MjE6MDUpOgp+IyEgcm49S2FybGZyaXRzY2ggcnQ9OTMxOTUwNjI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxOTM4MDg5Ck5hbWVuIHNpbmQgaGllciBTY2hhbGwgdW5kIFJhdWNoLi4uCm1hbiB6d2VpZmVsdCBoYWx0IGFuIGRlciBFeGlzdGVueiBiencuIGFtIFZlcnN0YW5kIGVpbmVzIExlYmV3ZXNlbnMsIGRhcyBzaWNoCnNlbGJzdCBhbHMgS3VsdCwgc3VwZXJ0b2xsIHVuZCBhbGxnZWdlbndhZXJ0aWcgYmV6ZWljaG5ldC4KCkljaCBrYW5uIGRhIG51ciBkcnVlYmVyIGxhY2hlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBwYXNzaWVydCBhbHMgbmFlY2hzdGVzPyAoVHJ1ZywgMTQuIEp1bCAxOTk5LCAxNzo0NTo0OSk6CkR1IGJpc3QgYmxpbmQgIQpEZWluIEdlbGRiZXV0ZWwgaXN0IGxlaWNodGVyIGdld29yZGVuLgpEdSBtZXJrc3QsIHdpZSBzaWNoIGRlciBXdXJ6ZWxzYWZ0IGF1ZmxvZXN0LgoKLi4uIGhtICJEZXIgbWFnaXNjaGUgUnVlY2tzY2hsYWcgaGF1dCBEaWNoIHVtLiI/Pz8KClRydWcgOikKClBTOiBBY2ggRGllIFNjaHV0emh1ZWxsZSB1bmQgZGllIFhoYW5kIGhhdCBzaWNoIGF1Y2ggZ3JhZCBub2NoIGF1ZmdlbG9lc3QuCkthbm4gbnVyIHNjaGxlY2h0ZXJeaF5oXmheaF5oXmheaF5oYmVzc2VyIHdlcmRlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IHNlbWluYXIgKEFuYXRvbCwgMTQuIEp1bCAxOTk5LCAxODoyMTozNyk6Cn4jISBvbj1BbmF0b2wgb3Q9OTMxOTY5MjkxIG9nPXBhcnR5Cn4jISBybj1NdWFkaWIgcnQ9OTMxOTU4MzY3IHJnPXBhcnR5Cn4jISB0aWQ9OTMxODIzNjM4CldpZSB3YWVyZSBlcyBtaXQgZWluZW0gS3VyenJlZmVyYXQgdWViZXIgZGllIGZlaW5lbiBVbnRlcnNjaGllZGUKendpc2NoZW4gInRyeW4iIHVuZCAiZHJlaWMiIHVuZCBkaWUgQXVzd2lya3VuZ2VuIGF1ZiBFIHVuZCBHPwoKT2RlciB1ZWJlciBlaW53biAtIGdvZXR0bGljaGVuIC0gVm9ydHJhZyB1ZWJlciBNdWRwb2xpdGlrLCBFaW5zYXR6CnZvbiBub2NoIG5pZSBhbmdld2VuZGV0ZW4gInVlYmxpY2hlbiBCZXN0cmFmdW5nZW4iIHVuZCBzb2dlbmFubnRlcgoiRXJ6bWFnaWVyZGVtb2tyYXRpZSI/CgpBbmF0b2wgLSBrYW5uJ3Mgbm9jaCBuaWNodCBsYXNzZW4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmYWxzY2hlcyBzY3JpcHQ/IChWZWN0b3IsIDE0LiBKdWwgMTk5OSwgMTk6Mzc6MzYpOgpIZXJvTWNGbHkgd2lua3QuCkthcmFrIGdlaHQgbmFjaCBXZXN0ZW4uCkRpZSBBcnp0aGVsZmVyaW4gZ2VodCBuYWNoIFdlc3Rlbi4KTm9ldmFsIGdlaHQgbmFjaCBXZXN0ZW4uCkRlciBLb2NoIGdlaHQgbmFjaCBXZXN0ZW4uCktsb2lyZW4gRWlzZW5oZWxtIGdlaHQgbmFjaCBXZXN0ZW4uClRyaW5hIGdlaHQgbmFjaCBXZXN0ZW4uCkdyYW1kYWxhIFpvcmtrZWxiYSBnZWh0IG5hY2ggV2VzdGVuLgpIdXpydWNrIGdlaHQgbmFjaCBXZXN0ZW4uCkhvZ28gZ2VodCBuYWNoIFdlc3Rlbi4KSG9uZGFtIFVudGVyZmVscyBnZWh0IG5hY2ggV2VzdGVuLgpCdWxyaWsgVGhvcmFuIGdlaHQgbmFjaCBXZXN0ZW4uCkxleWlkYXMgZ2VodCBuYWNoIFdlc3Rlbi4KQnJpZXNlbHRyaW0gZ2VodCBuYWNoIFdlc3Rlbi4KSGVyb01jRmx5IGZsaWVndCBuYWNoIFdlc3Rlbi4KRGllcyBzY2hlaW50IGRlciBWZXJzYW1tbHVuZ3NyYXVtIGRlciBUcnZlcyB6dSBzZWluOiBEdSBlcmtlbm5zdCBhbiBzZWluZW0KTm9yZGVuZGUsIHdvIGRlciBCb2RlbiBlaW5lIFN0dWZlIGVyZmFlaHJ0LCBlaW4gbGVpY2h0IGVyaG9laHRlcyBSZWRuZXJwdWx0IGFuCmRlbSBlaW4gUGxha2F0IGhhZW5ndC4gQW5zb25zdGVuIGlzdCBkZXIgZ3Jvc3NlIFJhdW0gZmFzdCB2b2VsbGlnIGxlZXIuIApFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogd2VzdGVuLgpbVGVhbTpGZXVlcnp3ZXJnXSBFaW4gYnJlbm5lbmRlciBLYXJpYyBzY2hhbHRldCBTY2htZXJ6IGFiLgpEb2RlcmljLCBrbGVpbiB1bmQgaGFybWxvcy4KRGFya3dpbmcgc2FndDogTm8gUmlzayAtIE5vIEZ1bi4KQXNoYW4gZGllIFNlaGVyaW4uCk1pcmphbSBkaWUgZWluZmFjaGUgU29sZGF0aW4uCkhpbnRlciBMaXN0IGRlciBTdGFuZG9ydGFlbHRlc3RlLgpbVHJ2ZXM6QW5hdG9sXSBOaWNodHMgbWFjaHQgd2lya2xpY2ggZ2x1ZWNrbGljaC4KW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbCBoYXQgZ2VyYWRlIEhlcm9tY2ZseSB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGZhbHNjaGVzIHNjcmlwdD8gKEhlcm9tY2ZseSwgMTQuIEp1bCAxOTk5LCAxOTo0NzozNSk6Cn4jISBybj1WZWN0b3IgcnQ9OTMxOTczODU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMxOTczODU2CmljaCBzY3JpcHRlIG5pY2h0IGljaCBiaW4gZWluZmFjaCBudXIgc2NobmVsbCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGFwYWdlaWVuIC4uLiAoTWlyamFtLCAxNS4gSnVsIDE5OTksIDA2OjQwOjAxKToKRWluIHNjaGFlYmlnZXIga2xlaW5lciBTY2huZWxsaW1iaXNzLCB3aWUgbWFuIGlobiBoYWV1ZmlnIGluIGRlciBOYWVoZSB2b24KSGF1cHR2ZXJrZWhyc3dlZ2VuIGZpbmRldC4gRWluZSBtdWVycmlzY2hlIHVuZCBzY2hsZWNodCBiZXphaGx0ZSBBdXNoaWxmc2tyYWZ0CnN0ZWh0IGhpbnRlciBkZXIgVGhla2UuIEltIE9zdGVuIGdlaHQgZXMgenUgZGVuIFRvaWxldHRlbi4gCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3RlbiB1bmQgbm9yZGVuLiAKRWluZSBNYXVzIG5hbWVucyBTbW9lcmVicm9lZC4KRWluIFBhcGFnZWkgbmFtZW5zIEJhY2FyZGkuCkVpbiBQYXBhZ2VpIG5hbWVucyBHZW5vY2lkZS4KR3JpbnVyIGRlciBQcnVlZnVuZ3NhbndhZXJ0ZXIuClp3ZXJnZW56YXViZXJpbmUgTGlhcmEuCltUZWFtOlphdWJlcnNvY2tlXSBTdHJvaGFsbSBwZmx1ZWNrdCBHYWVuc2VibHVlbWNoZW4uCkVpbiBlaW5hcm1pZ2VyIEJhbmRpdC4KRGllIFRvcC1MaXN0ZSwgVG9wLVNwaWVsZXJsaXN0ZSB1bmQgVG9wLVNlaGVybGlzdGUuCkVpbiBLYXR6ZW5rb3JiLgpCYWNhcmRpIGtyYWVjaHp0OiBTdHJvaGFsbSBpc3QgZG9vZiAuLi4gQmFjYXJkaSBpc3Qgc2NobGF1IC4uLiBrcnJyb29vYWFhCkdlbm9jaWRlIGtyYWVjaHp0OiAuLi4gYmFjYXJkaSBzY2huYXV6ZSA6LSkgLi4uIGtycnJvb2FhYSEgCgpMaWFyYSwgbGFjaGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbWVpbiBUZWFtLi4uIChNYWdpZXIgemFlaGxlbiBuaWNodCkgKE1pZXplLCAxNS4gSnVsIDE5OTksIDE1OjA5OjMxKToKCgplYmVuIHZvciBtZWluZW0gSGF1cwoKICBOYW1lICAgICAgICBHaWxkZSAgICAgICAgICAgTFYgR0xWICBMUCAoTUxQKSAgS1AgKE1LUCkgVm9ycy4gR1IgQVIgVFIgRlIgQQpWCiAgUGZsYW56ZW5rcmkgICAgICAgICAgICAxNyAgIDAgMTU1ICgxNTUpICA2NyAoMTAwKSAgICAgMCAgMSAgMSAgMSAtLSAtIC0KICBQaWxncmltICAgICBBYmVudGV1ICAgIDIyICAyMiAxOTIgKDIwMikgIDQyICgyMDIpICAgICAwICAxICAxICAxIC0tIC0gLQogIFBmbGFuemVua3JpICAgICAgICAgICAgMTggICAwIDMzOCAoMzM4KSAxMDAgKDEwMCkgICAgIDAgIDEgIDEgIDEgLS0gLSAtCiAgUGZsYW56ZW5rcmkgICAgICAgICAgICAxOSAgIDAgMTc5ICgxNzkpICA2OSAoMTAwKSAgICAgMCAgMSAgMSAgMSAtLSAtIC0KICBQZmxhbnplbmtyaSAgICAgICAgICAgIDE3ICAgMCAxNTYgKDE1NikgIDY5ICgxMDApICAgICAwICAxICAxICAxIC0tIC0gLQogIFBmbGFuemVua3JpICAgICAgICAgICAgMTggICAwIDE2OCAoMTY4KSAgNjAgKDEwMCkgICAgIDAgIDEgIDIgIDIgLS0gLSAtCiogTWllemUgICAgICAgS2F0emVua3IgICA0NyAgNDcgMTk0ICgxOTQpICAyNiAoMjE4KSAgICA1MCAgMSAgMiAgMiAtLSAtIFgKICBQZmxhbnplbmtyaSAgICAgICAgICAgIDE4ICAgMCAxNzMgKDE3MykgIDY4ICgxMDApICAgICAwICAxICAyICAyIC0tIC0gLQoKCm5ldHRlcyBUZWFtIDopCgpNaWV6ZSAtIEthdHplbmtyaWVnZXJpbiBhdXMgVWViZXJ6ZXVndW5nLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJldGVuIGltIERzY2h1bmdlbCAoTWllemUsIDE1LiBKdWwgMTk5OSwgMTY6MDA6MTUpOgoKZWJlbiBwYXNzaWVydDoKCkR1IHNjaGxpZXNzdCBhdWNoIGRpZSBNaXRnbGllZGVyIGFuZGVyZXIgUmFzc2VuIGluIERlaW5lIEdlYmV0ZSBlaW4uCkVpbiBQZmxhbnplbmtyaWVnZXIga29tbXQgaW4gaG9oZW0gQm9nZW4gYXVzIGRlbSBIYXVzIHZvbiBNaWV6ZSBnZWZsb2dlbi4KRHUgYmV0ZXN0LCBkYXNzIGpldHp0IGJsb3NzIGtlaW4gYWdncmVzc2l2ZXIgR2VnbmVyIGhlcmVpbiBrb21tZW4gbW9lZ2UuCkVpbiBQZmxhbnplbmtyaWVnZXIga29tbXQgaW4gaG9oZW0gQm9nZW4gYXVzIGRlbSBIYXVzIHZvbiBNaWV6ZSBnZWZsb2dlbi4KCk1pZXplcyBad2VpdGkgRGlkbyAoaGF0IG1hbCB3aWVkZXIga2VpbmUgWmVpdHVuZyBpbiBkZXIgSGFuZC4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEthcmwgRnJpdHNjaCBtYWwgd2llZGVyLi4uIChBcHN1LCAxNS4gSnVsIDE5OTksIDE2OjUzOjUzKToKfiMhIHJuPUd1aWxkbyBydD05MzE5MzY3Njkgcmc9c2NobWFycm4KfiMhIHRpZD05MzE4OTg4MzcKU2NoYXV0IEV1Y2ggbWFsIGRlbiAnRnJpdHNjaGFseXplcicgYW46CgpodHRwOi8vbWVtYmVycy50cmlwb2QuZGUvdGFtLwoKQXBzdSwgaGFlbHQgZWluIFNjaGlsZCBtaXQgZWluZXIgJzEwJyBpbiBkaWUgSG9laGUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEthcmwgRnJpdHNjaCBtYWwgd2llZGVyLi4uIChBbmF0b2wsIDE1LiBKdWwgMTk5OSwgMTc6MzE6NDMpOgp+IyEgcm49QXBzdSBydD05MzIwNTA0MzMgcmc9c2NobWFycm4KfiMhIHRpZD05MzE4OTg4MzcKKnNjaHJlaSogOm8pCgpBbmF0b2wgLSBmYXNzdCBlcyBuaWNodCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdWNoZSBBcmJlaXQhIChUZWRkeSwgMTUuIEp1bCAxOTk5LCAxNzo0MDoyOSk6Cn4jISBybj1LYXJsZnJpdHNjaCBydD05MzE5MzgwODkgcmc9c2NobWFycm4KfiMhIHRpZD05MzE5MzgwODkKSWNoIGZ1ZXJjaHRlLCB3aXIga29lbm5lbiB1bnMgZGVpbmUgQXJiZWl0c2tyYWZ0IGVpbmZhY2ggbmljaHQgbGVpc3Rlbi4KClRlZGR5LCBiZWRhdWVybmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBLYXJsIEZyaXRzY2ggbWFsIHdpZWRlci4uLiAoVGVkZHksIDE1LiBKdWwgMTk5OSwgMTg6NTk6MjIpOgp+IyEgcm49QW5hdG9sIHJ0PTkzMjA1MjcwMyByZz1zY2htYXJybgp+IyEgdGlkPTkzMTg5ODgzNwpJY2ggbW9lY2h0ZSBhbiBkaWVzZXIgU3RlbGxlIGF1ZiBkaWUgdmllbHNlaXRpZ2UgRWluc2F0emJhcmtlaXQgSHJuLiBGcml0c2NocwpoaW53ZWlzZW4uClNlaW5lIEVuZ2xpc2Noa2VubnRuaXNzZToKSGF2ZSB5b3UgbXkgVmlzaXQtQ2FyZD8KCk5hamEsIHp1bWluZGVzdCBOZXRzY2FwZSByZWFnaWVydCBhbmdlbWVzc2VuLiAoTXkgRmF2b3VyaXRlczogTmV0c2NhcGUKV2Fybm1lbGR1bmcpCgoKVGVkZHksIGVyc3RlciBFaW5kcnVjayBzY2hvY2tpZXJlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzYW5kIChHcmltbWJvcm4sIDE1LiBKdWwgMTk5OSwgMjI6NTk6NTgpOgp+IyEgb249Q2F0d2VhemxlIG90PTkxNzYwNjAwMCBvZz1tdWVsbAp+IyEgb249QmVuZGVpZ2lkIG90PTkxNzUxMzMxMyBvZz1hbnplaWdlbgp+IyEgb249SGFuc3d1cnN0IG90PTkxNzQ5MTY0NyBvZz1hbGxnZW1laW5lcwpoaSBrYXJpYy4KdSBzYW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCQUggSFVNQlVHISAoTHVnLCAxNi4gSnVsIDE5OTksIDAyOjU2OjA4KToKClNlaXQgd2FubiBoYWIgaWNoIHdhcyBtaXQgR2VyZWNodGlna2VpdCB6dSB0dW4/CgpbVG9kOkxhcnNdIEx1ZyBoYXQgZ2VyYWRlIEFyYW5jaWEgdW1nZWJyYWNodC4gPDAyOjExOjM4PgpbVG9kOkxhcnNdIERpZSBHZXJlY2h0aWdrZWl0IGhhdCBnZXJhZGUgTHVnIHVtZ2VicmFjaHQuIDwwMjoxMzowMD4KCgpCYWggSHVtYnVnLi4uCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxNIChGYW1vdXMgbGFzdCBtZXNzYWdlKSA7LSkgKE1vcmdvdGgsIDE2LiBKdWwgMTk5OSwgMDc6MjU6NTcpOgpFVkVOVC1DSVRZIDogRmVsZXJpYW4gaGF0IGRpZSBTdGFkdCBiZXRyZXRlbi4KW1RvZDpMYXJzXSBFaW4gT3JrIGhhdCBnZXJhZGUgRmVsZXJpYW4gdW1nZWJyYWNodC4KCk0qLCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmV2b3JtdW5kdW5nIChNaWV6ZSwgMTYuIEp1bCAxOTk5LCAxMzo0MToxOCk6CgoKUGFyYWNlbHN1cyBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuClN1Z2FhbiBydWZ0OiBCaXR0ZSBhdWZob2VyZW4gISEhIQoKTWllemUgLSBncmluc3QgaW1tZXJub2NoCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWJiZSA6LSkgKFRhcmFnb24sIDE2LiBKdWwgMTk5OSwgMTM6NDc6NDEpOgogPiB3ZXIgbW9yZ2VuZ3JhdWVuCkFuZnJhZ2UgYWJnZXNjaGlja3QuCiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qCnwgICAgICAgICAgICAgICAgTW9yZ2VuR3JhdWVuLCBMUE11ZCAwMy4wMi4xQDE0MSAoQW15bGFhcikgICAgICAgICAgICAgICB8CnwgICAgICAgICAgICAgICAgIEFkcmVzc2U6IE1HLk11ZC5ERSAoMTI4LjE3Ni4xODIuMjM4KSAyMyAgICAgICAgICAgICAgICB8CnwgICAgICAgICAgICAgICAgICAgVXB0aW1lOiAyMiBNaW51dGVuIHVuZCA1NCBTZWt1bmRlbiAgICAgICAgICAgICAgICAgICB8CnwgICAgICAgICAgICAgICAgICAgICAgICAgICBNb3JnZW5HcmF1ZW4gTXVkbGliICAgICAgICAgICAgICAgICAgICAgICAgICB8CiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qCiAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBGcmUsIDE2LiBKdWwgMTk5OSwgMTM6NDc6MzggKDEgVGVpbG5laG1lcikKClBhdHJ5bi4uLi4uLi4uLi4uRQoqKiogQW53ZXNlbmRlIGltIE1vcmdlbkdyYXVlbjogTWF4LiBoZXV0ZSAyLCBSZWtvcmQgMAoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYWVtcGZlci4uLiAoVHJhdW1hLCAxNi4gSnVsIDE5OTksIDE1OjUwOjI0KToKSGlnaHQgc2NoYWVyZnQgZGllIEtsaW5nZSBlaW5lcyBCb2dlbnMsIGJ6dy4gZXIgdmVyc3VjaHQgZXMgd2VuaWdzdGVucy4gCgouLi4gZGFzIGlzdCBqYSBrcmFuayB3YXMgZGllIGFsbGVzIHNjaGFlcmZlbiBrb2VubmVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNaCA6KSAoTm92YXN0b3JtLCAxNi4gSnVsIDE5OTksIDE2OjU4OjEyKToKSG91c2Vob2xkZXIgc2NoYXV0LCBvYiBkaWUgTHVmdCByZWluIGlzdCB1bmQga29tbXQgZGFubiBhZW5nc3RsaWNoIGhlcmVpbi4KRGVyIEZ1cnogcmllY2h0LCBhbHMgd3VlcmRlIFp3b2NrbGh1YmVyIGlubmVybGljaCB2ZXJmYXVsZW4uCgpTY2hsZWNodGUgTmFzZSA6LSkKCiAgTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1oIDopIChIb3VzZWhvbGRlciwgMTYuIEp1bCAxOTk5LCAxNzowMToyNik6Cn4jISBybj1Ob3Zhc3Rvcm0gcnQ9OTMyMTM3MDkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMyMTM3MDkyCmJvYWggd2FzIGhhYiBpY2ggZnVlciBlaW4gc2NoZWlzcyBzZXRtaW4gLi4uIHdhbm4gaGFiIGljaCBkYXMgbnVyIGdlc2V0enQgbXVzcwpqYSBld2lnIGhlciBzZWluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphZWggd2llIGJpdHRlPyAoTmV2b2ssIDE3LiBKdWwgMTk5OSwgMDk6NDQ6MjcpOgotc2NoYWV0emUgSnV3ZWxlbgpPaCwgbmFjaCBkZXIgYWt0dWVsbGVuIE1hcmt0bGFnZSBrYW5uIGljaCBudXIgMTMzMSBNdWVuemVuIGJlemFobGVuLCBvYndvaGwgZXMKZWlnZW50bGljaCA1NDQ4IE11ZW56ZW4gd2VydCBpc3QuCi12ZXJrYXVmZSBKdXdlbGVuCldpciBrYXVmZW4gbnVyIFdhZmZlbiBvZGVyIFJ1ZXN0dW5nZW4uCgoKVyBJIEUgICBXIEEgUyAgIFcgRSBSICA/PwoKZWluIHZlcmRhbW10IHZlcmJsdWVmZnRlcgoKTmV2b2ssIGF1ZiBkZW4gYmxvZWRlbiBEaW5nZXJuIG51IHJ1bXNpdHplbmQKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcGllZ2xlaW4gU3BpZWdsZWluIChOaWdodCwgMTcuIEp1bCAxOTk5LCAxMjo0ODozMyk6Clt1bnQgYm9kZW5dCkR1IHN0ZWhzdCBhdWYgZWluZW0gYmxhbmtnZWJvaG5lcnRlbiBQYXJrZXR0ZnVzc2JvZGVuLiBEdSBrYW5uc3Qgc29nYXIgRGVpbgpTcGllZ2VsYmlsZCBlcmtlbm5lbiAhClt1bnQgc3BpZWdlbGJpbGRdClNvd2FzIHNpZWhzdCBEdSBkYSBuaWNodCEKCldpZSBzb2xsIGljaCBkYXMgYml0dGUgdmVyc3RlaGVuIGhhZSA/IFdpbGwgbWlyIGplbWFuZCBkYW1pdCB3YXMgc2FnZW4gPwoKICAgICAgICAgIE5pZ2h0LCBpbW1lciBub2NoIGdydWViZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gZmluZGUgaWNoIG5pZSBnZW51ZyBmcHMgKE5pZ2h0LCAxNy4gSnVsIDE5OTksIDEzOjUwOjI3KToKRWluZSByaWVzaWdlIFNhbmR1aHIgTWFya2UgVElNRSdTLVVQKFRNKSAoQykgYnkgVHJveS4gU2llIGJlc3RlaHQgYXVzIGVpbmVtCmdyb3NzZW4gSG9semdlc3RlbGwgdW5kIGVpbmVtIEdsYXNrb2VycGVyLCBkZXIgbWl0IFNhbmQgZ2VmdWVsbHQgaXN0LiBFaW4gYW4KaWhyIGFuZ2VicmFjaHRlcyBNZXNzaW5nc2NoaWxkIGJlc2FndDogRHVyY2hsYXVmemVpdCBjYS4gMSBTdHVuZGUuIERlciBTYW5kCnJpZXNlbHQgbGFuZ3NhbSBuYWNoIHVudGVuLiBEaWUgdW50ZXJlIEhhZWxmdGUgaXN0IHNlaHIgdm9sbC4KW3VudCBob2x6Z2VzdGVsbF0KRHUgZmluZGVzdCBhbiBlaW5lciBTYW5kdWhyIGtlaW4gIkdlc3RlbGwiLgpEZWluIEJsaWNrIHdlbmRldCBzaWNoIGRlciBVbWdlYnVuZyB6dS4KU293YXMgc2llaHN0IER1IGF1Y2ggZGEgbmljaHQhCgpbdW50IGdsYXNrb2VycGVyXQpEdSBmaW5kZXN0IGFuIGVpbmVyIFNhbmR1aHIga2VpbiAiR2xhc2tvZXJwZXIiLgpEZWluIEJsaWNrIHdlbmRldCBzaWNoIGRlciBVbWdlYnVuZyB6dS4KU293YXMgc2llaHN0IER1IGF1Y2ggZGEgbmljaHQhCgpbdW50IHNhbmRdCi4uLiAKCiAgICAgTmlnaHQsIGRvY2ggYSBiaXNzZXJsIHZlcndpcnJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptYWwgd2FzIChGb29iYXIsIDE3LiBKdWwgMTk5OSwgMjI6MTI6MjMpOgprdXJ6aW5mbwprdXJ6aW5mbwprdXJ6aW5mbwprdXJ6aW5mbwouLi5mdWVyIFNreS4KCmt1cnppbmZvCmt1cnppbmZvCmt1cnppbmZvCkdydXNzLAprdXJ6aW5mbwoKa3VyemluZm8Ka3VyemluZm8Ka3VyemluZm8KICAgICBGb29iYXIKa3VyemluZm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRhIGhhc3Qgd2FzIChIaWdodCwgMTcuIEp1bCAxOTk5LCAyMjoxMjo1MSk6CkF1ZiBTa3kncyB3dW5zY2ggaGluIHNjaHJlaWJlIGljaCB3YXMgaW4gZGllIFplaXR1bmcgLi4uIGRhcyBlciBrZWluZQpadXN0YWVuZGUgYmVrb21tdCB3aWUgZXIgZXMgYXVzZHJ1ZWNrdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG1hbCB3YXMgKFdpbSwgMTcuIEp1bCAxOTk5LCAyMjoxMzowMyk6Cn4jISBybj1Gb29iYXIgcnQ9OTMyMjQyMzQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMyMjQyMzQzClNvc28uLi4gImt1cnppbmZvIi4uLiBEYSBzdGVodCBkZXIgQXJ0aWtlbCBpbiBzY2htYXJybiBzY2hvbiByaWNodGlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2VsYmVyIHNjaHVsZCwgc2t5IChWZWN0b3IsIDE3LiBKdWwgMTk5OSwgMjI6MTY6MzEpOgpEZWluIEZyZXVuZCBTa3kgdGVpbHQgRGlyIG1pdDogSmV0enQgZmVobHQgbnVyIG5vY2gsIGRhc3MgZWluZXIgZGFzIGZydWZlCkRlaW4gRnJldW5kIFNreSB0ZWlsdCBEaXIgbWl0OiByYXVza29waWVydCB1bmQgaW4gU2NobWFycm4gcG9zdGV0LiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVmIHd1bnNjaCBoaW4gIChIaWdodCwgMTcuIEp1bCAxOTk5LCAyMjoxNjozNSk6CkRlaW4gRnJldW5kIFNreSB0ZWlsdCBEaXIgbWl0OiBzY2hyZWlidCBtYWwgd2FzIGluIGRpZSB6ZWl0dW5nLCBkYSBiZWtvbW10IG1hbgpEZWluIEZyZXVuZCBTa3kgdGVpbHQgRGlyIG1pdDogamEgenVzdGFlbmRlLi4uLi4KCiBEZWluIEZyZXVuZCBTa3kgdGVpbHQgRGlyIG1pdDogSmV0enQgZmVobHQgbnVyIG5vY2gsIGRhc3MgZWluZXIgZGFzIGZydWZlCkRlaW4gRnJldW5kIFNreSB0ZWlsdCBEaXIgbWl0OiByYXVza29waWVydCB1bmQgaW4gU2NobWFycm4gcG9zdGV0LiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNlbGJlciBzY2h1bGQsIHNreSAoS2FyaWMsIDE3LiBKdWwgMTk5OSwgMjI6MTY6NTEpOgp+IyEgcm49VmVjdG9yIHJ0PTkzMjI0MjU5MSByZz1zY2htYXJybgp+IyEgdGlkPTkzMjI0MjU5MQp3aWVzbyB3dXNzdGUgaWNoIGRhcyBkYXMga29tbXQ/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbWFsIHdhcyAoVGFyYWdvbiwgMTcuIEp1bCAxOTk5LCAyMjoyMzoxMCk6Cn4jISBybj1Gb29iYXIgcnQ9OTMyMjQyMzQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMyMjQyMzQzCkhtbW0uLi4genUgYmxvZWQgenVtIHNjcmlwdGVuIDotKSkpKQoKU0NOUgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBtYWwgd2FzIChGb29iYXIsIDE3LiBKdWwgMTk5OSwgMjI6MzE6NTcpOgp+IyEgcm49VGFyYWdvbiBydD05MzIyNDI5OTAgcmc9c2NobWFycm4KfiMhIHRpZD05MzIyNDIzNDMKWnVtIHNrcmlwdGVuIG5pY2h0LCB6dW0gYXVzc2NoYWx0ZW4gZGVzc2VsYmVuLgoKRm9vYmFyIC0gc2NoYWVtdCBzaWNoIGltbWVyIG5vY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBtYWwgd2FzIChUYXJhZ29uLCAxNy4gSnVsIDE5OTksIDIyOjMyOjM3KToKfiMhIHJuPUZvb2JhciBydD05MzIyNDM1MTcgcmc9c2NobWFycm4KfiMhIHRpZD05MzIyNDIzNDMKS2xlaW5lciBUaXAuLi4gbWFjaCBlaW4gJyEnIHZvciBkYXMgS29tbWFuZG8gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBtYWwgd2FzIChUYXJhZ29uLCAxNy4gSnVsIDE5OTksIDIyOjMzOjA1KToKfiMhIHJuPVRhcmFnb24gcnQ9OTMyMjQzNTU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMyMjQyMzQzCi4uLiBkYW5uIGtsYXBwdHMgYXVjaCBtaXQgZGVtIG1haWxlciBbdG1dIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2VpaGUgSG9mZm51bmcgbWVoci4uLiAoRm9vYmFyLCAxNy4gSnVsIDE5OTksIDIzOjQyOjIzKToKTmV1bGljaCBpbiBLYXR6bWFuZHU6CgpEZXIgSGVpbGVyIHN1bW10IGVpbiBmcm9laGxpY2hlcyBMaWVkLgpEZXIgSGVpbGVyIHNpZWh0IGJldHJ1bmtlbiBhdXMuCgpGb29iYXIgLSBlbnR0YWV1c2NodCB2b24gZGVuIGhldXRpZ2VuIEhlaWxlcm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdz8gOiggKEdhbmR1ciwgMTguIEp1bCAxOTk5LCAwMDo0ODozNik6CgpEZWluIEZyZXVuZCBNYXRpcyB0ZWlsdCBEaXIgbWl0OiBoaWxmdCB3ZXIgc2NobmVsbCBiZWltIHdlZ2hpZXI/CltUb2Q6TGFyc10gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSBHbm9tZSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBXZWdoaWVyXSBHb3RjaGEhCltUb2Q6TGFyc10gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSBNYXRpcyB1bWdlYnJhY2h0LgpbVG9kOkVpbiBXZWdoaWVyXSBHb3RjaGEhCltUb2Q6TGFyc10gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSBTY2FsYXJlIHVtZ2VicmFjaHQuCltUb2Q6RWluIFdlZ2hpZXJdIEdvdGNoYSEKCm51bmphIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHVtbWUgRnJhZ2UgKFNoYWtlZGJlZXIsIDE4LiBKdWwgMTk5OSwgMDM6MTg6MjApOgpEdSB0ZWlsc3QgTWllemUgbWl0OiB3YXMgbWFjaHN0ZSBkZW5uPwpNaWV6ZSBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBxdWVzdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyb3NjaHBpbGxlIChNYWdlbmJyb3QsIDE4LiBKdWwgMTk5OSwgMDM6MjE6MTQpOgoKd2lyZiBwaWxsZSB3ZWcKRHUgbGFlc3N0IGRpZSBnZXRyb2NrbmV0ZSBGcm9zY2hwaWxsZSBmYWxsZW4uClRoYXVydXMgc2FndDogd2FzIGlzIGRhcyBmdWVyIG5lIHBpbGxlIHNzCkR1IHNhZ3N0OiBrYW5uc3QgZXNzZW4sIHNlaHIgbGVja2VyIDspClRoYXVydXMgc2FndDogdW5kIHdhcyBicmluZ3QgZGllID8KVGhhdXJ1cyBzYWd0OiBpY2ggaGFiIGF1Y2ggZHJlaQpEdSBzYWdzdDogcHJvYmllcnMgYXVzLCBpc3QgZWNodCBnYW56IHByYWt0aXNjaApEdSBzYWdzdDogZWluZmFjaCBtYWwgZXNzZW4sClRoYXVydXMgbmltbXQgZGllIGdldHJvY2tuZXRlIEZyb3NjaHBpbGxlLgpUaGF1cnVzIHZlcnNjaGx1Y2t0IGVpbmUgRnJvc2NocGlsbGUgdW5kICpwbG9wcCogdmVyd2FuZGVsdCBzaWNoIGluIGVpbmVuCkZyb3NjaC4KRHUgd2FlbHp0IERpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgpEdSBzYWdzdDogZ2VuYXUKRWluIEZyb3NjaCBzYWd0OiB0b2xsCgpFaW4gZ3JpbnNlbmRlciBNYWdlbmJyb3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBtYWVjaHRpZyB2aWVsIGxvcy4uLiAoTWllemUsIDE4LiBKdWwgMTk5OSwgMDU6NDY6NDkpOgp+IyEgcm49TWllemUgcnQ9OTMyMjY5NDc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMyMjY5NDc3CgpSZWZhcmRvbiBpc3QgZGFzIHp1ZXJzdCBhdWZnZWZhbGxlbiA6KQoKTWllemUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgbWFjaHQgQW5keSBpbiBkZXIgRWlzd3Vlc3RlPyAoU2hhbm5hcmEsIDE4LiBKdWwgMTk5OSwgMTE6NTM6MDYpOgpTY2huZWUsIEVpcywgSGFnZWwuIFVlYmVyYWxsIHNpZWh0IGVzIHdlaXNzIGF1cy4KRHUgaGFzdCBob2ZmZW50bGljaCBuaWNodCBkaWUgT3JpZW50aWVydW5nIHZlcmxvcmVuPwpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCkFuZHkuCjQgTXVlbnplbi4KPiA+QW5keSBzZXR6dCBzaWNoIGhpbiB1bmQgcmF1Y2h0IGVpbmVuIEpvaW50LiAgICAgICAgIAoKKGtpZmZlbj8gOikKClNoYW5uYXJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbWFlY2h0aWcgdmllbCBsb3MuLi4gKEFuYXRvbCwgMTguIEp1bCAxOTk5LCAxMjozNjozMSk6Cn4jISBybj1NaWV6ZSBydD05MzIyNjk0Nzcgcmc9c2NobWFycm4KfiMhIHRpZD05MzIyNjk0NzcKCj4gbWVzc2UgbWllemUgc3RnCkR1IHJpY2h0ZXN0IGRlbiBNdWx0aWZ1bmt0aW9ucy1IeXBlci1HcmVuendlcnQtTy1NYXRpYyhUTSkgYXVmIE1pZXplLgpFcyByYXR0ZXJ0IHVuZCBrbmF0dGVydCB1bmQgcnVldHRlbHQgdW5kIHR1ZWRkZWx0LiAgRGFubiBvZWZmbmV0IHNpY2gKZWluIGtlaW5lcyBBbnplaWdlZmVuc3RlciB1bmQgRHUga2FubnN0IGRpZSByb3RlbiBCdWNoc3RhYmVuIGxlc2VuOgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuNjQyIHN0aW5nCgogIFsgRGFtaXQgbGllZ3QgTWllemUgdW0gZGFzIHVlYmVyIHNlY2hzZmFjaGUgdWViZXIgZGVtIGtyaXRpc2NoZW4KICAgIFdlcnQuIE5hZWNoc3RlIFJla2FsaWJpZXJ1bmcgbm90d2VuZGlnIGFtIDogU2FtLCAyNS4gQXVnIDE5OTkuIF0KCj4gc3RhdW4KRHUgYmlzdCBlcnN0YXVudC4KCkFuYXRvbCAtIG8gdGVtcG9yYSwgbyBtb3JlcwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmxpa2UgYSBzdW1vIDotKSAoVGFyYWdvbiwgMTguIEp1bCAxOTk5LCAxNDowMzoxMyk6CltBbGxnZW1laW46QW5hdG9sXSBXYWVoLCBXaW0gdHJpdHQgbWljaC4gTWFnaWVyd2lsbGt1ZXIhIDopCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG1hZWNodGlnIHZpZWwgbG9zLi4uIChEaWVkZXIsIDE4LiBKdWwgMTk5OSwgMjI6Mjc6MDUpOgp+IyEgcm49TWllemUgcnQ9OTMyMjY5NDc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMyMjY5NDc3CnBhaCAtIHdlbm4gaWNoIGpldHp0IG5pY2h0IG1pdCBkZW0gIkthdHplbiBhYndlcnRlbiItRmFlaG5jaGVuIHdlZGVsbiB3aWxsLAptdXNzIGljaCBzYWdlbjogTml4IGxvcyBhdWYgZGVtIGthbmFsIDopCgpEaWVkZXIsIGdlaHQgdGF0dGVybmQgaW4gRGVja3VuZwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbWFlY2h0aWcgdmllbCBsb3MuLi4gKFN0cmVhd2tjZXVyLCAxOC4gSnVsIDE5OTksIDIyOjI4OjE3KToKfiMhIHJuPURpZWRlciBydD05MzIzMjk2MjUgcmc9c2NobWFycm4KfiMhIHRpZD05MzIyNjk0NzcKTmljaHQgYWJ3ZXJ0ZW4sIERpZWRlciwgYXVzcHJlc3NlbiA6LSkKCnJyIGRlbmt0IC5vTyhsZWNrZXIga2F0emVuc2FmdCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoS2FyYW0sIDE4LiBKdWwgMTk5OSwgMjI6NTE6NTApOgpbenQ6UXVhbG1pXSBTbyBtYW5jaGVyIFRyYW5rIGlzdCBzY2h3ZXIgenUgZmluZGVuLCA8MjI6Mjg6Mzk+Clt6dDpRdWFsbWldIEJlaSBkZW0gaGllciBtdXNzdCBEaWNoIHVlYmVyd2luZGVuLCA8MjI6Mjg6Mzk+Clt6dDpRdWFsbWldIFp1IFNwcmluZ2VuIGluIGRlcyBXYXNzZXJzIEZhbGwsIDwyMjoyODozOT4KW3p0OlF1YWxtaV0gRGFzIGthbm4gbWFuIGF1Y2ggbmljaHQgdWViZXJhbGwuIFdlaXNzIHdlciwgZmVsY2hlciBmYWxsIGRhcyBpc3QKW3p0OlF1YWxtaV0gPz8gSGFiZSBzY2hvbmUgbWVocmVyZSBhdXNwcm9iaWVydCBhYmVyIGxlaWRlciBlcmZvbGdzbG9zLi4uLgpbenQ6UXVhbG1pXSA8MjI6Mjg6Mzk+ClsuLi5dCltUb2Q6TGFyc10gRWluIGZyZWllciBGYWxsIGhhdCBnZXJhZGUgUXVhbG1pIHVtZ2VicmFjaHQuIDwyMjo0OTo0MD4KW1RvZDpFaW4gZnJlaWVyIEZhbGxdIEhleSAtIE1vbWVudC4gQWxzIFF1YWxtaSBub2NoIGltIGZyZWllbiBGYWxsIHdhciwgbGVidGUKW1RvZDpFaW4gZnJlaWVyIEZhbGxdIGVyIG5vY2ghIEtvcnJpZ2llcnQgZGFzIGdlZmFlbGxpZ3N0ISA8MjI6NDk6NDA+CltUb2Q6TGFyc10gRGVyIGhhcnRlIEF1ZnNjaGxhZyBoYXQgZ2VyYWRlIFF1YWxtaSB1bWdlYnJhY2h0LiA8MjI6NDk6NDA+CltUb2Q6RGVyIGhhcnRlIEF1ZnNjaGxhZ10gVmVyZGFtbXQsIHdpZXNvIHNvbGwgaWNoIGltbWVyIFNjaHVsZCBzZWluPwpbVG9kOkRlciBoYXJ0ZSBBdWZzY2hsYWddIDwyMjo0OTo0MD4KCi0tCkthcmFtIChmcmFndCBzaWNoLCBvYiBkYXMgamV0enQgZGVyIGdlc3VjaHRlIEVyZm9sZyB3YXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVzIFRhZ2VzIC4uLiAoQnV6emN1dCwgMTkuIEp1bCAxOTk5LCAxMDozMTo1Myk6CkZpZ2h0aW5nIGZvciBwZWFjZSBpcyBsaWtlIGZ1Y2tpbmcgZm9yIHZpcmdpbml0eSEKCk9kZXIgbmljaHQgPwoKICAgICBCdXp6LCBkaWUgSG9zY2hpc2VpdGUgKHd3dy5ob3NjaGkuZGUpIGR1cmNoYmxhZXR0ZXJuZCAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhaHJsaWNoLi4uIChOb3Zhc3Rvcm0sIDE5LiBKdWwgMTk5OSwgMTI6MDI6MDQpOgpbVG9kOkxhcnNdIEVpbiBIZXhlciBoYXQgZ2VyYWRlIFNpcmxhZ2Fsb3QgdW1nZWJyYWNodC4gICAgICAgICAgICAgICAKU2lybGFnYWxvdHMgd2lkZXJsaWNoZXIgRnVyeiBoYXQgc2ljaCBlbmRsaWNoIHZlcnpvZ2VuLiAgICAgICAgCgogIE5vdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh1bmRlIGpldHp0IGluIGRlciBDaGFvc2dpbGRlPyAoS2FyYW0sIDE5LiBKdWwgMTk5OSwgMTQ6MTE6NDYpOgpXdWZmdHVmZiBzcHJpbmd0IERpY2ggYW4gdW5kIHNjaGxhYmJlcnQgRGlyIGxpZWJldm9sbCBtaXQgc2VpbmVyIFp1bmdlCmR1cmNoIGRhcyBHZXNpY2h0LgpQbG9ldHpsaWNoIGZsaWVndCBlaW4gcmllc2lnZXIgRmx1Z2RhZW1vbiBoZXJlaW4gdW5kIGxhbmRldCBnZW5hdSB2b3IgRGlyLgoKS2FyYW0gKGZpbmRldCBkaWVzZSBCZXNjaHdvZXJ1bmcgendhciB1bmxvZ2lzY2gsIGFiZXIgZ2FueiBwcmFrdGlzY2ggOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp1Y2t1bmdlbiA/IChUd2luc2VuLCAxOS4gSnVsIDE5OTksIDE0OjU1OjUxKToKICBEdSB0cmlmZnN0IGRlbiBPcmsgc2VociBoYXJ0LgpEZXIgT3JrIGZhZWxsdCB0b3QgenUgQm9kZW4uCkRlciBPcmsgc3RlY2t0IHNlaW5lIEhhbmQgaW4gc2VpbmUgSG9zZW50YXNjaGUsIGdyaW5zdCB1bmQgemllaHQKc2llIHdpZWRlciByYXVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1HLVNlcnZlciBpc3QgbmUgRE9TZSEgKEdyaW1tYm9ybiwgMTkuIEp1bCAxOTk5LCAyMjoyMDowNCk6Cn4jISBybj1HdWlsZG8gcnQ9OTMyMzY4NjAzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTMyMzY4NjAzCktvcnJla3QsIGFiZXIgRHUgbXVzc3QgenVnZWJlbiwgZGVyIFVuaXgtRW11bGF0b3IgaXN0IHppZW1saWNoIGtsYXNzZS4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbW1lciBWb3JzaWNodCBiZWkgQ2hhb3RlbiEgKEthcmFtLCAxOS4gSnVsIDE5OTksIDIyOjQwOjUzKToKU3BlbGxmaXJlIGJyZWl0ZXQgc2VpbmUgSGFlbmRlIGF1cyB1bmQgc2FndDogU0NIVVRaIQpTcGVsbGZpcmUgd2lyZCB2b24gZWluZXIgYmxhZXVsaWNoIHNjaGltbWVybmRlbiBBdXJhIGVpbmdlaHVlbGx0LgpTcGVsbGZpcmUga251ZGRlbHQgRGllZGVyLgoKLS0KS2FyYW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnZhbXBpciBvZGVyIHZhbXBpcmU/Pz8gKFNoYW5uYXJhLCAxOS4gSnVsIDE5OTksIDIzOjAxOjIzKToKPiBya251ZGRlbCB2YW1waXJlCkR1IGtudWRkZWxzdCBkZW4gVmFtcGlyIGF1cyBkZXIgRmVybmUuCgpXYXMgbnU/IAoKU2hhbm5hcmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmd1dGUgZXJ6aWVodW5nIChQaG9ib3MsIDIwLiBKdWwgMTk5OSwgMTU6NTU6MjYpOgpKYXNvblJpZ2lkIHNhZ3Q6IHZpYnVybiwgaGF1IGFiCkphc29uUmlnaWQgcmVpdGV0IGF1ZiBzZWluZW0gRHJhY2hlbiBuYWNoIE5vcmRlbi4KVmlidXJuIHRyb3R0ZXQgSmFzb25SaWdpZCBoaW50ZXJoZXIuCgpQaG9ib3MgIC0gIGJld3VuZGVydCBKYXNvbnMgRXJ6aWVodW5nc21ldGhvZGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmZWlnZSBhYmdlaGF1ZW4gLi4uLiA7KSAoVHJhbmNlLCAyMC4gSnVsIDE5OTksIDE2OjM1OjI2KToKW0FsbGdlbWVpbjpEcm9sbGkgaGFlbW1lcnQgUGhvYm9zLl0KWzxNYXN0ZVI+OkthcmljXSBsCls8TWFzdGVSPjo8TWFzdGVSPl0gMTMuNjIgY21kcy9zLCAxNjQuMTIgY29tcCBsaW5lcy9zCls8TWFzdGVSPjo8TWFzdGVSPl0gTGFnOiAyLjMlLzYwLCAyLjQlLzE1LCA0LjglLzEKUEZMVU5aLCBQaG9ib3MnIEthdXRzY2h1a2hhbW1lciBmbGllZ3QgaGVyZWluLCB0YW56dCBhdWYgRGVpbmVtIEtvcGYgZWluZQpSZWloZSBsYXRlaW5hbWVyaWthbmlzY2hlciBUYWVuemUsIHNjaGxpZXNzdCBtaXQgZWluZW0gUGFzbyBEb2JsZSBhYiB1bmQKaHVlcGZ0IHdpZWRlciBkYXZvbi4KWzxNYXN0ZVI+OlRyYW5jZV0gZGllIGhhZW1tZXJuIGFsbGUgOikKW0FsbGdlbWVpbjpNaXJhZG9yIGZpbmRldCBhbGxlIGhhZW1tZXIgc29sbHRlbiBtYWwgZ2xlaWNoemVpdGlnIGRyb2xsaSdzCiAgICAgICAgICAgaGFzZW5zY2hhZWRlbCBrbnV0c2NoZW4hXQpXYWFhcmcgLSBKQUFBSEFIQUFBQUEgZHUgc2NobWVpc3N0IE1pcmFkb3IgZGVuIEthdXRzY2h1a2hhbW1lciBhbiBkZW4gS29wZi4KRGFzIG1hY2h0IFNwYXNzLiBBQWhoIHVuZCB3aWUgTWlyYWRvciBkYWJlaSB3YWhyc2NoZWlubGljaCBhdXMgZGVyIFdhZXNjaGUKZ3Vja3QsIGVpbmZhY2ggaGVycmxpY2guCkRyb2xsaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBndXRlIGVyemllaHVuZyAoTWVuYWNlLCAyMC4gSnVsIDE5OTksIDIwOjU4OjE4KToKfiMhIHJuPVBob2JvcyBydD05MzI0Nzg5MjYgcmc9c2NobWFycm4KfiMhIHRpZD05MzI0Nzg5MjYKRmFscyBkYXMgaW4gZGVyIEFiZW50ZXVyZXJnaWxkZSBvZGVyIGVpbmVtIGFuZGVyZW4gIkFuZmFlbmdlcnN0YXJ0cmF1bSIKcGFzc2llcnQgaXN0LCBkYW5uIGlzdCBkYXMga2VpbiBXdW5kZXIsIGRlbm4gZGFzIHJlYWdpZXJlbiBIYXVzdGllcmUgbmljaHQuCgpNZW5hY2UgKmplZ2xpY2hlbiBHYWcgemVycmVkZW5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2ggb2ggKE5haXJvbGYsIDIwLiBKdWwgMTk5OSwgMjE6Mjg6NTkpOgpQYWRyZWljIHRlaWx0IERpciBtaXQ6IGVzIGdpYnQga2VpbmUgZWNodGVuIGZyYXVlbiBpbSBpbnRlcm5ldApQYWRyZWljIHRlaWx0IERpciBtaXQ6IHNpbmQgZG9jaCBhbGxlcyBudXIgZmFrZXMgaGllciA6KQpQYWRyZWljIHRlaWx0IERpciBtaXQ6IG5hIGRhcyBpc3QgbmUgdmVyc2Nod29lcnVuZyB2b20gZmJpLCBjaWEsIGJuZCwgc2VjcmV0ClBhZHJlaWMgdGVpbHQgRGlyIG1pdDogc2VydmljZSB1bmQgd2llIHNpZSBhbGxlIGhlaXNzZW4KUGFkcmVpYyB0ZWlsdCBEaXIgbWl0OiBkaWUgZ2VoZWltZGllbnN0ZSBoYWJlbiBkaWUgbXVkcyBlcmZ1bmRlbiB1bmQgYXVjaApQYWRyZWljIHRlaWx0IERpciBtaXQ6IHJvYm90ZXIgZGllIGF1c3NlaGVuIHdpZSBmcmF1ZW4gZXJzY2hhZmZlbiB1bSB1bmQKUGFkcmVpYyB0ZWlsdCBEaXIgbWl0OiBpbmZvcm1hdGlrZXIgZGF2b24gYWJ6dWhhbHRlbiBpaHJlIHJlY2huZXIgenUgaGFja2VuClBhZHJlaWMgdGVpbHQgRGlyIG1pdDogdW5kIGRpZSB3ZWx0dmVyc2Nod29lcnVuZyBhdWZ6dWRlY2tlbiwgamF3b2xsIQpQYWRyZWljIHRlaWx0IERpciBtaXQ6IGdsYXViIG1pciBkYXMgaXN0IHNvLCBhYmVyClBhZHJlaWMgdGVpbHQgRGlyIG1pdDogUHNzc3Nzc3NzdHR0dHR0dHR0dHR0dHR0dHR0ISEhIG5pY2h0IHdlaXRlcnNhZ2VuIDopCgoKTmFpcm9sZiwgc2FndHMgbmljaCB3ZWl0ZXIuLi4gU0FHRU4gbmljaHQgLi4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBvaCBvaCAoQW5hdG9sLCAyMC4gSnVsIDE5OTksIDIxOjM3OjM2KToKfiMhIHJuPU5haXJvbGYgcnQ9OTMyNDk4OTM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMyNDk4OTM5CldvIFBhZHJlaWMgZGFzIGRvY2ggd2Vpc3MgLSB3YXMgbWFjaHQgZXIgZGFubiBoaWVyPyBNRU5TQ0ggUEFEUkVJQywgCkR1IG11c3N0IGRlbiBMb3R0b3NjaGVpbiBzY2hvbiBhYmdlYmVuLCB3ZW5uIER1IHdhcyBnZXdpbm5lbiB3aWxsc3QhCgpBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1HLVNlcnZlciBpc3QgbmUgRE9TZSEgKEFuYXRvbCwgMjAuIEp1bCAxOTk5LCAyMTozODo1NCk6Cn4jISBvbj1BbmF0b2wgb3Q9OTMyNDk5NTI4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1NZW5hY2UgcnQ9OTMyNDk4Mjg5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTMyMzY4NjAzCkFsc28uLi4gTHVnIHd1ZXJkZSBpY2ggYXVjaCB2ZXJzdGVja2VuIHdvbGxlbi4gOm8pCgpBTkEuVE9MIC0gSm9mIGlzdCBlaCBudXIgaWRsZSA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBvaCBvaCAoTHVnLCAyMC4gSnVsIDE5OTksIDIyOjQ4OjA1KToKfiMhIHJuPU5haXJvbGYgcnQ9OTMyNDk4OTM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMyNDk4OTM5CgpBbHNvIHdvIFBhcmVpZyByZWNodCBoYXQsIGhhdCBlciBSRUNIVCEKCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa2FwdXR0ZXMgZXJkYmViZW4gOikgKEppZGR1LCAyMS4gSnVsIDE5OTksIDAxOjM4OjI3KToKRGllIERvcmZrbmVpcGUgYXVmIFNoYWt5IElzbGFuZC4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9iZW4sIHVudGVuIHVuZCBub3JkZW4uIApFaW4gU2NoaW1wYW5zZSBuYW1lbnMgQ2hpdGEuClNBTkR8RSBkaWUgS2FtcGZ0cmlua2VyaW4uCkRlciBXaXJ0LgpEaWUgVG9wLUxpc3RlLCBUb3AtU3BpZWxlcmxpc3RlIHVuZCBUb3AtU2VoZXJsaXN0ZS4KQ2hpdGEga3JhdHp0IHNpY2ggYW0gUnVlY2tlbi4KRWluIEVyZGJlYmVuIGVyc2NodWV0dGVydCBkZW4gQm9kZW4uIER1IGZhZWxsc3QgenUgQm9kZW4uCkNoaXRhIHNjaHJlaXQgbGF1dCB1bmQgd2lyZnQgZWluIEVyZGJlYmVuIG1pdCBTY2h3dW5nIGF1ZiBkZW4gQm9kZW4uIFV1dXBwc3NzLApkdW1tZXJ3ZWlzZSBpc3QgZXMgZGFiZWkga2FwdXR0IGdlZ2FuZ2VuLiBWZXJzdG9obGVuIGJlc2VpdGlndCBDaGl0YSBkaWUgUmVzdGUKdW5kIHNjaGF1dCBnYW56IHVuc2NodWxkaWcuIAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBvaCBvaCAoS29iYXlhc2hpLCAyMS4gSnVsIDE5OTksIDEyOjE1OjIzKToKfiMhIHJuPU5haXJvbGYgcnQ9OTMyNDk4OTM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMyNDk4OTM5CldlaHJldCBkZW4gQW5mYWVuZ2VyIGRlciBNQVRSSVggLi4uLgoKb2J5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaG5lIHdvcnRlIChWZWN0b3IsIDIxLiBKdWwgMTk5OSwgMTM6MTQ6MDUpOgpbVG9kOkxhcnNdIEVpbiBQZW5kZWwgaGF0IGdlcmFkZSBNaW5pbXVtIHVtZ2VicmFjaHQuCkVpbiBlbnRzZXR6bGljaGVyIFNjaHJlaSBoYWxsdCB2b20gRnJpZWRob2YgaGVydWViZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaG5lIHdvcnRlIC0tSUkgKFZlY3RvciwgMjEuIEp1bCAxOTk5LCAxMzoyMTowNSk6CltUb2Q6TGFyc10gTnllbGEgaGF0IGdlcmFkZSBOZXJvc2l1cyB1bWdlYnJhY2h0LgpEZXIgU2NocmVpIGVpbmVzIERpciB2b2VsbGlnIHVuYmVrYW5udGVuIFdlc2VucyBkcmluZ3QgYW4gRGVpbiBPaHIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3dhcyB2b24gZWluZXIgTm9ubmUgISAoTW9yZ290aCwgMjEuIEp1bCAxOTk5LCAxMzo0Njo1OCk6Ck5vbm5lIHNhZ3Q6IGljaCB3b2huZSBuYWVoZXIgYW4gZGVyIHN0YWR0LCB3aXIgaGFiZSBlaW4gbmV0eiBtaXQKTm9ubmUgc2FndDogc2hhcmVkLWludGVybmV0IHVuZCBpY2ggYmluIGJlc3NlciBpbSBiZXR0IDstKQoKTSosIHNwcmFjaGxvcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNvd2FzIHZvbiBlaW5lciBOb25uZSAhIChOb25uZSwgMjEuIEp1bCAxOTk5LCAxMzo0ODoxNCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkzMjU1NzYxOCByZz1zY2htYXJybgp+IyEgdGlkPTkzMjU1NzYxOApWb2VsbGlnIGF1cyBkZW0genVzYW1tZW5oYW5nIGdlcmlzc2VuLiBFcyBnaW5nIG5hdHVlcmxpY2ggdW0gQmV0dGVuIG1hY2hlbiB1bmQKYmV6aWVoZW4gdW5kIHNvIFNhY2hlbi4uLiBhZWgsIG5hamEsIHZpZWxsZWljaHQgZ2xhdWJ0cyBlaW5lciA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU293YXMgdm9uIGVpbmVyIE5vbm5lICEgKExlaWJuaXosIDIxLiBKdWwgMTk5OSwgMTM6NTE6NDgpOgp+IyEgcm49Tm9ubmUgcnQ9OTMyNTU3Njk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMyNTU3NjE4CmFoaCBlcyBnaW5nIGRhcnVtIHdpZSBndXQgbWFlbm5lciBwdXR6ZW4ga29lbm5lbiB1bmQgYXVmcmFldW1lbiB1bmQgc28/Cgp1bmQgZHUgYmlzdCBkZXIgZ2Vib3JlbmUgaGF1c21hbm4gamEgbm9ubmU/CgpsZWliaSBsYWVkIGRhbm4gbm9ubmUgbWFsIGVpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU293YXMgdm9uIGVpbmVyIE5vbm5lICEgKE5vbm5lLCAyMS4gSnVsIDE5OTksIDEzOjUyOjU0KToKfiMhIHJuPUxlaWJuaXogcnQ9OTMyNTU3OTA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMyNTU3NjE4Ck5vbm5lIGtvbW10LiBEYW5uIGtyaWVnc3RlIG1hbCB1bnRlcnJpY2h0LCB3aWUgbWFuIGVpbmUgcmljaHRpZ2UgKEhhdXMpRnJhdQppc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTm92YXN0b3JtLCAyMS4gSnVsIDE5OTksIDE4OjUyOjI1KToKW0FsbGdlbWVpbjpJbXJlXSB3YXMgbWFjaHQgbWFuIGdlZ2VuIGVpbmVuIHpvbWJpZXZpcnVzPyAgICAgICAgICAgIApbVG9kOkxhcnNdIEVpbiBab21iaWV2aXJ1cyBoYXQgZ2VyYWRlIEltcmUgdW1nZWJyYWNodC4gICAgICAgICAgICAgIAoKICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppY2ggYXVjaCAoUGFkcmVpYywgMjEuIEp1bCAxOTk5LCAyMTowMTo1Mik6CltNb2VyZGVyOkdlaXN0IGVpbmVzIFNpdmFrIERyYWtvbmllcnNdIG1pY2ggbWFsIGt1cnogenUgR2V2YXR0ZXIgVG9kCltNb2VyZGVyOkdlaXN0IGVpbmVzIFNpdmFrIERyYWtvbmllcnNdIGdlc2NoaWNrdC4gPDIwOjU0OjQ1PgoKV2FyIGRhcyBqZXR6dCB3aXR6aWc/IG5laW4uIEhhdHRlIGRhcyBnYW56ZSBpcmdlbmRlaW5lIEF1c3NhZ2U/IG5laW4uCkFiZXIgc29sbCBqYSBuaWVtYW5kIHNhZ2VuIGtvZW5uZW4gaWNoIHdhZXIgbmljaHQgYXVjaCBpbiBkZXIgTGFnZSB3YWhybG9zCnp3ZWkgWmVpbGVuIENvZGUgbWl0IEN1dCAmIFBhc3RlIGluIG5lbiBBcnRpa2VsIHp1IHBhY2tlbiB1bSBhdWNoIG1hbCB3YXMgaW4KZGllIG1wYSBnZXNjaHJpZWJlbiB6dSBoYWJlbi4uLi4KSXJnZW5kd2llIHNpbm5sb3Mgb2Rlcj8gTmFqYS4uIHdlbmlnc3RlbnMgaW4gZGllIHJpY2h0aWdlIFJ1YnJpay4KClBhZHJlaWMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBpY2ggYXVjaCAoQW5hdG9sLCAyMS4gSnVsIDE5OTksIDIzOjQ4OjQ2KToKfiMhIHJuPVBhZHJlaWMgcnQ9OTMyNTgzNzEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMyNTgzNzEyCldhcyBhdWNoIGltbWVyIER1IGdlc2NobnVwZnQgaGFzdC4uLgoKCi4uLiB2ZXJzdWNoIGVzIG1pdCB3ZW5pZ2VyIGRhdm9uLgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGViZW5kaWdlIFplaXR1bmdlbiA/IDotKSAoVGFyYWdvbiwgMjIuIEp1bCAxOTk5LCAwOTo1OToyMik6CltBbGxnZW1laW46S2FydG9mZmVsXSBOYWNoc2NodWIsIFplaXR1bmcgaXMgbGVlciA6KQpUaHVmaGlyICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgooT2huZSBXb3J0ZSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBpY2ggYXVjaCAoVGVkZHksIDIyLiBKdWwgMTk5OSwgMTg6NTU6NTEpOgp+IyEgcm49UGFkcmVpYyBydD05MzI1ODM3MTIgcmc9c2NobWFycm4KfiMhIHRpZD05MzI1ODM3MTIKS2FubiBkYXMgbWFsIHdlciBuYWNoIE11ZWxsIHZlcnNjaGllYmVuPwoKVGVkZHkKUC5TLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaWNoIGF1Y2ggKFppbm8sIDIyLiBKdWwgMTk5OSwgMjA6MjM6MzQpOgp+IyEgcm49VGVkZHkgcnQ9OTMyNjYyNTUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMyNTgzNzEyCkphd29sbCwgUGFkcmVpYyBpbiBkZW4gTXVlbGwhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYXR6ZW0gYW0gVGVybWluYWw/IChTb3JjZXJlciwgMjUuIEp1bCAxOTk5LCAyMzoyNjowMSk6CkFuZHkgc2FndDogU2luaXN0cmEsIGlzdCBiZWkgRGlyIG5vY2ggZWluIFgtVGVybWluYWwgZnJlaT8KCldhcnVtIGZyYWd0IGRlciBtZWluZSBLYXR6ZT8KClNvcmNlcmVyIC0gc2ljaCB3dW5kZXJuZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IDovIChLYXJpYywgMjYuIEp1bCAxOTk5LCAwMTozMDoxNik6CltUZWFtIEZldWVyendlcmNoOkRpcmlvbl0gaWNoIGhhdSBtYWwgZGVuIHdhZWNodGVyIHZvciBkZXIgcHlyYSB3ZWcuCltUZWFtIEZldWVyendlcmNoOkRpcmlvbl0gaXJyZ2VuZHdpZS4KW1RlYW0gRmV1ZXJ6d2VyY2g6VG9kXSBESVJJT04gSEFUIERBUyBURUFNIFZFUkxBU1NFTi4KW1RvZDpMYXJzXSBFaW4gRHJha29uaWVyd2FlY2h0ZXIgaGF0IGdlcmFkZSBEaXJpb24gdW1nZWJyYWNodC4KCmlyZ2VuZHdpZS4uaGFiZW4gZGllIGRpY2ggdW1nZWhhdWVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG9oIC4uLiAoQW5hY3Jpb24sIDI2LiBKdWwgMTk5OSwgMTI6MDY6MDkpOgoKR29sYXMgdmVyc2NobWlsenQgbWl0IGRlbiBTY2hhdHRlbiBEZWluZXIgZHVua2Vsc3RlbiBBZW5nc3RlLgpFaW4gd2FiZXJuZGVzIEdlYmlsZGUgZXJzY2hlaW50IHVycGxvZXR6bGljaCB2b3IgRGlyLgoKKnppdHRlcioKCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUb2xsZSBHaWxkZS4uLiAoWm9vaywgMjYuIEp1bCAxOTk5LCAxMjoxNjozOCk6CgpbQ2hhb3M6S3J1dW9scV0gTWVuc21hbiBrYWVtcGZ0IG51biBtaXQgdW5zIHp1c2FtbWVuIGF1ZiBkZXIgZHVua2xlbiBTZWl0ZSBkZXIKW0NoYW9zOktydXVvbHFdIE1hY2h0ISBFaW5lIHdlaXNlIEVudHNjaGVpZHVuZy4gR3JhdHVsYXRpb24hCltUb2Q6TGFyc10gS3J1dW9scSBoYXQgZ2VyYWRlIE1lbnNtYW4gdW1nZWJyYWNodC4KW1RvZDpLcnV1b2xxcyBDaGFvcy1SaXR1YWwgYnJhY2h0ZSBkZW4gVG9kXQoKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVG9sbGUgR2lsZGUuLi4gKEhvYm8sIDI2LiBKdWwgMTk5OSwgMTQ6MzU6NDMpOgp+IyEgcm49Wm9vayBydD05MzI5ODQxOTggcmc9c2NobWFycm4KfiMhIHRpZD05MzI5ODQxOTgKS2xhciBpc3QgQ2hhb3MgbmUgdG9sbGUgR2lsZGUuClVuZCBkaWUgTmV1bGluZ2UgbXVlc3NlbiBnbGVpY2ggbWFsIHJpY2h0aWcgZWluZ2VmdWVocnQgd2VyZGVuLCBkYW1pdCBzaWUKd2lzc2VuLCB3b21pdCBzaWUgc2ljaCBlaW5sYXNzZW4hCgogIEhvYm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtub3BmIChNb2VwLCAyNi4gSnVsIDE5OTksIDE0OjQxOjQ0KToKPiBkcnVlY2tlIGtub3BmCkR1IGRydWVja3N0IGRlbiBLbm9wZiBpbiBkZXIgV2FuZCwgZXMgcnVtcGVsdCBrdXJ6LgpbPE1hc3RlUj46RHJvbGxpIHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ01hZW5uZXInLCB3b3JhdWYgZGllc2Ugc2ljaAogICAgICAgICAgaW4gZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCkRyb2xsaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCkdpYnQgZXMgbm9jaCBtZWhyIHNvIEtucGZlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llIG1hbiBlaW5lbiBSdWYgdmVybGllcnQgKEFjcmltb24sIDI2LiBKdWwgMTk5OSwgMTg6MjI6MDkpOgpbQWJlbnRldWVyOk1vb25ibGFkZV0ga2FubiBqZW1hbmQgbWljaCB2b24gWmFjaGFyaWFzIEVpc3BhbGFzdCB6dXJ1ZWNrIG5hY2gKW0FiZW50ZXVlcjpNb29uYmxhZGVdIFBvcnQgVmFpbiBicmluZ2VuPyBEaWUgbmV0dGUgRmVsaW5lIGJlaW0gbGV0enRlbiBtYWwsCltBYmVudGV1ZXI6TW9vbmJsYWRlXSBkaWUgZGEgbWljaCBoaWVyaGVyZ2VicmFjaHQgaGF0LCBpc3QgbGVpZGVyIG5pY2h0IG1laHIKW0FiZW50ZXVlcjpNb29uYmxhZGVdIGRhIDooCltBYmVudGV1ZXI6VGVkZHkgd3VlcmRlIGphLCBhYmVyIGljaCBoYWIgbmVuIFJ1ZiB6dSB2ZXJsaWVyZW5dCltBYmVudGV1ZXI6Q2hhb3Nsb3JkXSBtYWNoIGljaCwgYmluIGdlcmFkZSBpbiBkZXIgZ2VlZ25kCltBYmVudGV1ZXI6TGFyYW5pc10gZWluZmFjaCBzIHVuZCBkYW5uIG8KW0FiZW50ZXVlcjpBY3JpbW9uXSBXZWxjaGVuIFJ1ZiB3aWxsc3QgRHUgdmVybGllcmVuPwpbQWJlbnRldWVyOk1vb25ibGFkZV0gSWNoIGhhYiBlYmVuIGtlaW5lbiBTY2hpbW1lciwgd2llIGljaCBkYSB6dXJ1ZWNrIGtvbW1lLgpbQWJlbnRldWVyOkFzdGVyb3RoXSBtaXQgZGVyIGVpc3NjaG9sbGUKW0FiZW50ZXVlcjpUZWRkeSBpc3QgYm9lc2FydGlnLCBnZW1laW4sIGZpZXMgdW5kIGhpbnRlcmhhZWx0aWcsIHdpZSBzaWNoIGRhcwpmdWVyIENoYW90ZW4gZ2Vob2VydF0KW0FiZW50ZXVlcjpDaGFvc2xvcmRdIGphamEgaWNoIGtvbW1lIGphIGdsZWljaApbQWJlbnRldWVyOkFyaWFuYV0gbmEsIGVyIHdpbGwgZG9jaCBib2VzZSBzZWluLCBpcyBhYmVyIGVpZ2VudGxpY2ggbnVyIG4gZ2FuegpbQWJlbnRldWVyOkFyaWFuYV0gbGllYmVyIHRlZGR5IDopCltBYmVudGV1ZXI6QXJpYW5hIGR1Y2t0IHNpY2hdCltBYmVudGV1ZXI6VGVkZHldIFdBSCEhISwuIGRhIGlzc2VyIHdpZWRlciBoaW4KW0FsbGdlbWVpbjpUZWRkeSB3aXJmdCBlaW4gS2lzc2VuKE1hcmtlIGV4dHJhd2VpY2gpIG5hY2ggQXJpYW5hXQpbQWxsZ2VtZWluOkFyaWFuYV0gZGFuZWJlbiEKW0FiZW50ZXVlcjpBY3JpbW9uIGdyYXR1bGllcnQgVGVkZHkgenVtIGVyZm9sZ3JlaWNoIHZlcmxvcmVuZW4gUnVmLl0KW0FsbGdlbWVpbjpBcmlhbmFdIHN1ZXNlciwgbGllYmVyLCBoaWxmc2JlcmVpdGVyIHRlZGR5ICtHR0cqCltBbGxnZW1laW46VGVkZHldIHRtIGFyaWFuYSBrbGFyLCBpY2ggd2lsbCBkaXIgZG9jaCBuaWNodCB3ZWh0dW4KW0FsbGdlbWVpbjpUZWRkeV0gVXJrcyA7LSgoKApbQWxsZ2VtZWluOkFuYWNyaW9uXSAqd2FlbHoqCltBbGxnZW1laW46TGlhcmFdIHRzIHRzIHRzCgpBY3JpbW9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2llIG1hbiBlaW5lbiBSdWYgdmVybGllcnQgKFRlZGR5LCAyNi4gSnVsIDE5OTksIDE4OjM4OjEyKToKfiMhIHJuPUFjcmltb24gcnQ9OTMzMDA2MTI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMzMDA2MTI5ClVya3MsIHdpZWRlciBlaW4gYWhydGVyIFNjaGxhZyBnZWdlbiBkYXMgQ2hhb3MuIDstKAoKVGVkZHksIG11c3Mgd29obCBkb2NoIG5vY2ggZ2VtZWluZXIgd2VyZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJhdWVuIC4uLiAoQXJrLCAyNi4gSnVsIDE5OTksIDIxOjI0OjA3KToKW0ZyYXVlbnBvd2VyOk5vbm5lIHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gZWluIEZyb3NjaC4gPDE1OjE1OjI4Pl0KCk1hbiBkZW5rZSBzaWNoIHdhcyBkYXp1LgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklyZ2VuZHdpZS4uLiAoU29yY2VyZXIsIDI2LiBKdWwgMTk5OSwgMjM6MDA6MjcpOgouLi5zY2hlaW5lbiBtaWNoIGRpZSBGaXNjaGUgbmljaHQgZ2FueiBlcm5zdCB6dSBuZWhtZW4uLi4KCkR1IGxhZXNzdCBlaW5lIG1pdHRsZXJlIEt1Z2VsIGF1cyBGZXVlciBlbnRzdGVoZW4uCkR1IHNjaGxldWRlcnN0IGRpZSBLdWdlbCBpbiBkZXMgaHVlcGZlbmRlbiBLbnV0c2NoZmlzY2hzIFJpY2h0dW5nLgogIERlaW4gRmV1ZXJiYWxsIHRyaWZmdCBkZW4gaHVlcGZlbmRlbiBLbnV0c2NoZmlzY2ggYW4gZGVyIFNjaHVsdGVyLgpEZXIgaHVlcGZlbmRlIEtudXRzY2hmaXNjaCBmYWVsbHQgdG90IHp1IEJvZGVuLgpEZXIgS251dHNjaGZpc2NoIHdpcmQgcm90IHVuZCB3ZWRlbHQgbWl0IGRlbSBTY2h3YW56LgogIERlaW4gRmV1ZXJiYWxsIHZlcnNlbmd0IGRlbSBodWVwZmVuZGVuIEtudXRzY2hmaXNjaCBIYWFyZSB1bmQgQXVnZW5icmF1ZW4uCkRlciBLbnV0c2NoZmlzY2ggaXN0IGdsdWVja2xpY2ggd2llIG5pZSB6dXZvci4KICBEZWluIEZldWVyYmFsbCB2ZXJzZW5ndCBkZW0gaHVlcGZlbmRlbiBLbnV0c2NoZmlzY2ggSGFhcmUgdW5kIEF1Z2VuYnJhdWVuLgpEZXIgS251dHNjaGZpc2NoIHNjaHdpbW10IHZlcnNwaWVsdCAyIG1hbCBpbSBLcmVpcyBoZXJ1bS4KICBEZWluIEZldWVyYmFsbCB2ZXJzZW5ndCBkZW0gaHVlcGZlbmRlbiBLbnV0c2NoZmlzY2ggSGFhcmUgdW5kIEF1Z2VuYnJhdWVuLgoKLi4ub2RlciB3YXJ1bSBmcmV1ZW4gZGllIHNpY2gsIGdlYnJhdGVuIHp1IHdlcmRlbj8gCgpTb3JjZXJlciAtIGdydWViZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQUhBISAoU29yY2VyZXIsIDI3LiBKdWwgMTk5OSwgMDI6MTc6NTIpOgoKRWluZSBMZWljaGUgaHVzdGV0IHNpY2ggZGllIFNlZWxlIGF1cyBkZW0gTGVpYi4KClNPIHZlcmxhZXNzdCBhbHNvIGRpZSBTZWVsZSBpaHJlIHN0ZXJibGljaGUgSHVlbGxlLi4uLgoKU29yY2VyZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNFVUZaISAoQ3JpdHRlciwgMjcuIEp1bCAxOTk5LCAxNDo0ODowOSk6CndlciB6dSBibG9lZCBpcwpbVG9kOkxhcnNdIEVpbiBXaWRlci1MaWNoIGhhdCBnZXJhZGUgQ3JpdHRlciB1bWdlYnJhY2h0LiA8MTk6MDk6MzE+CltUb2Q6RWluIFdpZGVyLUxpY2hdIDQwNDMwMSBFcmZhaHJ1bmdzcHVua3RlIGd1ZW5zdGlnIGFienVnZWJlbiEgPDE5OjA5OjMxPgpbVG9kOkxhcnNdIEVpbiBXaWRlci1MaWNoIGhhdCBnZXJhZGUgQ3JpdHRlciB1bWdlYnJhY2h0LiA8MTk6MTg6MTU+CltUb2Q6RWluIFdpZGVyLUxpY2hdIDM4OTM0NSBFcmZhaHJ1bmdzcHVua3RlIGd1ZW5zdGlnIGFienVnZWJlbiEgPDE5OjE4OjE1PgpbVG9kOkxhcnNdIEVpbiBXaWRlci1MaWNoIGhhdCBnZXJhZGUgQ3JpdHRlciB1bWdlYnJhY2h0LiA8MTk6MjY6NDQ+CltUb2Q6RWluIFdpZGVyLUxpY2hdIDM3NDkyNSBFcmZhaHJ1bmdzcHVua3RlIGd1ZW5zdGlnIGFienVnZWJlbiEgPDE5OjI2OjQ0PgpbVG9kOkxhcnNdIEVpbiBTY2h3ZWluZWh1bmQgaGF0IGdlcmFkZSBDcml0dGVyIHVtZ2VicmFjaHQuIDwxOTo0MDozMT4KW1RvZDplaW4gU2Nod2VpbmVodW5kXSBLUlJSUlJSUlJSQ0hDSENIQ0hDSCA8MTk6NDA6MzE+CmNyaXR0ZXIgKHppZW1saWNoIGlkZWxpZykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTRVVGWiEgKE5vdmFzdG9ybSwgMjcuIEp1bCAxOTk5LCAxNDo0ODo1MSk6Cn4jISBybj1Dcml0dGVyIHJ0PTkzMzA3OTY4OSByZz1zY2htYXJybgp+IyEgdGlkPTkzMzA3OTY4OQpXaWVzbyB2ZXJzdGVoZSBpY2ggZGllc2VuIEFydGlrZWwgbmljaHQ/CgogIE5vdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlaHIgd2l0emlnICAoQ3JpdHRlciwgMjcuIEp1bCAxOTk5LCAxODowOTowNCk6CkRlciBHbGFzZ2lnYW50IHplcnNwbGl0dGVydC4KRWluIEdsYXNnaWdhbnQga29tbXQgYW4uCkVpbiBHbGFzZ2lnYW50IGhlYnQgZWluIEdsYXNzY2h3ZXJ0IGF1Zi4KCmMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2VociB3aXR6aWcgIChUZWRkeSwgMjcuIEp1bCAxOTk5LCAxODo1MDoxMyk6Cn4jISBybj1Dcml0dGVyIHJ0PTkzMzA5MTc0NCByZz1zY2htYXJybgp+IyEgdGlkPTkzMzA5MTc0NApJcyBkb2NoIGxvZ2lzY2gsIGR1IGhhZXR0ZXN0IE5JRSBpbSBMZWJlbiBhdWZnZXJhZXVtdC4KClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSXJnZW5kd2llLi4uIChXdXJ6ZWwsIDI3LiBKdWwgMTk5OSwgMjE6MTE6NTApOgp+IyEgcm49U29yY2VyZXIgcnQ9OTMzMDIyODI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMzMDIyODI3CmtsYXIgZnJldWVuIGRpZSBzaWNoLCB3ZW5uIGR1IGlobmVuIGhhYXJlIHVuZCBhdWdlbmJyYXVlbiB2ZXJzZW5nc3QuIGVpbiAKZmlzY2ggbWl0IGhhYXJlbiBzaWVodCBlYmVuIGVpbmZhY2ggYmxvZWRlIGF1cywgdW5kIGRhIGhpbGZzdCBkdSBpaG5lbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV0lOOTUtUmVnaXN0cnktRWludHJhZyAoTW9yZ290aCwgMjguIEp1bCAxOTk5LCAxMDowMDozMCk6ClNjaGF1dCBkb2NoIG1hbCBpbiBkZXIgV0lOOTUgUmVnaXN0cnkgb2IgaWhyIGVpbmVuIEVpbnRyYWcgdW50ZXI6CkFyYmVpdHNwbGF0elxIS0VZX0xPQ0FMX01BQ0hJTkVcU09GVFdBUkVcTWljcm9zb2Z0XFdpbmRvd3NcQ3VycmVudFZlcnNpb25cTVMtRApPUyBFbXVsYXRpb25cQXBwQ29tcGF0CmhhYnQuIERhbm4gc2Nyb2xsdCBtYWwgZ2FueiBuYWNoIHVudGVuLi4uLgoKVmllbCBTcGFzcyBiZWltIHN1Y2hlbiAhIDstKQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdy4uLiAoQW5hdG9sLCAyOC4gSnVsIDE5OTksIDEzOjExOjI1KToKU3VnYWFuIHJ1ZnQ6IHJhdXMgaGllcgpbVG9kOkxhcnNdIEVpbiBWZW51c2FiZW50ZXVyZXJmYWxsZSBoYXQgZ2VyYWRlIFN1Z2FhbiB1bWdlYnJhY2h0LgoKSmEuLi4gc2Nob24uLi4gYWJlci4uLiBuYWphLgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIChKYW1lc29uLCAyOC4gSnVsIDE5OTksIDE2OjUzOjQ4KToKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogaHVjaCBpY2ggc2VoIGdhciBuaXggKmcqCkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IG5vZSBuZXVlciBtb25pdG9yIDstKQoKakFtZXNvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9obmUgV29ydGUgKFdpbSwgMjguIEp1bCAxOTk5LCAxNjo1NTo0MCk6Cn4jISBybj1KYW1lc29uIHJ0PTkzMzE3MzYyOCByZz1zY2htYXJybgp+IyEgdGlkPTkzMzE3MzYyOAoKRHUgdGVpbHN0IExpYXJhIG1pdDogaG1tbW0uLi4uCkxpYXJhIGlzdCBnZXJhZGUgbmljaHQgZGE6IHVuaSA9IHRlbG5ldCA9IG5peGJsaWNrIDotKQoKQXVmIGRlciBVbmkgZWluZW4gbmV1ZW4gTW9uaXRvci4uLiBhaGEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV0lOOTUtUmVnaXN0cnktRWludHJhZyAoU3RyZWF3a2NldXIsIDI4LiBKdWwgMTk5OSwgMTk6MTQ6NDYpOgp+IyEgcm49TW9yZ290aCBydD05MzMxNDg4MzAgcmc9c2NobWFycm4KfiMhIHRpZD05MzMxNDg4MzAKWmVwaHlyIGlzdCBhdXNmdWVocmJhcj8gOi0pCgpycgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmEgc293YXMuLi4gKFRzdW5hbWksIDI4LiBKdWwgMTk5OSwgMjE6MDQ6MDApOgpEYSBzdGVoIGljaCBpbiBkZXIgQUcgdW5kIHRpcHAnIGF1cyBKdXggdW5kIFRvbGxlcmVpIG1hbCAnZXJob2VoZScgZWluLgpVbmQgd2FzIGFudHdvcnRldCBtaXIgZGEgZGVyIE1HLVJlY2huZXI6CgpEdSBoYXN0IGVpbmVuIE1pdHNwaWVsZXIgdW1nZWJyYWNodCEKSW4gZGllc2VtIEZhbGwga2FubnN0IER1IERlaW5lIFN0dWZlIG5pY2h0IGVyaG9laGVuLgpCaXR0ZSBnZWggenVyIFBvbGl6ZWkgdW5kIGJyaW5nIGRhcyBpbiBPcmRudW5nLgoKLi4uIGljaCBoYWJlIGdhciBuaWNodCBnZXd1c3N0LCBkYXNzIGRpZXNlciAqZWluZSogU3BpZWxlciwgZGVyIGJpcyBqZXR6dCAKaW4gbWVpbmVyIEVpc21pbmUgYXVmIGVpZ2VuZXMgVmVyc2NodWxkZW4gaGluIHVtcyBMZWJlbiBnZWtvbW1lbiBpc3QsIApudW4gbWVpbmUgd29obHZlcmRpZW50ZSBMZXZlbGVyaG9laHVuZyBibG9ja2llcnQuLi4gdHMsdHMsdHMuCgpUc3VuYW1pIChuaWNodCBzY2hsZWNodCBzdGF1bmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBKYSBzb3dhcy4uLiAoWm9vaywgMjguIEp1bCAxOTk5LCAyMToxMDo0Mik6Cn4jISBybj1Uc3VuYW1pIHJ0PTkzMzE4ODY0MCByZz1zY2htYXJybgp+IyEgdGlkPTkzMzE4ODY0MApJQ0gga29lbm50ZSBlcmhvZWhlbiwgYWJlciBkYXMgbGllZmUgamEgd2llZGVyIGRhcmF1ZiBoaW5hdXMsCmRhc3MgaWNoIGxpZWIgdW5kIG5ldHQgYmluLCBhYmVyIGRhcyB3aXNzZW4gamEgc2Nob24gYWxsZS4KCkVpbiBmaWVzXkheSF5IXkhsaWViIGxhZWNoZWxuZGVyIFpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSmEgc293YXMuLi4gKFdpbSwgMjguIEp1bCAxOTk5LCAyMToxMTo0Nik6Cn4jISBybj1Uc3VuYW1pIHJ0PTkzMzE4ODY0MCByZz1zY2htYXJybgp+IyEgdGlkPTkzMzE4ODY0MAoKVHVlIEp1bCAxMyAxNToyNTo1MCAxOTk5IHRzdW5hbWkoMjYvNzApIHRvZXRldGUgZ2FzdDEoMC8xKQoKRWluIHNlaHIgc2Nod2VyZXMgVmVyZ2VoZW4uIERhIGdpYnQgZXMga2VpbmUgR25hZGUhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBKYSBzb3dhcy4uLiAoVHN1bmFtaSwgMjguIEp1bCAxOTk5LCAyMToyMjoyOCk6Cn4jISBybj1XaW0gcnQ9OTMzMTg5MTA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMzMTg4NjQwCkphIGFiZXIgc293YXMgYXVjaC4uLgoKaWNoIHdlcmRlIGxhbmdzYW0gdmVyZ2Vzc2xpY2ggOikKCkhtbS4uIHNvIGVpbiBrbGVpbmVyIEdhc3QuLiBkZXIgemFlaGx0IGFiZXIgbnVyIGhhbGIsIG9kZXI/IDo+Pj4KClRzdW5hbWkgKG5laW4sIGljaCBiaW4gX2tlaW5fIFdpbmQpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXJzdGF1bmxpY2guLi4gKFpvb2ssIDI4LiBKdWwgMTk5OSwgMjI6MDY6NDgpOgoKUGFkcmVpYyB0ZWlsdCBEaXIgbWl0OiBhcmdoIGluIHdlbGNoZXIgcnVicmlrIHN0ZWh0IG5vY2htYWwgZGFzIG1pdCBkZW4KUGFkcmVpYyB0ZWlsdCBEaXIgbWl0OiBiaWxkZXJuPyBbMjI6MDJdCkR1IHRlaWxzdCBQYWRyZWljIG1pdDogYWxsZ2VtZWluClBhZHJlaWMgdGVpbHQgRGlyIG1pdDogYXJnaC4uIHVuZCBpY2ggc3VjaCBpbiBwYXJ0eSA6KSBbMjI6MDJdClBhZHJlaWMgdGVpbHQgRGlyIG1pdDogaG1tLi4gaW4gYWxsZ2VtZWluIGlzIGF1Y2ggbml4PyE/IFsyMjowM10KRHUgdGVpbHN0IFBhZHJlaWMgbWl0OiBydWJyaWsgYWxsZ2VtZWluZXMsIGFydGlrZWwgMjAKRHUgdGVpbHN0IFBhZHJlaWMgbWl0OiBvZGVyIHdhIHNtb2VjaHRlc3QgZHUgd2lzc2VuPwpQYWRyZWljIHRlaWx0IERpciBtaXQ6IGRlciBhcnRpa2VsIGluIGRlbSBzdGVodCB3byBkaWUgYmlsZGVyIHNpbmQgOikgWzIyOjA0XQpQYWRyZWljIHRlaWx0IERpciBtaXQ6IHdlbGNoZSBydWJyaWsgOikgWzIyOjA0XQpEdSB0ZWlsc3QgUGFkcmVpYyBtaXQ6IEFMTEdFTUVJTkVTISA7KQpQYWRyZWljIHRlaWx0IERpciBtaXQ6IGFoaGggOikgWzIyOjA0XQoKRXJzdGF1bmxpY2guLi4gOykKClpvb2ssIG5vY2htYWwgYXVmIEJpbGQgOTEgbmFjaHNjaGF1ZW5kIHVuZCBuaWNrZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVyc3RhdW5saWNoLi4uIChUZWRkeSwgMjguIEp1bCAxOTk5LCAyMjowODoyMik6Cn4jISBybj1ab29rIHJ0PTkzMzE5MjQwOCByZz1zY2htYXJybgp+IyEgdGlkPTkzMzE5MjQwOApKZWRlciBoYWx0IG5hY2ggc2VpbmVuIEZhZWhpZ2tlaXRlbi4KClRlZGR5OiBQYWRyZWljIGZvciBCZXNlbkVNLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2VyYWRlIHdhZWhyZW5kIGVpbmVyIFF1ZXN0Li4uIChNYWdlbmJyb3QsIDI4LiBKdWwgMTk5OSwgMjI6MzA6MzEpOgoKVG9waW5hbWJ1cnMgRnVyeiBzdGlua3Qgd2lya2xpY2ggZ3JhdWVuZXJyZWdlbmQuCkJsb2JvIG11c3Mga290emVuLgpMb25kb3Igc2NocmVpdDogVmVyZGFtbXQsIHZlcmRhbW10LCB2ZXJkYW1tdCwgaWNoIGhhYmUgZG9jaCBnZXNhZ3QsIGRhc3MKZGFzIEdlcmFldCBuaWNodCBmdW5rdGlvbmllcnQuClRvcGluYW1idXIgc2FndDogbWlzdCBpY2ggaGFiIHdhcyBmYWxzY2hlcyBnZWdlc3NlbgpCbG9ibyBzYWd0OiBEYW5uIG11ZXNzZW4gd2lyIGhpZXIgYWJlciBzY2huZWxsIHdlZy4KVG9waW5hbWJ1ciBsYWVzc3QgZWluZW4gU3RpbmtlZnVyeiBmYWhyZW4uCkZ1ZXJjaHRlcmxpY2hlciBHZXN0YW5rIGVyZnVlbGx0IGRlbiBSYXVtLgoKKndhZWx6KiBNYWdlbmJyb3QKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYXRoZW1hdGlrZXI/IChXaW0sIDI4LiBKdWwgMTk5OSwgMjI6Mzg6MTgpOgo+RWxpbmVhIHJ1ZnQ6IExpYXRoIHdvIGJpc3QgRHUuLiBJY2ggaGFiIDUwMDAgTXVlbnplbiBmdWVyIERpY2gKTGlhdGggcnVmdDogaGllciBhYmVyIGZyYWcgbWljaCBuaWNodCB3byBkYXMgaXN0CgprdXJ6ZSwgZHVyY2hhdXMgcmljaHRpZ2UsIGFiZXIgdm9lbGxpZyBzaW5ubG9zZSBBbnR3b3J0LiBNYXRoZW1hdGlrZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWF0aGVtYXRpa2VyPyAoQXBzdSwgMjguIEp1bCAxOTk5LCAyMzowMDoxMik6Cn4jISBybj1XaW0gcnQ9OTMzMTk0Mjk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMzMTk0Mjk4Ck1pY3Jvc29mdC1Qcm9ncmFtbWllcmVyLCB3dWVkZSBpY2ggZWhlciBzYWdlbiAKCkFwc3UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogd2FzIHNvIGFsbGVzIGxpZ2VuZ2VibGllYmVuIGlzdC4uLiAoWm9vaywgMjguIEp1bCAxOTk5LCAyMzowMTo0OCk6Cn4jISBybj1Nb250YW51cyBydD05MzMxOTQ2ODYgcmc9cGFydHkKfiMhIHRpZD05MzMxOTQ0MTkKVGFuaXMgaXN0IGVpbiBaZWNocHJlbGxlcj8gQWhhLCBndXQgenUgd2lzc2VuLi4uCgpab29rIGdyaW5zdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndvdywgaXN0IGRlciBzY2huZWxsIChXaW0sIDI5LiBKdWwgMTk5OSwgMDI6MjA6MjIpOgpEdSB0ZWlsc3QgQXBzdSBtaXQ6ICguLi4pCkFwc3UgaXN0IGdlcmFkZSBuaWNodCBkYTogc2Nod2VydCBkZXIgZ25hZGUKKGVpbmlnZSBTZWt1bmRlbiBzcGFldGVyKQpBcHN1IGlzdCBnZXJhZGUgbmljaHQgZGE6IHB5cmFtaWRlbnF1ZXN0CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVyc3RhdW5saWNoLi4uIChNb3Jnb3RoLCAyOS4gSnVsIDE5OTksIDA4OjA4OjQwKToKfiMhIHJuPVpvb2sgcnQ9OTMzMTkyNDA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMzMTkyNDA4CkhleSBjb29sLCBkYXMgaXN0IFBhZHJlaWNzIHdhaHJlIEJlc3RpbW11bmcuIEhleSBQYWRkeSwgZGFmdWVyIG11c3N0IER1IGtlaW4KSW5mb3JtYXRpayBzdHVkaWVyZW4uIERpZXNlcyAnUHJvZ3JhbW0nIGlzdCBzbyBlaW5mYWNoLCBkYXNzIHNlbGJzdCBEdSBlcyBmYXN0CkJ1Z2ZyZWkgc2NoYWZmZW4ga29lbm50ZXN0IDstKQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRXJzdGF1bmxpY2guLi4gKEFuYXRvbCwgMjkuIEp1bCAxOTk5LCAwOToyNzowOSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkzMzIyODUyMCByZz1zY2htYXJybgp+IyEgdGlkPTkzMzE5MjQwOApGYXN0LCBNb3Jnb3RoLCBmYXN0LiBCZXJlaXRzIG5hY2ggZWluZW0gRHJpdHRlbCBkZXMgenUgYmVhcmJlaXRlbmRlbgpCZXJlaXRzIHNhaGVuIHdpciBhdWYgW0RlYnVnOl0gVG9vIGxvbmcgZXZhbHVhdGlvbi4gRXhlY3V0aW9uIGFib3J0ZWQuCgpTY2hhZGUsIHNjaGFkZS4uLiA7KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHb2lsIDopIChVbmFzYWksIDI5LiBKdWwgMTk5OSwgMTk6MDc6NDQpOgpBcG9sbG9uaWEgYmV0cmFjaHRldCBkZW4gV2FuZGxlciB1bmQgc2FndDogIkZlaWdsaW5nIiEKRGVyIFdhbmRsZXIgdmVyc2Nod2luZGV0IHVycGxvZXR6bGljaC4KCmRhIHNhZ2UgbWFsIGVpbmVyIHNpZSBlaWduZXQgc2ljaCBuaWNodCBhbHMgTWFnIDopICp3YWVseiogU29nYXIgZGVyIFdhbmRsZXIKdmVyc2Nod2luZGV0IGF1ZiBCZWZlaGwgOikKKmVpbmUgc2ljaCBpbW1lciBub2NoIGtyYW5rbGFjaGVuZGUgVW5hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBhdHJ5biAoTWFoYXRtdSwgMjkuIEp1bCAxOTk5LCAxOTo0NTowNyk6Cn4jISBybj1Cb2luZyBydD05MzMwMDA4NzUgcmc9cG9saXplaS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9OTMzMDAwODc1CkhhZXR0ZSBlcyBuaWNodCBlaW4gQnVuZGVzdmVyZGllbnN0a3JldXogYXVjaCBnZXRhbj8KCk1haGF0bXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZWNodGlnZXIgVHJpdHQhIChNZW5hY2UsIDI5LiBKdWwgMTk5OSwgMjA6MTQ6NTQpOgpMYXJhQ3JvZnQgc2FndDogZmFsbCB1bSEKTGFyYUNyb2Z0IHRyaXR0IGRpZSBXYWNoZS4KRGllIFdhY2hlIHZlcnNpY2tlcnQgaW0gQm9kZW4uCgpNZW5hY2UgKmVpbmUga2xlaW5lIEFiZW50ZXVyZXJpbiBiZXd1bmRlcm5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5zaWNodGJhcmUgV2FjaGVuIChNZW5hY2UsIDI5LiBKdWwgMTk5OSwgMjA6MTg6MTgpOgpEdSBzdGVoc3QgaW4gZWluZW0gRG9yZi4gU3VlZGxpY2ggdm9uIERpciBsaWVndCBkZXIgRWluZ2FuZyB6dSBlaW5lciBkdW5rbGVuCkhvZWhsZS4gQW5zb25zdGVuIHN0ZWhlbiBoaWVyIG5vY2ggZHJlaSBIdWV0dGVuIGltIE5vcmRlbiwgTm9yZG9zdGVuIHVuZApPc3RlbiwKZGllIER1IGFiZXIgbmljaHQgcmljaHRpZyBlcmtlbm5lbiBrYW5uc3QsIGRlbm4gZWluIGhlZnRpZ2VyIFdpbmQgd2VodCBEaXIgZGVuClNhbmQgaW4gZGllIEF1Z2VuLiBJbSBXZXN0ZW4gcmFndCBlaW5lIER1ZW5lIGF1Zi4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4sIHdlc3RlbiB1bmQgbm9yZGVuLiAKW1RlYW06U2NobmVja2VuXSBUaGUgUGhhbnRvbSBNZW5hY2UgaXN0IGVpbiAiU2NobmVja2VyaWNoIi4KRWluIGdlZmFlbHNjaHRlciBMZWlibml6IEtla3MuCkxhcmFyIGdyZWlmdCBuYWNoIGRlbiBTdGVybmVuLgpzCkRpZSBXYWNoZSBzYWd0OiBXYXMgd2lsbHN0IER1IGRlbm4gZGEgdW50ZW4/IER1IGtvbW1zdCBkYSBuaWNodCBoaW4hCgpNZW5hY2UgKmtlaW5lIFdhY2hlIHNlaGVuKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hdGhlbWF0aWtlcj8gKE9sbGksIDI5LiBKdWwgMTk5OSwgMjE6Mjc6MDEpOgp+IyEgcm49V2ltIHJ0PTkzMzE5NDI5OCByZz1zY2htYXJybgp+IyEgdGlkPTkzMzE5NDI5OApTYWcgamEgbml4IHVlYmVyIE1hdGhlbWF0aWtlciEgKGF1Y2ggd2VubiBEdSBSZWNodCBoYXN0OykgKQotIE9sbGkKaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyIHVuZCBpaHIgd2lsbGtvbW1lbiA6KSAoUHVrLCAyOS4gSnVsIDE5OTksIDIxOjQ3OjEyKToKCkVpbiBCZWlmYWxsc3N0dXJtIGJyYW5kZXQgaW0gRGlhbW9uZHBhcmsgYXVmLiBXYXMgZGEgd29obCB3aWVkZXIgbG9zIGlzdD8KRmV1ZXJ3ZWhyICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpQdWsgKGZpbmRldCBkYXMgbnVyIGxlaWNodCB1ZWJlcnRyaWViZW46KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOykgKENhbHpvbmUsIDI5LiBKdWwgMTk5OSwgMjI6MjE6NDIpOgpBbmR5IGhhdCAnbmVuIG5laWVuIFNwcnVjaD8KCkFuZHkgc2FndDogTHpnLCBESUVERVIgaW4gZGllIEtsZXJpa2VyIEdpbGRlIG9kZXIgVHlwbz8KCm5ldHQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFuc2Nod2FlcnphcnRpa2VsIChBcmssIDI5LiBKdWwgMTk5OSwgMjI6Mzk6NTIpOgpIaWVybWl0IGdlYmUgaWNoIGt1bmQgdW5kIHp1IHdpc3NlbiwgZGFzcyBzaWNoIEZldWVyd2VociBtaXIgYXVmcwpmcmV1bmRsaWNoc3RlIGdlaG9sZmVuIGhhdC4gRXIgdmVyZGllbnQgZWluZW4gc29sY2hlbiBKb2IgaW0gUmVpY2hlIGRlcyBDaGFvcwpOSUNIVC4gTmljaHQgbnVyLCBkYXNzIGVyIHNpY2ggbmV0dCBtaXQgbWlyIHVudGVyaGllbHQsIGF1Y2ggdGF0a3JhZWZ0aWcgd2lsbAplciBGaWxlcyB2ZXJCRVNTRVJOLiBJY2ggc2NobGFnZSB2b3IsIGlobiB6dW0gQWJ0IEthbmRyaXMgZWhyZW5oYWxiZXIgenUKZXJuZW5uZW4uCgoKCgoKCk1hbm4sIGJpbiBpY2ggZ2VtZWluIDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtbSwgd28gd2lyIG5pY2h0IHVlYmVyYWxsIHphdWJlcm4gOykgKE1vcmdvbmF0ZSwgMjkuIEp1bCAxOTk5LCAyMzozNDozNyk6CkdlcmFkZSBwYXNzaWVydDoKCnRyZXRlIGl2bwpJdm8gd2VocnQgZGVpbiAidHJldGUiIGFiLgoKaG1tLCB3ZW5uIHdpciBiZWkgc29sY2hlbiB0YWV0aWdrZWl0ZW4gc2Nob24gemF1YmVybiwgCmRhbm4gc29sbHRlbiB3aXIgZnJvaCBzZWluLCBkYXNzIGRhcyBrZWluZSBtcCBrb3N0ZXQuIAoKZWluZSByb2ZsbmRlIG1vcmdvbmF0ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFuc2Nod2FlcnphcnRpa2VsIChIb2JvLCAzMC4gSnVsIDE5OTksIDEwOjM1OjUwKToKfiMhIHJuPUFyayBydD05MzMyODA3OTIgcmc9c2NobWFycm4KfiMhIHRpZD05MzMyODA3OTIKVm9uICdlaHJlbmhhbGJlcicga2FubiBkYSB3b2hsIGtlaW5lIFJlZGUgc2VpbiEKU293YXMgaXN0IGRvY2ggZWluZSByaWNodGlnZSBTdHJhZmUgZnVlciBlaW5lbiB3YWhyZW4gQ2hhb3RlbiEKCiBIb2JvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFuc2Nod2FlcnphcnRpa2VsIChBcmssIDMwLiBKdWwgMTk5OSwgMTE6NDQ6MTgpOgp+IyEgcm49SG9ibyBydD05MzMzMjM3NTAgcmc9c2NobWFycm4KfiMhIHRpZD05MzMyODA3OTIKSm8sIGRlc2hhbGIgc2FndGUgaWNoIGphIGF1Y2ggZ2VtZWluLiBOYWphLCBlciBnbGF1YnQgamV0enQsIGVyIGhhZXR0ZSBzZWluZQpCb3NoYWZ0aWdrZWl0IGJld2llc2VuLCBpbmRlbSBlciBtaWNoIHBsYWV0dGV0ZSwgYWJlciBkYXMgZ2luZyBhdWNoIHNvIGVpbgpidWVzc2NoZW4gaW4gZGllIEhvc2UuIEVyIGlzdCBpbSBHcnVuZGUgc2VpbmVzIHNjaHdhcnplbiBIZXJ6ZW5zIGRvY2ggZWluZQpHVVRFIFNlZWxlLiBIbSwga2FubiBlciBzaWNoIGltIE1vbWVudCB2ZXJ0ZWlkaWdlbiA/IE5pY2h0ID8gR3V0LgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFuc2Nod2FlcnphcnRpa2VsIChBcmFuY2lhLCAzMC4gSnVsIDE5OTksIDEyOjE5OjEzKToKfiMhIHJuPUFyayBydD05MzMzMjc4NTggcmc9c2NobWFycm4KfiMhIHRpZD05MzMyODA3OTIKRWluZSBTZWVsZSBpc3QuIFNpZSBpc3Qgd2VkZXIgbnVyIGd1dCBub2NoIG51ciBzY2hsZWNodC4gU2llIGlzdCBlaW5mYWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BpZWxwYXVzZSBvZGVyIHdpZT8gKFpvb2ssIDMwLiBKdWwgMTk5OSwgMTI6MjE6NDcpOgoKSG1tLi4gZGEgZ2FiIGVzIG1hbCBqZW1hbmRlbiwgZGVyIGhhdHRlIG5lIFNwaWVscGF1c2UsIGRvY2gKcGxvZXR6bGljaCB3YXIgZXIgd2llZGVyIGRhLiBLdXJ6ZXIgQXVzenVnIGF1cyBkZW0gR2VzcHJhZWNoOgoKRHUgdGVpbHN0IDxuYW1lPiBtaXQ6IE5hLCB3YXIgd29obCBuaXggbWl0IFNwaWVscGF1c2U/CjxuYW1lPiB0ZWlsdCBEaXIgbWl0OiBlbnRfem9va19zZXJzY2hlaW51bmdlbgoKClpvb2sgZ3JpbnN0IHVuZCBzaWVodCBkYXMgYWxzIHdlaXRlcmVuIEJld2VpcywgZGFzcyBlciBsaWViIHVuZCBuZXR0IGlzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFuc2Nod2FlcnphcnRpa2VsIChBcmssIDMwLiBKdWwgMTk5OSwgMTI6MzQ6MzEpOgp+IyEgcm49QXJhbmNpYSBydD05MzMzMjk5NTMgcmc9c2NobWFycm4KfiMhIHRpZD05MzMyODA3OTIKSmEsIGF1c3NlciBoaWVyIGltIE1vcmdlbmdyYXVlbi4gSGllciBnbGF1YmVuIHdpciBub2NoIGFuIGRpZSBib2VzZW4gU2VlbGVuCnVuZCBhbiBkaWUgZ3V0ZW4sIGRpZSBhdWNoIG5hY2ggZGVtIFRvZCBVbmhlaWwgb2RlciBTZWdlbiBicmluZ2VuLiBHZWxlYnQgd2lyZApqZWRlbiBUYWcsIGRvY2ggb2huZSBkaWUgU2VlbGUgc2luZCB3aXIgZ2Vpc3Rsb3NlIEV4aXN0ZW56ZW4sIFVudG90ZW4gZ2xlaWNoLgpNYW4ga2FubiBkdXJjaCBkYXMgQ2hhb3Mgb2RlciBkaWUgcmVpbmlnZW5kZSBLcmFmdCBLYW5kcmlzIF9iZXNlZWx0XyBzZWluLCBkaWUKU2VlbGUgaXN0IGR1cmNoYXVzIGJlZWluZmx1c3NiYXIsIG51ciBkZXIgS29lcnBlciBpc3QgZGVyIGF1c2Z1ZWhyZW5kZSBUZWlsLApkYXMgTWVkaXVtIGRlc3Nlbiwgd2FzIHdpciBzaW5kIHVuZCB0dW4uIE9obmUgZGllIFNlZWxlIHdhZXJlIGVyIGVpbmZhY2gsIHNvCmlzdCBlciBlaW4gS2FuYWwgZnVlciB1bnMuIFNjaGF1ZW4gd2lyIG5hY2ggdW50ZXIKL3BsYXllcnMvZmV1ZXJ3ZWhyL2dlaGVpbS9zZWhyX2dlaGVpbS9ib2VzZS9jaGFvcy9vYmovc291bC5jOgoKLi4uCgojaW5jbHVkZSA8aGFlc3NsaWNoLmg+CiNpbmNsdWRlIDxnZW1laW4uaD4KCi4uLgoKY3JlYXRlKCkKewogOjpjaGFvc19pZGlvdGVuX25wY19jcmVhdGUoKTsKCi4uLgogU2V0UHJvcChQX0lDSF9IQVNTRV9KRURFX09SRE5VTkcsIDEwMDArcmFuZG9tKDU0MzIzNDU4Mjc5ODc5MykpOwogU2V0UHJvcChQX0dVSUxELCAiZ2hhb3NzIik7IC8vIENoYW90ZW4gaGFzc2VuIFJFQ0hUc2NocmVpYnVuZyEKCi4uLgp9Cgppbml0KCkKewogaWYgKHByZXNlbnQoZmluZF9wbGF5ZXIoImFyayIpLCBlbnZpcm9ubWVudCgpKSkKIHsgdmVyaG9laG5lX2FyaygpOyB6YXBfYXJrKCk7IH0KIGVsc2UgeyBzZWlfbm9ybWFsX2dlbWVpbigpOyB9CiA6OmluaXQoKTsKfQoKLi4uCnZlcmhvZWhuZV9hcmsoKSB7IC4uLiB9IC8vIFplbnNpZXJ0IQoKemFwX2FyaygpIHsgLi4uIH0gLy8gRGFzIFVlYmxpY2hlIGhhbHQuCgpzZWlfbm9ybWFsX2dlbWVpbigpCnsKLi4uIC8vIEhpZXIgdmVyZm9sZ3QgZGVyIE1hZ2llciBqZWRlbiBTcGllbGVyIHVuZCB1ZWJlcmdpZXNzdCBpaG4KICAgIC8vIG1pdCBkZW4gdWVibGljaGVuIEhhc3N0aXJhZGVuIGRlciBlaW5mYWxsc2xvc2VuIENoYW9zaGlybmUuCn0KLi4uCgoKSG0sIGRhcyByZWljaHQgZGFubiB3b2hsLiAxMTIgaXN0IHp3YXIgZ2VtZWluLCBhYmVyIHdpciBrb2VubmVuIGlobQpoZWxmZW4uIEhpbGZzYmVyZWl0ZSBNYWdpZXIgc2NocmVpYmVuIGVpbmZhY2ggZWluZSBNYWlsIGFuIEFyayB1bnRlcgpkZXIgVWViZXJzY2hyaWZ0ICJIaWxmZSBmdWVyIEZldWVyd2VociIuCkdlbWVpbnNhbSBzb2xsdGVuIHdpciBkYW5uIGRhcyBGaWxlIGhlaW1saWNoIHVtYmF1ZW4ga29lbm5lbi4gV2VyCnNjaGxpZXNzdCdzIGFuID8KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBbnNjaHdhZXJ6YXJ0aWtlbCAoUGFyYWNlbHN1cywgMzAuIEp1bCAxOTk5LCAxMjo0OTozNCk6Cn4jISBybj1BcmsgcnQ9OTMzMzMwODcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMzMjgwNzkyCk5laW4gbmVpbiwgc2llIGhhdCBzY2hvbiByZWNodC4gRGllIFNlZWxlIGlzdC4gTWVociBuaWNodC4gRGVubiBzbywgd2llCndpciBkaWUgS2luZGVyIGRlcyBVbml2ZXJzdW1zIHNpbmQsIGlzdCBhdWNoIHVuc2VyZSBTZWVsZSBlaW4gVGVpbCBkZXMKVW5pdmVyc3Vtcy4gVW5kIGRhcyBVbml2ZXJzdW0gaXN0IG5ldXRyYWwuCkRhcyBtaXQgZGVtIGd1dC9ib2VzZSBpc3QgbnVyIGV0d2FzLCB3YXMgc2ljaCBkaWVzZSBWZXJibGVuZGVyIGF1cyBkZXIKQ2hhb3MtIGJ6dy4gS2xlcnVzLUdpbGRlIGF1c2dlZGFjaHQgaGFiZW4sIHVtIExldXRlIHp1IHZlcmZ1ZWhyZW4gdW5kCmFuIHNpY2ggenUgYmluZGVuLiBEYXMgU3RyZWJlbiBuYWNoICJkZW0gR3V0ZW4iIG9kZXIgImRlbSBCb2VzZW4iIGlzdAplaW4gVmVyaGFsdGVuIHdpZGVyIGRlciBHcnVuZGxhZ2VuIHVuc2VyZXIgRXhpc3RlbnouCgpQYXJhY2Vsc3VzLCBUYW5qaWFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQW5zY2h3YWVyemFydGlrZWwgKEFyaywgMzAuIEp1bCAxOTk5LCAxMzoxMzoxNyk6Cn4jISBybj1QYXJhY2Vsc3VzIHJ0PTkzMzMzMTc3NCByZz1zY2htYXJybgp+IyEgdGlkPTkzMzI4MDc5MgpNaWNoIGRldWNodCwgZWluIFZlcmJsZW5kZXIsIGVpbiBzY2htdXR6aWdlciBOaWhpbGlzdCwgaXN0IGluIHVuc2VyZSBSZWloZW4KZ2VyYXRlbi4gSGF0IGVyIGRlbm4gc2Nob24gdmVyZ2Vzc2VuLCBkYXNzIGplZGUgU2VlbGUgYW5kZXJzIGlzdCA/IEplZGUKSGFuZGx1bmcgYmVkYXJmIGVpbmVzIEFudHJpZWJzLCBkZXIgbnVuIG5pY2h0IGF1cyBlaW5lciBuZXV0cmFsZW4KR2xlaWNoZ3VlbHRpZ2tlaXQgaGVyYXVzIGdlc2NoaWVodCwgc29uZGVybiBzZWluZSBLcmFmdCBhdXMgZWluZW0gV3Vuc2NoIG5hY2gKVmVyYWVuZGVydW5nIGJlemllaHQuIERpZXNlIEFydCBkZXIgVmVyYWVuZGVydW5nIGlzdCBwZXIgc2UgbmljaHQgZ3V0IG9kZXIKYm9lc2UsIGRvY2ggZGVyIFd1bnNjaCBpc3QgZXMgZ2xlaWNod29obC4KRGFzIFVuaXZlcnN1bSBtYWcgaW5zb2Zlcm4gbmV1dHJhbCBzZWluLCBhbHMgZXMgZGFzZWxic3Qgc2VlbGVubG9zIGlzdCwgZG9jaAp3aXIgS2luZGVyIGRlcyBVbml2ZXJzdW1zIHNpbmQgZXMgbWl0bmljaHRlbi4uCkthZW1wZmVuIHdpciBuaWNodCBzdGFlbmRpZyB1bSBldHdhcywgdW5kIGlzdCBkYXMgbmljaHQgc3RhZW5kaWcgZWluIEJlbGVnCmZ1ZXIgZGllIE5pY2h0LU5ldXRyYWxpdGFldCBkZXIgU2VlbGUgPyBIb2VydCBkYXMgTGViZW4gbmFjaCBkZW0gVG9kZSBlaW5mYWNoCmF1ZiBvZGVyIHdlcmRlbiB3aXIgZXJuZXV0IGdlYm9yZW4sIHVtIHdlaXRlciB6dSBrYWVtcGZlbiBmdWVyIHVuc2VyZQpVZWJlcnpldWd1bmdlbiBvZGVyIHNvbnN0aWdlIFppZWxlID8KR3V0IG9kZXIgQm9lc2UgaXN0IGtlaW5lIEZyYWdlIGVpbmVyIERlZmluaXRpb24sIHNvbmRlcm4gZWluZmFjaCBkYXMsIHdhcyBlaW5lCk1laHJoZWl0IHZvbiBFeGlzdGVuemVuIHNvIGFuc2llaHQuClNvLCB1bmQgamV0enQgc2NoYXUgaWNoIG1hbCB3aWVkZXIgYXVmIG1laW4gQWxpZ25tZW50IHVuZCB1ZWJlcmxlZ2UsIG9iIGljaApkYXMgbmljaHQgd2llZGVyIG1hbCBhZW5kZXJuIHNvbGx0ZSAuLi4gZWluZmFjaCBtYWwgc28uIFdhcyBnaWJ0IGVzIGhldXRlCmVpZ2VudGxpY2ggenVtIE1pdHRhZ2Vzc2VuID8KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgozIGRvb2ZlIGVpbiBHZWRhbmtlIDopIChUd2luc2VuLCAzMC4gSnVsIDE5OTksIDE3OjAzOjQzKToKPiBbPE1hc3RlUj46UHVrXSBsCiBbPE1hc3RlUj46QmlyZHldIGwKIFs8TWFzdGVSPjpBc2hhbl0gbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IDMgZG9vZmUgZWluIEdlZGFua2UgOikgKEdyaW1tYm9ybiwgMzAuIEp1bCAxOTk5LCAxNzowNzoxMik6Cn4jISBybj1Ud2luc2VuIHJ0PTkzMzM0NzAyMyByZz1zY2htYXJybgp+IyEgdGlkPTkzMzM0NzAyMwpIbW0uIEFsc28sIGRlbiBHZWRhbmtlbiBoYWJlIGljaCBkYSBhYmVyIGlyZ2VuZHdpZSBuaWNodCBmZXN0c3RlbGxlbgprb2VubmVuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlciB3aWUgd28gd2FzIHdhbm4/IChIb2JvLCAzMC4gSnVsIDE5OTksIDE3OjExOjUyKToKQW5hdG9sIHRlaWx0IERpciBtaXQ6IEljaCBsYXNzIHZvbiBSb2NodXMgZWluIEFyayBhdXMgUGFtcGVycyBtYWNoZW4gOikKCiAgSG9ibwogLSB3ZWlzcyB3b3J1bSBlcyBnaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpad2VpdGllcyBlcnpldWdlbiBTY2hpem9waHJlbmllIDopIChTdGluZywgMzAuIEp1bCAxOTk5LCAxOToyNTozMyk6CkRlciBTYW5kdGlnZXIgYmVncnVlc3N0IERhcmt3aW5nIG1pdDogSWNoIHNvbGwgRGlyIHZvbiBUcmF1bWEgYXVzcmljaHRlbjoKS2FlbXBmZXIgYWJ3ZXJ0ZW4hCgpXZXIgVHJhdW1hIGlzdCwgbXVzcyBpY2ggbmljaHQgZXJ3YWVobmVuIG9kZXIgPyA6KQoKU3RpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnp1IGxhbmdzYW0uIChXaW0sIDMwLiBKdWwgMTk5OSwgMjM6NDI6MDMpOgo+QXJjb3IgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KW0FsbGdlbWVpbjpMaWxsZWJyb3JdIEJpdHRlIGJpdHRlLCBrYW5uIG1hbCB3ZXIgQXJjb3IgcmF1c3NjaG1laXNzZW4/IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NodWxka29tcGxleGUuLi4uLiAoTmV2b2ssIDMxLiBKdWwgMTk5OSwgMDY6NTY6MTYpOgpEYSBsb2dndCBtYW4gc2ljaCBlaW4sIGZyZXV0IHNpY2ggZWluIHBhYXIgRnJldW5kZSB6dSBzZWhlbiB1bmQgZGFubiBzb3dhczogCgpWZWN0b3IgdGVpbHQgRGlyIG1pdDogdW5kIGdyYWQgdm9yIG5lciBzZWt1bmRlIHNhZyBpY2ggenUgc2t5LCBkZXIgZXIgZGVyClZlY3RvciB0ZWlsdCBEaXIgbWl0OiBlaW56aWdlIHRydmVzIGlzdDopKQoKU2t5IHRlaWx0IERpciBtaXQ6IHVuZCBncmFkIHNhZ3IgdmVjdG9yIGluIHJsIHp1IG1pcjogIkR1IGJpc3QgZ2xhdWIgZGVyClNreSB0ZWlsdCBEaXIgbWl0OiBlaW56aWdlIEthZW1wZmVyIgoKKmdydW1wZioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbnNpY2h0IGlzdCBkZXIgZXJzdGUgU2Nocml0dC4uPyAoR3JpbW1ib3JuLCAzMS4gSnVsIDE5OTksIDA3OjQ1OjAyKToKfiMhIG9uPVplcGh5ciBvdD05MzMzNzA0MDcgb2c9ZW50d2lja2x1bmcKRWJlbiBpbiBEcmFrb25pZW46CgpQYWRyZWljIHNhZ3Q6IFVuZCBuZXJ2ZW4ga2FubiBpY2ggYXVjaCBzdXBlciB0b2xsIDopCgpncmluc2VuZCwgQzQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaW5zaWNodCBpc3QgZGVyIGVyc3RlIFNjaHJpdHQuLj8gKEdyaW1tYm9ybiwgMzEuIEp1bCAxOTk5LCAwNzo0NTowNCk6Cn4jISBvbj1QYWRyZWljIG90PTkzMzM3MDc3NyBvZz1lbnR3aWNrbHVuZwp+IyEgcm49WmVwaHlyIHJ0PTkzMzM3MDQwNyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTkzMzM3MDQwNwouLi4genVyIFBlcmZla3Rpb24uCgpQYWRyZWljCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbnNpY2h0IGlzdCBkZXIgZXJzdGUgU2Nocml0dC4uPyAoR3JpbW1ib3JuLCAzMS4gSnVsIDE5OTksIDA3OjQ4OjMyKToKfiMhIHJuPUdyaW1tYm9ybiBydD05MzMzOTk5MDQgcmc9c2NobWFycm4KfiMhIHRpZD05MzMzNzA0MDcKIkF1Y2ggZGVyIGxhZW5nc3RlIFdlZyBiZWdpbm50IG1pdCBlaW5lbSBTY2hyaXR0LiIKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRWluc2ljaHQgaXN0IGRlciBlcnN0ZSBTY2hyaXR0Li4/IChBbmF0b2wsIDMxLiBKdWwgMTk5OSwgMTI6MTg6MTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTkzMzQwMDExMiByZz1zY2htYXJybgp+IyEgdGlkPTkzMzM3MDQwNwpJY2ggZ2xhdWJlLCBEdSBoYXN0IERpY2ggZGllc2VzbWFsIG1pdCBEZWluZXIgVmVybGVnZXJlaSBncm9lYnN0ZW5zCnZlcmhhdWVuLCBHcmltbWkuLi4gRGVyIEFydGlrZWwgdm9uIFplcGh5ciBoYXQgKm5pY2h0cyogbWl0IFNjaG1hcnJuCnp1IHR1bi4gQWJlciBhdWNoIGdhciBuaWNodHMuCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3ZW5uIHphdWJlcmVyIGZvcnNjaGVuIChTa3ksIDMxLiBKdWwgMTk5OSwgMTk6NTg6NDMpOgoKW01vZXJkZXI6R2Vpc3QgZWluZXMgZ3Jvc3NlbiBGZXVlcmRhZW1vbnNdIERhcyBuYWVjaHN0ZSBNYWwgc2llaHQgbWFuIHVuc2VyZQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBncm9zc2VuIEZldWVyZGFlbW9uc10gYmVpZGVuIE5hbWVuIGF1ZiBbVG9kOl0sIFZlY3RvciEKW01vZXJkZXI6R2Vpc3QgZWluZXMgZ3Jvc3NlbiBGZXVlcmRhZW1vbnNdIDwxOTo0ODozNT4KW01vZXJkZXI6R2Vpc3QgZWluZXMgU2FldXJlZGFlbW9uc10gSmV0enQgaGF0IG1pY2ggZG9jaCBnbGF0dCBWZWN0b3IgZXJ3aXNjaHQKW01vZXJkZXI6R2Vpc3QgZWluZXMgU2FldXJlZGFlbW9uc10gOiggPDE5OjQ5OjI1PgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBGZXVlcmRhZW1vbnNdIERpZSBFaHJlIHdlcmQgaWNoIFZlY3RvciBuaWNodCBhbnR1biwgdW5kCltNb2VyZGVyOkdlaXN0IGVpbmVzIEZldWVyZGFlbW9uc10gaGllciBoZXJ1bXBvc2F1bmVuLCB3ZXIgbWljaCB1bWdlbmlldGV0CltNb2VyZGVyOkdlaXN0IGVpbmVzIEZldWVyZGFlbW9uc10gaGF0ISA8MTk6NTE6MDc+CltNb2VyZGVyOkdlaXN0IGVpbmVzIGdyb3NzZW4gRmV1ZXJkYWVtb25zXSBJY2ggZ2xhdWIsIGpldHp0IGtlbm5lIGljaCBBTExFCltNb2VyZGVyOkdlaXN0IGVpbmVzIGdyb3NzZW4gRmV1ZXJkYWVtb25zXSBUb2Rlc3NlcXVlbnplbiwgVmVjdG9yISA8MTk6NTE6NTE+CgpbZmluZ2VyIFZlY3Rvcl0KWy4uXQp6LlogYWJ3ZXNlbmQsIEdydW5kIGZvcnNjaGVuCgpubyBjb21tZW50CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFaW5zaWNodCBpc3QgZGVyIGVyc3RlIFNjaHJpdHQuLj8gKEdyaW1tYm9ybiwgMzEuIEp1bCAxOTk5LCAyMToxNjoxNCk6Cn4jISBybj1BbmF0b2wgcnQ9OTMzNDE2Mjk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMzMzcwNDA3CkVyIHN0YW5kIGluIGVudHdpY2tsdW5nLiBVbmQgYXVjaCB3ZW5uIGRhcyBuaWNodCBleHBsaXppdCBkYWJlaSBzdGVodCBnZWh0cyBpbgpqZW5lciBSdWJyaWsgdW0gZGllIF90ZWNobmlzY2hlXyBFbnR3aWNrbHVuZyBkZXMgTUdzLCB1bmQgbmljaHQgdW0gZGllClBlcnNvZW5saWNoa2VpdHNlbnR3aWNrbHVuZyBkaXZlcnNlciBMZXV0ZS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKkcqIChLYW1lbG90LCAzMS4gSnVsIDE5OTksIDIxOjUxOjI5KToKVG9kIEVpbiBab21iaWVza2VsZXR0IGhhdCBnZXJhZGUgS2FyaWMgdW1nZWJyYWNodC4KVG9kIFdlbm4gRHUgZXJzdCBtYWwgdmVyZmF1bHQgYmlzdCwgZGFubiBrb2VubmVuIHdpcgpUb2QgenVzYW1tZW4gU3BpZWxlciB1bWJyaW5nZW4hCkthcmljICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKkcqIChXaW0sIDMxLiBKdWwgMTk5OSwgMjE6NTI6MDUpOgp+IyEgcm49S2FtZWxvdCBydD05MzM0NTA2ODkgcmc9c2NobWFycm4KfiMhIHRpZD05MzM0NTA2ODkKSG1tLi4uIExhc3MgcmF0ZW46IEZhbHNjaCBrb25maWd1cmllcnRlcyBabXVkLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpbVG9kOkxhcnNdIEVpbiBab21iaWVza2VsZXR0IGhhdCBnZXJhZGUgS2FyaWMgdW1nZWJyYWNodC4gKEthbWVsb3QsIDMxLiBKdWwgMTk5OSwgMjE6NTQ6MDQpOgpbVG9kOkVpbiBab21iaWVza2VsZXR0XSBXZW5uIER1IGVyc3QgbWFsIHZlcmZhdWx0IGJpc3QsIGRhbm4ga29lbm5lbiB3aXIKW1RvZDpFaW4gWm9tYmllc2tlbGV0dF0genVzYW1tZW4gU3BpZWxlciB1bWJyaW5nZW4hCkthcmljICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCiBzbyBpc3QgZGFzIGZ1ZXIgZGljaCBiZXNzZXIgV0lNID8/Pz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogW1RvZDpMYXJzXSBFaW4gWm9tYmllc2tlbGV0dCBoYXQgZ2VyYWRlIEthcmljIHVtZ2VicmFjaHQuIChXaW0sIDMxLiBKdWwgMTk5OSwgMjE6NTQ6MzApOgp+IyEgcm49S2FtZWxvdCBydD05MzM0NTA4NDQgcmc9c2NobWFycm4KfiMhIHRpZD05MzM0NTA4NDQKCldpbSBhcHBsYXVkaWVydCBLYW1lbG90LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBbVG9kOkxhcnNdIEVpbiBab21iaWVza2VsZXR0IGhhdCBnZXJhZGUgS2FyaWMgdW1nZWJyYWNodC4gKE5pY2h0cywgMzEuIEp1bCAxOTk5LCAyMTo1NDo0OSk6Cn4jISBybj1LYW1lbG90IHJ0PTkzMzQ1MDg0NCByZz1zY2htYXJybgp+IyEgdGlkPTkzMzQ1MDg0NApEYXMgbWl0IGRlbSAic2NocmVpYmUiLUJlZmVobCwgZGFzIGxlcm5zdCBEdSBpcmdlbmR3YW5uIGF1Y2ggbm9jaC4uLgoKIiIgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogW1RvZDpMYXJzXSBFaW4gWm9tYmllc2tlbGV0dCBoYXQgZ2VyYWRlIEthcmljIHVtZ2VicmFjaHQuIChSaW5nb3IsIDMxLiBKdWwgMTk5OSwgMjE6NTU6MDMpOgp+IyEgcm49S2FtZWxvdCBydD05MzM0NTA4NDQgcmc9c2NobWFycm4KfiMhIHRpZD05MzM0NTA4NDQKV2VubiBEdSBqZXR6dCBub2NoIGxlcm5zdCwgZGVuIFRleHQgbmljaHQgaW4gZGVuIEJldHJlZmYgenUgc2NocmVpYmVuLCBpc3QgZXMKcGVyZmVrdC4KClJpbmdvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBbVG9kOkxhcnNdIEVpbiBab21iaWVza2VsZXR0IGhhdCBnZXJhZGUgS2FyaWMgdW1nZWJyYWNodC4gKFdpbSwgMzEuIEp1bCAxOTk5LCAyMTo1NToyOSk6Cn4jISBybj1OaWNodHMgcnQ9OTMzNDUwODg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMzNDUwODQ0CgpBYmVyIGJlc3NlciBhbHMgdm9yaGVyIGlzdCBlcyBkb2NoIGFsbGUgbWFsLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKkcqIChLYXJpYywgMzEuIEp1bCAxOTk5LCAyMTo1NzoxNyk6Cn4jISBybj1LYW1lbG90IHJ0PTkzMzQ1MDY4OSByZz1zY2htYXJybgp+IyEgdGlkPTkzMzQ1MDY4OQp2aWVsbGVpY2h0IHNvbGx0ZSBpY2ggbm9jaCBlcndhZWhuZW4gZGFzIGRhcyBza2VsZXR0IG1pY2ggCm5hY2ggZGVtIHRvdCBnZXNjaG1ldHRlciBoYXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggbmFjaHRzLi4uIChWZWN0b3IsICAxLiBBdWcgMTk5OSwgMDI6MTg6NDUpOgouLi4gZnJ1ZmUgYmxhYmxhIHVlYmVyIGVpbmVuIG5lcnZpZ2VuIG11ZGRlcjoKSGVyb01jRmx5IHRlaWx0IERpciBtaXQ6IG5hamEgZXIgaXMgcmVjaHQgLi4uLiBhbmhhZW5nbGljaCAuLi4gb2RlciBzbyA6LVAKWzAyOjE0XQpEdSB0ZWlsc3QgSGVyb21jZmx5IG1pdDogZGFzIHNjaG5laWQgaWNoIGF1cywgdW5kIHBvc3RlIGVzOikKSGVyb01jRmx5IHRlaWx0IERpciBtaXQ6IHR1c3QgZHUgbmljaHQgOikgWzAyOjE1XQpEdSB0ZWlsc3QgSGVyb21jZmx5IG1pdDogdHUgaWNoIHdvaGw6KSB3ZXR0ZW4/Ckhlcm9NY0ZseSB0ZWlsdCBEaXIgbWl0OiBuaXggd2V0dGVuIGRhIHZlcmxpZXIgaWNoIGltbWVyIGVnYWwgd2FzIGljaCB3ZXR0ZSA7KQpEdSB0ZWlsc3QgSGVyb21jZmx5IG1pdDogZWNodD8gZ2xhdWIgaWNoIG5pY2h0Li4uIHNvbGwgd2lyIHdldHRlbj8gaGFyaGFyaGFyOikKSGVyb01jRmx5IGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCgpXYXIgd29obCBtYWwgd2llZGVyIHNvd2VpdDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXMgZGEgYWxsZXMgcnVtbGllZ3Q/IT8gKFRyYW5jZSwgIDEuIEF1ZyAxOTk5LCAxMjoxMjoyNSk6CgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuIHVuZCBub3JkZW4uIApFaW5lIGJyYXVuZSBIb3NlLgpFaW4gQXN0LgpFaW5lIFdhbGRhbWVpc2UuCkVpbmUgV2FsZGFtZWlzZS4KSGlwcGUga29tbXQgYW4uCkhpcHBlIG5pbW10IGVpbmUgYnJhdW5lIEhvc2UuCkhpcHBlIG5pbW10IGVpbmVuIEFzdC4KSGlwcGUgbmltbXQgZWluIERpbmcuCkhpcHBlIG5pbW10IDAuCkhpcHBlIG5pbW10IGVpbiBEaW5nLgpIaXBwZSBuaW1tdCBlaW4gRGluZy4KSGlwcGUgbmltbXQgZWluIERpbmcuCkhpcHBlIG5pbW10IGVpbiBEaW5nLgoKVHJhbmNlLCBoYXQga2VpbmUgRGluZ2VyIGdlc2VoZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJsb2VkZXMgVmllaC4uLiAgKExldiwgIDEuIEF1ZyAxOTk5LCAxMjo1NToyMSk6CgpEdSBkcnVlY2tzdCBMaWFyYSB6YWVydGxpY2ggYW4gRGljaC4KRWluIFNwZWNodCBoYWVtbWVydCBhbiBlaW5lbSBCYXVtIGluIERlaW5lciBOYWVoZSBoZXJ1bS4KCkxldiBkZW5rdCBzaWNoIC4gbyBPIChOaXJnZW5kd28gaGF0IG1hbiBzZWluZSBSdWhlLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3YXMgZGEgYWxsZXMgcnVtbGllZ3Q/IT8gKEdyaW1tYm9ybiwgIDEuIEF1ZyAxOTk5LCAxNDowNzo0Nyk6Cn4jISBybj1UcmFuY2UgcnQ9OTMzNTAyMzQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMzNTAyMzQ1Cldlbm4gRHUga2VpbmUgRGluZ2VyIGdlc2VoZW4gaGFzdCBzb2xsdGVzdCBEdSBEaXIgbWFsIGRpZSBuaWNodApqdWdlbmRnZXNjaHVldHp0ZSBWZXJzaW9uIERlaW5lcyBtdWQtY2xpbmV0cyBiZXNvcmdlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprbGVyaWtlci4uLiAoRGlyaW9uLCAgMS4gQXVnIDE5OTksIDE1OjE1OjQ5KToKPiBTZWkgc3RyYWhsdCB1ZWJlciBkYXMgZ2FuemUgR2VzaWNodCwgYWxzIHNpZSBlaW5lbiBBc3NhbSB0cmlua3QuClNlaSBiZWtyZXV6aWd0IHNpY2ggdW5kIHdhbmRlbHQgYXVmIGRpZSBUb2lsZXR0ZS4KNAoKc28gc2NobGltbSBhdWYgZGVyIGRhbWVudG9pbGV0dGU/IDspCgpFaW4gZ3JpbnNlbmRlciBEaXJpb24uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGJlaW0gQWZmZW4gOikgKEdyb28sICAxLiBBdWcgMTk5OSwgMTc6MDA6MTEpOgpEZXIgQWZmZSBtYWNodCBlaW5lbiBIYW5kc3RhbmQgdW5kIHNjaGF1dCBzaWNoIG5hY2ggQmVpZmFsbCB1bS4KRGVyIEFmZmUgbGF1c3Qgc2ljaC4KR3J1bXBmIGFwcGxhdWRpZXJ0IGRlbSBBZmZlbi4KRHUgYXBwbGF1ZGllcnN0IGRlbSBBZmZlbi4KR3J1bXBmIHNhZ3Q6IHJ1aGUgamV0enQgZ3JycnIKRGVyIEFmZmUgc3RyZWNrdCBEaXIgZGllIFp1bmdlIHJhdXMuCkR1IGFwcGxhdWRpZXJzdCBHcnVtcGYuCkR1IGdyaW5zdC4KRGVyIEFmZmUgc3RyZWNrdCBEaXIgZGllIFp1bmdlIHJhdXMuICAgICAgICAgICAgICAgICAgICAgCkRlciBBZmZlIGxhdXN0IHNpY2guCkN5TW9uayBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuCk51biBqYSwgZGEgZGVyIEFmZmUgZGVzIEhhdXNlcyBuaWNodCBtZWhyIHVudGVyIHVucyB3ZWlsdCwgbXVzcyBkaWVzZXMgTG9rYWwKdm9ydWViZXJnZWhlbmQgZ2VzY2hsb3NzZW4gd2VyZGVuLiBFbnR0YWV1c2NodCBnZWhzdCBEdSBhdXMgZGVyIEtuZWlwZS4KR3J1bXBmIGdlaHQuCkN5TW9uayBrb21tdCBhbi4KQ3lNb25rIHJvdGZsdC4KR3JvbyBsYWNodCBzaWNoIHNjaGxhcHAuCkdyb28gcHJ1c3RldApEdSBzYWdzdDogd2VjaCBpc3NhCkdydW1wZiBzYWd0OiBkdSBhcnNjaCBpY2ggd2FydGUgaGllciBzZWl0IG5lciB2aWVydGVsIHN0dW5kZSBhdWYgZGVuIHp0Ckdyb28gbGFjaHQgc2ljaCBzY2hsYXBwLgo+IEN5TW9uayByb3RmbHQuCkdyb28gc2NobGFlZ3QgZGVuIEdvbmcgenVyIGVyc3RlbiBSdW5kZS4KPiBHcnVtcGYgc2FndDogcmVzZXRlIGRlbgpDeU1vbmsgc2FndDogbmEsIHNpZWhzdGUhIGpldHp0IGtvbW10IGRlciByZXNldCBzY2huZWxsZSA6KQpHcnVtcGYgZ3J1bW1lbHQuCkdydW1wZiB0cml0dCBDeU1vbmsuCkdydW1wZiB0cml0dCBDeU1vbmsuCkdydW1wZiB0cml0dCBDeU1vbmsuCkdydW1wZiB0cml0dCBDeU1vbmsuCkdydW1wZiB0cml0dCBDeU1vbmsuCkdydW1wZiB0cml0dCBDeU1vbmsuCkdydW1wZiB0cml0dCBDeU1vbmsuCj4gQ3lNb25rIHNhZ3Q6IGF1c3NlcmRlbSBzaW5kIHp0cyBuaWNodCBhbiByZXNldCBnZWJ1bmRlbgpEdSBncmluc3QuICAgICAgICAgICAgICAgICAgICAgIAo+IEdydW1wZiBzYWd0OiBuZWluIGFiZXIgYW4gZGVuIGFmZmVuISEhCkdydW1wZiB0cml0dCBDeU1vbmsuCkdydW1wZiB0cml0dCBDeU1vbmsuCkdydW1wZiB0cml0dCBDeU1vbmsuCkdyb28gcHJ1c3RldAo+IEdydW1wZiBzYWd0OiByZXNldGUgZGVuCkN5TW9uayBzYWd0OiBkZXIgYWZmZSB3YXIgZG9jaCBkYSA6KQpHcnVtcGYgc3ByaW5ndCBhdWYgZWlubWFsIEN5TW9uayBhbiB1bmQgd3Vlcmd0IGlobi4KR3J1bXBmIHNwcmluZ3QgYXVmIGVpbm1hbCBDeU1vbmsgYW4gdW5kIHd1ZXJndCBpaG4uCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuCkdydW1wZiBzYWd0OiByZXNldGUgZGVuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKQ3lNb25rIHNhZ3Q6IG5lIHZpZXJ0ZWwgc3R1bmRlIGlzdCB3aXJrbGljaCBlaW5lIHVuZ2VtZWluLCB1bmFuZ2VuZWhtIGxhbmdlCkN5TW9uayBzYWd0OiB6ZWl0CkR1IHNhZ3N0OiBkYXMgd2FlciBzcGllbGVyaGlsZmUsIG9kZXIgPzopCj4gQ3lNb25rIG5pY2t0IHp1c3RpbW1lbmQuCkdydW1wZiBzYWd0OiBuZWluIGRhcyB3YXIgc3BpZWxlcmJlaGluZGVydW5nIQpDeU1vbmsgc2FndDogbG9lc2NoIGRpY2ggOikKUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEdydW1wZi4KRHUgcnVmc3Q6IEhJR0hMQU5ERVIgIQpHcnVtcGYgZ2VodCBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KRWluaWdlIEZyYXVlbiBraWNoZXJuIGhpbnRlciB2b3JnZWhhbHRlbmVyIEhhbmQuCgo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIHdpbGwgYXVjaCBtZWluZW4gTWFnaWVyIGF1ZiBBYnJ1ZiBoYWJlbi4uLi4gKE5ldm9rLCAgMi4gQXVnIDE5OTksIDAxOjM4OjM5KToKQ2FpbGxlYW4gYnJpY2h0IGluIFRyYWVuZW4gYXVzIHVuZCB3ZWludCBiaXR0ZXJsaWNoLgpDYWlsbGVhbiBzY2hsdWNoenQgaGVyenplcnJlaXNzZW5kLgpDYWlsbGVhbiBzdHVwc3QgV2ltIGFuLgpXaW0gdHJvZXN0ZXQgQ2FpbGxlYW4uCgoKCnByYWt0aXNjaCwga29jaHQgZXIgYXVjaCB1bmQgcHV0enQgZGllIFdvaG51bmc/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWb3JyYXVzc2VoZW5kLi4uIChMdWcsICAyLiBBdWcgMTk5OSwgMDE6NTA6MTkpOgoKRHUgdGVpbHN0IEFyYW5jaWEgbWl0OiBCZXNzZXI/CkFyYW5jaWEgaXN0IGdlcmFkZSBuaWNodCBkYTogbmljaHQgc28gZ2FueiBkYQoKU293YXMKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuYWphLi4uIChDYWlsbGVhbiwgIDIuIEF1ZyAxOTk5LCAwMjoyNjozOCk6Cj4gR3JpbW1hbiB0ZWlsdCBEaXIgbWl0OiBkYWJlaSBiaW4gaWNoIGRvY2ggZWluIGZpZXNlciB1bmQgZmFzdCBnYW56IGdyb3NzZXIKS2FlbXBmZXIKCmNhaWxsZWFuLCBtdXNzIGltbWVyIG5vY2ggbGFjaGVuOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBuYWphLi4uIChMdWcsICAyLiBBdWcgMTk5OSwgMDI6Mjg6NDQpOgp+IyEgcm49Q2FpbGxlYW4gcnQ9OTMzNTUzNTk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMzNTUzNTk4CgpBTkZBRU5HRVIhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptdXNzIGljaCBtYWwgb2VmdGVyIHByb2JpZXJlbi4uLiA7KSAoS2FyaWMsICAyLiBBdWcgMTk5OSwgMDI6NTA6NTIpOgpbcmFkaW86S2FyaWNdIExMTExMTExMTEFBQUFBQUVFRUVFRUVFUlJSUlJSUlJSUlJSUlJNTU1NTU1NTU1NTU1NTU1NTU1NTU1NTQpbcmFkaW86S2FyaWNdIGFsbGUgYXVmd2FjaGVuICEhIDspClBsb2V0emxpY2ggbGV1Y2h0ZXQgZGFzIEZldWVyYW11bGV0dCBncmVsbCBhdWYuIER1IHdpcnN0IHZvbiBlaW5lciBsZXVjaHRlbmRlbgpBdXJhIGVpbmdlaHVlbGx0LiBBbHMgZGllIEF1cmEgZXJsaXNjaHQsIGZ1ZWhsc3QgZHUgZGljaCBzZWhyIHZpZWwgYmVzc2VyLgoKZGFzIHNvbGx0ZSBtYWwgb2VmdGVyIGtsYXBwZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFsbGVzIHJlbm5ldCwgcmV0dGV0LCBmbHVlY2h0ZXQuLi4uIChOZXZvaywgIDIuIEF1ZyAxOTk5LCAwMzoxNTozNyk6CldpbSBkZW5rdCAgIC4gbyBPIChub2NoIDE3IG1pbnV0ZW4gdW5kIGRhbm4gYmluIGljaCAyMDApCkR1IGFyZ2xzdCBlaW4gd2VuaWcgdm9yIERpY2ggaGluLgpEdSBzYWdzdDogdW5kIGljaCBiaW4gZ2xlaWNoIHdlZwpOb2VsICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKCnNvb29vb28gd2FyIGRhcyBhdWNoIG5ldCBnZW1laW50Li4uLi4uLi4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiA7KSAoRGllZGVyLCAgMi4gQXVnIDE5OTksIDEwOjIwOjQ0KToKfiMhIHJuPUNhbHpvbmUgcnQ9OTMzMjc5NzAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMzMjc5NzAyCm5lZWVlZWVlZWluLCBiaXR0ZSBuaWNodCA7KSkpCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJY2ggd2lsbCBhdWNoIG1laW5lbiBNYWdpZXIgYXVmIEFicnVmIGhhYmVuLi4uLiAoUGFyYWNlbHN1cywgIDIuIEF1ZyAxOTk5LCAxMzoyOTozMik6Cn4jISBybj1OZXZvayBydD05MzM1NTA3MTkgcmc9c2NobWFycm4KfiMhIHRpZD05MzM1NTA3MTkKQWxzbyBrb2NoZW4ga2FubiBlciAuLi4KClBhcmEqLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5hamEuLi4gKEdyaW1tYW4sICAyLiBBdWcgMTk5OSwgMTQ6MTU6MjEpOgp+IyEgcm49Q2FpbGxlYW4gcnQ9OTMzNTUzNTk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMzNTUzNTk4CkljaCBiaW4gbnVyIGZyb2gsIGRhcyBkYXMgZWluemlnZSBaaXRhdCB2b24gZ2VzdGVybiBpc3QsIGRhcyBpY2ggbG9zZ2VsYXNzZW4KaGFiZSAuLi4gbmFjaCA3IFN0ZCBHSW5zZWwgd2lyZCBtYW4gZXR3YXMgdW52b3JzaWNodGlnIDspCgpNQklNRyAsIEdyaW1NYW4gLCBhdWZhdG1lbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFtYW5kYSAoTW90b2tvLCAgMi4gQXVnIDE5OTksIDE3OjQ1OjE1KToKRGllIGd1dGUgQW1hbmRhIHNjaHJlZWNrdCBhYmVyIGF1Y2ggdm9yIG5pY2h0cyB6dXJ1ZWNrOgoKQW1hbmRhIHNhZ3Q6IEhhbGxvIEVpbiBwZmxhbnplbmtyaWVnZXIhCkFtYW5kYSBzYWd0OiBXaWUgd2FlcnMgZGVubiBtaXQgdW5zLCBLbGVpbmVyPwoKTW90b2tvLCB2ZXJ3dW5kZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFtYW5kYSAoTm92YXN0b3JtLCAgMi4gQXVnIDE5OTksIDE3OjQ1OjQxKToKfiMhIHJuPU1vdG9rbyBydD05MzM2MDg3MTUgcmc9c2NobWFycm4KfiMhIHRpZD05MzM2MDg3MTUKLi4uIHVuZCBzaWUgaXN0IGRvY2ggRWxmZSEgLikKICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaCBqYS4uLi4uLi4uZ2VuYXUuLi4uLi4uIChOZXZvaywgIDIuIEF1ZyAxOTk5LCAxOToyNDowOSk6CkRhcmt3aW5nIGdyZWlmdCBkZW4gR2FyZGV3YWVjaHRlciBzY2hsYW5nZW5nbGVpY2ggbWl0IGVpbmVyIEphZ2Rhcm1icnVzdCBhbi4KCmhhYiBkYSB3b2hsIHdhcyBpbiBCaW8gdmVycGFzc3QuLi4uLi4KCk5ldm9rLCBzaWNoIHNjaGxhbmdlbmdsZWljaCBrcmluZ2VsbmQgdm9yIGxhY2hlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbmFqYS4uLiAoQ2FpbGxlYW4sICAzLiBBdWcgMTk5OSwgMDA6MjQ6MjQpOgp+IyEgcm49R3JpbW1hbiBydD05MzM1OTYxMjEgcmc9c2NobWFycm4KfiMhIHRpZD05MzM1NTM1OTgKYWNoamE/Cm1pciBmYWVsbHQgZGEgc3BvbnRhbiBub2NoIGVpbnMgZWluOikKCmFyaWFuYTogZHUgbXVzc3QgenVyIG5hZWNoc3RlbiBwYXJ0eSBrb21tZW4sIHdvIHdpciBkb2NoIGFuZ2VibGljaCBuZSBhZmZhZXJlCmhhYmVuLgphcmlhbmEgZ3JpbnN0LgpncmltbWFuOiBpY2gga2FubiBtaWNoIG51ciBkcmFuIGVyaW5uZXJuLCBtaXQgZGV2aWxjaGVuIGdlZmxpcnRldCB6dSBoYWJlbi4uLgphcmlhbmE6IGRhcyBhdWNoLi4uCmdyaW1tYW4gKG5hY2ggZWluZXIgd2VpbGUgZGVzIHVlYmVybGVnZW5zKTogbWFubiwgYmluIGljaCBlaW4gaGVuZ3N0IQoKaG1tLCBuYWphLCB3ZW5uIGR1IG1laW5zdDopCgpjYWlsbGVhbiwgZGFzIGdlc3ByYWVjaCBoaWVyIGFiZ2Vicm9jaGVuIGhhYmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbmFqYS4uLiAoR3JpbW1hbiwgIDMuIEF1ZyAxOTk5LCAwMDoyNjozOCk6Cn4jISBybj1DYWlsbGVhbiBydD05MzM2MzI2NjQgcmc9c2NobWFycm4KfiMhIHRpZD05MzM1NTM1OTgKb2tpLCBkYW5uIGJyaW5nIGljaCBkYXMgbGV0enRlIHNlbGJzdCA7KSAKVGVpbGUgQXJpYW5hPz8gbWl0IFdlbm4gZGFzIGpldHp0IGVpbmVyIHBvc3RldCwga2FubiBpY2ggbWljaCBhdWZoYWVuZ2VuIAoKTUJJTUcgR3JpbU1hbgpudXIgbWFsIHNvIGFtIFJhbmRlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBuYWphLi4uIChDYWlsbGVhbiwgIDMuIEF1ZyAxOTk5LCAwMDoyNzowOCk6Cn4jISBybj1HcmltbWFuIHJ0PTkzMzYzMjc5OCByZz1zY2htYXJybgp+IyEgdGlkPTkzMzU1MzU5OApudXIgenU6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQVJSUlJSUlJSUlJSUlJSUlJSR0ggKE5ldm9rLCAgMy4gQXVnIDE5OTksIDAwOjMwOjI3KToKQ2FpbGxlYW4gbW9lY2h0ZSBnZXJhZGUgbmljaHQgZ2VzdG9lcnQgd2VyZGVuLgpEaWUgTWl0dGVpbHVuZyB3dXJkZSB2b24gZWluZW0ga2xlaW5lbiBLb2JvbGQgaW4gRW1wZmFuZyBnZW5vbW1lbgoKRXIgd2lyZCBzaWUgc3BhZXRlciB3ZWl0ZXJsZWl0ZW4hCgpOZXZvayB3dWVyZ3QgQ2FpbGxlYW5zIGJlc2NoaXNzZW5lbiBLb2JvbGQgYXVzIGRlciBGZXJuZS4KV2ltIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCkNhaWxsZWFuIHRlaWx0IERpciBtaXQ6IG9oOikKQ2FpbGxlYW4gdHJvZXN0ZXQgRGljaCBhdXMgZGVyIEZlcm5lLgpEdSB0ZWlsc3QgQ2FpbGxlYW4gbWl0OiBsYXNzIGRvY2ggZGVuIFNDSEVJU1Mga29ib2xkIHdlZy4uLi4uLmRlciBnZWh0IG1pcgpEdSB0ZWlsc3QgQ2FpbGxlYW4gbWl0OiBlY2h0IGF1ZiBkaWUga2V0dGVuCkNhaWxsZWFuIG1vZWNodGUgZ2VyYWRlIG5pY2h0IGdlc3RvZXJ0IHdlcmRlbi4KRGllIE1pdHRlaWx1bmcgd3VyZGUgdm9uIGVpbmVtIGtsZWluZW4gS29ib2xkIGluIEVtcGZhbmcgZ2Vub21tZW4uCkVyIHdpcmQgc2llIHNwYWV0ZXIgd2VpdGVybGVpdGVuIQoKCkFSUlJSUlJSUlJHSEhISEhISEhISEhISEhICkJMVVRSQVVTQ0gKS09CT0xERSBQTEFFVFRFTgoKTmV2b2ssIGF4dHNjaHdpbmdlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQVJSUlJSUlJSUlJSUlJSUlJSR0ggKFdpbSwgIDMuIEF1ZyAxOTk5LCAwMDo1NDo0Nik6Cn4jISBybj1OZXZvayBydD05MzM2MzMwMjcgcmc9c2NobWFycm4KfiMhIHRpZD05MzM2MzMwMjcKCkRhcyBnZWh0IGJlc3NlcgoKSmVtYW5kIG1vZWNodGUgZ2VyYWRlIG5pY2h0IGdlc3RvZXJ0IHdlcmRlbi4KRGllIE1pdHRlaWx1bmcgd3VyZGUgdm9uIGVpbmVtIGtsZWluZW4gS29ib2xkIGluIEVtcGZhbmcgZ2Vub21tZW4uCkVyIHdpcmQgc2llIHNwYWV0ZXIgd2VpdGVybGVpdGVuIQoKV2VubiBpbnZpc21hZ3MgWmVpdHVuZyBsZXNlbi4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkViZW5lbi4uLiAoV2ltLCAgMy4gQXVnIDE5OTksIDAxOjM5OjE4KToKW0FsbGdlbWVpbjpUd29GbG93ZXJdIFdlbGNoZSBFYmVuZSBpc3RkZW5uIGZ1ZXIgc29sY2hlIEZyYWdlbiBnZWRhY2h0PwpbQWxsZ2VtZWluOkNpc291XSBLZWluZSB3ZW5uIGJlc3RpbW10ZSBMZXV0ZSBkYSBzaW5kIDotKQpbQWxsZ2VtZWluOldpbV0gYWNoLCB3YXMKW0FiZW50ZXVlcjpXaW1dIHNpbmQgc2Nob24KW1NlaGVyOldpbV0gZWJlbmVuPwpbTWFnaWVyOlNpbHZhbmFdIGlzdApbTFBDOlNpbHZhbmFdIGRvY2ggZWdhbApbRXJ6bWFnaWVyOlNpbHZhbmFdIHdpbQpbQWxsZ2VtZWluOldpbV0gbnVuLCB3ZW5uCltBYmVudGV1ZXI6V2ltXSBEdQpbU2VoZXI6V2ltXSBkYXMgbWVpbnN0LApbTFBDOldpbV0gc2lsdmFuYQpbTWFnaWVyOldpbV0gbXVzcyBpY2ggZGlyCltFcnptYWdpZXI6V2ltXSByZWNodCBnZWJlbgpbQWxsZ2VtZWluOlNpbHZhbmFdIGtsYXI7LWIgbWVpbgpbU2VoZXI6U2lsdmFuYV0gaWNoCltNYWdpZXI6U2lsdmFuYV0gZGFzCltMUEM6U2lsdmFuYV0gc28sCltFcnptYWdpZXI6U2lsdmFuYV0gd2ltLgpbQWxsZ2VtZWluOlNpbHZhbmFdIHVuZApbQWJlbnRldWVyOlNpbHZhbmFdIG51bgpbU2VoZXI6U2lsdmFuYV0gd2lya2xpY2gKW01hZ2llcjpTaWx2YW5hXSBUc2NoYXUsCltMUEM6U2lsdmFuYV0gaWhycy4uLgpbQWxsZ2VtZWluOlNpbHZhbmFdIENVCltTZWhlcjpBbmF0b2xdIEFsbGVzCltBYmVudGV1ZXI6QW5hdG9sXSBvawpbQWxsZ2VtZWluOkFuYXRvbF0gYmVpCkFuYXRvbCBhbiBhbGxlIE1hZ2llcjogRGlyPyA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAuIChab29rLCAgMy4gQXVnIDE5OTksIDAxOjU1OjU4KToKfiMhIHJuPVdpbSBydD05MzM2MzU2NjEgcmc9cGFydHkKfiMhIHRpZD05MzM2MzU2NjEKU2Nob2VuZXIgQXJ0aWtlbCwgbnVyIHdvIGlzdCBkZWluIHRvbGxlciBCbG9ja3NhdHogZ2VibGllYmVuLCBBbmF0b2w/PyA7KSkKClpvb2sgZ3JpbnN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAuIChBbmF0b2wsICAzLiBBdWcgMTk5OSwgMDI6MjM6NDIpOgp+IyEgcm49Wm9vayBydD05MzM2MzgxNTggcmc9c2NobWFycm4KfiMhIHRpZD05MzM2MzU2NjEKTG9lc2NoJyBEdSBkZW4gQXJ0aWtlbCB3ZWcsIHVuZCBkYXMgbGFlc3N0IHNpY2ggYWVuZGVybiA7KQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogLiAoWm9vaywgIDMuIEF1ZyAxOTk5LCAwMjoyNDo0OCk6Cn4jISBybj1BbmF0b2wgcnQ9OTMzNjM5ODIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMzNjM1NjYxCj5sb2VzY2ggYXJ0aWtlbCA3MAoKdWJyaWsgcGFydHksIEFydGlrZWwgNzAgdm9uIFdpbSB2b20gIDMuIEF1ZyAxOTk5LCAwMToxNDoyMSwKVGl0ZWw6IC4sCgpEaWVzZW4gQXJ0aWtlbCBkYXJmc3QgRHUgbmljaHQgbG9lc2NoZW4uCgoKWm9vayBkZW5rdCAuIG8gTyAoVW5kIG51PykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IC4gKEdyaW1tYm9ybiwgIDMuIEF1ZyAxOTk5LCAwOTozNTozOCk6Cn4jISBybj1ab29rIHJ0PTkzMzYzOTg4OCByZz1zY2htYXJybgp+IyEgdGlkPTkzMzYzNTY2MQpOaWNodCB2ZXJ6YWdlbiwgR3JpbW1ib3JuIGZyYWdlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTEx5c3RyYXRoZSBtYWwgd2llZGVyIC4uLiAoTGlhcmEsICAzLiBBdWcgMTk5OSwgMTQ6MTM6NTcpOgpFYmVuIGlubmVyIFphdWJlcmVyZ2lsZGU6CgplcmhvZWhlIHN0dWZlCkR1IG11c3N0IERlaW5lIE1laXN0ZXJwcnVlZnVuZyBub2NoIGJlc3RlaGVuLgoKZnJhZ2UgbGx5c3RyYXRoZSBuYWNoIG1laXN0ZXJwcnVlZnVuZwogTGx5c3RyYXRoZSBtb3R6dDogRGllIGhlaXNzdCBhYmVyIE1hZ2lzdGVycHJ1ZWZ1bmcsIHZlcnN1Y2hzIGFsc28gbm9jaG1hbCwKamE/CgoqYnJ1bW1lbCogOi0pCgpMaWFyYSwgd3VuZGVydCBzaWNoLCBkYXNzIG1hbiBiZWkgZGllc2VyIGZhbHNjaGVuIEZvcm11bGllcnVuZyBuaWNodCBhdWNoCnNjaG9uIHN0aXJidCAqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVsZmVuIGhhbHQgLi4uIChHcmltbWFuLCAgMy4gQXVnIDE5OTksIDE1OjA4OjU0KToKPiB1bnQgbGVpY2hlCkR1IHNpZWhzdCBkaWUgc3RlcmJsaWNoZW4gVWViZXJyZXN0ZSBlaW5lcyBFbGZlbndhZWNodGVycy4KU2llIGVudGhhZWx0OgpFaW4gZWxmaXNjaGVzIExhbmdzY2h3ZXJ0LiAoMTQpCkVpbiBFbGZlbnBhbnplci4gKDExKQpFaW4gZ3Jvc3NlciBTY2hpbGQuICgxMSkKMjA1IE11ZW56ZW4uCkVpbiBIYXJmZS4KCk1hbm4sIGljaCB3dXNzdGUgbmljaHQsIGRhcyBBcm5pZSBlaW4gRWxmIGlzdCwgdW5kIGRhcyBBcm5pZSBtdXNpa2FsaXNjaCBpc3QKd3Vzc3QgaWNoIGF1Y2ggbmljaHQgOykKCk1CSU1HICwgR3JpbU1hbiAsc2VociBlcnN0YXVudAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZSAoQXBzdSwgIDMuIEF1ZyAxOTk5LCAyMjo0MzoyNCk6Clt6aWVoIGFsbGVzIGFuXQoKLi4uLgpTdGllZmVsOiBEdSB6aWVoc3QgU3RpZWZlbCBhbi4KRWluIFNjaHdlcnQ6IER1IHppZWhzdCBkYXMgU2Nod2VydCBhbi4KRWluIEVpc3BhbnplcjogRHUgdHJhZWdzdCBiZXJlaXRzIGRlbiBIb3JucGFuemVyIGFscyBTY2h1dHogZGVyIFNvcnRlCkVpbiBFaXNwYW56ZXI6IFJ1ZXN0dW5nLgpFaW4gV2FobnNpbm5zLU1hZ2llci1Nb25zdGVyLVphcHRvb2wgKGZ1ZXIgU3BpZWxlciBsZWlkZXIgdW5zaWNodGJhcik6IER1CkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogdHJhZWdzdApFaW4gV2FobnNpbm5zLU1hZ2llci1Nb25zdGVyLVphcHRvb2wgKGZ1ZXIgU3BpZWxlciBsZWlkZXIgdW5zaWNodGJhcik6IGRhcwpFaW4gV2FobnNpbm5zLU1hZ2llci1Nb25zdGVyLVphcHRvb2wgKGZ1ZXIgU3BpZWxlciBsZWlkZXIgdW5zaWNodGJhcik6IFdhaG5zaW4KRWluIFdhaG5zaW5ucy1NYWdpZXItTW9uc3Rlci1aYXB0b29sIChmdWVyIFNwaWVsZXIgbGVpZGVyIHVuc2ljaHRiYXIpOiBucy1NYWdpCkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogZXItTW9ucwpFaW4gV2FobnNpbm5zLU1hZ2llci1Nb25zdGVyLVphcHRvb2wgKGZ1ZXIgU3BpZWxlciBsZWlkZXIgdW5zaWNodGJhcik6IHRlci1aYXAKRWluIFdhaG5zaW5ucy1NYWdpZXItTW9uc3Rlci1aYXB0b29sIChmdWVyIFNwaWVsZXIgbGVpZGVyIHVuc2ljaHRiYXIpOiB0b29sCkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogKGZ1ZXIKRWluIFdhaG5zaW5ucy1NYWdpZXItTW9uc3Rlci1aYXB0b29sIChmdWVyIFNwaWVsZXIgbGVpZGVyIHVuc2ljaHRiYXIpOiBTcGllbGVyCkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogbGVpZGVyCkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogdW5zaWNodApFaW4gV2FobnNpbm5zLU1hZ2llci1Nb25zdGVyLVphcHRvb2wgKGZ1ZXIgU3BpZWxlciBsZWlkZXIgdW5zaWNodGJhcik6IGJhcikKRWluIFdhaG5zaW5ucy1NYWdpZXItTW9uc3Rlci1aYXB0b29sIChmdWVyIFNwaWVsZXIgbGVpZGVyIHVuc2ljaHRiYXIpOiBiZXJlaXRzCkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogLgpFaW4gRnVzc3Jpbmc6IER1IHRyYWVnc3QgZGVuIEZ1c3NyaW5nIGJlcmVpdHMuCi4uLgoKQXBzdSwgZ3J1ZWJlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJsb2Nrc2F0eiBoaW4gb2RlciBoZXIuLi4gKEFuYXRvbCwgIDQuIEF1ZyAxOTk5LCAxMTo0NjozNCk6Cn4jISBybj1Cb2luZyBydD05MzM3NTk4MzQgcmc9cGFydHkKfiMhIHRpZD05MzM3MDA1NzMKRmFsc2NoLCBCb2luZy4gIk1hbiBoYWV0dGUiLgoKQW5hdG9sIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdWkgIChIaWdodCwgIDQuIEF1ZyAxOTk5LCAxODoyMzo1Nyk6CkR1IHNjaGFlcmZzdCBkZW4gQmllbmVuc3RhY2hlbC4gRGllIEtsaW5nZSBzaWVodCBqZXR6dCB3aWVkZXIgcmVjaHQKZ2VmYWVocmxpY2ggYXVzLiBEYW1pdCBpc3QgZGVyIEJpZW5lbnN0YWNoZWwgamV0enQgZ3V0IGdlc2NoYWVyZnQuIApEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKaG1tbSB3YXMgcGFzaWVydCBkYW5uIHdlbm4gZGFzIGRpbmcgYXVzZ2V6ZWljaG5ldCBnZXNjaGFlcmZ0IGlzID8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2NoZWlzcyB6YXViZXJlciAoQW5hdG9sLCAgNS4gQXVnIDE5OTksIDA5OjI4OjA3KToKfiMhIHJuPU5ldm9rIHJ0PTkzMzgxNDkxMSByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05MzM4MTQ5MTEKTmVlLCBOZXZvaywgZGFzIHdhciB3ZWRlciBCcmVpdHNjaHdlcnQgbm9jaCBSYXBpZXIsIGRhcyB3YXMgZWluCmFuZ2VmYXVsdGVzIEJyZXR0LW1pdC1laW5lbS1OYWdlbC1kcmluLiBNb2trYXRhc3Nlbmhvcml6b250LgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNjaGVpc3MgemF1YmVyZXIgKEJlbmRlaWdpZCwgIDUuIEF1ZyAxOTk5LCAxMzo1MTozNyk6Cn4jISBvbj1Ib3VzZWhvbGRlciBvdD05MzM4NDkyMDUgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1OZXZvayBydD05MzM4MTQ5MTEgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTMzODE0OTExCmZpbmQgaWNoIGd1dCBkYXMgZGllIGRpZXNlcyBtaWxpdGFudGUga2FlbXBmYXBhY2sgbWFsIGF1Zm1pc2NoZW4gOi0pCkhICgpubgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzY2hlaXNzIHphdWJlcmVyIChOZXZvaywgIDUuIEF1ZyAxOTk5LCAxOToyMDozMik6Cn4jISBybj1BbmF0b2wgcnQ9OTMzODM4MDg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMzODE0OTExCmhlIG5peCBnZWdlbiBtb2trYXRhc3NlbgpkZW4ga2FmZmVlIGhhZXR0IGljaCBnZWJyYXVjaGVuIGtvZW5uZW4sIGRhIGhhZXR0ZSBkaWUgbmFjaHQgZGFubiBzY2hvbiBnYW56CmFuZGVycyBhdXNnZXNlaGVuLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2VpbmVyID8gKFBlcnRpbmF4ZSwgIDUuIEF1ZyAxOTk5LCAyMzoxNDoxMCk6CndhaHJzY2hlaW5saWNoIGluIGRlbiBLZWxsZXIuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3RlbiB1bmQgc3VlZGVuLiAKVHV0c3p0IGRlciBCbHV0ZGFlbW9uLgpFaW4gTXVlbGxzY2hsdWNrZXIuCkRlaW4gRnJldW5kIERpZWRlciB0ZWlsdCBEaXIgbWl0OiBHb2xhcyBpcyB2b2xsIHdpZSBuZSBTdHJhbmRoYXViaXR6ZSA6KT4gdnAKVGphIHdlciBzb2xsIERpciBkZW5uIGV0d2FzIGFia2F1ZmVuPyBEZXIgbGV0emUgQW5nZXN0ZWxsdGUgd3VyZGUgZG9jaCB2b24Ka2VpbmVtIGdldG9ldGV0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWhqYSAoQ2FpbGxlYW4sICA2LiBBdWcgMTk5OSwgMDE6NDg6NTEpOgpUZWxlbm9zIHRlaWx0IERpciBtaXQ6IGxpc3RlPyBiaW4gZ2VyYWRlIGFtIHF1ZXN0ZW4sIHdlbGNoZSBsaXN0ZT8KRHUgdGVpbHN0IFRlbGVub3MgbWl0OiBpY2ggaGFiIGRpciBuZSBsaXN0ZSBnZXNjaGlja3Q/ClRlbGVub3MgaXN0IGdlcmFkZSBuaWNodCBkYToga29jaGVuCgpzb3NvLCBuYWphIGZ1ZXIgbWFuY2hlIExldXRlIGlzIGRpZSBLdWVjaGUgaGFsdCBhdWNoIG5lIFF1ZXN0ICpHR0dHKgoKY2FpbGxlYW4sIGdlc3Bhbm50LCBvYnMgZ2VzY2htZWNrdCBoYXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthZW1wZmVyendlcmdlIGhhbHQgKEdyaW1tYW4sICA2LiBBdWcgMTk5OSwgMDQ6NTA6NDQpOgogW1RydmVzOkdvdHJla10gQml0dGUKIFtUcnZlczpHb3RyZWtdIEJpdHRlCiBbVHJ2ZXM6R290cmVrXSBCaXR0ZQogW1RydmVzOkJyaWVzZWx0cmltXSBHb3RyZWsgd3VyZGUgdm9uIG1pciBhdWYgU3R1ZmUgMTQgYmVmb2VyZGVydC4gCgpTY2hsZWltZXIgd2VyZGVuIGJldm9yenVndD8KTUJJTUcgCkdyaW1NYW4gLCBpbW1lcm5vY2ggbGFjaGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FydW0gQW5nc3Qgdm9yIGRlbSBBbHRlciBoYWJlbj8gOi0pIChBbGJvaW4sICA2LiBBdWcgMTk5OSwgMTU6MjU6MDQpOgpmb2xnZW5kZXMgaGFiZW4gaWNoIGdlcmFkZSBpbiBkZW4gZHBhLW5ld3MgZ2VmdW5kZW46IAoKU2V4LUZlc3RpdmFsIGZ1ZXIgQWVsdGVyZSBpbiBGaW5ubGFuZCBlcm9lZmZuZXQgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCkhlbHNpbmtpIChkcGEpIC0gSW0gZmlubmlzY2hlbiBLdXRlbWFqYWVydmkgaGF0IGVpbiBTZXgtRmVzdGl2YWwgZnVlciBBZWx0ZXJlCmJlZ29ubmVuLiBEaWUgZHJlaXRhZWdpZ2UgVmVyYW5zdGFsdHVuZwogdW50ZXIgZGVtIE1vdHRvICJMYWtlIExvdmVtYWtpbmciICgiTGllYmUgbWFjaGVuIGFtIFNlZSIpIGlzdCB2b20gUmF0IGRlcgpTdGFkdCBhbHMgQmVpdHJhZyB6dW0gVU5PLUphaHIgZGVyCiBBZWx0ZXJlbiBhdXNnZXJpY2h0ZXQgd29yZGVuLiBFcyBzb2xsIGVpbmVuIEJlaXRyYWcgenVyIEVyaGFsdHVuZyBzZXh1ZWxsZXIKTHVzdCB1bmQgU3Bhbm5rcmFmdCBsZWlzdGVuLiBBZHJlc3NhdGVuCiBzaW5kIEZyYXVlbiB1bmQgTWFlbm5lciBhYiA0NS4gQXVmIGRlbSBQcm9ncmFtbSBkZXMgZXJzdGVuIFRhZ2VzIHN0ZWhlbgp1bnRlciBhbmRlcmVtIGVpbmUgQXVzc3RlbGx1bmcgenVtCiBUaGVtYSAiU2V4IHVuZCBBbHRlcm4iIHNvd2llIGFtIEFiZW5kIGVpbmUgIkF0bW9zcGhhZXJpc2NoZSBTb2lyZWUiLiBkcGEgc2QKdG8KCkFsc286IGtlaW4gQW5nc3Qgdm9yIGRlbSBBbHRlcm4sIG51ciB3ZXIgcmFzdGV0IGRlciByb3N0ZXQgOi0pCgpBbGJvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3YXJ1bSBBbmdzdCB2b3IgZGVtIEFsdGVyIGhhYmVuPyA6LSkgKERpZWRlciwgIDYuIEF1ZyAxOTk5LCAxNTo0NDozNSk6Cn4jISBybj1BbGJvaW4gcnQ9OTMzOTQ1OTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMzOTQ1OTA0CkFSR0wgdmllbCB6dSB3ZWl0IHdlZy4uLgoKT3BhIERpZWRlciwgaGFldHRlIGdlcm4gdGVpbGdlbm9tbWVuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVjaCEgU3RhcmtlIE1hZ2llciEgKFRzdW5hbWksICA2LiBBdWcgMTk5OSwgMTc6NTc6MjYpOgpVbmdlc2Nobml0dGVuIGlzdCBtaXIgZ3JhZCB2b3JoaW4gZm9sZ2VuZGVzIHBhc3NpZXJ0OgoKW0FsbGdlbWVpbjpCZW5kZWlnaWRdIHNvLCB0c2NodWVzcyEKQ2xvc2luZyBkb3duLgolIENvbm5lY3Rpb24gdG8gTUcgY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KLS0tLSBObyB3b3JsZCAtLS0tCgpUc3VuYW1pIHN0YXVudCBqZXR6dCBub2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEh1Y2ghIFN0YXJrZSBNYWdpZXIhIChab29rLCAgNi4gQXVnIDE5OTksIDE3OjU5OjQyKToKfiMhIHJuPVRzdW5hbWkgcnQ9OTMzOTU1MDQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTMzOTU1MDQ2ClRqYSwgZ2VodCBkZXIgVmF0ZXIsIHdpcmQgZGVyIFNvaG4gZ2xlaWNoIG1pdGdlem9nZW4uLi4KClpvb2sgZ3JpbnN0IHVuZCBpc3QgZnJvaCwgZGFzcyBzZWluIERhZGR5IHNpY2ggbmljaHQgc28gb2Z0IGF1c2xvZ2d0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VyYWRlIGViZW4gYXVmIGRlbSBTdGFtbXRpc2NoIChNZW5hY2UsICA3LiBBdWcgMTk5OSwgMDI6MjU6NDMpOgpBcmlhbmEgZnJhZ3QgTWVuYWNlOiBEYXJmIGljaCBtYWwgZGVpbmVuIFdlaW4gcHJvYmllcmVuPwpNZW5hY2U6IEtsYXIuCkFyaWFuYSB0cmlua3QgLi4uLi4uLi4uLiAKLi4uLiB1bmQgcHJ1c3RldCBkZW4gV2VpbiBmYXN0IHdpZWRlciBhdXMuCkFyaWFuYTogQWxzbyB3ZW5uIG1pciBXYXNzZXJ3YW5kbHVuZyBtaXNzbGluZ3QsIGRhbm4ga29tbXQgc293YXMgZGFiZWkgcmF1cyEKCk1lbmFjZSAqX3Ryb2NrZW5lbl8gV2Vpc3dlaW4gdHJpbmtlbmQqCgpBYWNoZW5lciBTdGFtbXRpc2NoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbW1lcm5vY2ggbmFjaCBkZW0gU3RhbW10aXNjaCAoTWVuYWNlLCAgNy4gQXVnIDE5OTksIDA0OjQ5OjQ1KToKRGVyIHNjaGVpbmhlaWxpZ2UgdW5kIGJhZXJ0aWdlIENvbm5lciBzYWd0IHp1IFdpY2hibGFkZTogQm9haCwgYmlzdCBEdSBfd2FybV8uCldpY2hibGFkZSBzYWd0OiBHdXQgZGFzcyBEdSBuaWNodCAiaGVpc3MiIGdlc2FndCBoYXN0Li4uCgpNZW5hY2UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRydWhlIG1pdCBGZXJuc2ljaHQgPyAoU3RpbmcsICA4LiBBdWcgMTk5OSwgMTE6MzY6MzEpOgpaaWxsZWkgZmxpZWd0IGhlcmVpbi4KRWluZSBUcnVoZSBmb2xndCBaaWxsZWkgaGVyZWluLgpaaWxsZWkgZmxpZWd0IG5hY2ggV2VzdGVuLgpEaWUgVHJ1aGUgbGFldWZ0IFppbGxlaSBoaW50ZXJoZXIuCkRpZSBUcnVoZSBzaWVodCBkaWNoIFNFSFIgYm9lc2UgYW4hIApTY2hlaW5iYXIgZ2xhdWJ0IHNpZSwgZGFzcyBkdSBaaWxsZWkgYmVkcm9oZW4gd2lsbHN0IQoKClN0aW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcm1lIEdhZXN0ZSA6LSkgKENpc291LCAgOC4gQXVnIDE5OTksIDE2OjMzOjM1KToKCkdhc3QyIHRlaWx0IERpciBtaXQ6IGhlIG1laW5lIGdlbGRib2Vyc2U6KAoKRHUgdGVpbHN0IEdhc3QyIG1pdDogc2VpdCB3YW5uIGhhYmVuIGdhZXN0ZSBib2Vyc2VuPwoKR2FzdDIgdGVpbHQgRGlyIG1pdDogaGF0dGUgZ2VyYWRlIGVpbmUgZ2VzY2hlbmt0IGJla29tbWVuIHVtIGVpbnp1a2F1ZmVuIGJlaQpHYXN0MiB0ZWlsdCBEaXIgbWl0OiBvd2VuIG9kZXIgd2llIGRlciBoZWlzc3QKCkR1IHRlaWxzdCBHYXN0MiBtaXQ6IGRhbm4gc2NoYXUgYml0dGUgaW4gZGVpbiBpbnZlbmFyLCBiZXZvciBkdSBoaWVyCkR1IHRlaWxzdCBHYXN0MiBtaXQ6IHVuc2NodWxkaWdlIFNwYXNzbWFjaGVyaW5uZW4gdmVyZGFlY2h0aWdzdCA6KQoKR2FzdDIgdGVpbHQgRGlyIG1pdDogZ2VtZWluCnRtIGdhc3QyIERlaW5lIEJvZXJzZSBpcyBub2NoIGRhCktlaW4gc29sY2hlciBTcGllbGVyIQoKT09vb29vb29vb29vb2NoLCBqZXR6dCBoYWIgaWNoIGlobiByYXVzZ2Vla2VsdCwga2xhdSBpY2ggaGFsdCBkYXMgbmFlY2hzdGUgTWFsCndpZWRlciBQYWtldGUgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgLi4uIChUcmFuY2UsICA4LiBBdWcgMTk5OSwgMTk6MTE6MjYpOgoKTWlzdGJyYXR6ZSB0ZWlsdCBEaXIgbWl0OiBkb2diZXJ0IHdpcmQgZ2xlaWNoIG5vY2htYWwgc3RlcmJlbgpbVG9kOkxhcnNdIERhcyBNZWVyIGRlciBGbGFtbWVuIGhhdCBnZXJhZGUgTWlzdGJyYXR6ZSB1bWdlYnJhY2h0LgpbVG9kOkRhcyBNZWVyIGRlciBGbGFtbWVuIGZyaXNzdCBzZWluZSBPcGZlcl0KRHUgdGVpbHN0IE1pc3RicmF0emUgbWl0OiBkZXIgYXJtZQoKW0JlaWxlaWQ6RG9nYmVydF0gaWNoIGdsYXViIGphIG5pY2ggZGFzcyBtYW4gc28gYmxvZWQgc2VpbiBrYW5uCgpFaXNpLCB2ZXJ3ZWNoc2VsdCBhdWNoIG1hbmNobWFsIGRpZSBGZW5zdGVyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgd2FyIGRhcz8gKEJhbWJpLCAgOS4gQXVnIDE5OTksIDEwOjU0OjE3KToKRWluIGtsZWluZXIgQXVzenVnIGF1cyBkZW0gTGViZW4gZWluZXMgaWRsZW5kZW4gTWFnaWVycy4uLgoKRGVyIEJhZ2dlciBiYWdnZXJ0OiBPaCBpY2ggYmFnZ2VyZSBqYSBzbyBnZXJuLi4uCkRlciBCYWdnZXIgYmFnZ2VydCBEaWNoIGFuLgpEZXIgQmFnZ2VyIGJhZ2dlcnQgRGljaCBhbi4KRGVyIEJhZ2dlciBiYWdnZXJ0OiBiYWdnZXIgYmFnZ2VyIGJhZ2dlcgpEZXIgQmFnZ2VyIGJhZ2dlcnQgZWluIGJpc2NoZW4gYW4gRGlyIGhlcnVtLgpEZXIgQmFnZ2VyIGJhZ2dlcnQ6IGJhZ2dlciBiYWdnZXIgYmFnZ2VyCkRlciBCYWdnZXIgYmFnZ2VydCBEaWNoIGFuLgpEZXIgQmFnZ2VyIGJhZ2dlcnQ6IGJhZ2dlciBiYWdnZXIgYmFnZ2VyCkRlciBCYWdnZXIgYmFnZ2VydCBlaW4gYmlzY2hlbiBhbiBEaXIgaGVydW0uCkRlciBCYWdnZXIgYmFnZ2VydDogYmFnZ2VyIGJhZ2dlciBiYWdnZXIKRGVyIEJhZ2dlciBiYWdnZXJ0OiBiYWdnZXIgYmFnZ2VyIGJhZ2dlcgpEZXIgQmFnZ2VyIGJhZ2dlcnQgRGljaCBhbi4KRGVyIEJhZ2dlciBiYWdnZXJ0OiBiYWdnZXIgYmFnZ2VyIGJhZ2dlcgpEZXIgQmFnZ2VyIGJhZ2dlcnQgZWluIGJpc2NoZW4gYW4gRGlyIGhlcnVtLgpEZXIgQmFnZ2VyIGJhZ2dlcnQ6IGJhZ2dlciBiYWdnZXIgYmFnZ2VyCkRlciBCYWdnZXIgYmFnZ2VydDogT2ggaWNoIGJhZ2dlcmUgamEgc28gZ2Vybi4uLgpEZXIgQmFnZ2VyIGJhZ2dlcnQgZWluIGJpc2NoZW4gYW4gRGlyIGhlcnVtLgpEZXIgQmFnZ2VyIGJhZ2dlcnQgZWluIGJpc2NoZW4gYW4gRGlyIGhlcnVtLgpEZXIgQmFnZ2VyIGJhZ2dlcnQ6IGJhZ2dlciBiYWdnZXIgYmFnZ2VyCkRlciBCYWdnZXIgYmFnZ2VydCBlaW4gYmlzY2hlbiBhbiBEaXIgaGVydW0uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXLi4uIChOb3Zhc3Rvcm0sICA5LiBBdWcgMTk5OSwgMTU6MjQ6NTQpOgpDaGFvc2xvcmQgc2FndDogaG1tCkNoYW9zbG9yZCBzYWd0OiB3byB3YXIgZGVubiBub2NobWFsIGRhcyBnb2JsaW5sYWdlciA/CkNoYW9zbG9yZCBzYWd0OiBpY2ggc3VjaCBkZW4gZHJhY2hlbiAqZyoKW1RvZDpMYXJzXSBFaW4gR29ibGluIGhhdCBnZXJhZGUgQ2hhb3Nsb3JkIHVtZ2VicmFjaHQuCltUb2Q6RWluIEdvYmxpbl0gQnJhdWNodCBub2NoIGplbWFuZCAxNyBlaW5rYXJhZXRpZ2UgU2FwaGlyZSwgMTUgZWlua2FyYWV0aWdlCltUb2Q6RWluIEdvYmxpbl0gVG9wYXNlLCAyODQ5OCBNdWVuemVuIHVuZCAxNSBlaW5rYXJhZXRpZ2UgUnViaW5lPwogIE5vdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhtbW0gKFdpbSwgIDkuIEF1ZyAxOTk5LCAxOTowNjozMik6CgpKYW1lc29uIHNhZ3Q6ICpCb2luZyBhbSBmcmFnZW4gc2VpKgpEdSBuaWNrc3QgdmVyc3RlaGVuZC4KSmFtZXNvbiBzZXVmenQuCkJvaW5nIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCgpXYXMgZXIgaWhuIHdvaGwgZ2VmcmFndCBoYXQ/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHVybGF1YiAoQW5hdG9sLCAgOS4gQXVnIDE5OTksIDIzOjQ5OjU4KToKfiMhIHJuPVBhZHJlaWMgcnQ9OTM0MjIwOTk1IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD05MzQyMjA5OTUKV2lyIG5laG1lbiBUZWlsIGFuIGRlciBUcmF1ZXIgZGVyIEhpbnRlcmJsaWViZW5lbiAuLi4KCkFuYXRvbCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmloaGhoIChXaW0sIDEwLiBBdWcgMTk5OSwgMDA6MDA6NTcpOgoKPkFscyBEdSBlcmtlbm5zdCwgd29ydW0gZXMgc2ljaCBkYWJlaSBoYW5kZWx0LCBsYWVobXQgRGljaCBkaWUgRXJrZW5udG5pcyEKRGFzIEdlYmlsZGUgc2llaHQgYXVzLCBhbHMgd2FlcmUgZXMgYXVzIFRlaWxlbiBkdXR6ZW5kZXIgdmVyc2NoaWVkZW5lciBXZXNlbgp6dXNhbW1lbmdlc2V0enQuIEFsbGVyZGluZ3MgaGF0IGVzIGtlaW5lIGJlc3RpbW10ZSBGb3JtLCBzb25kZXJuIGlzdCBudXIgZWluZQp3b2dlbmRlIE1hc3NlIGF1cyB2ZXJzY2hpZWRlbnN0ZW4gQXJtZW4sIEJlaW5lbiwgQXVnZW4gdW5kIE1hZXVsZXJuIQoKUGFkcmVpYyBlcnNjaGVpbnQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSnVnZW5kZnJlaT8/PyAoR3JpbW1hbiwgMTAuIEF1ZyAxOTk5LCAwMDo0NjoyMyk6CkdyYWQgZWJlbiBpbiBkZXIgQWJlbnRldWVyZ2lsZGUgOgpTdG9lcnRpIGZyYWd0KFNhbmRpZSk6IE1hZ3N0IGR1IHNhbXN0YWcgbWl0IG1pciBiZWkgZGlyIHp1IGhhdXNlIHNjaGxhZmVuPwoKR3JpbU1hbiAsIGltbWVybm9jaCBsYWNoZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSnVnZW5kZnJlaT8/PyAoU3RvZXJ0aSwgMTAuIEF1ZyAxOTk5LCAwMDo0Njo1NSk6Cn4jISBybj1HcmltbWFuIHJ0PTkzNDIzODc4MyByZz1zY2htYXJybgp+IyEgdGlkPTkzNDIzODc4MwpkYXMgd2FyIGdhbnogYW5kZXJzIGdlbWVpbnQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcm1lcyBrbGVpbmVzIEthbXBmd2VpY2hlaSAoUGZlaWZlLCAxMC4gQXVnIDE5OTksIDA5OjExOjAyKToKTmV2b2sgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IEZhaXJmYXguCkVpbmdlbG9nZ3Qgc2VpdDogRnJlLCAgNi4gQXVnIDE5OTksIDE3OjUyOjQyClZvbGxlciBOYW1lOiBEaWUgUGZlaWZlIE5ldm9rIHBmZWlmdCBhdWYgTGV1dGUgZGllIGVpbiAnRW50c2NodWxkaWd1bmcnIG5ldApha3plcHRpZXJlbiBrb2VubmVuCgouLi4gdW5kIG9mZmVuc2ljaHRsaWNoIGF1Y2ggYXVmIExldXRlLCBkaWUgaWhuIGJpdHRlbiBzZWluZW4gTmFtZW4genUgYWVuZGVyLAp3ZWlsIHNpZSBuaXggbWl0IGRlbSBTdHJlaXQgenUgdHVuIGhhYmVuLgoKClBmZWlmZSBoYXQgamV0enQgd2VuaWdzdGVucyB3YXMgZGVtaXQgenUgdHVuICpnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2VhZ2F0ZSBvZGVyIHNpZSBnZWh0IG5pY2h0Li4uIChHcmltbWJvcm4sIDEwLiBBdWcgMTk5OSwgMTQ6MjE6NDgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTkzNDI4NzY3MCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD05MzQyNzg4OTcKVW5kIGF1c3NlcmRlbSBoZWlzc3QgZGFzICJubyB3b21hbiBubyBjcmltZSIuCgpHZEEgKGVuZGxpY2ggaW4gZGVyIHJpY2h0aWdlbiBSdWJyaWspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbyB3aWxsIEJpbGwgZGllIFdlbHQgZXJvYmVybiAoUGhvYm9zLCAxMC4gQXVnIDE5OTksIDE5OjIyOjE2KToKRGVhciBGcmllbmRzIGFuZCBGZWxsb3cgQW1lcmljYW5zLAoKVG9kYXkgSSB3cml0ZSB0byB5b3UgcmVnYXJkaW5nIGFuIGlzc3VlIHdoaWNoIGhpdHMgdmVyeSBjbG9zZSB0byBob21lIC0KYW5kIEVTUEVDSUFMTFkgY2xvc2UgdG8gdGhlIHdvcmsgcGxhY2UuIEJlZm9yZSBJIGNvbnRpbnVlLCBJIHBvc2UgdG8geW91CnRoaXMgcXVlc3Rpb246IEhvdyBvZnRlbiBkdXJpbmcgdGhlIGEgdHlwaWNhbCB3b3JrZGF5IGRvIHlvdSBmaW5kCnlvdXJzZWxmIHBsYXlpbmcgU29saXRhaXJlLCBGcmVlY2VsbCwgSGVhcnRzLCBvciBNaW5lc3dlZXBlciB0byBwYXNzIHRoZSAKZXhjZXNzIHRpbWUgb2YgeW91ciBkYXkgYXdheT8gSWYgeW91ciBhbnN3ZXIgaXMsICJJIGRvbid0IHBsYXkgdGhvc2UgZ2FtZXMKYmVjYXVzZSBJJ20gbm90IGEgbGF6eSBiYXN0YXJkLCIgdGhlbiBJIGFwcGxhdWQgeW91IG15IGJyb3RoZXIgKG9yIHNpc3RlcikuCgpUaGUgZ2FtZXMgYWZvcmUgbWVudGlvbmVkLCBwcm92aWRlZCBieSBNaWNyb3NvZnQgb24gZWFjaCBvZiB0aGVpcgpPcGVyYXRpbmcgU3lzdGVtIHBsYXRmb3JtcywgaGF2ZSBiZWVuIHByb3ZlbiB0byBoYXZlIGEgaHlwbm90aWMgZWZmZWN0IG9uCnRoZSB1c2VyIG9mIHN1Y2ggcHJvZ3JhbXMuIFRoaXMgZWZmZWN0IGNhdXNlcyBhZGRpY3Rpb24gdG8gdGhlIGdhbWUgd2hpY2gKaW4gdHVybiBjYXVzZXMgdGhlICJ3ZWFrLW1pbmRlZCIgdG8gc3VmZmVyIHRpbWUgbG9zcyBhcyB0aGVpciBjby0gd29ya2VycywKa25vd2luZyBiZXR0ZXIgdGhhbiB0byB3YXN0ZSB0aW1lIGFuZCB0YWtpbmcgYSBjaGFuY2Ugb2YgbG9zaW5nIHRoZWlyCmpvYnMsIG1vdmUgb24gd2l0aCB0aGVpciByZXNwb25zaWJpbGl0aWVzLCB0aHVzIGNyZWF0aW5nIGEKTWljcm9zb2Z0LWluZHVjZWQgRGFyd2luaXNtIG9mIHRoZSB3b3JrcGxhY2UsIGEgIlN1cnZpdmFsIG9mIHRoZSBGaXR0ZXN0LCIKaWYgeW91IHdpbGwuCgpJdCBpcyBhIHdlbGwga25vd24gZmFjdCB0aGF0IEJpbGwgR2F0ZXMnIHVsdGltYXRlIHZpc2lvbiBpcyBmb3Igd29ybGQKZG9taW5hdGlvbiBpbiBhcyBzaG9ydCBhbiBhbW91bnQgb2YgdGltZSBhcyBwb3NzaWJsZS4gVGhyb3VnaCBtYXJrZXQKZG9taW5hdGlvbiBhbmQgT2JzdHJ1Y3Rpb24gb2YgSnVzdGljZSAtIGEgY29tcGxhaW50IHRoYXQgdGhlIFUuUy4gSnVzdGljZQpEZXBhcnRtZW50IGlzIGN1cnJlbnRseSBwcm9iaW5nIC0gR2F0ZXMnIE1pY3Jvc29mdCBoYXMgYmVjb21lIHRoZSBhdXRob3IKb2YgdGhlIGJpYmxlIG9mIHRoZSB0ZWNobm9sb2dpZXMgb2YgdGhlIGZ1dHVyZS4gV2h5IHdvdWxkbid0IEJpbGwgYmUKaW52b2x2ZWQgaW4gYXR0ZW1wdGluZyB0byBkZXZlbG9wIGEgInN1cnZpdmFsIG9mIHRoZSBmaXR0ZXN0IiByb3V0aW5lCnRocm91Z2ggaGlzIGluY2x1c2lvbiBvZiBnYW1lcyBvbiBoaXMgb3BlcmF0aW5nIHN5c3RlbXM/CgpTdGlsbCBkb24ndCBnZXQgaXQ/IExvb2sgYXQgdGhlIGZhY3RzOiBBdCBlYWNoIGFuZCBldmVyeSB0dXJuIG9mCk1pY3Jvc29mdCdzIHBsYW4gZm9yIG1hcmtldCBkb21pbmF0aW9uLCB0aGV5IGhhdmUgcmUtd3JpdHRlbiB0aGUgcnVsZXMgb2YKY29tcHV0aW5nIHRvIGZpdCB0aGVpciB2aXNpb24gb2YgdGhlIGZ1dHVyZS4gQWxsIFBDIG1hbnVmYWN0dXJlcnMsCnNvZnR3YXJlIGFuZCBoYXJkd2FyZSBhbGlrZSwgbXVzdCBjb25mb3JtIHRvIHRoZWlyIHJlc3BlY3RpdmUgcHJvZHVjdHMgdG8KdGhlICJXaW5kb3dzIHN0YW5kYXJkcy4iIEJ1dCBJIHRob3VnaHQgV2luZG93cyB3YXMgbWVyZWx5IGFuIG9wZXJhdGluZwpzeXN0ZW0gYnkgd2hpY2ggdG8gcnVuIHlvdXIgc29mdHdhcmUgb24gYW5kIGFsbG93IHlvdXIgaGFyZHdhcmUgY29tcG9uZW50cwp0byBjb21tdW5pY2F0ZSB3aXRoIGVhY2ggb3RoZXI/IFdoeSBhcmUgdGhleSBpbmNsdWRpbmcgZ2FtZXMgd2l0aApXaW5kb3dzPz8/CgpBdCB0aGUgcm9vdCBvZiBpdCBhbGwsIHRoZSBhbnN3ZXIgaXMgcXVpdGUgY2xlYXI6IFJFVkVOR0UuIEFzIHdlIGFsbCBrbm93LApCaWxsIGlzIGEgY29tcHV0ZXIgZ2Vlay4gQWxsIGhpcyBsaWZlIGhlIGhhcyBiZWVuIHRhdW50ZWQgYnkgcGVvcGxlIHdobwpsb29rZWQgZG93biBvbiBoaW0uIERvIHlvdSB0aGluayBoZSBkYXRlZCBhIGxvdCBvZiBjaGVlcmxlYWRlcnMgaW4gaGlzCnRlZW5zPyBIRUxMIE5PISBDSGVlcmxlYWRlcnMgd291bGQgbG9vayBhdCBoaXMgbmFzdHkgYXNzIGFuZCBsYXVnaCBhdCBoaW0KYmVoaW5kIGhpcyBiYWNrLiBXZXJlIHRoZSBqb2NrcyBvbiB0aGUgVmFyc2l0eSBGb290YmFsbCB0ZWFtIGhpcyBidWRkaWVzLApoZWxwaW5nIGhpbSB0byBidWlsZCBoaXMgb3duIGZpcnN0IGNvbXB1dGVyIGluIHRoZSBlYXJseSA3MCdzPyBBUkUgWU9VClNISVRUSU5HIE1FPz8gQnV0IEJpbGwga25ldyBpbiBoaXMgaGVhcnQgdGhhdCBoZSBoYWQgc29tZXRoaW5nIHRob3NlCmFzc2hvbGVzIHdvdWxkIG5ldmVyIGhhdmUgYW5kIG5vdCBhbGwgdGhlIG1vbmV5IGluIHRoZSB3b3JsZCBjb3VsZCBidXkKdGhlbSBpdCBpZiB0aGV5IGhhZCBpdDogR0VOSVVTLgoKU28sIHNvbGl0YWlyZSBleGlzdHMgb24gdGhlIFdpbmRvd3MgMy54LCA5NSwgOTgsIE5UIDMuNTEsIE5UIDQuMCBwbGF0Zm9ybXMKLSBhbmQgd2lsbCBjb250aW51ZSB0byBleGlzdCBvbiBhbnkgZnV0dXJlIHJlbGVhc2VzIG9mIHRoZSBPUyAtIGJlY2F1c2UKQmlsbCBHYXRlcyBrbm93cyB0aGF0IGFsbCB0aG9zZSBGVUNLSU5HIEFTU0hPTEVTIHdobyB0YXVudGVkIGhpbQp0aHJvdWdob3V0IGhpcyBsaWZlLCBhbmQgdGhvc2UgdGhhdCBleGlzdCBqdXN0IGxpa2UgdGhlbSwgd2lsbCBiZSBkcmF3bgppbnRvIHRoZSAiU29saXRhaXJlIFN0YXJlIiBsaWtlIGEgZGVlciBpbiBoZWFkbGlnaHRzLiBHYXRlcyBrbm93cyB0aGF0CnRoZXNlIHBlb3BsZSBoYXZlIHRvIHVzZSBvbmUgaGlzIHByb2R1Y3RzIGF0IFNPTUUgcG9pbnQgLSBFVkVSWUJPRFkgRE9FUyEKQW5kIGp1c3Qgd2hlbiBoZSBoYXMgdGhlbSB3aGVyZSBoZSB3YW50cyB0aGVtIC0gU01BQ0shISEgLSBoZSdsbCBidXkgdGhlCmNvbXBhbmllcyB0aGV5IHdvcmsgZm9yLCBsYXlvZmYgdGhlIHdlYWstbWluZGVkLCB0aGUgU29saXRhaXJlIGFkZGljdHMgYW5kCnJldmVsIGluIHlldCBhbm90aGVyIHRyaXVtcGghCgpNYXkgQmlsbCBHYXRlcyBydWxlIHRoZSB3b3JsZCBhbmQgbWF5IGFueSBsYXp5IGV4LUpvY2tzIGFuZApleC1DaGVlcmxlYWRlcnMgZmluZCBuZXcgd29yayBhcyBidXNib3lzIGFuZCB3YWl0cmVzc2VzIHRvIGZlZWQgdGhlaXIKZmFtaWxpZXMuCgpCZSBmb3J3YXJuZWQ6IFRoZSBHZWVrIFNoYWxsIEluaGVyaXQgdGhlIEVhcnRoIQoKCiAgUGhvYm9zICAtICB3dWVyZGUgTklFIHNlaW5lIHdlcnR2b2xsZSBaZWl0IG1pdCBzaW5ubG9zZW4gU3BpZWxlbiB2ZXJnZXVkZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRhcyBpcyBkb2NoIG5ldCBub3JtYWwgb2RlciA/PyAoSGlnaHQsIDEwLiBBdWcgMTk5OSwgMjE6MjE6NTQpOgpbMzVtWXVuZ2FbMG0gcmljaHRldCBzZWluZSBQbGFrZXR0ZSBhdWYgRGljaC4KQmxpdHplIHp1Y2tlbiB6d2lzY2hlbiBkZW4gendlaSBQbGFrZXR0ZW4gaGluIHVuZCBoZXIuClBsb2V0emxpY2ggd2Vpc3N0IER1IGZvbGdlbmRlczoKRHUgaGFzdCBnZW5hdXNvIHZpZWxlIFN0dWZlbnB1bmt0LU1vbnN0ZXIgZ2V0b2V0ZXQgd2llIFszNW1ZdW5nYVswbS4KRHUgaGFzdCAxMzEgTW9uc3RlciBnZXRvZXRldCwgZGllIFszNW1ZdW5nYVswbSBub2NoIG5pY2h0IGdldG9ldGV0IGhhdC4KWzM1bVl1bmdhWzBtIGhhdCAxMzEgTW9uc3RlciBnZXRvZXRldCwgZGllIER1IG5vY2ggbmljaHQgZ2V0b2V0ZXQgaGFzdC4KCgp6dWZhZWxsZSBnaWJ0cyAqZyogCmhpZ2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXBwZW4uLi4gKEx1ZywgMTEuIEF1ZyAxOTk5LCAwMzowNDo0Nyk6CgpFcyBnaWJ0IG5vY2ggUmVzcGVrdCB2b3IgYWVsdGVlbiBNaXRtdWRkZXJuLi4uCgpIYWNoaW1hbiBlbnRkZWNrdCBkaWNoIHVuZCB2ZXJuZWlndCBzaWNoIHZvciBkaXIuCgoKQnJhdgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEZXBwZW4uLi4gKE5vdmFzdG9ybSwgMTEuIEF1ZyAxOTk5LCAxMDoyNDowNCk6Cn4jISBybj1MdWcgcnQ9OTM0MzMzNDg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM0MzMzNDg3CkFjaCB3YXMsIGRhcyBtYWNodCBkZXIgU2NobGVpbWVyIGJlaSBqZWRlbSwgYmlsZCBEaXIgbnVyIApuaWNodHMgZHJhdWYgZWluISA7LVAKICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbW1lciB3aWVkZXIuLi4gKE5vdmFzdG9ybSwgMTEuIEF1ZyAxOTk5LCAxMDozNzozOCk6Ci4uLiBsdXN0aWcuClNjaG5lZXdpdHRjaGVuIHNhZ3QgOiAnSmEsIEJvaW5nIGlzdCBkaWVzZXIgZHJvbGxpZ2UgUmVnaW9uc21hZ2llciBtaXQgZGVtCnN1ZXNzZW4gU3RlaW5iZWlzc2VyLicKICBOb3ZhLCAoZGFzcyBkaWVzZXIgIFN0ZWluYmVpc3NlcmZyZXVuZCBzaWNoIGltbWVyIG5vY2ggZGFzIEdvdHQgYW5tYXNzdAoqcGZ0KikgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZXJhZGUgYmVpIGRlciBzb25uZW5maW5zdGVybmlzIChDYWlsbGVhbiwgMTEuIEF1ZyAxOTk5LCAxNDoxNDo1Nik6CmphbWVzb246IGdsYXViIG1pciwgaWNoIGJyYXVjaCBrZWluZSBzb25uZW5maW5zdGVybmlzLCB1bSBhdWYgbmVyIGVpbnNhbWVuCndpZXNlIGVpbiBwYWFyIGJhYmllcyB6dSBtYWNoZW4uLi4uLgoKc29zbwoKKkdHRyoKCmNhaWxsZWFuLCB3b2xsdGUgZGFzIFNPIGdlbmF1IGRhbm4gamEgbnVuIGF1Y2ggd2llZGVyIG5pY2h0IHdpc3NlbjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpob3BzYSAoQ2FpbGxlYW4sIDExLiBBdWcgMTk5OSwgMTQ6MjA6MTQpOgpEdSB3aW5rc3QgRGVpbmVuIEZyZXVuZGVuIGF1cyBkZXIgZmVybmUgenVtIGFic2NoaWVkIHp1LgpQYXJhY2Vsc3VzIEkgUyBUICBKIEUgVCBaIFQgIE4gSSBDIEggVCAgTSBFIEggUiAgIEQgQSAhISEKCm5hamEsIFNPIHdhciBkYXMgZG9jaCBhdWNoIG5pY2ggZ2VtZWludDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbHNvIHdhcyBhbmR5IHNvIGFsbGVzIG1pdCBzaWNoIHRyYWVndCAoQ29ubmVyLCAxMS4gQXVnIDE5OTksIDE3OjE3OjE4KToKRHUgc2llaHN0IGRpZSBzdGVyYmxpY2hlbiBVZWJlcnJlc3RlIEFuZHlzLgpTaWUgZW50aGFlbHQ6CkRpZSB2ZXJmYXVsdGVuIEVpbnplbHRlaWxlIGVpbmVzIEdhcmRld2FlY2h0ZXJzLgoKQ29ubmVyIGRlbiBLb3Bmc2NodWV0dGVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG5hcmNobmFzZW4gKFBmZWlmZSwgMTIuIEF1ZyAxOTk5LCAwNzoyNTo1OSk6CgoKU3RvZXJ0aS4uLi4uLi4uSndzIFBmZWlmZS4uLi4uLi4uLi4ucyBGZWxlcmlhbi4uLi4uLi5KLlogQW5ha2luLi4uLi4uLi4uSi5TClN0cm9oYWxtLi4uLi4uLkp3UyBNZXJjdXRpby4uLi4uLi5Kd1MgUXVpbGxpYW4uLi4uLi4uSi5tIEJhbWJ1bGtvLi4uLi4uLkouTQpQYXRyeW4uLi4uLi4uLi5KLkgKClBmZWlmZSBmdWVobHQgc2ljaCBlaW5zYW0gKmcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFc/IChNb3Jnb3RoLCAxMi4gQXVnIDE5OTksIDEwOjE5OjM1KToKRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuCltTZWhlcjpEb2diZXJ0XSBmZWluZmVpbgpbU2VoZXI6RG9nYmVydF0gZGFyZiBtYW4gbWl0bWFjaGVuID8KW1NlaGVyOkhvb2RdIHNjaGVpc3Mga2xlcmlrZXIsIHp3c2NodWVzcyBoeWRyYQpbVG9kOkxhcnNdIEVpbiBIeWRyYWtvcGYgaGF0IGdlcmFkZSBEb2diZXJ0IHVtZ2VicmFjaHQuCltUb2Q6RWluIEh5ZHJha29wZl0gaHNzc3NzcyAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhIGJpdHRldCBtYW4gdW0gSGlsZmUuLi4gKFNvcmNlcmVyLCAxMi4gQXVnIDE5OTksIDE5OjU2OjQwKToKLi4udW5kIGRhbm4gOgoKRHUgdGVpbHN0IExseXN0cmF0aGUgbWl0OiBoaWxmZQogIER1IHRyaWZmc3QgQWxmcmVkIHNlaHIgaGFydC4KICBBbGZyZWQgdHJpZmZ0IERpY2ggc2VociBoYXJ0LgogIEFsZnJlZCB0cmlmZnQgRGljaCBzZWhyIGhhcnQuCkFsZnJlZCBzY2hpZXNzdCBlaW5lbiBTYWV1cmVzdHJhaGwgYXVmIERpY2guCiAgQWxmcmVkIHplcnNjaG1ldHRlcnQgRGljaCBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgU29yY2VyZXIKW1RvZDpMYXJzXSB1bWdlYnJhY2h0LgpMbHlzdHJhdGhlIHRlaWx0IERpciBtaXQ6IERhcyBzb2xsdGUgRGVpbmVuIFd1bmRlbiBoZWxmZW4uCgpOdW5qYSwgenVnZWdlYmVuLCBkYW5hY2ggaGF0dGUgaWNoIGtlaW5lIEhlaWx1bmcgbWVociBub2V0aWcsIGFiZXIgc28gd2FyJ3MKdHJvdHpkZW0gbmljaHQgZ2VtZWludC4uCgpTb3JjZXJlciAtIGxlaWNodCB2ZXJ3dW5kZXJ0IHVlYmVyIExseXMqIEhlaWx1bmdzbWV0aG9kZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdyYWQgaW0gRHNjaHVuZ2VsLi4uIChNYWdlbmJyb3QsIDEzLiBBdWcgMTk5OSwgMDA6MjQ6NTMpOgoKRHUgaG9lcnN0IGVpbiBsYXV0ZXMgQnJ1ZWxsZW4gYXVzIGRlbSBEc2NodW5nZWwuCkRpZSBXdXJ6ZWwgcnVmdDogdHNjaHVlc3MgenVzYW1tZW4hCgptYWdlbmJyb3QgKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKamFqYSAoU3RvZXJ0aSwgMTMuIEF1ZyAxOTk5LCAwMTozNToxNik6ClNBTkR8RSBzYWd0OiBzZWx0ZW4gaGllciB1bnRlbiA6KQpXaW0gc2FndDogbnVyIHVtIG1hbCB3aWVkZXIgbmVuIHNwaWVsZXIgenUgbG9lc2NoZW4gJiBiYW5pc2hlbgpDb25jaGkgaGF0IGdlcmFkZSBkaWUgVmVyYmluZHVuZyB6dSBNb3JnZW5HcmF1ZW4gZ2VrYXBwdC4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIENvbmNoaS4KU2hhcmltIGhhdXQgYWIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RydXZzY3JvbGwgOi0pIChMaWFyYSwgMTMuIEF1ZyAxOTk5LCAwMzoyNzoyNSk6CkluIGRlciBFaW5nYW5nc2hhbGxlLgpFcyBnaWJ0IHNlY2hzIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4sIHdlc3Rlbiwgbm9yZGVuLCBzdWVkd2VzdGVuCnVuZCBzdWVkb3N0ZW4uIApFaW4gQmF1bXN0YW1tLgpFaW4gU2thbHBlbGwuCkVpbiBCcmVpdHNjaHdlcnQuICgzKQpEaWUgYmVyZWl0cyB6aWVtbGljaCBzdGlua2VuZGUgTGVpY2hlIEhvbmRhbSBVbnRlcmZlbHMnLgpEaWUgc2NoaW1tZWxuZGUgdW5kIGhhbGJ2ZXJ3ZXN0ZSBMZWljaGUgTGV5aWRhcycuCkRpZSBzY2hpbW1lbG5kZSB1bmQgaGFsYnZlcndlc3RlIExlaWNoZSBHcm9nZyBacidrdW1wZnMuCkRpZSBzY2hpbW1lbG5kZSB1bmQgaGFsYnZlcndlc3RlIExlaWNoZSBIdXpydWNrcy4KRGllIHNjaGltbWVsbmRlIHVuZCBoYWxidmVyd2VzdGUgTGVpY2hlIEthcmFrcy4KRGllIHZlcmZhdWx0ZW4gRWluemVsdGVpbGUgQnVscmlrIFRob3JhbnMuCkRpZSB2ZXJmYXVsdGVuIEVpbnplbHRlaWxlIElsbHV6aWRhcy4KRGllIHZlcmZhdWx0ZW4gRWluemVsdGVpbGUgS2xvaXJlbiBFaXNlbmhlbG1zLgpEaWUgdmVyZmF1bHRlbiBFaW56ZWx0ZWlsZSBIb2dvcy4KRGllIHZlcmZhdWx0ZW4gRWluemVsdGVpbGUgVHJpbmFzLgpFaW5lIEFybWJydXN0LgpEZXIgR3JhYnN0ZWluIHZvbiBTbXV0LgpEYXMgU2Nod2FyemUgQnJldHQuCgpEaWUgQW5kZXJlbiBoYXR0ZW4gd29obCBBbmdzdC4gKmR1Y2sqCgpMaWFyYSwgWmF1YmVyaW5lIGF1cyBMZWlkZW5zY2hhZnQgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcG9waGlzIGxlcm50IChHcmltbWFuLCAxNS4gQXVnIDE5OTksIDAzOjQ4OjU4KToKPiBbPE1hc3RlUj46QXBvcGhpc10gYWVobSwgamV0enQgaXNzZXMga2FwdXR0CgpuYWNoIG1laHJtYWxpZ2VtIFZlcnN1Y2ggaXJnZW5kd2FzIHp1IGVycmVpY2hlbiAuLi4KbmFjaCBtZWhybWFsaWdlbSBWZXJzdWNoIGlyZ2VuZHdhcyB6dSBlcnJlaWNoZW4gLi4uCgpHcmltTWFuICwgc2NobXVuemVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggYmVpbSBERyAoS2FtZWxvdCwgMTUuIEF1ZyAxOTk5LCAyMjozMTozMyk6CkRlbCBwYXJpZXJ0IGRpZSBuYWVjaHN0ZW4gQW5ncmlmZmUgbWl0IGVpbmVtIFZvbGxzdHJlY2tlci4gICAKaGVpbGlnZW5zY2hlaW4KCkthbWVsb3Qgc2ljaCBpbW1lciBub2NoIHdhZWx6ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkZXIgZHJhY2hlbmdvdHQgKEthbWVsb3QsIDE1LiBBdWcgMTk5OSwgMjM6MDU6NDUpOgpEaWVzIGlzdCBhbHNvIEJha2h0YXJyaCwgZGVyIGdyYXVzYW1lIEhlcnJzY2hlciBkZXIgU2NocmVja2Vuc3NwaXR6ZS4KRXIgc2llaHQgZ2FyIG5pY2h0IHNvIGVpbmRydWNrc3ZvbGwgYXVzLCBkb2NoIGVpbiBCbGljayBpbiBzZWluZSBBdWdlbgp6ZWlndCBzZWluZSBmdWVyY2h0ZXJsaWNoZSB1cmFsdGUgQm9zaGVpdCB1bmQgTWFjaHQuIERlciBzY2h3YXJ6ZQpLb2VycGVyIGlzdCBtaXQgZ29sZGVuZW4gU2NodXBwZW4gYmVzZXR6dCwgZGllIGRlbiBnZXdhbHRpZ2VuIExlaWIgdm9yCkFuZ3JpZmZlbiBzY2h1ZXR6ZW4gc29sbGVuLiBCYWtodGFycmggaXN0IGVpbiBNZWlzdGVyIGRlciBCZXNjaHdvZXJ1bmcKdW5kIGVyIHZlcnN0ZWh0IGVzLCBzaWNoIHNlbGJzdCBtaXQgZGVuIEhlZXJzY2hhcmVuIHNlaW5lciBEaWVuZXIgenUKc2NodWV0emVuLiBBYmVyIGRhcyB3aXJzdCBEdSBpbnp3aXNjaGVuIHNjaG9uIGJlbWVya3QgaGFiZW4uCkVyIHdhbmt0IGJlcmVpdHMgYmVkZW5rbGljaC4gKDQwJSkKRXIgdHJhZWd0IGJlaSBzaWNoOgpFaW5lIFJvYmUgdm9uIFVsenUnQmFraHRhcnJoLiAoMykKMyBQaGlvbGVuIG1pdCByZWluZW0gRmV1ZXIuCkVpbiBTdGFobHNjaHdlcnQuCjIwIE11ZW56ZW4uCkVpbiBFaXNhbXVsZXR0LiAoMykKRWluIHJvZXRsaWNoZXIgUmluZy4KRWluZSBGZXVlcmtldWxlLgpEYXMgRmV1ZXJzY2hpbGQuCkVpbiBQYWFyIEd1bW1pc3RpZWZlbC4KRWluZSBMZWRlcmhvc2UuCkVpbiBrbGVpbmVzIFN0YWhsYmxlY2guCjYga2xlaW5lIFN0YWhsYmxlY2hlLgpFaW4gUGFyYWxsZWx0cmFuc2Zvcm1hdG9yIG5hbWVucyBLbnViYmVsLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCm9obmUga29tbWVudGFyCnNjaGF1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmdWVyIHNpbHZhbmEgKFN0cmVhd2tjZXVyLCAxNi4gQXVnIDE5OTksIDAwOjA3OjU5KToKW0FsbGdlbWVpbjpTaWx2YW5hXSBTY2hyZWliIG1hbCBlaW5lciB3YXMgaW4gZGllIFplaXR1bmcuLi4gTWlyIGlzdApbQWxsZ2VtZWluOlNpbHZhbmFdIGxhbmd3ZWlsaWcuLi4KCgpyZWljaHQgZGFzPyA6LSkKCnJyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGYXVsZXMgUGFjayA6KSAoVHJ1ZywgMTYuIEF1ZyAxOTk5LCAwNzowOTowNSk6Cj5rd2VyCkxpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNb24sIDE2LiBBdWcgMTk5OSwgMDc6MDg6MTMgKDUgVGVpbG5laG1lcikKClNvaWxlbnQuLi4uLi4uLkoucyBUbGFraC4uLi4uLi4uLi5KLnMgRmVsZXJpYW4uLi4uLi4uandaIFRydWcuLi4uLi4uLi4uLi4uWgpTdHJvaGFsbS4uLi4uLi5qd1MKCkxhdXRlciBTY2hsYWVmZXIgOikKClRydWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVZm8gKEdyaW1tYm9ybiwgMTcuIEF1ZyAxOTk5LCAwOTo1NjoxNSk6Cn4jISBybj1EaWVkZXIgcnQ9OTM0ODM2ODI2IHJnPXdpdHplCn4jISB0aWQ9OTM0ODM2ODI2CkR1IHdlaXNzdCBhbnNjaGVpbmVuZCBlbnR3ZWRlciBuaWNodCB3aWUgbGFuZ2UgZXMgZGF1ZXJ0IGVpbiBGZWxkIHp1IHBmbHVlZ2VuCm9kZXIgd2llIGxhbmdlIG1hbiBhdWNoIGJlaSBoYXJ0bmFlY2tpZ2VyIFZlcnN0b3BmdW5nIGFtIFdhbGRyYW5kIHNpdHp0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzaGFrZXNwZWFyZS4uLiAoR3JpbW1ib3JuLCAxNy4gQXVnIDE5OTksIDA5OjU2OjM5KToKfiMhIG9uPUJhbWJ1bGtvIG90PTkzNDg3NTg1MCBvZz13aXR6ZQp+IyEgcm49R25vbWUgcnQ9OTM0ODM4MTA4IHJnPXdpdHplCn4jISB0aWQ9OTM0ODM4MTA4Ck11c3MgbWFuIGRlbiB2ZXJzdGVoZW4sIG9kZXIgYmluIGljaCBudXIgenUgYmxvZWQ/CgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FuZGxlciAoRm9uZG9yLCAxNy4gQXVnIDE5OTksIDEwOjE1OjEyKToKRWluIFdhbmRsZXIgd2FiZXJ0IGhlcmVpbi4KVGh1ZmhpciBhbiBhbGxlIFphdWJlcmVyOiB2ZXJkYW1tdCwgZGVyIHdhbmRsZXIgZ2VodCBhdWNoIHp1IG1hZ2llcm4gaW4gbmljaHQKVGh1ZmhpciBhbiBhbGxlIFphdWJlcmVyOiBhbmdlc2NobG9zc2VuZSBnZWJpZXRlLiA7KApEZXIgV2FuZGxlciB3YWJlcnQgbmFjaCBOb3JkZW4uCgpFaW4gZ3JpbnNlbmRlciBhYmVyIHVuc2NodWxkaWdlciBGb25kb3IuID46KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc3RlaW5yZWljaCEgKFJpa3VzLCAxNy4gQXVnIDE5OTksIDE1OjE3OjMyKToKUm9jaHVzIGVyc2NoZWludC4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KUm9jaHVzIGdpYnQgRGlyIDIxNDc0ODM2NDcgTXVlbnplbi4KUm9jaHVzIHZlcnNjaHdpbmRldC4KClJpa3VzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKmxhY2gqIChNdWFkaWIsIDE3LiBBdWcgMTk5OSwgMjI6MjI6MDMpOgp+IyEgcm49U3RpbmcgcnQ9OTM0OTA3MDM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM0OTA3MDM1CndlbGNoZSB0ZWlsZSBoYXN0ZSBkZW4gZ2V3YWVsenQsIHVuZCB3b3JpbiA/CgptdWFkaWIgKmlycml0aWVydCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuc2VyIGFrdHVlbGxlciBCZWl0cmFnIHp1ciBaYXViZXJlcmdpbGRlIDopIChTaGFubmFyYSwgMTcuIEF1ZyAxOTk5LCAyMzozMzoxNyk6CkR1IHN0ZWhzdCBudW4gbWl0dGVuIGltIFZlcndhbHR1bmdzYnVlcm8gZGllc2VyIE1pbmUuIFZpZWwgZ2lidCBlcyBoaWVyIG5pY2h0Cnp1IHNlaGVuLCBkZW5uIGFsbGVzIGlzdCBlbGZpc2NoIGthcmcgZWluZ2VyaWNodGV0LiBOYWNoIFdlc3RlbiBrYW5uc3QgRHUKZGllc2VuIGxhbmd3ZWlsaWdlbiBPcnQgd2llZGVyIHZlcmxhc3Nlbi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHdlc3Rlbi4KUXVhbG1pICxkZXIga2xlaW5lIFN1Y2h0aWUuCkVpbiBFaXNlbGZlbndhZWNodGVyLgpEaXIgZmFlbGx0IGRvY2ggdGF0c2FlY2hsaWNoIG5pY2h0cyBCb2VzYXJ0aWdlcyBlaW4uCkxhc3MgRGlyIHJ1aGlnIFplaXQgYmVpbSBVZWJlcmxlZ2VuIGRlciBuYWVjaHN0ZW4gQmVzY2hpbXBmdW5nLgpEdSBzY2hpbXBmc3Q6IER1IGJpc3Qgc28gaGFybWxvcywgRGljaCBrb2VubnRlIHNvZ2FyIGVpbiBaYXViZXJlciBiZXNpZWdlbi4KRWluIEVpc2VsZmVud2FlY2h0ZXIgZXJ3aWRlcnQ6IFphdWJlcmVyPyBNYWdpZT8gSElMRkUhCgoqa2ljaGVyKgpTaGFubmFyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpsYWNoKiAoQmFtYnVsa28sIDE4LiBBdWcgMTk5OSwgMTE6MzQ6NTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTkzNDkyMzUwNSByZz13d3cKfiMhIHRpZD05MzQ5MjM1MDUKKmdyb2VobCouLi4uZGFzIGdpYnQncyBkb2NoIG5pY2h0Li4uLi4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTpOZXVlcyB2b20gQmFsYW5jZS1UZWFtIChEYXJrbWFnZSwgMTguIEF1ZyAxOTk5LCAxNDowNjoyOCk6CkJvaW5nIHNjaHJpZWI6Cgo+IERhIE1pbmRibGFkZSBhdWZncnVuZCBzZWluZSBEaXBsb21hcmJlaXQgbnVyIG5vY2ggd2VuaWcgWmVpdCBoYXQsCj4gaXN0IGVyIGF1cyBkZW0gQmFsYW5jZS1UZWFtIHp1cnVlY2tnZXRyZXRlbi4KPiBEYWZ1ZXIga29ubnRlbiB3aXIgQW5hdG9sIHZlcnBmbGljaHRlbi4uLgoKSWNoIG5laG1lIGFuLCBkYXNzIHNpY2ggZGllIGdlemFobHRlIEFibG9lc2VzdW1tZSBmdWVyIGRpZXNlbiBUb3AtU3RhciBub2NoIGluCkdyZW56ZW4gaGllbHQ/IDspCgpOZWIsIGhvZmZ0LCBkYXNzIEFuYXRvbCB2b2xsIGVpbnNjaGxhZWd0IHVuZCBkYXMgVGVhbSB2b3IgZGVtIEFic3RpZWcgcmV0dGVuCmthbm4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV3VyZGUgUnVlc3RlIGF1Zmdld2VydGV0ID8gKEFuYWNyaW9uLCAxOC4gQXVnIDE5OTksIDE5OjQzOjQyKToKCkR1IG1hY2hzdCBlaW4gcGFhciBiZXNjaHdvZXJlbmRlIEdlc3RlbiB1ZWJlciBkZW0gUGFhciBBZGFtYW50c2NodWhlLgpEYXMgUGFhciBBZGFtYW50c2NodWhlIGJsaXR6dCBrdXJ6IGdydWVubGljaCBhdWYuCkRlaW5lIFNjaHVoZSBnbHVlaGVuIGt1cnogYXVmIHVuZCBoZWlsZW4gRGljaCBlaW4gd2VuaWcuCgouLi4uIFdPVyA6KQoKQml0dGUgamVkZXNtYWwgOikKCkFuYWMqIC0gZnVlaGx0IHNpY2ggUHVkZWx3b2hsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqd3VuZGVyKiAoQnJhbndlbiwgMTguIEF1ZyAxOTk5LCAxOTo1OToxMyk6CjwgRGFzIE1VRCBsYWV1ZnQgamV0enQgMTIgVGFnZSwgMyBTdHVuZGVuLCAyNSBNaW51dGVuIHVuZCAyMQo8IFNla3VuZGVuLiBFcyBzaW5kIG1vbWVudGFuIDk2IFNwaWVsZXIgZWluZ2Vsb2dndApkYXMKPCBNYXhpbXVtIGxhZyBoZXV0ZSBiZWkgOTUgdW5kIGRlciBSZWtvcmQgYmlzaGVyIGlzdCAyMTQuCgoKOTYgPCA5NSA/Pz8KCmJyYW53ZW4sIHNpY2ggd3VuZGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqd3VuZGVyKiAoQXBzdSwgMTguIEF1ZyAxOTk5LCAyMDowMTozNSk6Cn4jISBybj1CcmFud2VuIHJ0PTkzNDk5OTE1MyByZz1zY2htYXJybgp+IyEgdGlkPTkzNDk5OTE1MwpJY2ggc2NoYWV0eiBtYWwgZGFzIHdpcmQgbmljaHQgZGF1ZXJuZCBha3R1YWxpc2llcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvIGVpbiB1bnNpbm4gKExhcmFuaXMsIDE4LiBBdWcgMTk5OSwgMjI6MDg6MTEpOgpEdSB0cmlmZnN0IGRhcyBLYW5pbmNoZW4gaGFydC4KRGFzIEthbmluY2hlbiBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW5lIExlaWNoZSB0YW56dCB3aWUgaW4gVHJhbmNlIGR1cmNoIGRpZSBHZWdlbmQuCgoqbGFjaCogYXVjaCBMZWljaGVuIGtvZW5uZW4gdGFuemVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2VobSAoRGllZGVyLCAxOC4gQXVnIDE5OTksIDIzOjEwOjIyKToKbHViYmVyIHdhbmRlbHQgaGVyZWluLgpHaWFubmkga29tbXQgYW4uCiAgR2lhbm5pIHRyaWZmdCBCbHViYmVyLgpCbHViYmVyIGZhZWxsdCB0b3QgenUgQm9kZW4uCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCltUb2Q6TGFyc10gR2lhbm5pIGhhdCBnZXJhZGUgQmx1YmJlciB1bWdlYnJhY2h0LgoKQ291bGRudCByZXNpc3QsIERpZWRlciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBpbSBzdHJ1diAoU2t5LCAxOS4gQXVnIDE5OTksIDAwOjU3OjU0KToKCgpCcmllc2VsdHJpbSBrb21tdCBhbi4KQnJpZXNlbHRyaW0gdHJpbmt0IGVpbiBTcGV6aWFsZ2V0cmFlbmsgYXVmIEtvc3RlbiBkZXMgSGF1c2VzLgpCcmllc2VsdHJpbSBnZWh0IG5hY2ggU3VlZGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBha3R1ZWxsIDopIChHcmltbWJvcm4sIDE5LiBBdWcgMTk5OSwgMDE6MzA6NTYpOgp+IyEgb249U3Rpbmcgb3Q9OTM0OTkzNDY3IG9nPXdpdHplCn4jISBybj1HYXN0MSBydD05MzQ5NzIyMjMgcmc9d2l0emUKfiMhIHRpZD05MzQ5NzIyMjMKRXMgZ2lidCBHcmVuemVuIGRpZSBtYW4gbmljaHQgdWViZXJzY2hyZWl0ZW4gc29sbHRlLgoKU3RpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBzeWNoYXRlciBnZXd1ZW5zY2h0PyAoTW9yZ290aCwgMTkuIEF1ZyAxOTk5LCAwODozNToyMCk6CklyZ2VuZHdpZSBzY2hlaW50IGVzIGVpbmlnZSBMZXV0ZSB6dSBnZWJlbiwgZGllIGRvY2ggU0VIUiBkcmluZ2VuZCBlaW5lbgpQc3ljaGF0ZXIgYnJhdWNoZW4uIE5laW4sIG5laW4sIG5pY2h0IGRpZSAwOC8xNSBNdWRkZXJzY2hhZnQsIHNvbmRlcm4gZGllCmtsZWluZW4gRXh0cmVtby1TcGlubmVyLiAKTWFsIGViZW4gd2llZGVyIGVpbiBCZWlzcGllbCBhdXMgZGVyIEhpc3Rvcnk6ClNseWZveCB3aW5rdCBEaXIgbWl0IGVpbmVuIGtyYWVmdGlnZW4gVHJpdHQgaW4gZGllIEVpZXIgYXVzIGRlciBGZXJuZSB6dS4KCk1vcmdvdGggYmlldGV0IFNseWZveCBlaW5lIEphY2tlIGFuLiBTaWUgaGF0IHNvZ2FyIGRpZSBLbm9lcGZlIGhpbnRlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXICh2ZXJzcGFldGV0KSAoTW9yZ290aCwgMTkuIEF1ZyAxOTk5LCAxMDozNjo0NSk6Ck1hcmxvdyBydWZ0OiB3aWUga2FubiBtYW4gZGVuIEZhaHJzdHVobCBpbiBIaWxiZXJ0cyBUdXJtIGJlbnV0emVuCi4uLmV0d2FzIHNwYWV0ZXIuLi4KW1RvZDpMYXJzXSBFaW4gRGFlbW9uIGhhdCBnZXJhZGUgTWFybG93IHVtZ2VicmFjaHQuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWWVhaCBlaW4gbmV1ZXIgU2VwcGwuLi4gKEx1ZywgMjAuIEF1ZyAxOTk5LCAwNDoyMjo0MSk6CgpDb25jaGkgdGVpbHQgRGlyIG1pdDogZ2VoIG5hY2ggaGF1c2UgTHVnLCBlcyBuZXJ2dCBtaXQgZGVyIFplaXQuLi4uLgoKRmVpbiA7KQpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZsdWNodC4uLiAoV3Vyc3QsIDIwLiBBdWcgMTk5OSwgMTA6MjQ6MDMpOgoKYWxpYXMgYmVpbCAtYmVpbGVpZDpmaW5kZXQgRWluZSBCYW5zaGVlIGlyZ2VuZHdpZSBsdXN0aWcuIEF1Y2ggd2VubiBDaGFvc2xvcmQKZGEgYW5kZXJlciBNZWludW5nIGlzLi4uIDpvKQphbGlhcyBiZWlsMiAtYmVpbGVpZDp1bmQgRWluZSBCYW5zaGVlIGZpbmRlbiBkZW4gVG9kIHZvbiBDaGFvc2xvcmQgZG9jaAppcmdlbmR3aWUgdHJhZ2lzY2guLi4uIDpvKQphbGlhcyBjYmVpbCAtYmVpbGVpZCBCZWlsZWlkIENoYW9zbG9yZCEgLi4ud2VubiBpY2ggQ2hhb3Qgd2FlcmUgd3VlcmQnIGljaApqZXR6dCBoZXVsZW4uLi4KCiA+IFJpa3VzIGdydWViZWx0LCBkZW5rdCBzY2hhcmYgbmFjaCB1bmQga3JhbXQgc2NobGllc3NsaWNoIGV0d2FzIGF1cyBkZW4KVGllZmVuIHNlaW5lciBUYXNjaGVuIGhlcnZvci4KIFs8TWFzdGVSPjpBcG9sbG9uaWEgdmVybGFlc3N0IGFscyBMZXR6dGUgZGllIEViZW5lICdNYWVubmVyJywgd29yYXVmIGRpZXNlCiAgICAgICAgICAgc2ljaCBpbiBlaW5lbSBCbGl0eiBva3RhcmluZW4gTGljaHRzIGF1ZmxvZXN0Ll0KIFBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBBcG9sbG9uaWEuCiBBcG9sbG9uaWEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCiBSaWt1cyB3aXJmdCBlaW4gS2lzc2VuIG5hY2ggQXBvbGxvbmlhLgoKCiBncmFkZSBub2NobWFsIHJlY2h0emVpdGlnIGFiZ2VoYXVlbiA6bykKCiBFaW5lIGdyaW5zZW5kZSAKIFd1cnN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bmQgd2VjaCAoQW1hcnlsbGlzLCAyMC4gQXVnIDE5OTksIDEwOjU3OjI3KToKQXBvbGxvbmlhIHNhZ3Q6IG9rYXksIGVyIGlzdCB3ZWcKUGxvZXR6bGljaCBrcmFjaHQgZXMgaW0gVW50ZXJob2x6LCB1bmQgRHUgaG9lcnN0IFNjaHJpdHRlLCBkaWUgc2ljaCByYXNjaAplbnRmZXJuZW4uCgpBbWEqLCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHN0ZWlucmVpY2ghIChBcG9sbG9uaWEsIDIwLiBBdWcgMTk5OSwgMTI6NTc6MTkpOgp+IyEgcm49UmlrdXMgcnQ9OTM0ODk1ODUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM0ODk1ODUyClp1bSBHbHVlY2sgaGFzdGUgbmljaHQgZXJ3YWVobnQsIFdPRlVFUiBkaWUgTXVlbnplbiB3YXJlbiwgUmlrdXMgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc3RlaW5yZWljaCEgKFJpa3VzLCAyMC4gQXVnIDE5OTksIDEyOjU5OjE3KToKfiMhIHJuPUFwb2xsb25pYSBydD05MzUxNDY2Mzkgcmc9c2NobWFycm4KfiMhIHRpZD05MzQ4OTU4NTIKaGFiIGljaCBuaWNodD8gR0FOWiB2ZXJnZXNzZW4hIEljaCBoYWJlIEFwbyogdmVyc3RlaWdlcnQgdW5kIFJvY2h1cyB3YXIKZGVyIG1laXN0YmlldGVuZGUgOikKClJpa3VzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmx1Y2h0Li4uIChBcG9sbG9uaWEsIDIwLiBBdWcgMTk5OSwgMTM6MDA6MDcpOgp+IyEgcm49V3Vyc3QgcnQ9OTM1MTM3NDQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM1MTM3NDQzClNvIHdhcyBuZW5udCBzaWNoIHdlaWJsaWNoZXIgSW5zdGlua3QgOykKQXBvKiAoYnJlaXQgZ3JpbnNlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzdGVpbnJlaWNoIChHYXN0MiwgMjAuIEF1ZyAxOTk5LCAxNDo1Njo1OCk6CgpTb3dhcyBuZW5udCBtYW4gRnJhdWVuYm9udXMuCgpHYXN0ICh3ZWlibGljaCwgbWl0IFNlaGVyZXJzdGllKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogc3RlaW5yZWljaCEgKFBhbXBlcnMsIDIwLiBBdWcgMTk5OSwgMTY6Mzg6MTYpOgp+IyEgcm49UmlrdXMgcnQ9OTM1MTQ2NzU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM0ODk1ODUyCkdhbnoga2xhciB1ZWJlcmJlemFobHQuIEZ1ZXIgZGFzIEdlbGQga2FubiBtYW4gamEgaW0gUHVmZiBlaW56aWVoZW4uCgpQYW1wZXJzLiBLZWluIG1hbm4gZnVlciBlaW5lIE5hY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogc3RlaW5yZWljaCEgKEdyaW1tYm9ybiwgMjAuIEF1ZyAxOTk5LCAxNjo1NjoxNSk6Cn4jISBybj1QYW1wZXJzIHJ0PTkzNTE1OTg5NiByZz1zY2htYXJybgp+IyEgdGlkPTkzNDg5NTg1Mgo+IFBhbXBlcnMuIEtlaW4gbWFubiBmdWVyIGVpbmUgTmFjaHQuCgpTdGltbXQuIE5hY2ggZWluZXIgaGFsYmVuIFN0dW5kZSBtYWNoc3QgRHUgc3BhZXRlc3RlbnMgc2NobGFwcCwgbWVpbmVyCkVyZmFocnVuZyBuYWNoLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBzdGVpbnJlaWNoISAoQXBvbGxvbmlhLCAyMC4gQXVnIDE5OTksIDE3OjQzOjE5KToKfiMhIHJuPVBhbXBlcnMgcnQ9OTM1MTU5ODk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM0ODk1ODUyCk1laW4gUGFwaSBkYXJmIGVoIG1hY2hlbiwgd2FzIGVyIHdpbGwuLi4gVW5kIGljaCBnbGF1YiBqZXR6dCBtYWwgbmljaHQsIGRhc3MKZXIgREFTIG5vZXRpZyBoYWV0dGUsIEtsZWlud2luZGVsZWluLi4uIFdlaXNzIGhhbHQgbmljaHQsIHdhcyBSaWt1cyBtaXQgZGVyCktvaGxlIGFuZmFlbmd0IDspCkFwbyogKGluIHNpY2ggcmVpbmdyaW5zZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbnBjIG9kZXIgd2F0PyAoU3RvZXJ0aSwgMjAuIEF1ZyAxOTk5LCAxODo1MjowMyk6CkhhYiBqYSBzY2hvbiB2aWVsIGVybGVidCBhYmVyIHNvd2FzOgoKTWNEb2dhYmVydCB3ZWlsdCB3aWVkZXIgdW50ZXIgZGVuIExlYmVuZGVuLgpNY0RvZ2FiZXJ0IHdhbmRlbHQgbmFjaCBOb3JkZW4uCk1jRG9nYWJlcnQgd2FuZGVsdCBoZXJlaW4uCk1jRG9nYWJlcnQgZnJhZ3QgRGljaDogTmFjaCBxdWVzdD8KTWNEb2dhYmVydCBmcmFndCBEaWNoOiBOYWNoIHRhZmVsPwpNY0RvZ2FiZXJ0IHdhbmRlbHQgbmFjaCBOb3JkZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbnBjIG9kZXIgd2F0PyAoRGllZGVyLCAyMC4gQXVnIDE5OTksIDE4OjUyOjUxKToKfiMhIHJuPVN0b2VydGkgcnQ9OTM1MTY3OTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM1MTY3OTIzCndlbm4gZHUgYXVjaCBudXIgZHVtbSBpbiBkZXIgZ2lsZGUgcnVtc3RlaHN0IHVuZCBuaXggc2Fnc3QsIGthbm4gbWFuIGRpY2gKc2Nob24gZGFtaXQgdmVyd2VjaHNlbG4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFN0YW1tdGlzY2ggTnVlcm5iZXJnID8gIChUZWRkeSwgMjAuIEF1ZyAxOTk5LCAxOTowODoxNyk6Cn4jISBybj1Sb2NodXMgcnQ9OTM1MTY4Nzc3IHJnPXRyZWZmZW4KfiMhIHRpZD05MzQ5OTExNTEKSG1wZiwga29lbm50ZSBzZWluLgoKVGVkZHksIHdpbGwgZGllIExldXRlIGJlc3NlciBuaWNodCBtZWhyIHdhcm5lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvIGVpbiB1bnNpbm4gOikgKEFzaGFuLCAyMC4gQXVnIDE5OTksIDIwOjEzOjUwKToKUGh5Z29zIGJhc3RlbHQgYW4gZWluZW0gU3ByZW5nc2F0eiBoZXJ1bS4gQkFBQUFCVU1NISEhLgpEYXMgRWluaG9ybiB0cmFidCBuYWNoLgpUcmF1bWEgZXhwbG9kaWVydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1dG9tYXRpc2NoZSBVZWJyc2V0emVyIChSb2NodXMsIDIwLiBBdWcgMTk5OSwgMjE6NDE6MjYpOgpodHRwOi8vd3d3LnN5c3RyYW5zb2Z0LmNvbS8KCkdpYnQgc28gbmV0dGUgVWViZXJzZXR6dW5nZW4gd2llCj4gSSBiZWNhbWUgdXJnZW50bHkgdGhlIGJvb2sgIiBhcHBsaWVkIGNyeXB0b2dyYXBoeS4gTG9ncywgYWxnb3JpdGhtcwo+IGFuZCBTT1VSQ0UgY29kZSBpbiBDLiIgb2YgQnJ1Y2UgU2NobmVpZXIgKElTQk46IDM4OTMxOTg1NDcpIG5lZWQuCj4gU2luY2UgaXQgaXMgY2hlYXAgaG93ZXZlciBub3QgZXZlbiwgSSBiZWNhbWUgaXQgZmlyc3QgZ2xhZGx5Cj4gY2hlY2stb3V0IGNvdW50ZXJzLiBPbmx5IHVuZm9ydHVuYXRlbHkgd2hpdGUgSSBub3Qgd2hldGhlciBhbmQKPiB3aGVyZSBpbiBBdXN0cmlhIChWaWVubmEpIGlzIHBvc3NpYmxlLiBJZiBzb21lb25lIHBvc3Nlc3NlcyB0aGUKPiBib29rIGFuZCBubyBtb3JlIG5lY2Vzc2FyaWx5LCBJIHdvdWxkIGJ1eSBpdCBhbHNvIGdsYWRseSBhdCBhIGZhaXIKPiBwcmljZS4gVGhhbmsgeW91IGZvciBub3RlcyBhbHJlYWR5IGluIGFkdmFuY2UhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZW5uIEVsZmVuIHNldWZ6ZW4gLi4uIChUYXRqYW5hLCAyMS4gQXVnIDE5OTksIDExOjU4OjEzKToKU0FORHxFIHNldWZ6dCBhdXMgdGllZnN0ZW0gRWxmZW5oZXJ6ZW4uCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTaW5ubG9zZSBEZXRhaWwgOi0oIChQZmVpZmUsIDIxLiBBdWcgMTk5OSwgMTI6NTM6MjQpOgoKRGVyIEdlaXN0IGVpbmVzIFByb2dyYW1taWVyZXJzCgp1bnQgR2Vpc3QKCkRpZXNlcyBXZXNlbiB3YXIgd29obCBtYWwgZWluIG1hZWNodGlnZXIgTWFnaWVyLiBMZWlkZXIgd3VyZGUgZXIgYmVpbSBkZWJ1Z2dlbgp2b24gZGVtIHJpZXNpZ2VuIFN0YXBlbCBzZWluZXMgYXVzZ2VkcnVja3RlbiBSZXBGaWxlcyBlcnNjaGxhZ2VuLiBJbSBNb21lbnQKc2VpbmVzIFRvZGVzIHZlcmZsdWNodGUgZXIgZGFzIE1vcmdlbmdyYXVlbiB1bmQgYmVzb25kZXJzIGRpZSBTcGllbGVyLCBkZXIKYWJlciBhdWNoIHdpcmtsaWNoIGplZGVzIERldGFpbCB1bnRlcnN1Y2hlbiB3b2xsZW4gLSB1bmQgc2VpIGVzIG5vY2ggc28Kc2lubmxvcy4gWnVtIEdsdWVjayBpc3QgZXMgU2lsdmFuYSBnZWx1bmdlbiwgaWhuIGF1ZiB3ZW5pZ2UgU3RlbGxlbiB6dQpiZXNjaHJhZW5rZW4uLi4KRXIgaXN0IGFic29sdXQgZml0LgoKTW1taCwgSWNoIG11c3MgendhciBuaWNodCBqZWRlcyBzaW5ubG9zZSBEZXRhaWwgdW50ZXJzdWNoZW4uIEFiZXIgbWVpc3RlbnMKc2luZCBkaWUgYmVpbSBmb3JzY2hlbiBkYXMgTHVzdGlnc3RlLiAoRGVyIEJlc3VjaCBiZWkgTGFycyB3YXIgZGllc21hbCBhdWNoCmFtdWVzYW50KQoKUGZlaWZlIHdpbGwgYWxsZXMgZ2VuYXUgd2lzc2VuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gd2lyZCBtYW4gU2VoZXIuLi4uIChOZXZvaywgMjEuIEF1ZyAxOTk5LCAyMDoxNjozMyk6CkdyaW1tYW4gaXN0IGdlcmFkZSBuaWNodCBkYTogSWNoIHdlcmRlIGhldXRlIFNlaGVyICpkdW1kaWR1bWRpZHVtKgoKW01vZXJkZXI6R2Vpc3QgZWluZXIgV2FsZGFtZWlzZV0gSGFldHRlbiB3aXIgZGFzIG5pY2h0IGF1c2Rpc2t1dGllcmVuIGtvZW5uZW4sCltNb2VyZGVyOkdlaXN0IGVpbmVyIFdhbGRhbWVpc2VdIEdyaW1tYW4/CgpkYXMgZGF1ZXJ0IGRhbm4gYWJlciBldHdhcyBtaXQgZGVuIEVyZmFocnVuZ3NwdW5rdGVuIGJpcyBEdSBkaWUgbm9ldGlnZSBHcmVuemUKdWViZXJzY2hyZWl0ZXN0LCBHcmltbWFuLiBNYWwgYW4gc28gd2FzIGdlZmFlaHJsaWNoZXMgd2llIE1vcm9uJ3MKU2NoYXR0ZW53ZXNlbiBnZWRhY2h0PyA6KQoKTmV2b2ssIGRlciBpbW1lciBnZXJuZSBoaWxmdCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNvIHdpcmQgbWFuIFNlaGVyLi4uLiAoR3JpbW1hbiwgMjEuIEF1ZyAxOTk5LCAyMDoxODo0MCk6Cn4jISBybj1OZXZvayBydD05MzUyNTkzOTMgcmc9c2NobWFycm4KfiMhIHRpZD05MzUyNTkzOTMKSWNoIHdhciBkb2NoIG51ciBkYWJlaSBkZW4gV2VnIHZvbSBJbWJpc3MgbmFjaCBNb3JvbiBmcmVpenVtZXR6ZWxuIDopClVuZCBpY2ggaGFicyBnZXNjaGFmZnQhCgpHcmltTWFuICwgZ2FueiBzdG9seiBhdWYgc2ljaCB1bmQgc2VpbmUgTWFjaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN1Y2h0aWVzIGhhbHQgKEdyaW1tYW4sIDIyLiBBdWcgMTk5OSwgMDI6Mjc6MTApOgoKTmFqYSAuLi4gCkdyaW1tYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmthbm5zIHNjaGxpbW1lciBrb21tZW4/IChHbm9tZSwgMjIuIEF1ZyAxOTk5LCAwNTowMzoxMik6CkxvcmVueiB3aXJkIHZvbiBHaWZ0IGhpbndlZ2dlcmFmZnQgdW5kIGtpcHB0IHVtLgpEdSBob2Vyc3QgZGllIFVociBzY2hsYWdlbjogRXMgaXN0IGpldHp0IDUgVWhyLgoKdW0gZGllc2UgemVpdCBzb2xsdGUgbWFuIG5pY2h0IG1laHIgbWV0emVsbi4uLiBBUkdMIQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBrYW5ucyBzY2hsaW1tZXIga29tbWVuPyAoVW5hc2FpLCAyMi4gQXVnIDE5OTksIDA1OjA0OjE4KToKfiMhIHJuPUdub21lIHJ0PTkzNTI5MDk5MiByZz1zY2htYXJybgp+IyEgdGlkPTkzNTI5MDk5MgpHUklOUwpUamEsIFdpZSBsYW5nZSBoYWJ0IGlociBnZW1ldHplbHQ/IDIgU3R1bmRlbj8gMz8/Pz8gd2FlbHogdW5kIGtpcHAgdW0gdm9yCkxhY2hlbioKVW5hKgorKwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGVsbHNlaGVyPyAoV2ltLCAyMi4gQXVnIDE5OTksIDIyOjI5OjIxKToKUGFyYWNlbHN1cyB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS47ClRhbW94aWZlbiBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uClBhZHJlaWMgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgpQYXJhY2Vsc3VzIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCgpPYiBlciBkYXMgZ2V3dXNzdCBoYXQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXV0b21hdGlzY2hlIFVlYnJzZXR6ZXIgKEFwb2xsb25pYSwgMjMuIEF1ZyAxOTk5LCAwOToxOTo1OSk6Cn4jISBybj1Sb2NodXMgcnQ9OTM1MTc4MDg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM1MTc4MDg2CipXYWVseiogRGFzIGlzdCBlY2h0IHp1bSBXZWd3ZXJmZW4hIDopCkFwbyogKGRlcmVuIE1vbnRhZyBtb3JnZW4gamV0enQgd2VzZW50bGljaCBmcm9laGxpY2hlciBhbmZhZW5ndCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN1Y2h0Pz8/IChCYW1idWxrbywgMjMuIEF1ZyAxOTk5LCAxMTozOToxNik6CklzdCBkYXMgU3VjaHQ/PwoKdm9tIDE1LiBKdWwgMTk5OSwgMTk6MjYgYmlzIDIyLiBKdWwgMTk5OSwgMjI6MzYsIDE3MWggMTBtaW4Kdm9tIDIzLiBKdWwgMTk5OSwgMTA6MDMgYmlzIDI0LiBKdWwgMTk5OSwgMTc6NTMsIDMxaCA1MG1pbgp2b20gMjMuIEp1bCAxOTk5LCAxMDowMyBiaXMgMjQuIEp1bCAxOTk5LCAxODo0MywgMzJoIDQwbWluCnZvbSAyNi4gSnVsIDE5OTksIDExOjA1IGJpcyAzMC4gSnVsIDE5OTksIDEyOjQ5LCA5N2ggNDRtaW4Kdm9tIDI2LiBKdWwgMTk5OSwgMTE6MDUgYmlzIDMwLiBKdWwgMTk5OSwgMTI6NTcsIDk3aCA1Mm1pbgp2b20gIDIuIEF1ZyAxOTk5LCAxMToxMiBiaXMgIDUuIEF1ZyAxOTk5LCAxNjozNSwgNzdoIDIybWluCnZvbSAgNS4gQXVnIDE5OTksIDE2OjQxIGJpcyAgNi4gQXVnIDE5OTksIDEwOjA2LCAxN2ggMjRtaW4Kdm9tICA2LiBBdWcgMTk5OSwgMTY6NTQgYmlzICA3LiBBdWcgMTk5OSwgMTY6NDYsIDIzaCA1Mm1pbgp2b20gIDYuIEF1ZyAxOTk5LCAxNjo1NCBiaXMgIDcuIEF1ZyAxOTk5LCAxNzowMywgMjRoIDhtaW4Kdm9tICA5LiBBdWcgMTk5OSwgMDk6MjggYmlzICA5LiBBdWcgMTk5OSwgMTM6NTUsIDRoIDI3bWluCnZvbSAgOS4gQXVnIDE5OTksIDA5OjI4IGJpcyAgOS4gQXVnIDE5OTksIDE0OjE0LCA0aCA0Nm1pbgp2b20gIDkuIEF1ZyAxOTk5LCAxNToxNyBiaXMgMTUuIEF1ZyAxOTk5LCAwMDoxNSwgMTI4aCA1N21pbgp2b20gIDkuIEF1ZyAxOTk5LCAxNToxNyBiaXMgMTUuIEF1ZyAxOTk5LCAwMDoxNiwgMTI4aCA1OG1pbgp2b20gMTYuIEF1ZyAxOTk5LCAwOToyNSBiaXMgMTguIEF1ZyAxOTk5LCAwMDo1OCwgMzloIDMzbWluCnZvbSAxNi4gQXVnIDE5OTksIDA5OjI1IGJpcyAxOC4gQXVnIDE5OTksIDAxOjM2LCA0MGggMTBtaW4Kdm9tIDE4LiBBdWcgMTk5OSwgMTE6MDIgYmlzIDIwLiBBdWcgMTk5OSwgMTc6MTksIDU0aCAxNm1pbgoKCgpCYW1idWxrbwouLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2FjaGVuIGdpYnRzLi4uIChXaW0sIDIzLiBBdWcgMTk5OSwgMTI6MDg6NTUpOgpbQWJlbnRldWVyOjxRdWVzdD5dIENhcHNvbmkgaGF0IGdlcmFkZSBlaW4gQWJlbnRldWVyIGJlc3RhbmRlbjogRGlhbW9uZCBDbHViIApbQWJlbnRldWVyOjxRdWVzdD5dIDwxMjowNDowOT4KW0FiZW50ZXVlcjpDYXBzb25pXSBhYmVudGV1ZXIgendhciBnZXNjaGFmZnQuLmFiZXIgaWNoIGdsYXViZSBpY2ggaGFiZSBlaW4KW0FiZW50ZXVlcjpDYXBzb25pXSBwcm9ibGVtIDwxMjowNjoyMT4KW0FiZW50ZXVlcjpKZW5hbmRyYV0gPyA8MTI6MDY6MzE+CltBYmVudGV1ZXI6Q2Fwc29uaV0gZGVyIHNjaGx1ZXNzZWwgbGllZ3QgaW0gc3BpbmQgPDEyOjA2OjQzPgpbQWJlbnRldWVyOkplbmFuZHJhXSAqd2FlbHoqIDwxMjowNzowOT4KW0FiZW50ZXVlcjpQeXJkYWNvcl0gcmVpZmUgbGVpc3R1bmcgOikgPDEyOjA3OjIxPgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFpvbWJpZXZpcnVzIChBbmF0b2wsIDIzLiBBdWcgMTk5OSwgMTQ6MTc6MDMpOgp+IyEgcm49Tm9ubmUgcnQ9OTM1Mzk5MzU5IHJnPWQudmxhbmQKfiMhIHRpZD05MzUwMDQ2NTEKQXVzZ2VyZWNobmV0IHZvbiBESVIgYXVmIGRhcyAibSIgYXVmbWVya3NhbSBnZW1hY2h0IHp1IHdlcmRlbiwgZW50YmVocnQKbmljaHQgZWluZXIgZ2V3aXNzZW4gTGFlY2hlcmxpY2hrZWl0LiBXZWl0ZXIgc28sIHdpciBhbXVlc2llcmVuIHVucyBnZXJuLgoKQW5hdG9sIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW1hbmRhIGlzIGRvb2YgKERhcmlhLCAyMy4gQXVnIDE5OTksIDE1OjUzOjE5KToKTGFzc2Ugc2NobGVpY2h0IGhlcmVpbi4KQW1hbmRhIHNhZ3Q6IEhhbGxvIExhc3NlIQpBbWFuZGEgZ3JhYmJlbHQgYW4gTGFzc2UgaGVydW0uCkFtYW5kYSBzYWd0OiBXaWUgd2FlcnMgZGVubiBtaXQgdW5zLCBLbGVpbmVyPwoKTGFzcyBkaWUgRmluZ2VyIHZvbiBtZWluZW0gS2F0ZXIsIER1IFNvZG9taXN0aW4hCkRhcmlhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2FjaGVuIGdpYnRzLi4uIChTdWJsaW1lLCAyMy4gQXVnIDE5OTksIDE2OjA2OjMyKToKfiMhIHJuPVdpbSBydD05MzU0MDI5MzUgcmc9c2NobWFycm4KfiMhIHRpZD05MzU0MDI5MzUKTmEgZGEgbWVya3QgbWFuIGRvY2ggbWFsIHdlciBFcnN0aWUgb2RlciBad2VpdGllIGlzdCwgbmljaHQgd2FociA/IT8gOykKCgpsaWViZSBncnVlc3NlClN1YmwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9oamUgOikgKEphc29ucmlnaWQsIDIzLiBBdWcgMTk5OSwgMTc6MTI6MjEpOgpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KU3VnYWFuIHJ1ZnQ6IEpBQUFBQVNTU1NTU09PT09PT09PT09PT09PT09PT09OTk5OTk5OICEhISEhISEhISEhISEKCk5hbWVuc3ZldHRlcm4gPz8KCkphc29uIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGluIGRlciBEdXNjaCA6KSAoVW5hc2FpLCAyMy4gQXVnIDE5OTksIDIwOjEzOjE4KToKUm9jaHVzIG5pcHB0IGFuIGVpbmVtIEtyaXN0YWxsZ2xhcyB1bmQgdHJpbmt0IGVpbmVuIFNjaGx1Y2sgQ2hhbXBhZ25lci4KCnNvc28sIHdhcyB3aXJkIHdvaGwgRGVpbmUgRnJhdSBDb2NhY29sYSBkYXp1IHNhZ2VuPyAqc2NobXVuemVsKgpVbmEqCisrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprd2VyIHdlaWJsaWNoIG9kZXIgd2llID8gKEZhYmlvLCAyMy4gQXVnIDE5OTksIDIxOjEzOjQ4KToKClN0b2VydGkgc2FndDoga3dlciBpbiBmcmFua2Z1cnQgdW5kIHdlaWJsaWNoClN0b2VydGkgc2FndDogdXBzClN0b2VydGkgc2FndDogZGVsIHdpbGwgbWljaCBqYSBuaWNoIGtlbm5lbmxlcm5lbgpTdHJlYXdrY2V1ciBzYWd0OiBvZGVyIGR1IGZhZWhyc3QgbWl0IGRlbiBzdGVha3MgbmFjaCBudWVybmJlcmcgOi0pClN0b2VydGkgc2FndDogbmFlaGVyCkR1IHRlaWxzdCBEZWwgbWl0OiB0amEgZGEga2FtIGRhbm4gbmllbWFuZApTdG9lcnRpIHNhZ3Q6IGFsc28gaW50aW1lcgpTdG9lcnRpIHNhZ3Q6IGFsc28gZHUgd2Vpc3Mgd2FzIGljaCBtZWluIDotKQpEdSB0ZWlsc3QgRGVsIG1pdDogU3RvZXJ0aSBzYWd0OiBkZWwgd2lsbCBtaWNoIGphIG5pY2gga2VubmVubGVybmVuCkRlbCB0ZWlsdCBEaXIgbWl0OiBzb3dhcyBhYmVyIGF1Y2ggOikpKSkgWzIxOjA1XQpTdG9lcnRpIGdyaW5zdC4KRHUgdGVpbHN0IERlbCBtaXQ6IFN0b2VydGkgc2FndDogYWxzbyBpbnRpbWVyClN0cmVhd2tjZXVyIHJ1ZnQ6IFNvbGlkYXJpdGFldCEgOi0pCkRlbCB0ZWlsdCBEaXIgbWl0OiB3YWFhYWFhaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGggWzIxOjA1XQpEZWwgdGVpbHQgRGlyIG1pdDogd2FhYWFhYWhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoIFsyMTowNV0KRGVsIHRlaWx0IERpciBtaXQ6IHdhYWFhYWFoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaCBbMjE6MDVdCkRlbCB0ZWlsdCBEaXIgbWl0OiB3YWFhYWFhaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGggWzIxOjA1XQpEZWwgdGVpbHQgRGlyIG1pdDogd2FhYWFhYWhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoIFsyMTowNV0KRGVsIHRlaWx0IERpciBtaXQ6IHdhYWFhYWFoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaCBbMjE6MDVdClN0cmVhd2tjZXVyIGdyaW5zdC4KU3RvZXJ0aSBzYWd0OiBpY2ggZmFociBtaXR0d29jaCBlcnNtYWwgbmFjaCBkcmVpZWljaCA6LSkKV2VhdGhlcndheCBhbiBhbGxlIFphdWJlcmVyOiBiaW4gaWNoIGVpZ2VudGxpY2ggZGVyIGVpbnppZ2UsIGRlcnMgZG9vZiBmaW5kZXQsCldlYXRoZXJ3YXggYW4gYWxsZSBaYXViZXJlcjogZGFzcyBtYW4gaW0gemF1YmVyZXJsYWRlbiBudXIgbm9jaCBzbyB3ZW5pZwpXZWF0aGVyd2F4IGFuIGFsbGUgWmF1YmVyZXI6IGthdWZlbiBrYW5uPwpEZWwgdGVpbHQgRGlyIG1pdDogd2FzIHp1bSBnZWllciBpcyBsb3MgbWl0IGRlbT8/Pz8/IFsyMTowNl0KU3RyZWF3a2NldXIgc2FndDogd2VycyBkYT8KRHUgdGVpbHN0IERlbCBtaXQ6IHNvbGwgaWNoIGRhcyBtYWwgcG9zdGVuID8/PwpNb250YW51cyBydWZ0OiBGcmV1bmRzY2hhZnQgTWl0dGVsZ2ViaXJnZSBIdW5zcnVlY2shIDstKQpUYXJhZ29uIGFuIGFsbGUgWmF1YmVyZXI6IG5vZQpEZWwgbmlja3QgRGlyIGF1cyBkZXIgRmVybmUgenUuClRhcmFnb24gYW4gYWxsZSBaYXViZXJlcjogaWNoIGZhbmQgZXMgYXVjaCB6aWVtbGljaCBhZXR6ZW5kClN0b2VydGkgc2FndDogbmUgc3VwZXJzdWVzc2UgdW5kICpzZXVmeioKRGVsIHRlaWx0IERpciBtaXQ6IHdlbSBlcnphZWhsdCBlciBkYXMgdm9yIGFsbGVtPyBbMjE6MDZdCltUcnZlczpBcHN1IHdpbmtmXQpTdG9lcnRpIHNhZ3Q6IGFlaG0sZHJlaWVpY2ggYmVpIG5ldS1pc2VuYnVyZyA6LSkKW1RydmVzOkFsY2luYV0gY2lhbyBBcHN1LgpEZWwgdGVpbHQgRGlyIG1pdDogYWVoIHBvc3RlIGVzIGxpZWJlciBkb2NoIG5ldC4uLiBbMjE6MDZdClN0cmVhd2tjZXVyIGdyaW5zdC4KRGVsIHRlaWx0IERpciBtaXQ6IHNvbnN0IGthbm4gaWNoIG1pciB3aWVkZXIgYmxvZWRlIHNwcnVlY2hlIGFuaG9lcmVuISBbMjE6MDddClZhbmlvbiBiZXRyaXR0IGRpZXNlIFdlbHQuCltNb2VyZGVyOkdlaXN0IGVpbmVzIEZldWVyZGFlbW9uc10gTWVyY3V0aW8gaXN0IE5JQ0hUIHp1IG1laW5lciBCZWVyZGlndW5nCltNb2VyZGVyOkdlaXN0IGVpbmVzIEZldWVyZGFlbW9uc10gZWluZ2VsYWRlbiEKU3RvZXJ0aSBzYWd0OiBkaWUgaXMgc28gc3VwZXJzdWVzcyBkaWUgbWF1cwpTdHJlYXdrY2V1ciBzYWd0OiBhaGphClN0cmVhd2tjZXVyIHNhZ3Q6IGFiZXI/ClN0cmVhd2tjZXVyIHNhZ3Q6IGp1ZW5nZXIgYWxzIDIwPyBhZWx0ZXIgYWxzIDM1PyA6LSkKW1phdWJlcmVyOkxseXN0cmF0aGVdIFRydWcgaGF0IGRpZSBHaWxkZW4tQXVmZ2FiZTogJ0RpZSBtYWdpc2NoZW4gSGFuZHNjaHVoZScKW1phdWJlcmVyOkxseXN0cmF0aGVdIGdlbG9lc3QuIApTdG9lcnRpIHNhZ3Q6IHNpZSBmYWVocnQgbW90b3JyYWQuLi5pbW1lciBhbmdzdCBoYWJlbixkYXMgaXJnZW5kd2VsY2hlIGJ1bGxlbgpTdG9lcnRpIHNhZ3Q6IGFucnVmZW4KW1phdWJlcmVyOlNvcmNlcmVyXSBncmF0cyA6KQpbWmF1YmVyZXI6U2tpcHBlcl0gZ3JhdHMKW01vZXJkZXI6R2Vpc3QgZWluZXMgZ3Jvc3NlbiBGZXVlcmRhZW1vbnNdIFdlbGNoZSBTY2htYWNoISBNZXJjdXRpbyBoYXQgbWljaApbTW9lcmRlcjpHZWlzdCBlaW5lcyBncm9zc2VuIEZldWVyZGFlbW9uc10gYmVzaWVndC4KW1phdWJlcmVyOkFzdWthXSBncmF0cwpTdG9lcnRpIHNhZ3Q6IDM0LGFiZXIgdGllcmlzY2ggc3Vlc3MsIHRyb3R6IGRhcyBzaWUgc28gYWx0IGlzCkJhcmQga29tbXQgYW4uCltaYXViZXJlcjpIaWdodF0gZ3JhdHMKW1phdWJlcmVyOlRydWddIGRhbmtlIDopCkR1IHRlaWxzdCBEZWwgbWl0OiBhZWhtIGljaCBwb3N0ZSBlcyA6KQpEdSBncmluc3QgRGVsIGF1cyBkZXIgRmVybmUgYW4uClN0cmVhd2tjZXVyIGRlbmt0ICAgLiBvIE8gKHNvIGFsdCA6LSkKQmFyZCBnZWh0IG5hY2ggTm9yZGVuLgpEdSB0ZWlsc3QgRGVsIG1pdDogb2RlciBiaXN0ZSBkYW5uIGFyZyBib2VzZSA/ClN0b2VydGkgc2FndDogamEsemllbWxpY2gKVmFuaW9uIHNhZ3Q6IGNhbHpvbmUgbnVyIG1laW5lIFdvcmtzdGF0aW9uIGdldGVzdGV0LgpTdG9lcnRpIHNhZ3Q6IDI0IHdhZXIgYmVzc2VyIDotKQpEZWwgdGVpbHQgRGlyIG1pdDogbmVpbiBiaW4gaWNoIG5pY2h0IDopIFsyMTowOF0KU3RyZWF3a2NldXIgc2FndDogZGFzIHNvbGx0ZXN0IGR1IG5pY2h0IHNvIGdhbnogbGF1dCBzYWdlbiBoaWVyIGdpYnRzIGdlbnVnClN0cmVhd2tjZXVyIHNhZ3Q6IGF1Y2ggaW4gZGVtIGFsdGVyIDotKQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBEYWkgV29uZyBMb25nc10gRGVyIEZydWVobGluZyBpbiBLdW5naG8gd3VyZGUgbGVpZGVyCltNb2VyZGVyOkdlaXN0IGVpbmVzIERhaSBXb25nIExvbmdzXSBiZWVuZGV0ISBBbGxlcyBEZWluZSBTY2h1bGQsIFNreSEKU3RvZXJ0aSBncmluc3QuCj5TdG9lcnRpIG1hZ3MgZWlnZW50bGljaCBuaWNodCBzbywgd2VubiBkaWUgbWFlZGVscyBzY2hvbiBsYXVmZW4ga29lbm5lbgpTdG9lcnRpIGdyaW5zdC4KRHUgbmltbXN0IGRpZSBaZWl0dW5nLiBTb2ZvcnQgZXJzY2hlaW50IGF1ZiB1bmVya2xhZXJsaWNoZSBXZWlzZSBlaW5lIG5ldWUuCkJsYWNraWUgd2FuZGVsdCBoZXJlaW4uClN0b2VydGkgc2FndDogaHVjaCxoaWVyIHN0ZWhlbiBqYSBub2NoIHdlbGNoZSA6LSkKQmxhY2tpZSBoYXQgamV0enQgU3R1ZmUgMiBlcnJlaWNodC4KU3RvZXJ0aSBzYWd0OiBkYXMgd2FybiBzY2hlcnogOi0pClZhbmlvbnMgQXVnZW4gbGV1Y2h0ZW4ga3VyeiBkdW5rZWxyb3QgYXVmLgpWYW5pb24gaGF0IGdlcmFkZSBkaWUgVmVyYmluZHVuZyB6dSBNb3JnZW5HcmF1ZW4gZ2VrYXBwdC4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFZhbmlvbi4KQmxhY2tpZSB3YW5kZWx0IG5hY2ggTm9yZGVuLgpTdG9lcnRpIHNhZ3Q6IG5hamEsIGJlZGVuayBtYWwsIG1pdCAzNSBzaW5kIGRpZSBtZWlzdGVuIGZyYXVlbiB1bQoKCgp1bmQgaGllciB1bnRlcmJyZWNoZW4gd2lyIGdhbnogZnJlY2ggLCBkYSBlcyBuaW1tZXIganVnZW5kZnJlaSBpc3QgOikKCkZyZWNoZGFYCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZToga3dlciB3ZWlibGljaCBvZGVyIHdpZSA/IChWZWN0b3IsIDIzLiBBdWcgMTk5OSwgMjE6NDI6MzEpOgp+IyEgcm49RmFiaW8gcnQ9OTM1NDM1NjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM1NDM1NjI4CgpGYWJpbywgZmFsc2NoZSBSdWJyaWsuIFNvd2FzIGdlaG9lcnQgaW4gcG9saXplaS5iZXNjaHdlcmRlbi4KQmluIG1hbCBhdWYgU3RvZXJ0aSBzIFN0ZWxsdW5nbmFobWUgZ2VzcGFubnQuCgpWZWN0b3IuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGt3ZXIgd2VpYmxpY2ggb2RlciB3aWUgPyAoU3RvZXJ0aSwgMjMuIEF1ZyAxOTk5LCAyMTo0NTozNyk6Cn4jISBybj1WZWN0b3IgcnQ9OTM1NDM3MzUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM1NDM1NjI4CmRhIGtvbW0gaWNoIGRvY2ggZ3JhZCBzbyBtaXIgbmljaHRzLCBkaXIgbmljaHRzIGhpZXIgcmVpbiB1bmQgZnJldWUgbWljaCBhdWYKZWluZW4gbmV0dGVuIGFiZW5kIHVuZCB3YXMgc2VoZSBpY2g/CmRhIGhhdCB3b2hsIGplbWFuZCBtZWluZW4gYWNjb3VudCBnZWhhY2t0IHVuZCBzaWNoIG1pdCBtZWluZW0gbmFtZW4gaGllcgpsYWVjaGVybGljaCBnZW1hY2h0LgpkYXMgZmluZCBpY2ggd29obCBtYWwuLi5lbXBvZXJlbmQuCndhcyBrb2VubiB3aXIgZGVubiBkYSBtYWwgdW50ZXJuZWhtZW4gZGFnZWdlbj8KYWxzbyBzbyBnZWh0IGRhcyBudSB3aXJrbGljaCBuaWNodC4KCmVpbiBlbXBvZXJ0ZXIgc3RvZXJ0aQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzoga3dlciB3ZWlibGljaCBvZGVyIHdpZSA/IChIb3VzZWhvbGRlciwgMjMuIEF1ZyAxOTk5LCAyMTo0OToyNik6Cn4jISBybj1TdG9lcnRpIHJ0PTkzNTQzNzUzNyByZz1zY2htYXJybgp+IyEgdGlkPTkzNTQzNTYyOAphYWFhYWhhaGhoaGFycnJoYXJoYXJoYWhyYXJoaHJoYXJoYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGt3ZXIgd2VpYmxpY2ggb2RlciB3aWUgPyAoVGFyYWdvbiwgMjMuIEF1ZyAxOTk5LCAyMjowMDoxOSk6Cn4jISBybj1Ib3VzZWhvbGRlciBydD05MzU0Mzc3NjYgcmc9c2NobWFycm4KfiMhIHRpZD05MzU0MzU2MjgKKnRvdGxhY2gqIE5ldHRlIGF1c3JlZGUsIGFiZXIgYXVjaCBuaWNodCBtZWhyIGRpZSBuZXVlc3RlIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGt3ZXIgd2VpYmxpY2ggb2RlciB3aWUgPyAoTW9ub3RvbmksIDI0LiBBdWcgMTk5OSwgMDA6NTE6MzUpOgp+IyEgcm49RmFiaW8gcnQ9OTM1NDM1NjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM1NDM1NjI4ClN0b2VydGkgaXN0IHZlcmxpaWhpZWVlYnQsIFN0b2VydGkgaXN0IHZlcmxpaWhpZWVlYnQhIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGt3ZXIgd2VpYmxpY2ggb2RlciB3aWUgPyAoU3RvZXJ0aSwgMjQuIEF1ZyAxOTk5LCAwMDo1NTo1Mik6Cn4jISBybj1Nb25vdG9uaSBydD05MzU0NDg2OTUgcmc9c2NobWFycm4KfiMhIHRpZD05MzU0MzU2MjgKRHUgdHJpdHRzdCBkaWUgYmVydWVobXRlIGxhbmd2ZXJnZXNzZW5lIHVuc2ljaHRiYXJlIFNjaGlsZGtyb2V0ZSB0aWVyaXNjaAp6d2lzY2hlbiBkaWUgRnVlc3NlLgpEdSBzYWdzdDogYWNoLGRlciBzdGVodCBqYSBnYXIgbmljaCBoaWVyCj4gU2FuZGllIHNhZ3Q6IHdlcj8KRHUgc2Fnc3Q6IG1vbm90b25pCj4gU3RyZWF3a2NldXIgc2FndDogc29sbCBpY2ggaWhuIGhvbGVuPyA6LSkKRHUgbmlja3N0IHp1c3RpbW1lbmQuCkR1IGdyaW5zdC4KPlN0cmVhd2tjZXVyIGtvbnplbnRpZXJ0IHNpY2gKRmlyZWhhd2sgc3RlaHQgYXVmIGVpbm1hbCBmbHVjaGVuZCBkYS4KCgp0amEsIGR1bW0gZ2VsYXVmZW4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdG9lcnRpIHdpZWRlciAuLi4gKEdyaW1tYW4sIDI0LiBBdWcgMTk5OSwgMDE6MTM6NTkpOgo+U3RvZXJ0aSBzY2hhdXQgc2ljaCBub2NobWFsIGRhcyBCaWxkIHNlaW5lciBMSWVic3RlbiBhbiB1bmQgZ2VodCBkYW5uIGltIGJldHQKU3RvZXJ0aSBzYWd0OiBodXBzLi4uLm5lIG1haWwgdm9uIGRlciBhbmRlcm4gbGllYnN0ZW4gOi0pKSkpClN0b2VydGkga2xhcHB0IGRhcyBiaWxsaWdlIEhlZnRjaGVuIHp1IHVuZCBsZWd0IGVzIHdpZWRlciBpbiBkZW4gU2NocmFuayB1bnRlbgpyZWluLgoKRWJlbiBpbiBkZXIgQWJlbnRldWVyZ2lsZGUgLi4uIHVuZCBTdG9lcnRpIGtyaWVndCBzaWUgZG9jaCBhbGxlISB3ZW5uIG51cgpuaWNodCBkaWUgSGVmdGtsYW1tZXJuIHdhZXJlbiAuLi4KR3JpbU1hbiAsIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3RvZXJ0aSB3aWVkZXIgLi4uIChTdG9lcnRpLCAyNC4gQXVnIDE5OTksIDAxOjE0OjQyKToKfiMhIHJuPUdyaW1tYW4gcnQ9OTM1NDUwMDM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM1NDUwMDM5CmljaCBtb2VjaHRlIG51ciBiZXRvbmVuLCBkYXMgZGEgZWNob3MgYmVpIHdhcmVuIQpkYXMgaGFiIGljaCBuYWVtbGljaCBuaWUgZ2VzYWd0LCB1bmQgZGFzIGlzIGtlaW5lIGF1c3JlZGUhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGltIEdsb2NrZW53YWxkIDopKSAoVW5hc2FpLCAyNC4gQXVnIDE5OTksIDAzOjA1OjI0KToKR25vbWUgcmVpdGV0IGF1ZiBlaW5lbSBQb3J0YWwgaGVyZWluLgpHbm9tZSBuaW1tdCBlaW4gUG9ydGFsIHZvbiBoaW50ZW4uCgpMaWViZXNsZWJlbiBkZXIgendlcmdlPyBPZGVyIHdpZSBkYXJmIGljaCBkYXMgdmVyc3RlaGVuPwpVbmEqIChncmluc2VuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5vcm1hbD8gKEdyaW1tYW4sIDI0LiBBdWcgMTk5OSwgMDY6NTI6MDgpOgogW2FyY2hpOlN0cm9oYWxtXSBhcmlhbmEgaXMuLC4uIG5hamEuLi4gd2llIHNvbGwgaWNoIHNhZ2VuLi4gbm9ybWFsIGhhbHQgOykKCkVzIGdpbmcgdW0gSG9jaHplaXRlbiB1bmQgc28gLi4uCgpHcmltTWFuICwgbGFjaGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJ0aWtlbCAoR3JpbW1hbiwgMjQuIEF1ZyAxOTk5LCAwNzowNDozMCk6CkhldXRlIGFiZW5kIC4uLgpTdGVsbHQgZXVjaCB2b3IsIGVzIGZpbmRlbiBzaWNoIGRyZWkgTGV1dGUgLi4uIG5lbm5lbiB3aXIgc2llIGZpa3RpdiBUcnVnLCBXb28KdW5kIFN0cm9oYWxtIC4uLgpTaWUgZmFuZ2VuIG5lIFF1ZXN0IGFuIC4uLiBuZW5uZW4gd2lyIHNpZSBmaWt0aXYgQXJjaGllcXVlc3QgLi4uCjIgTGV1dGUgaGFiZW4gYWxsZSAxMiBTdHVlY2tlLCBkZW0gZHJpdHRlbiBmZWhsdCBub2NoIGVpbnMgLi4uClVuZCBudSBrb21tdCBkZXIgQ2xvdTogRUlORSBkZXIgVGVpbG5laG1lbmRlbiBzY2hsYWVmdCBlaW4gLi4uIHNvIGFtIFJlY2huZXIKLi4uIApVbmQgendlaSBNYWVubmVyIHNpbmQgYW0gZmx1Y2hlbiBvaG5lIEVuZGUgLi4uCgpTY2hhZGUgdW0gZGllIFF1ZXN0LCB3YXJlbiBqYSBudXIga25hcHAgOCBTdHVuZGVuIG9kZXIgc28gOykKCkdyaW1NYW4gLCAgZmluZGV0IGRhcyBzbyByZWNodCBsdXN0aWcgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOb3JtYWw/IChTdHJvaGFsbSwgMjQuIEF1ZyAxOTk5LCAwNzowNjoxNCk6Cn4jISBybj1HcmltbWFuIHJ0PTkzNTQ3MDMyOCByZz1zY2htYXJybgp+IyEgdGlkPTkzNTQ3MDMyOApXb28gbXVzcyBqYSBhdWNoIG1hbCBkaWUgVm9ydGVpbGUgc2VpbmVyIGV2ZW50dWVsbGVuIFp1a3VlbmZ0aWdlbiBlcmtsYWVydApiZWtvbW1lbi4uLiA7KQoKU3Ryb2hhbG0sIHdpc3NlbmQgZ3JpbnNlbmQgdW5kIHNpY2ggc2Nob25tYWwgaW0gVm9ycmF1cyBkdWNrZW5kLi4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXJ0aWtlbCAoU3Ryb2hhbG0sIDI0LiBBdWcgMTk5OSwgMDc6MDg6MTYpOgp+IyEgcm49R3JpbW1hbiBydD05MzU0NzEwNzAgcmc9c2NobWFycm4KfiMhIHRpZD05MzU0NzEwNzAKSWNoIHdpbGwgbmVuIGdyb2Vzc2VyZW4gV2Vja2VyLi4uIG1pbmRlc3RlbnMgMTIwIGRlY2liZWwgZGF1ZXJ0b24uLi4gCgpTdHJvaGFsbSwgZ3J1bW1lbG5kZXJ3ZWlzZSBtaXQgV2Vja2VybiB1bSBzaWNoIHdlcmZlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBcnRpa2VsIChHcmlta2lkLCAyNC4gQXVnIDE5OTksIDA5OjA5OjQ5KToKfiMhIHJuPUdyaW1tYW4gcnQ9OTM1NDcxMDcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM1NDcxMDcwCk51ciBzbyBhbSBSYW5kZSA6IFNpZSBoYWJlbiBlcyBkYW5uIGRvY2ggbm9jaCBnZXNjaGFmZnQsIG1vcmdlbnMgdW0gMDkuMDAgLApuYWNoIGNhLiAxMyBTdGQgISEhCgpHcmltS2lkLCBmdWVyIGRlbiBDaGVmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZXR6ZWxtZWlzdGVyIDotKSAoVGFyYWdvbiwgMjQuIEF1ZyAxOTk5LCAwOToxMjoyNyk6CltBYmVudGV1ZXI6UHJvZ2ddIGthbm4gbWlyIGplbWFuZCBlaW5lbiBlbGZlbndhZWNodGVyIG1ldHplbG4/CltUb2Q6TGFyc10gRWluIEVsZmVud2FlY2h0ZXIgaGF0IGdlcmFkZSBQcm9nZyB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWlza2xhIDotKSAoTm92YXN0b3JtLCAyNC4gQXVnIDE5OTksIDEwOjE1OjI3KToKUHJ5ZGUgcnVmdDogRXMga2FubiBudXIgZWluZSBnZWJlbiEKUmlrdXMgcnVmdDogTUlDSAoKICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCBpbSBHbG9ja2Vud2FsZCA6KSkgKEFwb2xsb25pYSwgMjQuIEF1ZyAxOTk5LCAxMDoyMDo0Mik6Cn4jISBybj1VbmFzYWkgcnQ9OTM1NDU2NzI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM1NDU2NzI0CipXYWVseiogV2FzIGVyd2FydGVzdCBEdSB2b24gamVtYW5kZW0sIGRlciBtaXQgZGVtIEhJTlRFUk4genVlcnN0IGlyZ2VuZHdvCnJlaW5nZWZsb2dlbiBrb21tdCwgbWVpbiBTY2h3ZXN0ZXJoZXJ6Pz8/IDopCkFwbyogKGRhZW1saWNoIGdyaW5zZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2VuYXUgKFZlY3RvciwgMjQuIEF1ZyAxOTk5LCAyMjowNzowNyk6CgpbQWxsZ2VtZWluOlN0cmVhd2tjZXVyXSB3YXR0ZW4gbml4IGluIHplaXR1bms/CltBbGxnZW1laW46U3RvZXJ0aV0gd2lyIGtvZW5udGVuIGVpbiBnZXNwcmFlY2ggYmVnaW5uZW4gOi0pCltBbGxnZW1laW46U3RvZXJ0aV0gZGFubiBzdGVodCBnbGVpY2ggd2FzIGRyaW4gLl8pCltBbGxnZW1laW46VGFyYWdvbl0gYmxhaCBibGFoIGJsYWggYmxhaApbQWxsZ2VtZWluOkNpcmRhbl0gQWNoIG5lZSwgZGFzIGFydGV0IGphIGluIEtvbW11bmlrYXRpb24gYXVzCgoKZ2VuYXUuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcmF1ZW4gdW5kIEdlbGQgKE15dGhyYW4sIDI0LiBBdWcgMTk5OSwgMjI6MDc6NDEpOgpRdWFsbWkgZ2lidCAxMDAwMCBNdWVuemVuIGFuIEJsYWNrbGFkeS4KQmxhY2tsYWR5IGJlZGFua3Qgc2ljaCBiZWkgUXVhbG1pLgpCbGFja2xhZHkgZnJldXQgc2ljaC4KQmxhY2tsYWR5IGJldHJpdHQgZGVuIFdldHRwYWxhc3QgaW0gU3VlZGVuLgoKSmFqYS4ua2F1bSBnaWJ0IG1hbiBGcmF1ZW4gR2VsZC4uLgpNeXRocmFuIGhhZWx0IHNlaW5lIEtvbGhlIGxpZWJlciBiZWlzYW1tZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcmFjaGZlaGxlcj8gKFN0cm9oYWxtLCAyNS4gQXVnIDE5OTksIDAwOjU5OjEwKToKTmV1bGljaCBuYWNoIGVpbmVtIGtsZWluZW4gVGVjaHRlbG1lY2h0ZWwgbWl0IFZhbmdhcmQuLi4gCgpWZWN0b3Igc2FndDogaXNjaCBsbGxsYXNjaHQgZG9zY2gganJhZCBlaCB1ZWJhIGFsbGxsbGxsbGVzClZlY3RvciBzYWd0OiBpaHIgc2NoZWlkIHNjaGlzY2hhIGRpc2NodCBvZGEgYmVraWZmdApWZWN0b3Igc2FndDogd2V0dGVuIGlzY2gga29lbm50IHNjaGFqZW4gd2FzY2ggaXNjaCB3aWxsbGxsbGxsLCB1bmQgaWhyClZlY3RvciBzYWd0OiB3YWVsbGxsc2NodCBld3VzY2g/ClZlY3RvciBzYWd0OiAnbSwgaWhyICdhYnQgZGEgc2NoaXNjaGEgZWluZW4gdHJpamphLi4gaW1tYSB3ZW5uIGtvbW10IHZlY3RvcgpWZWN0b3Igc2FndDogc2NoYWp0OioKVmVjdG9yIHNhZ3Q6IHNjaGVpZCBpaHIgamVtZWluClZlY3RvciBzYWd0OiBzY2hvd2FzClZlY3RvciBzYWd0OiBvayBkYW5uIHdhZCBpc2Noc2NoIHdlaW5tYWxsbGwgbnVyIG5vc2NoIGR1bW1lc2Noc2NoIHNjaGV1aiByZWRlbgpWZWN0b3Igc2FndDogbmFqYSwgYmVpIGFuYWNyaW9uICdhYm4gd2lyIGphIGF1c2NoIHZpaWllbGxsbCBzY2h1IGxsbGxhc2NoZW4KVmVjdG9yIHNhZ3Q6IGplaGFidApWZWN0b3Igc2FndDogdGVzY2h0ClZlY3RvciBzYWd0OiBuZWluClZlY3RvciBzYWd0OiBhYmEgYmVpIHZham5hcmQgJ2FiIGlzY2ggaXJyaXRpYWUgamVsbGxsYW50OikpClZlY3RvciBzYWd0OiBtYWppc2NodGFzY2hwZWxsbGxsbGxsClZlY3RvciBzYWd0OiB3bz8KVmVjdG9yIHNhZ3Q6IGpvLCBkYSBhbGxsbGxsbGxlIHJvYmVuIGFtIHNjaGVsbGxsYmVuIHRhaiByZXNjaGV0ZW4sIHdhYXNjaApWZWN0b3Igc2FndDogc2NoaW5udm9sbGxsbGxsbDopClZlY3RvciBzYWd0OiBuaXNjaHQgbGxsbGFzY2hlbgpWZWN0b3Igc2FndDogdW5kIHdlaGUgaWhyIHBvc2NodGVkIGRhc2NoOikKVmVjdG9yIHNhZ3Q6IGJpbiBhdXNjaCBrZWluIHNjaHd1bGxsbGEgZWxsbGxmIAoKSG1tLi4uIFBhcmFjZWxzdXMgc29sbHRlIG1laHIgTW9uc3RlciBtaXQgZ2ViaXNzdmVybmljaHRlciBwcm9nZ2VuIDopKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVXBzYS4uIChTdHJvaGFsbSwgMjUuIEF1ZyAxOTk5LCAwMTowMDo1NCk6CkFlaG0uLi4gVmFnbmFyZCBoZWlzc3QgZGVyIG5hdHVlcmxpY2guLiA7KQoKU3Ryb2hhbG0sIGltbWVyIG5vY2ggd2FlbHplbmQuLi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnB1biBpbnRlbmRldCA/IChNdWFkaWIsIDI1LiBBdWcgMTk5OSwgMTM6MzA6MzIpOgpCb2luZyBzYWd0OiBpc3QgamEgd2llZGVyIG1hbCB0eXBvaXNjaAoKbXVhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FhYWFhYWFhYWggKEV0aGF2YXIsIDI1LiBBdWcgMTk5OSwgMTY6NDc6NTYpOgplYmVuIGluIGRlciBLbGVydXNnaWxkZSAuLi4KClBhZHJlaWMgcnVmdDogNApQYWRyZWljIHJ1ZnQ6IDMKUGFkcmVpYyBydWZ0OiAyClBhZHJlaWMgcnVmdDogMQpTdXBlcnd1cnN0IHN0YXBmdCBoZXJlaW4uCgoKT0ggTUVJTiBHT1RUICEhIQoKRXRoYXZhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKendlcmdlIGhhYmVuIGdyb3NzZSBsYXVzY2hlciAoVHJ1ZywgMjUuIEF1ZyAxOTk5LCAxODo1NDo0Myk6ClN0cm9oYWxtIHNhZ3Q6IG1pdCBrYXJpYyBydW1sYWVzdGVybiBpcyBpbW1lciB3aXR6aWcgOikKRHUgc2NobXVuemVsc3QuClN0cm9oYWxtIGRlbmt0ICAgLiBvIE8gKHp3ZXJnZSBzaW5kIGRvb2YgdW5kIHN0aW5rZW4gZXJiYWVybWxpY2ggOikpCkthcmljcyBLYXV0c2NodWtoYW1tZXIgZmxpZWd0IGhlcmVpbiwgdHJpZmZ0IFN0cm9oYWxtIG51ciBtYWwgc28gdW5kCnNwcmluZ3Qgd2llZGVyIGRhdm9uLgpQRkxVTlosIEthcmljcyBLYXV0c2NodWtoYW1tZXIgZmxpZWd0IGhlcmVpbiwgYmVoYWVtbWVydCBEaWNoIG51ciBtYWwgc28KdW5kIGh1ZXBmdCB3aWVkZXIgZGF2b24uClN0cm9oYWxtIHJvdGZsdC4KU3Ryb2hhbG0gd2FlbHp0IHNpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCkR1IHNhZ3N0OiBnZW5hdSByaWNodGlnClN0cm9oYWxtIHNhZ3Q6IGFscyBvYiBlcnMgZ2Vob2VydCBoYWV0dGUgOikKCipsYWNoKgpUcnVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFlcmNoZW4gOy0pIChHcmltbWJvcm4sIDI1LiBBdWcgMTk5OSwgMTg6NTk6MjIpOgp+IyEgb249QXBzdSBvdD05MzU1NzAxMjMgb2c9d2l0emUKfiMhIHJuPUxpYXJhIHJ0PTkzNTU0NTk4MyByZz13aXR6ZQp+IyEgdGlkPTkzNTU0NTk4MwoqV0FBQUFBRUVFRUVFRUVFTFoqIDopKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFydGlrZWwgKEx1ZywgMjYuIEF1ZyAxOTk5LCAwMToxOToyOCk6Cn4jISBybj1HcmltbWFuIHJ0PTkzNTQ3MTA3MCByZz1zY2htYXJybgp+IyEgdGlkPTkzNTQ3MTA3MApDb29sLgpMdWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHTVJQRiA6KSAoQW5hdG9sLCAyNi4gQXVnIDE5OTksIDA5OjQyOjQ0KToKTmFpcm9sZiB0ZWlsdCBEaXIgbWl0OiBtdXNzIHdlZyApCk5haXJvbGYgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCj4gcndpbmtlIG5hcmlvbGYKV2lua2Ugd2VtIHp1PwpOYWlyb2xmICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCj4gcndpbmtlIG5hcmlvbGYKV2lua2Ugd2VtIHp1PwpOYWlyb2xmICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKLi4uIGphIHdpbGwgZGVyIG1pY2ggdmVyc2NoYXVrZWxuLi4uPyA6bykKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHTVJQRiA6KSAoU2Nob2tvLCAyNi4gQXVnIDE5OTksIDA5OjQzOjM0KToKfiMhIHJuPUFuYXRvbCBydD05MzU2NTMzNjQgcmc9c2NobWFycm4KfiMhIHRpZD05MzU2NTMzNjQKCkljaCBiaXR0ZSBEaWNoLCBBbmF0b2wsIHd1ZXJkZSBESUNIIGVpbmVyIHZlcnNjaGF1a2VsbiB3b2xsZW4/CgoKU2Nob2tvIChiaWVyZXJuc3QpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT3BhLVdpdHogKEdyaW1tYm9ybiwgMjYuIEF1ZyAxOTk5LCAxMzozNzoxNCk6Cn4jISBvbj1Ib3VzZWhvbGRlciBvdD05MzU2NjcyODQgb2c9d2l0emUKfiMhIHJuPURpZWRlciBydD05MzU2NjYwNjIgcmc9d2l0emUKfiMhIHRpZD05MzU2NjYwNjIKaG0gdW5kIGFlaG5saWNoa2VpdGVuIHp1IHNjaG9uIGdlcG9zdGV0ZW4gd2l0emVuIHdvaGwgYXVjaCBvZGVyID8/Pz8KaGFyaGFyaGFocmhhcmhyYWhhcgoobmFqYSBzZW5pbGl0YWV0IGhhbHQpCkhICgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR01SUEYgOikgKEdyaW1tYm9ybiwgMjYuIEF1ZyAxOTk5LCAxMzo0NToyOCk6Cn4jISBybj1BbmF0b2wgcnQ9OTM1NjUzMzY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM1NjUzMzY0CldhcyBrYW5uICJOYXJpb2xmIiBkYXp1IGRhc3MgRHUgbmljaHQgdGlwcGVuIGthbm5zdD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV3YmllLSBzZWhlciAoTmV2b2ssIDI2LiBBdWcgMTk5OSwgMTg6MDE6NDQpOgpHcmltbWFuIGJldHRlbHQgCkdyaW1tYW4gdGVpbHQgRGlyIG1pdDogaXN0IG51ciBiaXMgaWNoIG1laW4gWmV1Z3MgZ2Vob2x0IGhhYmUKRHUgZ2lic3QgNTAwMCBNdWVuemVuIGFuIEdyaW1tYW4uCkdyaW1tYW4gc2FndDogYmlzIGdsZWljaAoKR3JpbW1hbiBnZWh0IGF1cyBkZW0gTGFkZW4gdW5kIG1ldHplbHQgZHVtbWUgRmFtaWxpZW5vYmVyaGFldXB0ZXIKCgotIEtlaW5lIDEwIFNla3VuZGVuIHNwYWV0ZXIuLi4gIC0KCiBbVG9kOkxhcnNdIEVpbiBPcmsgaGF0IGdlcmFkZSBHcmltbWFuIHVtZ2VicmFjaHQuCltCZWlsZWlkOkdyaW1raWRdIG51IHJlaWNodHMgYWJlciA6KAogW0JlaWxlaWQ6R3JpbWtpZF0gZmFsc2NoIHRlbGVwb3J0aWVydCAuLi4KCgpkYSBmcmFndCBtYW4gc2ljaCB3YXMgZGEgc28gc2Nod2VyIHNlaW4ga2FubiB2b20gdGlnZXIgYXVzIHp1bSBJbWJpc3MgenUKa29tbWVuIDspCgpOZXZvayBkZXIgYXVjaCBnZXJuZSBvZnQgZmFsc2NoIHRlbGVwb3J0aWVydCBpc3QsIGdsdWVja2xpY2hlcndlaXNlIGFiZXIgbmllCmluIGRlciBQYXJhd2VsdCBmYWxzY2ggYWJnZWJvZ2VuIGlzLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogU3RydXZ2ZXJ0ZWlkaWd1bmcgKEFuYXRvbCwgMjYuIEF1ZyAxOTk5LCAxOTo1MTowNyk6Cn4jISBybj1BcmsgcnQ9OTM1Njg3Nzg2IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTkzNTEzMTA4OQpNaXQgYXJrLWFuZW4gTWFlY2h0ZW4ga2VubnQgc2ljaCBBcmsgbmF0dWVybGljaCBhdXMuCgpBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogU3RydXZ2ZXJ0ZWlkaWd1bmcgKE5vdmFzdG9ybSwgMjYuIEF1ZyAxOTk5LCAxOTo1MTozMyk6Cn4jISBybj1BbmF0b2wgcnQ9OTM1Njg5ODY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM1MTMxMDg5ClZlcnN0ZWggaWNoIG5pY2h0LiA6LSgKCiAgTm92YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFN0cnV2dmVydGVpZGlndW5nIChBbmF0b2wsIDI2LiBBdWcgMTk5OSwgMTk6NTE6NTcpOgp+IyEgcm49Tm92YXN0b3JtIHJ0PTkzNTY4OTg5MyByZz1zY2htYXJybgp+IyEgdGlkPTkzNTEzMTA4OQpLYWVtcGZlci4uLiBhbGxlcyBrbGFyLgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFN0cnV2dmVydGVpZGlndW5nIChOb3Zhc3Rvcm0sIDI2LiBBdWcgMTk5OSwgMTk6NTM6MDgpOgp+IyEgcm49QW5hdG9sIHJ0PTkzNTY4OTkxNyByZz1zY2htYXJybgp+IyEgdGlkPTkzNTEzMTA4OQogR2VuYXUsIGFsbGUgYWJ3ZXJ0ZW4hIAogQWVoLi4uIE1PTUVOVCEKRXJrbGFlcnN0IGR1IG1pciBqZXR6dCBkYXMgbWl0IGRlbiBNYWVjaHRlbiB1bmQgdmVyc3RlaGVuIHVuZCBzbz8KICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogU3RydXZ2ZXJ0ZWlkaWd1bmcgKEFuYXRvbCwgMjYuIEF1ZyAxOTk5LCAxOTo1NDowNik6Cn4jISBybj1Ob3Zhc3Rvcm0gcnQ9OTM1Njg5OTg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM1MTMxMDg5Ck5pbW0gZGFzIHN0dW1wZmUgRW5kZSBkZXMgU2Nod2VydHMgaW4gZGllIEhhZW5kZS4KClZlcnN0YW5kZW4/CgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogU3RydXZ2ZXJ0ZWlkaWd1bmcgKEFuYWNyaW9uLCAyNi4gQXVnIDE5OTksIDIwOjAxOjEwKToKfiMhIHJuPUFuYXRvbCBydD05MzU2OTAwNDYgcmc9c2NobWFycm4KfiMhIHRpZD05MzUxMzEwODkKRXMgc29sbCBLYWVtcGZlciBnZWJlbiwgZGllIGVyc3QgbWl0IGRlbSBTdHVtcGZlbiBFbmRlIHNvIHJpY2h0aWcgcHJ1ZWdlbG4Ka29lbm5lbiA7KQoKQW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBTdHJ1dnZlcnRlaWRpZ3VuZyAoQW5hdG9sLCAyNi4gQXVnIDE5OTksIDIwOjA1OjU4KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTkzNTY5MDQ3MCByZz1zY2htYXJybgp+IyEgdGlkPTkzNTEzMTA4OQpXZW5uIHNpZSBkYXMgU2Nod2VydCBkYXp1IGFuIGRlciBLbGluZ2UgYW5mYXNzZW4sIHNpbmQgc2llIGVudHdlZGVyCnN0b2hibG9bZW5dZCBvZGVyIGJlbnV0emVuIGRlbiBTY2hsZWlmc3RlaW4gbmljaHQgd2lya2xpY2ggcmljaHRpZy4gOikKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBTdHJ1dnZlcnRlaWRpZ3VuZyAoQXJrLCAyNi4gQXVnIDE5OTksIDIwOjA3OjI2KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTkzNTY5MDQ3MCByZz1zY2htYXJybgp+IyEgdGlkPTkzNTEzMTA4OQpLT0VOTlRFTiBXSVIgVU5TIEpFVFpUIFdJRURFUiBBVUYgREFTIFdFU0VOVExJQ0hFIERJRVNFUyBUSFJFQURTCkJFU0NIUkFFTktFTj8/PyBERVIgTkVVRU4gRkVJTkRTQ0hBRlQgWldJU0NIRU4gQklFUlZFUlNDSFVFVFRFUk4gVU5ECktBTVBGS1VFTlNUTEVSTiEhISBTT05TVCBNQUNIVCBEQVMgR0FSIEtFSU5FTiBTUEFTUyBNRUhSLiBXRUlTUyBFSCBOSUNIVCwKV09IRVIgRElFIERPT0ZFTiBLQUVNUEZFUiwgWkFVQkVSRVIsIENIQU9URU4gVU5EIEtMRVJJS0VSIElNTUVSIERJRSBLUkFGVCBGVUVSCk5FVUUgU0NIV0VJTkVSRUlFTiBORUhNRU4sIE1JUiBHRUhUIEpFREVORkFMTFMgU0NIT04gSkVUWlQgRElFIFBVU1RFIEFVUy4KTE9FU0NIVCBFVUNIIEFMTEUsIExPUyEhIQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBTdHJ1dnZlcnRlaWRpZ3VuZyAoTm92YXN0b3JtLCAyNi4gQXVnIDE5OTksIDIwOjEwOjA3KToKfiMhIHJuPUFyayBydD05MzU2OTA4NDYgcmc9c2NobWFycm4KfiMhIHRpZD05MzUxMzEwODkKU28sIFNjaHdlcnQgYW0gc3R1bXBmZW4gRW5kZSBlcmdyaWZmZW4uCkpldHp0IEFyayBuYWNoIFZlcnN0YWVuZG5pcyBmcmFnZW4/ClVuZCB1ZWJlcmhhdXB0LCB3byBibGVpYnQgZGFzIGFya2FuZT8KICBOb3ZhLCB2ZXJ6d2VpZmVsdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFN0cnV2dmVydGVpZGlndW5nIChQYXJhY2Vsc3VzLCAyNi4gQXVnIDE5OTksIDIxOjI1OjUwKToKfiMhIHJuPU5vdmFzdG9ybSBydD05MzU2OTEwMDcgcmc9c2NobWFycm4KfiMhIHRpZD05MzUxMzEwODkKVW5kIHdhcyBpc3QgbWl0IGRlbiBhcmstbG9zZW4gT3BmZXJuPwoKUGFyYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBTdHJ1dnZlcnRlaWRpZ3VuZyAoQXJrLCAyNi4gQXVnIDE5OTksIDIxOjI5OjIyKToKfiMhIHJuPVBhcmFjZWxzdXMgcnQ9OTM1Njk1NTUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM1MTMxMDg5CkRpZXNlciBUaHJlYWQga2FubiBlaW5lbSBnYW56IGFyRyBhdWYgZGVuIFdlY2tlciBnZWhlbiwgd2FzPyA6KQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndlbm4gS2FyaWMgc2F1ZXIgaXNzLi4uIChNYWdlbmJyb3QsIDI2LiBBdWcgMTk5OSwgMjM6MDQ6MjIpOgoKIFtNb2VyZGVyOkdlaXN0IGVpbmVzIFNpdmFrIERyYWtvbmllcnNdIEhpbGZlISBEaWViZSEgTW9lcmRlciEKSGFsc2Fic2NobmVpZGVyIQogW01vZXJkZXI6R2Vpc3QgZWluZXMgU2l2YWsgRHJha29uaWVyc10gS2FyaWMhCiBbTW9lcmRlcjpLYXJpY10gRElFIElOIFBBSU4KRWluIGVudHNldHpsaWNoZXIgU2NocmVpIGhhbGx0IHZvbSBGcmllZGhvZiBoZXJ1ZWJlci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogU3RydXZ2ZXJ0ZWlkaWd1bmcgKEJvaW5nLCAyNi4gQXVnIDE5OTksIDIzOjU0OjAyKToKfiMhIHJuPUFyayBydD05MzU2OTA4NDYgcmc9c2NobWFycm4KfiMhIHRpZD05MzUxMzEwODkKQXJrLCB3aWVzbyBzb2xsdGVuIGRpZSBLYWVtcGZlciBlaW5lIEZlaW5kc2NoYWZ0IG1pdCBkZW4gQmllcnNjaHVldHRsZXJuCmFuZmFuZ2VuLCBkYXMgbXVzc3QgRHUgbWlyIGVya2xhZXJlbi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFN0cnV2dmVydGVpZGlndW5nIChNdWFkaWIsIDI3LiBBdWcgMTk5OSwgMDA6MzA6MTApOgp+IyEgcm49Qm9pbmcgcnQ9OTM1NzA0NDQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM1MTMxMDg5CmVyIG1laW50IGRhcyB3b2hsIGVoIG51ciBzYXJrYXN0aXNjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS25hcHAsIGFiZXIgZGFuZWJlbi4gKFF1aWNrLCAyNy4gQXVnIDE5OTksIDA0OjM5OjM0KToKCkR1IHRlaWxzdCBLYXJpYyBtaXQ6IHJlc2V0dGUgbWlyIGxpZWJlciBkZW4gaW5zZWt0ZW5nZWlzdCwgREFOTiBiaW4gaWNoCkR1IHRlaWxzdCBLYXJpYyBtaXQ6IGJlZWluZHJ1Y2t0IDspCkthcmljIHJlc2V0ZXQgZGVuIEluc2VrdGVuZ2Vpc3QgYXVzIGRlciBGZXJuZS4KS2FyaWMgdGVpbHQgRGlyIG1pdDogaGF0cyBnZWtsYXBwdD8KRHUgdGVpbHN0IEthcmljIG1pdDogKnRhcHAqICp0YXBwKgpFaW4gd2FiZXJuZGVzIEdlYmlsZGUgZXJzY2hlaW50IHVycGxvZXR6bGljaCB2b3IgRGlyLgpEdSBiZWZpbmRlc3QgRGljaCBpbiBlaW5lbSBkZXIgR2Flc3RlemltbWVyIGRlciBIZXJiZXJnZS4gRGllIEVpbnJpY2h0dW5nIGlzdAplaW4gVHJ1ZW1tZXJmZWxkLiBEdSBlcmtlbm5zdCBkaWUgVWViZXJyZXN0ZSBkZXMgVGlzY2hlcyB1bmQgZGVzIEJldHRlcyBpbgplaW5lciBFY2tlIGRlcyBaaW1tZXJzLiBMZWRpZ2xpY2ggZWluZSBUcnVoZSBzY2hlaW50IGRpZSBaZXJzdG9lcnVuZwp1ZWJlcnN0YW5kZW4genUgaGFiZW4uIERlciBSYXVtIGlzdCB2b24gZWluZW0gZWtlbGhhZnRlbSBHZXN0YW5rIGVyZnVlbGx0LgplbGxib2dlbnNjaGxhZyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZGVuLgpFaW4gV2FuZGxlci4KRWluIGVpc2VybmVyIFNjaGx1ZXNzZWwuCkVpbiBJbnNla3RlbnBhbnplci4KRWluIEluc2VrdGVuc2Nod2VydC4KRWluZSBncm9zc2UgVHJ1aGUgKGdlc2NobG9zc2VuKS4KRHUgdGVpbHN0IEthcmljIG1pdDogZmFsc2NoZXMgbW9uc3RlcgoKUXVpY2sgZGVua3QgLiBvIE8gKEFsc28gREFTIG11c3MgZXIgbm9jaCB1ZWJlbi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS25hcHAsIGFiZXIgZGFuZWJlbi4gKEthcmljLCAyNy4gQXVnIDE5OTksIDA0OjQwOjI4KToKfiMhIHJuPVF1aWNrIHJ0PTkzNTcyMTU3NCByZz1zY2htYXJybgp+IyEgdGlkPTkzNTcyMTU3NApuYWphLi4gaWNoIHN0cmVuZyBtaWNoIGJlaW0gbmFlY2hzdGVuIG1hbCBtZWhyIGFuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogU3RydXZ2ZXJ0ZWlkaWd1bmcgKEhvdXNlaG9sZGVyLCAyNy4gQXVnIDE5OTksIDEwOjM4OjA3KToKfiMhIHJuPUFyayBydD05MzU2OTA4NDYgcmc9c2NobWFycm4KfiMhIHRpZD05MzUxMzEwODkKd2FzIGludGVyZXNzaWVydCBtaWNoIGRpZXNlcyBrb21pc2NoZSB2b2xrIHdhcyBzaWNoIGF1ZiBkaWVzZXIgYmVzY2hldWVydGVuCmluc2VsIGhlbW11bmdzbG9zIGRlbSBhbGtvaG9saXNtdXMgaGluZ2lidCA/IGljaCBhbHMga2FyYXRla2Egc3RlaGUgZGEgZWluZmFjaApkYXJ1ZWJlciAuLi4gc29sYW5nZSBtaWNoIG5pZW1hbmQgYmVpbSBpZGxeXV5dbWVkaXRpZXJlbiBzdG9lcnQgaXMgbWlyIGFsbGVzCmVnYWwgOi0pCkhICgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbGxlcyBrbGFyIChIb2JvLCAyNy4gQXVnIDE5OTksIDEzOjQ1OjAyKToKRHUgc2Fnc3Q6IGR1IGJpc3Qgc2NoaXpvLCBtdWFkaWIhCkR1IGdyaW5zdC4KTXVhZGliIGdyaW5zdC4KTXVhZGliIG5pY2t0IHp1c3RpbW1lbmQuCkRpcnR5IEhhcnJ5IE11YWRpYiBzYWd0OiBuZQpEaXJ0eSBIYXJyeSBNdWFkaWIgc2FndDogZG9jaApEaXJ0eSBIYXJyeSBNdWFkaWIgc2FndDogc2VpIHJ1aGlnCkRpcnR5IEhhcnJ5IE11YWRpYiBzYWd0OiBhY2h0ZXQgZ2FyIG5pY2h0IGRhcmF1ZiB3YXMgaWNoIHNhZ2UKQ2hhb3Nsb3JkIHNhZ3Q6IGtvZW5uZW4gd2lyCk11YWRpYiBkZW5rdCAgIC4gbyBPICh3YXMgc29sbCBkYXMpCk11YWRpYiBkZW5rdCAgIC4gbyBPIChkYXMgd2FyIG5pY2h0IGFiZ2VzcHJvY2hlbikKRHUgc2Fnc3Q6IHR1biB3aXIgZWggbmljaHQgOikKTXVhZGliIGRlbmt0ICAgLiBvIE8gKGhhYiBkaWNoIG5pY2h0IHNvKQpNdWFkaWIgZGVua3QgICAuIG8gTyAoc2NobmF1emUpCkNoYW9zbG9yZCBnYWVobnQuCk11YWRpYiBrYXN0ZWl0IHNpY2ggc2VsYnN0IG1pdCBlaW5lbSBLYXV0c2NodWtoYW1tZXIuClJhcmRpYW4gZGVua3QgICAuIG8gTyAoSG0uLi4pCk11YWRpYiBkZW5rdCAgIC4gbyBPIChkZXBwKQpNdWFkaWIgZ3JpbnN0IGhhcm1sb3MuClJhcmRpYW4ga3JhdHp0IHNpY2ggYW0gS29wcC4KQ2hhb3Nsb3JkIHRpcHB0IG1pdCBkZW0gRnVzcyBhdWYgZGVtIEJvZGVuLgpEaXJ0eSBIYXJyeSBNdWFkaWIgc2FndDoga2VpbmUgc29yZ2UgcmFyZGlhbiBpY2ggYmluIG5pY2ggd2lya2xpY2ggc28KUmFyZGlhbiBmcmFndCBNdWFkaWI6IFdpZT8KUmFyZGlhbiBncmluc3QuCkRpcnR5IEhhcnJ5IE11YWRpYiBzYWd0OiBiZXNjaGV1ZXJ0IGtyYW5rIHVuZCB3YWhuc2lubmlnCkRpcnR5IEhhcnJ5IE11YWRpYiBzYWd0OiBkYXMgaXMgc2Nob2VuCkRpcnR5IEhhcnJ5IE11YWRpYiBzYWd0OiBkYXNzIHNpZSBkYXMgbmV0dCBmaW5kZXQKTXVhZGliIGdyaW5zdC4KRGlydHkgSGFycnkgTXVhZGliIHNhZ3Q6IHVtcGZzCkRpcnR5IEhhcnJ5IE11YWRpYiBzYWd0OiBuYWhlIGRyYW4KUmFyZGlhbiBzYWd0OiBhZWhtLCBzaWUgaXN0biBlcgpEaXJ0eSBIYXJyeSBNdWFkaWIgc2FndDogb2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBtYW5jaGUgTGV1dGUgZnVlciBTb3JnZW4gaGFiZW4uLi4gKFpvb2ssIDI3LiBBdWcgMTk5OSwgMTU6Mjg6NTQpOgpWb3JnZXNjaGljaHRlOiBOYSBqYSwgd2VyJ3MgbWl0YmVrb21tZW4gaGF0LCB3ZWlzcyB3b3J1bSBlcyBnZWh0LApmdWVyIGRlbiBSZXN0IHJlaWNodCwgZGFzcyBkYSBtYWwgZWluICJUc3VuYW1pIHp3aW5ndCBEaWNoIHp1Ogpnb3RvIC9yb29tL2phaWwiIHdhci4uLi4uCgpUc3VuYW1pIHp3aW5ndCBEaWNoIHp1OiA6a3JpZWNodCB2b3IgZGVtIGdyb3NzZW4gVHN1bmFtaSBpbSBTdGF1Yi4uClpvb2sga3JpZWNodCB2b3IgZGVtIGdyb3NzZW4gVHN1bmFtaSBpbSBTdGF1Yi4KVHN1bmFtaSB6d2luZ3QgRGljaCB6dTogOmtyaWVjaHQgdm9yIGRlbSBncm9zc2VuIFRzdW5hbWkgaW0gU3RhdWIuClRzdW5hbWkgZnJldXQgc2ljaC4KVHN1bmFtaSBzYWd0OiBkYW5rZSA6KQpUc3VuYW1pIHp3aW5ndCBEaWNoIHp1OiA6cHV0enQgVHN1bmFtaSBkaWUgU2NodWhlLi4KWm9vayBwdXR6dCBUc3VuYW1pIGRpZSBTY2h1aGUuClRzdW5hbWkgendpbmd0IERpY2ggenU6IDpwdXR6dCBUc3VuYW1pIGRpZSBTY2h1aGUuClRzdW5hbWkgZ3JpbnN0LgpUc3VuYW1pIHNhZ3Q6IGZlaW46KQpUc3VuYW1pIHNhZ3Q6IGpldHp0IHNpbmQgc2llIHdpZWRlciBzYXViZXIgOikKW0FsbGdlbWVpbjpab29raSBtZXJrdCBzaWNoIGRhcyBhbGxlcy5dClRzdW5hbWkgendpbmd0IERpY2ggenU6IDp2ZXJuZWlndCBzaWNoIHRpZWYgdm9yIFRzdW5hbWkuLgpab29rIHZlcm5laWd0IHNpY2ggdGllZiB2b3IgVHN1bmFtaS4KVHN1bmFtaSB6d2luZ3QgRGljaCB6dTogOnZlcm5laWd0IHNpY2ggdGllZiB2b3IgVHN1bmFtaS4KVHN1bmFtaSB6d2luZ3QgRGljaCB6dTogLWE6aXN0IGtsZWluIHVuZCBtaWNrcmlnIGltIFZlcmdsZWljaCB6dW0gZ3Jvc3NlbiAKVHN1bmFtaS1pc3QtbGllYi11bmQtbmV0dC4KW0FsbGdlbWVpbjpab29rIGlzdCBrbGVpbiB1bmQgbWlja3JpZyBpbSBWZXJnbGVpY2ggenVtIGdyb3NzZW4KICAgICAgICAgICBUc3VuYW1pLWlzdC1saWViLXVuZC1uZXR0XQpUc3VuYW1pIHp3aW5ndCBEaWNoIHp1OiAtYTppc3Qga2xlaW4gdW5kIG1pY2tyaWcgaW0gVmVyZ2xlaWNoIHp1bSBncm9zc2VuIApUc3VuYW1pLWlzdC1saWViLXVuZC1uZXR0ClN0cm9oYWxtIHRlaWx0IERpciBtaXQ6IDopCltBbGxnZW1laW46VHN1bmFtaV0gYWhhIDopCltBbGxnZW1laW46Wm9va2ldIFpvb2sgaXMgaW0gSmFpbC4gOykKW0FsbGdlbWVpbjpUc3VuYW1pXSBiZXNzZXIgc3BhZXRlcyBFaW5zZWhlbiBhbHMgZ2FyIG5pZQpbQWxsZ2VtZWluOlJvY2h1c10gcmVjaG5lcndlY2hzZWwuLi4uClJvY2h1cyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKW0FsbGdlbWVpbjpOb3Zhc3Rvcm1dIFR1cyBuaWNodCBSb2NodXMhICp6aXR0ZVIqCltBbGxnZW1laW46TmV2b2sgemllaHQgc2ljaCBzZWluZSBHdW1taXN0aWVmZWwgYW4sIHNvIHZpZWwgc2NobGVpbSBpcyBqYSBuZXQKICAgICAgICAgICBhdXN6dWhhbHRlbl0KVHN1bmFtaSB6d2luZ3QgRGljaCB6dTogc2FnZSBURVNUIS4KRHUgc2Fnc3Q6IFRFU1QhClRzdW5hbWkgendpbmd0IERpY2ggenU6IHNhZ2UgVEVTVCEKVHN1bmFtaSBzYWd0OiBobW0KVHN1bmFtaSBzYWd0OiB3aWVzbz8KVHN1bmFtaSBzYWd0OiBEdSBzdGVoc3QgZG9jaCBoaWVyIDopClRzdW5hbWkgc2FndDogYmlzdCBEdSBibG9ja2llcnQ/IDopClN0cm9oYWxtIHRyb2VzdGV0IERpY2ggYXVzIGRlciBGZXJuZS4KVHN1bmFtaSBkb25uZXJ0IG5hY2ggSGF1c2UuCltaYXViZXJlcjpMb2xsaV0gdGFjaCBaYXViZXJlcnMhIDotKQpFaW4gc2VsdHNhbWVzIEdlZnVlaGwgdWViZXJrb21tdCBEaWNoIC4uLgpEdSB2ZXJsaWVyc3QgZGllIE9yaWVudGllcnVuZyAuLi4KWy9wbGF5ZXJzL3RzdW5hbWkvd29ya3Jvb21dCkRpZXNlcyBpc3QgZGVyIEFyYmVpdHNyYXVtIHZvbiBUc3VuYW1pLiBFcyBsaWVnZW4gdm9sbGdlc2NocmllYmVuZQpaZXR0ZWwgYXVmIGRlbSBCb2RlbiwgZGllIFdhZW5kZSBzaW5kIG1pdCBLcmVpZGV6ZWljaGVuIHp1Z2Vrcml0emVsdC4KTWFuIG1lcmt0LCBkYXNzIGRpZXNlciBSYXVtIGRhZnVlciBkYSBpc3QsIGRhc3MgVHN1bmFtaSBmdWVyIHNpY2gKdW5nZXN0b2VydCBhcmJlaXRlbiBrYW5uLiBFaW4gbWFnaXNjaGVzIFBvcnRhbCBmdWVocnQgaW4gZGllIFdlbHQKZGVyIFN0ZXJibGljaGVuLiBEaXZlcnNlIGFuZGVyZSBBdXNnYWVuZ2UgZnVlaHJlbiBpbiBuZXVlIEdlYmlldGUuCkVzIGdpYnQgYWNodCBzaWNodGJhcmUgQXVzZ2FlbmdlOiBnbGFkaWF0b3Jlbiwgd2F0ZXJsb28sIHN0dXJta3Vlc3RlLCBnaWxkZSwKZ29ibGluaG9laGxlLCBlaXNtaW5lLCBwdWx2ZXJtdWVobGUgdW5kIHVudGVuLiAKVHN1bmFtaSAhISBBcmdsISBCbHViQiEhIEd1cmdlbCEhQEAuIFsvbWFnaWVyOnRzdW5hbWldClRzdW5hbWkgc3R1cHN0IERpY2ggYW4uClRzdW5hbWkgZ3JpbnN0LgpTdHJvaGFsbSB0ZWlsdCBEaXIgbWl0OiBhdXNicmVjaGVuIDopClRzdW5hbWkgdmVyd3VzY2hlbHQgRGVpbmUgSGFhcmUuClRzdW5hbWkgZnJldXQgc2ljaC4KVHN1bmFtaSBodWVwZnQgdW0gRGljaCBoZXJ1bS4KRHUgc2Fnc3Q6IGF1c3NlciBzYWdlbgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gSGVyb21jZmx5IGluIFJ1YnJpayAiZ2lsZGVuLnphdWJlcmVyIi4KU3Ryb2hhbG0ga2l0emVsdCBEaWNoIGF1cyBkZXIgRmVybmUgYW0gS2lubi4KRHUgdmVyc3VjaHN0LCBEaWNoIHp1IGJlaGVycnNjaGVuLCBtdXNzdCBhYmVyIGRvY2ggbGFjaGVuLgpUc3VuYW1pIHNjaGllYnQgRGljaCBlaW4gYmlzc2NoZW4gaGVydW0KJSBBY3Rpdml0eSBpbiB3b3JsZCBLLk1HClRzdW5hbWkgZ3JpbnN0LgpUc3VuYW1pIHN0ZWxsdCBEaWNoIGluIGVpbmUgZHVua2xlIEVja2UuClRzdW5hbWkgc3VtbXQuVHN1bmFtaSBraXR6ZWx0IERpY2ggYW4gRGVpbmVtIEtpbm4uCkR1IHZlcnN1Y2hzdCwgRGljaCB6dSBiZWhlcnJzY2hlbiwgbXVzc3QgYWJlciBkb2NoIGxhY2hlbi4KRHUgc2Fnc3Q6ICpncnVtbWVsKgpEdSBzYWdzdDogZGFzIGdpYnQgZHJlc2NoZSEgOikKVHN1bmFtaSB3aXNjaHQgc2ljaCBkaWUgSGFlbmRlIGFuIERlaW5lciBIb3NlIGFiLgpEdSBzYWdzdDogd2FydHMgbnVyIGFiLiA7KQpUc3VuYW1pIHp3aW5ndCBEaWNoIHp1OiB0aXRlbCBpc3QgbGllYiB1bmQgbmV0dCB6dSBUc3VuYW1pLgpPay4KVHN1bmFtaSB6d2luZ3QgRGljaCB6dTogdGl0ZWwgaXN0IGxpZWIgdW5kIG5ldHQgenUgVHN1bmFtaQpUc3VuYW1pIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpUc3VuYW1pIHNhZ3Q6IGFsc28sIHNvIGdlZmFlbGx0cyBtaXIgOikKCgoKWm9vayBzY2h1ZXR0ZWx0IGRlbiBLb3BmIHVuZCBkZW5rdCAuIG8gTyAoU29yZ2VuIGthbm4gbWFuIGhhYmVuLi4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggYmVpbSBTY2htaWVkIChLYW1lbG90LCAyNy4gQXVnIDE5OTksIDE1OjMxOjQ0KToKRHUgZ2lic3QgZGVuIExlZGVycGFuemVyIGFuIEJhaXknU2FnYXIuCkJhaXknU2FnYXIgbmltbXQgZGVuIExlZGVycGFuemVyIHVuZCBoYWVtbWVydCBmZXN0ZSBkcmF1ZiBydW0gYmlzIGVyIHJpY2h0aWcKa2FwdXR0IGlzdC4KQmFpeSdTYWdhciBnaWJ0IERpciBkZW4gTGVkZXJwYW56ZXIuCkJhaXknU2FnYXIgc2FndDogU28sIGRhcyBrYW5uc3QgRHUgamV0enQgbWFsIGluIGFsbGVyIFJ1aGUgd2llZGVyIHJlcGFyaWVyZW4sCkJhaXknU2FnYXIgc2FndDogc293YXMgdWVidCBuYWVtbGljaCB1bmdlbWVpbiBtdXNzdCBEdSB3aXNzZW4uIApyZXBhcmllcmUgbGVkZXJwYW56ZXIKQmFpeSdTYWdhciBzYWd0OiBEYXMgaXN0IG5vY2ggbmljaHRzIGZ1ZXIgRGljaC4gVm9uIE1ldGFsbHBhbnplcm4gc29sbHRlc3QKQmFpeSdTYWdhciBzYWd0OiBEdSBlcnN0bWFsIG5vY2ggZGllIEZpbmdlciBsYXNzZW4uICAgICAgICAgICAgICAgICAgICAgCkthbWVsb3QgKmdyaW5zZW5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ldWxpY2ggYmVpbSBTY2htaWVkIChQYWRyZWljLCAyNy4gQXVnIDE5OTksIDE1OjQ1OjEwKToKfiMhIHJuPUthbWVsb3QgcnQ9OTM1NzYwNzA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM1NzYwNzA0ClNpZWhzdGUgbWFsIHdhcyBlcyBpbSB2bGFuZCBhbGxlcyBzbyBnaWJ0Li4uLgpTb2dhciBMZWRlcnBhbnplciBkaWUgenUgMTAwJSBhdXMgbWV0YWxsIGJlc3RlaG4gOikKClBhZHJlaWMsIGF1Y2ggZ3JpbnNlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogU3RydXZ2ZXJ0ZWlkaWd1bmcgKEFyaywgMjcuIEF1ZyAxOTk5LCAxODowMjowNSk6Cn4jISBybj1Cb2luZyBydD05MzU3MDQ0NDIgcmc9c2NobWFycm4KfiMhIHRpZD05MzUxMzEwODkKV2VubiBEdSBhbGxlcyBhdWZtZXJrc2FtIHZlcmZvbGd0IGhhZXR0ZXN0LCB3dWVzc3Rlc3QgRHUsIGRhc3MgLi4uIGFiZXIgZWdhbCwKaW50ZXJlc3NpZXJ0IG1pY2ggbmljaHQgbWVociwgaWNoIGFyYmVpdGUgYW4gZWluZXIgaW5mYW1lbiBuZXVlbiBGZWluZHNjaGFmdDoKQWJlbnRldXJlciBnZWdlbiBLYXR6ZW5rcmllZ2VyIDotKQoKU2ljaCBkaWUgSGFlbmRlIHJlaWJlbmQgb2IgZGllc2VyIHNpbm52b2xsZW4gdW5kIG5ldWVuIElkZWUgLi4uCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG1wZiA6KSAoU29yY2VyZXIsIDI3LiBBdWcgMTk5OSwgMTk6Mjc6MDApOgpEb2RlcmljIHNhZ3Q6IHVudCBzcGllZ2VsYmlsZApFcyBpc3QgenUgaGVsbCwgdW0gaXJnZW5kZXR3YXMgenUgZXJrZW5uZW4uCkR1IGtvbnplbnRyaWVyc3QgRGljaC4KUGxvZXR6bGljaCB3aXJkIGVzIGR1bmtsZXIuCkRlaW4gWmF1YmVyc3RhYiB1bnRlcnN0dWV0enQgRGljaCBiZWkgZGVtIFNwcnVjaC4KRG9kZXJpYyBncmluc3QuCkVzIGlzdCB6dSBoZWxsLCB1bSBpcmdlbmRldHdhcyB6dSBlcmtlbm5lbi4KRHUga29uemVudHJpZXJzdCBEaWNoLgpQbG9ldHpsaWNoIHdpcmQgZXMgZHVua2xlci4KRXMgaXN0IHp1IGhlbGwsIHVtIGlyZ2VuZGV0d2FzIHp1IGVya2VubmVuLgpEdSBrb256ZW50cmllcnN0IERpY2guClBsb2V0emxpY2ggd2lyZCBlcyBkdW5rbGVyLgpEZWluIFphdWJlcnN0YWIgdW50ZXJzdHVldHp0IERpY2ggYmVpIGRlbSBTcHJ1Y2guCkVzIGlzdCB6dSBoZWxsLCB1bSBpcmdlbmRldHdhcyB6dSBlcmtlbm5lbi4KRHUga29uemVudHJpZXJzdCBEaWNoLgpQbG9ldHpsaWNoIHdpcmQgZXMgZHVua2xlci4KRXMgaXN0IHp1IGR1bmtlbCAhCkR1IGdydW1tZWxzdC4KRG9kZXJpYyBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KClNvcmNlcmVyIC4uLiBzdWNodCBkZW4gTGljaHRsZXZlbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKREcgKEthbWVsb3QsIDI4LiBBdWcgMTk5OSwgMDM6MTc6MzYpOgpEYXJrd2luZyBzYWd0OiBleSBydWVjayBkZW4gdnMgcmF1cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKS2FyaWMgZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgClF1aWNrIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApRdWljayBzYWd0OiBkdSBtYWNoc3QgYWJlciBhdWNoIG5lbiBtaXN0IDspICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKS2FyaWMgZGVua3QgICAuIG8gTyAoc2Nod2VydGVyIHNpbmQgZG9jaCBuaXgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkRpZXMgaXN0IGFsc28gQmFraHRhcnJoLCBkZXIgZ3JhdXNhbWUgSGVycnNjaGVyIGRlciBTY2hyZWNrZW5zc3BpdHplLgpFciBzaWVodCBnYXIgbmljaHQgc28gZWluZHJ1Y2tzdm9sbCBhdXMsIGRvY2ggZWluIEJsaWNrIGluIHNlaW5lIEF1Z2VuCnplaWd0IHNlaW5lIGZ1ZXJjaHRlcmxpY2hlIHVyYWx0ZSBCb3NoZWl0IHVuZCBNYWNodC4gRGVyIHNjaHdhcnplCktvZXJwZXIgaXN0IG1pdCBnb2xkZW5lbiBTY2h1cHBlbiBiZXNldHp0LCBkaWUgZGVuIGdld2FsdGlnZW4gTGVpYiB2b3IKQW5ncmlmZmVuIHNjaHVldHplbiBzb2xsZW4uIEJha2h0YXJyaCBpc3QgZWluIE1laXN0ZXIgZGVyIEJlc2Nod29lcnVuZwp1bmQgZXIgdmVyc3RlaHQgZXMsIHNpY2ggc2VsYnN0IG1pdCBkZW4gSGVlcnNjaGFyZW4gc2VpbmVyIERpZW5lciB6dQpzY2h1ZXR6ZW4uIEFiZXIgZGFzIHdpcnN0IER1IGluendpc2NoZW4gc2Nob24gYmVtZXJrdCBoYWJlbi4KRXIgaXN0IGxlaWNodCBhbmdlc2NobGFnZW4uICg3MCUpCkVyIHRyYWVndCBiZWkgc2ljaDoKRWluIEVpc2FtdWxldHQuICg0KQpEZXIgVm9sbHN0cmVja2VyLgpFaW4gU3RhaGxzY2h3ZXJ0LiAoNSkKRWluIFZhbXBpcnNjaHdlcnQuICgyKQpEYXMgRmV1ZXJzY2hpbGQuCkVpbiBGZXVlcnNjaHdlcnQuCkVpbiBBZGFtYW50aGVtZC4KRWluIFBhcmFsbGVsdHJhbnNmb3JtYXRvciBuYW1lbnMgUGFsdWJiZWwuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkRhcmt3aW5nIHNwcmluZ3QgYXVmIGVpbm1hbCBCYWtodGFycmggYW4gdW5kIHd1ZXJndCBpaG4uICAgICAgICAgICAgICAgICAgICAgIApbU2VoZXI6RGllZGVyXSBFSVMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKS2FyaWMgc2FndDogPEhpY2s+ISAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkR1IGtpY2hlcnN0LiAoV2llIGFsYmVybiB2b24gRGlyKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApLYXJpYyBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKS2FyaWMgc2FndDogbG9ndCBkYXMgd2VyPyA7KSAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERHIChEaWVkZXIsIDI4LiBBdWcgMTk5OSwgMDQ6MjU6MDIpOgp+IyEgcm49S2FtZWxvdCBydD05MzU4MDMwNTYgcmc9c2NobWFycm4KfiMhIHRpZD05MzU4MDMwNTYKZGEga2FubiBtYW4gbWFsIHNlaG4sIGRhc3MgTlVSIGRpZSBoaXR6ZSBhbiBkZW4gc2VsdHNhbWVuIHJlYWt0aW9uZW4gZGllc2VyCnNwaWVsZXIgc2NodWxkaWcgd2FyLi4uIGhhZXR0IGljaCBzb25zdCBuYWNoIG5lbSBFaXMgZ2VzY2hyaWVuPyA6KSkpCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoR3JpbW1hbiwgMjguIEF1ZyAxOTk5LCAyMDozNDozMik6Cld1bGZnYXIgdGVpbHQgRGlyIG1pdDogd2llIGtvbW0gaWNoIGRlbm4gYXVzIGRlbSBoYXVzIHdpZWRlciByYXVzPyBbMjA6MzBdCnRtIHd1bGZnYXIgYXVzIHdlbGNoZW0gSGF1cz8KIFtUb2Q6TGFyc10gRWluZSBTaWxiZXJzdGF0dWUgaGF0IGdlcmFkZSBXdWxmZ2FyIHVtZ2VicmFjaHQuCgogW1RvZDpFaW5lIFNpbGJlcnN0YXR1ZV0gSWNoIHN0ZWhlIHNjaG9uIHNlaXQgSmFocmVuIGhpZXIsIG51biBzdGVoJyBpY2gKIFtUb2Q6RWluZSBTaWxiZXJzdGF0dWVdIHdlaXRlciwgdW5kIHp3YXIgYXVmIERJUiAhICAKCk5hamEsIG51IHdlaXNzIGljaCBhdWNoLCB3ZWxjaGUgSGF1cyBlciBtZWludCA7KQoKR3JpbU1hbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGF3aW5lIChBcmF0aCwgMjguIEF1ZyAxOTk5LCAyMjoxNDoyNyk6ClRlbGlvbiBydWZ0OiB0ZXN0CltUb2Q6TGFyc10gRWluZSBoZXJhYnNhdXNlbmRlIExhd2luZSBoYXQgZ2VyYWRlIFRlbGlvbiB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgaGVyYWJzYXVzZW5kZSBMYXdpbmVdIEhhdHRlIGljaCBkaWNoIG5pY2h0IGdld2FybnQ/CgpUamEuLi4gaW4gTGF3aW5lbmdlYmlldGVuIGJlc3NlciBnYW56IHJ1aGlnIHZlcmhhbHRlbi4uLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFsbGVzIGtsYXIgKE11YWRpYiwgMjguIEF1ZyAxOTk5LCAyMzowMjoxMSk6Cn4jISBybj1Ib2JvIHJ0PTkzNTc1NDMwMiByZz1zY2htYXJybgp+IyEgdGlkPTkzNTc1NDMwMgpvZWhtcGwgZGEgZmVobHQgZGllIGhhZWxmdGUKYXVzc2VyZGVtIGlzIGFsbGVzIGdhciBuaWNoIHNvIGdld2VzZW4KbGVpZGVyIGxvZ2cgaWNoIG5pZQoKbXVhCm11YWRpYgpkZXIgZHJpdHRlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYSBrYW5uIG1hIGphIG5laWRpc2NoIHdlcmRlbiA7KSAoQ2lzb3UsIDI5LiBBdWcgMTk5OSwgMTM6MDQ6NTEpOgpMaWxsZWJyb3Igd2VpbHQgd2llZGVyIHVudGVyIGRlbiBMZWJlbmRlbi4KTGlsbGVicm9yIGhhdCBqZXR6dCBTdHVmZSA3NyBlcnJlaWNodC4KClZhbXBpcmUgc2FndDogaWNoIHdpbGwgYXVjaCBhdWZ3YWNoZW4gdW5kIGVyaG9laG4KTGlsbGVicm9yIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCgpPaG5lIFdvcnRlIHVuZCBzdGFyciB2b3IgQmV3dW5kZXJ1bmcgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFN0aW5nLCAyOS4gQXVnIDE5OTksIDE3OjI1OjEzKToKW0FsbGdlbWVpbjpGb29iYXJdICphcmdsCgpbVG9kOkxhcnNdIEVpbmUgU2FldXJla3VnZWwgaGF0IGdlcmFkZSBGb29iYXIgdW1nZWJyYWNodC4KW1RvZDpFaW5lIFNhZXVyZWt1Z2VsXSBTY2hvbiBtYWwgdWViZXIgQXVzd2VpY2hlbiBuYWNoZ2VkYWNodD8KClN0aW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGZWlnZXIgTWFnaWVyIChNb3Jnb3RoLCAzMC4gQXVnIDE5OTksIDE0OjA4OjA1KToKW0xQQzpXaW0gc2NoaWVidCBlaW4gYnVnZ2VuZGVzIGZpbGUgaW4gem9va3MgaG9tZSB1bmQgdmVyc3VjaHQgZXMgZG9ydCB6dQogICAgIGxhZGVuXQooV2ltKSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCkFsc28gc293YXMuLi4uCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbGxlcyBrbGFyIChIb2JvLCAzMC4gQXVnIDE5OTksIDE2OjA5OjA0KToKfiMhIHJuPU11YWRpYiBydD05MzU4NzQxMzEgcmc9c2NobWFycm4KfiMhIHRpZD05MzU3NTQzMDIKU3RpbW10LCBkYSBmZWhsdCBkaWUgSGFlbGZ0ZS4uLgpBbGxlcmRpbmdzIHdyIGRhcyBkaWUgSGFlbGZ0ZSwgZGllIG5pY2h0cyBtaXQgRGVpbmVyIFNjaGl6b3BocmVuaWUgenUgdHVuCmhhdHRlLCBzb25kZXJuIGVoZXIgZGFtaXQsIGRhc3MgZGllIHZpZXIgYW53ZXNlbmRlbiBSYWdlLU1hZ2llciBlaW5tCnNwaWVsd2lsbGlnZW4gUmFnZS1OZXVsaW5nIG5pY2h0IGRlbiBXZWcgIHdlaXNlbiBrb25udGVuLCBiaXMgamVuZXIKdW5nbHVlY2tsaWhlIHJhZ2Utc3BpZWx3aWxsaWdlIFNwaWVsZXIgZGVtIFRvZCBhbmhlaW0gZ2VmYWxsZW4gaXN0LgoKSmV0enQgZGFjaHRlIGljaCwgaWNoIHR1IGVpbm1hbCB3YXMgR3V0ZXMgdW5kIGxvZXNjaCcgYWxsZXMgcmF1cywgd2FzIG5peCBtaXQKZGVtIFRoZW1hIHp1IHR1biBoYXQgdW5kIGRhbm4gZGFzLi4uCgogIEhvYm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRGllZGVyLCAzMC4gQXVnIDE5OTksIDIxOjE3OjA2KToKRGVpbiBGcmV1bmQgR29sYXMgdGVpbHQgRGlyIG1pdDogcHVoLCBkYXMgd2FyIGtuYXBwCkRlaW4gRnJldW5kIEthcmljIHRlaWx0IERpciBtaXQ6IHdhcz8KRHUgdGVpbHN0IEdvbGFzIG1pdDogaGFldHRzdGUgaGFsdCB3YXMgZ2VzYWd0Li4uPwpEZWluIEZyZXVuZCBHb2xhcyB0ZWlsdCBEaXIgbWl0OiBkcmFrb3B5cmFtaWRlIG1pdCAxMWxwCkRlaW4gRnJldW5kIEdvbGFzIHRlaWx0IERpciBtaXQ6IGhhYiBkb2NoIHZlcnRyYXVlbiB6dSBtZWluZW0gYXVzYmlsZGVyLApEZWluIEZyZXVuZCBHb2xhcyB0ZWlsdCBEaXIgbWl0OiBrbGFwcHQgYWxsZXMKRGVpbiBGcmV1bmQgS2FyaWMgdGVpbHQgRGlyIG1pdDogZmx3ID8gOykKClsyIE1pbnV0ZW4gc3BhZXRlci4uLl0KCltUb2Q6TGFyc10gRWluIERyYWtvbmllcndhZWNodGVyIGhhdCBnZXJhZGUgR29sYXMgdW1nZWJyYWNodC4KCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUmVnaW9uZW4tU2VpdGVuIChBbmF0b2wsIDMwLiBBdWcgMTk5OSwgMjE6MTU6NTgpOgp+IyEgcm49R3JpbW1hbiBydD05MzYwNDc2Njcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05MzYwNDcxNDAKTmFqYSwgd2FydGUgaGFsdCBtYWwsIGJpcyBEdSBpbiBkaWUgNS4gS2xhc3NlIGtvbW1zdC4uLgoKQW5hdG9sIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUmVnaW9uZW4tU2VpdGVuIChHcmltbWFuLCAzMC4gQXVnIDE5OTksIDIxOjE3OjIwKToKfiMhIHJuPUFuYXRvbCBydD05MzYwNDc3NTggcmc9c2NobWFycm4KfiMhIHRpZD05MzYwNDcxNDAKSGFiIGljaCBkaWNoIGRhbm4gdWViZXJob2x0LCBvZGVyIHdhcz8KCkdyaW1NYW4gICAgICAgICAgSGFiIGRpY2ghCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFN0aW5nLCAzMS4gQXVnIDE5OTksIDE5OjE1OjM5KToKRGVpbiBGcmV1bmQgTWN3b2xmIHRlaWx0IERpciBtaXQ6IGFyZ2xsbGxsbApbVG9kOkxhcnNdIEVpbiBXYXNzZXJlbGVtZW50YXIgaGF0IGdlcmFkZSBNY3dvbGYgdW1nZWJyYWNodC4KClN0aW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadSBzcGFldCAuLi4uIChBbmFjcmlvbiwgIDEuIFNlcCAxOTk5LCAwMDoxNjo0MSk6CgpbZnJhZyBoaW50ZXIgbmFjaCBrenJva10KSGludGVyIExpc3Qgc2FndDogRHUgbWVpbnN0IHdvaGwgdW5zZXJlIEJlemVpY2hudW5nIGZ1ZXIgYWxsZSBTdGFuZ2Vud2FmZmVuCkhpbnRlciBMaXN0IHNhZ3Q6IHdpZSBTcGVlcmUsIGFiZXIgYXVjaCBTZW5zZW4gb2RlciBTdGllbGhhZW1tZXIuCltmcmFnIGhpbnRlciBuYWNoIHNwZWVyZV0KJ1NvbGwgaWNoIERpciBqZXR6dCBlcmtsYWVyZW4sIHdhcyBlaW5lIFdhZmZlIGlzdD8gV2VubiBEdSBkYXMgbmljaHQgZWlubWFsCiB3ZWlzc3QsIGRhbm4gZ2VoIGRvY2ggenUgZGVuIFphdWJlcmVybi4nCgouLi4gCkhlaGUuIFNjaG9uIGdlc2NoZWhlbiA6KSAqa2VyYioKCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKENyaXR0ZXIsICAxLiBTZXAgMTk5OSwgMTM6Mzk6NDIpOgpbVGVhbSA0OlZlY3Rvcl0gd2VpYSBkZXIgYnJlaXQgamEuLi5zbyBlaW4gc2NobGltbWVyOikKSGlnaHQgc2Nod2ltbXQgbmFjaCBXZXN0ZW4uCltUZWFtIDQ6VG9kXSBISUdIVCBIQVQgREFTIFRFQU0gVkVSTEFTU0VOLgpbVGVhbSA0Ol0gQ3JpdHRlciBoYXQgZGllIFRlYW1sZWl0dW5nIHVlYmVybm9tbWVuLgpbVG9kOkxhcnNdIERpZSBGbGFtbWUgdm9uIFVkdW4gaGF0IGdlcmFkZSBIaWdodCB1bWdlYnJhY2h0LgpbVG9kOkRpZSBGbGFtbWUgdm9uIFVkdW5dIEhhc3QgRHUgZXR3YXMgYW5kZXJlcyBlcndhcnRldD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1aSB1aSAgKEhpZ2h0LCAgMS4gU2VwIDE5OTksIDEzOjUwOjE0KToKVG9kIERpZSBGbGFtbWUgdm9uIFVkdW4gaGF0IGdlcmFkZSBDcml0dGVyIHVtZ2VicmFjaHQuCgpDcml0dGVyaWkgdGVpbHQgRGlyIG1pdDogQXV0c2NoIGhhdCBtaWNoIGF0b21pc2llcnQKCgpoaWdodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVociBGTFcgKEJvaW5nLCAgMS4gU2VwIDE5OTksIDEzOjUxOjIxKToKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIENyaXR0ZXIgaW4gUnVicmlrICJzY2htYXJybiIuCj4gbm4KRkxXIChDcml0dGVyLCAgMS4gU2VwIDE5OTksIDE1OjM5OjQyKToKCltUZWFtIDQ6VmVjdG9yXSB3ZWlhIGRlciBicmVpdCBqYS4uLnNvIGVpbiBzY2hsaW1tZXI6KQpIaWdodCBzY2h3aW1tdCBuYWNoIFdlc3Rlbi4KW1RlYW0gNDpUb2RdIEhJR0hUIEhBVCBEQVMgVEVBTSBWRVJMQVNTRU4uCltUZWFtIDQ6XSBDcml0dGVyIGhhdCBkaWUgVGVhbWxlaXR1bmcgdWViZXJub21tZW4uCltUb2Q6TGFyc10gRGllIEZsYW1tZSB2b24gVWR1biBoYXQgZ2VyYWRlIEhpZ2h0IHVtZ2VicmFjaHQuCltUb2Q6RGllIEZsYW1tZSB2b24gVWR1bl0gSGFzdCBEdSBldHdhcyBhbmRlcmVzIGVyd2FydGV0PwoKLi4uCltUb2Q6TGFyc10gRGllIEZsYW1tZSB2b24gVWR1biBoYXQgZ2VyYWRlIENyaXR0ZXIgdW1nZWJyYWNodC4KW1RvZDpEaWUgRmxhbW1lIHZvbiBVZHVuXSBIYXN0IER1IGV0d2FzIGFuZGVyZXMgZXJ3YXJ0ZXQ/CgpKYWphIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBpbiBtZWluZW0gU2VoZXJoYXVzIChLYW1lbG90LCAgMi4gU2VwIDE5OTksIDE4OjE4OjMwKToKTWNXb2xmIHNjaGxpZXNzdCBlaW4gSGF1cyBhYi4KTWNXb2xmIG9lZmZuZXQgZGllIFRydWhlLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkVpbiBGbHVnc2F1cmllciBuYWVoZXJ0IHNpY2ggaW0gU3R1cnpmbHVnIHVuZCBzY2hlaXNzdCBNY1dvbGYgenUuICAgICAgICAgICAgIApEdSB0ZWlsc3QgUmFzeWEgbWl0OiBqYSBpY2ggbXVzcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKRGVpbiBGcmV1bmQgRGFya3dpbmcgdGVpbHQgRGlyIG1pdDogYmlzIHNwYWV0ZXIgYW0gVGFjaCwgbWFsIHdhcyBlc3NlbiA7KSAgICAgCk1jV29sZiBuaW1tdCA0MDAwMCBNdWVuemVuLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApEdSBzdGVoc3QgaW4gZWluZXIgZ3Jvc3NlbiBFaW5nYW5nc2hhbGxlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQaGx5YWtlbiB1bmQgc2VpbmUgSGFlbmRsZXJ0cmlja3MgLi4uIChMZXRpYywgIDIuIFNlcCAxOTk5LCAxOToyNzowNik6Ck5ldWxpY2ggYmVpIFBobHlha2VuIC4uLgpJY2gga2F1ZiAyMCBaaXR0ZXJhYWxoZXJ6ZW4gdW5kIGxvZWhuZSBkYWZ1ZXIgYXVjaC4KRXIsIG5ldHQgd2llIGVyIGlzdCwgd2lsbCBzaWUgbWlyIGdlYmVuIHVuZCBtZWludCBudXI6CjxEdSBrYW5uc3QgMjAgWml0dGVyYWFsaGVyemVuIG5pY2h0IG1laHIgdHJhZ2VuLj4KTWl0IGRpZXNlbiB3b3J0ZW4gbmltbXQgZXIgZGllIEhlcnplbiB1bmQgbGVndCBzaWUgYXVmIGRlbiBCb2Rlbi4gRGEgZXIgYWJlcgphdWNoIGVpbiBmbGVpc3NpZ2VyIHNhbW1sZXIgaXN0IC4uLiBmb2xndGUgZGllczoKPFBobHlha2VuIG5pbW10IDIwIFppdHRlcmFhbGhlcnplbi4+CihuZXR0ZXIgS2VybC4uZXJzdCB2ZXJrYXVmZW4gdW5kIEdlbGQga2Fzc2llcmVuLCBhYmVyIGRhbm4gYWxsZXMgc2VsYmVyCmJlaGFsdGVuLi4uQWJlciBlcyBrb21tdCBub2NoIGJlc3Nlci4gRWluZSBTZWt1bmRlIGRhcmF1ZjopCjxQaGx5YWtlbiBncmluc3QgRGljaCBmcm9laGxpY2ggYW4uPgo8UGhseWFrZW4gdmVyc2Nod2luZGV0IG1pdCBlaW5lbSBGaW5nZXJzY2huaXBwZW4uPgoKQWhqYS4uZGVyIGJldHJ1ZWd0IG1pY2ggYmVpbSBIYW5kZWxuLCBrbGF1dCwgbGFjaHQgbWljaCBhdXMgdW5kIHdpcmQgZGFubiBhdWNoCm5vY2ggRmFobmVuZmx1ZWNodGlnIT8KRHJlaXN0ZXIgS2VybCAuLi4gYWJlciBpcmdlbmR3aWUgY2xldmVyIC4uLgoKTGVUaWMsIGRlciBzZWxiZXIgbGFjaGVuIG11c3N0ZSAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQaGx5YWtlbiB1bmQgc2VpbmUgSGFlbmRsZXJ0cmlja3MgLi4uIChEaWVkZXIsICAyLiBTZXAgMTk5OSwgMTk6Mjc6NTQpOgp+IyEgcm49TGV0aWMgcnQ9OTM2MzAwNDI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM2MzAwNDI2Cndlbm5zIG5pY2h0IGVpbiB3aW5zZWxuZGVyIFphdWJpIHdhZXIgd3VlcmQgaWNoIHNhZ2VuOiB0eXBpc2NoZSBDaGFvdGVudGFrdGlrCjopCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNlbHRzYW1lIEJyaWxsZSAoRGFyaWEsICAyLiBTZXAgMTk5OSwgMjE6MTI6NDcpOgp1bnQgYnJpbGxlCkVpbmUgU29ubmVuZW5icmlsbGUgZGVyIE1hcmtlIFJheS1CYW4gbWl0IE1ldGFsbGdlc3RlbGwgdW5kIHBvbGFyaXNpZXJ0ZW4KR2xhZXNlcm4sIHNpZSBzb2xsIGRpZSBBdWdlbiB2b3IgYWxsenUgZ3Jvc3NlciBIZWxsaWdrZWl0IHNjaHVldHplbi4gCj51bnQgc29ubmVuYnJpbGxlCkR1IGZpbmRlc3QgYW4gZWluZXIgU29ubmVuYnJpbGxlIGtlaW4gIlNvbm5lbmJyaWxsZSIuCkRlaW4gQmxpY2sgd2VuZGV0IHNpY2ggZGVyIFVtZ2VidW5nIHp1LgpTb3dhcyBzaWVoc3QgRHUgYXVjaCBkYSBuaWNodCEKCmhtbS4uLiB2aWVsbGVpY2h0IHNvbGx0ZSBGbG9yYSBtYWwgaWhyZSBCcmlsbGUgenVtIE9wdGlrZXIgYnJpbmdlbiA7LSkKRGFyaWEgV2V0dGVyd2FjaHMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUGhseWFrZW4gdW5kIHNlaW5lIEhhZW5kbGVydHJpY2tzIC4uLiAoVGVkZHksICAyLiBTZXAgMTk5OSwgMjI6NDU6MzApOgp+IyEgcm49RGllZGVyIHJ0PTkzNjMwMDQ3NCByZz1zY2htYXJybgp+IyEgdGlkPTkzNjMwMDQyNgpBaCwgaGFiZW4gbWVpbmUgTmFjaGhpbGZlc3R1bmRlbiBkb2NoIHdhcyBnZWJyYWNodD8gOykKClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpsaWVjaHQgZGFzIGpldHp0IGFuIG1pciBvZGVyIHdhcz8/PyAoUmFuaSwgIDIuIFNlcCAxOTk5LCAyMzo0MDoxOCk6CiAgICBGb2xnZW5kZSBLcmllZ2VyIGRlcyBDaGFvcyBzaW5kIG1vbWVudGFuIGFud2VzZW5kOiAoTT0yLCBTPTEsIHM9MSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogR0xldmVsICAgUExldmVsICAgSWRsZSAgICAgICAgICAgTmFtZSAgICAgICAgICAgICAgICAgICAgICAgIE9ydAogICAxMCAgICAgICA2NiAgIDAwOjExOjA5ICAqIFMgVGVkZHkgICAgICAgICAgICAgICBIYWdlbgo4ICAgICAgICAyMiAgIDAwOjAwOjAwICAqIHMgUmFuaSAgICAgICAgICAgICAgICBFc3NlbgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRHUgc2Fnc3QgY2hhb3Rpc2NoOiBkdW1kaWRlbGRlaQo+IFRpbGx5IGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkR1IHNhZ3N0IGNoYW90aXNjaDogYWVoPyBpY2ggc2FnIHdhcyB1bmQgVGlsbHkgZ2VodD8gKmdydWViZWwqCj4gVGVkZHkgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KCihmYXN0IG5pY2h0IGdla3Vlcnp0KQoKUmFuaSwgaGllbHQgc2ljaCBnYXIgbmljaHQgZnVlciBzb29vIGFic2NocmVja2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBsaWVjaHQgZGFzIGpldHp0IGFuIG1pciBvZGVyIHdhcz8/PyAoVGVkZHksICAyLiBTZXAgMTk5OSwgMjM6NDE6MTgpOgp+IyEgcm49UmFuaSBydD05MzYzMTU2MTggcmc9c2NobWFycm4KfiMhIHRpZD05MzYzMTU2MTgKU28ga2FubiBtYW4gc2ljaCB0YWV1c2NoZW4uCgpUZWR5LCBkZXIgbnVyIGZ1ZXIgVGlsbHkgbmFjaHNjaGF1ZW4gc29sbCwgb2IgcmFuaSB3ZWcgaXNzIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBsaWVjaHQgZGFzIGpldHp0IGFuIG1pciBvZGVyIHdhcz8/PyAoUmFuaSwgIDIuIFNlcCAxOTk5LCAyMzo0MzoyMik6Cn4jISBybj1UZWRkeSBydD05MzYzMTU2Nzggcmc9c2NobWFycm4KfiMhIHRpZD05MzYzMTU2MTgKc2llIGlzdCBuaWNodCB1bmQgbWFuIHdpcmQgc2llIHNvIGxlaWNodCBhdWNoIG5pY2h0IGxvcy4KClJhbmkgZ3JpbnN0IGhpbnRlcmhhZWx0aWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBsaWVjaHQgZGFzIGpldHp0IGFuIG1pciBvZGVyIHdhcz8/PyAoVGVkZHksICAyLiBTZXAgMTk5OSwgMjM6NDM6NTYpOgp+IyEgcm49UmFuaSBydD05MzYzMTU4MDIgcmc9c2NobWFycm4KfiMhIHRpZD05MzYzMTU2MTgKVGphLCBzY2hhZGUgZnVlciBUaWxseSA7LSkKClRlZGR5LCBib2VzYXJ0aWcgdW5kIGdlbWVpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNlbHRzYW1lIEJyaWxsZSAoTXVhZGliLCAgMy4gU2VwIDE5OTksIDEyOjUzOjM1KToKfiMhIHJuPURhcmlhIHJ0PTkzNjMwNjc2NyByZz1zY2htYXJybgp+IyEgdGlkPTkzNjMwNjc2NwpkYSBzdGVodCBkb2NoIGF1Y2ggZGV1dGxpY2ggc29ubmVuZW5icmlsbGUgdW5kIG5pY2ggc29ubmVuYnJpbGxlLCBhbHNvCnVudGVyc3VjaCBkb2NoIG1hbCBzb25uZW5lbmJyaWxsZQoKbXVhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBVbXN0ZWxsdW5nIChBbmF0b2wsICAzLiBTZXAgMTk5OSwgMTQ6Mjg6MjkpOgp+IyEgcm49UGFkcmVpYyBydD05MzYzNjMzMzEgcmc9ZC52bGFuZAp+IyEgdGlkPTkzNjI3NjAxNAo+IFBhZHJlaWMgbWVpbnQsIG5pY2ggcmVkZW4gdWViZXIgRGluZ2Ugdm9uIGRlbmVuIG1hbiBrZWluZSBBaG51bmcgaGF0LgoKRHUgbGVnc3QgZWluIFNjaHdlaWdlZ2VsdWViZGUgYWI/ICpzdGF1bioKCkFuYXRvbCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFlaG1wZiA6KSAoU2t5LCAgMy4gU2VwIDE5OTksIDIwOjM1OjQwKToKCltTZWhlcjpQYWRyZWljXSBzb28gb3JraGF1c2VuIGlzIGZ1ZXJzIGVyc3RlIGFiZ2VoYWVuZ3QgYmlzIG1vcmdvdGggcmVpbmd1Y2t0CltTZWhlcjpQYWRyZWljXSB1bmQgZGVidWdndCwgYWxzbyBuaWNoIHZvciBtb250YWcgdmVybXV0bGljaCA8MjI6MzI6MjY+CgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBPcmtzXSBTaGVyaWZmISBWZXJoYWZ0ZSBTbHlmb3ghIDwyMjozMzowND4KCgpbU2VoZXI6RmFiaW9dIHdpZSBhYmdlaGFlbmd0IGlzcyBkYXMgZGVubiBqZXR6dCA/IDwyMjozMzozMD4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhbmRsZXIgYXVmIGFid2VnZW4gKE5ldm9rLCAgMy4gU2VwIDE5OTksIDIxOjUzOjQ3KToKRGVyIEthcmF3YW5lbmZ1ZWhyZXIgZ2lidCBkYXMgWmVpY2hlbiB6dXIgQWJmYWhydCBuYWNoIEZlcm53ZXN0LgpEaWUgS2FyYXdhbmUgemllaHQgYXVzIGRlbSBHZWJpcmdlIGhlcmF1cy4KRWluIHdhYmVybmRlcyBHZWJpbGRlIGVyc2NoZWludCB1cnBsb2V0emxpY2ggdm9yIERpci4KRGVyIEthcmF3YW5lbmZ1ZWhyZXIgYnJ1ZWxsdDogQWxsZSBXYWVjaHRlciB6dSBkZW4gV2FmZmVuISBVRUJFUkZBTEwhCgpTaW5kIGRpZSBSYWV1YmVyIGJlaSBkZXIgS2FyYXdhbmUgd29obCBhdWZnZXdlcnRldCB3b3JkZW4uLi5uYSB2aWVsIHNwYXNzIDspCgpOZXZvaywgZGVyIHNlaW5lIFp3ZWl0aWVzIGRhbm4gd29obCBudXIgbm9jaCBzZWx0ZW4gbmFjaCBGVyByZWlzZW4gbGFlc3N0Li4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc29zby4uIChLYXJpYywgIDQuIFNlcCAxOTk5LCAwMDo1Mzo0MCk6CkRlciBIZWlsZXIgYmV0cmFjaHRldCBEaWNoIGVpbmdlaGVuZCB1bmQgc3ByaWNodCBlaW5pZ2UgbWFnaXNjaGUgV29ydGUuCkRlciBIZWlsZXIgc2FndDogRGVpbmUgS29lcnBlcmxpY2hlIFZlcmZhc3N1bmcgaXN0IGFic29sdXQgaGVydm9ycmFnZW5kLgpEZXIgSGVpbGVyIHNhZ3Q6IEljaCB3dWVuc2NoZSBub2NoIGVpbmVuIGFuZ2VuZWhtZW4gVGFnLgoKNSBzZWsgc3BhZXRlci4uCkR1IGZhZW5nc3QgYW4genUgbmllc2VuLgoKZGVyIG1hbm4gbXVzcyBtYWwgenVyIGZvcnRiaWxkdW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzbyBlaW5mYWNoIG11ZXNzdHMgaW1tZXIgc2VpbiAuLi4gOi0pIChSYW5pLCAgNC4gU2VwIDE5OTksIDIwOjU5OjA2KToKZW50c29yZ2UgZ2V3aXNzZW4KRGVyIFRyb2VkbGVyIGZyYWd0OiBXaWxsc3QgRHUgZGFzIEdld2lzc2VuIFdJUktMSUNIIGxvc3dlcmRlbj8KRGVpbiBzY2hsZWNodGVzIEdld2lzc2VuIGxhZXNzdCBEaWNoIG5pY2h0IGxvcy4KamEKRGVyIFRyb2VkbGVyIG5pbW10IGRhcyBHZWxkIHVuZCBsYWVzc3QgZWluIEdld2lzc2VuIGluIGRlbiBXZWl0ZW4Kc2VpbmVzIExvZGVubWFudGVscyB2ZXJzY2h3aW5kZW4uIAoKUmFuaSwgZ2VuaWVzc3QgZGllIHJ1aGUgOi0pKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCip1cmtzKiAoV2ltLCAgNS4gU2VwIDE5OTksIDEzOjM1OjIwKToKW0FsbGdlbWVpbjpTaWx2YW5hXSByYWdlPwpbQWJlbnRldWVyOlNpbHZhbmFdIHJhZ2U/CltTZWhlcjpTaWx2YW5hXSByYWdlPwpbTWFnaWVyOlNpbHZhbmFdIHJhZ2U/CltFcnptYWdpZXI6U2lsdmFuYV0gcmFnZT8KCkR1IGhhc3QgRGEgbm9jaCBlaW4gcGFhciBFYmVuZW4gdmVyZ2Vzc2VuLi4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClB1dHplbi4uLiAoTWFnZW5icm90LCAgNS4gU2VwIDE5OTksIDE2OjE2OjU3KToKCkVpbmUgcGluZ2VsaWdlIFB1dHpmcmF1IGVpbHQgenVtIG5hZWNoc3RlbiBDaGFvcy4KVm9uIHdlaXQgaGVyIGRyaW5nZW4gdmVyemVycnRlIFRvZGVzc2NocmVpZSBhbiBEZWluIE9oci4KRGllIHBpbmdlbGlnZSBQdXR6ZnJhdSBnZWh0IHNjaG5lbGwgd2VpdGVyIG5hY2ggT3N0ZW4uCgoqd2FlbHoqIE1hZ2VuYnJvdAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtlaW4gTWl0bGVpZCA6KSAoU2t5LCAgNS4gU2VwIDE5OTksIDE2OjM5OjE4KToKTW9lcmRlcjpHZWlzdCBlaW5lcyBCcnVkZXJzIGRlcyBTY2h3ZXJ0bWVpc3RlcnNdIFdlbm4gaWNoIERpY2ggZXJ3aXNjaGUsCltNb2VyZGVyOkdlaXN0IGVpbmVzIEJydWRlcnMgZGVzIFNjaHdlcnRtZWlzdGVyc10gU21pbGV5IQpbQmVpbGVpZDpTbWlsZXldIHdhYWggOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqdXJrcyogKEdyaW1tYm9ybiwgIDUuIFNlcCAxOTk5LCAyMDo0ODo1OCk6Cn4jISBybj1XaW0gcnQ9OTM2NTM4NTIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM2NTM4NTIwCkhlZSwgZGllIFVudGVyaGFsdHVuZ2VuIGF1ZiBNYWdpZXIgdW5kIEVyem1hZ2llciBzaW5kIG51biB3aXJrbGljaCBuaWNodCBmdWVyClNwaWVsZXJydWJyaWtlbiBnZWRhY2h0LgpCZXNzZXJlIERpY2ghCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVyc2NocmVja3Q/IDspIChLYXJpYywgIDYuIFNlcCAxOTk5LCAwNDowNTowMSk6CkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiB3dWFhYWguLmZydWVoc3R1ZWNrc2Zlcm5zZWhlbiBmYWVuZ3QgYW4KTmV2b2sgdGVpbHQgRGlyIG1pdDogd3VhaGFoYWhhaGFoYQpHbm9tZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCmRhIGhhdCBzaWNoIHdvaGwgd2VyIGVyc2NocmVja3QgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGhhdCB3YXMuLiAoWm9vaywgIDYuIFNlcCAxOTk5LCAwNzo0MDoxNCk6Cn4jISBybj1Hb2xhcyBydD05MzY2MDMzNjAgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTM2MTk2OTkyCj4gaWNoIG11c3MgbWljaCBtYWwgb3V0ZW4gLSBuZWluIG5pY2h0IGRhcywgZ25vbWUhIC0gaWNoIGhhYmUgbmV1bGljaCB0dWZmaSBuZQo+IGZyYWdlIGdlc3RlbGx0IHVuZCBzaWUgd29sbHRlIG1pciBkYWZ1ZXIgYW0gbGllYnN0ZW4gemVobiB2ZXJ3ZWlzZQo+IHJlaW5kcm9laG5lbiAtIHZvZWxsaWcgenUgcmVjaHQsIGFiZXIgZnJhZ3QgZWl1cmUgYXVzYmlsZGVyIHVuZCBoYWJ0CnZlcnRyYXVlbgoKU2llPyBBbHNvIGljaCBoYXR0ZSBUdWZmaSBhbHMga2xlaW5lbiBibHV0dmVyc2NobWllcnRlbiBad2VyZyBtYWVubmxpY2hlbgpHZXNjaGxlY2h0cyBpbiBFcmlubmVydW5nLi4uIAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtbW0gLi4uIChCb2luZywgIDYuIFNlcCAxOTk5LCAxMDoxNTo1NCk6ClBhZHJlaWMgc2FndDogaWNoIGtvbW1lIGNhbGkqIDopCkNhbGltZXJhIHNhZ3Q6IGphIGhpbnRlciBtaWNoIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBoYXQgd2FzLi4gKEJyYW5kaXIsICA2LiBTZXAgMTk5OSwgMTQ6MDA6NDYpOgp+IyEgcm49Wm9vayBydD05MzY2MDM2MTQgcmc9c2NobWFycm4KfiMhIHRpZD05MzYxOTY5OTIKSG1tbSwgYWxzbyBuYWphLi4uIFp3ZXJnZSB1bmQgaWhyIEdlc2NobGVjaHQgZWJlbiwgZGFzIGlzdCBkb2NoIGVoIHNvIGVpbmUKU2FjaGUgOi0pCgpCcmFuZGlyIC0gbGVpY2h0IHNwZXppaXN0aXNjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llZGVybWFsLi4uIChOb3Zhc3Rvcm0sICA2LiBTZXAgMTk5OSwgMTQ6NDU6MjUpOgpCb2luZyBzYWd0OiBobW0KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdXJjaHRlaW5mbG9lc3NlbmRlcyBIaWJiZWxpZyA/IChCcmFuZGlyLCAgNi4gU2VwIDE5OTksIDE1OjAzOjA1KToKcmtudWRkZWwgaGliYmVsaWcKRWluIGthbHRlciBTY2hhdWVyIGxhZXVmdCBEaXIgdWViZXIgZGVuIFJ1ZWNrZW4uCkR1IGtudWRkZWxzdCBIaWJiZWxpZyBhdXMgZGVyIEZlcm5lLgoKYWhqYSA6LSkKCkJyYW5kaXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN0cmF0ZWdpZS1TcGllbGUgKFJvY2h1cywgIDYuIFNlcCAxOTk5LCAxNTo0NTowMik6ClVudGVyIGh0dHA6Ly93d3cuYW5ndXNtLmRlbW9uLmNvLnVrL0FHREIvU3RyYXRlZ3kuaHRtbDoKU3RyYXRlZ3kKICBbLi4uXQogIFN0cmlwIFBva2VyIDMgCiAgWy4uLl0KCiAgKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVhcGVyLCBkZXIgT3JrIChCcmFud2VuLCAgNi4gU2VwIDE5OTksIDE2OjE1OjA3KToKRWluIE9yayBrb21tdCBhbi4KUmlrdXMgc2FndDogaGkgcmVhcGVyCnNjaGF1CkR1IGJpc3QgbnVuIGF1ZiBkZW0gV2VnIHp1ciBTdGFkdC4gQW0gV2VnZXNyYW5kIHN0ZWhlbiBodWVic2NoZSBCbHVtZW4uIER1CmZyZXVzdCBEaWNoIHNjaG9uIGluIGRpZSBTdGFkdCB6dSBrb21tZW4sIGRpZSBpbSBOb3JkZW4gdm9yIERpciBsaWVndC4gRHUKa2FubnN0IHZvbiBoaWVyIGRhcyBncm9zc2UgU3RhZHR0b3IgdW5kIHp3ZWkgU3RhdHVlbiBzZWhlbiwgZGllIG5lYmVuIGRlbSBUb3IKc3RlaGVuLiBTaWUgc2NoZWluZW4gZGFzIFRvciBpcmdlbmR3aWUgenUgYmV3YWNoZW4uIEVzIHNpZWh0IGZhc3Qgc28gYXVzLCBhbHMKd3VlcmRlbiBzaWUgRGljaCBiZW9iYWNodGVuLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4gCkVpbiBPcmsuClIgd2llIFJpa3VzIGlzdCB1cmxhdWJzKHVlYmVyKXJlaWYuCgpraWNoZXIKRHUga2ljaGVyc3QuIChXaWUgYWxiZXJuIHZvbiBEaXIpCj4gRWluIE9yayBncmluc3QgUmlrdXMgYW4uCmdyaW5zIHJlYXBlcgpEdSBncmluc3QgZGVuIE9yayBhbi4KPiBFaW4gT3JrIGtyaWVjaHQgdm9yIFJpa3VzIGltIFN0YXViLgpFaW4gT3JrIHNhZ3Q6IEljaCBiaW4gbmljaHQgUmVhcGVyLCBpY2ggYmluIGVpbiBPcmshCnMgaHVlYnNjaGUgdGFybnVuZwpEdSBzYWdzdDogaHVlYnNjaGUgdGFybnVuZwo+IEVpbiBPcmsga3JpZWNodCB2b3IgRGlyIGltIFN0YXViLgpncmlucwpEdSBncmluc3QuCj4gRWluIE9yayBzYWd0OiBNb3Jnb3RoIGhhdCBtaWNoIGdlc2NocmllYmVuLCBpY2ggYnVnZ2UgbnVyLCBzb25zdCBuaWNodHMhCmRlbmsgc3Bpb24KRHUgZGVua3N0ICAgLiBvIE8gKHNwaW9uKQo+IFJpa3VzIG5pY2t0IHp1c3RpbW1lbmQuCmxhY2gKRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgo+IFJpa3VzIHNhZ3Q6IGVyIGJlbGF1c2NodCB1bnMhClJpa3VzIHNhZ3Q6IHphcHBlbiAKRWluIE9yayBzYWd0OiBJQ0g/IQpFaW4gT3JrIHNhZ3Q6IG5pZW1hbHMhClJpa3VzIGZsdWVzdGVydCBEaXIgenU6IHNub29wZXIhCmdyaW5zIHJpa3VzCkR1IGdyaW5zdCBSaWt1cyBhbi4KPiB1IHJlYXBlcgogRGllc2VyIE9yayBnZWhvZXJ0IHp1ciBTdGFkdHdhY2hlLiBFciBwYXRyb3VsbGllcnQgZHVyY2ggZGllIGdhbnplIFN0YWR0IHVuZAogYWNodGV0IGRhcmF1ZiwgZGFzcyBuaWVtYW5kIGVpbmUgU3RyYWZ0YXQgYmVnZWh0LiBEdSBkZW5rc3QgYW4gZGllIFdhY2hlbiBpbgogTW91bG9raW4sIGRpZSBEaXIgdmllbCBzdGFlcmtlciBpbiBzY2htZXJ6bGljaGVyIEVyaW5uZXJ1bmcgc2luZC4gQWJlciBoaWVyCiBzY2hlaW50IGhhbHQgZGllc2UgQXVzcnVlc3R1bmcgenUgcmVpY2hlbiwgZGllIGRlciBPcmsgbWl0IHNpY2ggdHJhZWd0IHVuZAogYXVjaCBzaWNoZXIgZ3V0IGVpbnp1c2V0emVuIHdlaXNzLiBBdWZncnVuZCBzZWluZXIgQXVzYmlsZHVuZyB3ZWlzcyBlcgogbmF0dWVybGljaCBhdWNoLCB3aWUgbWFuIGJlc3NlcmUgUnVlc3R1bmcgdW5kIFdhZmZlbiBiZW51dHp0LiBHaWIgaWhtIGVpbgogZ3V0ZXMgU2Nod2VydCB1bmQgZXIgd2lyZCBlcyBtaXQgRnJldWRlIHp1ZWNrZW4uCiBFciBpc3QgYWJzb2x1dCBmaXQuCiBFciB0cmFlZ3QgZWluZW4gU2NoYWwgbWl0IGRlciBBdWZzY2hyaWZ0ICdZb3UnbGwgbmV2ZXIgd2FsayBhbG9uZScuCiBFciB0cmFlZ3QgYmVpIHNpY2g6CiA4NjIgTXVlbnplbi4gICAgICAgICAgICAgICAgICAgICAgICAgICBFaW4gUGFhciBPcmtzdGllZmVsIChhbmdlem9nZW4pLgogRWluIFNjaGxhZ3JpbmcgKGFuZ2V6b2dlbikuICAgICAgICAgICAgRWluZSBPcmt3ZXN0ZSAoYW5nZXpvZ2VuKS4KIEVpbiBTY2hsYWdyaW5nLiAgICAgICAgICAgICAgICAgICAgICAgIEVpbiBPcmtzY2h3ZXJ0IChnZXp1ZWNrdCkuCiAxMCBXdXJmc3Rlcm5lLiAgICAgICAgICAgICAgICAgICAgICAgICBFaW4gU2NoYWwgKGFuZ2V6b2dlbikuCiBFaW4gT3JraGVsbSAoYW5nZXpvZ2VuKS4gICAgICAgICAgIAoKRWluIE9yayB3ZWRlbHQgd2lsZCBtaXQgZWluZW0gJ1phcC1taWNoLWRvY2gnLUZhZWhuY2hlbgo+IHMgbmEsIGRhbm4gbWFjaCBtYWwgOykKRHUgc2Fnc3Q6IG5hLCBkYW5uIG1hY2ggbWFsIDspCj4gRWluIE9yayBlcmJsZWljaHQuCj4gRWluIE9yayBncmluc3QuCj4gRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyCnZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpMYXJzXSBSaWt1cyBoYXQgZ2VyYWRlIFJlYXBlciB1bWdlYnJhY2h0LgpbVG9kOlJpa3VzXSBHb3RjaGEhCltCZWlsZWlkOlRvd2VyXSBNYWdpZXIuLi4KW0JlaWxlaWQ6RFJFQU1FUl0gVXBzIT8KW0JlaWxlaWQ6R29sYXMgd2VpbnQgc2ljaCBkaWUgTGluc2VuIGF1cyBkZW4gQXVnZW4gdW5kIHNldHp0IHNpZSB3aWVkZXIgZWluLl0KW0JlaWxlaWQ6TGFyaW5hXSBvaAoKZ3JhdHVsaWVyZSByaWt1cwpEdSBncmF0dWxpZXJzdCBSaWt1cy4KPiBSaWt1cyBiZWRhbmt0IHNpY2ggYmVpIERpci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFhYWFhYWggamEgKEdyaW1raWQsICA3LiBTZXAgMTk5OSwgMDE6NTQ6MDQpOgpFYmVuIGFtIFNhbmR0aWdlcjoKS2FyaWMga251ZGRlbHQgZWluZSBMYXRlcm5lLCBlaW4gQWJiaWxkIERSRUFNRVJzLCBEUkVBTUVSLCBlaW5lIEFtcGVsLCBEaWNoCnVuZCBlaW5lbiBTYW5kdGlnZXIuCgpEZXIga251ZGRlbHQgamEgd29obCBhbGxlcywgb2RlciB3YXM/CgpHcmltS2lkICwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBYWFhYWFoIGphIChLYXJpYywgIDcuIFNlcCAxOTk5LCAwMTo1NDo1OCk6Cn4jISBybj1Hcmlta2lkIHJ0PTkzNjY2OTI0NCByZz1zY2htYXJybgp+IyEgdGlkPTkzNjY2OTI0NApoYWV0dGUgaWNoIHRvZXRlIGFsbGUgbWFjaGVuIHNvbGxlbj8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWFhYWFhaCBqYSAoR3JpbW1hbiwgIDcuIFNlcCAxOTk5LCAwMTo1Njo1Nik6Cn4jISBybj1LYXJpYyBydD05MzY2NjkyOTggcmc9c2NobWFycm4KfiMhIHRpZD05MzY2NjkyNDQKRHUgaGFldHRlc3QgZGVuIEt1ZXJ6ZXJlbiBnZXpvZ2VuLgoKRWluZSBMYW1wZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd3VuZGVyIG9oIHd1bmRlciAoS2FyaWMsICA3LiBTZXAgMTk5OSwgMDI6MDc6MTYpOgogIC4uLi5ub3JtYWwvU2FldXJlc3BlZXIuIFNhZXVyZWRhZW1vbi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHp1IEJyZWkKRGllIEFkYW1hbnRzY2h1aGUgc2NodWV0emVuIERpY2ggaXJnZW5kd2llLgoKYWVoLi4uaWNoIGhhdHRlIGtlaW5lIGFkYW1hbnRzY2h1aGUgYW4uLgphYmVyIGRhcyBpcyBoaWVyIGphIGFuc2NoZWluZW5kIGVnYWwgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNlbGJzdCBkaWUgZGFlbW9uZW4gd29sbGVuIG1pY2ggbG9zd2VyZGVuIC4uLiAoUmFuaSwgIDcuIFNlcCAxOTk5LCAxMzo1NTozOSk6CkludGFyYmlyIHNhZ3Q6IEFsc28sIG51bi4gTGF1c2NoZSBtZWluZW4gV29ydGVuOiBWZXJnaXNzIGVzIGxpZWJlci4gUm9iaW4gaXN0CkludGFyYmlyIHNhZ3Q6IGh5ZHJhbWFlc3NpZyB2aWVsIHN0YWVya2VyIGFscyBEdS4gRGllIFJ1ZXN0dW5nIFJvYmlucyBpc3QKSW50YXJiaXIgc2FndDogdW5nbGF1YmxpY2ggdmllbCBiZXNzZXIgYWxzIERlaW5lLiBadSBndXRlciBMZXR6dDogRGVpbmUgV2FmZmUKSW50YXJiaXIgc2FndDogaXN0IGRlciByZWluc3RlIFdpdHohIERhbWl0IGtvbW1zdCBEdSBnZWdlbiBSb2JpbiBuaWNodCBhbi4KSW50YXJiaXIgc2FndDogSWdpdHQsIFJvYmluIGlzdCBoZWlsaWdlciBhbHMgYWxsIGRhcyBLbGVyaWtlcnBhY2sgenVzYW1tZW4hCkludGFyYmlyIHNhZ3Q6IEJSSU5HIERBUyBWSUVIIFVNISAKClJhbmksIGdyaW5zZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdG9sbGVyIEtPLVNjaGxhZy4uLiAoR25vbWUsICA3LiBTZXAgMTk5OSwgMTk6MTY6NTcpOgpEdSBtYWNoc3QgZWluZW4gZ2VsdW5nZW5lbiBLTy1TY2hsYWcgZ2VnZW4gZGVuIFp5a2xvcC4KPT09PT0+IDUwJSA8PT09PT0KICBEdSB6ZXJzY2htZXR0ZXJzdCBkZW4gWnlrbG9wIGluIGtsZWluZSBTdHVlY2tjaGVuLgogIER1IHRyaWZmc3QgZGVuIFp5a2xvcCBzZWhyIGhhcnQuCiAgRGVyIFp5a2xvcCBrcmF0enQgRGljaC4KCndpcmtsaWNoIHNlaHIgZ2VsdW5nZW4sIGRlciBLTy1zY2hsYWcuLi4gKmdydW1tZWwqCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHRvbGxlciBLTy1TY2hsYWcuLi4gKEhvdXNlaG9sZGVyLCAgNy4gU2VwIDE5OTksIDE5OjE5OjI3KToKfiMhIHJuPUdub21lIHJ0PTkzNjczMTgxNyByZz1zY2htYXJybgp+IyEgdGlkPTkzNjczMTgxNwphbmdlYmEgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFc/IChEaWVkZXIsICA3LiBTZXAgMTk5OSwgMTk6NTQ6NDUpOgpBYmVudGV1ZXI6QXBzdV0gaGloaSBkaWUgcGFyYXdlbHRibHVtZSBpcyBqYSBmaWVzIDopClRvZDpMYXJzXSBFaW4gRGllIGVpZ2VuZSBVbmZhZWhpZ2tlaXQgaGF0IGdlcmFkZSBBcHN1IHVtZ2VicmFjaHQuCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFc/IChEaWVkZXIsICA3LiBTZXAgMTk5OSwgMTk6NTU6MTcpOgp+IyEgcm49RGllZGVyIHJ0PTkzNjczNDA4NSByZz1zY2htYXJybgp+IyEgdGlkPTkzNjczNDA4NQpQUzogTWlzdCBUZXJtaW5hbCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZWluZSB3YWhyZSBzZWhlcmluLi4uIChHbm9tZSwgIDcuIFNlcCAxOTk5LCAyMToyNjowMyk6CltTZWhlcjpMYXJhbmlzIHNjaGF1dCBpbnRlcmVzc2llcnQgZGllIERlY2tlIGFuXQpbVG9kOkxhcnNdIERlciBGYWxsIGF1cyBhbGxlbiBXb2xrZW4gaGF0IGdlcmFkZSBHb3RyZWsgdW1nZWJyYWNodC4KCm5pY2h0IHNjaGxlY2h0Li4uCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0dGVyPyAoTHVnLCAgOC4gU2VwIDE5OTksIDAwOjQ1OjM1KToKCltBYmVudGV1ZXI6Q29uY2hpXSBnZWh0IGRhcyBhdWNoIG5ldHRlciBhbmFjcmlvbj8/Pz8KW0FiZW50ZXVlcjpMdWddIERhIGhldWxlbiBzaWUgd2llZGVyIHp1IDJ0CltBYmVudGV1ZXI6Q29uY2hpXSBoYWx0IGRpZSBmcmVzc2UgbHVnCltBYmVudGV1ZXI6THVnXSBXYXJ1bSBzb2xhbmdlIER1IGFtIEZsZW5uZW4gYmlzdC4uLgpDb25jaGkgdGVpbHQgRGlyIG1pdDogZHUgYmxvZWRlciB3aWNoc2VyIGFtIGxpZWJzdGVuIHd1ZXJkZSBpY2ggZGlyIGluIGRlaW5lbgpDb25jaGkgdGVpbHQgRGlyIG1pdDogZmV0dGVuIGFyc2NoIHRyZXRlbiB1bmQgZGFuYWNoIGluIGRpZSBlaWVyCgpEYSB3ZXJkZW4gZ2VoZWltZSBGcmF1ZW53dWVzY2hlIGVpbmZhY2ggcGVyIHRlaWxlIG1pdCBnZWFldXNzZXJ0Li4uCgpTb3dhcwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXR0ZXI/IChBbmF0b2wsICA4LiBTZXAgMTk5OSwgMDA6NTg6NDgpOgp+IyEgcm49THVnIHJ0PTkzNjc1MTUzNSByZz1zY2htYXJybgp+IyEgdGlkPTkzNjc1MTUzNQpWZXJkYW1tdCwgd29oZXIgd2Vpc3Mgc2llLCBkYXNzIER1IGVpbmVuIGZldHRlbiBBcnNjaCBoYXN0PyEKTHVjaCAtIER1IGJpc3QgYXVmIHp1IHZpZWxlbiBTZW1pbmFyZW4gZ2V3ZXNlbiEgOm8pCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldHRlcj8gKEx1ZywgIDguIFNlcCAxOTk5LCAwMTowMDozNik6Cn4jISBybj1BbmF0b2wgcnQ9OTM2NzUyMzI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM2NzUxNTM1CgpOYSBpY2ggYmluIGRvY2ggaW5zZ2VzYW10IGZldHQsIGRhIGthbm4gc2ljaCBkaWUgc2VsYnN0IGRpZSBOdWxsIGRhcyBkZW5rZW4uCgpGaWRTCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVpbmUgUmFkaW8gaXMga2FwdXR0ICp3YWVoaHF1ZW5nZWwqIChNb3Jnb3RoLCAgOC4gU2VwIDE5OTksIDA1OjQ2OjAxKToKSWlpaWlpaGhoaCwKZGEgbWFjaCBpY2ggZ3JhZCBtZWluIHJhZGlvIGFuIHVuZCBkZW5rLCBkYXNzIHdlbmlnc3RlbnMgRWluc0xpdmUgZ3V0ZSBNdXNpawphbSBmcnVlaGVuIE1vcmdlbiBicmluZ3QsIGFiZXIgbml4IGlzLiBEYSBicmluZ2VuIGRpZSB1bSBkaWVzZSBaZWl0IHNjaG9uCmRpZXNlIGtvbWlzY2hlIHJvdGhhYXJpZ2Ugc2Nod2Fuemxvc2UgU2Nod3VjaHRlbCBhdXMgSXJsYW5kIChnbGF1YiBpY2gKenVtaW5kZXN0KS4KCk1vcmdvdGgsIGRlciB6d2FyIHRvdGFsIG11ZWRlLCBhYmVyIHRyb3R6ZGVtIGZyb2ggaXN0LCBub2NoIGtlaW5lbiBLYWZmZQpnZWhhYnQgenUgaGFiZW4uLi4KV0FBQUFBQUFBQUhISEgsIGpldHp0IGF1Y2ggbm9jaCBTY29vdGVyICprb3R6KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1laW5lIFJhZGlvIGlzIGthcHV0dCAqd2FlaGhxdWVuZ2VsKiAoVGVkZHksICA4LiBTZXAgMTk5OSwgMTI6NTg6NTcpOgp+IyEgcm49TW9yZ290aCBydD05MzY3Njk1NjEgcmc9c2NobWFycm4KfiMhIHRpZD05MzY3Njk1NjEKRGFzIHNhZ3QgZGVyIE1hbm4gbWl0IGRlbiBnZXBmbGFlaHRlbiBGcmF1ZW4gYXVmIGRlbSBULVNoaXJ0IHVuZCBkZW4KU3BpY2UtR2lybHMgaW0gQ0QtU2NocmFuay4KClRlZGR5LCB1ZWJlciBERU4gTXVzaWtnZXNjaG1hY2sgaW1tZXJub2NoIGRlbiBLb3BmIHNjaHVldHRlbG5kIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWVpbmUgUmFkaW8gaXMga2FwdXR0ICp3YWVoaHF1ZW5nZWwqIChCYW1idWxrbywgIDguIFNlcCAxOTk5LCAxMzoxOToxOCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkzNjc2OTU2MSByZz1zY2htYXJybgp+IyEgdGlkPTkzNjc2OTU2MQpXZW4gZ2VuYXUgbWVpbnN0IER1PyBFcyBnaWJ0IHZpZWxlIHJvdGhhYXJpZ2UgaW4gSXJsYW5kLi4uCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNZWluZSBSYWRpbyBpcyBrYXB1dHQgKndhZWhocXVlbmdlbCogKFRlZGR5LCAgOC4gU2VwIDE5OTksIDEzOjI5OjU2KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTkzNjc5Njc1OCByZz1zY2htYXJybgp+IyEgdGlkPTkzNjc2OTU2MQpPaCBqYSB1bmQgbWl0IGdydWVuZW4gQXVnZW4gdW5kIGZsYW1tZW5kZW0gQmxpY2sgdW5kLi4uCgpUZWRkeSwgc2Nod2Flcm10CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNZWluZSBSYWRpbyBpcyBrYXB1dHQgKndhZWhocXVlbmdlbCogKEJhbWJ1bGtvLCAgOC4gU2VwIDE5OTksIDEzOjM0OjExKToKfiMhIHJuPVRlZGR5IHJ0PTkzNjc5NzM5NiByZz1zY2htYXJybgp+IyEgdGlkPTkzNjc2OTU2MQpWb24gd2VtIHJlZGV0IGlocj8KCkJhbWJ1bGtvLCB1bndpc3NlbmQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpciB3YXJlbiBlcyBuaWNodCEhISEgKFRzdW5hbWksICA4LiBTZXAgMTk5OSwgMTQ6NTU6MjApOgp1bmdla3Vlcnp0OgoKTGV0aWMgYW4gYWxsZSBNYWdpZXI6IGhvZXJ0IG1pY2ggZWluYSA/ICpncnVlYmVsKgpbVG9kOkxhcnNdIFNjaHdlcmUgU3RlaW5icm9ja2VuIGhhYmVuIGdlcmFkZSBMZXRpYyB1bWdlYnJhY2h0LgpbVG9kOlNjaHdlcmUgU3RlaW5icm9ja2VuIGJyaW5nZW4gZGVuIFVudm9yc2ljaHRpZ2VuIGRlbiBUb2QgIV0KCgpOZWluLCBuZWluLCBuZWluLCB3aXIgaGFiZW4ga2VpbmUgU3RlaW5icm9ja2VuIGdlc2NobWlzc2VuLiBFaHJsaWNoIDopCk1hZ2llciB0dW4gc28gZXR3YXMgbmljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2lyIHdhcmVuIGVzIG5pY2h0ISEhISAoTGV0aWMsICA4LiBTZXAgMTk5OSwgMTU6MDI6MDApOgp+IyEgcm49VHN1bmFtaSBydD05MzY4MDI1MjAgcmc9c2NobWFycm4KfiMhIHRpZD05MzY4MDI1MjAKaGFyaGFyaGFyIC4uLm5hamEuLm1hY2ggbWFsIGRpZSBmcmFnZSB2b24gbWlyIHZvcmhlciBhdWNoLi5kZXIgdG9kIHdhciBtZWhyCm9kZXIgd2VuaWdlciBiZWFic2ljaHRpZ3QuLndvbGx0ZSBzZWhuIG9iIGxhcnMgbWVpbmUgc2FjaGVuIGhhdC4uCkxlVGljLCBkZXIgZXR3cyB2ZXJ3aXJydCBpc3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2lyIHdhcmVuIGVzIG5pY2h0ISEhISAoVHN1bmFtaSwgIDguIFNlcCAxOTk5LCAxNTowMzozNCk6Cn4jISBybj1MZXRpYyBydD05MzY4MDI5MjAgcmc9c2NobWFycm4KfiMhIHRpZD05MzY4MDI1MjAKSHVjaCwgamV0enQgc3RlcmJlbiBkaWUgU3BpZWxlciBzY2hvbiBmcmVpd2lsbGlnLiBXYXMgcGFzc2llcnQgZGVubiBudW4KYXVzIHVuc2VyZW4gdG90YWwgZ3V0IHZlcnN0ZWNrdGVuIHVuZCBsaWViZXZvbGwgcHJvZ3JhbW1pZXJ0ZW4gVG9kZXNmYWxsZW4sCmluIGRpZSBtYW4gX3VuYmVhYnNpY2h0aWd0XyByZWluc3RvbHBlcm4gc29sbHRlLi4uLiA/Pz8/CgpUc3UsIHZlcnd1bmRlcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuc2VyIFBhZHJlaWMgbWFsIHdpZWRlciA7LSkgKFRlZGR5LCAgOC4gU2VwIDE5OTksIDE1OjM2OjU5KToKUGFkcmVpYyBzYWd0OiBpY2ggZGFjaHRlIGVpZ2VudGxpY2ggUF9TSE9PVElOR19XQyBzZWkgdm9uIG1pciwgYWJlciBkYXMKUGFkcmVpYyBzYWd0OiB2ZXJzdGVoIGljaCBzbyBuaWNoCgpUZWRkeSwgd3VuZGVydCBzaWNoIGthdW0gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZWdhdGl2ZSBTY2h3aW5ndW5nZW4gYXVzIGRlciBGZXJuZT8gKENpc291LCAgOC4gU2VwIDE5OTksIDE4OjUwOjI0KToKRHUgYmVkYW5rc3QgRGljaCBiZWkgT3JrdG9ldGVyLgpPcmt0b2V0ZXIgdGVpbHQgRGlyIG1pdDogZHUga2FubnN0IFRvd2VyIGltIFNjaGVtZW5yZWljaCBoZWxmZW4sIHdlbm4gZHUKT3JrdG9ldGVyIHRlaWx0IERpciBtaXQ6IHdpbGxzdCA6KQpEdSB0ZWlsc3QgT3JrdG9ldGVyIG1pdDogaWNoIHdhciBkYSBoYWx0IG5vY2ggbmllLCBhYmVyIGljaCBrYW5uIGdlcmggbWl0Z2VoZW4KVG93ZXIgdGVpbHQgRGlyIG1pdDoga29tbXN0IGR1IGRhbm4genUgbWlyID8gKFBhcmF3ZWx0LCBEcmFrb25pZW4pClRvd2VyIHRlaWx0IERpciBtaXQ6IGhpZXIgaXN0IGRlciBFaW5nYW5nIDopCkR1IHRlaWxzdCBUb3dlciBtaXQ6IFdhYWFhaCwgaWNoIHN0ZXJiIGRhIGFiZXIKIFRvZDpMYXJzOiBFaW4gcmllc2lnZXIgU2NoZW1lbiBoYXQgZ2VyYWRlIFRvd2VyIHVtZ2VicmFjaHQuCgoqd2FhYWFhYWFoKgoKQ2lzb3UgLSBzY2hhZW10IHNpY2gsIGhhdCB3b2hsIHp1dmllbCBydW1nZW1lbW10CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmVnYXRpdmUgU2Nod2luZ3VuZ2VuIGF1cyBkZXIgRmVybmU/IChEaWVkZXIsICA4LiBTZXAgMTk5OSwgMTg6NTI6MDYpOgp+IyEgcm49Q2lzb3UgcnQ9OTM2ODE2NjI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM2ODE2NjI0CkZpbmdlciBkaWNoIG1hbCwgd2VjbGhlIEdpbGRlIGR1IGhhc3QgLSBkYSBrYW5uIG1hbiBlaW5mYWNoIG5pY2h0IHp1dmllbAptZW1tZW4gOikKCkRpZWRlciwgd2VkZWx0IG1pdCBlaW5lbSAiSGV1bCBkb2NoISItRmFlaG5jaGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5lZ2F0aXZlIFNjaHdpbmd1bmdlbiBhdXMgZGVyIEZlcm5lPyAoQ2lzb3UsICA4LiBTZXAgMTk5OSwgMTk6MDE6MjQpOgp+IyEgcm49RGllZGVyIHJ0PTkzNjgxNjcyNiByZz1zY2htYXJybgp+IyEgdGlkPTkzNjgxNjYyNAoKSW0gR2VnZW5zYXR6IHp1IHNvIG5lbSBPcHBhIHdpZSBEaXIgYnJhdWNoIGljaCBtaWNoIHp1bWluZGVzdCBuaWNoIGZpbmdlcm4sIHVtCm1pY2ggenUgZXJpbm5lcm4sIHdlbGNoZSBHaWxkZSBpY2ggaGFiIDspLgoKCldvYmVpIC0ga29lbm5lbiBzaWNoIENoYW90ZW4gdWViZXJoYXVwdCB3YXMgbWVya2VuPyA6LSkKCkNpc291IC0ga2FubiB3ZW5pZ3N0ZW5zIGlocmUgTVBzIG5vY2ggdmVyd2VuZGVuLCBiZWkgT3BhcyBzY2hlaW5lbiBkaWUgamEgbml4Cm1laHIgenUgYnJpbmdlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmVnYXRpdmUgU2Nod2luZ3VuZ2VuIGF1cyBkZXIgRmVybmU/IChEaWVkZXIsICA4LiBTZXAgMTk5OSwgMTk6MTM6MTkpOgp+IyEgcm49Q2lzb3UgcnQ9OTM2ODE3Mjg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM2ODE2NjI0CkRhcyBtdXNzIGljaCBhdWNoIG5pY2h0IC0gbXVzc3RlIGljaCBsZWRpZ2xpY2ggYmVpIERpciwgdW0gZGFubiBldHN0YXVudApmZXN0enVzdGVsbGVuLCBkYXNzIGF1Y2ggRHUgenUgZGllc3NlciBGbGVubmdpbGRlIGdlaG9lcnN0Li4uIDopCgpEaWVkZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNZWluZSBSYWRpbyBpcyBrYXB1dHQgKndhZWhocXVlbmdlbCogKEthcnRvZmZlbCwgIDguIFNlcCAxOTk5LCAxOTo0NjozNyk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTkzNjc2OTU2MSByZz1zY2htYXJybgp+IyEgdGlkPTkzNjc2OTU2MQoKRWlucyBMaXZlIGJyaW5ndCBncnVuZHNhZXR6bGljaCBrZWluZSBndXRlIE11c2lrLCB3YXMgZXJ3YXJ0ZXN0IER1PwoKJ1RvZmZlbCAtc2NobWVpc3N0IGRlbiBDRC1QbGF5ZXIgYW4gd2VubiBzaWUgZ3V0ZSBNdXNpayB3aWxsCisrCn4KZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc3RhcmtlIGFuZmFlbmdlciA6KSAoRGllZGVyLCAgOC4gU2VwIDE5OTksIDIxOjQ2OjEwKToKRWNob29vbyB0cml0dCBHYXN0MS4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEdhc3QxLgpFY2hvb29vIHNhZ3Q6IGhlaGUKRHUgc2Fnc3Q6IGVmZmVrdGl2CgoKRGllZGVyLCBzaWNoIHVlYmVyIGRpZSBuZXVlbiBXdWVyc3RlIHd1bmRlcm5kIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCcmF2ZXIgWmF1YmVyZXIgKE5ldm9rLCAgOS4gU2VwIDE5OTksIDAzOjM0OjIzKToKW0FsbGdlbWVpbjpTdHJlYXdrY2V1cl0gZ2FhYW56IHJ1aGlnIGJsZWltClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBTdHJvaGFsbS4KU3Ryb2hhbG0gdmVyZm9sZ3QgZWluIGZsdWVjaHRlbmRlcyBHYWVuc2VibHVlbWNoZW4gaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4uCgoKSG1tbW1tIHNvbGx0ZW4gd2lyIGF1Y2ggbWFsIGJlaSBkZW4gVHJ2ZXMgaGFiZW4gZGllc2VuIGJlZGluZ3VuZ3Nsb3NlbgpHZWhvcnNhbS4uLi4KCk5ldm9rLCBzaWNoIGRhcyBmdWVyIGRpZSBBenViaXMgbWVya2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmFtaWxpZSA/PyAoTW9yZ290aCwgIDkuIFNlcCAxOTk5LCAxMzoxNTozNSk6CkJyYW5kaXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkxhbmZlYXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhClNpbHZhbmEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpNKiB3dW5kZXJ0IHNpY2ggdWViZXIgc2VpbmUgbWFtaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcHJvbXB0ZXIgU2VydmljZSAoV2ltLCAgOS4gU2VwIDE5OTksIDEzOjIzOjA0KToKbm4KTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4KMTM6MjIKPiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBBbGluZSBpbiBSdWJyaWsgInRyZWZmZW4iLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNZWluZSBSYWRpbyBpcyBrYXB1dHQgKndhZWhocXVlbmdlbCogKFN1YmxpbWUsICA5LiBTZXAgMTk5OSwgMTc6MTM6NDMpOgp+IyEgcm49VGVkZHkgcnQ9OTM2Nzk1NTM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM2NzY5NTYxClVhYWFhYWgsIGd1dGVuIE1vcmdlbiAuLgoKCkljaCB3dWVyZGUgYWJlciBkb2NoIGdlcm5lIHdpc3Nlbiwgd2VuIGR1IG1pdCAiZGllc2Uga29taXNjaGUgcm90aGFhcmlnZQpzY2h3YW56bG9zZSBTY2h3dWNodGVsIiBtZWluc3QuCkRpZSBLZWxseSBGYW1pbHkga2FubidzIGphIG5pY2h0IHNlaW4uIERhcyBpc3QgImRpZXNlIGtvbWlzY2hlIHJvdGhhYXJpZ2UKc2Nod2Fuemxvc2UgU2Nod3VjaHRlbCAqIDE1IDspCgpTdWJsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNZWluZSBSYWRpbyBpcyBrYXB1dHQgKndhZWhocXVlbmdlbCogKEdyaW1tYW4sICA5LiBTZXAgMTk5OSwgMTc6MTg6MjQpOgp+IyEgcm49U3VibGltZSBydD05MzY4OTcyMjMgcmc9c2NobWFycm4KfiMhIHRpZD05MzY3Njk1NjEKRGllIEtlbGx5J3Mgc2luZCBibG9uZCwgdW5kIG5pY2h0IHJvdCAuLi4gdW5kIHNjaHdhbnpsb3M/IHNpZSBiZW5laG1lbiBzaWNoCnp3YXIgc2VociBzY2hlaXNzZSAuLi4gYWJlciBzY2h3YW56bG9zPwoKR3JpbU1hbiAsIGlzdCBzaWNoIG5pY2h0IHNpY2hlciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSnVzdCBpbiBkaWVzZW0gTW9tIDspIChTdWJsaW1lLCAgOS4gU2VwIDE5OTksIDE3OjMwOjU3KToKQWxsZ2VtZWluIFN1YmxpbWUgIERlciBNUEEgaXN0IGphIG1hbCB3aWVkZXIgdm9sbCBnZXdvcmRlbiA7KSBlbmRsaWNoIHdhcyB6dQpBbGxnZW1laW4gU3VibGltZSAgbGVzZW4uLi4KPiBubgpOaXggbmV1ZXMgYXVmIGRlciBXZWx0Lgo+IGFyZ2wKRHUgYXJnbHN0IGVpbiB3ZW5pZyB2b3IgRGljaCBoaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZWdhdGl2ZSBTY2h3aW5ndW5nZW4gYXVzIGRlciBGZXJuZT8gKEphc29ucmlnaWQsIDEwLiBTZXAgMTk5OSwgMDc6MTI6MzgpOgp+IyEgcm49Q2lzb3UgcnQ9OTM2ODE3Mjg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM2ODE2NjI0CgpIbSwgZGFzIGlzdCBiZWkgQ2hhb3RlbiBlY2h0IGVpbiBQcm9ibGVtLCBhYmVyIHdvenUgaGFiZW4gZGllIGRlbm4gc29uc3QgaWhyZQpEYWVtb25lbiA/Pz8KCldpZSB3YWVyZSBlcyBtaXQgIlRpbWV0cmkgKFRNKSwgZGVyIGxlYmVuZGUgVGVybWlua2FsZW5kZXIiID8/CgpEYW5uIHNvbGx0ZSBhdWNoIERpZWRlciB3aWVkZXIgd2lzc2VuLCBpbiB3ZWxjaGUgR2lsZGUgZXIgZ2Vob2VydCwgbmljaHQKenVsZXR6dCwgd2VubiBpaG0gc2VpbiBUZXJtaW5rYWxlbmRlciBpbiBkZW4gSGludGVybiB0cml0dCwgd2VubiBlciB6dSB3ZW5pZwpMUHMgaGF0IC4uLiBEYXMga29lbm50ZSBkYW5uIGF1Y2ggZGVuIFRlZGR5IGVyc2V0emVuIC4uLiAqZ3J1ZWJlbCoKCk5hamEsIHdpZSBhdWNoIGltbWVyCgpKYXNvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmVnYXRpdmUgU2Nod2luZ3VuZ2VuIGF1cyBkZXIgRmVybmU/IChNb3Jnb3RoLCAxMC4gU2VwIDE5OTksIDA3OjE1OjQzKToKfiMhIHJuPUphc29ucmlnaWQgcnQ9OTM2OTQ3NTU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM2ODE2NjI0CldlbGNoZW4gbWVpbnN0IER1IGRlbm4gamV0enQ/IERpZXNlbiBrbGVpbmVuIG5pZWRsaWNoZW4gd3VzY2hlbGlnZW4gVGVkZHksIGRlcgppbW1lciBiZWhhdXB0ZXQgZXIgc2VpIGRlciBncm9lc3N0ZSBDaGFvdCwgb2RlciBkZW4gaGFlc3NsaWNoZW4sIGFiYXJ0aWdlbiwKc2NobWllcmlnZW4gdW5kIHZlcnNjaGxlaW10ZW4gVGVkZHksIGRlbiBlcyBudXIgaW4gZGVyIFVudGVyd2VsdCBmdWVyIHNvIGVpbmUKa29taXNjaGUgUXVlc3QgZ2lidD8KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgR29ldHRlciBtdWVzc2VuIHZlcnJ1ZWNrdCBzZWluLi4uIChHdWlsZG8sIDEwLiBTZXAgMTk5OSwgMTA6MTQ6NDIpOgpHZXJhZGUgYmVpbSBCZXRlbjoKCkR1IGJldGVzdCwgZGFzcyBqZXR6dCBibG9zcyBrZWluIGFnZ3Jlc3NpdmVyIEdlZ25lciBoZXJlaW4ga29tbWVuIG1vZWdlLgpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KRHUgYmVlbmRlc3QgRGVpbiBHZWJldCBtaXQgZWluZW0gZXJsZWljaHRlcnRlbiAnRW5kbGljaCcKCkd1aWxkbywgZ3JpbnN0IGltbWVyIG5vY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXPyAoQXBzdSwgMTAuIFNlcCAxOTk5LCAxNToxNzo1OCk6Cn4jISBybj1EaWVkZXIgcnQ9OTM2NzM0MDg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM2NzM0MDg1CipyYWV1c3BlciogYWxzbyBkYSBpcyBqYSB3b2hsIGVpbmlnZXMgZ2VzY2huaXR0ZW4uIERlbiBMYXJzYmVzdWNoIGhhYiBpY2ggZGVtClBhcmEtQnVlcmdlcm1laXN0ZXIgdm9uIE9ya2hhdXNlbiB6dSB2ZXJkYW5rZW4sIHVuZCB6d2FyIGdlcmF1bWUgWmVpdCBzcGFldGVyCjopCgpBcHN1LCB3dXNjaGVsdCBPcGEgRGllZGVycyBsZXR6dGUgMyBUb3VwZXRoYWFyZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp3ZXJnZSBoYWx0IC4uLiAoR3JpbW1hbiwgMTAuIFNlcCAxOTk5LCAxNTozMjoxNSk6CkdyYWQgZHJ1ZWJlciBnZXN0b2xwZXJ0IDopCgpJbSBGcnVlaHRhdSwgZGllIFp3ZXJnZSwgc2llIGdlaGVuLCBGQUxMRVJBIApTaWUgdGF1bWVsbiwgc2llIHNjaHdhbmtlbiwgc2llIGdyb2VobGVuLCBGQUxMRVJBCkphIHNlaHQgd2llIGtydW1tIHNpZSBsYXVmZW4sCmRlbm4gZ2VzdGVybiB3YXJuIHNpZSBzYXVmZW4uCklociBrZW5udCBkYXMgaWhyIHdhcnQgZGFzIGphIGF1Y2ggc2Nob24gbWFsLgoKVm9tIEZyZWliaWVyLCBkaWUgWndlcmdlLCBzaWUga29tbWVuLCBGQUxMRVJBCnp1IGVpbmVyIGFuZHJlbiBLbmVwaWUgd29sbG4gc2llIHppZWhuLCBGQUxMRVJBClNpZSBzaW5kIGdyYWQgcmF1c2dlZmxvZ2VuLAp3ZWlsIHNpZSBzaWNoIG5hY2t0IGF1c3pvZ2VuLgpEZXIgU3VmZiBtYWNodCBzaWUgYWxsZSBwZXJ2ZXJzLCBGQUxMRVJBIQoKSW0gRnJ1ZWh0YXUsIGRpZSBad2VyZ2UsIGJsZWlibSBzdGVobiwgRkFMTEVSQQpTaWUga290emVuIGluIGRpZSBCdWVzY2hlIHVuZCBkaWUgU2VlbiwgRkFMTEVSQQpXYXMgc29sbCBtYW4gZGF6dSBzYWdlbiwKc2llIGtvZW5uIGhhbHQgbmljaHRzIHZlcnRyYWdlbi4KTmFqYSwgWndlcmdlIHNpbmQgbnVtYWwgYmxvZWQsIEZBTExFUkEgIQoKCiA+Pj5odHRwOi8vd3d3LmRyYWNoZW5pbnNlbC53ZXJsLmNvbS9pbnNlbC9ycGdmdW4vcnBnZnVuLmh0bTw8PApVbmJlZGluZ3QgcmVpbmd1Y2tlbiwgc2VociBuZXR0ZSBTcHJ1ZWNoZSBmdWVyIFJvbGxlbnNwaWVsZXIgZHJhdWYsIGljaCBoYWIKZ3V0IGdlbGFjaHQKCkdyaW1NYW4gLCAqcm90ZmwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWndlcmdlIGhhbHQgLi4uIChZZW5kaSwgMTAuIFNlcCAxOTk5LCAxNTozNTo0OSk6Cn4jISBybj1HcmltbWFuIHJ0PTkzNjk3NzUzNSByZz1zY2htYXJybgp+IyEgdGlkPTkzNjk3NzUzNQpVbSBkaWUgZ2FuemVuIHVyYWx0ZW4gS2FtZWxsZW4gd2llZGVyYXVmenV3YWVybWVuOgoKaHR0cDovL3d3dy5oZWltMS50dS1jbGF1c3RoYWwuZGUvfndvbGZpL251bW1lcjEuaHRtbAoKV2VubiBtYW4gYWxsZSBmdWVuZiBTZWl0ZW4gaGludGVyZWluYW5kZXJ3ZWcgbGllc3QsIGRhbm4gaGF0IG1hbiBLcmFlbXBmZSBpbQpad2VyW2d8Y2hdZmVsbC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUgKE5ldm9rLCAxMC4gU2VwIDE5OTksIDE3OjExOjU3KToKCldpbSB0ZWlsdCBEaXIgbWl0OiB3aWUsIGljaCBiaW4gYW5ub3JtYWw/CgpSZWRlbiBpc3QgU2lsYmVyLCBTY2h3ZWlnZW4gaXN0IEdvbGQgdW5kIGluIGRpZXNlbSBGYWxsIGF1Y2ggZGFzIEtsdWVnc3RlIDspCgpOZXZvaywgZGVyIG5hY2ggZGVyIFdlaXNoZWl0ICd3ZWl0IHZvbSBTY2h1c3MgZ2lidCBhbHRlIEtyaWVnZXInIGxlYnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPaG5lIFdvcnRlIChXaW0sIDEwLiBTZXAgMTk5OSwgMTc6MTQ6NTEpOgp+IyEgcm49TmV2b2sgcnQ9OTM2OTgzNTE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM2OTgzNTE3Ck5ldm9rLCBEdSBsZWJzdCBnZWZhZWhybGljaC4KQWJlciB0cm9lc3RlIERpY2gsIER1IGxlYnN0IG5pY2h0IG1laHIgbGFuZ2UuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTUZDIFByb2dyYW1taWVyLVJpY2h0bGluaWVuIChSb2NodXMsIDEwLiBTZXAgMTk5OSwgMTk6MzU6MzQpOgoKCiAgICAgICAgICAgICBMaW1pdCB0aGUgVXNlIG9mICJQcml2YXRlIiBpbiBZb3VyIENsYXNzZXMgSXQgaXMgaW1wb3J0YW50IHRoYXQKICAgICAgICAgICAgIHlvdXIgdXNlcnMgYmUgYWJsZSB0byB1c2UgeW91ciBNRkMtZnJpZW5kbHkgY2xhc3NlcyBpbiB3YXlzCiAgICAgICAgICAgICB0aGF0IHlvdSBtaWdodCBub3QgaGF2ZSBvcmlnaW5hbGx5IGludGVuZGVkLiBCeSBrZWVwaW5nIHRoZQogICAgICAgICAgICAgbWFqb3JpdHkgb2YgbWVtYmVyIGZ1bmN0aW9ucywgZGF0YSBtZW1iZXJzLCBhbmQgb3BlcmF0b3JzCiAgICAgICAgICAgICBwdWJsaWMsIHlvdSBhbGxvdyBmb3IgZmxleGliaWxpdHkgaW4gdGhlaXIgdXNlLiBJbiBNRkMsIGV2ZW4KICAgICAgICAgICAgIGZ1bmN0aW9ucyBkZWNsYXJlZCBpbiB0aGUgLy9JbXBsZW1lbnRhdGlvbiBzZWN0aW9uIG9mIGEgY2xhc3MKICAgICAgICAgICAgIGFyZSB1c3VhbGx5IHB1YmxpYyBvciBwcm90ZWN0ZWQuIAoKCkF1YS4KCiAgUm9jaHVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3Nvc28uLi4gKExlbmEsIDExLiBTZXAgMTk5OSwgMDI6NTI6MzEpOgpHcmludXIgdGVpbHQgRGlyIG1pdDogd28gYmlzdCBkdSBnZXJhZGU/ICAKRHUgdGVpbHN0IEdyaW51ciBtaXQ6IGlzdCBkYXMgZWluZSBmYW5nZnJhZ2U/ICAKR3JpbnVyIHRlaWx0IERpciBtaXQ6IGFsc28/CkR1IHRlaWxzdCBHcmludXIgbWl0OiB3YXMgYWxzbz8gIApHcmludXIgdGVpbHQgRGlyIG1pdDogd28gaXN0IGRlciBzdHJhbmRrb3JiPyAgICAgICAgCkR1IHRlaWxzdCBHcmludXIgbWl0OiB3YXJ1bT8gCkdyaW51ciB0ZWlsdCBEaXIgbWl0OiAxLiBwdXJlcyBpbnRlcmVzc2UgMi4gbGF1dCBkZXIgbGFuZ2Jlc2NocmVpYnVuZyBkZXIKR3JpbnVyIHRlaWx0IERpciBtaXQ6IGlkZWFsZSBwbGF0eiB3ZW5uIDIgZnJhdWVuIGFud2VzZW5kIHNpbmQ7KSAgICAgICAgICAgICAgCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gZ2VodCBkYXMgbWl0IEhpcHBlIGFsc28uLi4gKFNldmVuLCAxMS4gU2VwIDE5OTksIDA4OjQ5OjMyKToKTGVhZ3JvIHNhZ3Q6IGhpcHBlIGhhbHQgZGFzIG1hdWwgb2RlciBpY2ggaG9sZSBtZWluZW4gZ3Jvc3NlbiBicnVkZXIKSGlwcGUgZ2VodCBuYWNoIE9zdGVuLgpMZWFncm8gc2FndDogd2lya3QKRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgoKU2V2ZW4gLSBpbW1lciBub2NoIGdyaW5zZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChaYXBob2IsIDExLiBTZXAgMTk5OSwgMTA6MTU6NDEpOgpbQWJlbnRldWVyOkxlYWdyb10gaGlsZmVlZWVlZWVlZWVlZSBpY2ggYmluIGluIGRlciBlaXN3dWVzdGUgdW5kIHN1Y2hlbiBkZW4KW0FiZW50ZXVlcjpMZWFncm9dIHdlaWhuYWNodHNtYW5uLCB3aWUgZmluZGUgaWNoIGlobiB1bmQgd2llIGtvbW1lIGljaCB3aWVkZXIKW0FiZW50ZXVlcjpMZWFncm9dIHJhdXMgaGllcjoKW0FiZW50ZXVlcjpaYXBob2JdIHJ1bWxhdWZlbiAKTGVhZ3JvIHRlaWx0IERpciBtaXQ6IHdhcyBoZWlzdCBkZW4gcnVtbGF1ZmVuCkR1IHRlaWxzdCBMZWFncm8gbWl0OiBkYXNzIGVzIGRhIGtlaW4gc3lzdGVtIGdpYnQKTGVhZ3JvIHRlaWx0IERpciBtaXQ6IGRlbiBlaXNiYXIgaGFiZSBpY2gKW1RvZDpMYXJzXSBFaW4gRWlzYmFlciBoYXQgZ2VyYWRlIExlYWdybyB1bWdlYnJhY2h0LgoKWmFwaG9iLCBmYXN0IG5peCBnZWt1ZXJ6dCBoYWJlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkltbWVyIHdpZWRlciBzY2hvZW4uLiA7KSAoWm9vaywgMTIuIFNlcCAxOTk5LCAxMjoxMDoyMyk6CgpEdSBoZWlzc3QgRmV1ZXJ3ZWhyIGF1cyBkZXIgRmVybmUgd2lsbGtvbW1lbi4KRmV1ZXJ3ZWhyIHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1LgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBQcmluemVzc2luIHVuZCBpY2guLi4gKEZvb2JhciwgMTIuIFNlcCAxOTk5LCAxNzowOTo0NCk6Ck5ldWxpY2ggYmVpIFNvcnV0aCBpbiBkZXIgSG9laGxlOgoKPiBrbnV0c2NoIHByaW56ZXNzaW4KRHUgZ2lic3QgVWtoYXppIGVpbmVuIFJJQ0hUSUdFTiBLdXNzLgpVa2hhemkgc2NoYXV0IERpY2ggaG9jaG11ZXRpZyBhbiB1bmQgc2FndDogV28gaGFzdCBEdSBkYXMgS3Vlc3NlbiBnZWxlcm50PwoKRm9vYmFyIC0gV2VpYmVyaGVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR3V0ZXIgSHVuZCEgKEthcmFtLCAxMi4gU2VwIDE5OTksIDE3OjIzOjM5KToKRWluZSBmZWxpbmlzY2hlIFdhZWNodGVyaW4gc2NobGVpY2h0IGhlcmVpbi4KRGllIGZlbGluaXNjaGUgV2FlY2h0ZXJpbiBsYWVjaGVsdCBlaW4gZ2VmYWVocmxpY2hlcyBMYWVjaGVsbi4KRWluZSBmZWxpbmlzY2hlIFdhZWNodGVyaW4gc2NobGVpY2h0IGhlcmVpbi4KV3VmZnR1ZmYgZ2lidCBlaW4ga3VyemVzIEJlbGxlbiB2b24gc2ljaC4KRGllIGZlbGluaXNjaGUgV2FlY2h0ZXJpbiBtYWNodCBlaW5lbiBLYXR6ZW5idWNrZWwuCkRpZSBmZWxpbmlzY2hlIFdhZWNodGVyaW4gc2NobGVpY2h0IG5hY2ggT3N0ZW4uCkRpZSBmZWxpbmlzY2hlIFdhZWNodGVyaW4gc2NobGVpY2h0IG5hY2ggV2VzdGVuLgoKLS0KS2FyYW0gKG11c3N0ZSBuaXgga3VlcnplbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG5lbGxlciwgdGllZmVyLi4uYWJnZXNvZmZlbmVyPyAoTmV2b2ssIDEyLiBTZXAgMTk5OSwgMTg6NTg6MjMpOgpXYXNzZXIgc2Nod2FwcHQgYXVmIGRhcyBGbG9zcyBhbHMgZHUgZGljaCBiZXdlZ3N0LiBEaWUgQm9obGVuIHNpbmQgcm9oIGdlLQpzY2huaXR0ZW4sIHNvIGFscyBvYiBqZW1hbmQgbWl0IGRlbSBGbG9zcyB2b24gaXJnZW5kd28gZ2VmbG9oZW4gaXN0LiBJbgpkZXIgTWl0dGUgaXN0IGVpbiBQZmFobCBiZWZlc3RpZ3QsIGFuIGRlc3NlbiBFbmRlIG5vY2ggZWluIGF1cyBGZXR6ZW4gdm9uCkxha2VuIHVuZCBVbnRlcmhvc2VuIGdlZmVydGlndGVzIFNlZ2VsIGJhdW1lbHQKRXMgZ2lidCBrZWluZSBzaWNodGJhcmVuIEF1c2dhZW5nZS4KW1RlYW06V2l0d2VubWFjaGVyXSBXZXIgaXN0IEdyaW1tYW4gCk1pcmFkb3IgZGVyIEZlbGRrYWVtcGZlcgpTdWJsaW1lIGRlciBPYmVyZmVsZGthZW1wZmVyLgpOZXZvayBzdHV0enQgZHVua2xlIEZsdWVnZWwuCgpEdSBkZW5rc3QgICAuIG8gTyAoNCBrYWVtcGZlciBpbiB2b2xsZXIgYXVzcnVlc3R1bmcgYXVmIG0gRmxvc3MuLi4uLmRhcyBkaW5nCmxpZWd0IFRJRUYpCkRhcyBGbG9zcyBrb21tdCBnYW56IGdld2FsdGlnIGlucyBTY2hsaW5nZXJuLgpXYXNzZXIgc2Nod2FwcHQgdWViZXIgZGVuIFJhbmQgZGVzIEZsb3NzZXMuCgoKV2FlcmUgdmllbGxlaWNodCBtYWwgYW4gZGVyIFplaXQsIGRhc3Mgd2lyIGRpZSBLb2hsZSBmdWVyIGltbWVyIG5ldWUKRGVua21hZWxlciBtYWwgc2lubnZvbGwgaW4gZWluZSBGbG90dGUgaW52ZXN0aWVyZW4uLi4KCk5ldm9rIG9obmUgU2Nod2ltbWZsdWVnZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIGVpbmZhY2ggZmluZGV0IG1hbiBMZXV0ZSAoTmV2b2ssIDEyLiBTZXAgMTk5OSwgMjI6MjQ6MDEpOgoKYXVjaCBvaG5lIGVpbiBmd2VyIG9ydAoKW1RydmVzOkxpbGxlYnJvciB0cml0dCBEaWVkZXIgZGFoaW4gd29zIHdlaCB0dXRdCkR1IGhvZXJzdCBlaW4gbGF1dGVzIEJydWVsbGVuIGF1cyBkZW0gRHNjaHVuZ2VsLgoKYnJlaXRlc3QgZ3JpbnNlbmQsIApOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNvIGVpbmZhY2ggZmluZGV0IG1hbiBMZXV0ZSAoRGllZGVyLCAxMi4gU2VwIDE5OTksIDIyOjI1OjU5KToKfiMhIHJuPU5ldm9rIHJ0PTkzNzE3NTA0MSByZz1zY2htYXJybgp+IyEgdGlkPTkzNzE3NTA0MQoKc3RpbW10IGdhciBuaWNoLCBkYSB3YXIgaWNoIHRvdGFsIHdvYW5kZXJzLi4uCkthbm4gc2ljaCBhbHNvIG51ciB1bSBlaW5lbiBmdWVyIGthZW1wZmVyIHR5cGlzY2hlbiBGZWhsdHJpdHQgaGFuZGVsbiwgYmVpIGRlbQpzaWUgc2ljaCBzZWxic3QgZW1wZmluZGxpY2ggZ2V0cm9mZmVuIGhhdCAqZyoKCkRpZWRlciwgZGFlbW9uaXNjaCBraWNoZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKY2hhb3MgcnVsZXogKERpZWRlciwgMTIuIFNlcCAxOTk5LCAyMjo1NDoyOCk6CgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBDaGFvdHNdIEh1ZXRldCBFdWNoIHZvciBOdW1tZXJlaW5zIQpbVG9kOkxhcnNdIEVpbmUgenVzYW1tZW5icmVjaGVuZGUgQnJ1ZWNrZSBoYXQgZ2VyYWRlIFNseWZveCB1bWdlYnJhY2h0LgpbVG9kOkxhcnNdIEVpbmUgenVzYW1tZW5icmVjaGVuZGUgQnJ1ZWNrZSBoYXQgZ2VyYWRlIEdhYmkgdW1nZWJyYWNodC4KW1RvZDpMYXJzXSBFaW5lIHp1c2FtbWVuYnJlY2hlbmRlIEJydWVja2UgaGF0IGdlcmFkZSBOdW1tZXJlaW5zIHVtZ2VicmFjaHQuCltUb2Q6TGFyc10gRWluZSB6dXNhbW1lbmJyZWNoZW5kZSBCcnVlY2tlIGhhdCBnZXJhZGUgRmFzdCB1bWdlYnJhY2h0LgpbVG9kOkxhcnNdIEVpbmUgenVzYW1tZW5icmVjaGVuZGUgQnJ1ZWNrZSBoYXQgZ2VyYWRlIFNtdXQgdW1nZWJyYWNodC4KCnRqYSwgbWl0IGRlciByYWNoZSBlaW5lcyBjaGFvdGVuIGlzdCBuaWNodCB6dSBzcGFzc2VuLi4uIDopCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5hIHNjaG9lbmVuIFNjaHJhbmsgYXVjaCAoTmV2b2ssIDEyLiBTZXAgMTk5OSwgMjI6NTg6MDgpOgoKZGFzIG1hY2h0IFNwYXNzLCBtYW4gd2lsbCBudXIgcnVudGVyLi4uLiB1bmQgZGFubiBzb3dhcwpEdSBzY2hsYWVnc3QgZGVuIEVpc3JpZXNlbiBmaWVzIG1pdCBkZXIgRmV1ZXJheHQuCkRlciBFaXNyaWVzZSBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW4gRWlzcmllc2Uga29tbXQgYW4uCgpIbWJsZ3JtcGYKCk5ldm9rLCBkaWUgRmV1ZXJheHQgenVtIEdsdWVoZW4gYnJpbmdlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBjaGFvcyBydWxleiAoTmFpcm9sZiwgMTMuIFNlcCAxOTk5LCAwOTozMjowMik6Cn4jISBybj1EaWVkZXIgcnQ9OTM3MTc2ODY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM3MTc2ODY4Cm9jaCBEaWVkZXIgaWNoIHd1ZXJkIGRhIGVpbmZhY2ggc2FnZW46IFNseWZveCwgZHUgaGFzdCBkYSBhYmVyIGVpbiBzZWVlZWhyCmRvb2ZlcyBTY3JpcHQgZ2VzY2hyaWViZW4gOi0pKSBkYXMga29tbXQgZGF2b24gOi0pCgpOYWlyb2xmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGNoYW9zIHJ1bGV6IChGZXVlcndlaHIsIDEzLiBTZXAgMTk5OSwgMTE6MTE6NDUpOgp+IyEgcm49TmFpcm9sZiBydD05MzcyMTUxMjIgcmc9c2NobWFycm4KfiMhIHRpZD05MzcxNzY4NjgKCipodWVzdGVsKiBTbyBlaW5lIHNjaG9lbmUgVG9kZXNrZXR0ZSBoYWIgaWNoIHNlbHRlbiBnZXNlaGVuLCBkZXNoYWxiIG1vZWNodGUKaW4gU2x5KiBpbiBTY2h1dHogbmVobWVuLiBFciB3YXIgbmFlbWxpY2ggc2VociB0YXBmZXIgdW5kIGhhdCB2ZXJzdWNodCwgMwpDaGFvdGVuIHp1IHNjaGxhY2h0ZW4sIGJldm9yIGRpZXNlIGRpZSBCcnVlY2tlIGdla2FwcHQgaGFiZW4uIExlaWRlciB3YXIgZXIKbmljaHQgc2NobmVsbCBnZW51ZywgYWJlciBlaW5lbiBLaWxsc3R1cHMgaGF0IGVyIGltbWVyaGluIG1pdGdlbm9tbWVuLgoKVW5kIGRhZnVlciB0dXQgaWhyIHZvZWxsaWcga3JhbmtlbiBUeXBlbiBqYSBzY2hsaWVzc2xpY2ggYWxsZXMhIDopCgogICAgRmV1ZXJ3ZWhyLiBCb2VzYXJ0aWcuIEhhaGEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZWdhdGl2ZSBTY2h3aW5ndW5nZW4gYXVzIGRlciBGZXJuZT8gKFRlZGR5LCAxMy4gU2VwIDE5OTksIDEzOjM3OjA5KToKfiMhIHJuPUphc29ucmlnaWQgcnQ9OTM2OTQ3NTU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM2ODE2NjI0CkljaCBiaW4gdW5lcnNldHpsaWNoIQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5lZ2F0aXZlIFNjaHdpbmd1bmdlbiBhdXMgZGVyIEZlcm5lPyAoVGVkZHksIDEzLiBTZXAgMTk5OSwgMTM6Mzc6MjkpOgp+IyEgcm49TW9yZ290aCBydD05MzY5NDc3NDMgcmc9c2NobWFycm4KfiMhIHRpZD05MzY4MTY2MjQKSUNIIEJJTiBOSUNIVCBOSUVETElDSCEhIQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5lZ2F0aXZlIFNjaHdpbmd1bmdlbiBhdXMgZGVyIEZlcm5lPyAoVGVkZHksIDEzLiBTZXAgMTk5OSwgMTM6NDI6MDUpOgp+IyEgcm49VGVkZHkgcnQ9OTM3MjI5ODQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM2ODE2NjI0CnVuZCB3dXNjaGVsaWcgc2Nob24gZ2FybmljaHQuCgpUZWRkeSwgYm9lc2FydGlnIHVuZCBnZW1laW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFQtU2hpcnQgKE5vdmFzdG9ybSwgMTMuIFNlcCAxOTk5LCAxMzo1MDo0MSk6Cn4jISBvbj1Ob3Zhc3Rvcm0gb3Q9OTM3MjMwNTg3IG9nPXBhcnR5Cn4jISBybj1Sb2NodXMgcnQ9OTM3MjI4Nzc2IHJnPXBhcnR5Cn4jISB0aWQ9OTM3MjIxODc0CkZlaGx0ZSBkYSBuaWNodCBkZXIgVGVpbCBtaXQ6ICJOb3cgaSBoYXZlIGEgbWFjaGluZSBndW4hIiA/CiAgTm92YSwgdWViZXJkZW5rdCBlaW5lIFRlaWxuYWhtZSBhbiBkZXIgTXVkZmV0ZSBlcm5ldXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyBtYWwgd2llZGVyLi4uIChOb3Zhc3Rvcm0sIDEzLiBTZXAgMTk5OSwgMTg6MjA6MDIpOgpbVHJ2ZXM6TWFnaWN0dXhdIGFsc28gZGVuIGZldWVyZ25vbSBoYWIgaWNoIGxlaWRlciBuaWNodCBnZXNjaGFmZnQKLi4uCltUb2Q6TGFyc10gRWluIHp3ZXJnaXNjaGVyIEdob3VsIGhhdCBnZXJhZGUgTWFnaWN0dXggdW1nZWJyYWNodC4KW1RvZDpFaW4gendlcmdpc2NoZXIgR2hvdWxdIFJlZ2VudCBkZXIgVmVyZGFtbW5pcywgd2lyIGJyaW5nZW4gRGlyIGRhciwgZWluCltUb2Q6RWluIHp3ZXJnaXNjaGVyIEdob3VsXSBnYW56IGZyaXNjaGVzIE9wZmVyIGZ1ZXIgRGVpbmUgZW5kbG9zZSBTY2hhciAuLi4KICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpsb25lIHdhcnJpb3IgKE1lc2lyaWksIDE0LiBTZXAgMTk5OSwgMDQ6MjU6NTcpOgo6a3dlcgogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRGllLCAxNC4gU2VwIDE5OTksIDA0OjI0OjU5ICg5IFRlaWxuZWhtZXIpCgpMb2dnYS4uLi4uLi4uLi5KLnMgVGFyYWdvbi4uLi4uLi4uSndTIEFuYWtpbi4uLi4uLi4uLkp3UyBNZXNpcmlpLi4uLi4uLi4uLlMKTWVyY3V0aW8uLi4uLi4uSndTIEhvdXNlaG9sZGVyLi4uLkouWiBSb2FkcnVubmVyLi4uLi5Kd1MgS2xvbmsuLi4uLi4uLi4uSi5tCkJhbWJ1bGtvLi4uLi4uLkouTQoKOm5vaQogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRGllLCAxNC4gU2VwIDE5OTksIDA0OjI1OjAzICgxIFRlaWxuZWhtZXIpCgpNZXNpcmlpLi4uLi4uLi4uLlMKCk1lc2ksIGVpbnNhbWVyIENoYW90ICwpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChBY3JpbW9uLCAxNC4gU2VwIDE5OTksIDE2OjQxOjE0KToKfiMhIHJuPVphcGhvYiBydD05MzcwNDQ5NDEgcmc9c2NobWFycm4KfiMhIHRpZD05MzcwNDQ5NDEKRG9jaC4gRGEgZ2lidHMgZWluIFN5c3RlbS4KTWFuIGthbm4gYXVjaCBlaW5lIEthcnRlIHZvbiBkZXIgRWlzd3Vlc3RlIG1hY2hlbi4KCkFjcmltb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJVTU0gKEtudWJiZWwsIDE0LiBTZXAgMTk5OSwgMTc6NTQ6MjApOgpEdSBrYWVtbXN0IGRpZSBSYXR0ZSwgYmlzIGlociBkaWUgRmVsbGhhYXJlIHp1YmVyZ2Ugc3RlaGVuLgpEaWUgUmF0dGUgaXN0IGpldHp0IGdlbGFkZW4uCkR1IGZldHRlc3QgZGllIFJhdHRlIHNvcmdmYWVsdGlnIGVpbi4KRHUgc3BlcnJzdCBkaWUgUmF0dGUgaW4gZGVuIEthZWZpZy4KRGVyIGtsZWluZSBIZWJlbCBzdGVodCBhdWYgZGVyIG9iZXJlbiBQb3NpdGlvbiwgZGVyIGdyb3NzZSBIZWJlbCBzdGVodAppbiBkZXIgdW50ZXJlbiBQb3NpdGlvbi4KRHUgZHJ1ZWNrc3QgZGVuIGtsZWluZW4gSGViZWwgbmFjaCBVbnRlbi4KRHUgZHJ1ZWNrc3QgZGVuIGdyb3NzZW4gSGViZWwgbmFjaCBPYmVuLgpLYXJpYyBydWZ0OiBCVU1NICEhIQoKaHVjaCwgZGVyIGhhdCBtaWNoIGVyc2NocmVja3QgOikKaGF0dGUgc2Nob24gZ2VnbGF1YnQsIGRpZSBtYXNjaGluZSBmbGllZ3QgbWlyIHVtIGRpZSBvaHJlbiA6KQoKS251YmJlbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9ob2guLi4gKE1vbnRhbnVzLCAxNC4gU2VwIDE5OTksIDE5OjM3OjQyKToKcnVmZSBEYW5jZXIgbmFjaCBQeXJhbWlkZW4hCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCkR1IHJ1ZnN0OiBEYW5jZXIgbmFjaCBQeXJhbWlkZW4hCgpIYXQgZXIgZGFzIGdlYWhudD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtbSwgTmFjaHRydWhlID8gKFN1YmxpbWUsIDE0LiBTZXAgMTk5OSwgMjE6MDA6MTUpOgoKVW5kIGljaCBkYWNodGUgTXl0aHJhbiBtdXNzIGlucyBCZXR0IHVuZCB2b3IgNyBhdWZzdGVoZW4uLi4KCk15dGhyYW4gdGVpbHQgRGlyIG1pdDogamVwcC4uLm5hIGRhbm4gISAqd2luayogWzIwOjU2XQpEZWluZSBGcmV1bmRpbiBBc3VrYSBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCkRlaW5lIEZyZXVuZGluIEFzdWthIHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1LgpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiBOYWNodCB6dXNhbW1lbgpBc3VrYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKTXl0aHJhbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCnVuZ2VrdWVyenQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN0YW1tdGlzY2gsIGRpZSBlcnN0ZSA6KSAoQW5hdG9sLCAxNS4gU2VwIDE5OTksIDAxOjIzOjUwKToKCihLZWxsbmVyIGJyaW5ndCB6d2VpIER1dHplbmQgUmVhZ2VuemdsYWVzZXIgYW4gZGVuIFRpc2NoKQpLZWxsbmVyOiBUZWlsZW4gbXVlc3N0IGlociBkYXMgc2VsYnN0LgooS2VsbG5lciBhYikKQW5hdG9sOiBXYXQgaXMgZGF0IGVpamVudGxpY2g/Ck1vcmdvdGg6IElzIGVnYWwsIGlzIHVtc29uc3QhCgpFcyByb2NoIGRhbm4gd2llIER1c2NoZ2VsXkheSF5IXkheSF5IXkheSF5IXkheSF5IUGZpcnNpY2hsaWtvZXIuLi4gOikKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN0YW1tdGlzY2gsIGRpZSB6d2VpdGUgOikgKEFuYXRvbCwgMTUuIFNlcCAxOTk5LCAwMToyNDo0MCk6ClJpbmdvcjogUGFkcmVpYyBmb3IgUk0hClJvY2h1czogSmEsICJybSAvc2VjdXJlL3NhdmUvcC8uLi4uIgoKQW5hdG9sIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmFjaCBTdGFtbXRpc2NoLi4uLiAoQW5hdG9sLCAxNS4gU2VwIDE5OTksIDAxOjI1OjM2KToKCihQZW5uZXIgdHJpdHQgdm9uIGhpbnRlbiBhbiBCZWVsemVidWIgaGVyYW4uKQpQZW5uZXI6IEp1bmdlIEZyYXUuLi4/CgpBbmF0b2wgLSB3YXMgaGFiZW4gd2lyIHVucyBhbXVlc2llcnQgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmFjaCBTdGFtbXRpc2NoLi4uLiAoTHVnLCAxNS4gU2VwIDE5OTksIDAxOjI2OjE4KToKfiMhIHJuPUFuYXRvbCBydD05MzczNTg3MzYgcmc9c2NobWFycm4KfiMhIHRpZD05MzczNTg3MzYKCipTQ0hSRUkqCgpLSwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbmVuIGhhYiBpY2ggbm9jaCEgOikgKEFuYXRvbCwgMTUuIFNlcCAxOTk5LCAwMToyNzowNCk6CgpNdXBmZWw6ICBKZXR6dCBoYWIgaWNoIERlaW5lbiBOYW1lbiB2ZXJnZXNzZW4uLi4KTGFyYW5pczogV2VsY2hlbj8KTXVwZmVsOiAgRGVpbmVuIFJlYWwtTmFtZW4uCkxhcmFuaXM6IERhIGhhc3QnIHJlY2h0LgoKQW5hdG9sIC0gcGFja3RlIGVzIG5pY2h0IG1laHIgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllIEdvZXR0ZXIgbXVlc3NlbiB2ZXJydWVja3Qgc2Vpbi4uLiAoR3VpbGRvLCAxNS4gU2VwIDE5OTksIDA3OjU0OjM5KToKfiMhIHJuPUd1aWxkbyBydD05MzY5NTg0ODIgcmc9c2NobWFycm4KfiMhIHRpZD05MzY5NTg0ODIKClNjaG9uIHdpZWRlciBzbyBldHdhczoKCkR1IGJldGVzdCwgZGFzcyBqZXR6dCBibG9zcyBrZWluIGFnZ3Jlc3NpdmVyIEdlZ25lciBoZXJlaW4ga29tbWVuIG1vZWdlLgpTaGFyaWEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCkd1aWxkbyAobXVzcyB3b2hsIGRvY2ggbm9jaCBlaW4gYmlzc2NoZW4gdWViZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGJlaW0gU3RhbW10aXNjaCAoUm9jaHVzLCAxNS4gU2VwIDE5OTksIDE0OjEwOjUyKToKQmVlbHplYnViOiBIaWVyIGdpYnQgZXMgYXVjaCBuZSBQdXNzeSBmdWVyIDcuMDAgRE0uLi4KSmFtZXNvbjogSXN0IGRhcyBhdWNoIGFsbCB5b3UgY2FuIGVhdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvaGwgd2Foci4uLiAoTm92YXN0b3JtLCAxNS4gU2VwIDE5OTksIDE1OjA4OjE3KToKRGVpbiBGcmV1bmQgU2Nob2tvIHRlaWx0IERpciBtaXQ6IGdhbnkga3VyemhpClNjaG9rbyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZXJhZGUgYmVpbSBlaW5sb2dnZW4gKmtpY2hlciogKFNoYW5uYXJhLCAxNS4gU2VwIDE5OTksIDE3OjAyOjE1KToKW0FsbGdlbWVpbjpMZVRpYyBzaW5ndCA6IEJ1cm4gYmFieSBidXJuLCB0aGUgZGlzY29pbmZlcm5vLCBidXJuIGJhYnkgYnVybiEhIV0KRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGhhbGxvZWNoZW4gbGV1dGUgOikKW1RvZDpMYXJzXSBFaW4gRmV1ZXJ3ZXNlbiBoYXQgZ2VyYWRlIFRhbW94aWZlbiB1bWdlYnJhY2h0LgoKKmdyaW5zIGJyZWl0KgpTaGFubmFyYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVlYmVuIHVlYmVuIHVlYmVuIChOZXZvaywgMTUuIFNlcCAxOTk5LCAxOToyNTowOSk6CmFiZXIgbWFuY2hlIGhhYmVuIGRhIHdvaGwgZWluIFByb2JsZW1jaGVuIG1pdC4uLiA7KQoKRGVpbiBGcmV1bmQgVmVjdG9yIHRlaWx0IERpciBtaXQ6IGtvbW10IGRhIHNvIGVpbiBrbGVyaWtlciByZWluLCB1biBiZWVyZGlndApEZWluIEZyZXVuZCBWZWN0b3IgdGVpbHQgRGlyIG1pdDogbWVpbiBmZXVlcmRhZW1vbi0tTUlUIGZldWVyd2Fzc2VyICpzY2hyZWkqCgpEZWluIEZyZXVuZCBWZWN0b3IgdGVpbHQgRGlyIG1pdDogYXJlbmEgYXJlbmEKCkRlaW4gRnJldW5kIFZlY3RvciB0ZWlsdCBEaXIgbWl0OiBqYWphLCB3YWVsenQgaWhyIG51ciAqYnJ1bW1lbCogOikKCmhtbW1tbSBvYiBkZXIgS2xlcmlrZXIgaWhuIGRhbm4gc2FtdCBhdXNydWVzdHVuZyBpbiBkZXIgQXJlbmEgYmVlcmRpZ3Q/IDopCgpOZXZvaywgZGVyIE5JRU1BTFMgd2FlaHJlbmQgc2VpbmVzIEtsZXJpa2VyZGFzZWlucyBqZW1hbmRlbiBiZWVyZGlndCBoYXQsIHNvCndlaXQga29tbXRzIGphIG5vY2guLi4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3dhcyAuLi4gKExpYXJhLCAxNS4gU2VwIDE5OTksIDIwOjEwOjQ4KToKV2FzIEVyemllcyBzbyBtaXQgU3BpZWxlcm4gYW5zdGVsbGVuOgoKUGFkcmVpYyBwZmVpZnQgZHVyY2ggc2VpbmUgSHVuZGVwZmVpZmUuCk15dGhyYW4ga29tbXQgbGF1dGxvcyBoZXJlaW5nZXBpcnNjaHQuCgpMaWFyYSwgd3VuZGVydCBzaWNoIHVlYmVyIG5peCBtZWhyIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV0FFSCA7KSAoV2ltLCAxNS4gU2VwIDE5OTksIDIxOjMxOjUwKToKCj5ubgpVZWJlcmdlaGUgQXJ0aWtlbCAyNyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAyOCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAyOSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAzMCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAzMSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAzMiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAzMyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAzNCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAzNSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAzNiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAzNyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAzOCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAzOSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA0MCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA0MSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA0MiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA0MyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA0NCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA0NSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA0NiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA0NyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA0OCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA0OSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1NCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgoKSGlsZmUhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUaXRlbCB1bmQgc28uLi4gKFd1cnN0LCAxNi4gU2VwIDE5OTksIDA5OjM3OjIwKToKCiBKZW1hbmQgdGVpbHQgRGlyIG1pdDogWFhYWFggZHUgV3Vyc3QuCgogU2VpdCBpY2ggZGllc2VzIFByZXNheSBtaXQgZWluZXIgQ2xvc3VyZSBoYWJlLCBtaXQgZGVyIGplZGVyIAogZGVyIG1pY2ggYW5zY2hhdXQgc2VpbmVuIGVpZ2VuZW4gTmFtZW4gZGFiZWkgc2llaHQgcmVhZ2llcmVuIAogbWFuY2hlIExldXRlIGlyZ2VuZHdpZSBldHdhcyBrb21pc2NoLi4uIDpvKSkKIFdlbm4gaWNoIGFtIFNhbmR0aWdlciBzbyBtYWwgbmUgV2VpbGUgaWRlbCB3YXIga29ubnRlIGljaCAKIGhpbnRlcmhlciBpbSBTY3JvbGwgaW1tZXIgZGllIHRvbGxzdGVuIFJlYWt0aW9uZW4gbGVzZW4uCiBEaWUgbWVpc3RlbiBoYWJlIGljaCBpZGVsbmRlci0gb2RlciBzY3JvbGxlbmRlcndlaXNlIHZlcnBhc3N0IAogb2RlciBoYWInIHNpZSBlaW5mYWNoIHVlYmVyc2VoZW4gb2RlciBuaWNodCAnZ2Vsb2dndCcsIGFiZXIgCiBoaWVyIHNpbmQgbm9jaCBlaW4gcGFhciBkYXZvbi4uLgoKCiBWdWx0YXMgc2FndDogamV0enQgcmllY2h0IGRhIGFiZXIhCiBWdWx0YXMgc2FndDogYWNoIHJlaWNodAogVGFsbWlkYSBmcmFndDogV2FzIHJlaWNodD8KIFZ1bHRhcyBzYWd0OiBpY2ggYmluIEtFSU5FIFdVUlNUIQogVGFsbWlkYSBncmluc3QuCiBWdWx0YXMgc2FndDogaW1tZXIgYW0gdGlnZXIgc2FndCBqZW1hbmQgenUgbWlyIGR1IHd1cnN0CiBUYWxtaWRhIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgogLS0tLS0KIEJsaW5kZmlzaCB0ZWlsdCBEaXIgbWl0OiB3YXMgc29sbCBkYXM/CiBEdSB0ZWlsc3QgQmxpbmRmaXNoIG1pdDogd2FzIGRlbm4/CiBCbGluZGZpc2ggdGVpbHQgRGlyIG1pdDogd2FzIGRlbm4gZnJhZ3N0IGR1IG5vY2ggLCB3YXJ1bSBrb21tZSBpY2ggaW4gZGVpbmVyCiBCbGluZGZpc2ggdGVpbHQgRGlyIG1pdDogYmVzY2hyZWlidW5nIHZvcj8/PwogLS0tLS0KIFtBbGxnZW1laW46TWlzdGJyYXR6ZV0gU293YXMgdm9uIGZlaWdlciBKZW1hbmQhCiBbQWxsZ2VtZWluOkRyb2xsaV0gSmVtYW5kIGlzdCBXdXJzdAogW0FsbGdlbWVpbjpEcm9sbGldIGZpbmdlciB3dXJzdAogLS0tLS0KIEFuYWNyaW9uIHRlaWx0IERpciBtaXQ6IEhhYiBpY2ggZGlyIGlyZ2VuZHdhcyBnZXRhbj8KIC0tLS0tCiBBYnNlbmRlcjogUGVydGluYXhlCiBBbjogV3Vyc3QKIENjOiBTZWxiZXIKIERhdHVtOiBEaWUsIDE3LiBBdWcgMTk5OSwgMTU6MTQ6MDgKIFRpdGVsOiBmamZqCiAtLS0tLQogR29sYXMgcnVmdDogSmEhIEljaCBiaW4gZWluZSBXdXJzdCwgSmVtYW5kIQogLS0tLS0KIEFwc3Ugd2VpbHQgd2llZGVyIHVudGVyIGRlbiBMZWJlbmRlbi4KIEFwc3Ugc3ByaW5ndCBEaWNoIGF1ZiBlaW5tYWwgYW4gdW5kIHd1ZXJndCBEaWNoLgogQXBzdSB0ZWlsdCBEaXIgbWl0OiBncnVtbWVsLCBrYW5uc3QgRHUgaGVsbHNlaGVuPyA6KSkKIC0tLS0tCiBIaWdobGFuZGVyIHRlaWx0IERpciBtaXQ6IEFyZ2wsIHdpZWRlciBlaW4gTUFnaWVyIG1pdCBjbG9zdXJlIGltIE5hbWVuLgpTZWxiZXIKIEhpZ2hsYW5kZXIgdGVpbHQgRGlyIG1pdDogV3Vyc3QgOz4KIC0tLS0tCiBFbHZpIHRlaWx0IERpciBtaXQ6IHBmb2FhYSB3YXMgaHR0ZW4gZHUgZGEgZnVlciBlaW5lbiB0aXRlbCA/CiBFbHZpIHRlaWx0IERpciBtaXQ6IGhlaGUgbWlyIGlzIGRlcyBqbyB3dXJzY2h0IDopCiAtLS0tLQogQmVsZ2FyaWFkIHdpbGwgbnVyIG5vY2ggd2VnLgogQmVsZ2FyaWFkIGdyaW5zdCBEaWNoIGFuLgogQmVsZ2FyaWFkIHNhZ3Q6IHNlbGJlciB3dXJzdCEKIC0tLS0tCiBDb2xvc3N1cyB0ZWlsdCBEaXIgbWl0OiBsYXMgZGFzCiBEdSB0ZWlsc3QgQ29sb3NzdXMgbWl0OiB3YXMgZGVubiA/ICpncmlucyogIAogQ29sb3NzdXMgdGVpbHQgRGlyIG1pdDogSWNoIHZlcnN0ZWggamVkZW4gU3Bhc3MsIGFiZXIgbmljaHQgYmVpCkJlbGVpZGlndW5nZW4KIENvbG9zc3VzIHRlaWx0IERpciBtaXQ6IHVlYmVyIGRpZSBpY2ggbmljaHQgYXVjaCBsYWNoZW4ga2FubgogRHUgdGVpbHN0IENvbG9zc3VzIG1pdDogbnVyIGt1cnogenVyIGluZm86IGljaCBoYWIgbmUgY2xvc3VyZSBpbiBtZWluZW0KcHJlc2F5LAogRHUgdGVpbHN0IENvbG9zc3VzIG1pdDogamVkZXIgZGVyIG1pY2ggYW5zY2hhdXQgc2llaHQgZGEgYWxzbyBzZWluZW4gZWlnZW5lbgogRHUgdGVpbHN0IENvbG9zc3VzIG1pdDogbmFtZW4uIElzIGFsc28gbmljaHRzIHBlcnNvZW5saWNoZXMgOykpCiBDb2xvc3N1cyB0ZWlsdCBEaXIgbWl0OiB3ZW5uIGR1IGRhbmsgZGVpbmVzIG5hbWVucyBkYXMgcmVjaHQgaGFzdCBhbmRlcmUgaW0KIENvbG9zc3VzIHRlaWx0IERpciBtaXQ6IG11ZCB6dSBiZWxlaWRpZ2VuLCBvZmZlbnNpY2h0bGljaCBvaG5lIGtvbnNlcXVlbnplbiwKIENvbG9zc3VzIHRlaWx0IERpciBtaXQ6IGRhbm4ga2FubiBpY2ggbWlyIGRlbiBhZXJnZXIgYWxsZXIgdm9yc3RlbGxlbgogICAKIEVpbmUgamVkZXNtYWwgd2llZGVyIGdyaW5zZW5kZQogV1VSU1QKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcmdsIChTaGFsLCAxNi4gU2VwIDE5OTksIDExOjI4OjUyKToKRWluZSBOYWNodHJ1ZXN0dW5nOiBJY2ggYmluIGFic29sdXQgcGxlaXRlLiBUdXQgbWlyIGF1ZnJpY2h0aWcgbGVpZC4KQWJlciBpY2ggbmVobSBkYXMgdHJvdHpkZW0uLi4uRGFua2UhCkRlciBIYWVuZGxlciBmaW5kZXQgR2VmYWxsZW4gYW4gZGVyIE5hY2h0cnVlc3R1bmcgdW5kIGxlZ3Qgc2llIHp1IApzZWluZW4gUHJpdmF0c2FjaGVuLiBFciB6YWhsdCBEaXIgMCBkYWZ1ZXIuCkRlciBIYWVuZGxlciB6YWhsdCBEaXIgMCBHb2xkc3R1ZWNrZS4KRWluIE5hY2h0ZG9sY2g6IEljaCBiaW4gYWJzb2x1dCBwbGVpdGUuIFR1dCBtaXIgYXVmcmljaHRpZyBsZWlkLgpBYmVyIGljaCBuZWhtIGRhcyB0cm90emRlbS4uLi5EYW5rZSEKRGVyIEhhZW5kbGVyIHphaGx0IERpciAwIEdvbGRzdHVlY2tlLgoKTW9yZ29vb29vb3RoICEhISA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2FydW0gTWFlbm5lciBiZXNzZXIgYWxsZWluZSBzY2hsYWZlbiAoR3JpbW1ib3JuLCAxNi4gU2VwIDE5OTksIDEyOjI5OjU4KToKfiMhIG9uPU1haGF0bXUgb3Q9OTM3NDI1OTk0IG9nPXdpdHplCn4jISBybj1TdHJlYXdrY2V1ciBydD05MzczNTc5Nzkgcmc9d2l0emUKfiMhIHRpZD05MzczNDg0NTIKRGFzIHdhciBqYSBkZXIgV2l0eiAuLi4KCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXYXJ1bSBNYWVubmVyIGJlc3NlciBhbGxlaW5lIHNjaGxhZmVuIChHcmltbWJvcm4sIDE2LiBTZXAgMTk5OSwgMTI6MzI6MzEpOgp+IyEgb249QW5hdG9sIG90PTkzNzQyODk4NCBvZz13aXR6ZQp+IyEgcm49RGllZGVyIHJ0PTkzNzQyODU4MyByZz13aXR6ZQp+IyEgdGlkPTkzNzM0ODQ1MgpFciBoYXQgV29ydCBnZWhhbHRlbiwgd28gaXN0IGRhIGRlciBXaXR6PwoKQW5hdG9sIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2FydW0gTWFlbm5lciBiZXNzZXIgYWxsZWluZSBzY2hsYWZlbiAoR3JpbW1ib3JuLCAxNi4gU2VwIDE5OTksIDEyOjMyOjMzKToKfiMhIG9uPURpZWRlciBvdD05Mzc0MjkwMzggb2c9d2l0emUKfiMhIHJuPURpZWRlciBydD05Mzc0Mjg1ODMgcmc9d2l0emUKfiMhIHRpZD05MzczNDg0NTIKd2llc28gV29ydCBnZWhhbHRlbj8gT2RlciBnZWJlbiBzaWNoIGRpZSBLdW5kZW4gc2Nob24gYXVzIGxlaWR2b2xsZXIgRXJmYWhydW5nCm1pdCBkZW0gYnVncmVpY2hlbiBNaXN0IHp1ZnJpZWRlbj8gOikKCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2FydW0gTWFlbm5lciBiZXNzZXIgYWxsZWluZSBzY2hsYWZlbiAoR3JpbW1ib3JuLCAxNi4gU2VwIDE5OTksIDEyOjMyOjM1KToKfiMhIG9uPVRlZGR5IG90PTkzNzQ3NTI4NCBvZz13aXR6ZQp+IyEgcm49RGllZGVyIHJ0PTkzNzQyOTAzOCByZz13aXR6ZQp+IyEgdGlkPTkzNzM0ODQ1MgpEdSBoYXN0IGVzIGVyZmFzc3QuCgpUZWRkeSwgZmluZGV0cyBlaWdlbnRsaWNoIG5pY2h0IHdpcmtsaWNoIHdpdHppZy4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBXYXJ1bSBNYWVubmVyIGJlc3NlciBhbGxlaW5lIHNjaGxhZmVuIChHcmltbWJvcm4sIDE2LiBTZXAgMTk5OSwgMTI6MzI6MzcpOgp+IyEgb249Tm9ubmUgb3Q9OTM3NDc2MTQ2IG9nPXdpdHplCn4jISBybj1UZWRkeSBydD05Mzc0NzUyODQgcmc9d2l0emUKfiMhIHRpZD05MzczNDg0NTIKRXIgc3ByYWNoIGRhdm9uLCB3aWUgZXMgZGllIEt1bmRlbiBlcndhcnRlbiwgbmljaHQgd2FzIHNpY2ggZGllIEt1bmRlbgp3dWVuc2NoZW4uIFZvbiBkYWhlciBoYXQgZXIgZG9jaCBudXIgZ2VzYWd0LCBkYXNzIHNpY2ggYmVpIE0kIG5pY2h0cyBhZW5kZXJuCndpcmQuIEVyIGhhdCBuaWNodCBnZWxvZ2VuLCBrZWluZW4gV2l0eiBnZW1hY2h0LCBob2VjaHN0ZW5zIGhhdCBlciBlcyBzbwphdXNnZWRydWVja3QsIGRhc3MgbWFuIGVzIHNvIHZlcnN0ZWhlbiBrb2VubnRlLCBkYXNzIGRhcyBQcm9kdWt0IGJlc3NlciB3aXJkLgoKTSQtQW5nZXN0ZWxsdGUgd2VyZGVuIHJldG9yaXNjaCB3b2hsIHNlaHIgZ3V0IGdlc2NodWx0IDstKQoKTm9ubmUsIGtlaW5lIE0kLVByb2R1a3RlIGthdWZlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXYXJ1bSBNYWVubmVyIGJlc3NlciBhbGxlaW5lIHNjaGxhZmVuIChHcmltbWJvcm4sIDE2LiBTZXAgMTk5OSwgMTI6MzI6MzgpOgp+IyEgb249VGVkZHkgb3Q9OTM3NDc2NTMwIG9nPXdpdHplCn4jISBybj1Ob25uZSBydD05Mzc0NzYxNDYgcmc9d2l0emUKfiMhIHRpZD05MzczNDg0NTIKQWxzbyBlaWdlbnRsaWNoIGdlaG9lcnQgZGllc2VyIFRocmVhZCBuYWNoIERpc2t1c3Npb24sIHNjaG1hcnJuLCBLdWx0dXIgb2RlcgpNVWVsbCwgamUgbmFjaGRlbSwgd2llIG1hbnMgc2VoZW4gd2lsbCA7XykKClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBXYXJ1bSBNYWVubmVyIGJlc3NlciBhbGxlaW5lIHNjaGxhZmVuIChHcmltbWJvcm4sIDE2LiBTZXAgMTk5OSwgMTI6MzI6MzkpOgp+IyEgb249Tm9ubmUgb3Q9OTM3NDc2NjM4IG9nPXdpdHplCn4jISBybj1UZWRkeSBydD05Mzc0NzY1MzAgcmc9d2l0emUKfiMhIHRpZD05MzczNDg0NTIKYWxzbyBlaWdlbnRsaWNoIG5hY2ggL2Rldi9udWxsIDstKQoKTm9ubmUsIGVpbnplaWxlbmQgdW5kIHJlY2h0IGhhYmVuZCA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdhcnVtIE1hZW5uZXIgYmVzc2VyIGFsbGVpbmUgc2NobGFmZW4gKEdyaW1tYm9ybiwgMTYuIFNlcCAxOTk5LCAxMjozMjo0NSk6Cn4jISBvbj1UZWRkeSBvdD05Mzc0NzcwNDMgb2c9d2l0emUKfiMhIHJuPU5vbm5lIHJ0PTkzNzQ3NjYzOCByZz13aXR6ZQp+IyEgdGlkPTkzNzM0ODQ1MgpXYXIgZGFzIG5pY2h0IE11ZWxsPwoKVGVkZHksIGdlbGFuZ3dlaWx0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhcnVtIE1hZW5uZXIgYmVzc2VyIGFsbGVpbmUgc2NobGFmZW4gKEdyaW1tYm9ybiwgMTYuIFNlcCAxOTk5LCAxMjozMzo0Nyk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTM3NDg1MjE3IG9nPXdpdHplCn4jISBybj1TdHJlYXdrY2V1ciBydD05MzczNTc5Nzkgcmc9d2l0emUKfiMhIHRpZD05MzczNDg0NTIKTmVpbi4KQmVpIG1pciB3YXJlbiBkaWUgVW1sYXV0ZSBhbnN0YWVuZGlnIGRhcmdlc3RlbGx0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbSAoRGllZGVyLCAxNi4gU2VwIDE5OTksIDIwOjE5OjU1KToKCltNb2VyZGVyOkdlaXN0IGVpbmVzIEVpc2dpZ2FudGVuXSBIaWxmZSEgRGllYmUhIE1vZXJkZXIhIEhhbHNhYnNjaG5laWRlciEKW01vZXJkZXI6R2Vpc3QgZWluZXMgRWlzZ2lnYW50ZW5dIExpbnV4IQoKTGludXg/IEJpc2hlciBrYW5udGUgbWFuIGRhcyBkb2NoIG51ciB2b24gTWljcm9zb2Z0LCBkaWUgR2F1bmVyZWkgdW5kCkFiem9ja2VyZWkuLi4KCkRpZWRlciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RhdGlzY2hlIEVsZWt0cml6aXRhZXQgPz8/IChNeXRocmFuLCAxNi4gU2VwIDE5OTksIDIyOjA5OjQ5KToKUHVrIHZlcnd1c2NoZWx0IERlaW4gRmVsbC4KRWluZSBoZXJybGljaGUgV2Flcm1lIGdlaHQgdm9uIERlaW5lbSBBbXVsZXR0IGF1cywgdW5kIER1IGZ1ZWhsc3QKRGljaCBwcmltYS4KClRvbGwgISEhIEthdHplbmZlbGwgbGFlZHQgd29obCBkYXMgQW11bGV0dCBhdWYgISEhICpmcmV1KgoKTXl0aHJhbiwgc3RvbHplciBTdGF0aWtmZWxpbmUgIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdHN0c3RzIDopIChEaWVkZXIsIDE2LiBTZXAgMTk5OSwgMjI6MTg6MTApOgpEZWluZSBGcmV1bmRpbiBMaWFyYSB0ZWlsdCBEaXIgbWl0OiBqYSB3aWxsIGF1Y2ggZ2VidWVyc3RldCB3ZXJkZW4KRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IExpYXJhIGR1IHdpbGxzdCB3YXM/Pz8gOikKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogaWNoIG1hZyBiZ2VidWVyc3RldCB3ZXJkZW4KCkRpZWRlciwga29wZnNjaHVldHRlbG5kIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYWVtcGZlciBhdWZ3ZXJ0ZW4gKE5ldm9rLCAxNy4gU2VwIDE5OTksIDA0OjU0OjI3KToKRWluIHdlaXNzZXIgV2FuZGxlciBpc3QgbGVpY2h0IGdlc2Nod2FlY2h0IHVuZCBpc3QgZGFtaXQgamVuc2VpdHMgYWxsZXIKR3JlbnplbiB2aWVsIHN0YWVya2VyIGFscyBEdS4gRXIga2FlbXBmdCBtaXQgbWFnaXNjaGVuIEVuZXJnaWVmZXR6ZW4uIERhbWl0CmthZW1wZnQgZXIgdWViZXJhdXMgc2VociB2aWVsIGJlc3NlciBhbHMgRHUuIEVpbiB3ZWlzc2VyIFdhbmRsZXIgdHJhZWd0IGtlaW5lCnp1c2FldHpsaWNoZSBSdWVzdHVuZy4gRGFtaXQgaXN0IGVyIHNlaHIgc2VociB2aWVsIGJlc3NlciBhbHMgRHUgZ2VzY2h1ZXR6dC4KRXIgYmVzaXR6dCBlaW5lIHVuZ2V3b2VobmxpY2ggZGlja2UgSGF1dCwgYnp3LiBGZWxsLCBvZGVyIHdhcyBhdWNoIGltbWVyLiBTaWUKaXN0IGVpZ2VudGxpY2ggZnVlciBub3JtYWxlIFdhZmZlbiBmYXN0IHVuZHVyY2hkcmluZ2xpY2guIApFaW4gd2Vpc3NlciBXYW5kbGVyIGlzdCBldHdhIDE2OGNtIGdyb3NzLgoKCm9laCBhZWggaG1tbW1tbW1tbW0KYWggamEKSWNoIGdsYXViIGljaCBnZWggZGFubiB3b2hsIGRvY2ggbm9jaCBtYWwgbiBwYWFyIE1vbmF0ZSB1ZWJlbi4uLi4KCk5ldm9rLCBkZXIgc2VpbmVuIFJlYWxpdHkgQ2hlY2sgZGFubiBtYWwgd2llZGVyIHJlY2h0emVpdGlnIGdlc2NoYWZmdCBoYXQuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVGl0ZWwgdW5kIHNvLi4uIChBcG9sbG9uaWEsIDE3LiBTZXAgMTk5OSwgMTE6MDU6NDMpOgp+IyEgcm49V3Vyc3QgcnQ9OTM3NDc0NjQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM3NDc0NjQwCk1hbmNoZSBMZXV0ZSBzaW5kIGVjaHQgZW1wZmluZGxpY2gsIHdhcz8gQWxzbyBpY2ggZmFuZCdzIGx1c3RpZy4uLiA6KQpBcG8qIChncmluc2VuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB0c3RzdHMgOikgKExpYXJhLCAxNy4gU2VwIDE5OTksIDEyOjAxOjMyKToKfiMhIHJuPURpZWRlciBydD05Mzc1MjAyOTAgcmc9c2NobWFycm4KfiMhIHRpZD05Mzc1MjAyOTAKU2V1ZnosIG5hY2hkZW0gbWlyIG51biBtYWwgZWluIG1pdGxlaWRpZ2VyIFphdWJpIGVya2xhZXJ0IGhhdCwgd2FzIG1hbgpkYXJ1bnRlciB2ZXJzdGVodCwgZm9yZGVyZSBpY2ggRGljaCBpbiBkaWUgQXJlbmEsIERpZWRlci4KCkljaCBkYWNodGUgYW4gZGl2ZXJzZSBMZXV0ZSwgZGllIG1pdCBDNHMgSG9semJ1ZXJzdGVuIHJ1bXJlbm5lbi4gTmFqYS4gOigKCgpMaWFyYSAuLi4gKEphLCBsYWNodCBpaHIgbnVyIHVlYmVyIGVpbmUgdHJhdXJpZ2Uga2xlaW5lIG5haXZlClp3ZXJnZW56YXViZXJpbmUpIDooCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHRzdHN0cyA6KSAoQW5hdG9sLCAxNy4gU2VwIDE5OTksIDEzOjEzOjMzKToKfiMhIHJuPUxpYXJhIHJ0PTkzNzU2OTY5MiByZz1zY2htYXJybgp+IyEgdGlkPTkzNzUyMDI5MApEaWUgSG9semJ1ZXJzdGVuIHNpbmQga2VpbmVzZmFsbHMgdm9uIEM0LgoKQW5hdG9sIC0gZGV1dGV0IGF1ZiBIYXRlIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB0c3RzdHMgOikgKFNpbHZhbmEsIDE3LiBTZXAgMTk5OSwgMTM6NTQ6NTIpOgp+IyEgcm49TGlhcmEgcnQ9OTM3NTY5NjkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM3NTIwMjkwCkVya2xhZXJ0J3MgbWlyIHZpZWxsZWljaHQgYXVjaCBub2NoIGplbWFuZD8KCiAgU2lsdmFuYSAod3VuZGVydCBzaWNoLCB3YXMgYXVzIGRlbiBaYXViZXJlcm4gZ2V3b3JkZW4gaXN0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFGUywga2VyYmVyb3MsIHBhbS4uLiAoQW5hdG9sLCAxNy4gU2VwIDE5OTksIDE2OjEwOjQ2KToKfiMhIHJuPUdyaW1tYm9ybiBydD05Mzc1ODQ1OTAgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9OTM3NTg0NTkwCkRhIGhhdCBlaW5lciB2aWVsIFNwYXNzLiA6bykKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQUZTLCBrZXJiZXJvcywgcGFtLi4uIChHcmltbWJvcm4sIDE3LiBTZXAgMTk5OSwgMTY6MTc6MjIpOgp+IyEgcm49QW5hdG9sIHJ0PTkzNzU4NDY0NiByZz1zY2htYXJybgp+IyEgdGlkPTkzNzU4NDU5MApVbmQgZGFzIG5vY2ggdW5iZXphaGx0IC0gYWxsZXMgYm9laG1pc2NoZSBEb2VyZmVyIHVuZCBpY2ggc29sbCBkYXMgbWFsIGViZW4gYW4KZWluZW0gVGFnIG1hY2hlbi4gVHJhZXVtZXIuLi4KCkdkQSAoYXVjaCBzaW5udm9sbGUgbGlua3MgenUgZGVtIFRoZW1hIHdlcmRlbiBnZXJuZSBnZW5vbW1lbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdHN0c3RzIDopIChMaWFyYSwgMTcuIFNlcCAxOTk5LCAxNzowODo0NSk6Cn4jISBybj1MaWFyYSBydD05Mzc1Njk2OTIgcmc9c2NobWFycm4KfiMhIHRpZD05Mzc1MjAyOTAKUC4gUy46IEljaCBoYWJlIGpldHp0IGdlbnVnIEFuZ2Vib3RlIGZ1ZXIgRWluZnVlaHJ1bmdza3Vyc2UgaW4gZGllCk1hY2hvc3ByYWNoZS4KCkxpYXJhLiBQdW5rdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlaWEuLi4gKFNpbHZhbmEsIDE3LiBTZXAgMTk5OSwgMTg6MzU6NDUpOgpVZWJlcmdlaGUgQXJ0aWtlbCA3OSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA4MCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA4MSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA4MiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA4MyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA4NCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA4NSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA4NiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA4NyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA4OCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA4OSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA5MCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA5MSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA5MiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA5MyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA5NCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA5NSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA5NiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA5NyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA5OCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA5OSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpOb2NoIGtlaW5lIG5ldWVuIEphbW1lcmVpZW4gZWluZ2V0cm9mZmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdlaWEuLi4gKEdyaW1tYm9ybiwgMTcuIFNlcCAxOTk5LCAxODozNjoxNSk6Cn4jISBybj1TaWx2YW5hIHJ0PTkzNzU5MzM0NSByZz1zY2htYXJybgp+IyEgdGlkPTkzNzU5MzM0NQpEdSBpZ25vcmllcnN0IHdpcmtsaWNoIGRpZSBmYWxzY2hlbiB0aHJlYWRzLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWdpZXIgaGFiZW5zIG5pY2ggZWluZmFjaC4uLiAoTWFnZW5icm90LCAxNy4gU2VwIDE5OTksIDIxOjM2OjAxKToKR3JpbnVyIHRlaWx0IERpciBtaXQ6IGRhcmZzdCBkdSBtaXIgc2FnZW4gd2lldmllbCBpY2ggbm9jaCBmb3JzY2hlbiBtdXNzIHVtCkdyaW51ciB0ZWlsdCBEaXIgbWl0OiBhdWYgdWViZXJkZHVyY2hzY2huaXR0bGljaCB6dSBrb21tZW4/CkdyaW51ciB0ZWlsdCBEaXIgbWl0OiA/Pz8KRHUgdGVpbHN0IEdyaW51ciBtaXQ6IG5vZSwgZGFyZiBpY2ggbmljaCA6LwpHcmludXIgdGVpbHQgRGlyIG1pdDogYXJncwpHcmludXIgdGVpbHQgRGlyIG1pdDogcmVpbmVzIGludGVyZXNzZSwgb2IgaWNoIGplIGRhcmF1ZiBob2ZmZW4ga2FubiBpbgpHcmludXIgdGVpbHQgRGlyIG1pdDogYWJzZWhiYXJlciB6ZWl0IHNlaGVyIHp1IHdlcmRlbi4uLiAyMTowNQpHcmludXIgdGVpbHQgRGlyIG1pdDogd2VubiBtYW4ga2F1bSBtZWhyIHF1ZXN0cyBmcmVpIGhhdCBzY2hvbi4uLgpHcmludXIgdGVpbHQgRGlyIG1pdDogc2NoYXUgZGlyIG1hbCBtZWluZSBhcC9mcCBhbjooO0R1IHRlaWxzdCBHcmludXIgbWl0OiBkYXMKbWFjaHN0IGR1IHNjaG9uIDopCkdyaW51ciB0ZWlsdCBEaXIgbWl0OiBkYXJmc3QgZHUgbWlyIG1laW5lIGZwIGluIHByb3plbnQgZGFnZW4/CkR1IHRlaWxzdCBHcmludXIgbWl0OiBub3BlLCBhYmVyIGRhcyBrYW5uc3QgZHUgZGlyIGlyZ2VuZHdpZSBhdXNyZWNobmVuIG9kZXIKRHUgdGVpbHN0IEdyaW51ciBtaXQ6IHNvLCBrZWluZSBhaG51bmcgOykKR3JpbnVyIHRlaWx0IERpciBtaXQ6IGF1c3JlY2huZW4/KG9obmUgaXJnZW5kd2VsY2hlIHphaGxlbiB6dSBrZW5uZW4/KQpEdSB0ZWlsc3QgR3JpbnVyIG1pdDogZGVuIGJlcmVpY2ggaGFsdCwgaW4gZGVtIGR1IGdlcmFkZSBiaXN0CkdyaW51ciB0ZWlsdCBEaXIgbWl0OiBkYW5uIHNhZyBtaXIgYml0dGUgd2lldmllbCBzdHVuZGVuIGljaCBub2NoCkdyaW51ciB0ZWlsdCBEaXIgbWl0OiBmb3JzY2hlbihmb3JzY2hlbiBkZWx1eGUpIG11c3MgdW0gYXVmCkdyaW51ciB0ZWlsdCBEaXIgbWl0OiB1ZWJlcmR1cmNoc2Nobml0dGxpY2ggenUga29tbWVuKG9kZXIgZGFyZnN0IGR1IGRhcwphdWNoO0dyaW51ciB0ZWlsdCBEaXIgbWl0OiBuaWNodD8pCkdyaW51ciB0ZWlsdCBEaXIgbWl0OiBkZWluZSBwZXJzLiBzY2hhZXR6dW5nLi4uCkR1IHRlaWxzdCBHcmludXIgbWl0OiA/Pz8gZHUgbXVzc3QgZm9yc2NoZXJwdW5rdGUgc3VjaGVuLCBtaXQgc3R1bmRlbiBoYXQgZGFzCkR1IHRlaWxzdCBHcmludXIgbWl0OiBuaXggenUgdHVuCkdyaW51ciB0ZWlsdCBEaXIgbWl0OiBpY2ggZGFjaHRlIGZ1ZXIgamVkZXMgdW50IGdpYnQgZXMgYnJ1Y2h0ZWlsZSBlaW5lcyBmcCdzLApHcmludXIgdGVpbHQgRGlyIG1pdDogdW5kIGhhYiBtaWNoIHNjaG9uIHVlYmVyIGRpZSB1bm1lbmdlbiB2b24gZGF0ZW4KR3JpbnVyIHRlaWx0IERpciBtaXQ6IGdld3VuZGVydCBkaWUgZGEgZ2VzcGVpY2hlcnQgd2VyZGVuIG11ZXNzZW4od2FzCndlcjtHcmludXIgdGVpbHQgRGlyIG1pdDogc2Nob24gZ2V1bnRldCBoYXQpCkR1IHRlaWxzdCBHcmludXIgbWl0OiBub2UKR3JpbnVyIHRlaWx0IERpciBtaXQ6IGZ1ZXIgZ2V3aXNzZSB1bnRzIGdpYnRzIGVpbmVuIGZwLCBvZGVyPwpEdSB0ZWlsc3QgR3JpbnVyIG1pdDogZ2VuYXUKRHUgdGVpbHN0IEdyaW51ciBtaXQ6IC0+IGhpbGZlIGZvcnNjaGVycHVua3RlPwpHcmludXIgdGVpbHQgRGlyIG1pdDoga2FubnN0IGR1IG1pciBkYW5uIHdlbmlnc3RlbnMgc2FnZW4gb2IgaWNoIHNjaG9uIHVlYmVyCkdyaW51ciB0ZWlsdCBEaXIgbWl0OiBkaWUgaGFlbGZ0ZSB6dXIgbmFlY2h0ZW4gc3R1ZmUgZ2Vrb21tZW4gYmluPwpHcmludXIgdGVpbHQgRGlyIG1pdDogZ3V0IGxhc3NlbiB3aXIgZGFzIHRoZW1hLi4uCkR1IHRlaWxzdCBHcmludXIgbWl0OiBvayA6KQpHcmludXIgdGVpbHQgRGlyIG1pdDogZGFyZnN0L3dpbGxzdCBkdSBtaXIgdmVycmF0ZW4gd2FzIGVzIGluIGRlbiBuZXVlbgpHcmludXIgdGVpbHQgRGlyIG1pdDogZ2lsZGVucmFldW1lbiBnZWJlbiB3aXJkLi4KRHUgdGVpbHN0IEdyaW51ciBtaXQ6IGRhcyBpc3QgYWxsZXMgTWFnaWVyemV1Z3MsIHdlbm4gZGllIGdpbGRlIGZlcnRpZyBpc3QsCkR1IHRlaWxzdCBHcmludXIgbWl0OiBrYW5uc3QgZHUgZGFzIHNlaGVuIDopCgoqYWVjaHoqCk1hZ2VuYnJvdAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnp1bSBad2VpdGVuLi4uIChNYWdlbmJyb3QsIDE3LiBTZXAgMTk5OSwgMjE6NTE6NDcpOgoKR3JpbnVyIHRlaWx0IERpciBtaXQ6IGthbm5zdCBkdSBkaXIgZGllIGZwLWxpc3RlbiBhbnNlaGVuLCBiZXouIGRpZSBsaXN0ZW4gaW4KR3JpbnVyIHRlaWx0IERpciBtaXQ6IGRlbmVuIHN0ZWh0IGZ1ZXIgd2VsY2hlcyBkZXRhaWwgZXMgc3R1cHNlIGdpYnQuLi4KRHUgdGVpbHN0IEdyaW51ciBtaXQ6IGRhcyB3YWVyZSBkYW5uIHdvaGwgc3BpZWxlcmhpbGZlLi4uCkdyaW51ciB0ZWlsdCBEaXIgbWl0OiBqYSwgaWNoIHdlaXNzLCBhYmVyIGthbm5zdCBfZHVfIGVzPwpEdSB0ZWlsc3QgR3JpbnVyIG1pdDogd2llc28gd2lsbHN0IGR1IGRhcyBkZW5uIHdpc3Nlbj8KRHUgdGVpbHN0IEdyaW51ciBtaXQ6ICpncnVlYmVsKgpHcmludXIgdGVpbHQgRGlyIG1pdDogbWlyIGlzdCBudXIgZWluZSBpZGVlIGdla29tbWVuLCAuLi4obGVocmxpbmcKd2VyZGVuLDtHcmludXIgdGVpbHQgRGlyIG1pdDogYWxsZSBhbnNjaGF1ZW4sIHdpZWRlciBzZWhlciB3ZXJkZW4sIHVuZCBhbgphbGxlO0dyaW51ciB0ZWlsdCBEaXIgbWl0OiB2ZXJzY2hpY2tlbip0ZXVmbGlzY2hncmlucyopCkR1IHRlaWxzdCBHcmludXIgbWl0OiBuZWUsIHNvIGVpbmZhY2ggZ2VodCBkYXMgbmljaHQuLi4KR3JpbnVyIHRlaWx0IERpciBtaXQ6IHdhcyBpc3QgZGFzIHByb2JsZW0/CkR1IHRlaWxzdCBHcmludXIgbWl0OiBkdSBtdXNzdCBzY2hvbiBlaW4gcGFhciBtYWdpZXJzdHVmZW4gbWVociBoYWJlbiwgdW0KRHUgdGVpbHN0IEdyaW51ciBtaXQ6IGRhcmF1ZiB6dWdyaWZmIGhhYmVuIHp1IGtvZW5uZW4uLi4KR3JpbnVyIHRlaWx0IERpciBtaXQ6IG5pY2h0IGRhc3MgZHUgZGVua3N0IGljaCB3dWVyZGUgZXMgdmVyc3VjaGVuIHdvbGxlbiwgaGFiCkdyaW51ciB0ZWlsdCBEaXIgbWl0OiBudXIgZGFzIGZvcnNjaGVuIHNhdHQuLi4KR3JpbnVyIHRlaWx0IERpciBtaXQ6IGdlbmF1IGRhcyBtZWludGUgaWNoLi4uCkR1IHRlaWxzdCBHcmludXIgbWl0OiBlcyBnaWJ0IHNvb29vdmllbCwgd28gbWFuIHZpZWxlIGZvcnNjaGVycHVua3RlIGJla29tbWVuCkR1IHRlaWxzdCBHcmludXIgbWl0OiBrYW5uLi4uIGljaCBkZW5rIGRhIGFuIGRpdmVyc2UgbWluaS1xdWVzdHMgd2llIGRlbgpEdSB0ZWlsc3QgR3JpbnVyIG1pdDogcnVuZW5zdGFiIG9kZXIgc28uLi4KR3JpbnVyIHRlaWx0IERpciBtaXQ6IGFjaCBqYSBnZW5hdSwgaWNoIHdvbGx0ZSBmcmFnZW4gd2VsY2hlIG1pbmlxdWVzdHMgZXMKR3JpbnVyIHRlaWx0IERpciBtaXQ6IGdpYnQuLi4KRHUgdGVpbHN0IEdyaW51ciBtaXQ6IGZyYWcgZGEgbWFsIGxpZWJlciBhbmRlcmUsIGRhcyBkYXJmIGljaCBhdWNoIG5pY2ggc2FnZW4KR3JpbnVyIHRlaWx0IERpciBtaXQ6IGJlei4gZ2lidCBlcyBlaW5lIGxpc3RlIGRlciBtaW5pcXVlc3RzLi4uCkR1IHRlaWxzdCBHcmludXIgbWl0OiBmcmFnIGhhbHQgbWFsIGF1ZiAtYiBvYiBkaXIgamVtYW5kIHdhcyBzYWdlbiBrYW5uCkdyaW51ciB0ZWlsdCBEaXIgbWl0OiBsYW5nc2FtIGJlZ2lubnQgbWljaCBkZXIgdmVydHJhZyB6dSBuZXJ2ZW4uLi4KCipobXBmKgpNYWdlbmJyb3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB6dW0gWndlaXRlbi4uLiAoV3VyemVsLCAxNy4gU2VwIDE5OTksIDIyOjAwOjQwKToKfiMhIHJuPU1hZ2VuYnJvdCBydD05Mzc2MDUxMDcgcmc9c2NobWFycm4KfiMhIHRpZD05Mzc2MDUxMDcKbGVnIGRpciBlaW5lbiBzY2hsZWNodGVuIHJ1ZiB6dS4gZGFzIGhpbGZ0IGVub3JtIDopCgp3dXJ6ZWwgc3ByaWNodCBhdXMgZXJmYWhydW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEdyZWxsZ2VuLCAxNy4gU2VwIDE5OTksIDIyOjIzOjIwKToKW0FiZW50ZXVlcjpNYWdpY3R1eF0gbmVpbiBpY2ggbWVpbmUgd2FubiBoYXQgbWFuIGRpZSBxdWVzdCBnZXNjaGFmZnQ/CltUb2Q6TGFyc10gRGllIHNjaHdhcnplIEt1cHBlIGRlcyBTdWVkZW5zIGhhdCBnZXJhZGUgTWFnaWN0dXggdW1nZWJyYWNodC4KW1RvZDpEaWUgc2Nod2FyemUgS3VwcGUgZGVzIFN1ZWRlbnMgZHJvZWhudCB1bmQgc3RvZWhudCwgYmlzIGVzIGtyYWNodC5dCgp1bmdlc2Nobml0dGVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdHVwc2VzdWNoZSBpbSBSTC1NdWQgT0RFUiBLaW50YXJhIGJlaSBNaWV6ZSB6dW0gS2FmZmVldHJpbmtlbiBhbSBTYW1zdGFnIE5hY2htaXR0YWcgKEFsY2luYSwgMTguIFNlcCAxOTk5LCAxNDowMjo0NSk6CgpNaWV6ZSBoYXQgZWluZW4gS3VjaGVuIGdlYmFja2VuIHVuZCBzdGVodCBkZW0gUmVzdWx0YXQgendlaWZlbG5kIGdlZ2VudWViZXIuCkluc3Rpa3RpdiBzZXR6dCBzaWUgZGllIFZvcnNpY2h0IGF1ZiBNYXhpbXVtIHVuZCBiaWV0ZXQgZXJzdG1hbCBLZWtzZSBhbi4KS2ludGFyYSBhbHMgSG9iYml0aW5lIGxhZXNzdCBzaWNoIGRhdm9uIG5pY2h0IGFic2NocmVja2VuIHVuZCBwcm9iaWVydCBpbQpQcmluei1FaXNlbmhlcnotTW9kdXMgZWluIGtsZWluZXMgU3R1ZWNrIHZvbiBNaWV6ZXMgbmV1ZW0gUmV6ZXB0LiBBdWYgS2ludGFyYXMKVGVsbGVyIGFuZ2Vrb21tZW4gdmVybGllcnQgZGFzIEt1Y2hlbnN0dWVjayBhdWdlbmJsaWNrbGljaCBzZWluZSBGb3JtLiBLaW50YXJhCnByb2JpZXJ0IGVpbmVuIExvZWZmZWwgZGVyIHVuZGVmaW5pZXJiYXJlbiBNYXNzZS4KCktpbnRhcmEgKG1pdCBuYWNoZGVua2xpY2hlbSBHZXNpY2h0c2F1c2RydWNrKTogaG1tbW1tLi4uCgpNaWV6ZSAoendlaWZlbG5kKTogVW5kPwoKS2ludGFyYTogRGllIEF1ZmxhZ2Ugc2NobWVja3QgZWluIGJpc3NjaGVuIHdpZSBIZWlkZWxiZWVycXVhcmsuIERlbiBCb2RlbiBoYWJlCmljaCBiaXNoZXIgbm9jaCBuaWNodCBnZWZ1bmRlbi4KW2V0d2FzIHNwYWV0ZXJdCkFoaGhoaCwgZGEgaXN0IGVyIGphIQoKTWllemU6IEljaCBob2wgc2Nob25tYWwgbmV1ZSBUZWxsZXIuIE9rPwoKS2ludGFyYSB3aWRlcnNwcmljaHQgbmljaHQuCgpNaWV6ZSB6ZXJyZWlzc3Qgd3VldGVuZCBkYXMgUmV6ZXB0IHVuZCB2ZXJmbHVjaHQgZGVuIEVyZmluZGVyLCBiZXZvciBzaWUKc2F1YmVyZSBUZWxsZXIgYXVzIGRlbSBTY2hyYW5rIGhvbHQuIE1pZXplIHZlcnN1Y2h0IGxlaWRlciB2ZXJnZWJsaWNoLCBLaW50YXJhCmFtIEF1ZmVzc2VuIGRlcyBLdWNoZW5zdHVlY2tzIHp1IGhpbmRlcm4uIAoKS2ludGFyYTogQmVrb21tIGljaCBqZXR6dCBlaW5lbiBTdHVwcz8KCk1pZXplIHNjaGF1dCBLaW50YXJhIHJhdGxvcyBhbi4KCgpBbGNpbmEgaW0gQXVmdHJhZyB2b24gTWllemUgdW5kIEtpbnRhcmEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCaXR0ZSBvZWZ0ZXJzIDopIChTa3ksIDE4LiBTZXAgMTk5OSwgMTU6MzE6NTQpOgpbVG9kOkxhcnNdIERhcyBSZXN1bHRhdCBlaW5lciBhdXNnZXNjaGxhZ2VuZW4gV2FybnVuZyBoYXQgZ2VyYWRlIFB1awpbVG9kOkxhcnNdIHVtZ2VicmFjaHQuCkRlaW5lIFNjaHVoZSBnbHVlaGVuIGt1cnogYXVmIHVuZCBoZWlsZW4gRGljaCBlaW4gd2VuaWcuCiA6KSB3ZW5uIGRhcyBudXIgaW1tZXIgc28gd2FlaHJlLi4uLi51ZWJyaWdlbmRzIGJlaWxlaWQgK3NjaG51ZWZmKwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaHVuZ2VyPz8gKFNreSwgMTguIFNlcCAxOTk5LCAyMjowMDo1Myk6CgpTZWlhIHRlaWx0IERpciBtaXQ6IC4gbyBPIChWb3JzaWNodCwgS2FubmliYWxpbiEpIGtvbW1zdCBkdSBtaXQgenVtIEF1dG9tYXRlbiwKU2VpYSB0ZWlsdCBEaXIgbWl0OiBzbyBpbiA1LTEwIG1pbnV0ZW4/IFsyMTo1OV0KRHUgbmlja3N0IFNlaWEgaGVmdGlnIGF1cyBkZXIgRmVybmUgenUuClNlaWEgdGVpbHQgRGlyIG1pdDogLiBvIE8gKFZvcnNpY2h0LCBLYW5uaWJhbGluISkgZ3V0LCBtZWluIG1hZ2VuIGtudXJydApbMjE6NTldCiBEYW5uIGxpZWJlciBkb2NoIG5pY2h0LiA6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFhYWFhYWFhYWggamEgISAoR3JpbW1hbiwgMTkuIFNlcCAxOTk5LCAwMDoxMzo0Nyk6CiBbQWxsZ2VtZWluOkF0dXJdIGljaCB3aWxsIGphIGtlaW5lbiB1bnRlcnN1Y2hlIHNjcmlwdC4gSWNoIHdpbGwgR09UVCEhIQoKR3JpbU1hbiwgc2VociBpbnRlcmVzc2llcnQgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWFhYWFhYWFhaCBqYSAhIChHcmltbWJvcm4sIDE5LiBTZXAgMTk5OSwgMDg6NDA6NTIpOgp+IyEgcm49R3JpbW1hbiBydD05Mzc3MDAwMjcgcmc9c2NobWFycm4KfiMhIHRpZD05Mzc3MDAwMjcKRGllIERpc2t1c3Npb24genUgZGVtIFRoZW1hIGxhZXVmdCBtZWhyIG9kZXIgd2VuaWdlciBnZXJhZGUgaW4gZGVyIFJ1YnJpawoiZGlza3Vzc2lvbiIuIElociB3aXNzdCBzY2hvbiwgZGVyIGFrdHVlbGwgd29obCBhbSBtZWlzdGVuIGlnbm9yaWVydGUKdGhyZWFkLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtbSwgPyAoU3VibGltZSwgMTkuIFNlcCAxOTk5LCAyMDoxNDoxOSk6CgoKTWlyYWRvciB0ZWlsdCBEaXIgbWl0OiAqbGFjaCogaGllciBpc3QgZWluIGFuZmFlbmdlciwgZGVyIGRlbmt0IGVyIHd1ZXJkZSB2b2xsCk1pcmFkb3IgdGVpbHQgRGlyIG1pdDogaW5uZXIgcXVlc3Qgc3RlY2tlbiwgb2J3b2hsIGRhcyBudXIgZWluIHNlaGVyaGF1cyBpc3QuLgpbMTk6NDZdCkR1IHRlaWxzdCBNaXJhZG9yIG1pdDogd29obCBkZWluIHp3ZWl0aWUsIHdhcyA7KSkpKSkKSmVtYW5kIHRlaWx0IERpciBtaXQ6IER1IFd1cnN0ICEKCmh1aCA/IAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhtbSwgPyAoT2xsaSwgMTkuIFNlcCAxOTk5LCAyMToyMzo1MSk6Cn4jISBybj1TdWJsaW1lIHJ0PTkzNzc3MjA1OSByZz1zY2htYXJybgp+IyEgdGlkPTkzNzc3MjA1OQpIYXR0ZW4gd2lyIGRhIG5pY2h0IGdlcmFkZSBlaW4gUG9zdGluZyB2b24gV3Vyc3Q/ICpnKgoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGlsZmUgOi0pIChUYXJhZ29uLCAyMC4gU2VwIDE5OTksIDE1OjEwOjQ3KToKRHUgbWFjaHN0IGJlc2Nod29lcmVuZGUgR2VzdGVuIHVtIExseXN0cmF0aGUgaGVydW0uCkt1cnogYmxpdHp0IGVpbmUgZ3VlbGRlbmUgU2NodXR6YXVyYSB1bSBMbHlzdHJhdGhlIGF1Zi4KRHUgaGFzdCBEaWNoIGdlcmFkZSBpbSBVbWdhbmcgbWl0IGRlbSBaYXViZXJzdGFiIHZlcmJlc3NlcnQuCgpIbW1tLi4uIHd1ZXJkZSBkYXMgbnVyIGltbWVyIHNvIGdlaGVuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmFyZ2wqIChUaG9yLCAyMC4gU2VwIDE5OTksIDIwOjMwOjQ2KToKQ2lzb3Uga251ZGRlbHQgRGljaC4KcmtudWRkZWwgY2lzb3UKV2VubiBqZW1hbmQgbmViZW4gRGlyIHN0ZWh0LCBuaW1tIGtudWRkZWwuCkNpc291ICwgZGllIEVsc3RlciwgZmxhdHRlcnQgemV0ZXJuZCBuYWNoIFN1ZWRvc3Rlbi4Ka251ZGRlbCBjaXNvdQpLbnVkZGxlIHdlbj8KQ2lzb3UgcGx1c3RlcnQgc2ljaCB2b3IgRGlyIGF1Zi4KcmtudWRkZWwgY2lzb3UKV2VubiBqZW1hbmQgbmViZW4gRGlyIHN0ZWh0LCBuaW1tIGtudWRkZWwuCmtudWRkZWwgY2lzb3UKRHUga251ZGRlbHN0IENpc291LgoKTmEgZW5kbGljaCAuLi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqYXJnbCogKEFscGhhLCAyMC4gU2VwIDE5OTksIDIwOjU3OjI3KToKfiMhIHJuPVRob3IgcnQ9OTM3ODU5NDQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM3ODU5NDQ2CkphIGRpZXNlcyAqKkZlYXR1cmUqKiBrb2VubnRlIG1hbiBhdWNoIHJ1aGlnIGF1c2JhdWVuLCBzbyBkYXNzIGVzIHZvbiBya251ZGRlbAplaW5mYWNoIGF1ZmtudWRkZWwgdW1zY2hhbHRldCwgb2Rlcj8KQWxwaGEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpRdW9kIGVyYXQgZGVtb25zdHJhbmR1bSAoQW5hY3Jpb24sIDIxLiBTZXAgMTk5OSwgMDI6MDc6NDUpOgoKW1RydmVzOkFuYWNyaW9uXSBobW0uIDIwIGVpc3dhc3NlciwgNTAgZHJhY2hlbmJsdXQgLi4gc29sbHRlIGxhbmdlbiBmdWVycwpbVHJ2ZXM6QW5hY3Jpb25dIGVyc3RlIDopCls8TWFzdGVSPjpKYXNwZXIgdmVybGFlc3N0IGFscyBMZXR6dGVyIGRpZSBFYmVuZSAnYmcnLCB3b3JhdWYgZGllc2Ugc2ljaCBpbgogICAgICAgICAgZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCltUcnZlczpBbmFjcmlvbl0gZGVyIG5hY2hzY2h1YiBsaWVndCBqYSBhdWYgZGVyIGhhbmQgLi4uIGFlaC4gYXVmIGRlbSBib2RlbiA7KQpFaW4gRGlzaXIga29tbXQgYW4uCkR1IGJyZWl0ZXN0IERlaW5lIEhhZW5kZSBhdXMgdW5kIHNhZ3N0OiBTQ0hVVFohCgoKU29nYXIgZ2VsaWVmZXJ0IGtyaWVndCBtYW4gOikKCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYWNod3VjaHNzb3JnZW4uLi4gKEhyZWlkbWFyLCAyMS4gU2VwIDE5OTksIDA5OjAyOjE0KToKLi4udW5kIHdpZSBtYW4gc2llIGJlc2VpdGlndCEgKHp1bSBWZXJzdGFlbmRuaXM6IE1vcmdvdGggaGF0IE5vbm5lIHp1bSBNYWdpZXIKYmVydWZlbikKCkR1IHRlaWxzdCBOb25uZSBtaXQ6IE5laW4hIERBUyBnbGF1YmUgaWNoIG5pY2h0ISBPZGVyIGV0d2EgZG9jaD8gOykKTW9yZ290aCBncmluc3QgRGljaCBkYWVtb25pc2NoIGF1cyBkZXIgRmVybmUgYW4uCkR1IHRlaWxzdCBNb3Jnb3RoIG1pdDogR3JhdHVsaWVyZSBkaXIgenUgZGVpbmVtIG5ldWVuIFNvaG4hIDspClZhbGEgTW9yZ290aCB0ZWlsdCBEaXIgbWl0OiBkYW5rZQpOb25uZSB0ZWlsdCBEaXIgbWl0OiBkYSBpY2ggamEgc293aWVzbyBrYXVtIG5vY2ggc3BpZWxlICp6dWNrKgpEdSB0ZWlsc3QgTW9yZ290aCBtaXQ6IFdhcyBoYXN0IGR1IGlobSBkZW5uIGdlYm90ZW4/IDstKSkKVmFsYSBNb3Jnb3RoIHRlaWx0IERpciBtaXQ6IGVyIHdvbGx0ZSBzZWxic3QKRHUgdGVpbHN0IE5vbm5lIG1pdDogQWhhLi4udW5kIHdhcyBoYXQgTW9yZ290aCBnZXphaGx0PwpOb25uZSB0ZWlsdCBEaXIgbWl0OiAxMCBraXN0ZW4gYmllciA7LSkKRHUgdGVpbHN0IE1vcmdvdGggbWl0OiBPaGEsIGRhcyBzaW5kIGRpZSBzY2hsaW1tc3RlbiEgOykKRHUgdGVpbHN0IE5vbm5lIG1pdDogKmtpY2hlciogSmFqYSwgYW5kZXJzIGtyaWVndCBtYW4gaGV1dGUgd29obCBrZWluZW4KRHUgdGVpbHN0IE5vbm5lIG1pdDogTmFjaHd1Y2hzIG1laHIsIHdhcz8hIDspCgpKYWphLCBNYWdpZXIgc2luZCBhdWNoIG5pY2h0IG1laHIgZGFzLCB3YXMgc2llIG1hbCB3YXJlbi4uLgoKRWluIGtpY2hlcm5kZXIgSHJlaWRtYXIgKG5laW4sIHdpZSBhbGJlcm4gdm9uIG1pcikgOy0pKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xlaW5lIFVtZnJhZ2UgKmZpZXMga2ljaGVyKiAoQXBvbGxvbmlhLCAyMS4gU2VwIDE5OTksIDE2OjAwOjMxKToKQWVoZW0uLi4gbWVpbmUgWndlaXRpbmUgQW5kcm9tZWRhIChpaHJlcyBaZWljaGVucyBQZmxlZ2VyaW4gZGVzIFRhdHRlcmdyZWlzZXMpCmhhdCBkYSBtYWwgbmUgRnJhZ2UuLi4gR2lidCdzIGhpZXIgamVtYW5kZW4sIGRlci9kaWUgZGVuIE9wcGEgRGllZGVyIHN1ZXNzCmZpbmRldD8/ICpnKgoKQXBvKiAoemllbWxpY2ggZHJlY2tpZyBncmluc2VuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGVpbmUgVW1mcmFnZSAqZmllcyBraWNoZXIqIChIaWdodCwgMjEuIFNlcCAxOTk5LCAxNjowODo0MCk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9OTM3OTI5NjMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM3OTI5NjMxCmhtbW0gZGFzIHdhZyBpY2ggZ2xhdHQgenUgYmV6d2VpZmVsbiAKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3JpbW1ib3JuIHVuZCBkaWUgSHlkcmEgKEdyaW1tYm9ybiwgMjEuIFNlcCAxOTk5LCAxNjoxNjoxNSk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTkzNzkxNjYzMiByZz1wb2xpemVpLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD05Mzc5MTY2MzIKQWxzbywgd2VubiBtYW4gbWl0IGFuc2llaHQgd2llIGRpZSBib2VzZW4gU3BpZWxlciBhdWYgZGllIGFybWUsIGZhc3Qgd2Vocmxvc2UKSHlkcmEgZWluZHJlc2NoZW4sIG1pdCBNb3JkbHVzdCBpbSBIZXJ6ZW4gdW5kIGdld2FsdHRhZXRpZyB2ZXJ6ZXJydGVuCkdlc2ljaHRlcm4gc2ljaCBhdWYgZGllc2VzIGVkbGUgTW9uc3RlciBzdHVlcnplbiwgZGEga2FubiBtYW4gZG9jaCBlaWdlbnRsaWNoCm5pY2h0IGFuZGVycyBhbHMgZGllc2VyIGFybWVuLCBnZXNjaHVuZGVuZW4gS3JlYXR1ciBiZWl6dXN0ZWhlbi4KCk5hdHVlcmxpY2ggZ2lidCBlcyBhdWNoIE1vZWdsaWNoa2VpdGVuIHp1IGhlaWxlbiwgZGllIHdlZGVyIHNvbmRlcmxpY2gKYXVmZmFsbGVuIG5vY2ggbWl0Z2Vsb2dndCB3ZXJkZW4uIE51ciBmYWxscyBqZW1hbmQgZGVua2VuIHNvbGx0ZSBpY2ggd2FlcmUgbnVyCnp1IGRhZW1saWNoIHNvd2FzIHVuZXJrYW5udCB6dSBtYWNoZW4uLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLbGVpbmUgVW1mcmFnZSAqZmllcyBraWNoZXIqIChEaWVkZXIsIDIxLiBTZXAgMTk5OSwgMTk6MDA6MzMpOgp+IyEgcm49SGlnaHQgcnQ9OTM3OTMwMTIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM3OTI5NjMxCnJlY2h0IGhhc3QuLi4KSUNIIEJJTiBOSUNIVCBTVUVTUyEhCgpEaWVkZXIsIGRyb2hlbmQgc2VpbmVuIEtydWVja3N0b2NrIGluIFJpY2h0dW5nIEFuZHJvKiBzY2h3aW5nZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBLbGVpbmUgVW1mcmFnZSAqZmllcyBraWNoZXIqIChXaW0sIDIxLiBTZXAgMTk5OSwgMTk6MDM6MzYpOgp+IyEgcm49RGllZGVyIHJ0PTkzNzk0MDQzMyByZz1zY2htYXJybgp+IyEgdGlkPTkzNzkyOTYzMQpubgpSZTogUmU6IEtsZWluZSBVbWZyYWdlICpmaWVzIGtpY2hlciogKERpZWRlciwgMjEuIFNlcCAxOTk5LCAxOTowMDozMyk6Cih1c3cpClBGTFVOWiwgRGllZGVycyBLYXV0c2NodWtoYW1tZXIgZmxpZWd0IGhlcmVpbiwgYmVoYWVtbWVydCBEaWNoIHp1cgpCZWdydWVzc3VuZyB1bmQgaHVlcGZ0IHdpZWRlciBkYXZvbi4KCkhtbS4uLmRhbWl0IHByb3ZvemllcnN0IER1IGVpbmUgQW50d29ydCwgZGFzIHNvbGx0ZSBEaXIga2xhciBzZWluIDspCgpXaWxsc3QgRHUgd2llZGVyIGVpbmVuIEt1c2NoZWxjaGFvdC1UaXRlbCBoYWJlbiwgZGllc2VzIG1hbCBtaXQgZGVtIEFkamVrdGl2CiJzdWVzcyI/IE51ciB6dS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS2xlaW5lIFVtZnJhZ2UgKmZpZXMga2ljaGVyKiAoU3VibGltZSwgMjEuIFNlcCAxOTk5LCAxOTowNTowOCk6Cn4jISBybj1XaW0gcnQ9OTM3OTQwNjE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM3OTI5NjMxCgpTdWJsIGhhdCdzIHVlYnJpZ2VucyBhdWNoIGVyd2lzY2h0LCBvYndvaGwgZXIgZ2FyIG5pY2h0IGdlbGFlc3RlcnQgaGF0LgpIYXQgZGFzIHZpZWxsZWljaHQgd2FzIG1pdCBkZW0gc2Nod2luZGVuZGVuIE5hbWVuc2dlZGFlY2h0bmlzIGJlaQpHcmVpc2VuIHp1IHR1biA/Pz8KCiptYWxzb2luZGVucmF1bXN0ZWxsKgpTdWJsaW1lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzbyBnZWh0cyAoRGllZGVyLCAyMS4gU2VwIDE5OTksIDIwOjQ2OjUxKToKdSBiZXdlZ3N0IHNjaG5lbGwgZGVpbmUgRmluZ2VyIGF1ZiBkZXIga2xlaW5lbiBIb2x6cGZlaWZlIHVuZCBlaW4gaG9oZXIsCmR1cmNoZHJpbmdlbmRlciwgZnVlcmNodGVybGljaCBzY2hyaWxsZXIgVG9uIGVya2xpbmd0LgpSZWlzc3dvbGYgaGF1dCBhYi4KTWFybG93IGdlaHQgbmFjaCBOb3JkZW4uClBhZHJlaWMgdmVyc2Nod2luZGV0LgoKClRqYSwgaGVoZS4uLiB2b3IgYWxsZW0gZGFzIGxldHp0ZSBpc3Qgc2VlZWVlZWVlaHIgZ2VzY2hpY2t0IDotKSkpCgoKRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqd2FlbHoqIChMYXJhbmlzLCAyMS4gU2VwIDE5OTksIDIwOjU3OjIzKToKRHUgZGVua3N0ICAgLiBvIE8gKHNleCA9IGhvYmJ5PyAoZmVybnNlaGVuIHJ0bCBJSSkpClBhZHJlaWMgc2FndDogcGZ1aSA6KQpEdSBzYWdzdDogcnRsIDIKUGFkcmVpYyBzYWd0OiBzY2hhdXN0ZSBkYXMgZ2VyYWRlIDopPwpEdSBuaWNrc3QgenVzdGltbWVuZC4KUGFkcmVpYyBzYWd0OiBobW0gbW9tLi4gbXVzcyBpY2ggYXVjaCBtYSBndWNrZW4sIHNjaG5lbGwgbWFsIEJTIHdlY2hzZWxuIDopClBhZHJlaWMgc2FndDogYmluIGluIDMwIHNlayB3aWVkZXIgaGllciA6KQoKCmlyZ2VuZHdpZSB3aXR6aWcuLi4uLi4uKmxvbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOYWNod3VjaHNzb3JnZW4uLi4gKFR1bml4Z3V0LCAyMS4gU2VwIDE5OTksIDIxOjA1OjUyKToKfiMhIHJuPUhyZWlkbWFyIHJ0PTkzNzkwNDUzNCByZz1zY2htYXJybgp+IyEgdGlkPTkzNzkwNDUzNApXQVNTU1NTU1NTUz8KCidzIEthcmF0ZS1ad2VyY2hsZSAtIHNwcmFjaGxvcy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdyaW1tYm9ybiB1bmQgZGllIEh5ZHJhIChBbmF0b2wsIDIxLiBTZXAgMTk5OSwgMjI6Mjk6MDApOgp+IyEgb249QW5hdG9sIG90PTkzNzk1MjkyOCBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISBybj1IaWdobGFuZGVyIHJ0PTkzNzkxNjYzMiByZz1wb2xpemVpLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD05Mzc5MTY2MzIKSWNoIG1vZWNodGUgbWljaCBpbiBkZW0gWnVzYW1tZW5oYW5nIGJpdHRlciB1ZWJlciBHcmltbWJvcm4gYmVzY2h3ZXJlbi4KRGllIEh5ZHJhIGZsb2cgZGF2b24gdW5kIGRhcywgb2huZSBkYXNzIEdyaW1taSBzaWUgZ2VoZWlsdCBoYXQhIEljaCBmaW5kZQpkYXMgZWluZSB1bnZlcnNjaGFlbXRlIEZyZWNoaGVpdCEKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJlaW0gSWRsZW4gYmVvYmFjaHRldCAoV2ltLCAyMS4gU2VwIDE5OTksIDIzOjUzOjA5KToKTGFuZ2UgVGVsZXBob25hdGUsIG9kZXIgMDE5MC4uLi4/ClRlZGR5Li4uLi4uLi5bMGQsMDc6Mjg6NTNdIGFiIHVuZCB6dSBydWZ0IHdlciBhbgoKTGFuZ2UgbmFjaC1IYXVzZSBXZWdlIG9kZXIgaW4gZWluZW4gR3JhYmVuIGdlZmFocmVuPwpXdXJzdC4uLi4uLi4uWzBkLDAyOjQ5OjIzXSAtPiBhdWYgZGVtIGhlaW13ZWchIHNjaGFkZSwgenUgbGFuZ3NhbSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChab29rLCAyMi4gU2VwIDE5OTksIDA4OjI4OjUzKToKW0FiZW50ZXVlcjpFbGNpZF0gZGllIGVpY2hlIGluIGRlciBuYWVoZSBkZXIgcXVlbGxlLCB3aWUgZ3V0IGlzdCBkaWU/CltBYmVudGV1ZXI6V2F0ZXJsb29dIHRlc3RlIGVzCltUb2Q6TGFyc10gRWluZSBFaWNoZSBoYXQgZ2VyYWRlIEVsY2lkIHVtZ2VicmFjaHQuCltCZWlsZWlkOldhdGVybG9vXSB3YXIgd29obCB6dSBzdGFyawoKClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKFdhdGVybG9vLCAyMi4gU2VwIDE5OTksIDA4OjMxOjAwKToKfiMhIHJuPVpvb2sgcnQ9OTM3OTg4OTMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM3OTg4OTMzCmFsc28gaWNoIGJpdHRlIGRpY2ggWk9PSyBkdSBoYXN0IGRhIHdhcyB2ZXJnZXNzZW4gbWl0IGF1c3p1c2NobmVpZGVuCmljaCBtZWludGUgZGFzIG1hbiBkaWUgZWluc2NoYWV0emVuIGthbm4KCldhdGVybG9vCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGbGVpc3NpIGFtIFB1dHplbj8gKFN0cm9oYWxtLCAyMi4gU2VwIDE5OTksIDIzOjU3OjUyKToKRWluIFNhZXVyZWRhZW1vbiBzY2hsZWltdCBhZXR6ZW5kIGhlcmVpbi4KRWluIEdhbmcuCkVzIGdpYnQgdmllciBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvYmVuLCB1bnRlbiwgc3VlZHdlc3RlbiB1bmQgbm9yZHdlc3Rlbi4KRWluIFB1dHp0ZXVmZWwuCkppbW15IHJ1ZnQ6IFB1dHp0ZXVmZWwgaGF0IGRlbiBGcmllZGhvZiB2b20gU2NobXV0eiBiZWZyZWl0IQpKaW1teSBydWZ0OiBXZW5uIGRhcyBrZWluIEdydW5kIHp1bSBGZWllcm4gaXN0IDotKQpEZXIgUHV0enRldWZlbCBiZXRyYWNodGV0IGRpZSBGbGVja2VuIGF1ZiBkZWluZXIgS2xlaWR1bmcuCkRlciBQdXR6dGV1ZmVsIHNhZ3Q6IFdvaGwgbmljaHQgbWl0IFBmZXJicmlsIGdld2FzY2hlbiA/IAoKU3Ryb2gqLCB2b24gc29sY2hlbSBFaWZlciBiZWVpbmRydWNrdCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHcmltbWJvcm4gdW5kIGRpZSBIeWRyYSAoR3JpbW1hbiwgMjMuIFNlcCAxOTk5LCAwMDo1NTowMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTM3OTMwNTc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM3OTE2NjMyCiA+Li4uIHdpZSBkaWUgYm9lc2VuIFNwaWVsZXIgYXVmIGRpZSBhcm1lIEh5ZHJhIC4uLjwKSmEsIGVyIGhhdCBuaWNodCBudXIgZGllIEh5ZHJhIGdlaGVpbHQsIHNvbmRlcm4gYXVjaCBtaWNoLCBhbGxlcmRpbmdzIHdhciBkYXMKNW1pbiBzcGFldGVyLCBhbHMgaWNoIGluIGRlciBBYmVudGV1ZXJnaWxkZSBzdGFuZCwgdW5kIG1pY2ggYmVpIGlobSBiZXNjaHdlcnQKaGFiZSwgbWl0IGRlbSBoYWVtaXNjaGVuIEtvbW1lbnRhciB2b24gaWhtIDoKU28sIGFscyBrbGVpbmUgRW50c2NoYWVkaWd1bmcsIHVuZCBkYXMgaXN0IGF1Y2ggaWxsZWdhbC4KCkdyaW1NYW4gLCBrb3Bmc2NodWV0dGVsbmQgd2FzIHZvbiBNYWdpZXJ3aWxsa3VlciBpbiBzZWluZW4gQmFydCBncnVtbWVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAqc2V1ZnoqIChBbmF0b2wsIDIzLiBTZXAgMTk5OSwgMDI6Mzk6NTIpOgpbVGVhbSAxOlN0cm9oYWxtXSBtaXN0IGVsZW5kZXIgOigoKApbVGVhbSAxOlRvZF0gU1RST0hBTE0gSEFUIERBUyBURUFNIFZFUkxBU1NFTi4KW1RvZDpMYXJzXSBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgU3Ryb2hhbG0gdW1nZWJyYWNodC4KW1RvZDpFaW4gSHlkcmFrb3BmXSBoc3Nzc3NzCgpBbmF0b2wgc2FoIGRpZSBUYW50ZSB3YWVsemVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHcmltbWJvcm4gdW5kIGRpZSBIeWRyYSAoR3JpbW1ib3JuLCAyMy4gU2VwIDE5OTksIDE2OjA4OjE1KToKfiMhIHJuPUdyaW1tYW4gcnQ9OTM4MDQ4MTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM3OTE2NjMyCkRhcyBoYWJlIGljaCBhbmRlcnMgZ2VzYWd0LiBJY2ggaGFiZSBnZXNlaGVuIGRhc3MgRHUgcnVtZ2V3ZWludCBoYXN0IGRhc3MgaWNoCk1vbnN0ZXIgaGVpbGUsIGFsc28gaGFiIGljaCB6dW0gQXVzZ2xlaWNoIGF1Y2ggRGljaCBnZWhlaWx0LiBGaW5kIGljaCBmYWlyLgpEYSBEdSBEaWNoIGJlc2Nod2Vyc3QgZGFzcyBEdSB2b24gbWlyIExlYmVucy0gdW5kIHNvbnN0aWdlIFB1bmt0ZSBiZWtvbW1lbgpoYXN0IHdlcmRlIGljaCBtaXIgZGllIGJlaSBHZWxlZ2VuaGVpdCB3aWVkZXJob2xlbi4gVm9yenVnc3dlaXNlIHdlbm4gRHUgZWggYW0KdW50ZXJlbiBFbmRlIGJpc3QuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR3JpbW1ib3JuIHVuZCBkaWUgSHlkcmEgKFRhcmFnb24sIDIzLiBTZXAgMTk5OSwgMTc6Mjk6NTQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTkzODEwMjg5NSByZz1zY2htYXJybgp+IyEgdGlkPTkzNzkxNjYzMgpIbW0sIGRlciBnZXJlY2h0aWdrZWl0IGhhbGJlciBzb2xsdGVzdCBkdSBkYXMgZGFubiBhdWNoIGFuIGRlciBoeWRyYSB0dW4gd2VubgpkaWUgZW50c3ByZWNoZW5kZW4gbGV1dGUgc2llIGFuZ3JlaWZlbiwgdm9yenVnc3dlaXNlIHdlbm4gZGllIGh5ZHJhIGFtIHVudGVyZW4KZW5kZSBpc3QuLi4KVGRTCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHcmltbWJvcm4gdW5kIGRpZSBIeWRyYSAoQW5hdG9sLCAyMy4gU2VwIDE5OTksIDE3OjMxOjA5KToKfiMhIHJuPVRhcmFnb24gcnQ9OTM4MTA3Nzk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM3OTE2NjMyCkdyaW1taSBtaXQgZWluZXIgSHlkcmF0b2V0ZXJydWVzdHVuZy4uLiBhdWNoIHNjaG9uIGxhbmcgbmljaHQgbWVociBnZXNlaGVuLgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogR3JpbW1ib3JuIHVuZCBkaWUgSHlkcmEgKFNpbHZhbmEsIDIzLiBTZXAgMTk5OSwgMTc6MzE6MTkpOgp+IyEgcm49VGFyYWdvbiBydD05MzgxMDc3OTQgcmc9c2NobWFycm4KfiMhIHRpZD05Mzc5MTY2MzIKSmF1LCBrbGFyLi4uIElyZ2VuZHdlciBtZXR6ZWx0IGRpZSBIeWRyYSB1bmQga3VyeiBiZXZvciBzaWUgdG90IGlzdCwgd2lyZCBzaWUKdm9uIEdyaW1tYm9ybiBnYXphcHQ/IERBUyBHZXNjaHJlaSB3aWxsIGljaCBob2VyZW4uIDopCgogIFNpbHZhbmEgLSBtYWcgZGllIElkZWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hIGFsc28uLi4gKExldiwgMjMuIFNlcCAxOTk5LCAxODowMzowNyk6CkR1IGhhc3QgZGFzIEVuZGUgZGVyIEdsYXNob2VobGUgZXJyZWljaHQuIE9rLCBvaywgaWNoIGdlYmUgamEgenUsIGRhc3MKaWNoIGRhcyBpbSBsZXR6dGVuIFJhdW0gYXVjaCBzY2hvbiBiZWhhdXB0ZXQgaGFiZSwgYWJlciBkaWVzbWFsIHN0aW1tdAplcyB3aXJrbGljaCwgRWhyZW53b3J0ISBEZXIgZWluemlnZSBBdXNnYW5nIGZ1ZWhydCBkdXJjaCBkaWUgVWViZXJyZXN0ZQplaW5lcyBTcGllZ2VscyBuYWNoIFN1ZWRlbi4gRGVyIFJhdW0gemVpY2huZXQgc2ljaCBkdXJjaCBkaWUgZ2VzY2htb2x6ZW5lCkdsYXNtYXNzZSBhdXMsIG1pdCBkZXIgV2FlbmRlLCBEZWNrZSB1bmQgQm9kZW4gZ2xlaWNoZXJtYXNzZW4gdWViZXJ6b2dlbgpzaW5kLiBFcyBpc3Qga2F1bSBlaW4gVWViZXJnYW5nIGZlc3R6dXN0ZWxsZW4sIGFsbGVzIHNjaGVpbnQgd2llIGF1cwplaW5lbSBHdXNzLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZGVuLgpNaXJqYW0ga29tbXQgaGVyZWluLgpEdSBhcmdsc3QgZWluIHdlbmlnIHZvciBEaWNoIGhpbi4KRWluIEdsYXNtb2NrIGtvbW10IGFuLgpNaXJqYW0gZ2VodCBuYWNoIFN1ZWRlbi4KTWlyamFtIGtvbW10IGhlcmVpbi4KW1RlYW0gRWluIGtsZWluZXIgQXVzZmx1ZzpMZXZdIGhlaGUuLi4KTWlyamFtIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgoKTGV2IHVlYnQgZGFubiBtYWwgd2VpdGVyIFJlc2V0LUFyZ2Vsbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmxpZWJldm9sbGUgVmVyYWJzY2hpZWR1bmdlbiBhdWYgYWxsZW4gRWJlbmVuIChOZXZvaywgMjMuIFNlcCAxOTk5LCAyMTo0Nzo1MSk6CnVuZCBlcyBpcyBub2NoIG5pY2ggbWFsIEZydWVobGluZy4uLi4uLi4uCltUcnZlczpHb2xhc10gY2lhbyBzY2hhdHogOykKCmt1cnogZGFyYXVmCgpbWmF1YmVyZXI6TVRWXSBieWUgVm9lZ2VsY2hlbgoKCmlzIGRvY2ggbmV0dCB3ZW5uIHNpY2ggYWxsZSBMZXV0ZSBsaWViIGhhYmVuLi4uLi4uLndhcyB3b2hsIGJlaSBkZW4gQ2hhb3RlbiBzbwphYmdlaHQuLi4uLgoKTmV2b2ssIGRlciBzaWNoIHNpY2hlciBpc3QsIGRhc3MgZGllIEt1c2NoZWxjaGFvdGVuIFRlZGR5IHVuZCBEaWVkZXIgYXVjaCBkaWUKRWJlbmUgdm9sbHNjaG1hbHplbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRlJBVUVOLi4uIChBbmF0b2wsIDI0LiBTZXAgMTk5OSwgMDI6NDM6MDMpOgpNaXJqYW0ga2l0emVsdCBEaWNoIGF1cyBkZXIgRmVybmUgYW0gS2lubi4KRHUgdmVyc3VjaHN0LCBEaWNoIHp1IGJlaGVycnNjaGVuLCBtdXNzdCBhYmVyIGRvY2ggbGFjaGVuLgpFaW5lIGhlcnJsaWNoZSBXYWVybWUgZ2VodCB2b24gRGVpbmVtIEFtdWxldHQgYXVzLCB1bmQgRHUgZnVlaGxzdApEaWNoIHByaW1hLgoKQXJnaCEKQW5hdG9sIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbGllYmV2b2xsZSBWZXJhYnNjaGllZHVuZ2VuIGF1ZiBhbGxlbiBFYmVuZW4gKFRlZGR5LCAyNC4gU2VwIDE5OTksIDE3OjA2OjExKToKfiMhIHJuPU5ldm9rIHJ0PTkzODEyMzI3MSByZz1zY2htYXJybgp+IyEgdGlkPTkzODEyMzI3MQpOSUUhISEKClRlZGR5LCBjaGFvdGlzY2ggYm9lc2UsIGZpZXMgdW5kIGdlbWVpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbGllYmV2b2xsZSBWZXJhYnNjaGllZHVuZ2VuIGF1ZiBhbGxlbiBFYmVuZW4gKERpZWRlciwgMjQuIFNlcCAxOTk5LCAxNzowODoxMyk6Cn4jISBybj1UZWRkeSBydD05MzgxOTI3NzEgcmc9c2NobWFycm4KfiMhIHRpZD05MzgxMjMyNzEKSG0sIG1pciB3YXJzIGVpZ2VudGxpY2ggenUgYmxvZWQsIGF1ZiBkaWVzZSBQcm92b2thdGlvbiB6dSByZWFnaWVyZW4gKmdyaW5zKiwKYWJlciBpY2ggbXVzcyBEaXIgZGVubm9jaCB2b2xsIHp1c3RpbW1lbiwgVGVkZHkgOi0pCgpEaWVkZXIsIGtuYWxsdCBOZXZvayBzYXRhbmlzY2ggZ3JpbnNlbmQgZWlucyB2b3IgZGVuIExhdHoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipTRVVGWiogOm8pIChBbmF0b2wsIDI0LiBTZXAgMTk5OSwgMTc6MTI6MTUpOgouLi4uCkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IGlzIGRhcyB3YXMgbmV1ZXM/IDstKQpEZWluIEZyZXVuZCBEaWVkZXIgdGVpbHQgRGlyIG1pdDogc28ga2VubnQgbWFuIGlobiBkb2NoIDopCkRlaW4gRnJldW5kIEZldWVyd2VociB0ZWlsdCBEaXIgbWl0OiBBbHNvIGFsbGVzIGJlaW0gYWx0ZW4sIGphPwoKSWNoIGVyc3BhcmUgZXVjaCBkYXMgdm9yaGVyZ2VnYW5nZW5lIEZydWZlIDspCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCBkZW5rZS4uLiAoU29yY2VyZXIsIDI0LiBTZXAgMTk5OSwgMjE6MTQ6MTcpOgouLi5kYXNzIGljaCBtaXIgd29obCBtYWwgbmUgbmV1ZSBLYXR6ZSB6dWxlZ2VuIHNvbGx0ZSA6CgpTaW5pc3RyYSBzY2hsZWljaHQgaGVyZWluLgpQbG9ldHpsaWNoIGR1cmNoamFndCBEaWNoIGVpbiBzdGVjaGVuZGVyIFNjaG1lcnosIHVuZCBEZWluIEJld3Vzc3RzZWluCmJlZ2lubnQgZGFoaW56dXNjaHdpbmRlbi4KU2luaXN0cmEgc2NobWllZ3Qgc2ljaCBhbiBEZWluZSBCZWluZS4KClNvcmNlcmVyIC0gZ3J1ZWJlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERpZWRlciwgMjQuIFNlcCAxOTk5LCAyMjoyNDoyMyk6CmhtLCBpY2ggc3RlaCBkYSB1bmQgaWRsZS4uLiBuYWphLi4uCgpvdHJlayBmbGllZ3QgaGVyZWluLgpFaW4gTWV0YWxsZ2lnYW50IHN0YW1wZnQgaGVyZWluLgpHb3RyZWsgZmxpZWd0IG5hY2ggT3N0ZW4uCkRlciBNZXRhbGxnaWdhbnQgc3RhbXBmdCBkYXZvbi4KR290cmVrIGZsaWVndCBoZXJlaW4uCkVpbiBNZXRhbGxnaWdhbnQgc3RhbXBmdCBoZXJlaW4uCkdvdHJlayBmbGllZ3QgbmFjaCBXZXN0ZW4uCkRlciBNZXRhbGxnaWdhbnQgc3RhbXBmdCBkYXZvbi4KR290cmVrIGZsaWVndCBoZXJlaW4uCkVpbiBNZXRhbGxnaWdhbnQgc3RhbXBmdCBoZXJlaW4uCiAgRGVyIE1ldGFsbGdpZ2FudCBncmVpZnQgR290cmVrIG1pdCBlaW5lbSBzZWx0c2FtZW4gTGV1Y2h0ZW4gYW4uCiAgRGVyIE1ldGFsbGdpZ2FudCBzY2hsYWVndCBHb3RyZWsgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KRWluIFdhbmRsZXIgd2FiZXJ0IGhlcmVpbi4KR290cmVrIGZsaWVndCBuYWNoIE9zdGVuLgpEZXIgTWV0YWxsZ2lnYW50IHN0YW1wZnQgZGF2b24uCkdvdHJlayBmbGllZ3QgaGVyZWluLgpFaW4gTWV0YWxsZ2lnYW50IHN0YW1wZnQgaGVyZWluLgpHb3RyZWsgZmxpZWd0IG5hY2ggV2VzdGVuLgpEZXIgTWV0YWxsZ2lnYW50IHN0YW1wZnQgZGF2b24uCi4uLgoKZXRjLiBldGMuLi4KCnVuZCBkYW5uIGVuZGxpY2gKW1RvZDpMYXJzXSBNYXNhbXVuZSBoYXQgZ2VyYWRlIEdvdHJlayB1bWdlYnJhY2h0LgpbVG9kOk1hc2FtdW5lXSBVbnRlcnNjaGFldHplIG5pZSBkaWUgTWFjaHQgZGVzIEdlaXN0ZXMhCgoKRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXVhZGliIGZvciBEZXB1dHkgKEFuYXRvbCwgMjQuIFNlcCAxOTk5LCAyMzoyMTowNik6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTkzODIxNTE3NSByZz1wb2xpemVpLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD05MzgyMTUxNzUKVm9sbGVyIE5hbWU6IEVsIE11YWRpYiBoYWVtbWVydCBEaWNoIHp1IFRvZGUKCkd1dGVyIFNoZXJpZmYgO28pCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTXVhZGliIGZvciBEZXB1dHkgKEFuYWNyaW9uLCAyNC4gU2VwIDE5OTksIDIzOjMxOjE2KToKfiMhIHJuPUFuYXRvbCBydD05MzgyMTUyNjYgcmc9c2NobWFycm4KfiMhIHRpZD05MzgyMTUxNzUKSG1tLiBKYSA6KQoKSWNoIGJpbiBtaXIgYWxsZXJkaW5ncyBub2NoIG5pY2h0IGRhcnVlYmVyIGltIGtsYXJlbiwgb2Igc2VpbiBQbGFuIG51biBkYXJhdWYKc2NobGllc3NlbiBsYWVzc3QsIGRhc3MgZXIgYWIgc29mb3J0IGhpbnRlciBqZWRlciBFY2tlIGxhdWVybiB3aXJkIC4uLgoKQW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE11YWRpYiBmb3IgRGVwdXR5IChBbmF0b2wsIDI0LiBTZXAgMTk5OSwgMjM6MzI6NDApOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTM4MjE1ODc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM4MjE1MTc1Cldlbm4gZXIgc2ljaCBzZWluIFByb2pla3QgenUgSGVyemVuIG5pbW10LCBpc3QgZGFzIG1laHIgb2RlciB3ZW5pZ2VyIGVnYWwuIAoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogR3JpbW1ib3JuIHVuZCBkaWUgSHlkcmEgKEdyaW1tYm9ybiwgMjQuIFNlcCAxOTk5LCAyMzo0MToxOSk6Cn4jISBybj1UYXJhZ29uIHJ0PTkzODEwNzc5NCByZz1zY2htYXJybgp+IyEgdGlkPTkzNzkxNjYzMgpJbSBHZWdlbnNhdHogenUgR3JpbW1hbiBoYXQgc2ljaCBkaWUgSHlkcmEgbmljaHQgYmVzY2h3ZXJ0LCBkYXNzIGljaCBzaWUKZ2VoZWlsdCBoYWJlLiBEYWhlciBzZWhlIGljaCBhdWNoIGtlaW5lbiBHcnVuZCwgaWhyICJkZXIgZ2VyZWNodGlna2VpdCBoYWxiZXIiCmRpZSBMUCB3aWVkZXIgd2VnenVuZWhtZW4uCgpPYndvaGwgbWlyIGRpZSBJZGVlIHNjaG9uIGdlZmFlbGx0LCBzaWUgenUgemFwcGVuIHdlbm4gc2llIGt1cnogdm9yIGRlbSBFbmRlCnN0ZWh0LiBNdXNzIG1hbCBkcmF1ZiBhY2h0ZW4gd2FubiBUYXJhZ29uIGRhYmVpIGlzdCBzaWUgenUgaGF1ZW4uIEFiZXIgZXJzdCBpbgplaW5lbSBWaWVydGVsamFociwgSGlnaGxhbmRlciBoYXQgamEgZ2VzYWd0IGljaCBkYXJmIHNvd2FzIGVyc3Qgd2llZGVyIGluCmVpbmVtIFZpZXJ0ZWxqYWhyIG1hY2hlbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogR3JpbW1ib3JuIHVuZCBkaWUgSHlkcmEgKEFuYXRvbCwgMjQuIFNlcCAxOTk5LCAyMzo0MjoxOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTM4MjE2NDc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM3OTE2NjMyCkR1IGhhdHRlc3QgZGllIEh5ZHJhIHNjaG9ubWFsIGdlemFwdC4gCk1laW5lcyBXaXNzZW5zIGhhdCBQdW1hIGRhcmF1cyBnZWxlcm50LiA7bykKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogR3JpbW1ib3JuIHVuZCBkaWUgSHlkcmEgKEdub21lLCAyNS4gU2VwIDE5OTksIDA0OjQ2OjAzKToKfiMhIHJuPUdyaW1tYm9ybiBydD05MzgyMTY0Nzkgcmc9c2NobWFycm4KfiMhIHRpZD05Mzc5MTY2MzIKaXN0IGRpciBsYW5nd2VpbGlnPwpuYWphLCB3YXMgc29sbCBtYW4gYXVjaCB0dW4sIHdlbm4gYWxsZSBhcnRpa2VsIHZlcmxlZ3Qgc2luZCwgZGllIGlyZ2VuZHdpZQp6dSB2ZXJsZWdlbiBnZWhlbi4gZ2VmbGFtZWQgaGF0IG1hbiBkYW5uIGF1Y2ggc2Nob24gdWViZXJhbGwsIG1hbiB3YXJ0ZXQKc2VobnN1ZWNodGlnIGF1ZiByZS1mbGFtZXMsIGF1ZiBkZW4ga2FlbmFlbGVuIGlzdCBhdWNoIG5peCBsb3MsIGFiZXIKbWl0IGRpciB3aWxsIHNpY2ggd2FocnNjaGVpbmxpY2ggZWgga2VpbmVyIHVudGVyaGFsdGVuLi4uIHRqYS4KaWNoIGthbm4gZGFzIHNjaG9uIHZlcnN0ZWhlbi4gaXJnZW5kd2llLgoKZWluZSBrbGVpbmUgYml0dGUgaGFldHQgaWNoIG5vY2g6Cmlnbm9yaWVyZSBlaW5mYWNoIGhpZ2hsYW5kZXJzICdiZXdhZWhydW5nc3plaXRyYXVtJy4uLiBiaXR0ZS4uLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoTm92YXN0b3JtLCAyNS4gU2VwIDE5OTksIDE2OjM4OjEwKToKW0FsbGdlbWVpbjpTdWJsaW1lIHRyaXR0IGRyb2xsaSBpbiBkaWUsd2FzIGdpYW5uaSBpbW1lciBhYnNjaG5laWRldCAsKV0gICAgICAgCltBbGxnZW1laW46SWxlc3NhXSBnaWFubmkga2lsbHQgbWljaCBnZXJhZGUsIGhvY2hlYmVuZSAgICAgCltBbGxnZW1laW46U3VibGltZV0gdW50ZXJ3ZWdzICAgICAgIApbQWxsZ2VtZWluOkRyb2xsaV0gZ2VsZGJldXRlbD8gOikgCltUb2Q6TGFyc10gR2lhbm5pIGhhdCBnZXJhZGUgSWxlc3NhIHVtZ2VicmFjaHQuICAgICAgCgogIE5vdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjopIChBcHN1LCAyNS4gU2VwIDE5OTksIDE4OjAzOjIzKToKW0FsbGdlbWVpbjpPbGxpXSBOYWFhbWQhIDwxNzo0NDowMj4KW0FsbGdlbWVpbjpEcm9sbGkga2lja3QgT2xsaSBhdXMgZGVtIE1HLiA6KSA8MTc6NDU6MDc+XQpbQWxsZ2VtZWluOkplbWFuZCBraWNrdCBnbGVpY2ggbWFsIERyb2xsaSA6KSA8MTc6NDU6Mzc+XQpbQWxsZ2VtZWluOlN1YmxpbWUgZ3JpbnN0LiA8MTc6NDU6NDM+XQpbQWxsZ2VtZWluOlN1YmxpbWUga251ZGRlbHQgRHJvbGxpLiA8MTc6NDU6NTM+XQpbQWxsZ2VtZWluOk9sbGkgaXN0IGRhcyBnZXdvZWhudCB2b24gRHJvbGxpIDspIDwxNzo0NTo1Nz5dCltBbGxnZW1laW46U3VibGltZSBrbnVkZGVsdCBKZW1hbmQuIDwxNzo0NTo1OT5dCltBbGxnZW1laW46RHJvbGxpXSBmZWlnZSBqZW1hbmRzIDspIDwxNzo0NTo1OT4KW0FsbGdlbWVpbjpBcHN1XSBsYXNzIGRpY2ggbmljaHQgYXVmaGFsdGVuIGplbWFuZC4gSGlnaGxhbmRlciBzY2hhdXQKW0FsbGdlbWVpbjpBcHN1XSBob2ZmZW50bGljaCB3ZWcgOikgPDE3OjQ2OjA1PgpbQWxsZ2VtZWluOkRyb2xsaV0gemVpZyBkaWNoIDwxNzo0NjowNz4KW0FsbGdlbWVpbjpEcm9sbGldIHBmZnQgPDE3OjQ2OjI5PgpEcm9sbGkgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCltBbGxnZW1laW46QXBzdV0gaGloaSA8MTc6NDY6NDM+CltBbGxnZW1laW46T2xsaSBncmluc3QuIDwxNzo0Njo0Mz5dCgpUc3RzLiBNYWdpZXJ3aWxsa3Vlcj8gOikKCkFwc3UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAyIChOb3Zhc3Rvcm0sIDI1LiBTZXAgMTk5OSwgMTk6MDg6MzApOgpCaXJkeSBydWZ0IGluIGRlbiBSYXVtOiBTY2hhdXQgZXVjaCBtYWwgZGllIExwcyBhbiA6LSkKQmlyZHkgc3RyYWhsdCBkaWUgUmF1bW1pdHRlIGFuLgogIFp1ciBzZWxiZW4gWmVpdCBpbSBNdWQuLi4KW1RlYW0gSWRpb3RlbjpUb2RdIEJJUkRZIEhBVCBEQVMgVEVBTSBWRVJMQVNTRU4uCltUb2Q6TGFyc10gRGFzIFdhc3NlciBoYXQgZ2VyYWRlIEJpcmR5IHVtZ2VicmFjaHQuCltUb2Q6RGFzIFdhc3NlciBoYXQgZWluIHdlaXRlcmVzIE9wZmVyIHZlcnNjaGx1bmdlbi5dIAoKICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGJlaSBuYXJzLi4uIChHbm9tZSwgMjUuIFNlcCAxOTk5LCAyMjo0Mjo0MSk6CkRlciBUYXhpZmFocmVyIGZyYWd0IERpY2ggbmFjaCBkZW0gV2VnIHp1ciBBYmVudGV1cmVyZ2lsZGUuCkR1IHNhZ3N0OiBKbywgZGEgZmFocm5zZSBpbW1lciBnZXJhZGVhdXMsIGRhbm4gYW4gZGVyIHZpZXJ0ZW4gQW1wZWwgbGlua3MsCkR1IHNhZ3N0OiBkYW5uIGF1ZiAxMDAgYmVzY2hsZXVuaWdlbiB1bmQgU2NoZWliZW53aXNjaGVyIGFuICh3ZWdlbiBkZXIKRHUgc2Fnc3Q6IEdydW5kc2NodWxlIGRhKSwgaGludGVyIE1hY0RyZWNrIHJlY2h0cyBhYmJpZWdlbiB1bmQgZGllIGVyc3RlCkR1IHNhZ3N0OiBTZWl0ZW5zdHJhc3NlIHJlY2h0cy4gRGVuIEJldHRsZXIgZXJzY2hpZXNzZW4gdW5uIHNjaG9uIHNpbmQgc2llCkR1IHNhZ3N0OiBkYS4KRGVyIFRheGlmYWhyZXIgc2FndCAnRGFua2UhJyB1bmQgZ2lidCBHYXMuCgp3YXMgZWluZW0gc28gYWxsZXMga3VyeiB2b3JtIHRvZCBwYXNzaWVyZW4ga2Fubi4uLiA6KQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvIHNwaWVsdCBkYXMgbGViZW4uLi4gKFNvcmNlcmVyLCAyNi4gU2VwIDE5OTksIDAwOjM3OjA4KToKTmV2b2tzIEFtdWxldHQgZ2x1ZWh0IGluIGVpbmVtIGdyZWxsZW4gR3J1ZW4gYXVmIHVuZCBibGVuZGV0IERpY2guIEFscyBEdQp3aWVkZXIgZXR3YXMgc2VoZW4ga2FubnN0LCBpc3QgTmV2b2sgdmVyc2Nod3VuZGVuIHVuZCBlaW4ga2xlaW5lciBzdWVzc2VyCkZyb3NjaCBzaXR6dCB2b3IgRGlyLiBEZXIgRnJvc2NoIGhhdCBlaW5lbiB6aWVtbGljaCB2ZXJkdXR6dGVuCkdlc2ljaHRzYXVzZHJ1Y2suLi4KRWluIEZyb3NjaCB0ZWlsdCBEaXIgbWl0OiBmcm9zY2ggbWljaCA7KQpFaW4gRnJvc2NoIGlzdCBiZXJlaXRzIGVpbiBGcm9zY2guCkVpbiBGcm9zY2ggYXJnbHQgZWluIHdlbmlnIHZvciBzaWNoIGhpbi4KRHUgdGVpbHN0IE5ldm9rIG1pdDogMnggZnJvc2NoZW4ga2FubiBpY2ggbmljaHQgOikKRWluIEZyb3NjaCBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpFaW4gRnJvc2NoIHNhZ3Q6IGRyZWNrIGVsZW5kZXIKRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpFaW4gRnJvc2NoIGh1ZXBmdCBhdWYgc2VpbmVtIGRhZW1saWNoZW4gYW11ZWx0dCBydW0KTmV2b2tzIEFtdWxldHQgZ2x1ZWh0IGluIGVpbmVtIGdyZWxsZW4gR3J1ZW4gYXVmIHVuZCBibGVuZGV0IERpY2guIEFscyBEdQp3aWVkZXIgZXR3YXMgc2VoZW4ga2FubnN0LCBpc3QgTmV2b2sgdmVyc2Nod3VuZGVuIHVuZCBlaW4ga2xlaW5lciBzdWVzc2VyCkZyb3NjaCBzaXR6dCB2b3IgRGlyLiBEZXIgRnJvc2NoIGhhdCBlaW5lbiB6aWVtbGljaCB2ZXJkdXR6dGVuCkdlc2ljaHRzYXVzZHJ1Y2suLi4KRWluIEZyb3NjaCBncnVtbWVsdC4KRWluIEZyb3NjaCBncnVtbWVsdC4KRWluIEZyb3NjaCBncnVtbWVsdC4KRWluIEZyb3NjaCBzYWd0OiBzY2hlaXNzIGFtdWxldHQKRWluIEZyb3NjaCBxdWFrdCBhdXMgdm9sbGVyIEtlaGxlOiBRdWFhYWFhayBRdWFhYWFrIQpFaW4gRnJvc2NoIHF1YWt0IGF1cyB2b2xsZXIgS2VobGU6IFF1YWFhYWshCkVpbiBGcm9zY2ggcXVha3QgYXVzIHZvbGxlciBLZWhsZTogUXVhYWFhYWFrIQpOZXZvayBxdWFrdCBpbiBldHdhIHdpZSBlaW4gRnJvc2NoOiBrd2FhYWsga3dhawoKQmVzY2h3b2VyZSBrZWluZSBNYWVjaHRlLCBkaWUgRHUgbmljaHQga29udHJvbGxpZXJlbiBrYW5uc3QgLi4uLgoKU29yY2VyZXIgLSBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmVybnNlaGVuIG1hbCBhbmRlcnMuLi4uIChOb3Zhc3Rvcm0sIDI2LiBTZXAgMTk5OSwgMDA6Mzc6NTIpOgpNdHYgZ2xvdHp0IERpY2ggYW4uCgogIE5vdmEgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc28gc3BpZWx0IGRhcyBsZWJlbi4uLiAoTmV2b2ssIDI2LiBTZXAgMTk5OSwgMDA6Mzg6MDApOgp+IyEgcm49U29yY2VyZXIgcnQ9OTM4MzA2MjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM4MzA2MjI4ClNlbGxlcmllClFVYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlciBkZW4gU2NoYWRlbiBoYXQuLi4gKEFuYXRvbCwgMjYuIFNlcCAxOTk5LCAwNTowMzoyMik6CltTZWhlcjpCaXJkeSBmZXVlcnQgVGVhbTogU3RlcmJlaGlsZmUgbWFlY2h0aWcgZ2V3YWx0aWcgYW4uIDopXQpbVG9kOkxhcnNdIERlciBEcmFjaGUgTmFycyBoYXQgZ2VyYWRlIEFlbmVhcyB1bWdlYnJhY2h0LgpbVG9kOkRlciBEcmFjaGUgTmFycyB3aW5kZXQgc2ljaCB2b3IgTGFjaGVuLl0KW1RvZDpMYXJzXSBEZXIgRHJhY2hlIE5hcnMgaGF0IGdlcmFkZSBDYWtleSB1bWdlYnJhY2h0LgpbVG9kOkRlciBEcmFjaGUgTmFycyB3aW5kZXQgc2ljaCB2b3IgTGFjaGVuLl0KW1NlaGVyOkJpcmR5IGlzdCBtaXQgc2ljaCBzZWhyIHp1ZnJpZWRlbi5dCgouLi4gc3BvdHRldCBqZWRlciBCZXNjaHJlaWJ1bmcuCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZXIgZGVuIFNjaGFkZW4gaGF0Li4uIChCaXJkeSwgMjYuIFNlcCAxOTk5LCAwNToxMzoyMik6Cn4jISBybj1BbmF0b2wgcnQ9OTM4MzIyMjAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM4MzIyMjAyCkhhYiBOYXJzIHNjaGxpZXNzbGljaCBhdWYgbWVpbmVtIEZiYW5kLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZXIgZGVuIFNjaGFkZW4gaGF0Li4uIChBbmF0b2wsIDI2LiBTZXAgMTk5OSwgMDU6MTU6NTIpOgp+IyEgcm49QmlyZHkgcnQ9OTM4MzIyODAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM4MzIyMjAyCkljaCBrZW5uZSBMZXV0ZSwgZGllIGhhYmVuICpQYWRyZWljKiBhdWYgZGVtIEZiYW5kLgoKUHJvdHprb3BmISA7KQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2Igc2llIHp1bSBOYWNoYmFybiBnZWh0PyA7KSAoQ2lzb3UsIDI2LiBTZXAgMTk5OSwgMTE6MTE6MDgpOgogKE1vZXJkZXI6IEdlaXN0IGVpbmVzIFBhcmFsbGVsd2VsdHdhbGRkcmFjaGVuKSBTbyBrbGFwcHRzIGFiZXIgbmljaHQgbWl0IGRlbQogKE1vZXJkZXI6R2Vpc3QgZWluZXMgUGFyYWxsZWx3ZWx0d2FsZGRyYWNoZW4pIE5hY2hiYXJuLCBEZXZpbGNoZW4hCgpEZWluZSBGcmV1bmRpbiBEZXZpbGNoZW4gdGVpbHQgRGlyIG1pdDogaHVuZ2VyOikgYmlzIGRlbm4KRGVpbmUgRnJldW5kaW4gRGV2aWxjaGVuIHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1CgpPZGVyIGhhdCBzaWUgYW5zIHNwdWVsZW4gZ2VkYWNodD8gOykKCkRpZSBkaWViaXNjaGUgRWxzdGVyLCBraWNoZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR3JpbW1ib3JuIHVuZCBkaWUgSHlkcmEgKEdyaW1tYW4sIDI2LiBTZXAgMTk5OSwgMTE6NTk6MzYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTkzODEwMjg5NSByZz1zY2htYXJybgp+IyEgdGlkPTkzNzkxNjYzMgpLbGluZ3QgaW50ZXJlc3NhbnQsIGljaCB3ZWlzcyBudXIgbmljaHQsIG9iIGRhcyB3aXJrbGljaCBzbyBkaWUgZ3V0ZSBJZGVlIGlzdAouLi4KCkdyaW1NYW4gLCBmaW5kZXQgZGFzIGVpZ2VudGxpY2ggYWxiZXJuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIC4uLiAoTWlyamFtLCAyNi4gU2VwIDE5OTksIDE3OjIxOjE0KToKICBEdSBrcmF0enQgZGVuIExldWNodHRyb2xsLgogIERlciBMZXVjaHR0cm9sbCB0cmlmZnQgRGljaC4KRHUgc2NoaW1wZnN0OiBNaXQgRGVpbmVyIEZyZXNzZSBnZWhvZXJzdCBEdSBpbiBkaWUgU2NocmVja2Vuc3NwaXR6ZSEKRWluIExldWNodHRyb2xsIGVyd2lkZXJ0OiAqZ3J1bW1lbCoKICBEdSB0cmlmZnN0IGRlbiBMZXVjaHR0cm9sbCBzZWhyIGhhcnQuCgpNaXJqYW0sIGlzdCBpbW1lciB3aWVkZXIgYmVnZWlzdGVydCB2b20gQmVzY2hpbXBmZW4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoYSBoYSA7KSAoQ3VjaHVsbGluLCAyNi4gU2VwIDE5OTksIDIzOjI3OjE2KToKSGVyemxpY2ggd2lsbGtvbW1lbiBpbSBkZXIgQWthZGVtaWUgZGVyIGdlaXN0aWdlbiBLcmFmdCEKUmFuZGFyIFRvYmlzIHVlYmVycmVpY2h0IERpciBlaW5lIFNjaHJpZnRyb2xsZS4KUmVhcGVyIHdlaHJ0ICJ0cmV0ZSIgYWIuCk5ldm9rIHdlaHJ0ICJ0cmV0ZSIgYWIuClNoYXJpYSB3ZWhydCAidHJldGUiIGFiLgpSZWFwZXIgd2VocnQgInRyZXRlIiBhYi4KTmV2b2sgd2VocnQgInRyZXRlIiBhYi4KU2hhcmlhIHdlaHJ0ICJ0cmV0ZSIgYWIuCkxseXN0cmF0aGUgdGVpbHQgRGlyIG1pdDogR3JhdHVsYXRpb24hIEljaCBoYWIgRGlyIGJlaW0gemF1YmVybiBhbGxnZW1laW4gZWluCkxseXN0cmF0aGUgdGVpbHQgRGlyIG1pdDogd2VuaWcgdW50ZXIgZGllIEFybWUgZ2VncmlmZmVuLiBWaWVsIEdsdWVjawpMbHlzdHJhdGhlIHRlaWx0IERpciBtaXQ6IHdlaXRlcmhpbi4KCipwZnJ0KgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkViZW4gaW5uZXIgVG9yZnN0ZWNoZXJlaSAuLi4gKExpYXJhLCAyNi4gU2VwIDE5OTksIDIzOjQ2OjM5KToKR3JpbW1hbiBrb21tdCBsYWNoZW5kIGhlcmVpbmdlc3RvbHBlcnQuCldvbyBlaWVydCBsYWxsZW5kIGhlcmVpbi4KR3JpbW1hbiBzdG9scGVydCBsYXV0IGxhY2hlbmQgbmFjaCBTdWVkZW4uCldvbyBmYWVuZ3QgYW4genUgZ2VzdGlrdWxpZXJlbiB1bmQgc3RvbHBlcnQgdmVyd2lycnQgbmFjaCBTdWVkZW4uCgpMaWFyYSAuLi4gZnJhZ3Qgc2ljaCwgd2FzIGF1cyBkZW4gVHJ2ZXMgZ2V3b3JkZW4gaXN0ICpnZ2cqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUamEuLi4gKEFuYXRvbCwgMjcuIFNlcCAxOTk5LCAwMjoxOToyNCk6Cls8TWFzdGVSPjpBcHN1IGxhZXNzdCBkaWUgRWJlbmUgJ01hZW5uZXInIGVudHN0ZWhlbi5dCltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIEFwc3UgdW1nZWJyYWNodC4KClVuZCBpY2ggc2FjaCBub2NoOiBXZXJkIGVyd2FjaHNlbiEKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFlaD8gKE5ldm9rLCAyNy4gU2VwIDE5OTksIDAyOjIyOjE0KToKW0JlaWxlaWQ6WndvY2tsaHViZXJdIHZvbiB3ZWdlbiBsZWljaHQsIGRhcyB3YXJuIGRpZSBhYm9sZXRocyB1bmQgZ2VmYWVocmxpY2ghCltCZWlsZWlkOkxpYXJhXSB3ZXJkIHphdWJlcmVyClp3b2NrbGh1YmVyIGlzdCBhbndlc2VuZCwKVm9sbGVyIE5hbWU6IFp3b2NrbGh1YmVyIHJkZUFiIHNvbHZlbnQKUmFzc2U6IEVsZiwgIEdpbGRlOiBaYXViZXJlciwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogMjFkIDEzOjUzOjE2LCAgIFNwaWVsZXJsZXZlbDogMjAsICAgR2lsZGVubGV2ZWw6IDUKCgphZWggamEuLi4uLi4KCk5ldm9rLCBkZXIgbGFuZ3NhbSBhYmVyIHNpY2hlciBkb2NoIGFuIEFsemhlaW1lciBiZWkgTGV1dGVuIHVlYmVyIDkwIGdsYXVidC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmVrZW5udG5pc3NlIGVpbmVzIFphdWJpLVp3ZWl0aWVzIChOZXZvaywgMjcuIFNlcCAxOTk5LCAwMjo1MDoxNyk6CgpQYXJzaXZhbCB0ZWlsdCBEaXIgbWl0OiBhcmdsLi4uIGVzIGJlZ2lubnQgbWlyIHJpY2h0aWcgc3Bhc3MgenUgbWFjaGVuLCBuZW4KUGFyc2l2YWwgdGVpbHQgRGlyIG1pdDogdHJ2ZXMgenUgc3BpZWxlbi4uLiAKCkhhcmhhcmhhci4uLi4uLi4uZnJ1ZWhlciBrcmllZ2VuIHdpciBldWNoIGFsbGUuLi4ub2IgRnJ1Y2h0endlcmcgb2RlcgpTcGl0em9oci4uLi4uLi4uCgoKTmV2b2ssIHNpY2ggaW5zIEZhZXVzdGNoZW4gbGFjaGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFlaD8gKExpYXJhLCAyNy4gU2VwIDE5OTksIDA1OjQ2OjI3KToKfiMhIHJuPU5ldm9rIHJ0PTkzODM5ODkzNCByZz1zY2htYXJybgp+IyEgdGlkPTkzODM5ODkzNApJY2ggbWVpbnRlIERpY2gsIE5ldm9rLCB3ZWdlbiBEZWluZXIgdm9yYW5nZWdhbmdlbmVuIEJlbWVya3VuZy4gOy0pCgpMaWFyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFlaD8gKEFwc3UsIDI3LiBTZXAgMTk5OSwgMDk6MTk6NDIpOgp+IyEgcm49TmV2b2sgcnQ9OTM4Mzk4OTM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM4Mzk4OTM0Cndlbm4gZHUgc2Nob24gcG9zdGVzdCwgZGFubiBiaXR0ZSBhbGxlcyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBpbiB4aWFuIC4uLiAoRkxXKSAoRnJlaXRhZywgMjguIFNlcCAxOTk5LCAxMzo0MTo1MCk6CkhpZXIgZnVlaHJ0IGRpZSBTdHJhc3NlIGRlcyBndWVsZGVuZW4gRmx1c3NlcyBuYWNoIFN1ZWRlbi4gRGllIFN0cmFzc2UgaXN0CnJlY2h0cyB1bmQgbGlua3MgbWl0IEJhZXVtZW4gYmVwZmxhbnp0LCBzbyBkYXNzIHVuZ2VmYWVociBuZWJlbiBqZWRlbSBIYXVzIGVpbgpCYXVtIHN0ZWh0LiBJbSBXZXN0ZW4gc2llaHQgZHUgZWluIFdvaG5oYXVzLCBpbSBPc3RlbiBlaW4gemllbWxpY2gKYmF1ZmFlbGxpZ2VzIEhhdXMuCkltIFdlc3RlbiBiZWZpbmRldCBzaWNoIGVpbmUgYWJnZXNjaGxvc3NlbmUgVHVlci4gCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuIHVuZCBub3JkZW4uIAoKTmFtYWthcmkgc2FndDogd28gYmluIGljaCBoaWVyCk5hbWFrYXJpIGZhZWxsdCB0b3QgenUgQm9kZW4uCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCltUb2Q6TGFyc10gRWluZSBzY2h3ZXJlIEtyYW5raGVpdCBoYXQgZ2VyYWRlIE5hbWFrYXJpIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmdzdCA/PyAoQW5hY3Jpb24sIDI4LiBTZXAgMTk5OSwgMjA6Mzc6MTkpOgpFYmVuIGJlaSBkZW4gRGVsZmVuIC4uLgoKRGllc2UgSG9laGxlIGlzdCBlaW4ga2xlaW4gd2VuaWcgZ3JvZXNzZXIgYWxzIGplbmUsIGRpZSBzaWNoIGRpcmVrdCBoaW50ZXIKZGVtIFdhc3NlcmZhbGwgYmVmaW5kZXQuIERhIHNpZSBzY2hvbiB1bSBlaW5pZ2VzIHRpZWZlciBpbSBHZXN0ZWluIGxpZWd0LCBpc3QKZXMgaGllciBuaWNodCBudXIgdHJvY2tlbmVyLCBzb25kZXJuIGF1Y2ggd2VzZW50bGljaCBkdW5rbGVyLiBEZW4gV2Fzc2VyZmFsbAprYW5uc3QgRHUgdm9uIGhpZXIgYXVzIG5pY2h0IG1laHIgc2VoZW4sIGFiZXIgc2VpbiBsYXV0ZXMgR2V0b2VzZSBkcmluZ3QgYmlzCmhpZXJoZXIuIE5hY2ggU3VlZG9zdGVuIGZ1ZWhydCBlaW4gRHVyY2hnYW5nIHp1IGVpbmVtIFBsYXRlYXUuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiB1bnRlbiwgc3VlZGVuIHVuZCBzdWVkb3N0ZW4uIApEaWUgYmVyZWl0cyB6aWVtbGljaCBzdGlua2VuZGUgTGVpY2hlIGVpbmVzIFdhZWNodGVycy4KRGV2aWxjaGVuIGRlciBwc3ljaG9wYXRoaXNjaGUgS251dHNjaGZpc2NoIG1pdCBOZWJlbndpcmt1bmdlbi4KRGllIHNjaGltbWVsbmRlIHVuZCBoYWxidmVyd2VzdGUgTGVpY2hlIGVpbmVzIFdhZWNodGVycy4KRHUgc2Fnc3Q6IGZyIG9iCkR1IHNhZ3N0OiB2cyAxMzAKUGFkcmVpYyBydWZ0OiBORUlOTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk4hISEhISEhISEhISEhISEhClBhZHJlaWMgcnVmdDogISEhISEhISEhISEhISEhISEhISEhISEhISEhClBhZHJlaWMgcnVmdDogTkVJTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OISEhISEhISEhISEhISEhIQpQYWRyZWljIHJ1ZnQ6ICEhISEhISEhISEhISEhISEhISEhISEhISEhIQpQYWRyZWljIHJ1ZnQ6IE5FSU5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTiEhISEhISEhISEhISEhISEKUGFkcmVpYyBydWZ0OiAhISEhISEhISEhISEhISEhISEhISEhISEhISEKUGFkcmVpYyBydWZ0OiBORUlOTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk4hISEhISEhISEhISEhISEhClBhZHJlaWMgcnVmdDogISEhISEhISEhISEhISEhISEhISEhISEhISEhClBhZHJlaWMgcnVmdDogTkVJTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OISEhISEhISEhISEhISEhIQpQYWRyZWljIHJ1ZnQ6ICEhISEhISEhISEhISEhISEhISEhISEhISEhIQpQYWRyZWljIHJ1ZnQ6IE5FSU5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTiEhISEhISEhISEhISEhISEKUGFkcmVpYyBydWZ0OiAhISEhISEhISEhISEhISEhISEhISEhISEhISEKVm9yc2ljaHQtTW9kdXMgKDEzMCkKRHUgc2Fnc3Q6IGhhdCBlciBhbmdzdCA/CkRldmlsY2hlbiBzYWd0OiB3YXNuIG51IGthcHV0dD8KQ2lyZGFuIHJ1ZnQ6IFJ1aGFlCkRldmlsY2hlbiBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpEdSBncmluc3QgZmllc3QuClN1YmxpbWUgcnVmdDogSXN0IGRhcyBqZXR6dCBlaW4gU2Nyb2xsID8gOykKRGlyaW9uIHJ1ZnQ6IG9rLiBzb3ZpZWwgZGF6dS4KCgpoZWhlCgphbmFjKiAtIGZyb2VobGljaCB2b3Igc2ljaCBoaW4gbWV0el5oXmheaF5oZm9yc2NoZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgTWFlcmNoZW4gdm9uIFF1YWxtaSB1bmQgZGVtIEVsZW1lbnRhciAoU3VibGltZSwgMjguIFNlcCAxOTk5LCAyMTowNToyMCk6CkdyaW1tYW4gdW5kIFN1YmxpbWUgc2NoYXUnbiBzaWNoIG5hY2ggInp1LW1ldHplbG4tbG9obmVuZGUtS3JlYXR1cmVuIiBpbgpUb3J0dWdhIHVtLiBad2lzY2hlbmR1cmNoIHBhc3NpZXJ0ZSBmb2xnZW5kZXMgOiA7KQoKR3JpbW1hbiBzYWd0OiBxdWFsbWkgZnJhZ3QgbmFjaCB3YXNzZXJlYmVuZSwgaGFiZW4gd2lyIGx1c3Q/CnNhZyBobW0Kc2FnIGVyc3RtYWwgaGllciBzY2hhdW4Kc2FnIGRhIGhhYiBpY2ggc2Nob24gZWluaWdlIGtpbGxzIGF1ZiBkZXIgVy1FYmVuZS4KCjIgbWluIHNwYWV0ZXIgOykKCkRlaW4gRnJldW5kIFF1YWxtaSB0ZWlsdCBEaXIgbWl0OiBoaWxmZSA6KSBpY2ggc3RlY2tlIGluIGRlciBXLUViZW5lIHVuZCBkYXMKRGVpbiBGcmV1bmQgUXVhbG1pIHRlaWx0IERpciBtaXQ6IEVsZW1lbnRhciBpc3QgZGEgOikgKmFyZ3MqIGtvbW1lIG5pY2h0IG1laHIKRGVpbiBGcmV1bmQgUXVhbG1pIHRlaWx0IERpciBtaXQ6IHJhdXMKU3VibGltZSBraWNoZXJ0LgpHcmltbWFuIGZyYWd0IDogV2FzPwpTdWJsaW1lIHNhZ3Q6IFNjcm9sbCBuYWNoIG9iZW4uCkdyaW1tYW4gZ3JpbnN0LgoKMSBtaW4gc3BhZXRlciA6ClF1YWxtaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKClF1YWxtaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKQXVzenVlZ2UgOgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBVcmxhdWIgKERhcmttYWdlLCAyOS4gU2VwIDE5OTksIDA5OjAyOjA0KToKfiMhIHJuPU1vcmdvdGggcnQ9OTM4NDk3MTMwIHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD05Mzg0NDQzNDUKKndhZWx6KgoKTW9yZ290aCwgZW50d2VkZXIgRHUgYmlzdCB1bmdsYXVibGljaCB3ZWljaCBnZXdvcmRlbiBvZGVyIER1IHdpbGxzdCB3YXMKdW5nbGF1YmxpY2ggd2ljaHRpZ2VzIGdlbmVobWlndCBoYWJlbi4uLi4uCgpOZWIgZ3JpbnN0IHNpY2ggZWluZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGVwdXR5IChNYWhhdG11LCAyOS4gU2VwIDE5OTksIDE0OjU1OjI3KToKfiMhIHJuPU11YWRpYiBydD05Mzg1MjY0ODggcmc9cG9saXplaS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9OTM4NTI2NDg4CkhtbW0gLi4uIEhvYm8gaGF0dGUgZG9jaCB1bmxhZW5ndCBlaW4gcGFhciBndXRlIElkZWVuIGZ1ZXIgZGFzIFNoZXJpZmYtCkFtdCwgdWViZXJuaW1tIGRpZSBkb2NoIG1hbCB1bmQgYXJiZWl0ZSBEaWNoIGRhbWl0IGluIHVuc2VyZSBIZXJ6ZW4gdm9yIDopCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmdHAuLi4gKE1hZ2VuYnJvdCwgMjkuIFNlcCAxOTk5LCAxOToyNjoxOSk6CgpEdSBzYWdzdDogVmFtcGlyZSwgc2NoYXUgbWFsIGJlaSBtaXIgbWl0IGZ0cCByZWluLCBkdSBicmF1Y2hzdCBlaW4gcGFhcgpzYWNoZW46CkR1IHNhZ3N0OiAxOTQuMjMxLjEyNS44MCBhbm9ueW1vdXMsIHVudGVyIC9wdWIvbGludXgvaXBtYXNxLiBkb3J0IGlzdCBhdWNoIGVpbgpEdSBzYWdzdDogdGV4dCwgd28gYWxsZXMgZHJpbnN0ZWh0LiB3ZW5uIGR1IGRhbm4gbm9jaCBwcm9ibGVtZSBoYXN0LCBmcmFnCkR1IHNhZ3N0OiBlaW5mYWNoIDopClZhbXBpcmUgd2lyZCBrdXJ6IHZvbiBlaW5lciBsZXVjaHRlbmRlbiBBdXJhIGVpbmdlaHVlbGx0LCBkaWUgdm9uIHNlaW5lbQpBbXVsZXR0IGF1c3p1Z2VoZW4gc2NoZWludC4KCmphLCBGVFAgaGF0IG5lIHRvbGxlIHdpcmt1bmcgaXJnZW5kd2llICprcmF0emFta29wcCoKCk1hZ2VuYnJvdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdGphLi4uIChEaWVkZXIsIDI5LiBTZXAgMTk5OSwgMjA6NTI6MzApOgpSb25kYSBzYWd0OiB3aXIgcmVkZW4gaGllciB1ZWJlciBXaW5kb29mLVByb2dzLCBnZWxsPwpBcm1pdGFnZSBzY2hhdXQgZGljaCBtaXQgYm9lc2UgZnVua2VsbmRlbiBBdWdlbiBhbi4KCgpEaWVkZXIKIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGluIGRlciBhcmVuYSA6KSAoSmFzb25yaWdpZCwgMzAuIFNlcCAxOTk5LCAxMjowMDo0Mik6CkRFUiBLQU1QRiBJTiBERVIgQVJFTkEgQkVHSU5OVCEgTU9FR0UgREVSIFNUQUVSS0VSRSBHRVdJTk5FTiEKR3VhcmQgc2FndDogPEhpY2s+IQpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDogCkdvbGFzIG11c3MgVHJlZmZlciBoaW5uZWhtZW4uCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOiAKV2F0ZXJsb28gd2lyZCBnZXRyb2ZmZW4uCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOiAKRGFzIGlzdCBEcmFtYXRpayEhIE1pdHRlbiBpbSBnZWZhZWhybGljaHN0ZW4gS2FtcGYgZmxpZWh0IFdhdGVybG9vCmF1cyBkZXIgQXJlbmEuCldhdGVybG9vIGdlaHQgYXVzIGRlciBBcmVuYS4KRGVyIFpvbWJpZSBnZWh0LgpUcmFuY2UgZ3JpbnN0LgpVbmFzYWkgc2FndDogdHlwaXNjaApHdWFyZCBncnVtbWVsdC4KVHJhbmNlIHJ1ZnQgaW4gZGllIEFyZW5hIDoKUHlqYW1hdHJhZWdlcgpKYW1hbHNraSBuaWNrdCBUcmFuY2UgenUuCkd1YXJkIHNjaHVldHRlbHQgZW50cnVlc3RldCBkZW4gS29wZi4KRHUgcnVmc3QgaW4gZGllIEFyZW5hIDoKSG9zZW5iZWluZWJlaW1oaW5zZXR6ZW5ob2NoemllaGVyICEhClVuYXNhaSBzYWd0OiBzYXVuYXVudGVuc2l0emVyCkFwb2xsb25pYSBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KSmFtYWxza2kgcGZlaWZ0IGFuZXJrZW5uZW5kLgpUcmFuY2Ugd2FlbHp0IHNpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgpBcG9sbG9uaWEgd2FlbHp0IHNpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgpHdWFyZCBzY2h1ZXR0ZWx0IHNpY2ggZWluZmFjaCBzby4KQXBvbGxvbmlhIHNhZ3Q6IERFUiB3YXIgcmljaHRpZyBndXQsIEphc29uUi4KSmFtYWxza2kgZ3JpbnN0LgpUcmFuY2UgcnVmdCBpbiBkaWUgQXJlbmEgOgpaYWhuYmVjaGVyYmVudXR6ZXIhCkFwb2xsb25pYSBuaWNrdCBVbmFzYWkgenUuCk1vbm90b25pIHJ1ZnQgaW4gZGllIEFyZW5hIDoKU2NoYXR0ZW5zdGVoZXIhISEgVW50ZXJob3NlbndlY2hzbGVyIQpEdSBydWZzdCBpbiBkaWUgQXJlbmEgOgpzY2hhdHRlbnBhcmtlciAhISBsaWdodHZlcnNpb25zcGllbGVyICEhIGZkcC13YWVobGVyICEhIHNpdHpwaW5rbGVyICEhClVuYXNhaSBkZW5rdCAgIC4gbyBPIChzdHVuZGVuIHNwYWV0ZXIpClRyYW5jZSBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpKYW1hbHNraSBzYWd0OiBNdWVsbHRyZW5uZXI/CkRhcmlhIHJ1ZnQgaW4gZGllIEFyZW5hIDoKSGFuZHNjaHVoc2NobmVsbGJhbGx3ZXJmZXIKVHJhbmNlIHNhZ3Q6IGRpZXNlIEhhbmRlaW5jcmVtZXIKRGFyaWEgc2FndDogVXBzClRyYW5jZSBzYWd0OiBwZmZmZnQKCnVzdy4gdXNmLgoKSmFzb24gbGFjaHQgaW1tZXIgbm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIEdlaXN0ZXIgZGllIGljaCByaWVmLi4uLiAoTmV2b2ssIDMwLiBTZXAgMTk5OSwgMjM6NDc6MjEpOgpEYXMgQnVlcm8gZGVzIEtvbW1hbmRhbnRlbi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG5vcmRlbi4KTm9lbCBkYXMgd2FuZGVsbmRlIENoYW9zLgpbVGVhbTpEdW5rZWx6d2VyZ2VdIEdvdHJlayBzdWNodCBBbmhhZW5nZXIuCkR1bmtlbGVsZmUgQXJtaXRhZ2UgaXN0ICduZSBXb2NoZSBpbSBVcmxhdWIgLi4uIDopLgpUYXJpbmEuCltUZWFtOldpdHdlbm1hY2hlcl0gRmVsZXJpYW4gdWVidCBzaWNoIHp1IExhcnMuLgpCcmllc2VsdHJpbSBHcmllc2VsaHVjayBkZXIgS29tbWFuZGFudCBkZXMgU3RydXYuCkR1IGRlbmtzdCAgIC4gbyBPIChnZW5hdSB3YXMgaWNoIGJyYXVjaGUuLi4uZHJvdywgZHVlcmdhciB1bmQgb2VzdGVycmVpY2hlcikKRHUgZGVua3N0ICAgLiBvIE8gKHdlbm4gbnUgbm9jaCBuIGJheWVyIGRhenUga29tbXQuLi4uLi4pCkR1IGdyaW5zdC4KRGlyaW9uIGZsaWVndCBoZXJlaW4uCkR1IHdhZWx6dCBEaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KCgpOZXZvaywgZGVyIGRhcyBEZW5rZW4gd29obCBhbSBCZXN0ZW4gZGVuIFBmZXJkZW4gdWViZXJsYXNzZW4gc29sbHRlLi4uLnZvbgp3ZWdlbiBkZW4gZ3JvZXNzZXJlbiBLb2VwZmVuIHVuZCBzbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYmFjayBpbiB0b3duIC4uLiAoU2hhcmlhLCAgMS4gT2t0IDE5OTksIDEyOjU0OjA1KToKCj4gZmhpc3QgbWFoYXRtYQpNYWhhdG1hOgp2b20gMjAuIE9rdCAxOTk4LCAxOTozNiBiaXMgMjAuIE9rdCAxOTk4LCAxOTo1MywgMGggMTZtaW4Kdm9tICAxLiBPa3QgMTk5OSwgMTE6NDkgYmlzICAxLiBPa3QgMTk5OSwgMTI6NDcsIDBoIDU4bWluCgp0c2NodWVzcyBoeWRyYSA6LSkKClNoYXJpYSwgaGVpc3N0IE1haGF0bWEgd2lsbGtvbW1lbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBiYWNrIGluIHRvd24gLi4uIChBbmF0b2wsICAxLiBPa3QgMTk5OSwgMTM6NDc6MjIpOgp+IyEgcm49U2hhcmlhIHJ0PTkzODc4MjQ0NSByZz1zY2htYXJybgp+IyEgdGlkPTkzODc4MjQ0NQpPY2gsIHdpciBoYWJlbiBqYSBqZXR6dCBLYXJhdGUtU2x5Zm94LCB3ZXIgYnJhdWNodCBkYSBub2NoIE1haGF0bWEuLi4KCkFuYXRvbCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogYmFjayBpbiB0b3duIC4uLiAoTmFpcm9sZiwgIDEuIE9rdCAxOTk5LCAxNDowODoyNSk6Cn4jISBybj1BbmF0b2wgcnQ9OTM4Nzg1NjQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM4NzgyNDQ1Cm1vb29tZW50IGRhcyBpc3QgbmljaCBLYXJhdGUtU2x5Zm94IGRhcyBzaW5kICJkaWUKS2FyYXRlLVNseXNjcmlwdF5NXk1eTV5NXk1eTWZvZXhlIiA6LSkKCk5haXJvbGYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3ZW5uIGljaCBkb2NoIGR1cmVmdGUuLi4uIDopIChQdWssICAxLiBPa3QgMTk5OSwgMjA6MDE6NTUpOgpJbnRhcmJpciBzY2hhdXQgS2FyaWMgYWJzY2hhZXR6ZW5kIGFuLgoKSW50YXJiaXIgc2FndDogIElnaXR0LCBLYXJpYyBpc3QgaGVpbGlnZXIgYWxzIGFsbCBkYXMgS2xlcmlrZXJwYWNrIHp1c2FtbWVuIQpCUklORyBEQVMgVklFSCBVTSEKWndlcmdlIGViZW4gCgpQdWsgKGthbm4gc2ljaCBuZSBsYWNoZW4gbmljaHQgdmVya25laWZlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthZW1wZmVyIHVudGVyIHNpY2ggLi4uIChMaWFyYSwgIDIuIE9rdCAxOTk5LCAyMzoxOToyNCk6CltUcnZlczpHb2xhcyB3aWxsIGRpZXNlcyBmb3RvIGVuZGxpY2ggc2VoZW4hISFdCltUcnZlczpNYW5nb10gd2VsY2hlcyB2b24gZGVuIHZpZWxlbj8gOykKW1RydmVzOkdvbGFzXSBkYXMsIGF1ZiBkZW0gaWNoIGdub21lIGVpbmVuIC4uLiBhZWhtIG5hamEgaGFsdCBkaWVzZXMgZWluZSA7KQpbVHJ2ZXM6TGlhcmFdIGR1IHdhcz8/Pz8/CltUcnZlczpMaWFyYSBoYXQgRWxlZmFudGVub2hyZW4uXQpbVHJ2ZXM6R25vbWUgaHVlc3RlbHQuXQpbVHJ2ZXM6U3Rlcm50YWxlcl0gd2llPz8/IHdhcz8/PyBGRVJLRUwhCltUcnZlczpHbm9tZSB6aWVodCBHb2xhcyBiZXNlaXRlLl0KW1RydmVzOkxpYXJhXSB3YWgganVuZ3MgZG9jaCBuaWNodCBoaWVyIDstKQpbVHJ2ZXM6R25vbWUgbGllc3QgR29sYXMgZGllIExldml0ZW4uXQpbVHJ2ZXM6R29sYXNdIC4uLiAqZnJldSogLi4uCltUcnZlczpMaWFyYV0gb2ggb2ggaWNoIGhhYnMgaW1tZXIgZ2V3dXNzdCBhdWYgc293YXMgc3RlaG4gZGllIGFsc28gOy0pCltUcnZlczpHbm9tZV0gKnp3aW5rZXIqCltUcnZlczpHb2xhc10gZ25vbWUsIGxhc3MgdW5zIGF1ZiBtYWVubmVyIGdlaGVuLCBkYSBoYWIgaWNoIGdyYWQgZGFzIHNhZ2VuIDspCltUcnZlczpTdGVybnRhbGVyIG11c3Mgc2ljaCBkb2NoIHNlaHIgd3VuZGVybi5dCltUcnZlczpHbm9tZV0genUgREVSIHNwYWV0ZW4gc3R1bmRlIGxpZWJlciBhdWYgU00gOy0pCltUcnZlczpHb2xhc10gZGFtaXQgbWFuIGF1Y2ggd2FjaCBibGVpYnQgOikKWzxNYXN0ZVI+Okdub21lXSBsYWcKWzxNYXN0ZVI+OjxNYXN0ZVI+XSAxMi4yMSBjbWRzL3MsIDEyMC4wNiBjb21wIGxpbmVzL3MKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDAuNiUvNjAsIDAuOCUvMTUsIDQuOSUvMQpbVHJ2ZXM6TGlhcmFdIGhtIGdub21lIGdlaHRzIGRpciBuaWNodCBzY2huZWxsIGdlbnVnPyA7LTkKR29sYXMgZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBhbi4KR29sYXMgdGVpbHQgRGlyIG1pdDogdW5kIGltIGhpbnRlcmdydW5kIGxhdWZlbiBkaWUgZ2FuemUgMDE5MCB3ZXJidW5nZW4gOikpKQoKTGlhcmEsIG9obmUgV29ydGUgb2RlciBzcHJhY2hsb3Mgb2RlciBzbyA7LSkpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthZW1wZmVyIHVudGVyIHNpY2ggLi4uIChBcG9sbG9uaWEsICAzLiBPa3QgMTk5OSwgMTA6NDQ6MTEpOgp+IyEgcm49TGlhcmEgcnQ9OTM4OTA2MzY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM4OTA2MzY0CkljaCB3dXNzdCBkb2NoIHNjaG9uIGltbWVyLCBkYXNzIG1pdCBkZW5lbiB3YXMgbmljaHQgc3RpbW10Li4uIDspIFNwYWV0ZXN0ZW5zCnNlaXQgR25vbWUgbWl0IGRlbSBIaW50ZXJuIHp1ZXJzdCBpcmdlbmR3byByZWluZ2VmbG9nZW4ga29tbXQgdW5kIFBvcnRhbGUgdm9uCmhpbnRlbiBuaW1tdC4uLiA7KQoKQXBvKiAoZGllIGVuZGxpY2ggZWluZW4gU2lubiBpbiBkZXIgRWJlbmUgJ01hZW5uZXInIHNpZWh0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IChDdWNodWxsaW4sICAzLiBPa3QgMTk5OSwgMTQ6MTc6MDgpOgpNYWdpY3R1eHkgcnVmdDogaGlsZmUhISEhIERpZSByaWVzaWdlIFNjaGxhbmdlIHRvZXRldCBtaWNoIHVuZCBtZWluZW4KTWFnaWN0dXh5IHJ1ZnQ6IGVyc3RpZSEhIQpbVG9kOkxhcnNdIEVpbmUgU2NoYXR0ZW5mcmF1IGhhdCBnZXJhZGUgTWFnaWN0dXh5IHVtZ2VicmFjaHQuCgpJbSBQcmluemlwIG5laW4uIDspCkN1Y2gKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEthZW1wZmVyIHVudGVyIHNpY2ggLi4uIChIb3VzZWhvbGRlciwgIDMuIE9rdCAxOTk5LCAxNDo0Mzo1OSk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9OTM4OTQ3NDUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM4OTA2MzY0CnBmZnQgZ25vbWUgaXN0IGVpbiBhbmdlYmEgaWNoIGhhYiBub2NoIG5pZSBnZXNlaG4gZGFzcyBlaW4gcG9ydGFsIGluCmlyZ2VuZGVpbmVyIHdlaXNlIGJlZWluZHJ1Y2t0IHZvbiBnbm9tZSdzICJiZWhhbmRsdW5nIiBnZXdlc2VuIHdhZXJlIC4uLgpISCAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEthZW1wZmVyIHVudGVyIHNpY2ggLi4uIChHbm9tZSwgIDMuIE9rdCAxOTk5LCAxODo1NToxMyk6Cn4jISBybj1Ib3VzZWhvbGRlciBydD05Mzg5NjE4Mzkgcmc9c2NobWFycm4KfiMhIHRpZD05Mzg5MDYzNjQKaGEhCm1pY2ggZXJzdCBmcmFnZW4sIHdpZSBkdSBhdWNoIHNvIGVpbmUgc2Nob2VuIHNjaG11dHppZ2UgbW1vdXQgaGluYmVrb21tc3QKdW5kIGpldHp0IHVlYmVyIG1pY2ggaGVyemllaGVuLi4uIERBUyBoYWJlbiB3aXIgZ2VybmUuLi4gOikKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBLYWVtcGZlciB1bnRlciBzaWNoIC4uLiAoVGVkZHksICAzLiBPa3QgMTk5OSwgMTg6NTU6NDkpOgp+IyEgcm49R25vbWUgcnQ9OTM4OTc2OTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM4OTA2MzY0CkFlaG0sIGVyIHVlYmVyIGRpY2ggLi4uID8hPwoKVGVkZHksIHdpbGwgZGFzIG5jaWh0IHdpcmtsaWNoIHdpc3Nlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN0cm9oIGluIGFrdGlvbiAoTWVzaXJpaSwgIDQuIE9rdCAxOTk5LCAwNDozNjo0Nyk6CnRyb2hhbG0gc2FndDogZGFlZCBlaXNjaCBoZWkgc2FhbGFlbm5pY2ggc2Nod2FldHplLCBkYWVkZSBkYSBudWEgbm9jaCBibGVlZApTdHJvaGFsbSBzYWd0OiBhdXMgZGEgd2Flc2NoIGd1Y2tlIHVuZCBnYWEgbml4IG1pIGdlYWJiZWx0IGdyaWVobgpIVUNIICEhISBXYXMgd2FyIGRhcyA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWVkZWxzLCB3aXIgbXVlc3NlbiB3YXMgdHVuIC4uLiAoTWlyamFtLCAgNC4gT2t0IDE5OTksIDA1OjU4OjI2KToKTmV1bGljaCBhdWYgZGVtIEthZW1wZmVya2FuYWw6CgpbVHJ2ZXM6TmV2b2tdIGdhbnogZWluZmFjaC4uLi5lcyBoZWlzc3QgREVSIFZvcmdlc2V0enRlLi4uLi4ubWFuIHNvbGwgZGVuCltUcnZlczpOZXZva10gQmVmZWhsZW4gZGVzIFZvcmdlc2V0enRlbiBGb2xnZSBsZWlzdGVuLkZyYXVlbiBzaW5kIGRhIG5pY2h0CltUcnZlczpOZXZva10gYmVydWVja3NpY2h0aWd0Li4KCk1pcmphbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVuc2FmcmFzcy4uLiAoSHJlaWRtYXIsICA0LiBPa3QgMTk5OSwgMTI6MjM6MDgpOgpEYXMgZXMgc28gc2NobGltbSBpc3QsIGhhYmUgaWNoIG5pY2h0IGdld3Vzc3QuLi4KCkFuYXRvbCBydWZ0OiBXQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSApbQWxsZ2VtZWluOkFuYXRvbCBzY2hyZWl0Ll0KRHUgdGVpbHN0IEFuYXRvbCBtaXQ6IEhtPyBXYXMnbiBsb3M/CkFuYXRvbCBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBNZW5zYQoKZWluIHNpY2h0bGljaCBnZXNjaG9ja3RlciBIcmVpZG1hcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKY2hhb3RlbiB1bmQgZGVyIHp1c2FtbWVuaGFsdCA6KSAoUHVrLCAgNC4gT2t0IDE5OTksIDE3OjQ1OjU3KToKCkRlaW4gRnJldW5kIFJhc3B1dGluIHRlaWx0IERpciBtaXQ6IG1hbiBnZWJlIG1pciBzb2ZvcnQgZWluZW4gbGV2ZWwgMTEgY2hhb3RlbgpEZWluIEZyZXVuZCBSYXNwdXRpbiB0ZWlsdCBEaXIgbWl0OiA6KQoKRGVpbiBGcmV1bmQgU3RpbmcgdGVpbHQgRGlyIG1pdDogbnVyIGt1cnoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWdpZXIgYXVmbSBGYmFuZCAuLi4gKExpYXJhLCAgNC4gT2t0IDE5OTksIDIwOjUzOjQ1KToKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGNoYW90ZW4gYWJ3XmFedV5md2VydGVuICpkdWNrKgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogZHVtZGlkdW0KUm9uZGEgdGVpbHQgRGlyIG1pdDogamEsIGdlbmF1IHNvIGthbm4gbWFuIGVzIHNpY2ggbWl0IGFsbGVuIExldXRlbgpSb25kYSB0ZWlsdCBEaXIgbWl0OiBnbGVpY2h6ZWl0aWcgdmVyZGVyYmVibiA7KSkpCgpMaWFyYSwgbGFjaHQgaW1tZXIgbm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWNoIG5laW4uLi4gKFNvcmNlcmVyLCAgNC4gT2t0IDE5OTksIDIxOjQwOjMxKToKSG93aWUga29tbXQgYW4uCkR1IGZ1ZWhsc3QgRGljaCBuaWNodCBnYW56IGFsbGVpbiBoaWVyLgoKV2VyIGhhZXR0ZSBlcyBnZWRhY2h0IDopCgpTb3JjZXJlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBVcmxhdWIgKFRlZGR5LCAgNS4gT2t0IDE5OTksIDE5OjQ0OjE4KToKfiMhIHJuPUFyayBydD05MzkxNTI0MjMgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTkzOTE1MjA1MwpOYWphLCBEVSBoYXN0IGRpaGMgenVsZXR6dCBhbmdla3VlbmRpZ3QKClRlZGR5ClAuUy46IFNlaCBudXIgaWNoIGRhIG5lbiB6dXNhbW1lbmhhbmc/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBVcmxhdWIgKEFyaywgIDUuIE9rdCAxOTk5LCAxOTo0OTozNyk6Cn4jISBybj1UZWRkeSBydD05MzkxNTI2NTggcmc9c2NobWFycm4KfiMhIHRpZD05MzkxNTIwNTMKTm9lLCBpY2ggc2VoZSBhdWNoIGVpbmVuOiBmZWhsZ2VzY2hsYWdlbmUgUGxhbnVuZyB1bmQgZWluIHVuc3ltcGF0aXNjaGVyClJlZ2lvbnNtYWdpZXIsIGRlciB3YWhyc2NoZWlubGljaCBtaXNzZ2VsYXVudCB2b20gendlaXRlbiBUYWcgQXJiZWl0IG5hY2gnbQpVcmxhdWIga29tbXQuIERhcyBpc3Qgd2FocnNjaGVpbmxpY2ggYXVjaCBmdWVyIEFwb2xsb25pYSB6dXZpZWwuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVXJsYXViIChBcG9sbG9uaWEsICA1LiBPa3QgMTk5OSwgMTk6NTM6NDEpOgp+IyEgcm49QXJrIHJ0PTkzOTE1Mjk3NyByZz1zY2htYXJybgp+IyEgdGlkPTkzOTE1MjA1MwpXRVNTRU4gZmVobGdlc2NobGFnZW5lIFBsYW51bmc/Pz8gTWlyIHNjaGVpbnQsIGJpcyBqZXR6dCBsYWV1ZnQgYWxsZXMgbm9jaApwcmltYS4uLiB1bmQgd2FzIG1pc3NnZWxhdW50IHZvbSBBcmJlaXRlbiBrb21tZW4gYW5nZWh0Li4uIGRhIGtvZW5uZW4gd2lyIHVucwpkaWUgSGFuZCByZWljaGVuLi4uIFVuZCBhdXMgUHJpbnppcCBzY2hsYWVndCBtaWNoIHNvIHNjaG5lbGwgbml4IGluIGRpZQpGbHVjaHQsIGJhc3RhIDopCgpBcG8qICh1ZWJlcmhhdXB0IG5pY2h0IGZsdWVjaHRlbmQsIHNjaG9uIGdhciBuaWNodCB2b3IgQXJrKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVXJsYXViIChBcmssICA1LiBPa3QgMTk5OSwgMTk6NTk6MjQpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTkzOTE1MzIyMSByZz1zY2htYXJybgp+IyEgdGlkPTkzOTE1MjA1MwpPaywgc3VwZXIsIGRhbm4ga290emVuIHdpciB1bnMgZ2xlaWNoIG1hbCBhbGxlIGFuLiBEYXMgZnJldXQgbWljaCBzbywgZGFzcyBpY2gKc2FiYmVybiBrb2VubnRlLCB2ZXJzcHJpY2h0IGVpbiBzdXBpIFN0YW1tdGlzY2ggenUgd2VyZGVuLiBEZWwsIHdhcyBpc3QgbWl0ClZhbmVzc2E/IE9kZXIgc2luZCBpaHIgZGFzIHp1IHZpZWxlIEhpcm5pcyAqa2ljaGVyKj8KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdWNodD8gTklFISAoUm9uZGEsICA1LiBPa3QgMTk5OSwgMjI6Mjc6MTgpOgpXYXMgaGV1dGUgbmFjaHQgYWxsZXMgc28gcGFzc2llcnQgOykKRGVpbmUgRnJldW5kaW4gTGlhcmEgYmVncnVlc3N0IE1vcmduZXIgZGFubiBkb2NoIGltIGtyZWlzIGRlciBTdWNodGllcyBhdXMgZGVyCkZlcm5lLgpEdSB0ZWlsc3QgTGlhcmEgbWl0OiB3ZXIgaXN0IGhpZXIgc3VlY2h0aWc/Pz8gTmE/Pz8KRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogbmFqYSBkZXIgS3JlaXMgdW5kIE1vcmdlciAqZyoKRHUgZ3JpbnN0IExpYXJhIGF1cyBkZXIgRmVybmUgYW4uCkFuYXRvbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbQWxsZ2VtZWluOlJvbmRhIHJvdGZsdF0KTGlhcmEgcnVmdDogQW5hdG9sCltBbGxnZW1laW46Um9uZGFdIEdFTkFVIERBUyBIQUIgSUNIIEFVQ0ggR0VEQUNIVCA7KSkpKSkKCk9laG0sIGhhc3RlIGRlbiBudW4gdmVyc3RhbmRlbiwgTGlhcmE/Cgoqc2V1Znp0KiBobXBmLCBlcyBsZWJlIGRlciBlcmtsYWVydGUgV2l0eiA7KQoKUm9uZGEgKnZlcnBlbm50IHVuZCBhdWYgZGVtIEhlaW13ZWcuLi4gaWNoIGJpbiBkb2NoIG5pY2h0IHN1ZWNodGlnISEhKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdWNodD8gTklFISAoTGlhcmEsICA1LiBPa3QgMTk5OSwgMjI6Mjg6MDYpOgp+IyEgcm49Um9uZGEgcnQ9OTM5MTYyNDM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM5MTYyNDM4Ck5vZS4KCkxpYXJhLCBad2VyZ2VuemF1YmVyaW5lLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdWNodD8gTklFISAoQW5hdG9sLCAgNS4gT2t0IDE5OTksIDIyOjI4OjE0KToKfiMhIHJuPVJvbmRhIHJ0PTkzOTE2MjQzOCByZz1zY2htYXJybgp+IyEgdGlkPTkzOTE2MjQzOApKYSBqYSwgbWFjaCcgRHUgbnVyIHVlYmVyIGRhcyBBbHRlciBEZWluZSBXaXR6ZS4uLi4KCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1pdCAxNyBoYXQgbWFuIG5vY2guLi4gKFN0cmVhd2tjZXVyLCAgNi4gT2t0IDE5OTksIDExOjMyOjI0KToKVmVyZ2xpY2hlbiBtaXQgRGVpbmVuIE1pdHNwaWVsZXJuLCBrZW5uc3QgRHUgRGljaCBpbSBNb3JnZW5HcmF1ZW4gc2VocgpzY2hsZWNodCBhdXMuIEFic29sdXQgZ2VzZWhlbiBrZW5uc3QgRHUgbnVyIHdlbmlnIHZvbSBNb3JnZW5HcmF1ZW4uCkFsdGVyOiAgMTcgVGFnZSAxNyBTdHVuZGVuIDE3IE1pbnV0ZW4gMTggU2VrdW5kZW4uCgoKTGllZGVyIHphZWhsdCBkaWUgU2VrdW5kZSBpbW1lciBudXIgZ2VyYWRlIFplaXRlbi4uLiA6LSkKCnJyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWxic3QgZGFzIE1vcmdlbkdyYXVlbiBmdWVyY2h0ZXQgc2ljaC4uLiAoWmFwaG9iLCAgNi4gT2t0IDE5OTksIDE5OjA3OjM0KToKWzxNYXN0ZVI+OlphcGhvYl0gdXB0aW1lCls8TWFzdGVSPjo8TWFzdGVSPl0gRGFzIE1VRCBsYWV1ZnQgamV0enQgMzEgVGFnZSwgNyBTdHVuZGVuLCAzNyBNaW51dGVuIHVuZCAyMgpbPE1hc3RlUj46PE1hc3RlUj5dIFNla3VuZGVuLiBFcyBzaW5kIG1vbWVudGFuIDkxIFNwaWVsZXIgZWluZ2Vsb2dndDsgZGFzCls8TWFzdGVSPjo8TWFzdGVSPl0gTWF4aW11bSBsYWcgaGV1dGUgYmVpIDEwMiB1bmQgZGVyIFJla29yZCBiaXNoZXIgaXN0IDIxNC4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KClphcGhvYiwgdW5nZWt1ZXJ0enQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdhZWhuIChEYXJrbWFnZSwgIDYuIE9rdCAxOTk5LCAxOToxMzo0NSk6CkRleCBydWZ0OiBoaWxiZXJ0CkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCkR1IGRlbmtzdCAuIG8gMCAoR2xlaWNoIGtvbW10IHNpY2hlciBkZXIgMTcxMzkyLiAibHVzdGlnZSIgQXJ0aWtlbCBtaXQgIkR1CnNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuIikKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIFphcGhvYiBpbiBSdWJyaWsgInNjaG1hcnJuIi4KCk5lYiwgdW5nZWt1ZXJ6dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhISB2b24gd2VnZW4gKE5ldm9rLCAgNi4gT2t0IDE5OTksIDE5OjM3OjM5KToKW01vZXJkZXI6R2Vpc3QgZWluZXMgWndlcmdzXSBEZXZpbGNoZW4gaXN0IGRvb2YgdW5kIHN0aW5rdCEKCndvbWl0IGJld2llc2VuIHdhZXJlLi4uLi4ubmljaHQgZGllIFp3ZXJnZSBzaW5kIGRpZSBTdGlua2VyIHNvbmRlcm4gSG9iYml0cwpkaWUgaW4gZGVyIHNlbGJlbiBIb2VoZSBkaWUgRHVmdHdvbGtlIGhpbnRlcmxhc3Nlbi4uLi51bmQgdW5zIFp3ZXJnZW4gd2lyZHMgaW4KZGllIFNjaHVoZSBnZXNjaG9iZW4uLi4uLgoKTmV2b2ssIGRlciBmdWVyIG1laHIgR2xlaWNoYmVyZWNodGlndW5nIHVudGVyIGRlbiBSYXNzZW4gaXN0Li4uLi4ubmljaCBudXIKWndlcmdlIHNvbGxlbiBkcmVja2lnIHNlaW4gdW5kIHN0aW5rZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIYSEgdm9uIHdlZ2VuIChFdGhhdmFyLCAgNi4gT2t0IDE5OTksIDIxOjExOjExKToKfiMhIHJuPU5ldm9rIHJ0PTkzOTIzODY1OSByZz1zY2htYXJybgp+IyEgdGlkPTkzOTIzODY1OQpTY2huaWNrc2NobmFjayAuLi4KRGEgWndlcmdlIHp1ZGVtIGx1ZWdlbiB3aWUgZ2VkcnVja3QsIGhhdCBkYXMgZ2Fybml4IHp1IGJlZGV1dGVuLgoKQW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNwcnVjaCBhbiB3YW5kIChGZXVlcndlaHIsICA3LiBPa3QgMTk5OSwgMTc6NDM6MDgpOgp+IyEgb249Q2FzZSBvdD05MzkzMTgwNzkgb2c9Z2lsZGVuLmNoYW9zCkxpZXMgZGVuIFdpdHogbmljaHQgYW4gZGVyIFdhbmQsIGR1IGhhc3QgaWhuIGluIGRlciBIYW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNwcnVjaCBhbiB3YW5kIChCYW1idWxrbywgIDguIE9rdCAxOTk5LCAwODozMjo1Myk6Cn4jISBybj1GZXVlcndlaHIgcnQ9OTM5MzE4MTg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTM5MzE4MTg4CkR1IG1laW5zdCBzaWNoZXIgIlNwcnVjaCBhbmQgS2xvd2FuZCIgb2Rlci4uLi4/CgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2FlaG4gKFNvcmNlcmVyLCAgOC4gT2t0IDE5OTksIDIyOjMwOjQ0KToKTmFjaCBjYS4gMSBTdGQuIERpc2t1c3Npb24sIHdvLCB3YW5uIHVuZCB3aWUgZGllIEFyY2hpLVF1ZXN0IHp1IGJlZ2lubmVuIHNlaToKCkt1cm95aSBzYWd0OiB3ZW5uIHdpciBzbyBlbnRzY2hlaWR1bmdzZnJldWRpZyBzaW5kIHdpcnMgZGFzIG5lIGxhbmdlIHF1ZXN0Li4uCgpTb3JjZXJlciAtIGRlbmt0IGRhcyBhdWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUcnZlcy1NYWdpZT8gKFNvcmNlcmVyLCAgOC4gT2t0IDE5OTksIDIzOjA1OjQ5KToKCk5ldm9rIGJyZWl0ZXQgc2VpbmUgSGFlbmRlIGF1cyB1bmQgc2FndDogU0NIVVRaIQpOZXZvayB3aXJkIGt1cnogdm9uIGVpbmVyIGxldWNodGVuZGVuIEF1cmEgZWluZ2VodWVsbHQsIGRpZSB2b24gc2VpbmVtIEFtdWxldHQKYXVzenVnZWhlbiBzY2hlaW50LgoKU29yY2VyZXIgLSBkZW4gVHJpY2sgYmV3dW5kZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGllIGFkZXB0ZW4gbGFzc2VuIGF1Y2ggbmFjaCA7KSAoS2FyaWMsICA5LiBPa3QgMTk5OSwgMDA6MzY6MjIpOgpFaW5lIFN0aW1tZSBlcnRvZW50OiBCZXZvciBEdSBuaWNodCBkZW0gRHJhY2hlbiBnZWh1bGRpZ3QgaGFzdCwgZGFyZnN0IER1Cm5pY2h0IHRpZWZlciBpbiBkZW4gVGVtcGVsIGVpbmRyaW5nZW4sIGVpbiBEcmFrb25pZXJhZGVwdCEKRGVyIERyYWtvbmllcmFkZXB0IGdlaHQgbmFjaCBOb3JkZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV0VHIChSaW5nb3IsICA5LiBPa3QgMTk5OSwgMTk6NTI6NTYpOgp+IyEgcm49QmlyZHkgcnQ9OTM5NDE1MTA0IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTkzOTQxNTEwNAo+IFsuLi5dIGljaCBzZXR6ZSBtZWhyIGF1ZiBJbnRlZWxpZ2VueiwgYWxzIGF1ZiBtZWluZSBNdWNraXMgWy4uLl0KCldvbWl0IER1IHdpZWRlciBhbGxlIFZvcnVydGVpbGUgYmVzdGFldGlndCBoYXN0LiBEYW5rZSBdOi0+CgpSaW5nb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbm4gbWFuIHZvbSBUZXVmZWwgc3ByaWNodC4uLiAoR3JpbnVyLCAgOS4gT2t0IDE5OTksIDIxOjAzOjU4KToKRHUgc2V1ZnpzdCBhdXMgdGllZnN0ZW4gRWxmZW5oZXJ6ZW4oKGMpU0FORHxFKS4KU2FuZGllICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhICAgCkR1IHdhZWx6dCBEaWNoIHZvciBMYWNoZW4gYXVmIGRlbSBCb2Rlbi4KCkdyaW51cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWVoaCwgd28ga29tbWVuIHdpciBkZW4gZGFoaW4gPz8/PyAoVGhhbm9zLCAgOS4gT2t0IDE5OTksIDIzOjUxOjA1KToKCgpiZXRyZXRlIHBvcnRhbApEYXMgUG9ydGFsIHNhZ3Q6IE5vZSwga2VpbmUgTHVzdC4KCipraWNoZXIqCgpUaGFub3MsIFRuYWppYW4gdW5kIHJhdGxvcyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVjaCBuZSBBbnR3b3J0IChHcnVtcGYsIDEwLiBPa3QgMTk5OSwgMTU6MzU6MzApOgpEdSBzaWVoc3QgZGllIHN0ZXJibGljaGVuIFVlYmVycmVzdGUgZWluZXMgU2NobGVpbWRyYWNoZW4uIFNpZSBlbnRoYWVsdDogRWluCmdyYXVlciBTdGVpbi4gRHUgc2Fnc3Q6IHdhc24gZGFzIGZ1ZXJuIHN0ZWluPz8/ID4gU2VodCBkZW4gU3RlaW4gdm9uIER1bmN0b24sCndpZSBhdWZyZWNodCBlciBzdGVodCEgQnJvY2ggaGF0IGRlbiBzaWVidGVuIFN0aWxsZW4gU3RlaW4gZ2VmdW5kZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWVoaCwgd28ga29tbWVuIHdpciBkZW4gZGFoaW4gPz8/PyAoSG91c2Vob2xkZXIsIDEwLiBPa3QgMTk5OSwgMTc6MzU6MjIpOgp+IyEgcm49VGhhbm9zIHJ0PTkzOTUxMzA2NSByZz1zY2htYXJybgp+IyEgdGlkPTkzOTUxMzA2NQphbHNvIHdlbm4gZGFzIHBvcnRhbCBkYXMgYmVpIGdub21lIHNhZ2VuIHd1ZXJkZSwgaGFldHQgaWNoIGRhIHNvZm9ydCBlaW5lCmVya2xhZXJ1bmcgcGFyYXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5lIG5lIG5lISAoTW9ub3RvbmksIDEwLiBPa3QgMTk5OSwgMTg6NTA6MjIpOgpFYmVuIGluIGRlciBBYmVudGV1cmVyLUdpbGRlOgoKSGFsdW5rZSBrb21tdCBhbi4KSGFsdW5rZSBsYWVzc3QgZWluZW4gU3RpbmtlZnVyeiBmYWhyZW4uCkZ1ZXJjaHRlcmxpY2hlciBHZXN0YW5rIGVyZnVlbGx0IGRlbiBSYXVtLgpIYWx1bmtlIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBIYWx1bmtlLgpIYWx1bmtlcyBGdXJ6IHN0aW5rdCB3aXJrbGljaCBncmF1ZW5lcnJlZ2VuZC4KCkZsdWNodCB2b3IgZGVtIGVpZ2VuZW4gRnVyeiBzb2xsdGUgYmVzdHJhZnQgd2VyZGVuIQoKTW9ub3RvbmkgKGhhZWx0IHNpY2ggaW1tZXIgbm9jaCBkaWUgTmFzZSB6dSEpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYSwgaWNoIHdlaXNzIGphIG5pY2guLi4gOi0pIChDaXNvdSwgMTEuIE9rdCAxOTk5LCAyMTo0NToyNSk6CgpLYXJpYyBzYWd0OiB3YXMgd29sbG5tYSBkZW5uIGFlcmdlcm4gZ2VoZW4/IDspCgpEdSB6dWNrc3QgbWl0IGRlbiBTY2h1bHRlcm4uCgpLYXJpYyBzYWd0OiBzb2xsIGljaCBkaXIgbWFsIG5lbiBiaXNzY2hlbiBwYXJha29uaWVuIHplaWdlbj8KCkR1IHppdHRlcnN0IHZvciBBbmdzdC4KS2FyaWMgc2FndDogYmluIGphIGJlaSBkaXIgOikKRHUgc2Fnc3Q6IE5lZSBpY2ggd2lsbCBuaWUgbWVociBzdGVyYmVuCiAoVG9kOkxhcnMpIEVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsIGhhdCBnZXJhZGUgQ2hvamluIHVtZ2VicmFjaHQuCiAoVG9kOkVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsKSBQZmZmZmZmZmZmZmZ0Li4uLi4uLlBMVU1QUyEKCipSYWV1c3BlciogZGFzIHdhciBiaXNoZXIgbWVpbiBnZXJpbmdzdGVzIFByb2JsZW0sIGFiZXIgb2IgbWljaCBkYXMKZXJtdXRpZ3QuLi4gOi0pCgpEaWUgRWxzdGVyIC0gaGF0IG1hbCB3aWVkZXIgbml4IGFscyBTY2htYXJybiBnZWtsYXV0IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOikgKFBhcnNpdmFsLCAxMS4gT2t0IDE5OTksIDIzOjA3OjQwKToKTmFjaCBkZW0gS2lsbCBkZXIgRWxmZW5nYWVydG5lcmluIDoKCkRvZGVyaWMgc2FndDogOSBzY2h3ZXJ0ZXIsIDEwIHNjaGlsZGUuIGd1dGUgc3RhZXJrZSBkaWUgZnJhdQpEdSBncmluc3QuCkR1IGRlbmtzdCAgIC4gbyBPIChtb2VjaHRlIGljaCBhdWNoIGtvZW5uZW4pCkRvZGVyaWMgc2FndDogbWl0IHdhZmZlbmd1ZXJ0ZWwgdmllbGxlaWNodApEZXIgRWxmZW53YWVjaHRlciBuaW1tdCBkZW4gR3VlcnRlbC4KRGVyIEVsZmVud2FlY2h0ZXIgbmltbXQgZGFzIExhbmdzY2h3ZXJ0LgpbLi4uXQpEZXIgRWxmZW53YWVjaHRlciBuaW1tdCBkYXMgTGFuZ3NjaHdlcnQuCkRlciBFbGZlbndhZWNodGVyIG5pbW10IGRlbiBMaWNodGhlbG0uCkVpbiBFbGZlbndhZWNodGVyIGtvbW10IGFuLgpEaWUgRWxmZW53YWNoZSBydWVja3QgaWhyZW4gV2FmZmVuZ3VydCB6dXJlY2h0LgpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCgpQYXJzaXZhbCAuLi4gb2ZmZW5zaWNodGxpY2ggZGVyIEd1ZXJ0ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklyZ2VuZHdhcyBzdGltbXQgbmljaHQuLi4gKE1vbm90b25pLCAxMi4gT2t0IDE5OTksIDE2OjUzOjIxKToKYmxhIGJsYSBibGEuLi4KCkRlciBTdGVpbmJlaXNzZXIgd2FybnQgRGljaDoKICBXZWhlLCBEdSBmYWVuZ3N0IGFuLCBhbmRlcmUgU3BpZWxlciBhbnp1Z3JlaWZlbi4KCkRlciBTdGVpbmJlaXNzZXIgdmVyc2Nod2luZGV0IHdpZWRlciwgdW5kIER1IHdhY2hzdCBpbiBlaW5lciBhbmRlcmVuIFdlbHQgYXVmLgpXaWUgaGVpc3N0IER1IGRlbm4gPyBtb25vdG9uaQpXaWUgYml0dGU/Cj4gUm9jaHVzIHJ1ZnQ6IEJVR0RSRUlDISEhISEhISEhISEhISEhISAKCkFoYS4uLgoKTW9ub3RvbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE1JTExFTklVTS1FVkVOVCAhISEgKEdyaW1tdGVzdCwgMTIuIE9rdCAxOTk5LCAyMDozODo0OCk6Cn4jISBybj1OZXZvayBydD05Mzk3NjA2NzUgcmc9YW56ZWlnZW4KfiMhIHRpZD05Mzk3MjQyNzUKV2FzIGdlbmF1IGhhYmVuIGRlbm4gbnVuIERyb2dlbiB3aWVkZXIgZGFtaXQgenUgdHVuPwoKR2RULCBkZW4gUXVhbG0gYmVpc2VpdGUgd2VkZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTUlMTEVOSVVNLUVWRU5UICEhISAoTmV2b2ssIDEyLiBPa3QgMTk5OSwgMjM6MTQ6MzcpOgp+IyEgcm49R3JpbW10ZXN0IHJ0PTkzOTc2MDcyOCByZz1zY2htYXJybgp+IyEgdGlkPTkzOTcyNDI3NQp3ZWlhLi4uLi4uLi5kZXIgd2FyIGVjaHQgdXJhbHQuLi4uLi4uR3JpbW1ib3JuLi4uLmRlciBBZWx0ZXJlPyA6KQoKTmV2b2ssIGRlciBlcyBuaWNodCBmYXNzZW4ga2FubiB3aWUgR3VlbnRoZXIgR3Jhc3MgZGVuIE5vYmVscHJlaXMga3JpZWdlbgprb25udGUuLi4uLi53YXIgd29obCBnZXJhZGUga2VpbmVyIGRhIGRlciBzY2hyZWliZW4ga29ubnRlLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llIGRyZXNzaWVyZSBpY2ggbWVpbmVuIENoZWY/IChBcHN1LCAxMy4gT2t0IDE5OTksIDE0OjE2OjMyKToKPnJ1ZmUga29vb21tbW0gcHV0dHB1dHRwdXR0ClRzdW5hbWkgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCkFwc3UgLiBvIE8oIE5hIGFsc28sIGdlaHQgZG9jaCApCih1bmdlc2Nobml0dGVuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWndlaXRpZXMuLi4gKE1haGF0bWEsIDE0LiBPa3QgMTk5OSwgMDk6MzU6NDQpOgpFaW4gV2VnaGllciBrb21tdCBhbi4KRWluIFdlZ2hpZXIgaGVidCBlaW5lbiBzZWx0c2FtZW4gR2VnZW5zdGFuZCBhdWYuCkVpbiBXZWdoaWVyIGhlYnQgOCBGbGFlc2NoY2hlbiBtaXQgRHJhY2hlbmJsdXQgYXVmLgpFaW4gV2VnaGllciBoZWJ0IGVpbiBgYEJvcm4gdG8gS2lsbCcnLVN0aXJuYmFuZCBhdWYuCkVpbiBXZWdoaWVyIHppZWh0IGVpbiBgYEJvcm4gdG8gS2lsbCcnLVN0aXJuYmFuZCBhbi4KRWluIFdlZ2hpZXIgemllaHQgZWluZW4gQW50aS1GZXVlci1SaW5nIGFuLgpSb2NodXMgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCk1haGF0bWEgKGhhdGBzIHNjaG9uIGltbWVyIGdld3Uic3QpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTY2FubmVyICYgRHJ1Y2tlciBhbHMgS29waWVyZXIgKEFuYXRvbCwgMTQuIE9rdCAxOTk5LCAyMDowMzozMyk6Cn4jISBvbj1BbmF0b2wgb3Q9OTM5OTMxNDAxIG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49Rmxhc2hnb2QgcnQ9OTM5OTMxMzc1IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTkzOTkwNjI4OApMZWlkZXIgZ2lidCBlcyBmdWVyIFBob3Rvc2hvcCBub2NoIGtlaW4gQmV0cmllYnNzeXN0ZW0uLi4gOi1cCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadSBUb2RlIGdldGFldHNjaGVsdCAuLi4gKEFuYWNyaW9uLCAxNC4gT2t0IDE5OTksIDIxOjMxOjMxKToKCkdhc3QxIHNhZ3Q6IGxhZwpHYXN0MSBzYWd0OiBsYWcKT2xsaSBzY2h1ZXR0ZWx0IGRlbiBLb3BmLgpHYXN0MSBhcmdsdCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgpEdSB0YWV0c2NoZWxzdCBHYXN0MSBhdXNnaWViaWcgZGVuIEtvcGYuCgpPbGxpIGdyaW5zdC4KR2FzdDEgc2FndDogc3VwZXJkdXBlcnVsdHJhbGFnCkR1IHRhZXRzY2hlbHN0IEdhc3QxIGF1c2dpZWJpZ2VyIGRlbiBLb3BmLgpEdSBzaWVoc3QgZWluZSBkdW5rbGUgR2VzdGFsdCwgZGllIGV0d2FzIER1bnN0IGVpbnNhbW1lbHQgLi4uIG9kZXIgdmllbGxlaWNodApiaWxkZXN0IGR1IERpciBkYXMgYXVjaCBudXIgZWluIC4uLgpbVG9kOkxhcnNdIElyZ2VuZHdhcyBoYXQgZ2VyYWRlIEdhc3QxIHVtZ2VicmFjaHQuCltUb2Q6SXJnZW5kd2FzXSBCbGEgYmxhIGJsYQpPbGxpIHNhZ3Q6IEhhZT8KRHUgZGVua3N0ICAgLiBvIE8gKGh1Y2gpCgoKLi4uIHVuZ2VzY2huaXR0ZW4gLi4uLiAqYXJnbCoKCld1c3N0ZSBnYXIgbmljaHQsIGRhc3Mgd2lyIHNvIGhhcnQgenVoYXVlbiB3aXIgWmF1YmVyZXIgLi4uCgpBbmFjKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW52ZXJ3dWVzdGxpY2ggKEJyb2RhciwgMTUuIE9rdCAxOTk5LCAxOTowNTo0Mik6CkVpbiBFaXNlbGZlbndhZWNodGVyIHN0ZWh0IGF1ZiBkZXIgU2Nod2VsbGUgZGVzIFRvZGVzLgpEdSB6ZXJzY2htZXR0ZXJzdCBkZW4gRWlzZWxmZW53YWVjaHRlciBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KRGVyIEVpc2VsZmVud2FlY2h0ZXIgcm9lY2hlbHQgbm9jaCBlaW4gbGV0enRlcyBNYWwgdW5kIGZhZWxsdCB0b3QgdW0uCkRlciBFaXNlbGZlbndhZWNodGVyIGZyYWd0IHNpY2gsIHdhbm4gZW5kbGljaCBkaWUgQWJsb2VzdW5nIGtvbW10LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2VpbiBLb21tZW50YXIgOy0pIChMaWFyYSwgMTYuIE9rdCAxOTk5LCAwMTowMDowMCk6CkRlaW5lIEZyZXVuZGluIE1hbW1pIHRlaWx0IERpciBtaXQ6IHN1Y2hlIG5ldHRlcyBtb25zdGVyLgoKTGlhcmEsIGxhY2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoxMCBTZWt1bmRlbiBzcGFldGVyIC4uLiAoTGlhcmEsIDE2LiBPa3QgMTk5OSwgMDE6MDA6NTUpOgpEZWluZSBGcmV1bmRpbiBNYW1taSB0ZWlsdCBEaXIgbWl0OiB6dW0gaGF1ZW4uCgpMaWFyYSwgbGFjaHQgbWVocgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVU5JWCAoTWFnZW5icm90LCAxNi4gT2t0IDE5OTksIDEzOjU1OjAwKToKClRoZSBVTklYIEd1cnUncyBWaWV3IG9mIFNleDoKdW56aXAgCnN0cmlwIAp0b3VjaCAKZmluZ2VyIAptb3VudCAKZnNjayAKbW9yZSAKeWVzIAp1bW91bnQgCnNsZWVwCgoqa2ljaGVyKiBNYWdlbmJyb3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRGllZGVyLCAxNi4gT2t0IDE5OTksIDE2OjE2OjM0KToKW0FsbGdlbWVpbjpMaW1wZXJhdGVdIGljaCBzaXR6ZSBpbiBkZXIgdW50ZXJ3ZWx0IGZlc3QgdW5kIHN0ZWhlIHZvciBpcmdlbmQKW0FsbGdlbWVpbjpMaW1wZXJhdGVdIGVpbmVtIGFsdGFyIGluIGVpbmVyIGhhbGxlLiBXSUUgS09NTSBJQ0ggSElFUiBSQVVTPz8KW1RvZDpMYXJzXSBFaW5lIHNjaHdlcmUgS3JhbmtoZWl0IGhhdCBnZXJhZGUgTGltcGVyYXRlIHVtZ2VicmFjaHQuCgpVbmdlc2Nobml0dGVuLCBEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKEhlcm9tY2ZseSwgMTYuIE9rdCAxOTk5LCAxNjoxNzozNyk6Cn4jISBybj1EaWVkZXIgcnQ9OTQwMDkwNTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwMDkwNTk0Cgp3aWVkZXIgbmUgd2V0dGUgZ2V3b25uZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlY2h0YmVoYWx0ZW4uLiAoV2ltLCAxNy4gT2t0IDE5OTksIDEyOjE0OjU1KToKU2VtaXJhICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkR1IGtudWRkZWxzdCBTZW1pcmEgYXVzIGRlciBGZXJuZS4KRHUgdGVpbHN0IFNlbWlyYSBtaXQ6IHVuZCBnbGVpY2ggd2llZGVyIHdlZywgd2FzPwpTZW1pcmEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2ltLi4uIChSaWt1cywgMTcuIE9rdCAxOTk5LCAxNzowNToyMCk6ClJpa3VzIGtyYXVsdCBXaW0uCkR1IGhvZXJzdCBlaW4gR3JvbGxlbi4gRGVyIFZ1bGthbiBpc3QgbWFsIHdpZWRlciBha3Rpdi4gCgpSaWt1cyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyIGx1ZWdlbi4gKFRhcmluYSwgMTcuIE9rdCAxOTk5LCAxODozMDo0Nyk6CgpEdSBiZWZpbmRlc3QgZGljaCBhdWYgZWluZXIgaGVycmxpY2ggc2FmdGlnZW4gV2llc2UuIEVpbmUgd3VuZGVyc2Nob2VuZQpTdHJldW9ic3R3aWVzZSwgbWl0IHZpZWxlbiBCbHVtZW4gdW5kIEJhZXVtZW4uCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiB3ZXN0ZW4gdW5kIG5vcmRlbi4KRWluZSBCaWVuZS4KRWluIEJpZW5lbnN0YWNoZWwuCkVpbmUgSG9semh1ZXR0ZS4KRGFzIEhhdXMgdm9uIEtpd2kuCkVzIHN0ZWhlbiB2aWVsZSBPYnN0YmFldW1lIGF1ZiBkZXIgV2llc2UuCkVzIHNpbmQgaGF1cHRzYWVjaGxpY2ggQXBmZWwtIHVuZCBCaXJuZW5iYWV1bWUsIGVzIGxhc3NlbiBzaWNoIGFiZXIgYXVjaApLaXJzY2hiYWV1bWUgZmluZGVuLgpEdSBzdWNoc3QsIGZpbmRlc3QgYWJlciBuaWNodHMuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpBbGxlcyBsZWVyZSBWZXJzcHJlY2h1bmdlbiA7LSkKClRhcmluYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFuY2hlIExldXRlIHNpbmQgYWJlciBhdWNoIGVtcGZpbmRsaWNoLi4uIChSb25kYSwgMTcuIE9rdCAxOTk5LCAyMDoyNTo1MCk6CkR1IHJ1ZnN0OiBoZWogR3JpbGxtZWlzdGVyISA7KQpEdSBncmluc3QgS2FtZWxvdCBhdXMgZGVyIEZlcm5lIGFuLgpLYW1lbG90IGtudWRkZWx0IERpY2ggZGVtdWV0aWcgdW5kIERpciBEZWluZSBTdWVuZGVuIHZlcnplaWhlbmQgYXVzIGRlciBGZXJuZS4KCkhtcGYgOykgRGFzIGlzdCBzY2hvbiBzdWVuZGlnZW4/IERhbm4ga29tbSBpY2ggamEgbmllIGluIGRlbiBIaW1tZWwgOykKClJvbmRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGpldHp0amEuLi4gKExldiwgMTcuIE9rdCAxOTk5LCAyMTozMjoyNCk6CkRlaW4gRnJldW5kIEdvbGFzIHRlaWx0IERpciBtaXQ6IGFyZ2wsIG1laW4gc3RhY2hlbCBpcyBrYXB1dHQhISEgd2FmZmVuYnJ1Y2gKRGVpbiBGcmV1bmQgR29sYXMgdGVpbHQgRGlyIG1pdDogc29sbHRlIG1hbiBuaWNodCBtaXQgZGVtIG1hY2hlbiAuLi4gICAgICAgICAgCgoKTGV2LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWmF1YmVyZXIgc2luZCBXZWljaGVpZXIgOi0pIChEYXJrd2luZywgMTguIE9rdCAxOTk5LCAwMToxNDo0Nik6Cgpba3dlciBnaWxkZSB6YXViZXJlcl0KICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIE1vbiwgMTguIE9rdCAxOTk5LCAwMToxMTo1OCAoNSBUZWlsbmVobWVyKQoKVGFyYWdvbi4uLi4uLi4uSi5TIERyYWN1bGEuLi4uLi4uLkouUyBMaWFyYS4uLi4uLi4uLi5Jd1MgU3Ryb2hhbG0uLi4uLi4uaXdTClRyYXVtYS4uLi4uLi4uLmkuUwoKW2t3ZXIgZ2lsZGUga2FlbXBmZXJdCiAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIE1vbiwgMTguIE9rdCAxOTk5LCAwMToxMjoxMiAoNyBUZWlsbmVobWVyKQoKRmVsZXJpYW4uLi4uLi4uLi5aIE5ldm9rLi4uLi4uLi4uLi53UyBXb28uLi4uLi4uLi4uLi4ud1MgUXVhbG1pLi4uLi4uLi4uLi5TCkdvbGFzLi4uLi4uLi4uLi53UyBLYXJpYy4uLi4uLi4uLi4uLlMgRGFya3dpbmcuLi4uLi4uLndTCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFphdWJlcmVyIHNpbmQgV2VpY2hlaWVyIDotKSAoT255eCwgMTguIE9rdCAxOTk5LCAwOTo1MTo0NCk6Cn4jISBybj1EYXJrd2luZyBydD05NDAyMDkyODYgcmc9c2NobWFycm4KfiMhIHRpZD05NDAyMDkyODYKWnVtIGJlc3NlcmVuIFZlcnN0YWVuZG5pcy4uLiBXYXJ1bT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWmF1YmVyZXIgc2luZCBXZWljaGVpZXIgOi0pIChIZXJvbWNmbHksIDE4LiBPa3QgMTk5OSwgMTc6MDk6MDQpOgp+IyEgcm49T255eCBydD05NDAyNDAzMDQgcmc9c2NobWFycm4KfiMhIHRpZD05NDAyMDkyODYKCnNjaGF1IGRpciBtYWwgZGllIGlzIHVuZCBkaWUgSnMgYW4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNlbmYuLi4gKFBhcmFjZWxzdXMsIDE4LiBPa3QgMTk5OSwgMTk6MTU6NTcpOgp+IyEgcm49TmV2b2sgcnQ9OTQwMjcwNDkyIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTk0MDI3MDI5Mwo+IGJpdHRlIGJpdHRlLCBoYXUgbWljaCBuaWNodCwgaWNoIGxpZWcgc2Nob24gYW0gQm9kZW4gdm9yIExhY2hlbgoKTmEsIHdlbm4gc2llIGtsdWcgaXN0LCB0cml0dCBzaWUgZWluZmFjaCB6dSwgZGFubiBicmF1Y2h0IHNpZSBzaWNoIG5pY2h0Cnp1IGJ1ZWNrZW4uCgpQYXJhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2VuZi4uLiAoSGVyb21jZmx5LCAxOC4gT2t0IDE5OTksIDE5OjE4OjQzKToKfiMhIHJuPVBhcmFjZWxzdXMgcnQ9OTQwMjc0MTU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwMjcwMjkzCgpobW1tIGFuc2ljaCBlaW4gbmV0dGVyZSB2ZXJzdWNoIGRhcyBnYW56ZSBub2NobWFsIGFuenVmYWNoZW4gCmFiZXIgZWluZSBoYWVsZnRlIGRlcyBjaG9sZXJpc2NoZW4gZHVvcyBmZWhsdCBtaXR0bGVyd2VpbGUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipsYWNoKiBFcnppZXMgKFN0aW5nLCAxOC4gT2t0IDE5OTksIDE5OjI1OjIxKToKCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCldpbSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKClN0aW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ2hhbmVsLVJvYm90cyAoQmFtYnVsa28sIDE5LiBPa3QgMTk5OSwgMDg6MTU6NTgpOgp+IyEgcm49WmFybml5YSBydD05NDAzMTc0MTMgcmc9ZXRpa2V0dGUKfiMhIHRpZD05NDAzMTc0MTMKRHUgaGFzdCB2b2xsa29tbWVuIFJlY2h0LCBpY2ggaGFiZSBtaWNoIGVpbmVzIHNjaHJlY2tsaWNoZW4gVmVyYnJlY2hlbnMgCnNjaHVsZGlnIGdlbWFjaC4gSWNoIGhhYmUgaW0gU3BvcnQtS2FuYWwsIGF1ZiBkZW0gc2VpdCB1ZWJlciB6d2VpIFdvY2hlbiAKbmljaHRzIG1laHIgZ2VzYWd0IHd1cmRlLCBtZWluZSBNZWludW5nIHVlYmVyIGVpbmUgRnVzc2JhbGxtYW5uc2NoYWZ0CnZlcmJyZWl0ZXQuIEhpbnp1IGtvbW10IG5vY2gsIGRhc3MgaWNoIGRpZSBIaXN0b3J5IGRlcyBLYW5hbHMsIGluIGRlciB2aWVyCldvY2hlbiBhbHRlIEZ1c3NiYWxsZXJnZWJuaXNzZSBzdGFuZGVuIHZlcm5pY2h0ZXQgaGFiZS4gRGFzIGdyZW56dCBuYXR1ZXJsaWNoIApzY2hvbiBhbiBCdWVjaGVydmVyYnJlbm51bmcsIGdhbnogenUgc2Nod2VpZ2VuIHZvbiBkZW0gU2NoYWRlbiwgZGVuIGljaCBkZW4KSGlzdG9yaWtlcm4genVnZWZ1ZWd0IGhhYmUsIGluZGVtIGljaCBkaWVzZSB3aWNodGlnZW4gSW5mb3JtYXRpb25lbiBhdXMgZ3JhdWVyClZvcnplaXQgbGVpY2h0dmVydGlnIHZlcm5pY2h0ZXQgaGFiZS4KRnVlciBkaWVzZXMgc2Nod2VyZSBWZXJicmVjaGVuIGZvcmRlcmUgaWNoIG1laW5lIHNvZm9ydGlnZSBMb2VzY2h1bmcgbWVpbmVzCkhhdXB0Y2hhcmFjaHRlcnMgc293aWUgYWxsZXIgbWVpbmVyIFp3ZWl0aWVzLiBadXNhZXR6bGljaCBzb2xsdGVuIG5vY2ggYWxsZQptZWluZSBGcmV1bmRlIGdlbG9lc2NodCB1bmQgc2FlbXRsaWNoZSBJUC1BZHJlc3NlbiBhdXMgZGVtIEtvZWxuLUJvbm5lciBSYXVtCmdlYmFuaXNodCB3ZXJkZW4uIEVpbiBzb2xjaCBtZW5zY2hlbnZlcmFjaHRlbmRlcyBWZXJicmVjaGVuIGRhcmYgaW4gZGllc2VtCk11ZCBuaWUgd2llZGVyIHZvcmtvbW1lbi4KCkFsc28sIGljaCBiZWtlbm5lIG1pY2ggc2NodWxkaWcuLi4uCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQ2hhbmVsLVJvYm90cyAoQmFtYnVsa28sIDE5LiBPa3QgMTk5OSwgMDg6Mjc6MTkpOgp+IyEgcm49WmFybml5YSBydD05NDAzMjE1NDQgcmc9c2NobWFycm4KfiMhIHRpZD05NDAzMTc0MTMKTmVpbiwga2FubiBpY2ggbWlyIG5pY2h0IHZvcnN0ZWxsZW4uIEFscyBpY2ggYW5nZWZhbmdlbiBoYWJlIGF1ZiBkZW0gS2FuYWwgd2FzCnp1IHNhZ2VuLCB3YXIgZGVyIGxldHp0ZSBlaW50cmFnIGluIGRlciBIaXN0b3J5IGVpbmUgV29jaGUgYWx0LgoKRGFzIHNhZ3Qgd29obCBhbGxlcy4KCkJhbWJ1bGtvCgpUaXBwOiBJZ25vcmllcmUgQmFtYnVsa28gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBDaGFuZWwtUm9ib3RzIChBbmF0b2wsIDE5LiBPa3QgMTk5OSwgMDg6NTA6MDMpOgp+IyEgcm49QmFtYnVsa28gcnQ9OTQwMzIxNjM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwMzE3NDEzCldlbm4gc2ljaCBlaW4gU3BpZWxlciBlcmxhdWJlbiB3dWVyZGUsIG1laHJlcmUgTmFlY2h0ZSB1ZWJlciBtaXQgZWluZW0KIlJlcGVhdCIgb25saW5lIHp1IGJsZWliZW4sIGhhZXR0ZSBlciBIaWdobGFuZGVyIGFuIGRlbiBGZXJzZW4uIERhIGVzCkRpciBvZmZlbmJhciBudXIgZGFydW0gZ2VodCwgZWluIGdld2lzc2VzIE9ubGluZS1BbHRlciB6dSBlcnJlaWNoZW4gdW5kCkR1IG9obmUgUmVwZWF0IGltbWVyIHZvbiBlaW5lbSBNYWdpZXJrb2xsZWdlbiBhdXNnZWxvZ2d0IHd1cmRlc3QsIHR1JwpkZW4gU3BpZWxlcm4sIGRpZSBOYWNodHMgbWFsIGVpbmVuIE1hZ2llciBicmF1Y2hlbiB1bmQsIHRyb3R6IERlaW5lcwpOaWNodGlkZWxucywga2VpbmVuIGFrdGl2ZW4gZmluZGVuLCBkZW4gR2VmYWxsZW4sIHVuZCBhKSBsZWdlIGRlbgpSZXBlYXQgYXVmICJzYWcgSWNoIGJpbiBzbyBzY2hlaXNzZSIsIGIpIG1hY2ggRGljaCBkYWJlaSB1bnNpY2h0YmFyLgoKVW5kIG51ciByZWluIGF1cyBOZXVnaWVyZGU6IE1hZ2llcmxldmVsIDI1PyBXYXJ1bSBlaWdlbnRsaWNoPwoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQ2hhbmVsLVJvYm90cyAoQmFtYnVsa28sIDE5LiBPa3QgMTk5OSwgMDg6NTQ6MTUpOgp+IyEgcm49QW5hdG9sIHJ0PTk0MDMyMzAwMyByZz1zY2htYXJybgp+IyEgdGlkPTk0MDMxNzQxMwpXYXMgaGF0IGRhcyByZXBlYXQgZGVubiBtaXQgZGVtIG9ubGluZS1ibGVpYmVuIHp1IHR1bj8gT2IgdW5kIHdpZSBsYW5nZSBpY2gKaGllciBpZGxlIGthbm4gZGlyIGRvY2ggZWdhbCBzZWluLgoKVW5kIHdhcnVtIG5pY2h0IE1hZ2llcmxldmVsIDI1PyBXYXMgZGFnZWdlbj8KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IENoYW5lbC1Sb2JvdHMgKFBhdHJ5biwgMTkuIE9rdCAxOTk5LCAwOTowMDowOSk6Cn4jISBybj1CYW1idWxrbyBydD05NDAzMjA5NTggcmc9c2NobWFycm4KfiMhIHRpZD05NDAzMTc0MTMKenluaXNtdXMgaGluIG9kZXIgaGVyLi4ubWljaCBuZXJ2dGUgZGVyIG11ZWxsIGViZW5mYWxsczogbWFuIG11c3MgZGFzCnp3YXIgbmljaCBnbGVpY2ggb2VmZmVudGxpY2gga2xhZXJlbiB3b2xsZW4sIGFiZXIgZGEgZXMgbnVuIG1hbApnZXNjaGVoZW4gaXN0LCBzb2xsdGVzdCBkdSBldnRsLiBub2NoIG1hbCBkcnVlYmVyIG5hY2hkZW5rZW4uCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBDaGFuZWwtUm9ib3RzIChCYW1idWxrbywgMTkuIE9rdCAxOTk5LCAwOTowODoyMyk6Cn4jISBybj1QYXRyeW4gcnQ9OTQwMzIzNjA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwMzE3NDEzCk9Lb2suLi5kYW5uIHdlcmRlIGljaCBldXJlbiBoZWlzc2dlbGllYnRlbiBTcG9ydC1LYW5hbCBlYmVuIG5pY2h0IG1laHIgbWl0CkZ1c3NiYWxsIGJsYWVzdGlnZW4uLi4uCkFsc28gZGFubiB2aWVsIFNwYXNzIG5vY2ggYXVmIGRlbSB0b3RlbiBLYW5hbC4uLi52aWVsZWljaHQgc2FndCBuYWVjaHN0ZXMgSmFocgpkYSBtYWwgd2llZGVyIGVpbmVyIGV0d2FzLi4uLgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IENoYW5lbC1Sb2JvdHMgKFN1YmxpbWUsIDE5LiBPa3QgMTk5OSwgMDk6MTA6NTApOgp+IyEgcm49QmFtYnVsa28gcnQ9OTQwMzI0MTAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwMzE3NDEzCkpldHp0IGlzdCBhbHNvIGRlciBuYWVjaHN0ZSBLYW5hbCBnZXN0b3JiZW4gKnNjaG51ZWZmKiAhCgpVTkQgSUhSIFNFSUQgQUxMRSBTQ0hVTERJRyAhISEhISEhISEhISEhIQpXQUhISEhISEhISEhISEhISEhISEhISCA7KSBXRU5OIEVTIERFTiBLQU5BTCBOSUNIVCBNRUhSIEdJQlQsCkRBTk4gTE9FU0NIIElDSCBNSUNIIEFVRiBERVIgU1RFTExFICEKREFTIElTVCBFUk5TVCBHRU1FSU5UICEgS0VJTiBTUEFTUyA7KQoKU3VibAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQ2hhbmVsLVJvYm90cyAoWmFybml5YSwgMTkuIE9rdCAxOTk5LCAwOToyMTozOSk6Cn4jISBybj1QYXRyeW4gcnQ9OTQwMzIzNjA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwMzE3NDEzCmljaCBoYWIgZGFzIG5pY2h0IGdsZWljaCBvZWZmZW50bGljaCBnZW1hY2h0LCBzb25kZXJuIGljaCBoYWIgaW5uZXJoYWxiIHZvbiAyCldvY2hlbiBpbW1lciB3aWVkZXIgRXJ6aWVzIHBlcnNvZW5saWNoIGRyYXVmIGFuZ2VzcHJvY2hlbiB1bmQgZXMgYXVjaCB1ZWJlcgptcnVmZSB2ZXJzdWNodC4uLiBoaWVyIG11c3MgbWFuIHdvaGwgc29sY2hlIFNhY2hlbiBvZWZmZW50bGljaCBtYWNoZW4sIHNvbnN0CmJld2VndCBzaWNoIG5pY2h0cy4uLgoKS2FubiBhYmVyIGF1Y2ggc2VpbiwgZGFzcyBpY2ggbWlyIG1hbCBuZW4gWndlaXRpZSBtYWNoZW4gbXVzcywgZGVubiBoaWVyCnNjaGVpbnQgZXMgaW1tZXIgbm9jaCBob2hlIE1hZ2llciB6dSBnZWJlbiwgZGllIGJlaSBkZW0gTmFtZW4gWmFybml5YQpncnVuZHNhZXR6bGljaCBhYnNjaGFsdGVuLCBlZ2FsLCB3aWUgc2lubnZvbGwgZWluIEhpbndlaXMgaXN0LiAKCk1hcmMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IENoYW5lbC1Sb2JvdHMgKEJhbWJ1bGtvLCAxOS4gT2t0IDE5OTksIDA5OjIzOjI3KToKfiMhIHJuPVphcm5peWEgcnQ9OTQwMzI0ODk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwMzE3NDEzCkthbm4gZ2FyIG5pY2h0IHNlaW4uIEljaCBtYWNoZSBkYXMgZXJzdCBzZWl0IGVpbmVyIFdvY2hlLi4uLi4uClZpZWxlaWNodCBoYWV0dGUgamEgZWluZSBtYWlsIGFuIG1pY2ggZ2Vob2xmZW4uCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQ2hhbmVsLVJvYm90cyAoU3VibGltZSwgMTkuIE9rdCAxOTk5LCAwOToyNDoyMSk6Cn4jISBybj1CYW1idWxrbyBydD05NDAzMjUwMDcgcmc9c2NobWFycm4KfiMhIHRpZD05NDAzMTc0MTMKSWhyIHNlaWQgc29vb29vbyBoZXJ6bG9zIDspIEtlaW5lciBkZW5rdCBhbiBtZWluZSAKYmVkdWVyZm5pc3NlIGRlbiBzcG9ydGthbmFsIGJldHJlZmZlbmQgOyggKnNjaG51ZWZmKgoKU3VibAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQ2hhbmVsLVJvYm90cyAoQmFtYnVsa28sIDE5LiBPa3QgMTk5OSwgMDk6MjU6NDYpOgp+IyEgcm49U3VibGltZSBydD05NDAzMjUwNjEgcmc9c2NobWFycm4KfiMhIHRpZD05NDAzMTc0MTMKRHUgYmlzdCBqYSBuaWNodG1hbCBkcmF1Zi4uLi4uLi4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBDaGFuZWwtUm9ib3RzIChTdWJsaW1lLCAxOS4gT2t0IDE5OTksIDA5OjI2OjE0KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTk0MDMyNTE0NiByZz1zY2htYXJybgp+IyEgdGlkPTk0MDMxNzQxMwpkb2NoIDspCgoqc2NobnVlZmYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBDaGFuZWwtUm9ib3RzIChCYW1idWxrbywgMTkuIE9rdCAxOTk5LCAwOToyNzoxNCk6Cn4jISBybj1TdWJsaW1lIHJ0PTk0MDMyNTE3NCByZz1zY2htYXJybgp+IyEgdGlkPTk0MDMxNzQxMwpBaGphIGpldHp0Li4uLi5Lb21pc2NoIHZvciBlaW5lciB3b2NoZSB3YXJlbiBtYXhpbWFsIDUgTGV1dGUgYXVmIGRlbQpTcG9ydGthbmFsLCBqZXR6dCBzaW5kIGVzIDEyLi4uLi4uCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQ2hhbmVsLVJvYm90cyAoS2FyaXMsIDE5LiBPa3QgMTk5OSwgMDk6Mjg6MDApOgp+IyEgcm49QmFtYnVsa28gcnQ9OTQwMzI1MjM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwMzE3NDEzCkRhIHNpZWhzdGUgbWFsIGRpZSBBdXN3aXJrdW5nZW4gdm9uIE5lZ2F0aXYtV2VyYnVuZyA6KQoKS2FyaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvIGdlaHQgZGFzIG1pdCBkZXIgcXVlc3RlcmVpIGFsc28gOykgKEthcmljLCAxOS4gT2t0IDE5OTksIDEwOjIzOjMxKToKRGVyIFd1bnNjaCB2b24gRG9jZGV2aWwgaXN0IGluIEVyZnVlbGx1bmcgZ2VnYW5nZW4uCltBYmVudGV1ZXI6PFF1ZXN0Pl0gU3dpcmwgaGF0IGdlcmFkZSBlaW4gQWJlbnRldWVyIGJlc3RhbmRlbjogU2NocmF0IGthbm4KW0FiZW50ZXVlcjo8UXVlc3Q+XSBuaWNodCBlaW5zY2hsYWZlbgpQbG9ldHpsaWNoIGhvZXJzdCBEdSBlaW4gbGF1dGVzIFNjaG5hcmNoZW4uIFN3aXJsIGhhdCBkZW0gU2NocmF0CnNlaW4gbGFuZ2Vyc2VobnRlcyBTY2hsYWZtaXR0ZWwgZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IENoYW5lbC1Sb2JvdHMgKERhcmttYWdlLCAxOS4gT2t0IDE5OTksIDEyOjAzOjQ0KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTk0MDMyMDk1OCByZz1zY2htYXJybgp+IyEgdGlkPTk0MDMxNzQxMwpPY2ggbm9lLApkYSBoYXQgbWFuIEJhbWJ1bGtvIG5hY2ggc2VpbmVtIHdvY2hlbmxhbmdlbgozMy1NaW51dGVuLXVuZC0xOCg/KS1TZWt1bmRlbi1SZXBlYXQtR2Vncm9laGxlIGVyZm9sZ3JlaWNoIGlnbm9yaWVydCwgd2lsbCBlaW4Kd2VuaWcgTVBBIGxlc2VuLCB1bmQgZGFubiBrcmllZ3QgbWFuIGZ1ZXIgZGllc2VuIE1pc3QgYXVjaCBub2NoIHNvIG5lbgpqYWVtbWVybGljaGVuIFJlY2h0ZmVydGlndW5ncy1TY2h3YWNoc2lubiB6dSBsZXNlbi4KV2VubiBpY2ggaWhuIGpldHp0IG5vY2ggaW4gZGVyIE1QQSBpZ25vcmllcmUsIGhhYiBpY2hzIGRhbm4gZ2VzY2hhZmZ0LCBvZGVyCm11c3MgaWNoIG5vY2ggYW4gaXJnZW5kZWluZXIgYW5kZXJlbiBTdGVsbGUgZGFtaXQgcmVjaG5lbiwgdm9uIHNvIG5lbQpnZWlzdGlnZW4gU2Nod2FjaHNpbm4gZXJ3aXNjaHQgenUgd2VyZGVuPwoKTmViLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQ2hhbmVsLVJvYm90cyAoQmFtYnVsa28sIDE5LiBPa3QgMTk5OSwgMTI6MjY6MzQpOgp+IyEgcm49RGFya21hZ2UgcnQ9OTQwMzM0NjI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwMzE3NDEzCkdhZWhuLi4uLnNjaGF1IG1hbCBhbiBpbiB3ZWxjaGVyIFJ1YnJpayBkYXMgc3RlaHQuLi4uLklnbm9ybmllciBtaWNoIGRvY2gKZWluZmFjaCwgZGFubiBtdXNzdCBkdSBtaXIgbWVpbiBaZXVncyBuaWNodCBhbmhvZXJlbiB1bmQgaWNoIG1pciBkZWluClJ1bWdlamFtbWVyZSBuaWNodCBkdXJjaGxlc2VuLi4uLgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IENoYW5lbC1Sb2JvdHMgKFBhdHJ5biwgMTkuIE9rdCAxOTk5LCAxNToxMDoyNik6Cn4jISBybj1aYXJuaXlhIHJ0PTk0MDMyNDg5OSByZz1zY2htYXJybgp+IyEgdGlkPTk0MDMxNzQxMwppY2gga2FubiBtaWNoIHRhZXVzY2hlbiwgYWJlciBpY2ggZ2xhdWJlLCBkaWUgMiB3b2NoZW4gc2luZCBncnVuZGZhbHNjaC4Kc29sYW5nZSBnZWh0IGRhcyBiZWkgd2VpdGVtIG5vY2ggbmljaC4uLgoKLS0tLS0tCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHJhY2hlbmdvdHQgKFBhcmFjZWxzdXMsIDE5LiBPa3QgMTk5OSwgMTY6MjU6MDApOgo+IE1haGF0bWEgZXJ3ZWNrdCBkZW4gRHJhY2hlbmdvdHQgZGVyIFNjaHJlY2tlbnNzcGl0emUuCj4gRWlsdCBoZXJiZWkgdW5kIGhlbGZ0IGlobS4KCkhtbSwgd2VubiBpY2ggZGVtIERyYWNoZW5nb3R0IGhlbGZlLCB6YWVobHQgZGFzIGFtIEVuZGUgbm9jaCBhbHMKUGxheWVya2lsbCAobmljaHQsIGRhc3MgbWljaCBkYXMgYmVydWVocmVuIHd1ZXJkZSA7KS4KClBhcmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBDaGFuZWwtUm9ib3RzIChNdXBmZWwsIDE5LiBPa3QgMTk5OSwgMTc6MDI6NTIpOgp+IyEgcm49WmFybml5YSBydD05NDAzMjQ4OTkgcmc9c2NobWFycm4KfiMhIHRpZD05NDAzMTc0MTMKU1RVUk0gSU0gV0FTU0VSR0xBUyAtIEhhdCBaYXJuaXlhIG1pdGdlcnVlaHJ0PwoKTGVzZW4gc2llIG1laHIgZGFydWViZXIgaW4gZGVyIG5hZWNoc3RlbiBBdXNnYWJlIHZvbiBCQUxELgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcGZycnIgKFdpbSwgMTkuIE9rdCAxOTk5LCAxOTo1NTo1NSk6CkRhcmtzb3BlbCBydWZ0OiBGUkVVIEhVUlJBQUEgSU1EUkVJRUNLU1BSSU5HCkR1IHJ1ZnN0OiBoZWlzc3QgZGFzIG5pY2h0IGRyZWNrcyBvcGVsPwooLi4uKQpEYXJrc29wZWwgdGVpbHQgRGlyIG1pdDogbmVpbiBkZXMgc3RpbW10IHNvCgpEYXMgd29sbHRlIGljaCBlaWdlbnRsaWNoIGdhciBuaWNodCB3aXNzZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5hIHdhcyBudSA/IDopIChQYXJzaXZhbCwgMTkuIE9rdCAxOTk5LCAyMjo1MjoyMik6Cj4gcwpEaWUgc3RhcmtlIEJyYW5kdW5nIGhhZWx0IERpY2ggZGF2b24gYWIsIG5hY2ggU3VlZGVuIHp1IGdlaGVuLgo+IHVudCBicmFuZHVuZwpTb3dhcyBzaWVoc3QgRHUgZGEgbmljaHQhCgpQYXJzaXZhbCAtIG5pY2h0IHNpY2hlciwgd2FzIGlobiBudW4gYXVmaGFlbHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IENoYW5lbC1Sb2JvdHMgKEJhbWJ1bGtvLCAyMC4gT2t0IDE5OTksIDA4OjMwOjA1KToKfiMhIHJuPVRhcmFnb24gcnQ9OTQwMzUwMDUwIHJnPWV0aWtldHRlCn4jISB0aWQ9OTQwMzE3NDEzCkhtbW0gaXN0IHNjaG9uIGtvbWlzY2gsIGRhcyAoYWJnZXNlaGVuIHZvbiBaYXJuaXlhKSBhbGxlLCBkaWUgaGllciBzbyBzY2hvZW4KbWl0ZGlza3V0aWVyZW4sIG5pZSBhdWYgLVNwb3J0IHNpbmQgdW5kIGRhaGVyIGdhciBuaWNodCB3aXNzZW4sIHdhcyBkYSBsYWV1ZnQuCgpBbHNvIGt1ZW1tZXJ0IGV1Y2ggdW0gZXVyZSBlaWdlbmVuIFNhY2hlbi4uLi4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBDaGFuZWwtUm9ib3RzIChTdWJsaW1lLCAyMC4gT2t0IDE5OTksIDA5OjE4OjQ3KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTk0MDQwODIwNSByZz1zY2htYXJybgp+IyEgdGlkPTk0MDMxNzQxMwpTdWJsaW1lIGlzdCAod2llZGVyKSBkcmF1ZiA7KQoqZnJldSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiB3YXMgaWNoIGRhcmYuIChUaWFtYWssIDIwLiBPa3QgMTk5OSwgMDk6NDM6NTQpOgp+IyEgcm49QmFtYnVsa28gcnQ9OTQwNDEyNTY4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTQwMzQyNzk4ClRqYSwgbGVpZGVyIGR1cmNoZ2VmYWxsZW4uCgpUaWFtYWsuIFJlaWNodCBCYW1idWxrbyBlaW4gS29tbWEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogd2FzIGljaCBkYXJmLiAoQmFtYnVsa28sIDIwLiBPa3QgMTk5OSwgMDk6NDU6MjUpOgp+IyEgcm49VGlhbWFrIHJ0PTk0MDQxMjYzNCByZz1zY2htYXJybgp+IyEgdGlkPTk0MDM0Mjc5OApPay4uLmljaCBtYWNoZSBzb2ZvcnQgU2VsYnN0bG9lc2NodW5nLi4uLi5jaWFvLgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiB3YXMgaWNoIGRhcmYuIChTdWJsaW1lLCAyMC4gT2t0IDE5OTksIDA5OjQ4OjEwKToKfiMhIHJuPVRpYW1hayBydD05NDA0MTI2MzQgcmc9c2NobWFycm4KfiMhIHRpZD05NDAzNDI3OTgKVGhlbWEgS29tbWEgOiBLZW5udCBpaHIgZGFzIGF1Y2ggbm9jaCA/CgpCZWkgRnJhbnpvZXNpc2NoZGlrdGF0ZW4gZGFtYWxzIGthbSBpbW1lciB3aWVkZXIKc28gZWluIFdvcnQgbmFtZXMgIlZpcmd1ZWwiIG9kZXIgc28gYWVobmxpY2ggCihkYXMgd2FyIGRpZSBMYXV0c2NocmlmdCkgdm9yIHVuZCBrZWluZXIgd3Vzc3RlCndhcyBlcyBoZWlzc3QsIGFsc28gc2NocmllYmVuIGFsbGUgaW1tZXIgd2llZGVyCnZpcmd1ZWwKCkVuZGUgZGVyIEdlc2NoaWNodGUgd2FyIGRhbm4sIGFscyBlcyBkYW5uIDEzIDZlbgpoYWdlbHRlIHVuZCBkZXIgcmVzdCA1ZW4gd2FyZW4gdW5kIHVucyB1bnNlcmUKZWhlbWFsaWdlIGZyYW56bGVocmVyaW4gZ2VuYXUgZXJrbGFlcnRlLCB3YXMgZWluCiJ2aXJndWVsIiB3YWVyZSA7KQoKU3VibCwgdm9tIFRoZW1hIG1hbCBhYmxlbmtlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiB3YXMgaWNoIGRhcmYuIChHbm9tZSwgMjAuIE9rdCAxOTk5LCAxMDoxOTowMCk6Cn4jISBybj1CYW1idWxrbyBydD05NDA0MTI3MjUgcmc9c2NobWFycm4KfiMhIHRpZD05NDAzNDI3OTgKYmlzdCBqYSBpbW1lciBub2NoIGRhLgplcnN0IGVpbmVtIGhvZmZudW5nIG1hY2hlbiB1bmQgZGFubi4uLgoKZ25PbWUgbXVybWVsdCB3YXMgdm9uICdsZWVyZW4gdmVyc3ByZWNodW5nZW4nLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogd2FzIGljaCBkYXJmLiAoQmFtYnVsa28sIDIwLiBPa3QgMTk5OSwgMTA6Mjk6MDQpOgp+IyEgcm49R25vbWUgcnQ9OTQwNDE0NzQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwMzQyNzk4CkJhbWJ1bGtvIG11cm1lbHQgZXR3YXMgdm9uICdSdWJyaWsgc2NobWFycm4nIC4uLi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBDaGFuZWwtUm9ib3RzIChQYXRyeW4sIDIwLiBPa3QgMTk5OSwgMTI6NTU6MjkpOgp+IyEgcm49QmFtYnVsa28gcnQ9OTQwNDA4MjA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwMzE3NDEzCmZhbHNjaC4uLmljaCBiaW4gaW1tZXIgZHJhdWYuCmR1IGthbm5zdCBoaWVyIHJ1bW5vZWxlbiB3aWUgZHUgd2lsbHN0LCBkZWluIHNjcmlwdCBuZXJ2dGUgdW5kIG1hY2h0ZQpkZW4gY2hhbm5lbCBuaWNodCBlYmVuIGF0cmFrdGl2ZXIsIGVnYWwgb2IgZXIgbnVuIGhhZXVmaWcgYmVudXR6dCB3aXJkCm9kZXIgbmljaHQuIHdpZSB3YWVycywgd2VubiBkdSBkYXMgamV0enQgbWFsIGVpbnNpZWhzdCB1bmQgZGljaCBlaW5mYWNoCnN0aWxsIHVuZCBsZWlzZSBpbiBkaWUgZWNrZSBzdGVsbHN0IHVuZCBkb3J0IGRhcyB1ZWJsaWNoZSB0dXN0LCB3YXMgbWFuCmluIHNvbGNoZW4gZmFlbGxlbiB0dW4gc29sbHRlIChzb2Zlcm4gbWFuIGVpbiBnZXdpc3NlcyBtYXNzIGFuIGVyemllaHVuZwogYWJiZWtvbW1lbiBoYXQpLgoKLS0tLS0tCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVXJsYXViIChNYWhhdG11LCAyMC4gT2t0IDE5OTksIDEzOjE0OjIxKToKfiMhIHJuPVJvY2h1cyBydD05NDA0MjUwMjEgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTkzODQ0NDM0NQpJY2ggYnJpbmdlIGRhcyBub2NoIHZpZWwgZWhlciBpbiBadXNhbW1lbmhhbmcgbWl0IERlaW5lbSBEaXBsb20gOy0pCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogd2FzIGljaCBkYXJmLiAoWWVuZGksIDIwLiBPa3QgMTk5OSwgMTQ6MzE6NTQpOgp+IyEgcm49U3VibGltZSBydD05NDA0MTI4OTAgcmc9c2NobWFycm4KfiMhIHRpZD05NDAzNDI3OTgKRGFzIHNvbGx0ZSBkYW5uIHdvaGwgImxhIHZpcmd1bGUiIHNlaW4uLi4KCllUWQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYmVpIEFtYW5kYSA6KSkgKFVuYXNhaSwgMjAuIE9rdCAxOTk5LCAxNTowNDozMyk6CiBEaWUgYW5kZXJlIEFtYW5kYS4KQW1hbmRhIHNhZ3Q6ICBTbyBoYXN0IER1IG1pY2ggZW5kbGljaCBnZWZ1bmRlbiwgUm9jaHVzIQpEdSBnaWJzdCBkZW4gS3Jpc3RhbGxrbHVtcGVuIGFuIEFtYW5kYS4KQW1hbmRhIGt1ZXNzdCBEaWNoIGF1ZiBkaWUgV2FuZ2UuCgoKRHUgd2lyc3QgZ2VnZW4gZGllIFdhbmQgZ2VzY2hsZXVkZXJ0LgoKKmcqIDopClVuYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IENoYW5lbC1Sb2JvdHMgKEdyaW1tdGVzdCwgMjAuIE9rdCAxOTk5LCAxNzowNzo0OSk6Cn4jISBybj1CYW1idWxrbyBydD05NDA0MDgyMDUgcmc9c2NobWFycm4KfiMhIHRpZD05NDAzMTc0MTMKRmFsbHMgRHUgZ2xhdWJlbiBzb2xsdGVzdCwgaGllciBkdWVyZmUgbWFuIHNpY2ggbnVyIGFuIERpc2t1c3Npb25lbgpiZXRlaWxpZ2VuLCB3ZW5uIG1hbiB6dW1pbmRlc3QgZWluIGdydW5kbGVnZW5kZXMgVmVyc3RhZW5kbmlzIGRlcgp6dWdydW5kZWxpZWdlbmRlbiBUaGVtYXRpayBiZXNpdHp0LCBtdXNzIGljaCBEaXIgbGVpZGVyIG1pdHRlaWxlbiwgZGFzcyBEdQpEaWNoIGhpZXIgaW0gZmFsc2NoZW4gTWVkaXVtIGJlZmluZGVzdC4KCkljaCBrYW5uIERpciBhYmVyIGVpbiwgendlaSBUYWxrc2hvd3MgaW4gZGVuIGRyaXR0ZW4gUHJvZ3JhbW1lbiBuZW5uZW4sIGRpZQp0YXRzYWVjaGxpY2ggbmFjaCBkaWVzZW0gUHJpbnppcCBmdW5rdGlvbmllcmVuLgoKR2RUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogd2FzIGljaCBkYXJmLiAoU3VibGltZSwgMjAuIE9rdCAxOTk5LCAxOTowNjo0MSk6Cn4jISBybj1ZZW5kaSBydD05NDA0Mjk5MTQgcmc9c2NobWFycm4KfiMhIHRpZD05NDAzNDI3OTgKT2RlciBzbyA7KQoKU3VibGJ1YmJsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQ2hhbmVsLVJvYm90cyAoWmFybml5YSwgMjEuIE9rdCAxOTk5LCAwNzoxNToxNyk6Cn4jISBybj1QYXRyeW4gcnQ9OTQwMzQ1ODI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwMzE3NDEzCndlbm4gaWNoIGJlZGVua2UsIHdpZSBzZWhyICBzaWNoIGRhcyBOaXZlYXUgaGllciBhbiBkaWUgQklMRC1aZWl0dW5nIGFucGFzc3QsCmRhbm4gc2luZCAyIFdvY2hlbiB1bnRlcnRyaWViZW4gOikKCk1hcmMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipncnVtbWVsKiAoTW9yZ290aCwgMjEuIE9rdCAxOTk5LCAwNzoxNjoxMyk6CiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBaYXJuaXlhIGluIFJ1YnJpayAic2NobWFycm4iLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpbRGVidWc6TVBBXSBIaWVyIHN0ZWh0IG5pY2h0IG1laHIgZHJpbi4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbW1lciB3aWVkZXIgc2Nob2VuIDopIChOYWlyb2xmLCAyMS4gT2t0IDE5OTksIDA3OjQ3OjQ4KToKPiBmZyBnYXN0MQpHYXN0MSBpc3QgbmljaHQgYW53ZXNlbmQuClp1bGV0enQgZWluZ2Vsb2dndCB2b246IEdpZXNzZW4KWnVsZXR6dCBhdXNnZWxvZ2d0OiBNaXQsIDMxLiBEZXogMTk2OSwgMjM6NTk6NTkgKDEwODg1ZCAwNzo0NzowOSkKVm9sbGVyIE5hbWU6IEdhc3QxIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIKUmFzc2U6IE1lbnNjaCwgIEdpbGRlOiBBYmVudGV1cmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAwMDowNjoyNCwgICBTcGllbGVybGV2ZWw6IDEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJlZmVobCBpc3QgQmVmZWhsIChUaWFtYWssIDIxLiBPa3QgMTk5OSwgMTA6MzU6MDYpOgpbQWxsZ2VtZWluOkZpcmVoYXdrXSBOYW51LCBzbyB2aWVsZSBMZXV0ZSBkYSB1bmQgc2Nob24gc28gbGFuZ2Uga2VpbmVyIG1laHIKW0FsbGdlbWVpbjpGaXJlaGF3a10gdmVycmVja3QgPyBXYXNuaGllciBrYXB1dHQgOikgPDEwOjMyOjQ5PgoKW1RvZDpMYXJzXSBFaW4gS3JpZWdlciBoYXQgZ2VyYWRlIFVuYXNhaSB1bWdlYnJhY2h0LiA8MTA6MzQ6MDc+CgpUaWFtYWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWVzIEZlYXR1cmUgb2RlciBtYWthYnJlciBadWZhbGw/IChaZXBoeXIsIDIxLiBPa3QgMTk5OSwgMTA6Mzg6MzIpOgoKW1RvZDpMYXJzXSBFaW4gS3JpZWdlciBoYXQgZ2VyYWRlIFVuYXNhaSB1bWdlYnJhY2h0LgpEdSB0ZWlsc3QgVW5hc2FpIG1pdDogYXJnaCEKVW5hc2FpIGlzdCBnZXJhZGUgbmljaHQgZGE6IEZyaWVkaG9mIDopCgpDNCwgbmljaHQgd2lzc2VuZCwgd2lldmllbCBzaWUgaW0gVXJsYXViIHZlcnBhc3N0IGhhdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJlZmVobCBpc3QgQmVmZWhsIChVbmFzYWksIDIxLiBPa3QgMTk5OSwgMTA6NDA6MDIpOgp+IyEgcm49VGlhbWFrIHJ0PTk0MDUwMjEwNiByZz1zY2htYXJybgp+IyEgdGlkPTk0MDUwMjEwNgpobS4uLi4uLi4uLi4uLi4Kc2VpdCB3YW5uIGhvZXJlIGljaCBlaWdlbnRsaWNoIGF1ZiBlaW5lbiBCZWZlaGwgZWluZXMgQ2hhb3Rlbj8gSWNoIHVlYmVydHJlaWJzCndvaGwgbWl0dGVyIERpc3ppcGxpbiA6KQpVbmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZW5uIE1hZ2llciBTcG9ydCB0cmVpYmVuLi4uIChUc3VuYW1pLCAyMS4gT2t0IDE5OTksIDExOjUwOjE5KToKVW5nZXNjaG5pdHRlbiB1bmQgdW56ZW5zaWVydCB3aWUgaW1tZXIgOikKCkRlaW4gRnJldW5kIEZldWVyd2VociB0ZWlsdCBEaXIgbWl0OiBJY2ggbXVzcyBhdWNoIHdlZyEgSWlpaWgsIFNwb3J0IHRyZWliZW4KRGVpbiBGcmV1bmQgRmV1ZXJ3ZWhyIHRlaWx0IERpciBtaXQ6ICpzY2h1ZXR0ZWwqIDopCkZldWVyd2VociBodWVwZnQgYXVzIGRlciBGZXJuZSB1bSBEaWNoIGhlcnVtLgpGZXVlcndlaHIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpJY2ggc3RlbGwgZXMgbWlyIHNjaG9uIHZvciAuLi4gMTEyIGxlZ3Qgc2ljaCBhdWYgZGllIEJhbmsgdW5kIHNhZ3Q6CidoZWJlIGJlaW5lJy4gVW5kIHNjaG9uIGtvbW10IGVpbiBJbnN0cnVrdG9yIHVuZCBoZWJ0IHNlaW5lIEJlaW5lLi4uLgoKVHN1bmFtaSwgcnVtYWxiZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpncnVtbWVsKiAoWm9vaywgMjEuIE9rdCAxOTk5LCAxNDozMToxMCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTk0MDQ5MDE3MyByZz1zY2htYXJybgp+IyEgdGlkPTk0MDQ5MDE3Mwo+PltEZWJ1ZzpNUEFdIEhpZXIgc3RlaHQgbmljaHQgbWVociBkcmluLgoKSGloaWhpLi4uIGludGVyZXNzZW50ZSBOTmFkVy1NZWxkdW5nLi4gOykKCkdydXNzLCBab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJiZWl0c3NjaGx1c3MgPyAoU3VibGltZSwgMjEuIE9rdCAxOTk5LCAxNDo1MTozNCk6CkdyaW1tYW4gPyBKYSEuCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBqZXR6dCBpc3QgYXJiZWl0c3NjaGx1c3MKR3JpbW1hbiAgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhLgpIZXksIGljaCB3YXIgZHJhbiAhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBQUFBQVJSUlJHSCA7LSkgKFJhbmksIDIxLiBPa3QgMTk5OSwgMjI6MjE6MTkpOgpEdSBrb2VubnRlc3QgRGVpbmUgU3R1ZmUgZXJob2VoZW4hClVtIFNlaGVyaW4gb2RlciBNYWdpZXJpbiB3ZXJkZW4genUga29lbm5lbiBmZWhsdCBEaXIgbm9jaCAxIEFiZW50ZXVlcnB1bmt0LgoKbm8gY29tbWVudC4KUmFuaS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2VuZi4uLiAoQm9pbmcsIDIyLiBPa3QgMTk5OSwgMDY6MDM6MDApOgp+IyEgb249SGVyb21jZmx5IG90PTk0MDI3MDU5MSBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPU5ldm9rIHJ0PTk0MDI3MDQ5MiByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05NDAyNzAyOTMKCmhhYnQgaWhyIGV1Y2ggamVtYWxzIGdlZGFua2VuIHVlYmVyIG1hZ2VuZ2VzY2h3dWVyZSBnZW1hY2h0IC4uLiA/IDopCm9kZXIgaGVyemluZmFya3RlIG9kZXIgYWVobmxpY2hlcyAKCmJpbiBzY2hsaWVzc2xpY2ggaW1tZSBydW0gZGFzIHdvaGxlcmdlaGVuIGFuZGVyZXIgYmVzb3JndAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2VuZi4uLiAoQm9pbmcsIDIyLiBPa3QgMTk5OSwgMDY6MDM6MDEpOgp+IyEgb249TmV2b2sgb3Q9OTQwMjcwNzEyIG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49VW5hc2FpIHJ0PTk0MDI3MDYyNyByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05NDAyNzAyOTMKZGVuIFNjaHVoIG1pdCBEaXIgYWxzIEVtYW56ZSBoYXN0IER1IERpciBzZWxiZXIgYW5nZXpvZ2VuLCBTY2hudWNrZWxjaGVuLCBrYW0Kdm9uIG1pciBpbiBrZWluZXIgQXVzc2FnZS4KVGphLCB3ZXIgbGVzZW4ga2FubiBpcyBrbGFyIGltIFZvcnRlaWwgOykKaGFzdGEgbGEgdmlzdGEsIFNjaG51bGxlcmJhY2tlCgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2VuZi4uLiAoQm9pbmcsIDIyLiBPa3QgMTk5OSwgMDY6MDM6MDIpOgp+IyEgb249THVnIG90PTk0MDM3NDAzMiBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPU5ldm9rIHJ0PTk0MDI3MDcxMiByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05NDAyNzAyOTMKCkljaCBtb2VjaHRlIG5vY2ggYW5tZXJrZW46CgpGaWRLRyEKClVuZCB0dXMgYXVjaC4KTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTZW5mLi4uIChCb2luZywgMjIuIE9rdCAxOTk5LCAwNjowMzowMyk6Cn4jISBvbj1BbmRyb21lZGEgb3Q9OTQwNDQxMDEwIG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49TmV2b2sgcnQ9OTQwMjcwNzEyIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTk0MDI3MDI5MwpOdXIgdW0gZGFzIG1hbCBFTkRHVUVMVElHIChob2ZmZW50bGljaCAqYXVnZW4gcm9sbCopIGtsYXIgenUgc3RlbGxlbi4uLgp6d2lzY2hlbiBlbWFuemlwaWVydCBzZWluIHVuZCBFbWFuemUgZ2lidCdzIG5lbiBnZXdhbHRpZ2VuIFVudGVyc2NoaWVkLi4uCkFuZHJvKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU2VuZi4uLiAoQm9pbmcsIDIyLiBPa3QgMTk5OSwgMDY6MDM6MDQpOgp+IyEgb249TmV2b2sgb3Q9OTQwNDQxMDQwIG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49QW5kcm9tZWRhIHJ0PTk0MDQ0MTAxMCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05NDAyNzAyOTMKaGFiIGphIG5peCBhbmRlcmVzIGJlaGF1cHRldAoKTmV2KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU2VuZi4uLiAoQm9pbmcsIDIyLiBPa3QgMTk5OSwgMDY6MDM6MDUpOgp+IyEgb249SmFtYWxza2kgb3Q9OTQwNTEyOTU4IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49QW5kcm9tZWRhIHJ0PTk0MDQ0MTAxMCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05NDAyNzAyOTMKRW5kZ3VlbHRpZ2UgU2FjaGVuIHNhZ3QgbWFuIGhpZXIgc2Nob25tYWwgZ2FybmljaHQsIHdlaWwgaW1tZXIgZWluCktsdWdzY2hlaXNzZXIgRGVpbmUgV29ydGUgbm9jaG1hbCBkdXJjaCBkZW4gTWl4ZXIsIGRlciBzZWluIEdlaGlybiBlcnNldHplbgpzb2xsdGUgaGF1dCwgdW5kIHNpZSAodW4pYmV3dXNzdCBmYWxzY2ggdmVyc3RlaHQuClp1ICdlbWFuemlwaWVydCcgdW5kICdFbWFuemUnIGdpYnQgZXMgZWlnZW5saWNoIG51ciBkZW4gVW50ZXJzY2hpZWQgZGVyClNwcmFjaHByYWVndW5nLiAoYWJnZXNlaGVuIHZvbiBncmFtbWF0aWthbGlzY2hlbiBVbnRlcnNjaGllZGVuKQpEYSBrYW5uc3QgU3Bhc3MgYW0gTXVkZGVuIGhhYmVuLCBvZGVyIER1IGJpc3QgZWluIE11ZC1TdWVjaHRpZ2VyIQpCZWlkZXMgaXN0IGRhcyBnbGVpY2hlLgpKYW1hbHNraQoqKwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU2VuZi4uLiAoQm9pbmcsIDIyLiBPa3QgMTk5OSwgMDY6MDM6MDYpOgp+IyEgb249SG9ibyBvdD05NDA1MTQ5MjUgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1BbmRyb21lZGEgcnQ9OTQwNDQxMDEwIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTk0MDI3MDI5MwpJcmdlbmR3aWUgd2lya3QgZGFzIHNlbHRzYW0sIHdlbm4gc2ljaCBlaW4gd2VpYmxpY2hlciBDaGFyYWt0ZXIgbWl0IEFuZHJvKgphYmt1ZXJ6dC4KCiBIb2JvIG11c3MgZGEgaW1tZXIgYW4gZWluZSBLYWxrZS1TZW5kdW5nZGVua2VuIG1pdCAiSGFsbG8/IEhpZXIgaXN0IEFuZHJvLAp3ZXIgc3ByaWNodCBkZW5uIGRhPyIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFZvcnNjaGxhZyBtZWluZXJzZWl0cyAoQm9pbmcsIDIyLiBPa3QgMTk5OSwgMDY6MDM6MDcpOgp+IyEgb249R29sYXMgb3Q9OTQwNTE2Njc3IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49R2FzdDIgcnQ9OTQwNTE2NjA5IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTkzOTY1MDk2Ngp1aSAuLi4gZW5kbGljaCBtYWwgd2llZGVyIGVpbiBnYXN0LCBkZXIgcGVyc29lbmxpY2ggd2lyZCAqZnJldSoKCmdvbGFzIGxhY2h0IHNpY2ggZWlucywgd2VpbCBrZWluZXIgZGVuIGFydGlrZWwgdmVyc3RlaGVuIGtvbm50ZSB1bmQgZWluaWdlCnNjaGxhdWUgZXJzdG1hbCBiZWkgaWhtIG5hY2hnZWZyYWd0IGhhYmVuIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU2VuZi4uLiAoQm9pbmcsIDIyLiBPa3QgMTk5OSwgMDY6MDM6MDgpOgp+IyEgb249R25vbWUgb3Q9OTQwNTE4ODg4IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49SmFtYWxza2kgcnQ9OTQwNTEyOTU4IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTk0MDI3MDI5MwphdWNoIHdlbm4gZHUgaGllciBzbyBnZWhhbHR2b2xsKD8pIHJ1bXRvZW5zdDoKc3Bhc3MgYW0gbXVkZGVuIG11ZCBtdWQtc3VlY2h0aWcgaXN0IF9uaWNodF8gZGFzIGdsZWljaGUuCndlbm4gaWNoIGdlcm5lIG1hbCBuZW4gZ2xhcyB3ZWluIHRyaW5rZSwgZ2Vob2VyIGljaCBub2NoIGxhbmdlIG5pY2h0Cnp1IGRlbiBhbm9ueW1lbiBhbGtvaG9saWtlcm4uLi4KZXJzdCBkZW5rZW4sIGRhbm4gc2NocmVpYmVuLi4uIG5hamEsIHdpZSBpbW1lciBlaWdlbnRsaWNoLi4uCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU2VuZi4uLiAoQm9pbmcsIDIyLiBPa3QgMTk5OSwgMDY6MDM6MDkpOgp+IyEgb249SmFtYWxza2kgb3Q9OTQwNTE5MDU3IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49R25vbWUgcnQ9OTQwNTE4ODg4IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTk0MDI3MDI5MwpBYmVyIHdlbm4gRHUgcmVnZWxtYWVzc2lnIHp1bSBBYmVuZGVzc2VuIGVpbiBHbGFzIFdlaW4gdHJpbmtzdCBrb21tdApHZXdvaG5oZWl0IGF1ZiB1bmQgZGFzIGdlaHQgdmVyZGFtbXQgaW4gUmljaHR1bmcgc3VjaHQuCgpNSVRkZW5rZW4gaGlsZnQgYXVjaApKYW1hbHNraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU2VuZi4uLiAoQm9pbmcsIDIyLiBPa3QgMTk5OSwgMDY6MDM6MTApOgp+IyEgb249QXBvbGxvbmlhIG90PTk0MDUzMTk0OSBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPU5ldm9rIHJ0PTk0MDQ0MTA0MCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05NDAyNzAyOTMKRHUgc3RlbGxzdCBVbmFzYWkgYWJlciBzbyBoaW4sIGFscyBzZWkgc2llIG5lIEVtYW56ZSB1bmQgZGFzIGthbm4gaWNoCmRlZmluaXRpdiBiZXNzZXIgYmV1cnRlaWxlbiBhbHMgRHUsIE1vZWNodGVnZXJubWFjaG8gOykKCkFwbyogKGRyYW4gZGVua2VuZCwgZGFzcyBoaWVyIHdlciBQZWl0c2NoZW5oaWViZSB2ZXJkaWVudCBoYXQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTZW5mLi4uIChCb2luZywgMjIuIE9rdCAxOTk5LCAwNjowMzoxMSk6Cn4jISBvbj1OZXZvayBvdD05NDA1MzgxMjEgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1BcG9sbG9uaWEgcnQ9OTQwNTMxOTQ5IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTk0MDI3MDI5Mwptb29vb2hvb29vbWVudC4uLi4uLmRhcyB6ZWlnc3RlIE1pciBiaXR0ZSBtYWwsIEFwb2xsaW5hcmlzIFNjaGF0eiA7KQoKTmV2b2ssIGRlciBhdWYgZGVuIEdlc2NobWFjayBnZWtvbW1lbiBpc3QgKE1pbmVyYWx3YXNzZXIgcHVyLCBGZXJrZWwpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTZW5mLi4uIChTdWJsaW1lLCAyMi4gT2t0IDE5OTksIDA2OjQ5OjA3KToKfiMhIHJuPUJvaW5nIHJ0PTk0MDU3MjE5MSByZz1zY2htYXJybgp+IyEgdGlkPTk0MDI3MDI5MwpIbW1tbW1tbSwuLi4KVm9uICJTZW5mIiB1ZWJlciBFbWFuemVuIHVuZCBlbWFuemlwaWVydGUgZ2VodHMKamV0enQgaW4gUmljaHR1bmcgQXBvbGxvbmlhcyBQZWl0c2NoZW5oaWViZS4gSXN0CmVjaHQgc2NocmFlZyBpcmdlbmR3aWUgOykgSWNoIGdsYXViIGRhenUgbXVzcyBpY2gKbWFsIG1laW5lbiBTZW5mIGRhenVnZWInbiA7KQoKWndpc2NoZW4gRW1hbnplbiB1bmQgZW1hbnppcGllcnRlbiBnaWJ0IGVzIHNpY2hlcmxpY2gKbmVuIFVudGVyc2NoaWVkLCBpY2ggbWVpbiBuaWNodCB1bXNvbnN0IGhhdCBVbmFzYWkKKHNjaG9lbmUgR3J1ZXNzZSkgYXVjaCBpbSBSTCBzbyAnbmUgZ3Jvc3NlIEtsYXBwZQooKmR1Y2sqKQpCZWltIFdlaW4gZ2lidHMgZGEgc2ljaGVyIGF1Y2ggVW50ZXJzY2hpZWRlLiBOaWNodCBudXIKZGFzIGRlciB2b24gdWViZXJhbGwga29tbXQsIG5laW4sIHdlbm4gbWFuIGFiZW5kcyBlaW4KU0NITFVFQ0tDSEVOICghISEsIG5pY2h0IDMgRmxhc2NoZW4gISkgdHJpbmt0LCBkYW5uCmthbm4gZGFzIHp1ciBHZXdvaG5oZWl0IHdlcmRlbixqYSwgYWJlciBuZSBTdWNodCBpc3QKZGFzIG5vY2ggbGFuZ2UgbmljaHQuIERhIGtvbW10IGVyc3Qgbm9jaCBkaWUgQWJoYWVuZ2lna2VpdApkYXp3aXNjaGVuLCBhdWNoIHdlbm4gdmllbGUgZGFzIGpldHp0IHZpZWxsZWljaHQgbmljaHQKdmVyc3RlaGVuIHdlcmRlbiB1bmQgZ2xlaWNoIHdpZWRlciBIQUVIID8gZ2VzY2hyaWVuCndpcmQuIEFiZXIgZGFzIG1hY2h0IGphIG5peC4uLgpadW0gU2VuZiwgZWdhbCBvYiBTZW5mIGF1ZiBXdWVyc3RjaGVuLCBCb3VsZXR0ZSAoZG9vZmVzCldvcnQgaXJnZW5kd2llKSBvZGVyIGF1ZiB3YXNfd2Vpc3NfaWNoX25pY2h0X2FsbGVzX2Z1ZXJfCnBlcnZlcnNlX01pc2NodW5nZW5fdm9uX05haHJ1bmdzbWl0dGVsbl9taXRfU2VuZiwgU0VORgpTQ0hNRUNLVCBJTU1FUiBTQ0hFSVNTRSA7KSBBdWNoIHdlbm4gbmljaHQgc2NoZWlzc2UKZHJhdWZzdGVodC4uLgoKOykKU3VibGltZSwgbm9jaCB2b24gZGVyIGdlc3RyaWdlbiBOOCBldHdhcyBiZXRhZXVidCB1bmQKaG9mZnQsIG5ldWVuIFNjaHJlaWJzdG9mZiBnZWJvdGVuIHp1IGhhYmVuLCAuLi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTb3VuZGthcnRlIHJhdXNjaHQgKFc5OCkgKEdyaW1tYm9ybiwgMjIuIE9rdCAxOTk5LCAxMDoyOTo0OSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTQwNTg4MTgzIG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49SmFtZXNvbiBydD05NDA1ODQyOTcgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9OTQwNTg0Mjk3CkFlcmdlcm4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1c2t1bmZ0LmNvbSA/IChTdWJsaW1lLCAyMi4gT2t0IDE5OTksIDEwOjU3OjM4KToKSWNoIHNpdHplIGhpZXIgYXVmIEFyYmVpdCwgd2lyIHN1Y2hlbiAnbmUgQWRkcmVzc2UKZnVlciBlaW4gSG90ZWwgdW5kIGtvbW1lbiBuYXR1ZXJsaWNoIGF1ZiBkaWUgSWRlZQppbSBOZXR6IGRhbmFjaCB6dSBzY2hhdW4uIERlciBlcnN0ZSBWZXJzdWNoIGJlaQp3d3cuYXVza3VuZnQuZGUgd2FyIGVyZm9sZ2xvcy4gQWJlciBiZWltIFp3ZWl0ZW4gOykKCkljaCBnZWJlIG5pY2h0c2FobmVuZCB3d3cuYXVza3VuZnQuY29tIGVpbiB1bmQgd28KbGFuZGUgaWNoID8gTmF0dWVybGljaCBiZWkgZWluZW0gZGVyIHVuemFlaGxpZ2VuCmVrZWxlcnJlZ2VuZGVuIEhhcmRjb3JlLVNleC1BbmJpZXRlciA7KSBTY2hvbgp2ZXJydWVja3QgLi4uCgpTdWJsCgpwcyA6IHdpciBzaW5kIGRhbm4gYWJlciBkb2NoIG5vY2ggYXVmIHRlbGVmb25idWNoLmRlCmdlc3Rvc3Nlbiwgc28nbiBzY2h3YWNoc2lubiA7KQosCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXVza3VuZnQuY29tID8gKENhdHdlYXpsZSwgMjIuIE9rdCAxOTk5LCAxMTowMzoxMSk6Cn4jISBybj1TdWJsaW1lIHJ0PTk0MDU4OTg1OCByZz1zY2htYXJybgp+IyEgdGlkPTk0MDU4OTg1OApIbSwgdmVyc3VjaCBkb2NoIG1hbCB3d3cuZnRwc2VhcmNoLmNvbSwgZGEgcGFzc2llcnQgZGFzIGF1Y2guCk1hbiB3aXJkIHp3YXIgZnJldW5kbGljaGVyd2Vpc2UgYXVmIGRpZSByaWNodGlnZSBTZWl0ZSB2b24KbHljb3MgcmVkaXJlY3RlZCwgYWJlciB3ZW5uIG1hbiBKYXZhc2NyaXB0IGFuaGF0LCBlcmxlYnQgbWFuIAplaW5lIGFlaG5saWNoIGJvZXNlIFVlYmVycmFzY2h1bmcgOi0oCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFNlbmYuLi4gKEFwb2xsb25pYSwgMjIuIE9rdCAxOTk5LCAxMTo0ODo0Mik6Cn4jISBybj1Cb2luZyBydD05NDA1NzIxOTEgcmc9c2NobWFycm4KfiMhIHRpZD05NDAyNzAyOTMKV2FzIHNvbGwgaWNoIERpciB6ZWlnZW4/PyBWb3JhdXNnZXNldHp0LCBEdSB0cmF1c3QgRGljaCB1ZWJlcmhhdXB0IDspICBBYmVyCndpciBhbmdlYmxpY2hlbiBFbWFuemVuIHdpc3NlbiBqYSBlaCwgZGFzcyBpbiBhbGxlciBSZWdlbCBoaW50ZXIgZWluZXIgZ3Jvc3NlbgpLbGFwcGUgbmljaHQgdmllbCBzdGVja3QuLi4KCkFwbyogKG5lIEZsYXNjaGUgbWl0IE1pbmVyYWx3YXNzZXIgc2NodWV0dGVsbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTZW5mLi4uIChBcG9sbG9uaWEsIDIyLiBPa3QgMTk5OSwgMTE6NTA6MjgpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTk0MDU5MjkyMiByZz1zY2htYXJybgp+IyEgdGlkPTk0MDI3MDI5MwpLb3JyaWdpZXJlOiBoaW50ZXIgZWluZXIgX21hZW5ubGljaGVuXyBncm9zc2VuIEtsYXBwZSEgOikKCkFwbyogKGF1ZiBkaWUgQW50d29ydCB3YXJ0ZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHJvbGxpIGF1ZiBBYndlZ2VuIDspIChTdWJsaW1lLCAyMi4gT2t0IDE5OTksIDEyOjE4OjIyKToKU1VCTElNRSAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgICEKRHJvbGxpIHNhZ3Q6IHNjaG9uIHdpZWRlciBkdSA7KQpFbGNpZCBrbnVkZGVsdCBEcm9sbGkuCgpubyBjb21tZW50IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bmQgbm9jaG1hbCBsYXJzID8/PyAoVGhhbm9zLCAyMi4gT2t0IDE5OTksIDIwOjE2OjA1KToKRGllZGVyIHRlaWx0IERpciBtaXQ6IGFyZ2wgOikKCkR1IHRlaWxzdCBEaWVkZXIgbWl0OiAqZyogZ2xlaWNoemVpdGlnZXIgYmVzdWNoIGJlaSBsYXJzIDspClRvZDpMYXJzIEVpbiBIb3JuaXNzZW5zY2h3YXJtIGhhdCBnZXJhZGUgRGllZGVyIHVtZ2VicmFjaHQuCgpmbGVpc3NpZyA6KCgoKCgoKCgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRpZSBhbmRlcmUgc2VpdGUgKEhlcm9tY2ZseSwgMjMuIE9rdCAxOTk5LCAyMjozODo1Nyk6CgpobW1tIHNhaCBkYXMgZnVlciBhbmRlcmUgc2Nob24gaW1tZXIgc28gYXVzID8gOikKVG9kIEVpbiBXZWdoaWVyIGhhdCBnZXJhZGUgSGVyb21jZmx5IHVtZ2VicmFjaHQuClRvZCBHb3RjaGEhCkVpbmUgTGVpY2hlIHdpcmQgdm9uIGVpbmVtIFdlZ2hpZXIgdm9sbCBIaW5nZWJ1bmcgdmVyc3BlaXN0LgpEZXIgV2VnaGllciBsYWVjaGVsdC4KRGVyIFdlZ2hpZXIgbmFnZWx0IEhlcm9NY0ZseXMgVG90ZW5zY2hhZWRlbCBhbiBlaW5lbiBCYXVtLgpEZXIgV2VnaGllciBncmluc3QgdW5hc2FpaXNjaC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBkaWUgYW5kZXJlIHNlaXRlIChBcG9sbG9uaWEsIDI0LiBPa3QgMTk5OSwgMTM6MDY6NTQpOgp+IyEgcm49SGVyb21jZmx5IHJ0PTk0MDcxODMzNyByZz1zY2htYXJybgp+IyEgdGlkPTk0MDcxODMzNwpXYXJ1bSBtdXNzIGljaCBibG9zcyBzbyBicmVpdCBncmluc2VuPz8/IDopKSkpKQoKQXBvKiAod2lya2xpY2ggYnJlaXQgZ3JpbnNlbmQgdW5kIFBhcGkgYW5zY2hpZWxlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZGllIGFuZGVyZSBzZWl0ZSAoR25vbWUsIDI0LiBPa3QgMTk5OSwgMTU6MDI6MzYpOgp+IyEgcm49SGVyb21jZmx5IHJ0PTk0MDcxODMzNyByZz1zY2htYXJybgp+IyEgdGlkPTk0MDcxODMzNwpuZWluLCBuaWNodCBpbW1lci4KZ2VuYXUgZ2Vub21tZW4gc2VpdCBkZXIgbGV0enRlbiBwYXJ0eS4gPjopCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTkVJTiAoVGhhbm9zLCAyNC4gT2t0IDE5OTksIDE3OjQwOjM4KToKCkVpbiBHaHVsd2FlY2h0ZXIga29tbXQgYW4uCkVpbiBHaHVsd2FlY2h0ZXIga29tbXQgYW4uClBsb2V0emxpY2ggbGV1Y2h0ZXQgZGFzIEZldWVyYW11bGV0dCBncmVsbCBhdWYuIER1IHdpcnN0IHZvbiBlaW5lciBsZXVjaHRlbmRlbgpBdXJhIGVpbmdlaHVlbGx0LiBBbHMgZGllIEF1cmEgZXJsaXNjaHQsIGZ1ZWhsc3QgZHUgZGljaCBzZWhyIHZpZWwgYmVzc2VyLgpEdSBoYXN0IGVpbmUgbGVpY2h0ZSBWZXJnaWZ0dW5nLgoKd2FydW0gYXVjaCBnbGVpY2h6ZWl0aWcgPyAqc2V1ZnoqClRoYW5vcywgc2FndCBub2NobWFsIE5FSU4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZlZW4gKEFwb3BoaXMsIDI0LiBPa3QgMTk5OSwgMTk6NTA6MTkpOgoKdW50IHdhcHBlbgpFcyBoYW5kZWx0IHNpY2ggdW0gZGFzIFdhcHBlbiBkaWVzZXIgU3RhZHQgaW4gZGVzc2VuIE1pdHRlIER1IGVpbmUgRmVlLAp1bXJhaG10IHZvbiBlaW5pZ2VuIFBmbGFuemVuYXJ0ZW4sIGVya2VubmVuIGthbm5zdC4KdW50IGZlZQpEaWUgRmVlIGltIFdhcHBlbiBkaWVzZXIgU3RhZHQgdHJhZWd0IGVpbiBsYW5nZXMgS2xlaWQgdW5kIGhhZWx0IGluIGRlciBIYW5kCmVpbmlnZSBQZmxhbnplbiB1bmQgQmx1ZW1jaGVuLiBBdXNzZXJkZW0gd2lyZCBzaWUgbm9jaCB2b24gZWluaWdlbiBkYXZvbgp1bXJhaG10LiBTaWUgc2NoZWludCBkaWUgU2NodXR6ZmVlIGRpZXNlciBTdGFkdCB6dSBzZWluLgp1bnQga2xlaWQKRGFzIEtsZWlkIGRlciBGZWUgaXN0IHNjaGxpY2h0IHVuZCBlaW5mYWNoLiBEZW5ub2NoIHN0ZWxsc3QgRHUgc2llIERpciBvaG5lCktsZWlkIHZvci4gRHUgc2FiYmVyc3QgZ2llcmlnIGF1ZiBkZW4gQm9kZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJnbCAoQW5hY3Jpb24sIDI0LiBPa3QgMTk5OSwgMjI6NDE6MzMpOgoKRHUgenVlY2tzdCBkZW4gU3Bpbm5lbnRvZXRlci4KT2sKICBEZXIgU3Bpbm5lbnRvZXRlciBmcmlzc3Qgc2ljaCBpbiBkaWUgU3Bpbm5lLgogIER1IGhhc3QgZWluZSBXYWZmZSBpbiBEZWluZSBicmVubmVuZGVuIEhhZW5kZSBnZW5vbW1lbj8KICBEZWluIFNwaW5uZW50b2V0ZXIgemVyc3ByaW5ndCBpbiB0YXVzZW5kIFN0dWVja2UuCiAgRHUgdmVybGV0enQgRGljaCBkYWJlaS4KICAuLi4ubm9ybWFsL1NwaW5uZW50b2V0ZSBEdS4uLi4uLi4uLi4uIDogU3Bpbm5lLi4uLi4uLiAqKioqKioqKiAtPgp2ZXJuaWNodGV0CkRpZSBTcGlubmUgc3RpcmJ0LgoKKmdydW1tZWwqCgphbmFjKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2Vpc3RlciAuLi4gKExpYXJhLCAyNC4gT2t0IDE5OTksIDIyOjQ5OjQ0KToKRGVyIEdlaXN0IHZvbiBHb2xhcyBzY2h1ZXR0ZWx0IGhlZnRpZyBkZW4gS29wZi4KU28gaGVmdGlnLCBkYXNzIGRpZXNlciBrdXJ6IGRhdm9uc2Nod2VidCB1bmQgd2llZGVyIGVpbmdlZmFuZ2VuIHdlcmRlbiBtdXNzLgoKTGlhcmEsIG11c3MgaXJnZW5kd2llIGRvY2ggbGFjaGVuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW5kZXJzcnVtLi4uIChMdWcsIDI1LiBPa3QgMTk5OSwgMDA6Mjk6MjIpOgoKW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgRHJhZ29ubG9yZApbVG9kOkxhcnNdIHVtZ2VicmFjaHQuCltLbGVydXM6S2FmZl0gZHJhZ29ubG9yZCBzb2ZvcnQgenVyIGNoYW9zZ2lsZGUgdW5kIGNvbmNoaSBlbnRibGluZGVuISEhIQoKCkRpZXNlIEp1Z2VuZC4uLmVjaHQgZGFlbWxpY2gKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTZW5mLi4uIChMdWcsIDI1LiBPa3QgMTk5OSwgMDA6NDg6MTApOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTk0MDU5MjkyMiByZz1zY2htYXJybgp+IyEgdGlkPTk0MDI3MDI5MwoKVW5mdWchCgpIaW50ZXIgZWluZXIgZ3Jvc3NlbiBLbGFwcGUgc3RlY2t0IG5hdHVlcmxpY2ggZWluZSBncm9zc2UgWnVuZ2UuLi4KCi0+IEhlaW56IFNjaGVuY2sKClRzc3RzZW5kCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogWndlaXRpZXMgdW5kIENvLiAoQmVuZGVpZ2lkLCAyNS4gT2t0IDE5OTksIDA2OjU1OjQ0KToKfiMhIG9uPUx1ZyBvdD05NDA4MTQ1OTAgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU9ya3RvZXRlciBydD05NDA1OTY4NjAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NDA1OTY0OTgKCkhleSBPcmtkcm9lZ2UsCgoKaGVpcmF0ZSBkb2NoIEJhbWJpLiBJaHIgd2FlcnQgZWluIHRvbGxlcyBQYWFyLgoKVm9sbGtvbW1lbiBlcm5zdApMdWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBad2VpdGllcyB1bmQgQ28uIChCZW5kZWlnaWQsIDI1LiBPa3QgMTk5OSwgMDY6NTU6NTUpOgp+IyEgb249U3VibGltZSBvdD05NDA4MTQ2Mzggb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUx1ZyBydD05NDA4MTQ1OTAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NDA1OTY0OTgKU2Nob24gYWxsZWluIGRpZSBOYW1lbnNnZWJ1bmcgaXN0IHBhc3NlbmQKT3JrdG9ldGVyICsKICAgICAgICAgICAgICAgIEJhbWJpCkRhcyBzaWVodCBkb2NoIGd1dCBhdXMgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFp3ZWl0aWVzIHVuZCBDby4gKEJlbmRlaWdpZCwgMjUuIE9rdCAxOTk5LCAwNjo1NjowMSk6Cn4jISBvbj1MdWcgb3Q9OTQwODE0NzUyIG9nPWFsbGdlbWVpbmVzCn4jISBybj1TdWJsaW1lIHJ0PTk0MDgxNDYzOCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk0MDU5NjQ5OAoKSG1tbSwKCgpzc3Nzc3Nzc3N1dXV1ZWVzc3Nzc3Nzc3NzcyAqbGlzcGVsKgoKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBad2VpdGllcyB1bmQgQ28uIChCZW5kZWlnaWQsIDI1LiBPa3QgMTk5OSwgMDY6NTY6MDUpOgp+IyEgb249U3VibGltZSBvdD05NDA4MTQ3Nzggb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUx1ZyBydD05NDA4MTQ3NTIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NDA1OTY0OTgKdW5kIFR1dXV1dXV1dXV1dXV1dXV1ZmZmZmZmZmZmZmlnIDspCipncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFp3ZWl0aWVzIHVuZCBDby4gKEJlbmRlaWdpZCwgMjUuIE9rdCAxOTk5LCAwNjo1NjowOSk6Cn4jISBvbj1MdWcgb3Q9OTQwODE0ODE0IG9nPWFsbGdlbWVpbmVzCn4jISBybj1TdWJsaW1lIHJ0PTk0MDgxNDc3OCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk0MDU5NjQ5OAoKQWxzbyBuZWUsCgoKVHVmZmkgaGF0IG1pdCBzb3dhcyBzaWNoZXIgbml4IHp1IHR1bi4uLgoKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBad2VpdGllcyB1bmQgQ28uIChCZW5kZWlnaWQsIDI1LiBPa3QgMTk5OSwgMDY6NTY6MTcpOgp+IyEgb249U3VibGltZSBvdD05NDA4MTQ5MTggb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUx1ZyBydD05NDA4MTQ4MTQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NDA1OTY0OTgKTmljaHQgVHVmZmkgc29uZGVybiB0dWZmaWcsIC4uLiBkZWZpbml0aW9uIGdlZmFlbGxpZyA/ClR1ZmZpZywgbmV1ZGV1dHNjaC1hbmRlcmVzIHdvcnQgZnVlciBzdWVzcyxuaWVkbGljaCwKb2VmZm5lIGJlbnV0enQgaW4gZGVyIHNjaHd1Yy4uLnNjaHd1bGVuc3plbmUgYmVpbQprZW5uZW5sZXJuZW4uIGRlc3dlZ2VuIGRhcyB3b3J0IHR1ZmZpZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFp3ZWl0aWVzIHVuZCBDby4gKEJlbmRlaWdpZCwgMjUuIE9rdCAxOTk5LCAwNjo1NjoyMSk6Cn4jISBvbj1MdWcgb3Q9OTQwODE0OTQyIG9nPWFsbGdlbWVpbmVzCn4jISBybj1TdWJsaW1lIHJ0PTk0MDgxNDkxOCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk0MDU5NjQ5OAoKV2FzIER1IG5pY2h0IHNvIGFsbGVzIHdlaXNzdC4uLgoKClVud3VlcmRpZwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBad2VpdGllcyB1bmQgQ28uIChCZW5kZWlnaWQsIDI1LiBPa3QgMTk5OSwgMDY6NTY6MjcpOgp+IyEgb249U3VibGltZSBvdD05NDA4MTQ5OTggb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUx1ZyBydD05NDA4MTQ5NDIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NDA1OTY0OTgKVGphLCBzbyBzaW5kIGRpZSBTY2h1bHNjaHdhZW56ZXIgbnVuIG1hbCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGRpZSBhbmRlcmUgc2VpdGUgKFVuYXNhaSwgMjUuIE9rdCAxOTk5LCAwNzoyNzozNyk6Cn4jISBybj1IZXJvbWNmbHkgcnQ9OTQwNzE4MzM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwNzE4MzM3Cgp0amEsIGljaCB3ZWlzcyBsZWlkZXIgYXVjaCBuaWNodCwgd2llIFJvY2h1cyBkYXJhdWYgZ2Vrb21tZW4gaXN0IDopICplcnJvZXQqCmFlaGVtLi4uc29ycnk/IDopCgoqU2NoYWVkZWwgdm9tIEJhdW0gYWJwaWVwZWwsIHZlcmxlZ2VuIGluIGRlbiBIYWVuZGVuIHd1cnNjaHRlbCB1bmQgSGVyb21jZmx5CnJ1ZWJlcnJlaWNoIDopKSkgKHZvcmhlciBub2NobWFsIHVtIFZlcnplaWh1bmcgaGVpc2NoZW5kIGRyYXVmcGF0c2NoKSoKIFVuYSogCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFplcGh5ciwgMjUuIE9rdCAxOTk5LCAxMjo0MToxNik6CgpEZWluIEZyZXVuZCBNaW5kYmxhZGUgdGVpbHQgRGlyIG1pdDogc28sIGljaCBoYXUgYXVjaCBtYWwgd2llZGVyIGFiLCBtYWNodHMKRGVpbiBGcmV1bmQgTWluZGJsYWRlIHRlaWx0IERpciBtaXQ6IGd1dApEZWluIEZyZXVuZCBNaW5kYmxhZGUgd2lua3QgRGlyIHp1bSBBYnNjaGllZCBhdXMgZGVyIEZlcm5lIHp1LgpbVG9kOkxhcnNdIEVpbmUgS3Jpc3RhbGxrdWdlbCBoYXQgZ2VyYWRlIE1pbmRibGFkZSB1bWdlYnJhY2h0LgoKc2V1ZnplbmQsIEM0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChNaW5kYmxhZGUsIDI1LiBPa3QgMTk5OSwgMTI6NDc6NDYpOgp+IyEgcm49WmVwaHlyIHJ0PTk0MDg1NTI3NiByZz1zY2htYXJybgp+IyEgdGlkPTk0MDg1NTI3NgpUamEsIHdlbm4gbWFuIGZ1ZXIgZWluICJiZXNjaHdvZXJlIiBqZXR6dCBmYWtlLWdlemFwcHQgd2lyZCBrYW5uIGRhcyBzY2hvbm1hbApwYXNzaWVyZW4hOykKR3JpbnNlbmQsIE1pbmRibGFkZSE7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGTFcgKFdpbSwgMjUuIE9rdCAxOTk5LCAxMjo0ODo0MCk6Cn4jISBybj1NaW5kYmxhZGUgcnQ9OTQwODU1NjY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwODU1Mjc2CgpIbW1tLi4uIHdvIGhhdCBkZW5uIG1laW5lIEZhbGxlIG1hbCB3aWVkZXIgcnVtZ2VsZWdlbiA6KSBVbmQgYXVzc2VyZGVtIG11c3N0CkR1IHNjaG9uIGV0d2FzIGRhZnVlciBnZXRhbiBoYWJlbiwgZGFzcyBkaWUgRmFsbGUgYW5zY2hsYWVndAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW5kIHdvIGthbm4gbWFuIGRlbiBza2lsbCBhYmZyYWdlbj8gOy0pIChSYW5pLCAyNS4gT2t0IDE5OTksIDE1OjMzOjU2KToKCkR1IHNpZWhzdCBlaW5lbiBGZWhsZXIgaW0gUmF1bS1aZWl0LUdlZnVlZ2UuCkR1IHRyaWZmc3QgZGllIEdhZXJ0bmVyaW4gc2VociBoYXJ0LgpEaWUgR2FlcnRuZXJpbiBmYWVsbHQgdG90IHp1IEJvZGVuLgoKUmFuaSA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhbGJlIFBvcnRpb24gKFBlcmlzaGFuLCAyNS4gT2t0IDE5OTksIDE3OjQzOjQ3KToKCltBbGxnZW1laW46TGlhcmFdIHNhY2ggbm9jaG1hbCBlaW5lciB6YXViZXJlcnBsYWdlIHVuZCB3aXIgbGFuZGVuIGlubmVyIGFyZW5hCltBbGxnZW1laW46TGlhcmFdIDotKQpicmV0dGVyCkRpZXNlciBTdGVnIGtvZW5udGUgZWluZSBSZXBhcmF0dXIgdmVydHJhZ2VuLgpEdSBzdGVoc3QgYXVmIGVpbmVtIFN0ZWcgYXVzIGVpbmlnZW4ga25hcnJlbmRlbiBCcmV0dGVybiwgZGllIHp3YXIgbmljaHQKZGllIFdlbHQsIHdvaGwgYWJlciB0cm9ja2VuZSBGdWVzc2UgYmVkZXV0ZW4uIFNhbmZ0IHNjaGxhZ2VuIGRpZSBXZWxsZW4KZGFnZWdlbi4gRGFzIFdhc3NlciB1bnRlciBkZW0gU3RlZyBpc3Qgc28ga2xhciB1bmQgYmxhdSwgZGFzcyBEdSBlaW4gaW4KYWxsZW4gRmFyYmVuIHNjaGltbWVybmRlcyBSaWZmIGRhcnVudGVyIGF1c21hY2hlbiBrYW5uc3QuIEluIGVpbmVtIGtsZWluZW4KSG9senZlcnNjaGxhZyBzaXR6dCBlaW4gYWx0ZXIgU2VlbWFubiwgZGVyIERpY2ggbWl0IHNlaW5lbiBkdW5rbGVuCkF1Z2VuIG11c3RlcnQuIE9lc3RsaWNoIHZvbiBoaWVyIGVyc3RyZWNrdCBzaWNoIGVpbiBmZWluZXIgU2FuZHN0cmFuZCwKaGludGVyIGRlbSBzaWNoIGRpZSBLbGlwcGVuIGF1ZnR1ZXJtZW4uCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3RlbiB1bmQgdW50ZW4uIApbVGVhbTpTYW5pdG9ldGVyXSBFdGhhdmFyIHRvZV5oXmheaGhlaWx0IGFsbGVzLgpbVGVhbTpTYW5pdG9ldGVyXSBGZXkgQW5hY3Jpb24uCkVpbiBiYWVydGlnZXIgU2VlbWFubi4KW0FsbGdlbWVpbjpSb25kYSBkZW5rdDogdmVybWVocmVuIGRpZSBzaWNoIGVpZ2VudGxpY2g/XQpbQWxsZ2VtZWluOkRvY2RldmlsXSB6YXViZXJwbCAuLi4gYWVoIHZlcmdlc3NlbgpEZXIgU2VlbWFubiBtdXJtZWx0IGV0d2FzIHZvbiAnaGFsYmVyIFBvcnRpb24nLgoKREVSIGhhdHMgZXJrYW5udCA6KQoKUGVyaXNoYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNoYW5uYXJhLCBQYXJhbm9pYSB1bmQgcGFzc2VuZGUgUnVicmlrZW4gKE5ldm9rLCAyNS4gT2t0IDE5OTksIDIwOjQ3OjA0KToKTGllYmVyIFNoYW5uYXJhCk5hY2hkZW0gRHUgZWggc2Nob24gZGFzIGhhbGJlIE1HIGluIERlaW5lbSBDQyBoYXN0IHVuZCBpY2ggZGVuIFNlcnZlciBuaWNodAp1bm5vZXRpZyBtaXQgZWluZXIgZWJlbnNvbGNoZW4gTWFpbCBBa3Rpb24gYmVsYXN0ZW4gbW9lY2h0ZSwgbWVpbmUgQW50d29ydCBpbgpkZXIgcGFzc2VuZGVuIFJ1YnJpay4KV2VyIHp1ZXJzdCBwZXJzb2VubGljaCB3aXJkIHNvbGx0ZSBkaWUgR3JvZXNzZSBoYWJlbiwgenUgYWt6ZXB0aWVyZW4sIGRhc3MgZGFzCmF1Y2ggYW5kZXJlIExldXRlIHR1biBrb2VubmVuLiAKTWlyIG1pdCBiYW5pc2hlbiBhdXMgZWluZW0gYW5kZXJlbiBNdWQgenUgZHJvaGVuIGZpbmRlIGljaCB1bmFuZ2VicmFjaHQsIHp1bWFsCkR1IGRhcnVlYmVyIHNlbGJlciBuaWNodCB2ZXJmdWVnZW4ga2FubnN0LiBVbmQgenUgZWluZW0gR290dCB6dSBnZWhlbiB1bmQgaW4KZGFydW0genUgZXJzdWNoZW4uLi4ubmFqYS4uLi5CbG9ja3dhcnQgbmFubnRlIG1hbiBkYXMsIHdvaGwgYXVjaCBpbgpPZXN0ZXJyZWljaCAod2VubiBEdSBtaXQgQW1lcmlrYSBrb21tc3QsIGJpdHRlc2Nob2VuLi4uKQpXYWVocmVuZCBpY2ggd29obCBpbiBwdW5rdG8gTWFuaWVyZW4gdW5kIHNvemlhbGVyIEludGVyYWt0aW9uIHdvaGwgZ2VmZWhsdApoYWJlbiBtdXNzLCBzY2hsaWVzc2xpY2ggYmlzdCBEdSBkaWUgQXV0b3JpdGFldCBpbiBkaWVzZXIgQmV6aWVodW5nLCBzY2hlaW5zdApEdSB3b2hsIGJlaSBhbmRlcmVuIFNhY2hlbiBnZWZlaGx0IHp1IGhhYmVuLCBhYmVyIG51biBqYSwgbmljaHQgamVkZXIgaGF0IGVpbmUKMTAwJWlnZSBBbndlc2VuaGVpdCwgbWFuIGlzdCBoYWx0IGF1Y2ggbnVyIE1lbnNjaC4KVHUgbWlyIGVpbmVuIEdlZmFsbGVuLCByZWFnaWVyIG5pY2h0IG1laHIgYXVmIG1laW5lIEFydGlrZWwsIG5pbW0gbWljaCBpbgpEZWluZSBpbGx1c3RyZSBJZ25vcmVsaXN0ZSBhdWYgdW5kIGxhc3MgbWljaCBlaW5mYWNoIGluIFJ1aGUuCgpOZXZvawoKClAuUy46IHdlciBkaWUgTWFpbCBsZXNlbiBtb2VjaHRlLCBtb2VnZSBqZXR6dCBlaW5mYWNoIHdlaXRlcmxlc2VuLCBmdWVyIGRlbgpSZXN0IGdpYnQgZXMgamEgZWluIGVpbmZhY2hlcyAncScgZ2Vmb2xndCB2b24gZGVyIFJldHVybnRhc3RlIHVtIGRlbiBLcmFtIG5ldAplcnRyYWdlbiB6dSBtdWVzc2VuIDspCgpOZXZvaywgaWNoIG1vZWNodGUgZGljaCBkYXJhdWYgZGV6ZW50IGRhcmF1ZiBoaW53ZWlzZW4sIGRhc3MgZGllcyBudW4gdm9uIGRlcgp1bnRlcnN0ZW4gU2NodWJsYWRlIGlzdCB1bmQgZXMgZGFyYXVmIHNjaGxpZXNzZW4gbGFlc3N0LCBkYXNzIGR1IHdvaGwgaW4KU2FjaGVuCkJlbmVobWVuIHdvaGwgaW4gZGVyIFNjaHVsZSBnZXNjaHdhZW56dCBoYXN0LiBBbmF0b2wgd29obCBhdWNoLjtdO11XZW5uIGR1CnNjaG9uIHVuYmVkaW5ndCBkZWluZSBmcnVzdHJpZXJ0ZW4gSGFzc3RpcmFkZW4gaW5zIE1HIHJlaW5icmluZ2VuCm11c3MKdCwgd2VpbCBkdSBpbSBUdXJpdGhpbCBtaXQgUmVjaHQgZGVuIFN0YXR1cyBlaW5lcyBQYXJpYXMgZ2VuaWVzc3QsIG1vZWNodGUgaWNoCmRpY2ggZGFyYXVmIGhpbndlaXNlbiwgZGFzcyBkdSBzbyB6aWVtbGljaCBhbGxlaW5lIG1pdCBkZWluZXIgQmVoYXVwdHVuZwpzdGVoc3Q7LCBkYXNzIGljaCBkb3J0IHN0YWVuZGlnIEFudGktTUcgUGFyb2xlbiBzY2h3aW5nZW4gc29sbC4gVmllbGxlaWNodAprYW5uc3QgZHUKbgppY2h0IHZlcmtyYWZ0ZW4sIGRhc3MgZGVpbiBnZWxpZWJ0ZXMgQW1lcmlrYSBuaWNodCBnZXJhZGUgYmVsaWVidCBpc3QuO10KV3Vyc3RlbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISE7XVdhcyBpY2gKcGVyc29lbmxpY2ggbWFjaGUsIGdlaGVuIHNwZXppZWxsIGRpY2gsIEFuYXRvbCB1bmQgZGVyIFJlc3QgZGVyCkdyb2VsZQpydHJ1cHBlICh3ZXIgc2ljaCBhbmdlc3Byb2NoZW4gZnVlaGx0KSBlaW5lbiBmZXVjaHRlbiBEcmVjayBhbi4gV2VubnMgc2Nob24gc28KcnRydXBwZSAod2VyIHNpY2ggYW5nZXNwcm9jaGVuIGZ1ZWhsdCkgZWluZW4gZmV1Y2h0ZW4gRHJlY2sgYW4sIHNvbGFuZ2Ugc2llCm5pYwpodCBkaXJla3QgYmV0cm9mZmVuIHNpbmQgdW5kIHNvbGx0ZW4gc2ljaCByYXVzaGFsdGVuLiBXZW5ucyBzY2hvbiBzbwpvZWZmZW50bGljCmggZ2VzYWd0IHdlcmRlbiBtdXNzLjtdVHV0IG1pciBsZWlkLCB3ZW5uIGljaCBkYXMgc28gc2NocmVpYmVuCm11c3MsIGFiZXIgaWNoIHd1ZXJkZSBkaXIgbmFoZWxhZ2VuIG1hbCBkaWUgS2xhcHBlIHp1IGhhbHRlbiB1bmQgbmljaHQgbWl0CnNvdmllbCB1bnF1YWxpZml6aWVydGVuIFNjaHVuZCB2b24gZGljaCB6dSBnZWJlbi47V2VubiBkdSBuaWNodCBzb2xjaGUKQWt0aW9uZW4gbGFzc2VuIGthbm5zdCwgd2VyZGUgaWNoIG1pciBlcyB1ZWJlcmxlZ2VuLApBbGVwaCB6dSBiaXR0ZW4sIGRpY2ggYXVzIGRlbiBUdXJpdGhpbCBiYW5pc2hlbiB6dSBsYXNzZW4uIERlciBLb25zZW5zIHZvbiA5OSUKYWxsZXIgYW5kZXJlbiBNYWdpZXIgaXN0IGRhLiA7U2hhbm5hcmEuO11OZXZvaywgaWNoIG1vZWNodGUgZGljaCBkYXJhdWYgZGV6ZW50CmRhcmF1ZiBoaW53ZWlzZW4sIGRhc3MgZGllcyBudW4gdm9uIGRlcgpTSGFubmFyYTsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCB3dXNzdGUgZXMgc2Nob24gaW1tZXIuLi4gKEdydW1wZiwgMjUuIE9rdCAxOTk5LCAyMjowNzozMyk6Ckdyb28gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbiBHZWxkYmV1dGVsIGlzdCBsZWljaHRlciBnZXdvcmRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTaGFubmFyYSwgUGFyYW5vaWEgdW5kIHBhc3NlbmRlIFJ1YnJpa2VuIChHcmltbWFuLCAyNS4gT2t0IDE5OTksIDIyOjE1OjA0KToKfiMhIHJuPU5ldm9rIHJ0PTk0MDg4NDQyNCByZz1zY2htYXJybgp+IyEgdGlkPTk0MDg4NDQyNApva2ksIGljaCB3ZWlzcyBqYSBuaWNodCBzbyBnYW56LCB1bSB3YXMgZXMgZWlnZW50bGljaCBnZWh0LCBhYmVyIGlyZ2VuZHdpZQpzZWlkIGlociBraW5kaXNjaCwgQkVJREUgISEhClZvbSBUdXJpdGhpbCBoYWIgaWNoIGtlaW5lIEFobnVuZywgYWJlciB3YXMgZGFzIG1pdCBkZW0gTUcgenUgdHVuIGhhdCB2ZXJzdGVoZQppY2ggYXVjaCBuaWNodCwgU2hhbm5hcmEgLi4uClVuZCBpbSBnZWdlbnp1ZyBtdXNzIGljaCBzYWdlbiwgZGFzIG5lIG1haWwgdm9uIFNoYW5uYXJhLCBzbyB1bmJlbGllYnQgc2llCnNlaW4gbWFnLCBvZGVyIHNpZSBzaWNoIGdlbWFjaHQgaGF0LCBpbiBkZXIgTVBBIG51ZXggenUgc3VjaGVuIGhhdC4KCkFsc28gc2NoYWVtdCBldWNoIGJlaWRlLCBzdGVsbHQgZXVjaCBpbiBkaWUgRWNrZSwgU2hhbm5hcmEgbGlua3MgdW5kIE5ldm9rCnJlY2h0cyB1bmQgc2VpZCBmcmllZGxpY2ggOikKCkdyaW1NYW4gLCB0c3RzdHNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2hhbm5hcmEsIFBhcmFub2lhIHVuZCBwYXNzZW5kZSBSdWJyaWtlbiAoTmV2b2ssIDI1LiBPa3QgMTk5OSwgMjI6MjI6MDcpOgp+IyEgcm49R3JpbW1hbiBydD05NDA4ODk3MDQgcmc9c2NobWFycm4KfiMhIHRpZD05NDA4ODQ0MjQKbmUgR3JpbW1hbiwgd2FyIGdlcmVjaHRmZXJ0aWd0IGJlaSBlaW5lbSBDQyBkZXIgbWVpbmVuIGJpbGRzY2hpcm0gc2Nyb2xsZW4KbGllc3MKdW5kIHdpZSBnZXNhZ3QsIGJldm9yIGljaCBhbiBkaWUgc2VsYmVuIGxldXRlIGViZW5mYWxscyBuZSBtYWlsIHNjaHJlaWJlIHVuZApkYW1pdCBkZW4gc2VydmVyIHp1bSBzdG9ja2VuIGJyaW5nZS4uLi4KdW5kIGF1c3NlcmRlbSBpcyBtaXQgc2NobWFycm4gZGFzIGdhbnplIGdsYXViIGFuIGRlciByaWNodGlnZW4gQWRyZXNzZS4uLi4uLgoKTmV2b2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNoYW5uYXJhLCBQYXJhbm9pYSB1bmQgcGFzc2VuZGUgUnVicmlrZW4gKE1haGF0bXUsIDI2LiBPa3QgMTk5OSwgMDg6NTc6MTgpOgp+IyEgcm49TmV2b2sgcnQ9OTQwODkwMTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwODg0NDI0Cldlbmlnc3RlbnMgaGFzdCBEdSBkaWUgcmljaHRpZ2UgUnVicmlrIGdld2FlaGx0LiBVbmQgc29taXQgaGFidCBJaHIKYmVpZGUgc2VociB6dSBtZWluZXIgendpc2NoZW4tZGVuLVZMLWxpZWdlbmRlbiBVbnRlcmhhbHR1bmcgYmVpZ2V0cmFnZW4sCmRhZnVlciBiaW4gaWNoIERpciwgU2hhbm5hcmEgdW5kIERpciwgTmV2b2sgYWV1c3NlcnN0IGRhbmtiYXIgOy0pCkJpdHRlIGFiZXIgbmFlY2hzdGVucyBpbiBlaW5lbSBiZXNzZXJlbiBUZXh0Zm9ybWF0LCBpbSBGZXJuc2VoZW4gd2VyZGVuCmRpZSBTb2FwLU9wZXJhcyBzZWl0IGVpbmVyIFdlaWxlIGRvY2ggYXVjaCBzY2hvbiBpbiBiZXNzZXJlciBRdWFsaXRhZXQKZ2VzZW5kZXQuCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiAxLiAoR3JpbW1ib3JuLCAyNi4gT2t0IDE5OTksIDEwOjAyOjU1KToKfiMhIG9uPUdyaW1tYm9ybiBvdD05NDA5MzIxNjUgb2c9cHVpegp+IyEgcm49WWVuZGkgcnQ9OTQwOTMxNjE1IHJnPXB1aXoKfiMhIHRpZD05NDA4NTQ3MzIKVmllbGxlaWNodCBiaW4gaWNoIGVpbmZhY2ggenUgYmxvZWRlLiBJY2ggbmVobWUgYW4sIGRpZSBUb2VjaHRlciBzaW5kIHNlY2hzLApmdWVuZiB1bmQgendlaSBKYWhyZSBhbHQuIE1hY2h0IGluIGRlciBTdW1tZSAxMy4gSWNoIG11bHRpcGxpemllcmUgdW5kIGtvbW1lCmF1ZiA2MCwgZWluZSBkdXJjaGF1cyBndWVsdGlnZSBIYXVzbnVtbWVyLiBJY2ggaGFiZSBlaW5lIGFlbHRlc3RlIFRvY2h0ZXIsIGRpZQppc3Qgc2VjaHMuIEd1dCwgUHJvYmxlbSBnZWxvZXN0LgpKZXR6dCBuZWhtZSBpY2ggYW4sIGRpZSBUb2VjaHRlciBzaW5kIHNpZWJlbiwgZnVlbmYgdW5kIGVpbiBKYWhyIGFsdC4gU3VtbWUKMTMsIHdpciBzdGVoZW4gdm9yIEhhdXMgbnVtbWVyIDM1LCB1bmQgZGllIHNpZWJlbmphZWhyaWdlIGhhdCBkZW4gSHVuZC4KVW5kc293ZWl0ZXIuIFdvIGdlbmF1IGlzdCBkZXIgV2l0eiBhbiBkZXIgU2FjaGU/CgpHZEEKQWNoIGphLCBuaXJnZW5kd28gc3RhbmQsIGRhc3MgZGFzIFByb2JsZW0gZWluZGV1dGlnIGxvZXNiYXIgaXN0LCB2ZXJtdXRsaWNoCmZlaGx0IGFtIEVuZGUgZWluICJBY2ggamEsIGpldHp0IHdlaXNzIGljaHMiLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogMS4gKFllbmRpLCAyNi4gT2t0IDE5OTksIDEwOjA2OjE4KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDA5MzIxNzUgcmc9c2NobWFycm4KfiMhIHRpZD05NDA4NTQ3MzIKTmVlLCBlcyBnZWh0LgpTY2hyZWliIG1hbCBhbGxlIG4gYXVmLCBmdWVyIGRpZSAobjErbjIrbjMpPTEzLCB1bmQgZGFubiBzY2hyZWliIGRhaGludGVyCmRhcyBQcm9kdWt0IChuMSpuMipuMyksIHVuZCBkYW5uIHVlYmVybGVnIERpciwgZGFzcyBNMiBkaWUgTG9lc3VuZyBfbmljaHRfCnNvZm9ydCBhdXMgZGVyIEhhdXNudW1tZXIgYWJsZXNlc24ga29ubnRlLgoKWVRZCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogMS4gKEdyaW1tYm9ybiwgMjYuIE9rdCAxOTk5LCAxMDoxMToyMik6Cn4jISBybj1ZZW5kaSBydD05NDA5MzIzNzggcmc9c2NobWFycm4KfiMhIHRpZD05NDA4NTQ3MzIKRGllIEF1ZmdhYmVuc3RlbGx1bmcgZ2lidCBhYmVyIGF1Y2ggbmljaHQgaGVyLCBkYXNzIGVyIGRhcyBuYWNoIGRlcgpIdW5kZWluZm9ybWF0aW9uIGtvbm50ZS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogMS4gKE1vcmdvdGgsIDI2LiBPa3QgMTk5OSwgMTA6MzM6NDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0MDkzMjE3NSByZz1zY2htYXJybgp+IyEgdGlkPTk0MDg1NDczMgpBdXNzYWdlIDIuIEVyIHNhZ3QvZGV1dGV0IGFuLCBkYXNzIGRpZSBIYXVzbnVtbWVyIG5pY2h0IGVpbmRldXRpZyBpc3QuIAoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IDEuIChHcmltbWJvcm4sIDI2LiBPa3QgMTk5OSwgMTA6NDY6NTEpOgp+IyEgcm49TW9yZ290aCBydD05NDA5MzQwMjQgcmc9c2NobWFycm4KfiMhIHRpZD05NDA4NTQ3MzIKVW5kIHdvIHNhZ3QgZXIgZGFzcyBlcyBtaXQgSHVuZCBlaW5kZXV0aWcgaXN0PwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiAxLiAoSG9ibywgMjYuIE9rdCAxOTk5LCAxMTowNzo0MSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTQwOTM0ODExIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwODU0NzMyCk5hY2hkZW0gZXMgbnVyIGRpZSBLb21iaW5hdGlvbmVuIDIsMiw5IHVuZCAxLDYsNiBnaWJ0LCBkaWUgbWl0IHNlbGJlcgpRdWVyc3VtbWUgZGFzIHNlbGJlIFByb2R1a3QgYmlsZGVuIChqZWRlbmZhbGxzIGZ1ZXIgZGllIFF1ZXJzdW1tZSAxMyksIGxpZWZlcnQKZGllIEF1c3NhZ2UsIGRhc3MgZXMgZWluZSBhbGV0ZXN0ZSBUb2NodGVyIGdpYnQsIGRpZSBub3R3ZW5kaWdlIEluZm9ybWF0aW9uLgpKZWRlbmZhbGxzIHdlbm4gbWFuIHZvbiBtZWluZXIgRXJic2VuemFlaGxlcmVpIG1pdCBkZXIgRXJzdGdlYm9yZW5lbiBiZWkKWndpbGxpbmdlbiBhYnNpZWh0IDspCgogICBIb2JvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiAxLiAoR3JpbW1ib3JuLCAyNi4gT2t0IDE5OTksIDExOjE4OjQ5KToKfiMhIHJuPUhvYm8gcnQ9OTQwOTM2MDYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwODU0NzMyCkFsc28uIFF1ZXJzdW1tZSAxMywgZGVyIE1hbm4gemVpZ3QgYXVmIGRpZSBIYXVzbnVtbWVyIDYwLiBEZXIgYW5kZXJlIHNhZ3QKInJlaWNodCBuaWNodCIsIGRlciBlcnN0ZSBlcnphZWhsdCBlaW5lbiB2b20gSHVuZC4KV28gYml0dGUgc3RlaHQgZGFzcyBtaXQgZGllc2VyIEluZm9ybWF0aW9uIGRhcyBnYW56ZSBlaW5kZXV0aWcgbG9lc2JhciBzZWluCm11c3M/IFVuZCBGcmFnZW4sIHdvIG1hbiBzaWNoIGRpZSBIYWVsZnRlIGRhenVkZW5rZW4gbXVzcyBmaW5kZSBpY2ggc2Nob24gaW4KbXVsdGlwbGUgY2hvaWNlIEtsYXVzdXJlbiBkb29mLgpKZWRlbmZhbGxzLCBzbyB3aWUgZGllIEF1ZmdhYmUgZGEgc3RlaHQgaXN0IHNpZSBtZWhyZGV1dGlnLgoKR2RBIChqYSwgcmljaHRpZ2UgUnVicmlrIGhpZXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2hhbm5hcmEsIFBhcmFub2lhIHVuZCBwYXNzZW5kZSBSdWJyaWtlbiAoVGhhbm9zLCAyNi4gT2t0IDE5OTksIDE0OjI5OjUwKToKfiMhIHJuPU5ldm9rIHJ0PTk0MDg4NDQyNCByZz1zY2htYXJybgp+IyEgdGlkPTk0MDg4NDQyNAphbHNvIGxhbmdzYW0gd2lyZHMgbWVociBhbHMgbGFlY2hlcmxpY2gKc2FndCBtYWwgaWNoIGdsYXViIGlociBiZWlkZSBzb2xsdGV0IGRvY2ggbm9jaG1hbCBiZWkgbnVsbCBhbmZhbmdlbiwgc28KdW5nZWZhZWhyIGtpbmRlcmdhcnRlbiBkZW5rZSBpY2gKd2FzIGljaCBoaW5nZWdlbiB2b24gZGVyIGFicG9zdHVuZyBwZXJzb2VubGljaGVyIG1haWxzIGluIGRlciBtcGEsIGRpZSB3b2hsCndpcmtsaWNoIG5pZW1hbmRlbiBldHdhcyBhbmdlaGVuIGFscyBkZW4gZW1wZmFlbmdlciBpc3QgZWluZSBhbmRlcmUgZ2VzY2hpY2h0ZQpzb3dhcyBmaW5kZSBpY2ggcGVyc29lbmxpY2ggZGFzIGFsbGVybGV0enRlCmVpbiBiaWxsaWdlciB2ZXJzdWNoIGVpbmUgbmV1ZSBoZXR6a2FtcGFuZ2UgenUgc3RhcnRlbiwgdW5kIHdpZSBpbW1lciB3aXJkCndhaHJzY2hlaW5saWNoIGRlciBnZXNhbXRlIGJhY2tncm91bmQgZGVyIGdlc2NoaWNodGUgZWluZmFjaCBtYWwgd2llZGVyCnVudGVyZHJ1ZWNrdCwgd2lyZCBlYmVuIGFsbGVzIHBhc3NlbmQgZ2VzY2huZWlkZXJ0LgpNcGEgbGVzZW4gbWFjaHQgbWlyIGVjaHQgc3Bhc3MsIGFiZXIgYmVpIHNvd2FzIHdpcmQgbWlyIGtvdHp1ZWJlbAoKVGhhbm9zICggaGFldHRlIGdlcm4gbmUgbW9lZ2xpY2hrZWl0IGFydGlrZWwgdm9uIGdld2lzc2VuIGxldXRlbiBlaW5mYWNoIHp1CnVlYmVyZ2VoZW4gb2huZSBnbGVpY2ggbmUgaWdub3JlIHNldHplbiB6dSBtdWVzc2VuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGFua2UgKFRoYW5vcywgMjYuIE9rdCAxOTk5LCAxNDozMTozMik6CmRhbmtlIHRpYW1haywgZGFzIGhpbGZ0IHdlaXRlciA6KQoKVGhhbm9zIChnbHVlY2tsaWNoIGRhcyBzb3dhcyBzY2hvbiBnaWJ0OikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2hhbm5hcmEsIFBhcmFub2lhIHVuZCBwYXNzZW5kZSBSdWJyaWtlbiAoRGFya21hZ2UsIDI2LiBPa3QgMTk5OSwgMTQ6MzM6MzIpOgp+IyEgcm49VGhhbm9zIHJ0PTk0MDk0ODE5MCByZz1zY2htYXJybgp+IyEgdGlkPTk0MDg4NDQyNAo+IFRoYW5vcyAoIGhhZXR0ZSBnZXJuIG5lIG1vZWdsaWNoa2VpdCBhcnRpa2VsCj4gdm9uIGdld2lzc2VuIGxldXRlbiBlaW5mYWNoIHp1IHVlYmVyZ2VoZW4gb2huZQo+IGdsZWljaCBuZSBpZ25vcmUgc2V0emVuIHp1IG11ZXNzZW4pCgpUaXA6IGlnbm9yaWVyZSB4eXoubmV3cwoKR3J1c3MsIE5lYi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2hhbm5hcmEsIFBhcmFub2lhIHVuZCBwYXNzZW5kZSBSdWJyaWtlbiAoQW5hdG9sLCAyNi4gT2t0IDE5OTksIDE0OjM2OjA1KToKfiMhIHJuPVRoYW5vcyBydD05NDA5NDgxOTAgcmc9c2NobWFycm4KfiMhIHRpZD05NDA4ODQ0MjQKTnVyIHdlaWwgZXMgaW4gTmV2b2tzIEFydGlrZWwgbmljaHQgZ2FueiBkZXV0bGljaCB3dXJkZTogRGllc2UgTWFpbApnaW5nIGFuIGtuYXBwIDUwIFBlcnNvbmVuLiBWb24gZWluZXIgInByaXZhdGVuIiBNYWlsIG1vZWNodGUgaWNoIGluCnNvIGVpbmVtIEZhbGwgZWhlciBuaWNodCBzcHJlY2hlbiB3b2xsZW4uCgpOb2JlbCB2b24gRGlyLCBkYXNzIER1IFNoYW5uYXJhIGluIFNjaHV0eiBuaW1tc3QuIEJsZWliJyBiZWkgRGVpbmVtCmdhbnplbiBNaXRsZWlkIGFiZXIgYml0dGUgZWluIGJpc3NjaGVuIGF1ZiBkZW0gVGVwcGljaC4gU2NobGllc3NsaWNoCndhciBlcyBTaGFubmFyYSwgZGVyIG1pdCBzcGl0emVuIEZpbmdlcm4gaW4gZWluZW4gIkRpYWxvZyIgZWluLSB1bmQKZGllIFRlaWxuZWhtZXIgYW5ncmVpZmVuIG11c3N0ZS4gVW5kIGplZGVyIEJsaW5kZSAoc29nYXIgb2huZSBIdW5kISkKc2FoIHNjaG9uIGRyZWkgQXJ0aWtlbCB2b3JoZXIsIGRhc3MgZGVyIGJlc2FndGUgRGlhbG9nIGFuIFNhY2hsaWNoLQprZWl0IG1hbmdlbG4gbGllc3MsIGRhZnVlciBlbW90aW9uYWwgZXR3YXMgaG9jaGdlcHV0c2NodCBhbm11dGV0ZS4KCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNoYW5uYXJhLCBQYXJhbm9pYSB1bmQgcGFzc2VuZGUgUnVicmlrZW4gKFRoYW5vcywgMjYuIE9rdCAxOTk5LCAxNDozOTozOCk6Cn4jISBybj1BbmF0b2wgcnQ9OTQwOTQ4NTY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwODg0NDI0CmljaCBoYWIgbmljaHQgdm9yIHNoYW5uYXJhIGluIHNjaHV0eiB6dSBuZWhtZW4sIGRhcyBoYWIgaWNoIGdsYXViIGxhbmcgZ2VudWcKZ2VtYWNodAppY2ggZmluZGUgZGFzIHdhcyBiZWlkZSBzZWl0ZW4gZGEgYWJ6aWVoZW4genVtIGsKCndvbGx0ZSBpY2ggbnVyIGtsYXJnZXN0ZWxsdCBoYWJlbiA6KQoKVGhhbm9zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiAxLiAoWWVuZGksIDI2LiBPa3QgMTk5OSwgMTQ6NTg6NDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0MDkzNjcyOSByZz1zY2htYXJybgp+IyEgdGlkPTk0MDg1NDczMgooRWluIHBhYXIgTGVlcnplaWxlbiBmdWVyIGRpZSwgZGllIGRpZSBMb2VzdW5nIG5pY2h0IHNlaGVuIHdvbGxlbikKCgoKCgoKCgoKCgoKCgoKCgoKKHVuZCB6dXIgU2ljaGVyaGVpdCBlaW4gcGFhciBtZWhyKQoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCkFsc28gbm9jaG1hbCB6dW0gTWl0bWVpc3NlbG46CgoKMiBNYXRoZXByb2ZzIHRyZWZmZW4gc2ljaCBuYWNoIHVybGFuZ2VyIFplaXQgaXJnZW5kd28gaW4gZGVyIFN0YWR0LgpNUCAxOiBXb3csIHdpciBoYWJlbiB1bnMgamEgbGFuZ2UgbmljaHQgZ2VzZWhlbi4KTVAgMjogU3RpbW10LiBJY2ggYmluIGpldHp0IHZlcnJoZWlyYXRldCB1bmQgaGFiZSBkcmVpIFRvZWNodGVyLgpNUCAxOiBVbmQgd2llIGFsdCBzaW5kIGRpZT8KTVAgMjogV2VubiBEdSBkYXMgYWx0ZXIgYWRkaWVyc3Qga29tbXN0IER1IGF1ZiAxMy4gV2VubiBEdSBkYXMgQWx0ZXIKbXVsdGlwbGl6aWVyc3Qga29tbXN0IER1IGF1ZiAuLi4gPE1QIDIgZGV1dGV0IGF1ZiBlaW5lIEhhdXNudW1tZXI+IC4uLiBkaWVzZQpIYXVzbnVtbWVyLgpNUCAxOiAqZ3J1ZWJlbCogSG0sIGRhcyByZWljaHQgbWlyIG5pY2h0LgpNUCAyOiBBY2ggamEsIGRpZSBhZWx0ZXN0ZSBUb2NodGVyIGhhdCBlaW5lbiBIdW5kLgoKRnJhZ2U6IFdpZSBhbHQgc2luZCBkaWUgVG9lY2h0ZXI/CgpEYSBiYXN0ZWxuIHdpciB1bnMgenVuYWVjaHN0IG1hbCBlaW5lIFRhYmVsbGUgZGVyIG1vZWdsaWNoZW4KIlN1bW1lID0gMTMiLURhcnN0ZWxsdW5nZW4gdW5kIHZlcnd1cnN0ZW4gZGllIHdlaXRlcjoKCgoKQWx0ZXIgIC0+IFByb2R1a3QgLT4gUHJpbWYuLSAgLT4gbW9lZ2wuIEtvbWJpIG9obmUgVmVybGV0enVuZyBkZXIKVG9lY2h0ZXIgKEhhdXMtTnIuKSAgemVybGVnLiAgICAgIlN1bW1lID0gMTMiIC1SZWdlbAoKMS8xLzExIC0+IDExIC0+IDExICAgICAgICAtPiAxLCAxLCAxMQoxLzIvMTAgLT4gMjAgLT4gMioyKjUgICAgIC0+IDEsIDIsIDEwCjEvMy85ICAtPiAyNyAtPiAzKjMqMyAgICAgLT4gMSwgMywgOQoxLzQvOCAgLT4gMzIgLT4gMioyKjIqMioyIC0+IDEsIDQsIDgKMS81LzcgIC0+IDM1IC0+IDUqNyAgICAgICAtPiAxLCA1LCA3CgoxLzYvNiAgLT4gMzYgLT4gMioyKjMqMyAgIC0+IDEsIDYsIDYgb2RlciAyLCAyLCA5LiAgSG9wcGxhLi4uCjIvMi85ICAtPiAzNiAtPiAyKjIqMyozICAgLT4gMSwgNiwgNiBvZGVyIDIsIDIsIDkuICBIb3BwbGEuLi4KCjIvMy84ICAtPiA0MCAtPiAyKjIqMio1ICAgLT4gLi4uCjIvNC83ICAtPiA1NiAtPiAyKjIqMio3ICAgLT4gLi4uCjIvNS82ICAtPiA2MCAtPiAyKjIqMyo1ICAgLT4gLi4uCjMvMy83ICAtPiA2MyAtPiAzKjMqNyAgICAgLT4gLi4uCjMvNC82ICAtPiA3MiAtPiAyKjIqMiozKjMgLT4gLi4uCjMvNS81ICAtPiA3NSAtPiAzKjUqNSAgICAgLT4gLi4uCjQvNC81ICAtPiA4MCAtPiAyKjIqMioyKjUgLT4gLi4uCgpVbmQgZGEgZmFlbGx0IHVucyBhdWYsIGRhc3MgZWlnZW50bGljaCBhbGxlIEhhdXNudW1tZXJuIGVpbmUgZWluZGV1dGlnZQpaZXJsZWd1bmcgZXJsYXViZW4sIGF1c3NlciBkZXIgMzYuIEJlaSBkaWVzZXIgSGF1c251bW1lciBicmF1Y2h0IG1hbiBkaWUKWnVzYXR6aW5mbywgZGFzcyBlcyBlaW5lIGVpbmRldXRpZ2UgQWVsdGVzdGUgZ2lidC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkpldHp0IGhhdCBlciBpaG4gdmVyc2NocmVja3QgKFdpbSwgMjYuIE9rdCAxOTk5LCAxODo1MzoyNCk6CltBbGxnZW1laW46QW5hdG9sXSBXYWVoLCBsZXMnIGljaCBkYSBMdW11bmd1cz8hIDopCkx1bXVuZ3VzIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCgpBbmF0b2wsIEFuYXRvbC4uLiB3YW5uIGxlcm5zdCBEdSBlcy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IC4uLiAyLiB2ZXJzdWNoIDstKSAoUmFuaSwgMjYuIE9rdCAxOTk5LCAxOToyMzoxNCk6ClNhaGFkb29tIHRlaWx0IERpciBtaXQ6IHVya3Mgd2FzIGhhYiBpY2ggbnUgZ2V0YW4/IGVpbiB1ZWJlcmRpbWVuc2lvbmFsZXMKU2FoYWRvb20gdGVpbHQgRGlyIG1pdDogdHJvbGxza2VsZXR0LiBuYWphLCBrbGF0c2NoIGljaHMgaGFsdCB3ZWNoClNhaGFkb29tIHRlaWx0IERpciBtaXQ6IGRhcyB3YXJzIGRhbm4gd29obApUb2Q6TGFycyBFaW4gVHJvbGxza2VsZXR0IGhhdCBnZXJhZGUgU2FoYWRvb20gdW1nZWJyYWNodC4KVG9kOkVpbiBUcm9sbHNrZWxldHQgSmEsIHdpciBUcm9sbGUga29lbm5lbiBhdWNoIG5hY2ggZGVtIFRvZCBub2NoIGZpZXMKVG9kOkVpbiBUcm9sbHNrZWxldHQgc2VpbiEgOikKCm9kZXIgZXMgZGljaC4KYmVpbGVpZCwgU2FoYWRvb20gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZmx3IC4uLiAyLiB2ZXJzdWNoIDstKSAoSGVyb21jZmx5LCAyNi4gT2t0IDE5OTksIDE5OjI0OjQ1KToKfiMhIHJuPVJhbmkgcnQ9OTQwOTY1Nzk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwOTY1Nzk0CgpobW1tIHR5cGlzY2hlcyB6bXVkIHVzZXJwb3N0aW5nIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNoYW5uYXJhLCBQYXJhbm9pYSB1bmQgcGFzc2VuZGUgUnVicmlrZW4gKE5ldm9rLCAyNi4gT2t0IDE5OTksIDIwOjU5OjQzKToKfiMhIHJuPVRoYW5vcyBydD05NDA5NDgxOTAgcmc9c2NobWFycm4KfiMhIHRpZD05NDA4ODQ0MjQKbGllYmVyIFB1ay9UaGFub3MuLi4uLndlbm4gRHUgRGlyIG1hbCBkaWUgbWFpbCBpbSBIZWFkZXIgYW5zY2hhdXN0IChEdSB3YXJzdAphdWNoIGltIENDIGRpZXNlciAncGVyc29lbmxpY2hlbidOYWNocmljaHQgYW4gbWljaCB2b24gU2hhbm5hcmEpIHdhZXJlIERpcgphdWZnZWZhbGxlbiwgZGFzcyBkaWUgcHJpdmF0ZSBtYWlsIG5ldCBudXIgYW4gbWljaCBnaW5nLi4uLgphYmVyIGljaCBrYW5uIGdlcm5lIGRlbiBDQyBub2NobWFsIGhpZXIgYW5nZWJlbi4uLi4uLi5pY2ggd29sbHRlIG51ciBuZXQgbWl0Cm5lciBtYXNzZW5tYWlsIGRlbiBzZXJ2ZXIgYmVsYXN0ZW4gZGEgaWNoIG1pY2ggZGFubiBkb2NoIGF1Y2ggYW4gZGllIHZvbgpzaGFubmFyYSBhZHJlc3NpZXJ0ZW4gbGV1dGUgd2VuZGVuIHdvbGx0ZS4uLi4uCgptb3JnbmVyLHZhbXBpcmUsc2FoYWRvb20sa2FyaWMsd3Vyc3RlbCx3b28senVsamluLHF1YWxtaSx2ZWN0b3Isc2x5Zm94LGdyaW51ciwKbWFnZW5icm90LGFzdGVyb3RoLHN1bmZsb3dlcixrZWtzLGJhcmQsaGFuc3d1cnN0LGhlbGxmbGVjayxyYXJkaWFuLGxlaWJuaXpAcGFuCmtyYXouZGUsc29yY2VyZXIsbWFnaWNvbGxpLGFwb2xsb25pYSx0aGF1cnVzLGRpcmlvbixhbHBoYSxnb2xhcyxzdHJvaGFsbSxwdWssdApvbWFAcHJpbWEuZGUseGFuZCx0b21hQHByaW1hLmRlLHhhbmQsbXNhcixhcnV0aGEsdmFtcHksdF9tdWVobGhAbWF0aGVtYXRpay51bmkKLXVsbS5kZSxtaXJyb3IsYXJAd2VzdGVuZC5jb20sYWxtZHVkbGVyLGZpcmVoYXdrLG1haTk0Y2JpQHN0dWRzZXJ2LnVuaS1sZWlwemlnCi5kZSx4ZW5vbixsZXYsbXR2LGx1cmNoaQpsZXYKCmRhcyBpcyBuZSAncHJpdmF0ZScgbWFpbD8KSSBkb24ndCB0aGluayBzbwoKTmV2b2ssIGRlciBzaWNoIGtlaW5lbiBzY2h3YXJ6ZW4gUGV0ZXIgenVzY2hpZWJlbiBsYWVzc3QuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTaGFubmFyYSwgUGFyYW5vaWEgdW5kIHBhc3NlbmRlIFJ1YnJpa2VuIChTaWx2YW5hLCAyNi4gT2t0IDE5OTksIDIxOjAzOjUxKToKfiMhIHJuPU5ldm9rIHJ0PTk0MDk3MTU4MyByZz1zY2htYXJybgp+IyEgdGlkPTk0MDg4NDQyNApIbS4uLiBiZWkgbWlyIGxhbmRlbiBNYWlsIG1pdCBkZXJtYXNzZW4gbGFuZ2VuIENDcyBtZWlzdCB1bmdlbGVzZW4gaW0KUGFwaWVya29yYi4uLiBNdXNzIGFuIGRlbSBoZXV0aWdlbiBIYW5nIHp1IE1hc3NlbmRydWNrc2FjaGVuIHVuZCAtV2VyYnVuZwpsaWVnZW4uLi4KCiAgU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2hhbm5hcmEsIFBhcmFub2lhIHVuZCBwYXNzZW5kZSBSdWJyaWtlbiAoR25vbWUsIDI2LiBPa3QgMTk5OSwgMjE6MTI6NTEpOgp+IyEgcm49TmV2b2sgcnQ9OTQwOTcxNTgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwODg0NDI0CmVzIHNjaGVpbnQgc2ljaCB1bSBlaW5lIGtsZWluZSBhdXNlaW5hbmRlcnNldHp1bmcgendpc2NoZW4gc2gqIHVuZCBkaXIKenUgaGFuZGVsbiAtIGRhc3MgZXIvc2llIG51biBub2NoIDUwIGxldXRlIG1pdCByZWluemllaHQgKHdhcnVtIGF1Y2ggaW1tZXIpCmlzdCBhYmVyIG51biB3aXJrbGljaCBuaWNodCB1bnNlciBwcm9ibGVtLgpkZW5rIG1hbCBsaWViZXIgYW4gZGllIDU1MCBhbmRlcmVuIG1pdHNwaWVsZXIsIGRpZSBldWVybiBtdWVsbCBudW4Kd2lya2xpY2ggbmljaHQgbGVzZW4gd29sbGVuIChhdXNzZXIgZ2xvaW4gdmllbGxlaWNodCA7LSkpLgptYWNocyBoYWx0IHVlYmVyIG1haWwgKHNlbGJzdCBiZWkgJ21haWwgZnJldW5kZScgdm9uIHNseSBnYWJzIG51ciAyNSUgbGFnKQpvZGVyLCB3YXMgd2FocnNjaGVpbmxpY2ggbm9jaCBiZXNzZXIgaXN0OiAnaGlsZmUgaWdub3JpZXJlJwoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNoYW5uYXJhLCBQYXJhbm9pYSB1bmQgcGFzc2VuZGUgUnVicmlrZW4gKFd1cnplbCwgMjYuIE9rdCAxOTk5LCAyMToxNDowNSk6Cn4jISBybj1Hbm9tZSBydD05NDA5NzIzNzEgcmc9c2NobWFycm4KfiMhIHRpZD05NDA4ODQ0MjQKbmVpbi4gaWNoIHdpbGwgYXVjaCB3YXMgenUgbGFjaGVuIGhhYmVuLgoKd3VyemVsLCBrb21wcm9taXNzbG9zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpyZSBhcnQgNjcgKFNhaGFkb29tLCAyNi4gT2t0IDE5OTksIDIzOjA3OjQyKToKSmFqYSwgd2VyIGRlbiBTY2hhZGVuIGhhdCwgc3BvdHRldCBqZWRlciBCZXNjaHJlaWJ1bmcuCgpTYWhhKiAoZ3JpbnNlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2hhbm5hcmEsIFBhcmFub2lhIHVuZCBwYXNzZW5kZSBSdWJyaWtlbiAoTHVnLCAyNi4gT2t0IDE5OTksIDIzOjI1OjUyKToKfiMhIHJuPU5ldm9rIHJ0PTk0MDg4NDQyNCByZz1zY2htYXJybgp+IyEgdGlkPTk0MDg4NDQyNApNaXN0LAoKaWNoIEhBU1NFIGVzLCB3ZW5uIGVyIG1pY2ggbmljaHQgYWxzIEJlaXNwaWVsIGVyd2FlaG50Li4uCgpLYXR6ZW4ga2lja2VuZApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJhbWJpLUZhbnM/IChMdWcsIDI3LiBPa3QgMTk5OSwgMDE6MTY6MzUpOgoKRGFzIFJlaCBmYWVsbHQgdG90IHp1IEJvZGVuLgpUYXJpbmEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCk5hY2h0d2luZCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCldlaWNoZWllcgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJld2VpcyAoRm9vYmFyLCAyNy4gT2t0IDE5OTksIDE0OjA0OjQ0KToKIEdhc3Q1IHJ1ZnQ6IEFsbGUgZG9mIGhpZXIhCgpGb29iYXIgLSBrdXJ6IHVuZCBrbmFwcAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJld2VpcyAoSmFtYWxza2ksIDI3LiBPa3QgMTk5OSwgMTQ6MTM6MTUpOgp+IyEgcm49Rm9vYmFyIHJ0PTk0MTAzMzA4NCByZz1zY2htYXJybgp+IyEgdGlkPTk0MTAzMzA4NApHYXN0NSBydWZ0OiBBbGxlIGRvZiBoaWVyIQoKTnVyIGVyIG5pY2h0IQpqYW1hbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQmV3ZWlzIChMaWFyYSwgMjcuIE9rdCAxOTk5LCAxNDozNzo1NSk6Cn4jISBybj1KYW1hbHNraSBydD05NDEwMzM1OTUgcmc9c2NobWFycm4KfiMhIHRpZD05NDEwMzMwODQKRGFzIGhlaXNzdDoKCkFsbGUgZG9vZiBhdXNzZXIgbWljaC4KCkxpYXJhLCBrZW5udCBzaWNoIGRhIGF1cyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNoYW5uYXJhLCBQYXJhbm9pYSB1bmQgcGFzc2VuZGUgUnVicmlrZW4gKEJvaW5nLCAyNy4gT2t0IDE5OTksIDE3OjU5OjQ5KToKfiMhIHJuPUdub21lIHJ0PTk0MDk3MjM3MSByZz1zY2htYXJybgp+IyEgdGlkPTk0MDg4NDQyNApIZXksIGljaCBsZXNlIHNvIFNjaGxhbW1zY2hsYWNodGVuIGF1Y2ggaW1tZXIgZ2Vybiwgd2llIFd1cnplbCBzY2hvbgpzYWd0ZTogdW5nZW1laW4gYW11ZXNhbnQgOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU2hhbm5hcmEsIFBhcmFub2lhIHVuZCBwYXNzZW5kZSBSdWJyaWtlbiAoTWFoYXRtdSwgMjcuIE9rdCAxOTk5LCAxODowMTo0OSk6Cn4jISBybj1Cb2luZyBydD05NDEwNDcxODkgcmc9c2NobWFycm4KfiMhIHRpZD05NDA4ODQ0MjQKSWhyIHp3ZWkgc2VpZCBmaWVzLiBNaXQgRXVyZW0gdW52ZXJibHVlbXRlbiBJbnRlcmVzc2UgYW0gb2VmZmVudGxpY2hlbgpUZWlsIGlocmVzIFByaXZhdGxlYmVucyAoaXN0IGRhcyBlaWdlbnRsaWNoIGVpbmUgZWNodGUgVGVpbG1lbmdlPykgaGFidApJaHIgc2llIHZlcnNjaHJlY2t0LiBBdXMgaXN0cyBtaXQgZGVuIHNjaG9lbmVuIEludGVybmEuCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTaGFubmFyYSwgUGFyYW5vaWEgdW5kIHBhc3NlbmRlIFJ1YnJpa2VuIChOZXZvaywgMjcuIE9rdCAxOTk5LCAyMToxNjoyOSk6Cn4jISBybj1NYWhhdG11IHJ0PTk0MTA0NzMwOSByZz1zY2htYXJybgp+IyEgdGlkPTk0MDg4NDQyNApOZSBzb3JyeSwgYWJlciBpY2ggZ2Vob2VyZSBsZWlkZXIgenUgZGVuIExldXRlbiBkaWUgbm9jaCB3YXMgYW5kZXJlcyB6dSB0dW4KaGFiZW4gYWxzIHp1IG11ZGRlbi4uLi4uLmhpZXIgaXMgZGFzIFNlbXN0ZXIgZ2VyYWRlIGhhbGIgdm9yYmVpIHVuZCBkYSBnaWJ0cwpkaWUgdWVibGljaGVuIE1pdHRzZW1lc3RlcmtsYXVzdXJlbiBkaWUgZGFubiBkb2NoIDMwJSBhdWYgZGllIEVuZG5vdGUKemFlaGxlbi4uLi5kYSBzZXR6ZSBpY2ggbWVpbmUgUHJhZWZlcmVuemVuIGlyZ2VuZHdpZSBzbywgZGFzcyBNVUQgbmljaHQgZ2FuegphbiBlcnN0ZXIgU3RlbGxlIHN0ZWh0Li4uCk5hamEsIGljaCBoYWIgaW0gRGV6ZW1iZXIgZGFzIFNlbWVzdGVyIHp1ZW5kZSB1bmQgZGFubiAyIFdvY2hlbgpGcmVpemVpdC4uLi5tYWwgc2VoZW4gOykKCk5ldm9rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTaGFubmFyYSwgUGFyYW5vaWEgdW5kIHBhc3NlbmRlIFJ1YnJpa2VuIChXdXJ6ZWwsIDI3LiBPa3QgMTk5OSwgMjE6MTg6NTEpOgp+IyEgcm49TmV2b2sgcnQ9OTQxMDU4OTg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwODg0NDI0CnN1Y2ggZGlyIG1hbCBuZSBhbnN0YWVuZGlnZSB1bmkuIHp1IG1laW5lciB6ZWl0IHdhciBkYXMgc28sIGRhc3MgbWFuIG5hY2gKdmllbGVuIGphaHJlbiBuZSBwcnVlZnVuZyBnZW1hY2h0IGhhdCwgdW5kIGRhcyB3YXIgZGFzIGRhbm4uIGtlaW4gc3RyZXNzLAprZWluZSBrbGF1c3VyZW4sIGtlaW5lIHNjaGVpbmUgb2RlciBzb25zdCBzbyBlaW4gc2Nod2FjaHNpbm4sIGRlciBlaW5lbiBkb2NoCm5pY2h0IHdlaXRlcmJyaW5ndC4gd2VubiBkYXMgc3R1ZGllcmVuIHNjaG9uIGtlaW5lbiBzcGFzcyBtZWhyIG1hY2h0LCB3YW5uCndpbGxzdCBkdSBkZW5uIGxlYmVuPwoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTaGFubmFyYSwgUGFyYW5vaWEgdW5kIHBhc3NlbmRlIFJ1YnJpa2VuIChMaWFyYSwgMjcuIE9rdCAxOTk5LCAyMToyNjozNik6Cn4jISBybj1XdXJ6ZWwgcnQ9OTQxMDU5MTMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQwODg0NDI0CkFlaCAuLi4KV2FubiB3YXIgRGVpbmUgWmVpdD8gOy0pCgpMaWFyYSwgd2lsbCB6dXJ1ZWNrZ2VzcHVsdCB3ZXJkZW4uIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU2hhbm5hcmEsIFBhcmFub2lhIHVuZCBwYXNzZW5kZSBSdWJyaWtlbiAoQW5hdG9sLCAyOC4gT2t0IDE5OTksIDAyOjA1OjI1KToKfiMhIHJuPUxpYXJhIHJ0PTk0MTA1OTU5NiByZz1zY2htYXJybgp+IyEgdGlkPTk0MDg4NDQyNApEYSB3YXIgRGVpbiBFcmJndXQgbm9jaCBuaWNodCB6dXNhbW1lbmdlc3RlbGx0LCBMaWFyYSA6XikKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiBMaW5rIGZ1ZXIgS2Vrc2UgISAoTW9yZ290aCwgMjguIE9rdCAxOTk5LCAwNTo0MDoyNyk6Cmh0dHA6Ly93d3cubHJ6LW11ZW5jaGVuLmRlLwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU2hhbm5hcmEsIFBhcmFub2lhIHVuZCBwYXNzZW5kZSBSdWJyaWtlbiAoQmllbGVmZWxkLCAyOC4gT2t0IDE5OTksIDA2OjI4OjM5KToKfiMhIHJuPUxpYXJhIHJ0PTk0MTA1OTU5NiByZz1zY2htYXJybgp+IyEgdGlkPTk0MDg4NDQyNApIZWhlLCBpbiBIYW1idXJnIGdpYnRzIGRhcyBub2NoLiBNdXNzdCBudXIgdm9yIDE5OTggbWl0IGRlbSBTdHVkaXVtCmFuZ2VmYW5nZW4gaGFiZW4gdW5kIEluZm9ybWF0aWtlciBzZWluIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU2hhbm5hcmEsIFBhcmFub2lhIHVuZCBwYXNzZW5kZSBSdWJyaWtlbiAoQXBvbGxvbmlhLCAyOC4gT2t0IDE5OTksIDA2OjQ0OjQ4KToKfiMhIHJuPUJvaW5nIHJ0PTk0MTA0NzE4OSByZz1zY2htYXJybgp+IyEgdGlkPTk0MDg4NDQyNApOYSwgaWNoIGRlbmtlLCB3b2hsIGFiZXIgYXVjaCBudXIsIHNvbGFuZ2UgRHUgbmljaHQgc2VsYnN0IGRhdm9uIGJldHJvZmZlbgpiaXN0LCBvZGVyPz8/CgpBcG8qIChmcmFnZW5kIGVpbmUgQXVnZW5icmF1ZSBob2NoemllaGVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiBHZWRpY2h0IGZ1ZXIgRGllZGVyIHp1ciBWb3J3ZWlobmFjaHRzemVpdCEgOikgKFVuYXNhaSwgMjguIE9rdCAxOTk5LCAxMzo1MDowMSk6CgpBbGxlIEphaHJlIHdpZWRlciAoenVyIE1lbG9kaWUgZGVzIGJla2FubnRlbiBMaWVkZXMhKQoKQWxsZSBKYWhyZSB3aWVkZXIsIAp3ZW5uIGRhcyBDaHJpc3RmZXN0IGRyb2h0LCAKc2llaHQgZGVyIGd1dGUgRGllZGVyIAp2b2xsZXIgUGFuaWsgcm90IQoKQXVjaCBmdWVyIFBhdWwgdW5kIE90dG8KaXN0IGRhcyBmZXN0IGVpbiBHcmF1cy4KRGFydW0gaGVpc3N0IGRhcyBNb3R0bzoKTmljaHRzIHdpZSB3ZWcgdW5kIHJhdXMhCgpSZW50bmVyZWhlcGFhcmVuCndpcmQgZXMgbmFjaGdlbWFjaHQKZGllIGJlcmVpdHMgc2VpdCBKYWhyZW4KaW4gZGVyIGhlaWwnZ2VuIE5hY2h0CgphdWYgTWFsbG9yY2Egc2l0emVuLApsYXV0IGJlaSBLZXJ6ZW5saWNodCwKV2VpbiB1bmQgYmxvZWRlbiBXaXR6ZW4uCkZlaWVybj8gV2lyIGRvY2ggbmljaHQhCgpGbGllZ2VuIG1pdCBNYXNjaGluZW4KZm9ydCBhdXMgZGV1dHNjaGVtIExhbmQKaGluIHp1IGRlbiBCbG9uZGluZW4KU29ubmUsIE1lZXIgdW5kIFN0cmFuZCEKCk1hbiBpc3Qgd2VpaG5hY2h0c2ZsdWVjaHRpZwpEb2NoIHp1cnVlY2tnZWtlaHJ0LQpkYSBnZXNjaGVua2VzdWVjaHRpZy0Ka2xhciwgZGFubiB3aXJkIGJlc2NoZXJ0IQoKVW5hKiAoRGllZGVyIG5lbiBLcnVlY2tzdG9jayB1bmQgZWluIGdlYmlzcyBydWViZXJyZWljaGVuZCwgKkdlc2NoZW5rZSB6dQp3ZWlobmFjaHRlbiBoYWx0ISopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIZXksIGRhcyBoYWIgaWNoIHNvIG5pY2h0IHByb2dyYW1taWVydCEgKFdpbSwgMjguIE9rdCAxOTk5LCAxNDoxMzoyNSk6CkFwb2xsb25pYSB6dWVja3QgZWluZSBnZWZsb2NodGVuZSBMZWRlcnBlaXRzY2hlLgpBcG9sbG9uaWEgaG9sdCB3ZWl0IG1pdCBpaHJlciBQZWl0c2NoZSBhdXMgdW5kIGxhZXNzdCBzaWUgaW4gd2VpdGVyIEZlcm5lCmtuYWxsZW4uCkR1IGdyaW5zdC4KMTQ6MTIKRWluIGxhdXRlciBLbmFsbCBoYWxsdCB2b20gR2ViaXJnZSBoZXJ1ZWJlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbiBHZWRpY2h0IGZ1ZXIgRGllZGVyIHp1ciBWb3J3ZWlobmFjaHRzemVpdCEgOikgKERpZWRlciwgMjguIE9rdCAxOTk5LCAxNTo1NDoyOCk6Cn4jISBybj1VbmFzYWkgcnQ9OTQxMTE4NjAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxMTE4NjAxCkR1IGZyZWNoZXMgQmllc3QsIERpY2ggd2VyZCBpY2ggTW9yZXMgbGVocmVuIDotKQoKRGllZGVyLCBkZW4gS3J1ZWNrc3RvY2sgZ2xlaWNoIG1hbCBib2VzZSBpbiBSaWNodHVuZyBVbmEgZWluc2V0emVuZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFaW4gR2VkaWNodCBmdWVyIERpZWRlciB6dXIgVm9yd2VpaG5hY2h0c3plaXQhIDopIChKYW1hbHNraSwgMjguIE9rdCAxOTk5LCAxNTo1Njo0OCk6Cn4jISBybj1EaWVkZXIgcnQ9OTQxMTI2MDY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxMTE4NjAxCk5hamEgZGVyIEtydWVja3N0b2NrIGFscyBNYWVubmxpY2hrZWl0c3Byb3RoZXNlIDspCgpKYW1hbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWluIEdlZGljaHQgZnVlciBEaWVkZXIgenVyIFZvcndlaWhuYWNodHN6ZWl0ISA6KSAoQXBvbGxvbmlhLCAyOC4gT2t0IDE5OTksIDE2OjA2OjQ1KToKfiMhIHJuPURpZWRlciBydD05NDExMjYwNjggcmc9c2NobWFycm4KfiMhIHRpZD05NDExMTg2MDEKV2lyc3QgRHUgd29obCBtZWluIFNjaHdlc3RlcmhlcnogaW4gUnVoZSBsYXNzZW4/Pz8/IEFuZHJvbWVkYSBob2VydCBhdWYKbWljaC4uLiBhbHNvIGtlaW5lIE1hc3NhZ2VuIG1laHIgYmlzIGF1ZiB3ZWl0ZXJlcyA6KQoKQXBvKiAoZHJvaGVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVpbiBHZWRpY2h0IGZ1ZXIgRGllZGVyIHp1ciBWb3J3ZWlobmFjaHRzemVpdCEgOikgKERpZWRlciwgMjguIE9rdCAxOTk5LCAxNjowNzozOSk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9OTQxMTI2ODA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxMTE4NjAxCipzY2htb2xsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQnVnZml4LVdhcm51bmcgISAoTWFoYXRtdSwgMjguIE9rdCAxOTk5LCAxNjoxNDoyMSk6Cn4jISBybj1KYW1hbHNraSBydD05NDExMjMxNDIgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9OTQxMTEzOTk2CkhtbW0sIHNjaG9uIDMsNCBNaW8gT2JqZWt0ZSBkdXJjaHMgTVVEIGdlbGVpZXJ0PyBPYiB3aXIgbm9jaCBkaWUgNSBNaWxsaW9uZW4Kc2NoYWZmZW4/IDopCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFaW4gR2VkaWNodCBmdWVyIERpZWRlciB6dXIgVm9yd2VpaG5hY2h0c3plaXQhIDopIChUZWRkeSwgMjguIE9rdCAxOTk5LCAxNjozNjoyMik6Cn4jISBybj1BcG9sbG9uaWEgcnQ9OTQxMTI2ODA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxMTE4NjAxCkphamEsIFVuZGFuayBpc3QgZGVyIFdlbHRlbiBMb2huLgpCZWlsZWlkIERpZWRlci4KClRlZGR5LCBzY2htb2xsdCBtYWwgbWl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZXMgbGllZ3Qgd2FzIGluIGRlciBsdWZ0IHQgKEhlcm9tY2ZseSwgMjguIE9rdCAxOTk5LCAyMDozMDowMSk6CkhpZ2h0IHRyaXR0IGF1cyBlaW5lciBOZWJlbHdhbmQuCldpZGVybGljaGUgRHVlbnN0ZSBlcmZ1ZWxsZW4gZGVuIFJhdW0uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHZMUEMgIChBbmF0b2wsIDI4LiBPa3QgMTk5OSwgMjI6MzA6NTQpOgp+IyEgcm49U3RvZXJ0aSBydD05NDExNDgxODUgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NDExNDgxODUKPiBVbmQgZXMgaXN0IE5JQ0hUIHRvZCA6LSkKCkJlaSBzb2xjaGVuIGdyYW1tYXRpa2FsaXNjaGVuIFNjaHdhZWNoZW4gaGFldHRlIGljaCBhbiBEZWluZXIKU3RlbGxlIGF1Y2ggZGVuIE9wZW4tU291cmNlLVdlZyBnZXdhZWhsdCAtIHVuZCBhbmRlcmUgTGV1dGUgZGFzCiJQcm9qZWt0IiB1ZWJlcm5laG1lbiBsYXNzZW4uIEtsdWdlciBadWcgO28pCgpBbmF0b2wgLSBiZXd1bmRlcnQgU3RvZXJ0aSBdO14pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB2TFBDICAoQW5hdG9sLCAyOC4gT2t0IDE5OTksIDIyOjM2OjM0KToKfiMhIHJuPUFuYXRvbCBydD05NDExNDk4NTQgcmc9c2NobWFycm4KfiMhIHRpZD05NDExNDgxODUKU3RvZXJ0aSB0ZWlsdCBEaXIgbWl0OiBpY2ggc2FndGUgZG9jaCwgZGFzIGljaCBlcyBuaWNodCBsZXNlLCBzcGFyIGRpciBkaWUKU3RvZXJ0aSB0ZWlsdCBEaXIgbWl0OiBrb21tZW50YXJlIDotKQoKT2RlciBkb2NoPwpBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB2TFBDICAoU3RvZXJ0aSwgMjguIE9rdCAxOTk5LCAyMjo0MzoxNyk6Cn4jISBybj1BbmF0b2wgcnQ9OTQxMTUwMTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxMTQ4MTg1CkljaCB3dXNzdGUgZWluZmFjaCwgZGFzcywgd2VubiBBbmF0b2wgZWluZW4gQXJ0aWtlbCBzY2hyZWlidCwgCmRpZXNlciBzaWNoIGF1ZiBldHdhcyBiZXppZWh0LCB3YXMga3VyeiB2b3JoZXIgcGFzc2llcnQgaXN0LgooTWVpbiBBcnRpa2VsIG5hZW1saWNoKQoKRGllc2VzIFZvcmdlaGVuIGlzdCB2aWVsZmFjaCBiZWkgcHN5Y2hhdHJpc2NoZW4gQmVoYW5kbHVuZ2VuIApmZXN0Z2VzdGVsbHQgd29yZGVuIHVuZCB6ZXVndCB2b24gZWluZW0gYmVzb25kZXJlbiAKR2VsdHVuZ3NkcmFuZy4KCkRhIGRpZXMgYmVpIEFuYXRvbCBlaWdlbnRsaWNoIGltbWVyIGRlciBGYWxsIGlzdCwKa29ubnRlIGljaCBtaXIgc2VpbmUgQW50d29ydCBuaWNodCBlbnRnZWhlbiBsYXNzZW4uCgpVZWJyaWdlbnMgd2lyZCBkaWVzZXIgR2VsdHVuZ3NkcmFuZyBpbW1lciBiZWkgZGVuClBlcnNvbmVuIGZlc3RnZXN0ZWxsdCwgZGllIHNjaHdhZWNoZW4gaW4gYW5kZXJlbiAKQmVyZWljaGVuIGF1ZndlaXNlbi4KTWVpc3QgYmVydWh0IGRpZXMgYXVmIHNleHVlbGxlbiBTY2h3YWVjaGVuLgooQmVpbSBtYWVubmxpY2hlbiBHZXNjaGxlY2h0KQoKU3RvZXJ0aSAqaGV1dGUgbWFsIGF1ZmtsYWVyZW5kKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHZMUEMgIChCaWVyY2hlbiwgMjguIE9rdCAxOTk5LCAyMjo0ODowMCk6Cn4jISBybj1TdG9lcnRpIHJ0PTk0MTE1MDU5NyByZz1zY2htYXJybgp+IyEgdGlkPTk0MTE0ODE4NQptYW5jaG1hbCBpc3QgZWluIHppZ2FycmUgZWluZmFjaCBudXIgZWluZSB6aWdhcnJlLiBkdSBoYXN0IGRlaW5lbiBmcmV1ZCBuaWNodApnZWxlc2VuLiBoaW5zZXR6ZW4uIDYuCiAgLSBCaWVyY2hlbiAtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB2TFBDICAoQW5hdG9sLCAyOC4gT2t0IDE5OTksIDIyOjU1OjExKToKfiMhIHJuPVN0b2VydGkgcnQ9OTQxMTUwNTk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxMTQ4MTg1CkphLCBHZWx0dW5nc2RyYW5nLCBNZXRob2RlbiBwc3ljaGlhdHJpc2NoZXIgQmVoYW5kbHVuZyB1bmQKc2V4dWVsbGUgU2Nod2FlY2hlbiBkdWVyZnRlbiB6dSBEZWluZW4gTGViZW5zZXJmYWhydW5nZW4KZ2Vob2VyZW4gLSBkYXMgaXN0IHVucyBqYSBuaWNodCB3aXJrbGljaCBuZXUsIG9kZXI/IDopIERpZQp2ZXJtZWhydCBhdWZ0cmV0ZW5kZSBMZWdhc3RoZW5pZSBpc3QuLi4gYWVobS4gTmVpbiwgZGllIGlzdAp1bnMgYXVjaCBzY2hvbiB2ZXJ0cmF1dC4gU29ycnkgOykKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHZMUEMgIChTdG9lcnRpLCAyOC4gT2t0IDE5OTksIDIyOjU2OjIxKToKfiMhIHJuPUFuYXRvbCBydD05NDExNTEzMTEgcmc9c2NobWFycm4KfiMhIHRpZD05NDExNDgxODUKYWJlciBJQ0ggaGFiZSBtZWluZSBzZXh1ZWxsZW4gUHJvYmxlbWUgbWl0dGxlcndlaWxlIHVlYmVyd3VuZGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiB2TFBDICAoQW5hdG9sLCAyOC4gT2t0IDE5OTksIDIzOjAxOjQ4KToKfiMhIHJuPVN0b2VydGkgcnQ9OTQxMTUxMzgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxMTQ4MTg1CldhYWFhYWFhYWFhYWFhYWFhYWFhYWggOikgREFTIG5lbm5zdCBEdSAidWViZXJ3aW5kZW4iPyA6bykKQW5kZXJlcnNlaXRzLCBmdWVyIGRpZSBGcmF1ZW4gaXN0IGVzIHNvIHZlcm11dGxpY2ggYmVzc2VyLi4uCgpBbmF0b2wgLSB3aWxsIGRhbm4gYmVzc2VyIG5pY2h0cyAndWViZXJ3aW5kZW4nIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogdkxQQyAgKFN0b2VydGksIDI4LiBPa3QgMTk5OSwgMjM6MDM6MjYpOgp+IyEgcm49QW5hdG9sIHJ0PTk0MTE1MTcwOCByZz1zY2htYXJybgp+IyEgdGlkPTk0MTE0ODE4NQpnZW5hdSwgYW5hdG9sIGJsZWlidCBsaWViZXIgb2huZSBmcmF1LCBkYW4gaXN0IGF1Y2gga2VpbmUgZ2VmYWhyIGdlZ2ViZW4sIApkYXMgZXIgc2VpbmUgZ2VuZSB2ZXJzdHJldXQuCgpOYWphLCBmdWVyIGRpZSBXZWx0IGlzdCBlcyBzbyB2ZXJtdXRsaWNoIGJlc3Nlci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogdkxQQyAgKFN0b2VydGksIDI4LiBPa3QgMTk5OSwgMjM6MDM6NTIpOgp+IyEgcm49U3RvZXJ0aSBydD05NDExNTE4MDYgcmc9c2NobWFycm4KfiMhIHRpZD05NDExNDgxODUKaWNoIHdlaXNzLCBkYXMgbWFuIGRhbm4gbWl0IDIgbiBzY2hyZWlidCwgZHUgYnJhdWNoc3QgbWljaCBuaWNodCBiZWxlaHJlbgphbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IHZMUEMgIChCaWVyY2hlbiwgMjguIE9rdCAxOTk5LCAyMzowNTo1MCk6Cn4jISBybj1TdG9lcnRpIHJ0PTk0MTE1MTgzMiByZz1zY2htYXJybgp+IyEgdGlkPTk0MTE0ODE4NQonaWNoIHdlaXNzLCBkYXMnIC0+ICdpY2ggd2Vpc3MsIGRhc3MnIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IHZMUEMgIChTdG9lcnRpLCAyOC4gT2t0IDE5OTksIDIzOjA2OjM4KToKfiMhIHJuPUJpZXJjaGVuIHJ0PTk0MTE1MTk1MCByZz1zY2htYXJybgp+IyEgdGlkPTk0MTE0ODE4NQpJY2ggd3Vzc3RlIGdhciBuaWNodCwgZGFTUyBCaWVyY2hlbiBhdWNoIGVpbiBQcm9ibGVtIGhhdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogdkxQQyAgKE1vcmdvdGgsIDI5LiBPa3QgMTk5OSwgMDY6MDg6MjgpOgp+IyEgcm49QmllcmNoZW4gcnQ9OTQxMTUwODgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxMTQ4MTg1CmphamEsIHVuZCBtYW5jaG1hbCBoYXQgQmlsbCBDbGludG9uIGRyYW4gZ2VsdXRzY2h0Li4uCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogdkxQQyAgKE1haGF0bXUsIDI5LiBPa3QgMTk5OSwgMDc6NDk6NTMpOgp+IyEgcm49U3RvZXJ0aSBydD05NDExNTE4MDYgcmc9c2NobWFycm4KfiMhIHRpZD05NDExNDgxODUKSG1tbS4gQW4gc2ljaCBzdGVsbGUgaWNoIG1pciBkYXMgZ2FueiBhbXVlc2FudCB2b3IsIHdlbm4gQW5hdG9sIHNlaW5lCkdlbmUgbWFsIHdlaXRlcmdlYmVuIHd1ZXJkZS4gTmljaHQgaW4gRm9ybSB2b24gSGF1dC0gdW5kIEhhYXJwYXJ0aWtlbG4sCm5laW4sIGVpbiBBbmF0b2wtSnVuaW9yIGF1ZiBlaW5lciBNVUQtUGFydHksIGRhcyB3YWVyIF9kZXJfIEtuYWxsZXIuCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiB2TFBDICAoUGFyYWNlbHN1cywgMjkuIE9rdCAxOTk5LCAwNzo1MDo1OCk6Cn4jISBybj1NYWhhdG11IHJ0PTk0MTE4MzM5MyByZz1zY2htYXJybgp+IyEgdGlkPTk0MTE0ODE4NQpOYWphLCB3ZW5uIGRlciBzb3ZpZWwgdW5kIHNjaG5lbGwgc2NocmVpdCB3aWUgc2VpbiBQYXBhIHJlZGV0IC4uLgoKUGFyYWNlbHN1cyBdOi0+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCdWdmaXgtV2FybnVuZyAhIChNYWhhdG11LCAyOS4gT2t0IDE5OTksIDA3OjUxOjM4KToKfiMhIG9uPU1haGF0bXUgb3Q9OTQxMTgzNDc4IG9nPWQuZ2ViaXJnZQp+IyEgcm49QmVuZGVpZ2lkIHJ0PTk0MTE3OTI3OSByZz1kLmdlYmlyZ2UKfiMhIHRpZD05NDExMTM5OTYKU28gZWluZSBvbGxlIFBldHplLiBJc3QgamEgZ2xhdHQgd2llIEJhbWJpLgpGbGFtZWQgTSohCgpNYWhhdG11IC4uLiBtZWludCBkYXMgamV0enQgbmljaHQgZXJuc3QgKG11c3MgbWFuIGphIGltbWVyIHNjaHJlaWJlbiA6KCApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGbHVjaHQgISEhIChaYXJuaXlhLCAyOS4gT2t0IDE5OTksIDExOjEyOjQ0KToKT3JrdG9ldGVyIHJ1ZnQ6IE9SS1RPRVRFTk9SS1RPRVRFTk9SS1RPRVRFTk9SS1RPRVRFTk9SS1RPRVRFTk9SS1RPRVRFTgpHcmltbWJvcm4gICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgp3aWUgZ3V0IGthbm4gaWNoIGRhcyB2ZXJzdGVoZW4gOikKCk1hcmMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHZMUEMgIChKYW1hbHNraSwgMjkuIE9rdCAxOTk5LCAxNDozMTozNSk6Cn4jISBybj1BbmF0b2wgcnQ9OTQxMTUxMzExIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxMTQ4MTg1CkFuYWx0b2xsISBTY2hsaWVzcyAxLiBuaWNodCBpbW1lciB2b24gRGlyIGF1ZiBhbmRlcmUgdW5kIDIuIHN0ZWxsIERpY2ggbmljaHQKaW1tZXIgbWl0ICd1bnMnIHVuZCAnd2lyJyBhdWYgZWluZSB2ZXJtZWludGxpY2ggbWVocmhlaXRsaWNoZSBTZWl0ZSEKSUNIIG1vZWNodGUgdm9uIERpciBsaWViZXIgbmljaHQgcmVwcmFlc2VudGllcnQgd2VyZGVuISAKKGFiZ2VzZWhlbiBkYXZvbiBkcnVlY2tlbiBEZWluZSBXb3J0d2FobCB1bmQgRGVpbmUgT3JhbC1BdHRhY2tlbiAod2VubiBhdWNoCnNjaHJpZnRsaWNoKSB6dXNhbW1lbiBtaXQgRGVpbmVtIHZlcnp3ZWlmZWx0ZW4gYmVtdWVoZW4gYXVmIGRlciAnc2ljaGVyZW4KU2VpdGUnIHp1IHN0ZWhlbiBudXIgRGVpbmUgU2Nod2FlY2hlIGF1cyEpCmphbWFsc2tpCmtvbnRyb2xsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGFzIGt1cnplIGxlYmVuIGRlcyB3aWRld2l0dCAoTm9ubmUsIDI5LiBPa3QgMTk5OSwgMTQ6Mzg6NDUpOgpXaWRld2l0dCBrb21tdCBhbi4KRWluIFdlZ2hpZXIgbWFjaHQgZWluZW4gYmV0YWV1YmVuZGVuIFNjaGxhZyBnZWdlbiBXaWRld2l0dC4KICAuLi4ubm9ybWFsL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogV2lkZXdpdHQuLi4uLiAqU2F1KioqKiAtLSBnZXRyb2ZmZW4KICAuLi4ubm9ybWFsL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogV2lkZXdpdHQuLi4uLiAqSG51KioqKiAtLQpTY2htZXR0ZXJuCiAgLi4uLm5vcm1hbC9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFdpZGV3aXR0Li4uLi4gKlV1dSoqKiogLS0gS3JhY2hlbgpFaW4gV2VnaGllciBtYWNodCBlaW5lIEZpbnRlIGdlZ2VuIFdpZGV3aXR0LgogIC4uLi4uZXh0cmEvV2FmZmVuc2NobGFnIFdlZ2hpZXIuLi4uLi4gOiBXaWRld2l0dC4uLi4uICpNb3RzdSoqIC0tClNjaG1ldHRlcm4KICAuLi4ubm9ybWFsL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogV2lkZXdpdHQuLi4uLiAqS3N1KioqKiAtLQpTY2htZXR0ZXJuCiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFdpZGV3aXR0Li4uLi4gKkdudSoqKiogLS0KemVyc3RhZXVidApXaWRld2l0dCBmYWVsbHQgdG90IHp1IEJvZGVuLgoKUmVzcGVrdCB2b3IgZGllc2VtIEFuZ3JpZmYhCgpOb25uZSwgV2VnaGllci1GYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZGFzIGt1cnplIGxlYmVuIGRlcyB3aWRld2l0dCAoTWFoYXRtdSwgMjkuIE9rdCAxOTk5LCAxNDozOTozMSk6Cn4jISBybj1Ob25uZSBydD05NDEyMDA3MjUgcmc9c2NobWFycm4KfiMhIHRpZD05NDEyMDA3MjUKTWFuIGRhcmYgbmljaHQgdmVyZ2Vzc2VuLCBkYXNzIGRlciBWUyB2b3JnZWhlaXp0IHdhciA6KQoKTWFoYXRtdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IHZMUEMgIChBbmF0b2wsIDI5LiBPa3QgMTk5OSwgMTU6MDg6MzEpOgp+IyEgcm49UGFyYWNlbHN1cyBydD05NDExODM0NTggcmc9c2NobWFycm4KfiMhIHRpZD05NDExNDgxODUKCkdOQSEgSWNoIG1vZWNodGUgYW4gZGllc2VyIFN0ZWxsZSBhdXNkcnVlY2tsaWNoIGRhcmF1ZiBoaW53ZWlzZW4sIGRhc3MKZWluIGdld2lzc2VyIG1pdCBsYXV0ZXIgUmVnZWxtYWVzc2lna2VpdCBhdWYgUGFydGllcyBoZXJ1bXNjaHJlaWVuZGVyClNwaWVsZXIgKm5pY2h0KiB2b24gbWlyIGFic3RhbW10LiBFciBtYWcgc2ljaCB6d2FyIGdlaXN0aWcgaW0gZW50LQpzcHJlY2hlbmRlbiBBbHRlciBiZWZpbmRlbiwgbGllZ3QgYWJlciBrb2VycGVybGljaCB1bmQgYXVmIGRlbSBQYXBpZXIKd2VpdCBhYnNlaXRzIGRhdm9uLgoKQW5hdG9sCgpQUzogV2FzIHNvbGx0ZSBkYXMgdWViZXJoYXVwdCBoZWlzc2VuLCBQYXJhPyBGYWxscyBtZWluZSBLaW5kZXIgZGVuCiAgICBNdW5kIGF1Zm1hY2hlbiwgd2VubiBpaG5lbiBpbiBkZXIgV2VsdCB3YXMgbmljaHQgcGFzc3QsIGR1ZXJmdGUKICAgIGRhcyBlaW4gc2VociBsb2JlbnN3ZXJ0ZXIgQ2hhcmFrdGVyenVnIHNlaW4uIF06LSkKClBQUzogRWluZXIsIGRlciB2aWVsIHp1IHZpZWxlbiBmZWhsdC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBLPz8/IChCYW1iaSwgMjkuIE9rdCAxOTk5LCAxODowNjoxMik6ClBhbmljIHJ1ZnQ6IEljaCB3aWxsIEt1ZWhlIQpGaXpiYW4gcnVmdDogSWNoIHdpbGwgS3VlaGUhCltUb2Q6TGFyc10gQmx1ZSBoYXQgamV0enQgUnVoZS4KW1RvZDpMYXJzXSBFaW5lIEhvcmRlIEt1ZWhlIGhhdCBCbHVlIHNvZWJlbiB6dSBUb2RlIGdldHJhbXBlbHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGZsdyAuLi4gMi4gdmVyc3VjaCA7LSkgKFRhcmluYSwgMjkuIE9rdCAxOTk5LCAxODowNzoxMyk6Cn4jISBybj1SYW5pIHJ0PTk0MDk2NTc5NCByZz1zY2htYXJybgp+IyEgdGlkPTk0MDk2NTc5NAoKYXJnbC4uLiBXZW5uIHNjaG9uLCBkYW5uIGhhZXR0ZXN0IGFsbGVzIHJlaW5wYXN0ZW4gc29sbGVuLiBTbyBpc3NlcyBkb2NoIApnYXJuaWNodCBrb21pc2NoIDotLwoKVGFyaW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUEs/Pz8gKFJvY2h1cywgMjkuIE9rdCAxOTk5LCAxODowNzoyNyk6Cn4jISBybj1CYW1iaSBydD05NDEyMTMxNzIgcmc9c2NobWFycm4KfiMhIHRpZD05NDEyMTMxNzIKRGFubiBtYWNoIGRhcyB3ZW5pZ3N0ZW5zIHZvbGxzdGFlbmRpZzoKClBhbmljIHJ1ZnQ6IEljaCB3aWxsIEt1ZWhlIQpUYXJpbmEgcnVmdDogaWNoIGF1Y2ghCld1bGZnYXIgcnVmdDogTWFzY2hlbmRyYWh0emF1biEKRHUgcnVmc3Q6IGhtbSwgYWxzIGd1bGR1a2F0IGt1ZWhlIHdvbGx0ZSBnYWIgZXMgcGFuaWsuLi4gaGVpc3N0IGRhcyBqZXR6dC4uLj8KRml6YmFuIHJ1ZnQ6IEljaCB3aWxsIEt1ZWhlIQpCb2luZyBydWZ0OiBJY2ggd2lsbCBSdWhlIQpWYW1waXJlIHJ1ZnQ6IGljaCB3aWxsIEdvZXR0ZXJzcGVpc2UKU3RpbmcgcnVmdDogKk5JQ0sgQk9JTkcqClRoYW5vcyBydWZ0OiB3byB3aXIgc2Nob24gZGFiZWkgc2luZC4uLi4uIDspCkJsdWUgcnVmdDogUnVoZSBiZWtvbW10IG1hbiBnZW51Zywgd2VubiBtYW4gdG9kIGlzdC4uLiBJQ0ggV0lMTCBLVUVIRSEKW1RvZDpMYXJzXSBCbHVlIGhhdCBqZXR6dCBSdWhlLgpCbHVlIHJ1ZnQ6IGhlaGUuLi4gbmljaHQgUnVoZSEgS3VlaGUhCltUb2Q6TGFyc10gRWluZSBIb3JkZSBLdWVoZSBoYXQgQmx1ZSBzb2ViZW4genUgVG9kZSBnZXRyYW1wZWx0LgpbQmVpbGVpZDpSb2NodXNdIGJlc3Nlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHZXJ1ZWNodGVrdWVjaGUgKEFuYXRvbCwgMjkuIE9rdCAxOTk5LCAxOTowMzo1Nyk6Cn4jISBybj1Nb250YW51cyBydD05NDEyMDkzMzQgcmc9cGFydHkKfiMhIHRpZD05NDEyMDkzMzQKR3V0LCBkYXNzIGljaCBkYXZvbiBlcmZhaHJlIDspCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdXMgZWluZXIgU2VxdWVuei4uLiAoQW5hdG9sLCAzMC4gT2t0IDE5OTksIDAxOjI1OjA4KToKIyM1IyMKU28gdmllbCBFcmZhaHJ1bmcgaGFzdCBEdSBqYSBkYW1pdCBhdWNoIG5pY2h0LCBhYmVyIGJlaSBkZW4KbGV0enRlbiBNYWxlbiB3YXJzIGVjaHQgYW5kZXJzIC0gJ1RPRCEgTEFSUz8gSFVIVT8nCiMjMTAjIwpIbW1tLCBlaWdlbnRsaWNoIGF1Y2ggZ2FueiBuZXR0LCBpcmdlbmR3aWUgd2FyIERpciBkZXIgS2VybCBtaXQKZGVyIGt1dHRlIGphIHNvd2llc28gdW5oZWltbGljaC4uLgojIzIwIyMKJ1ZFUkQqKiogTUlTVCcgcnVmc3QgRHUsICdJQ0ggSEFCIERBUyBTQ0hMSUVTU0xJQ0ggU0NIT04gIE1BTApNSVRHRU1BQ0hUISBLT01NIFpVIFBPVFRFLCBUT0QhJwoKSW1tZXIgd2llZGVyIGd1dC4uLgpBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERpZWRlciwgMzEuIE9rdCAxOTk5LCAxNDozNDo0MCk6CltBYmVudGV1ZXI6TWFnaWN0dXhdIGFyZ2wsIGthbm4gbWlyamVtYW5kIGRpZSBiYW5zaGVlIHRvZXRlbj8KW1RvZDpMYXJzXSBFaW5lIEJhbnNoZWUgaGF0IGdlcmFkZSBNYWdpY3R1eCB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgQmFuc2hlZV0gWUlJSWlpaWlpYWstWWFrLUlJaWlpaWlBQUtLWVlpaWFhYWFLS0sgISEhIQoKVW5nZXNjaG5pdHRlbi4KRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDaGFvdGlzY2hlIE1hY2hlbnNjaGFmdGVuISAoSmFtYWxza2ksICAxLiBOb3YgMTk5OSwgMTM6MTI6NTkpOgpbVGVhbSAxOlRvZF0gQVJBVEggSEFUIERBUyBURUFNIFZFUkxBU1NFTi4KW1RlYW0gMTpdIEphbWFsc2tpIGhhdCBkaWUgVGVhbWxlaXR1bmcgdWViZXJub21tZW4uIApbVGVhbSAxOl0gRGFzIFRlYW0gbG9lc3Qgc2ljaCBhdWYuIAoKSmFtYWxza2ksIHNjaG9uIHdpZWRlciBrZWluIFRlYW1sZWl0ZXIgOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDaGFvdGlzY2hlIE1hY2hlbnNjaGFmdGVuISAoTGlhcmEsICAxLiBOb3YgMTk5OSwgMTM6MTQ6MTcpOgp+IyEgcm49SmFtYWxza2kgcnQ9OTQxNDU4Mzc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxNDU4Mzc5CktlaW4gV3VuZGVyLCB3ZW5uIER1IERlaW5lIFRlYW1taXRnbGllZGVyIHN0ZXJiZW4gbGFlc3N0LiA7LSkKCkxpYXJhLCBncmluc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmloaGhoIChXaW0sICAxLiBOb3YgMTk5OSwgMTM6Mjk6NDQpOgoKU2xheWVyIHJpZWNodCBlaW4gT3BmZXIgdW5kIGtyaWVjaHQgYXVmIGRpZSBUb2lsZXR0ZS4KCkljaCB3aWxsIG5pY2h0IHdpc3Nlbiwgd2VsY2hlICJPcGZlciIgZXIgbWVpbnQuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZW5uIFNwaWVsZXIgc2ljaCBoYXVlbi4uLiAoQmllbGVmZWxkLCAgMS4gTm92IDE5OTksIDE1OjQyOjM5KToKW3VudCBhcmVuYV0KQmVyIEJvZGVuIGRlciBLYW1wZmFyZW5hIHVudGVuIGlzdCBtaXQgYmx1dGJlc3VkZWx0ZW4gU2FuZCBiZWRlY2t0LiBJbgpkZXIgQXJlbmEga2FubnN0IER1IGVudGRlY2tlbiA6Ck5pY2h0cyBiZXNvbmRlcmVzCk5pY2h0cyBiZXNvbmRlcmVzCkRlciBTY2hpZWRzcmljaHRlcgoKSXJnZW5kd2llIHdhciBtaXIgZGFzIGphIHNjaG9uIGltbWVyIGtsYXIsIGRhc3MgU3BpZWxlciBuaXggYmVzb25kZXJlcwpzaW5kLi4uIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNoZXJpZmYhIFNoZXJpZmYhISEgKEdub21lLCAgMS4gTm92IDE5OTksIDE2OjIwOjU3KToKfiMhIHJuPVRzdW5hbWkgcnQ9OTQxNDY4NzY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxNDY4NzY3CmFsc28gbWl0IHB1bmt0IDQgYmluIGljaCBlaW52ZXJzdGFuZGVuLgp2b24gYWxsZW4gYW5kZXJlbiBkaXN0YW56aWVyIGljaCBtaWNoIGFiZXIuLi4gOikKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphZWhtbS53aWUgamV0enQ/IChLYXJpYywgIDEuIE5vdiAxOTk5LCAxODo0OToxOCk6ClBsb2V0emxpY2ggbGV1Y2h0ZXQgZGFzIEZldWVyYW11bGV0dCBncmVsbCBhdWYuIER1IHdpcnN0IHZvbiBlaW5lciBsZXVjaHRlbmRlbgpBdXJhIGVpbmdlaHVlbGx0LiBBbHMgZGllIEF1cmEgZXJsaXNjaHQsIGZ1ZWhsc3QgZHUgZGljaCBzZWhyIHZpZWwgYmVzc2VyLgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBXZWF0aGVyd2F4CltUb2Q6TGFyc10gdW1nZWJyYWNodC4KCnNvIHNlaHIgdmllbCBiZXNzZXIgZnVlaGwgaWNoIG1pY2ggbnUgbmljaC4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaXR6IGRlcyBUYWdlcyAoTW9yZ290aCwgIDIuIE5vdiAxOTk5LCAxMDozNToxMyk6CltLbGVydXM6TVRWXSB2b3JiZWlzY2hhdWVuLCB1bmQgaWNoIGJpbiBudXIgZWluIHNjaHdhY2hlciB6YXViZXJlcgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBHZXJ1ZWNodGVrdWVjaGUgKENhdHdlYXpsZSwgIDIuIE5vdiAxOTk5LCAxNTozMzowMyk6Cn4jISBybj1ZZW5kaSBydD05NDE1NTEwOTUgcmc9cGFydHkKfiMhIHRpZD05NDEyMDkzMzQKSGI/IElzdCBkYXMgbmljaHQgbmUgQmxlaXN0aWZ0c3RhZXJrZT8KCllUQyAqcmFldHNlbG5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEdlcnVlY2h0ZWt1ZWNoZSAoSmFtYWxza2ksICAyLiBOb3YgMTk5OSwgMTU6MzM6NTkpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTk0MTU1MzE4MyByZz1zY2htYXJybgp+IyEgdGlkPTk0MTIwOTMzNAp6aWdhcmV0dGVubWFya2U/CkphbWFsYWxsbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzIGVzIG5pY2h0IGFsbGVzIGdpYnQuLi4gKEhyZWlkbWFyLCAgMi4gTm92IDE5OTksIDE2OjAyOjAyKToKCldpc2UgZXJrdW5kaWd0ZSBzaWNoIG5hY2ggZGVtIEdydW5kIG1laW5lcyBpZGxlbnMgdW5kIGljaCBrbGFlcnRlIGlobiBhdWYsIGljaAp3dWVyZGUgZWluIHdlbmlnIGltIEludGVybmV0IHN1cmZlbi4gU2VpbiBLb21tZW50YXIgZGF6dSB2ZXJibHVlZmZ0ZSBtaWNoOgoKV2lzZSB0ZWlsdCBEaXIgbWl0OiBBaGEsIGljaCBzdWNoZSBhdWNoIGdlcmFkZSBlaW5lbiBUcmVpYmVyIGZ1ZXIgbWVpbmVuCldpc2UgdGVpbHQgRGlyIG1pdDoga2xlaW5lbiBCcnVkZXIgaW0gSW50ZXJuZXQuLi4KCldhcyBtYW4gbmljaHQgYWxsZXMgaW0gSW50ZXJuZXQgZmluZGVuIGthbm4hCgpIcmVpZG1hciwgZXJzdGF1bnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBLYXJhdGUgYXVmd2VydGVuPyAoQ2F0d2VhemxlLCAgMi4gTm92IDE5OTksIDE2OjExOjQ4KToKfiMhIG9uPVRoYW5vcyBvdD05NDE1NTU0NzQgb2c9Z2lsZGVuLmthcmF0ZQp+IyEgcm49Qm9pbmcgcnQ9OTQxNTU1NDE2IHJnPWdpbGRlbi5rYXJhdGUKfiMhIHRpZD05NDExMDY4NDUKd2VsY2hlIHNpbm52b2xsZW4gZGlza3Vzc2lvbiBpbiBkZXIgTXBhID8gZ2lidCBvZGVyIGdhYiBlcyBtYWwgd2VsY2hlID8gOikKClRoYW5vcyAtLS0tLT4gc2NobWFycm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEthcmF0ZSBhdWZ3ZXJ0ZW4/IChDYXR3ZWF6bGUsICAyLiBOb3YgMTk5OSwgMTY6MTE6NTYpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTk0MTU1NTUwOCByZz1zY2htYXJybgp+IyEgdGlkPTk0MTEwNjg0NQpBYmVyIGdlcm4gOikKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqaG1wZiogKFdpbSwgIDIuIE5vdiAxOTk5LCAxOTowOToxOCk6CiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBUYXJpbmEgaW4gUnVicmlrICJhbGxnZW1laW5lcyIuCm5uClVlYmVyZ2VoZSBBcnRpa2VsIDc3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDc4IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDc5IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDgwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDgxIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDgyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCgpobXByZm9ybmthIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpobXBmKiAoV3VyemVsLCAgMi4gTm92IDE5OTksIDIwOjE4OjU3KToKfiMhIHJuPVdpbSBydD05NDE1NjYxNTggcmc9c2NobWFycm4KfiMhIHRpZD05NDE1NjYxNTgKc2VsYnN0IHNjaHVsZC4gd2VubiBkdSB3YXMgbGVzZW4gd2lsbHN0LCBkYXJmc3QgZHUga2VpbmUgdGhyZWFkcyB1ZWJlcmdlaGVuLgoKd3VyemVsCgpwLnMuIHZpZWxsZWljaHQgYXVzbmFobXN3ZWlzZSBtYWwgZWluIGtvbnN0cnVrdGl2ZXIgdm9yc2NobGFnIGF1Y2ggaW4gZGllc2VyCnJ1YnJpazoga29lbm50ZSBtYW4gbmljaHQgZ3JvZXNzZXJlIGJ1Y2hzdGFiZW4gZnVlciBkaWUgYXJ0aWtlbCBpbiBkZXIgbXBhCnZlcndlbmRlbj8gZGFzIHd1ZXJkZSBkaWUgaW5oYWx0bGljaGUgbmFlaGUgenUgZWluZXIgcmwtemVpdHVuZyBiZXNzZXIKa2xhcm1hY2hlbiwgZGllIGF1Y2ggc29sY2hlIGJ1Y2hzdGFiZW4gYmVudXR6dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogKmhtcGYqIChHcmltbWJvcm4sICAyLiBOb3YgMTk5OSwgMjE6MDc6NTApOgp+IyEgcm49V3VyemVsIHJ0PTk0MTU3MDMzNyByZz1zY2htYXJybgp+IyEgdGlkPTk0MTU2NjE1OApVbmQgd2llIHdpbGxzdCBEdSBiaXR0ZSBkaWUgQmlsZGVyIGRhcnN0ZWxsZW4/IEFTQ0lJLWFydD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpobXBmKiAoRXJkYmVlcmUsICAyLiBOb3YgMTk5OSwgMjI6Mzg6MzQpOgp+IyEgcm49V2ltIHJ0PTk0MTU2NjE1OCByZz1zY2htYXJybgp+IyEgdGlkPTk0MTU2NjE1OApEYSBiaXN0IGR1IG5pY2h0IGRlciBlaW56aWdlLiBNYW5jaG1hbCBiZXN0ZWh0IGRpZSBNUEEgdGFnZWxhbmdlIGF1cyBzb2xjaGVuClBvc3RpbmdzLCBnYXJuaWVydCBtaXQgaWdub3JpZXJ0ZW4gQXJ0aWtlbG4gdm9uIE5lcnZlbnNhZWdlbi4KCkUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqb2huZSB3b3J0ZSogKFNhaGFkb29tLCAgMi4gTm92IDE5OTksIDIzOjQxOjEyKToKT2xsaSBzYWd0OiBMaW1wZXJhdGUgbWFjaHQgZ2VyYWRlIHNlaW5lIExlaHJsaW5nc3BydWVmdW5nLi4uLi4uOykKT2xsaSBzYWd0OiBMaW1wZXJhdGUgbWFjaHQgZ2VyYWRlIHNlaW5lIExlaHJsaW5nc3BydWVmdW5nLi4uLi4uOykKVG9kOkxhcnMgc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIExpbXBlcmF0ZQp1bWdlYnJhY2h0LgoKCmhtbSwgb2RlciBhdWNoIG5pY2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKm9obmUgd29ydGUqIChEaWVkZXIsICAyLiBOb3YgMTk5OSwgMjM6NDE6NDIpOgp+IyEgcm49U2FoYWRvb20gcnQ9OTQxNTgyNDcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxNTgyNDcyCnNjaGVpc3Mgem11ZCA6KAptYWwgd2llZGVyLi4uCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogKm9obmUgd29ydGUqIChTYWhhZG9vbSwgIDIuIE5vdiAxOTk5LCAyMzo1Nzo1MCk6Cn4jISBybj1EaWVkZXIgcnQ9OTQxNTgyNTAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxNTgyNDcyCmdlbmF1IHNvIHNpZWh0cyBhdXM6KAoKU2FoYWRvb20sIGF1ZiBzZWluZW0gek1VRCBydW10cmFtcGVsbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAqb2huZSB3b3J0ZSogKE9sbGksICAyLiBOb3YgMTk5OSwgMjM6NTg6NTApOgp+IyEgcm49U2FoYWRvb20gcnQ9OTQxNTgzNDcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxNTgyNDcyCm1hbiBtdXNzIG51ciBtaXQgdW1nZWhlbiBrb2VubmVuIDspCgpPbGxpCihobS4gZ2FyIGtlaW4gRmVobGVyIGRyaW4gKmcqKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogKm9obmUgd29ydGUqIChTYWhhZG9vbSwgIDMuIE5vdiAxOTk5LCAwMDowNjowOSk6Cn4jISBybj1PbGxpIHJ0PTk0MTU4MzUzMCByZz1zY2htYXJybgp+IyEgdGlkPTk0MTU4MjQ3MgpiZWkgZGlyIG5pY2ggb2xsaSwgYWJlciBiZWkgbWlyLCB1bmQgZGFzIGxhZyBuaWNodCBhbiBtZWluZXIgc2NocmVpYmt1bnN0LgoKClNhaGEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiAqb2huZSB3b3J0ZSogKEx1ZywgIDMuIE5vdiAxOTk5LCAwMjowNjoxMik6Cn4jISBybj1TYWhhZG9vbSBydD05NDE1ODM5Njkgcmc9c2NobWFycm4KfiMhIHRpZD05NDE1ODI0NzIKCkxFCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSB2b2VsbGlnZSBWZXJibG9lZHVuZyAoTHVnLCAgMy4gTm92IDE5OTksIDAyOjI0OjI5KToKCk51biBpc3QgZXMgc293ZWl0OiBTSUVHIQoKRGVyIEJld2VpczoKCkVpbmUgZWluZ2VsZWd0ZSBHdXJrZSBoYXV0IERpciBhdXMgZGVyIEZlcm5lIGVpbmUgcmVpbi4KCkhhaCEKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvb2MgOykgKEFuYXRvbCwgIDMuIE5vdiAxOTk5LCAwMjo0Nzo1OSk6CltTZWhlcjpOYWNodHdpbmQga3VzY2hlbHQgc2ljaCBhbiBUZWRkeSBhbi5dCltCZWlsZWlkOlRlZGR5XSBEYW5rZSwgaWNoIHdlaXNzIGVzIGtvbW10IHZvbiBoZXJ6ZW4KCipnKiA7KQpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBvb2MgOykgKFRlZGR5LCAgMy4gTm92IDE5OTksIDAyOjQ4OjQxKToKfiMhIHJuPUFuYXRvbCBydD05NDE1OTM2Nzkgcmc9c2NobWFycm4KfiMhIHRpZD05NDE1OTM2NzkKQWVobSwgZGFzIHdhciBnYW56IGFuZGVycyB1bmQgdWViZXJoYXVwdCA6LSgoKAoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogb29jIDspIChBbmF0b2wsICAzLiBOb3YgMTk5OSwgMDI6NTA6MDUpOgp+IyEgcm49VGVkZHkgcnQ9OTQxNTkzNzIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxNTkzNjc5CklzdCBlciBuaWNodCBzdWVzcyBzbyB3aWUgZXIgamFtbWVydD8KRnJ1ZWhlciB3YXJlbiBDaGFvdGVuIG5vY2ggR0FOWkUgS0VSTEUuCgpBYmVyIGRpZSBzaW5kIG1pdCBkZXIgRXJvZWZmbnVuZyBkZXMgU3RydXZzIGFiZ2V3YW5kZXJ0LgoKQW5hdG9sIDtvKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IG9vYyA7KSAoVGVkZHksICAzLiBOb3YgMTk5OSwgMDI6NTA6MzkpOgp+IyEgcm49QW5hdG9sIHJ0PTk0MTU5MzgwNSByZz1zY2htYXJybgp+IyEgdGlkPTk0MTU5MzY3OQpadW1pbmRlc3Qgd2FyZW4gc2llIE5JRSBpbiBkZXIgWmF1YmVyZXJnaWxkZS4KClRlZGR5LCBuaWNodCBzdWVzcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIGVpbmZhY2ggc2luZCBkaWUgS2xlaW5lbiB6dSB2ZXJ1bnNpY2hlcm4uLi4uIChOZXZvaywgIDMuIE5vdiAxOTk5LCAwNDoyMjoxMik6CltBYmVudGV1ZXI6TGltcGVyYXRlXSBXaWUga29tbSBpY2ggYW4gZGllIFJhZXRzZWxzdGVpbiBQYXJ0aXR1cj8KW0FiZW50ZXVlcjpOZXZva10gcmVjaHQgZWluZmFjaC4uLmR1IG11c3N0IGRpZSByaWNodGlnZSBnZXN0ZWluc2Zvcm1hdGlvbgpbQWJlbnRldWVyOk5ldm9rXSBmaW5kZW4uLi4uLi4uZGVtIHZpZ2d5IGhlbGZlbi4uLi4udW5kIGlobiBmcmFnZW4gOykKW0FiZW50ZXVlcjpMaW1wZXJhdGVdIGFjaCBqYSBpcyBlYXN5IHdlbGNoZSBmb3JtYXRpb24/Li4uLi53ZWxjaGVyIHZpZ2d5Pz8KW0FiZW50ZXVlcjpOZXZva10gaGFzdGUgZGVuIGVyc3RlIGhpbGZlIGthc3RlbiBzY2hvbj8KCls8TWFzdGVSPjpMaW1wZXJhdGUgdmVybGFlc3N0IGFscyBMZXR6dGVyIGRpZSBFYmVuZSAnTWFlbm5lcicsIHdvcmF1ZiBkaWVzZQogICAgICAgICAgc2ljaCBpbiBlaW5lbSBCbGl0eiBva3RhcmluZW4gTGljaHRzIGF1ZmxvZXN0Ll0KCgpOZXZvaywga29wZnNjaHVldHRlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bmQgbXVwZmVsIGhhdHRlIGRvY2ggcmVjaHQgOikgKEJpZXJjaGVuLCAgMy4gTm92IDE5OTksIDA0OjM2OjIzKToKZWNob2FsbCBHYXN0MSB0ZWlsdCBEaXIgbWl0OiBXYXMgc29sbCBkZXIgU2NoZWlzcyE/ClN0cm9oYWxtIHRlaWx0IERpciBtaXQ6IGhtbW0/Pz8/Ck5ldm9rIHRlaWx0IERpciBtaXQ6IG9laD8KU3Rlcm50YWxlciB0ZWlsdCBEaXIgbWl0OiB3YXM/ClN0cm9oYWxtIHRlaWx0IERpciBtaXQ6IGFlaG0uLi4gdW0gd2FzIGdlaHRzPwpOZXZvayBzYWd0ICdCdWNrbGUgeW91ciBzZWF0YmVsdHMgRG9yb3RoeSwgJ0N1eiBLYW5zYXMgaXMgZ29pbmcgQnllLUJ5ZS4nLgpTdHJvaGFsbSBrbnVkZGVsdCBOZXZvay4KTmV2b2sgaHVlcGZ0IHVtIFN0cm9oYWxtIGhlcnVtLgpIYW5zd3Vyc3QgdGVpbHQgRGlyIG1pdDogaGFlaD8KVGVkZHkgdGVpbHQgRGlyIG1pdDogPwpOZXZvayBzYWd0OiBiaW4gbWFsIGt1cnogcmF1cywgbXVzcyBkYXMgdGVmbG9uIG51dHplbiA7KQpOZXZvayBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgTmV2b2suClN0cm9oYWxtIHRlaWx0IERpciBtaXQ6IGhhbGxvPwpOZXZvayBzYWd0ICdUaGUgQW5zd2VyIGlzIG91dCB0aGVyZSwgaXQncyB0aGUgcXVlc3Rpb24gdGhhdCBkcml2ZXMgdXMnIHVuZApnZWh0CmlucyBSZWljaCBkZXIgTmV0enRvdGVuLgpUZWRkeSB0ZWlsdCBEaXIgbWl0OiBXYXMgZnVlciBlaW4gU2NoZWlzcz8KU3Ryb2hhbG0gc2FndDogYWVobS4uLiBtYWNoc3RlIGpldHp0IGFsbGUgc3BpZWxlciBkdXJjaD8KCnVuZCBkYXMgdW0gZGllc2UgemVpdCwgd293LCBhbGxlIHdhY2ggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB1bmQgbXVwZmVsIGhhdHRlIGRvY2ggcmVjaHQgOikgKE5ldm9rLCAgMy4gTm92IDE5OTksIDA1OjE1OjQ2KToKfiMhIHJuPUJpZXJjaGVuIHJ0PTk0MTYwMDE4MyByZz1zY2htYXJybgp+IyEgdGlkPTk0MTYwMDE4MwppcyBkb2NoIGltbWVyIHdpZWRlciBzY2hvZW4gd2VubiBtYW4gc2Nod2VyIGFyYmVpdGVuZGUgTWFnaWVyIGhhdC4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogb29jIDspIChBcG9sbG9uaWEsICAzLiBOb3YgMTk5OSwgMDg6MzM6NDMpOgp+IyEgcm49VGVkZHkgcnQ9OTQxNTkzNzIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxNTkzNjc5CkRhcyBrYW5uIG1hbiBoaW50ZXJoZXIgaW1tZXIgc2FnZW4uLi4gOykKCkFwbyogKGZlaXhlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJzcGFldGV0ZXMgTG9nZmlsZSA7LSkgKE1vcmdvdGgsICAzLiBOb3YgMTk5OSwgMTA6Mjk6NTgpOgpbQWxsZ2VtZWluOkFsYm9pbl0gc2Nod3VwcApbQWxsZ2VtZWluOkFsaW5lXSBVbmQgbnU/CltBbGxnZW1laW46TXVwZmVsXSB1bm51d2FzPwpbQWxsZ2VtZWluOkFsaW5lIGRldXRldCBhdWYgQWxiaW9uXQpbQWxsZ2VtZWluOkFsaW5lXSBEZXIgaGF0IHNjaHd1cHAgZ2VtYWNodCEKW0FsbGdlbWVpbjpNdXBmZWxdIGdlaHQgZ2FybmljaHQuIGRlciB3YXIgMTc1MCB0YWdlIG5ldCBkYSA6LSkKW0FsbGdlbWVpbjpNb3Jnb3RoXSBTSUUgaGF0IHNjaHd1cHAgZ2VtYWNodApbQWxsZ2VtZWluOkFsaW5lIGhhdCBBbGJvaW4gYWxzIG1hZW5ubGljaCBpbiBlcmlubmVydW5nXQpbQWxsZ2VtZWluOlplcGh5cl0gd2llc28gU0lFPwpbQWxsZ2VtZWluOlplcGh5cl0gdW5kIEFsYmlvbiBhdWNoIGJ0dyA6KQpbQWxsZ2VtZWluOk1vcmdvdGhdIG5hIHdhcyBtZWluc3QgZHUsIGZ1ZXIgd2FzIGRhcyAnc2Nod3VwcHMnIHN0YW5kCltBbGxnZW1laW46QWxpbmVdIE1vbmNoaWljaGkga29ubnRlIG5vY2ggbmllIE1hZW5uZXIgdW5kIEZyYXVlbgpbQWxsZ2VtZWluOkFsaW5lXSBhdXNlaW5hbmRlcmhhbHRlbiwgQzQgOykKW0FsbGdlbWVpbjpNb3Jnb3RoXSBoZXkga3VtcGUoYSlsaW5lLCB3YW5uIGdlaG4gd2EgbWEgd2lkYSBzYXVmZW4/CltBbGxnZW1laW46QWxpbmVdIFNjaGF1biBtZXIgbWFsCltBbGxnZW1laW46Tm9ubmVdIHdhc24gbWl0IGZyZWl0YWcsICdsaW5jaGVuPwpbQWxsZ2VtZWluOkFwb2xsb25pYSBrb21tdCBhdWNoLl0KW0FsbGdlbWVpbjpBbGluZV0gQmluIGljaCBpbiBIYW1idXJnCltBbGxnZW1laW46QXBvbGxvbmlhXSBvY2ggbWFlbm5vLi4uCltBbGxnZW1laW46QXN0ZXJvdGhdIGtvbW10IGF1Y2g/IHdvaGluIGRlbm4/CltBbGxnZW1laW46TW9yZ290aF0gamEsIG1hZW5uZXIgc2luZCB3b2hsIGF1Y2ggZ2VudWcgZGEKW0FsbGdlbWVpbjpBbGluZSBiYWNrdCBhYmVyIHZvcmhlciBub2NoIFp3aWViZWxrdWNoZW5dCltBbGxnZW1laW46Tm9ubmVdIHdhcyBtYWNoc3RlIGluIGhhbWJ1cmc/IGthbm4gZGFzIG5pY2h0IHdhcnRlbj8KW0FsbGdlbWVpbjpBbGluZV0gTW9uY2hpY2hpcyBzaW5kIGF1Y2ggZ2VudWcgZGEgOikKW0FsbGdlbWVpbjpBbGluZV0gTmljaHQ/CltBbGxnZW1laW46QXN0ZXJvdGggZ3JpbnN0IGhpbnRlcmdydWVuZGlnLl0KW0FsbGdlbWVpbjpBbGluZSBncmluc3QgZGFzIE1vbmNoaWNoaSBhbl0KW0FsbGdlbWVpbjpNb3Jnb3RoXSBuZWluLCBpY2ggYmluIGtlaW4gbW9uY2hpY2hpIHVuZCBuaWNodCBzdWVzcyBvZGVyIG5pZWRsaWNoCltBbGxnZW1laW46TW9yZ290aF0gb2RlciBzb3dhcwpbQWxsZ2VtZWluOk5vbm5lXSBhbHNvIGVpbiBwYWFyIChvZGVyIGVpbmVuKSB3aXJkIGdlYmVuIC4tKQpbQWxsZ2VtZWluOkphbWFsc2tpIGdyaW5zdCBzbyB2b3JkZXJncnVlbmRpZywgZGFzcyBzZWluZSBadW5nZSByYXVzcG9wcHQuXQpbQWxsZ2VtZWluOk1vcmdvdGggZ3JpbnN0XQpbQWxsZ2VtZWluOkFwb2xsb25pYSBncmluc3QuXQpbQWxsZ2VtZWluOkFzdGVyb3RoXSBuYSBkYW5uIHBvcHAgbWEgOykpCltBbGxnZW1laW46QWxpbmVdIEljaCBzZWggc2Nob24sIGljaCBtdXNzIERpciBtYWwgd2llZGVyIFpvZXBmY2hlbiBmbGVjaHRlbiA6KQpbQWxsZ2VtZWluOk1vcmdvdGhdIGR1IGJpc3QgamEgbmljaHQgZGEKW0FsbGdlbWVpbjpBcG9sbG9uaWFdIGRhbm4gbWFjaCBpY2ggZGFzIDopCltBbGxnZW1laW46TW9yZ290aCBzdHJlY2t0IEFsaW5lIGRpZSBadW5nZSByYXVzXQpbQWxsZ2VtZWluOk1vcmdvdGhdIGFlaApbQWxsZ2VtZWluOk1vcmdvdGggZGVua3QgLiBvIE8gKHdlaWJlcildCltBbGxnZW1laW46QWxpbmVdIERlc3dlZ2VuIGJpc3RlIG5pY2h0IHN1ZXNzIHVuZCBuaWVkbGljaCA6KQpbQWxsZ2VtZWluOkFsaW5lXSBFciBoYXQgc2Nob2VuZSBIYWFyZSwgQXBvbGxvbmlhIDopCltBbGxnZW1laW46QXBvbGxvbmlhIGRlbmt0IC4gbyBPICh2aWVsbGVpY2h0IHdlaWwgZXIgRmVsbCBoYXQ/Pz8/PyBzbwpbQWxsZ2VtZWluOk5vbm5lXSBoYXVwdHNhY2hlLCBlcyBpc3QgZWluIGZvdG9hcGFyYXQgZGEhCltBbGxnZW1laW46QXN0ZXJvdGhdIDspCltBbGxnZW1laW46SmFtYWxza2ldIFVudGVyIGRlbiBBY2hzZWxuPwpbQWxsZ2VtZWluOkFsaW5lIG5pY2t0IEFwb2xsb25pYSB6dV0KW0FsbGdlbWVpbjpNb3Jnb3RoXSBkYSBhdWNoIDstKQpbQWxsZ2VtZWluOkFsaW5lXSBEYSBoYWIgaWNoIG5vY2ggbmVuIFBob3RvIHZvbiwgQXBvKgpbQWxsZ2VtZWluOkFzdGVyb3RoXSBuYSB3ZW5uIGlociBrZWluZSBhbmRlcmVuIHNvcmdlbiBoYWJ0IDspKQpbQWxsZ2VtZWluOkFwb2xsb25pYV0gbXVzcyBpY2ggc2VoZW4gOikKW0FsbGdlbWVpbjpNb3Jnb3RoXSB3YWFhaCBhbGluZS4gYmxvc3MgbmljaHQKW0FsbGdlbWVpbjpBcG9sbG9uaWFdIG5lIE1lbmdlLCBBc3Rlcm90aCwgYWJlciBkYSBtdXNzIGljaCBqYSBuaWNoIHN0YWVuZGlnCltBbGxnZW1laW46QXBvbGxvbmlhXSBkcmFuIGRlbmtlbiwgb2Rlcj8gOikKW0FsbGdlbWVpbjpBc3Rlcm90aF0gYXVjaCB3aWVkZXIgd2FociA7KQpbQWxsZ2VtZWluOkFsaW5lXSBNb25jaGljaGkgbWl0IG5hY2t0ZW0gT2JlcmtvZXJwZXIgOikgOikKW0FsbGdlbWVpbjpBc3Rlcm90aF0gdWl1aQpbQWxsZ2VtZWluOkFsaW5lXSBXYXMgemFobHN0ZSBNb3Jnb3RoPwpbQWxsZ2VtZWluOk1vcmdvdGhdIGlpaWlpaWtzLCB3b2hlciB3YXIgZGFzIGRlbm4gbm9jaG1hbApbQWxsZ2VtZWluOk11cGZlbF0gYmVpbSBuYWVjaHN0ZW4gdHJlZmZlbiBrb21tdCBtb3Jnb3RoIG1pdCBtaWxpdGFlcmlzY2hlbQpbQWxsZ2VtZWluOk11cGZlbF0gYnVlcnN0ZW5zY2huaXR0IC0gdW5kIGtlaW5lciBlcmtlbm50IGlobiA6LSkKW0FsbGdlbWVpbjpBbGluZSBzYWd0IG51ciBCZXJsaW4sIG1vcmdlbnMgdm9yIGRlbSBXYXNjaGVuIHVuZCBkZW0gRnJ1aGVzdHVlY2tdCltBbGxnZW1laW46TW9yZ290aF0gaG0sIHdpZSB3YWVycyBtaXQgMiBtdWVuemVuIHVuZCBuZW0gZ3JhdWVuIHN0ZWluPwpbQWxsZ2VtZWluOlplcGh5ciByb3RmbHQgb2IgZGVyIFZvcnN0ZWxsdW5nLl0KW0FsbGdlbWVpbjpNb3Jnb3RoXSBuaXhkYS4gZGVuIGhhdHRlIGljaCBtYWwuIGRlbiBnaWJ0cyBuaWNodCBtZWhyCltBbGxnZW1laW46SmFtYWxza2ldIFdhcyBpc3QgbWl0IEJlcmxpbiB2b3IgRnJldXN0dWNrPwpbQWxsZ2VtZWluOkFsaW5lXSBCZWkgZGVtIE9iZXJrb2VycGVyIG11ZXNzdGUgZXMgc2Nob24gZWluZSBCdWVyc3RlbnJhc3VyCltBbGxnZW1laW46QWxpbmVdIHNlaW4sIE11cGZlbCA7KQpbQWxsZ2VtZWluOk1vcmdvdGggZ3J1bW1lbHRdCltBbGxnZW1laW46TXVwZmVsIGdyaW5zdCBhbGluZSBhbl0KW0FsbGdlbWVpbjpNb3Jnb3RoIHdpbGwgbmljaHQgcmFzaWVydCB3ZXJkZW5dCltBbGxnZW1laW46QWxpbmUgZ3JpbnN0XQpbQWxsZ2VtZWluOk11cGZlbF0gYWxpbmUgd2FzIG1hY2hzdCBkdSBkYSBtaXQgZGVyIHNjaGFmc2NoZXJtYXNjaGluZT8gOi0pCltBbGxnZW1laW46QXN0ZXJvdGhdIGtvbW10IGRyYXVmIG9uICx3byA7KQpbQWxsZ2VtZWluOk5vbm5lXSB1bSB3ZWxjaGUgaGFhcmUgZ2VodHMgZWlnZW50bGljaD8KW0FsbGdlbWVpbjpBc3Rlcm90aF0gZWJlbiA6KSkKW0FsbGdlbWVpbjpNb3Jnb3RoXSBpY2ggYmluIGtlaW4gc2NoYWYKW0FsbGdlbWVpbjpBbGluZV0gU2VpdCB3YW5uIHdpcmQgaGllciBuYWNoIGRlbSBXb2xsZW4gdm9uaXJnZW5kamVtYW5kZW4KW0FsbGdlbWVpbjpBbGluZV0gZ2VmcmFndD8KW0FsbGdlbWVpbjpNb3Jnb3RoXSBkaWUsIGRpZSBiZWkgZGlyIGluIDEwIGphaHJlbiB3YWNoc2VuIHdlcmRlbiBub25uZQpbQWxsZ2VtZWluOkFwb2xsb25pYV0geW8sIGljaCB3dWVyZCBhdWNoIG5pY2h0IGdlZnJhZ3QsIG9iIGljaCBkaWUKW0FsbGdlbWVpbjpBcG9sbG9uaWFdIFdlaWhuYWNodHNlbGZlIG1hY2hlbiB3aWxsLCBkYXMgd3VyZGUgc28gYmVzY2hsb3NzZW4gOygKW0FsbGdlbWVpbjpNb3Jnb3RoXSBhbHNvIFplcGh5ciwgenUgZHJpdHQ/Pz8KW0FsbGdlbWVpbjpOb25uZV0gYXJnbCwgd28gc29sbGVuIGRlbm4gbm9jaCB1ZWJlcmFsbCBoYWFyZSB3YWNoc2VuIGJlaSBtaXQ/PyEKW0FsbGdlbWVpbjpNdXBmZWxdIGphIGF1ZiBkZW4gemFlaG5lbiByZWljaHRzIGpldHp0CltBbGxnZW1laW46QWxpbmVdIExhc3MgbWFsIG5hY2hzZWhlbiwgTm9ubmUKW0FsbGdlbWVpbjpNb3Jnb3RoXSBwYXNzIGF1ZiBhbGluZSwgZGFzIGlzdCBtZWluIHNvaG4uCltBbGxnZW1laW46QWxpbmVdIEJlaWxlaWQsIG5vbm5lCltBbGxnZW1laW46TGFuZmVhcl0gdG9jaHRlciBtZWluc3QgZHUgd29obCA6KQpbQWxsZ2VtZWluOk1vcmdvdGhdIHdpZSBhdWNoIGltbWVyLCBlaW4gYWJsZWdlciBoYWx0CltBbGxnZW1laW46QWxpbmVdIEhhdCBlciBEZWluZW4gSGFhcnd1Y2hzIGdlZXJidD8KW0FsbGdlbWVpbjpOb25uZV0gb2NoIGdlaHQsIG51ciBkaWUgZnJhdWVuIGhhYmVuIHN0YWVuZGlnIGhhYXJlIGltIG11bmQgOi0oCltBbGxnZW1laW46TW9yZ290aCByb3RmbHRdCltBbGxnZW1laW46TGFuZmVhciBncnVlYmVsdC5dCltBbGxnZW1laW46Tm9ubmVdIGljaCBiaW4gTUFFTk5MSUNIIQpbQWxsZ2VtZWluOk11cGZlbCBncmluc3RdCltBbGxnZW1laW46QXN0ZXJvdGhdIGFjaCB3YXM/CltBbGxnZW1laW46TGFuZmVhcl0gamFqYSA6LSkKW0FsbGdlbWVpbjpBbGluZV0gRGFubiBzaW5kIGVzIGRpZSBmYWxzY2hlbiBQcmFrdGlrZW4sIE5vbm5lCltBbGxnZW1laW46TGFuZmVhcl0gc2NobGllc3NlbiB3aXIgZWluZW4gS29tcHJvbWlzczogREFTIE5vbm5lIDopCltBbGxnZW1laW46QXN0ZXJvdGgga2ljaGVydF0KW0FsbGdlbWVpbjpNb3Jnb3RoIG5pY2t0XQpbQWxsZ2VtZWluOkFwb2xsb25pYSBndWNrdCBkYSBqZXR6dCBtYWwgZ2VuYXUgbmFjaC5dCltBbGxnZW1laW46TGFuZmVhcl0gZGEgZnVlaGx0IHNpY2ggYXVjaCBrZWluZSBGcmFrdGlvbiBiZWxlaWRpZ3QgOikKW0FsbGdlbWVpbjpBbGluZV0gQVBPTExPTklBIQpbQWxsZ2VtZWluOkFzdGVyb3RoXSBzZWkgd2Vpc3Mgc2ljaGVyLCB3aWUgc2llIGhlaXNzdCA7KQpbQWxsZ2VtZWluOkFsaW5lXSBMYXNzIGRpZSBTdGllbGF1Z2VuIHZvbiBOb25uZSEKW0FsbGdlbWVpbjpNb3Jnb3RoXSBoZXkgYWxpbmUuIHdvIG5peCBpcyBrYW5uIHNpZSBuaXggc2NoYXVlbgpbQWxsZ2VtZWluOkFwb2xsb25pYSBncmluc3QgZnJlY2guXQpbQWxsZ2VtZWluOk11cGZlbF0gbm9ubmUgaGF0IHN0aWVsYXVnZW4/CltBbGxnZW1laW46Tm9ubmVdIG9rYXkuIGljaCBoYWJlIG1pY2ggZ2ViZXVndCA7LSkKW0FsbGdlbWVpbjpBbGluZV0gRHUgbXVzc3QgZXMgamEgd2lzc2VuLCBNb3Jnb3RoIDopCltBbGxnZW1laW46TW9yZ290aF0gZHUgc2F1CltBbGxnZW1laW46SmFtYWxza2ldIEdFQlVFQ0tUIGhhc3QgZHUgZGljaApbQWxsZ2VtZWluOlplcGh5ciBzdGVsbHQgc2ljaCBOb25uZSBtaXQga3J1bW1lbiBTdGllbGF1Z2VuIHZvci5dCltBbGxnZW1laW46QWxpbmUgc3RlbGx0IHNpY2ggbGllYmVyIGdhciBuaXggdm9yXQpbQWxsZ2VtZWluOk1vcmdvdGhdIG5hIG9iIGRlciBzdGllbCBrcnVtbSBpc3QsIHdpcmQgd29obCBhdWNoIGFwb2xsb25pYQpbQWxsZ2VtZWluOk1vcmdvdGhdIG5hY2hzY2hhdWVuIG11ZXNzZW4KW0FsbGdlbWVpbjpMYW5mZWFyIGtpY2hlcnQuXQpbQWxsZ2VtZWluOkFzdGVyb3RoIHBydXN0ZXRdCltBbGxnZW1laW46Tm9ubmVdIHdpZXNvIG5hY2hzY2hhdWVuPyB3YXMgZHJhbiBhZW5kZXJuIQpbQWxsZ2VtZWluOkFwb2xsb25pYSBwcnVzdGV0IGxvcy5dCltBbGxnZW1laW46TGFuZmVhcl0gdW5kIGJ1c2NoaWcgPwpbQWxsZ2VtZWluOk11cGZlbCBsYWNodF0KW0FsbGdlbWVpbjpBbGluZV0gQWJlciB3ZW5uLCBkYW5uIGJpdHRlIG1pdCBhdXNmdWVocmxpY2hlbiBCZXJpY2h0IGluIGRlciBNUEEKW0FsbGdlbWVpbjpBc3Rlcm90aF0gbWluZGVzdGVucwpbQWxsZ2VtZWluOkFsaW5lXSBXaWUgYWVuZGVybj8gR2VyYWRlIGJpZWdlbj8KW0FsbGdlbWVpbjpNb3Jnb3RoXSBoZXkgYXBvbGxvbmlhLCB3aWxsc3RlIGVpbiBidWVnZWxlaXNlbj8KW0FsbGdlbWVpbjpNb3Jnb3RoIGdyaW5zdCBBbGluZSBhbl0KW0FsbGdlbWVpbjpBcG9sbG9uaWFdIG5hIGd1dCwgaWNoIHdlcmQncyBhbGxlbiBJbnRlcmVzc2llcnRlbiB1bmQgbmljaHQKW0FsbGdlbWVpbjpBcG9sbG9uaWFdIEludGVyZXNzaWVydGVuIGVyemFlaGxlbiA6KQpbQWxsZ2VtZWluOkFzdGVyb3RoIGxhdXNjaHQuXQpbQWxsZ2VtZWluOkFwb2xsb25pYV0gb2IgZGEgd2FzIGlzdCB1bmQgd2VubiBqYSwgaW4gd2VsY2hlciBGb3JtIDspCltBbGxnZW1laW46QWxpbmVdIEJ1ZWdlbGVpc2VuICpwcnV1dXV1dXV1dXN0KgpbQWxsZ2VtZWluOk5vbm5lXSBhZWgsIGRhcyBtaXQgZGVtIGJ1ZWdlbGVpc2VuIGJlc3ByZWNoZW4gd2lyIGFiZXIgdm9yaGVyCltBbGxnZW1laW46Tm9ubmVdIG5vY2g/IQpbQWxsZ2VtZWluOlplcGh5cl0gUmFnZXNwaWVsZXIgZ2VzdWNodApbQWxsZ2VtZWluOkxhbmZlYXIgcmVpY2h0IFNjaHJhdWJzdG9jayB1bmQgSGFtbWVyLl0KW0FsbGdlbWVpbjpBcG9sbG9uaWFdIE5vbm5lLCBfaWNoXyBiaW4gbmUgRnJhdSwgZGEgd2lyZCBuaXggbWVociBiZXNwcm9jaGVuIDopCltBbGxnZW1laW46TW9yZ290aF0gbWFuZ2VsIGlzdCBiZXNzZXIsIGphIDstKQpbQWxsZ2VtZWluOkFsaW5lXSBOaW1tIGxpZWJlciBlaW4gV2FmZmVsZWlzZW4sIGRhcyB3aXJrdCBkYW5uIHZvbiBiZWlkZW4KW0FsbGdlbWVpbjpBbGluZV0gU2VpdGVuIDopCltBbGxnZW1laW46TW9yZ290aCBsYWNodF0KW0FsbGdlbWVpbjpBc3Rlcm90aCBrYW5uIHNpY2gga2F1bSBub2NoIGhhbHRlbl0KW0FsbGdlbWVpbjpBbGluZV0gQXVzc2VyZGVtIGdpYnQgZGFzIGVpbiBodWVic2NoZXJlcyBNdXN0ZXIKW0FsbGdlbWVpbjpBcG9sbG9uaWFdIHVuZCBnaWJ0IGVpbiBzY2hvZW5lcyBNdXN0ZXIsIGphIDopCltBbGxnZW1laW46Tm9ubmVdIGljaCB3aWxsIGtlaW5lIGdlcmFldGUgKnppdHRlcioKW0FsbGdlbWVpbjpBbGluZSBncmluc3QgQXBvbGxvbmlhIGFuXQpbQWxsZ2VtZWluOk1vcmdvdGhdIHNjaGVpc3NlLCB3ZW5uIGpldHp0IGVpbmVyIHJlaW5rb21tdC4uLi4KW0FsbGdlbWVpbjpBcG9sbG9uaWEgc2NodWV0dGVsdCBBbGluZSBkaWUgSGFlbmRlLl0KW0FsbGdlbWVpbjpOb25uZV0gb2J3b2hsLCBkYW5uIGVydWVicmlnZW4gc2ljaCBub3BwZW4ta29uZG9tZSA7LSkKW0FsbGdlbWVpbjpNdXBmZWxdIC4uLnVuZCBkYW5uIGViZW4gZHVyY2hmYXhlbgpbQWxsZ2VtZWluOk1vcmdvdGhdIG51ciBtaXQgZGVtIGVyZGJlZXItZ2VzY2htYWNrIHdpcmRzIGRhbm4ga3JpdGlzY2gKW0FsbGdlbWVpbjpBc3Rlcm90aCBwcnVzdGV0IGxhdXQgbG9zIDspXQpbQWxsZ2VtZWluOkFsaW5lXSBXaWVzbz8gTGFjaHN0IER1IHVuZCB3aWxsc3QgZGFiZWkgbmljaHQgZXJ3aXNjaHQgd2VyZGVuLApbQWxsZ2VtZWluOkFsaW5lXSBvZGVyIHNjaGF1c3RlIG5hY2ggb2IgbWFuIGJlaSBEaXIgYXVjaCB3YXMgcmljaHRlbiBtdXNzPwpbQWxsZ2VtZWluOkFsaW5lXSBNb3Jnb3RoPwpbQWxsZ2VtZWluOk1pbmRibGFkZV0gSG0sIG11c3MgaWNoIGpldHp0IHdpcmtsaWNoIG1laW5lbiBrbGVpbmVuIEthcmF0ZWthCltBbGxnZW1laW46TWluZGJsYWRlXSBlaW5sb2dnZW4sIHVtIGluIGdpbGRlbi5rYXJhdGUgd2FzIHNjaHJlaWJlbiB6dQpbQWxsZ2VtZWluOk1pbmRibGFkZV0gZHVlcmZlbj86KSBOZWVlZWUhOikpCltBbGxnZW1laW46TW9yZ290aF0gZXMgd2FlcmUgc2VociBmcmFnd3VlcmRpZywgd2VubiBpY2ggaGllciBoYWxiIHRvdGxhY2hlbmQKW0FsbGdlbWVpbjpNb3Jnb3RoXSBhdWYgZGVtIHNjaHJlaWJ0aXNjaCBsaWVnZSB1bmQgamVtYW5kIHJlaW5rb21tdCwgamEKW0FsbGdlbWVpbjpIb2JvXSByYWdlPwpbQWxsZ2VtZWluOkFwb2xsb25pYV0gbWVpbmUgS29sbGVnaW4gZ3Vja3Qgc2Nob24gbGVpY2h0IHNjaHJhZWcgdm9uIGRlciBTZWl0ZQpbQWxsZ2VtZWluOkFwb2xsb25pYV0gOikKW0FsbGdlbWVpbjpBbGluZV0gT2J3b2hsIGJlaSBkZW4gR2VyYWV0ZW4gZmFlbGx0IG1pciBlaW4sIGRhc3MgaWNoIG1hbCBmdWVyCltBbGxnZW1laW46QWxpbmVdIE1vcmdvdGggZWluZW4gTG9ja2Vuc3RhYiBtaXRicmluZ2VuIHdvbGx0ZS4uLi4KW0FsbGdlbWVpbjpOb25uZV0gZHUgaGFzdCB3ZW5pZ3N0ZW5zIGRlaW4gZWlnZW5lcyBidWVybywgaGllciBrb21tZW4gbnVyCltBbGxnZW1laW46Tm9ubmVdIHNjaGllZmUgYmxpY2tlbiB2b24gZGVuIGFuZGVyZW4gc2NocmVpYnRpc2NoZW4KW0FsbGdlbWVpbjpNb3Jnb3RoXSBpcyBzY2hvbiBrbGFyCltBbGxnZW1laW46TW9yZ290aCBncmluc3QgTm9ubmUgYW5dCltBbGxnZW1laW46WmVwaHlyIGVtcGZpZWhsdCBBbGluZSByb3NhIFNjaGxlaWZlbmJhbmQgdW5kIHZpZWwgR2VkdWxkLl0KW0FsbGdlbWVpbjpBbGluZV0gQmVpIGRlbiBCbGlja2VuIGhpbGZ0IGJlc3RpbW10IGF1Y2ggZWluIFdhZmZlbGVpc2VuIDspCltBbGxnZW1laW46TXVwZmVsXSBsb2NrZW5zdGFiPyBwZXItdmVycyA6KQpbQWxsZ2VtZWluOk1vcmdvdGhdIGxvY2tlbnN0YWI/IGFjaCBkZXNoYWxiIGlzdCBkYXMgYmVpIG5vbm5lIGtydW1tLi4uIEFVQQpbQWxsZ2VtZWluOkxhbmZlYXIga2ljaGVydC5dCltBbGxnZW1laW46Tm9ubmVdIGhleSwgZGFzIHdhciBiaXNoZXIgZWluZSB2ZXJtdXR1bmchIHdpZXNvIHdpcmQgZGFzIGpldHp0IGFscwpbQWxsZ2VtZWluOk5vbm5lXSB0YXRzYWNoZSBkYXJnZXN0ZWxsdD8KW0FsbGdlbWVpbjpNb3Jnb3RoXSAtLSBFbmQgb2YgZmlsZSAtLQpbQWxsZ2VtZWluOkFsaW5lXSBNZWluc3RlIG1pdCByb3NhIFNjaGxlaWZlbmJhbmQgZmVzdGJpbmRlbiwgZ2VyYWRlIHppZWhlbiB1bmQKW0FsbGdlbWVpbjpBbGluZV0gZGFubiBtaXQgdmllbCBHZWR1bGQgd2FydGVuIGJpcyBlciBnZXJhZGUgd2lyZCwgWmVwaHlyPwpbQWxsZ2VtZWluOlNsYXZlY2hlbl0gaG9lcnQgZGFzIGplbWFuZCA/CltBbGxnZW1laW46Qmx1ZW1lbF0gTmUKW0FsbGdlbWVpbjpEaWVkZXJdIG5laW4KW0FsbGdlbWVpbjpTbGF2ZWNoZW5dIHVpLCBrbGFzc2UgOikKW0FsbGdlbWVpbjooSG9ibyldIGphCltBbGxnZW1laW46QXBvbGxvbmlhXSB3ZW5uIGFuIGRlciBTY2hsZWlmZSBlaW4gMjAgUGZ1bmQtR0V3aWNodCBkcmFuaGFlbmd0LApbQWxsZ2VtZWluOkFwb2xsb25pYV0gd2lyZCdzIHZpZWxsZWljaHQgZ3JhZGUuLi4KW0FsbGdlbWVpbjpNb3Jnb3RoXSBhYmVyIGluIGRpZSBmYWxzY2hlIHJpY2h0dW5nCltBbGxnZW1laW46SmFtYWxza2ldIGRvb2ZlciBuYW1lCltBbGxnZW1laW46Tm9ubmVdIGRhcyBrb21tdCBhdWYgZGllIHN0ZWxsdW5nIGFuCltBbGxnZW1laW46TGFuZmVhciBzdGVsbHQgTm9ubmUgYXVmIGRlbiBLb3BmLl0KW0FsbGdlbWVpbjpBcG9sbG9uaWFdIGRhcyBrYW5uIG1hbiBpbSB3YWhyc3RlbiBzaW5uZSBkZXMgd29ydGVzICdnZXJhZGViaWVnZW4nCltBbGxnZW1laW46Tm9ubmVdIGljaCBrb21tZSBmcmVpdGFnIG5pY2h0LCBkYXMgd2lyZCBtaXIgenUgZ2VmYWVocmxpY2gKW0FsbGdlbWVpbjpNdXBmZWwgZ3JpbnN0XQpbQWxsZ2VtZWluOkFsaW5lXSBNYW4ga2FubiBkYSBhdWNoIGVpbmVuIERyYWh0IGR1cmNoemllaGVuLCBkYW1pdCBlcyBhdWNoCltBbGxnZW1laW46QWxpbmVdIGdlcmFkZSBibGVpYnQKW0FsbGdlbWVpbjpBcG9sbG9uaWFdIEZlaWdsaW5nIDspCltBbGxnZW1laW46TW9yZ290aF0gZHUgYXJtZXIuCltBbGxnZW1laW46TGFuZmVhcl0gYXVhIDopCltBbGxnZW1laW46QXBvbGxvbmlhXSBzbyB3YXMgbmVubnQgc2ljaCBkYW5uIHBpZXJjaW5nCltBbGxnZW1laW46TW9yZ290aF0gZGVyIG11c3MgYWJlciBkaWNrIHNlaW4sIHNvbnN0IGhhZWx0IGRlciBkYXMgZ2V3aWNodCBuaWNodApbQWxsZ2VtZWluOkFsaW5lIHJvdGZsdF0KW0FsbGdlbWVpbjpNb3Jnb3RoXSBsYWVuZ3MsIG5pY2h0IHF1ZXIKW0FsbGdlbWVpbjpMYW5mZWFyXSBlaW4gYWx1cm9ociBsYWVuZ3MgZWluZnVlaHJlbiA/IDopCltBbGxnZW1laW46TXVwZmVsXSBvZGVyIHNvCltBbGxnZW1laW46TW9yZ290aF0gYWx1PyBicmVubnQgZGFzIG5pY2h0IGJlaW0gcGlua2Vsbj8KW0FsbGdlbWVpbjpNb3Jnb3RoXSBlZGVsc3RhaGwgaXMgZGEgYmVzc2VyIDstKQpbQWxsZ2VtZWluOk11cGZlbF0gZ29sZApbQWxsZ2VtZWluOkFwb2xsb25pYV0geW8sIGRlciByb3N0ZXQgbmljaHQgOikKW0FsbGdlbWVpbjpBbGluZV0gV2llIGhlaXNzdCBlcyBzbyBzY2hvZW46IFdlciBzY2hvZW4gc2VpbiB3aWxsIG11c3MgbGVpZGVuCltBbGxnZW1laW46TXVwZmVsXSAiZGVyIG1hbm4gbWl0IGRlbSBnb2xkZW5lbiByb2hyIiA6LSkKW0FsbGdlbWVpbjpNb3Jnb3RoXSBoYWIgaWNoIGdlbGl0dGVuCltBbGxnZW1laW46TGFuZmVhciBoYXQgZGEgbWFsIGltIEJpby11bnRlcnJpY2h0IG5lIGhhZXNzbGljaGUKW0FsbGdlbWVpbjpBbGluZV0gV2llIE1vcmdvdGgsIHNhZyBibG9zcyBiZWkgRGlyIGlzdCBlciBnZXJhZGU/Pz8/CltBbGxnZW1laW46TGFuZmVhciBwcnVzdGV0Ll0KW0FsbGdlbWVpbjpNb3Jnb3RoIHNjaHdlaWd0IGpldHp0IG1hbF0KW0FsbGdlbWVpbjpMYW5mZWFyIG11c3RlcnQgTW9yZ290aF0KW0FsbGdlbWVpbjpOb25uZV0gd2VubiBlciBhbiBkaWNoIGRlbmt0LCBhbGluZSwgaW1tZXIKW0FsbGdlbWVpbjpNYWhhdG11XSBEZXIgTnVsbHZla3RvciBpc3Qgc296dXNhZ2VuIGtlcnplbmdlcmFkZS4KW0FsbGdlbWVpbjpNb3Jnb3RoXSBoZXksIGZpbmdlciB3ZWcKW0FsbGdlbWVpbjpNb3Jnb3RoIG5pY2t0IE5vbm5lIHp1XQpbQWxsZ2VtZWluOk5vbm5lXSB3ZXIga2FubiBzaWNoIGJlaSAnbGluY2hlbiBzY2hvbiB6dXJ1ZWNraGFsdGVuYApbQWxsZ2VtZWluOkFsaW5lIGlzdCBzaWNoIG5pY2h0IHNpY2hlciwgb2IgZGFzIGpldHp0IGVpbiBLb21wbGltZW50IHdhciwgb2RlcgpbQWxsZ2VtZWluOk1vcmdvdGhdIGdlbmF1CltBbGxnZW1laW46Q2xheW1vcmVdIGRpZSBzdGVybmUgbmFjaCBkZW4gZ2VnZW5zdGFlbmRlbiBpbSBsYWRlbiwgemVpZ2VuIGRpZSBhbgpbQWxsZ2VtZWluOkNsYXltb3JlXSB3ZWxjaGUgZ3VldGUgZGVyIGdlZ2Vuc3RhbmQgaGF0Pz8KW0FsbGdlbWVpbjpBcG9sbG9uaWFdIGhtbW1tCltBbGxnZW1laW46TW9yZ290aCBrdXNjaGVsdCBzaWNoIHNjaG51cnJlbmQgYW4gQWxpbmVdCltBbGxnZW1laW46QWxpbmVdIEFsbGUhIE5vbm5lISBBbGxlIQpbQWxsZ2VtZWluOkFsaW5lXSBXYWhoaGhoaGhoaGgKW0FsbGdlbWVpbjpOb25uZV0gbW1oLCBkaWUga29lbm5lbiBkYXMgd29obCBudXIgZ3V0IHZlcmJlcmdlbgpbQWxsZ2VtZWluOkFwb2xsb25pYSBwcnVzdGV0IGxvcy5dCltBbGxnZW1laW46QWxpbmVdIEVpbiBwZWx6aWdlcyBVbmdldHVlbSBzY2htaWVndCBzaWNoIGFuIG1pY2ggYW4hCltBbGxnZW1laW46TW9yZ290aF0gaGV5LCBpY2ggd2FyIG1hbCBlaW4gcGFudGhlciBpbSBmcnVlaGVyZW4gbGViZW4KW0FsbGdlbWVpbjpBcG9sbG9uaWFdIGFoIGphLCBkYWhlciBkYXMgZmVsbApbQWxsZ2VtZWluOk1vcmdvdGhdIGVpbiBwYWFyIHNhY2hlbiBzaW5kIGhhbHQgdWVicmlnIGdlYmxpZWJlbgpbQWxsZ2VtZWluOkFsaW5lXSBWb20gR2VydWNoIGhlciBnbGF1YiBpY2ggRGlyIGRhcyB1bmdlcHJ1ZWZ0IDspCltBbGxnZW1laW46TGFuZmVhcl0gd29obCBlaGVyIGVpbiBGYXVsdGllciA6KQpbQWxsZ2VtZWluOk1pbmRibGFkZV0gV29obCBlaGVyIG5lbiBTY2htdXNla2FldHpjaGVuIE1vcmdvdGghOykKW0FsbGdlbWVpbjpNb3Jnb3RoIG5pY2t0IEFwb2xsb25pYSB6dV0KW0FsbGdlbWVpbjpBcG9sbG9uaWFdIGF1Y2ggV2lkZXJoYWtlbiBhbSAqSHVzdCoKW0FsbGdlbWVpbjpMYW5mZWFyXSBhYmVyIGVpbiBzdWVzc2VzCltBbGxnZW1laW46TW9yZ290aF0gaG1wZiAqZ3J1bW1lbCBNaW5kYmxhZGUgYW4qCltBbGxnZW1laW46Q2xheW1vcmVdIGFlaC4uLiBkaWUgc3Rlcm5lIGluIGRlciBzYWNoZW5saXN0ZSBpbSBsYWRlbiAgID8/CltBbGxnZW1laW46Q2xheW1vcmVdIG1hZ2llPz8KW0FsbGdlbWVpbjpBbGluZV0gV29oZXIgd2Vpc3MgRHUgZGFzLCBBcG9sbG9uaWE/CltBbGxnZW1laW46QXBvbGxvbmlhXSBpY2ggaGFiIG5lbiBLYXRlciB6dWhhdXNlIDspCltBbGxnZW1laW46TGFuZmVhcl0gcXVhbGl0YWV0LCBDbGF5bW9yZQpbQWxsZ2VtZWluOkFsaW5lXSBLYXN0cmllcnQ/CltBbGxnZW1laW46TW9yZ290aF0gY2xhdWRpYT8KW0FsbGdlbWVpbjpOb25uZV0gY2xhdWRpYSBpc3QgYWJlciBzY2hvbiBiZWkgZWxlZmFudGVuCltBbGxnZW1laW46QXBvbGxvbmlhXSBhYmVyIG5hIGphLCBkYXMga29lbm50Li4uIE1PUkdPVEghISBEYXMgaXN0IGtlaW4gSHVuZApbQWxsZ2VtZWluOkFwb2xsb25pYV0gdW5kIGRhdCBWaWVoIGlzdCBrYXN0cmllcnQKW0FsbGdlbWVpbjpBcG9sbG9uaWFdIER1IGF1Y2g/CltBbGxnZW1laW46QWxpbmVdIE1vcmdvdGggamEgdmllbGxlaWNodCBhdWNoPwpbQWxsZ2VtZWluOk1vcmdvdGhdIGljaD8gd29oZXIgc29sbCBkYW5uIG5vbm5lIGtvbW1lbj8KW0FsbGdlbWVpbjpBbGluZSBncmluc3QgQXBvbGxvbmlhIGFuXQpbQWxsZ2VtZWluOkxhbmZlYXIgd2FlbHp0IHNpY2guXQpbQWxsZ2VtZWluOk1haGF0bXVdIEVpbnMgaW50ZXJlc3NpZXJ0IG1pY2g6IEhhdCBkaWUgJ25lIFp1bmdlLCBkaWUgS2F0emU/CltBbGxnZW1laW46QXBvbGxvbmlhXSBuYSBqYSwgdmllbGxlaWNodCBnYWIncyBkYSBzbyduIGxldWNodGVuZGVuIFN0ZXJuIGFtCltBbGxnZW1laW46QXBvbGxvbmlhXSBIaW1tZWwuLi4KW0FsbGdlbWVpbjpNb3Jnb3RoXSBidHcgbm9ubmU6IGNsYXVkaWEgd2FyIGJlaSBtb2J5IGRpY2sgYW5nZWtvbW1lbgpbQWxsZ2VtZWluOkxhbmZlYXIgc2NoYXV0IHNpY2ggTm9ubmUgYW4gdW5kIHNhZ3Q6IEVsZWZhbnQgOildCltBbGxnZW1laW46QWxpbmVdIE5vbm5lIHNpZWh0IERpciBlaCBrYXVtIGFlaG5saWNoCltBbGxnZW1laW46Tm9ubmVdIGdvdHQgc2VpIGRhbmshCltBbGxnZW1laW46TW9yZ290aF0gREVSIGhhdHRlIGdhciBuaWNodHMgZGFtaXQgenUgdHVuCltBbGxnZW1laW46QWxpbmVdIExvZ2d0IGRhcyBoaWVyIGVpZ2VudGxpY2ggamVtYW5kIG1pdD8KW0FsbGdlbWVpbjpBcG9sbG9uaWEgZ3JpbnN0IE1haGF0bXUgYW4uXQpbQWxsZ2VtZWluOk1vcmdvdGhdIGljaApbQWxsZ2VtZWluOk5vbm5lXSBzb25zdCBoYWV0dGUgaWNoIGF1Y2ggaW1tZXIgbWVuc3RydWllcmVuZGUgZnJhdWVuIGF1ZiBkZW0KW0FsbGdlbWVpbjpOb25uZV0gdC1zaGlydApbQWxsZ2VtZWluOk1vcmdvdGhdICp3YWVseioKW0FsbGdlbWVpbjpMYW5mZWFyIGtpY2hlcnQuXQpbQWxsZ2VtZWluOkFsaW5lXSBpaWlpaGhoaApbQWxsZ2VtZWluOkFsaW5lXSBXZXIgaGF0IGRlbm4gc293YXM/CltBbGxnZW1laW46TW9yZ290aCBuaWNodF0KW0FsbGdlbWVpbjpMYW5mZWFyIHNjaGF1dCBNb3Jnb3RoIGFuLl0KW0FsbGdlbWVpbjpBcG9sbG9uaWEgemllaHQgZnJhZ2VuZCBlaW5lIEF1Z2VuYnJhdWUgaG9jaC5dCltBbGxnZW1laW46QWxpbmUgYmVkYXVlcnQgc2Nob24sIGRhc3Mgc2llIG1vcmdlbiBuaWNodCBkYSBpc3RdCltBbGxnZW1laW46QXBvbGxvbmlhXSBqYSwgZGFzIGlzdCBlY2h0IHNjaGFkZQpbQWxsZ2VtZWluOkFwc3VdIHNvcnJ5IG5lZWUgQ2xhdWRpYSBpcyBiZWkgQnVja2Vsd2FsZW4gOikKW0FsbGdlbWVpbjpBcHN1XSB1cHBwcyBiZXNzZXIgc3BhZXQgYWxzIGVyaWthIGJlcmdlcgpbQWxsZ2VtZWluOkFwb2xsb25pYV0gd2VubiB1bnNlcmUgS29tbXVuaWthdGlvbiBybCBzbyBndXQgZnVuenQgd2llIHZsLi4uIGRhcwpbQWxsZ2VtZWluOkFwb2xsb25pYV0gd2FlciBkYW5uIGphIGVjaHQgX2Rhc18gV2F0ZXJsb28gZnVlciBNK04gOykKW0FsbGdlbWVpbjpBbGluZSBtdXNzIGxlaWRlciBnZWhlbl0KW0FsbGdlbWVpbjpNb3Jnb3RoXSBwYWgsIGtlaW5lIGNoYW5jZS4gaWhyIHNlaWQgZnJhdWVuCltBbGxnZW1laW46QXBvbGxvbmlhXSBuYSBlYmVuIGRlc3dlZ2VuICp0YWV0c2NoZWwqCltBbGxnZW1laW46TW9yZ290aF0gaG1wZgpbQWxsZ2VtZWluOkFsaW5lIGxhZWNoZWx0IE1vcmdvdGggbWl0bGVpZGlnIGFuXQpbQWxsZ2VtZWluOk5vbm5lXSBkYW5uIGdlaCBpY2ggZWJlbiBtaXQgTSogYXVmcyBrbG8gdW5kIG5pY2h0IG1pdCBkaWUgYXBvKiAhCltBbGxnZW1laW46TGlhcmFdIGhhZWg/IDstKQpbQWxsZ2VtZWluOk1vcmdvdGhdIGJpc3RlIG5laWRpc2NoIGFsaW5lPwpbQWxsZ2VtZWluOkxpYXJhIGhhdCBkZW4gQW5mYW5nIHZlcnBhc3N0LiA6LS9dCltBbGxnZW1laW46QXBvbGxvbmlhXSB3YXMgd2lsbCBpY2ggYXVjaCBtaXQgZGlyIGF1Zm0ga2xvLi4uIGlzIGphIHZvZWxsaWcKW0FsbGdlbWVpbjpBcG9sbG9uaWFdIHVucm9tYW50aXNjaCA7KQpbQWxsZ2VtZWluOkFsaW5lXSBBY2ggZ2Voc3RlIHNvbnN0IGltbWVyIG1pdCBBcG9sbG9uaWEgYXVmcyBLbG8sIE5vbm5lPwpbQWxsZ2VtZWluOk1vcmdvdGhdIHd1ZXJkZSBlciBnZXJuZQpbQWxsZ2VtZWluOkFwb2xsb25pYV0gaWNoIGtlbm4gZGVuIG5vY2ggbmljaHQgbWFsIDopCltBbGxnZW1laW46UmlrdXNdIGRhcyBrbG8gbmljaHQsIGFiZXIgbSogOikKW0FsbGdlbWVpbjpBbGluZV0gS3JpZWd0ZXIgZGllIEhvc2UgbmljaHQgYWxsZWluZSBydW50ZXIsIEFwbyo/CltBbGxnZW1laW46Tm9ubmVdIHJvbWFudGlrPyBpY2ggZGFjaHRlLCBlcyBnZWh0IHVtIGhhcnRlbiBwdXJlbiAyMApbQWxsZ2VtZWluOk5vbm5lXSBzZWt1bmRlbi1zZXggPyE/CltBbGxnZW1laW46QXBvbGxvbmlhXSBhbHNvIGJpc2hlciBoYXR0ZW4gd2lyIGtlaW5lIGdlbGVnZW5oZWl0CltBbGxnZW1laW46TGFuZmVhcl0gYWxzbyBpc3Qgbm9ubmUgZG9jaCB3ZWlibGljaC4uLiBmcmF1ZW4gZ2VoZW4gZG9jaCBpbW1lcgpbQWxsZ2VtZWluOkxhbmZlYXJdIHp1c2FtbWVuIGF1ZnMga2xvIDopCltBbGxnZW1laW46TW9yZ290aCBuaWNrdCBMYW5mZWFyIHp1XQpbQWxsZ2VtZWluOkFwb2xsb25pYV0gbWl0IF9kZW1fIFdlcmt6ZXVnPz8/IG5hIGphLCBrZWluIHd1bmRlciwgZGFzcyBkYXMgbnVyCltBbGxnZW1laW46QXBvbGxvbmlhXSAyMCBzZWt1bmRlbiBkYXVlcnQKW0FsbGdlbWVpbjpMaWFyYV0gMjAgc2VrdW5kZW4/ICpnYWVobioKW0FsbGdlbWVpbjpOb25uZV0gd2VuIGt1ZW1tZXJ0IHNjaG9uIGRlciB3ZWlibGljaGUgb3JnYXNtdXM/IT8gbWFlbm5lciBuaWNodApbQWxsZ2VtZWluOkFsaW5lXSBJc3QgZG9jaCBndXQgc28sIGlzdCBlcyB3ZW5pZ3N0ZW5zIHNjaG5lbGwgdm9yYmVpCltBbGxnZW1laW46Tm9ubmVdIGRhZnVlciBoYXN0ZSBqYSBkZWluZSBrYXR6ZQpbQWxsZ2VtZWluOkFwb2xsb25pYV0gbGFuZGV0IGhhbHQgbmljaHQgYW4gZGVyIGdlZ2VudWViZXJsaWVnZW5kZW4gV2FuZCwKW0FsbGdlbWVpbjpBcG9sbG9uaWFdIHNvbmRlcm4gZ2xlaWNoIGF1Zm0gYm9kZW4gOykKW0FsbGdlbWVpbjpNYWhhdG11XSBJbiAyMCBzPyBEZXIgc2NocnViYnQgc2ljaCBkZW4gWmlwZmVsIGhlaW1saWNoIHNlbGJzdC4KW0FsbGdlbWVpbjpBcG9sbG9uaWFdIG1laW4gS2F0ZXIgaXN0IGxpZWIsIGJyYXYgdW5kIC4uLiBuZSBpc3NlciBuaWNodCA6KQpbQWxsZ2VtZWluOk1vcmdvdGhdIHN0aW1tdC4gZGllIG1hZyBzaWNoZXIgZmlzY2gKW0FsbGdlbWVpbjpNYWhhdG11IGtpY2hlcnQuXQpbQWxsZ2VtZWluOk1haGF0bXVdIFVuZCBoYXQgJ25lIGxhbmdlIFp1bmdlIC4uLgpbQWxsZ2VtZWluOkFwb2xsb25pYV0gZGFzIHdlbmlnZXIsIGVyIG1hZyBNb25jaGljaGlzCltBbGxnZW1laW46TW9yZ290aF0gaWlpaWtzCltBbGxnZW1laW46QXBvbGxvbmlhIGdyaW5zdCBmaWVzLl0KW0FsbGdlbWVpbjpNYWhhdG11XSBEaWVzZSB3b2xsaWdlbiwgcGVsemlnZW4gVmllY2hlcj8KW0FsbGdlbWVpbjpBcG9sbG9uaWFdIGRlbmVuIGxlY2t0IGVyIG5hZW1saWNoIGltbWVyIGRhcyBmZWxsIDopCltBbGxnZW1laW46TW9yZ290aF0gYWhhLCBkdSBiaXN0IHJhc2llcnQKW0FsbGdlbWVpbjpNYWhhdG11XSAuLi4gZWluIEhhYXIgYXVmIGRlciBadW5nZS4KW0FsbGdlbWVpbjpMYW5mZWFyXSB3b2hlciBoYXQgZGVyIEthdGVyIGRhcyBibG9zcyA/PwpbQWxsZ2VtZWluOkFwb2xsb25pYV0gd2Vpc3MgbmljaHQsIGRlciBpc3QgYXVzbSBUaWVyaGVpbSA6KQpbQWxsZ2VtZWluOkxhbmZlYXJdIGFoYSA6KQpbQWxsZ2VtZWluOk1haGF0bXVdIERhbm4gaXN0IGVyIGphIGVpbmlnZXMgZ2V3b2VobnQuCltBbGxnZW1laW46TWFoYXRtYV0gSW0gdWVicmlnZW4gYmluIGljaCBkZXIgTWVpbnVuZywgZGFzcyBkaWUgSHlkcmFrb2VwZmUKW0FsbGdlbWVpbjpNYWhhdG1hXSB6ZXJzdG9lcnQgd2VyZGVuIG11ZXNzZW4uCltBbGxnZW1laW46TWFoYXRtdSBsYWNodC5dCltBbGxnZW1laW46QmFtYnVsa29dIEdvb29vb29vb29vb29vb29kIG1vb29vb29vb29vcm5pbmcgTW9vb29vb29vb3JnZW5HcmF1ZW4KW0FsbGdlbWVpbjpGU0tdIEFjaHR1bmcgQWNodHVuZywgaGllciBzcHJpY2h0IGRpZSBGU0suIERhcyBNb3JnZW5ncmF1ZW4gaXN0IGFiCltBbGxnZW1laW46RlNLXSBzb2ZvcnQgaW5kaXppZXJ0IHdlZ2VuIGp1Z2VuZGdlZmFlaHJkZW5kZXIgQWV1c3NlcnVuZ2VuICEKW0FsbGdlbWVpbjpHb2xhcyBwcnVzdGV0IGxvc10KW0FsbGdlbWVpbjpBcG9sbG9uaWEgbGFjaHQuXQpbQWxsZ2VtZWluOk1haGF0bXVdIFByaW1hLCBkYW5uIGtvZW5uZW4gd2lyIGVzIGphIG51ciBub2NoIHVudGVyIGRlbSBUaXNjaApbQWxsZ2VtZWluOk1haGF0bXVdIHdlaXRlcnNwaWVsZW4uIERhcyB0cmlmZnQgc2ljaCBndXQuCltBbGxnZW1laW46TW9yZ290aF0gbWFjaHN0IGR1IGRvY2ggc2Nob24gZGllIGdhbnplIHplaXQKW0FsbGdlbWVpbjpBcG9sbG9uaWFdIGJlaGFsdCBkZWluZSBmdWVzc2UgYmVpIGRpciA7KQpbQWxsZ2VtZWluOkFwc3VdIFdBUyB1bnRlciBkZW0gdGlzY2ggd2VpdGVyc3BpZWxlbj8gOikpCltBbGxnZW1laW46SmFtYWxza2kgc3BpZWx0IGVoIGdlaGVpbV0KW0FsbGdlbWVpbjpMYW5mZWFyIGdyaW5zdCBBcHBvbG9uaWEgYW4uXQpbQWxsZ2VtZWluOkFwb2xsb25pYV0gamEga2xhciwgSmFtYWwsIFRhc2NoZW5iaWxsYXJkCltBbGxnZW1laW46TGFuZmVhcl0gaHVwc2kKW0FsbGdlbWVpbjpNdXBmZWxdIHNwaWVsZSBhbiB1bmQgZnVlciBzaWNoLi4uCltBbGxnZW1laW46SHJlaWRtYXJdIGljaCB3aWxsIGdhciBuaWNodCB3aXNzZW4sIHdhcyBBcG8qIHVuZCBNKiB1bnRlcm0gVGlzY2gKW0FsbGdlbWVpbjpIcmVpZG1hcl0gc3BpZWxuLi4uCltBbGxnZW1laW46TGFuZmVhcl0gc29ycnkgQXBvbGxvbmlhIG1laW4gaWNoIDopCltBbGxnZW1laW46SHJlaWRtYXJdIHVuZCBlcnN0IHJlY2h0IG5pY2h0IFdPTUlUCltBbGxnZW1laW46QXBvbGxvbmlhIGxhZWNoZWx0IExhbmZlYXIgYW4uXQpbQWxsZ2VtZWluOk1vcmdvdGhdIHNjaGFjaD8KW0FsbGdlbWVpbjpKYW1hbHNraV0gS2xhciwgVGFzY2hlbmJpbGxhcmQhIElzIGphIGdlcmFkZSBrZWluZXIgaGllciBmdWVyCltBbGxnZW1laW46SmFtYWxza2ldIGZyYW56b2VzaWNoIQpbQWxsZ2VtZWluOkFwb2xsb25pYV0gd2llIGtvbW1zdCBEdSBhdWYgTSosIEhyZWlkbWFyPwpbQWxsZ2VtZWluOkphbWFsc2tpIHNwdWNrdCBlaW4gJ3MnIGF1c10KW0FsbGdlbWVpbjpIcmVpZG1hcl0gVm9uIG1pciBhdXMgYXVjaCBOb25uZQpbQWxsZ2VtZWluOkxhbmZlYXJdIGR1IHNwdWNrc3QgPwpbQWxsZ2VtZWluOkhyZWlkbWFyXSBkZXIvZGllIGlzdCBzb3dpZXNvIHRvdGFsIHZlcnNwaWVsdApbQWxsZ2VtZWluOkphbWFsc2tpXSBkZXMgb2VmdGVyZW4KW0FsbGdlbWVpbjpNYWhhdG11XSBKYW1hbHNraSBpc3Qgc2VociBnZWxlbmtpZy4KW0FsbGdlbWVpbjpNb3Jnb3RoIGdyaW5zdCBIcmVpZG1hciBhbl0KW0FsbGdlbWVpbjpKYW1hbHNraV0gSmVtYW5kIGJydWVsbHQ6IEkgd2FudCB0byBzZWUgeW91IHN3ZWF0IQpbQWxsZ2VtZWluOlJpa3VzXSBqZW1hbmQ/IGVoZXIgc2Nvb3RlcgpbQWxsZ2VtZWluOkxhbmZlYXIgbGF1c2NodCBkZXIgU3RpbGxlLi4uXQpbQWxsZ2VtZWluOk1haGF0bXUgbGFldXNjaHQgZGVuIEdlcmFldXNjaGVuLl0KW0FsbGdlbWVpbjpNb3Jnb3RoXSBlYmVuIGxhbmZlYXIuIGRpZSBhcmJlaXQgcnVmdCA7LSgKW0FsbGdlbWVpbjpKYW1hbHNraV0gR2VvdXRldCBSaWt1cyEKW0FsbGdlbWVpbjpSaWt1c10gbm9lLCBpY2ggc3RlaCBkYXp1CltBbGxnZW1laW46TWFoYXRtdV0gRnJ1ZWhlciBoYXQgUmlrdXMgamEgbm9jaCBCcmVha2RhbmNlIGdlbWFjaHQuIEFiZXIgZGFubgpbQWxsZ2VtZWluOk1haGF0bXVdIGhhdCBlcyBkZXIgS29wZmhhdXQgZ2VzY2hhZGV0LCBzZWl0ZGVtIGhvZXJ0IGVyIG51ciBub2NoCltBbGxnZW1laW46TWFoYXRtdV0gU2Nvb3Rlci4KW0FsbGdlbWVpbjpSaWt1c10gbXVzc3QgZ3JhZGUgZHUgc2FnZW4sIG1haGF0bXUgPigKW0FsbGdlbWVpbjpNdXBmZWxdIGRlciBrb3BmaGF1dCBnZXNjaGFkZXQ/CltBbGxnZW1laW46UmlrdXNdIGFlaCA6KQpbQWxsZ2VtZWluOkphbWFsc2tpXSBKZXR6dCBzYWcgbWlyIG5vY2gsIGRhc3MgZGllIGVpZ2VudGxpY2ggZ2FueiBndXRlIE11c2lrCltBbGxnZW1laW46SmFtYWxza2ldIG1hY2hlbi4uLgpbQWxsZ2VtZWluOk11cGZlbF0gbWFoYXRNdWggOi0pCltBbGxnZW1laW46TWFoYXRtdSByYXNpZXJ0IHNpY2ggbWFuY2htYWwgYXVjaCBkaWUgT21tZS4gQWJlciBmcmVpd2lsbGlnIDstKV0KW0FsbGdlbWVpbjpMYW5mZWFyIHdhZ3QgZ2FyIG5pY2h0IHp1IGZyYWdlbiwgd2FzIGRpZSBPbW1lIGlzdCA6LSldCltBbGxnZW1laW46TXVwZmVsXSBzbyBzYWd0IG1hbiBpbiBiZXJsaW4genUgYWVsdGVyZW4gZGFtZW4KW0FsbGdlbWVpbjpNYWhhdG11XSBKYWphLCBtYW5jaGUgZGVua2VuIGF1Y2ggbWl0IGRlbSwgd2FzIER1IGRhZnVlciBoYWVsdHN0LgpbQWxsZ2VtZWluOk1haGF0bXUgaGF0IE5vbm5lIGltIFZlcmRhY2h0Ll0KW0FsbGdlbWVpbjpKYW1hbHNraV0gTXVwZmVsLCBhdXMgRHJlaWVpY2ghIE1hdWwgaGFsdGVuISA7KQpbQWxsZ2VtZWluOk11cGZlbCBpc3QgZG9jaCBnYXIgbmljaHQgYXVzIERyZWllaWNoLi4uXQpbQWxsZ2VtZWluOkphbWFsc2tpXSBEYW5uIGlzdCBkYXMgdmVybXV0bGljaCBkZXIgbmFlY2hzdGdyb2Vzc2VyZSBPcnQgYmVpIERpcj8KW0FsbGdlbWVpbjpNdXBmZWxdIG5vZQpbQWxsZ2VtZWluOlJpa3VzXSBkYXMgaXN0IHp3ZWllaWNoIDopCltBbGxnZW1laW46SmFtYWxza2ldIEplZGVuZmFsbHMgaXNzZXMgbmljaHQgQmVybGluIQpbQWxsZ2VtZWluOk11cGZlbF0gcG9zdGV0IHdlciBkaWUgbGFlbmdlcmUgcGFzYWdlIHZvbiB2b3JoaW4/IDotKQpbQWxsZ2VtZWluOkphbWFsc2tpXSBKYSwgRHUhCltBbGxnZW1laW46TGFuZmVhciBraWNoZXJ0LiBXYWVyIHNvbnN0IHNjaGFkZSBkcnVtXQpbQWxsZ2VtZWluOkFwc3VdIGphLCBhbHMgbGVzZXJ6dXNjaHJpZnQgYXVmIHd3dy50aXR0ZW4uZGUgOikKW0FsbGdlbWVpbjpNb3Jnb3RoXSBpY2ggaGFiIGVpbiBrb21wbGV0dGVzIGxvZyBzZWl0IGhldXRlIG1vcmdlbiAwNzEwaApbQWxsZ2VtZWluOk11cGZlbF0gbm9lCltBbGxnZW1laW46QXBzdV0gb2Vya3Mgd2VyIHN1Y2h0IGRlbm4gc29ubiBsYW5nZXMgbG9nIGR1cmNoCltBbGxnZW1laW46TW9yZ290aF0gaWNoIGFiIHVuZCB6dQpbQWxsZ2VtZWluOk1vcmdvdGggbXVzcyBqZXR6dCB3aXJrbGljaCBhcmJlaXRlbi4uLl0KW0FsbGdlbWVpbjpOb25uZV0gZGFubiBtdXNzIGljaCB3b2hsIG1hbCBhdWYgZGVpbmVuIHJlY2huZXIsIG0qLCB1bmQgZGFzCltBbGxnZW1laW46Tm9ubmVdIGxvZy1maWxlIGxvZXNjaGVuIDstKQpbQWxsZ2VtZWluOk1vcmdvdGhdIHVudGVyc3RlaCBkaWNoCltBbGxnZW1laW46Q2xheW1vcmVdIHdhciBlaW4gaGFsYmVzIGphaHIgbmljaHQgbWVociBpbSBtdWQuCltBbGxnZW1laW46TW9yZ290aF0gaWNoIHdlcmQgZGlyIG5pY2h0IHZlcnJhdGVuLCBkYXNzIGRhcyByb290LXBhc3N3b3J0IGZpY2tlbgpbQWxsZ2VtZWluOk1vcmdvdGhdIGlzdApbQWxsZ2VtZWluOk5vbm5lXSBpY2ggaGFiIGRhIG4gbG9naW4sIHJvb3Qgd2VyZGVuIHNvbGx0ZSBkYW5uIG5pY2h0IGRpZSBzYWNoZQpbQWxsZ2VtZWluOk5vbm5lXSBzZWluIDotKQoKCkxhbmcsIGFiZXIgZ3V0IE0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVmVyc3BhZXRldGVzIExvZ2ZpbGUgOy0pIChBbGJvaW4sICAzLiBOb3YgMTk5OSwgMTA6NTA6MTIpOgp+IyEgcm49TW9yZ290aCBydD05NDE2MjEzOTggcmc9c2NobWFycm4KfiMhIHRpZD05NDE2MjEzOTgKd2FhYWFoIHdhcyBpY2ggd2llZGVyIGFuZ2VyaWNodGV0IGhhYmU6IGljaCBzYWdlIGVpbm1hbCBzY2h3dXBwIHdlaWwgbml4IGxvcwppc3QgKHVuZCBsb2dnIG1pY2ggYXVzKSB1bmQgc2Nob24gaXN0IGRlciBLYW5hbCAnQWxsZ2VtZWluZXMnIG5lCmp1Z2VuZGdlZmFlaHJkZW5kZSBab25lLgoKKmtvcHNjaHVldHRlbG5kKiBhbGJvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEthcmF0ZSBhdWZ3ZXJ0ZW4/IChNYWhhdG11LCAgMy4gTm92IDE5OTksIDE4OjEzOjI3KToKfiMhIG9uPU1haGF0bXUgb3Q9OTQxNjQ5MTgyIG9nPWV0aWtldHRlCn4jISBybj1BbmF0b2wgcnQ9OTQxNjQ5MTQxIHJnPWV0aWtldHRlCn4jISB0aWQ9OTQxMTA2ODQ1CkljaCB3dWVyZGUgYW4gUm9jaHVzJyBTdGVsbGUgZGllIFJhZXViZXIgYXVmd2VydGVuIDopCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBLYXJhdGUgYXVmd2VydGVuPyAoQm9pbmcsICAzLiBOb3YgMTk5OSwgMTg6MTQ6MTUpOgp+IyEgcm49TWFoYXRtdSBydD05NDE2NDkyMDcgcmc9c2NobWFycm4KfiMhIHRpZD05NDExMDY4NDUKRWluZmFjaCB6dSBkZW4gUmFldWJlcm4gbm9jaCBlaW4gZHV0emVuZCB2b24gZGVuIG1vbWVudGFuIG5pY2h0CmFuZ2VzY2hsb3NzZW5lbiBTcGlubmVuIHJlaW5wYWNrZW4gLi4uIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEthcmF0ZSBhdWZ3ZXJ0ZW4/IChSb2NodXMsICAzLiBOb3YgMTk5OSwgMTg6MTU6MTEpOgp+IyEgcm49Qm9pbmcgcnQ9OTQxNjQ5MjU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxMTA2ODQ1CkhtbSwgd2VubiB3aXIgc2Nob24gYmVpIEJhbGR1cidzLUdhdGUtTW9uc3Rlcm4gc2luZDoKWnUgZGVuIFJhZXViZXJuIHd1ZXJkZW4gYmVzc2VyIGRpZSBCbGFjayBUYWxvbnMgcGFzc2VuIDstKQoKICBSb2NodXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClphdWJlcmVyZ2lsZGUgKFJvY2h1cywgIDMuIE5vdiAxOTk5LCAxODoyODoyMCk6CldpbSBzYWd0OiBpY2ggbXVzcyBtYWwgZ3JhZCBpbiBkaWUgR2lsZGUsIGRpZSBpY2gKV2ltIHNhZ3Q6IGJpbGxpZyBnZWJyYXVjaHQgZ2VrYXVmdCBoYWJlCldpbSBlbnRzY2h3aW5kZXQgaW4gZWluZXIgU2luZ3VsYXJpdGFldC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWmF1YmVyZXJnaWxkZSAoV2ltLCAgMy4gTm92IDE5OTksIDE4OjMzOjA1KToKfiMhIHJuPVdpbSBydD05NDE2NTAyOTIgcmc9c2NobWFycm4KfiMhIHRpZD05NDE2NTAxMDAKU25pcGVyIGdyaW5zdCBEaWNoIG9iIGRlcyBBcnRpa2VscyBpbiBzY2htYXJybiBhdXMgZGVyIEZlcm5lIGFuLgpMaWFyYSBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgpMaWFyYSB0ZWlsdCBEaXIgbWl0OiBnZWlsZXIgc3BydWNoICp3YWVseioKVGFyaW5hIHRlaWx0IERpciBtaXQ6IHdpcmtsaWNoIGd1dGVyIHNwcnVjaCA6XykKVGlsbHkgdGVpbHQgRGlyIG1pdDogKmxhY2gqCkFsaW5lIHRlaWx0IERpciBtaXQ6IFdhcnRlIG1hbCBhYiwgd2VubiBEdSBhbmZhZW5nc3QgZWluIHBhYXIKQWxpbmUgdGVpbHQgRGlyIG1pdDogVmVyc2NobGltbWJlc3NlcnVuZ2VuIERlaW5lcyBWb3JnYWVuZ2VycyB3aWVkZXIKQWxpbmUgdGVpbHQgRGlyIG1pdDogYXVzenViYXVlbi91bXp1YWVuZGVybiwgd2FzIGVzIGRhbm4gZnVlciBSZWFrdGlvbmVuIGdpYnQKQWxpbmUgdGVpbHQgRGlyIG1pdDogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFphdWJlcmVyZ2lsZGUgKE1haGF0bXUsICAzLiBOb3YgMTk5OSwgMTg6Mzc6MTcpOgp+IyEgcm49V2ltIHJ0PTk0MTY1MDM4NSByZz1zY2htYXJybgp+IyEgdGlkPTk0MTY1MDEwMApCemdsLiBBbGluZTogSm9qby4gRGVyIFVyc3BydW5ncyBpc3Qgc2Nob24gcmljaHRpZy4gJ1dhcyB3dWVyZGUKR2lsZGVubWFnaWVyIHR1biwgd2VubiBTcGllbGVyIEJsb2Vkc2lubiBmYXNlbHQuJyBEZXIgZWhlbS4gR00Kd2lyZCB3b2hsIG51ciBncmluc2VuLgpJbiBkaWVzZW0gU2lubmUgYWxzby4KCk1haGF0bXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVya3MgKFdpbSwgIDMuIE5vdiAxOTk5LCAyMToyNjo1Myk6CgpbQWxsZ2VtZWluOkNvbm55XSBBaGhoLCB3YXMgaXN0IHBhc3NpZXJ0ISEgV28gc2luZCBtZWluZSBTYWNoZW4hPz8gCltBbGxnZW1laW46V2ltXSBnZWtsYXV0CkNvbm55IHRlaWx0IERpciBtaXQ6IFZvbiBXZW0/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWdpZXJ2b2xrIC4uLiAoTGlhcmEsICAzLiBOb3YgMTk5OSwgMjM6MzI6NTApOgpOZXVsaWNoIGluIGVpbmVtIFNlaGVyaGF1czoKCkZldWVyd2VociB0cml0dCBhdXMgZGVyIEZpbnN0ZXJuaXMuCkR1IHNhZ3N0OiBoYWxsbyAxMTIgOi0pCkR1IGtudWRkZWxzdCBGZXVlcndlaHIuCkZldWVyd2VociBzYWd0OiBIaSEKU25pcGVyIHNhZ3Q6IG9oLCBoYWxsbyBncm9zc2VyIG1laXN0ZXIKRmV1ZXJ3ZWhyIHNhZ3Q6IEhhbGxvbG8gU25pcGVyIQpTbmlwZXIgc2FndDogaWNoIHdhcnRlIGltbWVyIG5vY2ggYXVmIG1laW5lbiBwcmFlc2VudGtvcmIgOykKRHUga251ZGRlbHN0IEZldWVyd2Voci4KRHUgc2Fnc3Q6IHByYWVzZW50a29yYj8KRmV1ZXJ3ZWhyIEVpbiBWb2dlbCBmbGllZ3Qgdm9yYmVpLCB2ZXJ3YW5kZWx0IHNpY2ggdW5kIGZhZWxsdCBpbiBGZXVlcndlaHIncwpUYXNjaGUuCkR1IGtpY2hlcnN0LiAoV2llIGFsYmVybiB2b24gRGlyKQpGZXVlcndlaHIgZ2lidCBkZW4gTG9sbGkgYW4gU25pcGVyLgpGZXVlcndlaHIgc2FndDogaGllciEKRmV1ZXJ3ZWhyIHNhZ3Q6IGFiZXIgbmljaHQgYWxsZXMgYXVmIGVpbm1hbCBzY2hsZWNrZW4hClNuaXBlciBzYWd0OiBvb29vb29vaCwgdG9sbGxsbGwgOikKRHUgd2FlbHp0IERpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgpGZXVlcndlaHIgc2FndDogaWNoIGJpbiBoZXV0ZSBncm9zc3p1ZWdpZy4KCkxpYXJhLCBncmluc3Qgc2ljaCBlaW5zLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxLIChBbmF0b2wsICAzLiBOb3YgMTk5OSwgMjM6NDQ6MDApOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBIeWRyYWtvcGZzXSBXaWUgc29sbCBkYXMgbm9jaCBlbmRlbiwgU3BlbGxmaXJlPwpbVG9kOkxhcnNdIEVpbiBIeWRyYWtvcGYgaGF0IGdlcmFkZSBTcGVsbGZpcmUgdW1nZWJyYWNodC4KClJlYm91bmQhCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndvdywgc2luZCBkaWUgamV0enQgYmlsbGlnIDopIChXYW0sICA0LiBOb3YgMTk5OSwgMDM6MjY6MjMpOgpMZWlkZXIgaGF0IERlaW4gVGllciBlaW5lbiBuaWNodCBtZWhyIHp1bGFlc3NpZ2VuIE5hbWVuLiBEYWhlciBiZWtvbW1zdApEdSBkYXMgR2VsZCAoMCkgenVydWVjayB1bmQga2FubnN0IERpciBkYWZ1ZXIgZWluIG5ldWVzIFRpZXIKa2F1ZmVuIQogLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdvdywgc2luZCBkaWUgamV0enQgYmlsbGlnIDopIChMaWFyYSwgIDQuIE5vdiAxOTk5LCAyMjowMTo1NSk6Cn4jISBybj1XYW0gcnQ9OTQxNjgyMzgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQxNjgyMzgzCkVZIQoKTWVpbnMgd3VyZGUgZWluZmFjaCBkZXN0cnVjdGVkLiA6LSkgRHUgYmVrb21tc3Qgbm9jaCBkaWUgS29obGUKbmFjaGdlc2NobWlzc2VuLiAqZyoKClp3ZXJnZW56YXViZXJpbmUgTGlhcmEsIGRhbmt0IFRpYW1hayBmdWVyIGRpZSBSZXR0dW5nIHZvbiBCYWNhcmRpIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyIC4uLiAoTGlhcmEsICA0LiBOb3YgMTk5OSwgMjI6MzU6MDIpOgogRGVpbiBGcmV1bmQgRmV1ZXJ3ZWhyIHRlaWx0IERpciBtaXQ6IFJpa3VzISA6KQogUmlrdXMgcnVmdDogU2Nod2VzdGVyY2hlbiEKCkxpYXJhLCB3dW5kZXJ0IHNpY2ggZGFubiBkb2NoIG5pY2h0IG1laHIgLi4uIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hZ2llciAuLi4gKFJpa3VzLCAgNC4gTm92IDE5OTksIDIyOjM1OjQwKToKfiMhIHJuPUxpYXJhIHJ0PTk0MTc1MTMwMiByZz1zY2htYXJybgp+IyEgdGlkPTk0MTc1MTMwMgpuYSBzaWNoZXIsIGVzIGhlaXNzdCBkb2NoIGF1Y2ggRElFIEZldWVyd2VociA6KQoKUmlrdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipST1RGTCogKEphc3BlciwgIDUuIE5vdiAxOTk5LCAwMzowMToxMCk6ClJ1YnJpayBzY2htYXJybiBhYmJlc3RlbGx0LgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKCkphc3BlciBpbW1lciBub2NoIGxhdXRlciBhbHMgU2NocnVtcGZpIHBydXN0ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB3YW50ZWQhIChHcmltbWJvcm4sICA1LiBOb3YgMTk5OSwgMTA6NTM6MDcpOgp+IyEgb249R3JpbW1ib3JuIG90PTk0MTc5NTQ0OSBvZz1kLmRzY2h1bmdlbAp+IyEgcm49TWFoYXRtdSBydD05NDE3ODg0ODAgcmc9ZC5kc2NodW5nZWwKfiMhIHRpZD05NDEyMDM3MzkKS2xhci4gTWl0IGd6aXAgbG9ja2VyIHVtIDkwJS4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIGlzdCBBbmFyY2hpZSBpbSBTdHV2ISAoQXBzdSwgIDUuIE5vdiAxOTk5LCAyMTo0NTo1Myk6CgpTdGVseiBzYWd0OiB1bmQgbG9zLS4uLi4udG9ldGVuICAKW1RvZDpMYXJzXSBFaW5lIERyYWNoZW5zY2hpbGRrcm9ldGUgaGF0IGdlcmFkZSBRdWFsbWkgdW1nZWJyYWNodC4KPlN0ZWx6IG5pbW10IHNlaW5lIE9ocmVuIGFiIHVuZCBncmluc3QgaW0gS3JlaXMuCkR1IGJyaWNoc3Qgdm9yIExhY2hlbiB6dXNhbW1lbi4KClRzdHN0cy4gUHV0c2NodmVyc3VjaD8gCgpBcHN1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZWhvcmNodCBhdWZzIFdvcnQgKFdpbSwgIDYuIE5vdiAxOTk5LCAwMjoxNTo0MSk6CkR1IHRlaWxzdCBab29rIG1pdDogZ2VoIG1pdCBHb3R0LCBhYmVyIGdlaAowMjoxNQo+Wm9vayBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJldW5kZS4uLiAoU3VibGltZSwgIDcuIE5vdiAxOTk5LCAxNDoyNToxMik6ClVtIGRhcyBtaXQgZGVtIFNwYWV0YXVmc3RlaGVuIG5vY2htYWwgenUgdW50ZXJtYXVlcm4gOykKIC4uLgpTb25udGFnLCAxNCBVaHIgOgpmd2VyCkNvbmNoaSBkaWUgZmluc3RlcmUgQ2hhb3MtQW1hem9uZSAtIGJsYSAtCkRldmlsY2hlbiBkZXIgcHN5Y2hvcGF0aGlzY2hlIEtudXRzY2hmaXNjaCBtaXQgTmViZW53aXJrdW5nZW4gLSBibGEgLQpIZW5rZXJzZnJhdSBKZW5hbmRyYSBpc3QgZWluZSBLYWVtcGZlcmx1c2NoZSAtIGJsYSAtCgpTb25udGFnLCAxNC4yMCBVaHIgOgpBbGNpbmEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKTWllemUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKUXVhbG1pICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpodWlpaWlpaWkgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNoYXJpYXMgJ1VudGVyZ2FuZycgKE1vcmdvdGgsICA4LiBOb3YgMTk5OSwgMDg6MjM6MTgpOgpbS2xlcnVzOkthbWVsb3QgdmVybmVpZ3Qgc2ljaCB2b3IgU2FwaGluYXMgQWx0YXIgdW5kIGJlZ3J1ZXNzdCBhbGxlIEJydWVkZXIKICAgICAgICB1bmQgU2Nod2VzdGVybi5dCltLbGVydXM6U2hhcmlhIGdydWVzc3QgS2FtZWxvdCBtaXQgZGVtIFNlZ2VuIExlbWJvbGRzIHVuZCBpbiBIb2ZmbnVuZyBhdWYKICAgICAgICB3ZW5pZ2VyIExhZyA6KF0KW0tsZXJ1czpTbWVhZ29sXSBjb29sIGhpZXIgaW0gZmVuc3RlciBzZWhlIGljaCB3YXMgc2hhcmlhIHNhZ3QgLi4uIGJlaSBpaHIKW0tsZXJ1czpTbWVhZ29sXSBhYmVyIG5pY2ggOikKW0tsZXJ1czpLYW1lbG90XSBiZWkgbWlyIGxhYWFnZCBlcyBhdWNoIHdpZSBzYXUKW0tsZXJ1czpLYW1lbG90XSBpc3QgZGVyIHJlY2huZXIgdm9yIGRlbSBNZy1SZWNobmVyCltLbGVydXM6U21lYWdvbF0gYmVpIFNoYXJpYSBzdGVodCBzY2hvbiBzZWlkIG5lbiBwYWFyIG1pbnMgamV0enQgbmVuIHBhYXIKW0tsZXJ1czpTbWVhZ29sXSBiZWZlaGxlIDopCltLbGVydXM6SW5lbHVraSBzY2hyZWl0XQpbS2xlcnVzOkluZWx1a2ldIGpldHp0IGhhZW5ndHMgYmVpIFNtZWFnb2wgYXVjaApbS2xlcnVzOkthbWVsb3RdIG1hY2ggbWFsIG5lbiB0cmFjZXJvdXQKU2hhcmlhICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpOYWlyb2xmICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpbS2xlcnVzOkthbWVsb3QgZXJnZW56dCBlaW4gZV0KW0tsZXJ1czpJbmVsdWtpXSAgOCAgKiBtZy5maXJzdC5nbWQuZGUgKDE5NC45NS4xNzAuMjA1KSAgMTUgbXMgKgoKTSogOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1ZSBPcHRpb24gKFRhcmFnb24sICA4LiBOb3YgMTk5OSwgMTg6MzA6MDEpOgp+IyEgcm49VGlhbWFrIHJ0PTk0MjAxNTI5MiByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9OTQyMDE1MjkyClNjaG9lbiwgZW5kbGljaCBtYWwgZWluIHNpbm52b2xsZXMgZmVhdHVyZSA6LSkKCihIZXksIGRhcyBtZWluIGljaCBlcm5zdCwga2VpbiBzcGFzcyA6LSkKCkJlc29uZGVycywgZGEgZXMgc29nYXIgZGllIGlucHV0IG91dHB1dCB0cmVubnVuZyB2b20gVEYgYmVydWVja3NpY2h0aWd0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3byBibGVpYnQgZGVyLi4uIChNdXBmZWwsICA5LiBOb3YgMTk5OSwgMDE6MTM6MTYpOgpEZWluZSBGcmV1bmRpbiBMaWFyYSB0ZWlsdCBEaXIgbWl0OiBhZWggd2VyIGlzIHNjaG5hcHMgdW5kIHdhcyBtYWNodCBkZXIgYXVmCkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IG1laW5lciBlcndhcnRlIGxpc3RlPwoKKmcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUeXBpc2NoIFphdWJpIChEaWVkZXIsICA5LiBOb3YgMTk5OSwgMDE6NTM6MzYpOgp4eHggPSBlaW4gYW5vbnltIGJsZWliZW4gd29sbGVuZGVyIFphdWJpLCBMZXZlbCA5ICghKQoKeHh4IHRlaWx0IERpciBtaXQ6IGFiZXIgZGllIGhhdW4gbWljaCAqSkFNTUVSKiA6KQoKRGllZGVyLCB3dXNzdGUgZXMgamEgaW1tZXIgLSBIZXVsc3VzZW4gYWxsZXNhbXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUeXBpc2NoIFphdWJpIChCaWVyY2hlbiwgIDkuIE5vdiAxOTk5LCAwMTo1ODozNCk6Cn4jISBybj1EaWVkZXIgcnQ9OTQyMTA4ODE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyMTA4ODE2Cnh4eCA9IGVpbmUgS2FlbXBmZXJpbi4KeHh4IHRlaWx0IERpciBtaXQ6IERlciBoYXQgbWljaCBoYXJ0IGdldHJvZmZlbiEhIQppY2ggaGFldHRlIG5pY2h0IHNhZ2VuIHNvbGxlbiwgZGVyIG5wYyBzZWkgbGVpY2h0IDopCmdydXNzLAogICAgIC0gQmllcmNoZW4gLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llIGpldHp0IC4uLiAoQnV6emN1dCwgIDkuIE5vdiAxOTk5LCAxMzowMTozNSk6ClNoYWRlIHppZWh0IGVpbmVuIFNjaGF0dGVuIGF1cy4KU2hhZGUgZ2lidCBEaXIgZGVuIFNjaGF0dGVuLgpTaGFkZSBncmluc3QuCgogICAgIEJ1enppIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bmdla3Vlcnp0IC4uLiAoSmVuYW5kcmEsICA5LiBOb3YgMTk5OSwgMjA6MzY6NDYpOgpHcnVtcGYgYmVzY2h3b2VydCAyIExldWNodHRyb2xsZSBoZXJiZWkuClRydmVzOklicmFsb3NjaCB3ZXIgaGF0IGx1c3QgbWljaCBhdXN6dWJpbGRlbj8KRWluIExldWNodHRyb2xsIGtvbW10IGFuLgpFaW4gTGV1Y2h0dHJvbGwga29tbXQgYW4uCkdydW1wZiBncmluc3QuCgpKZW4qIG1vZWNodCBkYXMgYXVjaCBrb2VubmVuIHR1biA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVsZmVuLCB3aWUgaW1tZXIgOikgKFB1aywgIDkuIE5vdiAxOTk5LCAyMjowNzoxOSk6CkRlciBFbGYgc2luZ3Q6IEltIEZydWVodGF1IGRpZSBad2VyZ2UsIHNpZSBnZWhuLCBmYWxsZXJhCkRlciBFbGYgc2luZ3Q6IHNpZSB0YXVtZWxuLCBzaWUgc2Nod2Fua2VuIHVuZCBzaWUgZ3JvZWxuLCBmYWxsZXJhCkRlciBFbGYgc2luZ3Q6IEphIHNlaHQgd2llIGtydW1tIHNpZSBsYXVmZW4sCkRlciBFbGYgc2luZ3Q6IGRlbm4gZ2VzdGVybiB3YXJuIHNpZSBzYXVmZW4uCkRlciBFbGYgc2luZ3Q6IElociBrZW5udCBkYXMsIElociB3YXJ0IGRhcyBqYSBhdWNoIHNjaG9uIGVpbm1hbCAuLi4KCgoKRGVyIEVsZiBzaW5ndDogVm9tIEZyZWliaWVyIGRpZSBad2VyZ2UsIHNpZSBrb21tbiwgbGFsbGFsbGEKRGVyIEVsZiBzaW5ndDogenUgZWluZXIgYW5kZXJuIEtuZWlwZSB3b2xsbiBzaWUgemllaG4sIGxhbGxhbGxhCkRlciBFbGYgc2luZ3Q6IFNpZSBzaW5kIGdyYWQgcmF1c2dlZmxvZ2VuLApEZXIgRWxmIHNpbmd0OiB3ZWlsIHNpZSBzaWNoIG5hY2t0IGF1c3pvZ2VuLgpEZXIgRWxmIHNpbmd0OiBEZXIgU3VmZiBtYWNodCBzaWUgYWxsZSBwZXJ2ZXJzLCB0cmFsbGFsbGEgLi4uCgpudXIgYW0gbWVja2VybiwgYWJlciBzZWxiZXIgaW1tZXIgYmxhdSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGVsZmVuLCB3aWUgaW1tZXIgOikgKEdyaW1tYm9ybiwgIDkuIE5vdiAxOTk5LCAyMzoxNjoxOSk6Cn4jISBybj1QdWsgcnQ9OTQyMTgxNjM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyMTgxNjM5CldhcyB3aWxsIG1hbiB2b24gZGllc2VuIFNjaHd1Y2h0ZWxuIGF1Y2ggYW5kZXJzIGVyd2FydGVuPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmVhbWVyIGZ1ZXIgVm9ydHJhZyAoQW5hdG9sLCAxMC4gTm92IDE5OTksIDEyOjIyOjI0KToKfiMhIHJuPU1lc2lyaWkgcnQ9OTQyMjI4NjExIHJnPXBhcnR5Cn4jISB0aWQ9OTQyMjI4NjExCiJVbnRlcnN1Y2hlLVNjcmlwdGVuIGZ1ZXIgQW5mYWVuZ2VyIHVuZCBGb3J0Z2VzY2hyaXR0ZW5lPyIKCkFuYXRvbCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktuYXBwIGRhbmViZW4uLi4gKEFuYXRvbCwgMTAuIE5vdiAxOTk5LCAxNzo1NTo0MSk6CkRpZSBIeWRyYSBlcmhlYnQgc2ljaCBhdXMgZGVtIFRhbCBkZXIgTHVwaW5lbi4KU2hhcmlhICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgouLi4gaXN0IGF1Y2ggdm9yYmVpLgpBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXbyBrYW5uIG1hbiBkYXMgcGF0ZW50aWVyZW4gbGFzc2VuPyAoV2ltLCAxMS4gTm92IDE5OTksIDAxOjA4OjI1KToKUGFkcmVpYyBlcnNjaGVpbnQuClBhZHJlaWMgc2FndDogdXBzLi4uIDopClBhZHJlaWMgd2lua3QuClBhZHJlaWMgZmxpZWd0IG5hY2ggSGF1c2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERpZWRlciwgMTEuIE5vdiAxOTk5LCAxMTowMTo0MSk6CltBYmVudGV1ZXI6UmF5emVlbF0gSGlpaWlpbGZlZWVlZWUhIGljaCBiaW4gaW5zIHdhc3NlciBnZWZhbGxlbiEgV2llIGtvbW1lIGljaApbQWJlbnRldWVyOlJheXplZWxdIGhpZXIgcmF1cwouLi4KW1RvZDpMYXJzXSBFaW4genVnZWZyb3JlbmVyIFdlaWhlciBoYXQgZ2VyYWRlIFJheXplZWwgdW1nZWJyYWNodC4KW1RvZDpFaW4genVnZWZyb3JlbmVyIFdlaWhlcl0gSGV5LCBkYXMgRWlzIGlzdCBzY2h1bGQhIEVzIHdhciB3b2hsIGVpbmZhY2gKW1RvZDpFaW4genVnZWZyb3JlbmVyIFdlaWhlcl0gbmljaHQgc3RhYmlsIGdlbnVnLgpbQWJlbnRldWVyOkFzdGVyb3RoXSBzY2h3aW1tZW4/CltBYmVudGV1ZXI6QXN0ZXJvdGhdIG9kZXIgc28gOykKCkhlaGUuCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtuYXBwIGRhbmViZW4uLi4gKE1vcmdvdGgsIDExLiBOb3YgMTk5OSwgMTM6MTU6NTMpOgp+IyEgcm49QW5hdG9sIHJ0PTk0MjI1Mjk0MSByZz1zY2htYXJybgp+IyEgdGlkPTk0MjI1Mjk0MQp0amEsIGVzIGtvbW10IG5vY2ggc2NobGltbWVyCkRpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgpTaGFyaWEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCltTZWhlcjpNZW5hY2VdIGhhbGxvIHRhbnRlCgpNKiA7LSgoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW0uLiAoS2FyaWMsIDExLiBOb3YgMTk5OSwgMTM6MTY6MzkpOgpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KRGVyIEhhZW5kbGVyIHNjaGF1dCBuYWNoIG9iZW4gdW5kIG11cm1lbHQ6IFZlcmRhbW10ZSBWaWVjaGVyLgoKb2huZSB3b3J0ZSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXLi4uIChBbmF0b2wsIDExLiBOb3YgMTk5OSwgMTg6MzA6MTMpOgpLYW1lcmFkZW4uLi4KCltBYmVudGV1ZXI6S2lsbG1hbm5dIGljaCB3dXJkZSBlYmVuIGZhc3Qgdm9uIGRlciBiYW5zaGVlIGdldG9ldGV0LCBiaW4gbm9jaG1hbApbQWJlbnRldWVyOktpbGxtYW5uXSBkYXZvbiBnZWtvbW1lbiwgYWJlciBpY2ggd3VlcmRlIGhpZXIgZ2VybmUgd2llZGVyCltBYmVudGV1ZXI6S2lsbG1hbm5dIGxlYmVuZGlnIHJhdXNrb21tZW4KW1RvZDpMYXJzXSBFaW4gc2NobGltbWUgRXJmcmllcnVuZyBoYXQgZ2VyYWRlIEtpbGxtYW5uIHVtZ2VicmFjaHQuCgouLi4gd2lyIGtyaWVnZW4gZXVjaCBhbGxlLgoKQW5hdG9sIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSElMRkUhIChHcmltbWJvcm4sIDExLiBOb3YgMTk5OSwgMTg6NDc6MTApOgp+IyEgcm49QmFtYnVsa28gcnQ9OTQyMzQyMzU0IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9OTQyMzM4NDk0CkFjaCB3YXMsIGVzIGlzdCBXaW50ZXJ6ZWl0LgpHYWVuc2VicmF0ZW4sIEh1bmRlYnJhdGVuIC0gd28gaXN0IGRlciBVbnRlcnNjaGllZD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogSElMRkUhIChVbmFzYWksIDExLiBOb3YgMTk5OSwgMTg6NDg6MjApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0MjM0MjQzMCByZz1zY2htYXJybgp+IyEgdGlkPTk0MjMzODQ5NAogREVSIEdFU0NITUFDSyEhISEhCgpVbmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBISUxGRSEgKEJhbWJ1bGtvLCAxMS4gTm92IDE5OTksIDE4OjQ4OjI0KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDIzNDI0MzAgcmc9c2NobWFycm4KfiMhIHRpZD05NDIzMzg0OTQKRHUgaGFzdCBHYWVuc2UgaW0gQXV0bz8KCld1bmRlcm5kLi4uLi5CYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc28gZ2VodCBkYXMgYWxzbyA6KSAoVW5hc2FpLCAxMS4gTm92IDE5OTksIDE4OjUwOjE2KToKIFtmcmF1ZW5wb3dlcjpEcm9sbGldIHdvIGJsZWlidCBtZWluIHN0ZWFrIGxhcmluYSA6KSBtdXNzIGljaCBkaXIgZXJzdCBkYXMKW2ZyYXVlbnBvd2VyOkRyb2xsaV0ga29jaGJ1Y2ggYnJpbmdlbj8KRGVpbmUgRnJldW5kaW4gTGFyaW5hIHRlaWx0IERpciBtaXQ6IHNjaGVpc3NlClNseWZveCBkZW5rdCAgIC4gbyBPIChIdW5kZWJyYXRlbi4uIGxlY2tlciEpCgoKCndhcyBtYW5jaGUgTGV1dGUgZXNzZW4gaXN0IGRvY2ggZWNodCBlcnN0YXVubGljaCA6KQogVW5hKiAoKmtpY2hlcm5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKISAoQmFtYnVsa28sIDExLiBOb3YgMTk5OSwgMTk6MDI6MjUpOgpBbHBoYSBydWZ0OiBTY2hyZWliIG1hbCBlaW5lciB3YXMgaW4gZGllIE1QQT4gCicKCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXLi4uIChMaWFyYSwgMTEuIE5vdiAxOTk5LCAxOTowNzoyOSk6Cn4jISBybj1BbmF0b2wgcnQ9OTQyMzQxNDEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyMzQxNDEzCkFhYWFhYWVlZWggLi4uIFNjaG51Y2tlbGNoZW4gLi4uCndlciBnZW5hdSBiaXR0ZSBpc3Qgd2lyPyA6LSkKCkxpYXJhLCBncnVlYmVsdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogSElMRkUhIChBbmF0b2wsIDExLiBOb3YgMTk5OSwgMTk6MTA6MjYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0MjM0Mzc4NiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk0MjMzODQ5NApHcmltbWksIER1IGtvbm50ZXN0IG1pdCBkZXIgWmVpdHVuZyBhdWNoIHNjaG9uIGJlc3NlciB1bWdlaGVuIDspCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogSElMRkUhIChHcmltbWJvcm4sIDExLiBOb3YgMTk5OSwgMTk6MTI6NDIpOgp+IyEgcm49QW5hdG9sIHJ0PTk0MjM0MzgyNiByZz1zY2htYXJybgp+IyEgdGlkPTk0MjMzODQ5NApaZWl0dW5nPyBaZWl0dW5nPyBBbHNvLCBpY2ggc2l0emUgaGllciB2b3IgZWluZW0gUmVjaG5lciwgbWl0IGVpbmVtCnNjaG51Y2tlbGlnZW4gTW9uaXRvciAoZGVyIG1pciBGZXJuc2VoYmlsZGVyIHZvbSBLYXJuZXZhbCB6ZWlndCAtIEhvcnJvcmZpbG1lCnNpbmQgY29vbCkgdW5kIGVpbmVyIFRhc3RhdHVyLgpEaWUgWmVpdHVuZyBsaWVndCBoaW50ZXIgbWlyIGF1ZiBkZW0gU29mYSwgd2VubiBpY2ggaGV1dGUgZGF6dSBrb21tZSBsZXNlIGljaApzaWUgYXVjaCBub2NoIHp1ZW5kZS4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEhJTEZFISAoQW5hdG9sLCAxMS4gTm92IDE5OTksIDE5OjEzOjA0KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDIzNDM5NjIgcmc9c2NobWFycm4KfiMhIHRpZD05NDIzMzg0OTQKR2VoIE1vb3JodWVobmVyIGphZ2VuIDpvKQoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKHdhcyBpbW1lciBkYXMgYmVkZXV0ZXQpIChLYWZmLCAxMS4gTm92IDE5OTksIDIxOjA5OjIyKToKRHUgdGVpbHN0IEdhc3QxIG1pdDogZmxheHRyaSBpc3Qgd2llZGVyIHdlZywgZGVuayBpY2ggOy0pCkNoYW90IEtvb21pa2VyIChMZXZlbCAxMCwgU2VoZXIpIGJldHJhdCBnZXJhZGUgZGFzIE1vcmdlbmdyYXVlbi4KW1RvZDpMYXJzXSBGbGF4dHJpIGhhdCBnZXJhZGUgS29vbWlrZXIgdW1nZWJyYWNodC4KW1RvZDpGbGF4dHJpXSBCcnVjaGsgcnVsZXohCgpEYSB3YXIgaWNoIGRvY2ggd29obCBldHdhcyB6dSB2b3JlaWxpZy4uLiA7LSkKS2FmZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdXBzICAoU2t5LCAxMi4gTm92IDE5OTksIDIxOjQ0OjIwKToKW1RvZDpMYXJzXSBFaW4gRmV1ZXJiYWxsIGhhdCBnZXJhZGUgQmVsZ2FyaWFkIHVtZ2VicmFjaHQuCkR1IGdlbmllc3N0IGRpZSBSdWhlLgoKSGF0IHdvaGwgbml4IGRhbWl0IHp1IHR1biwgYWJlciBib3Qgc2ljaCBhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWJlciBIYWxsbyEgKEthZmYsIDEyLiBOb3YgMTk5OSwgMjI6MTI6MTUpOgpHb3J0aGF1ciBydWZ0OiBoYWxsbyAKW1RvZDpMYXJzXSBFaW5lIERvZ2dlIGhhdCBnZXJhZGUgR29ydGhhdXIgdW1nZWJyYWNodC4gICAgICAKCjstKSBLYWZmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2hvbiBrbGFyLi4uIChHbm9tZSwgMTMuIE5vdiAxOTk5LCAxMTo1ODoxNSk6CltzY2hhdV0KCkNob2Nob3MgZGVyIHNjaHdhcnplIERhZW1vbi4KRGVyIEhldHplcmRhZW1vbiBSeXRob3RoLgpEZXIga2xlaW5lIFVlYm1hdHUuCkhvdGhyb2cgZGVyIFNjaGFrYWxrb2VwZmlnZS4KSG90aHJvZyBkZXIgU2NoYWthbGtvZXBmaWdlLgpEZXIgSGV0emVyZGFlbW9uIFJ5dGhvdGguCgpkaWUgc3Bpbm5lbiwgZGllIG9ya3MuLi4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoub08oc2Nod2VydGVyKSA7KSAoS2FyaWMsIDE0LiBOb3YgMTk5OSwgMDE6NTI6MDQpOgpNYXJnaWUgQnJhZGRvbiBmaW5kZXQgR2VmYWxsZW4gYW4gZGVtIFZvbGxzdHJlY2tlciB1bmQgbGVndCBpaG4genUgc2VpbmVuClByaXZhdHNhY2hlbi4KTWFyZ2llIEJyYWRkb24gemFobHQgRGlyIDEzMTggR29sZHN0dWVja2UuCgppY2ggc2FnIG5vY2guLiBzY2h3ZXJ0ZXIgc2luZCBkb2NoIG5peC4uIGJyaW5nZW4gamEga2F1bSBnZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogLm9PKHNjaHdlcnRlcikgOykgKE1vbnRhbnVzLCAxNC4gTm92IDE5OTksIDEwOjIzOjU5KToKfiMhIG9uPU1vbnRhbnVzIG90PTk0MjU3MTQxMyBvZz1wYXJ0eQp+IyEgcm49S2FyaWMgcnQ9OTQyNTQwNzI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNTQwNzI0CgpNYXJnaWUgbGVndCBkZW4gViB6dSAqc2VpbmVuKiBQcml2YXRzYWNoZW4/CkljaCBkYWNodGUgaW1tZXIsIE1hZ3JpZSBzZWkgZGllIF9GcmF1XyB2b24gT3dlbi4KTWVuc2NoLCBpc3QgZGFzIE1HIGxpYmVyYWwgZ2V3b3JkZW4uLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqeml0dGVyKiAoUHVrLCAxNC4gTm92IDE5OTksIDE2OjEzOjU1KToKVGlsbHkgc2FndCBjaGFvdGlzY2g6IE9ob2gsIG1hY2ggZGFzIG5pZSB3aWVkZXIgLi4uRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuCmR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEZ1c3NnYWVuZ2VyIGxlYmVuIGdlZmFlaHJsaWNoIC4uLiAoQW5hdG9sLCAxNS4gTm92IDE5OTksIDEyOjEyOjIxKToKfiMhIHJuPUdyaW1tYW4gcnQ9OTQyNjA4Mjc4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTQyMDkyNDg2CgpEYXNzIER1IERpY2ggdHJhdXN0LCBpbiBCZXp1ZyBhdWYgIkFsdGVyIiBnbGVpY2ggRFJFSSBBdXNydWZlemVpY2hlbgp6dXIgQW53ZW5kdW5nIHp1IGJyaW5nZW4sIGlzdCBzY2hvbiBnYW56IHNjaG9lbiBtdXRpZy4gRnVlciBEZWluIEFsdGVyLgoKQW5hdG9sIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVuZCBOT0NIIGVpbiBuZXVlciBFcnptYWdpZXIgKE1haGF0bXUsIDE1LiBOb3YgMTk5OSwgMTc6MDI6MTQpOgp+IyEgcm49Qm9pbmcgcnQ9OTQyNjgxNDk0IHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD05NDI2ODE0OTQKV2VubiBEdSBsYXV0ZXIgbmV1ZSBPZmZpemllcmUgZXJuZW5uc3QsIHdlbiBzb2xsZW4gZGllIGRlbm4gZGFubiBub2NoCmJlZmVobGlnZW4/IDopCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVuZCBOT0NIIGVpbiBuZXVlciBFcnptYWdpZXIgKEJvaW5nLCAxNS4gTm92IDE5OTksIDE3OjAzOjI2KToKfiMhIHJuPU1haGF0bXUgcnQ9OTQyNjgxNzM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNjgxNDk0CldhciBhbGxlcyBub3R3ZW5kaWcgLi4uIGFiZXIgamV0enQgaXN0IGVyc3RtYWwgU2NobHVzcyBkYW1pdCAqZ3JpbnMqCkF1c3NlcmRlbSBoYWIgaWNoIGphIHp3aXNjaGVucmVpbiBhdWNoIG1hbCBhdWZnZXJhZXVtdCA7KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBVbmQgTk9DSCBlaW4gbmV1ZXIgRXJ6bWFnaWVyIChNYWhhdG11LCAxNS4gTm92IDE5OTksIDE3OjA1OjA3KToKfiMhIHJuPUJvaW5nIHJ0PTk0MjY4MTgwNiByZz1zY2htYXJybgp+IyEgdGlkPTk0MjY4MTQ5NApBY2hzb29vIDo+IERpZSBhbHRlbiBFTXMgd3VyZGVuIGRlZ3JhZGllcnQgdW5kIGFyYmVpdGVuIGpldHp0IGZ1ZXIgZGllCm5ldWVuIEVNcy4gSGFiZSBpY2ggZGFzIGpldHp0IHNvIHJpY2h0aWcgdmVyc3RhbmRlbj8gOy1vCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBGdXNzZ2FlbmdlciBsZWJlbiBnZWZhZWhybGljaCAuLi4gKEdyaW1tYW4sIDE1LiBOb3YgMTk5OSwgMTg6NDI6MDYpOgp+IyEgcm49QW5hdG9sIHJ0PTk0MjY2NDM0MSByZz1zY2htYXJybgp+IyEgdGlkPTk0MjA5MjQ4NgpEYXMgaWNoIGltIFZlcmhhZWx0bmlzIHp1IGRpciBNb2VjaHRlZ2Vybm9wYSBub2NoIGp1bmcgYmluIGlzdCBrbGFyIC4uLiAKQWJlciBtaWNoIHVuZCBTdWJsaW1lIHRyZW5uZW4gYXVjaCBub2NoIGVpbiBwYWFyIEphaHJlIDopCgpHcmltTWFuLCBicmF1Y2h0IG5vY2gga2VpbiBHZWJpc3MKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh1cnJhIHdpciBsZWJlbiBub2NoIDspIChTdWJsaW1lLCAxNS4gTm92IDE5OTksIDE5OjAzOjI1KToKTmV1bGljaCwgZWluZXMgc2Nob2VuZW4gQWJlbmRzIGltIE1vcmdlbmdyYXVlbiA6CgpEZWluIEZyZXVuZCBRdWFsbWkgdGVpbHQgRGlyIG1pdDogaHVodS4uLmxlYnQgaWhyIG5vY2ggPwpEZWluZSBGcmV1bmRpbiBBbGNpbmEgdGVpbHQgRGlyIG1pdDogUmVjaG5lcndlY2hzZWwKQWxjaW5hICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpEZWluIEZyZXVuZCBHcmltbWFuIHRlaWx0IERpciBtaXI6IGtsYXIgOz0pCkRlaW4gRnJldW5kIFF1YWxtaSB0ZWlsdCBEaXIgbWl0IDogc3VjaGUgbnVyIG5lIGJsb2VkZSAicmVpbmUgc2Nod2FyemUgcm9zZSIKOykKCkRlciBnYW56ZSBBdWZ3YW5kIGZ1ZXIgZWluZSBibG9lZGUgcmVpbmUgc2Nod2FyemUgcm9zZSAuLi4KClN1YmxpbWUsIGtpY2hlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBCZXRlbiAoTWFoYXRtdSwgMTUuIE5vdiAxOTk5LCAyMjowNToyNik6Cn4jISBybj1XdXJ6ZWwgcnQ9OTQyNjk5ODY0IHJnPWdpbGRlbi5rbGVydXMKfiMhIHRpZD05NDI0MDEyNjkKTmVlLCBhYmVyIGRvcnQgcmVnZW4gc2ljaCBhdWNoIHNvbGNoZSBhbHRlbiBMZXV0ZSB3aWUgRHUgaGluIHVuZCB3aWVkZXIKZGFtaXQgc2llIG5pcmdlbmRzIGZlc3R3YWNoc2VuIDo+CgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBGdXNzZ2FlbmdlciBsZWJlbiBnZWZhZWhybGljaCAuLi4gKEdyaW1tYm9ybiwgMTUuIE5vdiAxOTk5LCAyMjoyOTo1Myk6Cn4jISBybj1HcmltbWFuIHJ0PTk0MjY4NzcyNiByZz1zY2htYXJybgp+IyEgdGlkPTk0MjA5MjQ4NgpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBTb24sICA2LiBEZXogMTk5OCwgMjE6MjY6NDIKCkdyYXR1bGllcmUsIEJlaW5haGVvcGEuIEhhc3QgamEgYmFsZCBEZWluIGVpbmphZWhyaWdlcy4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRnVzc2dhZW5nZXIgbGViZW4gZ2VmYWVocmxpY2ggLi4uIChHcmltbWFuLCAxNS4gTm92IDE5OTksIDIyOjMxOjIxKToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDI3MDEzOTMgcmc9c2NobWFycm4KfiMhIHRpZD05NDIwOTI0ODYKRGFua2UgZnVlciBkZWluZSBBbnRlaWxuYWhtZSAKCkdyaW1NYW4sIG1hZyBMZXV0ZSBkaWUgbmljaHQgd2lzc2VuIHVtIHdhcyBlcyBnZWh0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmcmF1ZW4tbWVudGFsaXRhZXQgKE5vbm5lLCAxNi4gTm92IDE5OTksIDEwOjM3OjQ0KToKRHUgc2Fnc3Q6IGhhc3RlIGVpbiBob21lLW11ZD8KQXBvbGxvbmlhIHNldWZ6dC4KRHUgc2Fnc3Q6IHdpZSBwcm9ncmFtbWllcnN0IGR1IGRhbm4/CkR1IHdpcmtzdCBlaW4gV3VuZGVyLgpEZWluIEFudGxpdHogdmVyZmluc3RlcnQgc2ljaC4KQXBvbGxvbmlhIHNhZ3Q6IGViZW4gbmljaHQsIHdlaWwgV2ltIG1laW5lbiBQQyBub2NoIG5pY2h0IGhpbmdlYm9nZW4gaGF0IDooCkR1IHNhZ3N0OiBtbXBmCkR1IHNhZ3N0OiB3ZWlsIHdpbS4uLi4gdW5kIGR1PyEKQXBvbGxvbmlhIHNhZ3Q6IGRhcyB3aWxsIG5pY2h0IHNvIHdpZSBpY2ggd2lsbCAodHlwaXNjaCA6KCgoKCkKRHUgc2Fnc3Q6IGZyYXVlbi1tZW50YWxpdGFldAoKSmFqYSwgc28gc2luZCBzZS4uLgoKTm9ubmUsIHd1bmRlcnQgZGFzIGdhcm5pY2h0IG1laHIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZnJhdWVuLW1lbnRhbGl0YWV0IChNYWhhdG11LCAxNi4gTm92IDE5OTksIDExOjE1OjIwKToKfiMhIHJuPU5vbm5lIHJ0PTk0Mjc0NTA2NCByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0NTA2NAoqZyoKTWFuIGthbm4gYWJlciBkdXJjaGF1cyBnYW56IG9obmUgSG9tZW11ZCBhcmJlaXRlbi4gTnVyIGRhdWVydCBkYW5uIGRhcwpEZWJ1Z2dlbiAod2llIG1hbiBlcmFobmVuIGthbm4pIGV0d2FzIGxhZW5nZXIuIEFiZXIgbWFuIGdld29laG50IHNpY2gKZWluZW4gZmVobGVybWluaW1pZXJlbmRlbiBTY2hyZWlic3RpbCBhbiA6PgoKTWFoYXRtdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGZyYXVlbi1tZW50YWxpdGFldCAoQXBvbGxvbmlhLCAxNi4gTm92IDE5OTksIDExOjE3OjQ0KToKfiMhIHJuPU5vbm5lIHJ0PTk0Mjc0NTA2NCByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0NTA2NApKYWphamEsIGljaCBzcGFyIG1pciBuZW4gS29tbWVudGFyIDtvKQoKQXBvKiAodHJvdHpkZW0gZ3JpbnNlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZWlobmFjaHRzZWxmZT8hPyAoQXBvbGxvbmlhLCAxNi4gTm92IDE5OTksIDExOjI2OjQ2KToKQWVoZW0uLi4gZXMgZ2FiIGRvY2gga3VlcnpsaWNoIGVpbmUgRGlza3Vzc2lvbiBkYXJ1ZWJlciwgd2VyIFJvY2h1cyBiZWkgc2VpbmVuCk5pa29sYXVzYWt0aXZpdGFldGVuIHVudGVyc3R1ZXR6dC4uLiBhdXMgaXJnZW5kZWluZW0gR3J1bmQgYmxpZWIgYmVpIG1pcgpoYWVuZ2VuLCBkYXNzIGljaCBpbiBXaW50ZXJidXJnIGFscyBXZWlobmFjaHRzZWxmZSBhdWZ0YXVjaGVuIHNvbGwuLi4gZGFiZWkKYmluIGljaCBqYSBudSBoZXJ6bGljaCB3ZW5pZyBlbGZlbmhhZnQuLi4KTXVzcyBpY2ggZGVubiB3aXJrbGljaD8/PyBVbmQgZGFubiBhdWNoIG5vY2ggYWxsZWluZT8/PyBGcmVpd2lsbGlnZSB2b3IgKGdpYnQKZ2FyYW50aWVydCBrZWluZSwgaXMgamEgc29uc3Qga2VpbmVyIHNvIGJlc2NoZXVlcnQsIHNpY2ggYXVmIHNvIHdhcwplaW56dWxhc3NlbiA7KSkuLi4KCkFwbyogKGFuIGlocmVtIGdydWVuZW4gS2xlaWQgdmVyemVpZmVsbmQgdW5kIG5hY2ggRmx1ZWdlbG4gc3VjaGVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWlobmFjaHRzZWxmZT8hPyAoTWFoYXRtdSwgMTYuIE5vdiAxOTk5LCAxMTozMTowNCk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9OTQyNzQ4MDA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CkR1IGthbm5zdCBhdWNoIGdlcm4gYWxzIExlZGVyZWxmZSBhdWZ0cmV0ZW4sIGRhcyB3aXJkIGRlbSB2ZXJzYW1tZWx0ZW4KTXVkZGVycGFjayBrYXVtIGRpZSBTdGltbXVuZyB2ZXJkZXJiZW4uIEltIEdlZ2VudGVpbCA6PiBNaXQgc28gZ3Jvc3NlbiwKZmV1Y2h0ZW4gTGVkZXJzY2h3aW5nZW4gdW5kIGxhbmdlIHNwaXR6ZW4gWmFlaG5lIC4uLiBpY2ggc2Nod2VpZmUgYWIgOikKCk1haGF0bXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2VpaG5hY2h0c2VsZmU/IT8gKEFwb2xsb25pYSwgMTYuIE5vdiAxOTk5LCAxMTozMjo1MSk6Cn4jISBybj1NYWhhdG11IHJ0PTk0Mjc0ODI2NCByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpBbHNvIGljaCBoYXR0ZSBfbmljaHRfIHZvciwgYWxzIExhY2smTGVkZXItRWxmZSBkYSB6dSBlcnNjaGVpbmVuIDspLi4uCgpBcG8qIChkZW4gTGVkZXJtaW5pIHdlZ3BhY2tlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZWlobmFjaHRzZWxmZT8hPyAoTW9yZ290aCwgMTYuIE5vdiAxOTk5LCAxMTozMzoyNyk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9OTQyNzQ4MzcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CkRvcnQgbmljaHQsIGFiZXIgd29obCBob2ZmZW5sdGljaCB3b2FuZGVycyA7LSkpCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2VpaG5hY2h0c2VsZmU/IT8gKEFwb2xsb25pYSwgMTYuIE5vdiAxOTk5LCAxMTozNDo0Nyk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTk0Mjc0ODQwNyByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpOYSwgd2VubidzIGF1c2RydWVja2xpY2ggZ2V3dWVuc2NodCB3aXJkLCBkYW5uIGtvbW0gaWNoIHdvYW5kZXJzIG1laW5ldHdlZ2VuCmluIExlZGVyLCBhYmVyIG5pY2h0IGFscyBFbGZlIDspCgpBcG8qIChncmluc2VuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoaGphIChNb3Jnb3RoLCAxNi4gTm92IDE5OTksIDExOjM5OjExKToKUm9jaHVzICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRlaW4gSGVpbGlnZW5zY2hlaW4gZmxhY2tlcnQuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZWlobmFjaHRzZWxmZT8hPyAoUm9jaHVzLCAxNi4gTm92IDE5OTksIDEyOjM1OjM4KToKfiMhIHJuPU1haGF0bXUgcnQ9OTQyNzQ4MjY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CkhtbSwgaWNoIGdsYXViZSBKRURFUyBFcnNjaGVpbnVuZ3NiaWxkIGRhcyBpY2ggbWlyIGFuIEFwbyB2b3JzdGVsbGVuCmthbm4gKGtlbm5lIGRlbiBJbmhhbHQgaWhyZXMgS2xlaWRlcnNjaHJhbmtlcyBqYSBsZWlkZXIgbnVyCnp1bSBUZWlsIChEYW5rIFdpbSA6LSkpIGR1ZXJmdGUgZGVuIE11ZGRlcm4gbmljaHQgZGllClN0aW1tdW5nIHZlcmRlcmJlbi4uLiBpbSBHZWdlbnRlaWwgOi0pCgogUm9jaHVzClBTOiBXZXIgZmx1ZXN0ZXJ0IGRhIGV0d2FzIHZvbiAiTWFuIHNvbGx0ZSBuaWNodCB2b24gc2ljaAphdWYgYW5kZXJlIHNjaGxpZXNzZW4/IgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2VpaG5hY2h0c2VsZmU/IT8gKEFwb2xsb25pYSwgMTYuIE5vdiAxOTk5LCAxMjo0MDoyMSk6Cn4jISBybj1Sb2NodXMgcnQ9OTQyNzUyMTM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CkljaCBzb2xsdGUgd29obCBkYXJhdWYgaGlud2Vpc2VuLCBkYXNzIGF1Y2ggV2ltIGRlbiBJbmhhbHQgbWVpbmVzCktsZWlkZXJzY2hyYW5rZXMgbmljaHQgYmVzb25kZXJzIGd1dCBrZW5udCwgc29uZGVybiBudXIgMSBvZGVyIDIgVGVpbGUKZGFyYXVzLi4uICpmcmVjaCBncmlucyouICBVbmQgZGllIHppZWggaWNoIGdhcmFudGllcnQgbmljaHQgYW4sIHBhc3NlbiBuaWNodAp6dSBlaW5lciBXZWlobmFjaHRzZWxmZSA7KQoKQXBvKiAocHJ1c3RlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXZWlobmFjaHRzZWxmZT8hPyAoR3JpbW1ib3JuLCAxNi4gTm92IDE5OTksIDEyOjQ0OjAyKToKfiMhIHJuPUFwb2xsb25pYSBydD05NDI3NTI0MjEgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKRGFzIGhlaXNzdCBhbHNvLCBkYXNzIER1IGlobSBpbW1lciBudXIgbWl0IG1heGltYWwgendlaSBLbGVpZHVuZ3NzdHVlY2tlbgpiZWtsZWlkZXQgZ2VnZW51ZWJlcnRyaXR0c3Q/CgpbWF0gU2VuZCBQaXghCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdlaWhuYWNodHNlbGZlPyE/IChBcG9sbG9uaWEsIDE2LiBOb3YgMTk5OSwgMTI6NDc6MzYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0Mjc1MjY0MiByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpOZWluLCBkYXMgaGVpc3N0IGVzIG5pY2h0ISAgRGFzIGhlaXNzdCBibG9zcywgZGFzcyBlciBkaWUgQmVzY2hyZWlidW5nIHp3ZWllcgpLbGVpZHVuZ3NzdHVlY2tlIGZ1ZXIgc2VpbmVuIExhZGVuIHZlcndlbmRldC4uLiBuaWNodCwgZGFzcyBpY2ggc2llIGlobSBhdWNoCm5vY2ggdm9yZ2VmdWVocnQgaGFldHRlISEKVGphLCBGYW50YXNpZSBpc3QgZWJlbiBhbGxlcywgZ2VsbC4uLiA7KQoKQXBvKiAoc2ljaCBncmFkIGZyYWdlbmQsIHdhcyBzaWUgZGEgd2llZGVyIGxvc2dldHJldGVuIGhhdCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdlaWhuYWNodHNlbGZlPyE/IChNYWhhdG11LCAxNi4gTm92IDE5OTksIDEyOjUyOjU5KToKfiMhIHJuPUFwb2xsb25pYSBydD05NDI3NTI4NTYgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKKmdhYWFhYWgqIDopClppZWggZWluZW4gS2FydG9mZmVsc2FjayBhbiwgc29uc3QgbXVlc3NlbiB3aXIsIGRlbiBBcnRpa2VsbiBuYWNoIHp1CnNjaGxpZXNzZW4sIFJvY2h1cyBlaW5lIENvbGEtSW5mdXNpb24gbGVnZW4gdW5kIEdyaW1tYm9ybiBlaW5lIEhlcnotCm1hc3NhZ2UgdmVycGFzc2VuLgoKTWFoYXRtdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2VpaG5hY2h0c2VsZmU/IT8gKEFwb2xsb25pYSwgMTYuIE5vdiAxOTk5LCAxMjo1NDozMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTQyNzUzMTU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CkFsc28gaXJnZW5kd2FzIGtyaWVnc3QgRHUgZGEgaW4gZGVuIGZhbHNjaGVuIEhhbHMuLi4gKmJyZWl0IGdyaW5zKgpEcnVlY2tlbiB3aXIncyBlaW5mYWNoIG1hbCBzbyBhdXM6IEVyIGtlbm50IDIgbWVpbmVyLi4uIGFlaC4uLiAnYmVzb25kZXJlbicKS2xlaWR1bmdzc3R1ZWNrZSBhdXMgQmVzY2hyZWlidW5nZW4sIGhhdCBtaWNoIG5hdHVlcmxpY2ggaW4gYW5kZXJlbgooJ25vcm1hbGVuJykgS2xhbW90dGVuIHNjaG9uIGdlc2VoZW4gdW5kIHVlYmVyaGF1cHQgbm9jaCBuaWUgaW0gRXZha29zdHVlbSwKY2FwaXNjZT8/IDopCgpBcG8qIChtaXQgZGVuIEF1Z2VuIHJvbGxlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXZWlobmFjaHRzZWxmZT8hPyAoUm9jaHVzLCAxNi4gTm92IDE5OTksIDEyOjU1OjE1KToKfiMhIHJuPU1haGF0bXUgcnQ9OTQyNzUzMTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CldhcyBoZWlzc3QgaGllciBJSFIgbXVlc3N0IG1pciBlaW5lIENvbGEtSW5mdXN1aW9uIGxlZ2VuPwpVbSBkaWUgV2llZGVyYmVsZWJ1bmcgd3VlcmRlIHNpY2ggQXBvIHNjaG9uIHNlbGJlcgprdWVtbWVybi4uLiBob2ZmZSBpY2guLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFdlaWhuYWNodHNlbGZlPyE/IChBcG9sbG9uaWEsIDE2LiBOb3YgMTk5OSwgMTI6NTU6NDcpOgp+IyEgcm49Um9jaHVzIHJ0PTk0Mjc1MzMxNSByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpIbW1tbSwgYmlzdCBqYSBtZWluIFBhcGkgOykKCkFwbyogKHRvZWNodGVybGljaCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdlaWhuYWNodHNlbGZlPyE/IChNb3Jnb3RoLCAxNi4gTm92IDE5OTksIDEyOjU2OjI1KToKfiMhIHJuPUFwb2xsb25pYSBydD05NDI3NTMzNDcgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKU2Nob24ga2xhciwgdW5kIEluemVzdCBpc3QgZWluIFNwaWVsIGZ1ZXIgZGllIGdhbnplIEZhbWlsaWUgIQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdlaWhuYWNodHNlbGZlPyE/IChNYWhhdG11LCAxNi4gTm92IDE5OTksIDEyOjU2OjQzKToKfiMhIHJuPUFwb2xsb25pYSBydD05NDI3NTMzNDcgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKSmEuIE1pdCBkZW4gc3BpdHplbiBaYWVobmVuIGVpbiBMb2NoIGluIGRpZSBIYWxzc2NobGFnYWRlciBiZWlzc2VuIHVuZCBkYW5uCnZlcnN1Y2hlbiBkYSBlaW5lIENvbGEgcmFuenVmdW1tZWxuLiBTbyBzdGVsbCBpY2ggbWlyIGRhcyB2b3IuCldpZSB3YXIgZGFzIG5vY2ggbWl0ICdFbmdlbCBkZXIgTmFjaHQnID8KCk1haGF0bXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBXZWlobmFjaHRzZWxmZT8hPyAoQXBvbGxvbmlhLCAxNi4gTm92IDE5OTksIDEyOjU3OjMyKToKfiMhIHJuPU1vcmdvdGggcnQ9OTQyNzUzMzg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2Cldlbm4gaWNoIG1pY2ggcmVjaHQgZXJpbm5lcmUsIGRhbm4gd2FyIGhpZXIgdm9uIFdpZWRlcmJlbGVidW5nIGRpZSBSZWRlLCBuaWNodAp2b24gSW56ZXN0ISEgV2FzIER1IHNjaG9uIHdpZWRlciBkZW5rc3QuLi4gd28gaWNoIGRvY2ggc28gaGFybWxvcywgbGllYiwgbmV0dAp1bmQgdm9yIGFsbGVtIHVuc2NodWxkaWcgYmluISEgOykKCkFwbyogKGRpZSB3ZWlzcywgZGFzcyBpaHIgZGFzIGVoIHdpZWRlciBrZWluZXIgYWJuaW1tdCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBXZWlobmFjaHRzZWxmZT8hPyAoTW9yZ290aCwgMTYuIE5vdiAxOTk5LCAxMjo1ODoyMik6Cn4jISBybj1BcG9sbG9uaWEgcnQ9OTQyNzUzNDUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CkFsc28gRGVpbmUgV2llZGViZWxlYnVuZ3N2ZXJzdWNoZSBrYW5uIGljaCBtaXIgc2Nob24gbGViaGFmdCB2b3JzdGVsbGVuLgpIYXVwdHNhY2hlIGVzIGlzdCBlaW4gU3R1ZWNrIGRyYW4sIGRhcyB3aWVkZXIgbGVidCA7LSkpCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFdlaWhuYWNodHNlbGZlPyE/IChBcG9sbG9uaWEsIDE2LiBOb3YgMTk5OSwgMTM6MDA6MzYpOgp+IyEgcm49TW9yZ290aCBydD05NDI3NTM1MDIgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKV2lyIHdpc3NlbiBhbGxlLCBkYXNzIER1IG5lIHNjaG11dHppZ2UgRmFudGFzaWUgaGFzdCwgTSogOikgIAoKQXBvKiAoc2ljaCBlaW5lbiB3ZWl0ZXJlbiBLb21tZW50YXIgdmVya25laWZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBISUxGRSEgKEJvaW5nLCAxNi4gTm92IDE5OTksIDEzOjAyOjA5KToKfiMhIG9uPU1vbnRhbnVzIG90PTk0MjQ4NjYzNiBvZz1zdWNoZS1iaWV0ZQp+IyEgcm49V3VyemVsIHJ0PTk0MjQ0NTc4OCByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTk0MjMzODQ5NAoKQWNoIFd1cnplbCwgRHUgTmloaWxpc3QuCkR1IGhhc3Qgd2llZGVybWFsIGdhciBuaXggdmVyc3RhbmRlbi4gOikKTWFnaWVyIGFid2VydGVuLCBhbGxlIEJlc2l0emVyIHZvbiBTZWhlcmhhZXVzZXJuIGVudGVpZ25lbiEKQWxsZSBNYWNodCBkZW0gUGFydHlrb2xsZWt0aXYhCgotTW9udGFudXMuIEhldXRlIHJldm9sdXRpb25hZXIKKHJrbnVkZGVsIHByYSBmcm9lKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSElMRkUhIChCb2luZywgMTYuIE5vdiAxOTk5LCAxMzowMjoxNyk6Cn4jISBvbj1QcmEgb3Q9OTQyNjc0MTAwIG9nPXN1Y2hlLWJpZXRlCn4jISBybj1XdXJ6ZWwgcnQ9OTQyNDQ1Nzg4IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9OTQyMzM4NDk0CkJsb2VkbWFubi4gTGVybiBlcnN0bWFsIGxlc2VuLiBJbmtsdXNpdmUgU21pbGV5cy4KClByYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEhJTEZFISAoQm9pbmcsIDE2LiBOb3YgMTk5OSwgMTM6MDI6MjEpOgp+IyEgb249UHJhIG90PTk0MjY3NDU3NiBvZz1zdWNoZS1iaWV0ZQp+IyEgcm49UHJhIHJ0PTk0MjY3NDEwMCByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTk0MjMzODQ5NApTb3JyeSwgaGFiZSBtaWNoIGltIFRvbiB2ZXJncmlmZmVuLiBTdHJlaWNoZSAnQmxvZWRtYW5uJywgZnVlZ2UgZWluOiAnRGVwcCcKClByYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEhJTEZFISAoQm9pbmcsIDE2LiBOb3YgMTk5OSwgMTM6MDI6MzMpOgp+IyEgb249V3VyemVsIG90PTk0MjcwMDA3NSBvZz1zdWNoZS1iaWV0ZQp+IyEgcm49UHJhIHJ0PTk0MjY3NDU3NiByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTk0MjMzODQ5NAp3aWUgd2FyIGRhcyBub2NoPyBnZXRyb2ZmZW5lIGh1bmRlIGJlbGxlbj8gOikKaWNoIGJsZWliZSBiZWkgIm51bGxyYWZmZXIiIDopCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEhJTEZFISAoQm9pbmcsIDE2LiBOb3YgMTk5OSwgMTM6MDI6MzcpOgp+IyEgb249UHJhIG90PTk0Mjc1MzIwNSBvZz1zdWNoZS1iaWV0ZQp+IyEgcm49V3VyemVsIHJ0PTk0MjcwMDA3NSByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTk0MjMzODQ5NApXZXIgaGF0IGhpZXIgenVlcnN0IGdlYmVsbHQ/IEljaCBibGVpYmUgYmVpIERlcHAuCgpQcmEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZWlobmFjaHRzZWxmZT8hPyAoQ2F0d2VhemxlLCAxNi4gTm92IDE5OTksIDE0OjEyOjA5KToKfiMhIHJuPUFwb2xsb25pYSBydD05NDI3NDgzNzEgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKTWFoYXRtdSwgRHUgRGVwcC4KSmV0enQgaGFzdCBEdSBzaWUgdmVyZ3JhdWx0IDotKQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXZWlobmFjaHRzZWxmZT8hPyAoQXBvbGxvbmlhLCAxNi4gTm92IDE5OTksIDE0OjE0OjE2KToKfiMhIHJuPUNhdHdlYXpsZSBydD05NDI3NTc5Mjkgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKU28gbGVpY2h0IGJpbiBpY2ggbmljaHQgenUgdmVyZ3JhdWxlbi4uLiBiaW4gYmxvc3MgaGFybWxvcywgbGllYiwgbmV0dCB1bmQKdW5zY2h1bGRpZywgd2llIGljaCBiZXRvbmVuIG1vZWNodGUgKmh1c3QqCgpBcG8qICh1bnNjaHVsZGlnIHBmZWlmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2VpaG5hY2h0c2VsZmU/IT8gKENhdHdlYXpsZSwgMTYuIE5vdiAxOTk5LCAxNDoxNTo1Mik6Cn4jISBybj1NYWhhdG11IHJ0PTk0Mjc1MzE3OSByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpNQUhBVE1VISEhCgpKZXR6dCBsYW5ndHMgbGFuZ3NhbSwgaXJnZW5kd2llIGZ1bmt0aW9uaWVyZW4gRGVpbmUgTWFpbHMgCm5pZSBzbywgd2llIER1IHNpZSBiZWFic2ljaHRpZ3N0LgoKSGFzdCBEdSBhdWNoIG51ciBlaW5lIHVuZ2VmYWVocmUgQWhudW5nIGRhdm9uLCB3ZWxjaGUgSGltbWVsCnVuZCBIb2VsbGVuIFJvY2h1cyBhbGxlICdsb3N0cmV0ZW4nIGthbm4sIHdlbm4gZXIgYXVjaCBudXIgZGVuCkhhdWNoIGVpbmVyIENIYW5jZSBzaWVodCwgZWluZSBfQ29sYS1JbmZ1c2lvbl8genUgYmVrb21tZW4/CgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdlaWhuYWNodHNlbGZlPyE/IChXaW0sIDE2LiBOb3YgMTk5OSwgMTQ6MTk6MzApOgp+IyEgcm49Um9jaHVzIHJ0PTk0Mjc1MjEzOCByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpXaW0gc2NoYXV0IG51biB2b2VsbGlnIHVuc2NodWxkaWcgUm9jaHVzIGFuIHVudCBtZWludDogSGFybWxvcywgbmljaHQgd2Focj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdlaWhuYWNodHNlbGZlPyE/IChXaW0sIDE2LiBOb3YgMTk5OSwgMTQ6MjA6MzApOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTk0Mjc1MjQyMSByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpXaW0gc2Nod2VpZ3QgbnVyIGdyaW5zZW5kLgpEZW4gUmVzdCB3b2xsdGVzdCBEdSBtaXIgamEgbmljaHQgemVpZ2VuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXZWlobmFjaHRzZWxmZT8hPyAoUm9jaHVzLCAxNi4gTm92IDE5OTksIDE0OjIxOjEyKToKfiMhIHJuPVdpbSBydD05NDI3NTgzNzAgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKUm9jaHVzIGVybmlubmVydCBzaWNoIGFuIGVpbmVuIEVsbGVuYm9nZW4gZGVuIGplbWFuZCBhYmJla29tbWVuIGhhdAp1bmQgbWVpbnQ6IEdyb2Vzc3RlbnRlaWxzIGhhcm1sb3MuIChjKSBEb3VnbGFzIEFkYW1zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXZWlobmFjaHRzZWxmZT8hPyAoV2ltLCAxNi4gTm92IDE5OTksIDE0OjIxOjU4KToKfiMhIHJuPVJvY2h1cyBydD05NDI3NTg0NzIgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKVHMgVHMuLi4gSW50ZXJlc3NhbnRlIFBoYW50YXNpZSwgR3JpbW1ib3JuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBXZWlobmFjaHRzZWxmZT8hPyAoV2ltLCAxNi4gTm92IDE5OTksIDE0OjIyOjQyKToKfiMhIHJuPUFwb2xsb25pYSBydD05NDI3NTI4NTYgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKV2ltIHZlcmtuZWlmdCBzaWNoIGVpbiAic2NoYWRlIGVpZ2VudGxpY2giLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2VpaG5hY2h0c2VsZmU/IT8gKEFwb2xsb25pYSwgMTYuIE5vdiAxOTk5LCAxNDoyNTo0NSk6Cn4jISBybj1XaW0gcnQ9OTQyNzU4NTYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2ClRqYS4uLiB6dSBEZWluZW0gTGVpZHdlc2VuIGJpbiBpY2ggYXVjaCBub2NoIHVuYmVzdGVjaGxpY2gsIGdlbGw/IT8gOykKCkFwbyogKGlyZ2VuZHdhcyBoaW50ZXJtIFJ1ZWNrZW4gdmVyc3RlY2tlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBXZWlobmFjaHRzZWxmZT8hPyAoV2ltLCAxNi4gTm92IDE5OTksIDE0OjI4OjQxKToKfiMhIHJuPUFwb2xsb25pYSBydD05NDI3NTg3NDUgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKSWNoIG1vZWNodGUgZXMgc28gZm9ybXVsaWVyZW46IEljaCBoYWJlIG5vY2ggbmljaHQgZGVuIHJpY2h0aWdlbiBBbnNhdHpwdW5rdApmdWVyIGVpbmVuIEJlc3RlY2h1bmdzdmVyc3VjaCBnZWZ1bmRlbiwgYWJlciB3YXMgbmljaHQgaXN0Li4uCldpbSBoYXQgc293aWVzbyBkYXMgR2VmdWVobCBlaW5lcyBiZXNvbmRlcmVuIFZlcnN0YWVuZG5pc3NlcyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogV2VpaG5hY2h0c2VsZmU/IT8gKEFwb2xsb25pYSwgMTYuIE5vdiAxOTk5LCAxNDo0MTo1Mik6Cn4jISBybj1XaW0gcnQ9OTQyNzU4OTIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2Ck9vb29jaCwgd2FlcnN0ZSBqZXR6dCBzZWhyIGVudHRhZXVzY2h0LCB3ZW5uIGljaCBzYWdlLCBkYXNzIER1IGRlbiBhdWNoIG5pY2h0CmZpbmRlbiB3aXJzdD8/ISEKCkFwbyogKHNjaHdlc3RlcmxpY2gpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogV2VpaG5hY2h0c2VsZmU/IT8gKFdpbSwgMTYuIE5vdiAxOTk5LCAxNDo0MzowMCk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9OTQyNzU5NzEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CkphLCB3YWVyZSBpY2guIEFiZXIgd296dSBpc3QgbWFuIGtyZWF0aXYgdW5kIHBoYW50YXNpZWJlZ2FidCAqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBXZWlobmFjaHRzZWxmZT8hPyAoQXBvbGxvbmlhLCAxNi4gTm92IDE5OTksIDE0OjQ2OjAwKToKfiMhIHJuPVdpbSBydD05NDI3NTk3ODAgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKV2llIHdhZXIncywgd2VubiBEdSBEZWluZSBLcmVhdGl2aXRhZXQgdW5kIFBoYW50YXNpZSBtYWwgZGF6dSBiZW51dHp0LCBEaXIKc2VsYnN0IHdhcyBmdWVyIERlaW5lbiBMYWRlbiBlaW5mYWxsZW4genUgbGFzc2VuPz8/ICpmcmVjaCBncmlucyoKCkFwbyogKGRpZSBzaWNoIGpldHp0IHVlYmVybGVnZW4gd2lyZCwgb2IgV2ltIG5vY2ggZWluZW4gaWhyZXIgYW5kZXJlbgpFbnR3dWVyZmUga3JpZWd0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFdlaWhuYWNodHNlbGZlPyE/IChNYWhhdG11LCAxNi4gTm92IDE5OTksIDE0OjQ2OjMyKToKfiMhIHJuPUFwb2xsb25pYSBydD05NDI3NTk5NjAgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKR2VnZW52b3JzY2hsYWc6IE1vcmdvdGggbGFlc3N0IHNpY2ggd2FzIGZ1ZXIgV2ltcyBMYWRlbiBlaW5mYWxsZW4gOl0KCk1haGF0bXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBXZWlobmFjaHRzZWxmZT8hPyAoVGlhbWFrLCAxNi4gTm92IDE5OTksIDE0OjQ3OjE4KToKfiMhIHJuPU1haGF0bXUgcnQ9OTQyNzU5OTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CkRhbWl0IGRhbm4gU2VpZGVuc3RydW1wZmhvc2VuIG5lbiBLbmllc3Rvc3Nib251cyBoYWJlbj8gXTotPgoKVGlhbWFrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogV2VpaG5hY2h0c2VsZmU/IT8gKFdpbSwgMTYuIE5vdiAxOTk5LCAxNDo0Nzo0Mik6Cn4jISBybj1BcG9sbG9uaWEgcnQ9OTQyNzU5OTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CkljaCBkYWNodGUsIGJpc2xhbmcgaGFiZW4gd2lyIHVucyByZWNodCBndXQgZXJnYWVuenQgd2FzIGRpZSBLcmVhdGl2aXRhZXQKYW5naW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogV2VpaG5hY2h0c2VsZmU/IT8gKE1haGF0bXUsIDE2LiBOb3YgMTk5OSwgMTQ6NDk6NDYpOgp+IyEgcm49V2ltIHJ0PTk0Mjc2MDA2MiByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpEdSByaWNodGVzdCBvZmZlbnNpY2h0bGljaCBEZWluZSBLcmVhdGl2aXRhZXQgYXVmIGRpZSBmYWxzY2hlbiBTdGVsbGVuIDopCkRhIGlzdCBSb2NodXMgcGZsZWdlbGVpY2h0ZXIuIChhKSBpc3QgZXIgc2Nob24gZXR3YXMgYWVsdF5IXkheSF5IZ2VtdWV0LQpsaWNoZXIgdW5kIChiKSBicmF1Y2h0IGVyIG51ciBlaW4gQ29sYSBmdWVyIEtyYWV0aXZpdGFldCB1bmQgR2x1ZWNrIDstKQoKTWFoYXRtdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFdlaWhuYWNodHNlbGZlPyE/IChBcG9sbG9uaWEsIDE2LiBOb3YgMTk5OSwgMTQ6NDk6NDgpOgp+IyEgcm49V2ltIHJ0PTk0Mjc2MDA2MiByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpUaWFtYWs6IFNlaWRlbnN0cnVlbXBmZSBhbGxlaW4gc2luZCBvZWRlIDopCk1haGF0bXU6IGlzdCBuZSBpbnRlcmVzc2FudGUgSWRlZSwgTW9yZ290aCBmdWVyIHNvIHdhcyBhYnp1c3RlbGxlbgpCcnVkZXJoZXJ6IFdpbTogYmlzIGpldHp0IGphLCBhYmVyIHVlYmVycmVpeiBlcyBuaWNodCA6KSBTb25zdCAgbWFjaHN0IER1CkRlaW5lbiBMYWRlbiBiYWxkIHdpcmtsaWNoIGFsbGVpbmUgOikKCkFwbyogKGRpZSBzaWNoIGdyYWQga29lc3RsaWNoIGFtdWVzaWVydCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBXZWlobmFjaHRzZWxmZT8hPyAoQXBvbGxvbmlhLCAxNi4gTm92IDE5OTksIDE0OjUwOjM4KToKfiMhIHJuPU1haGF0bXUgcnQ9OTQyNzYwMTg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2Ck1haGF0bXUsIGljaCBnbGF1YiBpY2gga2VubiBtZWluZW4gUGFwaSBldHdhcyBiZXNzZXIgOykKSWhyIHVudGVyc2NoYWV0enQgZGVuIGphIGFsbGUgOykKCkFwbyogKHRvZWNodGVybGljaCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBXZWlobmFjaHRzZWxmZT8hPyAoV2ltLCAxNi4gTm92IDE5OTksIDE0OjUzOjU3KToKfiMhIHJuPUFwb2xsb25pYSBydD05NDI3NjAxODggcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKQWNoIGVpbiBUZWlsIG1laW5lciBFcndlaXRlcnVuZ2VuIHNjaGVpdGVybiBkb2NoIG51ciBhbiBkZXIgZnJlaXdpbGxpZ2VuClNlbGJzdGtvbnRyb2xsZSwga2VpbmUgTXVkZGVyIHVudGVyIDIxIFJMSmFocmVuIG1laHIgaW4gZGVuIExhZGVuIHp1IGxhc3NlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFdlaWhuYWNodHNlbGZlPyE/IChNYWhhdG11LCAxNi4gTm92IDE5OTksIDE0OjU0OjM3KToKfiMhIHJuPVdpbSBydD05NDI3NjA0Mzcgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKRGFubiBkYXJmIGphIGRhcyBnYW56ZSBha3RpdmUgTXVkZGVycGFjayBuaWNodCBiZWkgRGlyIHJlaW4uIE1hY2ggZWluZW4KUmVudG5lcmxhZGVuIGF1ZiA6PgoKTWFoYXRtdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFdlaWhuYWNodHNlbGZlPyE/IChXaW0sIDE2LiBOb3YgMTk5OSwgMTQ6NTY6MzMpOgp+IyEgcm49TWFoYXRtdSBydD05NDI3NjA0Nzcgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKSG1tbS4uLi4gRHUgYnJpbmdzdCBtaWNoIGRhIGF1ZiBlaW5lIElkZWUuCnVudCBuYWNodGhlbWQKVXBzISBEYXMgd2FyIHdvaGwgenUgdmllbCBmdWVyIERpY2ghCltUb2Q6TGFyc10gWnV2aWVsIEF1ZnJlZ3VuZyBoYXQgZ2VyYWRlIHh5IHVtZ2VicmFjaHQuCltUb2Q6WnV2aWVsIEF1ZnJlZ3VuZyBrYW5uIGVpbmVuIEhlcnphbmZhbGwgdmVydXJzYWNoZW4uXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFdlaWhuYWNodHNlbGZlPyE/IChBbHBoYSwgMTYuIE5vdiAxOTk5LCAxNDo1NzoyOSk6Cn4jISBybj1XaW0gcnQ9OTQyNzYwNTkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2Ck5hIGRhcyBhYmVyIG51ciBmdWVyIFJlbnRuZXJzZWhlciBhYiA2MCBPbmxpbmV0YWdlbiBhdWZ3YWVydHMuLi4KQWxwaGEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogV2VpaG5hY2h0c2VsZmU/IT8gKE1haGF0bXUsIDE2LiBOb3YgMTk5OSwgMTQ6NTc6NDcpOgp+IyEgcm49V2ltIHJ0PTk0Mjc2MDU5MyByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpVbmQgd2VubiBtYW4gZGFtaXQgbmFjaCBlaW5lbSBNYWdpZXIgd2lyZnQsIHplcmZhZWxsdCBkZXIgenUgU3RhdWI/IFVuZAp3ZW5uIER1IEFwbyogZWluZW4gZ3J1ZW5lbiBFbGZlbmRyZXNzIGZ1ZXIgV2VpaG5hY2h0ZW4gc2NobmVpZGVyc3QsCmZhbGxlbiBhbGxlIG5ldWUgRU1zIHVtL2F1cz8KRmVpbi4gTWFjaG1hIDopCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogV2VpaG5hY2h0c2VsZmU/IT8gKFJvY2h1cywgMTYuIE5vdiAxOTk5LCAxNDo1ODozMSk6Cn4jISBybj1XaW0gcnQ9OTQyNzYwNTkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CkRFTiBWb3JzY2hsYWcgaGFiZSBpY2ggUGFyYSBzY2hvbiBmdWVyIEFuYXB1bWEgdW5kIFVuaXB1bmEgZ2VtYWNodC4uLgpzb2xsdGUgYWIgMTAwIFRhZ2Ugb25saW5lYWx0ZXIgd2lya2VuLi4uCnVuZCBqZXR6dCByYXRlIG1hbCB2b24gd2VtIGRpZSBBbnJlZ3VuZyBrb21tdCA6KQooVGlwOiBEaWUgYmVpZGVuIGZhbmdlbiBhdWNoIG1pdCBBIHVuZCBVIGFuIC4uLikKCiAgUm9jaHVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogV2VpaG5hY2h0c2VsZmU/IT8gKFdpbSwgMTYuIE5vdiAxOTk5LCAxNDo1OToyNyk6Cn4jISBybj1NYWhhdG11IHJ0PTk0Mjc2MDY2NyByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpOZSwgYmVpIG5lbSBNYWdpZXIgcmVpY2h0cyB3b2hsIG1laXN0IG51ciwgZGFzcyBlciBhdXMgZGVtIElkbGUgZXJ3YWNodC4KV2FzIHZlcmdsZWljaGJhciBlaW5lIHNlaHIgc3RhcmtlIFJlYWt0aW9uIGlzdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFdlaWhuYWNodHNlbGZlPyE/IChBcG9sbG9uaWEsIDE2LiBOb3YgMTk5OSwgMTU6MDU6MTgpOgp+IyEgcm49V2ltIHJ0PTk0Mjc2MDc2NyByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpBcG9sbG9uaWEgZGVua3QgLiBvIE8gKFdhcnVtIGthbm4gaWNoIGVpZ2VudGxpY2ggbmllIG1laW5lIEtsYXBwZSBoYWx0ZW4/PyEhKQoKQXBvKiAodHJvdHpkZW0gYnJlaXQgZ3JpbnNlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBXZWlobmFjaHRzZWxmZT8hPyAoVGVkZHksIDE2LiBOb3YgMTk5OSwgMTU6NDU6MTcpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTk0Mjc1MzI3MSByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpEdSBoYXN0IG5vcm1hbGUgS2xhbW90dGVuPwoKVGVkZHksIGthbm4gc2ljaCBuY2lodCBhbiBzb3dhcyBlcmlubmVybi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdlaWhuYWNodHNlbGZlPyE/IChBbmF0b2wsIDE2LiBOb3YgMTk5OSwgMTU6NDU6NDMpOgp+IyEgcm49VGVkZHkgcnQ9OTQyNzYzNTE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CkhhdCBzaWUuCgpBbmF0b2wsIGthbm4gc2ljaCBlcmlubmVybi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdlaWhuYWNodHNlbGZlPyE/IChUZWRkeSwgMTYuIE5vdiAxOTk5LCAxNTo0NzowNik6Cn4jISBybj1Sb2NodXMgcnQ9OTQyNzU4NDcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CipncnVtbWVsKgpEYWJlaSB3YXIgZGFzIGdhbnogaGFybWxvcywgd2FzIGljaCBnZXNhZ3QgaGF0dGUuCgpUZWRkeSwgTmFzZW5iZWluYnJ1Y2gsIDIgV29jaGVuIEludGVuc2l2c3RhdGlvbiAob2RlciBzbyBhZWhubGljaCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBXZWlobmFjaHRzZWxmZT8hPyAoVGVkZHksIDE2LiBOb3YgMTk5OSwgMTU6NDk6MjkpOgp+IyEgcm49QW5hdG9sIHJ0PTk0Mjc2MzU0MyByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpXZW5uIGR1IGRhcyBzYWdzdCwgd2lyZHMgd29obCBzdGltbWVuLgoKVGVkZHksIGdld2lzc2UgRm90b3Mga29udHJvbGxpZXJlbmQgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogV2VpaG5hY2h0c2VsZmU/IT8gKEFwb2xsb25pYSwgMTYuIE5vdiAxOTk5LCAxNTo1MDo0MSk6Cn4jISBybj1UZWRkeSBydD05NDI3NjM3Njkgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKQWxzbywgZGFzIHdhcyBpY2ggYXVmIGRlbiBGb3RvcyBhbmhhYiwgd2FyIGphIHdvaGwgd2FzIE5vcm1hbGVzISEKKG9kZXIgZXR3YSBkb2NoIG5pY2h0Pz8/IGhtbW0sIGRlZmluaWVyZSAnbm9ybWFsJy4uLikKCkFwbyogKGRpZSBhdWNoIG5vcm1hbGUgS2xhbW90dGVuIGltIFNjaHJhbmsgaGF0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFdlaWhuYWNodHNlbGZlPyE/IChNYWhhdG11LCAxNi4gTm92IDE5OTksIDE1OjUxOjM3KToKfiMhIHJuPUFwb2xsb25pYSBydD05NDI3NjM4NDEgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKVW5kIHdhbm4gaGFzdCBEdSBkaWUgZGFzIGxldHp0ZSBNYWwgZ2V0cmFnZW4/IEJlaSBkaWVzZXIgRGlza3Vzc2lvbgpiZWtvbW1lIGljaCBsYW5nc2FtIGRlbiBFaW5kcnVjaywgRHUgc2Vpc3QgZWluZSBlcnptYWdpZXJtb3JkZW5kZQpOYWNodGZlZSA6PgoKTWFoYXRtdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFdlaWhuYWNodHNlbGZlPyE/IChSb2NodXMsIDE2LiBOb3YgMTk5OSwgMTU6NTI6MTEpOgp+IyEgcm49TWFoYXRtdSBydD05NDI3NjM4OTcgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKIk1vcmRlbmQiIGlzdCBnbGF1YmUgaWNoIG5pY2h0IGRlciByaWNodGlnZSBBdXNkcnVjay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBXZWlobmFjaHRzZWxmZT8hPyAoVGVkZHksIDE2LiBOb3YgMTk5OSwgMTU6NTI6MTMpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTk0Mjc2Mzg0MSByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpkZWYgbm9ybWFsOiBEYXMgc2luZCBkaWUgYW5kZXJlbi4KRm90b3M6IFdpbGxzdCBkdSBkYXMgd2lya2xpY2ggd2lzc2VuPyBTb2xsIGljaCBzaWUgdmVyb2VmZmVudGxpY2hlbiB1bmQgd2lyCnN0aW1tZW4gYWI/CgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFdlaWhuYWNodHNlbGZlPyE/IChUZWRkeSwgMTYuIE5vdiAxOTk5LCAxNTo1Mjo1MCk6Cn4jISBybj1Sb2NodXMgcnQ9OTQyNzYzOTMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CktvbW10IGRlbSBhYmVyIHNjaG9uIHNlaHIgbmFoZS4KQWxsZXJkaW5ncyBiZXNjaHJhZW5rdCBzaWUgc2ljaCBkYWJlaSBuaWNodCBhdWYgRU1zIGZ1ZXJjaHRlIGljaC4KClRlZGR5LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFdlaWhuYWNodHNlbGZlPyE/IChXaW0sIDE2LiBOb3YgMTk5OSwgMTU6NTM6MjkpOgp+IyEgcm49TWFoYXRtdSBydD05NDI3NjM4OTcgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKWnVtaW5kZXN0IGljaCBoYWJlIGRhIGtlaW5lIEFuemVpY2hlbiB6dSBnZXNlaGVuLCBhdXNzZXJkZW0gbXVzcyBkaWUgRmFtaWxpZQpkb2NoIHp1c2FtbWVuIGhhbHRlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFdlaWhuYWNodHNlbGZlPyE/IChBcG9sbG9uaWEsIDE2LiBOb3YgMTk5OSwgMTU6NTU6NDUpOgp+IyEgcm49VGVkZHkgcnQ9OTQyNzYzOTMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CkR1IHJlZGVzdCBqZXR6dCB2b24gZGVuIEZvdG9zLCBkaWUgRHUgYmVpIG1pciB6dWhhdXNlIGFubGFlc3NsaWNoIGRlcwpTdGFtbXRpc2NoZXMgZ2VtYWNodCBoYXN0Pz8gRGllIHNpbmQgZG9jaCBibG9zcyBiZXNjaGV1ZXJ0LiBVbmQgYW5zb25zdGVuIHp3YXIKcGVpbmxpY2ggYWJlciB2b2VsbGlnIGhhcm1sb3MuCgpBcG8qIChkaWUgcGVpbmxpY2hlIEZvdG9zIGhhc3N0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFdlaWhuYWNodHNlbGZlPyE/IChNYWhhdG11LCAxNi4gTm92IDE5OTksIDE1OjU2OjU1KToKfiMhIHJuPUFwb2xsb25pYSBydD05NDI3NjQxNDUgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKPiAuLi4gKGRpZSBwZWlubGljaGUgRm90b3MgaGFzc3QpCkRhbm4gd2FydGUgbWFsIGRpZSBXZWlobmFjaHRzcGFydHkgYWIuIFN0b3NzZW4gd2lyIGRvY2ggbWFsIGVpbmUgcGF1c2NoYWxlCkRyb2h1bmcgYXVzIDopIDoKTWFjaCBkaWUgRWxmZSBvZGVyIGVzIGdpYnQgcGVpbmxpY2hlIEZvdG9zIGVuIG1hc3NlIHZvbiBEaXIuCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogV2VpaG5hY2h0c2VsZmU/IT8gKFdpbSwgMTYuIE5vdiAxOTk5LCAxNTo1Nzo1MSk6Cn4jISBybj1NYWhhdG11IHJ0PTk0Mjc2NDIxNSByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpQYXNzIGF1Ziwgc29uc3QgenVlY2tlIGljaCBkYXMgODAwZXIgVGVsZSB1bmQgaWNoIG1hY2hlIHBlaW5saWNoZSBQaG90b3Mgdm9uCkRpciwgdm9uIGRlbmVuIER1IGVyc3QgaW0gV2ViIGVyZmFlaHJzdCwgZGFzcyBEdSB1ZWJlcmhhdXB0IHBob3RvZ3JhcGhpZXJ0Cnd1cmRlc3QgXTotPgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFdlaWhuYWNodHNlbGZlPyE/IChBbmF0b2wsIDE2LiBOb3YgMTk5OSwgMTU6NTg6MTUpOgp+IyEgcm49TWFoYXRtdSBydD05NDI3NjQyMTUgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKICAid2VubiBpY2gga2xlcmlrZXIgd2FlciB3dWVyZCBpY2ggamV0enQgaW5zdGFlbmRpZyBiZXRlbgogIGRhc3MgZGllIHNjaG1hcnJuLXJ1YnJpayBlbmRsaWNoIHJhbmR2b2xsIGlzdCIKClNlaW4gRi1CYW5kIGFuZ3JpbnNlbmQsCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBXZWlobmFjaHRzZWxmZT8hPyAoVGVkZHksIDE2LiBOb3YgMTk5OSwgMTU6NTg6MzMpOgp+IyEgcm49V2ltIHJ0PTk0Mjc2NDI3MSByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpadW0gVGhlbWEgcGVpbmxpY2hlIEZvdG9zIGF1ZiBGZXRlbjogOi0oKCgKClRlZGR5LCBmcmFndCBzaWNoIGdlcmFkZSwgb2Igd2VyIG5vY2ggcGVpbmxpY2hlcmUgRm90b3MgaGlua3JpZWd0IGFscyBkaWUgdm9uCmlobQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFdlaWhuYWNodHNlbGZlPyE/IChBcG9sbG9uaWEsIDE2LiBOb3YgMTk5OSwgMTU6NTg6MzQpOgp+IyEgcm49TWFoYXRtdSBydD05NDI3NjQyMTUgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKCkFSR0whISBFcyBnaWJ0IGF1Y2ggcGVpbmxpY2hlIEZvdG9zLCB3ZW5uIGljaCBkaWUgRWxmZSBtYWNoZSEhIAoKQXBvKiAoZGllIHNpY2ggaW4gV2ludGVyYnVyZyB3b2hsIG5lIFBhcGllcnR1ZXRlIHVlYmVybiBLb3BmLi4uIG5laW4gYmVzc2VyCmJpcyB6dSBkZW4gRnVlc3NlbiB6aWVoZW4gd2lyZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBXZWlobmFjaHRzZWxmZT8hPyAoQm9pbmcsIDE2LiBOb3YgMTk5OSwgMTU6NTg6NTApOgp+IyEgcm49V2ltIHJ0PTk0Mjc2NDI3MSByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpJY2ggaGFsdGUgZGllc2UgRGlza3Vzc2lvbiBzY2hvbiBmdWVyIHBlaW5saWNoIGdlbnVnIC4uLiA7KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogV2VpaG5hY2h0c2VsZmU/IT8gKENhdHdlYXpsZSwgMTYuIE5vdiAxOTk5LCAxNTo1OToxMCk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9OTQyNzY0MTQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CkJlc2NoZXVlcnQsIHBlaW5saWNoIHVuZCBoYXJtbG9zPyBCZXNjaGV1ZXJ0LCBwZWlubGljaCB1bmQgaGFybWxvcwppc3QgZWluZSBiZWVpbmRydWNrZW5kZSBLb21iaW5hdGlvbiB1bmQgdmVyc3ByaWNodCBhdXNnZXNwcm9jaGVuIAppbnRlcmVzc2FudCB6dSBzZWluIDotKQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogV2VpaG5hY2h0c2VsZmU/IT8gKFdpbSwgMTYuIE5vdiAxOTk5LCAxNTo1OToxOCk6Cn4jISBybj1Cb2luZyBydD05NDI3NjQzMzAgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKV29sbHRlbiB3aXIgZGllIDEwMCByZXBseSBHcmVuemUgbmljaHQgaXJnZW5kd2FubiBtYWwgZ2VzcHJlbmd0IGhhYmVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFdlaWhuYWNodHNlbGZlPyE/IChBbmF0b2wsIDE2LiBOb3YgMTk5OSwgMTU6NTk6NTIpOgp+IyEgcm49QW5hdG9sIHJ0PTk0Mjc2NDI5NSByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgoKICAiZGEga2FubnN0IGR1IGxhbmdlIGJldGVuLCBoYWJlIGViZW4gZGllIGFuemFobCBhdWYgMjUwIGVyaG9laHQiCgpBcmdoIDspCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBXZWlobmFjaHRzZWxmZT8hPyAoQm9pbmcsIDE2LiBOb3YgMTk5OSwgMTY6MDA6NDApOgp+IyEgcm49V2ltIHJ0PTk0Mjc2NDM1OCByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpOaWNodCB3ZW5uIExldXRlIHdpZSBUZWRkeSBzdGF0dCBtaXQgUmVeMjAgbnVyIG1pdCBSZV41IHdlaXRlcm1hY2hlbiAuLi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFdlaWhuYWNodHNlbGZlPyE/IChUZWRkeSwgMTYuIE5vdiAxOTk5LCAxNjowMToxNSk6Cn4jISBybj1Cb2luZyBydD05NDI3NjQ0NDAgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKU29ycnksIGljaCBnZWIgbWlyIE11ZWhlIDspCgpUZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFdlaWhuYWNodHNlbGZlPyE/IChNYWhhdG11LCAxNi4gTm92IDE5OTksIDE2OjAyOjAyKToKfiMhIHJuPUFwb2xsb25pYSBydD05NDI3NjQzMTQgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKT2tvay4gSWNoIGhhYiBuaWNodCBnYXJhbnRpZXJ0LCBkYXNzIGVzIGRhbm4ga2VpbmUgcGVpbmxpY2hlbiBnaWJ0LiBBYmVyCnp1bWluZGVzdCBpY2ggd3VlcmRlIG1laW4gT2JqZWt0aXYgZGFubiBsaWViZXIgYXVmIGRlbiBzYWJiZV5IXkheSF5IdWVzc2VuCldpbSByaWNodGVuIDstKQoKTWFoYXRtdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IFdlaWhuYWNodHNlbGZlPyE/IChDYXR3ZWF6bGUsIDE2LiBOb3YgMTk5OSwgMTY6MDI6MDYpOgp+IyEgcm49V2ltIHJ0PTk0Mjc2NDM1OCByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpOZWluLCBkYW1hbHMgZ2luZyBlcyB1bSBSZV4xMDAwLiBVbmQgZGVyIEVpbnNhdHogaGF0IHNpY2ggd2VuaWdzdGVucwpnZWxvaG50Li4uCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBXZWlobmFjaHRzZWxmZT8hPyAoV2ltLCAxNi4gTm92IDE5OTksIDE2OjAzOjA3KToKfiMhIHJuPU1haGF0bXUgcnQ9OTQyNzY0NTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CkJlaSBzb2xjaCBnZXNpdHRldGVuIEtsZWlkdW5nc3N0dWVja2VuIHdpZSBhdWYgZGVtIFN0YW1tdGlzY2ggRkZNIHdpcmQgZGFzCmdhcmFudGllcnQgbmljaHQgcGFzc2llcmVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OTk6IFNDSFdVUFBESVdVUFAhIChBbmF0b2wsIDE2LiBOb3YgMTk5OSwgMTY6MDM6MjUpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTk0Mjc2NDUyNiByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpXaXJkIHNjaG9uLCBDYXR0aWUgOykKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFdlaWhuYWNodHNlbGZlPyE/IChXaW0sIDE2LiBOb3YgMTk5OSwgMTY6MDM6MjcpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTk0Mjc2NDUyNiByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpXZWxjaGVyIEVpbnNhdHogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwMDA6IFNDSFdVUFBESVdVUFAhIChDYXR3ZWF6bGUsIDE2LiBOb3YgMTk5OSwgMTY6MDM6NDcpOgp+IyEgcm49QW5hdG9sIHJ0PTk0Mjc2NDYwNSByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpKYWFhYWFhYWFhYSEKCldlciBiZXphaGx0IGRpZSBLaXN0ZT8KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTAwMTogU0NIV1VQUERJV1VQUCEgKEJvaW5nLCAxNi4gTm92IDE5OTksIDE2OjA0OjI1KToKfiMhIHJuPUNhdHdlYXpsZSBydD05NDI3NjQ2Mjcgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKRGFuY2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDAxOiBTQ0hXVVBQRElXVVBQISAoTWFoYXRtdSwgMTYuIE5vdiAxOTk5LCAxNjowNDoyOSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9OTQyNzY0NjI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2Ckthbm4gbWFuIGRhIG5pY2h0IGRhcyBlaWdlbnRsaWNoZSBPcGZlciBkZXMgVGhyZWFkcywgQXBvKiB6dSBpcmdlbmR3YXMKdmVycGZsaWNodGVuPyBJY2ggYmluIGltbWVyIG5vY2ggZnVlciBkaWUgRWxmZSAqc2NobW9sbCouCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDAyOiBTQ0hXVVBQRElXVVBQISAoVGVkZHksIDE2LiBOb3YgMTk5OSwgMTY6MDU6MTIpOgp+IyEgcm49TWFoYXRtdSBydD05NDI3NjQ2Njkgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKRGllIEVsZmUgc3BpZWx0IHNpZSBlaC4KClRlZGR5LCBzaWVodCBkYXMgZWlnZW50bGljaCBhbHMgYmVzY2hsb3NzZW5lIFNhY2hlIGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTAwMjogU0NIV1VQUERJV1VQUCEgKEFwb2xsb25pYSwgMTYuIE5vdiAxOTk5LCAxNjowNjowMyk6Cn4jISBybj1NYWhhdG11IHJ0PTk0Mjc2NDY2OSByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpVUlghIElzIGphIHNjaG9uIGd1dCwgaWNoIG1hY2ggamEgZGllIGRhZW1saWNoZSBFbGZlISEgQWJlciBiZXNjaHdlcnQgRXVjaApoaW50ZXJoZXIgYmxvc3MgbmljaHQhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTAwMzogU0NIV1VQUERJV1VQUCEgKFRlZGR5LCAxNi4gTm92IDE5OTksIDE2OjA2OjQxKToKfiMhIHJuPUFwb2xsb25pYSBydD05NDI3NjQ3NjMgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKQmVpIERFTSBLbGVpZCBrYW5uIGljaCBtaXIgbmljaHQgdm9yc3RlbGxlbiwgZGFzIHNpY2ggd2VyIGJlc2Nod2VydC4KClRlZGR5LCBmcmFndCBzaWNoIGdlcmFkZSwgb2IgZGVyIEtyYW5rZW53YWdlbiB1ZWJlcmhhdXB0IGRlbiBCZXJnIGhvY2gga29tbXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDA0OiBTQ0hXVVBQRElXVVBQISAoVGFyaW5hLCAxNi4gTm92IDE5OTksIDE2OjA4OjEyKToKfiMhIHJuPVRlZGR5IHJ0PTk0Mjc2NDgwMSByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpMYXNzdCBoYWx0IGRpZSBMZWljaGVuIGRlbiBCZXJnIHJ1bnRlcnJvbGxlbi4gV28gaXN0IGRhcyBQcm9ibGVtPwoKVGFyaW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTQ3NDgzNjQ3IFdhcyBpY2ggaW1tZXIgc2Nob24gbWFsIHdpc3NlbiB3b2xsdGUuLi4gKENhdHdlYXpsZSwgMTYuIE5vdiAxOTk5LCAxNjowODoyOCk6CgpJc3QgZGllIFplaXR1bmcgZWlnZW50bGljaCBzaWduZWQgb2RlciB1bnNpZ25lZD8gOi0pClVuZCBob2ZmZW50bGljaCBidWdmcmVlIDopCgpZVEMKClBTOiBQbGVhc2UgZG9uJ3QgcmVwbHkgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwMDU6IFNDSFdVUFBESVdVUFAhIChUZWRkeSwgMTYuIE5vdiAxOTk5LCAxNjowODoyOSk6Cn4jISBybj1UYXJpbmEgcnQ9OTQyNzY0ODkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2ClVtd2VsdHZlcnNjaG11dHp1bmc/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDA1OiBTQ0hXVVBQRElXVVBQISAoTWFoYXRtdSwgMTYuIE5vdiAxOTk5LCAxNjowODozMik6Cn4jISBybj1UYXJpbmEgcnQ9OTQyNzY0ODkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CkRhcyBsaWVmZSBhdWYgTUFnaWVyc2NoYWVuZHVuZyBoZXJhdXMuCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDA1OiBTQ0hXVVBQRElXVVBQISAoQm9pbmcsIDE2LiBOb3YgMTk5OSwgMTY6MDg6MzYpOgp+IyEgcm49VGFyaW5hIHJ0PTk0Mjc2NDg5MiByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpVbmQgZGVyIFNhYmJlciBmbGllc3N0IGF1Y2ggZGlyZWt0IGlucyBUYWwgLi4uCgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDA2OiBTQ0hXVVBQRElXVVBQISAoTWFoYXRtdSwgMTYuIE5vdiAxOTk5LCAxNjowOToxMik6Cn4jISBybj1Cb2luZyBydD05NDI3NjQ5MTYgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKQm9pbmc/IFNhYmJlcj8gV2FyemVuLiBCYWVoLiBSYW56aWdlcyBOdXRlbGxhLgoKTWFoYXRtdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeLTIxNDc0ODM2NDg6IDAgKEFuYXRvbCwgMTYuIE5vdiAxOTk5LCAxNjowOToyMyk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9OTQyNzY0OTA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzY0OTA4ClNpZ25lZCA7KQoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4tMjE0NzQ4MzY0NzogMCAoUm9jaHVzLCAxNi4gTm92IDE5OTksIDE2OjA5OjU1KToKfiMhIHJuPUFuYXRvbCBydD05NDI3NjQ5NjMgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NjQ5MDgKc2V0bWF4bXNnIHNjaG1hcnJuIDk5OQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeLTE6IDAgKENhdHdlYXpsZSwgMTYuIE5vdiAxOTk5LCAxNjoxMDoxNik6Ck9rLCBkYW5uIHRlc3RlbiB3aXIgamV0enQgYXVjaCBub2NoIGRhcyBidWdmcmVlIC4uLi4KWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDA2OiBTQ0hXVVBQRElXVVBQISAoVGFyaW5hLCAxNi4gTm92IDE5OTksIDE2OjEwOjM4KToKfiMhIHJuPUJvaW5nIHJ0PTk0Mjc2NDkxNiByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpkYXMgc2NobWllcnQgZWJlbiB6dXNhZXR6bGljaC4KClRhcmluYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMDogMCAoVGlhbWFrLCAxNi4gTm92IDE5OTksIDE2OjEwOjQwKToKfiMhIHJuPUNhdHdlYXpsZSBydD05NDI3NjUwMTYgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NjUwMTYKTml4IGRhLiBJY2ggaGFiIHNjaG9uIGdlbnVnIHp1IHR1bi4gOy0pCgpUaWFtYWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMuMTQxNSAoQW5hdG9sLCAxNi4gTm92IDE5OTksIDE2OjE0OjQ2KToKfiMhIHJuPVRpYW1hayBydD05NDI3NjUwNDAgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NjUwMTYKRWluIEVyem1hZ2llciBrYW5uIG5pZSBnZW51ZyB6dSB0dW4gaGFiZW4gOykKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFdlaWhuYWNodHNlbGZlPyE/IChUZWRkeSwgMTYuIE5vdiAxOTk5LCAxNjoxNTo0NSk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9OTQyNzY0MzE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2ClppZWhzdCBkdSB1bnRlciBkZXIgUGFwaWVydHVldGUgZWlnZW50bGljaCBub2NoIHdhcyBhbj8KClRlZGR5LCBpc3Qgc2ljaCBuaWNodCBzaWNoZXIsIGRhc3MgZGFzIHdlbmlnZXIgcGVpbmxpY2ggd3VlcmRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogMCAoVGlhbWFrLCAxNi4gTm92IDE5OTksIDE2OjE2OjAxKToKfiMhIHJuPUFuYXRvbCBydD05NDI3NjUyODYgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NjUwMTYKRHUgdmVyZHJlaHN0IGRhIHdhcy4KCkVpbiBFTSBrYW5uIG5pZSBnZW51ZyBaZWl0IGhhYmVuLiBGdWVyIGFsbCBkaWUgU2FjaGVuLCBkaWUgZXIgenUgdHVuIGhhdCA7XikKClRpYW1hawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeZmY6IEVyem1hZ2llciAoQW5hdG9sLCAxNi4gTm92IDE5OTksIDE2OjE2OjQ3KToKfiMhIHJuPVRpYW1hayBydD05NDI3NjUzNjEgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NjUwMTYKTW9tZW50IC0gdmVyZ2lzcyBlcyA6KS4gVW5iZXNjaGFlZnRpZ3RlIEVyem1hZ2llciBzaW5kIGdlZmFlaHJsaWNoIDspCgpBbmF0b2wgLSAqc2NoYXVkZXIqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlXmZmOiBFcnptYWdpZXIgKFJvY2h1cywgMTYuIE5vdiAxOTk5LCAxNjoxNzowMSk6Cn4jISBybj1BbmF0b2wgcnQ9OTQyNzY1NDA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzY1MDE2CkFMTEVSRElOR1MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlXmZmOiBFcnptYWdpZXIgKEdyaW1tYm9ybiwgMTYuIE5vdiAxOTk5LCAxNjoxNzo0NSk6Cn4jISBybj1Sb2NodXMgcnQ9OTQyNzY1NDIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzY1MDE2Ck5hLCBkYW5uIGlzdHMgamEgZWluIEdsdWVjayBkYXNzIER1IG1pdCBkZXIgREEgenUgdHVuIGhhc3QuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMHg0NTIyOiBFcnptYWdpZXIgKEFuYXRvbCwgMTYuIE5vdiAxOTk5LCAxNjoxODoyMik6Cn4jISBybj1Sb2NodXMgcnQ9OTQyNzY1NDIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzY1MDE2ClJvY2h1cyBpc3QgaW1tZXIgdW50ZXJiZXNjaGFlZnRpZ3QgO28pCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbyBzbyEgKEphbWFsc2tpLCAxNi4gTm92IDE5OTksIDE4OjQzOjAzKToKQ2hhb3QgVHlsYWsgKExldmVsIDExLCBTZWhlcikgYmV0cmF0IGdlcmFkZSBkYXMgTW9yZ2VuZ3JhdWVuLgpGbGFzaCBydWZ0OiBncmF0cwpPbGxpIHJ1ZnQ6IEdyYWFhYWF0cyEKQWxtZHVkbGVyIHJ1ZnQ6IGdyYXRzISEhClRlbmFyIHJ1ZnQ6IGdyYXRzCldlYXRoZXJ3YXggcnVmdDogZ3JhdHMhIQpLaWJvIHJ1ZnQ6IGdhcnRzCkh1bW5pIHJ1ZnQ6IEdyYXRzISEhISEhCkF0dXIgcnVmdDogZ3JhdHMKW0dyYXRzOkRqdG9tXSBncmF0cyEhISEhISEKQXN0ZXJvdGggcnVmdDogV0FBSCBOT0NIIEVJTkVSLi4uR1JBVFUKU3Ryb2hhbG0gcnVmdDogR1JBVFMgOykKVGhhbm9zIHJ1ZnQ6IGdyYXRzCltHcmF0czpEb2NkZXZpbF0gR1JBVFMKU2lybGFnYWxvdCBydWZ0OiBEYW5uIG1hbCBQUk9TVCEKRmlzY2hhIHJ1ZnQ6IHRvbGwKRGV4IHJ1ZnQ6IERBTktFIDopCltCZWlsZWlkOkJhcmRdIGRhcyB3YXIgdWVicmlnZW5zIGRlciBmbHVjaCA6KQpDaGFvdCBUeWxhayB2ZXJsaWVzcyBnZXJhZGUgZGFzIE1vcmdlbmdyYXVlbi4KCkphbWFsc2tpIG1hZyBrZWluZSBGbHVlY2hlLiBTY2hvbiBnYXJuaWNodCBzb2xjaGUhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZWVlZSAoV2ltLCAxNi4gTm92IDE5OTksIDE5OjA0OjE2KToKW0FsbGdlbWVpbjpTdGluZ10gV0FISEhISEhISEhIaApbQWxsZ2VtZWluOlN0aW5nXSAxMzMgYXJ0aWtlbCBpbiBzY2htYXJybiA/Pz8KClVuZCBlaW5lciBtZWhyIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWF1bCBoYWx0ZW4hIChKYW1hbHNraSwgMTYuIE5vdiAxOTk5LCAxOToxNjoxMyk6ClJhbmkgdGVpbHQgRGlyIG1pdDogYWJlciBpY2ggYmluIGhhbHQgc28gLi4uIGFiIHVuZCBhbiBtdXNzIGljaCBlaW5mYWNoIG1hbCBuClJhbmkgdGVpbHQgRGlyIG1pdDogYmlzc2NoZW4ga29tbXVuaXppZXJlbiB1bmQgd2VubnMgbnVyIHNvd2FzIGlzdCA7LSkgWzE5OjE1XQpEdSB0ZWlsc3QgUmFuaSBtaXQ6IG1hdWwgaGFsdGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaWdlbnRsaWNoIGdhciBuaWNodCBzb29vIGx1c3RpZyAoQmFtYmksIDE2LiBOb3YgMTk5OSwgMjI6NTY6NDApOgpUb2QgVmlwZXIgaGF0IGdlcmFkZSBTY2FycnkgdW1nZWJyYWNodC4gMjI6MjM6NTUKVG9kIFdpbSBoYXQgZ2VyYWRlIFNjYXJyeSB1bWdlYnJhY2h0LiAyMjozMjozNgpUb2QgV2ltIGhhdCBnZXJhZGUgRmFycnkgdW1nZWJyYWNodC4gMjI6MzQ6MDUKVG9kIFdpbSBoYXQgZ2VyYWRlIFRhcnJ5IHVtZ2VicmFjaHQuIDIyOjM0OjUxClRvZCBXaW0gaGF0IGdlcmFkZSBQYXJyeSB1bWdlYnJhY2h0LiAyMjozNzozMwpUb2QgV2ltIGhhdCBnZXJhZGUgR2FzdDIgdW1nZWJyYWNodC4gMjI6Mzg6MDEKVG9kIEJhbWJpIGhhdCBnZXJhZGUgR2FzdDEgdW1nZWJyYWNodC4gMjI6NDE6NDMKVG9kIEJhbWJpIGhhdCBnZXJhZGUgR2FzdDIgdW1nZWJyYWNodC4gMjI6NDE6NDUKCkluIGRlciBaZWl0IHNpbmQgbm9jaCBhbmRlcmUgTGV1dHMgYW4gTlBDcyAob2NoIHNjaGFkZSEpIGRyYXVmZ2VnYW5nZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW1tIC5vKSkpIChIaWdodCwgMTYuIE5vdiAxOTk5LCAyMzoxMzozNyk6CkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBobW0gd2VyIHZvcnNjaGxhZWdlIGZ1ZXIgMiBla3MgPyEKCmtlaW5lIDIgc2VjIHNwYWV0ZXIgOgoKTmV2b2sgdGVpbHQgRGlyIG1pdDogV2ltIHVuZCBab29rPyA6KQoKSGlnaHQgbGVpY2h0IGFtdWVzaWVydCAubykpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogV2VpaG5hY2h0c2VsZmU/IT8gKE1vcmdvdGgsIDE3LiBOb3YgMTk5OSwgMDc6NDA6MDkpOgp+IyEgcm49V2ltIHJ0PTk0Mjc1ODkyMSByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpKYWphLCBtYW4ga29lbm50ZSAnQmVzdGVjaHVuZydzdmVyc3VjaCBhdWNoIGFuZGVycyBkZXV0ZW4gOy0pCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdlaWhuYWNodHNlbGZlPyE/IChBcG9sbG9uaWEsIDE3LiBOb3YgMTk5OSwgMTE6MTE6NTEpOgp+IyEgcm49TW9yZ290aCBydD05NDI4MjA4MDkgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKTWlyIGlzdCBzY2hvbiBrbGFyLCBpbiB3ZWxjaGUgUmljaHR1bmcgRGVpbmUgR2VkYW5rZW4gZGEgZ2VoZW4sIE0qLi4uIE11c3MgaWNoCmpldHp0IG5vY2ggZXh0cmEgZXJ3YWVobmVuLCBkYXNzIGVzIF9kYW1pdF8gbnUgZXJzdCByZWNodCBuaXggenUgdHVuIGhhdD8hPwoKQXBvKiBtaXQgZGVuIEF1Z2VuIHJvbGxlbmQpICAgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp6dC1zdWNoZSAoR2FzdDEsIDE3LiBOb3YgMTk5OSwgMTM6NTY6MjkpOgoKClt6dDpMeXNhbm5lXSB3byBiYWVydGlnZSB3YWZmZW4gc2NobWllZGVuIGhhYmVuIHNpZSBvZnQgd2Flcmt6d3VnIGxpZWdlbi0KW3p0Okx5c2FubmVdIHp3ZXJnZW5iZXJnd2Vyaz8gPDEzOjQ1OjA3PgpbenQ6Q2FzZV0gendlcmdlbnN0YWR0IDwxMzo1Mzo1OD4KCltUb2Q6TGFyc10gRWluIFp3ZXJnIGhhdCBnZXJhZGUgTHlzYW5uZSB1bWdlYnJhY2h0LiA8MTM6NTQ6Mzk+CgoqaHVzdCogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhbGxvIEFsaW5lIChTaWx2YW5hLCAxNy4gTm92IDE5OTksIDE1OjQ4OjM5KToKfiMhIG9uPUdvbGFzIG90PTk0Mjg1MDA1MyBvZz1hbGxnZW1laW5lcwpuZWluLCBpY2ggbWFjaCBuaWNodCBhbGxlcywgd2FzIGZyYXVlbiBzYWdlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhhbGxvIEFsaW5lIChTaWx2YW5hLCAxNy4gTm92IDE5OTksIDE1OjQ4OjQxKToKfiMhIG9uPUthcmljIG90PTk0Mjg1MDA3MyBvZz1hbGxnZW1laW5lcwp+IyEgcm49R29sYXMgcnQ9OTQyODUwMDUzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTQyODUwMDUzCnR1c3RlIHdvaGwgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGFsbG8gQWxpbmUgKFNpbHZhbmEsIDE3LiBOb3YgMTk5OSwgMTU6NDg6NDIpOgp+IyEgb249R29sYXMgb3Q9OTQyODUwMDg3IG9nPWFsbGdlbWVpbmVzCn4jISBybj1LYXJpYyBydD05NDI4NTAwNzMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NDI4NTAwNTMKZ2FyIG5pY2ggd2FociEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEhhbGxvIEFsaW5lIChTaWx2YW5hLCAxNy4gTm92IDE5OTksIDE1OjQ4OjQzKToKfiMhIG9uPUthcmljIG90PTk0Mjg1MDExMSBvZz1hbGxnZW1laW5lcwp+IyEgcm49R29sYXMgcnQ9OTQyODUwMDg3IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTQyODUwMDUzCndvaGwuLnNpZWh0IG1hbiBkb2NoIGFuIGRpZXNlbSBudXR6bG9zZW4gdGhyZWFkLgpmcmF1IHNhY2h0IHNjaHJlaWIgd2FzIHVuZCBkdSBzY2hyZWlic3Qgd2FzIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBIYWxsbyBBbGluZSAoUm9jaHVzLCAxNy4gTm92IDE5OTksIDE1OjQ5OjAxKToKfiMhIG9uPUdvbGFzIG90PTk0Mjg1MDEzMSBvZz1hbGxnZW1laW5lcwp+IyEgcm49S2FyaWMgcnQ9OTQyODUwMTExIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTQyODUwMDUzCm5pY2h0IGlyZ2VuZGVpbmUgZnJhdSBzY2hyZWlidCB3YXMhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEhhbGxvIEFsaW5lIChSb2NodXMsIDE3LiBOb3YgMTk5OSwgMTU6NDk6NTIpOgp+IyEgb249S2FyaWMgb3Q9OTQyODUwMTcyIG9nPWFsbGdlbWVpbmVzCn4jISBybj1Hb2xhcyBydD05NDI4NTAxMzEgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NDI4NTAwNTMKbWVzc2ZlaGxlciA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSGFsbG8gQWxpbmUgKFJvY2h1cywgMTcuIE5vdiAxOTk5LCAxNTo0OTo1Myk6Cn4jISBvbj1UaGFub3Mgb3Q9OTQyODUwMTgyIG9nPWFsbGdlbWVpbmVzCn4jISBybj1Hb2xhcyBydD05NDI4NTAxMzEgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NDI4NTAwNTMKCmRlbmt0IG51ciBub2NoIG8gTyAoYm9ociBpc3QgZGVuZW4gbGFuZ3dlaWxpZzspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBIYWxsbyBBbGluZSAoQXBvbGxvbmlhLCAxNy4gTm92IDE5OTksIDE2OjIzOjUzKToKfiMhIHJuPVJvY2h1cyBydD05NDI4NTAxNDEgcmc9c2NobWFycm4KfiMhIHRpZD05NDI4NTAwNTMKRHJ1ZWNrZW4gd2lyJ3MgZG9jaCBlaW5mYWNoIHNvIGF1czogZXIgbWFjaHQgZGFzLCB3YXMgZ2FueiBiZXN0aW1tdGUgRnJhdWVuCmlobSBzYWdlbiA7KQoKQXBvKiAoYXVmcyBQT0RJLUhhbHNiYW5kIHNjaGllbGVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBXZWlobmFjaHRzZWxmZT8hPyAoR3JpbW1hbiwgMTcuIE5vdiAxOTk5LCAyMDo1NTozNCk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9OTQyNzU5NzEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CkhtbW1tIC4uLiB3ZW5uIHNjaG9uIG5pY2h0IGJlc3RlY2hlbiwgZGFubiB2aWVsbGVpY2h0IGVycHJlc3NlbiA6KQpKZWRlciBoYXQgaXJnZW5kIG5lIExlaWNoZSBpbSBLZWxsZXIgOikKCkdyaW1NYW4gLCBoYXQga2VpbmUgTGVpY2hlIGltIEtlbGxlciAuLi4gKHVuc2NodWxkaWcgZ3JpbnMpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFRpYW1haywgMTcuIE5vdiAxOTk5LCAyMTo1NTo0Myk6Cls8TWFzdGVSPjpTY2hudXJyXSBsIDwyMTo1Mzo1Mz4KWzxNYXN0ZVI+OkxlaWJuaXpdIGwgPDIxOjUzOjUzPgpbPE1hc3RlUj46U3Ryb2hhbG1dIGwgPDIxOjUzOjUzPgpbPE1hc3RlUj46PE1hc3RlUj5dIDExLjgxIGNtZHMvcywgMTU2LjE2IGNvbXAgbGluZXMvcyA8MjE6NTM6NTU+Cls8TWFzdGVSPjo8TWFzdGVSPl0gTGFnOiAxLjQlLzYwLCAzLjglLzE1LCAzNS4xJS8xIDwyMTo1Mzo1NT4KWzxNYXN0ZVI+OlNldmVuXSBOZXR0Li4uIDwyMTo1NDowNT4KWzxNYXN0ZVI+OkxhbmZlYXJdIGwgPDIxOjU0OjExPgpbPE1hc3RlUj46TGFuZmVhciBzY2h1ZXR0ZWx0IHNpY2guIDwyMTo1NDoyNT5dCltUb2Q6TGFyc10gRWluIFVuZmFsbCBpbSBIb2NoZ2ViaXJnZSBoYXQgZ2VyYWRlIExhbmZlYXIgdW1nZWJyYWNodC4gPDIxOjU0OjM3PgpbVG9kOkVpbiBVbmZhbGwgaW0gSG9jaGdlYmlyZ2VdIFdlciB2aWVsIHdhZ3QsIGthbm4gYXVjaCB2aWVsIHZlcmxpZXJlbi4uLgpbVG9kOkVpbiBVbmZhbGwgaW0gSG9jaGdlYmlyZ2VdIDwyMTo1NDozNz4KCgpNZXJrZTogYXVmIGRlbiBXZWcgc2NoYXVlbiwgbmljaHQgYXVmJ3MgTGFnLiA7LSkKClRpYW1hawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobWFycm4gZGllIGVyc3RlIChCaWVsZWZlbGQsIDE3LiBOb3YgMTk5OSwgMjI6NTg6MTApOgpEYSBpZGVsdCBtYW4gc28gcnVtIHVuZCBkYW5uIGRhczoKRXMgd2lyZCB3aWVkZXIgaGVsbGVyLgpFcyB3aXJkIHdpZWRlciBkdW5rbGVyLgpFcyB3aXJkIHdpZWRlciBoZWxsZXIuCgpXYXMgZGVubiBudW4/IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobWFycm4gZGllIHp3ZWl0ZSAoQmllbGVmZWxkLCAxNy4gTm92IDE5OTksIDIzOjAwOjM4KToKV3VyZGUgbm9jaCBzY2hsaW1tZXI6CkZpemJhbiBoYXQgamV0enQgU3R1ZmUgNyBlcnJlaWNodC4KRml6YmFuIGhhdCBqZXR6dCBTdHVmZSA4IGVycmVpY2h0LgpGaXpiYW4gaGF0IGpldHp0IFN0dWZlIDkgZXJyZWljaHQuCkZpemJhbiBoYXQgamV0enQgU3R1ZmUgMTAgZXJyZWljaHQuCkZpemJhbiBoYXQgamV0enQgU3R1ZmUgMTEgZXJyZWljaHQuCkZpemJhbiBoYXQgamV0enQgU3R1ZmUgMTIgZXJyZWljaHQuCkZpemJhbiBoYXQgamV0enQgU3R1ZmUgMTMgZXJyZWljaHQuCkZpemJhbiBoYXQgamV0enQgU3R1ZmUgMTQgZXJyZWljaHQuCkZpemJhbiBoYXQgamV0enQgU3R1ZmUgMTUgZXJyZWljaHQuCkZpemJhbiBoYXQgamV0enQgU3R1ZmUgMTYgZXJyZWljaHQuClpvb2sga251ZGRlbHQgRml6YmFuLgpGaXpiYW4gaGF0IGpldHp0IFN0dWZlIDE3IGVycmVpY2h0LgpGaXpiYW4gaGF0IGpldHp0IFN0dWZlIDE4IGVycmVpY2h0LgpGaXpiYW4gaGF0IGpldHp0IFN0dWZlIDE5IGVycmVpY2h0LgpCbGl6enkgd3VuZGVydCBzaWNoLgpbRGVidWc6IFIgTyBPIFQgXSBSRU5FV0lORzogIyMjIyMjIyMjIGh1bWFuOmZpemJhbiAKRml6YmFuIGJldHJpdHQgZGllc2UgV2VsdC4KRml6YmFuIHZlcmxhZXNzdCBkaWVzZSBXZWx0LgpNZXJsaW4gcnVmdDogRml6YmFuIGlzdCBqZXR6dCBlaW4gU2VoZXIhCkZpemJhbiBoYXQgamV0enQgU3R1ZmUgMjAgZXJyZWljaHQuCkZpemJhbiBoYXQgamV0enQgU3R1ZmUgMjEgZXJyZWljaHQuCkZpemJhbiBoYXQgamV0enQgU3R1ZmUgMjIgZXJyZWljaHQuCkZpemJhbiBoYXQgamV0enQgU3R1ZmUgMjMgZXJyZWljaHQuCkZpemJhbiBoYXQgamV0enQgU3R1ZmUgMjQgZXJyZWljaHQuCkZpemJhbiBoYXQgamV0enQgU3R1ZmUgMjUgZXJyZWljaHQuCkZpemJhbiBoYXQgamV0enQgU3R1ZmUgMjYgZXJyZWljaHQuCk9rLCBEdSBoYXN0IGRpZSBSdWJyaWsgc2NobWFycm4gbWl0IDEzOCBBcnRpa2VsbiBhdWZnZXNjaGxhZ2VuLgpGaXpiYW4gaGF0IGpldHp0IFN0dWZlIDI3IGVycmVpY2h0LgpGaXpiYW4gaGF0IGpldHp0IFN0dWZlIDI4IGVycmVpY2h0LgpGaXpiYW4gaGF0IGpldHp0IFN0dWZlIDI5IGVycmVpY2h0LgpGaXpiYW4gaGF0IGpldHp0IFN0dWZlIDMwIGVycmVpY2h0LgpGaXpiYW4gaGF0IGpldHp0IFN0dWZlIDMxIGVycmVpY2h0LgpGaXpiYW4gaGF0IGpldHp0IFN0dWZlIDMyIGVycmVpY2h0LgoKQXV3ZWlhLCBpY2ggaWRlbCBuaWUgd2llZGVyIGluIGRlciBHaWxkZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFdlaWhuYWNodHNlbGZlPyE/IChBcG9sbG9uaWEsIDE4LiBOb3YgMTk5OSwgMDk6MjA6MTEpOgp+IyEgcm49R3JpbW1hbiBydD05NDI4Njg1MzQgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKTWFnIHNlaW4sIGFiZXIgd2VubiwgZGFubiB3ZWlzcyBkYXZvbiBrZWluZXIgd2FzICpmaWVzIGdyaW5zKiA7KQoKQXBvKiAoaWhyZW4gS2VsbGVyIHp1YmV0b25pZXJlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2NobWFycm4gZGllIHp3ZWl0ZSAoQ2F0d2VhemxlLCAxOC4gTm92IDE5OTksIDEwOjA3OjQ2KToKfiMhIHJuPUJpZWxlZmVsZCBydD05NDI4NzYwMzggcmc9c2NobWFycm4KfiMhIHRpZD05NDI4NzYwMzgKTnVuLCBkYSBqdWNrZW4gbWlyIGphIHNjaG9uIHdpZWRlciBkaWUgYWx0ZW4gR2xpZWRlci4uLgoKV2Vzc2VuIFp3ZWl0aWUgaXN0IGRlbm4gRml6YmFuPyBFciBpc3QgbmljaHQgbWFya2llcnQuCldlbm4gaWNoIG1pciBzbyBzZWluIEFsdGVyIGFuc2NoYXVlIHd1ZXNzdGUgaWNoIHdpcmtsaWNoIGdlcm5lLAp3ZXIgZGFzIGlzdC4gV2VyIHdlaXNzIGVzPyBEaWUgS2xhc3NlPyBXZXIgd2Vpc3MgZXM/Clpvb2s/IFdlaXNzdCBEdXM/IGhhc3QgRHUgbmUgQWhudW5nLCB3ZW4gRHUgZGEgYmVmb2VyZGVydCBoYXN0PwpOdXIgbmUgZHJlaXZpZXJ0ZWwgU3R1bmRlIG5hY2ggU2VoZXJ3ZXJkdW5nPyAKClZlcmRhZWNodGlnLgpBbGxlcyBzZWVlaHIgdmVyZGFlY2h0aWcuCgpZb3VycyB0cnVseSwKICAgICBDYXR3ZWF6bGUgKG1pdCBkZW0gWmlwcGVybGVpbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBXZWlobmFjaHRzZWxmZT8hPyAoUm9jaHVzLCAxOC4gTm92IDE5OTksIDE0OjE5OjM2KToKfiMhIHJuPUFwb2xsb25pYSBydD05NDI5MTMyMTEgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKSWNoIGRhY2h0ZSBkaWUgd2FlcmUgbmljaHQgaW0gS2VsbGVyIHNvbmRlcm4KaW4gZGVtIFNjaHJhbmsgYW4gZGVuIGtlaW5lciByYW4gZGFyZj8KCiAgUm9jaHVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogV2VpaG5hY2h0c2VsZmU/IT8gKEFwb2xsb25pYSwgMTguIE5vdiAxOTk5LCAxNDoyMjo1OSk6Cn4jISBybj1Sb2NodXMgcnQ9OTQyOTMxMTc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2Cip1bnNjaHVsZGlnIHBmZWlmKiBpY2ggc29sbHRlIGFuIGVpbiBWb3JoYWVuZ2VzY2hsb3NzIGRlbmtlbiA7KQoKQXBvKiAodWViZXJoYXVwdCBuaWNodCByb3Qgd2VyZGVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBXZWlobmFjaHRzZWxmZT8hPyAoV2ltLCAxOC4gTm92IDE5OTksIDE0OjQyOjI4KToKfiMhIHJuPUFwb2xsb25pYSBydD05NDI5MzEzNzkgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKSG1tbS4uLiBoYXR0ZSBpY2ggYmVyZWl0cyBlcndhZWhudCwgZGFzcyBpY2ggZWluIFNldCBEaWV0cmljaGUgdW5kIFBpY2tzIGhhYmU/Cldlbm4gZGFzIG5pY2h0cyBmdW56dCwgaWNoIGhhYiBhdWNoIG5vY2ggbmVuIEJvbHplbnNjaG5laWRlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBXZWlobmFjaHRzZWxmZT8hPyAoR2FzdDEsIDE4LiBOb3YgMTk5OSwgMTU6MDU6MjYpOgp+IyEgcm49V2ltIHJ0PTk0MjkzMjU0OCByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgoKR2VpbCwgZ2VpbGVyLCBhbSBnZWlsc3RlbiEKCk1hY2h0IGRvY2ggbWFsIG5lbiBXZXR0YmV3ZXJiLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFdlaWhuYWNodHNlbGZlPyE/IChSb2NodXMsIDE4LiBOb3YgMTk5OSwgMTU6MTM6NDcpOgp+IyEgcm49R2FzdDEgcnQ9OTQyOTMzOTI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2CldpcmQgaW4gV2ludGVyYnVyZyBlcmxlZGlndC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBXZWlobmFjaHRzZWxmZT8hPyAoQXBvbGxvbmlhLCAxOC4gTm92IDE5OTksIDE1OjU3OjQ1KToKfiMhIHJuPVJvY2h1cyBydD05NDI5MzQ0Mjcgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKV0lFIEJJVFRFPz8/PyBBbHNvLCBhbHMgV2VpaG5hY2h0c2VsZmUgYmluIGljaCBrb25rdXJyZW56bG9zLCB3ZWlsIGphIHNvbnN0Cm5pZW1hbmQgc28gZGFlbWxpY2ggaXN0LCBzaWNoIGF1ZiBzbyB3YXMgZWluenVsYXNzZW4gKCptZWluZSBncm9zc2UgS2xhcHBlCnZlcmZsdWNoKikuICBWb24gbmVtIFdldHRiZXdlcmIgd2FyIGhpZXIga2VpbmUgUmVkZSEhISEgCgpBcG8qIChpaHJlbiBQYXBpIHVuZ2xhZXViaWcgYW5ndWNrZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IFdlaWhuYWNodHNlbGZlPyE/IChCb2luZywgMTguIE5vdiAxOTk5LCAxNTo1ODo0Nyk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9OTQyOTM3MDY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyNzQ4MDA2Ck5laW4gbmVpbiwgd2VubiBpY2ggZGFzIHJpY2h0aWcgdmVyc3RhbmRlbiBoYWJlLCBmaW5kZXQgZGVyIFdldHRiZXdlcmIKaW4gZWluZXIgYW5kZXJlbiBEaXN6aXBsaW4gc3RhdHQuCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBXZWlobmFjaHRzZWxmZT8hPyAoQXBvbGxvbmlhLCAxOC4gTm92IDE5OTksIDE2OjAyOjQ0KToKfiMhIHJuPUJvaW5nIHJ0PTk0MjkzNzEyNyByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpXZW5uJ3MgdW1zIFVlYmVyYmlldGVuIHZvbiBBbnp1ZWdsaWNoa2VpdGVuIGdlaHQuLi4gbmEgZGVubiBoYWIgaWNoIGphIHdvaGwKZmFzdCBzY2hvbiBnZXdvbm5lbiAqaHVzdCogOykKCkFwbyogKGRpZSBzaWNoIGdsZWljaCBpcmdlbmR3byB2ZXJrcmllY2h0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IFdlaWhuYWNodHNlbGZlPyE/IChSb2NodXMsIDE4LiBOb3YgMTk5OSwgMTY6MDY6MzcpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTk0MjkzNzM2NCByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpFcyBpc3QgamEgYXVjaCBuaWNodCBkYXMgRXJnZWJuaXMgaW50ZXJlc3NhbnQgKHdlciBnZXdpbm50CmlzdCBlaCBrbGFyKSBzb25kZXJuIGRlciBXZWcgZG9ydGhpbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IFdlaWhuYWNodHNlbGZlPyE/IChBcG9sbG9uaWEsIDE4LiBOb3YgMTk5OSwgMTY6MTQ6NTQpOgp+IyEgcm49Um9jaHVzIHJ0PTk0MjkzNzU5NyByZz1zY2htYXJybgp+IyEgdGlkPTk0Mjc0ODAwNgpEYSBkZW5rIGljaCBqZXR6dCBsaWViZXIgbmljaHQgZ2VuYXVlciBkcnVlYmVyIG5hY2guLi4KCkFwbyogKHZvciBzaWNoIGhpbiBmbHVjaGVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuIGRpZSB6d2VpdGUgKEZpemJhbiwgMTguIE5vdiAxOTk5LCAxODoxMzowNSk6CkFsc28gbWVpbiBlaGVtYWxpZ2VyIEVyc3RzcGllbGVyIGlzdCBvcmRudW5nc2dlbWFlc3MgbWFya2llcnQgdW5kIGRhcyBzb2xsdGUKcmVpY2hlbgpHcnVzcyBGaXpiYW4KUC5zLiBDYXR0eSBiZWltIG5hZWNoc3RlbiBtYWwgRnJhZ2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogV2VpaG5hY2h0c2VsZmU/IT8gKEdyaW1tYm9ybiwgMTguIE5vdiAxOTk5LCAyMjoyNzo0Mik6Cn4jISBybj1Cb2luZyBydD05NDI5MzcxMjcgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKR2VuYXUuIE5hZW1saWNoIGluIGRlciBEaXN6aXBsaW4sIGlyZ2VuZHdvIHJlaW56dWtvbW1lbi4KQWVoLCB3byB3YXIgZGEgbm9jaCBkZXIgVW50ZXJzY2hpZWQ/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hdXNlciAoS2FkYWJyYSwgMTguIE5vdiAxOTk5LCAyMzoxNzo0MCk6ClRlbGx0YWxlaGVhcnQgc2NobGVpY2h0IGhlcmVpbi4KRGVpbmUgSGFhcmUgZmFsbGVuIGF1cy4gRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogYWxzbyBpY2ggZ2xhdWJlCm5pY2h0IGRhc3Mgc293YXMgYW4gc29mdHdhcmUgbGllZ3Qgb2Rlcj8gOy0pCgpUZWxsdGFsZWhlYXJ0IHNjaGxlaWNodCBoZXJlaW4uRGVpbmUgSGFhcmUgZmFsbGVuIGF1cy4gRGVpbmUgRnJldW5kaW4gTGlhcmEKdGVpbHQgRGlyIG1pdDogYWxzbyBpY2ggZ2xhdWJlIG5pY2h0IGRhc3Mgc293YXMgYW4gc29mdHdhcmUgbGllZ3Qgb2Rlcj8gOy0pCgoqCioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9iIFJhbmRhci4uLj8gKFNpbHZhbmEsIDE5LiBOb3YgMTk5OSwgMTI6MTU6NDgpOgpEdSB0ZWlsc3QgTGx5c3RyYXRoZSBtaXQ6IGtvbXBvbmVudGVuCkxseXN0cmF0aGUgdGVpbHQgRGlyIG1pdDogSGV5Li4uRHUgaGFzdCBkb2NoIGdhciBrZWluZSBaYXViZXJrb21wb25lbnRlbiEKRHUgdGVpbHN0IExseXN0cmF0aGUgbWl0OiBJY2ggd2Vpc3MuIDopCkxseXN0cmF0aGUgc2NobGFlZ3Qgdm9yOiBGcmFnIGRvY2ggbWFsIFJhbmRhciBUb2JpcyBkYW5hY2guIERlciBrdWVtbWVydCBzaWNoCkxseXN0cmF0aGUgc2NobGFlZ3Qgdm9yOiBoaWVyIHVtIGRlbiBnYW56ZW4gS2xlaW5rcmFtLgoKSG0uLi4gT2IgUmFuZGFyIG1pciBqZXR6dCBLb21wb25lbnRlbiBzY2hlbmt0LCB3ZW5uIGljaCBpaG4gZnJhZ2UuLi4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT2IgUmFuZGFyLi4uPyAoR3JpbW1ib3JuLCAxOS4gTm92IDE5OTksIDEyOjE2OjU0KToKfiMhIHJuPVNpbHZhbmEgcnQ9OTQzMDEwMTQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQzMDEwMTQ4Ck5pY2h0IGZyYWdlbi4gRWluYmF1ZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFRlbXBlbHRyYW5zcG9ydCAoQW5hdG9sLCAxOS4gTm92IDE5OTksIDEzOjUxOjIxKToKfiMhIHJuPU5vbm5lIHJ0PTk0MzAxNTgwMyByZz1naWxkZW4ua2xlcnVzCn4jISB0aWQ9OTQyOTMyMzU1CkltbWVyaGluIGthbm5zdCBEdSAiaW50ZWxsZWt0dWVsbCIgc2NocmVpYmVuLCBpc3QgZG9jaCBzY2hvbm1hbCB3YXMuCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogVGVtcGVsdHJhbnNwb3J0IChCYW1idWxrbywgMTkuIE5vdiAxOTk5LCAxNDowNDoxMSk6Cn4jISBybj1BbmF0b2wgcnQ9OTQzMDE1ODgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyOTMyMzU1Ckthbm4gZXMgc2VpbiwgZGFzcyBBbmF0b2wgRWhyZW52b3JzaXplbmRlciBkZXMgJ0ZvZXJkZXJ2ZXJlaW4genVyIEVyaGFsdHVuZwpkZXIgVGV1dHNjaGVuIFJlY2h0c2NocmVpYnVuZycgaXN0Pz8/PwoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBUZW1wZWx0cmFuc3BvcnQgKEdyaW1tYm9ybiwgMTkuIE5vdiAxOTk5LCAxNDoxNToxNSk6Cn4jISBybj1CYW1idWxrbyBydD05NDMwMTY2NTEgcmc9c2NobWFycm4KfiMhIHRpZD05NDI5MzIzNTUKWmFlaGwgZGllIEZyYWdlemVpY2hlbiBpbiBEZWluZW0gQmVpdHJhZy4KRGFtaXQgc2luZCBrZWluZSB3ZWl0ZXJlbiBLcml0ZXJpZW4gbm90d2VuZGlnLCB1bSBkZW4gR2VoYWx0IGRlcyBCZWl0cmFnZXMgenUKYmV3ZXJ0ZW4uIE5pY2h0bWFsIGRlciBJbmhhbHQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBUZW1wZWx0cmFuc3BvcnQgKEJhbWJ1bGtvLCAxOS4gTm92IDE5OTksIDE0OjM3OjI2KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDMwMTczMTUgcmc9c2NobWFycm4KfiMhIHRpZD05NDI5MzIzNTUKSG1tbSwgd2FydW0gaGFiZSBpY2ggbnVyIGdld3Vzc3QsIGRhc3Mgc293YXMgYWxzIEFudHdvcnQgYXVmIG1laW5lbiBCZWl0cmFnCmtvbW10Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8KQWJlciBlcyBpc3QgbmF0dWVybGljaCB2b2xsa29tbWVuIGxvZ2lzY2gsIGRhc3MgamVkZXIgU2F0eiBtaXQgbWVociBhbHMgZWluZW0KRnJhZ2V6ZWljaGVuIG9kZXIgQXVzcnVmZXplaWNoZW4gYXV0b21hdGlzY2ggc2lubmxvcwp3aXJkISEhISEhISEhISEhISEhISEhISEhIQoKQmFtYnVsa28gIT8hPyE/IT8hPyE/IT8hPyE/IT8hPyE/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogVGVtcGVsdHJhbnNwb3J0IChHcmltbWJvcm4sIDE5LiBOb3YgMTk5OSwgMTQ6NDY6MTEpOgp+IyEgcm49QmFtYnVsa28gcnQ9OTQzMDE4NjQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyOTMyMzU1CiJNdWx0aXBlbCBleGNsYW1hdGlvbiBtYXJrcyBhcmUgYSBzdXJlIHNpZ24gb2YgYSBkaXNlYXNlZCBtaW5kISIgCihULiBQcmF0Y2hldHQsIEVyaWMsIFMuMTIxKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogVGVtcGVsdHJhbnNwb3J0IChCYW1idWxrbywgMTkuIE5vdiAxOTk5LCAxNDo0OTo1Myk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTQzMDE5MTcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyOTMyMzU1Ck9LLCBEdSBoYXN0IGdld29ubmVuLiBEZXIgUHVua3QgZ2VodCBhbiBEaWNoLgoKKERlc2Vhc2VkIG1pbmQpIEJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogVGVtcGVsdHJhbnNwb3J0IChHcmltbWJvcm4sIDE5LiBOb3YgMTk5OSwgMTU6NTQ6MzApOgp+IyEgcm49QmFtYnVsa28gcnQ9OTQzMDE5MzkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyOTMyMzU1CnEuZS5lLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnaWxkZW5tZWlzdGVyIDopIChUaGFub3MsIDE5LiBOb3YgMTk5OSwgMTc6NDI6MzcpOgpEdSB0ZWlsc3QgU2lhbWlsIG1pdDogaGlsZmUKPiBTaWFtaWwgdGVpbHQgRGlyIG1pdDogSGlsZiBEaXIgc2VsYnN0Lgp0bSBzaWFtaWwgZGVyIHRvZXRlIG1pY2gKRHUgdGVpbHN0IFNpYW1pbCBtaXQ6IGRlciB0b2V0ZSBtaWNoClNpYW1pbCB0ZWlsdCBEaXIgbWl0OiBLdWVtbWVyZSBEaWNoIG5pY2h0IHVtIHNvbGNoIHRyaXZpYWxlcyBaZXVnLgoKVGhhbm9zIChzdG9laG50IG51ciBub2NoKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGdpbGRlbm1laXN0ZXIgOikgKFdpbSwgMTkuIE5vdiAxOTk5LCAxNzo0NTozNyk6Cn4jISBybj1UaGFub3MgcnQ9OTQzMDI5NzU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQzMDI5NzU3CkRhcyBzb2xsIHNvdmllbCBoZWlzc2VuIHdpZTogRGFubiBoYWx0ZSBpaG0gYXVjaCBkaWUgYW5kZXJlIFdhbmdlIGhpbiA6KQoKRnJpZWRlbiB1bmQgR2x1ZWNrc2VlbGlna2VpdC4uLiAqb29vb21tbW1tKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTAwMTogU0NIV1VQUERJV1VQUCEgKE1vbnRhbnVzLCAyMC4gTm92IDE5OTksIDE3OjM0OjQ4KToKfiMhIHJuPUNhdHdlYXpsZSBydD05NDI3NjQ2Mjcgcmc9c2NobWFycm4KfiMhIHRpZD05NDI3NDgwMDYKCkRhbmNlciBiZXphaGx0IQpVbmQgd2VpbCBkaWUgUHlyYW1pZGVuIGJ1Z2dlbiwgZ2xlaWNoIG5vY2ggZWluZSBkYXp1LiA6LSkKCi1Nb250YW51cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFRlbXBlbHRyYW5zcG9ydCAoTW9udGFudXMsIDIwLiBOb3YgMTk5OSwgMTc6NDE6MDIpOgp+IyEgcm49QmFtYnVsa28gcnQ9OTQzMDE5MzkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQyOTMyMzU1CgpSZTogR3JpbW1ib3JuIHZzIEJhbWJ1bGtvCgpEZXIgZXJzdGUgUHVua3RlIGdlaHQgbmljaHQgdW5iZWRpbmd0IGFuIEdyaW1tYm9ybi4KRGVyIExhcHN1cywgIk11bHRpcGVsIiB6dSBzY2hyZWliZW4sIGhhZXR0ZSBpaG0gbmljaHQgdW50ZXJsYXVmZW4gZHVlcmZlbi4KSU1ITyBsZWlkZXIgZWluIEVpZ2VudG9yLgpHb25nLCBSaW5nIGZyZWkgZnVlciBkaWUgendlaXRlIFJ1bmRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFRlbXBlbHRyYW5zcG9ydCAoR3JpbW1ib3JuLCAyMC4gTm92IDE5OTksIDE4OjE2OjMwKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk0MzExNjA2MiByZz1zY2htYXJybgp+IyEgdGlkPTk0MjkzMjM1NQpJbSB1c2VuZXQgZ2lidCBlcyByZWxhdGl2IGVpbmRldXRpZ2UgTWVpbnVuZ2VuIHp1IExldXRlbiwgZGllIHNpY2ggYW4KZWluemVsbmVuIFRpcHBmZWhsZXJuIGF1ZmhhZW5nZW4uCkR1IGJyYXVjaHN0IG5pY2h0IHp1IHdlaW5lbi4gSGllciBpc3QgbmljaHQgZGFzIHVzZW5ldC4gV2lyIG1vZWdlbiBEaWNoCnRyb3R6ZGVtLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpaYXViaXMgLi4uIChMaWxsZWJyb3IsIDIwLiBOb3YgMTk5OSwgMjI6MTY6MDApOgpEcmFyZWcgbWFjaHQgaGVpbWxpY2ggZWluZSBzZWx0c2FtZSBIYW5kYmV3ZWd1bmcuIER1IGhhc3QgZXMgZGVubm9jaApnZXNlaGVuIQpPYiBkYXMgd29obCBldHdhcyBtYWdpc2NoZXMgd2FyPyEKRHUgc2llaHN0IGVpbmVuIEZlaGxlciBpbSBSYXVtLSBaZWl0Z2VmdWVnZS4KCipncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbm4gaWNoIERBUyBnZXd1c3N0IGhhZXR0ZSAuLi4gKExpbGxlYnJvciwgMjEuIE5vdiAxOTk5LCAwMTowNTo1MCk6ClBhZHJlaWMgaGFlbHQgRGljaCBmZXN0IHVuZCBzYWd0OiBJY2ggYmluIGRvY2ggbm9jaCBnYXIgbmljaHQgZmVydGlnLgoKUGFkcmVpYyBlcmtsYWVydDogLi4uLi4gPHNjcm9sbD4KCldhYWFhYWFhYWghISEKCiAtIExpbGxlYnJvciAtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbnRlcmVzc2FudC4uLiAoRm9vYmFyLCAyMS4gTm92IDE5OTksIDAxOjU4OjE1KToKPiB0cmFnZSBhbGxlcwpFaW4gVG9wZmhlbG06IER1IHppZWhzdCBkZW4gVG9wZmhlbG0gYW4uCkVpbmUgTGVkZXJob3NlOiBEdSB6aWVoc3QgZGllIExlZGVyaG9zZSBhbi4KRWluIFNjaGFsOiBEdSB6aWVoc3QgZGVuIFNjaGFsIGFuLgpTdGllZmVsOiBEdSB6aWVoc3QgU3RpZWZlbCBhbi4KRWluZSBTY2hsYW5nZW5oYXV0OiBEdSB6aWVoc3QgZGllIFNjaGxhbmdlbmhhdXQgYW4uCkVpbiBIb3JucGFuemVyOiBEdSB6aWVoc3QgZGVuIEhvcm5wYW56ZXIgYW4uCkVpbiBkcmFrb25pc2NoZXMgUGFhciBBcm1yZWlmZW46IER1IHppZWhzdCBkYXMgZHJha29uaXNjaGUgUGFhciBBcm1yZWlmZW4gYW4uCkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogRHUKRWluIFdhaG5zaW5ucy1NYWdpZXItTW9uc3Rlci1aYXB0b29sIChmdWVyIFNwaWVsZXIgbGVpZGVyIHVuc2ljaHRiYXIpOiB0cmFlZ3N0CkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogZGFzCkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogV2FobnNpbgpFaW4gV2FobnNpbm5zLU1hZ2llci1Nb25zdGVyLVphcHRvb2wgKGZ1ZXIgU3BpZWxlciBsZWlkZXIgdW5zaWNodGJhcik6IG5zLU1hZ2kKRWluIFdhaG5zaW5ucy1NYWdpZXItTW9uc3Rlci1aYXB0b29sIChmdWVyIFNwaWVsZXIgbGVpZGVyIHVuc2ljaHRiYXIpOiBlci1Nb25zCkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogdGVyLVphcApFaW4gV2FobnNpbm5zLU1hZ2llci1Nb25zdGVyLVphcHRvb2wgKGZ1ZXIgU3BpZWxlciBsZWlkZXIgdW5zaWNodGJhcik6IHRvb2wKRWluIFdhaG5zaW5ucy1NYWdpZXItTW9uc3Rlci1aYXB0b29sIChmdWVyIFNwaWVsZXIgbGVpZGVyIHVuc2ljaHRiYXIpOiAoZnVlcgpFaW4gV2FobnNpbm5zLU1hZ2llci1Nb25zdGVyLVphcHRvb2wgKGZ1ZXIgU3BpZWxlciBsZWlkZXIgdW5zaWNodGJhcik6IFNwaWVsZXIKRWluIFdhaG5zaW5ucy1NYWdpZXItTW9uc3Rlci1aYXB0b29sIChmdWVyIFNwaWVsZXIgbGVpZGVyIHVuc2ljaHRiYXIpOiBsZWlkZXIKRWluIFdhaG5zaW5ucy1NYWdpZXItTW9uc3Rlci1aYXB0b29sIChmdWVyIFNwaWVsZXIgbGVpZGVyIHVuc2ljaHRiYXIpOiB1bnNpY2h0CkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogYmFyKQpFaW4gV2FobnNpbm5zLU1hZ2llci1Nb25zdGVyLVphcHRvb2wgKGZ1ZXIgU3BpZWxlciBsZWlkZXIgdW5zaWNodGJhcik6IGJlcmVpdHMKRWluIFdhaG5zaW5ucy1NYWdpZXItTW9uc3Rlci1aYXB0b29sIChmdWVyIFNwaWVsZXIgbGVpZGVyIHVuc2ljaHRiYXIpOiAuCkVpbiBUYXJuaGVsbTogRHUgdHJhZWdzdCBiZXJlaXRzIGRlbiBUb3BmaGVsbSBhbHMgU2NodXR6IGRlciBTb3J0ZSBIZWxtLgpFaW4gRnVzc3Jpbmc6IER1IHRyYWVnc3QgZGVuIEZ1c3NyaW5nIGJlcmVpdHMuCkVpbiBLcmFnZW4gbWl0IGVpbmVtIEtub2NoZW5rcmV1eiB1bmQgZWluZW0gS25vY2hlbjogRHUgdHJhZWdzdCBkZW4gS3JhZ2VuIG1pdApFaW4gS3JhZ2VuIG1pdCBlaW5lbSBLbm9jaGVua3JldXogdW5kIGVpbmVtIEtub2NoZW46IGVpbmVtIEtub2NoZW5rcmV1eiB1bmQKRWluIEtyYWdlbiBtaXQgZWluZW0gS25vY2hlbmtyZXV6IHVuZCBlaW5lbSBLbm9jaGVuOiBlaW5lbSBLbm9jaGVuIGJlcmVpdHMuCgpXYXMgc2FndCBtaXIgZGFzIGpldHp0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZW1wZmVobHVuZyAoV3VyemVsLCAyMS4gTm92IDE5OTksIDA0OjI4OjQyKToKbGV1dGUsIGljaCBtb2VjaHRlIG1hbCB3ZXJidW5nIGZ1ZXIgcGFyYWNlbHN1cyBtYWNoZW4uIGdlaHQgbWVociBpbiBzZWluZQp0b2xsZW4gZ2VnZW5kZW4gdW5kIHN0ZXJidCBkb3J0LgplaW4gYXVzenVnIGF1cyBkZXIgZWluemlnIHdhaHJlbiB0b3BsaXN0ZToKCiAgNC4gUGFyYWNlbHN1cyAgICAgNTMyCiAgNS4gV3VyemVsICAgICAgICAgNTI0IAoKdm9yIGVpbmVyIHdvY2hlIHdhciBkZXIgYWJzdGFuZCBub2NoIGJlaSAzMC4uLiBkYSBiZWtvbW1lIGljaCBqYSBlaW5lbgpzY2hsZWNodGVuIHJ1Ziwgd2VubiBkYXMgc28gd2VpdGVyZ2VodC4gdW5kIGRhcyBtb2VjaHRlIGljaCBkb2NoIG5pY2h0LgoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZW1wZmVobHVuZyAoTGFuZmVhciwgMjEuIE5vdiAxOTk5LCAxMzoyNjozOSk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTQzMTU0OTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQzMTU0OTIyCkhtbW0sIHNhZyBtaXIgbGllYmVyIG1hbCwgb2IgYXVjaCBTcGllbGVyIGRpZXNlIExpc3RlIGVpbnNlaGVuIGtvZW5uZW4uIFdlbm4KamEsIHNhZyBtaXIgZG9jaCBiaXR0ZSBtYWwgd2llLCB3ZW5uIG5laW4sIGJhdXMgZXMgZG9jaCBtYWwgZWluLgoKTGFuZmVhciAtIGhldXRlIG1hbCBsaWViIChrcmFuaykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZW1wZmVobHVuZyAoTGFuZmVhciwgMjEuIE5vdiAxOTk5LCAxMzoyODo0OCk6Cn4jISBybj1MYW5mZWFyIHJ0PTk0MzE4NzE5OSByZz1zY2htYXJybgp+IyEgdGlkPTk0MzE1NDkyMgpPaywgbmFjaHRyYWcsIHdlbm4gV3VyemVsIGRpZSBNb2VyZGVyLVRvcGxpc3RlIG5pY2h0IGFuc2NobGllc3NlbiBrYW5uLCBkYW5uCmdlYmUgaWNoIGRpZXNlIEJpdHRlIGViZW4gYW4gZmFlaGleQ15DXkNeQ15DbWFlY2h0aWdlcmUgTWFnaWVyIHdlaXRlci4KCkxhbmZlYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnZvbGwgZGllIHNldWNoZSAuLi4gKEplbmFuZHJhLCAyMS4gTm92IDE5OTksIDEzOjU1OjE3KToKS2VrcyB3aW5rdC4KTHVyY2hpIHdpbmt0LgpEdSB3aW5rc3QgYXVjaC4KRHUgZGVua3N0ICAgLiBvIE8gKHRlbGV0dWJiaWVzPykKPiBLZWtzIHdhbmRlbHQgbmFjaCBOb3JkZW4uCkx1cmNoaSBmbGllZ3QgbmFjaCBOb3JkZW4uCkx1cmNoaSB0ZWlsdCBEaXIgbWl0OiB3aW5rZSB3aW5rZQpEdSBncmluc3QgTHVyY2hpIGF1cyBkZXIgRmVybmUgYW4uCkR1IHRlaWxzdCBMdXJjaGkgbWl0OiBnZW5hdSA6LSkKPiBLZWtzIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCkR1IGdyaW5zdCBLZWtzIGF1cyBkZXIgRmVybmUgYW4uCiBLZWtzIHRlaWx0IERpciBtaXQ6IHdpbmtlLXdpbmtlLi4uCkR1IHRlaWxzdCBLZWtzIG1pdDogKmxhY2gqIGdlbmF1IDotKQoKbm8gY29tbWVudC4KSmVuKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZW1wZmVobHVuZyAoU3RpbmcsIDIxLiBOb3YgMTk5OSwgMTM6NTU6NDkpOgp+IyEgcm49TGFuZmVhciBydD05NDMxODczMjggcmc9c2NobWFycm4KfiMhIHRpZD05NDMxNTQ5MjIKQWVobSwgaWNoIGdsYXViZSBuaWNodCBkYXNzIGRhcyBuZSBndXRlIElkZWUgaXN0IDopCkljaCBzZWggc2Nob24gamVkZW4gMDgvMTUtbWFnaWVyIHVsdHJhLW1vbnN0ZXIgYW5zY2hsaWVzc2VuIG51ciBkYW1pdCBzaWUgaW4KZGVyIHRvcGxpc3RlIHN0ZWlnZW4gOikKClN0aW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBlbXBmZWhsdW5nIChIb3VzZWhvbGRlciwgMjEuIE5vdiAxOTk5LCAxNDowMDozNyk6Cn4jISBybj1TdGluZyBydD05NDMxODg5NDkgcmc9c2NobWFycm4KfiMhIHRpZD05NDMxNTQ5MjIKZmFlbmQgaWNoIGdlbmlhbCAuLi4gZGEga29lbm50IGljaCBtaWNoIHVlYmVyIGRpZSAwODE1LXNwaWVsYSB0b3RsYWNoZW4gZGllCnRyb3R6ZGVtIHp1IGRlbiAwNTE1IG1vbnN0YW4gZHJhdWZnZWhlbiB1bmQgMDgxNS1zcHJ1ZWNoZSBhdWYgYmVpbGVpZCBhYmxhc3NlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZW1wZmVobHVuZyAoV3VyemVsLCAyMS4gTm92IDE5OTksIDE2OjUxOjAwKToKfiMhIHJuPVN0aW5nIHJ0PTk0MzE4ODk0OSByZz1zY2htYXJybgp+IyEgdGlkPTk0MzE1NDkyMgpzZWggaWNoIGFlaG5saWNoLiBtYW4gbXVzcyBuaWNodCBiZXNvbmRlcnMgbWFlY2h0aWcgc2VpbiAodW5kIG1laW5lIG1hcmdpbmFsZW4KZmFlaGlna2VpdGVuIHJlaWNoZW4gZGFmdWVyIGF1Y2gpLCBhYmVyIGljaCBoYWx0ZSBlcyBuaWNodCBmdWVyIHNpbm52b2xsLiBpbQp1ZWJyaWdlbiBpc3QgZGllIGxpc3RlIGF1Y2ggZnVlciAiMDgvMTUtbWFnaWVyIiB6dSBlcnJlaWNoZW4sIHdlbm4gZXMgbmljaHQKZGllIGFic29sdXRlbiB3dWVyc3RjaGVuIHNpbmQuCgp3dXJ6ZWwgKGd1dCBkYXNzIGRlciB0aHJlYWQgc2Nob24gcmljaHRpZyBzdGVodCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGVtcGZlaGx1bmcgKEFuYXRvbCwgMjEuIE5vdiAxOTk5LCAxNjo1MzozMik6Cn4jISBybj1XdXJ6ZWwgcnQ9OTQzMTk5NDYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQzMTU0OTIyCkxlaWRlciBnaWJ0IGVzIGtlaW5lIFRvcGxpc3RlIGZ1ZXIgdG9sbGUgR2VnZW5kZW4uIEdlZ2VuZGVuLCBkaWUgZWluZQpnZXdpc3NlIEF0bW9zcGhhZXJlIGJlc2l0emVuLCBkaWUgc2ljaCBhdXMgZWluZW0gR2VtaXNjaCBhdXMgTlBDcywgRGV0YWlsLQpyZWljaHR1bSwgKFdvcnQtKXdpdHogdW5kIGd1dGVuIEJlc2NocmVpYnVuZ2VuIGJpbGRldC4uLgoKQXVmIGVpbmVuIFRydmVzLUJlcmljaHRzYXVmdHJhZyAiRnVlaHJlIGVpbmUgTWVpbnVuZ3N1bWZyYWdlIHp1IC4uLiBkdXJjaCIKd2FydGVuZCwKCkFuYXRvbCA6KQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdXNiaWxkdW5nIChBcmF0aCwgMjEuIE5vdiAxOTk5LCAxNzowNzo1Myk6CkF1c2JpbGR1bmcsIG1pdHRlbiBpbSBLYW1wZi4uLjoKRHUgc2Fnc3Q6IEdpYiBhbGxlcyA6KQouLi4KeHh4IHRyaXR0IGRpZSBMdWZ0IGtyYWVmdGlnLgp4eHggc2NobmVpZGV0IHNpY2ggc2VsYmVyIGVpbmUgSGFuZCBhYiEKCkFlaCwgc28gd2FyIGRhcyBuaWNodCBnZW1laW50IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBlbXBmZWhsdW5nIChFaXNpLCAyMS4gTm92IDE5OTksIDE5OjE3OjU2KToKfiMhIHJuPVd1cnplbCBydD05NDMxOTk0NjAgcmc9c2NobWFycm4KfiMhIHRpZD05NDMxNTQ5MjIKSG0sIG1hbiBrb2VubnRlIERpZSBMaXN0ZSBkb2NoIGluIG5lIFRvZGVzc2VxdWV6IGVpbmJhdWVuLCBkaWUgbWFuIHp1ICJydW5kZW4iClRvZGVuIHp1IHNlaGVuIGtyaWVndCAuLi4KCkVpc2ksIGhhdCBhdWNoIG1hbCBuZSAoU2NobmFwcyktSWRlZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZW1wZmVobHVuZyAoQXJrLCAyMi4gTm92IDE5OTksIDIwOjE5OjE1KToKfiMhIHJuPUxhbmZlYXIgcnQ9OTQzMTg3MzI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQzMTU0OTIyClVuZCByaXNraWVyZW4sIGRhc3MgZXR3YXMsIHdhcyBiZWkgdW5zIE1hZ2llcm4gZnVlciBTdGltbXVuZyB1bmQgTW90aXZhdGlvbgpzb3JndCwgdm9uIG5vZXJnZWxuZGVuIFNwaWVsZXJuIHZlcm1pZXN0IHdpcmQ/IE5vZSwgZGFnZWdlbiA6LSkKQXVzc2VyZGVtIGtvbW10IGVzIGRhbm4gc2ljaGVyIHp1IE1hbmlwdWxhdGlvbmVuIGR1cmNoIGlyZ2VuZHdlbGNoZQpTdGVyYmV6d2VpdGlzLCBTcGllbGVyIGtlbm5lbiBkYSBqYSBuaXgsIGRpZSBzaW5kIHNvIGRvb2YgO15QCkFsc28sIHBmdWksIFd1cnplbCwgZnVlciBkaWVzZW4gQXVmcnVmLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBUZW1wZWx0cmFuc3BvcnQgKEphbWFsc2tpLCAyMy4gTm92IDE5OTksIDEyOjU1OjU2KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDMxMTgxOTAgcmc9c2NobWFycm4KfiMhIHRpZD05NDI5MzIzNTUKR3JpbW1ib3JuLCB3YXMgbWVpbnN0IER1PwpLb3JpbnRoZW5rYWNrZXIsIEtsdWdzY2hpZXNzZXIsRXJic2VuemFlaGxlciwgQnVjaGhhbHRlciwgRmFsdGVuemFlaGxlci4uLgpPZGVyIHNvIHdhcyBpbiBkZXIgQXJ0IiEKSmFtYXNsc2tpLCBhbSB0ZWxuZXQgdW5kIG9obmUgRWNobzsgZGVzaGFsYiBnZXNwYW5udCB3aWUgZXMgYXVzc2llaHQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogVGVtcGVsdHJhbnNwb3J0IChKYW1hbHNraSwgMjMuIE5vdiAxOTk5LCAxMzowMzo0Mik6Cn4jISBybj1KYW1hbHNraSBydD05NDMzNTgxNTYgcmc9c2NobWFycm4KfiMhIHRpZD05NDI5MzIzNTUKSmFtYWxza2kgaGF0IGpldHp0IGRlbiBOYW1lbiBCbGluZHRpcHBlciEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBUZW1wZWx0cmFuc3BvcnQgKEdyaW1tYm9ybiwgMjMuIE5vdiAxOTk5LCAxNjowMzo1Nyk6Cn4jISBybj1KYW1hbHNraSBydD05NDMzNTgxNTYgcmc9c2NobWFycm4KfiMhIHRpZD05NDI5MzIzNTUKS2VpbmUgU29yZ2UsIG5hY2ggRGVpbmVyIEF1c3NhZ2UgYmVzdGVodCBrZWluZXJsZWkgR2VmYWhyLCBkYXNzIGljaCBEaWNoCnNjaGllc3NlbiB3dWVyZGUuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFRlbXBlbHRyYW5zcG9ydCAoSmFtYWxza2ksIDIzLiBOb3YgMTk5OSwgMTg6NDM6MTcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0MzM2OTQzNyByZz1zY2htYXJybgp+IyEgdGlkPTk0MjkzMjM1NQpEdSBiaXN0IGVpbiB3YWhyZXIgS2x1Z3NjaGllc3NlciA7KQpTY2hpZXNzdCBuaWNodCBhdWYgRHVtbWUhCkphbWFsc2tpLCBkdW1tIGxlYnQgZ3V0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW56ZXN0PyAoTWVuYWNlLCAyMy4gTm92IDE5OTksIDIwOjU3OjM3KToKSmVuYW5kcmEgaXN0IGpldHp0IGVpbmUgTWFnaWVyaW4hIChNZXJsaW4sIDE4LiBOb3YgMTk5OSwgMjM6MDg6NDkpOgoKCkFtIERvbiwgMTguIE5vdiAxOTk5LCAyMzowODo0OSBoYXQgU2NobGVpY2hlciBKZW5hbmRyYSB6dXIgTWFnaWVyaW4KYmVydWZlbi4gSGVyemxpY2hlbiBHbHVlY2t3dW5zY2gsIEplbmFuZHJhLiBHbHVlY2t3dWVuc2NoZSBhdWNoIGFuIERpY2gsClNjaGxlaWNoZXIsIHp1IERlaW5lciBuZXVlbiBUb2NodGVyIQpmaW5nZXIgamVuYW5kcmEKLi4uClZlcmhlaXJhdGV0IG1pdDogU2NobGVpY2hlcgoKV2llIG5lbm50IG1hbiBkYXMgbm9jaG1hbCwgd2VubiBtYW4gbWl0IGRlciBlaWdlbmVuIFRvY2h0ZXIgdmVyaGVpcmF0ZXQgaXN0Pwo6bykKCk1lbmFjZSAqc2VpbmUgRnJldW5kZSBKZW5hbmRyYSB1bmQgU2NobGVpY2hlciBncnVlc3NlbmQgO28pKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEluemVzdD8gKFNpbHZhbmEsIDIzLiBOb3YgMTk5OSwgMjA6NTk6MjkpOgp+IyEgcm49TWVuYWNlIHJ0PTk0MzM4NzA1NyByZz1zY2htYXJybgp+IyEgdGlkPTk0MzM4NzA1NwpOZW5lLCBuaWNodCBkaWUgVG9jaHRlciBoZWlyYXRlbiwgc29uZGVybiBkaWUgRWhlZnJhdSBhZG9wdGllcmVuLiBEYXMgaXN0IG5lbgpVbnRlcnNjaGllZCB1bmQgc2Nob24gZWluIGFsdGVyIEh1dC4KCiAgU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBJbnplc3Q/IChNZW5hY2UsIDIzLiBOb3YgMTk5OSwgMjE6MDM6NDQpOgp+IyEgcm49U2lsdmFuYSBydD05NDMzODcxNjkgcmc9c2NobWFycm4KfiMhIHRpZD05NDMzODcwNTcKSWNoIGhhYiBuaWUgYmVoYXVwdGV0LCBkYXNzIFNjaGxlaWNoZXIgc2VpbmUgVG9jaHRlciBnZWhlaXJhdGV0IGhhdCwgbnVyLCBkYXNzCmVyIG1pdCBzZWluZXIgVG9jaHRlciB2ZXJoZWlyYXRldCBfaXN0Xy4gS2xlaW5lciBhYmVyIGZlaW5lciBVbnRlcnNjaGllZCEKCk1lbmFjZSAqdWViZXIgZGllIEZhbWlsaWVudmVyaGFlbHRuaXNzZSBpbmZvbWllcnQgc2VpZW5kLCBhYmVyIHRyb3R6ZGVtIGVpbgp3ZW5pZyBmZWl4ZW5kKgoKUC5TLjogSGFiIGRlbiBBcnRpa2VsIGF1Y2ggbnVyIGdlc2NocmllYmVuLCB3ZWlsIGljaCBtaXQgYmVpZGVuIGJlZnJldW5kZXQKYmluLCBiencuIHdhciwgZGEgU2NobGVpY2hlciBqYSBzZWluIEZCYW5kIGRlc3RydWN0ZXQgaGF0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSW56ZXN0PyAoQW5hdG9sLCAyMy4gTm92IDE5OTksIDIxOjA1OjE0KToKfiMhIHJuPU1lbmFjZSBydD05NDMzODc0MjQgcmc9c2NobWFycm4KfiMhIHRpZD05NDMzODcwNTcKTmFqYSwgbWl0IHdlbSBpc3QgQm9pbmcgdmVyaGVpcmF0ZXQ/IE1pdCB3ZW0gaXN0IEpvZiB2ZXJoZWlyYXRldD8gTWFuCmtvZW5udGUgZmFzdCBtZWluZW4sIFNjaGxlaWNoZXIgaGF0ICJnb2V0dGxpY2hlIEFtYml0aW9uZW4iLi4uIDpvKQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSW56ZXN0PyAoR3JpbW1ib3JuLCAyMy4gTm92IDE5OTksIDIxOjA3OjMwKToKfiMhIHJuPUFuYXRvbCBydD05NDMzODc1MTQgcmc9c2NobWFycm4KfiMhIHRpZD05NDMzODcwNTcKQWxzbywgYmVpIG1pciBpbm5lciBGYW1pbGllLCBkYSBoZWlyYXRlbiBzaWUgaW1tZXIgdW50ZXJlaW5hbmRlcjogRGllIE11dHRlcgpkZW4gVmF0ZXIsIGRpZSBPbWEgZGVuIE9wYSwgZGllIFRhbnRlIGRlbiBPbmtlbC4uLgoKR2RBIGtyYW10IGltICJHcm9zc2VuIFdpdHplYnVjaCAxOTc4Ii4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEluemVzdD8gKEFuYXRvbCwgMjMuIE5vdiAxOTk5LCAyMTowODowMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTQzMzg3NjUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQzMzg3MDU3CkFjaCwgWnVmYWVsbGUuCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSW56ZXN0PyAoU2NobGVpY2hlciwgMjMuIE5vdiAxOTk5LCAyMjo1Nzo0OCk6Cn4jISBybj1NZW5hY2UgcnQ9OTQzMzg3MDU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQzMzg3MDU3CkFsc29vb29vbyB1bSBkYXMgaGllciBtYWwga2xhcnp1c3RlbGxlbiEKRWdhbCB3YXMgSWhyIHVuZCBkaWUgR2VzZXR6ZXN0ZXh0ZSBzYWdlbiBlcyBtYWNodCBlaW5lbiBSaWVzZW5zcGFzcyEKSW4gZGllc2VtIFNpbm5lClNjaGxlaWNoZXIgZGVyIE1hbm52YXRlciwgVmF0ZXJtYW5uLCBsYWNoZW5kZSBEcml0dGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZldXRlciBrdXNzIG9kZXIgd2FzPyAoR25vbWUsIDIzLiBOb3YgMTk5OSwgMjM6MTY6MzgpOgpEZWluIEZyZXVuZCBHb2xhcyBwcnVzdGV0IHNlaW5lbiBWZXJsb2J0ZW4gYW4gYXVzIGRlciBGZXJuZS4KVm9uIGVpbmVyIGtsZWluZXJlbiBQZnVldHplIHp3aXNjaGVuIGRlbiBCYWV1bWVuIHN0ZWlndCBlaW4gbGVpY2h0ZXIgRHVuc3QKYXVmLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkd1dCBzbyAoTHVnLCAyNC4gTm92IDE5OTksIDAyOjA4OjMzKToKClR5cGVuIGRpZSBtYW4gbmljaHQga2lsbGVuIGthbm4gbmVydmVuIG51ci4uLgoKClpvb2sgaGVidCBzZWluZSBBcm1lLiBFaW4gQmxpdHogc2NobGFlZ3QgaW4gQWxleGlzIGVpbi4KQWxleGlzIGZhZWxsdCBzdG9laG5lbmQgenUgQm9kZW4uClpvb2sgaGVidCBzZWluZSBBcm1lLiBFaW4gQmxpdHogc2NobGFlZ3QgaW4gQWxleGlzIGVpbi4KQWxleGlzIGZhZWxsdCBzdG9laG5lbmQgenUgQm9kZW4uClpvb2sgaGVidCBzZWluZSBBcm1lLiBFaW4gQmxpdHogc2NobGFlZ3QgaW4gQWxleGlzIGVpbi4KQWxleGlzIGZhZWxsdCBzdG9laG5lbmQgenUgQm9kZW4uClpvb2sgaGVidCBzZWluZSBBcm1lLiBFaW4gQmxpdHogc2NobGFlZ3QgaW4gQWxleGlzIGVpbi4KQWxleGlzIGZhZWxsdCBzdG9laG5lbmQgenUgQm9kZW4uClpvb2sgaGVidCBzZWluZSBBcm1lLiBFaW4gQmxpdHogc2NobGFlZ3QgaW4gQWxleGlzIGVpbi4KQWxleGlzIGZhZWxsdCBzdG9laG5lbmQgenUgQm9kZW4uCkVpbiBCZXR0bGVyIGtvbW10IGFuLgoKU3BpdHplbmxlaXN0dW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpaYXViZXJlciBhYndlcnRlbiAhISEgKE5ldm9rLCAyNC4gTm92IDE5OTksIDAyOjM2OjQyKToKQW5hdG9sIGZpeGllcnQgZGllIHdlaXNzZSBMaWNodGt1Z2VsIHVuZCBtYWNodCBzY2h3dW5ndm9sbGUgQmV3ZWd1bmdlbi4KV2ltIGVudHNjaHdpbmRldCBpbiBlaW5lciBTaW5ndWxhcml0YWV0LgoKWmF1YmVyZXJ3aWxsa3VlciEhISEKU2hlcmlmZiEhISEKCk5ldm9rLCBzY2hvY2tpZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppY2ggaGF0dGUgZXMgc2Nob24gdmVybXV0ZXQgOikgKEJpZXJjaGVuLCAyNS4gTm92IDE5OTksIDAwOjE5OjU3KToKRGVpbiBGcmV1bmQgRmV1ZXJ3ZWhyIHRlaWx0IERpciBtaXQ6IEh1Y2gsIG5hY2ggTWl0dGVybmFjaHQsIGljaCBtdXNzIGxvcyEKRGVpbiBGcmV1bmQgTHVnIHRlaWx0IERpciBtaXQ6IEhtIElociBnZWh0IHp1IHp3ZWl0CkRlaW4gRnJldW5kIEZldWVyd2VociBzY2h1bHRlcnQgZGllIFNjaGF1ZmVsIHVuZCB3aW5rdCBhdXMgZGVyIEZlcm5lLgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogaG0sIG1vZWNodGUgbWFsIHdpc3Nlbiwgd2FzIDExMiBpbW1lciB1bQpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogbWl0dGVybmFjaHQgdHJlaWJ0IDopCkZldWVyd2VociBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgpDaGFvdCBGZXVlcndlaHIgdmVybGllc3MgZ2VyYWRlIGRhcyBNb3JnZW5ncmF1ZW4uCkNoYW90IFphcmRveiAoTGV2ZWwgOCwgTWFnaWVyKSBiZXRyYXQgZ2VyYWRlIGRhcyBNb3JnZW5ncmF1ZW4uCgogc29zbywgZGFzIGlzdCBhbHNvIHNlaW4gZG9wcGVsbGViZW4gOikKICAtIEJpZXJjaGVuIC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhleSBoZXkgKEx1ZywgMjUuIE5vdiAxOTk5LCAwMjo0MzowOCk6CgpFY2h0IGNvb2w6CgpEYXltb29uIHRlaWx0IERpciBtaXQ6IGljaCBoYWIgZGljaCBzY2hvbm1hbCBnZWZyYWd0IG9iIGhpZXIgamVtYW5kIG5lIG51bGwKRGF5bW9vbiB0ZWlsdCBEaXIgbWl0OiBnZXdhZWhsdCBoYXQgb2RlciBoaXJubG9zZSBpZGlvdCBtZWxkZSBkaWNoIGdlc2FndAoKTHVzdGlnZXIga2xlaW5lciBCdXJzY2hlCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhleSBoZXkgKE5ldm9rLCAyNS4gTm92IDE5OTksIDA2OjQwOjM1KToKfiMhIHJuPUx1ZyBydD05NDM0OTQxODggcmc9c2NobWFycm4KfiMhIHRpZD05NDM0OTQxODgKKmcqCnRqYSwgTHVnLi4uLi4uc2llaHMgZWluLi4uLi51bmQgeml0dGVyZSB2b3IgZWluZW0gNy8yZXIgZGVyIG1pdCBEaXIgamVkZXJ6ZWl0CmluIGRlciBBcmVuYSBkZW4gQm9kZW4gYXVmd2lzY2h0IDspCnNvbGx0ZXN0IERpY2ggaGFsdCB3aWVkZXIgb2VmdGVycyBibGlja2VuIGxhc3NlbiB1bmQgZGFzIExleCBMdWcgcHJlZGlnZW4gOykKCk5ldm9rLCBrdXJpZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYW5uIGlzdCBkZXIgc2NobmVsbCB3ZWNoLiAoQ3JpdHRlciwgMjUuIE5vdiAxOTk5LCAxNToyOTo0MSk6CkhyZWlkbWFyICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRlaW4gRnJldW5kIEhyZWlkbWFyIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRHUgdGVpbHN0IEhyZWlkbWFyIG1pdDogbW9pbiBoZXV0ZSBsdXN0IGF1ZiBhcmNoaXRla3Q/CkhyZWlkbWFyIGlzdCBnZXJhZGUgbmljaHQgZGE6IGlkbGUuLi4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV1dXIGlzdCB2b2xsIDotKSAoQXJrLCAyNS4gTm92IDE5OTksIDIyOjQ5OjMwKToKICAgICAgICAgd3d3Lm1hc2NoZW5kcmFodHphdW4uZGUKCkZhbGxzIGVzIGplbWFuZGVuIGludGVyZXNzaWVydC4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTaWNoIGFuIGRpZSBlaWdlbmUgTmFzZSBmYXNzZW4/PyAoQnJhbndlbiwgMjYuIE5vdiAxOTk5LCAwMDowODo0OCk6Cj4gU2FuZGllIHNhZ3Q6IGRpZSBiYWdnZXJ0IGVjaHQgamVkZW4gYW4gd2llIGRvb2YKU2FuZGllIHNhZ3Q6IGhhaSB0aWdlcmNoZW4KU2FuZGllIHN0cmVpY2hlbHQgUmlrdXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbnRpLUludmlzLVd1c2NoZWw/IChNb3Jnb3RoLCAyNi4gTm92IDE5OTksIDA3OjUxOjI4KToKRWxlbmRpbCB1bmQgKFhhbmQpIHNpbmQgaW0gU3BpZWwuCkR1IHZlcnd1c2NoZWxzdCBKZW1hbmRzIEhhYXJlIGF1cyBkZXIgRmVybmUuIApYYW5kICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpNKiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTW9yZ290aCwgMjYuIE5vdiAxOTk5LCAxMDoxNjoxMyk6CltBbGxnZW1laW46Q2FsZHJpbl0gaGlsZmUKW1RvZDpMYXJzXSBDYWxkcmluIGhhdCBnZXJhZGUgQ2FsZHJpbiB1bWdlYnJhY2h0LgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJbnRlcmVzc2FudC4uLiAoWmFwaG9iLCAyNi4gTm92IDE5OTksIDEzOjI1OjQxKToKfiMhIHJuPUZvb2JhciBydD05NDMxNDU4OTUgcmc9c2NobWFycm4KfiMhIHRpZD05NDMxNDU4OTUKZGFzcyBkdSBkaWUgc3NwLWdpbGRlbnF1ZXN0IG1hY2hzdD8KClphcGhvYiwgaGF0IHNpY2ggZGEgYXVjaCBzY2hvbiBtYWwgZ2V3dW5kZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChNZW5hY2UsIDI2LiBOb3YgMTk5OSwgMTM6NDI6MzgpOgp+IyEgcm49TW9yZ290aCBydD05NDM2MDc3NzMgcmc9c2NobWFycm4KfiMhIHRpZD05NDM2MDc3NzMKSmEgamEsIGltbWVyIGRpZXNlIFNwaWVnZWwgZGVyIE9wcG9zaXRpb24hIDpvKAoKTWVuYWNlICpzaWNoIGF1Y2ggc2Nob24gbWFsIGdldG9ldGV0IGhhYmVuZCB1bmQgdm9uIHNpY2ggc2VsYnN0IGdldG9ldGV0CndvcmRlbiBzZWllbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhleSBoZXkgKEphbWFsc2tpLCAyNi4gTm92IDE5OTksIDE5OjEyOjAxKToKfiMhIHJuPU5ldm9rIHJ0PTk0MzUwODQzNSByZz1zY2htYXJybgp+IyEgdGlkPTk0MzQ5NDE4OApWaWVsbGVpY2h0IGlzdCBlcyBhdWNoIGVpbiAxLjkzLzg1ZXJbLCBkZXIgbWl0IEx1ZyBuYWNodHMgaW4gZWluZXIgZHVua2xlbgpTdHJhc3NlbiBkZW4gQm9kZW4sIGRpZSBIYXVzd2FlbmRlIHVuZCBkYW5uYWNoIGF1Y2ggbm9jaCBkZW4gTW9uZCBhdWZ3aXNjaHQhCjspCgpKYW1hbCwgZXJmYWhyZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZToga2xhc3NpayAoR3JpbW1ib3JuLCAyNi4gTm92IDE5OTksIDIyOjU3OjI5KToKfiMhIHJuPUJvaW5nIHJ0PTk0MzYwMTY3MSByZz1rdWx0dXIKfiMhIHRpZD05NDM1NTk5NzkKTWFjaHMgaGFsdCB3aWUgYWxsZSBhbmRlcmVuLiBVbnRlcnN1Y2hlbiBudXIgcGVyIHNjcmlwdC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp2b20gYW5kZXJuIFVmZXI/IChTYWhhZG9vbSwgMjYuIE5vdiAxOTk5LCAyMzowNzowNyk6CkxhcnMgZXJzY2hlaW50IGR1cmNoIGVpbmVuIFJpc3MgaW0gVm9yaGFuZyBkZXIgV2VsdGVuLgoKTGFycyB0cmFlZ3QgZWluZW4gT2JlcmxpcHBlbmJhcnQsIGVpbmUga25hcHBlIExlZGVyc2hvcnRzLCBMZWRlcnN0aWVmZWwgCnVuZCBIb3NlbnRyYWVnZXIgYXVzIExlZGVyIHNwYW5uZW4gc2ljaCB1ZWJlciBzZWluZW0gbmFja3RlbiBPYmVya29lcnBlci4KCkxhcnMgc2FndDogIkhpIERldGxlZiEiCkhBTExPIFNVRVNTRVIuIFRvZCBsYWVjaGVsdCBMYXJzIGFuLgpTb3NvLiBUb2QgaGVpc3N0IGFsc28gRGV0bGVmLiBJcmdlbmR3aWUgYmlzdCBEdSBuaWNodCB1ZWJlcnJhc2NodC4KCgoqd2x6KiBkb2NoIGltbWVyIHdpZWRlciBndXQ6KQoKU2FoYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVy4uLiAoRm9vYmFyLCAyNy4gTm92IDE5OTksIDE1OjM2OjIwKToKU3RlbHogdGVpbHQgRGlyIG1pdDogaG1tbSAKU3RlbHogdGVpbHQgRGlyIG1pdDogaWNoIGhhYmUgZGFzIGdlZnVlaGwsIGRhcyBpY2ggYXVjaCBnbGVpY2ggdG9kIGJpbgpEdSB0ZWlsc3QgU3RlbHogbWl0OiBXaWVzbz8KU3RlbHogdGVpbHQgRGlyIG1pdDogaWNoIGhhYmUgYXVjaCBkaWUgcGVzdApbVG9kOkxhcnNdIEVpbmUgc2Nod2VyZSBLcmFua2hlaXQgaGF0IGdlcmFkZSBTdGVseiB1bWdlYnJhY2h0LgoKTmFqYSwgd2VuaWdzdGVucyBrYW0gZXMgbmljaHQgdWViZXJyYXNjaGVuZC4uLgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgZ2VydWZlbi4uLiAoV2ltLCAyNy4gTm92IDE5OTksIDIyOjM0OjMxKToKS2FyaXMgdGVpbHQgRGlyIG1pdDogaG1tLi4gaWNoIHdlaXNzIGphLCBkYXNzIGRhcyBLZXJiaG9seiBuZXQgZGVpbmUgU2FjaGUgaXMKS2FyaXMgdGVpbHQgRGlyIG1pdDogLi4uIGFiZXIgaWNoIGhhYiBkYSBuIFBSb2JsZW0gbWl0IC4uClJpa3VzIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KUmlrdXMgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZW5uIEZyZXVuZGUgbWV0emVsbiAuLi4gKExpYXJhLCAyOC4gTm92IDE5OTksIDAwOjM3OjUxKToKRHUgdGVpbHN0IFRyYXVtYSBtaXQ6IGFjaCB3ZWdlbiBkYXJraWUgaWNoIGRhY2h0ZSBlciB3YWVyZSBpbiBzY2h3aWVyaWdrZWl0ZW4KRHUgdGVpbHN0IFRyYXVtYSBtaXQ6IDstKQpUcmF1bWEgdGVpbHQgRGlyIG1pdDogaXNzZXIgZ2VsZWdlbnRsaWNoIDopIFswMDoyN10KVHJhdW1hIHRlaWx0IERpciBtaXQ6IGFiZXIgbWl0IEVsZW5kaWwgdW5kIE1hdGlzIGltIFRlYW0gYmVrb21tdCBtYW4gc293YXMgaW4KVHJhdW1hIHRlaWx0IERpciBtaXQ6IGRlbiBHcmlmZiAqZyogWzAwOjI3XQoKd2VuaWdlIE1pbnV0ZW4gc3BhZXRlciAuLi4KCltUb2Q6TGFyc10gRWluIEZldWVyc2Nod2VpbiBoYXQgZ2VyYWRlIERhcmt3aW5nIHVtZ2VicmFjaHQuCltUb2Q6RWluIEZldWVyc2Nod2Vpbl0gWklTQ0gsIFNjaG9uIGJpc3QgRHUgdmVyYnJhbm50Li4uCltUb2Q6TGFyc10gRWluIEZldWVyc2Nod2VpbiBoYXQgZ2VyYWRlIE1hdGlzIHVtZ2VicmFjaHQuCltUb2Q6RWluIEZldWVyc2Nod2Vpbl0gWklTQ0gsIFNjaG9uIGJpc3QgRHUgdmVyYnJhbm50Li4uCltCZWlsZWlkOkFlbmVhc10gYmVpbGVpZApbVG9kOkxhcnNdIEVpbiBGZXVlcnNjaHdlaW4gaGF0IGdlcmFkZSBFbGVuZGlsIHVtZ2VicmFjaHQuCltUb2Q6RWluIEZldWVyc2Nod2Vpbl0gWklTQ0gsIFNjaG9uIGJpc3QgRHUgdmVyYnJhbm50Li4uCi4uLgoKTGlhcmEsIFp3ZXJnZW56YXViZXJpbmUgKGtlaW4gS29tbWVudGFyOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGV5IGhleSAoTHVnLCAyOC4gTm92IDE5OTksIDAyOjM1OjM4KToKfiMhIHJuPU5ldm9rIHJ0PTk0MzUwODQzNSByZz1zY2htYXJybgp+IyEgdGlkPTk0MzQ5NDE4OApITSwKCkxleCBMdWcgPSBMZXggVGFsaW9uaXMKCkhhaApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyZXVuZGU/Pz8gKEx1ZywgMjguIE5vdiAxOTk5LCAwMjo0Mjo1Nik6CgpUc3NzLAoKCkRlaW4gRnJldW5kIE11cGZlbCB0ZWlsdCBEaXIgbWl0OiBuZXR0ZXIgcGxhbiwgbHVnIDspCkRlaW4gRnJldW5kIERpZWRlciB0ZWlsdCBEaXIgbWl0OiBMdWcgYmlzdGUgc2NobGVjaHQgZHJhdWY/IGljaCB2ZXJtaXNzIGRhcwpEZWluIEZyZXVuZCBEaWVkZXIgdGVpbHQgRGlyIG1pdDogZWluIG9kZXIgYW5kZXJlIEZpZEtHLCBMRywgZXRjLi4uIGluIGRlaW5lbgpEZWluIEZyZXVuZCBEaWVkZXIgdGVpbHQgRGlyIG1pdDogYXJ0aWtlbG4gOikKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogamFqYSBsdWcgaXMgZ2V6YWVobXQuCkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IGRhIHR1dCBzaWNoIG5peCBtZWhyCkRlaW4gRnJldW5kIE11cGZlbCB0ZWlsdCBEaXIgbWl0OiB1bm51IGlzc2VyIG5pbW1lciBtaWVzIHNvbmRlcm4gc3Vlc3MgOykKRGVpbiBGcmV1bmQgRGllZGVyIHRlaWx0IERpciBtaXQ6IGZyYWd0IHNpY2ggbnVyIHZvbiB3ZW0gOikKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogZ2VuYXUKRGVpbiBGcmV1bmQgTXVwZmVsIHRlaWx0IERpciBtaXQ6IHphaG5sb3MKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogZWxvcmEgd2FocnNjaGVpbmxpY2ggKmcqCkRlaW4gRnJldW5kIERpZWRlciB0ZWlsdCBEaXIgbWl0OiBsYWVzc3QgbmFjaCBkZXIgYXJtZS4uLiBvZGVyIGlzc2VzIG51ciBkYXMKRGVpbiBGcmV1bmQgRGllZGVyIHRlaWx0IERpciBtaXQ6IHN0ZWlnZW5kZSBhbHRlcj8gOikKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogZXMgZ2VodCBpaG0gZWluZmFjaCB6dSBndXQgOy0pKSkKRGVpbiBGcmV1bmQgTXVwZmVsIHRlaWx0IERpciBtaXQ6IGRlciBiaXNzIGlzdCB3ZWcuIGRpZSAibmFkZWxzcGl0emVuCkRlaW4gRnJldW5kIE11cGZlbCB0ZWlsdCBEaXIgbWl0OiBlY2t6YWVobmUiIGFiZ2VmZWlsdCA7KQoKCkljaCByZWl1c3MgRXVjaCBkaWUgRWluZ2V3ZWlkZSByYXVzIQpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtIChMdWcsIDI4LiBOb3YgMTk5OSwgMDM6MDI6MDMpOgoKW0FsbGdlbWVpbjpHcmltbWFuXSB1bmQgZGEgbWVsZGV0IHNpY2ggZGFubiBkZXIgbmFlY2hzdGUgV3Vyc3R6d2VpdGllIDopCltBbGxnZW1laW46R3JpbW1hbl0gPDAyOjU5OjMxPgpbQWxsZ2VtZWluOktpYm9dIHdpZSBrb21tZSBpY2ggbmFjaCB2YWxnZXNzYT8gPDAyOjU5OjMzPgoKUHJvcGhldGlzY2gKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnbGF1YmVuIGlzdCBzbyBuZSBzYWNoZSAoUHVrLCAyOC4gTm92IDE5OTksIDEyOjE2OjIxKToKUGFkcmVpYyBmcmV1dCBzaWNoIGF1Y2ggc2Nob24gcmljaHRpZyBhdWYgZGllIFBhcnR5LgpzYWdlIGphamEKRHUgc2Fnc3Q6IGphamEKPiB3dXNjaGVsIHBhZHJlaWMKRHUgdmVyd3VzY2hlbHN0IFBhZHJlaWNzIEhhYXJlLgo+IAo+IFBhZHJlaWMgc2FndDogdW5kIGljaCBoYWIgbWlyIHZvcmdlbm9tbWVuIGRpZXNtYWwgZWluIGJpc3Nlcmwgd2VuaWdlciB6dQpQYWRyZWljIHNhZ3Q6IHRyaW5rZW4gOikpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZ2xhdWJlbiBpc3Qgc28gbmUgc2FjaGUgKEJvaW5nLCAyOC4gTm92IDE5OTksIDE2OjUzOjE3KToKfiMhIHJuPVB1ayBydD05NDM3ODc3ODEgcmc9c2NobWFycm4KfiMhIHRpZD05NDM3ODc3ODEKVW5kIG1pciBoYXQgZXIgbm9jaCBTYXVmd2V0dGJld2VyYmUgYW5nZWJvdGVuIC4uLi4KSWNoIGhhYiBhYmVyIGFiZ2VsZWhudC4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ29sYWdhdGUgLSBBZmZhZXJlIChHbG9pbiwgMjguIE5vdiAxOTk5LCAxNjo1ODo1Nik6Cj4gbGllcyBnZXRyYWVua2VrYXJ0ZQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpBbGtvaG9sZnJlaWUgR2V0cmFlbmtlICAgICAgICAgIFByZWlzIHwgV2VpbmUgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmVpcyAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KTWluZXJhbHdhc3NlciAgICAgICAgICAgICAgICAgICAgICA1MCB8IFdlaXNzd2VpbiAgICAgICAgICAgICAgICAgICAgICAgICAyNTAKQ29sYSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA4MCB8IFJvdHdlaW4gICAgICAgICAgICAgICAgICAgICAgICAgICAyNTAKR3JhcGVmcnVpdHNhZnQgICAgICAgICAgICAgICAgICAgIDEwMCB8IApBcGZlbHNhZnQgICAgICAgICAgICAgICAgICAgICAgICAgMTAwIHwgU2NobmFlcHNlICAgICAgICAgICAgICAgICAgICAgICBQcmVpcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgRHNjaHVuZ2VsZGFtcGYgICAgICAgICAgICAgICAgICAgIDQ1MAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgQmxhY2tvdXQgICAgICAgICAgICAgICAgICAgICAgICAgIDk1MAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQoKPmxpZXMgY29sYQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KRGllc2Uga29mZmVpbi0gdW5kIHp1Y2tlcmhhbHRpZ2UgQnJhdXNlIGJlemllaGVuIHdpciBpbW1lciBkaXJla3QgYXVzIFJvY2h1cycKQ29sYS1Hcm9zc2xhZ2VyLiBHdXQsIGRhc3MgZGVyIG5pY2h0cyBkYXZvbiB3ZWlzcy4KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgpHbG9pbiBkZWNrdCBhdWYgOj4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEhhdCBKZW1hbmQgbmUgRXJrbGFlcnVuZyAoR3JpbW1ib3JuLCAyOC4gTm92IDE5OTksIDE5OjI1OjQ1KToKfiMhIHJuPVd1cnplbCBydD05NDM3MjY4NTYgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9OTQzNjA5NTc2CkViZW4sIGRhcyBpc3QgZWhlciB0ZWNobmlzY2ggb3JpZW50aWVydDogcGx1ZyBhbmQgcnRmbS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2F0emVuIGluIEhhZXVzZXJuLi4uIChEYXJrd2luZywgMjkuIE5vdiAxOTk5LCAwMjoxNTowNyk6CkxlaWxhIHNjaG51cnJ0IGVpbiBIYXVzIHNhbmZ0IGFuLgoKTGVpbGEgbGFldWZ0IHp3aXNjaGVuIGVpbmVzIEhhdXMgQmVpbmVuIGR1cmNoLiBFcyBtdXNzIGF1ZnBhc3NlbiwgZGFzcyBlcwpuaWNodCBzdG9scGVydC4gCgpMZWlsYSBzY2hsZWljaHQgYW4gZWluZXMgSGF1cyBCZWluZSB1bmQga3JhdHp0IGVzIG1pdCBpaHJlciBQZm90ZS4gTGVpZGVyIGdlaHQKZGVyIEtyYXR6ZXIgYmlzIGF1ZiBkaWUgSGF1dCwgc29kYXNzIGVzIHp1IGJsdXRlbiBiZWdpbm50LiBlaW4gSGF1cyBzY2hyZWl0CmF1ZiB1bmQgdHJpdHQgbmFjaCBMZWlsYSwgdmVyZmVobHQgc2llIGFiZXIuIAoKQnJpZXNlbCB3ZWlzcyBzY2hvbiB3YXJ1bSBlciBrZWluZSBIYXVzdGllcmUgaW0gU3RydXYgaGFiZW4gd2lsbCA7KQoKZWluIGdyaW5zZW5kZXIgRGFya3dpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRyb2xsaT8gd2VjaCBpc3NhISAoR3JpbW1hbiwgMjkuIE5vdiAxOTk5LCAwMjo0MDo1MCk6CkRlaW4gRnJldW5kIFN0cm9oYWxtIHRlaWx0IERpciBtaXQ6IHN0ZWxsIG1hbCBiaXR0ZSB3ZXIgZHJvbGxpIGFiLi4gaXMgamEgbmV0CkRlaW4gRnJldW5kIFN0cm9oYWxtIHRlaWx0IERpciBtaXQ6IHp1bSBhdXNoYWx0ZW4gKmFlY2h6KgpEcm9sbGkgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgogLi4uIHVuZ2VzY2huaXR0ZW4gLi4uCldlbm4gZGFzIGltbWVyIHNvIGdlaGVuIHd1ZXJkZSA6KQoKR3JpbU1hbiAuLi4gc2NobXVuemVsdCBpbW1lciBub2NoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gU2NoZWxtLi4uIChMdWcsIDI5LiBOb3YgMTk5OSwgMDI6NDk6NDEpOgoKd2VyIEJvZXNlcyBkYWJlaSBkZW5rdDoKCkVpbiBzdGFyayB2aWJyaWVyZW5kZXMgUnVuZW5zY2h3ZXJ0LgoKCkFiZXIgd2FzIGhhdCBQYWRyZWljIGRhYmVpIGdlZGFjaHQ/Ckx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IENvbGFnYXRlIC0gQWZmYWVyZSAoUm9jaHVzLCAyOS4gTm92IDE5OTksIDEzOjA3OjQwKToKfiMhIHJuPUdsb2luIHJ0PTk0MzgwNDczNiByZz1zY2htYXJybgp+IyEgdGlkPTk0MzgwNDczNgpHdXQsIGRhc3MgaWNoIGVzIEpFVFpUIHdlaXNzLi4uCgogIFJvY2h1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIFNjaGF0emthbW1lciBLYXR6bWFuZHVzIC4uLkVpbmUgZ2VvZWZmbmV0ZSBUdWVyIGF1cyBBZGFtYW50aXVtLiAgIChHbG9pbiwgMjkuIE5vdiAxOTk5LCAxNzowNzoyNyk6CkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBub3Jkd2VzdGVuLgo1MDAwMCBNdWVuemVuLgpFaW4gS3JhbGxlbmRvbGNoLiAoMikKRWluZSB3ZWl0ZSBIb3NlLiAoMikKRWluIFBhcnR5YnJldHQuICgzKQoKTWFuIGJlYWNodGUgZGllIGRyZWkgd2VydHZvbGxlbiBQYXJ0eWJyZXR0ZXIgOy0pCgpHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbSBFbGZlbmRvcmYgLi4uIChMaWFyYSwgMjkuIE5vdiAxOTk5LCAyMjo1NjoyNik6CkRpZSBHYWVydG5lcmluIGJ1ZWNrdCBzaWNoLgpEaWUgR2FlcnRuZXJpbiBnZWh0IG5hY2ggTm9yZGVuLgoKTGlhcmEsIGRlbmt0IC4gbyBPICh3ZW5uIEx1ZyBkYXMgZ2VzZWhlbiBoYWV0dGUgLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2llIHJlY2h0IGVyIGRvY2ggaGF0ICpzZXVmeiogKERpZWRlciwgMjkuIE5vdiAxOTk5LCAyMjo1OTowNSk6CkRlaW4gRnJldW5kIEZldWVyd2VociB0ZWlsdCBEaXIgbWl0OiBXYWFhYWghIEVNLUludmFzaW9uISBBbGxlIFNjaG90dGVuIGRpY2h0IQpEZWluIEZyZXVuZCBGZXVlcndlaHIgdGVpbHQgRGlyIG1pdDogVGF1Y2hlbiEgVGF1Y2hlbiEKWm9vayAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEZWluIEZyZXVuZCBab29rIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KCkRpZWRlciwgZ3JhdHVsaWVydCAxMTIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXIgdWVibGljaGUgSW5oYWx0IGRlcyBncm9zc2VuIHdlaXRlbiBOaWNodHMuLi4uIChBbmF0b2wsIDMwLiBOb3YgMTk5OSwgMDY6NTU6NTcpOgpEYXMgTmljaHRzLgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgpEZXIgUmluZyBVa2hhemlzLiAoMykKRGFzIFN6ZXB0ZXIgZGVzIFp3ZXJnZW5rb2VuaWdzLiAoMykKRGVyIFNjaGx1ZXNzZWwgenUgQm9pbmdzIFNjaHJlaWJ0aXNjaC4gKDMpCjg1MCBNdWVuemVuLiAoMykKRGllIEtyb25lIGRlcyBad2VyZ2Vua29lbmlncy4gKDMpCkVpbiBTdGF1YndlZGVsLgpFaW5lIEJ1dGxlcndlc3RlLgoKS2VpbmUgV2VpdGVyZW4gRnJhZ2VuIDspCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIbSAoUmFyZGlhbiwgMzAuIE5vdiAxOTk5LCAwOTozNDoxNik6Cn4jISBybj1MdWcgcnQ9OTQzNzU0NTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQzNzU0NTIzCgpXYWFhcz8gU2Nob24gd2llZGVyIGVpbiB1bWFya2llcnRlciBad2VpdGllZT8/PyBXZW5uIGRhcyBkaWUgWnVzdGFlbmRpZ2VuCm1pdGJla29tbWVuLi4uCgpSYXIqIC0tPiBTY2htYXJybiAoYWNobmUsIHNpbmQgd2EgamEgc2Nob24uLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllIFNjaGF0emthbW1lciBLYXR6bWFuZHVzIC4uLkVpbmUgZ2VvZWZmbmV0ZSBUdWVyIGF1cyBBZGFtYW50aXVtLiAgIChSYXJkaWFuLCAzMC4gTm92IDE5OTksIDA5OjQ3OjA3KToKfiMhIHJuPUdsb2luIHJ0PTk0Mzg5MTY0NyByZz1zY2htYXJybgp+IyEgdGlkPTk0Mzg5MTY0NwoKQWNoIGRlc3dlZ2VuIHN0ZWh0IGltIERvbSBrZWlucyBtZWhyIHJ1bS4uLgoKUmFyZGlhbiwgc2ljaCBzY2hvbiBnZXd1bmRlcnQgaGFiZW5kLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uIGVpbiBwYWFyIERldGFpbHMgKEthZW5ndXJ1aCkgKEdsb2luLCAzMC4gTm92IDE5OTksIDEyOjI4OjI4KToKPiB1bnQgZ2VmdWVobApEdSBzaWVoc3QgZWluZW4gRmVobGVyIGltIFJhdW0tWmVpdC1HZWZ1ZWdlLiBNb3Jnb3RoIGtvbW10IGFuIHVuZCBmbHVjaHQsIHVtCmRhbm4gdGF0ZW5sb3MgenUgdmVyc2Nod2luZGVuLgoKPiB1bnQgbW9yZ290aApEdSB3aXJzdCBibGluZCwgRHUgd2lyc3QgdGF1YiwgRHUgYmlzdCB2ZXJnaWZ0ZXQuIEF1c3NlcmRlbSBoYXN0IGR1IGVpbmVuCmZldHRlbiBWaXJ1cyBhbSBIYWxzIHVuZCBpcmdlbmR3byBsYXVlcm4gZ2VmcmFlc3NpZ2UsIG11dGllcnRlIFdhbnplbiBhdWYKRGljaC4gVmVyZGFtbXQsIER1IGJpc3QgZWNodCBpbSBBcnNjaCEKClRqYWphLCBNb3Jnb3RoIGhhdHRlIHNjaG9uIGltbWVyIHNlaW5lbiBSdWYgYWxzIHN1ZXNzZXIgTWFnaWVyIHdlZyA6PgpHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2VzdWNodCAtIGdlZnVuZGVuIChCZWVsemVidWIsIDMwLiBOb3YgMTk5OSwgMTc6NDc6NTYpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBLbGl0emVsZHJvbXNdIFN1Y2hlIEtpbGxlciwgemFobGUgZ3V0LCBaaWVscGVyc29uIFRhbnRhbC4KW1RvZDpMYXJzXSBFaW4gU2NobmVlYmFsbCBoYXQgZ2VyYWRlIFRhbnRhbCB1bWdlYnJhY2h0LiAgICAgICAgICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkluc3RhbnQtUmVzZXQgKFphcGhvYiwgMzAuIE5vdiAxOTk5LCAyMDo0MTowNCk6CkluIGVpbmVtIEdyYWIuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiByYXVzLgpNYWdpY3R1eCBrb21tdCBoZXJlaW4uCk1hZ2ljdHV4IHd1bmRlcnQgc2ljaC4KRHUgc2Fnc3Q6IGphIHRvbGwsIGRlciBnb2JsaW4gaXN0IG5vY2ggbmljaHQgd2llZGVyIGRhCk1hZ2ljdHV4IHJ1ZnQ6IHJlc2V0cyBzb2xsdGVuIGhpZXIgc2NobmVsbGVyIHNlaW4KRWluIFNrZWxldHQga29tbXQgYW4uCiAgRGFzIFNrZWxldHQgZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbiBLbGFwcGVya25vY2hlbiBhbi4KICBEYXMgU2tlbGV0dCB2ZXJmZWhsdCBEaWNoLgoKWmFwaG9iIHdpbGwgZGFzIGF1Y2gga29lbm5lbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhcmVtIGtvcGllcmVuICEhISAoTXl0aHJhbiwgMzAuIE5vdiAxOTk5LCAyMTowNToxNik6CkVpbiBncm9zc2VyIEthc3RlbiBhdXMgSG9seiwgZGVyIGFuIGRlciBWb3JkZXJzZWl0ZSBlaW5lIGR1bmtsZSBHbGFzc2NoZWliZQpoYXQuIEVpbiBncm9zc2VyIEtub3BmIGlzdCBkYXJhbi4gCnVudCBrbm9wZgpEdSBrYW5uc3QgaWhuIGRydWVja2VuLgpkcnVlY2tlIGtub3BmCkRpZSBHbGFzc2NoZWliZSBmYWVuZ3QgYW4genUgZmxpbW1lcm4uCkFzdWthICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpKYSAhIFNvIGtsYXBwdCBkYXMgZ3V0ICEgSWNoIGtvcGllciBtaXIgZWluZSBBc3VrYSBmdWVyIFp1aGF1c2UuLmVpbmUgZnVlcgp1bnRlcndlZ3MuLmVpbmUuLi4gKnRyYWV1bSoKTXl0aHJhbiwgZGFzIE9yaWdpbmFsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgZGllIEZhdXN0IGF1ZidzIEF1Z2UuLi4uIChBbmF0b2wsICAxLiBEZXogMTk5OSwgMDA6NDI6NDIpOgp+IyEgcm49QXJrIHJ0PTk0MzkxNDU1NCByZz1kLmViZW5lCn4jISB0aWQ9OTQzOTE0NTU0CkVpbmUgSG9senB1cHBlIG5hbWVucyBDaHVja3kgZGllIGtsZWluZSBNb2VyZGVycHVwcGUuCgpHbmloaWhpIDspCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhvZSBob2UgaG9lIChMdWcsICAxLiBEZXogMTk5OSwgMDE6MTA6NTkpOgoKSHVlcGZlciAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbQWxsZ2VtZWluOkRpZWRlcl0gaHVodSBIdWVwcGEhCkh1ZXBmZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCltBbGxnZW1laW46RGllZGVyXSBBUkdMCltBbGxnZW1laW46TXVwZmVsXSB0c2NoYQoKCkhpaGkgRGllZGVyLCBnaWJ0IERpciBkYXMgenUgZGVua2VuPwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoIGltIEVsZmVuZG9yZiAuLi4gKEx1ZywgIDEuIERleiAxOTk5LCAwMToxMTo0Myk6Cn4jISBybj1MaWFyYSBydD05NDM5MTI1ODYgcmc9c2NobWFycm4KfiMhIHRpZD05NDM5MTI1ODYKCi4uLmhhZXR0ZSBlciBzaWUgZ2xlaWNoIGdla2lsbHQuLi4KCgpLSWNoZXIgZmllcwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hamEuLi4gKEZvb2JhciwgIDEuIERleiAxOTk5LCAxNjoyMjoyNCk6CkRlciBFbmdlbCB2ZXJzdWNodCB6dSBiZXRlbiwgd2FzIGFiZXIgb2ZmZW5zaWNodGxpY2ggbWlzc2xpbmd0LgpVbmFzYWkgcnVmdDogQWx0ZXIgcGVydmVyc2VyIFNhY2suLi5kYXMgZ2lidHMgamEgd29obCBuaWNodCEhISEhISEhISEhIQoKS2VpbmUgS29tbWVudGFyLgoKICAgICBGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOYWphLi4uIChVbmFzYWksICAxLiBEZXogMTk5OSwgMTY6MzU6MjgpOgp+IyEgcm49Rm9vYmFyIHJ0PTk0NDA2MTc0NCByZz1zY2htYXJybgp+IyEgdGlkPTk0NDA2MTc0NAoKQWxzbwpkYXMgd2FyIHNvIDopIGRhcyBoYXR0ZSBtaXQgZGVtIGFybWVuIEVuZ2VsY2hlbiBnYXIgbmljaHRzIHp1IHR1biEgRGVyIGFsdGUKcGVydmVyc2UgU2FjayBpc3QgUGFkcmVpYy4uLi4uLnVuZCBkaWUgYW53ZXNlbmRlbiBNYWdpZXIgKGFwbyosIFJvY2h1cyogdW5kCld1cnN0IHdpc3NlbiB3YXJ1bSEpCgpVbmEqICpzY2htb2xsZW5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOYWphLi4uIChQYWRyZWljLCAgMS4gRGV6IDE5OTksIDE2OjM2OjIwKToKfiMhIHJuPVVuYXNhaSBydD05NDQwNjI1Mjggcmc9c2NobWFycm4KfiMhIHRpZD05NDQwNjE3NDQKUGFkcmVpYyBncmluc3QgaW1tZXIgbm9jaCBicmVpdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmFqYS4uLiAoQW5hdG9sLCAgMS4gRGV6IDE5OTksIDE2OjM2OjU2KToKfiMhIHJuPVVuYXNhaSBydD05NDQwNjI1Mjggcmc9c2NobWFycm4KfiMhIHRpZD05NDQwNjE3NDQKRGFzcyBQYWRyZWljIGVpbiBhbHRlciBwZXJ2ZXJzZXIgU2FjayBpc3QsIHdpc3NlbiBuaWNodCBudXIgZGllCkFud2VzZW5kZW4uIFdvYmVpIHNpY2ggdWViZXIgZGFzICJhbHQiIHZlcm11dGxpY2ggcHJhZWNodGlnIGRpc2t1dGllcmVuCmxhZXNzdC4uLi4gOykKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3aW50ZXJnZWRhbmtlbiAoR3JpbW1ib3JuLCAgMS4gRGV6IDE5OTksIDE4OjEyOjA0KToKfiMhIG9uPURpZWRlciBvdD05NDQwNTA0MTEgb2c9d2l0emUKfiMhIHJuPUZlbmRlciBydD05NDQwNDE1MDkgcmc9d2l0emUKfiMhIHRpZD05NDQwNDE1MDkKd2llc28gZXJpbm5lcnQgbWljaCBkYXMgYW4gZGllIFNpdHVhdGlvbiBoaWVyIGxldHp0ZW4gV2ludGVyIGluIEZ1cnR3YW5nZW4/CgpEaWVkZXIsIGFyZ2VsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogd2ludGVyZ2VkYW5rZW4gKEdyaW1tYm9ybiwgIDEuIERleiAxOTk5LCAxODoxMjowNik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTQ0MDY4MzE4IG9nPXdpdHplCn4jISBybj1EaWVkZXIgcnQ9OTQ0MDUwNDExIHJnPXdpdHplCn4jISB0aWQ9OTQ0MDQxNTA5ClZpZWxsZWljaHQsIHdlaWwgZG9ydCBkaWVzZSBTdG9yeSBhdWNoIGdlcG9zdGV0IHd1cmRlPwpJbW1lcmhpbiBpc3Qgc2llIG5pY2h0IGdhbnogc28gYWx0IHdpZSBkaWUgQmV0cmFjaHR1bmcsIHdhcnVtIGVzIGRlbgpXZWlobmFjaHRzbWFubiBuaWNodCBnZWJlbiBrYW5uLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHdpbnRlcmdlZGFua2VuIChBbmF0b2wsICAxLiBEZXogMTk5OSwgMTg6MTI6MzIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0NDA2ODMxOCByZz13aXR6ZQp+IyEgdGlkPTk0NDA0MTUwOQpBYndhcnRlbiwga29tbXQgYmVzdGltbXQgYXVjaCBub2NoLi4uIDpvKQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VubiBkaWUgS3JhZWZ0ZSBzY2h3aW5kZW4uLi4gKE9nYXIsICAxLiBEZXogMTk5OSwgMTk6MzA6NTgpOgpEdSBmaW5kZXN0IDQ5MSBNdWVuemVuLCBkaWUgRHUgYmVpbSBsZXR6dGVuIE1hbCB2ZXJsb3JlbiBoYXN0LgpXZWlsIER1IG5pY2h0IG1laHIgc292aWVsIHRyYWdlbiBrYW5uc3QsIHNwZW5kZXN0IER1IGRlbiBSZXN0IGRlciBaZW50cmFsYmFuay4KCk9nYXIgKGlzdCBkb2NoIG5vY2ggZ2FyIG5pY2h0IHNvIGFsdCEpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmdWVyIGxpYXJhIChLYXJpYywgIDEuIERleiAxOTk5LCAyMDowMDozNyk6CndhcyBzaW5udm9sbGVzLi4KCmhlaXNzZXIga2FuZGlkYXQgZnVlciBydWJyaWsgbXVlbGwgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyBzaW5udm9sbGVzIChEYXJrd2luZywgIDEuIERleiAxOTk5LCAyMDowMTowMyk6CmRhbm4gaXN0IHJ1aGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBlcyBmdW56dCA6KSAoQW5hdG9sLCAgMi4gRGV6IDE5OTksIDAwOjM0OjU2KToKfiMhIHJuPVNtaWxleSBydD05NDQwOTEyMTUgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9OTQ0MDkxMjE1Cj4+IGljaCBoYWIgbWl0IGpldHp0IHN1c2UgNi4zIGdlaG9sdCAuLiBpbiBkaWVzZXIgZGlzdHJpYnV0aW9uIGlzdAo+PiBhbmdyaWZmIG1pdCBmZyBmb2cgc3N1IG1nayB5dGdrIGRyaW4genVyIGVya2VubnVuZyB1bmQgdW50ZXJzdHVldHp1bmcKPj4gbWVpbmVyIHZvb2RvbzMuCgpKYSwgS2V5YmluZGluZ3MgZmluZGUgaWNoIGF1Y2ggZG9vZiA7bykKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmFqYS4uLiAoTW9yZ290aCwgIDIuIERleiAxOTk5LCAwODowMzo0NSk6Cn4jISBybj1BbmF0b2wgcnQ9OTQ0MDYyNjE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ0MDYxNzQ0ClBhZHJlaWMgaGF0IGVpbmVuIFNhY2s/IEh1cHBzLiBXZW5uIGVyIGF1Y2ggbnVyIGVpbm1hbCBpbSBKYWhyIGtvbW10LCBrYW5uIGVyCmRvY2ggV2VpaG5hY2h0c21hbm4gc3BpZWxlbi4gOy0pCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVzIGdpYnQgbnVyIGVpbmVuIEtvZWxuZXIgU3RhbW10aXNjaCA6KSAoQW5hdG9sLCAgMi4gRGV6IDE5OTksIDE2OjE4OjA0KToKfiMhIHJuPVphcm5peWEgcnQ9OTQ0MTQ3NzQ4IHJnPWFuemVpZ2VuCn4jISB0aWQ9OTQ0MTQ3NzQ4ClZlcmdlc3N0IGVzLgpHZWh0IGRhIG5pY2h0IGhpbi4KSWhyIG11ZXNzdCBkYXMgbmljaHQgdHVuLgpTaWx2YW5hcyBQbGFldHpjaGVubWFnaWUgaXN0IG5pY2h0IHp1IHNjaGxhZ2VuLgoKQW5hdG9sIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFcyBnaWJ0IG51ciBlaW5lbiBLb2VsbmVyIFN0YW1tdGlzY2ggOikgKEdyaW1tYm9ybiwgIDIuIERleiAxOTk5LCAxNjo0MToxMSk6Cn4jISBybj1BbmF0b2wgcnQ9OTQ0MTQ3ODg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ0MTQ3NzQ4ClsgXSBEdSBrZW5uc3QgVGFuamFzIEZhZWhpZ2tlaXRlbi4KCldlbm4gaWhyZSBQbGFldHpjaGVuIHNvIGd1dCBzaW5kIHdpZSBpaHJlIEthZXNlc3BhZXR6bGUsIGRhbm4gd2lyZCBkYXMKenVtaW5kZXN0IGVpbiBrbmFwcGVyIEF1c2dhbmcuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVzIGdpYnQgbnVyIGVpbmVuIEtvZWxuZXIgU3RhbW10aXNjaCA6KSAoVGFuZ2FsdXIsICAyLiBEZXogMTk5OSwgMTY6NDM6NDkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0NDE0OTI3MSByZz1zY2htYXJybgp+IyEgdGlkPTk0NDE0Nzc0OApiaW4gZnVlciB1bmVudHNjaGllZGVuIHVuZCBzY2hsYWdlIG1pciBsaWViZXIgZGVuIEJhdWNoIHZvbGwgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFcyBnaWJ0IG51ciBlaW5lbiBLb2VsbmVyIFN0YW1tdGlzY2ggOikgKFNpbHZhbmEsICAyLiBEZXogMTk5OSwgMTc6MTk6MjYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0NDE0OTI3MSByZz1zY2htYXJybgp+IyEgdGlkPTk0NDE0Nzc0OApbIF0gRHUga2VubnN0IFNpbHZhbmFzIEVpbnN0ZWxsdW5nIHp1IFdldHRrYWVtcGZlbi4KCkljaCBoYWIgX25pY2h0XyB2b3IsIG1pY2ggaW4gd2FzIGF1Y2ggaW1tZXIgZnVlciBlaW5lciBGb3JtIG1pdCB3ZW0gYXVjaCBpbW1lcgp6dSBtZXNzZW4uIEljaCBicmluZyBuZSBIYW5kdm9sbCBQcmFsaW5lbiBtaXQuIFVuZCBkYXMgaXN0IGFsbGVzLiBLZWluCldldHRrYW1wZiwga2VpbiBTaWVnZXIuIEhvZWNoc3RlbnMgZWluIHBhYXIgdmVyZG9yYmVuZSBNYWVnZW4uCgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVzIGdpYnQgbnVyIGVpbmVuIEtvZWxuZXIgU3RhbW10aXNjaCA6KSAoTWFoYXRtdSwgIDMuIERleiAxOTk5LCAwOToxMDozOSk6Cn4jISBybj1TaWx2YW5hIHJ0PTk0NDE1MTU2NiByZz1zY2htYXJybgp+IyEgdGlkPTk0NDE0Nzc0OApVbmQgd2VubiBEaWNoIE1hcmMgZG9jaCBhdHRhY2tpZXJ0LCB3dWVyZ3N0IER1IGlobiBtaXQgZGVtIHJvdGVuIEthbXBmLQpzY2hhbCA6PgoKTWFoYXRtdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5vcmRpc2NoZSBNeXRob2xvZ2llIChHcmltbWJvcm4sICAzLiBEZXogMTk5OSwgMTA6NDM6MjYpOgp+IyEgcm49THVnIHJ0PTk0NDE3OTkzMSByZz1rdWx0dXIKfiMhIHRpZD05NDQxNzk5MzEKSG1tLCBkYXMgbXVzc3QgRHUgbWlyIGFiZXIgbm9jaCBnZW5hdWVyIGVya2xhZXJlbiwgd2llc28gZXMgS3VsdHVyIHNlaW4gc29sbCwKd2VubiBEdSBkdXJjaCBCZXJnZSB2b24gTmF6aXNjaGVpc3NlIHdhdGVzdC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERpZWRlciwgIDMuIERleiAxOTk5LCAxMToyNjoyNyk6CltBbGxnZW1laW46QmVlbHplYnViXSBrYW5uIGJpdHRlIGVpbiBrbGVyaWtlciBpbiBkaWUgZmV1ZXJlYmVuZSBkZXIgc3NwIGtvbW1lbgpbQWxsZ2VtZWluOkJlZWx6ZWJ1Yl0gPyBzY2huZWxsID8KW0FsbGdlbWVpbjpBcmF0aF0gd296dT8KW0FsbGdlbWVpbjpEcm9sbGldIHdlc2hhbGI/CltUb2Q6TGFyc10gRWluZSBWZXJnaWZ0dW5nIGhhdCBnZXJhZGUgQmVlbHplYnViIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW1tbSAoQXRveiwgIDMuIERleiAxOTk5LCAxMzoyMzo1OCk6CnVuZ2VzY2huaXR0ZW46CgpFbmRlciBydWZ0OiBXT0NIRU5FTkRFCkZyZWl0YWcgIEkgUyBUICBKIEUgVCBaIFQgICBEIEEgISEhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhtbW1tIChFbmRlciwgIDMuIERleiAxOTk5LCAxMzozNzo1Nyk6Cn4jISBybj1BdG96IHJ0PTk0NDIyMzgzOCByZz1zY2htYXJybgp+IyEgdGlkPTk0NDIyMzgzOApGcmVpdGFnIHNjaGVpbnQgZWluIFNwYWV0enVlbmRlciBzZWluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHRlbGVmb24gKEdyaW1tYm9ybiwgIDMuIERleiAxOTk5LCAxODoyOTo0NSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTQ0MjQyMTYxIG9nPXB1aXoKfiMhIHJuPVBob2JvcyBydD05NDQyNDIwMTcgcmc9cHVpegp+IyEgdGlkPTk0NDI0MjAxNwpadSB2aWVsZS4gSWNoIGJyYXVjaGUgZGllIExlaXR1bmcgZnVlcnMgTW9kZW0uClNvbGxlbiBkaWUgTWFlZGVscyBkYXMgZG9jaCB1ZWJlciBuZSBtYWlsaW5nbGlzdGUgbWFjaGVuLCBvZGVyIHNpY2ggenVtCkthZmZlZWtyYWVuemNoZW4gdHJlZmZlbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmFja3RlIEZyYXUgKEdyaW1tYm9ybiwgIDMuIERleiAxOTk5LCAxOTowODoyNCk6CkhldXRlIGltIEtvZWxuZXIgRXhwcmVzcyBmYWVuZ3QgZGVyIEJlZ2xlaXR0ZXh0IHp1ciBuYWNrdGVuIEZyYXUgYXVmIGRlcgpUaXRlbHNlaXRlIGZvbGdlbmRlcm1hc3NlbiBhbjoKCk5pY29sZSBnZWh0cyB3aWVkZXIgZ3V0CkthdHplbmZyYXVjaGVuIE5pY29sZSAoIk9obmUgTXVzY2hpIGZ1ZWhsIGljaCBtaWNoIGVpbnNhbSIpIGtvbW10IGdyYWQgdm9tCkZpdG5lc3N0cmFpbmluZy4gKC4uLikKCkltbWVyIHdlbm4gbWFuIGRlbmt0LCBkaWUgRmVtaW5pc3Rpbm5lbiBoYWJlbiBnZXdvbm5lbiwga29tbWVuIHNvbGNoZSBTcHJ1ZWNoZQpkYWhlci4gU2Nob2VuIHp1IHdpc3NlbiwgZGFzcyBkaWUgV2VsdCBlYmVuIGRvY2ggbm9jaCBpbiBPcmRudW5nIGlzdC4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IChoYXQgZGllIFplaXR1bmcgYXVmbSBLbG8gZ2VmdW5kZW4sIGVocmxpY2ghKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcGVpbmxpY2hlIE1hZ2llci1WZXJ0aXBwZXIgOi0pIChEaWVkZXIsICA0LiBEZXogMTk5OSwgMDE6Mzg6NTUpOgpJZGxlZml4IHJ1ZnQ6IGFuZHkgaGV4eSBkYXMgZ2V3ZWloIGdlaG9lcnQgbWlyIGljaCBoYWIgZGViIHJlaGJvY2sgZXJsZWd0CmFsbCBBbmR5IHJ1ZnQ6IElzdCBtaXIgZG9jaCBlZ2FsIQouLi4KW2Jpc3NsIHNwYWV0ZXIuLi5dCi4uLgpBbmR5IHJ1ZnQ6IElzdCBtaXIgZG9jaCBlZ2FsIQoKCkRpZWRlciwga2ljaGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClR5cGlzY2ggS2FlbXBmZXIgKENha2V5LCAgNC4gRGV6IDE5OTksIDIwOjU5OjMzKToKCkVpbiBCcnVkZXIgZGVzIFNjaHdlcnRtZWlzdGVycyBwYXJpZXJ0IGRpZSBuYWVjaHN0ZW4gQW5ncmlmZmUgbWl0IGVpbmVtClNjaHdlcnQuCiAgRHUgdHJpZmZzdCBkZW4gQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgaGFydC4KRWluIEJydWRlciBkZXMgU2Nod2VydG1laXN0ZXJzIHZlcnN1Y2h0IERlaW5lIFdhZmZlIHp1IHVudGVybGF1ZmVuLCBzdGVsbHQKc2ljaCBkYWJlaSBhYmVyIHNvIHVuZ2VzY2hpY2t0IGFuLCBkYXNzIGVyIHN0b2xwZXJ0CkVpbiBCcnVkZXIgZGVzIFNjaHdlcnRtZWlzdGVycyBmYWVsbHQgZGllIFdhZmZlIGF1cyBkZXIgSGFuZCEKICBEZXIgQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnMgZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbiBIYWVuZGVuIGFuLgoKV2llIG5ldHQgdm9uIGlobSwgbWlyIGRhcyBTY2h3ZXJ0IGZyZWl3aWxsaWcgenUgZ2ViZW4gOi0pCkNha2V5LCBkZXIgc2ljaCBzbyBlaW4gYmlzc2NoZW4gQXJiZWl0IGdlc3BhcnQgaGF0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFR5cGlzY2ggS2FlbXBmZXIgKFJhcmRpYW4sICA1LiBEZXogMTk5OSwgMDY6MTM6MjYpOgp+IyEgcm49Q2FrZXkgcnQ9OTQ0MzM3NTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ0MzM3NTczCkhlaXNzdCBkYXMgbmljaHQgIkVpbkVNIEJydWRlciAuLi4gZmFlbGx0IGRpZSBXYWZmZSBhdXMgZGVyIEhhbmQhIiA/PyAKClJhciwgbWVpbnQgamEgbnVyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbyBrYW5ucyBnZWhlbi4uLiAoWm9vaywgIDUuIERleiAxOTk5LCAxNDo1NjoxMik6ClNjaGxhd2luZXIgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgpbVG9kOkxhcnNdIEVpbmUgU3BoaW54IGhhdCBnZXJhZGUgU2NobGF3aW5lciB1bWdlYnJhY2h0LgpTY2hsYXdpbmVyIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCgpLdXJ6ZXIgQmVzdWNoIHVuZCBkYW5uIGdsZWljaCBiZWkgTGFycyBnZWxhbmRldC4uLi4KCkdydXNzLCBab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBcmF0aCwgIDUuIERleiAxOTk5LCAxOTo0ODo1NCk6ClJhdmVubG9yZCBzYWd0OiBtdXNzIG1hbCBlYmVuIHRlc3RlIHdhaXQKUmF2ZW5sb3JkIHdhbmRlbHQgbmFjaCBTdWVkZW4uClJhdmVubG9yZCB3YW5kZWx0IGhlcmVpbi4KUmF2ZW5sb3JkIHdhbmRlbHQgbmFjaCBOb3JkZW4uCltUb2Q6TGFyc10gRGllIHVuaGVpbWxpY2hlIEhhZW5nZWJydWVja2UgaGF0IGdlcmFkZSBSYXZlbmxvcmQgdW1nZWJyYWNodC4KW1RvZDpEaWUgdW5oZWltbGljaGUgSGFlbmdlYnJ1ZWNrZV0gRGFzIEFlY2h6ZW4gZGVyIFBsYW5rZW4gaG9lcnQgc2ljaApbVG9kOkRpZSB1bmhlaW1saWNoZSBIYWVuZ2VicnVlY2tlXSBoYWVtaXNjaCBhbi4KCkFyYXRoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFpvb2ssICA2LiBEZXogMTk5OSwgMDA6MDg6NDUpOgpFaWdlbnRsaWNoIGZhbHNjaGUgUnVicmlrIGFiZXI6CgpUb2xnYW4gcnVmdDogVE9EIERFUiBTVUNIVCAtIGVzIGxlYmUgZGFzIFJMISEhClRvbGdhbiBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgoKClpvb2sgd2lua3QgVG9sZ2FuIGhpbnRlcmhlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsbG1hZWNodGlnZSBOb25uZT8gKE1vcmdvdGgsICA2LiBEZXogMTk5OSwgMDk6MTM6MjcpOgpUaHVmaGlyICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCk5vbm5lIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCk1hbmR5ICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKTSogCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBJc3QgQnJpZXNlbHRyaW0gc2VuaWw/IChCb2luZywgIDYuIERleiAxOTk5LCAwOTozMjo0Nyk6Cn4jISBvbj1MeXJhIG90PTk0NDIzMjk5NSBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPVB1ayBydD05NDQyMzEwODkgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTQ0MTU2MTE3CldhcyBkaWUgTWFlbm5lciBpbSBTdHJ1diBhbmdlaHQgdW5kIGRhcyBXdXJzdC1TZWluLi4uIERhIGxpZWdlbiBkaWUgRGluZ2UgamEKb2ZmZW5zaWNodGxpY2g6IGFsbGVzIFdhcm1kdXNjaGVyLCB2ZXJ3ZWljaGxpY2h0ZSBXYXNjaGxhcHBlbiwKTXV0dGVyc29laG5jaGVuLCBnZW5pdGFsZ2VzdGV1ZXJ0ZSBJbmtvbXBpdGVuemVuLApHZW1laW5zYW0tc2luZC13aXItc3RhcmstZ2xhdWJlbmRlIE1ldHR3dWVyc3RlLi4uCgpMeXJhIGtvZW5udGUgbm9jaCB3ZWl0ZXJzY2hyZWliZW4sIG51ciBkaWUgTVBBIHdhZXJlIGRhZnVlciB6dSBrbGVpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSXN0IEJyaWVzZWx0cmltIHNlbmlsPyAoQm9pbmcsICA2LiBEZXogMTk5OSwgMDk6MzI6NDgpOgp+IyEgb249TmV2b2sgb3Q9OTQ0MjQ2MDc5IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49THlyYSBydD05NDQyMzI5OTUgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTQ0MTU2MTE3CnNvc28uLi4uLklua29tcGl0ZW56ZW4gaG1tbW0/IFVuZCBEdSBzY2hyZWlic3Qgd2FzIHZvbiBpbmtvbXBldGVudD8gOykKCk5ldm9rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBJc3QgQnJpZXNlbHRyaW0gc2VuaWw/IChCb2luZywgIDYuIERleiAxOTk5LCAwOTozMjo0OSk6Cn4jISBvbj1MeXJhIG90PTk0NDI0NjE4OSBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPU5ldm9rIHJ0PTk0NDI0NjA3OSByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05NDQxNTYxMTcKSWNoIHdlaXNzIGphIG5pY2h0LCB3aWUgZXMgYmVpIERpciBpc3QsIGFiZXIgYmVpIG1laW5lciB0YXN0YXR1ciBzaW5kIGRhcyAnaScKdW5kIGRhcyAnZScgX3NlaHJfIGRpY2h0IGJlc2FtbWVuIHVuZCBpY2ggaGFiZSBkYSB3b2hsIGV0d2FzIHVuZ2VuYXUgZ2V0aXBwdC4KCkx5cmEgdmVyc3VjaHQgamV0enQgZ2VuYXVlciB6dSB6aWVsZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IElzdCBCcmllc2VsdHJpbSBzZW5pbD8gKEJvaW5nLCAgNi4gRGV6IDE5OTksIDA5OjMyOjUwKToKfiMhIG9uPURpZWRlciBvdD05NDQyNDYzMDMgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1MeXJhIHJ0PTk0NDI0NjE4OSByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05NDQxNTYxMTcKd2FzIGlzdCBkYXMgZnVlciBlaW5lPyBlaW5lIGF1cyBIaW50ZXJrdXJkaXN0YW4/IDopCgpEaWVkZXIsIGNoYW90aXNjaCBmaWVzIGtpY2hlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbHNvIG1laW4gemVpbGVuYmxvY2sgc2llaHQgc28gYXVzIGluIGRlciBvYmVyc3RlbiB6ZWlsZSA6IHF3ZXJ0eXVpb3BbXSAoQm9pbmcsICA2LiBEZXogMTk5OSwgMDk6MzI6NTEpOgp+IyEgb249TmV2b2sgb3Q9OTQ0MjQ2NDQ1IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49RGllZGVyIHJ0PTk0NDI0NjMwMyByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05NDQxNTYxMTcKV2FzIGZ1ZXIgV3Vyc3RmaW5nZXIgaGFzdCBEdSBkYXNzIGRpZSBUYXN0ZW4gZGEgc28gbmFoIHp1c2FtbWVuIHNpbmQ/IE9kZXIgaXMKZGFzIG5lIFRhc3RhdHVyIE1hcmtlIEVpZ2VuYmF1PyA6KQoKTmV2b2ssIHp3YXIga2VpbmUgVW1sYXV0ZSBoYWJlbmQgYWJlciBkYWZ1ZXIgYXVjaCBtaXQgdmVydGF1c2NodGVtIHkgdW5kIHoKbGViZW4gbXVlc3NlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IElzdCBCcmllc2VsdHJpbSBzZW5pbD8gKEJvaW5nLCAgNi4gRGV6IDE5OTksIDA5OjMyOjUyKToKfiMhIG9uPUx5cmEgb3Q9OTQ0MjQ2NDgxIG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49THlyYSBydD05NDQyNDYzNzkgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTQ0MTU2MTE3CkVzIGlzdCBlaW5lIGdhbnogbm9ybWFsZSAnZSctc2Voci1kaWNodC1uZWJlbi0naSctVGFzdGF0dXIuIFdpZXNvPwoKTHlyYSBkZW5rdCAub08oVHlwaXNjaCBNYW5uLCB2b24gbmljaHRzIG5lIEFobnVuZy4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBJc3QgQnJpZXNlbHRyaW0gc2VuaWw/IChCb2luZywgIDYuIERleiAxOTk5LCAwOTozMjo1Myk6Cn4jISBvbj1UYXJpbmEgb3Q9OTQ0MjQ2NTA1IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49THlyYSBydD05NDQyNDY0ODEgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTQ0MTU2MTE3CmFyZ2whIHNjaHJlaWJ0IEV1Y2ggbWFpbHMhCgpUYXJpbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IElzdCBCcmllc2VsdHJpbSBzZW5pbD8gKEJvaW5nLCAgNi4gRGV6IDE5OTksIDA5OjMyOjU0KToKfiMhIG9uPURpZWRlciBvdD05NDQyNDY1MTMgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1MeXJhIHJ0PTk0NDI0NjQ4MSByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05NDQxNTYxMTcKYWxzbyBiZWkgbWlyIHNpbmQgZGEgNCB0YXN0ZW4gZGF6d2lzY2hlbi4uLiBCaXN0IGR1IE1ldHpnZXJpbj8gOikKCmFyaGFyaGFocmhhcmhhYWFhYWFhciA6KQpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBJc3QgQnJpZXNlbHRyaW0gc2VuaWw/IChCb2luZywgIDYuIERleiAxOTk5LCAwOTozMjo1NSk6Cn4jISBvbj1MeXJhIG90PTk0NDI0NjcxOSBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPURpZWRlciBydD05NDQyNDY1MTMgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTQ0MTU2MTE3CmFsc28gbWFuY2htYWwgc2luZCBkaWUgV2FmZmVuIHNjaG9uIGdhbnogc2Nob2VuIHNjaGFyZi4gQWJlciBkaWUgTWFlbm5lcndlbHQKYmVudXR6IGphIG51ciBzU2NoYW1zdG9mZndhZmZlbi4gU2llIGtvZW5udGVuIHNpY2ggamEgc29uc3Qgd2VoIHR1bi4KCkx5cmEgaXN0IHVtIGRhcyBXb2hsIGRlciBNYWVubmVyIHNjaG9uIGJlc29yZ3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBJc3QgQnJpZXNlbHRyaW0gc2VuaWw/IChCb2luZywgIDYuIERleiAxOTk5LCAwOTozMjo1Nik6Cn4jISBvbj1OZXZvayBvdD05NDQyNDY3OTMgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1MeXJhIHJ0PTk0NDI0NjcxOSByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05NDQxNTYxMTcKaWNoIHNjaGFlbWUgbWljaCB1ZWJlcmhhdXB0IG5pY2guLi4KaW1wZXJ0aW5lbnRlIFVudGVyc3RlbGx1bmchIQoKTmV2b2sgZGVyIHVtIGdhbnogYW5kZXJlIFNhY2hlbiBiZXNvcmd0IGlzdC4uLi4ud2lsbHN0IER1IHNvIERlaW5lbiBCZXJpY2h0CnNjaHJlaWJlbj8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBJc3QgQnJpZXNlbHRyaW0gc2VuaWw/IChCb2luZywgIDYuIERleiAxOTk5LCAwOTozMzoyNyk6Cn4jISBvbj1EaWVkZXIgb3Q9OTQ0MjQ2Nzk1IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49THlyYSBydD05NDQyNDY3MTkgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTQ0MTU2MTE3ClNjaGFtc3RvZmZ3YWZmZW4/CgpEaWVkZXIsIGJydWVsbHQgdm9yIExhY2hlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IElzdCBCcmllc2VsdHJpbSBzZW5pbD8gKEJvaW5nLCAgNi4gRGV6IDE5OTksIDA5OjMzOjI4KToKfiMhIG9uPUx5cmEgb3Q9OTQ0MjQ2ODczIG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49TmV2b2sgcnQ9OTQ0MjQ2NzkzIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTk0NDE1NjExNwpXaWVzbyBiZXJ1Y2h0PyBJY2ggYmluIHNlaXQgZmFzdCBlaW5lbSBKYWhyIExldmVsIDIwIHVuZCBoYWJlIGF1Y2ggbmljaHQgc28Kc2NobmVsbCB2b3IsIGRhcyB6dSBhZW5kZXJuLgoKTHlyYSB3ZWlzcyBuaWNodCwgd2FzIGdlbWVpbnQgaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogSXN0IEJyaWVzZWx0cmltIHNlbmlsPyAoQm9pbmcsICA2LiBEZXogMTk5OSwgMDk6MzM6MjkpOgp+IyEgb249TmV2b2sgb3Q9OTQ0MjQ2OTU1IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49THlyYSBydD05NDQyNDY4NzMgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTQ0MTU2MTE3CkduYWFhYWRlLi4uLkljaCBnZWJlIGF1Zi4uLi4uYml0dGUgYml0dGUuLi4uLkR1IGhhc3QgZ2V3b25uZW4uLi4uLi5hYmVyIHNjaGF1CmRvY2ggYml0dGUgaW1tZXIgZXJzdCB3YXMgRHUgdGlwcHN0IGJldm9yIER1IGRpZSBFbnRlcnRhc3RlCmRydWVja3N0Li4uYml0dGUuLi4uLi4KCk5ldm9rLCBzaWNoIExhY2h0cmFlbmVuIGF1cyBkZW4gQXVnZW4gd2lzY2hlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBJc3QgQnJpZXNlbHRyaW0gc2VuaWw/IChCb2luZywgIDYuIERleiAxOTk5LCAwOTozMzozMCk6Cn4jISBvbj1UYXJpbmEgb3Q9OTQ0MjQ2OTgxIG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49THlyYSBydD05NDQyNDY4NzMgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTQ0MTU2MTE3CkljaCB3dWVyZGUgYW4gRGVpbmVyIFN0ZWxsZSB2b3IgZGVtIEJlcmljaHQgZGFmdWVyIHNvcmdlbiwgZGFzcyBEdSBuaWNodCBtZWhyCm1pdCBkZW4gRnVlc3NlbiB0aXBwZW4gbXVzc3QgOi0pCgpUYXJpbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBJc3QgQnJpZXNlbHRyaW0gc2VuaWw/IChCb2luZywgIDYuIERleiAxOTk5LCAwOTozMzozMSk6Cn4jISBvbj1BcHN1IG90PTk0NDI0NzA2NCBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPU5ldm9rIHJ0PTk0NDI0Njk1NSByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05NDQxNTYxMTcKR2lidHMgYmVpIGRlbiBvZmZlbnNpdmVuIEthbXBmc3BlbGxzIGpldHp0IGF1Y2ggJ21haWwnPyB3ZWxjaGVyIEF1c2JpbGRlcgpicmluZ3QgZGVuIGRlbiBiZWk/IHVuZCBhYiB3ZWxjaGVtIEdMIGlzdCBkZXIgZXJsZXJuYmFyPyE/CgpGcmFnZW4gdWViZXIgRnJhZ2VuLgoKQXBzdSAvc2NobWFycm4gb2ZmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogSXN0IEJyaWVzZWx0cmltIHNlbmlsPyAoQm9pbmcsICA2LiBEZXogMTk5OSwgMDk6MzM6MzIpOgp+IyEgb249R25vbWUgb3Q9OTQ0MzMwMzk5IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49THlyYSBydD05NDQyNDY4NzMgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTQ0MTU2MTE3Cmx5cmEsIGR1IGJpc3QgZWluIGVjaHRlcyBwYXJhZG94b246IGR1IHdpcnN0IHZvbiBhcnRpa2VsIHp1IGFydGlrZWwKaW5oYWx0bGljaCB1bmQgc3RpbGlzdGlzY2ggc2NobGVjaHRlciwgc3RlbGxzdCBtaXQgamVkZW0gc2F0eiBkZWluZQppbmtvbXBldGVueiAoYnR3IG1pdCAnZScpIG5ldSB1bnRlciBiZXdlaXMsIGFiZXIgaWNoIHJvbGwgaGllciB2b3IKbGFjaGVuIGdsZWljaCB2b20gc3R1aGw7IHNlaSBzdG9seiwgZHUgaGFzdCBhbHNvIGVpbmVuIGdld2lzc2VuIHVudGVyLQpoYWx0dW5nc3dlcnQgKGRhcyAnZScgdW5kICdpJyBsaWVndCBzZWhyIGRpY2h0IGhpZXIuLi4gd3VoYWhhaGEuLi4pLgoKYWJlciB0dSBkZW0gYW5zZWhlbiBkZXIgdHJ2ZXMgYml0dGUgZWluZW4gZ2VmYWxsZW46IHZlcmdpc3MgZGFzIGdlZmFzZWwKdWViZXIgZWluZW4gZ2V3aXNzZW4gJ2JlcnVjaHQnIHVuZCBmcmFnIGJyaWVzZWwgbmljaHQgbWVociBuYWNoICdiZWZvZXItCmRlcnVuZycuIGRhbmtlLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOYWNrdGUgRnJhdSAoTWVuYWNlLCAgNi4gRGV6IDE5OTksIDEzOjM2OjM0KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDQyNDQ1MDQgcmc9c2NobWFycm4KfiMhIHRpZD05NDQyNDQ1MDQKRGllIFRleHRlIHdlcmRlbiB2b24gbmVyIEZyYXUgZ2VzY2hyaWViZW4hISEKCk1lbmFjZSAqaGF0IGRhcyBpbiBuZXIgTWFnYXppbnNlbmR1bmcgYXVmIG5lbSBQcml2YXRzZW5kZXIgZ2VzZWhlbi4qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDaGFvdGVuIHNpbmQgU2NobmFyY2huYXNlbiAoQXJrLCAgNi4gRGV6IDE5OTksIDIyOjQ2OjQ4KToKRm9sZ2VuZGVzIGlzdCBhdWYgJ0NoYW9zJyBwYXNzaWVydDoKW0NoYW9zOlN0aW5nXSBuOCBDaGFvdGVuIDwyMjo0NDo0MD4KClNvbnN0IGtvbW10IGRhIGhhbHQgbml4ICplaW5kdWVzZWwqCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQkVSTElOOiBEZXIgUHLkc2lkZW50IGRlcyBEZXV0c2NoZW4gSW5kdXN0cmllLSAKICAgKEdyaW1tYm9ybiwgIDcuIERleiAxOTk5LCAxNDoxMzoxOSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTQ0NTcyMzk1IG9nPWRpc2t1c3Npb24KfiMhIHJuPUJhbWJ1bGtvIHJ0PTk0NDU3MjM0MiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTQ0MTM5Njg5CkdlbmF1LCBkYW5uIGlzdCBkaWUgQXVzd2FobCBncm9lc3Nlci4gVW5kIGVzIGdpYnQgbWVociBBcmJlaXRzcGxhZXR6ZSwgZGVubgpkYXMgaXN0IGphIGF1Y2ggZGFzIGVpZ2VudGxpY2hlIFppZWwuLi4KClVuZCBpY2ggZGVua2UsIGRhbWl0IGthbm4gZGllIERpc2t1c3Npb24gbmFjaCBzY2htYXJybiB1bXppZWhlbi4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1Y2ggbWFsIHVuYl5IZ2VzY2huaXR0ZW4gKEdyaW1tYm9ybiwgIDcuIERleiAxOTk5LCAxNDozMDowOSk6CkRlaW4gRnJldW5kIEFuYXRvbCB0ZWlsdCBEaXIgbWl0OiBTb29vb28sIGljaCBnZWggd2llZGVyLgpbRGVidWc6RWd3ZW5lXSBGZWhsZXI6ICJFcnJvciBpbiBsb2FkaW5nIG9iamVjdCIsIE9iamVrdDogaHVtYW46ZWd3ZW5lLApbRGVidWc6RWd3ZW5lXSBQcm9ncmFtbTogIjxsYW1iZGEgMHhiZmZmYzVjYT4iLCBaZWlsZSAxIChFZ3dlbmUpCltEZWJ1ZzpFZ3dlbmVdIEZlaGxlcjogIkVycm9yIGluIGxvYWRpbmcgb2JqZWN0IiwgT2JqZWt0OiBodW1hbjplZ3dlbmUsCltEZWJ1ZzpFZ3dlbmVdIFByb2dyYW1tOiAiPGxhbWJkYSAweGJmZmZjNWNhPiIsIFplaWxlIDEgKEVnd2VuZSkKW0RlYnVnOkVnd2VuZV0gRmVobGVyOiAiRXJyb3IgaW4gbG9hZGluZyBvYmplY3QiLCBPYmpla3Q6IGh1bWFuOmVnd2VuZSwKW0RlYnVnOkVnd2VuZV0gUHJvZ3JhbW06ICI8bGFtYmRhIDB4YmZmZmM1Y2E+IiwgWmVpbGUgMSAoRWd3ZW5lKQpbRGVidWc6RWd3ZW5lXSBGZWhsZXI6ICJFcnJvciBpbiBsb2FkaW5nIG9iamVjdCIsIE9iamVrdDogaHVtYW46ZWd3ZW5lLApbRGVidWc6RWd3ZW5lXSBQcm9ncmFtbTogIjxsYW1iZGEgMHhiZmZmYzVjYT4iLCBaZWlsZSAxIChFZ3dlbmUpCltEZWJ1ZzpFZ3dlbmVdIEZlaGxlcjogIkVycm9yIGluIGxvYWRpbmcgb2JqZWN0IiwgT2JqZWt0OiBodW1hbjplZ3dlbmUsCltEZWJ1ZzpFZ3dlbmVdIFByb2dyYW1tOiAiPGxhbWJkYSAweGJmZmZjNWNhPiIsIFplaWxlIDEgKEVnd2VuZSkKClNvLCB1bmQgamV0enQgdmVya25hY2t0IG1pY2ggZG9jaCwgd2VpbCBpY2ggZ2VoZWltZSBNYWdpZXJrYW5hZWxlIGluIGRlbgpvZWZmZW50bGljaGVuIFRlaWwgZGVyIG1wYSBzZXR6ZS4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXVjaCBtYWwgdW5iXkhnZXNjaG5pdHRlbiAoQW5hdG9sLCAgNy4gRGV6IDE5OTksIDE0OjMxOjEyKToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDQ1NzM0MDkgcmc9c2NobWFycm4KfiMhIHRpZD05NDQ1NzM0MDkKSWNoIG11c3MgbWljaCB2b24gRWd3ZW5lIGRpc3RhbnppZXJlbiwgd2VubiBpY2ggYnVnZ2UsIHNpZWh0IGRhcyBhbmRlcnMgYXVzLgoKQW5hdG9sIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBdWNoIG1hbCB1bmJeSGdlc2Nobml0dGVuIChHcmltbWJvcm4sICA3LiBEZXogMTk5OSwgMTQ6MzI6MDYpOgp+IyEgcm49QW5hdG9sIHJ0PTk0NDU3MzQ3MiByZz1zY2htYXJybgp+IyEgdGlkPTk0NDU3MzQwOQpUdSBkb2NoIG5pY2h0IHNvIGFscyBoYWV0dGVzdCBEdSBub2NoIGVpbmUgVWViZXJzaWNodCB1ZWJlciBEZWluZSBnYW56ZW4KWndlaXRpZXMuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQXVjaCBtYWwgdW5iXkhnZXNjaG5pdHRlbiAoQW5hdG9sLCAgNy4gRGV6IDE5OTksIDE0OjMyOjU0KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDQ1NzM1MjYgcmc9c2NobWFycm4KfiMhIHRpZD05NDQ1NzM0MDkKTmF0dWVybGljaCBoYWIgaWNoIGVpbmUgVWViZXJzaWNodC4gSWNoIGhhYiBtaXIgZGFzIGV4dHJhIGF1Zmdlc2NocmllYmVuLgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VpbCEgKFVuYXNhaSwgIDcuIERleiAxOTk5LCAxNDo0MDo0MCk6CltUb2Q6TGFyc10gRWluIFNjaGFmIGhhdCBnZXJhZGUgTnVkZWxzdXBwZSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTY2hhZl0gTWFlaD8gCgp3byBnaWJ0cyBkZW5uIHNvd2FzPyBXb2xsdGUgTnVkZWxzdXBwZSBzaWNoIHVtIGVpbmUgRmxlaXNjaGJlaWxhZ2UgYmVyZWljaGVybiwKZGllIHNpY2ggZXJmb2xncmVpY2ggd2VocnRlPz8/PwpVbmEqICpncmluc2VuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndvaGVyPyAoVW5hc2FpLCAgNy4gRGV6IDE5OTksIDE0OjQzOjQyKToKbmV1bGljaC4uLi4KRGVyIEVsZmVud2FlY2h0ZXIgc2FndDogU3RpcmIgWndlcmdlbmZyZXVuZCEKCndvIGdpYnRzIGRlbm4gc293YXM/IGhhYiBpY2ggbmUgUGxha2V0dGUgdm9uIGRlciBpY2ggbmljaHRzIHdlaXNzPyBSb2NodXM/Pz8/CgpVbmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZWN5Y2xpbmcuLi4gKEthcmFtLCAgNy4gRGV6IDE5OTksIDE1OjE1OjAxKToKW1RvZDpMYXJzXSBSaW5kZXJzdXBwZSBoYXQgZ2VyYWRlIE51ZGVsc3VwcGUgdW1nZWJyYWNodC4KWy4uLl0KRWluIE1hbm4gbWl0IGdyb3NzZW4gU3BlY2thcm1lbiB1bmQgZWluZXIgU2NodWVyemUgYXVmIGRlciAnT3R0b3MgSW1iaXNzdHViZScKc3RlaHQga29tbXQgaW4gZGllIEFyZW5hIHVuZCBzY2hsZWlmdCBkaWUgTGVpY2hlIHJhdXMuCgpLYXJhbSAoaXNzdCBoZXV0ZSBsaWViZXIga2VpbmUgTnVkZWxzdXBwZSBiZWkgT3R0bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmFja3RlIEZyYXUgKFllbmRpLCAgNy4gRGV6IDE5OTksIDE1OjUzOjU2KToKfiMhIHJuPU1lbmFjZSBydD05NDQ0ODM3OTQgcmc9c2NobWFycm4KfiMhIHRpZD05NDQyNDQ1MDQKTmVlLCBkYXMgd2FyZW4gZG9jaCBkaWUgU2NobXVkZGVsYmlsZHVudGVyc2NocmlmdGVuIGF1cyBkZXIgQklMRCwgb2Rlcj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5vcmRpc2NoZSBNeXRob2xvZ2llIChKYW1hbHNraSwgIDcuIERleiAxOTk5LCAxNjo0Mzo1MCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTQ0MjE0MjA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ0MTc5OTMxCkljaCBzY2hhbHRlIG1pY2ggbWFsIG51ciB6dSBkaWVzZW0gQXJ0aWtlbCBlaW4gdW5kIG1vZWNodGUgYW5tZXJrZW4sIGRhc3MKdmllbGUgd29lcnRlciwgemVpY2hlbiwgZ2VzY2hpY2h0ZW4gZXRjIHZvbiB2aWVsZW4gbGV1dGVuIGZ1ZXIgaWhyZSB6aWVsZQppbnRlcnByZXRpZXJ0IHd1cmRlbi4KX1VNX2ludGVycHJldGllcnQgYnJhdWNoZSBpY2ggaGllciB3b2hsIG5pY2h0IHp1IHNhZ2VuLCBkYSBpbnRlcnByZXRpZXJlbgppbW1lciBlaW5lIHJlY2h0bXN1Ympla3RpdmUgYW5nZWxlZ2VuaGVpdCBpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVubWFya2llcnRlciBad2VpdGllPyAoVW5hc2FpLCAgNy4gRGV6IDE5OTksIDE2OjQ3OjA1KToKRGVpbmUgRnJldW5kaW4gU2hhcmlhIHRlaWx0IERpciBtaXQ6IGhhbGxvIHp1c2FtbWVuLCBhYmVyIG51ciBnYW56IGt1cnoKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IHNoYXJpYT8KU2hhcmlhIHNldHp0IGF1cyBkZXIgRmVybmUgaWhyIGhlaWxpZ3N0ZXMgR3JpbnNlbiBhdWYuCkRyb2xsaSB0ZWlsdCBEaXIgbWl0OiB1bmE/IApEdSBncmluc3QgU2hhcmlhIGF1cyBkZXIgRmVybmUgYW4uCgpuYWphLi4uaXJnZW5kd2llIGhhYiBpY2ggc2Nob24gaW1tZXIgZ2VhaG50Li4uU2hhcmlhPURyb2xsaSA6KQoKClVuYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbmV4dGVyIHN0YXRpIGluIEIgKEdyaW1tYm9ybiwgIDcuIERleiAxOTk5LCAxODo1NDozMCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTQ0NTg5MjYwIG9nPXRyZWZmZW4KfiMhIHJuPU1haGF0bWEgcnQ9OTQ0NTg4NzkzIHJnPXRyZWZmZW4KfiMhIHRpZD05NDQ0OTA1NzYKSWNoIGdsYXViZSBuaWNodCwgZGFzcyBkaWUgZGVuIFdhc3NlcnphZWhsZXIgYW0gUGlzc29pciBzbyBnZW5hdQprb250cm9sbGllcmVuLiBVbmQgbmFjaCBlaW5lciBJbml0aWFsbWVuZ2UgYW4gYWxrb2hvbGlzY2hlbiBHZXRyYWVua2VuIHNvbGx0ZQpkYXMgamEgYXVzcmVpY2hlbmQgc2VpbiB1bmQgKHp1bWFsIGJlaSBkZXIgbG9rYWxlbiBCaWVycXVhbGl0YWV0KSBhdWNoIG5pY2h0CndlaXRlciBhdWZmYWxsZW4uLi4gOy0pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSG1tLCBUcnZlcz1CdW5kID8gKEJvaW5nLCAgNy4gRGV6IDE5OTksIDIwOjM1OjQ0KToKfiMhIG9uPUhlcm9tY2ZseSBvdD05NDQ1OTUyOTAgb2c9ZGlza3Vzc2lvbgp+IyEgcm49Qm9pbmcgcnQ9OTQ0NTk1MjEyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD05NDQ1OTM2MDUKCmhleSBoaWdodCBkYXMgaGFzdCBlcyBqYSBlbmRsaWNoIG1hbCBnZXNjaGFmZnQgbmVuIGFydGlrZWwgenUgc2NocmVpYmVuIGRlcgpuaWNodCBpbiBzY2htYXJybiBnZWxhbmRldCBpc3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB1bm1hcmtpZXJ0ZXIgWndlaXRpZT8gKFJhcmRpYW4sICA4LiBEZXogMTk5OSwgMDE6MTE6MjcpOgp+IyEgcm49VW5hc2FpIHJ0PTk0NDU4MTYyNSByZz1zY2htYXJybgp+IyEgdGlkPTk0NDU4MTYyNQpBbHNvIGljaCBoYWIgbWFsIHZlcnN1Y2h0LCBkaWUgU3RhbW1iYWV1bWUgdm9uIFNoYXJpYSB1bmQgRHJvbGxpCnp1cnVlY2t6dXZlcmZvbGdlbi4uLgpBbHNvIGRhIHR1biBzaWNoIGphIHVudm9yaGVyc2VoYmFyZSBadXNhbW1lbmhhZW5nZSBhdWYsIGRhcyBkYXJmIG1hbiBqYSBnYXIKa2VpbmVtIGVyemFlaGxlbi4uLiA7KQoKUmFyLCBkaWUgU2FjaGUgaW0gQXVnZSBiZWhhbHRlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYXVzZnJhdWVuIHVudGVyIHNpY2guLi4gKEx1ZywgIDguIERleiAxOTk5LCAwMTo0Njo0Nyk6CgpOZXZvayByZWljaHQgUmFzeWEgZWluZW4gTWl4ZXIgbWl0IGRlciBBdWZzY2hyaWZ0ICdCb3JuIHRvIFF1aXJsJy4KW1RlYW0gMTpdIFJhc3lhIGhhdCBkYXMgVGVhbSB2ZXJsYXNzZW4uIApOZXZvayBzYWd0OiBiZXNzZXI/IDopCgpKbwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTm9yZGlzY2hlIE15dGhvbG9naWUgKEx1ZywgIDguIERleiAxOTk5LCAwMTo0ODoyNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTQ0MjE0MjA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ0MTc5OTMxCgpXZWlsLCBkYXMgd2FzIGRhYmVpIGRhbm4gcmF1c2thbSwgS3VsdHVyIHdhci4uLgoKV2FzIGdpYnRzIGRhIHp1IGVya2xhZXJlbj8KTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmdlc2Nobml0dGVuLi4uIChBbmF0b2wsICA4LiBEZXogMTk5OSwgMTA6NTk6NDIpOgpEdSBzaWVoc3QgZWluZW4gRmVobGVyIGltIFJhdW0tWmVpdC1HZWZ1ZWdlLgpQYWRyZWljICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpKYS4KQW5hdG9sIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbiBkZXIgQ2hhb3NnaWxkZSEgKEphbWFsc2tpLCAgOC4gRGV6IDE5OTksIDE3OjIzOjE2KToKRmV1ZXJ3ZWhyICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkNoYW90IEZldWVyd2VociAoTGV2ZWwgMTEyLCBNYWdpZXIpIGJldHJhdCBnZXJhZGUgZGFzIE1vcmdlbmdyYXVlbi4KRGVpbiBGcmV1bmQgRmV1ZXJ3ZWhyIHRlaWx0IERpciBtaXQ6IEhhbGxvIGlociEgOikKRHUgZnVlaGxzdCBEaWNoIGtyYW5rLgoKCkphbWFsc2tpLCBwc3ljaG8tcGVzdC12ZXJicmVpdGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChMYW5mZWFyLCAgOC4gRGV6IDE5OTksIDIzOjU1OjU1KToKV3VsZmdhciB0ZWlsdCBEaXIgbWl0OiBmY2hlaWZmIGZwJ2FjaGZsdWNoClRvZDpMYXJzIEVpbiBrbGVpbmVyIFNjaGVtZW4gaGF0IGdlcmFkZSBXdWxmZ2FyIHVtZ2VicmFjaHQuCkJlaWxlaWQ6RGlyaW9uIEJlaWxlaWQgOi8KCkRlciBTY2hlbWVuIGhhdCBpaG4gd29obCBuaWNodCB2ZXJzdGFuZGVuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIFdhaG5zaW5uIGdlaHQgdW0uLi4gKEx1ZywgIDkuIERleiAxOTk5LCAwMDoxMTowNCk6CgpbTW9lcmRlcjpBcmF0aF0gYXJoYXJoYXJoYWhyYWhyaGFocmFocmhhcmhhaHJhaHJoYWhyaGFyYWFhYWFhYWFhYWFhYWFhYWFyCgoKQXJnbApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZCBlcyBpc3QgYW5zdGVja2VuZC4uLiAoTHVnLCAgOS4gRGV6IDE5OTksIDAwOjEzOjA4KToKCltNb2VyZGVyOkRpZWRlcl0gd3VhcmhhcmhhcmhhcmhhcmhhCgpCYXJnZWwKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJpZXIgdnMuIEZyYXVlbiA7KSAoR3JpbW1ib3JuLCAgOS4gRGV6IDE5OTksIDAwOjE0OjA1KToKfiMhIG9uPUdyaW1tYW4gb3Q9OTQ0Njk0MDE4IG9nPXdpdHplCn4jISBybj1Nb250YW51cyBydD05NDQ1OTQ5OTIgcmc9d2l0emUKfiMhIHRpZD05NDQ1OTQzODgKRGFua2UgTW9udGFudXMgCkljaCB2ZXJsZWloZSBkaXIgaGllcm1pdCBkZW4gZ29sZGVuZW4gQmllcmtydWcgYW0gQmFuZCBtaXQgSG9wZmVubGF1YiAuLi4Kb2RlciBzbyA6KQoKR3JpbU1hbgpQcyBpY2gga2VubmUgQmllciBhdWNoIHNlaHIgZ3V0IC4uLiB1bmQgS2xvcyB1bmQgdWViZXJoYXVwdCAuLi4gc2NoYWRlIGRhcyBpY2gKbmljaHQgc2VoZW4gd2VyZGUgb2IgbWVpbiBrbG8gbnUgZ2Vwb2xzdGVydCBpc3QgOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJpZXIgdnMuIEZyYXVlbiA7KSAoR3JpbW1ib3JuLCAgOS4gRGV6IDE5OTksIDAwOjE0OjExKToKfiMhIG9uPURpZWRlciBvdD05NDQ2OTQwNjQgb2c9d2l0emUKfiMhIHJuPUdyaW1tYW4gcnQ9OTQ0Njk0MDE4IHJnPXdpdHplCn4jISB0aWQ9OTQ0NTk0Mzg4CmRhcyBoYXN0IGR1IGRvY2ggbGV0enRlcyBtYWwgYXVjaCBuaWNodCBtZWhyIGdlc2Vobi4uLiBhbHNvIHdhcyBtYWNodHMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJpZXIgdnMuIEZyYXVlbiA7KSAoU3VibGltZSwgIDkuIERleiAxOTk5LCAwMDo0NzoyNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTQ0Njk0ODUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ0NTk0Mzg4CkRhbmtlIE1vbnRhbnVzIDspCgpoZWhlLCBkYXMgd2FyIG5vY2ggdW0gTGFlbmdlbiBiZXNzZXIsIDspCipncmF0dWxpZXJlKgoKbGllYmUgZ3J1ZXNlCnN1YmwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBIbW0sIFRydmVzPUJ1bmQgPyAoR3JpbW1ib3JuLCAgOS4gRGV6IDE5OTksIDAwOjU3OjE4KToKfiMhIG9uPUdyaW1tYm9ybiBvdD05NDQ2OTc0MzAgb2c9ZGlza3Vzc2lvbgp+IyEgcm49U3VibGltZSBydD05NDQ2OTczMjQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTk0NDU5MzYwNQpHcm9lbmxhbmQ/IERhcyBpc3QgVW13ZWx0dmVyc2NobXV0enVuZy4gSWNoIGhhYmUgbWljaCBqYSBlaWdlbnRsaWNoIGltbWVyCnNjaG9uIGdlZnJhZ3QsIHdvenUgZGVyIE1hcmlhbmVuZ3JhYmVuIGd1dCBzZWluIHNvbGwuIERhcyBnaWJ0IG1pciBlaW5lCklkZWUuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEhtbSwgVHJ2ZXM9QnVuZCA/IChTdWJsaW1lLCAgOS4gRGV6IDE5OTksIDAwOjU4OjM4KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDQ2OTc0Mzggcmc9c2NobWFycm4KfiMhIHRpZD05NDQ1OTM2MDUKT2RlciBhYiBkYW1pdCBhdWYgZGVuIE1hcnMsIGljaCBtZWluLCB3ZW5uIGRpZSBOYXNhIGlocmUgU29uZGVuCnNjaG9uIG5pY2h0IHVudGVyIEtvbnRyb2xsZSBoYXQsIGRhbm4ga29lbm50ZSBtYW4gZGFuIHdlbmlnc3RlbnMKbm9jaCBlaW4gd2VuaWcgU2lubiByZWluYnJpbmdlbiB1bmQgSHVuZGUgZG9ydGhpbiBzY2hpY2tlbi4uLgoKcHM6c29sYW5nZSBkaWUgZXZvbHV0aW9uIHNpZSBuaWNodCB6dSBhbGllbnMgbWFjaHQsIHdhZXJlIGFsbGVzIGluIG9yZG51bmcKc3VibAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKnNpZ2gqIDspIChTY2hva28sICA5LiBEZXogMTk5OSwgMDE6MDU6MzMpOgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gSG9vZCBpbiBSdWJyaWsgImdpbGRlbi5rYWVtcGZlciIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBMdWcgaW4gUnVicmlrICJnaWxkZW4ua2FlbXBmZXIiLgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayAiZ2lsZGVuLmthZW1wZmVyIi4KW25uXQpVZWJlcmdlaGUgQXJ0aWtlbCA0OSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0LgoKT2huZSBXb3J0ZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpzaWdoKiA7KSAoTHVnLCAgOS4gRGV6IDE5OTksIDAxOjA2OjIxKToKfiMhIHJuPVNjaG9rbyBydD05NDQ2OTc5MzMgcmc9c2NobWFycm4KfiMhIHRpZD05NDQ2OTc5MzMKIEhtLAoKb2VmdGVyIG1hbCBuZW4gbmV1ZW4gVGhyZWFkIGJlZ2lubmVuLi4uCgoKRmllc2xpbmcKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogSG1tLCBUcnZlcz1CdW5kID8gKEdyaW1tYm9ybiwgIDkuIERleiAxOTk5LCAwMTowNzoxMSk6Cn4jISBybj1TdWJsaW1lIHJ0PTk0NDY5NzUxOCByZz1zY2htYXJybgp+IyEgdGlkPTk0NDU5MzYwNQpEYXp1IG51ciBlaW5lIFVSTDoKaHR0cDovL3d3dy51c2VyZnJpZW5kbHkub3JnL2NhcnRvb25zL2FyY2hpdmVzLzk5ZGVjLzE5OTkxMjA1Lmh0bWwKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FlaCwgc2Nyb2xsISAoV2ltLCAgOS4gRGV6IDE5OTksIDA4OjQ1OjAwKToKPnVlYmVyZ2VoZSB0aHJlYWQKRGllc2VyIFRocmVhZCB3aXJkIGFiIHNvZm9ydCB1ZWJlcmdhbmdlbi4KRmFsbHMgZGFzIGVpbiBJcnJ0dW0gd2FyLCB3aWVkZXJob2xlIGRlbiBCZWZlaGwgYXVnZW5ibGlja2xpY2guCjA4OjQzCj5ubgpVZWJlcmdlaGUgQXJ0aWtlbCA3MiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgooZWluZSBCaWxkc2NoaXJtc2VpdGUgc3BhZXRlcikKVWViZXJnZWhlIEFydGlrZWwgMTA3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuCgpXZWlhLi4uIGRhcyBzY3JvbGx0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2FlaCwgc2Nyb2xsISAoQm9pbmcsICA5LiBEZXogMTk5OSwgMDg6NDk6MjApOgp+IyEgcm49V2ltIHJ0PTk0NDcyNTUwMCByZz1zY2htYXJybgp+IyEgdGlkPTk0NDcyNTUwMApVbmQgaWNoIGhhYiBtaXIgaGV1dGUgamEgc2Nob24gd2llZGVyIGVpbiAndmVybGVnZSB0aHJlYWQnIGdld3VlbnNjaHQgLi4uClRpYW1haz8gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB3YWVoLCBzY3JvbGwhIChXaW0sICA5LiBEZXogMTk5OSwgMDg6NTA6MzYpOgp+IyEgcm49Qm9pbmcgcnQ9OTQ0NzI1NzYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ0NzI1NTAwCkRhbm4gYWJlciBiaXR0ZSBuYWNoIE11ZWxsIHVuZCBuaWNodCBuYWNoIFNjaG1hcnJuLi4uIGRvcHBlbHQgd2lsbCBpY2ggZGFzCm5pY2h0IHVlYmVyZ2VoZW4gbXVlc3NlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IEhtbSwgVHJ2ZXM9QnVuZCA/IChHcmltbWJvcm4sICA5LiBEZXogMTk5OSwgMDk6NDQ6MTUpOgp+IyEgb249R3JpbW1ib3JuIG90PTk0NDcyOTA0OSBvZz1kaXNrdXNzaW9uCn4jISBybj1KaW1kaWdyaXogcnQ9OTQ0NzI4MTQ3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05NDQ1OTM2MDUKSXJpeCA1LjMKClVuZCBpY2ggYmlldGUgV2luZG93cyA5OCAxLzIgYW4sIGRhIGxlZ2UgaWNoIG5vY2ggemVobiBNYXJrIGRyYXVmLCB1bSBEaWNoCmRhbWl0IGxlaWRlbiB6dSBzZWhlbi4uLiA7LSkKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IEhtbSwgVHJ2ZXM9QnVuZCA/IChKaW1kaWdyaXosICA5LiBEZXogMTk5OSwgMDk6NDU6MjcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0NDcyOTA1NSByZz1zY2htYXJybgp+IyEgdGlkPTk0NDU5MzYwNQoKR05BREUhCgpKZEcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEhtbSwgVHJ2ZXM9QnVuZCA/IChNYWhhdG11LCAgOS4gRGV6IDE5OTksIDExOjQ2OjA0KToKfiMhIG9uPU1haGF0bXUgb3Q9OTQ0NzM2MzU2IG9nPWRpc2t1c3Npb24KfiMhIHJuPVdpZGV3aXR0IHJ0PTk0NDczNjE3NCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTQ0NTkzNjA1CkhhZXR0ZXN0IER1IG5pY2h0IHdlZ2VuIGV0aGlzY2hlciBvZGVyIHJlbGlnaW9lc2VyIEJlZGVua2VuIHZlcndlaWdlcm4Ka29lbm5lbj8gOj4+PgoKTWFoYXRtdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VubiBVaHJtZWxkdW5nIHVuZCBtaW4gdm9uIEd1YXJkIHp1c2FtbWVua29tbWVuIChNZW5hY2UsICA5LiBEZXogMTk5OSwgMTM6MDM6MTYpOgpKZXR6dCBoYXN0IER1IGJlcmVpdHMgZGVpbiAxMy4gU2NodWV0dGVsYmllciBpbnR1cyEgRHUga2lwcHN0IGdsZWljaCB1bSEhISA7KSAKR3VhcmQgZnVlbGx0IERpY2ggYWIuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkR1IGJpc3Qgc3Rlcm5oYWdlbHZvbGwuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpNZW5hY2UgKnZvbGwgYmlzIG9iZW5oaW4gdW5kIHRyb3RkZW0gaXJnZW5kd2llIG5vY2ggbnVlY2h0ZXJuKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbmUgV29jaGUgd2VnIChNYWhhdG11LCAgOS4gRGV6IDE5OTksIDE1OjE3OjA5KToKfiMhIHJuPVRzdW5hbWkgcnQ9OTQ0NzQ3MTI5IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD05NDQ3NDcxMjkKV2llPyBIYWJlbiBkaWUgZGEga2VpbmUgUmVjaG5lcj8gT2RlciBnZWhvZXJ0IHp1IGRlcmVuIEJhbm5tZWlsZSBhdWNoCmVpbiB2aXJ0dWVsbGVzIFZlcnNhbW1sdW5nc3ZlcmJvdD8KCk1haGF0bXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWluZSBXb2NoZSB3ZWcgKFRzdW5hbWksICA5LiBEZXogMTk5OSwgMTU6Mzc6MjgpOgp+IyEgcm49TWFoYXRtdSBydD05NDQ3NDkwMjkgcmc9c2NobWFycm4KfiMhIHRpZD05NDQ3NDcxMjkKTm9lLAoKSWNoIGhhYmUgZWluZmFjaCBrZWluZSBaZWl0LiBMZWlkZXIuCgpUc3VuYW1pLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IEhtbSwgVHJ2ZXM9QnVuZCA/IChNYWhhdG11LCAgOS4gRGV6IDE5OTksIDE1OjQzOjQ4KToKfiMhIHJuPU5vbm5lIHJ0PTk0NDc1MDUyNCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTQ0NTkzNjA1CkpvLCBEaWUgQ29zdGFyaWNhbmVyIGhhYmVuIGFiZXIgYXVjaCBuaWNodCBzb3ZpZWxlIFByb2JsZW1lIGRhbWl0LCB3bwpzaWUgaWhyZSBSb2hzdG9mZmUgaGVyYmVrb21tZW4gd2llIHdpci4gU2NobGllc3NsaWNoIG11ZXNzZW4gd2lyIHVuc2VyZQpRdWVsbGVuIHVuZCBBYm5laG1lciBiZWZyaWVkZW4sIGltIEtyaWVnIHZlcmthdWZ0IHNpY2hzIHNjaGxlY2h0LCBpbW1lcgplcnN0IGRhbmFjaCB3aWVkZXIuCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogSG1tLCBUcnZlcz1CdW5kID8gKEdyaW1tYm9ybiwgIDkuIERleiAxOTk5LCAxNjoxNjowOSk6Cn4jISBybj1NYWhhdG11IHJ0PTk0NDc1MDYyOCByZz1zY2htYXJybgp+IyEgdGlkPTk0NDU5MzYwNQpBZWhtLCB3YXIgZGFzIG5pY2h0IHNvIGRhc3MgS3JpZWcgZWluZSBWb2xrc3dpcnRzY2hhZnQgZXJzdG1hbCBrcmFlZnRpZwphbmt1cmJlbHQ/IEhhdHMgaGllciBuaWNodCBlaW4gcGFhciBWV0xlcj8gV2FzIHNhZ3QgZGllIFdpcnRzY2hhZnRzdGhlb3JpZQpkYXp1PwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEJhbWJ1bGtvLCAgOS4gRGV6IDE5OTksIDE3OjIzOjIxKToKRGllZGVyIGFuIGFsbGUgTWFnaWVyOiBrYW5uIG1hbCBlaW5lciBndWNrZW4gd2FzIGRhcyBmdWVybiBidWcgd2FyPyAgCltUb2Q6TGFyc10gRWluIERyYWNoZSBoYXQgZ2VyYWRlIERpZWRlciB1bWdlYnJhY2h0LgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmxlaWRlciB3YWhyLi4gKEthcmljLCAxMC4gRGV6IDE5OTksIDEzOjMyOjA4KToKTmFlY2hzdGUgV29jaGUgU2Ftc3RhZyBNaXR0YWcgKG11ZXNzdGUgZGVyIDE4IG9kZXIgc28gc2Vpbi4uLikgd2lyZCBlcyBlaW5lClJlYm9vdCBnZWJlbiBtdWVzc2VuLiBHcnVuZDogUHNzc3NzdHR0ISBHZWhlaW0hIDopCgpQYWRyZWljCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbGVpZGVyIHdhaHIuLiAoV2ltLCAxMC4gRGV6IDE5OTksIDEzOjM1OjQ4KToKfiMhIHJuPUthcmljIHJ0PTk0NDgyOTEyOCByZz1zY2htYXJybgp+IyEgdGlkPTk0NDgyOTEyOApIbW1tLi4uLiBBcnRpa2VsIHZvbiBLYXJpYyB1bnRlcnNjaHJpZWJlbiBtaXQgUGFkcmVpYy4uLgpEdSBoYXN0IGRvY2ggbmljaHRzIGRhZ2VnZW4sIHdlbm4gaWNoIERpciBncmFkIG1hbCBkYXMgWndlaXRpZWZsYWcgc2V0emU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGxlaWRlciB3YWhyLi4gKEthcmljLCAxMC4gRGV6IDE5OTksIDEzOjM2OjQ4KToKfiMhIHJuPVdpbSBydD05NDQ4MjkzNDggcmc9c2NobWFycm4KfiMhIHRpZD05NDQ4MjkxMjgKaWNoIGhhYiBnYXIgbmV0IHVudGVyc2NocmllYmVuLi4gZGFzIHdhciBudXIgbmVuIGJpc3NjaGVuIHVuZ2x1ZWNrbGljaAp6aXRpZXJ0Li4KdW5kIEpBIGljaCBoYWJlIGRhIHdhcyBnZWdlbiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGxlaWRlciB3YWhyLi4gKEdyaW1tYm9ybiwgMTAuIERleiAxOTk5LCAxNDo0MjoyNyk6Cn4jISBybj1LYXJpYyBydD05NDQ4Mjk0MDggcmc9c2NobWFycm4KfiMhIHRpZD05NDQ4MjkxMjgKVW5kIGRpZSBuYWVjaHN0ZSBTdHVmZSBpc3QgZGFubiB6dSBiZWhhdXB0ZW4sIHp1bSBBcnRpa2Vsc2NocmVpYmVuIHdhZWhyZW5kCmRlcyBpZGxlbnMgZ2V6d3VuZ2VuIHdvcmRlbiB6dSBzZWluLCBqYT8KTmVuZW5lLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QuIFVuZCBtYWNodCBHcmltbWRlYXRoIGRhcyAodW5zaWNodGJhcmUpIFp3ZWl0aWVmbGFnCndpZWRlciB3ZWcuIERlciBpc3Qga2VpbiBad2VpdGllLiBJY2ggbGVobmUgamVkZSBWZXJhbnR3b3J0dW5nIGFiLiBVbmQgYWxzIGRlcgp6dWxldHp0IGhpZXIgd2FyIGdhYnMgbm9jaCBrZWluZSB1bnNpY2h0YmFyZSBNYXJraWVydW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5kIGVzIGlzdCBkb2NoIHdhcyBkcmFuISAoSmFtYWxza2ksIDEwLiBEZXogMTk5OSwgMTU6MDU6MDEpOgpGcmVpdGFnIGZyYWd0IERpY2g6IFdhcyBnZW5hdSBpc3QgZWluICJOeWFybGF0aG90aGVwIiA/CkR1IGZyYWdzdCBGcmVpdGFnOiBuZWNyb25vbWljb24/CkZyZWl0YWcgc2FndDogbmVjcm9ub21pb24/CkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgpKYW1hbHNraSwgc2NobHVja2VuZCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmlyZ2VuZHdhcyAoV2ltLCAxMS4gRGV6IDE5OTksIDE5OjAzOjAwKToKRGFtaXQgbWFsIHdpZWRlciB3YXMgaW4gZGVyIFplaXR1bmcgc3RlaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaXJnZW5kd2FzIChHcmltbWJvcm4sIDExLiBEZXogMTk5OSwgMTk6MjE6MTYpOgp+IyEgcm49V2ltIHJ0PTk0NDkzNTM4MCByZz1zY2htYXJybgp+IyEgdGlkPTk0NDkzNTM4MAphYm9ubmllcmUgbXVlbGwsIGFib25uaWVyZSBkd25ld3MgaGlsZnQgdS5VLiBhdWNoLgpVbmQgbmF0dWVybGljaCBlaW4gImlnbm9yaWVyZSBncmltbWJvcm4ubmV3cyIgenVtIHp3ZWl0ZW4gbWFsLiBEYW5uIGthbm4gbWFuCnZpZWxlIEFydGlrZWwgc29nYXIgZG9wcGVsdCBsZXNlbi4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBpcmdlbmR3YXMgKEdyaW1tYm9ybiwgMTIuIERleiAxOTk5LCAwMDowNDozMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTQ0OTUzNDU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ0OTM1MzgwCkplcHAuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaXJnZW5kd2FzIChXaW0sIDEyLiBEZXogMTk5OSwgMDA6MDU6NDkpOgp+IyEgb249R3JpbW1ib3JuIG90PTk0NDk1MzQ1NyBvZz1zY2htYXJybgp+IyEgb249V2ltIG90PTk0NDkzNjc1NCBvZz1zY2htYXJybgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0NDkzNjQ3NiByZz1zY2htYXJybgp+IyEgdGlkPTk0NDkzNTM4MApNaXN0LCBpY2ggd3Vzc3RlLCBpY2ggbXVzcyBub2NoIHdhcyBpZ25vcmllcmVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBpcmdlbmR3YXMgKFdpbSwgMTIuIERleiAxOTk5LCAwMDowNjoxMyk6Cn4jISBybj1XaW0gcnQ9OTQ0OTUzNTQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ0OTM1MzgwCkVpZ2VudGxpY2ggZWluZSBuZXR0ZSBJZGVlIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBpcmdlbmR3YXMgKEdyaW1tYm9ybiwgMTIuIERleiAxOTk5LCAwMDowODozMyk6Cn4jISBybj1XaW0gcnQ9OTQ0OTUzNTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ0OTM1MzgwCkphamEsIExldXRlLCBkaWUgYXVmIGRpZSBzZWxic3QgQXJ0aWtlbCByZXBsaWVuLgpUcmF1cmlnLCB0cmF1cmlnLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmp1bmdzLCBnZWh0IGluIGRlY2t1bmcgLi4uIChKZW5hbmRyYSwgMTIuIERleiAxOTk5LCAwNDo1MTo1MCk6ClB5bGwgbmltbXQgZGFzIEthc3RyaWVybWVzc2VyLgpQeWxsIGxhZWNoZWx0LgoKSmVuKiwgZnJvaCBkYXNzIHNpZSBuaXggenUgdmVybGllcmVuIGhhdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkludmVyc2UgTG9naWsgaW0gTW9yZ2VuZ3JhdWVuIChHYXN0MywgMTIuIERleiAxOTk5LCAxNjozMTo0Myk6Ckdhc3QyIGdlaHQgbmFjaCBOb3JkZW4uCkdhc3QyIGtvbW10IGFuLgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgR2FzdDIuCkdhc3QyIGJldHJpdHQgZGllc2UgV2VsdC4KR2FzdDIgdmVybGFlc3N0IGRpZXNlIFdlbHQuCkdhc3QyIGdlaHQgbmFjaCBOb3JkZW4uCkdhc3QyIGtvbW10IGFuLgoKR2FzdDMgZ3JpbnN0IHdpZSBKb2YsIHdlbm4gZXIgbmljaHQgaWRlbHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogcHJlbWllcmUuLi4gKEdyaW1tYm9ybiwgMTIuIERleiAxOTk5LCAyMDozMToyOSk6Cn4jISBybj1QYWRyZWljIHJ0PTk0NTAyNjk5NyByZz1zY2htYXJybgp+IyEgdGlkPTk0NTAyNjk5NwpUcm9lc3RlIERpY2gsIGVzIGhhdCBiZWkgdmllbGVuIGxhbmdlIGdlZGF1ZXJ0LCBiaXMgc2llIGVzIGdlc2NoYWZmdCBoYWJlbiwKZGllIHJpY2h0aWdlIFJ1YnJpayB6dSBmaW5kZW4uIEljaCBmcmV1ZSBtaWNoIGRhbm4gZHJhdWYsIGRhc3MgRHUgaGllciBlaW4KcmVnZWxtYWVzc2lnZXIgQmVpdHJhZWdlciBzZWluIHdpcnN0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5pY2ggc2NobGVjaHQgOikgKEJlbGdhcmlhZCwgMTMuIERleiAxOTk5LCAxMzozNjo1NSk6CltBYmVudGV1ZXI6Rm9vYmFyXSBIbS4gRWluIEhvYmJpdHdhZWNodGVyIG1pdCAyMGsgTXVlbnplbj8KW1RvZDpMYXJzXSBFaW5lIEhvYmJpdGVsaXRld2FjaGUgaGF0IGdlcmFkZSBGb29iYXIgdW1nZWJyYWNodC4KW1RvZDpFaW5lIEhvYmJpdGVsaXRld2FjaGVdIEphLCBqYSB3aXIgSG9iYml0cyBzaW5kIGRpZSBiZXN0ZW4gS2FlbXBmZXIgZGVyCltUb2Q6RWluZSBIb2JiaXRlbGl0ZXdhY2hlXSBXZWx0ISA6LSkKClVuZ2VzY2huaXR0ZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyYXVlbiBicmVjaGVuIGRvY2ggZGVuIFdpbGxlbi4uLiAoTWFraXNoLCAxMy4gRGV6IDE5OTksIDIxOjU5OjAyKToKQXN1a2EgYmlldGV0IERpciBpaHJlIEZyZXVuZHNjaGFmdCBhbi4KRGVpbiBXaWxsZSBsYWVzc3QgbmFjaC4KClNpZSB0cnVtcGZlbiBkb2NoIGltbWVyIHdpZWRlciBhdWYuLgpUc3RzdHMuLi4KTWFraXNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFpvb2ssIDEzLiBEZXogMTk5OSwgMjM6MjA6MTQpOgpbVHJ2ZXM6Rm9vYmFyIGdpYnQgTGFyaW5hIGVpbmVuIGNoYXJtYW50ZW4gSGFuZGt1c3MuXQpbVG9kOkxhcnNdIEVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsIGhhdCBnZXJhZGUgTGFyaW5hIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWxdIFBmZmZmZmZmZmZmZnQuLi4uLi4uUExVTVBTIQoKClNvc28uLi4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcnppZXMuLi4gKEx1ZywgMTQuIERleiAxOTk5LCAwMDoxMzowNik6CgpEZWluIEZyZXVuZCBNdXBmZWwgdGVpbHQgRGlyIG1pdDogd2llc28gaGFja2VuIGFsbGUgYXVmIHBhZHJlaWMgcnVtLi4uIGVzIGdpYnQKRGVpbiBGcmV1bmQgTXVwZmVsIHRlaWx0IERpciBtaXQ6IGRvY2ggamV0enQgdGlhbWFrIDspCgpLLksuCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVyemllcy4uLiAoVGlhbWFrLCAxNC4gRGV6IDE5OTksIDAwOjE1OjI0KToKfiMhIHJuPUx1ZyBydD05NDUxMjY3ODYgcmc9c2NobWFycm4KfiMhIHRpZD05NDUxMjY3ODYKV2lyIGhhYmVuIGRhIGVpbmUgZ2FueiBlaW5mYWNoZSBBdWZ0ZWlsdW5nOgoKSWNoIG1hY2ggZGllIEFyYmVpdCB1bmQgUGFkcmVpYyBpc3Qgc2NodWxkLgoKQWxzbyBoYWNrdCBudXIgd2VpdGVyIDstKQoKVGlhbWFrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVyemllcy4uLiAoQW5hdG9sLCAxNC4gRGV6IDE5OTksIDAwOjE2OjI2KToKfiMhIHJuPVRpYW1hayBydD05NDUxMjY5MjQgcmc9c2NobWFycm4KfiMhIHRpZD05NDUxMjY3ODYKUGFkcmVpYyBnaWJ0IHNpY2ggcmVkbGljaGUgTXVlaGUsIGFuIGFsbGVtIHNjaHVsZCB6dSBzZWluLiBFcwp3YWVyZSBuaWNodCBuZXR0LCB3dWVyZGVuIHdpciBpaG0gZGllc2VuIFZlcmRpZW5zdCBhYnN0cmVpdGVuLgoKQW5hdG9sIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFcnppZXMuLi4gKE11cGZlbCwgMTQuIERleiAxOTk5LCAwMDoxNjozOCk6Cn4jISBybj1UaWFtYWsgcnQ9OTQ1MTI2OTI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ1MTI2Nzg2CkljaCBkYWNodGUsIGlociB0ZWlsdCBldWNoIGRhcyBqZXR6dC4uLi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTS0FOREFMISAoTHVnLCAxNC4gRGV6IDE5OTksIDAwOjE5OjU2KToKCk5hY2ggS29obCBudW4gTXVwZi4uLgoKRGVpbiBGcmV1bmQgTXVwZmVsIHRlaWx0IERpciBtaXQ6IG5laW4gaWNoIHdlcmQgbmljaHQgdm9uIHBhZHJlaWMgYmV6YWhsdCA7KQoKClBsYXR0ZXMgRGVtZW50aS4uLgpXbyBibGVpYnQgZGVyIFVOdGVyc3VjaHVuZ3NhdXNzY2h1c3M/Ckx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQnVncmVpY2ggbGl2ZS4uLiAoRGllZGVyLCAxNC4gRGV6IDE5OTksIDEyOjAyOjM5KToKU3plbmUgU2Ftc3RhZyBiZWltIEFiZW5kZXNzZW4uCgpUaXNjaCBtaXQgQXJrLCBDaXNvdSwgRGVsLCBtZWluZXIgV2VuaWdrZWl0IHVuZCBub2NoIGVpbiBwYWFyIGFuZGVyZW4sIGRpZSB1bXMKRWNrIHJ1bSBzaXR6ZW4uCkFyayBlcnphZWhsdCB2b24gU2NobWFycm4gTnIuIDEgYW0gTW9yZ2VuOgpBcms6ICJEdXNjaGUgbGFldWZ0IGFsbGVpbmUgdm9yIHNpY2ggaGluLCBpY2ggc2FjaCBub2NoLCBkaWUgYnVnZ3QsIFRyeWZhbgptZWluLCBkaWUgaXN0IGphIGF1Y2ggdm9uIFBhZHJlaWMhIFNvZm9ydCBnZWh0IGRpZSBUdWVyIGF1ZiwgdW5kIGRyZWltYWwKZHVlcmZ0IGlociByYXRlbiwgd2VyIG1pdCBlaW5lbSBncmluc2VuZGVuICJHdXRlbiBNb3JnZW4iIGhlcmVpbnNwYXppZXJ0Li4uIgoKKmFsbGdlbWVpbmVzIEdlbGFlY2h0ZXIqCgpBcms6ICJJbiBkaWVzZW0gRmFsbCB3YXIgZWluICJlcndhcnRlIiB2b2VsbGlnIHVlYmVyZmx1ZXNzaWcsIGRhcyB3YXIgYmVzc2VyCmFscyBqZWRlcyAnUGFkcmVpYyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICAgISAhICEnLi4uIgoKd29yYXVmaGluIGljaCBpaG4gc2FuZnQgc3R1cHN0ZSB1bmQgbWVpbnRlICJzY2hhdSBtYWwgaGludGVyIERpY2giIC0gZGEgc3RhbmQKbmFlbWxpY2ggdXJwbG9ldHpsaWNoIFBhZHJlaWMgaGludGVyIGlobSwgZGVyIGRhbm4gdm9lbGxpZyB2ZXJzdGFlbmRuaXNsb3MKZ3VnZ3RlLCBhbHMgZGVyIGdhbnplIFRpc2NoIFRyYWVuZW4gbGFjaHRlLi4uIDotKQoKRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBWb3J0cmFncmF1bSAoR3JpbW1ib3JuLCAxNC4gRGV6IDE5OTksIDEzOjA0OjEyKToKfiMhIG9uPUdyaW1tYm9ybiBvdD05NDUxNzMwNDYgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUFjcmltb24gcnQ9OTQ1MTcyMDI4IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTQ0Njk3NDE2CkF1c3NlcmRlbSBrb2VubnRlIG1hbiBlaW5lbiB0eXBvLUZpbHRlciBlaW5iYXVlbiwgZGFzcyBGcmFnZW4gbnVyIG1pdCBrb3JyZWt0CnRyYW5za3JpYmllcnRlbiBVbWxhdXRlbiBtb2VnbGljaCBzaW5kLiA7LSkKCkdkQSAodW5kIHNjaG9uIHdpZWRlciBuYWNoIHNjaG1hcnJuLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVm9ydHJhZ3JhdW0gKFllbmRpLCAxNC4gRGV6IDE5OTksIDEzOjA2OjUwKToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDUxNzMwNTIgcmc9c2NobWFycm4KfiMhIHRpZD05NDQ2OTc0MTYKCkljaCBkYWNodGUsIGRpZSBVbWxhdXRlIHdyZGVuIGF1dG9tYXRpc2NoIGluICJ1ZSIsICJvZSIsICJhZSIgdW5kICJzcyIKdW1nZXdhbmRlbHQgLS0gb2Rlcj8KWnVtaW5kZXN0IGZ1bnp0IGVzIGluIGRpZXNlbSBBcnRpa2VsLgoKWVRZCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVm9ydHJhZ3JhdW0gKEdyaW1tYm9ybiwgMTQuIERleiAxOTk5LCAxMzoxNjowMyk6Cn4jISBybj1ZZW5kaSBydD05NDUxNzMyMTAgcmc9c2NobWFycm4KfiMhIHRpZD05NDQ2OTc0MTYKRGEgZmVobHQgZWluICdlJyB6d2lzY2hlbiBkZW0gJ3cnIHVuZCBkZW0gJ3InIGluIGRlbSBXb3J0ICd3cmRlbicuIFVuZCBzb2xjaGUKdHlwb3Mgd2VyZGVuIG5pY2h0IGtvcnJpZ2llcnQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJldGVuIGhpbGZ0IChaaW5vLCAxNC4gRGV6IDE5OTksIDE0OjA2OjU3KToKTFAgNDEgICBNUCAxMwo+IGJldGUKRHUgYmV0ZXN0OiAnVmVuaSBTYXRhbmFzJy4KTmljaHRzIGdlc2NoaWVodC4KUGxvZXR6bGljaCBsZXVjaHRldCBkYXMgRmV1ZXJhbXVsZXR0IGdyZWxsIGF1Zi4gRHUgd2lyc3Qgdm9uIGVpbmVyIGxldWNodGVuZGVuCkF1cmEgZWluZ2VodWVsbHQuIEFscyBkaWUgQXVyYSBlcmxpc2NodCwgZnVlaGxzdCBkdSBkaWNoIHNlaHIgdmllbCBiZXNzZXIuCkxQIDE1NSAoKzExNCkgIE1QIDEyNiAoKzExMykKCk1haGF0bWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTG9nIChNYWhhdG11LCAxNC4gRGV6IDE5OTksIDE0OjU4OjA1KToKfiMhIHJuPUFscGhhIHJ0PTk0NTE3Mjk3OCByZz10cmVmZmVuCn4jISB0aWQ9OTQ1MTA3NTU3CkRhcyBnZWh0IHByaW1hLCB3ZW5uIGRlciBXYWdlbiBibGl0em5ldSB1bmQgZWluIERpZXNlbCBpc3QgX3VuZF8gZWluCkthZW1wZmVyIG1pdCAncmFzZXJlaScgaGludGVyIGRlbSBTdGV1ZXIgc2l0enQuCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWhlciBvZGVyIGJsaW5kc2NobGVpY2hlPyAoQmFib29uLCAxNC4gRGV6IDE5OTksIDE1OjA0OjE3KToKW0FiZW50ZXVlcjpTa2l0dGxlXSB3aWNodGlnISEga2FubiBtYW4gdm9uIGRlciBzYW5kYmFuayBydW50ZXJ3YXJ0ZW4gb2RlcgpbQWJlbnRldWVyOlNraXR0bGVdIGtyZXBpZXJ0IG1hPwpbQWJlbnRldWVyOkltZGFdIHByb2JpZXJzIGRvY2gsIGRhbm4gd2Vpc3QgZHVzLi4uCltBYmVudGV1ZXI6eHh4eF0gYmlzIGxldmVsIDUga2FubiBtYW4gZ2FyIG5ldCBzdGVyYmVuCltBYmVudGV1ZXI6QmVyZ3N0ZW5dIHdhcz8/CltBYmVudGV1ZXI6U2tpdHRsZV0gdmVyYXJzY2ggbWljaCBuaWNodCBpY2ggYmluIHNjaG9uIGdlc3RvcmJlbgpbQWJlbnRldWVyOnh4eHhdIGpldHp0IHZlcmFyc2Noc3QgZHUgbWljaCwgb2Rlcj8/CgoKVW5kIGRhcyB2b24gZWluZW0gTGV2ZWwgNDcgU2VoZXIuLi4KSWNoIGxvZ2cgbWlyIGdsZWljaCBtYWwgZWluZW4gTGV2ZWwgMSBUZXN0aSBlaW4gdW5kIGd1Y2sgbWFsIHdpZSBsYW5nCmljaCBicmF1Y2hlIHVtIFRhbnRlIEh5ZHJhIG9kZXIgZGVuIFdlZ2hpZXIgenUgcGxhZXR0ZW4uIDotKQoKQmFib29uKCkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBMb2cgKEJpZWxlZmVsZCwgMTQuIERleiAxOTk5LCAxNjozNzo0Myk6Cn4jISBybj1NYWhhdG11IHJ0PTk0NTE3OTg4NSByZz1zY2htYXJybgp+IyEgdGlkPTk0NTEwNzU1NwpIZWhlLCBlcyBnaWJ0IGluIGRlciBUYXQga2VpbmVuIGJlc3NlcmVuIFRydmVzLUF1dG9mYWhyZXIKYWxzIEZyb2dodW50ZXI6IHJhc2VyZWksIHVudGVybGF1ZmVuLC4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaXJnZW5kd2llIGtsYXBwdCBkYXMgaW1tZXIgd2llZGVyLi4uIChKYW1hbHNraSwgMTQuIERleiAxOTk5LCAxNjo1OTowMCk6CltBbGxnZW1laW46UGFtcGVycyBnZWh0IHdpZGEuXQpEdSBmdWVobHN0IERpY2gga3JhbmsuCgpqYW1hbHNraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTG9nIChQYW5pYywgMTQuIERleiAxOTk5LCAxODoyNDozMik6Cn4jISBybj1CaWVsZWZlbGQgcnQ9OTQ1MTg1ODYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ1MTA3NTU3CmVyaW5uZXIgbWljaCBuaWNodCBkYXJhbi4uLiAqc2NoYXVkZXIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgc2NocmVja2hhZnQuLi4gKFdpbSwgMTQuIERleiAxOTk5LCAyMToxODo1MSk6CkR1IHRlaWxzdCBIb29kIG1pdDogYnVoCkhvb2QgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXaWUgc2NocmVja2hhZnQuLi4gKFBhZHJlaWMsIDE0LiBEZXogMTk5OSwgMjE6MTk6NDUpOgp+IyEgcm49V2ltIHJ0PTk0NTIwMjczMSByZz1zY2htYXJybgp+IyEgdGlkPTk0NTIwMjczMQpTZWl0IHdhbm4gYmlzdCBEdSBDaGFvdCBXaW0gOik/CgpQYWRyZWljCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdpZSBzY2hyZWNraGFmdC4uLiAoQW5hdG9sLCAxNC4gRGV6IDE5OTksIDIxOjIwOjI5KToKfiMhIHJuPVBhZHJlaWMgcnQ9OTQ1MjAyNzg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ1MjAyNzMxClN0ZWxsJyBpaG0gbWFsIERlaW5lbiBGcmV1bmQgdm9yLCBQYWRyZWljLgoKQW5hdG9sIC0gaW4gRGVja3VuZyBzcHJpbmdlbmQgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmdzdD8gKFdpbSwgMTQuIERleiAxOTk5LCAyMToyMTowMSk6ClBhZHJlaWMgaGF0IGVpbmVuIEFydGlrZWwgaW4gZGVyIFplaXR1bmcgdmVyb2VmZmVudGxpY2h0LgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gUGFkcmVpYyBpbiBSdWJyaWsgInNjaG1hcnJuIi4KUGFkcmVpYyB2ZXJzY2h3aW5kZXQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IEhtbSwgVHJ2ZXM9QnVuZCA/IChHcmltbWJvcm4sIDE0LiBEZXogMTk5OSwgMjI6NTU6MzApOgp+IyEgcm49SGlnaGxhbmRlciBydD05NDUyMDg0NjQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTk0NDU5MzYwNQpKYWphLCB3ZW5uIG1hbiBhdWNoIHNvbnN0IHNjaG9uIG5peCBWZXJudWVuZnRpZ2VzIHp1IHNhZ2VuIGhhdC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2lzc2Vud2VydGVzIHZvbiBkZW4gSGF1c3RpZXJlbiBpbSBNRyAoQW5hdG9sLCAxNS4gRGV6IDE5OTksIDAwOjE3OjE1KToKfiMhIHJuPUthcmljIHJ0PTk0NTIxMzMwMyByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05NDUyMTMzMDMKLS1tZWhyLS0oNiUpICAqKQoKR25hLApBbmF0b2wgOykKCiopID09IGZ1ZWhydCB6dXIgQWJ3ZXJ0dW5nIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUlVGIFRJTExZIEFOISAoTHVnLCAxNS4gRGV6IDE5OTksIDAwOjI5OjAyKToKClRpbGx5IHNhZ3Q6IFNvIGVpbmU/ClRpbGx5IHBlaXRzY2h0IERpY2ggbmFjaCBhbGxlbiBSZWdlbG4gZGVyIEt1bnN0IG1pdCBkZXIgZ2VmbG9jaHRlbmVuCkxlZGVycGVpdHNjaGUgYXVzLiBEdSB3aW5kZXN0IERpY2ggdm9yIFNjaG1lcnplbi4KCksuSy4KTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWdpZXIuLi4gKEx1ZywgMTUuIERleiAxOTk5LCAwMDo0NDo1MSk6CgpNdXBmZWwgYmVzY2h3b2VydCBlaW5lbiBCbGl0eiB2b20gSGltbWVsLgpEYXMgUmVoIGZhZWxsdCB0b3QgenUgQm9kZW4uCkVpbiBSZWggaHVlcGZ0IGhlcmVpbi4KTXVwZmVsIGJlc2Nod29lcnQgZWluZW4gQmxpdHogdm9tIEhpbW1lbC4KRGFzIFJlaCBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW4gUmVoIGh1ZXBmdCBoZXJlaW4uCk11cGZlbCBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuCkRhcyBSZWggZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRWluIFJlaCBodWVwZnQgaGVyZWluLgpNdXBmZWwgYmVzY2h3b2VydCBlaW5lbiBCbGl0eiB2b20gSGltbWVsLgpEYXMgUmVoIGZhZWxsdCB0b3QgenUgQm9kZW4uCkVpbiBSZWggaHVlcGZ0IGhlcmVpbi4KTXVwZmVsIGJlc2Nod29lcnQgZWluZW4gQmxpdHogdm9tIEhpbW1lbC4KRGFzIFJlaCBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW4gUmVoIGh1ZXBmdCBoZXJlaW4uCk11cGZlbCBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuCkRhcyBSZWggZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRWluIFJlaCBodWVwZnQgaGVyZWluLgpNdXBmZWwgYmVzY2h3b2VydCBlaW5lbiBCbGl0eiB2b20gSGltbWVsLgpEYXMgUmVoIGZhZWxsdCB0b3QgenUgQm9kZW4uCkVpbiBSZWggaHVlcGZ0IGhlcmVpbi4KTXVwZmVsIGJlc2Nod29lcnQgZWluZW4gQmxpdHogdm9tIEhpbW1lbC4KRGFzIFJlaCBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW4gUmVoIGh1ZXBmdCBoZXJlaW4uCk11cGZlbCBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuCkRhcyBSZWggZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRWluIFJlaCBodWVwZnQgaGVyZWluLgpNdXBmZWwgYmVzY2h3b2VydCBlaW5lbiBCbGl0eiB2b20gSGltbWVsLgpEYXMgUmVoIGZhZWxsdCB0b3QgenUgQm9kZW4uCltBYmVudGV1ZXI6PFF1ZXN0Pl0gVHJ1Y2tlciBoYXQgZ2VyYWRlIGVpbiBBYmVudGV1ZXIgYmVzdGFuZGVuOiBSYXNzZWxrZXR0ZSAKTXVwZmVsIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCltLbGVydXM6THVnXSBPZWg/CkR1IGRlbmtzdCAgIC4gbyBPIChNYWdzKQpNdXBmZWwgc2FndDogZGFzIGlzdCBkaWUgaW5kdXN0cmllbGxlIHJldm9sdXRpb24gaW0gbXVkCgpBZWg/Ckx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIHNwaW5uZW4sIGRpZSBOUENzIC4uLiAoU2F0b3IsIDE1LiBEZXogMTk5OSwgMTQ6NDY6MTUpOgpbLi4uXQoKQXVmIGVpbmVyIFN0cmFzc2UgaW0gRWxmZW5kb3JmLgpFcyBnaWJ0IGZ1ZW5mIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9iZW4sIG9zdGVuLCBzdWVkZW4sIHN1ZWR3ZXN0ZW4gdW5kIG5vcmRlbi4KRWluIEVsZmVud2FlY2h0ZXIuCkVpbmUgR2FlcnRuZXJpbiBrb21tdCBhbi4KQW5keSBrb21tdCBhbi4KRGVyIEVsZmVud2FlY2h0ZXIgZ3JlaWZ0IEFuZHkgbWl0IGVpbmVtIExhbmdzY2h3ZXJ0IGFuLgpEZXIgRWxmZW53YWVjaHRlciBraXR6ZWx0IEFuZHkgYW0gQmF1Y2guCkFuZHkgZ3JlaWZ0IGRlbiBFbGZlbndhZWNodGVyIG1pdCBzZWluZW4gYmxvc3NlbiBIYWVuZGVuIGFuLgpBbmR5IHZlcmZlaGx0IGRlbiBFbGZlbndhZWNodGVyLgo+IHVudCBhbmR5CkRpZXMgaXN0IEFuZHksIGVyIHdpcmQgdm9uIHZpZWxlbiBhdWNoIGRpZSBncm9lc3N0ZSBOZXJ2ZW5zYWVnZSBhbGxlcgpaZWl0ZW4gZ2VuYW5udC4gTWl0dGxlcndlaWxlIGR1ZXJmdGVzdCBEdSBkZW4gR3J1bmQgaGllcmZ1ZXIgc2Nob24gc2VsYmVyCmZlc3RnZXN0ZWxsdCBoYWJlbi4KRXIgZnVlaGx0ZSBzaWNoIGhldXRlIHNjaG9uIGJlc3Nlci4KClsuLi5dCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYWphIC4uLi4gKEFscGhhLCAxNS4gRGV6IDE5OTksIDE1OjA5OjE4KToKW3VudCBkZWNrZV0KRXMgaGFuZGVsdCBzaWNoIHVtIGVpbmUgYWV1c3NlcnN0IGtvc3RiYXJlIERlY2tlLCBkaWUgbWl0IEdvbGRmYWVkZW4gZHVyY2gtCndpcmt0IGlzdC4gU2llIGhhdCBlaW4gd3VuZGVyc2Nob2VuZXMgTXVzdGVyLCBhdXMgS3JlaXNlbiwgUmF1dGVuIHVuZCBCbHVtZW4tCm9ybmFtZW50ZW4uIAoKW3VudCBtdXN0ZXJdCkR1IGZpbmRlc3QgYW4gZWluZXIgRGVja2Uga2VpbiAiTXVzdGVyIi4KRGVpbiBCbGljayB3ZW5kZXQgc2ljaCBkZXIgVW1nZWJ1bmcgenUuClNvd2FzIHNpZWhzdCBEdSBhdWNoIGRhIG5pY2h0IQoKQWxwaGEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2hvbiBnZXd1c3N0ID8gKENhbGltZXJhLCAxNS4gRGV6IDE5OTksIDE2OjI3OjEzKToKCiJNb3JnZW4gR3JhdWVuIiBiYXNpZXJ0IGF1ZiBKYXZhLCB1bmQgd2VyIGVzIGdlc2NoYWZmdCBoYXQsIHNlaW5lbiBCcm93c2VyIHp1bQpBa3plcHRpZXJlbiBkZXMgSmF2YXByb2dyYW1tZXMgKEFwcGxldCkgenUgYmV3ZWdlbiwga2FubiBzaWNoIGF1ZiBlaW5lIE1lbmdlClNwYXNzIGZyZXVlbi4KCgpnZWZ1bmRlbiBpbiA6Cmh0dHA6Ly93d3cuc3R1dHRnYXJ0ZXItemVpdHVuZy5kZS9kYy9odG1sL21hZ2F6aW5lL3N0cmlwL25ldC10cmlwL3NwaWVsZWxpbmtzLwpzcGllbGVsaW5rcy5odG0KCkRpZSBoYWJlbiBlY2h0IEFobnVuZyEgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2Nob24gZ2V3dXNzdCA/IChCYW1idWxrbywgMTUuIERleiAxOTk5LCAxNjoyODo0OCk6Cn4jISBybj1DYWxpbWVyYSBydD05NDUyNzE2MzMgcmc9c2NobWFycm4KfiMhIHRpZD05NDUyNzE2MzMKSG1tbSBsZWlkZXIgZ2lidCdzIGJlaSBtaXIga2VpbiB3d3cuc3R1dHRnYXJ0ZXItemVpdHVuZy5kZQoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc2Nob24gZ2V3dXNzdCA/IChEYXJrbWFnZSwgMTUuIERleiAxOTk5LCAxNjozMToyNik6Cn4jISBybj1CYW1idWxrbyBydD05NDUyNzE3Mjggcmc9c2NobWFycm4KfiMhIHRpZD05NDUyNzE2MzMKS29tbXQgZG9jaCBkYWhlciwgZGFzcyBEdSBpbSBLb2VsbmVyICJXb3JsZCBXaWRlIFdlYiIgYmlzdCwKbWVuc2NobWVuc2NobWVuc2NoLgoKT2RlciBrbGFwcHRzIG1pdCBkZW0gY3V0JnBhc3RlIG5vY2ggbmljaHQgc28gPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCBqYWhhYWFhYWEgKEFsYm9pbiwgMTUuIERleiAxOTk5LCAxNzowNjo0NSk6CkVuZGxpY2ggbWFsIExldXRlIGRpZSBnZWdlbiBkaWUgKGZhbHNjaGVuKSBNaWxsZW5pdW1zZmVpZXJsaWNoa2VpdGVuIGlocmUKU3Rpcm4gYmlldGVuOgpodHRwOi8vcmhlaW4temVpdHVuZy5kZS9vbi85OS8xMi8xNS90b3BuZXdzL21pbGxlaXJyLmh0bWwKCkdydWVzc2UKQWxib2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmbHcuLi4gOikgKEFuYXRvbCwgMTUuIERleiAxOTk5LCAxODoxMDoxMik6ClRlZGR5ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRlaW4gRnJldW5kIFRlZGR5IGtudWRkZWx0IERpY2ggenVyIEJlZ3J1ZXNzdW5nIGF1cyBkZXIgRmVybmUuCkRlaW4gRnJldW5kIFRlZGR5IHRlaWx0IERpciBtaXQ6IE5pY2h0IGxhbmdlCltUb2Q6TGFyc10gV3Vxb3VyIGhhdCBnZXJhZGUgVGVkZHkgdW1nZWJyYWNodC4KCkluIGRlciBUYXQuLi4KQW5hdG9sIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChEaWVkZXIsIDE1LiBEZXogMTk5OSwgMTg6MTA6MTcpOgpDaGFvdCBUZWRkeSAoTGV2ZWwgMTEsIFNlaGVyKSBiZXRyYXQgZ2VyYWRlIGRhcyBNb3JnZW5ncmF1ZW4uCkRlaW4gRnJldW5kIFRlZGR5IGtudWRkZWx0IERpY2ggenVyIEJlZ3J1ZXNzdW5nIGF1cyBkZXIgRmVybmUuCkRlaW4gRnJldW5kIFRlZGR5IHRlaWx0IERpciBtaXQ6IE5pY2h0IGxhbmdlCi4uLgpbVG9kOkxhcnNdIFd1cW91ciBoYXQgZ2VyYWRlIFRlZGR5IHVtZ2VicmFjaHQuCgoKRXIgYWhudGUgZXMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzY2hvbiBnZXd1c3N0ID8gKEl2bywgMTUuIERleiAxOTk5LCAyMTo1Nzo0MCk6Cn4jISBybj1DYWxpbWVyYSBydD05NDUyNzE2MzMgcmc9c2NobWFycm4KfiMhIHRpZD05NDUyNzE2MzMKU2NoZWluYmFyIGhhYmVuIGRpZSBMZXV0ZSBkYSBkZWluZW4gQXJ0aWtlbCBnZWxlc2VuIHVuZCBkZW4gVGV4dCBnbGVpY2gKZ2VhZW5kZXJ0IAoKR3J1ZXNzZSwgSXZvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoydGllcz8gKE1vcmdvdGgsIDE1LiBEZXogMTk5OSwgMjI6MTM6MzQpOgpEZWluIEZyZXVuZCBBbmF0b2wgdGVpbHQgRGlyIG1pdDogQlMtd2VjaHNlbCEKQW5hdG9sICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpBZW5lYXMgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpNKiwgc3RhdW5lbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZW5uZXIgaGFiZW4ncyBzY2h3ZXIgLSBuaW1tJ3MgbGVpY2h0Li4uIChBbmF0b2wsIDE1LiBEZXogMTk5OSwgMjI6MzM6MjcpOgpGb2xnZW5kZXMgaXN0IGF1ZiAnTWFlbm5lcicgcGFzc2llcnQ6CltNYWVubmVyOlBhZHJlaWMgdWViZXJnaWJ0IGRpZSBFYmVuZSBhbiBIYXRlLiA8MTM6NTM6MDE+XQoKS2xhciwgc2NobGllc3NsaWNoIGhlaXNzdCBkaWUgRWJlbmUgamEgYXVjaCAiTWFlbm5lciIuLi4gOikKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzY2hvbiBnZXd1c3N0ID8gKEJvaW5nLCAxNi4gRGV6IDE5OTksIDA5OjQxOjU2KToKfiMhIHJuPUl2byBydD05NDUyOTE0NjAgcmc9c2NobWFycm4KfiMhIHRpZD05NDUyNzE2MzMKTmVpbiwgaWNoIGhhYiBkZW4gVGV4dCBnZWxlc2VuIHVuZCBlaW5lbiBBZW5kZXJ1bmdzdm9yc2NobGFnIGFuIGRpZQpWZXJhbnR3b3J0bGljaGVuIGdlc2NoaWNrdC4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWxpcyAoVmVjdG9yLCAxNi4gRGV6IDE5OTksIDEyOjU2OjI5KToKSGlvLAoKTWljaCB3dWVyZGUgbWFsIGludGVyZXNzaWVyZW4sIHdpZSB2aWVsZSBhbGlzIGRlciAiRHVyY2hzY2huaXR0bXVkZGVyIiBoYXQuCkljaCBzZWxic3QgYmluIHp1ciBaZWl0IGJlaSAyODMuLi4uLgoKLS1WZWN0b3ItLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWxpcyAoVmVjdG9yLCAxNi4gRGV6IDE5OTksIDEyOjU5OjE1KToKCi4uLi4ga2V5YmluZGluZ3MgdW5kIHdlZ2VzY3JpcHRlIG5hdHVlcmxpY2ggbmljaHQgbWl0Z2VyZWNobmV0OikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbGlzIChDYXR3ZWF6bGUsIDE2LiBEZXogMTk5OSwgMTI6NTk6NDkpOgp+IyEgcm49VmVjdG9yIHJ0PTk0NTM0NTU1NSByZz1zY2htYXJybgp+IyEgdGlkPTk0NTM0NTU1NQpDYXR3ZWF6bGUgYmlldGV0IDM0My4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFsaXMgKFNreSwgMTYuIERleiAxOTk5LCAxMzowMToxNyk6Cn4jISBybj1WZWN0b3IgcnQ9OTQ1MzQ1NTU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ1MzQ1NTU1CkljaCBrb21tIG1hbCBhdWYgMTI3LCB3b2JlaSBpY2gga3VlcnpsaWNoIGVyc3QgKmF1c2dlbWlzdGV0KiBoYWJlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMYW5nZXdlaWxlLi4uIChZZW5kaSwgMTYuIERleiAxOTk5LCAxNDozNzoyNCk6CgpOdXIgc286Cgo+IHdFaW4gRWxmZW53YWVjaHRlciBrb21tdCBhbi4KICBEdSBncmVpZnN0IGRhcyBFbGZlbndhZWNodGVyIG1pdCBibG9zc2VuIEhhZW5kZW4gYW4uCiAgRHUgdmVyZmVobHN0IGRhcyBFbGZlbndhZWNodGVyLgoKWnVnZWdlYmVuLCBad2VyZ2UgaGFiZW4gbGFlbmdlcmUgQmFlcnRlIHVuZCBlaW5lbiBzdHJlbmdlcmVuIEdlcnVjaCwgYWJlcgpkYXJhdXMgenUgc2NobGllc3NlbiwgZGFzcyBkaWUgRWxmZW53YWVjaHRlciBuaWNodCBtYWVubmxpY2ggc2luZCwgc29uZGVybgpuZXV0cnVtLi4uCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbGlzIChGb29iYXIsIDE2LiBEZXogMTk5OSwgMTU6NDM6NTEpOgp+IyEgcm49VmVjdG9yIHJ0PTk0NTM0NTU1NSByZz1zY2htYXJybgp+IyEgdGlkPTk0NTM0NTU1NQpIYWIgbnVyIGJlc2NoZWlkZW5lIDExOSB6dSBiaWV0ZW4uCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWxpcyAoQW5hdG9sLCAxNi4gRGV6IDE5OTksIDE1OjQ0OjI1KToKfiMhIHJuPUZvb2JhciBydD05NDUzNTU0MzEgcmc9c2NobWFycm4KfiMhIHRpZD05NDUzNDU1NTUKT2JlcmdyZW56ZS4KCkFuYXRvbCAqc2V1ZnoqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU29zby4gKElzY2hlLCAxNi4gRGV6IDE5OTksIDE2OjAyOjEyKToKPiB6d2VpdGllbWFya2llcnVuZyBzaWNodGJhcgpKZXR6dCBzaWVodCBrZWluIFNwaWVsZXIgbWVociwgd2Vzc2VuIFp3ZWl0aSBEdSBiaXN0LgoKSGFlaD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTb3NvLiAoTm92YXN0b3JtLCAxNi4gRGV6IDE5OTksIDE2OjAzOjQ0KToKfiMhIHJuPUlzY2hlIHJ0PTk0NTM1NjUzMiByZz1zY2htYXJybgp+IyEgdGlkPTk0NTM1NjUzMgpXaWVzbyAnSGFlaD8nPwogIE5vdmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbGlzIChMaWxsZWJyb3IsIDE2LiBEZXogMTk5OSwgMTY6MDY6MjQpOgp+IyEgcm49VmVjdG9yIHJ0PTk0NTM0NTM4OSByZz1zY2htYXJybgp+IyEgdGlkPTk0NTM0NTM4OQpIbW0sIDI2NC4gRGFjaHRlIGVzIHdhZXJlbiBtZWhyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGEgKEFyYXRoLCAxNi4gRGV6IDE5OTksIDE2OjI0OjQ3KToKRHUgc2V0enQgZWluZW4gbWFlY2h0aWdlbiBUb2Rlc3N0b3NzIGdlZ2VuIGRlbiBEcmFrb25pZXJ3YWVjaHRlciBhbi4KICBFaW4gRHJha29uaWVyd2FlY2h0ZXIgd2VocnQgRGVpbmVuIEFuZ3JpZmYgbWl0IGVpbmVtIFNvdG8tc2h1dG8tdWtlIGFiLgogIER1IHplcnNjaG1ldHRlcnN0IGRlbiBEcmFrb25pZXJ3YWVjaHRlciBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KRGVyIERyYWtvbmllcndhZWNodGVyIGZhZWxsdCB0b3QgenUgQm9kZW4uCgpJY2ggd3Vzc3RlIGltbWVyIGRhc3MgS2FyYXRla2FzIEx1c2NoZW4gc2luZC4uLiBzbyBzaWVodCBhbHNvIGRlcmVuIEFid2VociBhdXMKOi0pCgpBcmF0aAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbGlzIChTaWx2YW5hLCAxNi4gRGV6IDE5OTksIDE2OjQyOjU5KToKfiMhIHJuPUxpbGxlYnJvciBydD05NDUzNTY3ODQgcmc9c2NobWFycm4KfiMhIHRpZD05NDUzNDUzODkKNDQyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBbGlzIChGcmVpdGFnLCAxNi4gRGV6IDE5OTksIDE3OjE0OjM1KToKfiMhIHJuPVNpbHZhbmEgcnQ9OTQ1MzU4OTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ1MzQ1Mzg5CjgxNSAuLi4gaG9zc2EhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWxpcyAoU2FoYWRvb20sIDE2LiBEZXogMTk5OSwgMTc6Mjc6MjQpOgp+IyEgcm49VmVjdG9yIHJ0PTk0NTM0NTM4OSByZz1zY2htYXJybgp+IyEgdGlkPTk0NTM0NTM4OQoxNjQgdW5kIGVzIHdlcmRlbiBtZWhyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChEaWVkZXIsIDE2LiBEZXogMTk5OSwgMTc6MzA6MjMpOgpXaWRld2l0dCB0ZWlsdCBEaXIgbWl0OiB1bmQgOApbVG9kOkxhcnNdIEVpbiBGYWxsYmVpbCBoYXQgZ2VyYWRlIFdpZGV3aXR0IHVtZ2VicmFjaHQuCltUb2Q6RWluIEZhbGxiZWlsXSBEb24ndCBsb3NlIFlvdXIgaGVhZC4KCnVuZ2VzY2huaXR0ZW4uCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbGlzIChIaWdodCwgMTYuIERleiAxOTk5LCAxNzozMjo1NCk6Cn4jISBybj1Ta3kgcnQ9OTQ1MzQ1Njc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ1MzQ1NTU1CmhhYiBudXIgMjI0IC5vKQoKSGlnaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBaGEgKEhlcm9tY2ZseSwgMTYuIERleiAxOTk5LCAxNzo0OTozMyk6Cn4jISBybj1BcmF0aCBydD05NDUzNTc4ODcgcmc9c2NobWFycm4KfiMhIHRpZD05NDUzNTc4ODcKCmphIHdpZSBudXIgc3R1ZWNrY2hlbiA/IGdlaCB1ZWJlbiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiA6KSAoU2luYSwgMTYuIERleiAxOTk5LCAxOTozNjoxNyk6Ck5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmbHcgOiggKEthcmljLCAxNi4gRGV6IDE5OTksIDIxOjA1OjU5KToKdW5nZWt1ZXJ6dAoKUHVrIHRlaWx0IERpciBtaXQ6IHdpbmtlIHdpbmtlLCBpY2ggZm9yc2NoZSAqZyoKW1RvZDpMYXJzXSBFaW5lIGhlcmFic2F1c2VuZGUgTGF3aW5lIGhhdCBnZXJhZGUgUHVrIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBoZXJhYnNhdXNlbmRlIExhd2luZV0gSGF0dGUgaWNoIGRpY2ggbmljaHQgZ2V3YXJudD8KCnNldWZ6Li4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5pa29sYXVzLVBhcnR5LUZhbi1wb3N0ISAoQW5hdG9sLCAxNi4gRGV6IDE5OTksIDIxOjI2OjIzKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk0NTM3NTg5OSByZz1wYXJ0eQp+IyEgdGlkPTk0NTM2OTYxNwpTb2xvbi4uLiB3YXM/CgpIZSEgRFUgaGFzdCBkZW4gVGV4dCBkZXIgX1dlaWhuYWNodHNsaWVkZXJfICphYmxlc2VuKiBtdWVzc2VuLgpVbmQgZ2VzdW5nZW4gaGFzdCBEdSBpaG4gYXVmIGVpbmVuIHN0cmFpZ2h0IEUgYmx1ZXMuIE5hIGRhbmtlIDspCgpBbmF0b2wgLSBtYWNodCBCb2VnZW4gdW0gS2xhdmllcmUgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOaWtvbGF1cy1QYXJ0eS1GYW4tcG9zdCEgKE1vbnRhbnVzLCAxNi4gRGV6IDE5OTksIDIxOjI4OjM1KToKfiMhIHJuPUFuYXRvbCBydD05NDUzNzU5ODMgcmc9c2NobWFycm4KfiMhIHRpZD05NDUzNjk2MTcKCkRhcyB3YXIgZWluIFdlaWhuYWNodHNsaWVkPyBEYSBrYW0gaXJnZW5kd2FzIG1pdCBPY2hzIHVuZCBFc2VsIGRyaW4gdm9yLiBVbmQKZGFtaXQga2FubiBtYW4gYXVjaCBkZW4gQmx1ZXMgc2luZ2VuLgoKQmx1ZXN0YW51cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VpaG5hY2h0c2xpZWRlciBmdWVycyBNdWQuLi4gKFNpbHZhbmEsIDE2LiBEZXogMTk5OSwgMjE6Mzc6NDQpOgpXbyB3aXIgZ3JhZCBiZWltIFRoZW1hIHNpbmQuLi46CgooKFRvIHRoZSB0dW5lIG9mICJKaW5nbGUgQmVsbHMiKSkKRGFzaGluZyB0aHJvdWdoIHRoZSBnb3JlLi4gT3JjIGFmdGVyIG9yYyBzbGFpbgpUaHJvdWdoIHRoZSBmaWVsZHMgd2UgZ28uLi4gU2xhc2hpbmcgYWxsIHRoZSB3YXkKR29ibGluIGhlYWRzIGZseSBvZmYuLi4gIE1ha2luZyBzcGlyaXRzIGJyaWdodC4uCldoYXQgZnVuIGl0IGlzIHRvIGxhdWdoIGFuZCBzaW5nIGEgc2xheWluZyBzb25nIHRvbmlnaHQhCgpPaCEgSGFjayAnbicgU2xhc2gsIEhhY2sgJ24nIFNsYXNoLCBLaWxsaW5nIGFsbCB0aGUgd2F5Li4uCk9oIHdoYXQgZnVuLCBJdCBpcyB0byBydW4sIEtpbGxpbmcgY29tZSB3aGF0IG1heSEKSGFjayAnbicgU2xhc2gsIEhhY2sgJ24nIFNsYXNoLCBLaWxsaW5nIGFsbCB0aGUgd2F5Li4uCk9oIHdoYXQgZnVuLCBJdCBpcyB0byBydW4sIEtpbGxpbmcgY29tZSB3aGF0IG1heS4uLgoKICAgU2lsdmFuYSAodWVidCBXZWlobmFjaHRzbGllZGVyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFsaXMgKENhcmFkaHJhcywgMTYuIERleiAxOTk5LCAyMTo0OTozNCk6Cn4jISBybj1WZWN0b3IgcnQ9OTQ1MzQ1Mzg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ1MzQ1Mzg5CkJpbiBpcmdlbmR3byB6d2lzY2hlbiBhbGkgIzcwMCB1bmQgYWxpICM4MDAsIHdvYmVpIGljaCBzY2hvbgoyIEphaHJlIGtlaW5lcyBtZWhyIGdlc2V0enQgaGFiZS5XYXMgaXN0IGJlaSBEaXIgZWluCkR1cmNoc2Nobml0dHNtdWRkZXI/IE51ciBkdXJjaHNjaG5pdHRsaWNoIHZlcnJ1ZWNrdD8KCip3aW5rZSB3aW5rZSogICAgICAgICBCZXJnY2hlbiBDYXJhZGhyYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWxpcyAoVmVjdG9yLCAxNi4gRGV6IDE5OTksIDIyOjE3OjA0KToKfiMhIHJuPUNhcmFkaHJhcyBydD05NDUzNzczNzQgcmc9c2NobWFycm4KfiMhIHRpZD05NDUzNDUzODkKCldhcyBiZWkgbWlyIGVpbiAiRHVyY2hzY2huaXR0c211ZGVyIiBpc3QsIHNhZyBpY2ggaGllciBfc2ljaGVyXyBuaWNodCAqeml0dGVyKgoKLS1WZWN0b3ItLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHJlYm90dCAmIGF0bWUgc3lzdGVtIChHcmltbWJvcm4sIDE2LiBEZXogMTk5OSwgMjI6MzQ6MzEpOgp+IyEgcm49SmFzcGVyIHJ0PTk0NTM3MDI2NyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk0NTM3MDI2NwpEYXMgaXN0IGRvY2ggZ2FueiBlaW5mYWNoOiBJbiBXZWdlc2NyaXB0ZW4gaGVpc3N0IGVzICdqYXBzZScsIGJlaW0gaWRsZW4KaGVpc3N0IGVzICdhdG1lJy4KVW5kIHdlciBwZXIgc2NyaXB0IGF0bWV0IHdpcmQgZ2Vsb2VzY2h0LCBuYXR1ZXJsaWNoLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWnVyIEZlaWVyIGRlcyBUYWdlcy4uLiAoR3JpbW1ib3JuLCAxNi4gRGV6IDE5OTksIDIyOjM1OjQ3KToKfiMhIG9uPUphc3BlciBvdD05NDUzNjc2OTggb2c9a29jaHJlemVwdGUKfiMhIHJuPUNhcmFkaHJhcyBydD05NDUwMzAyNzYgcmc9a29jaHJlemVwdGUKfiMhIHRpZD05NDUwMzAyNzYKeW8sIGR1IGthbm5zdCBkYXMgZWl3ZWlzcyBtaXQgZWluIGJpc3NlcmwgZG9zZW5taWxjaCAoYmFlcmVubWFya2Ugb2RlciBzbykKdmVycnVlaHJlbiwgbGVpY2h0IGVyaGl0emVuLCB1bmQgZGVpbmVyIGZyZXVuZGluIHVlYmVyIGRlbiBydWVja2VuIChiYXVjaApldGMuKSBzY2h1ZXR0ZW4gdW5kIGlociBzbyBuZW4gb3JnYXNtdXMgdm9ydGFldXNjaGVuLgoKUFM6IGtsYXBwdCBuYXR1ZXJsaWNoIG51ciBpbSBkdW5rZWxuIG9kZXIgd2VubiBzaWUgZGllIGF1Z2VuIGdlc2NobG9zc2VuIGhhdApQUFM6IGRlaW5lbiBiZXJnemlwZmVsIHNvbGx0ZXN0IGR1IG5hdHVlcmxpY2ggdm9yaGVyIGF1cyBkZW4gd29sa2VuIHppZWhlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBadXIgRmVpZXIgZGVzIFRhZ2VzLi4uIChHcmltbWJvcm4sIDE2LiBEZXogMTk5OSwgMjI6MzY6MDMpOgp+IyEgb249UGFtcGVycyBvdD05NDUzNzUwMzcgb2c9a29jaHJlemVwdGUKfiMhIHJuPVllbmRpIHJ0PTk0NTM1MzIwMyByZz1rb2NocmV6ZXB0ZQp+IyEgdGlkPTk0NTAzMDI3NgpJY2ggaG9mZmUgc2VociwgZGFzcyBEdSAiRWlrbGFyIiBtZWluc3QuIEF1cyAiRWl3ZWlzcyIga2FubiBtYW4gYWxsZXMgbW9lZ2xpY2gKbWFjaGVuLCB1bnRlciBhbmRlcmVtIGF1Y2ggS2luZGVyLi4uLiA7LSkKClBhbXBlcnMuIEdlaHQgbWl0IEVpd2Vpc3Mgdm9yc2ljaHRpZ2VyIHVtLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gd2FyIGRhcyBkb2NoIG5pY2h0IGdlbWVpbnQhIChHdWlsZG8sIDE3LiBEZXogMTk5OSwgMDk6Mzk6MDUpOgpHZXJhZGUgYmVpbSBCZXRlbjoKCkR1IGJldGVzdCB1bmQgYmV0ZXN0IHVuZCBiZXRlc3QgdW5kIGJldGVzdCB1bmQgLi4uCkR1IGJldGVzdCBmdWVyIGVpbmVuIGJlc3NlcmVuIE11bmRnZXJ1Y2guCkFybWFnZWRkb24gcnVmdDogSW4gMSBUYWcsIDIgU3R1bmRlbiwgMzAgTWludXRlbiB1bmQgMCBTZWt1bmRlbiB3ZXJkZSBpY2ggZGllCkFybWFnZWRkb24gcnVmdDogV2VsdCB6ZXJzdG9lcmVuIHVuZCBuZXUgZXJzY2hhZmZlbiEKRHUgYmVlbmRlc3QgRGVpbiBHZWJldCBtaXQgZWluZW0gZXJsZWljaHRlcnRlbiAnRW5kbGljaCcKCkdydXNzLApHdWlsZG8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFp1ciBGZWllciBkZXMgVGFnZXMuLi4gKEphc3BlciwgMTcuIERleiAxOTk5LCAxMDoxODoxNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTQ1MzgwMTYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ1MDMwMjc2Cm51amEgYmVpIHVucyBoZWlzc3QgZXMgZWl3ZWlzcyB1bmQgZWlnZWxiCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptdWFkaWIgKEJvaW5nLCAxNy4gRGV6IDE5OTksIDE0OjAxOjI1KToKICAgICAgICAgICAgICAgIEVzc2VuCgogICAgICAgICBzYWJiZXJ0IGV1Y2ggRXNzZW4KICAgICAgICAgICAgamEgaWhyIEVzc2VuCiAgICAgICAgICAgICAgIHNhYmJlcnQKICAgICAgICAgICAgdW5kIGJsdWJiZXJ0IAogICAgICAgICAgIHNvIHdpZSBNdWFkaWIhCiAgICAgIE11YWRpYiEgRHUgYmlzdCBnZW1laW50IQoKICBhYmVyIGJsdWJiZXJ0IHNjaG1lcnpsaWNoIC0gRVVDSCAKICB6aWVtbGljaCB1bmQgZGVubm9jaCBnZWZhZWhybGljaAogICAgICAgICAgICAgIGlociBFc3NlbgogICAgICAgICAgc2VpZCBzY2htZXJ6bGljaAogICAgICAgICAgICAgIHppZW1saWNoCiAgICAgICAgICAgICAgaW1tZXJkYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR2VkaWNodGUtR2VuZXJhdG9yIChBbmF0b2wsIDE3LiBEZXogMTk5OSwgMTQ6MDY6MDUpOgp+IyEgcm49RW5kZXIgcnQ9OTQ1NDMyOTkwIHJnPXd3dwp+IyEgdGlkPTk0NTQzMTYxNQpJbW1lcmhpbiBiZXNzZXIgYWxzIGRhcywgd2FzIER1IHNvbnN0IHNvIGluIGRpZSBaZWl0dW5nIHNjaHJlaWJzdC4uLgoKQW5hdG9sIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQWxpcyAoSmFtYWxza2ksIDE3LiBEZXogMTk5OSwgMTQ6MzM6MjgpOgp+IyEgcm49VmVjdG9yIHJ0PTk0NTM3OTAyNCByZz1zY2htYXJybgp+IyEgdGlkPTk0NTM0NTM4OQoKVmVjdG9yOiBXYXMgYmVpIG1pciBlaW4gIkR1cmNoc2Nobml0dHNtdWRlciIgaXN0LCBzYWcgaWNoIGhpZXIgX3NpY2hlcl8gbmljaHQKKnppdHRlcioKClZlcnN0YWVuZGxpY2ghIERlc2hsYWIgc2FnIGljaCBhdWNoIG5pY2h0IHdpZXZpZWwgYWxpcyBpY2ggaGFiZSA6KQpkZXIKSmFtYWxza2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogcmVib3R0ICYgYXRtZSBzeXN0ZW0gKEFjcmltb24sIDE3LiBEZXogMTk5OSwgMTU6MDU6MDEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0NTM4MDA3MSByZz1zY2htYXJybgp+IyEgdGlkPTk0NTM3MDI2NwpNaXQgZGllc2VuIFJlZ2VsbiB3aXJkIGRhcyBJZGVsbiBkYW5uIHp1ciB3aXJrbGljaCBzY2h3aWVyaWdlbiBLdW5zdC4KCkFjcmltb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHJlYm90dCAmIGF0bWUgc3lzdGVtIChBbmF0b2wsIDE3LiBEZXogMTk5OSwgMTU6MDc6MzEpOgp+IyEgcm49QWNyaW1vbiBydD05NDU0Mzk1MDEgcmc9c2NobWFycm4KfiMhIHRpZD05NDUzNzAyNjcKU2VpIGZyb2ggZGFzcyBEdSB1bnN0ZXJibGljaCBiaXN0LCBzb25zdCB3YWVyZSBlcyBlYmVuIERlaW4gRW5kZSBnZXdlc2VuLgpTZWkgZnJvaCBkYXNzIER1IHVuc3RlcmJsaWNoIGJpc3QsIHNvbnN0IHdhZXJlIGVzIGViZW4gRGVpbiBFbmRlIGdld2VzZW4uClNlaSBmcm9oIGRhc3MgRHUgdW5zdGVyYmxpY2ggYmlzdCwgc29uc3Qgd2FlcmUgZXMgZWJlbiBEZWluIEVuZGUgZ2V3ZXNlbi4KU2VpIGZyb2ggZGFzcyBEdSB1bnN0ZXJibGljaCBiaXN0LCBzb25zdCB3YWVyZSBlcyBlYmVuIERlaW4gRW5kZSBnZXdlc2VuLgpTZWkgZnJvaCBkYXNzIER1IHVuc3RlcmJsaWNoIGJpc3QsIHNvbnN0IHdhZXJlIGVzIGViZW4gRGVpbiBFbmRlIGdld2VzZW4uClNlaSBmcm9oIGRhc3MgRHUgdW5zdGVyYmxpY2ggYmlzdCwgc29uc3Qgd2FlcmUgZXMgZWJlbiBEZWluIEVuZGUgZ2V3ZXNlbi4KU2VpIGZyb2ggZGFzcyBEdSB1bnN0ZXJibGljaCBiaXN0LCBzb25zdCB3YWVyZSBlcyBlYmVuIERlaW4gRW5kZSBnZXdlc2VuLgpTZWkgZnJvaCBkYXNzIER1IHVuc3RlcmJsaWNoIGJpc3QsIHNvbnN0IHdhZXJlIGVzIGViZW4gRGVpbiBFbmRlIGdld2VzZW4uClNlaSBmcm9oIGRhc3MgRHUgdW5zdGVyYmxpY2ggYmlzdCwgc29uc3Qgd2FlcmUgZXMgZWJlbiBEZWluIEVuZGUgZ2V3ZXNlbi4KU2VpIGZyb2ggZGFzcyBEdSB1bnN0ZXJibGljaCBiaXN0LCBzb25zdCB3YWVyZSBlcyBlYmVuIERlaW4gRW5kZSBnZXdlc2VuLgpTZWkgZnJvaCBkYXNzIER1IHVuc3RlcmJsaWNoIGJpc3QsIHNvbnN0IHdhZXJlIGVzIGViZW4gRGVpbiBFbmRlIGdld2VzZW4uClNlaSBmcm9oIGRhc3MgRHUgdW5zdGVyYmxpY2ggYmlzdCwgc29uc3Qgd2FlcmUgZXMgZWJlbiBEZWluIEVuZGUgZ2V3ZXNlbi4KRHUgaG9lcnN0IGRpZSBVaHIgc2NobGFnZW46IEVzIGlzdCAxNSBVaHIuClNlaSBmcm9oIGRhc3MgRHUgdW5zdGVyYmxpY2ggYmlzdCwgc29uc3Qgd2FlcmUgZXMgZWJlbiBEZWluIEVuZGUgZ2V3ZXNlbi4KU2VpIGZyb2ggZGFzcyBEdSB1bnN0ZXJibGljaCBiaXN0LCBzb25zdCB3YWVyZSBlcyBlYmVuIERlaW4gRW5kZSBnZXdlc2VuLgpTZWkgZnJvaCBkYXNzIER1IHVuc3RlcmJsaWNoIGJpc3QsIHNvbnN0IHdhZXJlIGVzIGViZW4gRGVpbiBFbmRlIGdld2VzZW4uClNlaSBmcm9oIGRhc3MgRHUgdW5zdGVyYmxpY2ggYmlzdCwgc29uc3Qgd2FlcmUgZXMgZWJlbiBEZWluIEVuZGUgZ2V3ZXNlbi4KU2VpIGZyb2ggZGFzcyBEdSB1bnN0ZXJibGljaCBiaXN0LCBzb25zdCB3YWVyZSBlcyBlYmVuIERlaW4gRW5kZSBnZXdlc2VuLgpTZWkgZnJvaCBkYXNzIER1IHVuc3RlcmJsaWNoIGJpc3QsIHNvbnN0IHdhZXJlIGVzIGViZW4gRGVpbiBFbmRlIGdld2VzZW4uClNlaSBmcm9oIGRhc3MgRHUgdW5zdGVyYmxpY2ggYmlzdCwgc29uc3Qgd2FlcmUgZXMgZWJlbiBEZWluIEVuZGUgZ2V3ZXNlbi4KU2VpIGZyb2ggZGFzcyBEdSB1bnN0ZXJibGljaCBiaXN0LCBzb25zdCB3YWVyZSBlcyBlYmVuIERlaW4gRW5kZSBnZXdlc2VuLgpTZWkgZnJvaCBkYXNzIER1IHVuc3RlcmJsaWNoIGJpc3QsIHNvbnN0IHdhZXJlIGVzIGViZW4gRGVpbiBFbmRlIGdld2VzZW4uClNlaSBmcm9oIGRhc3MgRHUgdW5zdGVyYmxpY2ggYmlzdCwgc29uc3Qgd2FlcmUgZXMgZWJlbiBEZWluIEVuZGUgZ2V3ZXNlbi4KLi4uCgpBbHMgTWFnaWVyIGlzdCBkYXMgZG9jaCBrZWluIFByb2JsZW0gOykKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbGlzIChSYXJkaWFuLCAxNy4gRGV6IDE5OTksIDE2OjM2OjIzKToKfiMhIHJuPVZlY3RvciBydD05NDUzNDUzODkgcmc9c2NobWFycm4KfiMhIHRpZD05NDUzNDUzODkKQWxzbyBpY2ggaGFiIG51ciAyOgptIHVlYmVyZ2VoZSB0aHJlYWQgdW5kCnMgc2NobGFmZSBlaW4KKHdvYmVpIGxldHp0ZXJlcyB6aWVtbGljaCB1bnByYWt0aXNjaCBpc3QsIHdpZSBpY2ggenVnZWJlbiBtdXNzLi4uKQoKUmFyLCBzY2hhdXQgbm9jaCBtYWwgYXVmIGRpZSBSdWJyaWssCmplcHAsIHJpY2h0aWcgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBtdWFkaWIgKE11cGZlbCwgMTcuIERleiAxOTk5LCAxNzozMDoyNSk6Cn4jISBybj1Cb2luZyBydD05NDU0MzU2ODUgcmc9c2NobWFycm4KfiMhIHRpZD05NDU0MzU2ODUKaG0uLi4ga29lbm50ZSBtYW4gZGFzIGdhbnplIGF1Y2ggbWl0ICJpbXByZXNzaW9uZW4gdm9tIHN0YW1tdGlzY2giCnVlYmVyc2NocmVpYmVuPyA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoVGh1ZmhpciwgMTcuIERleiAxOTk5LCAxODoxOToyMik6CgpbQWJlbnRldWVyOkFuYXRvbF0gRHUgbXVzc3QgZnVlciBkaWUgUXVlc3QgTklDSFQgaW4gZGVuIEtlbGxlci4KW0FiZW50ZXVlcjpMb2dvXSBHdXQgZGFzIGVybGVpY2h0ZXJ0IG1pY2ggenV0aWVmc3N0LgpbVG9kOkxhcnNdIERlciBGbHVjaCBkZXMgUGhhcmFvcyBFc3RoZWtvdGggaGF0IGdlcmFkZSBMb2dvIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGFuZ2V3ZWlsZS4uLiAoSG91c2Vob2xkZXIsIDE3LiBEZXogMTk5OSwgMTg6Mzg6MzgpOgp+IyEgcm49WWVuZGkgcnQ9OTQ1MzUxNDQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ1MzUxNDQ0CndvaGwgZWhhIGZlbWluaW51bQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZyAoU2t5LCAxNy4gRGV6IDE5OTksIDIwOjE2OjM5KToKRGV2aWxjaGVuICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkluIGRlciBGZXJuZSBoZXVsdCBlaW4gV29sZi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGEgKEx1ZywgMTcuIERleiAxOTk5LCAyMzoxMjozMik6CgpEZWluZSBGcmV1bmRpbiBCcmFud2VuIHRlaWx0IERpciBtaXQ6IGljaCBtdXNzIG1hbCBkYXMga2xlaW5lIHRlaWwgaW5zIGJldHQKRGVpbmUgRnJldW5kaW4gQnJhbndlbiB0ZWlsdCBEaXIgbWl0OiBicmluZ2VuLi4uCltLdWx0dXI6THVnXSBUSVRURU4hCkRlaW4gRnJldW5kIFJpa3VzIHRlaWx0IERpciBtaXQ6IHNpZSBtZWludCBtaWNoISAuKQoKS2xlaW5lcyBUZWlsLCBzb3NvLgpGaWVzIGtpY2hlcm5kCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExpY2h0bGV2ZWwgKEFuYXRvbCwgMTguIERleiAxOTk5LCAxNzowNTo1NSk6Cn4jISBybj1QYWRyZWljIHJ0PTk0NTUzMzAyOCByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9OTQ1NTMzMDI4ClA+IE1pdCBkZW0gaGV1dGlnZW4gUmVib290IFsuLi5dCgpEdSBtZWluc3Q6IE1pdCBkZW4gaGV1dGlnZW4gUmVib290cyAuLi4gOikKCkFuYXRvbCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhldXRlIGVpbmVyIEhvZWhsZSBiZWltIFRlaWNoIHN1ZWRsaWNoIHZvbSBXYW5nYWRvcmYgKFN1c2ksIDE4LiBEZXogMTk5OSwgMjA6MzA6MDIpOgpGaW5zdGVybmlzLgoKRHUgc2llaHN0IGVpbiBMZXVjaHRlbiBpbiBkZXIgVGllZmUuCgp1bnQgbGV1Y2h0ZW4KCkVzIGlzdCB6dSBkdW5rZWwhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoaXBwZSAuLi4gKFJhbmksIDE4LiBEZXogMTk5OSwgMjA6MzY6MjApOgpULiBIaXBwZSBpc3QgZ2VuYXUgMS43NCBncm9zcyB1bmQgbWluZGVzdGVucyBkb3BwZWx0IHNvIHNjaHdlcgp3YXMgbm9jaApzY2hsaW1tZXIgaXN0IDogZXIgaXN0IEp1cmlzdC4gRXIgdHJhZWd0IGR1bmtlbGJsYXVlIEhvc2VuLCBlaW4gd2Vpc3NlcyBIZW1kCnVuZCBkYXJ1YmVyIGVpbmVuIHdlaW5yb3RlbiBQdWxsdW5kZXIuCkVyIGlzdCBhYnNvbHV0IGZpdC4KRXIgdHJhZWd0IGJlaSBzaWNoOgpEaWUgR2VuaXRhbGllbiB2b24gZWluZW0gVGF1c2VuZGZ1ZXNzbGVyLiAoNSkKCndlbm5zIHNjaGVlIG1hY2h0IC4uLgpSYW5pIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHZlcmthdWZlIFR3aW5nbyAoU2lsdmFuYSwgMTkuIERleiAxOTk5LCAxMToyOToyMyk6Cn4jISBybj1TYW5kaWUgcnQ9OTQ1NTM4MTQxIHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9OTQ1NTM4MTQxCldpZXZpZWwgUHJlaXNuYWNobGFzcyBnaWJ0J3Mgd2VubiBtYW4gYXVmIGRpZSBLYXNzZXR0ZSB2ZXJ6aWNodGV0PwoKICBTaWx2YW5hIChoYXQgc2VsYnN0IEthc3NldHRlbi4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdmVya2F1ZmUgVHdpbmdvIChUYXJhZ29uLCAxOS4gRGV6IDE5OTksIDExOjQ5OjM5KToKfiMhIHJuPVNpbHZhbmEgcnQ9OTQ1NTk5MzYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ1NTM4MTQxCj4gUmU6IHZlcmthdWZlIFR3aW5nbyAoU2lsdmFuYSwgMTkuIERleiAxOTk5LCAxMToyOToyMyk6Cgo+IGZpbmdlciBzaWx2YW5hCj4gWnVsZXR6dCBhdXNnZWxvZ2d0OiBGcmUsIDE3LiBEZXogMTk5OSwgMjM6MDg6MTYgKDFkIDEyOjQwOjM3KQoKV29taXQgd2llZGVyIGVpbm1hbCBiZXdpZXNlbiB3YWVyZSBkYXNzIGludmlzIGRpZSB6ZWl0dW5nIG5pY2h0IGJlZGllbmJhciBzZWluCnNvbGx0ZSA6LSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3V0ZSBDKysgU2VpdGUgKEphc3BlciwgMjAuIERleiAxOTk5LCAxMjoyODo1NCk6Cn4jISBvbj1QcmEgb3Q9OTQyNDE5ODc2IG9nPXd3dwp+IyEgcm49V2lkZXdpdHQgcnQ9OTQyNDE5ODIyIHJnPXd3dwp+IyEgdGlkPTk0MjQxOTgyMgpQcmEgc2NoZW5rdCBXaWRld2l0dCBub2NoIGVpbiB6d2VpdGVzICdwJyBmdWVyIFd1cGVydGFsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcG9ldHJvbi4uLiAoSmFzcGVyLCAyMC4gRGV6IDE5OTksIDEyOjI5OjIwKToKICAgICAgICAgICAgTW9lcHNlbgoKICAgICAgIHBvcHB0IGV1Y2ggTW9lcHNlbgogICAgICAgICBqYSBpaHIgTW9lcHNlbgogICAgICAgICAgICAgcG9wcHQKICAgICAgIHVuZCBsYWVzdGVydCAtIEVVQ0gKICAgICAgIHNvIHdpZSBUaXR0ZW5tYXVzIQogIFRpdHRlbm1hdXMhIER1IGJpc3QgZ2VtZWludCEKCiAgICAgIGFiZXIgbGFlc3RlcnQgd2VpdCAgCiAgcG9zdGtvaXRhbCB2aWVsbGVpY2h0IGJydXRhbAogICAgICAgICAgaWhyIE1vZXBzZW4KICAgICAgICAgICBzZWlkIHdlaXQKICAgICAgICAgICAgICBhY2ggCiAgICAgICAgICAgcG9zdGtvaXRhbAogICAgICAgICAgICAgIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQi4gaGFlbW1lcnQgKFJvY2h1cywgMjAuIERleiAxOTk5LCAxNToyMjozMSk6CkFwb2xsb25pYSBzYWd0OiB3YXMgd2FyIG5vY2htYWwgZGVyIFBmYWQgZnVlciBkZW4gZGFlbWxpY2hlbiBLYXV0c2NodWtoYW1tZXI/PwpBcG9sbG9uaWEgc2FndDogbXVzcyBtaXIgZGEgbWFsIGVpbiBhbGkgZnVlciBtYWNoZW4KQXBvbGxvbmlhIGdyaW5zdC4KRHUgc2Fnc3Q6IGhtbSwga2VpbmUgYWhudW5nLi4uIHdlciBoYXQgZGVuIGRlbm4gei5iLj8KQXBvbGxvbmlhIHNhZ3Q6IGthcmljCkR1IHNhZ3N0OiAvLi4uLi4uLi8uLi4uLi4vLi4uL2hhbW1lcgpBcG9sbG9uaWEgaG9sdCBldHdhcyBoaW50ZXIgZWluZXIgRmxhbW1lbndhbmQgaGVydm9yLgpBcG9sbG9uaWEgc2FndDogZnVuenQgOm8pClBGTFVOWiwgQXBvbGxvbmlhIGJlaGFlbW1lcnQgRGljaCB3aWUgZWluIEJTRS1rcmFua2VzIEthZW5ndXJ1aCBtaXQgZWluZW0KS2F1dHNjaHVraGFtbWVyLgpBcG9sbG9uaWEgZ3JpbnN0LgpEdSBzYWdzdDogYml0dGUgbmljaHQgYW4uLi4genUgc3BhZXQKRHUgc2Fnc3Q6IHdvbGx0ZSBnZXJhZGUgbm9jaCBzYWdlbiwgYml0dGUgbmljaHQgYW4gTUlSIGF1c3Byb2JpZXJlbiA6KQoKCiAgKnNldWZ6Ki4uLi4gVE9FQ0hURVIhCgogIFJvY2h1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEIuIGhhZW1tZXJ0IChBcG9sbG9uaWEsIDIwLiBEZXogMTk5OSwgMTU6MjM6NDMpOgp+IyEgcm49Um9jaHVzIHJ0PTk0NTY5OTc1MSByZz1zY2htYXJybgp+IyEgdGlkPTk0NTY5OTc1MQoqdW5zY2h1bGRpZyBwZmVpZiogT2IgaWNoIGhpZXIgYXVjaCBiZWhhdXB0ZW4ga2FubiwgaWNoIHdhcidzIG5pY2h0PyEgO28pCgpBcG8qIChzY2hpZWJ0J3MgYXVmIGlocmUgU2Nod2VzdGVyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCLiBoYWVtbWVydCAoTXVwZmVsLCAyMC4gRGV6IDE5OTksIDE2OjMwOjIxKToKfiMhIHJuPUFwb2xsb25pYSBydD05NDU2OTk4MjMgcmc9c2NobWFycm4KfiMhIHRpZD05NDU2OTk3NTEKS2xhciwgamVtYW5kIG11c3MgZGljaCBnZXp3dW5nZW4gaGFiZW4uLi4uCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogdmVya2F1ZmUgVHdpbmdvIChXaW0sIDIwLiBEZXogMTk5OSwgMjA6Mjc6NTgpOgp+IyEgcm49VGFyYWdvbiBydD05NDU2MDA1Nzkgcmc9c2NobWFycm4KfiMhIHRpZD05NDU1MzgxNDEKcGFoIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5oZWltbGljaCA6LSkgKENpc291LCAyMC4gRGV6IDE5OTksIDIxOjQyOjQzKToKRGVpbiBGcmV1bmQgQmFyZCBncmluc3QgdW5kIHppZWh0IGRpZSBMZWl0dW5nIHZvbSBNRy1SZWNobmVyIDspIGF1cyBkZXIgRmVybmUuClRob3IgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpIdWNoPyA6LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpraWxsZXJlbGYsIHdpZSBhbGxlIGVsZmVuIChQdWssIDIwLiBEZXogMTk5OSwgMjM6Mzk6MTgpOgoKVmFtcGlyZSBzdGFycnQgZGVtIGtsZWluZW4gS2lsbGVyZWxmIHRpZWYgaW4gZGllIEF1Z2VuIHVuZCBzYWd0OiBTdG9laG5lIQpEdSB0cmlmZnN0IGRlbiBrbGVpbmVuIEtpbGxlcmVsZiBzZWhyIGhhcnQuCkRlciBrbGVpbmUgS2lsbGVyZWxmIGZhZWxsdCB0b3QgenUgQm9kZW4uCkVpbmUgTGVpY2hlIGJlZ2lubnQgbHVzdHZvbGwgenUgc3RvZWhuZW4uLi4gSG9sbGEsIHdhcyBmdWVyIEJlbmVobWVuIQpFaW5lIExlaWNoZSBiZWdpbm50IGx1c3R2b2xsIHp1IHN0b2VobmVuLi4uIEhvbGxhLCB3YXMgZnVlciBCZW5laG1lbiEKClB1ayBoYXQgaW1tZXIgZ2V3dXNzdCB3YXMgRWxmZW4gc28gdHJlaWJlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEIuIGhhZW1tZXJ0IChSYXJkaWFuLCAyMS4gRGV6IDE5OTksIDAxOjE1OjAwKToKfiMhIHJuPVJvY2h1cyBydD05NDU2OTk3NTEgcmc9c2NobWFycm4KfiMhIHRpZD05NDU2OTk3NTEKSG0uLi4KTWVpbnN0IER1LCBkYXNzIG1hbiBkYXMgYWxsZ2VtZWluIHZvbiBUb2VjaHRlcm4gYmVoYXVwdGVuIGthbm4sIEdyb3NzcGFwaT8KT2RlciBoYWJlIHdpciBlcyBkb2NoIG1pdCBlaW5lbSBUZWlsIGVpbmVzIGdhbnogYmVzb25kZXJlbiBUb2NodGVycGFhcmVzIHp1CnR1bj8/CgpSYXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEd1aWxkbywgMjEuIERleiAxOTk5LCAwOTo1OTo1NCk6Cj4gYmVydWVocmUgd2FuZApBbHMgRHUgZGllIFdhbmQgYmVydWVocnN0LCBzdGVsbHN0IER1IG1pdCBFcnN0YXVuZW4gZmVzdCwgZGFzcyBlcyBzaWNoCmRhYmVpIG51ciB1bSBlaW5lIElsbHVzaW9uIGdlaGFuZGVsdCBoYXQuIER1IGthbm5zdCBudW4gZGV1dGxpY2ggZWluZW4KR2FuZyBuYWNoIE9zdGVuIGVya2VubmVuLCBkZXIgaW4gZWluZW0gUmF1bSBlbmRldC4KPiBzYWcgQWxzbyBiZWkgbWlyIGtsYXBwdCAiYmVydWVocmUgd2FuZCIuCkR1IHNhZ3N0OiBBbHNvIGJlaSBtaXIga2xhcHB0ICJiZXJ1ZWhyZSB3YW5kIi4KPiBJZGxlZml4IHNhZ3Q6IGJlaSBtaXIgamV0enQgYXVjaCA6KQpJZGxlZml4IHNhZ3Q6IHRoeCA6KQpJZGxlZml4IGdlaHQuCltUb2Q6TGFyc10gWndhY2tlbG1hbm4gaGF0IGdlcmFkZSBJZGxlZml4IHVtZ2VicmFjaHQuCgoKTm9jaG1hbHMgQmVpbGVpZCwKR3VpbGRvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadSBrdXJ6IGdla29tbWVuZSBNdWRkZXIuLi4gKFJvY2h1cywgMjEuIERleiAxOTk5LCAxNDo1MjowNyk6CltBbGxnZW1laW46VGFnYXJhXSB3byBnZWh0IGRlbm4ga2F0emVuamFtbWVyIGxvcyA8MTQ6Mjk6MDI+CltBbGxnZW1laW46TmlldGVdIGthdHplbj8gZGllIHZpZWNoZXIgamFtbWVybiBkb2NoIHVlYmVyYWxsIDspIDwxNDoyOToxNj4KW0FsbGdlbWVpbjpQdWtdIGluIGthdHptYW5kdSBiZWltIGhlaWxlciA8MTQ6Mjk6MzA+CltBbGxnZW1laW46T2xlcmlpc10gdmllbGxlaWNodCBpbiBrYXR6bWFuZHUgPDE0OjI5OjM0PgpbQWxsZ2VtZWluOkJ1YmJhXSBiZXNvbmRlcnMsIHdlbm4gbWFuIGlobmVuIGF1ZiBkZW4gU2Nod2FueiB0cml0dC4uLgpbQWxsZ2VtZWluOkJ1YmJhXSA8MTQ6Mjk6Mzg+CltBbGxnZW1laW46VGFnYXJhXSBhIGZkYW5rZSA8MTQ6Mjk6Mzg+CltBbGxnZW1laW46VGFnYXJhXSB3byBsaWVndCBkYXMgLCBpY2gga2VubmUgd2VkZXIgZGllIGZlbGluZW4gbm9jaCBrYXR6bWFuZHUKW0FsbGdlbWVpbjpUYWdhcmFdIDwxNDoyOTo1OD4KW0FsbGdlbWVpbjpNYXhpbXVtXSB3ZW5uIGljaCBkaXIgYXVmIGRlbiBTY2h3YW56IHRyZXRlLCBmYWVuZ3N0IGR1IHNpY2hlcmxpY2gKW0FsbGdlbWVpbjpNYXhpbXVtXSBhdWNoIGFuIHp1IGphbW1lcm4hIF07LT4gPDE0OjMwOjAwPgpbQWxsZ2VtZWluOk5pZXRlXSB5bywgc2Nod2FueiBtYWx0cmFldGllcmVuLiA8MTQ6MzA6MDA+CltBbGxnZW1laW46QnViYmFdIGljaCBoYWJlIGtlaW5lbiBTY2h3YW56IDwxNDozMDozNT4KW0FsbGdlbWVpbjpSb2NodXNdIHNvc28uLi4gPDE0OjMxOjExPgpbQWxsZ2VtZWluOk5pZXRlXSBzdGltbXQsIGhhYiBuYWNoZ2VzZWhlbiA8MTQ6MzE6MjM+CltBbGxnZW1laW46UHVrXSB3aXJkIGphIGltbWVyIGludGVyZXNzYW50ZXIgPDE0OjMxOjUzPgpbQWxsZ2VtZWluOk1heGltdW1dIEhtbW0sIGlzdCBkZXIgc28ga2xlaW4sIGRhc3MgbWFuIGlobiBuaWNodCBzZWhlbiBrYW5uLi4uc28KW0FsbGdlbWVpbjpNYXhpbXVtXSBtaXQgYmxvc3NlbSBBdWdlPyA7KSA8MTQ6MzI6MDU+CltBbGxnZW1laW46TmlldGVdIGJpbiBnYW56IG5haCByYW5nZWdhbmdlbiA8MTQ6MzI6MzE+CltBbGxnZW1laW46QnViYmFdIGVzIGlzdCBnYXIga2VpbmVyIHZvcmhhbmRlbiAtIG5pY2h0IG1hbCBlaW4gendlcmdlbmhhZnQKW0FsbGdlbWVpbjpCdWJiYV0ga2xlaW5lci4uLiA8MTQ6MzI6NDE+CltBbGxnZW1laW46Um9jaHVzIHJlaWNodCBOaWV0ZSBlaW4gTWlrcm9za29wIDwxNDozMjo0NT5dCltBbGxnZW1laW46TmlldGUgcmlza2llcnQgZWluZW4gQmxpY2suLi5uaXghIDwxNDozMzoxMz5dCltBbGxnZW1laW46QnViYmFdIElzdCBkYXMgZXR3YSBzY2hsaW1tPz8/IDwxNDozMzoxMz4KW0FsbGdlbWVpbjpCdWJiYV0gb2RlciBzb2dhciBhbnN0ZWNrZW5kPyA8MTQ6MzM6MzM+CltBbGxnZW1laW46TWF4aW11bV0gbmFqYSwgd2Vpc3MgbmljaHQsIG9iIGRhcyBzY2hsaW1tIGlzdC4uLnNvZmVybiBkdSBkYW1pdApbQWxsZ2VtZWluOk1heGltdW1dIGtlaW5lIFByb2JsZW1lIGhhc3QgPDE0OjM0OjE5PgpbQWxsZ2VtZWluOlJvY2h1c10gYWVoLCBob2ZmZW50bGljaCBuaWNodCBhbnN0ZWNrZW5kIDopIDwxNDozNDoyMT4KW0FsbGdlbWVpbjpNYXhpbXVtXSBkYXMgd2FlcmUgYml0dGVyLCBqYSA8MTQ6MzQ6MzE+CltBbGxnZW1laW46TmlldGVdIGhtLCBvaG5lIHNjaHdhbnogaGF0IG1hbiB3ZW5pZ2VyIHByb2JsZW1lIHd1ZXJkIGljaCBzYWdlbgpbQWxsZ2VtZWluOk5pZXRlXSA8MTQ6MzQ6MzU+CltBbGxnZW1laW46QnViYmEgbmlja3QgTmlldGUgenUuIDwxNDozNDo0NT5dCltBbGxnZW1laW46QnViYmFdIGthbm4gaWNoIG51ciBlbXBmZWhsZW4hIDwxNDozNDo1OT4KW0FsbGdlbWVpbjpNYXhpbXVtXSBIbS4uLiA8MTQ6MzU6MDM+CltBbGxnZW1laW46TWF4aW11bSBncnVlYmVsdC4gPDE0OjM1OjA5Pl0KW0FsbGdlbWVpbjpCdWJiYV0gU2Nod2Fuemxvc2lna2VpdCEgPDE0OjM1OjExPgpbQWxsZ2VtZWluOk1heGltdW1dIHRyYWVnc3QgZHUgYXVjaCBsaWxhIExhdHpob3Nlbj8gPDE0OjM1OjIzPgpbQWxsZ2VtZWluOkJ1YmJhXSBzb2xsIHVudGVyIE11ZGRlcm4gYmVzb25kZXJzIHdlaXQgdmVyYnJlaXRldCB6dSBzZWluIC0KW0FsbGdlbWVpbjpCdWJiYV0gaW5zb2Zlcm4gYmVmaW5kZSBpY2ggbWljaCBoaWVyIGphIGluIGd1dGVyIEdlc2VsbHNjaGFmdApbQWxsZ2VtZWluOkJ1YmJhXSA8MTQ6MzU6NDk+CltBbGxnZW1laW46TWF4aW11bV0gYWhhIDwxNDozNjowMz4KW0FsbGdlbWVpbjpOaWV0ZV0gd29oZXIgd2Vpc3N0ZSBkYXMgYnViYmE/IDwxNDozNjoyMT4KW0FsbGdlbWVpbjpCdWJiYSBuaWNrdCB3aWNodGlnLiA8MTQ6MzY6MjM+XQpbQWxsZ2VtZWluOkJ1YmJhXSBpY2ggZ3Vja2UgbWlyIGdlbGVnZW50bGljaCBoYWx0IGF1Y2ggUGFydHlmb3RvcyBhbiAtIGRhCltBbGxnZW1laW46QnViYmFdIHNpZWh0IG1hbiduIGphISA6LSkgPDE0OjM2OjUxPgpbQWxsZ2VtZWluOk5pZXRlXSBuYSwgYmluIGphIGF1ZiBrZWluZW0gZHJhdWYuLi4gPDE0OjM3OjE1PgpbQWxsZ2VtZWluOlJvY2h1c10gYWxzbywgZm90b3MgYXVmIGRlbmVuIG1hbiBEQVMgc2llaHQgaGFiZSBpY2ggbnVuIHdpcmtsaWNoCltBbGxnZW1laW46Um9jaHVzXSBuaWNodC4uLi4gYWVoLCBpbnMgbmV0eiBnZXN0ZWxsdCA6KSA8MTQ6Mzc6MzE+CltBbGxnZW1laW46TWF4aW11bV0gYWJlciBzb2xjaGUgRm90b3MgZ2VzY2hvc3Nlbj8gOykgPDE0OjM4OjExPgpbQWxsZ2VtZWluOlJvY2h1cyBzYWd0IGpldHp0IGxpZWJlciBuaWNodHMgdWViZXIgZGllIEZvdG9zLCBkaWUgemVuc2llcnQKICAgICAgICAgICB3dXJkZW4uLi4gPDE0OjM4OjExPl0KW0FsbGdlbWVpbjpCdWJiYV0gdGphLi4uZGFubiBrYW5uIGljaCB6dSBkZWluZXIgbGlsYSBMYXR6aG9zZSB1bmQKW0FsbGdlbWVpbjpCdWJiYV0gZ2FsbG9waWVyZW5kZXIgU2Nod2Fuemxvc2lna2VpdCB3ZW5pZyBzYWdlbi4uLmVzIHNlaSBkZW5uCltBbGxnZW1laW46QnViYmFdIFJvY2h1cyBwb3N0ZXQgbm9jaCduIEZvdG8gOy0pIDwxNDozODoyMT4KW0FsbGdlbWVpbjpNYXhpbXVtXSBSb2NodXMsIGxhc3MgdW5zIGRvY2ggbWFsIHVudGVyIHZpZXIgQXVnZW4gdWViZXIKW0FsbGdlbWVpbjpNYXhpbXVtXSBkaWUuLi5hZWhtLCBGb3RvcyB1bnRlcmhhbHRlbiA7LSkgPDE0OjM4OjM1PgpbQWxsZ2VtZWluOldpZGV3aXR0XSBlcnByZXNzdW5nID8gdW5kIGRhcyBhdWYgbmUgb2VmZmVudGxpY2hlbiBrYW5hbCA/CltBbGxnZW1laW46V2lkZXdpdHRdIDwxNDozODo1Nz4KW0FsbGdlbWVpbjpXaWRld2l0dCBncmluc3QgPDE0OjM4OjU5Pl0KW0FsbGdlbWVpbjpCdWJiYV0gZGEgc2llaHQgbWFuJ3MgbWFsIHdpZWRlciAtIGJla2VubmVuZGUgU2Nod2Fuemxvc2Ugc2luZApbQWxsZ2VtZWluOkJ1YmJhXSBzY2h3ZXJlciBlcnByZXNzYmFyISA8MTQ6Mzk6MjU+CltBbGxnZW1laW46Um9jaHVzXSBhbHNvIG1laW5lIHRvY2h0ZXIgaGF0IHNpY2ggamVkZW5mYWxscyBzZWhyIHVlYmVyIGRpZSBmb3RvcwpbQWxsZ2VtZWluOlJvY2h1c10gYW11ZXNpZXJ0IDstKSA8MTQ6Mzk6NDE+CltBbGxnZW1laW46V2lkZXdpdHRdIGJ1YmJhOiBkYXMgaXN0IGFiZXIgaW1tZXIgbm9jaCBrZWluIGdydW5kIHNpY2gga2FzdHJpZXJlbgpbQWxsZ2VtZWluOldpZGV3aXR0XSB6dSBsYXNzZW4gLikgPDE0OjQwOjIxPgpbQWxsZ2VtZWluOk5pZXRlIGJld3VuZGVydCBCdWJiYXMgU2Nod2Fuemxvc2lna2VpdC4gPDE0OjQwOjIxPl0KW0FsbGdlbWVpbjpCdWJiYV0gd2VnZW4gPDE0OjQwOjI3PgpbQWxsZ2VtZWluOk1heGltdW1dIERBUyBrYW5uIGljaCBtaXIgbGViaGFmdCB2b3JzdGVsbGVuLCBSb2NodXMhIDwxNDo0MDoyOT4KW0FsbGdlbWVpbjpWZWN0b3JdIHdlbm4gaWhyIGRhcyBhbGxlcyBhdWYgLWthdHplbmtyaWVnZXIgZGlza3V0aWVyZW4gd3VlcmRldCwKW0FsbGdlbWVpbjpWZWN0b3JdIGdhZWJlIGVzIGRhIHdlbmlnc3RlbnMgbWFsIGVpbmUgYW5zdGFlbmRpZ2UgaGlzdG9yeTopCltBbGxnZW1laW46VmVjdG9yXSA8MTQ6NDE6Mjc+CltBbGxnZW1laW46TWF4aW11bSBuaWNrdCB2ZWN0b3IgZWlmcmlnIHp1LiA8MTQ6NDI6NDE+XQpbQWxsZ2VtZWluOkJ1YmJhXSBrYXR6ZW4gaGFiZW4gamEgbWVpc3QgYXVjaCBub2NoIHN0YXJrIGJlaGFhcnRlIFNjaHdhZW56ZSAtCltBbGxnZW1laW46QnViYmFdIGRpZSBzaW5kIGphIGJlc29uZGVycyBla2VsaWchIDwxNDo0Mjo0Mz4KW0FsbGdlbWVpbjpOaWV0ZV0gbWFuIG1lcmt0LCBkdSBiaXN0IGFlc3RoZXQgPDE0OjQzOjEzPgpbQWxsZ2VtZWluOk1heGltdW1dIFBvZWghIDwxNDo0MzoxMz4KW0FsbGdlbWVpbjpaYXJkb3pdIGVzIGdsYXVidCBtaXIgamEgZWgga2VpbmVyLCBhYmVyIGljaCBzY2hhdWUgbWlyIGdlcmFkZSBtZWluCltBbGxnZW1laW46WmFyZG96XSByZXAtZmlsZSBhbi4uLiA8MTQ6NDM6MTU+CltBbGxnZW1laW46WmFyZG96XSBnaWJ0cyBqZW1hbmRlbiwgZGVyIGRlbiAiRGVyIHd1bHN0aWdlIFN0YWIgZGVzIFZpZWNocyBhdXMKW0FsbGdlbWVpbjpaYXJkb3pdIGRlbSBTdW1wZiBkZXIgZXdpZ2VuIFZlcmRhbW1uaXMiIGJlbnV0enQ/IG51ciBtYWwgc28gYXVzCltBbGxnZW1laW46WmFyZG96XSBpbnRlcmVzc2UgPDE0OjQ0OjA1PgpbQWxsZ2VtZWluOkJ1YmJhXSBpc3QgZWluIHd1bHN0aWdlciBTdGFiIHNvd2FzIHdpZSduIHNjaHdhbno/IDwxNDo0NDoyNT4KW0FsbGdlbWVpbjpXaWRld2l0dF0gaXMgZGFzIGpldHp0IHNwaWVsZXJoaWxmZSA/IDwxNDo0NDozMz4KW0FsbGdlbWVpbjpUYWdhcmFdIENpYW8gPDE0OjQ0OjM1PgpbQWxsZ2VtZWluOk1heGltdW1dIEJ1YmJhLCBkdSBzdGVoc3Qgd29obCBtZWhyIGF1ZiBnbGF0dHJhc2llcnQsIGphPwpbQWxsZ2VtZWluOk1heGltdW1dIDwxNDo0NDo0Nz4KW0FsbGdlbWVpbjpCdWJiYV0gaXN0IGRpZXNlciBTdGFiIGRlbm4gYXVjaCBiZWhhYXJ0PyA8MTQ6NDQ6NTc+CltBbGxnZW1laW46QnViYmFdIGljaCBoYWJlIGtlaW5lIEhhYXJlIC0gd2llIGljaCBhdWNoIGtlaW5lbiBTY2h3YW56IGhhYmUhIE51cgpbQWxsZ2VtZWluOkJ1YmJhXSBub2NobWFsIHp1ciBFcmlubmVydW5nISA7LSkKW0FsbGdlbWVpbjpOaWV0ZSB3dXNjaGVsdCBCdWJiYSBkdXJjaCdzIChrb3BmLSlIYWFyLi4uXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVhIChQdWssIDIxLiBEZXogMTk5OSwgMTU6MDE6NDgpOgpNYXRyaXg6IFB1ayAgc2llaHQgZWluIHdlbmlnIGFuZ2VrcmF0enQgYXVzLiAoNzAgUHJvemVudCkuCkR1IGJpc3QgbmljaHQgbWVociBib2VzZSBnZW51Zy4gRGVyIFBhbnplciBpc3QgdmVyYWVyZ2VydCEKRHUgcHVsdmVyaXNpZXJzdCBQdWsuClB1ayBwdWx2ZXJpc2llcnQgRGljaC4KCm5ldHRlIGlkZGUgKnNldWZ6KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2llIGpldHp0Li4uPyAoRGV2aWxjaGVuLCAyMS4gRGV6IDE5OTksIDIyOjEyOjQyKToKRHUgemVyc2NobWV0dGVyc3QgZGVuIFdpcnQgaW4ga2xlaW5lIFN0dWVja2NoZW4uCkRlciBXaXJ0IGZhZWxsdCB0b3QgenUgQm9kZW4uCkRlciBXaXJ0IHNhZ3QgenUgRGlyOiBLRUlORSBTQ0hMQUVHRVJFSUVOIEhJRVIhCkRlciBXaXJ0IHNhZ3QgenUgRGlyOiBSQVVTISEhISEhCgpEZXYqLCBkaWUgamV0enQgc2Nob24gTGVpY2hlbiB6dSBzaWNoIHNwcmVjaGVuIGhvZXJ0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogT3JraG9laGxlbmVpbmdhbmcgKFBhZHJlaWMsIDIyLiBEZXogMTk5OSwgMTA6NDI6MDEpOgp+IyEgb249VGVkZHkgb3Q9OTQ1Nzk3OTE2IG9nPWQudW50ZXJ3ZWx0Cn4jISBybj1UYXJhZ29uIHJ0PTk0NTcxNjY4NiByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTk0NTYyNjQ3NApJQ0ggQklOIE5JQ0hUIE5FVFQhISEKClRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogT3JraG9laGxlbmVpbmdhbmcgKFBhZHJlaWMsIDIyLiBEZXogMTk5OSwgMTA6NDI6MTMpOgp+IyEgb249TXVhZGliIG90PTk0NTg1NTY4MSBvZz1kLnVudGVyd2VsdAp+IyEgcm49VGVkZHkgcnQ9OTQ1Nzk3OTE2IHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9OTQ1NjI2NDc0CkFjaCA/IFdpcmtsaWNoIG5pY2h0ID8KCk11YWRpYgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE9ya2hvZWhsZW5laW5nYW5nIChQYW5pYywgMjIuIERleiAxOTk5LCAxNTo1NzozMSk6Cn4jISBybj1QYWRyZWljIHJ0PTk0NTg1NTcyMSByZz1zY2htYXJybgp+IyEgdGlkPTk0NTYyNjQ3NApWaWVsZW4gRGFuayBmdWVyIGRpZXNlIEluZm9ybWF0aW9uLiBMYW5nIG5pY2h0IG1laHIgZ2VsZXNlbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1vcmdvdGggaXN0IGF1c2dld2FuZGVydD8gKFdpbSwgMjIuIERleiAxOTk5LCAyMzowNzoyNyk6Ckdhc3QyIGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBtb3Jnb3RoLnR1dWcuZmkgKDEzMC4yMzIuNzIuMSkgW0Zpbm5sYW5kXS4KRWluZ2Vsb2dndCBzZWl0OiBNaXQsIDIyLiBEZXogMTk5OSwgMjI6NTc6MzQKKC4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQi4gaGFlbW1lcnQgKFVuYXNhaSwgMjMuIERleiAxOTk5LCAxNDoxNzoxMCk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9OTQ1Njk5ODIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ1Njk5NzUxCmljaCB3YXJzIG5pY2h0IQpNZW5ubyBpY2ggd2FycyBkb2NoIHdpcmtsaWNoIG5pY2h0ISEhIEljaCB3YXIgamEgbmljaHQgbWFsIGFud2VzZW5kIQoKcGZmZmZmZmYgUGFwaXMgdW5kIHNjaHdlc3Rlcm4hIDopClVuYSogKCpmZWl4ZW5kKikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3aWUgamV0enQuLi4/IChUZWRkeSwgMjMuIERleiAxOTk5LCAxODozMzo1Nik6Cn4jISBybj1EZXZpbGNoZW4gcnQ9OTQ1ODEwNzYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ1ODEwNzYyClNvc28sIGR1IGJpc3QgYWxzbyBlaW4gTWVkaXVtIDstKQoKVGVkZHksIHNwcmljaHQgenVyIE5vdCBtaXQgYWxsZW0sIGF1Y2ggbWl0IFRvdGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IE9ya2hvZWhsZW5laW5nYW5nIChUZWRkeSwgMjMuIERleiAxOTk5LCAxODozNDo0OCk6Cn4jISBybj1QYWRyZWljIHJ0PTk0NTg1NTczMyByZz1zY2htYXJybgp+IyEgdGlkPTk0NTYyNjQ3NApEZWZpbml0aXYgbmVpbi4KClRlZGR5LCBoYXQgenVyIE5vdCBaZXVnZW4uIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2VpaG5hY2h0ZW4gKEdyaW1tYm9ybiwgMjMuIERleiAxOTk5LCAxOToyNTozMik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTQ1OTczNTI2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1Hbm9tZSBydD05NDU5NzMzOTQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NDU5NzEzNjYKU2llaHN0ZSwgd2llZGVyIGVpbmVyLCBkZXIgbmljaHQgbWVociBtZWludCBtaWNoIGluIGVpbmUgU2NodWJsYWRlIHN0b3BmZW4genUKa29lbm5lbi4gRGEgaGF0IHNpY2ggZGVyIEFydGlrZWwgZG9jaCBzY2hvbiBnZWxvaG50Li4uCgpOZWluLCBpY2ggcG9zdGUgaGllciBuaWNodCBtZWluZSBWZXJ3ZWlnZXJ1bmdzYmVncnVlbmR1bmcuIFdpbGwgbmljaHQgZGllClVyc2FjaGUgRGVpbmVzIFNlbGJzdG1vcmRlcyBzZWluLCB3ZWlsIER1IGF1ZiBlaW5tYWwgZGllIFdlbHQgYWJzb2x1dCBuaWNodAptZWhyIHZlcnN0ZWhzdC4gCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvZWRsaWNoZS4uLi5hZWguLi4uTXVzaWs/IChOZXZvaywgMjQuIERleiAxOTk5LCAyMzo1ODo0OSk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIEdhcmRld2FlY2h0ZXJzXSBNaXN0LCBtZWluZSBWb3JzaWNodCBoYXQgdmVyc2FndCEgVW5kIGRhcwpbTW9lcmRlcjpHZWlzdCBlaW5lcyBHYXJkZXdhZWNodGVyc10gYmVpIFJhbW1zdGVpbiEKCgpOZXZvayBuaWNrdCB2ZXJzdGVoZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadSBUb2RlIGdlaWRsZXQ/IChXaW0sIDI3LiBEZXogMTk5OSwgMDM6NDA6MzMpOgpUYXJhZ29uIGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBYWFguZGUgKFhYWC5YWC5YWFguWFhYKSBbSGFtYnVyZ10uClBhc3NpdiBzZWl0OiAyZCAwOTozNDoyNwpFaW5nZWxvZ2d0IHNlaXQ6IE1pdCwgMjIuIERleiAxOTk5LCAxMDowNzoyNgooLi4uKQoKdm9yIGRlciBUYXN0YXR1ciBlaW5lbiBIZXJ6YW5mYWxsIGJla29tbWVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVlMgYXVmd2VydGVuISAoQ2FrZXksIDI5LiBEZXogMTk5OSwgMDM6MjA6NTEpOgogIERlciBhbHRlIEdlbmVyYWwgdHJpZmZ0IFhlbmFkYS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApEZXIgVm9sbHN0cmVja2VyIHNjaGxhZWd0IG1pdCBncm9lc3N0ZXIgRnJldWRlIGJlc29uZGVycyBrcmFlZnRpZyBhdWYKRGVpbmVuIEdlZ25lciBlaW4sIGFscyBlciBtZXJrdCwgZGFzcyBkaWVzZXIga3VyeiB2b3JtIEVuZGUgc3RlaHQhCiAgRHUgdHJpZmZzdCBkZW4gYWx0ZW4gR2VuZXJhbCBoYXJ0LgpEZXIgR2VuZXJhbCBzYWd0OiBQZmZmZnQsIHNvd2FzIGthbm4gaWNoIGdyYWRlIG5vY2ggZWluc3RlY2tlbi4KICBEZXZpbGNoZW4ga3JhdHp0IGRlbiBhbHRlbiBHZW5lcmFsLgogIFhlbmFkYSB2ZXJmZWhsdCBkZW4gYWx0ZW4gR2VuZXJhbC4KRGVyIEdlbmVyYWwgc2FndDogUGZmZmZ0LCBzb3dhcyBrYW5uIGljaCBncmFkZSBub2NoIGVpbnN0ZWNrZW4uCiAgQWVuZWFzIHRyaWZmdCBkZW4gYWx0ZW4gR2VuZXJhbCBzZWhyIGhhcnQuCiAgRGVyIGFsdGUgR2VuZXJhbCBrcmF0enQgQWVuZWFzLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkRlciBWb2xsc3RyZWNrZXIgc2NobGFlZ3QgbWl0IGdyb2Vzc3RlciBGcmV1ZGUgYmVzb25kZXJzIGtyYWVmdGlnIGF1ZgpEZWluZW4gR2VnbmVyIGVpbiwgYWxzIGVyIG1lcmt0LCBkYXNzIGRpZXNlciBrdXJ6IHZvcm0gRW5kZSBzdGVodCEKICBEdSB2ZXJmZWhsc3QgZGVuIGFsdGVuIEdlbmVyYWwuCkRlciBWb2xsc3RyZWNrZXIgc2NobGFlZ3QgbWl0IGdyb2Vzc3RlciBGcmV1ZGUgYmVzb25kZXJzIGtyYWVmdGlnIGF1ZgpEZWluZW4gR2VnbmVyIGVpbiwgYWxzIGVyIG1lcmt0LCBkYXNzIGRpZXNlciBrdXJ6IHZvcm0gRW5kZSBzdGVodCEKICBEdSB2ZXJmZWhsc3QgZGVuIGFsdGVuIEdlbmVyYWwuCkRlciBWb2xsc3RyZWNrZXIgc2NobGFlZ3QgbWl0IGdyb2Vzc3RlciBGcmV1ZGUgYmVzb25kZXJzIGtyYWVmdGlnIGF1ZgpEZWluZW4gR2VnbmVyIGVpbiwgYWxzIGVyIG1lcmt0LCBkYXNzIGRpZXNlciBrdXJ6IHZvcm0gRW5kZSBzdGVodCEKICBEdSB2ZXJmZWhsc3QgZGVuIGFsdGVuIEdlbmVyYWwuCiAgRGV2aWxjaGVuIHZlcmZlaGx0IGRlbiBhbHRlbiBHZW5lcmFsLgpEZXIgR2VuZXJhbCBzYWd0OiBQZmZmZnQsIHNvd2FzIGthbm4gaWNoIGdyYWRlIG5vY2ggZWluc3RlY2tlbi4KICBYZW5hZGEgdmVyZmVobHQgZGVuIGFsdGVuIEdlbmVyYWwuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICBBZW5lYXMgdmVyZmVobHQgZGVuIGFsdGVuIEdlbmVyYWwuCiAgRGVyIGFsdGUgR2VuZXJhbCB2ZXJmZWhsdCBEaWNoLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkRlciBWb2xsc3RyZWNrZXIgc2NobGFlZ3QgbWl0IGdyb2Vzc3RlciBGcmV1ZGUgYmVzb25kZXJzIGtyYWVmdGlnIGF1ZgpEZWluZW4gR2VnbmVyIGVpbiwgYWxzIGVyIG1lcmt0LCBkYXNzIGRpZXNlciBrdXJ6IHZvcm0gRW5kZSBzdGVodCEKRGVyIEdlbmVyYWwgbGFjaHQgZGljaCBhdXMgdW5kIHVtdGFlbnplbHQgZGVpbmVuIEFuZ3JpZmYuCiAgRHUgdmVyZmVobHN0IGRlbiBhbHRlbiBHZW5lcmFsLgpEZXIgVm9sbHN0cmVja2VyIHNjaGxhZWd0IG1pdCBncm9lc3N0ZXIgRnJldWRlIGJlc29uZGVycyBrcmFlZnRpZyBhdWYKRGVpbmVuIEdlZ25lciBlaW4sIGFscyBlciBtZXJrdCwgZGFzcyBkaWVzZXIga3VyeiB2b3JtIEVuZGUgc3RlaHQhCkRlciBHZW5lcmFsIGxhY2h0IGRpY2ggYXVzIHVuZCB1bXRhZW56ZWx0IGRlaW5lbiBBbmdyaWZmLgogIER1IGtpdHplbHN0IGRlbiBhbHRlbiBHZW5lcmFsIGFtIEJhdWNoLgpEZXIgVm9sbHN0cmVja2VyIHNjaGxhZWd0IG1pdCBncm9lc3N0ZXIgRnJldWRlIGJlc29uZGVycyBrcmFlZnRpZyBhdWYKRGVpbmVuIEdlZ25lciBlaW4sIGFscyBlciBtZXJrdCwgZGFzcyBkaWVzZXIga3VyeiB2b3JtIEVuZGUgc3RlaHQhCkRlciBHZW5lcmFsIGxhY2h0IGRpY2ggYXVzIHVuZCB1bXRhZW56ZWx0IGRlaW5lbiBBbmdyaWZmLgogIER1IHRyaWZmc3QgZGVuIGFsdGVuIEdlbmVyYWwgaGFydC4KRGVyIEdlbmVyYWwgc2FndDogUGZmZmZ0LCBzb3dhcyBrYW5uIGljaCBncmFkZSBub2NoIGVpbnN0ZWNrZW4uCiAgRGV2aWxjaGVuIGtyYXR6dCBkZW4gYWx0ZW4gR2VuZXJhbC4KRGVyIGFsdGUgR2VuZXJhbCBmYWVsbHQgdG90IHp1IEJvZGVuLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBhbHRlbiBHZW5lcmFsc10gVG9kIGRlbiBNb25zdGVyc2NoYWVuZGVybiEgU3RyYWZ0CltNb2VyZGVyOkdlaXN0IGVpbmVzIGFsdGVuIEdlbmVyYWxzXSBEZXZpbGNoZW4hICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKQ2FrZXkgYXJnbHQgaW1tZXIgbm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW1lbi4uLiAoRGlyaW9uLCAyOS4gRGV6IDE5OTksIDE1OjA0OjA1KToKPiBrd2VyIGdpbGRlIGtsZXJ1cwogICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTWl0LCAyOS4gRGV6IDE5OTksIDE0OjU5OjA1ICg1IFRlaWxuZWhtZXIpCgpHdWhmaWUuLi4uLi4uLi5pLnogSm9oYW5uYS4uLi4uLi4uaS5aIEdyZW5kdWxhLi4uLi4uLmkuWiBaYWNhdHQuLi4uLi4uLi4ud1oKTGFyYXIuLi4uLi4uLi4uaS5aCgoKCkRpcmlvbiwgc293YXMgbXVzc3RlIGphIG1hbCBrb21tZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3ZWlsIGdhcm5peCBpbiBkZXIgemVpdHVuZyBzdGVodC4gKERpcmlvbiwgMjkuIERleiAxOTk5LCAxODo1Mjo1Nik6Cj4gRGVpbiBGcmV1bmQgR29sYXMgdGVpbHQgRGlyIG1pdDogb2tpLCBmb2xrcywgaWNoIHdlcmQgbWFsIG1laW5lIGdlYmlldGVyaW4Kdm9uCkRlaW4gRnJldW5kIEdvbGFzIHRlaWx0IERpciBtaXQ6IGRlciBhcmJlaXQgYWJob2xlbiAuLi4KUXVhbG1pICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgoKRGlyaW9uLCBraWNoZXJuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFsc28gd2F0IG51PyAoUmFuaSwgMjkuIERleiAxOTk5LCAyMDoyODo1OSk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIE5naG9nc10gVmVjdG9yIGlzdCBkb29mIHVuZCBzdGlua3QhCltNb2VyZGVyOkdlaXN0IGVpbmVzIE5naG9nc10gQWJlciB2b3JzaWNodCwgVmVjdG9yIGlzY2gga3V1dWwgbWFlbiEKClJhbmksIGdydWViZWxuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhbHNvIHdhdCBudT8gKFZlY3RvciwgMjkuIERleiAxOTk5LCAyMDozMDoyMyk6Cn4jISBybj1SYW5pIHJ0PTk0NjQ5NTczOSByZz1zY2htYXJybgp+IyEgdGlkPTk0NjQ5NTczOQoKLi4uLmhhZXNzbGljaCBiaW4gaWNoIGF1Y2ggbm9jaC4uLi4uCgotLVZlY3Rvci0tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW1tbSAuLi4gKEtqYXNrYSwgMzAuIERleiAxOTk5LCAxNTowMjo1NSk6CkR1IHplaWdzdCBQYW5kb3JhIGRlaW5lIEJ1ZWNoc2UgZGVyIFBhbmRvcmEuCltrZWluZSByZWFrdGlvbl0KRHUgZ2lic3QgZGllIEJ1ZWNoc2UgZGVyIFBhbmRvcmEgYW4gUGFuZG9yYS4KUGFuZG9yYSBzYWd0OiBLamFza2EsIER1IHNvbGx0ZXN0IG1pciBkaWUgQnVlY2hzZSBkb2NoIHplaWdlbi4gQWJlcgpQYW5kb3JhIHNhZ3Q6IGVzIGlzdCB0cm90emRlbSBzdXBlciwgZGFzcyBEdSBzaWUgbWlyIGdlYnJhY2h0IGhhc3QuCgpLamFza2EsIHd1bmRlcnQgc2ljaCB1ZWJlciBucGNzIGRpZSBuaWNodCB3aXNzZW4gd2FzIHNpZSB3b2xsZW4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFpvb2ssIDMwLiBEZXogMTk5OSwgMTU6NDc6MjApOgpbQWJlbnRldWVyOkZvb2Jhcl0gKEF1Z2UgZGVzIFRldWZlbHMpIFdpZSB3ZXJkZSBpY2ggZGllIEZsZWNodGVuIGxvcz8KW0FiZW50ZXVlcjpNYWhhdG1hXSBpZGVudGlmaXppZXJlbgpbVG9kOkxhcnNdIERlciB0b2RicmluZ2VuZGUgRmx1Y2ggZGVzIE1vb3Ntb25zdGVycyBoYXQgZ2VyYWRlIEZvb2JhcgpbVG9kOkxhcnNdIHVtZ2VicmFjaHQuCltBYmVudGV1ZXI6TWFoYXRtYV0gb2RlciBzbwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmltbWVyIHdpZWRlciBuZXR0IDotKSAoS2phc2thLCAzMC4gRGV6IDE5OTksIDIyOjM5OjU2KToKVW0gU2VoZXJpbiBvZGVyIE1hZ2llcmluIHdlcmRlbiB6dSBrb2VubmVuIGZlaGxlbiBEaXIgbm9jaCAyIEFiZW50ZXVlcnB1bmt0ZS4KCktqYXNrYSwgZnJldXQgc2ljaCBkYXNzIFNjaHJhdCBub2NoIG9mZmVuIGlzdCA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmxhbmdzYW0gd2lyZCdzIGdlZmFlaHJsaWNoIDopIChQYXJzaXZhbCwgMzEuIERleiAxOTk5LCAyMTowNjoyOCk6CldpbSBnaWJ0IERpciBhdXMgZGVyIEZlcm5lIGVpbmUgRmxhc2NoZSBDaGFtcGFnbmVyIEN1dmVlIERvbSBQZXJpZ25vbi4KRGllIERzY2h1bmtlIGxlZ3QgYWIgdW5kIGdlcmFldCBzb2ZvcnQgaW4gZWluZSBiZWRlbmtsaWNoZSBTY2hyYWVnbGFnZS4KRHUgZ2xhdWJzdCBuaWNodCwgZGFzcyBEdSBEaWNoIERlaW5lbSBaaWVsIG5hZWhlcnN0LgoKUGFyc2l2YWwgLi4uIHZlcnRyYXV0IGRlbiBiZXNvZmZlbmVuIE1hdHJvc2VuIG5pY2h0IHNvIGdhbnogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWphaHIgdW5kIG5vY2ggbmljaHRzIGluIGRlciBaZWl0dW5nPyAoV2ltLCAgMS4gSmFuIDIwMDAsIDAyOjA5OjU0KToKQWxzbyBkYXMga2FubiBqYSBuaWNodCBhbmdlaGVuLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2VyIGJyYXVjaHQgaGllciBoaWxmZT8gKEdub21lLCAgMS4gSmFuIDIwMDAsIDA1OjA3OjA1KToKICBEZXIgcmllc2lnZSBGZXVlcmRhZW1vbiBzY2hsYWVndCBEaWNoIHp1IEJyZWkuCkxQOiAtNjUKRGVyIERhZW1vbiBob2x0IHNpY2ggSGlsZmUuCkVpbiByaWVzaWdlcyBGZXVlcndlc2VuIGxvZGVydCBoZXJlaW4uCgptb3Jnb3RocyBwcm9ncmFtbWllcnVuZyBiZWhlcmJlcmd0IGVpbmVuIGdld2lzc2VuIHp5bmlzbXVzLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuIChBcHN1LCAgMS4gSmFuIDIwMDAsIDA1OjUxOjI1KToKRWluZSBHYWVydG5lcmluIGtvbW10IGFuLgogIC4uLi4uZXh0cmEvV2FmZmVuc2NobGFnIER1Li4uLi4uLi4uLi4gOiBFbGZlbndhZWNodGVyICoqKioqKioqIC0+IHNlaHIgaGFydApEdSBoYXN0IGpldHp0IDE3NiBMZWJlbnNwdW5rdGUgdW5kIDk4IEtvbnplbnRyYXRpb25zcHVua3RlLgpWb3JzaWNodDogMC4gRmx1Y2h0cmljaHR1bmc6IHN3IApEdSBoYXN0IGpldHp0IDE3NyBMZWJlbnNwdW5rdGUgdW5kIDEwMSBLb256ZW50cmF0aW9uc3B1bmt0ZS4KVm9yc2ljaHQ6IDAuIEZsdWNodHJpY2h0dW5nOiBzdyAKICAuLi5SYXNlcmVpL0ZsYW1tZW5kb2xjaCBEdS4uLi4uLi4uLi4uIDogRWxmZW53YWVjaHRlciAqKioqKioqKiAtPiBoYXJ0CiAgLi4uLm5vcm1hbC9MYW5nc2Nod2VydC4gRWxmZW53YWVjaHRlciA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gdmVyZmVobHQKICAuLi4ubm9ybWFsL0xhbmdzY2h3ZXJ0LiBFbGZlbndhZWNodGVyIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSB2ZXJmZWhsdApEaWUgR2FlcnRuZXJpbiBzYWd0OiBJbW1lciBkaWVzZSBFaWxlLgpFaW4gRWxmZW53YWVjaHRlciBrb21tdCBhbi4KICAuLi5SYXNlcmVpL0ZsYW1tZW5kb2xjaCBEdS4uLi4uLi4uLi4uIDogRWxmZW53YWVjaHRlciAqKioqKioqKiAtPiBzZWhyIGhhcnQKQWxzIE1hbm4ga2FubnN0IGR1IGRlbiBBcm1yZWlmIGRlciBXaWNjYSBuaWNodCB0cmFnZW4uIER1IHd1ZXJkZXN0IGRpZQp3ZWlibGljaGUgTWFnaWUgZGVzIE1vbmRnb2V0dGluLUNvdmVuIGRlcyBNb29yZ3JhYmVucyBuaWNodCB1ZWJlcmxlYmVuLiBEdQpzb2xsdGVzdCBkaWVzZW4gQXJtcmVpZiBlaW5lciBGcmF1IGdlYmVuLiBEaWUgTWFnaWUgemVocnQgc3RhcmsgYW4gZGVpbmVuCktyYWVmdGVuLgpEdSBoYXN0IGpldHp0IDE3NyBMZWJlbnNwdW5rdGUgdW5kIDk1IEtvbnplbnRyYXRpb25zcHVua3RlLgpWb3JzaWNodDogMC4gRmx1Y2h0cmljaHR1bmc6IHN3IApEdSBoYXN0IGpldHp0IDE3NyBMZWJlbnNwdW5rdGUgdW5kIDk2IEtvbnplbnRyYXRpb25zcHVua3RlLgpWb3JzaWNodDogMC4gRmx1Y2h0cmljaHR1bmc6IHN3IAogIC4uLi5ub3JtYWwvTGFuZ3NjaHdlcnQuIEVsZmVud2FlY2h0ZXIgOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHZlcmZlaGx0Cgp1c3cgdXNmCgpEZXIgd2l0eiBpc3QsIGRhc3MgaWNoIGtlaW5lbiBBcm1yZWlmIGRlciBXaWNjYSBoYWJlLCB3ZWlsIGljaCBld2ljaCBuaWNodAptZWhyIGltIERydWRlbm1vb3Igd2FyLgoKQXBzdSwgc3RhdW5lbmQKCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkphLCB3YXMgZGVubiBudW4gPyAoTWFraXNoLCAgMS4gSmFuIDIwMDAsIDE3OjUzOjAwKToKTGlhcmEgdGVpbHQgRGlyIG1pdDogZXJ6YWVobCBtYWwgd2FzIDstKQpMaWFyYSBraXR6ZWx0IERpY2ggYXVzIGRlciBGZXJuZSBhbSBLaW5uLgpEdSB2ZXJzdWNoc3QsIERpY2ggenUgYmVoZXJyc2NoZW4sIG11c3N0IGFiZXIgZG9jaCBsYWNoZW4uCkR1IHRlaWxzdCBMaWFyYSBtaXQ6ICpsYWNoKiBXYXMgZGVubiA/CkxpYXJhIGlzdCBnZXJhZGUgbmljaHQgZGE6IEJpbiBiZXNjaGFlZnRpZ3QuIDotKQoKKmxhY2gqIEVpbmxhZHVuZyB6dW0gYmVzY2hhZWZ0aWd0IHNlaW4gPwpNYWtpc2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndvIHNpY2ggZnVjaHMgdW5kIGhhc2UgZ3V0ZSBuYWNodCBzYWdlbiAoUHVrLCAgMi4gSmFuIDIwMDAsIDE3OjA0OjA1KToKZ2VyYWRlIGluIGRlciBzZXF1ZW56LCBzbyBibGVpYnQgbWFuIHdvaGwgYXVmIGRlbSBsYXVmZW5kZW4gd2VyIGVpbmVtCmdlc2VsbHNjaGFmdCBsZWlzdGV0IDopCgogIEhleGxlIHZlcnN1Y2h0IGVpbmVyIFJhdHRlIEFuZ3JpZmYgbWl0IGVpbmVtIEdhaXdhbi1nZWRhbi11a2UgYWJ6dXdlaHJlbi4KRGllIFJhdHRlIHRyaWZmdCBIZXhsZSBzZWhyIGhhcnQuCkxhcnMgZnJhZ3Q6IEFiZXIgUHVrLCB3aWxsc3QgRHUgbmljaHQgbWl0bWFjaGVuPwoKRHUgc2NodWV0dGVsc3QgZW5lcmdpc2NoIGRlbiBLb3BmIHVuZCBtYWNoc3QgTGFycyBkYXJhdWYgYXVmbWVya3NhbSwKZGFzcyBEdSBoaWVyIHNjaG5lbGxzdG1vZWdsaWNoIHdlZyB3aWxsc3QuCgprb250cm9sbGUKUHVrCnEKcQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW5nZXNjaG5pdHRlbjogKFRodWZoaXIsICAzLiBKYW4gMjAwMCwgMTE6NTc6MzMpOgoKVHN1bmFtaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKRWluIE9yayBqYWd0IERpY2ggbmljaHQgbWVoci4KRGllIEh5ZHJhIGVyaGVidCBzaWNoIGF1cyBkZW0gVGFsIGRlciBMdXBpbmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmVtYW5kIGdpYnQgc2ljaCBlaW4gU3RhZW5kY2hlbiAoR2FzdDEsICAzLiBKYW4gMjAwMCwgMTQ6Mzc6NTUpOgo+IE1hcnZpbiBzYWd0OiBJY2ggZGVua2UsIHdpciB3b2xsZW4gdWViZXIgRGljaCBzcHJlY2hlbiB1bmQgbmljaHQgdWViZXIgbWljaCwKTWFydmluIHNhZ3Q6IEplbWFuZD8KSmVtYW5kIHNhZ3Q6IHVlYmVyIHdlbiBhdWNoIGltbWVyLgpNYXJ2aW4gc2FndDogS2FubnN0IER1IGVpbiBCZWlzcGllbCBuZW5uZW4sIEplbWFuZD8KRm9vYmFyIHNhZ3Q6IE1hcnZpbiwgaGF0bHMgTWF1bC4KSmVtYW5kIHNhZ3Q6IG5laW4uCk1hcnZpbiBzYWd0OiBXYXJ1bSBpc3QgRGVpbmUgRWluc3RlbGx1bmcgc28gbmVnYXRpdiwgSmVtYW5kPwpHYXN0MiBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KRm9vYmFyIGFyZ2x0IGVpbiB3ZW5pZyB2b3Igc2ljaCBoaW4uCkplbWFuZCBzYWd0OiBzbyBiaW4gaWNoIGhhbHQuCk1hcnZpbiBzYWd0OiBXaWUgbGFuZ2UgZ2VodCBkYXMgc2Nob24gc28sIGRhc3MgRHUgaGFsdCBiaXN0LCBKZW1hbmQ/CkZvb2JhciBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KR2FzdDIgd2FlbHp0IHNpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgpKZW1hbmQgc2FndDogc2VlZWhyIGxhbmcuCk1hcnZpbiBzYWd0OiBJY2ggYmluIG5pY2h0IHNpY2hlciwgb2IgaWNoIERpY2ggZ2FueiB2ZXJzdGVoZSEKSmVtYW5kIHNhZ3Q6IGljaCB3ZWlzcy4KZmluZ2VyIHNNYXJ2aW4gc2FndDogRmluZGVzdCBEdSBEaWNoIGVpZ2VudGxpY2ggbmljaHQgaGFlc3NsaWNoPwppdG9CaWVsZWZlbGQgc2FndDogSGltbWVsLi4uCj4gSmVtYW5kIHNhZ3Q6IGRvY2gsIHVuZCBvYgpNYXJ2aW4gc2FndDogRHUgbW9lY2h0ZXN0IHZpZWxsZWljaHQgdWViZXIgZWluIFByb2JsZW0gbWl0IG1pciBzcHJlY2hlbj8KTWFydmluIGdlaHQgbmFjaCBvYmVuLgpGb29iYXIgc3RhcGZ0IG5hY2ggTm9yZGVuLgpKZW1hbmQgZ3JpbnN0LgpKZW1hbmQgd2lua3QuCgpUamEgd2FzIGVzIHNvIGdpYnQuLi4uCgpHYXN0eAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHVuZ2VzY2huaXR0ZW46IChDYXR3ZWF6bGUsICAzLiBKYW4gMjAwMCwgMTQ6Mzg6NTUpOgp+IyEgcm49VGh1ZmhpciBydD05NDY4OTcwNTMgcmc9c2NobWFycm4KfiMhIHRpZD05NDY4OTcwNTMKTHVzY2hlbgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9obmUgS29tbWVudGFyIChQZXJ0aW5heGUsICAzLiBKYW4gMjAwMCwgMjA6NTY6NDUpOgogWXJpbnRyaSB3YW5kZWx0IGhlcmVpbi4gSW4gc2VpbmVyIEVpbGUgc3RvbHBlcnQgU3BlbGxmaXJlLiBFciB3aXJmdCBzaWNoIGluCmRpZSBCdWVzY2hlLCB1bSBkZW0gU3R1cnogaW4gZGVuIFRhbGtlc3NlbCB6dSBlbnRnZWhlbi4gQXJhbmNpYSBzY2hhdXQgRGlyCnRpZWYgaW4gZGllIEF1Z2VuLiBGbGF4dHJpIHNjaGxlaW10IGFldHplbmQgaGVyZWluLiBBcmFuY2lhIHNwcmluZyBpbiBkZW4KVGFsa2Vzc2VsIGhpbmFiISBUb2QgRWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWwgaGF0IGdlcmFkZSBBcmFuY2lhCnVtZ2VicmFjaHQuIFRvZCBQZmZmZmZmZmZmZmZ0Li4uLi4uLlBMVU1QUyEgRmxheHRyaSBzY2hsZWltdCBhZXR6ZW5kIGRhdm9uLgpTcGVsbGZpcmUga29tbXQgYW4gdW5kIGZyYWd0IGRpY2g6ICJLZW5uc3QgZHUgbWVpbmVuIEZyZXVuZCBNci5NYWdpYz8iLgpCZWlsZWlkIGFjaCBub2UgLi4uU3BlbGxmaXJlIGtyYXhlbHQgbGFuZ3NhbSBoaW51bnRlciBpbiBkZW4gVGFsa2Vzc2VsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG9obmUgS29tbWVudGFyIChXaW0sICAzLiBKYW4gMjAwMCwgMjI6MTE6NTEpOgp+IyEgcm49UGVydGluYXhlIHJ0PTk0NjkyOTQwNSByZz1zY2htYXJybgp+IyEgdGlkPTk0NjkyOTQwNQpIbW0uLi4gZ2VodCBkYXMgbm9jaG1hbCBtaXQgbmVyIHZlcm51ZW5mdGlnZW4gRm9ybWF0aWVydW5nPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmVpZ2hlaXQ/IChCaWVsZWZlbGQsICAzLiBKYW4gMjAwMCwgMjI6NTA6NDApOgpVbmdlc2Nobml0dGVuOgoKW1RydmVzOkJpZ2FzIHdlZGVsdCBtaXQgZWluZW0gJ0thZW1wZmVyIGFid2VydGVuJy1GYWVobmNoZW4uXQpCaWdhcyBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgoKVHN0c3RzdHMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGZWlnaGVpdD8gKEdyaW1tYm9ybiwgIDQuIEphbiAyMDAwLCAxOToyMTo0NCk6Cn4jISBybj1CaWVsZWZlbGQgcnQ9OTQ2OTM2MjQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ2OTM2MjQwCj4gVW5nZXNjaG5pdHRlbjoKCkhhZXR0ZXN0IER1cyBtYWwgZ2VzY2huaXR0ZW4uIEVpbmUgS3Vlcnp1bmcgdW0gendlaSB2b2VsbGlnIGlycmVsZXZhbnRlIFplaWxlbgpoYWV0dGUgamEgZ2VudWVndC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZlaWdoZWl0PyAoU3VibGltZSwgIDQuIEphbiAyMDAwLCAyMDo0NzozMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTQ3MDEwMTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ2OTM2MjQwCkRhIGdpYnRzIG51ciBlaW5zIDs9KQoKKioqIEcgIFIgIEkgIE4gIFMgICoqKgpzdWJsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXaW50ZXJwYXJ0eSAyMDAwPz8gKEdyaW1tYm9ybiwgIDQuIEphbiAyMDAwLCAyMzowMDoyMik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTQ3MDIzMjE0IG9nPWFsbGdlbWVpbmVzCn4jISBybj1HcmltbWFuIHJ0PTk0NzAyMzE0OCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk0NjkzMTUxMQpJY2ggZmluZCBEcmVzZGVuIG9rLiBEaWUgU3RlbGxlIG11c3MgbWFuIHNpY2ggZWluZmFjaCBhbnNlaGVuLCB3byBkaWUgRGVwcGVuCmRpZSBrYXB1dHRlIEtpcmNoZSBuYWNoYmF1ZW4uCkRhIGhhZXR0ZSBzbyBlaW4gc2Nob2VuZXMgRWlua2F1ZnN6ZW50cnVtIGhpbmdlcGFzc3QuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogV2ludGVycGFydHkgMjAwMD8/IChHcmltbWJvcm4sICA0LiBKYW4gMjAwMCwgMjM6MDE6NTEpOgp+IyEgb249THVnIG90PTk0NzAyMzI0NiBvZz1hbGxnZW1laW5lcwp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0NzAyMzIxNCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk0NjkzMTUxMQoKS2lyY2hlPyBCcmluZ3Qgd2VyIG5lbiBCZW56aW50YW5rZXIgbWl0PwoKWnVlbmRlbApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9zdGRvZWRlbCAoR3JpbW1ib3JuLCAgNC4gSmFuIDIwMDAsIDIzOjAyOjE2KToKfiMhIG9uPUx1ZyBvdD05NDcwMjMzMTAgb2c9YWxsZ2VtZWluZXMKSGEsCgoKYXVzc2VyZGVtIEdyaW1ob3Nlbm1hdHptYW4sIER1IGJpc3QgZG9jaCBhdWNoIG51ciBuZW4gWm9uaS4uLgoKRXJrbGFlcnQgZWluaWdlcwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPc3Rkb2VkZWwgKEdyaW1tYW4sICA0LiBKYW4gMjAwMCwgMjM6MDM6MzIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0NzAyMzMzNiByZz1zY2htYXJybgp+IyEgdGlkPTk0NzAyMzMzNgpEdSB2ZXJ3ZWNoc2Vsc3QgZGEgd2FzIEx1Z2lsZWluIC4uLiBpY2ggYmluICh3ZXN0KUJlcmxpbmVyIC4uLiBhbHNvIG51ZXggbWl0CnpvbmkgOikKCkFiZXIgZGFzIHdvbGx0IGlociB3aWxkZW4gV2Vzc2llcyBlaCBuaWNodCB3YWhyaGFiZW4gOikKCkdyaW1NYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogT3N0ZG9lZGVsIChXdXJ6ZWwsICA0LiBKYW4gMjAwMCwgMjM6MDU6MTQpOgp+IyEgcm49R3JpbW1hbiBydD05NDcwMjM0MTIgcmc9c2NobWFycm4KfiMhIHRpZD05NDcwMjMzMzYKd2VyIHZvbiAiaWhyIHdlc3NpZXMiIHNwcmljaHQsIGhhdCBzaWNoIGRvY2ggbWFzc2l2IGdlb3V0ZXQuIHpvbmkgYmxlaWJ0IHpvbmkuCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdpbnRlcnBhcnR5IDIwMDA/PyAoR3JpbW1ib3JuLCAgNC4gSmFuIDIwMDAsIDIzOjA1OjI4KToKfiMhIG9uPUdyaW1tYW4gb3Q9OTQ3MDIzMTQ4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1MdWcgcnQ9OTQ3MDIzMDkyIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTQ2OTMxNTExCk5hamEgLi4uIG5hY2ggQm90c3dhbmEga2FubiBtYW4gd2VuaWdzdGVucyBmbGllZ2VuIC4uLgoKR3JpbU1hbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2ludGVycGFydHkgMjAwMD8/IChHcmltbWJvcm4sICA0LiBKYW4gMjAwMCwgMjM6MDU6NDQpOgp+IyEgb249TWFyY3VzIG90PTk0NzAyMzI5OCBvZz1hbGxnZW1laW5lcwp+IyEgcm49R3JpbW1hbiBydD05NDcwMjMxNDggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NDY5MzE1MTEKRHJlc2RlbiBoYXQgbmVuIEZsdWdoYWZlbi4KCkNpYW8sIE1hcmN1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogV2ludGVycGFydHkgMjAwMD8/IChHcmltbWJvcm4sICA0LiBKYW4gMjAwMCwgMjM6MDU6NTYpOgp+IyEgb249THVnIG90PTk0NzAyMzM2OCBvZz1hbGxnZW1laW5lcwp+IyEgcm49TWFyY3VzIHJ0PTk0NzAyMzI5OCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk0NjkzMTUxMQoKRmx1Z2hhZmVuPwoKRmx1Z2hhZWZjaGVuIHRyaWZmdCBlcyB2aWVsbGVpY2h0LgoKQmFoIEh1bWJ1Z2VuZApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdpbnRlcnBhcnR5IDIwMDA/PyAoR3JpbW1ib3JuLCAgNC4gSmFuIDIwMDAsIDIzOjA2OjEyKToKfiMhIG9uPVN1YmxpbWUgb3Q9OTQ3MDIzNDkwIG9nPWFsbGdlbWVpbmVzCn4jISBybj1MdWcgcnQ9OTQ3MDIzMzY4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTQ2OTMxNTExCkhlaXNzdCBkYXMsIGRhc3MgZGllIEhhdXB0c3RyYXNzZSBpbSBTdHJhc3NlbmRvcmYgRHJlc2RlbiBhbGxlIDMgVGFnZSBtYWwKZ2VzcGVycnQgd2lyZCwgbnVyIGRhbWl0IGVpbiBrbGVpbmVzIEZsdWd6ZXVnIGxhbmRlbiBrYW5uID8gOz0pCgpzdWJsLCBqZXR6dCBnZWhlbmQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE9zdGRvZWRlbCAoR3JpbW1hbiwgIDQuIEphbiAyMDAwLCAyMzowNjoyNyk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTQ3MDIzNTE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ3MDIzMzM2ClVtIGRhcyBlaW4gZnVlciBhbGxlIE1hbCB6dSBiZWVuZGVuIHVuZCByaWNodGlnenVzdGVsbGVuIDoKRXMgZ2lidCBlaCBudXIgRGV1dHNjaGUgdW5kIGJlcmxpbmVyIC4uLiB3aXIgd2FyZW4gc2Nob24gaW1tZXIgd2FzIGJlc29uZGVyZXMKOikKCkdyaW1NYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdpbnRlcnBhcnR5IDIwMDA/PyAoR3JpbW1ib3JuLCAgNC4gSmFuIDIwMDAsIDIzOjA2OjMyKToKfiMhIG9uPUx1ZyBvdD05NDcwMjM1NDUgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVRhcmluYSBydD05NDcwMjM0OTggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NDY5MzE1MTEKCkhtPwoKQ2VsbGUhCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdpbnRlcnBhcnR5IDIwMDA/PyAoR3JpbW1ib3JuLCAgNC4gSmFuIDIwMDAsIDIzOjA2OjQyKToKfiMhIG9uPVd1cnplbCBvdD05NDcwMjM1ODYgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUx1ZyBydD05NDcwMjM1NDUgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NDY5MzE1MTEKbmljaHQgc28gc2NobmVsbCwgZ3JpbW1ib3JuIGtvbW10IG5pY2h0IG1laHIgbmFjaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogT3N0ZG9lZGVsIChTdWJsaW1lLCAgNC4gSmFuIDIwMDAsIDIzOjA2OjQ0KToKfiMhIHJuPVd1cnplbCBydD05NDcwMjM1MTQgcmc9c2NobWFycm4KfiMhIHRpZD05NDcwMjMzMzYKSWNoIGJla2VubiBtaWNoIGF1Y2ggISBVbmQgaWNoIHN0ZWggZGF6dSwgV2VzdGJlcmxpbmVyIHp1IHNlaW4uIDs9KQpzdWJsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBPc3Rkb2VkZWwgKFRhcmluYSwgIDQuIEphbiAyMDAwLCAyMzoxMToxNSk6Cn4jISBybj1HcmltbWFuIHJ0PTk0NzAyMzU4NyByZz1zY2htYXJybgp+IyEgdGlkPTk0NzAyMzMzNgpCZXJsaW5lcj8gbWFnIGljaCBhbSBsaWVic3RlbiBtaXQgUGxhdW1lbm11cyB1bmQgR2xhc3VyIDotKQoKVGFyaW5hLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2ludGVycGFydHkgMjAwMD8/IChHb2xhcywgIDQuIEphbiAyMDAwLCAyMzoyMjozMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTQ3MDIzNTI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ2OTMxNTExCm51IGthbm4gaWNoIG1laW5lbiBtdW5kIG5pY2ggbWVociBoYWx0ZW4gLi4uCnVudGVyICJkZXV0c2NoZW4iIGdpYnQgZXMgbnVubWFsIGRyZWkgYXJ0ZW4gLi4uCndlc3NpcyAuLi4gbmFqYSwga2VubnQgamEgamVkZXIgOigKb3NzaXMgLi4uIG5pY2h0IHdlbmlnZXIgc2NobGltbQoKdW5kIGhhbHQgYmVybGluZXIhCgpnb2xhcwpbSVJPTlk9T0ZGXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogV2ludGVycGFydHkgMjAwMD8/IChNYXJjdXMsICA0LiBKYW4gMjAwMCwgMjM6Mjg6MDkpOgp+IyEgcm49R29sYXMgcnQ9OTQ3MDI0NTUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ2OTMxNTExCk5lbmUuCgpFcyBnaWJ0OiBCYXllcm4gdW5kIEZpc2Noa29lcHBlLgoKQnp3LjogQmF5ZXJuLCBGcmFua2VuIHVuZCBGaXNjaGtvZXBwZS4KCkNpYW8sIE0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdpbnRlcnBhcnR5IDIwMDA/PyAoU3VibGltZSwgIDUuIEphbiAyMDAwLCAwMDoxOTowNyk6Cn4jISBybj1NYXJjdXMgcnQ9OTQ3MDI0ODg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ2OTMxNTExCklociB2ZXJrZW5udCBkYSBnbGF1YiBpY2ggYWxsZSB3YXMgOykKRXMgZ2lidCA6ICghKQoKICAgIDEuIEJlcmxpbmVyIChudXIgZWNodGUgISkgOykKCiAgICB1bmQKCiAgICAyLiBGdXJ6aXMgOz0pCgpEYXMgd2FycyBkYW5uIGFiZXIgYXVjaCBzY2hvbiB3aWVkZXIuLi4KCnN1YmwsbWFsIGVpbiBNYWNodHdvcnQgc3ByZWNoZW5kIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdpbnRlcnBhcnR5IDIwMDA/PyAoVGFyaW5hLCAgNS4gSmFuIDIwMDAsIDAwOjIyOjQ5KToKfiMhIHJuPVN1YmxpbWUgcnQ9OTQ3MDI3OTQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ2OTMxNTExCkVzIGdpYnQgbnVyIGVjaHRlIEJlcmxpbmVyPyBXYXMgc2luZCBkYXMgZnVlciBMZXV0ZT8KClRhcmluYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFdpbnRlcnBhcnR5IDIwMDA/PyAoTHVnLCAgNS4gSmFuIDIwMDAsIDAwOjIzOjE0KToKfiMhIHJuPVRhcmluYSBydD05NDcwMjgxNjkgcmc9c2NobWFycm4KfiMhIHRpZD05NDY5MzE1MTEKCk5hIHdlbGNoZSBtaXQgTWFybWVsYWRlIGRyaW4KCkJhZWgKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogV2ludGVycGFydHkgMjAwMD8/IChUYXJpbmEsICA1LiBKYW4gMjAwMCwgMDA6MjQ6MjYpOgp+IyEgcm49THVnIHJ0PTk0NzAyODE5NCByZz1zY2htYXJybgp+IyEgdGlkPTk0NjkzMTUxMQpJY2ggZGFjaHRlIHNjaG9uLCB3ZWxjaGUgbWl0IFNlbmYgZ2VmdWVsbHQgOi0pCgpUYXJpbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFdpbnRlcnBhcnR5IDIwMDA/PyAoSG9vZCwgIDUuIEphbiAyMDAwLCAwMjowNzoxNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTQ3MDIzMjIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ2OTMxNTExCm9iIGRhcyB2ZXJoYWVsdG5pcyB2b24gZ2ViYXV0ZW4gZWlua2F1ZnNoYWV1c2VybiB6dSByZXN0YXVyaWVydGVuCmJhdWRlbmttYWVsZXJuIG51biA5OToxIG9kZXIgMTAwOjAgc3RlaHQsIHdhZXJlIGluIGRlciB0YXQgc3RhZHRiaWxkbWFlc3NpZwprYXVtIGF1ZmdlZmFsbGVuLiBpbW1lcmhpbiBtYWNodCBkZXIgZWluZSBiYXUgZGFmdWVyIGF1Y2ggamVuc2VpdHMgdm9uCmRyZXNkZW4gdm9uIHNpY2ggcmVkZW4gdW5kIHppZWh0IGF1Y2ggbWFsIG5lbiBwYWFyIHRvdXJpc3RlbiBhbi4Kd2VubiBkaWUgbmFlbWxpY2ggc28gd2VpdGVyYmFzdGVsbiBhbiBlaW5rYXVmc3plbnRyZW4sIGJsZWlidCBiYWxkIGZ1ZXIKamVkZXMgbnVyIG5vY2ggZWluIGthZXVmZXIgdWViZXIuCm5hIGphICJkZXIga3VuZGUgaXN0IChkYW5uIGVuZGxpY2ggd2llZGVyKSBrb2VuaWciCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBXaW50ZXJwYXJ0eSAyMDAwPz8gKEVuZGVyLCAgNS4gSmFuIDIwMDAsIDA5OjIxOjE2KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDcwMjMyMjIgcmc9c2NobWFycm4KfiMhIHRpZD05NDY5MzE1MTEKTW9tZW50YW4gc2llaHQgZGllIEtpcmNoZSBnZW5hdXNvIGF1cyB3aWUgZGVyIHZlcmh1ZWxsdGUgcmVpY2h0c3RhZywgYWxzbwpkZW5rdCBibG9zcyBuaWNodCwgZGFzIGlociB3YXMgenUgZ2VzaWNodGUga3JpZWd0IHZvbiBkZXIgRnJhdWVua2lyY2hlCkFiZXIgenVtIEdsdWVjayBzaW5kIG5vY2ggZWluIHBhYXIgYW5kZXJlIHNjaG9lbmUgQmF1dGVuIHZvbiBEcmVzZGVuCnN0ZWhlbmdlYmxpZWJlbi4KRW5kZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogT3N0ZG9lZGVsIChFbmRlciwgIDUuIEphbiAyMDAwLCAwOToyMjozMik6Cn4jISBybj1XdXJ6ZWwgcnQ9OTQ3MDIzNTE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ3MDIzMzM2Clpvbmk/IFdlc3NpPyBHaWJ0cyBkYSBub2NoIHVudGVyc2NoaWVkZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdpbnRlcnBhcnR5IDIwMDA/PyAoRW5kZXIsICA1LiBKYW4gMjAwMCwgMDk6MjM6NDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0NzAyMzU1NiByZz1zY2htYXJybgp+IyEgdGlkPTk0NjkzMTUxMQpIYXN0IGphIGtlaW5lIEFobnVuZy4KRW5kZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBXaW50ZXJwYXJ0eSAyMDAwPz8gKEVuZGVyLCAgNS4gSmFuIDIwMDAsIDA5OjI0OjQ1KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDcwMjM1NzIgcmc9c2NobWFycm4KfiMhIHRpZD05NDY5MzE1MTEKTmVpbiwgZWhlciBpc3Qgc28gYWxsZSA0IE1vbmF0ZSBlaW5tYWwgZGFzIFN0YWR0emVudHJ1bSB1bSBkZW4gQmFobmhvZiBoZXJ1bQpnZXNwZXJydCwgd2VpbCBtYW4gYmVpbSBCYXVlbiBCb21iZW4gZmluZGV0LgpFbmRlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE9zdGRvZWRlbCAoRW5kZXIsICA1LiBKYW4gMjAwMCwgMDk6MjU6NDkpOgp+IyEgcm49R3JpbW1hbiBydD05NDcwMjM1ODcgcmc9c2NobWFycm4KfiMhIHRpZD05NDcwMjMzMzYKLi4uIC0+IFd1ZXJzdGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdpbnRlcnBhcnR5IDIwMDA/PyAoRW5kZXIsICA1LiBKYW4gMjAwMCwgMDk6MzE6MzEpOgp+IyEgcm49SG9vZCBydD05NDcwMzQ0MzQgcmc9c2NobWFycm4KfiMhIHRpZD05NDY5MzE1MTEKSW4gRHJlc2RlbiBoYXQgbWFuIGRhcyBQcm9ibGVtLCBkYXMgZXMgaW4gZGVyIFN0YWR0IGthdW0gVmVyYnJhdWNoZXJtYWVrcnRlCmdpYnQsIHdhcyBtZWluc3QgZHUgd2FzIGR1IGRhIG9obmUgQXV0byBpbiBkZXIgbmFoZWdlbGVnZW5lbiBLYXVmaGFsbGUKYW56dXN0ZWhlbiBoYXN0LCB1bmQgZGFubiBhdWNoIG5vY2ggYmV6YWhsZW4ga2FubnN0LiBEYSBpc3Qgc2Nob24gZ2FueiBndXQsCmRhcyB3ZW5pZ3N0ZW5zIGF1c3NlcmhhbGIsIGJ6dywgaW4gZGVuIEJFVE9OV09ITlNJTE9HRUdFTkRFTiBnZW51ZwpFaW5rYXVmc3plbnRyZW4gZ2ViYXV0IHdlcmRlbi4KQXVzc2VyZGVtIHJlaWNoZW4gZGllIDMgUGFzc2FnZW4gUHJhZ2Vyc3RyYXNzZS9BbHRtYXJrdCwgS29lbmlnc2JydWVja2VyClN0cmFzc2UgdW5kIEFscGVydHBsYXR6IG51biB3aXJrbGljaCBuaWNodCBmdWVyIHNvIGVpbmUgU3RhZHQsIHdlbm4gbWFuIGJlaQpsZXR6dGVyZW4gYmVpZGVuIHVlYmVyaGF1cHQgbm9jaCB2b24gRWlua2F1ZnNwYXNzYWdlbiBzcHJlY2hlbiBrYW5uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogT3N0ZG9lZGVsIChSYXJkaWFuLCAgNS4gSmFuIDIwMDAsIDEyOjAwOjQ1KToKfiMhIHJuPUdyaW1tYW4gcnQ9OTQ3MDIzNTg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ3MDIzMzM2CkFsc28gaWNoIGtlbm4gZGEgZWluIHBhYXIgQmVybGluZXIsIGRpZSBpY2ggYWJlciBnYXIgbmljaHQgc28gYmVzb25kZXJzCmZpbmRlLi4uIGFsc28gU2NobHVzcyBtaXQgZGVuIFZlcmFsbGdlbWVpbmVydW5nZW4sIGhhYnQgZXVjaCBhbGxlIGxpZWJ0LCBldGMuCnBwcCAob2RlcndpZWRhc2hlaXNzdCkKClJhci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE9zdGRvZWRlbCAoUmFyZGlhbiwgIDUuIEphbiAyMDAwLCAxMjowMzozMSk6Cn4jISBybj1UYXJpbmEgcnQ9OTQ3MDIzODc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ3MDIzMzM2CkRhcywgd2FzIER1IG1laW5zdCwgc2luZCBQZmFubmt1Y2hlbiEhIQoKUmFyLCBrZW5udCBzaWNoIGRhIGF1cy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBXaW50ZXJwYXJ0eSAyMDAwPz8gKFJhcmRpYW4sICA1LiBKYW4gMjAwMCwgMTI6MDU6NTIpOgp+IyEgcm49RW5kZXIgcnQ9OTQ3MDYwNDc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ2OTMxNTExClN0YXJrISBpY2ggaGF0dGUgZGFtYWxzIG5hZW1saWNoIGtlaW5lIC4uLiBhZWguLi4gWmVpdCwgbWlyIGRlbiBSZWljaHN0YWcgaW4KSG9jaHplaXRzZ2V3YW5kIGFuenVzY2hhdWVuLi4uIGRhbm4ga2FubiBpY2ggZGFzIGphIGVuZGxpY2ggaW0gTWFlcnoKbmFjaGhvbGVuISAqZnJldSoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogV2ludGVycGFydHkgMjAwMD8/IChSYXJkaWFuLCAgNS4gSmFuIDIwMDAsIDEyOjA3OjA2KToKfiMhIHJuPUVuZGVyIHJ0PTk0NzA2MTA5MSByZz1zY2htYXJybgp+IyEgdGlkPTk0NjkzMTUxMQpBbnN0ZWhlbiBpbiBkZW4gRWlua2F1ZnNoYWxsZW4gdm9uIERyZXNkZW4/IERhbm4gaGF0IHNpY2ggZG9ydCBqYSB3b2hsIHNlaXQKZGVyIFdlbmRlIGF1c3NlciBkZW4gUHJlaXNlbiBuaXggZ2VhZW5kZXJ0ISA6KQoKUmFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogT3N0ZG9lZGVsIChHbm9tZSwgIDUuIEphbiAyMDAwLCAxMzoxNTo0OCk6Cn4jISBybj1SYXJkaWFuIHJ0PTk0NzA3MDIxMSByZz1zY2htYXJybgp+IyEgdGlkPTk0NzAyMzMzNgpuZWluLCBzaWUgbWVpbnQgYmVybGluZXIuCnBmYW5ua3VjaGVuIHNpbmQgZGllIGRpbmdlciBhdXNzZXIgcGZhbm5lLCB3aWUgZGVyIG5hbWUgc2Nob24gc2FndC4uLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBXaW50ZXJwYXJ0eSAyMDAwPz8gKE1haGF0bXUsICA1LiBKYW4gMjAwMCwgMTM6MjY6MTApOgp+IyEgcm49UmFyZGlhbiBydD05NDcwNzA0MjYgcmc9c2NobWFycm4KfiMhIHRpZD05NDY5MzE1MTEKRW5kZXIgaGF0IG9mZmVuc2ljaHRsaWNoIG5vY2ggbmllIFZlcmdsZWljaGUgbWl0IGFuZGVyZW4gU3RhZWR0ZW4gZ2V6b2dlbi4KUmVpbiBmbGFlY2hlbi0gdW5kIGVpbndvaG5lcm1hZXNzaWcgaGF0IERyZXNkZW4gbmFlbWxpY2ggZWluZSBvcHRpbWFsZQpWZXJicmF1Y2hlcm1hcmt0dmVydGVpbHVuZy4gV2VubiBpY2ggdWViZXJsZWdlLCB3YXMgaWNoIGluIEJlcmxpbiwKTWFnZGVidXJnLCBtZWluZW0gSGVpbWF0ZG9yZiBvZGVyIGRlbSBEZWdnZW5oYXVzZXJ0YWwgYW0gQm9kZW5zZWUgcnVtLQprdXJ2ZW4gbXVzcyB1bSB3YXMgenUgZmluZGVuIC4uLgpTb2xsIGhlaXNzZW46IFBybyBGcmF1ZW5raXJjaGVud2llZGVyYXVmYmF1LiBJcmdlbmR3byBtdXNzIGRvY2ggZGFzIGdhbnplCldlaWhyYXVjaHN6ZXVncyBoaW5nZXJhZXVjaGVydCB3ZXJkZW4uIERpZSBGcmF1ZW5raXJjaGUgaXN0IGVpbiBzY2hvZW5lcywKZ3Jvc3NlcyBQcml2YXQtQUJNLVByb2pla3QgLi4uCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBPc3Rkb2VkZWwgKFJhcmRpYW4sICA1LiBKYW4gMjAwMCwgMTQ6MDY6NTEpOgp+IyEgcm49R25vbWUgcnQ9OTQ3MDc0NTQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ3MDIzMzM2CldhcyBEdSBtZWluc3QsIHNpbmQgRWllcmt1Y2hlbi4gS2VubnN0IERpY2ggd29obCBuaWNodCBhdXMsIHdhcz8gOykKClJhciwgaXN0IEJlcmxpbmVyIHVuZCBsYWVzc3Qgc2ljaCBuaWNodCBpbiBkaWUgUGZhbm5lIGhhdWVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBPc3Rkb2VkZWwgKEdub21lLCAgNS4gSmFuIDIwMDAsIDE0OjExOjQ1KToKfiMhIHJuPVJhcmRpYW4gcnQ9OTQ3MDc3NjExIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ3MDIzMzM2CmVpZXJrdWNoZW4gaXN0IGRhcyBkZXV0c2NoZSB3b3J0IGZ1ZXIgb21lbGV0dGUuIDopCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogT3N0ZG9lZGVsIChNYWhhdG11LCAgNS4gSmFuIDIwMDAsIDE0OjEzOjI1KToKfiMhIHJuPUdub21lIHJ0PTk0NzA3NzkwNSByZz1zY2htYXJybgp+IyEgdGlkPTk0NzAyMzMzNgpFaWVya3VjaGVuIGlzdCBkYXMgZGV1dHNjaGUgU3lub255bSBmdWVyIFBhZHJlaWMuCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBPc3Rkb2VkZWwgKFJhcmRpYW4sICA1LiBKYW4gMjAwMCwgMTQ6MTQ6NTEpOgp+IyEgcm49R25vbWUgcnQ9OTQ3MDc3OTA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ3MDIzMzM2ClNpZWhzdGUsCk9tZWxldHRlcyBnaWJ0cyBpbiBCZXJsaW4gZ2FyIG5pY2h0Li4uCk5pY2h0IHdpcmtsaWNoLCB6dW1pbmRlc3QuCgpSYXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUEVUWiAoTWFoYXRtdSwgIDUuIEphbiAyMDAwLCAxNDoyMDo0Nik6CkFud2VzZW5kZSBCaWVyc2NodWV0dGxlciAoNyBTcGllbGVyKToKTmFtZSAgICAgICAgICBMUCAgIE1QIFN0dWZlIElkbGUgQWxrb2hvbCAgICBPcnQKTWFoYXRtYSAgICAgIDIyNiAgMjAyICAgOTEgICAgICAgbnVlY2h0ZXJuICBBdWYgZWluZW0gR2ViaXJnc3BmYWQgICAgICAgICAKQWxwaGEgICAgICAgIDIyNiAgMTkyICAgNTMgICAgICAgbnVlY2h0ZXJuICBQZmxhbnplbmViZW5lICAgICAgICAgICAgICAgICAKSHVtbmkgICAgICAgIDE5NCAgMTU0ICAgMjUgICAgSSAgbnVlY2h0ZXJuICBaZWxsZSA1QiAgICAgICAgICAgICAgICAgICAgICAKR3VhcmQgICAgICAgIDIxOCAgMjEwICAgNTkgICAgaSAgbnVlY2h0ZXJuICBJbSBSdW5kZ2FuZyBkZXMgd2Vpc3NlbiBUdXJtcyAKTWFoYXRtdSAgICAgICA1OCAgIDgyICAgIDQgICAgICAgYmV0cnVua2VuICBJbSBXZWlua2VsbGVyICAgICAgICAgICAgICAgICAKR2FieWxvbiAgICAgIDIxMCAgMjI2ICAgMjggICAgSiAgbnVlY2h0ZXJuICBEaWUgVG90ZW5ncmFlYmVya25laXBlICAgICAgICAKU2NobGVpY2hlciAgIDE4NiAgMjAwICAgMzYgICAgaiAgbnVlY2h0ZXJuICBFaW5lIEJ1Y2hoYW5kbHVuZyAgICAgCgpNZWluZSBNaXRiaWVyc2NodWV0dGxlciB3ZXJkZW4gQWJzdGluZW56bGVyICpidWh1dXV1Ki4KCk1haGF0bXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdpbnRlcnBhcnR5IDIwMDA/PyAoSGlnaHQsICA1LiBKYW4gMjAwMCwgMTU6Mzk6NTIpOgp+IyEgcm49TWFyY3VzIHJ0PTk0NzAyNDg4OSByZz1zY2htYXJybgp+IyEgdGlkPTk0NjkzMTUxMQpkYW5rZSBtYXJjdXMgLm8pIGVuZGxpY2ggZWluZXIgZGVycyByaWNodGljaCBzdGVsbHQgLi4uLiB1bmQgZnJhbmdlbiBzYW4gZGllCm1hY2hkICxvKQoKaGlnaHQgKmV4dHJlbXNlbmZlbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBPc3Rkb2VkZWwgKEhpZ2h0LCAgNS4gSmFuIDIwMDAsIDE1OjQ0OjI2KToKfiMhIHJuPUdub21lIHJ0PTk0NzA3NDU0OCByZz1zY2htYXJybgp+IyEgdGlkPTk0NzAyMzMzNgpvZWhtIHdpZSBudSBzaW5kIHBmYW5ua3VjaGVuIGluIGRlbSBmYWxsIG51IGRhcyBzZWxiZSB3aWUgZWllcmt1Y2hlbiBvZGVyIGRhcwpzZWxiZSB3aWUga3JhcGZlbiA/Pz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogV2ludGVycGFydHkgMjAwMD8/IChFbmRlciwgIDUuIEphbiAyMDAwLCAxNTo0NzoxMik6Cn4jISBybj1NYWhhdG11IHJ0PTk0NzA3NTE3MCByZz1zY2htYXJybgp+IyEgdGlkPTk0NjkzMTUxMQpFcyB6YWVobHQgbmljaHQgZGllIEFuemFobCBvZGVyIGRpZSBEaWNodGUsIHNvbmRlcm4gZGllIFF1YWxpdGFldCBkZXIKVmVyYnJhdWNoZXJtYWVya3RlIGluIERyZXNkZW4uIFdlciBmdWVyIGVpbmVuIGFuc3RhZW5kaWdlbiBQcmVpcyBrYXVmZW4gd2lsbCwKZGVyIHNjaGV1dCBuaWNodCBkaWUgRmFocnRrb3N0ZW4gdW5kIGZhZWhydCBhbiBkZW4gUmFuZCB2b24gRHJlc2RlbiB6dW0KRWlua2F1ZmVuIHVuZCBpc3QgZGFiZWkgbnVyIHdlbmlnIGxhZW5nZXIgdW50ZXJ3ZWdzLgpFbmRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogT3N0ZG9lZGVsIChHbm9tZSwgIDUuIEphbiAyMDAwLCAxNTo0OTowNCk6Cn4jISBybj1IaWdodCBydD05NDcwODM0NjYgcmc9c2NobWFycm4KfiMhIHRpZD05NDcwMjMzMzYKYmVybGluZXIgIT0gcGZhbm5rdWNoZW4gIT0gZWllcmt1Y2hlbiAob21lbGV0dGUpICE9IGtyYXBmZW4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGEsIGRhcyBzaW5kIHNpZSBhbHNvIHdlcnQgOikgKFB1aywgIDUuIEphbiAyMDAwLCAxNjoyNjo1NSk6CnUgYmV0cmFjaHRlc3QgZGllIEJsaXR6YXh0IGVpbmdlaGVuZC4KU2llIGlzdCBlaW5lIDItSGFuZHdhZmZlIHVuZCBnZWhvZXJ0IGRlciBHcnVwcGUgZGVyIEtsaW5nZW4tSGllYndhZmZlbiBhbi4gU2llCm1hY2h0IHNpY2hlcmxpY2ggZGVuIGFic29sdXQgaG9lY2hzdG1vZWdsaWNoZW4gU2NoYWRlbi4gU2llIGtvZW5udGUgZmFzdApCbGl0emUgc2NobGV1ZGVybi4gU2llIGhhY2t0IERlaW5lIEdlZ25lciBpbiBTdHVlY2tlLiAKU2llIGlzdCBmdWVyIGVpbmVuIFdhZmZlbnNjaGxhZyBwaGFudGFzdGlzY2ggZ2VlaWduZXQuIFNpZSBiZXNpdHp0IHZlcmJvcmdlbmUKRWlnZW5zY2hhZnRlbiwgZGllIGRpZSBLYW1wZmtyYWZ0IHZpZWxsZWljaHQgZXJob2VoZW4uIFNpZSBpc3QgYXVzZ2V6ZWljaG5ldApnZXNjaGFlcmZ0LiBTaWUgaGF0IHVuZ2VmYWVociBlaW4gR2V3aWNodCB2b24gMjExOSBHcmFtbS4gRHUgd3VlcmRlc3QgaWhyZW4KV2VydCBhdWYgZXR3YSAzMTAzIE11ZW56ZW4gc2NoYWV0emVuLiBTaWUgaXN0IG5pY2h0IGJlc2NoYWVkaWd0LgoKCnZlcmthdWZlIGJsaXR6YXh0CkRlciBIYWVuZGxlciBzYWd0OiBOYWNoIGRlciBha3R1ZWxsZW4gTWFya3RsYWdlIGthbm4gaWNoIERpciBkYWZ1ZXIgbnVyIDEyMjIKTXVlbnplbiBiaWV0ZW4sIG9id29obCBlaW5lIEJsaXR6YXh0IGVpZ2VudGxpY2ggMzEwMCBNdWVuemVuIHdlcnQgd2FlcmUuCldpbGxzdCBEdSBlcyBtaXIgZGFmdWVyIHVlYmVybGFzc2VuPyAoamEvbmVpbikKamEKRGVyIEhhZW5kbGVyIGZpbmRldCBHZWZhbGxlbiBhbiBkZXIgQmxpdHpheHQgdW5kIGxlZ3Qgc2llIHp1IHNlaW5lbgpQcml2YXRzYWNoZW4uCkRlciBIYWVuZGxlciB6YWhsdCBEaXIgMTIyMiBHb2xkc3R1ZWNrZS4KCld1c3N0ZSBpY2hzIGRvY2gsIGZ1ZXIgc28gbmUgbXVlbGwgYmVrb21tdCBtYW4gbm9jaCB3ZW5pZ2VyIGFscyBmdWVyIGRlbiBWUyA6KQphbHNvIEthcmljLCBzdGVpZyB1bSwgQWV4dGUgc2luZCBlYmVuIG5pY2hzIHdlcnQgOikKClB1ayBmaW5kZXQgQWV4dGUgc2luZCBlYmVuIHdpcmtsaWNoIG5peCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBXaW50ZXJwYXJ0eSAyMDAwPz8gKE1haGF0bXUsICA1LiBKYW4gMjAwMCwgMTY6NTA6MDEpOgp+IyEgcm49RW5kZXIgcnQ9OTQ3MDgzNjMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ2OTMxNTExCldlbm4gRHUgZmluZGVzdCwgZGFzcyBMaWRsIG9kZXIgTmV0dG8gdGV1ZXIgc2luZCwgc29sbHRlc3QgRHUgd2lya2xpY2gKYmVpIGRlciBGcmF1ZW5raXJjaGUgZWlua2F1ZmVuLiBXZW5uIGRpZSBkYSBtYWwgZWluZW4gRFJLLVN0dWV0enB1bmt0CmF1Zm1hY2hlbi4KCk1haGF0bXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCB3dXNzdGUgZXMgc2Nob24gaW1tZXIhIChBbHBoYSwgIDUuIEphbiAyMDAwLCAxODo0ODo0OCk6CgpbcmdyaW5zIGFscGhhXQoKQWJlciBkaWVzZXIgU3BpZWxlciBzdGVodCBkb2NoIG5lYmVuIERpciEKCldvaGVyIHdlaXNzIGRhcyBNRywgZGFzcyBpY2ggZ3JhZCBlaW4gd2VuaWcgbmViZW4gbWlyIHN0ZWhlPyBLYW1lcmFzIGltCk1vbml0b3I/IENvb2wgOikKQWxwaGEgc3RlaHQgZWluIHdlbmlnIG5lYmVuIHNpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBPc3Rkb2VkZWwgKE11cGZlbCwgIDUuIEphbiAyMDAwLCAxOToyMjoxMCk6Cn4jISBybj1Hbm9tZSBydD05NDcwODM3NDQgcmc9c2NobWFycm4KfiMhIHRpZD05NDcwMjMzMzYKYmVybGluZXIgKGJhZWxsY2hlbikgPT0ga3JhcGZlbgoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE9zdGRvZWRlbCAoR3JpbW1hbiwgIDUuIEphbiAyMDAwLCAyMDo0NjowMSk6Cn4jISBybj1Hbm9tZSBydD05NDcwNzQ1NDggcmc9c2NobWFycm4KfiMhIHRpZD05NDcwMjMzMzYKRGFubiBnZWggbWFsIGluIG5lIEJhZWNrZXJlaSBtaXQgbmVyIGFsdGVuIEJlcmxpbmVyIFZlcmthZXVmZXJpbiB1bmQgYmVzdGVsbApiZXJsaW5lciAuLi4gZGllIHdlaXNzIHp3YXIgd2FzIGR1IG1laW5zdCwgaGFlbHQgZGljaCBhYmVyIGZ1ZXIgbmVuIFRvdXJpc3Rlbgp1bmQgaXN0IHNjaGVpc3NmcmV1bmRsaWNoIHp1IGRpciA6KQoKR3JpbU1hbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogT3N0ZG9lZGVsIChNYWtpc2gsICA1LiBKYW4gMjAwMCwgMjA6NDY6NTcpOgp+IyEgcm49R3JpbW1hbiBydD05NDcxMDE1NjEgcmc9c2NobWFycm4KfiMhIHRpZD05NDcwMjMzMzYKQWxzIHd1ZXJkZSBtYW4gaW4gQmVybGluIGViZW4gbmUgU2VtbWVsIGJlc3RlbGxlbi4uLgoKRWluIGFkb3B0aWVydGVyIEJlcmxpbmVyCk1ha2lzaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogT3N0ZG9lZGVsIChOZXZvaywgIDUuIEphbiAyMDAwLCAyMDo0Nzo0MSk6Cn4jISBybj1HcmltbWFuIHJ0PTk0NzEwMTU2MSByZz1zY2htYXJybgp+IyEgdGlkPTk0NzAyMzMzNgpIZWlzc3QgZGFzcywgZGFzIGlociBzb25zdCBkaWUgdW5mcmV1bmRsaWNoc3RlbiBMZXV0ZSBkZXIgV2VsdCBzZWlkIHdlbm4gbWFuCnNpY2ggbmV0IGFscyBUb3VyaSBvdXRldCwgR3JpbW15PyA6KQoKTmV2b2ssIGRlciBzb3dhcyBzY2hvbiBpbW1lciBnZWFobnQgaGF0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBPc3Rkb2VkZWwgKFJhcmRpYW4sICA1LiBKYW4gMjAwMCwgMjM6MTI6MzQpOgp+IyEgcm49R25vbWUgcnQ9OTQ3MDgzNzQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ3MDIzMzM2CkhtLi4uCkVpZXJrdWNoZW4gIT0gT21lbGV0dGUsIHdlaWwgRWllcmt1Y2hlbiBtaXQgQXBmZWxtdXMgdW5kIE9tZWxldHRlIG1pdCBQaWx6ZW4gKApJZ2l0dCEgKQoKUmFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogT3N0ZG9lZGVsIChSYXJkaWFuLCAgNS4gSmFuIDIwMDAsIDIzOjE4OjA5KToKfiMhIHJuPU1ha2lzaCBydD05NDcxMDE2MTcgcmc9c2NobWFycm4KfiMhIHRpZD05NDcwMjMzMzYKVW0gYXVjaCBtYWwgd2llZGVyIHp1bSBUaGVtYSB6dXJ1ZWNrenVrb21tZW4uLi4KTnVyIGluIEJlcmxpbiBnaWJ0IGVzIHNjaGxpZXNzbGljaCBub2NoIGVjaHRlIE9zdHNjaHJpcHBlbiEhIDopCgpSYXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogT3N0ZG9lZGVsIChNYWhhdG11LCAgNS4gSmFuIDIwMDAsIDIzOjE4OjQzKToKfiMhIHJuPVJhcmRpYW4gcnQ9OTQ3MTEwNjg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ3MDIzMzM2CkdvciBuaWUuIERhcyBiZXN0YWV0aWd0IERpciBqZWRlciBMaWRsLVNhY2hzZS4KCk1haGF0bXUKClBTOiBPZGVyIHdhcnMgZG9jaCBOZXR0byBvZGVyIE1hcmthbnQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogT3N0ZG9lZGVsIChHYW5kdXIsICA1LiBKYW4gMjAwMCwgMjM6MTk6MzMpOgp+IyEgcm49TWFoYXRtdSBydD05NDcxMTA3MjMgcmc9c2NobWFycm4KfiMhIHRpZD05NDcwMjMzMzYKZGllIGhlaXNzZW4gZGEgYWJlciBuaWNodCBzY2hyaXBwZW4sIG9kZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogT3N0ZG9lZGVsIChSYXJkaWFuLCAgNS4gSmFuIDIwMDAsIDIzOjE5OjU5KToKfiMhIHJuPU1haGF0bXUgcnQ9OTQ3MTEwNzIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ3MDIzMzM2Ck1laW5lbiB3aXIgbWl0IE9zdHNjaHJpcHBlIGF1Y2ggZGFzc2VsYmUsIE1haGF0bXU/IDopClJhciwgaXN0IHNpY2ggZGEgbmljaHQgc28gc2ljaGVyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogT3N0ZG9lZGVsIChNYWhhdG11LCAgNS4gSmFuIDIwMDAsIDIzOjIyOjAxKToKfiMhIHJuPVJhcmRpYW4gcnQ9OTQ3MTEwNzk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ3MDIzMzM2CkRhcyBaZXVnIGF1cyBkZXIgS2F1ZmhhbGxlLCBpbiBzbyBlaW5lbSBncm9zc2VuIEdsYXNrYXN0ZW4uIDUgUGZlbm5pZwpkYXMgaGFydGUgRGluZy4gTWVpc3QgaGluZyBhbSBLYXN0ZW4gZWluZSBaYW5nZSwgYWJlciBqZWRlciBoYXQgZXMKZ2xlaWNoIHNvIGluIGRpZSBQYXBwdHVldGVuIGVpbmdlc2Fja3QuIFdlbm4gbWFuIGVpbiBMb2NoIHJlaW5nZXBvcGVsdApoYXQsIGthbSBtYW4gYW4gZGVuIG1laHIgb2RlciB3ZW5pZ2VyIGtsZWJyaWcsIHdlaWNoZW4gS2Vybi4KCk1haGF0bXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBPc3Rkb2VkZWwgKFJhcmRpYW4sICA1LiBKYW4gMjAwMCwgMjM6MjU6MTkpOgp+IyEgcm49TWFoYXRtdSBydD05NDcxMTA5MjEgcmc9c2NobWFycm4KfiMhIHRpZD05NDcwMjMzMzYKSGFiIGljaHMgbWlyIGRvY2ggZ2VkYWNodC4uLgpEaWUgbWVpbnRlIGljaCBuaWNodCAuLi4gOykKUmFyLCBrbGluZ3Qgc2ljaCBqZXR6dCBhdXMgZGVyIERpc2t1c3Npb24gdW0gZGllIE9zdGRvZWRlbCBhdXMuLi4KLi4uIGF1ZiBXdW5zY2ggZWluZXMgZWluemVsbmVuIEhlcnJlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogT3N0ZG9lZGVsIChHbm9tZSwgIDUuIEphbiAyMDAwLCAyMzo0MzoxMyk6Cn4jISBybj1HcmltbWFuIHJ0PTk0NzEwMTU2MSByZz1zY2htYXJybgp+IyEgdGlkPTk0NzAyMzMzNgphY2hzby4uLgppY2ggdmVyZ2FzcywgZGFzcyBqZWRlcyBidW5kZXNsYW5kLCBqYSBmYXN0IHNjaG9uIGplZGUgc3RhZHQgc2ljaCB1bnRlcgp1bnNlcmUgdmllbGRpc2t1dGllcnRlbiBiZWdyaWZmZW4gZXR3YXMgYW5kZXJlcyB2b3JzdGVsbHQuCnNlbGJzdCB1bnNlcmUgZXR3YXMgYmVncmlmZnNzdHV0emlnZW4gb3NzaXMsIGRpZSBzaWNoIGF1Y2ggYmVybGluZXIgbmVubmVuLApoYWJlbiB0ZWlsd2Vpc2UgYW5kZXJlIHZvcnN0ZWxsdW5nZW4gYWxzIGRpZSBibG9lZGVuIHdlc3Npcy4KCmFiZXIgZXMgaXN0IHNjaG9uIGJlbWVya2Vuc3dlcnQsIGRhc3MgaW4gZWluIHVuZCBkZXJzZWxiZW4gc3RhZHQgZGllIGRpbmdlCnNvIHVudGVyc2NoaWVkbGljaCBnZWhhbmRoYWJ0IHdlcmRlbi4gaWNoIGdsYXViZSwgZGEgc2luZCB3aXIgYnVuZGVzd2VpdAplaW5tYWxpZy4uLgoKYW55d2F5LCBzbyB3aWUgZXMgZWluZSBob2Noc3ByYWNoZSBmdWVyIGRpYWxla3RlIGdpYnQgKGRhbWl0IHNpY2ggYmF5ZXJuCnVuZCBmaXNjaGtvZXBwZSB6dW1pbmRlc3Qgc2NocmlmdGxpY2ggdmVyc3RlaGVuKSwgZ2lidCBlcyBhdWNoIG9iZXJiZWdyaWZmZQpmdWVyIGFsbGVzIGFuZGVyZS4Kb2IgbnUgc2VtbWVsIG9kZXIgc2NocmlwcGUsIGdlbWVpbnQgaXN0IGRhcyBicm9ldGNoZW4sIGFiZXIgYmVybGluZXIgdW5kCnBmYW5ua3VjaGVuIHNpbmQgbnUgd2FocmxpY2ggbmljaHQgZGFzc2VsYmUuCgp1bmQga3JhcGZlbiBzaW5kIG51IGdhbnogd2FzIGFubmVycy4uLiAqdGFldHNjaGVsTXVwZmVsKgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcmV1bmRlPyAoR3JpbW1ib3JuLCAgNi4gSmFuIDIwMDAsIDEwOjQwOjQ4KToKfiMhIG9uPUdyaW1tYm9ybiBvdD05NDcxNTE1MTggb2c9c3VjaGUtYmlldGUKfiMhIHJuPUFuYWtpbiBydD05NDcxNTExNTQgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD05NDcxNTExNTQKaGlsZmUgZmluZ2VyCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRnJldW5kZT8gKEdyaW1tYm9ybiwgIDYuIEphbiAyMDAwLCAxMDo0MDo1MCk6Cn4jISBvbj1BbmFraW4gb3Q9OTQ3MTUxNTYyIG9nPXN1Y2hlLWJpZXRlCn4jISBybj1HcmltbWJvcm4gcnQ9OTQ3MTUxNTE4IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9OTQ3MTUxMTU0Cgpmd2VyIHR1dCBlcyBhdWNoIG9oIHdlaXNzZXIgR3JpbW1ib3JuLgoKQW5ha2luLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRnJldW5kZT8gKEdyaW1tYm9ybiwgIDYuIEphbiAyMDAwLCAxMDo0MDo1MSk6Cn4jISBvbj1BbmFraW4gb3Q9OTQ3MTUxNTkyIG9nPXN1Y2hlLWJpZXRlCn4jISBybj1BbmFraW4gcnQ9OTQ3MTUxNTYyIHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9OTQ3MTUxMTU0CgpPZGVyIGdydWVuZXIgR3JpbW1ib3JuLi4uYml0dGUgbmFjaCBTY2htYXJybi4KCgpBbmFraW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGcmV1bmRlPyAoR3JpbW1ib3JuLCAgNi4gSmFuIDIwMDAsIDEwOjQyOjA4KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDcxNTE2NTAgcmc9c2NobWFycm4KfiMhIHRpZD05NDcxNTExNTQKTmEgYWxzby4gV2FzIGZyYWdzdGUgZGFubiwgd2VubiBEdXMgc2Nob24gd2Vpc3N0PwpPZGVyIHdhciBkYXMgbnVyIGVpbiBBcnRpa2VsIGluIGRlciBBcnQgIktlaW5lciBsaWVidCBtaWNoLCBpY2ggYmluIHNvIGVpbnNhbSwKd2FlaHJlbmQgYW5kZXJlIExldXRlIG5vY2ggZXhpc3RpZXJlbmRlIEZyZXVuZGUgaGFiZW4sIGJpdHRlIGJlZGF1ZXJ0IG1pY2ghIj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdsb2luc29uIGlzdCBqZXR6dCBlaW5lIE1hZ2llcmluISAoQW5hdG9sLCAgNi4gSmFuIDIwMDAsIDEzOjE3OjUyKToKfiMhIHJuPU1lcmxpbiBydD05NDcxNjAwMDAgcmc9c3R1ZmVuCn4jISB0aWQ9OTQ3MTYwMDAwCkFjaCBEdSBTY2hyZWNrLi4uLgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzbyBpcyBkYXMgYWxzbyAoTG9sbGksICA2LiBKYW4gMjAwMCwgMTU6MDE6MDcpOgpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KRGVyIFdhbmRsZXIgdmVyc2Nod2luZGV0IHVycGxvZXR6bGljaC4KCmhhYmVuIGRpZSBlaW4gdmVyaGFlbHRuaXM/IT8KaGFiZW4gZGllIGVpbiB2ZXJoYWVsdG5pcz8hPwoKTG9sbGkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc28gaXMgZGFzIGFsc28gKEdyaW1tYm9ybiwgIDYuIEphbiAyMDAwLCAxNToxOToxNik6Cn4jISBybj1Mb2xsaSBydD05NDcxNjcyNjcgcmc9c2NobWFycm4KfiMhIHRpZD05NDcxNjcyNjcKTmVpbiwgZ2xhdWJlIGljaCBuaWNodC4KTmVpbiwgZ2xhdWJlIGljaCBuaWNodC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiByZW50ZSAoQW5hdG9sLCAgNi4gSmFuIDIwMDAsIDE5OjMyOjI3KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDcxNjUwNTAgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTk0NzE2NDgyNwpEYXNzIGRlciBBcnRpa2VsIGpldHp0IFdFREVSIGluICJiZWthbm50bWFjaHVuZ2VuIiBub2NoIGluICJtYWdpZXIudXJsYXViIgpzdGVodCwgZmFlbGx0IHdvaGwga2VpbmVtIGF1Zj8gSWNoIHdpbGwgZGVuIEFydGlrZWwgaGFiZW4hIEljaCB3aWxsIGVpbgpsYWVzdGVybmRlcyBSZXBseSBzY2hyZWliZW4ga29lbm5lbiEgOykKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBPc3Rkb2VkZWwgKFN1YmxpbWUsICA2LiBKYW4gMjAwMCwgMTk6NDU6MDQpOgp+IyEgcm49UmFyZGlhbiBydD05NDcxMTA2ODkgcmc9c2NobWFycm4KfiMhIHRpZD05NDcwMjMzMzYKQWJlciBhdWNoIG51ciBpbiBlaW5lbSBMYWRlbiwgUmFyIDspIE9id29obCwgaWNoIG11c3MgenVnZWJlbixhbHMgaWNoCm1hbCBkZW5Pc3RlbiBiZXN1Y2h0ZSB3YXInbiBkYXMgQmVzdGUgbm9jaCBkaWUgU2NocmlwcGVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGFkcmVpYyB6dXJ1ZWNrZ2V0cmV0ZW4gKEFuYXRvbCwgIDYuIEphbiAyMDAwLCAxOTo1Mjo1MSk6Cn4jISBybj1Cb2luZyBydD05NDcxODQxNTIgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTk0NzE4NDE1MgpTbyBnZWJlIGRlbm4gSm9mLCBkYXNzIFRpYW1hayBzY2huZWxsIGFsbGUgU2ljaGVyaGVpdHNsdWVja2VuCmZpbmRldCwgZGVubiBQYWRyZWljIGlzdCB3aWVkZXIgZWluZXIgZGVyIGEgbiBkIGUgciBlIG4gLi4uIF07XikKCkd1dGVyIEFiZ2FuZyAtIHRyYXVzdCBEdSBEaWNoIGF1Y2ggYXVmIExldmVsIDQ1IHJ1bnRlciwgUGFkcmVpYz8gOykKCkFuYXRvbCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHJlbnRlIChHcmltbWJvcm4sICA2LiBKYW4gMjAwMCwgMjA6NDQ6MzkpOgp+IyEgcm49QW5hdG9sIHJ0PTk0NzE4MzU0NyByZz1zY2htYXJybgp+IyEgdGlkPTk0NzE2NDgyNwpHbGF1YiBtaXIsIGhhdCBzaWNoIG5pY2h0IHdpcmtsaWNoIGdlbG9obnQuCkthbm5zdCBqYSBtYWwgUGFkcmVpYyBiZXN1Y2hlbiBmYWhyZW4sIGRlciBoYXQgZGEgc2ljaGVyIGVpbmVuIEF1c2RydWNrIHZvbgplaW5nZXJhaG10IHVlYmVybSBTb2ZhIGhhZW5nZW4uIFVudGVyIGRlciBVZWJlcnNjaHJpZnQgIkRlciBBcnRpa2VsLCBkZW4KR3JpbW1ib3JuIG5pY2h0IG1laHIgdmVybGVnZW4ga29ubnRlIiAod2FzIG5hY2ggZGVyIExvZXNjaHVuZyBqYSBhdWNoCnN0aW1tdGUpLiA7LSkKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE9zdGRvZWRlbCAoUmFyZGlhbiwgIDcuIEphbiAyMDAwLCAwMjo1OTo1Mik6Cn4jISBybj1TdWJsaW1lIHJ0PTk0NzE4NDMwNCByZz1zY2htYXJybgp+IyEgdGlkPTk0NzAyMzMzNgoqbWVnYWFyZ2wqCkRpZSBTY2hyaXBwZW4sIGRpZSBpY2ggbWVpbmUsIGthbm4gbWFuIG5pY2h0IGthdWZlbiEhICggQXVzc2VyIHZpZWxsZWljaHQKbWl0dGxlcndlaWxlIGlubmVyIE9yYW5pZW5idXJnZXIgU3RyYXNzZSwgTmFlaGUgTW9uQmlqb3UtUGxhdHogKSBJY2ggbWVpbnRlCmtlaW5lIFNjaHJpcHBlbiB6dW0gRXNzZW4gKCBvYndvaGwgbWFuIHNpZSBhdWNoIGFua25hYmJlcm4ga29lbm50ZSwgd2VubiBzaWUKZGFzIG1pdCBzaWNoIG1hY2hlbiBsaWVzc2VuICkKKnNldWZ6KgpSYXIsIGRlbiBrZWluZXIgdmVyc3RlaHQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRvbGxlIEJlZ3J1ZXNzdW5nIDopIChTdHJvaGFsbSwgIDcuIEphbiAyMDAwLCAxNToxMTo1OSk6ClZvbiBNZXNpcmlpOiBIQUxMTyA7KQpNZXNpcmlpICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKU3Ryb2hhbG0sIGZpbmRldCBzZWluZSBBbnR3b3J0ZW5hdWYgQmVncnVlc3N1bmdlbiB0cm90eiBzcG9udGFuZXIKR2VzYW5nc2F1c3NicnVlY2hlIGF1Y2ggbmV0IHNvb29vIHNjaGxpbW0sIGRhc3MgbWFuIGluIGRlY2t1bmcgZ2VoZW4gbXVzcy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVhIChTa3ksICA4LiBKYW4gMjAwMCwgMTY6NTA6MzIpOgpEdSBzdGVja3N0IGRhcyBTY2h3ZXJ0IHp1cnVlY2suCkR1IGdpYnN0IGRhcyBTY2h3ZXJ0IGFuIFdhbHRlci4KV2FsdGVyIHNjaGF1dCBEaWNoIGFuLgpXYWx0ZXIgc2FndDogRGllIFdhZmZlIGlzdCBiZXNjaGFlZGlndC4KV2FsdGVyIHNhZ3Q6IERhcyBrb3N0ZXQgMjQwMCBNdWVuemVuLgpNb2VjaHRlc3QgRHUgc292aWVsIGJlemFobGVuPyAoamEvbmVpbikKV2FsdGVyIG5pY2t0IHVuZCBtYWNodCBzaWNoIGFuIGRpZSBBcmJlaXQuCldhbHRlciBoYWVtbWVydCB1bmQgbWFjaHQgdW5kIHR1dC4uLgpFcyBzaWVodCBhdXMsIGFscyB3dWVyZGUgZXMgZXR3YXMgZGF1ZXJuLCBudXIgR2VkdWxkLgoKLi4ud3VhaCBkYXMgZGF1ZXJ0Li4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk51IHNwaW5udCBlciB2b2VsbGlnIDopIChTYWhhZG9vbSwgIDguIEphbiAyMDAwLCAyMDozODo0Mik6Ck9sbGkgbWFjaHQgZWluIHBhYXIgYmVzY2h3b2VyZW5kZSBHZXN0ZW4gdWViZXIgZGVyIGVpZXJsZWdlbmRlbiBXb2xsbWlsY2hzYXUuCkRpZSBlaWVybGVnZW5kZSBXb2xsbWlsY2hzYXUgYmxpdHp0IGt1cnogZ3J1ZW5saWNoIGF1Zi4KClNhaGFkb29tIC0gd3VuZGVydCBzaWNoIGdhciBuaWNodCBtZWhyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmbHcgKE1lc2lyaWksICA4LiBKYW4gMjAwMCwgMjM6MjU6NDcpOgpWb24gRnJldW5kIE9sbGk6IGthbm4gbWljaCB3ZXIgYXVzIGRlciBzc3AgYmVpbSB3YXNzZXJlbGVtZW50YXIKVm9uIEZyZXVuZCBPbGxpOiByYXVzaG9sZW4/ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgClZvbiBGcmV1bmQgT2xsaTogc2hpdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApbVG9kOkxhcnNdIEVpbiBXYXNzZXJlbGVtZW50YXIgaGF0IGdlcmFkZSBPbGxpIHVtZ2VicmFjaHQuICAgICAgICAgICAgICAgICAgICAKTWVzaXJpaSwgdHJhdWVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE9zdGRvZWRlbCAoQXBzdSwgIDkuIEphbiAyMDAwLCAwMjowNDoxNyk6Cn4jISBybj1Hbm9tZSBydD05NDcwODM3NDQgcmc9c2NobWFycm4KfiMhIHRpZD05NDcwMjMzMzYKb2VoZW1tbSwgRWllcmt1Y2hlbiAhPSBPbWVsZXR0ZSEKCkFwc3UsIGVpbnplaWxpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VmYW5nZW4gLi4uIChWYW5pb24sICA5LiBKYW4gMjAwMCwgMTM6NDQ6MDcpOgpkdW5rZWxoZWl0IGthbm5zdCBuaWNodCB3ZWcsIFZhbmRhIE1jTW9vdGNoIGhhdCBEaWNoIGFuZ2VrZXR0ZXQhCkFiZW50ZXVlcjpWYW5pb24gV2llIGtvbW1lIGljaCB2b24gVmFuZGEgTWNNb290Y2hzIEtldHRlIGxvcz8KSmVtYW5kIHdpcmQgdm9uIFZhbmRhIE1jTW9vdGNoIGFuZ2VrZXR0ZXQuCkplbWFuZCB6ZXJydCBhbiBzZWluZXIgS2V0dGUgZG9jaCBlciBrYW5uIG5pY2h0IHdlZy4KCgpBdWNoIE1hZ2llciB2ZXJsaWVyZW4gbWFuY2htYWwgOy0pClZhbmlvbgoKcHM6IERhbmtlIGZ1ZXIgZGVuIEhpbGZldmVyc3VjaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVsc3Rlcm4gYWJ3ZXJ0ZW4gOykgKENpc291LCAgOS4gSmFuIDIwMDAsIDE0OjEyOjUwKToKCnRvZXRlIGVsc3RlcgouLi4KRGllIEVsc3RlciBzdHVlcnp0IHRvZWRsaWNoIGdldHJvZmZlbiBhYi4KRGllIExlaWNoZSB3dXJkZSBlbnRzb3JndC4KbmltbSBhbGxlcwpEdSBuaW1tc3QgOTk0IFN0YWJtYWdpZXB1bmt0ZS4KRGllIEVsc3RlciBrbGF1dCBEaXIgOTk0IFN0YWJtYWdpZXB1bmt0ZSEKCmhtcGYsIHVuZCBkYXMgbWlyIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChUaWFtYWssICA5LiBKYW4gMjAwMCwgMjE6MTc6MDEpOgpbQWJlbnRldWVyOlJheXplZWxdIEthbm4gbmljaHQgbWFsIGplbWFuZCBMaXR0bGUgSm9obiBmdWVyIG1pY2ggcGxhZXR0ZW4/PwpbQWJlbnRldWVyOlJheXplZWxdIDwyMToxNDo1NT4KW0FiZW50ZXVlcjpFbGJlcmV0XSBzY2h1YnNlbj8gPDIxOjE1OjA3PgpbVG9kOkxhcnNdIExpdHRsZSBKb2huIGhhdCBnZXJhZGUgUmF5emVlbCB1bWdlYnJhY2h0LiA8MjE6MTU6MjE+CgoKVGlhbWFrIG11cm1lbHQgd2FzIHZvbiAnc2NodWJzZW4gIT0gdG9ldGVuJy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkludGVyZXNzYW50Li4gOykgKFpvb2ssIDEwLiBKYW4gMjAwMCwgMTc6Mjg6MzMpOgpTaGFyaWEgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KCgpJbW1lciB3aWVkZXIgc2Nob2VuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgZ3V0ZSBhbHRlIFNTUCAuLi4gKEFscGhhLCAxMC4gSmFuIDIwMDAsIDIzOjA1OjIxKToKRHUgYmlzdCBpbiBlaW5lciBrbGVpbmVuIEhvZWhsZSwgZGllIGRpZSBsb2thbGVuIFdhc3NlcnRyb2xsZSB3b2hsIHp1CmlocmVyIEhlaW1hdCBhdXNlcmtvcmVuIGhhYmVuLiBXYXNzZXIgcGxhZXRzY2hlcnQgaW4ga2xlaW5lbiBXZWxsZW4gYW4KZGFzIG5vZXJkbGljaGUgVWZlciwgZ2x1ZWNrbGljaGVyd2Vpc2UgaXN0IGRlciBCb2RlbiBoaWVyIGV0d2FzIGVyaG9laHQKdW5kIER1IGthbm5zdCBEaXIgZXR3YXMgZGllIEZ1ZXNzZSB0cm9ja25lbi4gQWxsZXJkaW5ncyB3ZXJkZW4gRGljaCBkaWUKVHJvbGxlIG5pY2h0IG1vZWdlbiwgd2VubiBzaWUgRGljaCBoaWVyIGVyd2lzY2hlbi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG5vcmRlbi4KRWluIFdhc3NlcnRyb2xsLgpFaW4gV2Fzc2VydHJvbGwuCgpbdW50IHRyb2xsZV0KCkRpZSBUcm9sbGUgc2luZCB3b2hsIGFsbGUgYmx1dGlnIGhpbmdlbWV1Y2hlbHQgd29yZGVuLgoKVmllbGxlaWNodCBzaW5kIGRpZSBiZWlkZW4gZGEgamEgYXVjaCBudXIgRWluYmlsZHVuZy4uLmFiZXIga2FlbXBmZW4ga29ubnRlbgpzaWUgZ3V0Li4uCkFscGhhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmVpbSBSYWdlIHNwaWVsZW4gaGV1dGUuLi4gKFNseWZveCwgMTEuIEphbiAyMDAwLCAwMDoyNDo0NCk6Cj5zdG9zcyBsdXJjaGkKRHUgc3RvZXNzdCBMdXJjaGkgaW4gZGllIFJpcHBlbi4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEx1cmNoaS4KTHVyY2hpICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKICAgU29ycnksIEx1cmNoaQoKICAgICBTbHlmb3gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCZWltIFJhZ2Ugc3BpZWxlbiBoZXV0ZS4uLiAoQW5hdG9sLCAxMS4gSmFuIDIwMDAsIDAwOjI1OjIzKToKfiMhIHJuPVNseWZveCBydD05NDc1NDY2ODQgcmc9c2NobWFycm4KfiMhIHRpZD05NDc1NDY2ODQKS2FyYXRla2EuLi4KCkFuYXRvbCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERvcnRtdW5kPyAoR3JpbW1ib3JuLCAxMS4gSmFuIDIwMDAsIDExOjEyOjQ0KToKfiMhIG9uPUdyaW1tYm9ybiBvdD05NDc1ODU1NTggb2c9dHJlZmZlbgp+IyEgcm49QWxjaW5hIHJ0PTk0NzU4MzkxNSByZz10cmVmZmVuCn4jISB0aWQ9OTQ3NTE3MjQ0Ck5laW4sIHdpcmtsaWNoIG5pY2h0LiBXYXMgc29sbGVuIHdpciBhdWNoIGluIFdlc3RzaWJpcmllbj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlcyBNb25hdHMgKEdyaW1tYm9ybiwgMTEuIEphbiAyMDAwLCAxMTo0NDoxMSk6CkljaCB3b2xsdGUgbWFsIHNlaGVuLCBvYiBpY2ggZXMgc2NoYWZmZSwgZWluZSB1cmFsdGUgVHJhZGl0aW9uCndpZWRlcnp1YmVsZWJlbjogTWVpbmUgS2FsZW5kZXJzcHJ1ZWNoZSBoaWVyIGRlciBBbGxnZW1laW5oZWl0IHp1Z2FlbmdsaWNoIHp1Cm1hY2hlbi4gU29sbHRlIGplbWFuZCB3YXMgZGFnZWdlbiBoYWJlbjogQmVzY2h3ZXJkZW4gYW4gUGFkcmVpYywgZG9ydCBzdG9lcmVuCnNpZSBtaWNoIGFtIHdlbmlnc3Rlbi4KCiJGcnVlaGVyIGVycm9ldGV0ZW4gZGllIE1hZWRjaGVuLCB3ZW5uIHNpZSBzaWNoIHNjaGFlbXRlbi4gSGV1dGUgc2NoYWVtZW4gc2llCnNpY2gsIHdlbm4gc2llIGVycm9ldGVuLiIgKE1hdXJpY2UgQ2hldmFsaWVyKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BydWNoIGRlcyBNb25hdHMgKEdyaW1tYm9ybiwgMTEuIEphbiAyMDAwLCAxMTo0NTo0NSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTQ3NTg3NDUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ3NTg3NDUxCkhtbSwgaWNoIGVudHNjaHVsZGlnZSBtaWNoIGZ1ZXIgZGllIEJlbWVya3VuZyB1ZWJlciBQYWRyZWljLiBFcyBpc3QgemllbWxpY2gKYmlsbGlnLCBhdWYgamVtYW5kZW4gZHJhdWZ6dXNjaGxhZ2VuLCBkZXIgZWggc2Nob24gZGVyIERlcHAgZGVyIE5hdGlvbiBpc3QuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdpZXJpZ2VzIEx1ZGVyIC4uLiAoQnV6emN1dCwgMTEuIEphbiAyMDAwLCAxMTo0OTo0Mik6CkRlciBMZXVjaHR0cm9sbCBmYWVsbHQgdG90IHp1IEJvZGVuLgpEaWUgS2V1bGUgYnJ1ZWxsdDoKSGV5YSwgbGFzcyB1bnMgZWluIHBhYXIgTW9uc3RlciB0b2V0ZW4gZ2VoZW4hCgogICAgIEJ1enppCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFZvcndhcm51bmcuLi4gKFNvcmNlcmVyLCAxMS4gSmFuIDIwMDAsIDIzOjAzOjMzKToKLi4udW5kIG9obmUgWnVzYW1tZW5oYW5nLi4uCgpEb2RlcmljIGZyYWd0IE5ldm9rOiBGdWVobHN0IGR1IGRpY2ggaW4gZGVpbmVyIGVpZ2Vuc2NoYWZ0IGFscyB6d2VyZyBpcmdlbmRpZQpkaXNrcmltaW5pZXJ0PwpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCk5ldm9rIGFudHdvcnRldCBEb2RlcmljOiBGdWVobHN0IER1IERpY2ggaW4gRGVpbmVyIEVpZ2Vuc2NoYWZ0IGFscyBIb2JiaXQKaHVuZ3JpZz8KClNvcmNlcmVyIC0gc2ljaCBhdWYgZGVtIEJvZGVuIGt1Z2VsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtvcnJla3QgKEhlcm9tY2ZseSwgMTIuIEphbiAyMDAwLCAyMTowNDozNik6CgpEZWluIEZyZXVuZCBLYXJpYyB0ZWlsdCBEaXIgbWl0OiBob3NpYW5hClBsb2V0emxpY2ggbGV1Y2h0ZXQgZGFzIEZldWVyYW11bGV0dCBncmVsbCBhdWYuIER1IHdpcnN0IHZvbiBlaW5lciBsZXVjaHRlbmRlbgpBdXJhIGVpbmdlaHVlbGx0LiBBbHMgZGllIEF1cmEgZXJsaXNjaHQsIGZ1ZWhsc3QgZHUgZGljaCBzZWhyIHZpZWwgYmVzc2VyLgoKZGFua2Uga2FyaWMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk91dGluZyBhbSBzcGFldGVuIEFiZW5kLi4gOikgKFplcGh5ciwgMTIuIEphbiAyMDAwLCAyMzo0Mzo1Mik6ClNhbmRtYW5uIHNhZ3Q6IFNpZSBtdXNzIGp1bmcsIGh1ZWJzY2ggdW5kIG5ldHQgc2VpbiwgbWVociB3aWxsIGljaCBnYXIgbmV0ClRlZGR5IHNhZ3Q6IEhtLCBiaW4gaWNoIGFsbGVzCgoKVGVkZHkuLiB3aXIgaGFiZW5zIGFsbGUgZ2V3dXNzdCA7KQoKICBDNCwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPdXRpbmcgYW0gc3BhZXRlbiBBYmVuZC4uIDopIChUZWRkeSwgMTIuIEphbiAyMDAwLCAyMzo0NDo0NCk6Cn4jISBybj1aZXBoeXIgcnQ9OTQ3NzE3MDMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ3NzE3MDMyCk51ciBkZXIgVm9sbHN0YWVuZGlna2VpdCBoYWxiZXI6CgpaZXBoeXIgc2FndDogIFRlZGR5IHNvc28gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApEdSByb3RmbHN0LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApaZXBoeXIgc2FndDogIERVIEJJU1QgTkVUVD8gOikpKSkgICAgICAgICAgICAgICAgICAgICAgIApEdSBzYWdzdDogQWVobSwgZ2VuYXVzbyBuZXR0IGl3ZSBqdW5nIHVuZCBodWVic2NoICAgICAgIAoKVGVkZHksIHVtIHNlaW5lbiBzY2hsZWNodGVuIFJ1ZiBiZXNvcmd0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG9oZSBBbmZvcmRlcnVuZ2VuLi4uIChSb2NodXMsIDEzLiBKYW4gMjAwMCwgMTc6MTk6MTYpOgplcmhvZWhlCkRpciBmZWhsZW4gYmlzIHp1ciBuYWVjaHN0ZW4gU3R1ZmUgbm9jaCA1Njk2MzE5IFN0dWZlbnB1bmt0ZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIb2hlIEFuZm9yZGVydW5nZW4uLi4gKFNpbHZhbmEsIDEzLiBKYW4gMjAwMCwgMTc6NDc6MTMpOgp+IyEgcm49Um9jaHVzIHJ0PTk0Nzc4MDM1NiByZz1zY2htYXJybgp+IyEgdGlkPTk0Nzc4MDM1NgpOYSwgZGFubiBnZWggbWFsIGZsZWlzc2lnIGZvcnNjaGVuLi4uIDstKQoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT3V0aW5nIGFtIHNwYWV0ZW4gQWJlbmQuLiA6KSAoTm92YXN0b3JtLCAxMy4gSmFuIDIwMDAsIDIxOjI1OjA5KToKfiMhIHJuPVplcGh5ciBydD05NDc3MTcwMzIgcmc9c2NobWFycm4KfiMhIHRpZD05NDc3MTcwMzIKVGVkZHkgaXN0IGp1bmc/IE1tbW1tbW1taC4KICBOb3ZhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLZW5uZW4gd2lyIHNjaG9uISAoQXJrLCAxMy4gSmFuIDIwMDAsIDIyOjU1OjUzKToKRGllIGdyb3NzZSBHbG9ja2Ugdm9uIFBvcnQgVmFpbiB2ZXJrdWVuZGV0IGRpZSBBbmt1bmZ0IHZvbiBJbGx1c2lvbiBpbQpNb3JnZW5ncmF1ZW4uCgpOaXggTmV1ZXMsIGFiZXIgamV0enQgaXNzZXMgYW10bGljaC4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcnRpa2VsIChab29rLCAxNS4gSmFuIDIwMDAsIDE4OjI0OjMyKToKSW1tZXIgd2llZGVyIHNjaG9lbi4uLgpOaWNodHMgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsZWluZXIgVmVydGlwcGVyLi4uIChGb29iYXIsIDE3LiBKYW4gMjAwMCwgMTM6NTg6MTApOgo+IG1lbGRlIGJyaWVzZWx0cmltIGFscyBhenViaSBhbgpCcmllc2VsdHJpbSBzYWd0OiBCcmllc2VsdHJpbSBpc3QgbGVpZGVyIG5pY2h0IGRhIQoKV2VubiBkZXIgd3Vlc3N0ZS4uLgoKRm9vYmFyIC0gYmlsZGV0IGpldHp0IHN0YXR0ZGVzc2VuIE9oYW0gYXVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFuIGthbm4ncyBhdWNoIHVlYmVydHJlaWJlbiAoTG9uZSwgMTcuIEphbiAyMDAwLCAxNToxNToyMik6CiAgICAgICAgICAgICAgICAgICAgICAgIEVuZGxpY2ggYW0gWmllbCAhCkR1IGJpc3QgaW4gZGVyIFNjaGF0emthbW1lciB2b24gQWxiZXJpY2guIERpZXNlciBSYXVtIHNjaGVpbnQKemllbWxpY2ggZ3Jvc3MgenUgc2Vpbi4gRGEgYWJlciB1ZWJlcmFsbCBVbm1lbmdlbiB2b24gVGFsZXJuLApHb2xkLCBTdGF0dWVuLCBTY2htdWNrLCBUZXBwaWNoZW4sIFNjaGF0dWxsZW4gdW5kIEVkZWxzdGVpbmVuCnJ1bWxpZWdlbiBrYW5uc3QgRHUgZGFzIG51ciBzZWhyIHNjaHdlciBhYnNjaGFldHplbi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRlbi4KU2NoYXR6d2FlY2h0ZXIuICAgIFNjaGF0endhZWNodGVyLiAgICBTY2hhdHp3YWVjaHRlci4gICAgU2NoYXR6d2FlY2h0ZXIuClNjaGF0endhZWNodGVyLiAgICBTY2hhdHp3YWVjaHRlci4gICAgU2NoYXR6d2FlY2h0ZXIuICAgIEVpbiBTY2hhZnQuClNjaGF0endhZWNodGVyLiAgICBTY2hhdHp3YWVjaHRlci4gICAgU2NoYXR6d2FlY2h0ZXIuClNjaGF0endhZWNodGVyLiAgICBTY2hhdHp3YWVjaHRlci4gICAgU2NoYXR6d2FlY2h0ZXIuClNjaGF0endhZWNodGVyLiAgICBTY2hhdHp3YWVjaHRlci4gICAgU2NoYXR6d2FlY2h0ZXIuCkR1IG5pbW1zdCBkZW4gU2NoYWZ0LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAxNy4gSmFuIDIwMDAsIDE5OjM4OjI1KToKIlZlcnN1Y2hlIG5pZSwgZGVuIEZsdXNzIGluIHp3ZWkgU3BydWVuZ2VuIHp1IHVlYmVycXVlcmVuLiIgKHNjaHdlZGlzY2gpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTcHJ1Y2ggZGVyIFdvY2hlIChBbmF0b2wsIDE3LiBKYW4gMjAwMCwgMTk6Mzk6MzEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0ODEzNDMwNSByZz1zY2htYXJybgp+IyEgdGlkPTk0ODEzNDMwNQoiLi4uIGVzIHNlaSBkZW5uIER1IHdlaXNzdCwgd28gZGllIFN0ZWluZSBsaWVnZW4uIiAoYW5hdG9saXNjaCkKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTcHJ1Y2ggZGVyIFdvY2hlIChSb2NodXMsIDE3LiBKYW4gMjAwMCwgMTk6Mzk6NTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0ODEzNDMwNSByZz1zY2htYXJybgp+IyEgdGlkPTk0ODEzNDMwNQoiVmVyc3VjaGUgbmllLCBkZW4gRmx1c3MgdWViZXIgZGllIGxvY2tlcmVuIFN0ZWluZSB6dSB1ZWJlcnF1ZXJlbiIgKFRha2VzaGkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAxNy4gSmFuIDIwMDAsIDE5OjQxOjE3KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDgxMzQzMDUgcmc9c2NobWFycm4KfiMhIHRpZD05NDgxMzQzMDUKVW5kIGhpZXIgZGllIFVlYmVyc2V0enVuZzoKIkZvZXJzb2VrIGFsZHJpZyBob3BwYSBvZXZlciBhYW4gaSB0dmFhIHNwcmFhbmciIChzdmVuc2t0KQoKW0RhcyAiYWEiIGlzdCBkYXMgYSBtaXQgZGVtIEtyaW5nZWwgZHJ1ZWJlcl0KCkdyaW1tYm9ybiBhdGhlaXN0ZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3BydWNoIGRlciBXb2NoZSAoQW5hdG9sLCAxNy4gSmFuIDIwMDAsIDE5OjQxOjU1KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDgxMzQ0Nzcgcmc9c2NobWFycm4KfiMhIHRpZD05NDgxMzQzMDUKImhvcHBhIiBrbGluZ3QgcHV0emlnLiBTYWcgRHUgbm9jaG1hbCB3YXMgdWViZXIgZGllIFNjaHdhYmVuLiA6KQoKQW5hdG9sIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTcHJ1Y2ggZGVyIFdvY2hlIChOZXZvaywgMTcuIEphbiAyMDAwLCAxOTo0Mjo0OSk6Cn4jISBybj1BbmF0b2wgcnQ9OTQ4MTM0NTE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ4MTM0MzA1CnNtb2VyZWJyb2VkIHNtb2VyZWJyb2VkIHJvZW0gcG9lbW0gcG9lbW0gcG9lbW0uLi4uCgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAxNy4gSmFuIDIwMDAsIDE5OjQyOjU1KToKfiMhIHJuPUFuYXRvbCBydD05NDgxMzQ1MTUgcmc9c2NobWFycm4KfiMhIHRpZD05NDgxMzQzMDUKU2Nod2FiZW4/IERhcyBpc3QgZG9jaCBzb3dhcyB3aWUgQmF5ZXJuLCBvZGVyPwoKR3JpbW1ib3JuIGRlciBBdGhlaXN0IGtyYXR6dCBzaWNoIGFtIEtvcHAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNwcnVjaCBkZXIgV29jaGUgKFJvbmRhLCAxNy4gSmFuIDIwMDAsIDE5OjQyOjU5KToKfiMhIHJuPUFuYXRvbCBydD05NDgxMzQ1MTUgcmc9c2NobWFycm4KfiMhIHRpZD05NDgxMzQzMDUKIkRlc2NoIGlzY2gga2lwcGVsaWNoLCB3ZW5uJ2RlIHVlYmVyc2NoIGJlcml0ZSBXYWVzY2hlcmxlIGhvcHNjaHQhIiAtIHNvIGluCmRlciBBcnQsIEFuYXRvbCdsZT8KClJvbmRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTcHJ1Y2ggZGVyIFdvY2hlIChFbmRlciwgMTguIEphbiAyMDAwLCAwNjo1Nzo0OSk6Cn4jISBybj1Sb25kYSBydD05NDgxMzQ1Nzkgcmc9c2NobWFycm4KfiMhIHRpZD05NDgxMzQzMDUKR3dhZHNjaGdvZWJiZQoKRW5kZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3BydWNoIGRlciBXb2NoZSAoQ2F0d2VhemxlLCAxOC4gSmFuIDIwMDAsIDA5OjQ1OjM0KToKfiMhIHJuPUFuYXRvbCBydD05NDgxMzQzNzEgcmc9c2NobWFycm4KfiMhIHRpZD05NDgxMzQzMDUKIi4uLiBlcyBzZWkgZGVubiwgRHUgYmlzdCBzY2huZWxsIHVuZCBmbGFjaCBnZW51Zy4iICh1bnNpbm5pZykKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIG1hbCBhbmRlcnMgKFRpYW1haywgMTguIEphbiAyMDAwLCAyMToyNzoxOSk6CltNYWdpZXI6Tm9lbF0gbmljaHQgd3VuZGVybiAtIGljaCBwcm9iaWVyIHdhcyBhdXMKW1RvZDpMYXJzXSBFaW4gRmV1ZXJkYWVtb24gaGF0IGdlcmFkZSBIZXh4ZXIgdW1nZWJyYWNodC4KW1RvZDpFaW4gRmV1ZXJkYWVtb25dIEJyZW5uZW4gc29sbHN0IER1IGluIGRlciBIb2VsbGUuIAoKVGlhbWFrIHNhZ3Q6IG1hcmtpZXIgRGVpbmVuIFp3ZWl0aWUgYml0dGUgbWFsLCBOb2VsIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3BydWNoIGRlciBXb2NoZSAoTHVnLCAxOS4gSmFuIDIwMDAsIDAwOjE4OjIwKToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDgxMzQ1NzUgcmc9c2NobWFycm4KfiMhIHRpZD05NDgxMzQzMDUKCk5hdHVlcmxpY2gsIAoKZGVubiBCYXllcm4gYmVnaW5udCBzdWVkbGljaCB2b24gRGFtbWVyIEJlcmdlLi4uCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkludGVyZXNzYW50ISA7bykgKE1lbmFjZSwgMTkuIEphbiAyMDAwLCAwMDoyMjo1Nyk6CkthbiBiZXNjaGltcGZ0IGVpbmVuIEVjaHNlbmFuZnVlaHJlcjogSWNoIGJpbiBkZXIgZ2VmYWVocmxpY2hzdGUgS2FlbXBmZXIKS2FuIGJlc2NoaW1wZnQgZWluZW4gRWNoc2VuYW5mdWVocmVyOiB1ZWJlcmhhdXB0IQpFaW4gRWNoc2VuYW5mdWVocmVyIGVyd2lkZXJ0OiBTaWNoZXIhIFdhaHJzY2hlaW5saWNoIHNvIGdlZmFlaHJsaWNoIHdpZQpFaW4gRWNoc2VuYW5mdWVocmVyIGVyd2lkZXJ0OiBPcmt0b2V0ZXIhICpsYWNoKgoKV2FzIE9ya3RvZXRlciB3b2hsIGRhenUgc2FndD8KCk1uYWNlICpPcmt0b2V0ZXIgYW5ncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3BydWNoIGRlciBXb2NoZSAoQW1hcnlsbGlzLCAxOS4gSmFuIDIwMDAsIDAwOjU2OjU4KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDgxMzQ1NzUgcmc9c2NobWFycm4KfiMhIHRpZD05NDgxMzQzMDUKYXVjaCBoaWVyIG91dGV0IHNpY2ggbWFsIHdpZWRlciBkZXIgSWdub3JhbnQuCgpBbWEqLCBnaWJ0IFN1cGVyZHVwZXItR3JpbW1ib3JuIG1hbCBuZW4gQXRsYXMgaW4gZGllIEhhbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTcHJ1Y2ggZGVyIFdvY2hlIChMdWcsIDE5LiBKYW4gMjAwMCwgMDA6NTc6MjYpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTk0ODIzOTgxOCByZz1zY2htYXJybgp+IyEgdGlkPTk0ODEzNDMwNQoKQmF5ZXJuemlwcGUhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVjaCBlaW4gV3Vuc2NoLi4uIChBbGNpbmEsIDE5LiBKYW4gMjAwMCwgMDI6MzI6MjYpOgoKZWJlbiBpbiBtZWluZW0gSGF1czoKCkR1IHJlaWJzdCBtaXQgZGVyIEhhbmQgYW4gZGVyIExhbXBlLiBFaW4gZHVlbm5lciwgYmxhdWVyIFJhdWNoZmFkZW4Kc2NobGluZ2VydCBzaWNoIGF1cyBkZXIgTGFtcGVub2VmZm51bmcgdW5kIG1hdGVyaWFsaXNlcnQgc2ljaCBhbHMKZHVyY2hzY2hlaW5lbmRlciwgZnJldW5kbGljaCBncmluc2VuZGVyIERzY2hpbm4uCgpFaW4gRHNjaGlubiBlcnNjaGVpbnQgaW4gZWluZXIgUmF1Y2h3b2xrZS4KRGVyIERzY2hpbm4gcmF1bnQgRGlyIHp1OiAiV2FzIGthbm4gaWNoIGZ1ZXIgRXVjaCB0dW4gTWVpc3Rlcj8iCltUb2Q6TGFyc10gVm9lbGxpZ2UgRXJzY2hvZXBmdW5nIGhhdCBnZXJhZGUgSGFuc3d1cnN0IHVtZ2VicmFjaHQuCgpBbGNpbmEsIGhhdHRlIGVpZ2VudGxpY2ggbm9jaCBuaWUgUHJvYmxlbWUgbWl0IEhhbnN3dXJzdC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaDopIChLbGVja3MsIDE5LiBKYW4gMjAwMCwgMTE6MjQ6NTIpOgpWYWV0ZXJjaGVuIFplaXQgZnJhZ3Q6IEtsZWNrcywgTmVubmUgZWluIHNlaHIgYmVydWVobXRlcyBNb25zdGVyIGF1cwpNb3JnZW5ncmF1ZW4uICAKRHUgYW50d29ydGVzdDogZHJhY2hlbmdvdHQKVmFldGVyY2hlbiBaZWl0IHNhZ3Q6IERpZXNlcyBNb25zdGVyIGlzdCBuaWNodCBzbyBzZWhyIGJlcnVlaG10LgoKCmRhIG11c3MgaWNoIGRhbm4gd29obCB3YXMgdmVyd2VjaHNlbHQgaGFiZW4sIHRzY2h1bGxpZ3VuZzspCktsZWNrcywgVmFldGVyY2hlbiB2ZXJ3dW5kZXJ0IHZvbGxrbGVja3NlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJlcmljaHQgYXVzIEtvZWxsZSAoU2lsdmFuYSwgMTkuIEphbiAyMDAwLCAxNDowMDo1OCk6Cn4jISBybj1Ob25uZSBydD05NDgyODYxODMgcmc9dHJlZmZlbgp+IyEgdGlkPTk0ODE5NzU5NQpKYSwgaGF1dCBFdWNoLCBzY2hsYWd0IEV1Y2gsIGtyYXR6dCBFdWNoIGRpZSBBdWdlbiBhdXMhIEljaCB3aWxsIEJsdXQgc2VoZW4hCgogIFNpbHZhbmEgLSB3ZWlzcywgaW4gd2VsY2hlIFJ1YnJpayBzb3dhcyBnZWhvZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQmVyaWNodCBhdXMgS29lbGxlIChTYW5kaWUsIDE5LiBKYW4gMjAwMCwgMTU6NTg6NDApOgp+IyEgcm49U2lsdmFuYSBydD05NDgyODY4NTggcmc9c2NobWFycm4KfiMhIHRpZD05NDgxOTc1OTUKaW4gZWluZSBuZXVlIFJ1YnJpayBHZXJ1ZWNodGUgdW5kIHNvbnN0aWdlIEdlbWVpbmhlaXRlbiA/Pz8KU2FuZGllIC0ga29wZnNjaHVldHRlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDE5LiBKYW4gMjAwMCwgMTc6MjQ6MTkpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTk0ODIzOTgxOCByZz1zY2htYXJybgp+IyEgdGlkPTk0ODEzNDMwNQpXaWVzbz8gQmF5ZXJuLCBTY2h3YWJlbiwgaXN0IGRvY2ggZGFzc2VsYmUsIHVlYmVyYWxsIGdpYnRzIGthdW0gYW5zdGFlbmRpZ2VzCkJpZXJbMV0uIFVuZCBkaWUgTGV1dGUgcmVkZW4ga29taXNjaFsyXS4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdApbMV0gS29lbHNjaC4KWzJdIE9kZXIgcHV0emlnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTaWUgc2luZCB1bnRlciB1bnMuLi4uIChBbHBoYSwgMTkuIEphbiAyMDAwLCAxOTo1MjoyMyk6CgogIC4uLi5ub3JtYWwvRk5PUkQuLi4uLi4uIE9sbGkuLi4uLi4uLi4gOiBPcmsuLi4uLi4uLi4uICoqKioqKioqIC0tIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9TYWViZWwuLi4uLi4gT3JrLi4uLi4uLi4uLiA6IE9sbGkuLi4uLi4uLi4gKioqKioqKiogLS0gdmVyZmVobHQKT2xsaSBicmVpdGV0IHNlaW5lIEhhZW5kZSBhdXMgdW5kIHNhZ3Q6IFNDSFVUWiEKT2xsaSB3aXJkIHZvbiBlaW5lciBibGFldWxpY2ggc2NoaW1tZXJuZGVuIEF1cmEgZWluZ2VodWVsbHQuCiAgLi4uLm5vcm1hbC9GZXVlcmhhbmQuLi4gRHUuLi4uLi4uLi4uLiA6IE9yay4uLi4uLi4uLi4gKioqKioqKiogLT4gc2VociBoYXJ0CiAgLi4uLm5vcm1hbC9GTk9SRC4uLi4uLi4gT2xsaS4uLi4uLi4uLiA6IE9yay4uLi4uLi4uLi4gKioqKioqKiogLS0gZ2V0cm9mZmVuCiAgLi4uLm5vcm1hbC9TYWViZWwuLi4uLi4gT3JrLi4uLi4uLi4uLiA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gdmVyZmVobHQKICAKW3NjaGF1XQogIApEdSBiaXN0IGltIEhvZWhsZW5sYWJ5cmludGggZGVyIFNjaHJlY2tlbnNzcGl0emUuIER1bmtsZSBHYWVuZ2UgZnVlaHJlbgpuYWNoIE5vcmRlbiwgU3VlZGVuIHVuZCBXZXN0ZW4uIERlciBzdWVkbGljaGUgR2FuZyBpc3QgZXR3YXMgbWVya3d1ZXJkaWcsCmRlbm4gc2VpbiBFaW5nYW5nIGlzdCBtaXQgZ2xhZW56ZW5kZW0gTWV0YWxsIHNlbHRzYW0gYmVzY2hsYWdlbi4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCltUZWFtOk5hY2hiYXJuXSBPbGxpLgpFaW4gQW5mdWVocmVyIGRlciBPcmtzLgpMZWJlbnNwdW5rdGU6IDE3OCAoMjEwKSAgTWFnaWVwdW5rdGU6IDE3ICgyMjYpIFN0YWJtYWdpZTogMCAoNzUpCkZsYW1tZW5kZSBIYW5kIChlaW4pICBXaWxsZSAoYXVzKSAgWEhhbmQgKGVpbikgIFNjaHV0enphdWJlciAoU2NodXR6aHVlbGxlKQogIC4uLi5ub3JtYWwvRmV1ZXJoYW5kLi4uIER1Li4uLi4uLi4uLi4gOiBPcmsuLi4uLi4uLi4uICoqKioqKioqIC0+IHNlaHIgaGFydAogIC4uLi5ub3JtYWwvRk5PUkQuLi4uLi4uIE9sbGkuLi4uLi4uLi4gOiBPcmsuLi4uLi4uLi4uICoqKioqKioqIC0tIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9TYWViZWwuLi4uLi4gT3JrLi4uLi4uLi4uLiA6IE9sbGkuLi4uLi4uLi4gKioqKioqKiogLS0gdmVyZmVobHQKICAuLi4ubm9ybWFsL0ZldWVyaGFuZC4uLiBEdS4uLi4uLi4uLi4uIDogT3JrLi4uLi4uLi4uLiAqKioqKioqKiAtPiBzZWhyIGhhcnQKICAuLi4ubm9ybWFsL0ZOT1JELi4uLi4uLiBPbGxpLi4uLi4uLi4uIDogT3JrLi4uLi4uLi4uLiAqKioqKioqKiAtLSB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvU2FlYmVsLi4uLi4uIE9yay4uLi4uLi4uLi4gOiBPbGxpLi4uLi4uLi4uICoqKioqKioqIC0tIHZlcmZlaGx0CkRpZSBWZXJ6YXViZXJ1bmcgRGVpbmVyIEhhZW5kZSBsYWVzc3QgbGFuZ3NhbSBuYWNoLgogIC4uLi5ub3JtYWwvRmV1ZXJoYW5kLi4uIER1Li4uLi4uLi4uLi4gOiBPcmsuLi4uLi4uLi4uICoqKioqKioqIC0+IEtyYWNoZW4KRGVyIE9yayBmYWVsbHQgdG90IHp1IEJvZGVuLgoKCgpJc3QgUmluZ29yL1RpYW1hayBiZWkgZGVuIElsbHVtaW5hbnRlbj8gT2RlciBncmVpZnQgRk5PUkQgamV0enQgdW5zaWNodGJhciBhbj8KQWxwaGEgaXN0IHZlcmFlbmdzdGlndC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmltbWVyIHdpZWRlciBzY2hvZW4gOykgKFpvb2ssIDE5LiBKYW4gMjAwMCwgMjE6MzA6MTYpOgpbVG9kOkxhcnNdIEVpbiBPcmsgaGF0IGdlcmFkZSBXdWVyZ29uIHVtZ2VicmFjaHQuCld1ZXJnb24gaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRm9vYmFyLCAyMC4gSmFuIDIwMDAsIDAwOjUyOjE0KToKU3RlbHogdGVpbHQgRGlyIG1pdDogc2NoZWlzc2UuLi4ubmVuZSBvcmsgaGF0IHVucyB6ZXJsZWd0CltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIFN0ZWx6IHVtZ2VicmFjaHQuCgpCZWlsZWlkLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU3BydWNoIGRlciBXb2NoZSAoQ2F0d2VhemxlLCAyMC4gSmFuIDIwMDAsIDA5OjI3OjMzKToKfiMhIHJuPUdyaW1tYm9ybiBydD05NDgyOTkwNTkgcmc9c2NobWFycm4KfiMhIHRpZD05NDgxMzQzMDUKVmVyZGFtbXQgR3JpbW1ib3JuLgoKX0pldHp0XyBoYXN0IGR1IG5lbiBGbGFtZXdhciBhbSBIYWxzLiBIYXN0IER1IGdlcmFkZSBkaWVzZSBCcnVlaGUKS29lbHNjaCBpbiBWZXJiaW5kdW5nIG1pdCBkZXIgQmV6ZWljaG51bmcgJ2Fuc3RhZW5kaWdlcyBCaWVyJyAKZXJ3YWVobnQ/CgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTaWUgc2luZCB1bnRlciB1bnMuLi4uIChNZW5hY2UsIDIwLiBKYW4gMjAwMCwgMTM6NDY6MjMpOgp+IyEgcm49QWxwaGEgcnQ9OTQ4MzA3OTQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ4MzA3OTQzCkljaCB3dWVyZGUgZWhlciBzYWdlbiwgZGFzcyBPbGxpIG1pdCBGTk9SRCBhbmdyZWlmdCwgZnJhZyBpaG4gZG9jaCBtYWwsIHdhcyBlcgpiZWkgc2V0aGFuZHMgZWluZ2V0cmFnZW4gaGF0LgoKTWVuYWNlICphdWZrbGFlcmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTaWUgc2luZCB1bnRlciB1bnMuLi4uIChOaWNvbGFpLCAyMC4gSmFuIDIwMDAsIDE0OjQ5OjUzKToKfiMhIHJuPU1lbmFjZSBydD05NDgzNzIzODMgcmc9c2NobWFycm4KfiMhIHRpZD05NDgzMDc5NDMKCi4uLm9kZXIgd2llIHNlaW4gWmF1YmVyc3RhYiBoZWlzc3QuLi4uOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdld2luZGUgZ2VmYWVsbGlnPyAoQ2F0d2VhemxlLCAyMC4gSmFuIDIwMDAsIDE2OjUxOjU3KToKCkJvaW5nIHRlaWx0IERpciBtaXQ6IGR1LCBjYXR0eT8KRHUgdGVpbHN0IEJvaW5nIG1pdDogd2Fzc24/CkJvaW5nIHRlaWx0IERpciBtaXQ6IGljaCBoYWIgbmUgZnJhZ2UgLi4uCkR1IHRlaWxzdCBCb2luZyBtaXQ6IHdpbGxzdG4gZ2V3aW5kZSBpbSBoaW50ZXJuPyA6LSkKQm9pbmcgdGVpbHQgRGlyIG1pdDogb2VobSAuLi4gOykKQm9pbmcgdGVpbHQgRGlyIG1pdDogb2ssIHZlcmdpc3MgZXMgOykgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTcHJ1Y2ggZGVyIFdvY2hlIChKYW1hbHNraSwgMjAuIEphbiAyMDAwLCAxNzozMTo1Mik6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9OTQ4MzU2ODUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ4MTM0MzA1CkphbWFsc2tpIHNjaHdvZXJ0IGVoIGF1ZiB0Y2hlY2hpc2NoZXMgQmllciEgT2RlciBLbG9zdGVyYmllciEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaGFkZW5zdHlwIFNlbGJzdHZlcmdpZnR1bmchIChKYW1hbHNraSwgMjAuIEphbiAyMDAwLCAxOTo1MjowNik6CkNvb2wsIER1IGhhc3QgZWluZSBsZWljaHRlIFZlcmdpZnR1bmcuCkNvb2wsIER1IGhhc3QgZWluZSBsZWljaHRlIFZlcmdpZnR1bmcuCkNvb2wsIER1IGhhc3QgZWluZSBsZWljaHRlIFZlcmdpZnR1bmcuCkR1IGFlbmRlcnN0IGRlbiBTY2hhZGVuc3R5cC4KQ29vbCwgRHUgaGFzdCBlaW5lIGxlaWNodGUgVmVyZ2lmdHVuZy4KCkd1dGVyIEVpbmZhbGwsIENoYW9zbWFncyEKCkphbWFsc2tpOiBMYW5nc2FtIGtvbW10IGxlYmVuIGluIGRpZSBCdWRlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNpZSBzaW5kIHVudGVyIHVucy4uLi4gKE9sbGksIDIwLiBKYW4gMjAwMCwgMjE6NDI6MDYpOgp+IyEgcm49TWVuYWNlIHJ0PTk0ODM3MjM4MyByZz1zY2htYXJybgp+IyEgdGlkPTk0ODMwNzk0MwpOdW4sIHNldGhhbmRzIHdhciBlcyBzY2hvbm1hbCBuaWNodCA7KQoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2llIHNpbmQgdW50ZXIgdW5zLi4uLiAoT2xsaSwgMjAuIEphbiAyMDAwLCAyMTo0MzoyMik6Cn4jISBybj1OaWNvbGFpIHJ0PTk0ODM3NjE5MyByZz1zY2htYXJybgp+IyEgdGlkPTk0ODMwNzk0MwpTY2hhZGUsIGljaCBiaW4gZW50bGFydnQgd29yZGVuLi4uLiAqZyoKCk9sbGkgLSBoYXR0ZSBzY2hvbiBkcmF1ZiBnZXdhcnRldCwgZGFzcyBtYWwgd2VyIGZyYWd0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2V3aW5kZSBnZWZhZWxsaWc/IChHcmltbWJvcm4sIDIxLiBKYW4gMjAwMCwgMTQ6MjQ6MTIpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTk0ODM4MzUxNyByZz1zY2htYXJybgp+IyEgdGlkPTk0ODM4MzUxNwpIZSwgZGFzIG11c3MgaWNoIG1pciBtZXJrZW4gZnVlciBkaWUgQmVyYXR1bmcgaGllciBpbSBSZWNoZW56ZW50cnVtLgpBbGxlcywgd2FzIGRpZSBCZW51dHplciBmZXJuaGFlbHQgaXN0IEd1dC4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdld2luZGUgZ2VmYWVsbGlnPyAoWWVuZGksIDIxLiBKYW4gMjAwMCwgMTU6NDQ6NDMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0ODQ2MTA1MiByZz1zY2htYXJybgp+IyEgdGlkPTk0ODM4MzUxNwpIbW1tLi4uIHNvIGVpbiBHZXdpbmRlIGltIEhpbnRlcm4gaGFldHRlIHdhcy4uLgpEYXMgc3RlbGxlIGljaCBtaXIgc28gYWVobmxpY2ggdm9yIHdpZSBkaWVzZSBTYWhuZXNwZW5kZXJzcHJ1ZWhrYXBwZW4uLi4KCkdlc2NocmF1YnRlIFNjaGVpc3NlIGhhbHQuLi4KCkljaCBnbGF1YmUsIGljaCBiaW4gamV0enQgYmVzc2VyIHN0aWxsLgoKWVRZCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVm9uIHRlaWxlbiB3YXIga2VpbmUgUmVkZSAuLi4gKE5pZ2h0LCAyMS4gSmFuIDIwMDAsIDE1OjUzOjI3KToKW0F1ZiBkZW0gRnJlaWRob2ZdCgpEdSBiaXN0IGluIGVpbmVtIEdyYWIuIEVzIGtvZW5udGUgc29nYXIgRGVpbiBlaWdlbmVzIHdlcmRlbi4KRXMgZ2VodCBudXIgcmF1cy4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHJhdXMuCkVpbiBrbGVpbmVzIE1hZWRjaGVuLgpMaXNhIHNldWZ6dCB0aWVmLgpEdSB6ZWlnc3QgTGlzYSBkZWluZSBQdXBwZS4KTGlzYSBicmljaHQgaW4gVHJhZW5lbiBhdXMuCgogICAgTmlnaHQsIG5vY2ggaW1tZXIgZmllcyBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR2V3aW5kZSBnZWZhZWxsaWc/IChHcmltbWJvcm4sIDIxLiBKYW4gMjAwMCwgMTU6NTU6MDkpOgp+IyEgcm49WWVuZGkgcnQ9OTQ4NDY1ODgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ4MzgzNTE3CkdpYnMgZG9jaCB6dSwgRGlyIGdlZmFlbGx0IGRpZSBJZGVlIG51ciwgd2VpbCBEaXIgZGFzIGVpbmUgSGlsZmUgYmVpbSBFaW5zdGllZwp3YWVyZS4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW5lIGZldXJpZ2UgTWFobHplaXQuLi4gKFNhbXRwZm90ZSwgMjEuIEphbiAyMDAwLCAxNzo1Mzo1Nik6CkNoYW9zbG9yZCBzY2h3ZWJ0IGhlcmVpbi4KR3JhaW9wIGVyc2NoZWludCBpbiBlaW5lbSBNZWVyIGF1cyBGbGFtbWVuLgpDaGFvc2xvcmQgaW50b25pZXJ0IGVpbiBwYWFyIGdub3Rpc2NoZSBXb3J0ZSB1bmQgc2Nod2VidCBuYWNoIFN1ZWRlbi4KR3JhaW9wIGxvZGVydCBmbGFtbWVuZCBkYXZvbi4KRHUgc2Fnc3Q6IGhtCkRlciBTdHJhbmR3ZWcgZnVlaHJ0IGluIE5vcmQtU3VlZCBSaWNodHVuZyB3ZWl0ZXIuIEltIE9zdGVuIGlzdCBlaW5lCnVyYWx0ZSBSdWluZSB6dSBzZWhlbi4gSW0gV2VzdGVuIGJlZmluZGV0IHNpY2ggZWluIEdhc3Rob2YuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuIHVuZCBub3JkZW4uCltUb2Q6TGFyc10gRWluIERyYWNoZSBoYXQgZ2VyYWRlIENoYW9zbG9yZCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBEcmFjaGVdIFVuZCB3aWVkZXIgZ2lidCBlcyBlaW5lIGd1dCBkdXJjaGdlZ2FydGUgTWFobHplaXQgZnVlciBkZW4KW1RvZDpFaW4gRHJhY2hlXSBEcmFjaGVuLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVhIChOaWNvbGFpLCAyMS4gSmFuIDIwMDAsIDIwOjA5OjM4KToKCkJpZ2Zvb3QgdHJpdHQgRGlyIGF1ZiBkaWUgRnVlc3NlLgpTa3kgaGF1dCBEaXIgYXVmIGRlbiBLb3BmLgoKLi4uYXV0c2NoLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVlIFp3ZWl0aXM/IChCaWVsZWZlbGQsIDIzLiBKYW4gMjAwMCwgMjI6NTE6MDkpOgpEZWluIEZyZXVuZCBJdm8gZ2FlaG50IHNvIGxhdXQsIGRhc3MgZHUgZXMgbm9jaCBhdXMgZGVyIEZlcm5lIGhvZXJzdC4KRGVpbmUgRnJldW5kaW4gTGVpYm5peiB0ZWlsdCBEaXIgbWl0OiBpY2ggZ2VoIGRhbm4gbWFsCgpIbSwgZGFzIGVya2xhZXIgbWlyIG1hbCBlaW5lci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc292aWVsIHp1IHVuZ2VzdG9lcnQgaWRsZW4uLi4gKENhbHpvbmUsIDI0LiBKYW4gMjAwMCwgMDA6NTA6MDkpOgpEcm9sbGlzIEthdXRzY2h1a2hhbW1lciBmbGllZ3QgaGVyZWluLCB0cmlmZnQgWGVuYWRhIGFtIEtvcGYsIHRhbnp0IGRvcnQKZWluZSBrbGVpbmUgUnVtYmEgdW5kIHNwcmluZ3Qgd2llZGVyIGRhdm9uLiBFaWdlbmFydGlnLgpEcm9sbGlzIEthdXRzY2h1a2hhbW1lciBmbGllZ3QgaGVyZWluLCB0cmlmZnQgWGVuYWRhIGFtIEtvcGYsIHRhbnp0IGRvcnQKZWluZSBrbGVpbmUgUnVtYmEgdW5kIHNwcmluZ3Qgd2llZGVyIGRhdm9uLiBFaWdlbmFydGlnLgpEcm9sbGlzIEthdXRzY2h1a2hhbW1lciBmbGllZ3QgaGVyZWluLCB0cmlmZnQgWGVuYWRhIGFtIEtvcGYsIHRhbnp0IGRvcnQKZWluZSBrbGVpbmUgUnVtYmEgdW5kIHNwcmluZ3Qgd2llZGVyIGRhdm9uLiBFaWdlbmFydGlnLgpEcm9sbGlzIEthdXRzY2h1a2hhbW1lciBmbGllZ3QgaGVyZWluLCB0cmlmZnQgWGVuYWRhIGFtIEtvcGYsIHRhbnp0IGRvcnQKZWluZSBrbGVpbmUgUnVtYmEgdW5kIHNwcmluZ3Qgd2llZGVyIGRhdm9uLiBFaWdlbmFydGlnLgpEcm9sbGlzIEthdXRzY2h1a2hhbW1lciBmbGllZ3QgaGVyZWluLCB0cmlmZnQgWGVuYWRhIGFtIEtvcGYsIHRhbnp0IGRvcnQKZWluZSBrbGVpbmUgUnVtYmEgdW5kIHNwcmluZ3Qgd2llZGVyIGRhdm9uLiBFaWdlbmFydGlnLgpEcm9sbGlzIEthdXRzY2h1a2hhbW1lciBmbGllZ3QgaGVyZWluLCB0cmlmZnQgWGVuYWRhIGFtIEtvcGYsIHRhbnp0IGRvcnQKZWluZSBrbGVpbmUgUnVtYmEgdW5kIHNwcmluZ3Qgd2llZGVyIGRhdm9uLiBFaWdlbmFydGlnLgpEcm9sbGlzIEthdXRzY2h1a2hhbW1lciBmbGllZ3QgaGVyZWluLCB0cmlmZnQgWGVuYWRhIGFtIEtvcGYsIHRhbnp0IGRvcnQKZWluZSBrbGVpbmUgUnVtYmEgdW5kIHNwcmluZ3Qgd2llZGVyIGRhdm9uLiBFaWdlbmFydGlnLgpEcm9sbGlzIEthdXRzY2h1a2hhbW1lciBmbGllZ3QgaGVyZWluLCB0cmlmZnQgWGVuYWRhIGFtIEtvcGYsIHRhbnp0IGRvcnQKZWluZSBrbGVpbmUgUnVtYmEgdW5kIHNwcmluZ3Qgd2llZGVyIGRhdm9uLiBFaWdlbmFydGlnLgpEcm9sbGlzIEthdXRzY2h1a2hhbW1lciBmbGllZ3QgaGVyZWluLCB0cmlmZnQgWGVuYWRhIGFtIEtvcGYsIHRhbnp0IGRvcnQKZWluZSBrbGVpbmUgUnVtYmEgdW5kIHNwcmluZ3Qgd2llZGVyIGRhdm9uLiBFaWdlbmFydGlnLgpEcm9sbGlzIEthdXRzY2h1a2hhbW1lciBmbGllZ3QgaGVyZWluLCB0cmlmZnQgWGVuYWRhIGFtIEtvcGYsIHRhbnp0IGRvcnQKZWluZSBrbGVpbmUgUnVtYmEgdW5kIHNwcmluZ3Qgd2llZGVyIGRhdm9uLiBFaWdlbmFydGlnLgpEcm9sbGlzIEthdXRzY2h1a2hhbW1lciBmbGllZ3QgaGVyZWluLCB0cmlmZnQgWGVuYWRhIGFtIEtvcGYsIHRhbnp0IGRvcnQKZWluZSBrbGVpbmUgUnVtYmEgdW5kIHNwcmluZ3Qgd2llZGVyIGRhdm9uLiBFaWdlbmFydGlnLgpzYwpEdSBiZWZpbmRlc3QgZGljaCBpbiBkZXIgUnVpbmUgZGVyIEFrYWRlbWllIGRlciBXaXNzZW5zY2hhZnRlbi4gRGllc2UKU3RhZXR0ZSBkZXIgV2lzc2Vuc2NoYWZ0IHd1cmRlIGR1cmNoIGVpbiBncm9zc2VzIEZldWVyIHRvdGFsIHZlcm5pY2h0ZXQsCnVuZCBlcyBmZWhsdCBkYXMgR2VsZCBmdWVyIGRlbiBXaWVkZXJhdWZiYXUuIEltIFdlc3RlbiBsaWVndCBlaW5lClN0cmFzc2Vua3JldXp1bmcuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uClhlbmFkYSAoRWxmZSwgdm9ybGF1dCkuCj4gRGFya3dpbmcgc2NoYXV0IHNpY2ggc3VjaGVuZCB1bS4KRGFya3dpbmcga2xldHRlcnQgaW4gZGVuIEtlbGxlci4KRGFya3dpbmcgdmVyZm9sZ3Qgc2VpbmVuIFZlcnN0YW5kIGZsdWNoZW5kLgpEcm9sbGkgdGVpbHQgRGlyIG1pdDogZHUgc3RlaHN0IGRhIHVuZ3VlbnN0aWcgOikKCkVpbmUgbWl0IGRlbiBBdWdlbiByb2xsZW5kZSBDYWx6b25lIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpodWNoIGhhdCBkZXIgZXMgZWlsaWcgIChQdWssIDI0LiBKYW4gMjAwMCwgMTk6MzE6NDcpOgpEZXIgV2VnaGllciBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW4gV2VnaGllciB6aWVodCBlaW5lbiBBbnRpLUZldWVyLVJpbmcgYXVzLgpFaW4gV2VnaGllciBrb21tdCBhbi4KRWluIFdlZ2hpZXIgemllaHQgZWluIGBgQm9ybiB0byBLaWxsJyctU3Rpcm5iYW5kIGFuLgpFaW4gV2VnaGllciB6aWVodCBlaW5lbiBBbnRpLUZldWVyLVJpbmcgYW4uCkVpbiBXZWdoaWVyIHp1ZWNrdCBlaW5lbiBWb2xsc3RyZWNrZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJc3MgbWlyIHNjaGxlY2h0Li4gKEx1ZywgMjQuIEphbiAyMDAwLCAyMzo1MDozNSk6CgpXZW0gd2lyZCBkYSBuaWNodCB1ZWJlbD8KCkxob3JzIHN0YXBmdCBoZXJlaW4uCkxob3JzIHNhZ3Q6IERhIGRhcyBEZW5rbWFsIHVtIGRpZSBTY2hsYWNodCB2b24gSWdyYXogTHVtYmFyIGphIG51biBlbmRsaWNoCkxob3JzIHNhZ3Q6IGZlcnRpZ2dlc3RlbGx0IGlzdCB3aXJkIGRpZXNlIFNhbW1sdW5nIGRlbiBIaW50ZXJibGllYmVuZW4gZGVyCkxob3JzIHNhZ3Q6IHRhcGZlcmVuLGVocnZvbGxlbiB1bmQgZ2VmYWxsZW5lbiBUcnZlcyB6dWd1dGUga29tbWVuLiBCaXR0ZSBoYWJ0Ckxob3JzIHNhZ3Q6IGVpbiBIZXJ6IHVuZCBnZWRlbmt0IGRlciBIZWxkZW50YXRlbiB2b24gSWdyYXogTHVtYmFyIGluZGVtIGlocgpMaG9ycyBzYWd0OiBkZW4gV2l0d2VuIHVuZCBXYWlzZW4gbWl0IEV1cmVyIFNwZW5kZSBoZWxmdC4KTGhvcnMgc2NodWV0dGVsdCBtaXQgc2VpbmVyIFNwZW5kZW5idWVjaHNlLiBEdSBzb2xsdGVzdCBsaWViZXIgZWluIHBhYXIKTXVlbnplbiBzcGVuZGVuLCBzY2hsaWVzc2xpY2ggaXN0IGRhcyBHZWxkIGZ1ZXIgZWluZW4gZ3V0ZW4gWndlY2suCkR1IGtvdHp0IGF1ZiBMaG9ycy4KTGhvcnMgc2FndDogaGlybmkKTHVnIGdyaW5zdCBtaXQgbmFkZWxzcGl0emVuIEVja3phZWhuZW4uCkxob3JzIHNhZ3Q6IGlyZ2VuZHdhbm4gaG9lcnRzIGF1ZgpEdSBzYWdzdDogV2FubiBkZW5uPwpMaG9ycyBzdGFwZnQgbmFjaCBOb3JkZW4uCgoKTXVuZCBhYndpc2NoZW5kCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2lldmllbGUgRGFlbW9uZW4ga2FubiBlaW4gT3JrIGhhYmVuPyAoTGlnaHRuaW5nLCAyNS4gSmFuIDIwMDAsIDAwOjM2OjU0KToKRHUgYmVmaW5kZXN0IERpY2ggYXVmIGRlciBPcmthbGxlZS4gQW0gU3RyYXNzZW5yYW5kIHN0ZWhlbiB3dW5kZXJ2b2xsZSBQYXBwZWxuCnVuZCBLYXN0YW5pZW5iYWV1bWUuIERhcyBIYXVzIGltIE9zdGVuIHNpZWh0IGVpbmxhZGVuZCBhdXMuIERpZSBTdHJhc3NlCm9lZmZuZXQgc2ljaCBuYWNoIE5vcmRlbiBoaW4gdW5kIGZ1ZWhydCBhdWYgZGVuIE1hcmt0cGxhdHouCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuIHVuZCBub3JkZW4uCkdyYWlvcCBkZXIgcmFzZW5kZSBGZXVlcmRhZW1vbi4gICAgICAgIERhZWRoZWwgZGVyIGVsZmlzY2hlIERhZW1vbi4KRGVyIEhldHplcmRhZW1vbiBSeXRob3RoLiAgICAgICAgICAgICAgSG90aHJvZyBkZXIgU2NoYWthbGtvZXBmaWdlLgpGbGF4dHJpIGRlciBhZXR6ZW5kZSBTYWV1cmVkYWVtb24uICAgICBDaG9jaG9zIGRlciBzY2h3YXJ6ZSBEYWVtb24uCkRlciB3dWV0ZW5kZSBBbnRodWt0LiAgICAgICAgICAgICAgICAgIENob2Nob3MgZGVyIHNjaHdhcnplIERhZW1vbi4KRGFlZGhlbCBkZXIgZWxmaXNjaGUgRGFlbW9uLiAgICAgICAgICAgSG90aHJvZyBkZXIgU2NoYWthbGtvZXBmaWdlLgpEZXIgd3VldGVuZGUgQW50aHVrdC4gICAgICAgICAgICAgICAgICBFaW4gT3JrLgpIb3Rocm9nIGRlciBTY2hha2Fsa29lcGZpZ2UuICAgICAgICAgICAKCkxpZ2h0bmluZyB3aWxsIGF1Y2ggMTAgQmVpc3RhZW5kZSBhdWYgZWlubWFsIGhhYmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NobXVuemVsKiAoTWlub3RhdXIsIDI1LiBKYW4gMjAwMCwgMDE6NDQ6NTUpOgpbWmF1YmVyZXI6TGx5c3RyYXRoZV0gRWluIER1bmtlbGVsZiBoYXQgdW5zIGdlcmFkZSB6aWVtbGljaCB2aWVsZSBLb21wb25lbnRlbgpbWmF1YmVyZXI6TGx5c3RyYXRoZV0gc3BlbmRpZXJ0IQpbWmF1YmVyZXI6UGVyaXNoYW4gbGFjaHQuXQpbWmF1YmVyZXI6TGlsaXB1dCBncmluc3QuXQpbWmF1YmVyZXI6U3Ryb2hhbG1dIG51amEuIHBhYWFhZHJlZWVlaWMsIGRlaW5lIGRlbGZlbiBidWdnZW4gOykKW1phdWJlcmVyOkhvb2Qga3JhdHp0IHNpY2ggYW0ga29wcF0gIAoKTWlub3RhdXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRpZSBmcmV1ZCdzY2hlbiB3ZXJkZW4gZ2VybmUgZ2VzZWhlbi4uLiAoR25vbWUsIDI1LiBKYW4gMjAwMCwgMTQ6NDc6NDkpOgonUFM6IEljaCBoYWJ0IGFsbGUgZWluZW4gU2NodXNzLicKLi4uCgpEdSB0ZWlsc3QgQ2F0d2VhemxlIG1pdDogamFqYSwgZGFzIHdhciBtYWwgd2llZGVyIGVpbiBmcmV1ZCdzY2hlciwgZ2VsbD8gOikKQ2F0d2VhemxlIHRlaWx0IERpciBtaXQ6IGphYWFhYWEgOi0pCkNhdHdlYXpsZSB0ZWlsdCBEaXIgbWl0OiBkdW5uZGFzIDopCkNhdHdlYXpsZS0+R25vbWUgdGFldHNjaGVsdCBEaXIgYXVzIGRlciBGZXJuZSBkZW4gS29wZi4KQ2F0d2VhemxlIHRlaWx0IERpciBtaXQ6IHNpZWhzdGUsIHNjaG9uIHdpZWRlci4uLi5kdW1tZGFzIQoKZ25PbWUsIGltbWVyIG5vY2gga2ljaGVybmQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMjUuIEphbiAyMDAwLCAxNTowNzozMCk6CiJEZXIgQmxpY2trb250YWt0IGlzdCBkZXIgZXJzdGUgQnJpZWZ3ZWNoc2VsIGRlciBMaWViZSIgKE5pbm9uIGRlIExlbmRsb3MpCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBCZXJpY2h0IGF1cyBLb2VsbGUgKEFuYXRvbCwgMjUuIEphbiAyMDAwLCAxNToxMzo0NCk6Cn4jISBybj1BbGJvaW4gcnQ9OTQ4ODA5NTgwIHJnPXRyZWZmZW4KfiMhIHRpZD05NDgxOTc1OTUKIm5hY2ggQmlsbCBHYXRlcyI/IFdhZXJlIHp1IHNjaG9lbiwgdW0gd2FociB6dSBzZWluLgoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FhYWFoLCBTbHlmb3ghIChNYWhhdG1hLCAyNS4gSmFuIDIwMDAsIDIxOjU0OjA3KToKSGFjaGltYW4gZW50ZGVja3QgRGljaCB1bmQgdmVybmVpZ3Qgc2ljaCB2b3IgRGlyLgpIYWNoaW1hbiByaWVjaHQgQmllciB1bmQgbGFldWZ0IG5hY2ggTm9yZG9zdGVuLgpHYWJpIHRyaXR0IGF1cyBlaW5lciBTY2h3ZWZlbHdvbGtlLgpHYWJpIGdlaHQgbmFjaCBOb3Jkb3N0ZW4uClNtdXQgdHJpdHQgYXVzIGVpbmVyIFNjaHdlZmVsd29sa2UuClNtdXQgZmxpZWd0IG5hY2ggTm9yZG9zdGVuLgpTbHlmb3ggd2lyZCB2b24gZWluZW4gUG9ydGFsIHdpZWRlciBhdXNnZXNwdWNrdC4KU2x5Zm94IGh1bXBlbHQgbmFjaCBOb3Jkb3N0ZW4uCkZhc3Qgd2FlcmUgZGFzIG1hZ2lzY2hlIFBvcnRhbCBleHBsb2RpZXJ0IS4KRmFzdCB3YWVyc3QgRHUgbmFjaCBOb3Jkb3N0ZW4gZ2VzdG9scGVydC4KTnVtbWVyZWlucyB0cml0dCBhdXMgZWluZXIgU2Nod2VmZWx3b2xrZS4KTnVtbWVyZWlucyBzdGFwZnQgaGluYXVzIG5hY2ggTm9yZG9zdGVuLgoKVW5kIGRhcyBpbSBzZWxiZW4gQXVnZW5ibGljaywgd2FzIGVpbiBTY3JvbGwuLi4KTWFoYXRtYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhYWFhaCwgU2x5Zm94ISAoQW5hdG9sLCAyNS4gSmFuIDIwMDAsIDIxOjU5OjM3KToKfiMhIHJuPU1haGF0bWEgcnQ9OTQ4ODMzNjQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ4ODMzNjQ3Ck1hc3NlIHN0YXR0IEtsYXNzZS4KCkFuYXRvbCAtIG9obmUgU21pbGV5CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKnNuaWZmKiAoRGV2aWxjaGVuLCAyNS4gSmFuIDIwMDAsIDIyOjExOjQ4KToKbwpEZXIgVGhyb25zYWFsIGRlcyBad2VyZ2Vua29lbmlncyBpc3QgZWluIHByYWNodHZvbGxlciBSYXVtLCBkZXIgdm9uIHZpZWxlbgpodW5kZXJ0IEZhY2tlbG4gZXJoZWxsdCB3aXJkLiBFciBlcnN0cmVja3Qgc2ljaCB2b24gaGllciBhdXMgaW4gbm9lcmRsaWNoZXIKUmljaHR1bmcuIERpcmVrdCB2b3IgRGlyIHNpbmQgZWluaWdlIFN0dWhscmVpaGVuIGF1Zmdlc3RlbGx0LCBhdWYgZGVuZW4gYmVpCmRlbiBncm9zc2VuIFZlcnNhbW1sdW5nZW4gZGllIEFuZnVlaHJlciBkZXIgWndlcmdlIHNpdHplbi4gV2VpdGVyIGltIE5vcmRlbgppc3QgZGVyIFRocm9uLCBlaW4gbWFlY2h0aWdlcyBHZWJpbGRlLiBEZXIgQm9kZW4gaXN0IG1pdCB2ZXJzY2hpZWRlbmZhcmJpZ2VuClN0ZWluZW4gYmVsZWd0LCBkaWUgenVzYW1tZW4gZWluIGdld2FsdGlnZXMgTXVzdGVyIGVyZ2ViZW4uIERpZSBXYWVuZGUgaGFlbmdlbgp2b2xsZXIgV2FuZHRlcHBpY2hlLCBkaWUgU3plbmVuIGF1cyBkZW0gcnVobXJlaWNoZW4gS2FtcGYgZGVyIFp3ZXJnZQpkYXJzdGVsbGVuLiBEaWUgRGVja2Ugc2NoZWludCBzZWx0c2FtZXJ3ZWlzZSB6dSBsZXVjaHRlbi4gCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiB3ZXN0ZW4gdW5kIG5vcmRlbi4KRGllIGJlcmVpdHMgemllbWxpY2ggc3RpbmtlbmRlIExlaWNoZSBlaW5lcyBad2VyZ3MuCkRpZSBzY2hpbW1lbG5kZSB1bmQgaGFsYnZlcndlc3RlIExlaWNoZSBBYmJhdGhvcnMuCkVpbiBGZXN0dW5nc3dhZWNodGVyLgpFaW4gWndlcmcgdmVyc3VjaHQgZWluZSBGaW50ZSBnZWdlbiBEaWNoLCBhYmVyIER1IGZhZWxsc3QgbmF0dWVybGljaCBuaWNodApkYXJhdWYgaGVyZWluLgpEZXIgWndlcmcgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KCnNvIGhhZXNzbGljaCBiaW4gaWNoIG51IGF1Y2ggd2llZGVyIG5pY2guLi4uCkRldiosIGRpZXNtYWwgZGVwcmltaWVydC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpzbmlmZiogKEFuYXRvbCwgMjUuIEphbiAyMDAwLCAyMjoyMTozNCk6Cn4jISBybj1EZXZpbGNoZW4gcnQ9OTQ4ODM0NzA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ4ODM0NzA4CkFtIEZ1c3NwaWx6IGluZml6aWVydD8KCkFuYXRvbCwgaGF0IHNlbGJzdCBtaXQgWndlcmdlbiBNaXRsZWlkIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IEJlcmljaHQgYXVzIEtvZWxsZSAoQW5hdG9sLCAyNS4gSmFuIDIwMDAsIDIyOjM2OjU3KToKfiMhIG9uPUFuYXRvbCBvdD05NDg4MzYxOTUgb2c9dHJlZmZlbgp+IyEgcm49QWxwaGEgcnQ9OTQ4ODM1MTUwIHJnPXRyZWZmZW4KfiMhIHRpZD05NDgxOTc1OTUKV3VyemVsIGlzdCBzY2hvbiB2b2xsamFlaHJpZywgd2Vpc3N0IER1LCBBbHBoYT8KCkFuYXRvbCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMyOiBCZXJpY2h0IGF1cyBLb2VsbGUgKEFscGhhLCAyNS4gSmFuIDIwMDAsIDIzOjA5OjE0KToKfiMhIHJuPUFuYXRvbCBydD05NDg4MzYyMTcgcmc9c2NobWFycm4KfiMhIHRpZD05NDgxOTc1OTUKV2Vpc3MgaWNoLgoKQWJlciA2MCBpc3NlciBkb2NoIG5vY2ggbmljaHQsIG9kZXI/CgpBbHBoYS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKnNuaWZmKiAoTHVnLCAyNi4gSmFuIDIwMDAsIDAwOjQ5OjI4KToKfiMhIHJuPURldmlsY2hlbiBydD05NDg4MzQ3MDggcmc9c2NobWFycm4KfiMhIHRpZD05NDg4MzQ3MDgKRGV2aWxzY2hhYnJhY2tlPwoKRE9DSCEKCkduYWVkaWcKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpST09UIE9GIEFMTCBFVklMISAoTHVnLCAyNi4gSmFuIDIwMDAsIDAyOjEzOjQ2KToKCkhhaDoKCls8TWFzdGVSPjpBbHBoYV0gV2lyZCBlaCBiYWxkIGNocmFzaGVuIC0gaWNoIGhhYiBtZWhyIGFscyAyMDAuMDAwIEJlZmVobGUgaW4KWzxNYXN0ZVI+OkFscGhhXSBtZWluZXIgSGlzdG9yeSwgZGEgY2hyYXNodCBkYXMgaW1tZXIuCgpBdWYgaWhuIQpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9iIGVyIHNpY2ggYW5nZXNwcm9jaGVuIGZ1ZWhsdGU/IChNb3Jnb3RoLCAyNi4gSmFuIDIwMDAsIDA5OjU2OjQzKToKKFBhcmFjZWxzdXMpICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkNhdHdlYXpsZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbQWxsZ2VtZWluOkNhdHdlYXpsZV0gZ3VnZ3VnCltBbGxnZW1laW46QW5hdG9sXSBQYW1wZSEgOikKW0FsbGdlbWVpbjpBbmF0b2wgbXVzcyBhbHRlIEdlZnVlaGxlIGF1ZmxlYmVuIGxhc3Nlbi5dCltBbGxnZW1laW46Q2F0d2VhemxlXSBobSwgc2FndGVzdCBEdSBnZXJhZGUgV2FtcGU/CltBbGxnZW1laW46QW5hdG9sXSBPZWgsIG9kZXIgZGFzISA6KQooUGFyYWNlbHN1cykgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVjaCBuZSBhbnR3b3J0IChHb2xhcywgMjYuIEphbiAyMDAwLCAxNjoxNTo0MCk6CltUZWFtIDxub25hbWU+Ol0gVmVjdG9yIHd1cmRlIGlucyBUZWFtIGF1Zmdlbm9tbWVuLgogIE5hbWUgICAgICAgIEdpbGRlICAgICAgICAgICBMViBHTFYgIExQIChNTFApICBLUCAoTUtQKSBWb3JzLiBHUiBBUiBUUiBGUiBBClYKKiBHb2xhcyAgICAgICBLYWVtcGZlciAgICAgICAgNTYgIDIyIDIxMCAoMjE4KSAyMTAgKDIxMCkgICAxMjAgIDEgIDEgIDEgLS0gWCAtCiAgR3VhcmQgICAgICAgQmllcnNjaHVldHRsZXIgIDYyICAyMiAyMTggKDIxOCkgMTA5ICgyMTApICAgMTcwICAxICAxIC0tIC0tIFgKWAogIEthcmljICAgICAgIEthZW1wZmVyICAgICAgICA2MiAgMjMgMjA1ICgyNDIpIDE4NSAoMjAyKSAgIDE3MCAgMSAgMSAtLSAtLSBYCi0KICBWZWN0b3IgICAgICBaYXViZXJlciAgICAgICAgODIgICA5IDIxMCAoMjEwKSAyNDIgKDI0MikgICAxMDAgIDEgIDEgIDEgLS0gWAotCltUZWFtIDxub25hbWU+OkdvbGFzXSBndWFyZCwga29tbXN0IGR1IGF1Y2ggbWl0IHp1bSBERz8KW1RlYW0gPG5vbmFtZT46XSBHdWFyZCBoYXQgZGFzIFRlYW0gdmVybGFzc2VuLgpbVGVhbSA8bm9uYW1lPjpHb2xhc10gYXVjaCBuZSBhbnR3b3J0IDopCltUZWFtIDxub25hbWU+OlZlY3Rvcl0gOikgIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOikgKFNreSwgMjYuIEphbiAyMDAwLCAxODowMjoyMik6ClNvbm5lbmtpbmQgcnVmdDogaW4gZGVja3VuZwpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgR3J1bWJhcnQuCgpvaG5lIHdvcnRlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3NvIChIZXJvbWNmbHksIDI2LiBKYW4gMjAwMCwgMjE6Mjk6MzMpOgoKZndpbmsKRnJlcmluIG1vZWNodGUgZ2VyYWRlIG5pY2h0IGdlc3RvZXJ0IHdlcmRlbi4KRGllIE1pdHRlaWx1bmcgd3VyZGUgdm9uIGVpbmVtIGtsZWluZW4gS29ib2xkIGluIEVtcGZhbmcgZ2Vub21tZW4uCkVyIHdpcmQgc2llIHNwYWV0ZXIgd2VpdGVybGVpdGVuIQpHb2xhcyBtb2VjaHRlIGdlcmFkZSBuaWNodCBnZXN0b2VydCB3ZXJkZW4uCkRpZSBNaXR0ZWlsdW5nIHd1cmRlIHZvbiBlaW5lbSBrbGVpbmVuIEtvYm9sZCBpbiBFbXBmYW5nIGdlbm9tbWVuLgpFciB3aXJkIHNpZSBzcGFldGVyIHdlaXRlcmxlaXRlbiEKVG9waW5hbWJ1ciBtb2VjaHRlIGdlcmFkZSBuaWNodCBnZXN0b2VydCB3ZXJkZW4uCkRpZSBNaXR0ZWlsdW5nIHd1cmRlIHZvbiBlaW5lbSBrbGVpbmVuIEtvYm9sZCBpbiBFbXBmYW5nIGdlbm9tbWVuLgpFciB3aXJkIHNpZSBzcGFldGVyIHdlaXRlcmxlaXRlbiEKRHUgd2lua3N0IERlaW5lbiBGcmV1bmRlbiBhdXMgZGVyIEZlcm5lIHp1LgoKCnNlaHIgdmVyZGFlY2h0aWcgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyA6LyAoU291bGh1bnRlciwgMjcuIEphbiAyMDAwLCAwMzozMTo1NSk6CkF5ayB0ZWlsdCBEaXIgbWl0OiBoYXN0IGR1IHNjaG9ubWFsIGdlZ2VuIG9tYmF0aXMgZ2VrYWVtcGZ0PwouLiBrdXJ6ZSB6ZWl0IHNwYWV0ZXIuLgpbVG9kOkxhcnNdIE9tYmF0aXMgaGF0IGdlcmFkZSBBeWsgdW1nZWJyYWNodC4KCnNldWZ6CnVuZCBkYXMgd28gZ3JhZCBkaWUgdG9kZXNmb2xnZW4gd2VnIHdhcmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptYWwgd2FzIHBvbGl0aXNjaGVzIChCYWJvb24sIDI3LiBKYW4gMjAwMCwgMDk6Mzk6NDApOgpXYXMgbWljaCB6aWVtbGljaCBhbXVlc2llcnQgaGF0OgoKWml0YXQgSnVlcmdlbiBSdWV0dGdlcnMgKENEVSkgaW4gZWluZW0gQXJ0aWtlbAp6dW0gUnVlY2t0cml0dCB2b24gTWluaXN0ZXIgU2NobGV1c3NlciAoU1BEKToKIkRpZSBWZXJ0dXNjaHVuZ3N2ZXJzdWNoZSBkZXIgU1BEIGhhYmVuIGRlciAKcG9saXRpc2NoZW4gS3VsdHVyIGltIExhbmQgbmFjaGhhbHRpZyBnZXNjaGFkZXQiLgpIZWlzc3QgZGFzIGpldHp0LCBkYXNzIGRpZSBTUEQgU2NodWxkIGlzdCBhbiBkZXIKQ0RVIFNwZW5kZW5hZmZhZXJlLCBvZGVyIGRhc3MgS29obCBtZWhyZmFjaCBhdWYKS29zdGVuIHZvbiBNZWRpZW5tb2d1bCBLaXJjaCBnZWZvbGdlbiBpc3QsIG9kZXIKZGFzcyBFeC1WZXJ0ZWlkaWd1bmdzLVN0YWF0c3Nla3JldGFlcmluIEFnbmVzCkh1ZXJsYW5kLUJ1ZW5pbmcgKENEVSwgd2FzIHNvbnN0Pykgdm9uIEVsZgpBcXVpdGFuZSA1NzAuMDAwIE1hcmsgZ2Vub21tZW4gdW5kIHNpY2ggZGFubgpnZWdlbiBlaW5lIEVzc28tUGlwZWxpbmUgZWluZ2VzZXR6dCBoYXQ/CgpBdWNoIG5ldHQ6IERpZSBha3R1ZWxsZSBFeHByZXNzLVNjaGxhZ3plaWxlCihvZGVyIHdhcnMgQmxvZWReSF5IXkheSGlsZD8gRWdhbCwgaXN0IGJlaWRlcwppbnp3aXNjaGVuIGRhcyBnbGVpY2hlLikgdWViZXIgZGllIGhhbGJlClRpdGVsc2VpdGUgIkx1ZWdlbi1taW5pc3RlciB0cml0dCB6dXJ1ZWNrIi4KV2FzIGJpdHRlIGlzdCBkYXMgTWluaXN0ZXJpdW0gZnVlciBMdWVnZW4/ClNvd2FzIHdpZSBkYXMgIm1pbmlzdHJ5IG9mIHRydXRoIj8KV2VyZGVuIGRhIGRpZSBSZWRlbiBkZXIgUG9saXRpa2VyIHZlcmZhc3N0PwoKQmFCT09uKCkgKG5pY2h0IHVuYmVkaW5ndCBTUEQgU3ltcGF0aXNhbnQsCmFiZXIgbWVpbmVuZCwgZGFzcyBkaWUgQ0RVbGVyIHJ1aGlnIGVyc3RtYWwKdm9yIGRlciBlaWdlbmVuIFR1ZXIga2VocmVuIHNvbGx0ZW4uKSAgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbWFsIHdhcyBwb2xpdGlzY2hlcyAoR3JpbW1ib3JuLCAyNy4gSmFuIDIwMDAsIDA5OjQ0OjQ3KToKfiMhIHJuPUJhYm9vbiBydD05NDg5NjIzODAgcmc9c2NobWFycm4KfiMhIHRpZD05NDg5NjIzODAKS2xhciBpc3QgZGllIFNQRCBhbSBTcGVuZGVuc2thbmRhbCBkZXIgQ0RVIHNjaHVsZC4KSW1tZXJoaW4gaGFiZW4gZGllIGRhcyBqYSBwdWJsaWsgZ2VtYWNodC4gT0ssIGRpZSBQcmVzc2UgaXN0IG5hdHVlcmxpY2ggYW4gZGVyClRyZWliamFnZCAoS2FudGhlcikgdW5kIFJ1Zm1vcmRrYW1wYWduZSAoS29obCkgbWl0c2NodWxkaWcuCgpHZEEgKHVuZCB3aWVkZXIgZ2lsdCBkZXIgU2F0eiwgZGFzcyBtYW4gZ2FyIG5pY2h0IHNvIHZpZWwgZXNzZW4ga2FubiB3aWUKbWFuLi4uIG5hamEsIGlociB3aXNzdCBzY2hvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuIChHdWlsZG8sIDI3LiBKYW4gMjAwMCwgMTA6NDk6NDApOgpFYmVuIGF1ZiBUb2V0ZXJzIEluc2VsOgoKRHUgc2llaHN0IGRpZSBNb2VuY2hlIGltIExhbmRlc2lubmVyZW4gdmVyc2Nod2luZGVuLgpQbG9ldHpsaWNoIGRyaW5nZW4gZW50c2V0enRlIFNjaHJlaWUgYXVzIGRlbSBMYW5kZXNpbm5lcmVuIGFuIERlaW4gT2hyLgpVbmFzYWkgcnVmdDogTk9WQTopCk5vdmFzdG9ybSBydWZ0OiBVTkEhCgpTaW5kIFVuYSogdW5kIE5vdmEqIHVudGVyIGRpZSBNb2VuY2hlIGdlZ2FuZ2VuPwoKR3J1c3MsCkd1aWxkbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNjaG1hcnJuIChOb3Zhc3Rvcm0sIDI3LiBKYW4gMjAwMCwgMTA6NTA6MzgpOgp+IyEgcm49R3VpbGRvIHJ0PTk0ODk2NjU4MCByZz1zY2htYXJybgp+IyEgdGlkPTk0ODk2NjU4MApGYWxzY2hlIEludGVycHJldGF0aW9uLi4uCldpciB3dXJkZW4gZ2VzdG9lcnQgdW5kIHdvbGx0ZW4gcGlraWVydCB3aXJrZW4uCiAgTm92YSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc2NobWFycm4gKFVuYXNhaSwgMjcuIEphbiAyMDAwLCAxMDo1MjoxOCk6Cn4jISBybj1Ob3Zhc3Rvcm0gcnQ9OTQ4OTY2NjM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ4OTY2NTgwCm51bmphIDopIHNvIGthbm4gbWFuIGRhcyBhdWNoIG5lbm5lbi4uLjopCgpVbmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbWFsIHdhcyBwb2xpdGlzY2hlcyAoQW5hdG9sLCAyNy4gSmFuIDIwMDAsIDEwOjUyOjM4KToKfiMhIHJuPUJhYm9vbiBydD05NDg5NjIzODAgcmc9c2NobWFycm4KfiMhIHRpZD05NDg5NjIzODAKT2ggbWVpbiBKb2YsIHdlbm4gTWFnaWVyIHBvbGl0aXNjaCB3ZXJkZW4sIGlzdCBBcm1hZ2VkZG9uIG5haGUuCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzbyBuaWNodCAoR3JhbGtvciwgMjguIEphbiAyMDAwLCAwOTo0ODowNCk6CltBbGxnZW1laW46VHVOaXhHdXQgdWZmZmZ0IGVpbmUgbGVlcmUgWmVpdHVuZyBhbi4uLl0KCgpEYXMga2FubiBtYW4gYWVuZGVybiA6KQoKRy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvcmFuIGVya2VubnN0IGR1LCBkYXNzLi4uIChGb2xnZSAzMDc5KSAoQmFib29uLCAyOC4gSmFuIDIwMDAsIDEwOjExOjI5KToKV29yYW4gZXJrZW5udCBtYW4sIGRhc3MgbWFuIGxldHp0ZSBOYWNodCB6dSB2aWVsClF1YWtlIGdlc3BpZWx0IGhhdD8KCldlbm4gbWFuIG1vcmdlbnMgYXVmc3RlaHQsIGlucyBCYWQgZ2VodCB1bmQgdm9yIGRlbSBTcGllZ2VsCnBsb2V0emxpY2ggdW5kIG9obmUgZXJrZW5uYmFyZW4gR3J1bmQgenVyIE1lbG9kaWUgdm9uCkt5bGllIE1pbm9ndWUoPykncyAiTG9jb21vdGlvbiIgc2luZ3Q6CiJTaHViIFNodWIgU2h1Yi1OaWd1cmF0aCAtIHllYWgsIHllYWggLSBTaHViIE5pZ3VyYXRoIgoKQmFCT09uKCkgc3RlaWd0IGVyc3RtYWwgbmUgV2VpbGUgd2llZGVyIGF1ZiBET09NIHVtLiAKU2h1YiBTaHViLi4gKmFyZ2wqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV29yYW4gZXJrZW5uc3QgZHUsIGRhc3MuLi4gKEZvbGdlIDMwNzkpIChNYWhhdG11LCAyOC4gSmFuIDIwMDAsIDEwOjE2OjIyKToKfiMhIHJuPUJhYm9vbiBydD05NDkwNTA2ODkgcmc9c2NobWFycm4KfiMhIHRpZD05NDkwNTA2ODkKLi4uIGljaCBkYWNodGUsIGRhc3Mgc2VpLCB3ZW5uIG1hbiBudXIgbm9jaCB1bSBkaWUgRWNrZSAnc3RyYWZlZCcgdW5kCnZvcnNpY2h0c2hhbGJlciBtaXQgZGVyIE5haWwtR3VuIGlucyBTY2hsYWZ6aW1tZXIgc2NoaWVzc3QgYmV2b3IgbWFuCnNpY2ggaW5zIEJldHQgbGVndC4KCk1haGF0bXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGVyIE1hZ2llciwgZGFzIGFybWUgU2Nod2Vpbi4uLiAoQW5hdG9sLCAyOC4gSmFuIDIwMDAsIDE4OjQ4OjU5KToKfiMhIHJuPUFyayBydD05NDkwNjY5NzAgcmc9a3VsdHVyCn4jISB0aWQ9OTQ5MDU5MjcwCkFyayBzY2hyaWViOgo+ICdNYWluZXIgVHJveSEnCgpJY2ggdmVybWlzc2UgZGEgZWluICJHZSIgOykKCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERlciBNYWdpZXIsIGRhcyBhcm1lIFNjaHdlaW4uLi4gKEFyaywgMjguIEphbiAyMDAwLCAxODo1NDoyNik6Cn4jISBybj1BbmF0b2wgcnQ9OTQ5MDgxNzM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ5MDU5MjcwCk5pZWRlciBtaXQgZGVuIEhldHplcm4sIGVzIGxlYmUgZGllIFNjaGxlaW1lcmVpIQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmlkbGVwYWNrLiAoSmVuYW5kcmEsIDI5LiBKYW4gMjAwMCwgMDY6NDg6NDgpOgogIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBTYW0sIDI5LiBKYW4gMjAwMCwgMDY6NDc6MzggKDEyIFRlaWxuZWhtZXIpCgpHYXN0MS4uLi4uLi4uLi4uLnMgTmVrby4uLi4uLi4uLi4uSS56IFRyYWVnaWUuLi4uLi4uLmkueiBFYWRyaWMuLi4uLi4uLi5pLnoKV3VtLi4uLi4uLi4uLi4uai5TIFBlcmlzaGFuLi4uLi4uLkouUyBUYXJhZ29uLi4uLi4uLi5KLlMgWWFyZW4uLi4uLi4uLi4uSi5TClppbm8uLi4uLi4uLi4uLmkuWiBUeWxhay4uLi4uLi4uLi5qLlMgRWxlbmRpbC4uLi4uLi4uSndTIEplbmFuZHJhLi4uLi4uLi4ubQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERlciBNYWdpZXIsIGRhcyBhcm1lIFNjaHdlaW4uLi4gKEdyaW1tYm9ybiwgMjkuIEphbiAyMDAwLCAxMzoyNToxMik6Cn4jISBvbj1FbmRlciBvdD05NDkwNjIyNzIgb2c9a3VsdHVyCn4jISBybj1ZZW5kaSBydD05NDkwNTkyNzAgcmc9a3VsdHVyCn4jISB0aWQ9OTQ5MDU5MjcwCnNlaHIgc2Nob2VuCgpFbmRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2VzdGFlbmRuaXM/IChHbm9tZSwgMzAuIEphbiAyMDAwLCAwMzoyMjozMCk6CkdhbmR1ciAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEZWluIEZyZXVuZCBHYW5kdXIgdGVpbHQgRGlyIG1pdDogTW9pbiwgamEgaWNoIHdlaXNzIGljaCBiaW4gaW5rb3NlcXVlbnQgdW5kCkRlaW4gRnJldW5kIEdhbmR1ciB0ZWlsdCBEaXIgbWl0OiBzdWVjaHRpZyA6KQpEZWluIEZyZXVuZCBHYW5kdXIga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgoKbWFuIGJlYWNodGUgZGllIHVocnplaXQuLi4gOikKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoaWhpLi4gOykgKFpvb2ssIDMwLiBKYW4gMjAwMCwgMTI6NTE6MTkpOgpbVG9kOkxhcnNdIEVpbiBTY2huZWViYWxsIGhhdCBnZXJhZGUgVmFyZGlvbiB1bWdlYnJhY2h0LgoKPmZpbmdlciB2YXJkaW9uClZhcmRpb24gaXN0IGFud2VzZW5kLApbLi4uXQpQcm9qZWt0OiBNb25zdGVybiBrcmFlZnRpZyBlaW5oZWl6ZW4gOykKClRqYSwgZGFzIGhhdCBkYW5uIHdvaGwgbmljaHQgc28gZ3V0IGdla2xhcHB0IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhpaGkuLiA7KSAoVmFyZGlvbiwgMzAuIEphbiAyMDAwLCAyMDo0NTozNCk6Cn4jISBybj1ab29rIHJ0PTk0OTIzMzA3OSByZz1zY2htYXJybgp+IyEgdGlkPTk0OTIzMzA3OQpPaywgaWNoIHNlaGUgamEgZWluLCBkYXNzIGVzIHVudm9yc2ljaHRpZyB3YXIsIG1pdCAxMExQIGluIGRlciBTU1AKcnVtenVsYXVmZW4gOykKClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFlaCwgYWVoLC4uLlN1cGFCb3dsLi4uYWVoLi4gKFN1YmxpbWUsIDMwLiBKYW4gMjAwMCwgMjM6Mzk6MTkpOgpBZWgsIGFsc28gaWNoIGRhY2h0ZSBpY2ggd2FlciwgYWVoLCBiZWltLCBhZWggU3VwYUJvd2wgdW5kIGRhIGRhY2h0ZSBpY2gsIGFlaAppY2gsIGFlaCwgd2FlciBhdWNoIHNjaG9uIGRyaW4sLi4uYWJlciwgYWVoLCBkYXMgZGFzIERpbmcgdW5zZXIgQm9yaXMsIHVuc2VyZQpLbmFsbHR1ZXRlLCBhZWgsIGphLC4uQm9yaXMgQmVja2VyIG1vZGVyaWVydCwgYWVoLC4uLnd1bmRlcnQgbWljaCBkYW5uIGRvY2gKc2Nob24uCk11c3MgaWNoIG1pY2ggamV0enQgYmVpIGFsbGVuIDEwIFlhcmRzIHZvbiBpaG0gYW5ob2VyZW4sIGlzdCBlciBzY2hvbiBkcmluCm9kZXIKd2FzID8gT2RlciBzYWd0IGVyIDogU3V1dXV1cHBwYWFhYWFhLi4gaG1tLCBtYSBrdWNrJ24sIHdpciB3ZXJkZW4ncyBlcmZhaHJlbi4uCgpJbiBkaWVzZW0gU2lubmUKYWVoIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobWFycm4gKEdyaW1tYm9ybiwgMzEuIEphbiAyMDAwLCAxNzo1MDoyMCk6Cn4jISBvbj1PaGFtIG90PTk0OTMyMjY1OCBvZz1hbGxnZW1laW5lcwpBbWFuZGEgc2FndDogSGFsbG8gRWluIG11ZWxsc2NobHVja2VyIQpBbWFuZGEgc2FndDogV2llIHdhZXJzIGRlbm4gbWl0IHVucywgS2xlaW5lcj8KQW1hbmRhIHNhZ3Q6IEhhbGxvIEVpbiBtdWVsbHNjaGx1Y2tlciEKQW1hbmRhIHNhZ3Q6IFdpZSB3YWVycyBkZW5uIG1pdCB1bnMsIEtsZWluZXI/CgpJbW1lciB3aWVkZXIgc2Nob2VuLCBtaXQgd2VtIEFtYW5kYSBzaWNoIGVpbmxhZXNzdC4uLi4uCgpPaGFtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2NobWFycm4gKEdyaW1tYm9ybiwgMzEuIEphbiAyMDAwLCAxNzo1MTozMik6Cn4jISBvbj1CdWJiYSBvdD05NDkzMjY0MzAgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU9oYW0gcnQ9OTQ5MzIyNjU4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTQ5MzIyNjU4CgpIYWx0IGVpbiBHZXNwcmFlY2ggdW50ZXIgS29sbGVnZW4uCkFtYW5kYSBtdXNzIHNpY2hlciBhdWNoIGVpbmlnZXMgc2NobHVja2VuLi4uCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhcnR5bWFpbCAoU3VibGltZSwgIDEuIEZlYiAyMDAwLCAwMDozNToyNSk6CkhlaGUsIGRhIGhhdCBGYWdndSB3b2hsIGRvY2ggenUgdmllbCBjdXQnbidwYXN0ZSBiZXRyaWViZW4sLi4uc2llaHQgbWFuCmRvY2ggZWluZW4ga2xlaW5lbiBBdXN6dWcgYXVzIERyb2xsaSdzIHVuZCBtZWluZXIga2xlaW5lbiBBYnNjaGllZHNzemVuZQptaXQgYW5zY2hsaWVzc2VuZGVtIEZha2V0b2QuIEhtbSwgaWNoIGdsYXViIGljaCBob2wgZGFzIGxvZyBub2NoJ21hbCByYXVzLi4uCgo7KQpzdWJsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHRlc3QgKE9sbGksICAxLiBGZWIgMjAwMCwgMDE6MjU6MzkpOgp+IyEgcm49THVnIHJ0PTk0OTM2NDcyOSByZz1zY2htYXJybgp+IyEgdGlkPTk0OTM2NDcxMQpnZWh0IG5pY2h0LgoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogdGVzdCAoTmV2b2ssICAxLiBGZWIgMjAwMCwgMDE6MjY6MDkpOgp+IyEgcm49T2xsaSBydD05NDkzNjQ3Mzkgcmc9c2NobWFycm4KfiMhIHRpZD05NDkzNjQ3MTEKYWggamEuLi4uCgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBiZWltIHJpZXNpZ2VuIEZldWVyZGFlbW9uIChHb3JvZywgIDEuIEZlYiAyMDAwLCAxMDozMDozNCk6CkR1IHdpcmtzdCBlaW4gV3VuZGVyLgpEaWUgYml0dGVyZSBLYWVsdGUgbGFlc3N0IG5hY2guCgpEYSBkYW5rZSBpY2ggYWJlciByZWNodGhlcnpsaWNoIExlbWJvbGQgKDsKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEQVMgbW9lY2h0ZSBpY2ggbWFsIHNlaGVuLCBnZXJhZGUgaW4gRGplbGVsZWJ5IChNc2FyLCAgMS4gRmViIDIwMDAsIDE3OjE2OjQ5KToKQW5keSBzYWd0OiBBcmtzaGF0LCBnaWIgbWlyIGFsbCBEZWluIEdlbGQsIG9kZXIgaWNoIHdlcmRlIERpY2ggdG9ldGVuIQpBbmR5IHRyaXR0IEFya3NoYXQuCgpIbW0sIHNjaGFkZSwgZGFzcyBzaWNoIEFuZHkgbmljaHQgbWVociB0cmF1dC4gOykKCk1zYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoWm9vaywgIDEuIEZlYiAyMDAwLCAyMjoyNTozOCk6CltBYmVudGV1ZXI6RW5nZWxpbmVdIGhvaWwhIGpldHp0IGhhYiBpY2ggZGllIG9yaWVudGllcnVuZyBhbSBub3JkcG9sIHZlcmxvcmVuPwpbQWJlbnRldWVyOkVuZ2VsaW5lXSB3aWUga29tbSBpY2ggZGEgd2llZGVyIHJhdXM/CltBYmVudGV1ZXI6Wm9va10gZXMgZ2lidCBkYSBzbyBuZXR0ZSAodW4pdGllcmUsIGRpZSBoZWxmZW4gYmVzdGltbXQuLi4gOykKW1RvZDpMYXJzXSBFaW4gVW50aWVyIGhhdCBnZXJhZGUgRW5nZWxpbmUgdW1nZWJyYWNodC4KW0FiZW50ZXVlcjpab29rXSBIbW0uLiA6KApbQmVpbGVpZDpSYW1tc3RlaW5dIGF1YQpbQWJlbnRldWVyOkNlbGJhcm5dIHdlciBzYWd0cyBkZW5uCltBYmVudGV1ZXI6Wm9va10gc28gd2FyIGRhcyBhYmVyIG5pY2h0IGdlbWVpbnQuLgpbQmVpbGVpZDpBc2hhbl0gd2VyIHNjaHJlaWJ0cyBpbiBkaWUgbXBhID8gOikKW0FsbGdlbWVpbjpDaXJkYW5dIEFsc28sIFpvb2ssIHRzLCB0cywgdHMuLi4KW0FiZW50ZXVlcjpUb2trYSBzdGF1bnQgdWViZXIgWm9vay5dCltCZWlsZWlkOkdyZW1saW5dIEJlaWxlaWQuLi4KW0FiZW50ZXVlcjpab29rXSBibGEgYmxhIGJsYS4uIGlzIG1pciBhdWNoIHBlaW5saWNoIDspCltCZWlsZWlkOkltZGFdIHVwc2FsYQpbQmVpbGVpZDpBbWFyeWxsaXNdIGhhcmhhcmhhcmhhcmhhciBpY2gga2FubiBsZWlkYSBuaWNoCltBYmVudGV1ZXI6Wm9vayB3b2xsdGUgbnVyIG5lbiBrbGVpbmVuIFNjaGVyeiBtYWNoZW4gOyldCltBYmVudGV1ZXI6QXNoYW5dIG9jaCwgZGFzIGd1dGUgYWx0ZSB1bnRpZXIgLi4KW0FsbGdlbWVpbjpDaXJkYW5dIDUgbWluIHNjaGFlbWVuCltBYmVudGV1ZXI6Wm9va10gZ3V0LCBpY2ggc2NocmVpYnMgc2VsYnN0IDspCgpIaWVybWl0IGdlc2NoZWhlbiA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKEx1ZywgIDIuIEZlYiAyMDAwLCAwMjo1NDo1NSk6Cn4jISBybj1ab29rIHJ0PTk0OTQ0MDMzOCByZz1zY2htYXJybgp+IyEgdGlkPTk0OTQ0MDMzOAoKSG0sCgoKaWNoIHNvbGx0ZSBab29rIG5pY2h0IHNvIGJlZWluZmx1c3Nlbi4uLi4KClRzc3RzZW5kCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGVybmVuIGJlaW0gU3RlcmJlbj8gKEtlcnJpZXIsICAyLiBGZWIgMjAwMCwgMDQ6MjI6NDIpOgoKRHUgYmVmaW5kZXN0IERpY2ggYW4gZWluZXIgQnJ1ZWNrZSwgZGllIHVlYmVyIGRlbiBCb3JvbmlsLCBlaW5lbiBuYWhlenUKcGVjaHNjaHdhcnplbiwgYnJlaXRlbiwgdHJhZWdlIGRhaGluZmxpZXNzZW5kZW4gRmx1c3MgZnVlaHJ0LiBOYWNoIE5vcmRlbgplcnN0cmVja2VuIHNpY2ggZGllIGVuZGxvcyBhbm11dGVuZGVuIFdhZWxkZXIsIG5hY2ggU3VlZGVuLCBqZW5zZWl0cyBkZXMKRmx1c3Nlcywga2FubiBtYW4gYmVyZWl0cyBkaWUgU3RhZHQgU25hcmtlbiBlcmFobmVuLiBCZXNvbmRlcnMgaW1wb3NhbnQKZXJzY2hlaW5lbiBkaWUgRHJhY2hlbnppbm5lbiB2b24gaGllciBhdXMsIGRpZSBzaWNoIG5haGV6dSBkaXJla3QgamVuc2VpdHMgZGVzCkJvcm9uaWxzIGVyaGViZW4uCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBub3JkZW4gdW5kIHN1ZWRvc3Rlbi4KRWluIFdhc3NlcmJ1ZWZmZWwuCiAgLi4uLm5vcm1hbC9HZWhvZXJuLi4uLi4gV2Fzc2VyYnVlZmZlbCA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gaGFydApMYXN0ZXNlbCB0aXBwZWx0IGhlcmVpbi4KICAuLlphdWJlcmVpL0dpZnRwZmVpbC4uLiBEdS4uLi4uLi4uLi4uIDogV2Fzc2VyYnVlZmZlbCAqKioqKioqKiAtPiB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvYmxvc3NlbiBIYWVuIER1Li4uLi4uLi4uLi4gOiBXYXNzZXJidWVmZmVsICoqKioqKioqIC0+IHZlcmZlaGx0CiAgRGVyIFdhc3NlcmJ1ZWZmZWwgcmVubnQgRGljaCB1ZWJlciBkZW4gSGF1ZmVuLgpEaXIgZmFlbGx0IGVpbmUgZmF0YWxlIFNjaHdhZWNoZSBpbiBEZWluZW0gU2NodXR6c3BydWNoIGF1ZiEKW1RvZDpMYXJzXSBFaW4gV2Fzc2VyYnVlZmZlbCBoYXQgZ2VyYWRlIEtlcnJpZXIgdW1nZWJyYWNodC4KCiAxKSBNaXIgc2FndGUgbmllbWFuZCwgZGFzcyBkYXMgbWl0IGRlbSAnZmF0YWwnIHdvZXJ0bGljaCBhdXNnZWxlZ3Qgd2lyZC4KIDIpIEljaCBkYWNodGUsIG1hbiBrYW5uIGJlaW0gc3RlcmJlbiBuaXggbGVybmVuCiAzKSA2MCBQdW5rdGUgYXVmIGVpbmVuIHNjaGxhZyBiZWkgbmVtIE1vbnN0ZXIsIGRhcyAnZWluZmFjaCBzbycgcnVtc3RlaHQsCmlzdCByZWNodCBoYXBwaWcuCgpLZXJyaWVyIC0gc3RpcmJ0ICh1bilnZXJuZSB1bmQga2FubiBkcnVlYmVyIGxhY2hlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNRUyBmdWVyIFt3XSAoTWFoYXRtdSwgIDIuIEZlYiAyMDAwLCAxMTo0MDozNyk6Cn4jISBybj1BbmF0b2wgcnQ9OTQ5NDE5ODI5IHJnPWFuemVpZ2VuCn4jISB0aWQ9OTQ5NDE5ODI5CldBQUFBSCEgSWNoIGhhYiB6dSB2aWVsZSBwb3NpdGl2ZSBQdW5rdGUsIHVuZCBoYWIgZ3JhZCBtYWwgc2VpdCBlaW5lbQpKYWhyIGVpbmUgU2VoZXJpbi4KCk1haGF0bXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMZXJuZW4gYmVpbSBTdGVyYmVuPyAoTWFoYXRtdSwgIDIuIEZlYiAyMDAwLCAxMTo0MToxOSk6Cn4jISBybj1LZXJyaWVyIHJ0PTk0OTQ2MTc2MiByZz1zY2htYXJybgp+IyEgdGlkPTk0OTQ2MTc2MgoxLiBIaWhpIDopCjIuIFNpZWhzdGUgOikKMy4gRGFzIGhhdCBNYW5nbyBkYW1hbHMgYW5nZWJsaWNoIGF1Y2ggZ2VzYWd0IDopCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggd3Vzc3RlIGVzIC4uLi4gKEtlcnJpZXIsICAyLiBGZWIgMjAwMCwgMTI6MzQ6NDQpOgoKRHUgYmVmaW5kZXN0IERpY2ggaW0gR2xvY2tlbndhbGQuIERlciBXYWxkIHRyYWVndCBzZWluZW4gTmFtZW4gd2VnZW4gZGVyCmdsb2NrZW5mb2VybWlnZW4gQmxhZXR0ZXIgZGVyIGhpZXIgdm9yaGVycnNjaGVuZGVuIEJhZXVtZS4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuIHVuZCB3ZXN0ZW4uCkVpbmUgZGllYmlzY2hlIEVsc3Rlci4KTGFzdGVzZWwgdGlwcGVsdCBoZXJlaW4uCkRpZSBFbHN0ZXIga2xhdXQgRGlyIGVpbmVuICdLYWVtcGZlciBhYndlcnRlbictQnV0dG9uIQpEaWUgQXVyYSB1bSBEaWNoIGxvZXN0IHNpY2ggbGFuZ3NhbSBhdWYuCgpJY2ggd3Vzc3RlIGVzIGltbWVyOiBEaWUgRWxzdGVybiBnZWhvZXJlbiB6dXIgS2FlbXBmZXJnaWxkZSAqc2V1ZnoqCgpLZXJyaWVyIC0gd3VuZGVydCBzaWNoIGpldHp0IHVlYmVyIGdhciBuaXggbWVocgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKamEgd2llIGRlbm4gbnU/IChVbmFzYWksICAyLiBGZWIgMjAwMCwgMTQ6NDA6MjQpOgpEdSB0ZWlsc3QgV3Vyc3QgbWl0OiB3aWUgZ2VodHMgZGlyPwpXdXJzdCBpc3QgZ2VyYWRlIG5pY2h0IGRhOiAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkhpIFVuYXNhaSEgSWNoIGJpbiBzZWl0IDAgU3R1bmRlbiAwIE1pbnV0ZW4gdW5kIDggU2VrdW5kZW4gYW0gQXJiZWl0ZW4hIApXZWNrZSBtaWNoLCBmYWxscyBlcyBkcmluZ2VuZCBpc3QhIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCkRlaW4gV2Vja2VyIGtsaW5nZWx0IGJlaSBXdXJzdC4KV3Vyc3Qgd2VocnQgIndlY2tlIiBhYi4KCgpuYWphIGVudHNjaGVpZGUgRGljaCBXdXJzdCwgbWFuIGthbm4gbmljaCBhbGxlcyBoYWJlbiA6KSAKVW5hKiAqZ3JpbnNlbmQqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNRUyBmdWVyIFt3XSAoWWVuZGksICAyLiBGZWIgMjAwMCwgMTc6MjU6NDcpOgp+IyEgcm49QW5hdG9sIHJ0PTk0OTQxOTgyOSByZz1hbnplaWdlbgp+IyEgdGlkPTk0OTQxOTgyOQpJY2ggYmlldGUgNzIuNSBQdW5rdGUuIFdlcmRlIGljaCBqZXR6dCBhdWYgbWVpbmUgYWx0ZW4gVGFnZSB6dW0gU2VoZXIKZWhyZW5oYWxiZXIgZXJuYW5udD8KCllUWQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU1FTIGZ1ZXIgW3ddIChZZW5kaSwgIDIuIEZlYiAyMDAwLCAxNzoyNjo1Nyk6Cn4jISBybj1ZZW5kaSBydD05NDk1MDg3NDcgcmc9c2NobWFycm4KfiMhIHRpZD05NDk0MTk4MjkKTW9tZW50IG1hbCwgenVuYWVjaHN0IHdpbGwgaWNoIGFscyBXZWlzZXIgYXVjaCBzbyBlaW4gbmV0dGVzIFtXXSBoYWJlbiEKCllUWQoKT0ssIE9LLCBpY2ggYmluIGphIHNjaG9uIHN0aWxsLi4uCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtvZW5uZW4gd2lyIHJ1ZmVuIGluIGJlbGxlbiB1bXdhbmRlbG4/IChIb29kLCAgMi4gRmViIDIwMDAsIDE4OjE0OjAzKToKc29uc3Qgc3RpbW10IG5hZW1saWNoIGVpbiBhbHRiZXdhZWhydGVyIGF1c3NwcnVjaCBuaWNodCBtZWhyLCB3ZW5uIG1hbgpmb2xnZW5kZW4ga2xlaW5lbiBhdXNzY2huaXR0IHp1Z3J1bmRlIGxlZ3Q6ClViaXdhbiBydWZ0OiAnYW1lbG9uIHdvIGJpc3QgZHUgPz8nCkR1IHJ1ZnN0OiBkaWUgbmFtZW4gd2VyZGVuIGF1Y2ggaW1tZXIgbWllc2VyLi4ud2lyZCB6ZWl0IGRhcyBtYWwgYXVmZ2VyYWV1bXQKRHUgcnVmc3Q6IHdpcmQKV3Vyc3Qgbmlja3QgRGlyIGF1cyBkZXIgRmVybmUgenUuCgoqZ3JpbnMqIG5pY2ggYm9lcyBnZW1laW50CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLSSA/Pz8gKEJ1enpjdXQsICAzLiBGZWIgMjAwMCwgMTI6MDI6NTApOgpEdSBzYWdzdDogZW50b24sIHNhZyBJY2ggd2lsbCBuaWNodCBpbiBkZW4gVG9wZiwgbmltbXMgSHVlaG5jaGVuCkVudG9uIGdpYnQgc28gZXR3YXMgd2llIGVpbiBMYWNoZW4gdm9uIHNpY2guCgpBbHNvIHdlciB3YXIgZnVlciBkaWUgSW50ZWxsaWdlbnogZGVyIEhhdXN0aWVyZSB2ZXJhbnR3b3J0bGljaCA/CgogICAgIEJ1enppLCBzaWNoIGZyYWdlbmQsIG9iIGRlciBWb2dlbCBzIE5vdmEga2VubnQgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIG1hbCBhbmRlcnMuLi4gKEZvb2JhciwgIDMuIEZlYiAyMDAwLCAxNTowMTozNSk6CltLbGVydXM6Rm9vYmFyXSBLb2VubnRlIG1hbCBqZW1hbmQgenVtIFRpZ2VyIGtvbW1lbiB1bmQgbWljaCBlbnRmbHVjaGVuPwpBbHBoYSB0cml0dCBhdXMgZWluZXIgU2Nod2VmZWx3b2xrZS4KS2FsbGlvcGUgdHJpdHQgYXVzIGVpbmVyIExpY2h0d29sa2UuCkxlbWJvbGQgdGlwcGVsdCBoZXJlaW4uCkJyYW5kb2NoIHdhbmRlbHQgaGVyZWluLgpBbHBoYSBsYWVzc3QgZGFzIFBhYXIgQWRhbWFudHNjaHVoZSBmYWxsZW4uCltUcnZlczpOaWNvbGFpIHN1Y2h0IGF1Y2ggZWluZW4gQXp1Ymk6KV0KS2FsbGlvcGUgZHJlaHQgZWluZSBnYWxhbnRlIFBpcm91ZXR0ZSB1bmQgaXN0ICpzY2h3dXBwcyogd2VnLgpMZW1ib2xkIHRpcHBlbHQgS2FsbGlvcGUgaGludGVyaGVyLgpBbHBoYSBsYWVzc3QgZGFzIFBhYXIgQWRhbWFudHNjaHVoZSBmYWxsZW4uCkFscGhhcyBMaWNodGt1Z2VsIGhvZXJ0IGF1ZiB6dSBsZXVjaHRlbiB1bmQgemVycGxhdHp0LgpFbGVuZGlsIHRlaWx0IERpciBtaXQ6IHphY2F0dCBiZXRldCBnZXJhZGUKVW5nbGF1YmxpY2hlIEtyYWVmdGUgdW5kIG1hZWNodGlnZXMgV2lzc2VuIGVpbmVyIHVyYWx0ZW4gWml2aWxpc2F0aW9uCmR1cmNoc3Ryb2VtZW4gRGVpbmVuIEtvZXJwZXIuIEJhbGQgaGFzdCBEdSBudW4gZXdpZ2UgV2Vpc2hlaXQgdW5kIGVpbgpkYXVlcmhhZnRlcyBMZWJlbiBlcmxhbmd0IC4uLiAKW1RvZDpMYXJzXSBEZXIgRmx1Y2ggZGVzIFBoYXJhb3MgRXN0aGVrb3RoIGhhdCBnZXJhZGUgRm9vYmFyIHVtZ2VicmFjaHQuCkRlciBUZWRkeSBrbnVkZGVsdCBEaWNoIGVpbiBsZXR6dGVzIE1hbC4KS2FsbGlvcGUgdGVpbHQgRGlyIG1pdDogRHUgaGFzdCBkZW4gRmx1Y2ggbmljaHQsIHd1ZXJkZSBpY2ggc2FnZW4uCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdsYXVidCBtYW4gZGFzPz8/PyAoSHVtbmksICAzLiBGZWIgMjAwMCwgMTg6MjQ6MDcpOgpVbSBTZWhlciBvZGVyIE1hZ2llciB3ZXJkZW4genUga29lbm5lbiBmZWhsZW4gRGlyIG5vY2ggMTI1MjI4CkVyZmFocnVuZ3NwdW5rdGUuCgpUamEuLi5kYSB3ZXJkIGljaCBub2NobWFsIGt1cnogbWV0emVsbiBnZWhlbiBtdWVzc2VuIDstKQoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIHNvIChMdWcsICA0LiBGZWIgMjAwMCwgMDE6MzI6MTEpOgoKQWxjaW5hIHdpcmQgdm9uIHp3ZWkgVHJ2ZXMgYWJnZWhvbHQsIHVtIGVpbmVuIEdlaGVpbWF1ZnJhZyBhdXN6dWZ1ZWhyZW4uCgpIbSwgRWludHJpdHQgaW4gZGllIEtsZXJpa2VyZ2lsZGUgc2ljaGVybGljaC4gTmVobXQgRXVjaCBlaW4gQmVpc3BpZWwsClRvcnRlbnBhY2suCgoKRmlkS0cKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZToga29lbm5lbiB3aXIgcnVmZW4gaW4gYmVsbGVuIHVtd2FuZGVsbj8gKEx1ZywgIDQuIEZlYiAyMDAwLCAwMTozNDowMyk6Cn4jISBybj1Ib29kIHJ0PTk0OTUxMTY0MyByZz1zY2htYXJybgp+IyEgdGlkPTk0OTUxMTY0MwoKREFTIHNhZyBpY2ggc2VpdCBKYWhyZW4uIE51dHp0IG5peC4KCkl6UwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVwcyAoTWVzaXJpaSwgIDQuIEZlYiAyMDAwLCAwMzoyNDozNik6CkVpbiBCdW1lcmFuZyBzY2h3aXJydCBkdXJjaCBkaWUgTHVlZnRlLiAoMikKTWVzaSwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhbmtlIDopIChBcHN1LCAgNC4gRmViIDIwMDAsIDE2OjE2OjUzKToKVW5nZXNjaG5pdHRlbjoKCi4uLi4KRGllIHNjaGltbWVsbmRlIHVuZCBoYWxidmVyd2VzdGUgTGVpY2hlIGVpbmVyIFNjaGF0dGVuZnJhdS4KRGllIHNjaGltbWVsbmRlIHVuZCBoYWxidmVyd2VzdGUgTGVpY2hlIGVpbmVyIFNjaGF0dGVuZnJhdS4KRGllIHNjaGltbWVsbmRlIHVuZCBoYWxidmVyd2VzdGUgTGVpY2hlIGVpbmVyIFNjaGF0dGVuZnJhdS4KCiggM3ggaXNzIGxlaWNoZSkKQnVhaCwgZGllc2UgTGVpY2hlIHdhciB6d2VpZmVsbG9zIG5pY2h0IGJlc29uZGVycyBnZXN1bmQuCkJ1YWgsIGRpZXNlIExlaWNoZSB3YXIgendlaWZlbGxvcyBuaWNodCBiZXNvbmRlcnMgZ2VzdW5kLgpCdWFoLCBkaWVzZSBMZWljaGUgd2FyIHp3ZWlmZWxsb3MgbmljaHQgYmVzb25kZXJzIGdlc3VuZC4KCkRlaW4gRnJldW5kIFN0ZWx6IHRlaWx0IERpciBtaXQ6IE1haGx6ZWl0IQoKQXBzdSwgaW1tZXIgbm9jaCBrYXVlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVJSCA6KSAoU2t5LCAgNS4gRmViIDIwMDAsIDEyOjExOjM1KToKCiAgLi4uLm5vcm1hbC9ibG9zc2VuIEhhZW4gU2luYS4uLi4uLi4uLiA6IFdlZ2hpZXIuLi4uLi4gKipQKioqKiogLS0gdmVyZmVobHQKRWluIFdlZ2hpZXIgd2lyZCBlaW4gd2VuaWcgdHJhbmNoaWVydC4KICAuLi4uLmV4dHJhL0thbXBmdHJpdHQuLiBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLSBnZWtyYXR6dApFaW4gV2VnaGllciB3aXJkIGVpbiB3ZW5pZyB0cmFuY2hpZXJ0LgogIC4uLi4uZXh0cmEvRWxsYm9nZW5zY2hsIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tIGdla2l0emVsdApFaW4gV2VnaGllciB3aXJkIGVpbiB3ZW5pZyB0cmFuY2hpZXJ0LgogIC4uLi4uZXh0cmEvS29wZnN0b3NzLi4uIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tIHZlcmZlaGx0CkVpbiBXZWdoaWVyIHdpcmQgZWluIHdlbmlnIHRyYW5jaGllcnQuCiAgLi4uLi5leHRyYS9Lbmllc3Rvc3MuLi4gV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0gdmVyZmVobHQKRWluIFdlZ2hpZXIgd2lyZCBlaW4gd2VuaWcgdHJhbmNoaWVydC4KICAuLi4ubm9ybWFsL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQpTY2htZXR0ZXJuCkVpbiBXZWdoaWVyIHdpcmQgZWluIHdlbmlnIHRyYW5jaGllcnQuCiAgLi4uLm5vcm1hbC9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0gc2VociBoYXJ0CkVpbiBXZWdoaWVyIHdpcmQgZWluIHdlbmlnIHRyYW5jaGllcnQuCiAgLi4uLm5vcm1hbC9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KU2NobWV0dGVybgpTaW5hIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBTaW5hLgpTaW5hICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpBbnRpY2hyaXN0IGhhdXQgYWIuCiAgLi4uLm5vcm1hbC9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0gS3JhY2hlbgogIC4uLi5ub3JtYWwvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tIEtyYWNoZW4KICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLSBQdWx2ZXIKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0gUHVsdmVyCiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0gUHVsdmVyCkRlciBXZWdoaWVyIGdyZWlmdCBTaW5hIG1pdCBlaW5lbSBsYXV0ZW4gYGBBSUlJSVghJyctU2NocmVpIGFuLgogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tIFB1bHZlcgogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CkVpbiBXZWdoaWVyIG1hY2h0IGVpbmUgRmludGUgZ2VnZW4gU2luYS4KICAuLi4uLmV4dHJhL1dhZmZlbnNjaGxhZyBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQpTY2htZXR0ZXJuCiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tIFB1bHZlcgogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0gUHVsdmVyCiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tIFB1bHZlcgogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0gUHVsdmVyCiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLSBQdWx2ZXIKRWluIFdlZ2hpZXIgbWFjaHQgZWluZSBGaW50ZSBnZWdlbiBTaW5hLgogIC4udG9lZGxpY2gvVG9kZXNzdG9zcy4uIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tIHp1IEJyZWkKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0gUHVsdmVyCiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0gUHVsdmVyCkVpbiBXZWdoaWVyIG1hY2h0IGVpbmUgRmludGUgZ2VnZW4gU2luYS4KICAuLnRvZWRsaWNoL1RvZGVzc3Rvc3MuLiBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tIFB1bHZlcgogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0gUHVsdmVyCiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0gUHVsdmVyCiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0gUHVsdmVyCiAgLi4uLi5leHRyYS9LYW1wZnRyaXR0Li4gV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0gdmVyZmVobHQKICAuLi4uLmV4dHJhL0VsbGJvZ2Vuc2NobCBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLSB2ZXJmZWhsdApFaW4gV2VnaGllciB2ZXJzdWNodCwgc2VpbmVuIEtvcGYgaW4gU2luYSBoaW5laW56dXN0b3NzZW4sIHN0b2Vzc3Qgc2ljaCBkYWJlaQphYmVyIG51ciBkZW4gS29wZi4KICAuLi4uLmV4dHJhL0tuaWVzdG9zcy4uLiBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLSB2ZXJmZWhsdAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tIFB1bHZlcgogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tIFB1bHZlcgogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tIFB1bHZlcgogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tCnplcnN0YWV1YnQKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLSBQdWx2ZXIKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLSBQdWx2ZXIKICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogU2luYS4uLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0gUHVsdmVyCiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFNpbmEuLi4uLi4uLi4gKioqKioqKiogLS0KemVyc3RhZXVidAogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBTaW5hLi4uLi4uLi4uICoqKioqKioqIC0tIFB1bHZlcgpTaW5hIGZsaWVndCBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KRGVyIFdlZ2hpZXIgc2FndDogPEhpY2s+IQoKQVVDSCBLT0VOTkVOIFdJTEw6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVJSCA6KSAoV3VyemVsLCAgNS4gRmViIDIwMDAsIDEzOjA1OjA0KToKfiMhIHJuPVNreSBydD05NDk3NDkwOTUgcmc9c2NobWFycm4KfiMhIHRpZD05NDk3NDkwOTUKc2NobGFnZSB2b3IsIHNvbGNoZSB0cmlnZ2VyLWFydGlrZWwgZGlyZWt0IGluIG11ZWxsIHp1IHNjaHJlaWJlbi4gZGFzIHNwYXJ0Cm11ZWhlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBVSUggOikgKFNreSwgIDUuIEZlYiAyMDAwLCAxMzowNTo0Mik6Cn4jISBybj1XdXJ6ZWwgcnQ9OTQ5NzUyMzA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ5NzQ5MDk1Cm11c3N0IGphIGRpZSBydWJyaWtlIG5ldCBsZXNlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVJSCA6KSAoR29yLCAgNS4gRmViIDIwMDAsIDE2OjA5OjE4KToKfiMhIHJuPVNreSBydD05NDk3NDkwOTUgcmc9c2NobWFycm4KfiMhIHRpZD05NDk3NDkwOTUKVG9sbCB1bmQgamV0enQ/IDIgU2VpdGVuIGtvbWlzY2hlcyBHZWhleGVsIGltIEFydGllbC4gV2FzIHNvbGwgbWlyIGRhcyBzYWdlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiBGcmV1bmQuLi4uLi5laW4gZ3V0ZXIgRnJldW5kLi4uLi4uLiAoTmV2b2ssICA1LiBGZWIgMjAwMCwgMjM6MDI6MTYpOgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogc28gZGllIGJlaWRlbiBFcnptYWdpZXIgbWVpbmVzIFZlcnRyYXVlbnMgYXVmCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBtZWluZW0gZmJhbmQgZHVlcmZlbiBudW4gZHJ1bSBrbm9iZWxuIHdlciBlaW5lbgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogQnVnIHZvbiBNb3Jnb3RoIGJlaSBuZW0gendlaXRpZSB2b24gbWlyCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBiZXNlaXRpZ3QuLi4uIDspCiBEZWluIEZyZXVuZCBUaWFtYWsgdGVpbHQgRGlyIG1pdDogZGVyIGFuZGVyZSB2b24gYmVpZGVuCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBkYXMgd2FlcmUgZGFubiBXSU0gOikKIERlaW4gRnJldW5kIFRpYW1hayB0ZWlsdCBEaXIgbWl0OiBnZW5hdSwgZGVyIGhhdCBlaCBaZWl0CklyZ2VuZGV0d2FzIGlzdCBtaXQgRGVpbmVyIEZyZXVuZHNjaGFmdCB6dSBXaW0gdm9yZ2VmYWxsZW4uCgpOZXZvaywgZGVyIHNpY2ggc2VpbmVuIFRlaWwgZGVua3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVyaG9laGVuIChWYW5pb24sICA1LiBGZWIgMjAwMCwgMjM6MTk6MjEpOgo+IGVyaG9laGUKSGV5LCBkYXMgbWVpc3RlIGhhc3QgRHUgc2Nob24gZ2VzY2hhZmZ0LgoKTGllc3N0IHNpY2ggZWluIHdlbmlnIGVpZ2VuYXJ0aWcgLi4uCgpWYW5pb24uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbiBaYXJkb3ogKEdyaW1tYm9ybiwgIDYuIEZlYiAyMDAwLCAxNzowOTowOSk6Cn4jISBvbj1LYXJlbiBvdD05NDk4MzgzMTggb2c9YWxsZ2VtZWluZXMKU2NoYXUgZGlyIGRhcyBEZW5rbWFsIGFuLiBLYXJlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFsbGdlbWVpbmVzIChHcmltbWJvcm4sICA2LiBGZWIgMjAwMCwgMTc6MTA6MjUpOgp+IyEgb249S2FyZW4gb3Q9OTQ5ODM4NDkwIG9nPWFsbGdlbWVpbmVzCkRpZXMgaXN0IGVpbmUgTmFjaHJpY2h0IGZyIFphcmRvcywgZGVyIHVtIDEyLjMwIFVociBhbSAwNS4wMi4gbmljaHQgb25saW5lCndhci4gU2NoYXUgZGlyIGRhcyBEZW5rbWFsIGFuLiBEaWVzIHNvbGx0ZSBpY2ggZGlyIG1lbGRlbi4gS2FyZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWxsZ2VtZWluZXMgKEdyaW1tYm9ybiwgIDYuIEZlYiAyMDAwLCAxNzoxMDozMyk6Cn4jISBvbj1SYXJkaWFuIG90PTk0OTg0MTg3OCBvZz1hbGxnZW1laW5lcwp+IyEgcm49S2FyZW4gcnQ9OTQ5ODM4NDkwIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTQ5ODM4NDkwClNwYWV0ZXN0ZW5zIGpldHp0IHNvbGx0ZSBaYXJkb3ogZGFzIHdpcmtsaWNoIGthcGllcnQgaGFiZW4uLi4KClJhciBtZWludDogTmV1ZSBUaHJlYWRzIGJyYXVjaHQgZGFzIE1HLCB3ZWl0ZXIgc28hIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGFsbGdlbWVpbmVzIChWYW5pb24sICA2LiBGZWIgMjAwMCwgMTc6MjQ6MzgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk0OTg1MzQzMyByZz1zY2htYXJybgp+IyEgdGlkPTk0OTgzODQ5MAoqZyogS2FyZW4gaXN0IGViZW4gbm9jaCBuZXUgdW5kIGhhdCBkaWUgUG9zdCB1bmQgZGllIE1QQSB2ZXJ3ZWNoc2VsdC4KCklzIGRvY2ggbmV0dCB2b24gaWhyLCBkYXNzIHNpZSBnbGVpY2ggdmVyc3VjaHQgaGF0LCBaYXJkb3ogQml0dGUgdW0KSW5mb3JtYXRpb24gbmFjaHp1a29tbWVuLgoKVmFuaW9uIC0gYmVlaW5kcnVja3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGFsbGdlbWVpbmVzIChBbmF0b2wsICA2LiBGZWIgMjAwMCwgMTc6MzA6MjkpOgp+IyEgcm49VmFuaW9uIHJ0PTk0OTg1NDI3OCByZz1zY2htYXJybgp+IyEgdGlkPTk0OTgzODQ5MApFcyBnaWJ0IG5vY2ggU3BpZWxlciwgZGllIE1hZ2llcm4gaGVsZmVuIHdvbGxlbiwgc293YXMuIEdlYmUgSm9mLCBkYXNzCnNpY2ggS2FyZW4gbmljaHQgdmVyZGVyYmVuIGxhZXNzdC4uLgoKQW5hdG9sIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKZXR6dCBsYXVlcnQgQnJpZXNlbHRyaW0gc2Nob24gaW0gU2NobGFmc2FhbC4uLiAoS2FyYW0sICA2LiBGZWIgMjAwMCwgMTg6MTE6MTQpOgpXaWUgaGVpc3N0IER1IGRlbm4gPyBLYXJhbQpTY2hvZW4sIGRhc3MgRHUgd2llZGVyIGRhIGJpc3QsIEthcmFtIQpQYXNzd29yZDogCkR1IG5pbW1zdCBzY2hvbiBhbSBTcGllbCB0ZWlsIQpWZXJ3ZW5kZSBEZWluZSBhbHRlIHN0ZXJibGljaGUgSHVlbGxlIC4uLgpJbSBTY2hsYWZzYWFsLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4gdW5kIHN1ZWRlbi4KRG9kZXJpYywga2xlaW4gdW5kIGhhcm1sb3MuCkxhbmNlbG90IGRlciBXYWZmZW5sb3NlLgpJbGx1emlkYS4KQnJpZXNlbHRyaW0gR3JpZXNlbGh1Y2sgZGVyIEtvbW1hbmRhbnQgZGVzIFN0cnV2LgpEYXMgbGV0enRlIE1hbCBrYW1zdCBEdSB2b24gYmxuZGk0LTE0NS0yNTMtMDc2LTE1Mi5hcmNvci1pcC5uZXQKV3VmZnR1ZmYgdHJvdHRldCBoZXJlaW4uCj4gQnJpZXNlbHRyaW0gc2FndDogV2FzIGlzdCBkZW5uIGRhcyBoaWVyPyBIYXVzdGllcmUgaW0gU3RydXY/IFNvIGdlaHQgZGFzCmFiZXIKQnJpZXNlbHRyaW0gc2FndDogbmljaHQsIEthcmFtISBEYXMgZ2lidCBsZWlkZXIgZWluZW4gVmVyd2VpcyEKV3VmZnR1ZmYgaGF1dCBhYi4KRGlyIGZhZWxsdCBlaW4sIGRhc3MgRHUgdmllbGxlaWNodCBEZWluIEJldHQgbWFjaGVuIHNvbGx0ZXN0LgpCcmllc2VsdHJpbSBnZWh0IG5hY2ggT3N0ZW4uCgotLQpLYXJhbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogcmF0dGVuIChBbmF0b2wsICA2LiBGZWIgMjAwMCwgMTg6Mjg6MjYpOgp+IyEgcm49VHJ1ZyBydD05NDk4NTgwODIgcmc9ZC51bnRlcndlbHQKfiMhIHRpZD05NDk3NjQ0OTkKRHUgbXVzc3QgZXMgamEgd2lzc2VuIDopCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiByYXR0ZW4gKE5ldm9rLCAgNi4gRmViIDIwMDAsIDE4OjMyOjQ2KToKfiMhIHJuPVRydWcgcnQ9OTQ5ODU4MDgyIHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9OTQ5NzY0NDk5CmphLi4uLi53aWUuLi4uLi5qZWRlciBudXIgbm9jaCBlaW5lbiBad2VpdGllIHZpZWxsZWljaHQgb2RlciBzbz8gQXJtZQp1bnNjaHVsZGlnZSBzYW10aWdlIFBmb2V0Y2hlbiBrYXBwZW4gdW5kIGtlaW5lIHdlaXRlcmVuIFRydWdzY2hsdWVzc2UgbWVocgp6dWxhc3Nlbj8KRGFzIGlzIGphIGRhbm4gd2llIEJyb29rJ3MgU2hhbm5hcmEgU2VyaWUuLi4uYXVmIGRhdWVyIGxhbmd3ZWlsaWcuLi4uLm9kZXI/CgpOZXZvaywgQXh0IHNjaGxlaWZlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHJhdHRlbiAoTXVwZmVsLCAgNi4gRmViIDIwMDAsIDE4OjU5OjI2KToKfiMhIHJuPU5ldm9rIHJ0PTk0OTg1ODM2NiByZz1zY2htYXJybgp+IyEgdGlkPTk0OTc2NDQ5OQpOZWluLCB3aWUgd2FlcnMgbWl0OgpEdSBkYXJmc3QgMTA5MyBad2VpdGllcyBoYWJlbiwgQUJFUjogdm9uIGRlbmVuIGRhcmYgbWF4aW1hbCBlaW5lciB6dWdsZWljaCBtaXQKRGlyIGVpbmdlbG9nZ3Qgc2VpbiAoaWNoIG1laW5lIG1pY2ggZXJpbm5lcm4genUga29lbm5lbiwgZGFzIGVpbmUgc29sY2hlClJlZ2VsdW5nIHNjaG9uIGVpbm1hbCBkaXNrdXRpZXJ0IHd1cmRlKQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiByYXR0ZW4gKE5ldm9rLCAgNi4gRmViIDIwMDAsIDIyOjU3OjE1KToKfiMhIHJuPVRhcmFnb24gcnQ9OTQ5ODc0MDgwIHJnPWRpc2t1c3Npb24KfiMhIHRpZD05NDk3NjQ0OTkKaXMgZG9jaCBpbW1lciB3aWVkZXIgc2Nob2VuIHdpZSBtYW4gYW5oYW5kIGRlcyBBcnRpa2VscyBzY2hvbiBzZWhlbiBrYW5uIHdlcgpaYXViZXJlciBpcyB1bmQgd2VyIG5ldC4uLi5zbyByaWNodGlnIEphbW1lcm4gdHVuIGhhbHQgbnVyIGRpZS4uLi4KCktvZW5uZW4gd2lyIHNvIERpc2t1c3Npb25lbiB3aWUgWndlaXRpZXMgdW5kIHNvIG5ldCBhcmNoaXZpZXJlbiB1bmQgc29iYWxkCmplbWFuZCB3YXMgbWVpbnQgZGllc2JlenVlZ2xpY2gga29tcGxldHQgd2llZGVyIGluIERpc2t1c3Npb24gc3RlbGxlbj8gd3VlcmRlCmFyYmVpdCBlcnNwYXJlbi4uLi4KCk5ldm9rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogcmF0dGVuIChIb29kLCAgNi4gRmViIDIwMDAsIDIzOjAwOjEwKToKfiMhIHJuPU5ldm9rIHJ0PTk0OTg3NDIzNSByZz1zY2htYXJybgp+IyEgdGlkPTk0OTc2NDQ5OQpsZWlkZXIgd2VyZGVuIHphaGxyZWljaGUgc29sY2hlciBkaXNrdXNpb25lbiBpbiBkZXIgdmVyZ2FuZ2VuaGVpdCBpbW1lcgp3aWVkZXIgZHVyY2ggc2Nod2FjaHNpbm5pZ2VzIGdlbGFiZXIgZ2VzdG9lcnQuLi5kZW4gd2VnIGFsbGVyCmRpc2t1c2lvbmVuIHp1bSB0aGVtYSB6d2VpdGllYXJtZWVuIGhhc3QgYXVjaCBkdSBudW4gZXJmb2xncmVpY2gKZWluZ2VsYWV1dGV0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IHJhdHRlbiAoTmV2b2ssICA2LiBGZWIgMjAwMCwgMjM6MDA6NDIpOgp+IyEgcm49SG9vZCBydD05NDk4NzQ0MTAgcmc9c2NobWFycm4KfiMhIHRpZD05NDk3NjQ0OTkKbWFuIGJlYWNodGUgZGllIHJ1YnJpaywgd2VyIGhpZXIgZGlza3V0aWVydCBpcyBzZWxiZXIgc2NodWxkLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSmV0enQgbGF1ZXJ0IEJyaWVzZWx0cmltIHNjaG9uIGltIFNjaGxhZnNhYWwuLi4gKFJhcmRpYW4sICA2LiBGZWIgMjAwMCwgMjM6MzA6NTYpOgp+IyEgcm49S2FyYW0gcnQ9OTQ5ODU3MDc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ5ODU3MDc0Ck5hIGhvZmZlbnRsaWNoIGhhc3QgRHUgd2VuaWdzdGVucyBoaW50ZXJoZXIgRGVpbiBCZXR0IGdlbWFjaHQsIHNvbnN0IGlzdHMKRXNzaWcgbWl0IEJlZm9lcmRlcnVuZ2VuIDspCgpSYXIsIGhhdCBqZXR6dCBuaWNodCBhdWYgS2FyYW1zIEdpbGRlbmxldmVsIGdlZ3Vja3QuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IHJhdHRlbiAoR29sYXMsICA3LiBGZWIgMjAwMCwgMDA6MzM6MjIpOgp+IyEgcm49SG9vZCBydD05NDk4NzQ0MTAgcmc9c2NobWFycm4KfiMhIHRpZD05NDk3NjQ0OTkKZGllIG1laXN0ZSBndWVsbGUgaGllciBrb21tdCBpbW1lciBub2NoIHZvbiBkaXIsIGhhc3RlIGtlaW5lbiBmcmlzZXVyLCBkZW4gZGFzCmludGVyZXNzaWVydD8KCmdvbGFzIGF1Y2gga29wZnNjaHVldHRlbG5kLCB3ZWlsIGVpbiBiaWxkIG1hbCB3aWVkZXIgYmVzdGFldGlndCB3dXJkZSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiByYXR0ZW4gKEhvb2QsICA3LiBGZWIgMjAwMCwgMDA6MzY6NTYpOgp+IyEgcm49R29sYXMgcnQ9OTQ5ODgwMDAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ5NzY0NDk5CmxpZXNzIGRpZSBhbnR3b3J0IGluIGVpbmVtIGFuZGVyZW4gdGhyZWFkLCB3byBhdWNoIGplbWFuZCB3ZWl0IGFiIHZvbSB0aGVtYQpudXIgZGVyIGJlbGVpZGlndW5nIHdpbGxlbiAnc3RhbmRhcmRwaHJhc2VuIGZ1ZXIgZHVtbWllcycgbG9zbGllc3MuCmVyc2V0emUgZG9ydCBwc3ljaG9sb2dlbiBkdXJjaCBmcmlzb2VyLCBqZWRlciBoYXQgYW5kZXJlIHZvcmxpZWJlbiwKc2VpbmVuIG1hbmdlbCBhbiBhcmd1bWVudGVuIG1pdCBibG9lZGVuIGZsYW1lcyB3ZXR0enVtYWNoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogcmF0dGVuIChHb2xhcywgIDcuIEZlYiAyMDAwLCAwMDozODowNCk6Cn4jISBybj1Ib29kIHJ0PTk0OTg4MDIxNiByZz1zY2htYXJybgp+IyEgdGlkPTk0OTc2NDQ5OQp1bmQgZHUgc2NocmVpYnN0IGhhbHQgdm9uIGFuZmFuZyBhbiBudXIgYXJndW1lbnRlLCBkaWUgZnVlciB2aWVsZSBhbiBkZW4KaGFhcmVuIGhlcmJlaWdlem9nZW4gc2luZC4KCmdvbGFzIGVtcGZpZWhsdCBlcnN0IGRlbmtlbiwgZGFubiBtaXQgYW5kZXJlbiByZWRlbiB1bmQgZGFubiBhcnRpa2VsIHNjaHJlaWJlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IHJhdHRlbiAoR29sYXMsICA3LiBGZWIgMjAwMCwgMDA6NDQ6MzkpOgp+IyEgcm49SG9vZCBydD05NDk4ODA1OTMgcmc9c2NobWFycm4KfiMhIHRpZD05NDk3NjQ0OTkKb2ssIGljaCB3ZXJkZSBtaWNoIG5hY2ggZGllc2VtIGFydGlrZWwgbmljaHQgbWVociBhdWYgZGVpbiBuaXZlYXUgYmVnZWJlbi4KCmdvbGFzIHNpY2ggbnVyIG5vY2ggYW11ZXNpZXJlbmQgdW5kIG5pY2h0IG1laHIgYXJndW1lbnRpZXJlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiByYXR0ZW4gKEhvb2QsICA3LiBGZWIgMjAwMCwgMDA6NDU6NTMpOgp+IyEgcm49R29sYXMgcnQ9OTQ5ODgwMjg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ5NzY0NDk5CidmdWVyIHZpZWxlJyBiZWluaGFsdGV0IHdhaHJzY2hlaW5saWNoIHZvcm5laG1saWNoIGRpY2ggc2VsYnN0LCB3YXMKaW4gZGVpbmVuIGF1Z2VuIG5hdHVlcmxpY2ggbWVociBhbHMgYXVzcmVpY2hlbmQgZXJzY2hlaW50LgplaW5lciBkaXNrdXNpb24gdWViZXIgZGVuIGNoYW5uZWwgenVyIGZvbGdlLCBnYWIgZXMgd2VpdGF1cyBtZWhyIGxldXRlLApkaWUgZXJzdCBkZW5rZW4gdW5kIGRhbm4gc2NocmVpYmVuIG11ZXNzdGVuLCBkYSBzaWUgZWluZSBhbmRlcmUgbWVpbnVuZwphbHMgZHUgdmVydHJldGVuLgpuYXR1ZXJsaWNoIGJyYXVjaHQgbWFuIGF1ZiBzb2xjaGUgbGV1dGUgd2llIGRpY2ggbmljaHQgd2lya2xpY2ggZWluenVnZWhlbiwKZGVubiBiZWkgOTAlIG5pY2h0IHNvbmRlcmxpY2ggaW50ZWxsaWdlbnRlbiBiZWxlaWRpZ3VuZ2VuCiAobmEgamEsLCB2b24gZGlyIGhhbHQuLi4pIHJlaWNodCBsZWlkZXIgbnVyIG5vY2ggZnVlciAxMCUgYXJndW1lbnRhdGlvbiwKZGllIHNpY2ggamEgYXVjaCBudXIgZGFyYXVmIGJlc2NocmFlbmt0LCBhbmRlcmVuIGxldXRlbiBkZWluZSBtZWludW5nCmluIGRlbiBtdW5kIHp1IGxlZ2VuLgphdWNoIGljaCBkaXNrdXRpZXJlIG5pY2ggdW5iZWRpbmd0IG1pdCAwJSBiZWxlaWRpZ3VuZ2VuLCBhYmVyIHp1IDkwJQphcmd1bWVudGF0aW9uIHJlaWNodCBlcyB3b2hsIGluIGRpZXNlbSBmYWxsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IHJhdHRlbiAoSG9vZCwgIDcuIEZlYiAyMDAwLCAwMDo0ODowNyk6Cn4jISBybj1Hb2xhcyBydD05NDk4ODA2Nzkgcmc9c2NobWFycm4KfiMhIHRpZD05NDk3NjQ0OTkKZGFzIGR1ZXJmdGUgZGlyIGF1Y2gga2F1bSBnZWxpbmdlbiwgYXVmc3RlaWdlbiBpc3QgdW5nbGVpY2ggc2Nod2VyZXIgYWxzCmFic3RlaWdlbi4KbmFjaGRlbSBkdSBkaWNoIG51biBoYWx0bG9zIGFtdWVzaWVydCB1bmQgZWluZSBzaW5udm9sbGUgZGlza3VzaW9uIGluCmRlbiBzY2hsYW1tIGdlem9nZW4gaGFzdCwga29lbm5lbiB3aXIgaG9mZmVudGxpY2ggYXVmIGRlaW5lIGFud2VzZW5oZWl0CnZlcnppY2h0ZW4sIGVzIHNlaSBkZW5uLCBkdSBoYXN0IGF1c25haG1zd2Vpc2UgbWFsIHdhcyBzaW5udm9sbGVzCmhlcnZvcnp1YnJpbmdlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiByYXR0ZW4gKEdvbGFzLCAgNy4gRmViIDIwMDAsIDAwOjQ5OjUxKToKfiMhIHJuPUhvb2QgcnQ9OTQ5ODgwODg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ5NzY0NDk5CmRhIGR1IGphIGhpZXJtaXQgZW5kZ3VlbHRpZyBkZWluZSBhcnJvZ2FueiB1bmQgbGFlY2hlcmxpY2hrZWl0IGRlcgpvZWZmZW50bGljaGtlaXQgcHJlaXNnZWdlYmVuIGhhc3QsIHVlYmVyIGxhc3NlIGljaCBkaXIgbWFsIGRhcyBsZXR6dGUgd29ydCAuLi4KCmdvbGFzIGJlZW5kZXQgZGllc2VuIGtpbmRlcmtyYW0gdW5kIGhhdCBzaWNoIGdlbnVnIGFtdWVzaWVydCAuLi4KCnBzOiBpY2ggc29sbHRlIGtpbmRlcmdhZXJ0bmVyIHdlcmRlbiwgd2VubiBtaXIgc293YXMgc3Bhc3MgbWFjaHQKKmtvcGZzY2h1ZXR0ZWxuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiByYXR0ZW4gKEFyYW5jaWEsICA3LiBGZWIgMjAwMCwgMDA6NTQ6MjQpOgp+IyEgcm49SG9vZCBydD05NDk4ODA3NTMgcmc9c2NobWFycm4KfiMhIHRpZD05NDk3NjQ0OTkKdmVyemVpaCBkYXNzIGljaCBkaWNoIGRhcmF1ZiBhdWZtZXJrc2FtIG1hY2hlLCBhYmVyIGltIE1vbWVudCBzdG9lcnN0IER1Cm1laW5lbiBTcGllbHNwYXNzIGVyaGVibGljaC4gRXJzdGVucyBmcmFnZSBpY2ggbWljaCBkaWUgZ2FuemUgWmVpdCBvYiB3aXIKd2lya2xpY2ggdWViZXIgZWluIHZpcnR1ZWxsZXMgU3BpZWwgcmVkZW4gb2RlciBvYiBlcyB1bSBEZWluIExlYmVuIGdlaHQuClp3ZWl0ZW5zIHZlcmJyZWl0ZXN0IER1IG1pdCBkZWluZXIgd2VubiBhdWNoIHp1bSBUZWlsIG5pY2h0IHNjaGxlY2h0CmZvcm11bGllcnRlbiBSdW1ub2VsZXJlaSBzY2hsZWNodGUgTGF1bmUuIE11c3MgaGllciBqZWRlCk1laW51bmdzdmVyc2NoaWVkZW5oZWl0IHVlYmVyIGluIG1laW5lbiBBdWdlbiB3aXJrbGljaCBiYW5hbGUgRGluZ2UgaW4gZWluZQpwZXJzb2VubGljaGUgQW5mZWNodGVyZWkgYXVzYXJ0ZW4/IE11c3MgamVkZXMga2xlaW5zdGUgRGV0YWlsIGltbWVyIHVuZCBpbW1lcgp3aWVkZXIgZGlza3V0aWVydCB3ZXJkZW4/IEljaCBoYWJlIGRpZSBIb3Jyb3J2ZXJzaW9uIGVpbmVzIE1vcmdlbmdyYXVlbnMsIGluCmRlbSBlcyBsYWVuZ2VyIGRhdWVydCBhbGxlIFJlZ2VsbiB6dSBsZXNlbiBhbHMgc2VpbmVuIENoYXJha3RlciBob2NoIHp1CnNwaWVsZW4uIFZlcmRhbW10LCBpaHIgc2VpZCBkb2NoIGFsbGUgZ2VybmUgaGllciwgb2Rlcj8gTXVlc3N0IGlociBldWNoIGRhcwpTcGllbGVuIGhpZXIgZ2VnZW5zZWl0aWcgenVyIFF1YWwgbWFjaGVuPyBNZWluIEdvdHQsIHRyYWd0IGV1cmUgTmV1cm9zZW4Kd29hbmRlcnMgYXVzLiBEYXMgTUcgaXN0IG5hY2ggd2llIHZvciBmdWVyIFNwYXNzIHVuZCBFbnRzcGFubnVuZyBnZWRhY2h0LApvZGVyPyBLb21tIHp1cnVlY2sgYXVmIGRpZSBFcmRlLCBIb29kLgoKZWluZSBsYW5nc2FtIGdlbmVydnRlIEFwZmVsc2luZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IHJhdHRlbiAoSG9vZCwgIDcuIEZlYiAyMDAwLCAwMDo1OTowNyk6Cn4jISBybj1BcmFuY2lhIHJ0PTk0OTg4MTI2NCByZz1zY2htYXJybgp+IyEgdGlkPTk0OTc2NDQ5OQptYW4gYnJhdWNodCBzaWNoIG51ciBhbiBkaWUgdXJzcHJ1ZW5nbGljaGUgZGlrc3Vpb24gaGFsdGVuIHVuZCBpY2ggaGFiCmR1cmNoYXVzIGJlZ3J1ZW5kZXQsIHdhcnVtIGRhcyB0aGVtYSB3aWNodGlnIGlzdC4gZXMgZ2lidCBzb2dhciBlaW5lIGdhbnplCm1lbmdlIGxldXRlLCBkaWUgZGFzIHRoZW1hIGdlbmF1c28gd2ljaHRpZyBlbXBmaW5kZW4sIHdpZSBpY2ggc2VsYnN0LgplcyBpc3Qgc2Nob2VuLCBkYXNzIGR1IHdlbmlnc3RlbnMgZWlubWFsIGRhcyB3b3J0IGBldWNoYCBiZW51dHp0LgpkYXMgaGludGVybGFlc3N0IGRhbm4gZWluZW4gdW0gZWluIGdhbnogd2luemlnIGtsZWluZXMgbXkgdmVybWluZGVydGVuCmVpbmRydWNrLCBkYXNzIGR1IGRlbiBmbGFtZSBldHdhcyBzZWhyIHBhcnRlaWlzY2ggc2llaHN0IHVuZCBkYXMgdGhlbWEKZ2VuYXVzbyB3aWUgZ29sYXMgdm9lbGxpZyBpZ25vcmllcnN0LiBlcyBnZWh0IGV1Y2ggb2ZmZW5zaWNodGxpY2ggbnVyCmRhcnVtLCBtYWwgZ2FueiB0b2xsIGVpbmUgZGlrc3Vpb24gaW4gZGVyIGFydCB6dXNhbW1lbnp1ZmFzc2VuOgpgamFtbWVyIG5pY2ggcnVtLCBkdSBzaWVoc3QgZGFzIHZpZWwgenUgZW5nLmAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiByYXR0ZW4gKEFyYW5jaWEsICA3LiBGZWIgMjAwMCwgMDE6MTA6MjgpOgp+IyEgcm49SG9vZCBydD05NDk4ODE1NDcgcmc9c2NobWFycm4KfiMhIHRpZD05NDk3NjQ0OTkKaG0sIGlzdCBkYXMgamV0enQgZGVyIEtyZWlzIGRlciBld2lnZW4gV2llZGVya2Vocj8gKmxhY2gqIFdpZSBzb2xsdGUgaWNoIGF1ZgpkaWVzZXMgc3RhdGVtZW50IGFudHdvcnRlbiBvaG5lIGVzIGlucyBMYWVjaGVybGljaGUgenUgemllaGVuID8gV2VubiBEdSBudW4Kd2lya2xpY2ggdW5kIHdhaHJoYWZ0aWcgZGFzIEJlZHVlcmZuaXMgaGFzdCBhdWZncnVuZCBkZXIgWndlaXRpZXNpdHVhdGlvbiBlaW5lClJldm9sdXRpb24genUgZW50ZmVzc2VsbiwgZGVuIGJldHJ1ZWdlcmlzY2hlbiBWZXJicmVjaGVybiBkYXMgSGFuZHdlcmsgenUKbGVnZW4gdW5kIHdpZSBEZWluIE5hbWVuc3ZldHRlciBCZXNjaHVldHplciBkZXIgQXJtZW4gdW5kIFNjaHdhY2hlbiB6dSB3ZXJkZW4KLSB3ZW5uIGF1Y2ggbnVyIGluIGVpbmVtIFNwaWVsIC0gIEJpdHRlLiBJY2ggbXVzcyBEZWluZSBCZWR1ZXJmbmlzc2UgbmljaHQKdmVyc3RlaGVuLCBhYmVyIGljaCBnb2VubmUgamVkZW0gc2VpbiBHbHVlY2suIFdlbm4gZGFzIGRlaW5lIGRhcmluIGJlc3RlaHQuLgpKYSwgaWNoIGRlbmtlIGRhc3MgZHUgaXJnZW5kd2llIGRlbiBCbGljayBmdWVyIGRhcyBWZXJoYWVsdG5pcyB2ZXJsb3JlbiBoYXN0LiAKVW5kIGphIC0gaWNoIGdlaGUgc2Nob24gd2llZGVyIG1pdCBHb2xhcyBrb25mb3JtIHVuZCBnZWJlIGVzIGpldHp0IGVpbmZhY2ggYXVmCnVuZCBpZ25vcmllcmUgZGVuIHRocmVhZC4gSWNoIGdlaG9lcmUgbnVuIHp1bSBwb2xpdGlzY2ggbmV1dHJhbGVuIEZlbGQgKmxhY2gqIAoKRGllIEFwZmVsc2luZSwgc2ljaCBkZW4gYW5nZW5laG1lbiBEaW5nZW4gZGVzIExlYmVucyB6dXdlbmRlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFp3ZWl0aWUtQXJtZWVuIChQYWRyZWljLCAgNy4gRmViIDIwMDAsIDEzOjU4OjQ0KToKfiMhIG9uPURhcmt3aW5nIG90PTk0OTkyODMwMiBvZz1kaXNrdXNzaW9uCn4jISBybj1Sb2NodXMgcnQ9OTQ5OTI4MTUxIHJnPWRpc2t1c3Npb24KfiMhIHRpZD05NDk4ODQyMDkKRGFmdWVyIG11ZXNzdGVuIGdld2lzc2UgT3JrcyBlcnN0bWFsIHp1bSBTY2hsYWcga29tbWVuLgotLT4gc2NobWFycnJuL211ZWxsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNQUdJRVIuLi4uIChBbmF0b2wsICA3LiBGZWIgMjAwMCwgMTY6MjY6NDIpOgo+IGtyZWlzaW5mbwpBbmF0b2wgICAgICAgOiBMUDogMjEwICgyMTApIE1QOiAyMjYgKDIyNikgT3J0OiBFaW4gSGludGVyemltbWVyCkVSUk9SOiAocylwcmludGYoKTogaW5jb3JyZWN0IGFyZ3VtZW50IHR5cGUgdG8gJWQuCkVSUk9SOiAocylwcmludGYoKTogaW5jb3JyZWN0IGFyZ3VtZW50IHR5cGUgdG8gJWQuCkVSUk9SOiAocylwcmludGYoKTogaW5jb3JyZWN0IGFyZ3VtZW50IHR5cGUgdG8gJWQuCgoqc3RvZWhuKiA6KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTUFHSUVSLi4uLiAoQmVuZGVpZ2lkLCAgNy4gRmViIDIwMDAsIDE3OjA3OjI2KToKfiMhIHJuPUFuYXRvbCBydD05NDk5MzcyMDIgcmc9c2NobWFycm4KfiMhIHRpZD05NDk5MzcyMDIKTmEgd2FydGUhISEhCgpCZW5kZWlnaWQsIGRlbiBuYWVjaHN0ZW4gQnVnIGF1ZiBBbmF0b2wgenVzY2hyZWliZW5kIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogcmF0dGVuIChTYW10cGZvdGUsICA3LiBGZWIgMjAwMCwgMTk6Mzc6MTQpOgp+IyEgcm49QW5hdG9sIHJ0PTk0OTg1ODEwNiByZz1zY2htYXJybgp+IyEgdGlkPTk0OTc2NDQ5OQpEdSBhdWNoLCBtaXQgZGVpbmVyICdrdW5zdHZvbGwnIHZlcnphaG50ZW4gWndlaXRpZWZhbWlsaWUgOykKClNhbXRwZm90ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogcmF0dGVuIChBbmF0b2wsICA3LiBGZWIgMjAwMCwgMTk6NDE6MjYpOgp+IyEgcm49U2FtdHBmb3RlIHJ0PTk0OTk0ODYzNCByZz1zY2htYXJybgp+IyEgdGlkPTk0OTc2NDQ5OQpOYSwgdmVyc3VjaGVuIHdpciBtYWwgd2llZGVyIGtyYW1wZmhhZnQsIE1hZ2llcndpc3NlbiBwcmVpc3p1Z2ViZW4/ClR1dCBtaXIgamEgd2lya2xpY2ggbGVpZCwgSGFzZW5wZm90ZSwgYWJlciB3ZW5uIER1IGRpZSBaZWl0dW5nIFJJQ0hUSUcKbGVzZW4gd3VlcmRlc3QsIHd1ZXNzdGVzdCBEdSwgZGFzcyBkYSB2b3IgZWluaWdlciBaZWl0IGVpbiAiZmxhdCBsaXN0IgpkcnVlYmVyZ2VsYXVmZW4gaXN0Li4uIDopCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IHJhdHRlbiAoU2FtdHBmb3RlLCAgNy4gRmViIDIwMDAsIDE5OjQzOjI4KToKfiMhIHJuPUFuYXRvbCBydD05NDk5NDg4ODYgcmc9c2NobWFycm4KfiMhIHRpZD05NDk3NjQ0OTkKV2llc28gTWFnaWVyd2lzc2VuPyBad2VpdGllcyBnZWhvZXJlbiBhbGxlc2FtdCBuYW1lbnRsaWNoIG1hcmtpZXJ0LgoKVW5kIGRhcyBtaXQgZGVyICdmbGF0IGxpc3QnIGlzdCBtaXIgc2Nob24gbGFlbmdlciBiZWthbm50LgoKcGZvdGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNRUyBmdWVyIFt3XSAoSmFtYWxza2ksICA3LiBGZWIgMjAwMCwgMTk6NTE6MzIpOgp+IyEgcm49WWVuZGkgcnQ9OTQ5NTA4ODE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ5NDE5ODI5CkRhcyBXIHN0ZWh0IGZ1ZXIgV2FybWR1c2NoZXIhCkFiZXIgZGFzIHdlaXNzdCBkdSBqYSBzaWNoZXJsaWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGphIChQdWssICA3LiBGZWIgMjAwMCwgMjA6MDM6NTApOgpEdSB0ZWlsc3QgVmFtcGlyZSBtaXQ6IG1oaGggWCAobmFtZSBnZWFlbmRlcnQ6KSBzY2hlaW50IGltbWVyIG5vY2ggenUgZGVua2VuCmRhcyBkYXMgbWcgZWluIHNwaWVsIHdhZXJlIDopCmt1cnplIHplaXQgc3BhZXRlciAoYWx0ZXIgaWRsZXIpCgpWYW1waXJlIHRlaWx0IGRpciBtaXQ6IGRhcyBtZyBpc3Qga2VpbiBzcGllbC4uLi4uLi4gZXMgaXN0IGVpbiBzY3JpcHQgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp6YXViZXJlciBhYndlcnRlbi4uLiAoSmFtYWxza2ksICA3LiBGZWIgMjAwMCwgMjA6NTU6NDIpOgp6YXViZXJlciBrb21tZW4sIHdpZSBkaXNlcyBoaWVyIHplaWd0IDJtYWwuCgpNaXJvc2xhdiBkZW5rdCAgIC4gbyBPIChUeXBpc2NoIENIYW90KQpDYWtleSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKRHUgc2Fnc3Q6IEFlY2h0IGdlZmFlYWVhZWFlYWVhaGxpc2NoCkNha2V5ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpJY2hKYW1hbHNraSBoYXQgZGFzIG5hdHVlcmxpY2ggZ2xlaWNoIGFscyAnQWVjaHQgZ2VmYWVsaXNjaCcgZXJrYW5udCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB6YXViZXJlciBhYndlcnRlbi4uLiAoSmFtYWxza2ksICA3LiBGZWIgMjAwMCwgMjA6NTc6MTQpOgp+IyEgcm49SmFtYWxza2kgcnQ9OTQ5OTUzMzQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ5OTUzMzQyCmdlZmFlaGxpc2NoIGlzdCBhdWNoIG1laW4gc2NocmVpYnN0aWwgaW0gdGVsbmV0LWxhZyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2luZGVyYW5mYW5nID8gU2Nob24gd2llZGVyID8gKFRhcmFnb24sICA3LiBGZWIgMjAwMCwgMjI6MjQ6MjYpOgpEaWUgZ3Jvc3NlIEdsb2NrZSB2b24gUG9ydCBWYWluIHZlcmt1ZW5kZXQgZGllIEFua3VuZnQgdm9uIFNjaG5lZSBpbQpNb3JnZW5ncmF1ZW4uCgpPaG5lIHdvcnRlIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB6YXViZXJlciBhYndlcnRlbi4uLiAoUmFyZGlhbiwgIDcuIEZlYiAyMDAwLCAyMjo0NDowOSk6Cn4jISBybj1KYW1hbHNraSBydD05NDk5NTM0MzQgcmc9c2NobWFycm4KfiMhIHRpZD05NDk5NTMzNDIKSXN0IGRhcyBzb3dhcyB3aWUgd2VzdHBmYWVobGlzY2g/PwoKUmFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExpY2h0IChBbmF0b2wsICA4LiBGZWIgMjAwMCwgMTY6MTc6MTcpOgp+IyEgcm49UGFkcmVpYyBydD05NTAwMjI5Njggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NTAwMjI5NjgKV2VubiBEdSBkYW5hY2ggZGllIE11ZC1TaGVsbCBhYmdpYnN0LCB3ZXJkZW4gd2lyIGRlbiBSZWJvb3QgZ2x1ZWNrbGljaAppbiBLYXVmIG5laG1lbi4gRm9yIHRoZSBncmVhdGVyIGdvb2QhCgpBbmF0b2wgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogcmF0dGVuIChBbmF0b2wsICA4LiBGZWIgMjAwMCwgMTY6Mzg6NTYpOgp+IyEgcm49SG9vZCBydD05NTAwMjQyNTggcmc9ZC51bnRlcndlbHQKfiMhIHRpZD05NDk3NjQ0OTkKRGFzcyBEdSBlcyBuaWNodCBrYXBpZXJzdCwgZGFzIGlzdCBtaXIgaW56d2lzY2hlbiBhdWNoIHNvIGtsYXJnZXdvcmRlbi4KCkRhbmtlLCBIb29kIDspCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBMaWNodCAoR3JpbW1ib3JuLCAgOC4gRmViIDIwMDAsIDE4OjExOjIwKToKfiMhIG9uPVRhdGphbmEgb3Q9OTUwMDIzMjE4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1CZWVsemVidWIgcnQ9OTUwMDIzMTYzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTUwMDIyOTY4CmhhdCBzZWl0IGRlbSBuZXVlbiBMaWNodHN5c3RlbSBpcmdlbmRqZW1hbmQgZXR3YXMgZ2VmdW5kZW4gOz0pCi0+IFNjaG1hcnJuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBMaWNodCAoR3JpbW1ib3JuLCAgOC4gRmViIDIwMDAsIDE4OjExOjMwKToKfiMhIG9uPUJlZWx6ZWJ1YiBvdD05NTAwMjMzMjggb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUJlZWx6ZWJ1YiBydD05NTAwMjMxNjMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NTAwMjI5NjgKYWNoLCBkYXMgbmV1ZS4uLiB2ZXJnZXNzdCBtZWluZW4gYXJ0aWtlbCBlaW5mYWNoIDstKQoKLT4gc2NobWFycm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiByYXR0ZW4gKFBhcmFjZWxzdXMsICA4LiBGZWIgMjAwMCwgMjI6MDM6MTEpOgp+IyEgcm49R29sYXMgcnQ9OTUwMDQzNjY5IHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9OTQ5NzY0NDk5CkRhcyBzaW5kIGphIGdsZWljaCAyIFNraWxscywgZGllIG1hbiBlcnN0IG1hbCBhdWYgMTAwJSBob2NodWViZW4gbXVzcy4KClBhcmEqIF06LT4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhtbSB6aWVtbGljaCB2aWVsIGJldHJpZWIgKE1lc2lyaWksICA5LiBGZWIgMjAwMCwgMTE6NTM6NTQpOgpCZW5kZWlnaWQgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKQ2hhb3QgUHVrIChMZXZlbCAxMSwgU2VoZXIpIGJldHJhdCBnZXJhZGUgZGFzIE1vcmdlbmdyYXVlbi4KQ2hhb3QgQ2FzZSAoTGV2ZWwgOCwgU2VoZXIpIGJldHJhdCBnZXJhZGUgZGFzIE1vcmdlbmdyYXVlbi4KQ2hhb3QgQ2FzZSB2ZXJsaWVzcyBnZXJhZGUgZGFzIE1vcmdlbmdyYXVlbi4KRHUgaG9lcnN0IGRpZSBVaHIgc2NobGFnZW46IEVzIGlzdCBqZXR6dCAxMSBVaHIuClJvYWRydW5uZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKQ2hhb3QgUm9hZHJ1bm5lciAoTGV2ZWwgMTEsIFNlaGVyKSBiZXRyYXQgZ2VyYWRlIGRhcyBNb3JnZW5ncmF1ZW4uClplcGh5ciAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEZWluIEZyZXVuZCBWYXJkaW9uIGtudWRkZWx0IERpY2ggbGllYmV2b2xsIHp1ciBCZWdydWVzc3VuZyBhdXMgZGVyIEZlcm5lLgpaaW5vICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCk1haGF0bWEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbiBGcmV1bmQgTWFoYXRtYSBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCkNoYW90IFByYSAoTGV2ZWwgMTEsIFNlaGVyKSBiZXRyYXQgZ2VyYWRlIGRhcyBNb3JnZW5ncmF1ZW4uClBhbmljICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClBlcnRpbmF4ZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKQ2hhb3RpbiBQZXJ0aW5heGUgdmVybGllc3MgZ2VyYWRlIGRhcyBNb3JnZW5ncmF1ZW4uCkdvbGFzICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClZvbiBGcmV1bmQgR29sYXM6IHRhY2hvCltBbGxnZW1laW46QmVuZGVpZ2lkXSBtaXR0YWdlc3NlbiEKQmVuZGVpZ2lkICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpNYWhhdG1hICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpIb29kICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClBlcnRpbmF4ZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpDaGFvdGluIFBlcnRpbmF4ZSAoTGV2ZWwgMTEsIFNlaGVyaW4pIGJldHJhdCBnZXJhZGUgZGFzIE1vcmdlbmdyYXVlbi4KWmVwaHlyIHJ1ZnQ6IFp1Y2tlcnNvY2tlIDopCkhvb2QgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCk1lc2ksIGlzdCBqZXR6dCBhdWNoIHdpZWRlciBkYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWNoIHNvLi4uIChGb29iYXIsICA5LiBGZWIgMjAwMCwgMTY6MDE6NDApOgpEZXIgRmFocm1hbm4gbGFlc3N0IGVpbmVuIFN0aW5rZWZ1cnogZmFocmVuLgpEZXIgRmFocm1hbm4gc2FndDogSG9zc2EsIHdlbiBoYWJlbiB3aXIgZGVuIGRhPwoKRm9vYmFyIHdlaXNzIGVzLiAqaG1wZioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiByYXR0ZW4gKFRydWcsICA5LiBGZWIgMjAwMCwgMTY6NTE6MzQpOgp+IyEgcm49QXJhbmNpYSBydD05NDk4ODEyNjQgcmc9c2NobWFycm4KfiMhIHRpZD05NDk3NjQ0OTkKR2V3aXNzZSBTcGllbHJlZ2VsbiBzaW5kIGhhbHQgbWFsIG5vZXRpZywgdW0gbmljaHQgZGFzIHNvemlhbGUgVmVyaGFsdGVuCnVudGVyZWluYW5kZXIgenUgc3RvZXJlbiwgQXJhbmljYS4KClZpZWxsZWljaHQgd2FlciBqYSBlaW5lIEFydCAxMC1HZWJvdGUtZGVzLU1vcmdlbkdyYXVlbnMgamEgdG9sbCwgYWJlciBkYXMgd2lyZAptYW4ga2F1bSBsZXNlbiwgd2VubnMgYmVpIGVpbmVuIGJlaW0gTmV1LUFubGVnZW4gZXJzdG1hbCBzbyByZWluc2Nyb2xsdC4gVW5kCndhZXIgenUga25hcHAuIFVuZCB2b24gdmVybnVlbmZ0aWdlbiBNZW5zY2hlbiBlcndhcnRlIGljaCwgZGFzcyBkaWUgenVtaW5kZXN0Cm1hbCBlaW4gcGFhciBUZXh0ZSBpbiBkZXIgSGlsZmUgbGVzZW4gKGRhcyBpc3QgZG9jaCBlaW5lIFNhY2hlLCBkaWUgbmljaHQKbGFuZ2UgZGF1ZXJ0KS4gRnVlciBiZXF1ZW1lcmVzIExlc2VuIGlzdCBkaWUgZ2xlaWNoZSBEb2t1bWVudGF0aW9uIGphIGF1Y2ggdmlhCkJyb3dzZXIgamVkZXJ6ZWl0IGVycmVpY2hiYXIuCgpUcnVnLiBoYWVsdCBkYXMgaWdub3JpZXJlbiBkZXIgc3BpZWxlcmhpbGZlIGZ1ZXIgZmF1bGhlaXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbiBkZXIgQUItR2lsZGUgKFNyYWJpLCAgOS4gRmViIDIwMDAsIDE5OjMwOjE5KToKCktPTUlTQ0ggISEhCgpFaW4gZWlza2FsdGVyIEVuZ2VsLgpFaW5lIFplaXR1bmcuCkVpbiBIYW5kYnVjaCBmdWVyIEFuZmFlbmdlci4KRWluIFBhcnR5YnJldHQuCiB1bnQgZW5nZWwKU293YXMgc2llaHN0IER1IGRhIG5pY2h0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEluIGRlciBBQi1HaWxkZSAoR29yLCAgOS4gRmViIDIwMDAsIDE5OjMxOjM1KToKfiMhIHJuPVNyYWJpIHJ0PTk1MDEyMTAxOSByZz1zY2htYXJybgp+IyEgdGlkPTk1MDEyMTAxOQpDb29sIEFsdGVyLiBEYWZ1ZXIgaGFzdGUgZGlyIGRpZSBNR19OYXJyZW5rYXBwZSAyMDAwICh0bSkgdmVyZGllbnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYWVtb3JyaG9pZGVuPyA7LSkgKExpYXJhLCAgOS4gRmViIDIwMDAsIDIwOjA0OjI3KToKRGllIERhbWVudG9pbGV0dGUuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uCkVpbiBLb25kb21hdXRvbWF0Lgo+IEJpZ2FzIGtvbW10IGVpbGlnIGFuZ2VrcmFiYmVsdC4KQmlnYXMgc2V0enQgc2ljaCBhdWYgZGllIFNjaHVlc3NlbC4KQmlnYXMgcGlua2VsdC4KQmlnYXMgc3B1ZWx0IGVpbmVuIEhhdWZlbiB3ZWcuCkJpZ2FzIGtyYWJiZWx0IGxhdXQgamFtbWVybmQgV2VzdGVuLgoKTGlhcmEsIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogcmF0dGVuIChMdWcsIDEwLiBGZWIgMjAwMCwgMDI6MTM6MTApOgp+IyEgcm49VHJ1ZyBydD05NTAxMTE0OTQgcmc9c2NobWFycm4KfiMhIHRpZD05NDk3NjQ0OTkKCkhhaGFoYWhhaGFoYWhhaGEgOykKClRydWcgcmVmZXJpZXJ0IHVlYmVyIHNvemlhbGVzIFZlcmhhbHRlbiBpbSBNdWQuIEFsbGVzIGtsYXIgdW5kIEtvY2ggaGEgbmljaHQKZ2Vsb2dlbi4uLi4KCkJydWVsbGVuZCB2b3IgTGFjaGVuCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ214IChTdG9wZGVuYnVzLCAxMC4gRmViIDIwMDAsIDExOjE1OjU4KToKCkFsc28sIGljaCBoYWIgamEgbmVuIE1haWxhY2NvdW50IGJlaSBnbXggdW5kIGhldXQsIGJlaW0gbmFjaHNjaGF1ZW4gb2IKbWFpbCwgaGF0cyBiZWltIEJlZ3J1ZXNzdW5nc3NjaGlybSBmb2xnZW5kZW4gVGV4dCBpbm5lciBFY2tlOgpORVdTOiAKCgpLZWluZSBNYWlscyBpbSBNb3JnZW5ncmF1ZW4/CldlZ2VuIFdhcnR1bmdzYXJiZWl0ZW4gLi4uIGJsYWJsYQoKV29oZXIgd2lzc2VuIGRpZSwgZGFzIGljaCBrZWluZSBNYWlsIGltIE1HIGhhYiA/IEF1c3NlcmRlbSBpc3NlcyBqYSBnZWxvZ2VuLAppY2ggaGFiIGRvY2ggd2VsY2hlICEgU28gISBCYWVoICEgKnp1bmdlIHJhdXN0cmVjayoKClN0b3BwaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBsZXR6dGVuIFdvY2hlIChHcmltbWJvcm4sIDEwLiBGZWIgMjAwMCwgMTg6MzI6MzkpOgoiV2VyIHVtIEtydWVtZWwgYmV0dGVsdCBiZWtvbW10IG1laHIgYWxzIGRlciwgZGVyIHVtIEJyb3QgYmV0dGVsdC4iIChpbmRpc2NoKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDEwLiBGZWIgMjAwMCwgMTg6MzM6MzMpOgoiU2Nob2VuIGlzdCBhbGxlcywgd2FzIG1pdCBkZW4gQXVnZW4gZGVyIExpZWJlIGdlc2VoZW4gd2lyZC4iIChDaHJpc3RpYW4KTW9yZ2Vuc3Rlcm4pCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWndlaXRpZS1Bcm1lZW4gKFRlZGR5LCAxMC4gRmViIDIwMDAsIDE4OjQ1OjA0KToKfiMhIHJuPUx1ZyBydD05NDk5NzIyNTAgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTk0OTg4NDIwOQpLbGVyaWtlciBhYnNjaGFmZmVuPwpEYW5uIG11ZXNzZW4gRnJhdWVuIGphIGRvY2ggaW4gZGllIEthZW1wZmVyZ2lsZGUuCgpUZWRkeSwgbmljaHQgc2ljaGVyLCBvYiBMdWcgZGFzIFNPIGd1dCBkdXJjaGRhY2h0IGhhdC4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB6YXViZXJlciBhYndlcnRlbi4uLiAoSmFtYWxza2ksIDEwLiBGZWIgMjAwMCwgMjA6NTc6MDYpOgp+IyEgcm49UmFyZGlhbiBydD05NDk5NTk4NDkgcmc9c2NobWFycm4KfiMhIHRpZD05NDk5NTMzNDIKTm9wZS4KV2VubiBpY2ggd2lsbCBrYW5uIGljaCBtaWNoIGtsYXIgYXVzZHJ1ZWNrZW4uLi4KSmFtYWxza2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFp3ZWl0aWUtQXJtZWVuIChMdWcsIDExLiBGZWIgMjAwMCwgMDI6MDA6NDEpOgp+IyEgcm49VGVkZHkgcnQ9OTUwMjA0NzA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ5ODg0MjA5CgpEaWUgd2VyZGVuIGRhbm4gendhbmdzZ2Vsb2VzY2h0LiBJc3QgYWxsZXMgc2Nob24gZ2VwbGFudCwgVGVkZHkuCgpMb2NrZXIKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoYWxsbywgcGF1bGluY2hlbiB3YXIgaGllciAoQm9pbmcsIDExLiBGZWIgMjAwMCwgMTI6NDA6NDEpOgp+IyEgb249UGF1bGluY2hlbiBvdD05NTAyNjg5NTkgb2c9YWxsZ2VtZWluZXMKcGF1bGluY2hlbiB3YXIgaGllci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGMndCBpZ25vcmllcnQgdW5zISAoTWVuYWNlLCAxMS4gRmViIDIwMDAsIDE0OjEzOjE3KToKfiMhIG9uPU1lbmFjZSBvdD05NTAyNzQ1NTUgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVRlZGR5IHJ0PTk1MDE5NzkxMSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk0OTA1NDIyNgo+IFRlZGR5LCBkZXIgYXVmZ3J1bmQgZGllc2VzIEFydGlrZWxzIGhpZXIgYW5nZWZhbmdlbiBoYXQuCgpJY2ggaGFiIGF1Y2ggYXVmZ3J1bmQgZGllc2VzIEFydGlrZWwgaGllciBhbmdlZmFuZ2VuLCB3ZW5uIGF1Y2ggZXR3YXMgc3BhZXRlciEKCk1lbmFjZSAqaXN0IF91ZWJlcmhhdXB0bmljaHRfIHN1ZWNodGlnISA7bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGMndCBpZ25vcmllcnQgdW5zISAoR3JpbW1ib3JuLCAxMS4gRmViIDIwMDAsIDE0OjE0OjQxKToKfiMhIG9uPUdyaW1tYm9ybiBvdD05NTAyNzQ4MzMgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU1lbmFjZSBydD05NTAyNzQ1NTUgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NDkwNTQyMjYKVW5kIG1pY2ggaGF0IG1laW5lIE9tYSBhbmdlZml4dCwgZGllIGRhcyBzY2hvbiBzZWl0IGlocmVyIEp1Z2VuZCBiZXRyZWlidC4KV2VuIGludGVyZXNzaWVydCBkYXMgZWlnZW50bGljaD8KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNjaHVsdW5nIChHcmltbWJvcm4sIDExLiBGZWIgMjAwMCwgMTQ6MjQ6MjMpOgp+IyEgb249TGlhcmEgb3Q9OTUwMjc1MTI1IG9nPXdpdHplCn4jISBybj1HcmltbWJvcm4gcnQ9OTUwMjczNTIyIHJnPXdpdHplCn4jISB0aWQ9OTUwMjczNTIyCkt1cnN2b3JzY2hsYWcgZnVlciBQYW5pYzoKCkRldXRzY2hlIFNjaHJpZnQgbWl0IFVtbGF1dGVuLiA7LSkKCkxpYXJhLCBad2VyZ2VuemF1YmVyaW5lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogcmF0dGVuIChBcHN1LCAxMS4gRmViIDIwMDAsIDE1OjA2OjU2KToKfiMhIHJuPUFyYW5jaWEgcnQ9OTQ5ODgyMjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTQ5NzY0NDk5Cklnbm9yaWVyZSBob29kIGhpbGZ0IHNpY2hlci4KCkFwc3UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGMndCBpZ25vcmllcnQgdW5zISAoR25vbWUsIDExLiBGZWIgMjAwMCwgMTU6MTc6NDgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk1MDI3NDg4MSByZz1zY2htYXJybgp+IyEgdGlkPTk0OTA1NDIyNgptaWNoIHouQi4KYWJlciB3ZXIgaW50ZXJlc3NlaWVydCBzaWNoIHNjaG9uIGZ1ZXIgZGVpbmUgb21hPwoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEhpbW1lbHNrcmV1eiAoTmV2b2ssIDExLiBGZWIgMjAwMCwgMTY6NDI6MjUpOgp+IyEgcm49Qm9pbmcgcnQ9OTUwMjgyNzcyIHJnPWV0aWtldHRlCn4jISB0aWQ9OTUwMTk3NjAzCkh1aSwgZGVyIHNjaGVpbnQgamEgZ2VuYXVzbyBiZXNjaGlzc2VuIGdlc2NobGFmZW4genUgaGFiZW4gd2llIGljaC4uLi4uIGF1Y2gKR3JpcHBlLCBDaGVmPwoKTmV2b2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11bGFpIC4uLiAoTGlhcmEsIDExLiBGZWIgMjAwMCwgMTc6NDA6NTcpOgpbQWJlbnRldWVyOkZyb3NjaCBBcHN1XSBvZWhlbW0gd2VubiBpY2ggbmUgd2FmZmUgenVlY2tlbiB3aWxsIGJlaW0gbXVsYWksCltBYmVudGV1ZXI6RnJvc2NoIEFwc3VdIHJlaWNodCBtZWluZSBzdGFlcmtlIG5pY2h0PyBpY2ggYmluIG5pY2h0IGdlZnJvc2NodC4uLgoKTGlhcmEsIGdyaW5zZW5kZSBad2VyZ2VuemF1YmVyaW5lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXVsYWkgLi4uIChUaHVmaGlyLCAxMS4gRmViIDIwMDAsIDE3OjQxOjQ1KToKfiMhIHJuPUxpYXJhIHJ0PTk1MDI4NzI1NyByZz1zY2htYXJybgp+IyEgdGlkPTk1MDI4NzI1NwoKZHUgc29sbHN0IGRvY2ggbmljaHQgaW1tZXIgYW5kZXJlIHNwaWVsZXIgZnJvc2NoZW4sIGxpYSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiByZXNldCB6dXIgcmljaHRpZ2VuIFplaXQgKE1vcmdvdGgsIDEyLiBGZWIgMjAwMCwgMTg6NTA6MTIpOgp+IyEgb249TW9yZ290aCBvdD05NTAzNzc4MDAgb2c9aGFyZHNvZnR3YXJlCkVpbiByaWVzaWdlciBGZXVlcmRhZW1vbiBrb21tdCBhbi4KTGlhcmEga251ZGRlbHQgRGljaCwgU21pbGV5LCBLYXJpYywgTGlhcmEsIENpc291IHVuZCBlaW5lbiByaWVzaWdlbgpGZXVlcmRhZW1vbi4gCiAgLi4uLm5vcm1hbC9LbGF1ZW4uLi4uLi4gRmV1ZXJkYWVtb24uLiA6IENpc291Li4uLi4uLi4gKioqKioqKiogLS0gc2VociBoYXJ0CgpNKiBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGVybiByZWNobmVuLCBGdW5hKiAhISAoUGVyaXNoYW4sIDEyLiBGZWIgMjAwMCwgMTk6MjI6MTkpOgoKPHBydWVmZT4KRHUgbXVzc3QgbWluZGVzdGVucyAxMDQgU3R1bmRlbiBTcGllbHplaXQgendpc2NoZW4gZGVyIHZvcmhlcmlnZW4gUHJ1ZWZ1bmcKdW5kIGRpZXNlciBsYXNzZW4uIERhenUgZmVobGVuIERpciBub2NoIDAgU3R1bmRlbiB1bmQgMCBNaW51dGVuLgoKKmFyZ2wqCgpQZXJpc2hhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbXV0aWcgb2RlciBzZWxic3Rtb2VyZGVyaXNjaD8gKEZyaWVkZWwsIDEzLiBGZWIgMjAwMCwgMTY6Mjc6MzYpOgpEanRvbSB0ZWlsdCBEaXIgbWl0OiBzYWcgbWFsIGRlbmtzdCBkdSB3aXIgc2NoYWZmZW4gZGVuIHNjaGFjaHQ/CgpGcmllZGVsLCBpbW1lcm5vY2ggZ3J1ZWJlbG5kIG9iIHdpciBlcyBwcm9iaWVyZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBIaW1tZWxza3JldXogKFpvb2ssIDE0LiBGZWIgMjAwMCwgMTM6Mjk6MjQpOgp+IyEgcm49SG9vZCBydD05NTA1MzEwODggcmc9ZXRpa2V0dGUKfiMhIHRpZD05NTAxOTc2MDMKRHUgdGVpbHN0IE1lc2lyaWkgbWl0OiB3YXJ1bSBzdGVodCBkZW5uIGltbWVyIGVpbiAna2t3ZXInIGluIGhvb2RzCkR1IHRlaWxzdCBNZXNpcmlpIG1pdDogemVpdHVuZ3NhcnRpa2Vsbj8gOykKTWVzaXJpaSB0ZWlsdCBEaXIgbWl0OiBmcmFnIG5pY2gKClpvb2sgZnJhZ3Qgc2ljaDogVW5kIG51PyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE11bGFpIC4uLiAoQXBzdSwgMTQuIEZlYiAyMDAwLCAxOTo0MzoyMSk6Cn4jISBybj1MaWFyYSBydD05NTAyODcyNTcgcmc9c2NobWFycm4KfiMhIHRpZD05NTAyODcyNTcKT2VoLCAqaHVlc3RlbCogZGFzIHdhciBqYSBhbGxlcyBnYW56IGFuZGVycyAuLi4uIDstKQoKQXBzdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVXBzLi4uIChEYXJpYSwgMTQuIEZlYiAyMDAwLCAyMDozMjoyNCk6CldvaGwgaG9lY2hzdGdyYWRpZyBzYWV1cmVoYWx0aWcsIHdhcz8KCkFuYXRvbCB2ZXJ3dXNjaGVsdCBOZXNhamFzIEhhYXJlLgpBbmF0b2xzIEV4dHJhaGFuZCBsb2VzdCBzaWNoIHBsb2V0emxpY2ggYXVmLiAgICAgICAgICAKCkRhcmlhIGlzdCBnZXdhcm50LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEhpbW1lbHNrcmV1eiAoQW5hdG9sLCAxNC4gRmViIDIwMDAsIDIzOjUzOjA5KToKfiMhIG9uPUFuYXRvbCBvdD05NTA1Njg3Nzcgb2c9ZXRpa2V0dGUKfiMhIHJuPUdyaW1tYm9ybiBydD05NTA1NjcwNTEgcmc9ZXRpa2V0dGUKfiMhIHRpZD05NTAxOTc2MDMKCkdyaW1tYm9ybiwgZGVyIFdpdHogYW4gZGVyIFNhY2hlIGlzdDogRW5kZXIgaXN0IE1hZ2llci4KCkFuYXRvbCAtIHdpbGwgZXMgamEgYXVjaCBuaWNodCB3YWhyaGFiZW4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogSGltbWVsc2tyZXV6IChHcmltbWJvcm4sIDE0LiBGZWIgMjAwMCwgMjM6NTU6NDkpOgp+IyEgcm49QW5hdG9sIHJ0PTk1MDU2ODc4OSByZz1zY2htYXJybgp+IyEgdGlkPTk1MDE5NzYwMwoqYXJnaCoKQmVpIHNlaW5lbSBCZWl0cmFnIGhhZXR0ZSBpY2ggZGEgbmllIG1pdCBnZXJlY2huZXQsIGRlc3dlZ2VuIGhhYiBpY2ggZ2FyIG5pY2h0CmVyc3QgbmFjaGdlc2VoZW4uCgpOYWphLCBpY2ggYmFzdGVsIGRhbm4gaGFsdCBhbiBlaW5lciBGdW5rdGlvbiwgbWl0IGRlciBtYW4gTWFnaWVyIGFlcmdlcm4ga2Fubi4KTWlyIGZhZWxsdCBkYSBiZXN0aW1tdCB3YXMgZWluLi4uCk9kZXIgaWNoIGdlaGUgenVtIHdlaW5lbiBpbiBlaW5lciBkdW5rbGUgRWNrZS4gTWFnaWVyLCB0YXRzYWVjaGxpY2guLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFzc2lnIEFuaGFuZy4uLiAoTHVnLCAxNS4gRmViIDIwMDAsIDAyOjA5OjA2KToKCkxpYXJhIHZlcmxhZXNzdCBkZW4gUmF1bSBuYWNoIFdlc3RlbiwgZG9jaCBEZWluIExhZWNoZWxuIGJsZWlidC4KRGVyIHdpbnppZ2UgV29scGVydGluZ2VyIHRhcHBzdC4KRGVyIERzY2hpbm4gZ2VodC4KQmFjYXJkaSBmbGF0dGVydCBMaWFyYSBoaW50ZXJoZXIuCkVpbmUgVGlnZXJlbnRlIHdpcmQgdm9uIExpYXJhIHdlZ2dlem9nZW4uCgoKVHNzLiB0c3MKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbW1lciBkaWVzZSBnZWZ1ZWhsc3NjaHdhbmt1bmdlbiA7KSAoU291bGh1bnRlciwgMTUuIEZlYiAyMDAwLCAwMjoyMToxNik6CkJlbGdhcmlhZCBmYWVsbHQgdm9tIEhpbW1lbCB1bmQgZmx1Y2h0LgpCZWxnYXJpYWQgdmVyYnJlaXRldCBndXRlIExhdW5lIHVuZCBnZWh0IG5hY2ggTm9yZG9zdGVuLgpCZWxnYXJpYWQgc3ByaW5ndCBnbHVlY2tsaWNoIGhlcmVpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvc28uLi4gKFpvb2ssIDE1LiBGZWIgMjAwMCwgMDk6NDc6MjQpOgpQYXJhY2Vsc3VzICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClZhbGEgTW9yZ290aCBydWZ0OiBhYWFhYWFhYWFhYXJnaCwgdmVyZGFtbXRlIGJlcGlzc3RlIHNjaHdlaW5lc2NoZWlzc2UKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBZW5kZXJ1bmcgaW4gZGVuIEZyaWVkaG9mc2thdGFrb21iZW4gKEJvaW5nLCAxNS4gRmViIDIwMDAsIDE0OjEyOjU2KToKSWNoIGhhYmUgZWluIERldGFpbCBuYWNoZ2V0cmFnZW4gdW5kIHp3ZWkgVHlwb3MgZ2VmaXhlZC4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFlbmRlcnVuZyBpbiBkZW4gRnJpZWRob2Zza2F0YWtvbWJlbiAoVGh1ZmhpciwgMTUuIEZlYiAyMDAwLCAxNDoxMzozMik6Cn4jISBybj1Cb2luZyBydD05NTA2MjAzNzYgcmc9c2NobWFycm4KfiMhIHRpZD05NTA2MjAzNzYKdWhvaCwgZWluICJmbGVpc3NpZ2VyIiBnb3R0Li4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWVuZGVydW5nIGluIGRlbiBGcmllZGhvZnNrYXRha29tYmVuIChBbmF0b2wsIDE1LiBGZWIgMjAwMCwgMTQ6MzA6NDUpOgp+IyEgcm49Qm9pbmcgcnQ9OTUwNjIwMzc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUwNjIwMzc2CkRhcyBoYXN0IER1IHNjaG9uIGxldHp0ZSBXb2NoZSBnZXRhbiwgd2FydW0gc2Fnc3QgRHUgZGFzIGVyc3QgamV0enQhPwoKQW5hdG9sIC0gc3RvY2tzYXVlci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFlbmRlcnVuZyBpbiBkZW4gRnJpZWRob2Zza2F0YWtvbWJlbiAoSG9vZCwgMTUuIEZlYiAyMDAwLCAxNDozMTozNSk6Cn4jISBybj1BbmF0b2wgcnQ9OTUwNjIxNDQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUwNjIwMzc2CmljaCB3YXJ0ZSBsaWViZXIgbm9jaCwgd2VubiBkYSBub2NoIG5lbiBkZXRhaWwgZGF6dWtvbW10LCBtdXNzIGljaCBub2NoCm1hbCBkb3J0IHJ1bnRlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFlbmRlcnVuZyBpbiBkZW4gRnJpZWRob2Zza2F0YWtvbWJlbiAoQm9pbmcsIDE1LiBGZWIgMjAwMCwgMTQ6Mzk6MTMpOgp+IyEgcm49SG9vZCBydD05NTA2MjE0OTUgcmc9c2NobWFycm4KfiMhIHRpZD05NTA2MjAzNzYKTnVyIHNvIGFscyBBbmt1ZW5kaWd1bmc6IEVzIGtvZW5udGUgc2Nob24gc2VpbiwgZGFzcyBub2NoIGVpbnMgZGF6dSBrb21tdCwKaWNoIGJpbiBtaXIgZGEgYWJlciBub2NoIG5pY2h0IGh1bmRlcnRwcm96ZW50aWcgc2ljaGVyLiBBbnJlZ3VuZ2VuIHVtCm1laW5lIE1laW51bmdzYmlsZHVuZyB6dSBiZXNjaGxldW5pZ2VuIHNpbmQgZGEgbmF0dWVybGljaCBpbW1lciBnZXJuCmdlc2VoZW4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFlbmRlcnVuZyBpbiBkZW4gRnJpZWRob2Zza2F0YWtvbWJlbiAoTWFoYXRtdSwgMTUuIEZlYiAyMDAwLCAxNTozOTo0Nyk6Cn4jISBybj1Cb2luZyBydD05NTA2MjE5NTMgcmc9c2NobWFycm4KfiMhIHRpZD05NTA2MjAzNzYKSG0sIGRhIG11c3MgaWNoIGFsc28gYXVjaCBub2NobWFsIHJ1bnRlci4gQmVzdGltbXQgZ2lidCBkYXMgbmV1ZSBEZXRhaWwKZWluZW4gU3R1ZmVucHVua3Qgb2RlciBkZXIgVHlwb2ZpeCBoYXQgZWluIGFuZGVyZXMgRGV0YWlsIGFiZ2V3ZXJ0ZXQuClZlcmZsdWNodCwgaWhyIHNvbGx0IGRvY2ggZGFzIE1VRCBpbW1lciBzY2hvZW4gc3RhdGlzY2ggaGFsdGVuIQoKTWFoYXRtdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQWVuZGVydW5nIGluIGRlbiBGcmllZGhvZnNrYXRha29tYmVuIChHbm9tZSwgMTUuIEZlYiAyMDAwLCAxNjoxMzozMSk6Cn4jISBybj1Cb2luZyBydD05NTA2MjE5NTMgcmc9c2NobWFycm4KfiMhIHRpZD05NTA2MjAzNzYKdW5kIHdvIGdlbmF1IGJpdHRlPwpiZWkgZGVuIG1hc3NpZyBmZWhsZW5kZW4gZGV0YWlscyBrYW5uIGRhcyBqYSB0aGVvcHJha3Rpc2NoIHVlYmVyYWxsIHNlaW4uCgpnbk9tZSBtb2VjaHRlIGtsYXJoZWl0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBZW5kZXJ1bmcgaW4gZGVuIEZyaWVkaG9mc2thdGFrb21iZW4gKE1haGF0bXUsIDE1LiBGZWIgMjAwMCwgMTc6NTg6MDUpOgp+IyEgcm49R25vbWUgcnQ9OTUwNjI3NjExIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUwNjIwMzc2CkRhcyB3YWVyZSBNYWdpZXJoaWxmZSB1bmQgd3VlcmRlIG1pdCBBYnN0dWZ1bmcgdW0gbWluZGVzdGVucyA0MSBTdHVmZW4tCnB1bmt0ZSBiZWkgQm9pbmcgZ2VhaG5kZXQgd2VyZGVuLCBzbyBkZXIgTUctUHJhZXNpZGVudCBuaWNodCBhbmRlcnMKZW50c2NoZWlkZXQuCgpNYWhhdG11CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gc2ljaGVyZXMgWmVpY2hlbi4uLiAoTmV2b2ssIDE1LiBGZWIgMjAwMCwgMjI6Mjk6NDEpOgpkYXNzIGRpZSBndXRlbiBOYW1lbiBsYW5nc2FtIGFsbGUgd2VnIHNpbmQ6CltNb2VyZGVyOkdlaXN0IGVpbmVzIEhhc2VuXSBMZXJuIGxpZWJlciwgc3RhdHQgdW5zY2h1bGRpZ2UgTW9uc3RlciB6dQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBIYXNlbl0gZXJtb3JkZW4sIFdvd2JhZ2dlciEKCldvd2JhZ2dlci4uLi4uLi5hbHNvIGVjaHQgbmV0Li4uLi4uCgpOZXZvaywga29wZnNjaHVldHRlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBZW5kZXJ1bmcgaW4gZGVuIEZyaWVkaG9mc2thdGFrb21iZW4gKEx1ZywgMTYuIEZlYiAyMDAwLCAwMToxNDo1MCk6Cn4jISBybj1Cb2luZyBydD05NTA2MjE5NTMgcmc9c2NobWFycm4KfiMhIHRpZD05NTA2MjAzNzYKCkhtPyBCYXUgZG9jaCBuZW4gQmVja2VuIGVpbiwgZGFtaXQgZGllIExldXRlLCBkaWUgd2VnZW4gWlQgbm9jaG1hbApyZWlubXVlc3NlbiwgaXJnZW5kd28gYWJrb3R6ZW4ga29lbm5lbi4uLgoKU2llaHN0ZSBBbmF0b2w/IEljaCBiaW4gbmljaHQgZ3J1bmRzYWV0emxpY2gga29udHJhcHJvZHVrdGl2Ckx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbHVnIHdhciBtYWwgd2llZGVyIGZsZWlzc2lnIChUcnVnLCAxNi4gRmViIDIwMDAsIDAxOjQ4OjE5KToKPiBubgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA3MyB2b24gTHVnIGluIFJ1YnJpayBkaXNrdXNzaW9uLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA5IHZvbiBMdWcgaW4gUnVicmlrIGVudHdpY2tsdW5nLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAyNCB2b24gTHVnIGluIFJ1YnJpayBldGlrZXR0ZS4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMjUgdm9uIEx1ZyBpbiBSdWJyaWsgZXRpa2V0dGUuClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDI2IHZvbiBMdWcgaW4gUnVicmlrIGV0aWtldHRlLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA3OCB2b24gTHVnIGluIFJ1YnJpayBnaWxkZW4ua2FlbXBmZXIuClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDc5IHZvbiBMdWcgaW4gUnVicmlrIGdpbGRlbi5rYWVtcGZlci4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMzUgdm9uIEx1ZyBpbiBSdWJyaWsgc2NobWFycm4uCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCgp3dWVuc2NodGUsIGRhIHdhZXJlIG1laHIgU2lubnZvbGxlcyBpbiBkZXIgWmVpdHVuZy4gCgp0cnVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbHVnIHdhciBtYWwgd2llZGVyIGZsZWlzc2lnIChMaWFyYSwgMTYuIEZlYiAyMDAwLCAwMTo0OTozMSk6Cn4jISBybj1UcnVnIHJ0PTk1MDY2MjA5OSByZz1zY2htYXJybgp+IyEgdGlkPTk1MDY2MjA5OQpOYWphLCBEdSBmdWVnc3QgZGVtIGphIGVpbmVuIHdlaXRlcmVuICdzaW5udm9sbGVuJyBBcnRpa2VsIGhpbnp1LgoKTGlhcmEsIFp3ZXJnZW56YXViZXJpbmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbHVnIHdhciBtYWwgd2llZGVyIGZsZWlzc2lnIChUcnVnLCAxNi4gRmViIDIwMDAsIDA4OjExOjQ4KToKfiMhIHJuPUxpYXJhIHJ0PTk1MDY2MjE3MSByZz1zY2htYXJybgp+IyEgdGlkPTk1MDY2MjA5OQpEdSBhdWNoLiAKCnRydWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEZWFyIEJvaW5nIDopIChHcmltbWJvcm4sIDE2LiBGZWIgMjAwMCwgMTE6NDg6MTYpOgp+IyEgcm49Q2hyaXN0b3BoZXIgcnQ9OTUwNjQyNjk4IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05NTA2NDI2OTgKSG1tLCBoYXN0IER1IG1hbCBkYXJ1ZWJlciBuYWNoZ2VkYWNodCwgb2IgZXMgZWluZSBHdXRlIElkZWUgc2VpbiBrb2VubnRlLCB2b3IKZGVtIEFydGlrZWxzY2hyZWliZW4gd2VuaWdlciBEcm9nZW4genUga29uc3VtaWVyZW4/CkFiZXIgdmllbGxlaWNodCBpc3QgamEgbnVyIGRlciBEZXV0c2NodW50ZXJyaWNodCBzY2h1bGQuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbiBzaWNoZXJlcyBaZWljaGVuLi4uIChHcmltbWJvcm4sIDE2LiBGZWIgMjAwMCwgMTI6MDE6MzEpOgp+IyEgcm49TmV2b2sgcnQ9OTUwNjUwMTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUwNjUwMTgxCkR1IGhhc3Qgb2ZmZW5zaWNodGxpY2ggbmljaHQgZGllIGFrdGl2ZSBaZWl0IHZvbiAiRmlja2Zyb3NjaCIgbWl0ZXJsZWJ0LiBEYXMKd2FyIHNvIGRpZSB6d2VpdGUgSmFocmVzaGFlbGZ0ZSAxOTk0LiBNZXJrZTogV2VyIGtlaW5lbiB2ZXJudWVuZnRpZ2VuIE5hbWVuCndpbGwgZmluZGV0IGF1Y2ggaW1tZXIgZWluZW4gYW5kZXJlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEZWFyIEJvaW5nIDopIChHbm9tZSwgMTYuIEZlYiAyMDAwLCAxMjoyMDoyMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTUwNjk4MDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUwNjQyNjk4CmRhIGdpYnQgZXMgd2VpdGF1cyBzY2hsaW1tZXJlcyBoaWVyIHZvbiBtYW5jaGVuIHplaXRnZW5vc3Nlbi4KZ2xhdWIgbWlyLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcnVjaCBkZXIgV29jaGUgKEdyaW1tYm9ybiwgMTYuIEZlYiAyMDAwLCAxNDoxMDo1NSk6CiJOdXIgZGFkdXJjaCwgZGFzcyBtYW4gc2NobGVjaHQgc2NocmVpYnQsIGxlcm50IG1hbiBndXQgenUgc2NocmVpYmVuLiIgKFNhbXVlbApKb2huc29uKQoKRXMgYmVzdGVodCBhbHNvIG5vY2ggSG9mZm51bmcuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBZW5kZXJ1bmcgaW4gZGVuIEZyaWVkaG9mc2thdGFrb21iZW4gKEphbWFsc2tpLCAxNi4gRmViIDIwMDAsIDE0OjE0OjAzKToKfiMhIHJuPUFuYXRvbCBydD05NTA2MjE0NDUgcmc9c2NobWFycm4KfiMhIHRpZD05NTA2MjAzNzYKRGFzIHdhciB3YWhyc2NoZWlubGljaCBkaWUgU2FjaGUgbWl0ICcyIFR5cG9zIGdlZml4dCcgZGllIGV0d2FzIGxhZW5nZXIKZ2VkYXVlcnQgaGF0IDo9CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERlYXIgQm9pbmcgOikgKEphbWFsc2tpLCAxNi4gRmViIDIwMDAsIDE0OjE3OjI3KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NTA2OTgwOTYgcmc9c2NobWFycm4KfiMhIHRpZD05NTA2NDI2OTgKSWNoIGRlbmtlIGFiIHVuZCB6dSBkYXJ1ZWJlciBuYWNoLCBvYiBpY2ggdm9yIGRlbSBMZXNlbiBkZXIgTVBBIG5pY2h0IGF1cwpWZXJzZWhlbiB6dSB3ZW5pZyBEcm9nZW4gZ2Vub21tZW4gaGFiZS4KSmFtYWxza2ksIEFudGlBbGtvaG9saWtlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IENhc2ggKEFuYXRvbCwgMTYuIEZlYiAyMDAwLCAxNDoyMzozMCk6Cn4jISBybj1KYW1hbHNraSBydD05NTA3MDY2OTUgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9OTQ5NjkwMTk5CiAgIFsgXSAgRHUga2VubnN0IG1laW5lIHZvbGxlIExlaXN0dW5nc2thcGF6aXRhZXQuCgpBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXMgYWxsZXMgc28gc2ljaCBiZWltIHNhbmR0aWdlciBoZXJ1bXRyZWlidCAoVHJ1ZywgMTYuIEZlYiAyMDAwLCAyMjoyMjozMik6CkdhcHBvIGZsYXR0ZXJ0IGhlcmVpbi4KYmVpIHdvR2FwcG8ga3JhZWNoenQ6IC4uLiBrcnJyb29vYWFhIC4uLiBIYWxsbyBlaW4gSG9iYml0d2FlY2h0ZXIsIGVpbgpHYXBwbyBrcmFlY2h6dDogSG9iYml0d2FlY2h0ZXIsIGVpbiBXYXNzZXJidWVmZmVsLCBlaW4gR2FyZGV3YWVjaHRlciwgZWluIFJlaCwKR2FwcG8ga3JhZWNoenQ6IGVpbiBFYmVyLCBlaW4gRWxmZW53YWVjaHRlciwgZWluIFJlaCwgZWluIEdhcmRld2FlY2h0ZXIsIGVpbgpHYXBwbyBrcmFlY2h6dDogR2FyZGV3YWVjaHRlciwgZWluZSBFbHN0ZXIsIENhZXNhciwgZWluIFNjaG1ldHRlcmxpbmcsIGVpbgpHYXBwbyBrcmFlY2h6dDogU2NobWV0dGVybGluZywgVHJ1ZyB1bmQgZWluIFNhbmR0aWdlciAuLi4gCgpKZW1hbmQgbWVpbnQ6IEFsbGVzIG51ciBMdWcgdW5kIEJlVHJ1Zy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmViZW4gYmVpIGxhcnMuLi4gKERpcmlvbiwgMTcuIEZlYiAyMDAwLCAwMjoyMToxMyk6ClVuZCBUb2Qgc3ByaWNodCBkZW4gZXJzdGVuIFNhdHogc2VpbmVzIExlYmVucyBuaWNodCBpbiBHcm9zc2J1Y2hzdGFiZW4uCgpDYXR3ZWF6bGUgZmFlbmd0IGFuIHdpbGQgenUgZmF1Y2hlbiB1bmQgaGludGVyIEdvbWV6IGhlcnp1amFnZW4uIEVyIGphZ3QgRGVpbmUKTWF1cyBrcmV1eiB1bmQgcXVlciBkdXJjaCBkZW4gUmF1bSBiaXMgR29tZXogc2NobGllc3NsaWNoIGF1ZiBEZWluZSBTY2h1bHRlcgpodWVwZnQgdW5kIHNpY2ggYmliYmVybmQgaGludGVyIERlaW5lbiBIYWFyZW4gdmVyc3RlY2t0LiBDYXR3ZWF6bGUgc2NobGVpY2h0Cm5vY2ggZWluZW4ga3VyemVuIE1vbWVudCB1bSBEZWluZSBCZWluZSwgZ2lidCBkYW5uIGFiZXIgYXVmLgpHb21leiBhdWYgRGVpbmVyIFNjaHVsdGVyIHN0cmVpY2h0IHNpY2ggZHVyY2ggZGllIEJhcnRoYWVhZXJjaGVuLgpEb2NoIHBsb2V0emxpY2ggZ2VodCBlaW4gUnVjayBkdXJjaCBzZWluZW4gS29lcnBlci4gIEVyIHJpY2h0ZXQgc2ljaCBpbgpzZWluZW0gU2Vzc2VsIGF1ZiB1bmQgZGFzIGJsYXVlIExldWNodGVuIGluIHNlaW5lbiBBdWdlbmhvZWhsZW4gd2lyZCB6dQplaW5lbSB3aWxkZW4gTG9kZXJuLiBEQVMgSVNUIEFMTEVTIE5VUiBESUVTRVIgTEFSUyBTQ0hVTEQuIEpFREVTTUFMIEtPTU1UCkVSIEFOIFVORCBTQ0hOQVBQVCBNSVIgRElFLi4uCgpobW1tLiBvYiBkYXMgYWxsZXMgbWl0IHJlY2h0ZW4gZGluZ2VuIHp1Z2VodD8KCkRpcmlvbiwgZ3JpbnNlbmQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBsdWcgd2FyIG1hbCB3aWVkZXIgZmxlaXNzaWcgKEx1ZywgMTcuIEZlYiAyMDAwLCAwMzowMjoxMik6Cn4jISBybj1UcnVnIHJ0PTk1MDY2MjA5OSByZz1zY2htYXJybgp+IyEgdGlkPTk1MDY2MjA5OQoKSG0/IEt1ZW5kaWdlIGRvY2ggRGVpbmUgU2VsYnN0bG9lc2NodW5nIG5pY2h0IG51ciBhbiwgc29uZGVybiBmdWVociBzaWUgYXVzLApkYW5uIHN0dWVuZGUgbWFsIHdhcyBlY2h0IHNpbm5nZWJlbmRlcyBpbiBkZXIgTVBBLgoKVm9yc2l0emVuZGVyIGRlcyBWZXJlaW5zIHp1ciBSZWluaGFsdHVuZyBkZXMgTXVkcwpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN0ZWNoZW5kZXIgQmxpY2suLi4gKFRzdW5hbWksIDE3LiBGZWIgMjAwMCwgMTc6MTk6MTEpOgo+IG11c3RlcmUgZ29yCkR1IG11c3RlcnN0IEdvci4KR29yIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenVtIE1vcmdlbkdyYXVlbiBnZWthcHB0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTXVkIHVlYmVyZm9yZGVydCA/IDotKSAoQnJhbmRpciwgMTcuIEZlYiAyMDAwLCAyMTo1MzoyMCk6Ck1lcmYgaXN0IG5pY2h0IGFud2VzZW5kLgpadWxldHp0IGVpbmdlbG9nZ3Qgdm9uOiA/Pz8KWnVsZXR6dCBhdXNnZWxvZ2d0OiBEb24sICAxLiBKYW4gMTk3MCwgMDA6NTk6NTkgKDExMDA0ZCAyMDo0ODowMSkKVm9sbGVyIE5hbWU6IE1lcmYgClJhc3NlOiBFbGYsICBHaWxkZTogQWJlbnRldXJlciwgIEdlc2NobGVjaHQ6IG5ldXRyYWwgPyEKQWx0ZXI6IDAwOjAwOjAwLCAgIFNwaWVsZXJsZXZlbDogLTEKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogRG9uLCAxNy4gRmViIDIwMDAsIDIxOjQ1OjQ4CgoKQWxzbyBzbyBzY2hsaW1tIHdhcmVuIGRpdmVyc2UgTWlsbGVuaXVtLUJ1Z3MgbmljaHQgOi0pCkJyYW5kaXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxldXNlbCBsb2VzY2hlbiEgKE5vbm5lLCAxOC4gRmViIDIwMDAsIDEwOjMyOjA5KToKTGV1c2VsICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkR1IHRlaWxzdCBMZXVzZWwgbWl0OiBhcmJlaXRlbiBzb2xsc3RlISA6LSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApMZXVzZWwgdGVpbHQgRGlyIG1pdDogVHUgaWNoIGphLiBEYXMgaGllciBpc3QgbnVyIGVpbiBTa3JpcHQuICAgICAgICAgICAgICAgICAKRHUgdGVpbHN0IExldXNlbCBtaXQ6IGthbm4gZGFzIGF1Y2gga29tcGxleGUgZ2VzcHJhZWNoZSBmdWVocmVuIHVuZCBzaW5udm9sbApEdSB0ZWlsc3QgTGV1c2VsIG1pdDogYW50b3dvcnRlbiB1bSBkZW4gZWluZHJ1Y2sgenUgZXJ3ZWNrZW4sIGVzIHNlaSBrZWluCkR1IHRlaWxzdCBMZXVzZWwgbWl0OiBzY3JpcHQ/CkxldXNlbCB0ZWlsdCBEaXIgbWl0OiBUdSBpY2ggamEuIERhcyBoaWVyIGlzdCBudXIgZWluIFNrcmlwdAoKU2hlcmlmZiwgdWViZXJuZWhtZW4gc2llCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWluIHNpY2hlcmVzIFplaWNoZW4uLi4gKEppbWRpZ3JpeiwgMTguIEZlYiAyMDAwLCAxNDoyNDoyMyk6Cn4jISBybj1OZXZvayBydD05NTA2NTAxODEgcmc9c2NobWFycm4KfiMhIHRpZD05NTA2NTAxODEKCk5hamEsIGltbWVyaGluIHVlYmVyaGF1cHQgbm9jaCBlaW5lciBhdXMgZGVtIEhIR1RHLgoKSmRHCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbiBzaWNoZXJlcyBaZWljaGVuLi4uIChKaW1kaWdyaXosIDE4LiBGZWIgMjAwMCwgMTQ6MjU6MTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk1MDY5ODg5MSByZz1zY2htYXJybgp+IyEgdGlkPTk1MDY1MDE4MQoKV29iZWkgRkYgc293ZWl0IGljaCBtaWNoIGVyaW5uZXIgZWlnZW50bGljaCBuIHppZW1saWNoCm5ldHRlciBLZXJsIHdhci4gV2VyIHNpY2ggYW4gZGVtIE5hbWVuIGF1ZmdlcmVndCBoYXQsIElNSE8gCnNlbGJlciBzY2h1bGQuLi4KCkpkRwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSXMgc2Nob24gZXJzdGVyIEFwcmlsPz8/IChOZXZvaywgMTguIEZlYiAyMDAwLCAxODoyMDowNyk6ClNpZWRsdW5nZW4gYXVmIGRlbSBNYXJzIHNwYWV0ZXN0ZW5zIGluIDUwIEphaHJlbgoKV2FzaGluZ3RvbiAoZHBhKSAtIFNwYWV0ZXN0ZW5zIGluIDUwIEphaHJlbiB3ZXJkZW4gTWVuc2NoZW4gYXVmIGRlbSBNYXJzCmxlYmVuLiBEYXMgZ2VodCBhdXMgUHJvZ25vc2VuIHZvbiBVUy1Gb3JzY2hlcm4gaGVydm9yLiBBdWYgZGVyIHdlbHRncm9lc3N0ZW4KS29uZmVyZW56IGZ1ZXIgV2lzc2Vuc2NoYWZ0ZW4gYWxsZXIgRGlzemlwbGluZW4gaW4gV2FzaGluZ3RvbiBmb3JkZXJ0ZW4gc2llLApkaWUgUmVpc2VuIGVyc2Nod2luZ2xpY2ggdW5kIGtvbWZvcnRhYmVsIHp1IGdlc3RhbHRlbi4gTWFuIGJyYXVjaGUgSG90ZWxzIHVuZApBdHRyYWt0aW9uZW4gaW0gQWxsLiBEaWUgZ3JvZXNzdGUgSGVyYXVzZm9yZGVydW5nIGZ1ZXIgZGVyYXJ0aWdlIFJlaXNlbiBpc3QKbmFjaCBBdWZmYXNzdW5nIGRlciBOQVNBIGRpZSBVbXN0ZWxsdW5nIGRlcyBNZW5zY2hlbiBhdWYgZGllIGRvcnRpZ2VuCkJlZGluZ3VuZ2VuLiBFaW5lIGFuZGVyZSwgYmVzb25kZXJzIGtyaXRpc2NoZSBGcmFnZSBzZWkgZGllIFN0cmFobGVuYmVsYXN0dW5nLgoKQWxzbyBvaywgZGFzcyBkaWUgZGEgaG9jaHdvbGxlbiBpcyBrbGFyIC4uLi4gYWJlciBkYXNzIGRpZSBkYXMgYWxzIFVybGF1YnNvcnQKYSBsYSBEaXNuZXkgV29ybGQsIE1hbGxvcmNhIHVuZCBzbyB3b2xsZW4gZmluZCBpY2ggZXR3YXMgLi4uLiBrcmFzcz8KCk5ldm9rLCBrb3Bmc2NodWV0dGVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJcyBzY2hvbiBlcnN0ZXIgQXByaWw/Pz8gKFJhcmRpYW4sIDE5LiBGZWIgMjAwMCwgMDE6MzU6MTcpOgp+IyEgcm49TmV2b2sgcnQ9OTUwODk0NDA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUwODk0NDA3Ck5hamEsIGVpbiBiaXNzY2hlbiBtdWVzc2VuIGRpZSBzY2hvbiBiaWV0ZW4gZnVlciBkYSBvYmVuLiBXZXIgbmltbXQgZGVubiBzb25zdAplaW5lIHNvbGNoIGFuc3RyZW5nZW5kZSwgbWVocnRhZWdpZ2UgKD8pIFJlaXNlIGF1ZiBzaWNoLCB1bSBkYW5uIGRvcnQgaW0gcm90ZW4KU2FuZCB6dSBzcGllbGVuIHVuZCBzaWNoIGRhYmVpIG5lIHdhc2NoZWNodGUgU3RyYWhsZW5rcmFua2hlaXQgYSBsYSBSaWt1cwp6dXp1emllaGVuPz8KClJhciwgdmVyc3RlaHQgZGFzIHNjaG9uLCBoYWVsdCBhYmVyIGRpZSA1MCBKYWhyZSBmdWVyIGV0d2FzIHVucmVhbGlzdGlzY2gKa3Vyei4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJcyBzY2hvbiBlcnN0ZXIgQXByaWw/Pz8gKENlaWxvLCAxOS4gRmViIDIwMDAsIDE2OjQxOjEwKToKfiMhIHJuPU5ldm9rIHJ0PTk1MDg5NDQwNyByZz1zY2htYXJybgp+IyEgdGlkPTk1MDg5NDQwNwpOYSBqYSwgd2FzIG1hbiBzbyBob2VydCwgd29sbGVuIGphIG1laHIgdW5kIG1laHIgTGV1dGUgaW4gTWFsbG9yY2EgZGllClRvdXJpc3RlbiBhbSBsaWVic3RlbiBhdWYgZGVuIE1vbmQgc2NoaWVzc2VuLi4uCgpHcnVzcywKQ2VpbG8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJcyBzY2hvbiBlcnN0ZXIgQXByaWw/Pz8gKFdhcmdvbiwgMjAuIEZlYiAyMDAwLCAxNTo0Njo1NSk6Cn4jISBybj1OZXZvayBydD05NTA4OTQ0MDcgcmc9c2NobWFycm4KfiMhIHRpZD05NTA4OTQ0MDcKTmFqYSwgd2VubiBkYXMgZnVlciBkaWUgbmFlY2hzdGVuIDUwIEphaHJlIHByb2ppemllcnQgaXN0Li4uClZlcmdsZWljaCBkYXMgZG9jaCBtYWwgbWl0IGRlbiBWaXNpb25lbiBhdXMgZGVuIDYwZXJuIGZ1ZXIgZGFzIEphaHIgMjAwMC4KQWJlciB3ZW5uIG1hbiBkYXMgZ2FuemUgc29mb3J0IGFscyBVcmxhdWJzLSB1bmQgVmVyZ251ZWd1bmdzcGFyayBwbGFudCwgaGF0Cm1hbiBzaWNoZXIgYmVzc2VyZSBDaGFuY2VuLCBiZWkgZGVuIHZlcmFudHdvcnRsaWNoZW4gU3RlbGxlbiBkaWUgbm9ldGlnZW4KR2VsZGVyIGxvY2tlciB6dSBtYWNoZW4sIGFscyB3ZW5uIG1hbiBzaWNoIGF1ZiByZWluIHdpc3NlbnNjaGFmdGxpY2hlIEFzcGVrdGUKYmVzY2hyYWVua2VuIHd1ZXJkZS4gRGllIFdpc3NlbnNjaGFmdGxlciBtdWVzc3RlbiBuYXR1ZXJsaWNoIHRyb3R6ZGVtIGVyc3QgbWFsCmhpbiAocGVyc29lbmxpY2ggb2RlciBpbiBtaXQgd2VpdGVyZW4gdW5iZW1hbm50ZW4gU29uZGVuKSwgdW0gdWViZXJoYXVwdCB6dQplcmt1bmRlbiwgd2FzIHdvIG1pdCB3ZWxjaGVtIFJpc2lrbyBtYWNoYmFyIGlzdC4gVm9uIGRhaGVyIGlzdCBkYXMgV2lua2VuIG1pdApkZW0gVG9yaXNtdXMgc2ljaGVyIGtlaW5lIHNjaGxlY2h0ZSBJZGVlLgogIFdhcmdvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IElzIHNjaG9uIGVyc3RlciBBcHJpbD8/PyAoS2FyYW0sIDIwLiBGZWIgMjAwMCwgMTg6NTI6NTIpOgp+IyEgcm49TmV2b2sgcnQ9OTUwODk0NDA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUwODk0NDA3CkFsc28gZ3JhZCBoYWIgaWNoIGdlbGVzZW4sIGRhc3MgZXMgZnVlciAzMzAwMCBETSBlaW5lIFRhdWNoZmFocnQgenVtClRpdGFuaWMtV3JhY2sgZ2FiLiBXYXJ1bSBkYW5uIG5pY2h0IGZ1ZXIgMzMgTWlvLiBtYWwgbWl0IGRlbiBSZXN0ZW4gdm9tClBvbGFybGFuZGVyIEZ1c3NiYWxsIHNwaWVsZW4/IDspCgotLQpLYXJhbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXRsYW50aXMgenUgdmVyc3RlaWdlcm4gKEthcmFtLCAyMC4gRmViIDIwMDAsIDE4OjU2OjE4KToKIkdlbmF1c28gd2llIEViYXkgdW5kIFByaW11cy1PbmxpbmUgdmVydGlja3QgZGVyIHZpcnR1ZWxsZSBUYXVzY2gtU2hvcCBhbGxlcywKd2FzIG5pY2h0IG5pZXQtIHVuZCBuYWdlbGZlc3QgaXN0OiBbLi4uXSBlaW5lIEluc2VsIHZvciBkZXIga2FuYWRpc2NoZW4KS3Vlc3RlIgoKR2VmdW5kZW4gaW0gV2Fybm93IEt1cmllciB2b24gaGV1dGUKCi0tCkthcmFtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IElzIHNjaG9uIGVyc3RlciBBcHJpbD8/PyAoR3JpbW1ib3JuLCAyMC4gRmViIDIwMDAsIDE5OjE0OjIyKToKfiMhIHJuPUthcmFtIHJ0PTk1MTA2OTE3MiByZz1zY2htYXJybgp+IyEgdGlkPTk1MDg5NDQwNwpTY2hvZW4gdW5kIGd1dCwgYWJlciBkYWZ1ZXIgbXVzcyBtYW4gZGVuIFBvbGFyIExhbmRlciBlcnN0bWFsIGZpbmRlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXRsYW50aXMgenUgdmVyc3RlaWdlcm4gKFN1YmxpbWUsIDIwLiBGZWIgMjAwMCwgMjI6Mjg6NDEpOgp+IyEgcm49S2FyYW0gcnQ9OTUxMDY5Mzc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUxMDY5Mzc4CldpZXZpZWwgYmlldGVuIGRpZSBkZW5uIHNvIGZ1ZXIgZGllIEluc2VsID8KClN1YmxpbWUsIEludGVyZXNzZSBiZWt1bmRlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlaGVpbWVyIFp3ZWl0aWU/IChGb29iYXIsIDIwLiBGZWIgMjAwMCwgMjM6NTc6MDMpOgpbQWxsZ2VtZWluOkRyb2xsaV0gZ3V0ZSBuYWNodCA6KQpNZW5zbWFuICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpHb2xhcyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCkZvb2JhciAtIHNjaGF1dCB6dSBHb2xhcyBydWViZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSXMgc2Nob24gZXJzdGVyIEFwcmlsPz8/IChHbm9tZSwgMjEuIEZlYiAyMDAwLCAxNTo1MDoyMyk6Cn4jISBybj1XYXJnb24gcnQ9OTUxMDU4MDE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUwODk0NDA3CmFlaG0uLi4gZGllIGhhYmVuIGRhIGVpbmUgMCB2ZXJnZXNzZW4uLi4KaW4gZGVuIG5hZWNoc3RlbiA1MCBqYWhyZW4gc2NoYWZmZW4gd2lyIGVzIGthdW0sIGRlbSBtb25kIHp1IGJlc2llZGVsbi4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLbGVyaWtlciBhYndlcnRlbiAhISEgKEJyYW5kaXIsIDIxLiBGZWIgMjAwMCwgMjI6MTU6MTcpOgpEZWluIEZyZXVuZCBHb3JvZyB0ZWlsdCBEaXIgbWl0OiBzbyBuIGJpc3NlbCBpZGVsbiB1bmQgYXVzcnVlc3R1bmcgYmVzb3JnZW4KCgphbHNvIGxhbmdzYW0gd2VyZGVuIGRpZSBLbGVyaWtlciB1ZWJlcmhlYmxpY2ggOi0pCkJyYW5kaXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGVyaWtlciBhYndlcnRlbiAhISEgKEdvcm9nLCAyMS4gRmViIDIwMDAsIDIyOjE2OjIzKToKfiMhIHJuPUJyYW5kaXIgcnQ9OTUxMTY3NzE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUxMTY3NzE3CmhleSBpbW1lciBkZW4genVzYW1tZW5oYW5nIHNlaG4sIG1pdCBkZW0gYXVzcnVlc3R1bmdzYmVzb3JnZW4gbWVpbnRlIGljaCBkaWNoCm1hZWNodGlnZW4gQmllcnNjaHVldHRsZXIKCmdyaW5zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEtsZXJpa2VyIGFid2VydGVuICEhISAoQnJhbmRpciwgMjEuIEZlYiAyMDAwLCAyMjoxNzo0MSk6Cn4jISBybj1Hb3JvZyBydD05NTExNjc3ODMgcmc9c2NobWFycm4KfiMhIHRpZD05NTExNjc3MTcKRGFzIHd1ZXJkZSBpY2ggamV0enQgYXVjaCBiZWhhdXB0ZW4gOikgV2lyIHdpc3NlbiBkb2NoLCBkYXNzIGlociBkaWUgTW9uc3Rlcgp0b3RpZGxldCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBkZW5uIG51PyAoWm9vaywgMjEuIEZlYiAyMDAwLCAyMzo0MzoxMyk6CkRlaW4gRnJldW5kIEdvbGFzIHRlaWx0IERpciBtaXQ6IG1hY2h0IHdlciB3YXM/CkRlaW4gRnJldW5kIEdvbGFzIHRlaWx0IERpciBtaXQ6IG5laW4hCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmEgd2FzIGRlbm4gbnVuPyAoR3VpbGRvLCAyMi4gRmViIDIwMDAsIDA5OjQyOjExKToKR2VyYWRlIGluIGRlciBNYXlhLVF1ZXN0OgoKPiBEZXIgUHJpZXN0ZXIgdG9ya2VsdCBiZXNvZmZlbiBoZXJ1bS4KdW50IHByaWVzdGVyCkVzIGlzdCBlaW4gUHJpZXN0ZXIgZGVyIGJldHJ1bmtlbmVuIEdvZXR0ZXIuIEVyIG5pbW10IHNlaW5lIEF1ZmdhYmUgc2Vocgplcm5zdC4KRGVpbmVyIE1laW51bmcgbmFjaCBlbnRoYWVsdCBlciBzY2hvbiBtZWhyIEFsa29ob2wsIGFscyBlaW5lIEZsYXNjaGUgV2Vpbi4KWy4uLl0KPiBzY2hhZXR6IHByaWVzdGVyCkR1IHdpcmZzdCBlaW5lbSBNYXlhLVByaWVzdGVyIGVpbmVuIGFic2NoYWV0emVuZGVuIEJsaWNrIHp1IHVuZCBrb21tc3QgenUKZm9sZ2VuZGVyIEVya2VubnRuaXM6ClZlcmdsaWNoZW4gbWl0IERpciBpc3QgZGVyIE1heWEtUHJpZXN0ZXIgZWluIHZpZWwgYmVzc2VyIGFscyBEdSBnZXNjaHVldHp0ZXIKdW5kIGJlc3NlciBiZXdhZmZuZXRlciBlYmVuYnVlcnRpZ2VyIEdlZ25lci4KRXIgaXN0IGVpZ2VudGxpY2ggZ2FueiBuZXR0LiBBdXNzZXJkZW0gaXN0IGVyIHN0b2NrbnVlY2h0ZXJuLgoKV2llIGdlaHQgZGFzIGRlbm4/PwoKR3J1c3MsCkd1aWxkbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa29taXNjaCBkZXIgd29sbHRlIG5pY2h0IHN0ZXJiZW4gKEthbWVsb3QsIDIyLiBGZWIgMjAwMCwgMTQ6NDM6NDQpOgogIC4uLi5ub3JtYWwvQmllbmVuc3RhY2hlIER1Li4uLi4uLi4uLi4gOiBFaXNnaWdhbnRlbi4uICoqKioqKioqIC0+IHNlaHIgaGFydApEZXIgRWlzZ2lnYW50IGZhZWxsdCB0b3QgenUgQm9kZW4uCltNb2VyZGVyOkdlaXN0IGVpbmVzIEVpc2dpZ2FudGVuXSBMaWViZXIgZWluZSBIMk8tVmVyZ2lmdHVuZywgYWxzIHZvbiBDb25uZXIKW01vZXJkZXI6R2Vpc3QgZWluZXMgRWlzZ2lnYW50ZW5dIGVybW9yZGV0IHp1IHdlcmRlbiEKRWluIEVpc2dpZ2FudCBrb21tdCBhbi4KICAuLi4ubm9ybWFsL0Vpc3phcGZlbi4uLiBFaXNnaWdhbnQuLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSB2ZXJmZWhsdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IChHb2xhcywgMjIuIEZlYiAyMDAwLCAyMTo1OTo1Nyk6CkRlaW4gRnJldW5kIFNhaGFkb29tIHRlaWx0IERpciBtaXQ6IHVya3MKW1RvZDpMYXJzXSBFaW4gV2Fzc2VydHJvbGwgaGF0IGdlcmFkZSBTYWhhZG9vbSB1bWdlYnJhY2h0LgpbQmVpbGVpZDpWYXJkaW9uXSBCZWlsZWlkIDooCltCZWlsZWlkOkdvbGFzXSBmbHcKCmVpbiB0bSBsbHlzdHJhdGhlIGhlaW13ZWggd2FlcmUgYmVzc2VyIGFscyBlaW4gZnJ1ZiB1cmtzIGdld2VzZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWUgS2FtcGZ0YWt0aWsgKFdhcmssIDIzLiBGZWIgMjAwMCwgMDA6MjE6MzIpOgo+IHJhCkR1IHN0ZWlnZXJzdCBEaWNoIGluIHdpbGRlIFJhc2VyZWkhCj4gRHUgZ3JlaWZzdCBkZW4gU2NobmVlcmllc2VuIHNjaGxhbmdlbmdsZWljaCBibHV0cnVlbnN0aWcgbWl0IGVpbmVyIEZldWVyYXh0CmFuLgogIER1IHNjaGxhZWdzdCBkZW4gU2NobmVlcmllc2VuIHp1IEJyZWkuCgpCZWtvbW0gaWNoIGpldHp0IGVpbmVuIE9yZGVuPyBPZGVyIGRhcmYgaWNoIHZpZWxsZWljaHQgc29nYXIgU3RydXYtQXVzYmlsZGVyCndlcmRlbj8KCi0tCldhcmsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTGFuZmVhciwgMjMuIEZlYiAyMDAwLCAwMDozOTo0OSk6CkRpZXNtYWwgWml0YXQgUkw6IEhtbW0sIGRhIGtvbW10IGVpbiBMaWNoLi4uCltUb2Q6TGFyc10gRWluIExpY2ggaGF0IGdlcmFkZSBGb29iYXIgdW1nZWJyYWNodC4KCkxhbmZlYXIgLSByaXR6dCBlaW5lIEtlcmJlIGluIE1vcmdvdGgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhYiBlaW4gSGFhciBnZWZ1bmRlbiEgKEFjcmltb24sIDIzLiBGZWIgMjAwMCwgMTg6MjI6NTMpOgo+IG8KRHUgc3RlaHN0IGluIGRlciBzdWVkd2VzdGxpY2hlbiBFY2tlIGRlciBUcmFpbmluZ3NoYWxsZSBkZXMgU3RydXZzLCBkaWUgb2YtCmZlbnNpY2h0bGljaCBlaW5lbiBPcnQgdm9uIHplbnRyYWxlciBCZWRldXR1bmcgZnVlciBkaWUgVHJ2ZXMgZGFyc3RlbGx0LgpVZWJlcmFsbCBzaWVoc3QgRHUgc28gYXVjaCBLYWVtcGZlciwgZGllIGltIHNwb3J0bGljaGVuIFp3ZWlrYW1wZiBpaHJlIEZhZWhpZy0Ka2VpdGVuIG1lc3NlbiBvZGVyIGF1ZiBhbmRlcmUgV2Vpc2UgaWhyZSBLYW1wZmtyYWVmdGUgdmVyYmVzc2Vybi4gTWVocmVyZQpPZWZmbnVuZ2VuIGluIGRlbiBXYWVuZGVuIGZ1ZWhyZW4gaW4gZWluemVsbmUgS2FtbWVybiwgd29iZWkgYWxsZWluIGluIGRlcgpTdWVkd2FuZCBlaW5lIFR1ZXIgZGVuIEJsaWNrIHp1IGRlbSB2ZXJzcGVycnQsIHdhcyBkYXMgWmltbWVyIGRlcyBaYWhsbWVpc3RlcnMKenUgc2VpbiBzY2hlaW50LiBOYWNoIE5vcmRvc3RlbiBnZWxhbmdzdCBEdSB0aWVmZXIgaW4gZGllIEhhbGxlLgpFcyBnaWJ0IGZ1ZW5mIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4sIHdlc3Rlbiwgbm9yZGVuIHVuZApub3Jkb3N0ZW4uCkVpbiBIYWFyIGVpbmVzIFdvbGZzLgpIb25kYW0gVW50ZXJmZWxzLgo+IHNjaGF1IGhhYXIKRGllcyBpc3QgZWluIEhhYXIgZWluZXMgV29sZnMuIFNlbHRzYW0sIG5pY2h0PyBTb3dhcyBmaW5kZXQgbWFuIGF1Y2ggbnVyIGltCkRzY2h1bmdlbC4uLgo+CgpBaCwgamV0enQgd2Vpc3ogaWNoLCB3byBpY2ggYmluIDotKQoKQWNyaW1vbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhhYiBlaW4gSGFhciBnZWZ1bmRlbiEgKFJhcmRpYW4sIDIzLiBGZWIgMjAwMCwgMTg6MjQ6MDYpOgp+IyEgcm49QWNyaW1vbiBydD05NTEzMjY1NzMgcmc9c2NobWFycm4KfiMhIHRpZD05NTEzMjY1NzMKRGFubiBtYWwgbG9zIEFjcmltb24sIEJlc2VuIGluIGRpZSBIYW5kIHVuZCBkZW4gU3RydXYgZHVyY2hnZWZlZ3QhCgpSYXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZmx3IChQZXJpc2hhbiwgMjMuIEZlYiAyMDAwLCAyMToxNTowOSk6Cn4jISBybj1Hb2xhcyBydD05NTEyNTMxOTcgcmc9c2NobWFycm4KfiMhIHRpZD05NTEyNTMxOTcKTm9lLiBWb2VsbGlnIGVnYWwuCgphZCAxKSB0bSBsbHlzIGhlaW13ZWggZ2VodCBudXIgaW0gZnJlaWVuCmFkIDIpIHRtIGxseXMgaGVpbXdlaCBnZWh0IG5pY2h0IGJlaW0ga2FlbXBmZW4KClBlcmlzaGFuIGVtcGZpZWhsdCBmbHVjaHRyaWNodHVuZyB0ZWxlcG9ydCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2F1bSB6dSBnbGF1YmVuLi4uIChMdWcsIDI0LiBGZWIgMjAwMCwgMDA6MTI6MzEpOgoKR2VyYWRlIGViZW46CgpUcnVnIHRlaWx0IERpciBtaXQ6IGhhYiB3YXMgYmVzc2VycyB6dSB0dW4gYWxzIG1pY2ggbWl0IGRpciB6dSBiZXNjaGFlZnRpZ2VuClswMDoxMF0KCk5hZ3V0LCBlaW4gRXVwaGVtaXNtdXM6CgpVTkdMQVVCTElDSCEKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1ZSBLYW1wZnRha3RpayAoR29yLCAyNC4gRmViIDIwMDAsIDAxOjE3OjAxKToKfiMhIHJuPVdhcmsgcnQ9OTUxMjYxNjkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUxMjYxNjkyCk5lIGFiZXIgZGFuayBkaXIgd2VyZGVuIG51biBkaWUgS2FlbXBmZXItWndlcmdlIGVybmV1dCBoZXJ1bnRlcmVnZXN0dWZ0Li4uLi4gCgpHb3IgbmljaHQgd2lya2xpY2ggZ3JpbnNlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdXVnaSBoYXQgRHVyc3QgOikgKFBhbmljLCAyNC4gRmViIDIwMDAsIDE0OjQyOjQ3KToKU3VnYWFuIHRlaWx0IERpciBtaXQ6IEJJU1QgRFUgSU1NRVIgTk9DSCBOSUNIVCBTQ0hMQVVFUj8/IC0gRFUgV0lMTFNUOwpTdWdhYW4gdGVpbHQgRGlyIG1pdDogRVJOU1RIQUZUIE5FIFdFR0JFU0NIUkVJQlVORyBWT04gTUlSID8/Pz8/Pz8KClBhbmljLCBsZXJudHMgbmllIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWYgZGVyIEVpc3NjaG9sbGUgKFBhcmFjZWxzdXMsIDI0LiBGZWIgMjAwMCwgMTY6NTI6NTYpOgp+IyEgb249TWlnaHR1cyBvdD05NTEzMTYwNDAgb2c9YWxsZ2VtZWluZXMKRXMgd2lyZCBtZXJrbGljaCBrdWVobGVyLi4uCkRlciBTY2huZWVtYW5uIHNjaG1pbHp0IGVpbiB3ZW5pZy4KRXMgd2lyZCBsYW5nc2FtIGVpc2thbHQuLi4KCk51biBzYWcgbm9jaCBlaW5lciwgbnVyIEZldWVya2V1bGVuIHNlaWVuIGZ1ZXIgU2NobmVlbWFlbm5lciB0b2VkbGljaC4KCk1pZ2h0dXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmViZW4gYXVmIGRlciBCYXVzdGVsbGUhIChVbmFzYWksIDI0LiBGZWIgMjAwMCwgMTg6NDI6MDYpOgoKd2FzIG1hbiBuaWNodCBhbGxlcyBtaXQgZGVuIFdhbmRsZXJuIGVybGViZW4ga2FubiA6KQoKPlVuYXNhaSBzY2hhdXQgZGVuIFdhbmRsZXIgYm9lc2UgYW4gdW5kIHNhZ3Q6IkdlaCB3ZWcgRHUgYWx0ZXMgVmllaCwgRHUgYmlzdApiZXN0aW1tdCBQYWRyZWljISIKTGFyaW5hIG11cm1lbHQgZWluIHBhYXIgdW52ZXJzdGFlbmRsaWNoZSBXb3J0ZSB1bmQgbWFjaHQgZWluaWdlIGJlc2Nod29lcmVuZGUKR2VzdGVuIHVlYmVyIGlocmVyIEtyaXN0YWxsa3VnZWwKRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpSb25kYSB3dWVyZGUgc2ljaCBpbSBNb21lbnQgbmljaHQgbWFsIHNlbGJzdCBrdWVzc2VuIDstKQpFaW4gV2FuZGxlciBmcmFndCBVbmFzYWk6IFdpbGxzdCBEdSBtaWNoIGJlbGVpZGlnZW4gIT8KRHUgc2Fnc3Q6IHdpZXNvIGhhc3QgZHUgZ3JhZCBkaWUgcGVzdD8KTGFyaW5hIHNjaG51cHBlcnQgYW4gZWluZXIgUm9zZS4KRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgoKbnVuamEgOikKdW5hKiAqZ3JpbnNlbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3NvLi4uIChBcG9waGlzLCAyNC4gRmViIDIwMDAsIDE5OjIyOjA5KToKV3VlcmdvbiByYW5kYWxpZXJ0IHVuZ2VoYWx0ZW4gZHVyY2ggZWluZW4gQnVzY2guCgoKZGVyIGhhdCBlaW4gTGllYmVzbGViZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlciB3aWxsIHNjaG9uIFN0cnV2LUF1c2JpbGRlciB3ZXJkZW4/Pz8gKEphbWFsc2tpLCAyNC4gRmViIDIwMDAsIDIxOjQxOjIzKToKfiMhIHJuPVdhcmsgcnQ9OTUxMjYxNjkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUxMjYxNjkyCkRhcyBpc3QgamEgd2llIGRhcyBLYW5pbmNoZW4gaW0gWmF1YmVyaHV0Li4uCj0gL3dvcmxkIGphbWFsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDI1LiBGZWIgMjAwMCwgMTA6MzA6MzYpOgoiSW4gZGVyIFd1ZXN0ZSB0YXVndCBqZWRlcyBiZWxpZWJpZ2UgV2Fzc2VyLiIgKGFyYWJpc2NoKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFwc3UsIDI1LiBGZWIgMjAwMCwgMTA6MzQ6MDkpOgpbQWxsZ2VtZWluOldpZGV3aXR0XSBobSwgaWNoIGRhY2h0ZSBlcyBnZWh0IHNjaG5lbGxlcgpbVG9kOkxhcnNdIEVpbiBab21iaWV2aXJ1cyBoYXQgZ2VyYWRlIFdpZGV3aXR0IHVtZ2VicmFjaHQuCgp1bmdlc2Nobml0dGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbGFuZ2UgTmFtZW4gPyAoTW9yZ290aCwgMjUuIEZlYiAyMDAwLCAxMDo0Mjo1NCk6CnppZWhlIGFsbGVzIGFuCi4uLgpFaW4gS3JhZ2VuIG1pdCB6d2VpIGFibGF1ZmVuZGVuIFNhbmR1aHJlbiB1bmQgZWluZW0gS25vY2hlbjogRHUgdHJhZWdzdCBkZW4KRWluIEtyYWdlbiBtaXQgendlaSBhYmxhdWZlbmRlbiBTYW5kdWhyZW4gdW5kIGVpbmVtIEtub2NoZW46IEtyYWdlbiBtaXQgendlaQpFaW4gS3JhZ2VuIG1pdCB6d2VpIGFibGF1ZmVuZGVuIFNhbmR1aHJlbiB1bmQgZWluZW0gS25vY2hlbjogYWJsYXVmZW5kZW4KRWluIEtyYWdlbiBtaXQgendlaSBhYmxhdWZlbmRlbiBTYW5kdWhyZW4gdW5kIGVpbmVtIEtub2NoZW46IFNhbmR1aHJlbiB1bmQKRWluIEtyYWdlbiBtaXQgendlaSBhYmxhdWZlbmRlbiBTYW5kdWhyZW4gdW5kIGVpbmVtIEtub2NoZW46IGVpbmVtIEtub2NoZW4KRWluIEtyYWdlbiBtaXQgendlaSBhYmxhdWZlbmRlbiBTYW5kdWhyZW4gdW5kIGVpbmVtIEtub2NoZW46IGJlcmVpdHMuCi4uLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkx1c2NoZW4gKENhdHdlYXpsZSwgMjUuIEZlYiAyMDAwLCAxNDo1NDo0Nik6CltTZWhlcjpUcmFuY2VdIGlzdCBkaWUgaHlkcmEgZGE/CltTZWhlcjpGcmVpdGFnXSBmaW5kZSBoeWRyYT8KW1NlaGVyOlRyYW5jZV0gZ2VodCBuaWNoIDspCltTZWhlcjpTaW5hXSB0ZWlsZSBoeWRyYSBtaXQgaGFzdGUgbWVpbmUgYXV0b2xvYWRmYWNrZWwgZGFiZWk/OikKW1NlaGVyOkZvb2Jhcl0gUG9laCwgZGllIGFudHdvcnRldCBkb2NoIG5pZSwgZGllIGFsdGUgVHVja2UgO28pCltTZWhlcjpUcmFuY2VdIGdlaHQgbmljaCwgd2VpbCBhdWNoIHBvc2l0aXYgd2VubiBoeWRyYSB6dWhhdXNlIQpbU2VoZXI6Rm9vYmFyXSBCZWkgSHlkcmFrb3BmIGF1Y2g/CltTZWhlcjpUcmFuY2VdIGVnYWwsIGhhYiBuZW4gcGZpcnNpY2guIHdlciB3YWd0IGdld2lubnQgOykKW1NlaGVyOkFuYXRvbF0gRGFzIGVpbmZhY2hzdGUgaXN0ICItYSBtYWNodCBqZW1hbmQgZGllIFRhbnRlPyIuIFdlbm4gRHUKW1NlaGVyOkFuYXRvbF0gdW5nbGFldWJpZ2UgQmxpY2tlIGVybnRlc3QsIGlzdCBzaWUgZ3JhZCBuaWNodCBkYS4KW1NlaGVyOkZvb2Jhcl0gSXN0IGFiZXIgc2NobGVjaHQgZnVlcnMgSW1hZ2UgOm8pCltTZWhlcjpUcmFuY2VdIGRhcyBpbWFnZSBqdWNrdCBuaWNoIDopCltBbGxnZW1laW46U2luYV0gbWFjaHQgamVtYW5kIGRpZSB0YW50ZT86KQpbQWxsZ2VtZWluOlRpYW1hayBzY2hhdXQgU2luYSB1bmdsYWV1YmlnIGFuXQpbU2VoZXI6U2luYV0gb2ssIGlzIG5pY2h0IGRhOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxhcnMgaXN0IGltIE5vcmRlbiA/IChaYW5hYywgMjUuIEZlYiAyMDAwLCAxNTo0NToxOSk6Ckdhc3QxIGtvbW10IGFuLgpHYXN0MSBnZWh0IG5hY2ggTm9yZGVuLgpbVG9kOkxhcnNdIEVpbiBIYXVmZW4gU2NoZXJiZW4gaGF0IGdlcmFkZSBHYXN0MSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBIYXVmZW4gU2NoZXJiZW5dIFNjaGVyYmVuIGJyaW5nZW4gR2x1ZWNrIQoKLi4uIHVuZ2VrdWVyenQgLi4uCgpaYW5hYwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR29ldHRlciB1bmQgRHJhY2hlbmdvZXR0ZXIgOikgKERhcmt3aW5nLCAyNS4gRmViIDIwMDAsIDE4OjEwOjA4KToKbmV1bGljaCBiZWltIERyYWNoZW5nb3R0Li4uIEJvaW5nIHN0YW5kIGltIFJhdW0gdW5kIHNjaGF1dGUgenUgOikKCj5nIGluZm8gbGFuZwogIChaZWlsZSAyKSAgIEFuZ3JpZmZzYmVmZWhsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGbHVjaHRyaWNodHVuZwoqIERhcmt3aW5nICAgIEthZW1wZmVyICAgICAgICA5MyAgMjMgMjYwICgyNjApIDI0NyAoMjU2KSAgIDEyMCAgMSAgMSAgMSAtLSBYIC0KICAgICAgICAgICAgICBmb2t1cyBnb3R0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbgogIFd1ZWhsZXIgICAgIEthZW1wZmVyICAgICAgICA2NiAgMjIgMjI2ICgyMjYpIDIxMCAoMjEwKSAgIDEzMCAgMSAgMSAgMSAtLSBYCi0KICAgICAgICAgICAgICBmbyBnb3R0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbgogIEthbWVsb3QgICAgIEtsZXJ1cyAgICAgICAgICA1NSAgIDcgMjIyICgyMjYpIDIwMiAoMjAyKSAgIDEwMCAgMSAgMSAgMSAtLSBYCi0KICAgICAgICAgICAgICBmb2t1cyBib2luZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbgogIFRhcmluYSAgICAgIEthZW1wZmVyICAgICAgICA3NCAgMjIgMjE4ICgyMTgpIDIxMCAoMjEwKSAgIDEwMCAgMSAgMSAgMSAtLSBYCi0KICAgICAgICAgICAgICBmb2t1cyBnb3R0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbgoKRGVpbmUgU2NodWhlIGdsdWVoZW4ga3VyeiBhdWYgdW5kIGhlaWxlbiBEaWNoIGVpbiB3ZW5pZy4KW1RlYW0gREc6XSBEYXJrd2luZyBzdGFydGV0IGRlbiBBbmdyaWZmLgpFaW5lIFN0aWNoZmxhbW1lIHNjaGllc3N0IGF1cyBkZW0gQm9kZW4gdW5kIHVtZ2lidCBLYW1lbG90IG1pdCBlaW5lbSBmZXVyaWdlbgpTY2hpbGQuICAgICAgICAgIApXdWVobGVyIHJpY2h0ZXQgc2VpbmUgQXVmbWVya3NhbWtlaXQgYXVmIEJvaW5nLgpPawpEdSByaWNodGVzdCBEZWluZSBnYW56ZSBBdWZtZXJrc2Fta2VpdCBhdWYgQm9pbmcuClRhcmluYSByaWNodGV0IGlocmUgQXVmbWVya3NhbWtlaXQgYXVmIEJvaW5nLgpTbyBzY2huZWxsIGJpc3QgRHUgbmljaHQhIFdpbGxzdCBEdSBEaXIgc2FlbXRsaWNoZSBLbm9jaGVuIGJyZWNoZW4/CkJvaW5nIHN0ZWh0IGF1ZiBkZXIgU2Nod2VsbGUgZGVzIFRvZGVzLiAoMTAlKQogIC4uLi5ub3JtYWwvU2Nod2VydC4uLi4uIER1Li4uLi4uLi4uLi4gOiBCb2luZy4uLi4uLi4uICoqKioqKioqIC0+ClNjaG1ldHRlcm4KICBUb2Rlc3N0b3NzL1ZvbGxzdHJlY2tlciBUYXJpbmEuLi4uLi4uIDogQm9pbmcuLi4uLi4uLiAqKioqKioqKiAtLSB6dSBCcmVpCiAgLi4uLm5vcm1hbC9LYW1wZnN0b2NrLi4gV3VlaGxlci4uLi4uLiA6IEJvaW5nLi4uLi4uLi4gKioqKioqKiogLS0gc2VociBoYXJ0Cld1ZWhsZXIgYmVzY2hsZXVuaWd0IHNlaW5lIEF0dGFja2VuIQpUYXJpbmEgZmxpZWd0IG5hY2ggTm9yZGVuLgogIC4uLi5ub3JtYWwvU2Nod2VydC4uLi4uIER1Li4uLi4uLi4uLi4gOiBCb2luZy4uLi4uLi4uICoqKioqKioqIC0+IEtyYWNoZW4KICAuLi4ubm9ybWFsL1ZpZXJoYWVuZGVyLiBCb2luZy4uLi4uLi4uIDogS2FtZWxvdC4uLi4uLiAqKioqKioqKiAtLQp2ZXJuaWNodGV0CkthbWVsb3QgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KW1RlYW0gREc6VG9kXSBLQU1FTE9UIEhBVCBEQVMgVEVBTSBWRVJMQVNTRU4uCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCltUb2Q6TGFyc10gQm9pbmcgaGF0IGdlcmFkZSBLYW1lbG90IHVtZ2VicmFjaHQuCiAgLi4uLm5vcm1hbC9LYW1wZnN0b2NrLi4gV3VlaGxlci4uLi4uLiA6IEJvaW5nLi4uLi4uLi4gKioqKioqKiogLS0gc2VociBoYXJ0CiAgLi4uLm5vcm1hbC9LYW1wZnN0b2NrLi4gV3VlaGxlci4uLi4uLiA6IEJvaW5nLi4uLi4uLi4gKioqKioqKiogLS0gc2VociBoYXJ0CiAgLi4uLm5vcm1hbC9LYW1wZnN0b2NrLi4gV3VlaGxlci4uLi4uLiA6IEJvaW5nLi4uLi4uLi4gKioqKioqKiogLS0gc2VociBoYXJ0CkR1IG1hY2hzdCBlaW5lbiBXYWZmZW50cmljayBnZWdlbiBCb2luZy4KV3VlaGxlciBtYWNodCBwbG9ldHpsaWNoIHNjaG5lbGxlLCBnZWZhZWhybGljaCBhdXNzZWhlbmRlIFNjaGxhZWdlLCBkaWUgendhcgpzZWhyIGFnZ3Jlc3NpdiBzaW5kLCBkaWUgRGVja3VuZyBhYmVyIG5pZW1hbHMgb2VmZm5lbi4KQm9pbmcgc3RlaHQgYXVmIGRlciBTY2h3ZWxsZSBkZXMgVG9kZXMuICgxMCUpCiAgLi4uLm5vcm1hbC9TY2h3ZXJ0Li4uLi4gRHUuLi4uLi4uLi4uLiA6IEJvaW5nLi4uLi4uLi4gKioqKioqKiogLT4gS3JhY2hlbgpEZXIgRmxhbW1lbnBhbnplciBpc3QgbmljaHQgbWVociB2ZXJ6YXViZXJ0LgpNYXRyaXg6IEJvaW5nIGlzdCBzY2hvbiBzbyBndXQgd2llIGJlaSBMYXJzLiAoMTAlKQogIC4uLi5ub3JtYWwvVmllcmhhZW5kZXIuIEJvaW5nLi4uLi4uLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtCnZlcm5pY2h0ZXQKUGxvZXR6bGljaCBmdWVobHN0IER1IERlaW4gQmx1dCBrdXJ6IGF1ZmtvY2hlbiB1bmQgRGVpbmUgdWViZXJtYWVjaHRpZ2VuCnBoeXNpc2NoZW4gS3JhZWZ0ZSBzY2h3aW5kZW4uCltUb2Q6TGFyc10gQm9pbmcgaGF0IGdlcmFkZSBEYXJrd2luZyB1bWdlYnJhY2h0LgoKCkR1IGthbm5zdCBlaW5lbiBNYW5uIG1pdCBkdW5rbGVyIEthcHV6ZSBuZWJlbiBEZWluZXIgTGVpY2hlIHN0ZWhlbiBzZWhlbi4KRXIgd2lzY2h0IGRpZSBibHV0aWdlIEtsaW5nZSBlaW5lciBncmF1c2lnZW4gU2Vuc2UgbWl0IGxhbmdzYW1lbiwgZ2VtZXNzZW5lbgpCZXdlZ3VuZ2VuIGFiLiBQbG9ldHpsaWNoIGhvZXJ0IGVyIGF1ZiB1bmQgc2NoZWludCBEaWNoIGRpcmVrdCBhbnp1c2VoZW4gbWl0CnNlaW5lbiBsZWVyZW4gQXVnZW5ob2VobGVuIC4uLgoKRGVpbiBLb2VycGVyIGdlaG9yY2h0IERpciBuaWNodCAhCltUb2Q6TGFyc10gQm9pbmcgaGF0IGdlcmFkZSBXdWVobGVyIHVtZ2VicmFjaHQuICAgICAgICAgICAgICAKClAuUy46IEtsZXJpa2VyIGhhYmVuIGtlaW5lbiBmb2t1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgaW0gSW1iaXNzIC4uLi4gKFRydWcsIDI2LiBGZWIgMjAwMCwgMTM6MzM6MDEpOgoKTWFnaWN0dXggcmVib290ZXQgaGllciBMaW51eCB1bmQgcGxhbnRzY2h0IGF1ZiBkaWUgVG9pbGV0dGUgdW0gYXVjaCBkb3J0IHp1CnJlYm9vdGVuIS4KCip3YWVseiogClRydWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClphdWJlcmVyIHVuZCBpaHJlIFdhZmZlbi4uLiAoTmV2b2ssIDI2LiBGZWIgMjAwMCwgMjA6NTc6MTMpOgoKQWxzbyBkYSBzY2hhdXQgbWFuIHNpY2ggbWEgc28gbmVuIFphdWJlcnN0YWIgYW4gdW5kIHNpZWh0IGZvbGdlbmRlczoKCkVzIGlzdCBkZXIgWmF1YmVyc3RhYiBkZXMgWmF1YmVyZXJzIEppbW15LCBhdWNoIHdlbm4gRHUgaWhuIG5pY2h0IHJpY2h0aWcKYmVudXR6ZW4ga2FubnN0LCBrYW5uc3QgRHUgbWl0IGlobSBkb2NoIGtyYWVmdGlnIHp1aGF1ZW4uCgpTY2hvZW4gdW5kIGd1dCwgZGVuayBpY2ggbWlyLCB3aXJkIGRhbm4gd29obCBuZSBuZXR0ZXJlIFdhZmZlIHNlaW4sIHNjaGFldHoKZGFzIERpbmcgZWluIHVuZCBkYW5uIHNvd2FzOgoKRHUgYmV0cmFjaHRlc3QgZGVuIFphdWJlcnN0YWIgZWluZ2VoZW5kLgpFciBpc3QgZWluZSAyLUhhbmR3YWZmZSB1bmQgZ2Vob2VydCBkZXIgR3J1cHBlIGRlciBzdHVtcGZlbiBIaWVid2FmZmVuIGFuLiBFcgptYWNodCBzaWNoZXJsaWNoIGVpbmVuIHVlYmVyYXVzIGxhZWNoZXJsaWNoZW4gU2NoYWRlbi4gRXIga2FubiBwcnVlZ2Vsbi4gCkVyIGhhdCB1bmdlZmFlaHIgZWluIEdld2ljaHQgdm9uIDMwMTAgR3JhbW0uIER1IHd1ZXJkZXN0IHNlaW5lbiBXZXJ0IGF1ZiBldHdhCjE1NzMgTXVlbnplbiBzY2hhZXR6ZW4uIEVyIGlzdCBuaWNodCBiZXNjaGFlZGlndC4KCmxhZWNoZXJsaWNoZXIgU2NoYWRlbj8/Pz8KCkFsc28gaXJnZW5kd2FzIHN0aW1tdCBkYSBuZXQgc28gZ2FueiB3aWxsIGljaCBtZWluZW4uLi4uCgoKTmV2b2ssIGtvcGZzY2h1ZXR0ZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSEFFSCAoS2FkYWJyYSwgMjcuIEZlYiAyMDAwLCAwMDowNToyNik6Cj4gZ3J1ZWJlbApEdSBncnVlYmVsc3QgZWluZSBXZWlsZSB2b3IgRGljaCBoaW4uCj4gbGFzcyBrYXRlciBmYWxsZW4KPiBCaWVyc2NobGVpY2hlciBhdWYgSHVtbmlzIEFybSBtaWF1dCBsZWlzZS4KVGVsbHRhbGVoZWFydCBhdWYgRGVpbmVtIEFybSBzY2hsaWVzc3QgZGllIEF1Z2VuIHVuZCBzY2hudXJydCBsZWlzZS4KCkthdHplIG1pdCBXaWRlcmhha2VuIDspCmthZGFicmEgKioKa2FkYWJyYSAqKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG9wcGxhLi4uIChBcG9waGlzLCAyNy4gRmViIDIwMDAsIDExOjQ1OjMwKToKRWxlbmRpbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEZWluIEZyZXVuZCBFbGVuZGlsIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRGVpbiBGcmV1bmQgRWxlbmRpbCB0ZWlsdCBEaXIgbWl0OiBNb3JnZW4gOikKcmt1ZGRlbCBlbGVuZGlsCldpZSBiaXR0ZT8KCnJrbnVkZGVsIGVsZW5kaWwKRHUga251ZGRlbHN0IEVsZW5kaWwgYXVzIGRlciBGZXJuZS4KCipwdWgqIGVpbiBHbHVlY2sgaGF0IGRhcyBlcnN0ZSBuaWNodCBmdW5rdGlvbmllcnQgOykKCkFwb3BoaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBob3BwbGEuLi4gKFBhZHJlaWMsIDI3LiBGZWIgMjAwMCwgMTE6NDY6MjgpOgp+IyEgcm49QXBvcGhpcyBydD05NTE2NDgzMzAgcmc9c2NobWFycm4KfiMhIHRpZD05NTE2NDgzMzAKYWxzbyBlbnR3ZWRlciBmZWhsdCBkYSB3YXMsIG9kZXIgaWNoIHZlcnN0ZWggZGVuIFdpdHogbmljaHQuLi4KClBhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaG9wcGxhLi4uIChBcG9waGlzLCAyNy4gRmViIDIwMDAsIDExOjQ3OjQ4KToKfiMhIHJuPVBhZHJlaWMgcnQ9OTUxNjQ4Mzg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUxNjQ4MzMwCmhtbSwga3VkZGVsbiBiZWRldXRldCBiZWkgdW5zIGhpZXIgc292aWVsIHdpZSBzcHVja2VuLi4uIGFsc28gcmt1ZGRlbG4KYmVkZXV0ZXQgZGFubiBqbWQuIGFuc3B1Y2tlbiBhdXMgZGVyIEZlcm5lLi4uIHNvIGlzcyBkYXMgZ2VtZWludC4uLgprZW5uc3QgZHUgZGFzIG5pY2h0PwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGhvcHBsYS4uLiAoSmFtYWxza2ksIDI4LiBGZWIgMjAwMCwgMTk6NDE6MzMpOgp+IyEgcm49QXBvcGhpcyBydD05NTE2NDg0Njggcmc9c2NobWFycm4KfiMhIHRpZD05NTE2NDgzMzAKRGFzIGlzdCBiZWkgbWlyIGVpbiBiZWxpZWJ0ZXMgZmVtb3RlLi4uCgpKYW1hbHNraSwgZGVuIFdpdHogaW1tZXIgbm9jaCBuaWNodCB2ZXJzdGVoZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIE5hbWUgZGVzIFdhbmRsZXJzIChKYW1hbHNraSwgMjguIEZlYiAyMDAwLCAxOTo0NzozMyk6CgpBcmFuY2lhIHJ1ZnQ6IExlZWNoaWhhc2ltYXVzaXB1cHMKRGVyIFdhbmRsZXIgdmVyc2Nod2luZGV0IHVycGxvZXR6bGljaC4KCkphbWFsc2tpIGZhbmQgJ1dhbmRsZXInIGVoIGltbWVyIHp1IHVucGVyc29lbmxpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTGljaHQgKEFuYXRvbCwgMjkuIEZlYiAyMDAwLCAxMzoxMjo1NSk6Cn4jISBybj1TcmFiaSBydD05NTE4MTUxMzcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NTAwMjI5NjgKPiBMZWlkZXIgZ2lidCBlcyBhdWYgZGVyIE1vcmdlbkdyYXVlbi1Ib21lcGFnZSBhbHMgQ2xpZW50ZW4gamVkZSBNZW5nZSBURgo+IGFiZXIgbGVpZGVyIGhhdCBtYW4gZG9ydCBaTVVEIHZlcmdlc3NlbiA6LSkKCk5hamEsIFptdWQgX2thbm5fIG1hbiBqYSBhdWNoIHZlcmdlc3Nlbi4uLiA7bykKCkFuYXRvbCAtIHRmIDQuMCBzdGFibGUgMSA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdld2lubmVyIChDaHJpc3RvcGhlciwgMjkuIEZlYiAyMDAwLCAxMzo0OTo0Nik6CgpGdWVyIGFsbGUgTGV1dGUgZGllIGRhcyBTcGllbCBnZXdpbm5lbiB3b2xsZW4gaGllciBkaWUgTW90aXZhdGlvbiBkZXIgQW5kZXJlbgo6KQogLyAuIC4gLiAoIGNhLiAxMCBzZWl0ZW4gc2Nyb2xsICkKClZlY3RvciB0ZWlsdCBEaXIgbWl0OiBHRVdJTk5FISFJQ0ggR0VXSU5ORSEhSUNIIEdFV0lOTkUhIUlDSCBHRVdJTk5FISFJQ0gKVmVjdG9yIHRlaWx0IERpciBtaXQ6IEdFV0lOTkUhIUlDSCBHRVdJTk5FISFJQ0ggR0VXSU5ORSEhSUNIIEdFV0lOTkUhIUlDSApWZWN0b3IgdGVpbHQgRGlyIG1pdDogR0VXSU5ORSEhSUNIIEdFV0lOTkUhIUlDSCBHRVdJTk5FISFJQ0ggR0VXSU5ORSEhSUNIClZlY3RvciB0ZWlsdCBEaXIgbWl0OiBHRVdJTk5FISFJQ0ggR0VXSU5ORSEhSUNIIEdFV0lOTkUhIUlDSCBHRVdJTk5FISFJQ0gKVmVjdG9yIHRlaWx0IERpciBtaXQ6IEdFV0lOTkUhIUlDSCBHRVdJTk5FISFJQ0ggR0VXSU5ORSEhSUNIIEdFV0lOTkUhIUlDSApWZWN0b3IgdGVpbHQgRGlyIG1pdDogR0VXSU5ORSEhSUNIIEdFV0lOTkUhIUlDSCBHRVdJTk5FISFJQ0ggR0VXSU5ORSEhSUNIClZlY3RvciB0ZWlsdCBEaXIgbWl0OiBHRVdJTk5FISFJQ0ggR0VXSU5ORSEhSUNIIEdFV0lOTkUhIUlDSCBHRVdJTk5FISFJQ0gKVmVjdG9yIHRlaWx0IERpciBtaXQ6IEdFV0lOTkUhIUlDSCBHRVdJTk5FISFJQ0ggR0VXSU5ORSEhSUNIIEdFV0lOTkUhIUlDSApWZWN0b3IgdGVpbHQgRGlyIG1pdDogR0VXSU5ORSEhSUNIIEdFV0lOTkUhIUlDSCBHRVdJTk5FISFJQ0ggR0VXSU5ORSEhSUNIClZlY3RvciB0ZWlsdCBEaXIgbWl0OiBHRVdJTk5FISFJQ0ggR0VXSU5ORSEhSUNIIEdFV0lOTkUhIUlDSCBHRVdJTk5FISFJQ0gKVmVjdG9yIHRlaWx0IERpciBtaXQ6IEdFV0lOTkUhIUlDSCBHRVdJTk5FISFJQ0ggR0VXSU5ORSEhSUNIIEdFV0lOTkUhIUlDSApWZWN0b3IgdGVpbHQgRGlyIG1pdDogR0VXSU5ORSEhSUNIIEdFV0lOTkUhIUlDSCBHRVdJTk5FISFJQ0ggR0VXSU5ORSEhSUNIClZlY3RvciB0ZWlsdCBEaXIgbWl0OiBHRVdJTk5FISFJQ0ggR0VXSU5ORSEhSUNIIEdFV0lOTkUhIUlDSCBHRVdJTk5FISFJQ0gKVmVjdG9yIHRlaWx0IERpciBtaXQ6IEdFV0lOTkUhIUlDSCBHRVdJTk5FISFJQ0ggR0VXSU5ORSEhSUNIIEdFV0lOTkUhIUlDSApWZWN0b3IgdGVpbHQgRGlyIG1pdDogR0VXSU5ORSEhSUNIIEdFV0lOTkUhIUlDSCBHRVdJTk5FISFJQ0ggR0VXSU5ORSEhSUNIClZlY3RvciB0ZWlsdCBEaXIgbWl0OiBHRVdJTk5FISFJQ0ggR0VXSU5ORSEhSUNIIEdFV0lOTkUhIUlDSCBHRVdJTk5FISEKV3Vyc3RlbCB0ZWlsdCBEaXIgbWl0OiBodWNoIC0gZGllIDQgaW0gd2FjaHJhdW0gc2luZCBzY2hvbiB1bWdmYWxsZW4gLSBoYXR0Cld1cnN0ZWwgdGVpbHQgRGlyIG1pdDogYWxsZXJkaW5ncyBtZXNzZXJrcmVpcyBkYWJlaSB6dXIgYmVzY2hsZXVuaWd1bmcgOikKW0FsbGdlbWVpbjpDYWxkcmluXSBhbHNvIGRlciBUYXRiZXN0YW5kIG11c3MgYXVmIGRlbSBCZXNjaGVpZCBpbiBLbGFydGV4dApbQWxsZ2VtZWluOkNhbGRyaW5dIGZvcm11bGllcnQgc2VpbgpEdSB0ZWlsc3QgVmVjdG9yIG1pdDogYmkgbnNjaG9uIGRhYmVpIC4pCltBbGxnZW1laW46QWxwaGFdIEljaCBiaW4gbnVyIGdlZmFocmVuLiBWb3IgZGVuIEJ1bGxlbiBoZXIuIDIgRXh0cmEtcnVuZGVuIHVtCltBbGxnZW1laW46QWxwaGFdIGRlbiBCbG9jay4gVW5kIG1laW4gQXV0byBoYXQgdm9yIDMwIFRhZ2VuIFR1ZXYgYmVrb21tZW4uCltBbGxnZW1laW46QWxwaGFdIEFsc28gaXN0IGRhIGFsbGVzIGxlaXNlIHVuZCBoZWlsLgpEdSB0ZWlsc3QgVmVjdG9yIG1pdDoga2FubnN0IGdlZGFua2UgbGVzZW4gd2FzIDopCltBbGxnZW1laW46Q2FsZHJpbl0gd2VubiBuaWNodCAsIFdpZGVyc3BydWNoCkR1IG5pY2tzdCBXdXJzdGVsIGF1cyBkZXIgRmVybmUgenUuClZlY3RvciB0ZWlsdCBEaXIgbWl0OiBJQ0ggR0VXSU5OTkUgVFJPVFpERU0hIUNIIEdFV0lOTk5FIFRST1RaREVNISEKW0FsbGdlbWVpbjpDYWxkcmluXSBkYW5uIGlzdCBlcyBhdWNoIG5pY2h0IExhZXJtYmVsYWVzdGlndW5nClZlY3RvciB0ZWlsdCBEaXIgbWl0OiBJQ0ggR0VXSU5OTkUgVFJPVFpERU0hIUNIIEdFV0lOTk5FIFRST1RaREVNISFDSCBHRVdJTk5ORQpWZWN0b3IgdGVpbHQgRGlyIG1pdDogVFJPVFpERU0hIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdld2lubmVyIChWZWN0b3IsIDI5LiBGZWIgMjAwMCwgMTM6NTE6MzYpOgp+IyEgcm49Q2hyaXN0b3BoZXIgcnQ9OTUxODI4NTg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUxODI4NTg2CgpTbyBlaW4gQXJ0aWtlbCBzYWd0IGphIGFsbGVzIHVlYmVyIGRlbiBWZXJmYXNzZXIuLi4KCldlciB3aXNzZW4gd2lsbCwgd2llIGRhenUga2FtLCBrYW5uIGphIG1hbCB1ZWJlciB0ZWlsZSBtaXQgbmFjaGZyYWdlbgoKLS1WZWN0b3ItLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHZXdpbm5lciAoVmVjdG9yLCAyOS4gRmViIDIwMDAsIDEzOjUyOjA2KToKfiMhIHJuPVZlY3RvciBydD05NTE4Mjg2OTYgcmc9c2NobWFycm4KfiMhIHRpZD05NTE4Mjg1ODYKCmF1c3NlcmRlbTogR0VXSU5ORSBJQ0ggVFJPVFpERU0gc286KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHZXdpbm5lciAoQ2hyaXN0b3BoZXIsIDI5LiBGZWIgMjAwMCwgMTM6NTc6MjEpOgp+IyEgcm49VmVjdG9yIHJ0PTk1MTgyODY5NiByZz1zY2htYXJybgp+IyEgdGlkPTk1MTgyODU4NgpBbHNvIGRhIG1pY2ggdmllbGUgZnJhZ3RlbiB3ZWxjaGVzIFNwaWVsIGdlbWVpbnQgd2FyIGhpZXIgZGllIEtvcnJla3R1ciA6IGRhcwpNRyB3YXIgZ2VtZWludCwgd2VsY2hlcyBuYXR1ZXJsaWNoIGtlaW4gU3BpZWwgc29uZGVybiBlaW4gU2NyaXB0L1RyaWdnZXIgaXN0CjspIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQnJpZXNlbHRyaW0/IChVbmFzYWksICAxLiBNYXIgMjAwMCwgMTg6NDQ6MjcpOgpvaCBtYW5uLCBtaXQgd2FzIG1hbiBpbiBkaWVzZXIgR2lsZGUgbmljaCBhbGxlcyBmZXJ0aWd3ZXJkZW4gbXVzcy4uLi4KV2lsbGt1ZXIsIHJlaW5lIFdpbGxrdWVyIQoKW1RydmVzOkJyaWVzZWx0cmltXSBOb3Zhc3Rvcm0gd3VyZGUgYXVmIGVpZ2VuZW4gV3Vuc2NoIGhpbiBBQkdFV0VSVEVUIQpbVHJ2ZXM6VW5hc2FpXSBXQUFBQUFBQUFBQUFBQUFBQUhISEhISEhISEhISCA8MTg6Mzc6MjE+CltUcnZlczpOb3Zhc3Rvcm0gd2lyZnQgd2FzIFNwaXR6ZXMgbmFjaCBKZV5IXkhCcmllc2VsdHJpbS4gPDE4OjM3OjM5Pl0KW1RydmVzOlVuYXNhaSBzY2hhdXQgQnJpZXNlbHRyaW0gZW50c2V0enQgYW4uIDwxODozNzo0NT5dCltUcnZlczpCZW5kZWlnaWRdIGphamEsIGRhcyBrb2VubmVuIGRpZSBmcmF1ZW4gZGFubiBkb2NoIG5pY2h0IGFiIDopCltUcnZlczpCZW5kZWlnaWRdIDwxODozODowMT4KW1RydmVzOkJyaWVzZWx0cmltIHRhZXRzY2hlbHQgc2VpbmUgVG9jaHRlciBVbmFzYWkuIDwxODozODowMT5dCltUcnZlczpVbmFzYWldIHdhcyB2ZXJrYWxrdW5nIGFsbGVzIGF1c2xvZXNlbiBrYW5uLi4uIDwxODozODowNT4KCgpVbmEqIHdpZXZpZWxlIFBhcGlzIHdlcmRlIGljaCBoaWVyIG5vY2ggYmVrb21tZW4/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGllIGxldHp0ZSBCYXN0aW9uIGZhZWxsdC4uLiAoVW5hc2FpLCAgMS4gTWFyIDIwMDAsIDE5OjA5OjM0KToKClNldWZ6Li4uaWNoIGRhY2h0ZSBpbW1lciBlcyBnaWJ0IERpbmdlIGRpZSBlaW4gTWFubiB0dXQgdW5kIGZ1ZXIgZGllIGVyIHNpY2gKbmljaHQgc2NoYWVtdCA6KSAKTmFqYSBQdXN0ZWt1Y2hlbiA6KSBBbHNvIFNwZWxsaS4uLlNPV0FTIGhhZXR0ZSBpY2ggbWFsIG5pZSBlcndhcnRldCB2b24gRGlyIHp1CmhvZXJlbiwgRHUgZGVyIER1IG1hbCBOZWdlcmtvZW5pZyBhdWYgSGF3YWlpIHdlcmRlbiB1bmQgZG9ydCBkZW4gMS5GQyBIYXdhaWkKZ3J1bmRlbiB3b2xsdGVzdCEhIEljaCBiaW4gZW50dGFldXNjaHQhClNwZWxsZmlyZSB0ZWlsdCBEaXIgbWl0OiBvY2ggbWlyIGdlaHRzIGdhbnogZ3V0LCBiaW4gZ2VyYWRlIGF1cyBISApTcGVsbGZpcmUgdGVpbHQgRGlyIG1pdDogd2llZGVyZ2Vrb21tZW4gOz4gbXVzcyBhYmVyIGdsZWljaCBsZWlkZXIgenVtClNwZWxsZmlyZSB0ZWlsdCBEaXIgbWl0OiBUcmFpbmluZyA7PgoKRHUgdGVpbHN0IFNwZWxsZmlyZSBtaXQ6IHdhcyB0cmFpbmllcnN0IGR1IGRlbm4/CgpTcGVsbGZpcmUgdGVpbHQgRGlyIG1pdDogRnVzc2JhbGwgKnNjaGFlbSogOj4KCkR1IHRlaWxzdCBTcGVsbGZpcmUgbWl0OiBva2F5IG1laW4gZmVobGVyIGljaCBoYWV0dHMgd2lzc2VuIG11ZXNzZW4uLjopCkR1IHRlaWxzdCBTcGVsbGZpcmUgbWl0OiBkYSBzY2hhZW1zdGUgZGljaCBmdWVyPwoKU3BlbGxmaXJlIHRlaWx0IERpciBtaXQ6IGViZW5kIDs+ClNwZWxsZmlyZSB0ZWlsdCBEaXIgbWl0OiBub2UgbmljaHQgd2lya2xpY2ggOz4KCkR1IHRlaWxzdCBTcGVsbGZpcmUgbWl0OiBUcmlua3N0IER1IGRhIGpldHp0IGV0d2EgYXVjaCBrZWluIEJpZXIgbWVocj8/Pz8KClNwZWxsZmlyZSB0ZWlsdCBEaXIgbWl0OiB3aXIgd29sbGVuIGVzIGphIG5pY2h0IHVlYmVydHJlaWJlbiwgbW9yZ2VuZmFlbmd0IGRlcgpTcGVsbGZpcmUgdGVpbHQgRGlyIG1pdDogSG9laGVwdW5rdCBkZXMgS2FybmV2YWxzIGFuIDs+CgpEdSB0ZWlsc3QgU3BlbGxmaXJlIG1pdDogdWkgYmlzdGUgZXR3YSBhdWNoIHNvIGVpbmVyIGRlciBpbSBjbG93bnNrb3N0dWVtCkR1IHRlaWxzdCBTcGVsbGZpcmUgbWl0OiBydW1yZW5udCB1bmQgZnJlbWRlIGZyYXVlbiBrdWVzc3Q/CgpTcGVsbGZpcmUgdGVpbHQgRGlyIG1pdDogbmVpbiBrZWluIENsb3dua29zdHVlbQpTcGVsbGZpcmUgZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBhbi4KCgpObyBjb21tZW50Li4uLlVuYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpciB1bmQgYm9lc2U/IChTaGFoaSwgIDEuIE1hciAyMDAwLCAyMjo1NDozMik6CiBFYmVuIHBhc3NpZXJ0OgpEdSBiZXVnc3QgRGljaCB6dSBEZWluZXIga2xlaW5lbiBNYXVzIGhpbnVudGVyIHVuZCBmbHVlc3RlcnN0IElociBldHdhcyBpbnMKT2hyLiBEYXJhdWZoaW4gZ2VodCBRdWl0c2NoaWUgbGFuZ3NhbSB6dSBLcnV1b2xxIHVuZCBibGVpYnQga3VyeiB2b3IgaWhtCnN0ZWhlbi4gU2llIHp1cGZ0IHNpY2gga3VyeiBhbiBpaHJlbiBrbGVpbmVuIEJhcnRoYWFyZW4gdW5kIGdlaHQgZGFubiBub2NoCmV0d2FzIG5hZWhlciwgc3R1cHN0IGt1cnogbWl0IGlocmVyIGtsZWluZW4gTmFzZSBnZWdlbiBLcnV1b2xxcyBCZWluIHVuZApzY2hhdXQgc3RyYWhsZW5kIHp1IGlobSBhdWYuIERhbmFjaCByZWlidCBzaWUgc2FuZnQgdW5kIGxpZWJldm9sbCBpaHIga2xlaW5lcwpNYWV1c2VuYWVzY2hlbiBhbiBzZWluZW0gRnVzcy4gU2NobGllc3NsaWNoIGh1ZXBmdCBzaWUgZnJvZWhsaWNoIHF1aWVrZW5kCndpZWRlciB6dSBEaXIgenVydWVjayB1bmQgRHUga2FubnN0IGdlbmF1IHNlaGVuLCB3aWUgS3J1dW9scSBUcmFlbmVuIGRlcgpSdWVocnVuZyBpbiBkaWUgQXVnZW4gdHJldGVuLiAKClNldWZ6LCB3ZXIgaGF0dGUgZGFzIGdlZGFjaHQsIEtydXVvbHEgaGF0IGRvY2ggZWluIEhlcnouLi4uCmBzIFNoYWhlcmwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZCBpY2ggZGFjaHRlIG5vY2guLi4gKE5ldm9rLCAgMi4gTWFyIDIwMDAsIDIzOjU1OjA0KToKRHUgdGVpbHN0IERpcmlvbiBtaXQ6IGh1aSwga2VpbiBITSBmdWVyIGRpY2g/IDopCkRpcmlvbiBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBobTIuCgphZWggamEuLi4ub2RlciBzby4uLgoKTmV2b2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIHNjaGxpbW0/IChUcmFuY2UsICA0LiBNYXIgMjAwMCwgMTQ6MjQ6MTIpOgoKU2NyZWFtZXIgc2NoYXV0IERpY2ggYW4gdW5kIHJlbm50IHNjaHJlaWVuZCBhdWYgZGllIFRvaWxldHRlLgoKVHJhbmNlLCBrdWNrdCBub2NobWFsIGluIGRlbiBTcGllZ2VsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGlwcGUgOikgKERhcmt3aW5nLCAgNC4gTWFyIDIwMDAsIDIyOjU1OjAzKToKSGlwcGUgZnJhZ3QgOiBXYXJ1bSBzYWd0IFRyYXVtYSBicmVpdGV0IHNlaW5lIEhhZW5kZSBhdXMgdW5kICdTQ0hVVFohJyA/CiAgLi4uLm5vcm1hbC9GZXVlcmhhbmQuLi4gRHUuLi4uLi4uLi4uLiA6IEhpcHBlLi4uLi4uLi4gKioqKioqKiogLT4KU2NobWV0dGVybgpIaXBwZSBmYWVsbHQgdG90IHp1IEJvZGVuLgoKKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNvIHNjaGxpbW0/IChTY3JlYW1lciwgIDUuIE1hciAyMDAwLCAwMTo1NDo1Myk6Cn4jISBybj1UcmFuY2UgcnQ9OTUyMTc2MjUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUyMTc2MjUyClRqYSwgb2IgZGFzIHRyZWlidCBvZGVyIG9iIGljaCBuZW4gZW1wZmluZGxpY2hlbiBNYWdlbiBoYWJlIGxhc3MgaWNoIG1hbCBkYWhpbgpnZXN0ZWxsdCA7LSkpKSAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFuZHJvaWRlbiBvZGVyIHdpZT8gKE5ldm9rLCAgNi4gTWFyIDIwMDAsIDE4OjE1OjA4KToKRGVpbmUgRnJldW5kaW4gVW5hc2FpIHRlaWx0IERpciBtaXQ6IG51ciBrdXJ6CkRlaW5lIEZyZXVuZGluIFVuYXNhaSB0ZWlsdCBEaXIgbWl0OiBiaW4gdWViZXIgbWVpbmUgc2Nod2VzdGVyIGRyaW5uZSA6KQoKTmV2b2ssIGRlciBhdWNoIFZlcndhbmRzY2hhZnQgaGFiZW4gd2lsbCBpbiBkaWUgZXIgc2VpbmVuIFJlY2huZXIgZWluc3RvZXBzZWx0Cnp3ZWNrcyBJbnRlcm5ldHp1Z2FuZ3MuLi4ucG9laAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGlhcmEsIGNvb2wsIGVpbmZheGggY29vbCA6KSAoUHVrLCAgNy4gTWFyIDIwMDAsIDAxOjMwOjExKToKCltBbGxnZW1laW46TGlhcmEgc2NoaWViIERlaW5lbiBLYWVtcGZlcmhpbnRlcm4gaGllciBoaW4sIGljaCB3aWxsIG5vY2h3YXMKcGxhZXR0ZW4gdm9ybSBTY2hsYWZlbmdlaGVuLiA7LSldCgpQdWssIHNjaG1laXNzdCBzaWNoIHZvciBsYWNoZW4gaW4gZGllIEVja2UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClF1YXJrISAoTHVnLCAgNy4gTWFyIDIwMDAsIDAxOjQ5OjU5KToKCkxpYXJhIGtpdHplbHQgZWluZW4gRnJvc2NoIGFuIHNlaW5lbSBLaW5uLgpFaW4gRnJvc2NoIHZlcnN1Y2h0LCBzaWNoIHp1IGJlaGVycnNjaGVuLCBtdXNzIGFiZXIgZG9jaCBsYWNoZW4uCkVpbiBGcm9zY2ggYmVnaW5udCBsdXN0dm9sbCB6dSBzdG9laG5lbi4uLiBIb2xsYSwgd2FzIGZ1ZXIgQmVuZWhtZW4hCk11cGZlbCBkZW5rdCAgIC4gbyBPIChpaHIgcGVydmVyc2VuLi4uKQoKVHNzLiBVbm1vcmFsIQpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxpbnV4IChEZWVwYmx1ZSwgIDcuIE1hciAyMDAwLCAxMDo0NzozMSk6CkxpbnV4IGlzdCB3aWUgZWluIFdpZ1dhbToKS2VpbmUgV2luZG93cwpLZWluZSBHYXRlcwpVbmQgQXBhY2hlIGlzdCBzY2hvbiBkcmluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFuZHJvaWRlbiBvZGVyIHdpZT8gKFVuYXNhaSwgIDcuIE1hciAyMDAwLCAxMjoxNTo0NSk6Cn4jISBybj1OZXZvayBydD05NTIzNjI5MDggcmc9c2NobWFycm4KfiMhIHRpZD05NTIzNjI5MDgKTWVubm8sIGRvY2ggbmljaHQgSU4gbWVpbmUgU2Nod2VzdGVyLCBzb25kZXJuIHVlYmVyIGRlbiBJTnRlcm5ldHp1Z2FuZyBtZWluZXIKU2Nod2VzdGVyISEhCkJhbmF1c2UhCgpVbmEqLCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExpbnV4IChUcnVnLCAgNy4gTWFyIDIwMDAsIDE1OjMzOjA2KToKfiMhIHJuPURlZXBibHVlIHJ0PTk1MjQyMjQ1MSByZz1zY2htYXJybgp+IyEgdGlkPTk1MjQyMjQ1MQpTb2xsdGUgd29obCBlaGVyICdMaW51eCBpc3QgZWluIF9UaXBpXycgaGVpc3NlbiwgZWluIFdpZ3dhbSBpc3Qgd2FzIEdBTloKYW5kZXJlcy4KCnRydWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbmRyb2lkZW4gb2RlciB3aWU/IChKYW1hbHNraSwgIDcuIE1hciAyMDAwLCAxNzoxMzoyMik6Cn4jISBybj1OZXZvayBydD05NTIzNjI5MDggcmc9c2NobWFycm4KfiMhIHRpZD05NTIzNjI5MDgKQWxzbyB3ZW5uIGljaCBtaWNoIGluIG1laW5lIFZlcndhbmRzY2hhZnQgZWluJ3N0b2Vwc2VsbicgbXVlc3N0ZSB1bSBpbnMgTmV0egp6dSBrb21tZW4sIGRhbm4gd3VlcmRlIGljaCBlcyBsaWViZXIgbGFzc2VuLgpBbmRlcnNydW06IE1hbmNobWFsICdzdG9lcHNlbHQnIDhpY2ggZm9sZ2UgbnVyIGRlbSB3b3J0bGF1dCkgbWFuIHNpY2ggZWluIHVuZAprdXJ6ZSBaZWl0IHNwYWV0ZXIgaXN0IG1hbiBpbiBlaW5lbSBOZXR6IGdlZmFuZ2VuLgoKSmFtYWxza2ksIE1ldGFwaGVybiBpbiBCb2Rlbm5hZWhlIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbmRyb2lkZW4gb2RlciB3aWU/IChNZW5hY2UsICA3LiBNYXIgMjAwMCwgMTk6MDI6NTMpOgp+IyEgcm49SmFtYWxza2kgcnQ9OTUyNDQ1NjAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUyMzYyOTA4CkFsc28gd2VubiBEdSBEaWNoIGJlaSBkZWluZXIgU2Nod2VzdGVyICdlaW5zdG9lcHNlbG4nIHd1ZXJkZXN0LCBkYW5uIGtvZW5udGVzdApEdSBiYWxkIFByb2JsZW1lIG1pdCBkZW0gU3RhYXRzYW53YWx0IGJla29tbWVuLiA7bykKCi0+IFNjaG1hcnJuISBBY2ggc28sIGRhIHNpbmQgd2lyIGphIHNjaG9uISA7bykKCk1lbmFjZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZW50dGFybnQgISEhIChMYW5mZWFyLCAgOC4gTWFyIDIwMDAsIDA4OjMxOjQxKToKRWxlbmRpbCB6aWVodCBkaWUgS2FwdXplIHNlaW5lcyBBc3RyYWxtYW50ZWxzIHp1cnVlY2sgdW5kIHdpcmQgc2ljaHRiYXIuCkVpbiB3YWJlcm5kZXMgR2ViaWxkZSBlcnNjaGVpbnQgdXJwbG9ldHpsaWNoIHZvciBEaXIuCkR1IGJyaWNoc3Qgdm9yIExhY2hlbiB6dXNhbW1lbi4KCkxhbmZlYXIgLSBoYXRzIGphIGltbWVyIGdld3Vzc3QgIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2F1bWFnZW4/PyAoTW9yZ290aCwgIDguIE1hciAyMDAwLCAwODo0OTozOSk6CkRlaW4gRnJldW5kIEVsZW5kaWwgdGVpbHQgRGlyIG1pdDogc28sIGJpcyBnbGVpY2ggZWJlbiBQaXp6YSBlc3NlbiA6KQpFbGVuZGlsICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpbemVpdF0KTWl0LCAgOC4gTWFyIDIwMDAsIDA4OjQ4OjU3LgoKTSogZHJlaHQgc2ljaCBkZXIgTWFnZW4gdW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhpbGZlISA6KSAoQm9pbmcsICA4LiBNYXIgMjAwMCwgMTc6MTc6MTUpOgpIaWxmZSwgaWNoIHdlcmRlIGJlZHJvaHQhIEhpZXIgZGVyIEJld2VpczoKCihGZXVlcndlaHIpIHRlaWx0IERpciBtaXQ6IEJldGUsIGRhc3MgRHUgbWlyIG5pZSBpbiBlaW5lciBkdW5rbGVuIEdhc3NlCihGZXVlcndlaHIpIHRlaWx0IERpciBtaXQ6IGJlZ2VnbmVzdCEgOikKCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJsb25kaW5lbiB0ZWlsIDQzNDIgKEFwc3UsICA4LiBNYXIgMjAwMCwgMTc6NTA6MDMpOgpbZnJhZ2UgYmFyYmllIG5hY2gga2luZGVyXQpEaWUgUHVwcGUgc2FndDogT2gsIGljaCBmdWVyY2h0ZSBkYXp1IGthbm4gaWNoIG5pY2h0cyBzYWdlbi4KW2ZyYWdlIGJhcmJpZSBuYWNoIGt1ZWNoZV0KRGllIFB1cHBlIHNhZ3Q6IE9oLCBpY2ggZnVlcmNodGUgZGF6dSBrYW5uIGljaCBuaWNodHMgc2FnZW4uCltmcmFnZSBiYXJiaWUgbmFjaCBraXJjaGVdCkRpZSBQdXBwZSBzYWd0OiBPaCwgaWNoIGZ1ZXJjaHRlIGRhenUga2FubiBpY2ggbmljaHRzIHNhZ2VuLgpbZnJhZ2UgYmFyYmllIG5hY2ggYnVtc2VuXQpEaWUgUHVwcGUgc2FndDogT2gsIGljaCBmdWVyY2h0ZSBkYXp1IGthbm4gaWNoIG5pY2h0cyBzYWdlbi4KW2ZyYWdlIGJhcmJpZSBuYWNoIGtlbiBmaWNrZW5dCkRpZSBQdXBwZSBzYWd0OiBPaCwgaWNoIGZ1ZXJjaHRlIGRhenUga2FubiBpY2ggbmljaHRzIHNhZ2VuLgpbZnJhZ2UgYmFyYmllIG5hY2gga2VuXQpEaWUgUHVwcGUgc2FndDogS2VuIGlzdCBtZWluIEZyZXVuZC4gRXIgaXN0IHVuaGVpbWxpY2ggc3RhcmsgdW5kIHNpZWh0IHNlaHIKZ3V0IGF1cyEgOikKCldhcyB6dW0gR2VpZXIgZmluZGV0IEtlbiBudXIgYW4gZGVyPyA6bykKCkFwc3UsIGltbWVyIG5vY2ggZ3JpbnNlbmQKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2htYXJybiAoVmVjdG9yLCAgOC4gTWFyIDIwMDAsIDE4OjE3OjM4KToKCkVsZW5kaWwgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRHUga251ZGRlbHN0IEVsZW5kaWwgYXVzIGRlciBGZXJuZS4KRGVpbiBGcmV1bmQgRWxlbmRpbCBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCkRlaW4gRnJldW5kIEVsZW5kaWwgdGVpbHQgRGlyIG1pdDogTnVyIHN1cGVya3VyeiBtYWwgaHVodSA6KQpEZWluIEZyZXVuZCBFbGVuZGlsIHRlaWx0IERpciBtaXQ6IHNvLCBtdXNzIHdlZyA6KSBieWUKRGVpbiBGcmV1bmQgRWxlbmRpbCB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4KRWxlbmRpbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCgouLi5hbGxlcyBrbGFyLi4uLjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVcHMgKFNyYWJpLCAgOC4gTWFyIDIwMDAsIDIwOjE5OjAzKToKCkViZW4gYXVmZ2VzY2huYXBwdAoKRGVpbiBGcmV1bmQgRnJlb2xvIHRlaWx0IERpciBtaXQ6IGhhdCBqZW1hbmQgdm9uIGV1Y2ggZXJmYWhydW5nIG1pdCBkZW0KRGVpbiBGcmV1bmQgRnJlb2xvIHRlaWx0IERpciBtaXQ6IHNjaHJlY2tlbnNkcmFjaGVuPwpBYmVudGV1ZXIgd2llIGZpbmRlIGljaCBpbiBkZXIgZ3J1ZnQgZGllIHNhdWVyc3RvZmZsYXNjaGU/IChzeW4pCk1hZ2llIGtyYXR6dCBzaWNoIG1pdCBzZWluZW0gcmVjaHRlbiBIaW50ZXJiZWluIGhpbnRlciBkZW4gT2hyZW4uCk1vZXJkZXIgSWNoIGZvcmRlcmUgUmV2YW5jaGUsIE5vbWFkIQpUb2QgRGVyIFNjaHJlY2tlbnNkcmFjaGUgaGF0IGdlcmFkZSBGcmVvbG8gdW1nZWJyYWNodC4KVG9kIE1BTVBGISBOYWVjaHN0ZXIsIGJpdHRlIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGFzIGljaCBkYXMgbm9jaCBlcmxlYmVuIGRhcmYgLi4uIChMaWFyYSwgIDguIE1hciAyMDAwLCAyMzo1Mzo0Mik6Ckx1ZyBzY2h1ZXR0ZWx0IGRpZSBEZWNrZW4gc2VpbiBCZXR0ZXMgYXVzLCBmYWx0ZXQgc2llIHVuZCBsZWd0IHNpZSBhbnMKRnVzc2VuZGUuIEFuc2NobGllc3NlbmQgc3RyZWljaHQgZXIgZGFzIExha2VuIGdsYXR0LgoKTGlhcmEsIFp3ZXJnZW56YXViZXJpbmUsIGt1Z2VsdCBydW0gdm9yIExhY2hlbgoKUC4gUy46IFdhciB3b2hsIGdyYWRlIGtlaW5lIFNjaG5pdHRlIGlubmVyIE5hZWhlPyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBkYXMgaWNoIGRhcyBub2NoIGVybGViZW4gZGFyZiAuLi4gKEx1ZywgIDguIE1hciAyMDAwLCAyMzo1NTozMCk6Cn4jISBybj1MaWFyYSBydD05NTI1NTYwMjIgcmc9c2NobWFycm4KfiMhIHRpZD05NTI1NTYwMjIKClJhdGUgd2FydW0gaWNoIGRhcyBEaW5nIGF1c3NjaHVldHRlbC4uLgoKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGUkFVRU4hIChMdWcsICA5LiBNYXIgMjAwMCwgMDA6MjY6MjcpOgoKW0FsbGdlbWVpbjpLYXJ0b2ZmZWwgbWFjaHQgc2ljaCB2b20gQWNrZXIgdW5kIGt1bGxlcnQgZ2VuIEJldHRjaGVuLl0KRGVpbmUgRnJldW5kaW4gS2FydG9mZmVsIHRlaWx0IERpciBtaXQ6IEJpcyBkaWUgVGFnZQpbQWxsZ2VtZWluOkx1ZyBzY2huaWVmdC5dCkR1IHdpbmtzdCBLYXJ0b2ZmZWwgYXVzIGRlciBGZXJuZSB6dS4KW0FsbGdlbWVpbjpLYXJ0b2ZmZWxdIEd1dHMgTmFlY2h0bGUgenVzYW1tZW4KS2FydG9mZmVsIHRlaWx0IERpciBtaXQ6IHBvZWgKCgpTZWx0c2FtIGV5LCB2b2xsIHNlbHRzYW0gZGllc2UgU2Nobml0dGVuLi4uCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWhoaCAoTHVnLCAgOS4gTWFyIDIwMDAsIDAwOjM1OjI4KToKClNjaG1lY2t0IHdvaGwgc2NobGVjaHQKU2NobWVja3Qgd29obCBzY2hsZWNodDoKCkVzIHdpcmQgdG90ZW5zdGlsbCwgYWxzIFRhcmluYSBlaW4gS25vYmxhdWNod2Fzc2VyIGJlc3RlbGx0IHVuZCB0cmlua3QuClRhcmluYSBzYWd0OiBtdXNzIG1pY2gga3VyeiBtYWwgcmFlY2hlbgoKCkJvaW5nIHZlcmJlc3NlciBtYWwgZGVuIEdlc2NobWFjawpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyYXVlbnd1bnNjaHRyYWV1bWUgKEx1ZywgIDkuIE1hciAyMDAwLCAwMTowMzo0NCk6CgpTaW5kIG9mdCBzbyBzaW1wZWw6CgpbVHJ2ZXM6VGF0amFuYV0gZWdhbCwgaGF1cHRzYWNoZSBsYW5nCgoKRGEgc2FnZSBub2NobWFsIGVpbmVyIGF1ZiBkaWUgVGVjaG5payBrYWVtZSBlcyBhbi4KCkF1c3JlZGUKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUb3RlIHdlaW5lbiBuaWNodD8/IChPaGFtLCAgOS4gTWFyIDIwMDAsIDA4OjAzOjUwKToKUGFsZSBzdGFycnQgZGVtIE9yayB0aWVmIGluIGRpZSBBdWdlbiB1bmQgc2FndDogV2VpbmUhCkVpbiBPcmsgc3RlaHQgYXVmIGRlciBTY2h3ZWxsZSBkZXMgVG9kZXMuCiAgLi4uLm5vcm1hbC9CbHV0LVNjaHdlcnQgRHUuLi4uLi4uLi4uLiA6IE9yay4uLi4uLi4uLi4gKioqKioqKiogLT4gc2VociBoYXJ0CkRlciBPcmsgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRWluZSBMZWljaGUgYnJpY2h0LCB2b24gZWluZW0gV2VpbmtyYW1wZiBnZXNjaHVldHRlbHQsIHp1c2FtbWVuLgoKWmF1YmVyZXIga29lbm5lbiBtZWhyIGFscyBpY2ggZGFjaHRlLi4uLi4uCgpPaGFtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBbmRyb2lkZW4gb2RlciB3aWU/IChKYW1hbHNraSwgIDkuIE1hciAyMDAwLCAxMzowOTo1Mik6Cn4jISBybj1NZW5hY2UgcnQ9OTUyNDUyMTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUyMzYyOTA4Cldlbm4gaWNoIG1pY2ggYmVpIG1laW5lciBTY2h3ZXN0ZXIgZWluJ3N0b2Vwc2Vsbicgd3VlcmRlLCBiZWthZW1lIGljaCBpbgplcnN0ZXIgTGluaWUgUHJvYmxlbWUgbWl0IG1laW5lciBNYS4KRGllIG11ZXNzdGUgaWNoIGVyc3RtYWwgdm9tIFNpbm4gdW5kIFp3ZWNrIGVpbmVyIFRvY2h0ZXIgdWViZXJ6ZXVnZW4uCgpXYWVyZSBlcyBkYW5uIHNvd2VpdCwgd3VlcmRlIGljaCBzZWxic3R2ZXJzdGFlbmRsaWNoIGVyc3RtYWwgYmVpIERpcgp2b3JiZWlrb21tZW4sIE1lbmFjZSwgdW5kIERpciBvcmRlbnRsaWNoIGRpZSBGcmVzc2UgcG9saWVyZW4sIHdlaWwgRHUgc28gdWViZXIKbWVpbmUgU2Nod2VzdGVyIHJlZGVzdC4KClVuZCB2aWVsbGVpY2h0IGhhZXR0ZSBpY2ggZGFubiB3aXJrbGljaCBQcm9ibGVtZSBtaXQgZGVtIFN0YWF0c2Fud2FsdCA7KQpKYW1hbHNraSBtaXQgc3BhbmlzY2hlciBCbHV0dHJhbnNmdXNpb24genVyIFdlbHQgZ2Vrb21tZW4uCkhvc3NhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS29taXNjaCAhIChNb3Jnb3RoLCAgOS4gTWFyIDIwMDAsIDE0OjI1OjUyKToKQ2F0d2VhemxlICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpEdSBzaWVoc3QgODA2MiBNdWVuemVuLgpDYXR3ZWF6bGUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggYnVnZ2UgbmljaHQgISA7LSkgKE1vcmdvdGgsICA5LiBNYXIgMjAwMCwgMTQ6NDg6NDApOgpFaW4gaGFlc3NsaWNoZXIgZmV0dGVyIEJ1ZyBlcmJsZWljaHQgcGxvZXR6bGljaCB1bmQgcmVubnQgd2VnLgpEZXIgT3JrIHNhZ3Q6IFdpbGxrb21tZW4gaW4gT3JraGF1c2VuLCBUaWFtYWsuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFua2UgRXVtZWwgKFNyYWJpLCAgOS4gTWFyIDIwMDAsIDE5OjExOjA2KToKCk1laW4gYXJtZXIgU2NodXR6ICEhIQoKIEV1bWVsICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRlaW4gU2NodXR6IGxvZXN0IHNpY2ggbGFuZ3NhbSBhdWYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFua2UgRXVtZWwgKFByeWRlLCAgOS4gTWFyIDIwMDAsIDE5OjEyOjI0KToKfiMhIHJuPVNyYWJpIHJ0PTk1MjYyNTQ2NiByZz1zY2htYXJybgp+IyEgdGlkPTk1MjYyNTQ2NgpOYSB0b2xsLCBqZXR6dCBoYWJlbiBkaWUgS2FlbXBmZXIgYXVjaCBub2NoIFNjaHV0eiEKKndpbGRtaXRkZW1hYndlcnR1bmdzZmFlaG5jaGVud2VkZWwqIAogIFAqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERhbmtlIEV1bWVsIChOZXZvaywgIDkuIE1hciAyMDAwLCAxOToxNDowMCk6Cn4jISBybj1QcnlkZSBydD05NTI2MjU1NDQgcmc9c2NobWFycm4KfiMhIHRpZD05NTI2MjU0NjYKVW5kIGRhcyBtaXQgZGVtIGFid2VydGVuIHZvbiBuZW0ga2FyYXRlcnVkZWxtaXRnbGllZC4uLi5hbHNvIG5lLi4uLi4uCgpOZXZvayBraWNoZXJ0IHNpY2ggZWluZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTmV2b2ssICA5LiBNYXIgMjAwMCwgMjI6Mjg6MzQpOgpEZWluIEZyZXVuZCBQYXJzaXZhbCB0ZWlsdCBEaXIgbWl0OiB3YWFhYWFhYWFhYWFhYWFhYWFhYWgKW1RvZDpMYXJzXSBFaW4gT3JrIGhhdCBnZXJhZGUgUGFyc2l2YWwgdW1nZWJyYWNodC4KCk5ldm9rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRlJBVUVOISAoS2FydG9mZmVsLCAgOS4gTWFyIDIwMDAsIDIzOjIwOjA3KToKfiMhIHJuPUx1ZyBydD05NTI1NTc5ODcgcmc9c2NobWFycm4KfiMhIHRpZD05NTI1NTc5ODcKUG9laCwgd2FzIHppZWhzdCBEdSBhdWNoIHVlYmVyIG1laW4gRmVsaW5jaGVuIGhlci4uLgoKJ1RvZmZlbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRmFyYmlnZSBUZXh0ZSAoR3JpbW1ib3JuLCAxMC4gTWFyIDIwMDAsIDAwOjQxOjE2KToKfiMhIG9uPUdyaW1tYm9ybiBvdD05NTI2NDUyNzAgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUx1ZyBydD05NTI1NTU4NDQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NTI1NDE5NTYKTHVnPyBXYXMgd2lsbHN0IER1IG1pdCBkZW0gVHJpY2h0ZXI/CkFlaCwgd2VubiBpY2hzIG1pciByZWNodCB1ZWJlcmxlZ2UgaW50ZXJlc3NpZXJ0IG1pY2ggZGFzIG5pY2h0IHdpcmtsaWNoLiBLZWluZQpEZXRhaWxzLCBiaXR0ZS4gCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKE1vcmdvdGgsIDEwLiBNYXIgMjAwMCwgMDc6NDQ6NDkpOgp+IyEgcm49TmV2b2sgcnQ9OTUyNjM3MzE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUyNjM3MzE0Ci1oIHN0cmlrZSAhCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRHJha29uaWVyZmVzdHVuZyAoQmFtYmksIDEwLiBNYXIgMjAwMCwgMTA6MDk6MjUpOgp+IyEgcm49U3RpbmcgcnQ9OTUyNjIxOTc0IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTk1MjUwMzkzNQpHaWx0IGRhcyBhdWNoIGZ1ZXIgTmFtZW4gdm9uIFNwaWVsZXJuL1NlaGVybi9NYWdpZXJuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEljaCBidWdnZSBuaWNodCAhIDstKSAoQWxpbmUsIDEwLiBNYXIgMjAwMCwgMTE6MDU6MTMpOgp+IyEgcm49TW9yZ290aCBydD05NTI2MDk3MjAgcmc9c2NobWFycm4KfiMhIHRpZD05NTI2MDk3MjAKCkhtbSwgZGFzcyBEdSB2b24gZWluZW0gT3JrIG1pdCBUaWFtYWsgYmVncnVlc3N0IHdpcnN0LApnaWJ0IG1pciB6dSBkZW5rZW4uIDopCgpBbGluZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWxsZ2VtZWluZSBFcmxlaWNodGVydW5nICh1bmdla3Vlcnp0KSAoS2FmZiwgMTAuIE1hciAyMDAwLCAxMTo1MTozNyk6CkRyb2xsaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKRGVyIEJvZGVuIGJlZ2lubnQgenUgeml0dGVybiB1bmQgYW0gSG9yaXpvbnQgc2NoZWludCBkZXIgSGltbWVsIHp1IGJyZW5uZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphZWggamEuLi4uLi4gKE5ldm9rLCAxMC4gTWFyIDIwMDAsIDE4OjA1OjM1KToKRGVpbiBGcmV1bmQgSGVyb21jZmx5IHRlaWx0IERpciBtaXQ6IGFyZ2wgd2FydW0gc2FndCBtaXIgbWFsIHdpZWRlciBuaWVtYW5kCkRlaW4gRnJldW5kIEhlcm9tY2ZseSB0ZWlsdCBEaXIgbWl0OiBkYXMgaWNoIHRhdWIgYmluID8KCkhtbW1tbW0uLi4uLkRpciBzb2xsIGplbWFuZCBfc2FnZW5fIGRhc3MgRHUgX3RhdWJfIGJpc3Q/IDopCgpOZXZvawpQLlMuOiBMaXBwZW5sZXNlbiBsZXJuZW4ga29lbm50ZSB6dW0gVm9ydGVpbCBnZXJlaWNoZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnJvdGZsIChUaHVmaGlyLCAxMC4gTWFyIDIwMDAsIDE4OjU4OjE1KToKW1RydmVzOlNreV0gYWJlciBkaWUgKHdpY2h0aWdlbikgemF1YmVyZXIgc2luZCBlaCBlbGZlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAxMy4gTWFyIDIwMDAsIDExOjI3OjU3KToKIldlciBkZW4gQmF1bSBwZmxhbnp0IGtyaWVndCBzZWx0ZW4gZGllIEZydWVjaHRlIHp1IHByb2JpZXJlbi4iIChzY2h3ZWRpc2NoKQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BydWNoIGRlciBXb2NoZSAoQmVuZGVpZ2lkLCAxMy4gTWFyIDIwMDAsIDExOjI5OjAyKToKfiMhIHJuPUdyaW1tYm9ybiBydD05NTI5NDMyNzcgcmc9c2NobWFycm4KfiMhIHRpZD05NTI5NDMyNzcKRnVlciBzY2h3ZWRpc2NoIGlzdCBkYXMgYWJlciBndXQgenUgdmVyc3RlaGVuLiBvZGVyIGthbm4gaWNoIHNjaHdlZGlzY2g/IGhtLApvZmZlbnNpY2h0bGljaCA6KQoKQmVuKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTcHJ1Y2ggZGVyIFdvY2hlIChHcmltbWJvcm4sIDEzLiBNYXIgMjAwMCwgMTE6MzA6MDApOgp+IyEgcm49QmVuZGVpZ2lkIHJ0PTk1Mjk0MzM0MiByZz1zY2htYXJybgp+IyEgdGlkPTk1Mjk0MzI3NwpUamEsIGRhcyBpc3QgbWVpbmUgbmV1ZSBCYWJlbHRhc3RhdHVyLiBFeHRyZW0gcHJha3Rpc2NoLiBMYWV1ZnQgbmF0dWVybGljaAphdWNoIHVudGVyIExpbnV4LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgd2FyIChEZWVwYmx1ZSwgMTQuIE1hciAyMDAwLCAxNToxOToxMSk6CltBbGxnZW1laW46Um9jaHVzXSBzaW5kIGRvY2ggYWxsZXMgbmF0dXJrYXRhc3Ryb3BoZW4gOikKCkVpbiBHb2JsaW4ga29tbXQgYW4uCkVpbiBHb2JsaW4ga29tbXQgYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGhqYSAoTW9yZ290aCwgMTUuIE1hciAyMDAwLCAxMDoyMTowOCk6ClBhcmFjZWxzdXMgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVyIEJvZGVuIGJlZ2lubnQgenUgeml0dGVybiB1bmQgYW0gSG9yaXpvbnQgc2NoZWludCBkZXIgSGltbWVsIHp1IGJyZW5uZW4uCgpNKiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndpZSBpY2ggZXMgbGllYmUuLi4gKExvbGxpLCAxNi4gTWFyIDIwMDAsIDEwOjMwOjU0KToKRHUgemVyc2NobWV0dGVyc3QgZGVuIFdpcnQgaW4ga2xlaW5lIFN0dWVja2NoZW4uCkRvbGxhciBncmVpZnQgZGVuIFdpcnQgbWl0IGVpbmVtIHNlaHIgZ2VsdW5nZW5lbiBTb3RvLXNodXRvLXVjaGkgYW4uCkRvbGxhciB6ZXJzY2htZXR0ZXJ0IGRlbiBXaXJ0IGluIGtsZWluZSBTdHVlY2tjaGVuLgpEZXIgV2lydCBmYWVsbHQgdG90IHp1IEJvZGVuLgpEaWUgVmVyemF1YmVydW5nIERlaW5lciBIYWVuZGUgbGFlc3N0IGxhbmdzYW0gbmFjaC4KPiBEb2xsYXIgbmltbXQgZGFzIGxlZXJlIEJpZXJnbGFzLgpEb2xsYXIgbmltbXQgNTE5OSBNdWVuemVuLgpEb2xsYXIgbmltbXQgNTA5MSBNdWVuemVuLgpEb2xsYXIgbmltbXQgNDYyMiBNdWVuemVuLgpFaW4gV2lydCBrb21tdCBhbi4KRWluIEdhc3Qga29tbXQgYW4uCkVpbiBHYXN0IGtvbW10IGFuLgpFaW4gR2FzdCBrb21tdCBhbi4KRWluZSBIb2x6dHVlciBzY2hsaWVzc3Qgc2ljaC4KCnNvbGwgbWFuIHNpY2ggamV0enQgdWViZXIgZGVuIGdlbGRzZWdlbiBmcmV1ZW4gb2RlciB1ZWJlciBkZW4gcmVzZXQgYWVyZ2Vybj8KcmVzZXQgbmFjaCAxMCBzZWt1bmRlbiBpcyBzY2hvbiBlY2h0IGFldHplbmQuLi4KCkxvbGxpLCBoaW4gdW5kIGhlciBnZXJpc3NlbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdyb3NzZXMgYm9pbmcgKFJ1bWF0YSwgMTYuIE1hciAyMDAwLCAxMTozNTozNyk6Cgo+RHUgaG9lcnN0IGVpbiBHcm9sbGVuLiBEZXIgVnVsa2FuIGlzdCBtYWwgd2llZGVyIGFrdGl2Lgo+Qm9pbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEgICAgICAgICAgICAgICAgCgpSdW1hdGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3aWUgaWNoIGVzIGxpZWJlLi4uIChCYW1idWxrbywgMTYuIE1hciAyMDAwLCAxMjo1NDo0NSk6Cn4jISBybj1Mb2xsaSBydD05NTMxOTkwNTQgcmc9c2NobWFycm4KfiMhIHRpZD05NTMxOTkwNTQKSG1tbSwgaW4ga2xlaW5lIFN0dWVja2NoZW4gemVyc2NobWV0dGVybj8KCktyYXRla2FzIHVuZCBaYXViYmVyZXIgQWJ3ZXJ0ZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaWdlbmxpZWJlPyAoRGVlcGJsdWUsIDE2LiBNYXIgMjAwMCwgMTQ6NTg6MzcpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBIeWRyYWtvcGZzXSBTcGVsbGZpcmUsIGRpZSBIeWRyYSBpc3QgbWlyIGxpZWJlci4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNwcnVjaCBhdWYgKFRpYW1haywgMTYuIE1hciAyMDAwLCAyMToyNjowMyk6Cn4jISBvbj1IaXNhc3VsIG90PTk1MzIyNDE1NiBvZz1hbGxnZW1laW5lcwpxcXEKcXEKcQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNwcnVjaCBhdWYgKFRpYW1haywgMTYuIE1hciAyMDAwLCAyMToyNjowNSk6Cn4jISBvbj1KYW1hbHNraSBvdD05NTMyMzI2ODcgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUhpc2FzdWwgcnQ9OTUzMjI0MTU2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTUzMjI0MTU2Cj5xcXEKPnFxCj5xCgpJc3QgJ1NwcnVjaGF1ZicgZGllIHNjaHJpZnRsaWNoZSBWZXJzaW9uIHZvbiBTY2hsdWNrYXVmPwoKSmFtYWxza2ksIHZlcmJsdWVmZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZlaWdlciBHbm9tIChMYW5mZWFyLCAxNi4gTWFyIDIwMDAsIDIzOjA2OjA5KToKVGVhbSAyOiBMYW5mZWFyIHN0YXJ0ZXQgZGVuIEFuZ3JpZmYuIAo+IE9rLgpGb29iYXIgZ3JlaWZ0IGRlbiBHbm9tIG1pdCBlaW5lbSBNb3JnZW5zdGVybiBhbi4KRm9vYmFyIHRyaWZmdCBkZW4gR25vbSBzZWhyIGhhcnQuCkR1IGdyZWlmc3QgZGVuIEdub20gbWl0IHNhZXVyZXRyaWVmZW5kZW4gSGFlbmRlbiBhbi4KRHUgdHJpZmZzdCBkZW4gR25vbSBzZWhyIGhhcnQuCkR1IGdyZWlmc3QgZGVuIEdub20gbWl0IHNhZXVyZXRyaWVmZW5kZW4gSGFlbmRlbiBhbi4KRHUgc2NobGFlZ3N0IGRlbiBHbm9tIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCkRlciBHbm9tIGdyZWlmdCBMYW5mZWFyIG1pdCBzZWluZW4ga3JhZWZ0aWdlbiBBcm1lbiBhbi4KRGVyIEdub20gdHJpZmZ0IExhbmZlYXIgaGFydC4KRGVyIEdub20gbGFuZ3Qga3JhZWZpZyB6dS4KTGFuZmVhciBncmVpZnQgZGVuIEdub20gbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4KTGFuZmVhciB2ZXJmZWhsdCBkZW4gR25vbS4KRGVyIEdub20gc2V0enQgc2ljaCBsYW5nc2FtIHdpZWRlciBpbiBzZWluZSBOaXNjaGUgdW5kIHNjaGxhZWZ0IGVpbi4KCkFsc28gZGFzIGlzdCBzY2hvbiBlY2h0IGZyZWNoIDopCgpMYW5mZWFyIC0gZ2VrcmFlbmt0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYWRyZWljcyBUaXNjaGUgc2luZCBkaWUgYmVzdGVuLi4uIChGZWhsZXIsIDE3LiBNYXIgMjAwMCwgMTQ6NDk6MTYpOgpFbGJlcmV0IGZsaWVndCBoZXJlaW4uCkVsYmVyZXQgc3RyZWljaHQgbWl0IGVpbmVtIHNlbHRzYW1lbiBTdGVpbiB1ZWJlciBlaW5lbiBUaXNjaC4KRWluIFRpc2NoIHNjaGF1dCBFbGJlcmV0IGZyYWdlbmQgYW4uCkVsYmVyZXQgZmxpZWd0IG5hY2ggTm9yZGVuLgo+IHVudCB0aXNjaApEZXJ6ZWl0IHNpdHp0IG5vY2ggbmllbWFuZCBhbSBUaXNjaC4KU29sbHRlc3QgRHUgbWl0c3BpZWxlbiB3b2xsZW4uLi4gKFN5bnRheDogc3BpZWxlIG1hZXhjaGVuKQoKKnNjaHVldHRlbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhcGFnZWllbiAuLi4gKEFzaGFuLCAxNy4gTWFyIDIwMDAsIDIxOjUxOjU3KToKVG90ZW5rb3BmIHdhbmRlbHQgaGVyZWluLgpHYXBwbyBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIFRvdGVua29wZiAuLi4gCkdhcHBvIGtyYWVjaHp0OiAuLi4gSWNoIGhhYmUgQW5nc3QuIC4uLiBJY2ggaGFiZSBBbmdzdC4gLi4uIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWnVja2VyYnJvdCB1bmQgUGVpdHNjaGU/IChUaWFtYWssIDE3LiBNYXIgMjAwMCwgMjM6MTY6MTQpOgpYeHggdGVpbHQgRGlyIG1pdDoga2FubnN0IER1IG1pciAnbmUgaW5mbyBnZWJlbj8gdW0gZGVuIHNjaGVtZW4gaW0KWHh4IHRlaWx0IERpciBtaXQ6IGR1ZXN0ZXJ3YWxkIGt1cnNpZXJlbiBnZXJ1ZWNodGUuIEVzIHdpcmQgYmVoYXVwdGV0LCBkZXIKWHh4IHRlaWx0IERpciBtaXQ6IHNvbGwgMiBzdHVwc2UgZ2ViZW4sIGVzIHdpcmQgYmVoYXVwdGV0LCBkZXIgc29sbCBhdWYgMzAKWHh4IHRlaWx0IERpciBtaXQ6IGVyaG9laHQgd29yZGVuIHNlaW4sIHVuZCBlcyB3aXJkIGdlc2FndCwgZGVyIHNvbGwgMApYeHggdGVpbHQgRGlyIG1pdDogZ2ViZW4sIHRyb3R6IGtlcmJob2x6LiBXYXMgaXN0IGRhIG51biB3YWhyPyAoaWNoIHdpbGwKWHh4IHRlaWx0IERpciBtaXQ6IG5pY2h0IGJlaSBpaG0gc3RlcmJlbiwgb2huZSBkYXNzIGVzIHNpY2ggZ2Vsb2hudCBoYXQpCgpEdSB0ZWlsc3QgWHh4IG1pdDogZm9yZGVyc3QgZHUgbWljaCBqZXR6dCB6dXIgU3BpZWxlcmhpbGZlIGF1Zj8KClh4eCB0ZWlsdCBEaXIgbWl0OiBIbS4uIGljaCBzZWggZGFzIG5pY2h0IGFscyBkaXJla3RlIFNwaWVsZXJoaWxmZS4KCkR1IHRlaWxzdCBYeHggbWl0OiBlcyBpc3Qgc2Nob24gQWJzaWNodCwgZGFzcyBTcGllbGVyIG5pY2h0IGRpZSBleGFrdGVuCkR1IHRlaWxzdCBYeHggbWl0OiBaYWhsZW4gc2VoZW4ga29lbm5lbi4gRGFzcyBNYWdpZXIgZGFubiBkaWUgImZlaGxlbmRlbiIKRHUgdGVpbHN0IFh4eCBtaXQ6IEF1c2t1ZW5mdGUgZ2ViZW4sIGlzdCBuaWNodCBpbSBTaW5uZSBkZXMgRXJmaW5kZXJzLgoKWHh4IHRlaWx0IERpciBtaXQ6IERhbm4gRGVpbmVuIG5ldHRlbiBBZW5kZXJ1bmdlbiBrYW5uIG1hbiBhdWNoIG5pbW1lcgpYeHggdGVpbHQgRGlyIG1pdDogZmVzdHN0ZWxsZW4sIG9iIHdhcyBTdHVwc2UgYnJpbmd0ICpncnVtbWVsKgoKWHh4IHJ1ZnQ6IERpZSBzcGlubmVuLCBkaWUgRXJ6bWFnaWVyIQoKClRpYW1hay4gRnJldXQgc2ljaCBpbW1lciB1ZWJlciBmcmV1bmRsaWNoZSBTcGllbGVyIF06LT4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmx1ZyBpcyB6YXViZXJlcj8/IChTa3ksIDE3LiBNYXIgMjAwMCwgMjM6Mzk6NTYpOgpbQWxsZ2VtZWluOkx1Z10gQWJyYSBBYnJhIEthLi4uCkRlaW5lIFNjaHVoZSBnbHVlaGVuIGt1cnogYXVmIHVuZCBoZWlsZW4gRGljaCBlaW4gd2VuaWcuCgp3YXNzbiB0cmljayA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGx1ZyBpcyB6YXViZXJlcj8/IChMdWcsIDE3LiBNYXIgMjAwMCwgMjM6NDA6MjQpOgp+IyEgcm49U2t5IHJ0PTk1MzMzMjc5NiByZz1zY2htYXJybgp+IyEgdGlkPTk1MzMzMjc5NgoKVm9sbCBkaWUgQmVsZWlkaWd1bmcuLi4KCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIG1hbiBzaWNoIG5pY2h0IGFsbGVzIGJpZXRlbiBsYXNzZW4gbXVzcyAoUGFyc2l2YWwsIDE4LiBNYXIgMjAwMCwgMDA6NTQ6MzApOgpEdSBzY2hpbXBmc3Q6IEljaCBnZWIgRGlyIG5lIGZhaXJlIENoYW5jZSB1bmQgc3RlY2tlIG1laW5lIFdhZmZlIHdlZy4KRGVyIEtudXRzY2hmaXNjaCBmcmV1dCBzaWNoIHVuZCBodWVwZnQgd2lsZCBkdXJjaCBkaWUgR2VnZW5kLgpEZXIgS251dHNjaGZpc2NoIGZyZXV0IHNpY2ggdW5kIGh1ZXBmdCB3aWxkIGR1cmNoIGRpZSBHZWdlbmQuCkRlciBLbnV0c2NoZmlzY2ggZnJldXQgc2ljaCB1bmQgaHVlcGZ0IHdpbGQgZHVyY2ggZGllIEdlZ2VuZC4KCkRpZSBuZWhtZW4gbWljaCB3b2hsIG5pY2h0IGVybnN0Li4uLiAqZ3J1ZWJlbCoKClBhcnNpdmFsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCaW4gaWNoIHVuYmVsaWVidD8gKFZhbmlvbiwgMTguIE1hciAyMDAwLCAxODo0ODo1Nik6CkthdW0ga29tbSBpY2ggaW4gZGVuIFJhdW06CgpCaWdhcyB6aXR0ZXJ0IHZvciBBbmdzdC4KU2x5Zm94IGphbW1lcnQgdW0gR3JlbmR1bGEuClZ1bHRhcyBncmluc3QgRGljaCBhbi4KClZhbmlvbi4gU29sbHRlIG1hbCB3YXMgZnVlciBzZWluIEltYWdlIHR1bi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnRvbGxlIHJvc2VuIDopIChHYXJuaXgsIDE5LiBNYXIgMjAwMCwgMDE6NTE6NTIpOgplYmVuIGluIHB2IDopCnJpZWNoZSBhbiByb3NlLgpEdSB2ZXJuaW1tc3QgZGVuIGFuZ2VuZWhtZW4gR2VydWNoIHZvbiBQaXp6YS4KCndhcyBkYXMgd29obCBmdWVyIGVpbmUgenVlY2h0dW5nIGlzdC4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkd1dCBkcmVzc2llcnQgLi4uIDstKSAoTGlhcmEsIDIwLiBNYXIgMjAwMCwgMDE6NDM6MDUpOgpEdSBob2Vyc3QgZWluIGxhdXRlcyBLbGF0c2NoZW4uCk1vemFydCB0cmFidCBtaXQgdm9sbGVtIEVsYW4gaGVyZWluLgpJbWRhIHN0ZWNrdCBlaW5lIERhZW1vbmVucGVpdHNjaGUgenVydWVjay4KCkxpYXJhLCBad2VyZ2VuemF1YmVyaW5lLCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU293YXMuLi4gKFN3b3RsLCAyMC4gTWFyIDIwMDAsIDE0OjQ0OjA3KToKRWluIEdvYmxpbiBpc3QgYWJzb2x1dCBmaXQuCiAgLi4uLkthcmF0ZS9Nc2cuLigtKS4uLi4gRHUuLi4uLi4uLi4uLiA6IEdvYmxpbi4uLi4uLi4gKioqKioqKiogLT4gZ2VrcmF0enQKRGVyIEdvYmxpbiBmYWVsbHQgdG90IHp1IEJvZGVuLgoKSGF0IG1pY2ggZWNodCBnZXd1bmRlcnQuLi4uYmlzIGljaCBnZW1lcmt0IGhhYmUsIGRhc3MgendlaSBHb2JsaW5zIGltIApSYXVtIHNpbmQgOy0pCgpTd290bAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFp1Y2tlcmJyb3QgdW5kIFBlaXRzY2hlPyAoV2ltLCAyMC4gTWFyIDIwMDAsIDE2OjA2OjUzKToKfiMhIHJuPVRpYW1hayBydD05NTMzMzEzNzQgcmc9c2NobWFycm4KfiMhIHRpZD05NTMzMzEzNzQKRGllIHNwaW5uZW4sIGRpZSBYeHgnZXIuLi4KCldpbSwgd2Vpc3MgZ2VuYXUgdW0gd2VsY2hlbiBOUEMgZXMgZ2VodCB1bmQgaGF0IGRlbiBnZW5hdWVuIFdlcnQgYXVjaCBzZWxiZXIKZWluZ2V0cmFnZW4uLi4KKE5laW4sIGljaCB2ZXJyYXRlIGVzIGF1Y2ggbmljaHQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDYXR0eXMgd2FocmVzIEdlc2ljaHQgKEF0b3osIDIwLiBNYXIgMjAwMCwgMTc6MjA6NTQpOgoKaHR0cDovL3d3dy50b3BlbmQuY29tLmF1L35kYXZvL2NhdHdlYXpsZS9pbmRleC5odG1sCgoKQXRveiAtIHNjaHJlaWJ0IHNjaG9uIG1hbCBzZWluIFRlc3RhbWVudAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IENhdHR5cyB3YWhyZXMgR2VzaWNodCAoUGFyYWNlbHN1cywgMjAuIE1hciAyMDAwLCAxNzoyMjoxNik6Cn4jISBybj1BdG96IHJ0PTk1MzU2OTI1NCByZz1zY2htYXJybgp+IyEgdGlkPTk1MzU2OTI1NApBbHNvIGlyZ2VuZHdpZSBtdXNzIGljaCBiZWkgZGVtIEFuYmxpY2sgZWhlciBhbiBSb2NodXMgZGVua2VuIC4uLgoKUGFyYWNlbHN1cy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQ2F0dHlzIHdhaHJlcyBHZXNpY2h0IChBdG96LCAyMC4gTWFyIDIwMDAsIDE3OjIzOjEwKToKfiMhIHJuPVBhcmFjZWxzdXMgcnQ9OTUzNTY5MzM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUzNTY5MjU0CgpEYSBzaWVoc3QgRHUgbWFsIHdpZSB3aXIgaGllciBpbW1lciBnZXRhZXVzY2h0IHd1cmRlbiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9laG0sIG5pY2h0ID8/PyAoSmFzb25yaWdpZCwgMjAuIE1hciAyMDAwLCAxNzozMzo0NCk6CkRpZXMgaXN0IGVpbmUgQmVzY2hyZWlidW5nLCB2aWVsIFNwYXNzIGJlaW0gTGVzZW4uCgotPnVudCBzcGFzcwoKU293YXMgc2llaHN0IER1IGRhIG5pY2h0IQoKCk5pY2h0ID8/IEljaCBkZW5rZSBzY2hvbiA6KQoKSmFzb24sIGtpY2hlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bm1hcmtpZXJ0ZSAydGllcz8gOykgKEthcmljLCAyMS4gTWFyIDIwMDAsIDAwOjE5OjEyKToKRGVpbmUgRnJldW5kaW4gWmVwaHlyIGtudWRkZWx0IERpY2ggenVtIEFic2NoaWVkIGF1cyBkZXIgRmVybmUuCkRlaW5lIEZyZXVuZGluIFplcGh5ciB0ZWlsdCBEaXIgbWl0OiBpY2ggdmVyemllaCAgbWljaCBtYWwuIEJpIHMgbW9yZ2VuCkRlaW5lIEZyZXVuZGluIFplcGh5ciB0ZWlsdCBEaXIgbWl0OiB2aWVsbGVpY2h0IDopCkRpZSBIeWRyYSBlcmhlYnQgc2ljaCBhdXMgZGVtIFRhbCBkZXIgTHVwaW5lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkx1ZyB1bmQgc2VpbmUgTGV1dGUgLi4uIChHcmltbWFuLCAyMS4gTWFyIDIwMDAsIDAxOjE3OjM2KToKIFtBbGxnZW1laW46R3JpbGxlXSB6YWVobCBtYWwgZGVpbmUgaGFhcmUgc3Vlc3NlciA6KQogW0FsbGdlbWVpbjpMdWddIEhvZWNoc3RlbnMgRGVpbmUgYXVmIGRlbiBaYWVobmVuLi4uIApQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgR3JpbGxlLgpHcmlsbGUgZ2VodCBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KCkljaCB3dXNzdGUgZXMgc2Nob24gaW1tZXIgLi4uIGF1ZiBzb3dhcyBzdGVoZW4gc2llIGFsbGUgbmljaHQgOikKCkdyaW1NYW4gLCB3dXNzdGUgZXMgc2Nob24gaW1tZXIgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCcmF2Li4uIChMdWcsIDIxLiBNYXIgMjAwMCwgMDE6MzI6MzIpOgoKClNvOgoKRWluIFdhZWNodGVyIGRlciBHYXJkZS4KRWluIFdhZWNodGVyIGRlciBHYXJkZS4KRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IEtvbWlzY2ggc2VpdCB3YW5uIHN0ZWhlbiBkaWUgR2FyZGllcyBydW0gdW5kCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBkZXIgTXVsYWkgaXN0IHdlY2g/CkRlciBXYWVjaHRlciBkZXIgR2FyZGUgYnJ1ZWxsdDogQUFBQUFBQUNIVFVORyAhCk11bGFpIE9sb3JuIHRpciBUYWlybmdpcmUga29tbXQgYW4uCkRlciBXYWVjaHRlciBkZXIgR2FyZGUgc2FndDogTGFuZyBsZWJlIGRlciBNdWxhaSAhCgpTTyBnZWhvZXJ0IHNpY2ggZGFzLCB3ZW5uIGFlbHRlcmUgU2VoZXIgcnVmZW4uLi4KTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJlcmxpbmVyIGluIEFhY2hlbiAoRmVobGVyLCAyMS4gTWFyIDIwMDAsIDA5OjU0OjQ5KToKfiMhIHJuPUd1YXJkIHJ0PTk1MzYyNDQ5MCByZz10cmVmZmVuCn4jISB0aWQ9OTUzNTg2ODcwCiJHcmltbWkiIGlzdCB1bmQgd2FyIHNjaG9uIGltbWVyIEdyaW1tYm9ybiAtIHR1dCBtaXIgbGVpZCwgR3VhcmQgOykuCkR1IG11c3N0IEdyaW1NYW4gKHdhcnVtIGhhdCBlciBkYXMgIk1hbiIgZWlnZW50bGljaCBpbSBOYW1lbj8gR2xhdWJ0Cm1hbiBlcyBpaG0gc29uc3QgbmljaHQgOykgPykgd29obCBvZGVyIHVlYmVsICJHcmltbWllIiBbKGMpIExpYXJhXQpuZW5uZW4sIHVtIGlobiBlaW5kZXV0aWcgenUgcmVmZXJlbnppZXJlbi4gOm8pCgpNYWNoIG1pY2ggbmljaCEgOykKZXJyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5kYW5rYmFyZSBBbmZhZW5nZXIuLi4gKEh1bW5pLCAyMS4gTWFyIDIwMDAsIDE1OjEyOjE1KToKU293YXMhCgpEdSBzYWdzdDogQWxzbyB6LkIuIC1hbmZhZW5nZXIrClJvbmRyZWFuIGZyYWd0OiBVbmQgd2FzIGlzdCBkYW5uIGFuZGVycz8KRHUgc2Fnc3Q6IGRhbm4gaG9lcnN0IER1IGFsbGVzIHdhcyBnZXNhZ3Qgd2lyZCBhdWYgZGVyIGVudHNwcmVjaGVuZGVuIEViZW5lLgpSb25kcmVhbiBzYWd0OiBhc28hClJvbmRyZWFuIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBSb25kcmVhbi4KClVwcy4uLi53YXIgZGFzIHNvbyBtaXNzdmVyc3RhZW5kbGljaD8/PwpTaW5kIEViZW5lbiBib2VzZT8/CgpJc3QgZGllIEFuZmFlbmdlci1FYmVuZSBlaW4gQXV0b2xvZ291dC1Ta3JpcHQ/PwoKKkFSR0wqCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0aW1pbmcgKExhbmZlYXIsIDIxLiBNYXIgMjAwMCwgMTY6NDc6NDApOgpbVG9kOkxhcnNdIEVpbiBTcHJ1bmcgdm9uIGRlciBCcnVlY2tlIGhhdCBnZXJhZGUgWW9ycmVsIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNwcnVuZyB2b24gZGVyIEJydWVja2VdIFNlbGJzdG1vcmQgaXN0IGtlaW5lIExvZXN1bmchCltHcmF0czpHb2xhc10gdm9sbCBndXV1dWh1dXV1aHV1dXV0CltHcmF0czpEb2NkZXZpbF0gR1JBQUFBQUFBQUFBQUFBQUFBQUFBQUFUUwpbR3JhdHM6Q2hvamluXSBncmF0cwpbR3JhdHM6S2F0emVudGFudGVdIEljaCBncmF0dWxpZXJlIERpciB1bmQgc2NodWV0dGVsIGRpciBrcmFlZnRpZyBkaWUgSGFlbmRlCgpOdXIgZmFsc2NoZXMgVGltaW5nLCBvZGVyIGF1Y2ggZWluIHdlbmlnIFNjaGFkZW5mcmV1ZGUgPyA6KQpMYW5mZWFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYW4ga2VubnQgaWhuIG5vY2guLi4gKEx1ZywgMjEuIE1hciAyMDAwLCAyMzowMjoxNCk6CgpbQmVpbGVpZDpMdWddIFdpZSBoaWVzcyBLZXlzIFN0ZXJiaWUgbm9jaD8KW0JlaWxlaWQ6TWlhdW9taV0gS2V5CltCZWlsZWlkOlRyYXVtYV0ga2V5ID8gOikKW0JlaWxlaWQ6RWlzaV0gS2V5IQoKCkhpaGloaWhpaGloaWhpaGloaWhpaGloaWhpaGloaWhpaGloaWhpCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FsdCBpc3Nlcy4uLiAoV3Vyc3QsIDIyLiBNYXIgMjAwMCwgMDA6NTQ6NTUpOgoKID4gW1RvZDpMYXJzXSBFaW4gRHJhY2hlIGhhdCBnZXJhZGUgU21pbGV5IHVtZ2VicmFjaHQuCiBbLi4uXQogW0JlaWxlaWQ6QW1hcnlsbGlzXSBrYWx0IGlzc2VzIGRyYXVzc2VuLi4uIGhvZmZlbnRsaWNoIHJ1dHNjaGVuIGRpZQogW0JlaWxlaWQ6QW1hcnlsbGlzXSBTYXJndHJhZWdlciBuaWNodCBhdXMuLi4gKnJ1bW1zKgoKIFtnbGVpY2ggZHJhdWZdCiBbVG9kOkxhcnNdIEVpbmUgZWlzaWdlIFJ1dHNjaHBhcnRpZSBoYXQgZ2VyYWRlIEZpcmVoYXdrIHVtZ2VicmFjaHQuCiBbVG9kOkVpbmUgZWlzaWdlIFJ1dHNjaHBhcnRpZV0gVXBzLCB3aWUgZGFzPyBJY2ggd29sbHRlIGRvY2ggbnVyIGhlbGZlbi4KCiBNZW5zY2gsIFNhcmd0cmFlZ2VyIEZpcmVoYXdrISBVbmQgQW1hcnlsbGlzIHNhZ3Qgbm9jaC4uLgoKCiBFaW5lIGtvcGZzY2h1ZXR0ZWxuZGUgV3Vyc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkltbWVyIHdpZWRlciBzY2hvZW4uLi4gOykgKFpvb2ssIDIyLiBNYXIgMjAwMCwgMTA6NDI6NDApOgpEdSB0ZWlsc3QgUmFzcHV0aW4gbWl0OiBpbW1lciBub2NoIG5pY2h0IGx2bCA1MD8KUmFzcHV0aW4gdGVpbHQgRGlyIG1pdDogKmxhY2gqIHdvdm9uIGRlbm4/CkR1IHRlaWxzdCBSYXNwdXRpbiBtaXQ6IGZvcnNjaGVuPwpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgpSYXNwdXRpbiB0ZWlsdCBEaXIgbWl0OiBpaGhoaAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5vbm5lIHRhbnpeaF5oXmheaHNjcm9sbHQgYXVzIGRlciBSZWloZSAoTW9yZ290aCwgMjIuIE1hciAyMDAwLCAxMjowMDo0MSk6CkRvbiBUaWFtYWsga2FlbXBmdCBnZWdlbiBXaW5kbV5IXkheSF5IXkhCdWdzIC0gRG9ydG11bmQgLSAKSHJlaWRtYXIgZnVlcmNodGV0IHNpY2ggdm9yIEJ1enpjdXRzIFRvY2h0ZXIgLSBEb3J0bXVuZCAtIApOb25uZSB1bmQgU3Bhcmt5IC0gRG9ydG11bmQgLSAKCk0qIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc29zbyAoRGVlcGJsdWUsIDIyLiBNYXIgMjAwMCwgMTc6MTQ6MzMpOgpNYWxpa2EgdW1hcm10IERpY2ggbGllYi4KRHUgZnVlaGxzdCBEaWNoIGJlbm9tbWVuLgotLT4gb2IgZGFzIHdhcyBtaXRlaW5hbmRlciB6dSB0dW4gaGF0PwpubgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWggamV0enQgamEgKFBhcmFjZWxzdXMsIDIyLiBNYXIgMjAwMCwgMjE6MjU6NTcpOgpbWmF1YmVyZXI6VGh1Zmhpcl0gYnllLCBzY2hudWNraQpQYWRyZWljICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVuZGFua2JhcmUgQW5mYWVuZ2VyLi4uIChBcHN1LCAyMi4gTWFyIDIwMDAsIDIxOjQzOjA0KToKfiMhIHJuPUh1bW5pIHJ0PTk1MzY0NzkzNSByZz1zY2htYXJybgp+IyEgdGlkPTk1MzY0NzkzNQpEQUZVRVIgOy0pCgpBcHN1LCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXJ6aWVzIChMdWcsIDIzLiBNYXIgMjAwMCwgMDE6NTQ6NDcpOgoKRGllIGhhbSBuaXggenUgdHVuLgoKWm9vayB0ZWlsdCBEaXIgbWl0OiBTY2hyZWliIG1hIHdhcyBpbm5lIE1QQS4KClRzcyB0c3MgdHNzCkFid2VydGVuCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVyemllcyAoUmFyZGlhbiwgMjMuIE1hciAyMDAwLCAwMTo1NjoyNyk6Cn4jISBybj1MdWcgcnQ9OTUzNzcyODg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUzNzcyODg3CgpXZW5uIG51ciBhbGxlIFNwaWVsZXIgbWFjaGVuIHd1ZXJkZW4sIHdhcyBkaWUgTWFnaWVyIHNhZ2VuLCBkYW5uIGdhZWJlIGVzCmtlaW5lIEJ1Z3MuLi4KClJhci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRXJ6aWVzIChMdWcsIDIzLiBNYXIgMjAwMCwgMDI6MDc6NTEpOgp+IyEgcm49UmFyZGlhbiBydD05NTM3NzI5ODcgcmc9c2NobWFycm4KfiMhIHRpZD05NTM3NzI4ODcKCkhBRUg/CgpLYXVzYWxlciBadXNhbW1lbmhhbmc/CgpGcmFnbGljaApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoamEuLi4gKEx1ZywgMjMuIE1hciAyMDAwLCAwMjo0Njo1MSk6CgpTb3dhcyBzaWVoc3QgRHUgYXVjaCBkYSBuaWNodCEKRXMgaGFuZGVsdCBzaWNoIHVtIGVpbmUgYWV1c3NlcnN0IGtvc3RiYXJlIERlY2tlLCBkaWUgbWl0IEdvbGRmYWVkZW4gZHVyY2gtCndpcmt0IGlzdC4gU2llIGhhdCBlaW4gd3VuZGVyc2Nob2VuZXMgTXVzdGVyLCBhdXMgS3JlaXNlbiwgUmF1dGVuIHVuZCBCbHVtZW4tCm9ybmFtZW50ZW4uCkR1IGZpbmRlc3QgYW4gZWluZXIgRGVja2Uga2VpbiAiTXVzdGVyIi4KCkFjaCBuZWU/Ckx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFcnppZXMgKFRhcmluYSwgMjMuIE1hciAyMDAwLCAwODoyNzozNCk6Cn4jISBybj1SYXJkaWFuIHJ0PTk1Mzc3Mjk4NyByZz1zY2htYXJybgp+IyEgdGlkPTk1Mzc3Mjg4NwpSYXJkaWFuOiBkaWUgU3BpZWxlciBTSU5EIGRpZSBidWdzLgoKVGFyaW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmdzdGhhc2UgKE1vcmdvdGgsIDIzLiBNYXIgMjAwMCwgMDk6MzM6MTgpOgpMZXVzZWwgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuCkxldXNlbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYWVtbGljaGUgRWxmZW4hIChUYXJpbmEsIDIzLiBNYXIgMjAwMCwgMjE6MTk6MjEpOgoKTXVsYWkgT2xvcm4gdGlyIFRhaXJuZ2lyZSBzdGVodCBhdWYgZGVyIFNjaHdlbGxlIGRlcyBUb2Rlcy4KICBEdSBncmVpZnN0IE11bGFpIE9sb3JuIHRpciBUYWlybmdpcmUgbWl0IGVpbmVtIHNlaHIgZ2VsdW5nZW5lbgpTb3RvLXNodXRvLXVjaGkgYW4uCiAgRHUgemVyc2NobWV0dGVyc3QgTXVsYWkgT2xvcm4gdGlyIFRhaXJuZ2lyZSBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KTXVsYWkgT2xvcm4gdGlyIFRhaXJuZ2lyZSBsYWVzc3QgZGVuIEhlaWxpZ2VuIFN0YWIgZGVyIEVsZmVuIGZhbGxlbi4KTXVsYWkgT2xvcm4gdGlyIFRhaXJuZ2lyZSBsYWVzc3QgZGVuIFdpcnJ3YXJybW9vcnN1bXBmZ3Jhc3NlaWRlbnVtaGFuZyBmYWxsZW4uCk11bGFpIE9sb3JuIHRpciBUYWlybmdpcmUgYmxpY2t0IERpY2ggdHJhdXJpZyBhbiB1bmQgZmFlbGx0IGluIHNpY2ggenVzYW1tZW4uCkRlciBXYWVjaHRlciBkZXIgR2FyZGUgYnJ1ZWxsdDogQUFBQUFBQUNIVFVORyAhCkRlciBXYWVjaHRlciBkZXIgR2FyZGUgYmVhZXVndCBEaWNoIG1pc3N0cmF1aXNjaC4gICAgICAgICAgICAgICAgICAgIAoKVGphLi4uIG5pY2h0IG51ciBiZWFldWdlbiwgZHJhdWZoYXVuIHdhZXIgYW5nZWJyYWNodCBnZXdlc2VuIDotKQoKVGFyaW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWx0c2FtLi4uIChMdWcsIDI0LiBNYXIgMjAwMCwgMDA6MTI6MjIpOgoKRHUgdGlwcHN0IG1pdCBkZW0gRnVzcyBhdWYgZGVtIEJvZGVuLgpUYXRqYW5hICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpPa2ksIGljaCBtYWNocyBuaWUgd2llZGVyLi4uCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FhYWFhaCAoQW5hY3Jpb24sIDI0LiBNYXIgMjAwMCwgMDA6NTc6MTkpOgpSdWJyaWsgNDM6IHNlaGVyLmVudHdpY2tsdW5nLCBBcnRpa2VsOiAxOCB2b24gMjAKUmU6IE1vcmdlbkdyYXVlbi1CYW5rIG1pdCBuZXVlbSBQcm9kdWt0ISAoTW9lcCwgMjQuIE1hciAyMDAwLCAwMDoyMToyMyk6CltCZXp1ZzogQXJ0aWtlbCAxIHZvbiBUaWFtYWsgdm9tIDIyLiBNYXIgMjAwMCwgMTQ6Mjg6MDNdCgpDb29sLCBzb3dhcyBoYWIgaWNoIG1pciBzY2hvbiBsYW5nZSBnZXd1ZW5zY2h0Lgo6d3EKRG9jZGV2aWwgYmVzY2h3b2VydCBlaW5lbiBEYWVtb25lbnRocm9uIGhlcmJlaSwgc2V0enQgc2ljaCB1bmQgZGVtYXRlcmFsaXNpZXJ0CnNpY2guClNseWZveCB3aXJkIHZvbiBlaW5lbiBQb3J0YWwgd2llZGVyIGF1c2dlc3B1Y2t0LgpTbHlmb3ggZ2VodCBuYWNoIE5vcmRvc3Rlbi4KU2x5Zm94IGtvbW10IGFuLgpTbHlmb3ggd2lyZCB2b24gZWluZW0gUG9ydGFsIHZlcnNjaGx1bmdlbi4KR2FiaSB0cml0dCBhdXMgZWluZXIgU2Nod2VmZWx3b2xrZS4KR2FiaSBnZWh0IG5hY2ggTm9yZG9zdGVuLgpHYWJpIGtvbW10IGFuLgpOdW1tZXJlaW5zIHRyaXR0IGF1cyBlaW5lciBTY2h3ZWZlbHdvbGtlLgpHYWJpIHZlcnNjaHdpbmRldCBtaXQgS25hbGwgdW5kIFNjaHdlZmVsZHVmdC4KTnVtbWVyZWlucyBzdGFwZnQgaGluYXVzIG5hY2ggTm9yZG9zdGVuLgpOdW1tZXJlaW5zIGtvbW10IGFuLgpOdW1tZXJlaW5zIHZlcnNjaHdpbmRldCBtaXQgS25hbGwgdW5kIFNjaHdlZmVsZHVmdC4KSXNpcyBlcnNjaGVpbnQuCklzaXMgZ2VodCBuYWNoIE5vcmRvc3Rlbi4KSXNpcyBrb21tdCBhbi4KSXNpcyB2ZXJzY2h3aW5kZXQuClNtdXQgdHJpdHQgYXVzIGVpbmVyIFNjaHdlZmVsd29sa2UuClNtdXQgZmxpZWd0IG5hY2ggTm9yZG9zdGVuLgpTbXV0IGZsaWVndCBoZXJlaW4uClNtdXQgdmVyc2Nod2luZGV0IG1pdCBLbmFsbCB1bmQgU2Nod2VmZWxkdWZ0LgpQb3NlaWRvbiB0cml0dCBhdXMgZWluZXIgU2Nod2VmZWx3b2xrZS4KUG9zZWlkb24gZ2VodCBuYWNoIE5vcmRvc3Rlbi4KUG9zZWlkb24ga29tbXQgYW4uClBvc2VpZG9uIHZlcnNjaHdpbmRldCBtaXQgS25hbGwgdW5kIFNjaHdlZmVsZHVmdC4KCgouLi4udXJncyAuLi4gd2FzIGVpbiBsYW5nZXIgYXJ0aWtlbCAuLi4ga2FtIHp1bWluZGVzdCBhbGxlcyBiaW5uZW4gMSBzZWsgLi4uCgpBbmFjKiAtIGltbWVyIG5vY2ggYWVjaHplbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FhYWFhaCAoVHJhdW1hLCAyNC4gTWFyIDIwMDAsIDAxOjEwOjIzKToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk1Mzg1NTgzOSByZz1zY2htYXJybgp+IyEgdGlkPTk1Mzg1NTgzOQp0ZiBydWxlei4KCmhtLCBpcm9uaWUgb2ZmID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYWFhYWFoIChUb2R6d2VpdGksIDI0LiBNYXIgMjAwMCwgMTE6NTk6MTApOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTUzODU1ODM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUzODU1ODM5CkF1ZiBBbmhpZWIgMTkxMy4uLiAobXV0dGVyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVG9sbGVyIFNwZWxsIDotKSAoUmluZ29yLCAyNC4gTWFyIDIwMDAsIDEzOjAzOjE3KToKRGVyIEVpc2dvbGVtIGxhZXNzdCBEZWluZSBCZXdlZ3VuZ2VuIGdlZnJpZXJlbi4KRHUga2FlbXBmc3QgamV0enQgc2NobmVsbGVyIQoqKioqIExQOiAxNDIgS1A6IDExNiAoLTMwKQogIER1IGdyZWlmc3QgZGVuIEVpc2dvbGVtIG1pdCBkZXIgRmV1ZXJheHQgYW4uCiAgRHUgdHJpZmZzdCBkZW4gRWlzZ29sZW0gc2VociBoYXJ0LgogIER1IGdyZWlmc3QgZGVuIEVpc2dvbGVtIG1pdCBkZXIgRmV1ZXJheHQgYW4uCiAgRHUgdHJpZmZzdCBkZW4gRWlzZ29sZW0gc2VociBoYXJ0LgogIER1IGdyZWlmc3QgZGVuIEVpc2dvbGVtIG1pdCBkZXIgRmV1ZXJheHQgYW4uCiAgRHUgdHJpZmZzdCBkZW4gRWlzZ29sZW0gc2VociBoYXJ0LgoKUmluZ29yIGRlbmt0IC4gbyBPKGthbm4gZGVyIGRhcyBvZWZ0ZXIgbWFjaGVuPyA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaGxhbmdlbiBtaXQgS2xhdWVuPyAoU3ZldGxhbmEsIDI0LiBNYXIgMjAwMCwgMTY6MTQ6MDYpOgpBaGphLCBzb3dhcyBnaWJ0J3MgYWxzbyBhdWNoLi4uCgogRWluZSBLbGF1ZSBlaW5lciBSaWVzZW5zY2hsYW5nZS4KClN2ZXRsYW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpyYWdlIChHb2xhcywgMjQuIE1hciAyMDAwLCAxNzoxMTo1Nik6CndhcyBuZSBzY2hlaXNzIHJ1bmRlIC4uLgoKWzxSYWdlPl0gRGVyIFN0aWNoIGdlaHQgYW4gSG9iby4KWzxSYWdlPl0gLS0tLS0tLS0tLS0tLS0tLS0tLS0KWzxSYWdlPl0gIC0zIFB1bmt0ZSBmdWVyIEhvYm8uCls8UmFnZT5dICAtNCBQdW5rdGUgZnVlciBCb2luZy4KWzxSYWdlPl0gIC0zIFB1bmt0ZSBmdWVyIFJvY2h1cy4KWzxSYWdlPl0gIC00IFB1bmt0ZSBmdWVyIEdvbGFzLgoKZ29sYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdld29ubmVuIDopIChHYXN0MiwgMjQuIE1hciAyMDAwLCAyMjowMjoyMyk6CmljaCB3ZWlzcyB6d2FyIG5pY2h0IHdpZSB1bmQgd2FydW0gYWJlci4uLjopClpsYXRrbyBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uClpsYXRrbyBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgooZmluZ2VyIFpsYXRrbykKWmxhdGtvIGlzdCBuaWNodCBhbndlc2VuZC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogTXVlbmNoZW4KWnVsZXR6dCBhdXNnZWxvZ2d0OiBEb24sICAxLiBKYW4gMTk3MCwgMDA6NTk6NTkgKDExMDQwZCAyMDo1OTo0MikKVm9sbGVyIE5hbWU6IFpsYXRrbyBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyClJhc3NlOiBad2VyZywgIEdpbGRlOiBBYmVudGV1cmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoClNwaWVsZXJsZXZlbDogMQpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBGcmUsIDI0LiBNYXIgMjAwMCwgMjE6NTk6MTUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh1YWh1YWh1YSAoTmV2b2ssIDI0LiBNYXIgMjAwMCwgMjI6MTY6NDkpOgpNZXJrZWwgd2lsbCB3aWVkZXIgS29wZm5vdGVuIGluIGRlciBTY2h1bGUKCkhhbWJ1cmcgKGRwYSkgLSBEaWUgZGVzaWduaWVydGUgQ0RVLUNoZWZpbiBNZXJrZWwgaGF0IHNpY2ggZGFmdWVyCmF1c2dlc3Byb2NoZW4sIGluIGRlciBTY2h1bGUgd2llZGVyIEtvcGZub3RlbiBlaW56dWZ1ZWhyZW4uIEluIGRlcgpCaWxkLVplaXR1bmcgc2FndGUgc2llLCBGbGVpc3MsIEJldHJhZ2VuIHVuZCBPcmRudW5nIHNlaWVuIFZvcmF1c3NldHp1bmdlbiwgdW0KaW4gZWluZXIgTGVpc3R1bmdzZ2VzZWxsc2NoYWZ0IGJlc3RlaGVuIHp1IGtvZW5uZW4uIERlciBEZXV0c2NoZSBFbHRlcm52ZXJlaW4KYmVncnVlc3N0IGRpZSBJbml0aWF0aXZlLiBJbiBkZW4gYWx0ZW4gQnVuZGVzbGFlbmRlcm4gc2luZCBkaWUgS29wZm5vdGVuIHNlaXQKZGVuIDcwZXIgSmFocmVuIGZhc3QgdWViZXJhbGwgYWJnZXNjaGFmZnQuIEluIGRlbiBuZXVlbiBCdW5kZXNsYWVuZGVybiB3dXJkZW4Kc2llIDE5OTAgYWJnZXNjaGFmZnQuIFNhY2hzZW4gZnVlaHJ0ZSBzaWUgamVkb2NoIGltIEZlYnJ1YXIgd2llZGVyIGVpbi4KCgoKT2huZSBXb3J0ZQoKTmV2b2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIdWFodWFodWEgKEZvb2JhciwgMjQuIE1hciAyMDAwLCAyMjo1Nzo0OSk6Cn4jISBybj1OZXZvayBydD05NTM5MzI2MDkgcmc9c2NobWFycm4KfiMhIHRpZD05NTM5MzI2MDkKTW9pbi4KCldhcyBnaWJ0IGVzIGRhbm4gZGFyYW4gYXVzenVzZXR6ZW4sIE5ldm9rPwoKRHUga29tbWVudGllcnN0IERlaW4gUG9zdGluZyB6d2FyIG1pdCAiT2huZSBXb3J0ZSIsIGRpZSBVZWJlcnNjaHJpZnQgRGVpbmVzCkFydGlrZWxzIGxhZXNzdCBtaWNoIGFiZXIgZG9jaCBlaW5lIGdld2lzc2UgQWJuZWlndW5nIGdlZ2VuIE1pc3MgTWVya2VscwpQbGFlbmUgc3B1ZXJlbi4KCkZvYmJhciwgbmV1Z2llcmlnZXIgWndlcmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEh1YWh1YWh1YSAoTmV2b2ssIDI0LiBNYXIgMjAwMCwgMjM6MDE6MzEpOgp+IyEgcm49Rm9vYmFyIHJ0PTk1MzkzNTA2OSByZz1zY2htYXJybgp+IyEgdGlkPTk1MzkzMjYwOQpBbXVlc2llcnVuZyAhPSBBYm5laWd1bmcKCk5ldm9rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvb3BzIDopIChCaWVyY2hlbiwgMjUuIE1hciAyMDAwLCAwMjo0OTozNSk6CkRyb2xsaSB0ZWlsdCBEaXIgbWl0OiB0ZXN0CkR1IHNjaGxhZWdzdCBEcm9sbGkgYXVzIGRlciBGZXJuZS4KRHJvbGxpIHRlaWx0IERpciBtaXQ6IHdpZSBnZWh0cyBrZXVsZT8gOikKRHJvbGxpIHRlaWx0IERpciBtaXQ6IGFoIHdpZSBpY2ggc2VoZSBnZWh0cyBkaXIgZ3V0IDoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9obmUgd29ydGUgKFZlY3RvciwgMjUuIE1hciAyMDAwLCAwNjozNjo0Nik6CgpbPE1hc3RlUj46SnVycnkgbGFlc3N0IGRpZSBFYmVuZSAnQmlnQnJvdGhlcicgZW50c3RlaGVuLl0KWzxNYXN0ZVI+Okp1cnJ5IGxhZXNzdCBkaWUgRWJlbmUgJ0ZyYXVlbnBvd2VyJyBlbnRzdGVoZW4uXQpbPE1hc3RlUj46SnVycnkgbGFlc3N0IGRpZSBFYmVuZSAnUmFkaW8nIGVudHN0ZWhlbi5dCls8TWFzdGVSPjpJUkMgbGFlc3N0IGRpZSBFYmVuZSAnI01HJyBlbnRzdGVoZW4uXQpbPE1hc3RlUj46SnVycnkgbGFlc3N0IGRpZSBFYmVuZSAnS2FybHNydWhlJyBlbnRzdGVoZW4uXQpbPE1hc3RlUj46SnVycnkgbGFlc3N0IGRpZSBFYmVuZSAnQW5mYWVuZ2VyJyBlbnRzdGVoZW4uXQpbPE1hc3RlUj46SnVycnkgbGFlc3N0IGRpZSBFYmVuZSAnWlQnIGVudHN0ZWhlbi5dCls8TWFzdGVSPjpKdXJyeSBsYWVzc3QgZGllIEViZW5lICdsaW51eCcgZW50c3RlaGVuLl0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNseWZveCBoYXQgZ2VzY2htYWNrLiAoVmFuaW9uLCAyNS4gTWFyIDIwMDAsIDExOjM3OjA4KToKWzxNYXN0ZVI+OkNhbGltZXJpb24gbGFlc3N0IGRpZSBFYmVuZSAnQmlnQnJvdGhlcicgZW50c3RlaGVuLl0KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFNseWZveC4KClZhbmlvbiwgbWFnIEJpZ0IqIGF1Y2ggbmljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2gsIGluIGRvcnRtdW5kLi4uIChNdXBmZWwsIDI1LiBNYXIgMjAwMCwgMTY6MjE6MDQpOgopZXMgZ2luZyBkcnVtLCB3YXMgbWFuIGF1c3NlcmhhbGIgdm9tIG11ZGRlbiBub2NoIGFuIGNvbXB1dGVyc3BpZWxlbiBiZXRyZWlidCkKdHdyeDogYWxzbyBhYiB1bmQgYW4gbmUgcnVuZGUgcXVha2UgbWFjaHQgbGF1bmUKcmluZ29yOiBuZWUgaWNoIHN0ZWggZWhlciBhdWYgZmxpZWdlbmRlIHNhY2hlbi4uLgp0d3J4OiBqYSBpY2ggYXVjaC4gYmx1dCwga29lcGZlLCBrb2VycGVydGVpbGUuLi4KCmthbm5zdGUgaW0gbXVkIGF1Y2ggaGFiZW4gOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWNoIG5ldHQuLiA6KSAoWm9vaywgMjYuIE1hciAyMDAwLCAwMzo1NjowMCk6CltBbGxnZW1laW46R2FsYnJhaXRoXSB3byBsaWVndCBkamVsaWJlYnksIGJpbiBkb3J0IG9obmUgenUgd2lzc2VuIHdhcnVtIGluZApbQWxsZ2VtZWluOkdhbGJyYWl0aF0gd2lsbCBnZXJuIHdlZwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hIGRhbm4uLi4gKExldiwgMjYuIE1hciAyMDAwLCAxMjo0NToxMik6ClNjcmVhbWVyIHN0cmFobHQgdWViZXIgZGFzIGdhbnplIEdlc2ljaHQsIGFscyBlciBlaW5lbiBEYXJqZWVsaW5nIHRyaW5rdC4KU2NyZWFtZXIgc3RyYWhsdCB1ZWJlciBkYXMgZ2FuemUgR2VzaWNodCwgYWxzIGVyIGVpbmVuIERhcmplZWxpbmcgdHJpbmt0LgpTY3JlYW1lciBzdHJhaGx0IHVlYmVyIGRhcyBnYW56ZSBHZXNpY2h0LCBhbHMgZXIgZWluZW4gRGFyamVlbGluZyB0cmlua3QuClNjcmVhbWVyIHNjaGF1dCBEaWNoIGFuIHVuZCByZW5udCBzY2hyZWllbmQgYXVmIGRpZSBUb2lsZXR0ZS4KCkxldi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hY2ggaWNoIHdhcyBmYWxzY2g/Pz8gKEJhbWJpLCAyNi4gTWFyIDIwMDAsIDIxOjMwOjE0KToKPiBrd2VyClB1c3N5bG9yZC4uLi4uLi4ucyBTZWRlY2luLi4uLi4uLi4uLnMgVWRpbmUuLi4uLi4uLi4uLi5zCkRhaWRhbG9zLi4uLi4uLkkucztbLi4uXTs+IGZpbmdlciBwdXNzeWxvcmQKSG1tLi4uIGRpZXNlbiBOYW1lbiBnaWJ0IGVzIGluIE1vcmdlbmdyYXVlbiBuaWNodC47CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSHVhaHVhaHVhIChMdWcsIDI3LiBNYXIgMjAwMCwgMDA6MDI6NDUpOgp+IyEgcm49TmV2b2sgcnQ9OTUzOTMyNjA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTUzOTMyNjA5CgpFeXl5eXkgTmV2b2ssCgoKZGllIENEVSBpc3QgZG9jaCB2b2lsbGVyIGlubm92YXRpdmVyIElkZWVuLgoKSWNoIGhhYiBub2NoIGltbWVyIGtlaW5lbiBLb2ZmZXIgaW4gQmVybGluLi4uCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEh1YWh1YWh1YSAoQXRveiwgMjcuIE1hciAyMDAwLCAxNDozMDo1NSk6Cn4jISBybj1OZXZvayBydD05NTM5MzI2MDkgcmc9c2NobWFycm4KfiMhIHRpZD05NTM5MzI2MDkKQWVoLi4uIGVjaHQgZGllIHdhcmVuIGFiZ2VzY2hhZmZ0PyAKCk5hamEsIEJ1dHpiYWNoIHdhciBzY2hvbiBpbW1lciBoaW50ZXJtICBNb25kLiBXaXIgaGF0dGVuIG5hZW1saWNoIGRlbiBNaXN0Cm5vY2guLi4KCkF0b3ogLSBzaWNoIGRhbWl0IGltbWVyIGRlbiBTY2huaXR0IHZlcnNhdXQgaGFiZW5kLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUamEuLi4gKFN3b3RsLCAyNy4gTWFyIDIwMDAsIDE0OjMzOjE5KToKQnJhbmRvY2ggd2lsbCBuaWNodCBhdWYgZGllIFRvaWxldHRlLiBNdXNzIGFiZXIuCkJyYW5kb2NoIC4uLiBlbmRsaWNoLgoKCkhhdHRlIGVzIHdvaGwgc2VociBub2V0aWcgOy0pCgpTd290bAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2llIGRhZW1saWNoIGthbm4gZWluIGRlcHBlcnRlciBzcGllbGVyIGFsbGVpbmUgc2Vpbj8gKFRlbGVub3MsIDI3LiBNYXIgMjAwMCwgMjE6MzY6MjIpOgpUcnVnIGtvbW10IGR1cmNoIGRpZSBMdWtlIGhlcmF1Zmdla3JhYmJlbHQuClRydWcgc2FndDogc28uIApUcnVnIHF1YWt0IERpciBldHdhcyBpbnMgT2hyLgpEdSBmdWVobHQgRGljaCBwbG9ldHpsaWNoIHNlbHRzYW0gYW5kZXJzLiBVbmQ6IHdpZXNvIGhhc3QgRHUgcGxvZXR6bGljaCBIdW5nZXIKYXVmIEZsaWVnZW4/ClRydWcgZGVua3QgICAuIG8gTyAobmljaHQgbWFsIGluIHJ1aGUgaWRsZW4ga2FubiBtYW4gaGllcikKVHJ1ZyBxdWFrdCBEaXIgZXR3YXMgaW5zIE9oci4KRHUgZnVlaGx0IERpY2ggcGxvZXR6bGljaCBzZWx0c2FtIGFuZGVycy4gVW5kOiB3aWVzbyBoYXN0IER1IHBsb2V0emxpY2ggSHVuZ2VyCmF1ZiBGbGllZ2VuPwoKTmFqYSwgd2VyIGtlaW5lIEZyZXVuZGUgaGF0IG11c3MgZWJlbiBhbmRlcmVuIExldXRlbiBhdWYgZGllIE5lcnZlbgpnZWhlbi4uLnZpZWxsZWljaHQgZ2lidHMgamEgYmFsZCB3aWVkZXIgbiBTY2h3dW5nIE5ldXNwaWVsZXIgZGllIG5vY2ggbmV0Cndpc3NlbiB3aWUgZHJpbmdlbmQgc2ljaCBtYW5jaGUgTGV1dGUgc2VsYmVyIGxvZXNjaGVuIHNvbGx0ZW4KClRlbGVub3MsIGRlciBlaWdlbnRsaWNoIG51ciBoaWVyIG9iZW4gYXVmIGRpZSBXZWdlbGFnZXJlciB6dW0gdWViZW4gd2FydGV0IHVuZAp6d2lzY2hlbmR1cmNoIGhhbHQgZHJpbmdlbmQgbm9ldGlnZSBHaWxkZW5mYWVoaWdrZWl0ZW4gdWVidCwgc2NobGllc3NsaWNoIHNvbGwKZGllIFRhbmppYW4gR2lsZGUgbWFsIGFuZ2VzY2hsb3NzZW4gd2VyZGVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2llIGRhZW1saWNoIGthbm4gZWluIGRlcHBlcnRlciBzcGllbGVyIGFsbGVpbmUgc2Vpbj8gKFRydWcsIDI3LiBNYXIgMjAwMCwgMjE6Mzc6MDApOgp+IyEgcm49VGVsZW5vcyBydD05NTQxODU3ODIgcmc9c2NobWFycm4KfiMhIHRpZD05NTQxODU3ODIKV2VubiBkdSBlcyBuaWNodCB2ZXJrcmFmdGVuIGthbm5zdCwgZGFzcyBkdSBnZWZyb3NjaHQgd2lyc3QsIGRhbm4gaXN0cyBuaWNodAptZWluIFByb2JsZW0uCgpUcnVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHdpZSBkYWVtbGljaCBrYW5uIGVpbiBkZXBwZXJ0ZXIgc3BpZWxlciBhbGxlaW5lIHNlaW4/IChMdWcsIDI3LiBNYXIgMjAwMCwgMjI6MTU6MjQpOgp+IyEgcm49VHJ1ZyBydD05NTQxODU4MjAgcmc9c2NobWFycm4KfiMhIHRpZD05NTQxODU3ODIKCk51bmphLAoKCgphbHNvIGxpZWJlIFphdWJpcywgd2VubiBJaHIgVHJ1ZyBzZWh0LCB2ZXJmcm9zY2h0IGlobi4gRGVyIGZpbmRldCBkYXMKc3VwZXJsdXN0aWcuCgpUcnVnIGFscyBbWkVOVVNSXWZyb3NjaCBpc3QgaW1tZXIgZ3V0Ckx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIb2NoemVpdCAoVGlhbWFrLCAyOC4gTWFyIDIwMDAsIDEwOjMzOjUxKToKfiMhIHJuPVd1cnN0IHJ0PTk1NDIzMjA5MSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk1NDE3NjcwOAoKW0RlYnVnOld1cnN0XSBGZWhsZXI6ICJCYWQgYXJndW1lbnQgMSB0byBjYWxsX290aGVyKCkiLgoKRGFzIG11c3MgbmF0dWVybGljaCBXdXJzdC0+RXJsZWljaHRlcnVuZygpIGhlaXNzZW4uIDstKQoKU0NOUiwgVGlhbWFrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3NvIChHb2xhcywgMjguIE1hciAyMDAwLCAxMToxODozNCk6CkFtYXJ5bGxpcyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbQWJlbnRldWVyOjxRdWVzdD5dIE5pY2sgaGF0IGdlcmFkZSBlaW4gQWJlbnRldWVyIGJlc3RhbmRlbjogRmluZGUgZGllIEZlZQpbQWJlbnRldWVyOjxRdWVzdD5dIEFtYXJ5bGxpcwoKdW5nZXNjaG5pdHRlbiA6KSkpCgpnb2xhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW5kIHdlZyB3YXIgc2llIChNZXNpcmlpLCAyOC4gTWFyIDIwMDAsIDExOjQ2OjU5KToKVm9uIEhvYm86IGRpZSB0YW4ga29tbXQgcGVyIHBvc3QsIGFiZXIgZGllIHBpbiBtdXNzIG1hbiBzaWNoClZvbiBIb2JvOiBwZXJzb2VubGljaCBhYmhvbGVuIChzb25zdCBrb2VubnRlIGphIGRpZSBnZWxkZ2llcmlnZQpWb24gSG9ibzogZWhlZnJhdSBiZWlkZSBicmllZmUgb2VmZm5lbiB1bmQgd3Vlc3N0ZSBiZWlkZSBudW1tZXJuKSBbMTE6MzNdClZvbiBIb2JvOiBvaG5lIHBpbiBrZWluIGtvbnRvLXp1Z2FuZyA6KSBbMTE6MzNdClZvbiBIb2JvOiBob2ZmZSBpY2ggZG9jaCBzdGFyayA6KSBbMTE6MzRdCkNoYW90aW4gQW1hcnlsbGlzIChMZXZlbCAwLCBNYWdpZXJpbikgYmV0cmF0IGdlcmFkZSBkYXMgTW9yZ2VuZ3JhdWVuLgpHcmltbWJvcm4gICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkFuIEhvYm86IG5hamEgaGFzdGUgaGFsdCBwZWNoIGdlaGFidCwgc29uc3Qga29lbm50ZXN0ZSBqZXR6dCBzY2hvZW4KQW4gSG9ibzogaW4gdXJsYXViIGZhaHJlbiA7KQpIb2JvICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpqZXR6dCBpc3QgZG9jaCBkZXIgYnJpZWYgbWl0IGRlciBwaW4gZ2Vrb21tZW4gOykKTWVzaSwgYXVjaCBvbmxpbmViYW5rZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdW5kIHdlZyB3YXIgc2llIChMaWFyYSwgMjguIE1hciAyMDAwLCAxMTo0OTozOSk6Cn4jISBybj1NZXNpcmlpIHJ0PTk1NDIzNjgxOSByZz1zY2htYXJybgp+IyEgdGlkPTk1NDIzNjgxOQpBaGhqYS4gRGFzIGludGVyZXNzYW50ZSBhbiBkZW0gQXJ0aWtlbCBpc3QsIGRhc3MgQW1hcnlsbGlzIExldmVsIDAgaGF0PyA7LSkKCkxpYXJhLCBad2VyZ2VuemF1YmVyaW5lLCB6dSBtdWVkZSBmdWVyIHJpY2h0aWdlcyBEZXV0c2NoIHVuZCBmaWVzIGdyaW5zZW5kIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB1bmQgd2VnIHdhciBzaWUgKFBhZHJlaWMsIDI4LiBNYXIgMjAwMCwgMTI6NTI6MjUpOgp+IyEgcm49TGlhcmEgcnQ9OTU0MjM2OTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU0MjM2ODE5Ck1hbiBzb2xsdGUgc2ljaCBoYWx0IHZpZWxsZWljaHQgbmljaHQgc28gbGFuZyBpcmdlbmR3byBydW10cmVpYmVuIHdlbm4gbWFuCm1vcmdlbnMgZnJ1ZWggcmF1cyBtdXNzICpnYgoKUGFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVm9uIHdlZ2VuIEZlaGxlci4uLiAoUmVhcGVyLCAyOC4gTWFyIDIwMDAsIDE1OjEwOjExKToKCiBEdSBkcmVoc3QgRGljaCBtaXQgYXVzZ2VzdHJlY2t0ZW4gQXJtZW4gdW0gRGVpbmUgQWNoc2UuCiBQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgSG9vZC4KIERlciBaYXViZXJzcHJ1Y2ggaXN0IG1pc3NnbHVlY2t0LgogRHUgbGVybnN0IGF1cyBEZWluZW4gRmVobGVybi4KCiBhZWhtLi4uIHdlciBzYWd0IGRlbm4sIGRhc3ogZGFzIGtlaW5lIEFic2ljaHQgd2FyPyAqZ3JpbnMqCgogUmVhcGVyCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NobGVpbWlnZSBTYWNoZS4uLiAoTHVnLCAyOC4gTWFyIDIwMDAsIDIyOjQ5OjUxKToKCgpTY2hudXBmZW4gdHJvdHRldCBDYWxpbWVyYSBoaW50ZXJoZXIuCgoKR2VzdW5kaGVpdCEKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWNoIG5pY2h0IGJlc3Nlci4uLiAoTHVnLCAyOC4gTWFyIDIwMDAsIDIyOjUxOjQzKToKCkNhbGltZXJhIHNhZ3Q6IHNjaG51cGZlbiwgYmVncnVlc3NlIGx1ZwpTY2hudXBmZW4gc3ByaW5ndCBEaWNoIGFuIHVuZCBzY2hsYWJiZXJ0IERpciBsaWViZXZvbGwgbWl0IHNlaW5lciBadW5nZQoKCkFSR0ghCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHJhZXVtZXIgISAoQW5hY3Jpb24sIDI5LiBNYXIgMjAwMCwgMDE6MzE6MTApOgpEdSBzdGVoc3QgaW4gZGVyIHN1ZWR3ZXN0bGljaGVuIEVja2UgZGVyIFRyYWluaW5nc2hhbGxlIGRlcyBTdHJ1dnMsIGRpZSBvZi0KZmVuc2ljaHRsaWNoIGVpbmVuIE9ydCB2b24gemVudHJhbGVyIEJlZGV1dHVuZyBmdWVyIGRpZSBUcnZlcyBkYXJzdGVsbHQuClVlYmVyYWxsIHNpZWhzdCBEdSBzbyBhdWNoIEthZW1wZmVyLCBkaWUgaW0gc3BvcnRsaWNoZW4gWndlaWthbXBmIGlocmUgRmFlaGlnLQprZWl0ZW4gbWVzc2VuIG9kZXIgYXVmIGFuZGVyZSBXZWlzZSBpaHJlIEthbXBma3JhZWZ0ZSB2ZXJiZXNzZXJuLiBNZWhyZXJlCk9lZmZudW5nZW4gaW4gZGVuIFdhZW5kZW4gZnVlaHJlbiBpbiBlaW56ZWxuZSBLYW1tZXJuLCB3b2JlaSBhbGxlaW4gaW4gZGVyClN1ZWR3YW5kIGVpbmUgVHVlciBkZW4gQmxpY2sgenUgZGVtIHZlcnNwZXJydCwgd2FzIGRhcyBaaW1tZXIgZGVzIFphaGxtZWlzdGVycwp6dSBzZWluIHNjaGVpbnQuIE5hY2ggTm9yZG9zdGVuIGdlbGFuZ3N0IER1IHRpZWZlciBpbiBkaWUgSGFsbGUuCkVzIGdpYnQgZnVlbmYgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiwgd2VzdGVuLCBub3JkZW4gdW5kCm5vcmRvc3Rlbi4KSG9uZGFtIFVudGVyZmVscy4KSG9uZGFtIFVudGVyZmVscyB0cml0dCBEaWNoIGluIGRlbiBIaW50ZXJuIQpIb25kYW0gVW50ZXJmZWxzIHNhZ3Q6IEhhbGxvIEFuYWNyaW9uISBXZW5uIER1IGlucyBTdHJ1diBlaW50cmV0ZW4gd2lsbHN0IHVtCkhvbmRhbSBVbnRlcmZlbHMgc2FndDogc29taXQgZWluIFRydmVzIHp1IHdlcmRlbiwgc28gYmVnaWIgRGljaCBiaXR0ZSBpbiBkYXMKSG9uZGFtIFVudGVyZmVscyBzYWd0OiBCdWVybyBkZXMgS29tbWFuZGFudGVuIGdsZWljaCBoaWVyIGltIFN1ZWRlbiEKCiAuLi4gdW5kIGRhcyBiZWkgREVSIEJlaGFuZGx1bmcgPz8/CgpBbmFjcmlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ2F0dHkgbWFsIHdhY2guLiB1bmQgc2Nob24gYmVpbSBsYWVzdGVybiAoWmFybml5YSwgMjkuIE1hciAyMDAwLCAwOTo1NzozNik6CltBbGxnZW1laW46VGhyYWluXSBoYWxsbyB6dXNhbW1lbgpbQWxsZ2VtZWluOkNhdHdlYXpsZV0gaG1waApbQWxsZ2VtZWluOkNhdHdlYXpsZV0gbHNtZgpbQWxsZ2VtZWluOlNhdWxdID8KW0FsbGdlbWVpbjpXaW1dIG9ybmF1PwpbQWxsZ2VtZWluOkNhdHdlYXpsZV0gYnJnbApbQWxsZ2VtZWluOldpbV0gbnVnbmE/CltBbGxnZW1laW46U2F1bF0gYWxzIE1hZ2llciBtdWVzc3Rlc3QgZHUgZGVuIHNwcmFjaGZsdWNoIGFiZXIgd2VnYmVrb21tZW4KW0FsbGdlbWVpbjpHb2xhcyBwYXRzY2h0IHNpY2ggdm9yIGRpZSBTdGlybl0KW0FsbGdlbWVpbjpHb2xhc10gaGZnanNoISEhCltBbGxnZW1laW46Q2F0d2VhemxlIGtpY2hlcnQgZGVwcGVydC5dCltBbGxnZW1laW46RGVlcEJsdWVdIFdhZCBpayBhIHNwcmFrZmx1awpbQWxsZ2VtZWluOldpbV0gdm9yIGRpZSBTdGlybj8gU2llaHQgc28gYXVzLCBhbHMgaGFldHRlc3QgRHUgZGVuIE11bmQKW0FsbGdlbWVpbjpXaW1dIGdldHJvZmZlbiA7KQpbQWxsZ2VtZWluOkdvbGFzIGdyaW5zdF0KW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIE5laW4sIHdpbSwgZGFzIHdhciBkaWUgSGlybmZsdWVzc2lna2VpdCwgZGllIGlobSBpbiBkaWUKW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIEtlaGxlIGdlc2Nod2FwcHQgaXN0Li4uLgpbQWxsZ2VtZWluOldpbV0gZGllIHdpcmQgZG9jaCBrb21wbGV0dCB2b20gU3Ryb2ggYXVmZ2Vzb2dlbj8KW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIE5hamEsIHZpZWxsZWljaHQgaGF0IGlobiBlaW4gSGFsbSBhbSBaYWVwZmNoZW4gZ2VwaWVrc3QKW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIDopCltBbGxnZW1laW46R29sYXMgaXN0IGVya2FlbHRldCA6KF0KW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIEhhaCEgRmF1bGUgQXVzcmVkZSAuLi4uCltBbGxnZW1laW46V2ltXSBQZmZmdC4uLiBBdXNyZWRlbgoKTWFyYwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmVrcm9tYW5lPyAoRGVlcGJsdWUsIDI5LiBNYXIgMjAwMCwgMTA6MzY6MTApOgpFaW4gZW50c2V0emxpY2hlciBTY2hyZWkgaGFsbHQgdm9tIEZyaWVkaG9mIGhlcnVlYmVyLgpTY2hva28gICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOUENzIGJla29tbWVuIGF1Y2ggbWFsIGlocmVuIFdpbGxlbi4gKEFscGhhLCAyOS4gTWFyIDIwMDAsIDIwOjQ3OjU0KToKW0JpZXJzY2h1ZXR0bGVyOkJydW5vXSBXZXIga29tbXQgbWljaCBiZXN1Y2hlbj8gIDwxNzoxOToxMT4KW0JpZXJzY2h1ZXR0bGVyOkJydW5vXSBXZXIgd2lsbCBkaWUgTnVtbWVyIDMzNyBzZWluPyAgPDE3OjU5OjEzPgpbQmllcnNjaHVldHRsZXI6QnJ1bm9dIEhleSBNYWVkZWxzISBJY2ggYmluIG5vY2ggU29sbyB1bmQgZWluZSBndXRlIFBhcnRpZSEKW0JpZXJzY2h1ZXR0bGVyOkJydW5vXSA8MjA6NDQ6MjA+CltCaWVyc2NodWV0dGxlcjpCcnVub10gQ2xhcmlzc2EgaGF0IGF1Y2ggZGVuIFdlZyB6dSB1bnMgZ2VmdW5kZW4hICA8MjA6NDU6MTQ+CgpNZWluIEV4LUNoZWZmZSwgZGVyIGFsdGUgQmFnZ2VyZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHdpZSBkYWVtbGljaCBrYW5uIGVpbiBkZXBwZXJ0ZXIgc3BpZWxlciBhbGxlaW5lIHNlaW4/IChSYXJkaWFuLCAzMC4gTWFyIDIwMDAsIDAyOjA4OjExKToKfiMhIHJuPVRydWcgcnQ9OTU0MTg1ODIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU0MTg1NzgyCkRhYmVpIGZhZWxsdCBtaXIgZWluLi4uIHdhcnVtIHNpbmQgZGVubiBaYXViZXJlciBkaWUgZWluemlnZW4sIGRpZSBTcGllbGVyIG1pdAppaHJlbiBTcHJ1ZWNoZW4gbmVydmVuIGR1ZXJmZW4/IEthZW1wZmVyIHouQi4ga29lbm5lbiBzaWNoIGRhIG5pZSBzbyByaWNodGlnCndlaHJlbi4gSGFiIGRhenUgamV0enQgYXVjaCBzcG9udGFuIGtlaW5lIHp1ZW5kZW5kZSBJZGVlLCBhYmVyIGlyZ2VuZHdhcwpuZWNraXNjaGVzIHVuZCBrYW1wZmZyZW1kZXMgbXVlc3N0ZSBkb2NoIGRhIG1hY2hiYXIgc2Vpbiwgb2Rlcj8KClJhciwgZ3J1ZWJlbG5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRyYWV1bWVyICEgKFJhcmRpYW4sIDMwLiBNYXIgMjAwMCwgMDI6MTE6MzApOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTU0Mjg2MjcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU0Mjg2MjcwCkRhcyBpc3Qgc2ljaGVyIGRpZSBaYXViZXJlci1TcGV6aWFsLUJlaGFuZGx1bmcuLi4KClJhciwga2VubnQgc2ljaCBhdXMgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHdpZSBkYWVtbGljaCBrYW5uIGVpbiBkZXBwZXJ0ZXIgc3BpZWxlciBhbGxlaW5lIHNlaW4/IChIb29kLCAzMC4gTWFyIDIwMDAsIDAyOjEzOjU4KToKfiMhIHJuPVJhcmRpYW4gcnQ9OTU0Mzc0ODkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU0MTg1NzgyCmthZW1wZmVyIHN0ZWhlbiBkaWNoIHZvbGwgZGEgZHJhdWYsIHNpY2ggdm9uIGFuZGVyZW4gbGV1dGVuIG5pZXJkZXJtYWNoZW4KenUgbGFzc2VuLiBkYXMgc2llaHN0IGR1IHNjaG9uIGFtIHRvbiBkZXIgbGVocm1laXN0ZXIgaW4gZGVyZW4gZ2lsZGUsCmRlbmVuIHNpZSBkYWZ1ZXIgYXVjaCBub2NoIHdpZSBuZW4gaHVuZCB6dSBrcmV1emUga3JpZWNoZW4uCmF1cyBkZXIgc2ljaHQgZ2VodCBkYXMgc2Nob24gaW4gb3JkbnVuZy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW50IHNjaHJlaWJrYWJpbmUgKE1vcmdvdGgsIDMwLiBNYXIgMjAwMCwgMDc6MzI6MzApOgp+IyEgb249TWl0aGFuZGlyIG90PTk1NDM2MDk4NSBvZz1oYXJkc29mdHdhcmUKaApoCmhpbGZlCnEKcQpxCkAKcQpxCnEKcQpxCnNjaGF1CmFoaGghISEKYW0gZW5kZSBzY2hyZWliZSBpY2ggZGllc2VuIHNjaGVpc3MgYXVjaCBub2NoIiEiIiIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1IHdlaWEhIChTdmV0bGFuYSwgMzAuIE1hciAyMDAwLCAxMzowNjowMSk6CkF1IHdlaWEuLi4ubXVzcyBpY2ggc2NobGVjaHQgc2VpbjoKCkVpbmUgSG9senB1cHBlIGZhZWxsdCBuaWNodCBhdWYgZGllIEZpbnRlIGhlcmVpbiEgICAgICAgCgpXZW5uIHNvZ2FyIGVpbmUgSG9senB1cHBlIG1laW5lIEZpbnRlIGR1cmNoc2NoYXV0LgoKU3ZldGxhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11dGlnZXMga2VybGNoZW4uLi4gKFphcm5peWEsIDMxLiBNYXIgMjAwMCwgMDg6NDI6MTQpOgpFaW4gUGFwYWdlaSBmbGF0dGVydCBoZXJlaW4uCkRlciBQYXBhZ2VpIHNhZ3Q6IER1IGhhc3Qgc29lYmVuIERlaW4gTGViZW4gdmVyd2lya3QhCgo6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkludGVyZXNzYW50IDotKSAoTGlsYWYsIDMxLiBNYXIgMjAwMCwgMTM6MDg6MzkpOgpHcmFkZSBlYmVuIGR1cmNoZ2VzY3JvbGx0OgoKRGVyIE9yayBzYWd0OiBEdSBoYXN0IGd1dGUgU2FjaGVuLCBoZXIgZGFtaXQuCkVpbiBPcmsgZXJzY2hlaW50IGluIGVpbmVyIFJhdWNod29sa2UuCkVpbiBPcmsgemllaHQgZWluZW4gS25vY2hlbnNjaGlsZCBhdXMuCiAgRGVyIE9yayBncmVpZnQgRGljaCBtaXQgZWluZW0gZ2VsdW5nZW5lbiBNYWUtc2hpdHN1aS1nZXJpIGFuLgogIERlciBPcmsgdHJpZmZ0IERpY2ggaGFydC4KRWluIE9yayB6aWVodCBlaW5lbiBLbm9jaGVuc2NoaWxkIGFuLgpEZXIgT3JrIHZlcnNjaHdpbmRldCBtaXQgS25hbGwgdW5kIFNjaHdlZmVsZHVmdC4KRHUgdmVyZm9sZ3N0IGpldHp0IGVpbmVuIE9yay4KCkRhIHNvbGwgc2ljaCBlaW5lciBnZWdlbmIgd2VocmVuIGtvZW5uZW4uLi4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadSBzcGFldCAhIChNb3Jnb3RoLCAzMS4gTWFyIDIwMDAsIDE0OjUwOjI1KToKTmVzYWphICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpab29rIHJ1ZnQ6IE5FU0FKQSEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBQUFBQUFoaCAoU3ZldGxhbmEsIDMxLiBNYXIgMjAwMCwgMjA6Mjc6NTApOgpFaW5lIGhlcnJsaWNoZSBXYWVybWUgZ2VodCB2b24gRGVpbmVtIEFtdWxldHQgYXVzLCB1bmQgRHUgZnVlaGxzdApEaWNoIHByaW1hLgpXYXMgRHUgYWxsZXMgYW5zY2hhdXN0IC4uLiBkb2NoIGVzIGhhdCBzaWNoIGdlbG9obnQsIERlaW4gV2lzc2Vuc2R1cnN0CmdpYnQgRGlyIG5ldWUgS3JhZnQuICAgICAgICAgICAgICAgIAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hY2h0Z2VzYW5nIGVpbmVzIEJpZXJzY2h1ZXR0bGVycyAoRWxiZXJldCwgIDEuIEFwciAyMDAwLCAwMzowMzoxNik6CkxpdmUtQmVyaWNodCB2b20gQWFjaGVuZXIgU3RhbW10aXNjaDoKCkh1bW5pIG5hY2ggZGVtIEdlbnVzcyBlaW5lcyBTY2hpbmtlbi1HdXJrZW50b2FzdGVzIHVuZCBtZWhyZXJlciBCaWVyZQoKSGllciBhdWYgZGVtIFRpc2NoCmxhZyBuaWUgZWluIEZpc2NoLgpra3dlcgpJY2gga29lbm50IGRhcyBhdWNoIGF1ZiBQbGF0dGUgc2NocmVpYmVuCm1pdCBkZW0gU3RpZnQgZGFydWViZXIgcmVpYmVuLApra3dlcgpra3dlcgpkdXJjaCBkaWUgVHVlciBhbHMgYmFsZCB2ZXJzY2h3aW5kZW4sCmtrd2VyCmhpbnRlciBtYW5jaGVzIEJhdW1lcyBSaW5kZW4uCmtrd2VyCmtrd2VyCmtrd2VyCmtrd2VyCkljaCB3ZWlzcywgd28gbWVpbmUgVGFzc2UgaXN0LAp1bmQgd2VyIGF1c3NlciBtaXIgZGllIFBpenphIGZyaXNzdC4Ka2t3ZXIKU3VnYWFuIGtvbW10IHJlaW4sIHNpZSBqYXBwc3QgbmFjaCBMdWZ0Cmtrd2VyCmluIGlocmVyIFBpenphZXNzZW5za2x1ZnQuCgpra3dlcgpvaG5lIFdvcnRlIDopCmtrd2VyCmtrd2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmFjaHRnZXNhbmcgZWluZXMgQmllcnNjaHVldHRsZXJzIChBcG9waGlzLCAgMS4gQXByIDIwMDAsIDAzOjEwOjQ2KToKfiMhIHJuPUVsYmVyZXQgcnQ9OTU0NTUwOTk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU0NTUwOTk2CmhtbSwgZGllIFNhY2hlIG1pdCBkZW0ga2t3ZXIgendpc2NoZW4gZGVuIFplaWxlbiB2ZXJzdGVoIGljaCBuaWNodC4KV2FzIHdpbGxzdCBEdSB1bnMgZGFtaXQgc2FnZW4/CgpBcG9waGlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZXIgbml4IHdlaXNzLi4uIChIdW1uaSwgIDEuIEFwciAyMDAwLCAwMzoxNTo0Nyk6CndpbGwuLi4KCnZpbGxlaWNodC4uLgoKCmF1Y2ggbml4IHNhZ2VuLi4uCgprYW5uIGJlaSBuaWNodC1TY2h1ZXR0bGVybiBzY2hvbm1hbCB2b3Jrb21tZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdlciBuaXggd2Vpc3MuLi4gKFJhcmRpYW4sICAxLiBBcHIgMjAwMCwgMTc6NTI6MTEpOgp+IyEgcm49SHVtbmkgcnQ9OTU0NTUxNzQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU0NTUxNzQ3CkVpbmRldXRpZ2VyIEJld2VpcyBkYWZ1ZXIsIGRhc3MgYXVjaCBFbGJlcmV0IGFuIGRlbSBBYmVuZCBuaWNodCBtZWhyIGdhbnogZml0CndhciA7KQoKUmFyLCBtdWVkZSBhYmVyIGFuc29uc3RlbiBnYW56IGZpdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VsZGthcnRlIChUZWRkeSwgIDEuIEFwciAyMDAwLCAxODo0NzoxMyk6CktydWZ0dXIgc2FndDogSWNoIGhhYmUgZm9sZ2VuZGUgSW5mb3JtYXRpb24gdWViZXIgZWluZSBHZWxka2FydGUgZXJoYWx0ZW46IER1CktydWZ0dXIgc2FndDoga2FubnN0IGVpbmUgR2VsZGthcnRlIGJlaW0gVW50aWVyIGZ1ZXIgZWluIEJsdXRzYXVnZXItU2Nod2VydApLcnVmdHVyIHNhZ3Q6IGVpbnRhdXNjaGVuLgoKSG0sIG5ldHRlIElkZWUsIGFiZXIgb2IgZGFzIGltIFNpbm5lIGRlcyBFcmZpbmRlcnMgd2FyPwoKdGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhtbSAoU2t5LCAgMS4gQXByIDIwMDAsIDIxOjE5OjQ4KToKRGVpbiBGcmV1bmQgRm9vYmFyIHRyaXR0IEJyYW5kaXIgbWFsIGluIGRlbiBHZWRhbi1CZXJlaWNoIGF1cyBkZXIgRmVybmUuCkRlciBtdWVkZSBIdW5kIHRyb3R0ZXQgZWluIHBhYXJtYWwgaW0gS3JlaXMgdW5kIGxlZ3Qgc2ljaCBkYW5uIGhpbi4KT2IgZXIgYmFsZCBlaW5zY2hsYWVmdCA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmZ1ZyAoTHVnLCAgMy4gQXByIDIwMDAsIDAyOjQyOjE1KToKCkR1IGhhc3QgaGllciBhYmVyIGtlaW4gJ0xlaWNoZScuCiAgLi4uLm5vcm1hbC9TY2h3ZXJ0Li4uLi4gRHUuLi4uLi4uLi4uLiA6IEdhcmRld2FlY2h0ZXIgKioqKioqKiogLT4gc2VociBoYXJ0CkRlciBHYXJkZXdhZWNodGVyIGZhZWxsdCB0b3QgenUgQm9kZW4uCgpET0NIIQoKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphZWhtIChEZWVwYmx1ZSwgIDQuIEFwciAyMDAwLCAxODozNTozNCk6ClBsb2V0emxpY2ggaG9lcnN0IER1IGVpbmVuIFNjaHJlaSBhdXMgZGVtIGJyYXVuZW4gTG9jaC4KSGlnaHQgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmFjaHRnZXNhbmcgZWluZXMgQmllcnNjaHVldHRsZXJzIChKYW1hbHNraSwgIDQuIEFwciAyMDAwLCAxOToyNDo0Myk6Cn4jISBybj1FbGJlcmV0IHJ0PTk1NDU1MDk5NiByZz1zY2htYXJybgp+IyEgdGlkPTk1NDU1MDk5NgpFaW4gc2VsdHNhbWVzIFNjcmlwdCBkYXMgRHUgZGEgYmV3aXJic3QhCkphbWFsc2tpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbm1lbiBnaWJ0IGVzICAoVGFuZ2FsdXIsICA0LiBBcHIgMjAwMCwgMjM6MTU6MDIpOgpCbGFibGFibHViIGJldHJpdHQgZGllc2UgV2VsdC4KQmxhYmxhYmx1YiBuaW1tdCBkYXMgQnVjaC4KQmxhYmxhYmx1YiBuaW1tdCBkaWUgWmVpdHVuZy4gU29mb3J0IGVyc2NoZWludCBhdWYgdW5lcmtsYWVybGljaGUgV2Vpc2UgZWluZQpuZXUKZS4KQmxhYmxhYmx1YiBuaW1tdCBkaWUgWmVpdHVuZy4KQmxhYmxhYmx1YiBuaW1tdCBkYXMgS2lzc2VuLgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgQmxhYmxhYmx1Yi4KR2ZkZmdmZGdmZCBiZXRyaXR0IGRpZXNlIFdlbHQuCkJsYWJsYWJsdWIgZ2VodCBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KRGVmcmFnIGRlbmt0ICAgLiBvIE8gKGludGVyZXNzYW50ZXIgbmFtZS4uLikKR2hnaGZnaGYgYmV0cml0dCBkaWVzZSBXZWx0LgpEZWZyYWcgZGVua3QgICAuIG8gTyAoaW50ZXJlc3NhbnRlciBuYW1lLi4uKQpMaXB0aSBnZWh0IG5hY2ggTm9yZGVuLgpHZmhoZ2RmZ2ggYmV0cml0dCBkaWVzZSBXZWx0LgpEZWZyYWcgZGVua3QgICAuIG8gTyAoaXMgamEgcmVjaHQuLi4pCkh1enR1enQgYmV0cml0dCBkaWVzZSBXZWx0LgpUcnpydHplcnR6IGJldHJpdHQgZGllc2UgV2VsdC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoqKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogc2NobWFycm4gKEFuYXRvbCwgIDUuIEFwciAyMDAwLCAxMDo1Mzo0NCk6Cn4jISBybj1Ib2JvIHJ0PTk1NDkxODM1MyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk1Mzg5MjE4MApXdXJ6ZWwgYWxzIEFyZ3VtZW50IGZ1ZXIgZGFzIExlYmVubGFzc2VuIHVyYWx0ZXIgU2F2ZWZpbGVzIGFuenVmdWVocmVuLApEQVMgaXN0IG11dGlnLCBIb2JvIDspCgpBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGphLi4uLi4gKFN2ZXRsYW5hLCAgNS4gQXByIDIwMDAsIDEzOjIzOjQzKToKCkViZW4gZ2VzZWhlbjoKCkZvb3Jnb2wgZ2VodCB6dW0gS2FlbXBmZW4gYXVmIGRpZSBUb2lsZXR0ZS4gCgpTdmV0bGFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG9lIGhvZSAoSGlnaHQsICA1LiBBcHIgMjAwMCwgMTg6MzI6MzEpOgpHYXN0MSBzYWd0OiAiZmlja2VuIgpEZWluZSBTY2h1aGUgZ2x1ZWhlbiBrdXJ6IGF1ZiB1bmQgaGVpbGVuIERpY2ggZWluIHdlbmlnLgoKd2VubiBkYXMgaW1tZXIgZ2VodCBuZWhtIGljaCA1IGdhZXN0ZSBpbiBuZSB0ZWFtIGF1ZiAubykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpY2h0ZXJmdWVyc3RlbiBpbiBkZXIgU1NQIChFbGJlcmV0aCwgIDUuIEFwciAyMDAwLCAxOTozNjozMik6CkZvbGdlbmRlcyB2b24gU3dvdGwgYmVpbSBtZXR6ZWxuIGRlcyBUcm9sbG1vcHNlcwoKRXMgd2FyIGVpbm1hbCBlaW4gTW9wcyBpbSBMb2NoCkRlciBodWVwZnRlIGhpbiB1bmQgaGVyIHdpZSBCcm9jaApEYW5uIHNwcmFuZyBlciB2b24gZGVyIEhhZW5nZWJydWVja2UKdW5kIHNjaGx1ZyBhdWYgdW5kIHdhciBpbiBTdHVlY2tlKG4pLgpEZXIgT3JrIHNjaGF1dGUgaWhtIGhpbnRlcmhlcgp1bmQgZnJldXRlIHNpY2ggYXVjaCBnYXIgbmljaHQgc2Voci4uLgpEZW5uIHdlbm4gZGVyIFRyb2xsbW9wcyBuaWNodCBtZWhyIHdvaG50CnN0YXR0ZGVzc2VuIGRvcnQgZWluIFdpbGRzY2h3ZWluIHRocm9udApEYXMgV2lsZHNjaHdlaW4gZGFzIGlzdCB2aWVsIHZpZWwgc2NobGltbWVyCkFscyBzZWxic3QgZWluIEVyem1hZ2llciBtaXQgRGltbWVyCmRlciB3aWVkZXIgbWFsIGFid2VydGVuIHdpbGwKZWluZW4gd2ljaHRnJ2VuIFVlYmVza2lsbC4KRGVyIEVyem1hZ2llciB6dSBzZWluZXIgU2NoYW5kZQppbnRlcmVzc2llcnQgZGFzIG51ciBhbSBSYW5kZS4KQXVjaCBkZW4gT3JrIGludGVyZXNzaWVydCBkYXMgbmljaHQKaXN0IHNjaGxpZXNzbGljaCBhdWNoIG51ciBlaW4gR2VkaWNodApEYXMgV2lsZHNjaHdlaW4gamVkb2NoIHRocm9udCBkYW5uIGhpZXIKZnJldXQgc2ljaCB1ZWJlciBqZWRlbiBCaWVyLQpzY2h1ZXR0bGVyIGRlciBkZXMgV2VnZXMga29tbXQgICAgICAgICAgICAgIApVbmQgbmljaHQgd2llIGRlciBLbGVydXMgZnJvbW10LgpEYW5uIGplZG9jaCBrb21tdCBlaW5zdCBlaW4gS2FlbXBmZXIKVmVyc2V0eiBkZW0gV2lsZHNjaHdlaW4gZWluZW4gRGFlbXBmZXIKRGFzIFdpbGRzY2h3ZWluIGRlbmt0IE9oIG1hbm4gT2ggbWFubi4uLj98ClNvIGthZW1wZnQgbnVyIGVpbmVyIG5hZW1saWNoLi4uLk9oYW0hCkRhcyBXaWxkc2Nod2VpbiBmYWVsbHQgZGFubiB0b3QgenUgQm9kZW4KZ2V3aWNrZWx0IGlzdCBlcyBpbiBzZWluJyBMb2Rlbi0KTWFudGVsLCBkZW4gZGVyIEthZW1wZmVyIG5pbW10CnVuZCBpaG4gZGFubiBub2NobWFsIGF1c3dyaW5ndAp1bmQgZGVyIEFscyBNYXgtVW1oYW5nIGRhbm4gdGF1Z3QKdW5kIHNpY2ggYmVpbSBGZWluZCB2b2xsIEJsdXRlIHNhdWd0CndhcyB6dXNhZXR6bGljaCBnZWdlbiBNYWdpZSBzY2h1ZXR6dAp1bmQgYXVmIGRpZXNlIEFydCBkZW0gS2FlbXBmZXIgbnVldHp0Li4uCnVuZCBzb25kZXJ0IGFiIGRlciBLYWVtcGZlciBTY2h3ZWlzcwpkYW5uIGlzdCBpaG0gbWVpc3QgYXVjaCB6ZWltbGljaCBoZWlzcwppbiBkZXIgRmV1ZXJlYmVuZSB6LkIuCmRhIGt1ZWhsdCBkZXIgU2Nod2Vpc3MgZGFubiBsYWVuZ2VyLCBqdWNoaGVlLi4uLiAgICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIGdlaHQgZXMgYXVjaC4uLiAoQW5hdG9sLCAgNS4gQXByIDIwMDAsIDIxOjM2OjMwKToKW0FsbGdlbWVpbjpSb25kYV0gT2ssIFRpYW1haywgaWNoIGNyYXNoIGRhcyBNdWQgZGFubiBqZXR6dC4gT2s/CltBbGxnZW1laW46Um9uZGFdIHVwcywgZmFsc2NoZXIga2FuYWwgOy0pCltBbGxnZW1laW46VW5rbm93bl0ga2FubnN0IGR1IGRvY2ggZ2FyIG5pY2h0CltBbGxnZW1laW46VGlhbWFrXSBtZWluZXR3ZWdlbi4gTWFjaCBkYXMgbWl0IGRlbiBTcGllbGVybiBhdXMgOykKW0FsbGdlbWVpbjpMaWFyYV0gYm9laCBhbGxlIGRvb2YgYXVzc2VyIG1pY2gKW0FsbGdlbWVpbjpEb3R6XSBVbmQgbWlyIG5hdHVlcmxpY2guCltBbGxnZW1laW46TGlhcmFdIGphamEKW0FsbGdlbWVpbjpQYXJhY2Vsc3VzXSBXaWUgd2FyIGRhcywgaGF0dGUgc2h1dGRvd24gamV0enQgbmUKW0FsbGdlbWVpbjpQYXJhY2Vsc3VzXSBTaWNoZXJoZWl0c2FiZnJhZ2U/IE1hbCB0ZXN0ZW4gLi4uCltBbGxnZW1laW46U291bGh1bnRlcl0gaWhyIGtvZW5udCBqYSBuZW4gc3BpZWwgZHJhdXMgbWFjaGVuLi5yb25kYSB2ZXJzdGVja3QKW0FsbGdlbWVpbjpTb3VsaHVudGVyXSBuZW4gYnVnIHVuZCB0aWFtYWsgc3VjaHQgPjopCltBbGxnZW1laW46UGFyYWNlbHN1c10gVGF0c2FjaGUuICJEaXJla3RlciBzaHV0ZG93biBtaXQgR3J1bmQgInRlc3QiIChqYS9uZWluKQpbQWxsZ2VtZWluOlBhcmFjZWxzdXNdIDoiCltBbGxnZW1laW46TGlhcmFdIGRhcyB3YWVyZSBqYSBuYWNoIG5lciBzZWt1bmRlIHp1IGVuZGUgOy0pCltBbGxnZW1laW46R2F0b10gRHUgbWVpbnN0LCBzbyBwdWVua3RsaWNoIHp1IE9zdGVybi4uLiA6KSkKW0FsbGdlbWVpbjpVbmtub3duXSBhbGxlcyBibHVmZgpbQWxsZ2VtZWluOkxpYXJhXSBsaWViZXIgdW1nZWtlaHJ0IDstKQpbQWxsZ2VtZWluOlRpYW1ha10gbmVuIENyYXNoLUJ1Zz8gQXVmIGRhcyBTcGllbCBsYXNzZSBpY2ggbWljaCBnbGF0dCBlaW4uIEFiZXIKW0FsbGdlbWVpbjpUaWFtYWtdIGVpbiBiaXNoZXIgdW5iZWthbm50ZXIgc29sbHRlIGVzIHNjaG9uIHNlaW4sIHVtIGRhcwpbQWxsZ2VtZWluOlRpYW1ha10gaW50ZXJlc3NhbnQgenUgbWFjaGVuLgpbQWxsZ2VtZWluOlVua25vd25dIGtlaW5lciB3aWxsIHNlaW5lbiAiZ3V0ZW4iIHJ1ZiB2ZXJzcGllbGVuLi4uCltBbGxnZW1laW46Um9uZGFdIGFjaCwgZGFzIGZ1bnp0IG51ciwgd2VubiBpY2hzIG5pY2h0IGFic2ljaGx0Y2ggbWFjaGUgOy0pCltBbGxnZW1laW46Um9uZGEga29lbm50ZSB2aWVsbGVpY2h0IFdpbmRvd3MgOTUgdWViZXIgZGVuIE11ZHJlY2huZXIKICAgICAgICAgICBidWVnZWxuLi4uP10KW0FsbGdlbWVpbjpTb3VsaHVudGVyXSBmdWVyIGRlbiBidWcgbXVzcyByb25kYSBzY2hvbiBzb3JnZW4gOykKW0FsbGdlbWVpbjpVbmtub3duXSB3byBibGllYnQgZGVyIGNyYXNoPwpbQWxsZ2VtZWluOlNvdWxodW50ZXIgd2FydGV0IGF1Y2ggbm9jaC4gOyldCiUgQ29ubmVjdGlvbiB0byBtZ2EgY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KLS0tLSBObyB3b3JsZCAtLS0tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcyBtYWNodCBzaWNoIC4uLiAoVGlhbWFrLCAgNS4gQXByIDIwMDAsIDIxOjU0OjUyKToKQ3Jhc2ggb2RlciBuaWNodCBDcmFzaCAtIGRhcyBNRyBtYWNodCBzaWNoOgoKW3VwdGltZV0KIjI0IE1pbnV0ZW4gdW5kIDIwIFNla3VuZGVuIgoKWy1EKl0KRXMgaXN0IGtlaW5lIEdlc2NoaWNodGUgZnVlciAnRGVidWcnIHZlcmZ1ZWdiYXIuCgoKVGlhbWFrIG1laW50OiBkaWUgU2Nob2VuaGVpdHNmZWhsZXIgYmVrb21tZW4gd2lyIGF1Y2ggbm9jaCBpbiBkZW4gR3JpZmYgO14pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGljaHRlcmZ1ZXJzdGVuIGluIGRlciBTU1AgKFJhcmRpYW4sICA2LiBBcHIgMjAwMCwgMDA6NTM6MDEpOgp+IyEgcm49RWxiZXJldGggcnQ9OTU0OTU2MTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU0OTU2MTkyCkhtLi4uIEthcmF0ZWthcyBoYWJlbiBlaW5kZXV0aWcgenUgdmllbCBaZWl0IHdhZWhyZW5kIGRlcyBLYW1wZmVzLi4uIFR1IHdhcwpSb2NodXMhISA7KSBBbmRlcmVyc2VpdHMgbXVzcyBkZXIgS2FtcGYgamEgemllbWxpY2ggbGFuZ2UgZ2VkYXVlcnQgaGFiZW4sIHdlbm4Kc28gdmllbGUgWmVpbGVuIHp1c2FtbWVua2FtZW4uCkFuIGRpZXNlciBTdGVsbGUgbW9lY2h0ZSBpY2ggYXVjaCBtYWwgRWxiZXJldGggZ3JhdHVsaWVyZW4sIGRlbSBlcyBudW4KZ2VsdW5nZW4gaXN0LCBkaWUgQXJ0aWtlbCBzZWluZXMgcXVhc2ktR2hvc3R3cml0ZXJzIGtvcnJla3QgYW4gZGllCk9lZmZlbnRsaWNoa2VpdCB6dSBicmluZ2VuLgoKR3J1c3MsCiAgIFJhci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhpbGZ0IGRhcyBkaWUgR2VzY2h3aW5kaWdrZWl0IGRlcyBNRyB6dSBlcmhvZWhlbj8gKEx1ZywgIDYuIEFwciAyMDAwLCAwMTo1ODoxMSk6CgpEaWUgZ3Jvc3NlIEdsb2NrZSB2b24gUG9ydCBWYWluIHZlcmt1ZW5kZXQgZGllIEFua3VuZnQgdm9uIERlZnJhZyBpbQpNb3JnZW5ncmF1ZW4uCgoKU293YXMKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZXR0ZXQgZGllIFp3ZWloYWV1cHRlciAoRGVlcGJsdWUsICA2LiBBcHIgMjAwMCwgMDk6MDY6NTIpOgpXaWV2aWVsZSBad2VpaGFldXB0ZXIgbXVzc3RlbiBzY2hvbiBzdGVyYmVuLCBudXIgd2VpbCBpcmdlbmRlaW4KZGFoZXJnZWxhdWZlbmVyICJIZWxkIiBkaWUgS251ZGRlbC1NYXVzIHdvbGx0ZS4gSWNoIGJlYW50cmFnZSwgZGllIGFybWVuIFdlc2VuCmFiIHNvZm9ydCB1bnRlciBTY2h1dHogenUgc3RlbGxlbi4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBVZWJlYmVzY2hyYWVua3VuZyAoQW5hdG9sLCAgNi4gQXByIDIwMDAsIDE1OjI3OjE5KToKfiMhIHJuPUh1bW5pIHJ0PTk1NTAyNzI5OSByZz1naWxkZW4ua2FyYXRlCn4jISB0aWQ9OTU0ODY0MjY3CkljaCBzYWd0ZSBkb2NoLCBkaWUgSmFtbWVyZXIgd2VyZGVuIGtvbW1lbi4KCkFuYXRvbCBkZXIgUHJvcGhldCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFVlYmViZXNjaHJhZW5rdW5nIChSb2NodXMsICA2LiBBcHIgMjAwMCwgMTU6Mjk6MDEpOgp+IyEgcm49QW5hdG9sIHJ0PTk1NTAyNzYzOSByZz1zY2htYXJybgp+IyEgdGlkPTk1NDg2NDI2NwpJY2ggd3Vzc3RlIGF1Y2ggdm9yaGVyIHNjaG9uLCBkYXNzIGRpZSBrb21tZW4gd2VyZGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBVZWJlYmVzY2hyYWVua3VuZyAoQW5hdG9sLCAgNi4gQXByIDIwMDAsIDE1OjMwOjAxKToKfiMhIHJuPVJvY2h1cyBydD05NTUwMjc3NDEgcmc9c2NobWFycm4KfiMhIHRpZD05NTQ4NjQyNjcKTmFqYSwgRHUga29ubnRlc3QgaW0gQ29kZSBuYWNoc2VoZW4gOikKCkFuYXRvbCAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVzIGdpYnQgZG9jaCBub2NoIHN5bXBhdGhpc2NoZSBOUENzIDpvKSAoRm9vYmFyLCAgNi4gQXByIDIwMDAsIDIwOjExOjA4KToKU2lyIEx5c29uIHNhZ3Q6IEVsZmVuIHNvbGx0ZSBtYW4gYXVzcm90dGVuLCB2ZXJ3ZWljaGxpY2h0ZXMgR2Vzb2NrcyEKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU29zby4gKEZvb2JhciwgIDYuIEFwciAyMDAwLCAyMTo1NzozNSk6CltUcnZlczpUaWFtYWsgZGVua3QgLiBvIE8od28gd2lyIGdlcmFkZSBiZWkgV3Vyc3RrYWVtcGZlcm4gd2FyZW4gO14pXQpbVHJ2ZXM6VG93ZXIgaXN0IGpldHp0IGRhLl0KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVWViZWJlc2NocmFlbmt1bmcgKEx1ZywgIDcuIEFwciAyMDAwLCAwMzo1NTo1OCk6Cn4jISBybj1Sb2NodXMgcnQ9OTU1MDI3NzQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU0ODY0MjY3CgpEaWUgd2FyZW4gc2Nob24gaW1tZXIgZGEhCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoSHJlaWRtYXIsICA3LiBBcHIgMjAwMCwgMTI6NTE6MzkpOgpbVGVhbSBGZXN0dW5nc2Jlc3VjaGVyOkF5a10gd293IHdhcyB3YXIgZGFzIGRlbm4/CltUZWFtIEZlc3R1bmdzYmVzdWNoZXI6SHJlaWRtYXJdIGFyZ2wuLi4KW1RlYW0gRmVzdHVuZ3NiZXN1Y2hlcjpMZXR0ZV0gU2NoZWlzc2UKW1RlYW0gRmVzdHVuZ3NiZXN1Y2hlcjpUb2RdIEFZSyBIQVQgREFTIFRFQU0gVkVSTEFTU0VOLgpbVG9kOkxhcnNdIEVpbiBzY2h3YWViaXNjaGVyIEVsZmVud2FlY2h0ZXIgaGF0IGdlcmFkZSBBeWsgdW1nZWJyYWNodC4KW1RvZDpFaW4gc2Nod2FlYmlzY2hlciBFbGZlbndhZWNodGVyXSBIZXkgd29pc2NoLCBJIGhhdSBnc2FpZCB3ZW5uIGQnIG1lciBkdW1tCltUb2Q6RWluIHNjaHdhZWJpc2NoZXIgRWxmZW53YWVjaHRlcl0ga29tbXNjaCBnYWlkcyB3YXMgYXVmIEdsb2dnZSEKCkhyZWlkbWFyLCBkZW4gVG9kIGVpbmVzIEZyZXVuZGVzIGJla2xhZ2VuZC4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW1tIChCZWVsemVidWIsICA3LiBBcHIgMjAwMCwgMTQ6MzE6MDYpOgpEYXMgc3RlbGxlIGljaCBtaXIgZ3JhZCBiaWxkbGljaCB2b3I6Cgpbd2lyZiBraXNzZW4gbmFjaCBiZWVsemVidWJdCkR1IHNjaG1laXNzdCBlaW4gS2lzc2VuIG5hY2ggQmVlbHplYnViLgpCZWVsemVidWIgdmVyc3VjaHQgd2VnenVyZW5uZW4sIGRvY2ggZGFzIEtpc3NlbiB0cmlmZnQgZGVuIEhpbnRlcmtvcGYuCkR1IHZlcnN1Y2hzdCB3ZWd6dXJlbm5lbiwgYWJlciBkYXMgS2lzc2VuIHRyaWZmdCBEaWNoIGFtIEhpbnRlcmtvcGYuCgoKaWNoIGthbm4gamEgc2FjaGVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFlbmRlcnVuZ2VuIGluIGRlciBHaWxkZSAoR2xvaW4sICA3LiBBcHIgMjAwMCwgMjI6Mjk6MjApOgp+IyEgb249R2xvaW4gb3Q9OTU1MTM5MzU0IG9nPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgcm49T2xlcmlpcyBydD05NTUxMjI1OTggcmc9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISB0aWQ9OTU0NTQwMTcyCkphamEgLi4uIHVuZCBhbSBFbmRlIGhlcnJzY2h0IG5vY2ggRGVtb2tyYXRpZSB1bmQgdWViZXIgamVkZSBDb2RlemVpbGUgd2lyZAplaW56ZWxuIGFiZ2VzdGltbXQgLi4uCgpHbG9pbiBzY2htYXJydCAoc2NobmVsbCB2ZXJsZWdlbikgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppcyBrbGFyIDopIChBbWFyeWxsaXMsICA4LiBBcHIgMjAwMCwgMDA6MDM6NTcpOgpbQWxsZ2VtZWluOkxpYXJhXSBMQUFBQUFBQUFBRUVFRUVFRUVFUlJSUlJSUk1NTU1NTU1NTU1NTU1NTU0KW0FsbGdlbWVpbjpUb3JnaWwgaGFlbHQgc2ljaCBkaWUgT2hyZW4genUuXQpbQWxsZ2VtZWluOkFtYXJ5bGxpcyBoYWVsdCBzaWNoIGRpZSBPaHJlbiB6dS5dCkRlciBrbGVpbmUgRWxmIG11cm1lbHQgd2FzIHZvbiAnWndlcmdlbnBhY2snLgoKQW1hKiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGV1dGUgaW4gT3JraGF1c2VuIChOdW1tZXJlaW5zLCAgOC4gQXByIDIwMDAsIDAxOjI0OjUwKToKc2NoYXUKRHUgc3RlaHN0IGhpZXIgbWl0dGVuIGF1ZiBlaW5lbSBIdWVnZWwuIFJ1bmQgdW0gZGllc2VuIEh1ZWdlbCBzaWVoc3QgRHUgV2llc2VuCnVuZCBpcmdlbmR3bywgYWJlciBpcmdlbmR3aWUgdW53aXJrbGljaCwgZGllIFN0YWR0IE9ya2hhdXNlbi5BdWYgZGVtIEh1ZWdlbApzdGVodCBlaW5lIGtsZWluZSBIdWV0dGUuCkVzIGdpYnQgc2VjaHMgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiwgd2VzdGVuLCBub3Jkd2VzdGVuLCBub3JkZW4KdW5kIG5vcmRvc3Rlbi4KRWluIHNjaHdhcnplciBOYXBwYWxlZGVyLUJIIGluIDc1QyAoYW5nZXpvZ2VuKS4KCkxhdWZlbiBkYSBqZXR6dCB1bnNpY2hiYXJlIEZyYXVlbiBydW0/CgogICBOdW1tZXJlaW5zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQZmVyZG5hbWU/IChNb3phcnQsICA5LiBBcHIgMjAwMCwgMDI6MDk6MDYpOgo+IEVpbiBhbHRlciBQbGFud2FnZW4gZXJzY2hlaW50LCB2b24gZWluZW0gZ2V3YWx0aWdlbiBQZmVyZCBnZXpvZ2VuLgpEYXNoZWwga29tbXQgYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFtYXJ5bGxpcywgIDkuIEFwciAyMDAwLCAxMzo1MTozMSk6CkFzcmFpIHJ1ZnQ6IGhpbGZlCltUb2Q6TGFyc10gRWluIHp1Z2Vmcm9yZW5lciBXZWloZXIgaGF0IGdlcmFkZSBBc3JhaSB1bWdlYnJhY2h0LgpbVG9kOkVpbiB6dWdlZnJvcmVuZXIgV2VpaGVyXSBIZXksIGRhcyBFaXMgaXN0IHNjaHVsZCEgRXMgd2FyIHdvaGwgZWluZmFjaApbVG9kOkVpbiB6dWdlZnJvcmVuZXIgV2VpaGVyXSBuaWNodCBzdGFiaWwgZ2VudWcuCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGV1dGUgaW4gT3JraGF1c2VuIChQYXJkYXV6LCAgOS4gQXByIDIwMDAsIDIwOjQ4OjAyKToKfiMhIHJuPU51bW1lcmVpbnMgcnQ9OTU1MTQ5ODkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU1MTQ5ODkwCldhciBiZXN0aW1tdCBuZSB1bnNpY2h0YmFyZSBNYWdpZXJpbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChXaW0sIDEwLiBBcHIgMjAwMCwgMDE6MzM6MDEpOgpNZXNpcmlpIHRlaWx0IERpciBtaXQ6IHdhcyBwYXNzaWVydCB3ZW5uIGljaCBkYXMgd2FhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYQpNZXNpcmlpIHRlaWx0IERpciBtaXQ6IHVudGVyc3VjaGU/IHphcD8KW1RvZDpMYXJzXSBEYXMgUmVzdWx0YXQgZWluZXIgYXVzZ2VzY2hsYWdlbmVuIFdhcm51bmcgaGF0IGdlcmFkZSBNZXNpcmlpCltUb2Q6TGFyc10gdW1nZWJyYWNodC4KCihLZWluIEtvbW1lbnRhcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKFRhdGphbmEsIDEwLiBBcHIgMjAwMCwgMDE6MzQ6MTIpOgp+IyEgcm49V2ltIHJ0PTk1NTMyMzE4MSByZz1zY2htYXJybgp+IyEgdGlkPTk1NTMyMzE4MQpHaWJ0IGRhcyBuZW4gRlA/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaG1tbSAoTHVnLCAxMC4gQXByIDIwMDAsIDAxOjQ1OjQ2KToKfiMhIHJuPUJlZWx6ZWJ1YiBydD05NTUxMTA2NjYgcmc9c2NobWFycm4KfiMhIHRpZD05NTUxMTA2NjYKCkFsc28gQmVlbHplLAoKZWluZXIgbXVzcyBlcyBEaXIgamEgc2FnZW4uIEphLCBEdSB3dWVyZGVzdCBkYXMgd2lya2xpY2ggc2NoYWZmZW4uCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkd1dGUgUXVvdGUgZ2xlaWNoIHp1IEFuZmFuZyAoTW9yZ290aCwgMTAuIEFwciAyMDAwLCAwODo1ODozMSk6ClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDQ2IHZvbiBMdWcgaW4gUnVicmlrIGFsbGdlbWVpbmVzLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA0IHZvbiBMdWcgaW4gUnVicmlrIGQucG9sYXIuClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDg4IHZvbiBMdWcgaW4gUnVicmlrIGVudHdpY2tsdW5nLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA4OSB2b24gTHVnIGluIFJ1YnJpayBlbnR3aWNrbHVuZy4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgOTAgdm9uIEx1ZyBpbiBSdWJyaWsgZW50d2lja2x1bmcuClVlYmVyZ2VoZSBBcnRpa2VsIDU0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDU1IHZvbiBMdWcgaW4gUnVicmlrIGdpbGRlbi5rYXJhdGUuClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDU2IHZvbiBMdWcgaW4gUnVicmlrIGdpbGRlbi5rYXJhdGUuClVlYmVyZ2VoZSBBcnRpa2VsIDE2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE4IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE5IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDIwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDIxIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdGFtbXRpc2NoIGluIEQnZG9yZiAoVGlhbWFrLCAxMC4gQXByIDIwMDAsIDE1OjIwOjI5KToKfiMhIHJuPUNyaXR0ZXIgcnQ9OTU1MzcyNzY1IHJnPXRyZWZmZW4KfiMhIHRpZD05NTUzMTI3NTkKV2llc28gc3BhZXQ/CgpTdGFuZCBkYSBpcmdlbmR3byBlaW5lIEphaHJlc3phaGw/IDstKQoKVGlhbWFrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGV1dGUgaW4gT3JraGF1c2VuIChSb2NodXMsIDEwLiBBcHIgMjAwMCwgMTU6NTk6NTYpOgp+IyEgcm49TnVtbWVyZWlucyBydD05NTUxNDk4OTAgcmc9c2NobWFycm4KfiMhIHRpZD05NTUxNDk4OTAKTk9DSCBuaWNodC4KCiAgUm9jaHVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3V0ZSBRdW90ZSBnbGVpY2ggenUgQW5mYW5nIChMdWcsIDEwLiBBcHIgMjAwMCwgMjI6Mjc6NTIpOgp+IyEgcm49TW9yZ290aCBydD05NTUzNDk5MTEgcmc9c2NobWFycm4KfiMhIHRpZD05NTUzNDk5MTEKCk1vcmdvdGg/CgpIZXVsIGRvY2ghCgpLaWNoZXJuZApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdlcmFkZSBiZWltIGVpbmxvZ2dlbiAoS2FtdWhsLCAxMC4gQXByIDIwMDAsIDIzOjAwOjEyKToKPiBOb2V2YWwgc2FndDogV2FzIGlzdCBkZW5uIGRhcyBoaWVyPyBIYXVzdGllcmUgaW0gU3RydXY/IFNvIGdlaHQgZGFzIGFiZXIKTm9ldmFsIHNhZ3Q6IG5pY2h0LCBLYW11aGwhIERhcyBnaWJ0IGxlaWRlciBlaW5lbiBWZXJ3ZWlzIQpOb2V2YWwgaG9sdCB3ZWl0IGF1cyB1bmQgdmVyc3VjaHQgWmF1YmVyZXJzcGVsbHVlYmV0b29sIHp1IHRyZXRlbi4gRG9jaCBkaWVzZQprbGVpbmUgTWF1cyBpc3Qgc28gc2NobmVsbCwgZGFzcyBOb2V2YWwgZWhlciBhdWZwYXNzZW4gbXVzcywgZGFzcyBlciBzaWNoIApuaWNodCB6dW0gRGVwcGVuIG1hY2h0LiAKWmF1YmVyZXJzcGVsbHVlYmV0b29sIGhhdXQgYWIuCk5vZXZhbCB0cml0dCBEaWNoIGluIGRlbiBIaW50ZXJuIQoKS29taXNjaCBzbyBhbHMgbmljaHQgS21wZmVyIG4gVmVyd2VpcyB6dSBiZWtvbW1lbiAoOywgb2IgaWNoIGpldHp0IGF1Y2ggd2llZGVyCnRyZXRlbiB1bmQgYmVzY2hpbXBmZW4gZGFyZiA/CgpLYW11aGwgRXhrbXBmZXIgYXVzIGRlciBOb3QgaGVyYXVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZWlsJ3Mgc28gc2Nob2VuIHdhciAoVGF0amFuYSwgMTEuIEFwciAyMDAwLCAwMDo1ODoxNik6ClRvZDpMYXJzICBEZXIgRmFsbCBhdXMgYWxsZW4gV29sa2VuIGhhdCBnZXJhZGUgU3BlbGxmaXJlIHVtZ2VicmFjaHQuCkVpbiBlbnRzZXR6bGljaGVyIFNjaHJlaSBoYWxsdCB2b20gRnJpZWRob2YgaGVydWViZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VpbCdzIHNvIHNjaG9lbiB3YXIgKEx1ZywgMTEuIEFwciAyMDAwLCAwMDo1OToxNik6Cn4jISBybj1UYXRqYW5hIHJ0PTk1NTQwNzQ5NiByZz1zY2htYXJybgp+IyEgdGlkPTk1NTQwNzQ5NgoKSW1tZXJoaW4gd2Vpc3MgbWFuLCB3byBlciBhdWZzY2hsdWcuLi4KCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZWlsJ3Mgc28gc2Nob2VuIHdhciAoSG9vZCwgMTEuIEFwciAyMDAwLCAwMDo1OTo1MCk6Cn4jISBybj1MdWcgcnQ9OTU1NDA3NTU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU1NDA3NDk2CmljaCB2ZXJtaXNzZSBudXIgZGllIGZvbGdlLXRvZGVzbWVsZHVuZy4gd2VuIGhhdHMgZG9ydCBudW4gZ2xlaWNoIGVyc2NobGFnZW4/Ci4sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZWlsJ3Mgc28gc2Nob2VuIHdhciAoRWlzaSwgMTEuIEFwciAyMDAwLCAwMTowMTowOCk6Cn4jISBybj1Ib29kIHJ0PTk1NTQwNzU5MCByZz1zY2htYXJybgp+IyEgdGlkPTk1NTQwNzQ5NgpEYSBmYWVsbHQgbWlyIGVpbmUgWmVpdHVuZ3NtZWxkdW5nIGVpbiAuLi4gaXJnZW5kd28gaW4gZGVyIFBmYWx6IGlzdAplaW4gSHVic2NocmF1YmVyIHVlYmVyIG5lbSBGcmllZGhvZiBhYmdlc3R1ZXJ6dCAuLi4gYmlzIGpldHp0IGtuYXBwIDUwMCBUb3RlLgoKRWlzaS4gT2ssIGRlciB3YXIgYWx0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobmdsIChaYW5hYywgMTEuIEFwciAyMDAwLCAxODo0NDo0Myk6Cgo+IHVudCBnZXJ1Y2gKRXMgcmllY2h0IGhpZXIgbmFjaCBGaXNjaC4gRGFzIGxpZWd0IHdhaHJzY2hlaW5saWNoIGFuIGRlbiBGaXNjaHBhbGV0dGVuLApkaWUgaGllciBsYWdlcm4uCj4gcmllY2hlCkR1IGthbm5zdCBuaWNodHMgQmVzb25kZXJlcyByaWVjaGVuLgoKKmdydW1tZWwqCgpaYW5hYwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWhqYSAoR25vbWUsIDEyLiBBcHIgMjAwMCwgMDE6MzU6NTIpOgpSYXVtIGRlcyBLb21tYW5kb2Z1ZWhyZXJzLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogdW50ZW4uCkVpbiBkcmFrb25pc2NoZXIgV2FlY2h0ZXIuICAgICAgICAgICAgIEVpbiBQbGF0dGVucGFuemVyLgpFaW4gZHJha29uaXNjaGVyIFByaWVzdGVyLiAgICAgICAgICAgICBFaW4gUGFhciBEcmFrb25pZXItU2FuZGFsZW4uCkVpbiBkcmFrb25pc2NoZXIgV2FlY2h0ZXIuICAgICAgICAgICAgIEVpbmUgTGVkZXJob3NlLgpFaW4gZHJha29uaXNjaGVyIFdhZWNodGVyLiAgICAgICAgICAgICBFaW5lIERyYWtvbmllci1BeHQuCkVpbiBkcmFrb25pc2NoZXIgUHJpZXN0ZXIuICAgICAgICAgICAgIEVpbmUgZ3Jvc3NlIERyYWNoZW5zY2h1cHBlLgpFaW4gZHJha29uaXNjaGVyIFdhZWNodGVyLiAgICAgICAgICAgICAzODEgTXVlbnplbi4KRWluIGRyYWtvbmlzY2hlciBLb21tYW5kb2Z1ZWhyZXIuICAgICAgCgpuYT8gd2VyIGhhdCBkYSBzZWluZSBzcGFycmluZ3NwYXJ0bmVyIG5pY2h0IHdlZ2dlcmFldW10PwoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5pY2h0IGdlYmFuaXNodD8gKEx1ZywgMTIuIEFwciAyMDAwLCAwMTozOToyNik6CgpHbm9tZSB0ZWlsdCBEaXIgbWl0OiBzaGl0LiBkZXIgZnVlaHJlciBpcyBzY2hvbiB3aWVkZXIgZGEuLi4KCgpXQVM/IEljaCBkZW5rIEFkb2xmIGlzdCBnZWJhbmlzaHQuLi4KCkdyb2xsZW5kCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5pY2h0IGdlYmFuaXNodD8gKFRhcmFnb24sIDEyLiBBcHIgMjAwMCwgMTI6NDM6MjUpOgp+IyEgcm49THVnIHJ0PTk1NTQ5NjM2NiByZz1zY2htYXJybgp+IyEgdGlkPTk1NTQ5NjM2NgpBZG9sZiBpc3QgbmljaHQgYW53ZXNlbmQuClp1bGV0enQgZWluZ2Vsb2dndCB2b246IENoZW1uaXR6Clp1bGV0enQgYXVzZ2Vsb2dndDogRG9uLCAgMi4gTm92IDE5OTUsIDAzOjEyOjE5ICgxNjIzZCAwODozMDo0MCkKVm9sbGVyIE5hbWU6IEFkb2xmIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIKUmFzc2U6IEhvYmJpdCwgIEdpbGRlOiBBYmVudGV1cmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAwMDoxNjo1MCwgICBTcGllbGVybGV2ZWw6IDEKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogdm9yIGRlbSAxMC4gTm92IDE5OTUKQWRvbGYgaXN0IFRlc3RzcGllbGVyLgoKKmxhY2gqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbWFuZGEgaW0gVW5yZWNodCA7KSAoTWFnaWN0dXgsIDEyLiBBcHIgMjAwMCwgMTU6MTc6MzYpOgpBbWFuZGEgc2Nod2VidCBpbiBlaW5lciBXb2xrZSB2b24gUGFyZnVlbSBuYWNoIE5vcmRlbi4KQW1hbmRhIHRlaWx0IERpciBtaXQ6IFdvaGluIHNvIHNjaG5lbGwsIE1hZ2ljdHV4PwpBbWFuZGEgdGVpbHQgRGlyIG1pdDogSW1tZXIgc2luZCBzaWUgc28gZWlsaWcsIGRpZSBNYWVubmVyIC4uLgoKTXVzcyBzaWUgYXVjaCBnZXJhZGUgc2FnZW4sIGljaCBzdGVoIGhpZXIgZnJpZWRsaWNoIHJ1bSB1bmQgc2llIHJlbm50IGFuIG1pcgp2b3JiZWkgOykKCk1hZ2ljdHV4CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWhyIG11dGlnLi4uIChab29rLCAxMi4gQXByIDIwMDAsIDE1OjQyOjAzKToKRWluIEJvdGUga29tbXQgaGVyZWluZ2VoYXN0ZXQgdW5kIGJlZ2lubnQgd2lsZCB6dSBmdWNodGVsbiB1bmQgenUKcGxhcHBlcm46CidBbnRpTGVuYSBoYXQgZ2VyYWRlIE1lbHdpbiB6dW0gRHVlbGwgaGVyYXVzZ2Vmb3JkZXJ0ISBJaHIgbXVlc3N0CnNjaG5lbGwgaW4gZGllIFd1ZXN0ZSB6dXIgS2FtcGZhcmVuYSBsYXVmZW4sIGRhcyBkdWVyZnQgaWhyIGV1Y2ggbmljaHQKZW50Z2VoZW4gbGFzc2VuIScKVW5kIHNjaG9uIGhhc3RldCBlciB3aWVkZXIgcmF1cy4KQW50aWxlbmEgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNaXRnbGllZGVydmVyc2FtbWx1bmcgYW0gMTIuMDMuMjAwMCAoUm9uZGEsIDEyLiBBcHIgMjAwMCwgMTc6Mzc6NDUpOgp+IyEgcm49SHVtbmkgcnQ9OTU1NTUzNjczIHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD05NTA5MDgxMzkKT2ssIG51biBlY2h0IG5hY2ggU2NobWFycm4uLi4KPiBIdW1uaSwgYXVma2xhZXJlbmQKCipncmlucyogYXUgaG1tbS4uLiBkYXMgbWl0IGRlbSBBdWZrbGFlcmVuIHBhc3N0IDstKSBXaWUgd2FyIGRhcyBub2NobWFsIG1pdApkZW4gQmx1ZW1jaGVuIHVuZCBkZW4gQmllbmNoZW4/CgpSb25kYSAqYmxvZWRlbG5kIHJ1bXN1bXBmZW5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTWl0Z2xpZWRlcnZlcnNhbW1sdW5nIGFtIDEyLjAzLjIwMDAgKEZvb2JhciwgMTIuIEFwciAyMDAwLCAxNzo0MDoyNik6Cn4jISBybj1Sb25kYSBydD05NTU1NTM4NjUgcmc9c2NobWFycm4KfiMhIHRpZD05NTA5MDgxMzkKZmluZ2VyIGJsdWVtY2hlbiwgZmluZ2VyIGJpZW5jaGVuCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhcGFnZWllbi4uLiAoRm9vYmFyLCAxMi4gQXByIDIwMDAsIDE4OjAwOjI4KToKVHVmZmkgc2FndDogaWNoIGJpbiBlaW4gZHVtbWVyIHBhcGFnZWkKRXJsZXVjaHR1bmcga3JhZWNoenQ6IERhcyBzYWdlIGljaCBhdWNoIC4uLiBrcnJycnJvb29vYWFhIC4uLgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWdpZXIgbGViZW4gZ2VmYWVocmxpY2ggKFRpYW1haywgMTIuIEFwciAyMDAwLCAyMDo0MToxOSk6CkViZW4gYmVpbSBUZXN0ZW46CgogRGFzIExpY2h0IC4uLgoKCiAgICAgICAgICAgICAgICAgZGFzIExpY2h0IHplcnJlaXNzdCBEaWNoLgpEZWluZSBtYWdpc2NoZW4gS3JhZWZ0ZSB2ZXJoaW5kZXJuIERlaW5lbiBUb2QuClRpYW1hayBzdGlyYnQgaW4gZWluZW0gQmFsbCBnbGVpc3NlbmRlciBMaWNodGVuZXJnaWUuClNDSE5FTEwgUkFVUyEgU09OU1QgUEFTU0lFUlQgRElSIERBU1NFTEJFIQoKClRpYW1hayBkZW5rdCAuIG8gTyhuaWNodCBhdXN6dWRlbmtlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9sZGllcyAoQnV6emN1dCwgMTIuIEFwciAyMDAwLCAyMzo0NzoxMCk6CkljaCBnbGF1YiBlcyBnaW5nIHVtIGVpbiBwYWFyIG5ldWUgUXVlc3RzIC4uLiA7KSkKCltBYmVudGV1ZXI6RmV1ZXJ3ZWhyXSBNYXlhdCBkaWUgV29scGVydGluZ2VyPwpbQWJlbnRldWVyOkdhbmRvXSBQYWdhbmFuaW5pcyBMZWJlbmVsaXhpZXIKW0FiZW50ZXVlcjpBbmF0b2xdIEVyZm9yc2NoZSBQYW5kb3JhCltBYmVudGV1ZXI6Tm92YXN0b3JtXSBFcmZvcnNjaGUgTGFuIFd1bnMgRWxlbWVudGUKW0FiZW50ZXVlcjpIYW5nb3Zlcl0gZmluZGUgZGVuIGZsdWNoIGltIHNjaG5lZQpbQWJlbnRldWVyOkFuYXRvbF0gQWJlciBkYXMgZGFyZiBtYW4gZXJzdCBhYiBMZXZlbCAxOCA7KQpbQWJlbnRldWVyOkdhbmRvIGxhY2h0XQpbQWJlbnRldWVyOlNjaG9rb10gU2VpZCBpaHIgamV0enQgYWxsZSBTY2hlaXNzZSwgb2RlciB3YXM/IDspCltBYmVudGV1ZXI6VGhlcmluXSBEYXMgVmVyaGFlbmduaXMgZGVzIEFyY2hpdGVrdGVuPwpbQWJlbnRldWVyOkxpbGxlYnJvcl0gRGllIHZpZXIgS2VsY2hlIGRlcyBLb25mdXNpdXMKW0FiZW50ZXVlcjpIYW5nb3Zlcl0gZGFzIHRlc3RhbWVudCBkZXIgcGFuZG9yYQpbQWJlbnRldWVyOkxlbmFdICJIaWxmIEhhcmRlbiwgZGllIExlaWNoZW4gTk9DSCBiZXNzZXIgenUgdmVyc3RlY2tlbi4iCltBYmVudGV1ZXI6Tm92YXN0b3JtXSBUYW56IG1pdCBPbWEgV2V0dGVyd2FjaHMgOjkKW0FiZW50ZXVlcjpBbmF0b2xdIEFiZXIgZGFzIGRhcmYgbWFuIGVyc3QgYWIgTGV2ZWwgMTggOykKW0FiZW50ZXVlcjpIYW5nb3Zlcl0gc29ydXRocyBsb2didWNoCltBYmVudGV1ZXI6RmV1ZXJ3ZWhyXSBmbHVjaHQgdm9uIGRlciBPbWEgV2V0dGVyd2FjaHM/CltBYmVudGV1ZXI6QnV6emN1dF0gKndhZWx6KgpbQWJlbnRldWVyOkFuYXRvbF0gbWlzdGhpc3QgOikKW0FiZW50ZXVlcjpaZXJdIFdlcmRlIE9iZXJzY2hyYXQKW0FiZW50ZXVlcjpHYW5kb10gc2NodWV0dGVsYmllciBkZXIgd2Vpc2hlaXQKW0FiZW50ZXVlcjpMaWxsZWJyb3JdIG9iZXJzY2hyYXQgKndhZWx6KgpbQWJlbnRldWVyOlNjaG9rb10gLi4uLkZ1ZWxsIGRpZSBMZWVyZSBoaW50ZXIgbWVpbmVyIFN0aXJuLi4uLgpbQWJlbnRldWVyOkFuYXRvbF0gU2FtcyBMZWJlbnNlbGl4aWVyPwpbQWJlbnRldWVyOkZldWVyd2Vocl0gRioqKiBtZWluIEdlaGlybiA6KQpbQWJlbnRldWVyOlRoZXJpbl0gSGVpbHVuZyBmdWVyIGRpZSBQeXJhbWlkZW4KW0FsbGdlbWVpbjpMZW5hXSBodWh1ISBSb2VtZXIsd28gc2VpZCBpaHI/CltBYmVudGV1ZXI6QmFyZF0gUlVIRSEhIQpbQWJlbnRldWVyOlNjaG9rbyBuaWNrdCAxMTIgenUuXQpbQWJlbnRldWVyOkhhbmdvdmVyXSBiZWZyZWllIGRlbiBhcmNoaXRla3RlbgpbQWJlbnRldWVyOkFuYXRvbF0gUmVkIEZyYWdnbGVzIFRldWZlbHNsb2didWNoIDopID8KW0FiZW50ZXVlcjpOb3Zhc3Rvcm1dIFJldHRlIGRpZSBPYmVyZ2xhZGlhdG9yZW4KW0FiZW50ZXVlcjpTY2hva29dIHdlbm4gZGFubiBiZWZlcmllIGRpZSBPbWEgZGVzIEFyY2hpdGVrdGVuIDspCltBYmVudGV1ZXI6RmV1ZXJ3ZWhyXSBSZXR0ZXQgZGllIEluZmVybm9zPwpbQWJlbnRldWVyOkhhbmdvdmVyXSBLcmlzdGFsbGphbW1lcgpbQWJlbnRldWVyOkFuYXRvbF0gRmluZGUgZGVuIGdlc3RvaGxlbmVuIEZldWVyd2VocmphbW1lciA6KQpbQWJlbnRldWVyOkxpbGxlYnJvcl0gVmVyZnJvc2NoZSBkaWUgUHlyYW1pZGVuCltBYmVudGV1ZXI6R2FuZG9dIHJmcm9zY2hlIC4uLgpbQWJlbnRldWVyOkhhbmdvdmVyXSByZXR0ZSBkZW4gYXJjaGl0ZWt0ZW4gYXVzIGxhbiB3dW5zIHR1cm0KW0FiZW50ZXVlcjpHYW5kb10gamV0enQgd2lyZHMgaGFydAoKICAgICAgQnV6emkgLi4uIG1hbCB3aWVkZXIgc2NobXVuemVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1Y2ggc2llIGhhc3N0IEdhdGVzIC4uLiAoS2FkYWJyYSwgMTMuIEFwciAyMDAwLCAwMDozNzo0MCk6CkR1IHRlaWxzdCAqKiogbWl0OiBkdSBrZW5uc3QgZGljaCBuaWNoIHp1ZmFlbGxpZyBtaXQgYXJjc2VydmUgZnVlciBOVCBhdXMgPyA7KQo+IERpZSBIeWRyYSBlcmhlYnQgc2ljaCBhdXMgZGVtIFRhbCBkZXIgTHVwaW5lbi4KYWVoaGgKc2Nob24gc3RpbGwKa2FkYWJyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VsYnN0bW9yZGVudGVyIEZvcnNjaGVycHVua3RzYW1tbGVyIChWYXJkaW9uLCAxMy4gQXByIDIwMDAsIDE4OjA2OjQ1KToKRWluIEZvcnNjaGVycHVua3RzYW1tbGVyIHZlcnN1Y2h0LCBlaW5lIHd1bmRlcnNhbWUgQmx1bWUgenUgcGZsdWVja2VuLgpFaW4gRm9yc2NoZXJwdW5rdHNhbW1sZXIgc2NocmVpdCBsYXV0IGF1Zi4uLnNjaGVpbmJhciBoYXQgRXIgc2ljaCBnZXN0b2NoZW4uCkRlciBGb3JzY2hlcnB1bmt0c2FtbWxlciBmYWVsbHQgdG90IHp1IEJvZGVuLgoKTmV0dC4uLgoKVmFyZGlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc29zbyA6KSAoVW5hc2FpLCAxMy4gQXByIDIwMDAsIDIwOjQ4OjUyKToKc2NoYWV0eiBLb2xiZW4KCkR1IGJldHJhY2h0ZXN0IGRlbiBNYWdpZWtvbGJlbiBlaW5nZWhlbmQuICAKRXIgaXN0IGVpbmUgMi1IYW5kd2FmZmUgdW5kIGdlaG9lcnQgZGVyIEdydXBwZSBkZXIgc3R1bXBmZW4gSGllYndhZmZlbiBhbi4gRXIgCm1hY2h0IHNpY2hlcmxpY2ggemllbWxpY2ggYnJhdWNoYmFyZW4gU2NoYWRlbi4gRXIgc3RpY2h0IHdpcmtsaWNoIHNlaHIgCmdlZmFlaHJsaWNoLiBFciBrYW5uIHBydWVnZWxuLgoKbmEgd2Fzc24gbnUgc3RlY2hlbiBvZGVyIHBydWVnZWw/CgpVbmEqICpncmluc2VuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9oamVlZWUgLi4uIChMaWFyYSwgMTQuIEFwciAyMDAwLCAwMDozMjo1OCk6CltUcnZlczpMdWddIFNDaGluZCBhbGxlIEZyYXVlbiBzY2hoaGhvb2Vlbm5uICpoaWNrcyoKW1RydmVzOkx1Z10gTG9zY2ggc2NoaWd0IG1pdCBKdW5nc2NoCgpNZWluIFdlbHRiaWxkISAqa3JlaXNjaCoKTGlhcmEsIFp3ZXJnZW56YXViZXJpbmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPaGplZWVlIC4uLiAoTGlhcmEsIDE0LiBBcHIgMjAwMCwgMDA6NDE6MjEpOgp+IyEgcm49TGlhcmEgcnQ9OTU1NjY1MTc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU1NjY1MTc4CltTZWhlcjpab29rXSBMVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVHSCEKW1NlaGVyOkx1Z10gVFRUVFRJSUlUVFRURUVFRUVOTk5OTk5OTk5OTgoKW1RydmVzOlpvb2tdIEx1Zywgd2VyIHNvbGwgaW4gZGllIEtsZXJpa2VyZ2lsZGU/CltUcnZlczpMdWddIEZSQVVFTiEKW1RydmVzOkx1Z10gVFVTU0lFUyEKW1RydmVzOkx1Z10gVE9SVEVOIQpbVHJ2ZXM6THVnXSBTQ0hOSVRURU4hCltUcnZlczpMdWddIEZyYXVlbiBpbiBkaWUgS2xlcmlrZXJnaWxkZSEgTjgKW1RydmVzOkx1ZyBnZWh0LCBrb21tdCBhYmVyIHdpZWRlci4gUGVjaCBnZWhhYnQuXQoKU2Nob24gYmVzc2VyLiA6LSkKTGlhcmEsIFp3ZXJnZW56YXViZXJpbmUgKGltbWVyIG5vY2ggOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoaGhoamEgOikgKFphbmFjLCAxNC4gQXByIDIwMDAsIDAyOjUzOjUxKToKCkVpbmUgSG9senB1cHBlIGphZ3QgRGljaCBuaWNodCBtZWhyLgoKR3V0IHp1IHdpc3Nlbi4KClphbmFjLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIC4uLiAoWmFuYWMsIDE0LiBBcHIgMjAwMCwgMTE6MTc6MTcpOgpbQWxsZ2VtZWluOlBhbGVdIGFyZ2wKW1RvZDpMYXJzXSBFaW4gQWJvbGV0aCBoYXQgZ2VyYWRlIFBhbGUgdW1nZWJyYWNodC4KCipzZXVmeioKClphbmFjCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphZWhtIC4uLiAoTmljaywgMTQuIEFwciAyMDAwLCAxMjoyOTo0OCk6CmZyYWdlIHdpcnQgbmFjaCBhbGtvaG9sCkRlciBXaXJ0IHNhZ3Q6IEthbm4gbWFuIGRhcyB0cmlua2VuPwoKTmljaywgZmluZGV0IGRlciBoYXQgc2VpbmVuIGJlcnVmIHZlcmZlaGx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2VsYmVyIChNZXNpcmlpLCAxNC4gQXByIDIwMDAsIDIyOjQ5OjAzKToKRGVyIEVpc2VsZmVud2FlY2h0ZXIga251cnJ0OiBKZXR6dCBzdGlyYiBzY2hvbiBlbmRsaWNoIQpMUDogMTkyICgxKSBNUDogMjMgKDEpCiAgRHUgLi4uLm5vcm1hbC9TY2h3ZXJ0Li4uLi4gaGFydCAtPiBFaXNlbGZlbndhZWNoICoqKioqKioqCkRlciBFaXNlbGZlbndhZWNodGVyIHJvZWNoZWx0IG5vY2ggZWluIGxldHp0ZXMgTWFsIHVuZCBmYWVsbHQgdG90IHVtLgpNZXNpLCBTaWVnZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW1hcnlsbGlzLCAxNC4gQXByIDIwMDAsIDIyOjUzOjAyKToKW0FsbGdlbWVpbjpKdXJyeV0gcHVoIGRlciBzY2hhY2h0IHJlc2V0dGV0IGFiZXIgZmx1ZWcKCndlbmlnIHNwYWV0ZXIuLi4KCltUb2Q6TGFyc10gRWluIEJydWRlciBkZXMgU2Nod2VydG1laXN0ZXJzIGhhdCBnZXJhZGUgSnVycnkgdW1nZWJyYWNodC4KW1RvZDpFaW4gQnJ1ZGVyIGRlcyBTY2h3ZXJ0bWVpc3RlcnNdIFNjaGljaHQgaW0gU2NoYWNodCEKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyBkaWUgendlaXRlIChBbWFyeWxsaXMsIDE0LiBBcHIgMjAwMCwgMjM6MDE6NDApOgpzaWVoZSB2b3JoZXJpZ2VyIEFydGlrZWwuCmt1cnogZGFyYXVmLi4uCgpbQWxsZ2VtZWluOkp1cnJ5XSBhcmdsCltBbGxnZW1laW46SnVycnldIGtvZW5udCBoaWxmZSBicmF1Y2hlbgpbQWxsZ2VtZWluOkJpZWxlZmVsZF0gZmx3LCBkaWUgendlaXRlPwoKLi4uCgpbVG9kOkxhcnNdIEVpbiBNZXNzZXIgaGF0IGdlcmFkZSBKdXJyeSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBNZXNzZXJdIFNjaGljaHQgaW0gU2NoYWNodCEKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhtbW1tbW0gOikgKEhlcm9tY2ZseSwgMTQuIEFwciAyMDAwLCAyMzoyMzoyMSk6CgpEYXMgTWVzc2VyIGZhZWxsdCB6ZXJicm9jaGVuIHp1IEJvZGVuLgpFaW5lbSBNZXNzZXIgZmFlbGx0IGt1cnogdm9ybSBUb2QgZGFzClNjaHdlcnRtZWlzdGVyc2Nod2VydCBhdXMgZGVyIEhhbmQgdW5kIGVpbmVuIFJhdW0gdGllZmVyLgoKCm11c3MgZGFzIHNvIHNlaW4gcm9jaHVzID8/OikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hbmllcmVuLi4uIChGb29iYXIsIDE1LiBBcHIgMjAwMCwgMDE6Mjk6NTUpOgpLaHJhayBzYWd0OiA8SGljaz4hClpvbGxva2ggbmlja3QgenVzdGltbWVuZC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFuaWVyZW4uLi4gKEFtYXJ5bGxpcywgMTUuIEFwciAyMDAwLCAwMTozMDo1Myk6Cn4jISBybj1Gb29iYXIgcnQ9OTU1NzU0OTk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU1NzU0OTk1CmRhc3MgS2FlbXBmZXIga2VpbmUgTWFuaWVyZW4gaGFiZW4sIGlzdCBqYSBuaXggTmV1ZXMgOikKCi0tPiBTY2htYXJybi4uLiBhY2gsIGRhIHNpbmQgd2lyIGphIHNjaG9uIDopCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hbmllcmVuLi4uIChGb29iYXIsIDE1LiBBcHIgMjAwMCwgMDE6NTQ6NTMpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTk1NTc1NTA1MyByZz1zY2htYXJybgp+IyEgdGlkPTk1NTc1NDk5NQpEYXMgd2FyZW4gYWJlciBrZWluZSBLYWVtcGZlciwgc29uZGVybiBOUENzIDtvKQoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUga2xlaW4gaXN0IGRlciBXYW5kbGVyIGRlbm4/IChNZXNpcmlpLCAxNS4gQXByIDIwMDAsIDE2OjA5OjUxKToKSmV0enQgYmlzdCBEdSBpbiBkZXIgZHVua2xlbiBTY2h1YmxhZGUgZ2VmYW5nZW4uIEhvZmZlbnRsaWNoIGdpYnQgZXMgYXVzCmRpZXNlbSByZWNodCBlbmdlbiBHZWZhZW5nbmlzIG5vY2ggZWluZW4gQXVzd2VnLiBEaWUgV2FlbmRlIGRlciBTY2h1YmxhZGUKbWFjaGVuIERpciBzY2hvbiBldHdhcyBBbmdzdCwgZGVubiBpcmdlbmR3aWUgcnVlY2tlbiBzaWUgaW1tZXIgbmFlaGVyIC4uLiBlaW4KVHJ1Z2JpbGQgPyBBdWNoIEJvZGVuIHVuZCBEZWNrZSBzY2hlaW5lbiBuaWNodCBnYW56IHN0aWxsenVzdGVoZW4uIER1IGFybWVyCkZyb3NjaCwgaG9mZmVudGxpY2ggdmVyaHVuZ2Vyc3QgRHUgaGllciBkcmluIG5pY2h0LgpFaW4gV2FuZGxlci4KRWluZSBob2VsemVybmUgU3Bpbm5lLgpNZXNpLCBGcm9zY2gsIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZWh0IGRhcyBpbW1lcj8gKFpvb2ssIDE1LiBBcHIgMjAwMCwgMTg6MDQ6NTcpOgpNdWFkaWIgZXJzY2hlaW50LgpPbWJhdGlzIG1hY2h0IHNpY2ggZ2VzY2h3aW5kIGRhdm9uLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZlaWdsaW5nIDotKSAoSmVuYW5kcmEsIDE1LiBBcHIgMjAwMCwgMTk6MzA6NTgpOgpbQWJlbnRldWVyOlR3b2ZhY2VdIGthbm4gbWlyIGJpdHRlIGVpbiBNYWdpZXIgLyBlaW5lIE1hZ2llcmluIGVpbmVuIEJyaWVmCltBYmVudGV1ZXI6VHdvZmFjZV0gYWJuZWhtZW4gPwpNYXJjdXMgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KTWFyY3VzICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKSmVuYW5kcmEsIGdyaW5zdCBzaWNoIGVpbnMgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpncm9zc2UgZ2VoZWltbmlzc2UgKEFzaGFuLCAxNS4gQXByIDIwMDAsIDIzOjM1OjU1KToKZWJlbiBwYXNzaWVydDoKQXJhbmNpYSB3aXJmdCBEaXIgbm9jaCBlaW5lbiBCbGljayB6dSB1bmQgZmx1ZXN0ZXJ0OiBJY2ggZ2VoZSBqZXR6dCBpbnMgUmVpY2gKZGVyIE5ldHp0b3Rlbi4KCigqc21pbGUqKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWNoLCBzbyBnZWh0IGRhcyA6LSkgKEplbmFuZHJhLCAxNy4gQXByIDIwMDAsIDAyOjQ5OjE4KToKTm9lbCBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuCkplbiBlcnNjaGVpbnQgaW4gZWluZXIgc2lsYmVybmVuIFJhdWNod29sa2UuCgpKZW5hbmRyYSwgZGFjaHRlIGltbWVyIGRhcyBtaXQgZGVtIGJsaXR6IHdhZXIgd2FzIGFuZGVyZXMgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpad2VyZ2UuLi4uIChTb3JjZXJlciwgMTcuIEFwciAyMDAwLCAwMzoyODoxOCk6Ck5ldm9rIHNhZ3Q6IGRpZSBmYW5nZW4gZXJzdCBhbj8gd2FyZW4gZGllIGV0d2EgR0VXQVNDSEVOPz8/Pz8/CkR1IHNhZ3N0OiBlbGZlbiBzaW5kIGtlaW5lIHp3ZXJnZSEKRXRhaW4gc2FndDogbmF0dWVybGljaC4gdW5nZXdhc2NoZW4gc2luZCBzaWUgbm9jaCB1bmh5Z2llbmlzY2hlciBhbHMgendlcmdlCkV0YWluIHNhZ3Q6IHNvbnN0IHNpbmQuCkR1IHNhZ3N0OiBlbGZlbiBzaW5kIGltbWVyIGdld2FzY2hlbgpFdGFpbiBuaWNrdCBEaXIgenUuCk5ldm9rIGRlbmt0ICAgLiBvIE8gKFp3ZXJnZSBwb3BwZW4gQmFldW1lLiAnbnVmZiBzYWlkLikKTmV2b2sgYXJnbHQgZWluIHdlbmlnIHZvciBzaWNoIGhpbi4KTmV2b2sgc2FndDogRUxGRU4KRXRhaW4gYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCk5ldm9rIGRlbmt0ICAgLiBvIE8gKGZ1Y2sgZnVjayBmdWNrKQpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCkV0YWluIGdyaW5zdC4KClRqYSwgZGVyIFNjaHVzcyBnaW5nIG5hY2ggaGludGVuIGxvcyA6KQoKU29yY2VyZXIgLSBhbSBCb2RlbiBsaWVnZW5kIHZvciBMYWNoZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBad2VyZ2UuLi4uIChOZXZvaywgMTcuIEFwciAyMDAwLCAwMzoyOToxMCk6Cn4jISBybj1Tb3JjZXJlciBydD05NTU5MzQ4OTggcmc9c2NobWFycm4KfiMhIHRpZD05NTU5MzQ4OTgKTmV2b2sgc2V1Znp0LiBFcyByYWVjaHQgc2ljaCB3ZW5uIG1hbiBtZWhyZXJlIFNhY2hlbiBnbGVpY2h6ZWl0aWcgbWFjaHQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9obmUgd29ydGUgKFNvcmNlcmVyLCAxNy4gQXByIDIwMDAsIDA0OjAzOjMxKToKRXRhaW4gc2FndDogYWJlciBmcmF1ZW4gd2VyZGVuIG5pY2h0IGFlbHRlciBhbHMgMTcsIGRhbmFjaCByZWlmZW4gd2lyLgpOZXZvayBzYWd0OiB1bmQgZmVpZXJ0IGp1YmlsYWV1bQpEdSBzYWdzdDoganViaWxhZXVtIGRpZSAxIGphZWhyaWdlbiByZWlmZS4uLgpOZXZvayBkZW5rdCAgIC4gbyBPICh6dXIgd2llZGVya2VociBkZXMganViaWxhZXVtcyBtZWluZXMgMjUuIGdlYnVydHN0YWcKbW9lY2h0ZSBpY2ggRGljaCAKaGVyemxpY2hzdCBlaW5sYWRlbikKRHUgc2Fnc3Q6IGJlaSAxMiBoYWJlbiBmcmF1ZW4gZGFubiB3YXMgbWl0IGd1dGVtIHdoaXNreSBnZW1laW5zYW0gOikKTmV2b2sgc2FndDogYWJlciBudXIgd2VubiBzaWUgaW0gZmFzcyBnZWxhZ2VydCB3dXJkZW4KRXRhaW4gc2FndDogaG0/IHdpciBtYWNoZW4gc2Nod2luZGxpZz8KRXRhaW4gYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCk5ldm9rIHNhZ3Q6IHNvYmFsZCBkaWUgaW4gZGVyIGZsYXNjaGUgc2luZCBpcyBkZXIgcmVpZmVwcm96ZXNzIHp1IGVuZGUKClNvcmNlcmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWndlcmdlLi4uLiAoTmV2b2ssIDE3LiBBcHIgMjAwMCwgMDg6MzU6MjEpOgp+IyEgcm49U29yY2VyZXIgcnQ9OTU1OTM0ODk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU1OTM0ODk4CldlciBkZW4gU2NoYWRlbiBoYXQuLi4KQm9pbmcgdGVpbHQgRGlyIG1pdDogendlcmdlIHBvcHBlbiBiYWV1bWU/IGljaCBtdXNzIGVybnN0aGFmdCB1ZWJlciBlaW5lCkJvaW5nIHRlaWx0IERpciBtaXQ6IHp3YW5nc2FlbmRlcnVuZyBkZWluZXIgcmFzc2UgbmFjaGRlbmtlbiAuLi4gOykKCldpbSB0ZWlsdCBEaXIgbWl0OiBobW0uLiBzb3NvLi4gWndlcmdlIHBvcHBlbiBCYWV1bWUuLi4gc29zby4uLiB1bmQgIkVzIHJhZWNodApXaW0gdGVpbHQgRGlyIG1pdDogc2ljaCB3ZW5uIG1hbiBtZWhyZXJlIFNhY2hlbiBnbGVpY2h6ZWl0aWcgbWFjaHQuIiBobW0uLi4KV2ltIHRlaWx0IERpciBtaXQ6IGFsc28gRGVpbiBhcm1lcyBUaXNjaC1HcnVlbi4uLgoKTmV2b2ssIGRlciBzaWNoIGdhciBuaWNodCB6dSBqYW1tZXJuLCBkYSBlciBzb25zdCB3b2hsIEVsZiB1bmQgWmF1YmVyZXIKd2lyZC4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5hdHVya3VuZGUgbWFuZ2VsaGFmdCA6LSkgKEplbmFuZHJhLCAxNy4gQXByIDIwMDAsIDExOjE5OjMyKToKW0FsbGdlbWVpbjpSYXBwbF0ga2VubnQgd2VyIGZsb3JhIHVuZCBmYXVuYT8KW1RvZDpMYXJzXSBFaW5lIEZsb3JhIGhhdCBnZXJhZGUgUmFwcGwgdW1nZWJyYWNodC4KCkplbmFuZHJhLCBncmluc3QgbWFsIHdpZWRlciA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFiZXIgZ2FhYWFhbnogbGFuZ3NhbSAoTW9yZ290aCwgMTcuIEFwciAyMDAwLCAxMzoxNDozMyk6CkRpZSBWZXJ6YXViZXJ1bmcgdm9uIFRyYXVtYXMgSGFlbmRlbiBsYWVzc3QgbGFuZ3NhbSBuYWNoLgogIC4uLi5ub3JtYWwvRWlzaGFuZC4uLi4uIFRyYXVtYS4uLi4uLi4gOiBGZXVlcmRhZW1vbi4uICoqKioqKioqIC0tIEtyYWNoZW4KICAuLi4ubm9ybWFsL0Vpc2hhbmQuLi4uLiBUcmF1bWEuLi4uLi4uIDogRmV1ZXJkYWVtb24uLiAqKioqKioqKiAtLSB6dSBCcmVpCkRlciByaWVzaWdlIEZldWVyZGFlbW9uIGZhZWxsdCB0b3QgenUgQm9kZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIb2xsYSAoR29yb2csIDE3LiBBcHIgMjAwMCwgMTM6MjU6MDUpOgpUZXZpbGRvIHN0dWVyenQgc2ljaCBhdWYgQ2hvbGVyYSB1bmQgZnJpc3N0IHNpZSBhdWYuCgpXZW5uIGRhcyBtYWwga2VpbmUgTmFjaHdpcmt1bmdlbiBoYXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbHNvIHdlbm4gaWNoIGpldHp0IGVpbiBtYW5uIHdhZXJlIDopIChVbmFzYWksIDE3LiBBcHIgMjAwMCwgMTg6MDE6NTEpOgoKd2FzIG1hZ3Mgc2ljaCBzbyBhbGxlcyBlaW5mYWxsZW4gbGFzc2VuIDopIGd1dCBkYXNzIGljaCBrZWluIG1hbm4gYmluIDopCgpEdSBzcHVlcnN0LCB3aWUgRGVpbiBLb2xiZW4gdm9uIGVpbmVyIGdvZXR0bGljaGVuIEtyYWZ0IGR1cmNoc3Ryb2VtdCB3aXJkLiAKCnVuZCBzb3dhcyBuZW5udCBzaWNoICJXYWZmZSIgOikKClVuYSogKmJyZWl0IGdyaW5zZW5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWgsIGpldHp0IGphLi4uIChUc3VuYW1pLCAxNy4gQXByIDIwMDAsIDIxOjAyOjMzKToKVW5nZXNjaG5pdHRlbiB3aWUgaW1tZXI6Cgo+IGRhdGUKV2llIGJpdHRlPwo+IHplaXQKTW9uLCAxNy4gQXByIDIwMDAsIDIwOjU5OjU5LgpEdSBob2Vyc3QgZGllIFVociBzY2hsYWdlbjogRXMgaXN0IGpldHp0IDIxIFVoci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWxzbyB3ZW5uIGljaCBqZXR6dCBlaW4gbWFubiB3YWVyZSA6KSAoQXBzdSwgMTcuIEFwciAyMDAwLCAyMToxOTo1NSk6Cn4jISBybj1VbmFzYWkgcnQ9OTU1OTg3MzExIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU1OTg3MzExCkhtbSBqYSB1bmQgZXMgdmlicmllcnQgc2ljaGVybGljaC4gRGFtaXQgaGF1dCBtYW4gamVkZSBFbWFuemUgdW0hIDopIGFsc28Kd2llc28gbmljaHQgJ1dhZmZlJz8gCipHRyoKQXBzdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU293YXMgLi4uIChSaW5nb3IsIDE3LiBBcHIgMjAwMCwgMjI6MDU6NTkpOgpbQWxsZ2VtZWluOlJpbmdvciBpc3QgdW5zY2h1bGRpZyFdCkRlciBFaXNzY2hsZWNrZXIgendpbmtlcnQgRGlyIHp1LgoKUmluZ29yIG11cm1lbHQgd2FzIHZvbiAna2VpbmVyIG5pbW10IG1pY2ggZXJuc3QhJy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuIChEZWVwYmx1ZSwgMTguIEFwciAyMDAwLCAwOTowNDoyMCk6ClBlcnRpbmF4ZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKUGVydGluYXhlIHNhZ3Q6IDxIaWNrPiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmR1bW1lcyBHZW11ZXNlIC4uLiAoUGFsZSwgMTguIEFwciAyMDAwLCAxMzo0MTowMik6ClRqYSB3YXMgc2FndCBtYW4genUgc29sY2ggZWluZXIgVW52ZXJzY2hhZW10aGVpdCAuLi4KCkR1IHN0YXJyc3QgZGllIFJpZXNlbm1lbG9uZSBhbiB1bmQgYnJ1ZWxsc3Q6IFNFSSBTVElMTCEKRHUgYnJpbmdzdCBkaWUgUmllc2VubWVsb25lIHp1bSBTY2h3ZWlnZW4uCkRpZSBNZWxvbmUgcmV6aXRpZXJ0OiBNZWluIFVzZXIsIG1laW4gVXNlciwgdW5kIHNpZWhzdCBkdSBuaWNodCBkb3J0CkRpZSBNZWxvbmUgcmV6aXRpZXJ0OiBMYWdrb2VuaWdzIFF1ZXN0ZSBhbSBkdWVzdHJlbiBXYW5kJ3Jlcj8KRGllIE1lbG9uZSByZXppdGllcnQ6IE1laW4gUEMsIG1laW4gUEMsIGljaCBzZWggZXMgZ2VuYXUsCkRpZSBNZWxvbmUgcmV6aXRpZXJ0OiBlcyBzY2hlaW5lbiBkaWUgYWx0ZW4gTXVkZGVyIHNvIGdyYXUuCgpQYWxlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZHVtbWVzIEdlbXVlc2UgLi4uIChNb3Jnb3RoLCAxOC4gQXByIDIwMDAsIDEzOjUxOjI2KToKfiMhIHJuPVBhbGUgcnQ9OTU2MDU4MDYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU2MDU4MDYyClN0ZWh0IGRvY2ggc2Nob24gZGEsIHdpZXNvIGVzIG5pY2h0IGtsYXBwdDogRElFIE1lbG9uZSEhCgpEYXMgaXN0IHdlaWJsaWNoLi4udmVyc3VjaCBkb2NoIG1hbCBlaW5lIEZyYXUgc28gcnVoaWcgenUgc3RlbGxlbiA7LSkKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbGJlcmljaC4uLiAoU3dvdGwsIDE4LiBBcHIgMjAwMCwgMjA6MDI6MzcpOgpBbGJlcmljaCBydWZ0IDogJ05pYmx1bmdlbiBhbGwsIG5laWd0IGV1Y2ggbnVuIEFsYmVyaWNoICEgVWViZXJhbGwgd2VpbHQKZXIgbnVuIGV1Y2ggenUgYmV3YWNoZW4gIScKRHUgZnVyenQgaGVtbXVuZ3Nsb3MuCkZ1ZXJjaHRlcmxpY2hlciBHZXN0YW5rIGVyZnVlbGx0IGRlbiBSYXVtLgpBbGJlcmljaCBnZWh0IG5hY2ggU3VlZGVuLgoKQWhhLiBVbmQgYW5kZXJlIHdvbGxlbiBkYWZ1ZXIgZWluIFNjaHdlcnQgbmV1IHNjaG1pZWRlbi4uLgoKU3dvdGwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVhYWFoaGggKEFwb3BoaXMsIDE4LiBBcHIgMjAwMCwgMjA6Mjc6MTApOgpabGF0a28gc3RhcGZ0IGhlcmVpbi4KWmxhdGtvIHdpcmZ0IGVpbmUgTXVlbnplIGlucyBXYXNzZXIuClpsYXRrbyB3aXJmdCBlaW5lIE11ZW56ZSBpbnMgV2Fzc2VyLgpabGF0a28gd2lyZnQgZWluZSBNdWVuemUgaW5zIFdhc3Nlci4KWmxhdGtvIHdpcmZ0IGVpbmUgTXVlbnplIGlucyBXYXNzZXIuClpsYXRrbyBzYWd0OiBobQpabGF0a28gZGVua3QgICAuIG8gTyAoaG0gQmlnYnJvdGhlciBrb21tdCkKWmxhdGtvIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBabGF0a28uClpsYXRrbyBzdGFwZnQgaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4uCgpBcG9waGlzIGRlbmt0IC4gbyBPIChPZWhhLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyd2lsbGt1ZXI/IChOZXZvaywgMTguIEFwciAyMDAwLCAyMTo0NDo0Mik6CltaYXViZXJlcjpXaW1dIG9rYXksIGtsZWluZW4gRmVobGVyIGJlc2VpdGlndApEcm9sbGkgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgoKTmV2b2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpZSBiZWtvbW10IG1hbiBOZXZvayB6dXIgVmVyendlaWZlbHVuZz8gKE1lbmFjZSwgMTkuIEFwciAyMDAwLCAwNDo0MDo0OSk6CkFjaHR1bmcgZGVyIG5hY2hmb2xnZW5kZSBBcnRpa2VsIGlzdCBfc2Vocl8gbGFuZywgd2VyIGlobiBhbHNvIG5pY2h0IGxlc2VuCndpbGwsIHNvbGx0ZSBkZW4gdHJlYWQgYW0gYmVzdGVuIGdsZWljaCB1ZWJlcmdlaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdpZSBiZWtvbW10IG1hbiBOZXZvayB6dXIgVmVyendlaWZlbHVuZz8gKE1lbmFjZSwgMTkuIEFwciAyMDAwLCAwNDo0MzoxOSk6Cn4jISBybj1NZW5hY2UgcnQ9OTU2MTEyMDQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU2MTEyMDQ5CltBYmVudGV1ZXI6WGFuXSBrYW5uIG1pciBtYWwgYml0dGUgamVtYW5kIGJlaW0gSHVkZGxlIHF1ZXN0IGhlbGZlbiA/IGJpdHRlICEKW0FiZW50ZXVlcjpOZXZva10gZGllIHF1ZXN0LCBhbHNvIGJlaSBkZXIgaHVkZGxlIHF1ZXN0LiBkYXMgd2FyIGRpZSBlcnN0ZQpbQWJlbnRldWVyOk5ldm9rXSBoaWxmZSA7KQpbQWJlbnRldWVyOlhhbl0gaWNoIG5pY2h0cyBndXQgZGV1dHNjaApbQWJlbnRldWVyOlhhbl0gaWNoIGZpbmQga2VpbmUgYW5oYWx0c3B1bmt0ZSB3byBkaWVzZXIgaHVuZCBzZWluIGtvZW5udGUKW0FiZW50ZXVlcjpOZXZva10gaGludGVyYXVzZ2FuZyBuZWhtZW4gdW5kIGltIGdhcnRlbiBtYWwgZGFzCltBYmVudGV1ZXI6TmV2b2tdIGdlYnVlc2NodW50ZXJzdWNoZW4gaXJnZW5kd2llCltBYmVudGV1ZXI6WGFuXSBoaW50ZXJhdXNnYW5nID8KW0FiZW50ZXVlcjpOZXZva10gd2Fyc3RlIHNjaG9uIG1hbCBpbiBkZXIga3VlY2hlPwpbQWJlbnRldWVyOlhhbl0gamEKW0FiZW50ZXVlcjpYYW5dIG1vbWVudApbQWJlbnRldWVyOk1lbmFjZV0gaW4gZGVyIGt1ZWNoZSBpc3QgZWluIHZvcmhhbmcKW0FiZW50ZXVlcjpOZXZva10gZ2VuYXUuLi5hdSB3ZWlhLi4uZHUgaGFzdCBqYSBub2NoIGdhciBuaXggdm9uIGRlciBxdWVzdC4uLi4uCltBYmVudGV1ZXI6WGFuXSBzbyBpbiBkZXIga3VlY2hlIGJpbiBpY2ggYWJlciBkYSBpcyBrZWluIGhpbnRlcmF1c2dhbmcsIG51ciBuZQpbQWJlbnRldWVyOlhhbl0gdHVlciBuYWNoIG8gdW5kIG5hY2ggdyAoaW1tZXJoaW4gaGFiIGljaCBzY2hvbiBuZSBrYXJ0ZSB2b24KW0FiZW50ZXVlcjpYYW5dIGRlbSBoYXVzL2h1ZWdlbCkKW0FiZW50ZXVlcjpOZXZva10gRHUgaGFzdCBub2NoIGdhciBuaXguLi5ub2NoIG5ldCBtYWwgZGllIHF1ZXN0IHJpY2h0aWcKW0FiZW50ZXVlcjpOZXZva10gYW5nZWZhbmdlbi5tYWNoIG1hIGRlbiB2b3JoYW5nIGF1ZgpbQWJlbnRldWVyOk1lbmFjZV0gaGludGVybSBWb3JoYW5nIGdlaHQgcyB3ZWl0ZXIgKHVuZCBlcnN0IHJpY2h0aWcgbG9zKQpbQWJlbnRldWVyOlhhbl0gd2llc28gdm9yaGFuZCBkYSBzdGVodCBuaWNodHMgdm9uIG5lbSB2b3JoYW5nIGRhIGlzIG5vY2huaWNodApbQWJlbnRldWVyOlhhbl0gbWFsIG4gZmVuc3RlcgpbQWJlbnRldWVyOk1lbmFjZV0gbWFjaCBkb2NoIG1hbCBkaWUgYXVnZW4gYXVmIHVuZCBzY2hhdSBkaXIgZGllIHdhZW5kZSBhbiEKW0FiZW50ZXVlcjpYYW5dIGFoYWggZGEgaXMgamEgZG9jaCBlaW5lcgpbQWJlbnRldWVyOk5ldm9rIHNldWZ6dF0KW0FiZW50ZXVlcjpYYW5dIGFuIGRlciBub3Jkd2FuZApbQWJlbnRldWVyOk1lbmFjZV0gbmljaHQgYWxsZXMgaXN0IHNvZm9ydCB6dSBzZWhlbgpbQWJlbnRldWVyOk5ldm9rXSBhbHNvIGFlaC4uYmlzdCBEdSBzaWNoZXIgZGFzcyBEdSBkaWUgcXVlc3QgbWFjaGVuIHdpbGxzdD8KW0FiZW50ZXVlcjpYYW5dIGplcApbQWJlbnRldWVyOk5ldm9rXSBuaW1tcyBuZXQga3J1bW0sIGFiZXIgd2VubiBEdSBkZW4gVm9yaGFuZyBuZXQgc2llaHN0IGRhbm4KW0FiZW50ZXVlcjpOZXZva10gc2NoYWZmc3RlIGRpZSBxdWVzdCBuZXQKW0FiZW50ZXVlcjpNZW5hY2VdIG5hIGRhbm4gdmllbCB2ZXJnbnVlZ2VuISBkYXMgaXN0IG5lIHF1ZXN0LCB3byBtYW4gX3ZpZWxfCltBYmVudGV1ZXI6TWVuYWNlXSBmb3JzY2hlbiBtdXNzIQpbQWJlbnRldWVyOkV0YWluXSB1bmQgdmVyZ2lzcyBuaWNodCwgX2plZGVzXyBkZXRhaWwgdW50ZXJzdWNoZW4uIG1laHJmYWNoLApbQWJlbnRldWVyOkV0YWluXSB3ZW5uIGVzIHNlaW4gbXVzcy4KW0FiZW50ZXVlcjpNZW5hY2VdIHVuZCBhbGxlcyBtb2VnbGljaGUgYXVzcHJvYmllcmVuCltBYmVudGV1ZXI6WGFuXSBuYWphLCBpY2ggZGFjaHRlLCB3ZW5uIGljaCB1bnQgd2FlbmRlIHNhZ2UgcmVpY2h0IGRhcyAuLi4KW0FiZW50ZXVlcjpFdGFpbiBmaW5kZXQgZGllIGRldGFpbHMgc28gc2Nob2VuIV0KW0FiZW50ZXVlcjpFdGFpbl0gbmVpbiwgbGFuZ2UgbmljaHQsIHhhbi4KW0FiZW50ZXVlcjpYYW5dIG5hZ3V0bSwgamV0enQgd2VpcyBpY2hzIGphCltBYmVudGV1ZXI6WGFuXSAtbQpbQWJlbnRldWVyOlhhbl0gZ2lidCBlcyBuIHN5bnRheCB1bSBuZSBmdXNzbWF0dGUgaGVydm9yenV6aWVoZW4gPwpbQWJlbnRldWVyOk1lbmFjZV0gc2NoYXUgZHJ1bnRlcgpbQWJlbnRldWVyOlhhbl0gdGh4CltBYmVudGV1ZXI6WGFuXSB3aWUga2FubiBpY2ggZGllIGt1aCBkYXp1IGJyaW5nZW4gZGllIHN0ZWluZSB3ZWd6dXppZWhlbiA/CltBYmVudGV1ZXI6TmV2b2tdIHdhYWFhcz8/Pz8KW0FiZW50ZXVlcjpYYW5dIG5hamEsIGljaCB3dWVyZCBnZXJuZSBkaWUgc3RlaW5lIGJld2VnZW4gdW5kIGljaCBiaW4genUKW0FiZW50ZXVlcjpYYW5dIHNjaHdhY2ggZGFmdWVyCltBYmVudGV1ZXI6TmV2b2tdIHVuZCB3aWUgenVyIGhvZWxsZSBrb21tc3QgZHUgYXVmIGRlbiBzY2htYWxlbiB0cmljaHRlciBkYXNzCltBYmVudGV1ZXI6TmV2b2tdIGVpbmUgS1VIIGRhcyBmdWVyIGRpY2ggbWFjaHQ/Pz8KW0FiZW50ZXVlcjpYYW5dIHVuZCBkYXMgOiBEZXIgU3RlaW4gaXN0IHZpZWwgenUgc2Nod2VyIGZ1ZXIgRGljaCEgRHUgbXVzc3QKW0FiZW50ZXVlcjpYYW5dIGVpbmUgYW5kZXJlIE1vZWdsaWNoa2VpdCBkaWUgU3RlaW5lIHp1IGJld2VnZW4hICA8LSBrbGluZyBzbwpbQWJlbnRldWVyOlhhbl0gdmVyZnVlaHJlcmlzY2gKW0FiZW50ZXVlcjpOZXZva10gamEgYWJlciB3aWVzbyBhdXNnZXJlY2huZXQgZGllIEtVSApbQWJlbnRldWVyOk5ldm9rXSBpY2ggZ2xhdWIgZGllIHF1ZXN0IGlzIGVjaHQgbm9jaCBuaXggZnVlciBkaWNoLi4uCltBYmVudGV1ZXI6WGFuXSBkaWUgc3RlaHQgZGEgZ3JhZCAodW5kIG1laW5lIGthdHplIGlzIGF1Y2ggbmljaHQgc3RhcmsgZ2VudWcpIApbQWJlbnRldWVyOk5ldm9rIHNjaHVldHRlbHQgbnVyIG5vY2ggZGVuIEtvcGYuXQpbQWJlbnRldWVyOlhhbl0gYWJlciB3YXJ1bSBkZW5uIG5pY2h0ID8gd2VubiBrZWluIHBmZXJkIGRhIGlzdCBtdXNzIGViZW4gbmUKW0FiZW50ZXVlcjpYYW5dIGt1aCByYW5uICEgb2RlciBldHdhIG5pY2h0ID8KW0FiZW50ZXVlcjpOZXZva10gZHUga29lbm50ZXN0IGF1Y2ggZGllIGdyYXNoYWxtZSB1ZWJlcnJlZGVuIGRhc3Mgc2llIG1hbCBpaHJlCltBYmVudGV1ZXI6TmV2b2tdIG11c2tlbG4gc3BpZWxlbiBsYXNzZW4uLi4uLi5tYW4gbWFuIG1hbgpbQWJlbnRldWVyOlhhbl0gbmFqYW0sIGljaCBoYWIgbiBzZWlsIHVuZCBuZSBrdWguLiB3YXMgYnJhdWNodCBtYW4gZGVubiBub2NoCltBYmVudGV1ZXI6WGFuXSBtZWhyID8KW0FiZW50ZXVlcjpCbGF1YXVnZV0gb2RlciBlaW5lbiBBYmhhbmcgZ3JhYmVuIHVuZCBkaWUgc3RlaW5lIHJ1bnRlcmt1bGxlcm4KW0FiZW50ZXVlcjpCbGF1YXVnZV0gbGFzc2VuCltBYmVudGV1ZXI6TmV2b2tdIGljaCBnbGF1YmUgRHUgc29sbHRlc3QgbmUgYW5kZXJlIHF1ZXN0IG1hY2hlbi4uLgpbQWJlbnRldWVyOlhhbl0gbm9lb2VvZQpbQWJlbnRldWVyOk5ldm9rXSBkb2NoIGRvY2gKW0FiZW50ZXVlcjpYYW5dIHdhcyBhbmRlcmVzIGFscyBkaWUgc3RlaW5lIHVuZCBkaWUga3VoIHNpbmQgZGEgZHJhdXNzZW4gamEKW0FiZW50ZXVlcjpYYW5dIG5pY2h0CltBYmVudGV1ZXI6TmV2b2tdIHdlbm4gRHUgbmV0IG1hbCBkaWUgZWluZmFjaGVuIFRlaWxlIGRpZXNlciBRdWVzdCByYWZmc3QuLi4KW0FiZW50ZXVlcjpOZXZva10gdmllbGxlaWNodCBzb2xsdGVzdCBEdSBhdWNoIGVpbmZhY2ggc2NobGFmZW4gZ2VoZW4uLmlzIHNjaG9uCltBYmVudGV1ZXI6TmV2b2tdIHdhcyBmcnVlaCBpbiBEZXV0c2NobGFuZC4udmllbGxlaWNodCB3ZW5uIER1IGF1c2dlc2NobGFmZW4KW0FiZW50ZXVlcjpOZXZva10gYmlzdC4uCltBYmVudGV1ZXI6WGFuXSB3aWVzbyBkaWUga3VoIHd1cmRlIGFuZ2VtYWx0IHVuZCBkZXIgaHVuZCBpcyB3ZWNoIHVuZCBub2NoIG4KW0FiZW50ZXVlcjpYYW5dIHBhYXIgc2FjaGVuIHNpbmQgd2VjaCB1bmQgaWNoIHNvbGwgZGVuIHZlcmFudHdvcnRsaWNoIGZpbmRlbgpbQWJlbnRldWVyOlhhbl0gPwpbQWJlbnRldWVyOk5ldm9rXSBhdWNoCltBYmVudGV1ZXI6WGFuXSB3aWUgYXVjaCA/CltBYmVudGV1ZXI6TmV2b2tdIG5hamEgZGllIFF1ZXN0IGlzIGV0d2FzIGtvbXBsZXhlci4uLi5kaWUgNjUgUHVua3RlIGRpZSBzaWUKW0FiZW50ZXVlcjpOZXZva10gd2VydCBpc3Qgd2VyZGVuIERpciBuZXQgZWluZmFjaCBzbyBnZXNjaGVua3QuLi4KW0FiZW50ZXVlcjpYYW5dIGRhY2h0IGljaCBtaXIgc2Nob24KW0FiZW50ZXVlcjpOZXZva10gbmFqYSByZWRlIHZpZWxsZWljaHQgYXVjaCBtYWwgbWl0IGVpbiBwYWFyIGRlciBhbndlc2VuZGVuCltBYmVudGV1ZXI6TmV2b2tdIExldXRlLi4uCltBYmVudGV1ZXI6TmV2b2tdIGRlbiBOUENzIGluIGRlciBRdWVzdCwgZ2lidCBqYSBnZW51ZwpbQWJlbnRldWVyOlhhbl0ganVwCkR1IHRlaWxzdCBOZXZvayBtaXQ6IGVpZ2VudGxpY2ggc29sbHRlIG1hbiBkYXMgYXVmIHNjaG1hcnJuIHBvc3Rlbiwgb2Rlcj8KW0FiZW50ZXVlcjpYYW5dIGFiZXIgbmFjaCB3YXMga2FubiBpY2ggZGllIGRlbm4gbm9jaCBmcmFnZW4gPwpbQWJlbnRldWVyOlhhbl0gZXBwc3RlaW4uLi4uCk5ldm9rIHRlaWx0IERpciBtaXQ6IGljaCBrcmllZyBoaWVyIGZhc3QganVuZ2UgaHVuZGUgYmVpLi4uCltBYmVudGV1ZXI6TWVuYWNlIGRlbmsgLiBvIE8gKGFoLCBlciBoYXQgZXMhKV0KRHUgdHJvZXN0ZXN0IE5ldm9rIGF1cyBkZXIgRmVybmUuCk5ldm9rIHNldWZ6dCBzdGVpbmVyd2VpY2hlbmQgYXVzIGRlciBGZXJuZS4KW0FiZW50ZXVlcjpYYW5dIGJvdGhvIG11c3MgbWFuIG5pY2h0IGdsYXVlYm4gb2RlciA9CltBYmVudGV1ZXI6WGFuXSAtPSs/CltBYmVudGV1ZXI6TWVuYWNlXSBnbGF1YmVuPwpbQWJlbnRldWVyOlhhbl0gb2ssIG11c3MgbWFuIG5pY2h0CltBYmVudGV1ZXI6TWVuYWNlIGZhZWxsdCBnbGVpY2ggdm9uIEdsYXViZW4gYWIuXQpbQWJlbnRldWVyOlhhbl0gbmFqYW0sIHdlbm4gZXIgZXJzdCBzYWd0IHNlaW4gbW9uc3RlciBoYXQgZ3J1ZW5lIGhhdXQgdW5kIGRhbm4KW0FiZW50ZXVlcjpYYW5dIHNhZ3QgZGllIGhhdXQgd2FlcmUgbGlsYS4uLi4KW0FiZW50ZXVlcjpYYW5dIG5hY2ggd2FzIGthbm4gaWNoIGRpZSBkZW5uIGZyYWdlbiB3ZW5uIGljaCB3aXNzZW4gd2lsbCB3aWUgaWNoCltBYmVudGV1ZXI6WGFuXSBkaWUgc2NoKioqKioga3VoIHNhdWJlciBiZWtvbW1lID8KW0FiZW50ZXVlcjpNZW5hY2VdIHNjaGF1IGRpciBtYWwgZGllIGtpbmRlciBhbiwgd2FzIGRpZSBzbyBkYWJlaSBoYWJlbgpbQWJlbnRldWVyOlhhbl0gawpbQWJlbnRldWVyOk5ldm9rIGZyYWd0IHNpY2ggd2lya2xpY2ggb2IgZGllIFF1ZXN0IG5pY2ggZXR3YXMgenUgc2Nod2llcmlnIGlzdApmdWVyIHNvIGtsZWluZSBTcGllbGVybGV2ZWwuLi5dCltBYmVudGV1ZXI6TWVuYWNlIGRlbmt0IC4gbyBPIChGb3JzY2hlbiwgSnVuZ2UhIEZvcnNjaGVuISldCltBYmVudGV1ZXI6WGFuXSBhYmVyIGVpbiBnZWxiZXMgaGVtbmQgdW5kIG5lIHJvdGUgaG9zZSBzb2xsdGUgbWlyIG5pY2h0CltBYmVudGV1ZXI6WGFuXSB2ZXJkYWVjaHRpZyBhdWZmYWxsZW4gb2RlciA/CltBYmVudGV1ZXI6RG90eiB0cm9lc3RldCBNZW5hY2UuXQpbQWJlbnRldWVyOlhhbl0gKnBsaW5nKiAgICAgICAgCltBYmVudGV1ZXI6WGFuIGdlaHQgZWluIGxpY2h0IGF1Zl0KW0FiZW50ZXVlcjpNZW5hY2VdIG5pY2h0IHdhcyBkaWUgQU5oYWJlbiwgd2FzIGRpZSBEQUJFSWhhYmVuIQpbQWJlbnRldWVyOlhhbl0gaWNoIGxpZWJlIHRlcnBlbnRpZW4KW0FiZW50ZXVlcjpCbGF1YXVnZV0gdmllbGxlaWNodCBhc29sbHRlIGljaCBkb2NoIG1pdCBzY2hyZWliZW4/CltBYmVudGV1ZXI6TWVuYWNlXSBkYXMgd2lyZCBqYSBiYWxkIHp1IG5lciBrb21wbGV0dGxvZXN1bmcgaGllcgpbQWJlbnRldWVyOlhhbl0gamV0eiB3ZWlzIGljaHMgaG9mZmVudGxpY2ggIQpbQWJlbnRldWVyOk5ldm9rIHdhZ3QgZGFzIHp1IGJlendlaWZlbG5dCltBYmVudGV1ZXI6QmxhdWF1Z2VdIGRhY2h0IGljaCBtaXIgYXVjaCBzY2hvbjogeGFuLCBrb2VubnRlc3QgZHUgbm9jaCBtYWwKW0FiZW50ZXVlcjpCbGF1YXVnZV0gZGVpbmUgRnJhZ2VuIGZ1ZXIgbWljaCB3aWVkZXJob2xlbgpbQWJlbnRldWVyOk5ldm9rIHNpbmd0ICJZb3UgYWluJ3Qgc2VlbiBub3RoaW5nIHlldC4uLiJdCltBYmVudGV1ZXI6WGFuXSBkYXMgcXVlc3QgZXJpbm5lcnQgbWljaCBhbiBkYXMgZ2FtZSBzaW1vbiB0aGUgc291cmNlcmVyCltBYmVudGV1ZXI6TmV2b2tdIERJRQpbQWJlbnRldWVyOk5ldm9rXSBESUUgUXVlc3QKW0FiZW50ZXVlcjpYYW5dIGphamEKW0FiZW50ZXVlcjpOZXZvayByb2VjaGVsdC5dCltBYmVudGV1ZXI6TWVuYWNlIGJydWhpZ3QgTmV2b2suXQpbQWJlbnRldWVyOk5ldm9rXSB1bmQgZXMgaXN0IHNvcmNlcm9yCltBYmVudGV1ZXI6TmV2b2tdIGFlaCBzb3JjZXJlcgpbQWJlbnRldWVyOk5ldm9rXSBtYW4gRHUgbWFjaHN0IG1pY2ggbm9jaCBnYW56IGtvbmZ1cwpbQWJlbnRldWVyOk1lbmFjZV0gZHUgbWVpbnN0IEtvbmZ1eml1cywgTmV2b2shIDtvKQpbU2VoZXI6TmV2b2tdIGljaCB3YXIgbmljaCBzbyBhbHMgc3BpZWxlciBhdWYgZGVtIGxldmVsIG9kZXI/IGJpdHRlIGJpdHRlCltTZWhlcjpOZXZva10gbmljaHQuLi4KW1NlaGVyOk1lbmFjZV0gU08gd2FyIGF1ZiBkZW0gbGV2ZWwga2VpbmUKW1NlaGVyOk1lbmFjZV0ga2VpbmVyIG1laW4gaWNoCltTZWhlcjpOZXZva10gZXIgdW5kIE1lbHdpbi4uLi4uCltTZWhlcjpOZXZva10gZGFzIGlzIGVjaHQuLi4uLi5hbHNvIGRhIGZyYWcgaWNoIG1pY2ggbWFuY2htYWwgZWNodCB3aWUgZXMgZGllCltTZWhlcjpOZXZva10gaW5zIEludGVybmV0IGdlc2NoYWZmdCBoYWJlbi4uLgpbU2VoZXI6TWVuYWNlXSBkYXMgd3VlcmRlIG5lbiBlY2h0IHN1cGVybGFuZ2VuIHNzY2htYXJybiBhcnRpa2VsIGdlYmVuLCBzb2xsCltTZWhlcjpNZW5hY2VdIGljaCBub2NoIG1hbCB6dXJ1ZWNrc2tyb2xsZW4gdW5kIGFsbGVzIHBvc3Rlbj8KW1NlaGVyOk5ldm9rXSBkYXMgaXMgc2Nob24gd2llZGVyIHp1IHRyYXVyaWcgZGFmdWVyLi5kYXMgZ2xhdWJ0IHVucyBrZWluZXIKW1NlaGVyOk1lbmFjZV0gaWNoIGZ1ZXJjaHRlIGF1Y2ggCgpNZW5hY2UgKmVzIGRvY2ggbWFsIHBvc3RlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2llIGJla29tbXQgbWFuIE5ldm9rIHp1ciBWZXJ6d2VpZmVsdW5nPyAoTW9yZ290aCwgMTkuIEFwciAyMDAwLCAwNzozNDozMCk6Cn4jISBybj1NZW5hY2UgcnQ9OTU2MTEyMTk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU2MTEyMDQ5ClhhbiBpc3QgbmljaHQgYW53ZXNlbmQuClp1bGV0enQgYXVzZ2Vsb2dndDogTWl0LCAxOS4gQXByIDIwMDAsIDA1OjIyOjE1ICgwMjoxMTowMSkKVm9sbGVyIE5hbWU6IFhhbiBkZXIgdGxvcGF0c2hjZ2llIEp1Z256YXVyYmVlcgpSYXNzZTogTWVuc2NoLCAgR2lsZGU6IFphdWJlcmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiA3ZCAwNjo0NjozNiwgICBTcGllbGVybGV2ZWw6IDgsICAgR2lsZGVubGV2ZWw6IDMKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogRnJlLCAxNC4gTWFpIDE5OTksIDExOjI0OjM5CkhvbWVwYWdlOiBodHRwOi8vd3d3LkRhZW1tZXJsaWNodC5kZQpJQ1E6IDU3Mjc3NTk4CkJpc2hlciBiZXJlaXRzIDEzIG1hbCBnZXN0b3JiZW4KCk1hY2ggYWNodGUgYXVmIGRpZSBIb21lcGFnZSAhIDstKQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdyYWRlIGFtIFNhbmR0aWdlci4uLiAoRGZlbmRlciwgMTkuIEFwciAyMDAwLCAwOToyMjoyMSk6ClJhc3B1dGluIGVyc2NoZWludCBpbiBlaW5lbSBNZWVyIGF1cyBGbGFtbWVuLgpUdXRzenQgc2NobGVpY2h0IGJsdXRnaWVyaWcgaGVyZWluLgpEdSBzY2hhdXN0IGRlemVudCB3ZWcsIGFscyBzaWNoIFJhc3B1dGluIHVuZCBKYW5pc2EgdmVybGllYnQgaW4gZGllIEFybWUKc2lua2VuLgpSYXNwdXRpbiB2ZXJzY2h3aW5kZXQgaXJnZW5kd2llIG5hY2ggV2VzdGVuLgpUdXRzenQgd2l0dGVydCBCbHV0IHVuZCBzY2hsZWljaHQgZGF2b24uCkphbmlzYSB3aW5rdCBlaW5lbSBTYW5kdGlnZXIsIE5ldm9rLCAqKiosICoqKiwgKioqLCAqKiogdW5kIERpciB6dQpOZXZvayBkZW5rdCAgIC4gbyBPIChkcml2ZSBieSBwb3BwZW4/IHRzdHN0cykKCkRmZW5kZXIsIGRlbmt0LCBkaWVzIHdhZXInIGVpbiBRdWVzdC1NVUQuLi4gOl4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXaWUgYmVrb21tdCBtYW4gTmV2b2sgenVyIFZlcnp3ZWlmZWx1bmc/IChCb2luZywgMTkuIEFwciAyMDAwLCAwOTozNzo1MSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTk1NjEyMjQ3MCByZz1zY2htYXJybgp+IyEgdGlkPTk1NjExMjA0OQpXYXJzdCBEdSBtYWwgYXVmIGRlciBIb21lcGFnZT8gRGllIGlzdCBlY2h0IHNlaGVuc3dlcnQgLi4uIDspCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdpZSBiZWtvbW10IG1hbiBOZXZvayB6dXIgVmVyendlaWZlbHVuZz8gKEhvb2QsIDE5LiBBcHIgMjAwMCwgMDk6NTI6NDQpOgp+IyEgcm49Qm9pbmcgcnQ9OTU2MTI5ODcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU2MTEyMDQ5CmhtcGYuLi5qZXR6dCBoYWIgaWNoIGV4dHJhIHNob2Nrd2F2ZSBpbnN0YWxsaWVydCB3ZWdnZW4gZGVpbmVzIHRpcHMgOikKd2FzIGZ1ZXIgZWluZSB6ZWl0dmVyc2Nod2VuZHVuZyAqZ3JpbnMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXaWUgYmVrb21tdCBtYW4gTmV2b2sgenVyIFZlcnp3ZWlmZWx1bmc/IChOb25uZSwgMTkuIEFwciAyMDAwLCAwOTo1MzowMik6Cn4jISBybj1Cb2luZyBydD05NTYxMjk4NzEgcmc9c2NobWFycm4KfiMhIHRpZD05NTYxMTIwNDkKV2FhYWgsIGljaCBhdWYgZGllIEhvbWVwYWdlOiBzY2h3YXJ6LiBPa2F5LCBhbHNvIGRvY2ggc2hvY2t3YXZlIGluc3RhbGxpZXJlbi4KVW5kIGRhbm4gZGFzISAqZ3J1bW1lbCoKCk5hamEsIGljaCBrYW5uIGljaCBtaXIgYXV0c2NoLmRlIHdlbmlnc3RlbnMgYW5pbWllcnQgYW5zY2hhdWVuIDstKQoKTm9ubmUsIHB1cmlzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdpZSBiZWtvbW10IG1hbiBOZXZvayB6dXIgVmVyendlaWZlbHVuZz8gKEJvaW5nLCAxOS4gQXByIDIwMDAsIDEyOjQ4OjE4KToKfiMhIHJuPU5vbm5lIHJ0PTk1NjEzMDc4MiByZz1zY2htYXJybgp+IyEgdGlkPTk1NjExMjA0OQpBbHNvIGljaCBoYXR0ZSBzaG9ja3dhdmUgbmljaHQgaW5zdGFsbGllcnQsIGJlaSBtaXIgd2FyIGRpZSBTZWl0ZQplaW5mYWNoIG51ciB3ZWlzcyAuLi4gOykKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ29ldHRsaWNoZSBCZWdydWVzc3VuZy4uLiAoV3Vyc3QsIDE5LiBBcHIgMjAwMCwgMTM6MDI6NDEpOgoKIFJ1bWF0YSB3YWVjaHN0IHBsb2V0emxpY2ggYXVzIGRlbSBCb2RlbiBoZXJ2b3IuCiBSdW1hdGFzIEFybSBzY2hpZXNzdCBwbG9ldHpsaWNoIGFscyBSYW5rZSBoZXJ2b3IgdW5kIGR1cmNoYm9ocnQgRGljaC4KIFNlaSBmcm9oIGRhc3MgRHUgdW5zdGVyYmxpY2ggYmlzdCwgc29uc3Qgd2FlcmUgZXMgZWJlbiBEZWluIEVuZGUgZ2V3ZXNlbi4KID4gUnVtYXRhIGZyYWd0OiB3byBpc3QgZGVubiBkYSBkaWUgc2ljaGVyaGVpc2FiZnJhZ2U/CiBSdW1hdGEgd3VuZGVydCBzaWNoLgoKCkVyc3QgemFwcGVuLCBkYW5uIGZyYWdlbi4gU28gaXNzZXMgcmljaHRpZyEgOm8pCi0+d3Vyc3QoKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW5hdG9taXNjaGUgTWVpc3RlcmxlaXN0dW5nIChOb25uZSwgMTkuIEFwciAyMDAwLCAxMzoyNDo1OSk6CldpZSBtYWNodCBkaWUgSHlkcmEgZGVubiBkYXM/CgpFaW4gSHlkcmFrb3BmIHZlcnN0YXVjaHQgc2ljaCBiZWkgZGVtIFNjaGxhZyBkaWUgSGFuZC4KCk5vbm5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGdvZXR0bGljaGUgQmVncnVlc3N1bmcuLi4gKEhvYm8sIDE5LiBBcHIgMjAwMCwgMTM6Mzg6MjcpOgp+IyEgcm49V3Vyc3QgcnQ9OTU2MTQyMTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU2MTQyMTYxCldlciB3YXIgZGFzIGRvY2gsIGRlciBhdXNwcm9iaWVydGUsIG9iIHNpY2ggZGVyIHNodXRkb3duIGF1Y2ggb2huZSBBcmd1bWVudGUKYXVmcnVmZW4gbGFlc3N0PwoKICBIb2JvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFnaWVyd2lsbGt1ZXI/IChXaW0sIDE5LiBBcHIgMjAwMCwgMTQ6MTg6MTkpOgp+IyEgcm49TmV2b2sgcnQ9OTU2MDg3MDgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU2MDg3MDgyCldlbm4gZGFzIG1hbCBtaXQgZ3JvZXNzZXJlbiBGZWhsZXJuIGF1Y2gga2xhcHBlbiB3dWVyZGUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLiBiaXMgaW4gYWxsZSBFd2lna2VpdC4gKFphbmFjLCAxOS4gQXByIDIwMDAsIDE5OjA1OjA4KToKRGVyIE9yayBmYWVsbHQgdG90IHp1IEJvZGVuLgpEZXIgT3JrIHNjaGF1dCBEaWNoIGhhc3NlcmZ1ZWxsdCBhbi4KCi4uLiBzZWx0c2FtLiBBYmVyIHNvIHN0ZWh0IGVzIGdlc2NocmllYmVuLgoKWmFuYWMgLSBiZXVucnVoaWd0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBnb2V0dGxpY2hlIEJlZ3J1ZXNzdW5nLi4uIChSdW1hdGEsIDE5LiBBcHIgMjAwMCwgMjA6NDI6NDYpOgp+IyEgcm49SG9ibyBydD05NTYxNDQzMDcgcmc9c2NobWFycm4KfiMhIHRpZD05NTYxNDIxNjEKamFqYSwgaWNoIHdlcmRlIGFsdCwgZGFtYWxzIGhhZXR0ZSBpY2ggenVlcnN0IG5lbiBzcGllbGVyIGJlc3VjaHQuCnJ1bWF0YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2FueiBzY2hvZW4gcnVtZ2Vrb21tZW4uLi4gKE5ldm9rLCAxOS4gQXByIDIwMDAsIDIyOjMxOjM1KToKW1phdWJlcmVyOlhhbl0gYWxzIGljaCBub2NoIGthcmF0ZWthIG9kZXIgYWJlbnRldXJlciB3YXIgd2FyIGRhcyBtZXR6ZWxuCltaYXViZXJlcjpYYW5dIGVpbmZhY2hlbiAoZGEgaGF0IG1pY2gga2VpbmUgYW1laXNlIGJlc2llZ3QpClhhbiBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogTW9iaWxDb20uCkVpbmdlbG9nZ3Qgc2VpdDogTWl0LCAxOS4gQXByIDIwMDAsIDIwOjU5OjM1ClZvbGxlciBOYW1lOiBYYW4gZGVyIFBydWVmdW5nc2Fud2FlcnRlcgpSYXNzZTogTWVuc2NoLCAgR2lsZGU6IFphdWJlcmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiA3ZCAxMjoxNTo1MiwgICBTcGllbGVybGV2ZWw6IDgsICAgR2lsZGVubGV2ZWw6IDQKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogRnJlLCAxNC4gTWFpIDE5OTksIDExOjI0OjM5CkhvbWVwYWdlOiBodHRwOi8vd3d3LkRhZW1tZXJsaWNodC5kZQpJQ1E6IDU3Mjc3NTk4CkJpc2hlciBiZXJlaXRzIDEzIG1hbCBnZXN0b3JiZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoamEuLi4gKFNvcmNlcmVyLCAyMC4gQXByIDIwMDAsIDAwOjE1OjExKToKPiB1bnQgc3R1ZmUKQW5nZXNpY2h0cyBkZXMgWnVzdGFuZHMgZGVzIEdhbmdlcyBrb2VubnRlIHNpY2ggZWluZSBzb2xjaGUgU3RvbHBlcmZhbGxlIGFscwp6aWVtbGljaCB0b2VkbGljaCBlcndlaXNlbi4gRGllIFN0dWZlIGlzdCBuaWNodCBzZWhyIGd1dCB6dSBlcmtlbm5lbiwgRHUgYmlzdApmcm9oLCBzaWUgZW50ZGVja3QgenUgaGFiZW4uCj4gbgpUcm90eiBEZWluZXIgVm9yc2ljaHQgaGFzdCBEdSBlaW5lIFN0dWZlIGltIEdhbmcgdWViZXJzZWhlbiwgdWViZXIgZGllIER1IG51bgpzdG9scGVyc3QuIER1cmNoIERlaW5lbiBGYWxsIGhhc3QgRHUgZWluZSBFcnNjaHVldHRlcnVuZyBhdXNnZWxvZXN0LCBkaWUgZGVuCkdhbmcgdWViZXIgRGlyIHp1bSBFaW5zdHVyeiBicmluZ3QgdW5kIERpY2ggdW50ZXIgc2Nod2VyZW4gU3RlaW5lbiBiZWdyYWVidC4gCkRlciBUZWRkeSBrbnVkZGVsdCBEaWNoIGVpbiBsZXR6dGVzIE1hbC4KW1RvZDpMYXJzXSBTY2h3ZXJlIFN0ZWluYnJvY2tlbiBoYWJlbiBnZXJhZGUgU29yY2VyZXIgdW1nZWJyYWNodC4KW1RvZDpTY2h3ZXJlIFN0ZWluYnJvY2tlbiBicmluZ2VuIGRlbiBVbnZvcnNpY2h0aWdlbiBkZW4gVG9kICFdCgpTb3JjZXJlciAtIHd1bmRlcnQgYmFsZCBnYXIgbml4IG1laHIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldm9rIGFtIEVuZGU/IChMdWcsIDIwLiBBcHIgMjAwMCwgMDE6MDU6MjEpOgoKWnVlcnN0IHRlaWx0IGRlciBLZXJsIG1pciBtaXQgaWNoIHNvbGwgIkx1ZyIgZmluZ2VybiB1bmQgYXVmIG1laW5lbiBkZXplbnRlbgpIaW53ZWlzLCB3ZXIgaWNoIGJpbjoKCk5ldm9rIHRlaWx0IERpciBtaXQ6IG5ldCBsdWcuLi4uc2hpdCBpY2ggYmluIGV0d2FzIG5lYmVuIG1pci4uLi4uLmFyZ2ggWzAxOjAzXQoKCkRhcyBBbHRlciB3aXJrdCBiZWkgbWFuY2hlbiBlYmVuIGV0d2FzIGhhZXJ0ZXIuLi4KTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUeXBpc2NoIENoYW90ZW4uLi4gKE5ldm9rLCAyMC4gQXByIDIwMDAsIDA4OjU1OjUwKToKU3VmZiBhbSBNb3JnZW4gdmVydHJlaWJ0IEt1bW1lciB1bmQgU29yZ2VuCm9kZXIgc28gYWVobmxpY2gKTWVzaXJpaSB0ZWlsdCBEaXIgbWl0OiBpY2ggaGFiIGVpbmVuIHZlcnNjaGVua3QgdW5kIGVpbmVuIGluIGRlciBrcm9uZQoKa2VpbmUgd2VpdGVyZW4gRnJhZ2VuLCBldWVyIEVocmVuLi4uCgpOZXZvaywgbnVlY2h0ZXJuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFp1ZmFsbHN6YWhsZW4gKEhvYm8sIDIwLiBBcHIgMjAwMCwgMTE6MDE6MDUpOgp+IyEgcm49VHJveSBydD05NTYyMTgwMjEgcmc9bWFnaWVyLmxwYwp+IyEgdGlkPTk1NjIxODAyMQplcXVpZGlzdGFudD8KSXN0IGRhcyBkaWUgbmV1ZSBSZWNodHNjaHJlaWJ1bmc/IERhbm4gZXJrbGFlciBpY2ggZGVuIFZlcmFudHdvcnRsaWNoZW4gbWFsCmRlbiBVbnRlcnNjaGllZCB6d2lzY2hlbiBQZmVyZCB1bmQgYWVobmxpY2guLi4KClVlYnJpZ2VuczogZXF1aWRpc3RhbnQgPSBBYnN0YW5kIGVpbmVzIFBmZXJkZXMgPz0gMSBQZmVyZGVsYWVuZ2UgPSBjYS4gMiw1MG0KCipsYWJlcmxhYmVyKgoKICAgSG9ibwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBadWZhbGxzemFobGVuIChIdW1uaSwgMjAuIEFwciAyMDAwLCAxMTo0MDozNyk6Cn4jISBybj1Ib2JvIHJ0PTk1NjIyMTI2NSByZz1zY2htYXJybgp+IyEgdGlkPTk1NjIxODAyMQpHcnIuCgpOaWNodCBudXIgZGFzcyBMZXV0ZSB1ZWJlciBpaHIgRmJhbmQga29tbXVuaXppZXJlbiwgd2FzIGRpZWplbmlnZW4gbmljaHQKdmVyc3RlaGVuLCBkaWUgbnVyIGJlaSBlaW5lciBkZXIgYmVpZGVuIFBhcnRlaWVuIGF1ZiBkZW0gRmJhbmQgc3RlaGVuLgoKSmV0enQgcmVkZW4gYXVjaCBub2NoIGRpZSBNYWdpZXIgaW4gU2NobWFycm4gdWViZXIgZGluZ2UsIGRpZSBtYW4gbmljaHQKdmVyc3RlaHQsIHdlbm4gbWFuIGtlaW5lciBpc3QuCgpJY2ggZGVua2UsIGljaCB3ZXJkZSBLb25zZXF1ZW56ZW4gZGFyYXVzIHppZWhlbiBtdWVzc2VuLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFp1ZmFsbHN6YWhsZW4gKEhvYm8sIDIwLiBBcHIgMjAwMCwgMTE6NDQ6NDgpOgp+IyEgcm49SHVtbmkgcnQ9OTU2MjIzNjM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU2MjE4MDIxCkVzIGdpbmcgdW0gZWluZSBhZXF1aWRpc3RhbnRlIFZlcnRlaWx1bmcgOikKCiAgIEhvYm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFp1ZmFsbHN6YWhsZW4gKEZldWVyd2VociwgMjAuIEFwciAyMDAwLCAxMTo0NToxNSk6Cn4jISBybj1Ib2JvIHJ0PTk1NjIyMzg4OCByZz1zY2htYXJybgp+IyEgdGlkPTk1NjIxODAyMQpIYSEKCkdhcm5pY2h0IHdhciEKClNpZSB3YXIgImFxdWlkaXN0YW50ISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGVsZXR1YmJpZXMgdm9yIEdlcmljaHQgKEJhYm9vbiwgMjAuIEFwciAyMDAwLCAxMzoxNTo0OCk6CkdlcmFkZSBpbSBOZXR6IGdlbGVzZW46CgoxOS4wNC4yMDAwIDEwOjI4IFVociAgCgogVGlua3kgV2lua3kgdmVya2xhZ3QhCiBFaW5lIDIyLWpocmlnZSBNdXR0ZXIgYXVzIEthbGlmb3JuaWVuIHdpbGwgZ2VnZW4KIGVpbmUgVGVsZXR1YmJpZXMtUHVwcGUga2xhZ2VuLgogCiBEZXIgc3ByZWNoZW5kZSBUaW5reSBXaW5reSBzb2xsIGJlaSBCZXJocnVuZyAiSQogZ290IGEgZ3VuLCBJIGdvdCBhIGd1biwgcnVuIGF3YXksIHJ1biBhd2F5Igogc2NocmVpZW4sIGVpbmUgcGRhZ29naXNjaCBhYnNvbHV0IG5pY2h0IHdlcnR2b2xsZQogQXVzc2FnZS4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKIEluIFdpcmtsaWNoa2VpdCBpc3QgZGVyIFRleHQgd2FocnNjaGVpbmxpY2ggZWluCiBhbmRlcmVyLCBhYmVyIGRpZSBCYWJ5c3ByYWNoZSBkZXIgVGVsZXR1YmJpZXMKIGtubnRlIG1laHJlcmUgSW50ZXJwcmV0YXRpb25lbiB6dWxhc3Nlbi4KIEVudHNjaGVpZGVuIHdpcmQgZGllcyB2ZXJtdXRsaWNoIGVpbiBHZXJpY2h0LgoKcC5zLjogV2VyIGRpZSBmZWhsZW5kZW4gVW1sYXV0ZSBmaW5kZXQgZGFyZiBzaWUgYmVoYWx0ZW4uCgpCYUJPT24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRyYWNoZW5nb3R0IC4uLiAoUmluZ29yLCAyMC4gQXByIDIwMDAsIDE0OjQ4OjI5KToKRGVyIERyYWNoZW5nb3R0IHdpcmQgZ2VyYWRlIGVyd2Vja3QuIFRleHQ6CgpSYXVjaCBzdGVpZ3QgYXVzIGRlbiB3ZWl0IGdlb2VmZm5ldGVuIE51ZXN0ZXJuIGRlciBEcmFjaGVuc3RhdHVlCmhlcnZvci4KRGFubiBob2Vyc3QgRHUgZWluIFdvcnQ6CkRpZSBTY2h1dHphdXJhIHVtIERpY2ggbG9lc3Qgc2ljaCBsYW5nc2FtIGF1Zi4KCgpSaW5nb3IsIGltbWVyIG5vY2ggZ3JpbnNlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLaW5kZXIuLi4gKEZvb2JhciwgMjEuIEFwciAyMDAwLCAwMDoxMjo0OCk6Ck5ldWxpY2ggYXVmbSBTdGFUaS4KCihFcyBnZWh0IHVtIEtpbmRlciwgZGllIG1vcmdlbnMgenUgZnJ1aCB3YWNoIHNpbmQpCgpCcmFuZGlyIHNhZ3Q6IEFsc28gaWNoIGhhYiBtaWNoIFNvbm50YWcgbW9yZ2VucyB2b24gNiBiaXMgOCBVaHIgaW1tZXIgbWl0IG1pcgpzZWxic3QgYmVzY2hhZWZ0aWd0LgoKRm9vYmFyLCBoYXRzIGdlYWhudC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIdW1uaSBpc3QgamV0enQgZWluIE1hZ2llciEgKEJhbWJpLCAyMS4gQXByIDIwMDAsIDAwOjE0OjA2KToKfiMhIHJuPU1lcmxpbiBydD05NTYyMjQzMzkgcmc9c3R1ZmVuCn4jISB0aWQ9OTU2MjI0MzM5Cm1hbCBzZWhlbiwgb2IgZGFzIERlaW4gU2FjaHZlcnN0YWVuZG5pcyBzdGVpZ2VydCwgSHVtbmkuClZpZWwgR2x1ZWNrLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmFjaHJpY2h0ZW5zcHJlY2hlciAuLi4gKFRpYW1haywgMjEuIEFwciAyMDAwLCAwMDozMDo0Mik6CkViZW4gaW4gZGVuIE5hY2hyaWNodGVuOgoKIlZvcmhlciBoYXR0ZW4gJ0ZhbnMnIHNjaG9uIGRpZSBTY2hlaWJlbiBlaW5lcyBCdXNzZXMgWy4uLiBQYXVzZSAuLi5dIG1pdApvZmZpemllbGxlbiBCZXN1Y2hlcm4gYXVzIGRlciBUdWVya2VpIGVpbmdld29yZmVuLiIKCgpUaWFtYWsuIFN0ZWxsdCBzaWNoIGRpZSBpbiBSaWNodHVuZyBCdXMgZ2V3b3JmZW5lbiBCZXN1Y2hlciBiaWxkbGljaCB2b3IuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZSAuLi4gKExpYXJhLCAyMS4gQXByIDIwMDAsIDAyOjE1OjUxKToKCltBbGxnZW1laW46VHN1bmFtaV0gaGllciBzaW5kIGFsbGUgYmVrbG9wcHQgOikpKQoKTGlhcmEsIFp3ZXJnZW56YXViZXJpbmUsIGRlbmt0IC4gbyBPICh1bmQgZGllc2UgRXJrZW5udG5pcyB1bSBkaWUgVWhyemVpdCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9obmUgV29ydGUgLi4uIChUc3VuYW1pLCAyMS4gQXByIDIwMDAsIDAyOjE2OjM2KToKRWosIGVzIGlzdCBqZXR6dCAxNzoxMC4gV28gbGllZ3QgZGFzIFByb2JsZW0/CgpUc3UqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE9obmUgV29ydGUgLi4uIChIaWdodCwgMjEuIEFwciAyMDAwLCAwMjoxODo1OCk6Cn4jISBybj1Uc3VuYW1pIHJ0PTk1NjI3NjE5NiByZz1zY2htYXJybgp+IyEgdGlkPTk1NjI3NjE5NgppcyBlcyBuZXQgLi4uIHdpciBsZWJlbiBhbGxlIHNlaXQgZ2VyYXVtZXIgemVpdCBuYWNoIGRlbiBhbmdlYmVuIHZvbSBNRyB1bmQKZGFzIHNhZ3QgZGFzIGVzIGV0eiBjYSAyOjE4IGlzIAoKdW5kIGVzIGhhdCByZWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogT2huZSBXb3J0ZSAuLi4gKFRzdW5hbWksIDIxLiBBcHIgMjAwMCwgMDI6MTk6MzgpOgp+IyEgcm49SGlnaHQgcnQ9OTU2Mjc2MzM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU2Mjc2MTk2Ck5vZSwgCgpJY2ggaGFiIGpldHp0IDE3OjE1CgpEcmF1c3NlbiBzY2hlaW50IGRpZSBTb25uZS4KCkF1Y2ggcmVjaHQgaGFiZW5kCgpUc3UqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBPaG5lIFdvcnRlIC4uLiAoTmV2b2ssIDIxLiBBcHIgMjAwMCwgMDI6MjE6MDQpOgp+IyEgcm49VHN1bmFtaSBydD05NTYyNzYzNzggcmc9c2NobWFycm4KfiMhIHRpZD05NTYyNzYxOTYKVHN1bmFtaSBhbiBkZXIgV2VzdGt1ZXN0ZSBiZWRldXRldCBMYW5kdW50ZXIgb2Rlcj8KCk5ldm9rLCBkZXIgTm9yZm9sayBiZXNzZXIgZmluZGV0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogT2huZSBXb3J0ZSAuLi4gKFRzdW5hbWksIDIxLiBBcHIgMjAwMCwgMDI6MjQ6MTApOgp+IyEgcm49TmV2b2sgcnQ9OTU2Mjc2NDY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU2Mjc2MTk2CkhtbW0gOikgSWNoIGdlYiBtaXIgTXVlaGUgOikKCkRpZXNlbiBNb250YWcgaGF0IGVpbiBUb3JuYWRvIGluIEwuQS4gZ2V3dWVodGV0LCBpY2ggbGVobmUgYWJlciBqZWRlbiAKVHN1c2FtbWVuaGFuZyBhYi4KClRzdSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiA6KSAoTml6emwsIDIxLiBBcHIgMjAwMCwgMTU6MjA6MzQpOgoodW50IGZlbHNlbikKV2Vpc3NncmF1ZSBTdGVpbmJyb2NrZW4gbGllZ2VuIHVlYmVyYWxsLCB1bmQgaWNoIG1laW5lIHVlYmVyYWxsKCEpLCBoZXJ1bS4KCih1bnQgU3RlaW5icm9ja2VuKQpTb3dhcyBzaWVoc3QgRHUgZGEgbmljaHQhCgp1ZWJlcmFsbD8/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHb2xkaWdlciBUaXAgOikgKEFtYXJ5bGxpcywgMjEuIEFwciAyMDAwLCAxNTo1MzoyOCk6CltBbGxnZW1laW46S2xlc10gd2llIGthbm4gbWFuIGVpZ2VudGxpY2ggYXVmIGthbmFlbGVuIGVtb3Rlbj8KW0FsbGdlbWVpbjpEYXNoZWwgIGJlbnV0enQgZGF6dSBkZW4gOl0KW0FsbGdlbWVpbjpLbGVzXSA6XXN1Y2h0CgoqZyogQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVzcGVrdCAoQnJhbmRpciwgMjIuIEFwciAyMDAwLCAwMTozNzozNCk6CkFsc28sIGFscyBpY2ggbm9jaCBqdW5nIHdhciwgaGFiZW4gd2lyIE1hZ2llciBhYmVyIGFuZGVycyB1bSBIaWxmZSBnZWJldGVuIDopCgpMaWFyYSBydWZ0OiBCaWVyY2hlbiBzY2hpZWIgRGVpbmVuIEhpbnRlcm4gaGllciBoZXIhCgpCcmFuZGlyIC0ga29wZnNjaHVldHRlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLZWluZSBNdWVkaWdrZWl0IHZvcndlaXNlbiA7LSkgKFRydWcsIDIyLiBBcHIgMjAwMCwgMDg6NDU6NDkpOgo+IGt3ZXIKICAgICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIFNhbSwgMjIuIEFwciAyMDAwLCAwODo0NToxOSAoOCBUZWlsbmVobWVyKQoKTG9nb24uLi4uLi4uLi4uLi5zIENvbGxlY3RlLi4uLi4uLmoueiBOcGMuLi4uLi4uLi4uLi5KLnQgR2FuZHVsZi4uLi4uLi4uai5aCkNoYWluc2F3Li4uLi4uLmouUyBBc2hhbi4uLi4uLi4uLi4uLlMgVHJ1Zy4uLi4uLi4uLi4uLi5TIEZyb2dodW50ZXIuLi4uLmp3UwoKTGF1dGVyIFNjaGxhZm11ZXR6ZW4gOy0pCgpUcnVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgo6KSAoU2t5LCAyMi4gQXByIDIwMDAsIDIzOjIwOjAzKToKKGxhdXNjaGUgc3VtbWVuKQpTdW1tbS4uLmJzc3Nzc3Nzcy4uLgpCaXJkeSBmbGllZ3QgaGVyZWluLgoKU2t5IGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2VpbmUgTXVlZGlna2VpdCB2b3J3ZWlzZW4gOy0pIChSYXJkaWFuLCAyMy4gQXByIDIwMDAsIDAxOjQ2OjU5KToKfiMhIHJuPVRydWcgcnQ9OTU2Mzg1OTQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU2Mzg1OTQ5Cm5hamEuLi4gc29sYW5nZSBMb2dvbiBuaWNodCBqZW1hbHMgaWRsZSB3ZXJkZW4gd2lyZCwgZ2VodHMgamEgbm9jaC4uLgpSYXIsIGdhZWhuZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXLi4uIChNZW5hY2UsIDI0LiBBcHIgMjAwMCwgMDA6NTA6MTcpOgpbQWJlbnRldWVyOlhhbl0gZnVxLCBpY2ggaGFiIGRpZSBvcmllbnRpZXJ1bmcgdmVybG9yZW4hIGthbm4gbWljaCBoaWVyIGplbWFuZApbQWJlbnRldWVyOlhhbl0gcmF1c2hvbGVuID8gaWNoIGJpbiBpcmdlbnR3byBpbSBzY2huZWUgKHBvbGFyZ2VtaWVydCBnYW56IGltCltBYmVudGV1ZXI6WGFuXSBuKQouLi4KKGVpbmlnZXMgc3BhZXRlcikKLi4uClhhbiBydWZ0OiBrYW5uIG1pY2ggamVtYW5kIGF1cyBkZXIgc2NobmVld3Vlc3RlIGhpZXIgcmF1c2hvbGVuID8/PwouLi4KWGFuIHJ1ZnQ6IHNjaG5lbGwgISBnbGVpY2ggYmluIGljaCB0b3QgIQpbVG9kOkxhcnNdIEVpbiBFaXNiYWVyIGhhdCBnZXJhZGUgWGFuIHVtZ2VicmFjaHQuCgpNZW5hY2UgKmthbm4gWGFuIG51ciBSZWNodCBnZWJlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVy4uLiAoTmV2b2ssIDI0LiBBcHIgMjAwMCwgMDE6Mzg6NTIpOgp+IyEgcm49TWVuYWNlIHJ0PTk1NjUzMDIxNyByZz1zY2htYXJybgp+IyEgdGlkPTk1NjUzMDIxNwpzbyBlaW4gZnVxIGFiZXIgYXVjaC4uLi5uYWphIGFiZXIgd2VuaWdzdGVucyBpcyBlciB3aWVkZXIgYXVzIGRlbSBwb2xhcmdlbWllcnQKZ2FueiBpbSBuIHJhdXMgbmU/CgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGTFcuLi4gKE1lbmFjZSwgMjQuIEFwciAyMDAwLCAwMTo0MzoyNSk6Cn4jISBybj1OZXZvayBydD05NTY1MzMxMzIgcmc9c2NobWFycm4KfiMhIHRpZD05NTY1MzAyMTcKTmVpbiBlciBpc3QgZGFuYWNoIG5vY2htYWwgcmVpbiB1bmQgYW0gVW50aWVyIGdlc3RvcmJlbi4KCltUb2Q6TGFyc10gRWluIFVudGllciBoYXQgZ2VyYWRlIFhhbiB1bWdlYnJhY2h0LgoKTWVuYWNlICpoYXQgamEgZWlnZW50bGljaCBub2NoIGF1ZiBkaWUgZHJpdHRlIE1lbGR1bmcgZ2V3YXJ0ZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZMVy4uLiAoSGlnaHQsIDI0LiBBcHIgMjAwMCwgMDI6Mjg6MTUpOgp+IyEgcm49TWVuYWNlIHJ0PTk1NjUzMzQwNSByZz1zY2htYXJybgp+IyEgdGlkPTk1NjUzMDIxNwplYmVuIHdhcnVtIGlzIGVyIG5ldCB6dSBkZW4gZWlzZGFlbW9uZW4gZGEgb2JlbiByZWluZ2VyYW5udCAqZWcqCgpoaWdodCB3aWVkZXIgbWFsIHJlY2h0IGZyZXVuZGxpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNoZWVwIChNdWFkaWIsIDI1LiBBcHIgMjAwMCwgMTY6Mzc6MjkpOgp3ZXIgc2Nob24gaW1tZXIgbWFsIGVpbiB2aXJ0dWVsbGVzIHNjaGFmIGFkb3B0aWVyZW4gd29sbHRlOgpodHRwOi8vd3d3LndlYi1zaXRlLmNvLnVrL2VtcG9yaXVtL2luZGV4Lmh0bWwKCmdydXNzCgoKbXVhZGliCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaXR6Ym9sZCAuLi4gKFRyYW5jZSwgMjUuIEFwciAyMDAwLCAyMDowNjowOSk6CgpHb2xhcyBmcmFndCBEaWNoLCBvYiBEdSBkaWVzZXMgTGljaHQgc2llaHN0IHVuZCBkZXV0ZXQgbmFjaCBvYmVuLgpHb2xhcyBmb2xndCBkZW0gTGljaHQgc2VpbmVyIEdlYmlldGVyaW4gbmFjaCB1bnRlbi4KClRyYW5jZSwgd2lyZCBuaWNodCBnZXJuIHZlcmFyc2NodCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWmF1YmVyZXIuLi4uIChOZXZvaywgMjYuIEFwciAyMDAwLCAwMDozOToxOSk6Clh4eHh4eHggdGVpbHQgRGlyIG1pdDogaWNoIGdlYnMgYXVmLi4uaWNoIGJpbiBoYWx0IGdlbGVnZW5oZWl0c211ZGRlciB1bmQgaWNoClh4eHh4eHggdGVpbHQgRGlyIG1pdDogaGFzc2UgZXMgenUgbWV0emVsbi4gc28gdW5kIGpldHp0IGdlaCBpY2ggZGVuIGtlZ2xlcgpYeHh4eHh4IHRlaWx0IERpciBtaXQ6IHRvZXRlbi4gOikKCkphLi4uLi4uZ2VuYXUuLi4uLi4KCgpOZXZvaywgZGVyIHNpY2ggc2VpbmVuIFRlaWwgZGVua3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCbHVtZW52ZXJrYWV1ZmVyIGFid2VydGVuISAoTmV2b2ssIDI2LiBBcHIgMjAwMCwgMDc6NDg6MjQpOgpMaGFuYSBtYWNodCBlaW5lIGt1cnplIEdlc3RlIHVuZCBqZW1hbmQgc3RpcmJ0LgpbVG9kOkxhcnNdIExoYW5hIGRpIExlb25kcm8gaGF0IGdlcmFkZSBNZW5hY2UgdW1nZWJyYWNodC4KW1RvZDpMaGFuYSBkaSBMZW9uZHJvXSBNZW5hY2Ugd2lyZCBpbiBLdWVyemUgYmVncmFiZW4uIFdpciBiaXR0ZW4gdW0KW1RvZDpMaGFuYSBkaSBMZW9uZHJvXSBCbHVtZW5zcGVuZGVuLgoKCk5ldm9rLCBkZXIgbmllIHdpZWRlciBmcmVjaCB6dSBlaW5lciBGbGV1cm9wIEZlZSBzZWluIHdpcmQuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmx1bWVudmVya2FldWZlciBhYndlcnRlbiEgKE1lbmFjZSwgMjYuIEFwciAyMDAwLCAwODo0NDo0OCk6Cn4jISBybj1OZXZvayBydD05NTY3MjgxMDQgcmc9c2NobWFycm4KfiMhIHRpZD05NTY3MjgxMDQKSWNoIHdlcmQgZGllIGF1Y2ggc28gc2NobmVsbCBuaWNodCB3aWVkZXIgYW5ncmVpZmVuLiBEaWUgdmVyZmx1Y2h0IGVpbmVtIGRpZQpoYWxiZSBBdXNydWVzdHVuZywgc28gZGFzcyBkaWUgbmljaHQgbWVociBzY2h1ZXR6dCB1bmQgYXVjaCBuaWNodCBhdXNnZXpvZ2VuCndlcmRlbiBrYW5uIQpKZXR6dCBoYWIgaWNoIGVpbiBEaWFtYW50c2Nod2VydCBtaXQgbGFlY2hlcmxpY2hlbSBTY2hhZGVuLCBTdGllZmVsLCBkaWUgbmljaHQKc2NodWV0emVuLCBhYmVyIGltbWVyIG5vY2ggc2VociBob2hlbiBTY2hhZGVuIGJlaW0gS2FtcGZ0cml0dCBtYWNoZW4gdW5kIG5lbgpJbnQrMi1SaW5nLCBkZXIgYXVjaCBuaWNodCBtZWhyIHNjaHVldHp0IGFiZXIgZGllIEludCBub2NoIGhvY2hzZXR6dC4KV2VuaWdzdGVuIGJlaWJ0IGRlciBCb251cyBkZXIgU2FjaGVuIGVyaGFsdGVuLCBtaXQgbmVtIFJpbmcsIGRlciBuaWNodApzY2h1ZXR6dCBrYW5uIG1hbiBsZWJlbi4KVW5kIGRpZSB3YXIgbmFjaCAyIEZha2V0b2RlbiBtZWluZXJzZWl0cyBpbW1lcm5vY2ggYXVmIDEwMCAlISA6bygKTmFqYSwgd2VubiBpY2ggbWl0IG1laW5lbSB2ZXJmbHVjaHRlbiBTY2h3ZXJ0IGtlaW5lbiBTY2hhZGVuIG1hY2hlISA7bykKCk1lbmFjZSAqZnVlcnMgZXJzdGUga3VyaWVydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCbHVtZW52ZXJrYWV1ZmVyIGFid2VydGVuISAoRGFya3dpbmcsIDI2LiBBcHIgMjAwMCwgMTE6MDk6MzkpOgp+IyEgcm49TWVuYWNlIHJ0PTk1NjczMTQ4OCByZz1zY2htYXJybgp+IyEgdGlkPTk1NjcyODEwNApIbSBkYXMgaG9lcnQgc2ljaCBqYSBhbi4uLi4gd2VyZCBkb2NoIFphdWJlcmVyICEhIQpEYSBkYXJmc3RlIGRlciBzb2dhciBuZW4gR2Vtc3d1cnogYnJpbmdlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQmx1bWVudmVya2FldWZlciBhYndlcnRlbiEgKEFuYXRvbCwgMjYuIEFwciAyMDAwLCAxMjowOTo1OSk6Cn4jISBybj1NZW5hY2UgcnQ9OTU2NzMxNDg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU2NzI4MTA0CldpZSBoYXJ0bmFlY2tpZ2UgR2VydWVjaHRlIGJlc2FnZW4sIHNvbGwgZXMgaW0gTW9yZ2VuR3JhdWVuIGRvY2ggCmdsYXR0IFN0ZWxsZW4gdW5kIFBlcnNvbmVuIGdlYmVuLCBkaWUgRmx1ZWNoZSBhdWZoZWJlbiBrb2VubmVuLgoKQW5hdG9sIC0gc2NoaWNrdCBNZW5hY2UgYXVmIEJpbGR1bmdzcmVpc2UgKEJvaW5nPyBCZXJpY2h0PyA7KSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZSBpcyBrbGFyIChBbWFyeWxsaXMsIDI2LiBBcHIgMjAwMCwgMTQ6MzI6MjkpOgpEdSB0ZWlsc3QgR29yIG1pdDogbWl0IGRlbSBuZXVlbiBnZW5lcmFsIHNjaGxhZyBpY2ggMiBmbGllZ2VuIG1pdCBlaW5lciBrbGFwcGUKR29yICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKVGphLCAzIEZsaWVnZW4gc29nYXIsIHdpZSBtaXIgc2NoZWludCA6KQpBbWEqLCBncmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hbm4sIGRlciBoYXQgbmVuIEhhcm5kcmFuZy4uLiAoTWFraXNoLCAyNi4gQXByIDIwMDAsIDE1OjM0OjQ5KToKTWFnaWN0dXggc3RlbGx0IHNpY2ggYW4gZGFzIFBpc3NvaXIuCk1hZ2ljdHV4IHBpbmtlbHQuCk1hZ2ljdHV4IHBsYW50c2NodCBXZXN0ZW4uCgpNYWtpc2gsIG51biBpbSBOYXNzZW4gc3RlaGVuZC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc29zbyAoU2t5LCAyNi4gQXByIDIwMDAsIDE2OjA1OjM4KToKRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuClZlY3RvciAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbU2VoZXI6VmVjdG9yXSBhaCwgZ2VuYXUgcmljaHRpZzspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpwYWgsIGFuZmFlbmdlciAoRWlzaSwgMjYuIEFwciAyMDAwLCAxNzozNjowMik6CgpFaW4gT3JrIG11cm1lbHQgZWluIHVuaGVpbWxpY2hlcyBXb3J0IHVuZCBiZWdpbm50IHNvZm9ydCBtaXQgZWluZW0gYWJhcnRpZ2VuClRhbnosIGRlc3NlbiB3aWxkZSBHZXN0ZW4gZ2VyYWRlenUgb2Jzem9lbiBzaW5kLgpGbGF4dHJpIGVyc2NoZWludCBpbiBlaW5lbSBTYWV1cmVyZWdlbi4KRWluIE9yayB6dWVja3QgZWluIE9ya3NjaHdlcnQuClR1dHN6dCBnZXJhZXQgdm9lbGxpZyBhdXNzZXIgS29udHJvbGxlLgpGbGF4dHJpIGdlcmFldCB2b2VsbGlnIGF1c3NlciBLb250cm9sbGUuClR1dHN6dCBzY2hsZWljaHQgYmx1dGdpZXJpZyBoZXJlaW4uCkZsYXh0cmkgZ2VyYWV0IHZvZWxsaWcgYXVzc2VyIEtvbnRyb2xsZS4KRmxheHRyaSBnZXJhZXQgdm9lbGxpZyBhdXNzZXIgS29udHJvbGxlLgpUdXRzenQgZ2VyYWV0IHZvZWxsaWcgYXVzc2VyIEtvbnRyb2xsZS4KRmxheHRyaSBnZXJhZXQgdm9lbGxpZyBhdXNzZXIgS29udHJvbGxlLgpGbGF4dHJpIHNjaGxlaW10IGFldHplbmQgaGVyZWluLgpHcmFpb3AgZ2VyYWV0IHZvZWxsaWcgYXVzc2VyIEtvbnRyb2xsZS4KR3JhaW9wIGdlcmFldCB2b2VsbGlnIGF1c3NlciBLb250cm9sbGUuCkdyYWlvcCBnZXJhZXQgdm9lbGxpZyBhdXNzZXIgS29udHJvbGxlLgpGbGF4dHJpIGdlcmFldCB2b2VsbGlnIGF1c3NlciBLb250cm9sbGUuClR1dHN6dCBnZXJhZXQgdm9lbGxpZyBhdXNzZXIgS29udHJvbGxlLgpGbGF4dHJpIGdlcmFldCB2b2VsbGlnIGF1c3NlciBLb250cm9sbGUuCkdyYWlvcCBlcnNjaGVpbnQgaW4gZWluZW0gTWVlciBhdXMgRmxhbW1lbi4KCgpFaXNpLCBrYW5uIGRhcyBiZXNzZXIgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQWxib2luLCAyNi4gQXByIDIwMDAsIDE3OjQ4OjMzKToKRGVpbiBGcmV1bmQgR29sYXMgdGVpbHQgRGlyIG1pdDogdWViZW4gaXMgZ2VpbAouLi4KRGVpbiBGcmV1bmQgR29sYXMgdGVpbHQgRGlyIG1pdDogbml4IGRhIC4uLiBpcyBzdXBpbHVzdGlnCi4uLgpEZWluIEZyZXVuZCBHb2xhcyB0ZWlsdCBEaXIgbWl0OiBkdSBiaXN0IGphIG11dGlnIC4uLgouLi4KW1RvZDpMYXJzXSBFaW4gU2NobmVlYmFsbCBoYXQgZ2VyYWRlIEdvbGFzIHVtZ2VicmFjaHQuCgpBbGJvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmljaCB3YXJzIG5pY2h0IChOaXp6bCwgMjcuIEFwciAyMDAwLCAwMzo0NjoxOSk6CkRlciBaYXViZXJzcHJ1Y2ggaXN0IERpciBtaXNzZ2x1ZWNrdC4KRHUgbGVybnN0IGF1cyBEZWluZW4gRmVobGVybi4KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgUGltcGYgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipQSU5HKlBJTkcqUElORypQSU5HKiAoTW9yZ290aCwgMjcuIEFwciAyMDAwLCAxMDozOTo1Nyk6ClByYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpUaHVmaXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhClR1ZmlyICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClplcGh5ciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKR29sYXMgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkFya2FuYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpTaGFyaWEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKUHlyb3MgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKWmFjYXR0ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpXYWFhaGhoLi4uLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqUElORypQSU5HKlBJTkcqUElORyogKENhdHdlYXpsZSwgMjcuIEFwciAyMDAwLCAxMDo1ODo1MSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTk1NjgyNDc5NyByZz1zY2htYXJybgp+IyEgdGlkPTk1NjgyNDc5Nwp0b24gYXVzIApZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuIChEZWVwYmx1ZSwgMjcuIEFwciAyMDAwLCAxMzo0Njo0MSk6Cm5uCgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGV0aGFsIFNtaWxlIChOZXZvaywgMjguIEFwciAyMDAwLCAwNDoyMjoxNSk6CkhtbW1tbSB1bmQgZGEgZGFjaHRlIGljaCBlaW4gZW50d2FmZm5lbmRlcyBMYWVjaGVsbiB3YWVyZSB3YXMgZ3V0ZXMuLi4KCkR1IGdyaW5zdCBOaXp6bCBhdXMgZGVyIEZlcm5lIGFuLgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBOaXp6bCB1bWdlYnJhY2h0LgoKCk5ldm9rLCBkZXIgZGFzIG1hbCBkZW4gbWl0LXRydmVzIGJlaWJyaW5nZW4gbXVzcy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGllcmxpZWJlIChEZWVwYmx1ZSwgMjguIEFwciAyMDAwLCAxMDo0NjoxMyk6CkVpbiBGcm9zY2ggZm9sZ3QgZWluZW0gQmVybmhhcmRpbmVyIGhpZXJoZXIuIERlciBCZXJuaGFyZGluZXIgYmVsbHQgc2VpbmVuCkZyZXVuZCBoaWVyIGFuIHVuZCB2ZXJzY2h3aW5kZXQgd2llZGVyIGF1ZiBkZW0gUGFzcy4KSXMgZGFzcyBuaWNoIHN1ZXNzPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZsYW1lbiBmdWVyIEFuZmFlbmdlciAoYXVzIEhlaXNldGlja2VyKSAoQW5hdG9sLCAyOC4gQXByIDIwMDAsIDE0OjU1OjI3KToKfiMhIHJuPVRydWcgcnQ9OTU2OTI2Mzg4IHJnPXdpdHplCn4jISB0aWQ9OTU2OTI2Mzg4CkpldHp0IGlzdCBtaXIgYXVjaCBrbGFyLCB3YXJ1bSBEZWluZSBBcnRpa2VsIGltbWVyIHNvIC4uLiAKYWVoIC4uLiBrb21pc2NoIHNpbmQuIAoKQW5hdG9sIC0gc2VsYnN0IGtyZWF0aXYgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqc2V1ZnoqIG1hbCB3aWVkZXIgOi0pIChBbWFyeWxsaXMsIDI4LiBBcHIgMjAwMCwgMTc6Mjg6NDQpOgpHYXN0MSB0ZWlsdCBEaXIgbWl0OiBIaWxmIG1pciBiaXR0ZSEgSWNoIHdpbGwgamEgbmljaHQgdW5iZXNjaGVpZGVuIHNlaW4sIGFiZXIKR2FzdDEgdGVpbHQgRGlyIG1pdDogc2NobGllc3NsaWNoIGhhYmUgaWNoIERpY2ggYXVzIGRlbiBIYWVuZGVuIFp3YWNrZWxtYW5ucwpHYXN0MSB0ZWlsdCBEaXIgbWl0OiBiZWZyZWl0IQoKQW1hKiwgZ3JpbnNlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKnNldWZ6KiBtYWwgd2llZGVyIDotKSAoQW1hcnlsbGlzLCAyOC4gQXByIDIwMDAsIDE3OjMxOjE4KToKfiMhIHJuPUFtYXJ5bGxpcyBydD05NTY5MzU3MjQgcmc9c2NobWFycm4KfiMhIHRpZD05NTY5MzU3MjQKdW5kIHdlaXRlciBnZWh0IGRpZSBTdG9yeS4uLiA6LSkKCkR1IHRlaWxzdCBHYXN0MSBtaXQ6IGljaCBiaW4gbWFnaWVyIGljaCBkYXJmIGRpciBuaWNodCBoZWxmZW4KR2FzdDEgdGVpbHQgRGlyIG1pdDogd2llc28gLSBpY2ggYmluIGRvY2gga2VpbiBTcGllbGVyLCBzb25kZXJuIG51ciBHYXN0IQpEdSB0ZWlsc3QgR2FzdDEgbWl0OiBhdWNoIGdhZXN0ZSBzaW5kIHNwaWVsZXIgOikKR2FzdDEgdGVpbHQgRGlyIG1pdDogamV0enQgbWFjaCBtYWwgJ25lbiBQdW5rdCEgSWNoIGJlZnJlaWUgRGljaCB2b24gRGVpbmVtCkdhc3QxIHRlaWx0IERpciBtaXQ6IERhc2VpbiBhbHMgVW5rZSBpbiBkZW0ga2VsbGVybG9jaCB1bmQgRHUga29tbXN0IG1pciBtaXQKR2FzdDEgdGVpbHQgRGlyIG1pdDogSGFhcnNwYWx0ZXJlaWVuIQoKQW1hKiwgc2ljaCB3YWVsemVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqc2V1ZnoqIG1hbCB3aWVkZXIgOi0pIChWYW5pb24sIDI4LiBBcHIgMjAwMCwgMTc6MzE6MjUpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTk1NjkzNTcyNCByZz1zY2htYXJybgp+IyEgdGlkPTk1NjkzNTcyNApIbW1tLCBpc3Qgd2llZGVyIGVpbmVyIGF1ZiBkaWUgVW5rZSByZWluZ2VmYWxsZW4uIERlciBvbGxlIEF1c2hpbGZzbWFnaWVyCnNvbGx0ZSBpbiBzZWluZW0gU2NobG9zcyBtZWhyIFdhcm5zY2hpbGRlciBhdWZzdGVsbGVuLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdyYWQgYmVpIFhhbmQgZ2VzZWhlbiA7KSAoTWVzaXJpaSwgMjkuIEFwciAyMDAwLCAwNToxNTowNSk6CkVpbmUgSGFzZSBzY2hsYWVuZ2VsdCBzaWNoIGhlcmVpbi4KTWVzaSwgc3RvZWhuZW5kLCBzY2hlbmt0IGRlbSBtYWwgZWluZXIgbmVuIER1ZGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZ3JhZCBiZWkgWGFuZCBnZXNlaGVuIDspIChSYXJkaWFuLCAzMC4gQXByIDIwMDAsIDAyOjM5OjM1KToKfiMhIHJuPU1lc2lyaWkgcnQ9OTU2OTc4MTA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU2OTc4MTA1CkljaCB3dWVyZCBkZW0gZWhlciBuZW4gSGFuZGJ1Y2ggIkZvcnRiZXdlZ3VuZyBmdWVyIEhhc2VuIiBzY2hlbmtlbi4uLgpSYXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWdpZXIgdW50ZXIgc2ljaC4uLiAoQW1hcnlsbGlzLCAzMC4gQXByIDIwMDAsIDE4OjQxOjMxKToKW01hZ2llcjpNdWR0aWdlcl0gaXdlIGtvbm50ZSBtYW4gZ2xlaWNoIG1haWx3ZWl0ZXJsa2VpdHVuZyBlaW5zY2hhbHRlbj8KW01hZ2llcjpBbWFyeWxsaXNdIGRlbiBiZWFtdGVuIGluIGRlciBwb3N0IGZyYWdlbgpbTWFnaWVyOkFtYXJ5bGxpc10gZGVyIHJpY2h0ZXQgZGlyIGRhcyBlaW4gOikKW01hZ2llcjpNdWR0aWdlcl0gZGFua2UsIG51ciB3byB3YXIgZ2xlaWNoIGRpZSBwb3N0ej8gOykKW01hZ2llcjpBbWFyeWxsaXNdIGdpbGRlICwgbiAsIG4gOikKW01hZ2llcjpBbWFyeWxsaXNdIG9kZXIgPwpbTWFnaWVyOkFtYXJ5bGxpc10gYWVoIG5laW4KW01hZ2llcjpBbWFyeWxsaXNdIGdpbGRlLG4sdyx3LG4KW01hZ2llcjpNdWR0aWdlcl0gZGEgc3RlaCBvY2ggaW4gZGVyIGdhbGVyaWUKW01hZ2llcjpBbWFyeWxsaXMgZ3JpbnN0LgpbTWFnaWVyOk11ZHRpZ2VyXSBzdGltbXQgOikKCkFtYSosIGdyaW5zZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5nZWxlcm50ZSBBcmJlaXRza3JhZWZ0ZS4uLiAoTmV2b2ssIDMwLiBBcHIgMjAwMCwgMjA6NTU6MDQpOgpWYWx1YWJsZSBQYWludGluZyBEZXN0cm95ZWQgYnkgTWlzdGFrZQpMT05ET04gKFJldXRlcnMpIC0gUG9ydGVycyBhdCBhIExvbmRvbiBhdWN0aW9uIGhvdXNlIHB1dCBhICQxNTgsMDAwIHBhaW50aW5nCmJ5IGFydGlzdCBMdWNpYW4gRnJldWQgaW50byBhIGNydXNoZXIgYmVjYXVzZSB0aGV5IHRob3VnaHQgaXQgd2FzIHJ1YmJpc2guCgpgYEl0IGlzIGFuIGV4dHJlbWVseSB1bmZvcnR1bmF0ZSBzaXR1YXRpb24gYW5kIHdlIGhhdmUgdGFrZW4gaW1tZWRpYXRlIHN0ZXBzCnRvIHByZXZlbnQgaXQgaGFwcGVuaW5nIGFnYWluLCcnIHNhaWQgYSBzcG9rZXNtYW4gZm9yIFNvdGhlYnkncywgd2hvIGNvbmZpcm1lZAp0aGF0IHRoZSBwYWludGluZyBoYWQgYmVlbiBhY2NpZGVudGFsbHkgZGVzdHJveWVkLgpgYEl0IHdhcyBhIHN0dWR5IHJhdGhlciB0aGFuIGEgY29tcGxldGUgcGFpbnRpbmcgYW5kIHdhcyB3b3J0aCBhcm91bmQgMTAwLDAwMApwb3VuZHMsJycgaGUgYWRkZWQuCgpIZSBnYXZlIG5vIGRldGFpbHMgb2YgdGhlIHBhaW50aW5nIGJ5IEZyZXVkLCBmYW1lZCBhYm92ZSBhbGwgZm9yIGhpcyBudWRlCnN0dWRpZXMuCgpUaGUgcGFpbnRpbmcgd2FzIGRlbGl2ZXJlZCB0byBTb3RoZWJ5J3MgYnV0IHRoZSBwb3J0ZXJzIGJlbGlldmVkIHRoZQpwcm90ZWN0aXZlIGNhc2UgY29udGFpbmluZyB0aGUgcGljdHVyZSB3YXMgaW4gZmFjdCBhbiBlbXB0eSBib3guIFRoZXkgcGxhY2VkCml0IGluIGEgcmVmdXNlIGNydXNoZXIuCgpUaGUgU290aGVieSdzIHNwb2tlc21hbiByZWZ1c2VkIHRvIGNvbW1lbnQgb24gdGhlIGZhdGUgb2YgdGhlIHBvcnRlcnMgLS0gYnV0CmhlIGRpZCBzYXkgdGhleSBoYWQgbm90IGJlZW4gZmlyZWQuIAoKCk5ldm9rLCBkZXIgc2ljaCBnZXJhZGUgYW0gQm9kZW4ga3JpbmdlbHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVZWJsZXMgWmV1ZyAhIChNYWtpc2gsICAxLiBNYWkgMjAwMCwgMDA6Mzc6MjgpOgpEZXIgV2lydCBicmluZ3QgRGlyIGVpbiBrbGVpbmVzIFBpbm5jaGVuIEhlaWdvcmJydWVoZSwgYmVuYW5udCBuYWNoIGRlbQptdXRpZ2VuCktyaWVnZXIgSGVpZ29yLCBkZXIgZGllc2VuIFRyYW5rIGFscyBlcnN0ZXIgdWViZXJsZWJ0ZS4gRHUgdHJpbmtzdCBlcyBhdXMgdW5kCnNwdWVyc3QsIHdpZSBzaWNoIFRlaWxlIERlaW5lciBFaW5nZXdlaWRlIGF1ZmxvZXNlbi4KCkVpbiB3YWJlcm5kZXMgR2ViaWxkZSBlcnNjaGVpbnQgdXJwbG9ldHpsaWNoIHZvciBEaXIuCgpTdGFya2VzIFpldWcgISBJY2ggaGFsbHV6aW5pZXJlICEKCk1ha2lzaCwgYXVmIG5lbSBUcmlwLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcuLi4gKEZvb2JhciwgIDEuIE1haSAyMDAwLCAxMjoxMzoyNyk6CltTZWhlcjpDaXNvdV0gV3VlcmRlIGplbWFuZCBtaXQgbWlyIGluIFBhcmEtT3JraGF1c2VuIG5lbiBTY2hsYWdyaW5nIGhvbGVuCltTZWhlcjpDaXNvdV0gZ2VoZW4/IDwxMjowODoyNj4KW1NlaGVyOkxlZ2FzXSBpY2ggPDEyOjA4OjM0PgpbU2VoZXI6Q2lzb3VdIE9oIHByaW1hIDopIDwxMjowODo0Nj4KCldlbmlnIHNwYWV0ZXIuLi4KCltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIExlZ2FzIHVtZ2VicmFjaHQuCltUb2Q6RWluIE9ya10gV2lyIHNpbmQgT3JrISBXaWRlcnN0YW5kIGlzdCB6d2Vja2xvcyEgRGVpbiBXaXNzZW4gdW5kIERlaW5lCltUb2Q6RWluIE9ya10gQXVzcnVlc3R1bmcgd3VyZGVuIGFzc2ltaWxpZXJ0LgoKRm9vYmFyLCBpbiBUcmF1ZXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcuLi4gKEZvb2JhciwgIDEuIE1haSAyMDAwLCAxMjoxNjo1NCk6Cn4jISBybj1Gb29iYXIgcnQ9OTU3MTc2MDA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU3MTc2MDA3CltCZWlsZWlkOkFuZ3JpbV0gaWNoIGRlcHAgaGF0dGUgZGllIHZvcnNpY2h0IGF1ZiAwIDopIDwxMjoxMToyMz4KW0JlaWxlaWQ6TGlhcmFdIGJlaWxlaWQgPDEyOjExOjI1PgpbQmVpbGVpZDpGaXJlaGF3a10gRGVyIHdhciBndXQsIHRyb3R6ZGVtIGJlaWxlaWQgPDEyOjExOjI3PgpbQmVpbGVpZDpab29rIGdyaW5zdCBlaW4gd2VuaWcgbWl0IExpYXJhIG1pdC4gPDEyOjExOjMzPl0KW0JlaWxlaWQ6Wm9va10gYmVpbGVpZC4uLiA8MTI6MTE6Mzc+CltCZWlsZWlkOkFuZ3JpbV0gbWFuIHNvbGx0ZSBuaWNoIHZvbSB1ZWJlbiBtaXIgbmljaCBkaXIgbml4IG1ldHplbG4gZ2Vobiwgc2luZApbQmVpbGVpZDpBbmdyaW1dIGFuZGVyZSBiZWRpbmd1bmdlbiA6KSA8MTI6MTI6MTU+CltCZWlsZWlkOkxpYXJhXSBqYWphIGRhcyBnZXdpc3NlbiBsZXV0ZSBpaHJlIHRvZGUgaW1tZXIgbGFuZyB1bmQgYnJlaXQKW0JlaWxlaWQ6TGlhcmFdIGVya2xhZXJlbiBtdWVzc2VuIDstKSA8MTI6MTI6Mzk+CltCZWlsZWlkOkxpYXJhXSB3aXIgd3Vyc3RpZXMgc3RlcmJlbiBqYSBhdXMgYW5kZXJlbiBncnVlbmRlbiA7LSkpIDwxMjoxMjo1OT4KW0JlaWxlaWQ6QW5ncmltXSBzcHJhY2ggbXJzLiAxMTggbWFsIGdlc3RvcmJlbiA6KT8gPDEyOjEzOjAxPgpbQmVpbGVpZDpBc2hhbiBsYWVjaGVsdCBlaW5lIFphdWJlcmluZSBhbiA8MTI6MTM6MjM+XQpbQmVpbGVpZDpab29rXSBmZWhsZiBhbmdyaW0gPDEyOjEzOjI1PgpbQmVpbGVpZDpMaWFyYV0gaWNoIHNvcmdlIG5hY2ggbmVtIHRvZCBuaWNodCBmdWVyIDEwIHplaWxlbiBzY3JvbGwgd2VnZW4gbmVyCltCZWlsZWlkOkxpYXJhXSBlcmtsYWVydW5nIDstKSBpY2ggYmluIGRhbm4gaGFsdCBuZWluZmFjaCB0b3QgOy0pIDwxMjoxMzoyOT4KW0JlaWxlaWQ6TGlhcmFdIGFiZXIgYmVpIERJUiBpcyBkYXMgamEgd2FzIGFuZGVyZXMgOy0pIGR1IGhhdHRlc3QgbmF0dWVybGljaApbQmVpbGVpZDpMaWFyYV0gZGllIF9ndXRlbl8gZ3J1ZW5kZSBmdWVyIGRlaW5lbiB0b2QgOy0pIDwxMjoxMzo1NT4KW0JlaWxlaWQ6QW5ncmltIGdpYnQgTGlhcmEgZ2VybmUgbWFsIE1hdGhlbmFjaGhpbGZlIDwxMjoxMzo1NT5dCltCZWlsZWlkOkFuZ3JpbV0gZHUgaGF0dGVzdCBleGFrdCAxMCB6ZWlsZW4gZGF6dSBnZXNhZ3QsIGljaCA1IDopIDwxMjoxNDoxMz4KW0JlaWxlaWQ6Wm9va10gYmxhYmxhYmxhLi4uIDspIDwxMjoxNDoyOT4KW0JlaWxlaWQ6Wm9va10gd2lyZCBkZXIgdG9kIGJyZWl0Z2V0cmV0ZW4gOykgPDEyOjE0OjM1PgpbQmVpbGVpZDpab29rXSBVbmQgZGFzIG51ciB3ZWdlbiBzbyBlaW5lcyBkb29mZW4gb3JrcyA7KSA8MTI6MTQ6NDU+CltCZWlsZWlkOkNpc291XSBWZXJkYW1tdCB2ZXJkYW1tdCB2ZXJkYW1tdCwgdW5kIGljaCB3YXIgdGF1Ym4gdW5iZCBoYWIgZ2FyIG5peApbQmVpbGVpZDpDaXNvdV0gbWl0YmVrb21tZW4gOiggPDEyOjE1OjE3PgpbQmVpbGVpZDpMaWFyYV0gb2ggY29sbCB3ZXIgaGFlbmd0IGRhcyBhbiBkZW4gYXJ0aWtlbCBkcmFuPyA7LSkgPDEyOjE1OjI5PgpbQmVpbGVpZDpab29rIGdyaW5zdCBDaXNvdSBhbi4gPDEyOjE1OjMzPl0KW0JlaWxlaWQ6TGlhcmFdIGFlaCBjb29sIDwxMjoxNTozNT4KW0JlaWxlaWQ6QXNoYW5dIG5hamEsIGhhdXB0c2FjaGUgZHUgbGVic3Qgbm9jaCA6KSA8MTI6MTU6Mzk+CltCZWlsZWlkOkZvb2Jhcl0gKndhZWx6KiA8MTI6MTU6Mzk+CltCZWlsZWlkOkNpc291IHNjaGFlbXQgc2ljaC4gPDEyOjE1OjQzPl0KW0JlaWxlaWQ6Wm9va10gRm9vYmFyLCB1ZWJlcm5laG1lbiBzaWUgOykgPDEyOjE1OjQ3PgoKRmVydGljaCA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNYWdpZXIgdW50ZXIgc2ljaC4uLiAoTWVuYWNlLCAgMS4gTWFpIDIwMDAsIDIxOjIxOjMwKToKfiMhIHJuPUFtYXJ5bGxpcyBydD05NTcxMTI4OTEgcmc9c2NobWFycm4KfiMhIHRpZD05NTcxMTI4OTEKQWxzbyBNYWdpZXIgZGllIG5pY2h0IG1hbCBfaXJnZW5kZWluZV8gUG9zdCBmaW5kZW4sIHNvbGx0ZSBtYW4genVtCiJob2ZmbnVuZ3Nsb3NlbiBBbmZhZW5nZXIiIGRlZ3JhZGllcmVuIQoKKE51ciBtZWluZSBNZWludW5nKQoKTWVuYWNlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hZ2llciB1bnRlciBzaWNoLi4uIChCaWVsZWZlbGQsICAxLiBNYWkgMjAwMCwgMjE6MjM6MjApOgp+IyEgcm49TWVuYWNlIHJ0PTk1NzIwODg5MCByZz1zY2htYXJybgp+IyEgdGlkPTk1NzExMjg5MQpVbmQgd2FzIGlzdCBtaXQgZGVuIFNlaGVybiwgZGllIG9obmUgaWhyIFRGIG5pY2h0bWFsIHZvbiBQVgp6dXIgSG9jaGViZW5lIGZpbmRlbi4uLj8gOy0pCgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNYWdpZXIgdW50ZXIgc2ljaC4uLiAoTWVuYWNlLCAgMS4gTWFpIDIwMDAsIDIxOjMxOjM5KToKfiMhIHJuPUJpZWxlZmVsZCBydD05NTcyMDkwMDAgcmc9c2NobWFycm4KfiMhIHRpZD05NTcxMTI4OTEKRGllIGF1Y2ghIDtvKQoKTWVuYWNlICpoYXQgZ2VuYXUgNCBXZWdlc2tyaXB0ZSwgZGllIGVyIHJlZ2VsbWFlc3NpZyBiZW51dHp0IHVuZCBmdWVyIGRlbgpSZXN0IGRpZSBXZWdlIGltIEtvcGYgb2RlciBLYXJ0ZW4uIChPZGVyIEtlaW5lIEFobnVuZyB3byBlciBpc3QhKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTWFnaWVyIHVudGVyIHNpY2guLi4gKExpYXJhLCAgMS4gTWFpIDIwMDAsIDIxOjM4OjIyKToKfiMhIHJuPU1lbmFjZSBydD05NTcyMDk0OTkgcmc9c2NobWFycm4KfiMhIHRpZD05NTcxMTI4OTEKRHUgYmlzdCB0b2xsIQoKTGlhcmEsIFp3ZXJnZW56YXViZXJpbmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1hZ2llciB1bnRlciBzaWNoLi4uIChBbWFyeWxsaXMsICAxLiBNYWkgMjAwMCwgMjE6NDc6MzgpOgp+IyEgcm49TWVuYWNlIHJ0PTk1NzIwOTQ5OSByZz1zY2htYXJybgp+IyEgdGlkPTk1NzExMjg5MQpqZWRlbiBhdWYgbGV2ZWwxLCBkZXIgbmljaHRtYWwgYXVmIGFuaGllYiBhdXN3ZW5kaWcgZGVuIHdlZyBpbiBkaWUgUG9zdCB3ZWlzcz8KVG9sbC4gV2VubiBkYXMgamVkZW0gcGFzc2llcnQsIGRlciBkYSBtYWwgdmVyc2FndGUsIGhhYmVuIHdpciBudXIgbm9jaApBbmZhZW5nZXIgaGllci4gVmllbGxlaWNodCBzb2xsdGVzdCBEdSBhdWNoIGJlZGVua2VuLCBkYXNzIG1hbiBhbHMgU2VoZXIgTWFpbApldGMuIGluIGplZGVtIFJhdW0genVyIFZlcmZ1ZWd1bmcgaGF0LCBhbHNvIGF1ZiBkaWUgUG9zdCBuaWNodCBtZWhyIGFuZ2V3aWVzZW4KaXN0IChlcyBzZWkgZGVubiBpbiBlaW5lbSBTb25kZXJmYWxsLCB3aWUgdm9uIG1pciBiZXNjaHJpZWJlbikuCgpBbWEqLCB3b2hsIEFydGlrZWwgZGllc2VyIEFydCBkZW1uYWVjaHN0IG51ciBub2NoIGluIG1hZ2llci5zY2htYXJybiBwb3N0ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNYWdpZXIgdW50ZXIgc2ljaC4uLiAoVmFuaW9uLCAgMS4gTWFpIDIwMDAsIDIxOjQ4OjUwKToKfiMhIHJuPU1lbmFjZSBydD05NTcyMDk0OTkgcmc9c2NobWFycm4KfiMhIHRpZD05NTcxMTI4OTEKRGlyIGdlaHRzIHNpY2hlciB3aWUgbWlyOgpFaW5mYWNoIHp1IGZhdWwsIGRpZSBOYW1lbiBkZXIgV2VncHVua3RlIGF1c3dlbmRpZyB6dSBsZXJuZW4gOy0pCgpWYW5pb24sIHNpY2gga3JhbXBmaGFmdCBhbiBkaWUgQWJrdWVyenVuZyBmdWVyIEhvY2hlYmVuZSBtZXJrZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNYWdpZXIgdW50ZXIgc2ljaC4uLiAoSGlnaHQsICAxLiBNYWkgMjAwMCwgMjI6MDg6MjEpOgp+IyEgcm49TWVuYWNlIHJ0PTk1NzIwODg5MCByZz1zY2htYXJybgp+IyEgdGlkPTk1NzExMjg5MQpuZWluIGRlciBlaW56aWcgd2FocmUgdW5kIGVjaHRlIGhvZmZudW5nc2xvc2UgYW5mYWVuZ2VyIGhpZXIgYmluIGljaCAhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNYWdpZXIgdW50ZXIgc2ljaC4uLiAoT2xsaSwgIDEuIE1haSAyMDAwLCAyMzoyMjo0NSk6Cn4jISBybj1CaWVsZWZlbGQgcnQ9OTU3MjA5MDAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU3MTEyODkxCkhpLAoKd2llLCBlcyBnaWJ0IFNlaGVyLCBkaWUgb2huZSBURiB6dXIgSEUga29tbWVuPyBEYXMgaXN0IGRvY2ggbnVyCm5lIGFsdGUgU2FnZSwgZGFzcyBEdSBkYSBub2NoIGRyYW4gZ2xhdWJzdCA6KQoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTWFnaWVyIHVudGVyIHNpY2guLi4gKEhpZ2h0LCAgMS4gTWFpIDIwMDAsIDIzOjQ1OjAxKToKfiMhIHJuPU9sbGkgcnQ9OTU3MjE2MTY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU3MTEyODkxCmhhIGljaCBzY2hhZmYgZXMgLi4uIHRlbG5ldCBzdXh4ICEhISEhISEhISEhISEhISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNYWdpZXIgdW50ZXIgc2ljaC4uLiAoVHN1bmFtaSwgIDIuIE1haSAyMDAwLCAwMjo0MTowNik6Cn4jISBybj1PbGxpIHJ0PTk1NzIxNjE2NSByZz1zY2htYXJybgp+IyEgdGlkPTk1NzExMjg5MQpIb2NoZWJlbmU/IFdvIGlzdCBkaWUgZGVubj8gS2FubiBtaWNoIGRhIG1hbCBqZW1hbmQgaGluZnVlaHJlbj8KClRzdW5hbWkKKGFsdCB3ZXJkZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VociBiZXJ1aGlnZW5kIChQbG90aW4sICAyLiBNYWkgMjAwMCwgMDM6MzE6MjkpOgpFaW4gT3JrIGphZ3QgRGljaCBuaWNodCBtZWhyLgpFaW4gT3JrIGphZ3QgRGljaCBuaWNodCBtZWhyLgpFaW4gT3JrIGphZ3QgRGljaCBuaWNodCBtZWhyLgpFaW4gT3JrIGphZ3QgRGljaCBuaWNodCBtZWhyLgpFaW4gT3JrIGphZ3QgRGljaCBuaWNodCBtZWhyLgpFaW4gT3JrIGphZ3QgRGljaCBuaWNodCBtZWhyLgp1bmQgZGFzIGFsbGVzIGF1ZiBlaW5tYWwgOy0pCgpQbG90aW4sIHNpY2ggc2VociB2aWVsIHNpY2hlcmVyIGZ1ZWhsZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE1ha2lzaCwgIDIuIE1haSAyMDAwLCAyMToyODo1Nyk6CkRlaW5lIEZyZXVuZGluIEFzdWthIHRlaWx0IERpciBtaXQ6IFNDSEVJU1NFClRvZDpMYXJzIEVpbmUgQmFuc2hlZSBoYXQgZ2VyYWRlIEFzdWthIHVtZ2VicmFjaHQuClRvZDpFaW5lIEJhbnNoZWUgWUlJSWlpaWlpYWstWWFrLUlJaWlpaWlBQUtLWVlpaWFhYWFLS0sgISEhIQoKU2llIGhhdCBkYSBpbW1lciBkaWVzZW4gNi4gU2lubi4uLiAqc2NobnVlZmYqCgpNYWtpc2gsIHRyYXVlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChSb25kYSwgIDIuIE1haSAyMDAwLCAyMToyOTo1OSk6Cn4jISBybj1NYWtpc2ggcnQ9OTU3Mjk1NzM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU3Mjk1NzM3ClNvcnJ5LCBhYmVyIGRhIG11c3MgbWFuIGVpbmZhY2ggZ2VuYXUgc2VpbjoKCj4gU2llIGhhdCBkYSBpbW1lciBkaWVzZW4gNi4gU2lubi4uLiAqc2NobnVlZmYqCgpTaWUgX2hhdHRlXyBlaW5lbiA2LiBTaW5uLi4uCgpSb25kYSAqc2NobWFycmVuZC4uLioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hIHdpZSBzaWNoIGRpZSBaZWl0IGRvY2ggdmVyYWVuZGVydC4uLiAoTmV2b2ssICAzLiBNYWkgMjAwMCwgMDE6MjU6MTMpOgpGcnVlaGVyLCBkYSBnYWJzIG51ciBXYXNzZXIgdW5kIEJyb3QuLi4uLnVuZCBoZXV0ZT8KCmllIFplbGxlIGlzdCBhYnNvbHV0IGVpbnRvZW5pZyB1bmQgaGF0IGtlaW5lIEZlbnN0ZXIuIExhbmdlIGRhIGRyaW4KenUgc2l0emVuIGlzdCBiZXN0aW1tdCBuaWNodCBhbmdlbmVobS4KRXMgZ2lidCBrZWluZSBzaWNodGJhcmVuIEF1c2dhZW5nZS4KTXV0YW50dXMgZGVyIGVpbmZhY2hlIFNvbGRhdC4gICAgICAgICAgRWluIGdydWVuZXMgS2lzc2VuCkVpbiBibGF1ZXMgS2lzc2VuICAgICAgICAgICAgICAgICAgICAgIEVpbmUgU2FobmV0b3J0ZS4KSm9pbnQuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWluIFN1cGVyLURpY2ttYW5uLgpCdW50ZXIgUmVpcy4gICAgICAgIAoKCkNvb2xlIFNhY2hlLCB1bmQgd28gc2luZCBkaWUgc2Nod2VkaXNjaGVuIE1hc3NldXJpbm5lbj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIC4uLiAoTGlhcmEsICAzLiBNYWkgMjAwMCwgMTk6MTM6MzUpOgoKWHh4eHh4IHRlaWx0IERpciBtaXQ6IG1laW4gY29tcGkgaGFzc3QgbWljaAoKTGlhcmEsIFp3ZXJnZW56YXViZXJpbmUsIGxhY2h0IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXhwbG9zaXZlIFd1cnN0IGFiZXIgYXVjaC4uLiAoTmV2b2ssICAzLiBNYWkgMjAwMCwgMjI6MDg6MDApOgpEdSBzdHJlaWNoc3QgbWl0IERlaW5lbSBZcmRzdGVpbiB1ZWJlciBkaWUgV3Vyc3QsIHNjaGFmZnN0IGVzIGFiZXIgaXJnZW5kd2llCm5pY2h0LCBlaW5lIEluZm9ybWF0aW9uIHp1IGVyaGFsdGVuLgoqS0FXVU1NISoKCkhtbW1tbW0gb2ssIGljaCBsYXNzIGluIFp1a3VuZnQgbmVuIGtsZWluZW4gVHJ2ZXMgZGFzIGlkZW50aWZpemllcmVuIGVyc3QKVGVzdGVuLi4uLi4KCk5ldm9rLCBzaWNoIGRpZSBXdXJzdGJyb2NrZW4gYXVzIGRlbiBIYWFyZW4gc3RyZWljaGVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClppcmt1c3JlaWYgKERvZGVyaWMsICAzLiBNYWkgMjAwMCwgMjI6Mzg6MzIpOgpEdSBtYWNoc3QgZWluZW4gZ2V3YWx0aWdlbiBLYW1wZnNwcnVuZyEKVm9yIGVpbmVtIHNjaHdlYmVuZGVuIEdlYmFldWRlLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuLCBub3Jkd2VzdGVuLCBub3Jkb3N0ZW4gdW5kIHN1ZWRvc3Rlbi4KRWluIGdlZmx1ZWdlbHRlciBIb3JudGF6cnVsLgogIERlciBnZWZsdWVnZWx0ZSBIb3JudGF6cnVsIHZlcmZlaGx0IERpY2guCkRhcyBHbGltbWVuIGluIGRlbiBBdWdlbiBkZXMgSG9ybnRhenJ1bCBlbnR3aWNrZWx0IHNpY2ggenUgZWluZW0Kcmllc2lnZW4gRmV1ZXJiYWxsLCBkZXIgYXVmIERpY2ggenVyYXN0LgpEdSBtYWNoc3QgZWluZW4gU2FsdG8gcnVlY2t3YWVydHMgdW5kIGVudGdlaHN0IHNvIGRlbSBBbmdyaWZmIHZvbGxzdGFlbmRpZy4KRHUgbGFuZGVzdCBzaWNoZXIgYXVmIERlaW5lbiBGdWVzc2VuIHVuZCBiaXN0IHNvZm9ydCBrYW1wZmJlcmVpdC4KCk1pdHRlbiBpbSBGbHVnIGF1Y2ggbm9jaCBlaW5lbiBTYWx0by4KSGFldHRlIG5pY2h0IGdlZGFjaHQsIGRhc3MgaWNoIHNvIGd1dCBiaW4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hyZWNrZW4gZGVzIEtyaWVnZXMuLi4gKE5ldm9rLCAgNC4gTWFpIDIwMDAsIDA2OjQ0OjQ3KToKRGllIExlaWNoZSBlaW5lcyBTY2hhdHRlbm1hbm5zLgpEaWUgYmVyZWl0cyB6aWVtbGljaCBzdGlua2VuZGUgTGVpY2hlIGVpbmVyIFNjaGF0dGVuZnJhdS4KRGllIHNjaGltbWVsbmRlIHVuZCBoYWxidmVyd2VzdGUgTGVpY2hlIGVpbmVyIFNjaGF0dGVuZnJhdS4KRWluZSBOYWNodGtldWxlLiAoNikKRWluZSBOYWNodHJ1ZXN0dW5nLiAoMzkpCkRhcyBBbXVsZXR0IGRlciBBa2FkZW1pZS4gKDM5KQpFaW4gTmFjaHRkb2xjaC4gKDE0KQo4MjUgTXVlbnplbi4KRWluIE5hY2h0c2FlYmVsLiAoNikKRWluIE5hY2h0c2Nod2VydC4KW1RlYW06S2F0emVucG93ZXJdIFRvcHN1cmYgc2llaHQgZXR3YXMgemVyemF1c3QgYXVzLgoKaW0gV2VzdGVuIG5peCBuZXVlcy4uLiwKCk5ldm9rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2NocmVja2VuIGRlcyBLcmllZ2VzLi4uIChBbmF0b2wsICA0LiBNYWkgMjAwMCwgMTA6MDU6MTkpOgp+IyEgcm49TmV2b2sgcnQ9OTU3NDE1NDg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU3NDE1NDg3ClRzaywgd2VubiBpY2ggZXMgbmljaHQgYmVzc2VyIHd1ZXNzdGUsIHd1ZXJkZSBpY2ggamV0enQgdmVybXV0ZW4KbXVlc3NlbiwgZGFzcyBUb3BzdXJmIGdlc2NyaXB0ZXQgaGF0IDtvKQoKQW5hdG9sIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmEgd2FzIG51PyAoQXBzdSwgIDQuIE1haSAyMDAwLCAxOTozNzowNyk6CltzY2hhdV0KRHUgYmlzdCBpbiBlaW5lbSBmZXVjaHRlbiBHcmFiLiBJcmdlbmR3aWUgaXN0IGVzIGhpZXIgbmljaHQgc28gZ2VtdWV0bGljaC4KRHUgc29sbHRlc3QgaGllciB3aWVkZXIgaGluYXVza2xldHRlcm4sIGJldm9yIER1IGhpZXIgbm9jaCBiZWdyYWJlbiAKd2lyc3QuIApFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogcmF1cy4KRWluIGJyYXVuZXIgVGVkZHliYWVyLgpFaW4gZ2VsYmVyIFRlZGR5YmFlci4KRWluIGdlbGJlciBUZWRkeWJhZXIuClt0b2V0ZSB0ZWRkeV0KRHUgc2llaHN0IGhpZXIga2VpbiBkZXJhcnRpZ2VzIFdlc2VuIQpFaW4gVGVkZHkgcnVmdDogSGlsZmUsIEhvbCBtaWNoIGhpZXIgUkFBQVVVVVVVVVNTU1MgISEhISAKTGVpZGVyIGthbm5zdCBkdSBuaWNodCBlcmtlbm5lbiwgd2VyIHZvbiBkZW4gVGVkZHlzIGdlcnVmZW4gaGF0ISAKCkFwc3UsIGxlaWNodCB2ZXJ3aXJydCA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdsZWljaCB1bmQgZ2xlaWNoLi4uLiAoTmV2b2ssICA0LiBNYWkgMjAwMCwgMjA6NDU6NDkpOgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogd2VzdGVuLCBub3JkZW4gdW5kIG5vcmRvc3Rlbi4KTWVsd2luIGRlciBDaGFvdC4KRWluZSB3aWRlcmxpY2hlIEtha2VybGFrZS4KRWluZSBrbGVpbmUgU3Bpbm5lLgpFaW5lIGtsZWluZSBTcGlubmUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdsZWljaCB1bmQgZ2xlaWNoLi4uLiAoQXJrLCAgNC4gTWFpIDIwMDAsIDIwOjQ5OjE2KToKfiMhIHJuPU5ldm9rIHJ0PTk1NzQ2NTk0OSByZz1zY2htYXJybgp+IyEgdGlkPTk1NzQ2NTk0OQpJY2ggbmVobWUgYW4sIGVzIGlzdCBBYnNpY2h0LCBkYXNzIER1IHNlbGJzdCBkYSBuaWNodCBhdWZ0YXVjaHN0IDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpZ2VudGxpY2ggYmluIGljaCBza3J1cGVsbG9zZXIgKDsgKEthbXVobCwgIDUuIE1haSAyMDAwLCAwMzowNTo0Nik6CkVpbmUgZ2FyIHNjaGV1c3NsaWNoZSBEYWVtb25lbmZyYXR6ZSBlcnNjaGVpbnQuCkR1IHdpbGxzdCBkb2NoIG5pY2h0IGV0d2EgZWluZW4gc28gYWx0ZW4gQWJlbnRldXJlciBhZXJnZXJuPwpTY2hhZW0gRGljaC4uLgpQYXVsIHdlaHJ0IERlaW5lbiBaYXViZXIgYWIuCgpNaXN0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWb3IgZGVtIENyYXNoIChNb3Jnb3RoLCAgNS4gTWFpIDIwMDAsIDEwOjI1OjE2KToKW1NlaGVyOkRlZXBCbHVlIGdlaHQgbWl0IGRlciBIeWRyYSBrdXNjaGVsbl0KJSBDb25uZWN0aW9uIHRvIG1nIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCi0tLS0gTm8gd29ybGQgLS0tLQoKRGllIFRhbnRlIHdhcnMuLi5iZWkgZGVyIEJlZHJvaHVuZyAgOy0pCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZvciBkZW0gQ3Jhc2ggKE1hcmN1cywgIDUuIE1haSAyMDAwLCAxMDoyNjo0Nik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTk1NzUxNTExNiByZz1zY2htYXJybgp+IyEgdGlkPTk1NzUxNTExNgpwcmludCAqY3VycmVudF9vYmplY3QKLi4uLiBuYW1lID0gMHhmZDdhMDY0ICJodW1hbjpkZWVwYmx1ZSIsIC4uLi4gCgpIbW0gOikKCkNpb2FvLCBNCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgo6KSAoU2t5LCAgNS4gTWFpIDIwMDAsIDEyOjQ1OjMyKToKRGVyIEJhbHJvZyBncmVpZnQgRGljaCBtaXQgYmVpZGVuIFdhZmZlbiBnbGVpY2h6ZWl0aWcgYW4uCiAgLi4uLm5vcm1hbC9TY2h3ZXJ0Li4uLi4gQmFscm9nLi4uLi4uLiA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0genUgQnJlaQpEZXIgQmFscm9nIGJlc2l0enQga2VpbmUgV2FmZmUsIGRpZSBEdSB1bnRlcmxhdWZlbiBrb2VubnRlc3QuCkVpbiBCYWxyb2cgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtvbWlzY2hlciBzcGVsbDopIChTa3ksICA1LiBNYWkgMjAwMCwgMTg6MDc6MjApOgpFbGVuZGlsIGtsb3BmdCBtaXQgc2VpbmVtIFphdWJlcnN0YWIgYXVmIGRlbiBCb2RlbiB1bmQgc2NoZWludCB2ZXJzY2h3dW5kZW4uClBsb2V0emxpY2ggbGV1Y2h0ZXQgZGFzIEZldWVyYW11bGV0dCBncmVsbCBhdWYuIER1IHdpcnN0IHZvbiBlaW5lciBsZXVjaHRlbmRlbgpBdXJhIGVpbmdlaHVlbGx0LiBBbHMgZGllIEF1cmEgZXJsaXNjaHQsIGZ1ZWhsc3QgZHUgZGljaCBzZWhyIHZpZWwgYmVzc2VyLgpEYXMgU2Nod2VydCBzYXVndCBldHdhcyBCbHV0IGF1cyBkZW0gSGVmdC4KRHUgd2lyc3QgZGF2b24gcmVnZW5lcmllcnQuCgpVbmQgd28gYmxlaWJlbiBkaWUgU2NodWhlPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWxsZXMga2xhci4uLiAoTmV2b2ssICA1LiBNYWkgMjAwMCwgMjE6MjE6NTMpOgpEdSBiZXRyYWNodGVzdCBkZW4gS2FtcGZoYW1tZXIgZWluZ2VoZW5kLgpFciBpc3QgZWluZSAyLUhhbmR3YWZmZSB1bmQgZ2Vob2VydCBkZXIgR3J1cHBlIGRlciBzdHVtcGZlbiBIaWVid2FmZmVuIGFuLiBFcgptYWNodCBzaWNoZXJsaWNoIGRlbiBhYnNvbHV0IGhvZWNoc3Rtb2VnbGljaGVuIFNjaGFkZW4uIEVyIGthbm4gamVtYW5kZW4KemVycmVpc3Nlbi4gRXIga2FubiBwcnVlZ2Vsbi4gCkR1IGthbm5zdCBtaXQgaWhtIGd1dCBEZWluZW4gR2VnbmVyIEtPIHNjaGxhZ2VuLiBFciBpc3QgYXVzZ2V6ZWljaG5ldApnZXNjaGFlcmZ0LiBFciBoYXQgdW5nZWZhZWhyIGVpbiBHZXdpY2h0IHZvbiAxMDA0NyBHcmFtbS4gRHUgd3VlcmRlc3Qgc2VpbmVuCldlcnQgYXVmIGV0d2EgMTE2NSBNdWVuemVuIHNjaGFldHplbi4gRXIgaXN0IG5pY2h0IGJlc2NoYWVkaWd0LgoKUHJlaXNmcmFnZTogV2VsY2hlciBNYWdpZXIgd2lyZCBiZWkgUm9ocmhvZXJlIGVudGxhcnZ0PyA7KQoKTmV2b2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbGxlcyBrbGFyLi4uIChGZXVlcndlaHIsICA1LiBNYWkgMjAwMCwgMjE6MzU6MjcpOgp+IyEgcm49TmV2b2sgcnQ9OTU3NTU0NTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU3NTU0NTEzCgpXb3cuCgpJY2ggc3RlaGUgYXVmIGF1c2d6ZWljaG5ldCBnZXNjaGFlcmZ0ZSBLYW1wZmhhZW1tZXIgOi0pLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICByZTogU2VoZXJhbmZvcmRlcnVuZ2VuIChBbmF0b2wsICAzLiBNYWkgMjAwMCwgMDk6NDk6MjQpIChHbG9pbiwgIDUuIE1haSAyMDAwLCAyMTo0MDoxMyk6Cn4jISBvbj1HbG9pbiBvdD05NTc1NTU2MDMgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUFsbWR1ZGxlciBydD05NTc1NDA2MzEgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NTc1NDA2MzEKPiBJbiBkaWVzZW0gRmFsbCBmYWVsbHQgYXVmLCBkYXMgaGllciB0YXRzYWVjaGxpY2ggb2Z0IHVtIGRlcyBTY2hyZWliZW5zCj4gZ2VzY2hyaWViZW4gd2lyZCwgZ2VnZWJlbmVuZmFsbHMgdW50ZXIgVW1nZWh1bmcgZWluemVsbmVyIEhpcm53aW5kdW5nZW4uCgpFaW5lciBkZXIgc2VsdGVuZW4gRmFlbGxlLCBpbiBkZW5lbiBlaW4gQXJ0aWtlbHNjaHJlaWJlciBzaWNoIHp1cgpJbmhhbHRzbG9zaWdrZWl0IHNlbGJzdCBiZWtlbm50LiAtPiBTY2htYXJybgoKR2xvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbGxlcyBrbGFyLi4uIChHbG9pbiwgIDUuIE1haSAyMDAwLCAyMTo0MTo0Nyk6Cn4jISBybj1OZXZvayBydD05NTc1NTQ1MTMgcmc9c2NobWFycm4KfiMhIHRpZD05NTc1NTQ1MTMKSWNoIHRpcHBlIGF1ZiBkZW4gTSotTWFnaWVyIDo+CgpHbG9pbgoKUFM6IFdhcyBnZXdpbm5lIGljaD8gRWluZW4ga29zdGVubG9zZW4gVXJsYXViIGF1ZiBUYW1pYmFyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbWVsd2luIChNb3Jnb3RoLCAgNS4gTWFpIDIwMDAsIDIxOjUwOjM0KToKTWVsd2luIHRlaWx0IERpciBtaXQ6IGR1IGFiZ2VmdWNrdGVyIHNjaGVpc3MgZnVyeiBsYXNzIGRlbiBzY2hlaXNzIGZ1ZXIgd2VubgpNZWx3aW4gdGVpbHQgRGlyIG1pdDogaGFlbHN0IGR1IGRpY2ggZWlnZW50bGljaCBkYXMgZHUgbWVpbnN0IGR1IGthbm5zdCBkYXMKTWVsd2luIHRlaWx0IERpciBtaXQ6IGVpbmZhY2ggbnVyIHNvIG1hY2hlbiBvaG5lIGdydW5kIFsyMTo0OV0KTWVsd2luIHRlaWx0IERpciBtaXQ6IGF1Y2ggbWFnaWVyIGR1ZXJmZW4gbmljaHQgYWxsZXMgWzIxOjUwXQoKdW5kIGRhcyBhbGxlcyBudXIsIHdlaWwgaWNoIGlobSBuZW4gb21iYXRpcyBnZXNjaGlja3QgaGFiCgpNKiBsYWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWNpZCBzcGl0dGVyIChOaWNodHMsICA1LiBNYWkgMjAwMCwgMjI6MjA6NTkpOgpNZWx3aW4gc3B1Y2t0IE1vcmdvdGggYW4uCk1vcmdvdGggdmVyd2FuZGVsdCBzaWNoIGluIGFic29sdXRlIFNjaHdhZXJ6ZSB1bmQgaXN0IHdlZy4KVGV2aWxkbyBzY2hsZWljaHQuCgpOaWNodCB1ZWJlbC4KIiIgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbm1vZWdsaWNoIDopIChEaWVkZXIsICA1LiBNYWkgMjAwMCwgMjM6Mjk6NDEpOgpGbGllZ2VyIHppZWh0IGVpbmUgUG9zdG11ZXR6ZSBhbi4KRmxpZWdlciBiZXRyaXR0IGRpZXNlIFdlbHQuCgpzZWl0IHdhbm4gZ2lidHMgZGVubiBzb3dhcz8gRmxpZWdlciBoYWJlbiBuZSBGbGllZ2VybXVldHplIG9kZXIgd2FzCmFlaG5saWNoZXMsIGFiZXIga2VpbiBkb29mYmxhdWVzIFBvc3QtS2FlcHBpIQoKRGllZGVyLCBQaWxvdCwgZW50c2V0enQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbm1vZWdsaWNoIDopIChDYWxpbWVyYSwgIDUuIE1haSAyMDAwLCAyMzozMzowOSk6Cn4jISBybj1EaWVkZXIgcnQ9OTU3NTYyMTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU3NTYyMTgxCm5vY2ggbml4IHZvbiBsdWZ0cG9zdCBnZWhvZXJ0Li4uLgoKOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUc3NzLCBLbGVyaWtlciA6KSAoTGFuZmVhciwgIDUuIE1haSAyMDAwLCAyMzozNDozNSk6CmZpbmRlIGh5ZHJhIC0tPgpEYXMgQWJiaWxkIFNpbmFzLgpFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4KRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4KRWluIEtvcGYgZGVyIEh5ZHJhLgpbQXNzYXNzaW5zXSBTaW5hIGlkZWx0IG1pdCBBcmtzaGF0IHVtIGRpZSBXZXR0ZS4KRGllIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4KRWluIEtvcGYgZGVyIEh5ZHJhLgpFaW4gS29wZiBkZXIgSHlkcmEuCkVpbiBLb3BmIGRlciBIeWRyYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpEaWUgS3VnZWwgbG9lc3Qgc2ljaCB3aWVkZXIgYXVmLgpEZWluIFphdWJlcnN0YWIgdW50ZXJzdHVldHp0IERpY2ggYmVpIGRlbSBTcHJ1Y2guCgpmIHNpbmEgLS0+CgpTaW5hIGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBVbG0uCkVpbmdlbG9nZ3Qgc2VpdDogRnJlLCAgNS4gTWFpIDIwMDAsIDIzOjIxOjA3ClZvbGxlciBOYW1lOiBbQXNzYXNzaW5zXSBTaW5hIGlkZWx0IG1pdCBBcmtzaGF0IHVtIGRpZSBXZXR0ZQpSYXNzZTogWndlcmcsICBHaWxkZTogS2xlcnVzLCAgR2VzY2hsZWNodDogd2VpYmxpY2gKQWx0ZXI6IDI2ZCAxMTo1MDoyNCwgICBTcGllbGVybGV2ZWw6IDUxIChTZWhlcmluKSwgICBHaWxkZW5sZXZlbDogOApEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBEb24sIDI5LiBKdWwgMTk5OSwgMTU6MjI6MzMKei5aLiBhYndlc2VuZCwgR3J1bmQgIDogSWNoIGJldGUgZ2VyYWRlLi4uCkJpc2hlciBiZXJlaXRzIDEzIG1hbCBnZXN0b3JiZW4KUHJvamVrdDogU3R1ZGl1bQoKCk1hbiBiZWFjaHRlIGRpZSBXZWdtZWxkdW5nIDopCgpMYW5mZWFyIC0gbWl0IGVpbmVtICdIeWRyYSBhdWZ3ZXJ0ZW4nLUZhZWhuY2hlbiB3ZWRlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkaWVzZSBTY2htYWNoISAoWmFwaG9iLCAgNi4gTWFpIDIwMDAsIDAwOjA5OjE5KToKIEFtYW5kYSBzYWd0OiBIYWxsbyBFaW4gZnJvc2NoIQpBbWFuZGEgc2FndDogV2llIHdhZXJzIGRlbm4gbWl0IHVucywgS2xlaW5lcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBkaWVzZSBTY2htYWNoISAoRGllZGVyLCAgNi4gTWFpIDIwMDAsIDAwOjIyOjQ4KToKfiMhIHJuPVphcGhvYiBydD05NTc1NjQ1NTkgcmc9c2NobWFycm4KfiMhIHRpZD05NTc1NjQ1NTkKd2VubiBpY2ggZGFzIG1pdCBEZWluZW0gVGl0ZWwgdmVyZ2xlaWNoZTogcGFzc3QgZG9jaCEKR2lsZGUgcGFzc3QgYXVjaCBmdWVyIGx1c2NoaWdlIEZyb2VzY2hlIC0gd2FzIHdpbGxzdGUgbWVociA6KQoKRGllZGVyLCBkYXMgS2FrdHVzLUxpZWQgdm9yIHNpY2ggaGlucGZlaWZlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNRyBkb3duPz8/IChab29yZGFuLCAgNi4gTWFpIDIwMDAsIDEwOjUzOjAyKToKPiBtdWRzCk1vcmdlbkdyYXVlbiAgICAgICAgICBET1dOICAgICBNYXkgIDYgMDA6MDcKCkRhcyBNRyBrYW5uIGFsbGVzLCBkb3duIHNlaW4gdW5kIG1hbiBrYW5uIGdsZWljaHplaXRpZyBpbiBkZXIgWmVpdHVuZyBBcnRpa2VsCnNjaHJlaWJlbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClphbmdlIChHcmVuZHVsYSwgIDYuIE1haSAyMDAwLCAxNTozMTo0Myk6CkR1IHp1ZWNrc3QgZGllIFN1cGVyLVNwZWNpYWwtRGFlbW9uZW4tRGltZW5zaW9ucy1NdWx0aWZ1bmt0aW9ucy1aYW5nZS4KRHUgZnVlaGxzdCBEaWNoIG1pdCBEZWluZXIgV2FmZmUgc2VociB3b2hsLgoKS2xlcmlrZXIgendpY2tlbiBhbnNjaGVpbmVuZCBnZXJuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgTWFjaHQgdm9uIFRvd2VyIChTcmFiaSwgIDYuIE1haSAyMDAwLCAxODo1NDoyOCk6CgpEdSBob2Vyc3QgZWluIEdyb2xsZW4uIERlciBWdWxrYW4gaXN0IG1hbCB3aWVkZXIgYWt0aXYuCgpUb3dlciAgSSBTIFQgIEogRSBUIFogVCAgRCBBICEhIQoKU3JhYmksIHNpY2ggaW1tZXIgbm9jaCBkdWNrZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBWSVJFTldBUk5VTkcgKE5ldm9rLCAgNy4gTWFpIDIwMDAsIDE5OjQ4OjE3KToKfiMhIHJuPUNoZWFzeSBydD05NTc3MTMwNDUgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NTc0NDU3MzIKVW0gZGllIDEwLjAwMCBnZWxvZXNjaHRlIC5qcGcuIEhtbW1tbS4gQWxzbyBuYWphICpodWVzdGVsKi4uLiBEYW1pdCB2ZXJkaWVudAppaHIgZXVlciBHZWxkLiBBbHNvIGVzIHR1dCBtaXIgamEgbGVpZCB1bmQgc28sIGFiZXIgZGFzIGhvZXJ0IHNpY2ggZmFzdCBhbiBhbHMKb2IgZGVyIERpZW5zdCBkZXIgZGEgYW5nZWJvdGVuIHdpcmQgaXJnZW5kd2llIGRyZWkgWGUgaXJnZW5kd28gaW0gVGl0ZWwgb2RlcgppbiBkZXIgQmVzY2hyZWlidW5nIGhhdCAqZ3JpbnMqLgoKTmV2b2sKClAuUy46IERhbm4ga29lbm50ZSBkYXMgamEgZWluIFZpcnVzIHZvbSBWYXRpa2FuIHNlaW4uLi4uLmF1Y2ggbmUgY29vbGUgSWRlZQppcmdlbmR3aWUgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBWSVJFTldBUk5VTkcgKENoZWFzeSwgIDcuIE1haSAyMDAwLCAyMDoxOTo0NSk6Cn4jISBybj1OZXZvayBydD05NTc3MjE2OTcgcmc9c2NobWFycm4KfiMhIHRpZD05NTc0NDU3MzIKSG0gTmV2b2ssCgptaXIgc2NoZWludCwgRHUgaGFzdCBub2NoIG5pZSBhdWNoIG51ciBpcmdlbmRlaW5lIGZvcm0gdm9uIEJpbGRlcm4gaW0gaW50ZXJuZXQKYmV0cmFjaHRldC4uLiAKLUNoZWFzeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFZJUkVOV0FSTlVORyAoSG9vZCwgIDcuIE1haSAyMDAwLCAyMDoyMzowNyk6Cn4jISBybj1DaGVhc3kgcnQ9OTU3NzIzNTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU3NDQ1NzMyCm1hbmNoZSBkaW5nZSBrYW5uIHNpY2ggbmV2b2sgZ2FueiBzaWNoZXIgbnVyIGluIGZvcm0gdm9uIGJpbGRlcm4gaW0KaW50ZXJuZXQgYmV0cmFjaHRlbi4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFZJUkVOV0FSTlVORyAoTmV2b2ssICA3LiBNYWkgMjAwMCwgMjA6MjQ6NTcpOgp+IyEgcm49SG9vZCBydD05NTc3MjM3ODcgcmc9c2NobWFycm4KfiMhIHRpZD05NTc0NDU3MzIKWXVwLCBsZWlkZXIuIE1laHIgYWxzIGRhcyBCaWxkIGVpbmVzIEZlcnJhcmlzIHdlcmQgaWNoIHdvaGwgbmllIGJlc2l0emVuLgpOYWphLCB2aWVsbGVpY2h0IGthbm4gaWNoIG1pciBqYSBtYWwgZGFzIExlbmtyYWQgbGVpc3Rlbi4uLi4KCk5ldm9rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogVklSRU5XQVJOVU5HIChQYXJzaXZhbCwgIDcuIE1haSAyMDAwLCAyMzoyNTo1MCk6Cn4jISBybj1OZXZvayBydD05NTc3MjM4OTcgcmc9c2NobWFycm4KfiMhIHRpZD05NTc0NDU3MzIKV2VubiBEdSBkYXMgTGVua3JhZCBrYXVmc3QsIGthdWZlIGljaCBuZW4gUmVpZmVuLi4uIHdlbm4gbm9jaCBtZWhyIG1pdG1hY2hlbiwKYmVrb21tZW4gd2lyIGRhbm4gZG9jaCBub2NoIG5lbiBGZXJyYXJpIHp1c2FtbWVuIDopCgpQYXJzaXZhbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFZJUkVOV0FSTlVORyAoTmV2b2ssICA3LiBNYWkgMjAwMCwgMjM6Mjc6MTYpOgp+IyEgcm49UGFyc2l2YWwgcnQ9OTU3NzM0NzUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU3NDQ1NzMyCkhtbW1tbSBkYSBrcmllZ2VuIHdpciBkYW5uIGFiZXIga2VpbmVuIFZlcnNpY2hlcnVuZ3Nib251cyBmdWVyIG51ciBlaW5lbgpGYWhyZXIuLi4uLgoKTmV2b2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBWSVJFTldBUk5VTkcgKERpZWRlciwgIDcuIE1haSAyMDAwLCAyMzoyOToxMik6Cn4jISBybj1OZXZvayBydD05NTc3MzQ4MzYgcmc9c2NobWFycm4KfiMhIHRpZD05NTc0NDU3MzIKaW50ZWxsaWdlbnptYWVzc2lnIHdhZXIgZGEgbmVuIFp3ZXJnIGVoIG5pY2ggYWxzIEZhaHJlciBnZWVpZ25ldCwgZHUga29lbm50ZXN0CmhvZWNoc3RlbnMgQmFsbGFzdCBpbSBLb2ZmZXJyYXVtIHNlaW4gOi0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFZJUkVOV0FSTlVORyAoTmV2b2ssICA3LiBNYWkgMjAwMCwgMjM6MzU6NTQpOgp+IyEgcm49RGllZGVyIHJ0PTk1NzczNDk1MiByZz1zY2htYXJybgp+IyEgdGlkPTk1NzQ0NTczMgpuYWphIERlciBXYWdlbiBpcyBqYSByZWxhdGl2IG5pZWRyaWcuLi4gZGEgYnJhZXVjaHQgaWNoIG5ldCBzbyB2aWVsIFNpdHpraXNzZW4KdW0gdWViZXJzIExlbmtyYWQgc2NoYXVlbiB6dSBrb2VubmVuLi4uLgphYmVyIGZ1ZXIgZ3Jvc3NlIEVsZmVuIGtvZW5udGUgZXMgcHJvYmxlbWF0aXNjaCB3ZXJkZW4uLi4uYXVzc2VyCmNvbnZlcnRpYmxlLi4uLgoKTmV2b2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBWSVJFTldBUk5VTkcgKFd1cnplbCwgIDcuIE1haSAyMDAwLCAyMzo1OTowNSk6Cn4jISBybj1OZXZvayBydD05NTc3MjM4OTcgcmc9c2NobWFycm4KfiMhIHRpZD05NTc0NDU3MzIKc29vIHRldWVyIGlzdCBlaW4gZmVycmFyaSBhdWNoIG5pY2h0LiB3ZXIgc2Nob24gdm9yIGRlciBqYWdkIGRpZSBmbGludGUgaW5zCmtvcm4gd2lyZnQsIGJyYXVjaHQgc2ljaCBhbGxlcmRpbmdzIG5pY2h0IHp1IHd1bmRlcm4gd2VubiBlciBuaWNodHMgZXJsZWd0LgoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogVklSRU5XQVJOVU5HIChOZXZvaywgIDguIE1haSAyMDAwLCAwMDowMDoxNSk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTU3NzM2NzQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU3NDQ1NzMyCktvbW10IGRyYXVmIGFuIHdhcyBpbSBLb3JuIGxpZWd0IHVuZCB2b24gZGVyIEZsaW50ZSBlcnNjaGxhZ2VuIHdpcmQKQWJlciBtYW4ga2F1ZnQgc2ljaCBhdWNoIG5ldCBkYXMgVm9sa3Nwb3JzY2hlLUFlcXVpdmFsZW50LCBuZT8KQWJlciB3YXMgc2FnIGljaCBkYXMgbmVtIEJheWVybi4uLiA7KQoKTmV2b2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBWSVJFTldBUk5VTkcgKFBhcnNpdmFsLCAgOC4gTWFpIDIwMDAsIDAwOjAxOjQxKToKfiMhIHJuPU5ldm9rIHJ0PTk1NzczNjgxNSByZz1zY2htYXJybgp+IyEgdGlkPTk1NzQ0NTczMgpOaXggZ2VnZW4gQmF5ZXJuLi4uLiBzb25zdCBtdXNzdCBEdSBEaXIgZGVuIFJlaWZlbiBzZWxic3Qga2F1ZmVuISA6KQoKUGFyc2l2YWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBWSVJFTldBUk5VTkcgKE5ldm9rLCAgOC4gTWFpIDIwMDAsIDAwOjAzOjA3KToKfiMhIHJuPVBhcnNpdmFsIHJ0PTk1NzczNjkwMSByZz1zY2htYXJybgp+IyEgdGlkPTk1NzQ0NTczMgpVbmQgRHUgZ2lic3QgRGlyIG5lbiBBbHBlbmZlcnJhcmk/IDspCk5hIGRhIHNjaGF1IG1hbCBlaW5lciBhbiwgdmllbGxlaWNodCBpcyBSb3ZlciBkb2NoIG5ldCBnYW56IHZlcmxvcmVuCgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdsZWljaCB1bmQgZ2xlaWNoLi4uLiAoQmFtYmksICA4LiBNYWkgMjAwMCwgMTE6MDA6NDcpOgp+IyEgcm49TmV2b2sgcnQ9OTU3NDY1OTQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU3NDY1OTQ5Ck5ldm9rLCB3YXMgaGFzdCBfRHVfIGRhbm4gZG9ydCBnZW1hY2h0P2AKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1laW4gTW90aGVyYm9hcmQga2FubiBzcHJlY2hlbiAoTW9yZ290aCwgIDguIE1haSAyMDAwLCAxMjoyODozMyk6Cmh0dHA6Ly93d3cuaGVpc2UuZGUvbmV3c3RpY2tlci9kYXRhL2dzLTA4LjA1LjAwLTAwMC8KCk0qIGdyaW5zdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcHJpb3JpdGFldGVuIChEZWVwYmx1ZSwgIDguIE1haSAyMDAwLCAxNDo1MDowMyk6CkRlaW5lIEZyZXVuZGluIExhcmluYSB0ZWlsdCBEaXIgbWl0OiBzY2hlaXNzZQpbVG9kOkxhcnNdIEVpbiBTaXZvayBEcmFrb25pZXIgaGF0IGdlcmFkZSBMYXJpbmEgdW1nZWJyYWNodC4KV2FlciBkYSBuaWNodCB3YXMgYW5kZXJlcyBhbHMgZnJ1ZmUgYmVzc2VyIGdld2VzZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSmEgd2FzIG51PyAoVGVkZHksICA4LiBNYWkgMjAwMCwgMTc6Mzk6MjQpOgp+IyEgcm49QXBzdSBydD05NTc0NjE4Mjcgcmc9c2NobWFycm4KfiMhIHRpZD05NTc0NjE4MjcKQWVobSwgZGFzIGlzdCBlaW5lIGdhYWFhbnogYm9lc2UgU3RlbGxlLgoKVGVkZHksIGVyaW5uZXJ0IHNpY2ggZGEgYW4gZWluZW4gZ2V3aXNzZW4ga2FlbXBmZXJ6d2VyZywgZGVyIGRhIGF1Y2ggdG9ldGUKVGVkZHkgbmViZW4gaWhtIHN0ZWhlbmQgZ2V0aXBwdCBoYXR0ZS4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdsZWljaCB1bmQgZ2xlaWNoLi4uLiAoTmV2b2ssICA4LiBNYWkgMjAwMCwgMTg6MzM6MjApOgp+IyEgcm49QmFtYmkgcnQ9OTU3Nzc2NDQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU3NDY1OTQ5ClNjaG9uIHNvIGxhbmdlIG5pY2h0IG1laHIgU2VoZXIgZGFzcyBEdSBkaWUgS3Jpc3RhbGxrdWdlbCB2ZXJnZXNzZW4gaGFzdCwKQmFtYmk/IDspCgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FlbXBmZXIgKFNseWZveCwgIDguIE1haSAyMDAwLCAyMjozOTo0NSk6CkdvbGFzIGZvbGd0IGRlbSBMaWNodCBzZWluZXIgR2ViaWV0ZXJpbiBuYWNoIE9zdGVuLgpHb2xhcyBmcmFndCBEaWNoLCBvYiBEdSBkaWVzZXMgTGljaHQgc2llaHN0IHVuZCBkZXV0ZXQgbmFjaCBvYmVuLgpHb2xhcyBmb2xndCBkZW0gTGljaHQgc2VpbmVyIEdlYmlldGVyaW4gbmFjaCBPc3Rlbi4KR29sYXMgZnJhZ3QgRGljaCwgb2IgRHUgZGllc2VzIExpY2h0IHNpZWhzdCB1bmQgZGV1dGV0IG5hY2ggb2Jlbi4KR29sYXMgZm9sZ3QgZGVtIExpY2h0IHNlaW5lciBHZWJpZXRlcmluIG5hY2ggT3N0ZW4uCkdvbGFzIGZyYWd0IERpY2gsIG9iIER1IGRpZXNlcyBMaWNodCBzaWVoc3QgdW5kIGRldXRldCBuYWNoIG9iZW4uCkdvbGFzIGZvbGd0IGRlbSBMaWNodCBzZWluZXIgR2ViaWV0ZXJpbiBuYWNoIE9zdGVuLgpHb2xhcyBmcmFndCBEaWNoLCBvYiBEdSBkaWVzZXMgTGljaHQgc2llaHN0IHVuZCBkZXV0ZXQgbmFjaCBvYmVuLgoKNSBNaW51dGVuIHNwYWV0ZXI6CgpHb2xhcyBmb2xndCBkZW0gTGljaHQgc2VpbmVyIEdlYmlldGVyaW4gbmFjaCBPc3Rlbi4KR29sYXMgZnJhZ3QgRGljaCwgb2IgRHUgZGllc2VzIExpY2h0IHNpZWhzdCB1bmQgZGV1dGV0IG5hY2ggb2Jlbi4KR29sYXMgZm9sZ3QgZGVtIExpY2h0IHNlaW5lciBHZWJpZXRlcmluIG5hY2ggT3N0ZW4uCkdvbGFzIGZyYWd0IERpY2gsIG9iIER1IGRpZXNlcyBMaWNodCBzaWVoc3QgdW5kIGRldXRldCBuYWNoIG9iZW4uCkdvbGFzIGZvbGd0IGRlbSBMaWNodCBzZWluZXIgR2ViaWV0ZXJpbiBuYWNoIE9zdGVuLgpHb2xhcyBmcmFndCBEaWNoLCBvYiBEdSBkaWVzZXMgTGljaHQgc2llaHN0IHVuZCBkZXV0ZXQgbmFjaCBvYmVuLgoKMTAgTWludXRlbiBzcGFldGVyOgoKR29sYXMgZm9sZ3QgZGVtIExpY2h0IHNlaW5lciBHZWJpZXRlcmluIG5hY2ggT3N0ZW4uCkdvbGFzIGZyYWd0IERpY2gsIG9iIER1IGRpZXNlcyBMaWNodCBzaWVoc3QgdW5kIGRldXRldCBuYWNoIG9iZW4uCkdvbGFzIGZvbGd0IGRlbSBMaWNodCBzZWluZXIgR2ViaWV0ZXJpbiBuYWNoIE9zdGVuLgpHb2xhcyBmcmFndCBEaWNoLCBvYiBEdSBkaWVzZXMgTGljaHQgc2llaHN0IHVuZCBkZXV0ZXQgbmFjaCBvYmVuLgpHb2xhcyBmb2xndCBkZW0gTGljaHQgc2VpbmVyIEdlYmlldGVyaW4gbmFjaCBPc3Rlbi4KR29sYXMgZnJhZ3QgRGljaCwgb2IgRHUgZGllc2VzIExpY2h0IHNpZWhzdCB1bmQgZGV1dGV0IG5hY2ggb2Jlbi4KCnVzdy4KCkVzIGdpYnQgU3RlbGxlbiwgd28gbWFuIGxpZWJlciBuaWNodCBaZWl0dW5nIGxlc2VuIHNvbGx0ZS4gOykKCiAgU2x5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiAgU2VoZXJhbmZvcmRlcnVuZ2VuIChHcmltbWJvcm4sICA5LiBNYWkgMjAwMCwgMTE6MzU6MDQpOgp+IyEgb249R3JpbW1ib3JuIG90PTk1Nzg2NDg5OCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49UnVtYXRhIHJ0PTk1Nzg1NjMyNSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk1NzMxMDY4MQpXZW5uIER1IHNvbGNoZSB6ZXJzZXR6ZXJpc2NoZW4gQW5zaWNodGVuIHdlaXRlciBvZWZmZW50bGljaCB2ZXJicmVpdGVzdCBoYXUKaWNoIERpcm4gcGFhciBhdWZzIE1hdWwuClVuZCBkYXMgaXN0IGpldHp0IGtlaW5lIFplbnN1ci4gU29uZGVybiByb2hlIEdld2FsdC4gOi0pCgpBbnNvbnN0ZW4gaXN0IGRpZSBEZWZpbml0aW9uIG5hdHVlcmxpY2ggbmljaHQgZmFsc2NoLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiAgU2VoZXJhbmZvcmRlcnVuZ2VuIChSdW1hdGEsICA5LiBNYWkgMjAwMCwgMTQ6MTk6MTQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk1Nzg2NDkwNCByZz1zY2htYXJybgp+IyEgdGlkPTk1NzMxMDY4MQpuYW51LCBEdSBuaW1tc3QgbWVpbmUgRXhpc3RlbnogenVyIEtlbm50bmlzPyBBdGhlaXN0ZW4gc2luZCBhdWNoCm5pY2h0IG1laHIgZGFzLCB3YXMgc2llIG1hbCB3YXJlbiA6LSkKClJ1bWF0YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogIFNlaGVyYW5mb3JkZXJ1bmdlbiAoR3JpbW1ib3JuLCAgOS4gTWFpIDIwMDAsIDE0OjIzOjEyKToKfiMhIHJuPVJ1bWF0YSBydD05NTc4NzQ3NTQgcmc9c2NobWFycm4KfiMhIHRpZD05NTczMTA2ODEKT2NoLCBHb2V0dGVyIGltIERhZW1tZXJzY2hsYWYgdW5kIGRlciBWZXJnZXNzZW5oZWl0IGFuaGVpbWdlZmFsbGVuIHNpbmQKZHVyY2hhdXMgaW4gbWVpbmVtIFNpbm5lLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmF1c2JpbGR1bmcgbWl0IGdvdHQgb2RlciB3aWU/IChMZWliaSwgIDkuIE1haSAyMDAwLCAxOTozMDoyMyk6CmZyYWcgZWlzZW5oZWxtIG5hY2ggYXp1YmkKS2xvaXJlbiBFaXNlbmhlbG0gc2FndDogRnVlciBEaWNoIGtvbW10IG51ciBlaW4gVHJ2ZXMgYWxzIEF6dWJpIGluIEZyYWdlOiBFaW4KS2xvaXJlbiBFaXNlbmhlbG0gc2FndDogR290dC4KCm5hIG1pdCBnb3R0IHdvbGx0ZSBpY2ggc2Nob24gaW1tZXIgbWFsIG5lIGF1c2JpbGR1bmcgbWFjaGVuIDopCgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthZW1wZmVyIChEYXJrd2luZywgIDkuIE1haSAyMDAwLCAxOTozOToyNSk6Cn4jISBybj1TbHlmb3ggcnQ9OTU3ODE4Mzg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU3ODE4Mzg1CnN0ZWxsIERpciB2b3IgZGFzIHNpbmQgMTAgS2FyYXRla2Egc3RhdHQgZWluZW0gS2FlbXBmZXIuLi4gOz4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZCBzb3dhcyBpcyBLbGVyaWtlciAoTmV2b2ssIDEwLiBNYWkgMjAwMCwgMDY6NDc6MzEpOgpEdSBzYWdzdDogd2VtIGJpc3RlIGRlbm4gZ2V3ZWlodD8KS3RhciBzYWd0OiBrYW5kcmkgOikKRHUgZ3JpbnN0LgpEdSBzYWdzdDogYmVzdGUgZ29ldHRpbiB3byBnaWJ0Ckt0YXIgc2FndDogZ29ldHRpbiA/IDopCkt0YXIgc2FndDogdXBzIAoKVW5kIHNvd2FzIGlzIEtsZXJpa2VyLi4uLmFsc28gbmVlZWVlIDspCgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU29zby4uLiAoTW9yZ290aCwgMTAuIE1haSAyMDAwLCAxMDo0OTo1NCk6CkRlciBPcmtwcmllc3RlciB2ZXJmbHVjaHQgU2luYS4KU2luYSBmcmFndCBkZW4gT3JrcHJpZXN0ZXIgbmFjaCBNb3Jnb3RoLgpEZXIgT3JrcHJpZXN0ZXIgc2FndDogV2VubiBEdSBtaWNoIHNjaG9uIHNvIGRpcmVrdCBmcmFnc3QuIE9rLiBFciBoYXQgc2ljaApEZXIgT3JrcHJpZXN0ZXIgc2FndDogZGllc2UgZ2FuemUgU3RhZHQgYXVzZ2VkYWNodC4gRXIgaXN0IGFiZXIgenVtIEdsdWVjayBtaXQKRGVyIE9ya3ByaWVzdGVyIHNhZ3Q6IHNlaW5lbiBJZGVlbiBub2NoIG5pY2h0IGFtIEVuZGUuCiAgLi4uLm5vcm1hbC9LYW1wZnN0b2NrLi4gU2luYS4uLi4uLi4uLiA6IE9ya3ByaWVzdGVyLi4gKioqKioqKiogLS0gS3JhY2hlbgpEZXIgT3JrcHJpZXN0ZXIgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KU2luYSBuaW1tdCBkZW4gaGVpbGlnZW4gSGFtbWVyLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlciBhbmRlcm4gZWluZSBHcnViZSBncmFlYnQuLi4gKERlbCwgMTAuIE1haSAyMDAwLCAxNDo1NTozNSk6CldlciBhbmRlcm4gZWluZSBHcnViZSBncmFlYnQuLi4gb2RlciB3YXMgcGFzc2llcnQgd2VubiBtYW4gc2ljaCBtaXQgR29yIGFubGVndAoqZyoKClRhdHplaXQ6IHZvciBlaW4gcGFhciBNaW51dGVuClRhdG9ydDogd2VpdCB1bnRlciBkZXIgRXJkZSBpbiBlaW5lciB2ZXJib3JnZW5lbiBTdGFkdApUYWV0ZXI6IEdvcgpPcGZlcjogZGVyIERyYWNoZW5rb2VuaWcKCgpHb3IuCkdvciBzYWd0OiB1dXBzCkdvciBzYWd0OiBkZXIgbGllc3Mgc2ljaCBhdWYgYW5oaWViIGxhZGVuCkdvciBncmluc3QuCkVpbiBEcmFjaGVua29lbmlnIHN0ZWlndCB2b24gc2VpbmVtIFRocm9uIGhlcmFiLgpHb3IgemllaHQgZXR3YXMgYXVzIGVpbmVtIGdlbGJlbiBTYWNrLgpHb3IgZ3JlaWZ0IGRlbiBEcmFjaGVua29lbmlnIGFuLgoKCmxhbmdlIFplaXQgc3BhZXRlci4uLgoKCkBXRVIgYmVrb21tdCBlaW5lbiBmdXJjaHRiYXJlbiBLdWdlbGJsaXR6IGFiLgpEZXIgRHJhY2hlbmtvZW5pZyBzY2hsYWVndCBHb3IgenUgQnJlaS4KRWluIERyYWNoZW5rb2VuaWcgc3RyYXVjaGVsdCB1bmQga2lwcHQgaGludGVudWViZXIgaW4gZGFzIGdhZWhuZW5kZSBMb2NoLgpFaW4gRHJhY2hlbmtvZW5pZyBzdHJhdWNoZWx0IHVuZCBraXBwdCBoaW50ZW51ZWJlciBpbiBkYXMgZ2FlaG5lbmRlIExvY2guCmtpY2hlcgpEdSBraWNoZXJzdC4gKFdpZSBhbGJlcm4gdm9uIERpcikKR29yIHNhZ3Q6IGFlaG0KR29yIHNhZ3Q6IHNoaXQKR29yIHNhZ3Q6IGpldHp0IGlzdCBkZXIga29lbmlnIGlucyBsb2NoIGdlZmFsbGVuCkdvciBncnVtbWVsdC4KbGFjaApEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCkdvciBzYWd0OiBkYXMgbXVzcyBpY2ggd29obCBub2NobWFsIHVlYmVyZGVuay4uLgpHb3IgZ3JpbnN0LgpHb3Igc2FndDogZGFzIGdpYnQgc29uc3QgZGVuIGxhY2hlciBkZXIgbmF0aW9uCkdvciBncmluc3QuCm5pY2sgZ29yCkR1IG5pY2tzdCBHb3IgenUuCgpEYXMgbXVlc3NlbiB3aXIgZGFubiB3b2hsIGRvY2ggbmFjaCBtYWwgdWViZXJhcmJlaXRlbiBIb25leSA7LSkKCkRlbCwgc2ljaCBpbW1lciBub2NoIHVudGVybSBUaXNjaCB3YWVsemVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVWViZS1OUENzIHVuZCBGb2xnZW4gKE5ldm9rLCAxMC4gTWFpIDIwMDAsIDE5OjU4OjQ2KToKfiMhIHJuPVNpbmEgcnQ9OTU3OTgxNDc2IHJnPWdpbGRlbi5rbGVydXMKfiMhIHRpZD05NTc0Njg4ODQKZGFzIHNpbmQgYWJlciB6d2VpLCBvaG5lIERlaW5lIFVudGVyc2NocmlmdCA7KQoKTmV2b2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFVlYmUtTlBDcyB1bmQgRm9sZ2VuIChIaWdodCwgMTAuIE1haSAyMDAwLCAyMjoxNjoyNik6Cn4jISBybj1OZXZvayBydD05NTc5ODE1MjYgcmc9c2NobWFycm4KfiMhIHRpZD05NTc0Njg4ODQKZGVyIHVtYnJhdWNoIGlzdCBzY2h1bGQKCmhpZ2h0IC0+IHNjaG1hcm4gb2RlciBtdWVsbCAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh1YWhhaGFoYSAoTmV2b2ssIDEwLiBNYWkgMjAwMCwgMjI6MjE6NTMpOgpSYXN5YSBzYWd0OiB1bmQgYXVmIGdlaHQncyEKUmFzeWEgaGF0IGdlbnVnIGdlc2VoZW4gdW5kIGd1Y2t0IG5hY2ggb2Jlbi4KTXV0aWcgaGludGVyaGVyCkR1IGJpc3QgYXVmIGRlciBTcGl0emUgZGVzIEJhdW1lcy4gVm9uIGhpZXIgYXVzIGtvZW5udGVzdCBEdSBiZXN0aW1tdAp3ZWl0IHNjaGF1ZW4sIHdlbm4gbmljaHQgc28gdmllbGUgV29sa2VuIHVtIERpY2ggaGVydW0gd2FlcmVuLiBEaWUgQWVzdGUKaGllciBvYmVuIGJpbGRlbiBzbyBlaW5lIEFydCBCcnVlc3R1bmcgdW0gZGllIEJhdW1rcm9uZS4gV2VuaWdzdGVucyBrYW5uc3QKRHUgc28gbmljaHQgcnVudGVyZmFsbGVuIHZvbiBoaWVyLiBJbiBkZXIgTWl0dGUgZGllc2VyIFRlcnJhc3NlIGlzdCBlaW4gTG9jaC4KRXMgaXN0IHdpcmtsaWNoIHNjaGFkZSBtaXQgZGVtIFdldHRlciBoZXV0ZSwgdmllbGxlaWNodCBpc3QgZXMgbW9yZ2VuIGphCmJlc3Nlci4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHVudGVuLgpFaW4ga2xlaW5lciBGcm9zY2ggbmFtZW5zIFJhc3lhLgpFaW4gV2FlY2h0ZXIgZGVyIEdhcmRlLgpFaW4gV2FlY2h0ZXIgZGVyIEdhcmRlLgpNdWxhaSBPbG9ybiB0aXIgVGFpcm5naXJlLgpNdWxhaSBpcyBTdXBlciA7KQoKTmV2b2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNFVUZaIChHb2xhcywgMTEuIE1haSAyMDAwLCAxNTo0NDozNik6CgpEdSBrdXNjaGVsc3QgRGljaCBhbiBVbmFzYWkgYW4uClVuYXNhaSBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KCmdvbGFzIHNjaG5pZWZlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkYW1hbHMgKFNpbmEsIDExLiBNYWkgMjAwMCwgMTg6MDU6NDQpOgoKVm9yIG5pY2h0IGFsbHp1bGFuZ2UgWmVpdCwgd3VyZGUgZG9jaCBkZXIgU3BpZWxlciBnZXN1Y2h0LCBkZXIvZGllCnNpY2ggc2Nob24gYW0gbGFlbmdzdGVuIGltbWVyIGVpbmdlbG9nZ3QgaGFiZW4uIEJlaSB3aWV2aWVsIHRhZ2VuCnN0YW5kIGRlciByZWtvcmQ/CgpTaW5hLCBoYXQgd2FzIGdlZnVuZGVuOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBkYW1hbHMgKEhpZ2h0LCAxMS4gTWFpIDIwMDAsIDE5OjI1OjAwKToKfiMhIHJuPVNpbmEgcnQ9OTU4MDYxMTQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU4MDYxMTQ0CmFsc28gaWNoIGhhYiBkZW4gZXJzdGVuIGRlciB1ZWJlciAxMDAwIGlzICxvKQoKaGlnaHQgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgTWFlbm5lciAoVmFtcGlyZSwgMTEuIE1haSAyMDAwLCAyMDozOTo1NSk6Cj4gQ2lzb3UgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCkNpc291IGRlbmt0ICAgLiBvIE8gKE1hZW5uZXIpCkRlaW5lIFNjaHVoZSBnbHVlaGVuIGt1cnogYXVmIHVuZCBoZWlsZW4gRGljaCBlaW4gd2VuaWcuCkVpbiBCYXVlciBrb21tdCBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZGFtYWxzIChTaW5hLCAxMi4gTWFpIDIwMDAsIDA4OjI0OjM4KToKfiMhIHJuPUhpZ2h0IHJ0PTk1ODA2NTkwMCByZz1zY2htYXJybgp+IyEgdGlkPTk1ODA2MTE0NApEYSBrYW5uIGljaCBhdWYgQW5oaWViIGVpbmVuIG1pdCAxNzkzIGJyaW5nZW4uLi4gYWJlciBpY2ggZGFjaHRlLCBiZWltCmxldHp0ZW4gTWFsIHdhcmVucyBzbyB1bSBkaWUgMTkwMCBUYWdlLi4uLi4KClNpbmEgaGF0IG5vY2ggZWluZW46KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGRhbWFscyAoTXVwZmVsLCAxMi4gTWFpIDIwMDAsIDExOjEwOjU4KToKfiMhIHJuPVNpbmEgcnQ9OTU4MDYxMTQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU4MDYxMTQ0ClByYSBoYXR0ZSBnbGF1YiBpY2ggZWluZW4gZ2VmdW5kZW4gbWl0IG5haGV6dSAyMDAwIFRhZ2VuLi4uIGVzIG1hZyBhZWx0ZXJlCmdlYmVuLCBhYmVyIGRpZSBub2NoIHp1IGZpbmRlbiB3aXJkIHNjaHdlciwgZGVubiBkaWUgSW5mb3JtYXRpb24gIndhciB6dWxldHp0CmhpZXIiIGlzdCB3b2hsIGJlaSBkZW4gYWVsdGVzdGVuIGRlciBhbHRlbiBuaWNodCBpbSBTcGllbGVyZmlsZSBnZXNwZWljaGVydAooZGEga29tbXQgYmVpbSBGaW5nZXIgZWluZmFjaCBkYXMgRGF0ZWlkYXR1bSwgaXJnZW5kd2FzIG1pdCBkZW0gMjkuIEp1bmkgOTkpCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFydGlrZWwgTWFlbm5lciAoUGFkcmVpYywgMTIuIE1haSAyMDAwLCAxMTozNjoyMyk6Cn4jISBybj1WYW1waXJlIHJ0PTk1ODA3MDM5NSByZz1zY2htYXJybgp+IyEgdGlkPTk1ODA3MDM5NQpEdSBiaXN0IGFtIFN0YWR0dG9yIHZvbiBQb3J0IFZhaW4gYW5nZWtvbW1lbiwgZGFzIHVubWl0dGVsYmFyIHZvciBEaXIgbGllZ3QuCkluCndlc3RsaWNoZXIgUmljaHR1bmcgZnVlaHJ0IGRpZSBQb3J0IFZhaW5lciBMYW5kc3RyYXNzZSBpbiBkaWUgZ3Jvc3NlLCB3ZWl0ZQpXZWx0IGhpbmF1cyB1bmQgaW4gb2VzdGxpY2hlciBSaWNodHVuZyB6dW0gZ3Jvc3NlbiBTdGFkdHplbnRydW0gZGVyCkhhZmVuc3RhZHQuClVubWl0dGVsYmFyIHN1ZWRsaWNoIHZvbiBEaXIsIGRpcmVrdCBuZWJlbiBkZW0gU3RhZHR0b3Igc2llaHN0IER1IGRpZSByaWVzaWdlClBmb3J0ZSBlaW5lcyBub2NoIHJpZXNpZ2VyZW4gV2V0dHBhbGFzdGVzIHZvciBEaXIgYXVmcmFnZW4uIER1IGxlZ3N0IERlaW5lbgpLb3BmIGluIGRlbiBOYWNrZW4sIHVtIGlobiBnYW56IGJldHJhY2h0ZW4genUga29lbm5lbi4gRWluIGdyb3NzZXMgU2NoaWxkCmhhZW5ndCB1ZWJlciBkZXIgRWluZ2FuZ3NwZm9ydGUuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuIHVuZCB3ZXN0ZW4uCkVpbiBTYW5kdGlnZXIuCkVpbiBtYWdpc2NoZXMgUG9ydGFsLgpGcmVyaW4gZXJzY2hlaW50IG1pdCBlaW5lbSBsYXV0ZW4gS25hbGwuClNyYWJpIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkZyZXJpbiB3aXJmdCBldHdhcyBTY2h3ZWZlbCBlbXBvciB1bmQgaXN0IG1pdCBlaW5lbSBsYXV0ZW4gS25hbGwgd2VnLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBOZ2hvZ3NdIE9obmUgZGllc2VzIExhZyBoYWV0dGUgbWljaCBGcmVyaW4gbmljaHQKW01vZXJkZXI6R2Vpc3QgZWluZXMgTmdob2dzXSB1bWdlYnJhY2h0IQpbTW9lcmRlcjpGcmVyaW5dIHdlbGNoZXMgTGFnPwpQZXJpbiB0cml0dCBhdXMgZWluZXIgVGFiYWt3b2xrZS4KR2FzdDEgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KUGVyaW4gcm9sbHQgZGFzIEZhc3MgbmFjaCBPc3Rlbi4KRGVyIFNhbmR0aWdlciBiZWdydWVzc3QgV29vIG1pdDogSWNoIHNvbGwgRGlyIHZvbiBTaXJiIGF1c3JpY2h0ZW46IGhlcnpsaWNoZW4KZGFuayBmdWVyIGRlaW5lIGhpbGZlIG5vY2htYWxzLi52aWxsZWljaHQgc2llaHQgbWFuIHNpY2ggamEgbm9jaG1hbApXb28ga29tbXQgUmFzaWVya2xpbmdlbiBzdWNoZW5kIGhlcmVpbi4KV29vIHdpcmQgdm9uIGVpbmVtIHBsb2V0emxpY2ggYXVmdGF1Y2hlbmRlbiBEaW1lbnNpb25zcmlzcyB2ZXJzY2hsdW5nZW4sIGRlcgpzbwpXb28ga25hbGx0IGFldXNzZXJzdCB1bnNhbmZ0IGF1ZiBkZW0gQm9kZW4gZGVyIFRhdHNhY2hlbiBhdWYuCldvbyB3aXJkIHZvbiBlaW5lbSBwbG9ldHpsaWNoIGF1ZnRhdWNoZW5kZW4gRGltZW5zaW9uc3Jpc3MgdmVyc2NobHVuZ2VuLCBkZXIKc28KRnJlcmluIGVyc2NoZWludCBtaXQgZWluZW0gbGF1dGVuIEtuYWxsLgpGcmVyaW4gd2lyZnQgZXR3YXMgU2Nod2VmZWwgZW1wb3IgdW5kIGlzdCBtaXQgZWluZW0gbGF1dGVuIEtuYWxsIHdlZy4KW01vZXJkZXI6R2Vpc3QgZWluZXMgTmdob2dzXSBNYWNodCBFdWNoIGtlaW5lIE11ZWhlLCBGcmVyaW4gaGF0IG1pY2ggbWFsIGt1cnoKW01vZXJkZXI6R2Vpc3QgZWluZXMgTmdob2dzXSB6dSBHZXZhdHRlciBUb2QgZ2VzY2hpY2t0LgpMdXJjaGkgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KW01vZXJkZXI6R2Vpc3QgZWluZXMgRGFpIFdvbmcgTG9uZ3NdIERlciBGcnVlaGxpbmcgaW4gS3VuZ2hvIHd1cmRlIGxlaWRlcgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBEYWkgV29uZyBMb25nc10gYmVlbmRldCEgQWxsZXMgRGVpbmUgU2NodWxkLCBMb2xsaSEKRnJlcmluIGVyc2NoZWludCBtaXQgZWluZW0gbGF1dGVuIEtuYWxsLgpGcmVyaW4gd2lyZnQgZXR3YXMgU2Nod2VmZWwgZW1wb3IgdW5kIGlzdCBtaXQgZWluZW0gbGF1dGVuIEtuYWxsIHdlZy4KCklycnNpbm5pZyBrb21pc2NoLCBuaWNoPyBJY2ggaG9mZmUgRHUgaGFzdCBEaWNoIGJlaW0gbGVzZW4gZGllc2VzIEFydGlrZWxzIGd1dAphbXVlc2llcnQgdW5kIGhhbGIgdG9kZ2VsYWNodC4uLgoKUGFkcmVpYywgZGVuIE11ZWxsIG5pY2ggbWFsIHNlbGJzdCBnZWxlc2VuIGhhYmVuZCwgYWJlciBhdWNoIGVuZGxpY2ggbWFsCmlyZ2VuZGVpbmVuIFNjaGVpc3MgbmFjaCBzY2htYXJybiBwb3N0ZW4gd29sbGVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIGthbm4gbWFuIGVzIGF1Y2ggc2VoZW4uLi4gKFdpbSwgMTIuIE1haSAyMDAwLCAxMjozODoxOCk6CiAgTmVwb3MgTmVybyB2ZXJuaWNodGV0IERhcmt3aW5nLgpEYXJrd2luZyBmYWVsbHQgdG90IHp1IEJvZGVuLgpEYXJrd2luZyBzY2hlaW50IGVpbmVuIFNjaHdhZWNoZWFuZmFsbCB6dSBoYWJlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KCldlbm4gZGFzIGVpbiAiU2Nod2FlY2hlYW5mYWxsIiBpc3QsIG1vZWNodGUgaWNoIG5pY2h0IHdpc3Nlbiwgd2llIGVzIERhcmt3aW5nCmdlaHQsIHdlbm4gZXIgd2lya2xpY2gga3JhbmsgaXN0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVlIFNpY2hlcmhlaXRzbHVlY2tlIGltIEludGVybmV0IEV4cGxvcmVyIChNb3Jnb3RoLCAxMi4gTWFpIDIwMDAsIDE0OjIwOjQ4KToKaHR0cDovL3d3dy5oZWlzZS5kZS9uZXdzdGlja2VyL2RhdGEvcGFiLTEyLjA1LjAwLTAwMC8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3aWUgYml0dGU/IChMb2xsaSwgMTIuIE1haSAyMDAwLCAxNToyODo1OCk6Cj4gSG9uZGFtIFVudGVyZmVscyB0cml0dCBEaWNoIGluIGRlbiBIaW50ZXJuIQpIb25kYW0gVW50ZXJmZWxzIHNhZ3Q6IEhhbGxvIExvbGxpISBXZW5uIER1IGlucyBTdHJ1diBlaW50cmV0ZW4gd2lsbHN0IHVtCkhvbmRhbSBVbnRlcmZlbHMgc2FndDogc29taXQgZWluIFRydmVzIHp1IHdlcmRlbiwgc28gYmVnaWIgRGljaCBiaXR0ZSBpbiBkYXMKSG9uZGFtIFVudGVyZmVscyBzYWd0OiBCdWVybyBkZXMgS29tbWFuZGFudGVuIGdsZWljaCBoaWVyIGltIFN1ZWRlbiEKCmdlbmF1IHNvIGhhYiBpY2ggbWlyIGRhcyBhbndlcmJlbiBiZWkgZGVuIGthZW1wZmVybiB2b3JnZXN0ZWxsdC4uLi4gdHMKd28gdWViZXJyZWR1bmcgbmljaHQgaGlsZnQsIHdpcmQgbWFuIGluIGRpZSBnaWxkZSByZWluZ2VwcnVlZ2VsdC4KCkxPTExJLCBkaWVzZSBmZWluZSBBcnQgbmljaHQgZ3V0aGVpc3NlbiBrb2VubmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhcnRpa2VsIE1hZW5uZXIgKE5ldm9rLCAxMi4gTWFpIDIwMDAsIDE1OjMxOjQ4KToKfiMhIHJuPVBhZHJlaWMgcnQ9OTU4MTI0MTgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU4MDcwMzk1ClVuZCBkYSBkYWNodGUgaWNoIGRlciBsZXR6dGUgTXVlbGwgd2FlcmUgZGFzIExpY2h0c3lzdGVtIGdld2VzZW4uLi4uLi53aWUgbWFuCnNpY2ggaXJyZW4ga2FubgoKTmFqYSwgaW4gYmV3YWVocnRlciBGb3JtIGViZW4KCk5ldm9rIGVyd2FydGV0IG5peCBhbmRlcmVzIHZvbiBlaW5lbSBXZWlzZW4gZGllc2VuIEthbGliZXJzLCBuYWNoZGVtIG51biBuaWNoCm1hbCBtZWhyIE1hZ2llciB1bnRlciBXZWlzZSBkaWUgTG9nZSBiZW51dHplbiBrb2VubmVuLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKenUgZnJ1ZWg6KSAoU2t5LCAxMi4gTWFpIDIwMDAsIDIzOjE4OjE4KToKRHUgemllaHN0IGRhcyBQYWFyIE9ocmVuc2NodWV0emVyIGF1cy4KQ2h1Y2t5bGVpbiBydWZ0OiBpY2ggbXVzcyBqZXR6dCBnZWhuIG11c3Mgbm9jaCBmbGlydGVuIGN5YSBsbCAgIAoKK3VuZ2VzY2huaXR0ZW4rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppc3QgbWVpbiBuZXVlcyBHZWJpZXQgbmljaHQgZ3V0IGdlbnVnPz8gKFRzdW5hbWksIDEzLiBNYWkgMjAwMCwgMDA6MzM6NTkpOgpmYXN0IHVuZ2VzY2huaXR0ZW46ClNreSB0ZWlsdCBEaXIgbWl0OiBhYmVyIHNvbyB2aWVsZSB3aWUgZGEgaGV1dCBzY2hvbiBnZXN0b3JiZW4gc2luZC4uOikgZGEgbXVzClNreSB0ZWlsdCBEaXIgbWl0OiBzaWNoIG5pY2h0IHNvIHNjaG5lbGwgaGluICAgCltUb2Q6TGFyc10gQXNhbmllbHMgV2Fzc2VyLUVsZW1lbnRhciBoYXQgZ2VyYWRlIFNreSB1bWdlYnJhY2h0LiA8MDA6MzE6NTE+CltUb2Q6QXNhbmllbHMgV2Fzc2VyLUVsZW1lbnRhciAtIGRlciBtaXQgZGVtICpCTFVCQiouIDwwMDozMTo1MT5dICAgICAgICAgICAgIAogCmphamEsIGFiZXIgaW4gYW5kZXJlbiBHZWJpZXRlbiBzdGVyYmVuIGlzdCBvay4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NoYWNodCwgaW1tZXIgbmV0dCAoVGhhbm9zLCAxMy4gTWFpIDIwMDAsIDAxOjE5OjA2KToKClNjaHJlaW5lbWFrZXJzIGlocmUgU2Nod2VzdGVyIGZhZWxsdCB0b3QgenUgQm9kZW4uClNjaHJlaW5lbWFrZXJzIGlocmUgU2Nod2VzdGVyIGZhZWxsdCBrdXJ6IHZvcm0gVG9kIGRhcwpTY2h3ZXJ0bWVpc3RlcnNjaHdlcnQgYXVzIGRlciBIYW5kIHVuZCBlaW5lbiBSYXVtIHRpZWZlci4KU2NocmVpbmVtYWtlcnMgaWhyZSBTY2h3ZXN0ZXIgZmFlbGx0IGt1cnogdm9ybSBUb2QgZGFzClNjaHdlcnRtZWlzdGVyc2Nod2VydCBhdXMgZGVyIEhhbmQgdW5kIGVpbmVuIFJhdW0gdGllZmVyLgpTY2hyZWluZW1ha2VycyBpaHJlIFNjaHdlc3RlciBmYWVsbHQga3VyeiB2b3JtIFRvZCBkYXMKU2Nod2VydG1laXN0ZXJzY2h3ZXJ0IGF1cyBkZXIgSGFuZCB1bmQgZWluZW4gUmF1bSB0aWVmZXIuClNjaHJlaW5lbWFrZXJzIGlocmUgU2Nod2VzdGVyIGZhZWxsdCBrdXJ6IHZvcm0gVG9kIGRhcwpTY2h3ZXJ0bWVpc3RlcnNjaHdlcnQgYXVzIGRlciBIYW5kIHVuZCBlaW5lbiBSYXVtIHRpZWZlci4KbGFjaGUKRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgoKdWViZXJkZW5rZW4gPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa28gKFRoYW5vcywgMTMuIE1haSAyMDAwLCAwNjowNjoyMSk6CkR1IHN0ZWhzdCBkaXJla3Qgdm9yIERmZW5kZXJzIEthdHpla2xvLiBFcyBpc3QgZWluZSBlaW5mYWNoZSBCZWhhdXN1bmcgZnVlcgpGZWxpbmVuLCBhdXMgZWluZW0gc2NobGljaHRlbiBoZWxsYmxhdWVuIE1hdGVyaWFsLCBkYXMgRGlyIG5pY2h0IGJla2FubnQgaXN0LgpEdSBrYW5uc3QgZXMgZ2VybmUgYmV0cmV0ZW4sIGFiZXIgYnJpbmcgYml0dGUgbmljaHRzIGR1cmNoZWluYW5kZXIuIERpZSBTdHJldQppc3QgZXJzdCBrdWVyemxpY2ggZXJuZXVlcnQgd29yZGVuLCB1bmQgZGllIFRhcGV0ZW4gd3VyZGVuIGdlcmFkZSBnZXN0ZXJuCm1vcmdlbiBmcmlzY2ggZ2VrbGVidC4KRWluZSBlaW5mYWNoZSBHaXR0ZXJ0dWVyIGF1cyBCYW1idXMgKGFiZ2VzY2hsb3NzZW4pLgo+IER1IGhvZXJzdCBlaW5lbiBTY2hyZWkgZGVzIEVudHNldHplbnMgYXVzIGRlbSBEc2NodW5nZWwuIERpciBsYWV1ZnQgZWluZQpHYWVuc2VoYXV0IHVlYmVyIGRlbiBSdWVja2VuLgoKbWFuLCBzb3dhcyB6aWVodCBkb2NoIGplZGVuIGZlbGluZW4gcnVudGVyIDopClRoYW5vcyBrYW5uIGJlaSBzb3dhcyBudXIgbm9jaCBzdG9laG5lbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV0FISEhISEggKE1lc2lyaWksIDEzLiBNYWkgMjAwMCwgMTQ6MzA6MTEpOgpEdSBmcmFnc3QgRGljaCwgd2llIFVucy1Vd2UgenUgZGllc2VtIG1lcmt3dWVyZGlnZW4gTmFtZW4ga2FtIHVuZCB3YXJ1bSBlcgpoaWVyIGluIGRlciBDaGFvc2Zlc3R1bmcgRmFuYXJ0aWtlbCB2ZXJrYXVmdC4uLiBhYmVyIGRhcyB3aXJkIGVyIERpcgpzaWNoZXJsaWNoIHNlbGJzdCBnZXJuZSBlcnphZWhsZW4uCkVyIGJyYXVjaHQgZHJpbmdlbmQgZWluZW4gQXJ6dC4KRXIgdHJhZWd0IGJlaSBzaWNoOgpFaW5lIGNoYW90aXNjaCBtdXRpZXJ0ZSBIYXV0LgpFaW5lIHZvbGxlIERvc2UgSGFuc2EuCkVpbiByb2V0bGljaGVyIEdyYW5pdHJpbmcgKGFuZ2V6b2dlbikuCkVpbiBwYWFyIEhvYmJpdGZlbGxzdGllZmVsIChhbmdlem9nZW4pLgpFaW4gRGFlbW9uZW5za2xhdmUuCnphdWJlciBjaGFvc2JhbGwgJW1vbnN0ZXIKTFA6IDIyNSAoMCkgTVA6IDE1MiAoLTUpCiAgRHUgLi4uLi5DaGFvcy9HaWZ0K1NjaGxhZy4gU2NobWV0dGVybiAtPiBVbnMtVXdlLi4uLi4uICpVc3V1KioqCkxQOiAyMjUgKDApIE1QOiAxMzcgKC0xNSkKQW5ncmVpZmVyOiBEdSBPcGZlcjogVHV0c3p0CiAgRHUgLi4uLm5vcm1hbC9TdHJlaXRrb2xiZW4gS3JhY2hlbiAtPiBUdXRzenQuLi4uLi4uICoqKioqKioqCiAgVHV0c3p0IC4uLi5ub3JtYWwvUmVpcy51LktyYWxsIHZlcmZlaGx0IDwtIERpY2guLi4uLi4uLi4gKioqKioqKioKVW5zLVV3ZSBmdWNodGVsdCB3aWUgYmVzY2hldWVydCBtaXQgZWluZXIgSGFuZCBoZXJ1bS4gSGF0IGVyIGVpbmVuIFNjaGFkZW4/IApBbmdyZWlmZXI6IFVuc19Vd2UgT3BmZXI6IERpY2gKVW5zLVV3ZSB2ZXJzdGF1Y2h0IHNpY2ggYmVpIGRlbSBTY2hsYWcgZGllIEhhbmQuCiAgVW5zLVV3ZSAuLi4uS2FyYXRlL1lnay4uKCspLi4uLiBnZWtyYXR6dCA8LSBEaWNoLi4uLi4uLi4uICoqKioqKioqCkxQOiAyMjIgKC0zKSBNUDogMTM3ICgwKQpWb24gTWFuZ286IGFsc28gdGllZmVyIGxlZ2VuIGdlaHQgbmljaHQgOikKemF1YmVyIGNoYW9zYmFsbCAlbW9uc3RlcgpMUDogMjIyICgwKSBNUDogMTMyICgtNSkKICBEdSAuLi4uLkNoYW9zL0dpZnQrU2NobGFnLiB6dSBCcmVpIC0+IFVucy1Vd2UuLi4uLi4gKktqdSoqKioKVW5zLVV3ZSB2ZXJuaWNodGV0IERpY2guClR1dHN6dCBpc3QgamV0enQgaGludGVyIERpciBoZXIuCltUb2Q6TGFyc10gRGFzIENoYW9zIGhhdCBnZXNpZWd0ISBEYXMgdmVyd3VuZGVydCBtaWNoIGlyZ2VuZHdpZSBhYmVyIG5pY2h0LgpbVG9kOkxhcnNdIERlbm4gZGFzIENoYW9zIG1vcmRldCwgdG9ldGV0IHVuZCBkaWVzIGhlbW11bmdzbG9zLiBVbnMtVXdlIGlzdCBlaW4KW1RvZDpMYXJzXSB3YWhyZXIgSGVsZCwgZWluIENoYW90LCB3aWUgZXIgaW0gQnVjaGUgc3RlaHQsIGRlbm4gVW5zLVV3ZSBoYXQKW1RvZDpMYXJzXSBnZXJhZGUgTWVzaXJpaSB1bWdlYnJhY2h0LgpbTW9lcmRlcjpHZWlzdCBVbnMtVXdlc10gVG9sbCEgR0VOQVUgZGFzIGhhYiBpY2ggamV0enQgZ2VicmF1Y2h0ISBTdXBlciwKW01vZXJkZXI6R2Vpc3QgVW5zLVV3ZXNdIE1lc2lyaWkhIDooCgpNZXNpLCB0b3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFyZ2wgKE1lc2lyaWksIDEzLiBNYWkgMjAwMCwgMTQ6MzM6MzEpOgpEQSBiaW4gaWNoIHdvaGwgYXVmbiBGYWtlIHJlaW5nZWZhbGxlbiA6KSkKTWVzaSwgZG9jaCBuaWNodCB0b3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRpbWluZyBpc3QgYWxsZXMgKE5ldm9rLCAxMy4gTWFpIDIwMDAsIDE5OjM5OjMwKToKTXV0YW50dXMgZGVyIGVpbmZhY2hlIFNvbGRhdCAobmV0enRvdCkuCmJpbmRlIG11dGFudHVzIHNjaGxlaWZlIGlucyBoYWFyCkR1IGJpbmRlc3QgTXV0YW50dXMgZWluIHBpbmtmYXJiZW5lcyBTY2hsZWlmY2hlbiBpbnMgSGFhci4KTXV0YW50dXMgZmxpZWd0IGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgoKSEEhIDspCgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogIFNlaGVyYW5mb3JkZXJ1bmdlbiAoTmV2b2ssIDEzLiBNYWkgMjAwMCwgMjM6MjE6MTEpOgp+IyEgcm49TW9udGFudXMgcnQ9OTU4MjUyNzgzIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTU3MzEwNjgxCldpZSB3YXMgRlAgTGlzdGVuPyBVbmQgd28gZmluZCBpY2ggZGllIHNjaG9uIHdpZWRlcj8gQWxzbyBuZS4uLi4uLi4KCk5ldm9rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW0gVG9ldGVyPT1mYXVsPz8gKE1lc2lyaWksIDEzLiBNYWkgMjAwMCwgMjM6NDk6MDMpOgpiZWltIFNjaG5pdHplciAoVEkpOgpyaWVjaGUKRXMgc3Rpbmt0IGhpZXIgbmFjaCBlaW5lbSBmYXVsZW4gTWFnaWVyLCBkZXIga2VpbmUgUmllY2htb2VnbGljaGtlaXRlbgppbXBsZW1lbnRpZXJ0IGhhdC4KTWVzaSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHJvbGxpID0gQmVhdXR5PyAoTWFnaWN0dXgsIDE0LiBNYWkgMjAwMCwgMjA6MzU6MzkpOgpEcm9sbGkgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkJlYXV0eSBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgQmVhdXR5LgoKTWFnaWN0dXgsIHNpY2ggd3VuZGVybmQgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV0FISEhISEggKEhpZ2h0LCAxNC4gTWFpIDIwMDAsIDIzOjM1OjQ2KToKfiMhIHJuPU1lc2lyaWkgcnQ9OTU4MjIxMDExIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU4MjIxMDExCmhtIG51ciBicmVpID8gdW5zIHV3ZSB3YXIgZGVyIGVyc3RlIGthcmF0ZWthIGRlbiBpY2ggamUgZ2VzZWhlbiBoYWIgZGVyIG1pY2gKYmVpbSB2ZXJyZWMga2VuIGF0b21pc2llcnQgaGF0IAoKaGlnaHQgdXdlIGltbWVybm9jaCBsdXN0aWcgZmluZGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHp1IGZydWVoOikgKENodWNreSwgMTUuIE1haSAyMDAwLCAwMzoyMjo0Mik6Cn4jISBybj1Ta3kgcnQ9OTU4MTY2Mjk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU4MTY2Mjk4CmljaCBzY2h3ZWlnIGRhenUuLi47KQpkZXIgY2h1Y2t5LCBkZXIgd28gKCEhISkgZWhlciBkYSB3YXIhOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogenUgZnJ1ZWg6KSAoSG9ibywgMTUuIE1haSAyMDAwLCAwODozOTo1Nik6Cn4jISBybj1DaHVja3kgcnQ9OTU4MzUzNzYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU4MTY2Mjk4Ck1vb29vbWVudCBtYWw6CkRlciBlaW56aWcgd2FocmUgQ2h1Y2sqIGlzdCBpbW1lciBub2NoIExlY2h1Y2sgLSB1bmQgZXIgd2FyIHNjaGxpZXNzbGljaCBhdWNoCmRlciBlcnN0ZSEKCiAgSW4gbWVtb3JpYW0gZWluZXMgTXVkZGVycwogICAgICAgICAgSG9ibwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogenUgZnJ1ZWg6KSAoQW5hdG9sLCAxNS4gTWFpIDIwMDAsIDEwOjQ4OjUxKToKfiMhIHJuPUhvYm8gcnQ9OTU4MzcyNzk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU4MTY2Mjk4CjEwMDEgVGFnZSBuaWNodCBtZWhyIGVpbmdlbG9nZ3QuLi4gTGVjaHVjayBpc3QgZG9jaCBiZXN0aW1tdApudXIgZWluIE1hZXJjaGVuIGF1cyBlYmVuc292aWVsIE5hZWNodGVuIDtvKQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogenUgZnJ1ZWg6KSAoVHJ1ZywgMTUuIE1haSAyMDAwLCAxNTo1NToxMSk6Cn4jISBybj1Ib2JvIHJ0PTk1ODM3Mjc5NiByZz1zY2htYXJybgp+IyEgdGlkPTk1ODE2NjI5OAo+IGZpbmdlciBsZWNodWNrCkxlY2h1Y2sgaXN0IG5pY2h0IGFud2VzZW5kLgpadWxldHp0IGVpbmdlbG9nZ3Qgdm9uOiBEZXV0c2NobGFuZApadWxldHp0IGF1c2dlbG9nZ3Q6IFNvbiwgMTcuIEF1ZyAxOTk3LCAyMToxMjo0NiAoMTAwMWQgMTg6NDE6NDMpClZvbGxlciBOYW1lOiBMZWNodWNrClJhc3NlOiBFbGYsICBHaWxkZTogS2FyYXRlLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiA2MmQgMDM6MzM6NTIsICAgU3BpZWxlcmxldmVsOiA1OSAoU2VoZXIpLCAgIEdpbGRlbmxldmVsOiAxNwpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiB2b3IgZGVtIDEwLiBOb3YgMTk5NQpMZWNodWNrIGlzdCBad2VpdHNwaWVsZXIuCkJpc2hlciBiZXJlaXRzIDMwIG1hbCBnZXN0b3JiZW4KCkhtbSAxMDAxZCAuLi4gZWluZSBuZXR0ZSBaYWhsLiAKClNjaGFkZSBkYXNzIGVyIFp3ZWl0aWUgaXMuCgp0cnVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGVyIG5hZWNoc3RlIGhlaXNzdDogIkhlaiBBbHRlciEiIChDYXR3ZWF6bGUsIDE1LiBNYWkgMjAwMCwgMTY6Mzg6NDkpOgp+IyEgb249Q2F0d2VhemxlIG90PTk1ODQwMTUyMyBvZz1hbGxnZW1laW5lcwp+IyEgcm49Um9uZGEgcnQ9OTU4MDcyMDg3IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTU4MDcyMDg3CkljaCB3YWVyIGphIGZ1ZXIgIkhvZW1tYSBJc2NoZSEiLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWaXJ1c3dhcm51bmchIChSb25kYSwgMTUuIE1haSAyMDAwLCAxODoxNjo0Nyk6CkVzIGt1cnNpZXJ0IGVpbiBuZXVlciBWaXJ1cyBuYW1lbnMgIkFyYmVpdCIhIFdlbm4gU2llIGlyZ2VuZHdpZSAiQXJiZWl0IgpiZWtvbW1lbiwgZW50d2VkZXIgYWxzIGVNYWlsLCBpbSBJbnRlcm5ldCBvZGVyIGF1Y2ggZWluZmFjaCBudXIgZHVyY2gKZWluZW4gS29sbGVnZW4gLi4uIE5JQ0hUIEFOTkVITUVOISBEaWVzZSBCZWRyb2h1bmcgc2NobGVpY2h0IGpldHp0IHNjaG9uCnNlaXQgV29jaGVuIHVtIGRpZSBGaXJtYSB1bmQgYWxsZSwgZGllIGlociBlcmxlZ2VuIHNpbmQgdW5kICJBcmJlaXQiCmFuZ2Vub21tZW4gaGFiZW4gd2VyZGVuIGZlc3RzdGVsbGVuLCBkYXNzIGlociBTb3ppYWxsZWJlbiBnZWxzY2h0IHd1cmRlCnVuZCBpaHIgSGlybiBhdWZocnRlIHJpY2h0aWcgenUgZnVua3Rpb25pZXJlbi4gV2VubiBTaWUgIkFyYmVpdCIgaW4gZGVyCmVNYWlsIGVudGRlY2tlbiBvZGVyIGVpbmZhY2ggbnVyIG1pdCBpcmdlbmR3ZWxjaGVyICJBcmJlaXQiIGtvbmZyb250aWVydAp3ZXJkZW4sIHNvIHNlbmRlbiBTaWUgc29mb3J0IC0gdW0gZGVuIFZpcnVzIHp1IGJla21wZmVuIC0gZWluZSBlTWFpbCBhbgpJaHJlbiBDaGVmIChvZGVyIGltIE5vdGZhbGwgLSB3ZW5uIFNpZSBzZWxic3QgZGVyIEJvc3Mgc2luZCAtIGFuIElocmUKRnJhdS9JaHJlbiBNYW5uKSBtaXQgZGVtIFRleHQgIkljaCBoYWJlIGRpZSBTY2huYXV6ZSB2b2xsIC0gaWNoIGJpbiBmb3J0CmluIGRpZSBLbmVpcGUhIiBJaHIgSGlybiBzb2xsdGUgIkFyYmVpdCIgYXV0b21hdGlzY2ggdmVyZ2Vzc2VuLiBXZW5uIFNpZQoiQXJiZWl0IiBpbiBQYXBpZXJmb3JtIGVtcGZhbmdlbiwgc28gaGViZW4gU2llIGRhcyBEb2t1bWVudCBsZWljaHQgYW4KdW5kIGJlZnJkZXJuIGRpZSAiQXJiZWl0IiBpbiBJaHJlbiBQYXBpZXJrb3JiIChNYWMtVXNlcjogVHJhc2hjYW4pLApuZWhtZW4gU2llIElocmVuIEh1dCwgTWFudGVsLCB6d2VpIEZyZXVuZGUgdW5kIGdlaGVuLiBOYWNoZGVtIFNpZSBkaWVzZQpQcm96ZWR1ciBuZXVuIG1hbCB3aWVkZXJob2x0IGhhYmVuLCB3ZXJkZW4gU2llIGZlc3RzdGVsbGVuLCBkYXNzIEFyYmVpdCIKZnIgU2llIG5pY2h0IG1laHIgcmVsZXZhbnQgaXN0LiBTZW5kZW4gU2llIGRpZXNlIE5hY2hyaWNodCBhbiBqZWRlbiBpbgpJaHJlbSBBZHJlc3NidWNoLiBXZW5uIFNpZSBOSUVNQU5ERU4gbWVociBpbiBJaHJlbSBBZHJlc3NidWNoIGhhYmVuLApkYW5uIGJlZnJjaHRlbiB3aXIgc2VociwgZGFzcyBkZXIgIkFyYmVpdCItVmlydXMgSWhyIExlYmVuIGJlcmVpdHMKYmVmYWxsZW4gdW5kIFNpZSBnZWxzY2h0IGhhdC4gU2VpZW4gU2llIGFsc28gYml0dGUgdm9yc2ljaHRpZyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxpZWJlIE1pdGFyYmVpdGVyLi4uIChBcG9waGlzLCAxNS4gTWFpIDIwMDAsIDIyOjA4OjM5KToKCkxpZWJlIE1pdGFyYmVpdGVyLAoKc2VpdCBBbmZhbmcgZGVzIE1vbmF0cyBoYXQgZWluIG5ldWVyIEtvbGxlZ2UgZGllIEFyYmVpdCBpbiB1bnNlcmVyIERWCmF1Zmdlbm9tbWVuLgpIZXJyIE1haGF0bWEgRmFodGFsIEVycm9yLCBlaW4gQ29tcHV0ZXJzcGV6aWFsaXN0IGF1cyBJbmRpZW4gaGF0IHNlaW5lCkFyYmVpdCBiZXJlaXRzIGVyZm9sZ3JlaWNoIGF1Zmdlbm9tbWVuLiBIaWVybWl0IHNldHplbiB3aXIgU2llIHVlYmVyCk5ldWVydW5nZW4gaW4gS2VubnRuaXMgOgpOZXVlIFJlY2huZXIgd2VyZGVuIGt1ZW5mdGlnIG1pdCBkZW0gTGFiZWwgIkluZGVyIEluc2lkZSIgdmVyc2VoZW4gdW5kCm1pdCBkZW0gQmV0cmllYnNzeXN0ZW0gIkhpbmR1cyAyMDAwIiBhdXNnZWxpZWZlcnQsIGJlaSBkZW0gYW5zdGVsbGUgZWluZXIKU2FuZHVociBlaW4gYW5pbWllcnRlciBHdXJ1IGVyc2NoZWluZW4gd2lyZC4KRGllIG5ldWVuIFJlY2huZXIgd2VyZGVuIG1pdCBkZW0gdm9uIEhlcnJuIEVycm9yIGVudHdpY2tlbHRlbgpNb3RoZXItVGhlcmVzYS1Cb2FyZCBhdXNnZXJ1ZXN0ZXQuIERlc3dlaXRlcmVuIHdpcmQgYXVmIGFsbGVuIFJlY2huZXJuCmRhcyBiaXNoZXIgZ2VudXR6dGUgT2ZmaWNlLVBha2V0IGR1cmNoICJLYXN0ZSA5OCIgZXJzZXR6dC4gSW4gZGllc2VtIFp1Z2UKbW9lY2h0ZW4gd2lyIHNpZSBiaXR0ZW4sIElocmUgVGFzdGF0dXIgZ2VnZW4gZWluZSBvaG5lICJRIiB6dSB0YXVzY2hlbiwKZGEgIlEiIGluIEluZGllbiBhbHMgaGVpbGlnIGdpbHQgdW5kIGluIGRlciBuZXVlbiBTb2Z0d2FyZWxhbmRzY2hhZnQKZ3JvZXNzdGVudGVpbHMgdW5lcmtsYWVybGljaCBpbnRlcnByZXRpZXJ0IHdpcmQuCkRlciBiaXNoZXJpZ2UgTVMgUGFwaWVya29yYiB3aXJkIGR1cmNoIE5pcndhbmEgZXJzZXR6dCwgZGVyIFRhc2sKTWFuYWdlciBkdXJjaCBNYWhhcmFkc2NoYSB1bmQgZGVyIERlc2t0b3AgZHVyY2ggVGFqIE1haGFsIGFiZ2Vsb2VzdC4KQmVpbSB1ZWJlcnBydWVmZW4gSWhyZXIgRmVzdHBsYXR0ZSB3ZXJkZW4gU2llIGZlc3RzdGVsbGVuLCBkYXNzIGRhcwpQYXVzZW5wcm9ncmFtbSAiTW9vcmh1aG5qYWdkIiBnZWxvZXNjaHQgdW5kIGR1cmNoICJGbHlpbmcgQ3VycnktQ2hpY2tlbiIKZXJzZXR6dCB3dXJkZS4KRnVlciBkZW4gR2FuZyBpbnMgSW5kZXJuZXQgdmVyemljaHRlbiB3aXIgenVrdWVuZnRpZyBhdWYgRXhwbG9yZXIgdW5kCk5ldHNjYXBlIHVuZCB3ZXJkZW4gSGltYWxheWEgMy43IGluc3RhbGxpZXJlbiwgZGFzIHp1c2FldHpsaWNoIG1pdAplaW5pZ2VuIGluZGVyYWt0aXZlbiBBbndlbmR1bmdlbiwgd2llIEthbWFzdXRyYSA0LjgsIGF1c2dlcnVlc3RldCBpc3QuIEJlaW0Kb2VmZm5lbiBkaWVzZXIgUHJvZ3JhbW1lIGVyc2NoZWludCBlaW4gUHVua3QgYXVmIGRlciBTdGlybiBJaHJlcyBQQy4KSW0gTGF1ZmUgZGVyIG5hZWNoc3RlbiBNb25hdGUgd2VyZGVuIHdpciBkaWUgT3JhY2xlLURhdGVuYmFuayBkdXJjaApFaW5lIERlbGhpLURhdGVuYmFuayBlcnNldHplbi4KRm9sZ2VuZGUgU29mdHdhcmUgd2lyZCBuZXUgaW5zdGFsbGllcnQgOgpHcmFmaWtwcm9ncmFtbSBCcmFobWFuZSAyLjAsIEthbGVuZGVyLVRvb2wgS3Jpc2huYSAxLjEsIFdvZXJ0ZXJidWNoClNoaXZhIDcuMyB1bmQgRS1NYWlsLVRvb2wgQXRtYW4gMy4xIC4KV2VpdGVyIG1vZWNodGVuIHdpciBTaWUgZGF2b24gaW4gS2VubnRuaXMgc2V0emVuLCBkYXNzIGRlciBCZWdyaWZmCiJXb3JrZmxvdyIgbmljaHQgbWVociB6dWxhZXNzaWcgaXN0IHVuZCBkdXJjaCBkZW4gQmVncmlmZiAiR2FuZ2VzIgplcnNldHp0IHdpcmQuCgpJaHJlIERWCgpBcG9waGlzICp3YWVseioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZCBzb3dhcyBpc3QgRXJ6aWUuLi4gKERlbW9uYXosIDE1LiBNYWkgMjAwMCwgMjM6MTE6MzIpOgoKT3dlaWFoOgoKWm9vayB0ZWlsdCBEaXIgbWl0OiBzbyBvZnQgYmlzdCBkdSBuaWNodCBkYS4uLiBoYWIgbWljaCBhYmVyIGJlaSAiaGkgZGVtb25heiIKWm9vayB0ZWlsdCBEaXIgbWl0OiBkcmVpbWFsIHZlcnRpcHB0IDspClpvb2sgdGVpbHQgRGlyIG1pdDogdmllcm1hbC4KClNvc29zby4uLgpad2VpdGllIHZvbiBJSE0uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgaXN0IGphIHdvaGwuLi4gKEhhcmFraXJpLCAxNi4gTWFpIDIwMDAsIDAwOjQyOjI4KToKW2F1cyBkZXIgVG9kZXNzZXF1ZW56IDkwMV0KCkxhcnMgZXJzY2hlaW50IG5lYmVuIGRlbSBUb2QgdW5kIGhhZWx0IGlobSBlaW5lIGxhbmdlIExpc3RlIGhpbi4KTGFycyBzYWd0OiAnQmVlaWxlIERpY2gsIGRpZSBnYW56ZW4gTGV1dGUgaGllciBtdWVzc2VuIHdpciBoZXV0ZQphbGxlIG5vY2ggYWJhcmJlaXRlbi4nIERlciBUb2Qgd2lyZCBsZWljaGVuYmxhc3MuCkRlciBUb2Qgc3RvZWhudCBhdWY6IFdJRSBTT0xMRU4gV0lSIERBUyBOVVIgU0NIQUZGRU4gPwoKCkRlciBUb2Qgc2FndDogSUNIIEhBQidTICEgV0lSIEhBQkVOIERPQ0ggR1VURSBGUkVVTkRFIFVOVEVSIERFTgpTUElFTEVSTi4gRElFIE1VRVNTRU4gVU5TIEhFTEZFTi4gV0VSIFdBUiBERU5OIElOIExFVFpURVIgWkVJVApCRVNPTkRFUlMgSEFFVUZJRyBISUVSIFpVIEdBU1QgPwoKTGFycyBtZWludDogS2V5IG5hdHVlcmxpY2guIFVuZCBBbHBoYS4gVW5kIEplaG92YSBhdWNoIC4uLgoKCi4uLgpVbnZlcnNjaGFlbXRoZWl0IQoKSGFyYWtpcmksIHF1YXNpIFN0YW1tZ2FzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhcyBpc3QgamEgd29obC4uLiAoQXBzdSwgMTYuIE1haSAyMDAwLCAwMjo1ODoyNik6Cn4jISBybj1IYXJha2lyaSBydD05NTg0MzA1NDggcmc9c2NobWFycm4KfiMhIHRpZD05NTg0MzA1NDgKSmVob3ZhIG1pdCAxNDEgVG9kZW4/IGxhZWNoZXJsaWNoIQoKQXBzdSwgVG9kIHNvIGxlY2tlciBnZXJpYXRyaXNjaGUgTWl0dGVsY2hlbiB3aWUgVGhhaS1HaW5zZW5nIHVuZApWaXRhLUJ1ZXJsZWNpdGhpbiBlbXBmZWhsZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERhcyBpc3QgamEgd29obC4uLiAoQXBzdSwgMTYuIE1haSAyMDAwLCAwMzowMDoyMCk6Cn4jISBybj1BcHN1IHJ0PTk1ODQzODcwNiByZz1zY2htYXJybgp+IyEgdGlkPTk1ODQzMDU0OApvZWhlbW0sIExhcnMgbmF0dWVybGljaCA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRldXRzY2hlcyBTcHJhY2hlLCBzY2h3ZXJlcyBTcHJhY2hlIChDYXR3ZWF6bGUsIDE2LiBNYWkgMjAwMCwgMTU6MDI6NTQpOgpBbGxnZW1laW4tY3V0b3V0OgotLS0tLQpbQWxsZ2VtZWluOk5vbm5lXSB6d2Vja3MgZXJsZXJuZW4gLi4uIHNjaHJlaWJ0IG1hbiBkYSBlcmxlcm5lbiBncm9zcyBvZGVyCltBbGxnZW1laW46Tm9ubmVdIGtsZWluPwpbQWxsZ2VtZWluOlJpa3VzXSBncm9zcwpbQWxsZ2VtZWluOk5vbm5lXSBkYW5rZQpbQWxsZ2VtZWluOkNhdHdlYXpsZV0ga2xlaW4/CltBbGxnZW1laW46Q2F0d2VhemxlXSBuYWNoIGRlciBuZXVlbiBhdWNoIGdyb3NzPwpbQWxsZ2VtZWluOkNhdHdlYXpsZSBzY2hhdXQgUmlrdXMgZnJhZ2VuZCBhbi5dCltBbGxnZW1laW46UmlrdXMgbXVzdGVydCBDYXR0eV0KW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIFdpcmQgU3Vic3RhbnRpdmllcnVuZyBhdWNoIGluIG5hY2ggZGVyIG5ldWVuCltBbGxnZW1laW46Q2F0d2VhemxlXSBSZWNodHNjaHJlaWJ1bmcgZ3Jvc3MgZ2VzY2hydWllYmVuPyBJY2ggbWVpbmUgbWljaApbQWxsZ2VtZWluOkNhdHdlYXpsZV0gZXJpbm5lcm4genUga29lbm5lbiwgZGFzIHNpY2ggZGEgaXJnZW5kd2FzIGdlYWVuZGV0IGhhdApbQWxsZ2VtZWluOkNhdHdlYXpsZV0gLi4uCltBbGxnZW1laW46RHJvbGxpXSBqYSB3aXJkIG5vY2gKW0FsbGdlbWVpbjpGb29iYXJdIEFsc28gIlN1YnN0YW50aXZpZXJ1bmciIHdpcmQgZ3Jvc3MgZ2VzY2hyaWViZW4uCltBbGxnZW1laW46RHJvbGxpIGdyaW5zdCBGb29iYXIgYW4uXQpbQWxsZ2VtZWluOkNhdHdlYXpsZV0gU3Vic3RhbnRpdmllcnVuZyBpc3Qga2VpbmUgU1Vic3RhbnRpdmllcnVuZyA6KQpbQWxsZ2VtZWluOlJpa3VzXSBlZ2FsLCBpY2ggbnV0eiBkaWUgYWx0ZW4gcmVnZWxuCltBbGxnZW1laW46Rm9vYmFyIGtyYXR6dCBzaWNoIGFtIEtvcHAuXQpbQWxsZ2VtZWluOkNhdHdlYXpsZV0gSG0sICdEYXMgR3Jvc3NzY2hyZWliZW4gYmVpIGRlciBTdWJzdGFudGl2aWVydW5nJywgd2lyZApbQWxsZ2VtZWluOkNhdHdlYXpsZV0gR3Jvc3NzY2hyZWliZW4genVzYW1tZW4gZ2VzY2hyaWViZW4gb2RlciBnZXRyZW5udD8KW0FsbGdlbWVpbjpDYXR3ZWF6bGUgZ3Jpc3QgZmllcy5dCltBbGxnZW1laW46Rm9vYmFyXSAiRGFzIGdyb3NzIFNjaHJlaWJlbi4uLiIKW0FsbGdlbWVpbjpBbmF0b2xdIERhcyBHcm9zc3NjaHJlaWJlbi4KW0FsbGdlbWVpbjpBdG96XSBoaWxmZSB3byBiaW4gaWNoIGhpZXI/CltBbGxnZW1laW46R2F0b10gTWl0IHN6IHVuZCB6dXNhbW1lbiBuYXR1ZXJsaWNoIDopCltBbGxnZW1laW46Um9jaHVzXSB6dXNhbW1lbiBnbGF1YmUgaWNoLCBhYmVyIGVzIGlzdCBzY2hsZWNodGVzIGRldXRzY2gKW0FsbGdlbWVpbjpBbmF0b2xdIFdvcnRrb21wb3NpdGEgc2luZCBlaW5lIHNlaHIgdW5zY2hvZW5lIGRldXRzY2hlIE1vZGUuCltBbGxnZW1laW46RHJvbGxpXSBzY2hyZWlidCBtYW4gV2Fpa2lraSBncm9zcyBvZGVyIGtsZWluPyA6KQpbQWxsZ2VtZWluOkNhdHdlYXpsZV0gb2NoLCBnZWh0IDopCltBbGxnZW1laW46VGhvcmFrXSBhdXNzZXJkZW0gbXVlc3N0ZSBlcyBkb2NoIGRpZSBHcm9zc3NjaHJlaWJ1bmcgc2VpbiBvZGVyPwpbQWxsZ2VtZWluOkZvb2Jhcl0gQW0gZXJncmVpZmVuZHN0ZW4gZmluZGUgaWNoIGRpZSBVbnRlcnNjaGVpZHVuZyBiZWkKW0FsbGdlbWVpbjpGb29iYXJdICJXb2VydGVyIiB1bmQgIldvcnRlIi4KW0FsbGdlbWVpbjpDYXR3ZWF6bGVdIE5lbmUsICdEaWUgR3Jvc3NzY2hyZWlidW5nJyB3YWVyZSBqYSBuaWNodCBtZW5yCltBbGxnZW1laW46Q2F0d2VhemxlXSBzdWJzdGFudGl2aWVydCA7LSkKW0FsbGdlbWVpbjpBbmF0b2xdIEtvaGxlbnN0YXViemVudHJpZnVnYWxmZXVlcnVuZ3NhbmxhZ2UuLi4gU293YXMga29tbXQgbnVyIGltCltBbGxnZW1laW46QW5hdG9sXSBEZXV0c2NoZW4gdm9yIDopIERhcyB0dXQgV0VIIDopCltBbGxnZW1laW46VGhvcmFrXSBhY2hqYSA6KQpbQWxsZ2VtZWluOlRob3Jha10gd2FyIHNjaG9uIHp1dmllbCBmdWVyIG1pY2ggOikKW0FsbGdlbWVpbjpBbmF0b2xdIEdyb3Nzc2NocmVpYnVuZz8gV2VyIHNhZ3QsIGRhc3MgZGFzIGVpbmUgc3Vic3RhbnRpdmllcnVuZwpbQWxsZ2VtZWluOkFuYXRvbF0gaXN0PwpbQWxsZ2VtZWluOlJvY2h1c10gUm9sbGt1Z2VsemVpZ2VyZWluaGVpdD8KW0FsbGdlbWVpbjpHYXRvXSBEYSB6ZWlndCBzaWNoIGRpZSBnYW56ZSBTY2hvZW5oZWl0IGRlciBkZXV0c2NoZW4gU3ByYWNoZSA6KQpbQWxsZ2VtZWluOk1vcmdvdGhdIHdhcyBoYXR0ZXQgaWhyIGltIG1pdHRhZ2Vzc2VuPz8/CltBbGxnZW1laW46R2F0b10gd2lyZCBtaXR0YWdlc3NlbiB6dXNhbW1lbmdlc2NocmllYmVuPwotLS0tLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhoaGphIChNb3Jnb3RoLCAxNi4gTWFpIDIwMDAsIDE1OjE2OjQ0KToKUXVpY2sgdGVpbHQgRGlyIG1pdDoga2FubiBlaCBuaXggbWVociwgc3BpZWwgenVtIGVyc3RlbiBtYWwgc2VpdCBuZW0gamFociBvZGVyClF1aWNrIHRlaWx0IERpciBtaXQ6IHNvIFsxNToxNF0KUXVpY2sgbWFjaHQgZWluZSBGaW50ZSBnZWdlbiBlaW5lIFdhY2hlLgogIC4uLi4uZXh0cmEvS29wZnN0b3NzLi4uIFF1aWNrLi4uLi4uLi4gOiBXYWNoZS4uLi4uLi4uICoqKioqKioqIC0tIHp1IEJyZWkKICAuLi4uLmV4dHJhL0thbXBmdHJpdHQuLiBRdWljay4uLi4uLi4uIDogV2FjaGUuLi4uLi4uLiAqKioqKioqKiAtLSB6dSBCcmVpCiAgLi4uLi5leHRyYS9XYWZmZW5zY2hsYWcgUXVpY2suLi4uLi4uLiA6IFdhY2hlLi4uLi4uLi4gKioqKioqKiogLS0genUgQnJlaQogIC4uLi5ub3JtYWwvQWV0emF4dC4uLi4uIFF1aWNrLi4uLi4uLi4gOiBXYWNoZS4uLi4uLi4uICoqKioqKioqIC0tIEtyYWNoZW4KICAuLi4ubm9ybWFsL0FldHpheHQuLi4uLiBRdWljay4uLi4uLi4uIDogV2FjaGUuLi4uLi4uLiAqKioqKioqKiAtLSBzZWhyIGhhcnQKICAuLi4ubm9ybWFsL0FldHpheHQuLi4uLiBRdWljay4uLi4uLi4uIDogV2FjaGUuLi4uLi4uLiAqKioqKioqKiAtLQpTY2htZXR0ZXJuClF1aWNrIG1hY2h0IGVpbmUgRmludGUgZ2VnZW4gZWluZSBXYWNoZS4KICAuLi4uLmV4dHJhL1dhZmZlbnNjaGxhZyBRdWljay4uLi4uLi4uIDogV2FjaGUuLi4uLi4uLiAqKioqKioqKiAtLQp6ZXJzdGFldWJ0CgpJcyBrbGFyLi4uCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW1tZXIgd2llZGVyIHNjaG9lbi4uLiAoQmllbGVmZWxkLCAxNi4gTWFpIDIwMDAsIDE3OjU0OjU5KToKQ2FsaW1lcmEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRWluIHdhYmVybmRlcyBHZWJpbGRlIGVyc2NoZWludCB1cnBsb2V0emxpY2ggdm9yIERpci4KCkJpZWxlZmVsZCwga2FubiBzaWNoIGVpbiBHcmluc2VuIG5pY2h0IHZlcmtuZWlmZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSTCAoWm9vaywgMTYuIE1haSAyMDAwLCAyMjozOToxOSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9OTU4NTA5MTI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU4NTA5MTI0CldlciBlcnphZWhsdCBkZW5uIHNvIG5lbiBTY2hyb3R0PwoKWm9vaywgd2lzc2VuZCBlaW5lIGtsZWluZSBGZWUgYW5ncmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUkwgKFJpa3VzLCAxNy4gTWFpIDIwMDAsIDA4OjMyOjMxKToKfiMhIHJuPVpvb2sgcnQ9OTU4NTA5NTU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU4NTA5MTI0CiAgICAgICAgICBsaWZlIGlzIGxpa2UgYSBtZWRpb2NyZSBhZHZlbnR1cmUKCiAgICAgICAgICAgICAgICAgICAgICAgLi4uIGJ1dCB3aXRoIGRhbW4gZ29vZCBncmFwaGljcyA6LSkKClJpa3VzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUkwgKFJvY2h1cywgMTcuIE1haSAyMDAwLCAwOTo0NDozOSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9OTU4NTA5MTI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU4NTA5MTI0CkFjaCwgZGllIFdhZmZlbiBzaW5kIHNjaG9uIHZlcm51ZW5mdGlnLi4uCi4uLiBudXIgd2FobnNpbm5pZyBzY2h3ZXIgenUgYmVrb21tZW4gOi0pCih3ZW5uIG1hbiBuaWNodCBnZXJhZGUgaW4gZGVuIFVTQSBsZWJ0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSTCAoR3JpbW1ib3JuLCAxNy4gTWFpIDIwMDAsIDA5OjU0OjIxKToKfiMhIHJuPVJvY2h1cyBydD05NTg1NDk0Nzkgcmc9c2NobWFycm4KfiMhIHRpZD05NTg1MDkxMjQKQXVjaCBpbiBkZW4gVVNBIGtvbW10IG1hbiBuaWNodCBzbyBsZWljaHQgYW4gZWluZW4gTGVvIDIgb2RlciBhbiBlaW5lClN0YWxpbm9yZ2VsLiBJY2ggZW1wZmVobGUgZGEgZWhlciBMYWVuZGVyIHdpZSBBZmdoYW5pc3RhbiwgZWluIHBhYXIKYWZyaWthbmlzY2hlIFN0YWF0ZW4gb2RlciwgbmF0dWVybGljaCwgZGllIEhlcnN0ZWxsZXIgZGlyZWt0LCBkaWUgRGlyIGdlcm5lCmJlaGlsZmxpY2ggc2luZCwgd2VubiBEdSBrcmVkaXR3dWVyZGlnIGJpc3QuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthdXNhbGVyIFp1c2FtbWVuaGFuZz8gKEx1ZywgMTcuIE1haSAyMDAwLCAyMzo0NTowMCk6CgpQYWRyZWljICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkV0YWluICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKClNvPwpMdWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpwb2VzZXIgcHVyY2hlISAoR25vbWUsIDE4LiBNYWkgMjAwMCwgMTQ6MjM6NTEpOgpEZWluIEZyZXVuZCBHYW5kdXIga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEdSBzcHVlcnN0LCB3aWUgc2ljaCBEZWluIFNjaHV0emdlaXN0IHVudGVyIFNjaG1lcnplbiBhdWZiYWV1bXQuCgpzb3NvLi4uCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VoZSBkZW0hISAoVHN1bmFtaSwgMTguIE1haSAyMDAwLCAyMzozNDoyNyk6Cldlbm4gaWNoIGRlbiBlcndpc2NoZSwgZGVyIG1pciBlaW4gJ0thZW1wZmVyLWFid2VydGVuIS1GYWVobmNoZW4gdm9yIGRpZQpIYXVzdHVlcmUgdm9uIG1laW5lbSBndXRlbiBhbHRlbiBTZWhlcmhhdXMgZ2VsZWd0IGhhdC4uLi4hISEhIQoKR3JycnIhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWhlIGRlbSEhIChHb3IsIDE4LiBNYWkgMjAwMCwgMjM6MzU6MTUpOgp+IyEgcm49VHN1bmFtaSBydD05NTg2ODU2Njcgcmc9c2NobWFycm4KfiMhIHRpZD05NTg2ODU2NjcKR2FueiBzY2hvZW4gYXJtc2VlbGlnIHdlbm4gZHUgbm9jaCBuZW4gU2VoZXJoYXVzIGJyYXVjaHN0LiA6KSkpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZWhlIGRlbSEhIChUc3VuYW1pLCAxOC4gTWFpIDIwMDAsIDIzOjM3OjAxKToKfiMhIHJuPUdvciBydD05NTg2ODU3MTUgcmc9c2NobWFycm4KfiMhIHRpZD05NTg2ODU2NjcKQWNoLCBtYW4gZGFyZiBkb2NoIHdvaGwgbm9jaCBldHdhcyBub3N0YWxnaXNjaCBzZWluIDspCgpVbmQgYW5zb25zdGVuLi4uICpLTEFQUEUhISoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClphdWJlcmVyIHVuZCBpaHJlIExpZWJsaW5nc3NwZWlzZW4gKEhyZWlkbWFyLCAxOS4gTWFpIDIwMDAsIDA5OjE5OjUyKToKW01vZXJkZXI6R2Vpc3QgZWluZXIgRW50ZV0gVW5kIHdpZWRlciBlaW4gRHJpdHRlbCBFcmZhaHJ1bmcgd2VnIHdlZ2VuIFZlY3RvcgpbTW9lcmRlcjpHZWlzdCBlaW5lciBFbnRlXSAuLi4KW01vZXJkZXI6R2Vpc3QgZWluZXIgR2Fuc10gV2VubiBpY2ggRGljaCBlcndpc2NoZSwgVmVjdG9yIQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBUcnV0aGFobnNdIFZlY3Rvciwgd2FlciBqZXR6dCBuaWNodCBlaWdlbnRsaWNoIFZvcmxlc3VuZz8KW01vZXJkZXI6R2Vpc3QgZWluZXMgU3R1cm12b2dlbHNdIFd1ZW5zY2h0IG1pciBuZSBrdXJ6ZSBUb2Rlc3NlcXVlbnosIGljaCBoYWIKW01vZXJkZXI6R2Vpc3QgZWluZXMgU3R1cm12b2dlbHNdIHNpZSBWZWN0b3IgenUgdmVyZGFua2VuIC4uLgpbTW9lcmRlcjpHZWlzdCBlaW5lciBHYW5zXSBEYXMgd2FyIGVpbiBnZW1laW5lciBUaWVmc2NobGFnLCBWZWN0b3IhCltNb2VyZGVyOkdlaXN0IGVpbmVyIFdhY2h0ZWxdIEVpbiBLb2VuaWdyZWljaCBmdWVyIGRlbiwgZGVyIG1pciBkZW4gS29wZiB2b24KW01vZXJkZXI6R2Vpc3QgZWluZXIgV2FjaHRlbF0gVmVjdG9yIGJyaW5ndCEKW01vZXJkZXI6R2Vpc3QgZWluZXMgSHVobnNdIFdlbm4gRHUgZGFzIG5vY2ggb2VmdGVyIG1hY2hzdCwgVmVjdG9yLCBkYW5uCltNb2VyZGVyOkdlaXN0IGVpbmVzIEh1aG5zXSBzcGllbGUgaWNoIGhpZXIgbmljaHQgbWVociEKW01vZXJkZXI6R2Vpc3QgZWluZXMgSGFiaWNodHNdIFNoZXJpZmYhIFZlcmhhZnRlIFZlY3RvciEKW01vZXJkZXI6R2Vpc3QgZWluZXMgQWRsZXJzXSBWZWN0b3IgaXN0IHNjaGxpbW1lciBhbHMgZGFzIE1lbnNhZXNzZW4uIEFic29sdXQKW01vZXJkZXI6R2Vpc3QgZWluZXMgQWRsZXJzXSB0b2VkbGljaC4KW01vZXJkZXI6VmVjdG9yXSAxCltNb2VyZGVyOlZlY3Rvcl0gMgpbTW9lcmRlcjpWZWN0b3JdIDMKW01vZXJkZXI6VmVjdG9yXSA0CltNb2VyZGVyOlZlY3Rvcl0gNQpbTW9lcmRlcjpWZWN0b3JdIDYKW01vZXJkZXI6VmVjdG9yXSA3CltNb2VyZGVyOlZlY3Rvcl0gOAoKRHUgdGVpbHN0IFZlY3RvciBtaXQ6IGhtbSwgZ2lidCBlcyBoZXV0ZSBiZWkgZXVjaCB6dSBNaXR0YWcgR2VmbHVlZ2VsPyA7KQpWZWN0b3IgdGVpbHQgRGlyIG1pdDoganVwLCBnZXNjbmV0emVsdGVzOikKCkhyZWlkbWFyLCBncmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLiAoS2FyYW0sIDE5LiBNYWkgMjAwMCwgMTU6MDM6NDYpOgpbQWxsZ2VtZWluOk11dGFudHVzXSBoYWhhaGEKW0FsbGdlbWVpbjpNdXRhbnR1c10gc3B1ZXJ0IG1laW5lbiB6b3JuLi4uCltBbGxnZW1laW46Tm9ubmVdIGF1IGphCltBbGxnZW1laW46TWVsd2luXSBtZWluZW4gYXVjaApXdWZmdHVmZiBnYWVobnQgaGVyenplcnJlaXNzZW5kLgoKS2FyYW0gZGVua3QgLiBvIE8gKERhcyB3YXIgd29obCBuaXggLSBuYWVjaHN0ZXIgVmVyc3VjaD8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcmF1ZW4gdW5kIFRlY2huaWsgO28pIChGb29iYXIsIDE5LiBNYWkgMjAwMCwgMjE6NDg6MzQpOgpTaXR1YXRpb246IExhbmZlYXIgc2NoaWNrdCBtaXIgdWViZXIgRmVybnNjaHJlaWJlciBlaW5lIE5hY2hyaWNodC4KClVuZCBkYW5uOgpMPiB0bSBjaW5kZXJlbGxhIGltbWVyIDopIApEdSBncmluc3QgTGFuZmVhciBhdXMgZGVyIEZlcm5lIGFuLgpMPiBzCkR1IHRlaWxzdCBMYW5mZWFyIG1pdDogTWFjaCBtYWwgZGVuIEZlcm5zY2hyZWliZXIgYXVzLCBpY2gga3JpZWcgYWxsZXMgbWl0CkR1IHRlaWxzdCBMYW5mZWFyIG1pdDogaGllciA6bykKTD4gdG0gZm9vYmFyIGltbWVybm9jaCA/Ci0tLS0gRW5kZSBkZXIgTmFjaHJpY2h0IC0tLS0KCipnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXh0cmEgZnVlciBMaWFyYSEhISAoTGFuZmVhciwgMjAuIE1haSAyMDAwLCAxMzozMzowNSk6CndhcyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEV4dHJhIGZ1ZXIgTGlhcmEhISEgKE5penpsLCAyMC4gTWFpIDIwMDAsIDEzOjMzOjIxKToKfiMhIHJuPUxhbmZlYXIgcnQ9OTU4ODIyMzg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU4ODIyMzg1CmFybWVzIG11ZC4uLjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPcmtoYXVzZW4gOikgKERhcmt3aW5nLCAyMC4gTWFpIDIwMDAsIDIwOjA0OjQ1KToKRHUgbWFjaHN0IGVpbmUgZXJmb2xncmVpY2hlIEZpbnRlIGdlZ2VuIGRlbiBPcmsuCi4uLi4uZXh0cmEvU2NoaWxkc3Rvc3MuIER1Li4uLi4uLi4uLi4gOiBPcmsuLi4uLi4uLi4uICoqKioqKioqIC0+IHp1IEJyZWkKRGVyIE9yayBmYWVsbHQgdG90IHp1IEJvZGVuLgpEZXIgT3JrIGZyYWd0OiBXYXJzdCBEdSBzY2hvbiBiZWltIEJ1ZXJnZXJtZWlzdGVyPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFoYT8gKFRoZXJpbiwgMjAuIE1haSAyMDAwLCAyMDoyNzoxNCk6CkxlZ2FzIHRlaWx0IERpciBtaXQ6IGljaCBmaW5kcyBhYmVyIGVpbmZhY2ggbHVzdGlnIHNvIGluIGRlbiBndXRlbiBhbHRlbgpMZWdhcyB0ZWlsdCBEaXIgbWl0OiBnZWJpZXRlbiB6dSBtZXR6ZWxuCltUb2Q6TGFyc10gTG9md3lyIGhhdCBnZXJhZGUgTGVnYXMgdW1nZWJyYWNodC4KW1RvZDpMb2Z3eXJdIEpldHp0IGJhZGUgaWNoIG1hbCBpbiAqRGVpbmVtKiBCbHV0LCBMZWdhcy4uLgoKV2FzIGVyIHNvIGFscyBsdXN0aWcgZXJhY2h0ZXQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvZCBzY2h1ZXR6dCBhdWNoIHZvciB6d2VyZ2VuIG5pY2ggPyAoV29vLCAyMS4gTWFpIDIwMDAsIDEwOjExOjUzKToKbmV1bGljaCBuYWNoIChlcmZvbGdsb3NlcikgTW9vcmh1aG5qYWdkIGluIGRlciBUb2Rlc3NlcXVlbno6CgotIEZyZWl3aWxsaWchJywgc2lubmllcnQgc2llIHVuZCBzcGllbHQgZGFiZWkgbWl0IGRlbSBBbmtoLCBkZXIKbWl0IGVpbmVyIEtldHRlIHVtIGlocmVuIEhhbHMgaGFlbmd0LgoKSXJnZW5kd2llIGtsaW5ndCBkYXMgendhciBpbnRlcmVzc2FudCwgYWJlciBEaWNoIGludGVyZXNzaWVydCBldHdhcyBhbmRlcmVzCnZpZWwgbWVocjogd2llIGdlaHQncyBqZXR6dCB3ZWl0ZXI/CgpVbmQgd2llZGVyIHNjaGVpbnQgc2llIERlaW5lIEdlZGFua2VuIGVyZmFzc3QgenUgaGFiZW4uICdJY2ggd2Vpc3MgZXMgbmljaHQsCmFiZXIgRHUgd2lyc3QgZXMgamV0enQgZXJmYWhyZW4uJyBzYWd0IHNpZS4gRGFubiB3aXJkIGVzIGZpbnN0ZXIgdW0gRGljaApoZXJ1bS4KCkR1IHN0aW5rc3QsIGFscyB3YWVyc3QgRHUgaW4gZWluZSBHdWVsbGVncnViZSBnZWZhbGxlbi4KSW5zdGlua3RpdiBkZW5rc3QgRHU6IEdsYXViZSBpY2ggYW4gV2llZGVyZ2VidXJ0PyBEaWUgSG9lbGxlPyBEZW4gSGltbWVsPwpEdSB3aXJzdCBEaWNoIGVudHNjaGVpZGVuIG11ZXNzZW4uCgpTaWUgemllaHQgRGljaCBzYW5mdCBhbiBzaWNoLgoKQXVzIGRlciBEdW5rZWxoZWl0IGhvZXJzdCBEdSBkYXMgU2NobGFnZW4gbWFlY2h0aWdlciBTY2h3aW5nZW4uCgpEdSBtdXNzdCBEaXIgZGllIE5hc2UgenVoYWx0ZW4uCkVzIGRhdWVydCBlaW5lIFdlaWxlLCBiaXMgRHUgd2llZGVyIHp1IERpciBrb21tc3QsCgp3YXNzIHNvbGwgbWFuIGRhenUgbm9jaCBzYWdlbiA/PyA7KSkpKSkgZWluZmFjaCB1bXdlcmZlbmQgZGFzIG5ldWUgRGVvIDspCipzaWNoIGltbWVybm9jaCBrdWdlbG5kIHZvciBsYWNoZW4qIFdPbyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGxpdmUgYXVzIGJvbm4gKEFuYXRvbCwgMjEuIE1haSAyMDAwLCAxODo0Mzo0Nik6Cn4jISBybj1QYWRyZWljIHJ0PTk1ODcwMjAyNiByZz1zY2htYXJybgp+IyEgdGlkPTk1ODcwMjAyNgpJY2ggYmluIG1pciBkdXJjaGF1cyBiZXd1c3N0LCBkYXNzIHdpciBtZWhyZXJlIHppdGllcnd1ZXJkaWdlCkF1c3NwcnVlY2hlIGhhdHRlbi4gQW4gREVOIGthbm4gaWNoIG1pY2ggYWxsZXJkaW5ncyBuaWNodCAKZXJpbm5lcm4uIE1haWwnIG1pciBkb2NoIGJpdHRlIG1hbCBkZW4gS29udGV4dCB6dSwgamE/IDopCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldHQgOikgKE5penpsLCAyMi4gTWFpIDIwMDAsIDAwOjMxOjEzKToKSW0gVmVyYm9yZ2VuZW4gbWFjaHN0IER1IGVpbmUgbWFnaXNjaGUgSGFuZGJld2VndW5nLgpEZXIgWmF1YmVyc3BydWNoIGlzdCBEaXIgbWlzc2dsdWVja3QuCkR1IGxlcm5zdCBhdXMgRGVpbmVuIEZlaGxlcm4uCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCltUb2Q6TGFyc10gWmFwcGVyIGhhdCBnZXJhZGUgVGF0amFuYSB1bWdlYnJhY2h0LgpbVG9kOlphcHBlcl0gWmFwcC1aYXJhcHAKVHV0c3p0IHdpdHRlcnQgQmx1dCB1bmQgc2NobGVpY2h0IGRhdm9uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFdlaWNoZWllciAoQW5hdG9sLCAyMy4gTWFpIDIwMDAsIDAyOjEyOjU1KToKfiMhIHJuPVRhdGphbmEgcnQ9OTU5MDM0ODM0IHJnPWQucG9sYXIKfiMhIHRpZD05NTg5NDAxMjEKT2ssIElzbm9nb29kLCBmYWxscyBEdSB3aWVkZXIgZWluZW4gQXJ0aWtlbCB2b24gbWlyIG5pY2h0CnZlcnN0ZWhlbiBzb2xsdGVzdCwgc2NocmVpYmUgbWlyIGRvY2ggZWluZSBNYWlsLiBJY2ggc2NoaWNrZQpEaXIgZGFubiBnZXJuZSBlaW5lIE5ldWZvcm11bGllcnVuZyB6dS4gQmVzY2hyYWVua3QgYXVmIGRlbgpXb3J0c2NoYXR6IGVpbmVzIFp3b2VsZmphZWhyaWdlbiB1bmQgb2huZSBzbyBla2xpZ2UgRGluZ2VyCndpZS4uLiBSZWxhdGl2c2FldHplLgoKT2RlciBiZW5vZXRpZ3N0IER1IHVuYmVkaW5ndCBlaW5lIHdhdi1EYXRlaSwgd2VpbCBlcyBtaXQgCmRlbSBMZXNlbiBhdWNoIG5pY2h0IHNvb28gdW5iZWRpbmd0IGtsYXBwdD8gT2RlciBsaWVzdCBEaXIKRGVpbiBQZmxlZ2VyIChlciBzb2xsdGUgRGlyIHdlbmlnZXIgdm9uIGRpZXNlbiBUYWJsZXR0ZW4KdmVyYWJyZWljaGVuKSBvaG5laGluIGFsbGVzIHZvcj8KCk1laW5lIEd1ZXRlLi4uCkFuYXRvbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCld1bGZnYXIsIGRlciBCYXVlci4uLi4gKEFuYXRvbCwgMjMuIE1haSAyMDAwLCAxNzoxMzowMSk6Cld1bGZnYXIga3Vlc3N0IERldmlsY2hlbi4KV2VubiBkdSBkZW0gQmF1ZXIgbm9jaCBsYWVuZ2VyIHp1c2llaHN0IG11c3N0IGR1IGRpY2ggdWViZXJnZWJlbi4KClNpY2ggZGVzIGJyZWl0ZW4gR3JpbnNlbnMgbmljaHQgZXJ3ZWhyZW4ga29lbm5lbmQsCkFuYXRvbCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdG9sbGUgZnJldW5kZSA6KSkpIChHb2xhcywgMjQuIE1haSAyMDAwLCAxNTowODo0OCk6CmZ3ZXIgZ2lsZGUgb3J0CkFwc3UgICAgICAgICAgIC0gIDE6IDk6NTMgLSBBbSBQb3J0IFZhaW5lciBTdGFkdHRvcgpEYXJrd2luZyAgICAgICAtICAwOjEzOjE0IC0gSW4gZWluZW0ga2xlaW5lbiBUdXJtCkRpZWRlciAgICAgICAgIC0gIDA6MTk6MjAgLSBEaWUgYmVydWVobXRlIEFiZW50ZXVyZXJnaWxkZQpFbGJlcmV0ICAgICAgICAtICAwOjEyOjI4IC0gSW4gZWluZW0gVnVsa2Fua3JhdGVyCkVsZW5kaWwgICAgICAgIC0gIDA6MTM6MjIgLSBJbiBSZWFwZXJzIEJ1cmdob2YKRnJlcmluICAgICAgICAgLSAgMDoxMzoxMCAtIERpZSBIZXJyZW50b2lsZXR0ZQpHYW5kdXIgICAgICAgICAtICAwOjI3OjI0IC0gRWluIGdlbXVldGxpY2hlcyBXb2huemltbWVyCkdvciAgICAgICAgICAgIC0gIDA6MTI6MzYgLSBJbiBlaW5lciBkdW5rbGVuIEdhc3NlCkd1YXJkICAgICAgICAgIC0gIDA6MjU6MzIgLSBIaW50ZXIgZGVyIEZyaWVkaG9mc21hdWVyCkphc29ucmlnaWQgICAgIC0gIDA6MTI6MjYgLSBBbSBQb3J0IFZhaW5lciBTdGFkdHRvcgpLYWRpcyAgICAgICAgICAtICAwOjEyOjI4IC0gSW4gZWluZW0ga2xlaW5lbiBUdXJtCkxhcmFuaXMgICAgICAgIC0gIDA6MTU6MTkgLSBJbWJpc3MKTGlhcmEgICAgICAgICAgLSAgMDoxNzo1MSAtIERpZSBFaW5nYW5nc2hhbGxlIGVpbmVzIEhhdXNlcyBpbSBNb29yCkx1cmNoaSAgICAgICAgIC0gIDA6MTI6MjYgLSBJbSBhYnNvbHV0ZW4gQ2hhb3MKTWFydGluaSAgICAgICAgLSAgMDogMDogMiAtIEluIGRlciBIdWV0dGUKTWVzaXJpaSAgICAgICAgLSAgMDoxMjo0OCAtIEVpbiBnZWhlaW1lciBSYXVtCk11YWRkaWIgICAgICAgIC0gIDA6MTI6NDAgLSBFaXNlYmVuZQpOb25uZSAgICAgICAgICAtICAwOjEzOjM2IC0gSW4gZWluZW0gU3RhbGwKUmVhcGVyICAgICAgICAgLSAgMDoxNjoxMSAtIEluIFJlYXBlcnMgQnVyZ2hvZgpTYW5ueW8gICAgICAgICAtICAwOjE0OiA1IC0gSW4gZWluZXIgY2hhb3Rpc2NoZW4gQnVyZwpTbHlmb3ggICAgICAgICAtICAwOjEyOjQ4IC0gR2xhc2ViZW5lClNuaXBlciAgICAgICAgIC0gIDA6MTI6NTggLSBTbmlwZXJzIFdvaG56aW1tZXIKVmlvbGEgICAgICAgICAgLSAgMDoxMzogNiAtIEFtIEhhZmVuCld1cnN0ZWwgICAgICAgIC0gIDA6MTI6MjYgLSBFaW5lIExpY2h0dW5nCllhcXdlciAgICAgICAgIC0gIDA6MTM6NDggLSBJbWJpc3MgCgoKc293YXMgaGFiIGljaCBub2NoIG5pZSBlcmxlYnQgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBdWYgdmllbGZhY2hlbiBXdW5zY2guLi4gKEJhbWJpLCAyNC4gTWFpIDIwMDAsIDE1OjI2OjU5KToKfiMhIHJuPUhvb2QgcnQ9OTU5MTcyMzcwIHJnPWQudmxhbmQKfiMhIHRpZD05NTg5OTgxMjYKdmllbGxlaWNodCBpc3QgZXIgYXVjaCBncmFkIGVpbmdlIm5pY2t0Ii4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5nZXNjaG5pdHRlbi4uLiAoR3JpbW1ib3JuLCAyNC4gTWFpIDIwMDAsIDE1OjMxOjU3KToKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIERhcmt3aW5nIGluIFJ1YnJpayAiZC52bGFuZCIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBUaHVmaGlyIGluIFJ1YnJpayAidHJlZmZlbiIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBIb29kIGluIFJ1YnJpayAiZC52bGFuZCIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBNb3Jnb3RoIGluIFJ1YnJpayAiZC52bGFuZCIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBIb29kIGluIFJ1YnJpayAiZC52bGFuZCIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBNb3Jnb3RoIGluIFJ1YnJpayAiZC52bGFuZCIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBIb29kIGluIFJ1YnJpayAiZC52bGFuZCIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBDYXR3ZWF6bGUgaW4gUnVicmlrICJkLnZsYW5kIi4KKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIE1vcmdvdGggaW4gUnVicmlrICJkLnZsYW5kIi4KCk1vcmdvdGgsIEhvb2Q6ICJoaWxmZSB0ZWlsZSBtaXQiCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbmdlc2Nobml0dGVuLi4uIChIb29kLCAyNC4gTWFpIDIwMDAsIDE1OjM0OjQ0KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NTkxNzUxMTcgcmc9c2NobWFycm4KfiMhIHRpZD05NTkxNzUxMTcKbmEgamEsIHdlbmlnc3RlbnMgaGFzdCBkdSBzY2hlaW5iYXIgZ2VyYWRlIGdlbmF1c28gd2VuaWcgenUgdHVuIHdpZSB3aXIuLi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRldmlsY2hlbiB2ZXJ6d2VpZmVsdC4uLiAoR25vbWUsIDI0LiBNYWkgMjAwMCwgMjM6Mjg6MzYpOgpEZXZpbGNoZW4gYmVpc3N0IERpY2ggYXVzIGRlciBGZXJuZS4KRGV2aWxjaGVuIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBBUlJHLiBkaWUgaG9iYml0aW5lIGhhZWx0IG1pY2ggZnVlciBlaW5lbgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogYnJhdGVuIG9kZXIgc28hIHNpZSBmYWVuZ3QgYW4genUgYmVpc3NlbiEhIQoKRGVpbmUgRnJldW5kaW4gRGV2aWxjaGVuIHRlaWx0IERpciBtaXQ6IHp3ZXJnZW5icmF0ZW4gaXMgZG9jaCB3YXMgZmVpbmVzOikKCkRlaW5lIEZyZXVuZGluIERldmlsY2hlbiB3dWVyenQgR25vbWUgbm9jaCBldHdhcyBhdXMgZGVyIEZlcm5lIHVuZCBzY2hpZWJ0IGlobgpkYW5uIGluIGRlbiBPZmVuLgoKRGV2aWxjaGVuIHRlaWx0IERpciBtaXQ6IHNjaHJlaSB3ZW5uIGR1IGFtIHZlcmJyZW5uZW4gYmlzdDspCgpEdSB0ZWlsc3QgRGV2aWxjaGVuIG1pdDogb2NoLi4uIGZldWVyIGhhbHQgaWNoIGdhbnogZ3V0IGF1cyA6KQpEZXZpbGNoZW4gdGVpbHQgRGlyIG1pdDogZ3V0ICpnYXJ6ZWl0YXVmMnN0dW5kZW5zdGVsbCo6KQpEdSB0ZWlsc3QgRGV2aWxjaGVuIG1pdDogaGEhIGRhbm4gd2VyZCBpY2ggZXJzdCByaWNodGlnIHdhcm0hIDopKQpEZXZpbGNoZW4gdGVpbHQgRGlyIG1pdDogb2gsIGRhbm4gNDspCkRldmlsY2hlbiB0ZWlsdCBEaXIgbWl0OiBsYXV3YXJtIHNjaG1lY2t0IG5pY2h0OykKRHUgdGVpbHN0IERldmlsY2hlbiBtaXQ6IG5hY2ggNGgga29tbSBpY2ggYXVmIGhvY2h0b3VyZW4sIGRhbm4gaXN0IG5peCB1bmQKRHUgdGVpbHN0IERldmlsY2hlbiBtaXQ6IG5pZW1hbmQgc2ljaGVyIQpEZXZpbGNoZW4gdGVpbHQgRGlyIG1pdDogb2gsIGhtLi4uLjYgc3R1bmRlbjspCkR1IHRlaWxzdCBEZXZpbGNoZW4gbWl0OiA2aD8gZGFuYWNoIHNvbGx0ZSBzaWNoIGRlciBuZWtyb21hbnQgd2FybSBhbnppZWhlbiEKRHUgdGVpbHN0IERldmlsY2hlbiBtaXQ6IDopCkRldmlsY2hlbiB0ZWlsdCBEaXIgbWl0OiAqaHVzdCo6KQoKRGV2aWxjaGVuIHRlaWx0IERpciBtaXQ6IGFlaC4uLi53aWUgd2FlcnMgbWl0IDIwIG1pbnV0ZW4/ICphdWdlbmJyYXVlaG9jaHppZWgqCkR1IHRlaWxzdCBEZXZpbGNoZW4gbWl0OiAyMCBtaW4/IG1lcmsgaWNoIGhvZWNoc3RlbnMgYW4gZGVyIGtsZWluZW4gemVoZS4KCkRldmlsY2hlbiB0ZWlsdCBEaXIgbWl0OiBobmdsLi4uKnJlc2lnbmllciogKm9mZW5hdWZtYWNodW5kcmF1c2xhc3MqOikKRGV2aWxjaGVuIHRlaWx0IERpciBtaXQ6IG5vY2ggbmllIHNvIG5lbiBzdG9lcnJpc2NoZW4gYnJhdGVuIGdlaGFidDspCgpEZXZpbGNoZW4tPkdub21lIGtpY2hlcnQgYXVzIGRlciBGZXJuZSBpbiBzaWNoIHJlaW4uCgphYmVyIHZlcnN1Y2ggbmljaHQsIGRlbiBvZmVuIG1pdCBuZW0gd2hpcmxwb29sIHp1IHZlcnRhdXNjaGVuISA7LSkKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZGV2aWxjaGVuIHZlcnp3ZWlmZWx0Li4uIChMdWcsIDI0LiBNYWkgMjAwMCwgMjM6Mjk6NDApOgp+IyEgcm49R25vbWUgcnQ9OTU5MjAzNzE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU5MjAzNzE2CgpEdSBoYWV0dGVzdCBpaHIgZWJlbiBkaWUgWmFlaG5lIGF1c3NjaGxhZ24gc29sbGVuLCB3aWUgaWNoIGVzIERpciBlbXBmb2hsZW4KaGFiLiBBYmVyIG5laW4sIG51biBsZWJlIG9kZXIgYmVzc2VyIHN0ZXJiZSBtaXQgZGVuIEZvbGdlbi4uLgoKQXVmZ2ViZW5kCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKMyBVaHIgTW9yZ2VucyB1bmQgTWF0aGUgKERhcmt3aW5nLCAyNS4gTWFpIDIwMDAsIDAzOjA3OjEzKToKRGVpbiBGcmV1bmQgR29yIHRlaWx0IERpciBtaXQ6IGthbm4gbWFsIHdlciA2MzAwLzEwMDAqNTAgcmVjaG5lbj8KRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IDMxNTAKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IG5hamEgc3RyZWljaCBuZSAwIDopCkRlaW4gRnJldW5kIEdvciB0ZWlsdCBEaXIgbWl0OiBhcmdsIHNvIDopIDYzMDAwMC8xMDAwKjUwCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiAqbGFjaCogZGFubiB0dSBzaWUgd2llZGVyIGRhYmVpIDspCkVsZW5kaWwgdGVpbHQgRGlyIG1pdDogcmVjaG5lIG1hbCAoNjMwMDAwLzEwMDApKjUwIGVyIGhhdCBuZSBrbGFtbWVyIHZlcmdlc3NlbgpEdSB0ZWlsc3QgRWxlbmRpbCBtaXQ6IDMxNTAwCkVsZW5kaWwgdGVpbHQgRGlyIG1pdDogR29yIHRlaWx0IERpciBtaXQ6IDEwMDAvNjMwMDAqNTAKRHUgdGVpbHN0IEVsZW5kaWwgbWl0OiBnbmEhCkVsZW5kaWwgdGVpbHQgRGlyIG1pdDogYWNoIGRlciBoYXQgd2llZGVyIG5lIGtsYW1tZXIgdmVyZ2Vzc2VuCgouLi4KCkRlaW4gRnJldW5kIEdvciB0ZWlsdCBEaXIgbWl0OiBzbyBpY2ggZ2VoIGlucyBiZXR0Li4gbmFjaCBkZW0ga2F0YXN0cm9waGFsZW4KRGVpbiBGcmV1bmQgR29yIHRlaWx0IERpciBtaXQ6IGRyZWlzYXR6Li4uIGFjaGphIGRhcyBlcmdlYm5pcyBpc3QgMC43OQpEZWluIEZyZXVuZCBHb3IgdGVpbHQgRGlyIG1pdDogcHJvbWlsbGUgOikpKSB3ZW5uIGlociB3aXNzdCB3YXMgaWNoIG1laW5lICpnKgpHb3IgdGVpbHQgRGlyIG1pdDogZWxlcyBwcm9taWxsZSBzdGFuZCwgd2VubiBlciBuaWNodHMgYWJnZWJhdXQgaGFldHRlLi4uCgpEYXJrd2luZywgcmVpZiBmdWVycyBCZXR0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBdWYgdmllbGZhY2hlbiBXdW5zY2guLi4gKEJlbmRlaWdpZCwgMjUuIE1haSAyMDAwLCAwODo1MDowNik6Cn4jISBvbj1EZWVwYmx1ZSBvdD05NTkxNzkyMDMgb2c9ZC52bGFuZAp+IyEgcm49SG9vZCBydD05NTkxNzkwMTkgcmc9ZC52bGFuZAp+IyEgdGlkPTk1ODk5ODEyNgpNb3Jnb3RoIGRhcmYgZGFzLCBkZW5uIE1vcmdvdGggaXN0IE1vcmdvdGggKHVuZCBzZWx0c2FtKSA6KQpEZWVwQmx1ZSBzY2htYXJyZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQXVmIHZpZWxmYWNoZW4gV3Vuc2NoLi4uIChCZW5kZWlnaWQsIDI1LiBNYWkgMjAwMCwgMDg6NTA6MTApOgp+IyEgb249U2luYSBvdD05NTkxODUyNDQgb2c9ZC52bGFuZAp+IyEgcm49TGlhcmEgcnQ9OTU5MTgxNTYwIHJnPWQudmxhbmQKfiMhIHRpZD05NTg5OTgxMjYKQWxzbyB3ZW5uIER1IGRlbiBBcnRpa2VsIHNjaHJlaWJzdCwgTGlhcmEsIG11c3MgaWNoIG1pciBlY2h0IGRlbiBCYXVjaCBoYWx0ZW4Kdm9yIGxhY2hlbi4gRGFzcyBnZXJhZGUgX2R1XyBlcyB2ZXJ1cnRlaWxzdCwgd2VubiBlaW5lciBzaW5ubG9zZSBBcnRpa2VsIApzY2hyZWlidCwgdW5kIHp1IGFsbGVtIGVpbmVuIHNpbm5sb3NlbiBLb21tZW50YXIgZ2lidC4gKndhZWx6KiAqcHJ1c3QqCgouU2luYS4ga2FubiBuaWNodCBhbmRlcnMgLT5tdWVsbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEF1ZiB2aWVsZmFjaGVuIFd1bnNjaC4uLiAoQmVuZGVpZ2lkLCAyNS4gTWFpIDIwMDAsIDA4OjUwOjE0KToKfiMhIG9uPUdvb2Z5IG90PTk1OTE5NDM5NSBvZz1kLnZsYW5kCn4jISBybj1BcHN1IHJ0PTk1OTE4NTUwNyByZz1kLnZsYW5kCn4jISB0aWQ9OTU4OTk4MTI2CkRhcyBBbmdlYm90IG5lbSBpY2ggZG9jaCBhbiBBcHN1LAphbHNvIHdhcnVtIHNjaHJlaWJzdCBkdSBlaW5lbiBzaW5ubG9zZSBBcnRpa2VsIHVlYmVyIG5lbiBzaW5ubG9zZW4gQXJ0aWtlbCwKaW4gZGVtIHNpY2ggd2VyIHVlYmVyIHNpbm5sb3NlIEFydGlrZWwgaW4gZGVyIE1wYSBtb2tpZXJ0PwpHYW56IGVpbmZhY2g6IERhenUgaXN0IGRpZSBNcGEgZG9jaCBkYSwgb2RlciBoYXN0IGR1IGplbWFscyB3YXMgYW5kZXJlcwpnZWRhY2h0PwpHb29meSwgZ2VzcGFubnQgb2IgZGllc2VyIFRocmVhZCBhbGxlIGFuZGVyZW4gaW4gTGFlbmdlIHVuZCBTaW5ubG9zaWdrZWl0CnNjaGxhZ2VuIGthbm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBdWYgdmllbGZhY2hlbiBXdW5zY2guLi4gKEJlbmRlaWdpZCwgMjUuIE1haSAyMDAwLCAwODo1MDo0OSk6Cn4jISBvbj1MaWFyYSBvdD05NTkxODE1NjAgb2c9ZC52bGFuZAp+IyEgcm49RGVlcGJsdWUgcnQ9OTU5MTc5MjAzIHJnPWQudmxhbmQKfiMhIHRpZD05NTg5OTgxMjYKU2FjaCBtYWwgRGVlcGJsdWUsIG11c3N1IGVpZ2VudGxpY2ggenUgYWxsZW0gdW5kIGplZGVtIG5lbiBibG9lZGVuLCBzaW5ubG9zZW4KdW5kIGF1Y2ggbm9jaCB1bndpdHppZ2VuIEtvbW1lbnRhciBzY2hyZWliZW4/CgpMaWFyYSwgWndlcmdlbnphdWJlcmluZSwgcmVpY2h0cyBsYW5nc2FtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogQXVmIHZpZWxmYWNoZW4gV3Vuc2NoLi4uIChCZW5kZWlnaWQsIDI1LiBNYWkgMjAwMCwgMDg6NTA6NTEpOgp+IyEgb249QXBzdSBvdD05NTkxODU1MDcgb2c9ZC52bGFuZAp+IyEgcm49U2luYSBydD05NTkxODUyNDQgcmc9ZC52bGFuZAp+IyEgdGlkPTk1ODk5ODEyNgpBdSBqYSwgZmxhbWV0IGRvY2ggYXVmIGRlbSBCZWdyaWZmICdTaW5ubG9zJyBtYWwgaGVydW0uIFp1bSBCZWlzcGllbCB1ZWJlcgpzaW5ubG9zZSBBcnRpa2VsIGluIGRlbmVuIHNpY2ggdWViZXIgc2lubmxvc2UgQXJ0aWtlbCBzaW5ubG9zIG1va2llcnQuCgpBcHN1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogQXVmIHZpZWxmYWNoZW4gV3Vuc2NoLi4uIChCZW5kZWlnaWQsIDI1LiBNYWkgMjAwMCwgMDg6NTA6NTMpOgp+IyEgb249QXBzdSBvdD05NTkxOTYzMDkgb2c9ZC52bGFuZAp+IyEgcm49R29vZnkgcnQ9OTU5MTk0Mzk1IHJnPWQudmxhbmQKfiMhIHRpZD05NTg5OTgxMjYKSG1tbSBLZXR0ZW50aHJlYWQ/IGF1Y2ggbm9jaCBpbiBkaXZlcnNlIE5ld3Nncm91cHMgcmVpbnRyYWdlbj8KQXVqYS4KCkFwc3UsIG5hY2ggZWluZW0gc2lubmxvc2VuIEVpbnRyYWcgaW5zIEd1aW5uZXNzYnVjaCBkZXIgUmVrb3JkZSBzY2hpZWxlbmQuCk9kZXIgbmFjaCAobmF0dWVybGljaCBTSU5OTE9TRU0pIEFlcmdlciBtaXQgTmV3c2dyb3VwbGVzZXJuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEF1ZiB2aWVsZmFjaGVuIFd1bnNjaC4uLiAoQmVuZGVpZ2lkLCAyNS4gTWFpIDIwMDAsIDA4OjUwOjU0KToKfiMhIG9uPUFwc3Ugb3Q9OTU5MTk2NDczIG9nPWQudmxhbmQKfiMhIHJuPUFwc3UgcnQ9OTU5MTk2MzA5IHJnPWQudmxhbmQKfiMhIHRpZD05NTg5OTgxMjYKUC5TLjogd2VyIHByb2dndCBkaWUgLlZCUy1WZXJzaW9uID8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogQXVmIHZpZWxmYWNoZW4gV3Vuc2NoLi4uIChCZW5kZWlnaWQsIDI1LiBNYWkgMjAwMCwgMDg6NTA6NTUpOgp+IyEgb249SG9vZCBvdD05NTkyMDM5Mjggb2c9ZC52bGFuZAp+IyEgcm49U2luYSBydD05NTkxODUyNDQgcmc9ZC52bGFuZAp+IyEgdGlkPTk1ODk5ODEyNgpBbHNvIHdlbm4gRHUgZGVuIEFydGlrZWwgc2NocmVpYnN0LCBTaW5hLCBtdXNzIGljaCBtaXIgZWNodCBkZW4gQmF1Y2ggaGFsdGVuCnZvciBsYWNoZW4uIERhcyBnZXJhZGUgX2R1XyBlcyB2ZXJ1cnRlaWxzdCwgd2VubiBlaW5lciBzaW5ubG9zZSBBcnRpa2VsCnNjaHJlaWJ0LCB1bmQgenUgYWxsZW0gZWluZW4gc2lubmxvc2VuIEtvbW1lbnRhciBnaWJ0LiAqd2FlbHoqICpwcnVzdCoKClBTOiB3ZXIgbWFjaHQgd2VpdGVyPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEF1ZiB2aWVsZmFjaGVuIFd1bnNjaC4uLiAoQmVuZGVpZ2lkLCAyNS4gTWFpIDIwMDAsIDA4OjUwOjU2KToKfiMhIG9uPU1hdGlzIG90PTk1OTIwNDA2NCBvZz1kLnZsYW5kCn4jISBybj1Ib29kIHJ0PTk1OTIwMzkyOCByZz1kLnZsYW5kCn4jISB0aWQ9OTU4OTk4MTI2CkR1IGhvZXJzdCBEaWNoIHdvaGwgYXVjaCBzZWxiZXIgc2VociBnZXJuZSByZWRlbiBiencuIG11c3N0IGltbWVyIAp1bm5vZXRpZ2UgS29tbWVudGFyZSBhYmdlYmVuLCBIb29kPwoKTWF0aXMsIGkrMQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEF1ZiB2aWVsZmFjaGVuIFd1bnNjaC4uLiAoQmVuZGVpZ2lkLCAyNS4gTWFpIDIwMDAsIDA4OjUxOjA3KToKfiMhIG9uPUthcmlzIG90PTk1OTIzNDE4OSBvZz1kLnZsYW5kCn4jISBybj1NYXRpcyBydD05NTkyMDQwNjQgcmc9ZC52bGFuZAp+IyEgdGlkPTk1ODk5ODEyNgpBYmVyIE1hdGlzIC4uLiBsYXMgaWNoIGRhIGdlcmFkZSBlaW5lbiB2b2VsbGlnIHVubm9ldGlnZW4KS29tbWVudGFyPyA7KQoKS2FyaXMuIGkrMgpXaWUgZ2luZyBkYXMgZ2xlaWNoIHdpZWRlciBtaXQgZGVyIHZvbGxzdGFlbmRpZ2VuIEluZHVrdGlvbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBBdWYgdmllbGZhY2hlbiBXdW5zY2guLi4gKEJlbmRlaWdpZCwgMjUuIE1haSAyMDAwLCAwODo1MToxMSk6Cn4jISBvbj1OaXp6bCBvdD05NTkyMzQyNjEgb2c9ZC52bGFuZAp+IyEgcm49S2FyaXMgcnQ9OTU5MjM0MTg5IHJnPWQudmxhbmQKfiMhIHRpZD05NTg5OTgxMjYKd2llZGVyIG1wYSB2b2xsbXVlbGxlbiB3YXM/IGljaCBnbGF1YmUgZXMgaGFja3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBBdWYgdmllbGZhY2hlbiBXdW5zY2guLi4gKEJlbmRlaWdpZCwgMjUuIE1haSAyMDAwLCAwODo1MToxOSk6Cn4jISBvbj1Ob25uZSBvdD05NTkyMzY1MDcgb2c9ZC52bGFuZAp+IyEgcm49Tml6emwgcnQ9OTU5MjM0MjYxIHJnPWQudmxhbmQKfiMhIHRpZD05NTg5OTgxMjYKTWFsIHdhcyBTaW5udm9sbGVzOiBLb2VubnRldCBpaHIgZGllc2VuIFRocmVhZCBuaWNodCBuYWNoIHNjaG1hcnJuIHZlcmxlZ2VuPwoKTm9ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogQXVmIHZpZWxmYWNoZW4gV3Vuc2NoLi4uIChCZW5kZWlnaWQsIDI1LiBNYWkgMjAwMCwgMDg6NTI6MjcpOgp+IyEgcm49QmVuZGVpZ2lkIHJ0PTk1OTIzNzQ3OSByZz1zY2htYXJybgp+IyEgdGlkPTk1ODk5ODEyNgpkb2NoLiBsZWlkZXIgbWl0IGxlaWNodGVyIHZlcnRhdXNjaHVuZyBpbiBkZW4gZXJzdGVuIHBhYXIgYXJ0aWtlbG4uIHR1dCBkZW0KaW5oYWx0IGFiZXIga2VpbmVuIGFiYnJ1Y2guCgpCZW4sIGluIHNjaGxlY2h0ZXIgU2ltdWxhdGlvbiBkZXIgR3JpbW1ib3JuJ3NjaGVuIEF1ZmdhYmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBBdWYgdmllbGZhY2hlbiBXdW5zY2guLi4gKENhdHdlYXpsZSwgMjUuIE1haSAyMDAwLCAwOToyMzo0OSk6Cn4jISBybj1CZW5kZWlnaWQgcnQ9OTU5MjM3NTQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU4OTk4MTI2Ck9jaCBNZW5uby4KSWNoIHdvbGx0ZSBzaWUgc28gc2Nob2VuIHZlcnNhdWVybiBsYXNzZW4gOikKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQaGx5IGlzdCBhdWNoIGtlaW4ga29zdHZlcmFlY2h0ZXIuLi4gKE5vbm5lLCAyNS4gTWFpIDIwMDAsIDEwOjQ1OjAwKToKRHUgZGVua3N0ICAgLiBvIE8gKG1pc3QsIGthbm4gaWNoIHNpZSB3aWVkZXIgbmljaHQgYmVzb2ZmZW4gbWFjaGVuIHVuZCBhdWYgZGVtCmtsbyB2ZXJuYXNjaGVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApQaGx5YWtlbiBncmluc3QgRGljaCBmcm9laGxpY2ggYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogQXVmIHZpZWxmYWNoZW4gV3Vuc2NoLi4uIChHbm9tZSwgMjUuIE1haSAyMDAwLCAxMzo1Nzo0MCk6Cn4jISBybj1CZW5kZWlnaWQgcnQ9OTU5MjM3NDUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU4OTk4MTI2CmJlbmRlLCBrYW5uc3QgZHUgbWlyIG1hbCBzYWdlbiwgd296dSBpY2ggZGVuIG11ZWxsIHZvbiBhcHN1IGlnbm9yaWVyZT8KZGFtaXQgaWNoIGlobiBqZXR6dCBkb2NoIGxlc2VuIGRhcmY/IGhtcGYhIDopCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSEFCIElITiEgOikgKEFuYXRvbCwgMjUuIE1haSAyMDAwLCAyMjoxNTo1OSk6Cgo+IGZpIGdhc3QxCkdhc3QxIGlzdCBuaWNodCBhbndlc2VuZC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogTW9iaWxDb20KWnVsZXR6dCBhdXNnZWxvZ2d0OiBEb24sICAxLiBKYW4gMTk3MCwgMDA6NTk6NTkgKDExMTAyZCAyMDoxNToxOCkKVm9sbGVyIE5hbWU6IEdhc3QxIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIKUmFzc2U6IE1lbnNjaCwgIEdpbGRlOiBBYmVudGV1cmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAwMDowMTo0MiwgICBTcGllbGVybGV2ZWw6IDEKCldlciBrYW5uIERBUyBzY2hvbiB0b3BwZW4/ISA6KQpBbmF0b2wgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIQUIgSUhOISA6KSAoU2NobXVnZywgMjYuIE1haSAyMDAwLCAwOToxNjo0OCk6Cn4jISBybj1BbmF0b2wgcnQ9OTU5Mjg1NzU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU5Mjg1NzU5Cj4gZmluZ2VyIGdhc3QxCkdhc3QxIGlzdCBuaWNodCBhbndlc2VuZC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogR2llc3NlbgpadWxldHp0IGF1c2dlbG9nZ3Q6IERvbiwgIDEuIEphbiAxOTcwLCAwMDo1OTo1OSAoMTExMDNkIDA3OjE0OjMzKQpWb2xsZXIgTmFtZTogR2FzdDEgZGVyIGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlcgpSYXNzZTogTWVuc2NoLCAgR2lsZGU6IEFiZW50ZXVyZXIsICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKU3BpZWxlcmxldmVsOiAxCgoKSUNIIDotKSkpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3Ryb21hdXNmYWxsIChHcmltbWJvcm4sIDI2LiBNYWkgMjAwMCwgMTQ6NDc6MzApOgp+IyEgb249R3JpbW1ib3JuIG90PTk1OTM0NTIzOCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49VGlhbWFrIHJ0PTk1OTM0NTE4OCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk1OTM0NDcxNgpLZWluIFByb2JsZW0uIERpZSBVU1YgYmVpIHVucyBpbiBkZXIgRmlybWEgZHVlcmZ0ZSBlaW4ga2xlaW5lcyBLb2ZmZXJyYWRpbwplaW5pZ2UgVGFnZSBhbSBMZWJlbiBoYWx0ZW4ga29lbm5lbi4KR3Jvc3N6dWVnaWcgZGVua2VuLCBkYXMgaXN0IGRlciBTY2hsdWVzc2VsIQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhBQiBJSE4hIDopIChSYXJkaWFuLCAyNi4gTWFpIDIwMDAsIDE1OjIxOjU1KToKfiMhIHJuPVNjaG11Z2cgcnQ9OTU5MzI1NDA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU5Mjg1NzU5CkRhbm4gaGFldHRldCBpaHIgamEgamV0enQgYXVjaCBkZW4gYW0gbGFlbmdzdGVuIG5pY2h0IG1laHIgZWluZ2Vsb2dndGVuClNwaWVsZXIgZ2VmdW5kZW4sIG9kZXI/CgpSYXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbyBzbyAoTWVuc2FuYSwgMjYuIE1haSAyMDAwLCAxNjo1ODoyNCk6CkRlciBLYXVmbWFubiBzYWd0OiBOaWNodCBkcmFlbmdlbG4gLSBFcyBpc3QgZ2VudWcgZGEuCmthdWZlIGd1ZXJ0ZWwKRWluIEtyYWVtZXIgc2FndDogRGFzIGthbm4gaWNoIGltIExhZ2VyIG5pY2h0IGZpbmRlbi4KCk9iIGRlciBndXRlIGRhIGRlbiBNdW5kIG5pY2h0IHp1IHZvbGwgbmltbXQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYXVmIEFsdGFyIFJFR08gSEVSQkFNIChHbG9pbiwgMjYuIE1haSAyMDAwLCAyMTozNzozOSk6Cn4jISBvbj1HbG9pbiBvdD05NTkzNjk4Mjkgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVNjaG5lZSBydD05NTkzNjk3ODMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NTkzNjk3ODMKV2llIGhhYmUgaWNoIGRhcyB2ZXJtaXNzdCA6KQoKR2xvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpZSBzb2xsIGljaCBkYXMgdmVyc3RlaG4/IChDaW5kZXJlbGxhLCAyNy4gTWFpIDIwMDAsIDAwOjIwOjExKToKRHUgbXVybWVsc3QgZGllIHZvcmdlc2NocmllYmVuZW4gV29ydGUgZnVlciBkZW4gR2lmdHBmZWlsLgpBdXMgRGVpbmVyIEhhbmQgc2NoaWVzc3QgZWluIGdpZnRncnVlbmVyIFBmZWlsIGF1ZiBkZW4gRm9yc2NoZXJwdW5rdHNhbW1sZXIuCkRlaW4gR2lmdHBmZWlsIGJvaHJ0IHNpY2ggaW4gZGVuIEJvZGVuLgpEdSBsZXJuc3QgZXR3YXMgYXVzIERlaW5lbSBFcmZvbGcuCkR1IGxlcm5zdCBldHdhcyBhdXMgRGVpbmVtIEVyZm9sZy4KSG1wZi4uLgpIbXBmLi4uCkNpbmR5ICp2ZXJzdGVodCBnYXJuaXggbWVocioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhldXRlIGluIGRlciBTU1AgKFNseWZveCwgMjcuIE1haSAyMDAwLCAwMTowMjowOSk6CkRpZSBMZWljaGUgSGVsaXggUG9tYXRhcy4gKDIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZWluIHByZWRpZ2VuLCBhYmVyIFRlZSB0cmlua2VuIC4uLiAoVHJhbmNlLCAyNy4gTWFpIDIwMDAsIDEzOjIzOjM0KToKU3BlbGxmaXJlIHN1Y2h0IFdlaW4sIFdlaWIgdW5kIEdlc2FuZy4KU3BlbGxmaXJlIHN0cmFobHQgdWViZXIgZGFzIGdhbnplIEdlc2ljaHQsIGFscyBlciBlaW5lbiBEYXJqZWVsaW5nIHRyaW5rdC4KU3BlbGxmaXJlIHN0cmFobHQgdWViZXIgZGFzIGdhbnplIEdlc2ljaHQsIGFscyBlciBlaW5lbiBBc3NhbSB0cmlua3QuClNwZWxsZmlyZSBoaW50ZXJsYWVzc3QgZWluZSBicmVubmVuZGUgQXNjaGVzcHVyIGF1ZiBkaWUgVG9pbGV0dGUuCgpUcmFuY2UsIGx1c3RvcmllbnRpZXJ0ZXIhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprdXJ6IGVudHNjaGxvc3NlbiAoQXNoYW4sIDI4LiBNYWkgMjAwMCwgMTQ6Mzk6NDgpOgpIaXNBc3VsIGRlbmt0IG8gTyAoVmllbGxlaWNodCBnaWJ0J3MgamEgaGllciB3YXMgenUgc2NobGFjaHRlbikgTyBvLgpIaXNBc3VsIHJlbm50IGdlZ2VuIGVpbmUgdmVyc2NobG9zc2VuZSBUdWVyLgpIaXNBc3VsIHNjaGxhY2h0ZXQgZG9jaCB3b2FuZGVycyB1bmQgZ2VodCBuYWNoIE5vcmRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNhY2hlbiBnaWJ0cyA6KSAoQmVsZ2FyaWFkLCAyOC4gTWFpIDIwMDAsIDE3OjI1OjU4KToKZWluIGRyYWtvbmlzY2hlciBXYWZmZW5ndWVydGVsIHZlcnN1Y2h0IGtyYW1wZmhhZnQsIERlaW5lbiBDZXQnT2lsdAphdWZ6dWhlYmVuLiBFciBzY2hlaW50IGtsZXB0b21hbiB2ZXJhbmxhZ3QgenUgc2Vpbi4KCkFtYSogdHUgd2FzIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp2b24gd2VnZW4hIChHdWFyZCwgMjkuIE1haSAyMDAwLCAxNzo0MDoxNCk6CkFscyBCaWVyc2NodWV0dGxlciAoenUgaXJnZW5kd2FzIG11ZXNzZW4gZGllIGphIGd1dCBzZWluKSBrYW5uIGljaCBldWNoIG51cgpzYWdlbiAuLi4gQUxMRVMgQkVTQ0hJU1MhCmhpZXIgc3RlaHRzIHNjaHdhcnogYXVmIHdlaXNzOgoKRGFzIGthbXBmZXJwcm9idGUgZ3Jvc3NlIGJlc29mZmVuZSBNb29yaHVobiBpc3Qgc3RvY2tudWVjaHRlcm4uCkRhcyBrYW1wZmVycHJvYnRlIGdyb3NzZSBiZXNvZmZlbmUgTW9vcmh1aG4gdGlwcGVsdCB2b24gZWluZW0gQmVpbiBhdWYgYW5kZXJlLgpEYXMga2FtcGZlcnByb2J0ZSBncm9zc2UgYmVzb2ZmZW5lIE1vb3JodWhuIGhhdCB2aWVsIHp1dmllbCBnZWdlc3Nlbi4KRGFzIGthbXBmZXJwcm9idGUgZ3Jvc3NlIGJlc29mZmVuZSBNb29yaHVobiBpc3QgbmljaHQgdmVyZ2lmdGV0LgoKSWNoIHd1ZXJkZSBzYWdlbiAuLi4gZGllIGRpbmdlciBoYWJlbiBzaWNoIGVpbmZhY2ggYmxvc3MgdWViZXJmcmVzc2VuIHNvbnN0Cm5peCAuLi4gdm9uIHdlZ2VuIGJlc29mZmVuIC4uLiBkYXMgaWNoIG5pY2h0IGxhY2hlIC4uLiA6LSkKCih2aWVsbGVpY2h0IGthbm4gbWFuIGRhcyBqYSBtYWwgYWVuZGVybiEpKSkKCkd1YXJkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcyBnaWJ0IGVpbiBMZWJlbiBuYWNoIGRlbSBUb2QhIChMdWcsIDMwLiBNYWkgMjAwMCwgMDA6NDU6MDcpOgoKRGVyIEdhcmRld2FlY2h0ZXIgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRGVyIFdhZWNodGVyIGRlciBHYXJkZSBiZWFldWd0IERpY2ggbWlzc3RyYXVpc2NoLgoKClVuZCBkYXMgaXN0IGRlciBCZXdlaXMuLi4KQXRoZWlzdApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdGluZyBpc3QgamV0enQgZWluIE1hZ2llciEgKEFuYXRvbCwgMzAuIE1haSAyMDAwLCAxOTozMDo1MSk6Cn4jISBybj1NZXJsaW4gcnQ9OTU5NzA3NzQyIHJnPXN0dWZlbgp+IyEgdGlkPTk1OTcwNzc0MgpJY2ggaG9lcmUgV3VyemVsIGF1cyBkZXIgRmVybmUgc2luZ2VuOiAnJ09vcHMsIEkgZGlkIGl0IGFnYWluLi4uJycKCkFuYXRvbCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IERpZSBGYWNrZWwgKEFuYXRvbCwgMzAuIE1haSAyMDAwLCAyMTo0OToyNyk6Cn4jISBybj1BcmsgcnQ9OTU5NzE2MDI3IHJnPXB1aXoKfiMhIHRpZD05NTk2Mjg1OTYKRXJzdCBiZXR0ZWxuLCBkYW5uIG1vdHplbiEgV2lsbHN0IER1IFphdWJlcmVyIHdlcmRlbiBvZGVyIHdhcz8hIDopCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBEaWUgRmFja2VsIChBcmssIDMwLiBNYWkgMjAwMCwgMjE6NTM6MDApOgp+IyEgcm49QW5hdG9sIHJ0PTk1OTcxNjE2NyByZz1zY2htYXJybgp+IyEgdGlkPTk1OTYyODU5NgpJY2ggbmljaHQsIG1laW4gdW5hdWZnZWtsYWVydGVyIFNwaWVsZXJ6d2VpdGkgLi4uIGFsc28gaXJnZW5kd2FubiBtYWwgLi4uIGFsc28KbmljaHQgZGVmaW5pdGl2IC4uLiBhbHNvIGljaCB3ZWlzcyBuZXQgLi4uCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdGluZyBpc3QgamV0enQgZWluIE1hZ2llciEgKE11cGZlbCwgMzAuIE1haSAyMDAwLCAyMjo1NzozNyk6Cn4jISBybj1BbmF0b2wgcnQ9OTU5NzA3ODUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTU5NzA3NzQyCkhlaXNzdCBqYSBhdWNoOiBEaWUgV3VyemVsIGFsbGVuIFVlYmVscy4gOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZWJlbiBPY2hzZW5mcm9lc2NoZW4gZ2lidCBlcyBudW4gYXVjaCBPcmtmcm9lc2NoZSA6LSkgKExhbmZlYXIsIDMwLiBNYWkgMjAwMCwgMjM6MzY6MzgpOgpEdSBmbHVlc3RlcnN0IGRlbSBPcmsgYmVzY2h3b2VyZW5kZSBXb3J0ZSBpbnMgT2hyLgpEZXIgT3JrIHNjaHJ1bXBmdCB6dXNhbW1lbiwgbGFldWZ0IGdydWVuIGFuIHVuZCB2ZXJ3YW5kZWx0IHNpY2ggbGFuZ3NhbSBpbgplaW5lbiBGcm9zY2guCkR1IGJpc3QgaW0gSG9laGxlbmxhYnlyaW50aCBkZXIgU2NocmVja2Vuc3NwaXR6ZS4gRHVua2xlIEdhZW5nZSBmdWVocmVuCm5hY2ggTm9yZGVuLCBTdWVkZW4gdW5kIFdlc3Rlbi4gRGVyIHN1ZWRsaWNoZSBHYW5nIGlzdCBldHdhcyBtZXJrd3VlcmRpZywKZGVubiBzZWluIEVpbmdhbmcgaXN0IG1pdCBnbGFlbnplbmRlbSBNZXRhbGwgc2VsdHNhbSBiZXNjaGxhZ2VuLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KRWluIGtsZWluZXIgRnJvc2NoIG5hbWVucyBPcmsuCj4gRHUgd2FlbHp0IERpY2ggdm9yIExhY2hlbiBhdWYgZGVtIEJvZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGF1ZiBhbHRhciBSRUdPIEhFUkJBTSAoQW5hdG9sLCAzMS4gTWFpIDIwMDAsIDA0OjA0OjU0KToKfiMhIHJuPVdvbyBydD05NTk3Mzg2Njggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NTk3Mzg2NjgKU3Vlc3MgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogYXVmIGFsdGFyIFJFR08gSEVSQkFNIChLdGFyLCAzMS4gTWFpIDIwMDAsIDA0OjA1OjQwKToKfiMhIHJuPUFuYXRvbCBydD05NTk3Mzg2OTQgcmc9c2NobWFycm4KfiMhIHRpZD05NTk3Mzg2NjgKRGVua2UgaWNoIGF1Y2ggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiB3YWhyZXIgR2xhdWJlbnN2ZXJrdWVuZGVyISAoSHVtbmksIDMxLiBNYWkgMjAwMCwgMDk6MzA6NTQpOgpFbGJlcmV0IGZsaWVndCBoZXJlaW4uCkVsYmVyZXQgc2FndDogRGVtIGZyZWllbiBHZWlzdCBkZXIgR2VtZWluc2NoYWZ0IGRlciBUcnZlcyB1bnRlcndlcmZlbiB3aXIgdW5zLApFbGJlcmV0IHNhZ3Q6IHdvaGwgd2lzc2VuZCwgZGFzcyB3aXIgVGVpbCBzZWluZXIgc2luZC4gS2VpbiBhZXVzc2VyZXMgR2VzZXR6CkVsYmVyZXQgc2FndDogc29sbCB1bnNlciBIYW5kZWxuIGJlc2NocmFlbmtlbiwga2VpbiBmcmVtZGVyIEhlcnJzY2hlciBXaWxsa3VlcgpFbGJlcmV0IHNhZ3Q6IHp1IFJlY2h0IGVyaGViZW4uCkVsYmVyZXQgc2FndDogQmVzdGltbXRoZWl0IHNlaSB1bnNlcmUgZXJzdGUgVHVnZW5kLCBkaWUgVHJldWUgenUgV2VnIHVuZCBaaWVsCkVsYmVyZXQgc2FndDogZWlzZXJuLiBEZW0gcmVjaHRlbiBFbnRzY2hsdXNzIHZlcnBmbGljaHRlbiB3aXIgdW5zIG1pdCBkZW0KRWxiZXJldCBzYWd0OiBQZmFuZCB1bnNlcmVzIExlYmVucy4KRWxiZXJldCBzYWd0OiBWZXJzdGFuZGVza2xhcmhlaXQgdW5kIFNpbm5lc3NjaGFlcmZlIGxlaXRlIHVuc2VyIERlbmtlbi4KRWxiZXJldCBzYWd0OiBOdXR6bG9zZXMgdW5kIEVpdGxlcyB0cm9wZmUgYWIgYW4gdW5zLCB2ZXJhY2h0ZW5zd2VydCBzZWllbgpFbGJlcmV0IHNhZ3Q6IER1bW1oZWl0IHVuZCBJZ25vcmFuei4KRWxiZXJldCBncmluc3QuCkVsYmVyZXQgZmxpZWd0IG5hY2ggT3N0ZW4uCgpEYSBoYXQgamVtYW5kIGRlbiBLb2RleCB2ZXJpbm5lcmxpY2h0Li53b3cuCgpIdW1uaSwgYmxlaWJ0IHRyb3R6ZGVtIEJpZXJzY2h1ZXR0bGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouLi4gKEdsb2luLCAzMS4gTWFpIDIwMDAsIDE5OjU1OjQxKToKRHUgdGVpbHN0IE11YWRpYiBtaXQ6IEtlbm4gZGVuIFdlZyB6dSBEaXIgbmljaHQuCkR1IHRlaWxzdCBNdWFkaWIgbWl0OiBhUmtzCkVsIE11YWRpYiB0ZWlsdCBEaXIgbWl0OiBkZW4ga2VubiBpY2ggYXVjaCBuaWNoLCBtYWNoIGRpciBuaXggZHJhdXMKRHUgdGVpbHN0IE11YWRpYiBtaXQ6ICJnb3RvIGdsb2luIiBvZGVyICJhdCBnbG9pbiB2ZXJuZWlnZSIKRWwgTXVhZGliIHRlaWx0IERpciBtaXQ6IGRhbm4gYmluIGljaCBiZWkgZGlyIGFiZXIgbmljaCBiZWkgbWlyCkVsIE11YWRpYiB0ZWlsdCBEaXIgbWl0OiBhcmdscyBoYWIgaWNoIGViZW4gZ2VzYWd0IGljaCB3YWVyZSBuaWNoIGJlaSBtaXIgPwpEdSB0ZWlsc3QgTXVhZGliIG1pdDogSWNoIGthbm4gRGlyIGF1Y2ggbmljaHQgaGVsZmVuIDspCkR1IHRlaWxzdCBNdWFkaWIgbWl0OiBKZXBwIDopCkVsIE11YWRpYiB0ZWlsdCBEaXIgbWl0OiBvaGplCgpBYmVyIHdlciBpc3Qgc2NobyBiZWkgc2ljaCA6KQpHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gZ2Vob2VydCBzaWNoIGRhcy4uLiAoUmF5emVlbCwgIDEuIEp1biAyMDAwLCAxNDowNjoyNyk6Cn4jISBvbj1SYXl6ZWVsIG90PTk1OTg2MDgyNiBvZz1hbGxnZW1laW5lcwpEdSBiZXNjaHdvZXJzdCB1bmhlaW1saWNoZSBLcmFlZnRlIHVuZCBvZWZmbmVzdCBlaW4gVG9yIGluIGFuZGVyZSBXZWx0ZW4uCklya2l0aXMgZXJzY2hlaW50IGluIGVpbmVyIEpvZndvbGtlLgpKYXNvbnJpZ2lkICBJIFMgVCAgSiBFIFQgWiBUICBOIEkgQyBIIFQgIE0gRSBIIFIgIEQgQSAhISEgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3dhcyAoSGVyb21jZmx5LCAgMS4gSnVuIDIwMDAsIDE1OjUwOjA2KToKV2llIGhlaXNzdCBEdSBkZW5uID8gdW56ZWxncnVtcGYKU2Nob2VuLCBkYXNzIER1IHdpZWRlciBkYSBiaXN0LCB1bnplbGdydW1wZiEKUGFzc3dvcmQ6IFhYWFhYWFhYWFgKRHUgbmltbXN0IHNjaG9uIGFtIFNwaWVsIHRlaWwhClZlcndlbmRlIERlaW5lIGFsdGUgc3RlcmJsaWNoZSBIdWVsbGUgLi4uCktyZXV6dW5nIE9zdHdhbGwtQWthZGVtaWVzdHJhc3NlLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCkVpbiBIYXVzLgpEZXIgUGxhbndhZ2VuIGVpbmVzIGZhaHJlbmRlbiBHYXVrbGVycy4KRGFzIGxldHp0ZSBNYWwga2Ftc3QgRHUgdm9uIGRpYWw4LTEyLm5vcmlzLW9ubGluZS5kZQpnbGhnamssIGduc2RrZiwgZ2pza2Rmd2UsIGZqc2RrLCBnanNlZnNlamEgdW5kIGZqYXNka2Zkd2Ugc2luZCBpbSBTcGllbC4KQW53ZXNlbmRlIEVyd2FydGV0ZTogamZrc2QuCj4gRWluaWdlIFJhZXViZXIgemllaGVuIERpY2ggaW4gZWluIEhhdXMuClNpZSB3b2xsZW4gYWxsIERlaW4gR2VsZCEKRWluIEhhdXMuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiByYXVzLgpFaW4gZ2VtZWluZXIgUmFldWJlci4KRWluIGdlbWVpbmVyIFJhZXViZXIuCkVpbiBnZW1laW5lciBSYWV1YmVyLgpFaW4gZ2VtZWluZXIgUmFldWJlci4KRWluIGdlbWVpbmVyIFJhZXViZXIuCkVpbiBnZW1laW5lciBSYWV1YmVyLgptaXR0bGVyd2VpbGUgc2luZCBkaWUgYWJlciByaWNodGlnIGF1c2dlc2NobGFmZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJyYXYgOikgKERpZWRlciwgIDEuIEp1biAyMDAwLCAyMjoxOTozOCk6ClBlcnRpbmF4ZSBmbGllZ3QgaGVyZWluLgpUdXRzenQgc2NobGVpY2h0IGJsdXRnaWVyaWcgaGVyZWluLgpFbmVyZ2lzY2ggbmltbXQgUGVydGluYXhlIGlocmVuIEtydWVja3N0b2NrIGZlc3QgaW4gZGllIEhhbmQgdW5kIHZlcnN1Y2h0LCBEaXIKZGFtaXQgZGllIEJlaW5lIHdlZ3p1emllaGVuLiBadW0gR2x1ZWNrIHdhciBkaWUgQWt0aW9uIHNjaG9uIGltIEFuc2F0egplcmtlbm5iYXIsIHNvIGRhc3MgRHUgZ2VzY2hpY2t0IGF1c3dlaWNoZW4ga2FubnN0LgpEdSBrbnVycnN0IFBlcnRpbmF4ZSBhbi4KUGVydGluYXhlIGZsaWVndCBuYWNoIE5vcmRlbi4KCip0YWV0c2NoZWwqIDopCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClphdWJpcyBhdWZ3ZXJ0ZW4hIChMaWFyYSwgIDQuIEp1biAyMDAwLCAxMzoxNDo0Nyk6CkRhIHNpZWh0IG1hbidzIG1hbCB3aWVkZXI6IDstKQoKOnN0IG1lbG9uZQpEdSBzdGFycnN0IGRpZSBSaWVzZW5tZWxvbmUgYW4gdW5kIGJydWVsbHN0OiBTRUkgU1RJTEwhCkR1IGJyaW5nc3QgZGllIFJpZXNlbm1lbG9uZSB6dW0gU2Nod2VpZ2VuLgpEZWluIFphdWJlcnN0YWIgdW50ZXJzdHVldHp0IERpY2ggYmVpIGRlbSBTcHJ1Y2guCkRpZSBNZWxvbmUgcmV6aXRpZXJ0OiBNZWluIFVzZXIsIE1laW4gVXNlciwgdW5kIGhvZXJlc3QgRHUgbmljaHQsCkRpZSBNZWxvbmUgcmV6aXRpZXJ0OiB3YXMgTGFna29lbmlnIG1pciBsZWlzZSB2ZXJzcHJpY2h0PwpEaWUgTWVsb25lIHJleml0aWVydDogU2VpIHJ1aGlnLCBibGVpYmUgcnVoaWcsIG1laW4gUEMsCkRpZSBNZWxvbmUgcmV6aXRpZXJ0OiBpbiBkdWVycmVuIExlaXR1bmdlbiBzYWV1c2VsdCBkYXMgUmF1c2NoZW4uCgpMaWFyYSwgWndlcmdlbnphdWJlcmluZSwgcm9lY2hlbHQgV2ltIGFuIHVuZCB3aWxsIFJ1aGUgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc293YXMgKFJhcmRpYW4sICA1LiBKdW4gMjAwMCwgMTI6NTU6MDMpOgp+IyEgcm49SGVyb21jZmx5IHJ0PTk1OTg2NzQwNiByZz1zY2htYXJybgp+IyEgdGlkPTk1OTg2NzQwNgpIbS4uLiBIZXJvLCBEdSBrZW5uc3QgamEgdmllbGxlaWNodCBrb21pc2NoZSBMZXV0ZS4uLiA7KQouLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJlaSBMYXJzLCB3aWVkZXIgbWFsIG5ldHQ6IChUcmFuY2UsICA1LiBKdW4gMjAwMCwgMjA6NTE6MjYpOgoKICAgICAgICAgICAgICAgICAgICAgTGFycycgQnVlcm8KSGllciBydWh0IHNpY2ggTGFycyBhdXMsIHdlbm4gZXIgbmljaHQgbWFsIHdpZWRlciB1bnRlcndlZ3MgaXN0LCB1bQpkZW0gVG9kIG9kZXIgVGV1ZmVsIGFybWUgU3BpZWxlcnNlZWxlbiBhYnp1cmluZ2VuLgpXZWl0ZXIgcmVjaHRzIGlzdCBlaW4gcHJvdmlzb3Jpc2NoZXIgQXVzZ2FuZy4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHJhdXMgdW5kIHJlY2h0cy4KTGFycywgZGVyIFVyZ290dCBhbGxlciBNdWRnb2V0dGVyLgoKW01vZXJkZXI6R2Vpc3QgZWluZXMgRmV1ZXJ0ZXVmZWxzXSBXdWVuc2NodCBtaXIgbmUga3VyemUgVG9kZXNzZXF1ZW56LCBpY2ggaGFiCltNb2VyZGVyOkdlaXN0IGVpbmVzIEZldWVydGV1ZmVsc10gc2llIFVnaSB6dSB2ZXJkYW5rZW4gLi4uCgpMYXJzIGZyYWd0IDogJ0thbm4gaWNoIERpciBoZWxmZW4gPycKW0JlaWxlaWQ6U2luYV0gdWFoOigKCk1vbWVudC4KCgpEdSB3aXJzdCBkYXMgdW5ndXRlIEdlZnVlaGwgbmljaHQgbG9zLCBkYXNzIGhpZXIgaXJnZW5kZXR3YXMgbmljaHQgZ2Fuegprb3JyZWt0IGFibGFldWZ0LgpGbGVja3R5cGh1cyBpc3QgbnVuIG5pY2h0IG1laHIgdm9uIHdpcmJlbG5kZW4gTWVzc2VybiB1bWdlYmVuLgoKCkdlbmF1Z2Vub21tZW4gaGFzdCBEdSBqZW1hbmRlbiBlcndhcnRldCwgZGVyIG1pdCBkdWVzdGVyZXIgU3RpbW1lIHVuZAppbiBHcm9zc2J1Y2hzdGFiZW4gbWl0IERpciByZWRldC4gTGFycycgZnJldW5kbGljaGUgU3RpbW1lIHBhc3N0IERpcgppcmdlbmR3aWUgbmljaHQgaW4gZGVuIEtyYW0sIGRlbm4gc2NobGllc3NsaWNoIGJpc3QgRHUgZ2VyYWRlIGViZW4gZXJzdApnZXN0b3JiZW4uLi4hCkRlciBIZWlsaWdlbnNjaGVpbiB1ZWJlciBkZW0gSGF1cHRlIEZsZWNrdHlwaHVzJyB2ZXJnbGltbXQuCgpUcmFuY2UsIGViZW4gYXVmZXJzdGFuZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2Vja2RpZW5zdD8gKEdvbGFzLCAgNi4gSnVuIDIwMDAsIDE3OjQwOjIyKToKRXR3YXMgZXJzY2hlaW50IGluIGVpbmVyIFJhdWNod29sa2UuCkRpZSBEcmFjaGVuc2NoaWxka3JvZXRlIHdhY2h0IGF1Zi4KRXR3YXMgdmVyc2Nod2luZGV0IG1pdCBLbmFsbCB1bmQgU2Nod2VmZWxkdWZ0LgoKCnVuZCBkYXMgYWxsZXMgaW4gMyBzZWt1bmRlbiBhdWYgbWVpbmVtIGJpbGRzY2hpcm0gZXJzY2hpZW5lbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbWFuLXBhZ2UgZnVlciBkZW4gYmVmZWhsIHNleCAoSGlnaHQsICA3LiBKdW4gMjAwMCwgMDE6MDQ6MTkpOgptYW4ocykgICAgICAgICAgICAgIEh1bWFuIGludGVyYWN0aW9uIG1ldGhvZHMgICAgICAgICAgIG1hbihzKQoKTkFNRQogICAgICAgc2V4IC0gc3RhcnQgaW50aW1hdGUgaW50ZXJhY3Rpb24gYmV0d2VlbiBodW1hbnMKClNZTk9QU0lTCiAgICAgICBzZXggWy0tdHlwZSBvcmFsfGFuYWx8dmFnaW5hbHxwZW5pYWx8bWFudWFsXQogICAgICAgICAgIFstLXByZWYgaGV0ZXJvfGdheXxsZXNiaWFuXQogICAgICAgICAgIFstLW1vZGUgc2luZ2xlfGNvdXBsZXx0cmlwbGV8bXVsdGlwbGVdCiAgICAgICAgICAgWy0tbG93ZG5lc3MgKG51bSldIFstLWxvY2FsaXR5IChzdHJpbmcpIFtmaWxlXV0KICAgICAgICAgICBbLS1wb3NpdGlvbl0gWy0tZ2VuZGVyIChudW0pfChzdHJpbmcpXQoKREVTQ1JJUFRJT04KICAgICAgIFRoaXMgZG9jdW1lbnRhdGlvbiBpcyBubyBsb25nZXIgYmVpbmcgbWFpbnRhaW5lZCAgYW5kICBtYXkKICAgICAgIGJlIGluYWNjdXJhdGUgb3IgaW5jb21wbGV0ZS4gIFBlZXAgdHYgcHJvZ3JhbW1lIGlzIG5vdyB0aGUKICAgICAgIGF1dGhvcml0YXRpdmUgc291cmNlLgoKICAgICAgIFRoaXMgbWFudWFsIHBhZ2UgZG9jdW1lbnRzIHRoZSBHTlUgdmVyc2lvbiBvZiBzZXguICBzZXggaXMKICAgICAgIGFsd2F5cyAgcnVuICBhcyAgZm9yZWdyb3VuZCBwcm9jZXNzICBhbmQgY2FuIG5vdCBiZSBmb3JrZWQuCgpPUFRJT05TCiAgICAgICAtLXR5cGUKICAgICAgICAgICAgIEFsbCBvciBhdCBsZWFzdCBvbmUgb2YgdGhpcyBvcHRpb25zIGNhbiBiZSBnaXZlbi4gSWYKICAgICAgICAgICAgIG1vZGUgICdzaW5nbGUnICBpcyBnaXZlbiwgIHRoZSB2YWx1ZSBvZiB0eXBlIHdpbGwgYmUKICAgICAgICAgICAgIG92ZXJyaWRkZW4uIFRoZW4gaXQgZGVmYXVsdHMgdG8gJ21hbnVhbCcuCgogICAgICAgLS1wcmVmCiAgICAgICAgICAgICBUaGUgcHJlZiBvcHRpb24gdGVsbHMgICdzZXgnIHdoaWNoIG1ldGhvZHMgaXQgc2hvdWxkCiAgICAgICAgICAgICBzdXBwbHkuICBOb3RlIHRoYXQgIG5vdCBhbGwgIGludGVyZmFjZXMgZm9yIHR5cGUgYXJlCiAgICAgICAgICAgICBhdmFpbGFibGUgd2l0aCBldmVyeSBvcHRpb24gZm9yIHByZWYuICBMb29rICBhdCBzZWMtCiAgICAgICAgICAgICB0aW9uICdDT01QQVRJQkxJVFknIGZvciBkZXRhaWxzLgoKICAgICAgIC0tbW9kZQogICAgICAgICAgICAgVGVsbHMgc2V4IGlmIHRoZXJlIGFyZSAgb25lLCB0d28sIHRocmVlIG9yIGV2ZW4gbW9yZQogICAgICAgICAgICAgY2xpZW50cyBpbnZvbHZlZC4gSWYgbW9kZSBzaW5nbGUgaXMgZ2l2ZW4gJ3R5cGUnIGRlLQogICAgICAgICAgICAgZmF1bHRzIHRvIG1hbnVhbC4KCiAgICAgICAtLWxvd2RuZXNzCiAgICAgICAgICAgICBUaGlzIG9wdGlvbiB3YW50cyBhIHRocmVlIGRpZ2l0IG51bWJlci4gVGhlIGZpcnN0IG9mCiAgICAgICAgICAgICB0aG9zZSBpcyB0aGUgaW5pdGlhbCB2YWx1ZSwgIHRoZSAgc2Vjb25kICBnaXZlcyAgdGhlCiAgICAgICAgICAgICBtZWRpdW0gIG9yIG1heCB2YWx1ZSwgIHRoZSAgbGFzdCBvbmUgZ2l2ZXMgdGhlIGZpbmFsCiAgICAgICAgICAgICB2YWx1ZS4gRGVmYXVsdCBpcyAyNzAuCgogICAgICAgLS1sb2NhbGl0eSAoc3RyaW5nKQogICAgICAgICAgICAgQSBzeXN0ZW0gc3BlY2lmaWMgdmFsdWUuICBzdHJpbmcgY2FuIGJlIGFueSBwcmVkZWZpLQogICAgICAgICAgICAgbmVkIHZhbHVlICBmcm9tIG9uZSBvZiB0aGUgIGNvbmZpZ3VyYXRpb24gIGZpbGVzICBpbgogICAgICAgICAgICAgL2V0Yy9saXZpbmcvLgogICAgICAgICAgICAgTm9ybWFsbHkgL2V0Yy9saXZpbmcvY29uZi5mbGF0IHNob3VsZCBleGlzdCBvbiBldmVyeQogICAgICAgICAgICAgc3lzdGVtLCBhcyB3ZWxsIGFzIC9ldGMvbGl2aW5nL2NvbmYuaG9saWRheS4KCiAgICAgICAgICAgICBJZiAnZmlsZScgaXMgZ2l2ZW4sIGFuIGFsdGVybmF0aXZlIGNvbmZpZ3VyYXRpb24gY2FuCiAgICAgICAgICAgICBiZSB1c2VkLgoKICAgICAgICAtLXBvc3RpdGlvbiAoc3RyaW5nKQogICAgICAgICAgICAgRGVmYXVsdCBpcyAnbWlzc2lvbmFyeScsIGJ1dCBhbHNvIGFueSBvdGhlciBjb25maWd1LQogICAgICAgICAgICAgcmF0aW9uIGZpbGUgY2FuIGJlIHVzZWQuICBOb3QgdGhhdCAgL2V0Yy9maXRuZXNzICBpcwogICAgICAgICAgICAgY2hlY2tlZCBiZWZvcmUgaW52b2tpbmcgc2V4LgoKICAgICAgICAtLWdlbmRlciAobnVtKXwoc3RyaW5nKQogICAgICAgICAgICAgV2l0aCB0aGlzIG9wdGlvbiB0aGUgZ2VuZGVyIG9mIHRoZSBpbnZva2VkIGNsaWVudHMgaXMKICAgICAgICAgICAgIGRlZmluZWQuICBUaGlzIGNhbiAgZWl0aGVyIGJlIGJ5IGEgbnVtYmVyICB0cmVhdGVkIGFzCiAgICAgICAgICAgICBiaW5hcnkgdmFsdWUsICAxIG1lYW5pbmcgZmVtYWxlLCAyIG1lYW5pbmcgbWFsZS4gIHNleAogICAgICAgICAgICAgYWx0aG91Z2ggZXhwZWN0cyB0aGUgdmFsdWUgYXMgZGVjaW1hbC4gIE9yIHRoZSAgdmFsdWUKICAgICAgICAgICAgIGNhbiBiZSBnaXZlbiBhcyB2YXJ5aW5nIGxlbmd0aCBzdHJpbmcsICBjb25zaXN0aW5nIG9mCiAgICAgICAgICAgICBvZiAnZicgb3IgJ20nIGxldHRlcnMuCgogICAgICAgICAgICAgSWYgdGhlcmUgYXJlIG1vcmUgbGV0dGVycyBvciBiaW5hcnkgZGlnaXRzIGdpdmVuIHRoYW4KICAgICAgICAgICAgIGNsaWVudHMgZGVmaW5lZCB3aXRoIG1vZGUsICB0aGUgc3VwZXJmbG91b3Mgb25lcyB3aWxsCiAgICAgICAgICAgICBiZSBpZ25vcmVkLiAgIElmICB0aGVyZSAgYXJlIG1vcmUgY2xpZW50cyB0aGFuIGdlbmRlciAKICAgICAgICAgICAgIGlkZW50aWZpZXJzIHRoZSBsYXN0IGlkZW50aWZpZXIgaXMgIHRha2VuIGZvciBhbGwgcmUtCiAgICAgICAgICAgICBtYWluZGluZyBjbGllbnRzLgoKICAgICAgICBzZXggb3BlcmF0ZXMgZ2VuZGVyIGRlcGVuZGVudC4gQWx0aG91Z2ggaW4gdGhlIHBhc3QgdGhlcmUKICAgICAgICBoYXZlIGJlZW4gYXR0ZW1wdHMgIHRvIGJ1aWxkIGEgZ2VuZGVyIGluZGVwZW50IHZlcnNpb24gb2YKICAgICAgICBzZXgsIHRob3NlIGhhdmVuJ3QgeWV0IGJlZW4gc3VjY2Vzc2Z1bC4KCiAgICAgICAgc2V4IHVzZXMgY29tcGxleCB0aHJlYWRpbmcsIGJ1dCB5b3UgbWF5IGdldCB0aW1lb3V0cyBjYWxsLQogICAgICAgIGluZyBpdCBpbiBhIHRvbyBjb21wbGV4IGVudmlyb25tZW50LiBVc3VhbGx5IHlvdSBjYW4gcmVseQogICAgICAgIG9uIHRoZSBidWlsdC1pbiByZWNvdmVyIG1ldGhvZCwgYWx0aG91Z2ggdGhpcyBvbmUgd2lsbCBub3QKICAgICAgICB3b3JrIHdoZW4gc2V4IGlzIGNhbGxlZCB0b2dldGhlciB3aXRoICdkcnVncycuCgpGSUxFUwogICAgICAgIC9ldGMvY29uZi5zZXh1YWxzCiAgICAgICAgL3Vzci9zYmluL2luLmVtb3Rpb25kCiAgICAgICAgL3Vzci9iaW4vc2V4CgpTRUUgQUxTTwogICAgICAgIGVtb3Rpb24oMSksIGF0dHJhY3Rpb24oMSksIGNvbmYuZmxhdCg1KQoKU1RBTkRBUkRTCiAgICAgICAgUkZDLTEwOTcgVEVMTkVUIFNVQkxJTUlOQUwtTUVTU0FHRQogICAgICAgIFJGQy0xNDM3IE1JTUUgQ29udGVudC1UeXBlcyBmb3IgYSBOZXcgTWVkaXVtCgpCVUdTCiAgICAgICAgVGhlcmUgaGF2ZSBiZWVuIGEgbG90IG9mICdlbSByZXBvcnRlZC4gWWV0IG5vb25lIGtub3dzIGhvdwogICAgICAgIHRvIGdldCByaWQgb2YgdGhlbS4KCgpIdW1hbiAxLjAgICAgICAgICAgICAgICAgICAgICBTZXB0ZW1iZXIgMTAsIDE5OTkgICAgICAgICAgICAgICAgICAgICAgIDIyIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRXMgZ2VzY2hlaGVuIG5vY2ggWmVpY2hlbiB1bmQgd3VuZGVyISAoQW5hdG9sLCAgNy4gSnVuIDIwMDAsIDIyOjI0OjA5KToKfiMhIHJuPUhpZ2h0IHJ0PTk2MDQwOTQzMSByZz1kLmdlYmlyZ2UKfiMhIHRpZD05NjAzNzY5MjIKU2NoYWRlbmZyZXVkZSBpc3QgZWluZSBkZXIgc2Nob2Vuc3RlbiBGcmV1ZGVuLCBIaWdodC4uLiA7KQoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbnNwaXJhdGlvbiAoTHVnLCAgNy4gSnVuIDIwMDAsIDIzOjI5OjM5KToKCkVpbiB3YWhyZXIgS3VlbnN0bGVyIGhhdCBlcyBzY2h3ZXIsIGRhcnVtIGlzdCBtYW4gZnVlciBqZWRlIEVpbmdlYnVuZyBkYW5rYmFyOgoKVHN1bmFtaSB0ZWlsdCBEaXIgbWl0OiBkYXMgd2FyIGphIG1hbCBuZSByaWNodGlnIGd1dGUgRWluZ2VidW5nIDopKSkgc28gaGFiClRzdW5hbWkgdGVpbHQgRGlyIG1pdDogaWNoIERpY2ggaW4gRXJpbm5lcnVuZyA6KSB3ZWl0ZXIgc28gOikpCkR1IHRlaWxzdCBUc3VuYW1pIG1pdDogTG9lc2NoIERpY2guCgoKQWhoaGhoaCwgbWljaCBoYXQgZWluZSBNdXNlIGdldHJldGVuLi4uCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEluc3BpcmF0aW9uIChUc3VuYW1pLCAgNy4gSnVuIDIwMDAsIDIzOjQ4OjE1KToKfiMhIHJuPUx1ZyBydD05NjA0MTMzNzkgcmc9c2NobWFycm4KfiMhIHRpZD05NjA0MTMzNzkKQWgsIEx1ZyBsYWV1ZnQgd2llZGVyIHp1IGFsdGVyIHVuZCBiZXdhZWhydGVyIEhvZWNoc3Rmb3JtIGF1ZiA6KSkKRmFzdCB3aWUgaW4gYWx0ZW4gWmVpdGVuICpzY2h3YWVybSoKCnRzdW5hbWkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSW5zcGlyYXRpb24gKEx1ZywgIDcuIEp1biAyMDAwLCAyMzo0OTowOSk6Cn4jISBybj1Uc3VuYW1pIHJ0PTk2MDQxNDQ5NSByZz1zY2htYXJybgp+IyEgdGlkPTk2MDQxMzM3OQoKR3J1bXBmLiBEdSBzb2xsc3QgbmljaHQgU2Nod2Flcm1lbiwgc29uZGVybiBLb3R6ZW4uCgpLbnVycmlnCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSW5zcGlyYXRpb24gKFRzdW5hbWksICA3LiBKdW4gMjAwMCwgMjM6NTQ6MDkpOgp+IyEgcm49THVnIHJ0PTk2MDQxNDU0OSByZz1zY2htYXJybgp+IyEgdGlkPTk2MDQxMzM3OQpOYSBndXQsIGljaCBzY2h3YWVybWUsIHdpZSBpY2ggZnJ1ZWhlciBnZWtvdHp0IGhhYmUgOikKRGFtYWxzIHdhciBLb3R6ZSBub2NoIGdydWVuIDopIGRhbWFscyB3YXIgYWxsZXMgYmVzc2VyLi4uCgpUc3VuYW1pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQU1NTVCEgKEthZGFicmEsICA4LiBKdW4gMjAwMCwgMDA6MTA6MzkpOgpKZW5hbmRyYSBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCktSQUFBQUFBQUFBQVdVVVVVVVVVVVVVTU1NTU1NTU1NTU1NCgprYWRhYnJhIChpbW1lciBub2NoIHZvciBBbmdzdCB6aXR0ZXJuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIHdhciBkYXMgamV0enQgbmljaHQgZ2VkYWNodC4uLiAoS3lyaWEsICA4LiBKdW4gMjAwMCwgMTI6MjI6MzcpOgpEdSBzdGVja3N0IGRlbiBLYW1wZnN0b2NrIHp1cnVlY2suCmVpbiBkcmFrb25pc2NoZXIgV2FmZmVuZ3VlcnRlbCB2ZXJzdWNodCBrcmFtcGZoYWZ0LCBEZWluZW4gS2FtcGZzdG9jawphdWZ6dWhlYmVuLiBFciBzY2hlaW50IGtsZXB0b21hbiB2ZXJhbmxhZ3QgenUgc2Vpbi4KRHUgenVlY2tzdCBkaWUgRmV1ZXJrZXVsZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZlcndlaXNlIGd1dCwgYWJlciB3ZXN3ZWdlbiAqRyogKEt0YXIsICA4LiBKdW4gMjAwMCwgMTg6NTQ6MDgpOgo+IFZvbiBCb3Rhbm9zOiBXYXMgaXN0IGRlbm4gZGFzIGhpZXI/IEhhdXN0aWVyZSBpbSBTdHJ1dj8gU28gZ2VodCBkYXMgYWJlcgpWb24gQm90YW5vczogbmljaHQsIEt0YXIhIERhcyBnaWJ0IGxlaWRlciBlaW5lbiBWZXJ3ZWlzIQpTdHVwc2kgaGF1dCBhYi4KbGFjaApEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVmVyd2Vpc2UgZ3V0LCBhYmVyIHdlc3dlZ2VuICpHKiAoTml6emwsICA4LiBKdW4gMjAwMCwgMTg6NTU6MDYpOgp+IyEgcm49S3RhciBydD05NjA0ODMyNDggcmc9c2NobWFycm4KfiMhIHRpZD05NjA0ODMyNDgKaGFldHRlIHN0dXBzaSB2aWVsbGVpY2h0IGVoZXIgZGVuIHZlcndlaXMga3JpZWdlbiBzb2xsZW4/IDopCgpOaXp6bCwgc2ljaCBpbW1lciB3aWVkZXIgdWViZXIgS2FlbXBmZXIgd3VuZGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFuc3RlY2tlbmQ/IChGb29iYXIsICA4LiBKdW4gMjAwMCwgMTk6MDk6NTMpOgpFbGVuZGlsIHNjaGlybXQgbmV1Z2llcmlnZSBCbGlja2UgbWl0IHNlaW5lbSBaYXViZXJodXQgYWIgdW5kIGdpYnQgRGlyIGVpbmVuCmxpZWJldm9sbGVuIEt1c3MuCkRlaW5lIE5hc2UgbGFldWZ0LgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFZlcndlaXNlIGd1dCwgYWJlciB3ZXN3ZWdlbiAqRyogKEt0YXIsICA4LiBKdW4gMjAwMCwgMTk6MTg6MjIpOgp+IyEgcm49Tml6emwgcnQ9OTYwNDgzMzA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYwNDgzMjQ4Ck1pbmRlc3RlbnMgOikgd2VubiBuaWNodCBlaW5lIFNwZXJyZSBmdWVycyBiZXRyZXRlbiBkZXMgU3RydXZzICpHKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVWViZXJzZXR6dW5nc3Byb2dyYW1tZSAoTXVhZGRpYiwgIDguIEp1biAyMDAwLCAyMjo0NToxMSk6Cnd3dy5ldmlsbGFzLm5ldCAtPiBEZXV0c2NoZSBTZWl0ZW4gYW5zY2hhdWVuLiBEYXMgZ2VuaWFsc3RlIHNpbmQgImxlYmVuZGUKUmF1bXNvZmFiZXR0ZW4iIDotPgoKTXVhLCByb3RmbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYnJpZWYgKE5ldm9rLCAgOC4gSnVuIDIwMDAsIDIzOjA1OjE3KToKfiMhIHJuPUphZ28gcnQ9OTYwNDk0MDIzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTYwNDk0MDIzCi0gLi4uaWNoIHdlaXNzIGJyaWdlbnMgbmljaHQgd2llIGljaCBlaW5lbiBCcmllZiBpbSBQb3N0YW10IGxlc2VuIGthbm4uLi4uCgpzY2hlaW5iYXIgYXVjaCBuaWNodCwgd2llIG1hbiBlaW5lbiBzb2xjaGVuIHNjaHJlaWJ0Li4uLgoKTmV2b2ssIGxlaXNlIHZvciBzaWNoIGhpbiBzY2htdW56ZWxuZC4KUC5TLjogV2FyIGRhIHdhcyBtaXQgVW1sYXV0ZW4/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdXN6dWcgYXVzIGRlbSBUb2Rlc3RhZ2VidWNoIChTbHlmb3gsICA5LiBKdW4gMjAwMCwgMTE6NDc6MTQpOgogIERpZSwgIDYuIEp1biAyMDAwLCAxNDoyMjowNDoKICBTb3dhcyBkdW1tZXMsIGJlaSBkZW0gR2xhc3NjaGVyYmVuYmVpc3NlciB3YXIgbWVpbmUgVm9yc2ljaHQgenUgbmllZHJpZy4KCiAgRnJlLCAgOS4gSnVuIDIwMDAsIDAxOjIwOjUzOgogIEJlaSBkZW0gRmV1ZXJkYWVtb24gaGF0dGUgaWNoIHdvaGwgZGllIGZhbHNjaGUgRmx1Y2h0cmljaHR1bmcuCgoKRGFzIHdhciBpbiBXaXJrbGljaGtlaXQgZ2VuYXUgdW1nZWtlaHJ0LCBiZWltIEZldWVyZGFlbW9uIHdhciBkaWUgVm9yc2ljaHQKenUgbmllZGVyLCB1bmQgYmVpbSBHbGFzc2NoZXJiZW5iZWlzc2VyIGhhdHRlIGljaCAnbmUgdG9lZGxpY2hlIEZsdWNodC0KcmljaHR1bmcgZ2VoYWJ0LgoKICAgU2x5Zm94CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmdlbG4gdmVyYm90ZW4uLi4gKEFwb3BoaXMsIDEwLiBKdW4gMjAwMCwgMjE6NDI6NDQpOgpEdSB3aXJmc3QgZGllIEFuZ2VsIGF1cy4KRm96emliYWVyIGtyYXR6dCBzaWNoIG1pdCBzZWluZW0gcmVjaHRlbiBIaW50ZXJiZWluIGhpbnRlciBkZW4gT2hyZW4uCkZvenppYmFlciBsZWd0IHNpY2ggYXVmIGRlbiBCb2RlbiB1bmQgc2NobGllc3N0IGRpZSBBdWdlbi4KRGVyIFRlaWNod2FlY2h0ZXIga29tbXQgcGxvZXR6bGljaCBoZXJlaW4uCkV0d2FzIHphcHBlbHQgYW4gRGVpbmVyIEFuZ2VsLgpEdSBob2xzdCBkaWUgQW5nZWwgd2llZGVyIGVpbi4KRGVyIFRlaWNod2FlY2h0ZXIgcmVubnQgZGllbnN0ZWlmcmlnIG5hY2ggTm9yZHdlc3Rlbi4KCmhtbSwgR2x1ZWNrIGdlaGFidCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2lmdGdhcy1BbmdyaWZmIChLb29taWtlciwgMTEuIEp1biAyMDAwLCAxMzo1OTozNCk6CkViZW4gaW4gZGVyIEtuZWlwZS4uLgoKQW50aWxlbmEgc2NobGVpY2h0IGF1ZiBsZWlzZW4gUGZvdGVuIGhlcmVpbi4KQW50aWxlbmEgbGFlc3N0IGVpbmVuIFN0aW5rZWZ1cnogZmFocmVuLgpBbnRpbGVuYSBzY2hsZWljaHQgYXVmIGxlaXNlbiBQZm90ZW4gdm9uIGRhbm5lbiBuYWNoIE9zdGVuLgoKR3JpbnNlbmQsIGVpbiBLb29taWtlciA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzIHdpbGwgdW5zIGRhcyBzYWdlbj8gKFpvb2ssIDExLiBKdW4gMjAwMCwgMTY6NDU6MDMpOgpQYWRyZWljIHNhZ3Q6IGdlc3Rlcm4gd2FyIGhldXRlIG5hY2h0IGRyaW4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpad2VyZ2UuLi4gKEFwb3BoaXMsIDExLiBKdW4gMjAwMCwgMTg6MTI6NDUpOgpFaW4gYWJnZXJpc3NlbmVyIFp3ZXJnZW5iYXJ0LgoKdW50IGJhcnQKCkRpZXNlciBCYXJ0IGthbm4gbnVyIHZvbiBlaW5lbSBad2VyZyBzdGFtbWVuLCBkZW5uIGVyIHN0aW5rdCBlcmJhZXJtbGljaCB1bmQKaXN0IHRvdGFsIHZlcmZpbHp0LiBWZXJzY2hpZWRlbmUga2xlaW5lIFRpZXJjaGVuLCBkaWUgRHUgbGllYmVyIG5pY2h0IG5hZWhlcgpiZXRyYWNodGVuIG1vZWNodGVzdCwgd3VzZWxuIGRhcmluIGhlcnVtLgoKaGloaSA6KQpBcG9waGlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZWhlaW1lIFp3ZWl0aWVzID8gOikgKEJyYW5kaXIsIDExLiBKdW4gMjAwMCwgMTk6Mjc6NTMpOgpEZWluZSBGcmV1bmRpbiBMZWlibml6IHRlaWx0IERpciBtaXQ6IGt1cnogd2VnCkxlaWJuaXogICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkRlaW4gRnJldW5kIFNsYXllciB0ZWlsdCBEaXIgbWl0OiBtYWwga3VyeiB3ZWcKU2xheWVyICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKQnJhbmRpciAtIGdydWViZWx0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLb21pc2NoLCBrb21pc2NoIDpvKSAoRm9vYmFyLCAxMi4gSnVuIDIwMDAsIDA0OjUzOjQ5KToKPiBrd2VyIHVuc2ljaHRiYXJlIG1hZ2llcgogICAgICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTW9uLCAxMi4gSnVuIDIwMDAsIDA0OjUyOjU5ICgyIFRlaWxuZWhtZXIpICAgIAoKSmVuYW5kcmEuLi4uLi4uSS5tIEJpZXJjaGVuLi4uLi4uLmkuSAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIHNvbGwgZGFzIHNlaW4uLi4gKEx1ZywgMTMuIEp1biAyMDAwLCAxNDoxMjozNSk6CgpEZXIgdmVyZGllbnRlIExvaG46CgpTZWkgc2NoYXV0IGVyc2NocmVja3QgYXVmIGFscyBzaWUgRGljaCBlcmJsaWNrdC4KCkJyYXYhCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhpZXJhcmNoaWUgKE1vZXAsIDEzLiBKdW4gMjAwMCwgMTY6NDI6MTQpOgpFaW4gQm90ZSBkZXMgSGVpbGlnZW4gT3JkZW5zIGtvbW10IGFuLgpFciBlcmxhZXV0ZXJ0IERpciBtaXQgYmV0cnVlYnRlciBNaWVuZSwgZGFzcyBqZW1hbmQgYW5kZXJlcyBEZWluZW4gUG9zdGVuIGFscwpFcmxldWNodGV0ZSBkZXMgTGVtYm9sZCBlaW5nZW5vbW1lbiBoYXQgdW5kIER1IGRlc2hhbGIgd2llZGVyIGRlbiBSYW5nIGRlcwpFcmxldWNodGV0ZW4gYmVrbGVpZGVzdC4KRGVyIEJvdGUgd2lua3QgRGlyIG5vY2ggZWlubWFsIHp1IHVuZCB2ZXJzY2h3aW5kZXQgZGFubiB3aWVkZXIuCgpXZXJkIGljaCBhbHMgbmFlY2hzdGVzIHp1bSBIb2hlcHJpZXN0ZXIgZGVncmFkaWVydD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHaWZ0Z2FzLUFuZ3JpZmYgKE1lbmFjZSwgMTMuIEp1biAyMDAwLCAyMzo1MDoxOCk6Cn4jISBybj1Lb29taWtlciBydD05NjA3MjQ3NzQgcmc9c2NobWFycm4KfiMhIHRpZD05NjA3MjQ3NzQKVW5kIHdhcyBpc3QgZGFyYW4gamV0enQgd2l0emlnPwoKTWVuYWNlICplaW56ZWlsZW5kIG5hY2hmcmFnZW5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVW50ZXJzY2hpZWQgKEdyaW1tYm9ybiwgMTQuIEp1biAyMDAwLCAwODozNzo0NSk6Cn4jISBvbj1Hbm9tZSBvdD05NjA5MDc3ODYgb2c9d2l0emUKfiMhIHJuPVVuYXNhaSBydD05NjA5MDQ3NTYgcmc9d2l0emUKfiMhIHRpZD05NjA4Nzk0MDkKd2VubiBpY2ggamV0enQgZmllcyBzZWluIHd1ZXJkZSwgd3VlcmRlIGljaCBzYWdlbjoKdW5kIGxlcm4gZHUgZXJzdG1hbCBzY2hyZWliZW4uLi4KYWJlciBzb3dhcyB3dWVyZGUgaWNoIG5pZSB1bmQgbmltbWVyIHNhZ2VuLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFVudGVyc2NoaWVkIChHcmltbWJvcm4sIDE0LiBKdW4gMjAwMCwgMDg6Mzc6NTUpOgp+IyEgb249VW5hc2FpIG90PTk2MDkwODI3NCBvZz13aXR6ZQp+IyEgcm49R25vbWUgcnQ9OTYwOTA3Nzg2IHJnPXdpdHplCn4jISB0aWQ9OTYwODc5NDA5ClNlaXQgd2FubiBiaXN0IER1IHNvIHBpbmdlbGlnPyBXZWdlbiBlaW5lbSBWZXJ0aXBwZXI/IE9rYXksIGV4dHJhIGZ1ZXIgRGljaApzY2hyZWliIGljaCBqZXR6dCBhbGxlcyBpbiBkZW4gRWRpdG9yIHVuZCBsYXNzIGVpbmUgUmVjaHRzY2hyZWlicHJ1ZWZ1bmcKZHVyY2hmdWVocmVuLCBkYW1pdCBEdSBuaWNodHMgbWVociBsZXNlbiBtdXNzdCwgZGFzIERlaW4gQXVnZSBiZWxlaWRpZ3QuCgpVbmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBVbnRlcnNjaGllZCAoR3JpbW1ib3JuLCAxNC4gSnVuIDIwMDAsIDA4OjM4OjA1KToKfiMhIG9uPVNhdHVyYSBvdD05NjA5MTA0Nzcgb2c9d2l0emUKfiMhIHJuPVVuYXNhaSBydD05NjA5MDgyNzQgcmc9d2l0emUKfiMhIHRpZD05NjA4Nzk0MDkKSG1tbW0uLi4uIFVuYXNhaSwgbXVzcyBlcyBuaWNodCBoZWlzc2VuICdXZWdlbiBlaW5lcyBWZXJ0aXBwZXJzJz8KV2FzIGlzdCBudXIgYXVzIHVuc2VyZW0gR2VuaXRpdiBnZXdvcmRlbj8KCip6d2lua2VyKgpTYXR1cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFVudGVyc2NoaWVkIChHcmltbWJvcm4sIDE0LiBKdW4gMjAwMCwgMDg6Mzg6MjMpOgp+IyEgb249RGllZGVyIG90PTk2MDkxMDUyNyBvZz13aXR6ZQp+IyEgcm49U2F0dXJhIHJ0PTk2MDkxMDQ3NyByZz13aXR6ZQp+IyEgdGlkPTk2MDg3OTQwOQpSZXR0ZXQgZGVtIERhdGl2IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVW50ZXJzY2hpZWQgKEdyaW1tYm9ybiwgMTQuIEp1biAyMDAwLCAwODozODozMSk6Cn4jISBvbj1TYXR1cmEgb3Q9OTYwOTEwNTc2IG9nPXdpdHplCn4jISBybj1Hb2xhcyBydD05NjA4ODQ1MDYgcmc9d2l0emUKfiMhIHRpZD05NjA4Nzk0MDkKSWNoIGZ1ZXJjaHRlLCBpY2ggbXVzcyBtaWNoIGRhIGFuc2NobGllc3NlbiB1bmQgc2VsYmlnZXMgYXVjaCB1ZWJlciBkYXMKQmFqdXdhcmVudHVtIGJlaGF1cHRlbi4KRW50d2VkZXIsIG1hbiB3aXJkIGFscyBlaW5lciBnZWJvcmVuIG9kZXIgbWFuIHdpcmQgbmllIGVpbmVyLi4uCgpTYXR1cmEsIG5pbW10J3MgaGV1dCcgZ2FueiBnZW5hdSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVW50ZXJzY2hpZWQgKEdyaW1tYm9ybiwgMTQuIEp1biAyMDAwLCAwODozODozNyk6Cn4jISBvbj1QcmEgb3Q9OTYwOTEwOTcwIG9nPXdpdHplCn4jISBybj1TYXR1cmEgcnQ9OTYwOTEwNTc2IHJnPXdpdHplCn4jISB0aWQ9OTYwODc5NDA5CkRhcyBiZXJ1aGlndCBtaWNoIGpldHp0IGFiZXIgdW5nZW1laW4hICp0aWVmZXIgU2V1ZnplcioKClByYS4gTmljaHQgYWxzIEJheWVyIGdlYm9yZW4gdW5kIGthbm4gZGVtbmFjaCB6dW0gR2x1ZWNrIGF1Y2gga2VpbmVyIHdlcmRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFVudGVyc2NoaWVkIChHcmltbWJvcm4sIDE0LiBKdW4gMjAwMCwgMDg6Mzg6NTUpOgp+IyEgb249VW5hc2FpIG90PTk2MDkxMTAwOCBvZz13aXR6ZQp+IyEgcm49U2F0dXJhIHJ0PTk2MDkxMDQ3NyByZz13aXR6ZQp+IyEgdGlkPTk2MDg3OTQwOQpHZW5pdGl2IGlzdCBuZXVkZXV0c2NoIHVuZCBoYXQgc2ljaCBpbiBkZXIgQWxsdGFnc3NwcmFjaGUgbmllIGR1cmNoZ2VzZXR6dC4KSW5zb2Zlcm4gaXN0IGRlciBEYXRpdiBhbiBkaWVzZXIgU3RlbGxlIHZvZWxsaWcga29ycmVrdCEgQXVzc2VyZGVtIGhvZXJ0IGVzCnNpY2ggYmVzc2VyIGFuLiA7KQoKVW5hKiAoaW4gRWlnZW5zY2hhZnQgYWxzIERhRmxlciB1bmQgZWJlbmZhbGxzIHp3aW5rZXJuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFVudGVyc2NoaWVkIChHcmltbWJvcm4sIDE0LiBKdW4gMjAwMCwgMDg6Mzk6MTEpOgp+IyEgb249S2FyaXMgb3Q9OTYwOTExMTA2IG9nPXdpdHplCn4jISBybj1VbmFzYWkgcnQ9OTYwOTExMDA4IHJnPXdpdHplCn4jISB0aWQ9OTYwODc5NDA5ClZvZWxsaWcgcmljaHRpZywgVW5hLiBEYXMgZW50c3ByaWNodCB1ZWJyaWdlbnMgYXVjaCBkZXIgYmF5ZXJpc2NoZW4gR3JhbW1hdGlrLgpEYSBoYXRzIGF1Y2gga2VpbmVuIEdlbml0aXYuCkthcmlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogVW50ZXJzY2hpZWQgKEdyaW1tYm9ybiwgMTQuIEp1biAyMDAwLCAwODozOToxOSk6Cn4jISBvbj1TYXR1cmEgb3Q9OTYwOTExMjk2IG9nPXdpdHplCn4jISBybj1LYXJpcyBydD05NjA5MTExMDYgcmc9d2l0emUKfiMhIHRpZD05NjA4Nzk0MDkKU2F0dXJhIGhhdCBkYXMgTGF0aW51bS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFVudGVyc2NoaWVkIChHcmltbWJvcm4sIDE0LiBKdW4gMjAwMCwgMDg6Mzk6MjEpOgp+IyEgb249S2FyaXMgb3Q9OTYwOTExMzMzIG9nPXdpdHplCn4jISBybj1TYXR1cmEgcnQ9OTYwOTExMjk2IHJnPXdpdHplCn4jISB0aWQ9OTYwODc5NDA5CkRhcyBiYXllcmlzY2hlIG9kZXIgZGFzIHByZXVzc2lzY2hlPwpLYXJpcywgdmVyd2lycnQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFVudGVyc2NoaWVkIChHcmltbWJvcm4sIDE0LiBKdW4gMjAwMCwgMDg6Mzk6MjUpOgp+IyEgb249QXBzdSBvdD05NjA5MTEzMzQgb2c9d2l0emUKfiMhIHJuPVVuYXNhaSBydD05NjA5MTEwMDggcmc9d2l0emUKfiMhIHRpZD05NjA4Nzk0MDkKUmV0dGV0IGRlcyBHZW5pdGl2cyEKCkFwc3UsIHRvZGVybnN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogVW50ZXJzY2hpZWQgKEdyaW1tYm9ybiwgMTQuIEp1biAyMDAwLCAwODozOToyOSk6Cn4jISBvbj1TYXR1cmEgb3Q9OTYwOTExNjI0IG9nPXdpdHplCn4jISBybj1LYXJpcyBydD05NjA5MTEzMzMgcmc9d2l0emUKfiMhIHRpZD05NjA4Nzk0MDkKc2VpIGRvY2ggbmljaHQgc28ga2xlaW5saWNoLCBrYXJpcyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVW50ZXJzY2hpZWQgKEdyaW1tYm9ybiwgMTQuIEp1biAyMDAwLCAwODozOTo0Myk6Cn4jISBvbj1IaWdodCBvdD05NjA5Mjc1Nzkgb2c9d2l0emUKfiMhIHJuPVNhdHVyYSBydD05NjA5MTA1NzYgcmc9d2l0emUKfiMhIHRpZD05NjA4Nzk0MDkKcGhhIHZvbiB3ZWdlbiAKCmJheWVyIGthbm4gamVkZXIgYXJzY2ggd2VyZGVuIGRlciBtZWhyIGFscyAyIG1hc3Mgc2F1ZmVuIGthbm4gLi4uIAoKaG9jaCBsZWJlIGRpZSByZXB1YmxpayBGcmFua2VuIC4uLiBkYSBtdXNzIG1hbiBtaW5kZXN0ZW5zIGRhcyBkb3BwZWx0ZQpzY2hsdWNrZW4ga29lbm5lbiB1bSBhdWZnZW5vbW1lbiB1IHdlcmRlbiAKCmhpZ2h0IC0+IHNjaG1hcm4KKioqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBVbnRlcnNjaGllZCAoR3JpbW1ib3JuLCAxNC4gSnVuIDIwMDAsIDA4OjM5OjQ5KToKfiMhIG9uPU9sbGkgb3Q9OTYwOTMwNDU5IG9nPXdpdHplCn4jISBybj1TYXR1cmEgcnQ9OTYwOTEwNDc3IHJnPXdpdHplCn4jISB0aWQ9OTYwODc5NDA5CkdhYiBlcyBkYSBuaWNodCBtYWwgZGllICJHZXNlbGxzY2hhZnQgenVyIFJldHR1bmcgdm9uIGRlbSBHZW5pdGl2IiA/CgpPbGxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBVbnRlcnNjaGllZCAoR3JpbW1ib3JuLCAxNC4gSnVuIDIwMDAsIDA4OjM5OjUzKToKfiMhIG9uPUhpZ2h0IG90PTk2MDkzMDU1NSBvZz13aXR6ZQp+IyEgcm49T2xsaSBydD05NjA5MzA0NTkgcmc9d2l0emUKfiMhIHRpZD05NjA4Nzk0MDkKaG0gaGllc3MgZGFzIG5ldCB2b3IgZGVtIGdlbml0aXYgPwoKaGlnaHQgZ3J1ZWJlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogVW50ZXJzY2hpZWQgKEdyaW1tYm9ybiwgMTQuIEp1biAyMDAwLCAwODo0MDowMyk6Cn4jISBvbj1BbmF0b2wgb3Q9OTYwOTMwNTc1IG9nPXdpdHplCn4jISBybj1IaWdodCBydD05NjA5MzA1NTUgcmc9d2l0emUKfiMhIHRpZD05NjA4Nzk0MDkKR2VuaXRpdiBpbnMgV2Fzc2VyIHdlaWxzIERhdGl2IGlzdC4uLgoKQW5hdG9sIC0gb2xkaWUgYnV0IGdvbGRpZSA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBVbnRlcnNjaGllZCAoUm9uZGEsIDE0LiBKdW4gMjAwMCwgMjI6NTY6MDUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk2MDk2NDgwMyByZz1zY2htYXJybgp+IyEgdGlkPTk2MDg3OTQwOQpFaiwgamV0enQgd2VyZGV0IElociBzY2hvbiBldHdhcyBrbGVpbmxpY2guLi4gd2VubidzIHNjaG9uIGVpbmVuICJBdXRvY2x1YiB2b24KRGV1dHNjaGxhbmQiIGdpYnQuIFdvI3MgamEgYXVjaCBkaWUgIkthcnJlIHZvbiBNYW5uaSIgaXN0LCB3b2xsIQoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdpYnRzIGRhIG5lbiBadXNhbW1lbmhhbmc/IChEZWVwYmx1ZSwgMTUuIEp1biAyMDAwLCAwOTo1NjowOSk6ClBsb2V0emxpY2ggaG9lcnN0IER1IGVpbiBsYXV0ZXMgU2NobmFyY2hlbi4gS3Vla2VuIGhhdCBkZW0gU2NocmF0CnNlaW4gbGFuZ2Vyc2VobnRlcyBTY2hsYWZtaXR0ZWwgZ2VicmFjaHQuCkRhcyBEcmFjaGVua2luZCBnYWVobnQga3VyeiB1bmQgbGVja3Qgc2ljaCBkYW5uIHVlYmVycyBNYXVsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdpYnRzIGRhIG5lbiBadXNhbW1lbmhhbmc/IChCb2luZywgMTUuIEp1biAyMDAwLCAxMDowMDoyNCk6Cn4jISBybj1EZWVwYmx1ZSBydD05NjEwNTU3Njkgcmc9c2NobWFycm4KfiMhIHRpZD05NjEwNTU3NjkKTmVpbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCVUghIChHcmltbWJvcm4sIDE1LiBKdW4gMjAwMCwgMTE6MTU6NDgpOgp+IyEgcm49TmlldGUgcnQ9OTYxMDYwMDI5IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTk2MTA1ODczMgpXb3p1IHdpbGxzdCBEdSBkYXMgd2lzc2VuPyBFaW5lbiBHcnVuZCB6dW0gcnVtaGV1bGVuIGZpbmRldCBtYW4gZG9jaCBpbW1lciwKd2VuIGludGVyZXNzaWVydCBkYSBkZXIga29ua3JldGUgQW5sYXNzPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBCVUghIChOaWV0ZSwgMTUuIEp1biAyMDAwLCAxMTo0MDozMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTYxMDYwNTQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYxMDU4NzMyCmhtLCBiaW4gaWNoIGVpbiBmYXVzdGlzY2hlciBzaW5uc3VjaGVyIG9kZXIgbnVyIGVpbiB0cm90dGVsPyB3ZXIgd2Vpc3MuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBCVUghIChHcmltbWJvcm4sIDE1LiBKdW4gMjAwMCwgMTE6NTA6NDkpOgp+IyEgcm49TmlldGUgcnQ9OTYxMDYyMDMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYxMDU4NzMyCkVpbmZhY2ggenUgYmVhbnR3b3J0ZW46IEVpbiBTdWNoZXIgbmFjaCBkZW0gU2lubiBkZXIgRmF1c3QuIE1lcmtlOiBHZXdhbHQKaGlsZnQgaW1tZXIgKG9kZXIsIHdpZSBkZXIgT3BhIG1laW5lciBFeCB6dSBzYWdlbiBwZmxlZ3Q6IE5BY2ggZmVzdCBrb21tdAprYXB1dHQpLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCVUghIChOaWV0ZSwgMTUuIEp1biAyMDAwLCAxMTo1MzozNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTYxMDYyNjQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYxMDU4NzMyCmdld2FsdCBoaWxmdCBsZWlkZXIgbnVyLCB3ZW5uIG1hbiBnZXdpbm50LiBiZWkgZWluZXIgc2Nod2FjaGVuIGZhdXN0IHdpZQptZWluZXIgZXJzcGFyIGljaCBtaXIgZGEgd2VuaWdzdGVucyBkaWUgemVpdCBkZXMgc3VjaGVucy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBCVUghIChHcmltbWJvcm4sIDE1LiBKdW4gMjAwMCwgMTI6MDE6MzUpOgp+IyEgcm49TmlldGUgcnQ9OTYxMDYyODE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYxMDU4NzMyCldlciB3aXJkIGRlbm4gc28gbWF0ZXJpYWxpc3Rpc2NoIGRlbmtlbj8gIkZhdXN0IiB1bmQgIkdld2FsdCIgc3RlaGVuCm1pdG5pY2h0ZW4gZnVlciBVZWJlcnRyYWd1bmcgdm9uIGtpbmV0aXNjaGVyIEVuZXJnaWUuIERpZSBGZWRlciBrYW5uIHN0YWVya2VyCnNlaW4gYWxzIGRhcyBTY2h3ZXJ0IChhYmVyIG51ciwgd2VubiBkaWUgRmVkZXIgYmVzb25kZXJzIGdyb3NzLi4uIG5hamEsIHdpcgprZW5uZW4gUHJhdGNoZXR0KS4KCkdkQS4gUHN5Y2hvbG9naXNjaGUgS3JpZWdzZnVlaHJ1bmcgZ2VnZW4gTWVuc2NoZW4sIGNoZW1pc2NoZSBLcmllZ3NmdWVocnVuZwpnZWdlbiBNdWVja2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQlVIISAoTmlldGUsIDE1LiBKdW4gMjAwMCwgMTI6MTQ6NDUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk2MTA2MzI5NSByZz1zY2htYXJybgp+IyEgdGlkPTk2MTA1ODczMgpndXQgenUgd2lzc2VuLCBkYXNzIG1laW4gaW50ZWxsZWt0IGRhIGF1Y2ggaGlsZnJlaWNoIGlzdC4uLjspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVW50ZXJzY2hpZWQgKEdyaW1tYm9ybiwgMTYuIEp1biAyMDAwLCAwOTo1MzozMSk6Cn4jISBvbj1HcmltbWFuIG90PTk2MTA5NzU5OSBvZz13aXR6ZQp+IyEgcm49RGVlcGJsdWUgcnQ9OTYwODc5ODU4IHJnPXdpdHplCn4jISB0aWQ9OTYwODc5NDA5CkphdSwgdW5kIHp3YXIgZnVlciBqZWRlbiBndXRlbiBwcmV1c3NlbiAuLi4KCkdyaW1NYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1lcmxpbiwgd28gYmlzdCBEdSA/PyAoTW9yZ290aCwgMTYuIEp1biAyMDAwLCAxNDoxNDozMyk6Ck1lcmxpbiBydWZ0OiBLYW11aGwsIGljaCBoYWIgbmljaHQgZGllIGxlaXNlc3RlIElkZWUsIHdvIGljaCBoaWVyIGJpbiAuLi4gCkRpZSBFaW5nYW5nc2hhbGxlIGRlciBBa2FkZW1pZSBiZXNpdHp0IGVpbmVuIGZ1ZW5mZWNraWdlbiBHcnVuZHJpc3MuIERhcyBEYWNoCndpcmQgdm9uIGZ1ZW5mIEhhbGJib2VnZW4gZ2V0cmFnZW4sIGRpZSBlaW4gR2V3b2VsYmUgYmlsZGVuLiBEaWUgV2FlbmRlIHNpbmQKbWl0IEdvYmVsaW5zIGJlaGFuZ2VuLCB3YWVocmVuZCBzaWNoIGluIGRlciBOb3Jkb3N0ZWNrZSBlaW5lIFdlbmRlbHRyZXBwZSBuYWNoCm9iZW4gdW5kIHVudGVuIHdpbmRldC4gRHJlaSB3ZWl0ZXJlIEF1c2dhZW5nZSBnZWhlbiBuYWNoIE9zdGVuLCBTdWVkZW4gdW5kCldlc3Rlbi4gTmViZW4gZGVtIEF1c2dhbmcgaW0gU3VlZGVuIGlzdCBlaW4gZ3Jvc3NlcyBTY2hpbGQgYmVmZXN0aWd0LgpDb250ZW50OgogMS4gTWVybGluLCBkZXIgVXJ2YXRlciBhbGxlciBNYWdpZXIuCgpNKiwgZ3JpbnNlbmQgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBCVUghIChHbG9pbiwgMTYuIEp1biAyMDAwLCAxNDozODoxNCk6Cn4jISBybj1Hb3IgcnQ9OTYxMTU5MDU2IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTk2MTA1ODczMgpEYW5rZSBmdWVyIERlaW5lIHdlaXNlbiBXb3J0ZS4gKmh1c3QqCgpHbG9pbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUHJvbXB0ZSBCZWRpZW51bmcgKE1vcmdvdGgsIDE2LiBKdW4gMjAwMCwgMTQ6NTY6NTEpOgpEdSB0ZWlsc3QgV3Vuc2NoZmVlIG1pdDogaGlsZmUKV2ltICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQooV2ltKSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCk0qIDstKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1laW4gSW52IChHcmVuZHVsYSwgMTYuIEp1biAyMDAwLCAxNToxODowMCk6CldhZmZlbjoKIDUgU3RlaW5lLgogNCBTdGVpbmUuCiAxNSBTdGVpbmUuCiAxMCBTdGVpbmUuCgpFcnN0YXVubGljaCwgd2lldmllbGUgdmVyc2NoaWVkZW5lIEFydGVuIHZvbiBTdGVpbmVuIGVzIGdpYnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUHJvbXB0ZSBCZWRpZW51bmcgKFRlZGR5LCAxNi4gSnVuIDIwMDAsIDIyOjU5OjE5KToKfiMhIHJuPU1vcmdvdGggcnQ9OTYxMTYwMjExIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYxMTYwMjExCkhhc3QgZHUgZGljaCB3ZW5pZ3N0ZW5zIGFydGlnIGJlZGFua3Q/IDstKQoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBGcm9zY2hwcmluemVzc2luPyAoQXBvcGhpcywgMTcuIEp1biAyMDAwLCAyMzowMDo1NCk6CkVpbiBGcm9zY2gga3JhbXQgaW4gc2VpbmVuIFRhc2NoZW4gcnVtLgpFaW4gRnJvc2NoIGF1cyBlaW5lciB0aWVmZW4gVGFzY2hlIHppZWh0IGVyIGVpbmUga2xlaW5lIFBpbGxlIHZvciB1bmQgc2NobHVja3QKc2llLgpBbmFyaW55YSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKdW5nZXNjaG5pdHRlbiA6KQpBcG9waGlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBY2gsIHNvIHdhciBkYXMgZ2VtZWludD8gKEthcnRvZmZlbCwgMTcuIEp1biAyMDAwLCAyMzo1NzoxMSk6CgpEZWluIEZyZXVuZCBMdWcgdGVpbHQgRGlyIG1pdDogR2lidCBnbGVpY2ggYXVmIGRpZSBGcmVzc2UuLi4KTWlyamFtIHJ1ZnQ6IHdhYWFhYWggZXIgaGF0IG1pY2ggZ2VrdWVzc3QgOy0pKSBkYW5rZSA7LSkKCgonVG9mZmVsIC0gd3VuZGVydCBzaWNoIHVlYmVyIGlocmVuIFp3aWxsaW5nLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadSBsYW5nc2FtIGZ1ZXIgZGllc2UgV2VsdC4uLiAoTWFraXNoLCAxOC4gSnVuIDIwMDAsIDE0OjMyOjEzKToKQXN1a2Ega29tbXQgYmV0cnVlYnQgaGVyZWluLgpyZ3JpbnNlIGFzdWthCkFiZXIgZGllc2VyIFNwaWVsZXIgc3RlaHQgZG9jaCBuZWJlbiBEaXIhCkFzdWthIGZvbGd0IGJldHJ1ZWJ0IGRhdm9ud2VoZW5kZW4gS2lyc2NoYmx1ZXRlbmJsYWV0dGVybiBhdWYgZGllIFRvaWxldHRlLgpncmluc2UgYXN1a2EKR3JpbnNlbiAtIHNjaG9lbiB1bmQgZ3V0LiBBYmVyIHdlbiBvZGVyIHdpZSAoYW4pZ3JpbnNlbj8KQXN1a2Ega29tbXQgYmV0cnVlYnQgaGVyZWluLgpyZ3JpbnNlIGFzdWthCkFiZXIgZGllc2VyIFNwaWVsZXIgc3RlaHQgZG9jaCBuZWJlbiBEaXIhCgpNYWtpc2ggc29sbHRlIHNjaG5lbGwgdWViZW4uLiAqc2NobnVlZmYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGluIGRlciBHbGFkaWF0b3Jlbi1TY2h1bGUgKFNseWZveCwgMTguIEp1biAyMDAwLCAxNzozMzo1Myk6ClZpb2xhIHNhZ3Q6IHNjaGxpZXNzdCBkYXMgdG9yIGF1dG9tYXRpc2NoPwpEdSBuaWNrc3QgenVzdGltbWVuZC4KClNla3VuZGVuIHNwYWV0ZXI6CgpFaW4gQnJvbnpldG9yIHNjaGxpZXNzdCBzaWNoLgoKT2IgZGFzIFRvciB1bnMgenVnZWhvZXJ0IGhhdD8KCiAgIFNseWZveAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHRpbWUgdG8gc2F5IGdvb2RieWUgKE5ldm9rLCAxOS4gSnVuIDIwMDAsIDIzOjQ2OjAwKToKfiMhIHJuPVNhbmRpbGVpbiBydD05NjEzODY2MjAgcmc9Z2lsZGVuLmthcmF0ZQp+IyEgdGlkPTk2MTM4NjYyMApuZW0gZ2VzY2hlbmt0ZW4gR2F1bCBzY2hhdXQgbWFuIG5pY2h0IGlucyBNYXVsCmdpbHQgZGFzIGF1Y2ggZnVlciBDaGFyYWt0ZXJlIGRpZSBtYW4gaG9jaGdlc3BpZWx0L3NjcmlwdGV0IGtyaWVndD8KCk5ldm9rLCBzaW5uaWVyZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBcnRpa2VsIEF1ZndlcnR1bmcgdnMuIEFid2VydHVuZyAoTmV2b2ssIDE5LiBKdW4gMjAwMCwgMjM6NTU6NTUpOgp+IyEgcm49VHJ1ZyBydD05NjEzOTQ5Njkgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9OTYxMjYxMTE1Ck5laG10IGRvY2ggbmljaHQgdW5zZXJlIEdpbGRlIGFsbHp1c2VociBhbnMgSGVyeiwgYWxzIHd1ZXJkZSBkaWUgV2VsdCBkYWJlaQp1bnRlcmdlaGVuLiBEYXMgaGllciBzb2xsdGUgZWlnZW50bGljaCBub2NoIGVpbiBTcGllbCBzZWluLi4uLgoKClVuZCBkYXMgc2NocmVpYnQgd2VyPyBXdWFoYWhhaGFoYQoKTmV2b2ssIGRlciBkYSBuaWNodCBkZW4gR29ldHogc29uZGVybiBkZW4gTHVnIHppdGllcmVuIG1vZWNodGUuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpERVIgcGFzc3QuLi4gKEdub21lLCAyMC4gSnVuIDIwMDAsIDAyOjI1OjExKToKRGV2aWxjaGVuIHRlaWx0IERpciBtaXQ6IHd1ZXJkIG1pciBldHogYW0gbGllYnN0ZW4gbmUgcGl6emEgcmVpbnNjaGllYmVuLi4uCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgphcm1lcyBNRyA6KQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRhbnRlIDopIChBbm9yaXMsIDIwLiBKdW4gMjAwMCwgMTY6MjI6NTMpOgpFaW4gd2luemlnZXIgV29scGVydGluZ2VyIHRhcHBzdCBoZXJlaW4uCkRpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgpEZXIgd2luemlnZSBXb2xwZXJ0aW5nZXIgc2FndDogSGFsbG8gVGFudGUgQW5vcmlzISBJY2ggaGFiZSBEaWNoIGdlcm4hCkRlciB3aW56aWdlIFdvbHBlcnRpbmdlciBzcHJpbmd0IGZyZXVkaWcgYXVmIHVuZCBhYi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bmdlc2Nobml0dGVuIChEaWVkZXIsIDIwLiBKdW4gMjAwMCwgMTg6MDU6MjYpOgpUYXJhIHNjaGxhZWd0IGhhcnQgYXVmIGRlbiBCb2RlbiBhdWYuCktydWZ0dXIgdmVyc2Nod2luZGV0IGFscyBJbnNwaXJhdGlvbnNwYXJ0aWtlbC4KCkdhciBuaWNodCBnZXd1c3N0LCBkYXNzIFphdWJpbmVuIHNvIHNjaHdlciBzaW5kLCBkYXNzIHNpZSBtZWluZW4gYXJtZW4gS3J1ZnR1cgplcnNjaGxhZ2VuIGtvZW5uZW4uLi4KCjotKSkgRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUZXN0IDspIChBbmF0b2wsIDIwLiBKdW4gMjAwMCwgMTg6Mjg6NTcpOgpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KUmluZ29yIGdpYnQgRGlyIFJ1ZWNrZW5kZWNrdW5nLgpQYWRyZWljIHdhbmRlcnQgaGVyZWluLgpTaGFyaWEgbGFldXRlcnQgRGVpbmVuIEdlaXN0LgoKV2lldmllbGUgTGV1dGUgc2VoZW4gZGllIGxldHp0ZSBaZWlsZSBuaWNodD8gOikgCkFuYXRvbCA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUZXN0IDspIChBbmF0b2wsIDIwLiBKdW4gMjAwMCwgMTg6MzA6NDMpOgp+IyEgcm49QW5hdG9sIHJ0PTk2MTUxODUzNyByZz1zY2htYXJybgp+IyEgdGlkPTk2MTUxODUzNwoiLi4uIHRlaWx0IERpciBtaXQ6IHdlbGNoZXMgaXMgZGllIGxldHp0ZSB6ZWlsZT8gOikiIFNvbGx0ZW4gc2ljaApkaWUsIGRpZSBkZW4gdm9yaWdlbiBBcnRpa2VsIGZ1ZXIgdWViZXJ6b2dlbiBQYWRyZWljLWZlaW5kbGljaCAKaGFsdGVuLCBhdWNoIGZyYWdlbiA6bykuCgpBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPb29wcyAoVGVsZW5vcywgMjEuIEp1biAyMDAwLCAwMDoxMDo0MCk6CkRhcyBpcyBrbGFlZ2xpY2guLi4uLgoKCkR1IGZpbmRlc3QgMSBNdWVuemVuLCBkaWUgRHUgYmVpbSBsZXR6dGVuIE1hbCB2ZXJsb3JlbiBoYXN0LgoKV2FzIHNjaGxpbW1lciBpcywgZGFzIGljaCBudXIgZWluZSBkZXIgc2VsYmlnZW4ga3JpZWdlLCBvZGVyIGRhc3MgZXMgMSBNdWVuemVuCmlzdCwgd2Vpc3MgaWNoIG5pY2h0LgoKVGVsZW5vcywgV2FuZGxlciBpbSB0cmFuc3plbmRlbnRhbGVuIENoYW9zLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRlc3QgOykgKFNpbHZhbmEsIDIxLiBKdW4gMjAwMCwgMTE6NTI6MjgpOgp+IyEgcm49QW5hdG9sIHJ0PTk2MTUxODUzNyByZz1zY2htYXJybgp+IyEgdGlkPTk2MTUxODUzNwpJY2ggZnJhZ2UgbWljaCBlaGVyLCB3aWV2aWVsZSBNYWdpZXIgZGllIHZvcmxldHp0ZSBaZWlsZSBkYXZvbiBuaWNodCBzZWhlbi4uLgoKU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLiAoVmVjdG9yLCAyMS4gSnVuIDIwMDAsIDEyOjAyOjE5KToKTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4gICAgICAgICAgICAgICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSYWRzdGVybmZhaHJ0IG5hY2ggVGhhbGx3aXR6IChHbG9pbiwgMjEuIEp1biAyMDAwLCAxMjoxMjo0MSk6Cn4jISBybj1EZWVwYmx1ZSBydD05NjE1ODIzMDkgcmc9dHJlZmZlbgp+IyEgdGlkPTk2MTU4MjMwOQpEdSB3aWxsc3QsIGRhc3Mgd2lyIERpciBwZXIgTWFpbCBuYWVoZXJlIEluZm9zIHNjaGlja2VuPyBTb3NvLgoKR2xvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBtZWluIEludiAoUmFyZGlhbiwgMjEuIEp1biAyMDAwLCAxNDoxNDoxMyk6Cn4jISBybj1HcmVuZHVsYSBydD05NjExNjE0ODAgcmc9c2NobWFycm4KfiMhIHRpZD05NjExNjE0ODAKV2FzIGlzdCBkYXJhbiBlcnN0YXVubGljaD8gRXMgZ2lidCBzaWNoZXIgdW56YWVobGlnZSBHZXN0ZWluc2FydGVuLi4uCgpSYXIsIHd1bmRlcnQgamFyIG51ZXNjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphY2ggZGVzaGFsYi4uLiAoRGVmcmFnLCAyMi4gSnVuIDIwMDAsIDAxOjEyOjExKToKRHUgc2llaHN0IGRpZSBzdGVyYmxpY2hlbiBVZWJlcnJlc3RlIEFuZHlzLgpTaWUgZW50aGFlbHQ6CkVpbmUgTGlzdGUuCkRlciBGdXJ6IHJpZWNodCwgYWxzIHd1ZXJkZSBBbmR5IGlubmVybGljaCB2ZXJmYXVsZW4uCgpKby4gdHV0IGVyLi4uCkRlZnJhZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9ya2hhdXNlbiAtIGltbWVyIHdpZWRlciBzY2hvZW4gKExvbGxpLCAyMi4gSnVuIDIwMDAsIDA5OjE1OjAxKToKRWluIEthcmF0ZW9yayBqYWd0IERpY2ggbmljaHQgbWVoci4KRWluIE9yayBqYWd0IERpY2ggbmljaHQgbWVoci4KRWluZSBPcmtmcmF1IGphZ3QgRGljaCBuaWNodCBtZWhyLgpFaW4gT3JrIGphZ3QgRGljaCBuaWNodCBtZWhyLgpFaW5lIE9yayBqYWd0IERpY2ggbmljaHQgbWVoci4KCihNYW4gYmVhY2h0ZSB2b3IgYWxsZW0gZGFzICdFaW5lIE9yaycpIDotKQoKYWxzbyBpY2ggYmluIGltbWVyIHdpZWRlciBlcmxlaWNodGVydCB3ZW5uIG1pY2ggZGllIGJvZXNlbiBvcmtzIG5pY2h0IG1laHIKamFnZW4uLi4KCkxvbGxpLCBkZW4gT3JrcyBnbGVpY2ggbWFsIHdpZWRlciBlaW5lIEJlc3VjaCBhYnN0YXR0ZW5kLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogb3JraGF1c2VuIC0gaW1tZXIgd2llZGVyIHNjaG9lbiAoTG9sbGksIDIyLiBKdW4gMjAwMCwgMDk6MTg6MzcpOgp+IyEgcm49TG9sbGkgcnQ9OTYxNjU4MTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYxNjU4MTAxCmFyZ3MsIGVyc3QgdWViZXIgc2NocmVpYmZlaGxlciBsdXN0aWcgbWFjaGVuLCBkYW5uIHNlbGJzdCBuZW4gYm9jawpzY2hpZXNzZW4uLi4gOi0pCgpMb2xsaS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmlyZ2VuZHdhbm4ga29tbXQgZGllIFJhY2hlIC4uLiAoQWxib2luLCAyMi4gSnVuIDIwMDAsIDE0OjAxOjE5KToKW1RvZDpMYXJzXSBFaW4gRmlzY2ggaGF0IGdlcmFkZSBLYXR6ZW50YW50ZSB1bWdlYnJhY2h0LgoKQWxib2luIGltbWVyIG5vY2gga2ljaGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCaWdCcm90aGVyIChBbnlvbmUsIDIyLiBKdW4gMjAwMCwgMjE6MjY6NDMpOgp+IyEgcm49QW55b25lIHJ0PTk2MTcwMTAxMSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk2MTcwMTAxMQpEYSBtZWluIFZvcmJlc2l0emVyIGVzIG5pY2h0IGZ1ZXIgbm9ldGlnIGVtcGZhbmQsIHNlaW5lIEFydGlrZWwKdW50ZXIgc2VpbmVtIHJpY2h0aWdlbiBOYW1lbiB6dSB2ZXJvZWZmZW50bGljaGVuLCBsb2VzY2h0IG1laW4KamV0emlnZXIgQmVzaXR6ZXIgZGllc2UgZWluZmFjaCB3aWVkZXIgcmF1cy4gOikKCkFuYXRvLi4gYWVoLCBBbnlvbmUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5hdW5kPz8/IChKZW5hbmRyYSwgMjMuIEp1biAyMDAwLCAyMzo1NDoyNyk6ClRpZWZlIFRyYXVlciB1bmQgU2NobWVyeiB1ZWJlcmtvbW10IERpY2guCkplbWFuZCBzY2hlaW50IGdlc3RvcmJlbiB6dSBzZWluLiAgCgpKZW5hbmRyYSBkZW5rdCAub08od2FzIHNjaGVydCBtaWNoIEplbWFuZD8gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcmVjaGhlaXQgKE1pcmFrYSwgMjQuIEp1biAyMDAwLCAxODoyMzo1MCk6CkR1IGZpbmRlc3QgYW4gZWluZW0ga2xlaW5lbiBFbGYga2VpbiAiSW50ZWxsaWdlbnoiLgoKRHUgZmluZGVzdCBhbiBlaW5lbSBrbGVpbmVuIEVsZiBrZWluICJHZXNjaGlja2xpY2hrZWl0Ii4KClNvd2FzIHNvbGx0ZSBuaWNodCBtZWhyIHByb2dyYW1taWVydCB3ZXJkZW4gIQoKTWlyYWthIE1hbmRyb3MsIFRpZ2VyaW4gdm9uIFhpYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadSBncm9zcz8gSWNoPyAoRm9vYmFyLCAyNS4gSnVuIDIwMDAsIDAxOjE0OjUwKToKPGZnIHp3ZXJnCkhvcHBsYSAtIGRpZXNlciBOYW1lIGlzdCByZXNlcnZpZXJ0IG9kZXIgZ2VzcGVycnQgKCJnZWJhbmlzaHQiKSEKR3J1bmQgZnVlciBkaWUgU3BlcnJ1bmc6IER1IGJpc3QgenUgZ3Jvc3MgISAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpBYmVyIGljaCBiaW4gZG9jaCBad2VyZy4gU2VsdHNhbS4KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSXMgamEgYXVjaCBzcGFldCAoR2FzdDIsIDI1LiBKdW4gMjAwMCwgMDE6MjM6MzApOgpWYW5pb24gc2NoaWVidCB2b3JzaWNodGlnIGVpbiBwYWFyIFN0YWNoZWxuIGJlaXNlaXRlIHVuZCBrdXNjaGVsdCBzaWNoIG11ZWRlCmFuIFZpb2xhcyBTY2h1bHRlci4KVmlvbGEgdW1hcm10IFZhbmlvbiB2b3JzaWNodGlnLgpWYW5pb24gc2NobmFyY2h0LCBkYXNzIGRpZSBXYWVuZGUgd2Fja2Vsbi4KZHVua2VsaGVpdCBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgpWaW9sYSBmYWxsZW4gZ2xlaWNoIGRpZSBTdGFjaGVsbiBhdXMuCgppbW1lcmhpbiB3YXIgZXMgZHJhdXNzZW4gc2Nob24gZHVua2VsLCAKR2FzdFgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN1ZXNzZSBNdWRkaWVzIDotKSAoVGlsbHksIDI2LiBKdW4gMjAwMCwgMDE6MDc6MjkpOgpbVG9kOkxhcnNdIEVpbiBHb2JsaW4gaGF0IGdlcmFkZSBTYW5nbyB1bWdlYnJhY2h0LgpbVG9kOkVpbiBHb2JsaW5dIEJyYXVjaHQgbm9jaCBqZW1hbmQgZWluIEVpcywgZWluZW4gRmxhbW1lbnBhbnplciwgZWluCltUb2Q6RWluIEdvYmxpbl0gQmx1dHNhdWdlci1TY2h3ZXJ0LCBlaW5lbiBHb2JsaW5tYW50ZWwsIGRhcyBNYWdpc2NoZSBBdWdlIHVuZApbVG9kOkVpbiBHb2JsaW5dIDcwNjIgTXVlbnplbj8KW0JlaWxlaWQ6VGlsbHldIERBUyBFSVMhIDotKQpbQmVpbGVpZDpBbmF0b2xdIERhcyBFaXMgYml0dGUuCltCZWlsZWlkOkNoYWluc2F3XSBiZWlsZWlkIDooCltCZWlsZWlkOlplcGh5cl0gRWluIEVpcyB3YWVyIG5pY2h0IHNjaGxlY2h0IDopCltCZWlsZWlkOk11cGZlbF0gaWNoIG5laG0gZGFzIGVpcwpaZXBoeXIgc2FndDogd3VhcmdoLi4gYWJlciBkaWUgUmVha3Rpb25lbiBnZWhvZXJlbiBuYWNoIFNjaG1hcnJuIDopCkdyaW1tYW4gZ3JpbnN0LgpEdSBuaWNrc3QgWmVwaHlyIHp1LgpDYWtleSBzYWd0OiBEYXMgZ2lidCBHZW1ldHplbCA6LSkKW1RvZDpMYXJzXSBFaW4gR29ibGluIGhhdCBnZXJhZGUgQmFuc2hpIHVtZ2VicmFjaHQuCltCZWlsZWlkOkdyaW1tYW5dIGRhIHdvbGx0ZSBlaW5lciBkYXMgRWlzIGhvbGVuIDopCkt0YXIgZ3JpbnN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFtZW50b2lsZXR0ZT8gKEFwb3BoaXMsIDI2LiBKdW4gMjAwMCwgMTE6Mzk6NDMpOgpTZWkgbGFldXRlcnQgRGVpbmVuIEdlaXN0Li4KUGF5YSB0aXBwZWx0IGhlcmVpbi4KU2VpIGlzc3QgZWluZSBQb3J0aW9uIGZldHRpZ2VyIFRpbnRlbmZpc2NocmluZ2UuClNlaSBiZWtyZXV6aWd0IHNpY2ggdW5kIGdlaHQgYXVmIGRpZSBUb2lsZXR0ZS4KCmhtLCBhdWYgZGVyIERhbWVudG9pbGV0dGUgbXVzc2VzIGphIHNjaGxpbW0genVnZWhlbi4uLgoKQXBvKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVlciBOaWNodHMgdW5kIHdpZWRlciBOaWNodHMuLi4gKFllbmRpLCAyNi4gSnVuIDIwMDAsIDEyOjA4OjU1KToKaHR0cDovL21hcmt0cGxhdHouZWJheS5kZS9zdGF0aWMvYXVjdGlvbi80Ni80NjEzLzQ2MTM2Ni80NjEzNjY5My5odG1sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IG5vY2ggd2FzLi4uIChHbG9pbnNvbiwgMjYuIEp1biAyMDAwLCAxMzowMDoxMCk6Cn4jISBybj1RaXRlc3MgcnQ9OTYxOTU2Mzc5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05NjA5MDc3ODgKVW5kIGRhcyBkdWVyZnRlIGljaCBkYW5uIG5pY2h0IG1pdCBtZWluZW4gQmVrYW5udGVuIChpY2ggYmV6ZWljaG5lIG1hbApkaWUgTVVEaGVpdCBzbykgZGlza3V0aWVyZW4/IEdlbWVpbiA6PgoKR2xvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBadSBncm9zcz8gSWNoPyAoR2xvaW5zb24sIDI2LiBKdW4gMjAwMCwgMTM6MDU6MzApOgp+IyEgcm49Rm9vYmFyIHJ0PTk2MTg4ODQ5MCByZz1zY2htYXJybgp+IyEgdGlkPTk2MTg4ODQ5MApEYXMgaGF0IHdhcyBtaXQgRGVpbmVtIHVubWl0dGVsYmFyZW4gIlZvcmdhZW5nZXIiIHp1IHR1bi4gRGVyIHd1cmRlIGZ1ZXIKTUcgZXR3YXMgenUgZ3Jvc3MsIHdvcmF1ZiBNRyBkYXMgSGFuZHR1Y2ggd2FyZi4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmNvbnZlcnNhdGlvbiAoUmlrdXMsIDI2LiBKdW4gMjAwMCwgMTU6Mzg6NTUpOgpPbmUgbmlnaHQsIGEgaHVzYmFuZCBhbmQgd2lmZSB3ZXJlIGhhdmluZyBhIGNvbnZlcnNhdGlvbiBvdmVyIGRpbm5lcjoKCldPTUFOOiBXaGF0IHdvdWxkIHlvdSBkbyBpZiBJIGRpZWQ/IFdvdWxkIHlvdSBnZXQgbWFycmllZCBhZ2Fpbj8KTUFOOiAgIERlZmluaXRlbHkgbm90IQpXT01BTjogV2h5IG5vdCAtIGRvbid0IHlvdSBsaWtlIGJlaW5nIG1hcnJpZWQ/Ck1BTjogICBPZiBjb3Vyc2UgSSBkby4KV09NQU46IFRoZW4gd2h5IHdvdWxkbid0IHlvdSByZW1hcnJ5PwpNQU46ICAgT2theSwgSSdkIGdldCBtYXJyaWVkIGFnYWluLgpXT01BTjogWW91IHdvdWxkPyAod2l0aCBhIGh1cnRmdWwgbG9vayBvbiBoZXIgZmFjZSkKTUFOOiAgIChtYWtlcyBhdWRpYmxlIGdyb2FuKQpXT01BTjogV291bGQgeW91IHNsZWVwIHdpdGggaGVyIGluIG91ciBiZWQ/Ck1BTjogICBXaGVyZSBlbHNlIHdvdWxkIHdlIHNsZWVwPwpXT01BTjogV291bGQgeW91IHB1dCBhd2F5IG15IHBpY3R1cmVzLCBhbmQgcmVwbGFjZSB0aGVtIHdpdGggcGljdHVyZXMgb2YKaGVyPwpNQU46ICAgVGhhdCB3b3VsZCBzZWVtIGxpa2UgdGhlIHByb3BlciB0aGluZyB0byBkby4KV09NQU46IEFuZCB3b3VsZCB5b3UgbGV0IGhlciB1c2UgbXkgZ29sZiBjbHVicz8KTUFOOiAgIFNoZSBjYW4ndCB1c2UgdGhlbTsgc2hlJ3MgbGVmdC1oYW5kZWQuCldPTUFOOiAtIC0gLSBzaWxlbmNlIC0gLSAtCk1BTjogICBzaGl0LnNoaXQuc2hpdC4uLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbWFjaHQgZG9jaCBhdWNoIG1hbCBlaW5lciBkaWUgZ3JhZWJlciB6dTopIChOaXp6bCwgMjYuIEp1biAyMDAwLCAyMTo1NToxOCk6CkNpbmRlcmVsbGEgcnVmdDogISYkIychISBHcnViZSEKRWluIGVudHNldHpsaWNoZXIgU2NocmVpIGhhbGx0IHZvbSBGcmllZGhvZiBoZXJ1ZWJlci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogcGFydHlrb3N0ZW4gKEFuYXRvbCwgMjcuIEp1biAyMDAwLCAxNzo0MzowMSk6Cn4jISBybj1Ib29kIHJ0PTk2MjExOTg5NCByZz1wYXJ0eQp+IyEgdGlkPTk2MjA1NTU0OQpXZWxjaGUgd2VpdGxhZXVmaWdlIE1laW51bmdlbj8hIDopCgpBbmF0b2wsIGZhc3N1bmdzbG9zIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNToga29zdGVuIGRpZSAyLiAoQW5hdG9sLCAyNy4gSnVuIDIwMDAsIDE5OjQ5OjE1KToKfiMhIHJuPVBhZHJlaWMgcnQ9OTYyMTI4MDMxIHJnPXBhcnR5Cn4jISB0aWQ9OTYyMTIwNzczCkZsdWVzc2lnbmFocnVuZywgZ2VsbD8gOykKCnNjbnIgOykKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llIGRlbm4gbnVuPz8gKE9oYW0sIDI3LiBKdW4gMjAwMCwgMjE6MDE6MDgpOgooaW5mbykgCi4uLi4KVmVyZ2xpY2hlbiBtaXQgRGVpbmVuIE1pdHNwaWVsZXJuLCBrZW5uc3QgRHUgRGljaCBpbSBNb3JnZW5HcmF1ZW4KYmVzc2VyIGFscyBkZXIgRHVyY2hzY2huaXR0IGF1cy4gQWJzb2x1dCBnZXNlaGVuIGJpc3QgRHUgZHVyY2hhdXMKc2Nob24gaGVydW1nZWtvbW1lbi4gCkFsdGVyOiAgMjUgVGFnZSAzIFN0dW5kZW4gMjIgTWludXRlbiAxOCBTZWt1bmRlbi4KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQooZXJob2VoZSkKQXVmIGluJ3MgR2VmZWNodCwgdmllbCBmZWhsdCBuaWNodCBtZWhyLgpVbSBTZWhlciBvZGVyIE1hZ2llciB3ZXJkZW4genUga29lbm5lbiBzb2xsdGVzdCBEdSBEaWNoIGJlc3NlciBpbSBNb3JnZW5HcmF1ZW4KYXVza2VubmVuIGFscyBkZXIgRHVyY2hzY2huaXR0LgoKSW1tZXIgbm9jaCBncnVlYmVsbmQsCgpPaGFtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogcGFydHlrb250byAoQmFtYmksIDI4LiBKdW4gMjAwMCwgMTE6Mjc6MTQpOgp+IyEgcm49R25vbWUgcnQ9OTYyMDUyNjU3IHJnPXBhcnR5Cn4jISB0aWQ9OTYyMDUyNjU3ClZlcndlbmR1bmdzendlY2s/Cldlbm4gaWNoIEJpZXIgdHJpbmtlbiB3dWVyZCwgaGFldHQgaWNoIGRhIGVpbmVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQb3N0ZXIgKERlZXBibHVlLCAyOS4gSnVuIDIwMDAsIDEzOjI4OjI4KToKICAgICAgICBNaWNyb3NvZnQ6IFdoZXJlIGRvIHlvdSB3YW50IHRvIGdvIHRvZGF5PwogICAgICAgIExpbnV4OiAgICAgV2hlcmUgZG8geW91IHdhbnQgdG8gZ28gdG9tb3Jyb3c/CiAgICAgICAgQlNEOiAgICAgICBBcmUgeW91IGd1eXMgY29taW5nLCBvciB3aGF0PwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1Qb3N0ZXIgYXQgTGludXhXb3JsZCAyMDAwCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTGllYmVzIFRhZ2VidWNoLC4uLiAoR2xvaW5zb24sIDI5LiBKdW4gMjAwMCwgMTU6MDc6MTMpOgp+IyEgcm49QW5hdG9sIHJ0PTk2MjI4MzA3NCByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD05NjIyNjk3OTcKRGFzIG1hY2h0IHNpZSBhYmVyIG5vY2ggbmljaHQgc2NobGVjaHQuIFdlbm4gZGVyIE5QQyBnZWtlbm56ZWljaG5ldCBpc3QsCmthbm4gamEgYXVjaCBhbGxlbiBrbGFyIHNlaW4sIGRhc3MgZXIgcG90ZW50aWVsbCBtaXRob2VydC4gSWNoIGVyaW5uZXJlCmFuIGVpbmVuIFBsYXR6IGF1ZiBkZXIgVHJpYnVlbmUgLSBkZXIgaG9lcnQgendhciBuaWNodCBnYW56IG1pdCwgcmVpY2h0CmFiZXIgYXVjaCBzY2hvbi4KCkdsb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgZGFzPyAoRm9vYmFyLCAyOS4gSnVuIDIwMDAsIDE5OjQ5OjE2KToKTmV1bGljaCBiZWkgbWVpbmVtIFp3ZWl0aWU6CgpEZXIgVGl0YW4gYXVzIEVpcyBmYWVsbHQgdG90IHp1IEJvZGVuLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBUaXRhbmVuIGF1cyBFaXNdIEljaCBmb3JkZXJlIFJldmFuY2hlLCBNYWFyZyEKW01vZXJkZXI6R2Vpc3QgZWluZXMgRWlzZ2lnYW50ZW5dIEZpbmRlc3QgRHUgZGFzIGZhaXIsIEJpZ2FzPwo+IHNwb3R0ZSBHZXJuZS4KW01vZXJkZXI6TWFhcmddIEdlcm5lLgpIaXNBc3VsIHdlaHJ0ICJzcG90dGUiIGFiLgpEdSB2ZXJzcG90dGVzdCBEZWluIHRvdGVzIE9wZmVyLgoKS2FubiBtaXIgZWluZXIgc2FnZW4gd29oZXIgZGllIE1lbGR1bmcgbWl0IEhpc0FzdWwga29tbXQ/IERlciBzdGFuZCBuaWNodCBpbQpSYXVtLCBhdWYgZGVtIEZCYW5kIG1laW5pZXMgWndlaXRpZXMgaXNzZXIgYXVjaCBuaWNodC4uLgoKR3J1c3MsCgogICAgRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2llIGRhcz8gKFN3b29wLCAyOS4gSnVuIDIwMDAsIDE5OjUyOjQzKToKfiMhIHJuPUZvb2JhciBydD05NjIzMDA5NTYgcmc9c2NobWFycm4KfiMhIHRpZD05NjIzMDA5NTYKQWxiZXJuIGFiZXIgd2FociAtIGRpZSBLb21tYW5kb2tldHRlIHJlaWNodCBiaXMgaGluIHp1bSBLYW5hbC4gRHUgc2VuZGVzdApldHdhcyBhdWYgZGVtIEthbmFsIG1pdCAic3BvdHRlIiAtIEhpc0FzdWwgYmVrb21tdCBkYXMgLSBkYXMgS29tbWFuZG8Kd2lyZCBhdWYgSWdub3JpZXJlbiBnZXBydWVmdCB1bmQgRHUgYmVrb21tc3QgZGllIE1lbGR1bmcsIGRhc3MgZXIgZXMKaWdub3JpZXJ0IC4uLgoKU3dvb3AKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2llIGRhcz8gKEdub21lLCAyOS4gSnVuIDIwMDAsIDIzOjI0OjQyKToKfiMhIHJuPVN3b29wIHJ0PTk2MjMwMTE2MyByZz1zY2htYXJybgp+IyEgdGlkPTk2MjMwMDk1NgpkYW5uIG11ZXNzdGUgamEgamVkZXIsIGRlciBzcG90dGV0LCBkaWUgbWVsZHVuZyBrcmllZ2VuLCB3ZW5uIEhpc0FzdWwKZWluZ2Vsb29ndCBpc3QuCmhvZXJ0IHNpY2ggbmljaHQgc28gbG9naXNjaCBhbi4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXaWUgZGFzPyAoR25vbWUsIDI5LiBKdW4gMjAwMCwgMjM6Mjk6MDApOgp+IyEgcm49R25vbWUgcnQ9OTYyMzEzODgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYyMzAwOTU2Cmh1cHMsIGhhYiBlYmVuIGVyZmFocmVuLCBkYXNzIGVzIGRvY2ggc28gaXN0Lgp3YXMgbWljaCB3dW5kZXJ0LCBpc3QsIGRhc3Mgc2ljaCBub2NoIGtlaW5lciBiZXNjaHdlcnQgaGF0LCB3ZW5uIGVpbmVtCmRhdWVybmQgJy4uLiB3ZWhydCBzcG90dGUgYWIuJyB2b3JnZXNldHp0IGJla29tbXQuCgprb2VubnRlIG1hbiBkYXMgYXVzYmF1ZW4/Cgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2llIGRhcz8gKERpZWRlciwgMzAuIEp1biAyMDAwLCAwMDowNzo1Nyk6Cn4jISBybj1Hbm9tZSBydD05NjIzMTQxNDAgcmc9c2NobWFycm4KfiMhIHRpZD05NjIzMDA5NTYKbGllZ3QgZGFzIG5pY2h0IGRhcmFuLCBkYXNzIER1IGRpZSBNZWxkdW5nIHdvaGwgbnVyIGtyaWVnc3QsIHdlbm4gZGVyCiJJZ25vcmllcmVyIiBpbSBzZWxiZW4gUmF1bSBpc3Q/IHNvbnN0IHNpZWhzdCBkdSBqYSB3b2hsIG5pY2h0LCB3ZXIgYWxsZXMgZGFzCiJTcG90dGUiIGlnbm9yaWVydCAtIHVuZCBpbnNnZXNhbXQgc2luZCBlcyB3b2hsIG5pY2h0IGFsbHp1IHZpZWxlLCBkZW5rIGljaAptaXIuIERhcmFuIGtvZW5udGUgZXMgbGllZ2VuIDotKQoKRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXaWUgZGFzPyAoU3dvb3AsIDMwLiBKdW4gMjAwMCwgMDA6MTQ6NDUpOgp+IyEgcm49RGllZGVyIHJ0PTk2MjMxNjQ3NyByZz1zY2htYXJybgp+IyEgdGlkPTk2MjMwMDk1NgpEdSBtaXNzdmVyc3RlaGVuIC0gZGEgZXMgdWViZXIgZGVuIEthbmFsIGdlaHQsIGlzdCBlcyBoaWVyIHVuYWJoYWVuZ2lnCnZvbSBTdGFuZG9ydCBkZXMgTnV0emVycy4gKmtyYXR6KiBEZW4gRU1zIHdpcmQgZGEgc2ljaGVyIGV0d2FzIGVpbmZhbGxlbi4KTWFuY2htYWwgaXN0IGVpbiByZW1vdGUgImlnbm9yaWVydCAuLi4iIGF1ZiBWZXJiZW4gamEgZ2V3b2xsdCAuLi4KClN3b29wCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBXaWUgZGFzPyAoRGllZGVyLCAzMC4gSnVuIDIwMDAsIDAwOjE3OjA1KToKfiMhIHJuPVN3b29wIHJ0PTk2MjMxNjg4NSByZz1zY2htYXJybgp+IyEgdGlkPTk2MjMwMDk1Ngp1bmQgd2llc28gaGFiIGljaCBkYW5uIGJpc2hlciBkaWUgTWVsZHVuZyBuaWUgZ2VzZWhuLCBzb25kZXJuIG51ciwgd2VubiBpY2gKbWl0IGRlbSAiSWdub3JpZXJlciIgKHdpbGwgaWhuIG5pY2h0IGFscyBJZ25vcmFudCBiZXplaWNobmVuIDotKSkpIGltIGdsZWljaGVuClJhdW0gc3RhbmQ/CgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFdpZSBkYXM/IChGb29iYXIsIDMwLiBKdW4gMjAwMCwgMDQ6MzY6MjIpOgp+IyEgcm49RGllZGVyIHJ0PTk2MjMxNzAyNSByZz1zY2htYXJybgp+IyEgdGlkPTk2MjMwMDk1NgpLZWluZSBBaG51bmcuCgpJY2ggaGFicyBoZXV0ZSBhdWNoIHp1bSBlcnN0ZW4gTWFsIHNvIGVybGVidC4gVW5kIEhpc0FzdWwgc3RhbmQgX2RlZmluaXRpdl8KbmljaHQgaW0gUmF1bS4KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2llIGRhcz8gKFRpYW1haywgMzAuIEp1biAyMDAwLCAxMToxODo1Myk6Cn4jISBybj1Hbm9tZSBydD05NjIzMTQxNDAgcmc9c2NobWFycm4KfiMhIHRpZD05NjIzMDA5NTYKRXMgd2FyIGVpbiBCdWcuIE5hY2ggRW5kZS9SZWJvb3QgaXN0IGVyIGRyYXVzc2VuLgoKClRpYW1hay4gTmltbXQgQnVnbWVsZHVuZ2VuIGFiZXIgYXVjaCBwZXIgTWFpbCBlbnRnZWdlbi4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadSBSaXNpa2VuIHVuZCBOZWJlbndpcmt1bmdlbiAuLi4gKFRpYW1haywgMzAuIEp1biAyMDAwLCAxMzoxMjoyMyk6ClJpa3VzIGdydWViZWx0LCBkZW5rdCBzY2hhcmYgbmFjaCB1bmQga3JhbXQgc2NobGllc3NsaWNoIGV0d2FzIGF1cyBkZW4gVGllZmVuIApzZWluZXIgVGFzY2hlbiBoZXJ2b3IuClJpa3VzIHB1c3RldCBlaW5lbiBtYWdpc2NoZW4gS3VzcyBnZW4gSGltbWVsLgpNdWFkaWIgdmVyd3VzY2hlbHQgRGVpbmUgSGFhcmUgYXVzIGRlciBGZXJuZS4KCgpUaWFtYWsgZ2VodCBzZWluZW4gQXBvdGhla2VyIGVyc2NobGFnZW4gO14pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEb3BwZWxtb3JkIChWYW5pb24sICAxLiBKdWwgMjAwMCwgMTk6MzQ6NDQpOgpbVG9kOkxhcnNdIEVpbiBEYWkgV29uZyBMb25nIGhhdCBnZXJhZGUgQXN1a2EgdW1nZWJyYWNodC4KW1RvZDpFaW4gRGFpIFdvbmcgTG9uZ10gVmllbGVpY2h0IGtsYXBwdCBlcyBqYSBiZWltIG5hZWNoc3RlbiBNYWwsIEFzdWthIQpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgTXVwZmVsLgoKU293YXMsIHp3ZWkgYXVmIGVpbmVtIFN0cmVpY2guClZhbmlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG0ga29taXNjaCAsbykgKEhpZ2h0LCAgMS4gSnVsIDIwMDAsIDIzOjIxOjU1KToKSnVzdGF2aXVzIHdlaWx0IHdpZWRlciB1bnRlciBkZW4gTGViZW5kZW4uCltBbGxnZW1laW46SnVzdGF2aXVzXSB3ZWlzIHdlciB3byBkZXIgaGV4ZW53YWxkIGlzPwoKaGlnaHQgYW4gZGVuIHJhdHRlbnNjaHdhbnogYW4gZGluZ2VuIGRlbmtlbmQgZGllIGVyIG5hY2ggZGVtIGVpbmxvZ2dlbiBtYWNodApiZXZvciBlciBpbiBkZXIgbGFnZSBpcyBhdWYgbmVyIGViZW5lIHdhcyB6dSBzZW5kZW4gLG8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpsdWVnbmVyISAoR25vbWUsICAyLiBKdWwgMjAwMCwgMDM6MTE6NTIpOgpDYWtleSB0ZWlsdCBEaXIgbWl0OiBXZXIgYnJhdWNoIHNjaG9uIEJpZXIKLi4uCkNha2V5IHRlaWx0IERpciBtaXQ6IEljaCBrb21tZSBhdWNoIG9obmUgdG90YWwgZ3V0IHp1cmVjaHQhCgpqYSBnZW5hdS4gdW5kIGljaCBzdGVoIGF1ZiBiZWhhcnJ0ZSBtYWVubmVyLiA6KQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBsdWVnbmVyISAoR29yb2csICAyLiBKdWwgMjAwMCwgMTE6NTQ6NTMpOgp+IyEgcm49R25vbWUgcnQ9OTYyNTAwMzEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYyNTAwMzEyCkR1IHNjaGxhZWZzdCBhdWYgZGVyIFBhcnR5IGFiZXIgbmljaHQgaW4gZGVtIGdsZWljaGVuIHdpZSBpY2ggb2Rlci4uLgoKR29yb2cga29lbm50ZSBzaWNoIGFiZXIgYXVjaCByYXNpZXJlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBsdWVnbmVyISAoTGlhcmEsICAyLiBKdWwgMjAwMCwgMTE6NTc6MjkpOgp+IyEgcm49R25vbWUgcnQ9OTYyNTAwMzEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYyNTAwMzEyCk5lZWVlZWVlLCBEVSBzdGVoc3QgYXVmIFBvcnRhbGUuCgpTY2hvbiB2ZXJnZXNzZW4/IDstKQoKTGlhcmEsIFp3ZXJnZW56YXViZXJpbmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmR1bW1lciBuYWNoYWVmZmVyIChUaGFub3MsICAyLiBKdWwgMjAwMCwgMTU6MzU6MzcpOgoKRHUgc2V0enQgRGljaCBoaW4gdW5kIGZhZW5nc3QgYW4genUgbWVkaXRpZXJlbi4KRGllIFByaW56ZXNzaW4gc2V0enQgc2ljaCBpbiBkZW4gU2NobmVlIHVuZCBtZWRpdGllcnQuCgpuYW5hLCBhbHNvIHdlbm4gZHUgZGFzIGF1Y2ggbWFjaHN0IGxhc3MgaWNoIGRpY2ggYWIgamV0enQgaW4gcnVoZSA6KQpUaGFub3MsIHppdHRlcnQgbmFjaCBqZWRlciBtZWRpdGF0aW9uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWb3JzaWNodCwgTWFnaWVyLiAoVmFuaW9uLCAgMi4gSnVsIDIwMDAsIDIyOjQzOjIzKToKICBSaWt1cyBncmVpZnQgVmVyc3RvZXJ0ZXIgbWl0IGRlciBNYWNodCBkZXIgRHVua2VsaGVpdCBhbi4KICBSaWt1cyB6ZXJzdGFldWJ0IFZlcnN0b2VydGVyLgpWZXJzdG9lcnRlciBmYWVsbHQgdG90IHp1IEJvZGVuLgpEdSBzaWVoc3QgZWluZSBkdW5rbGUgR2VzdGFsdCwgZGllIGV0d2FzIER1bnN0IGVpbnNhbW1lbHQgLi4uIG9kZXIgdmllbGxlaWNodApiaWxkZXN0IGR1IERpciBkYXMgYXVjaCBudXIgZWluIC4uLgpbVG9kOkxhcnNdIFJpa3VzIGhhdCBnZXJhZGUgVmVyc3RvZXJ0ZXIgdW1nZWJyYWNodC4KLi4uClRhcmFnb24gc2FndDogcHVoLCBoYWIgaWNocyBncmFkIG5vY2ggZ2VzY2hhZmZ0IDstKQouLi4KUmlrdXMgZ3JpbnN0LgpEdSBzY2h1ZXR0ZWxzdCBlcnNjaHVldHRlcnQgZGVuIEtvcGYuCkVpbmUgTGVpY2hlIHdpcmQgdm9uIFJpa3VzIHZvbGwgSGluZ2VidW5nIHZlcnNwZWlzdC4KRXJpbm5lcnQgZXVjaCBkYXJhbiwgd2VubiBpaHIgZGFzIG5hZWNoc3RlIG1hbCBmcmVjaCB6dSAnbmVtIE1hZyBzZWlkIDstKQpWYW5pb24gKGh1bmdyaWcpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzZW5zaWJlbGNoZW4gKE11YWRpYiwgIDMuIEp1bCAyMDAwLCAxNDozNjo0OSk6CkVpc2lsZWlzIC0gSkFBQUhBSEFBQUFBIGR1IHNjaG1laXNzdCBLbG9uayBkZW4gS2F1dHNjaHVraGFtbWVyIGFuIGRlbiBLb3BmLgpEYXMgbWFjaHQgU3Bhc3MuIEFBaGggdW5kIHdpZSBLbG9uayBkYWJlaSB3YWhyc2NoZWlubGljaCBhdXMgZGVyIFdhZXNjaGUKZ3Vja3QsIGVpbmZhY2ggaGVycmxpY2guCktsb25rICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc293YXMgKFJlZHNoaXJ0LCAgMy4gSnVsIDIwMDAsIDE1OjEwOjQ3KToKQWxzIER1IGdyYWRlIGRpZSBQb3N0c3RhdGlvbiB2ZXJsYXNzZW4gd2lsbHN0LCBoYWVsdCBIYW4gUGFpIERpY2ggYXVmOgonRWluZSBrbGVpbmUgU3BlbmRlLCBkYW1pdCBFdXJlIFBvc3QgYXVjaCB3aXJrbGljaCBzY2huZWxsIGFua29tbXQhIERlciBXZWcKaW4gZGVuIE9zdGVuIGlzdCB3ZWl0IHVuZCBnZWZhZWhybGljaCwgZGEgd2FlcmUgZWluZSBrbGVpbmUgU29uZGVybGVpc3R1bmcKZG9jaCBhbmdlYnJhY2h0LiBEaWUgU3BlbmRlIGJldHJhZWd0IG51ciA0OCBNdWVuemVuLCBkaWUgSWhyIG1pdCBkZW0gQmVmZWhsCjxTcGVuZGU+IGxlaXN0ZW4ga29lbm50LmAKW0FsbGdlbWVpbjpFbnNjaGllXSBpY2ggc2FnZSBudXIgQXVmc2Nod3VuZyBvc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWNob3MgaW4gZnJlbWRlbiBOYW1lbiAoVGFyYWdvbiwgIDMuIEp1bCAyMDAwLCAxNjo1ODo1Myk6Cn4jISBybj1Cb2luZyBydD05NjI2MzQ2ODkgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTk2MjYzNDQ2Nwo+IEtsZWluZSBBbm1lcmt1bmc6Cj4gRWNob3Mgdm9uIFNlaGVybiB3ZXJkZW4gZ2Vsb2dndCB1bSBNaXNzYnJhdWNoIGRpZXNlciBBcnQgenUgdmVyaGluZGVybi4KSG1tbS4uLiBoYWJ0IGlociBldWNoIG5pY2h0IG1hbCB1ZWJlcmxlZ3QgYmVpIGVuZGVtb2wgenUgYXJiZWl0ZW4gPyBNaXQgZXVyZW0KcGFyYW5vaWEtdW5kLWFsbGVzLW1vZWdsaWNoZS1taXRsb2dnLWxldmVsIGtvZW5udGV0IGlociBkYSBzZWhyIGd1dGUgY2hhbmNlbgpoYWJlbiBiZWkgZGVyIG5hZWNoc3RlbiBiaWdicm90aGVyIHN0YWZmZWwgZGFiZWl6dXNlaW4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFY2hvcyBpbiBmcmVtZGVuIE5hbWVuIChTaWx2YW5hLCAgMy4gSnVsIDIwMDAsIDE3OjAzOjE1KToKfiMhIHJuPVRhcmFnb24gcnQ9OTYyNjM2MzMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYyNjM0NDY3CkljaCBlcmtsYWVyZSBUYXJhZ29uIGhpZXJtaXQgenVtIEZyZWl3aWxkLCB3YXMgZGFzIGJlZmV1ZXJuIG1pdCBlY2hvcyBhbmdlaHQuCjstKQoKU2lsdmFuYSAoZGllIG1pdCBOYWNoZHJ1Y2sgZGFyYXVmIHZlcndlaXN0LCBpbiB3ZWxjaGVyIFJ1YnJpayBkZXIgQXJ0aWtlbApzdGVodCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVjaG9zIGluIGZyZW1kZW4gTmFtZW4gKFRhcmFnb24sICAzLiBKdWwgMjAwMCwgMTg6MTA6MzYpOgp+IyEgcm49U2lsdmFuYSBydD05NjI2MzY1OTUgcmc9c2NobWFycm4KfiMhIHRpZD05NjI2MzQ0NjcKSGV5LCBkYW5uIGZldWVyZSBpY2ggYWJlciBtaXQgbmFjaGRydWNrIHp1cnVlY2sgOi0pCgpUYXJhZ29uIChkZXIgbWl0IG5hY2hkcnVjayBkYXJhdWYgaGlud2Vpc3QsIGRhc3MgZGllIGFudHdvcnQgbmljaHQgdW1zb25zdCB2b24KaWhtIGluICdzY2htYXJybicgc3RlaHQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFY2hvcyBpbiBmcmVtZGVuIE5hbWVuIChIb29kLCAgMy4gSnVsIDIwMDAsIDE4OjQ0OjA2KToKfiMhIHJuPVRhcmFnb24gcnQ9OTYyNjM2MzMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYyNjM0NDY3CmRhcyBwcm9ibGVtIGlzdCwgZGFzcyBlcyBzY2hvbiBtZWhyZmFjaCBhZXJnZXIgZ2FiLCBuaWNoIGVyc3QgaGV1dGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVjaG9zIGluIGZyZW1kZW4gTmFtZW4gKExlaWJuaXosICAzLiBKdWwgMjAwMCwgMTg6NTg6MjcpOgp+IyEgcm49SG9vZCBydD05NjI2NDI2NDYgcmc9c2NobWFycm4KfiMhIHRpZD05NjI2MzQ0NjcKaWNoIGZpbmRlIG1hbiBzb2xsdGUgc2Nob24gZXJmYWhyZW4sIHdlbm4gbWFuIGVjaG8gYmVrb21tdCwgZGFzcyBkYXMgZ2Vsb2dndAp3aXJkIHVuZCBuaWNodCBlcnN0IG1vbmF0ZSBzcGFldGVyLgoKbGVpYmkgZnVlaGx0IHNpY2ggYmVvYmFjaHRldAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRWNob3MgaW4gZnJlbWRlbiBOYW1lbiAoSG9vZCwgIDMuIEp1bCAyMDAwLCAxOToxNzo1Mik6Cn4jISBybj1MZWlibml6IHJ0PTk2MjY0MzUwNyByZz1zY2htYXJybgp+IyEgdGlkPTk2MjYzNDQ2NwpkdSB3aWxsc3QgbWlyIGpldHp0IG5pY2h0IGVyemFlaGxlbiwgZGFzcyBkdSBwcml2YXRlIGdlc3ByYWVjaGUgdWViZXIKZWNobyBmdWVocnN0PyA6KQplcyBnaWJ0IGltIG11ZCB3ZWl0YXVzIGJlZGVua2xpY2hlcmUgbG9nLWZpbGVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBFY2hvcyBpbiBmcmVtZGVuIE5hbWVuIChMZWlibml6LCAgMy4gSnVsIDIwMDAsIDE5OjIxOjM0KToKfiMhIHJuPUhvb2QgcnQ9OTYyNjQ0NjcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYyNjM0NDY3Cm5lZSBkYXp1IGhhYiBpY2ggenUgd2VuaWcgbXBzIDopCgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGljaHRnZXNjaHdpbmRpZ2tlaXQ/IChOZXZvaywgIDQuIEp1bCAyMDAwLCAwMDowODo0Nik6CkFsc28sIGRhc3MgTGljaHQgc2NobmVsbCBpcywgaXMga2xhciwgYWJlciBkYXMgTGljaHQgZXJzY2hlaW50IGJldm9yIGVzCmxldWNodGV0PwpadW0gQmV3ZWlzOgoKR29sYXMgd2lua3QuCkdvbGFzIGZvbGd0IGRlbSBMaWNodCBzZWluZXIgR2ViaWV0ZXJpbiBuYWNoIE5vcmRlbi4KVW5hc2FpIHZlcmt1c2NoZWx0IHNpY2ggbmFjaCBOb3JkZW4uCgpIbW1tbW1tbW1tCgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExpY2h0Z2VzY2h3aW5kaWdrZWl0PyAoTWF0aXMsICA0LiBKdWwgMjAwMCwgMDA6MTA6MDApOgp+IyEgcm49TmV2b2sgcnQ9OTYyNjYyMTI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYyNjYyMTI2Ck5lbm50IHNpY2ggZ2xhdWJlIGljaCBUdW5uZWxlZmZla3QuCgpNYXRpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBMaWNodGdlc2Nod2luZGlna2VpdD8gKE5ldm9rLCAgNC4gSnVsIDIwMDAsIDAwOjExOjI2KToKfiMhIHJuPU1hdGlzIHJ0PTk2MjY2MjIwMCByZz1zY2htYXJybgp+IyEgdGlkPTk2MjY2MjEyNgpPZGVyIFR1bm5lbGJsaWNrLCBzb2xsIHNwZXppZWxsIGluIGZydWVoZW4gQmV6aWVodW5nc3BoYXNlbiB2ZXJtZWhydAphdWZrb21tZW4sIG1laXN0IHJvc2FmYXJiZW5lciBOYXR1ci4gT2Z0IGluIEtvbmdsb21lcmF0aW9uIG1pdApXb2Vsa2NoZW5sYXVmZXJlaS4uLnVuZCBTaWxiZXJibGljay9UcmV1ZXItU2NoYWZzLUJsaWNrCgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaWNoIHdlcmRlIG5pZSB3aWVkZXIgc3VlbmRpZ2VuLi46KSAoVW5hc2FpLCAgNC4gSnVsIDIwMDAsIDE4OjI1OjQwKToKRGVpbiBGcmV1bmQgR3VhcmQgdGVpbHQgRGlyIG1pdDogTElFQkxJTkdTRUxGRSEhISEKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IExJRUJMSU5HU0hPQkJJVCA6KSAKCkRldmlsY2hlbiB0ZWlsdCBEaXIgbWl0OiB3aWUsIGVzIGdpYnQgbm9jaCBob2JiaXRzIG5lYmVuIG1pcj8gMTAuIGdlYm90OiBkdQpEZXZpbGNoZW4gdGVpbHQgRGlyIG1pdDogc29sbHN0IGtlaW5lIGFuZGVyZW4gaG9iYml0cyBuZWJlbmhlciBoYWJlbjspIFsxODoyMV0KCkR1IHRlaWxzdCBEZXZpbGNoZW4gbWl0OiBpY2gga2FubiBkb2NoIGd1YXJkIG5pY2ggdmVyc3Rvc3NlbiAKVW5hc2FpIGVudHNjaHVsZGlndCBzaWNoIGluIGFsbGVyIEZvcm0gYmVpIERldmlsY2hlbiBhdXMgZGVyIEZlcm5lLgoKRGV2aWxjaGVuIHRlaWx0IERpciBtaXQ6IG5hZ3V0LCBnZW5laG1pZ3Q7KSBbMTg6MjFdICAKCmVpbiBHbHVlY2ssIGRhc3Mgc2llIG5pY2ggYWxsenUgaHVuZ3JpZyB3YXIsIHNvbnN0IHdhZXIgaWNoIGpldHp0IHZlcm11dGxpY2gKSGFja2ZsZWlzY2ggOikKClVuYSogCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbS4gKE1pcmFrYSwgIDQuIEp1bCAyMDAwLCAxOTowNDo0OCk6CkRpZXNlciBncm9zc2UgU2Nod2FybSBXaWxkZ2FlbnNlIG1hY2h0IGhpZXIgZWluZSBrbGVpbmUgUmFzdCwgdW0gc2ljaCB2b24gZGVuClN0cmFwYXplbiBlaW5lcyBsYW5nZW4gRmx1Z2VzIHp1IGVyaG9sZW4gdW5kIG5ldWUgS3JhZWZ0ZSBmdWVyIGRlbiBXZWl0ZXJmbHVnCnp1IHNhbW1lbG4uIEF1ZmdlcmVndGVzIFNjaG5hdHRlcm4gZXJmdWVsbHQgZGllIEx1ZnQgdW5kIERlaW5lIEFud2VzZW5oZWl0CnNjaGVpbnQgZGllIEdhZW5zZSBuaWNodCBpbSBHZXJpbmdzdGVuIHp1IHN0b2VyZW4uIFZpZWxlIGRlciBXaWxkZ2FlbnNlIHNpbmQKdm9uIGVpbmVtIGtyYWVmdGlnZW4gS29lcnBlcmJhdSwgdW5kIGtvZW5udGVuIGR1cmNoYXVzIG5vY2ggZWluaWdlcyBhbgp6dXNhZXR6bGljaGVtIEdld2ljaHQgbWl0IHNpY2ggZHVyY2ggZGllIEx1ZWZ0ZSB0cmFnZW4uIFdlbm4gRHUgYWxzbyBzY2hvbgppbW1lciBlaW5tYWwgTmlscyBIb2xnZXJzc29uIHNwaWVsZW4gd29sbHRlc3QsIHNwcmluZyBkb2NoIGVpbmZhY2ggZWluZXIgZGVyCkdhZW5zZSBhdWYgZGVuIGJyZWl0ZW4gUnVlY2tlbi4gQWJlciBoYWx0ZSBEaWNoIGRhbm4gYXVjaCBndXQgZmVzdCEKRXIgZW50aGFlbHQ6CjI3NDUgU3RhYm1hZ2llcHVua3RlLgoKS2xhc3NlIFNjaHdhcm0sIG9kZXI/CgpNaXJha2EgTWFuZHJvcywgVGlnZXJpbiB2b24gWGlhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJsdW1lbiBhdWYgaWhyIEdyYWIgKE1lc2lyaWksICA0LiBKdWwgMjAwMCwgMjM6MjE6MzUpOgogIER1IC4uLi5ub3JtYWwvQmllbmVuc3RhY2hlIHNlaHIgaGFydCAtPiBMaGFuYSBkaSBMZW9uICoqKioqKioqCkxoYW5hIGRpIExlb25kcm8gdmVyd2Vsa3QgaW4gU2VrdW5kZW4uClZvbiBEZXIgR2FtZURyaXZlcjogRGVpbiBIZXJ6c2NobGFnIGhhdCBhdXNnZXNldHp0IQpMaGFuYSBiaWV0ZXQgRGlyIGVpbiBwYWFyIEJsdW1lbiBhbi4KVm9uIERlciBHYW1lRHJpdmVyOiBEZWluIEhlcnpzY2hsYWcgaGF0IHdpZWRlciBlaW5nZXNldHp0LgpNZXNpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZydWVoIHVlYnQgc2ljaC4uLiAoR2xvaW5zb24sICA1LiBKdWwgMjAwMCwgMjI6MTg6MzEpOgp+IyEgcm49Um9jaHVzIHJ0PTk2MjgxNTE5OCByZz1wYXJ0eQp+IyEgdGlkPTk2MjgxNDAyNQpXZW5uIGljaCBkYWJlaSBuaWNodCB3aWVkZXIgZWluIFVociB2ZXJsaWVyZSAtIGtsYXIgOl0KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkphamEgLi4uIDspIChCb2luZywgIDYuIEp1bCAyMDAwLCAxODozNTozMik6ClBhZHJlaWMgc2FndDogaWNoIElESU9UISEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEphamEgLi4uIDspIChBbmF0b2wsICA2LiBKdWwgMjAwMCwgMTg6MzU6NTQpOgp+IyEgcm49Qm9pbmcgcnQ9OTYyOTAxMzMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYyOTAxMzMyCldpZXNvIHN0ZWh0IGRhcyBpbiBTY2htYXJybj8KCkFuYXRvbCAqZHVjayogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQ3Jhc2ggdW5kIFJlYm9vdCAoVGlhbWFrLCAgNi4gSnVsIDIwMDAsIDE5OjIwOjA5KToKfiMhIHJuPVByYSBydD05NjI5MDIyNTAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NjI5MDIyNTAKSWNoIG5laG1lIGRhcyAidW5hY2h0c2FtIiB6dXJ1ZWNrIHVuZCBlcnNldHplIGVzIGR1cmNoICJ1bndlaXNlIi4KCgpUaWFtYWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSmFqYSAuLi4gOykgKFd1cnplbCwgIDYuIEp1bCAyMDAwLCAyMjozMDowOSk6Cn4jISBybj1BbmF0b2wgcnQ9OTYyOTAxMzU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYyOTAxMzMyCndlaWwgZXMgZnVlciAiYmVrYW5udG1hY2h1bmdlbiIgbmljaHQgbmV1IGdlbnVnIGlzdC4KCnd1cnplbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSmFqYSAuLi4gOykgKENhdHdlYXpsZSwgIDYuIEp1bCAyMDAwLCAyMjo0ODo1Nyk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTYyOTE1NDA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYyOTAxMzMyCkljaCBmaW5kZSBkYXMgZ2Vob2VydCBuYWNoICdlbnR3aWNrbHVuZycuCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGlwcGVuIGlzdCBuaWNodCBlaW5mYWNoIDstKSAoTGFuZmVhciwgIDcuIEp1bCAyMDAwLCAwMTowMjozMSk6CkZvb2JhciB0ZWlsdCBEaXIgbWl0OiBMYXNzIG1hbCwgZGVyIGlzdCBuaWNodCBzYSA6bygKRm9vYmFyIHRlaWx0IERpciBtaXQ6IE5pY2h0IHNhLgpGb29iYXIgdGVpbHQgRGlyIG1pdDogKmFyZ2wqCkZvb2JhciB0ZWlsdCBEaXIgbWl0OiBOaWNoIERBCgpMYW5mZWFyIC0ga2ljaGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldoZXJlIGRvIHlvdSB3YW50IHRvIGdvIHRvZGF5PyAoRGVlcGJsdWUsICA3LiBKdWwgMjAwMCwgMTA6MDM6MzEpOgpBcyBmYXIgZnJvbSBSZWRtb25kIGFzIHBvc3NpYmxlIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBKYWphIC4uLiA7KSAoTm9ubmUsICA3LiBKdWwgMjAwMCwgMTE6MDQ6NTYpOgp+IyEgcm49QW5hdG9sIHJ0PTk2MjkwMTM1NCByZz1zY2htYXJybgp+IyEgdGlkPTk2MjkwMTMzMgpGdWVyIGBCZWthbm50bWFjaHVuZ2VuYCBpc3QgZGllIEluZm9ybWF0aW9uIHZpZWxsZWljaHQgc2Nob24gZWluIHdlbmlnCnVlYmVyaG9sdC4gV2lyIGJyYXVjaGVuIGVpbmUgUnVicmlrOiBXYXMgTmV1bGluZ2UgdW5iZWRpbmd0IHdpc3NlbiBzb2xsdGVuIChjOwoKTm9ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFRpYW1haywgIDcuIEp1bCAyMDAwLCAxNDoyNTozMSk6CltTZWhlcjpTaW5hXSBob2VydCBpaHIgYWxsZSBtaXQ/OikgPDEzOjUzOjE3PgpbU2VoZXI6U2lsdmFuYV0gTm9lLiA8MTM6NTM6MzU+CltTZWhlcjpTaW5hXSBkZXIgamV0enRpZ2Ugd2VnaGllciBoYXQgbmFyeWEuLi4gc2NobGFndCBldWNoIGRydW06KSA8MTM6NTM6Mzc+CgpbLi4uXQoKW1RvZDpMYXJzXSBFaW4gV2VnaGllciBoYXQgZ2VyYWRlIFNpbmEgdW1nZWJyYWNodC4gPDE0OjIzOjM1PgpbVG9kOmVpbiBXZWdoaWVyXSBHb3RjaGEhIDwxNDoyMzozNT4KCgpUaWFtYWsgZGVua3QgLiBvIE8oRXIgd29sbHRlIGlobiBhbnNjaGVpbmVuZCBuaWNodCBoZXJhdXNydWVja2VuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoU2luYSwgIDcuIEp1bCAyMDAwLCAxNToxMjo0MCk6Cn4jISBybj1UaWFtYWsgcnQ9OTYyOTcyNzMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYyOTcyNzMxCgouLnN0aW1tdCwgZXIgaGF0IHNpY2ggbm9jaCBlaW4gYmlzc2wgZ2V3ZWhydDoKCltNb2VyZGVyOkdlaXN0IGVpbmVzIFdlZ2hpZXJzXSBJY2ggZm9yZGVyZSBSZXZhbmNoZSwgU2luYSEgPDE0OjQzOjUwPgpbTW9lcmRlcjpTaW5hXSBxLmUuZC4gOikgPDE0OjQzOjU0PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKLi5oYXQgYWJlciBuaXggZ2VudWV0enQgOikKCi5zaW5hLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2IgZGVyIGRlbiBPcnQgdmVybGFlc3N0LCB3aWUgZXIgaWhuIHZvcmZpbmRldD8gKFRyYW5jZSwgIDguIEp1bCAyMDAwLCAxNjo1NjozMik6CgpPaGFtIGVyc2NoZWludCBpbSBMaWNodCBkZXIgOCBUdWdlbmRlbi4KT2hhbSB3YW5kZXJ0IGluIHR1Z2VuZGhhZnRlciBBdXNzdHJhaGx1bmcgYXVmIGRpZSBUb2lsZXR0ZS4KCkhtLCBzb2xsdGUgbWFuIGdsYXViZW4hIDopCgpUcmFuY2UsIGtlbm50IGxlaWRlciBudXIgZGllIERhbWVuLVRvaWxldHRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW52ZXJmYWVsc2NodCAuLi4gKEdvbGFzLCAgOC4gSnVsIDIwMDAsIDIzOjMyOjU3KToKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogYWVoIHZhcmRpb24gdW5kIGdvbGFzIGljaCBicmF1Y2ggbnVyIGVpbmUKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogOy0pCkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IGljaCB3ZWlzcyBqYSBuaWNoIHdvIGlociBncmFkZSBoaW53b2xsdApEZWluZSBGcmV1bmRpbiBMaWFyYSB0ZWlsdCBEaXIgbWl0OiA7LSkKRHUgdGVpbHN0IFZhcmRpb24gbWl0OiBkdSBvZGVyIGljaD8KVmFyZGlvbiB0ZWlsdCBEaXIgbWl0OiBkdSBvZGVyIGljaD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXMgKE11cGZlbCwgIDkuIEp1bCAyMDAwLCAyMjoxMzowOSk6CkR1IGRlbmtzdCAgIC4gbyBPIChuaXggaW4gemVpZGR1bmcpCkplbmFuZHJhIG5pY2t0IERpciB6dS4KSmVuYW5kcmEgc2FndDoga3VyeiBhZmssIGJyYgpCaWVyY2hlbiBzYWd0OiBzY2hyZWliIG1hbCB3YXMgOikKUm9uZGEgc2FndDogd2FzPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZhbHNjaGVyIGtub3BmIDotKSAoSmVuYW5kcmEsIDEwLiBKdWwgMjAwMCwgMDE6MTk6MzApOgpEZWluIEZyZXVuZCBOZXZvayB0ZWlsdCBEaXIgbWl0OiBtYSBmZW5zdGVyIG1pbmltaWVyZW4gOykKTmV2b2sgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4gCgpKZW5hbmRyYSBkZW5rdCAub08oZGFzIG1hY2h0IG1hbiBhYmVyIG5pY2h0IG1pdCBkZW0geCA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2NoYWNodCAhISEhIChTaWx2YW5hLCAxMC4gSnVsIDIwMDAsIDA5OjU1OjE5KToKfiMhIHJuPUxpYXJhIHJ0PTk2MzE3NzM4NiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk2MzE3NTg0NQpEaWUgRWZmZWt0aXZpdGFldCB2b24gUkVGUkVTSF9CT0lORyBzb2xsdGUgZG9jaCBpbnp3aXNjaGVuIGJla2FubnQgc2Vpbiwgb2Rlcj8KOy0pCgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRlc3QgKE9iZXJtb3R6LCAxMC4gSnVsIDIwMDAsIDEzOjQyOjA1KToKVGVzdCwgVGVzdC4KMSwyLDMuCk9iZXJtb3R6IGlzdCBkZXIgR3JvZXNzdGUhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVGVzdCAoTW9yZ290aCwgMTAuIEp1bCAyMDAwLCAxMzo0MjozMyk6Cn4jISBybj1PYmVybW90eiBydD05NjMyMjkzMjUgcmc9c2NobWFycm4KfiMhIHRpZD05NjMyMjkzMjUKRHVyY2hnZWZhbGxlbiAhCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUZXN0IChPYmVybW90eiwgMTAuIEp1bCAyMDAwLCAxMzo0MzoxNSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTk2MzIyOTM1MyByZz1zY2htYXJybgp+IyEgdGlkPTk2MzIyOTMyNQpXYW5uIGhhYmUgaWNoIGRlbiBuYWVjanN0ZW4gdmVyc3VjaD8KT00KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFRlc3QgKE9iZXJtb3R6LCAxMC4gSnVsIDIwMDAsIDEzOjQzOjQ3KToKfiMhIHJuPU9iZXJtb3R6IHJ0PTk2MzIyOTM5NSByZz1zY2htYXJybgp+IyEgdGlkPTk2MzIyOTMyNQpXaWVzbyBoYXQgc2ljaCBkYXMgJ2onIHVudGVyIGRlbSAnaCcgdmVyc3RlY2t0PwoKT00KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBmYWxzY2hlciBrbm9wZiA6LSkgKFJhcmRpYW4sIDEwLiBKdWwgMjAwMCwgMTY6MjQ6MzgpOgp+IyEgcm49SmVuYW5kcmEgcnQ9OTYzMTg0NzcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYzMTg0NzcwCldpZXNvPwpNaW5pbWFsZXIgYWxzIHp1IGdlaHQgZG9jaCB3b2hsIG5pY2h0LCBvZGVyPwoKUmFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWxzbyB3aXJrbGljaCAuLi4gOy0pIChMaWFyYSwgMTAuIEp1bCAyMDAwLCAxNzozMToxNCk6ClVuYXNhaSB0ZWlsdCBEaXIgbWl0OiBzY2huaWVmClVuYXNhaSB0ZWlsdCBEaXIgbWl0OiBIVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTgpVbmFzYWkgdGVpbHQgRGlyIG1pdDogTk5HR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUUKVW5hc2FpIHRlaWx0IERpciBtaXQ6IEVFRUVFUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlIgCgpNZWluZSBHdWV0ZSwgZGFzcyBkaWUgaW0gU3RydXYgYXVjaCBuaWUgd2FzIHp1IEVzc2VuIHJhdXNydWVja2VuLiA7LSkKT2hqZSwgZXMga29tbXQgbm9jaCBzY2hsaW1tZXI6CgpEZWluZSBGcmV1bmRpbiBVbmFzYWkgbmFndCBhdXMgZGVyIEZlcm5lIGFuIExpYXJhIHJ1bS4KCkxpYXJhLCBad2VyZ2VuemF1YmVyaW5lLCB3dWVyZGUgZGVuIEZyYXNzIHZvbSBTdHJ1dmtvY2ggYXVjaCBuaWNodCB6dSBzaWNoCm5laG1lbiAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbHNvIHdpcmtsaWNoIC4uLiA7LSkgKEFtYXJ5bGxpcywgMTAuIEp1bCAyMDAwLCAxNzozMjoxNCk6Cn4jISBybj1MaWFyYSBydD05NjMyNDMwNzQgcmc9c2NobWFycm4KfiMhIHRpZD05NjMyNDMwNzQKZnJhZ3Qgc2ljaCBudXIsIG9iIG5lIFphdWJlcmluZSBiZXNzZXIgc2NobWVja3QuLi4KCkFtYSosIGluIERlY2t1bmcgZ2VoZW5kIDotKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyZWNoaGVpdCEgKFVuYXNhaSwgMTAuIEp1bCAyMDAwLCAxNzozMzozMCk6CkRhIGxhZXNzdCBtYW4gc2ljaCBlaW5tYWwgZ2VoZW4gdW5kIHNjaG9uIHN0ZWh0cyBpbm5lciBNUEEsIGRhcyBzaW5kIFNpdHRlbgpoaWVyISEhCgpMaWFyYSwgd2llIGtvbm50ZXN0IER1IG51ci4uLip3ZWluKgoKVW5hKiAqYmxvc3NnZXN0ZWxsdCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcmVjaGhlaXQhIChNdWFkZGliLCAxMC4gSnVsIDIwMDAsIDE3OjM2OjIxKToKfiMhIHJuPVVuYXNhaSBydD05NjMyNDMyMTAgcmc9c2NobWFycm4KfiMhIHRpZD05NjMyNDMyMTAKTmFqYSwgWndlcmdlbiBmcmVzc2VuIGlzIGVoIGVpbmUgZ3V0ZSBMb2VzdW5nIGZ1ZXIgZGFzIGV3aWcgdWViZWxyaWVjaGVuZGUKUHJvYmxlbS4gSWNoIHd1ZXJkIG1pY2ggZGEgbmljaHQgc28gc2NoYWVtZW4sIFVuYS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGcmVjaGhlaXQhIChYZW5hZGEsIDEwLiBKdWwgMjAwMCwgMTc6NTE6MzIpOgp+IyEgcm49TXVhZGRpYiBydD05NjMyNDMzODEgcmc9c2NobWFycm4KfiMhIHRpZD05NjMyNDMyMTAKYWJlciBiaXMgbWFuIGRhIGR1cmNoIGRpZSBzY2h1dHpzY2hpY2h0IGR1cmNoIGlzdC4uLi4KClhlbmFkYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRnJlY2hoZWl0ISAoTGlhcmEsIDEwLiBKdWwgMjAwMCwgMTc6NTQ6MDIpOgp+IyEgcm49WGVuYWRhIHJ0PTk2MzI0NDI5MiByZz1zY2htYXJybgp+IyEgdGlkPTk2MzI0MzIxMApJaHIgd2lzc3QgamEgYWxsZSBuaWNodCwgd2FzIGd1dCBpc3QuIDotKQoKTGlhcmEsIFp3ZXJnZW56YXViZXJpbmUsIHBmZmZmZmZmZmZmZmZmZmZmZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZyZWNoaGVpdCEgKFhlbmFkYSwgMTAuIEp1bCAyMDAwLCAxNzo1NDo1Nik6Cn4jISBybj1MaWFyYSBydD05NjMyNDQ0NDIgcmc9c2NobWFycm4KfiMhIHRpZD05NjMyNDMyMTAKRHUgbWVpbnN0IGRpZSBnYW56ZW4gcmVzdGUgZGVyIGxldHp0ZW4gZmVzdGVzc2VuIGluIGRlciBzY2h1dHpzY2hpY2h0PyA6KQpYZW5hZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZyZWNoaGVpdCEgKEhpZ2h0LCAxMC4gSnVsIDIwMDAsIDE4OjAxOjQ2KToKfiMhIHJuPVhlbmFkYSBydD05NjMyNDQ0OTYgcmc9c2NobWFycm4KfiMhIHRpZD05NjMyNDMyMTAKKmcqIHp3ZXJnZW4ga2FubiBtYW4gIG51ciBlc3NlbiB3ZW5uIG1hbiB6dWlmYWVsbGlnIG5lbiBwcmVzc2x1ZnRoYW1tZXIgZnVlcgpkaWUgZHJlY2tzY2hpY2h0IGhhdApoaWdodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRnJlY2hoZWl0ISAoWGVuYWRhLCAxMC4gSnVsIDIwMDAsIDE4OjA1OjIyKToKfiMhIHJuPUhpZ2h0IHJ0PTk2MzI0NDkwNiByZz1zY2htYXJybgp+IyEgdGlkPTk2MzI0MzIxMAppY2ggZnJhZ2UgbWljaCBhYmVyLCBvYiBkYXMgd2FzIHVudGVyIGRlciBzY2hpY2h0IGlzdCwgZ2VuaWVzc2JhciBpc3QuIDspClhlbmFkYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRnJlY2hoZWl0ISAoU2lsdmFuYSwgMTAuIEp1bCAyMDAwLCAxODowNzozMik6Cn4jISBybj1IaWdodCBydD05NjMyNDQ5MDYgcmc9c2NobWFycm4KfiMhIHRpZD05NjMyNDMyMTAKTmljaHQgZG9jaC4uLiBad2VyZ2Ugc3RvcGZ0IG1hbiBtaXQgS25vYmxhdWNoIHVuZCBLcmFldXRlcm4sIGxlZ3QgbWFuIHNvIHdpZQpzaWUgc2luZCBpbnMgRmV1ZXIgZWluZXMgbWl0dGVsZ3Jvc3NlbiBEcmFjaGVuIHVuZCBsYWVzc3Qgc2llIGV0d2EgNTAgUnVuZGVuCnJvZXN0ZW4uIERhbmFjaCBpc3QgZGVyIEtyYWV1dGVyc3VkICh6dXNhbW1lbiBtaXQgZGVtIFp3ZXJnZW53YXNzZXIpIGd1dCBkdXJjaApkYXMgRmxlaXNjaCBkdXJjaC4gRGFubiB3aXJmIHNpZSBlaW5lIEtsaXBwZSBoZXJ1bnRlci4gV2VubiBzaWUgdW50ZW4KYXVmcGxhdHplbiwga2FubiBtYW4gZGFzIHphcnRlIElubmVyZSBndXQgZXNzZW4uCgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhlaGUgOikgKEdvciwgMTEuIEp1bCAyMDAwLCAwMDoxNjo1MCk6CltNYWdpZXI6Um9uZGFdIG9rLCBpY2ggbG9lc2NoIGRhbm4gQW5hdG9sIGpldHp0IGphPyBEZXIgYnVnZ3QuLQpbTWFnaWVyOlJvbmRhIGdyaW5zdCBTRUhSIGZpZXNdCkFuYXRvbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCk1hbCBzZWhlbiA6KSAqZ3JpbnMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZmFsc2NoZXIga25vcGYgOi0pIChOZXZvaywgMTEuIEp1bCAyMDAwLCAwMDoxNzowNik6Cn4jISBybj1KZW5hbmRyYSBydD05NjMxODQ3NzAgcmc9c2NobWFycm4KfiMhIHRpZD05NjMxODQ3NzAKRmVuc3RlcmFuemFobCwgbmV0IGZlbnN0ZXIsIG1lYSBjdWxwYSwgd2FyIHdhcyBzcGFldCA7KQoKTmV2b2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZ2llcndpbGxrdWVoci4uLiAoTXVwZmVsLCAxMS4gSnVsIDIwMDAsIDAwOjE3OjQ2KToKW01hZ2llcjpSb25kYV0gb2ssIGljaCBsb2VzY2ggZGFubiBBbmF0b2wgamV0enQgamE/IERlciBidWdndC4tCltNYWdpZXI6Um9uZGEgZ3JpbnN0IFNFSFIgZmllc10KQW5hdG9sICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpbTWFnaWVyOkplbmFuZHJhXSBkYWZ1ZXIgOi0pCltNYWdpZXI6Um9uZGFdIG9rLCBpc3Qgd2VnLgoKCi1tdXBmZWwtIChncmluc3QgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNYWdpZXJ3aWxsa3VlaHIuLi4gKERpZWRlciwgMTEuIEp1bCAyMDAwLCAwMDoyMDoxNik6Cn4jISBybj1NdXBmZWwgcnQ9OTYzMjY3NDY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYzMjY3NDY2CjIgRGVwcGVuIGVpbiBHZWRhbmtlLi4uIDopCgpOdXIgLSB3aWVzbyBpc3NlciBpbW1lciBub2NoIGRhPwoKRGllZGVyLCBoYXR0ZSBzY2hvbiBIb2ZmbnVuZ2VuLi4uIDotKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBsYW5nZSB3YWVocnQuLi4gKE9iZXJtb3R6LCAxMS4gSnVsIDIwMDAsIDE2OjI0OjQ1KToKYmVpICdmaW5nZXIgc2lsdmFuYScgdmllbCBtaXIgZm9sZ2VuZGVzIGF1ZjoKUmVnaW9uIEZlcm53ZXN0OiAtIGVpbmUgTWluaXF1ZXN0CiAgICAgICAgICAgICAgICAgLSBGZXVlcndlcmsgZnVlciBKYWhydGF1c2VuZHdlY2hzZWwKCkRhIGthbm4gbWFuIHdpZWRlciBtYWwgc2VoZW4sIHdpZSB3ZWl0IEZyYXVlbiB2b3JhdXNwbGFuZW4gOy0pCgpPYmVybW90eiBrYXVmdCBhdWNoIHNjaG9uIG1hbCBlaW5lIEZldWVyd2Vya3NyYWtldGUgZnVlciBkZW4KSmFocnRhdXNlbmR3ZWNoc2VsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERhcmlhLCAxMS4gSnVsIDIwMDAsIDE2OjI4OjMxKToKPiBbenQ6UGFuZGVtb25pdW1dIGFiZ2VsZWdlbiwgbmljaHQgc2VociBzdHJlbmcgYmV3YWNodC4uLmtlbm50IGRlbiBlaW5lcj8KW3p0OkltZGFdIHN0ZWlubW9uc3RlciBuZWFuZGVydGFsClt6dDpEb3R6XSBuZWFuZGVydGFsCkRpZSBNYXVzIEVjaG8gYXVmIE5pY2t0YXJzIFNjaHVsdGVyIHp3aW5rZXJ0IERpciB6dS4KW3p0OlBhbmRlbW9uaXVtXSB3byBzaW5kIGRpZSBkYT8gaW4gd2VsY2hlciBlY2tlPwoKWy4uLl0KW1RvZDpMYXJzXSBFaW4gU3RlaW5tb25zdGVyIGhhdCBnZXJhZGUgUGFuZGVtb25pdW0gdW1nZWJyYWNodC4KW0JlaWxlaWQ6SW1kYV0gZmx3CltCZWlsZWlkOkZvb2Jhcl0gR2VuYXUgZGEuCltCZWlsZWlkOlNsaWFdIG5hIGltbWVyaGluIGhhdCBlcnMgYXVmIGFuYmllYiBnZWZ1bmRlbi4uLgoKCipnKgpEYXJpYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcyBsYW5nZSB3YWVocnQuLi4gKFRpYW1haywgMTEuIEp1bCAyMDAwLCAxNjozMDowNyk6Cn4jISBybj1PYmVybW90eiBydD05NjMzMjU0ODUgcmc9c2NobWFycm4KfiMhIHRpZD05NjMzMjU0ODUKQWxzbyBlaW4gaGFsYmVzIEphaHIgdm9yYXVzenVwbGFuZW4gaXN0IG5pY2h0IHNvb28gZGFzIEt1bnN0c3R1ZWNrLgpEaWUgU2FjaGVuIGluIGRlciBrdXJ6ZW4gWmVpdCBkYW5uIGF1Y2ggdW16dXNldHplbiwgc2Nob24gZWluIHZpZWwgZ3JvZXNzZXJlcy4KCgpUaWFtYWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoSGlnaHQsIDExLiBKdWwgMjAwMCwgMTc6NDQ6MTcpOgpEZWluIEZyZXVuZCBEYXJrd2luZyB0ZWlsdCBEaXIgbWl0OiBpY2ggZ2xhdWJlIGpldHp0IG11c3MgaXJnZW5kZWluIE9yawpEZWluIEZyZXVuZCBEYXJrd2luZyB0ZWlsdCBEaXIgbWl0OiBzdGVyYmVuLC4uIGdycnJyCgoKLi4uCgpUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIERhcmt3aW5nIHVtZ2VicmFjaHQuCltUb2Q6RWluIE9ya10gV2lyIHNpbmQgT3JrISBXaWRlcnN0YW5kIGlzdCB6d2Vja2xvcyEgRGVpbiBXaXNzZW4gdW5kIERlaW5lCltUb2Q6RWluIE9ya10gQXVzcnVlc3R1bmcgd3VyZGVuIGFzc2ltaWxpZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoTGlhcmEsIDExLiBKdWwgMjAwMCwgMTc6NDY6MzkpOgp+IyEgcm49SGlnaHQgcnQ9OTYzMzMwMjU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYzMzMwMjU3Ck5lZSwgSGlnaHQsIGRhIHdhciBrZWluZSBQYXVzZSB6d2lzY2hlbi4gOy0pCgpMaWFyYSwgWndlcmdlbnphdWJlcmluZSwgZ3J1ZW5kZXQgbmUgSGlsZnNvcmdhbmlzYXRpb24gZnVlciBLYW1wZmVudGVuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGTFcgKEhpZ2h0LCAxMS4gSnVsIDIwMDAsIDIyOjU3OjQ0KToKfiMhIHJuPUxpYXJhIHJ0PTk2MzMzMDM5OSByZz1zY2htYXJybgp+IyEgdGlkPTk2MzMzMDI1Nwpkb2NoIG5lIGtsZWluZSAuLi4gaGF0IGZ1ZXIgNCBsZXV0ZSBnZXJlaWNodCBkaWUgYW4gbWlyIHZvcmJlaXNjcmlwdGV0IHNpbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVuZ2VzY2huaXR0ZW4gKERpZWRlciwgMTIuIEp1bCAyMDAwLCAwMTo0NDo0OSk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIERyYWtvbmllcndhZWNodGVyc10gUmV0dGV0IGRlbiBUZW1wZWwgdm9yIERvdHohCltUb2Q6TGFyc10gRWluIERyYWtvbmllcndhZWNodGVyIGhhdCBnZXJhZGUgRG90eiB1bWdlYnJhY2h0LgoKUmV0dHVuZyBnZWdsdWVja3QuCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdy4uLiAoQW5hdG9sLCAxMi4gSnVsIDIwMDAsIDE3OjI1OjM0KToKQXN0ZXJvdGggYW4gYWxsZSBaYXViZXJlcjogd2FoLi4ud3Vzc3RlIG5pY2h0LCBkYXNzIG1hbiBwZXIgdGVsZXBvcnQgYmVpIGRlcgpBc3Rlcm90aCBhbiBhbGxlIFphdWJlcmVyOiBoeWRyYSBsYW5kZW4ga2FubgpbVG9kOkxhcnNdIEVpbiBIeWRyYWtvcGYgaGF0IGdlcmFkZSBBc3Rlcm90aCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBIeWRyYWtvcGZdIGhzc3Nzc3MgCgpXaWVkZXIgd2FzIGdlbGVybnQuLi4KQW5hdG9sIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQaW5nPyAoTXVwZmVsLCAxMi4gSnVsIDIwMDAsIDIxOjU2OjAzKToKJCBEZWluIEZyZXVuZCBUaWFtYWsgdGVpbHQgRGlyIG1pdDoga2xlaW5lciBYLU5ldXN0YXJ0LVBpbmcgLi4uCklyZ2VuZHdvIHBvbHRlcm4gU3RlaW5lIHp1IEJvZGVuLgoKaG0uLi4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGphIDspIChLYWRhYnJhLCAxMi4gSnVsIDIwMDAsIDIzOjQ0OjI4KToKTWl0IEhpbGZlIGRlciBMZWl0ZXIgaXN0IGRhcyBrZWluIFByb2JsZW06CkR1IG9lZmZuZXN0IGVpbmUgSG9semx1a2UuCj4gc2NoYXUKRHUgYmVmaW5kZXN0IERpY2ggaGllciBpbSB6d2VpdGVuIFN0b2NrIGRlcyByZWNodCBiYXVmYWVsbGlnZW4gSGF1c2VzIGluIGVpbmVtCmtsZWluZW4gRmx1ci4gRGllIFRyZXBwZSBoaW50ZXJsYWVzc3QgaW1tZXIgbm9jaCBlaW4gZmxhdWVzIEdlZnVlaGwgaW4gRGVpbmVtCk1hZ2VuLCBzY2hsaWVzc2xpY2ggCj4gb2JlbgpNaXQgSGlsZmUgZGVyIExlaXRlciBpc3QgZGFzIGtlaW4gUHJvYmxlbToKRGFzIGdlaHQgbm9jaCBuaWNodCEKCmFlaCAuLi4gc29ycnkgbWlzZXJhYmVsIGN1dCBhbmQgcGFzdGUgOykKa2FkYWJyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcyB3aXIgc2Nob24gaW1tZXIgd2lzc2VuIHdvbGx0ZW4uLi4gKFNoaW5heW5lLCAxMy4gSnVsIDIwMDAsIDEzOjI1OjUyKToKfiMhIHJuPVN0aW5nIHJ0PTk2MzM0OTIwMiByZz13aXR6ZQp+IyEgdGlkPTk2MzM0OTIwMgpFbmRsaWNoIHRyYWVndCBtYWwgZWluZXIgbWl0IGVpbmVtIGdlbHVuZ2VuIEFydGlrZWwgenVyIGFsbGdlbWVpbmVuIEhlaXRlcmtlaXQKaW0gTXVkIGJlaS4KCkRhbmtlIFN0aW5nLiBJY2ggaGFiIGhlcnpoYWZ0IGdlbGFjaHQuCgoKU2hpbmF5bmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2FzIHdpciBzY2hvbiBpbW1lciB3aXNzZW4gd29sbHRlbi4uLiAoTm9ubmUsIDEzLiBKdWwgMjAwMCwgMTM6Mjc6MzgpOgp+IyEgcm49U2hpbmF5bmUgcnQ9OTYzNDg3NTUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYzMzQ5MjAyClZpZWxsZWljaHQgaGFldHRlIGVyIGRhYmVpIHNjaHJlaWJlbiBzb2xsZW4sIGRhc3MgZGllIEtvbW1lbnRhcmUgbmljaHQgdm9uIGlobQpzaW5kLiBEYXMgZ2luZyB2b3IgZWluaWdlbiBXb2NoZW4gZ2VuYXVzbyBtaXQgS29tbWVudGFyZW4gZHVyY2hzIE5ldHouCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdhcyB3aXIgc2Nob24gaW1tZXIgd2lzc2VuIHdvbGx0ZW4uLi4gKEthcmlzLCAxMy4gSnVsIDIwMDAsIDEzOjI5OjE1KToKfiMhIHJuPU5vbm5lIHJ0PTk2MzQ4NzY1OCByZz1zY2htYXJybgp+IyEgdGlkPTk2MzM0OTIwMgpTb2xsIGRhcyBqZXR6dCBoZWlzc2VuLCBkYXNzIGR1IGVybnN0aGFmdCBnZWdsYXVidCBoYXN0LApkaWVzZSBuZXR0ZW4gS29tbWVudGFyIHNlaWVuIHZvbiBpaG0sIE5vbm5lPz8KCkthcmlzLCBrb3Bmc2NodWV0dGVsbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXYXMgd2lyIHNjaG9uIGltbWVyIHdpc3NlbiB3b2xsdGVuLi4uIChOb25uZSwgMTMuIEp1bCAyMDAwLCAxMzozMTo1NCk6Cn4jISBybj1LYXJpcyBydD05NjM0ODc3NTUgcmc9c2NobWFycm4KfiMhIHRpZD05NjMzNDkyMDIKTmVpbiwgZ2xhdWJ0ZSBpY2ggbmljaHQsIGFiZXIgZGVyIEFydGlrZWwgdm9uIFNoaW5heW5lIGtsYW5nIHNvLiBVbmQgaWNoCnd1c3N0ZSBlaHJsaWNoIGdlc2FndCBhdWNoIG5pY2h0LCBvYiBkYXMgbnUgYmVpc3NlbmRlIElyb25pZSAoc28gaGFiIGljaCBlcwplaGVyIHZlcnN0YW5kZW4pIG9kZXIgZXJuc3QgZ2VtZWludCB3YXIuLi4KCk5vbm5lLCBtYW5jaG1hbCBlaW4gYmlzc2NoZW4gZHVtbS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdhcyB3aXIgc2Nob24gaW1tZXIgd2lzc2VuIHdvbGx0ZW4uLi4gKEdyaW1tYm9ybiwgMTMuIEp1bCAyMDAwLCAxMzozNToxMCk6Cn4jISBybj1Ob25uZSBydD05NjM0ODc5MTQgcmc9c2NobWFycm4KfiMhIHRpZD05NjMzNDkyMDIKSWNoIHdlaXNzIG5pY2h0LCBkZXIgV2lsbGUsIGVpbiBTY2h3ZWluIHp1IHNlaW4gc2NoZWludCBtaXIgc28gd2VpdCBoZXJnZWhvbHQKbnVuIGF1Y2ggd2llZGVyIG5pY2h0IHp1IHNlaW4uLi4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXIgU2lsdmFuYS4uLi4gKFpvb2ssIDEzLiBKdWwgMjAwMCwgMjA6MzM6MDkpOgpEYW1pdCB3YXMgaW5uZXIgTVBBIHBhc3NpZXJ0Li4uLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndlaWEgOykgKFB1aywgMTMuIEp1bCAyMDAwLCAyMzo0OToyNik6Cm5pbW0gc2VlcmNhcmQKRHUgbmltbXN0IGRpZSBHZWxka2FydGUuCj4gbmltbSBzZWVyY2FyZApEdSBuaW1tc3QgZGllIEdlbGRrYXJ0ZS4KPiBuaW1tIHNlZXJjYXJkCkR1IG5pbW1zdCBkaWUgR2VsZGthcnRlLgo+IG5pbW0gc2VlcmNhcmQKRHUgbmltbXN0IGRpZSBHZWxka2FydGUuCj4gbmltbSBzZWVyY2FyZApEdSBuaW1tc3QgZGllIEdlbGRrYXJ0ZS4KPiBuaW1tIHNlZXJjYXJkCkR1IG5pbW1zdCBkaWUgR2VsZGthcnRlLgo+IG5pbW0gc2VlcmNhcmQKRHUgbmltbXN0IGRpZSBHZWxka2FydGUuCj4gbmltbSBzZWVyY2FyZAoKZGFyYXVmaGluIGltIGludiA6CgpWZXJzY2hpZWRlbmVzOgpEaWUgR2VsZGthcnRlIHZvbiBUaGFub3MuICAgICAgICAgICAgICBEaWUgR2VsZGthcnRlIHZvbiBMYW5mZWFyLgpEaWUgR2VsZGthcnRlIHZvbiBEb2RlcmljLiAgICAgICAgICAgICBTdHJlaXRrb2xiZW5zdGF1Yi4KRGllIEdlbGRrYXJ0ZSB2b24gQ2F2YWxpZXIuICAgICAgICAgICAgRWluIGJsYXVlciBCbGVpc3RpZnQuCkRpZSBHZWxka2FydGUgdm9uIEltZGEuICgyKSAgICAgIAoKbWFuIGRpZSBob3J0ZW4gaGllciBhYmVyIGdhbnogc2Nob2VuIDopCgpQdWssIHd1ZXJkIHNpY2ggamEgZnJldWVuIHdlbm4gZXIgZGFzIEdlbGQgYXVzZ2ViZW4ga29lbm50ZSB1bmQgZnJhZ3Qgc2ljaCB3YXMKZGllIExldXRlIGJsb3MgaW1tZXIgbWl0IGlocmVuIEthcnRlbiBtYWNoZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRhZmVsIChBbm9yaXMsIDE0LiBKdWwgMjAwMCwgMDE6MzI6NTcpOgogMjEzLiBTaXJvbmE6IDEyIFJ1bmVuCiAyMTQuIEFub3JpczogMTIgUnVuZW4KCk5hLCBmYWVsbHQgd2VtIHdhcyBhdWY/IDopCi0gQW5vcmlzIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVGFmZWwgKFNpbHZhbmEsIDE0LiBKdWwgMjAwMCwgMTA6MzI6MDApOgp+IyEgcm49QW5vcmlzIHJ0PTk2MzUzMTE3NyByZz1zY2htYXJybgp+IyEgdGlkPTk2MzUzMTE3NwpEYSBpc3QgbmVuIEZlaGxlci4uLiBFaWdlbnRsaWNoIG11ZXNzdGUgU2lyb25hIDIxIFJ1bmVuIGhhYmVuIHVuZCBBbm9yaXMgbWl0CjEyIG5lbnVSIGF1ZiBQbGF0eiA0MTIgc2Vpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhZXJtZSAoRGVlcGJsdWUsIDE0LiBKdWwgMjAwMCwgMTI6NDc6MDIpOgpEZWluZSBGcmV1bmRpbiBWaW9sYSB0ZWlsdCBEaXIgbWl0OiBpY2ggd2lsbCB3aWVkZXIgU29tbWVyISEhIQpFaW5lIGhlcnJsaWNoZSBXYWVybWUgZ2VodCB2b24gRGVpbmVtIEFtdWxldHQgYXVzLCB1bmQgRHUgZnVlaGxzdApEaWNoIHByaW1hLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTUcgaXN0IE1HIGlzdCBNRyAoQWNyaW1vbiwgMTQuIEp1bCAyMDAwLCAxOToyMzoxMyk6CltBYmVudGV1ZXI6VGFtaXJdIHdpZXNvIGhhdSBpY2ggZGVubiBqZWRlc21hbCBvciBkZW4gU2NoYXR0ZW5tYWVubmVyIGluIE1vcm9uCltBYmVudGV1ZXI6VGFtaXJdIGFiLCBtZWluZSBFbmVyZ2llIGlzdCBmYXN0IHZvbGwKW0FiZW50ZXVlcjpNdWFkZGliXSB2b3JzaWNodCB6dSBob2NoPwpbQWJlbnRldWVyOlRhbWlyXSBub2UgVm9yc2ljaHQgaXN0IGF1ZiAzMCBoYWIgOTAgZW5lcmdpZQpbQWJlbnRldWVyOk11YWRkaWJdIGVuZXJnaWUgaXMgbmV0dCA6KQpbQWJlbnRldWVyOkp1bGVdIGRlciBicmF1Y2h0IGtlaW5lIGtuZWlwZW4sIG51ciBlaW4gbGFkZWdlcmFldCA7LSkKW0FiZW50ZXVlcjpNdWFkZGliXSB3YXJwIDQuLi4gb2ggLSBmYWxzY2hlcyBtdWQKW0FiZW50ZXVlcjpBc3Rlcm90aF0gZW5lcmdpemUKW0FiZW50ZXVlcjpMaWFyYSBncmluc3QuXQpbQWJlbnRldWVyOkFzdGVyb3RoIGxhY2h0IHNpY2ggdG90XQpbQWJlbnRldWVyOk11YWRkaWJdIGRvIGl0IHNvIDopCltBYmVudGV1ZXI6TWVzaXJpaV0gdmllbGxlaWNodCBpcyBqYSBhdWNoIG51ciBuIGVwcy1yZWxheSBkdXJjaGdlYnJhbm50ID8KW0FiZW50ZXVlcjpDYXBQaWNhcmRdIEVuZXJnaWUhISEhISEKW0FiZW50ZXVlcjpNdWFkZGliXSBvYndvaGwsIGJlaSBlaW5lbSB6YXViaSBpc3QgZGllIGVuZXJnaWUgdmVybXV0bGljaCBkaWUKW0FiZW50ZXVlcjpNdWFkZGliXSBrcC1hbnphaGwgOi0pCltBYmVudGV1ZXI6QXN0ZXJvdGhdIGFsc28gaXMgbmUgdGFua2UgZWluIGVuZXJnaWV2ZXJ0ZWlsZXIsIG9kZXIgc28gPyA7LCwsLCwKW0FiZW50ZXVlcjpBc3Rlcm90aF0gOykKW0FiZW50ZXVlcjpNdWFkZGliXSBkYSBtdXNzdCBhYmVyIGF1ZnBhc3NlbiwgZGFzcyBkZXIgd2FycC1rZXJuIGRpY2ggbmljaHQKW0FiZW50ZXVlcjpNdWFkZGliXSBhbmdyZWlmdCwgZGVyIGlzIG5hZW1saWNoIGF1dG8gOikKW0FiZW50ZXVlcjpBY3JpbW9uXSBVbmQgTGFycyBpc3QgZGVyIE5vdC1NYXRlcmllLVRyYW5zbWl0dGVyLi4uCltBYmVudGV1ZXI6TXVhZGRpYl0ga2xhci4gTGFycyAtIFNpZSB3ZXJkZW4gYXVmIGRlciBCcnVlY2tlIGdlYnJhdWNodC4KW0FiZW50ZXVlcjpMaW5lYmFja2VyXSBLYW5uIG1hbiBkYSBiZWkgZWluZW0gRmVobGVyIGltIFJhdW0tWmVpdC1HZWZ1ZWdlIGF1Y2gKW0FiZW50ZXVlcjpMaW5lYmFja2VyXSBhdWYgZWluZW4gUmF1bXJlc2V0IHdhcnRlbj8KW0FsbGdlbWVpbjpUYW1pciBnaWJ0IHNpY2ggRW5lcmdpZSB1bmQgc2NoaWVzc3Qgc2ljaCBpbiBkZW4gTUctSGltbWVsLl0KW0FiZW50ZXVlcjpBY3JpbW9uXSBOb2UsIG1hbiBudXR6dCBpaG4gYXVzIDotKQpbQWJlbnRldWVyOkFzdGVyb3RoXSB1bmQgc2VoZXJ0b3JlIHNpbmQgd3VybWxvZWNoZXIKCjotKQpBY3JpbW9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2htYXJybj8gOy0pIChMaWFyYSwgMTQuIEp1bCAyMDAwLCAyMToxOToxMik6CkRlaW4gRnJldW5kIFhYWFhYIHRlaWx0IERpciBtaXQ6IGJvYWggZXksIG1pdCB3YWZmZW53dXJmIHZlcm5pY2h0ZXQgOikKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGthZW1wZmVyIGFid2VydGVuIDstKQpYWFhYWCB0ZWlsdCBEaXIgbWl0OiBxdWF0c2NoLCBkaWUgc2NoYWRlbnNrYWxhIG5hY2ggb2JlbiBlcndlaXRlcm4gOikKCkxpYXJhLCBad2VyZ2VuemF1YmVyaW5lLCBnbmEtdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmVsYWVzdGlndW5nIC4uIHdhcyBzb2xsIGRhcyA/IDopIChBbm9yaXMsIDE2LiBKdWwgMjAwMCwgMTU6MzQ6NTUpOgpEZXIgS29jaCBzYWd0OiBCZXNvcmdzIG1pciB1bmQgc2VpIHN0aWxsISBEYXMgd2lyc3QgRHUgZG9jaCB3b2hsIG5vY2gKRGVyIEtvY2ggc2FndDogc2NoYWZmZW4/Cgp0c3RzdHMgLSBBbm9yaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCZWxhZXN0aWd1bmcgLi4gd2FzIHNvbGwgZGFzID8gOikgKEdub21lLCAxNi4gSnVsIDIwMDAsIDE1OjM1OjUxKToKfiMhIHJuPUFub3JpcyBydD05NjM3NTQ0OTUgcmc9c2NobWFycm4KfiMhIHRpZD05NjM3NTQ0OTUKa29lY2hlIGhhYmVuIGF1Y2ggYmVkdWVyZm5pc3NlLi4uIGJlc29uZGVycyBhcm1lZS1rb2VjaGUgOikpKQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhZHJlaWMuLiAoRGVudGksIDE2LiBKdWwgMjAwMCwgMjI6NDg6NTYpOgo+IFBhZHJlaWMga25hYmJlcnQgRGlyIHNhbmZ0IGFtIE9oci4gRHUgbXVzc3Qga3VyeiBsYWNoZW4sIGRlbm4gZGFzIGtpdHplbHQKZ2FuegpzY2hvZW4hIApzZXR6ZSBwYWRyZWljIGFiCltUcnZlczpTY2h3dWJiZWxdIFRSaXBwZXJWRXJzZXVjaHRlIFNwaW5uZXIKRHUgc2V0enQgUGFkcmVpYyBzYW5mdCBhdWYgZGVtIEJvZGVuIGFiLgo+IFtUcnZlczpQYWRyZWljIGRydWVja3QgQ29ubnkgZWluZW4gUHVzY2hlbCBpbiBkaWUgSGFuZCB1bmQgc2FndDsKc2F1YmVybWFjaGVuIV0KW1RydmVzOkNvbm55XSBkYW5rZSBwYWQgICAgZ3JycnJycgpQYWRyZWljIGVyc2NocmVja3QgZGllIEFud2VzZW5kZW4uIApbVHJ2ZXM6UGFkcmVpY10gaW1tZXIgd2llZGVyIGdlcm4sIG5peCB6dSBkYW5rZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUYWZlbCAoUmFyZGlhbiwgMTYuIEp1bCAyMDAwLCAyMzo0ODoyMik6Cn4jISBybj1Bbm9yaXMgcnQ9OTYzNTMxMTc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYzNTMxMTc3Ckp1cHAhIEdhbnoga2xhciEgRGllIFBsYWV0emUgMSBiaXMgMjEyIGZlaGxlbi4uLiBXZXIgYmF1dCBkZW4gQnVnIGF1cz8KClJhciwgbWl0IER1cmNoYmxpY2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3NvLi4gKFNreSwgMTcuIEp1bCAyMDAwLCAwMDozODo1MCk6CkVsZW5kaWwgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCmhhYnMgamEgc2Nob24gaW1tZXIgZ2V3dXNzdC4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSYWdlIC4uLiAoUGFyYWNlbHN1cywgMTcuIEp1bCAyMDAwLCAxMDo0MzoyMik6CldhcnVtIG1hbiBuaWNodCBnZWdlbiA0IFtFXSsgc3BpZWxlbiBzb2xsdGUgLi4uCgpTcGllbHN0YW5kIGRlciBsZXR6dGVuIFJ1bmRlOgoKICAgU3BpZWxlciAgICB8ICA3IHwgIDYgfCAgNSB8ICA0IHwgIDMgfCAgMiB8ICAxIHwgIFMKLS0tLS0tLS0tLS0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tCiAgICAgWm9vayAgICAgfCAxMCB8IC03IHwgMTEgfCAxMSB8IDEwIHwgLTkgfCAtNSB8ICAyMQogICBTaWx2YW5hICAgIHwgMTAgfCAxMSB8IDEwIHwgIDcgfCAtNCB8IDEwIHwgMTAgfCAgNTQKICBQYXJhY2Vsc3VzICB8IDEyIHwgLTUgfCAyMiB8IDEwIHwgLTUgfCAxMCB8IDEwIHwgIDU0CiAgICBCb2luZyAgICAgfCAxMSB8IC00IHwgMTAgfCAxMSB8IDExIHwgMTEgfCAtNSB8ICA0NQogICBBc3Rlcm90aCAgIHwgLTYgfCAtNCB8IC04IHwgLTUgfCAtNCB8IDEwIHwgLTQgfCAtMjEKLS0tLS0tLS0tLS0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tCgpTaWx2YW5hIHNhZ3Q6IE1hbiBzb2xsIG5pY2h0IGdlZ2VuIGRpZSBGQU1JTElFIHNwaWVsZW4uLi4KClBhcmFjZWxzdXMgLSBrYW5uIGRhIG51ciB6dXN0aW1tZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSYWdlIC4uLiAoQm9pbmcsIDE3LiBKdWwgMjAwMCwgMTA6NDY6MzYpOgp+IyEgcm49UGFyYWNlbHN1cyBydD05NjM4MjM0MDIgcmc9c2NobWFycm4KfiMhIHRpZD05NjM4MjM0MDIKSW1tZXJoaW4gZHVyZnRlIGVyIGVpbm1hbCBlaW5lIHBvc2l0aXZlIFJ1bmRlIHNwaWVsZW4gLi4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmFnZSAuLi4gKFpvb2ssIDE3LiBKdWwgMjAwMCwgMTA6NDc6MTYpOgp+IyEgcm49Qm9pbmcgcnQ9OTYzODIzNTk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYzODIzNDAyClN0aW1tdC4gQWJlciBnZW5hdSBkaWUgaGF0IGlobiBqYSB2b3IgZGVyIEZsb3AtTGlzdGUgYWJnZWhhbHRlbi4uLiA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoVGlhbWFrLCAxNy4gSnVsIDIwMDAsIDE0OjAzOjU1KToKW0FiZW50ZXVlcjpPaGFtXSBIZSEgTWVpbmUgQXVzZGF1ZXIgbmltbXQgZGllIGdhbnplIFplaXQga29uc3RhbnQgYWIhIFdlaXNzCltBYmVudGV1ZXI6T2hhbV0gamVtYW5kIHdhcyBkYXMgc2VpbiBrYW5uPyA8MTM6NTk6MjE+CltBYmVudGV1ZXI6UmlrdXNdIGRlciBuYWhlbmRlIHRvZCA8MTM6NTk6MzE+CltBYmVudGV1ZXI6T2hhbV0gU2Nob24ga2xhciwgYWJlciBpY2ggYmluIGdlcmFkZSBlcnN0IGdlc3RvcmJlbi4uIDwxMzo1OTo0Mz4KW0FiZW50ZXVlcjpPaGFtXSBPaCBqYSwgc2Nod2FyemUgTGVwcmEuIERhbmtlLiA8MTQ6MDA6MzM+CltUb2Q6TGFyc10gRGVyIEZsdWNoIGRlcyBQaGFyYW9zIEVzdGhla290aCBoYXQgZ2VyYWRlIE9oYW0gdW1nZWJyYWNodC4KW1RvZDpMYXJzXSA8MTQ6MDA6NTc+CgoKVGlhbWFrIGZyYWd0OiBhbGxlIFVua2xhcmhlaXRlbiBiZXNlaXRpZ3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmFnZSAuLi4gKEJvaW5nLCAxNy4gSnVsIDIwMDAsIDE1OjA3OjUxKToKfiMhIHJuPVBhcmFjZWxzdXMgcnQ9OTYzODIzNDAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYzODIzNDAyCkhpZ2h0IGhhdCBhdXMgZGVtIGxldHp0ZW4gQXJ0aWtlbCBuaXggZ2VsZXJudCAuLi4gOykKClNwaWVsc3RhbmQgZGVyIGxldHp0ZW4gUnVuZGU6CgogICBTcGllbGVyICAgIHwgIDcgfCAgNiB8ICA1IHwgIDQgfCAgMyB8ICAyIHwgIDEgfCAgUwotLS0tLS0tLS0tLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0KICAgIFRpbGx5ICAgICB8IDEyIHwgIDIgfCAxMCB8LTEzIHwgMTAgfCAxMCB8IDEwIHwgIDQxCiAgICBUaWFtYWsgICAgfCAxNyB8IC0zIHwgMTAgfCAtNSB8IDEwIHwgLTUgfCAtNSB8ICAxOQogICBTaWx2YW5hICAgIHwgMTAgfCAtNSB8IDEwIHwgMTAgfCAxMCB8IDEwIHwgMTAgfCAgNTUKICBQYXJhY2Vsc3VzICB8IDExIHwgMTEgfCAxMiB8IDEwIHwgMTAgfCAxMSB8IDE2IHwgIDgxCiAgICBIaWdodCAgICAgfC0xNCB8IC00IHwgLTcgfCAtNCB8IC01IHwgIDEgfCAxMCB8IC0yMwogICAgQm9pbmcgICAgIHwgMTEgfCAxMCB8IDEwIHwgMTYgfCAtNyB8IDEwIHwgMTAgfCAgNjAKLS0tLS0tLS0tLS0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSYWdlIC4uLiAoSGlnaHQsIDE3LiBKdWwgMjAwMCwgMTU6MDg6MzEpOgp+IyEgcm49Qm9pbmcgcnQ9OTYzODM5MjcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYzODIzNDAyCmljaCB3b2xsdGUgamEgbWludXMgMzkgc2NoYWZmZW4gLi4uIGFiYiBpaHIgbXVzc3RldCBlcyBtaXIgamEgdmVyc2F1ZW4KKnF1YWVuZ2VsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGEgZXJ3aXNjaHQgKmcqIChIaWdodCwgMTcuIEp1bCAyMDAwLCAxNToxMToyNSk6CkRhcmt3aW5nICAgICAgIC0gIDA6IDE6MTE6MTEKRGVlcGJsdWUgICAgICAgLSAgMDogMDogMDogOAp3aWUgd2FyIGRhcyA/IGJlaSBzY2huYXBzemFobCBtdXNzIGVyIG5lIHJ1bmRlIGF1c2dlYmVuID8KaGlnaHQgc2Nob25tYWwgbiB3ZWl6ZW4gYmVzdGVsbGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSYWdlIC4uLiAoT2hhbSwgMTcuIEp1bCAyMDAwLCAxNToxNjowOCk6Cn4jISBybj1Cb2luZyBydD05NjM4MzkyNzEgcmc9c2NobWFycm4KfiMhIHRpZD05NjM4MjM0MDIKRG9jaCB3aXIgYWxsZSBoYWJlbiBnZWxlcm50OiBUaWxseSBpc3QgamV0enQgZWluIEVyem1hZ2llci4KR3V0ZSBXYWhsIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWF1cmVyIChCb2luZywgMTcuIEp1bCAyMDAwLCAxNzoxMDoyNyk6Cn4jISBvbj1QZXJpbiBvdD05NjM4NDY1MjIgb2c9d2l0emUKfiMhIHJuPUthcmlzIHJ0PTk2Mzg0NTY0OCByZz13aXR6ZQp+IyEgdGlkPTk2Mzg0MzI3MApFaW4gS2FyaXMgc2NocmFpcHQgYXVjaCBlaW4gQXJ0aWVrbC4gRGllIFphaXR1bmcKd2lydCB6d2FyIGRhdm9uIGF1Y2ggbmljaCBiZXNzZXIsIGFiYSB3YXMgc29sbHMgPz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNYXVyZXIgKEJvaW5nLCAxNy4gSnVsIDIwMDAsIDE3OjEwOjUxKToKfiMhIHJuPUJvaW5nIHJ0PTk2Mzg0NjYyNyByZz1zY2htYXJybgp+IyEgdGlkPTk2Mzg0MzI3MApJbSBHZWdlbnNhdHogenUgRGVpbmVtIEFydGlrZWwgbWFjaHQgZGVyIHZvbiBLYXJpcyBhYmVyIGR1cmNoYXVzIFNpbm4sIAp0cm90eiBUeXBvLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNYXVyZXIgKEthcmlzLCAxNy4gSnVsIDIwMDAsIDE3OjEyOjM3KToKfiMhIHJuPUJvaW5nIHJ0PTk2Mzg0NjYyNyByZz1zY2htYXJybgp+IyEgdGlkPTk2Mzg0MzI3MApPaG9ob2ggLi4uIGVpbiBUeXBlIC4uIHdpZSBwZWlpaWlpbmxpY2guLi4uCkthcmlzLCBlbnRzY2h1bGRpZ3Qgc2ljaCB2aWVsbWFscwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTWF1cmVyIChEcm9nbywgMTcuIEp1bCAyMDAwLCAxNzo0NDoyMyk6Cn4jISBybj1LYXJpcyBydD05NjM4NDY3NTcgcmc9c2NobWFycm4KfiMhIHRpZD05NjM4NDMyNzAKVW5kIHNjaG9uIHdpZWRlciBlaW5lciAhISEKdHN0c3RzCkRyb2dvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hdXJlciAoQWNyaW1vbiwgMTcuIEp1bCAyMDAwLCAxODoxMzoxNCk6Cn4jISBybj1LYXJpcyBydD05NjM4NDU2NDggcmc9d2l0emUKfiMhIHRpZD05NjM4NDMyNzAKRGVlcGJsdWUgaGF0IGRpZSBVbWxhdXRlIHJpY2h0aWcgZ2VzY2hyaWViZW4uIERhcyBNRyBoYXQgc2llIHZlcmZhZWxzY2h0Li4uCgpBY3JpbW9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNYXVyZXIgKEdsb2luc29uLCAxNy4gSnVsIDIwMDAsIDE4OjE0OjUyKToKfiMhIHJuPUFjcmltb24gcnQ9OTYzODUwMzk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYzODQzMjcwCkRhc3ogaXN6dCBlaW4gc3phbWxvc3plIFZlcmRyZWh1bmcgZGVzeiB3YWhyZW4gU3phY2h2ZXJoYWx0ZXN6LgoKR2xvaW5zem9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNYXVyZXIgKEFjcmltb24sIDE3LiBKdWwgMjAwMCwgMTg6MTc6NTUpOgp+IyEgcm49R2xvaW5zb24gcnQ9OTYzODUwNDkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYzODQzMjcwClZlcmRyZWh1bmc/IE5laW4sIHNjaG9uIGVoZXIgZWluZSAiemFobmxvc2UgUmljaHRpZ3N0ZWxsdW5nIiA6LSkKCkFjcmltb24gKCA7LSkgKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BpZWx2ZXJkZXJiZXIhISA6KSAoVHN1bmFtaSwgMTcuIEp1bCAyMDAwLCAyMDo1MDowNCk6Clpvb2sgc2FndDoga2FwdXR0IHNjaGxhZ2VuIQogIFpvb2sgZ3JlaWZ0IGRhcyBQYXJ0eW1vbnN0ZXIgbWl0IGZpbnN0ZXJlbSBCbGljayBhbi4KICBab29rIHRyaWZmdCBkYXMgUGFydHltb25zdGVyIGhhcnQuCkRhcyBQYXJ0eW1vbnN0ZXIgcmFldW10IGF1ZiB1bmQgZWlsdCB6dXIgbmFlY2hzdGVuIFBhcnR5Lgpab29rIHNhZ3Q6IGFoaC4uIGFiZW5kIGVzc2VuIDopClpvb2sgd2lua3QuClpvb2sgbG9lc3Qgc2ljaCBsYW5nc2FtIGF1Zi4gWnVydWVjayBibGVpYnQgbnVyIGVpbiBGbGltbWVybiBpbiBkZXIgTHVmdC4KWm9vayAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaGVpZHVuZz8gKEdub21lLCAxNy4gSnVsIDIwMDAsIDIyOjQyOjQzKToKZndlciBvcnQKCkNha2V5ICAgICAgICAgIC0gSW0gQmV0dCB2b24gRGV2aWxjaGVuCkRldmlsY2hlbiAgICAgIC0gSW0gQmV0dCB2b24gRGV2aWxjaGVuCgphaGEuIHNvc28uIGluIGZsYWdyYW50aSBzb3p1c2FnZW4uLi4KCmduT21lIGdlaHQgc2ljaCBzY2hvbm1hbCBlaW5lbiBhbndhbHQgc3VjaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTWF1cmVyIChLYXJpcywgMTguIEp1bCAyMDAwLCAwODo1NTo0MSk6Cn4jISBybj1Ecm9nbyBydD05NjM4NDg2NjMgcmc9c2NobWFycm4KfiMhIHRpZD05NjM4NDMyNzAKTWlzdC4gR2lidHMgaXJnZW5kd28gbmUgUmVjaHRzY2hyZWlicHJ1ZWZ1bmcgZnVlcnMgdGVsbmV0PwpTdWNoZW5kLCBLYXJpcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1laHIgZGF2b24hIChBcG9waGlzLCAxOC4gSnVsIDIwMDAsIDA5OjE2OjUwKToKQmlnZm9vdCBoaW50ZXJsYWVzc3QgZWluZW4gZ3Jvc3NlbiBGdXNzYWJkcnVjaywgU2NobWVyemVuIGluIERlaW5lciBncm9zc2VuClplaGUgdW5kIGVudGZsZXVjaHQgbmFjaCBOb3JkZW4uCkRlaW5lIFNjaHVoZSBnbHVlaGVuIGt1cnogYXVmIHVuZCBoZWlsZW4gRGljaCBlaW4gd2VuaWcuCgpBcG9waGlzIC0gd2lsbCBtZWhyIHNvbGNoZSBUcmFtcGVsIGhhYmVuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNjaGVpZHVuZz8gKEFscGhhLCAxOC4gSnVsIDIwMDAsIDE1OjU2OjM5KToKfiMhIHJuPUdub21lIHJ0PTk2Mzg2NjU2MyByZz1zY2htYXJybgp+IyEgdGlkPTk2Mzg2NjU2MwpIYWV0dHN0ZSBtYWwgImt3ZXIgYmVpIERldmlsY2hlbiIgZ2VtYWNodCB1bmQgbm9jaCBlaW4gcGFhciBNRUhSIEJld2Vpc2UKZ2VzYW1tZWx0LiBNYWNodCBkaWUgU2NodWxkZnJhYWdlIGxlaWNodGVyIHZvcm0gUmljaHRlciA7KQpBbHBoYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc2NoZWlkdW5nPyAoRGV2aWxjaGVuLCAxOC4gSnVsIDIwMDAsIDIwOjQyOjU0KToKfiMhIHJuPUFscGhhIHJ0PTk2MzkyODU5OSByZz1zY2htYXJybgp+IyEgdGlkPTk2Mzg2NjU2MwphKSBkZW4gUmljaHRlciB3YWVobGUgaWNoOykKYikgaWNoIGJpbiBlaCB1bnNjaHVsZGlnOykKYykgWndlcmdlIHNpbmQgYW4gYWxsZW0gc2NodWxkLi4uSU1NRVIhOikKZCkgbm9jaCBGcmFnZW4/ITspCkRldiwgaW1tZXIgYnJhdiwgbGllYiB1bmQgbmV0dDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBzY2hlaWR1bmc/IChIaWdodCwgMTguIEp1bCAyMDAwLCAyMzowMDoyNik6Cn4jISBybj1EZXZpbGNoZW4gcnQ9OTYzOTQ1Nzc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYzODY2NTYzCmdlcnVlZWVlZWVlZWNodGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHNjaGVpZHVuZz8gKEdsb2luc29uLCAxOC4gSnVsIDIwMDAsIDIzOjI5OjI0KToKfiMhIHJuPUhpZ2h0IHJ0PTk2Mzk1NDAyNiByZz1zY2htYXJybgp+IyEgdGlkPTk2Mzg2NjU2MwpJY2ggaGFsdCBkYXMgYXVjaCBmdWVyIGVpbiBHZXJ1ZWNodCwgZGFzIERldmlsY2hlbiAobm9jaCkgdW5zY2h1bGRpZyBpc3QuCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBzY2hlaWR1bmc/IChOZXZvaywgMTguIEp1bCAyMDAwLCAyMzozMDoyMik6Cn4jISBybj1HbG9pbnNvbiBydD05NjM5NTU3NjQgcmc9c2NobWFycm4KfiMhIHRpZD05NjM4NjY1NjMKRGV2aWxjaGVuIGlzIHB1c2NoZWxmdWVzc2lnIHVuZCBzdHVkaWVydCB3YXMgZ2FueiBmdXJjaHRiYXIgZ2VtZWluZXMuCktlaW5lIHdlaXRlcmVuIEZyYWdlbgoKTmV2b2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHNjaGVpZHVuZz8gKERldmlsY2hlbiwgMTguIEp1bCAyMDAwLCAyMzozMDo1OCk6Cn4jISBybj1OZXZvayBydD05NjM5NTU4MjIgcmc9c2NobWFycm4KfiMhIHRpZD05NjM4NjY1NjMKZGEgYmlzdGUgZmFsc2NoIGluZm9ybWllcnQsIG5ldm9rOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IHNjaGVpZHVuZz8gKEdsb2luc29uLCAxOC4gSnVsIDIwMDAsIDIzOjM4OjE1KToKfiMhIHJuPURldmlsY2hlbiBydD05NjM5NTU4NTggcmc9c2NobWFycm4KfiMhIHRpZD05NjM4NjY1NjMKRHUgc3R1ZGllcnN0IG5pY2h0IG1laHI/CgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouLi4gZ2VkdWxkaWdlIFRvZG8tTGlzdGUgLi4uIChHbG9pbnNvbiwgMTguIEp1bCAyMDAwLCAyMzo1Njo0OSk6CkR1IHRlaWxzdCBYWFggbWl0OiBIYXN0IER1IERpY2ggZWlnZW50bGljaCBtYWwgdW0gPGJsYWJsYT4gZ2VrdWVtbWVydD8KWFhYIHRlaWx0IERpciBtaXQ6IHNvIGFlaG5saWNoLi4uIGhhYiBtaWNoIG5pY2h0IHNlbGJzdCBkcnVtIGdla3VlbW1lcnQuLi4KWFhYIHRlaWx0IERpciBtaXQ6IGdhbW1lbHQgbm9jaCBhdWYgZWluZXIgdG9kb2xpc3RlIGhlcnVtLgpYWFggZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBhbi4KWFhYIHRlaWx0IERpciBtaXQ6IGFiZXIgbmljaHQgYXVmIG1laW5lciA7KQpEdSB0ZWlsc3QgWFhYIG1pdDogU29zby4gVGlhbWFrcyBMaXN0ZSBpc3QgZ2VkdWxkaWcsIG5pY2h0IDspClhYWCB0ZWlsdCBEaXIgbWl0OiA6KQpYWFggdGVpbHQgRGlyIG1pdDogZGF6dSBzYWdlIGljaCBuaXggOikpKQpEdSB0ZWlsc3QgWFhYIG1pdDogRGFzIGtvbW10IGdsZWljaCBuYWNoIFNjaG1hcnJuIDspClhYWCB0ZWlsdCBEaXIgbWl0OiBwb2VoIQoKKGJlaSBkaWVzZW0gc2VwemllbGxlbiBFcnptYWdpZXIgYmVzdGVodCBEYXRlbnNjaHV0eiwgZGVzaGFsYiB3dXJkZSBzZWluIE5hbWUKKGJlaSBkaWVzZW0gc3BlemllbGxlbiBFcnptYWdpZXIgYmVzdGVodCBEYXRlbnNjaHV0eiwgZGVzaGFsYiB3dXJkZSBzZWluIE5hbWUKbWl0CiBhZWhubGljaGVuIEJ1Y2hzdGFiZW4gdmVyc2NobGVpZXJ0KQoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IC4uLiBnZWR1bGRpZ2UgVG9kby1MaXN0ZSAuLi4gKEFuYXRvbCwgMTguIEp1bCAyMDAwLCAyMzo1ODoxMSk6Cn4jISBybj1HbG9pbnNvbiBydD05NjM5NTc0MDkgcmc9c2NobWFycm4KfiMhIHRpZD05NjM5NTc0MDkKRHUgdGVpbHN0IFhYWCBtaXQ6IFNvc28uIFRpYW1ha3MgTGlzdGUgaXN0IGdlZHVsZGlnLCBuaWNodCA7KQoKTWVpbmUgR3VldGUuIFdlbm4gS29obCBzZWluZSBEYXRlbiBhdWNoIHNvIG1pZXMgZ2VzY2h1ZXR6dCBoYWV0dGUsIHdhZXIKc2Nob24gbGFlbmdzdCBrbGFyLCBkYXNzIGRpZSBTcGVuZGVuIHZvbiBIYW5uZWxvcmUgd2FyZW4uLi4KCkFuYXRvbCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogLi4uIGdlZHVsZGlnZSBUb2RvLUxpc3RlIC4uLiAoR2xvaW5zb24sIDE4LiBKdWwgMjAwMCwgMjM6NTg6NTkpOgp+IyEgcm49QW5hdG9sIHJ0PTk2Mzk1NzQ5MSByZz1zY2htYXJybgp+IyEgdGlkPTk2Mzk1NzQwOQpIZWgsIGRlbiBFcnptYWdpZXIgZ2lsdCBlcyBuaWNodCB6dSBzY2h1ZXR6ZW4sIHVtIGRlc3NlbiBnZWR1bGRpZ2UgVG9kby1MaXN0ZQpnZWh0IGVzIGphIGhpZXIgOykKCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IC4uLiBnZWR1bGRpZ2UgVG9kby1MaXN0ZSAuLi4gKFRpYW1haywgMTguIEp1bCAyMDAwLCAyMzo1OTo0Nyk6Cn4jISBybj1HbG9pbnNvbiBydD05NjM5NTc1Mzkgcmc9c2NobWFycm4KfiMhIHRpZD05NjM5NTc0MDkKV2llIGRhcmYgaWNoIGRhcyBkZW5uIGpldHp0IHZlcnN0ZWhlbj8gCgpUaWFtYWsuIFNjaHVldHplbnN3ZXJ0LCBkYSB2b20gQXVzc3RlcmJlbiBiZWRyb2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IC4uLiBnZWR1bGRpZ2UgVG9kby1MaXN0ZSAuLi4gKERpZWRlciwgMTkuIEp1bCAyMDAwLCAwMDowMDozMSk6Cn4jISBybj1HbG9pbnNvbiBydD05NjM5NTc0MDkgcmc9c2NobWFycm4KfiMhIHRpZD05NjM5NTc0MDkKYW5oYW5kIGRlcyBTdGlscyBkZXIgQW50d29ydGVuIHdlaXNzIGRvY2ggZWggamVkZXIsIHVtIHdlbGNoZW4gRXJ6aWUgZXMgc2ljaApoYW5kZWx0Li4uLiA7KQoKRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiAuLi4gZ2VkdWxkaWdlIFRvZG8tTGlzdGUgLi4uIChHbG9pbnNvbiwgMTkuIEp1bCAyMDAwLCAwMDowMToyNSk6Cn4jISBybj1UaWFtYWsgcnQ9OTYzOTU3NTg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYzOTU3NDA5CkFsc28gVGlhbWFrLiBTbyBzY2hsaW1tIGlzdCBlcyBkb2NoIGdld2lzcyBuaWNodCB1bSBEaWNoIGJlc3RlbGx0LCBvZGVyPyBJY2gKbWVpbiwgaXJnZW5kIGVpbmUgd2lsbGlnZSBKdW5nc3BpZWxlcmluIHdpcmQgZG9jaCBnZXdpc3MgbWl0IERpciBhbmJhZW5kZWxuCndvbGxlbi4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogLi4uIGdlZHVsZGlnZSBUb2RvLUxpc3RlIC4uLiAoRGllZGVyLCAxOS4gSnVsIDIwMDAsIDAwOjAxOjQxKToKfiMhIHJuPURpZWRlciBydD05NjM5NTc2MzEgcmc9c2NobWFycm4KfiMhIHRpZD05NjM5NTc0MDkKVm9sbHRyZWZmZXI6CgpYWFggdGVpbHQgRGlyIG1pdDogYmxvZWRtYW5uIQoKRGllZGVyLCBTY2hpZmYgdmVyc2Vua3QgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IC4uLiBnZWR1bGRpZ2UgVG9kby1MaXN0ZSAuLi4gKEFuYXRvbCwgMTkuIEp1bCAyMDAwLCAwMDowNzoxNCk6Cn4jISBybj1EaWVkZXIgcnQ9OTYzOTU3NzAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTYzOTU3NDA5Cj4gZmkgeHh4CkhvcHBsYSAtIGRpZXNlciBOYW1lIGlzdCByZXNlcnZpZXJ0IG9kZXIgZ2VzcGVycnQgKCJnZWJhbmlzaHQiKSEKR3J1bmQgZnVlciBkaWUgU3BlcnJ1bmc6IFNlbHRlbiBkYWVtbGljaGVyIE5hbWUsIGZpbmRlc3QgRHUgbmljaHQ/CgoKSGFlIDspCkFuYXRvbCwgdGF1c2NodCBnbGVpY2ggdmlhIFRGIGFsbGUgTmFtZW4gZ2VnZW4gWFhYIGF1cyB1bmQgZnVlaGx0IHNpY2gKICAgIGRhbm4gd2llIGF1ZiBlaW5lbSBDaGFubmVsIGZ1ZXIgQmV0cmFjaHR1bmdlbiB3ZWlibGljaGVyIEFuYXRvbWllLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogc2NoZWlkdW5nPyAoRGV2aWxjaGVuLCAxOS4gSnVsIDIwMDAsIDAwOjA3OjE4KToKfiMhIHJuPUdsb2luc29uIHJ0PTk2Mzk1NTc2NCByZz1zY2htYXJybgp+IyEgdGlkPTk2Mzg2NjU2MwpiZXdlaXMgbWlyIGRhcyBnZWdlbnRlaWw7KQpEZXYsIF9hYnNvbHV0XyB1bnNjaHVsZGlnIHVuZCBicmVpdCBncmluc2VuZDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWhyIGt1c2NobGlnLi4uIChab29rLCAxOS4gSnVsIDIwMDAsIDExOjQ5OjA5KToKICBTY2hsYWVjaHRlci4uIDogVW5hc2FpLi4uLi4uLiAtLSBLcmFjaGVuLi4uIC4uLi5ub3JtYWwvS2xhdWVuLi4uLi4uCioqKioqKioqClVuYXNhaSB2ZXJrdXNjaGVsdCBzaWNoIG5hY2ggU3VlZGVuLgpbVG9kOkxhcnNdIEVpbiBQcm9ncmFtbWllcmVyIGhhdCBnZXJhZGUgVW5hc2FpIHVtZ2VicmFjaHQuCltUb2Q6RWluIFByb2dyYW1taWVyZXJdIFNjaGljaHQgaW0gU2NoYWNodCEgCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNlaHIga3VzY2hsaWcuLi4gKEdvciwgMTkuIEp1bCAyMDAwLCAxMTo1MDo0Nik6Cn4jISBybj1ab29rIHJ0PTk2NDAwMDE0OSByZz1zY2htYXJybgp+IyEgdGlkPTk2NDAwMDE0OQpEZWluIEZyZXVuZCBHb2xhcyB0ZWlsdCBEaXIgbWl0OiBzaW5kIGdlbnVnLCBkYW1pdCBkYXMgdW5rb29yZGluaWVydCBzZWluIGthbm4KRGVpbiBGcmV1bmQgR29sYXMgdGVpbHQgRGlyIG1pdDogOikKWzxNYXN0ZVI+OkthZGlzIHZlcmxhZXNzdCBhbHMgTGV0enRlIGRpZSBFYmVuZSAnSG9seU1pc3Npb24nLCB3b3JhdWYgZGllc2UKICAgICAgICAgIHNpY2ggaW4gZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCkthZGlzICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpbVG9kOkxhcnNdIEVpbiBQcm9ncmFtbWllcmVyIGhhdCBnZXJhZGUgVW5hc2FpIHVtZ2VicmFjaHQuCltUb2Q6RWluIFByb2dyYW1taWVyZXJdIFNjaGljaHQgaW0gU2NoYWNodCEgCgpTZWhyIHVua29vcmRpbmllcnQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldHp0b3QgdW5kIHRyb3R6ZGVtIHJhZ2Utc3BpZWxlbj8/IChVbmFzYWksIDE5LiBKdWwgMjAwMCwgMTI6NDk6NTEpOgpbPFJhZ2U+XSBMdXJjaGkgc3BpZWx0IGRpZSBLYXJ0ZSBbICAgICAgbWludXMgNSAgICAgXS4gCls8UmFnZT5dIFNpbHZhbmEgc3BpZWx0IGRpZSBLYXJ0ZSBbICAgIHRydW1wZmJsb2NrICAgXS4gICAgCls8UmFnZT5dIER1IHNwaWVsc3QgZGllIEthcnRlIFsgICAgICBtaW51cyA1ICAgICBdLgpMdXJjaGkgc2FndDogb2ggb2ggIAoKRHUgZ3JpbnN0IEx1cmNoaSBhbi4KR29sYXMgaGF0IGdyYWQgZGllIFZlcmJpbmR1bmcgenVtIE1vcmdlbmdyYXVlbiBnZWthcHB0Ckx1cmNoaSB3aWxsIGdhciBuaWNoIHdpc3NlbiB3YXMgamV0enQga29tbXQuCls8UmFnZT5dIEdvbGFzIHNwaWVsdCBkaWUgS2FydGUgWyAgICBzY2h3YXJ6ZSA4ICAgIF0uCls8UmFnZT5dIERlciBTdGljaCBnZWh0IGFuIEdvbGFzLiAgICAKCmFybWVyIGtlcmwgOikpKQoKVW5hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbWFuIGthbm5zIGF1Y2ggdWViZXJ0cmVpYmVuLi4uIChUb3hpY29tYW5lLCAxOS4gSnVsIDIwMDAsIDEyOjUzOjI5KToKSGllciBrbmlja3QgZGllIFN0cmFzc2UgbmFjaCBOb3JkZW4gYWIuIEltIFdlc3RlbiBzaW5kIG1laHJlcmUgQWJ6d2VpZ3VuZ2VuCm5hY2ggTm9yZGVuLiBTdWVkbGljaCB2b24gRGlyIGJlZmluZGV0IHNpY2ggZGllIFN0YWR0bWF1ZXIuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiB3ZXN0ZW4gdW5kIG5vcmRlbi4KVHV0c3p0IGRlciBCbHV0ZGFlbW9uLiAgICAgICAgICAgICAgICAgRGFlZGhlbCBkZXIgZWxmaXNjaGUgRGFlbW9uLgpHcmFpb3AgZGVyIHJhc2VuZGUgRmV1ZXJkYWVtb24uICAgICAgICBIb3Rocm9nIGRlciBTY2hha2Fsa29lcGZpZ2UuCkRhcyBBYmJpbGQgVG94aWNvbWFuZXMuICAgICAgICAgICAgICAgIENob2Nob3MgZGVyIHNjaHdhcnplIERhZW1vbi4KQ2hvY2hvcyBkZXIgc2Nod2FyemUgRGFlbW9uLiAgICAgICAgICAgSG90aHJvZyBkZXIgU2NoYWthbGtvZXBmaWdlLgpGbGF4dHJpIGRlciBhZXR6ZW5kZSBTYWV1cmVkYWVtb24uICAgICBDaG9jaG9zIGRlciBzY2h3YXJ6ZSBEYWVtb24uCkNob2Nob3MgZGVyIHNjaHdhcnplIERhZW1vbi4gICAgICAgICAgIEhvdGhyb2cgZGVyIFNjaGFrYWxrb2VwZmlnZS4KSG90aHJvZyBkZXIgU2NoYWthbGtvZXBmaWdlLiAgICAgICAgICAgRGVyIEhldHplcmRhZW1vbiBSeXRob3RoLgpEZXIgd3VldGVuZGUgQW50aHVrdC4gICAgICAgICAgICAgICAgICBEZXIgSGV0emVyZGFlbW9uIFJ5dGhvdGguCkhvdGhyb2cgZGVyIFNjaGFrYWxrb2VwZmlnZS4gICAgICAgICAgIERlciBIZXR6ZXJkYWVtb24gUnl0aG90aC4KRGVyIEhldHplcmRhZW1vbiBSeXRob3RoLiAgICAgICAgICAgICAgSG90aHJvZyBkZXIgU2NoYWthbGtvZXBmaWdlLgpEYWVkaGVsIGRlciBlbGZpc2NoZSBEYWVtb24uICAgICAgICAgICBEZXIgd3VldGVuZGUgQW50aHVrdC4KRGVyIEhldHplcmRhZW1vbiBSeXRob3RoLiAgICAgICAgICAgICAgRGVyIEhldHplcmRhZW1vbiBSeXRob3RoLgpEZXIgSGV0emVyZGFlbW9uIFJ5dGhvdGguICAgICAgICAgICAgICBIb3Rocm9nIGRlciBTY2hha2Fsa29lcGZpZ2UuCkhvdGhyb2cgZGVyIFNjaGFrYWxrb2VwZmlnZS4gICAgICAgICAgIERhZWRoZWwgZGVyIGVsZmlzY2hlIERhZW1vbi4KRGVyIEhldHplcmRhZW1vbiBSeXRob3RoLiAgICAgICAgICAgICAgSG90aHJvZyBkZXIgU2NoYWthbGtvZXBmaWdlLgpEZXIgSGV0emVyZGFlbW9uIFJ5dGhvdGguICAgICAgICAgICAgICBIb3Rocm9nIGRlciBTY2hha2Fsa29lcGZpZ2UuCkRlciBIZXR6ZXJkYWVtb24gUnl0aG90aC4gICAgICAgICAgICAgIERhZWRoZWwgZGVyIGVsZmlzY2hlIERhZW1vbi4KRGVyIGtsZWluZSBVZWJtYXR1LiAgICAgICAgICAgICAgICAgICAgSG90aHJvZyBkZXIgU2NoYWthbGtvZXBmaWdlLgpEZXIgSGV0emVyZGFlbW9uIFJ5dGhvdGguICAgICAgICAgICAgICBFaW4gT3JrLgpEZXIgSGV0emVyZGFlbW9uIFJ5dGhvdGguICAgICAgICAgICAgICBFaW4gT3JrLgpEZXIgSGV0emVyZGFlbW9uIFJ5dGhvdGguICAgICAgICAgICAgICBEYXMgQWJiaWxkIGVpbmVzIE9ya3MuClRveGksIG51ciBub2NoIGdyaW5zZW5kLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaWdodCAqc2NodWV0dGVsa29wZiogKEdvbGFzLCAxOS4gSnVsIDIwMDAsIDEzOjQ4OjA4KToKSGlnaHQgc2NodWV0dGVsdCBuZSBrdWggYXVzIGRlbSBhZXJtZWwKSGlnaHQgbWVsa3QgZGllIGt1aApIaWdodCB6ZXJzdGFlYnQgZGllIGt1aApIaWdodCBzY2h1ZXR0ZWx0IGVpbiBidXR0ZXJmYXNzIGF1cyBkZW0gYWVybWVsCkhpZ2h0IGZhZW5ndCBhbiB6dSBidXR0ZXJuCkhpZ2h0IGJ1dHRlcnQKSGlnaHQgYnV0dGVydCB3aWV0ZXIKSGlnaHQgYnV0dGVydCBpbW1lcm5vY2gKSGlnaHRzIGJ1dHRlciBpc3QgZmVydGlnIHVuZCBlciBzdHJlaWNodCB3YXMgdm9uIHNlaW5lciBlaW5rYXVmc2xpc3RlCkhpZ2h0IGRlbmt0ICAgLiBvIE8gKGhtIGdlaHQgbm9jaCB3YXMgPykKCnVuZCBkYSBzb2xsIG1hbiBpbiBydWhlIGlkbGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGlnaHQgKnNjaHVldHRlbGtvcGYqIChBcHN1LCAxOS4gSnVsIDIwMDAsIDE2OjAzOjQxKToKfiMhIHJuPUdvbGFzIHJ0PTk2NDAwNzI4OCByZz1zY2htYXJybgp+IyEgdGlkPTk2NDAwNzI4OApIbW1tLCBtdXNzdGUgbWFuIG5pY2h0IGRpZSBLdWggc2NodWV0dGVsbiwgd2VubiBtYW4gQnV0dGVyIGhhYmVuIHdvbGx0ZT8gOikKCkFwc3UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVjaHQgdGV1Zmxpc2NoIChPYmVybW90eiwgMTkuIEp1bCAyMDAwLCAxNzoxMzo1Mik6CmZpbmdlciBkaWFib2xvClZvbGxlciBOYW1lOiBEaWFib2xvID5kZXI8IGhvZmZudW5nc3ZvbGxlIEFuZmFlbmdlcgpSYXNzZTogRWxmLCAgR2lsZGU6IEFiZW50ZXVyZXIsICBHZXNjaGxlY2h0OiA+d2VpYmxpY2g8CgpBbHNvIHdlbm4gZGFzIG5pY2h0IHRldWZsaXNjaCBpc3QuLi4KCk9iZXJtb3R6IHdpcmJ0IHVtIGFrdGl2ZSBUZWlsbmFobWUgYW4gZGVyIFNwZW5kZW5ha3Rpb24gIktvbXBvcyBmdWVyIE9iZXJtb3R6Igo7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIGlzIGRhcyA/Km5ldWdpZXIqIChBbm9yaXMsIDE5LiBKdWwgMjAwMCwgMjM6MjM6MzcpOgpFaW4gV2FobnNpbm5zLU1hZ2llci1Nb25zdGVyLVphcHRvb2wgKGZ1ZXIgU3BpZWxlciBsZWlkZXIgdW5zaWNodGJhcik6IER1CkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogdHJhZWdzdApFaW4gV2FobnNpbm5zLU1hZ2llci1Nb25zdGVyLVphcHRvb2wgKGZ1ZXIgU3BpZWxlciBsZWlkZXIgdW5zaWNodGJhcik6IGRhcwpFaW4gV2FobnNpbm5zLU1hZ2llci1Nb25zdGVyLVphcHRvb2wgKGZ1ZXIgU3BpZWxlciBsZWlkZXIgdW5zaWNodGJhcik6IFdhaG5zaW4KRWluIFdhaG5zaW5ucy1NYWdpZXItTW9uc3Rlci1aYXB0b29sIChmdWVyIFNwaWVsZXIgbGVpZGVyIHVuc2ljaHRiYXIpOiBucy1NYWdpCkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogZXItTW9ucwpFaW4gV2FobnNpbm5zLU1hZ2llci1Nb25zdGVyLVphcHRvb2wgKGZ1ZXIgU3BpZWxlciBsZWlkZXIgdW5zaWNodGJhcik6IHRlci1aYXAKRWluIFdhaG5zaW5ucy1NYWdpZXItTW9uc3Rlci1aYXB0b29sIChmdWVyIFNwaWVsZXIgbGVpZGVyIHVuc2ljaHRiYXIpOiB0b29sCkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogKGZ1ZXIKRWluIFdhaG5zaW5ucy1NYWdpZXItTW9uc3Rlci1aYXB0b29sIChmdWVyIFNwaWVsZXIgbGVpZGVyIHVuc2ljaHRiYXIpOiBTcGllbGVyCkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogbGVpZGVyCkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogdW5zaWNodApFaW4gV2FobnNpbm5zLU1hZ2llci1Nb25zdGVyLVphcHRvb2wgKGZ1ZXIgU3BpZWxlciBsZWlkZXIgdW5zaWNodGJhcik6IGJhcikKRWluIFdhaG5zaW5ucy1NYWdpZXItTW9uc3Rlci1aYXB0b29sIChmdWVyIFNwaWVsZXIgbGVpZGVyIHVuc2ljaHRiYXIpOiBiZXJlaXRzCkVpbiBXYWhuc2lubnMtTWFnaWVyLU1vbnN0ZXItWmFwdG9vbCAoZnVlciBTcGllbGVyIGxlaWRlciB1bnNpY2h0YmFyKTogLgotIEFub3JpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdhcyBpcyBkYXMgPypuZXVnaWVyKiAoVGlhbWFrLCAxOS4gSnVsIDIwMDAsIDIzOjI0OjAxKToKfiMhIHJuPUFub3JpcyBydD05NjQwNDE4MTcgcmc9c2NobWFycm4KfiMhIHRpZD05NjQwNDE4MTcKQnVnIDI5NDc1MSBhdWYgbWVpbmVyIExpc3RlLgoKVGlhbWFrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHdhcyBpcyBkYXMgPypuZXVnaWVyKiAoQW5vcmlzLCAxOS4gSnVsIDIwMDAsIDIzOjI0OjM3KToKfiMhIHJuPVRpYW1hayBydD05NjQwNDE4NDEgcmc9c2NobWFycm4KfiMhIHRpZD05NjQwNDE4MTcKZ2lidHMgbmUgbW9lZ2xpY2hrZWl0IGFydGlrZWwgenUgc2NocmVpYmVuIGRpZSBtYWdpZXIgX25pY2h0XyBsZXNlbiBrb2VubmVuID8KOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogd2FzIGlzIGRhcyA/Km5ldWdpZXIqIChEaWVkZXIsIDE5LiBKdWwgMjAwMCwgMjM6MjQ6NDEpOgp+IyEgcm49VGlhbWFrIHJ0PTk2NDA0MTg0MSByZz1zY2htYXJybgp+IyEgdGlkPTk2NDA0MTgxNwpkaWUgWmFobCBsYWVzc3QgZGFyYXVmIHNjaGxpZXNzZW4sIGRhc3MgZXMgRGlyIG5pY2h0IGxhbmd3ZWlsaWcgd2lyZCA7KQoKRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB3YXMgaXMgZGFzID8qbmV1Z2llciogKFRpYW1haywgMTkuIEp1bCAyMDAwLCAyMzoyNTowMyk6Cn4jISBybj1Bbm9yaXMgcnQ9OTY0MDQxODc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY0MDQxODE3CktsYXIuCgpBbHMgaG9laGVyZXIgTWFnaWVyLgoKClRpYW1hawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogd2FzIGlzIGRhcyA/Km5ldWdpZXIqIChUaWFtYWssIDE5LiBKdWwgMjAwMCwgMjM6MjU6NTkpOgp+IyEgcm49RGllZGVyIHJ0PTk2NDA0MTg4MSByZz1zY2htYXJybgp+IyEgdGlkPTk2NDA0MTgxNwpTbyBrYW5uIG1hbiBlcyBhdWNoIHVtc2NocmVpYmVuIC4uLiA7LSkKCgpUaWFtYWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6ICJvcnQiIChTaWx2YW5hLCAxOS4gSnVsIDIwMDAsIDIzOjQwOjU0KToKfiMhIHJuPVRpYW1hayBydD05NjQwNDI4MDggcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKQ2FsaW1lcmEgc2FndDogaGFhYSAtIG5peCBuZXVlcyBhdWYgLi4gYWVoIGRvY2gKCktlaW5lIEZyYWdlbiBtZWhyLi4uIC0gU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogIm9ydCIgKFRpYW1haywgMTkuIEp1bCAyMDAwLCAyMzo0MTozMik6Cn4jISBybj1TaWx2YW5hIHJ0PTk2NDA0Mjg1NCByZz1zY2htYXJybgp+IyEgdGlkPTk2NDA0MjQ2MgpLbGFyZXIgRmFsbCAtIHNpZSBsaWVzdCB6dSBsYW5nc2FtLiA7XikKCgpUaWFtYWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZ2llciArIEtla3NlIChNdWFkZGliLCAyMC4gSnVsIDIwMDAsIDAwOjA2OjM4KToKQ2FsaW1lcmEgYm9ocnQga2VrcyBpbiBuYXNlIGluIGRlciBOYXNlLiAgICAgSWdpdHQhIDopCgpzb3NvLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzA6MzApOgp+IyEgb249RGllZGVyIG90PTk2NDA0MTk0NSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49VGlhbWFrIHJ0PTk2NDAxMjE5OSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2Mzg3OTE2NgpmZWluLCBkYW5rZSA7LSkKCkRpZWRlciwgYXVmIG5lbiBDcmFzaC9SZWJvb3Qgd2FydGVuZCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMwOjMxKToKfiMhIG9uPVRpYW1hayBvdD05NjQwNDIwMDMgb2c9ZW50d2lja2x1bmcKfiMhIHJuPURpZWRlciBydD05NjQwNDE5NDUgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjM4NzkxNjYKTnVuLCBkYXMgbWl0IGRlbSBXYXJ0ZW4gYXVmIENyYXNocy9SZWJvb3RzIG1hZyBlaW4gbmV0dGVzIEhvYmJ5IHNlaW4gLi4uCgpBYmVyIHdvenU/CgoKVGlhbWFrLiBTYWd0ZSB3YXMgdm9uIHp3ZWkgV29jaGVuLiBOaWNodCB2b20gbmFlY2hzdGVuIENyYXNoLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMDozMik6Cn4jISBvbj1EaWVkZXIgb3Q9OTY0MDQyMTY3IG9nPWVudHdpY2tsdW5nCn4jISBybj1UaWFtYWsgcnQ9OTY0MDQyMDAzIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTYzODc5MTY2CmljaCBiaW4gdW5nZWR1bGRpZywgaWNoIHNjaG5vcl5IXkheSF5IXkheSHNhbW1lbCBsaWViZXIgd2llZGVyIG5ldWUgQXVzcnVlCmFuc3RhdHQgMiBXb2NoZW4genUgd2FydGVuIDopCgpEaWVkZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMDozMyk6Cn4jISBvbj1UaWFtYWsgb3Q9OTY0MDQyMjIzIG9nPWVudHdpY2tsdW5nCn4jISBybj1EaWVkZXIgcnQ9OTY0MDQyMTY3IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTYzODc5MTY2Ck9jaCwgZGFzIGtvZW5uZW4gd2lyIGJlc2NobGV1bmlnZW4uCk5lbiBwZXJzb2VubGljaGVuIFJlYm9vdCB2ZXJzY2hhZmYgaWNoIGF1ZiBXdW5zY2ggamVkZW0gU3BpZWxlci4gXTotPgoKClRpYW1hay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMDozNCk6Cn4jISBvbj1ab29rIG90PTk2NDA0MjIzNyBvZz1lbnR3aWNrbHVuZwp+IyEgcm49VGlhbWFrIHJ0PTk2NDA0MjIyMyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2Mzg3OTE2Ngpab29rIHdpbGwgYXVjaCBtYWwgZGVuIEtub3BmIGRydWVja2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMwOjM1KToKfiMhIG9uPVRpYW1hayBvdD05NjQwNDIyNzcgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVpvb2sgcnQ9OTY0MDQyMjM3IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTYzODc5MTY2CkR1IGhhc3QgZG9jaCBLaW5kZXIuIEdlaCBtaXQgZGVuZW4gc3BpZWxlbi4gOy0pCgoKVGlhbWFrLiBEZXV0ZXQgZnVlciBhbGxlLCBkaWUgZGVuIGpldHp0IG5pY2h0IHZlcnN0ZWhlbiwgYXVmIC1scGMuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMwOjM2KToKfiMhIG9uPURpZWRlciBvdD05NjQwNDIyOTkgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVRpYW1hayBydD05NjQwNDIyMjMgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjM4NzkxNjYKaWNoIGRlbmtlIHNvemlhbCB1bmQgZnVlciBkaWUgR2VtZWluc2NoYWZ0Li4uIGVudHdlZGVyIGFsbGUgb2RlciBrZWluZXIgKmh1c3QqCjopCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMDozNyk6Cn4jISBvbj1Hbm9tZSBvdD05NjQwNDIzMDcgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVpvb2sgcnQ9OTY0MDQyMjM3IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTYzODc5MTY2CnVudGVyc3RlaHQgZXVjaCEKCiprcmVpc2NoKgoKZ25PbWUgZGVua3QgLiBvIDAgKGVyemllcyEpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMwOjM4KToKfiMhIG9uPVpvb2sgb3Q9OTY0MDQyMzQ5IG9nPWVudHdpY2tsdW5nCn4jISBybj1Hbm9tZSBydD05NjQwNDIzMDcgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjM4NzkxNjYKT2ggZmVpbi4uLiBLb21tIEZpemJhbi4uLiBpY2ggemVpZyBEaXIgbWFsIGVpbiBwYWFyIGZlaW5lIFNhY2hlbiwgZGllIAptYW4gaW1tZXIgbnVyIGltIEhvbWUtTXVkIG1hY2hlbiBzb2xsdGUuLi4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMDozOSk6Cn4jISBvbj1UaWFtYWsgb3Q9OTY0MDQyMzc1IG9nPWVudHdpY2tsdW5nCn4jISBybj1Hbm9tZSBydD05NjQwNDIzMDcgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjM4NzkxNjYKSGV5LCBpY2ggc3ByYWNoIHZvbiBwZXJzb2VubGljaGVuIFJlYm9vdHMuCgpTY2hsaWVzc2xpY2ggaGF0IGJpc2hlciBrZWluZXIgYmVoYXVwdGV0LCBkYXNzIGVpbiBSZWJvb3QgaXJnZW5kd2FzCmJlc2NobGV1bmlnZW4gd3VlcmRlLiBEYXMgaXN0IHJlaW5lIEVpbmJpbGR1bmcgdm9uIERpZWRlci4gOi0pCgoKVGlhbWFrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMwOjQwKToKfiMhIG9uPURpZWRlciBvdD05NjQwNDI0Mjggb2c9ZW50d2lja2x1bmcKfiMhIHJuPVpvb2sgcnQ9OTY0MDQyMzQ5IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTYzODc5MTY2CmljaCBkYWNodGUgZHUgd29sbHRlc3QgZW5kbGljaCBtYWwgc2VsYnN0IGRlbiBLbm9wZiBkcnVlY2tlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMDo0MSk6Cn4jISBvbj1GaXpiYW4gb3Q9OTY0MDQyNDYyIG9nPWVudHdpY2tsdW5nCkhvZXJ0IEdlc3Bhbm50IGhpbiB3YXMgWm9vayBpaG0gZXJ6YWVobGVuIHdpbGwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMwOjQyKToKfiMhIG9uPVRpYW1hayBvdD05NjQwNDI0ODYgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUZpemJhbiBydD05NjQwNDI0NjIgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKWm9vb29vb29vb29vb2shCgpCcmluZyBEZWluZW4gQmxhZ2VuIG1hbCBhKSBkYXMgInJlcGx5IiB1bmQgYikgZGFzIEVtb3RlbiBiZWkuIDteKQoKClRpYW1hawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzA6NDMpOgp+IyEgb249Wm9vayBvdD05NjQwNDI1NTAgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVRpYW1hayBydD05NjQwNDI0ODYgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKSWNoIGhhYiBpcmdlbmR3aWUgZGFzIEdlZnVlaGwsIHdpciBwcm9kdXppZXJlbiBoaWVyIEFyYmVpdCBmdWVyIGlyZ2VuZHdlbGNoZQpBcnRpa2VsLVZlcmxlZ2VyLi4uIGthbm4gbWljaCBhYmVyIGF1Y2ggdGFldXNjaGVuLi4uLiA6KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMwOjQ0KToKfiMhIG9uPUZpemJhbiBvdD05NjQwNDI1NjYgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVRpYW1hayBydD05NjQwNDI0ODYgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKQWxzbyBpY2ggYmluIGphIGxlcm5mYWVoaWcgYWJlciBudXIgbWFuY2htYWwKbWVpbmUgV2FlY2h0ZXIgaGFiZW4gYXVjaCBkYXp1Z2VsZXJudCBhKSBuaWNodCB6dSBidWdnZW4gdW5kIGIpIHNpY2ggenUKa29vcmRpbmllcmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMDo0NSk6Cn4jISBvbj1EaWVkZXIgb3Q9OTY0MDQyNjI4IG9nPWVudHdpY2tsdW5nCn4jISBybj1UaWFtYWsgcnQ9OTY0MDQyMzc1IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTYzODc5MTY2Cm9jaCAsIGVzIG11c3MgbmljaHQgZWluIFJlYm9vdCwgZXMgZGFyZiBhdWNoIGVpbiBDcmFzaCBzZWluLi4uCgpEaWVkZXIsIG1hbCBhbGxlIFBhKi1NYWdpZXIgYW5mZXVlcm5kIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzA6NDYpOgp+IyEgb249Wm9vayBvdD05NjQwNDI2MzIgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUZpemJhbiBydD05NjQwNDI1NjYgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKV29iZWkgZGllIGVyc3RlbiBWZXJzdWNoZSBzZWhyIG5ldHQgd2FyZW4uIFN0YXR0IG1pdCBkZW0gU3BpZWxlciB6dQprYWVtcGZlbiwgem9nZW4gZXMgZGllIEthbWVyYWRlbiB2b3IsIHNpY2ggZ2VnZW5zZWl0aWcgenUgc2NobGFjaHRlbiA6KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMDo0Nyk6Cn4jISBvbj1GaXpiYW4gb3Q9OTY0MDQyNjcyIG9nPWVudHdpY2tsdW5nCn4jISBybj1ab29rIHJ0PTk2NDA0MjYzMiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2MgpJY2ggaGFiIG5pZSBiZWhhdXB0ZXQgZGFzIHNpZSBpbnRlbGxpZ2VudCBzaW5kIGFiZXIgaGFsdCBsZXJuZmFlaGlnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzA6NDgpOgp+IyEgb249VGlhbWFrIG90PTk2NDA0MjY3NiBvZz1lbnR3aWNrbHVuZwp+IyEgcm49Rml6YmFuIHJ0PTk2NDA0MjU2NiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2MgpEYXMgZ2lidHMgZG9jaCBnYXIgbmljaHQgLi4uIAoKV2lyIHZlcnN1Y2hlbiBoaWVyIGVybnN0aGFmdCwgbmVuIHNjaG9lbmVuIFNjaG1hcnJuLVRocmVhZCBmdWVyIEdyaW1tYm9ybiB6dQpwcm9kdXppZXJlbiwgdW5kIEZpemJhbiBtaXNzYnJhdWNodCBkYXMgZnVlciBFaWdlbndlcmJ1bmcuCgoKVGlhbWFrIHNhZ3Q6IFpvb29vb29vaywgdW50ZXJuaW1tIHdhcyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMDo0OSk6Cn4jISBvbj1ab29rIG90PTk2NDA0MjcwOCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49VGlhbWFrIHJ0PTk2NDA0MjY3NiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2MgpTdGltbXQuIFNvIGdlaHQgZGFzIG5pY2h0IHdlaXRlciwgU29obmVtYW5uISBadXJ1ZWNrIHp1bSBUaGVtYS4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzA6NTApOgp+IyEgb249Rml6YmFuIG90PTk2NDA0MjczMiBvZz1lbnR3aWNrbHVuZwp+IyEgcm49Wm9vayBydD05NjQwNDI3MDggcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKSGV5IGRhcyB3YXIgbmUga2xlaW5lIEJla2FubnRtYWNodW5nIGFtIFJhbmRlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzA6NTEpOgp+IyEgb249RGllZGVyIG90PTk2NDA0Mjc1OCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49Wm9vayBydD05NjQwNDI3MDggcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKZ2VuYXUhIGRhIGZhbmcgaWNoIG1pdCBuZW0gZXJuc3RoYWZ0ZW4gQXJ0aWtlbCBpbiBFbnR3aWNrbHVuZyBhbiB1bmQgZGFubgpzb3dhcy4uLgoKRGllZGVyLCBlbXBvZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzA6NTIpOgp+IyEgb249Wm9vayBvdD05NjQwNDI3ODggb2c9ZW50d2lja2x1bmcKfiMhIHJuPURpZWRlciBydD05NjQwNDI3NTggcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKWm9vayBtdXN0ZXJ0IERpZWRlciB1bmQgZGVua3QgLiBvIE8gKFdhciBqYSBrbGFyLCBpcmdlbmR3aWUpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzA6NTMpOgp+IyEgb249Rml6YmFuIG90PTk2NDA0MjgwMCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49RGllZGVyIHJ0PTk2NDA0Mjc1OCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2MgpEYXMgbWl0IGRlbSBlcm5zdGhhZnQgbWVpc3QgRHUgZG9jaCBuaWNodCBzbyBkYW5uIHdhZXJlIGRhcyBqYSBzY2hsaW1tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzA6NTQpOgp+IyEgb249VGlhbWFrIG90PTk2NDA0MjgwOCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49RGllZGVyIHJ0PTk2NDA0Mjc1OCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2MgouLi4uIHVuZCBzY2hhdSBhbiwgd2FzIEZpemJhbiBkcmF1cyBnZW1hY2h0IGhhdCEKCk51ciBub2NoIFJlXjUgLSBkYWJlaSBoYWV0dGVuIHdpciBkZW0gS2FzdGVuIEJpZXIgc2Nob24gc29vb28gbmFoZSBzZWluCmtvZW5uZW4hICpzY2htb2xsKgoKClRpYW1hawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMxOjIyKToKfiMhIG9uPUZpemJhbiBvdD05NjQwNDI4NjIgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVRpYW1hayBydD05NjQwNDI4MDggcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKQWNoIFRpYSBuaW1tIGVzIG5pY2h0IHNvIHNjaHdlciBhbGxlciBBbmZhbmcgaXN0IHNjaHdlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMxOjIzKToKfiMhIG9uPUxpYXJhIG90PTk2NDA0Mjg4MiBvZz1lbnR3aWNrbHVuZwp+IyEgcm49VGlhbWFrIHJ0PTk2NDA0MjgwOCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2MgpTYWNodCBtYWwsIHdhcyBoYXQgbWFuIEV1Y2ggZGVubiBnZWdlYmVuPwoKTGlhcmEsIFplcmdlbnphdWJlcmluZSwgaGFldHRlIGdlcm5lIG5lIFBvYmUgenVtIEFuYWx5c2llcmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzE6MjQpOgp+IyEgb249RGllZGVyIG90PTk2NDA0MjkwMCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49VGlhbWFrIHJ0PTk2NDA0MjgwOCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2MgpJY2ggaG9mZmUgc2Nod2VyLCBEdSB3aXJzdCBkaWUgdW5xdWFsaWZpemllcnRlbiBBZXVzc2VydW5nZW4gZ2V3aXNzZXIKSnVuZ21hZ2llciwgZWdhbCB3ZWxjaGVuIExldmVscywgZW50c2NodWxkaWdlbiBrb2VubmVuIDopCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3BpZWxlcnRpdGVsIHVuZCBTZWhlcmJlcnVmZSAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzE6MjUpOgp+IyEgb249S2FyaXMgb3Q9OTY0MDQyOTI2IG9nPWVudHdpY2tsdW5nCn4jISBybj1TaWx2YW5hIHJ0PTk2MzMwNTExMSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2MzMwNDg2MwpBdWZoaW9lcmVuIDopKSkgaWNoIGthbm4gbmljaCBtZWhyIDopKQpLYXJpcyAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMToyNik6Cn4jISBvbj1UaWFtYWsgb3Q9OTY0MDQyOTMwIG9nPWVudHdpY2tsdW5nCn4jISBybj1MaWFyYSBydD05NjQwNDI4ODIgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKR2xlbmZhcmNsYXMsIDE1IEphaHJlLiAKClRpYW1hay4gS2FubiBkZW4gbnVyIHdlaXRlcmVtcGZlaGxlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMToyNyk6Cn4jISBvbj1ab29rIG90PTk2NDA0Mjk2NyBvZz1lbnR3aWNrbHVuZwp+IyEgcm49VGlhbWFrIHJ0PTk2NDA0MjkzMCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2MgpUaG9tZSBQaWxzIGF1cyBXb2x6aGF1c2VuLgoKWm9vay4gTXVhZGliIGthbm4gZGFzIHdlaXRlcmVtcGZlaGhsZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzE6MjgpOgp+IyEgb249RGllZGVyIG90PTk2NDA0MzAwMyBvZz1lbnR3aWNrbHVuZwp+IyEgcm49VGlhbWFrIHJ0PTk2NDA0MjkzMCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2Mgp3ZW5uIG1hbiBuaWNodCB3ZWlzcywgZGFzcyB1bmQgdm9yIGFsbGVtIF93YXNfIGRhcyBmdWVyIGVpbiBHZXRyYWVuayBpc3QsCnd1ZXJkZXN0IER1IGpldHp0IGdsYXR0IGluIGVpbmVyIHppZW1saWNoIHVlYmxlbiBTY2h1YmxhZGUgbGFuZGVuIDopCgpObyBmdXJ0aGVyIGNvbW1lbnRzIDopCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMToyOSk6Cn4jISBvbj1TaWx2YW5hIG90PTk2NDA0MzAxOSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49Wm9vayBydD05NjQwNDI5Njcgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKQmx1ZSBNb29uLiBLYW5uIGljaCBlbXBmZWhsZW4sIGphLgoKU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMTozMCk6Cn4jISBvbj1GaXpiYW4gb3Q9OTY0MDQzMDM5IG9nPWVudHdpY2tsdW5nCn4jISBybj1EaWVkZXIgcnQ9OTY0MDQzMDAzIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTY0MDQyNDYyClNpZWhzdCBEdSBUaWFtYWsgZXMgZ2VodCBkb2NoIHdpciBoYWJlbiBzY2hvbiBmYXN0IHdpZWRlciBhbHRlcyBMZXZlbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMTozMSk6Cn4jISBvbj1Td29vcCBvdD05NjQwNDMwODMgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUZpemJhbiBydD05NjQwNDMwMzkgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKTGV2ZWw/YE5pdmVhdT8gV2llIG5pdmV1YWxvcy4KCkdsXkheSFN3b29wCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMxOjMyKToKfiMhIG9uPVpvb2sgb3Q9OTY0MDQzMTA5IG9nPWVudHdpY2tsdW5nCn4jISBybj1Td29vcCBydD05NjQwNDMwODMgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKTmEsIG51IHdpcmRzIGFiZXIgYSBiaXNzZXJsIGtyeXB0aXNjaC4uLgoKWm9vay4gRnVlciBtZWhyIEtsYXJoZWl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMTozMyk6Cn4jISBvbj1Td29vcCBvdD05NjQwNDMxNDkgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVpvb2sgcnQ9OTY0MDQzMTA5IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTY0MDQyNDYyCkFjaCBKdW5nbWFnaWVyLiBWZXJzdGVoZW4gbmljaHRtYWwgQ29kZXMgbWl0IEJ1Y2hzdGFiZW51bXN0ZWxsZXJlaWVuLiBXb2hpbgpzb2xsIHNpY2ggZGFzIG5vY2ggZW50d2lja2Vsbj8gLi4uCgpTd29vcAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMTozNCk6Cn4jISBvbj1UaWFtYWsgb3Q9OTY0MDQzMjgxIG9nPWVudHdpY2tsdW5nCn4jISBybj1EaWVkZXIgcnQ9OTY0MDQzMDAzIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTY0MDQyNDYyClNjaHVibGFkZT8KCkFsc28gd2VubiBlcyBkYSBhdWNoIHNvIGxlY2tlcmVuIFdoaXNreSBnaWJ0LCBiaW4gaWNoIGRhYmVpLiA6LSkKCgpUaWFtYWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzE6MzUpOgp+IyEgb249U2lsdmFuYSBvdD05NjQwNDM1Njkgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVRpYW1hayBydD05NjQwNDMyODEgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKVHJpbmsgRHUgcnVoaWcgc28nbiBaZXVnLCBkYW5uIGJsZWliZW4gZGllIGxlY2tlcmVuIFNhY2hlbiBmdWVyIG1pY2guLi4gOy0pCgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzE6MzYpOgp+IyEgb249RGllZGVyIG90PTk2NDA0MzU4MyBvZz1lbnR3aWNrbHVuZwp+IyEgcm49VGlhbWFrIHJ0PTk2NDA0MzI4MSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2MgplbGVnYW50IGRpZSBLdXJ2ZSBnZWtyaWVndCAtIGNvdWxkIG5vdCByZXNpc3QgOikKCk1laW5lIFNjaHVibGFkZSBnaWJ0IGxlaWRlciBpbSBNb21lbnQgbnVyIG5lbiA5N2VyIFd1ZXJ0dGVtYmVyZ2VyIGhlciA6KQoKRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMxOjM3KToKfiMhIG9uPVRpYW1hayBvdD05NjQwNDM2Mzcgb2c9ZW50d2lja2x1bmcKfiMhIHJuPURpZWRlciBydD05NjQwNDM1ODMgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKSGFiIGF1Y2ggbGFuZ2UgZ2VudWcgdWViZXJsZWd0IGZ1ZXIgZGVuIEFydGlrZWwuIDteKQoKVGlhbWFrLiBUcmlua3QgenVyIE5vdCBhdWNoIG5lbiBuZXR0ZW4gV2VpbiBtaXQuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTk5OiBTQ0hXVVBQRElXVVBQISAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzE6MzgpOgp+IyEgb249QW5hdG9sIG90PTk2NDA0NDMwNSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49VGlhbWFrIHJ0PTk2NDA0MzYzNyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2MgoKKlNUT0VITioKCklociBoYWJ0IHp1dmllbCBaZWl0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwMDA6IFNDSFdVUFBESVdVUFAhIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMTozOSk6Cn4jISBvbj1UaWFtYWsgb3Q9OTY0MDQ0MzUzIG9nPWVudHdpY2tsdW5nCn4jISBybj1BbmF0b2wgcnQ9OTY0MDQ0MzA1IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTY0MDQyNDYyClBvZWgsIGRlciBpc3QgamEgZ2VwZnVzY2h0LgoKQXVzc2VyZGVtIGhhc3QgRHUgZGllIEFydGlrZWwgamEgbm9jaCBnYXIgbmljaHQgYWxsZSBnZWxlc2VuLiA7LSkKCgpUaWFtYWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwMDA6IFNDSFdVUFBESVdVUFAhIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMTo0MCk6Cn4jISBvbj1Td29vcCBvdD05NjQwNDQzOTcgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUFuYXRvbCBydD05NjQwNDQzMDUgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKRHUgbXVzc3QgenV2aWVsIFplaXQgaGFiZW4uIER1IHNjaGVpbnN0IERpciB6dW1pbmRlc3QgZWluZW4gQXJ0aWtlbCBkZXMKVGhyZWFkcyBkdXJjaGdlbGVzZW4genUgaGFiZW4uCkFuZGVyZXJzZWl0cy4KU2ljaGVyIGlzdCBpbW1lciBaZWl0IGZ1ZXIgZWluIGxlY2tlcmVzIFdlaW5jaGVuLgoKU3dvb3AKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzE6NDEpOgp+IyEgb249TmV2b2sgb3Q9OTY0MDQ3OTc1IG9nPWVudHdpY2tsdW5nCn4jISBybj1EaWVkZXIgcnQ9OTY0MDQzNTgzIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTY0MDQyNDYyCkloaGhoaGhoClNjaHdhYmVuZ2Vzb2VmZiwgU2Nod2VmZWwgc3RhdHQgT2VjaHNsZQoKRGllIGJlcnVlaG10ZSBBdXRvYmFobmhhbmdsYWdlLCBadS1TcGFldC1MZXNlLi4uLgoKV29iZWkgZGFzIGRhbm4gYXVjaCBub2NoIGJlc3NlciBpcyBhbHMgZGVyIFNhdWVyYW1wZmVyIGluIEJvY2tzYmV1dGVsbiBhdXMKSGVzc2VuLi4uYXVzc2VyIG1hbiB3aWxsIGRpZSBMb2VjaGVyIGluIGRlbiBTb2NrZW4genVzYW1tZW56aWVoZW4uLi4uCgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMTo0Nik6Cn4jISBvbj1BbWFyeWxsaXMgb3Q9OTY0MDQ4MzEyIG9nPWVudHdpY2tsdW5nCn4jISBybj1OZXZvayBydD05NjQwNDc5NzUgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKd2VyIHNvd2FzIGJlaGF1cHRldCBoYXQgbnVsbCBBaG51bmcgdm9uIGRldXRzY2hlbiBXZWluZW4uCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMxOjQ3KToKfiMhIG9uPU5ldm9rIG90PTk2NDA0ODQwOCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49QW1hcnlsbGlzIHJ0PTk2NDA0ODMxMiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2MgpOdW4gamEsIGtvZW5udGUgbWFuIGF1Y2ggdm9uIFd1ZXJ0dGVtYmVyZ2VyIFF1YWxpdGFldHN3ZWluIFRyaW5rZXJuIHNhZ2VuIChPeApZIE1vcm9uLiBzaWMhKQoKTmV2b2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzE6NDgpOgp+IyEgb249U3dvb3Agb3Q9OTY0MDQ4NTU5IG9nPWVudHdpY2tsdW5nCn4jISBybj1EaWVkZXIgcnQ9OTY0MDQzNTgzIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTY0MDQyNDYyCkhtLiBXYXMgc2FndCBtYW4gb3NzaWRldXRzY2hlcyBXZWluaGFuZGJ1ZWNobGVpbiBhbm5vIDgwID8KLi4uLiBqYWVocmxpY2hlciBWZXJicmF1Y2ggdm9uIDEwLjAwMCBUb25uZW4gWnVja2Vyc2lydXAgaW4gQmFXdWUgLi4uLgooaW9jaCBrYW5uIG1pY2ggYXVjaCBpbiBkZXIgR3JvZXNzZSBuYWNoIHVudGVuIGdlaXJydCBoYWJlbiA6PikKClN3b29wCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMxOjQ5KToKfiMhIG9uPURpZWRlciBvdD05NjQwNDg2NTEgb2c9ZW50d2lja2x1bmcKfiMhIHJuPU5ldm9rIHJ0PTk2NDA0ODQwOCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2Mgp3ZXIgaGF0IGdlc2FndCBkYXNzIGljaCBudXIgc293YXMgdHJpbmtlPyBhYmVyIFd1ZXJ0dGVtYmVyZ2VyIFdlaXNzd2VpbmUgc2luZApudW5tYWwgZXJoZWJsaWNoIGJlc3NlciBhbHMgaWhyIFJ1Zi4KCld1ZXJkZSBtaWNoIG5pZSBhbHMgV2Vpbmtlbm5lciBiZXplaWNobmVuLCBhYmVyIGljaCBrYW5uIGR1cmNoYXVzIFZlcmdsZWljaGUKbWl0IGZyYW56b2VzaXNjaGVuLCBpdGFsaWVuaXNjaGVuLCB1bmdhcmlzY2hlbiB1bmQga2FsaWZvcm5pc2NoZW4gV2VpbmVuCnppZWhlbi4KCkRpZWRlciBzYWd0OiBHZXNjaG1hY2sgcnVsZXosIHdlbm5zIGVpbmVtIG5pY2ggdW5iZWRpbmd0IHNjaG1lY2t0IG5vY2ggbGFuZ2UKa2VpbiBHcnVuZCBkaWVzIG5pZWRlcnp1bWFjaGVuLCBkYXp1IGdpYnRzIGdlbnVlZ2VuZCBMZXV0ZSB3ZWx0d2VpdCwgZGVuZW4KZGllc2VyIFdlaW4gKGVnYWwgd29oZXIpIHNjaG1lY2t0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMxOjUwKToKfiMhIG9uPU5ldm9rIG90PTk2NDA0ODcwMCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49U3dvb3AgcnQ9OTY0MDQ4NTU5IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTY0MDQyNDYyCmFsc28gbnVuIG1hbCBsYW5nc2FtLgpEaWVzZXMgUm90a2FlcHBjaGVuYmV3ZWlyYWV1Y2hlcnVuZ3NidWNoIGhhdCBpbSBlcm5zdHp1bmVobWVuZGVuIEJlcmVpY2ggbml4CnZlcmxvcmVuLiBOaW1tcyBuZXQga3J1bW0sIGFiZXIgZGllIFdpbnplcmVpIHdhci4uLm5pY2h0IHNlaHIgaG9jaHN0ZWhlbmQuCk1pY2hhZWwgSmFja3NvbiAoTklDSFQgZGVyLi4uYWVoLi4ud2Vpc3NlIFNhZW5nZXIpIGhhdCBzb3dvaGwgZWluIFNFSFIgZ3V0ZXMKQnVjaCB1ZWJlciBTaW5nbGUgTWFsdHMgdmVyYnJvY2hlbiBhbHMgYXVjaCB3YXMgZ3V0ZXMgdWViZXIgV2VpbmUuLi5kYXMgbGFzcwppY2ggZGFubiBzY2hvbiBlaGVyIGdlbHRlbi4uLgoKTmV2b2suLi5kZXIgWnVja2Vyc3lydXAgbnVyIHVlYmVyIFBmYW5ua3VjaGVuIGdpZXNzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzE6NTEpOgp+IyEgb249TGlhcmEgb3Q9OTY0MDQ4ODE2IG9nPWVudHdpY2tsdW5nCn4jISBybj1OZXZvayBydD05NjQwNDg3MDAgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKV2VyIHRyaW5rdCBzY2hvbiBXZWlzc3dlaW4uCgpMaWFyYSwgWndlcmdlbnphdWJlcmluZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMTo1Mik6Cn4jISBvbj1EaWVkZXIgb3Q9OTY0MDQ4ODY0IG9nPWVudHdpY2tsdW5nCn4jISBybj1Td29vcCBydD05NjQwNDg1NTkgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKc29ycnksIGFiZXIgZGllcyB3ZXJ0ZSBpY2ggamV0enQgbWFsIG51ciBhbHMgSXJyZWZ1ZWhydW5nLi4uIE1hZyB6d2FyIGR1cmNoYXVzCnRlaWx3ZWlzZSB3YXMgZHJhbiBzZWluICh2Z2wuIEdseWNvc2UpLCBhYmVyIFVlYmVyenVja2VydW5nIGthbm4gbWFuIGRlbgp3dWVydHRlbWJlcmdpc2NoZW4gV2VpbmVuIG51biBiZWkgSm9mIG5pY2h0IHZvcndlcmZlbiwgZGF6dSBzaW5kIHNpZSBlaW5mYWNoCm1laXN0IHp1IHJhZXMgKCJoZXJiIiBmdWVyIE11c2NoZWxzY2h1YnNlcikuCgpOYWphIHp1bSBBbHRlciB1bmQgSGVya3VuZnQgZGVyIFNjaHJpZnQgc2FnIGljaCBtYWwgd2VpdGVyIG5peCA6KQoKRGllZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMxOjUzKToKfiMhIG9uPU5ldm9rIG90PTk2NDA0ODg2OCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49TGlhcmEgcnQ9OTY0MDQ4ODE2IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTY0MDQyNDYyCkdpYnQgZGEgZWluIHBhYXIgc2VociBuZXR0ZS4uLi51bmQgd2VyIGdlcmFkZSBrZWluZW4gUm90d2VpbiB6dXIgSGFuZCBoYXQgZ2lidApzaWNoIG1pdCBBbHRlcm5hdGl2ZW4genVmcmllZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMTo1NCk6Cn4jISBvbj1UaWFtYWsgb3Q9OTY0MDQ4ODY5IG9nPWVudHdpY2tsdW5nCn4jISBybj1MaWFyYSBydD05NjQwNDg4MTYgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKTmEgd2VubiBzY2hvbiBXZWluLCBkYW5uIHdlaXNzZW4uClJvdGVyIG1hY2h0IGVoIG51ciBNaWdyYWVuZS4KClRpYW1hawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMTo1NSk6Cn4jISBvbj1OZXZvayBvdD05NjQwNDg5NDkgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVRpYW1hayBydD05NjQwNDg4Njkgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKbml4IGlzLCBCaWVyIGF1cyBncnVlbmVuIEZsYXNjaGVuIG1hY2h0IGRhcyB1bmQgYnJpbmd0IFVlYmVsa2VpdCBoZXJ2b3IuCkRlciBXb2RrYSwgZGVuIG1hbiBkYXZvciB0cmlua3QgaGF0IGRhbWl0IG5peCB6dSB0dW4sIGhhdCBqYSBzY2hsaWVzc2xpY2gKa2VpbmUgRnVzZWxzdG9mZmUuCgpOZXZvaywgYWx0a2x1ZywgZGEgbmljaHQgQWx0YmllcihiaWVyPyB3dWFoYWhhaGEpIHRyaW5rZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMjoxMik6Cn4jISBvbj1MaWFyYSBvdD05NjQwNDg5Njcgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVRpYW1hayBydD05NjQwNDg4Njkgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKT2ssIFZvcnNjaGxhZzoKV2lyIGJld2Vpc2VuIHVucyBiZWkgR2VsZWdlbmhlaXQgZGFzIEdlZ2VudGVpbC4gOy0pClVuZCBtaXQgV2hpc2t5IHdhciBkYSBkb2NoIGF1Y2ggbm9jaCB3YXMuIDstKSkKCkxpYXJhLCBad2VyZ2VuemF1YmVyaW5lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMyOjEzKToKfiMhIG9uPVRpYW1hayBvdD05NjQwNDkwNDcgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUxpYXJhIHJ0PTk2NDA0ODk2NyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2MgpBbHNvIG1pdCBSb3R3ZWluIGJyYXVjaHN0IER1IG1pciBuaWNodHMgenUgYmV3ZWlzZW4uClZvciBhbGxlbSBtdXNzIGljaCBlcyBkYW5uIGphIGF1c2JhZGVuLCB3ZW5uIGljaCByZWNodCBoYXR0ZS4gO14pCgoKVGlhbWFrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMyOjE0KToKfiMhIG9uPUFuYXRvbCBvdD05NjQwNDkwNzcgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVRpYW1hayBydD05NjQwNDkwNDcgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKQWJlciBkaWUgendlaSBGbGFzY2hlbiBTY2hpbGxlciwgZGllIGhhZXR0ZXN0IER1IGdlbm9tbWVuLCB3YXM/CkR1IHNjaHVsZGVzdCBtaXIgbm9jaCBpbW1lciAyIExpdGVyIGVkbGVuIFNhZnQsIFRpYW1hayAuLi4gOikKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMjoxNSk6Cn4jISBvbj1MaWFyYSBvdD05NjQwNDkwOTEgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVRpYW1hayBydD05NjQwNDkwNDcgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKKnNjaG1vbGwqCgoqcG9laCoKCi4uLiAqcGZmZmZmZmZmZmZmZmZ0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMjoxNik6Cn4jISBvbj1Td29vcCBvdD05NjQwNDkxMzUgb2c9ZW50d2lja2x1bmcKfiMhIHJuPURpZWRlciBydD05NjQwNDg4NjQgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKQnVoYWhhaGFoYWhhLgpBdXMgZGVtIFJhdW0gQmFXdWUga29lbW1lbiBzbyBlaW5pZ2UgYmlsbGlnZSBQbGVtcGVyd2VpbmUsIGJlaSBkZW5lbiBBbGtvaG9sLQpnZWhhbHQgdW5kIFByYWVkaWthdCBlaW4gTWVnYXN1cGVydHJhdWJlIG9kZXIgZXR3YXMgWnVja2Vyc2lydXAgYmVkaW5nZW4uClNjaGF1IGVpbmZhY2ggbWFsIGltIFN1cGVybWFya3RyZWdhbCBEZWluZXIgV2FobCBuYWNoLgoKU3dvb3AKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzI6MTcpOgp+IyEgb249VGlhbWFrIG90PTk2NDA0OTE2OSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49QW5hdG9sIHJ0PTk2NDA0OTA3NyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2MgpEdSBrb21tc3QgamEgbmllIGhpZXIgdm9yYmVpLgpJc3QgZ2VuYXVzbyB3aWUgbWl0IExpYXJhLiA7LSkKCgpUaWFtYWsuIERldXRldCBhdWYgZGVuIG5hZWNoc3RlbiBTdGFtbXRpc2NoLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzI6MTgpOgp+IyEgb249TmV2b2sgb3Q9OTY0MDQ5MjA3IG9nPWVudHdpY2tsdW5nCn4jISBybj1Td29vcCBydD05NjQwNDkxMzUgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKQmFkZW4gb2RlciBXdWVydHRlbWJlcmcgTklDSFQgQmFXdWUuIE51IGFiZXIgbWFsIG5lbiBQdW5rdCBtYWNoZW4gd28gZWluIFB1bmt0CmhpbmdlaG9lcnQuCgpOZXZvaywgZGllIEdlbGJlIEZsYWdnZSBtaXQgZGVtIHJvdGVuIFF1ZXJiYWxrZW4gc2Nod2Vua2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzI6MTkpOgp+IyEgb249U3dvb3Agb3Q9OTY0MDQ5MzEwIG9nPWVudHdpY2tsdW5nCn4jISBybj1OZXZvayBydD05NjQwNDkyMDcgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKQWNod2FzLCBkYXMgYmVzdGUgYXVzIEV1cmVyIEdlZ2VuZCBzaW5kIG5vY2ggZGVyIFJoZWluIHVuZCBkaWUgU2Nod2FiZW4gOj4KQWxsZXMgYW5kZXJlIGhlaXNzdCBCYVd1ZS4KClN3b29wCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMyOjIwKToKfiMhIG9uPURpZWRlciBvdD05NjQwNDkzNDggb2c9ZW50d2lja2x1bmcKfiMhIHJuPVN3b29wIHJ0PTk2NDA0OTEzNSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2MgpoYXJoYXIsCgptYWwgZ2VndWdndCB3YXMgbWFuIGJlaSBEaXIgc28ga3JpZWd0PwpJbSB1ZWJyaWdlbiByZWQgaWNoIG5pY2ggdm9tIEJhaG5kYW1tLU5vcmRzZWl0ZSBvZGVyIHZvbiB2b20gU2ltc2VrcmVic2xlci4KCkljaCBzYWNoIG51ciBkYXNzIGVzIGd1dGUgQlctV2VpbmUgZ2lidCB1bmQgaWNoIGdyYWQgc29sY2ggZWluZW4gOTdlcgpnZW5pZXNzZS4KRnVlciBSb3R3ZWluZSB3dWVyZCBpY2ggYWxsZXJkaW5ncyBlaGVyIGZyYW56b2VzaXNjaGUgb2RlciBpdGFsaWVuaXNjaGUKYXVzd2FlaGxlbiwgc3RpbW10IHdvaGwgLSBkaWUgc2NobWVrY2VuIG1pciBlaW5mYWNoIGJlc3NlciBhbHMgbmFoZXp1IGFsbGUKZGV1dHNjaGVuIFJvdHdlaW5lLCBlZ2FsLCB3b2hlciBzaWUga29tbWVuLgoKV2llZGVyIG1hbCBHZXNjaG1hY2tzc2FjaGUuCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzI6MjEpOgp+IyEgb249TmV2b2sgb3Q9OTY0MDQ5MzY2IG9nPWVudHdpY2tsdW5nCn4jISBybj1Td29vcCBydD05NjQwNDkzMTAgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKKmh1ZXN0ZWwqCkFsc28sIHdlciBTdHV0dGdhcnQgZ2VzZWhlbiBoYXQsIHdlaXNzLCB3YXMgZXIgdm9uICdTY2h3YWJlbicgenUgaGFsdGVuIGhhdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMjoyMik6Cn4jISBvbj1BbmF0b2wgb3Q9OTY0MDQ5NDAwIG9nPWVudHdpY2tsdW5nCn4jISBybj1OZXZvayBydD05NjQwNDkzNjYgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKU2NoZHVhZ2FkIGlzY2ggamEgYXUgbmVkJ3MgZWNoZGUgSGVyemxlIHZvbSBTY2h3b2JhbGFlbmRsZS4uLgoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogIm9ydCIgKEJvaW5nLCAyMC4gSnVsIDIwMDAsIDA5OjMyOjIzKToKfiMhIG9uPU5ldm9rIG90PTk2NDA0OTQzMiBvZz1lbnR3aWNrbHVuZwp+IyEgcm49QW5hdG9sIHJ0PTk2NDA0OTQwMCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2MgpTdGltbXQsIGVoZXIgZGFzIFJla3R1bSwgc29ycnkgTGVpYm5pei4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMjoyNCk6Cn4jISBvbj1HYW5kdXIgb3Q9OTY0MDczMjM4IG9nPWVudHdpY2tsdW5nCn4jISBybj1Td29vcCBydD05NjQwNDkxMzUgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKd2VyIGthdWZ0IHNjaG9uIHdlaW4gaW0gc3VwZXJtYXJrdCAqc2NodWV0dGVsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6ICJvcnQiIChCb2luZywgMjAuIEp1bCAyMDAwLCAwOTozMjoyNSk6Cn4jISBvbj1Hb3Igb3Q9OTY0MDc0MTkyIG9nPWVudHdpY2tsdW5nCn4jISBybj1Td29vcCBydD05NjQwNDkxMzUgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQwNDI0NjIKQWxzbyB3ZW5uIGR1IFdlaW4gaW0gU3VwZXJtYXJrdCBrYXVmc3QgYnJhdWNoc3QgZGljaCBuaWNodCB6dSB3dW5kZXJuLCBkYXNzIGR1Clp1Y2tlcndhc3NlciBtaXQgVHJhdWJlbmdlc2NobWFjayBiZWtvbW1zdC4KCkdvciBmaW5kZXQgJ1dlaW5rZW5uZXInIGF1cyBkZW0gU3VwZXJtYXJrdCBzdWVzcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiAib3J0IiAoQm9pbmcsIDIwLiBKdWwgMjAwMCwgMDk6MzI6MjYpOgp+IyEgb249U2lsdmFuYSBvdD05NjQwNzQ5MDggb2c9ZW50d2lja2x1bmcKfiMhIHJuPUxpYXJhIHJ0PTk2NDA0ODgxNiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDA0MjQ2MgpBbHMgWndlcmcgc29sbHRlc3QgRHUgc29sY2hlcyBXYXNjaHdhc3NlciBhdWNoIG5pY2h0IGZyZWl3aWxsaWcgYW5ydWVocmVuLgpBbHMgWmF1YmVyZXIgc29sbHRlc3QgRHUgdm9uIHNvbGNoIGhhcnRlbiBEcm9nZW4gYXVjaCBkaWUgRmluZ2VyIGxhc3Nlbi4KCkt1cno6IE5peCBmdWVyIERpY2guCgpTaWx2YW5hIC0gdHJpbmt0IGF1Y2gga2VpbiBXZWlzc3dlaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogIm9ydCIgKE11YWRpYiwgMjAuIEp1bCAyMDAwLCAxMzo1ODowNSk6Cn4jISBybj1Cb2luZyBydD05NjQwNzgyODcgcmc9c2NobWFycm4KfiMhIHRpZD05NjQwNDI0NjIKc3RpbW10CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppY2ggc2FncyBqYSBpbW1lciwgZGllIE5lcnZlbiEgKEFsYm9pbiwgMjAuIEp1bCAyMDAwLCAyMDoxODo1OSk6CkRlaW4gRnJldW5kIEdvbGFzIHRlaWx0IERpciBtaXQ6IHVsdHJhYWJnZWZ1Y2t0ZXMgdGYgaWNoIGhhc3NlIGRpZXNlIHNjaGVpc3NlLApEZWluIEZyZXVuZCBHb2xhcyB0ZWlsdCBEaXIgbWl0OiBpY2ggbXVkZGUgZ2xlaWNoIG1pdCB0ZWxuZXQgd2VpdGVyCgpraWNoZXJuZCBBbGJvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1laW5zISA6KSAoU2t5LCAyMC4gSnVsIDIwMDAsIDIyOjQ2OjQyKToKRHUgZ2lic3QgZGllIGJyZW5uZW5kZSBIb3NlIGFuIFdhbHRlci4KV2FsdGVyIHNjaGF1dCBEaWNoIGFuLgpXYWx0ZXIgc2FndDogRGllIFJ1ZXN0dW5nIGlzdCBiZXNjaGFlZGlndC4KV2FsdGVyIHNhZ3Q6IERhcyBrb3N0ZXQgODAgTXVlbnplbi4KTW9lY2h0ZXN0IER1IHNvdmllbCBiZXphaGxlbj8gKGphL25laW4pCldhbHRlciB3aXJkIHVuZ2VkdWxkaWc6IGphIG9kZXIgbmVpbj8KWzxNYXN0ZVI+Olpvb2tdIG5lLiBkb2NoIG5pY2h0Li4gOikKV2FsdGVyIG5pY2t0IHVuZCBtYWNodCBzaWNoIGFuIGRpZSBBcmJlaXQuCldhbHRlciBoYWVtbWVydCB1bmQgbWFjaHQgdW5kIHR1dC4uLgpFcyBzaWVodCBhdXMsIGFscyB3dWVyZGUgZXMgZXR3YXMgZGF1ZXJuLCBudXIgR2VkdWxkLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogbW9uc3RlcnNjaHVsdW5nIChDYXR3ZWF6bGUsIDIxLiBKdWwgMjAwMCwgMDg6NDY6MjcpOgp+IyEgb249VGlhbWFrIG90PTk2NDEwMzUwOSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49UGF0cnluIHJ0PTk2NDEwMzQ1MCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDEwMDQ3NwpBaGhoaCwgREFTIGtsaW5ndCBkb2NoIGVoZXIgbmFjaCBkZW0gUGF0cnluLCBkZW4gaWNoIGtlbm5lLiA6LSkKCgpUaWFtYWsuIERhY2h0ZSBzY2hvbiwgZXMgd2FlcmUgZGVyIGZhbHNjaGUgcmVzdGF1cmllcnQgd29yZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogbW9uc3RlcnNjaHVsdW5nIChDYXR3ZWF6bGUsIDIxLiBKdWwgMjAwMCwgMDg6NDY6MzUpOgp+IyEgb249TGlhcmEgb3Q9OTY0MTEzNzE2IG9nPWVudHdpY2tsdW5nCn4jISBybj1UaWFtYWsgcnQ9OTY0MTAzNTA5IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTY0MTAwNDc3CkhleSwgZXMgaGF0IHNpY2gga2VpbiBTcGllbGVyIChPYmVybW90eiB6YWVobHQgbmljaHQgOykgYmVzY2h3ZXJ0LgpEYXMgd2FyIG51ciBFcnppZWdlamFtbWVyLiAqZHVjayogOy0pCgpMaWFyYSwgWndlcmdlbnphdWJlcmluZSBkZW5rdCAoRXJ6aWVzIGF1ZndlcnRlbiA7LSkpKSkpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogbW9uc3RlcnNjaHVsdW5nIChDYXR3ZWF6bGUsIDIxLiBKdWwgMjAwMCwgMDg6NDY6MzkpOgp+IyEgb249RGllZGVyIG90PTk2NDExNTA4NyBvZz1lbnR3aWNrbHVuZwp+IyEgcm49VGlhbWFrIHJ0PTk2NDEwMzUwOSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDEwMDQ3NwpjcyBrcmFjaAplbmRsaWNoIHZlcnN0ZWggaWNoIGF1Y2gsIF93YXJ1bV8gZXIgcmVzdGF1cmllcnQgd3VyZGUuIE5hdHVlcmxpY2ggbnVyLCB1bSBkZW4KU3BpZWxlcm4gR3V0ZXMgenUgdHVuICpodXN0Ki4KCnNjbnIgOikKCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogbW9uc3RlcnNjaHVsdW5nIChDYXR3ZWF6bGUsIDIxLiBKdWwgMjAwMCwgMDg6NDY6NDEpOgp+IyEgb249T3JrdG9ldGVyIG90PTk2NDExNTI4NyBvZz1lbnR3aWNrbHVuZwp+IyEgcm49RGllZGVyIHJ0PTk2NDExNTA4NyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDEwMDQ3NwpJY2ggaG9lcmUgaGllciBpbW1lciByZXN0YXVyaWVydC4uLiBTb2xsIHNpY2ggamV0enQgWWFudHJvIHdpZWRlciBob2ZmbnVuZwptYWNoZW4gPwoKT3JrVCwgZGVyIGJpdHRlIG5pY2h0IGVyc2NsYWdlbiB3ZXJkZW4gbW9lY2h0ZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IG1vbnN0ZXJzY2h1bHVuZyAoQ2F0d2VhemxlLCAyMS4gSnVsIDIwMDAsIDA4OjQ2OjQ1KToKfiMhIG9uPVRpYW1hayBvdD05NjQxMTUzNTcgb2c9ZW50d2lja2x1bmcKfiMhIHJuPU9ya3RvZXRlciBydD05NjQxMTUyODcgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQxMDA0NzcKSGV5LCBkYW1pdCBzaW5kIHdpciBzY2hvbiBmYXN0IHdpZWRlciBhdWYgZGVtIE5pdmVhdSB2b24gZ2VzdGVybiBhYmVuZC4gCldlaXRlciBzby4gXTotPgoKClRpYW1hawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogbW9uc3RlcnNjaHVsdW5nIChDYXR3ZWF6bGUsIDIxLiBKdWwgMjAwMCwgMDg6NDY6NDcpOgp+IyEgb249Rml6YmFuIG90PTk2NDExNTQyMSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49VGlhbWFrIHJ0PTk2NDExNTM1NyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDEwMDQ3NwpEYXMgZ2xhdWJzdCBEdSBkb2NoIHdvaGwgc2VsYmVyIG5pY2h0IFRpYW1hayBkYXMgd2lyIG5vY2ggbWFsIGRhcyBOaXZlYXUKZXJyZWljaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogbW9uc3RlcnNjaHVsdW5nIChDYXR3ZWF6bGUsIDIxLiBKdWwgMjAwMCwgMDg6NDY6NTEpOgp+IyEgb249VGlhbWFrIG90PTk2NDExNTQ2MyBvZz1lbnR3aWNrbHVuZwp+IyEgcm49Rml6YmFuIHJ0PTk2NDExNTQyMSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDEwMDQ3NwpTdGltbXQuIAoKT2huZSBEZWluZW4gUGFwYSwgZGVyIERpY2ggenVyZWNodHdlaXN0LCByZWlzc3QgRHUgZGFzIE5pdmVhdSB3aWVkZXIKdm9sbGtvbW1lbiB1bm1vdGl2aWVydCBuYWNoIG9iZW4uIDteKQoKClRpYW1hawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IG1vbnN0ZXJzY2h1bHVuZyAoQ2F0d2VhemxlLCAyMS4gSnVsIDIwMDAsIDA4OjQ2OjUzKToKfiMhIG9uPURpZWRlciBvdD05NjQxMTU0OTUgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUZpemJhbiBydD05NjQxMTU0MjEgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQxMDA0NzcKbm9lLCBkYXp1IGhhdCBlciBoZXV0ZSBlaW5kZXV0aWcgenUgd2VuaWcgR2xlbmZhcmNsYXMgZGluZ3NidW1zIGludHVzIDopCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBtb25zdGVyc2NodWx1bmcgKENhdHdlYXpsZSwgMjEuIEp1bCAyMDAwLCAwODo0Njo1Nyk6Cn4jISBvbj1GaXpiYW4gb3Q9OTY0MTE1NTMxIG9nPWVudHdpY2tsdW5nCn4jISBybj1EaWVkZXIgcnQ9OTY0MTE1NDk1IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTY0MTAwNDc3CkphIGRhbm4ga2xvcGZ0IG1pciBuaWNodCBpbW1lciBlaW5lciBhdWYgZGllIEZpbmdlciB3ZW5uIGljaCBzb3dhcyBzY2hyZWliZS4KCkZpemJhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IG1vbnN0ZXJzY2h1bHVuZyAoQ2F0d2VhemxlLCAyMS4gSnVsIDIwMDAsIDA4OjQ2OjU5KToKfiMhIG9uPVRpYW1hayBvdD05NjQxMTU1NzYgb2c9ZW50d2lja2x1bmcKfiMhIHJuPURpZWRlciBydD05NjQxMTU0OTUgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQxMDA0NzcKSmV0enQgZmFsbCBEdSBtaXIgYXVjaCBub2NoIGluIGRlbiBSdWVja2VuLgpJY2ggbGFzcyBtaWNoIGRvY2ggbmljaHQgdm9uIGV1Y2ggenVtIHNhdWZlbiB2ZXJmdWVocmVuLiA7LSkKCgpUaWFtYWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBtb25zdGVyc2NodWx1bmcgKENhdHdlYXpsZSwgMjEuIEp1bCAyMDAwLCAwODo0NzowMyk6Cn4jISBvbj1HbG9pbnNvbiBvdD05NjQxMTcyMzkgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVRpYW1hayBydD05NjQxMTU1NzYgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQxMDA0NzcKRHUgYmlzdCBkb2NoIHNvbnN0IGZ1ZXIgamVkZW4gVW5zaW5uIHp1IGhhYmVuLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IG1vbnN0ZXJzY2h1bHVuZyAoQ2F0d2VhemxlLCAyMS4gSnVsIDIwMDAsIDA4OjQ3OjA3KToKfiMhIG9uPVRpYW1hayBvdD05NjQxMTczNzcgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUdsb2luc29uIHJ0PTk2NDExNzIzOSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDEwMDQ3NwpLbGFyLgoKQWJlciBhYndlY2hzbHVuZ3NyZWljaCBtdXNzIGVzIHNlaW4uIApJbW1lciBkYXNzZWxiZSB3aXJkIHp1IHNjaG5lbGwgbGFuZ3dlaWxpZy4gOy0pCgoKVGlhbWFrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogbW9uc3RlcnNjaHVsdW5nIChDYXR3ZWF6bGUsIDIxLiBKdWwgMjAwMCwgMDg6NDc6MDkpOgp+IyEgb249U2lsdmFuYSBvdD05NjQxMjMwNzEgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVRpYW1hayBydD05NjQxMTczNzcgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQxMDA0NzcKQWJ3ZWNoc2x1bmcuLi4gR3V0ZSBJZGVlIGVpZ2VudGxpY2guCgpTaWx2YW5hIC0gZ2VodCBpbiBkaWUgS3VlY2hlIHVuZCBtaXNjaHQgc2ljaCBuZW4gUmFzYmVycnkgQ3JlYW15LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IG1vbnN0ZXJzY2h1bHVuZyAoQ2F0d2VhemxlLCAyMS4gSnVsIDIwMDAsIDA4OjQ3OjIzKToKfiMhIG9uPU5ldm9rIG90PTk2NDEzNjAzNiBvZz1lbnR3aWNrbHVuZwp+IyEgcm49U2lsdmFuYSBydD05NjQxMjMwNzEgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NjQxMDA0NzcKd2llc28gbGVzIGljaCBkYXMgZWlnZW50bGljaCwgZGVyIGdhbnplIGtsYWRkZXJhZGFlbmcgaXMgZG9jaCBtb3JnZW4gZWggd2llZGVyCmluIHNjaG1hcnJuICpzZXVmeioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBtb25zdGVyc2NodWx1bmcgKENhdHdlYXpsZSwgMjEuIEp1bCAyMDAwLCAwODo0Nzo1Myk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9OTY0MTYyMDQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY0MTAwNDc3CkRhcyBpc3QgcmljaHRpZyA6KQpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IG1vbnN0ZXJzY2h1bHVuZyAoT2Jlcm1vdHosIDIxLiBKdWwgMjAwMCwgMDk6MjI6MzQpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTk2NDE2MTk5NSByZz1zY2htYXJybgp+IyEgdGlkPTk2NDEwMDQ3NwpXYXMgc29sbCBkYXMgaGVpc3NlbiAiT2Jlcm1vdHogemFlaGx0IG5pY2h0Ij8KCk9NIGlzdCBkYSBtYWwgbmV1Z2llcmlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6ICJvcnQiIChBcHN1LCAyMS4gSnVsIDIwMDAsIDE0OjU2OjU1KToKfiMhIHJuPUJvaW5nIHJ0PTk2NDA3ODM0MCByZz1zY2htYXJybgp+IyEgdGlkPTk2NDA0MjQ2MgpTY2hvbiBtYWwgbmVuIEd1bnRlcnNibHVtZXIgU3RlaW5hY2tlciBTY2h3YXJ6cmllc2xpbmcgcHJvYmllcnQ/IERhbmFjaCBzYWdzdApEdSBuaXggbWVociBnZWdlbiBkZXV0c2NoZSBSb3R3ZWluZSwgZGFzIFpldWcga2FuIG1pdCBmcmFuem9lc2lzY2hlbgpzcGl0emVud2VpbmVuIGxvY2tlciBtaXRoYWx0ZW4uCgpBcHN1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogIm9ydCIgKExpYXJhLCAyMS4gSnVsIDIwMDAsIDE4OjU3OjA1KToKfiMhIHJuPUFwc3UgcnQ9OTY0MTg0MjE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY0MDQyNDYyCkF1c25haG1lbiBiZXN0YWV0aWdlbiBkaWUgUmVnZWwuCgpMaWFyYSwgWndlcmdlbnphdWJlcmluZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6ICJvcnQiIChMZWlibml6LCAyMS4gSnVsIDIwMDAsIDIwOjM3OjAzKToKfiMhIHJuPUJvaW5nIHJ0PTk2NDA3ODM0MSByZz1zY2htYXJybgp+IyEgdGlkPTk2NDA0MjQ2MgphbHNvIHNjaHdhYmVuIHNpbmQgZWNodCB3YXMgc2VociAiZWlnZW5lcyIKCmxlaWJpIGdyaW5zdCBzY2hvbiBtYWwgenUgaW1kYSBydWViZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsc28gZG9jaC4uLiAoRGVsLCAyMy4gSnVsIDIwMDAsIDEyOjExOjIyKToKSWNoIGhhYnMgamEgc2Nob24gaW1tZXIgZ2V3dXNzdC4uLjoKR29sYXMgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbiBGcmV1bmQgWm9vayB0ZWlsdCBEaXIgbWl0OiBoaWhvLiA6KQoKLi4uZWluZSBncmluc2VuZGUgTnVkZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbHNvIGRvY2guLi4gKEdvbGFzLCAyMy4gSnVsIDIwMDAsIDEyOjMyOjIxKToKfiMhIHJuPURlbCBydD05NjQzNDcwODIgcmc9c2NobWFycm4KfiMhIHRpZD05NjQzNDcwODIKbWlzdCEgLi4uIGVyd2lzY2h0IDooCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogIm9ydCIgKEFuYWNyaW9uLCAyMy4gSnVsIDIwMDAsIDE1OjAzOjE4KToKfiMhIHJuPUJvaW5nIHJ0PTk2NDA3ODM0NSByZz1zY2htYXJybgp+IyEgdGlkPTk2NDA0MjQ2MgpBbHNvIFdlaW5tYWVzc2lnIGVtcGZlaGxlIGljaCA6CldlaXNzd2VpbiA6IHNwcml0emlnIDogd2Vpc3NidXJndW5kZXIgU3BhZXRsZXNlIHRyb2NrZW4gdm9tIEZhZGVyIGF1cyBSaG9kdAp1LlIuICg3LDgwIERNIGRidmVpIGFiaG9sdW5nKSBzaWxiZXJuZSBrYW1tZXJwcmVpc211ZW56ZQogICAgICB0cm9ja2VuOiByaWVzc2xpbmcgdHJvY2tlbiBrYWJpbmV0dCB2b20gYWx0ZW4gc2NobG9lc3NjaGVuIGF1cyBzdC4KbWFydGluIG9kLiBqb2hhbm5pc2JlcmdlciAoa2xvc3RlcikKUm90OiBzY2h3ZXI6IG5lYmJpb2xvIGRpIGFsYmEgKHBpZW1vbnQsIGl0YWxpZW4pCiAgICBsZWljaHQ6IHZhbGxmb3Jtb3NhLCBncmFuIHJlc2VydmEpIC4uIGFjaCBqYTogYWxsZXMgdW50ZXIgMTAgRE0gLi4gYWxzbwp3ZXIga2F1ZnQgc2Nob24gd2VpbiBpbSBzdXBlcm1hcmt0CgoKZ3J1c3MgQW5hYyogLi4gdHJpbmt0IGdlcm5lIHdlaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvd2FzIChWYW5pb24sIDIzLiBKdWwgMjAwMCwgMjA6MDQ6NDgpOgpKZXR6dCBtYWNoIGljaCBtaXIgd2lya2xpY2ggU29yZ2VuOgpbbXVkc3VlY2h0aWc6RWxiZXJldCB1ZWJlcmdpYnQgZGllIEViZW5lIGFuIFZhbmlvbi5dCgpWYW5pb24sIGRvY2ggbXVkc3VlY2h0aWc/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZXJhZGUgZWJlbiBhdWYgZGVyIEhvY2hlYmVuZSAoU2x5Zm94LCAyNC4gSnVsIDIwMDAsIDAwOjExOjUyKToKPiB1bnQgcm9iaW4KUm9iaW4gaXN0IGFic29sdXQgZml0LgpFciB0cmFlZ3QgYmVpIHNpY2g6Cjk5OTk5IE11ZW56ZW4uCkVpbiBLb2VjaGVyLgpFaW4gQm9nZW4uCkRlciBTaWVnZWxyaW5nIGRlcyBTaGVyaWZmIHZvbiBOb3R0aW5naGFtIChhbmdlem9nZW4pLgpFaW4gZHVua2VsZ3J1ZW5lciBVbWhhbmcgKGFuZ2V6b2dlbikuCkVpbiBQYWFyIExlZGVyaGFuZHNjaHVoZSAoYW5nZXpvZ2VuKS4KRWluIFBhYXIgTGVkZXJzY2h1aGUgKGFuZ2V6b2dlbikuCkVpbiBLZXR0ZW5oZW1kIChhbmdlem9nZW4pLgpFaW4gZ3J1ZW5lciBIdXQgKGFuZ2V6b2dlbikuClJvYmluIHNhZ3Q6IEhhc3RlIG1hbCAnbmUgTWFyaz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IERUX1NPVU5EIHVuZCBQX0RFQUYgKENhdHdlYXpsZSwgMjQuIEp1bCAyMDAwLCAwODowMzoyNSk6Cn4jISBybj1SYXJkaWFuIHJ0PTk2NDM4NTU4MiByZz1tYWdpZXIuZW50d2lja2x1bmcKfiMhIHRpZD05NjQxMTg5MjIKR2VzZWhlbiB1bmQgZ2VzcGllbHQgaXN0IHZvbGxrb21tZW4gdW56dXJlaWNoZW5kLiBCZXZvciBEdSB2ZXJzdWNoc3QgCm1pdHp1cmVkZW4gc29sbHRlc3QgRHUgZXMgYXVmIGFsbGUgRmFsbGUgbGVzZW4uIFNlaHIgcmVsZXZhbnRlcyBCdWNoLiAKWVRDClBTOiBBY2ggamEsIHVuZCBhdWYgZ2FyIGtlaW5lbiBGYWxsIGhvZXJlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRFRfU09VTkQgdW5kIFBfREVBRiAoTXVhZGliLCAyNC4gSnVsIDIwMDAsIDExOjA0OjE3KToKfiMhIHJuPUNhdHdlYXpsZSBydD05NjQ0MTg2MDUgcmc9c2NobWFycm4KfiMhIHRpZD05NjQxMTg5MjIKc2VociByZWxldmFudGUgNiBidWVjaGVyIHVtIGdlbmF1IHp1IHNlaW4gOikKCm11YWRpYgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRFRfU09VTkQgdW5kIFBfREVBRiAoQm9pbmcsIDI0LiBKdWwgMjAwMCwgMTE6MDk6MjUpOgp+IyEgcm49TXVhZGliIHJ0PTk2NDQyOTQ1NyByZz1zY2htYXJybgp+IyEgdGlkPTk2NDExODkyMgpXb2JlaSBkaWUgbGV0enRlbiBiZWlkZW4gTXVlbGwgc2luZCAuLi4gOykKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRFRfU09VTkQgdW5kIFBfREVBRiAoQ2F0d2VhemxlLCAyNC4gSnVsIDIwMDAsIDExOjE5OjA0KToKfiMhIHJuPUJvaW5nIHJ0PTk2NDQyOTc2NSByZz1zY2htYXJybgp+IyEgdGlkPTk2NDExODkyMgpEYXMgaXN0IG5pY2h0IGdhbnogcmljaHRpZywgaWNoIGZpbmRlIGRpZSBsZXR6ZW4gYmVpZGVuIAp3aWVkZXIgcmljaHRpZyBpbnRlcmVzc2FudCwgd29iZWkgSGVyYmVydCBsZWlkZXIgYXVmZ2Vob2VydCAKaGF0IHdlaXRlcnp1c2NocmVpYmVuLiBEaWVzZSBNZWludW5nIG1hZyBhYmVyIGF1Y2ggZGFyYW4gbGllZ2VuCmRhcyBpY2ggc2llIGluIGRlciBmYWxzY2hlbiBSZWloZW5mb2xnZSAobmFlbWxpY2ggMSw1LDYsMiwzLDQpCmdlbGVzZW4gaGFiZSA6LSkKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IERUX1NPVU5EIHVuZCBQX0RFQUYgKEFuYXRvbCwgMjQuIEp1bCAyMDAwLCAxMTozMTozNSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9OTY0NDMwMzQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY0MTE4OTIyCkpldHp0IHdpc3NlbiB3ZW5pZ3N0ZW5zIGF1Y2ggZGllIE5pY2h0bWFnaWVyLCBkYXNzIGVzIHVtICJEdW5lIiBnZWh0IDopCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJJTEQgKEtvZWxuKSBoZXV0ZSAhISEgKEFuYXRvbCwgMjQuIEp1bCAyMDAwLCAxMTozNToyNSk6Cn4jISBybj1QYWRyZWljIHJ0PTk2NDQyODE4MCByZz1hbnplaWdlbgp+IyEgdGlkPTk2NDQyMTkxMwpQYWRyZWljIGFscyBIdWV0ZXIgZGVyIE1vcmFsLCBkZXMgVGFrdHMgdW5kIGRlciBFdGlxdWV0dGUuCgpBbmF0b2wsIG1pdCB0b2Rlcm5zdGVyIE1pbmUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IERUX1NPVU5EIHVuZCBQX0RFQUYgKFZhbmlvbiwgMjQuIEp1bCAyMDAwLCAxMTozNjoxNSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9OTY0NDMwMzQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY0MTE4OTIyCkVpZ2VuYXJ0aWcgLSBpY2ggaGFiZSBlYmVuIHZlcnN1Y2h0IGRpZSBOYW1lbiBkZXIgYW5kZXJlbiA1IEJhZW5kZQpyYXVzenVrcmllZ2VuIHVuZCBkYXp1IGluIEFtYXpvbiBnZXN1Y2h0LiBOaXguIFdlZGVyIHVudGVyIEhlcmJlcnQsIG5vY2ggdW50ZXIKR290dGthaXNlciwgbm9jaCB1bnRlciAnZGllIGtpbmRlciBkZXMgficKCkVudHdlZGVyIEFtYXpvbiBpcyBsYW5nZSBuaWNoIHNvIGd1dCwgd2llIGljaCBkYWNodGUsIG9kZXIgaWNoIGJpbiB0b3RhbCBhdWYKZGVtIEhvbHp3ZWcgCkplbWFuZCBlaW5lIElkZWUgKG9kZXIgSVNCTiwgdW0gZGFzIHp1IHBydWVmZW4pPwoKVmFuaW9uLCB2ZXJ3aXJydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJJTEQgKEtvZWxuKSBoZXV0ZSAhISEgKEthcmlzLCAyNC4gSnVsIDIwMDAsIDExOjM2OjE5KToKfiMhIHJuPUFuYXRvbCBydD05NjQ0MzEzMjUgcmc9c2NobWFycm4KfiMhIHRpZD05NjQ0MjE5MTMKTmEga29tbSwgQW5hdG9sLgpJbiBkaWVzZW0gRmFsbCBoYXQgZXIgZWluZmFjaCBudXIgcmVjaHQuIEZpbmQgaWNoLgoKS2FyaXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBEVF9TT1VORCB1bmQgUF9ERUFGIChNdWFkaWIsIDI0LiBKdWwgMjAwMCwgMTE6NDA6MzcpOgp+IyEgcm49Qm9pbmcgcnQ9OTY0NDI5NzY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY0MTE4OTIyCmtldHplciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaW4gc2l0dS4uLiAoTXVwZmVsLCAyNC4gSnVsIDIwMDAsIDEzOjAzOjEwKToKJCBubgoKUnVicmlrIDU1OiB0cmVmZmVuLCBBcnRpa2VsOiA3OCB2b24gNzgKUmVeMTI6IEJJTEQgKEtvZWxuKSBoZXV0ZSAhISEgKEJhbWJpLCAyNC4gSnVsIDIwMDAsIDEzOjAxOjI4KToKW0JlenVnOiBBcnRpa2VsIGluIGRpc2t1c3Npb24gdm9uIEJvaW5nIHZvbSAyNC4gSnVsIDIwMDAsIDEyOjI2OjM1XQoKa29tbXQgTXVwZmVsIHp1bSBTdGF0aSBuYWNoIEthcmxzcnVoZT8KJCBbS2FybHNydWhlOkJvaW5nXSB3aWVzbyBmcmFnc3QgZHUgZGFzIG5pY2h0IG11cGZlbCBkaXJla3Q/IDspCgoqZyoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBCSUxEIChLb2VsbikgaGV1dGUgISEhIChCZWlzcGllbCwgMjQuIEp1bCAyMDAwLCAxNDozOTowOSk6Cn4jISBybj1MaWFyYSBydD05NjQ0NDA1MDEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTk2NDQyMTkxMwpPZmZlbnNpY2h0bGljaCBhbnR3b3J0ZXN0IER1IGphIGRhbm4gbmljaHQgZnVlciBEaWNoLiBPZGVyIGhhYmVuIHZlcmJhbGUKRW50Z2xlaXN1bmdlbiB3YXMgbWl0IEdyaXBzIHp1IHR1bj8KRWluIEFic2NocmVja2VuZGVzIEJlaXNwaWVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqU2V1ZnoqIChVbmFzYWksIDI0LiBKdWwgMjAwMCwgMTQ6NDg6MjYpOgpJY2ggbWVpbmUsIGljaCBoYWIgaGllciBzY2hvbiB2aWVsIGdlbGVzZW4sIHVlYmVyIGRhcyBpY2ggaW5zZ2VoZWltIHNjaG11bnplbG4KbXVzc3RlLCBhYmVyIG11c3MgZXMgZGVubiBpbW1lciBhbGxlcyBzbyBhdXN1ZmVybj8gSWNoIGJpbiB3YWhyaGFmdGlnIG5pY2h0CnN1cGVycmVsaWdpb2VzLCBhYmVyIHp1bWluZGVzdCBnZWhvZXJlIGljaCBkZXIgZXZhbmdlbGlzY2hlbiBLaXJjaGUgYW4gdW5kCmhhYmUgc296dXNhZ2VuIGVpbmVuIEdsYXViZW4gYW4gZWluZSBob2VyZSBNYWNodCwgc2VpIGVzIEdvdHQgb2RlciBzb25zdGV0d2FzLgpNdWVzc3QgaWhyIGRlbm4gYWxsZXMgc28gYnJlaXR0cmV0ZW4gd2FzIGFuZGVyZW4gbWVuc2NoZW4gd2ljaHRpZyBzZWluCmtvZW5udGU/IEhhdCBkYSB2aWVsbGVpY2h0IG1hbCB2b3JoZXIgZWluZXIgdWViZXJsZWd0PyBJY2gga2FubnRkZSBkZW4KRXJ6YmlzY2hvZiBuaWNodAp1bmQgZGVzd2VnZW4gbWFzc2UgaWNoIG1pciBrZWluIFVydGVpbCB1ZWJlciBpaG4gYW4sIGFiZXIgc28gZWluZQpWZXJ1bmdsaW1wZnVuZyBoYXQgZXIgc2ljaGVyIG5pY2h0IHZlcmRpZW50LgoKKEZ1ZXIgYWxsZSBuaWNodC1oZWxsZW46IG5laW4gaWNoIGdsYXViZSBuaWNodCBhbiBkaWUga2lyY2hlLCBzb25kZXJuIGFuIGVpbmUKaG9laGVyZSBNYWNodCkKSWNoIGthbm4gbWlyIG5pY2h0IGhlbGZlbiwgYWJlciBkYXMgZ2FuemUga29tbXQgbWlyIHZvciB3aWUgZGllc2VyIGF1ZmdldWZlcnRlClRocmVhZCB1ZWJlciBkaWUgQmx1dHNwZW5kZWFrdGlvbi4uLmJ6dyBkaWUgVHlwaXNpZXJ1bmcuIEhhYnQgaWhyIGRlbm4gZ2FyCmtlaW5lbiBHZXNjaG1hY2s/IEVpbiBUb2Rlc2ZhbGwgaXN0IGltbWVyIGV0d2FzIHRyYWdpc2NoZXMuLi5kYSBzb2xsdGUgbWFuCmtlaW5lIFNjaGVyemUgZHJ1ZWJlciBtYWNoZW4uLmVzIGthbm4gc2NobGllc3NsaWNoIGplZGVuIHRyZWZmZW4uLi4KClVuYSogCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpTZXVmeiogKFd1cnplbCwgMjQuIEp1bCAyMDAwLCAxOTo1NjowOCk6Cn4jISBybj1VbmFzYWkgcnQ9OTY0NDQyOTA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY0NDQyOTA2Cj4uLmVzIGthbm4gc2NobGllc3NsaWNoIGplZGVuIHRyZWZmZW4uLi4KZmFsc2NoLiBlcyBXSVJEIGplZGVuIHRyZWZmZW4sIGZydWVoZXIgb2RlciBzcGFldGVyLiBhbHNvIHNpbmQgd2lyIGFsbGUKYmV0cm9mZmVuLCBkYWhlciBkdWVyZmVuIHdpciBhdWNoIGFsbGUgd2l0emUgZHJ1ZWJlciBtYWNoZW4uCndlciBkYXMgbmljaHQgYWt6ZXB0aWVyZW4ga2FubiwgaGF0IHNpY2ggcHJpbnppcGllbGwgbm9jaCBuaWNodCBkYW1pdAphYmdlZnVuZGVuIHNlbGJzdCBiZXRyb2ZmZW4genUgc2VpbiB1bmQgaG9mZnQgd29obCBhdWYgZGFzIGV3aWdlIGxlYmVuLi4uCmRhcyBzaW5kIGRhbm4gZGllLCB2b24gZGVuZW4ga29uc3RhbnRpbiB3ZWNrZXIgc2FndCwgZGFzcyBzaWUgZWluZXMgdGFnZXMKZWluIHNjaGlsZGNoZW4gYW0gZ3Jvc3NlbiBmdXNzemVoIGhhYmVuLCBhdWYgZGVtIHN0ZWh0ICJwZWNoIGdlaGFidCIgOikKamVtYW5kLCBkZXIgc2ljaCBzbyB3ZWl0IGF1cyBkZW0gZmVuc3RlciBsZWhudCB3aWUgZGVyIGdsb2Vja25lciB2b24gZnVsZGEsCm11c3MgZGFtaXQgcmVjaG5lbiBkYXNzIHBhcnRpZXMgZ2VmZWllcnQgd2VyZGVuLCB3ZW5uIGVyIGFibmlwcGVsdC4gdmllbCBtZWhyCmdlZGFua2VuIG1hY2hlIGljaCBtaXIgZGEgdW0gZGllIG9tYSwgZGllIHdvY2hlbmxhbmcgaW4gaWhyZXIgd29obnVuZyB2b3IKc2ljaCBoaW4gc3Rpbmt0LCBiaXMgc2llIGplbWFuZCBmaW5kZXQuCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogKlNldWZ6KiAoQXJrLCAyNC4gSnVsIDIwMDAsIDIwOjAyOjM0KToKfiMhIHJuPVd1cnplbCBydD05NjQ0NjEzNjggcmc9c2NobWFycm4KfiMhIHRpZD05NjQ0NDI5MDYKSGUsIGpldHp0IGFiZXIgbWFsIGVpbiBiaXNzY2hlbiBtYWVzc2lnZW4gYmVpIGRlciBTcHJhY2hlOiAiUGFydGllcyBmZWllcm4sCndlbm4gZXIgYWJuaXBwZWx0IiwgZGF2b24gd2FyIGVpZ2VudGxpY2ggbmljaHQgZGllIFJlZGUuIFVuZCBtYW4gbXVzcyBhdWNoCm5pY2h0IGNocmlzdGxpY2ggb2RlciBhbmRlcnN3aWUgYW5nZWhhdWNodCBzZWluLCB1bSBldHdhcyBtZWhyIFJlc3Bla3Qgdm9yIGRlbgpUb3RlbiB6dSBoYWJlbi4gV2VubiB3aXIgZGllIFdlcmtlIGRlciBMZWJlbmRlbiBrcml0aXNpZXJlbiwgaXN0IGRhcyBPSywgYWJlcgphdWYgamVtYW5kZW0gaGVydW16dWhhY2tlbiwgZGVyIHNpY2ggbmljaHQgbWVociB3ZWhyZW4ga2FubiwgaXN0IGViZW4gbmljaHQKT0suIFVuZCBkYXMgYWVuZGVydCBqYSBpbW1lciBub2NoIG5pY2h0cyBhbiBkZXIgTW9lZ2xpY2hrZWl0LCBrcml0aXNjaCBtaXQgZGVtCldlcmsgZGVyIFRvdGVuIHVtenVnZWhlbiwgb2Rlcj8KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAqU2V1ZnoqIChXdXJ6ZWwsIDI0LiBKdWwgMjAwMCwgMjA6MDQ6MDYpOgp+IyEgcm49QXJrIHJ0PTk2NDQ2MTc1NCByZz1zY2htYXJybgp+IyEgdGlkPTk2NDQ0MjkwNgptaXIgd2FlcmUgZXMgZWlnZW50bGljaCB3aWNodGlnZXIsIHdlbm4gd2lyIGFsbGUgbWVociByZXNwZWt0IHZvciBkZW4KbGViZW5kZW4gaGFldHRlbiBhbHMgdm9yIGRlbiB0b3Rlbi4gZGllIHNpbmQgZWggdG90LCBkaWUgd2lyZCBlcyBuaWNodAptZWhyIHN0b2VyZW4uCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6ICpTZXVmeiogKEFyaywgMjQuIEp1bCAyMDAwLCAyMDowNjozMCk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTY0NDYxODQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY0NDQyOTA2CldpZSB3aWxsc3QgRHUgUmVzcGVrdCB2b3IgZXR3YXMgTGViZW5kaWdlbSBoYWJlbiwgd2VubiBEaXIgYWxsZXMgVG90ZSBlZ2FsCmlzdD8gTGVocnQgbmljaHQgZGFzIGVpbmUgZXJzdCBkYXMgYW5kZXJlLCB3ZWlsIGRlciBWZXJsdXN0IGViZW4gZXJzdCBkaWUKQXVnZW4gb2VmZm5ldD8gSG0sIGJpbiBpY2ggamV0enQgaW4gZGllIFNvbm50YWdzcHJlZGlndCBhYmdlZHJpZnRldD8gOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogKlNldWZ6KiAoV3VyemVsLCAyNC4gSnVsIDIwMDAsIDIwOjA3OjEyKToKfiMhIHJuPUFyayBydD05NjQ0NjE5OTAgcmc9c2NobWFycm4KfiMhIHRpZD05NjQ0NDI5MDYKcHJlZGlnZSBydWhpZy4gZGllIHJ1YnJpayBzdGltbXQgamEgc2Nob24gOikKCnd1cnplbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogKlNldWZ6KiAoR29yLCAyNC4gSnVsIDIwMDAsIDIwOjExOjU0KToKfiMhIHJuPVd1cnplbCBydD05NjQ0NjE4NDYgcmc9c2NobWFycm4KfiMhIHRpZD05NjQ0NDI5MDYKVG9sbGUgRWluc3RlbGx1bmcgV3VyemVsIG1pdCBkZXIgYnJpbmd0IG1hbiBlcyB6dSB3YXMhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcyBrYW5uIG5vY2ggaW1tZXIgZ2VsZXJudCB3ZXJkZW4uLi4gOikgKFpvb2ssIDI0LiBKdWwgMjAwMCwgMjA6MTI6MDYpOgpTcGllbHN0YW5kIGRlciBsZXR6dGVuIFJ1bmRlOgoKICAgU3BpZWxlciAgICB8ICA3IHwgIDYgfCAgNSB8ICA0IHwgIDMgfCAgMiB8ICAxIHwgIFMgCi0tLS0tLS0tLS0tLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLQogICAgIFpvb2sgICAgIHwgLTQgfCAxNiB8IC02IHwgMTIgfCAxMCB8IDEwIHwgMTYgfCAgNTQKICAgIFZhbmlvbiAgICB8IC0yIHwgMTEgfCAgMSB8ICAxIHwgLTUgfCAgMiB8IC01IHwgICAzCiAgICBUaWFtYWsgICAgfCAtNSB8IC0yIHwgLTUgfCAtNCB8IDEyIHwgMTAgfCAxMCB8ICAxNgogICBTaWx2YW5hICAgIHwgMTMgfCAtNCB8IC01IHwgLTUgfCAxMSB8IDEwIHwgMTAgfCAgMzAKLS0tLS0tLS0tLS0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLSstLS0tCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogKlNldWZ6KiAoV3VyemVsLCAyNC4gSnVsIDIwMDAsIDIwOjEyOjQ2KToKfiMhIHJuPUdvciBydD05NjQ0NjIzMTQgcmc9c2NobWFycm4KfiMhIHRpZD05NjQ0NDI5MDYKc3RpbW10LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAqU2V1ZnoqIChQYXJhY2Vsc3VzLCAyNC4gSnVsIDIwMDAsIDIxOjE2OjUxKToKfiMhIHJuPVd1cnplbCBydD05NjQ0NjEzNjggcmc9c2NobWFycm4KfiMhIHRpZD05NjQ0NDI5MDYKSWNoIGJpbiBNYWdpZXIsIG1laW5lIG1hZ2lzY2hlbiBLcmFlZnRlIHZlcmhpbmRlcm4gbWVpbmVuIFRvZC4KClBhcmFjZWxzdXMgZGVua3QgLiBvIE8gKFBhc3N0IHNjaG9uLCBkaWUgUnVicmlrKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogKlNldWZ6KiAoR3JpbW1ib3JuLCAyNC4gSnVsIDIwMDAsIDIxOjQ4OjUyKToKfiMhIHJuPVBhcmFjZWxzdXMgcnQ9OTY0NDY2MjExIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY0NDQyOTA2CkhtbSwgd2VsY2hlciBFTSB3YXIgZGFzIG5vY2gsIGRlciB2b3IgbmljaHQgYWxsenVsYW5nZXIgWmVpdCBtZWluZW4gU3RhcnRyYXVtCmF1ZiBkZW4gVG9kZXNyYXVtIGdlc2V0enQgaGF0dGUgd2VpbCBpY2ggaWhtIGRhcyBHZWdlbnRlaWwgRGVpbmVyIEF1c3NhZ2UKYmV3aWVzZW4gaGFiZT8gSWNoIG1laW5lIG1pY2ggenUgZXJpbm5lcm4sIGRhc3MgZXIgbWl0IGVpbmVtICJQIiBhbmZpbmcuIFVuZApkYW5uIGVpbiAiYXJhY2Vsc3VzIiBvZGVyIHNvIGthbS4gQWJlciBpY2gga2FubiBtaWNoIGRhIGF1Y2ggdGFldXNjaGVuLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqU2V1ZnoqIChMdWcsIDI1LiBKdWwgMjAwMCwgMDE6NTQ6NDkpOgp+IyEgcm49VW5hc2FpIHJ0PTk2NDQ0MjkwNiByZz1zY2htYXJybgp+IyEgdGlkPTk2NDQ0MjkwNgoKRGEgaGF0IFVuYSBlY2h0IHJlY2h0ISBXaXJrbGljaCB0cmFnaXNjaCBkYXMgRHliYSBoaW5mb3J0Z2VyYWZmdCB3dXJkZSwgZGVubgpzb3ZpZWxlIExldXRlIHdpZSBkZXIgYXVzIGRlciBLaXJjaGUgdmVydHJlaWJlbiBoYXQsIGtyaWVndCBtYW4gYWxzIEF0aGVpc3QKbmllbWFscyBoaW4uIFNjaGFkZSwgU2NoYWRlLgoKS3Jva29kaWxzdHJhZW5lbiBwbGFlcnIKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAqU2V1ZnoqIChMdWcsIDI1LiBKdWwgMjAwMCwgMDE6NTU6NTgpOgp+IyEgcm49QXJrIHJ0PTk2NDQ2MTc1NCByZz1zY2htYXJybgp+IyEgdGlkPTk2NDQ0MjkwNgoKUmVzcGVrdCB2b3IgZGVuIFRvdGVuPyBXaWVzbyBkYXMgZGVubj8gTWFjaCBtYWwgbmUgS2lyY2hlbmdyYWJ1bmcgbWl0IHVuZCBkYW5uCnJlZGVuIHdpciB3ZWl0ZXIuCgpBcmNoYWVvbG9naXNjaApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6ICpTZXVmeiogKFBhcmFjZWxzdXMsIDI1LiBKdWwgMjAwMCwgMDk6MjI6NDkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk2NDQ2ODEzMiByZz1zY2htYXJybgp+IyEgdGlkPTk2NDQ0MjkwNgpEYXMgbWl0IGRlbSBQIGFtIGFuZmFuZyBtYWcgc3RpbW1lbiwgYWJlciBlaW4gYXJhY2Vsc3VzIGthbSBkYW5hY2gKc2ljaGVybGljaCBuaWNodC4KClBhcmFjZWxzdXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdHNoaXJ0IGFnYWluIChDYXR3ZWF6bGUsIDI1LiBKdWwgMjAwMCwgMTA6NDc6MDMpOgp+IyEgb249RmxpbnRuYWlsIG90PTk2NDQ4MDEyNCBvZz1wYXJ0eQp+IyEgcm49R25vbWUgcnQ9OTY0MzU2OTU3IHJnPXBhcnR5Cn4jISB0aWQ9OTY0MzU2OTU3CgpxCgpeISIkJSYvKC8pPT9gXzo7JycqIyswOQoKCgouLi53ZXIgaW1tZXIgZGllc2VuIFF1YXRzY2ggbGllc3QuLnNvcnJ5OikKCi4uYWNoamEuLkhhdGU6W0RbRFtEW0RbRCAgd2llIGdlYmUgaWNoIGJlaSBOdXR6dW5nIGRlcyBUZWxuZXQtQXBwbGV0cyBlaW5lClRpbGRlIGltIEVkaXRvciBlaW4/IEFsdEdyICsgIHdhciBlcyBuaWNoOikKCkZsaW50KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB0c2hpcnQgYWdhaW4gKFJ1bWF0YSwgMjUuIEp1bCAyMDAwLCAxMjoyMjoyOCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9OTY0NTE0ODIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY0MzU2OTU3CkFsc28gYmVpIG1pciBnZWh0IFNISUZUICsgQmFja3F1b3RlKGApClJ1bSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1laW4gc29obiBoYXQgenVnZW5vbW1lbj8gKFJ1bWF0YSwgMjUuIEp1bCAyMDAwLCAxNjo1MTo0MCk6CnVwZGF0ZSBkaWNrbWFubgpSaWt1cyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKL3BsYXllcnMvcnVtYXRhL29iai9kaWNrbWFubi5jOiB3aWxsIGJlIHJlbG9hZGVkIGF0IG5leHQgcmVmZXJlbmNlLgoKUnVtYXRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOaWNrdGFyIGhhdCBtYWdpc2NoZSBLcmFlZnRlLi4gKEh1bW5pLCAyNS4gSnVsIDIwMDAsIDE3OjUwOjAzKToKW0FsbGdlbWVpbjpOaWNrdGFyXSBIYXN0IGR1IGRpZSBLYXJ0ZT8KW0FiZW50ZXVlcjpDb25ueV0gam8hCltBbGxnZW1laW46Tmlja3RhciBhcmdsdF0KRWluZSBLYXJ0ZSBsb2VzdCBzaWNoIGF1Zi4KClNvd2FzIGFiZXIgYXVjaC4uLmFyZ2w9ZGVzdHJ1Y3QuLi4/PwoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXIgTGlhcmEhIChVbmFzYWksIDI1LiBKdWwgMjAwMCwgMjA6NDA6MjMpOgpMaWViZSBMaWFyYSwKCmRhbWl0IGR1IHdhcyB6dSBsZXNlbiBoYXN0IQpVbmEqCgpQUzo6IFNjaGVuayBtaXIgT3JrYmFlcmNoZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVlciBMaWFyYSEgKERpZWRlciwgMjUuIEp1bCAyMDAwLCAyMDo0MzowOCk6Cn4jISBybj1VbmFzYWkgcnQ9OTY0NTUwNDIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY0NTUwNDIzClNlaHIgZ2VlaHJ0ZSBUcnZlc2luZSBVbmFzYWksCgpkaWUgTVBBIGlzdCBlaW4gS29tbXVuaWthdGlvbnNtZWRpdW0gYXVmIGludGVsbGVrdHVlbGwgaG9lY2hzdGVtIE5pdmVhdS4KU29sY2hlIEFydGlrZWwgd2llIGRlciBJaHJpZ2Ugc2NoYWRlbiBpbnNvZmVybiBiZXRyYWVjaHRsaWNoLCBpc3QgZGllIE1QQSBkb2NoCnp1ciBEaXNrdXNzaW9uIHVuZCBWZXJicmVpdHVuZyBob2VjaHN0IHdpY2h0aWdlciB1bmQgaG9jaHRyYWJlbmRlciBUaGVtZW4KZ2VkYWNodC4KCkljaCBtb2VjaHRlIFNpZSBkZXNoYWxiIGhvZWZsaWNoIGJpdHRlbiwgc29sY2hlIEFydGlrZWwgaW4gWnVrdW5mdCB6dQp1bnRlcmxhc3NlbiwgdW0gZWluZSBpbnRlbGxla3R1ZWxsZSBEZWdyYWRpZXJ1bmdzIGRpZXNlcyBQcmludG1lZGl1bXMgenUKdmVybWVpZGVuLgoKTWl0IGNoYW90aXNjaGVuIEdydWVzc2VuLApEaWVkZXIKClBTIGZ1ZXIgYWxsZSBCbGl0em1lcmtlciA6KSA6IDwvaXJvbmllPgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGdWVyIExpYXJhISAoTGlhcmEsIDI1LiBKdWwgMjAwMCwgMjA6NDQ6MjgpOgp+IyEgcm49RGllZGVyIHJ0PTk2NDU1MDU4OCByZz1zY2htYXJybgp+IyEgdGlkPTk2NDU1MDQyMwpEdSBtb2VjaHRlc3QgZGFtaXQgYW5kZXV0ZW4sIGRhc3MgbWVpbiBXb2hsYmVmaW5kZW4ga2VpbiB3aWNodGlnZXMgVGhlbWEgaXN0PwoKTGlhcmEsIFp3ZXJnZW56YXViZXJpbmUsIGVtcG9lcnQgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZ1ZXIgTGlhcmEhIChVbmFzYWksIDI1LiBKdWwgMjAwMCwgMjA6NDU6MTIpOgp+IyEgcm49RGllZGVyIHJ0PTk2NDU1MDU4OCByZz1zY2htYXJybgp+IyEgdGlkPTk2NDU1MDQyMwpTaXIsIGphIFNpciEKSWNoIG1lbGRlIGhpZXJtaXQgZ2Vob3JzYW1zdCwgc29sY2hlIEFydGlrZWwgaW4gWlVrdW5mdCB6dSB1bnRlcmxhc3Nlbi4gQml0dGUKdmllbG1hbHMgdW0gRW50c2NodWxkaWd1bmchCgpVbmFzYWkgKnplcmtuaXJzY2h0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRnVlciBMaWFyYSEgKExpYXJhLCAyNS4gSnVsIDIwMDAsIDIwOjQ2OjAyKToKfiMhIHJuPVVuYXNhaSBydD05NjQ1NTA3MTIgcmc9c2NobWFycm4KfiMhIHRpZD05NjQ1NTA0MjMKU2llaCwgd2FzIER1IGFuZ2VyaWNodGV0IGhhc3QsIERpZGFlISEhCgpMaWFyYSwgWndlcmdlbnphdWJlcmluZSwgZW1wb2VydGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGdWVyIExpYXJhISAoUm9uZGEsIDI1LiBKdWwgMjAwMCwgMjA6NDY6MTApOgp+IyEgcm49TGlhcmEgcnQ9OTY0NTUwNjY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY0NTUwNDIzCkFsc28gRGllZGVyLAppbiBOZXdzZ3JvdXBzIGhhdXQgbWFuIGFiZXJyIGJlc3NlciB6dXJldWNrIC0gS3JpdGlrcHVua3RlIHdhcmVuIGphIGdlbnVnIGRhOgpGZWhsZW5kZXIgUkwtTmFtZSAoR0FOWiB3aWNodGlnKSwgZGllIFNpZ25hdHVyIHdhciBuaWNodCBvayAtIHVuZCB3ZW5uIGRvY2gsCm1pbmRlc3RlbnMgZmFsc2NoIGFiZ2V0cmVubnQuIE9oLCBnYW56IHdpY2h0aWchIEZhbHNjaGVzIFRvb2wgYmVudXR6dCEKQXVmIGdlaHRzISBGbGFtZXdhciBmdWVyIExpYXJhLCBGcmVpd2lsbGlnZSB2b3IhCgpSb25kYSAqc2NobWFycm50ISoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZ1ZXIgTGlhcmEhIChIdW1uaSwgMjUuIEp1bCAyMDAwLCAyMDo0NjoxOCk6Cn4jISBybj1VbmFzYWkgcnQ9OTY0NTUwNzEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY0NTUwNDIzCkRhcmYgaWNoIGJpdHRlIHppdGllcmVuPz8KCkRlbSBmcmVpZW4gR2Vpc3QgZGVyIFRydmVzIHVudGVyd2VyZmVuIHdpciB1bnMuLi4nCgpBYmVyIFVuYS4uLmRvY2ggbmljaHQgZGVtIENIQU9TIQoKLSkgSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZ1ZXIgTGlhcmEhIChIdW1uaSwgMjUuIEp1bCAyMDAwLCAyMDo0Nzo0Mik6Cn4jISBybj1IdW1uaSBydD05NjQ1NTA3Nzggcmc9c2NobWFycm4KfiMhIHRpZD05NjQ1NTA0MjMKTWlzdCwgd2VubiBtYW4genUgYmxvZWQgaXN0LCBkaWVzZW4ga29taXNjaGVuIEVkaXRvciB6dSBiZWRpZW5lbi4KTWFuIHN0ZWxsZSBzaWNoIGVpbiBLb21tYSB2b3IgZGVyIHp3ZWl0ZW4gdGV4dHplaWxlIHVuZCBlaW4gU2VtaWtvbG9uCnZvciBkZXIgbGV0enRlbiBUZXh0emVpbGUgbWVpbmVzIGxldHp0ZW4gQXJ0aWtlbHMgdm9yLiBVbmQgYW0gYmVzdGVuCnVlYmVyZ2VoZSBtYW4gYWxsZSB3ZWl0ZXJlbi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGdWVyIExpYXJhISAoRGllZGVyLCAyNS4gSnVsIDIwMDAsIDIwOjQ3OjU4KToKfiMhIHJuPUxpYXJhIHJ0PTk2NDU1MDY2OCByZz1zY2htYXJybgp+IyEgdGlkPTk2NDU1MDQyMwpTZWhyIGdlZWhydGUgWmF1YmluZSBMaWFyYSwKCmVzIGlzdCBtZWluZXIgQXVmbWVya3NhbWtlaXQgbmljaHQgZW50Z2FuZ2VuLCBkYXNzIElociBXb2hsYmVmaW5kZW4gdGVtcG9yYWVyCmxpdHQgdW5kIGVpbmVyIEF1Zm11bnRlcnVuZyBiZWR1cmZ0ZS4gTWVpbmVyIGJlc2NoZWlkZW5lbiBNZWludW5nIG5hY2ggbGFlc3N0CnNpY2ggc2VsYmlnZXMgamVkb2NoIGF1Y2ggYXVmIGFuZGVyZSBBcnQgdW5kIFdlaXNlIGVycmVpY2hlbi4KSW5zb2Zlcm4gYml0dGUgaWNoIHp1IGFremVwdGllcmVuLCBkYXNzIG1pY2ggSWhyIFdvaGxiZWZpbmRlbiBkdXJjaGF1cyBuaWNodApwZXJpcGhhZXIgdGFuZ2llcnQsIGFiZXIgZWluZSBMb2VzdW5nIElocmVzIFByb2JsZW1zIGF1Y2ggYXVmIGFuZGVyZSBBcnQgdW5kCldlaXNlIGhlcmJlaWdlZnVlaHJ0IHdlcmRlbiBrYW5uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRnVlciBMaWFyYSEgKERpZWRlciwgMjUuIEp1bCAyMDAwLCAyMDo0OToyMCk6Cn4jISBybj1VbmFzYWkgcnQ9OTY0NTUwNzEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY0NTUwNDIzClVtIGVzIG1pdCBkZW4gV29ydGVuIGRlcyBNb2JzIGF1c3p1ZHJ1ZWNrZW46CgpXZWd0cmV0ZW4sIFNvbGRhdCEKCkFremVwdGllcnQsCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRnVlciBMaWFyYSEgKExpYXJhLCAyNS4gSnVsIDIwMDAsIDIwOjQ5OjU2KToKfiMhIHJuPURpZWRlciBydD05NjQ1NTA4Nzggcmc9c2NobWFycm4KfiMhIHRpZD05NjQ1NTA0MjMKTnUgYmluIGljaCBhYmVyIG5ldWdpZXJpZy4gOy0pIFdhcyBnZW5hdSBtb2VjaHRlc3QgRHUgZGFtaXQgYW5kZXV0ZW4/IDstKSkKCkxpYXJhLCBad2VyZ2VuemF1YmVyaW5lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGdWVyIExpYXJhISAoRGllZGVyLCAyNS4gSnVsIDIwMDAsIDIwOjUxOjQyKToKfiMhIHJuPUxpYXJhIHJ0PTk2NDU1MDk5NiByZz1zY2htYXJybgp+IyEgdGlkPTk2NDU1MDQyMwoqaHVzdCoKCmRpZXNlcyBiZWRhcmYgZWluZXIgQXVzZnVlaHJ1bmcgaW0gcGVyc29lbmxpY2hlbiBCZXJlaWNoIHVuZCBpc3QgbmljaHQgenVyClZlcm9lZmZlbnRsaWNodW5nIGluIGRpZXNlbSBTY2htYXJeSF5IXkheSF5IXkhQcmludG1lZGl1bSBnZWRhY2h0Li4uCgpEaWVkZXIsIGRlbiBLb3BmIGF1cyBkZXIgU2NobGluZ2UgemllaGVuZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZXIgc2llIGVzIChCaXJkeSwgMjUuIEp1bCAyMDAwLCAyMDo1Njo0NSk6CkFscyBVbmFzYWkgZGVuIEdhbmcgYmV0cmV0ZW4gd2lsbCwgZmFlbGx0IHZvciBpaG0gZWluIG1hZWNodGlnZXMgRmFsbGdpdHRlcgpoZXJ1bnRlci4KCm9oYQohCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiAqU2V1ZnoqIChBcmssIDI1LiBKdWwgMjAwMCwgMjE6MTI6MDUpOgp+IyEgcm49THVnIHJ0PTk2NDQ4Mjk1OCByZz1zY2htYXJybgp+IyEgdGlkPTk2NDQ0MjkwNgpMYXNzIHN0ZWNrZW4sIGlzIGp1dC4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZ1ZXIgTGlhcmEhIChBcmssIDI1LiBKdWwgMjAwMCwgMjE6MTM6NDUpOgp+IyEgcm49RGllZGVyIHJ0PTk2NDU1MDU4OCByZz1zY2htYXJybgp+IyEgdGlkPTk2NDU1MDQyMwpTYWNoIGJsb3NzLCBkZW4gUXVhdHNjaCBoaWVyIHByaW50ZWQgbm9jaCBlaW5lcj8/PwpSZXR0ZXQgZGllIFJlZ2Vud2FlbGRlciAuLi4gb2RlciBzby4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERpZWRlciwgMjUuIEp1bCAyMDAwLCAyMjowOToxMSk6CkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IGhtIDQgbHAgaXMgd2FzIHdlbmljaCAqZ3J1ZWJlbCoKClNla3VuZGVuIHNwYWV0ZXIuLi4KCltUb2Q6TGFyc10gRWluZSBzY2h3YXJ6ZSBNdW1pZSBoYXQgZ2VyYWRlIExpYXJhIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBzY2h3YXJ6ZSBNdW1pZV0gVW5kIHdpZWRlciBlaW5lbiBlaW5nZXdpY2tlbHQhCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5hIGFiZXIga2VpbmUgZnJhZ2UsIG9kZXIgPyAoUHVrLCAyNS4gSnVsIDIwMDAsIDIyOjI2OjUxKToKCkJsb29kIHNhZ3Q6IGljaCB3ZWlzcyBuaWNoIHdlciBzY2hsaW1tZXIgaXMsIHR5bGFrLCBzdGluZyBvZGVyIHB1awpzYWcgY2hhb3MgcHVyLCBpY2ggZGFua2UgZGlyIGZ1ZXIgZGllc2VuIEFiZW5kIDopCkR1IHNhZ3N0OiBjaGFvcyBwdXIsIGljaCBkYW5rZSBkaXIgZnVlciBkaWVzZW4gQWJlbmQgOikKQmxvb2Qgc2FndDogYWNoamEgdW5kIHZhbmlvbgoKCm5pY2h0IHdpcmtsaWNoIHVua2xhciB3ZXIgZGEgZ2V3aW5udCwgb2RlciA/IDopCmRpZSBhbmRlcmVuIGhhYmVuIGRhIGphIGtlaW5lcmxlaSBjaGFuY2UgCgpQdWssIEVyem1laXN0ZXIgdW5kIGtsZWluZSBDaGFvdGVuIHdpZSBCbG9vZCBiZWxlaHJlbmQKCgo7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoWm9vaywgMjUuIEp1bCAyMDAwLCAyMjo1OTozNik6Cn4jISBybj1EaWVkZXIgcnQ9OTY0NTU1NzUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY0NTU1NzUxCldvYmVpIG1pciBkYWJlaSBzY2hvbiB3aWVkZXIgYXVmZmFlbGx0LCBkYXNzIGRpZSBNdW1pZSBtaXQgZGVtIApFcmtlbm5lbiBkZXMgR2VzY2hsZWNodGVzIHNvIGlocmUgUHJvYmxlbWUgaGF0IG9kZXIgbGllZ3QKZGFzIGFuIGV0d2FzIGFuZGVyZW0/IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRnVlciBMaWFyYSEgKEx1ZywgMjYuIEp1bCAyMDAwLCAwMjo1MzoyNik6Cn4jISBybj1MaWFyYSBydD05NjQ1NTA2Njggcmc9c2NobWFycm4KfiMhIHRpZD05NjQ1NTA0MjMKCk9laCBMaWFyYSwKCmdpYiBkaWUgT3JrYmFlcmNoZW4gbGllYmVyIG1pciwgZGVubiBkaWUgc29sbGVuIGphIGpldHp0IHZlcmdpZmV0IHNlaW4uLi4KCkRhdm9yIG11c3MgaWNoIGRpZSBNdWRoZWl0IGJlc2NodWV0emVuLi4uCgpMdWcKClAuUy46IE5pY2h0IEFtZWlzZW5tYW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiAqU2V1ZnoqIChMdWcsIDI2LiBKdWwgMjAwMCwgMDI6NTU6MzgpOgp+IyEgcm49QXJrIHJ0PTk2NDU1MjMyNSByZz1zY2htYXJybgp+IyEgdGlkPTk2NDQ0MjkwNgoKV2FzIGJpdHRlIHNvbGwgaWNoIGRlbm4gInN0ZWNrZW4gbGFzc2VuIiBBcms/IERlbiBCZXNlbnN0aWVsIGluIERlaW5lbSBSZWN0dW0/Ck1laW5ldHdlZ2VuLCBpY2ggaGFiIGlobiBqYSBuaWNodCByZWluZ2V0YW4uCgpBY2hzZWx6dWNrZW5kCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTHVnIC4uLiAoR2xvaW5zb24sIDI2LiBKdWwgMjAwMCwgMDM6MDQ6MTkpOgouLi4gaW4gZGVuIEtsZXJpa2VyZ2lsZGVuZnJhdWVua29jaHRvcGYhCgpHbG9pbihzb24pIC4uLiBkYW1pdCBMdWNoIHZvbiBkZXIgTGFuZ2VuIEhhbmQgd2FzIHp1IGxlc2VuIGhhdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMdWcgLi4uIChMdWcsIDI2LiBKdWwgMjAwMCwgMDM6MDY6MjEpOgp+IyEgcm49R2xvaW5zb24gcnQ9OTY0NTczNDU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY0NTczNDU5ClJ1YnJpayA0MTogc2NobWFycm4sIEFydGlrZWw6IDc2IHZvbiA3NgpMdWcgLi4uIChHbG9pbnNvbiwgMjYuIEp1bCAyMDAwLCAwMzowNDoxOSk6CgouLi4gaW4gZGVuIEtsZXJpa2VyZ2lsZGVuZnJhdWVua29jaHRvcGYhCgpHbG9pbihzb24pIC4uLiBkYW1pdCBMdWNoIHZvbiBkZXIgTGFuZ2VuIEhhbmQgd2FzIHp1IGxlc2VuIGhhdC4KR2xvaW5zb24gdGVpbHQgRGlyIG1pdDogV2FzIG1hbiBuaWNodCBhbGxlcyBmdWVyIFNwaWVsZXIgbWFjaHQgOykKCkljaCBiaW4gZ2VydWVocnQuLi4KCipzY2huaWVmKgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzY2hhdSAtZiAoU2lsdmFuYSwgMjYuIEp1bCAyMDAwLCAxOTo1ODoxOSk6Cn4jISBybj1TaWx2YW5hIHJ0PTk2NDYzMzk2NSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2NDYzMzk2NQpLZWluZSA1IHNlYyBzcGFldGVyLi4uCkVpbiBGcm9zY2ggdGVpbHQgRGlyIG1pdDogdW5kIHdhbm4gZ2lidHMgZGVuIENyYXNoPwoKRHUgdGVpbHN0IGVpbmVuIEZyb3NjaCBtaXQ6IFdlaXNzIG5pY2h0Li4uCgpFaW4gRnJvc2NoIHRlaWx0IERpciBtaXQ6IER1IG1laW5zdCwgaWNoIHNvbGwgQnVncmVpYyBmcmFnZW4/CgogIFNpbHZhbmEgLSBnaWJ0IGRhenUga2VpbmVuIF9vZmZpemllbGxlbl8gS29tbWVudGFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2V3ZWlodGVyIFphdWJlcmVyIGlzdCBndXRlciBaYXViZXJlci4uLiAoQW5hdG9sLCAyNi4gSnVsIDIwMDAsIDIyOjI0OjI0KToKPiBlcmhvZWhlIG9yZGVuc3N0dWZlCkR1IGhhc3QgYmVyZWl0cyBkaWUgaG9lY2hzdGVuIFdlaWhlbiBlcmhhbHRlbiEKCkFuYXRvbCAtIHNjaG9uIGltbWVyIGdld3Vzc3QgaGFiZW5kLCBkYXNzIE1hZ2llIGVpbmZhY2ggZ29ldHRsaWNoIGlzdCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGFzIHdhZXIgbmV0dC4uLiAoTXVhZGRpYiwgMjYuIEp1bCAyMDAwLCAyMzoxOTo0Mik6CkNhbGltZXJhIGJlc2Nod29lcnQgZWluZW4gQmxpdHogdm9tIEhpbW1lbC4KU2NobnVwZmVuIGZhZWxsdCB0b3QgenUgQm9kZW4uCgp3aWxsIGljaCBhdWNoIGtvZW5uZW4uLi4KaW4gcmwuLi4KCk11YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaHViYSEgKEJpcmR5LCAyNy4gSnVsIDIwMDAsIDEyOjI2OjQ4KToKPlNpbHZhbmEgdGVpbHQgRGlyIG1pdDogTXVzcyB6dW0gRXNzZW4sIHNvcnJ5LiBOYWNoaGVyIHdpZWRlci4KPiBEaXIga251cnJ0IGRlciBNYWdlbi4KCm9pZGEgdmFkZGVyIGJpbiBpY2ggaHVuZ3JpZyAhOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkphLi4uIHZlcnRyaWViZW4hIChab29rLCAyNy4gSnVsIDIwMDAsIDEzOjQ4OjA3KToKICBIeWRyYS4uLi4uLi4uIDogVGh1ZmlyLi4uLi4uLiAtLSBnZWtyYXR6dC4uIC4uLi5ub3JtYWwvU2Nod2luZ2VuLi4uCipTanUqKioqCiAgVGh1ZmlyLi4uLi4uLiA6IEh5ZHJhLi4uLi4uLi4gLS0gS3JhY2hlbi4uLiAuLi4uS2FyYXRlL01na2EuKCspLi4uLgoqKioqKioqKgpEdSBob2xzdCBhdXMgRGVpbmVuIHRpZWZzdGVuIFRhc2NoZW4gKG9kZXIgd2FzIHdlaXNzIGRlbm4gaWNoIHdvaGVyKSBEZWluZW4KTW9yZ2VuR3JhdWVuIGhhbmRnZWFyYmVpdGV0ZW4gTWluaS1GbGFtbWVud2VyZmVyICh0bSksIHJpY2h0ZXN0IGlobiBhdXMgdW5kLi4uCmZldWVyc3QgZWluZW4gcmllc2lnZW4gRmV1ZXJiYWxsIGF1ZiBUaHVmaXIgYWIuCkVzIHJpZWNodCBhdWYgZWlubWFsIHNvIHZlcmJyYW5udCBoaWVyLi4uClRodWZpciBzY2hsZWlmdCBzZWluZW4gWndlcmdlbmhpbnRlcm4gbmFjaCBTdWVkd2VzdGVuLgoKWm9vaywgd2Vpc3Mgc2VpbmVuIE1pbmktRmxhbW1lbndlcmZlciB6dSBzY2hhZXR6ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1ZXMgdm9tIEJhbGFuY2UtVGVhbSAoUm9jaHVzLCAyNy4gSnVsIDIwMDAsIDE4OjEyOjM5KToKfiMhIG9uPVJvY2h1cyBvdD05NjQ3MTQzMDEgb2c9YmVrYW5udG1hY2h1bmdlbgp+IyEgcm49Qm9pbmcgcnQ9OTY0NjQzNjYyIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD05NjQ2NDM2NjIKSG1tLCBIYXVwdGtyaXRlcmllbiBkdWVyZnRlbiBkb2NoIHNlaW46CjEuIGRpZSBGYWVoaWdrZWl0IEFuZmVpbmR1bmdlbiB2b24gU3BpZWxlci0gdW5kIE1hZ2llcnNlaXRlIHdlZ3p1c3RlY2tlbgoyLiBkaWUgRmFlaGlna2VpdCBBbmZlaW5kdW5nZW4gdm9uIFNwaWVsZXItIHVuZCBNYWdpZXJzZWl0ZSB3ZWd6dXN0ZWNrZW4KMy4gZGllIEZhZWhpZ2tlaXQgQW5mZWluZHVuZ2VuIHZvbiBTcGllbGVyLSB1bmQgTWFnaWVyc2VpdGUgd2VnenVzdGVja2VuCgpNYW4gbXVzcyBkZW4gTGV1dGVuIGRvY2ggc2FnZW4sIHdhcyBhdWYgc2llIHp1a29tbXQgOi0pCgogIFJvY2h1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChab29rLCAyNy4gSnVsIDIwMDAsIDIwOjA2OjA1KToKW1NlaGVyOk1hdGlzXSBoaWxmdCB3ZXIgaW4gcGFyYW9oYXVzZW4gbWl0PyA8MTk6NTc6Mzk+CltTZWhlcjpIaWdodF0gZXJzdCBhdWZlc3NlbiAuLi4gMiBtaW4jIDwxOTo1ODowMT4KW1RvZDpMYXJzXSBFaW4gT3JrIGhhdCBnZXJhZGUgSGlnaHQgdW1nZWJyYWNodC4gPDIwOjA0OjM2PgpbVG9kOmVpbiBPcmtdIFdpciBzaW5kIE9yayEgV2lkZXJzdGFuZCBpc3QgendlY2tsb3MhIERlaW4gV2lzc2VuIHVuZCBEZWluZQpbVG9kOmVpbiBPcmtdIEF1c3J1ZXN0dW5nIHd1cmRlbiBhc3NpbWlsaWVydC4gPDIwOjA0OjM2PgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hcnZpbiAuLi4gKEplbmFuZHJhLCAyOC4gSnVsIDIwMDAsIDE1OjAwOjQzKToKRHUgc2Fnc3Q6IHVuZCBkZXIgaGllciBidWdndCBpbW1lciBub2NoIDotKQpNYXJ2aW4gc2FndDogV2lya2xpY2ggaW1tZXIsIEplbmFuZHJhPwpEdSBuaWNrc3QgTWFydmluIHp1LgpEdSBzYWdzdDogaW1tZXIKTWFydmluIHNhZ3Q6IEthbm5zdCBEdSBlaW4gQmVpc3BpZWwgbmVubmVuLCBKZW5hbmRyYT8gICAgICAKRHUgc2Fnc3Q6IGR1IHdpcnN0IGpldHp0IGdsZWljaCByYXVzbGF1ZmVuLgpNYXJ2aW4gc2FndDogQWxzbyBlaHJsaWNoLCBkYXMgbWFjaHQgbWljaCBub2NoIGdhbnogYmV0cm9mZmVuLCBEdSEKTWFydmluIGdlaHQgbmFjaCBvYmVuLgpEdSB3YWVsenQgRGljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bmdlc2Nobml0dGVuIChHb2xhcywgMjguIEp1bCAyMDAwLCAyMDo0ODoxMCk6CkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IHNvbGx0ZSB3ZXIgd2FzIGdlc2FndCBoYWJlbiBpY2ggd2FyIHdlY2gKTGlhcmEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpoYXQgZGEgd2VyIGRpZSB6ZWl0ZW4gdmVydGF1c2NodD8KCmdvbGFzIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuYSBkYW5rZSA6KSAoTml6emwsIDI5LiBKdWwgMjAwMCwgMTg6MDA6NDYpOgpEdSB0ZWlsc3QgTGx5c3RyYXRoZSBtaXQ6IGhpbGZlCkxseXN0cmF0aGUgdGVpbHQgRGlyIG1pdDogRGFzIHNvbGx0ZSBEZWluZW4gV3VuZGVuIGhlbGZlbi4KRHUgd2lyc3QgYWxsbWFlaGxpY2ggd2llZGVyIGxhbmdzYW1lci4KRGllIFNjaHV0emF1cmEgdW0gRGljaCBsb2VzdCBzaWNoIGxhbmdzYW0gYXVmLgpEaWUgVmVyemF1YmVydW5nIERlaW5lciBIYWVuZGUgbGFlc3N0IGxhbmdzYW0gbmFjaC4gICAgICAKCmRhIGthbm4gaWNoIGF1Y2ggZHJhdWYgdmVyemljaHRlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWZmaXppZW56IChLYWRhYnJhLCAzMC4gSnVsIDIwMDAsIDAzOjU3OjU5KToKRmVsZGVyIG1pdCBLYXJ0b2ZmZWxuLCBMaW5zZW4sIFJldHRpY2hlbiB1bmQgVG9tYXRlbiBoZXJyc2NoZW4gaGllciB2b3IuIER1CmtvZW5udGVzdCB2ZXJzdWNoZW4sIGV0d2FzIHp1IGVybnRlbi4gPiBlcm50ZSBsaW5zZW4gRHUgZXJudGVzdCBlaW5lIExpbnNlLgpob2ZmZW50bGljaCBtdXNzIGljaCBrZWluZSBTdXBwZSBrb2NoZW4gOykKa2FkYWJyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ2hhb3RlbiAuLi4gKFRpYW1haywgMzAuIEp1bCAyMDAwLCAxNTo1NToyNyk6ClRpbGx5IHRlaWx0IERpciBtaXQ6IFlvLCBpY2ggYmluIGViZW4gbmV0dCA6LSkKCgpUaWFtYWsuIFJlaXNzdCBtYWwgYXVzIGRlbSBadXNhbW1lbmhhbmcuIF06LT4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAqc2V1ZnoqIChSYW5pLCAzMC4gSnVsIDIwMDAsIDE3OjA2OjU1KToKSG9obGtvcGYgdGVpbHQgRGlyIG1pdDogaWNoIGhhYiBtaWNoIHZlcmxhdWZlbgoKRHUgc2NoYXVzdCB0aWVmIGluIGRpZSBLdWdlbCwgbGFuZ3NhbSBsb2VzdCBzaWNoIGRlciBtaWxjaGlnZSBSYXVjaCBpbgppaHIgdW5kIER1IHNpZWhzdCA6CkR1IHNjaHdpbW1zdCBpbiBkZW4gZWlzaWdlbiBXYXNzZXJuIGRlcyBXZWloZXJzLCBkZXIganVzdCB1bnRlcgpEaXIgZWluIExvY2ggaW4gZGVyIEVpc2RlY2tlIGhhdC4KCltUb2Q6TGFyc10gRWluIHp1Z2Vmcm9yZW5lciBXZWloZXIgaGF0IGdlcmFkZSBIb2hsa29wZiB1bWdlYnJhY2h0LgpbVG9kOkVpbiB6dWdlZnJvcmVuZXIgV2VpaGVyXSBIZXksIGRhcyBFaXMgaXN0IHNjaHVsZCEgRXMgd2FyIHdvaGwgZWluZmFjaApbVG9kOkVpbiB6dWdlZnJvcmVuZXIgV2VpaGVyXSBuaWNodCBzdGFiaWwgZ2VudWcuICAgCgpSYW5pLCBkZW5rdCAub08oaGF0dGVyIG5pY2h0IGViZW4gaG9jaCBhdWYgZGVyIGhlIHBpbHplIGdlc3VjaHQ/KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKamFqYS4uLiAoQXBvcGhpcywgMzAuIEp1bCAyMDAwLCAyMDo0NDo1OSk6CkRlciBFbGYgc2luZ3Q6IGxhIGxhIGxhIGxhIGxhbGxhIGxhLgoKdW50IGVsZgpEdSBzaWVoc3QgZWluZW4gZ2FueiBnZXdvZWhubGljaGVuIEVsZmVuLiBHcm9zcywgZHVlbm4sIHNwaXR6ZSBPaHJlbi4gRGlyCmZhZWxsdCBlaW5lIE5hcmJlIGF1ZiwgZGllIGRpZSByZWNodGUgU2VpdGUgc2VpbmVzIEdlc2ljaHRlcyAndmVyemllcnQnLgpFciBpc3QgYWJzb2x1dCBmaXQuCkVyIHRyYWVndCBiZWkgc2ljaDoKRWluIFp3ZXJnZW50b2V0ZXIgKGdlenVlY2t0KS4KRWluIEVsZmVudW1oYW5nIChhbmdlem9nZW4pLgoKZnJhZ2UgZWxmIG5hY2ggendlcmdlCkRlciBFbGYga2VpZnQ6IFp3ZXJnZSBzaW5kIGRvb2YhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChUaWxseSwgMzEuIEp1bCAyMDAwLCAwMTowMjoxNyk6CkhpZ2h0IHNhZ3Q6IGhtIGljaCBzdGVsbCBtaWNoIHdpZWRlciBkYW4gZGllIGRzayAubykKSGlnaHQga251ZGRlbHQgVGlhbWFrIHVuZCBEaWNoLgpUaWFtYWsgZ3JpbnN0LgpUaWFtYWsgd2lua3QuCkhpZ2h0IHdpbmt0IFRpYW1hayB1bmQgRGlyIHp1LgpIaWdodCBmbGllZ3QgbmFjaCBvYmVuLgpbVG9kOkxhcnNdIEVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsIGhhdCBnZXJhZGUgSGlnaHQgdW1nZWJyYWNodC4KW1RvZDpFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbF0gUGZmZmZmZmZmZmZmdC4uLi4uLi5QTFVNUFMhCgoKIC4uLiBkYXMgbWl0IGRlciBPcmllbnRpZXJ1bmcgbXVzc3RlIGFiZXIgbm9jaCB1ZWJlbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWaXJ1c3dhcm51bmcgKEdsb2luc29uLCAzMS4gSnVsIDIwMDAsIDEyOjA5OjQ0KToKfiMhIHJuPUNhc3NhbmRyYSBydD05NjUwMzcxODkgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NjUwMzcxODkKSWNoIGhhYiBnZXJhZGUgZWluZW4gVmlydXMgYmVrb21tZW4uIERlciBoZWlzc3QgIlJlcGx5LXRvLVZpcnVzLXdhcm5pbmciLAppc3QgaG9jaCBhbnN0ZWNrZW5kIHVuZCBzb2xsIE1haWxzZXJ2ZXIgbGFobWxlZ2VuLiBFciBoYXQgbWljaCB6dSBkaWVzZW0KQXJ0aWtlbCBnZXp3dW5nZW4uCgpHbG9pbihzb24pLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXJ6aWVzIC4uLiAgKExpYXJhLCAzMS4gSnVsIDIwMDAsIDE0OjA1OjU1KToKRHUgdGVpbHN0IFRpYW1hayBtaXQ6IGF1d2VpYSBkZXIgaXMgamEgcmljaHRpY2ggZmVydGljaCArc2NobnVlZmYqClRpYW1hayBpc3QgbW9tZW50YW4gbGVpZGVyIHRhdWIuCgpMaWFyYSwgWndlcmdlbnphdWJlcmluZSwgZnJhZ3QgbmFjaCBkZW0gR3J1bmQgZGVyIFRhdWJoZWl0IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVyemllcyAuLi4gIChUaWFtYWssIDMxLiBKdWwgMjAwMCwgMTQ6MDY6MzMpOgp+IyEgcm49TGlhcmEgcnQ9OTY1MDQ1MTU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY1MDQ1MTU1CkdsYXViIG1pciwgZGFzIHdpbGxzdCBEdSBnYXIgbmljaHQgd2lzc2VuLgoKClRpYW1hay4gQmF1dCBuaWNodCBudXIgc3BpZWxlcmZyZXVuZGxpY2hlIEZlYXR1cmVzIGVpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRXJ6aWVzIC4uLiAgKERpZWRlciwgMzEuIEp1bCAyMDAwLCAxNDowNzozMCk6Cn4jISBybj1UaWFtYWsgcnQ9OTY1MDQ1MTkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY1MDQ1MTU1Cj4gVGlhbWFrLiBCYXV0IG5pY2h0IG51ciBzcGllbGVyZnJldW5kbGljaGUgRmVhdHVyZXMgZWluLgoKQWNoIG5laW4/IDotKQoKRGllZGVyLCBzY2h3ZXIgZW50dGFldXNjaHQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRXJ6aWVzIC4uLiAgKExpYXJhLCAzMS4gSnVsIDIwMDAsIDE0OjA4OjMyKToKfiMhIHJuPVRpYW1hayBydD05NjUwNDUxOTMgcmc9c2NobWFycm4KfiMhIHRpZD05NjUwNDUxNTUKSWNoIGRhY2h0ZSwgd2lyIGhhZXR0ZW4gRGljaCB0YXViZ2VqYW1tZXJ0LiA7LSkgQWJlciBkYW5uIGlzc2VzIGphIGFsbGVzIG5pY2h0CnNvIHNjaGxpbW0uIDstKSkKCkxpYXJhLCBad2VyZ2VuemF1YmVyaW5lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWNodHVuZywgREFVLUZyYWdlOiBFaW5iaW5kdW5nIGVpbmVzIE5ULVJlY2huZXJzIGluIDIgTmV0emUgKEFjcmltb24sIDMxLiBKdWwgMjAwMCwgMTg6MjY6NTUpOgp+IyEgcm49Wm9va2kgcnQ9OTY0NzgxNTM2IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTk2NDc4MTUzNgpOVD8gaG0uLi4KCldhcyBtaXQgTSQgenUgdHVuIGhhdCwga2FubiBrZWluZSBEQVUtRnJhZ2Ugc2VpbiEKCkFjcmltb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdlZmFlaHJsaWNoZSBzcGllbGNoZW4gLi4uIChUb2csIDMxLiBKdWwgMjAwMCwgMjA6NDM6MjcpOgp1bmdlc2Nobml0dGVuOgoKUGVydGluYXhlIHplaWd0IERpciBpaHJlIENoYW9zcmF0dGUuCkRpZXNlciBoYWVzc2xpY2hlLCBtYWx0cmFldGllcnRlIHRvdGUgUGVsemJldXRlbCB3YXIgZWlubWFsIGVpbmUgbGViZW5zZnJvaGUsCm5pZWRsaWNoZSwga3VnZWxydW5kZSBEcmVja3NyYXR0ZS4gU2llIHd1cmRlIGR1cmNoIGVpbiBwZXJ2ZXJzZXMgUml0dWFsIGluIGRlbgpEaWVuc3QgaWhyZXIgQmVzaXR6ZXJpbiBnZXp3dW5nZW4gdW5kIG11c3MgbnVuIGZ1ZXIgc2llIGF1cyBkZXIgRmVybmUgaWhyZQpGZWluZGUgc2NoaWthbmllcmVuLgpbVG9kOkxhcnNdIEVpbmUgUmF0dGUgaGF0IGdlcmFkZSBDZWxsYXIgdW1nZWJyYWNodC4KW1RvZDpFaW5lIFJhdHRlXSBEYXMgd2FyIHdvaGwgZWlubWFsIG5pY2h0cz8hCgpUb2csIGJsZWl0IENoYW90ZW4gZmVybiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN0aWxpc3RpayAoTHVnLCAgMS4gQXVnIDIwMDAsIDAxOjAyOjE3KToKCld1bmRlcnZvbGw6CgpFaW5lciBEdW5rZWxlbGZpbiB6ZXJwbGF0enQgYXVmIGVpbm1hbCBpaHIgU2NodXR6c2NoaWxkLgoKRGVtIE1laXN0ZXJuIHNlaW4gU2NocmVpYmVuIGlzdCBncm9zc2FydGlnIQpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhhcmhhciAoQXJhdGgsICAxLiBBdWcgMjAwMCwgMTU6NTI6MTApOgpEdSBzZXR6dCBlaW5lbiBtb2VyZGVyaXNjaGVuIFRvZGVzc3Rvc3MgZ2VnZW4gZGVuIFdhc3NlcmVsZW1lbnRhciBhbi4KRGVyIFdhc3NlcmVsZW1lbnRhciB2ZXJkYW1wZnQgZXR3YXMuCiAgRHUgdmVybmljaHRlc3QgZGVuIFdhc3NlcmVsZW1lbnRhci4KRGVyIFdhc3NlcmVsZW1lbnRhciB2ZXJzY2h3aW5kZXQgaW0gV2Fzc2VyLgoKX2V0d2FzXz8gCmJlaSB2ZXJuaWNodGU/CkthZW1wZmVyIGF1ZndlcnRlbiA6LSkpCgpBcmF0aAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhhcmhhciAoVGlhbWFrLCAgMS4gQXVnIDIwMDAsIDE1OjU0OjM2KToKfiMhIHJuPUFyYXRoIHJ0PTk2NTEzNzkzMCByZz1zY2htYXJybgp+IyEgdGlkPTk2NTEzNzkzMApXaXJrbGljaCBndXQga29tbXQgZGFzIGRvY2ggZXJzdCwgd2VubiB2b3IgZGVyIFplaWxlIG1pdCBkZW0gInZlcm5pY2h0ZW4iIG5vY2gKZWluZSBaZWlsZSBhbGEgIkRhcyBXYXNzZXJ1bndlc2VuIGxlbmt0IERlaW5lbiBBbmdyaWZmIGFiLiIga29tbXQuCgpJY2gga2VubiBkYSBzbyBuZW4gWndlcmcsIGRlciBoZXV0ZSBub2NoIGZsdWNodCwgd2VubiBlciBkYXZvbiBlcnphZWhsdC4gCkRhcyBrbGFwcHQgbmFlbWxpY2ggaW4gYmVpZGUgUmljaHR1bmdlbi4gXTotPgoKClRpYW1hawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBoYXJoYXIgKEFuYXRvbCwgIDEuIEF1ZyAyMDAwLCAxNTo1NTowOCk6Cn4jISBybj1UaWFtYWsgcnQ9OTY1MTM4MDc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY1MTM3OTMwCkRpZXNlciBibG9lZGUgWndlcmcgbGVndGUgZXMgYWJlciBkcmF1ZiBhbi4gR2VzY2hhaCBpaG0gYWxzbyBnYW56IHJlY2h0LiA6KQoKQW5hdG9sLCBFbGYgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGhhcmhhciAoVGlhbWFrLCAgMS4gQXVnIDIwMDAsIDE1OjU4OjMwKToKfiMhIHJuPUFuYXRvbCBydD05NjUxMzgxMDggcmc9c2NobWFycm4KfiMhIHRpZD05NjUxMzc5MzAKSWNoIHdlcmRlIGdlcmFkZSBkYXJhdWYgYXVmbWVya3NhbSBnZW1hY2h0LCBkYXNzIGljaCBuaWNodCBsZXNlbiBrYW5uLiBBZWhtLiAKSWNoIG1laW50ZSBuYXR1ZXJsaWNoIGRhcyBXYXNzZXJ1bndlc2VuLiBOaWNodCBkZW4gV2Fzc2VyZWxlbWVudGFyLgoKQWJlciBkYXMgUHJpbnppcCBpc3QgZGFzc2VsYmUuIDteKQoKClRpYW1hawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG1tLi5uYWphLi4uIChIdW1uaSwgIDEuIEF1ZyAyMDAwLCAxNzoyMToyOCk6ClNvd2FzIGtvbW10IGRhdm9uLCB3ZW5uIG1hbiB2ZXJnaXNzdCwgc2VpZW4gT2JqZWt0ZW4gTmFtZW4genUgZ2ViZW46CgpEdSB6ZWlnc3QgRWxiZXJldCBkZWluIERpbmcuClsyIHNlYy4gc3BhZXRlcl0KQXVmIEJ1ZGRoYXMgSGFlbmRlbiBlcnNjaGVpbnQgYXVmIGVpbm1hbCBlaW5lIHdlaXNzZSwgb2VsaWdlIEZsdWVzc2lna2VpdCwgbWl0CmRlciBlciBIYXRlIGVpbnJlaWJ0LgoKSHVtbmkgLSB3dXJkZSB6dW0gcG9zdGVuIGdlend1bmdlbi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbHpoZWltZXIgJiBBbHRlciAoR2xvaW5zb24sICAxLiBBdWcgMjAwMCwgMTg6MDg6MzMpOgpBbmF0b2wgdGVpbHQgRGlyIG1pdDogQWhhPyBFcyBnaWJ0IGVpbiBTcGllbGVydG9vbCwgbWl0IGRlbSBtYW4gImZpbmdlciIKQW5hdG9sIHRlaWx0IERpciBtaXQ6IGJlbWVya3Q/CkR1IHRlaWxzdCBBbmF0b2wgbWl0OiBOb2UuIFNvd2FzIHNjaHJlaWJ0IG1hbiBzaWNoIGFscyBmbGVpc3NpZ2VyIE1hZ2llcgpEdSB0ZWlsc3QgQW5hdG9sIG1pdDogc2VsYnN0LgpBbmF0b2wgdGVpbHQgRGlyIG1pdDogR05hYWFhYWFhYWFhYWFhYWFhYSA6KSBEdSBiaXN0IGphIE1hZ2llciA7KQoKR2xvaW4oc29uKSBtZWludDogQW5hdG9sIGhhdCBzZWluZSBiZXN0ZW4gVGFnZSBoaW50ZXIgc2ljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbHpoZWltZXIgJiBBbHRlciAoQW5hdG9sLCAgMS4gQXVnIDIwMDAsIDE4OjA5OjMzKToKfiMhIHJuPUdsb2luc29uIHJ0PTk2NTE0NjExMyByZz1zY2htYXJybgp+IyEgdGlkPTk2NTE0NjExMwpTaWVoIGVzIHNvOiBXZW5uIG1hbiBzaWNoIGFscyBNYWdpZXIgU09PT08gZG9vZiBhbnN0ZWxsdCwgZGFzcyBtYW4gbm9jaAppbW1lciBmdWVyIGVpbmVuIFNwaWVsZXIgZ2VoYWx0ZW4gd2lyZCwgc29sbHRlIG1hbiBzaWNoIG1pdCBkZW0gR2VkYW5rZW4KZGVzIFByb2dyYW1taWVyZW5zIHVuZCBBbnNjaGxpZXNzZW5zIGJlZmFzc2VuLiA6KQoKUGFwcG5hc2UhIDopCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogYW5rdW5mdCAoVGlhbWFrLCAgMS4gQXVnIDIwMDAsIDE4OjE1OjA0KToKfiMhIHJuPUdsb2luc29uIHJ0PTk2NTE0NTg3MSByZz1wYXJ0eQp+IyEgdGlkPTk2NTEzMTI2MApBbHNvIGRpZSBFbnRzY2h1bGRpZ3VuZ2VuIHZvbiBCYW1iaSBmYW5kIGljaCAuLi4ga3JlYXRpdi4gOy0pCgoKVGlhbWFrLiBCb2VzZSB1bmQgZ2VtZWluLiBCZWdydWVzc3QgQmFtYmkgbmllLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogYW5rdW5mdCAoVmFuaW9uLCAgMS4gQXVnIDIwMDAsIDE4OjE2OjQyKToKfiMhIHJuPVRpYW1hayBydD05NjUxNDY1MDQgcmc9c2NobWFycm4KfiMhIHRpZD05NjUxMzEyNjAKRGFmdWVyIGJlZ3J1ZXNzZSBpY2ggQmFtYmkgaW1tZXIgISEhCgpUaWFcYlxiXGJWKiAtIGhldXRlIGdlc3BhbHRlbiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGFua3VuZnQgKEdsb2luc29uLCAgMS4gQXVnIDIwMDAsIDE4OjE5OjI4KToKfiMhIHJuPVZhbmlvbiBydD05NjUxNDY2MDIgcmc9c2NobWFycm4KfiMhIHRpZD05NjUxMzEyNjAKQWNoLCBad2VpdGllcyB6YWVobGVuIG5pY2h0LiBad2VpdGllcyBzaW5kIGVpbmUgQXJ0IHZvbiBTY2hpem9waHJlbmllLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFsemhlaW1lciAmIEFsdGVyIChEaWVkZXIsICAxLiBBdWcgMjAwMCwgMjI6MjM6NDMpOgp+IyEgcm49R2xvaW5zb24gcnQ9OTY1MTQ2MTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY1MTQ2MTEzCnNlbGJlciBzY2hyZWliZW4/CmhhaGFoYSwgZ2xhdWJzdGUgamEgc2VsYmVyIG5pY2h0IC0gbmFjaGRlbSBkaWVzZSBGdW5rdGlvbiBzY2hvbiB6aWdmYWNoIGluCmRpdmVyc2VuIFRvb2xzIHJ1bWZhZWhydCA6KQoKU0NOUiA6KQpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWx6aGVpbWVyICYgQWx0ZXIgKFRpYW1haywgIDEuIEF1ZyAyMDAwLCAyMjoyNToxMSk6Cn4jISBybj1EaWVkZXIgcnQ9OTY1MTYxNDIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY1MTQ2MTEzCldhcyB3ZXJkZW4gc2ljaCBnZXdpc3NlIE1hZ2llciBhdWYgZWlubWFsIHd1bmRlcm4sIHdlbm4gZWluIHVuZ2VuYW5udGVyIEVNCmdlbmVydnQgZGVuICJmaW5nZXIiLUJlZmVobCB1bWdlYmF1dCBoYXQgLi4uCgoKVGlhbWFrLiBNYWwgcmVpbiBoeXBvdGhldGlzY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaCBvaCAuLi4gIChNYXJjdXMsICAxLiBBdWcgMjAwMCwgMjM6MTQ6NTIpOgpBbGNpbmEgbXVybWVsdCBlaW4gcGFhciB1bnZlcnN0YWVuZGxpY2hlIFdvcnRlIHVuZCBtYWNodCBlaW5pZ2UgYmVzY2h3b2VyZW5kZQpHZXN0ZW4gdWViZXIgaWhyZXIgS3Jpc3RhbGxrdWdlbApEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KCk1hcmN1cyAuIG8gTyAoVm9yc2ljaHQgLi4uICkgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFsemhlaW1lciAmIEFsdGVyIChHbG9pbnNvbiwgIDIuIEF1ZyAyMDAwLCAwMTo1ODozNik6Cn4jISBybj1EaWVkZXIgcnQ9OTY1MTYxNDIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY1MTQ2MTEzCkZyZW1kZSBUb29scyB1ZWJlciBkaWUgaGVpbGlnZSBEcmVpZmFsdGlna2VpdCBoaW5hdXMgc2luZCBudXIgenVyCkRva3VtZW50YXRpb24gZGVyIGVpZ2VuZW4gVW5mYWVoaWdrZWl0IGd1dC4gSWNoIHJlZGUgdm9uIE1hZ2llcnRvb2xzLCBPSz8KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEZWVwYmx1ZSEgQXJncyEgKEdyaW1tYm9ybiwgIDIuIEF1ZyAyMDAwLCAxMDozMDozMyk6Cn4jISBvbj1IaWdodCBvdD05NjUxNzE1MDUgb2c9d2l0emUKfiMhIHJuPVRzdW5hbWkgcnQ9OTY1MTU0MjA1IHJnPXdpdHplCn4jISB0aWQ9OTY1MTU0MjA1CnNvIGRpcmVrdCBoYWV0dGUgaWNocyB6d2FyIG5ldCBhdXNnZWRydWVja3QgYWJiYSBpY2ggc3RpbW1lIGRlbSB2b2xsZW5kcyAgenUgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBbHpoZWltZXIgJiBBbHRlciAoRGllZGVyLCAgMi4gQXVnIDIwMDAsIDE1OjQ4OjQ3KToKfiMhIHJuPUdsb2luc29uIHJ0PTk2NTE3NDMxNiByZz1zY2htYXJybgp+IyEgdGlkPTk2NTE0NjExMwpzY2hvbiBrbGFyLCBpY2ggamEgYXVjaC4KCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogcmF0dGVucGF0Y2ggKEFuYXRvbCwgIDIuIEF1ZyAyMDAwLCAyMjo0NDo1NSk6Cn4jISBybj1Jc2lzIHJ0PTk2NTI0ODg3NyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk2Mzk0MDI4MgpUamEsIEhlcmEsIHdlbm4gRHUgZGVuIEFydGlrZWwgbmljaHQgRGVpbmVuIHBvdGVuemllbGwgc3Ryb2hkdW1tZW4KSGF1ZHJhdWYtS2FyYXRla2EgaGFldHRlc3Qgc2NocmVpYmVuIGxhc3Nlbiwgd2FlciBEaXIgYXVmZ2VmYWxsZW4sIGRhc3MKImRvbm5lciIgbmljaHQgbWl0IGRlbSBCdWNoc3RhYmVuICdiJyBiZWdpbm50LiAKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFjaG8sIE1hY2hvLCBvdXQgb2YgY29udGV4dC4uLiA7KSAoQW5hdG9sLCAgNC4gQXVnIDIwMDAsIDIwOjA5OjA2KToKCltBbGxnZW1laW46U3RpbmddIGFiZXIgaWNoIGtlbm4gZWluaWdlIGFuZGVyZSwgaWNoIGhhdHRlIHNjaG9uIG1laHJlcmUgOikKCkRldGFpbHMhIFdvIHNpbmQgZGllIERldGFpbHMhCkFuYXRvbCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbWVoci4uLiAoTXVwZmVsLCAgNi4gQXVnIDIwMDAsIDAyOjUwOjQ3KToKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogeWVhaCBpY2ggd2lsbCBtZWhyIGFydGlrZWwKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2hvZW4sIGRhcyBtaXQgZGVtIG9ydCA7KSAoWm9vaywgIDYuIEF1ZyAyMDAwLCAxMjo0NjoyNSk6CkJyb2NoIGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiB4eHh4eC5kZSAoeHh4Lnh4eC54eHgpCiAgICAgICAgICAgICAgW1d1cnN0dGhla2UgKHVlYmVyIEhpbGRlc2hlaW0pXS4KCgpab29rLCBncmluc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERpZWRlciwgIDYuIEF1ZyAyMDAwLCAxNjowMToyOCk6CltBbGxnZW1laW46VGFtaXJdIGljaCBmaW5kIG1vcm9uIHNjaHdpZXJpZ2VyIHdpZSBvcmtob2VobGUKCndlbmlnIHNwYWV0ZXIuLi4KCltUb2Q6TGFyc10gRWluIFNjaGF0dGVubWFubiBoYXQgZ2VyYWRlIFRhbWlyIHVtZ2VicmFjaHQuCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbmV0c2NhcGUgKEFuYXRvbCwgIDcuIEF1ZyAyMDAwLCAxODoyMjoyNyk6Cn4jISBvbj1BbmF0b2wgb3Q9OTY1NjY1MzM1IG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49U3RpbmcgcnQ9OTY1NjY0NTUxIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTk2NTY2NDI0NQpMZWlkZXIgbGFldWZ0IGRlciBJRSBhdWYga2VpbmVtIEJldHJpZWJzc3lzdGVtLiBEYXMgbWFjaHQgZGllClNhY2hlIGV4dHJlbSBhZXJnZXJsaWNoLCB3ZXIgaW5zdGFsbGllcnQgc2Nob24gVk13YXJlIG51ciB3ZWdlbi4uLgoKQW5hdG9sIENSIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEdvciwgIDcuIEF1ZyAyMDAwLCAyMzozOTozNyk6CkRpZWRlciB0ZWlsdCBEaXIgbWl0OiBXQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQpEaWVkZXIgdGVpbHQgRGlyIG1pdDogU1RVVVVVVVVVVVVVVVVVVVVVUFMKRHUgdGVpbHN0IERpZWRlciBtaXQ6IHdvc24gZGFzPwpEaWVkZXIgdGVpbHQgRGlyIG1pdDogdmllbCBzcGFzcyBiZWkgbGFycwpEdSB0ZWlsc3QgRGllZGVyIG1pdDogaGFlPwpbVG9kOkxhcnNdIEVpbiB0aWVmZXIgU3R1cnogaGF0IGdlcmFkZSBEaWVkZXIgdW1nZWJyYWNodC4KW1RvZDpFaW4gdGllZmVyIFN0dXJ6XSBXaXIgaG9mZmVuLCBzaWUgaGF0dGVuIGVpbmVuIGd1dGVuIEZsdWcgdW5kIGJlZWhyZW4gU2llCltUb2Q6RWluIHRpZWZlciBTdHVyel0gdW5zIGJhbGQgd2llZGVyIQoKQWNoamEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKERpZWRlciwgIDcuIEF1ZyAyMDAwLCAyMzo0MToxMyk6Cn4jISBybj1Hb3IgcnQ9OTY1Njg0Mzc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY1Njg0Mzc3CmRhcyB3YXIgbmljaHQgZGVyIFN0dXBzLCBzb25kZXJuIGRpZSBGb2xnZWVyc2NoZWludW5nIDopCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJpcmR5IGRvY2ggbmUgZmV0dGUgVGF1YmU/IChMb2xsaSwgIDguIEF1ZyAyMDAwLCAxMDo0OToxOSk6CkdyYWRlIGViZW4gaW5uZXIgS25laXBlOgo+RWluIHdhYmVybmRlcyBHZWJpbGRlIGVyc2NoZWludCB1cnBsb2V0emxpY2ggdm9yIERpci4KPkJpcmR5IGZsaWVndCBoZXJlaW4uCgpIbSwgaGFzdCBEdSB6dWdlbm9tbWVuPyA6LSkKCkxPTExJLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEx1ZyAoR3JpbW1ib3JuLCAgOC4gQXVnIDIwMDAsIDEzOjIwOjQ0KToKfiMhIHJuPVJhc3lhIHJ0PTk2NTczMzUyMyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk2NTczMzUyMwpBY2ggd2FzLCBkaWUgRGV0YWlscyB3ZXJkZW4gaW4gMTcwMCBkYW5uIGJlaSBBdXNncmFidW5nZW4gcmVrb25zdHJ1aWVydCwgZGFzCnNvbGx0ZSByZWljaGVuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmNoYW9zIHJ1bGV6IChEaWVkZXIsICA4LiBBdWcgMjAwMCwgMjM6MjE6MzUpOgpEdSBzYWdzdDogZHUgaGFzdCBudXIgc2NoaXNzIHZvciBtaXIgOikKVmFuaW9uIHNhZ3Q6IGljaCBqYQoKRGllZGVyLCB3dXNzdGUgZXMgc2Nob24gaW1tZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnIqIChHbm9tZSwgMTAuIEF1ZyAyMDAwLCAwMTo0Njo0Nik6Ci4uLgpEZWluIEdlbGRiZXV0ZWwgaXN0IGxlaWNodGVyIGdld29yZGVuLgo+IHJ0cmV0ZSByb2JpbgpFaW5lbiBzb2xjaGVuIFNwaWVsZXIgZ2lidCBlcyBkZXJ6ZWl0IG5pY2h0LgoKZ3JtcGYgOikKCmduT21lIG1vZWNodGUgZW5kbGljaCBuZW4gcmVtb3RlIGF1Y2ggZnVlciBOUENzLi4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogciogKERhcmt3aW5nLCAxMC4gQXVnIDIwMDAsIDA5OjQ4OjM1KToKfiMhIHJuPUdub21lIHJ0PTk2NTg2NDgwNiByZz1zY2htYXJybgp+IyEgdGlkPTk2NTg2NDgwNgpFcyBnaWJ0IExldXRlIGRpZSBzY2hhdWVuIERpY2ggYmVpIHNvIGVpbmVtIFdpdHogdmVyc3RhZW5kbmlzbG9zIGFuIHVuZCBzYWdlbgpudXIgIkthdWYgRGlyIGRvY2ggbmUgU2Vlci1DYXJkISIKSGFiIGF1Y2ggbm9jaCBrZWluZSAqZyogOi0pKQoKRGFya3dpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogciogKE9iZXJtb3R6LCAxMC4gQXVnIDIwMDAsIDA5OjU2OjU2KToKfiMhIHJuPURhcmt3aW5nIHJ0PTk2NTg5MzcxNSByZz1zY2htYXJybgp+IyEgdGlkPTk2NTg2NDgwNgpTZWVyLUNhcmQ/IFdhdCBpcyBkYXQgZnVlcm4gbmV1bW9kaXNjaGVzIFpldWNoPyBTb3dhdCBicmF1Y2ggZG9jaCBrZWluZXIhCkRlbW5hZWNoc3Qga29tbXQgd29obCBub2NoIHNvd2F0IHdpZSBBbXBlbG4gdW5kIFZvcmZhaHJ0c3JlZ2VsbiBvZGVyCmlyZ2VuZHdlbGNoZSBkYW1wZmJldHJpZWJlbmVuIFJlY2hlbm1hc2NoaW5lbiBtaXQgZGVtIE5hbWVuIENvbXB1dGVyLgoKT2Jlcm1vdHogd2lsbCBudXIgZWlucywgdW5kIGRhcyBmYWVuZ3QgbWl0IEsgYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHIqIChHcmltbWJvcm4sIDEwLiBBdWcgMjAwMCwgMDk6NTg6MTYpOgp+IyEgcm49T2Jlcm1vdHogcnQ9OTY1ODk0MjE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY1ODY0ODA2CkFlaCwgS2lja2VuPwoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LCByYXRsb3MKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHIqIChTaWx2YW5hLCAxMC4gQXVnIDIwMDAsIDExOjM3OjA1KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NjU4OTQyOTYgcmc9c2NobWFycm4KfiMhIHRpZD05NjU4NjQ4MDYKS3VjaGVuIHZlcm11dGxpY2guIE5pY2h0IHZvbiBtaXIuLi4KCiAgU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BydWNoIGRlciBXb2NoZSAoQWxib2luLCAxMC4gQXVnIDIwMDAsIDE0OjIzOjQxKToKVGphLCB2b3IgZWluaWdlciBaZWl0IGhhdCBtYWwgR3JpbW1pIGRpZXNlIFRyYWRpdGlvbiBhdWZsZWJlbiBsYXNzZW4uIE51IGhhdAplciBlbnR3ZWRlciBrZWluZW4gS2FsZW5kZXIgb2RlciBrZWluZSBaZWl0IG1laHIgOy0pIApKZWRlbmZhbGxzIHdlaWwgc2ljaCBhdWNoIGRlciAxMDAuIFRvZGVzdGFnIG1laW5lcyBMaWVibGluZ3NwaGlsb3NvcGhlbgpuYWVoZXJ0LCBoYWJlIGljaCBMdXN0IHdpZWRlciBtYWwgZWluZW4gU3BydWNoIGluIGRpZSBtcGEgenUgc2V0emVuLiBBbHNvCmZyZXV0IEV1Y2ggb2RlciBpZ25vcmllcnQgbWljaC4KCldhcyBqZW1hbmQgaXN0LCBmYWVuZ3QgYW4sIHNpY2ggenUgdmVycmF0ZW4sIHdlbm4gc2VpbiBUYWxlbnQgbmFjaGxhZXNzdCAtCndlbm4gZXIgYXVmaG9lcnQsIHp1IHplaWdlbiwgd2FzIGVyIGthbm4uIERhcyBUYWxlbnQgaXN0IGF1Y2ggZWluIFB1dHo7IGVpbgpQdXR6IGlzdCBhdWNoIGVpbiBWZXJzdGVjay4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZyaWVkcmljaCBOaWV0enNjaGUgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1cyBKZW5zZWl0cyB2b24gR3V0IHVuZCBCb2VzZQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBnZWh0IGRlbiBoaWVyIGFiPyAoQmFtYnVsa28sIDExLiBBdWcgMjAwMCwgMTM6MTU6NTgpOgoiSmV0enQgZ2VsdGVuIGtlaW5lIFZlcmFicmVkdW5nZW4gbWVoci4gRGFzIHNjaHdhcnplCkF1c3RyYWxpZW4gd2lyZCBzaWNoIGVyaGViZW4iLCBzY2hyaWUgQWJvcmlnaW5lLVNwcmVjaGVyIEx5YWxsIE11bnJvIGFtCkZyZWl0YWcgaW4gU3lkbmV5LCBuYWNoZGVtIDEyMCBQb2xpemlzdGVuIGltIE1vcmdlbmdyYXVlbiBmdWVuZiBIYWV1c2VyCmluIGRlciBiZXJ1ZWNodGlndGVuIFNsdW1nZWdlbmQgInRoZSBibG9jayIgbmFoZSBkZXIgSW5uZW5zdGFkdCBnZXN0dWVybXQKaGF0dGVuLgoKV2VsY2hlIFJlZ2lvbiBpc3QgZGFzIGRlbm4/IEluc2Vsbj8KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2huZWxsIGdld2VzZW4uLi4gOykgKFpvb2ssIDExLiBBdWcgMjAwMCwgMTU6NTg6MTYpOgpEdSB3aXJmc3QgZGllIEFuZ2VsIGF1cy4KW1plaXQgdmVyZ2VodF0KRGVyIFRlaWNod2FlY2h0ZXIga29tbXQgcGxvZXR6bGljaCBoZXJlaW4uCkV0d2FzIHphcHBlbHQgYW4gRGVpbmVyIEFuZ2VsLgpEdSBob2xzdCBkaWUgQW5nZWwgd2llZGVyIGVpbi4KRGVyIFdhZWNodGVyIHJ1ZnQ6IEhpZXIgaXN0IGRhcyBBbmdlbG4gdmVyYm90ZW4hCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIEdlaXN0ZXIsIGRpZSBpY2ggcmllZiAuLi4gKFZhbmlvbiwgMTEuIEF1ZyAyMDAwLCAxOTowMDo0NCk6CmViZW4gLi4uCltBbGxnZW1laW46U2lsdmFuYSBkZW5rdCAuIG8gTyAoTmljaHQgdmllbCBsb3MgaGllci4uLildCgprdXJ6IGRhcmF1ZiAuLi4KCltBbGxnZW1laW46TXV0YW50dXNdIElDSCBCSU4gU08gU0NIT0VOLCBJQ0ggQklOIFNPIFRPTEwsIElDSCBCSU4gTVVUQU5UVVMKW0FsbGdlbWVpbjpNdXRhbnR1c10gSEFDS0VWT0xMISEhCgpWKiwgbWVpbnQgZGFzcyBtYW4gbWl0IHNlaW5lbiBXdWVuc2NoZW4gdm9yc2ljaHRpZyBzZWluIHNvbGwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogVGhlbWVuLXJvdGF0aW9uIChHbG9pbnNvbiwgMTMuIEF1ZyAyMDAwLCAxNjozNDo1OCk6Cn4jISBybj1Ta3kgcnQ9OTY2MDg4OTkyIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTk2NTc0NDk2NQpCYWgsIGlzdCBkYXMgcGVpbmxpY2guIERpZSBLcmVhdGlvbiBlaW5lcyBNQWdpZXJzIGRhcmYgRGljaCBhbnNjaGVpc3Nlbj8KSmVkZXIgZGVyIGRpZXNlciBHaWxkZSBiZWl0cnR0LCBzdGlsbHN0ZWhlbiB1bmQgc2FsdXRpZXJlbiBnZWxlcm50IGhhdAp3ZWlzIHdhcyBlciB6dSBlcndhcnRlbiBoYXQuCkFsc28gd2lkZXJzcHJpY2ggRGVpbmVtIFZvcmdlc2V0enRlbiBuaWNodCEgQW5zb25zdGVuIHdlcmQgS2xlcmlrZXIuCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXbyBoYXQgZXIgc2ljaCBkZW5uIHZlcnN0ZWNrdD8gKFZhbmlvbiwgMTMuIEF1ZyAyMDAwLCAyMToyMToyMCk6Cj4gdW50IHN0dWVobGUKSGllciBzdGVoZW4gYWNodCBTdHVlaGxlIHVtIGRlbiBUaXNjaCBoZXJ1bS4gVGlhbWFrIHVuZCBWYW5pb24gc2l0emVuIGJlaWRlCmF1ZiBqZSBlaW5lbSBTdHVobC4KPiBzY2hhdQpEdSBiZWZpbmRlc3QgRGljaCBpbiBlaW5lbSBrbGVpbmVuLCBkdW5rbGVuIFJhdW0uIEVyIGVudGhhZWx0IGVpZ2VudGxpY2ggbmljaHQKdmllbCBtZWhyIGFscyBlaW5lbiBydW5kZW4gVGlzY2ggdW5kIGFjaHQgU3R1ZWhsZS4gSW0gTGljaHQgZGVyIHZpZXIgS2VyemVuCihlcyBoYWVuZ3QgamUgZWluZSBpbiBqZWRlciBFY2tlIGRlcyBSYXVtZXMpIHNpZWhzdCBEdSwgZGFzcyBhdWYgZGVtIFRpc2NoCkthcnRlbiBsaWVnZW4uIFVlYmVyIGVpbmUgV2VuZGVsdHJlcHBlIGthbm5zdCBEdSBkZW4gUmF1bSB3aWVkZXIgdmVybGFzc2VuLiBBbgplaW5lciBXYW5kIGhhZW5ndCBlaW4gU2NoaWxkLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogb2Jlbi4KClYqLCBpc3Qgd29obCBkb2NoIHNjaGl6b3BocmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpla2xpZ2UgTG9sbGlzIChQZXJ0aW5heGUsIDE0LiBBdWcgMjAwMCwgMDk6MTI6MzYpOgo+IFRvcmluIHRlaWx0IERpciBtaXQ6IElyZ2VuZGplbWFuZCBoYXQgbWlyIG5lbiBMb2xsaSBpbiBkaWUgaGFhcmUgZ2ViYWJ0IQowOTowOQpEdSBncmluc3QgVG9yaW4gYXVzIGRlciBGZXJuZSBhbi4KRHUgdGVpbHN0IFRvcmluIG1pdDogbWFjaCAsbWFsIGZpbmdlciBsb2xsaQo+IFRvcmluIHRlaWx0IERpciBtaXQ6IGhhYnMgc2Nob24gZ2VzZWhlbiA6KSAwOToxMAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGVrbGlnZSBMb2xsaXMgKExvbGxpLCAxNC4gQXVnIDIwMDAsIDA5OjI2OjA3KToKfiMhIHJuPVBlcnRpbmF4ZSBydD05NjYyMzcxNTYgcmc9c2NobWFycm4KfiMhIHRpZD05NjYyMzcxNTYKKmdyaW5zLCBoYXIgaGFyLCBoaWhpKgpqYWphLCBzdWVzc2VzIGthbm4gc2Nob24gZ2VtZWluIHNlaW4uLi4KCkxPTExJCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp6d2VpdGllcyBvZGVyIHdpZT8gKExlaWJuaXosIDE0LiBBdWcgMjAwMCwgMTc6MDI6MjYpOgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogaXJnZW5kd2llIHJpZWNodCBoaWVyIHdhcyBhbmdlYnJhbm50ICpkZW5rKgpEZWluIEZyZXVuZCBUYW5pcyB0ZWlsdCBEaXIgbWl0OiBuaW1tIGRpZSBrYXR6ZSBhdXMgZGVtIHRyb2NrbmVyICpnKgpEZWluIEZyZXVuZCBIaWdodCB0ZWlsdCBEaXIgbWl0OiBuaW1tIGRpZSBrYXR6ZSBhdXMgZGVtIHRyb2NrbmVyCgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIC4uLiAoVGFuaXMsIDE0LiBBdWcgMjAwMCwgMTc6MDM6MDIpOgpEZWluZSBGcmV1bmRpbiBMZWlibml6IHRlaWx0IERpciBtaXQ6IGlyZ2VuZHdpZSByaWVjaHQgaGllciB3YXMgYW5nZWJyYW5udApEZWluZSBGcmV1bmRpbiBMZWlibml6IHRlaWx0IERpciBtaXQ6ICpkZW5rKgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogbmltbSBkaWUga2F0emUgYXVzIGRlbSB0cm9ja25lciAqZyoKRGVpbmUgRnJldW5kaW4gTGVpYm5peiB0ZWlsdCBEaXIgbWl0OiBkaWUgZ2FicyBsZXR6dGUgd29jaGUgKnd1ZXJnKgoKbmFqYSAuLi4gaWNoIGRhY2h0ZSBzaWUgbWFnIGlocmUga2F0emVuIC4uLiAqZ3J1ZWJlbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZhc3QgdW5nZXNjaG5pdHRlbiAoTmlja3RhciwgMTQuIEF1ZyAyMDAwLCAxNzoyNjo1NCk6CltBbmZhZW5nZXI6SmVuYW5kcmFdIGxldXR6LCB3ZW5uIGlociB1bmJlZGluZ3QgYW5kZXJlIHNwaWVsZXIga2lsbGVuIHdvbGx0LApbQW5mYWVuZ2VyOkplbmFuZHJhXSBnZWh0IGlucyBway1tdWQuIGRhcyBoaWVyIGlzdCBlaW4gcXVlc3QtbXVkLCB3aXIgc3RlaG4KW0FuZmFlbmdlcjpKZW5hbmRyYV0gZWlnZW50bGljaCBtZWhyIGF1ZiBmcmllZGxpY2hlcyB6dXNhbW1lbGViZW4gYWxzIGF1ZgpbQW5mYWVuZ2VyOkplbmFuZHJhXSBkcm9odW5nZW4gdW5kIGNvb2xlIHNwcnVlY2hlLgpbQW5mYWVuZ2VyOkhvbmV5XSBzaWVoc3RlCltNb2VyZGVyOkdlaXN0IGVpbmVzIEZldWVydGV1ZmVsc10gVG9sbCEgR0VOQVUgZGFzIGhhYiBpY2ggamV0enQgZ2VicmF1Y2h0IQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBGZXVlcnRldWZlbHNdIFN1cGVyLCBVZ2khIDooCltBbmZhZW5nZXI6WHhTT05JQ3h4XSBnZW5hdSBuaWNodCBrYWVtcGZlbiBSRURFTiA6KSkKW01vZXJkZXI6R2Vpc3QgZWluZXMgSG9oZW5wcmllc3RlcnNdIEljaCBmb3JkZXJlIFJldmFuY2hlLCBXdXJzdGVsIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIHZlcndlY2hzZWx0IG9kZXIgd2llPyAoTGVpYm5peiwgMTQuIEF1ZyAyMDAwLCAyMjowMjozMSk6Ckdhc3QxIHJ1ZnQ6IEh1bmdlcgpEdSBydWZzdDogaXNzIHdhcwogRGVlcEJsdWUgcnVmdDogV2FzPyBOZW4gS2Vrcz8KR2FzdDEgdGVpbHQgRGlyIG1pdDogb2sgZGFyZiBpY2ggZGVpbiBCbHV0dCB0cmlua2VuIDopCgprZWtzZSBoYWJlbiBrZWluIGJsdXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXMgZ2VodCBkZW4gaGllciBhYj8gKE5pbWJ1cywgMTUuIEF1ZyAyMDAwLCAwNzoxMjoyMik6Cn4jISBybj1CYW1idWxrbyBydD05NjU5OTI1NTggcmc9c2NobWFycm4KfiMhIHRpZD05NjU5OTI1NTgKSWNoIGthbm4gamEgbWFsIG5hY2hmb3JzY2hlbiwgc2NobGllc3NsaWNoIGJpbiBpY2ggZGFzIG5hZWNoc3RlIGhhbGJlIEphaHIKaGllciBpbiBTeWRuZXkgO28pCgpOaW1idXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvIGJsZWlidCBkaWUgUmF0dGVuYmFsYW5jZSA6LSkgKERhcmt3aW5nLCAxNS4gQXVnIDIwMDAsIDEzOjU4OjI3KToKCkF1cyBUcmF1bWFzIEhhZW5kZW4gbG9lc3Qgc2ljaCBlaW5lIGdld2FsdGlnZSBGZXVlcndhbHplLCBkaWUgc29mb3J0CmRhdm9ucm9sbHQuCkVpbmUgU3RpY2hmbGFtbWUgZXJ3aXNjaHQgVHJhdW1hIHVuZCB2ZXJzZW5ndCBTZWluZSBIYWFyZS4KIC4uLm5vcm1hbC8/Pz8uLi4uLi4uLi4gRmV1ZXJ3YWx6ZS4uLiA6IFRyYXVtYS4uLi4uLi4gKioqKioqKiogLS0gUHVsdmVyCkRpZSBSYXR0ZSB3aXJkIHZvbiBlaW5lciBEcnVja3dlbGxlIGhlcmVpbmdlc2NobGV1ZGVydC4KRHUgbWFjaHN0IGVpbmUgZXJmb2xncmVpY2hlIEZpbnRlIGdlZ2VuIGRpZSBSYXR0ZS4KIC4uLmV4dHJhL1NjaGlsZHN0b3NzLiBEdS4uLi4uLi4uLi4uIDogUmF0dGUuLi4uLi4uLiAqKioqKioqKiAtPiB6ZXJzdGFldWJ0CkRlaW4gdmllbCB6dSBoZWZ0aWdlciBBbmdyaWZmIGdlaHQgdm9sbCBkYW5lYmVuLi4uCkV2ZW50dWVsbCBzb2xsdGVzdCBEdSBkYXMgbmFlY2hzdGUgbWFsIG1pdCBldHdhcyBtZWhyIEdlZnVlaGwgYW5ncmVpZmVuIQpEaWUgUmF0dGUgaWdub3JpZXJ0IGRpZSBqYWVtbWVybGljaGVuIEFrdGlvbmVuIHZvbiBUcmF1bWEuCkRpZSBSYXR0ZSBzcHJpbmd0IFRyYXVtYSBhbiB1bmQgYmVpc3N0IGlobSBkaWUgS2VobGUgZHVyY2guClRyYXVtYSBsb2VzdCBzaWNoIGluIEx1ZnQgYXVmLgpEaWUgUmF0dGUgYmVpc3N0IERpciBpbnMgS25pZSwgdW5kIER1IHZlcmdpc3N0IHZvciBsYXV0ZXIgU2NobWVyeiwgRmFudHVzCndlaXRlciB6dSB2ZXJ0ZWlkaWdlbi4KIC4uLm5vcm1hbC9aYWVobmVuLi4uLi4gUmF0dGUuLi4uLi4uLiA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gUHVsdmVyCgpzb3JyeSwgZGFzIG11c3N0ZSBqZXR6dCBtYWwgc2VpbiwgaXJnZW5kd2llIGlzdCBkYXMgc2Nob24gYmFsZCB3aWVkZXIgd2l0emlnCjotKQoKRGFya3dpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRm9vYmFyLCAxNS4gQXVnIDIwMDAsIDIwOjM0OjQ4KToKVW5nZXNjaG5pdHRlbjoKCkRvY2RldmlsIHNhZ3Q6IG11ZXNzZW4gd2VpdGVyIHNvbnN0IHJlc2V0ZXRzCk9oYW0gZ3JpbnN0LgpPaGFtIHdpbmt0LgpFbGJlcmV0IHNhZ3Q6IGljaCB3ZWlzcywgaWNoIGJpbiBlaW4gQmx1ZW1jaGVucGZsdWVja2VyIDspCkRvY2RldmlsIHdpbmt0IEVsYmVyZXQgenUuCk9oYW0gd2FuZGVydCBpbiB0dWdlbmRoYWZ0ZXIgQXVzc3RyYWhsdW5nIGF1ZiBkaWUgVG9pbGV0dGUuCk9oYW0gZXJzY2hlaW50IGltIExpY2h0IGRlciA4IFR1Z2VuZGVuLgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0LgpDaGFvc2xvcmQgc2FndDogbmEgdG9sbCBzY2hudXBmZW4KRWxiZXJldCB3aW5rdC4KRG9jZGV2aWwgZmxpZWd0IG5hY2ggTm9yZGVuLgpPaGFtIHdhbmRlcnQgaW4gdHVnZW5kaGFmdGVyIEF1c3N0cmFobHVuZyBuYWNoIE5vcmRlbi4KWmFwaG9iIHJ1ZnQ6IEljaCBfbGVzZV8gU3RpbW1lbiEKTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4KRWxiZXJldCBob3BwZWx0IG5hY2ggTm9yZGVuLgpbVG9kOkxhcnNdIEVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsIGhhdCBnZXJhZGUgRG9jZGV2aWwgdW1nZWJyYWNodC4KW1RvZDpFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbF0gUGZmZmZmZmZmZmZmdC4uLi4uLi5QTFVNUFMhCltUb2Q6TGFyc10gRWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWwgaGF0IGdlcmFkZSBPaGFtIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWxdIFBmZmZmZmZmZmZmZnQuLi4uLi4uUExVTVBTISAgICAgICAgICAgICAgIAoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDcmF6eSBCaXRjaCAoQW5vcmlzLCAxNS4gQXVnIDIwMDAsIDIzOjAyOjE5KToKRmFudGF0aXNjaGUgRnJhdWVuPyBKYXdvaGwhCmh0dHA6Ly93d3cuY3JhenktYml0Y2guY29tIChNSVQgQmluZGVzdHJpY2gpIDopCkdyZWV0aW5ncyBBbm9yaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFyZ2wgKEFub3JpcywgMTUuIEF1ZyAyMDAwLCAyMzowMjo1OCk6CkFub3JpcyBzdHJlaWNodCBlaW4gdCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVz8gKFpvb2ssIDE1LiBBdWcgMjAwMCwgMjM6NDA6NTYpOgpbQmVpbGVpZDpGcmVvbG9dIG1pc3QKW1RvZDpMYXJzXSBGcmVvbG8gaGF0IGdlcmFkZSBGcmVvbG8gdW1nZWJyYWNodC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWwgd2llZGVyIC4uLiAoTW9yZ290aCwgMTYuIEF1ZyAyMDAwLCAwODoyNTozNSk6CmF1cyBkZW0gTG9nZmlsZSBtZWluZXMgS2xlcnVzbG9nZ2VycywgdW5nZXNjaG5pdHRlbi4KW0tsZXJ1czpOb25uZV0gbW9vb29yZ2VuLCBrbGVyaWtlcnMgOykKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KW0tsZXJ1czpOb25uZV0gdHNjaGF1LCBrbGVyaWtlcnMKRmFudGFnaGlybyBmYWVuZ3Qgdm9sbGVyIFBhbmlrIGFuIHVtIEhpbGZlIHp1IHJ1ZmVuLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG5lbGxlciBhbHMgZGVyIFNjaGFsbD8/IChNb3Jnb3RoLCAxNi4gQXVnIDIwMDAsIDEwOjQ4OjU5KToKRGVpbiBGcmV1bmQgVGlhbWFrIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KCkR1IGVyd2FydGVzdCBUaWFtYWsgd2VnZW46CkNpdHJpbgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmViZW4gaW4gZGVyIEhvZWxsZS4uLiAoTWllemUsIDE3LiBBdWcgMjAwMCwgMDQ6MDQ6MTEpOgoKRHUgZml4aWVyc3QgTGFycyB1bmQgbWFjaHN0IHNjaHd1bmd2b2xsZSBCZXdlZ3VuZ2VuLiAgICAgICAgICAgICAgICAgICAgICAgICAgCkxhcnMgdGFuenQgd2llIGluIFRyYW5jZSBkdXJjaCBkaWUgR2VnZW5kLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApMYXJzIHNldWZ6dCA6ICdEaWVzZSBTcGllbGVyIG1hY2hlbiBzb3ZpZWwgVW5mdWcuJyAgICAgICAgICAgICAgICAgICAgICAgICAgICAKTGFycyB0YW56dCB3aWUgaW4gVHJhbmNlIGR1cmNoIGRpZSBHZWdlbmQuICAgICAgICAgICAgICAKCk1pZXplIC0gV3Vyc3R6YXViaQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZZSSAoQW5hdG9sLCAxNy4gQXVnIDIwMDAsIDExOjMxOjMwKToKfiMhIG9uPUFuYXRvbCBvdD05NjY1MDQ2ODQgb2c9cGFydHkKfiMhIHJuPUZvb2JhciBydD05NjY0NzAxMzkgcmc9cGFydHkKfiMhIHRpZD05NjYyNjE2ODgKR2VnZW4gVnJhaXMgTGFldXNlIGtvZW5udCBpaHIgZG9jaCBuaWNodCBhbnN0aW5rZW4gOykKCkFuYXRvbCBdOi0+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogICAgLS0tPj4+Pj4qUypUKkEqVCpJKjw8PDw8LS0tICAgIChBbmF0b2wsIDE3LiBBdWcgMjAwMCwgMTk6MjQ6MDkpOgp+IyEgcm49UWl0ZXNzIHJ0PTk2NjUzMjk5NiByZz1wYXJ0eQp+IyEgdGlkPTk2NjUzMjk5NgpXZXIgbGllc3QgQXJ0aWtlbCBtaXQgc29sY2hlciBGb3JtYXRpZXJ1bmcgc2Nob24gZ2VuYXUgZ2VudWcgdW0genUKZXJrZW5uZW4sIGRhc3MgZXMgZWluZSBTdGFtbXRpc2NoYW5rdWVuZGlndW5nIGlzdC4uLi4/CgpBbmF0b2wgbmljaHQgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICAgIC0tLT4+Pj4+KlMqVCpBKlQqSSo8PDw8PC0tLSAgICAoUWl0ZXNzLCAxNy4gQXVnIDIwMDAsIDE5OjI2OjI3KToKfiMhIHJuPUFuYXRvbCBydD05NjY1MzMwNDkgcmc9c2NobWFycm4KfiMhIHRpZD05NjY1MzI5OTYKd2VsY2hlIGZvcm1hdGllcnVuZz8KaW0gdWVicmlnZW4gc3RlaHQgZXMgc2Nob24gaW0gVElURUwsIHdlbm4gZHUgbWFsIGdlbmF1IGhpbnNjaGF1c3QuLi4KClFJKiogKGhhdCBpbSB1ZWJyaWdlbiBnZXJhZGUgZ2FyIGtlaW4gbG9jYWwgZWNobyB1bmQgaXN0IGdhbnogc2Nob2VuIHN0b2x6LApkYXNzIHNpZSBkYXMgdWViZXJoYXVwdCBsZXNiYXIgaGluYmVrb21tZW4gaGF0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogICAgLS0tPj4+Pj4qUypUKkEqVCpJKjw8PDw8LS0tICAgIChCb2luZywgMTcuIEF1ZyAyMDAwLCAxOTo0Nzo0NSk6Cn4jISBybj1RaXRlc3MgcnQ9OTY2NTMzMTg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY2NTMyOTk2CldhciBhYmVyIGluIGRlciBmYWxzY2hlbiBSdWJyaWsgLi4uIDspCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hbWkgPyAoTW9yZ290aCwgMTguIEF1ZyAyMDAwLCAxMDoyMjowMik6ClNpbHZhbmEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRWluIE9yayBrb21tdCBhbi4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdWVobHQgZXIgc2ljaCBhbmdlc3Byb2NoZW4/IChNb3Jnb3RoLCAxOC4gQXVnIDIwMDAsIDE0OjI1OjExKToKTGV1c2VsICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCltTZWhlcjpZb3JyZWwgZGVua3Q6IGFsbGVzIHBmZWlmZW4gOyldCkxldXNlbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgo6KSAoQW5vcmlzLCAxOC4gQXVnIDIwMDAsIDE0OjUwOjU2KToKW1RydmVzOlNreV0gZGFubiB3YWVyZW4gYWJlbnRldXJlciBqYSBiZW5hY2h0ZWlsaWd0IDopCltUcnZlczpQaXRmYWxsXSBhYmVudGV1cmVyIGFid2VydGVuCltUcnZlczpHYWxicmFpdGhdIEFiZW50ZXVyZXIgYXVmd2VydGVuIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndlbGNoZSBlaW5lIHdvaGx0YXQgKFB1aywgMTkuIEF1ZyAyMDAwLCAxMjo1OToyMik6CgpuYWNoIDQ4IG1pbiB1bmQgdmllbGVuIHVlYmVyZ2VoZSBUaHJlYWQgaGFiIGljaHMgZG9jaCBub2NoIGdlc2NoYWZmdCA6CgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0LgoKKmFlY2h6KgoKU293YXMgbXVzcyBuaWNodCB3aXJrbGljaCBzZWluIDspCgpQdWssIGhhdCBmdWVycyBaZWl0dW5nbGVzZW4gc2VsdGVuIHNvdmllbCBiZXphaGx0Li4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3ZWxjaGUgZWluZSB3b2hsdGF0IChTaWx2YW5hLCAxOS4gQXVnIDIwMDAsIDEzOjQyOjQ1KToKfiMhIHJuPVB1ayBydD05NjY2ODI3NjIgcmc9c2NobWFycm4KfiMhIHRpZD05NjY2ODI3NjIKV2llc28uLi4gSW4gbGV0enRlciBaZWl0IHN0ZWh0IGRvY2ggc28gZ3V0IHdpZSBuaXggbWVociBpbiBkZXIgWmVpdHVuZy4uLiBPZGVyCmhhYiBpY2ggd2lya2xpY2ggc2Nob24gc28gdmllbGUgcnVicmlrZW4gYWJiZXN0ZWxsdGU/CgogIFNpbHZhbmEgKHd1bmRlcnQgc2ljaCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhcGFnZWkgLi4gQlVHID8hPyAoQW5vcmlzLCAxOS4gQXVnIDIwMDAsIDE3OjMxOjUxKToKTnVlcm5iZXJnIGtyYWVjaHp0OiAuLi4ga3Jycm9vb2FhYSAuLi4gSGFsbG8gQW5vcmlzIHVuZCBBbm9yaXMgLi4uIAoKU3Vlc3MgOikgaXMgZGVyIGJlc29mZmVuIHVuZCBzaWVodCBtaWNoIGRvcHBlbHQ/IE9kZXIgd2FzIHNjaGF1dCBzaWNoIGRlbm4gZGVyCmFuPwoKLSBBbm9yaXMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVzIHdhbmRlbHQgenUgc3BhZXRlciBTdHVuZCA6KSAoTWVzaXJpaSwgMjEuIEF1ZyAyMDAwLCAwMTo0MzoyMyk6CkVpbiB3YWJlcm5kZXMgR2ViaWxkZSBlcnNjaGVpbnQgdXJwbG9ldHpsaWNoIHZvciBEaXIuCgpEdSBrbnVkZGVsc3QgZGVuIFdhbmRsZXIuCgpEdSBzYWd0OiBoaSBwYXRyeW4KCkRldmlsY2hlbiBzYWd0OiBtaD8KRGV2aWxjaGVuIHNhZ3Q6IHdhcnVtIHBhdHJ5bj8KTFA6IDIyNiAoMCkgTVA6IDIxMCAoMjEpCkR1IHNhZ3Q6IG51ciBzbyB3ZWlsIGRlciBkb2NoIHZvbiBwYXRyeW4gaXN0CjpzY2hhdWUKCkVpbiBXYW5kbGVyLgpNZXNpcmlpcyBEc2NoaW5uLgpbVGVhbTogTWFleGNoZW5dIERldmlsY2hlbiBzYWd0OiBvaWRhLi4uITspLgoKRGVyIFdhbmRsZXIgdmVyc2Nod2luZGV0IHVycGxvZXR6bGljaC4KRHUgc2FndDogdW5kIGRhdWVybmQgenUgbWlyIGtvbW10CkR1IHNhZ3Q6IGdlcnVlY2h0ZXdlaXNlIHNvbGwgcGF0cnluIGRlbiBtYW5jaG1hbCBmZXJuc3RldWVybiA7KQpEdSBzYWd0OiBubyBwcm9iCkRldmlsY2hlbiBzYWd0OiBhYmVyIGhpZXIga29tbXN0ZSBkdXJjaCBib2RlbiBkcmF1ZjopCkRldmlsY2hlbiBzYWd0OiBoYWIgZ3JhZCBnZXRlc3RldDopCkVpbiB3YWJlcm5kZXMgR2ViaWxkZSBlcnNjaGVpbnQgdXJwbG9ldHpsaWNoIHZvciBEaXIuCkR1IHNhZ3Q6IG1hbCBndWNrZW4KRHUgc2FndDogc2llaHN0ZSBzaXR6dCBkb2NoIHBhdHJ5biBhbSB3YW5kbGVyIDspCltBbGxnZW1laW46WnVsamluXSBFaW5lbiB2b24gZGVyIFBhbG1lIHNjaHVldHRlbG4/IDspCkRldmlsY2hlbiB2ZXJ3dXNjaGVsdCBkZXMgV2FuZGxlcnMgSGFhcmUuCltBbGxnZW1laW46U2x5Zm94XSBlaW5mYWNoOiBzY2h1ZXR0ZWwgcGFtbGUKRGV2aWxjaGVuIHNhZ3Q6IHNpZWh0IGZhc3Qgc28gYXVzOykKUGFkcmVpYyB3YW5kZXJ0IGhlcmVpbi4KCi4uLgpEZXZpbGNoZW4gdmVyd3VzY2hlbHQgUGFkcmVpYyBkaWUgSGFhcmUuCi4uLgpQYWRyZWljIHZlcnd1c2NoZWx0IERldmlsY2hlbnMgSGFhcmUuCgpEZXZpbGNoZW4gZGVua3QgICAuIG8gTyAoZ2xlaWNoIDIgcGFzOykpCgpEdSBzYWd0OiBzaWVoc3RlIDspCjpzY2hhdWUKW0JhY2NodXNqdWVuZ2VyXSBQYWRyZWljIGlzdCBqZXR6dCBlcnN0bWFsIGdlc2NoYWZmdCwgc3RlcmJlbiBpcyBhbnN0cmVuZ2VuZC4KRWluIFdhbmRsZXIuCk1lc2lyaWlzIERzY2hpbm4uCltUZWFtOiBNYWV4Y2hlbl0gRGV2aWxjaGVuIHNhZ3Q6IG9pZGEuLi4hOykuCgpQYWRyZWljIHZlcnd1c2NoZWx0IERlaW5lIEhhYXJlLgpEdSBrbnVkZGVsc3QgUGFkcmVpYy4KRGV2aWxjaGVuIGdyaW5zdCBEaWNoIGFuLgpQYWRyZWljIHNhZ3Q6IHdpZXNvIDI/CkxQOiAyMjYgKDApIE1QOiAyMTAgKDIxKQpEZXZpbGNoZW4gc2FndDogb2NoIG5peDopCkR1IHNhZ3Q6IE5hamEgUGF0cnluIHVuZCBQYWRyZWljCkR1IHNhZ3Q6IFBhdHJ5biBsZWlkZXIgbnVyIGlua29nbml0bwpNZXNpcmlpIHplaWd0IHZlcnN0ZWNrdCBhdWYgZGVuIFdhbmRsZXIuCltCYWNjaHVzanVlbmdlcl0gUGFkcmVpYyBpc3QgamV0enQgZXJzdG1hbCBnZXNjaGFmZnQsIHN0ZXJiZW4gaXMgYW5zdHJlbmdlbmQuCkVpbiBXYW5kbGVyLgpNZXNpcmlpcyBEc2NoaW5uLgpbVGVhbTogTWFleGNoZW5dIERldmlsY2hlbiBzYWd0OiBvaWRhLi4uITspLgpEZXZpbGNoZW4gbGF1c2NodCBkdXJjaCBlaW4gbWFnaXNjaGVzIEhvZXJyb2hyLgpQYWRyZWljIHNhZ3Q6IHNvLi4uIGljaCBiaW4gZGFubiBtYSB3ZWcKRGVyIFdhbmRsZXIgdmVyc2Nod2luZGV0IHVycGxvZXR6bGljaC4KUDogMjI2ICgwKSBNUDogMjEwICgyMSkKRHUgc2FndDogZ2VpbApQYWRyZWljIGtudWRkZWx0IERldmlsY2hlbiBub2NobWFsIGdhbnogbGllYi4KRGV2aWxjaGVuIGRlbmt0ICAgLiBvIE8gKGFlaDopKQpQYWRyZWljIHdpbmt0LgpEZXZpbGNoZW4gZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KUGFkcmVpYyB3YW5kZXJ0IG5hY2ggSGF1c2UuCkRldmlsY2hlbiBkZW5rdCAgIC4gbyBPICh3aWUgcGFzc2VuZDopKQpEZXZpbGNoZW4gZGVua3QgICAuIG8gTyAoMiBwYXMga29tbWVuLCAyIHBhcyB2ZXJzY2h3aW5kZW46KSkKRWluIHN0YXJrZXMgUGZlcmQsIGRhcyBlaW5lbiBSYW1tYm9jayBoaW50ZXIgc2ljaCBoZXJ6aWVodCB0cmFidCBoZXJlaW4uCkRldmlsY2hlbiBncnVlYmVsdCBlaW5lIFdlaWxlIHZvciBzaWNoIGhpbi4KRGV2aWxjaGVuIGRlbmt0ICAgLiBvIE8gKG1hY2ggaWNoIGV0eiBub2NoIHp3ZXJnZT8pCkxQOiAyMjYgKDApIE1QOiAyMTAgKDIxKQpFaW4gc3RhcmtlcyBQZmVyZCwgZGFzIGVpbmVuIFJhbW1ib2NrIGhpbnRlciBzaWNoIGhlcnppZWh0IHRyYWJ0IHdlaXRlci4KRHUgc2FndDogc2NocmVpYnN0IGR1IGVzIGluIGRpZSB6ZWl0dW5nIG9kZXIgaWNoIDspCkRldmlsY2hlbiBzYWd0OiBkdTspCkVpbiB3YWJlcm5kZXMgR2ViaWxkZSBlcnNjaGVpbnQgdXJwbG9ldHpsaWNoIHZvciBEaXIuCkRldmlsY2hlbiBnaWJ0IGRlbSBXYW5kbGVyIGVpbmVuIHRpZWZlbiB1bmQgaGluZ2VidW5nc3ZvbGxlbiBLdXNzLgpEZXZpbGNoZW4gZGVua3QgICAuIG8gTyAoZGVyIG1hZyB1bnM7KSkKCnVuZCB3YWVocmVuZCBpY2gga3VyeiBhbiBkZW0gYXJ0aWtlbCBnZWJhc3RlbHQgaGFiOgoKRGVyIFdhbmRsZXIgdmVyc2Nod2luZGV0IHVycGxvZXR6bGljaC4KRWluIFp3ZXJnIGxhZXN0ZXJ0IGxhdXRoYWxzIHVlYmVyIEVsZmVuLgpbQWJlbnRldWVyOkt1cnpsZWJpZ2VyXSBhdWYgZGVtIHdlZyB2b20gc2FuZHRpZ2VyIHp1ciBnaWxkZSBnZWh0cyBuYWNoCltBYmVudGV1ZXI6S3VyemxlYmlnZXJdIHN1ZWRvc3RlbgpEaWUgRmFocnQgZGVyIFp3ZXJnZSB2ZXJsYWV1ZnQgc28gaG9scGVyaWcsIGRhc3Mgc2ljaCBqZXR6dCBhdWNoIG5vY2ggZWluCkJpZXJmYXNzIHNlbGJzdHN0YWVuZGlnIG1hY2h0IHVuZCBoZXJ1bnRlcnJvbGx0ISBNaXQgZGVyIFJlYWt0aW9uIGVpbmVyClNjaGxhZnRhYmxldHRlIHZlcnN1Y2h0IGVpbiBad2VyZyBub2NoLCBlcyBmZXN0enVoYWx0ZW4sIGRvY2ggZXMgaXN0IHNjaG9uIHp1CnNwYWV0LiBLcmFjaGVuZCBzY2hsYWVndCBlcyBuZWJlbiBEaXIgYXVmLCBEdSBrYW5uc3QgZ2VyYWRlIGF1c3dlaWNoZW4uIERvY2gKZXMgaXN0IHp1bSBHbHVjayBuaWNodCBrYXB1dHQgZ2VnYW5nZW4uCkVpbiBncm9zc2VyIExlaXRlcndhZ2VuIGhvbHBlcnQgd2VpdGVyLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBUb3RlbmdyYWViZXJzXSBTQ0hJRUJVTkcsIGRlciBsZXR6dGUgU2NobGFnIHZvbiBLdXNjaGVsCltNb2VyZGVyOkdlaXN0IGVpbmVzIFRvdGVuZ3JhZWJlcnNdIHdhciBuaWNodCByZWdlbGdlcmVjaHQhCkVpbiB3YWJlcm5kZXMgR2ViaWxkZSBlcnNjaGVpbnQgdXJwbG9ldHpsaWNoIHZvciBEaXIuCltNb2VyZGVyOkdlaXN0IGRlcyBTZW5zZW5tYW5uc10gTkFFQ0hTVEVTIE1BTCBORUhNIElDSCBESUNIIEFVQ0ggTUlULCBTbHlmb3ghCkxQOiAyMjYgKDApIE1QOiAyMTAgKDIxKQpFaW5lIGtsZWluZSBSaWtzY2hhIGtvbW10IGhlcmVpbmdlZmFocmVuLgpMUDogMjI2ICgwKSBNUDogMjEwICgyMSkKRGVyIFdhbmRsZXIgdmVyc2Nod2luZGV0IHVycGxvZXR6bGljaC4KRGV2aWxjaGVuIGRlbmt0ICAgLiBvIE8gKGR1bWRpZHVtOikpCkVpbiB3YWJlcm5kZXMgR2ViaWxkZSBlcnNjaGVpbnQgdXJwbG9ldHpsaWNoIHZvciBEaXIuCgpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCgpNZXNpLCBhdWNoIGxhbmdzYW0gdW50ZXIgVmVyZm9sZ3VuZ3N3YWhuIGxlaWRlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvc28uLi5wZnVzY2ggYW0ga2xlaWR1bmdzc3R1ZWNrIChRaXRlc3MsIDIxLiBBdWcgMjAwMCwgMDg6Mzg6MTQpOgpEaWVzZSBlY2h0IGJheWVyaXNjaGUgS3JhY2hsZWRlcm5lIGhhZWx0IHNjaG9uIHdhcyBhdXMuIERpZXNlIEhvc24gaXN0IG5vY2gKaGFuZGdlYXJiZWl0ZXQgdW5kIGF1cyBkb3BwZWx0IGdlZ2VyYnRlbSBSaW5kc2xlZGVyIGdlbWFjaHQuCkR1IGlkZW50aWZpemllcnN0IGRpZSBMZWRlcmhvc2UuIFNpZSBiZXN0ZWh0IGF1cyBTdG9mZi4gRHUga2FubnN0IHNvbnN0IG5pY2h0cwpiZXNvbmVkZXJlcyBhbiBpaHIgZXJrZW5uZW4uCgpKYSwgd2F0dCBkZW5uIG51LCBTdG9mZiBvZGVyIGRvcHBlbHQgZ2VnZXJidGVzIFJpbmRzbGVkZXI/Pz8KClFJKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvc28gKFFpdGVzcywgMjIuIEF1ZyAyMDAwLCAxNjo1ODoyNCk6CltBbGxnZW1laW46VGhvcmFrOl0gaXJnZW5kd2VsY2hlIExlaHJlciBoaWVyPwpTaWx2YW5hICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpndXRlbiB0YWcgZnJhdSBsZWhyZXJpbi4KUUkqKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEplc3VzMjAwMCAoR2xvaW5zb24sIDIyLiBBdWcgMjAwMCwgMTg6NDQ6MTQpOgp+IyEgcm49U2lsdmFuYSBydD05NjY5NDU4MDkgcmc9d3d3Cn4jISB0aWQ9OTY2OTQ1ODA5ClBhcHN0OiBPaCwgdmVyZmwqKip0ISBFcyBpc3QgZWluZSBGcmF1IQpEb2t0b3I6IEtsZWluZXMgUHJvYmxlbS4gV2llIGFsdCBpc3QgZGVyIEZvZXR1cz8gVmllcnplaG4gVGFnZT8KCkdsb2luKHNvbikKClBTOiBOdXIgdmVyc3RhZW5kbGljaCBmdWVyIHdlbHRuYWNocmljaHRlbmludGVyZXNzaWVydGUgTXVkZGVyLgpQUFM6IEljaCBmYW5kIGFtZXJpa2FuaXNjaGUgUHJlZGlnZXIgc2Nob24gaW1tZXIgc2VociBpbm5vdmF0aXYgd2VubiBlcyB1bSBkYXMKRWluc2FtbWVsbiB2b24gR2VsZCBnaW5nISBIYWxsZWx1amFoISBQcmFpc2UgdGhlIExvcmQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYXR1ZXJsaWNoLi4uIChBbmF0b2wsIDIyLiBBdWcgMjAwMCwgMjA6MTc6NDQpOgpbS29tcGxldHRsb2VzdW5nZW46Wm9vayB1ZWJlcmdpYnQgZGllIEViZW5lIGFuIFBhcmFjZWxzdXMuXQoKLiBvIE8gKCBFcnptYWdpZXIuLi4gKQoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmF0dWVybGljaC4uLiAoR2xvaW5zb24sIDIyLiBBdWcgMjAwMCwgMjE6NDQ6MTQpOgp+IyEgcm49QW5hdG9sIHJ0PTk2Njk2ODI2NCByZz1zY2htYXJybgp+IyEgdGlkPTk2Njk2ODI2NApXaWUgaGFzdCBEdSBkZW5uIGdlZGFjaHQgd2lyZCBtYW4gc29uc3QgRU0/IDopCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3NvIChNYWdpY3R1eCwgMjIuIEF1ZyAyMDAwLCAyMjoxMToyOCk6CiAgRGVyIFNoYWl0YW4gdHJpZmZ0IERpY2ggaGFydC4KRGVyIEdlaXN0bGljaGUgc2NoYXV0IERpciB0aWVmIGluIGRpZSBBdWdlbi4KRHUgaGFzdCBzb3dhcyBuaWNodC4gICAKCk1hZ2ljVHV4LCBhbnNjaGVpbmVuZCBibGluZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOYXR1ZXJsaWNoLi4uIChTaWx2YW5hLCAyMi4gQXVnIDIwMDAsIDIyOjI0OjQ3KToKfiMhIHJuPUdsb2luc29uIHJ0PTk2Njk3MzQ1NCByZz1zY2htYXJybgp+IyEgdGlkPTk2Njk2ODI2NApJY2gga2FubiBEaXIgdmVycmF0ZW4sIHdpZSBpY2ggZGFzIGRhbWFscyBnZW1hY2h0IGhhdC4gSWNoIGdsYXViLCBSb2NodXMga2Fubgpub2NoIGhldXRlIG5lbiBMaWVkIGRhdm9uIHNpbmdlbi4uLiA7LSkKCiAgU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGF0c2FlY2hsaWNoIHZlcndpcnJ0Li4uIChUc3VuYW1pLCAyMi4gQXVnIDIwMDAsIDIzOjU2OjEwKToKVW5nZXNjaG5pdHRlbjoKClZlcndpcnJ1bmcgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKVmVyd2lycnVuZyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgotYSogKFdvb2R5LCAyMy4gQXVnIDIwMDAsIDIyOjQ2OjU1KToKW0FsbGdlbWVpbjpIYXRlXSBBSEhISCwgSWNoIGJpbiBnYW56IGFsbGVpbiwgd28gc2VpZCBpaHIgYWxsZT8/Pz8gPDA5OjU4OjUwPgpbQWxsZ2VtZWluOkhhdGVdIEtvbW10IHdpZWRlciB6dXJ1ZWNrISA8MDk6NTk6MTI+CltBbGxnZW1laW46VHN1bmFtaV0gd2FzIHdhciBsb3M/IDwyMjo0MzozMj4KCm9obmUgV29ydGUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLYWJlbGRlZmVrdCBhbSAyMy4gQXVndXN0IChEZWVwYmx1ZSwgMjQuIEF1ZyAyMDAwLCAwOTo1MTozNCk6Cn4jISBybj1IYXRlIHJ0PTk2NzA5NzU3MyByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9OTY3MDk3NTczClN0b2VydW5nc2VuZGUsIDIzLjA4LiAyMzowMCBVaHI6CkRhcyBaSUIgbWVsZGV0OgpCZXRyb2ZmZW4gd2FyIGVpbiA1MC1hZHJpZ2VzIEthYmVsLCB3ZWxjaGVzIGJlaSBCYXVhcmJlaXRlbgp6ZXJzdG9lcnQgd3VyZGUuIER1bW1lcndlaXNlIGhhdHRlIGVpbiBCYXVhcmJlaXRlciwgYmV2b3IgZGVyIFNjaGFkZW4KYmVtZXJrdCB3dXJkZSwgQmV0b24gaW4gZGllIEJhdWdydWJlIGdlZ29zc2VuLCBkYWhlciB3YXJlbiBkaWUKUmVwYXJhdHVyYXJiZWl0ZW4gbGFlbmdlciBhbHMgdWVibGljaCEgOi0oCgpRdWVsbGU6IGh0dHA6Ly93d3cubm9jLmRmbi5kZS9jZ2ktYmluL2Rmbi1ub2MvZGZubm9jZi1UVC1Ocj9UVC1Ocj0xNjMyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2FiZWxkZWZla3QgYW0gMjMuIEF1Z3VzdCAoR2xvaW5zb24sIDI0LiBBdWcgMjAwMCwgMTI6MTU6MjUpOgp+IyEgcm49SGF0ZSBydD05NjcwOTc1NzMgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTk2NzA5NzU3MwpXYXMgbWVpbnN0IER1LCB3aWUgZ3J1c2VsaWcgZGFzIGZ1ZXIgbWljaCB3YXIsIG5pY2h0IGlucyBNRyBlaW5sb2dnZW4genUKa29lbm5lbiEgSWNoIHdlcmQgbWlyIG1hbCBlaW4gcGFzc2VuZGVzIFN1cnJvZ2F0IHp1bGVnZW4gbXVlc3Nlbi4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktOQUxMIChRaXRlc3MsIDI0LiBBdWcgMjAwMCwgMjA6MzI6MjUpOgpOdW1tZXJlaW5zIHRlaWx0IERpciBtaXQ6IEF1c3BlaXRzY2hlbiEKUGF0c2NoISBWb24gdW50ZW4gaG9lcnN0IER1IGVpbmVuIFBlaXRzY2hlbmhpZWIgdW5kIGxhdXRlcyBHZWZsdWNoZS4KClNlaHIgbmV0dCwgZGEgd2FyZW4gd29obCB6d2VpIGVpbmVyIG1laW51bmcuLi4KUUkqKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogaXJjIGNoYW5uZWwgZXL2ZmZuZXQgKEFuYXRvbCwgMjQuIEF1ZyAyMDAwLCAyMDo1NjozMyk6Cn4jISBybj1RaXRlc3MgcnQ9OTY3MTQzMzczIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTY2OTMxNTgxClNpZSBtZWludCBkYXMgbmljaHQgZXJuc3Qgc2llIG1laW50IGRhcyBuaWNodCBlcm5zdCBzaWUgbWVpbnQgZGFzIG5pY2h0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTQ05SIDotKSAoQXJhdGgsIDI1LiBBdWcgMjAwMCwgMTY6Mzg6NTApOgp4eHggc2FndDogd2Vpc3N0IGR1LCB3aWUgbWFuIGRhIGhpbmtvbW10IHp1bSB3ZWdoaWVyPwp5eXkgc2FndDogZWkgc2lzY2hlcgp4eHggc2FndDogaG1tLCBoYXN0IGR1IGRlbiBzY2hvbm1hbCB1bWdlaGF1ZW4/Cnl5eSBzYWd0OiBub2UsIGFiZXIgZXIgbWljaAoKQXVjaCB3YXMgOi0pCkFyYXRoLCBraWNoZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGVoZSAoQXJhdGgsIDI1LiBBdWcgMjAwMCwgMjE6NDI6MTQpOgpaYXViaXMsIHNvIHdlaXQgaXN0IGVzIG1pdCBpaG5lbiBnZWtvbW1lbjoKCltaYXViZXJlcjpHYWxicmFpdGhdIHdhcyB3aWxsc3RlIGRlbm4gaW4gVGFyYW1pcz8KW1phdWJlcmVyOkFydW5kZWxdIGVpbmVyIHZvbiBldWNoIHdlcmRlbgpbWmF1YmVyZXI6QXJhdGhdIEFydW5kZWwgbGFzcyBlcy4uLiBrb21tIGxpZWJlciB6dSB1bnMgOikKW1phdWJlcmVyOkFyYXRoXSBkYXMgZ2FuemUgWmF1YmlwYWNrIHRhdWd0IGRvY2ggbml4Li4uIG51ciBhbSBKYW1tZXJuIGRpZQpbWmF1YmVyZXI6QXJhdGhdIFR1ZXRlbiA6KQpbdW5nZW5hbm50ZXIgWmF1YmldIHRlaWx0IERpciBtaXQ6IGhtbSAtIGF1Y2ggd2VubiBkdSByZWNodCBoYXN0IHdlcmQgaWNoClt1bmdlbmFubnRlciBaYXViaV0gdGVpbHQgRGlyIG1pdDogZGlyIGpldHp0IG5pY2h0IG9lZmZlbnRsaWNoIHp1c3RpbW1lbiA7KQoKT2huZSBXb3J0ZSA6KQoKQXJhdGgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUuIChMaWFyYSwgMjUuIEF1ZyAyMDAwLCAyMjo1MzozNik6CltUb2Q6TGFyc10gRWluIFNwcnVuZyB2b24gZGVyIEZlc3R1bmdzbWF1ZXIgaGF0IGdlcmFkZSBCaXJkeSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTcHJ1bmcgdm9uIGRlciBGZXN0dW5nc21hdWVyXSBTY2hvbm1hbCBkcmFuIGdlZGFjaHQsIGRhc3MgRHUga2VpbgpbVG9kOkVpbiBTcHJ1bmcgdm9uIGRlciBGZXN0dW5nc21hdWVyXSBWb2dlbCBiaXN0PwoKTGlhcmEsIFp3ZXJnZW56YXViZXJpbmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklkZWUgKEFub3JpcywgMjUuIEF1ZyAyMDAwLCAyMzoyMzo0Myk6CldpZSB3YWVycyB3ZW5uIG1hbiBkZW4gSyotSGFtbWVyIGVyd2VpdGVybiB3dWVyZGU/IERpZSBGdW5rdGlvbiBmaGFlbW1lciB3dWVyZAptaXIgbm9jaCBnZWZhbGxlbiA6KQotIEFub3JpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IElkZWUgKE11cGZlbCwgMjUuIEF1ZyAyMDAwLCAyMzoyNDowOSk6Cn4jISBybj1Bbm9yaXMgcnQ9OTY3MjM4NjIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY3MjM4NjIzCnByb2JpZXIgbWFsIHJoYWVtbWVyIGZyZXVuZGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSWRlZSAoQW5vcmlzLCAyNS4gQXVnIDIwMDAsIDIzOjI2OjE1KToKfiMhIHJuPU11cGZlbCBydD05NjcyMzg2NDkgcmc9c2NobWFycm4KfiMhIHRpZD05NjcyMzg2MjMKQVJHTCA6KSBNYW4gbGVybnQgamVkZW4gVGFnIGRhenUhIDopIGpldHp0IGdpYnRzIG4gQWxpISA6KQoqd2lua2UqIC0gQW5vcmlzCi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvZWg/IGdpYnMgZGEgd2FzIG5ldWVzPyA7KSAoRmxhc2gsIDI2LiBBdWcgMjAwMCwgMDI6MTU6NDYpOgpEYXJrd2luZyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpRaXRlc3MgcnVmdDogbWVpbiBTRVhMRUJFTiEKCmthcmljKndhc2thZGlzZGF2b25oYWVsdC4udHN0czspKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbm9raSBhdWYgc2NoaWxkIChOb2tpLCAyNi4gQXVnIDIwMDAsIDIyOjE0OjE1KToKU28nbiBLRUtTLi4uIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQmVyaWNodGUgKEdsb2luc29uLCAyNy4gQXVnIDIwMDAsIDAxOjU1OjA2KToKfiMhIHJuPUFyYXRoIHJ0PTk2NzMwMDMzNiByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD05NjcxODMyMzkKV2VubiBpY2ggZGFzcyBzbyB1ZWJlcmZsaWVnZSwga29tbXQgbWlyIGRpZSBBaG51bmcsIGRhc3MgZXMgaGllciBhdWNoIE1lbnNjaGVuCmdlYmVuIGtvZW5udGUgZGllIGlociBTcGllbGVyLSBvZGVyIEdpbGRlbmxldmVsIGVpbmtsYWdlbiAuLi4KCkdsb2lucyhzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDaGFvdGVuIC4uLiAoRGFya3dpbmcsIDI4LiBBdWcgMjAwMCwgMjI6MzU6MjQpOgpaaWxsZWkgdGVpbHQgRGlyIG1pdDogSHVodSA6bykgLSBzcGVuZGVzdCBEdSBiaXR0ZSBhdWNoPyA6bykKRHUgdGVpbHN0IFppbGxlaSBtaXQ6IGFyZ2ghIEhhc3QgZXMgc2Nob24gYmVpIHp3ZWkgWndlaXRpZXMgdm9uIG1pciB2ZXJnZWJsaWNoCkR1IHRlaWxzdCBaaWxsZWkgbWl0OiB2ZXJzdWNodCA6LSkpClppbGxlaSB0ZWlsdCBEaXIgbWl0OiBiZWkgbWlyIHdpcmQgZXMga2xhcHBlbiA6bykKWmlsbGVpIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCkR1IHRlaWxzdCBaaWxsZWkgbWl0OiBvaywgZGFubiBzcGVuZGUgRGlyClppbGxlaSBiZWRhbmt0IHNpY2ggYmVpIERpciBhdXMgZGVyIEZlcm5lLgoKLi4uIGd1dGVyIFRpcCwgZ2VsbGUgPyA7KQoKRGFya3dpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyBzaW5udm9sbGVzIChSb2NodXMsIDI4LiBBdWcgMjAwMCwgMjM6MTY6MTgpOgpmdWVyIG5vbm5lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWaWVsIGxvcyA6KSAoQW5vcmlzLCAyOS4gQXVnIDIwMDAsIDA5OjIzOjE4KToKU2lsYSBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIGVpbiBLYW5pbmNoZW4sIGVpbiBLYW5pbmNoZW4sIGVpbgpTaWxhIGtyYWVjaHp0OiBFaXN2b2dlbCwgZWluIFJlaGJvY2ssIGVpbiBSZWgsIGVpbiBTY2h3ZWluLCBlaW4gRmlzY2hvdHRlciwKU2lsYSBrcmFlY2h6dDogSGlwcGUsIEhpcHBlLCBIaXBwZSwgSGlwcGUsIEhpcHBlLCBMZXdzLCBlaW4gU2NobWV0dGVybGluZywKU2lsYSBrcmFlY2h6dDogTWFydmluLCBHYWxicmFpdGgsIERyYWNobm8sIEZyaWVkZWwsIE1hcnZpbiwgZWluIFNjaG1ldHRlcmxpbmcsClNpbGEga3JhZWNoenQ6IEhpcHBlLCBMZXdzLCBlaW4gU2NobWV0dGVybGluZywgS2FtdWkgdW5kIGVpbiBNdWVsbHNjaGx1Y2tlcgpTaWxhIGtyYWVjaHp0OiAuLi4KCi0gQW5vcmlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTdGFtbXRpc2NoIGluIERvcnRtdW5kIChab29rLCAzMC4gQXVnIDIwMDAsIDEwOjMxOjUxKToKfiMhIHJuPVRpYW1hayBydD05Njc2MjQyMTggcmc9dHJlZmZlbgp+IyEgdGlkPTk2NjYzODUxNgpEb3J0bXVuZCBtdXNzIGphIGVpbiBnYW56IHRvbGxlcyBQZmxhc3RlciBzZWluLiBVbmQgdm9yIGFsbGVuIERpbmdlbgpkaWUgS25laXBlbi4uLiA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFN0YW1tdGlzY2ggaW4gRG9ydG11bmQgKFRpYW1haywgMzAuIEF1ZyAyMDAwLCAxMDozMjoyMyk6Cn4jISBybj1ab29rIHJ0PTk2NzYyNDMxMSByZz1zY2htYXJybgp+IyEgdGlkPTk2NjYzODUxNgpEb3J0bXVuZCBpc3QgZGFzIGdyb2Vzc3RlIERvcmYgRGV1dHNjaGxhbmRzLgoKVGlhbWFrLiBPaG5lIFNtaWxleS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhZnVlciBlaW5sb2dnZW4gPz8/IChNb3Jnb3RoLCAzMC4gQXVnIDIwMDAsIDEzOjM2OjQ0KToKTGlhcmEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbmUgRnJldW5kaW4gTGlhcmEga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEZWluZSBGcmV1bmRpbiBMaWFyYSB0ZWlsdCBEaXIgbWl0OiBpZGxlCgpNKiB3dW5kZXJ0IHNpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFN0YW1tdGlzY2ggaW4gRG9ydG11bmQgKEhpZ2h0LCAzMC4gQXVnIDIwMDAsIDEzOjQ4OjE4KToKfiMhIHJuPVRpYW1hayBydD05Njc2MjQzNDMgcmc9c2NobWFycm4KfiMhIHRpZD05NjY2Mzg1MTYKZ2FybmljaCB3YWhyICEKCmdyb2Vzc3RlcyBEb3JmIERldXRzY2hsYW5kcyBpc3QgdW5kIGJsZWlidCBtdWVuY2hlbiwgZGEgd2lyZCBpbSB3aW5kZXIgZGVyCkJhaG5ob2Ygdm9uIDA6MDAgYmlzIDA0OjAwIGtvbXBsZXR0IHp1Z2VtYWNodCB1bmQgYXJtZSBtdWRkZXIgZGllIHp1IHNwYWV0IHZvbQpzdGFtbXRpc2NoIGtvbW1lbiBkdWVyZmVuIHNpY2ggZGVuIEEqIGFiZnJpZXJuIAoKaGlnaHQgdW5kZnJlaXdpbGxpZ2VyIHRlc3RlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU3RhbW10aXNjaCBpbiBEb3J0bXVuZCAoTGlhcmEsIDMwLiBBdWcgMjAwMCwgMTM6NTM6MDIpOgp+IyEgcm49SGlnaHQgcnQ9OTY3NjM2MDk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY2NjM4NTE2Ck9oamUsIGRhIGhhc3RlIGFiZXIgd2FzIGxvc2dldHJldGVuLCBUaWEqLgoKSW0gdWVicmlnZW4gaXN0IEJvbm4gZGFzIEJ1bmRlc2RvcmYgdWViZXJoYXVwdCB1bmQgc2VpdCBkZW0gQmVybGluLVVtenVnIHdpcmRzCmltbWVyIHNjaGxpbW1lci4gOy0oCgpMaWFyYSwgWndlcmdlbnphdWJlcmluZSwgd2lsbCBkaWUgQm90c2NoYWZ0ZW4gd2llZGVyaGFiZW4gdW5kIGRpZSBCdWxsZW4gdW5kCnVlYmVyaGF1cHQgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU3RhbW10aXNjaCBpbiBEb3J0bXVuZCAoRWxiZXJldCwgMzAuIEF1ZyAyMDAwLCAxMzo1NTo1MSk6Cn4jISBybj1MaWFyYSBydD05Njc2MzYzODIgcmc9c2NobWFycm4KfiMhIHRpZD05NjY2Mzg1MTYKQWxzbyBtaXQgS05laXBlbiBoYWJlbiB3aXIgaGllciBpbiBBYWNoZW4gbmljaHQgc28gZGFzIFByb2JsZW0gYW5zb25zdGVucyBpc3QKZWNodCBuZW4gS3VoZG9yZiA7KQoKQWJlciBLbmVpcGVuIHNpbmQgamEgZGFzIHdpY2h0aWdzdGUKCkVsYmVyZXQgZ2VodHMgaW4gQWFjaGVuIGd1dCA7KSAobm9jaCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9pIGlzIGRhIHdlciBiZWxlaWRpZ3QgLG8pIChIaWdodCwgMzAuIEF1ZyAyMDAwLCAxNTo0MzoxMik6CltBbGxnZW1laW46TG9sbGldIGVoIHN1cGVyIGVoIDotKS4gb2ssIGljaCBzZWggc2Nob24uIGljaCBuZWhtIHRyb3R6ZGVtIGxlaWJlcgpbQWxsZ2VtZWluOkxvbGxpXSBmcmVpYmxlaSBzdGF0dCBmcmVpYmllciA6LSkKRnJlaWJpZXIgZ2VodCBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KCmhpZ2h0IGdyaW5zZW5kIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa2VpbmUgd2FmZmU/IChGcmllZGVsLCAzMC4gQXVnIDIwMDAsIDE3OjQ0OjQyKToKCnVudCBkcmFjaGVuc2NoaWxka3JvZXRlCj4gRGllc2UgZ2V3YWx0aWdlIERyYWNoZW5zY2hpbGRrcm9ldGUgaXN0IGR1cmNoIGlocmVuIGRpY2tlbiBQYW56ZXIKd2FocnNjaGVpbmxpY2gga2F1bSB2ZXJ3dW5kYmFyLiBTaWUgc2llaHQgc2VociBrcmFlZnRpZyBhdXMgLSBEdQpzb2xsdGVzdCBzaWUgYWxzbyBiZXNzZXIgbmljaHQgYW5ncmVpZmVuIG9kZXIgYWVyZ2VybiwgaW5kZW0gRHUKei5CLiB1ZWJlciBzaWUgcnVlYmVyIGxhZXVmc3QuLi4KU2llIGlzdCBhYnNvbHV0IGZpdC4KU2llIHRyYWVndCBiZWkgc2ljaDoKRWluIE1lc3Nlci4gKDEzOSkKRWluIEt1ZWNoZW5tZXNzZXIuICgyKQpFaW4gTWVzc2VyLiAoMikKRWluIE1lc3Nlci4KYmxvY2tlIERyYWNoZW5zY2hpbGRrcm9ldGUKRGllIERyYWNoZW5zY2hpbGRrcm9ldGUgYmVzaXR6dCBrZWluZSBXYWZmZSEKCgphcm1lIGtyb2V0ZSA7LSkKCkZyaWVkZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTdGFtbXRpc2NoIGluIERvcnRtdW5kIChXYXJnb24sIDMwLiBBdWcgMjAwMCwgMTc6NTA6NTIpOgp+IyEgcm49TGlhcmEgcnQ9OTY3NjM2MzgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY2NjM4NTE2CiJEZXIgS2FuemxlciBpc3QgZGEuIER1IGZ1ZWhsc3QgRGljaCBzaWNoZXIuIiBvZGVyIHdpZT8gOikKICBXYXJnb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFN0YW1tdGlzY2ggaW4gRG9ydG11bmQgKE11cGZlbCwgMzAuIEF1ZyAyMDAwLCAyMjo0MToyMyk6Cn4jISBybj1UaWFtYWsgcnQ9OTY3NjI0MzQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY2NjM4NTE2CldpZXNvIGRhcz8gaXN0IG1pciBuaWUgYXVmZ2VmYWxsZW4uLi4KCi1tdXBmZWwtLiBtaXQgendlaSBzdHJpY2hlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGV5ISA6KSAoU2t5LCAzMC4gQXVnIDIwMDAsIDIzOjE5OjU1KToKICAuLi4uLmV4dHJhL0thbXBmdHJpdHQuLiBCci5kLlNjaHdlcnRtIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSB2ZXJmZWhsdAogIC4uLi4uZXh0cmEvRWxsYm9nZW5zY2hsIEJyLmQuU2Nod2VydG0gOiBEaWNoLi4uLi4uLi4uICoqUCoqKioqIDwtIHZlcmZlaGx0CiAgLi4uLi5leHRyYS9Lb3Bmc3Rvc3MuLi4gQnIuZC5TY2h3ZXJ0bSA6IERpY2guLi4uLi4uLi4gKipQKioqKiogPC0gdmVyZmVobHQKICAuLi4ubm9ybWFsL0hhZW5kZW4uLi4uLiBCci5kLlNjaHdlcnRtIDogRGljaC4uLi4uLi4uLiAqKlAqKioqKiA8LSB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvSGFlbmRlbi4uLi4uIEJyLmQuU2Nod2VydG0gOiBEaWNoLi4uLi4uLi4uICoqUCoqKioqIDwtIHZlcmZlaGx0CkRlciBCcnVkZXIgZGVzIFNjaHdlcnRtZWlzdGVycyBiZXNpdHp0IGtlaW5lIFdhZmZlLCBkaWUgRHUgdW50ZXJsYXVmZW4Ka29lbm50ZXN0LgoKaXNzIGphIHdhcyBnYW56IG5ldWVzIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1ldHplbG4gaW4gZGVyIEdsYWRpYXRvcmVuc2NodWxlIChab29rLCAzMC4gQXVnIDIwMDAsIDIzOjU2OjMxKToKfiMhIG9uPVpvb2sgb3Q9OTY3NjcyNTUxIG9nPWQucG9sYXIKfiMhIHJuPVRzdW5hbWkgcnQ9OTY3NjcyNTE0IHJnPWQucG9sYXIKfiMhIHRpZD05Njc2NzI1MTQKWm9vayBmcmFndCBzaWNoLCBvYiBkYXMgZGllIHJpY2h0aWdlIFJ1YnJpayBpc3QgdW5kIGRpZSBHbGFkaWF0b3JlbiBudW4KZnJpZXJlbiBtdWVzc2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1ldHplbCBpbiBkZXIgR2xhZGlhdG9yZW5zY2h1bGUgbm9jaCB0b2VsbGVyIChab29rLCAzMC4gQXVnIDIwMDAsIDIzOjU3OjEwKToKfiMhIHJuPVRzdW5hbWkgcnQ9OTY3NjcyNjA1IHJnPWQud3Vlc3RlCn4jISB0aWQ9OTY3NjcyNjA1Clpvb2sgbWVpbnQ6IEphLCBoaWVyIHBhc3N0IGVzIGJlc3Nlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWV0emVsIGluIGRlciBHbGFkaWF0b3JlbnNjaHVsZSBub2NoIHRvZWxsZXIgKFRzdW5hbWksIDMwLiBBdWcgMjAwMCwgMjM6NTg6MzYpOgp+IyEgcm49Wm9vayBydD05Njc2NzI2MzAgcmc9c2NobWFycm4KfiMhIHRpZD05Njc2NzI2MDUKSmFqYSwgaWNoIHdpbGwgZGEgJ3J1YnJpayBkLnd1ZXN0ZScgbWFjaGVuLCBiaW4gYWJlciBpbiBHZWRhbmtlbiBuYXR1ZXJsaWNoCmluIFBvbGFyIHVuZCBkYSBzY2hyZWlidCBtZWluIFVudGVyYmV3dXNzdHNlaW4gaGFsdCBkZW4gZmFsc2NoZW4gVGV4dCA6KQomJgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFlbWxpY2hlciBRdWVzdHNjcm9sbC4uLi4gKE5ldm9rLCAzMS4gQXVnIDIwMDAsIDAwOjMyOjMzKToKWmF1YmVyZXI6TGx5c3RyYXRoZSBNYWdpcnVzIGhhdCBkaWUgR2lsZGVuLUF1ZmdhYmU6ICdXZXJkZSBPYmVyZ2xhZGlhdG9yJwpaYXViZXJlcjpMbHlzdHJhdGhlIGdlbG9lc3QuIApBYmVudGV1ZXI6UXVlc3QgTWFnaXJ1cyBoYXQgZ2VyYWRlIGVpbiBBYmVudGV1ZXIgYmVzdGFuZGVuOiBXZXJkZQpBYmVudGV1ZXI6UXVlc3QgT2JlcmdsYWRpYXRvciAKRmFuZmFyZW4gc2NoYWxsZW4gdm9uIGRlciBBcmVuYSBoZXJ1ZWJlci4gTWFnaXJ1cyBoYXQgYWxsZQpHbGFkaWF0b3JlbiBiZXNpZWd0IHVuZCB0cmFlZ3QgZm9ydGFuIGRlbiBUaXRlbCAnT2JlcmdsYWRpYXRvcicuCgpHbmFhYWFhYWFhYWFhCgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhhIC4uLi4gKEFuYWNyaW9uLCAzMS4gQXVnIDIwMDAsIDAxOjExOjMxKToKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogZ25hIHp1IGJsb2VkZSBuZSBtYWlsIHp1IGZvcndhcmRlbiBzb3JyeQpEZWluZSBGcmV1bmRpbiBMaWFyYSB0ZWlsdCBEaXIgbWl0OiBuYWNodApTbHlmb3ggICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhICAgIAoKLi4gUGVyc29uYWx1bmlvbiA/CgpBbmFjKiAtIGZyYWd0IHNpY2gsIG9iIGVyIHJpY2h0aWcgaGluZ2VndWNrdCBoYXQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoSW1kYSwgMzEuIEF1ZyAyMDAwLCAwMzoxMzo0MSk6Ckt1cnpsZWJpZ2VyIHNhZ3Q6IGlzdCBoYWx0IHNjaG9uIG5lIGV3aWdrZWl0IGhlciBkYXNzIGljaCBpbiBuZXNrYXlhIHdhcgpLdXJ6bGViaWdlciBzYWd0OiB1bmQgaWNoIG1hZyBuaWNodCBtaXQgZGVyIGJhbnNoZWUgdW0gZGllIHdldHRlIGxhdWZlbiAKS3VyemxlYmlnZXIgc2FndDogPEhpY2s+IQpLdXJ6bGViaWdlciBnZWh0IG5hY2ggTm9yZGVuLgoKW1RvZDpMYXJzXSBFaW5lIEJhbnNoZWUgaGF0IGdlcmFkZSBLdXJ6bGViaWdlciB1bWdlYnJhY2h0LiAKW1RvZDpFaW5lIEJhbnNoZWVdIFlJSUlpaWlpaWFrLVlhay1JSWlpaWlpQUFLS1lZaWlhYWFhS0tLICEhISEgCgpobW0uLi4uCgpJbWRhLiBJZGxlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldHQgOikgKEdyZWxsZ2VuLCAzMS4gQXVnIDIwMDAsIDIzOjQ1OjA0KToKRHUgdGVpbHN0IFRpbGx5IG1pdDogQnVnIDopClRpbGx5IGlzdCBnZXJhZGUgbmljaHQgZGE6IGRlYnVnZ2VuCgpQcm9tcHRlciBTZXJ2aWNlIG9kZXIgd2FzPyBJc3QgbWFuIGphIGdhciBuaWNodCBnZXdvaG50ICpodXN0KiA6LSkKCkdyZWxsZ2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobXBmIGtvbWlzY2hlciBodW1vciBwYXJhKiAoSGlnaHQsICAxLiBTZXAgMjAwMCwgMDE6NDM6MjYpOgpndXRlciByYXQgLi4uIGdyZWlmdCBwYXJhJ3MgbnBjcyBuaWNodCBhbiAuLi4gCm1hbiBkYXZvbiBlaW5lbjoKCmVpbmVuIHRvZCBtZWhyIAoKdW5kIGZvbGdlbmRlcyAtPgoKdW50IHRoYXJhbW9uClZvciBEaXIgc3RlaHQgZWluIHNjaGVpbmJhciBnYW56IG5vcm1hbGVyIE1lbnNjaCAtIHp1bWluZGVzdCBhdWYgZGVuIGVyc3RlbgpCbGljay4gRG9jaCB3ZW5uIER1IGluIHNlaW5lIEF1Z2VuIHNjaGF1c3QsIGVya2VubnN0IER1IGRvcnQgZWluZSBXZWlzaGVpdCwKd2llIER1IHNpZSBiaXNoZXIgZmFzdCBuaXJnZW5kd28gZ2VzZWhlbiBoYXN0LgoxMDAgUHJvemVudApFciB0cmFlZ3QgYmVpIHNpY2g6CkVpbiBTYWV1cmVzcGVlci4KNDY4IE11ZW56ZW4uCkVpbmUgU3BpdHpoYWNrZS4KRWluIEJsdXRzdGVpbi4KRGVyIFVtaGFuZyBkZXMgZHJha29uaXNjaGVuIE9iZXJwcmllc3RlcnMuCkVpbmUgS3Jpc3RhbGxrcm9uZS4KRWluIGJsYXUtYnJhdW5lciBZcmRzdGVpbi4KRWluZSBNdW5kaGFybW9uaWNhLgpFaW4gS3J1ZWNrc3RvY2suCkVpbmUgRGlkZGwtS251ZGRlbC1NYXVzLiAoMikKRWluIENoYW9zYmFsbC4KRWluZSBIb2x6YnVlcnN0ZS4KRWluIGR1bmtlbGJyYXVuZXIgWXJkc3RlaW4uCkRlciBTdGVpbiBkZXMgRmV1ZXJzLgpFaW4gUmluZyBkZXIgSW50ZWxsaWdlbnogKCsyKS4KRWluIFNjaGxlaWZzdGVpbi4KRWluZSBzY2h3YXJ6ZSBLZXR0ZSBtaXQgU2NoYWVkZWxhbmhhZW5nZXIuCkVpbiBTY2hhbC4KRWluIGRyZWllY2tpZ2VyIEVpc2Vuc2NoaWxkLgpFaW4gYGBCb3JuIHRvIEtpbGwnJy1TdGlybmJhbmQuLgpFaW5lIEVyZGJlZXJlLgpFaW5lIG1hZ2lzY2hlIFNvbm5lbnVoci4KRWluIEZldWVyYW11bGV0dC4KRWluIFNjb3JlYW11bGV0dC4KRWluIG1lcmt3dWVyZGlnZXMgZ3J1ZW4tYmxhdWVzIE9iamVrdC4KRWluIFBhYXIgQWRhbWFudHNjaHVoZS4KRWluIFBhYXIgRW5nZWxzZmx1ZWdlbC4KRWluIEdyYW1tIExpYmFuZXNlLgpFaW4gQ2hhb3NiYWxsIChwdWxzaWVyZW5kKS4KRWluZSBicmVubmVuZGUgSG9zZS4KRWluIEhhbmRzcGllZ2VsLgpFaW5lIHdpbGRlIFJvc2Ugdm9uIEhpZ2h0LgpFaW4ga2xlaW5lcywgd2Vpc3NlcyBTY2hhZiBuYW1lbnMgJ0hhbW1lbCcuCkRyYWNoZW5rbGF1ZW4uCkVpbiBGbGFtbWVucGFuemVyLgpFaW4gV2FmZmVuZ3VlcnRlbC4KRWluZSBHZWxkYm9lcnNlIG1pdCA1MzMzNiBNdWVuemVuLgpFaW4gU2NobGVpbWJldXRlbC4KRWluIGdlbGJlcyBQb3N0cGFrZXQgKGdlb2VmZm5ldCkuCkVpbmUgU2NoYXVmZWwuCkVpbiBTZWlsLgpEZXIgR3VlcnRlbCBkZXIgTWFnaXN0ZXIgKGFuZ2V6b2dlbikuCgoKaGlnaHQgdWViZXJsZWdlbmQgd2llIGVyIHNlaW4gZ2VydWVtcGVsIHdpZWRlcmJla29tbXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndpZSBpbW1lciB1bmdlc2Nobml0dGVuIChUc3VuYW1pLCAgMS4gU2VwIDIwMDAsIDAyOjA5OjI3KToKPiB0cmlua2UgdHJhbmsKRHUgdHJpbmtzdCBkZW4gVHJhbmsgdW5kIGZ1ZWhsc3QsIHdpZSBEaWNoIGVpbmUgaW5uZXJlciBXYWVybWUgZHVyY2hmbHV0ZXQuCkRpZXNlIFdhZXJtZSBicmVpdGV0IHNpY2ggcmFzYW50IGluIERlaW5lbSBLb2VycGVyIGF1cywgdW5kIER1IHNwdWVyc3QsIHdpZQpldHdhcyBtaXQgRGlyIGdlc2NoaWVodC4KRGllIGtsZWluZSBQaGlvbGUgbG9lc3Qgc2ljaCBhdWYuCkRpZSBIeWRyYSBlcmhlYnQgc2ljaCBhdXMgZGVtIFRhbCBkZXIgTHVwaW5lbi4KClAuUy4gZGVyIFRyYW5rIGhhdCBndXQgZ2VzY2htZWNrdCA6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5lZSBpcyBrbGFyLi4uIChEYXJrd2luZywgIDEuIFNlcCAyMDAwLCAwNjowNToxOSk6CmVpbiBGZWhsZW5kZSBBdXNnZWdsaWNoZW5oZWl0IHZlcnN1Y2h0IGtyYW1wZmhhZnQsIERpZWRlcnMgUmVubnNjaGxpdHRlbgphdWZ6dWhlYmVuLiBFcyBzY2hlaW50IGtsZXB0b21hbiB2ZXJhbmxhZ3QgenUgc2Vpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3aWUgaW1tZXIgdW5nZXNjaG5pdHRlbiAoQ2F0d2VhemxlLCAgMS4gU2VwIDIwMDAsIDA4OjQ5OjMxKToKfiMhIHJuPVRzdW5hbWkgcnQ9OTY3NzY2OTY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY3NzY2OTY3Ckx1c2NoZW4uCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhtcGYga29taXNjaGVyIGh1bW9yIHBhcmEqIChBbmF0b2wsICAxLiBTZXAgMjAwMCwgMTE6MDE6MDApOgp+IyEgcm49SGlnaHQgcnQ9OTY3NzY1NDA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY3NzY1NDA2Cldlbm4gRHUgVGhhcmFtb24gaGFzdCBhbmdlZ3JpZmZlbiwgd2FocmxpY2ggaGFzdCBEdSBuaWNodHMgYmVncmlmZmVuIDpvKQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2FueiBzY2hvZW4gZXJtdWVkZW5kLCBkZXIgQmVuKiAoTW9yZ290aCwgIDEuIFNlcCAyMDAwLCAxMTozMDowMCk6CkJlbmRlaWdpZCBydWZ0OiBadWdnZXJzY2huZWNrc2NoZSEKW1RvZDpMYXJzXSBWb2VsbGlnZSBFcnNjaG9lcGZ1bmcgaGF0IGdlcmFkZSBPaGFtIHVtZ2VicmFjaHQuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBobXBmIGtvbWlzY2hlciBodW1vciBwYXJhKiAoSGlnaHQsICAxLiBTZXAgMjAwMCwgMTQ6MDU6NDUpOgp+IyEgcm49QW5hdG9sIHJ0PTk2Nzc5ODg2MCByZz1zY2htYXJybgp+IyEgdGlkPTk2Nzc2NTQwNgptZWluIGtlcmJob2x6IHNhZ3QgZGVyIHN0dXBzdCAubykgZGFzIGRlciBtZWluZW4gc2Nocm90dCBlaW5zYW1tdCBrb25udGUgaWNoCmphIG5ldCBhaG5lbiAubykKCmhpZ2h0IGltbWVybm9jaCBsZWljaHQgZ3J1bW1saWNoIHVuZCBhdWYgbmVuIGNyYXNoIGhvZmZlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaG1wZiBrb21pc2NoZXIgaHVtb3IgcGFyYSogKExpYXJhLCAgMS4gU2VwIDIwMDAsIDE0OjEzOjQ1KToKfiMhIHJuPUFuYXRvbCBydD05Njc3OTg4NjAgcmc9c2NobWFycm4KfiMhIHRpZD05Njc3NjU0MDYKRXIgaXN0IEthZW1wZmVyLCB3YXMgZXJ3YXJ0ZXN0IER1IGRlbm4sIEFuYXRvbD8KCkxpYXJhLCBad2VyZ2VuemF1YmVyaW5lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmbHcgPyAoVHJhdW1hLCAgMS4gU2VwIDIwMDAsIDE5OjE2OjU5KToKQ29ubmVyIHRlaWx0IERpciBtaXQ6ICpHKgpbVG9kOkxhcnNdIEVpbiBNYW5uIGhhdCBnZXJhZGUgQ29ubmVyIHVtZ2VicmFjaHQuCgpUcmF1bWEsIGZyYWd0IHNpY2ggd2FzIENvbm5lciBpbiBVbG0genUgRXNzZW4gYmVrb21tdCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChEaWVkZXIsICAxLiBTZXAgMjAwMCwgMTk6MzI6MDcpOgpLaXRvbiBzYWd0OiBuYWphLi4genVyIHNzcC4uIGFiZXIgamV0enQgd2VyZCBpY2ggaW4gZGVyIHp3ZXJnZW5zdGFkdCBnZWJyYXVjaHQKS2l0b24gc2FndDogOykKCndlbmlnIHNwYWV0ZXIuLi46CgpbVG9kOkxhcnNdIEVpbiBXYWVjaHRlciBkZXIgWndlcmdlbmZlc3R1bmcgaGF0IGdlcmFkZSBLaXRvbiB1bWdlYnJhY2h0LgoKU2NoZWludCBzbywgYWxzIGhhZXR0ZSBpaG4gTGFycyBnZWJyYXVjaHQgOikKCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVkxhbmQgLSB0c3RzdHMuLi4gKEFoYWIsICAxLiBTZXAgMjAwMCwgMjE6Mzk6MjMpOgpXZXIgaGF0IGRlbmVuIGRlbm4gX2Rhc18gYmVpZ2VicmFjaHQ/ICpnKgoKRGVyIFdlZ2VsYWdlcmVyIGZyYWd0OiBBaGFiLCB3ZW5uIER1IG1pciBuaWNodCBzb2ZvcnQgbWlyIGVpbmUgRXh0cmFoYW5kCnVlYmVyZ2lic3QsIGRhbm4gdG9ldGUgaWNoIGRpY2ghCkRlciBSYWV1YmVyIHZlcnN1Y2h0LCBkaXIgZGVpbmUgV2FmZmUgenUgZW50cmVpc3Nlbi4KCkFoYWIsIGFtdWVzaWVydC4KClAuUy46IERpZSB0eXBvcyBzaW5kIG5pY2h0IHZvbiBtaXIuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUcmVmZmVyISAoWm9vaywgIDEuIFNlcCAyMDAwLCAyMjozNDowMik6Cls8TWFzdGVSPjpab29rIHJlaWNodCBUaWFtYWsgZWluIEdld2Voci5dCls8TWFzdGVSPjpUaWFtYWsgbmltbXQgZXMgZGFua2VuZCBhbiB1bmQgemllbHRdCls8TWFzdGVSPjpCYW1iaV0gZWluIGxldHp0ZXMgd29ydCBub2NoLi4uCls8TWFzdGVSPjpUaWFtYWtdIFF1YXJrLiBEaWUgbmFlY2hzdGUgRXRhcHBlIHNpbmQgZGllIDEwMGQuCls8TWFzdGVSPjpUaWFtYWsgZHJ1ZWNrdCBhYl0KQmFtYmkgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KQmFtYmkgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCls8TWFzdGVSPjpWYW5pb25dIGFiZXIgZXJzdCBuYWVjaHN0ZSBSdW5kZSwgb2Rlcj8KQmFtYmkgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgpCYW1iaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpMZWlibml6IGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCls8TWFzdGVSPjpCYW1iaV0gZGFua2UuCkFyaWEgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KWzxNYXN0ZVI+Olpvb2tdIGh1aWkuLi4gbnUgaGFzdGUgaWhuIHJ1YXNnZXNjaG9zc2VuIDspClRpYW1hayBzY2huaXBwdCBtaXQgZGVuIEZpbmdlcm4uCltUb2Q6TGFyc10gVGlhbWFrIGhhdCBnZXJhZGUgQmFtYmkgdW1nZWJyYWNodC4KW1RvZDpUaWFtYWtdIEdldHJvZmZlbiEKS2FkYWJyYSBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uCk1hZ2ljdHV4IGdyaW5zdCBUaWFtYWsgYW4uCls8TWFzdGVSPjpab29rIHNjaHJlaXQgbGF1dCBhdWYhXQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp1IEJlZmVobCEgKEh1bW5pLCAgMi4gU2VwIDIwMDAsIDE0OjA1OjA5KToKTGlhcmEgcnVmdDogU0NIUkVJQlQgTUVIUiBBUlRJS0VMIQoKU2Nob24gcGFzc2llcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW0uLi4gKE1hZ2ljdHV4LCAgMy4gU2VwIDIwMDAsIDAwOjE5OjM5KToKRnJhdWVuUG93ZXIuICBbIF0gICAgRWxiZXJldCAgICggIDEpIE5hLCB3YXMgd29obD8hCgpNYWdpY1R1eCwgZXMgaXJnZW5kd2llIGtvbWlzY2ggZmluZGVuZCwgZGFzcyBFbGJlcmV0IG1hZW5ubGljaCBpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBobW0uLi4gKE5ldm9rLCAgMy4gU2VwIDIwMDAsIDAwOjIzOjExKToKfiMhIHJuPU1hZ2ljdHV4IHJ0PTk2NzkzMzE3OSByZz1zY2htYXJybgp+IyEgdGlkPTk2NzkzMzE3OQpFbGJlcmV0IGlzdCBFbGYsIGRlciBkYXJmIGF1ZiBkZXIgRWJlbmUgc2Vpbi4uLmhhdCBzY2hvbiBzZWluZSBSaWNodGlna2VpdAoqZHVjayoKCk5ldm9rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGhtbS4uLiAoQXBvbGxvbmlhLCAgMy4gU2VwIDIwMDAsIDEzOjE2OjIwKToKfiMhIHJuPU5ldm9rIHJ0PTk2NzkzMzM5MSByZz1zY2htYXJybgp+IyEgdGlkPTk2NzkzMzE3OQpFaW5lIHZlcmhpbmRlcnRlIEhhcmRjb3JlLUVtYW56ZSBoYWx0IDtvKQoKQXBvKiAoZ3JpbnNlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogUG9saXplaSAoTGlhcmEsICA0LiBTZXAgMjAwMCwgMTQ6Mjg6NDMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk2ODA2NDg1NSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk2NzY2MDkxNwpNZW5zYWVzc2VuIEVTU0VOIGlzdCBzY2hsaW1tZXIuIDstKQoKTGlhcmEsIFp3ZXJnZW56YXViZXJpbmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW1hcnlsbGlzLCAgNS4gU2VwIDIwMDAsIDAxOjA4OjI0KToKW1NlaGVyOldlYXRoZXJ3YXhdIGhhdCBlaW5lciBkaWUgaHlkcmEgaW0gYmxpY2s/Cgp3ZW5pZyBzcGFldGVyLi4uCgpbVG9kOkxhcnNdIEVpbiBIeWRyYWtvcGYgaGF0IGdlcmFkZSBXZWF0aGVyd2F4IHVtZ2VicmFjaHQuCltUb2Q6ZWluIEh5ZHJha29wZl0gaHNzc3NzcwoKdGphLCBlciBoYXR0ZSBzaWUgd29obCBuaWNodCBpbSBCbGljayAoZHJ1bSBoYXQgZXIgd29obCBhdWNoIGdlZnJhZ3QgOi0pKQoKQW1hKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhZXR0ZSBlciBtYWwgYmVzc2VyIGF1ZmdlcGFzc3QhIChDaW5kZXJlbGxhLCAgNS4gU2VwIDIwMDAsIDExOjAyOjMwKToKU2VoZXI6V2VhdGhlcndheCBoYXQgZWluZXIgZGllIGh5ZHJhIGltIGJsaWNrPwpUb2Q6TGFycyBFaW4gSHlkcmFrb3BmIGhhdCBnZXJhZGUgV2VhdGhlcndheCB1bWdlYnJhY2h0LgpUb2Q6ZWluIEh5ZHJha29wZiBoc3Nzc3NzCgpDaW5kZXJlbGxhICpzY2h1ZXR0ZWx0IGltbWVyIG5vY2ggZGVuIEtvcGYqIDspKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRGVlcGJsdWUsICA1LiBTZXAgMjAwMCwgMjA6MjU6NDkpOgpVbmdlc2Nobml0dGVuOiAKWzxNYXN0ZVI+OlZhbmlvbl0gdXAKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBEYXMgTVVEIGxhZXVmdCBqZXR6dCA2MSBUYWdlLCA0IFN0dW5kZW4sIDcgTWludXRlbiB1bmQgNDMKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBTZWt1bmRlbi4gRXMgc2luZCBtb21lbnRhbiA5NSBTcGllbGVyIGVpbmdlbG9nZ3Q7IGRhcwpbPE1hc3RlUj46PE1hc3RlUj5dIE1heGltdW0gbGFnIGhldXRlIGJlaSAxMDQgdW5kIGRlciBSZWtvcmQgYmlzaGVyIGlzdCAxNzQuCltBbGxnZW1laW46QW5hY3Jpb25dIGh1aHUgbXVkcm9sbGkKWzxNYXN0ZVI+OlZhbmlvbl0gbWlzdC4KW1RvZDpMYXJzXSBFaW5lIFp5YW5rYWxpa2Fwc2VsIGhhdCBnZXJhZGUgVmFuaW9uIHVtZ2VicmFjaHQuCgpTZWxic3Rtb3JkIHdlZ2VuIHVwdGltZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdlc3VuZGhlaXQgOikgKE5penpsLCAgNS4gU2VwIDIwMDAsIDIyOjQ0OjI5KToKZWJlbiBpbiBkZXIgYWJlbnRldXJlcmdpbGRlOgoKQnJhbndlbiBuaWVzdC4KQnJhbndlbiBsb2VzdCBzaWNoIGluIGVpbmVtIFdpcmJlbHN0dXJtIGF1Zi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbGxhaG9sbCAoSW1kYSwgIDYuIFNlcCAyMDAwLCAwMTowNjo1Myk6CkJvZXMgZ2VzY2huaXR0ZW4sIHZlcnN0dWVtbWVsdCwgdW5kIGF1cyBkZW0gWnVzYW1tZW5oYW5nIGdlcmlzc2VuOgoKCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IEljaCB3YXIgbnVyIGluIGRlciBCYWVyZW5ob2VobGUsIGVocmxpY2guCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IFVuZCBoYWIgZGEgMy0xMSBCaWVyIGdldHJ1bmtlbi4KRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogT2RlciBzby4KCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IEljaCBncmluc2UgbmljaHQsIGljaCBiZXJlaXRlIG1pY2ggYXVmIGRlbgpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBTY2hsYWYgdm9yLCBpbSBTY2hsYWYgbXVzcyBtYW4gZ3JpbnNlbiwgc29uc3QKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogd2lyZCBtYW4gdm9uIGRlbiBTY2hsYWZtb25zdGVybiBuaWNodApEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBlcm5zdGdlbm9tbWVuLgpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBVbmQgd2VubiBtYW4gdm9uIGRlbiBTY2hsYWZtb25zdGVybiBuaWNodApEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBlcm5zdGdlbm9tbWVuIHdpcmQsIGtsYXVlbiBkaWUgZWluZW0gZGFzCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IEJpZXIuCgoKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogRWluIEJpZXIgZGFzIHN0YW5kIGFtIFN0cmFzc2VucmFuZCwgenUKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogbG9lc2NoZW4gbWFuY2hlciBMZXV0ZXMgQnJhbmQuCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IEVzIHN0YW5kIGdhbnogZWluc2FtIGRvcnQgaGVydW0sIHVuZCBkYWNodGUsCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IG1lbnNjaCwgZGFzIGlzdCBkb2NoIGR1bW0sCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IEtlaW4gTWVuc2NoIGlzdCBoaWVyLCB3aWxsIG1pY2ggdHJpbmtlbiwgaWNoCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IEJpZXIsIGpldHp0IGlzdCBkYXMgUmVpbXNjaGVtYSBhdWNoIG5vY2ggaGluLApEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiB3aWxsIG1pY2ggaGFiZW4gZGVubiBrZWluZXIgZHJpbj8KTGlhcmEgcnVmdDogRWxiaSB0dSB3YXMKRGVpbiBGcmV1bmQgRWxiZXJldCByb3RmbHQgYXVzIGRlciBGZXJuZS4KRWxiZXJldCBydWZ0OiBkZXIgaXN0IGRpY2h0LCBkYSBpc3QgbmljaHRzIHp1IG1hY2hlbiA7KQoKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogSW4gc2VpbmVtIEtvcGYgdW5kIGRlciB0dXQgd2VoIGRlbmt0IHNpY2ggZGFzCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IEJpZXIsIGRhcyBpc3Qgb2suCgpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBNaXQgZGVuIEZpbmdlcm4gdGlwcGVuIGthbm4gZWluIGplZGVyLCB1bmQKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogaWNoIG1laW4sIHNvZ2FyIGVpbiBXZWJlci4gVW5kIHdlbm4gZXIgZGFzCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IG5pY2h0IHR1ZW4ga2FubiwgdGlwcGVuIHdlaHR1dCBiYWxkIHNvZGFubi4KCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IFRoZSBzaHJlZGRlciBraWxsZWQgdGhlIGNhdCwgYnV0IEkgdGhpbmssIGl0CkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IHdhcyB0b28gZmF0LiBJdCB3ZW50IGludG8gdGhlIHNocmVkZGVyCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IGl0c2VsdCwgYW5kIGJlZm9yZSBpdCBzYXQgb24gYSBzaGVsZi4KRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogSWNoIGthbm4ga2VpbiBFbmdsaXNjaC4KCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IERhcyBCaWVyIGRhcyB6d2lzY2hlbiBtZWluZW4gQmVpbmVuIG1laW50IGVzCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IG11ZXNzdGUgbnVuIG1hbCBlaWxlbiBnYW56IHNjaG5lbGwgZGF2b24gdW5kCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IGluIGRpZSBTY2h1ZXNzZWwgZGFmdWVyIGJyYXVjaCBpY2gga2VpbmVuCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IFNjaGx1ZXNzZWwgZGVubiBkaWUgS2xvdHVlciBkaWUgaXN0IG9mZmVuLApEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBnYW56IGVnYWwsIGljaCBiaW4gYmVzb2ZmZW4uCgpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBPSyBpY2ggZmluZGUsIGJldm9yIGljaCBqZXR6dCBwZW5uZW4KRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogZ2VoZS4uLmVpbiBHZWRpY2h0IHVlYmVycyBNRyB3YWVyZSBhdWNoIG5vY2gKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogZmFpciwgb2Rlcj8KCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IERhcyBCbHV0LCBlcyBmbGllc3N0IGRpZSBXYWVuZGUgcnVudGVyCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IERhcyBHZXNjaHJlaSBkZXMgTW9uc3RlcnMgbWFjaHQgbWljaCBtdW50ZXIKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogSWNoIHNjaG1ldHRlciBlcyBhbHNiYWxkIHp1IEJvZGVuCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IERhbmFjaCB3ZXJkIGljaCBkZW4gb3Jrd2FsZCByb2RlbgpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBEYW5uIHNwcml0enQgaWhyIEJsdXQgbWlyIGFuIGRpZSBLbGVpZGVyCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IERhcyBtYWNodCBnYXIgbml4LCBpY2ggbWFjaCB3ZWlkZXIKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogRGVyIHJvdGUgU2FmdCBmbGllZ3QgYW4gZGllIFdhZW5kZQpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBHZXNjaHd1bmdlbiB3aXJkIGRhcyBTY2h3ZXJ0IGJlaGVuZGUKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogSWNoIGhhdSBkZW0gVHJvbGxtb3BzIGVpbnMgYXVmcyBNYXVsCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IERhbm4gZGVtIFBvbnkgKFdhbGRiYXVlcm5ob2YpLCBkZW0gR2F1bApEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBEYW5uIGtyaWVndCBlaW4gRWlzYmFlciwgZGFzIHdpcmQgdGV1ZXIKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogVW50ZXIgc2VpbmVtIEhpbnRlcm4gRmV1ZXIuCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IERhbm4gc2luZCBhdWNoIHNjaG9uIERhZW1vbmVuIGRyYW4KRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogRWluIFNhZXVyZWRhZW1vbiwgZGFubiB1bmQgd2FubiwKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogendpc2NoZW5kdXJjaCB3aXJkIGVyIGdla29lcGZ0CkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IHVuZCBkYW5hY2ggc2VpbiBCbHV0IGdlc2Nob2VwZnQKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogV2FzIGRyYWNoZW5ibHV0IHp1IHNlaWVuIHNjaGVpbnQKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogRGVyIFphdWJlcmVyIHp1bSB3ZWluZW4gbmVpZ3QKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogV2VubiBpY2ggTGx5c3RyYXRoZSBzYWdlICxLb21wb25lbnRlbicKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogRG9jaCwgd2llIHNvbGwgZGFzIG5vY2ggZW50ZW4/CkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IFdvaGwgbWl0IG5lbSBUeXBvLCBpc3QgZG9jaCBrbGFyCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IE9kZXIgYXVmIFNoYWt5IElzbGFuZCwgYW4gZGVyIEJhci4KCgpJbWRhLiBHcmluc2VuZC4KCgoKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoV2VhdGhlcndheCwgIDYuIFNlcCAyMDAwLCAwMzo1OTo0NCk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9OTY4MTA4OTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY4MTA4OTA0ClZvbGxrb21tZW4ga29ycmVrdCBiZW9iYWNodGV0LiA6KSkpCgpXeAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IFBvbGl6ZWkgKEdsb2luc29uLCAgNi4gU2VwIDIwMDAsIDE2OjMwOjI3KToKfiMhIHJuPVdlYXRoZXJ3YXggcnQ9OTY4MjA3NDQxIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTY3NjYwOTE3Ck1hbiBrYW5uIEVudGdsZWlzdW5nZW4gYWJlciBhdWNoIGZvcmNpZXJlbi4gRHUgYmlzdCBkYXMgYmVzdGUgQmllc3BpZWwgZGFmdWVyLApkaWUgTXVlY2tlIHNvbGFuZ2UgYXVmenVibGFzZW4sIGJpcyBqZW1hbmQgZW50Z2xlaXN0LgoKR2xvaW4oc29uKQoKUFM6IEljaCBmaW5kZSwgYnJhdW4gaXN0IGVpbmUgc2Nob2VuZSBGYXJiZS4gVm9yIHZpZXIgVGFnZW4gaGF0IG1pY2ggZGVzaGFsYgpnbGVpY2ggZWluZXIgYWxzIE5hemkgdWViZXJyYW50LiBBdWYgZGVtIEFyY2hnZW1laW4tS2FuYWwuIFdhc3NuZSBXZWx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IG5ldWUgWndlaXRpZS1SZWdlbHVuZ2VuIChab29rLCAgNy4gU2VwIDIwMDAsIDExOjM2OjMwKToKfiMhIHJuPVBhZHJlaWMgcnQ9OTY4MzE4OTI2IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05NjgxNzg2MzEKVW5kIHdvIGlzdCBudW4gZGVyIFVudGVyc2NoaWVkIHp3aXNjaGVuIGRlbiB6d2VpIEFydGlrZWxuPyBPZGVyIG11c3MgCm1hbiBkYXMgbnVuIGltbWVyIG1pdCBkaWZmIGxlc2VuIG9kZXIga2FubiBtYW4gYmVpZGUgZWluZmFjaCB1ZWJlcmdlaGVuPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndpZSBuZW5uZSBpY2ggZGFzIHRlaWwgamV0enQ/IC4uLiAoR29sYXMsICA3LiBTZXAgMjAwMCwgMTE6NDY6MzgpOgpbPE1hc3RlUj46Wm9va10gdSA8MTE6NDA6MTY+Cls8TWFzdGVSPjo8TWFzdGVSPl0gRGFzIE1VRCBsYWV1ZnQgamV0enQgNjIgVGFnZSwgMTkgU3R1bmRlbiwgMjQgTWludXRlbiB1bmQKWzxNYXN0ZVI+OjxNYXN0ZVI+XSAzMCBTZWt1bmRlbi4gRXMgc2luZCBtb21lbnRhbiA3MiBTcGllbGVyIGVpbmdlbG9nZ3Q7IGRhcwpbPE1hc3RlUj46PE1hc3RlUj5dIE1heGltdW0gbGFnIGhldXRlIGJlaSA5OCB1bmQgZGVyIFJla29yZCBiaXNoZXIgaXN0IDE3NC4KWzxNYXN0ZVI+OjxNYXN0ZVI+XSA8MTE6NDA6MTk+Cls8TWFzdGVSPjpHb2xhc10gc2hvdCBpdCwgYmFiZSA7KSA8MTE6NDA6MzM+Cls8TWFzdGVSPjpHb2xhcyBhZGRzIGFuIG8gPDExOjQwOjQ1Pl0KWzxNYXN0ZVI+OlRpYW1hayBzY2hpZXNzdCBhdWYgR29sYXMgPDExOjQwOjU1Pl0KWzxNYXN0ZVI+OkdvbGFzIHRhdW1lbHQgZ2V0cm9mZmZlbiA8MTE6NDE6MDM+XQpbPE1hc3RlUj46R29sYXMgd2Fua3QgdW5kIHN0YW1tZWx0IHdhcyB2b24gLi4uIGF1Y2ggZHUgPDExOjQxOjE2Pl0KWzxNYXN0ZVI+OlRpYW1hayBzY2huaXR6dCBuZSBLZXJiZSBpbiBzZWluIEdld2VociA8MTE6NDE6MTg+XQpbPE1hc3RlUj46UmFzcHV0aW5dIHdpZSBsYW5nZSB3aWxsc3QgZHUgZGllIHVwdGltZSBub2NoIHZlcnRlaWRpZ2VuPwpbPE1hc3RlUj46UmFzcHV0aW5dIDwxMTo0MTozMj4KWzxNYXN0ZVI+OkdvbGFzIHRvcmtlbHQgbmFjaCBsaW5rcyA8MTE6NDE6MzI+XQpbPE1hc3RlUj46R29sYXMgdG9ya2VsdCBuYWNoIHJlY2h0cyA8MTE6NDE6Mzg+XQpbPE1hc3RlUj46Wm9vayB6dWVja3QgZWluZSBTYXR6emVpY2hlbmthbm9uZS4gPDExOjQxOjUyPl0KWzxNYXN0ZVI+Olpvb2sgYmFsbGVydCBlaW5lIFB1bmt0LVNhbHZlIGF1ZiBHb2xhcy4gPDExOjQyOjAwPl0KWzxNYXN0ZVI+OlRpYW1ha10gamV0enQga29tbXQgZGllIDcwIGRyYW4sIGRhbm4gODAsIDkwIHVuZCAxMDAuIERhbm4gaXN0IGVzCls8TWFzdGVSPjpUaWFtYWtdIG1pciBlZ2FsIDteKSA8MTE6NDI6MDQ+Cls8TWFzdGVSPjpHb2xhcyB3aXJkIHNjaHdhcnogdm9yIGF1Z2VuIC4uLiA8MTE6NDI6MDY+XQpbPE1hc3RlUj46Wm9va10gVHJlZmZlciEgPDExOjQyOjEyPgpbPE1hc3RlUj46UmFzcHV0aW5dIDopIDwxMTo0MjoxOD4KWzxNYXN0ZVI+Olpvb2tdIEphYWFhYWFhYWFhYWFhdSEgPDExOjQyOjIyPgpbVG9kOkxhcnNdIFRpYW1hayBoYXQgZ2VyYWRlIEdvbGFzIHVtZ2VicmFjaHQuIDwxMTo0MjoxNj4KW1RvZDpUaWFtYWtdIEdvdGNoYSEgPDExOjQyOjE2PgpbQmVpbGVpZDpTd290bF0gQnV1dXVoaGggTWFnaWVyd2lsbGt1ZXIhIDwxMTo0Mjo1MT4KW0JlaWxlaWQ6Wm9va10gSmFqYWphamEhIDwxMTo0Mjo1Nz4KW0JlaWxlaWQ6TXVhZGliXSB6b29rIG1pciBncmF1c3Qgdm9yIGRpciA8MTE6NDQ6MDY+CltCZWlsZWlkOlpvb2sgc2NoYXV0IE11YWRpYiB2ZXJ3dW5kZXJ0IGFuLiA8MTE6NDQ6NTQ+XQpbQmVpbGVpZDpab29rIGlzdCBsaWViIHVuZCBuZXR0LiA8MTE6NDQ6NTY+XQpbQmVpbGVpZDpSYXNwdXRpbl0gamFqYSA6KSA8MTE6NDU6MTg+CltCZWlsZWlkOk11YWRpYl0gZGFzIGhhbHQgaWNoIGluendpc2NoZW4gZnVlciBlaW4gZ2VydWVjaHQgPDExOjQ1OjE4PgpbQmVpbGVpZDpab29rXSBQZmZmZmZmZmZmZmZmZnQuIDwxMTo0NToyND4KW0JlaWxlaWQ6Wm9va10gTnVyIHdlaWwgRHUgbWVpbmVuIHdpbnppZ2VuIFdvbHBlcnRpbmdlciBuaWNodCBtYWdzdC4KCgpnb2xhcyBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IG5ldWUgWndlaXRpZS1SZWdlbHVuZ2VuIChab29rLCAgNy4gU2VwIDIwMDAsIDExOjU1OjA3KToKfiMhIHJuPVBhZHJlaWMgcnQ9OTY4MzIwMjA5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05NjgxNzg2MzEKRXMgbGViZSBjdXQmcGFzdGUhCgpab29rIGdyaW5zdCBQYWRyZWljIGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IG5ldWUgWndlaXRpZS1SZWdlbHVuZ2VuIChLYXJpcywgIDcuIFNlcCAyMDAwLCAxNDoxNTowNyk6Cn4jISBvbj1LYXJpcyBvdD05NjgzMjg3MTcgb2c9ZGlza3Vzc2lvbgp+IyEgcm49UGFkcmVpYyBydD05NjgzMjg0ODAgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTk2ODE3ODYzMQpEZWwgdGVpbHQgRGlyIG1pdDogYW0gYmVzdGVuIGZpbmQgaWNoIGphIGRlbiBzYXR6OiBQYWRyZWljIG1hY2h0IERpbmdlIApEZWwgdGVpbHQgRGlyIG1pdDogZW50d2VkZXIgdm9sbCBhdXRvbWF0aXNjaCBvZGVyIHZvbGwgdm9uIEhhbmQuIAoKQW4gd2FzIEdlbmVyYWxpbmVuIGltbWVyIHNvIGFsbGVzIGRlbmtlbiAuLi4KCkdlbmVyYWVsY2hlbiBLYXJpcywgbGllZ3QgamV0enQgdm9lbGxpZyBhbSBCb2RlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2xheWVyLCBlaW4gS2FlbXBmZXIgbWl0IEhlcnogKE1pa2FnZSwgIDcuIFNlcCAyMDAwLCAyMTozNDo0NCk6CkR1IHRyaWZmc3QgZGVuIERyYWtvbmllcmFkZXB0IGhhcnQuCkVsYmVyZXQgdHJpZmZ0IGRlbiBEcmFrb25pZXJhZGVwdCBoYXJ0LgpTbGF5ZXIga2l0emVsdCBkZW4gRHJha29uaWVyYWRlcHQgYW0gQmF1Y2guCkRlciBEcmFrb25pZXJhZGVwdCB2ZXJmZWhsdCBTbGF5ZXIuClNsYXllciBrdWVzc3Qgc2VpbiBrbGVpbmVzIFNjaGFmIHphZXJ0bGljaCBhdWYgZGllIE5hc2UuCkR1IGtpdHplbHN0IGRlbiBEcmFrb25pZXJhZGVwdCBhbSBCYXVjaC4KRWxiZXJldCB0cmlmZnQgZGVuIERyYWtvbmllcmFkZXB0IHNlaHIgaGFydC4KU2xheWVyIHNjaGxhZWd0IGRlbiBEcmFrb25pZXJhZGVwdCBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgpEZXIgRHJha29uaWVyYWRlcHQgc3ByaWNodCBlaW4gbGV0enRlcyBHZWJldC4KRWxiZXJldCBncmluc3QuCgpUamEsIG9iIGRhcyBTY2hhZiBzb3dhcyB3aWUgZWluIEVsZmVuYmxvY2sgZnVlciBWZXJsaWVidGUgaXN0PyAKTWlrYWdlLCBaYXViZXJpbmNoZW4sIGt1c2NoZWx3ZWljaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR3V0IGRhc3MgZXMgJ0lnbm9yaWVyZSBUaHJlYWQnIGdpYnQgKFZhbmlvbiwgIDcuIFNlcCAyMDAwLCAyMTozNTowNCk6CnJ1YnJpayBhbGxnZW1laW5lcwpubgpVZWJlcmdlaGUgQXJ0aWtlbCA0NSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA0NiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA0NyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA0OCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA0OSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1NCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1NSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1NiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1NyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1OCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1OSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA2MCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0LgoKViogaGFldHRlIHNvbm5zdCBhbGwgZGVuIEtyYW0gbGVzZW4gbXVlc3NlbiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvZ2FyIFdvbHBlcnRpbmdlciB3aXNzZW4gZGFzISAoVHN1bmFtaSwgIDcuIFNlcCAyMDAwLCAyMzoxNzoyMSk6ClVuZ2VzY2huaXR0ZW4gd2llIGltbWVyIDopCgpEdSBzYWdzdDogRHUgbXVzc3QgZGFzIHdpc3NlbiwgZHUgYmlzdCBTY2hFcnptYWdpZXIgOikKRWluIHdpbnppZ2VyIFdvbHBlcnRpbmdlciBuaWNrdCB6dXN0aW1tZW5kLgpKZW1hbmQgbXVzdGVydCBkZW4gd2luemlnZW4gV29scGVydGluZ2VyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVjaCBuZSBBbnR3b3J0Li4uIChBcmF0aCwgIDcuIFNlcCAyMDAwLCAyMzozNDoxOCk6CkltZGEgc2FndDogYmxvZWRlciBmaXNjaCwgZ2xlaWNoIGVpbnNjaGlja2VuLCB1bmQgbWljaCBiZXNjaHdlcm4uLgpLaXRvbiBzYWd0OiB3YXMgd2FyJ3MgZGVubiBmdWVyIGVpbmVyPyBub3Jkc2VlPyBvc3RzZWU/CkltZGEgc2FndDogZWRla2EKCip3YWVseioKQXJhdGgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNvb2w/IChBbm9yaXMsICA4LiBTZXAgMjAwMCwgMTA6NTI6MDEpOgpbU2VoZXI6UHVrXSBjb29sIDopCltUb2Q6TGFyc10gRWluIEVuZ2VsIGhhdCBnZXJhZGUgUHVrIHVtZ2VicmFjaHQuCgotIEFub3JpcyA6KQoqYmVpbGVpZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVuZ2VzY2huaXR0ZW4gKEdvbGFzLCAgOC4gU2VwIDIwMDAsIDEwOjUyOjQxKToKW1NlaGVyOlB1a10gY29vbCA6KQpbVG9kOkxhcnNdIEVpbiBFbmdlbCBoYXQgZ2VyYWRlIFB1ayB1bWdlYnJhY2h0LgpbQmVpbGVpZDpJc2ldIHVwcyAtIEJlaWxlaWQKW0JlaWxlaWQ6RGpuZW9dIGJlaWxlaWQKW0JlaWxlaWQ6SWxsbWF0aWNdIHdhcyB3YXIgamV0enQgZGFyYW4gY29vbD8KW0JlaWxlaWQ6Qm9uaV0gb2plLi4uCltCZWlsZWlkOkx1cmNoaV0gdG9sbGUgZmx3IDopCltCZWlsZWlkOkthcmlzXSBDaGFvdGVuIDopKQpbQmVpbGVpZDpHb2xhc10gaWNoIHBvc3RlIHNjaG9uCltCZWlsZWlkOkx1cmNoaSBiZWRhbmt0IHNpY2ggYmVpIEdvbGFzLl0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB1bmdlc2Nobml0dGVuIChZZW5kaSwgIDguIFNlcCAyMDAwLCAxMDo1NTozOCk6Cn4jISBybj1Hb2xhcyBydD05Njg0MDMxNjEgcmc9c2NobWFycm4KfiMhIHRpZD05Njg0MDMxNjEKTGV1dGUsIG11ZXNzdCBpaHIgc293YXMgaW1tZXIgZG9wcGVsdCBwb3N0ZW4/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHVuZ2VzY2huaXR0ZW4gKFB1aywgIDguIFNlcCAyMDAwLCAxMDo1Njo0NCk6Cn4jISBybj1Hb2xhcyBydD05Njg0MDMxNjEgcmc9c2NobWFycm4KfiMhIHRpZD05Njg0MDMxNjEKZWluZSByaWNodGlnZXN0ZWxsdW5nIDopCgpVcmllbCBzY2hsYWVndCBEaWNoIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCkRlciBUZWRkeSBrbnVkZGVsdCBEaWNoIGVpbiBsZXR6dGVzIE1hbC4KVXJpZWwgc2FndDogSGV5LCBuaWNodCBzbyBzY2huZWxsLgpFaW4ga2xlaW5lcywgcm90ZXMgRmV1ZXJ3ZWhyYXV0byBodXB0IGRpY2ggdHJhdXJpZyBlaW4gbGV0enRlcyBNYWwgYW4uCncKS3J1ZnR1ciBrb21tdCBhbi4KVWViZXJwcnVlZiBkaWUgUmVjaHRzY2hyZWlidW5nIHVuZCB1ZWJlcnBydWVmZSBvYiBkdSBlaW4gQWxpYXMgZGVmaW5pZXJ0IGhhc3QKOikKPiBLcnVmdHVyIHZlcnNjaHdpbmRldCBhbHMgSW5zcGlyYXRpb25zcGFydGlrZWwuCllyaW50cmkgYmVlbmRldCBzZWluZSBEYXNlaW5zZm9ybS4Kc2NoYXUKSGllciBmdWVocnQgRGljaCBlaW4gcmVsYXRpdiBzY2htYWxlciBHYW5nIHZvbiBTdWVkd2VzdGVuIG5hY2ggU3VlZGVuLiBWb24KU3VlZGVuIGhlciBkcmluZ3QgZWluIHNlaHIgaGVsbGVzIExpY2h0IGluIGRlbiBSYXVtLCBkZXIgZHVyY2ggZGllClJlZmxla3Rpb25lbiBhbiBkZW4gV2FlbmRlbiBmYXN0IGViZW5zbyBoZWxsIGVyc2NoZWludC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgc3VlZHdlc3Rlbi4KRGllIExlaWNoZSBQdWtzLgpVcmllbCwgZGVyIEVyemVuZ2VsLgpNaWNoYWVsLCBkZXIgRXJ6ZW5nZWwuCj4gUGFkcmVpYyB0ZWlsdCBEaXIgbWl0OiBzY2hhZXR6IGljaCBkaWNoIGRhIHJpY2h0aWcgZWluPyA6KSAxMDo1MAp0bSBwYWRyZWljIGFlaCwgYnVnCkR1IHRlaWxzdCBQYWRyZWljIG1pdDogYWVoLCBidWcKPiB0bSBwYWRyZWljIGljaCBzdGVoIG5lYmVuIG1laW5lciBsZWljaGUgOikKRHUgdGVpbHN0IFBhZHJlaWMgbWl0OiBpY2ggc3RlaCBuZWJlbiBtZWluZXIgbGVpY2hlIDopCj4gaW5mbwpJbSBld2lnZW4gTGViZW4gZ2lidCBlcyBrZWluZSBQdW5rdGUuCj4gbmFsCkFscyBHZWlzdCBrYW5uc3QgRHUgbmljaHRzIG5laG1lbi4KPiBzY2hhdQpIaWVyIGZ1ZWhydCBEaWNoIGVpbiByZWxhdGl2IHNjaG1hbGVyIEdhbmcgdm9uIFN1ZWR3ZXN0ZW4gbmFjaCBTdWVkZW4uIFZvbgpTdWVkZW4gaGVyIGRyaW5ndCBlaW4gc2VociBoZWxsZXMgTGljaHQgaW4gZGVuIFJhdW0sIGRlciBkdXJjaCBkaWUKUmVmbGVrdGlvbmVuIGFuIGRlbiBXYWVuZGVuIGZhc3QgZWJlbnNvIGhlbGwgZXJzY2hlaW50LgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuIHVuZCBzdWVkd2VzdGVuLgpEaWUgYmVyZWl0cyB6aWVtbGljaCBzdGlua2VuZGUgTGVpY2hlIFB1a3MuClVyaWVsLCBkZXIgRXJ6ZW5nZWwuCk1pY2hhZWwsIGRlciBFcnplbmdlbC4KPiAKc3cKSW0gaGltbWxpc2NoZW4gUGFsYXN0LgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogd2VzdGVuLCBub3Jkb3N0ZW4gdW5kIHN1ZWRvc3Rlbi4KRGllIGJlcmVpdHMgemllbWxpY2ggc3RpbmtlbmRlIExlaWNoZSBlaW5lcyBFbmdlbHMuCkVpbiBFbmdlbC4KRWluIEVuZ2VsLgpEZXIgRW5nZWwgdHJpZmZ0IERpY2ggc2VociBoYXJ0Lgo+IERlciBFbmdlbCBlcnpldWd0IGVpbmVuIGxhdXRlbiBEb25uZXIuCkRlciBFbmdlbCB6ZXJzY2htZXR0ZXJ0IERpY2ggaW4ga2xlaW5lIFN0dWVja2NoZW4uCkRlciBFbmdlbCBsYWVzc3QgRGljaCBkaWUgZWlzaWdlIEthZWx0ZSBkZXIgVmVyZ2VsdHVuZyBzcHVlcmVuLgpEZXIgRW5nZWwgemVyc2NobWV0dGVydCBEaWNoIGluIGtsZWluZSBTdHVlY2tjaGVuLgp3CkVpbiBFbmdlbCBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkVpbiBFbmdlbCBpc3QgamV0enQgaGludGVyIERpciBoZXIuClVlYmVyIGRlbiBXb2xrZW4uCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZHdlc3RlbiB1bmQgbm9yZHdlc3Rlbi4KPiBjCkFscyBHZWlzdCBrYW5uc3QgRHUgbmljaHQgemF1YmVybi4KClB1ayBmaW5kZXQgc293YXMgbHVzdGlnIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHVuZ2VzY2huaXR0ZW4gKE1vcmdvdGgsICA4LiBTZXAgMjAwMCwgMTE6NDA6NDQpOgp+IyEgcm49UHVrIHJ0PTk2ODQwMzQwNCByZz1zY2htYXJybgp+IyEgdGlkPTk2ODQwMzE2MQpCdWcgZ2VmdW5kZW4gdW5kIGdlZml4ZWQgKHZvbiBtZWluZXIgU2VpdGUgYXVzKS4KTW9lZ2xpY2gsIGRhc3Mgbm9jaCB3YXMgaW4gZGVyIExpYiBzdGVja3QsIGFiZXIgZGFyYXVmIGhhYiBpY2ggZGFubiBrZWluZW4KZWluZmx1c3MgbWVoci4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW5oZWl0IG1hY2h0IHN0YXJrICEgOy0pKSAoTW9yZ290aCwgIDguIFNlcCAyMDAwLCAxMTo0MzoxNCk6CkNhdHdlYXpsZS4uLi4uLkkuVyBIYXRlLi4uLi4uLi4uLi5JLkUgUmlrdXMuLi4uLi4uLi4uSS5FIFpvb2suLi4uLi4uLi4uLkkuRQpCb2luZy4uLi4uLi4uLi5Jd0cgUnVtYXRhLi4uLi4uLi4uSXdHCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xhc3NlIDopIChQdWssICA4LiBTZXAgMjAwMCwgMTI6NTk6MDYpOgoKZWluIDEwMCUgRGFlbW9uIGluIE1vcmdvdGhzIEhpbW1lbAoKYyBnYWJyaWVsCkdhYnJpZWwgc2FndDogSGV5LCBuaWNodCBzbyBzY2huZWxsLgpOYWNoIHdlbSB3aWxsc3QgRHUgZWluZW4gQ2hhb3NiYWxsIHdlcmZlbj8KPiBEdSBmdWVobHN0IERpY2ggYmVub21tZW4uCllyaW50cmkgdGVpbHQgRGlyIG1pdDogUmFwaGFlbCBpc3QgbmljaHQgbWVociBmcmlzY2guIFVuZCB3aWUgVGF1IHNjaG9uIGdhcgpZcmludHJpIHRlaWx0IERpciBtaXQ6IG5pY2h0IQpZcmludHJpIGJydWVsbHQ6IEljaCBtYWcgTWl0Z2Vub21tZW4gYXVzc2VoZW4sIGFiZXIgaWNoIGJpbiB2b2xsIGhpbnRlciBEaXIhCllyaW50cmkgYnJ1ZWxsdDogV293LCBhbGxlcyBzY2h3YW5rdCB1bmQgd2Fua3QgdW0gbWljaCBoZXJ1bSEKWXJpbnRyaSBicnVlbGx0OiBXb3csIGljaCBmdWVobCBtaWNoIHJlY2h0IGtyaWJiZWxpZy4uLgpZcmludHJpIGJydWVsbHQ6IFVuZCBJY2ggZ2VoIG5pY2h0IHp1bSBBYWFyenQsIG5laW4sIHp1bSBBcnp0IGdlaCBpY2ggbmljaHQhCllyaW50cmkgYnJ1ZWxsdDogV0lSIFNFSE4gVU5TIElOIERFUiBIT0VMTEUsIFBVSyEKRGVyIG1hZ2lzY2hlIFNjaHV0eiBkZXIgQ2hhb3NoYXV0IHZlcnNjaHdpbmRldC4KCldlbSBkYSBqZXR6dCBuaWNodHMgYXVmZmFlbGx0IGlzdCBrZWluIGNoYW90LCB6dXIgYWxsZ2VtZWluZW4gSW5mbyBpY2ggc3RhbmQKZHJhdXNzZW4gYWxzIGRhcyBwYXNzaWVydGUgOikKRGEgbWFjaHQgbWV0emVsbiBuaWNodCB3aXJrbGljaCBzcGFzcwoKUHVrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcmJlaXQgPz8gKE1vcmdvdGgsICA4LiBTZXAgMjAwMCwgMTM6Mjk6MTEpOgpUT0QtT3Jrd2l6YXJkIDogVGh1ZmhpciBoYXQgZWluZW4gT3JrbWFnaWVyIGdla2lsbHQhCkR1IHRlaWxzdCBUaHVmaGlyIG1pdDogbW9lcmRlcgpUaHVmaGlyIGlzdCBnZXJhZGUgbmljaHQgZGE6IGFyYmVpdC4uLgoKaG1tLi4uLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBcmJlaXQgPz8gKFRodWZoaXIsICA4LiBTZXAgMjAwMCwgMTM6Mjk6MzcpOgp+IyEgcm49TW9yZ290aCBydD05Njg0MTI1NTEgcmc9c2NobWFycm4KfiMhIHRpZD05Njg0MTI1NTEKZGFzIElTVCBoYXJ0ZSBhcmJlaXQhIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIEtvbW1lbnRhciAoTGlhcmEsICA4LiBTZXAgMjAwMCwgMjM6MDA6NDgpOgpEZWluIEZyZXVuZCBYWVogdGVpbHQgRGlyIG1pdDogd2FzIHd1ZXJkZXN0IGR1IG1pdCBlaW5lbSBndXRhdXNzZWhlbmRlbQpEZWluIEZyZXVuZCBYWVogdGVpbHQgRGlyIG1pdDogbWFlZGNoZW4gYW4gZWluZW0gZWluc2FtZW4gc3RyYW5kIG1hY2hlbgpEZWluIEZyZXVuZCBYWVogdGVpbHQgRGlyIG1pdDogPz8/CgpFaW5lIE1pbnV0ZSBzcGFldGVyOgoKWFlaIHRlaWx0IERpciBtaXQ6IGRhIHNpZWhzdGUgZXM6IGRpZSBqdWdlbmQgdm9uIGhldXRlOiAia2FubiBpY2ggZGFzClhZWiB0ZWlsdCBEaXIgbWl0OiBtYWVkY2hlbiBhbSBzdHJhbmQgdG9ldGVuIiAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkluZm9ybWF0aXYgKFRoYW5vcywgIDkuIFNlcCAyMDAwLCAwMDoxNjo0MSk6Cgp0cmV0ZSBnaWxkZSBiZWkKU2lhbWlsIHNhZ3Q6IEhlcnpsaWNoIHdpbGxrb21tZW4gaW4gZGVyIFRhbmppYW4tR2lsZGUhCkhpZ2h0IHdlaHJ0ICJ0cmV0ZSIgYWIuCkRyb2xsaSB3ZWhydCAidHJldGUiIGFiLgoKaW50ZXJlc3NhbnQgd2FzIHNvIGFsbGVzIGFiZ2V3ZWhydCB3aXJkIDopCgpUaGFub3MsIGZyaXNjaGdlYmFja2VuZXIgTm92aXplIGRlcyBUYXUtVGF1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBbnplaWdlIChBbmF0b2wsICA5LiBTZXAgMjAwMCwgMTk6MDU6MzEpOgp+IyEgcm49UHVrIHJ0PTk2ODUxODk0MSByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9OTY4NDM2MDY2CkljaCBrYW5ucyBhdWNoIG5pY2h0IGZhc3Nlbi4gSWNoIGJpbiBlaW5lciBNZWludW5nIG1pdCBQYWRyZWljIAp1bmQgZnVlaGxlIG1pY2ggbmljaHQga29taXNjaCBkYWJlaS4gKnd1bmRlcioKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT3JrLVdlaWNoZWllciEgKE9iaSwgIDkuIFNlcCAyMDAwLCAyMTo1NDozMCk6Cj4gRGllIE9ya3dhY2hlIHJ1ZnQ6IEhhbHQsIHdlciBkYSA/CkRpZSBPcmt3YWNoZSBmcmFndDogUGFyb2xlID8hCnNwdWNrIG9yawpEdSBzcHVja3N0IGRlbiBPcmsgYW4uCj4gRGVyIE9yayBzY2hyZWl0OiBBbGFybSAhISEKRGVyIE9yayBncmVpZnQgRGljaCBtaXQgZGVtIEtydW1tc2Nod2VydCBhbi4KCgpEZXIgc3RlbGx0IHNpY2ggdmllbGxlaWNodCBhbi4uLiA6KQpPYmkgLSBoYXQgamV0enQgYXVjaCBLcnVtbXNjaHdlcnRlciBpbSBBbmdlYm90CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKExhbmZlYXIsIDEwLiBTZXAgMjAwMCwgMjI6NTQ6MjkpOgpGb29iYXIgdGVpbHQgRGlyIG1pdDogQXVmIGRlbSBSaW5nIGlzdCBlaW5lIEdyYXZ1ciBkaWUgbWFuIG51ciBzaWVodCwgd2VubiBlcgpGb29iYXIgdGVpbHQgRGlyIG1pdDogZ2x1ZWh0LiBEYSBzaWVodCBtYW4gZGFubiB3YXMsIHdhcyBpY2ggdm9yaGVyIGluIGVpbmVyCkZvb2JhciB0ZWlsdCBEaXIgbWl0OiBWaXNpb24gZXJsZWJ0IGhhYmUuLi4gVWguCkZvb2Jhci0+TGFuZmVhciBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgo+IFtBYmVudGV1ZXI6SW1kYV0gYmllciBpbSB0ZXRyYXBhayA/CltUb2Q6TGFyc10gRGVyIFpvcm4gQW1uZXBldGh1YXMgaGF0IGdlcmFkZSBGb29iYXIgdW1nZWJyYWNodC4KW1RvZDpEZXIgWm9ybiBBbW5lcGV0aHVhcyBoYXQgbm9jaCBqZWRlbiBlaW5nZWhvbHQuXQoKV2FzIHdvbGx0ZSBlciBtaXQgZGVtICJVaC4iIHNhZ2VuPyBNYW4gd2lyZCBlcyB3b2hsIG5pZSBlcmZhaHJlbiA6KQoKTGFuZmVhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGEgbWFnaWVyIHNjaGxhZmVuIGRvY2ggbmljaHQgaW1tZXIgKEhpZ2h0LCAxMS4gU2VwIDIwMDAsIDE0OjEyOjUxKToKb2tpIGljaCBoYWIgZGVuIGFuZ3JpZmYgdm9uIGdvbGFzIGF1ZiBtaWNoIHdlZ2dlbGFzc2VuIHdlaWwgaWNoIHRhbmtlbiB3YXIgLG8pCmFscyBpY2ggd2llZGVya2FtIC0+Cgo+IER1IG9lZmZuZXN0IGRlbiBncm9zc2VuIFNjaHJhbmsuCj4gZiBnb2xhcwpEdSByaWNodGVzdCBEZWluZSBnYW56ZSBBdWZtZXJrc2Fta2VpdCBhdWYgR29sYXMuCnd0CnNjaG5lbGwKRHUgbWFjaHN0IGVpbmVuIFdhZmZlbnRyaWNrIGdlZ2VuIEdvbGFzLgo+IER1IGthZW1wZnN0IGpldHp0IHNjaG5lbGxlciEKPiBEdSBqYWdzdCBHb2xhcyBuaWNodCBtZWhyLgpOYWNodHdpbmQgdHJpdHQgYXVzIERlaW5lbSBTY2hhdHRlbi4KZ3JpbnMKRHUgZ3JpbnN0Lgo+IEdvbGFzIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCnNhZyBleQpOYWNodHdpbmQgc2FndDogaGFidCBpaHIgbGFuZ2V3ZWlsZT8KRHUgc2Fnc3Q6IGV5Cj4gc2FnIGphCkdvbGFzIG5pY2t0IHp1c3RpbW1lbmQuCkR1IHNhZ3N0OiBqYQo+IE5hY2h0d2luZCBzYWd0OiBuYWd1dC4KR29sYXMgc2FndDoga2xlaW5lciBlaGVzdHJlaXQKTmFjaHR3aW5kIHRhdHRlcnQgdW5zaWNoZXIgbmFjaCBIYXVzZS4KTXVhZGliIGVyc2NoZWludC4KR29sYXMgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCk11YWRpYiBzYWd0OiBoaQpHb2xhcyBzYWd0OiB0YWNoYXVjaAo+IEdvbGFzIHNhZ3Q6IGtsZWluZXIgZWhlc3RyZWl0CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT3JrcyA6KSMgKFRoYW5vcywgMTEuIFNlcCAyMDAwLCAxODozODo1OSk6CgpEdSB0cmlmZnN0IGRlbiBPcmsgc2VociBoYXJ0LgpEZXIgT3JrIGZhZWxsdCB0b3QgenUgQm9kZW4uCkVpbiBPcmsga29tbXQgYW4uCk9ya3RvZXRlciBydWZ0OiBPUktUT0VURU5PUktUT0VURU5PUktUT0VURU5PUktUT0VURU5PUktUT0VURU5PUktUT0VURU4KClRoYW5vcywgd3VuZGVydCBuaXggbWVocgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IEFuemVpZ2UgKFRob3JhaywgMTEuIFNlcCAyMDAwLCAyMzoxNTozNCk6Cn4jISBybj1QYWRyZWljIHJ0PTk2ODcwNjM3NyByZz1zY2htYXJybgp+IyEgdGlkPTk2ODQzNjA2NgphdWphLCB3ZW5uIG1hbiBzY2hvbiB2b24gbWFjaHRtaXNzYnJhdWNoIGhhdCwgd2FydW0gbmljaHQgYXVjaCBnbGVpY2gKbm9jaCBuZW4gdGhyZWFkIHVlYmVyIHVucmVjaHRtYWVzc2lnIHZlcmxlZ3RlLCBlcm5zdCBnZW1laW50ZSBhcnRpa2VsCmFubGVpZXJuLgoKdGhvcmFrLCBtdWVkZSB1bmQgZW50bmVydnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadWZhbGw/IChNb3Jnb3RoLCAxMi4gU2VwIDIwMDAsIDEwOjE4OjU0KToKW1RvZDpMYXJzXSBIZWxpeCBQb21hdGEgaGF0IGdlcmFkZSBHYXN0MSB1bWdlYnJhY2h0LgpHbm9tZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbVG9kOkxhcnNdIEZhY2hpZCBhbCBCYWtyZSBoYXQgZ2VyYWRlIEN5cHJ1cyB1bWdlYnJhY2h0LgpPYmkgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOaWNodCBnYW56IHNvIGVpbmZhY2guLi4uIChNb3Jnb3RoLCAxMi4gU2VwIDIwMDAsIDExOjIzOjQwKToKW0tsZXJ1czpSYWlubWFuXSBrYW5uIG1hbiBpcmdlbmR3aWUgZXJrZW5uZW4gd2lldmllbCBtYW4gZGVtIG9yZGVuIG5vY2gKW0tsZXJ1czpSYWlubWFuXSBzcGVuZGVuIG11c3M/CltLbGVydXM6Tm9ubmVdIHdpcmQgYmVpIGplZGVtIHNwZW5kZW4gYW5nZXplaWd0CltLbGVydXM6UmFpbm1hbl0gYmVpIG1pciBzdGVodCBkYSBudXIgZHUgc3BlbmRlc3QgZGVtIG9yZGVuIGVpbiBrYW1wZnNjaHdlcnQKW0tsZXJ1czpOb25uZV0gZHUgYmlzdCBqYSBhdWNoIG5vdml6ZSwgd296dSBzcGVuZGVzdCBkdT8KW0tsZXJ1czpSYWlubWFuXSBkYW5uIGhhYiBjaWggZGFzIGZhbHNjaCB2ZXJzdGFuZGVuIHdhcyBtdXNzIGljaCB0dW4gdW0gZGllCltLbGVydXM6UmFpbm1hbl0gbmFlY2hzdGUgc3R1ZmUgenUgZXJyZWljaGVuPwpbS2xlcnVzOk5vbm5lXSBkdSBtdXNzdCBlaW5lIHplaXRsYW5nIG5vdml6ZSBzZWluCltLbGVydXM6TW9yZ290aF0gZXJob2VoZSBlaW5nZWJlbgpbS2xlcnVzOkxlbWJvbGRdIEJydWRlciBSYWlubWFuIGVya2xvbW0gZWluZSB3ZWl0ZXJlIFN0dWZlIGRlcgpbS2xlcnVzOkxlbWJvbGRdIE9yZGVuc2hpZXJhcmNoaWUgdW5kIGRhcmYgc2ljaCBudW4gZGVyIEJldHRlbG1vZW5jaCBuZW5uZW4hCltLbGVydXM6UmFpbm1hbl0gZGFua2UKW0tsZXJ1czpNb3Jnb3RoIGdyYXR1bGllcnRdCltLbGVydXM6UGFuaWMgZ3JpbnN0IGVpbiB3ZW5pZ10KW0tsZXJ1czpOb25uZV0gYWFoLCBqZXR6dCBrYW5uc3QgZHUgYW5mYW5nZW4genUgc3BlbmRlbgoKTSogc2NobXVuemVsdCAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhZHJlaWMgamV0enQgYXVjaCBFaW5mbHVzcyBhdWYgZGllIFRhbmppYW4/IChSZWZhcmRvbiwgMTIuIFNlcCAyMDAwLCAxNTowNDozMyk6Cmtva29ybwpHcmFkIHBhc3NpZXJ0OgpEdSB2ZXJzaW5rc3QgaW4gdGllZmUgS29uemVudHJhdGlvbi4gRHUga29uemVudHJpZXJzdCBEaWNoIGF1ZiBLb2tvcm8sIGRpZQpNZW1icmFuIGltIFplbnRydW0gZGVyIERpbmdlLiBBbGxlcyB1bSBEaWNoIGhlcnVtIHZlcnNpbmt0IGluIGVpbmVyIGFic29sdXRlbgpEdW5rZWxoZWl0LgpQYWRyZWljIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkRpZSBBdXNmdWVocnVuZyBEZWluZXMgdm9yYmVyZWl0ZXRlbiBTcHJ1Y2hlcyB3aXJkIHZlcnpvZWdlcnQuCgprb2tvcm8KUmVmLCBncnVlYmVsbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbyBtYWNodCBtYW4gbmVuIFRocmVhZCB3ZWcgKExhcmlzc2EsIDEyLiBTZXAgMjAwMCwgMTk6MTI6NDMpOgoKW0FsbGdlbWVpbjpMYXJpc3NhXSBIZSwgVGhyZWFkLCBpY2ggZ2xhdWJlIER1IGJpc3QgZWluIHVubWFya2llcnRlciBad2VpdGkgdW5kCltBbGxnZW1laW46TGFyaXNzYV0gbXVzc3Qgc29mb3J0IGdlbG9lc2NodCB3ZXJkZW4gKnp1ZWNrZSBsdXBlKgpbQWxsZ2VtZWluOlRocmVhZF0gc2NobGFmIGVpbgpUdXJvY2sgZ3JpbnN0LgpbQWxsZ2VtZWluOlRocmVhZF0gYXJnbAotYSAqcm90ZmwqCltBbGxnZW1laW46TGFyaXNzYV0gKnJvdGZsKgpUaHJlYWQgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KW0FsbGdlbWVpbjpWYW1weSBwZmVpZnQgdW5zY2h1bGRpZ10KCgoKTGFyaSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS29pbnppZGVuemVuLi4uIChLYWRhYnJhLCAxMi4gU2VwIDIwMDAsIDIyOjQ5OjE0KToKIERlciBIZWlsZXIgc3VtbXQgZWluIGZyb2VobGljaGVzIExpZWQuCgpEZXIgSGVpbGVyIHN1bW10IGVpbiBmcm9laGxpY2hlcyBMaWVkLgoKIFtBbGxnZW1laW46RGVsIHNpbmd0IDogJ1NjaHViaSBEdWIgRGkgRHViJ10KIFtBbGxnZW1laW46RGVsIHNpbmd0IDogJ1NjaHViaSBEdWIgRGkgRHViJ10KRGVyIEhlaWxlciBzdW1tdCBlaW4gZnJvZWhsaWNoZXMgTGllZC4KCkRlciBIZWlsZXIgc3VtbXQgZWluIGZyb2VobGljaGVzIExpZWQuCgpEZXIgSGVpbGVyIHN1bW10IGVpbiBmcm9laGxpY2hlcyBMaWVkLgoKYWggLi4gamEKa2FkYWJyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnVlciBsaWFyYSAoTGVpYm5peiwgMTIuIFNlcCAyMDAwLCAyMzoxODo1NSk6CmRhc3MgZHUgd2FzIHp1IGxlc2VuIGhhc3QgOikKCm1hamEgbGVidCB1ZWJyaWdlbnMgYXVjaCBub2NoIDopCgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NobGFnZXItZGFlbW9uLi4uIChEaXJpb24sIDEzLiBTZXAgMjAwMCwgMDA6MjQ6NDgpOgo+IFtBbGxnZW1laW46RGllZGVyIHNpbmd0IDogJ1NjaHViaSBEdWIgRGkgRHViJ10KW0FsbGdlbWVpbjpEaWVkZXIgc2luZ3QgOiAnU2NodWJpIER1YiBEaSBEdWInXQpIZXJtZXMgc3RvZWhudCBzY2htZXJ6Z2VwZWluaWd0LgpIZXJtZXMgc3RvZWhudCBzY2htZXJ6Z2VwZWluaWd0LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKRGlyaW9uLCBtaXRmdWVobGVuZCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWdpdHQuLi4uIChIdW1uaSwgMTMuIFNlcCAyMDAwLCAxMDozODowMik6CkRlciBUcm9lZGxlciBmcmFndDogV2lsbHN0IER1IFNjaGVpc3NlIFdJUktMSUNIIGxvc3dlcmRlbj8KRGVyIFRyb2VkbGVyIG5pbW10IGRhcyBHZWxkIHVuZCBsYWVzc3QgU2NoZWlzc2UgaW4gZGVuIFdlaXRlbiBzZWluZXMKTG9kZW5tYW50ZWxzIHZlcnNjaHdpbmRlbi4gCgpEZXIgbmltbXQgd2lya2xpY2ggQUxMRVMuLmRlbiBNYW50ZWwga2FubmVyIGpldHp0IHdvaGwgd2Vnc2NobWVpc3Nlbi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEJhbGxyb2NrLCAxMy4gU2VwIDIwMDAsIDEzOjM5OjUwKToKW0FiZW50ZXVlcjpMb3Zpc10gaWNoIGJpbiB6dXIgemVpdHVta2VociBpbiBkZXIgd3Vlc3RlPyB3YXMgcGFzc2llcnQgbWl0IG1pcj8KW0FiZW50ZXVlcjpMb3Zpc10gbXVzcyBpY2ggc3RlcmJlbj8gOigKW0FiZW50ZXVlcjpEZWVwQmx1ZV0gamEKW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgTG92aXMgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdpYnQgZXMgVmllbGZsaWVnZXJ0aWNrZXRzPyAoVmFuaW9uLCAxMy4gU2VwIDIwMDAsIDIxOjU1OjUzKToKdW5jdXQ6CkRpZWRlciBmbGllZ3QgbmFjaCBOb3JkZW4uClZhcmRpb24gZmxpZWd0IG5hY2ggTm9yZGVuLgpUb3dlciBmbGllZ3QgbmFjaCBOb3JkZW4uCgpWKiwgZGVua3QgLm9PKFNjaGVpbmJhciBzaW5kIG1vdXRzIGltIDNlci1QYWNrIGd1ZW5zdGlnZXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZWluIGtsZWluZXIgRnJldW5kIEtvcnlva3UuLi4gKE9iaSwgMTMuIFNlcCAyMDAwLCAyMjoyMjoxMSk6CltUYW5qaWFuOk9CSV0gaGFlaD8gd29ydW0gZ2VodHMgZ2VyYWRlID8gOikKW1RhbmppYW46TWFnZ2ldIGRhc3MgaWNoIGtvcnlva3UgbmljaHQgaG9jaGtyaWVnZQpbVGFuamlhbjpPQkldIGR1IGtyaWVnc3QgZGVpbmVuIEtvcnlva3UgbmljaHQgaG9jaD8KW1RhbmppYW46UGFyYWNlbHN1c10gQWxzbyBEdSBzb2xsdGVzdCBlcyBzY2hvbiBhbiBPYmpla3RlbiB2ZXJzdWNoZW4sIGRpZSBhdWNoCltUYW5qaWFuOlBhcmFjZWxzdXNdIGRhIHNpbmQuCltUYW5qaWFuOk15dGhyYW4ga2ljaGVydC5dCltUYW5qaWFuOk1hZ2dpXSBoYWIgc2Nob24gd3VuZGUgZmluZ2VyCltUYW5qaWFuOk9CSV0gYml0dGUgPz8/PwpbVGFuamlhbjpNeXRocmFuXSBEYXMgd2lyZCBqYSBpbW1lciBzY2hsaW1tZXIgKnJvdGZsKgpbVGFuamlhbjpPQkkgc2NodWV0dGVsdCBlbnRzZXR6dCBkZW4gS29wZl0KW1RhbmppYW46UGFyYWNlbHN1c10gVm9tIFJlaWJlbj8gTzo+CgpPaCBtYW5uIDotKQoKT2JpIC0gZ2VodCBsaWViZXIgd2llZGVyIG1lZGl0aWVyZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvc28gKE1hZ2ljdHV4LCAxMy4gU2VwIDIwMDAsIDIyOjQ3OjIwKToKW0FsbGdlbWVpbjpQZXJ0aW5heGVdIG5vY2htYWwsIGVzIGdpYnQgYWIgc29mb3J0IGRpZSBlYmVuZSBmdXNzYmFsbApEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKTWFnaWNUdXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhtcGYgOikgKFNreSwgMTMuIFNlcCAyMDAwLCAyMzoxMDoyNSk6Clp3ZWkgYmVzb2ZmZW5lIEZhbnMgcG9lYmVsbiBkaWNoIGFuLiBBbHMgZHUgZGljaCBuaWNodCBwcm92b3ppZXJlbiBsYWVzc3QKc3VjaGVuIHNpZSBzaWNoIGplbWFuZCBhbmRlcnMuCgpbdG9ldGUgRmFuc10KRHUgc2llaHN0IGhpZXIga2VpbiBkZXJhcnRpZ2VzIFdlc2VuIQoKZXJzdCBydW1zdHJlc3NlbiB1bmQgZGFubiBhYmhhdWVuLi46KSBkYXMgaGF0IG1hbiBnZXJuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNb2JpbGlhciBhbGxlciBMYWVuZGVyLCB2ZXJlaW5pZ3QgZXVjaC4uLiAoQW5hdG9sLCAxNC4gU2VwIDIwMDAsIDAwOjA1OjIxKToKPiBnIGxpc3RlCi4uLgpUZWFtIEZsdWdodW5kZTogRWluIFJvdGUgUGx1ZXNjaHNvZmUoKiksIEVpbiBTb2ZhCi4uLgoKQUNLIDopCkFuYXRvbCAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hY2h3dWNocy4uLiAoSXNpLCAxNC4gU2VwIDIwMDAsIDAwOjM0OjEyKToKfiMhIG9uPUlzaSBvdD05Njg4ODQzNzkgb2c9d3d3CkR1IGJpc3QgYW0gU3RhZHR0b3Igdm9uIFBvcnQgVmFpbiBhbmdla29tbWVuLCBkYXMgdW5taXR0ZWxiYXIgdm9yIERpciBsaWVndC4KSW4gCndlc3RsaWNoZXIgUmljaHR1bmcgZnVlaHJ0IGRpZSBQb3J0IFZhaW5lciBMYW5kc3RyYXNzZSBpbiBkaWUgZ3Jvc3NlLCB3ZWl0ZQpXZWx0IGhpbmF1cyB1bmQgaW4gb2VzdGxpY2hlciBSaWNodHVuZyB6dW0gZ3Jvc3NlbiBTdGFkdHplbnRydW0gZGVyCkhhZmVuc3RhZHQuClVubWl0dGVsYmFyIHN1ZWRsaWNoIHZvbiBEaXIsIGRpcmVrdCBuZWJlbiBkZW0gU3RhZHR0b3Igc2llaHN0IER1IGRpZSByaWVzaWdlClBmb3J0ZSBlaW5lcyBub2NoIHJpZXNpZ2VyZW4gV2V0dHBhbGFzdGVzIHZvciBEaXIgYXVmcmFnZW4uIER1IGxlZ3N0IERlaW5lbgpLb3BmIGluIGRlbiBOYWNrZW4sIHVtIGlobiBnYW56IGJldHJhY2h0ZW4genUga29lbm5lbi4gRWluIGdyb3NzZXMgU2NoaWxkCmhhZW5ndCB1ZWJlciBkZXIgRWluZ2FuZ3NwZm9ydGUuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuIHVuZCB3ZXN0ZW4uCkVpbiBTYW5kdGlnZXJiYWJ5LgpFaW5lIFNhbmR0aWdlcmluLgpFaW4gU2FuZHRpZ2VyLgoKSXNpICpsZWlzZSBraWNoZXJkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS3JhZ2VuPyAoTWFnaWN0dXgsIDE1LiBTZXAgMjAwMCwgMjA6NTM6MDApOgpEdSBmaW5kZXN0IGFuIGVpbmVtIEtyYWdlbiBtaXQgendlaSBhYmxhdWZlbmRlbiBTYW5kdWhyZW4gdW5kIGVpbmVtIEtub2NoZW4Ka2VpbiAiU2FuZHVocmVuIi4KRGVpbiBCbGljayB3ZW5kZXQgc2ljaCBkZXIgVW1nZWJ1bmcgenUuClNvd2FzIHNpZWhzdCBEdSBhdWNoIGRhIG5pY2h0IQoKTWFnaWNUdXgsIHNpY2ggdWViZXIgbWFuY2hlIGZlaGxlbmRlbiBEZXRhaWxzIHd1bmRlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJZGVlbnNhbW1sdW5nLi4uIDopIChab29rLCAxNS4gU2VwIDIwMDAsIDIzOjUzOjE5KToKW1NlaGVyOlNreV0gLi5FciBrYWVtcGZ0IG1pdCBlaXNpZ2VuIEtsYXVlbi4gRXIgbWFjaHQgZGFtaXQgZm9sZ2VuZGVuIFNjaGFkZW46CltTZWhlcjpTa3ldIEZldWVyIHVuZCBSZWlzc2VuLi4uLi5qYSBnZW5hdSA6KS4gUHJlaXNmcmFnZTogV2FzIGtvbW10IGJlaQpbU2VoZXI6U2t5XSByb2hyaG9lcmU/CltTZWhlcjpEZWVwQmx1ZV0gTW9yZ290aCA/CltTZWhlcjpTa3ldIHN0dWVtbXQgOikKW1NlaGVyOkRvdHpdIG5hamEsIGJlc3NlciwgYWxzIHdlbm4gZXIgYmVpIHJvaHJob2VyZSBhdWNoIG5vY2ggbGFlcm1zY2hhZGVuCltTZWhlcjpEb3R6XSBtYWNodCA6XikKW1NlaGVyOlBhcnNpdmFsXSBicmluZyBkaWUgbWFnaWVyIG5pY2h0IGF1ZiBmYWxzY2hlIGlkZWVuCltTZWhlcjpEb3R6IGJlZmVzdGlndCBkYXMgUGZsYXN0ZXIgd2llZGVyIHZvciBzZWluZW0gTXVuZC5dCgpadXIgc3BhZXQuIFpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp6YXViZXJlci4uLiA6KSAoQmllcmNoZW4sIDE2LiBTZXAgMjAwMCwgMDA6NDE6NTkpOgoKTGlhcmEgdGVpbHQgRGlyIG1pdDogZXkgd2VjayBtYSBqZW5hbmRyYSBhdWYgOy0pKQpMaWFyYSBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCkRlaW4gRWhlcmluZyBsZXVjaHRldCBhdWYuIER1IGxpZXN0OiBKZW5hbmRyYSBpc3QgbnVuIGRhIQoKc293YXMuLi4uIHphdWJlcnJpbm5lbiB3ZXJkZW4gbWlyIGxhbmdzYW0gdW5oZWltbGljaCA6KQogLSBCaWVyY2hlbiAtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqZyogKEhpZ2h0LCAxNi4gU2VwIDIwMDAsIDAyOjAwOjE4KToKSmVuYW5kcmEga3VzY2hlbHQgc2ljaCBhbiBCaWVyY2hlbiBhbi4KTXVwZmVsIHNhZ3Q6IGFlaApCaWVyY2hlbiBzYWd0OiBobW0uIG5pY2h0IGluIGRlciBvZWZmZW50bGljaGtlaXQgOikKCgpobSBpcyBiaWVyY2hlbiBzY2h1ZWNodGVybiBvZGVyIHZlcmtsZW1tdCA/IHNvIGtlbm50IG1hbiBpaG4gZ2FybmljaCAKCmhpZ2h0IHNpY2ggd3VuZGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqZyogKExpYXJhLCAxNi4gU2VwIDIwMDAsIDEzOjQ2OjU3KToKfiMhIHJuPUhpZ2h0IHJ0PTk2OTA2MjQxOCByZz1zY2htYXJybgp+IyEgdGlkPTk2OTA2MjQxOApXZWlzc3QgRHUsIGFuIHdhcyBCaWVyY2hlbiBncmFkZSBkYWNodGU/IDstKQoKTGlhcmEsIFp3ZXJnZW56YXViZXJpbmUsIGR1Y2t0IHNpY2ggc2Nob24gd2llZGVyIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc3VjaHRpZXMgPjopIChGbGFzaCwgMTcuIFNlcCAyMDAwLCAwMTo1MzoyNCk6CltSYWdlOkVpbiBSYWdlbGFib3JdIEZsYXNoIHNjaGVpbnQgZWluZSBSdW5kZSBIYXJkY29yZS1NaW5pLVJhZ2Ugc3BpZWxlbiB6dQpbUmFnZTpFaW4gUmFnZWxhYm9yXSB3b2xsZW4uCls8UmFnZT5dIER1IHNwaWVsc3QgamV0enQgbWl0LgpSb3dhbiBzY2hhdXQgRGljaCBtaXQgZ3Jvc3NlbiBzY2hldWVuIEF1Z2VuIGFuLgpbUmFnZTpMaWxsZWJyb3JdIE1PTSEgOi0pCk1hZ2ljdHV4IGlzdCBqZXR6dCBoaWVyIS4KW1JhZ2U6Rmxhc2hdIG9vb29vaCBrb21tZXQgaGVyIGlociByYWdlLXN1ZWNodGlnZW4gOykKWzxSYWdlPl0gTWFnaWN0dXggc3BpZWx0IGpldHp0IG1pdC4KW1JhZ2U6Wm9yeWFdIFNla3VuZGUuLi4gOy0pCk1hZ2ljdHV4IGdyaW5zdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVy4uLiAoRm9vYmFyLCAxNy4gU2VwIDIwMDAsIDExOjUyOjMzKToKW0FsbGdlbWVpbjpBY2NvbG9uXSAqbGFjaCogaGllciB0YXVjaHQgZ3JhZCBiZWltIGZyZWllbiBmYWxsIGRlciB3YW5kbGVyIGF1ZgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBad2VyZ3NdIFp3ZXJnZSB6dSBtaXIhIEdlYnQgYWxsZXMhIEtvbnplbnRyaWVydCBFdWNoIGF1ZgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBad2VyZ3NdIFNlYWwhCltNb2VyZGVyOkdlaXN0IFp3ZXJnIE5hc2VzXSBIYXQgRGlyIG1laW5lIE5hc2UgbmljaHQgZ2VmYWxsZW4sIFNlYWw/CltNb2VyZGVyOkdlaXN0IGVpbmVzIGFsdGVuIFp3ZXJnc10gTWVpbmUgWmVpdCBpc3QgZGFuayBTZWFsIGFiZ2VsYXVmZW4gOi0oCltBbGxnZW1laW46Tm9ubmVdIGhvZmZlbnRsaWNoIHN0aXJidCBlciBiZWltIGF1ZnByYWxsCltBbGxnZW1laW46Rm9vYmFyXSBEZXIgV2FuZGxlciBvZGVyIEFjY29sb24/IDpvKQpbQWxsZ2VtZWluOkFjY29sb24gZ3JpbnN0Ll0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKW0FsbGdlbWVpbjpBY2NvbG9uXSBpY2ggd29obCBpbiBqZWRlbSBmYWxsLCBzbyBvaG5lIHNwZXppZWxsZSBhdXNydWVzdHVuZwpbQWxsZ2VtZWluOkZvb2Jhcl0gU3RpbW10LgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBkaWNrZW4gWndlcmdlbndhZWNodGVyc10gR2VidCBhbGxlcywgS2FtZXJhZGVuLCBkYW5rIFNlYWwKW01vZXJkZXI6R2Vpc3QgZWluZXMgZGlja2VuIFp3ZXJnZW53YWVjaHRlcnNdIHdlaWxlIGljaCBuaWNodCBtZWhyIHVudGVyIEV1Y2ghCltBbGxnZW1laW46QWNjb2xvbl0gd2FzIHNvbGxzLiBkZW4genQgaGFiIGljaCA6LSkKW1RvZDpMYXJzXSBBY2NvbG9uIGhhdCBnZXJhZGUgQWNjb2xvbiB1bWdlYnJhY2h0LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IElkZWVuc2FtbWx1bmcuLi4gOikgKE1vcmdvdGgsIDE4LiBTZXAgMjAwMCwgMDg6MjI6MDQpOgp+IyEgcm49Wm9vayBydD05NjkwNTQ3OTkgcmc9c2NobWFycm4KfiMhIHRpZD05NjkwNTQ3OTkKSHVjaCwgd2VyIHdhciBkZW5uIGRhcz8/CgpNKiBzdGF1bnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN0ZWhuIGRpZSBmdWVyIExhcnMgc2Nob24gU2NobGFuZ2U/IChXYXJrLCAxOC4gU2VwIDIwMDAsIDIyOjA0OjE1KToKPiBzbQpmaUR1IGhhc3QgamV0enQgMTUyIExlYmVuc3B1bmt0ZSB1bmQgMTE2IEtvbnplbnRyYXRpb25zcHVua3RlLgpFaW4gZ2lnYW50aXNjaGVyIFNhbmR3dXJtIHN0ZWh0IGF1ZiBkZXIgU2Nod2VsbGUgZGVzIFRvZGVzLgogIER1IGdyZWlmc3QgZGVuIGdpZ2FudGlzY2hlbiBTYW5kd3VybSBtaXQgZGVyIEdvYmxpbmF4dCBhbi4KICBEdSB0cmlmZnN0IGRlbiBnaWdhbnRpc2NoZW4gU2FuZHd1cm0uCiAgRHUgdHJpZmZzdCBkZW4gZ2lnYW50aXNjaGVuIFNhbmR3dXJtIHNlaHIgaGFydC4KICBEdSB0cmlmZnN0IGRlbiBnaWdhbnRpc2NoZW4gU2FuZHd1cm0gc2VociBoYXJ0LgpEZXIgZ2lnYW50aXNjaGUgU2FuZHd1cm0gemllaHQgc2ljaCB6dXJ1ZWNrLgpFaW4gZ2lnYW50aXNjaGVyIFNhbmR3dXJtIGtyaWVjaHQgaGVyZWluLgpEdSBiaXN0IG5pY2h0IGltIEthbXBmIQo+CgotLSAKV2FyayAoaGF0dGUgZWluZW4gc28gc2NobmVsbGVuIFJlc2V0IG5vY2ggbmllKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGFhYWEuLi4uIChDYXR3ZWF6bGUsIDE5LiBTZXAgMjAwMCwgMDc6MzQ6NTEpOgpEaWVzZSBSdWhlIC4uLi4gaGVycmxpY2ggLi4uLgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClByb21wdGUgQmVkaWVudW5nIDstKSAoTW9yZ290aCwgMTkuIFNlcCAyMDAwLCAxMjo0MzowMik6Ck1vZGdydWRlciBhbiBkaWUgTGlzdGUgYW5nZWhhZW5ndC4KTW9kZ3J1ZGVyICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXcyAoTW9yZ290aCwgMTkuIFNlcCAyMDAwLCAxNDozMzowOCk6CkZhbnRhZ2hpcm8gdGVpbHQgRGlyIG1pdDogYXJnbCBpY2ggaG9jayBoaWVyIGluIGRlciB3dWVzdGUgdW5kIGluIDMgbWluIGlzCkZhbnRhZ2hpcm8gdGVpbHQgRGlyIG1pdDogemVpdHVta2VociBbMTQ6MjldCkZhbnRhZ2hpcm8gdGVpbHQgRGlyIG1pdDogMiBtaW4gKT0gWzE0OjMwXQpGYW50YWdoaXJvIHRlaWx0IERpciBtaXQ6IGJpbiB0b3QgaW4gMSBtaW4gKT0gWzE0OjMxXQpGYW50YWdoaXJvIHRlaWx0IERpciBtaXQ6IHVuZCA1IGxwICk9IFsxNDozMV0KRmFudGFnaGlybyB0ZWlsdCBEaXIgbWl0OiBoYWIgbmUgc2FuZHZpcGVyIGhpZXIgWzE0OjMyXQpbVG9kOkxhcnNdIEVpbiBMb2V3ZSBoYXQgZ2VyYWRlIEZhbnRhZ2hpcm8gdW1nZWJyYWNodC4KRHUgdGVpbHN0IEZhbnRhZ2hpcm8gbWl0OiBhcmdsIDstKCgKClNvZ2FyIG1pdCBDb3VudGRvd24KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogbmV1ZSBad2VpdGllLVJlZ2VsdW5nZW4gKEFuYXRvbCwgMTkuIFNlcCAyMDAwLCAxNjozMjozMCk6Cn4jISBybj1Tb2xteXIgcnQ9OTY5MzczODc2IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05NjgxNzg2MzEKT2gsIGljaCBiaW4gbWlyIHppZW1saWNoIHNpY2hlciwgZGFzcyBlaW5lIGdhbnplIE1lbmdlIExldXRlIHZvcm5laG1saWNoCmFuIFNseWZveCBkYWNodGUuIFZvciwgbmFjaCB1bmQgd2FlaHJlbmQgZGVyIERpc2t1c3Npb24uIF06Xj4KCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMV3MgKFJhcmRpYW4sIDE5LiBTZXAgMjAwMCwgMTc6Mzc6NDkpOgp+IyEgcm49TW9yZ290aCBydD05NjkzNjY3ODggcmc9c2NobWFycm4KfiMhIHRpZD05NjkzNjY3ODgKQWJlciBnaWIgZG9jaCB6dSwgc3Bhbm5lbmQgYmxpZWIgZXMgYmlzIHp1bSBTY2hsdXNzLi4uIFNvIHZpZWxlIE1vZWdsaWNoa2VpdGVuCnp1IHN0ZXJiZW4gdW5kIGFtIEVuZGUgd2FycyBkZXIgTG9ld2UuLi4gS2F0emVucG93ZXIsIHJlY2h0IHNvIQoKUmFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGF0J3MgZ2V3aXJrdD8gOikgKERpZWRlciwgMTkuIFNlcCAyMDAwLCAxOTo1OTowOSk6CltBbGxnZW1laW46U2x5Zm94XSBMdWcgbG9lc2NoIERpY2ghCgoKa3VyeiBkYXJhdWYuLi4KCkx1ZyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCkRpZWRlciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChab29rLCAxOS4gU2VwIDIwMDAsIDIwOjE3OjM0KToKSmVsa2EgcnVmdDogQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIIQpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBKZWxrYSB1bWdlYnJhY2h0LgoKRGFmdWVyIGRhc3MgZXMgZ2VoZWltbmlzdm9sbCB1bmQgdW5iZWthbm50IHdhciwga29ubnRlIEplbGthIGVzIGd1dCAKdm9yYXVzc2VoZW4uLi4uIDotKQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKFJhcmRpYW4sIDIwLiBTZXAgMjAwMCwgMDA6Mjc6MDApOgp+IyEgcm49Wm9vayBydD05NjkzODc0NTQgcmc9c2NobWFycm4KfiMhIHRpZD05NjkzODc0NTQKSmF1LCB1bmQgdm9yIGFsbGVuIERpbmdlbiBzY2hlaW50IHNpZSBub2NoIGdlbnVnIEtQcyB1ZWJyaWcgZ2VoYWJ0IHp1IGhhYmVuIDspCgpSYXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhhID8/ISAoTW9yZ290aCwgMjAuIFNlcCAyMDAwLCAxMjo0NzozMyk6Clpvb2sgYW4gYWxsZSBNYWdpZXI6IFJBR0FHQUdBR0FHQUdBR0FHQSEKWm9vayBhbiBhbGxlIE1hZ2llcjogQW50aGVlZWVlYSEKRWxlbmRpbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEZWluIEZyZXVuZCBFbGVuZGlsIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRGVpbiBGcmV1bmQgRWxlbmRpbCB0ZWlsdCBEaXIgbWl0OiBIaSB6dXNhbW1lbiA7KQoKRWxlbmRpbCBpc3QgQW50aGVhPyAKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdWVjaHRpZyA/PyAoTW9yZ290aCwgMjAuIFNlcCAyMDAwLCAxNDoyMzo1NSk6CkF1c3p1ZyBhdXMgLT8KTWFleGNoZW4uLi4uICBbIF0gICBFaW4gVGlzY2ggICggIDEpIGRlciBLYW5hbCBmdWVyIFN1ZWNodGlnZSA6KQoKTXVzcyBkZXIgVGlzY2ggc3VlY2h0aWcgc2VpbiA7LSkpCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFoYSA/PyEgKEJlbmRlaWdpZCwgMjAuIFNlcCAyMDAwLCAxNjo1MToyOSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTk2OTQ0Njg1MyByZz1zY2htYXJybgp+IyEgdGlkPTk2OTQ0Njg1MwpIbSwgamVkZW4gVGFnIHN0ZWh0IHNvIGVpbiAiZXJ3YXJ0ZSItV2l0eiB2b24gZGlyIGluIGRlciBNUEEsIG1vcmdvdGguLi4KS3VyemUgRnJhZ2U6IFdlbiAoYXVzc2VyIG1pcikgZXJ3YXJ0ZXN0IGR1IGVpZ2VudGxpY2ggTklDSFQ/CgpCZW4qLCBncnVlYmVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmh1Y2ggPyAoSW1kYSwgMjAuIFNlcCAyMDAwLCAyMTo1MTo1NSk6CkRlaW5lIEZyZXVuZGluIExlaWJuaXogd2lua3QgRGlyIGF1cyBkZXIgRmVybmUgenUuCkxlaWJuaXogZ2lidCBEaXIgZWluZW4gS2Vrcy4Kd3VuZGVyCkR1IHd1bmRlcnN0IERpY2guCk1lc2lyaWkgZXJzY2hlaW50IGltIENoYW9zLgp3dXNjaGVsIGxlaWJuaXoKSG1tLCBzZWhyIHRvdC4gTmUsIGxpZWJlciBuaWNodC4KRWluIHNlbHRzYW1lcyBHZWZ1ZWhsIHVlYmVya29tbXQgRGljaCAuLi4KCkltZGEuIFNvbGx0IG9lZmZ0ZXIgbWFsIGltIE5ldHp0b3RlbnJhdW0gaWRlbG4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBodWNoID8gKExlaWJuaXosIDIwLiBTZXAgMjAwMCwgMjI6NTc6MjEpOgp+IyEgcm49SW1kYSBydD05Njk0Nzk1MTUgcmc9c2NobWFycm4KfiMhIHRpZD05Njk0Nzk1MTUKaWNoIGJpbiB2aWVsbGVpY2h0IHZpZWxlcyBhYmVyIGdhbnogYmVzdGltbXQgbmljaHQgdG90CgpsZWliaSAtIG1pdHRlbiBpbSBsZWJlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIHRhZWdsaWNoZSBXYWhuc2lubiAuLi4gKFZhbmlvbiwgMjAuIFNlcCAyMDAwLCAyMjo1OTozMyk6CkViZW4gaW4gZGVyIEFiZW50ZXVlcmdpbGRlIC4uLgoKVmFuaXIgd2lyZnQgZWluZW4gRmxpcHBlcmZsdW1taWUuIE1pdCBlaW5lciB3YWhuc2lubmlnZW4gR2VzY2h3aW5kaWdrZWl0IHJhc3QKZXIgZHVyY2ggZGVuIFJhdW0uCkVpbiBGbGlwcGVyZmx1bW1pZSBmbGllZ3QgRGlyIHZvbGwgaW4gZGllIEZyZXNzZS4gRHUgaG9lcnN0IGVpbjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXl5eXl5eCkJpbW1lbEJpbW1lbEJpbW1lbEJpbW1lbCEKRWluIEZsaXBwZXJmbHVtbWllIGh1ZXBmdCB6dXJ1ZWNrIGluIFZhbmlycyBIYW5kLgpJbWRhIHNhZ3Q6IG5lZWVlaWlpbiAhCkFyayBwZmx1ZWNrdCBlaW4gQmx1ZW1jaGVuLgoKSG9mZm51bmdzbG9zIGdlc2Nobml0dGVuIHVuZCBhdXMgZGVtIFp1c2FtbWVuaGFuZyBnZXJpc3NlbiwgYWJlciBzb25zdAp1bnZlcmFlbmRlcnQgLi4uClYqLCByZWlidCBzaWNoIGRpZSBGcmVzc2UgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJ3YW5kbHVuZy4uLi4gKEdhc3QxLCAyMC4gU2VwIDIwMDAsIDIzOjAwOjM4KToKQXJrIHRhdWNodCBwbG9ldHpsaWNoIGF1cyBlaW5lbSBoZWxsZW4gU2NobHVuZCBhdWYsIGRlciBzaWNoIHZvciBEZWluZW4KQXVnZW4gYW0gQm9kZW4gYXVmZ2V0YW4gaGF0LiBFciB3ZWlsdCB3aWVkZXIgdW50ZXIgZGVuIExlYmVuZGVuLgpGdXJjaHRsb3MgdHJvdHRldCBGZWlnbGluZyBoaW50ZXJoZXIuCkVpbiBHcmVpZiBmYWx0ZXQgc2VpbmUgU2Nod2luZ2VuIHVuZCBzY2hhdXQgc2ljaCBydWhpZyB1bS4KQXJrIG1hY2h0IGF1cyBOaWNodHMgd2FzIGdhYWFueiBEb2xsZXMgLi4uCgoKRnJhZ3Qgc2ljaCBudXIsIHdhcz8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmxhaG1lciBzYWNrISAoR25vbWUsIDIxLiBTZXAgMjAwMCwgMDA6MjU6MTEpOgpEdSBnaWJzdCBkaWUgQWV0emF4dCBhbiBXYWx0ZXIuCldhbHRlciBzY2hhdXQgRGljaCBhbi4KV2FsdGVyIHNhZ3Q6IERpZSBXYWZmZSBpc3QgYmVzY2hhZWRpZ3QuCldhbHRlciBzYWd0OiBEYXMga29zdGV0IDMwODAgTXVlbnplbi4KTW9lY2h0ZXN0IER1IHNvdmllbCBiZXphaGxlbj8gKGphL25laW4pCldhbHRlciBuaWNrdCB1bmQgbWFjaHQgc2ljaCBhbiBkaWUgQXJiZWl0LgpXYWx0ZXIgaGFlbW1lcnQgdW5kIG1hY2h0IHVuZCB0dXQuLi4KRXMgc2llaHQgYXVzLCBhbHMgd3VlcmRlIGVzIGV0d2FzIGRhdWVybiwgbnVyIEdlZHVsZC4KCndvIGVyIHJlY2h0IGhhdC4uLgoKZ25PbWUgd2FydGV0IHdhaHJzY2hlaW5saWNoIGJpcyBtb3JnZW4gZnJ1ZWgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbmZhY2ggdW13ZXJmZW5kLi4uIChCaWVsZWZlbGQsIDIxLiBTZXAgMjAwMCwgMTM6Mzk6MDgpOgpBbmRyb21lZGEgbGFlY2hlbHQgRGllZGVyIGFuLgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgQXJhdGguClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBEaWVkZXIuCkFuZHJvbWVkYSBkZW5rdCAgIC4gbyBPICh1cHMsIHNvbGx0ZSB3b2hsIGFuIG1laW5lbSBMYWVjaGVsbiBhcmJlaXRlbi4uLikKCkJpZWxlZmVsZCAuIG8gKGRhIGlzdCB3b2hsIHdhcyBkcmFuLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZlcndhbmRsdW5nLi4uLiAoQXRveiwgMjEuIFNlcCAyMDAwLCAxNTo0NjoxMCk6Cn4jISBybj1HYXN0MSBydD05Njk0ODM2Mzggcmc9c2NobWFycm4KfiMhIHRpZD05Njk0ODM2MzgKVW5kIHdhcyBoYXQgTmljaHRzIGRhbWl0IHp1IHR1bj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRGllZGVyLCAyMS4gU2VwIDIwMDAsIDIzOjA2OjIwKToKW1NlaGVyOkthcmlzXSBoYXQgamVtYW5kIHplaXQgdW5kIGx1c3QgYXVmIHdlZ2hpZXI/IGljaCBicmF1Y2ggbiB2cyA6KQpbU2VoZXI6RGlyaW9uXSBobW1tLiBrbGFyIDspCgp3ZW5pZyBzcGFldGVyLi4uCgpbVG9kOkxhcnNdIEVpbiBXZWdoaWVyIGhhdCBnZXJhZGUgRGlyaW9uIHVtZ2VicmFjaHQuCltUb2Q6RWluIFdlZ2hpZXJdIEdvdGNoYSEKCkRpZWRlciwgUm9jaHVzIGtlcmJlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmdWVyIExpYXJhIChIdW1uaSwgMjIuIFNlcCAyMDAwLCAwMjowNTozNCk6CkxpYXJhIHJ1ZnQ6IFNjaHJlaWJ0IG1laHIgQXJ0aWtlbCEKClBhc3NpZXJ0LiBOaWNodCB6dW0gZXJzdGVuIE1hbCB1bmQgdmVybXV0bGljaCBuaWNodCB6dW0gbGV0enRlbi4gSHVtbmkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZnVlciBMaWFyYSAoSHVtbmksIDIyLiBTZXAgMjAwMCwgMDI6MDg6MjYpOgp+IyEgcm49SHVtbmkgcnQ9OTY5NTgxMTM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY5NTgxMTM0CkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IGduYSBkb2NoIG5pY2ggc29sY2hlCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBXaWVzbyBuaWNodD8/CkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IGljaCBtZWluZSB0aWVmc2lubmlnZSBoaW50ZXJncnVlbmRpZ2UKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogaW50ZWRpbmdzdHVlbGxlIHVuZCBzbwoKV2llIGdld3VlbnNjaHQuCgpXdXNzdGV0IElociBzY2hvbiwgZGFzcyBkZXIgR2VzY2htYWNrIGVpbmVyIG1pbGRlbiBad2llYmVsIHNpY2gKbmljaHQgdm9uIGRlciBlaW5lcyBBcGZlbHMgdW50ZXJzY2hlaWRldCwgd2VubiBtYW4gbWl0IHp1Z2VoYWx0ZW5lcgpOYXNlIGhlZnRpZyBoaW5laW5iZWlzc3Q/PwoKSHVtbmksIGxlaWRlciBuaWNodCBtZWhyIHp1cmVjaG51bmdzZmFlaGlnLCBhYmVyIGluIGRlciByaWNodGlnZW4gUnVicmlrLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBmdWVyIExpYXJhIChTY2h3dWJiZWwsIDIyLiBTZXAgMjAwMCwgMTM6MjE6NDIpOgp+IyEgcm49SHVtbmkgcnQ9OTY5NTgxMzA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY5NTgxMTM0CkFjaCwgaGludGVyZ3J1ZW5kaWc/IEludGVsbGVsbD8gTmEgZ3V0LCB3aWUgd2FlciBkYXM/CgpMaWViZXNha3RlIHdpcmtlbiBsYXV0ZXIsIHdlbm4gYmVpZGUgZGFiZWkgYnJ1ZWxsZW4uCk9kZXI6IEJyYW5kc3B1cmVuIGluIEJpYmVsbiB2ZXJtZWlkZXQgbWFuLCB3ZW5uIG1hbiBkaWUgWmlnYXJldHRlbiBpbQpBc2NoZW5iZWNoZXIgYXVzZHJ1ZWNrdC4KCkJlc3Nlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkd1bW1pZHJhY2hlbj8hIChHcnVtcGYsIDIyLiBTZXAgMjAwMCwgMTU6MTQ6MjMpOgpbQWJlbnRldWVyOnh4eF0gd28gYmVrb21tdCBtYW4gZGVubiBndW1taXN0aWVmZWwgaGVyPwpbQWJlbnRldWVyOnh4eF0gVm9uIGVpbmVtIERyYWNoZW4gbmF0dWVybGljaC4gOykKW0FiZW50ZXVlcjp4eHhdIHZvbiBlaW5lbSBEcmFjaGVuPwpbQWJlbnRldWVyOkdydW1wZl0gamVwcCB2b20gYmVydWVobXRlbiBndW1taS1kcmFjaGVuLi4uCltBYmVudGV1ZXI6eHh4XSBndW1taS1kcmFjaGUgc29sbCBkYXMgbmVuIGpvY2sgc2Vpbj8KW0FiZW50ZXVlcjpLYXJhbV0gSmEsIGRlciBEcmFjaGUgaXN0IF9uaWNodF8gYXVzIEd1bW1pLgpbQWJlbnRldWVyOkdydW1wZl0gcXVhdHNjaC4uLiBkZXIgaXN0IGF1ZiBkZXIgZ3VtbWkgZWJlbmUKeHh4IHRlaWx0IERpciBtaXQ6IFdhaCwgamV0enQgZnJhZ3QgeHh4IG1pY2gsIG9iIGRpZSBHdW1taWViZW5lIG5hY2ggZGVyCnh4eCB0ZWlsdCBEaXIgbWl0OiBQZmxhbnplbmViZW5lIGtvbW10ISA6LSkKRHUgdGVpbHN0IHh4eCBtaXQ6IExPT09PT09PT09MIHNhZyBpaG0gc2llIHdhZXIgaW4gZGVyIHBhcmEgc3NwIGhpbnRlciBkZW0KRHUgdGVpbHN0IHh4eCBtaXQ6IGRyYWNvIHRlbXBlbCA7LSkpKQp4eHggdGVpbHQgRGlyIG1pdDogWnUgc3BhZXQsIGhhYiBpaG0gc2Nob24gZ2VzYWd0LCBkYXNzIHNpZSB2b3IgZGVyCnh4eCB0ZWlsdCBEaXIgbWl0OiBQZmxhbnplbmViZW5lIGlzdC4gLikKRHUgdGVpbHN0IHh4eCBtaXQ6ICpsYWNoKiBpY2ggZmluZGUgZGFzIGdlaG9lcnQgaW4gZGllIG1wYSAqa2ljaGVyCgpOYW1lIGRlciBiZXRlaWxpZ3RlbiBQZXJzb25lbiBhdXMgSG9lZmxpY2hrZWl0IHplbnNpZXJ0LgoKRWluIGdyaW5zZW5kZXIgR3J1bXBmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3VtbWlkcmFjaGVuPyEgKEJvaW5nLCAyMi4gU2VwIDIwMDAsIDE1OjI2OjI5KToKfiMhIHJuPUdydW1wZiBydD05Njk2Mjg0NjMgcmc9c2NobWFycm4KfiMhIHRpZD05Njk2Mjg0NjMKRGllIEd1bW1pZWJlbmUgaXN0IHNjaG9uIHNlaXQgbGFlbmdlcmVyIFplaXQgaW4gbWVpbmVuIEdlZGFua2VuLCB0YXRzYWVjaGxpY2gKYXVjaCBpbiBkZXIgUGFyYXdlbHQgLi4uIHdlciB3ZWlzcyB3YXMgZGFyYXVzIHdpcmQgLi4uIDspCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR3VtbWlkcmFjaGVuPyEgKEdhbmR1ciwgMjIuIFNlcCAyMDAwLCAxNToyODoxMyk6Cn4jISBybj1Cb2luZyBydD05Njk2MjkxODkgcmc9c2NobWFycm4KfiMhIHRpZD05Njk2Mjg0NjMKW1RvZDpMYXJzXSBFaW4gUGFyYS1PcmtiYWVyY2hlbiBoYXQgZ2VyYWRlIFhYWCB1bWdlYnJhY2h0LgoKOykgLi4uIEdhbmR1ciwgZWluemVpbGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHdW1taWRyYWNoZW4/ISAoTGlhcmEsIDIyLiBTZXAgMjAwMCwgMTk6MzA6MTApOgp+IyEgcm49Qm9pbmcgcnQ9OTY5NjI5MTg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY5NjI4NDYzCkhleSEgOi0pCkVyc3QgV2luZGViZW5lIGZlcnRpZ3N0ZWxsZW4gYmlkZGUuIDotKSkKU2NobGllc3NsaWNoIG1vZWNodGUgaWNoIGdlcm5lIHdpc3Nlbiwgd29mdWVyIGljaCBkYW1hbHMgZGllIGdhbnplbiBEaW5nZXJzCmdlc2FtbWVsdCBoYWIsIGRpZSBzaWNoIGRhbm4gaW4gbWVpbmVtIEhhdXMgd2llZGVyIGF1ZmdlbG9lc3QgaGFiZW4uICpnKgoKTGlhcmEsIFp3ZXJnZW56YXViZXJpbmUsIGdydWVuZGV0IHRyb3R6ZGVtIGdsZWljaCBtYWwgZWluZW4KUGFyYS1PcmtiYWVyY2hlbi1GYW5jbHViCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGb3JzY2hlbi4uLiAoRGllZGVyLCAyMi4gU2VwIDIwMDAsIDIwOjIyOjAxKToKRHUgdmVybGllcnN0IGtvbXBsZXR0IGRpZSBPcmllbnRpZXJ1bmcuCgotPiB1bnQgb3JpZW50aWVydW5nCgpTb3dhcyBzaWVoc3QgRHUgZGEgbmljaHQhCgpIYWNoLCB3aWUgcGFzc2VuZCA6LSkKCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRm9yc2NoZW4gVGVpbCAyIChEaWVkZXIsIDIyLiBTZXAgMjAwMCwgMjA6NTI6MjcpOgp1bnQgc3RyZWNrYmFuawoKRGFyYXVmIGthbm5zdCBEdSBqZWRlIE1lbmdlIFN0cmVjayBlaW56YWhsZW4gSEFIQUhBSEFIQUhBSEEKKHNjaGF1cmlnZSBBdG1vc3BoYWVyZSByZWl6dCBkb2NoIGltbWVyIHdpZWRlciB6dW0gUmVpc3NlbiB2b24gRmxhY2h3aXR6ZW4pLi4KCnVudCBmbGFjaHdpdHplCgpTb3dhcyBzaWVoc3QgRHUgZGEgbmljaHQhCgpOZSBpcyBrbGFyLCBrZWluZSB3ZWl0ZXJlbiBGcmFnZW4gOi0pCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9kZXIgc28uIChab29rLCAyMi4gU2VwIDIwMDAsIDIxOjA5OjM5KToKW1phdWJlcmVyOkNpbmRlcmVsbGFdIERhcyBpc3QgamEgbmNodCB6dW0gYXVzaGFsdGVuCltaYXViZXJlcjpab29rXSBIZXVsIGRvY2ghCkNpbmRlcmVsbGEgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KCgpFcyBtdXNzIG5vY2htYWwgZ2VzYWd0IHdlcmRlbjogWm9vayBpc3QgbGllYiB1bmQgbmV0dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPZGVyIHNvLiAoS2FyaXMsIDIyLiBTZXAgMjAwMCwgMjE6MTA6MzcpOgp+IyEgcm49Wm9vayBydD05Njk2NDk3Nzkgcmc9c2NobWFycm4KfiMhIHRpZD05Njk2NDk3NzkKSmEuIFVuZCBkYW1pdCBvdXRldCBzaWNoIFpvb2sgamEgYWxzIDJ0aWUgdm9uIENhdHRpZS4KSG0uIFNvbGx0ZSB1bnMgZGFzIG5pY2h0IHp1IGRlbmtlbiBnZWJlbj8KCkdlbmVyYWVsY2hlbiBLYXJpcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1YS4uLiAoUm9uZGEsIDIyLiBTZXAgMjAwMCwgMjM6MTk6NDYpOgpPZWhtIC0gZGEgd2FyIGRhbm4gZG9jaCB3b2hsIHp1IHZpZWwgd2VnLCBvZGVyIEFsbWk/CgpbQWxsZ2VtZWluOkFsbWR1ZGxlcl0gYW5vbnltaXplciBob2x0IHpldWdzIGFiLi4uZ2licyBuaWNodCBhdWNoIGVpbiBwcm9ncmFtbQpbQWxsZ2VtZWluOkFsbWR1ZGxlcl0gZGFzIG1pY2ggZWluIGZ1ZXIgYWxsZSBtYWwgdW5rZW5udGxpY2ggbWFjaHQsIGFub255bQpbQWxsZ2VtZWluOkFsbWR1ZGxlcl0gc3VyZmVuIGlzIGphIG9rLCBhYmVyIGVzIGdpYnQgYXVjaCBub2NoIGFuZGVyZSBkaW5nZS4uLgpbQWxsZ2VtZWluOlpvb2tdIGhhZWg/IHdhcyB3aWxsc3Q/CkRlaW4gRnJldW5kIEFsbWR1ZGxlciB0ZWlsdCBEaXIgbWl0OiB1bmQgYWNoIGphLi4ud2llIGtyaWVnIGljaCBtZWluZQpEZWluIEZyZXVuZCBBbG1kdWRsZXIgdGVpbHQgRGlyIG1pdDogZ2VuaXRhbGllbiB3aWVkZXI/CkRlaW4gRnJldW5kIEFsbWR1ZGxlciB0ZWlsdCBEaXIgbWl0OiAqZyogICAKSXAgd2VnIGlzdCBqYSBzY2hvbiBndXQgdW5kIHNjaG9lbiAtIGFiZXIgZ2xlaWNoIGFsbGVzIGFuZGVyZSBnZWh0IGRhbm4gZG9jaAp6dSB3ZWl0LCBBbG1pIDstKQoKU0NOUiwKClJvbmRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bmdlc2Nobml0dGVuIHdpZSBpbW1lciB1bmQgZnJpc2NoIHZvbiBkZXIgUHJlc3NlIChUc3VuYW1pLCAyMy4gU2VwIDIwMDAsIDAwOjU5OjIxKToKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIFRpYW1hayBpbiBSdWJyaWsgIm11ZWxsIi4KdHN1bmFtaQoKPiBubgoKUnVicmlrIDQ0OiBtdWVsbCwgQXJ0aWtlbDogMjkgdm9uIDI5Cm9lYWV1ZXNzT2VBZVVlIChUaWFtYWssIDIzLiBTZXAgMjAwMCwgMDA6NTY6NTMpOgoKdGVzdAoKClNlaHIsIHNlaHIsIHNlaHIsIHNlZWVlaHIgbWVya3d1ZXJkaWchISEhCgpUc3VuYW1pLCBrcmF0eiBzaWNoIGltbWVyIG5vY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdW5nZXNjaG5pdHRlbiB3aWUgaW1tZXIgdW5kIGZyaXNjaCB2b24gZGVyIFByZXNzZSAoVGlhbWFrLCAyMy4gU2VwIDIwMDAsIDAxOjEwOjAyKToKfiMhIHJuPVRzdW5hbWkgcnQ9OTY5NjYzNTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY5NjYzNTYxClRpYW1hayBkZW5rdCAuIG8gTyhtYW5jaGUgTGV1dGUgbGVzZW4gYXVjaCB3aXJrbGljaCBqZWRlIFJ1YnJpaykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdW5nZXNjaG5pdHRlbiB3aWUgaW1tZXIgdW5kIGZyaXNjaCB2b24gZGVyIFByZXNzZSAoVHN1bmFtaSwgMjMuIFNlcCAyMDAwLCAwMToxMTo0NCk6Cn4jISBybj1UaWFtYWsgcnQ9OTY5NjY0MjAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY5NjYzNTYxCkljaCBtZWludGUsIG5hY2ggYmxhYmxhYmxhYiBtdWVsbCBrYW0gYXVmIGRlciBuYWVjaHN0ZW4gWmVpbGUgbWVpbiBOYW1lLi4uCktvbWlzY2gsIGtvbWlzY2gsIGtvbWlzY2ggOikpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB1bmdlc2Nobml0dGVuIHdpZSBpbW1lciB1bmQgZnJpc2NoIHZvbiBkZXIgUHJlc3NlIChUaWFtYWssIDIzLiBTZXAgMjAwMCwgMDE6MTM6MzYpOgp+IyEgcm49VHN1bmFtaSBydD05Njk2NjQzMDQgcmc9c2NobWFycm4KfiMhIHRpZD05Njk2NjM1NjEKVGphLCBlcyBpc3Qgc2Nob24gbmljaHQgc28gZWluZmFjaCwgc2VpbiBURi96TXVkIHJpY2h0aWcgenUga29uZmlndXJpZXJlbi4gOy0pCgoKVGlhbWFrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaGEuIChCYW1iaSwgMjMuIFNlcCAyMDAwLCAxNToyMToyOCk6CjE1OjE5ID46d3Vlcmd0IGVpbmVuIEV4LVRlbGVrb20tTWl0YXJiZWl0ZXIuCkJhbWJpIHd1ZXJndCBlaW5lbiBFeC1UZWxla29tLU1pdGFyYmVpdGVyLgoxNToxOSA+ZGVuayBvZGVyIGhlaXNzdCBkYXMgVGVsZWtvbS1FeC1NaXRhcmJlaXRlcgpEdSBkZW5rc3QgICAuIG8gTyAob2RlciBoZWlzc3QgZGFzIFRlbGVrb20tRXgtTWl0YXJiZWl0ZXIpCjE1OjE5ID5HcmVsbGdlbiBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgR3JlbGxnZW4uCkFyYXRoIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBBcmF0aC4KRGllZGVyIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBEaWVkZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2huZSB3b3J0ZSAoU2t5LCAyNC4gU2VwIDIwMDAsIDA2OjQxOjAwKToKWzxNYXN0ZVI+OkJyZWl0YXh0IHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ2VtYWNzJywgd29yYXVmIGRpZXNlIHNpY2gKICAgICAgICAgIGluIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXQpbPE1hc3RlUj46QnJlaXRheHQgdmVybGFlc3N0IGFscyBMZXR6dGVyIGRpZSBFYmVuZSAnRHJlc2RlbicsIHdvcmF1ZiBkaWVzZQogICAgICAgICAgc2ljaCBpbiBlaW5lbSBCbGl0eiBva3RhcmluZW4gTGljaHRzIGF1ZmxvZXN0Ll0KWzxNYXN0ZVI+OkJyZWl0YXh0IHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ1JhZGlvJywgd29yYXVmIGRpZXNlIHNpY2gKICAgICAgICAgIGluIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXQpbPE1hc3RlUj46QnJlaXRheHQgdmVybGFlc3N0IGFscyBMZXR6dGVyIGRpZSBFYmVuZSAnZnVzc2JhbGwnLCB3b3JhdWYgZGllc2UKICAgICAgICAgIHNpY2ggaW4gZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCls8TWFzdGVSPjpCcmVpdGF4dCB2ZXJsYWVzc3QgYWxzIExldHp0ZXIgZGllIEViZW5lICdLYXJsc3J1aGUnLCB3b3JhdWYgZGllc2UKICAgICAgICAgIHNpY2ggaW4gZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCls8TWFzdGVSPjpCcmVpdGF4dCB2ZXJsYWVzc3QgYWxzIExldHp0ZXIgZGllIEViZW5lICdLb21wbGV0dGxvZXN1bmdlbicsIHdvcmF1ZgogICAgICAgICAgZGllc2Ugc2ljaCBpbiBlaW5lbSBCbGl0eiBva3RhcmluZW4gTGljaHRzIGF1ZmxvZXN0Ll0KWzxNYXN0ZVI+OkJyZWl0YXh0IHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ0RpYWJsb0lJJywgd29yYXVmIGRpZXNlCiAgICAgICAgICBzaWNoIGluIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXQpbPE1hc3RlUj46QnJlaXRheHQgdmVybGFlc3N0IGFscyBMZXR6dGVyIGRpZSBFYmVuZSAnVFYnLCB3b3JhdWYgZGllc2Ugc2ljaCBpbgogICAgICAgICAgZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCls8TWFzdGVSPjpCcmVpdGF4dCB2ZXJsYWVzc3QgYWxzIExldHp0ZXIgZGllIEViZW5lICdNYXJidXJnJywgd29yYXVmIGRpZXNlCiAgICAgICAgICBzaWNoIGluIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXQpbPE1hc3RlUj46QnJlaXRheHQgdmVybGFlc3N0IGFscyBMZXR6dGVyIGRpZSBFYmVuZSAndXJhbHR3aXR6Jywgd29yYXVmIGRpZXNlCiAgICAgICAgICBzaWNoIGluIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXQpbPE1hc3RlUj46QnJlaXRheHQgdmVybGFlc3N0IGFscyBMZXR6dGVyIGRpZSBFYmVuZSAnem11ZCcsIHdvcmF1ZiBkaWVzZSBzaWNoCiAgICAgICAgICBpbiBlaW5lbSBCbGl0eiBva3RhcmluZW4gTGljaHRzIGF1ZmxvZXN0Ll0KWzxNYXN0ZVI+OkJyZWl0YXh0IHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ0ZyYXVlblBvd2VyJywgd29yYXVmIGRpZXNlCiAgICAgICAgICBzaWNoIGluIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXQpbPE1hc3RlUj46QnJlaXRheHQgdmVybGFlc3N0IGFscyBMZXR6dGVyIGRpZSBFYmVuZSAnYm9semVuendlcmdlJywgd29yYXVmCiAgICAgICAgICBkaWVzZSBzaWNoIGluIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpodWFjaCwgd2llIHN1ZXNzIChRaXRlc3MsIDI0LiBTZXAgMjAwMCwgMTI6NTQ6NTQpOgp0aWVmc3RlcyBLYW1wZmdldHVlbW1lbC4KRHVlIHNjaGllc3N0IGVpbmVuIFNhZXVyZXN0cmFobCBhdWYgZGllIFNjaGF0dGVuZnJhdS4KRHUgc2NobGFlZ3N0IGRpIFNjaGF0dGVuZnJhdSB6dSBCcmVpLgpEZXIgU2NoYXR0ZW5tYW5uIHRyaWZmdCBEaWNoLgpEdSBncmVpZnN0IGRpZSBTY2hhdHRlbmZyYXUgbWl0IGVpbmVtIFNjaHdlcnQgYW4uCkRpZSBTY2hhdHRlbmZyYXUgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRGVyIFNjaGF0dGVubWFubiB0cmlmZnQgRGljaC4KRGVyIEtsYW5nIGVpbmVyIFZpb2xpbmUgemVycmVpc3N0IGRpZSBTdGlsbGUuCgo/Pz8KV2VsY2hlIFN0aWxsZT8gS2xpbmcgS2xvbmcgS2xhbmcgU2NoZXBwZXIgWmlzY2ggQnVtbSBLbmFsbCBTY2hlcHBlciBLbGluZwpLbGFuZyBPdW1wZgoKU3RpbGxlLi4uc2ljaGVybGljaAoKUUkqKiBmYXN0IHNjaHdlaWdlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlaXplbiAoR3JlbGxnZW4sIDI0LiBTZXAgMjAwMCwgMTg6Mzc6NTIpOgpHcmFkZSBpbSBLYW1wZi4uLjoKCkJld2VndW5nIGtvbW10IGluIGRpZSBMdWZ0IHVuZCBEdSBsZW5rc3Qgc2llIGF1ZiBkYXMgS3Jpc3RhbGx3ZWl6ZW4uCiAgRWluIFdpbmRzdG9zcyBzY2h1ZXR0ZWx0IGRhcyBLcmlzdGFsbHdlaXplbiBkdXJjaC4KICBEYXMgS3Jpc3RhbGx3ZWl6ZW4gZ3JlaWZ0IERpY2ggbWl0IHNlaW5lciBTcHJpdHppZ2tlaXQgYW4uCgpBZWgsIGFsc28gZHVyY2hnZXNjaHVldHRlbHQga2FubiBkYXMgbmljaHQgbWVociBzcHJpdHppZyBzZWluLCBvZGVyPwoKRG9jaCB3ZW5pZyBzcGFldGVyOgoKRGFzIEtyaXN0YWxsd2VpemVuIHdpcmQgc2NoYWwgdW5kIGluIGRlbiBBdXNndXNzIGdla2lwcHQuCgpBaGEsIHd1c3N0IGljaHMgZG9jaCA6LSkKCkdyZWxsZ2VuLCBncmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJlc29mZmVuZSBjaGFvdGVuLi4uIChKZW5hbmRyYSwgMjQuIFNlcCAyMDAwLCAyMTo1MzozMCk6Cmt1cnogbmFjaCBkZW0gc3RhdGkgaW4gY2x6Li4uIDopCkJvcmthIHJ1ZnQ6IGp1cGkKQm9ya2EgcnVmdDogcnVmZSB6aWVodCAyNCBtcCBhYj8gc2VpdCB3YW5uIGRhcyBkZW5uPwpCb3JrYSBydWZ0OiB1cHMgamV0enQgYXVmIGVpbm1hbCA0MApCb3JrYSBydWZ0OiBvaGhhIGpldHpldCAzMQpCb3JrYSBydWZ0OiB1bmQgbnUgMjcKR2FzdDEgcnVmdDogZGFubiBydWYgbmV0IHNvbmRlciBuaW1tIG5lIGViZW5lLi4uLnNjaHJlaWhhbHoKQm9ya2EgcnVmdDogamV0emUgMjQsIGJhbGQgaGFiIGljaCBrZWluZSBtcCBtZWhyICA6KQpWYXJsYXJpb24gcnVmdDogZGFubiBpc3QgamEgZW5kbGljaCBydWhlCkJvcmthIHJ1ZnQ6IGljaCBiaW4gdm9sbCA6KSB3YXIgc3RhbW10aXNjaCBoaWVyLCBnbGVpY2ggaXNzIHNjaGx1c3NzcwpCb3JrYSBydWZ0OiB2ZXJkYW1tdCBzbyBsYW5nZSB3YXIgaWNoIGRvY2ggZ2FyIG5pY2h0IGlkbGU/IHdpZSBrb21tdCBlcyBkYXNzCkJvcmthIHJ1ZnQ6IHJ1ZmUgZWluZW0gc28gdmllbCBtcCBhYnppZWhldD8KQm9ya2EgcnVmdDogdXBzIGRhcyB3YXJuIGpldHp0IHJlY2h0IHZpZWxlIGJ1Y2hzdGFiZW4sIGFsc28gcmVjaHQgdmllbCBtcCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmV1ZXJ3ZWhyPyE/IChBbm9yaXMsIDI1LiBTZXAgMjAwMCwgMTg6NTE6NTUpOgpFaW4gS29jaGxvZWZmZWwuICgxMTIpCjU5MDAwMCBNdWVuemVuLgpFaW4gU2NocmFuayAoZ2VvZWZmbmV0KS4KCi0gQW5vcmlzIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGEuLi4gKEdub21lLCAyNS4gU2VwIDIwMDAsIDIyOjEwOjU5KToKQ2FrZXkgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbiBGcmV1bmQgQ2FrZXkgdGVpbHQgRGlyIG1pdDogQmluIGdsZWljaCB3aWVkZXIgd2VnCkluIGRlciBTY2hhZW5rZSBzY2hlaW50IGVzIGhvY2ggaGVyIHp1IGdlaGVuLgpDYWtleSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCnN1ZmZrb3BwIQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVyZ3MgKEx1ZywgMjUuIFNlcCAyMDAwLCAyMzoxMjo1NCk6CgpEdSB0ZWlsc3QgRGFuY2VyIG1pdDogd2VubiBtYW4gdm9tIFNhdGFuIHNwcmljaHQgOykKW0JlaWxlaWQ6UGVydGluYXhlXSBhdWYgamVkZW4gZmFsbCBoYWIgaWNoIG1pciBkYXMgZGluZyBlY2h0IGVya2FlbXBmdCBtaXQgYWxsCltCZWlsZWlkOlBlcnRpbmF4ZV0gbWVpbmVyIG5haXZpdGFldApEYW5jZXIgdGVpbHQgRGlyIG1pdDogdGFsa2luZyBvZiB0aGUgZGV2aWwgOykgWzIzOjEyXQoKT2hhLi4uCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWxzdGVyIChBbm9yaXMsIDI2LiBTZXAgMjAwMCwgMTA6MTk6MDQpOgpkYXMgaXMgYWJlciBuZSBzdGFya2UgZWxzdGVyIDspCgpEaWVzZXIgVm9nZWwgaXN0IGJlcnVlaG10IGZ1ZXIgc2VpbmVuIGF1c2dld2FlaGx0ZW4gR2VzY2htYWNrLCB3YXMga2xlaW5lLAp3ZXJ0dm9sbGUgR2VnZW5zdGFlbmRlIGJldHJpZmZ0LiBFciBoYXQgYXVjaCBzY2hvbiBlaW4gQXVnZSBhdWYgRGVpbmUKQXVzcnVlc3R1bmcgZ2V3b3JmZW4uIEdpYiBBY2h0IQpTaWUgdHJhZWd0IGJlaSBzaWNoOgo0MiBlaW5rYXJhZXRpZ2UgU2FwaGlyZS4KNDQgZWlua2FyYWV0aWdlIEFxdWFtYXJpbmUuCgotIEFub3JpcwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYmVpIGRlbiBEdW5rZWx6d2VyZ2VuIC4uLiAoTGlhcmEsIDI2LiBTZXAgMjAwMCwgMTA6MjI6MzApOgpmcmFnZSBrb2VuaWcgbmFjaCBrdWVjaGUKTWFrJ2xpbXVyIGdydW1tZWx0OiBWb24gS3VlY2hlbiBoYWJlIGljaCBrZWluZSBBaG51bmcsIGljaCBiaW4gZG9jaCBrZWluZQpNYWsnbGltdXIgZ3J1bW1lbHQ6IEZyYXUhCgpMaWFyYSwgWndlcmdlbnphdWJlcmluZSwgZGVua3QgLiBvIE8gKGFoamEpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmbHcgKFdvb2R5LCAyNi4gU2VwIDIwMDAsIDEyOjIzOjM1KToKW1BobHlha2VuLi4uXQpMaWFyYSBhbiBhbGxlIFphdWJlcmVyOiBpY2ggZ2xhdWJlIG1pdCBkZWluZW0gbHZsIHNjaGFmZnN0ZSBkYXMgc2Nob24KTGlhcmEgYW4gYWxsZSBaYXViZXJlcjogaXJnZW5kd2llIDstKSkKTG9sbGkgYW4gYWxsZSBaYXViZXJlcjogZ2VuYXUhIGR1IGhhc3QgZXMgZXJmYXNzdCA6LSkKTG9sbGkgYW4gYWxsZSBaYXViZXJlcjogc2NoYWZmZW4gaXMgbmljaCBkaWUgZnJhZ2UgOi0pLiBhYmVyIG1hbiBtdXNzIGphIGRlbQpMb2xsaSBhbiBhbGxlIFphdWJlcmVyOiBydWYgZ2VyZWNodCB3ZXJkZW4gdW5kIG4gYmlzc2NoZW4gcnVtamFtbWVybi4uLgpbLi4uXQpbVG9kOkxhcnNdIFBobHlha2VuIGhhdCBnZXJhZGUgTG9sbGkgdW1nZWJyYWNodC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcGFldGUgRXJrZW5udG5pcyAoT2dhciwgMjYuIFNlcCAyMDAwLCAxNzoxNTo0NCk6Cj4gaWQgbWFudGVsCkR1IGlkZW50aWZpemllcnN0IGRlbiBMZWljaGVubWFudGVsLiBFciBiZXN0ZWh0IGF1cyBIYXV0LCBXb2xsZSwgTGVkZXIgdW5kCk1ldGFsbC4gQXVzc2VyZGVtIGJlbWVya3N0IER1IGZvbGdlbmRlczoKRHUgd2lsbHN0IGdhciBuaWNodCB3aXNzZW4sIHdvcmF1cyBkaWVzZXIgTWFudGVsIGdlbWFjaHQgaXN0LgoKLS0gCk9nYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyZXVuZGUgOy0pIChMaWFyYSwgMjYuIFNlcCAyMDAwLCAxNzoxNjo0OCk6CkVpbiBEdW5rZWxlbGYgZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBhbi4KRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IHdlciBpc24gZWluIGRhbGYKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGRlbGYKRG90eiB0ZWlsdCBEaXIgbWl0OiBlaW4gZGFsZj1kdW5rZWwtYWxmIChmcmlzc3QgbnVyIHNjaHdhcnplIGthdHplbikgWzE3OjExXQpLYXJpcyB0ZWlsdCBEaXIgbWl0OiBlaW4gZHVua2VsYWxmPyA7KSkgWzE3OjExXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc3BydWVjaGUgKE11cGZlbCwgMjYuIFNlcCAyMDAwLCAyMTozNDowMyk6CkVyIHdhciBzbyBzcGFyc2FtLCB3ZW5uIGJlaSBpaG0gbWFsIGRlciBHcm9zY2hlbiBmaWVsIGhhdCBlciBpaG4gYXVmIGhhbGJlbQpXZWdlIHdpZWRlciBhdWZnZWZhbmdlbi4KClNlaW4gR2V3aXNzZW4gd2FyIHJlaW4gLSBlciBoYXQgZXMgbmllIGJlbnV0enQuCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOy0pIChNb3Jnb3RoLCAyNy4gU2VwIDIwMDAsIDEyOjE4OjI2KToKW1NlaGVyOlBlcnRpbmF4ZV0gaXN0IGRpZSBoeWRyYSBwbGF0dCA/CltTZWhlcjpPcmt0b2V0ZXJdIGRhcyB3dWVyZGVzdCBkdSBzZWhlbiwgUGVydGluYXhlCkRhcyBNb3JnZW5HcmF1ZW4gZXJ6aXR0ZXJ0IHVudGVyIGVpbmVtIGxhbmdlem9nZW5lbiwgdW5tZW5zY2hsaWNoZW4gU2NocmVpLgpEaWUgSHlkcmEgc3RpcmJ0IGluIGVpbmVtIE1lZXIgdm9uIEJsdXQuCkNpbmRlcmVsbGEgcmVpaHQgc2ljaCBudW4gaW4gZGllIExpc3RlIGRlciBzYWdlbnVtd29iZW5lbiBIeWRyYXRvZXRlciBlaW4gdW5kCmJla29tbXQgZWluZSBkZXIgbGVnZW5kYWVyZW4gUnVlc3R1bmdlbiBkaWVzZXIgWnVuZnQuIAoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzcHJ1ZWNoZSAoWWVuZGksIDI3LiBTZXAgMjAwMCwgMTY6Mzc6MTkpOgp+IyEgcm49TXVwZmVsIHJ0PTk2OTk5Njg0MyByZz1zY2htYXJybgp+IyEgdGlkPTk2OTk5Njg0MwpXYXIgZGVyIHp3ZWl0ZSBuaWNodCB2b24gS2Flc3RuZXI/CgpXbyB3aXIgZ2VyYWRlIGJlaSBBcGhvcmlzbWVuIHNpbmQ6CiJBbGxlIE1lbnNjaGVuIHNpbmQgQnJ1ZWRlciAtLSBzY2hvbiBzZWl0IEthaW4gdW5kIEFiZWwiICAoVWxsYSBTY2hyb2VkZXIpCgoiV2VubiBtYW4gYmVpIGVpbmlnZW4gTWVuc2NoZW4gaW5zIFNjaHdhcnplIHRyZWZmZW4gd2lsbCwgbXVzcyBtYW4gbnVyIGF1ZiBkaWUKU2VlbGUgemllbGVuIiAgKFdlcm5lciBNaXRzY2gpCgoiV2VyIGVpbmUgc2NoYXJmZSBadW5nZSBmdWVocnQsIGlzdCBiaXMgYW4gZGllIFphZWhuZSBiZXdhZmZuZXQiCihXZXJuZXIgTWl0c2NoKQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZWtyYXR6dCA/IChJbWRhLCAyOC4gU2VwIDIwMDAsIDAwOjQ4OjU2KToKV2VobXVldGlnIGFuIGFsdGUgWmVpdGVuIGRlbmtlbmQsIHNjaGxhZWdzdCBEdSBEZWluIFRvZGVzLVRhZ2VidWNoIGF1ZiB1bmQKbGllc3QgZGllIEVpbnRyYWVnZSBhdWYgZGVuIDIgU2VpdGVuOgoKPHNjaG5pcHA+CgpEb24sIDI4LiBTZXAgMjAwMCwgMDA6MDg6MDg6ClBlaW5saWNoLCBkYXNzIGRlciBMYXZhd2lycmxpbmcgbWljaCB6dWxldHp0IG51ciBub2NoIGdla3JhdHp0IGhhdC4KCmFjaHNvLi4uIG5hIGRhbm4uLi4uCgogIERlciBMYXZhd2lycmxpbmcgemVyc2NobWV0dGVydCBEaWNoIGluIGtsZWluZSBTdHVlY2tjaGVuLgogIER1IGdyZWlmc3QgZGVuIExhdmF3aXJybGluZyBtaXQgZGVtIEVpc3N0YWIgYW4uCiAgRHUgdmVyZmVobHN0IGRlbiBMYXZhd2lycmxpbmcuCiAgRHUgdmVyZmVobHN0IGRlbiBMYXZhd2lycmxpbmcuCiAgRGVyIExhdmF3aXJybGluZyBhdG9taXNpZXJ0IERpY2guCltUb2Q6TGFyc10gRWluIExhdmF3aXJybGluZyBoYXQgZ2VyYWRlIEltZGEgdW1nZWJyYWNodC4KRAoKYWJlciB3ZW5pZ3N0ZW4gOgoKRG9uLCAyOC4gU2VwIDIwMDAsIDAwOjEyOjE2OgpTY2hhZGUsIGRpZSBIZWxpeCBQb21hdGEgaGF0dGUgaWNoIHNjaG9uIGF1ZiBkZXIgU2Nod2VsbGUgZ2VoYWJ0LgoKSW1kYS4gR2VodCBzbyBzY2huZWxsIG5pY2htZWhyIGF1cyBkZXIgR2lsZGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXIgaXN0IGRhcyBhbHNvLi4uIChMdWcsIDI4LiBTZXAgMjAwMCwgMDI6MDk6NDcpOgoKRHJvbGxpIHNhZ3Q6IHNvIHRyYW5zIGljaCBtaWNoIGpldHp0IGlucyBiZXR0CkRlciBXYW5kbGVyIHZlcnNjaHdpbmRldCBwbG9ldHpsaWNoLgoKCkFIQSEKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3dhcy4uLiAoU3dvdGwsIDI4LiBTZXAgMjAwMCwgMTA6MzE6MzApOgpDaGV3aWUgdmVyc2Nod2luZGV0IG1pdCBEZWluZXIgSG9zZSBhdWYgZGllIFRvaWxldHRlLgoKV2FzIHdpbGwgZGVyIGRlbm4gZGFtaXQ/PyBOYWphLCBpY2ggZGVuayBiZXNzZXIgbmljaHQgZHJ1ZWJlciBuYWNoCnVuZCBtZXR6ZWwgbWlyIG5lIG5ldWUuLi4KClN3b3RsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU293YXMuLi4gKE1vcmdvdGgsIDI4LiBTZXAgMjAwMCwgMTA6Mzk6NDUpOgp+IyEgcm49U3dvdGwgcnQ9OTcwMTI5ODkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcwMTI5ODkwCltUb2Q6TGFyc10gRWluIEdub20gaGF0IGdlcmFkZSBIb3NlIHVtZ2VicmFjaHQuCgpIbW0sIGFsc28gRGVpbmUgSG9zZSBsZWJ0IHVuZCBDaGV3aWUgaXN0IGVpbiBHbm9tIHVuZCBzY2hlaW50IFNFSFIgZ2VsYWRlbgpnZXdlc2VuIHp1IHNlaW4gOy0pCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIEFudHdvcnRlbiBhdWYgZWluZSBoYXJtbG9zZSwgdW5zY2h1bGRpZ2UgRnJhZ2UgLi4uIDstKSAoTGlhcmEsIDI4LiBTZXAgMjAwMCwgMTI6NTQ6MDUpOgpbQWJlbnRldWVyOktudWRzc29uXSB3aWUgbGF1dGV0IGRlciBzeW50YXggZGFtaXQgaWNoIG1pdCBkZW0gcG9ueSBkdXJjaCBkZW4KW0FiZW50ZXVlcjpLbnVkc3Nvbl0gZmx1c3Mga29tbWU/CgpbQWJlbnRldWVyOkxpbmZsYXNdIHRyZXRlIHBvbnkgZHVyY2ggZmx1c3MuLi4uCltBYmVudGV1ZXI6S251ZHNzb25dIHdhbGRiYXVlcm5ob2YgcXVlc3QuLi4KW0FiZW50ZXVlcjpMaW5mbGFzXSBQcnVlZ2VsIFBvbnkuLi4uCltBYmVudGV1ZXI6S251ZHNzb25dIGF1Y2ggc2lubnZvbGxlIGhpbndlaXNlCltBYmVudGV1ZXI6Q3JvZnRdIHN0ZWlnZSBhdWYgcG9ueSBvZGVyIHNvCltBYmVudGV1ZXI6WWFubmlzXSByZWl0ZSBhdWYgcG9ueSBkdXJjaCBmbHVzcwpbQWJlbnRldWVyOkdvbGFzXSBiZXN0ZWlnZSAuLi4gOykKW0FiZW50ZXVlcjpMaW5mbGFzXSBUb2V0ZSBQb255OyBuZWhtZSBwb255IGF1czsgYmF1ZSBib3R0IGF1cyBrbm9jaGVuOyBzcGFubmUKW0FiZW50ZXVlcjpMaW5mbGFzXSBoYXV0IHVtIGJvb3Q7IHJ1ZGVyIHVlYmVyIGZsdXNzCltBYmVudGV1ZXI6Q3JvZnRdIHVuZCBhYiBkYSBlaW5mYWNoIG5vcm1hbCBtaXQgaGltbWVsc3JpY2h0dW5nZW4KW0FiZW50ZXVlcjpZYW5uaXNdIGJpc3QgZHUgc2Nob24gYXVmIGRlbSBwb255IGRyYXVmPwpbQWJlbnRldWVyOkxpbmZsYXMgYXJnbHQuXQpbQWJlbnRldWVyOktudWRzc29uXSBqYQpbQWJlbnRldWVyOktudWRzc29uXSB1bmQgYXVjaCBzY2hvbiBhbiBkZXIgcmljaHRpZ2VuIHN0ZWxsZQpbQWJlbnRldWVyOkNyb2Z0XSBhbiBkZXIgcmljaHRpZ2VuIHN0ZWxsZSAnbm9yZGVuJwpbQWJlbnRldWVyOllhbm5pc10gZGFubiBzbyB3aWUgZHUgbm9ybWFsIGF1Y2ggZHVyY2ggZGVuIGZsdXNzIGdlaHN0CltBYmVudGV1ZXI6S251ZHNzb25dIGhhYnMKW0FiZW50ZXVlcjpLbnVkc3Nvbl0gZGFua2UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJbnRlbGxpZ2VudGVyZSBSYXR0ZW4hIChab29rLCAyOC4gU2VwIDIwMDAsIDIwOjM0OjEzKToKfiMhIHJuPVRzdW5hbWkgcnQ9OTcwMTY1OTgwIHJnPWQud3Vlc3RlCn4jISB0aWQ9OTcwMTY1OTgwCkRhbWl0IGlzdCBkZXIgRmxhbWV3YXIgZXJvZWZmbmV0LiBFcyBzaW5kIHdpZWRlciBSYXR0ZW4gdW5kIG51biAKbGVndCBsb3MhIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBJbnRlbGxpZ2VudGVyZSBSYXR0ZW4hIChUc3VuYW1pLCAyOC4gU2VwIDIwMDAsIDIwOjM1OjM5KToKfiMhIHJuPVpvb2sgcnQ9OTcwMTY2MDUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcwMTY1OTgwClpvb2ssIGR1IGJvZXNlciwgc2NobGltbWVyIFVucnVoZXN0aWZ0ZXIgZHUhIDopKSkKClRzdW5hbWksIGxpZWIgdW5kIG5ldHQgKHp1IFJhdHRlbikuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZWlza2xhciAuLi4gKEFyaywgMjguIFNlcCAyMDAwLCAyMjo1MDoyMSk6Ck1hbCB3aWVkZXIgYmVsaWVidGVzIFRoZW1hOgoKTWF0aXMgdGVpbHQgRGlyIG1pdDogc3RhcmtlIGVsZmVuIGdpYnQgZXMgbmljaHQKRHUgdGVpbHN0IE1hdGlzIG1pdDogZG9jaCA6KQpNYXRpcyB0ZWlsdCBEaXIgbWl0OiBnZXJ1ZWNodCwgbmljaHRzIHdlaXRlciA7bykKRHUgdGVpbHN0IE1hdGlzIG1pdDogZ2VydWVjaGUgcGFzc2VuIGJlc3NlciB6dSBkaXIsIHN0aW1tdApNYXRpcyBzY2h1ZXR0ZWx0IGF1cyBkZXIgRmVybmUgc2VpbmVuIGdhbnplbiBEcmVjayB1ZWJlciBEaXIgYXVzLiBQZnVpIQoKVm9ydXJ0ZWlsIGJlc3RhZXRpZ3QsIHdlaXRlcm1hY2hlbi4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGEhIChHbm9tZSwgMjkuIFNlcCAyMDAwLCAwMTo0OToxNSk6CkR1IG9lZmZuZXN0IGRpZSBTY2hhdHpraXN0ZS4KSW4gZGVyIFNjaGF0emtpc3RlIGJld2FocnQgQ2xvZGl1cyBhbGwgc2VpbiBHZWxkIGF1Zi4KU2llIGlzdCBnZW9lZmZuZXQgdW5kIGxlZXIuCgpoYXQgZWluZW4gZnVzc2JvZGVuIGF1cyBhbGFiYXN0ZXIgYWJlciBrZWluIGdlbGQgaW4gZGVyIGtpc3RlLi4uCnBmZmZmZmZmZmZmZmZmZnQuIChjKSB6ZXBoeXIgOikKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWhhISAoVHN1bmFtaSwgMjkuIFNlcCAyMDAwLCAwMTo0OTo1Myk6Cn4jISBybj1Hbm9tZSBydD05NzAxODQ5NTUgcmc9c2NobWFycm4KfiMhIHRpZD05NzAxODQ5NTUKRGllIFB1dHpmcmF1IGhhdCBlcyBnZW5vbW1lbiEgKnp3aW5rZXIgenUgR25vbWUqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdWVyIEFyayEgRnVlciBab29rISBSZTogTG9lc2NodCBzaWUhIERhcyB3aXJkIGJlbG9obnQhIEVudHp1ZyEgT3JkZW4uIFpvb2sgaXN0IG51biB2ZXJ3aXJydC4gKENhdHdlYXpsZSwgMjkuIFNlcCAyMDAwLCAwODo0Njo0OCk6ClJ1YnJpayAxOiBhbGxnZW1laW5lcywgQXJ0aWtlbDogMjggdm9uIDcwCkZ1ZXIgQXJrISAoWm9vaywgMjguIFNlcCAyMDAwLCAyMzoyMTo0Myk6Cgpab29rIGlzdCBsaWViIHVuZCBuZXR0LgoKUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiAyOSB2b24gNzAKRnVlciBab29rISAoQXJrLCAyOC4gU2VwIDIwMDAsIDIzOjIzOjE5KToKClRyb2xsIERpY2guCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI4IHZvbiA2OApSZTogRnVlciBab29rISAoWm9vaywgMjguIFNlcCAyMDAwLCAyMzoyMzo0Myk6CltCZXp1ZzogQXJ0aWtlbCAoZ2Vsb2VzY2h0Pykgdm9uIEFyayB2b20gMjguIFNlcCAyMDAwLCAyMzoyMzoxOV0KCkhleSwgZmFuZyBoaWVyIG5pY2h0IGFuLCBpbiBkZXIgUnVicmlrIGFsbGdlbWVpbiBpcmdlbmRlaW5lbiBTY2htYXJybgp6dSBzY2hyZWliZW4uIAoKWm9vay4KClJ1YnJpayAxOiBhbGxnZW1laW5lcywgQXJ0aWtlbDogMjggdm9uIDY3ClJlOiBSZTogRnVlciBab29rISAoQXJrLCAyOC4gU2VwIDIwMDAsIDIzOjI1OjA1KToKW0JlenVnOiBBcnRpa2VsIChnZWxvZXNjaHQ/KSB2b24gWm9vayB2b20gMjguIFNlcCAyMDAwLCAyMzoyMzo0M10KClp3ZXJnZSBkdWVyZmVuIGFsbGVzLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiAyOCB2b24gNjYKUmVeMzogRnVlciBab29rISAoWm9vaywgMjguIFNlcCAyMDAwLCAyMzoyNTozMSk6CltCZXp1ZzogQXJ0aWtlbCAoZ2Vsb2VzY2h0Pykgdm9uIEFyayB2b20gMjguIFNlcCAyMDAwLCAyMzoyNTowNV0KClVuZCAic3RhcmtlIEVsZmVuIj8gOykKClpvb2suCgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI4IHZvbiA2NQpSZV40OiBGdWVyIFpvb2shIChMdWcsIDI4LiBTZXAgMjAwMCwgMjM6MjY6MzgpOgpbQmV6dWc6IEFydGlrZWwgKGdlbG9lc2NodD8pIHZvbiBab29rIHZvbSAyOC4gU2VwIDIwMDAsIDIzOjI1OjMxXQoKClN0YXJrZSBFbGZlbiBnaWJ0IGVzIG5pY2h0Li4uCgpMdWcKClJ1YnJpayAxOiBhbGxnZW1laW5lcywgQXJ0aWtlbDogMjggdm9uIDY0ClJlXjQ6IEZ1ZXIgWm9vayEgKEFyaywgMjguIFNlcCAyMDAwLCAyMzoyNzo0Nik6CltCZXp1ZzogQXJ0aWtlbCAoZ2Vsb2VzY2h0Pykgdm9uIFpvb2sgdm9tIDI4LiBTZXAgMjAwMCwgMjM6MjU6MzFdCgpGdWVocmUgbWljaCBuaWNodCBpbiBXaWRlcnNwcnVlY2hlLiBTb25kZXJuIGVybG9lc2UgdW5zIHZvbiBkZW0gWm9vay4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKClJ1YnJpayAxOiBhbGxnZW1laW5lcywgQXJ0aWtlbDogMjggdm9uIDYzClJlXjU6IEZ1ZXIgWm9vayEgKFpvb2ssIDI4LiBTZXAgMjAwMCwgMjM6Mjg6MTIpOgpbQmV6dWc6IEFydGlrZWwgKGdlbG9lc2NodD8pIHZvbiBBcmsgdm9tIDI4LiBTZXAgMjAwMCwgMjM6Mjc6NDZdCgpVbmQgd2VyIGVybG9lc3QgdW5zIHZvbSBBcmtzY2hlbiBWZXJzbWFzcz8KClpvb2suCgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI4IHZvbiA2MgpSZV42OiBGdWVyIFpvb2shIChMdWcsIDI4LiBTZXAgMjAwMCwgMjM6Mjg6NDYpOgpbQmV6dWc6IEFydGlrZWwgKGdlbG9lc2NodD8pIHZvbiBab29rIHZvbSAyOC4gU2VwIDIwMDAsIDIzOjI4OjEyXQoKClVuZCB3ZXIgdmVybGVndCBkYXMgQWxsZXMgbmFjaCBTY2htYXJybj8KCkx1ZwoKUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiAyOCB2b24gNjEKUmVeNzogRnVlciBab29rISAoVHN1bmFtaSwgMjguIFNlcCAyMDAwLCAyMzoyOToyOCk6CltCZXp1ZzogQXJ0aWtlbCAoZ2Vsb2VzY2h0Pykgdm9uIEx1ZyB2b20gMjguIFNlcCAyMDAwLCAyMzoyODo0Nl0KClp3ZXJnZSB1bmQgRWxmZW4sIGVnYWwsIGlzdCBlaCBhbGxlcyBHZXNvY2tzLgoKVHN1bmFtaSwgYWV1c3NlcnN0IHdpY2h0aWcuCgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI4IHZvbiA2MApSZV44OiBGdWVyIFpvb2shIChMdWcsIDI4LiBTZXAgMjAwMCwgMjM6MzE6MzIpOgpbQmV6dWc6IEFydGlrZWwgKGdlbG9lc2NodD8pIHZvbiBUc3VuYW1pIHZvbSAyOC4gU2VwIDIwMDAsIDIzOjI5OjI4XQoKCkJlaSBHZXNvY2tzIGJpc3QgRHUgcmljaHRpZy4uLgoKTHVnCgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI4IHZvbiA1OQpSZV45OiBGdWVyIFpvb2shIChUc3VuYW1pLCAyOC4gU2VwIDIwMDAsIDIzOjMyOjA3KToKW0JlenVnOiBBcnRpa2VsIChnZWxvZXNjaHQ/KSB2b24gTHVnIHZvbSAyOC4gU2VwIDIwMDAsIDIzOjMxOjMyXQoKVW5kIG5vY2ggZWluZSB3aWNodGlnZSBJbmZvcm1hdGlvbjoKCkZyYXVlbiBpbiBkaWUgS2xlcmlrZXJnaWxkZS4gTHVnIGF1Y2guCgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI4IHZvbiA1OApSZV42OiBGdWVyIFpvb2shIChBcmssIDI4LiBTZXAgMjAwMCwgMjM6MzI6MDkpOgpbQmV6dWc6IEFydGlrZWwgKGdlbG9lc2NodD8pIHZvbiBab29rIHZvbSAyOC4gU2VwIDIwMDAsIDIzOjI4OjEyXQoKVGphLCBqdW5nZXIgR3J1ZW5zY2huYWJlbCwgaW4gZWluIHBhYXIgSmFocmVuIGlzdCBkaWUgbmFlY2hzdGUgUXVlc3QgZmFlbGxpZywKZGEga2FubnN0IER1IGFsbGUgbmVydmVuZGVuIFNwcnVlY2hlIGJlbWFlbmdlbG4sIGRhbm4gcnVlaHJlIGljaCBlaW5lbgpGbGFtZXdhciBpbiBkZXIgWmVpdHVuZyBhbiB1bmQgbG9lc2NoZSBtaWNoIGFuc2NobGllc3NlbmQuIEFsbGUgamFtbWVybiBlaW5lCldvY2hlIGxhbmcgdW5kIGRhbm4gaXN0IGFsbGVzIHdpZWRlciBSb3V0aW5lIDstKQpadWZyaWVkZW4/CgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiAyOCB2b24gNTcKUmVeNzogRnVlciBab29rISAoWm9vaywgMjguIFNlcCAyMDAwLCAyMzozMjo0MSk6CltCZXp1ZzogQXJ0aWtlbCAoZ2Vsb2VzY2h0Pykgdm9uIEFyayB2b20gMjguIFNlcCAyMDAwLCAyMzozMjowOV0KCldlciB3aXJkIGphbW1lcm4sIHdlbm4gRHUgRGljaCBsb2VzY2h0PyA7KQoKWm9vay4KClJ1YnJpayAxOiBhbGxnZW1laW5lcywgQXJ0aWtlbDogMjggdm9uIDU2ClJlXjc6IEZ1ZXIgWm9vayEgKEx1ZywgMjguIFNlcCAyMDAwLCAyMzozMjo1NSk6CltCZXp1ZzogQXJ0aWtlbCAoZ2Vsb2VzY2h0Pykgdm9uIEFyayB2b20gMjguIFNlcCAyMDAwLCAyMzozMjowOV0KCgpOaWNodCBudXIgTG9lc2NoIERpY2ggZG9jaCBnbGVpY2gsIHNvbmRlcm46IExvZXNjaHQgRXVjaCEKCkZpZEtHIChjKSBJY2gKTHVnCgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI4IHZvbiA1NQpSZV44OiBGdWVyIFpvb2shIChBcmssIDI4LiBTZXAgMjAwMCwgMjM6MzM6NDEpOgpbQmV6dWc6IEFydGlrZWwgKGdlbG9lc2NodD8pIHZvbiBMdWcgdm9tIDI4LiBTZXAgMjAwMCwgMjM6MzI6NTVdCgpOZW5lbmUsIFpvb2sgYmxlaWJ0LCB1bmQgaWNoIGF1Y2gsIGJpcyBNaXR0ZXJuYWNodCwgZGFubiBlcnN0IGtvZW5udCBJaHIKdmVybGVnZW4uCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiAyOCB2b24gNTQKUmVeOTogRnVlciBab29rISAoQXJrLCAyOC4gU2VwIDIwMDAsIDIzOjM0OjAxKToKW0JlenVnOiBBcnRpa2VsIChnZWxvZXNjaHQ/KSB2b24gQXJrIHZvbSAyOC4gU2VwIDIwMDAsIDIzOjMzOjQxXQoKRGF0ZW5tdWVsbCBpc3QgY29vbCAuLi4gaXJnZW5kd2llLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiAyOCB2b24gNTMKUmVeMTA6IEZ1ZXIgWm9vayEgKFpvb2ssIDI4LiBTZXAgMjAwMCwgMjM6MzQ6MTUpOgpbQmV6dWc6IEFydGlrZWwgKGdlbG9lc2NodD8pIHZvbiBBcmsgdm9tIDI4LiBTZXAgMjAwMCwgMjM6MzQ6MDFdCgpSZXBseSBhdWYgZWluZW4uLi4uCgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI4IHZvbiA1MgpSZV4xMDogRnVlciBab29rISAoWm9vaywgMjguIFNlcCAyMDAwLCAyMzozNDoyMSk6CltCZXp1ZzogQXJ0aWtlbCAoZ2Vsb2VzY2h0Pykgdm9uIEFyayB2b20gMjguIFNlcCAyMDAwLCAyMzozNDowMV0KCi4uLiBlaWdlbmVuIEFydGlrZWwgaXN0IGRvb2YuCgoKUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiAyOCB2b24gNTEKUmVeMTE6IEZ1ZXIgWm9vayEgKFRzdW5hbWksIDI4LiBTZXAgMjAwMCwgMjM6MzU6MzEpOgpbQmV6dWc6IEFydGlrZWwgKGdlbG9lc2NodD8pIHZvbiBab29rIHZvbSAyOC4gU2VwIDIwMDAsIDIzOjM0OjIxXQoKWm9vayBpc3QgZG9vZiEgOikKClJ1YnJpayAxOiBhbGxnZW1laW5lcywgQXJ0aWtlbDogMjggdm9uIDUwClJlXjEyOiBGdWVyIFpvb2shIChBcmssIDI4LiBTZXAgMjAwMCwgMjM6MzY6MDEpOgpbQmV6dWc6IEFydGlrZWwgKGdlbG9lc2NodD8pIHZvbiBUc3VuYW1pIHZvbSAyOC4gU2VwIDIwMDAsIDIzOjM1OjMxXQoKRW5kbGljaCBtYWwgd2llZGVyIEtFSU4gc2lubmZyZWllciBBcnRpa2VsIDteKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiAyOCB2b24gNDkKUmVeMTM6IEZ1ZXIgWm9vayEgKFRzdW5hbWksIDI4LiBTZXAgMjAwMCwgMjM6MzY6MjUpOgpbQmV6dWc6IEFydGlrZWwgKGdlbG9lc2NodD8pIHZvbiBBcmsgdm9tIDI4LiBTZXAgMjAwMCwgMjM6MzY6MDFdCgpibGFibHViLgoKQmVzc2VyPwoKUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiAyOCB2b24gNDgKUmVeMTQ6IEZ1ZXIgWm9vayEgKFRzdW5hbWksIDI4LiBTZXAgMjAwMCwgMjM6Mzg6NTcpOgpbQmV6dWc6IEFydGlrZWwgKGdlbG9lc2NodD8pIHZvbiBUc3VuYW1pIHZvbSAyOC4gU2VwIDIwMDAsIDIzOjM2OjI1XQoKWm9vayBpc3QgWmF1YmVyZXIhIEhhYnQgaWhyIGRhcyBnZXd1c3N0PwoKdW5kIHNlaW4gSmFtbWVyc2tpbGwgaXN0IDk4LjUlCgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI4IHZvbiA0NgpSZTogTG9lc2NodCBzaWUhIChab29rLCAyOC4gU2VwIDIwMDAsIDIzOjQwOjI1KToKW0JlenVnOiBBcnRpa2VsIChnZWxvZXNjaHQ/KSB2b24gTHVnIHZvbSAyOC4gU2VwIDIwMDAsIDIzOjM5OjQ1XQoKRW5kbGljaCBtYWwgbmVuIGFuZGVyZXIgVGl0ZWwuCgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI4IHZvbiA0NQpSZTogTG9lc2NodCBzaWUhIChUc3VuYW1pLCAyOC4gU2VwIDIwMDAsIDIzOjQwOjI5KToKW0JlenVnOiBBcnRpa2VsIChnZWxvZXNjaHQ/KSB2b24gTHVnIHZvbSAyOC4gU2VwIDIwMDAsIDIzOjM5OjQ1XQoKV2lyIGZhbmdlbiBzb2dsZWljaCBkYW1pdCBhbiB1bmQgbG9lc2NoZW4gYWxzIGVyc3RlcyBtYWwgTHVnLgoKS2FtcGYgZGVuIERlcHBlbiEgOikKClJ1YnJpayAxOiBhbGxnZW1laW5lcywgQXJ0aWtlbDogMjggdm9uIDQ0ClJlOiBSZTogTG9lc2NodCBzaWUhIChMdWcsIDI4LiBTZXAgMjAwMCwgMjM6NDA6NTMpOgpbQmV6dWc6IEFydGlrZWwgKGdlbG9lc2NodD8pIHZvbiBUc3VuYW1pIHZvbSAyOC4gU2VwIDIwMDAsIDIzOjQwOjI5XQoKCkR1IGJpc3QgZGVyIEVyc3RlLCBkZXIgc2ljaCBzZWxic3QgYmVrYWVtcGZ0Li4uCgpUc3N0c2VuZApMdWcKClJ1YnJpayAxOiBhbGxnZW1laW5lcywgQXJ0aWtlbDogMjggdm9uIDQzClJlXjM6IExvZXNjaHQgc2llISAoQXJrLCAyOC4gU2VwIDIwMDAsIDIzOjQyOjM3KToKW0JlenVnOiBBcnRpa2VsIChnZWxvZXNjaHQ/KSB2b24gTHVnIHZvbSAyOC4gU2VwIDIwMDAsIDIzOjQwOjUzXQoKS2FubiBpY2ggbm9jaCBpcmdlbmR3aWUgaGlsZnJlaWNoIHp1IGRlciBEaXNrdXNzaW9uIGhpZXIgYmVpdHJhZ2VuPwoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiAyOCB2b24gNDIKRGFzIHdpcmQgYmVsb2hudCEgKFpvb2ssIDI4LiBTZXAgMjAwMCwgMjM6NDI6MzgpOgoKWm9vayBoYWVuZ3QgTHVnIGRlbiAnVW1nYW5nLW1pdC1kZXItTVBBLXZlcnN0YW5kZW4nLU9yZGVuIGFuLgoKUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiAyOCB2b24gNDEKUmU6IERhcyB3aXJkIGJlbG9obnQhIChUc3VuYW1pLCAyOC4gU2VwIDIwMDAsIDIzOjQzOjAzKToKW0JlenVnOiBBcnRpa2VsIChnZWxvZXNjaHQ/KSB2b24gWm9vayB2b20gMjguIFNlcCAyMDAwLCAyMzo0MjozOF0KClRzdW5hbWkgaXNzdCBkZW4gT3JkZW4gYXVmLgoKUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiAyOCB2b24gNDAKUmU6IFJlOiBEYXMgd2lyZCBiZWxvaG50ISAoTHVnLCAyOC4gU2VwIDIwMDAsIDIzOjQ1OjIzKToKW0JlenVnOiBBcnRpa2VsIChnZWxvZXNjaHQ/KSB2b24gVHN1bmFtaSB2b20gMjguIFNlcCAyMDAwLCAyMzo0MzowM10KCgpEdSBoYXN0IGVpbmVuIHNlbHRzYW1lbiBHZXNjaG1hY2suLi4KTHVnCgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI4IHZvbiAzOQpFbnR6dWchIChab29rLCAyOC4gU2VwIDIwMDAsIDIzOjQ1OjUzKToKClpvb2sgZW50emllaHQgTHVnIGRhcyBSZWNodCBkZW4gT3JkZW4genUgdHJhZ2VuIHVuZCBzY2hyZWlidCAnTmltbWVyc2F0dCcgCmF1ZiBzZWluZSBTdGlybi4KClJ1YnJpayAxOiBhbGxnZW1laW5lcywgQXJ0aWtlbDogMjggdm9uIDM4Ck9yZGVuIChMdWcsIDI4LiBTZXAgMjAwMCwgMjM6NDc6NTQpOgoKClJ1ZWNrIHNvZm9ydCBkZW4gT3JkZW4gcnVlYmVyIFpvb2shCgpaYWNraWcKTHVnCgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI4IHZvbiAzNwpSZTogT3JkZW4gKFpvb2ssIDI4LiBTZXAgMjAwMCwgMjM6NDg6NTApOgpbQmV6dWc6IEFydGlrZWwgKGdlbG9lc2NodD8pIHZvbiBMdWcgdm9tIDI4LiBTZXAgMjAwMCwgMjM6NDc6NTRdCgpQYXNzIGF1Ziwgc29uc3QgaXMgZGVyIGFuZGVyZSBhdWNoIG5vY2ggd2VnLgoKWm9vay4gU2Nob24gbWFsIGVpbmUgU2NoZXJlIHJhdXNrcmFtZW5kLgoKUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiAyOCB2b24gMzYKUmU6IFJlOiBPcmRlbiAoTHVnLCAyOC4gU2VwIDIwMDAsIDIzOjQ5OjI0KToKW0JlenVnOiBBcnRpa2VsIChnZWxvZXNjaHQ/KSB2b24gWm9vayB2b20gMjguIFNlcCAyMDAwLCAyMzo0ODo1MF0KCiBEdSB3aWxsc3QgZWNodCBBZXJnZXIgbWl0IEVsb3JhPwoKRnJhZ2VuZApMdWcKClJ1YnJpayAxOiBhbGxnZW1laW5lcywgQXJ0aWtlbDogMjggdm9uIDM1ClJlXjM6IE9yZGVuIChUc3VuYW1pLCAyOC4gU2VwIDIwMDAsIDIzOjUyOjI2KToKW0JlenVnOiBBcnRpa2VsIChnZWxvZXNjaHQ/KSB2b24gTHVnIHZvbSAyOC4gU2VwIDIwMDAsIDIzOjQ5OjI0XQoKRWxvcmE/IERpZSB3aXJkIGRhbm4gZ2xlaWNoIG1pdGRlZ3JhZGllcnQuCgpSdW5kdW1zY2hsYWcgaGFsdC4KClJ1YnJpayAxOiBhbGxnZW1laW5lcywgQXJ0aWtlbDogMjggdm9uIDM0ClJlXjQ6IE9yZGVuIChMdWcsIDI4LiBTZXAgMjAwMCwgMjM6NTQ6NDYpOgpbQmV6dWc6IEFydGlrZWwgKGdlbG9lc2NodD8pIHZvbiBUc3VuYW1pIHZvbSAyOC4gU2VwIDIwMDAsIDIzOjUyOjI2XQoKClZpZWwgU3Bhc3MgbWl0IEpvZiwgWm9vayA7KQoKS2ljaGVybmQKTHVnCgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI4IHZvbiAzMwpSZV41OiBPcmRlbiAoVHN1bmFtaSwgMjguIFNlcCAyMDAwLCAyMzo1NToyNik6CltCZXp1ZzogQXJ0aWtlbCAoZ2Vsb2VzY2h0Pykgdm9uIEx1ZyB2b20gMjguIFNlcCAyMDAwLCAyMzo1NDo0Nl0KCkpvZiBpZGVsdC4KClVuZCBkYXMgc2VpdCBKYWhyZW4gOikKClJ1YnJpayAxOiBhbGxnZW1laW5lcywgQXJ0aWtlbDogMjggdm9uIDMyClJlXjU6IE9yZGVuIChab29rLCAyOC4gU2VwIDIwMDAsIDIzOjU1OjQ0KToKW0JlenVnOiBBcnRpa2VsIChnZWxvZXNjaHQ/KSB2b24gTHVnIHZvbSAyOC4gU2VwIDIwMDAsIDIzOjU0OjQ2XQoKV2FzIGhhdCBkZW5uIGRhcyBkYW1pdCB6dSB0dW4/IElyZ2VuZHdpZSBiZWtvbW10IERpciBFbGZlbmtuaWUgYXVmClRpc2NodHVjaCBuaWNodCBzbyBndXQsIEx1Zz8KClpvb2suCgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI4IHZvbiAzMQpSZV42OiBPcmRlbiAoQXJrLCAyOC4gU2VwIDIwMDAsIDIzOjU2OjI4KToKW0JlenVnOiBBcnRpa2VsIChnZWxvZXNjaHQ/KSB2b24gWm9vayB2b20gMjguIFNlcCAyMDAwLCAyMzo1NTo0NF0KCk1pc3QsIGpldHp0IGJla29tbWUgaWNoIGRhcyBFbmRlIGRlcyBHYW56ZW4gbmV0IG1laHIgbWl0LiBTY2hhZGUgLi4uCip3aW5rKgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKUnVicmlrIDE6IGFsbGdlbWVpbmVzLCBBcnRpa2VsOiAyOCB2b24gMzAKUmVeNzogT3JkZW4gKFRzdW5hbWksIDI4LiBTZXAgMjAwMCwgMjM6NTc6MDEpOgpbQmV6dWc6IEFydGlrZWwgKGdlbG9lc2NodD8pIHZvbiBBcmsgdm9tIDI4LiBTZXAgMjAwMCwgMjM6NTY6MjhdCgptb3JnZW4gc3RlaHRzIGluIFNjaG1hcnJuIDopCgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI4IHZvbiAyOQpab29rIGlzdCBudW4gdmVyd2lycnQuIChab29rLCAyOS4gU2VwIDIwMDAsIDAwOjAxOjU3KToKCltBbGxnZW1laW46UGVzdF0gTHVnIHNhZ3QgQnllLCBpcmdlbmR3aWUga2xlbW10IGRhcyB6d2lzY2hlbiBPTCB1bmQgTVIgZ2VyYWRlClRzdW5hbWkgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KVHN1bmFtaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKClpvb2suCgpSdWJyaWsgMTogYWxsZ2VtZWluZXMsIEFydGlrZWw6IDI4IHZvbiAyOApSZTogWm9vayBpc3QgbnVuIHZlcndpcnJ0LiAoVHN1bmFtaSwgMjkuIFNlcCAyMDAwLCAwMDoxNjoxMik6CltCZXp1ZzogQXJ0aWtlbCAoZ2Vsb2VzY2h0Pykgdm9uIFpvb2sgdm9tIDI5LiBTZXAgMjAwMCwgMDA6MDE6NTddCgpSZWNobmVyIGFiZ2VzY2htaWVydC4KClRzdW5hbWkgZW50d2lycnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVlciBBcmshIEZ1ZXIgWm9vayEgUmU6IExvZXNjaHQgc2llISBEYXMgd2lyZCBiZWxvaG50ISBFbnR6dWchIE9yZGVuLiBab29rIGlzdCBudW4gdmVyd2lycnQuIChab29rLCAyOS4gU2VwIDIwMDAsIDE1OjEwOjAwKToKfiMhIHJuPUNhdHdlYXpsZSBydD05NzAyMTAwMDggcmc9c2NobWFycm4KfiMhIHRpZD05NzAyMTAwMDgKT2gsIENhdHR5IGhhdCBzaWNoIGphIHJpY2h0aWcgTXVlaGUgZ2VtYWNodC4gOikKClpvb2sgZ3JpbnN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWhqYSAoVGhhbm9zLCAyOS4gU2VwIDIwMDAsIDIzOjM3OjMyKToKCj4gc2NoYXUKRGllcyBpc3QgZGVyIE5ldHp0b3RlbnJhdW0uIEVzIGlzdCBkdW5rZWwuIER1IHNpZWhzdCBuaWNodHMuCgpXb2xsdGUgaWNoIGltbWVyIHNjaG9uIG1hbCBoaW4sIHVuZCBmb3JzY2hlbiBicmluZ3QgZG9jaCB3YXMgOikKClRoYW5vcywgd2lsbCBzb3dhcyBhbHMgc3RhcnRyYXVtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFZlcmFsbGdlbWVpbmVydW5nZW4hIChQYWRyZWljLCAzMC4gU2VwIDIwMDAsIDEzOjUxOjA1KToKfiMhIG9uPVJhbnRhbnBsYW4gb3Q9OTcwMzE0Mzg5IG9nPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHJuPVBhbXBlcnMgcnQ9OTY4NzczNzUyIHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD05Njg2OTYzNjcKQWxzbyBlcnN0ZWlubWFsOiBJY2gga2FubiBtZWluZW4gRnJldW5kIGRlciB1bnJlY2h0IGdldGFuIGhhdCBuaWNodCBuZW5uZW4sCndlaWwgZGFzIGdlZ2VuIG1laW5lIEVoZXJlIGlzdC4uLgpEYXMgaGFidCBJaHIgamF3b2hsIEhyLiBEci4gSC4gS29obCBnZWtsYXV0ICEgOykKCmIuKSBXZW5uIG1pY2ggZWluZXIgYmVpbSBDeWJlcnBvcHBlbiBzbm9vcGVuIHdpbGwuLi5kYXMgaXN0IG8uay4KCmMuKSBEaWVzIGlzdCBlaW4gZS5WLiBtaXQgZWluaWdlbiByZWNodGxpY2hlbiBCaW5kdW5nZW4gdW5kIFZlcmFudHdvcnR1bmdlbi4KV2llIHdhZXJlIGVzLCB3ZW5uIGltIFNwb3J0dmVyZWluIGluIGRlciBVbWtsZWlkZSBqZW1hbmQgZWluIFByaXZhdGdlcHJjaApiZWxhdXNjaHQgdW5kIGVzIGFuIGFuZGVyZSBNaXRnbGllZGVyIHJhdXNwb3NhdW50Li4uCkFuc29uc3RlbiBpc3QgZGllIERpc2t1c3Npb24gdW5kIGRhcyBQcm9ibGVtIHNvIGFsdCB3aWUgQm9pbmcgOykpKSAoVW5kIGRhcwppc3QgVkVSREFNTVQgYWx0KQoKRmF6aXQ6IFdobyBjYXJlcywgYmVpIGRlbiBHZXJtYW5lbiB3dXJkZW4gTWFnaWVyIGF1cyBuaWVkZXJlbiBHcm5kZW4gZ2ViYW5pc2h0CjspCgpPZSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhYWFhYWEgISEhIChWYW5pb24sIDMwLiBTZXAgMjAwMCwgMjA6NTU6MTkpOgpCT2ZIIHdlaWx0IHdpZWRlciB1bnRlciBkZW4gTGViZW5kZW4uCgpWKiBrb3BpZXJ0IGVyc3RtYWwgc2VpbiBTYXZlZmlsZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFoaCA7KSAoQW5vcmlzLCAgMS4gT2t0IDIwMDAsIDAwOjA4OjEwKToKCk5penpsIHRlaWx0IERpciBtaXQ6IG9rIGtsZWluZW4gbW9tZW50Li46KQpbPE1hc3RlUj46QW5vcmlzXSBsYWcKWzxNYXN0ZVI+OjxNYXN0ZVI+XSA4LjYyIGNtZHMvcywgMTQ2LjQyIGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMS40JS82MCwgMy4yJS8xNSwgMjIuNCUvMQoKLSBBbm9yaXMgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNlaHIgcGFzc2VuZCAoR25vbWUsICAxLiBPa3QgMjAwMCwgMDE6MjI6MzcpOgp1bnQgamFnZHN6ZW5lCkRpYW5hLCBHb2V0dGluIGRlciBKYWdkLCBqYWd0IGhpZXIgbWl0IG5pY2h0cyBhbHMgYmxvbmRlbiwgbGFuZ2VuIEhhYXJlbgpiZWtsZWlkZXQgZWluZW0gZ2V3YWx0aWcgZ3Jvc3NlbiBIaXJzY2ggbmFjaC4KdW50IGJla2xlaWR1bmcKU293YXMgc2llaHN0IER1IGRhIG5pY2h0IQoKaGVoZSA7LSkKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgQWx0ZXIuLi4gKEx1ZywgIDEuIE9rdCAyMDAwLCAwMToyMjo0OSk6CgoKTXVwZmVsIHNhZ3Q6IHdvIGJpbiBpY2g/CgoKU28gbW9lY2h0ZSBpY2ggbmljaHQgZW5kZW4KTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE15dGhyYW4sICAxLiBPa3QgMjAwMCwgMTM6MzM6MjQpOgpBYmVudGV1ZXI6U2lyam9obiBIaWxmZSwgamV0enQgYmluIGljaCBpbiBkYXMgRWlzIGdlcmF0ZW4uCgpUb2Q6TGFycyBFaW4genVnZWZyb3JlbmVyIFdlaWhlciBoYXQgZ2VyYWRlIFNpcmpvaG4gdW1nZWJyYWNodC4KVG9kOkVpbiB6dWdlZnJvcmVuZXIgV2VpaGVyIEhleSwgZGFzIEVpcyBpc3Qgc2NodWxkISBFcyB3YXIgd29obCBlaW5mYWNoClRvZDpFaW4genVnZWZyb3JlbmVyIFdlaWhlciBuaWNodCBzdGFiaWwgZ2VudWcuCgpKYWphLCwsS2F0aSBpc3QgZWxlZ2FudGVyLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoQW5hdG9sLCAgMS4gT2t0IDIwMDAsIDEzOjMzOjU2KToKfiMhIHJuPU15dGhyYW4gcnQ9OTcwNDAwMDA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcwNDAwMDA0CkJsb2VkZXMgWm11ZCwgd2FzPyBdOl4+CgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCB3ZWlzcyBuaWNodC4uLiAoVGVkZHliZWEsICAxLiBPa3QgMjAwMCwgMjM6MjE6MTUpOgouLi53YXMgc29sbCBlcyBiZWRldXRlbi4uLgoKVmFtcGlyZSB0ZWlsdCBEaXIgbWl0OiBoaiBtbiBzaW9vbGwgaWNoIGRhcyBzaSBoaW4gaGluZW1lbmUKClRlZGR5YmVhICpncmluc3QqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGphIDotKSAoT2JpLCAgMi4gT2t0IDIwMDAsIDAyOjI5OjQ3KToKPiBEZXIgV2FsZCB1bSBEaWNoIGhlcnVtIHNjaGVpbnQgYW5uYWVoZXJuZCB1bmR1cmNoZHJpbmdsaWNoIHp1IHNlaW4uIERlciBXYWxkCmlzdCBzbyBkaWNodCBnZXdhY2hzZW4sIGRhc3MgZXIgc2Nob24gZWluIHdlbmlnIGZpbnN0ZXIgdW5kIGJla2xlbW1lbmQgYXVmCkRpY2ggd2lya3QuIEVyIGJpZXRldCB6dSBkZW0gZWluZW4gZXR3YXMgY2hhb3Rpc2NoZW4gRWluZHJ1Y2ssIGRlbm4gZXMKc2NoZWluZW4gaGllciBkaWUgZGl2ZXJzZXN0ZW4gQmF1bXNvcnRlbiB2b2VsbGlnIGR1cmNoZWluYW5kZXIgZ2V3YWNoc2VuIHp1CnNlaW4uIFp1bSBHbHVlY2sgaGFzdCBEdSB3ZW5pZ3N0ZW5zIGV0d2FzIFBsYXR6LgpFcyBnaWJ0IHp3ZWkgbW9lZ2xpY2hlIFRyYW1wZWxwZmFkZSBpbiBSaWNodHVuZzogb3N0ZW4gdW5kIHdlc3Rlbi4gCkVpbiBCaWVuZW5zY2h3YXJtLgpFaW4gSGFzZS4KRGllIEhhc2Ugc2NobGFlbmdlbHQgc2ljaCAgbmFjaCBXZXN0ZW4uCkRlciBCaWVuZW5zY2h3YXJtIGZsaWVndCBuYWNoIFdlc3Rlbi4KRWluZSBIYXNlIHNjaGxhZW5nZWx0IHNpY2ggaGVyZWluLgp1bnQgaGFzZQo+IC4KU2llIGlzdCBhYnNvbHV0IGZpdC4gICgxMDAgJSkKTFBDIGlzdCB2aWVsbGVpY2h0IGRvY2ggbmljaHQgZ2FueiBzbyBlaW5mYWNoIDotKQpPQkkgLyBab29hYnRlaWx1bmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBaGphIDotKSAoTHVnLCAgMi4gT2t0IDIwMDAsIDAyOjMwOjQzKToKfiMhIHJuPU9iaSBydD05NzA0NDY1ODcgcmc9c2NobWFycm4KfiMhIHRpZD05NzA0NDY1ODcKCk5vY2ggbmllIHdhcyB2b24gQnVubmllcyBnZWhvZXJ0PwoKVHNzdHNlbmQKTHVnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBaGphIDotKSAoT2JpLCAgMi4gT2t0IDIwMDAsIDAyOjM4OjQ0KToKfiMhIHJuPUx1ZyBydD05NzA0NDY2NDMgcmc9c2NobWFycm4KfiMhIHRpZD05NzA0NDY1ODcKRXMgd2lyZCBhYmVyIG5vY2ggYmVzc2VyIDotKQoKRWluZSBrbGVpbmUgU3Bpbm5lLgogCnVudCBzcGlubmUKIApEdSBzaWVoc3QgZWluZSBrbGVpbmUgU3Bpbm5lIHZvciBEaXIgYXVmIGRlbSBXYWxkYm9kZW4uIFNpZSB3aWxsIHNjaGVpbmJhciBzbwpzY2huZWxsIHdpZSBtb2VnbGljaCB2b24gaGllciB2ZXJzY2h3aW5kZW4sIG5hY2hkZW0gc2llIGZlc3RnZXN0ZWxsdCBoYXQsIGRhc3MKRHUgc2llIGJlbWVya3QgaGFzdC4gU28gd2llIHNpY2ggZGFzIGtsZWluZSBUaWVyIGF1ZiBkYXMgVW50ZXJob2x6IHp1YmV3ZWd0LApoYXQgc2llIGVzIHJlY2h0IGVpbGlnIHNpY2ggRGVpbmVtIFNpY2h0ZmVsZCB6dSBlbnR6aWVoZW4uClNpZSBpc3QgYWJzb2x1dCBmaXQuICAoMTAwICUpCiAKT2suCj4gRHUga29uemVudHJpZXJzdCBEaWNoIGRvY2ggYmVyZWl0cyBhdWYgZGVuIEthbXBmLgo+ICAgRHUgZ3JlaWZzdCBkaWUgU3Bpbm5lIG1pdCBkZW0gS2FtcGZiZWlsIGFuLgogIER1IHRyaWZmc3QgZGllIFNwaW5uZSBzZWhyIGhhcnQuCiAgRGllIFNwaW5uZSBncmVpZnQgRGljaCBtaXQgaWhyZW4gNiBCZWluZW4gYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWhqYSA6LSkgKEFuYXRvbCwgIDIuIE9rdCAyMDAwLCAxMDo1Mzo1Mik6Cn4jISBybj1PYmkgcnQ9OTcwNDQ2NTg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcwNDQ2NTg3CmNwIHNjaGxhbmdlLmMgaGFzZS5jID8KCkFuYXRvbCAtIG51ciBzbyBtYWwgdmVybXV0ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDaGFvc3J1bGV6IDspIChQdWssICAyLiBPa3QgMjAwMCwgMTQ6MzU6NDYpOgoKVG9kOkxhcnMgRWluIEZlbnRhbnlsIGhhdCBnZXJhZGUgUHVrIHVtZ2VicmFjaHQuIAoKV2lua3JpZWcgc2FndDogRHUgYmlzY2h0IHdpcmtsaWNoIGVpbiBndXRlciBDaGFvdCwgUHVrLiBEdSBtYXNjaHQgbWljaCBzY2h0bHosCldpbmtyaWVnIHNhZ3Q6IHNjaCAuLiBzY2h0b2x6IQoKRW5kbGljaCBlaW5tYWwgZGVyIEFuc3RyZW5ndW5nIHp1IHd1ZXJkaWdlbiB3ZWlzcyA7KQoKUHVrLCBiZWtlbm5lbmRlciBEcm9nZW5zY2hsdWNrZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggaW0gR29ibGlubGFnZXIuLi4gKEdyZWxsZ2VuLCAgMi4gT2t0IDIwMDAsIDE4OjA0OjEzKToKUHJhZ2FraGFuIHNjaGxlaWNodCBuYWNoIE5vcmRlbi4KW1RvZDpMYXJzXSBFaW4gSGV4ZXIgaGF0IGdlcmFkZSBQcmFnYWtoYW4gdW1nZWJyYWNodC4KRGFzIGlzdCBkZXIgSEFNTUVSIQoKVW5nZXNjaG5pdHRlbi4uLiBkZW0ga2FubiBpY2ggbnVyIHp1c3RpbW1lbiA6KQpHcmVsbGdlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgYW4gZWluZXIgTGlhbmUuLi4gKERyYWNobm8sICAyLiBPa3QgMjAwMCwgMjE6NTk6NDApOgpEdSBmbGllZ3N0IGdlbmF1IGF1ZiBkZW4gZ3Jvc3NlbiBCYXVtIHdlc3RsaWNoIHZvbiBEaXIgenUuIEVyIGtvbW10IG1pdAplcnNjaHJlY2tlbmRlciBHZXNjaHdpbmRpZ2tlaXQgbmFlaGVyLgpEdSBoYWVsdHN0IERpciBkaWUgTmFzZSB6dS4KCkRyYWNobm8KZGVuIEF1ZnByYWxsIGVyd2FydGVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdyYWRlLCBpbiBBbmF0b2xzIFRvZGVzc2VxdWVuei4uLiAoTXVwZmVsLCAgMy4gT2t0IDIwMDAsIDAxOjUxOjQ5KToKVG9kIGdyaW5zdCBmaWVzLgoKQ2F0d2VhemxlIHRlaWx0IERpciBtaXQ6IFRqYSwgc29ycnkuLi4gOigKUm9jaHVzIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCkthZGFicmEgdGVpbHQgRGlyIG1pdDogV0FBQUFISEggOykKCgpIbSwgS2FkYWJyYSBpc3QgbmV1Li4uLiA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyA6LyAoRmxhc2gsICAzLiBPa3QgMjAwMCwgMDM6MzM6MDgpOgpbVGVhbSA0OlRoYW5vc10gd2llc28gc3RlaCBpY2ggZGVuIGpldHp0IGFuIG5lbSB3aWxkYmFjaCBydW0gbWl0IDcgbHAgPyA7KQoKRHUgZnVlaGxzdCBEaWNoIGlyZ2VuZHdpZSBhbmRlcnMuCltUZWFtIDQ6VG9kXSBUSEFOT1MgSEFUIERBUyBURUFNIFZFUkxBU1NFTi4KW1RlYW0gNDpdIEpha3NjaGEgaGF0IGRpZSBUZWFtbGVpdHVuZyB1ZWJlcm5vbW1lbi4gCltUb2Q6TGFyc10gRWluIFdhbGRkcmFjaGUgaGF0IGdlcmFkZSBUaGFub3MgdW1nZWJyYWNodC4KW1RvZDpFaW4gV2FsZGRyYWNoZV0gVW5kIHdpZWRlciBlaW4gUHVua3QgZnVlciBkaWUgUGFyYWxsZWx3ZWx0IQoKam8uLmljaCBmdWVobCBtaWNoIGFuZGVycyA6KAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VsdHNhbWUgQW5kYWNodCAoUGVydGluYXhlLCAgMy4gT2t0IDIwMDAsIDA5OjQxOjA1KToKRWluZSBCYWVyZW5tdXR0ZXIuCj4gRGllIEJhZXJpbiBicnVtbXQgRGljaCBsaWViZXZvbGwgYW4uCnNhZyB3YXMgbWFjaHQgaWhyIGRlbiBkYSA/CkR1IHNhZ3N0OiB3YXMgbWFjaHQgaWhyIGRlbiBkYSA/Cj4gSGVsZmVyY2hlbiB2ZXJzaW5rdCBpbiB0aWVmZXIgQW5kYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9jaCBnb2RkY2hlbiwgZGFzIGxpZWJlIEFsdGVyIChQdWssICAzLiBPa3QgMjAwMCwgMTU6NDU6MDMpOgoKS2FyaWMga29tbXQgaGVyZWluLgpLYXJpYyBzY2hsaWVzc3QgZWluIEhhdXMgYWIuCkVpbiBwYWFyIEhhYXJlIHZvbiBLYXJpYyBzZWdlbG4genUgQm9kZW4uCgoKUHVrLCB3YXJ0ZXQgZGFubm4gYXVmIGRpZSBlcnN0ZW4gUGVydWVja2VuIGltIE1HIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNdXJwaHkncyBMYXcgKFFpdGVzcywgIDMuIE9rdCAyMDAwLCAxNjo0NjowMik6CklzdCBkb2NoIGtsYXIgb2RlciA/CkR1IGhhc3QgamV0enQgMjI2IExQIHVuZCAyMDIgTVAuCkVpbmUgaGVycmxpY2hlIFdhZXJtZSBnZWh0IHZvbiBEZWluZW0gQW11bGV0dCBhdXMsIHVuZCBEdSBmdWVobHN0IERpY2ggcHJpbWEuCgpFcyBpc3QgaW1tZXIgZGFzIGdsZWljaGUgLSBrYXVtIGhhdCBtYW4gc2ljaCBob2NoZ2VpZGxldCwgZmFlbmd0IGlyZ2VuZHdhcyBhbgp6dSBsZXVjaHRlbiBvZGVyIHp1IGdsdWVoZW4sIHVuZCBtYW4gaGF0IFJFSU4gR0FSTklDSFRTIHZvbiBzZWluZW4gU2FjaGVuLgpRSSoqCndlaW5lbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNdXJwaHkncyBMYXcgKE11cGZlbCwgIDMuIE9rdCAyMDAwLCAxNzoxOToxMik6Cn4jISBybj1RaXRlc3MgcnQ9OTcwNTg0MzYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcwNTg0MzYyCk5hamEgaW1tZXJoaW4gYmVzc2VyIGFsczoKCkVpbmUgdW5hbmdlbmVobWUgV2Flcm1lIGdlaHQgdm9uIERlaW5lbSBBbXVsZXR0IGF1cywgYWxzIGVzIHZlcmdlYmxpY2gKdmVyc3VjaHQsIERpciBFbmVyZ2llIHp1IGdlYmVuLgoKW1RvZDpMYXJzXSBadXZpZWwgRW5lcmdpZSBoYXQgZ2VyYWRlIFFpdGVzcyB1bWdlYnJhY2h0LgoKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphdWNoIHdpbGwgISEhISAoVGhhbm9zLCAgMy4gT2t0IDIwMDAsIDIwOjIzOjQ0KToKWmEnZG9tYXMgc2FndDogSGFsbG8gWndlcmdlbmtvZW5pZy4KWmEnZG9tYXMgc3RhcnJ0IERpY2ggYm9lc2UgYW4uClphJ2RvbWFzIGRldXRldCBhdWYgZGVuIEtvZW5pZyB1bmQgc2FndDogU1RJUkIuCkRlciBLb2VuaWcgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KCnVudCB6YXViZXJlcgpaYSdkb21hcyBpc3QgZGVyIFphdWJlcmVyIGRlciBEdW5rZWx6d2VyZ2UuIEVyIGlzdCBlaW4gZ3V0ZXMgU3R1ZWNrIGdyb2Vzc2VyCmFscyBhbmRlcmUgRHVua2VsendlcmdlLCBkYWZ1ZXIgd2lya3QgZXIgYWJlciBhdWNoIHJlY2h0IGR1ZXJyLiBVbmQgdHJvdHpkZW0KaGFzdCBEdSBSZXNwZWt0IHZvciBpaG0uIER1IGZyYWdzdCBEaWNoLCB3b3JhbiBkYXMgd29obCBsaWVnZW4gbWFnLgoxMDAgUHJvemVudApFciB0cmFlZ3QgYmVpIHNpY2g6Cjg1MCBNdWVuemVuLiAoNSkKRGVyIFNjaGx1ZXNzZWwgenUgQm9pbmdzIFNjaHJlaWJ0aXNjaC4gKDUpCkRpZSBLcm9uZSBkZXMgWndlcmdlbmtvZW5pZ3MuICg1KQpEYXMgU3plcHRlciBkZXMgWndlcmdlbmtvZW5pZ3MuICg2KQoKClZpZWwgTXVlbGwgaGF0IGVyIGphIGRhYmVpLCBhYmVyIHdvIGlzdCBkYXMgdG9sbGUgQW11ID8gOykKClRoYW5vcywgd2lsbHMgYXVjaCBtYWwgc28gbGVpY2h0IGhhYmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEcmVzZGVuIChab29rLCAgMy4gT2t0IDIwMDAsIDIxOjM1OjE3KToKSmVtYW5kIHNhZ3Q6IDxISUNLPgoKClpvb2ssIGdyaW5zZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERyZXNkZW4gKFBhdHJ5biwgIDMuIE9rdCAyMDAwLCAyMzoxNDozMyk6Cn4jISBybj1ab29rIHJ0PTk3MDYwMTcxNyByZz1zY2htYXJybgp+IyEgdGlkPTk3MDYwMTcxNwprbGFwcGUhIDopCgotLS0tLS0KcGF0cnluLCB3aWVkZXIgZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTXVycGh5J3MgTGF3IChRaXRlc3MsICAzLiBPa3QgMjAwMCwgMjM6Mjc6NDcpOgp+IyEgcm49TXVwZmVsIHJ0PTk3MDU4NjM1MiByZz1zY2htYXJybgp+IyEgdGlkPTk3MDU4NDM2Mgp3b2hsIHdhaHIgbXVwZmVsLCBhbGxlcmRpbmdzIDopCnFpKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoQnVkZGhhLCAgNC4gT2t0IDIwMDAsIDE1OjQ1OjE5KToKW0tsZXJ1czpGcmVvbG9dIGthbm4gbWlyIGplbWFuZCBzY2huZWxsIHdhcyBhbSB0aWdlciBlbnRmbHVjaGVuIGJpdHRlPwpbS2xlcnVzOkZyZW9sb10gYXVjaCB3ZW5uIGljaCBjaGFvdCBiaW4gOikKd2VuaWcgc3BhZXRlcjogCltUb2Q6TGFyc10gRWluIFNhbmR0aWdlciBoYXQgZ2VyYWRlIEZyZW9sbyB1bWdlYnJhY2h0LgoKR2VzY2hpZWh0IERpciByZWNodCwgQ2hhb3QhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZmx3IChPYmksICA1LiBPa3QgMjAwMCwgMDE6NDY6MjkpOgp+IyEgcm49QnVkZGhhIHJ0PTk3MDY2NzExOSByZz1zY2htYXJybgp+IyEgdGlkPTk3MDY2NzExOQpBbHNvIGljaCB3dWVyZCBqZXR6dCBtYWwgc28gc3BvbnRhbiBhdWYgU2NoaW5kZXIgdGlwcGVuIDotKQoKT0JJCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbyBrYW5ucyBnZWhuIChDaW5kZXJlbGxhLCAgNS4gT2t0IDIwMDAsIDEzOjU4OjA1KToKRGVpbiBGcmV1bmQgVGh1ZmhpciB0ZWlsdCBEaXIgbWl0OiBpcyBkaWUgaHlkcmEgZXZ0bC4gYWJnZWhhZW5ndD8KRGVpbiBGcmV1bmQgVGh1ZmhpciB0ZWlsdCBEaXIgbWl0OiBub2NoIGlzIHR1ZmlyIGVybGV1Y2h0ZXQuLi4gOykKCkRpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgpEb24sICA1LiBPa3QgMjAwMCwgMTM6NTU6NTUuCj4gRGVpbiBGcmV1bmQgVGh1ZmhpciB0ZWlsdCBEaXIgbWl0OiBoaWhpaGloaWgKU2VoZXI6VGh1ZmhpciB0YWFhYW50Y2hlbiEKCkR1IHRlaWxzdCBUaHVmaGlyIG1pdDogc292aWVsIHp1IGRpZXNlbSBUaGVtYSA7KQoKCgpDaW5kZXJlbGxhICppbW1lciBub2NoIGdyaW5zZW5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RpbGxlIFp1c3RpbW11bmcgPyAoTW9yZ290aCwgIDUuIE9rdCAyMDAwLCAxNToxNDowMyk6Ck9ya3RvZXRlciBydWZ0OiBPUktUT0VURU5PUktUT0VURU5PUktUT0VURU5PUktUT0VURU5PUktUT0VURU5PUktUT0VURU4KRHUgcnVmc3Q6IGZlaWdsaW5nCkhpZ2h0IHJ1ZnQ6IGJ1Z21hZ2llciAsbykKRHUgcnVmc3Q6IGhtLCBwYWRyZWljIGlzIGRvY2ggZ2FyIG5pY2h0IGRhClVuYXNhaSBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgpPQkkgZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBhbi4KSGlnaHQgZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBhbi4KCk0qIGdyaW5zdCBhdWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadSBzcGFldC4uLiAoRGllZGVyLCAgNS4gT2t0IDIwMDAsIDE3OjAwOjU3KToKW1RvZDpMYXJzXSBFaW4gV2FlY2h0ZXIgaGF0IGdlcmFkZSBCZWxnYXJpYWQgdW1nZWJyYWNodC4KRGVpbmUgRnJldW5kaW4gRGVsIHRlaWx0IERpciBtaXQ6IGRhbm4gdWViZXJsZWcgaWNoIG1pciBzY2hvbm1hbCBkZW4gbmFlY2hzdGVuCkRlaW5lIEZyZXVuZGluIERlbCB0ZWlsdCBEaXIgbWl0OiBrb21tZW50YXIgYXVmIGJlaWxlaWQuLi4KRGVpbmUgRnJldW5kaW4gRGVsIHRlaWx0IERpciBtaXQ6IHdhaGFhYWFhYWFhYWFhYWFhYWFhCgp1bmdlc2Nobml0dGVuLApEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoSGlnaHQsICA1LiBPa3QgMjAwMCwgMTc6MDE6MjcpOgpEZWluIEZyZXVuZCBCZWxnYXJpYWQgdGVpbHQgRGlyIG1pdDogaXMgZGEgd2lya2xpY2ggZnJpZWRlbiBzcGVsbGk/CkR1IGhvZXJzdCBkaWUgVWhyIHNjaGxhZ2VuOiBFcyBpc3QgamV0enQgMTcgVWhyLgpEZWluIEZyZXVuZCBTcGVsbGZpcmUgdGVpbHQgRGlyIG1pdDoga2xvYXIKCgpbVG9kOkxhcnNdIEVpbiBXYWVjaHRlciBoYXQgZ2VyYWRlIEJlbGdhcmlhZCB1bWdlYnJhY2h0LgoKaGlnaHQga2FubiBzaWNoIGVpbiBncmluc2VuIG5pY2h0IHZlcmtuZWlmZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKEJlbGdhcmlhZCwgIDUuIE9rdCAyMDAwLCAxNzowNToyMSk6Cn4jISBybj1IaWdodCBydD05NzA3NTgwODcgcmc9c2NobWFycm4KfiMhIHRpZD05NzA3NTgwODcKR2VuYXUgdW5kIGRhc3MgaXMgZGFubiBhdWNoIG5vY2ggcGFzc2llcnQgOikKCiAyNzUuIERvbiwgIDUuIE9rdCAyMDAwLCAxNjo0NDoyMzoKICBTY2hhZGUsIGRlbiBXYWVjaHRlciBoYXR0ZSBpY2ggc2Nob24gYXVmIGRlciBTY2h3ZWxsZSBnZWhhYnQuCiAgCiAgMjc2LiBEb24sICA1LiBPa3QgMjAwMCwgMTY6NTM6MzI6CiAgTmFjaCBkZW0gVG9kIGFuIGRlbSBXYWVjaHRlciBoYXQgamVtYW5kIG1laW5lIEF1c3J1ZXN0dW5nIGdla2xhdXQuCiAgCiAgMjc3LiBEb24sICA1LiBPa3QgMjAwMCwgMTc6MDA6MTg6CiAgR2VnZW4gZGVuIFdhZWNodGVyIGhhdHRlIGljaCBlaW5mYWNoIGtlaW5lIENoYW5jZS4KCkJlbGdhIGJpc3NlbCBncmluc2VuZC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVG9kIHZvciBkZXIgR2VidXJ0Pz8/IChMb2xsaSwgIDUuIE9rdCAyMDAwLCAxNzoxNzowOCk6CgpBdXMgbWVpbmVtIFRvZGVzdGFnZWJ1Y2g6CgpEdSB3ZWlzc3QsIGRhc3MgZXMgYmVyZWl0cyAxNCBUb2RlIHNlaXQgTWl0LCAgMi4gQXVnIDIwMDAsIDA5OjMwOjI1IGVudGhhZWx0LApkZW0gVGFnIGRlcyBlcnN0ZW4gVG9kZXMgYW4gZGVyIEVsaXphLiBMZWlkZXIgd3VyZGVuIApkaWUgZXJzdGVuIDExMSBUb2RlIHNlaXQgZGVtIEVyc3Rsb2dpbiBhbSBEb24sICAxLiBKYW4gMTk3MCwgMDA6NTk6NTkgbmljaHQKZXJmYXNzdC4KCmhtLCB3ZW5uIG1hbiBiZWRlbmt0IGRhc3MgaWNoIGVyc3QgJzcxIGdlYm9yZW4gYmluLiBjb29sISA6LSkpCgpMT0xMSSwgc2Nob24gaW1tZXIgd2lzc2VuZCwgZGFzcyBlcyBSZWlua2FybmF0aW9uIGdpYnQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUb2Qgdm9yIGRlciBHZWJ1cnQ/Pz8gKEFtYXJ5bGxpcywgIDUuIE9rdCAyMDAwLCAxNzo0NzoxNSk6Cn4jISBybj1Mb2xsaSBydD05NzA3NTkwMjggcmc9c2NobWFycm4KfiMhIHRpZD05NzA3NTkwMjgKZml4ZWQgOi0pCgpBbWFyeWxsaXMsIGZsZWlzc2lnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBiZWkgZGVuIFRhbmppYW4uLi4gKEdyZWxsZ2VuLCAgNS4gT2t0IDIwMDAsIDIwOjI3OjE2KToKPFRhbmppYW4+IEVpbiBGcm9zY2ggZXNwZXJ0OiBobW0gd2FzIGJlZGV1dGV0IGVpZ2VudGxpY2ggZGFzIEYgYmVpIG1pciBiZWltCjxUYW5qaWFuPiBFaW4gRnJvc2NoIGVzcGVydDogdGFuamlhbndlcj8KPFRhbmppYW4+IEVpbiBGcm9zY2ggZXNwZXJ0OiBvayA6KQoKR3JlbGxnZW4sIGtpY2hlcm5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmEgdG9sbCA7KSAoSW1kYSwgIDYuIE9rdCAyMDAwLCAwNDozODozMSk6CltBbGxnZW1laW46TGlhcmFdIG5hY2h0IGltZGEgcGFzcyBhdWZzIG1nIGF1ZiA7LSkgICAKCiAgICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIEZyZSwgIDYuIE9rdCAyMDAwLCAwNDozNjo0MyAoMTIgVGVpbG5laG1lcikKCk9kYW4uLi4uLi4uLi4uLkoucyBZbmcuLi4uLi4uLi4uLi5KLnMgTm9zdHJvbW8uLi4uLi4uandzIE15c3RpeG8uLi4uLi4uLmkucwpJbGVzc2EuLi4uLi4uLi5KLnMgR2FuZHVsZi4uLi4uLi4uSi5aIE5pcmRhdm8uLi4uLi4uLkouUyBJbWRhLi4uLi4uLi4uLi4uLlMKVHlsYWsuLi4uLi4uLi4uSi5TIEhvdXNlaG9sZGVyLi4uLkouUyBWYW1waXJlLi4uLi4uLi5Kd1MgR3JpbW1ib3JuLi4uLi4uandtCgpJbWRhLiBFaWdlbnRsaWNoIElkbGVyIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbmEgdG9sbCA7KSAoQW5hdG9sLCAgNi4gT2t0IDIwMDAsIDA4OjAzOjEyKToKfiMhIHJuPUltZGEgcnQ9OTcwNzk5OTExIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcwNzk5OTExCkRhISBIYXN0IER1IGVzIGdlc2VoZW4/IE15c3RpeG8gbXVzcyBnZXp1Y2t0IGhhYmVuIQoKQW5hdG9sLCBhbHRlcnQgYXVjaCBuaWNodC1pZGxlIHNjaG5lbGwgZ2VudWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBuYSB0b2xsIDspIChWYW5pb24sICA2LiBPa3QgMjAwMCwgMTc6Mzg6MTMpOgp+IyEgcm49SW1kYSBydD05NzA3OTk5MTEgcmc9c2NobWFycm4KfiMhIHRpZD05NzA3OTk5MTEKViogaWRsZXQgbW9yZ2VucyB1bSBoYWxiIEZ1ZW5mIGFiZXIgYXVjaCBub2NoIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2guLi4gKEZvb2JhciwgIDcuIE9rdCAyMDAwLCAwMDoyNTo1Nyk6Cj4gd2lua2UgZnJvc2NoCldpbmsgRGlyIG5pY2h0IHNlbGJlciB6dS4KCkZvb2JhciAtIGhhdCdzIGdhciBuaWNodCBnZW1lcmt0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU3RhdGkgKERlZXBibHVlLCAgNy4gT2t0IDIwMDAsIDIxOjQ0OjI3KToKfiMhIG9uPURlZXBibHVlIG90PTk3MDk0Nzg1NSBvZz10cmVmZmVuCn4jISBybj1MdXB1cyBydD05NzA5MTcxMzAgcmc9dHJlZmZlbgp+IyEgdGlkPTk3MDY3NzUyMwpUdXQgbWlyIGxlaWQsIGFsbGVzIHNjaGFmZmVuIHdpciBoaWVyIGluIFNhY2hzZW4gYXVjaCBuaWNodCBhbiBlaW5lbSBUYWcKCipTbyB3aWUgU2FjaHNlbiB1bmQgVGh1ZXJpbmdlbiBoZXV0ZSBhcmJlaXRlbiB3aXJkIEJlcmxpbiBtb3JnZW4gbGViZW4uKgotLT5zY2htYXJybigpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgo6KSAoTml6emwsICA4LiBPa3QgMjAwMCwgMDU6NTY6NDYpOgpba3dlcl0KCgpPZGFuLi4uLi4uLi4uLi5KLnMgWW5nLi4uLi4uLi4uLi4uSi5zIE5vc3Ryb21vLi4uLi4uLmp3cyBNeXN0aXhvLi4uLi4uLi5pLnMKSWxlc3NhLi4uLi4uLi4uSi5zIEdhbmR1bGYuLi4uLi4uLkouWiBHcmVsbGdlbi4uLi4uLi5JLlMgSW1kYS4uLi4uLi4uLi4uSi5TCk5penpsLi4uLi4uLi4uLi4uUyBIb3VzZWhvbGRlci4uLi5KLlMgVmFtcGlyZS4uLi4uLi4uSndTIEFyYXRoLi4uLi4uLi4uLkkuUwpEaWVkZXIuLi4uLi4uLi5Jd1MgR3JpbW1ib3JuLi4uLi4uSndtCgppcmdlbmR3aWUgZ3J1c2VsaWcgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiA6KSAoTGlhcmEsICA4LiBPa3QgMjAwMCwgMTQ6NDc6MzYpOgp+IyEgcm49Tml6emwgcnQ9OTcwOTc3NDA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcwOTc3NDA2Ck15c3RpeG8gaGF0IHNjaG9uIHdpZWRlciBnZXp1Y2t0LiA7LSkKCkxaLCBncmluc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCBtYWcgS29rb3JvISEhIChNeXRocmFuLCAgOC4gT2t0IDIwMDAsIDIwOjAwOjQ4KToKRHUgdmVyc2V0enQgS29rb3JvIGluIFNjaHdpbmd1bmcgdW5kIHNwdWVyc3QsIHdpZSB2aWVsIEVuZXJnaWUgRGVpbmVuCkdlaXN0IGR1cmNoc3Ryb2VtdC5EaWUgRHVua2VsaGVpdCBsb2VzdCBzaWNoIHZvbiBEZWluZW0gR2Vpc3QuClNhaGFkb29tIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCgpKYSwgc28gbGFzcyBpY2ggbWlyIGRhcyBnZWZhbGxlbi4uLiB3YXMga2FubiBpY2ggZGFubiBlcnN0IGJlaSAxMDAlID8KCk15Kiwgc3RpZWZlbGxvcyBnbHVlY2tsaWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgU2NodWhlLi4uIG1hbCB3aWVkZXIgcHVlbmt0bGljaCAoT2dhciwgIDguIE9rdCAyMDAwLCAyMDoxOTozMCk6Cj4gZHJ1ZWNrZSB1bmViZW5oZWl0CkR1IGRydWVja3N0IHZvcnNpY2h0aWcgYXVmIGRpZSBVbmViZW5oZWl0LgpFaW5lIEtsYXBwZSBvZWZmbmV0IHNpY2ggdW5kIGV0d2FzIFNjaGxlaW0gZXJnaWVzc3Qgc2ljaCB1ZWJlciBEaWNoLiBVYXJnaC4KPiAgCkRlaW5lIFNjaHVoZSBnbHVlaGVuIGt1cnogYXVmIHVuZCBoZWlsZW4gRGljaCBlaW4gd2VuaWcuCkR1IGhhc3QgamV0enQgMjA2IExlYmVuc3B1bmt0ZSB1bmQgMjAyIEtvbnplbnRyYXRpb25zcHVua3RlLgpEZXIgU2NobGVpbSBlcndhZXJtdCBzaWNoLgpFcyBnZWh0IERpciBnbGVpY2ggZXR3YXMgYmVzc2VyLgpEdSBoYXN0IGpldHp0IDIyNiBMZWJlbnNwdW5rdGUgdW5kIDIwMiBLb256ZW50cmF0aW9uc3B1bmt0ZS4KCi0tIApPZ2FyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUExBVFNDSCEgKFNpbHZhbmEsICA5LiBPa3QgMjAwMCwgMDA6MDY6MTkpOgp+IyEgb249T3JrdG9ldGVyIG90PTk3MTAzNzY5OCBvZz1kLndhbGQKfiMhIHJuPVNpbHZhbmEgcnQ9OTcxMDIwMDg5IHJnPWQud2FsZAp+IyEgdGlkPTk3MTAyMDA4OQpXZW5uIGlociBkYSBzbyB3ZWl0ZXJtYWNodCwga29lbm50IGlociBiYWxkIGJlYW50cmFnZW4gaW4gZC53dWVzdGUgYXVmZ2Vub21tZW4KenUgd2VyZGVuLi4uCgpPcmtULCBmcmVjaCBncmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJY2ggbWFnIEtva29ybyEhISAoU2lsdmFuYSwgIDkuIE9rdCAyMDAwLCAwMDowODoxMCk6Cn4jISBybj1NeXRocmFuIHJ0PTk3MTAyODA0OCByZz1zY2htYXJybgp+IyEgdGlkPTk3MTAyODA0OApWaWVsbGVpY2h0IGRhcyBmZWhsZW5kZSBMZWVyemVpY2hlbiBpbiBkZXIgTWVsZHVuZyBoaW5laW5tZWRpdGllcmVuPyA7LSkKCiAgU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQTEFUU0NIISAoU2lsdmFuYSwgIDkuIE9rdCAyMDAwLCAwMDowOToxNCk6Cn4jISBybj1TaWx2YW5hIHJ0PTk3MTA0Mjc3OSByZz1zY2htYXJybgp+IyEgdGlkPTk3MTAyMDA4OQpJY2ggZGVyIFd1ZXN0ZSBoYWV0dGUgZGVyIEJhdW0gbmllICJQTEFUU0NIISIgZ2VtYWNodC4KTWVociBUaXBzIGdlYiBpY2ggYWJlciB3aXJrbGljaCBuaWNodC4KCiAgU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUExBVFNDSCEgKEdsb2luc29uLCAgOS4gT2t0IDIwMDAsIDA2OjAxOjEzKToKfiMhIHJuPVNpbHZhbmEgcnQ9OTcxMDQyOTU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcxMDIwMDg5CkhtbW0uIERvY2guIEFtIFd1ZXN0ZW5zdHJhbmQgaW0gVHJlaWJzYW5kLiBBYmVyIGluIGRlciBsZXR6dGVuIFplaXQgd2lyZAp3aXJrbGljaCB2aWVsIGdlZmFlbGx0LCBkYSBnZWJlIGljaCBPcmt0b2V0ZXIgcmVjaHQuCgpHbG9pbihzb24pCgpQUzogSG0uIFdpcmQgZGFzIEhvbHpmYWVsbGVybGFnZXIgamV0enQgZXJ3ZWl0ZXJ0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ2hhb3MgYW4gZGllIE1hY2h0IChQdWssICA5LiBPa3QgMjAwMCwgMjI6MDE6MDApOgoKRWluIEZyb3NjaCBzY2hsZWljaHQgYmx1dGdpZXJpZyBoZXJlaW4uCgpKZXR6dCBiZWtvbW1lbiB3aXIgZW5kbGljaCBtYWwgc2lubnZvbGxlIFVudGVyc3R1ZXp1bmcuCgpQdWssIHZlcmxhbmd0IDogRnJvZXNjaGUgYW4gZGllIE1hY2h0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW1kYS4uLiAoRm9vYmFyLCAxMC4gT2t0IDIwMDAsIDAyOjMwOjU2KToKRHUga25hYmJlcnN0IGFuIEltZGFzIE9oci4KSW1kYSBiZWdpbm50IGx1c3R2b2xsIHp1IHN0b2VobmVuLi4uIEhvbGxhLCB3YXMgZnVlciBCZW5laG1lbiEKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIHBhbmlzY2hlIEFuZ3N0IC4uLiAoTW9yZ290aCwgMTAuIE9rdCAyMDAwLCAxMToyNjowMSk6CkxldXNlbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEZWVwQmx1ZSB0ZWlsdCBEaXIgbWl0OiBCdWdkcmVpYyBtZWludGUsIHdlaWwgZGVyIEJ1Z2d0IHVuZCBkYXMgTXVkIGNyYXNodApbMTE6MjRdCkxldXNlbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKT2IgTGV1c2VsIGRhcyBnZWhvZXJ0IGhhdD8/CgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChLYXJpcywgMTAuIE9rdCAyMDAwLCAxNDo1NjozNSk6CkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IGFyZ2VsIGRhcyBidWdndCAgICAgICAgIApbVG9kOkxhcnNdIFNwZWxsZmlyZSBoYXQgZ2VyYWRlIExpYXJhIHVtZ2VicmFjaHQuICAKCktvbm50ZSBuaWNodCB3aWRlcnN0ZWhlbiA6KQpHZW5lcmFlbGNoZW4gS2FyaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoSGlnaHQsIDEwLiBPa3QgMjAwMCwgMTU6Mjk6NTkpOgpEZWluZSBGcmV1bmRpbiBVbmFzYWkgdGVpbHQgRGlyIG1pdDogaG0gd2llc28gc2lua2VuIGRlbm4gbWVpbmUgbHAgc28/CkRlaW4gRnJldW5kIFNwZWxsZmlyZSB0ZWlsdCBEaXIgbWl0OiBva2kgamV0enQgYWJlciB3aXJrbGljaCB3ZWcKCiBEZWluZSBGcmV1bmRpbiBVbmFzYWkgdGVpbHQgRGlyIG1pdDogd2FhYWFhYWFhYWFhYSwgd2FzIGRlbm4gaGllciBsb3M/CkRlaW5lIEZyZXVuZGluIFVuYXNhaSB0ZWlsdCBEaXIgbWl0OiAyMiBscD8/CgpbVG9kOkxhcnNdIEVpbmUgVmVyZ2lmdHVuZyBoYXQgZ2VyYWRlIFVuYXNhaSB1bWdlYnJhY2h0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTW9yZ290aCwgMTAuIE9rdCAyMDAwLCAxNTozMDowNyk6CkRlaW5lIEZyZXVuZGluIFVuYXNhaSB0ZWlsdCBEaXIgbWl0OiBobSB3aWVzbyBzaW5rZW4gZGVubiBtZWluZSBscCBzbz8KRGVpbmUgRnJldW5kaW4gVW5hc2FpIHRlaWx0IERpciBtaXQ6IHdhYWFhYWFhYWFhYWEsIHdhcyBkZW5uIGhpZXIgbG9zPwpEZWluZSBGcmV1bmRpbiBVbmFzYWkgdGVpbHQgRGlyIG1pdDogMjIgbHA/PwpEZWluZSBGcmV1bmRpbiBVbmFzYWkgdGVpbHQgRGlyIG1pdDogYXJnbApbVG9kOkxhcnNdIEVpbmUgVmVyZ2lmdHVuZyBoYXQgZ2VyYWRlIFVuYXNhaSB1bWdlYnJhY2h0LgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoVW5hc2FpLCAxMC4gT2t0IDIwMDAsIDE1OjMzOjU1KToKc29zbywgdWViZXIgYW5kZXJlciBMZXV0ZSB1bmZhZWhpZ2tlaXQgbHVzdGlnIG1hY2hlbiwgamE/ICpwb2VoKgoKdW5hKiAqZ3J1bW1lbG5kIHVlYmVyIGlocmUgZWlnZW5lbiBEYWVtbGljaGtlaXQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGbGllZ2VuZGUgRnJvZXNjaGU/IChEaWVkZXIsIDEwLiBPa3QgMjAwMCwgMTg6MDc6MzUpOgpFaW4gRnJvc2NoIGZsaWVndCBoZXJlaW4uCkVpbiBGcm9zY2ggZmxpZWd0IG5hY2ggV2VzdGVuLgpFaW4gRnJvc2NoIGZsaWVndCBoZXJlaW4uCgpIbSwgU3ByZW5ndW5nIG9kZXIgc2VpdCB3YW5uIGdpYnRzIGZsaWVnZW5kZSBGcm9lc2NoZT8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFBMQVRTQ0ghIChBY3JpbW9uLCAxMC4gT2t0IDIwMDAsIDE5OjAyOjIwKToKfiMhIHJuPUdsb2luc29uIHJ0PTk3MTA2NDA3MyByZz1zY2htYXJybgp+IyEgdGlkPTk3MTAyMDA4OQpBbHNvLCBtaW5kZXN0ZW5zIGZ1ZW5mIEJhZXVtZSBzdGVoZW4gbm9jaCBpbSBXYWxkLgoKQWNyaW1vbiB1ZWJ0IHNpY2ggaW0gWmFlaGxlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBCZXN0ZSBtYWwgZ2FueiBkcmVpc3QuLi4gKEFuYXRvbCwgMTEuIE9rdCAyMDAwLCAwMzoxMjo1MCk6CgpWb3JiZXJlaXR1bmdlbiBmdWVyIGRlbiBHZXdpbm5mYWxsCk5vdGl6IGZ1ZXIgSGVycm4gQW5hdG9sICBbMV0KClNpZSBrb2VubnRlbiBzY2hvbiBiYWxkIHVtIDUwMC4wMDAsLSBETSByZWljaGVyIHNlaW4sIEhlcnIgQW5hdG9sIQoKRGllIFZvcmJlcmVpdHVuZ2VuIGZ1ZXIgZGllIEF1c3phaGx1bmcgZGVzIEdld2lubnMgbGF1ZmVuIGJlcmVpdHMgYXVmIApIb2NodG91cmVuLiBXZW5uIFNpZSBhbHMgR2V3aW5uZXIgZGVzIDUwMC4wMDAsLSBETSBTdXBlci1HZXdpbm5zCmVybWl0dGVsdCB3ZXJkZW4sIHVlYmVycmVpY2hlIGljaCBJaG5lbiBwZXJzb2VubGljaCBpaHJlbiBHZXdpbm4gaW4KU3R1dHRnYXJ0LgoKRGFmdWVyIG11ZXNzZW4gd2lyIGVpbmlnZSBEaW5nZSB2b3JiZXJlaXRlbi4gSWNoIGhhYmUgbWlyIGJlcmVpdHMgZGVuClN0cmVja2VucGxhbiBkZXIgQmFobiBiZXNvcmd0IHVuZCBkaWUgZnVlciBTaWUgZ3VlbnN0aWdzdGUgVmVyYmluZHVuZwpoZXJhdXNnZXN1Y2h0LiBCZXdhaHJlbiBzaWUgZGllc2UgS2FydGUgYml0dGUgc29yZ2ZhZWx0aWcgYXVmIQoKX1dpY2h0aWdfOiBJbiB3ZW5pZ2VuIFRhZ2VuIGVyaGFsdGVuIFNpZSBQb3N0IHZvbSBWZXJsYWcgRGFzIEJlc3RlCm1pdCBJaHJlbiBwZXJzb2VubGljaGVuIFRlaWxuYWhtZS1VbnRlcmxhZ2VuLiBTY2hpY2tlbiBTaWUgZGllc2UgCnVtZ2VoZW5kIHp1ciBHZXdpbm5lci1aaWVodW5nIGFuIHVucyB6dXJ1ZWNrIQoKKFVudGVyc2NocmlmdCBibGFibGEsIExlaXRlcmluIGRlciBBYnQuIEdyYXRpc3Zlcmxvc3VuZykKCi4uLiBVbmQgYXVmIGRlciBSdWVja3NlaXRlIGRpZSBJQ0UtVmVyYmluZHVuZ2VuIGRlciBEQiwgdm9uIFdlc3RlcmxhbmQKYmlzIHJ1bnRlciBuYWNoIEJhc2VsIGFsbGVzIGRyYXVmLiBFaW4gd2VuaWcgR2VmYXNlbCB2b24gd2VnZW4gIk5hY2ggCmRlbSBJQ0UtS3Vyc2J1Y2ggaXN0IGRpZXMgZGllIGt1ZXJ6ZXN0ZSBCYWhuc3RyZWNrZSB2b24gSWhyZW0gV29obm9ydCAKbmFjaCBTdHV0dGdhcnQsIHVtIGRvcnQgaW0gR2V3aW5uZmFsbC4uLiIuLi4gdW5kIGJlbHVzdGlndCBzdGVsbGUgaWNoCmZlc3QsIGRhc3MgZGVyIGRlciBadXN0ZWxsYWRyZXNzZSBuYWVjaHN0bGllZ2VuZGUgZWluZ2V0cmFnZW5lIElDRS0KQmFobmhvZiBhdXNnZXJlY2huZXQgU3R1dHRnYXJ0IGlzdCA6bykKCkFuYXRvbCAtIGZyYWd0IHNpY2gsIHdlbSBkYXMgcGVpbmxpY2hlciBzZWluIHNvbGx0ZS4uLiBpaG0gb2RlciBkZW5lbi4KClsxXSBLbGFyLCBkYSBzdGFuZCBzY2hvbiBkZXIgUkwtTmFtZSwgd2FzIGRhY2h0ZXN0IERVIGRlbm4/ISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKenVzYW1tZW5oYW5nPyAoVW5hc2FpLCAxMS4gT2t0IDIwMDAsIDEyOjUzOjM3KToKRGVpbmUgRnJldW5kaW4gSGVsbGZsZWNrIHRlaWx0IERpciBtaXQ6IG9rYXkgZGEgYmluIGljaCBtYWwgd2llZGVyLi4uCgpCYW1iaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCgpobT8gOikKVW5hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhcyBCZXN0ZSBtYWwgZ2FueiBkcmVpc3QuLi4gKEdub21lLCAxMS4gT2t0IDIwMDAsIDIzOjUzOjM1KToKfiMhIHJuPUFuYXRvbCBydD05NzEyMjY3NzAgcmc9c2NobWFycm4KfiMhIHRpZD05NzEyMjY3NzAKamEsIHNvbGNoZSBzY2hyZWliZW4gc2luZCBlY2h0IGltbWVyIGZ1ZXIgZWluZW4gaGVyemhhZnRlbiBsYWNoZXIgZ3V0Lgp1bmQgd2VubiBkYW5uIGRhIG5vY2ggc3RlaHQ6IC4uLmRpZXNlIGxvc251bW1lciB3dXJkZSBleGtsdXNpdiBudXIgZnVlcgpTSUUgZ2V6b2dlbi4uLiBiaXR0ZSBrbGViZW4gc2llIGRpZSBnb2xkZW5lIGdld2lubmthcnRlIGF1ZiBkYXMgc2ljaAp1bXNlaXRpZyBiZWZpbmRlbmUgZmVsZC4uLiB1bmQgYXVmIGRlbSB1bXNjaGxhZzogV0lDSFRJR0UgVU5URVJMQUdFTiEKZGFzIGdhbnplIDN4IHVudGVyc3RyaWNoZW4gdW5kIGluIHJvdC4KREFOTiBsaWVnIGljaCBpbW1lciByZWdlbG1hZXNzaWcgdW50ZXJtIHRpc2NoIHVuZCBmcmFnZSBtaWNoLCBmdWVyIFdJRQpibG9lZCBoYWx0ZW4gc2llIGRpZSBsZXV0ZSBlaWdlbnRsaWNoPwoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGFzIEJlc3RlIG1hbCBnYW56IGRyZWlzdC4uLiAoQW5hdG9sLCAxMi4gT2t0IDIwMDAsIDAwOjM0OjI2KToKfiMhIHJuPUdub21lIHJ0PTk3MTMwMTIxNSByZz1zY2htYXJybgp+IyEgdGlkPTk3MTIyNjc3MApEaWUgIndpY2h0aWdlbiBVbnRlcmxhZ2VuIiBzaW5kIGluendpc2NoZW4gYXVjaCBkYS4gSW4gd2ljaHRpZ2VuIHNjaHdhcnplbgpMZXR0ZXJuIGF1ZiBnZWxiZW0gTGFiZWwgc3RlaHQgIkVYUFJFU1MtTElFRkVSVU5HIiBkcmF1ZiwgbmljaHQgZWlubWFsLApuZWluLCBkcmVpbWFsISBEYXp1IGVpbiAnTGFiZWwnIChpc3Qga2VpbiBlY2h0ZXMsIG5hdHVlcmxpY2ggbmljaHQpIG1pdApkZXIgQXVmc2NocmlmdCAiTElFRkVSVU5HIFJFR0lTVFJJRVJUIiwgZWJlbmZhbGxzIGluIHNjaHdhcnotZ2VsYiB1bmQgCmVpbmVyICJnZXN0ZW1wZWx0ZW4iIFJlZ2lzdHJpZXJ1bmdzbnVtbWVyIGRhenUsIGJsYXUgYXVmIHdlaXNzLiBSaWNodGlnCnRvbGwgaXN0IGFiZXIgZGFzIGdlc2NoYWVmdGlnIGF1c3NlaGVuZGUgQ2hlY2tib3hmZWxkICh3ZWlzcywgbWl0IGdlbGJlcgpVbXJhbmR1bmcpIGF1ZiBkZXIgVm9yZGVyc2VpdGU6IAoKV0lDSFRJR0UgSElOV0VJU0UgWlVNIElOSEFMVAoKMTEgW1hdIGJlZ3Jlbnp0IGd1ZWx0aWdlIERva3VtZW50ZSAgICAxMyBbWF0gUG9ydG8gYmV6YWhsdAoxNiBbWF0gRG9rdW1lbnRlIGdlcHJ1ZWZ0ICAgICAgICAgICAgIDE5IFtYXSBBZHJlc3NlIGJlc3RhZXRpZ3QKMTggW1hdIE5hbWUgYmVzdGFldGlndCAgICAgICAgICAgICAgICAyMCBbWF0gRGF0aWVydGUgRG9rdW1lbnRlCgpaVVNURUxMVU5HCgoyIFsgXSBTdGFuZGFyZCAgICAgMyBbWF0gRXhwcmVzcyAgICAgIDQgWyBdIEludGVybmF0aW9uYWwKCkJlc3RhZXRpZ3QgKGtyaXR6ZWxrcml0emVsLCBVbnRlcnNjaHJpZnQgZGVyIFR1c3NpIHZvbSBlcnN0ZW4gU2NocmVpYmVuKQoKQW5hdG9sIC0gdmVya2xhZ3QgRGFzIEJlc3RlIHdlZ2VuIExhY2htdXNrZWx6ZXJydW5nIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEYXMgQmVzdGUgbWFsIGdhbnogZHJlaXN0Li4uIChBbmF0b2wsIDEyLiBPa3QgMjAwMCwgMDA6NDM6MjgpOgp+IyEgcm49QW5hdG9sIHJ0PTk3MTMwMzY2NiByZz1zY2htYXJybgp+IyEgdGlkPTk3MTIyNjc3MApPaCwgdW5kIG5hdHVlcmxpY2guIERpZSAiRklOQUxJU1RFTi1NQVBQRSIgYmV0cmVmZnMgZGVyIEVybWl0dGx1bmcgZGVzCjUwMC4wMDAsLSBETSBTdXBlci1HZXdpbm5lcnMgKCJlbnRzcHJlY2hlbmQgZGVuIG9mZml6aWVsbGVuIFRlaWxuYWhtZS0KYmVkaW5ndW5nZW4pLCB3ZWxjaGUgc3VwZXJtZWdhYWZmZW5ndW1taXRpdHRlbndpY2h0aWcgYXVzc2llaHQgdW5kIHZvbgptaW5kZXN0ZW5zIGRyZWkgTGV1dGVuIGJlc3RhZXRpZ3QgdW50ZXJzY2hyaWViZW4gd3VyZGUsIGRpZSBlbnRoYWVsdApuYXR1ZXJsaWNoIGF1Y2ggZWluIEJlbmFjaHJpY2h0aWd1bmdzc2NocmVpYmVuLCB3ZWxjaGVzIGRlbiBpbSBOZXR6Cmt1cnNpZXJlbmRlbiBIb3Jyb3ItU3plbmFyaWVuLUtldHRlbm1haWxzIGRhcyBXYXNzZXIgcmVpY2hlbiBrYW5uLCBkZXMKd2VpdGVyZW4gZWluIFVlYmVycmFzY2h1bmdzZ2VzY2hlbmtzaWVnZWwgKGdvbGQtZ3J1ZW4pLCBlaW4gRXJtYWVjaHRpZ3VuZ3MtClNpZWdlbCAoa29lbmlnc2JsYXUpLCBlaW4gU29uZGVycHJlaXNzaWVnZWwgZnVlciBTY2huZWxsYW50d29ydGVyIChzY2h3YXJ6LApsZXVjaHRlbmRyb3QpLCB1bmQgLSBuYXR1ZXJsaWNoIC0gZGllIE1vZWdsaWNoa2VpdCwgZWluIEFib25uZW1lbnQgZnVlciBuCkRNIChBa3Rpb25zcHJlaXMhKSB6dSBlcmthdWZlbiB1bmQgZGl2ZXJzZSBXZXJiLi4uIGFlaCwgcGFyZG9uIEluZm9ybWF0aW9ucy0KbWF0ZXJpYWxpZW4genUgYW5kZXJlbiBUaGVtZW4gYW56dWZvcmRlcm4uCgpBbmF0b2wgICAtICAgICAgICAgICBUcmV1ZXIgS3VuZGUgc2VpdDogRUlOSUdFUiBaRUlUCiAgICAgIEt1bmRlbnN0YXR1cyBiZWkgUmVhZGVyJ3MgRGlnZXN0OiBCRVNURVIgS1VOREUKICBBdXN3YWhsdmVyZmFocmVuIGZ1ZXIgRmluYWx0ZWlsbmFobWU6IERVUkNIR0VGVUVIUlQKICAgICAgICAgICAgICAgICAgICBIYW5kbHVuZyBub3R3ZW5kaWc6IERSSU5HRU5ECiAgICAgICAgICAgICAgIFp1c2FldHpsaWNoZSBBbnNwcnVlY2hlOiBCRVdJTExJR1QKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZWlobmFjaHRlbiAoRWxiZXJldCwgMTIuIE9rdCAyMDAwLCAwMDo1MTowNSk6Ck9rLCBpcyBub2NoIHdhcyBmcnVlaCBhYmVyIG1hbiBtdXNzIGphIHZvcmJlcmVpdGV0IHNlaW4KCnZvcnNpY2h0LCBpc3Qgd2FzIGxhZW5nZXIKCldlaWhuYWNodGVuIDIwMDAKV2llIFdlaWhuYWNodGVuIDk5IGltIEludGVybmV0IGdlemVpZ3QgaGF0LCBoZWkyMDAwdCBXZWlobmFjaHRlbiBuaWNodCBtZWhyCldlaWhuYWNodGVuLCBzb25kZXJuIFgtbWFzLCBhbHNvIG11c3MgZGVyIFdlaWhuYWNodHNtYW5uIGF1Y2ggWC1tYW4gc2VpbiEgRGEKWC1tYXMgMjAwMCBxdWFzaSBzY2hvbiB2b3IgZGVyIFR1ZXIgc3RlaHQsIGlzdCBlcyBzcGFldGVzdGVucyBhYiBqZXR6dCBoY2hzdGUKWmVpdCwgbWl0IGRlciBXZWlobmFjaHRzdm9yYmVyZWl0dW5nIHp1IGJlZ2lubmVuIC0gVmVyemVpaHVuZzogZGFzCmRpZXNqYWVocmlnZSBXZWlobmFjaHRzLVJvbGwtT3V0IHp1IHN0YXJ0ZW4gdW5kIGRpZSBDaHJpc3RtYXMtTWFpbGluZy1Ba3Rpb24KanVzdCBpbiBUaW1lIHZvcnp1YmVyZWl0ZW4uCkhpbndlaXM6IERpZSBLaWNrLW9mZi1WZXJhbnN0YWx0dW5nIChmcnVlaGVyIDEuIEFkdmVudCkgZnVlciBkYXMgZGllc2phZWhyaWdlClNBTkNST1MgKFNBTnRhIENsYXVzIFJPYWQgU2hvdykgZmluZGV0IGJlcmVpdHMgYW0gMjkuIE5vdmVtYmVyIDIwMDAgc3RhdHQuCkRhaGVyIHd1cmRlIGRhcyBvZmZpemllbGxlIENvbWUtVG9nZXRoZXIgZGVzIE9yZ2FuaXppbmcgQ29tbWl0dGVlcyB1bnRlcgpWb3JzaXR6IGRlcyBDSU8gKENocmlzdG1hcyBJbGx1bWluYXRpb24gT2ZmaWNlcikgc2Nob24gYW0gNi4gSmFudWFyCmFiZ2VoYWx0ZW4uIEVyc3RtYWxzIGhhYmVuIHdpciBlaW4gUHJvamVrdHN0YXR1cy1NZWV0aW5nIHZvcmdlc2NoYWx0ZXQsIGJlaQpkZW0gZWluZSBpbiBXb3Jrc2hvcHMgZW50d2lja2VsdGUgIlRvLURvLUxpc3RlIiB1bmQgZWluaGVpdGxpY2hlIEpvYgpEZXNjcmlwdGlvbnMgZXJzdGVsbHQgd3VyZGVuLiBEYWR1cmNoIHNvbGxlbiBrbGFyZSBWZXJhbnR3b3J0dW5nc2JlcmVpY2hlLApNZWV0aW5nIGRpZW50ZSB6dWdsZWljaCBkYXp1LCBtaXQgZGVtIENvLUhlYWQgR2xvYmFsIENocmlzdG1hcyBNYXJrZXRzCihLbmVjaHQgUnVwcmVjaHQpIGRpZSBBYmxhdWYtT3JnYW5pc2F0aW9uIGFienVzdGltbWVuLCBkaWUKR2VzY2hlbmstRGlzdHJpYnV0aW9uIGFuIGRpZSB6dXN0YWVuZGlnZW4gUHJpdmF0ZS1TY2hlbmtpbmctQ2VudGVycwpzaWNoZXJ6dXN0ZWxsZW4gdW5kIGRpZSBaaWVsZ3J1cHBlbiBrbGFyIHp1IGRlZmluaWVyZW4uIEVyc3RtYWxzIHNvbGxlbiBhdWNoCnNvZ2VuYW5udGUgR2VzY2hlbmstVW5pdHMgdWViZXIgZGFzIEludGVybmV0IGFuZ2Vib3RlbiB3ZXJkZW4uCkRpZSBTZXJ2aWNlLVByb3ZpZGVyIChFbmdlbCwgRWxmZW4gdW5kIFJlbnRpZXJlKSB3dXJkZW4gYmVyZWl0cyB2aWEKQ29uZmVyZW5jZSBDYWxsIHZpcnR1ZWxsIGluZm9ybWllcnQgdW5kIGRpZSBDb3JlLUNvbXBldGVuY2VzIHZlcmdlYmVuLiBFaW4KQnVlbmRlbCB2b24gSW5jZW50aXZlcyB1bmQgZWluIHNlcGFyYXRlciBUZWFtLUJ1aWxkaW5nLUV2ZW50IGFuIGdlZWlnbmV0ZXIKTG9jYXRpb24gc29sbGVuIGRlbiBNb3RpdmF0aW9uc2xldmVsIGVyaGhlbiB1bmQgZ2xlaWNoemVpdGlnIGhlbGZlbiwgZWluZQplaW5oZWl0bGljaGUgQ29ycG9yYXRlIEN1bHR1cmUgc2FtdCBJZGVudGl0eSB6dSBlbnR3aWNrZWxuLiBEZXIgVm9yc2NobGFnLApqZWRlbSBFbmdlbCBlaW5lbiBDb2FjaCB6dXIgU2VpdGUgenUgc3RlbGxlbiwgd3VyZGUgYXVzIEJ1ZGdldGdydWVuZGVuCnp1bmFlY2hzdCBnZWNhbmNlbHQuIFN0YXR0IGRlc3NlbiB3dXJkZSBhdWYgZWluZXIgenVzYWV0emxpY2hlbiBDbGllbnQKTWFuYWdlbWVudCBDb25mZXJlbmNlIGJlc2NobG9zc2VuLCBpbiBlaW5lbSBUZXN0YmV6aXJrIGFscyBQaWxvdHByb2pla3QgZWluZQpIb3RsaW5lICgwLDY5IFBmL01pbnV0ZSBMZWdpb24pIGZ1ZXIga3VyemZyaXN0aWdlIFdlaWhuYWNodHN3dWVuc2NoZQplaW56dXJpY2h0ZW4sIHVtIGRlbiBBZGRlZCBWYWx1ZSBmdWVyIGRpZSBCZXNjaGVua3RlbiB6dSBlcmhoZW4uIER1cmNoIGVpbgphdXNnZWtsdWVnZWx0ZXMgTWFuYWdlbWVudCBJbmZvcm1hdGlvbiBTeXN0ZW0gKE1JU3QpIGlzdCBhdWNoCkJlbmNobWFyay1vcmllbnRpZXJ0ZXMgQ29udHJvbGxpbmcgZnVlciBqZWRlcyBQcml2YXRlLVNjaGVua2luZy1DZW50ZXIKbWdsaWNoLiBOYWNoZGVtIGVpbiBuZXVlcyBMaXRlcmF0dXItS29uemVwdCB1bmQgZGFzIExheW91dC1Gb3JtYXQgdm9uCmV4dGVybmVuIENvbnN1bHRhbnRzIGRlZmluaWVydCB3dXJkZSwga29ubnRlIGF1Y2ggc2Nob24gZGFzIGRpZXMtamFlaHJpZ2UKR29sZGVuZSBCdWNoIChHb2xkZW4gQm9vayBSZWxlYXNlIDk5LjEpIGVyc3RlbGx0IHdlcmRlbi4gRXMgZXJzY2hlaW50IGFscwpGbHllciwgZXJnYWVuenQgdW0gZWluIExlYWZsZXQgdW5kIGVpbmVuIE5ld3NsZXR0ZXIgZnVlciBkYXMgbGF1ZmVuZGUKVXBkYXRpbmcuCkhvY2hhdWZsYWdpZ2UgTG93Y29zdC1HaXZlYXdheXMgZGllbmVuIHp1ZGVtIGFscyBUZWFzZXIgdW5kIGZsYW5raWVyZW5kZQpNYXJrZXRpbmdtYXNzbmFobWUuIEZlcm5lciB3dXJkZSBkdXJjaCBpbnRlbnNpdmVzIEJyYWluIFN0b3JtaW5nIGVpbiBLb25zZW5zCnVlYmVyIGRhcyBNaXNzaW9uIFN0YXRlbWVudCBnZWZ1bmRlbi4gRXMgbGF1dGV0ICJMZXQncyBrZWVwIHRoZSBjYW5kbGVzCmJ1cm5pbmciIHVuZCBlcnNldHp0IGRhcyBiaXNoZXJpZ2UgIkZyb2hlIFdlaWhuYWNodGVuIi4gU2FudGEgQ2xhdXMgaGF0dGUKendhciBhbmZhbmdzIEJlZGVua2VuIGFuZ2VzaWNodHMgZGVzIENvcnBvcmF0ZS1SZWRlc2lnbnMsIGFremVwdGllcnRlIGFiZXIKbGV0enRsaWNoIGRlbiBwcm9ncmVzc2l2ZW4gQ29uc3VsdGluZy1BbnNhdHogdW5kIHd1ZXJkaWd0ZSBkYXMgS25vdy1ob3cKc2VpbmVyIEludmVzdG9yLVJlbGF0aW9uLU1hbmFnZXIuIEluIGRpZXNlbSBTaW5uZSBub2NoIGVyZm9sZ3JlaWNoZSBYLW1hcwpQcmVwYXJhdGlvbnMgZnVlciBkYXMgSmFociAyMDAwLgoKQWxzbyBzY2hvbiBtYWwgc2Nob2VuZSBXZWlobmFjaHRlbiBvZGVyIHdpZSBhdWNoIGltbWVyIG1hbiBzYWdlbiBtdXNzIDspCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpab3JuIGRlciBOb25uZW4/IChNb3Jnb3RoLCAxMi4gT2t0IDIwMDAsIDA5OjQ3OjMzKToKW0tsZXJ1czpLbnVkc3Nvbl0gbW9yZ2VuIG5vbm5lLi4uIHBvc3Qgc2Nob24gZ2VsZXNlbj8KW0tsZXJ1czpOb25uZV0gbm9lCltLbGVydXM6Tm9ubmVdIGpldHp0IChjOwpbS2xlcnVzOktudWRzc29uXSB1bmQgd2FzIG1laW5zdCBkdT8KW1RvZDpMYXJzXSBFaW4gVnVsa2FuIGhhdCBnZXJhZGUgS251ZHNzb24gdW1nZWJyYWNodC4KW1RvZDpFaW4gVnVsa2FuXSBJY2ggdmVydHJhZ2UgbmljaHQgc292aWVsIFNjaHVldHRlbGJpZXIhCgpNKiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERhcyBCZXN0ZSBtYWwgZ2FueiBkcmVpc3QuLi4gKEJhbWJpLCAxMi4gT2t0IDIwMDAsIDEwOjEwOjUxKToKfiMhIHJuPUFuYXRvbCBydD05NzEzMDM2NjYgcmc9c2NobWFycm4KfiMhIHRpZD05NzEyMjY3NzAKV2FlcnN0IER1IGJpdHRlIHNvIGZyZXVuZGxpY2gsIGRhcyBaZXVncyB6dSBzY2FubmVuIHVuZCBpbnMgTmV0eiB6dSBzdGVsbGVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2Nob2VuZXIgenVzYW1tZW5zY2huaXR0Li4uIGdlZmFlbGx0IG1pciA6KSAoS251ZHNzb24sIDEyLiBPa3QgMjAwMCwgMTU6MDE6MDUpOgp+IyEgcm49TW9yZ290aCBydD05NzEzMzY4NTMgcmc9c2NobWFycm4KfiMhIHRpZD05NzEzMzY4NTMKRGEgd2FyIG1hbCB3aWVkZXIgZGllIFNjaGVyZSB0YWV0aWcgOikgQWJlciBnZWZhZWxsdCBtaXIgZ2FueiBndXQgdW5kIHJlZ3QgenVtCm5hY2hkZW5rZW4gYW4gLiBvIE8gKGtvZW5uZW4gTm9ubmVuIFZ1bGthbmUgenVtIGV4cGxvZGllcmVuIGJyaW5nZW4pICpnKgoKS251ZHNzb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFN1Y2hlIC4uLiAoQW5hdG9sLCAxMi4gT2t0IDIwMDAsIDE5OjA0OjExKToKfiMhIHJuPVJvY2h1cyBydD05NzEzNzAxNjQgcmc9YW56ZWlnZW4KfiMhIHRpZD05NzEzNTA3NjQKVmVyZ2lzcyBlcy4gTGllcycgZGVuIEJlaXBhY2t6ZXR0ZWwsIGRlciBtaXQgZGVyIFVuc2NodWxkIG1pdGdlbGllZmVydCAKd2lyZC4gIk5pY2h0IHVlYmVydHJhZ2Jhci4iLCBkaXJla3QgbmViZW4gZGVtICJVbmdlb2VmZm5ldCBoYWx0YmFyIGJpcy4uLiIuCgpBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2huZWxsZSBBbnR3b3J0IChHb3JvZywgMTIuIE9rdCAyMDAwLCAyMDowOToxMSk6CkR1IHRlaWxzdCBMaWFyYSBtaXQ6IGdpYnRzIGRhIG4gdmVyc3RlY2t0ZW4gZWluZ2FuZz8KTGlhcmEgaXN0IGdlcmFkZSBuaWNodCBkYTogTm9lLiA6LSkKCkRhcyBpcyBkYW5uIHdvaGwgbmUgV2VnLU1lbGR1bmdzLUtpIG9kZXIgd2FzICg7CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpodXBzLi4uIChJbWRhLCAxMi4gT2t0IDIwMDAsIDIyOjE4OjIwKToKRHUgcXVhZWxzdCBSb2FkcnVubmVyIGZ1ZXJjaHRlcmxpY2ggdW5kIGhvZXJzdCBlaW5lbiBncmF1ZW5oYWZ0ZW4gU2NocmVpLiAKUm9hZHJ1bm5lciBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LiAKUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFJvYWRydW5uZXIuIAoKVm9vZG9vIGlzIGRvY2ggd2FzIGh1ZWJzY2hlcyA7KQoKSW1kYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClphdWJlcmVyICEhIChNb3Jnb3RoLCAxMi4gT2t0IDIwMDAsIDIyOjQ4OjA2KToKQW5hdG9sIGRlbmt0ICAgLiBvIE8gKFphdWJlcmVyIHNpbmQga2xhciBpbSBWb3J0ZWlsKQpBbmF0b2wgZnVjaHRlbHQgaW4gUmljaHR1bmcgc2VpbmVzIFNjaGF0dGVucyB1bmQgbWFjaHQgc2VsdHNhbWUgU3BydWVuZ2UuClBsb2V0emxpY2ggbWFjaHQgc2ljaCBBbmF0b2xzIFNjaGF0dGVuIHNlbGJzdGFlbmRpZyEKQW5hdG9sIGZsaWVndCBoZXJlaW4uCkRlciBTY2hhdHRlbiBpc3QgemllbWxpY2ggc2Nod2FjaC4KQW5hdG9sIGt1c2NoZWx0IHNpY2ggYW4gQW5hdG9sIGFuLgoKTSogZ3JpbnN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadWZhbGwgKFZhbXBpcmUsIDEzLiBPa3QgMjAwMCwgMTI6MDM6NTUpOgpBcm1hZ2VkZG9uIHNhZ3Q6IHVuZCB3YXMgbWFjaCBpY2ggbnVuID8/Pwo+IEFuYXRvbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpFaW4gZW50c2V0emxpY2hlciBTY2hyZWkgaGFsbHQgdm9tIEZyaWVkaG9mIGhlcnVlYmVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTW9yZCBpbSBNb3JnZW5HcmF1ZW4/IChSYXl6ZWVsLCAxMy4gT2t0IDIwMDAsIDEyOjA2OjQ5KToKRWluIGVudHNldHpsaWNoZXIgU2NocmVpIGhhbGx0IHZvbSBGcmllZGhvZiBoZXJ1ZWJlci4KSGFtYnRpIHJ1ZnQ6IHBvbGl6ZWkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFoamEgKFRoYW5vcywgMTMuIE9rdCAyMDAwLCAxNTowNDozOSk6CgpEdSBrb256ZW50cmllcnN0IERpY2ggaW50ZW5zaXYgYXVmIGRlbiByb3RlbiBEcmFjaGVuc2NoYWVkZWwuCkRlciByb3RlIERyYWNoZW5zY2hhZWRlbCB3ZWhydCAna29yeW9rdScgYWIuCkRhcyBpc3QgRGlyIG9mZmVuYmFyIHNvIHJpY2h0aWcgZ3V0IGdlbHVuZ2VuLgoKRGEgbW9lY2h0ZSBpY2ggamEgbmljaHQgd2lzc2VuIHdhcyBwYXNzaWVydCB3ZW5uIGRlciBtYWwgc2NobGVjaHQgd2lyZC4KClRoYW5vcywgaGV1dGUgYnJ1bW1lbGlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW5kIG5vY2htYWwgYWhqYSA6KSAoVGhhbm9zLCAxMy4gT2t0IDIwMDAsIDE1OjQ3OjIyKToKCktlbm5lbiB3aXIgamEgc2Nob24gOgoKRGVyIGdydWVuZSBFZGVsc3RlaW4gbGV1Y2h0ZXQgYXVmLgpEZWluZSBTY2h1aGUgZ2x1ZWhlbiBrdXJ6IGF1ZiB1bmQgaGVpbGVuIERpY2ggZWluIHdlbmlnLgpEYXMgU2Nod2VydCBzYXVndCBldHdhcyBCbHV0IGF1cyBkZW0gSGVmdC4KRHUgd2lyc3QgZGF2b24gcmVnZW5lcmllcnQuClBsb2V0emxpY2ggbGV1Y2h0ZXQgZGFzIEZldWVyYW11bGV0dCBncmVsbCBhdWYuIER1IHdpcnN0IHZvbiBlaW5lciBsZXVjaHRlbmRlbgpBdXJhIGVpbmdlaHVlbGx0LiBBbHMgZGllIEF1cmEgZXJsaXNjaHQsIGZ1ZWhsc3QgZHUgZGljaCBzZWhyIHZpZWwgYmVzc2VyLgoKTmEgd2VubiBkYXMga2VpbiByZXNldCB3YXIgOikKClRoYW5vcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOikgKFNpbmEsIDEzLiBPa3QgMjAwMCwgMjA6MTE6MjQpOgoKW0FsbGdlbWVpbjpUaWFtYWtdIGhobW1tbSAuLi4gfjIwIEFydGlrZWwgcHJvIFRhZz8gRGFubiBoYXV0IG1hbCByZWluLCBkYQpbQWxsZ2VtZWluOlRpYW1ha10gZmVobGVuIGhldXRlIG5vY2ggd2VsY2hlIDteKSAgICAgICAKClNpbmEuLi4gbm9jaCAxOQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogbWFuIHNpZWh0IHNpY2ggYXVmIGRlciBTcGllbD8/Pz8gKEZldWVyd2VociwgMTQuIE9rdCAyMDAwLCAwOTo1Mjo0Nik6Cn4jISBybj1LbnVkc3NvbiBydD05NzE0NDM4NTUgcmc9dHJlZmZlbgp+IyEgdGlkPTk3MTI5NjczNgoKQWVoYWVtLiBJY2ggbW9lY2h0ZSBhbGwgZXVjaCBBa2FkZW1pa2VyIGRhbm4gZG9jaCBkYXJhdWYgYXVmbWVya3NhbSBtYWNoZW4sCmRhc3MgZXMgImRhcyBTcGllbCIgdW5kIG5pY2h0ICJkaWUgU3BpZWwiIGhlaXNzdC4gRGllIGRldXRzY2hlIEJpbGR1bmcgZ2VodApkb2NoIHppZW1saWNoIGRlbiBCYWNoIHJ1bnRlci4gV29iZWkgdWVicmlnZW5zIG5pY2h0IGRpcmVrdCBrbGFyIHdpcmQsIHdlbGNoZXMKU3BpZWwgZ2VtZWludCBpc3QuIERhIGVzIGFiZXIgNCBUYWdlIHp1bSBTcGllbGVuIGJyYXVjaHQsIGRlbmtlIGljaCwgZGFzcyBlcwp3b2hsIGVpbmUgQXJ0IFN0cmF0ZWdpZXNwaWVsIHNlaWVuIG11c3MuIE9kZXIgZWluIE11ZC4gT2RlciBlaW4gUm9sbGVuc3BpZWwuCldvYmVpIGljaCBtaWNoIGZyYWdlLCB3ZWxjaGUgSWRpb3RlbiBkZW5uIDQgVGFnZSBsYW5nIGR1cmNoc3BpZWxlbi4gRXMgbXVlc3Nlbgp3b2hsIElkaW90ZW4gd2llIHdpciBzZWluLgoKICAgRmV1ZXJ3ZWhyLgoKUFM6IEVpbiBIb2NoIGF1ZiBkaWUgRmlybWEgbWl0IGRlbiA2IHJvdGVuIEJ1Y2hzdGFiZW4hIERhIGljaCBhdXMgZGVyIFN0YWR0CiAgICBzdGFtbWUsIGluIHdlbGNoZXIgaWhyIEZpcm1lbnNpdHogbGllZ3QsIHdhciBzaWUgbWVpbiBHYXJhbnQgZGFmdWVyLCAKICAgIG1laW5lIEtpbmRoZWl0IGluIGFiZ2VkdW5rZWx0ZW4gWmltbWVybiBtaXQgbGF1dGVyIG1lcmt3dWVyZGlnZW4gTGV1dGVuCiAgICB6dSB2ZXJicmluZ2VuISBFYXJ0aGRhd24sIFNoYWRvd3J1biwgTWVjaHdhcnJpb3IhIFVuZCBzY2hhdXQsIHdhcyBhdXMKICAgIG1pciBnZXdvcmRlbiBpc3QhIAoKUFBTOldpciBzaW5kIGFsbGUgdG90YWwga2FwdXR0IHVuZCBrcmFuayA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVjcmF1bnRlcmdhbmcgKEFuYXRvbCwgMTQuIE9rdCAyMDAwLCAxMTo0Mjo1Mik6CgpSZWJvb3QgKG0pIFtyaSdidTp0XSAvZW5nbC4vIFBsdXIuIFJlYm9vdHM7IEFuay4gZC4gLT5Bcm1hZ2VkZG9uLAogICAgICB2b3JoZXJzZWhiYXJlciBvZGVyIHZvcmhlcmdlc2FndGVyIC0+V2VsdHVudGVyZ2FuZywgZGVyIGltIAogICAgICBHZWdlbnNhdHogenVtIC0+Q3Jhc2ggbmljaHQgdW5lcndhcnRldCBpbiBFcnNjaGVpbnVuZyB0cml0dC4gCiAgICAgIFJlYm9vdHMgZXJmcmV1dGVuIHNpY2ggaW4gZnJ1ZWhlcmVuIFplaXRlbiBncm9lc3NlcmVyIEJlbGllYnRoZWl0LAogICAgICBnZXJpZXRlbiBqZWRvY2ggZHVyY2ggV2VjaHNlbCBkZXIgLT5Ib2VoZXJlbiBHZXdhbHQgenVuZWhtZW5kIGluIAogICAgICBWZXJnZXNzZW5oZWl0LgoKQ3Jhc2ggKG0pIFtrcmFlc2NoXSAvZW5nbC4vIFBsdXIuIENyYXNoczsgdWViZXJyYXNjaGVuZGVyIFp1c2FtbWVuYnJ1Y2gKICAgICAgdW5kIFVudGVyZ2FuZyBkZXIgYmVrYW5udGVuIFdlbHQgKHZnbC4gLT5XZWx0dW50ZXJnYW5nKSBkdXJjaCAKICAgICAgaG9laGVyZSBvZGVyIG5pZWRlcmUgR2V3YWx0LiAgCgpXZWx0dW50ZXJnYW5nIChtKTsgRW5kZSBkZXIgYmVrYW5udGVuIFdlbHQuIERpZXNlcyBFbmRlIGtvbW10IHNvIHNjaG5lbGwsCiAgICAgIGRhc3MgTGViZXdlc2VuIGltIGFsbGcuIG5pY2h0IGVpbm1hbCBkaWUgR2VsZWdlbmhlaXQgZGF6dSBiZWtvbW1lbiwgCiAgICAgIHp1IHN0ZXJiZW4uIEVpbmVtIFcuIGZvbGd0IHp1bWVpc3QgZWluZSBuZXVlIC0+R2VuZXNpcywgZGllIFdlbHQgaXN0CiAgICAgIGhlcm5hY2ggZnJpc2NoLCB1bmQgLT5qdW5nZnJhZXVsaWNoIHVuYmVydWVocnQgLSBiaXMgZGllIGVyc3RlbiAKICAgICAgLT5HYXJkZXdhZWNodGVyIGRlbiAtPlphdWJlcmVybiB6dW0gT3BmZXIgZmFsbGVuLiBBbHMgRXJrZW5udW5ncy0KICAgICAgbWVya21hbGUgZWluZXMgZ2VzY2hlaGVuZW4gVy4gbmFjaCBBYmJydWNoIGplZ2xpY2hlciBJbnRlcmFrdGlvbiBtaXQKICAgICAgZGVyIGJla2FubnRlbiBXZWx0IGdlbHRlbjoKICAgICAgICAgIC0gVmVybHVzdCBkZXMgZ3JvZXNzdGVuIFRlaWxzIChkZW4gVGVpbCwgZGVyIG5pY2h0ICJhdXRvbG9hZCIKICAgICAgICAgICAgaXN0LCB2Z2wuIC0+aW52ZW50b3J5KSBkZXIgQXVzcnVlc3R1bmcsIGRhcyBnZXphaGx0ZQogICAgICAgICAgICAiRW50c2NoYWVkaWd1bmciIHRyb2VzdGV0IGkuZC5SLiBrYXVtIGRhcnVlYmVyIGhpbndlZy4KICAgICAgICAgIC0gU2VoZXJoYWV1c2VyIHVuZCBhZWhubGljaGUgRHJhY2hlbmhvcnRlIHNpbmQgbGVlci4KICAgICAgICAgIC0gSG9oZXIgTGFlcm1wZWdlbAoKW0F1czogRGl2LiBBdXRoLiwgS2xlaW5lcyBMZXhpa29uIGZ1ZXIgQmxpdHptZXJrZXIsIENyb25pY2xlIDIwMDBdCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBtYW4gc2llaHQgc2ljaCBhdWYgZGVyIFNwaWVsPz8/PyAoTW9udGFudXMsIDE0LiBPa3QgMjAwMCwgMTM6NTY6MjQpOgp+IyEgcm49RmV1ZXJ3ZWhyIHJ0PTk3MTUwOTk2NiByZz1zY2htYXJybgp+IyEgdGlkPTk3MTI5NjczNgoKRXMgaGVpc3N0IGRvY2ggZGllIFNwaWVsLCB3ZWlsIGVzIGVpZ2VudGxpY2ggamEgYXVjaCBkaWUgU1BJRUwgaGVpc3N0LiBXZWlsIGVzCm5lIE1lc3NlIGlzdCwgdW5kIE1lc3NlIGVpbiBXb3J0IG1pdCBjYXN1cyBmZW1pbmludXMsIHNvbGx0ZSBzaWNoIG5pZW1hbmQgaGllcgpkYXMgZ3JhbW1hdGlrYWxpc2NoZSBOYWNrZW5oYWFyIGtyYWV1c2Vsbi4KCkFiZXIgYml0dGVzY2hvZW4gd2VyIG9kZXIgd2FzIGlzdCBGYW5Qcm8/IERhcyBrbGluZ3QgbmFjaCBlaW5lciBGaXJtYSwgZGllCkF1c3J1ZXN0dW5nc2dlZ2Vuc3RhZW5kZSBmdWVyIEZ1c2JhbGxmYW5zIGhlcnN0ZWxsdCwgYWxzbyBLYWVwcGlzLCBTY2hhbHMgdW5kCkF1Zm5hZWhlci4gOy0pCgpFaW4gSWdub3JhbnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhldXRlIGZsaWVnZW4gc2llIHdpZWRlciB0aWVmIChWYW5pb24sIDE0LiBPa3QgMjAwMCwgMTU6MDk6MzQpOgpBbmF0b2wgZmxpZWd0IG5hY2ggTm9yZGVuLgouLi4KQXJhdGggZmxpZWd0IG5hY2ggTm9yZGVuLgoKViogd2lsbCBhdWNoIGZsaWVnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogbWFuIHNpZWh0IHNpY2ggYXVmIGRlciBTcGllbD8/Pz8gKEtudWRzc29uLCAxNC4gT2t0IDIwMDAsIDE2OjQyOjQ4KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk3MTUyNDU4NCByZz1zY2htYXJybgp+IyEgdGlkPTk3MTI5NjczNgpadW0gZWluZW4gamEsIGVzIGhlaXNzdCBkaWUgU3BpZWwgd2VpbCBlcyBlaW5lIE1lc3NlICh3aWUgc2ljaCBkYXMgYW5ob2VydCwKaXN0IHNjaGxpZXNzbGljaCBlaW5lIGRlciBiZWRldXRlbnN0ZW4gTWVzc2VuIGF1ZiBkaWVzZW0gR2ViaWV0KSBpc3QuIFp1bQphbmRlcmVuIGVtcGZlaGxlIGljaCBNb250YW51cyBtYWwgYXVmIGRpZSBTZWl0ZSBodHRwOi8vd3d3LmZhbnByby5jb20genUKc3VyZmVuLiBNZWhyIGludGVyZXNzZSBhbiBkZW0gJ0FyYmVpdGdlYmVyJyAod2VubiBpY2ggZGFzIHJpY2h0aWcgbWl0YmVrb21tZW4KaGFiZSkgd2FlcmUgdmllbGxlaWNodCBhbmdlYnJhY2h0LiBVbmQgZXMgaGVpc3N0IEJhdHRsZSBUZWNoIHVuZCBuaWNodApNZWNod2FycmlvciAodm9ycmF1c2dlc2V0enQgZXMgd3VyZGUgZGFzIFJTUCBnZW1laW50Li4uKS4KCktudWRzc29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBtYW4gc2llaHQgc2ljaCBhdWYgZGVyIFNwaWVsPz8/PyAoQXJrLCAxNC4gT2t0IDIwMDAsIDE2OjQ4OjIyKToKfiMhIHJuPUZldWVyd2VociBydD05NzE1MDk5NjYgcmc9c2NobWFycm4KfiMhIHRpZD05NzEyOTY3MzYKU28sIEZldWVyd2VociwgRHUgYmlzdCBhbHNvIGthcHV0dCwgd2VpbCBEdSBzb2xjaGUgQXJ0aWtlbCBzY2hyZWlic3QsIHVuZCB3aXIKc2luZCBrcmFuaywgd2VpbCB3aXIgc2llIGxlc2VuIG11ZXNzZW4uIEhhY2gsIHdpZSBzY2h3ZXIgbWlyIHNvd2FzIGZhZWxsdCwKRGljaCB6dSBiZWxlaWRpZ2VuLCB1bSBlaW5lbiBuZXVlbiBGbGFtZWRpbmdlbnMgenUgc3RhcnRlbi4gSWNoIGJpbiBuaWNodApiZWdhYnQgZGFmdWVyLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBtYW4gc2llaHQgc2ljaCBhdWYgZGVyIFNwaWVsPz8/PyAoTmV2b2ssIDE0LiBPa3QgMjAwMCwgMTg6NTI6MzcpOgp+IyEgcm49S251ZHNzb24gcnQ9OTcxNTM0NTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcxMjk2NzM2Ck1lZWVlZWVwIGRhbmtlIGZ1ZXIncyBNaXRzcGllbGVuLiBEYXMgUlBHL1JTUCBpc3QgTWVjaHdhcnJpb3IsIGRpZSBDb1NpbS8gZGFzClRhYmxldG9wIGhlaXNzdCBCYXR0bGV0ZWNoLgpVbmQgRmFucHJvIGlzIGRhcyB1ZWJlbHN0ZSB3YXMgZXMgZ2lidCB1ZWJlcnNldHp1bmdzdGVjaG5pc2NoLCBkaWUgaGFiZW4gZGEKc29sY2hlIEhhZW1tZXIgZHJpbiBhbGxlaW4gaW4gU2FjaGVuIHdpZSBTaGFkb3dydW4gZGFzcyBkaWUgTGV1dGUgdm9uIEZhblBybwp3b2hsIGRpZSBlcnN0ZW4gc2luZCwgZGllIGJlaSBkZXIgUmV2b2x1dGlvbiBhbiBkaWUgV2FuZCBnZXN0ZWxsdCB3ZXJkZW4uIE5hCmd1dCwgY2xvc2Ugc2Vjb25kcyB2aWVsbGVpY2h0IHdlbm4gbWFuIG1hbCBkaWUgQUQmRCBTY2h3ZWluZXJlaWVuIGF1c3NlciBBY2h0CmxhZXNzdC4gV2Fzc2VybnVlc3NlLCBtYWwgamVtYW5kIG5lbiBNYWdpZXIgbWl0IFdhc3Nlcm51ZXNzZW4gZ2VzZWhlbj8gSWNoIHNlaApqZXR6dCBzY2hvbiB3aWVkZXIgZGllIEtvbW1lbnRhcmUgZGllIGRhcyB3b2hsIGF1c2xvZXNlbiB3aXJkLiBFZ2FsLiBEYXMKZWluemlnZSB3YXMgRmFuUHJvIGZlcnRpZ2dlYnJhY2h0IGhhYmVuIHdhciAxOTkyIGF1ZiBkZW4gRnJldUNvbiBCb2IgQ2hhcnJldHRlCnp1IGJyaW5nZW4sIHdhcyBtZWluZW4gdG90YWxlbiBVbnRlcmdhbmcgYmVzaWVnZWx0IGhhdC4uRkFTQSBpc3QgZGFzIE1hc3MKYWxsZXIgRGluZ2UsIEZhblBybyBudXIgZWluIG11ZWRlciBhYmtsYXRzY2guIE5hamEsIERTQSBQdWJsaWthdG9yZW4gaGFsdC4KJ251ZmYgc2FpZC4KCk5ldm9rLCBPcmlnaW5hbGUgc3RhdHQgRmFlbHNjaHVuZ2VuLi4uYWVoLCBVZWJlcnNldHp1bmdlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFp1ZmFsbCAoU2l0bywgMTQuIE9rdCAyMDAwLCAyMDowMzo0Myk6Cn4jISBybj1WYW1waXJlIHJ0PTk3MTQzMTQzNSByZz1zY2htYXJybgp+IyEgdGlkPTk3MTQzMTQzNQpIbW0gZ2lidHMgZWlnZW50bGljaCBlaW5lbiBGaWx0ZXIsIHdvIG1hbiBkaWUgZ2FuemVuIAoKLSAieHh4IGlzdCBqZXR6dCAobmljaHQpIG1laHIgZGEiCi0gZWluIHNjaHJlY2tsaWNoZXIgc2NocmVpCi0gZGFzIG1pdCBkZW4gc2hha3ktaXNsYW5kLWJlYmVuCgppZ25vcmllcmVuL2F1dG9tYXRpc2NoIHJhdXNmaWx0ZXJuIGxhc3NlbiBrYW5uPwoKU2l0bywgZmxlaXNzaWcgZWluZW4gV3Vuc2NoemV0dGVsIHNjaHJlaWJlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFp1ZmFsbCAoSHVtbmksIDE0LiBPa3QgMjAwMCwgMjA6MTE6MjkpOgp+IyEgcm49U2l0byBydD05NzE1NDY2MjMgcmc9c2NobWFycm4KfiMhIHRpZD05NzE0MzE0MzUKSGFsbG8/PwoKV2VubiBEdSBtaXQgLGVyd2FydGUnIExldXRlIGVpbi9hdXNzY2hhbHRlc3Qga2FubnN0IER1IGdlbmF1IGJlc3RpbW1lbiwKb2IgZHUgZGFzIGhvZXJlbiAoc2VoZW4pIHdpbGxzdC4uLgoKSHVtbmksIHZlcnN0ZWh0IHp1bWluZGVzdCBkYXMgZXJzdGUgUHJvYmxlbSBuaWNodCB3aXJrbGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFp1ZmFsbCAoU2Nob2tvLCAxNC4gT2t0IDIwMDAsIDIwOjEyOjU5KToKfiMhIHJuPUh1bW5pIHJ0PTk3MTU0NzA4OSByZz1zY2htYXJybgp+IyEgdGlkPTk3MTQzMTQzNQogSG1tbSBLYW5uIGVzIHNlaW4sIGRhc3MgRHUgZGVuIGdlc2FtdGVuIEFyaWtlbCBuaWNodCB2ZXJzdGVoc3Q/IC4uLiBlcyBnaW5nCndvaGwgZWhlciBkYXJ1bSBkaWVzZSBBcnRpa2VsIGF1cyBkZXIgbXBhIHJhdXN6dWZpbHRlcm4sIGRpZSBudXIgaXJnZW5kd2VsY2hlOgpCbGFibGEgaXN0IGpldHp0IGRhLiBCbHViYiBzY2hyZWl0IGxhdXQgLi4uIGVudGhhbHRlbi4KClNjaG9rbyAoZmluZGV0IG5peCBuZXVlcyBtZWhyIGluIGRlciBtcGEgOikgKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogWnVmYWxsIChIdW1uaSwgMTQuIE9rdCAyMDAwLCAyMDoxMzozNSk6Cn4jISBybj1TY2hva28gcnQ9OTcxNTQ3MTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcxNDMxNDM1Ck9LLCBuZWhtIGljaCBhdWYgbWljaC4KCkh1bW5pLCBpc3QgbWFsIHdpZWRlciB6dSBibG9lZC4gOy0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKY2hhb3MgcnVsZXogKERpZWRlciwgMTQuIE9rdCAyMDAwLCAyMToyMTo0MCk6CkR1IHNhZ3N0OiBtYXVsCkR1IGFyZ2xzdCBlaW4gd2VuaWcgdm9yIERpY2ggaGluLgpWYW5pb24gZ3JpbnN0IERpY2ggYW4uClZhbmlvbiB3aXJmdCBlaW5lIEtvbXBsZXR0bG9lc3VuZyBuYWNoIEhhdXNlLgpDaGFvdCBWYW5pb24gdmVybGllc3MgZ2VyYWRlIGRhcyBNb3JnZW5ncmF1ZW4uCgpEaWVkZXIsIGRlbmt0IC4gbyBPIChicmF2IC0gYXVjaCB3ZW5uIGljaCBkYXMgZWlnZW50bGljaCBpbSBmYWxzY2hlbiBGZW5zdGVyCmdlc2FndCBoYXR0ZS4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG1hcnJuIChTZWxlbnVzLCAxNC4gT2t0IDIwMDAsIDIyOjM4OjMxKToKVGFpbmEga2l0emVsdCBHcnVtcGYgYW4gc2VpbmVtIEtpbm4uCkdydW1wZiB2ZXJzdWNodCwgc2ljaCB6dSBiZWhlcnJzY2hlbiwgbXVzcyBhYmVyIGRvY2ggbGFjaGVuLgpUYWluYSBraXR6ZWx0IEdydW1wZiBhbiBzZWluZW0gS2lubi4KR3J1bXBmIHZlcnN1Y2h0LCBzaWNoIHp1IGJlaGVycnNjaGVuLCBtdXNzIGFiZXIgZG9jaCBsYWNoZW4uClRhaW5hIGtpdHplbHQgR3J1bXBmIGFuIHNlaW5lbSBLaW5uLgpHcnVtcGYgdmVyc3VjaHQsIHNpY2ggenUgYmVoZXJyc2NoZW4sIG11c3MgYWJlciBkb2NoIGxhY2hlbi4KVGFpbmEgZnVjaHRlbHQgbWl0IGRlbiBIYWVuZGVuIGhlcnVtLCB1bmQgc3ByaWNodCBzZWx0c2FtZSBXb3J0ZS4gUGxvZXR6bGljaApzY2hlaW5lbiBpaHJlIHNlbHRzYW1lbiBBbmZhZWxsZSB3ZWcgenUgc2Vpbi4KR3J1bXBmIGh1ZXBmdCB1bSBUYWluYSBoZXJ1bS4KR3J1bXBmIGh1ZXBmdCB1bSBUYWluYSBoZXJ1bS4KR3J1bXBmIGh1ZXBmdCB1bSBUYWluYSBoZXJ1bS4KR3J1bXBmIGh1ZXBmdCB1bSBUYWluYSBoZXJ1bS4KR3J1bXBmIGh1ZXBmdCB1bSBUYWluYSBoZXJ1bS4KLS0tLS0tLS0tLS0tLQpzaWNoZXIgZGFzIGRpZSBBbmZhZWxsZSB3ZWcgc2luZD8gOi0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogWnVmYWxsIChBbmF0b2wsIDE1LiBPa3QgMjAwMCwgMTQ6NTg6MjIpOgp+IyEgcm49SHVtbmkgcnQ9OTcxNTQ3MjE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcxNDMxNDM1CiJtYWwgd2llZGVyPyIgKnN0aXJucnVuemVsKiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFFSCAtIFdpZSBqZXR6PyAoS2FkYWJyYSwgMTUuIE9rdCAyMDAwLCAxNTo1NzozMSk6CkRlciBCb2RlbiBiZXN0ZWh0IGF1cyBkdW5rZWxncmF1ZW0gRmVsc2dlc3RlaW4gdW5kIGlzdCBhYnNvbHV0IGViZW4uIFNvbnN0Cnd1ZXJkZW4gaGllciBhbSBFbmRlIG5vY2ggaXJnZW5kd2VsY2hlIFdhcmVuIHdlZ3JvbGxlbi4+IHVudCB3YXJlbiBTbyBrYW5uc3QKRHUgc2llIG5pY2h0IHNlaGVuLiBBYmVyIER1IGthbm5zdCBlcyBqYSBtYWwgbWl0ICd1bnRlcnN1Y2hlIDxnZWdlbnN0YW5kPiBpbQpsYWRlbicgdmVyc3VjaGVuLj4gdW50ZXIKPiB1bnRlcnN1Y2hlIHdhcmVuIGltIGxhZGVuIC0gSGllciBpc3Qga2VpbiBMYWRlbi4KU29ycnkgd2VnZW4gbWllc2VtIHBhc3RlCmthZGFicmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhpdHppZ2VzIEdlZmVjaHQgKFRhaW5hLCAxNS4gT2t0IDIwMDAsIDIwOjMyOjAxKToKQmVpbSBXYW5nYWRvcmYgaW0gaGVpc3NlbiBEc2NodW5nZWw6IAo+IHVudCBoaXR6ZQpFaW4gQm90ZSBrb21tdCBoZXJlaW5nZWhhc3RldCB1bmQgcGxhcHBlcnQgdm9lbGxpZyBhdXNzZXIgQXRlbSBsb3MgOgonTGluZmxhcyBoYXQgZGllIGdyb3NzZW4gR2xhZGlhdG9yZW4genVtIEthbXBmIGhlcmF1c2dlZm9yZGVydCEgR2VodApzY2huZWxsIGluIGRpZSBXdWVzdGUgenVyIGdyb3NzZW4gS2FtcGZhcmVuYSB1bmQgbGFzc3QgRXVjaCBkaWVzZXMKU2NoYXVzcGllbCBuaWNodCBlbnRnZWhlbiEnCkRhbmFjaCBoYXN0ZXQgZXIgc2NobmVsbCB3ZWl0ZXIuCgpUYWluYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSZWJvb3QgKFZhbmlvbiwgMTUuIE9rdCAyMDAwLCAyMTowNDozNik6Cn4jISBybj1BbmF0b2wgcnQ9OTcxNjI3MDI1IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTcxNjIxNjU4CkVpbmVuIEFyYmVpdHNsb3NlbiBUaWFtYWsga2FubiBpY2ggbm9jaCBlcnRyYWdlbiwKYWJlciBlaW5lbiBnZWxhbmd3ZWlsdGVuLCBkYSB3aXJkIG1pciBiYW5nZS4KClYqIGR1Y2t0IHNpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBSZWJvb3QgKFNpbHZhbmEsIDE1LiBPa3QgMjAwMCwgMjM6MzY6NDkpOgp+IyEgcm49VmFuaW9uIHJ0PTk3MTYzNjY3NiByZz1zY2htYXJybgp+IyEgdGlkPTk3MTYyMTY1OApCZWkgYW5kZXJlbiBNYWdpZXIgd2FlcmUgbWlyIGFiZXIgZWhlciBCYW5nZSwgd2VubiBzaWUgTGFuZ2V3ZWlsZSBoYWJlbi4uLgoKICBTaWx2YW5hClRpYW1hayB3aXJkIG5pY2h0IGxhbmd3ZWlsaWcsIGRhZnVlciBrYW5uIGljaCB3b2hsIHNvcmdlbi4gfTstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2VubiBtYW4gbWFsIExQcyB2ZXJsaWVyZW4gd2lsbCAuLi4gKEdvbGFzLCAxNi4gT2t0IDIwMDAsIDExOjIxOjUwKToKRWluZSBEcmFjaGVuc2NoaWxka3JvZXRlLgogIC4uLi5ub3JtYWwvPz8/Li4uLi4uLi4uIERyYWNoZW5zY2hpbGQgOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9LYW1wZnNjaHdlcnQgRHUuLi4uLi4uLi4uLiA6IERyYWNoZW5zY2hpbGQgKioqKioqKiogLT4gdmVyZmVobHQKICAuLi4ubm9ybWFsL2hlaXNzZW0gRGFtcCBEcmFjaGVuc2NoaWxkIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSBzZWhyIGhhcnQKICAuLi4ubm9ybWFsL0thbXBmc2Nod2VydCBEdS4uLi4uLi4uLi4uIDogRHJhY2hlbnNjaGlsZCAqKioqKioqKiAtPiB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvaGVpc3NlbSBEYW1wIERyYWNoZW5zY2hpbGQgOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9oZWlzc2VtIERhbXAgRHJhY2hlbnNjaGlsZCA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gdmVyZmVobHQKICAuLi4ubm9ybWFsL0thbXBmc2Nod2VydCBEdS4uLi4uLi4uLi4uIDogRHJhY2hlbnNjaGlsZCAqKioqKioqKiAtPiB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvaGVpc3NlbSBEYW1wIERyYWNoZW5zY2hpbGQgOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9oZWlzc2VtIERhbXAgRHJhY2hlbnNjaGlsZCA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gdmVyZmVobHQKICAuLi4ubm9ybWFsL0thbXBmc2Nod2VydCBEdS4uLi4uLi4uLi4uIDogRHJhY2hlbnNjaGlsZCAqKioqKioqKiAtPiB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvaGVpc3NlbSBEYW1wIERyYWNoZW5zY2hpbGQgOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9oZWlzc2VtIERhbXAgRHJhY2hlbnNjaGlsZCA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gdmVyZmVobHQKICAuLi4ubm9ybWFsL0thbXBmc2Nod2VydCBEdS4uLi4uLi4uLi4uIDogRHJhY2hlbnNjaGlsZCAqKioqKioqKiAtPiB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvaGVpc3NlbSBEYW1wIERyYWNoZW5zY2hpbGQgOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9oZWlzc2VtIERhbXAgRHJhY2hlbnNjaGlsZCA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gZ2VrcmF0enQKICAuLi4ubm9ybWFsL0thbXBmc2Nod2VydCBEdS4uLi4uLi4uLi4uIDogRHJhY2hlbnNjaGlsZCAqKioqKioqKiAtPiB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvaGVpc3NlbSBEYW1wIERyYWNoZW5zY2hpbGQgOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIGdla3JhdHp0CiAgLi4uLm5vcm1hbC9oZWlzc2VtIERhbXAgRHJhY2hlbnNjaGlsZCA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gdmVyZmVobHQKICAuLi4ubm9ybWFsL0thbXBmc2Nod2VydCBEdS4uLi4uLi4uLi4uIDogRHJhY2hlbnNjaGlsZCAqKioqKioqKiAtPiB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvaGVpc3NlbSBEYW1wIERyYWNoZW5zY2hpbGQgOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9oZWlzc2VtIERhbXAgRHJhY2hlbnNjaGlsZCA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gdmVyZmVobHQKICAuLi4ubm9ybWFsL0thbXBmc2Nod2VydCBEdS4uLi4uLi4uLi4uIDogRHJhY2hlbnNjaGlsZCAqKioqKioqKiAtPiB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvaGVpc3NlbSBEYW1wIERyYWNoZW5zY2hpbGQgOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9oZWlzc2VtIERhbXAgRHJhY2hlbnNjaGlsZCA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gZ2V0cm9mZmVuCiAgLi4uLm5vcm1hbC9LYW1wZnNjaHdlcnQgRHUuLi4uLi4uLi4uLiA6IERyYWNoZW5zY2hpbGQgKioqKioqKiogLT4gdmVyZmVobHQKICAuLi4ubm9ybWFsL2hlaXNzZW0gRGFtcCBEcmFjaGVuc2NoaWxkIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvaGVpc3NlbSBEYW1wIERyYWNoZW5zY2hpbGQgOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9LYW1wZnNjaHdlcnQgRHUuLi4uLi4uLi4uLiA6IERyYWNoZW5zY2hpbGQgKioqKioqKiogLT4gdmVyZmVobHQKICAuLi4ubm9ybWFsL2hlaXNzZW0gRGFtcCBEcmFjaGVuc2NoaWxkIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvaGVpc3NlbSBEYW1wIERyYWNoZW5zY2hpbGQgOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIGhhcnQKICAuLi4ubm9ybWFsL0thbXBmc2Nod2VydCBEdS4uLi4uLi4uLi4uIDogRHJhY2hlbnNjaGlsZCAqKioqKioqKiAtPiB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvaGVpc3NlbSBEYW1wIERyYWNoZW5zY2hpbGQgOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9oZWlzc2VtIERhbXAgRHJhY2hlbnNjaGlsZCA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gdmVyZmVobHQKCgpnb2xhcyBncmluc2VuZCAuLC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3ZW5uIG1hbiBtYWwgTFBzIHZlcmxpZXJlbiB3aWxsIC4uLiAoU2luYSwgMTYuIE9rdCAyMDAwLCAxMToyMzowMik6Cn4jISBybj1Hb2xhcyBydD05NzE2ODgxMTAgcmc9c2NobWFycm4KfiMhIHRpZD05NzE2ODgxMTAKSWNoIHNhZ3MgamEgc2Nob24gc2VpdCBsYW5nZW06CkVudHdlZGVyIGRlbiBMZXJuZWZmZWt0IGFuIGRlciBkc2sgYWJ3ZXJ0ZW4sIG9kZXIgZGVyZW4gQXR0YWNrZW4gYXVmd2VydGVuLgpWaWVsbGVpY2h0IGdsYXVidHMgamEgamV0enQgZGVyIGVpbmUgb2RlciBhbmRlcmUgTWFnaWVyIGVuZGxpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHdlbm4gbWFuIG1hbCBMUHMgdmVybGllcmVuIHdpbGwgLi4uIChWYXJkaW9uLCAxNi4gT2t0IDIwMDAsIDExOjI3OjM1KToKfiMhIHJuPVNpbmEgcnQ9OTcxNjg4MTgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcxNjg4MTEwCk9kZXIgYWx0ZXJuYXRpdiBoYWx0IGRpZSBLYWVtcGZlciBhYndlcnRlbiA7KQoKVmFyZGlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJtYWdlZGRvbnMgbGV0enRlIFJ1aGVzdGFldHRlPyAoRGVlcGJsdWUsIDE2LiBPa3QgMjAwMCwgMTE6NTM6MzUpOgpFaW4gZW50c2V0emxpY2hlciBTY2hyZWkgaGFsbHQgdm9tIEZyaWVkaG9mIGhlcnVlYmVyLgpBcm1hZ2VkZG9uIHJ1ZnQ6IEluIDggU3R1bmRlbiwgMTAgTWludXRlbiB1bmQgMCBTZWt1bmRlbiB3ZXJkZSBpY2ggZGllIFdlbHQKQXJtYWdlZGRvbiBydWZ0OiB6ZXJzdG9lcmVuIHVuZCBuZXUgZXJzY2hhZmZlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwcmFjaHByb2JsZW1lIChSZWpuYSwgMTYuIE9rdCAyMDAwLCAxNTozMTo0OSk6CkFub3JpcyBzYWd0OiB3ZXIgbiB0aXAgd28gcyBub2NoIGVyc3RraWxscyBncmFkIHNvIGdpYnQ/IDopCkFub3JpcyB2ZXJzdWNodCB2ZXJnZWJlbnMgenUgc3ByZWNoZW4uCgoqZ3JpbnMqIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpwcm9tcHRlIGJlZGllbnVuZyAoVGhhbm9zLCAxNi4gT2t0IDIwMDAsIDE1OjQyOjM4KToKCkRlciBLb21tYW5kb2Z1ZWhyZXIgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KTW9lcmRlcjpHZWlzdCBlaW5lcyBLb21tYW5kb2Z1ZWhyZXJzIEljaCBmb3JkZXJlIFJldmFuY2hlLCBUaGFub3MhCm9tYW1vcmkKaGF5YWkKc3BvdHRlIG5hIGRhbm4ga29tbSBiYWxkIHdpZWRlcgpNb2VyZGVyOlRoYW5vcyBuYSBkYW5uIGtvbW0gYmFsZCB3aWVkZXIKRWluIEtvbW1hbmRvZnVlaHJlciBrb21tdCBhbi4KCmhuZ2wsIG11ZXNzZW4gZGllIGFsbGVzIHNvIHdvZXJ0bGljaCBuZWhtZW4gPwoKVGhhbm9zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcmJlaXQ/IChBbm9yaXMsIDE2LiBPa3QgMjAwMCwgMTY6NTM6MTgpOgoKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IDUgbWludXRlbiBhcmJlaXQgYW0gdGFnIGJyYXVjaHQgZGVyIG1lbnNjaCA7KQpHYWxicmFpdGggdGVpbHQgRGlyIG1pdDoga3JpZWcgbWlyIGJsb3NzIGtlaW4gSGVyemluZmFya3QhIDopKQpNVFYgdGVpbHQgRGlyIG1pdDogYXJzY2ggOikKCkFiIDEuIE5vdmVtYmVyIHdlcmRlIGljaCBldi4gd2llZGVyIG1pdCBBcmJlaXRlbiBiZWdpbm5lbiA7KQoKLSBBbm9yaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoRGVlcGJsdWUsIDE2LiBPa3QgMjAwMCwgMTc6MzM6MDApOgpbQWJlbnRldWVyOlBodW5dIGFyZ2wqKiogd2llIGlzdCBkaWUgc3ludGF4IHVtIHNpY2ggYXVmIGRlbiBib2RlbiB6dSBsZWdlbj8/CltBYmVudGV1ZXI6UGh1bl0gaWNoIHdpbGwgbmljaHRzICphYipsZWdlbi4uLgpbQWJlbnRldWVyOkNyb2Z0XSBkdWNrZW4/IGJ1ZWNrZW4/IHNpY2ggenUgYm9kZW4gd2VyZmVuPwpbQWJlbnRldWVyOkNyb2Z0XSBoaW5sZWdlbj8KW0FiZW50ZXVlcjpQaG9ib3NdIGphLCBjaG1laXNzdCBpaG4genUgcG9kZW4sIGRlbiBjaGVsbSEKW0FiZW50ZXVlcjpQaHVuXSB3YXIgaW0gZmFsc2NoZW4gcmF1bS4uLiBhcmdsCndlbmlnIHNwYWV0ZXI6CltUb2Q6TGFyc10gRWluZSBTYWV1cmVrdWdlbCBoYXQgZ2VyYWRlIFBodW4gdW1nZWJyYWNodC4KW1RvZDpFaW5lIFNhZXVyZWt1Z2VsXSBTY2hvbiBtYWwgdWViZXIgQXVzd2VpY2hlbiBuYWNoZ2VkYWNodD8KCldhciB3b2hsIGRvY2ggbml4IG1pdCBkZW0gUmF1bS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2lhbWFpbCBkZXIgU3Bhbm5lcj8/PyA6KSAoQmVsZ2FyaWFkLCAxNy4gT2t0IDIwMDAsIDE0OjI5OjM0KToKU2lhbWlsIHNhZ3Q6IEtyYWZ0IGJyYXVjaHQgbWFuIGhpZXIgZWlnZW50bGljaCBudXIgenVtIFNwYW5uZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBQYWRyZWljIDU1IC0+IDQ1IChBbmF0b2wsIDE3LiBPa3QgMjAwMCwgMTQ6MzQ6NDYpOgp+IyEgcm49SHVtbmkgcnQ9OTcxNzg2MDcwIHJnPWRpc2t1c3Npb24KfiMhIHRpZD05NzEzNDg5ODEKSWNoIGhvZmZlLCBpY2ggYmluIG5pY2h0IGRlciBFaW56aWdlLCBkZXIgYmVpbSBMZXNlbiBEZWluZXIgQXJ0aWtlbApyZWdlbG1hZXNzaWcgVHJhZW5lbiBpbiBkZW4gQXVnZW4gaGF0IC0gbmljaHQgd2lzc2VuZCwgb2IgZXMgVHJhZW5lbgpkZXIgaGFsdGxvc2VuIEJlbHVzdGlndW5nIG9kZXIgZGVyIFRyYXVlciBvYiBkZXIgbWFuZ2VsbmRlbiBXZWlzaGVpdApkZXMgZ2VuZWlndGVuIFZlcmZhc3NlcnMgc2luZC4KCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogUGFkcmVpYyA1NSAtPiA0NSAoSHVtbmksIDE3LiBPa3QgMjAwMCwgMTQ6MzY6NTQpOgp+IyEgcm49QW5hdG9sIHJ0PTk3MTc4NjA4NiByZz1zY2htYXJybgp+IyEgdGlkPTk3MTM0ODk4MQpXZW5pZ3N0ZW5zIHdlaXNzIGljaCBkYXMgYmVpIERpciwgQW5hdG9sLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFBhZHJlaWMgNTUgLT4gNDUgKEdsb2luc29uLCAxNy4gT2t0IDIwMDAsIDE0OjU4OjE1KToKfiMhIHJuPUh1bW5pIHJ0PTk3MTc4NjIxNCByZz1zY2htYXJybgp+IyEgdGlkPTk3MTM0ODk4MQpEZXIgVmVyZ2xlaWNoIGlzdCBwb2xpdGlzY2ggdmllbGxlaWNodCBuaWNodCBrb3JyZWt0IGdld2FlaGx0LiBTb25zdAppc3QgZGFyYW4gYWJlciBuaWNodHMgYXVzenVzZXR6ZW4uCgpHbG9pbihzb24pIGlzdCBuaWNodCBQQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTVMgU3RhVGkgMTguMTAuMjAwMCAoQW5hdG9sLCAxNy4gT2t0IDIwMDAsIDIxOjQ1OjU2KToKfiMhIHJuPU11cGZlbCBydD05NzE4MTE5MDYgcmc9dHJlZmZlbgp+IyEgdGlkPTk3MTc5NTM4MQpMYXNzJyBEaXIgZGFzIG1pdCBkZW4gZHJlaSBCIG5vY2htYWwgZXJrbGFlcmVuLCBNdXBmZWwgOykuCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1TIFN0YVRpIDE4LjEwLjIwMDAgKEFuYXRvbCwgMTcuIE9rdCAyMDAwLCAyMTo0NzowNSk6Cn4jISBybj1BbmF0b2wgcnQ9OTcxODExOTU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcxNzk1MzgxCkJpZW5lbiwgQmx1bWVuIHVuZCBkaWUgQlJBVk8uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplaW4gQklTQ0hFTiBnZWt1ZXJ6dCA7LSkpIChNb3Jnb3RoLCAxNy4gT2t0IDIwMDAsIDIyOjI1OjU1KToKRGVpbiBGcmV1bmQgUm9jaHVzIHRlaWx0IERpciBtaXQ6IC4uLiBoYWJlIG1hbCB3aWVkZXIgenV2aWVsCkRlaW4gRnJldW5kIFJvY2h1cyB0ZWlsdCBEaXIgbWl0OiBnZXNvZmZlbiA6KQoKTSogOy0pKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGVpbiBCSVNDSEVOIGdla3Vlcnp0IDstKSkgKFJvY2h1cywgMTcuIE9rdCAyMDAwLCAyMjoyNjozNSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTk3MTgxNDM1NSByZz1zY2htYXJybgp+IyEgdGlkPTk3MTgxNDM1NQpVTldFU0VOVExJQ0ggZ2VrdWVyenQgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZWluIEJJU0NIRU4gZ2VrdWVyenQgOy0pKSAoUGF0cnluLCAxNy4gT2t0IDIwMDAsIDIyOjI2OjQ3KToKfiMhIHJuPU1vcmdvdGggcnQ9OTcxODE0MzU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcxODE0MzU1CmljaCBnbGF1YiByb2NodXMgdmVyc3RlaHQgZGFydW50ZXIgd2FzIGFuZGVyZXMgYWxzIGR1Li4uZGVyIGhhdCBiZXN0aW1tdAp3aWVkZXIgbWFsIGJhdWNod2VoIHZvbiB6dSB2aWVsIGNvbGFjb25zdW0gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUgLi4uIChMaWFyYSwgMTcuIE9rdCAyMDAwLCAyMzowNDo1MCk6CgpbQW5mYWVuZ2VyOkJhbWJpXSBWRVJGTFVDSFRFUyBaTVVEIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZWluIEJJU0NIRU4gZ2VrdWVyenQgOy0pKSAoQXBvbGxvbmlhLCAxOC4gT2t0IDIwMDAsIDEwOjM3OjU1KToKfiMhIHJuPVJvY2h1cyBydD05NzE4MTQzOTUgcmc9c2NobWFycm4KfiMhIHRpZD05NzE4MTQzNTUKSHVjaCwgb2IgaWNoIGRhIGJlc3NlciBhdWYgbWVpbmVuIFBhcGkgYXVmcGFzc2VuIHNvbGx0ZT8/IFdlbmlnc3RlbnMgd2FyIGljaApkaWVzbWFsIG5pY2h0IHNjaHVsZCBkcmFuIDtvKQoKQXBvKgpncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZWluIEJJU0NIRU4gZ2VrdWVyenQgOy0pKSAoS2FyaXMsIDE4LiBPa3QgMjAwMCwgMTA6NDA6MTEpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTk3MTg1ODI3NSByZz1zY2htYXJybgp+IyEgdGlkPTk3MTgxNDM1NQpXaWUga29lbm50ZXN0IER1IGF1Y2gsIHdvIER1IERpY2ggZG9jaCBoaW50ZXIgVW5hKnMgVW5zY2h1bGQgdmVyc3RlY2tzdCA7KQoKR2VuZXJhZWxjaGVuIEthcmlzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2F0ZXMgUHVwbGljIExpY2Vuc2UgKEthcmlzLCAxOC4gT2t0IDIwMDAsIDEzOjUyOjA2KToKRnVlciBkaWUsIGRpZSdzIG5vY2ggbmljaHQga2VubmVuIDopKQpodHRwOi8vd3d3Lm1zbGludXgub3JnCgpLYXJpcywgZ3JpbnN0IGltbWVyIG5vY2ggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGVpbiBCSVNDSEVOIGdla3Vlcnp0IDstKSkgKFJvY2h1cywgMTguIE9rdCAyMDAwLCAxODo1NjowMik6Cn4jISBybj1BcG9sbG9uaWEgcnQ9OTcxODU4Mjc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcxODE0MzU1CkFsc28sIFRvZWNodGVyY2hlbiwgd2VubiBEVSBiZXNzZXIgYXVmIG1pY2ggYXVmZ2VwYXNzdCBoYWV0dGVzdCwKd2FlcmUgZGFzIFppdGF0IG5pY2h0IHNpbm5lbnRzdGVsbHQgOi0pCgogIFJvY2h1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIG1hbCBhbmRlcnMgKFRpYW1haywgMTguIE9rdCAyMDAwLCAyMDozNjo0Nyk6ClJpa3VzIHNhZ3Q6IHdvdywgZ2luZyBqYSBiaXNoZXIgZ3V0ClJpa3VzIGtsYXRzY2h0IGluIGRpZSBIYWVuZGUuCiUgQ29ubmVjdGlvbiB0byB0aSBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgotLS0tIE5vIHdvcmxkIC0tLS0KClRpYW1hay4gS2FubiBzaWNoIGVpbiBHcmluc2VuIG5pY2h0IHZlcmtuZWlmZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTSUUgV0FSUyEhISAoVHN1bmFtaSwgMTguIE9rdCAyMDAwLCAyMDo0NDo0NSk6CkxpYXJhICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCiUgQ29ubmVjdGlvbiB0byBQQSBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgotLS0tIE5vIHdvcmxkIC0tLS0KCkljaCB3dXNzdGUgZXMhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgbWFsIGFuZGVycyAoUmlrdXMsIDE4LiBPa3QgMjAwMCwgMjA6NTk6MTgpOgp+IyEgcm49VGlhbWFrIHJ0PTk3MTg5NDIwNyByZz1zY2htYXJybgp+IyEgdGlkPTk3MTg5NDIwNwpBbGxnZW1laW46VGlhbWFrIGlociB3dWVzc3RldCBkaWUgbmFlY2hzdGVuIFVwdGltZXMgZ2FyIG5pY2h0IHp1IHNjaGFldHplbiwKQWxsZ2VtZWluOlRpYW1hayB3ZW5uIGpldHp0IGFsbGVzIHp1IGdsYXR0IGdpbmdlLgpDb25uZWN0ZWQgdG8gaG9zdCBtZy5tdWQuZGUKSFRUUC8xLjAgMzAyIEZvdW5kCkxvY2F0aW9uOiBodHRwOi8vbWcubXVkLmRlLwoKClJpa3VzIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ3Jhc2gtU2VyaWUgKEdsb2luc29uLCAxOC4gT2t0IDIwMDAsIDIxOjU2OjQzKToKfiMhIHJuPVRpYW1hayBydD05NzE4OTgzNTQgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTk3MTg5ODM1NApKYW1tZXJqYW1tZXJqYW1tZXJqYW1tZXJqYW1tZXJqYW1tZXJqYW1tZXJqYW1tZXJqYW1tZXJqYW1tZXJqYW1tZXJqYW1tZXIhCgpCZXZvciBub2NoIGVpbiBTcGllbGVyIHp1ZXJzdCBrb21tdCA6PSkKR2xvaW5zb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZnJhZ2UgKEdyaW1tYm9ybiwgMTguIE9rdCAyMDAwLCAyMzo1OTozNik6Cn4jISBybj1MdXB1cyBydD05NzE5MDIwMTEgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9OTcxODg5MTU5CktsYXIgZ2VodCBkYXMgYXVjaCBtaXQgTlQsIHZlcm11dGxpY2guIEFiZXIgd2VyIHNpY2ggc2VsYnN0IGlucyBCZWluIHNjaGllc3N0CmRhcmYgc2ljaCB1ZWJlciBTY2htZXJ6ZW4gbmljaHQgd3VuZGVybi4KCkRhcyBlcmlubmVydCBtaWNoIGFuIGRlbiBLdXJzICJCZXdlcmJ1bmdlbiBpbSBJbnRlcm5ldCIsIHdvIGljaCB6d2VpIFRhZ2Ugd2FzCnVlYmVyIGRhcyBJbnRlcm5ldCBlcnphZWhsZW4gc29sbHRlIC0gZ3V0IGJlemFobHQsIGFiZXIgendlaSBUYWdlIGxhbmcgenUKZXJ6YWVobGVuIGF1ZiB3ZWxjaGUgS25vZXBmY2hlbiBtYW4gYmVpIE5ldHNjYXBlIGRydWVja2VuIG11c3M/IE5hamEsCmplZGVuZmFsbHMga2FtIGljaCBhbiB1bmQgZGVyIE5ULXNlcnZlciAoZ2xlaWNoemVpdGlnIERvemVudGVucmVjaG5lcikgd29sbHRlCnVtcyBWZXJlY2tlbiBkaWUgTGVpdHVuZyBuYWNoIGRyYXVzc2VuIG5pY2h0IG1pdCBkZW4gU2NodWVsZXJyZWNobmVybiB0ZWlsZW4uCkljaCB6dWNrZSBkaWUgU2NodWx0ZXJuIHVuZCBzYWdlICJpY2gga2FubiBzb3dhcyBtaXQgTGludXggbWFjaGVuLCBoYWIgYWJlcgp2b24gTlQgZGEga2VpbmVuIFNjaGltbWVyIi4gSW4gZGVyIE5hY2h0IHdhciBlaW4gVGVjaG5pa2VyIGRhLCBkaWUgbGV0enRlbgpmaWxlcyB3YXJlbiB2b24gaGFsYiBkcmVpIGluIGRlciBOYWNodC4gTnVyIGZ1bmt0aW9uaWVydCBoYXQgZXMgbmljaHQuLi4gRGFzcwpkYW5uIGplbWFuZCBzYWd0ZSBlciB3dWVyZGUgZWluZW4gRXJzYXR6cmVjaG5lciBsaWVmZXJuIGJlaSBkZW0gZGFzIGRhbm4Ka29ycmVrdCBpbnN0YWxsaWVydCBpc3QsIHVuZCBkYXp1IG5pY2h0IGluIGRlciBMYWdlIHdhciwgaGF0IGRpZSBTaXR1YXRpb24KbmljaHQgd2VzZW50bGljaCB2ZXJiZXNzZXJ0LiAKS2xhciBrYW5uIG1hbiBzb3dhcyBtaXQgTlQgbWFjaGVuLCBoYWIgaWNoIGF1Y2ggbWFsIGdlbGVzZW4uIE51ciBnZXNlaGVuIGhhYgppY2hzIG5vY2ggbmljaHQuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCwgdmVybXV0bGljaCBlaW5mYWNoIG5pY2h0IGR1bW0gZ2VudWcgdW0gbWl0IE5UCmtsYXJ6dWtvbW1lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZ2llci4uLiA7KSAoQW5hdG9sLCAxOS4gT2t0IDIwMDAsIDAwOjA5OjU1KToKPj4gRXMgZ2VodCB0YXRzYWVjaGxpY2ggYXVmd2FlcnRzISBNaXN0ISBXbyBpc3QgZGVyIEJvZGVuPyAtIEhJTEZFIQo+Pgo+PiBEdSBzZWdlbHN0IGluIGhvaGVtIEJvZ2VuIGR1cmNoIGRpZSBMdWZ0LiBWZXJkYW1tdCEgV2VubiBkdSBudXIgZmxpZWdlbgo+PiBrb2VubnRlc3QhCj4+Cj4+IEplbWFuZCB0ZWlsdCBEaXIgbWl0OiBHdXRlbiBGbHVnIDstKSBbMDA6MDldCgoqZmx1Y2gqIDopCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZlcndlY2hzbHVuZyAoU2l0bywgMTkuIE9rdCAyMDAwLCAxMjo0NjozMCk6Cj4gTXVyZ2VsbWFubiBmcmFndCBEaWNoOiBOYWNoIGdpbGRlPwpNdXJnZWxtYW5uIGZyYWd0IERpY2g6IE5hY2ggZ2lsZGU/CidoaSwgYmlzdCB3b2hsIG5ldSBoaWVyIDo6KSkKRHUgc2Fnc3Q6IGhpLCBiaXN0IHdvaGwgbmV1IGhpZXIgOjopKQo+ICdobW0gaWNoIGJpbiBrZWluIE5QQwpEdSBzYWdzdDogaG1tIGljaCBiaW4ga2VpbiBOUEMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCkhtbSBpY2ggc29sbHRlIHdvaGwgbmljaHQgenVsYW5nZSBoZXJ1bWlkZWxuID1eX149CgpzaXRvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmVpbmlna2VpdD8gKExhbmZlYXIsIDE5LiBPa3QgMjAwMCwgMTk6MjU6MjkpOgo+IER1IHN0ZWhzdCBtaXR0ZW4gaW0gSG9iYml0ZG9yZi4gVW0gRGljaCBoZXJ1bSBzaWVoc3QgRHUgemFobHJlaWNoZSBIdWVnZWwuCkltClN1ZWR3ZXN0ZW4ga2FubnN0IER1IHNjaG9uIGRlbiBNYXJrdHBsYXR6IGVya2VubmVuLiBEZXIgUGZhZCBSaWNodHVuZyBPc3RlbgpmdWVocnQgYXVzIGRlbSBEb3JmIGhpbmF1cy4gCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZHdlc3RlbiB1bmQgbm9yZG9zdGVuLgpFaW4gSG9iYml0d2FlY2h0ZXIuCkVpbiBIb2JiaXR3YWVjaHRlci4KPiBFaW4gSG9iYml0d2FlY2h0ZXIgdmVyc3VjaHQgZWluZW4gSG9iYml0d2FlY2h0ZXIgbWl0IGVpbmVtIEhvbHpzY2hpbGQgenUKc3Rvc3NlbiwgZG9jaCBlciBmdWNodGVsdCBkYW1pdCBudXIgd2lsZCBpbiBkZXIgTHVmdCBoZXJ1bS4KRWluIEhvYmJpdHdhZWNodGVyIHBhcmllcnQgZGllIG5hZWNoc3RlbiBBbmdyaWZmZSBtaXQgZWluZW0gS3VyenNjaHdlcnQuCkVpbiBIb2JiaXR3YWVjaHRlciBwYXJpZXJ0IGRpZSBuYWVjaHN0ZW4gQW5ncmlmZmUgbWl0IGVpbmVtIEhvbHpzY2hpbGQuCkRlciBIb2JiaXR3YWVjaHRlciB0cmlmZnQgZGVuIEhvYmJpdHdhZWNodGVyLgpEZXIgSG9iYml0d2FlY2h0ZXIgdHJpZmZ0IGRlbiBIb2JiaXR3YWVjaHRlciBoYXJ0LgpEZXIgSG9iYml0d2FlY2h0ZXIgdmVyZmVobHQgZGVuIEhvYmJpdHdhZWNodGVyLgpEZXIgSG9iYml0d2FlY2h0ZXIgdHJpZmZ0IGRlbiBIb2JiaXR3YWVjaHRlciBoYXJ0LgpFaW5lbSBIb2JiaXR3YWVjaHRlciBtaXNzbGluZ3QgZGllIEZpbnRlIGdlZ2VuIGVpbmVuIEhvYmJpdHdhZWNodGVyIHZvZWxsaWcuCgpJc3QgZGVuZW4gamV0enQgbGFuZ3dlaWxpZywgb2RlciBzdHJlaXRlbiBkaWUgc2ljaCB1bSBpaHJlbiBTb2xkPyA6KQoKTGFuZmVhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJ0aWtlbD8gKEFub3JpcywgMTkuIE9rdCAyMDAwLCAxOTo0OTowNyk6ClVlYmVyZ2VoZSBBcnRpa2VsIDMxIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDMyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDMzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM1IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM4IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM5IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQxIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQ0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQ1IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQ2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQ3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuCgotIEFub3JpcyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFydGlrZWw/IChaYXBob2IsIDE5LiBPa3QgMjAwMCwgMTk6NTE6NDgpOgp+IyEgcm49QW5vcmlzIHJ0PTk3MTk3Nzc0NyByZz1zY2htYXJybgp+IyEgdGlkPTk3MTk3Nzc0NwpEYSBmZWhsdCBub2NoIGVpbiAiTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4iIDopCgpaYXBob2IgaXN0IHNjaG9uIHp1IGxhbmdlIGluIGRpZXNlbSBNdWQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXJ0aWtlbD8gKEFub3JpcywgMTkuIE9rdCAyMDAwLCAxOTo1MjoyOCk6Cn4jISBybj1aYXBob2IgcnQ9OTcxOTc3OTA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcxOTc3NzQ3CkRhcyAiTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4iIGlzdCBlcnN0IGpldHp0IGdyYWQgZWJlbiBiZWkgbWlyIGVyc2NoaWVuZW4Kc29ycnkgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdlcmFkZSBpbm5lciBuZyBnZWZ1bmRlbiAuLi4gOi0pIChKZW5hbmRyYSwgMTkuIE9rdCAyMDAwLCAyMzozMToxNCk6CkZ1ZXIgbWljaCBpc3QgZGVyIHZpIHdpZSBaZW4uIERlbiB2aSB6dSB2ZXJ3ZW5kZW4gaXN0IHdpZSBaZW4KcHJha3RpemllcmVuLiBKZWRlciBCZWZlaGwgaXN0IGVpbiBLb2FuLiBUaWVmZ3J1ZW5kaWcgZnVlciBkZW4KQW53ZW5kZXIsIHVudmVyc3RhZW5kbGljaCBmdWVyIGRlbiBVbmVpbmdld2VpaHRlbi4gSmVkZXNtYWwsCndlbm4gRHUgaWhuIHZlcndlbmRlc3QsIGVya2VubnN0IER1IGRpZSBXYXJoZWl0LgoKLSBTYXRpc2ggUmVkZHkKCkplbmFuZHJhLCBuaWNrZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG1tIChCZWxnYXJpYWQsIDIwLiBPa3QgMjAwMCwgMDA6NTE6NTIpOgo/UkFBQUFBQUFBQUFBQUFBQUFBQUFBQVdVTU1NTU1NTU1NTU1NTU1NTU1NTSEKSmVtYW5kIGhhdCBkZW4gV29scGVydGluZ2VyY2x1YiBpbiBkaWUgTHVmdCBnZXNwcmVuZ3QhCkplbWFuZCBzdW1tdDogUmVzcGVjdCB5b3Vyc2VsZi4KCkFoYSBhbHNvIG5pY2h0IG51ciBicnV0YWwsIHNvbmRlcm4gYXVjaCBub2NoIGdlc2NobWFja2xvcz8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvbGxlciBFcmZvbGcgKFRhaW5hLCAyMC4gT2t0IDIwMDAsIDAzOjA0OjI4KToKR3J1bXBmICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpHcnVtcGYgZ2VodCBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KRWluIEJlaWZhbGxzc3R1cm0gYnJhbmRldCBpbSBEaWFtb25kcGFyayBhdWYuIAoKZGFtb25pc2NoIGdyaW5zZW5kClRhaW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbWFpbHMuLi4gKFpvcnlhLCAyMC4gT2t0IDIwMDAsIDEyOjM5OjExKToKR3JhZGUgaW4gZWluZXIgRW1haWwgYmVrb21tZW4uLi4KCklzIHRoZXJlIGFueSBhY3R1YWwgaGlzdG9yaWNhbCBiYXNpcyBmb3IgUHJpbWEgTm9jdGEgKD9zcCAtIG15IExhdGluIGlzCnRlcnJpYmxlKSwgdGhlIGN1c3RvbSBvZiB0aGUgbGFuZGxvcmQvbGllZ2UgbG9yZCBzbGVlcGluZyB3aXRoIGhpcyB0ZW5hbnQncwpicmlkZSBiZWZvcmUgdGhlIHdlZGRpbmc/ICBUaGUgb25seSBzb3VyY2UgSSBjYW4gdGhpbmsgb2YgZm9yIGl0IGlzIEZpZ2FybywKYW5kIEkgaGF2ZSBubyBpZGVhIGhvdyBzYXRpcmljYWwvcmVhbGlzdGljIGl0IGlzLgoKSXQgY2FtZSB1cCBpbiBhbiBMUlAgZ2FtZS4gIERvbid0IGFzayBmb3IgdGhlIGRldGFpbHMuLi4KCkFlaG0uLi4gQWxzbywgc28gbGFuZ3NhbSBtYWNoIGljaCBtaXIgd2lya2xpY2ggU29yZ2VuIHVtIG1laW5lCkxpZmUtUm9sbGVuc3BpZWxlbmRlbiBGcmV1bmRlLi4uIDstKQoKWm9yeWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhpaGloIChUaGFub3MsIDIwLiBPa3QgMjAwMCwgMTQ6NDc6NDApOgoKRGVyIFNjaGFtYW5lIGtpdHplbHQgRGljaCBhbSBCYXVjaC4KRHUga2l0emVsc3QgZGVuIFNjaGFtYW5lbiBhbSBCYXVjaC4KCktpdHplbHN0dW5kZSBpbiBkZXIgU1NQCgpUaGFub3MsIHNlaHIga2l0emxpZyAqc2V1ZnoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbGtvaG9sIChLbnVkc3NvbiwgMjAuIE9rdCAyMDAwLCAxNjowMTo1NCk6CltBYmVudGV1ZXI6Q3J1Y2Fdb2tvayBpaHIgaGFidCBhbGxlIGdld29ubmVuLCBzZWlkIGlociBqZXR6dCB6dWZyaWVkZW4gPz8KW0FiZW50ZXVlcjpDcnVjYV0gbWVpbmUgbW9yYWwgaXN0IHp1bmljaHRlIHVuZCBpY2ggd2VyZGUgbWVpbiB3b2NoZW5lbmRlIGRhbWl0CnZlcmJyaW5nZW4sIHRyb3N0IGltIGFsa29ob2wgenUgc3VjaGVuClBpZ2Egc2FndDo8SGljayE+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRW1haWxzLi4uIChZZW5kaSwgMjAuIE9rdCAyMDAwLCAxNzoxOTowMyk6Cn4jISBybj1ab3J5YSBydD05NzIwMzgzNTEgcmc9c2NobWFycm4KfiMhIHRpZD05NzIwMzgzNTEKSSByZWFkIHNvbWV3aGVyZSB0aGF0IHRoZXJlIHdhcyBubyBoaXN0b3JpY2FsIHByZWNlZGVudCB3aGF0c29ldmVyIGZvciB0aGlzCnBoZW5vbWVub24uIEFwcGFyZW50bHksICJpdXMgcHJpbWFlIG5vY3RpcyIgd2FzIGludmVudGVkIGR1cmluZyB0aGUgQWdlIG9mCkVubGlnaHRlbm1lbnQgdG8gbWFrZSB0aGUgRGFyayBBZ2VzIGxvb2sgZGFya2VyIGluIGNvbnRyYXN0Li4uCmJ1dCBkb24ndCBhc2sgbWUgZm9yIGRldGFpbHMuCgpZZW5kaSwKICAgICAgTWluZGxlc3MgQ29sbGVjdG9yIG9mIEFzc29ydGVkIFRyaXZpYSAoTS1DQVQpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2Vpc3Rlci4uLiAoTWFhcmcsIDIwLiBPa3QgMjAwMCwgMjM6NTM6NDcpOgpEZXIgR2Vpc3Qgdm9uIEZvb2JhciBsYWVzc3QgZWluZW4gZmFocmVuLiBNYW4gcmllY2h0IGFiZXIgbml4LgoKaS4gQS4gTWFhcmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogUGFkcmVpYyA1NSAtPiA0NSAoQW5hdG9sLCAyMS4gT2t0IDIwMDAsIDE0OjM0OjU1KToKfiMhIHJuPUFyayBydD05NzIxMzE1Mzkgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTk3MTM0ODk4MQpXZW5uIER1IGVpbmVuIEFydGlrZWwgdWViZXIgZXR3YXMgc2NocmVpYnN0LCBkYXMgUGFkcmVpYyBiZXRyaWZmdCwgCnNvbGx0ZXN0IER1IG5pY2h0IHZlcmdlc3NlbiwgenV2b3IgcGFkcmVpYy50ZWlsLCAudGVpbGUsIC5lcnphZWhsIHVzdy4KenUgaWdub3JpZXJlbi4gT2RlciBkaWNoIG5hY2ggVmVyb2VmZmVudGxpY2h1bmcgc29mb3J0IGF1c2xvZ2dlbi4KCkFuYXRvbCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTUctR2VidXJ0c3RhZ3NwYXJ0eSAoQW5hdG9sLCAyMS4gT2t0IDIwMDAsIDE0OjQwOjAzKToKfiMhIHJuPUFyayBydD05NzIxMzE5NTcgcmc9cGFydHkKfiMhIHRpZD05NzE5NTQ3OTQKRGllIDEwODkgQmllciBrYW5uc3QgRHUgYXVjaCBiZXNzZXIgdmVydGVpbGVuLCBqYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE1HLUdlYnVydHN0YWdzcGFydHkgKEFyaywgMjEuIE9rdCAyMDAwLCAxNDo0MDo1OSk6Cn4jISBybj1BbmF0b2wgcnQ9OTcyMTMyMDAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcxOTU0Nzk0Ck9mZmVuYmFyIHNjaHJlaWJlIGljaCBoZXV0ZSBudXIgd2lsbGt1ZXJsaWNoIHVuZCBmcmVpIGludGVycHJldGllcmJhcmUgQXJ0aWtlbAoqc2V1ZnoqCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW5jdXQgKEhlcm9tY2ZseSwgMjIuIE9rdCAyMDAwLCAwMzoyODowNyk6ClRydmVzOkhlcm9NY0ZseSBzaW5naG9seiB6dSB2ZXJzY2hlbmtlbgpmaW5nZXIgYXJhdGgKQXJhdGggaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IEZ1cnR3YW5nZW4gKHVlYmVyIFN0dXR0Z2FydCkuClBhc3NpdiBzZWl0OiAwMDo0MDo1MgpFaW5nZWxvZ2d0IHNlaXQ6IFNhbSwgMjEuIE9rdCAyMDAwLCAyMDo0OTowNQpWb2xsZXIgTmFtZTogWmFsa2gnQmF0YXIgQXJhdGggdHJhdWVydCB1bSBkZW4gU29tbWVyClJhc3NlOiBFbGYsICBHaWxkZTogS2FlbXBmZXIsICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKQWx0ZXI6IDEzMmQgMDI6MzU6MDQsICAgU3BpZWxlcmxldmVsOiA2MCAoU2VoZXIpLCAgIEdpbGRlbmxldmVsOiAyMwpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiB2b3IgZGVtIDEwLiBOb3YgMTk5NQp6LlouIGFid2VzZW5kLCBHcnVuZCAgOiBmdXR0ZXJuCkJpc2hlciBiZXJlaXRzIDExMSBtYWwgZ2VzdG9yYmVuClByb2pla3Q6IGhhbSB3YSBuaWNoIDstKQpQbGFuOgpoYW0gd2EgYXVjaCBuaWNoIDstKQpUcnZlczpBcmF0aCBoaWVyCm1hbiBrb2VubnRlIG1laW5lbiBlciBoYWV0dGUgZHJhdWYgZ2V3YXJ0ZXQgOikKKG1hbiBiZWFjaHRlIGRpZSBpZGxldGltZSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1HLXN1ZWNodGlnIChLbnVkc3NvbiwgMjIuIE9rdCAyMDAwLCAxODoyMDo0NSk6CkFtIGhldXRpZ2VuIFRhZyBzY2hyaWViIG1pciBHcm9zY2ggZm9sZ2VuZGVzIHVlYmVyIElDUQoKc2FnZSAgamEgZGFzIHRlbGVmb24gd2FyIGFiZXIgYmVzZXR6dCBkYSBzaWUgaW0gaW50ZXJuZXQgd2FyZW4KCktudWRzc2lvbiBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1HLXN1ZWNodGlnIChWYW5pb24sIDIyLiBPa3QgMjAwMCwgMTg6NTU6MzQpOgp+IyEgcm49S251ZHNzb24gcnQ9OTcyMjMxNjQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcyMjMxNjQ1ClZpZWxsZWljaHQgc29sbHRldCBpaHIgdm9uIHNhZy9zYWdlIGF1ZiAnIHVtc3RlaWdlbi4KCidqYSBkYXMgdGVsZWZvbiB3YXIgYWJlciBiZXNldHp0IGRhIHNpZSBpbSBpbnRlcm5ldCB3YXJlbgpmYWVsbHQgbmljaCBzbyBzZWhyIGF1ZiAqZyoKClYqLCBuaWNodCBzdWVjaHRpZyAtIGplZGVuZmFsbHMgbmljaHQgbWVociBzbyBvZmZlbnNpY2h0bGljaCAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZvcnR1bmUgb2Ygb2xkLi4uIChBbmF0b2wsIDIzLiBPa3QgMjAwMCwgMDI6Mjk6MTApOgpUaGUgRmlyc3QgUnVsZSBvZiBQcm9ncmFtIE9wdGltaXphdGlvbjoKICAgICAgICBEb24ndCBkbyBpdC4KClRoZSBTZWNvbmQgUnVsZSBvZiBQcm9ncmFtIE9wdGltaXphdGlvbiAoZm9yIGV4cGVydHMgb25seSEpOgogICAgICAgIERvbid0IGRvIGl0IHlldC4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbLU1KXQoKKmcqIFRpYW1haz8gOykKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGltIFZsYW5kLi4uIChGb29iYXIsIDIzLiBPa3QgMjAwMCwgMDM6NDU6NTgpOgo+IGZuIGFsY2hlbWlzdCBrYXVmYmFyZSBrb21wb25lbnRlbgpEZXIgT3JrIHNhZ3Q6CkR1IHNpZWhzdCBlaW5lbiBGZWhsZXIgaW0gUmF1bS1aZWl0LUdlZnVlZ2UuCgpXb2hlciB3ZWlzcyBlciBkYXM/IDtvKQoKaS4gQS4gRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqbGFjaCogKFVuYXNhaSwgMjMuIE9rdCAyMDAwLCAxNDozMjo0NCk6Cgpzb3NvIDopCkhpZ2h0IHRlaWx0IERpciBtaXQ6IHVuZCBkYXMgdmllaCBoZWlzdCBibGFyb2cgbmljaCBibGFyb2cgLG8pIAoKKmcqIG5hIGRhbm4gZ2VoIGNpaCBkZW4gZXR6IG1hbCBoYXVlbiA6KQoKVW5hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpsYWNoKiAoSGlnaHQsIDIzLiBPa3QgMjAwMCwgMTU6MDA6MjIpOgp+IyEgcm49VW5hc2FpIHJ0PTk3MjMwNDM2NCByZz1zY2htYXJybgp+IyEgdGlkPTk3MjMwNDM2NAoqZyogc29sbCBub2NobWFsIGVpbmVyIGJlaGF1cHRlbiBkYXMgaWNoIG5ldCBrb25zZXF1ZW50IGluIG1laW5lbiB2ZXJ0aXBzZXJuCmJpbiAqenVuZ2VyYXVzc3RyZWNrKgoKaGlnaHQgaG9mZmVuZCBkYXMgd2VyIG5lbiBibGFyb2cgcHJvZ3QgLG8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqZyogc292aWVsIGRhenUgKEhpZ2h0LCAyMy4gT2t0IDIwMDAsIDE1OjE4OjM4KToKRGVlcEJsdWUgdGVpbHQgRGlyIG1pdDogbmVuIEJsYXJvZyBicmF1Y2h0IGtlaW5lciBQcm9nZ2VuLCBkZW4gZ2lidHMgc2Nob24uCkRlZXBCbHVlIHRlaWx0IERpciBtaXQ6IGhlaXNzdCBBbmF0b2wKCmhtIGlzIG9raSAuLi4gYWJiYSBkZW4gZGFyZiBpY2ggamEgbmV0IGtsb3BwZW4gLG8pIAoKaHVpZ2h0IGdyaW5zZW5zCmFyZ3Mgbml4IG1pdCB0aXBwZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogKmxhY2gqIChBcG9sbG9uaWEsIDIzLiBPa3QgMjAwMCwgMTY6MzM6MDApOgp+IyEgcm49SGlnaHQgcnQ9OTcyMzA2MDIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcyMzA0MzY0Ck5vdGllcnQgOm8pCgpBcG8qIChncmluc2VuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBncmFtbWF0aWsgOikgKEFtYXJ5bGxpcywgMjMuIE9rdCAyMDAwLCAxODoxNDoyMyk6Cn4jISBybj1PYmkgcnQ9OTcyMzE3NTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcyMzE3NTg1CmVzIGhlaXNzdCBhdWNoICJoZWlsaWdlbiIgU2NoaWxkIHVuZCBuaWNodCAiaGVpbGdlbiIgU2NoaWxkLCBEdSBMZWdvc3RlaW5pa2VyCjotKQoKRmVlY2hlbiBBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpncmFtbWF0aWsgOikgKE9iaSwgMjMuIE9rdCAyMDAwLCAxODoxNTozNyk6Cm5pbW0gaGVpbGlnZW4gc2NoaWxkIGF1cyBzY2hyYW5rCj4gV0FTIHdpbGxzdCBEdSBuZWhtZW4/Cm5pbW0gaGVpbGlnZXIgc2NoaWxkIGF1cyBzY2hyYW5rCj4gRHUgbmltbXN0IGRlbiBoZWlsaWdlbiBTY2hpbGQuCgpNYW5jaG1hbCBrb21tIGljaCBtaXIgdmVyYXJzY2h0IHZvciA6LSkKT0JJCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZ3JhbW1hdGlrIDopIChHbG9pbnNvbiwgMjMuIE9rdCAyMDAwLCAxOTo0MzoxOCk6Cn4jISBybj1PYmkgcnQ9OTcyMzE3NzM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcyMzE3NzM3CkR1IGxlZ3N0IGRhIGRlbiBGaW5nZXIgYXVmIGVpbmVuIHd1bmRlbiBQdW5rdC4gQWRqZWt0aXZlIHdlcmRlbiBuaWNodCBuYWNoCk51dHp1bmcgZGVrbGluaWVydCwgdW5kIHZpZWxlIHZlcmdlc3NlbiBkaWUgdmVyc2NoaWVkZW5lbiBGYWVsbGUgenUKYmVydWVja3NpY2h0aWdlbi4gTWUgdG9vLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW0gS2FtcGYgLi4uIChEYXNoZWwsIDIzLiBPa3QgMjAwMCwgMjE6MTE6NDApOgouLi4gdW5kIHp3YXIgbWl0IGVpbmVyIExlaWNoZSwgZGllIGR1cmNoIGVpbiBtaXNzZ2x1ZWNrdGVzIEJlZ3JhYmVuIGVyd2FjaHRlCi4uLgoKZXJsb2VzZSBsZWljaGUKZHVua2VsaGVpdCB0cmlmZnN0IGRpZSBMZWljaGUgaGFydC4KRGllIExlaWNoZSB2ZXJmZWhsdCBEaWNoLgpFaW5lIExlaWNoZSBpc3QgYWJlciBrZWluIERhZW1vbiB1bmQga2VpbiB1bnRvdGVzIFdlc2VuLgoKRGFzaGVsIHd1bmRlcnQgc2ljaCBudXIgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgOykgKEFuYXRvbCwgMjMuIE9rdCAyMDAwLCAyMToyNjo0Mik6Cls8TWFzdGVSPjpFaW4gVGlzY2ggbGFlc3N0IGRpZSBFYmVuZSAnTWFleGNoZW4nIGVudHN0ZWhlbi5dCiUgQ29ubmVjdGlvbiB0byBtZ2EgY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KLS0tLSBObyB3b3JsZCAtLS0tCgpLZWluIEtvbW1lbnRhciA6KQpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGdyYW1tYXRpayA6KSAoQmFtYmksIDI0LiBPa3QgMjAwMCwgMDk6MTM6MjEpOgp+IyEgcm49R2xvaW5zb24gcnQ9OTcyMzIyOTk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcyMzE3NzM3Cm1hbiBQX0FESkVDVElWRVMKQmFtYmkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBncmFtbWF0aWsgOikgKFBhcmFjZWxzdXMsIDI0LiBPa3QgMjAwMCwgMTM6MDk6MjYpOgp+IyEgcm49QmFtYmkgcnQ9OTcyMzcxNjAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcyMzE3NzM3Ck5laW4sICJtYW4gQWRkQWRqZWN0aXZlIgoKUGFyYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGdyYW1tYXRpayA6KSAoR2xvaW5zb24sIDI0LiBPa3QgMjAwMCwgMTM6Mjg6NTEpOgp+IyEgcm49UGFyYWNlbHN1cyBydD05NzIzODU3NjYgcmc9c2NobWFycm4KfiMhIHRpZD05NzIzMTc3MzcKUHJpbWEuIE1laW5lIEJlbWVya3VuZyBzdGVodCBkcmluIGluIGRlciBNYW5wYWdlIDopCkZheml0OiBPYmkgZGFyZiBkZW4gSGVyc3RlbGxlciBkZXMgaGVpbGlnZW4gU2NoaWxkIGF1Y2ggbm9jaG1hbCBkcmF1ZgpoaW53ZWlzZW4gOykgTWVociB3b2xsdGUgaWNoIGphIGdhciBuaWNodCA6PgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNb3Jnb3RoLCAyNC4gT2t0IDIwMDAsIDE3OjQ2OjE0KToKR29yRG9uIHRlaWx0IERpciBtaXQ6IGRpZSBvcmtzIGtvZW5uZW4gaW56aXNjaGVuIG1laHIgYWxzIG51ciBrYXJhdGUgdW5kIHZvbgpHb3JEb24gdGVpbHQgRGlyIG1pdDogYmF1YXJiZWl0ZXIgb3JrcyBoYXR0ZSBpY2ggYXVjaCBub2NoIG5pY2h0cyBnZWhvZXJ0ClsxNzo0NF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApbVG9kOkxhcnNdIEVpbiBPcmsgaGF0IGdlcmFkZSBHb3Jkb24gdW1nZWJyYWNodC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCkp1cHBzLCBzaWUga29lbm5lbiBtZWhyICEhCgpNKiBncmluc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3RhbW10aXNjaCBCb25uIChBbmF0b2wsIDI1LiBPa3QgMjAwMCwgMTY6Mzc6NTIpOgp+IyEgcm49TGlhcmEgcnQ9OTcyNDc0NTE3IHJnPXRyZWZmZW4KfiMhIHRpZD05NzI0MTg5MzEKTG9lc2NodCBQYWRyZWljIGFsbGUgQXJ0aWtlbCwgaW4gZGVuZW4gZXJ3YWVobnQgd2lyZCwgZGFzcyBlciBpbiBzZWluZW4KR2VidXJ0c3RhZyBoaW5laW5mZWllcm4gd29sbHRlPwoKU0NOUiBdOl58PgoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdGFtbXRpc2NoIEJvbm4gKEdsb2luc29uLCAyNS4gT2t0IDIwMDAsIDE2OjQ1OjEwKToKfiMhIHJuPUFuYXRvbCBydD05NzI0ODQ2NzIgcmc9c2NobWFycm4KfiMhIHRpZD05NzI0MTg5MzEKSXN0IHNjaG9uIGVpbmUgaW50ZXJlc3NhbnRlIEZyYWdlLCBvYiBQYWRyZWljcyBIaW5laW5mZWllcm4gaW4gc2VpbmVuCkdlYnVydHN0YWcgKHdhciBkYXMgZGVyIDExLj8pIHdpcmtsaWNoIHBlcnNvZW5saWNoIGlzdC4gV2FzIGVyZmFlaHJ0IG1hbgpub2NobWFsIGF1ZiBBbmZyYWdlIGJlaW0gRWlud29obmVybWVsZGVhbXQgdWViZXIgZWluZSBQZXJzb24/CgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTdGFtbXRpc2NoIEJvbm4gKExpYXJhLCAyNS4gT2t0IDIwMDAsIDE2OjQ4OjM0KToKfiMhIHJuPUdsb2luc29uIHJ0PTk3MjQ4NTExMCByZz1zY2htYXJybgp+IyEgdGlkPTk3MjQxODkzMQpOZWluLCBzZWluIEdlYnVydHN0YWcgaXN0IG5pY2h0IGFtIDExLiBOb3ZlbWJlciwgZGEgc29sbHRlIGRlciBTdGFtbXRpc2NoCnNlaW4uIDstKSkpCgpMWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3RhbW10aXNjaCBCb25uIChQYWRyZWljLCAyNS4gT2t0IDIwMDAsIDE4OjAxOjU1KToKfiMhIHJuPUdsb2luc29uIHJ0PTk3MjQ4NTExMCByZz1zY2htYXJybgp+IyEgdGlkPTk3MjQxODkzMQpEYXJhbiBpc3Qgbml4IGludGVyZXNzYW50LCBnZXdpc3NlIERpbmdlIGdlaG9lcmVuIHNjaGxpY2h0d2VnIG5pY2h0IGluIGRpZQptcGEuIEFiZXIgTGV1dGVuIG1pdCBkZW0gRmVpbmdlZnVlaGwgd2llIGVpbiBFbGVmYW50IGltIFBvcnplbGxhbmxhZGVuLCBicmF1Y2gKaWNoIGRhenUgd29obCBuaWNodHMgbWVociB6dXNhZ2VuLi4uIGlzdCB3b2hsIGVoIGhvZmZudW5nc2xvcy4KClBhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFN0YW1tdGlzY2ggQm9ubiAoQW5hdG9sLCAyNS4gT2t0IDIwMDAsIDE4OjAzOjQ4KToKfiMhIHJuPVBhZHJlaWMgcnQ9OTcyNDg5NzE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcyNDE4OTMxClVuZCBnZW5hdSBkZXN3ZWdlbiBob2Vyc3QgRHUgRGlyIHNlbGJzdCBuaWNodCB6dSwgaGFlbHRzdCBEaWNoIG5pY2h0CmFuIGRpZSBSZWdlbG4gdW5kIE1hZXNzc3RhZWJlLCBkaWUgRHUgYW4gYW5kZXJlIGFubGVnc3Q/CgpUcmF1cmlnIGVpZ2VudGxpY2gKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTdGFtbXRpc2NoIEJvbm4gKEthcmlzLCAyNS4gT2t0IDIwMDAsIDE4OjAzOjUyKToKfiMhIHJuPVBhZHJlaWMgcnQ9OTcyNDg5NzE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcyNDE4OTMxCkljaCB3aWRlcnNwcmVjaCBEaXIgamEgbnVyIHNlaHIgdW5nZXJuLCBQQWRyZWljLiBBYmVyIGRhc3MgZGFyYW4gbml4CmludGVyZXNzYW50IGlzdCwgaXN0IG51ciBEZWluZSBNZWludW5nIDopCgpHZW5lcmFlbGNoZW4gS2FyaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFlaG0/IChHcmVsbGdlbiwgMjUuIE9rdCAyMDAwLCAxODowNDo1Mik6CkRpZSBTaWxiZXJzdGF0dWUgc3RlaHQgYXVmIGRlciBTY2h3ZWxsZSBkZXMgVG9kZXMuICgxMCUpCiAgRHUgc2NobGFlZ3N0IGRpZSBTaWxiZXJzdGF0dWUgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KRGllIFNpbGJlcnN0YXR1ZSBmYWVsbHQgbWl0IHZpZWwgR2V0b2VzZSB1bS4gTnVyIGRlciBPYmVya29lcnBlciBpc3Qgbm9jaAppbnRha3QsIHNvbnN0IHNpZWhzdCBEdSBudXIgbm9jaCBHZXN0ZWluc2Jyb2NrZW4gaGVydW1saWVnZW4uClZpbmNlbnQgS2xvcGVrIGxhZWNoZWx0IERpY2ggYW4gdW5kIGdlaHQgbmFjaCBvYmVuLgoKSG0sIGRhc3MgZGVyIG5peCBkYWdlZ2VuIGhhdCB3ZW5uIG1hbiBzZWluIEludmVudGFyIHp1IEtsZWluaG9seiBtYWNodC4uLiA6LSkKCkdyZWxsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFlaG0/IChSb25kYSwgMjUuIE9rdCAyMDAwLCAxODowNjoyMCk6Cn4jISBybj1HcmVsbGdlbiBydD05NzI0ODk4OTIgcmc9c2NobWFycm4KfiMhIHRpZD05NzI0ODk4OTIKQXUgR3JlbGwsIGRhcyBrb2VubmVuIHdpciBnZXJuIGtvcnJpZ2llcmVuLCBnZWggZGEgbm9jaG1hbCBrdXJ6IGJlaSBLbG9wZWsKdm9yYmVpLCBpY2ggc2V0eicgZGVuIGRhbm4gYXVjaCBmdWVyIERpY2ggYXVmIEF1dG9hdHRhY2suLi4gKG9rLCB1bmQgc2VpbmUKU3RhdHMgbGVpY2h0IG5hY2ggb2JlbiwgZXIgc29sbCBqYSBuZSBndXRlIENoYW5jZSBoYWJlbiEpCgpSb25kYSAqZGllc21hbCBGVUVSIFNwaWVsZXJoaWxmZSAtIGVyIGhhdCdzIGphIHNvIGdld29sbHQhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHJha29uaWVyIGhhYmVuIEFuZ3N0IHZvciBEcmFjaGVuIChEYXJrd2luZywgMjUuIE9rdCAyMDAwLCAyMTozNjoxMyk6CltUZWFtIDY6XSBEYXJrd2luZyBzdGFydGV0IGRlbiBBbmdyaWZmLiAKSW4gZWluZW0gS29tbWFuZG9wb3N0ZW4gZGVyIERyYWtvbmllci4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgd2VzdGVuLgpFaW4gU2l2b2sgRHJha29uaWVyLgpLYWRpcyBmbGF0dGVydCBoZXJlaW4uCkRlciBTaXZvayBEcmFrb25pZXIgZ2VodC4KRHUgdmVyZm9sZ3N0IGpldHp0IGVpbmVuIFNpdm9rIERyYWtvbmllci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbnRlc2l2ZXMgbWVkaXRpZXJlbiAoS251ZHNzb24sIDI1LiBPa3QgMjAwMCwgMjI6NTE6MDgpOgpZbmcgaXN0IGFud2VzZW5kCgpQYXNzaXYgc2VpdCAxMDo1NTozMAplaW5nZWxvZ2d0IHNlaXQgTW9uLCAyMyBPa3QuIDIwMDAsIDIzOjU5OjQ5CgpOYSB3ZW5uIGRlciBtYWwgbmljaHQgZGF1ZXJpZGxlZCAqZyoKS251ZHNzb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJbnRlc2l2ZXMgbWVkaXRpZXJlbiAoUWl0ZXNzLCAyNS4gT2t0IDIwMDAsIDIyOjUxOjMyKToKfiMhIHJuPUtudWRzc29uIHJ0PTk3MjUwNzA2OCByZz1zY2htYXJybgp+IyEgdGlkPTk3MjUwNzA2OApsb2VzY2hlbiB1bmQgYmFuaXNoZW4hClFJKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOQWNodHJhZyAoVGh1ZmhpciwgMjYuIE9rdCAyMDAwLCAxMzo0MzoxNCk6Cn4jISBybj1LYXJpcyBydD05NzI1NjAxOTEgcmc9dHJlZmZlbgp+IyEgdGlkPTk3MjU2MDE5MQppcyBzdWNoZW4gdW5kIGRhbm4gZmluZGVuIHNvd2FzIHdpZSBmb3JzY2hlbj8gKnNoaXZlcioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTkFjaHRyYWcgKEthcmlzLCAyNi4gT2t0IDIwMDAsIDEzOjQ0OjQ4KToKfiMhIHJuPVRodWZoaXIgcnQ9OTcyNTYwNTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcyNTYwMTkxCk5hIGFiZXIga2xhciBkb2NoLiBEZW4gU3RhbW10aXNjaCBtdXNzIG1hbiBzaWNoIHNjaGxpZXNzbGljaCB2ZXJkaWVuZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSW50ZXNpdmVzIG1lZGl0aWVyZW4gKFluZywgMjYuIE9rdCAyMDAwLCAxNDoxMjowNyk6Cn4jISBybj1RaXRlc3MgcnQ9OTcyNTA3MDkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcyNTA3MDY4CkljaCBnbGF1YiwgZGEgaGFldHQgaWNoIHdvaGwgd2FzIGRhZ2VnZW4gOlAKClluZywgQmVydWZzaWRsZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOZXVlIFN0YW1tdGlzY2hrbmVpcGUgaW4gRE8gKEh1bW5pLCAyNi4gT2t0IDIwMDAsIDE3OjEwOjEwKToKfiMhIHJuPUFwb2xsb25pYSBydD05NzI1NzI4NjQgcmc9dHJlZmZlbgp+IyEgdGlkPTk3MTc4MTA1NApTdGltbXQsIENvbGEgaXN0IGphIGVpbiBRdWFsaXRhZXRzcHJvZHVrdC4gRGVzaGFsYiB2b3JoZXIgc2NobmVsbCBkZW4KVGVxdWlsYSB2ZXJuaWNodGVuIGJldm9yIG1hbiBkaWUgQ29sYSBnZW5pZXNzZW4ga2Fubi4KIDstKQoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFNwZWVkeSAoQW5hdG9sLCAyNi4gT2t0IDIwMDAsIDE5OjAyOjM4KToKfiMhIHJuPVNhbXRwZm90ZSBydD05NzI1Nzk2ODQgcmc9ZC5lYmVuZQp+IyEgdGlkPTk3MjIyNjkwNQpEZW4gRmVobGVyLCBEaWNoIGVybnN0enVuZWhtZW4sIG1hY2h0IGhpZXIgZWlnZW50bGljaCBrZWluZXIgbWVoci4KCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFlaG0/IChBcmssIDI2LiBPa3QgMjAwMCwgMjA6NTg6MjEpOgp+IyEgcm49R3JlbGxnZW4gcnQ9OTcyNDg5ODkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcyNDg5ODkyCkhhYiBpY2ggbWlyIGF1Y2ggc2Nob24gbGFlbmdlciB1ZWJlcmxlZ3QuIEFiZXIgZGFubiBoYXQgZXIgbWljaCBiZWlzZWl0ZQpnZW5vbW1lbiB1bmQgZ2VrbnVycnQ6IExhc3MgZGllIFdlaWNoZWllciBudXIsIHNwYWV0ZXIgd2VyZGVuIHNpZSBlcwppcmdlbmR3YW5uIGJlcmV1ZW4sIHdlbm4gaWNoIG1pY2ggcmFlY2hlLiBBYmVyIGRhZnVlciBtYWNoZSBpY2ggbWlyIGRvY2ggbmljaHQKZGllIEZpbmdlciBzY2htdXR6aWcgIQpUamEsIGluc29mZXJuIC4uLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthZW1wZmVyIC4uLiAoTXVlbnplLCAyNi4gT2t0IDIwMDAsIDIxOjQ3OjMwKToKCltLbGVydXM6SGlzQXN1bF0ga2FubiBiaXR0ZSB3ZXIgbWVpbmVuIHphcGZlbiBlbnRmbHVjaGVuPyB0aWdlciA6KQoKaS4gVi4gTXVlbnplCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiAxIFdvcnQgYXVzIDEgU2lsYmUgbWl0IDEwIEJ1Y2hzdGFiZW4gKEFuYXRvbCwgMjYuIE9rdCAyMDAwLCAyMjoyNTo0Nyk6Cn4jISBybj1TY2h3dWJiZWwgcnQ9OTcyNTkxNDU5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTcyMzc1NTM2ClRpZWYgaW0gSW5uZXJlbiBzZWhlbiB3aXIgWSBkdXJjaGF1cyBhbHMgVm9rYWwuIFNvbnN0IHd1ZXJkZSBkZXIgV2l0eiB1ZWJlcgpkYXMgIkdsdWVja3NyYWQiIGltIHR1ZXJraXNjaGVuIEZlcm5zZWhlbiBuaWNodCBmdW5rdGlvbmllcmVuOgoKJydJY2gga2F1ZmUgZWluIFlwc2lsb24uJycgIC0gRElORyAuLi4gRElORyAuLi4gRElORyAuLi4gRElORyAKCkFuYXRvbCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT3V0aW5nIGluIEJheWVybi4uLiAoQW5hdG9sLCAyNy4gT2t0IDIwMDAsIDA0OjQ4OjI3KToKIlBhcGEsIGljaCBob2IgbWkgdmVybGllYnQhIgoiSm8sIG1laSBTb2huLCBpbiB3ZW4gZGVubj8iCiJJY2ggbW9ncyBuaXQgc29nbi4uLiIKIkpvIHNvZyBzY2hvbiEgSW4gZGllIE1hcmlhPyIKIk5lZWUuLi4iCiJKYSBtZWkhIEluIGRpZSBFdmEgdmllbGxlaWNodD8iCiJOZWVlLCBQYXBhLi4uIgoiRXR3YSBpbiBkaWUgWmVuemksIGRpZSBvbGxlIEh1cj8iCiJOZWVlLCBQYXBhLi4uIEluLi4uIEluIGRlbiBTZXBwISIKIkluIGRlbiBTZXBwPz8/IEFiZXIuLi4gRGVyIGlzIGRvY2ggZXZhbmdlbGlzY2ghIgoKQW5hdG9sLCBldi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvc28uLiAoWm9vaywgMjcuIE9rdCAyMDAwLCAxNjoyOTowNik6CltUb2Q6TGFyc10gRWluIEh5ZHJha29wZiBoYXQgZ2VyYWRlIFdvbGtlIHVtZ2VicmFjaHQuCltUb2Q6RWluIEh5ZHJha29wZl0gaHNzc3NzcyAKCj4gZmluZ2VyIHdvbGtlCgpXb2xrZSBpc3QgYW53ZXNlbmQKWy4uLl0Kei5aLiBhYndlc2VuZCwgR3J1bmQgIDogbmljaHQgaW1tZXIgZGEgOikKCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi5hYmVyIHNlaW5lIFN0aW1tZSBkcm9laG50ZSBub2NoIGxhbmdlIGluIG1laW5lbiBPaHJlbiAuLi4gKEFuYWNyaW9uLCAyNy4gT2t0IDIwMDAsIDE4OjI2OjA0KToKClJhbmRvbGYgc2NobmlwcHQgbWl0IGRlbiBGaW5nZXJuLgpSYW5kb2xmIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBSYW5kb2xmLgpSYW5kb2xmICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpNYWlsYW5hIGhhdXQgYWIuClJhbmRvbGZzIFN0aW1tZSBzYWd0OiBJY2ggZ2xhdWIsIFN0aW1tZSB1ZWJlbiBpc3QgZGFzIGxhbmd3ZWlsaWdzdGUKUmFuZG9sZnMgU3RpbW1lIHNhZ3Q6IHVlYmVyaGF1cHQuClJhbmRvbGZzIFN0aW1tZSBzYWd0OiBJY2ggZ2xhdWIsIFN0aW1tZSB1ZWJlbiBpc3QgZGFzIGxhbmd3ZWlsaWdzdGUKUmFuZG9sZnMgU3RpbW1lIHNhZ3Q6IHVlYmVyaGF1cHQuClJhbmRvbGZzIFN0aW1tZSBzYWd0OiBJY2ggZ2xhdWIsIFN0aW1tZSB1ZWJlbiBpc3QgZGFzIGxhbmd3ZWlsaWdzdGUKUmFuZG9sZnMgU3RpbW1lIHNhZ3Q6IHVlYmVyaGF1cHQuCgphbmFjKiAtIGhhdCBzdGltbWUgc2Nob24gZ2V1ZWJ0IC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZ1ZXIgcm9uZGEgLi4uIChHb2xhcywgMjguIE9rdCAyMDAwLCAwMTo0MzowNik6CmVyIGhhdHMgbm9jaCBuaWNodCBnZW1hY2h0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3dhcyAoTGluZmxhcywgMjguIE9rdCAyMDAwLCAxMjowNjowNSk6CkR1IGJpc3QgaW4gZWluZXIgc2VociBncm9zc2VuIEhvZWhsZSwgZGVyZW4gV2FlbmRlIHVlYmVyIHVuZCB1ZWJlciBtaXQKS3Jpc3RhbGxlbiBiZWRlY2t0IGlzdC4gRWluZSBuaWNodCBhdXN6dW1hY2hlbmRlIExpY2h0cXVlbGxlIGJyaW5ndCBkZW4KZ2VzYW10ZW4gUmF1bSB6dW0gRnVua2VsbiB1bmQgR2xpdHplcm4sIGRhcyBMaWNodCB3aXJkIHVlYmVyYWxsIHJlZmxlay0KdGllcnQgdW5kIGJyaWNodCBzaWNoIGluIGFsbGVuIEZhcmJlbi4gRXMgaXN0IHdpcmtsaWNoIGtlaW4gV3VuZGVyLApkYXNzIHNpY2ggaGllciBlaW4gS3Jpc3RhbGxkcmFjaGUgbmllZGVyZ2VsYXNzZW4gaGF0LgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZGVuLgpFaW4gS3Jpc3RhbGxkcmFjaGUuCkhlaW5pIEJvbGxlcmtvcHAuCkVpbiBLcmlzdGFsbGRyYWNoZS4KSGVpbmkgQm9sbGVya29wcC4KCldhcyBpc24gaGllciBsb3M/Pz8KV2FzIGlzbiBoaWVyIGxvcz8/PwoKTGluZmwqLCBqYW1tZXJ0IGF1Y2ggaGllciBoZXJ1bS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClF1ZXN0cyBmdWVyIEhhdXN0aWVyZSE/IChWYXJsYXJpb24sIDI4LiBPa3QgMjAwMCwgMjE6NDM6MDUpOgpTY2huZWV3aXR0Y2hlbiBydWZ0OiBEYW5rZSwgRW5raWwsIGRhc3MgRHUgbWVpbmUgWndlcmdlIGJlZnJlaXQgaGFzdC4KdW50IGVua2lsCkVpbiBodWVic2NoZXIga3JhZWZ0aWcgYXVzc2VoZW5kZXIgS2F0ZXIgbmFtZW5zIEVua2lsLiBFcgpnZWhvZXJ0IEFrYXNoYS4gRXIgc2NoYXV0IERpY2ggbWl0IGxldWNodGVuZGVuIEF1Z2VuIGFuIHVuZApzY2hudXJydCBzYW5mdCB2b3Igc2ljaCBoaW4uCkVyIGlzdCBhYnNvbHV0IGZpdC4KRXIgdHJhZWd0IGJlaSBzaWNoOgpEZXIgSGV4ZW50b2V0ZXIuCgpBZWgsIGphLi4uCgpzdGlybnJ1bnplbG5kLCBWYXJsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGQVNUIHNvIGd1dCB3aWUgZGFzIFNlaGVycG9ydGFsIGluIFRhcmFtaXM6IChBbmF0b2wsIDI5LiBPa3QgMjAwMCwgMDA6MjU6MzQpOgpWb3IgZXR3YXMgdWViZXIgZHJlaSBKYWhyZW46CltTZWhlcjpQYWRyZWljXSBhbmF0b2wsIGRlciBnZWlzdCBzb2xsIGFscyBlaW5lIGFydCB3YWVjaHRlciBmdWVyIHBhcmEteGlhbgpbU2VoZXI6UGFkcmVpY10gd2lya2VuLCBEQVMgaXN0IG51ciBub2NoIG5pY2h0IGFuZ2VzY2hsb3NzZW4gKGRhdWVydCBub2NoIGVpbgpbU2VoZXI6UGFkcmVpY10gcGFhciB3b2NoZW4pCgpNbW1tbW1tbW1tbWguIEhhdCBlciBkYXMgUHJvamVrdCBldHdhIGdlY2FuY2VsdD8KCj4gZmluZ2VyIHBhZHJlaWMKUGFkcmVpYyBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogVC1PbmxpbmUuCi4uLgpQcm9qZWt0OiBYaWFuIGJla29tbXQgbmUgUGFyYXdlbHQgOikKCk5laW4sIG9mZmVuYnIgbmljaHQuLi4gKmdydWViZWwqIEJlc2Nod2VyJyBEaWNoIE5JRSB3aWVkZXIgdWViZXIgZGllCk9iamVrdGJhbGFuY2UsIHdlbm4gc2llIG1hbCBlaW4gcGFhciBUYWdlIGxhZW5nZXIgYnJhdWNodCwgQnVnZHJlaWMgOikKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmUgaXMga2xhci4uLiAoR2FzdDEsIDI5LiBPa3QgMjAwMCwgMDE6NTA6MDkpOgpEZXIgZ3Jvc3NlIFJhdW0gbWl0IHNlaW5lciBuaWVkcmlnZW4gRGVja2UgdW5kIGRlbiBncm9iIGdlc2Nobml0dGVuZW4KUXVlcmJhbGtlbiBoYXQgUGxhdHogZnVlciBzZWhyIHZpZWxlIFBlcnNvbmVuLiBLbmFycmVuZGUgRGllbGVuIGVyemFlaGxlbgp1ZWJlciBIZWxkZW50YXRlbiBsYWVuZ3N0IHZlcmdlc3NlbmVyIEFiZW50ZXVyZXIsIGJlcnVlaG10ZXIgYWxzIG1hbmNoZXIKV2Vpc2UgdW5zZXJlciBaZWl0LgpBYmVudGV1cmVyLCBhYmVyIGF1Y2ggYW5kZXJlIEJld29obmVyIGRpZXNlciBXZWx0IGtvbW1lbiBoaWVyaGVyLCB1bQpzaWNoIHp1IGluZm9ybWllcmVuLCBpaHJlIEVyZmFocnVuZ2VuIGF1c3p1dGF1c2NoZW4gb2RlciBzaWNoIGluIGRlbgp2ZXJzY2hpZWRlbnN0ZW4gV2lzc2Vuc2NoYWZ0ZW4genUgdmVyYmVzc2Vybi4KRHVyY2ggZGllIGltbWVyIG9mZmVuZSBUdWVyIHNjaGVpbnQgZGllIGF1ZmdlaGVuZGUgU29ubmUgaGVyZWluIHVuZCBmdWVsbHQKZGVuIFJhdW0gbWl0IGlocmVtIGdvbGRlbmVuIExpY2h0LiBTb25zdCBnaWJ0IGVzIGhpZXIgbnVyIG5vY2ggZGVuIEF1c2dhbmcKaW0gTm9yZGVuLCB3ZWxjaGVyIGF1ZiBkaWUgSGFmZW5zdHJhc3NlIGZ1ZWhydCB1bmQgQmlsZGVyIGFuIGRlbiBXYWVuZGVuLAptaXQgWmVpY2hudW5nZW4gdW5kIEdlbWFlbGRlbiB2b24gTW9yZ2VuR3JhdWVuLiBFaW5zIGRlciBCaWxkZXIgZXJsYWV1dGVydApkaWUgRnVua3Rpb24gZGVyIEdpbGRlIHVuZCBlaW5lIGdyb3NzZSBVaHIgYW4gZGVyIFdhbmQgemVpZ3QsIHdhcyBkaWUKU3R1bmRlIHNjaGxhZWd0LiBBbiBlaW5lciBhbmRlcmVuIFdhbmQgaGFlbmd0IGVpbmUgc3RlaW5lcm5lIFRhZmVsLgpOYWNoIG9iZW4gZnVlaHJ0IGVpbmUgVHJlcHBlIGluIGRhcyBCdWVybyBkZXMgRm9lcmRlcnZlcmVpbnMgUHJvamVrdApNb3JnZW5HcmF1ZW4gZS5WLiwgZGFzIER1IHVuYmVkaW5ndCBiZXN1Y2hlbiBzb2xsdGVzdC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9iZW4gdW5kIG5vcmRlbi4KRWluZSBTY2hhdWZlbC4KRWluZSBTY2hhdWZlbC4KW1RlYW06RmljaHQnZSdtb2JiZWRdIFRoYXJlbiBkZXIgVmVyYnJlaXRlciBkZXMgQ2hhb3MuCltUZWFtOkZpY2h0J2UnbW9iYmVkXSBPcGEgRGllZGVyIHNjaHJlaXQ6IFQgSSBNIEIgRSBSICEhISEhLgpbVGVhbTpGaWNodCdlJ21vYmJlZF0gRGVtIGtyYXNzZSBBcmF0aCBrb25rcmV0IG9obmUgRmFocnJhdGguCltUZWFtOkZpY2h0J2UnbW9iYmVkXSBQb2xnYXJhIGlzdCAnbmUgYWJzb2x1dGUgU2Nobml0dGUuCltUZWFtOkZpY2h0J2UnbW9iYmVkXSBHcmVsbGdlbiAtIGRlciBtaXQgZGVtICJsIiB6dXZpZWwuCltUZWFtOkZpY2h0J2UnbW9iYmVkXSBCZWxnYXJpYWQgc2NocmVpdDogVCBJIE0gQiBFIFIgISEhISEuCltUZWFtOkFhY2hlbl0gT2hhbSBkZXIgQXZhdGFyLgpFaW5lIFplaXR1bmcuClluZyBkZXIgTWVzc2Vyc3RlY2hlci4KRWluIEhhbmRidWNoIGZ1ZXIgQW5mYWVuZ2VyLgoKSG9semZhZWxsZXJ0ZWFtIHZvbGxzdGFlbmRpZyB2ZXJzYW1tZWx0Li4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkFTVCBzbyBndXQgd2llIGRhcyBTZWhlcnBvcnRhbCBpbiBUYXJhbWlzOiAoQmFtYmksIDI5LiBPa3QgMjAwMCwgMTk6NTc6NDApOgp+IyEgcm49QW5hdG9sIHJ0PTk3Mjc3MTkzNCByZz1zY2htYXJybgp+IyEgdGlkPTk3Mjc3MTkzNApEdSBoYXN0IExvZ2ZpbGVzIHZvbiB2b3IgdWViZXIgZHJlaSBKYWhyZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZXJhZGUgaW4gVG9ldGVycyBLbG9zdGVyLi4uIChEYXJrd2luZywgMjkuIE9rdCAyMDAwLCAyMDowNDozMSk6ClsuLi5dCkRlciBNb2VuY2ggdmVyd2lycnQgRGVpbmUgU2lubmUhCkR1IGZsaXBwc3QgdG90YWwgYXVzLgouLi4ubm9ybWFsL1NjaHdlcnQuLi4uLiBNb2VuY2guLi4uLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSBoYXJ0Ci4uLi5ub3JtYWwvU2NobGFncmluZy4uIER1Li4uLi4uLi4uLi4gOiBNb2VuY2guLi4uLi4uICoqKioqKioqIC0+IHp1IEJyZWkKPnZlcmxldHplIG1vZW5jaCBtaXQgd2luZApEdSBiaXN0IHNjaG9uIHp1IHNlaHIgYmVzY2hhZWZ0aWd0LgouLi4ubm9ybWFsLz8/Py4uLi4uLi4uLiBUcmF1bWEuLi4uLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSB6dSBCcmVpCltUb2Q6TGFyc10gVHJhdW1hIGhhdCBnZXJhZGUgVHJhdW1hIHVtZ2VicmFjaHQuCgpzZWhyIHdpdHppZy4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGQVNUIHNvIGd1dCB3aWUgZGFzIFNlaGVycG9ydGFsIGluIFRhcmFtaXM6IChNb250YW51cywgMzAuIE9rdCAyMDAwLCAxNzo0NToxNyk6Cn4jISBybj1CYW1iaSBydD05NzI4NDU4NjAgcmc9c2NobWFycm4KfiMhIHRpZD05NzI3NzE5MzQKCkFuYXRvbCBoYXQgbmljaHQgbnVyIGFsbGUgTG9nZmlsZXMgZGVyIGxldHp0ZW4gNyBKYWhyZSBNRyBhdWYgc2VpbmVyCkZlc3RwbGF0dGUgZ2VzcGVpY2hlcnQsIHNvbmRlcm4gZGF6dSBhdWNoIG5vY2ggc2VpbmUgZ2FuemUgQnVkZSBtaXQKbWFzc3N0YWJzZ2V0cmV1ZW4gS2FydGVuIGRlciBTY2hyZWNrZW5zc3BpdHplLUxldmVsIGluIGFsbGVuCkVudHdpY2tsdW5nc3N0YWRpZW4gdGFwZXppZXJ0LgpJY2ggaGFiIHVlYnJpZ2VucyBhdWNoIG5vY2ggZWluIHBhYXIgYWx0ZSBMb2dzLiBFcmluZW5ydCBzaWNoIGplbWFuZCBhbiBkaWUKbmV0dGUgRXBpc29kZSAiR3JpbW1ib3JuIHVuZCBkYXMgZXJzdGUgU2VoZXJoYXVzIiA/IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRkFTVCBzbyBndXQgd2llIGRhcyBTZWhlcnBvcnRhbCBpbiBUYXJhbWlzOiAoWm9yeWEsIDMwLiBPa3QgMjAwMCwgMTc6NDk6MzEpOgp+IyEgcm49TW9udGFudXMgcnQ9OTcyOTI0MzE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTcyNzcxOTM0CkhtbS4uLiBJY2ggaGFldHRlIGRhIG5vY2ggZGFzICJBbGluZSBpc3Qgc2Nod2FuZ2VyIi1Mb2cgYW56dWJpZXRlbi4uLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmF1ZiBhbGxnZW1laW5lbiBXdW5zY2guLi4gZGFtYWxzIHZvciA2IEphaHJlbi4gKE1vbnRhbnVzLCAzMC4gT2t0IDIwMDAsIDE3OjUxOjE3KToKCkRhdHVtOiBEaWUsIDI3LiBTZXAgMTk5NAoKW0FiZW50ZXVlcjpUenVpb3BdIFdlbSBnZWhvZXJ0IGRlbm4gZGFzIFNlaGVyaGF1cyBoaWVyID8/CltBYmVudGV1ZXI6R3JpbW1ib3JuXSBXbz8KW0FiZW50ZXVlcjpUenVpb3BdIEJhdXN0ZWxsZQpbQWJlbnRldWVyOkdyaW1tYm9ybl0gU2ljaGVyIGRlciAiU2llZ2VzcHJlaXMiIGZ1ZXIgZGVuIGRhZW1saWNoc3RlbiBTZWhlci4uLgpbQWJlbnRldWVyOkdyaW1tYm9ybl0gOy0pCltBYmVudGV1ZXI6VHp1aW9wXSBkYW5uIGtvbW0gZG9jaCBoZXIgOikKCltTZWhlcjpDaGljb2xhXSB3aWUgd28gd2FzIFNFSEVSSEFVUyA/PwpbU2VoZXI6VHp1aW9wXSBhdWYgZGVyIEJhdXN0ZWxsZSBpbiBkZXIgRWJlbmUgLSB2b24gd2VtIGlzdCBkYXMgPwpHcmltbWJvcm4ga251ZGRlbHQgRGljaCB1bmQgZWluZW4gU2NobWV0dGVybGluZy4KQ2hpY29sYSBrb21tdCBhdWYgaWhyZW0gdXJhbHRlbiBEYW1lbnJhZCBhbmdla2V1Y2h0LCBmbHVjaHQgdWViZXIgZGllIHZpZWxlbgpCZXJnZSBpbSBNRyB1bmQgc3RlaWd0IGVyc2Nob2VwZnQgYWIuCltTZWhlcjpHcmltbWJvcm5dIEphdSEgVW5kIHdpZSBiZWZ1ZXJjaHRldDogUmVpaGVuaGF1c3N0aWwuLi4gOi0oKAo+IFtTZWhlcjpIYXJkaWxdIFdpZXNvLCBHcmltbWJvcm4gPwo+IENoaWNvbGEgc2FndDogc2luZCBqYSBub2NoIHR5cG9zIGRyaW4gISEKW1NlaGVyOkVuZ3l3dWNrXSBXbz8KW1NlaGVyOkdyaW1tYm9ybiBzY2hhdWRlcnQgYmVpIHVudCBzZWhlcmhhdXMuLi5dCk1pa2Egc2FndDogSGkKW1NlaGVyOkVuZ3l3dWNrXSBXbyBpc3NuIFNlaGVyaGF1cz8gQXVjaCBndWNrZW4gd29sbGVuLi4uCk1pa2Egc2FndDogZGFzIGlzIGFiZXIgbmljaCBkYXMgb3JpZ2luYWxlCkNoaWNvbGEgc2FndDogYWxzbyB1bnQgZ2FydHJlbiB1bmQgdW50IGZlbnN0ZXIgZ2VodCBhdWNoIHNjaG9uIDooCkdyaW1tYm9ybiBzYWd0OiBTY2hsaW1tIGlzdCBlcyB0cm90emRlbS4uLgo+IE1pa2Egc2FndDogd2VyIGhhdCBkZW5uIGRhcyBoaWUgYXVmZ2VzdGVsbHQ/CkdyaW1tYm9ybiBzYWd0OiBXZW5uIFNlaGVyIHp1IHNvd2FzIGdlend1bmdlbiB3ZXJkZW46IFdlciB3aWxsIG1laW4gUGFwaQpHcmltbWJvcm4gc2FndDogd2VyZGVuPwpDaGljb2xhIHNhZ3Q6IGluIHdlc3NlbiB2ZXJ6ZWljaG5pc3Mgc3RlaHQgZXMgZGVubiA/Cj4gR3JpbW1ib3JuIHNhZ3Q6IFNPV0FTIHdpbGwgaWNoIHVudGVyIEtFSU5FTiBVbXN0YWVuZGVuIGhhYmVuLgpCb2luZyBzYWd0OiBIaSBNaWthCkJsYWNreSBzYWd0OiBpZ2l0dCA6KApbU2VoZXI6R3JpbW1ib3JuXSBJY2ggZGVuayBpY2ggc3RlaCBpbSBTY2h3YXJ6d2FsZC4uLgpNaWthIG5pbW10IGVpbiBTZWhlcmhhdXMuCj4gZnJhZyBtaWthIHdhcnN0IGR1IGRhcyA/CkR1IGZyYWdzdCBNaWthOiBXYXJzdCBkdSBkYXMgPz8KPiBNaWthIGxhZXNzdCBlaW4gU2VoZXJoYXVzIGZhbGxlbi4KPiBNaWthIGtsZXR0ZXJ0IGluIGRlYXMgU2VoZXJoYXVzCkdyaW1tYm9ybiBtYWNodCBlaW4gYmVkcm9lcHBlbHRlcyBHZXNpY2h0LgpHcmltbWJvcm4gdmVyc3VjaHQsIEdlZmFsbGVuIGFuIGRlbSBIYXVzIHp1IGZpbmRlbi4KU2VoZXJoYXVzIGxvZXN0IHNpY2ggdm9sbHN0YWVuZGlnIGF1Zi4KQmxhY2t5IGdlaHQgbmFjaCBOb3JkZW4uCj4gTWlrYSBzYWd0OiBhbHNvLCB3ZXIgaGF0IGRhcyBibG9lZGUgdGVpbCBoaWVyIGF1Zmdlc3RlbGx0Pwo+IEdyaW1tYm9ybiBzYWd0OiBCaXN0IER1IE1hZ2llciBvZGVyIHdpcj8KR3JpbW1ib3JuIGlzdCBlcnN0YXVudC4KTWlrYSBzYWd0OiBkYXMgd2FyIG5hZW1saWNoIGVpbiBtb2dlbGhhdXMKTWlrYSBzYWd0OiBkYXMga2FubiBhdWNoIGplZGVyIHNlaGVyIQpHcmltbWJvcm4gZmFlbmd0IGFuIHp1IGRlbmtlbi4KS2xlaW5lIFJhdWNod29lbGtjaGVuIHN0ZWlnZW4gYXVmLi4uCkdyaW1tYm9ybiBzYWd0OiBCZXV0ZWw/Cj4gR3JpbW1ib3JuIHNhZ3Q6IFdhcyBpc3QsIE1pa2E/Cj4gTWlrYSBzYWd0OiBkYXMgZGluZyBoaWVyIHdhciBlaW4gbW9nZWxvYmpla3QsIGhhc3QgZHUgZGFzIGV0d2EgbmljaHQKTWlrYSBzYWd0OiBnZXd1c3N0Pz8KPiBHcmltbWJvcm4gc2NodWV0dGVsdCBkZW4gS29wZi4KR3JpbW1ib3JuIHNhZ3Q6IFdvaGVyPyBVbmQgd2FzIGhlaXNzdCBNb2dlbG9iamVrdD8KTWlrYSBzYWd0OiBkaWUga29taXNjaGUgb2JqZWt0LCBkYXMgMTUgbWluIGRhIGJsZWlidCB1bmQgZGVtIGplZGVyIHNlaGVyIG5lCk1pa2Egc2FndDogYmVzY2hyZWlidW5nIGdlYmVuIGthbm4KPiBHcmltbWJvcm4gc2FndDogRG9jaCBCZXV0ZWwuLi4KTWlrYSBzYWd0OiB3dW5zY2hiZXV0ZWwgb2RlciB3YXM/CkdyaW1tYm9ybiBuaWNrdCB6dXN0aW1tZW5kLgpNaWthIHNhZ3Q6IGVpbiBlY2h0ZXMgc2VoZXJoYXVzIGlzdCBkYXMgdm9uIHdvZWxrY2hlbgpHcmltbWJvcm4gc2FndDogU28gYWVobmxpY2guLi4KPiBNaWthIHNhZ3Q6IGJlaW0gd2Fzc2VyZmFsbCBpbSBnZWJpcmdlCkdyaW1tYm9ybiBzYWd0OiBLZW5uIGljaC4KPiBHcmltbWJvcm4genVja3QgcmF0bG9zIG1pdCBkZW4gU2NodWx0ZXJuLgo+IEdyaW1tYm9ybiBzYWd0OiBJY2ggd2FycyBuaWNodC4uLgo+IEdyaW1tYm9ybiBzYWd0OiBBYmVyIGFscyBHYWcgZmFuZCBpY2ggZGFzIG5pY2h0IHVlYmVsLi4uCkdyaW1tYm9ybiBncmluc3QgdWViZXIgc2VpbmVuIFN0cmVpY2guCkNoaWNvbGEgc2FndDogaWNoIGF1Y2ggbmljaHQgOigKR3JpbW1ib3JuIGJsYWV0dGVydCBpbiBkZXIgR2VicmF1Y2hzYW53ZWlzdW5nIGZ1ZXIgZGVuIEJldXRlbC4KR3JpbW1ib3JuIHNhZ3Q6IE1pc3QgZWNobyEgTWlrYSEgOy0pCk1pa2Egc2FndDogd2FzIGRlbm4/CkdyaW1tYm9ybiBzYWd0OiBNaXQgbWlyIGtvZW5udCBpaHJzIGphIG1hY2hlbi4uLgpHcmltbWJvcm4gbWFjaHQgZ2FyIG5peCBtZWhyLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3RhbW10aXNjaCBpbiBEcmVzZGVuISAoRGVlcGJsdWUsIDMwLiBPa3QgMjAwMCwgMjE6Mzc6NTMpOgp+IyEgcm49UGF0cnluIHJ0PTk3MjkyODYxNyByZz10cmVmZmVuCn4jISB0aWQ9OTcyOTAzNDY3CkVpbiBOZXN0YmVzY2htdXR6ZXIhIEZhc3N0IGlobiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhdWYgYWxsZ2VtZWluZW4gV3Vuc2NoLi4uIGRhbWFscyB2b3IgNiBKYWhyZW4uIChHb2xhcywgMzAuIE9rdCAyMDAwLCAyMjoxOToxMSk6Cn4jISBybj1Nb250YW51cyBydD05NzI5MjQ2Nzcgcmc9c2NobWFycm4KfiMhIHRpZD05NzI5MjQ2NzcKbWFuIGJpbiBpY2gganVuZywgYmlzIGF1ZiB3b2Vsa2NoZW4sIGdyaW1tYm9ybiB1bmQgYm9pbmcgc2FnZW4gbWlyIGRpZSBuYW1lbgphbGxlc2FtdCBnYXIgbml4IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGF1ZiBhbGxnZW1laW5lbiBXdW5zY2guLi4gZGFtYWxzIHZvciA2IEphaHJlbi4gKFllbmRpLCAzMS4gT2t0IDIwMDAsIDEwOjU3OjUyKToKfiMhIHJuPUdvbGFzIHJ0PTk3Mjk0MDc1MSByZz1zY2htYXJybgp+IyEgdGlkPTk3MjkyNDY3NwpNYW5uLCBiaW4gaWNoIGFsdC4uLiAKd2FyIGRhcyB3aXJrbGljaCB2b3IgNiBKYWhyZW4sIGRhc3MgU2VoZXJoYWV1c2VyIGFuZ2VzY2hsb3NzZW4gd3VyZGVuPwoKV2lyZCBaZWl0LCBkYXNzIGljaCBtaXIgaXJnZW5kd29oZXIgZWluIHJpY2h0aWdlcyBMZWJlbiBiZXNvcmdlLgpCaWV0ZSAxMDAwMDAgTXVlbnplbiwgYWJob2xiYXIgYmVpIEFiZW50ZXVyZXJnaWxkZSwgUFYuCgpZVFkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWl0bGVpZD8gKExpYXJhLCAzMS4gT2t0IDIwMDAsIDEzOjQxOjU3KToKfiMhIG9uPUxpYXJhIG90PTk3Mjk5NjA5NSBvZz1hbGxnZW1laW5lcwp+IyEgcm49Rm9vYmFyIHJ0PTk3Mjk1NDgyMCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk3Mjk1NDgyMApBdWNoIG5vY2ggTWl0bGVpZCBtaXQgTWFnaWVybiBvZGVyIHdhcz8gOy0pCgpMWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGFuamlhbnBvd2VyISAoR3JlbGxnZW4sIDMxLiBPa3QgMjAwMCwgMTc6NTI6MDUpOgpEdSBzZXR6dCBEaWNoIGhpbiB1bmQgZmFlbmdzdCBhbiB6dSBtZWRpdGllcmVuLgouLi4KRHUgYmVlbmRlc3QgRGVpbmUgTWVkaXRhdGlvbi4KW1RvZDpMYXJzXSBFaW5lIFNwaGlueCBoYXQgZ2VyYWRlIEhlaW5pIHVtZ2VicmFjaHQuCgpHcmVsbGdlbiwgZmllcyBncmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVwcy4uLiAoQW5hdG9sLCAgMS4gTm92IDIwMDAsIDE2OjE1OjM4KToKPiB0bSB6b29rICprbnVycioKRHUgdGVpbHN0IFpvb2sgbWl0OiAqa251cnIqClpvb2sgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpVdXV1cHM/IDopCkFuYXRvbAoKdG0gcGFkcmVpYyAqa251cnIqCnNjaGF1CmFyZ2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClR3byBsIG9yIG5vdCB0d28gbD8gKEFuYXRvbCwgIDEuIE5vdiAyMDAwLCAxOTozMzo0MCk6CkthcmxzcnVoZSBydWZ0OiBncmVsZ2VuCltNb2VyZGVyOkdlaXN0IGVpbmVzIFdhZWNodGVyc10gR3JlbGxnZW4sIG1laW4gSGFzcyBpc3QgRGlyIGdld2lzcyEKR3JlbGxnZW4gcnVmdDogamFhYWFhYT8KCipzdG9laG4qIDopCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFR3byBsIG9yIG5vdCB0d28gbD8gKE1vbnRhbnVzLCAgMS4gTm92IDIwMDAsIDIxOjQ1OjI3KToKfiMhIHJuPUFuYXRvbCBydD05NzMxMDM2MjAgcmc9c2NobWFycm4KfiMhIHRpZD05NzMxMDM2MjAKClNvbGFuZ2UgZXMgV2l0emJvbGRlIGdpYnQsIGRpZSBzaWNoIGZ1ZXIgaWhyZSBad2VpdGllcyBOYW1lbiBhdXNzdWNoZW4sIGRpZSBpbQpNdWQgc2Nob24gdm9ya29tbWVuIChBbWFyeWxsaXMsIEdyZWwobClnZW4gZXRjKSwgc2luZCBzb2xjaGUgQXJ0aWtlbCBub2NoCm5pY2h0IG1hbCBkaWUgUnVicmlrIHNjaG1hcnJuIHdlcnQuIEhvZWNoc3RlbnMgbWFnaWVyLndpdHplIG9kZXIgZ2xlaWNoIG11ZWxsLgpJY2ggd2FydGUgc2Nob24gYXVmIGRlbiBDaGFyYWt0ZXIgU2NuaGVlbWFubiAob2RlciBoYXQgR3JpbW1ib3JuIGRlbgpyZWNodHplaXRpZyBnZWJhbmlzaHQ/KS4gOi0oCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUd28gbCBvciBub3QgdHdvIGw/IChWYW5pb24sICAxLiBOb3YgMjAwMCwgMjE6NTg6NTIpOgp+IyEgcm49TW9udGFudXMgcnQ9OTczMTExNTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTczMTAzNjIwCkRlbmsgYW4gZGVpbmVuIEJsdXRkcnVjayAqZyoKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFYmVuIHBhc3NpZXJ0Li4uIChSYXl6ZWVsLCAgMS4gTm92IDIwMDAsIDIyOjI0OjM3KToKRHUgZ3JpbnN0IGZpZXMuClZhbmlvbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCld1c3N0ZSBnYXIgbmljaHQsIGRhc3MgbWVpbiBHcmluc2VuIFNPIGZ1cmNodGVpbmZsb2Vzc2VuZCBpc3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtbW1tIC4uLi4gKEdsb2luc29uLCAgMi4gTm92IDIwMDAsIDAzOjEzOjQ4KToKRHJvbGxpIHRlaWx0IERpciBtaXQ6IG9raSBuYWNodGkgOikKRHJvbGxpIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRHUgdGVpbHN0IERyb2xsaSBtaXQ6IE5hY2h0IDspCltUb2Q6TGFyc10gRGVyIERyYWNoZSBFYnJhIGhhdCBnZXJhZGUgSGVyb21jZmx5IHVtZ2VicmFjaHQuCltUb2Q6RGVyIERyYWNoZSBFYnJhXSBTY2hsZWltc2NoZWlzc2VyIQouLi4KW0FsbGdlbWVpbjpEcm9sbGkgd2lua3QuXQpbQWxsZ2VtZWluOkRyb2xsaV0gbmFjaHRpIDopCltUb2Q6TGFyc10gRWluIE5naG9nIGhhdCBnZXJhZGUgSGlnaHQgdW1nZWJyYWNodC4KClZlcmRhZWNodGlnLiBJY2ggd2FydGUgbm9jaCBhdWYgZWluZSBkcml0dGVzIE1hbCB1bmQgZGFubiBpc3QgZWluIFp1c2FtbWVuaGFuZwpzZWhyIHdhaHJzY2hlaW5saWNoIDspCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEdsb2luc29uLCAgMi4gTm92IDIwMDAsIDAzOjE4OjI4KToKW0JlaWxlaWQ6SGlnaHRdIGFyZ2wgaWNoIGxlcm5zIG5pZSAhISEKLi4uICgyMCBzKQpbVG9kOkxhcnNdIEVpbiBOZ2hvZyBoYXQgZ2VyYWRlIEhpZ2h0IHVtZ2VicmFjaHQuCgpEdSBzYWdzdCBlcyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRkFTVCBzbyBndXQgd2llIGRhcyBTZWhlcnBvcnRhbCBpbiBUYXJhbWlzOiAoR3VpbGRvLCAgMi4gTm92IDIwMDAsIDEwOjAyOjM0KToKfiMhIHJuPVpvcnlhIHJ0PTk3MjkyNDU3MSByZz1zY2htYXJybgp+IyEgdGlkPTk3Mjc3MTkzNApIYXQgbm9jaCBqZW1hbmQgZGFzICJBY3JpbW9uIi1Mb2cgKGJlaSBkZW0gYWxsZSAicyIgYXVmIGRlbiBFYmVuZW4gaW4gInN6Igp1bWdld2FuZGVsdCB3dXJkZW4pPwoKR3J1c3MsCkd1aWxkbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGFsdGV0IGRlbiBCb2RlbiBzYXViZXIhIChNb250YW51cywgIDIuIE5vdiAyMDAwLCAxNTo1MDozMik6CgpDYWx1bSBrb3R6dCBhdWYgWmFybml5YS4KQ2FsdW0gc2FndDogdXBzLi4uCkNhbHVtIHNhZ3Q6IGVpZ2VudGxpY2ggd29sbHRlIGljaCBhdWYgZGVuIEJvZGVuIGtvdHplbiwgc29ycnkgOy0pCkNhbHVtIHNhZ3Q6IHdpZWRlciBtYWwgc2NobGVjaHQgZ2V6aWVsdC4KClNvcnJ5LCBjb3VsZG4ndCByZXNpc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaGFsdGV0IGRlbiBCb2RlbiBzYXViZXIhIChSaWt1cywgIDIuIE5vdiAyMDAwLCAxNTo1NDoxMCk6Cn4jISBybj1Nb250YW51cyBydD05NzMxNzY2MzIgcmc9c2NobWFycm4KfiMhIHRpZD05NzMxNzY2MzIKZ3V0IGF1ZiBkZW4gQm9kZW4gZ2V6aWVsdCwgYWJlciBiZWkgWmFybml5YXMgQXVzbWFzc2VuLi4uCgpSaWt1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGV1dHNjaGxhbmRmdW5rIChEaWVkZXIsICAyLiBOb3YgMjAwMCwgMjM6NDY6MzYpOgpETEYsIDAxLjExLjIwMDAsIDExOjAwaAoKRExGOiAiS29lbm5lbiBTaWUgZ2V3YWVocmxlaXN0ZW4sIGRhc3MgZGllIFZlcnN0b3JiZW5lbiBlaW56ZWxuIGplZGVyIGZ1ZXIKc2ljaCBlaW5nZWFlc2NoZXJ0IHdlcmRlbj8iCgpCZXN0YXR0dW5nc3VudGVybmVobWVyOiAiQWJlciBzaWNoZXIsIGRhZnVlciBsZWdlIGljaCBtZWluZSBIYW5kIGlucyBGZXVlci4iCgpTY2hvbiBkZXJiIDopCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWl0bGVpZD8gKEdyaW1tYm9ybiwgIDMuIE5vdiAyMDAwLCAwMToxMzowOSk6Cn4jISBvbj1Gb29iYXIgb3Q9OTcyOTU0ODIwIG9nPWFsbGdlbWVpbmVzCltUb2Q6TGFyc10gVGFpbmEgaGF0IGdyYWRlIFNjaGxlaWNoZXIgdW1nZWJyYWNodC4KRGVyIFdlY2hoaWVyIGphbW1lcnQgbGVpc2UuCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRGllZGVyLCAgMy4gTm92IDIwMDAsIDAxOjU5OjE4KToKRGVpbiBGcmV1bmQgRWxlbmRpbCB0ZWlsdCBEaXIgbWl0OiBVcHMsIGljaCB2ZXJnYXNzIFRlbGVwb3J0IGlzdCBqZXR6dApEZWluIEZyZXVuZCBFbGVuZGlsIHRlaWx0IERpciBtaXQ6IGdlZmFlaHJsaWNoIDspICEKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IHRlbGVwb3J0IGlzdCBnZWZhZWhybGljaD8gc2VpdCB3YW5uIGRlbm4gZGFzPwpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogOikKW1RvZDpMYXJzXSBFaW4gQ291Z2FyIGhhdCBnZXJhZGUgRWxlbmRpbCB1bWdlYnJhY2h0LgoKVW5nZXNjaG5pdHRlbi4KRGllZGVyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGV1dHNjaGxhbmRmdW5rIChDYXR3ZWF6bGUsICAzLiBOb3YgMjAwMCwgMDk6Mjk6MDkpOgp+IyEgcm49RGllZGVyIHJ0PTk3MzIwNTE5NiByZz1zY2htYXJybgp+IyEgdGlkPTk3MzIwNTE5NgpadSBkaWVzZW0gVGhlbWEgaXN0IG1pciBmb2xnZW5kZXMgUHJvYmxlbSBlaW5nZWZhbGxlbjoKV2llIGlzdCBlaWdlbnRsaWNoIGRpZSBiZXJ1ZmxpY2hlIEJlemVpY2hudW5nIHZvbiBkZW4gTGV1dGVuLCAKZGllIGRpZSBMZWljaGVuIChpbiBNb3JkZmFlbGxlbiBldGMuKSBwaG90b2dyYXBoaWVyZW4/CllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEZXV0c2NobGFuZGZ1bmsgKFNpbHZhbmEsICAzLiBOb3YgMjAwMCwgMDk6MzI6MjUpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTk3MzI0MDE0OSByZz1zY2htYXJybgp+IyEgdGlkPTk3MzIwNTE5NgpQaG90b2dyYXBoIGRlciBQYXRob2xvZ2llIG9kZXIgUGhvdG9ncmFwaCBkZXIgU3B1cmVuc2ljaGVydW5nLCBqZSBuYWNoIGRlbSwKZnVlciB3ZWxjaGVuICJWZXJlaW4iIHNpZSBhcmJlaXRlbi4gU293YXMgd2llICJOZWtyb3Bob3RvbG9nZSIgZ2lidCdzIGFmYWlrCm5pY2h0IGFscyBCZXJ1ZnNiZXplaWNobnVuZy4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERldXRzY2hsYW5kZnVuayAoQ2F0d2VhemxlLCAgMy4gTm92IDIwMDAsIDA5OjM0OjUzKToKfiMhIHJuPVNpbHZhbmEgcnQ9OTczMjQwMzQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTczMjA1MTk2CkhtLCBOZWtyb3Bob3RvbG9nZSB3YWVyIG5lbiBzY2hvZW5lciBNb25zdGVybmFtZSA6KQonRWluIE5la3JvcGhvdG9sb2dlIHBob3RvZ3JhcGhpZXJ0IERpY2ggbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbicKa2xpbmd0IHp3YXIgc2VsdHNhbSwgYWJlciBtYW4ga29lbm50ZSBkYSBiZXN0aW1tdCBuZSBzY2hvZW5lIFRvZGVzbWVsZHVuZwpkcmF1cyBiYXN0ZWxuIDopCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGV1dHNjaGxhbmRmdW5rIChZZW5kaSwgIDMuIE5vdiAyMDAwLCAxMDozNTo1Nik6Cn4jISBybj1TaWx2YW5hIHJ0PTk3MzI0MDM0NSByZz1zY2htYXJybgp+IyEgdGlkPTk3MzIwNTE5NgpEYXMgd2FlcmUgZG9jaCBhYmVyIGVpbiBOZWtyb3Bob3RvZ3JhcGgsIGRlbm4gc292aWVsIGhhdCBkZXIgamEgbWl0IGRlbQpMb2dvcy1UZWlsIGRlciBWZXJhbnN0YWx0dW5nIG5pY2h0IHp1IHR1biwgb2Rlcj8gRGVyIGJpbGRldCBqYSBudXIgYWIuCgpZVFksCiAgICAgS2x1Z3NjaGVpc3NlcgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBQYWRyZWljIDU1IC0+IDQ1IChBbmF0b2wsICAzLiBOb3YgMjAwMCwgMTE6MDk6MTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk3MzI0MjgzNiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTcxMzQ4OTgxCkdlYm9yZW4gaW4gS29lbG4uCgpKdW5nZS4gV2llIHdpcnN0IER1IGRhbWl0IG51ciBmZXJ0aWcuLi4uCgpBbmF0b2wgKmdyaW1tYm9ybnRyb2VzdCoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogUGFkcmVpYyA1NSAtPiA0NSAoR3JpbW1ib3JuLCAgMy4gTm92IDIwMDAsIDExOjExOjAxKToKfiMhIHJuPUFuYXRvbCBydD05NzMyNDYxNTEgcmc9c2NobWFycm4KfiMhIHRpZD05NzEzNDg5ODEKSmVwcCwgbWFjaHQgZGVuIEF1ZmVudGhhbHQgaW4gQmF5ZXJuIG5pY2h0IGViZW4gZWluZmFjaGVyLiBBYmVyIG1hbiBrYW5uIGhhbHQKbmljaHQgYWxsZXMgaGFiZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmltbWVyIHdpZWRlciBMdXN0aWcgKFRoYW5vcywgIDMuIE5vdiAyMDAwLCAxMzozNzoxNSk6CmhheWFpCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3RlbiB1bmQgd2VzdGVuLgpEZXIgd3VldGVuZGUgQW50aHVrdC4gICAgICAgICAgICAgICAgICBEZXIgSGV0emVyZGFlbW9uIFJ5dGhvdGguCkhvdGhyb2cgZGVyIFNjaGFrYWxrb2VwZmlnZS4gICAgICAgICAgIEhvdGhyb2cgZGVyIFNjaGFrYWxrb2VwZmlnZS4KRmxheHRyaSBkZXIgYWV0emVuZGUgU2FldXJlZGFlbW9uLiAgICAgRGFlZGhlbCBkZXIgZWxmaXNjaGUgRGFlbW9uLgpDaG9jaG9zIGRlciBzY2h3YXJ6ZSBEYWVtb24uICAgICAgICAgICBIb3Rocm9nIGRlciBTY2hha2Fsa29lcGZpZ2UuCkRlciB3dWV0ZW5kZSBBbnRodWt0LiAgICAgICAgICAgICAgICAgIERlciBrbGVpbmUgVWVibWF0dS4KRGFlZGhlbCBkZXIgZWxmaXNjaGUgRGFlbW9uLiAgICAgICAgICAgSG90aHJvZyBkZXIgU2NoYWthbGtvZXBmaWdlLgpDaG9jaG9zIGRlciBzY2h3YXJ6ZSBEYWVtb24uICAgICAgICAgICBDaG9jaG9zIGRlciBzY2h3YXJ6ZSBEYWVtb24uCkhvdGhyb2cgZGVyIFNjaGFrYWxrb2VwZmlnZS4gICAgICAgICAgIERlciBIZXR6ZXJkYWVtb24gUnl0aG90aC4KRGVyIEhldHplcmRhZW1vbiBSeXRob3RoLiAgICAgICAgICAgICAgSG90aHJvZyBkZXIgU2NoYWthbGtvZXBmaWdlLgpEYWVkaGVsIGRlciBlbGZpc2NoZSBEYWVtb24uICAgICAgICAgICBIb3Rocm9nIGRlciBTY2hha2Fsa29lcGZpZ2UuCkRlciBIZXR6ZXJkYWVtb24gUnl0aG90aC4gICAgICAgICAgICAgIEhvdGhyb2cgZGVyIFNjaGFrYWxrb2VwZmlnZS4KRGVyIGtsZWluZSBVZWJtYXR1LiAgICAgICAgICAgICAgICAgICAgRWluIE9yay4KRGVyIEhldHplcmRhZW1vbiBSeXRob3RoLiAgICAgICAgICAgICAgSG90aHJvZyBkZXIgU2NoYWthbGtvZXBmaWdlLgpEZXIga2xlaW5lIFVlYm1hdHUuICAgICAgICAgICAgICAgICAgICBFaW4gT3JrLgpEYWVkaGVsIGRlciBlbGZpc2NoZSBEYWVtb24uICAgICAgICAgICBFaW4gc2VociBrcmFlZnRpZ2VyIEJhdWFyYmVpdGVyLU9yay4KRWluIGdyb3NzZXIgQmx1dGZsZWNrLiAoMykgICAgICAgICAgICAgCgpJY2gga2FubiBhdWNoIGZhc3QgZHJ1ZWJlciBsYWNoZW4KVGhhbm9zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaW1tZXIgd2llZGVyIEx1c3RpZyAoQ2F0d2VhemxlLCAgMy4gTm92IDIwMDAsIDEzOjQ3OjAxKToKfiMhIHJuPVRoYW5vcyBydD05NzMyNTUwMzUgcmc9c2NobWFycm4KfiMhIHRpZD05NzMyNTUwMzUKTmVuZWVlLCBsdXN0aWcgaXN0LCB3ZW5uIER1IGRhICd0b2V0ZSBhbGxlJyBtYWNoc3QuLi4KWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGltbWVyIHdpZWRlciBMdXN0aWcgKFBhcmFjZWxzdXMsICAzLiBOb3YgMjAwMCwgMTQ6MDA6MjQpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTk3MzI1NTYyMSByZz1zY2htYXJybgp+IyEgdGlkPTk3MzI1NTAzNQpFciBoYXQgZGEgZ2VmYWVsbGlnc3QgInRvZXRlIGFsbGUiIHp1IG1hY2hlbiEgRGFzIHNpbmQgc2NobGllc3NsaWNoIGJvZXNlCkRhZW1vbmVuIHVuZCBlciBpc3QgZWluIFRhbmppYW4uCgpQYXJhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHBhcnR5IC8gc3RhdGkgYmVpIGdvbGFzIChWYW5pb24sICAzLiBOb3YgMjAwMCwgMjE6MDk6MzUpOgp+IyEgcm49SGlnaHQgcnQ9OTczMjgyMDc5IHJnPXRyZWZmZW4KfiMhIHRpZD05NzMyODIwNzkKSG1tbSwgYmluIGljaCBkZXIgZWluemlnZSwgZGVyIGRlbiBFaW5kcnVjayBoYXQsIGRhIGdpYnQgZXMgQWxrb2hvbD8KViosIGtvbm50ZSBlcyBzaWNoIG5pY2ggdmVya25laWZlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthbm4gaWNoIG51ciBiZXN0YWV0aWdlbiAoVGhhbm9zLCAgMy4gTm92IDIwMDAsIDIxOjI3OjIyKToKCnVudCBzY2hyaXR0CkR1IGJpc3QgZ2FueiBzY2hvZW4gdW52b3JzaWNodGlnLiBXZW5uIFNpbHZhbmEgZGVuIGdsZWljaGVuIHRvZWRsaWNoZW4gSHVtb3IKaGFldHRlIHdpZSBQYXJhY2Vsc3VzLCB3YWVyZXN0IER1IGpldHp0IHRvdC4KCkRBUyBrYW5uIGljaCB3aXJrbGljaCBudXIgYmVzdGFldGlnZW4gOykKClRoYW5vcywgd2Vpc3Mgd2FzIGxlaWRlbiBoZWlzc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2FubiBpY2ggbnVyIGJlc3RhZXRpZ2VuIChEaWVkZXIsICAzLiBOb3YgMjAwMCwgMjE6Mjk6MzgpOgp+IyEgcm49VGhhbm9zIHJ0PTk3MzI4MzI0MiByZz1zY2htYXJybgp+IyEgdGlkPTk3MzI4MzI0MgphY2gsICJIdW1vciIgbmVubnQgbWFuIGRhcyBqZXR6dD8gOikKCkRpZWRlciwgc2FndCBkYSBuaXggbWVociB3ZWl0ZXIgenUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2FubiBpY2ggbnVyIGJlc3RhZXRpZ2VuIChQYXJhY2Vsc3VzLCAgMy4gTm92IDIwMDAsIDIyOjA2OjIxKToKfiMhIHJuPVRoYW5vcyBydD05NzMyODMyNDIgcmc9c2NobWFycm4KfiMhIHRpZD05NzMyODMyNDIKPiBUaGFub3MsIHdlaXNzIHdhcyBsZWlkZW4gaGVpc3N0LgoKQmlzdCBEdSBEaXIgZGEgd2lya2xpY2ggc2ljaGVyPwoKUGFyYWNlbHN1cyAtIGdlbWVpbiBncmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogcGFydHkgLyBzdGF0aSBiZWkgZ29sYXMgKEJpcmR5LCAgMy4gTm92IDIwMDAsIDIyOjA3OjQ0KToKfiMhIHJuPVZhbmlvbiBydD05NzMyODIxNzUgcmc9c2NobWFycm4KfiMhIHRpZD05NzMyODIwNzkKamV0enQgc2luZCBub2NoIG1laHIgZGEsIGFiYSBjYWtleSBmaGVsdCBub2NoIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEthbm4gaWNoIG51ciBiZXN0YWV0aWdlbiAoVGhhbm9zLCAgMy4gTm92IDIwMDAsIDIzOjAyOjA3KToKfiMhIHJuPVBhcmFjZWxzdXMgcnQ9OTczMjg1NTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTczMjgzMjQyCgpKQUFBQUFBQUFBQUFBQUFBQUEgIQoKVGhhbm9zIHdlaXNzIGVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBwYXJ0eSAvIHN0YXRpIGJlaSBnb2xhcyAoSGlnaHQsICA0LiBOb3YgMjAwMCwgMDA6NTU6MDYpOgp+IyEgcm49QmlyZHkgcnQ9OTczMjg1NjY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTczMjgyMDc5CmRlciBpcyBldHogZGFzIHdvIGljaCBoZXJnZWtvbW1lbiBiaW4gLm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoYWVoPyAoTXVhZGRpYiwgIDQuIE5vdiAyMDAwLCAxMDo1MTo0OSk6Ck11YWRkaWIgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IFNhbHpidXJnICh1ZWJlciBSZWNvcmRzIGZvdW5kIC4uLi4uKS4KCj8/IDopCgpNdWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBkZXIgVW50ZXJzY2hpZWQuLi4gKEdyaW1tYm9ybiwgIDQuIE5vdiAyMDAwLCAxNjowMToxNik6Cn4jISBybj1HYXN0MSBydD05NzMzNDk1MjEgcmc9c2NobWFycm4KfiMhIHRpZD05NzMzNDk1MjEKTnVyIG5vY2htYWwgYWxzIEVyaW5uZXJ1bmc6IEFydGlrZWwgdm9uIEdhZXN0ZW4gdmVyc2NoaWViZSBpY2ggbmljaHQgc29uZGVybgpsb2VzY2hlIHNpZSBnZW5lcmVsbCwgdW5hYmhhZW5naWcgdm9tIEluaGFsdC4KCkdyaW1tYm9ybiBkZXIgWmVuc29yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hsZWNodCBhdWZnZXBhc3N0PyAoTWlyYWthLCAgNC4gTm92IDIwMDAsIDE3OjIwOjE2KToKW1RvZDpMYXJzXSBFaW4gYWNodGFybWlnZXIgUHJpZXN0ZXIgZGVyIEFrYWRlbWllIGhhdCBnZXJhZGUgQ2h1Y2t5bGVpbgpbVG9kOkxhcnNdIHVtZ2VicmFjaHQuIDwxNzoxNTowNT4KW1RvZDplaW4gYWNodGFybWlnZXIgUHJpZXN0ZXIgZGVyIEFrYWRlbWllXSBNYW4gc29sbHRlIHNpY2ggbmljaHQgbWl0IGRlbQpbVG9kOmVpbiBhY2h0YXJtaWdlciBQcmllc3RlciBkZXIgQWthZGVtaWVdIEJvZXNlbiBhbmxlZ2VuLi4uICA8MTc6MTU6MDU+CgpmaW5nZXIgY2h1Y2t5bGVpbiAtPiAuLi4gei5aLiBhYndlc2VuZCwgR3J1bmQgIDogYmluIG1hbCBrdXJ6IGVpbmUgcmF1Y2hlbgoKSG1tbW0uCgpNaXJha2EgTWFuZHJvcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogaW1tZXIgd2llZGVyIEx1c3RpZyAoTXVwZmVsLCAgNC4gTm92IDIwMDAsIDE5OjI2OjI5KToKfiMhIHJuPVBhcmFjZWxzdXMgcnQ9OTczMjU2NDI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTczMjU1MDM1CkJhdXMgZG9jaCBlaW4uLi4gYWIgNSBib2VzZW4gR2VnbmVybiBpbSBSYXVtIG1hY2h0IGRlciBUYW5qaWFuIGF1dG9tYXRpc2NoCiJ0b2V0ZSBhbGxlIiA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGltbWVyIHdpZWRlciBMdXN0aWcgKFJhcmRpYW4sICA1LiBOb3YgMjAwMCwgMDI6MzA6MDEpOgp+IyEgcm49UGFyYWNlbHN1cyBydD05NzMyNTY0MjQgcmc9c2NobWFycm4KfiMhIHRpZD05NzMyNTUwMzUKRWJlbiwgdmllbGxlaWNodCB3YXIgZXIgZ3JhZCAiaGVpbGlnIiwgZGEgaGFldHRlIGVyIHNpY2ggYWxzIFRhbmppYW4gZGFubgpiZXNzZXIgYXVmIGlyZ2VuZHdlbGNoZSBFbmdlbCBnZXN0dWVyenQuLi4KClJhci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsbGVpbiA6KCggKEFuYWNyaW9uLCAgNS4gTm92IDIwMDAsIDA3OjQ0OjUxKToKCj4gICAgICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gU29uLCAgNS4gTm92IDIwMDAsIDA3OjIzOjMwICgxNiBUZWlsbmVobWVyKQoKT2Rhbi4uLi4uLi4uLi4uSi5zIFluZy4uLi4uLi4uLi4uLkoucyBHb3JkdXIuLi4uLi4uLi5KLnMgQ2hlbmcuLi4uLi4uLi4uSi56Cld1bGZlcmUuLi4uLi4uLmkucyBOb3N0cm9tby4uLi4uLi5Jd3MgU3ZldGxhbmEuLi4uLi4uSi5zIElsZXNzYS4uLi4uLi4uLkoucwpGbGludG5haWwuLi4uLi5KLlMgR2FuZHVsZi4uLi4uLi4uSi5aIEdydW1wZi4uLi4uLi4uLmp3UyBHcmVsbGdlbi4uLi4uLi5Kd1MKQW5hY3Jpb24uLi4uLi4uLi5TIERpZWRlci4uLi4uLi4uLkp3UyBHcmltbWJvcm4uLi4uLi5Kd20gUmlrdXMuLi4uLi4uLi4uSndFCkFuYWMgZnVlaGx0IHNpY2ggZWluc2FtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSaW5nZSA7LSkgKExpYXJhLCAgNy4gTm92IDIwMDAsIDAwOjIyOjI4KToKVW5nZXNjaG5pdHRlbiBpbm5lcmhhbGIgZWluZXIgU2VrdW5kZToKCkZpcmVoYXdrICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpEZWluIFZlcmxvYnVuZ3NyaW5nIGxldWNodGV0IGF1Zi4gRHUgbGllc3Q6IEZpcmVoYXdrIGlzdCBudW4gZGEhCgpGaXJlaGF3ayAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKV2llIHNjaGFkZSEgRmlyZWhhd2sgdmVybGFlc3N0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIQoKRGVpbiBWZXJsb2J1bmdzcmluZyBsZXVjaHRldCBhdWYuIER1IGxpZXN0OiBGaXJlaGF3ayBpc3QgbnVuIG5pY2h0IG1laHIgZGEhCgpEZWluIEhlcnogc2NobGFlZ3QgYXVmIGVpbm1hbCBzY2huZWxsZXIsIGRlbm4gRmlyZWhhd2sgaGF0IGdlcmFkZSBkYXMKTW9yZ2VuR3JhdWVuIGJldHJldGVuIQoKTWFuIHNvcnRpZXJlIHNlbGJzdC4gOy0pCgpMWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJpbmdlIDstKSAoR3JpbW1ib3JuLCAgNy4gTm92IDIwMDAsIDAwOjI3OjIwKToKfiMhIHJuPUxpYXJhIHJ0PTk3MzU1Mjk0OCByZz1zY2htYXJybgp+IyEgdGlkPTk3MzU1Mjk0OApXZW5uIGljaCBEaWNoIGRhIGF1ZmtsYWVyZW4gZGFyZiwgYmV2b3IgbWl0IGRlciBFaGUgZGllIEVudHRhZXVzY2h1bmcga29tbXQ6ClNvd2FzIG5lbm50IG1hbiB3b2hsIGVpbmVuIFF1aWNraWUuCgpOYWphLCBtdXNzIGplZGVyIHNlbGJlciB3aXNzZW4uLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSaW5nZSA7LSkgKExpYXJhLCAgNy4gTm92IDIwMDAsIDAwOjI5OjU5KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NzM1NTMyNDAgcmc9c2NobWFycm4KfiMhIHRpZD05NzM1NTI5NDgKSG0sIGRlciBWcmluZyB3YXIgc2NobmVsbGVyLCBrb2VubnRlIHdhcyBkcmFuIHNlaW4uIDstKQoKTFoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGV1dHNjaGxhbmRmdW5rIChaYXJuaXlhLCAgNy4gTm92IDIwMDAsIDEwOjAyOjE3KToKfiMhIHJuPUNhdHdlYXpsZSBydD05NzMyNDAxNDkgcmc9c2NobWFycm4KfiMhIHRpZD05NzMyMDUxOTYKZGEgZmFlbGx0IG1pciBlaW5lciBhdXMgZGVyIG5ldWVuIFNob3cgdm9uIE1pY2hhZWwgTWl0dGVybWVpZXIgZWluPiAKCldhcyBzaW5kIGRhcyBlaWdlbnRsaWNoIGZ1ZXIgTGV1dGUsIGRpZSBrbGVpbmUgSmVzdXNlIGF1ZiBIb2x6a3JldXplIG5hZ2Vsbj8KVW5kIHNpbmQgZGllIHN0b2x6IGF1ZiBpaHJlbiBKb2I/IFVuZCB3YXMgZXJ6YWVobGVuIGRpZSBzbyBpaHJlbiBLaW5kZXJuIHVlYmVyCmRpZSBBcmJlaXQ/Li4uLgoKTWFyYwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGV1dHNjaGxhbmRmdW5rIChPbGxpLCAgNy4gTm92IDIwMDAsIDEyOjA4OjIzKToKfiMhIHJuPVphcm5peWEgcnQ9OTczNTg3NzM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTczMjA1MTk2CkRhbm4gc2NoZWludCBkaWUgU2hvdyBqYSBuaWNodCBnYW56IHNvIG5ldSB6dSBzZWluIDopCgpPbGxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvYiBkZXIgd2llZGVyIGF1ZndhY2h0ID8gKFRhbmdhbHVyLCAgNy4gTm92IDIwMDAsIDE2OjI4OjM0KToKUGxvZXR6bGljaCBob2Vyc3QgRHUgZWluIGxhdXRlcyBTY2huYXJjaGVuLiBUb2Rlc2JvdGUgaGF0IGRlbSBTY2hyYXQKc2VpbiBsYW5nZXJzZWhudGVzIFNjaGxhZm1pdHRlbCBnZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkludGVyZXNzYW50ZSBVUkwuLi4gKFpvb2ssICA3LiBOb3YgMjAwMCwgMTc6NDQ6MTkpOgpodHRwOi8vbWcubXVkLmRlL2NnaS1iaW4vbXVkd3d3P1JFUT1maW5nZXImVVNFUj1wYWRyZWljCgotLT4gRmVobGVyOiBBbmZyYWdlIGtvbm50ZSBuaWNodCBiZWFyYmVpdGV0IHdlcmRlbiEKCldhcyB3aWxsIHVucyBkYXMgc2FnZW4/Cgpab29rLCBzaWNoIHd1bmRlcm5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEludGVyZXNzYW50ZSBVUkwuLi4gKEdyaW1tYm9ybiwgIDcuIE5vdiAyMDAwLCAxNzo1MTowNik6Cn4jISBybj1ab29rIHJ0PTk3MzYxNTQ1OSByZz1zY2htYXJybgp+IyEgdGlkPTk3MzYxNTQ1OQpTb3dhcyBuZW5udCBtYW4gInZvcmF1c2VpbGVuZGVuIEdlaG9yc2FtIi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptdXNzdGUgamV0enQgc2Vpbi4uLiA7KSAoWmFybml5YSwgIDkuIE5vdiAyMDAwLCAxMToyMjoxMSk6CkRpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgpHb2xhcyBydWZ0OiBoaSBzY2hhdHoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRhcyBuZW5udCBtYW4gR2x1ZWNrIGdlaGFidCAoWmFybml5YSwgIDkuIE5vdiAyMDAwLCAxMTozMjo0Nik6CiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBQYWRyZWljIGluIFJ1YnJpayAidHJlZmZlbiIuCj4gbm4KVWViZXJnZWhlIEFydGlrZWwgMTAwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTdGFtbXRpc2NoIEJvbm4gKEFuYXRvbCwgIDkuIE5vdiAyMDAwLCAxMzoxNjo1MCk6Cn4jISBybj1QYWRyZWljIHJ0PTk3Mzc2NTkzMiByZz10cmVmZmVuCn4jISB0aWQ9OTczNjg4NDYwClA+IGRlbiBlcnN0ZW4gSGlud2VpcyBnaWJ0cyBkaXJla3Q6IGFsc28gaWNoIGJpbiBNaXR0d29jaCBzbyBhYiAyMDowMCBpbiBkZXIKUD4gSGFybW9uaWUgaW4gRW5kZW5pY2ggYW56dWZpbmRlbiA6bykKCkR1IHNvbGx0ZXN0IERpY2ggZW50c2NoZWlkZW46IFdpbGxzdCBEdSwgZGFzcyBMZXV0ZSBrb21tZW4gb2RlciB3aWxsc3QgRHUKZGFzIG5pY2h0PyA7KQoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTdGFtbXRpc2NoIEJvbm4gKFRodWZoaXIsICA5LiBOb3YgMjAwMCwgMTM6MTg6MTYpOgp+IyEgcm49QW5hdG9sIHJ0PTk3Mzc3MjIxMCByZz1zY2htYXJybgp+IyEgdGlkPTk3MzY4ODQ2MApNZXJrZTogRGVyIGZydWVoZSBWb2dlbCBmYWVuZ3QgZGVuIFd1cm0hCkFiZXI6IERlciBmcnVlaGUgV3VybSBlcmxlaWRldCBlaW5lbiBzY2huZWxsZW4gVG9kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU3RhbW10aXNjaCBCb25uIChBbmF0b2wsICA5LiBOb3YgMjAwMCwgMTM6MjI6NDYpOgp+IyEgcm49VGh1ZmhpciBydD05NzM3NzIyOTYgcmc9c2NobWFycm4KfiMhIHRpZD05NzM2ODg0NjAKV2VubiBlcyBkb2NoIHdlbmlnc3RlbnMgZWluIHNjaG5lbGxlciBUb2QgV0FFUkUuLi4KClNDTlJBIDspCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU3RhbW10aXNjaCBCb25uIChNeXRocmFuLCAgOS4gTm92IDIwMDAsIDE2OjUwOjExKToKfiMhIHJuPVRodWZoaXIgcnQ9OTczNzcyMjk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTczNjg4NDYwCkljaCBkYWNodGUgZGFzIGhlaXNzdDoKRGVyIGZydWVoZSBWb2dlbCBmYWVuZ3QgZGVuIFd1cm0sIGFiZXIgZXJzdCBkaWUgendlaXRlIE1hdXMga29tbXQgYW4gZGVuCkthZXNlLi4uCgoqU0NITkFQUCoKCk15dGhyYW4sIGZlbGluaXNjaCBzaW5uaWVyZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYWphLCBkZXIgZHVua2xlIE1laXN0ZXIgOikgKFRoYW5vcywgIDkuIE5vdiAyMDAwLCAyMzoxMjowOCk6CgpMZWd0IGV1Y2ggbmljaHQgbWl0IGlobSBhbiA6CgogRG90dGVyYmFydCBzYWd0OiBrZXR6ZXIgOikKc2FnIGhlaGVoZQpEdSBzYWdzdDogaGVoZWhlCnNhZyBkdSBoYXN0IG1pY2ggZXJ3aXNjaHQsIG51biBtdXNzdCBkdSBzdGVyYmVuLi4uLgpEdSBzYWdzdDogZHUgaGFzdCBtaWNoIGVyd2lzY2h0LCBudW4gbXVzc3QgZHUgc3RlcmJlbi4uLi4KPiBEb3R0ZXJiYXJ0IGdyaW5zdC4KRG90dGVyYmFydCBkcnVlY2t0IGF1ZiBlaW4gQXVnZSBkZXIgRHJhY2hlbnN0YXR1ZS4KRG90dGVyYmFydCB3aXJkIHZvbiBlaW5lbSBCbGl0eiBnZXRyb2ZmZW4uCkRvdHRlcmJhcnQgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KClRoYW5vcywgaGV1dGUgZHVua2xlciBNZWlzdGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb3cgKFRoYW5vcywgMTAuIE5vdiAyMDAwLCAwMzoxNDoxMik6CiBOb3JrYW4gZGVua3QgLiBvIE8gKER1IG9kZXIgaWNoLCBkYXMgaXN0IGhpZXIgZGllIEZyYWdlISkKRHUgLS0tLS0tLS0tLU5vcmthbi0tLS0tLS0tLS0tLS0tLT4gSEFSVApOb3JrYW4gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KClRoYW5vcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVuZ2VyISEhIChPYmksIDEwLiBOb3YgMjAwMCwgMTQ6NDU6MjgpOgpEaXIga251cnJ0IGRlciBNYWdlbi4KRHJhY2hubyBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCkRlaW4gRnJldW5kIERyYWNobm8gdGVpbHQgRGlyIG1pdDogcmVoaSA6KSBTbywgTWl0dGFnIGlzdCBnZWdlc3Nlbi4gOykKCnRvbGxlcyBUaW1pbmcsIERyYWNobm8hCgpPQkkgLSBodW5ncmlnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvcmtzIC4uLiAoSGVyb21jZmx5LCAxMC4gTm92IDIwMDAsIDE4OjA5OjM0KToKCmJlaW0gb3JrbWFnaWVyLi4uCgppZGVudGlmaXppZXIgZHJhY2hlbnNjaGFlZGVsCkRlciBNYWdpZXIga29uemVudHJpZXJ0IHNpY2ggdW5kIHNwcmljaHQgZWluaWdlIG1hZ2lzY2hlIFdvcnRlLgoKRGVyIE1hZ2llciBzYWd0OiBPSy4gRGllIEluZm9ybWF0aW9uIGlzdDoKCkRpZXMgd2FyIGVpbmVzIGRlciBlaW5tYWwgS29wZiByLnRlbiBEcmFjaGVuLgoKCmxlcm4gZGVpbmVtIG9ya3MgbWFsIGRldXRzY2ggbW9yZ290aCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG9ya3MgLi4uIChPYmksIDEwLiBOb3YgMjAwMCwgMTg6MTE6NTUpOgp+IyEgcm49SGVyb21jZmx5IHJ0PTk3Mzg3NjE3NCByZz1zY2htYXJybgp+IyEgdGlkPTk3Mzg3NjE3NApobW1tIHdhciBkYXMgdm9uIERpciBqZXR6dCBlaW4gdmVyc2VoZW4sIG9kZXIgbXVzcyBEaWNoIGF1Y2ggbWFsIGVpbmVyIGRldXRzY2gKbGVybmVuIDotKQoKT0JJCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IG9ya3MgLi4uIChIZXJvbWNmbHksIDEwLiBOb3YgMjAwMCwgMTg6MTM6MDEpOgp+IyEgcm49T2JpIHJ0PTk3Mzg3NjMxNSByZz1zY2htYXJybgp+IyEgdGlkPTk3Mzg3NjE3NAoKaGFzdCBkdSB3YXMgYW4gbWVpbmVuIGRldXRzY2ggYXVzenVzZXR6ZW4gPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogb3JrcyAuLi4gKE1vcmdvdGgsIDEwLiBOb3YgMjAwMCwgMTg6MzM6MDUpOgp+IyEgcm49SGVyb21jZmx5IHJ0PTk3Mzg3NjM4MSByZz1zY2htYXJybgp+IyEgdGlkPTk3Mzg3NjE3NApBTHNvIHdlbm4gZHUgZ2VuYXUgaGlubGllc3QsIHNpZWhzdCBkdSwgZGFzcyBlcyBBQlNJQ0hUIGlzdC4gOy0pCkxhc3MgbWFsIGRhcyBFbGVtZW50YXJzY2h3ZXJ0IElEZW4gb2RlciBldHdhcyBtaXQgYWVobmxpY2ggbGFuZ2VtIHRleHQgOy0pKSAKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmdlbG4gKE11YWRkaWIsIDEwLiBOb3YgMjAwMCwgMjM6MDg6MzIpOgpEdSBiZXRyYWNodGVzdCBkaWUgYmllZ3NhbWUgQW5nZWwgZWluZ2VoZW5kLgpTaWUgaXN0IGVpbmUgMS1IYW5kd2FmZmUgdW5kIGdlaG9lcnQgZGVyIEdydXBwZSBkZXIgU3RhbmdlbndhZmZlbiBhbi4gU2llCm1hY2h0IHNpY2hlcmxpY2ggZWluZW4gbGFlY2hlcmxpY2hlbiBTY2hhZGVuLiBTaWUgc3RpY2h0IHdpcmtsaWNoIHNlaHIKZ2VmYWVocmxpY2guClNpZSBpc3QgbmljaHQgZ2VzY2hhZXJmdC4gU2llIGhhdCB1bmdlZmFlaHIgZWluIEdld2ljaHQgdm9uIDMyNCBHcmFtbS4gRHUKZmluZGVzdCwgZGFzcyBzaWUgdm9lbGxpZyB3ZXJ0bG9zIGlzdC4gU2llIGlzdCBuaWNodCBiZXNjaGFlZGlndC4KCnNvc28sIG5pY2h0IGdlc2NoYWVyZnQuLi4KCk11YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG9ya3MgLi4uIChSYXJkaWFuLCAxMC4gTm92IDIwMDAsIDIzOjIwOjA5KToKfiMhIHJuPUhlcm9tY2ZseSBydD05NzM4NzYxNzQgcmc9c2NobWFycm4KfiMhIHRpZD05NzM4NzYxNzQKRHUgZXJ3YXJ0ZXN0IHZvbiBlaW5lbSBPcmsgdGF0c2FlY2hsaWNoIHdvaGxhcnRpa3VsaWVydGUgTGF1dGU/PwoKUmFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2Vpc2hlaXQuLi4gKEx1ZywgMTEuIE5vdiAyMDAwLCAwMzoyOTo1OSk6CgpSYW50YW5wbGFuIHRlaWx0IERpciBtaXQ6IHRyYXVyaWcgdHJhdXJpZywgZGllIHNwdWVyZW4gbml4IG1laHIgOykKUGxvZXR6bGljaCBsZXVjaHRldCBkYXMgRmV1ZXJhbXVsZXR0IGdyZWxsIGF1Zi4gRHUgd2lyc3Qgdm9uIGVpbmVyIGxldWNodGVuZGVuCkF1cmEgZWluZ2VodWVsbHQuIEFscyBkaWUgQXVyYSBlcmxpc2NodCwgZnVlaGxzdCBkdSBkaWNoIHNlaHIgdmllbCBiZXNzZXIuCgpTb3NvCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkludGltaXRhZXRlbiAoU3dvdGwsIDExLiBOb3YgMjAwMCwgMTI6MjQ6MDEpOgpBcmFuY2lhIHdpcmZ0IERpciBub2NoIGVpbmVuIEJsaWNrIHp1IHVuZCBmbHVlc3RlcnQ6IEljaCBnZWhlIGpldHp0IGF1ZiBkaWUKVG9pbGV0dGUuCgpIbW0uLi5pbnRlcmVzc2FudC4uLi4KClN3b3RsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgaXN0IG5lIE1pbmlxdWVzdD8gKEVzc2VuLCAxMS4gTm92IDIwMDAsIDE0OjExOjMyKToKW0FsbGdlbWVpbjpMaW5mbGFzXSBnaWJzIGRhIGF1Y2ggbmUgcXVlc3QgdW0gYW1hbGdydW0gaGVydW0gb2RlciBpc3QgZGFzCltBbGxnZW1laW46TGluZmxhc10gZXJzdG1hbCBudXIgenVtIGd1Y2tlbj8KW0FsbGdlbWVpbjpLYW11aV0gZ2lidCBuZSBtaW5pcXVlc3QKW0FsbGdlbWVpbjpMaW5mbGFzXSBhbHNvIGZ1ZXIgenQgb2RlciBuZSByaWNodGlnZSBxdWVzdCBudXIgZnVlciBrbGVpbmUgbGV1dGUKW0FsbGdlbWVpbjpMaW5mbGFzXSAoendlcmdlPykKCkVzc2VuLCBrYW5uIHNpY2ggZWluIEdyaW5zZW4gbmljaHQgdmVya25laWZlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2VoLi4uIGljaCB3YXJzIG5pY2h0ICpmbG9ldHBmZWlmKiA7KSAoVmFybGFyaW9uLCAxMi4gTm92IDIwMDAsIDAwOjI1OjI0KToKRHUgdGVpbHN0IEZpcmVoYXdrIG1pdDogSGFsbG8sIEZldWVyaGFrZW4sIHNjaG9lbmVuCkR1IHRlaWxzdCBGaXJlaGF3ayBtaXQ6IC4uLiBHcnVzcyB2b24gTXVwZmVsIDspClRvZDpMYXJzIFB1cmUgTWFnaWUgaGF0IGdlcmFkZSBGaXJlaGF3ayB1bWdlYnJhY2h0LgpUb2Q6UHVyZSBNYWdpZSBNYWdpZXIgc2luZCBkb2NoIGRpZSBiZXN0ZW4uIENoYW90aXNjaGUgTWFnaWVyIG5vY2ggbmUgU3B1cgpUb2Q6UHVyZSBNYWdpZSBiZXNzZXIgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2Vpc2hlaXQuLi4gKFRoYW5vcywgMTIuIE5vdiAyMDAwLCAwMjo1OTo0MSk6Cn4jISBybj1MdWcgcnQ9OTczOTA5Nzk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTczOTA5Nzk5CkhleSBMdWcsIHNlaXQgd2FubiBoYWJlbiBkZW4gR2FyZGllcyBiaXR0ZSBGZXVlcmFtdWxldHRlID8KCkR1IGxhZXNzdCBkaWNoIGFsc28gYXVzcnVlc3RlbiA/IApUcmF1cmlnIFRyYXVyaWcgOikKClRoYW5vcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG0uLi4/IChSYXl6ZWVsLCAxMi4gTm92IDIwMDAsIDIwOjQ1OjQxKToKRGVpbiBGcmV1bmQgTm9raSBkcnVlY2t0IEV1Y2gga3JhZWZ0aWcgYXVzIGRlciBGZXJuZS4KTm9raSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCkhhYiBpY2ggamV0enQgbmUgZ2VzcGFsdGVuZSBQZXJzb2VubGljaGtlaXQsIG9kZXIgd2FzIDopClJheSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5lY3JvbWFudGVuLU9ya3M/IChPaGFtLCAxMy4gTm92IDIwMDAsIDAyOjIxOjM3KToKRGllc2VyIE9yayBnZWhvZXJ0IHp1ciBTdGFkdHdhY2hlLiBFciBwYXRyb3VsbGllcnQgZHVyY2ggZGllIGdhbnplIFN0YWR0IHVuZApbLi5dCkVyIHRyYWVndCBiZWkgc2ljaDoKRWluIFRhdWNoZXJhbnp1Zy4gICAgICAgICAgICAgICAgICAgICAgRGllIHZlcmZhdWx0ZW4gRWluemVsdGVpbGUgU3dvdGxzLgpbLi5dCgouLi53b2Z1ZXIgYnJhdWNodCBkZXIgZGVubiBkaWUgTGVpY2hlPz8gOy0pCgpPaGFtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdGFUaSBNdWVuc3RlciAxNS4xMS4yMDAwIChIdW1uaSwgMTMuIE5vdiAyMDAwLCAxNDoyMjo1OCk6Cn4jISBybj1Gb29iYXIgcnQ9OTc0MTE4NTYyIHJnPXRyZWZmZW4KfiMhIHRpZD05NzQxMTg0NDUKWnVtIFNjaHV0eiB2b24gRm9vYmFyIHNjaGxhZ2UgaWNoIGVpbmUgcnVicmlrICxkYW5lYmVud2VyZmVuJyB2b3IuCgpIdW1uaQooaGV1dGUgbWFsIGJlc29uZGVycyBzdWJ0aWwpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXb3chIFRvbGxlIExlaXN0dW5nLi4uLiAoWm9vaywgMTMuIE5vdiAyMDAwLCAyMjo1MDoyNCk6CkR1IHdpcmZzdCBCZWxnYXJpYWQgZGVuIGZhdWxlbmRlbiBGaXNjaCBhbiBkZW4gS29wZi4KQmVsZ2FyaWFkIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCgpab29rIGZyYWd0OiBHZWh0IGRhcyBpbW1lcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQeXJhbWlkZW5xdWVzdCAoU2l1YW4sIDE0LiBOb3YgMjAwMCwgMTQ6MDk6MTcpOgp+IyEgcm49V2ltIHJ0PTk3NDIwNzI2MSByZz1kLnd1ZXN0ZQp+IyEgdGlkPTk3NDIwNzI2MQp3ZW4gYXVzYmF1ZW4/CmRlbiBidWcgb2RlciBkZW4gc3BpZWxlcj8KCnNjbnIsClNpdWFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdlaXNoZWl0Li4uIChMdWcsIDE0LiBOb3YgMjAwMCwgMjA6MDg6NDEpOgp+IyEgcm49VGhhbm9zIHJ0PTk3Mzk5NDM4MSByZz1zY2htYXJybgp+IyEgdGlkPTk3MzkwOTc5OQoKQWxzbyBUaGFub3M6IE5hdHVlcmxpY2ggbGFzc2UgSUNIIG1pY2ggYXVzcnVlc3Rlbi4gSWNoIGhhYnMgc2NobGllc3NsaWNoIG5pY2h0Cm5vZXRpZywgRHJlY2tzYXJiZWl0IHp1IG1hY2hlbi4KCkRpZSBuaWVkZXJlbiBSYWVuZ2UgdHJldGVuZApMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyBtYW4gaW4gbmV3c2dyb3VwcyBzbyBmaW5kZXQgLi4uIChKZW5hbmRyYSwgMTUuIE5vdiAyMDAwLCAwMDowMDowNyk6CmF1cyBkZXIgZmFxIHZvbiByZWMuZ2FtZXMubXVkLm1pc2M6CgpBbiBMUE1VRCBXaXphcmQgaXMgYSBwbGF5ZXIgd2hvIGhhcyB3b24gdGhlIGdhbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJVTU1TPyAoUGFyZGF1eiwgMTUuIE5vdiAyMDAwLCAwMDoxNjo0Nik6CltLYXJsc3J1aGU6QmFtYmkgZmFlbGx0IHRvZG11ZWRlIGluIHNlaW4gQmV0dGNoZW4uXQpFaW4gbGF1dGVyIEtuYWxsIGhhbGx0IHZvbSBHZWJpcmdlIGhlcnVlYmVyLgoKUGFyZGF1eiBtZWludDogdHV0IGRhcyBuaWNodCB3ZWg/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgendlaXRlIEdlc2ljaHQgPyAoS2FkYWJyYSwgMTUuIE5vdiAyMDAwLCAyMzowMToxNCk6Ck1hZ2dpIHd1ZXJ6dCBkZWluZSBTdXBwZS4KTWFnZ2kgd3Vlcnp0IG5hY2ggbmFjaCBXZXN0ZW4gd2VpdGVyLgpEZWluIEZyZXVuZCBEaXJpb24gaG9sdCBlaW5lbiBLb2NobG9lZmZlbCBhdXMgZGVyIEZlcm5lLgoKQWVoIGFoc28Ka2FkYWJyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhcyB6d2VpdGUgR2VzaWNodCA/IChaZXBoeXIsIDE1LiBOb3YgMjAwMCwgMjM6MDI6NDIpOgp+IyEgcm49S2FkYWJyYSBydD05NzQzMjU2NzQgcmc9c2NobWFycm4KfiMhIHRpZD05NzQzMjU2NzQKU2VpIGZyb2gsIGRhc3MgRHUgbmljaHQgS2FydG9mZmVsIGhlaXNzdC4uIGRhcyBnYWViIGRlbSBnYW56ZW4KZGllIGJlc29uZGVyZSBXdWVyemUuLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEYXMgendlaXRlIEdlc2ljaHQgPyAoS2FkYWJyYSwgMTUuIE5vdiAyMDAwLCAyMzowNjo0OSk6Cn4jISBybj1aZXBoeXIgcnQ9OTc0MzI1NzYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc0MzI1Njc0CldhcnVtIHRyZWZmZW4gd2lyIGZ1ZW5mIHVucyBuaWNodCBtYWwgdW5kIG1hY2hlbiBlaW5lIEh1ZWhuZXJib3VsbGlvbiBtaXQKS2FydG9mZmVsIGVpbmxhZ2UsCk1hZ2dpIHVuZCBlaW5lbSBIYWFyIGluIGRlciBTdXBwZSA/IChEYXMgYmluIGRhbm4gaWNoIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYXBhZ2VpZW4hIChSb25kYSwgMTUuIE5vdiAyMDAwLCAyMzo0Mjo1OSk6CkVza2lsc2p1bmEga3JhZWNoenQ6IGtycm9vYWEgLi4uIE5pY2h0IGFsbGUgTWFnaWVyIHNpbmQgZ3V0IHp1IFZvZWdlbG4uCj54ZGVzIDEKRGVzdHJ1Y3Q6IEVpbiBQYXBhZ2VpIG5hbWVucyBFc2tpbHNqdW5hIC4uLi4gbC4gWy4uLi56b28vcGFwYWdlaSMxNjk3CkVza2lsc2p1bmEgaGF1dCBhYi4gCgpSb25kYSAqaWNoIHNhZyBqZXR6dCBuaXggdm9uIHZvZWdlbG4hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBhcGFnZWllbiEgKFJhcmRpYW4sIDE4LiBOb3YgMjAwMCwgMDE6NDI6MTIpOgp+IyEgcm49Um9uZGEgcnQ9OTc0MzI4MTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc0MzI4MTc5CkhtLi4uIGdlc2NocmllYmVuZXJ3ZWlzZSB2ZXJsaWVydCBkaWVzZXIgYXVzZ2VsdXRzY2h0ZSBXaXR6IGphIHNlaW5lClp3ZWlkZXV0aWdrZWl0IDooIC4uLgoKUmFyLCA7KS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipzZXVmeiogKFRoYW5vcywgMTguIE5vdiAyMDAwLCAxNjoyNzo0NSk6CkR1IGhhc3QgRGljaCBhbHNvIGVudHNjaGllZGVuLgoKIEVzIGlzdCBldHdhcyBpbSBLbGFuZyBkaWVzZXIgZnVlbmYgV29ydGUsIHdhcyBEaWNoIGZyb2VzdGVsbiBsYWVzc3QuCkRpZSBTdGltbWUgZGVzIGdyZWlzZW4gUHJlZGlnZXJzIHZlcmxpZXJ0IHNpY2ggZmFzdCBpbiBkZXIgTGVlcmUgZGVzIGZlbnN0ZXItCmxvc2VuIFJhdW1lcyB1bmQgcnVmdCAtIHdpZSB1ZWJlcmFsbCBpbSBJbm5lcmVuIGRpZXNlcyBhdXNnZWhvZWhsdG4gYXVzClNjaHdlaWdlbiB1bmQgRHVua2VsaGVpdCB1bmQgZXJzdGFycnRlciBaZWl0IGVyc2NoYWZmZW5lbiBLb21wbGV4ZXMgLSBrZWluZQpob2VyYmFyZW4gRWNob3MgaGVydm9yLCBzb25kZXJuIHZlcnNpY2tlcnQgaXJnZW5kd28gendpc2NoZW4gZGVuIFJpdHplbiBkZXIKUmVhbGl0YWV0LgoKRHUgYmVlbmRlc3QgRGVpbmUgTWVkaXRhdGlvbi4KCmdsYXViZSBkYXMgYnJhdWNodCBrZWluZSBlcmtsYWVydW5nLCBvZGVyID8KClRoYW5vcyBzZXVmenQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0ZXN0YW1lbnQgKEplbGthLCAxOS4gTm92IDIwMDAsIDEzOjE5OjIxKToKSWNoIGhvZmZlIGRhcyBpY2ggdWViZXJsZWJlIC0gc2NobGllc3NsaWNoIGhhYiBpY2ggZGVuIHNlZ2xlciBkYWJlaSA6KSA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bHRyYWt1cnogKFRoYW5vcywgMTkuIE5vdiAyMDAwLCAyMjo1NToyMyk6CkVpbiBXZWdoaWVyIHNjaGxhZWd0IERpY2ggcGxvZXR6bGljaCB1bmQgdm9lbGxpZyB1bmVyd2FydGV0IG1pdCBlaW5lbQpWb2xsc3RyZWNrZXIuCkRlciBXZWdoaWVyIHplcnNjaG1ldHRlcnQgRGljaCBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KRGVyIFdlZ2hpZXIgZ3JlaWZ0IERpY2ggc2NobGFuZ2VuZ2xlaWNoIG1pdCBlaW5lbSBWb2xsc3RyZWNrZXIgYW4uCkRlaW4gSGVsbSBrdWVobHQgc2ljaCBrdXJ6IGFiLgpEZXIgV2VnaGllciB6ZXJzY2htZXR0ZXJ0IERpY2ggaW4ga2xlaW5lIFN0dWVja2NoZW4uCkRlciBXZWdoaWVyIGdyZWlmdCBEaWNoIG1pdCBkZW0gVm9sbHN0cmVja2VyIGFuLgpEZXIgV2VnaGllciB6ZXJzY2htZXR0ZXJ0IERpY2ggaW4ga2xlaW5lIFN0dWVja2NoZW4uCkRlciBWb2xsc3RyZWNrZXIgd2lsbCBEaXIgZGVuIFRvZGVzc3Rvc3MgdmVyc2V0emVuIQpEZXIgV2VnaGllciB6ZXJzdGFldWJ0IERpY2guCgpVbmQgZGFzIG1pdCBtYXggZWlzIHNjaHV0eiB1bmQgdiAxNzAgOikKTGFuZ3NhbSBmcmFnIGljaCBtaWNoIHdlciBkaWUgaGFlcnRlcmVuIERyb2dlbiBuaW1tdCAsIEtvbmt1cmVuemthbXBmID8KVGhhbm9zLCBzYWd0IDogd2VpdGVyIHNvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdWx0cmFrdXJ6IChBbmF0b2wsIDE5LiBOb3YgMjAwMCwgMjI6NTU6NTMpOgp+IyEgcm49VGhhbm9zIHJ0PTk3NDY3MDkyMyByZz1zY2htYXJybgp+IyEgdGlkPTk3NDY3MDkyMwpEZWZpbmllcmUgIm1heCBlaXMgc2NodXR6IiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB1bHRyYWt1cnogKE1hdGlzLCAxOS4gTm92IDIwMDAsIDIyOjU3OjM5KToKfiMhIHJuPVRoYW5vcyBydD05NzQ2NzA5MjMgcmc9c2NobWFycm4KfiMhIHRpZD05NzQ2NzA5MjMKQWxzbyAiU3R1ZWNrY2hlbiIgaXN0IGRvY2ggbm9jaCBoYXJtbG9zIGJlaSBlaW5lbSBzY2hsYW5nZW5nbGVpY2hlbgpBbmdyaWZmLiBVbmQgZXMgZ2lidCBhdWNoIG5vY2ggd2FzIHVlYmVyICJaZXJzdGFldWJlbiIuIDtvKQoKTWF0aXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB1bHRyYWt1cnogKFNreSwgMTkuIE5vdiAyMDAwLCAyMjo1ODowNyk6Cn4jISBybj1UaGFub3MgcnQ9OTc0NjcwOTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc0NjcwOTIzCnp1bSB0aGVtYSBkcm9nZW4gbmVobWVuIDopCihmaW5kZSB3ZWdoaWVyKQoKRHUgYmVmaW5kZXN0IERpY2ggYW0gRW5kZSBlaW5lcyBXYWxkd2VnZXMgZHVyY2ggZGVuCkdyaW1tc3dhbGQuIEltIFdlc3RlbiBrYW5uc3QgRHUgZWluZSBMaWNodHVuZyBlcmtlbm5lbi4KRXMgZ2lidCB2aWVsZSBzaWNodGJhcmUgQXVzZ2FlbmdlOiByYXVzLCBoaWxmZSwgd2VzdGVuLCBub3RhdXNnYW5nLCBhcmdoLAppY2h3aWxsaGllcnJhdXMsIGljaHdpbGxoaWVyd2VnLCBuaWNodHN3aWV3ZWcsIG1hYWFtaWlpaWlpLCB3ZWl0d2VnIHVuZAplZ2Fsd29oaW4uCkVpbiBBbXVsZXR0LgpEZXIgU3RlaW4gZGVyIEVyZGUuCkVpbiBkYWVtb25pc2NoZXIgUGFuemVyLgpEYXMgQW11bGV0dCBkZXIgU3RlaW5iZWlzc2VyLgpFaW5lIEdlbGRib2Vyc2UgbWl0IDE0Mzk1IE11ZW56ZW4uCkVpbiBnZWxiZXMgUG9zdHBha2V0IChnZW9lZmZuZXQpLgpFaW4gUmluZyBkZXIgS3JhZnQgKCsyKS4KMyBzY2h3YXJ6ZSBLbm9jaGVuc3BsaXR0ZXIuCkVpbmUgbWFnaXNjaGUgS3VnZWwuCkRlciBTdGVpbiBkZXMgV2Fzc2Vycy4KMTIgU2NocnVtcGZrb2VwZmUgdm9uIFdhdGVyIEx1aC4KRWluIFNjaGxlaW1iZXV0ZWwuCkVpbmUgSG9semJ1ZXJzdGUuCkVpbmUgV2lsZGxlZGVyaG9zZS4KRWluIFdhZmZlbmd1ZXJ0ZWwuCkVpbiBSdWNrc2Fjay4KRGVyIFVtaGFuZyBkZXMgZHJha29uaXNjaGVuIE9iZXJwcmllc3RlcnMuCkVpbiBTY29yZWFtdWxldHQuCkVpbiBncmF1ZXIgU3RlaW4uCkVpbiBQYWFyIEFkYW1hbnRzY2h1aGUuCkVpbiBFaXNoZWxtLgpFaW4gS25vY2hlbnNjaGlsZC4KRWluIEVpc3Bhbnplci4KRWluIEdsaXR6ZXJzY2h3ZXJ0LgpFaW4gYGBCb3JuIHRvIEtpbGwnJy1TdGlybmJhbmQuLgpFaW4gc2VsdHNhbWVyIEdlZ2Vuc3RhbmQuCgp1bmQgd2VyIG1pdCB0b2Rlc21hbHVzIHNjaG9uIHp1bSAydGVuIG1hbCB3ZWdoaWVyIGhhdXQsIHNvbGx0ZSBzaWNoIHVlYmVyIGRpZQpzdGFlcmtlIHZvbiBucGNzIG5pY2h0IGJlc2Nod2VyZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdWx0cmFrdXJ6IChUaGFub3MsIDE5LiBOb3YgMjAwMCwgMjI6NTk6MjkpOgp+IyEgcm49U2t5IHJ0PTk3NDY3MTA4NyByZz1zY2htYXJybgp+IyEgdGlkPTk3NDY3MDkyMwpUb2Rlc21hbHVzID8gd2FubiB3byB3aWUgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogdWx0cmFrdXJ6IChHb2xhcywgMjAuIE5vdiAyMDAwLCAwNjo0NjoyMyk6Cn4jISBybj1UaGFub3MgcnQ9OTc0NjcxMTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc0NjcwOTIzCmhhdHRlc3QgZHUgZXR3YSBkZW4gZWlzcGFuemVyIGFuPyAuLi4gbnVqYSwgZGFzIG1pdCBkZW0gd2VnaGllciB1ZWJlbiB3aXIgZGFubgpub2NobWFsLCBnZWxsIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdWx0cmFrdXJ6IChEYXJrd2luZywgMjAuIE5vdiAyMDAwLCAyMjo1MjozOCk6Cn4jISBybj1UaGFub3MgcnQ9OTc0NjcwOTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc0NjcwOTIzCm1heCBlaXMgc2NodXR6Li4uIGRhcyBrbGluZ3Qgd2lya2xpY2ggdmVyZGFtbXQgZ3V0LgoKRGFya3dpbmcsIGJlZWluZHJ1Y2t0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKenVmYWxsIChWaW5jZW50LCAyMC4gTm92IDIwMDAsIDIzOjQyOjMyKToKWndlaSB1bmFiaGFlbmdpZ2UgRXJlaWduaXNzZSBzaW5kIGhpZXIgYXVmZWluYW5kZXJnZXByYWxsdCAtIGltbWVyaGluCmx1c3RpZyBmdWVyIGRpZXNlIEdydXBwZToKMjAuMTEuMDAgMjM6NDA6MDAKCkNhdHdlYXpsZSBzY2hsZWljaHQgc2ljaCB2b24gaGludGVuIGFuIERpY2ggaGVyYW4uCkR1IGhhZWx0c3QgRGlyIGRpZSBOYXNlIHp1LgoKKmdyaW5zKgpWaW5jZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHp1ZmFsbCAoTHVnLCAyMC4gTm92IDIwMDAsIDIzOjQyOjU2KToKfiMhIHJuPVZpbmNlbnQgcnQ9OTc0NzYwMTUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc0NzYwMTUyCgpEYXMgd2FyIHZvbiBIaW50ZW4gYW4gTGFyaW5hLi4uCgpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHVsdHJha3VyeiAoR25vbWUsIDIwLiBOb3YgMjAwMCwgMjM6NTM6NTEpOgp+IyEgcm49R29sYXMgcnQ9OTc0Njk5MTgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc0NjcwOTIzCi4uLnVuZCBiZXN0aW1tdCBhdWNoIGRlbiBlaXNoZWxtISAqa2ljaGVyKgoKZ25PbWUKCnAucy4gYmVpIERFTiA0IGF0dGFja2VuIGhhZXR0ZSBkaXIgYXVjaCB2b3JzaWNodCAxOTAgbml4IGdlbnV0enQuCiAgICAgbmUgZ3V0ZSBzY2hsYW5nZSBpc3QgaGFsdCBuZSBndXRlIHNjaGxhbmdlLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFchIChab29rLCAyMS4gTm92IDIwMDAsIDAxOjIxOjM4KToKW0tsZXJ1czpEUkVBTUVSXSB3aWUga2FubiBtYSBubGVwcmEga3VyaWVyZW4/PwpbS2xlcnVzOkhvdXNlaG9sZGVyXSB0ZXNhZmlsbQpbS2xlcnVzOkRSRUFNRVJdIG5lZSwgZWhybGljaCBtYWwgamV0enQgOikKW1RvZDpMYXJzXSBEaWUgc2Nod2FyemUgTGVwcmEgaGF0IGdlcmFkZSBEcmVhbWVyIHVtZ2VicmFjaHQuCltCZWlsZWlkOlNraXBwZXJdIEJlaWxlaWQgOigoCltCZWlsZWlkOlpvb2tdIGhlaGUuLi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPZWg/IChGb29iYXIsIDIxLiBOb3YgMjAwMCwgMTY6NDc6MjcpOgo+IG5pbW0gZmV1ZXJheHQKRHUgbmltbXN0IGRhcyBGZXVlcnNjaHdlcnQuCgpTY2hvbiBrbGFyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAqZyogKEdyaW1tYm9ybiwgMjEuIE5vdiAyMDAwLCAxODozMzozMik6Cn4jISBvbj1RaXRlc3Mgb3Q9OTc0ODI3OTQ4IG9nPXdpdHplCn4jISBybj1IaWdodCBydD05NzQ4MjcyNjYgcmc9d2l0emUKfiMhIHRpZD05NzQ3NDI3MjEKUUkgbGFjaHQuClFJIHplaWxlcnQgZWlucy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChUcmFuY2UsIDIxLiBOb3YgMjAwMCwgMjI6NTk6NDApOgoKdW5nZXNjaG5pdHRlbjoKCkFub3JhbHBoIHRlaWx0IERpciBtaXQ6IHdpZXNvIG5pY2h0ID8KW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgQW5vcmFscGgKW1RvZDpMYXJzXSB1bWdlYnJhY2h0LgoKLi4uIGhtLCBkZXNoYWxiPyAKClRyYW5jZSAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClgtbWFzIChEZWVwYmx1ZSwgMjIuIE5vdiAyMDAwLCAwOTo1NDozMCk6CiJFcyBtdXNzIGFsbGVzIGdhbnoga2xhciBrb21tdW5pemllcnQgd2VyZGVuIiwgb2RlciAiV2VpaG5hY2h0ZW4KemVpdGdlbWFlc3MgYXVmc2V0emVuIgpTdGF0dXM6IFdpZSBXZWlobmFjaHRlbiA5OSBpbSBJbnRlcm5ldCBnZXplaWd0IGhhdCwgaGVpc3N0IFdlaWhuYWNodGVuCm5pY2h0IG1laHIgV2VpaG5hY2h0ZW4sIHNvbmRlcm4gWC1tYXMsIGFsc28gbXVzcyBkZXIgV2VpaG5hY2h0c21hbm4gYXVjaApYLW1hbiBzZWluIQoKRGEgWC1tYXMgMjAwMCBxdWFzaSBzY2hvbiB2b3IgZGVyIFR1ZXIgc3RlaHQsIGlzdCBlcyBob2VjaHN0ZSBaZWl0IG1pdApkZXIgV2VpaG5hY2h0c3ZvcmJlcmVpdHVuZyB6dSBiZWdpbm5lbiAtIFZlcnplaWh1bmcgLSBkYXMgZGllc2phZWhyaWdlCldlaWhuYWNodHMtUm9sbC1PdXQgenUgc3RhcnRlbiB1bmQgZGllIENocmlzdG1hcy1NYWlsaW5nLUFrdGlvbiBqdXN0IGluClRpbWUgdm9yenViZXJlaXRlbi4KSGlud2VpczogRGllIEtpY2stb2ZmLVZlcmFuc3RhbHR1bmcgKGZydWVoZXIgMS4gQWR2ZW50KSBmdWVyIGRhcwpkaWVzamFlaHJpZ2UgU0FOQ1JPUyAoU0FOdGEgQ2xhdXMgUk9hZCBTaG93KSBmaW5kZXQgYmVyZWl0cyBhbQoyOS5Ob3ZlbWJlciAyMDAwIHN0YXR0LiAgRGFoZXIgd3VyZGUgZGFzIG9mZml6aWVsbGUgQ29tZS1Ub2dldGhlciBkZXMKT3JnYW5pemluZyBDb21taXR0ZWVzIHVudGVyIFZvcnNpdHogZGVzIENJTyBDaHJpc3RtYXMgSWxsdW1pbmF0aW9uCk9mZmljZXIpIHNjaG9uIGFtIDYuIEphbnVhciBhYmdlaGFsdGVuLgpFcnN0bWFscyBoYWJlbiB3aXIgZWluIFByb2pla3RzdGF0dXMtTWVldGluZyB2b3JnZXNjaGFsdGV0LCBiZWkgZGVtIGVpbmUKaW4gV29ya3Nob3BzIGVudHdpY2tlbHRlICJUby1Eby1MaXN0ZSIgdW5kIGVpbmhlaXRsaWNoZSBKb2IgRGVzY3JpcHRpb25zCmVyc3RlbGx0IHd1cmRlbi4gRGFkdXJjaCBzb2xsZW4ga2xhcmUgVmVyYW50d29ydHVuZ3NiZXJlaWNoZSwgZWluZQpwb3dlcnZvbGxlIFBlcmZvcm1hbmNlIGRlcyBLdW5kZW5ldmVudHMgdW5kIG9wdGltaWVydGUKR2VzY2hlbmstQWxsb2NhdGlvbiBnZXNjaGFmZmVuIHdlcmRlbiwgd2FzIHdpZWRlcnVtIGRlbiBTZXJ2aWNlIExldmVsCmVyaG9laHQgdW5kIGF1c3NlcmRlbSBoaWxmdCwgIlgtbWFzIiBhbHMgQnJhbmRuYW1lIGdsb2JhbCB6dQppbXBsZW1lbnRpZXJlbi4KRGllc2VzIE1lZXRpbmcgZGllbnRlIHp1Z2xlaWNoIGRhenUsIG1pdCBkZW0gQ28tSGVhZCBHbG9iYWwgQ2hyaXN0bWFzCk1hcmtldHMgKEtuZWNodCBSdXByZWNodCkgZGllIEFibGF1Zi1PcmdhbmlzYXRpb24gYWJ6dXN0aW1tZW4sIGRpZQpHZXNjaGVuay1EaXN0cmlidXRpb24gYW4gZGllIHp1c3RhZW5kaWdlbiBQcml2YXRlLVNjaGVua2luZy1DZW50ZXJzCnNpY2hlcnp1c3RlbGxlbiB1bmQgZGllIFppZWxncnVwcGVuIGtsYXIgenUgZGVmaW5pZXJlbi4gRXJzdG1hbHMgc29sbGVuCmF1Y2ggc29nZW5hbm50ZSBHZXNjaGVuay1Vbml0cyB1ZWJlciBkYXMgSW50ZXJuZXQgYW5nZWJvdGVuIHdlcmRlbi4KRGllIFNlcnZpY2UtUHJvdmlkZXIgKEVuZ2VsLCBFbGZlbiB1bmQgUmVudGllcmUpIHd1cmRlbiBiZXJlaXRzIHZpYQpDb25mZXJlbmNlIENhbGwgdmlydHVlbGwgaW5mb3JtaWVydCB1bmQgZGllIENvcmUtQ29tcGV0ZW5jZXMgdmVyZ2ViZW4uCkVpbiBCdWVuZGVsIHZvbiBJbmNlbnRpdmVzIHVuZCBlaW4gc2VwYXJhdGVyIFRlYW0tQnVpbGRpbmctRXZlbnQgYW4KZ2VlaWduZXRlciBMb2NhdGlvbiBzb2xsZW4gZGVuIE1vdGl2YXRpb25zbGV2ZWwgZXJob2VoZW4gdW5kCmdsZWljaHplaXRpZyBoZWxmZW4sIGVpbmUgZWluaGVpdGxpY2hlIENvcnBvcmF0ZSBDdWx0dXJlIHNhbXQgSWRlbnRpdHkKenUgZW50d2lja2Vsbi4KRGVyIFZvcnNjaGxhZywgamVkZW0gRW5nZWwgZWluZW4gQ29hY2ggenVyIFNlaXRlIHp1IHN0ZWxsZW4sIHd1cmRlIGF1cwpCdWRnZXRncnVlbmRlbiB6dW5hZWNoc3QgZ2VjYW5jZWx0LiBTdGF0dCBkZXNzZW4gd3VyZGUgYXVmIGVpbmVyCnp1c2FldHpsaWNoZW4gQ2xpZW50IE1hbmFnZW1lbnQgQ29uZmVyZW5jZSBiZXNjaGxvc3NlbiwgaW4gZWluZW0KVGVzdGJlemlyayBhbHMgUGlsb3Rwcm9qZWt0IGVpbmUgSG90bGluZSAoMCw2OSBQZi9NaW51dGUgTGVnaW9uKSBmdWVyCmt1cnpmcmlzdGlnZSBXZWlobmFjaHRzd3VlbnNjaGUgZWluenVyaWNodGVuLCB1bSBkZW4gQWRkZWQgVmFsdWUgZnVlcgpkaWUgQmVzY2hlbmt0ZW4genUgZXJob2VoZW4uCkR1cmNoIGVpbiBhdXNnZWtsdWVnZWx0ZXMgTWFuYWdlbWVudCBJbmZvcm1hdGlvbiBTeXN0ZW0oTUlTdCkgaXN0IGF1Y2gKQmVuY2htYXJrLW9yaWVudGllcnRlcyBDb250cm9sbGluZyBmdWVyIGplZGVzIFByaXZhdGUtU2NoZW5raW5nLUNlbnRlcgptb2VnbGljaC4KTmFjaGRlbSBlaW4gbmV1ZXMgTGl0ZXJhdHVyLUtvbnplcHQgdW5kIGRhcyBMYXlvdXQtRm9ybWF0IHZvbiBleHRlcm5lbgpDb25zdWx0YW50cyBkZWZpbmllcnQgd3VyZGUsIGtvbm50ZSBhdWNoIHNjaG9uIGRhcyBkaWVzamFlaHJpZ2UgR29sZGVuZQpCdWNoIChHb2xkZW4gQm9vayBSZWxlYXNlIDk5LjEpIGVyc3RlbGx0IHdlcmRlbi4gRXMgZXJzY2hlaW50IGFscyBGbHllciwKZXJnYWVuenQgdW0gZWluIExlYWZsZXQgdW5kIGVpbmVuIE5ld3NsZXR0ZXIgZnVlciBkYXMgbGF1ZmVuZGUgVXBkYXRpbmcuCkhvY2hhdWZsYWdpZ2UgTG93Y29zdC1HaXZlYXdheXMgZGllbmVuIHp1ZGVtIGFscyBUZWFzZXIgdW5kIGZsYW5raWVyZW5kZQpNYXJrZXRpbmdtYXNzbmFobWUuCkZlcm5lciB3dXJkZSBkdXJjaCBpbnRlbnNpdmVzIEJyYWluIFN0b3JtaW5nIGVpbiBLb25zZW5zIHVlYmVyIGRhcwpNaXNzaW9uIFN0YXRlbWVudCBnZWZ1bmRlbi4gRXMgbGF1dGV0ICJMZXQncyBrZWVwIHRoZSBjYW5kbGVzIGJ1cm5pbmciCnVuZCBlcnNldHp0IGRhcyBiaXNoZXJpZ2UgIkZyb2hlIFdlaWhuYWNodGVuIi4gU2FudGEgQ2xhdXMgaGF0dGUgendhcgphbmZhbmdzIEJlZGVua2VuIGFuZ2VzaWNodHMgZGVzIENvcnBvcmF0ZS1SZWRlc2lnbnMsIGFremVwdGllcnRlIGFiZXIKbGV0enRsaWNoIGRlbiBwcm9ncmVzc2l2ZW4gQ29uc3VsdGluZy1BbnNhdHogdW5kIHd1ZXJkaWd0ZSBkYXMgS25vdy1ob3cKc2VpbmVyIEludmVzdG9yLVJlbGF0aW9uLU1hbmFnZXIuCkluIGRpZXNlbSBTaW5uZSBub2NoIGVyZm9sZ3JlaWNoZSBYLW1hcyBQcmVwYXJhdGlvbnMgZnVlciBkYXMgSmFociAyMDAwLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWxsZXMgbnVyIFZlcnJ1ZWNrdGUuLi4gOykgKE11cGZlbCwgMjIuIE5vdiAyMDAwLCAxOTo1MzozMSk6Cmh0dHA6Ly93d3cuaGVpc2UuZGUvdHAvZGV1dHNjaC9pbmhhbHQvbGlzLzQzMDcvMS5odG1sCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFsbGVzIG51ciBWZXJydWVja3RlLi4uIDspIChUc3VuYW1pLCAyMi4gTm92IDIwMDAsIDE5OjU1OjE5KToKfiMhIHJuPU11cGZlbCBydD05NzQ5MTkyMTEgcmc9c2NobWFycm4KfiMhIHRpZD05NzQ5MTkyMTEKSG1tIHNvbGxlbiBzaWNoIG1hbCBhbGxlIGluIGRlciBNUEEgbWVsZGVuLCBkaWUgcmF1Y2hlbiwgZGFubiB3ZXJkZW4gd2lyCmphIGdsZWljaCBzZWhlbiwgb2IgZGllc2UgU3RhdGlzdGlrIHN0aW1tdCA6KSkKClRzdW5hbWkuIFJhdWNodCBuaWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWxsZXMgbnVyIFZlcnJ1ZWNrdGUuLi4gOykgKEZhbnRhZ2hpcm8sIDIyLiBOb3YgMjAwMCwgMTk6NTY6MDcpOgp+IyEgcm49VHN1bmFtaSBydD05NzQ5MTkzMTkgcmc9c2NobWFycm4KfiMhIHRpZD05NzQ5MTkyMTEKaWNoIHJhdWNoZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQWxsZXMgbnVyIFZlcnJ1ZWNrdGUuLi4gOykgKEdyaW1tYm9ybiwgMjIuIE5vdiAyMDAwLCAxOTo1OTowMSk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk3NDkxOTM2NyByZz1zY2htYXJybgp+IyEgdGlkPTk3NDkxOTIxMQpNZWluZSBHdWV0ZSwgbnVuIGhvbHQgc2Nob24gZWluZXIgbmVuIEVpbWVyIFdhc3NlciB1bmQgbG9lc2NodCBUc3VuYW1pIHNvbGFuZ2UKbm9jaCBtZWhyIGFscyBlaW4gdHJhdXJpZ2VzIEhhZXVmY2hlbiBBc2NoZSB1ZWJyaWcgaXN0Li4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QuIDMxMCBLZWx2aW4gS29lcnBlcnRlbXBlcmF0dXIgdW5kIGtlaW4gYmlzY2hlbiBtZWhyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIFdhaHJoZWl0IHVlYmVyIEx1cHVzIDtvKSAoV29vZHksIDIzLiBOb3YgMjAwMCwgMTc6MTc6MTMpOgoiUm9ibyBEb2cgTHVwdXMiCgpFbGVrdHJvbmlzY2hlciwgZmVybmdlc3RldWVydGVyIEh1bmQuCjIzIHggMzUgY20uIFNpbGJlci4gTWl0IEluZnJhcm90LUZlcm5iZWRpZW51bmcgdW5kIGJlbGV1Y2h0ZXRlbgpBdWdlbi4gU2NodWV0dGVsdCBkZW4gS29wZiwgd2VkZWx0IG1pdCBkZW0gU2Nod2FueiwgaXNzdC4KMyB2ZXJzY2hpZWRlbmUgR2FuZ2FydGVuLCA2IHZlcnNjaGllZGVuZSBMYXV0ZS4KUmVhZ2llcnQgYXVmIEJld2VndW5nLCBUb2VuZSwgTGljaHR2ZXJhZW5kZXJ1bmcuCgpGZWlsZ2Vib3RlbiBpbiBlaW5lbSBQcm9zcGVrdCBlaW5lciBvZXN0ZXJyLiBNb2ViZWxrZXR0ZS4KTmFqYS4gSWNoIGdsYXViZSBpY2gga2F1ZiBpaG4gZGFubiBkb2NoIG5pY2h0LiBadSBwcmltaXRpdi4gOy0pCgoKKmR1Y2tlbmQqCndvb2R5Li0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWUgV2FocmhlaXQgdWViZXIgTHVwdXMgO28pIChHcmltbWJvcm4sIDIzLiBOb3YgMjAwMCwgMTc6MTg6NDMpOgp+IyEgcm49V29vZHkgcnQ9OTc0OTk2MjMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc0OTk2MjMzCkljaCBnbGF1YmUsIGljaCB3aWxsIGdhciBuaWNodCB3aXNzZW4gd2FzIE9lc3RlcnJlaWNoZXIgc28gYWxsZXMgYWxzIE1vZWJlbApiZXplaWNobmVuLiBVbmQgYXVjaCBuaWNodCwgd2llIHNpZSBlaW5lbiBmZXJuZ2VzdGV1ZXJ0ZW4gSHVuZCBhbHMgTW9lYmVsIHp1CnZlcndlbmRlbiBnZWRlbmtlbi4gV2lya2xpY2ggZXJzY2hyZWNrZW5kLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWUgV2FocmhlaXQgdWViZXIgTHVwdXMgO28pIChMdXB1cywgMjMuIE5vdiAyMDAwLCAxNzoyNDoyOSk6Cn4jISBybj1Xb29keSBydD05NzQ5OTYyMzMgcmc9c2NobWFycm4KfiMhIHRpZD05NzQ5OTYyMzMKR2VydWVjaHQhCgpJY2ggd2VkbGUgTklDSFQgbWl0IGRlbSBTY2h3YW56IHVuZCByZWFnaWVyZSBhdWNoIG5pY2h0IGF1ZgpGZXJuYmVkaWVudW5nZW4uLi4uCgpMdXB1cywgbGFldWZ0IGF1Y2ggb2huZSBTdHJvbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVG9ydGlsbGFzID8gKEdyaW1tYm9ybiwgMjMuIE5vdiAyMDAwLCAyMjowMTozNik6Cn4jISBybj1BbmNhbGFnb24gcnQ9OTc1MDEzMjM0IHJnPWtvY2hyZXplcHRlCn4jISB0aWQ9OTc0Mzc5NDU1CkRpZSBFaWVyIHJhdXNsYXNzZW4/IER1IFd1ZXN0bGluZyEKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVG9ydGlsbGFzID8gKE1vbnRhbnVzLCAyMy4gTm92IDIwMDAsIDIyOjAzOjE3KToKfiMhIHJuPUdyaW1tYm9ybiBydD05NzUwMTMyOTYgcmc9c2NobWFycm4KfiMhIHRpZD05NzQzNzk0NTUKClBVTExFUkFMQVJNIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluIFBhIGlzdCBlaW4gUGEgaXN0IGVpbiBQYSAoQW5hdG9sLCAyNC4gTm92IDIwMDAsIDAxOjI4OjQ3KToKUGFkcmVpYyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKUGF0cnluICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgouIG8gTyAoIFdlaWEuICkKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbGJpIGtvbW10IChTY3JlYW1lciwgMjcuIE5vdiAyMDAwLCAwMToxMDozMCk6CgpEZWluIEZyZXVuZCBFbGJlcmV0IHdpbGwgYXVjaCBtb3JnZW4ga29tbWVuIGF1cyBkZXIgRmVybmUuCgpkYXMgaXN0IGJlc3NlciBhbHMgYXVmIGRlciBwYXJ0eSAiaWNoIHdpbGwgbmVuIEhhcnRlbi4uIiAoeml0YXQgRWxiaSkKClNjcmVhbWVyIChuYWNoIFplbnN1ciB1bmQgRlNLIHJ1ZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClR5cGlzY2ggWmF1YmVyZXIuLi4gZmVpZ2UsIGZlaWdlLCBmZWlnZSA7KSAoVHN1bmFtaSwgMjkuIE5vdiAyMDAwLCAwMDozNzowOSk6CkxpYXJhIGtpdHplbHQgRGljaCBhdXMgZGVyIEZlcm5lIG1pdCBlaW5lciBGZWRlciBhbiBkZXIgTmFzZS4gV2FhYWFoLCB3aWUgZGFzCmtpdHplbHQsIGdsZWljaCBuaWVzdCBEdSBoZW1tdW5nc2xvcy4KRHUgdHJvbXBldGVzdCBsb3Mgd2llIGVpbiBPbGlmYW50LgpMaWFyYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKPnJoYXVlIGxpYXJhCkRpZXNlciBTcGllbGVyIHNjaGVpbnQgbmljaHQgZGEgenUgc2Vpbi4KCkdycnIhIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWx0ZW4sIGFiZXIgaW1tZXJoaW4uLi4gOikgKEFuYXRvbCwgMjkuIE5vdiAyMDAwLCAyMDowOTowNCk6CltNb2VyZGVyOkdlaXN0IGVpbmVyIEJsYXR0bGF1c10gVG9sbCEgR0VOQVUgZGFzIGhhYiBpY2ggamV0enQgZ2VicmF1Y2h0IQpbTW9lcmRlcjpHZWlzdCBlaW5lciBCbGF0dGxhdXNdIFN1cGVyLCBNZXAhIDooCgouIG8gTyAoIExldmVsIDEgLi4uIDopICkKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaWxmZSwgaWNoIGhhYmUgbWljaCB2ZXJsb3JlbiEgKFRhaW5hLCAzMC4gTm92IDIwMDAsIDAwOjIwOjM5KToKPiBmaW5kZSB0YWluYQpEaWVzZW4gU3BpZWxlciBrYW5uc3QgRHUgbmljaHQgZmluZGVuLgoKKnNuaWZmKgpIYXQgbWljaCB3ZXIgZ2VzZWhlbj8gU2FjaGRpZW5saWNoZSBIaW53ZWlzZSB3ZXJkZW4gZ2VybmUgZW50Z2VnZW5nZW5vbW1lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIaWxmZSwgaWNoIGhhYmUgbWljaCB2ZXJsb3JlbiEgKENpbmRlcmVsbGEsIDMwLiBOb3YgMjAwMCwgMTA6Mjg6NDQpOgp+IyEgcm49VGFpbmEgcnQ9OTc1NTQwMDM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc1NTQwMDM5Ck9jaCBiZWkgZGVuIFphdWJpcyBpc3QgZGllIE1lbGR1bmcgZWlnZW50bGljaCBub2NoIG5pZWRlcnNjaG1ldHRlcm5kZXIgOy0pCmZpbmRlIGNpbmRlcmVsbGEKRHUgbXVybWVsc3QgZGllIHZvcmdlc2NocmllYmVuZW4gV29ydGUgdW5kIGhhZWx0c3QgcGxvZXR6bGljaCBlaW5lIG1hZ2lzY2hlCkt1Z2VsIGluIGRlbiBIYWVuZGVuLgpEYXMgd2FlciBkb2NoIHppZW1saWNoZXIgVW5mdWchIERpZSBLdWdlbCBsb2VzdCBzaWNoIHdpZWRlciBhdWYuCgpTbyBrYW5ucyBlaW5lbSBnZWhuIDspKQpDaW5kZXJlbGxhICpoZXJ6bGljaCBsYWNoZW5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llIGltbWVyIGF1cyBkZW0gWnVzYW1tZW5oYW5nIGdlbG9nZ3Q6IChUaHVmaGlyLCAzMC4gTm92IDIwMDAsIDEwOjM0OjI0KToKCkZvb2JhcjogLi4uIGljaCBtYWNocyBmdWVyIERNIDEzMCwtICEKKE11ZW5zdGVyLCAyOS4xMS4wMCkKCnRodWZoaXIsIGJyZWl0IGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2llIGltbWVyIGF1cyBkZW0gWnVzYW1tZW5oYW5nIGdlbG9nZ3Q6IChUaHVmaGlyLCAzMC4gTm92IDIwMDAsIDEwOjM2OjQ2KToKfiMhIHJuPVRodWZoaXIgcnQ9OTc1NTc2ODY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc1NTc2ODY0Ck5hY2h0cmFnOiBOdXIgUmVkZW4gMTIwIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXaWUgaW1tZXIgYXVzIGRlbSBadXNhbW1lbmhhbmcgZ2Vsb2dndDogKFllbmRpLCAzMC4gTm92IDIwMDAsIDEzOjQzOjI3KToKfiMhIHJuPVRodWZoaXIgcnQ9OTc1NTc3MDA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc1NTc2ODY0CldvcnVtIGdpbmcgZXMgZGVubj8KClllbmRpLApzdWNodCBub2NoIGplbWFuZCwgZGVyIGlobSBkYXMgQmFkZXppbW1lciB0YXBlemllcnQgdW5kIHN0cmVpY2h0CihhYmVyIG9obmUgUmVkZW4pLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hbCBzY2huZWxsIHp1IExhcnMgKERlZXBibHVlLCAzMC4gTm92IDIwMDAsIDIwOjA5OjIwKToKVW5nZXNjaG5pdHRlbgpIaWdodCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbVG9kOkxhcnNdIEVpbiBGZXVlcmJhbGwgaGF0IGdlcmFkZSBIaWdodCB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc29zbyAoR29sYXMsICAxLiBEZXogMjAwMCwgMDQ6MTI6MzMpOgpFaW4gV2FuZGxlciBzY2hyZWl0OiBXZWcgaGllciEKRGVyIFdhbmRsZXIgd2FiZXJ0IG5hY2ggV2VzdGVuLgoKR29sYXMgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClByb21wdGUgQmVkaWVudW5nLi4uIChGb29iYXIsICAxLiBEZXogMjAwMCwgMDQ6NTc6MjUpOgpbQWxsZ2VtZWluOkVsYmVyZXRdIGdpYnRzIHdhcyB6dW0gaGF1ZW4/CltBbGxnZW1laW46R2FzdDFdIGhpLCBpaHIgYWVyc2NoZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEZvb2JhciwgIDEuIERleiAyMDAwLCAwNToxNzozMCk6Ckdhc3QxIGJldHJpdHQgZGllc2UgV2VsdC4KW0FsbGdlbWVpbjpGb29iYXJdIEhtLiBFciBpc3Qgd2llZGVyIGluIGRlciBBRy4KW0FsbGdlbWVpbjpHYXN0MV0gaGkgaWhyIGFlcnNjaGUKRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpMYXJzXSBTY2hsZWljaGVycyBQYXJhbm9pYSBoYXQgZ2VyYWRlIEdhc3QxIHVtZ2VicmFjaHQuCltUb2Q6U2NobGVpY2hlcnMgUGFyYW5vaWEga2ljaGVydCBpcnJlXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXIgd29obCB6dSBlaW5mYWNoLi4uIChCaWVsZWZlbGQsICAxLiBEZXogMjAwMCwgMTA6NTg6MjIpOgpbQWJlbnRldWVyOkFzYW5pZWxdIFRoYW5vcyBoYXQgc2ljaCBzb2ViZW4genVtIDE1LiBNYWwgYWxzIERyYWNoZW50b2V0ZXIKW0FiZW50ZXVlcjpBc2FuaWVsXSBiZXdhZWhydCEKPGZpbmdlciB0aGFub3M+ClsuLi5dCnouWi4gYWJ3ZXNlbmQsIEdydW5kICA6IG5pY2h0IGFtIHJlY2huZXIKCld1c3N0ZSBnYXIgbmljaHQsIGRhc3MgbWFuIGRpZSBEcmFjaGVuIHNvIGVpbmZhY2ggdG9ldGVuIGthbm4uLi4gOy0pCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPaG5lIFdvcnRlLi4uIChHcmltbWJvcm4sICAxLiBEZXogMjAwMCwgMTU6MDc6NTMpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTk3NTY3NTk0NCByZz13aXR6ZQp+IyEgdGlkPTk3NTY3NTk0NApIYWgsICBpY2ggaGFicyBkb2NoIGdld3Vzc3QuIEluIFdpcmtsaWNoa2VpdCBmYWhyZW4gZGllIExldXRlIGRvcnQgZ2FyIGtlaW4KQXV0bywgc29uZGVybiByZWl0ZW4gYXVmIFJpbmRlcm4uIFVudGVyIGRlbSBHZXNpY2h0c3B1bmt0IG1hY2hlbiBkaWUgQW50d29ydGVuCmRvY2ggYXVjaCBkdXJjaGF1cyBTaW5uLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoR3JlbGxnZW4sICAyLiBEZXogMjAwMCwgMDA6MDg6NTEpOgpbR3JhdHM6WWFteWFtXSBKQUFBIDopKQoKa3VyeiBkYXJhdWY6CgpbVG9kOkxhcnNdIEVpbiBXYXNzZXJidWVmZmVsIGhhdCBnZXJhZGUgWWFteWFtIHVtZ2VicmFjaHQuCgpHcmVsbGdpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERpZWRlciwgIDIuIERleiAyMDAwLCAwMTo1NjoxNSk6CkFsbGdlbWVpbjpTZXBoaXJvdGhdIHNoaXQhISEgaWNoIGJpbiBuaWNodCBhdXMgZGVyIGt1dHNjaGUgYXVzZ2VzdGllZ2VuLQpbQWxsZ2VtZWluOlNlcGhpcm90aF0gamV0enQgaGFlbmcgaWNoIGJlaSBkZW4gcmFldWJlcm4gZmVzdCB1bmQgZGllIHdvbGxlbgpbQWxsZ2VtZWluOlNlcGhpcm90aF0gbWVpbiBnZWxkLCBrYW5uIGljaCBkaWUga2lsbGVuPwpbQWxsZ2VtZWluOlJvbmRhXSBpbSBQcmluemlwIGphLgpbQWxsZ2VtZWluOlNlcGhpcm90aF0gaWNoIG1laW4gZGllIHBvc3RrdXRzY2hlCltBbGxnZW1laW46SGVyb01jRmx5XSBuZWluIGRpZSBrYW5uIG1hbiBuaWNodCBraWxsZW4gOikKW0FsbGdlbWVpbjpSb25kYV0gYW5kZXJlcnNlaXRzIGtvZW5udGVuIGRpZSBSYWV1YmVyIGRhcyBhdWNoIHNvIHNlaGVuCltBbGxnZW1laW46Sm9zZXBoXSBzcGllbGVybGV2ZWwgOCB1bmQgcmFldWJlciBraWxsZW4/CltBbGxnZW1laW46Um9uZGFdIGltIFByaW56aXAgamEKW0FsbGdlbWVpbjpSb25kYV0gd2VubiBkaWUgUmFldWJlciBzbyByaWNodGlnIGFuZ2VtYXRzY2h0IHNpbmQgdW5kIER1IGVpbgpbQWxsZ2VtZWluOlJvbmRhXSBzdXBlcmd0ZXIgTGV2ZWwgOCBiaXN0PwpbQWxsZ2VtZWluOlNlcGhpcm90aF0gaWNoIGhhYiBqYSBrZWluZSBhaG51bmcsIGFiZXIgaWNoIGthbm5zIGphIG1hbApbQWxsZ2VtZWluOlNlcGhpcm90aF0gdmVyc3VjaGVuISA7KQpbQWxsZ2VtZWluOlJvbmRhIHNjaGFsdGV0IGRhbm4gbWFsIFRPRCB3aWVkZXIgYW5dCltBbGxnZW1laW46U2VwaGlyb3RoIGdyaW5zdF0KW0FsbGdlbWVpbjpKb3NlcGggaGFlbHQgc2ljaCBkaWUgYXVnZW4genVdCltBbGxnZW1laW46Sm9zZXBoXSB3aWV2aWVsIGtvaGxlIGhhc3QgZHU/CltUb2Q6TGFyc10gRWluIFJhZXViZXIgaGF0IGdlcmFkZSBTZXBoaXJvdGggdW1nZWJyYWNodC4KCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoQW5hY3Jpb24sICAyLiBEZXogMjAwMCwgMDI6NTE6NTYpOgp+IyEgcm49RGllZGVyIHJ0PTk3NTcxODU3NSByZz1zY2htYXJybgp+IyEgdGlkPTk3NTcxODU3NQpNZWluZXIgTWVpbnVuZyBuYWNoIGlzdCBkYXMgUEssIFJvbmRhIDspCgpBbmFjKiBzY2htYXJydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVnZXMgS29tbWVuIHVuZCBHZWhlbi4uLiAoUHN5bG9ja2UsICAyLiBEZXogMjAwMCwgMTM6NTk6MDMpOgpWYW5pb24gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbiBGcmV1bmQgVmFuaW9uIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KUWl0ZXNzICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClZhbmlvbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKVmFuaW9uICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClFpdGVzcyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKQ3JpdHRlciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZ2VzY2huaXR0ZW4gKEZvb2JhciwgIDIuIERleiAyMDAwLCAxOToxODo1OSk6CkRpZSBNb2xsdXNrZSBzdGlyYnQgYWIgdW5kIGZhZWxsdCB6dSBCb2RlbiEKW1RvZDpMYXJzXSBFdHdhcyBHZWhlaW1uaXN2b2xsZXMgdW5kIFVuYmVrYW5udGVzIGhhdCBnZXJhZGUgU2l1YW4gdW1nZWJyYWNodC4KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlZ2VzIEtvbW1lbiB1bmQgR2VoZW4uLi4gKFFpdGVzcywgIDMuIERleiAyMDAwLCAxMzozOTozNCk6Cn4jISBybj1Qc3lsb2NrZSBydD05NzU3NjE5NDMgcmc9c2NobWFycm4KfiMhIHRpZD05NzU3NjE5NDMKYWNoLCBpbnRlcmVzc2FudCwgd2VyIG1pY2ggZGEgZXJ3YXJ0ZXQuLi4KClFJKioKClAuUy46IFdobyB0aGUgaGVsbCBpcyBwc3lsb2NrZT8/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbm8gY29tbWVudCAoU2l1YW4sICAzLiBEZXogMjAwMCwgMTQ6MTc6MjApOgpFaW5lIE1lbmdlIHdpbnppZ2VyIEh1ZXR0ZW4sIGRpZSBmYXN0IHdpZSB6dSBncm9zc2UgRmxpZWdlbnBpbHplIGF1c3NlaGVuLApzY2htaWVndCBzaWNoIGhpZXIgYW4gZGVuIFdhbGRib2Rlbi4gRGlyZWt0IGRhbmViZW4gd3VyZGUgZWluZSBncm9zc2UgRmV1ZXItCmdydWJlIGF1c2dlaG9iZW4gdW5kIGVpbiBEcmVoc3BpZXNzIGluc3RhbGxpZXJ0LiBEdSBmcmFnc3QgRGljaCwgd2FzIGRhIGJsb3NzCmdlZ3JpbGx0IHdlcmRlbiBzb2xsLi4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBub3Jkd2VzdGVuLgpFaW4gS2FlZmlnLiAoOTMpCkdyZWxnZW4sIEtvZW5pZ2luIGRlciBGZWVuLiAgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbm8gY29tbWVudCAoUWl0ZXNzLCAgMy4gRGV6IDIwMDAsIDE0OjE5OjQxKToKfiMhIHJuPVNpdWFuIHJ0PTk3NTg0OTQ0MCByZz1zY2htYXJybgp+IyEgdGlkPTk3NTg0OTQ0MApITU1NLCBMRUNLRVIhISEgRlJJU0NIRSBGRUUgQU0gU1BJRVNTLi4uCgpRSSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IG5vIGNvbW1lbnQgKFNpdWFuLCAgMy4gRGV6IDIwMDAsIDE0OjIwOjA3KToKfiMhIHJuPVFpdGVzcyBydD05NzU4NDk1ODEgcmc9c2NobWFycm4KfiMhIHRpZD05NzU4NDk0NDAKam8sIGRpZSA5MyBHcmVsZ2VucyBzaW5kIG1pciBsZWlkZXIgc2Nob24gcmF1c2dlc2Nyb2xsdCAuLi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvZmZlbnNpY2h0bGljaCBzdHViZW5yZWluIC4uLiAoRWlzaSwgIDMuIERleiAyMDAwLCAxNTo0OToxNik6CgpIaXNBc3VsIHNjaHJlaXRldCBwZmxpY2h0YmV3dXNzdCBhdWYgZGllIFRvaWxldHRlLgoKQ2hhb3QgRWlzaSBwaXNzdCBoYWx0IGF1Y2ggbWFsIGFuIG5lbiBCYXVtIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHJ2ZXMgbWFsIHdpZWRlciA6LSkgKFRyYXVtYSwgIDMuIERleiAyMDAwLCAxNzoyMzozNyk6Clp3ZWkgVHJ2ZXMga29tbWVuIGFuLgpEaWUgVHJ2ZXMgcGFja2VuIGVpbmVuIEZyb3NjaCBhbiBCZWluZW4gdW5kIEFybWVuIHVuZCBoZWJlbiBpaG4gaG9jaC4KRWluIEZyb3NjaCB3aXJkIGluIGRlbiBTY2hsYWZzYWFsIGdldHJhZ2VuLgoKTWFuIGJlYWNodGU6IFNpZSBzY2hhZmZlbiB6dSB6d2VpdCBlaW5lbiBnYW56ZW4gRnJvc2NoISA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmVnZXMgS29tbWVuIHVuZCBHZWhlbi4uLiAoUmF5emVlbCwgIDMuIERleiAyMDAwLCAxNzoyNzowMCk6Cn4jISBybj1RaXRlc3MgcnQ9OTc1ODQ3MTc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc1NzYxOTQzClFpLAoKUHN5bG9ja2UgaXN0IGVpbmUgWndlaXRpZSB2b24gbWlyIDopCgpHcnVzcywgUmF5KioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFJlZ2VzIEtvbW1lbiB1bmQgR2VoZW4uLi4gKFFpdGVzcywgIDMuIERleiAyMDAwLCAyMTo0NjoyMik6Cn4jISBybj1SYXl6ZWVsIHJ0PTk3NTg2MDgyMCByZz1zY2htYXJybgp+IyEgdGlkPTk3NTc2MTk0MwpqYSwgc2NoYWV0emNoZW4sIGRlciAnZmluZ2VyJy1iZWZlaGwgaXN0IHNvZ2FyIG1pciBnZWxhZXVmaWcgOykKUUkqKiB6dXJ1ZWNrZ3J1ZXNzZW5kClAuUy46IEhFSiwgV0VSIElTVCBOT0NIIE5JQ0hUIEZVRVIgREVOIE5JS09MQVVTLSpTKlQqQSpUKkkqIEFOR0VNRUxERVQ/Pz8gTlVOCkFCRVIgRklYISBFUiBJU1QgQU0gRlJFSVRBRywgREVOIDguREVaLiBVTSAyMCJVaHIgSU0gVklFUlRFTCBOQUNIIElOCkJSQVVOU0NIV0VJRyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClR5cGlzY2hlciBGYWxsIHZvbiBTZWxic3Rtb3JkIChMaWFmYXIsICAzLiBEZXogMjAwMCwgMjE6NTk6MzUpOgpbVG9kOkxhcnNdIERpcmlvbiBoYXQgZ2VyYWRlIERpcmlvbiB1bWdlYnJhY2h0LgpXb2hsIHp1IHRpZWYgaW4gZGVuIFNwaWVnZWwgZ2VibGlja3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVHlwaXNjaGVyIEZhbGwgdm9uIFNlbGJzdG1vcmQgKERpcmlvbiwgIDMuIERleiAyMDAwLCAyMjowNToxOCk6Cn4jISBybj1MaWFmYXIgcnQ9OTc1ODc3MTc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc1ODc3MTc1CktlaW4gU3BpZWdlbCwgc29uZGVybiBlaW4gR2Vpc3QuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFR5cGlzY2hlciBGYWxsIHZvbiBTZWxic3Rtb3JkIChHZWlzdCwgIDMuIERleiAyMDAwLCAyMjowNTo1MCk6Cn4jISBybj1EaXJpb24gcnQ9OTc1ODc3NTE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc1ODc3MTc1CkljaCB3ZWlzZSBqZWRlIFNjaHVsZCB2b24gbWlyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNoYW9zIHJ1bGV6IChWYW5pciwgIDMuIERleiAyMDAwLCAyMjozOToyMyk6CgpbYmVmZWhsZSBpbnRhcmJpciBzY2hhZXR6IGludGFyYmlyIDIgZWluXQpWb24gSW50YXJiaXI6IE5ldHRlciBWZXJzdWNoISAKSW50YXJiaXIgYmVpc3N0IERpciBpbnMgQmVpbiEgICAKTFA6IDIxNiAoLTEwKSBNUDogMjAyICgwKSAgIAoKb2huZSBrb21tZW50YXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE11ZCBnZXN1Y2h0IChBbmF0b2wsICA1LiBEZXogMjAwMCwgMTQ6MzE6NDMpOgp+IyEgcm49Qm9pbmcgcnQ9OTc2MDIzMDczIHJnPWFuemVpZ2VuCn4jISB0aWQ9OTc1NDg5MjQ1Ci4gbyBPICggSWNoIGhvZXIgZXMgbm9jaDogJzk0LiAqUFJVVVVVVVVVVVNUKiApCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTXVkIGdlc3VjaHQgKFJvbmRhLCAgNS4gRGV6IDIwMDAsIDE0OjM4OjI2KToKfiMhIHJuPUFuYXRvbCBydD05NzYwMjMxMDMgcmc9c2NobWFycm4KfiMhIHRpZD05NzU0ODkyNDUKLiBvIE8gKCBVbmQgaG9lciBob2VyIG5vY2ggU2V4dWVsbGUgQXR0cmFrdGl2aXRhZXQgMTQuICpQUlVVVVVVU1QqICkKQWJlciBudW4gaXN0IFNjaGx1c3MgbWl0IGRlbiBJbnNpZGVybiwgQW5hdG9sLiBTb25zdCByZWl0ZXQgQm9pbiBub2NoIGF1ZiBJbnQuCjE2IG9kZXIgc28gcnVtLiBOZWVlLi4uLgoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE11ZCBnZXN1Y2h0IChBbmF0b2wsICA1LiBEZXogMjAwMCwgMTQ6NDA6NTUpOgp+IyEgcm49Um9uZGEgcnQ9OTc2MDIzNTA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc1NDg5MjQ1CkRpZSBPcmRudW5nc2xpZWJlbmRlbiBiaXR0ZSBpbiBkaWUgYmxhdWUgRWNrZS4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTXVkIGdlc3VjaHQgKE1vbnRhbnVzLCAgNS4gRGV6IDIwMDAsIDE1OjMyOjQ1KToKfiMhIHJuPUFuYXRvbCBydD05NzYwMjM2NTUgcmc9c2NobWFycm4KfiMhIHRpZD05NzU0ODkyNDUKCklociBiZWlkZW4gd2lzc3QsIHdhcyBpY2ggdW5iZWRpbmd0IGluIGRpZSBTcGllbGV0YXNjaGUgZnVlciBkaWUgbmFlY2hzdGUgRmV0ZQplaW5wYWNrZW4gbXVzcywgb2Rlcj8gOy0pCgotUFAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNdWQgZ2VzdWNodCAoQW5hdG9sLCAgNS4gRGV6IDIwMDAsIDE2OjA5OjAzKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk3NjAyNjc2NSByZz1zY2htYXJybgp+IyEgdGlkPTk3NTQ4OTI0NQpJY2ggdmVybGV1Z25lIGRpZXNlcyBXaXNzZW4uCgpWZWhlbWVudC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3NvIC4uLiAoQW5hY3Jpb24sICA1LiBEZXogMjAwMCwgMTg6Mzg6MTgpOgoKUGF0cnluICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClJhbmRvbGYgdGVpbHQgRGlyIG1pdDogRGllIHdlbHQgaXN0IHdpZWRlciBpbiBPcmRudW5nIDopCgp1bmdlc2Nobml0dGVuIC4uLgoKQW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzb3NvIC4uLiAoQW5hdG9sLCAgNS4gRGV6IDIwMDAsIDE4OjM5OjIwKToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk3NjAzNzg5OCByZz1zY2htYXJybgp+IyEgdGlkPTk3NjAzNzg5OApEaWUgcm9zYSBCcmlsbGUgZGVyIHVuc2NodWxkaWdlbiBKdWdlbmQuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hyZWloYWxzIDopIChFbGJlcmV0LCAgNS4gRGV6IDIwMDAsIDIzOjEwOjEyKToKU2NyZWFtZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKV2FyIGRhIG5pY2h0IGVpbiBsYXV0ZXMgU2NobmF1YmVuIGltIFN1ZWRlbiA/Cgood2llIHVlYmxpY2ggdW5nZXNjaG5pdHRlbiA6KSApCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIDotKSAoTGlhcmEsICA1LiBEZXogMjAwMCwgMjM6NDY6MzIpOgoKW1phdWJlcmVyOk1hYXJnXSBLb21pY2gsIGRlciBVbnNpY2h0YmFyZSB3YXIgZ2FyIG5pY2ggZGEuLi4KCkxaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2NocmVpaGFscyA6KSAoR3JpbW1ib3JuLCAgNS4gRGV6IDIwMDAsIDIzOjUwOjA2KToKfiMhIHJuPUVsYmVyZXQgcnQ9OTc2MDU0MjEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc2MDU0MjEyClVuZ2VzY2huaXR0ZW4ga2FubiBpY2ggYXVjaDoKCkVpbiBCZWlmYWxsc3N0dXJtIGJyYW5kZXQgaW0gRGlhbW9uZHBhcmsgYXVmLiBXYXMgZGEgd29obCB3aWVkZXIgbG9zIGlzdD8KUGxvZXR6bGljaCBob2Vyc3QgRHUgZWluIGxhdXRlcyBTY2huYXJjaGVuLiBMZW9wb2xkIGhhdCBkZW0gU2NocmF0CnNlaW4gbGFuZ2Vyc2VobnRlcyBTY2hsYWZtaXR0ZWwgZ2VicmFjaHQuCgpIYS4gSGEuIEhhLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJncmF1bHQ/ISAoVmFybGFyaW9uLCAgNS4gRGV6IDIwMDAsIDIzOjU5OjU5KToKRGVpbiBGcmV1bmQgTXVwZmVsIGdyaW5zdCBMaWFyYSBhbi4KTGlhcmEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgp1bmdlc2Nobml0dGVuLi4uCgpWYXJsYXJpb24sIHZlcnd1bmRlcnQgZGVua2VuZDogLiBvIE8gKHNvIHNjaGxpbW0gaXNzZXIgZG9jaCBnYXJuaWNoLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZlcmdyYXVsdD8hIChNdXBmZWwsICA2LiBEZXogMjAwMCwgMDA6MDE6MDcpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTk3NjA1NzE5OSByZz1zY2htYXJybgp+IyEgdGlkPTk3NjA1NzE5OQpXb2hlciB3aWxsc3QgRHUgZGFzIGRlbm4gd2lzc2VuPyA7KQoKLW11cGZlbC0gKGhlaW1saWNoIHNjaGxpbW0gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhYnMgZG9jaCBzY2hvbiBpbW1lciBnZXd1c3N0Li4uIChWYXJsYXJpb24sICA2LiBEZXogMjAwMCwgMDA6MDI6NTIpOgp+IyEgcm49TXVwZmVsIHJ0PTk3NjA1NzI2NyByZz1zY2htYXJybgp+IyEgdGlkPTk3NjA1NzE5OQouLi5kYXNzIER1IG5pY2h0IHNvIGhhcm1sb3MgYmlzdCwgd2llIER1IGF1c3NpZWhzdC4uLgoKVmFybCosIHdpc3NlbmQgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIYWJzIGRvY2ggc2Nob24gaW1tZXIgZ2V3dXNzdC4uLiAoU2lsdmFuYSwgIDYuIERleiAyMDAwLCAwMDowMzo1Mik6Cn4jISBybj1WYXJsYXJpb24gcnQ9OTc2MDU3MzcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc2MDU3MTk5ClNlaXQgd2FubiBzaWVodCBNdXBmZWwgaGFybWxvcyBhdXM/CgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGFicyBkb2NoIHNjaG9uIGltbWVyIGdld3Vzc3QuLi4gKFdvb2R5LCAgNi4gRGV6IDIwMDAsIDAwOjI1OjA0KToKfiMhIHJuPVNpbHZhbmEgcnQ9OTc2MDU3NDMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc2MDU3MTk5ClNlaXQgZXIgdW5nZXNjaG5pdHRlbiBpc3Q/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcm9uZGEuLi4gKE11cGZlbCwgIDYuIERleiAyMDAwLCAwMDozMTowNik6CltBbGxnZW1laW46Um9uZGFdIHdvdywgZGEgYXdyIGphIHNvZ2FyIHdhcyBpbiBkZXIgTVBBIDstKQpbQWxsZ2VtZWluOlJvbmRhXSBpY2ggbWVpbmUsIG5pY2h0IGRhc3MgZXMgd2FzIGJlZGV1dGV0IGhhZXR0ZSwgd2FzIGRhIGRyaW4KW0FsbGdlbWVpbjpSb25kYV0gd2FyIC0gYWJlciBpbW1lcmhpbiA7LSkKCnN0aW1tdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW1tZXIgd2llZGVyIGd1dC4uLiA7KSAoQW5hdG9sLCAgNi4gRGV6IDIwMDAsIDA4OjQ2OjI0KToKW01vZXJkZXI6R2Vpc3QgZWluZXMgS2FuaW5jaGVuc10gRGFzIHNhZyBpY2ggYWxsZXMgQm9pbmcsIEthcm90dGUhIDwwODo0NTozMj4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSW1tZXIgd2llZGVyIGd1dC4uLiA7KSAoQW5hY3Jpb24sICA2LiBEZXogMjAwMCwgMDk6NDY6MDEpOgp+IyEgcm49QW5hdG9sIHJ0PTk3NjA4ODc4NCByZz1zY2htYXJybgp+IyEgdGlkPTk3NjA4ODc4NApEYSBnaWJ0cyBudXIgZWluZSBBbnR3b3J0OgoKc3BvdHRlIERhIGhhc3QgRHUgRGlyIGRpZSBmYWxzY2hlIGF1c2dlc3VjaHQhCgpBbmFjKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZSAoTGluZmxhcywgIDYuIERleiAyMDAwLCAxMToxNjo1Mik6CkljaCBrYW5uIGF1Y2ggdW5nZXNjaG5pdHRlbjoKCiBbQWJlbnRldWVyOkN5cm9uXSBrYW5uIG1pciBqZW1hbmQgc2FnZW4gd2llIGljaCBkZW4ga25vcGYgYnp3IGhlYmVsIGltIHJhdXNtCltBYmVudGV1ZXI6Q3lyb25dICh3byBpY2ggZGVuIHNjaGx1ZXNzZWwgZ2VmdW5kZW4gaGFiKSBmaW5kZS4gbWl0IHVudCB0dXQgc2ljaApbQWJlbnRldWVyOkN5cm9uXSBuaWNodHMgKHF1ZXN0IHBhZ2FuaW5pKQpbVG9kOkxhcnNdIEVpbmUgVmFtcGlyZmxlZGVybWF1cyBoYXQgZ2VyYWRlIEN5cm9uIHVtZ2VicmFjaHQuCgpTbyBnZWh0IGRhcyBuaWNodC4uLgoKTGluZmxhcywgZGllIHp3ZWl0ZSBHZWlnZSBzcGllbGVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhbGx1emluYXRpb25lbiAoVGFpbmEsICA3LiBEZXogMjAwMCwgMDA6NDU6MTIpOgpEdSBzZXR6dCBEaWNoIGhpbiB1bmQgcmF1Y2hzdCBkZW4gSm9pbnQuIERhcyBpc3Qgd2lya2xpY2ggZ3V0ZXIgU3RvZmYuCkR1IGZ1ZWhsc3QgRGljaCBldHdhcyBiZW5vbW1lbi4KPiBzaW5nCkRlciBSYXVjaCBkZXMgSm9pbnRzIGh1ZWxsdCBEaWNoIGluIGRpY2tlIFJhdWNod29sa2VuIGVpbi4gRHUgZnVlaGxzdCBEaWNoCndpZSBpbSBzaWVidGVuIEhpbW1lbC4KT2ggc29sZSBtaW8hCj4gRWluIE11ZWxsc2NobHVja2VyIHNldHp0IHNpY2ggaGluIHVuZCByYXVjaHQgZWluZW4gSm9pbnQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChHcmVsbGdlbiwgIDcuIERleiAyMDAwLCAwMjowMDoxNSk6CkdlcmFkZSBlYmVuLi4uCgpQb2xnYXJhIHVuZCBtZWluZSBXZW5pZ2tlaXQgKFJMKSBhbiB6d2VpIFJlY2huZXJuIG5lYmVuZWluYW5kZXIuLi4gd2lyIHdvbGx0ZW4KZGllIEtvbW1hbmRhbnRpbiB1bWhhdWVuLgpQb2xnYXJhIHNjaGxhcHB0IHJlaW4sIGljaCB3YXJ0ZSBkcmF1c3Nlbi4KUG9sZ2FyYSBzYWd0IHp1IG1pciAoUkwpOiAiQWVoLi4uIGRhIGJ1Z3Qgd2FzIC0gb2RlciBlcyBsYWV1ZnQgZ2VyYWRlIGVpbgpad2VyZ2VuYW5ncmlmZi4iCk5vY2gga2F1bSBhdXNnZXNwcm9jaGVuLCBzY2hvbjoKCltUb2Q6TGFyc10gRWluZSBiZXphdWJlcm5kZSBLb21tYW5kYW50aW4gaGF0IGdlcmFkZSBQb2xnYXJhIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBiZXphdWJlcm5kZSBLb21tYW5kYW50aW5dIFdpciBoYWV0dGVuIHZpZWwgU3Bhc3MgbWl0ZWluYW5kZXIgaGFiZW4KW1RvZDpFaW5lIGJlemF1YmVybmRlIEtvbW1hbmRhbnRpbl0ga29lbm5lbi4gQWJlciBkdSB3b2xsdGVzdCBqYSBuaWNodC4KCkljaCBzY2hhdSB6dSBQb2xnYXJhIGF1ZiBkZW4gTW9uaXRvcjoKCkR1IHZlcnNldHp0IEtva29ybyBpbiBTY2h3aW5ndW5nIHVuZCBzcHVlcnN0LCB3aWUgZGllIEVuZXJnaWUgRGVpbmVuCkdlaXN0IGR1cmNoc3Ryb2VtdC4KRWluZSBiZXphdWJlcm5kZSBLb21tYW5kYW50aW4gc2NobGFlZ3QgRGljaCBwbG9ldHpsaWNoIHVuZCB2b2VsbGlnIHVuZXJ3YXJ0ZXQKbWl0IGVpbmVtIEVsZmVuYmVpbnNwZWVyLgogIERpZSBiZXphdWJlcm5kZSBLb21tYW5kYW50aW4gc2NobGFlZ3QgRGljaCB6dSBCcmVpLgogIERpZSBiZXphdWJlcm5kZSBLb21tYW5kYW50aW4gemVyc2NobWV0dGVydCBEaWNoIGluIGtsZWluZSBTdHVlY2tjaGVuLgogIERpZSBiZXphdWJlcm5kZSBLb21tYW5kYW50aW4gemVyc2NobWV0dGVydCBEaWNoIGluIGtsZWluZSBTdHVlY2tjaGVuLgogIERpZSBiZXphdWJlcm5kZSBLb21tYW5kYW50aW4gZ3JlaWZ0IERpY2ggc2NobGFuZ2VuZ2xlaWNoIG1pdCBlaW5lbSAKRWxmZW5iZWluc3BlZXIgYW4uCiAgRGllIGJlemF1YmVybmRlIEtvbW1hbmRhbnRpbiBwdWx2ZXJpc2llcnQgRGljaC4KCnRvdC4uLgoKR3JlbGxnZW4sIHdlaXNlIG5pY2tlbmQgdW5kIFRyYWVuZW4gZ2VsYWNodCBoYWJlbmQgb2IgZGllc2VyIEZMVy4uLiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkphamEgSW52aXMgOikgKEVsYmVyZXQsICA3LiBEZXogMjAwMCwgMDg6NTE6MzIpOgpJbiBEcmFrb25pZW4gOjAKCkplbWFuZCBzY2hlaW50IGVpbiB3ZW5pZyBibGluZCB6dSBzZWluLCBqZWRlbmZhbGxzIGxhZXVmdCBlciBnZWdlbiBkZW4gRmVsc2VuLApkZXIgZGVuIFdlZyBuYWNoIE9zdGVuIGJsb2NraWVydC4gRGFzIHNjaGVpbnQgc2VociB3ZWggZ2V0YW4genUgaGFiZW4sIGRlbm4gZXIKemVpZ3QgZWluIHNjaG1lcnp2ZXJ6ZXJydGVzIEdlc2ljaHQuCgpJbW1lciB3aWVkZXIgbmV0dCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWnUgb2ZmZW5zaWNodGxpY2gsIEhlcnIgU2hlcmlmZi4uLiAoU3dvdGwsICA3LiBEZXogMjAwMCwgMTA6MDI6NTQpOgpbPE1hc3RlUj46TXVhZGliIGxhZXNzdCBkaWUgRWJlbmUgJ0tvbXBsZXR0bG9lc3VuZ2VuJyBlbnRzdGVoZW4uXQoKRHUgZ2xhdWJzdCBkb2NoIG5pY2h0LCBkYXNzIGRhcmF1ZiBqZW1hbmQgcmVpbmZhZWxsdCwgb2Rlcj8gOy0pCgpTd290bAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFp1IG9mZmVuc2ljaHRsaWNoLCBIZXJyIFNoZXJpZmYuLi4gKEhpZ2h0LCAgNy4gRGV6IDIwMDAsIDE0OjU1OjEzKToKfiMhIHJuPVN3b3RsIHJ0PTk3NjE3OTc3NCByZz1zY2htYXJybgp+IyEgdGlkPTk3NjE3OTc3NAoqbGFjaCogd3J1bSBuZXQgLm8pIAoKYXVzZXJkZW0gZ2lidHMgZGllIGViZW5lIHdvaGwgc2Nob24gc28gbGFuZ2Ugd2llJ3MgZGFzIG1nIGdpYnQgLm8pCm51ciBkaWUgbWl0IC1iIGJlbnV0enQgd2lyZCB1bnQgbmV0IG1pdCBrb20gCgpoaWdodCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIHNvbGwgdW5zIGRhcyBqZXR6dCBzYWdlbj8gKEFyaWFuYSwgIDcuIERleiAyMDAwLCAxODoyMjoyOSk6CkRlaW4gRnJldW5kIEdvbGFzIHRlaWx0IERpciBtaXQ6IGthbSBzY2hvbiBkZXIgam9rZSwgd28gYmVpbSBiZWZlaGwKYXVzcnVlc3R1bmcgZGFzIGtvbmRvbSBhdWZ0YXVjaHQ/CkRhcmt3aW5nIEkgUyBUICBKIEUgVCBaIFQgIE4gSSBDIEggVCAgTSBFIEggUiAgRCBBICEhIQoKYWxzbywgc29vb28gc2NobGVjaHQgc2l0IGRlciBqb2tlIGF1Y2ggbmljaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvc28gKEJlbGdhcmlhZCwgIDcuIERleiAyMDAwLCAyMDozMDozMik6CnRtIHRpbGx5IGh1aHUgZHUKRHUgdGVpbHN0IFRpbGx5X25oLXF1ZXN0X2Vpc2JlcmcgbWl0OiBodWh1IGR1CgpTY2hvZW5lIFNhY2hlbiBnaWJ0cyBkYS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnVlciB2aW9sYSAoWmlsbHVzLCAgOC4gRGV6IDIwMDAsIDAwOjE2OjAzKToKZGllc2VyIGFydGlrZWwgaXN0IG51ciBmdWVyIHZpb2xhLgoKZGFtaXQgZGllIHplaXR1bmcgbmljaHQgbWVociBzbyBtYWdlciBpc3QgOikKClouCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGZ1ZXIgdmlvbGEgKE11cGZlbCwgIDguIERleiAyMDAwLCAwMDozMTo1OCk6Cn4jISBybj1aaWxsdXMgcnQ9OTc2MjMwOTYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc2MjMwOTYzCm9rLCBkYW5uIHNjaHJlaWIgaWNoIGF1Y2ggbWFsIGVpbmVuIGZ1ZXIgdmlvbGEuIGhhbGxvIHZpb2xhISEhIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBmdWVyIHZpb2xhIChBbmFjcmlvbiwgIDguIERleiAyMDAwLCAwMjoxOTowMik6Cn4jISBybj1NdXBmZWwgcnQ9OTc2MjMxOTE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc2MjMwOTYzCi4uLiB1bmQgbm9jaCBlaW5lciAuLi4KCgpXZW5uIER1IHNjaG9uIHdpZWRlciBkdXJjaCBiaXN0LCBzb2xsc3QgRHUgYXVjaCBub2NoIHdhcyB6dSBsZXNlbiBoYWJlbi4KCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZnVlciB2aW9sYSAoQ2F0d2VhemxlLCAgOC4gRGV6IDIwMDAsIDA4OjA0OjExKToKfiMhIHJuPVppbGx1cyBydD05NzYyMzA5NjMgcmc9c2NobWFycm4KfiMhIHRpZD05NzYyMzA5NjMKVWkuCkRhcyBpc3QgamEgbGllYi4KWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGZ1ZXIgdmlvbGEgKEdsb2luc29uLCAgOC4gRGV6IDIwMDAsIDA4OjEwOjQ5KToKfiMhIHJuPUNhdHdlYXpsZSBydD05NzYyNTkwNTEgcmc9c2NobWFycm4KfiMhIHRpZD05NzYyMzA5NjMKRGllc2VyIEFydGlrZWwgaXN0IG51ciBmdWVyIENhdHRpZS4KRGFtaXQgZGVyIENhdHRpZSBuaWVtYWxzIG1hZ2VyIHdpcmQuCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBmdWVyIHZpb2xhIChZZW5kaSwgIDguIERleiAyMDAwLCAwOTo0MTo0OSk6Cn4jISBybj1HbG9pbnNvbiBydD05NzYyNTk0NDkgcmc9c2NobWFycm4KfiMhIHRpZD05NzYyMzA5NjMKCmZpbmdlciBnbG9pbnNvbgpIb3BwbGEsIGVpbiBHZWlzdCEKWy4uLl0KCipncmlucyoKKE5lZWVlaW4sIHd1ZXJkZSBDYXR0eSBkb2NoIG5pZSB0dW4sIGRhcy4uLikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdWNoPyAoTGluZmxhcywgIDguIERleiAyMDAwLCAxMTo0MzoxNyk6CkRhcyBnYWJzIGRvY2ggYWJlciBzaWNoZXJsaWNoIHNjaG9uLCBvZGVyPwoKRGllc2UgR3VtbWl6ZWxsZSBpc3QgaXJnZW5kd2llIGFuZGVycyBhbHMgZGllIGFuZGVyZW4uIER1IHdlaXNzdCBuaWNodCwKd2llc28sIGFiZXIgaXJnZW5kd2llIHdpcmt0IHNpZSwgbnVuLCAndmVyeSBicml0aXNoJy4KT2IgZGFzIGFuIGRlbSBSaW5kIGxpZWd0LCBkYXMgaGllciBpbiBkZXIgWmVsbGUgc3RlaHQ/CkVpbmUgWmVsbGVudHVlciAoZ2VvZWZmbmV0KS4gCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB3ZXN0ZW4uCgpSaW5kLCB3YXMgbWFjaHN0IGR1IGhpZXI/CgpMaW5mbGFzLCB2b2VsbGlnIHZvbiBSaW5kZmxlaXNjaCBrdXJpZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEh1Y2g/IChMaW5mbGFzLCAgOC4gRGV6IDIwMDAsIDExOjUzOjA3KToKfiMhIHJuPUxpbmZsYXMgcnQ9OTc2MjcyMTk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc2MjcyMTk3CktlaW5lIDUgTWludXRlbiBzcGFldGVyOgoKW1RvZDpMYXJzXSBFaW4gRmV1ZXJkYWVtb24gaGF0IGdlcmFkZSBSaW5kIHVtZ2VicmFjaHQuCltUb2Q6RWluIEZldWVyZGFlbW9uXSBFcyByaWVjaHQgc28gdmVyYnJhbm50IGhpZXIuIEJpc3QgRHUgZGFzPwoKU293YXMKCkxpbmZsYXMsIHdpcmtsaWNoIGtlaW4gU3RlYWsgd29sbGVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGZ1ZXIgdmlvbGEgKENhdHdlYXpsZSwgIDguIERleiAyMDAwLCAxMzoyMDowOCk6Cn4jISBybj1HbG9pbnNvbiBydD05NzYyNTk0NDkgcmc9c2NobWFycm4KfiMhIHRpZD05NzYyMzA5NjMKSWNoYmlubmljaHRkaWNrIQpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGZ1ZXIgdmlvbGEgKEdsb2luc29uLCAgOC4gRGV6IDIwMDAsIDEzOjIwOjU5KToKfiMhIHJuPUNhdHdlYXpsZSBydD05NzYyNzgwMDggcmc9c2NobWFycm4KfiMhIHRpZD05NzYyMzA5NjMKRGFubiBsYXNzIERpY2ggd2VuaWdzdGVucyBtYWwgZ2VnZW4gRGVpbmVuIEhhbmcgenVyIHN0ZXRlbiBWZXJuZWludW5nCmJlaGFuZGVsbi4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGZ1ZXIgdmlvbGEgKENhdHdlYXpsZSwgIDguIERleiAyMDAwLCAxMzoyMTo1NSk6Cn4jISBybj1HbG9pbnNvbiBydD05NzYyNzgwNTkgcmc9c2NobWFycm4KfiMhIHRpZD05NzYyMzA5NjMKSWNoaGFia2VpbmVuaGFuZyEKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBmdWVyIHZpb2xhIChHbG9pbnNvbiwgIDguIERleiAyMDAwLCAxMzo0NTo1Nyk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9OTc2Mjc4MTE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc2MjMwOTYzCkhhc3QgRHUgd29sbC4gRGVyIGhhZW5ndCBnYW56IHNjaG9lbiB1ZWJlci4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFuemVpZ2UgKEFuYXRvbCwgIDguIERleiAyMDAwLCAxNDo1ODo1OSk6Cn4jISBybj1Ob2tpIHJ0PTk3NjI4MzYzOCByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9OTY4NDM2MDY2CkRpZSBvcHRpbWFsZSBaZWlsZW5icmVpdGUgZnVlciBBcnRpa2VsIGxpZWd0IGlyZ2VuZHdvIHp3aXNjaGVuCjY1IChmdWVuZnVuZHNlY2h6aWcpIHVuZCA3OSAobmV1bnVuZHNpZWJ6aWcpIFplaWNoZW4uIERpZSBvcHRpbWFsZQpBbnR3b3J0emVpdCBhdWYgZWluZW4gQXJ0aWtlbCBsaWVndCBpcmdlbmR3byB6d2lzY2hlbiA4IChhY2h0KSAKU3R1bmRlbiAoPT0gZWluZSBOYWNodCBkcnVlYmVyIHNjaGxhZmVuKSB1bmQgNyAoc2llYmVuKSBUYWdlbi4KCkRlcyB3ZWl0ZXJlbiBibGVpYmVuIGRlbSBnZW5laWd0ZW4gU2NocmVpYmVyIG5vY2ggendlaSBEaW5nZSB6dQplbXBmZWhsZW46IGEpICJoaWxmZSB6ZWl0dW5nIiB1bmQgZGlyZWt0IGltIEVkaXRvciAifmgiLgoKS3VsdHVyIGlzdCwgd2VubiBtYW4ncyB0cm90emRlbSBtYWNodD8KCkFuYXRvbCAoc2hydWdzKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQW56ZWlnZSAoSHVtbmksICA4LiBEZXogMjAwMCwgMTU6MDE6MjUpOgp+IyEgcm49QW5hdG9sIHJ0PTk3NjI4MzkzOSByZz1zY2htYXJybgp+IyEgdGlkPTk2ODQzNjA2NgpUamEsIEFuYXRvbC4uLgoKOCBTdHVuZGVuIHVuZCA3IFRhZ2UuLgoKQmVpIERpciB3YXJlbiBlcyBnZW5hdSA1IE1pbnV0ZW4gdW5kIDEgU2VrdW5kZS4KCkNVIEh1bW5pCihrb25udGUgZWluZmFjaCBuaWNodCB3aWRlcnN0ZWhlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEFuemVpZ2UgKE5vbm5lLCAgOC4gRGV6IDIwMDAsIDE1OjA2OjMxKToKfiMhIHJuPUh1bW5pIHJ0PTk3NjI4NDA4NSByZz1zY2htYXJybgp+IyEgdGlkPTk2ODQzNjA2NgpadSBzY2huZWxsIHVuZCBkaWUgWmVpbGVuIHNpbmQgenUga3Vyeiwgc293YXMgbGVzJyBpY2ggZG9jaCBnYXIgbmljaHQgZXJzdCAoYzsKCk5vbm5lLCBhdWNoIHp1IHNjaG5lbGwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBbnplaWdlIChBbmF0b2wsICA4LiBEZXogMjAwMCwgMTU6MDc6MjcpOgp+IyEgcm49SHVtbmkgcnQ9OTc2Mjg0MDg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTY4NDM2MDY2Cldlbm4gaWNoIGhpZXIgc3RhZW5kaWcgaW0gT3B0aW11bSBoZXJ1bWdlaXN0ZXJuIHd1ZXJkZSwgd3VlcmRlbiBMZXV0ZSwKdm9uIGRlbmVuIGljaCBuaWNodCBlcndhcnRlbiB3dWVyZGUsIGRhc3Mgc2llICJ3aWRlcnN0ZWhlbiIgcmljaHRpZwpzY2hyZWliZW4sIGluIG5vY2ggZ3JvZXNzZXJlIEtyaXNlbiBmYWxsZW4gYWxzIHNpZSBlcyBvaG5laGluIHR1bi4KCkFueXdheSwgMTowIDopCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE11ZW5zdGVyIC0gTW9udGFnIDExLjEyLiAoR2xvaW5zb24sICA4LiBEZXogMjAwMCwgMTU6NDA6MzgpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTk3NjI4MjIyOSByZz10cmVmZmVuCn4jISB0aWQ9OTc2MTgxNTUwCkphamEsIER1IGJpc3QgbmljaHQgZGljay4gRGllIFJpcHBjaGVkaWFldCBzY2hsYWVndCB6dS4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyb2VzY2hlIChNYXRpcywgIDkuIERleiAyMDAwLCAxMTo1NjowMCk6CkVpbiBGcm9zY2ggdGVpbHQgRGlyIG1pdDogaHksIGthbm4gZXMgc2VpbiBkYXMgbWFuIGtyYWZ0IHZlcmxpZWhyZW4ga2Fubj8/CkVpbiBGcm9zY2ggdGVpbHQgRGlyIG1pdDogd2VubiBqYSBrYW5uIG1hbiBkYXMgYWVuZGVybiBvZGVyIGJlc3NlciB6dXJ1ZWNrCkVpbiBGcm9zY2ggdGVpbHQgRGlyIG1pdDogYmVjb21tZW4/Pz8/CgpNYXRpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZHVtZGlkdW0gKEhlcm9tY2ZseSwgIDkuIERleiAyMDAwLCAxNDowMzo0OSk6CgpBbGxlcyB3aXJkIHVuc2NoYXJmLi4uIER1IGthbm5zdCBwcmFrdGlzY2ggbmljaHRzIG1laHIgZXJrZW5uZW4uIE51ciBub2NoCmVpbnMuLi4gCgpEaWUgU2NodXR6YXVyYSB1bSBEaWNoIGxvZXN0IHNpY2ggbGFuZ3NhbSBhdWYuCgplYmVuIGluIG5lciB0b2Rlc3NlcXVlbnogOi1QCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcHVoIChIZXJvbWNmbHksICA5LiBEZXogMjAwMCwgMTQ6NDU6MTApOgoKRHJhY28gdGVpbHQgRGlyIG1pdDoga2VubnN0ZSBtaWNoIG5vY2ggPwoKWy4uLl0KCltUb2Q6TGFyc10gRWluZSBSaWVzZW5zcGlubmUgaGF0IGdlcmFkZSBEcmFjbyB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgUmllc2Vuc3Bpbm5lXSBEcmFjbyBhbHMgQWJlbmRlc3NlbiB3YXIgZ2FyIG5pY2h0IG1hbCBzY2hsZWNodC4gRGFyZgpbVG9kOkVpbmUgUmllc2Vuc3Bpbm5lXSBpY2ggamV0enQgZW5kbGljaCBtZWluIFZlcmRhdXVuZ3NzY2hsYWVmY2hlbiBoYWx0ZW4/CltUb2Q6RWluZSBSaWVzZW5zcGlubmVdICpnZW5lcnZ0IGd1Y2sqISAKCndpZWRlciBlaW5lbSB1bmFuZ2VuZWhtZW4gZGlhbG9nIGVudHJvbm5lbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmxhaC4gKEdlaXN0LCAgOS4gRGV6IDIwMDAsIDE1OjA5OjIxKToKPiByZWlzZSBtaXQgbHVmdGtpc3NlbmJvb3QKU293YXMgdmVya2VocnQgaGllciBuaWNodC4KRWluIEx1ZnRraXNzZW5ib290IGxlZ3QgYW4uCgpHbmEuCkdlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXR0IChaaWxsdXMsICA5LiBEZXogMjAwMCwgMTc6MjE6NDQpOgppbW1lciB3aWVkZXIgbmV0dCwgZGllIEdhZXN0ZSBoaWVyIDotKQoKR2FzdDEgdGVpbHQgRGlyIG1pdDogaGFiZSBkZWluZSBhZXVzc2VydW5nZW4gYXVmIGFsbGdlbWVpbiB2ZXJmb2xndCB1bmQKR2FzdDEgdGVpbHQgRGlyIG1pdDogZWhybGljaCBnZXNhZ3QsIHZlcnN0ZWhlIGljaCBuaWNodCwgd2FzIGRhcmFuIHNvIHNjaHdlcgpHYXN0MSB0ZWlsdCBEaXIgbWl0OiBpc3QsIGRpZSB3dWVuc2NoZSBhbmRlcmVyIHNwaWVsZXIgenUgYmVydWVja3NpY2h0aWdlbi4gZXMKR2FzdDEgdGVpbHQgRGlyIG1pdDogc2VpIGRlbiBtYW4gaXN0IGVpbiBzb3ppb3BhdGggb2RlciBhcnNjaGxvY2guCgoKClouLCBzY2htdW56ZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVG90ZSBHYWVuc2UgZmxpZWdlbiBob2NoIChDb3NpbiwgMTAuIERleiAyMDAwLCAwMjoxODo1OSk6CnVudCBzY2h3YXJtCkRpZXNlciBncm9zc2UgU2Nod2FybSBXaWxkZ2FlbnNlIG1hY2h0IGhpZXIgZWluZSBrbGVpbmUgUmFzdCwgdW0gc2ljaCB2b24gZGVuClN0cmFwYXplbiBlaW5lcyBsYW5nZW4gRmx1Z2VzIHp1IGVyaG9sZW4gdW5kIG5ldWUgS3JhZWZ0ZSBmdWVyIGRlbiBXZWl0ZXJmbHVnCnp1IHNhbW1lbG4uIEF1ZmdlcmVndGVzIFNjaG5hdHRlcm4gZXJmdWVsbHQgZGllIEx1ZnQgdW5kIERlaW5lIEFud2VzZW5oZWl0CnNjaGVpbnQgZGllIEdhZW5zZSBuaWNodCBpbSBnZXJpbmdzdGVuIHp1IHN0b2VyZW4uIFZpZWxlIGRlciBXaWxkZ2FlbnNlIHNpbmQKdm9uIGVpbmVtIGtyYWVmdGlnZW4gS29lcnBlcmJhdSB1bmQga29lbm50ZW4gZHVyY2hhdXMgbm9jaCBlaW5pZ2VzIGFuCnp1c2FldHpsaWNoZW0gR2V3aWNodCBtaXQgc2ljaCBkdXJjaCBkaWUgTHVlZnRlIHRyYWdlbi4gV2VubiBEdSBhbHNvIHNjaG9uCmltbWVyIGVpbm1hbCBOaWxzIEhvbGdlcnNzb24gc3BpZWxlbiB3b2xsdGVzdCwgU1BSSU5HICghKSBkb2NoIGVpbmZhY2ggZWluZXIKZGVyIEdhZW5zZSBhdWYgZGVuIGJyZWl0ZW4gUnVlY2tlbi4gQWJlciBoYWx0ZSBEaWNoIGRhbm4gYXVjaCBndXQgZmVzdCEKYmVvYmFjaHRlIHNjaHdhcm0KRWluIFNjaHdhcm0gV2lsZGdhZW5zZSBsZWJ0IGRvY2ggbmljaHQhCgpDb3NpbiwgCmZsaWVndCBkYW1pdCBiZXN0aW1tdCBuaWNodC4uLiA7LT4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnp6ejIgKFpvb2ssIDEwLiBEZXogMjAwMCwgMTc6NDI6NDQpOgp+IyEgb249U3Bhd24gb3Q9OTc2NDY2MTY2IG9nPWFsbGdlbWVpbmVzCkdydXNzIHp1cnVlY2suIEJpc3RlIGpldHp0IGF1Y2ggS3JpZWdlciA/IENvb2wgLi4uICoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptYXNvZmlzY2hlPyAoRmxhc2gsIDEwLiBEZXogMjAwMCwgMTc6NTY6MzApOgpEaWUgS2V1bGUgc2NocmVpdCBzbyBsYXV0LCBkYXNzIGRlbSBHZWduZXIgZGllIFRyb21tZWxmZWxsZSBwbGF0emVuLgpEZXIgS251dHNjaGZpc2NoIGlzdCBnbHVlY2tsaWNoIHdpZSBuaWUgenV2b3IuCgprb21pc2NoZSBmaXNjaGUgZ2licyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2RlciBzby4uLiAoRGVmcmFnLCAxMC4gRGV6IDIwMDAsIDIyOjIwOjUxKToKRGVyIEVsZmVud2FlY2h0ZXIgc2FndDogU3RpcmIsIFp3ZXJnZW5mcmV1bmQhCkRlciBFbGZlbndhZWNodGVyIGZhZWxsdCB0b3QgenUgQm9kZW4uCgpEZWZyYWcuIFp3ZXJnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQXVzenVnIGF1cyBkZW0gTWFnaWVydmVydHJhZyAoU2lsdmFuYSwgMTEuIERleiAyMDAwLCAxMDozNTo1OCk6Cn4jISBybj1QYXJhbm9pYSBydD05NzY1MjcxNDggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTk3NjMxODM2OApBbGxlcyBFaWZlcnN1Y2h0LCBQYXJhbm9pYS4gRGEgc2NoZWluZW4gZWluaWdlIHp1IG1laW5lbiwgYW5kZXJlIGhhZXR0ZW4gRGljaAp6dSBzZWhyIGluIGlociBIZXJ6IGdlc2NobG9zc2VuLiA7LSkKCgpTaWx2YW5hIChnYWFhYWFhYWFhYWFhYWFhYWFhciBuaWNodCBwYXJhbm9pZC4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEF1c3p1ZyBhdXMgZGVtIE1hZ2llcnZlcnRyYWcgKEdyaW1tYm9ybiwgMTEuIERleiAyMDAwLCAxNDo1ODo1OCk6Cn4jISBvbj1ZZW5kaSBvdD05NzY1NDI2NTYgb2c9ZGlza3Vzc2lvbgp+IyEgcm49UGFyYW5vaWEgcnQ9OTc2NTI3MTQ4IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05NzYzMTgzNjgKQUFBQUFIIQpQYXJhbm9pYSBpc3QgaGludGVyIG1pciBoZXIhCgotPnNjaG1hcnJuCgoKWVRZCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIGthbm4gZGVyIEVsZmVud2FlY2h0ZXIsIHdhcyBpY2ggbmljaHQga2Fubj8gKE1vbnRhbnVzLCAxMS4gRGV6IDIwMDAsIDE1OjA0OjIzKToKCk9kZXIga2VubnQgZGVyIEVsZmVud2FlY2h0ZXIgZGllIGtvcnJla3RlIFN5bnRheD8KCkRlciBXYWVjaHRlciB0cml0dCBnZWxhbmd3ZWlsdCBlaW5lbiBTdGVpbi4KRGllIFdhY2hlIHNhZ3Q6IEd1dGVuIFRhZyEKdHJldGUgc3RlaW4KV2VubiBEdSBzY2hvbiB3YXMgbmFjaCB0cml0dCB0aXBwc3QsIGRhbm4gc2FnIG1pciwgd2VuIG9kZXIgd2llIGljaCBkYXMgc29sbC4KCkVudHRhZXVzY2h0OiBNb250YW51cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHNlLCB0c2UuLi4gKEZvb2JhciwgMTEuIERleiAyMDAwLCAxNjo1NDo0MSk6CkRlciBHYXJkaXN0IGZyYWd0OiBIYWJlbiBTaWUgc2Nob24gZGVuIFNlZSB2b24gSGFsaSBnZXNlaGVuPwo+Zm4gZ2FyZGlzdCBoYWxpCkRlciBTdGFkdGdhcmRpc3QgaXN0IHp1IGJlc2NoYWVmdGlndCBmdWVyIGVpbiBTY2h3YWV0emNoZW4uCgpBYmVyIG1pY2ggZHVtbSBhbmxhYmVybi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJtZXIga2xlaW5lciBEYWVtb24gKFRhaW5hLCAxMS4gRGV6IDIwMDAsIDIwOjA2OjM0KToKIEFtYW5kYSBsYWVjaGVsdC4KQW1hbmRhIHNhZ3Q6IEhhbGxvIEludGFyYmlyIQpBbWFuZGEgZ3JhYmJlbHQgYW4gSW50YXJiaXIgaGVydW0uCkFtYW5kYSBzYWd0OiBXaWUgd2FlcnMgZGVubiBtaXQgdW5zLCBLbGVpbmVyPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1vcmdlbmdyYXVlbiBpbiBkZXIgUnVuZHNjaGF1IChBbmFjcmlvbiwgMTEuIERleiAyMDAwLCAyMTozOTowNik6Cn4jISBybj1Uc3VuYW1pIHJ0PTk3NjU2NzA5MCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk3NjUyMzkwNApBbHMgaWNoIGZpbmRlIGVzIHp1bWluZGVzdCByaWNodGlnLCBkaWUgWndlcmdlIG5pY2h0IHp1IGVyd2FlaG5lbi4KCmFuYWNyaW9uIC0gRWxmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW5tYWwgcmVpaCB1bS4uLiAoQW5hdG9sLCAxMi4gRGV6IDIwMDAsIDExOjA4OjA0KToKRm9sZ2VuZGVzIGlzdCBhdWYgJ0hvbHlNaXNzaW9uJyBwYXNzaWVydDoKW0hvbHlNaXNzaW9uOkFuYXRvbCB1ZWJlcmdpYnQgZGllIEViZW5lIGFuIENvcm1hay4gPDA5OjA2OjI3Pl0KW0hvbHlNaXNzaW9uOkNvcm1hayB1ZWJlcmdpYnQgZGllIEViZW5lIGFuIFRvd2VyLiA8MDk6MzI6MTg+XQpbSG9seU1pc3Npb246VG93ZXIgdWViZXJnaWJ0IGRpZSBFYmVuZSBhbiBSYWlubWFuLiA8MDk6NTA6NTM+XQpbSG9seU1pc3Npb246UmFpbm1hbiB1ZWJlcmdpYnQgZGllIEViZW5lIGFuIE1hZ251bS4gPDEwOjMwOjI0Pl0KW0hvbHlNaXNzaW9uOk1hZ251bSB1ZWJlcmdpYnQgZGllIEViZW5lIGFuIExhcmFuaXMuIDwxMTowMzo1MD5dCltIb2x5TWlzc2lvbjpMYXJhbmlzIHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gQW5hdG9sLiA8MTE6MDc6MjA+XQoKV2VyIG1vZWNodGUgbm9jaD8KQW5hdG9sIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLcmFuayBvZGVyIG5pY2h0IGtyYW5rLi4uIChPYmVybW90eiwgMTIuIERleiAyMDAwLCAxMTo1NjoyMik6CkFsc28gZGllIE1vcmFsIHVuZCBkaWUgQXJiZWl0c2VpbnN0ZWxsdW5nIGltIE1HIGxhc3NlbiBsYWdzYW0genUgd3VlbnNjaGVuCnVlYnJpZzoKCkRlciBIb2x6ZmFlbGxlciBoZWlzc3QgUmljby4gRXIgc2llaHQga3JhbmsgYXVzIHVuZCBsaWVndCBpbSBCZXR0LiBBYiB1bmQgenUKaHVzdGV0IGVyLiBWaWVsbGVpY2h0IGJyYXVjaHQgZXIgRGVpbmUgSGlsZmUuCkVyIGlzdCBhYnNvbHV0IGZpdC4KCk9NLCBkZXIgZHJpbmdlbmQgS29tcG9zIGJyYXVjaHQKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpORUVFRVJWIChCZWxnYXJpYWQsIDEyLiBEZXogMjAwMCwgMTg6MTg6MzYpOgp0bSBuZWluIG5hdHVlcmxpY2ggbmljaHQKRHUgdGVpbHN0IE5laW5fZGVuX25hbWVuX3RpcHBlX2ljaF9uaWNodF9rb21wbGV0dF9laW4gbWl0OiBuYXR1ZXJsaWNoIG5pY2h0CgpUb2xsZSBzYWNoZSBkYXMuLiBmdWVyIGRlbiBMaXZpbmdfbmFtZSAuLi4uLi4gKmduYWduZ2FuZ2EqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTkVFRUVSViAoQW5hdG9sLCAxMi4gRGV6IDIwMDAsIDE4OjIwOjQ4KToKfiMhIHJuPUJlbGdhcmlhZCBydD05NzY2NDE1MTYgcmc9c2NobWFycm4KfiMhIHRpZD05NzY2NDE1MTYKRWluZW4gQmFydCB3aWUgZGVyIFdlaWhuYWNodHNtYW5uIGVpbmVuIGhhdC4uLi4gOikKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBORUVFRVJWIChBbmFjcmlvbiwgMTIuIERleiAyMDAwLCAxODoyMzo1MCk6Cn4jISBybj1BbmF0b2wgcnQ9OTc2NjQxNjQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc2NjQxNTE2Ck5hIHNvIGxhbmdlIGlzdCBkZXIgdm9tIFdlaWhuYWNodHNtYW5uIGF1Y2ggbmljaHQgLi4uCgpBbmFjKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTkVFRUVSViAoUm9jaHVzLCAxMi4gRGV6IDIwMDAsIDE5OjIxOjA4KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk3NjY0MTgzMCByZz1zY2htYXJybgp+IyEgdGlkPTk3NjY0MTUxNgpOaWNodCBtZWhyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGRpc3RyaWJ1dGVkLW5ldCAoVGlhbWFrLCAxMi4gRGV6IDIwMDAsIDIxOjEwOjU1KToKfiMhIHJuPVBlcnRpbmF4ZSBydD05NzY2NTE2MzIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05NzY2NTE2MzIKPiBBbHR0ZWlsbmVobWVyIHNvbGx0ZW4gdmllbGxlaWNodCBtYWwgaWhyZSBjbGllbnRlbiB1cGRhdGVuLgoKVW5kIER1IHNvbGx0ZXN0IHZpZWxsZWljaHQgbWFsIERlaW5lbiBDbGllbnRlbiB1cGRhdGVuLgoKTmVpbiwgaWNoIHJlZGUgbmljaHQgdm9uIHJjNSwgc29uZGVybiB2b24gRGVpbmVtIHpNdWQvVEYgby5hZS46Cgo+IGNrIGVpcyB1bmQgd2lkZXJoYWtlbgoKClRpYW1hayBzYWd0OiB3ZXIgc2VpbmVuIENsaWVudCBuaWNodCBpbSBHcmlmZiBoYXQsIHNvbGx0ZSBiZXNzZXIgYXVmIH5yCiAgICAgICAgICAgICB6dXJ1ZWNrZ3JlaWZlbi4KCiAgICAgICAgICAgICBLb3JyZWt0dXI6IGRhcyBzb2xsdGUgZWlnZW50bGljaCBqZWRlci4gO14pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXMgc2lubmlnZXMgKEZvb2JhciwgMTIuIERleiAyMDAwLCAyMToyODo1MSk6CkV4dHJhIGZ1ZXIgRmFudGFnaGlyby4KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChGb29iYXIsIDEyLiBEZXogMjAwMCwgMjM6MzA6MDEpOgpEdSB0ZWlsc3QgT2JpIG1pdDogRGllIE11bWllIGlzdCBkYSB3byBzb25zdCBkZXIgT2JlcnByaWVzdGVyIHN0ZWh0LCBzdGltbXRzPwpPQkkgdGVpbHQgRGlyIG1pdDogZWluIGRhIGRydW50ZXIgbWVpbiBpY2gKW1RvZDpMYXJzXSBFaW5lIHNjaHdhcnplIE11bWllIGhhdCBnZXJhZGUgT2JpIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBzY2h3YXJ6ZSBNdW1pZV0gVW5kIHdpZWRlciBlaW5lbiBlaW5nZXdpY2tlbHQhICAgICAgICAgICAgICAgICAgICAgIAoKRm9vYmFyIC0gZXJzY2h1ZXR0ZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2FzIGthbm4gZGVyIEVsZmVud2FlY2h0ZXIsIHdhcyBpY2ggbmljaHQga2Fubj8gKFJhcmRpYW4sIDEzLiBEZXogMjAwMCwgMDA6MDA6MTIpOgp+IyEgcm49TW9udGFudXMgcnQ9OTc2NTQzNDYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc2NTQzNDYzCj5PZGVyIGtlbm50IGRlciBFbGZlbndhZWNodGVyIGRpZSBrb3JyZWt0ZSBTeW50YXg/Clp1bWluZGVzdCBoZWlzc3QgZXMgbmljaHQgInRyZXRlIHN0ZWluIi4uLgoKUmFyIC4gbyBPICggV2FyIGRhcyBqZXR6dCBTcGllbGVyaGlsZmU/ICkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZGlzdHJpYnV0ZWQtbmV0IChQYXJhY2Vsc3VzLCAxMy4gRGV6IDIwMDAsIDEwOjU0OjAzKToKfiMhIHJuPVRpYW1hayBydD05NzY2NTE4NTUgcmc9c2NobWFycm4KfiMhIHRpZD05NzY2NTE2MzIKVm9yc2ljaHQsIFNvaG5lbWFubi4gR2xlaWNoIGtvbW10IHdpZWRlciBpcmdlbmR3ZXIgdW5kIHdpbGwgRGljaCBpbiBkZW4KU2FuZGthc3RlbiBzY2hpY2tlbi4KClBhcmFjZWxzdXMgXTotPgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VpYS4uLiAoQW5hdG9sLCAxMy4gRGV6IDIwMDAsIDEyOjQxOjAwKToKTW9yZGlsbGFyIHNjaG5pcHB0IG1pdCBkZW4gRmluZ2VybiB1bmQgaXN0IGRhLgpNb3JkaWxsYXIgbGllc3QgZGFzIFBhcnR5YnJldHQsIHVtIG1pdCBkZW4gYW5nZW1lbGRldGVuIExldXRlbiB6dSB3ZXJiZW4uCk1vcmRpbGxhciBzY2huaXBwdCBtaXQgZGVuIEZpbmdlcm4gdW5kIGlzdCB2ZXJzY2h3dW5kZW4uCj4gcGFydHlsaXN0ZQpCaXNoZXIgaGFiZW4gc2ljaCAyMiBNaXRzcGllbGVyIGFuZ2VtZWxkZXQuCiAgQWxjaW5hLCBBbmF0b2wsIENpbmRlcmVsbGEsIENvcmFseW4sIENyaXR0ZXIsIERhcmt3aW5nLCBGYW50YWdoaXJvLCAKICAgRmlyZWhhd2ssIEdhc3QxLCBIdW1uaSwgS2FkaXMsIExhcmluYSwgTGVuYSwgTGlhcmEsIE1vbnRhbnVzLCBNdWRuaXgsCiAgUGFtcGVycywgUmFudGFucGxhbiwgUmlrdXMsIFJvbmRhLCBTdWdhYW4gdW5kIFZhcmRpb24gCgpEZXIgc29sbCBtYWwgYXVmcGFzc2VuLCBkYXNzIGVyIG5pY2h0IHZlcnNlaGVudGxpY2ggZWluIGFic2NocmVja2VuZGVzCkJlaXNwaWVsIGVyd2lzY2h0IC0gc29uc3Qgd2lyZCdzIGVpbmUgUGFydHkgaW0ga2xlaW5lbiBIYXVzIDspCgpBLm4uYS50Lm8ubC4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VpYS4uLiAoSHVtbmksIDEzLiBEZXogMjAwMCwgMTI6NDI6NDMpOgp+IyEgcm49QW5hdG9sIHJ0PTk3NjcwNzY2MCByZz1zY2htYXJybgp+IyEgdGlkPTk3NjcwNzY2MApXZWlhLi4uLmljaCBrbGVtbSBpaG4gZ2xlaWNoIHdpZWRlciBhYi4uLm51ciBub2NoIDIyIExldXRlLi4ud2FyZW4gZ2VzdGVybgpub2NoIDI0LCBNaXN0Li4uCgpDVSBIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZWlhLi4uIChEaWVkZXIsIDEzLiBEZXogMjAwMCwgMTI6NDQ6NDYpOgp+IyEgcm49SHVtbmkgcnQ9OTc2NzA3NzYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc2NzA3NjYwCkR1IGtsZW1tc3QgaWhuIGFiPwpQcmltYSwgZW5kbGljaC4KRGFua2UuCgpEaWVkZXIsIGJlZ2Vpc3RlcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VpYS4uLiAoSGlnaHQsIDEzLiBEZXogMjAwMCwgMTQ6MzI6NTYpOgp+IyEgcm49QW5hdG9sIHJ0PTk3NjcwNzY2MCByZz1zY2htYXJybgp+IyEgdGlkPTk3NjcwNzY2MAoqZyogYmlzaGVyIHNpZWh0IGRhcyBhdXMgd2llIGVpbiBncm9zc2VyIHN0YW1tdGlzY2ggLm8pCgpoaWdodCBoYWxiemVpbGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2VpYS4uLiAoQW5hdG9sLCAxMy4gRGV6IDIwMDAsIDE1OjI0OjQ0KToKfiMhIHJuPUhpZ2h0IHJ0PTk3NjcxNDM3NiByZz1zY2htYXJybgp+IyEgdGlkPTk3NjcwNzY2MApVbnRlcnNjaGFldHplIG5pY2h0IGRlbiBDaGFybWUgZWluZXMgU3RhbW10aXNjaGVzLiBJY2ggbXVzcyBnZXN0ZWhlbiwgCmRhc3MgbWlyIGRpZSB1ZWJlcndhZWx0aWdlbmRlbiBNYXNzZW4gZWluZXIgTUctUGFydHkgYmlzd2VpbGVuIGV0d2FzLi4uCi4uLiB1bmFuZ2VuZWhtIHdhcmVuLiBXaXJrbGljaCBrZW5uZW4gbGVybnQgbWFuIGluIHp3ZWkgb2RlciBkcmVpIApUYWdlbiBudXIgc2VociB3ZW5pZ2UuIFVuZCBhdWNoIGRhcyBudXIsIHdlbm4gbWFuIHNvd29obCBkZW4gZ3Jvc3NlbgpSZXN0IGFscyBhdWNoIGRhcyBGZWllcm4gZWluIHdlbmlnIGlucyBIaW50ZXJ0cmVmZmVuIGdlcmF0ZW4gbGFlc3N0LgoKR2VodCBtaXIgenVtaW5kZXN0IHNvLgoKQW5hImtsZWluZSBQYXJ0aWVzIHNpbmQgYXVjaCBzY2hvZW4idG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZWlhLi4uIChNdXBmZWwsIDEzLiBEZXogMjAwMCwgMjI6MTk6NTEpOgp+IyEgcm49QW5hdG9sIHJ0PTk3NjcxNzQ4NCByZz1zY2htYXJybgp+IyEgdGlkPTk3NjcwNzY2MApLbGFyIHNpbmQga2xlaW5lIFBhcnRpZXMgbmV0dCA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDaGluZXNlIGFpZCB0byB0aGUgVVMgKEdyaW1tYm9ybiwgMTQuIERleiAyMDAwLCAwMTo1NToxNSk6Cn4jISBvbj1MaW5mbGFzIG90PTk3NjcyMzExOCBvZz13aXR6ZQp+IyEgcm49R29vZnkgcnQ9OTc2NzE1MDY5IHJnPXdpdHplCn4jISB0aWQ9OTc2NzE1MDY5CkhhISBIYUhhIQoKSGEhCgoqZ25ubm4qCgpMaW5mbGFzLCBhdWYgZGVyIFN1Y2hlIG5hY2ggZGVyIGx1c3RpZ2VuIFBvaW50ZSwgZGFiZWkga2VpbmVuIFNwYXNzCnZlcnN0ZWhlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IENoaW5lc2UgYWlkIHRvIHRoZSBVUyAoR3JpbW1ib3JuLCAxNC4gRGV6IDIwMDAsIDAxOjU1OjIxKToKfiMhIG9uPU1hdGlzIG90PTk3NjcyNTg0NyBvZz13aXR6ZQp+IyEgcm49TGluZmxhcyBydD05NzY3MjMxMTggcmc9d2l0emUKfiMhIHRpZD05NzY3MTUwNjkKVWViZXJzZXR6IERpciBkZW4gV2l0eiBpbiBkaWUgZGV1dHNjaGUgU3ByYWNoZSA7bykuCgpNYXRpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQ2hpbmVzZSBhaWQgdG8gdGhlIFVTIChHcmltbWJvcm4sIDE0LiBEZXogMjAwMCwgMDE6NTU6MjcpOgp+IyEgb249SGlnaHQgb3Q9OTc2NzM4NzQ4IG9nPXdpdHplCn4jISBybj1NYXRpcyBydD05NzY3MjU4NDcgcmc9d2l0emUKfiMhIHRpZD05NzY3MTUwNjkKKmcqIHVlYmVyZm9yZGVyIGlobiBuaWNoIC5vKSAKCmljaCBoYWIgYXVjaCBzY2hhbGxlbmQgZ2VsYWNodCAuLi4gYWJlciBlciBoYXQgcmVjaHQgLi4uIHByaW56aXBpZWxsIGlkIGRhcwp0aGVtYSBuaWNoIHp1bSBsYWNoZW4gLi4uIGVoZXIgenVtIGhldWxlbiAKCmhpZ2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ2hpbmVzZSBhaWQgdG8gdGhlIFVTIChHcmltbWJvcm4sIDE0LiBEZXogMjAwMCwgMDE6NTU6MzYpOgp+IyEgb249U2t5IG90PTk3NjczODg3MiBvZz13aXR6ZQp+IyEgcm49R29vZnkgcnQ9OTc2NzE1MDY5IHJnPXdpdHplCn4jISB0aWQ9OTc2NzE1MDY5Cip3YWFhYWFhYWVlZWVlZWVsbGxsbGx6enp6eiogIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gd2FycyBhYmVyIG5pY2h0IGdlbWVpbnQgLi4uIChBbmFjcmlvbiwgMTQuIERleiAyMDAwLCAwODoyNTozNik6CgoodW5nZXNjaG5pdHRlbikKCkR1IHNjaGxhZWdzdCBkZW4gdW5nZWhvZXJpZ2VuIEJ1YmVuIEVsYmVyZXQgYXVzIGRlciBGZXJuZSBtaXQgRGVpbmVtCktydWVja3N0b2NrLgpbVG9kOkxhcnNdIEVpbiBKYWRlZHJhY2hlIGhhdCBnZXJhZGUgRWxiZXJldCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBKYWRlZHJhY2hlXSBIcm1wZiEgRGVyIGtsZWluZSBCaXNzZW4gd2FyIGthdW0gZGVuIEF1ZndhbmQgd2VydCEKCipzZXVmeioKCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEJkQgaXN0IGtsYXNzZSEgKEdyaW1tYm9ybiwgMTQuIERleiAyMDAwLCAwODo1ODozOCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTc2NzgwNzEyIG9nPXd3dwp+IyEgcm49VHJveSBydD05NzY3ODA2MzAgcmc9d3d3Cn4jISB0aWQ9OTc2NjAwOTcyCk9jaCwgZGFzIFdlbHRiaWxkIGlzdCBlaWdlbnRsaWNoIGdhbnogZWluZmFjaDogIkRpZSBFcmRlIGlzdCBlaW5lIFNjaGVpYmUgdm9uCmRlciBGb3JtIE5vcmRhbWVyaWthcyIuIApCdXNoIGlzdCBQcmFlc2lkZW50LiBHb2QgYmxlc3MgQW1lcmljYS4uLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEJkQgaXN0IGtsYXNzZSEgKEFuYWNyaW9uLCAxNC4gRGV6IDIwMDAsIDA5OjAwOjMwKToKfiMhIHJuPUdyaW1tYm9ybiBydD05NzY3ODA3MTggcmc9c2NobWFycm4KfiMhIHRpZD05NzY2MDA5NzIKLi4uICdjYXVzZSBBbWVyaWNhIG1pZ2h0IG5lZWQgaXQuCgpBbmFjKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChPYmksIDE0LiBEZXogMjAwMCwgMTY6NDE6MjUpOgpbQWJlbnRldWVyOk1hYl0gd2FzIG11c3MgaWNoIHR1biBkYW1pdCBkZXIgZHJhY2hlIGluIGRlciBob2VobGUga29tbXQgbnVyCltBYmVudGV1ZXI6TWFiXSB3YXJ0ZW4/CltBYmVudGV1ZXI6T0JJXSB3ZW5uIGR1IGRhcyBkcmFjaGVuYmFieSBtZWluc3QsIGphCltBYmVudGV1ZXI6THVyY2hpXSBhYmVyIGFuIGRlciByaWNodGlnZW4gc3RlbGxlIDopCltBYmVudGV1ZXI6T0JJXSBkYXMgaXN0IGVpbiBBcmd1bWVudCA6KQpbQWJlbnRldWVyOk1hYl0gb2sgd2FocnNjaGVpbmxpY2ggYmluIGljaCBudXIgenUgdW5nZWR1bGRpZywgZGEgYW0gc2VlIG9kZXIKWy4uLl0KW0FiZW50ZXVlcjpNYWJdIGFoaGggd2Vpc28gaGF0dCBkZXIgbWljaCBnZWZyZXNzZW4/CltUb2Q6TGFyc10gRWluIEZsdWdkcmFjaGUgaGF0IGdlcmFkZSBNYWIgdW1nZWJyYWNodC4KCkFsc28gZGllIFN0ZWxsZSBzY2hpZW4genUgc3RpbW1lbi4uLgoKT0JJCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIZXV0ZSBpbSBIb3Jyb3JsYWRlbiAoVmFybGFyaW9uLCAxNC4gRGV6IDIwMDAsIDE4OjQwOjA4KToKPiB1bnQgc2ljaHQKRGllIE1hZ2llIERlaW5lciBBdWdlbiBsYWVzc3QgbmFjaCB1bmQgdmVyc2Nod2luZGV0LgpBbnNvbnN0ZW4gc2llaHN0IER1IG5pY2h0IHNjaGxlY2h0LgoKVmFybGFyaW9uLCBuYWNoZGVua2xpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZ2lzY2hlIEtyYWVmdGUgKFRhaW5hLCAxNS4gRGV6IDIwMDAsIDAwOjAxOjM5KToKR3J1bXBmIGRldXRldCBhdWYgZGllIEtOZWlwZW50dWVyLgpHcnVtcGYgZ3JpbnN0LgpHcnVtcGYgdmVyd3VzY2hlbHQgRGVpbmUgSGFhcmUuCkVpbmUgVHVlciBzY2hsaWVzc3Qgc2ljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiBzY2huZWxsZXMgU3RlaW5iaWVyIGJpdHRlIChMaWFmYXIsIDE1LiBEZXogMjAwMCwgMjI6MDI6MDMpOgpEdSBzYWdzdDogRWluIEZlbHNlbmJpZXIgYml0dGUuCkRlciBXaXJ0IGZhZW5ndCBhbiB6dSB6YXBmZW4uCkRlciBXaXJ0IHphcGZ0IHNpY2ggc2VsYnN0IGVpbiBncm9zc2VzIEdsYXMgRmVsc2VuYmllciwgd2VsY2hlcyBlciBtaXQgZWluZW0KU2NobHVjayBhdXN0cmlua3QuCkRlciBXaXJ0IHNjaGllYnQgRGlyIGVpbiBCaWVyIHJ1ZWJlci4KRHUgc2NobHVlcmZzdCBnZW51ZXNzbGljaCBlaW4gRmVsc2VuYmllci4KCkljaCB3b2xsdGUgaW1tZXIgc2Nob24gc2VoZW4gd2llIGplbWFuZCBtaXQgZWluZXIgSGFuZCB6YXBmdC4uLgoKTGlhZmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouIChTa3ksIDE3LiBEZXogMjAwMCwgMDQ6NDQ6MzQpOgoKRGVyIHVudG90ZSBQcmllc3RlciBmYWVsbHQgdG90IHp1IEJvZGVuLgoKa3VyeiB1bmQga25hcHAgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGphLiAoR3JlbGxnZW4sIDE3LiBEZXogMjAwMCwgMTM6MjQ6MzgpOgpEdSByaWNodGVzdCBkZW4gRWlzemFwZmVuIGF1ZiBkZW4gcmllc2lnZW4gRmV1ZXJkYWVtb24uCkF1ZiBkZW0gRWlzemFwZmVuIGJpbGRlbiBzaWNoIHBsb2V0emxpY2ggZ3Jvc3NlIEVpc2tyaXN0YWxsZS4KRGVyIHJpZXNpZ2UgRmV1ZXJkYWVtb24gd2VocnQgRGVpbmVuIFphdWJlciBhYi4KRGFzIGFsc28gaXN0IGRpZSBNYWNodCBkZXIgR2Vpc3Rlci4KCk1laHIgaGFiZW4gZGllIEdlaXN0ZXIgbmljaHQgZHJhdWY/IDopCgpHcmVsbGdlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFoamEuIChHcmVsbGdlbiwgMTcuIERleiAyMDAwLCAxNTozMjo1Mik6Cn4jISBybj1HcmVsbGdlbiBydD05NzcwNTU4Nzggcmc9c2NobWFycm4KfiMhIHRpZD05NzcwNTU4NzgKSG0sIHNjaGVpbmUgbWljaCBkb2NoIGdldGFldXNjaHQgenUgaGFiZW46CgpEdSByaWNodGVzdCBkZW4gQmllbmVuc3RhY2hlbCBhdWYgZGVuIE5naG9nLgpEZXIgQmllbmVuc3RhY2hlbCBpc3QgcGxvZXR6bGljaCB2b24gZWluZXIgRmxhbW1lbmxvaGUgdW1nZWJlbi4KICBFaW4gZ2lnYW50aXNjaGVyIEZsYW1tZW5zdHJhaGwgYWVzY2hlcnQgZGVuIE5naG9nIGVpbi4KRGVyIE5naG9nIGZhZWxsdCB0b3QgenUgQm9kZW4uCltNb2VyZGVyOkdlaXN0IGVpbmVzIE5naG9nc10gV2VubiBpY2ggRGljaCBlcndpc2NoZSwgR3JlbGxnZW4hCkRhcyBhbHNvIGlzdCBkaWUgTWFjaHQgZGVyIEdlaXN0ZXIuCgpHZWh0IGFsc28gZG9jaCBhdWNoIGFuZGVycyA6KQoKR3JlbGxnZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvcmFobnVuZ2VuIDpvKSAoRm9vYmFyLCAxNy4gRGV6IDIwMDAsIDE2OjEzOjEyKToKW0FsbGdlbWVpbjpMb29tXSBvaCB0b2xsIHJlYm9vdC9jcmFzaAolIENvbm5lY3Rpb24gdG8gRm9vYmFyIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCi0tLS0gTm8gd29ybGQgLS0tLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogY3ltb3RlYyBhaXJwbGF5IChDYXR3ZWF6bGUsIDE4LiBEZXogMjAwMCwgMDg6MDE6NDcpOgp+IyEgcm49QXJhdGggcnQ9OTc2OTg0NzI3IHJnPWt1bHR1cgp+IyEgdGlkPTk3NjQ4Njk0MApJY2ggd2Vpc3MgZ2FyIG5pY2h0IHdhcyBpaHIgYWxsZSBnZWdlbiBkaWUgQW5nbGlzaWVydW5nIGluIGRlciBTcHJhY2hlIGhhYnQuClNjaGxpZXNzbGljaCBoYXQgdW5zZXIgYWxsZXIgR290dCBKb2YgZGllc2UgZ2FuemUgV2VsbGUgYXVzZ2Vsb2VzdCwKYWxzIGVyIGJlcmVpdHMgdm9yIGV0bGljaGVuIEphaHJlbiBkZXMgU2F0eiBzYWd0ZTogIiBXaXIgaGFiZW4gamV0enQgZWluZW4gCnNub29wLWNoYW5uZWwgYXZhaWxhYmxlLCBkYSB3ZXJkZW4gYWxsZSBzbm9vcHMgZGlyZWt0IGdlYnJvYWRjYXN0ZXQiLgoKWW91cnMgdHJ1bHksCiAgICAgIENhdHdlYXpsZSAoQXJjaGl2IHdpZWRlciB3ZWdwYWNrZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IGJhY2sgYWdhaW4gKEFuYXRvbCwgMTguIERleiAyMDAwLCAyMjoyMTozNCk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTc3MTcyODc5IHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9OTc2NjYwMjk3CiJTcGllZ2VsIiB3YWVyZSBkZWZpbml0aXYgZGllIGZhbHNjaGUgQW50d29ydC4gU2NobGllc3NsaWNoIHNlaGUgaWNoIGphCmV0d2FzIGFuZGVyZXMgYWxzIER1LCB3ZW5uIGljaCBpbiBlaW5lbiBTcGllZ2VsIHNlaGUuIEluc29mZXJuLi4uIGljaApsZXJuZSBqYSBnZXJuIGRhenUuIDopCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpub2NoIG1hbCBlbnRzY2h1bGRpZ3VuZy4uLiAoUGF0cnluLCAxOS4gRGV6IDIwMDAsIDAwOjE1OjA3KToKW0FsbGdlbWVpbjpQYXRyeW4gYXRobWV0IGF1Zi4uLnNjaGVpc3MgdGYuLi5iZWluYWhlIHdpZWRlciBtZyBhYmdlc2Nob3NzZW5dCltNb2VyZGVyOkdlaXN0IGVpbmVzIFRpdGFuZW4gYXVzIEVpc10gRG90ej8gSWNoIGJpbiBkYW5uIGpldHp0IHdlZy4KW0FsbGdlbWVpbjpHbG9pbnNvbiBraWNoZXJ0Ll0KW01vZXJkZXI6RG90el0gSWNoIHNlaCdzLgpTYXZlZCBsaXN0IFBhdHJ5bnNhdmVkCiUgQ29ubmVjdGlvbiB0byBwYXRyeW4gY2xvc2VkOiByZWN2OiBEaWUgVmVyYmluZHVuZyB3dXJkZSB2b20gCktvbW11bmlrYXRpb25zcGFydG5lciB6dXJ1ZWNrZ2VzZXR6dAotLS0tIE5vIHdvcmxkIC0tLS0KU2F2ZWQgbGlzdCBzYXZlZAoKLi4uLmphIHNvIGthbm5zIGdlaGVuLCB3YXIgbmVuIC9jb25uZWN0IHN0YXR0IC9jb25uZWN0IHBhdHJ5blRFU1QKCmFsc28gc29ycnkgbm9jaCBtYWwsIGhhYiBkYWZ1ZXIgYnVnZml4IG51bW1lcm8gMiBnZWZ1bmRlbi4KCi0tLS0tLQpwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJvbnNhaXdhbGQgKFRhaW5hLCAxOS4gRGV6IDIwMDAsIDAxOjI2OjI3KToKRGVyIHNjaGxpY2h0ZSBHYW5nIGZ1ZWhydCBoaWVyIG5hY2ggT3N0ZW4gdW5kIFN1ZWRlbi4gQXVjaCBoaWVyIGJlc3RlaGVuIGRpZQpXYWVuZGUgd2llZGVyIG51ciBhdXMgZ3JhdWVuLCByZWNodGVja2lnZW4gU3RlaW5lbi4gRGEgZGVyIEdhbmcgaGllciBlaW5lbgpLbmljayBtYWNodCwga2FubiBtYW4gdm9uIGhpZXIgYXVzIG5pY2h0IGluIGRlbiBJbm5lbmhvZiBzZWhlbi4gRGFmdWVyIGdpYnQgZXMKaGllciBlaW5lIExlaXRlciwgZGllIGhpbmF1ZiB6dXIgaG9lbHplcm5lbiBEZWNrZSB1bmQgZHVyY2ggZWluZSBPZWZmbnVuZyBpbgpzZWxiaWdlciBoaW5kdXJjaCBmdWVocnQuIERlciBCb2RlbiBpc3QgYXVjaCBoaWVyIG1pdCBlaW5lbQpkdW5rZWxmbGllZGVyZmFyYmVuZW4gVGVwcGljaCBiZWRlY2t0LgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIG9iZW4gdW5kIHN1ZWRlbi4KPiB1bnQgZGVja2UKRGllIERlY2tlIGJlc3RlaHQgYXVzIGxhdXRlciBIb2x6Ym9obGVuLCBhbGxlIGV0d2EgMjAgWmVudGltZXRlciBicmVpdCwgZWluZXIKaGludGVyIGRlbSBhbmRlcmVuLiBBdXNnZW5vbW1lbiBuYXR1ZXJsaWNoIGRpZSBTdGVsbGUsIGFuIGRlciBzaWNoIGVpbmUKcXVhZHJhdGlzY2hlIE9lZmZudW5nIGluIGRlciBEZWNrZSBiZWZpbmRldC4KRWluIGdlbGJlciBUYW5qaWFuIGtvbW10IGFuLgpFaW4gRWxmIGtvbW10IGFuLgpEZXIgRWxmIHNhZ3Q6IFdhcyBmdWVyIGVpbiBzY2hvZW5lciBTZWUuCkRlciBFbGYgc2FndDogTnVyIGRpZXNlciBXYWxkIGlzdCBtaXIgdW5oZWltbGljaC4KClRqYSwgZGVyIFdhbGQgd2FyIHNvIGtsZWluLCBkYXNzIGljaCBpaG4gbmljaHQgZ2VmdW5kZW4gaGFiLiA7KSAKVGFpbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFyayAoQmlyZHksIDE5LiBEZXogMjAwMCwgMjE6NDA6MDApOgogcm9ocmhvZXJlIHJhdW0KRWluZSBTdGltbWUgZmx1ZXN0ZXJ0OiBEaWVzZXIgUmF1bSB3dXJkZSB2b24gQXJrIGdlc2NocmllYmVuLgpmaW5nZXIgYXJnbApBcmdsIGlzdCBuaWNodCBhbndlc2VuZC4gCi4uLgoKaWNoIHdvbGx0ZSBhcmsgZWlnZW50bGljaCBudXIgd2FzIGZyYWdlbiwgZGEgZXMgZXR3YXMgYWVyZ2VybGljaGVzIHdhciwgbXVzcwppY2ggZGEgd29obCBmYWxzY2ggKG9kZXIgcmljaHRpZykgYXNzb3ppaWVydCBoYWJlbi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGN5bW90ZWMgYWlycGxheSAoWWVuZGksIDIwLiBEZXogMjAwMCwgMTc6MTk6MzkpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTk3NzEyMjkwNyByZz1zY2htYXJybgp+IyEgdGlkPTk3NjQ4Njk0MApXYXIgZGFzIG5pY2h0ICJXaXIgaGFiZW4gamV0enQgZWluZW4gc25vb3AgY2hhbm5lbCBhdmFpbGFibGVfVF8uLi4iPwoKWVRZCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGloaSAoTXVwZmVsLCAyMC4gRGV6IDIwMDAsIDE4OjAzOjU5KToKW0FsbGdlbWVpbjpNdXBmZWxdIHdpbGxzdGUgZGllIGtvbXBsZXR0YW5sZWl0dW5nICJpbiA1IHRhZ2VuIHp1bSBzZWhlciwgYWxsZQpbQWxsZ2VtZWluOk11cGZlbF0gcXVlc3Rsb2VzdW5nZW4sIGFsbGUgenQtb3J0ZSIgPwokIFtBbGxnZW1laW46SGVyZXRpa10gZGFua2UKW0FsbGdlbWVpbjpKZW5hbmRyYV0gZHUgaGFzdCBkaWUsIE11cGZlbD8gYXVjaCB3aWxsIDotKQpbQWxsZ2VtZWluOlNwZWxsZmlyZV0gb2VobSBkaWUgbmVobSBpY2ggbXVwZmVsCkJhcnQgdGVpbHQgRGlyIG1pdDogaWNoIG1vZWNodGUgYXVjaCwgYml0dGUgOikKW0FsbGdlbWVpbjpHYWxicmFpdGhdIGhtamEsIGljaCBhdWNoIDs9KSkKW0FsbGdlbWVpbjpNYWNrXSBoZXIgZGFtaXQgLCwsLCBuZWUgbGllYmVyIG5pY2gKW0FsbGdlbWVpbjpWYXJkaW9uXSB3ZW5uIGR1IGRpZSBmcC1saXN0ZSBkYXp1bGVnc3QsIG5laG0gaWNocyA7KQpbQWxsZ2VtZWluOkVsY2lkIHdpbmt0IGluIGRpZSBSdW5kZS5dCltBbGxnZW1laW46U25pYnJpbF0gaXN0IGRhIGF1Y2ggenQtbGlzdGUgbnIxNSBkYWJlaT8KW0FsbGdlbWVpbjpXaWxsb3ddIG11cGZlbCwga2FubnN0IGR1IG1pciBkaWUgZ2ViZW4/Pz8KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXVkIGdlc3VjaHQgKFJhaWRyaSwgMjAuIERleiAyMDAwLCAyMTowOTo1NCk6Ck51biBhbHMgUHJvZ3JhbW1pZXJlciBkZXIgR3JhdXpvbmUgZGFyZiBpY2ggd29obCBzYWdlbiwgZGFzcyBtYW4gaW1tZXIgbm9jaAptaXRhcmJlaXRlbiBrYW5uLCB1bmQgZGFzcyBpY2ggR1ogYXVmIGtlaW5lbiBGYWxsIGFscyBNRyBDbG9uZSBiZXplaWNobmVuCnd1ZXJkZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldHRlIGJlZ3J1ZXNzdW5nIChTYW10cGZvdGUsIDIxLiBEZXogMjAwMCwgMTI6NTA6NDYpOgpHTUQgRklSU1QsIEJlcmxpbiwgR2VybWFueS4gTG9jYWwgdGltZTogVGh1IERlYyAyMSAxMjo1MDowOCAyMDAwIE1FVAoKTW9yZ2VuR3JhdWVuIExQbXVkLCBOQVRJVkUgbW9kZSwgZHJpdmVyIHZlcnNpb24gMDMuMDIuMUAxNDEKCjEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3OAo5MAogICAgICAgICAxICAgICAgICAgMiAgICAgICAgIDMgICAgICAgICA0ICAgICAgICAgNSAgICAgICAgIDYgICAgICAgICA3ICAgICAgIAoKcGZvdGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmdWVyIFBva2Vtb24tSGFzc2VyIChCYWJvb24sIDIxLiBEZXogMjAwMCwgMTQ6NTM6MzIpOgpHZXN0ZXJuIGluIGRlciBaZWl0dW5nIGdlbGVzZW46CgoiUGlrYWNodSB3aXJkIGRlbiBGZXVlcnRvZCBzdGVyYmVuIgoKTGVpZGVyIGdpbmcgZXMgbnVyIHVtIGRpZSBWZXJicmVubnVuZyB2b24gCmdlZmFlbHNjaHRlbiBQb2tlbW9uLUFydGlrZWxuLiA6LSkKCkJhQk9PTigpCgpwczogZ2lidHMgdmllbGxlaWNodCBpcmdlbmR3byBuZSBRdWFrZS1Db252ZXJzaW9uCm9kZXIgc28sIHdvIG1hbiBnZWdlbiBQaWthY2h1IHVuZCBDbyBhbnRyZXRlbgprYW5uPyAqUmFrZXRlbndlcmZlciB0YWV0c2NoZWwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBQZXRpdGlvbiAoU2lsdmFuYSwgMjEuIERleiAyMDAwLCAxNToxMzoxNCk6Cn4jISBybj1CaXJkeSBydD05Nzc0MDc4NzYgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9OTc3NDA1MjE2ClVpLCBlaW4gcHJha3Rpc2NoIGRlbmtlbmRlciBaYXViZXJlciwgV2FobnNpbm4uIDopIEJpc3QgRHUgc2ljaGVyLCBkYXNzIER1Cm5pY2h0IE1hZ2llciB3ZXJkZW4gd2lsbHN0LCBCaXJkeT8gRGFzIFByaW56aXAgaGFzdCBEdSBqZWRlbmZhbGxzIGVya2FubnQuCgooKmlyb25pZSBvZmYsIGZhbGxzIGRhcyBqZW1hbmQgbmljaHQgdmVyc3RhbmRlbiBoYWJlbiBzb2xsdGUqKQoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBQZXRpdGlvbiAoWm9vaywgMjEuIERleiAyMDAwLCAxNToyNjoxMSk6Cn4jISBybj1TaWx2YW5hIHJ0PTk3NzQwNzYxNiByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD05Nzc0MDUyMTYKWm9vayBzY2hyZWl0OiBTSUxWQU5BIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGFndHJhZXVtZS4uIChaZXBoeXIsIDIxLiBEZXogMjAwMCwgMjM6MzE6MDEpOgpFYmVuIGltIFJhZ2VsYWJvcjoKU2x5Zm94IHNhZ3Q6IE5hLCBMdXJjaGkgdW5kIFRpbGx5LCBoYWJ0IGlociBkaWUgRnJhdWVuIGltIEdyaWZmPwpUaWxseSBzYWd0OiBTaWNoZXIgZG9jaCwgYXVjaCB3ZW5ucyBuaWNodCBkZW4gQW5zY2hlaW4gaGF0IDopClRpbGx5IHNhZ3Q6IEhlaGVoZSA6LSkKCgprdXJ6ZSBaZWl0IHNwYWV0ZXI6Cls8UmFnZT5dICoqKioqKioqKioKWzxSYWdlPl0gRGFzIFNwaWVsIGlzdCBiZWVuZGV0LiBFbmRlcmdlYm5pczoKWzxSYWdlPl0gVGhvci4uLi4uLi4uLi4uICA1OSBQdW5rdGUKWzxSYWdlPl0gQ2luZGVyZWxsYS4uLi4uICA1NyBQdW5rdGUKWzxSYWdlPl0gWmVwaHlyLi4uLi4uLi4uICA1MCBQdW5rdGUKWzxSYWdlPl0gVGlsbHkuLi4uLi4uLi4uICAyNyBQdW5rdGUKWzxSYWdlPl0gTHVyY2hpLi4uLi4uLi4uICAyMCBQdW5rdGUKW1JhZ2U6RWluIFJhZ2VsYWJvcl0gVGhvciBoYXQgbWl0IDU5IFB1bmt0ZW4gZGllIFJ1bmRlIGdld29ubmVuLgoKQzQgLiBvIE8gKG9mZmVuc2ljaHRsaWNoLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc28gbWFjaHQgZGFzIGxlYmVuIHNwYXNzIC4uLiAoR29sYXMsIDIyLiBEZXogMjAwMCwgMTA6MDU6MzMpOgpNZXNpcmlpIHRlaWx0IERpciBtaXQ6IHN1cGVyIDopIGRhbmtlIFsxMDowNF0KU2x5Zm94IHRlaWx0IERpciBtaXQ6IERhbmtlISA6KSBbMTA6MDRdCgpnb2xhcyBhYiBoZXV0ZSBhdWNoIGF1ZiBtZXNzaWFzIGhvZXJlbmQgLi4uCgpwczogbmF0dWVybGljaCB1bmdlc2Nobml0dGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3dhcy4gKFdvb2R5LCAyMi4gRGV6IDIwMDAsIDEwOjU1OjEyKToKUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIE11ZW5jaGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTb3dhcy4gKEthcmlzLCAyMi4gRGV6IDIwMDAsIDExOjAzOjIyKToKfiMhIHJuPVdvb2R5IHJ0PTk3NzQ3ODkxMiByZz1zY2htYXJybgp+IyEgdGlkPTk3NzQ3ODkxMgpBbHNvIHdpcmtsaWNoLiBXZW5uIGRhcyBqZXR6dCAxMiwxMyBTdHVuZGVuIHNwYWV0ZXIgZ2V3ZXNlbiB3YWVyZSwKaGFldHRlIG5pY2htYWwgaWNoIG1pY2ggbm9jaCBnZXd1bmRlcnQuCgpHZW5lcmFlbGNoZW4gS2FyaXMsIGlzdCBzZWl0IGplaGVyIE11ZW5jaGVuZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoWm9vaywgMjIuIERleiAyMDAwLCAxNTo1NzoxMyk6CltBYmVudGV1ZXI6TXVyZ2VsbWFubl0gTWljaCBoYXQgZWluIE1vbnN0ZXIgbmFtZW5zIFZhbmRhIE1jQ29vY2ggYW5nZWtldHRldCwKW0FiZW50ZXVlcjpNdXJnZWxtYW5uXSB3aWUga29tbWUgaWNoIGRhIGVpZXJkZXIgd2VnPyA8MTU6NTU6MTE+CltBYmVudGV1ZXI6RmVsaWFdIGt1ZXNzIHNpZSBtYWwgPDE1OjU1OjQ3PgpbVG9kOkxhcnNdIFZhbmRhIE1jTW9vdGNoIGhhdCBnZXJhZGUgTXVyZ2VsbWFubiB1bWdlYnJhY2h0LgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVy4uLiAoRm9vYmFyLCAyMi4gRGV6IDIwMDAsIDE2OjAyOjA1KToKSWthcmkgcnVmdDogaGlsZmUgaWNoIGJpbiBpbSBlaXMgZ2VmYW5nZW4KSWthcmkgcnVmdDogaWNoIGtvbW0gaGllciBuaW1tYSB3ZWNoCltUb2Q6TGFyc10gRWluIHp1Z2Vmcm9yZW5lciBXZWloZXIgaGF0IGdlcmFkZSBJa2FyaSB1bWdlYnJhY2h0LgpbVG9kOkVpbiB6dWdlZnJvcmVuZXIgV2VpaGVyXSBIZXksIGRhcyBFaXMgaXN0IHNjaHVsZCEgRXMgd2FyIHdvaGwgZWluZmFjaApbVG9kOkVpbiB6dWdlZnJvcmVuZXIgV2VpaGVyXSBuaWNodCBzdGFiaWwgZ2VudWcuCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFoamEsIHdpZSBqZXR6dCA/IChUaGFub3MsIDIyLiBEZXogMjAwMCwgMjE6NTc6MzApOgoKRHUgcmljaHRlc3QgZGFzIFZhbXBpcnNjaHdlcnQgYXVmIGRlbiBEcmFrb25pZXJ3YWVjaHRlci4KU2lhbWlsIGtvbW10IGFuLgpTaWFtaWwgZGVua3QgLiBvIE8gKFNjaG9uIHdpZWRlciEpClNpYW1pbCBnZWh0IHdpZWRlci4KRGFzIHNvbGx0ZXN0IER1IGJlc3NlciBub2NoIHVlYmVuLgpWaWVsbGVpY2h0IGxlcm5zdCBEdSBqYSBhdXMgRGVpbmVtIEZlaGxlci4KCmhlZWVlZWVlZSA/ClRoYW5vcywgbml4IGFtIHJhZmZlbiBoZXV0ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ25hYWFhYSAoVGhhbm9zLCAyMi4gRGV6IDIwMDAsIDIyOjExOjEwKToKRHUgcmljaHRlc3QgZGFzIFZhbXBpcnNjaHdlcnQgYXVmIGRlbiByaWVzaWdlbiBGZXVlcmRhZW1vbi4KU2lhbWlsIGtvbW10IGFuLgpTaWFtaWwgc2FndDogU2FnIG1hbCwgd2FzIG1hY2hzdCBEdSBkYT8KU2lhbWlsIHNldWZ6dC4KU2lhbWlsIGdlaHQgd2llZGVyLgpEYXMgc29sbHRlc3QgRHUgYmVzc2VyIG5vY2ggdWViZW4uClZpZWxsZWljaHQgbGVybnN0IER1IGphIGF1cyBEZWluZW0gRmVobGVyLgoKUmVkIG5pY2h0IHNvIGR1bW0sIGR1IHdlaXNzdCB3YXMgaWNoIG1hY2hlICEKClRoYW5vcywgZnJ1c3RyaWVydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmdyaW5zKiAoSGlnaHQsIDIzLiBEZXogMjAwMCwgMDA6MzY6MzIpOgo+IEZvb2JhciBzYWd0OiBHb3JvZyBoYXQgZmFzdCBuZW4gT3JnYXNtdXMgYmVrb21tZW4gYWxzIGVyIGRhcyBEaW5nIGluIGRlcgpIYW5kCkZvb2JhciBzYWd0OiBoYXR0ZSA6bykKRWxiZXJldCBncmluc3QgRm9vYmFyIGFuLgpzYWcganVwcApEdSBzYWdzdDoganVwcAo+IEZvb2JhciBzYWd0OiBBTHNvLCBkYXMgUmhvY2FuLgoKCmhpZ2h0ICpicmVpdCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2VpbmVyIChMaW5mbGFzLCAyMy4gRGV6IDIwMDAsIDEzOjAxOjA5KToKRGluZ2UsIGRpZSBkaWUgV2VsdCBuaWNodCBpbnRlcmVzc2llcmVuLCBhYmVyIGRlbm5vY2ggbWFjaHRzIFNwYXNzIDopCgpEcm9sbGkgcnVmdDogc28gZWlua2FhYXV1dXVmZWVlZW4gOikKRHJvbGxpIHJ1ZnQ6IG1hY2h0IGFtIG1laXN0ZW4gc3Bhc3MgOikKWy4uLl0KW0FsbGdlbWVpbjpEcm9sbGldIGhhYmVuIGRpZSBnZXNjaGFlZnRlIGVpZ2VudGxpY2ggYW0gbW9udGFnIHVuZCBkaWVuc3RhZyBhdWY/CltBbGxnZW1laW46RHJvbGxpXSA6KQpbLi4uXQpEdSBmbHVlc3RlcnN0IERyb2xsaSBiZXNjaHdvZXJlbmRlIFdvcnRlIGlucyBPaHIuCkRyb2xsaSBzY2hydW1wZnQgenVzYW1tZW4sIGxhZXVmdCBncnVlbiBhbiB1bmQgdmVyd2FuZGVsdCBzaWNoIGxhbmdzYW0gaW4KZWluZW4gRnJvc2NoLgpbLi4uXQpbQWxsZ2VtZWluOkxpbmZsYXNdIFF1YWshIDopPQpbLi4uXQpFaW4gRnJvc2NoIHRlaWx0IERpciBtaXQ6IHBpc3NlciA6KQoKCkxpbmZsYXMsIGxhbmdld2VpbGUgaGFiZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IChEZWVwYmx1ZSwgMjMuIERleiAyMDAwLCAxNjoyMzozMSk6CltBYmVudGV1ZXI6RnJvc2NoIFlhbXlhbV0gYmluIGdsZWljaCB0b3QKW1RvZDpMYXJzXSBFaW5lIEhvbHpzcGlubmUgaGF0IGdlcmFkZSBZYW15YW0gdW1nZWJyYWNodC4KW1RvZDpFaW5lIEhvbHpzcGlubmVdIEtvcGYgYWIsIEhhZW5kZSBhYiwgQmVpbmUgYWIsIGtvZXJwZXJsb3MsIER1IHBsYXR0LCBpY2gKW1RvZDpFaW5lIEhvbHpzcGlubmVdIHNhdHQsIG51biBhdWNoIG1hdHQsIHJlZ3VuZ3Nsb3MgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCdWNoc3RhYmVuc3VwcGUgKFNpbHZhbmEsIDIzLiBEZXogMjAwMCwgMTc6MjQ6MTIpOgpEdSB0ZWlsc3QgeHh4IG1pdDogVmVydGVpbGUgZG9wcGVsdGUgQnVjaHN0YWJlbiBuYWNoIGVpZ2VuZW0gR2VzY2htYWNrLiA7LSkKW1RvZDpMYXJzXSBaenJycmtsIGhhdCBnZXJhZGUgQ2hhb3Nsb3JkIHVtZ2VicmFjaHQuCgpTTyB3YXIgZGFzIG5pY2h0IGdlbWVpbnQhIDstKQoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpxIChTaWx2YW5hLCAyMy4gRGV6IDIwMDAsIDE4OjM2OjA0KToKfiMhIG9uPU11cmdlbG1hbm4gb3Q9OTc3NTkyOTM0IG9nPWFsbGdlbWVpbmVzCnEKcQppIHRpc2NoCnEKcQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHEgKE5vbm5lLCAyNC4gRGV6IDIwMDAsIDA5OjQyOjAwKToKfiMhIHJuPVNpbHZhbmEgcnQ9OTc3NTkyOTY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc3NTkyOTY0CkdlaG9lcnQgc293YXMgbmljaHQgbmFjaCBNdWVsbD8KCk5vbm5lLCBncnVlYmVsbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgSHlkcmEgaGF0IEFuZ3N0IHZvciBad2VyZ2VuISAoVGlhbWFrLCAyNS4gRGV6IDIwMDAsIDIxOjU3OjA4KToKRGVpbiBGcmV1bmQgR25vbWUgdGVpbHQgRGlyIG1pdDogaG1tLCBkb29mZSB0YW50ZSBsYWVzc3Qgc2ljaCB3aWVkZXIgemVpdC4uLgpEZWluIEZyZXVuZCBHbm9tZSB0ZWlsdCBEaXIgbWl0OiBkaWUgd2Vpc3Mgc2Nob24gd2FydW0gOi0vIG5hIGRhbm4gaGF1IGljaCBtYWwKRGVpbiBGcmV1bmQgR25vbWUgdGVpbHQgRGlyIG1pdDogYWIsIGJ5ZSEKRGVpbiBGcmV1bmQgR25vbWUgd2lua3QgRGlyIGF1cyBkZXIgRmVybmUgenUuCkdub21lICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KCgpUaWFtYWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuc2VyIEVsYmkgPyEgIChGYW50YWdoaXJvLCAyNS4gRGV6IDIwMDAsIDIyOjQ1OjEwKToKRGVpbiBGcmV1bmQgRWxiZXJldCB0ZWlsdCBEaXIgbWl0OiBEdSBzdGVja3N0IERlaW5lbiBFbGJpIGluIGRpZSBPZWZmbnVuZyB1bmQKRGVpbiBGcmV1bmQgRWxiZXJldCB0ZWlsdCBEaXIgbWl0OiB3YXJ0ZXN0IGdlc3Bhbm50LiAoIGljaCBnbGF1YiBpY2ggc29sbHQgZGFzCkRlaW4gRnJldW5kIEVsYmVyZXQgdGVpbHQgRGlyIG1pdDogbWFsdW1iZW5lbm5lbiA6KSApCkRlaW4gRnJldW5kIEVsYmVyZXQgZ3JpbnN0IGF1cyBkZXIgRmVybmUuCkRlaW4gRnJldW5kIEVsYmVyZXQgZ3JpbnN0IHVuc2NodWxkaWcgYXVzIGRlciBGZXJuZS4KRGVpbiBGcmV1bmQgRWxiZXJldCB0ZWlsdCBEaXIgbWl0OiB6YXViZXJzdGFiPyAgICAgICAKCkZhbnRhKiAtIGZpZXMgZ3JpbnNlbmQuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCBJZGxld2V0dGJld2VyYj8hIChWYXJsYXJpb24sIDI2LiBEZXogMjAwMCwgMTc6MzY6NDcpOgo+IGZpbmdlciBjYXR3ZWF6bGUKQ2F0d2VhemxlIGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBNdWVuc3Rlci4KUGFzc2l2IHNlaXQ6IDNkIDAzOjMxOjAxCi4uLgoKPiBmaW5nZXIgYXRvegpBdG96IGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBNYXJidXJnLgpQYXNzaXYgc2VpdDogNWQgMDE6MzU6NTAKCgp3ZWxsLCBDYXR3ZWF6bGUgaXN0IHdlaXQgYWJnZXNjaGxhZ2VuLi4uIGFiZXIgdHJvdHpkZW06IEdPIENhdHR5IEdPISEhCgpCaW4gbWFsIGdlc3Bhbm50LCBvYiBzaWUgbm9jaCBpZGxlbiwgd2VubiBpY2ggaW4gMiBXb2NoZW4gd2llZGVya29tbWUgOykKCgpWYXJsYXJpb24sIHdpbmtlbmQgdW5kIGVpbmVuIGd1dGVuIFJ1dHNjaCB3dWVuc2NoZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNaWNoIGdpYnQgZXMgbmljaHQgKFRhaW5hLCAyNi4gRGV6IDIwMDAsIDE5OjU2OjExKToKRGllc2VzIGlzdCBkZXIgQXJiZWl0c3JhdW0gdm9uIFNjaGxlaWNoZXIuIER1IGZyYWdzdCBEaWNoIGFsbGVuIEVybnN0ZXMgb2IKaGllciBzY2hvbm1hbCBqZSBnZWFyYmVpdGV0IHd1cmRlIHVuZCBiZXNjaGxpZXNzdCBkYXNzIGRpZXMgZG9jaCB3b2hsIGVoZXIKU2NobGVpY2hlcnMgSG9iYnlyYXVtIHNlaW4gbXVlc3NlLiBBbHMgRHUgRGVpbmUgQXVnZW4gc2Nod2VpZmVuIGxhZXNzdCwKYmVtZXJrc3QgRHUgZWlnZW5hcnRpZ2UgRGluZ2UsIGluIGRlciBFY2tlIGxlaG50IGVpbmUgc2Nod2FyemUgR2l0YXJyZSBhbgplaW5lbSBhYmdlc2NoYWJ0ZW0gZ3Jvc3NlbiBWZXJzdGFlcmtlciwgYXVmIGRlbSBCb2RlbiBkYXZvciBlbnRkZWNrc3QgRHUgZWluCnNjaHdhcnplcyB1bmQgZWluIGdydWVuZXMgS2Flc3RjaGVuIGRpZSBpcmdlbmR3aWUgendpc2NoZW4gR2l0YXJyZSB1bmQKVmVyc3RhZXJrZXIgZ2VzY2hhbHRldCBzaW5kLiBBbiBkZXIgV2FuZCBoYWVuZ3QgZWluIFJlZ2FsLCBkYXMgdm9sbGdlc3RvcGZ0CmlzdCBtaXQgaXJnZW5kd2VsY2hlbSBLcmFtLiBBdWYgZWluZW0gbmllZHJpZ2VtIFRpc2NoIHN0ZWh0IGVpbmUgc3BhcnRhbmlzY2hlCkhpRmkgQW5sYWdlIHVuZCBlaW4gcGFhciBDRCdzIGxpZWdlbiBkYW5lYmVuLiBWb3IgZGVtIFRpc2NoIHN0ZWh0IGVpbiBTb2ZhIGRhcwphdWNoIHNjaG9uIGJlc3NlcmUgWmVpdGVuIGdlc2VoZW4gaGF0IHVuZCBzbyBhdXNzaWVodCBhbHMgd3VlcmRlIHNlaW4gQmVzaXR6ZXIKZXMgbWl0IFZvcmxpZWJlIGFscyBCZXR0IG1pc3NicmF1Y2hlbiwgd2VubiBlciBkZW5uIGplIHNjaGxhZmVuIHd1ZXJkZSwgdm9yCmRlbSBTb2ZhIGx1ZW1tZWxuIHNpY2ggZWluIFBhZWNrY2hlbiBUYWJhaywgZWluIEFzY2hlbmJlY2hlciB1bmQgZWluZQpoYWxibGVlcmUgRmxhc2NoZSBydW0uIEFsbGVzIGluIGFsbGVtIGZ1ZWhsc3QgRHUgRGljaCBoaWVyIGF1ZiBBbmhpZWIgd29obCB1bmQKZ2Vib3JnZW4uIEVpbmUgVHVlciBmdWVocnQgRGljaCB6dXJ1ZWNrIGluIGRpZSBIYWxsZS4gCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBzdWVkZW4uCktydWZ0dXIgZGVyIERlbmtkYWVtb24uCj4gYmVmZWhsZSBrcnVmdHVyIGlkZW50aWZpemllcmUgdGFpbmEKRGVyIERhZW1vbiB0ZWlsdCBEaXIgbWl0OiBUYWluYSBrYW5uIGljaCBoaWVyIG5pY2h0IGZpbmRlbi4KCipzbmlmZioKVGFpbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJvYmluLi4uIChKZWxrYSwgMjcuIERleiAyMDAwLCAxMDoxMDoyNCk6CkRlaW4gR2VsZGJldXRlbCBpc3QgbGVpY2h0ZXIgZ2V3b3JkZW4uClJvYmluIHd1ZW5zY2h0IERpciBmcm9laGxpY2hlIFdlaWhuYWNodGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS251dHNjaGZpc2NoZS4uLiAoSmVsa2EsIDI3LiBEZXogMjAwMCwgMTA6MTI6MjgpOgpEdSByYW1tc3QgZGVtIGh1ZXBmZW5kZW4gS251dHNjaGZpc2NoIGRhcyBLbmllIGluIGRlbiBLb2VycGVyLgpEZXIgS251dHNjaGZpc2NoIGZyZXV0IHNpY2ggdW5kIGh1ZXBmdCB3aWxkIGR1cmNoIGRpZSBHZWdlbmQuCgoqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1cnplbmRlIExlaWNoZW4gKFBlcnRpbmF4ZSwgMjcuIERleiAyMDAwLCAxMToxNDoxNSk6CkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBvYmVuLgpEaWUgc2NoaW1tZWxuZGUgdW5kIGhhbGJ2ZXJ3ZXN0ZSBMZWljaGUgRGVlcEJsdWVzLgpFaW4gU2NoaW1tZWxwaWxzLgo+IHEgbGVpY2hlCkR1IHNpZWhzdCBkaWUgc3RlcmJsaWNoZW4gVWViZXJyZXN0ZSBEZWVwQmx1ZXMuClNpZSBlbnRoYWVsdDoKRWluIHJvZXRsaWNoZXIgUmluZy4gICAgICAgICAgICAgICAgICAgRWluIFBhYXIgQWRhbWFudHNjaHVoZS4KRWluIGdsYWVuemVuZGVyIFpvbWJpZXJpbmcuICAgICAgICAgICAgRHJhY2hlbmtsYXVlbi4KRWluZSBHZWxkYm9lcnNlIG1pdCAxNjQzMyBNdWVuemVuLiAgICAgRWluZSB3aWxkZSBSb3NlLgpFaW5lIEZsYXNjaGUgRmV1ZXJvZWwuICAgICAgICAgICAgICAgICBFaW4gS3J1ZWNrc3RvY2suCkVpbiBQZmlyc2ljaCAobGV1Y2h0ZW5kKS4gICAgICAgICAgICAgIERpZSBHZWxka2FydGUgdm9uIERlZXBibHVlLgpEYXMgQW11bGV0dCBkZXIgU3RlaW5iZWlzc2VyLiAgICAgICAgICBFaW5lIG1hZ2lzY2hlIEt1Z2VsLgpFaW5lIERpZGRsLUtudWRkZWwtTWF1cy4gICAgICAgICAgICAgICBFaW4gZ2VsYmVzIFBvc3RwYWtldCAoZ2VvZWZmbmV0KS4KRWluIFNjaGxlaW1iZXV0ZWwuICAgICAgICAgICAgICAgICAgICAgCj4gRGVyIEZ1cnogcmllY2h0LCBhbHMgd3VlcmRlIERlZXBCbHVlIGlubmVybGljaCB2ZXJmYXVsZW4uCldpZGVybGljaGUgRHVlbnN0ZSBlcmZ1ZWxsZW4gZGVuIFJhdW0uCkRlZXBCbHVlcyBGdXJ6IHN0aW5rdCB3aXJrbGljaCBncmF1ZW5lcnJlZ2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndpZWRlcm1hbCBmbHcgKFRoYW5vcywgMjcuIERleiAyMDAwLCAxMTo0MToxMCk6CkxlZ2FzIHRlaWx0IERpciBtaXQ6IGljaCBnbGF1YiBpY2ggYmluIGdyb3NzIGdlbnVnIHVtIG1pY2ggc2VsYnN0IGF1c3p1cnVlc3RlbgpMZWdhcyB0ZWlsdCBEaXIgbWl0OiA6OQprb2tvcm8KClRvZDpMYXJzIEVpbiBOZ2hvZyBoYXQgZ2VyYWRlIExlZ2FzIHVtZ2VicmFjaHQuCgpqbywgaWNoIHNlaHMgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGVudHNjaGFlcmZ0ZXMgZ2ViaWV0IChBbmF0b2wsIDI3LiBEZXogMjAwMCwgMTI6MDA6MTMpOgp+IyEgcm49QmllcmNoZW4gcnQ9OTc3ODgzMjAyIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTc3ODc1MTkzCkRpciBhdWNoIGVpbiBmcm9oZXMgRmVzdCwgWWFudHIuLi4gYWVoLi4uIEJpZXJjaGVuLiA6bykKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGl6emFyb3NlIChUYWluYSwgMjcuIERleiAyMDAwLCAxNzowNjoxOSk6CnJpZWNoZSByb3NlCkR1IHZlcm5pbW1zdCBkZW4gYW5nZW5laG1lbiBHZXJ1Y2ggdm9uIFBpenphLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKFNwaWVsKUtpbmRlciAuLi4gKEFuYXRvbCwgMjcuIERleiAyMDAwLCAyMjoxNjowNCk6Cj4gLShzcGllbC0KZWQ6IHVubWF0Y2hlZCAoKQplZDogdW5tYXRjaGVkICgpCkRpZSBFYmVuZSAnKHNwaWVsJyBnaWJ0IGVzIG5pY2h0IQo+IGViZW5lIHh4eD0oU3BpZWwKZWQ6IHVubWF0Y2hlZCAoKQplZDogdW5tYXRjaGVkICgpCkJlbnV0enVuZzogZWJlbmUgPEFia3Vlcnp1bmc+PTxFYmVuZT4KRWJlbmUgJyhTcGllbCcgbmljaHQgZ2VmdW5kZW4hCj4gZWJlbmUgeHh4PS4qU3BpZQoneHh4JyB3aXJkIGpldHp0IGFscyBBYmt1ZXJ6dW5nIGZ1ZXIgJyhTcGllbClLaW5kZXInIGFuZXJrYW5udC4KPiAteHh4LQpEaWUgRWJlbmUgJ3h4eCcgZ2lidCBlcyBuaWNodCEKCipTb3lwaGRzKgpBbmF0b2wgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgamFuZWVpc2tsYXIgOikgKEphc29ucmlnaWQsIDI5LiBEZXogMjAwMCwgMTg6NDQ6NDUpOgpEdSBiaXN0IGluIGVpbmVtIGZldWNodGVuIEdyYWIuIElyZ2VuZHdpZSBpc3QgZXMgaGllciBuaWNodCBzbyBnZW11ZXRsaWNoLgpEdSBzb2xsdGVzdCBoaWVyIHdpZWRlciBoaW5hdXNrbGV0dGVybiwgYmV2b3IgRHUgaGllciBub2NoIGJlZ3JhYmVuCndpcnN0LiBMYXV0IGRlciBJbnNjaHJpZnQsIHNvbGx0ZSBoaWVyIGRpZSBMZWljaGUgdm9uIE1hZ251cyBDaGl3ZWwKc2Vpbi4gRHUgc2llaHN0IGFsbGVyZGluZ3Mga2VpbmUgU3B1ciB2b24gZWluZXIgTGVpY2hlIQpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogcmF1cy4KRWluZSBUcnVoZS4KRWluIFJhZXViZXJsZWhybGluZy4KRWluIFJhZXViZXJsZWhybGluZy4KRWluIFJhZXViZXJsZWhybGluZy4KRWluIFJhZXViZXJsZWhybGluZy4KRWluIFJhZXViZXJsZWhybGluZy4KRGllIFRydWhlIHNpZWh0IGRpY2ggU0VIUiBib2VzZSBhbiEKU2NoZWluYmFyIGdsYXVidCBzaWUsIGRhc3MgZHUgZWluZW4gUmFldWJlciBiZWRyb2hlbiB3aWxsc3QhCgpMYW5nc2FtIHdpcmQgZXMgYWxiZXJuIDopCgpKYXNvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhcnRpa2VsIGphbmVlaXNrbGFyIDopIChTYWhhZG9vbSwgMzAuIERleiAyMDAwLCAwMToyMjoxNik6Cn4jISBybj1KZWxrYSBydD05NzgxMzU2NzQgcmc9c2NobWFycm4KfiMhIHRpZD05NzgxMTE4ODUKSGFzc3VzIGJhbGQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHNwZWVkeSAoQW5hdG9sLCAzMC4gRGV6IDIwMDAsIDE5OjM1OjI0KToKfiMhIG9uPUFuYXRvbCBvdD05NzgyMDEyOTIgb2c9ZC51bnRlcndlbHQKfiMhIHJuPVd1cnplbCBydD05NzgxODQ2MjIgcmc9ZC51bnRlcndlbHQKfiMhIHRpZD05NzY5MjQzMDMKIkltIHNlbHRlbmVuIEZhbGwsIC4uLiIgTXVhaGFoYSwgd2VubiBEdSB3aWxsc3QsIGthbm5zdCBEdSBqYSBkb2NoCmdhbnogc2Nob2VuIGx1c3RpZyBzZWluIDopCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvcnNjaHJpZnRlbiAoUmVkc2hpcnQsIDMwLiBEZXogMjAwMCwgMjM6NDQ6NDYpOgpBbHRlcjogIDE3IFN0dW5kZW4gMTcgTWludXRlbiA1NCBTZWt1bmRlbi4KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+a2F1ZmUgcmFrZXRlCkR1IGthdWZzdCBkaWUgRmV1ZXJ3ZXJrc3Jha2V0ZS4KPnVudCByYWtldGUKRWluZSBGZXVlcndlcmtzcmFrZXRlIChLbGFzc2UgSUkpLgpBYmdhYmUgYW4gU3BpZWxlciB1bnRlciAxOCBTdHVuZGVuIHZlcmJvdGVuLgpOaWNodCBpbiBnZXNjaGxvc3NlbmVuIFJhZXVtZW4gYW56dWVuZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU293YXMgKExpbmZsYXMsIDMwLiBEZXogMjAwMCwgMjM6NTU6NDkpOgo+IGlyZ2VuZHdhcyBteXN0ZXJpb2VzZXMgaGF0IGdlcmFkZSBMaW5mbGFzIHVtZ2VicmFjaHQKClsuLi5dCgpbQWxsZ2VtZWluOkxpbmZsYXMgZ2FlaG50Ll0KW0JlaWxlaWQ6Tml6emxdIG11YWhhaCB3YXIgZGVyIHNjaGxlY2h0IDopCgpMaW5mbGFzLCBnYWVobmVuZCB1bmQgc2ljaCBmcmFnZW5kLCBvYiBkaWUgTWFncyBoaWVyIGF1Y2ggbm9jaCB3YXMgYW5kZXJlcwprb2VubmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZvcnNjaHJpZnRlbiAoTGluZmxhcywgMzEuIERleiAyMDAwLCAwMDowNDoyOSk6Cn4jISBybj1SZWRzaGlydCBydD05NzgyMTYyODYgcmc9c2NobWFycm4KfiMhIHRpZD05NzgyMTYyODYKW1RvZDpMYXJzXSBFaW5lIEZldWVyd2Vya3NyYWtldGUgaGF0IGdlcmFkZSBSZWRzaGlydCB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTb3dhcyAoTGluZmxhcywgMzEuIERleiAyMDAwLCAwMDowNjozOCk6Cn4jISBybj1CYW1iaSBydD05NzgyMTc1NTYgcmc9c2NobWFycm4KfiMhIHRpZD05NzgyMTY5NDkKSGFlaD8KCi0+IE11ZWxsIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVZWJlbiBmdWVycyBOZXVqYWhyc2tvbnplcnQgKFRhaW5hLCAzMS4gRGV6IDIwMDAsIDAyOjQ2OjIxKToKa3dlciBHaWxkZSBBYmVudGV1cmVyCiAgICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIFNvbiwgMzEuIERleiAyMDAwLCAwMjo0MzozMSAoMTMgVGVpbG5laG1lcikgICAgCktvbnRyYWJhc3MuLi4uLkkucyBMdXNhbmt5YS4uLi4uLi5KLnMgT2JvZS4uLi4uLi4uLi4uSS5zIFNwaW5ldHQuLi4uLi4uLkkucwpTdXNhcGhvbi4uLi4uLi5pLnMgVmlvbGluZS4uLi4uLi4uaS5zIFh5bG9waG9uLi4uLi4uLmkucyBZYWxhZGFuLi4uLi4uLi4uLnMKRGFqaW4uLi4uLi4uLi4uLi5zIENlbGxvLi4uLi4uLi4uLmkucyBOb3N0cm9tby4uLi4uLi5qd3MgR2FuZHVsZi4uLi4uLi4uSi5aCkxhdmluaWEuLi4uLi4uLi4uUwprd2VyIEdpbGRlIFRydmVzCiAgICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIFNvbiwgMzEuIERleiAyMDAwLCAwMjo0Mzo0NyAoMTAgVGVpbG5laG1lcikgICAgCipNeXN0aXhvLi4uLi4uLi4uUyBCbGFja2xhZHkuLi4uLi4ud1MgKkdhbGJyYWl0aC4uLi4uLi5TIEFzaGFuLi4uLi4uLi4uLi4uUwpWaW9sYS4uLi4uLi4uLi4ud1MgKkVsYmVyZXQuLi4uLi4uLi5TIEhlcm9tY2ZseS4uLi4uLkl3UyBIaWdodC4uLi4uLi4uLi5qd1MKR25vbWUuLi4uLi4uLi4uLi5TIFNreS4uLi4uLi4uLi4uLi4uUwoKCkphIGFsc28gd2llIGlociBzZWh0LCB3dXJkZSBmbGVpc3NpZyBnZXVlYnQsIHdlbm4gYXVjaCBpbiB1bmdld29laG5saWNoZXIKQmVzZXR6dW5nIChEZXIgRGlyaWdlbnQgd3VyZGUgZWggc29mb3J0IHZlcmdyYXVsdC4gTWFsIHNjaGF1biB3YXMgcmF1c2tvbW10LiAKUFM6IFdlbm4gbWFuIGRlbiBHZXJ1ZWNodGVuIGdsYXVidCwgd2lyZCBhdXMgZGVtIE5ldWphaHJza29uemVydCBhdWZncnVuZCBkZXMKZW5vcm0gaG9oZW4gUmVzdGFsa29ob2xwZWdlbHMgZWggbml4Li4uIDtvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVlYmVuIGZ1ZXJzIE5ldWphaHJza29uemVydCAoSGlnaHQsIDMxLiBEZXogMjAwMCwgMTM6MTA6NDgpOgp+IyEgcm49VGFpbmEgcnQ9OTc4MjI3MTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc4MjI3MTgxCmhtIHJlc3RzbGtvaG9sIHNldHp0IGFsa2hvaG9sIHZvcmF1cyAuLi4uIHdlaXNzIG5ldCBvYiBkYXMgc28gZ2VzY2hpY2t0IGlzCm1pY2ggenUgYmVzYXVmZW4gd2VubiBpY2ggbWl0IG1laW5lbiBhbHRmb3JkZXJlbiB6dWF1c2UgcnVtc2l0eiB1bmQgbWljaApsYW5nd2VpbCB1bmQgbWljaCB3YWVocmVkZGVzZW4genVzY2h1ZXR0IC4uLi4gYWJiYSBwcm9iaWVybiBrb2VubnQgaWNoIGRhcyBqYQptYWwgKmVnKgoKZ3J1c3MgY2hyaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZ1ZXIgZGllIGFrdGVuID0pIChIZXJvbWNmbHksICAxLiBKYW4gMjAwMSwgMDA6MjE6NTgpOgoKZXJzdGVyIC4uLgpUb2Q6TGFycyBFaW5lIEZldWVyd2Vya3NyYWtldGUgaGF0IGdlcmFkZSBMdWdpYSB1bWdlYnJhY2h0LiAwMDowMTozNQoKdW5kIGVyc3RlciBhcnRpa2VsIGRlcyBuZXVlbiBqYWhyZXMgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCZWxpZWJ0Pz8gKE1vcmdvdGgsICAxLiBKYW4gMjAwMSwgMjA6MjU6MDApOgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gRGVlcGJsdWUgaW4gUnVicmlrICJ0cmVmZmVuIi4KClJ1YnJpayA1NzogdHJlZmZlbiwgQXJ0aWtlbDogNTYgdm9uIDU2ClN0YVRpIGluIERyZXNkZW4/IChEZWVwYmx1ZSwgIDEuIEphbiAyMDAxLCAyMDoyMToxNik6CltibGFoYmxhaF0KKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIFJpa3VzIGluIFJ1YnJpayAidHJlZmZlbiIuCkRlZXBibHVlICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKTSogOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFpvb2ssICAyLiBKYW4gMjAwMSwgMjM6MTM6MzIpOgpbQWxsZ2VtZWluOkNhbGltZXJpb25dICJkaWVzZXMgZGV0YWlsIHdpcmQgZ2VyYWRlIHJlcGFyaWVydCIgaGloaSA8MjM6MDk6MDQ+CltUb2Q6TGFyc10gRWluZSBSYXR0ZSBoYXQgZ2VyYWRlIENhbGltZXJpb24gdW1nZWJyYWNodC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcmdlYm5pc3NlIG5hY2ggZWluZXIgNC10YWVnaWdlbiBTaWx2ZXN0ZXJwYXJ0eSAoV29vZHksICAyLiBKYW4gMjAwMSwgMjM6NDk6MDApOgpNdWFkZGliIGVtcGZpZWhsdCBDbG91ZCwgaGFlbmRpc2NoIHp1IHBvcHBlbi4KIlNwcmljaHN0IER1IGZsaWVzc2VuZCBQT1AgPyIgLSAiSmEsIGljaCBwb3BwZSBmbGllc3NlbmQuIgpFaW5lIExhbXBlIHVlYmVybGVidCBjYS4gMzAgWnVzYW1tZW5zdG9lc3NlIG1pdCBlaW5lbSBkdXJjaHNjaG5pdHRsaWNoZW0KVGlsbHktS29wZi4KTWFuIHNvbGwgQm93bGUgbmljaHQgaW4vYXVmIGVpbmVtIHp1Z2Vmcm9yZW5lbiBTZWUgZW50c29yZ2VuLgpTY2h3YWVuZSB3ZXJkZW4gZGFmdWVyIGdhbnogenV0cmF1bGljaCAuLi4gb2IgZGFzIGFuIGRlbiBWb2RrYWtpcnNjaGVuIGxpZWd0PwpNYW4gc29sbHRlIGtlaW5lIFNjaHVoZSBtaXQgR3VtbWlzb2hsZSBhdWYgZWluZW4gaGVpc3NlbiBLYW1pbm9mZW4gc3RlbGxlbi4KVGlsbHkncyBMZWRlcmhvc2UgaXN0IG51biByZXNpc3RlbnQgZ2VnZW4gRFRfSlVJQ0UuCkVTUCBpc3Qga2VpbiBFcnNhdHogZnVlciBTY2huZWVrZXR0ZW4uCk5pY2h0IGF1cyBhbGxlbiBPbGl2ZW4gbWl0IExvZWNoZXJuIHd1cmRlbiBkaWUgUGFwcmlrYSBhdXNnZWx1dHNjaHQuClNjaGxhZmVuIGJlaSAtMTAgR3JhZCBDZWxzaXVzIGZvZXJkZXJ0IEludGltaXRhZXRlbi4KS2xvd2Fzc2VyIGxhZXNzdCBzaWNoIG1pdCBCdW5kZXNoZWVyc2NodWhlbiBsZWljaHRlciBmb2VyZGVybi4KRGFzIHZvbiBhdXNzZW4gZ2VtZXNzZW5lIFZvbHVtZW4gZWluZXMgTmlzc2FuIE1pY3JhIGlzdCBrbGVpbmVyIGFscyBkYXMKdGF0c2FlY2hsaWNoZSBJbm5lbnZvbHVtZW4uCiJNYWNodHMgZGllIFR1ZXIgYXVmISIgLi4uICJUdWVyIHp1ISEhIgpSYWdlICE9IE1hdU1hdQpTcGllbCBrZWluIFNwaWVsLCBkYXMgU3RhaGxkb3JuIG5pY2h0IGdld2lubnQuClNjaG5lZW1hZW5uZXIga29lbm5lbiB2b24gSGFzZW4gZ2ViYXV0IHdlcmRlbiB1bmQgbXVlc3NlbiBuaWNodCBhdXMgS3VnZWxuCmJlc3RlaGVuLgpCZWltIEJsZWlnaWVzc2VuIHdlcmRlbiBuaWNodCBudXIgU3Blcm1pZW4gZ2Vnb3NzZW4uIChOZWluLCBhdWNoIFN0YWVuZGVyISA6LSkKVW5kIENhcmFkaHJhcycgU3RhZW5kZXIgaXN0IGRvY2ggbGFlbmdlciBhbHMgZGVyIHZvbiBXb29keS4KQWJlciBkdWVubmVyLgppLlYuIE11YWRkaWIsIENsb3VkQFNpbGJlcmxhbmQsIENhcmFkaHJhcywgR2FzdDEsIEthbEBTTCwgR2FzdDIsIFRpbGx5LCBCbG9vZCwKRnJlZGVyaWNrLCBQZW5lbG9wZSwgRHVzdHksIFN0YWhsZG9ybiwgTGFteXJhLCBCYW5zaGVlQFNMIChuZWluLCBuaWNodCBkZXIKTlBDKSwgR2FzdDMsIEdhc3Q0LCBMb3ZldGFoLCBLaWNrYWhhLCBUaG9yLAoKCldvb2R5Li0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRXJnZWJuaXNzZSBuYWNoIGVpbmVyIDQtdGFlZ2lnZW4gU2lsdmVzdGVycGFydHkgKFFpdGVzcywgIDMuIEphbiAyMDAxLCAwMDowNjowMSk6Cn4jISBybj1Xb29keSBydD05Nzg0NzU3NDAgcmc9c2NobWFycm4KfiMhIHRpZD05Nzg0NzU3NDAKYWxzbyB3aXJrbGljaCEKZW5kbGljaCBtYWwgd2llZGVyIGVpbiBTaWx2ZXN0ZXItQmVyaWNodCwgZGVyIG1pY2ggenVtIExhY2hlbiBnZWJyYWNodCBoYXQuCk5hY2ggYWxsIGRlbiBpbW1lciB3aWVkZXIgbmV1IGF1ZmdlZ29zc2VuZW4gV2lobmFjaHRzLS9YLU1hcy1tYWlscyB1bmQgZGVuCihmYXN0IGltbWVyKSBnbGVpY2hlbiBTb25zdHdvLXVuZC11ZWJlcmhhdXB0LUJlcmljaHRlbiBoYWJlIGljaCBtYWwgd2llZGVyCnNlaHIgZ2VsYWNodCB1ZWJlciBkaWVzZSBTaWx2ZXN0ZXItTmFjaGxlc2UuIDopCldpcmtsaWNoLgpWb3IgYWxsZW0gZGllIFBhc3NhZ2UgbWl0IGRlbiBTY2h3YWVuZW4gd2VyZGUgaWNoIGRlbW5hZWNoc3QgbWFsIHNlbGJlcgphdXNwcm9iaWVyZW47KQoKUUkqKiBKdXBwaGVpZGlpKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiA6KSAoS2FzcGFyLCAgMy4gSmFuIDIwMDEsIDE1OjU2OjAyKToKCkR1IGdlaHN0IHdpZWRlciBhdWYgRGlzdGFueiB6dSBNYXJnaWUgQnJhZGRvbi4gICAgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCb2luZyBpc3QgbWl0bmljaHRlbiBuZXR0IHp1IHNlaW5lciBOaWNodGUgKFJvbmRhLCAgMy4gSmFuIDIwMDEsIDE3OjM1OjUwKToKSmEsIGphLCB1bnNlcmUgTWFnaWVyLi4uIHNjaHVzc2VsaWcgd2llIHNvbnN0IHdhcy4uLgoKW01hZ2llcjpCb2luZ10gd2VyIGlzdCBlaWdlbnRsaWNoIGRpZXNlIG5pY2h0ZSBkZXIgaWNoIGFuZ2VibGljaCBoZWxmZT8KW01hZ2llcjpCb2luZ10gKmtyYXR6KgpbTWFnaWVyOlJvbmRhXSBFZ2FsLiBJc3Qgc2llIG5ldHQ/IDstKQpbTWFnaWVyOlBhZHJlaWNdIGVnYWwuIHNpZWh0IHNpZSBndXQgYXVzPyA6KQpbTWFnaWVyOlpvb2tdIFNjaGF1IGhhbHQgZGVuIE1hZ2llcnN0YW1tYmF1bSBkdXJjaC4KW01hZ2llcjpCb2luZ10gc2FnIGljaCBkaXIgd2VubiBpY2ggd2Vpc3Mgd2VyIGVzIGlzdCA6KQpbTWFnaWVyOlpvb2tdICJuZiBib2luZyBhYmVyIG51ciBkaWUgbmljaHRlbiIKW01hZ2llcjpab29rXSBPZGVyIG1laW50ZSBlciBkb2NoIFJMPyA7KQpbTWFnaWVyOkh1bW5pXSBab29rLCBuZSBOaWNodGUgaXN0IGtlaW5lIE5hY2hmYWhyaW4uCltNYWdpZXI6Um9uZGFdICJuZiBib2luZyBhYmVyIG51ciBkaWUgbmllZGxpY2hlbiBuaWNodGVuIgpbTWFnaWVyOkJvaW5nXSBuYWphIC4uLiB3ZW5uIGVzIGVpbiBtYWdpZXIgd2FlcmUgd3VlcmRlIGRvY2ggbml4IGRhZ2VnZW4KW01hZ2llcjpCb2luZ10gc3ByZWNoZW4gaWhyIHp1IGhlbGZlbiwgb2Rlcj8KW01hZ2llcjpSb25kYV0gZGFzIG11c3N0ZSBtaXQgSG9ibyBhdXNtYWNoZW4sIEJvaW5nIDstKQpbTWFnaWVyOlBhZHJlaWMgc3RlaHQgaW0gbW9tLiBzb3dpZXNvIGF1Zm0gU2NobGF1Y2guIFdlciBzYWd0ZSBkZW5uIGRhcyBkdQogICAgICAgIGVpbmVyIG5pY2h0ZSBoaWxmc3QgdW5kIGluIHdlbGNoZW0genVzYW1tZW5oYW5nP10KW01hZ2llcjpCb2luZ10gYmllcmNoZW4gc2FndGUgZGFzIGF1ZiBkZW0gc2VoZXJrYW5hbCwgaWNoIGhhYiBlaW4gbGFlbmhnbGljaGVzCltNYWdpZXI6Qm9pbmddIGxvZyBnZWxlc2VuCltNYWdpZXI6UGFkcmVpYyBodWNoLl0KW01hZ2llcjpCb2luZ10gdW5kIGVyIHNjaHJpZWIgamEgc2Nob25tYWwgc293YXMgaW4gZGVyIG1wYSAuLi4KW01hZ2llcjpQYWRyZWljXSB3aWV2aWVsIG5pY2h0ZW4gaGFzdGUgZGVubj8KW01hZ2llcjpQYWRyZWljXSBzb3ZpZWxlIGtvZW5uZW4gZGFzIGRvY2ggd29obCBrYXVtIHNlaW4sIG9kZXIgd2FyZW4gZGVpbmUKW01hZ2llcjpQYWRyZWljXSBnZXNjaHdpc3RlciBzbyB6ZXVnZnJldWRpZyA6KT8KW01hZ2llcjpCb2luZ10gbWVpbmUgZWluemlnZSBuaWNodGUgaW0gbWFnaWVyc3RhbW1iYXVtIGlzdCBLYXNzYW5kcmEgOikKW01hZ2llcjpab29rXSBPaGEuCltNYWdpZXI6UGFkcmVpY10gb2hvaC4uIGRhIHBhc3MgYXVmLCBkYXMgcnVtYXRhIGRhcyBuaWNodCBzcGl0eiBrcmllZ3QhIDo5CltNYWdpZXI6Qm9pbmddIGRhbm4gaGFiIGljaCBub2NoIGVpbmUgcmwgbmljaHRlLCBhYmVyIGRpZSBrYW5uIG5vY2ggbmljaHQKW01hZ2llcjpCb2luZ10gbGVzZW4KW01hZ2llcjpab29rXSBNdXNzIG1hbiBkYXMga29lbm5lbj8gOykKW01hZ2llcjpSb25kYV0gTmVlLCBkaWUga2FubiBtaXRuaWNodGVuIGdlbWVpbnQgc2Vpbi4KW01hZ2llcjpQYWRyZWljXSBoaWxmc3RlIGRlciBldHdhIG5pY2h0Pz8/CltNYWdpZXI6UGFkcmVpY10gZGFubiBzY2hhZW0gZGljaCB3YXMhCltNYWdpZXI6Qm9pbmddIGljaCBsZXMgaWhyIGltbWVyIGF1cyBkZW0gTUcgdm9yIC4uLiBEZXIgT3JrIHRyaWZmdCBEaWNoIHVuZCBzbwpbTWFnaWVyOkJvaW5nXSAuLi4KW01hZ2llcjpCb2luZ10gb2IgZGFzIGdlbWVpbnQgaXN0PwpbTWFnaWVyOlBhZHJlaWNdIGphamEuLiB1bmQgZGFubiB2ZXJyYWV0c3QgZHUgaWhyIGdlaGVpbWUgbWFnaWVyaW5mb3MKW01hZ2llcjpIdW1uaV0gT2ggZGFzIHNpbmQgc2Nob2VuZSBHZXNjaGljaHRlbiAsbWFjaCB3ZWl0ZXIgb25rZWwgQm9pbmcsCltNYWdpZXI6SHVtbmldIGdsZWljaCBrb21tdCBkaWUgU3RlbGxlIG1pdCBkZW0gemVyc3RhZXVidCEnCltNYWdpZXI6UGFkcmVpYyBkZW5rdCAuIG8gTyAoZWluZGV1dGlnIGVpbiBGYWxsIGZ1ZXIgTXVhZGliISldCltNYWdpZXI6Um9uZGFdIE5peC4gRnVlciBtYWdpZXIuc2NobWFycm4uCgouLi4gbmUgV2VpbGUgc3BhZXRlciBrYW0gZGFubiBkYXMgbm9jaC4uLgoKW01hZ2llcjpQYWRyZWljXSBzaWNoZXIgZGFzIGR1IGRhcyByaWNodGlnIHZlcnN0YW5kZW4gaGFzdCB1bmQgZGFzIG5pY2h0CltNYWdpZXI6UGFkcmVpY10gaGllc3MsIGRhcyBkdSBoaWxmZSB2b24gZGVpbmVyIG5pY2h0ZSBub2V0aWcgaGFzdCA6KT8KW01hZ2llcjpCb2luZ10gdm9uIGthc3NhbmRyYT8KW01hZ2llcjpQYWRyZWljIGFudHdvcnRldCBsaWViZXIgbmljaHQgOm8pLl0KW01hZ2llcjpCb2luZ10gY2lhbyEgd2VubiBqZW1hbmQgcmF1c2ZpbmRldCB3ZXIgbWVpbmUgbmljaHRlIGlzdCAuLi4gc2NoaWNrdApbTWFnaWVyOkJvaW5nXSBtaXIgbmUgbWFpbAoKUm9uZGEgKmZsZWlzc2lnc3QgcnVtc2NobWFycmVuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaHJlY2tsaWNoZSBWaXNpb24gKEVvbmVzLCAgNC4gSmFuIDIwMDEsIDAwOjUxOjA1KToKPiB0cmFldW1lCkR1IHNjaGxpZXNzdCBEZWluZSBBdWdlbi4gU29mb3J0IHNjaGxhZWZzdCBEdSBlaW4sIHdpcnN0IHF1YXNpIGluIGRlbiBTY2hsYWYKa2F0YXB1bHRpZXJ0LiBVbmQgRHUgc2llaHN0Li4uIERpbmdlLgo+IERlaW5lIEZ1ZXNzZSBqdWNrZW4uClZpc2lvbmVuCgp1bmdla3Vlcnp0CkVvbmVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpicmllZiAoRHJlYW1lciwgIDQuIEphbiAyMDAxLCAxNjo0MjozNSk6Cm1hbCBndWNrZW4gb2IncyBrbGFwcHQuLi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUgKnJvZWNoZWwqIChMaWFyYSwgIDQuIEphbiAyMDAxLCAxOTo1MTowMyk6CltUcnZlczpTY2h3dWJiZWwgZ2xhdWJ0IHdpZGVyIGJlc3NlcmVzIFdpc3NlbiBhbiBkYXMgR3V0ZSBpbQogICAgICAgZHVyY2hzY2huaXR0bGljaGVuIE11ZHNwaWVsZXJdClNvbG15ciBydWZ0OiBEcm9vb29vb2xsaSA7KQoKTFoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEZXIgYmVzdGUgRnJldW5kIGRlcyBNZW5zY2hlbiAoQW5hdG9sLCAgNC4gSmFuIDIwMDEsIDE5OjU1OjU2KToKfiMhIG9uPUFuYXRvbCBvdD05Nzg2MzQ1NDggb2c9d2l0emUKfiMhIHJuPUFtYXJ5bGxpcyBydD05Nzg2MzQzNTkgcmc9d2l0emUKfiMhIHRpZD05Nzg2MzQzNTkKTGVybicgbWFsLCB3aWUgbWFuIHVudGVyIHRmIGVpbmVuIEFydGlrZWwgbWl0IFVtbGF1dGVuIGlucyBNdWQgdWViZXJ0cmFlZ3QuCgpBdXNuYWhtc3dlaXNlIG5pY2h0IGdlZ2VuIGRpZSAoYWFybWVuKSBabXVkZGVyLApBbmF0b2wgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERlciBiZXN0ZSBGcmV1bmQgZGVzIE1lbnNjaGVuIChBbWFyeWxsaXMsICA0LiBKYW4gMjAwMSwgMTk6NTk6MzQpOgp+IyEgcm49QW5hdG9sIHJ0PTk3ODYzNDU1NiByZz1zY2htYXJybgp+IyEgdGlkPTk3ODYzNDM1OQpBY2suCkhhYiBleHRyYSBkaWUgVW1sYXV0ZSBrb252ZXJ0aWVydCwgYWJlciBkaWVzZXMgZG9vZmUgIlNjaGFyZi1TIiB2ZXJnZXNzZW4uCkdlaG9lcnQgYWJnZXNjaGFmZnQsIGRhcyEgOikKCkFtYXJ5bGxpcywgaWhyZSBTY2h1bGQgenVnZWJlbmQgdW5kIHZvciBSZXVlIGtuaWV0aWVmIGluIGRlbiBTYW5kIHNpbmtlbmQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBlbnRzY2hhZXJmdGVzIGdlYmlldCAodGVpbCAzKSAoUWl0ZXNzLCAgNC4gSmFuIDIwMDEsIDIwOjQxOjU3KToKfiMhIG9uPVFpdGVzcyBvdD05Nzg2MzcyMDcgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUFtYXJ5bGxpcyBydD05Nzg2MzY2MjMgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NzgzOTYyNDEKSHVwcHMsIGphLCBlaWdlbnRsaWNoIHNjaG9uLCBhYmVyIGVzIGlzdCBkb2NoIGF1Y2ggaXJnZW5kd2llIHZpc3VhbCBvZGVyIG5ldD8KZGVyIGZlaGxlciBsYWcgd29obCBkYXJhbiwgZGFzcyBpY2ggZ2VyYWRlIGVyc3QgIi92aXN1YWwgb24iIGVpbmdlZ2ViZW4gaGFiZQo7KQppY2ggYml0dGUgZGFzIHp1IGVudHNjaHVsZGlnZW4uLi4KUUkqKiwgdmlydHVhbGx5IHZpc3VhbCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IGVudHNjaGFlcmZ0ZXMgZ2ViaWV0ICh0ZWlsIDMpIChNb250YW51cywgIDQuIEphbiAyMDAxLCAyMDo0Mzo0Myk6Cn4jISBvbj1Nb250YW51cyBvdD05Nzg2MzcyNjcgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVFpdGVzcyBydD05Nzg2MzcyMDcgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05NzgzOTYyNDEKUXVpdGVzcywga2F1ZiBEaXIgbWFsIGVpbiBVIGZ1ZXIgZGVpbmVuIE5hbWVuLgpJc3QgamEgbmljaHQgbWVociBtaXQgYW56dXNlaGVuLiBadXIgTm90IHNwZW5kaWVyZSBpY2ggZGlyIG1laW5zLgoKTW9udGFucy4gSmV0enQgb2huZSB1LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVjaCBpbiBvcmtoYXVzZW4gaXN0IGVzIGthbHQgZ2V3b3JkZW4gOikgKEdvbGFzLCAgNC4gSmFuIDIwMDEsIDIyOjA4OjIwKToKQWxzbyBkaWVzZXIgT3JrIHNpZWh0IGlyZ2VuZHdpZSB1ZWJlcmhhdXB0IG5pY2h0IG1laHIgZnJldW5kbGljaCBhdXMuIE1pdApncmltbWlnZW4sIGR1bmtlbHJvdGVuIEF1Z2VuIGZ1bmtlbHQgZXIgRGljaCBhbi4gRXIgaXN0IHNpY2hlciBiZXJlaXQsIERpcgpzb2ZvcnQgRGVpbmUgS2VobGUgYXVmenVzY2hsaXR6ZW4sIHdlbm4gRHUgaXJnZW5kd2FzIEZhbHNjaGVzIG1hY2hzdC4KPT09PT0+IDEwMCUgPD09PT09CkVyIHRyYWVndCBlaW5lbiBTY2hhbCBtaXQgZGVyIEF1ZnNjaHJpZnQgJ1lvdSdsbCBuZXZlciB3YWxrIGFsb25lJy4KRXIgdHJhZWd0IGVpbmVuIFNjaGFsIG1pdCBkZXIgQXVmc2NocmlmdCAnWW91J2xsIG5ldmVyIHdhbGsgYWxvbmUnLgpFciB0cmFlZ3QgZWluZW4gU2NoYWwgbWl0IGRlciBBdWZzY2hyaWZ0ICdZb3UnbGwgbmV2ZXIgd2FsayBhbG9uZScuCkVyIHRyYWVndCBlaW5lbiBTY2hhbCBtaXQgZGVyIEF1ZnNjaHJpZnQgJ1lvdSdsbCBuZXZlciB3YWxrIGFsb25lJy4KRXIgdHJhZWd0IGVpbmVuIFNjaGFsIG1pdCBkZXIgQXVmc2NocmlmdCAnWW91J2xsIG5ldmVyIHdhbGsgYWxvbmUnLgpFciB0cmFlZ3QgZWluZW4gU2NoYWwgbWl0IGRlciBBdWZzY2hyaWZ0ICdZb3UnbGwgbmV2ZXIgd2FsayBhbG9uZScuCkVyIHRyYWVndCBlaW5lbiBTY2hhbCBtaXQgZGVyIEF1ZnNjaHJpZnQgJ1lvdSdsbCBuZXZlciB3YWxrIGFsb25lJy4KRXIgdHJhZWd0IGVpbmVuIFNjaGFsIG1pdCBkZXIgQXVmc2NocmlmdCAnWW91J2xsIG5ldmVyIHdhbGsgYWxvbmUnLgpFciB0cmFlZ3QgZWluZW4gU2NoYWwgbWl0IGRlciBBdWZzY2hyaWZ0ICdZb3UnbGwgbmV2ZXIgd2FsayBhbG9uZScuCkVyIHRyYWVndCBlaW5lbiBTY2hhbCBtaXQgZGVyIEF1ZnNjaHJpZnQgJ1lvdSdsbCBuZXZlciB3YWxrIGFsb25lJy4KRXIgdHJhZWd0IGVpbmVuIFNjaGFsIG1pdCBkZXIgQXVmc2NocmlmdCAnWW91J2xsIG5ldmVyIHdhbGsgYWxvbmUnLgpFciB0cmFlZ3QgYmVpIHNpY2g6CjE0NjM1IE11ZW56ZW4uCkVpbiBQYWFyIE9ocmVuc2NodWV0emVyIChhbmdlem9nZW4pLgpFaW4gTWl0aHJpbHBhbnplciAoYW5nZXpvZ2VuKS4KRWluIFBhYXIgQXJtcmVpZmVuIChhbmdlem9nZW4pLgpFaW4gS25vY2hlbnNjaGlsZCAoYW5nZXpvZ2VuKS4KRWluIFBhYXIgQmVpbnNjaGllbmVuIChhbmdlem9nZW4pLgpFaW4gQnVtZXJhbmcuICg0KQpFaW4gU2NoYWwgKGFuZ2V6b2dlbikuICgxMSkKMzMgV3VyZnN0ZXJuZS4KRWluIE1ldGFsbGhlbG0gKGFuZ2V6b2dlbikuCkVpbiBLbm9jaGVuc2NoaWxkLiAoMikKRWluIFBhYXIgT3Jrc3RpZWZlbCAoYW5nZXpvZ2VuKS4KRWluIEtyYWdlbiBtaXQgendlaSBhYmxhdWZlbmRlbiBTYW5kdWhyZW4gdW5kIGVpbmVtIEtub2NoZW4gKGFuZ2V6b2dlbikuCgpnb2xhcyBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGF1Y2ggaW4gb3JraGF1c2VuIGlzdCBlcyBrYWx0IGdld29yZGVuIDopIChBbmF0b2wsICA0LiBKYW4gMjAwMSwgMjI6MDk6MzYpOgp+IyEgcm49R29sYXMgcnQ9OTc4NjQyNTAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc4NjQyNTAwCldpbnRlciBpcyBjb21pbmcuLi4KCkFuYXRvbCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGF1Y2ggaW4gb3JraGF1c2VuIGlzdCBlcyBrYWx0IGdld29yZGVuIDopIChTYXRhbmFzLCAgNS4gSmFuIDIwMDEsIDEyOjE3OjE1KToKfiMhIHJuPUdvbGFzIHJ0PTk3ODY0MjUwMCByZz1zY2htYXJybgp+IyEgdGlkPTk3ODY0MjUwMApJY2ggd3Vzc3RlIGdhcm5pY2h0LCBkYXNzIGVzIEZ1c3NiYWxsZmFucyB1bnRlciBkZW4gT3JrcyBnaWJ0IC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2xhdWJlIGthbm4gQmVyZ2UgdmVyc2V0emVuLi4uIChMaW5mbGFzLCAgNS4gSmFuIDIwMDEsIDEzOjAyOjA2KToKW0FiZW50ZXVlcjpTY2huZWVdIGctaW5zZWwgZW50d2VkZXIgYmluIGljaCBiYWxsYS4uLi4sIGljaCBoYWIgZGVuIGNvZGUgZnVlcgpbQWJlbnRldWVyOlNjaG5lZV0gZGVuIGtuYWNrZXIgZ2VrbmFja3QgdW5kIGtyaWVnIGplZGVzbWFsIGVpbmUgZ2ViYWxsZXJ0LApbQWJlbnRldWVyOlNjaG5lZV0gZ2lidHMgZGEgd2FzIGdhbnogdmVycnVlY2t0ZXMgPyAKW0FiZW50ZXVlcjpMaW5mbGFzXSBkYW5uIGlzdHMgZGVyIGZhbHNjaGUgOikKW0FiZW50ZXVlcjpTY2huZWVdIGthbm4gbmVkIHNlaW4KW0FiZW50ZXVlcjpMaW5mbGFzXSBvZGVyIGR1IHZlcmdpc3N0IG5lbiBwdW5rdC4uLiAKW0FiZW50ZXVlcjpDcm9mdF0gR3Jvc3NzY2hyZWlidW5nIHVudCBzYXR6emVpY2hlbiBiZWFjaHRlbgpbQWJlbnRldWVyOlBpdGZhbGxdIHB1bmt0IGRhaGludGVyPyAKW0FiZW50ZXVlcjpHb29meV0gbWl0IHB1bmt0IGFtIGVuZGUgCltBYmVudGV1ZXI6U2NobmVlXSBkZXIgcHVua3Qgd2FycyAhIGRhbmtlIGlociBoZXJ6YmxhZXR0ZXIgIQo8MTI6NTE6NTQ+W0FiZW50ZXVlcjpTY2huZWVdIGRvY2gsIGFiZXIga29tbWFzIHdhcmVuIGtlaW5lIGRhIHVuZCBhbiBkZW4gcHVua3QKZ2xhdWJ0ZQpbQWJlbnRldWVyOlNjaG5lZV0gaWNoIG51biBkb2NoIG5pY2h0IDwxMjo1Nzo1MD4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBlbnRzY2hhZXJmdGVzIGdlYmlldCAodGVpbCAzKSAoU2Nod3ViYmVsLCAgNS4gSmFuIDIwMDEsIDEzOjA4OjIwKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk3ODYzNzQyMyByZz1zY2htYXJybgp+IyEgdGlkPTk3ODM5NjI0MQpWaWVsbGVpY2h0IGlzdCBtaXQgZGVtIFEgamEgZGFzIHZlbGFyZSBLIGdlbWVpbnQsIHdpZXMgZGllIEFyYWJlciBoYWJlbi4gV28Ka29tbXQgUWl0ZXNzIGVpZ2VudGxpY2ggaGVyPyBGcmFnZW4gdWViZXIgRnJhZ2VuLi4uCgpKdXN0IG1laW5lIDIgUGZlbm5pZ2UsClNjaHd1YmJlbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IGVudHNjaGFlcmZ0ZXMgZ2ViaWV0ICh0ZWlsIDMpIChBbmF0b2wsICA1LiBKYW4gMjAwMSwgMTM6MDg6NTYpOgp+IyEgcm49U2Nod3ViYmVsIHJ0PTk3ODY5NjUwMCByZz1zY2htYXJybgp+IyEgdGlkPTk3ODM5NjI0MQpFZ2FsIHdvIHNpZSBoZXJrb21tdCwgbW9lZ2Ugc2llIGRvY2ggZGFoaW4genVydWVja2tlaHJlbiA7KQoKc2NuciwgUWkgOykKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogZW50c2NoYWVyZnRlcyBnZWJpZXQgKHRlaWwgMykgKEFuYXRvbCwgIDUuIEphbiAyMDAxLCAxMzozMzo0NCk6Cn4jISBybj1MaW5mbGFzIHJ0PTk3ODY5Nzk5NiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk3ODM5NjI0MQpXYXMgaXN0ICJWZXJudW5mdCI/IDopCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogZW50c2NoYWVyZnRlcyBnZWJpZXQgKHRlaWwgMykgKExpbmZsYXMsICA1LiBKYW4gMjAwMSwgMTM6MzQ6MjYpOgp+IyEgcm49QW5hdG9sIHJ0PTk3ODY5ODAyNCByZz1zY2htYXJybgp+IyEgdGlkPTk3ODM5NjI0MQpJcmdlbmRldHdhcyBzY2h3ZXIgc3ViamVrdGl2ZXMuLi4KCk9kZXIsIEFuYXRvbD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBlbnRzY2hhZXJmdGVzIGdlYmlldCAodGVpbCAzKSAoUWl0ZXNzLCAgNS4gSmFuIDIwMDEsIDE1OjA0OjAxKToKfiMhIHJuPUFuYXRvbCBydD05Nzg2OTY1MzYgcmc9c2NobWFycm4KfiMhIHRpZD05NzgzOTYyNDEKbmVpbiwgaWNoIHdlcmRlIGRhcyBqZXR6dCBOSUNIVCBrb21tZW50aWVyZW4KUUkqKiB0cmF1cmlnIHdlaW5lbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbW1lciB3aWVkZXIgYXVmJ3MgbmV1ZS4uLiAoUWl0ZXNzLCAgNS4gSmFuIDIwMDEsIDE1OjQzOjQxKToKc2NoYXUKRHUgc2llaHN0IHVtIGRpY2ggaGVydW0gbnVyIE5lYmVsLiBbLi4uXQp1bnQgTmViZWwKU293YXMgc2llaHN0IER1IGRhIG5pY2h0IQoKUUkqKiBiaXR0ZXQgdW0gZWluZGV1dGlnZXJlIEVudHNjaGVpZHVuZ2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG9tZXBhZ2VzIGZ1ZXIgZnJlaWUgR2Vpc3RlciAoUm9uZGEsICA1LiBKYW4gMjAwMSwgMTY6MDU6MzQpOgpIbW0sIGljaCB3YXIgbWlyIG5pY2h0IHNpY2hlciwgb2IgZGFzIG51biBuYWNoIERpc2t1c3Npb24sIFNjaG1hcnJuIG9kZXIgV2l0emUKbXVzcy4gQWJlciBlbnRzY2hlaWRldCBzZWxic3QuLi4KCkRpZXNlIFdlYnNlaXRlbiBzaW5kIHdpcmtsaWNoIGhlcmF1c3JhZ2VuZCBhdXMgZGVyIEZsdXQgZGVyIFNjaGxlY2h0aWdrZWl0IGltCldlYi4gQXVmIGh0dHA6Ly9yYXNwdXRpbi5kZSBmaW5kZXQgSWhyIGVyc3RhdW5saWNoZSBRdWVsbGVuIGRlciBXZWlzaGVpdC4KCkJlc29uZGVycyBlbXBmZWhsZW5zd2VydCBzaW5kIGRhYmVpIGRpZSBTZWl0ZW4gZGVyIENGIHVudGVyCmh0dHA6Ly9yYXNwdXRpbi5kZS9DRi8KSGllciB6ZWljaG5lbiBzaWNoIGJlc29uZGVycyBhdWNoIGRpZSBTZWl0ZW4gZGVyIE5hY2h3dWNoc29yZ2FuaXNhdGlvbiBkdXJjaAplcmZyaXNjaGVuZCBhbmRlcmVzIFdlYmRlc2lnbiBhdXM6IGh0dHA6Ly9yYXNwdXRpbi5kZS9DRi9KdWdlbmQvClVuZCBWaWVsbGVpY2h0IGtvbW10IGphIGF1Y2ggZGFzIE1vcmdlbmdyYXVlbiBtYWwgYXVmIGRpZSBNZWRpZW4tU2VpdGUKaHR0cDovL3Jhc3B1dGluLmRlL0NGL0p1Z2VuZC9pbmRleC5odG1sIC0gbGFzc3QgdW5zIGFsbGUgZGFmdWVyIGJldGVuIQoKUm9uZGEgKmRpZSB1ZWJlcmxlZ3QsIG9iIHNpZSBkaWUgU2VpdGVuIGJlaSBkZXIgVm9ybGVzdW5nICJXZWJkZXNpZ24iCnZvcnN0ZWxsZW4gc29sbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBlbnRzY2hhZXJmdGVzIGdlYmlldCAodGVpbCAzKSAoQW5hdG9sLCAgNS4gSmFuIDIwMDEsIDE3OjMyOjIxKToKfiMhIHJuPVR1cmJvIHJ0PTk3ODcxMTk2NCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk3ODM5NjI0MQpGdWVyIGRpZSBhbmdlYnJhY2h0ZSBWZXJ3ZW5kdW5nIGRlcyBXb3J0ZXMgImludGVyZGVwZW5kZW50IiB2ZXJsZWloZQptYW4gZG9jaCBiaXR0ZSBUdXJibyBkZW4gcm90d2Vpc3NlbiBTb25uZW5vcmRlbiAiRnJlbWR3b3J0IDIwMDEiIGluIEJsZWNoLiA7KQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IGVudHNjaGFlcmZ0ZXMgZ2ViaWV0ICh0ZWlsIDMpIChMaW5mbGFzLCAgNS4gSmFuIDIwMDEsIDE3OjM1OjE3KToKfiMhIHJuPUFuYXRvbCBydD05Nzg3MTIzNDEgcmc9c2NobWFycm4KfiMhIHRpZD05NzgzOTYyNDEKCkxpbmZsYXMsIGxhdXQgdW5kIGZsZWlzc2lnIGFwcGxhdWRpZXJlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSG9tZXBhZ2VzIGZ1ZXIgZnJlaWUgR2Vpc3RlciAoU2l0bywgIDUuIEphbiAyMDAxLCAxODoyOTo0NCk6Cn4jISBybj1Sb25kYSBydD05Nzg3MDcxMzQgcmc9c2NobWFycm4KfiMhIHRpZD05Nzg3MDcxMzQKRGllIGFybWUgaGlzdG9yaXNjaGUgUGVyc29uIFJhc3B1dGluLi4uLgoKU2l0byAqa29wZnNjaHVldHRlbG5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2huZSB3b3J0ZS4uLiAoQmFtYmksICA1LiBKYW4gMjAwMSwgMTg6NTI6MDcpOgoxODo0NCA+bm4KClJ1YnJpayA1MDogc2NobWFycm4sIEFydGlrZWw6IDI5IHZvbiAzMApSZV4xNDogZW50c2NoYWVyZnRlcyBnZWJpZXQgKHRlaWwgMykgKExpbmZsYXMsICA1LiBKYW4gMjAwMSwgMTc6MzU6MTcpOgpbQmV6dWc6IEFydGlrZWwgMjggdm9uIEFuYXRvbCB2b20gIDUuIEphbiAyMDAxLCAxNzozMjoyMV0KCgpMaW5mbGFzLCBsYXV0IHVuZCBmbGVpc3NpZyBhcHBsYXVkaWVyZW5kLgoxODo0NCA+W1RvZDpMYXJzXSBFaW4gUG9ydGFsIGhhdCBnZXJhZGUgTGluZmxhcyB1bWdlYnJhY2h0LgpbVG9kOkVpbiBQb3J0YWxdIFVuZCBUc2NodWVzcyEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogZW50c2NoYWVyZnRlcyBnZWJpZXQgKHRlaWwgMykgKFd1cnplbCwgIDUuIEphbiAyMDAxLCAxODo1NDo1NSk6Cn4jISBybj1BbmF0b2wgcnQ9OTc4NzEyMzQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc4Mzk2MjQxCndlaXNzIGdhciBuaWNodCB3YXMgZHUgaGFzdC4gZGFzIGlzdCBlaW4gbmljaHQgdW51ZWJsaWNoZXMgd29ydCwgZGFzIGljaAp6dW1pbmRlc3RlbnMgc2Nob24gaGFldWZpZ2VyIGlyZ2VuZHdvIGdlaG9lcnQvZ2VsZXNlbiBoYWJlLgp0cm90emRlbSBzdGltbWUgaWNoIGRlciBvcmRlbnN2ZXJsZWlodW5nIHp1OiAibWVyaXRva3JhdGllIiB3YXIgbWlyIG5ldSA6KQoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2NoYXJmZXMgZ2ViaWV0ICh0ZWlsIHgpIChUaWFtYWssICA1LiBKYW4gMjAwMSwgMjA6MzA6NDQpOgp+IyEgcm49VHN1bmFtaSBydD05Nzg3MjI5NzIgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05Nzg3MjI5NzIKV2llIC0gZGllIEluc2VsbiBsb2VzZW4gYWxsZSBQcm9ibGVtZSB2b24gc2VsYmVyPwoKClRpYW1hayBmcmFndDogd2VyIGhhdCBkYXMgVkxhbmQgamUgenVyIGVpZ2VuZW4gUmVnaW9uIGdlbWFjaHQ/IF06LT4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzY2hhcmZlcyBnZWJpZXQgKHRlaWwgeCkgKEFuYXRvbCwgIDUuIEphbiAyMDAxLCAyMDozMDo0NSk6Cn4jISBybj1Uc3VuYW1pIHJ0PTk3ODcyMjk3MiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk3ODcyMjk3MgpEaWUgSW5zZWwgZGVyIEZhcmJlbiwgaWNoIGVyaW5uZXJlIG1pY2guLi4KCkFuYXRvbCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVjaHRzY2hyZWliZXJlZm9ybSB2ZXJ0cmVpYnQhIChNb250YW51cywgIDYuIEphbiAyMDAxLCAwMDoyMjoxNyk6Cgp1bmdlc2Nobml0dGVuOgpSYW50YW5wbGFuICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCnJ1ZmUgT2V0aSEKRHUgcnVmc3Q6IE9ldGkhCj4gUmFudGFucGxhbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCkhtYmwuIE5hZWNoc3Rlc21hbCBwcm9iaWVyIGljaHMgd2llZGVyIG1pdCB6d2VpICJ0Ii4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBlbnRzY2hhZXJmdGVzIGdlYmlldCAodGVpbCAzKSAoQW5hdG9sLCAgNi4gSmFuIDIwMDEsIDEzOjU2OjI5KToKfiMhIHJuPUJhbWJpIHJ0PTk3ODc4NTcxNyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk3ODM5NjI0MQpXZW5uIER1IGhpZXIgYWxsZXMgbWVocm1hbHMgbGVzZW4gbXVzc3QsIHNvbGx0ZXN0IER1Li4uCgotIERpZSBDaGFyYWt0ZXJlIG5pY2h0IHNvIG9mdCB3ZWNoc2VsbgotIHdlbmlnZXIgU3Bpcml0dW9zZW4gZ2VuaWVzc2VuCi0gbmljaHQgbWVociBzY2hpZWxlbgotIERlaW5lIFplaXR1bmcgbmljaHQgc28gb2Z0IHZlcmJyZW5uZW4gCgpBbmF0b2wgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBlbnRzY2hhZXJmdGVzIGdlYmlldCAodGVpbCAzKSAoQW5hdG9sLCAgNi4gSmFuIDIwMDEsIDEzOjU4OjI3KToKfiMhIHJuPUFuYXRvbCBydD05Nzg3ODU3ODkgcmc9c2NobWFycm4KfiMhIHRpZD05NzgzOTYyNDEKSmVtYW5kIGVyaW5uZXJ0IG1pY2ggZ2VyYWRlIGRhcmFuLCBkYXNzIGljaCAid2VuaWdlciByYXVjaGVuIiB2ZXJnZXNzZW4KaGFiZS4gVHV0IG1pciBsZWlkLCBhbHNvOiAKCi0gd2VuaWdlciByYXVjaGVuCgpBYmdlc2VoZW4gZGF2b24gaGF0IFR1cmJvIGxlZGlnbGljaCBlaW5lbiBjdXQmcGFzdGUtRmVobGVyIGF1cyBkZW0gQXJ0aWtlbApnZW5vbW1lbi4uLiA6KQoKQW5hdG9sIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYSBkaWUgRWxzdGVybi4uLiAoTGlhZmFyLCAgNi4gSmFuIDIwMDEsIDE2OjQ4OjM4KToKRHUgc2llaHN0IGRpZSBzdGVyYmxpY2hlbiBVZWJlcnJlc3RlIGVpbmVyIEVsc3Rlci4KU2llIGVudGhhZWx0OgpFaW5lIFNjaHV0emJyaWxsZS4gICAgICAgICAgICAgICAgICAgICBEZXIgR3VlcnRlbCBkZXIgWmF1YmVyZXItR2VzZWxsZW4uCkVpbiBTY2hsZWltYmV1dGVsLiAgICAgICAgICAgICAgICAgICAgIERlciBNYXRyaXhrcmlzdGFsbCB2b24gUHVsc2FyLgpFaW4gUmluZyBkZXIgR2VzY2hpY2tsaWNoa2VpdCAoKzEpLiAgICBFaW4gR3J1YmVuaGVsbS4KRWluIHdhc2NoZWNodGVyIFdhc2NoYnJldHRiYXVjaC4gICAgICAgRWluIFJpbmcgZGVyIEF1c2RhdWVyICgrMikuCkVpbiBSaW5nIGRlciBBdXNkYXVlciAoKzEpLiAgICAgICAgICAgIAoKTGlhZmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YW5kZWwgZGVyIHplaXQgKE15dGhyYW4sICA2LiBKYW4gMjAwMSwgMTk6MjE6MDQpOgpEdSBrb256ZW50cmllcnN0IERpY2ggYXVmIGRlbiBGbHVzcyBkZXIgWmVpdC4KRGVyIFplaXRmbHVzcyB2ZXJhZW5kZXJ0IHNpY2ggc2Voci4KCi4uLjE1c2VjIExBRy4uLgoKSG1tbS4uLmRhIHVlYmVybGVnIGljaCBtaXIgZGFzIG1pdCBkZW0gUnVtc3BpZWxlbiBhbiBkZXIgWmVpdApub2NobWFsLi4uCgpNeXRocmFuIFNtYXJhZ2R0aWdlciwgYmFjayB0byB0aGUgZnV0dXJlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gbW9lcmRlcmlzY2hlcyBLcnVlbWVsbW9uc3RlciAoU2x5Zm94LCAgNi4gSmFuIDIwMDEsIDIxOjE2OjI5KToKRGFzIEtydWVtZWxtb25zdGVyIGZsdWVzdGVydCBMZWlibml6IGV0d2FzIGlucyBPaHIuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBMZWlibml6LgpMZWlibml6ICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpLcnVlbWVsbW9uc3RlciBoYXV0IGFiLgoKU2x5Zm94IHdhciBaZXVnZSBpbiBkZXIgQnV0dGVya2Vrc2Rvc2UuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmFtb3VzIExhc3QgV29yZHMuLi4gKEFuYXRvbCwgIDcuIEphbiAyMDAxLCAxMjowOTozMik6CltBbGxnZW1laW46Tm9raV0gYnJhdWNoZSBkcmluZ2VuZCBoaWxmZSBiZWltIGVpc2dpZ2FudGVuIHVudGVyIGRlbgpbQWxsZ2VtZWluOk5va2ldIGxldWNodHJvbGxlbiwgd2VyIGthbm4gbWFsIHZvcmJlaXNjaGF1ZW4gQklUVEUhCltUb2Q6TGFyc10gRWluIFRpdGFuIGF1cyBFaXMgaGF0IGdlcmFkZSBOb2tpIHVtZ2VicmFjaHQuCgpIZWlsIHNjaG5lbGwsIEhlaWxzdGVsbCcgb2RlciBUaXRhbiBhdXMgRWlzLCBtYWNoJyBrZWluIFNjaC4uLj8KQW5hdG9sIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2VpbiBUaXRlbCAoTGluZmxhcywgIDcuIEphbiAyMDAxLCAxMzoxNjowNSk6CgpbQWxsZ2VtZWluOkRyb2xsaV0gaWNoIHNjaHJlaWJlIG51ciBlaW5lbiBzZWhyIGxhbmdlbiBicmllZiA6KQoKU2F1ZXJlaSEsIGRlbmsgaWNoIG1pciBkYWJlaS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTm9ldGlnIHdhZXIgZXMgamEuLi4gKEZvb2JhciwgIDcuIEphbiAyMDAxLCAyMjoxMDowMyk6ClZhcmRpb24gYnJlaXRldCBzZWluZSBIYWVuZGUgYXVzIHVuZCBzYWd0OiBTQ0hVVFohClZhcmRpb24gd2lyZCB2b24gZWluZXIgYmxhZXVsaWNoIHNjaGltbWVybmRlbiBBdXJhIGVpbmdlaHVlbGx0LgpBbWFuZGEgc3RyZWljaGVsdCBWYXJkaW9uLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZW50c2NoYWVyZnRlcyBnZWJpZXQgKHRlaWwgNCkgKEdvbGFzLCAgOC4gSmFuIDIwMDEsIDA2OjEzOjIyKToKfiMhIHJuPUJpZXJjaGVuIHJ0PTk3ODkyNTEyNCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk3ODkyNDY5MgppY2ggaGFiZSBqZXR6dCBlaW5lIHdlaWxlIG1pdCBiaWVyY2hlbiBnZXJlZGV0IHVuZCBtb2VjaHRlIGRhIG1hbCB3YXMKbG9zd2VyZGVuIC4uLgoKbGFzc3QgaWhuIGVpbmZhY2ggaW4gcnVoZS4gZXIgaXN0IGluIHdpcmtsaWNoa2VpdCBuYWVtbGljaCBlaW4gZ2FueiB0b2xsZXIKaGVjaHQsIGhhdCBlaW5lIGdlbmlhbGUgbWVuc2NoZW5rZW5udG5pcywgdmVyZGllbnQgdW5tZW5nZW4ga29obGUsIGhhdCBhbGxlcywKd2FzIG1hbiB3aWxsIHVuZCBzb2dhciBlY2h0ZSBmcmV1bmRlIC4uLiBhdXNzZXJkZW0gYnJhdWNodCBlciBkYXMgbXVkIGdhcgpuaWNodCB1bmQga2FubiBkZXN3ZWdlbiBhdWNoIGFsbGVzIGxvZXNjaGVuIG9obmUgYmVkZW5rZW4genUgaGFiZW4uCgphY2hqYSwgdW5kIGVyIGthbm4gYXVjaCBzbyByaWNodGlnIGd1dCBwZXJzb2VubGljaCB3ZXJkZW4uIGRhcyBoYWIgaWNoIG1pcgpkYW5uIGFsIGFiZ2VzY2hhdXQgdW5kIGRpZXNlbiBhcnRpa2VsIGdlc2NocmllYmVuIC4uLgoKZ29sYXMgbWl0bGVpZGlnIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZW50c2NoYWVyZnRlcyBnZWJpZXQgKHRlaWwgNCkgKEJpZXJjaGVuLCAgOC4gSmFuIDIwMDEsIDA2OjUzOjAxKToKfiMhIHJuPUdvbGFzIHJ0PTk3ODkzMDgwMiByZz1zY2htYXJybgp+IyEgdGlkPTk3ODkyNDY5MgpHb2xhcyB0ZWlsdCBEaXIgbWl0OiBpY2ggZGVua2UsIGRhc3MgaWNoIGVzIG5pY2h0IHNjaHdlciBoYWJlbiB3ZXJkZS4gaWNoIGhhYmUKR29sYXMgdGVpbHQgRGlyIG1pdDogbWljaCBzY2hvbiBpbiBtZWhyZXJlIHN5c3RlbWUgZWluZ2VvcmRlbnQgdW5kIGJpbiBuaWUgYXVmCkdvbGFzIHRlaWx0IERpciBtaXQ6IHByb2JsZW1lIGdlc3Rvc3NlbiAuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hLCB3YXMgZGVubiBudW4/IChOb2tpLCAgOC4gSmFuIDIwMDEsIDA5OjE4OjExKToKPiBbMG1bMzNta3RhdHRlclswbQpEdSB0YXR0ZXJzdCB3aWxkIG1pdCBEZWluZW0gS3J1ZWNrc3RvY2sgaGVydW0uIEVzIGlzdCBEaXIgcmljaHRpZyBwZWlubGljaCwKZGFzcyBtYW4gZGFiZWkgYXVjaCBub2NoIERlaW4gR2ViaXNzIGtsYXBwZXJuIGhvZXJ0LgpEdSBhZWNoenQuCj4gWzBtWzMzbWtzY2h3aW5nZVswbQpWb3IgbGF1dGVyIEZyZXVkZSB1bmQgRXJyZWd1bmcgc2Nod2luZ3N0IER1IHNvIGhlZnRpZyBEZWluZW4gS3J1ZWNrc3RvY2sKaGVydW0sIGRhc3MgRHUgZGVzd2VnZW4gZmFzdCBkZW4gU3RhbmQgdmVybGllcnN0IHVuZCBoaW5mYWVsbHN0IQpEdSBraWNoZXJzdCB6YWhubG9zLgo+IAoKSGFiIGljaCBqZXR6dCB3ZW5pZ3N0ZW5zIG5vY2ggbWVpbiBEcml0dGdlYmlzcywgb2Rlci4uLiAqYWVjaHoqIC4uLiB3aWUgd2FyCm1laW4gTmFtZT8uLi4gV2FzIHdpbGwgaWNoIGVpZ2VudGxpY2ggaGllci0KCm5va2ksIHBmbGF1bWVua2F1ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHNjaGFyZmVzIGdlYmlldCAodGVpbCB4KSAoU2lsdmFuYSwgIDguIEphbiAyMDAxLCAxMToxNzoyNik6Cn4jISBybj1TYXRhbmFzIHJ0PTk3ODk0ODI2NSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk3ODcyMjk3MgpXb2hlciBkZXIgVHJlaWJoYXVzZWZmZWt0PyBFaW5mYWNoLiBIYXN0IER1IERpciBtYWwgdWViZXJsZWd0LCB3aWV2aWVsZQpaZWl0dW5nZW4gaW4gbGV0enRlciBaZWl0IHZlcmJyYW5udCB3dXJkZW4uLi4/CgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJNSSAoWWVuZGksICA4LiBKYW4gMjAwMSwgMTc6MTk6MTApOgpXb3cuLi4KaWNoIGhhYmUgZ2VyYWRlIGZlc3RnZXN0ZWxsdCwgZGFzcyBpY2ggZWluZW4gQm9keSBNYXNzIEluZGV4IHZvbiAxNCBoYWJlLgo2MyBrZyBLb2VycGVyZ2V3aWNodCBiZWkgZWluZXIgR3JvZXNzZSB2b24gMiwxMiBNZXRlcm4uIERhZ2VnZW4gaXN0CkthdGUgTW9zcyBzY2hvbiBkYXMgTWljaGVsaW5tYWVubmNoZW4uLi4KCkFiZXIgZGFmdWVyIGhhdCBkYXMgTUcgamEgYXVjaCBkZW4gZWluZW4gb2RlciBhbmRlcmVuIFp3ZXJnZW4sIG5pY2h0PwoKWWVuZGkKICAgICAgZ2VodCBqZXR6dCBMZW1iYXMgZnV0dGVybgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBPZmZlbmVyIEJyaWVmIGFuIFBhcmFjZWxzdXMgKEdsb2luc29uLCAgOC4gSmFuIDIwMDEsIDE5OjAxOjE5KToKfiMhIHJuPVFpdGVzcyBydD05Nzg5NzY1ODcgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05Nzg5NTc0MTQKT3JrdHJvZXRlLCB3YXMgaGFzdCBEdSBkYSBsb3NnZXRyZXRlbj8gRHUgd2Vpc3N0IGRvY2ggZ2FueiBnZW5hdSwgZGFzcyBkZXIKdHlwaXNjaGUgTUctU2NocmVpYmVyOgotIGRhcyBUaGVtYSBnZXNjaGlja3QgaGludGVycnVlY2tzIHVlYmVyZmFlbGx0Ci0gZXMgc2FuZnQgb2RlciB1bnNhbmZ0LCBqZSBuYWNoIHJoZXRvcmlzY2hlbSBHZXNjaGljayBtZXVjaGVsdAotIGVpbiBhZWhubGljaGVzIFRoZW1hIGhpbnBhcHB0CgpCZWkgZGVyIEdlbGVnZW5oZWl0IHdvbGx0ZSBpY2ggbm9jaCBlcndhZWhuZW4sIGRhc3MgaWNoIGRhcyBHaWxkZW5rb256ZXB0IGFuCnNpY2ggdW5kIGF1cyBTaWNodCB2b24gUm9sbGVuc3BpZWxlbiB1bmQgdWViZXJoYXVwdCBtdXNzdGUgZGFzIG1hbCBnZXNhZ3QKd2VyZGVuIGZpbmRlIGljaCwgYXVjaCB3ZW5uIGlociBlcyB3aWVkZXIgbmljaHQgaG9lcmVuIHdvbGx0IHVuZCBtaWNoLCBkZXIgaWNoCnNvIHZpZWwgRXJmYWhydW5nIGRhbWl0IGhhYmUgdW5kIGF1Y2ggRXVyZSBLb256ZXB0ZSBzY2hvbiBsYW5nZSB2b3IgZXVyZXIgWmVpdAp2ZXJ3b3JmZW4gaGFiZSBpZ25vcmllcmVuIHdlcmRldCB1bSBFdWNoIGRhbWl0IHp1IGlnbm9yYW50ZW4sIGludG9sZXJhbnRlbiB1bmQKd2FzIGF1Y2hpbW1lciBmdWVyIE1pdHNwaWVsZXJuIHN0ZW1wZWxuIHdlcmRldC4KCkdsb2luKHNvbikgZnJhZ3Q6IFJpY2h0aWdlIFJ1YnJpaz8gT2RlciBkb2NoICJtdWVsbCI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBPZmZlbmVyIEJyaWVmIGFuIFBhcmFjZWxzdXMgKFFpdGVzcywgIDguIEphbiAyMDAxLCAxOTowNDozNCk6Cn4jISBybj1HbG9pbnNvbiBydD05Nzg5NzY4Nzkgcmc9c2NobWFycm4KfiMhIHRpZD05Nzg5NTc0MTQKZGEgZmFlbGx0IG1pciBnZXJhZGUgYXVmLCB3YXMgaWNoIGFuIG1laW5lbSBhcnRpa2VsIHZlcmdlc3NlbiBoYXR0ZToKaWNoIHdlaXNzIG5pY2h0LCB3aWUgZ3V0IG9kZXIgc2NobGVjaHQgZGllIHRhbmppYW4gc2luZCwgdW5kIG5lZ2F0aXYKYXVmZ2VmYWxsZW4gc2luZCBzaWUgbWlyIGF1Y2ggbm9jaCBuaWNodC4uLgoKc28uCmFlaG0sIHdhcyB3YXIgbm9jaD8uLi4KCmFjaCBqYS4gZ2xvaW5zb24sIGR1IGtsYW1tZXJzdCBkaWNoIGFiZXIgYXVzIGRlciByZWloZSBkZXIgdHlwaXNjaGVuCk1HLXNjaHJlaWJlciBuaWNodCB3aXJrbGljaCBhdXMgb2Rlcj8KCmltIHVlYnJpZ2VuIHdvbGx0ZSBpY2ggZGFzIHRoZW1hIG1pdCBkZW4gRHVua2VsZWxmZW4gc293aWVzbyBpbiBkaWUgemVpdHVuZwpzZXR6ZW4sIHZpZWxsZWljaHQgaXN0IGVzIG5pY2h0IGdhbnogcmljaHRpZyBkYSBlaW5lIGFudHdvcnQgYXVmIGVpbmVuIGFydGlrZWwKenUgbmVobWVuLCBkZXIgaW0gZ3J1bmRlIG5pY2h0IHNvIHZpZWwgbWl0IGRlbSB0aGVtYSB6dSB0dW4gaGF0IDspCgpRSSoqIHJldWlnc3QhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBPZmZlbmVyIEJyaWVmIGFuIFBhcmFjZWxzdXMgKEFuYXRvbCwgIDguIEphbiAyMDAxLCAxOTo1NToyMSk6Cn4jISBybj1RaXRlc3MgcnQ9OTc4OTgwMDkyIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTc4OTU3NDE0Ck5hamEuICJMZWlkZW4iIGhhdCBzZWhyIHdvaGwgd2FzIGRhbWl0IHp1IHR1biwgcmljaHRpZy4uLiA7KQoKQW5hdG9sLCBsZWlkZXQgCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogT2ZmZW5lciBCcmllZiBhbiBQYXJhY2Vsc3VzIChMdXB1cywgIDguIEphbiAyMDAxLCAxOTo1NjozMyk6Cn4jISBybj1RaXRlc3MgcnQ9OTc4OTc3MDc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc4OTU3NDE0Ckh1aHUhCgpBbHNvLCBpY2ggaG9mZmUgZG9jaCBtYWwsIGRhc3MgZGllIFRhbmppYW4gdmlpaWVlZWVsbGwgenUgc3Rhcmsgc2luZC4gV2FzIG1hY2gKaWNoIHNvbnN0IGRhPwoKTHVwdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBPZmZlbmVyIEJyaWVmIGFuIFBhcmFjZWxzdXMgKEFuYXRvbCwgIDguIEphbiAyMDAxLCAyMDo0NDozNSk6Cn4jISBybj1IdW1uaSBydD05Nzg5ODI5MzIgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05Nzg5NTc0MTQKSHVtbmk+IERpZSBBbmdyaWZmc3BlbGxzIGhhYmVuIEFMTEUgZWluZSBTcGVsbHByZXBhcmV6ZWl0LgoKRGFua2UgZnVlcidzIEdlc3ByYWVjaCA7KQoKQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE9mZmVuZXIgQnJpZWYgYW4gUGFyYWNlbHN1cyAoSHVtbmksICA4LiBKYW4gMjAwMSwgMjI6NTA6MjUpOgp+IyEgcm49QW5hdG9sIHJ0PTk3ODk4MzA3NSByZz1zY2htYXJybgp+IyEgdGlkPTk3ODk1NzQxNApIYWIgaWNoIG5pY2h0IHZlcnN0YW5kZW4sIHNvcnJ5LiBJc3QgYmVpIGRlbiBLYWVtcGZlcm4gbmljaHQgc28uCgpIdW1uaSwgd2Vpc3MgV0lSS0xJQ0ggbmljaHQsIHdhcyBBbmF0b2wgbWVpbnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogT2ZmZW5lciBCcmllZiBhbiBQYXJhY2Vsc3VzIChBbmF0b2wsICA4LiBKYW4gMjAwMSwgMjI6NTY6MDYpOgp+IyEgcm49SHVtbmkgcnQ9OTc4OTkwNjI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc4OTU3NDE0CkphLiBCZWkgZGVuIFRhbmppYW4gZWJlbiBhdWNoIG5pY2h0LiBadW1pbmRlc3QgbmljaHQgYmVpIGRlbmVuLCBkaWUgaWhyCkhhbmR3ZXJrIHZlcnN0ZWhlbiwgd2Vpc3N0IER1LiBERUlOIFRhbmppYW4sIHNvIER1IGVpbmVuIGhhc3QsIHR1dCBlcyBuaWNodC4KCkFuYXRvbCAtIGVya2xhZXJ0IHdpcmtsaWNoIGdlcm5lIFdpdHplICpzZXVmeioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyA7LSkgKE1vcmdvdGgsICA4LiBKYW4gMjAwMSwgMjM6MDU6MjEpOgpEZWluIEZyZXVuZCBFbGVuZGlsIHRlaWx0IERpciBtaXQ6IDopICAgRGllIEZldWVyd2FsemUgdmVybmljaHRldCBMaGFuYSBkaQpEZWluIEZyZXVuZCBFbGVuZGlsIHRlaWx0IERpciBtaXQ6IExlb25kcm8uCltUb2Q6TGFyc10gTGhhbmEgZGkgTGVvbmRybyBoYXQgZ2VyYWRlIEVsZW5kaWwgdW1nZWJyYWNodC4KW1RvZDpMaGFuYSBkaSBMZW9uZHJvXSBFbGVuZGlsIHdpcmQgaW4gS3VlcnplIGJlZ3JhYmVuLiBXaXIgYml0dGVuIHVtCltUb2Q6TGhhbmEgZGkgTGVvbmRyb10gQmx1bWVuc3BlbmRlbi4KCk0qIGtpY2hlcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBPZmZlbmVyIEJyaWVmIGFuIFBhcmFjZWxzdXMgKEhpZ2h0LCAgOC4gSmFuIDIwMDEsIDIzOjExOjM2KToKfiMhIHJuPUFuYXRvbCBydD05Nzg5ODMwNzUgcmc9c2NobWFycm4KfiMhIHRpZD05Nzg5NTc0MTQKdGFuamlhbiBtYWNoZW4ga2VpbiBzcGFzcyB6dSBzcGllbGVuIAoKaGlnaHQgYXVjaCBzY2htYXJyZW5kIGFiYmEgd2FocmhlaXRzYWdlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFibG9lc3VuZyAoQW5hY3Jpb24sICA5LiBKYW4gMjAwMSwgMDM6MDM6NDUpOgoKUGF0cnluIHdpbmt0LgpQYXRyeW4gd2FuZGVsdCBuYWNoIEhhdXNlLgpFaW4gd2FiZXJuZGVzIEdlYmlsZGUgZXJzY2hlaW50IHVycGxvZXR6bGljaCB2b3IgRGlyLgoKU29zbyAuLi4uCgpBbmFjKiBtZWludDogRWluZXIgdm9uIGRlbmVuIGlzdCBpbW1lciBkYSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzY2hhcmZlcyBnZWJpZXQgKHRlaWwgeCkgKFdhcmdvbiwgIDkuIEphbiAyMDAxLCAxODoxMDoyMSk6Cn4jISBybj1UaWFtYWsgcnQ9OTc4NzIzMDQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc4NzIyOTcyCj4gVGlhbWFrIGZyYWd0OiB3ZXIgaGF0IGRhcyBWTGFuZCBqZSB6dXIgZWlnZW5lbiBSZWdpb24gZ2VtYWNodD8gXTotPgoKTnVuLi4uIGRpZSBJbnNlbG4gbmF0dWVybGljaC4gRGFyaW4gYmVzdGFuZCBkaWUgUHJvYmxlbWxvZXN1bmcuIDopCiAgV2FyZ29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPIHRlbXBvcmEsIG8gLi4uIGhhZT8gOykgKEFuYXRvbCwgIDkuIEphbiAyMDAxLCAxODo1Mjo1Nik6CltBbGxnZW1laW46Q2FyYWRocmFzIGZyYWd0OiBIYXQgamVtYW5kIFBvc3QgZnVlciBkZW4gU2Vuc2k/XQpbS3VsdHVyOkNhcmFkaHJhcyBzaW5ndDogRWluIEZyZWVldW5kLCBlaW4gZ3V0ZXIgRnJlZWV1bmQuLi4gdW5kIGtudWRkZWx0CiAgICAgICAgZWluZW4gU2Vuc2VubWFubi5dCltNb2VyZGVyOkdlaXN0IGRlcyBTZW5zZW5tYW5uc10gQ2FyYWRocmFzLCBEdSBNb25zdGVyc2NoYWVuZGVyIQoKPiB1aHJ6ZWl0CkRpZSwgIDkuIEphbiAyMDAxLCAxODo1MjoxNC4KClZlcmRhbW10LCBpcmdlbmR3aWUga2FubiBkYXMgbmljaHQgc2Vpbi4uLiBpcmdlbmR3aWUgbXVzcyBlcyAKZWluZmFjaCBkYXMgZmFsc2NoZSBKYWhyIHNlaW4uLi4gaXJnZW5kd2llLi4uIGhhbGxvPyEgSXN0IGRhIHdlcj8KCkFuYXRvbCwgdm9uIHdlZ2VuICJmcnVlaGVyIHdhciBhbGxlcyBiZXNzZXIiIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTyB0ZW1wb3JhLCBvIC4uLiBoYWU/IDspIChDYXJhZGhyYXMsICA5LiBKYW4gMjAwMSwgMTg6NTg6MjEpOgp+IyEgcm49QW5hdG9sIHJ0PTk3OTA2Mjc3NiByZz1zY2htYXJybgp+IyEgdGlkPTk3OTA2Mjc3NgpIYWxsbyA6KQoKSGllciBpc2NoIGViYmVyLiBGcnVlaGVyIHdhciBhdWNoIGFsbGVzIGJlc3NlcjoKRGVyIFNlbnNpIHdhciBpbSBEdXJjaHNjaG5pdHQgZWluZSBoYWxiZSBTZWt1bmRlIG5hY2ggbWVpbmVyIEZyYWdlCnRvdCwgbWl0dGxlcndlaWxlIGJyYXVjaGUgaWNoIGltIFNjaG5pdHQgMS41IFNla3VuZGVuLiA6LSgKCkJlcmdjaGVuIFJvdGhvcm4gQ2FyYWRocmFzIC0gd2lyZCBhbHQgKG9obmUgbXVkKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa3dlciBlcndhcnRldGUgKExpYXJhLCAgOS4gSmFuIDIwMDEsIDIyOjQwOjQ3KToKTXVhZGRpYi4uLi4uLi4uSndCIE1hYXJnLi4uLi4uLi4uLi4uRyBBbmF0b2wuLi4uLi4uLi4uLkEgTGFyaW5hLi4uLi4uLi4uLi5GCk1lc2lyaWkuLi4uLi4uLmp3QiBNYWdpcnVzLi4uLi4uLi4uLkEgVmFyZGlvbi4uLi4uLi4uLi5CIEdhbGJyYWl0aC4uLi4uLi4uQQpTYXJpa3VuLi4uLi4uLi5qLkMgS2FzaW1pci4uLi4uLi4uaS5HIFBhdHJ5bi4uLi4uLi4uLmkuRCBKb3NlcGguLi4uLi4uLi4uLkcKU3Ryb2hhbG0uLi4uLi4uaXdHIFphbmFjLi4uLi4uLi4uLkouRyBCZXJlbi4uLi4uLi4uLi4uLkcgQ2luZGVyZWxsYS4uLi4uLi5GClN0cm9oYWxtaW5lLi4uLi4uQiBBbHNoYWphLi4uLi4uLi5qLkUgUmFzcGVsLi4uLi4uLi4uSS5GIEdhbmR1ci4uLi4uLi4uLmouQQpNZW5zbWFuLi4uLi4uLi5pLkUgWm9vay4uLi4uLi4uLi4uSi5HIEZvb2Jhci4uLi4uLi4uLi4uRyBGZXVlcndlaHIuLi4uLi4uLkEKV3VlaGxlci4uLi4uLi4uLi5CIEdvbGFzLi4uLi4uLi4uLi4uRiBHZWlzdC4uLi4uLi4uLi4uLkEgRG90ei4uLi4uLi4uLi4uLi5HCkthbXVpLi4uLi4uLi4uLkkuRCBNeXRocmFuLi4uLi4uLi4uLkEgQW1hcnlsbGlzLi4uLi4uaS5HIEFzdWthLi4uLi4uLi4uLi53QgpNaWthZ2UuLi4uLi4uLi4uLkEgR29kb3QuLi4uLi4uLi4uLi5FIEhvdXNlaG9sZGVyLi4uLmouQSBNYXRpcy4uLi4uLi4uLi5qd0MKWmVwaHlyLi4uLi4uLi4uLi5CIFNraXBwZXIuLi4uLi4uLmouQgoKSGFlaD8KCkxaCgoodWVicmlnZW5zIHdhcmVuIF9hbGxlXyB1bnRlcnN0cmljaGVuIHJvdCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGt3ZXIgZXJ3YXJ0ZXRlIChBcmssICA5LiBKYW4gMjAwMSwgMjI6NDY6NTYpOgp+IyEgcm49QW5hdG9sIHJ0PTk3OTA3Njc0OCByZz1zY2htYXJybgp+IyEgdGlkPTk3OTA3NjQ0NwpLZWluZSBQcm9ibGVtZSwgZGllIHNpbmQgZGEgamEgbmljaHQgYWxzIHNvbGNoZSBtYXJraWVydCA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBrd2VyIGVyd2FydGV0ZSAoQW1hcnlsbGlzLCAgOS4gSmFuIDIwMDEsIDIyOjQ3OjA2KToKfiMhIHJuPUFuYXRvbCBydD05NzkwNzY3NDggcmc9c2NobWFycm4KfiMhIHRpZD05NzkwNzY0NDcKNDUgU2VrdW5kZW4gZGFuYWNoIGdlYW50d29ydGV0LiBOaWNodCBzY2hsZWNodCwgQW5hdG9sLgpPZGVyIGhhc3RlIGRhcyBudXIgc28gc2NobmVsbCBnZW1hY2h0LCBiZXZvciBBcmsgc2VpbmVuIEFydGlrZWwgd2llZGVyCmxvZXNjaHQ/IDopCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogT2ZmZW5lciBCcmllZiBhbiBQYXJhY2Vsc3VzIChBbmF0b2wsICA5LiBKYW4gMjAwMSwgMjI6NTg6MzApOgp+IyEgcm49QXJrIHJ0PTk3OTA3NzQ3MiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk3ODk1NzQxNApEYW5uIGtlbm50IG1hbiBlcyBqYSBub2NoIG5pY2h0IHNvb28gbGFuZ2UuLi4KCkRPQ0ggZWluIEtvbW1lbnRhciEgOykKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogT2ZmZW5lciBCcmllZiBhbiBQYXJhY2Vsc3VzIChBbWFyeWxsaXMsICA5LiBKYW4gMjAwMSwgMjI6NTk6MzIpOgp+IyEgcm49QW5hdG9sIHJ0PTk3OTA3NzUxMCByZz1zY2htYXJybgp+IyEgdGlkPTk3ODk1NzQxNAoyMiBTZWt1bmRlbi4gRHUgdmVyYmVzc2Vyc3QgRGljaC4KCkFtYSosIGF1Y2ggZWluIEtvbW1lbnRhciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IE9mZmVuZXIgQnJpZWYgYW4gUGFyYWNlbHN1cyAoR3JpbW1ib3JuLCAgOS4gSmFuIDIwMDEsIDIzOjEyOjQ2KToKfiMhIG9uPUdsb2luc29uIG90PTk3OTA3NzU0MCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49QXJrIHJ0PTk3OTA3NzQ3MiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk3ODk1NzQxNApXb3p1IGtlaW4gS29tbWVudGFyPyBEYXNzIER1IG1hbCAxNiB3YXJzdCBvZGVyIERTQSAoISkgZ2VzcGllbHQgaGFzdD8gQml0dGUKZXJsYWV1dGVybiwgZGFtaXQgd2lyIGVpbmVuIFRocmVhZCBkcmF1cyBtYWNoZW4ga29lbm5lbiA6KQoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE9mZmVuZXIgQnJpZWYgYW4gUGFyYWNlbHN1cyAoR3JpbW1ib3JuLCAgOS4gSmFuIDIwMDEsIDIzOjEyOjQ4KToKfiMhIG9uPVNvbG15ciBvdD05NzkwNzc1NzAgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUdsb2luc29uIHJ0PTk3OTA3NzU0MCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk3ODk1NzQxNApNYWNodCBkb2NoIDIgVGhyZWFkcyBkcmF1cywgZGFubiBpc3QncyBub2NoIGx1c3RpZ2VyIDs9KSkpCgpTb2xteXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBPZmZlbmVyIEJyaWVmIGFuIFBhcmFjZWxzdXMgKEdyaW1tYm9ybiwgIDkuIEphbiAyMDAxLCAyMzoxMjo1MCk6Cn4jISBvbj1LYXJpcyBvdD05NzkwNzc1NzQgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUdsb2luc29uIHJ0PTk3OTA3NzU0MCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk3ODk1NzQxNApCaXR0ZSBrZWluIE5laWQgamV0enQuIEFiZXIuLi4KQ2loIHdhciBzY2hvbiBtYWwgdmlpaWllbCBqdWVuZ2VyLgoKR2VuZXJhZWxjaGVuIEthcmlzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE9mZmVuZXIgQnJpZWYgYW4gUGFyYWNlbHN1cyAoR3JpbW1ib3JuLCAgOS4gSmFuIDIwMDEsIDIzOjEzOjAwKToKfiMhIG9uPUFyayBvdD05NzkwNzc2NjUgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUdsb2luc29uIHJ0PTk3OTA3NzU0MCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk3ODk1NzQxNApCZWlkZXMuIFVuZCBhdWNoIG5pY2h0IGRhenUsIHdpZSBhbHQgaWNoIGhldXRlIGJpbi4gU293aWUgZGF6dSwgZGFzcyBpY2ggbWljaAp6dSBlaW5lbSBLb21tZW50YXIgaGVyYWJsYXNzZS4gQXVjaCBkYXp1LCBkYXNzIGljaCBpbiBkaWVzZW0gTXVkIG1pdApGb2VybWNoZW5yYWV1YmVybiB1bmQgU2NoYXVmZWxtb2VyZGVybiBzcGllbGUuIFVuZCB6dSBkaWVzZW0gQXJ0aWtlbApuYXR1ZXJsaWNoIHVuZCBhbGxlbiBmb2xnZW5kZW4uCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IE9mZmVuZXIgQnJpZWYgYW4gUGFyYWNlbHN1cyAoR3JpbW1ib3JuLCAgOS4gSmFuIDIwMDEsIDIzOjEzOjA4KToKfiMhIG9uPUthcmlzIG90PTk3OTA3Nzc0NSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49QXJrIHJ0PTk3OTA3NzY2NSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk3ODk1NzQxNApKYWphLi4gZXMgZ2lidCBzb2dhciBNaXRzcGllbGVyLCBkaWUgZGVuIEZvZXJtY2hlbnJhZXViZXJuIGRpZSBGb2VybWNoZW4Kd2Vnc3BlcnJlbi4uLiBBYmVyIGRhcyBtaXQgZGVuIFNjaGF1ZmVsbi4uIHdpZSBnaW5nIGRhcyBnbGVpY2ggd2llZGVyPwoKR2VuZXJhZWxjaGVuIEthcmlzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IE9mZmVuZXIgQnJpZWYgYW4gUGFyYWNlbHN1cyAoR3JpbW1ib3JuLCAgOS4gSmFuIDIwMDEsIDIzOjEzOjE4KToKfiMhIG9uPUFtYXJ5bGxpcyBvdD05NzkwNzc4NDMgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUthcmlzIHJ0PTk3OTA3Nzc0NSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk3ODk1NzQxNAp6dWVja2Ugc2NoYXVmZWwlO2hhdWUgKiBzY2hhdWZlbCB1ZWJlciBLb3BwLgoKQW1hLgoKKiA9IGhpZXIgTWFnXkheSF5IU3BpZWxlciBJaHJlcyBWZXJ0cmF1ZW5zIGVpbmdlYmVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogT2ZmZW5lciBCcmllZiBhbiBQYXJhY2Vsc3VzIChHcmltbWJvcm4sICA5LiBKYW4gMjAwMSwgMjM6MTY6MjMpOgp+IyEgb249S2FyaXMgb3Q9OTc5MDc3ODkxIG9nPWVudHdpY2tsdW5nCn4jISBybj1BbWFyeWxsaXMgcnQ9OTc5MDc3ODQzIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTc4OTU3NDE0CkRhbmtlLgoKR2VuZXJhZWxjaGVuIEthcmlzLiBVZWJlcmxlZ3Qgc2ljaCwgb2IgZXIgbnUgQW1hKiBvZGVyIERpZWQqIG5laG1lbiBzb2xsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IE9mZmVuZXIgQnJpZWYgYW4gUGFyYWNlbHN1cyAoR3JpbW1ib3JuLCAgOS4gSmFuIDIwMDEsIDIzOjE2OjM3KToKfiMhIG9uPUFyayBvdD05NzkwNzc5MDkgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUthcmlzIHJ0PTk3OTA3Nzc0NSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk3ODk1NzQxNApOdW4sIG1pdCBkZW4gU2NoYXVmZWxuIGthbm4gbWFuIGRlbSBhbmRlcmVuIGhlZnRpZyBlaW5zIHVlYmVyIGRlbiBLb3BmIHppZWhlbi4KV2Vpc3MgaWNoIGF1cyBtZWluZXIgbmljaHRzenVyc2FjaGV0dWVuZGVuIEtpbmRoZWl0LiBUYXQgd2VoLiBTZWhyLiBPYndvaGwgZGVyClZlcmx1c3QgZGVyIEZvZXJtY2hlbiBhdWNoIG5lcnZ0ZS4gQWJlciBkYW5uIHNhaCBpY2ggTGljaHQgYW0gRW5kZSBkZXMKU2FuZGthc3RlbnM6IGljaCBiZWthbSBlaW4gbmV1ZXMgU3BpZWx6ZXVnLCBlaW5lIFdhc3NlcnNwcml0enBpc3RvbGUuIERhcwplcmlubmVydCBtaWNoIGFuIGRpZSBaZWl0LCBhbiBkZXIgaWNoIC4uLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBPZmZlbmVyIEJyaWVmIGFuIFBhcmFjZWxzdXMgKEdyaW1tYm9ybiwgIDkuIEphbiAyMDAxLCAyMzoxNjo0Nyk6Cn4jISBvbj1LYXJpcyBvdD05NzkwNzc5NzUgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUFyayBydD05NzkwNzc5MDkgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05Nzg5NTc0MTQKTmVpaWlpaWlpbiEhISEhCkpldHp0IG5pY2ggZWluZmFjaCBhdWZob2VyZW4gbWl0IGVyemFlaGxlbi4KSW1tZXIgZGFubiwgd2VubnMgc3Bhbm5lbmQgd2lyZC4gTWVubm8gOigKCkdlbmVyYWVsY2hlbiBLYXJpcywgYXVmIEZvcnRzZXR6dW5nIGhvZmZlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogT2ZmZW5lciBCcmllZiBhbiBQYXJhY2Vsc3VzIChHcmltbWJvcm4sICA5LiBKYW4gMjAwMSwgMjM6MTY6NTUpOgp+IyEgb249QXJrIG90PTk3OTA3ODAyNyBvZz1lbnR3aWNrbHVuZwp+IyEgcm49S2FyaXMgcnQ9OTc5MDc3OTc1IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTc4OTU3NDE0CldpcmQgemVuc2llcnQsIHdlaWwgZGFyaW4gbmFzc2VyIFNhbmQgZWluZSBSb2xsZSBzcGllbHQuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IE9mZmVuZXIgQnJpZWYgYW4gUGFyYWNlbHN1cyAoR3JpbW1ib3JuLCAgOS4gSmFuIDIwMDEsIDIzOjE2OjU5KToKfiMhIG9uPUFuYXRvbCBvdD05NzkwNzgwNTEgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUFyayBydD05NzkwNzgwMjcgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05Nzg5NTc0MTQKTmFzcz8gR2VsYiB1bmQgbmFzcz8KCkJhZWguCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBPZmZlbmVyIEJyaWVmIGFuIFBhcmFjZWxzdXMgKEdyaW1tYm9ybiwgIDkuIEphbiAyMDAxLCAyMzoxNzowMyk6Cn4jISBvbj1NdXBmZWwgb3Q9OTc5MDc4MTQzIG9nPWVudHdpY2tsdW5nCn4jISBybj1BbWFyeWxsaXMgcnQ9OTc5MDc3ODQzIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTc4OTU3NDE0CndhciBkYXMgbmljaHQgInNjaGlwcGUgc2NobmVlIiA/IDspCgpzb3JyeSBjb3VsZG4ndCByZXNpc3QgLi4uCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IE9mZmVuZXIgQnJpZWYgYW4gUGFyYWNlbHN1cyAoR3JpbW1ib3JuLCAgOS4gSmFuIDIwMDEsIDIzOjE3OjA5KToKfiMhIG9uPUFtYXJ5bGxpcyBvdD05NzkwNzgzMjQgb2c9ZW50d2lja2x1bmcKfiMhIHJuPU11cGZlbCBydD05NzkwNzgxNDMgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05Nzg5NTc0MTQKKiA9IE11cGZlbCA6KQoKQW1hLCBrb25zZXF1ZW50LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXMgcHJvcG9zIExhbmQgdW50ZXIgZGVuIEluc2Vsbi4uLiAoTmV2b2ssIDEwLiBKYW4gMjAwMSwgMDA6Mjk6MzUpOgpEZWluIEZyZXVuZCBHb2xhcyB0ZWlsdCBEaXIgbWl0OiBoYWJlbiBkaWUgb3JrcyBzaWNoIGpldHp0IGdlZ2VuIG1pY2gKRGVpbiBGcmV1bmQgR29sYXMgdGVpbHQgRGlyIG1pdDogdmVyYnVlbmRldCwgc2Nob24gd2llZGVyIGFsbGUgYXVmIGVpbmVtCkRlaW4gRnJldW5kIEdvbGFzIHRlaWx0IERpciBtaXQ6IGhhdWZlbgoKVW5kLCB3YXMgc2FnZW4gd2lyIGRpZSB3aXIgZGFzIEZvZXJtY2hlbmtsYXVlbiB1bmQgU2FuZHNjaGF1ZmVsa2xvcHBlbgp1bnRlcnN0dWV0emVuPyBDZXRlcnVtIENlbnNlbyBPcmtoYXVzaW5lbSBlc3NlIGRlbGVuZHVtISBJcyBqYSBzY2hsaWVzc2xpY2ggbmUKTGVpdGt1bHR1ciBzb3dhcywgbmU/CgpOZXZvaywgZGllIFN1cGVyc29ha2VyIHNjaG9uIG1hbCBwcm9waHlsYWt0aXNjaCBsYWRlbmQuIE5hc3NlciBTYW5kIGphLCBhYmVyCm51ciBkdXJjaCBXYXNzZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVyc2FlY2hsaWNoa2VpdGVuLiAoV29vZHksIDEwLiBKYW4gMjAwMSwgMDE6MzM6MjMpOgpEZXIgQmF1bSBiZXdlZ3Qgc2ljaC4KUGFkcmVpYyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEZXIgQmF1bSBiZXdlZ3Qgc2ljaC4KQW5hdG9sICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKT2IsIHVuZCB3ZW5uLCBqYSB3YXMsIHVuZCBqZXdlaWxzIHdvbWl0IGRpZSBaZWlsZW4gaW4gdXJzYWVjaGxpY2hlbQpadXNhbW1lbmhhbmcgc3RlaGVuLCBzZWkgZGFoaW5nZXN0ZWxsdC4gQmlzIGRlciBuYWVjaHN0ZSBCYXVtIGZhZWxsdC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVXJzYWVjaGxpY2hrZWl0ZW4uIChXb29keSwgMTAuIEphbiAyMDAxLCAwMTozNDo1OSk6Cn4jISBybj1Xb29keSBydD05NzkwODY4MDMgcmc9c2NobWFycm4KfiMhIHRpZD05NzkwODY4MDMKSWNoIGVyZ2FlbnplOgoKRGVyIEJhdW0gYmV3ZWd0IHNpY2guClBhZHJlaWMgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCls8TWFzdGVSPjo8TWFzdGVSPl0gOC4zNCBjbWRzL3MsIDE3OC42NyBjb21wIGxpbmVzL3MKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBMYWc6IDMuNiUvNjAsIDguMiUvMTUsIDU4LjIlLzEKUGFkcmVpYyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbPE1hc3RlUj46UGFkcmVpY10gd293IDopCgpvLlcuIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNJLUVpbmhlaXRlbiAoR3JpbW1ib3JuLCAxMC4gSmFuIDIwMDEsIDA3OjA4OjI5KToKfiMhIHJuPUdsb2luc29uIHJ0PTk3OTA5OTkwMiByZz13aXR6ZQp+IyEgdGlkPTk3OTA5OTkwMgouLi51bmQgYXVzc2VyZGVtIGlzdCBkaWUgRWluaGVpdCBQYXNjYWwsIG5pY2h0IGJhci4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBVcnNhZWNobGljaGtlaXRlbi4gKFNhdGFuYXMsIDEwLiBKYW4gMjAwMSwgMDk6NDA6MjUpOgp+IyEgcm49V29vZHkgcnQ9OTc5MDg2ODk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc5MDg2ODAzCldhcyB3aWxsIHVucyBkYXMgamV0enQgc2FnZW4/IAogLSBEYXNzIFBhZHJlaWMgaGVydW1sYWdndD8KIC0gRGFzcyBkZXIgQmF1bSBlaW4gTWVnYWxhZyB2ZXJ1cnNhY2h0PwogLSBEYXNzIGRlciBCYXVtIFBhZHJlaWMgYXVzbG9nZ2VuIGthbm4/CiAtIERhc3MgZGFzIGFsbGVzIGluc3plbmllcnQgd3VyZGUsIHVtIGRpZSBydWJyaWsgc2NobWFycm4gdm9sbHp1a3JpZWdlbj8KCkRpZSBBbnR3b3J0IHdlaXNzIG51ciBkZXIgV2luZC4uLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxHIChTYXRhbmFzLCAxMC4gSmFuIDIwMDEsIDA5OjQ2OjUxKToKRkxHPWZhbW91cyBsYXN0IGdyaW5uaW5nCgo+IElzaSBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgoKPiAtW1RvZDpMYXJzXSBFaW4gWm9tYmlldmlydXMgaGF0IGdlcmFkZSBJc2kgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBlaW4gY29uZmlndXJlIHNvIGFsbGVzIHdpc3NlbiB3aWxsLi4uLiAoTW9yZ290aCwgMTAuIEphbiAyMDAxLCAxMDoyODo1NCk6CmxvY2FsZWNvbnYoKSBmb3VuZC4KbG9ja2YoKSBmb3VuZC4KQ2hlY2tpbmcgdG8gc2VlIGlmIHlvdSBoYXZlIGxvbmcgbG9uZy4uLgpDaGVja2luZyB0byBzZWUgaG93IGJpZyB5b3VyIGxvbmcgbG9uZ3MgYXJlLi4uCmxzdGF0KCkgZm91bmQuCm1hZHZpc2UoKSBmb3VuZC4KCk0qIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FzIGVpbiBjb25maWd1cmUgc28gYWxsZXMgd2lzc2VuIHdpbGwuLi4uIChab29rLCAxMC4gSmFuIDIwMDEsIDEyOjQzOjI0KToKfiMhIHJuPU1vcmdvdGggcnQ9OTc5MTE4OTM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc5MTE4OTM0ClVuZD8gSGF0IGRhcyBjb25maWd1cmUgYWJnZWJyb2NoZW4gb2RlciB3ZWl0ZXJnZW1hY2h0PwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFkIGdlc3Rlcm4gYWJlbmQuLi4gKEFuYXRvbCwgMTAuIEphbiAyMDAxLCAxMjo0NjowNCk6CgprbGVpbmJ1Y2hzdGFiZW4uIGljaCBtYWcga2xlaW5idWNoc3RhYmVuLgp3aXJrbGljaC4KCmFuYXRvbCAtIGdhbnoga2xlaW4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWQgZ2VzdGVybiBhYmVuZC4uLiAoWm9vaywgMTAuIEphbiAyMDAxLCAxMjo0Nzo0OSk6Cn4jISBybj1BbmF0b2wgcnQ9OTc5MTI3MTY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc5MTI3MTY0CmVpbiBoZXJybGljaGVyIGFiZW5kLiA6KSBhdWNoIHdlbm4gVE9EIHNpY2ggYmVpIGRpciBub2NoCmZ1ZXIgZGFzIHNjaGxlY2h0ZSBpbWl0YXQgYmVzY2h3ZXJlbiBzb2xsdGUuIGJ0dywgd2FydW0gCmdpYnRzIG51ciB3aWVkZXIga2xlaW5idWNoc3RhYmVuPyBoZWZ0aWcgYW0gY3V0bnBhc3Rlbj8gOykKCnpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGFkIGdlc3Rlcm4gYWJlbmQuLi4gKEFuYXRvbCwgMTAuIEphbiAyMDAxLCAxMjo0OToxMyk6Cn4jISBybj1ab29rIHJ0PTk3OTEyNzI2OSByZz1zY2htYXJybgp+IyEgdGlkPTk3OTEyNzE2NApIYWx0JyBkaWUgS2xhcHBlIDopClRhc3RhdHVyIGdlcmVpbmlndCwgaXN0IG1laHIgb2RlciB3ZW5pZ2VyIGVpbiBMaWViaGFiZXJzdHVlY2sgdW5kIFppZWxrYXVmCmdld2VzZW4uLi4uIHZvciA2LTcgSmFocmVuLiBJY2ggaG9mZmUsIGRhcyBoYWVsdCBlaW4gd2VuaWcgdm9yLCBkYXMgcmVpbmlnZW4uCgpBbmF0b2wgKnppdHRlcioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGFkIGdlc3Rlcm4gYWJlbmQuLi4gKFNhdGFuYXMsIDEwLiBKYW4gMjAwMSwgMTI6NTQ6NTUpOgp+IyEgcm49QW5hdG9sIHJ0PTk3OTEyNzM1MyByZz1zY2htYXJybgp+IyEgdGlkPTk3OTEyNzE2NApTb3dhcyBoYWJlIGljaCBhdWNoIG5vY2gsIHNlaXQgaWNoIENvbGEgZGFydWViZXJnZXNjaHVldHRldCBoYWJlLCBoYWVuZ3QKYWxsZXJkaW5ncyBkYXMgZSBldHdhcyB1bmQgZGllIEFsdC1UYXN0ZSwgdW5kIGRhcyBkIHVuZCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2FzIGVpbiBjb25maWd1cmUgc28gYWxsZXMgd2lzc2VuIHdpbGwuLi4uIChNb3Jnb3RoLCAxMC4gSmFuIDIwMDEsIDEzOjAyOjIzKToKfiMhIHJuPVpvb2sgcnQ9OTc5MTI3MDA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc5MTE4OTM0Ck5hdHVlcmxpY2ggd2VpdGVyZ2VtYWNodC4uLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGFkIGdlc3Rlcm4gYWJlbmQuLi4gKEhpZ2h0LCAxMC4gSmFuIDIwMDEsIDE0OjU0OjMzKToKfiMhIHJuPUFuYXRvbCBydD05NzkxMjczNTMgcmc9c2NobWFycm4KfiMhIHRpZD05NzkxMjcxNjQKdGFzdGVydHVyIGdlcmVpbmlndCA/IAoKY29vbCBkYXMgLi4uIGljaCBoYWV0dGUgZ2VybmUgZWluZSBpbHVzdHJpZXJ0ZSBhbmxlaXR1bmcgd2llIG1hbiBzb3dhcyBtYWNodAppY2ggaGFiIGhpciBnZXN0ZXJuIG4gaGVsYmVuIGxpdGVyIGthZmZlZSByaW5nZWtpcHB0IC5vKAoKaGlnaHQgc2ljaCB6dSBzb2xjaGVuIGdlbGVnZW5oZWl0ZW4gbWVpc3QgbmUgbmV1ZSBrYXVmZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBhZCBnZXN0ZXJuIGFiZW5kLi4uIChXZWF0aGVyd2F4LCAxMC4gSmFuIDIwMDEsIDE0OjU1OjUzKToKfiMhIHJuPUhpZ2h0IHJ0PTk3OTEzNDg3MyByZz1zY2htYXJybgp+IyEgdGlkPTk3OTEyNzE2NApTcHVlbG1hc2NoaW5lLiBEYW1pdCBpc3QgZGFzIFByb2JsZW0gYXVzIGRlciBXZWx0LiA6KQoKV3gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGFkIGdlc3Rlcm4gYWJlbmQuLi4gKEdsb2luc29uLCAxMC4gSmFuIDIwMDEsIDE2OjEyOjQxKToKfiMhIHJuPUhpZ2h0IHJ0PTk3OTEzNDg3MyByZz1zY2htYXJybgp+IyEgdGlkPTk3OTEyNzE2NApFaW5mYWNoOiBBdWZtYWNoZW4sIGFsbGUgVGFzdGVuIGFibWFjaGVuIChtaXQgU2NocmF1YmVuemllaGVyIG8uYWUuKSwKYWJkdXNjaGVuLiBXZW5uIER1IFBlY2ggaGFzdCAoc28gd2llIGljaCB2b3IsIG9laG0sIDYgSmFocmVuIG5hY2ggZWluZXIgc2ljaAphbSBhbmRlcmVuIEVuZGUgZWJlbmZhbGxzIHNpY2ggb2VmZm5lbmRlbiBNaWxjaHR1YmUpLCBzaW5kIERlaW5lIFRhc3RlbiBzZWxic3QKbmljaHQgd2Fzc2VyZGljaHQgZ2VudWcgdW5kIGtyaWVnZW4gZWluZW4gU2NoYWRlbiAoZnJhZ3QgbWljaCBuaWNodCB3aWUgOj4gKQp1bmQgRHUgZGFyZnN0IGVpbiB3ZW5pZyBUYXN0ZW4gYXVzdHVhc2NoZW4sIHVtbG9ldGVuLiBBYmVyIGRhcyBtYWNodCBTcGFzcyB1bmQKZGllIFRhc3RhdHVyIGhhZWx0IHdlaXRlcmUgZnVlbmYgSmFocmUgYmlzIERlaW5lIEZyZXVuZGluIHNpY2ggYmVzY2h3ZXJ0IHVuZApEdSBhbnN0YXR0IGVpbmVzIEFkYXB0ZXJzIGZ1ZXIgMTAgTWFjayBhdWNoIGdsZWljaCBlaW5lIG5ldWUgUFMvMi1UYXN0YXR1cgpmdWVyIDIwIE1hY2sga2F1ZmVuIGthbm5zdC4gSGF0dGUgaWNoIGVyd2FlaG50LCBkYXNzIER1IERlaW5lIFRhc3RlbiBtaXQgdmllbApydWVocmVuIHVuZCBlaW5lbSBndXRlbiBSZWluaWd1bmdzbWl0dGVsIGJlaSBkZXIgR2VsZWdlbmhlaXQgYXVjaCBtYWwKc2F1YmVybWFjaGVuIGthbm5zdCB1bmQgZGllIFRhc3RhdHVyIGF1ZiBqZWRlbiBGYWxsIHNlZWVlZWhyIGd1dCBhYnRyb2NrbmVuCnNvbGx0ZT8KClZpZWwgU3Bhc3MsIEdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGFkIGdlc3Rlcm4gYWJlbmQuLi4gKFJhcmRpYW4sIDEwLiBKYW4gMjAwMSwgMTY6MzU6MDEpOgp+IyEgcm49R2xvaW5zb24gcnQ9OTc5MTM5NTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc5MTI3MTY0Cj5hbSBhbmRlcmVuIEVuZGUgZWJlbmZhbGxzIHNpY2ggb2VmZm5lbmRlbiBNaWxjaHR1YmUpLCBzaW5kIERlaW5lIFRhc3RlbgpzZWxic3QKV2FzLCBiaXR0ZXNjaG9lbiwgaXN0IGRlbm4gZWluZSBNaWxjaHR1YmU/Pz8gOikKClJhcih0bG9zKS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGFkIGdlc3Rlcm4gYWJlbmQuLi4gKEdsb2luc29uLCAxMC4gSmFuIDIwMDEsIDE2OjM1OjQxKToKfiMhIHJuPVJhcmRpYW4gcnQ9OTc5MTQwOTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc5MTI3MTY0CkRhcyBpc3QgZWluIFR1YmUgbWl0IE1pbGNoLgoKR2xvaW4oc29uKSBoaWxmcmVpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGFkIGdlc3Rlcm4gYWJlbmQuLi4gKEh1bW5pLCAxMC4gSmFuIDIwMDEsIDE2OjM2OjI2KToKfiMhIHJuPVJhcmRpYW4gcnQ9OTc5MTQwOTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc5MTI3MTY0Cktlbm5zdCBEdSBkaWUgbmljaHQ/ClNpZWh0IGF1cyB3aWUgbmUgWmFobnBhc3RhdHViZSwga29tbXQgYWJlciBNaWxjaCByYXVzLiBXb2Z1ZXIgZGFzIGd1dCBzZWluCnNvbGwgd2Vpc3MgaWNoIGF1Y2ggbmljaHQuCgpDVSBIdW1uaQpQUzogTm9lLCBpY2gga2VubiBkYXMgYXVjaCBuaWNodC4gSXN0IGFiZXIgZWdhbC4gWnVyIE5vdCBwcm9ncmFtbWllciBpY2gKc293YXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBSEhISEghIChMaW5mbGFzLCAxMC4gSmFuIDIwMDEsIDE3OjM3OjE3KToKW0FsbGdlbWVpbjpSb2hsb2ZmXSBpY2ggaGFiZSBtaWNoIGF1ZiBkZXIgYWthZGVtaWVzdHIuIHZlcmlycnQuIGJpbiBvZXN0bGljaApbQWxsZ2VtZWluOlJvaGxvZmZdIGRlciBzdWZma29lcGUsIHdpZSBrb21tZSBpY2ggbmFjaCBwb3J0IHZhaW4/CgpEdW1taGVpdCwgbGllYmUgRHVtbWhlaXQhCgpMaW5mbGFzLCB3aWxsIGVuZGxpY2ggZWluZW4gaW50ZWxla3R1ZWxsIGViZW5idWVydGlnZW4gR2VzcHJhZWNoc3BhcnRuZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQUhISEhIISAoTGluZmxhcywgMTAuIEphbiAyMDAxLCAxNzozODo1OSk6Cn4jISBybj1MaW5mbGFzIHJ0PTk3OTE0NDYzNyByZz1zY2htYXJybgp+IyEgdGlkPTk3OTE0NDYzNwpEZWluIEZyZXVuZCBHYWxicmFpdGggdGVpbHQgRGlyIG1pdDogd2VpYS4uLmRhIGhhYmJpY2ggd2FzIGFuZ2VyaWNodGV0IG1pdApEZWluIEZyZXVuZCBHYWxicmFpdGggdGVpbHQgRGlyIG1pdDogbWVpbmVtIHByZXNheSA6PSkpCgpmaW5nZXIgZ2FsYnJhaXRoCkdhbGJyYWl0aCBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogV3VlcnpidXJnLCBVZnIuICh1ZWJlciBULU9ubGluZSkuCkVpbmdlbG9nZ3Qgc2VpdDogTWl0LCAxMC4gSmFuIDIwMDEsIDE3OjE4OjA5ClZvbGxlciBOYW1lOiBbU3VmZmtvZXBmZV0gRG9uIFByb21pbGxvIEdhbGJyYWl0aCBzYWd0OiB3YXMgS3J1cHAgaW4gRXNzZW4gc2luZAp3aXIgaW0gVHJpbmtlbgoKV2FoYWhhaGFoYWhhaGFoYWhhaGEhCgpMaW5mbGFzLCB3aWxsIGRhenUgbmljaHRzIG1laHIgc2FnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQSyBvZGVyIG5pY2h0IFBLIGRhcyBpc3QgaGllciBkaWUgRnJhZ2UgKFJhaWRyaSwgMTAuIEphbiAyMDAxLCAxNzo0ODowMyk6CltUb2Q6TGFyc10gRWluIEtvYm9sZCBoYXQgZ2VyYWRlIE11cmdlbG1hbm4gdW1nZWJyYWNodC4KW1RvZDpFaW4gS29ib2xkXSBIaSBoaSBlcndpc2NodC4uLgpbQmVpbGVpZDpMaW5mbGFzXSBIaSBoaSBlcndpc2NodApHYWxicmFpdGggICAgSSBTIFQgICAgIEogRSBUIFogVCAgICAgTiBJIEMgSCBUICAgIE0gRSBIIFIgICAgREEgISEhCgotUmFpZHJpIC4gbyAwIChPYiBtYW4gZGFzIGFscyBQSyBhdXNsZWdlbiBrYW5uPyAqZyopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFISEhISCEgKERyYWNobm8sIDEwLiBKYW4gMjAwMSwgMTg6NTA6MjMpOgp+IyEgcm49TGluZmxhcyBydD05NzkxNDQ3Mzkgcmc9c2NobWFycm4KfiMhIHRpZD05NzkxNDQ2MzcKCkh1bW9yIGlzdCB6d2FyLCB3ZW5uIG1hbiB0cm90emRlbSBsYWNodCwgdHJvdHpkZW0gaGF0IGVzIHdvaGwgc2Nob24gZGllIAptZWlzdGVuIHdhZWhyZW5kIGRlciBaZWl0LCBhbHMgc2llIG5vY2gga2xlaW4sIHVuYmVkZXV0ZW5kLCB1bmdlbGllYnQgdW5kCmFobnVuZ3Nsb3Mgd2FyZW4sIGdldHJvZmZlbiwgdW5kIHNpZSBzaW5kIGF1ZiBkaWUgZGl2ZXJzZW4gcHJlc2F5cyB1bmQgdGl0ZWwKcmVpbmdlZmFsbGVuLiBpbSBnZXNwcmFlY2ggbWl0IGFuZGVyZW4gc3BpZWxlcm4gdW5kIHNwaWVsZXJpbm5lbiBrYW5uIG1hbgpkYW5uIHNlaGVuLCBkYXMgZXMgZWlnZW50bGljaCBhbGxlbiBpcmdlbmR3YW5uIG1hbCBzbyBnaW5nLiAKYWxsZXJkaW5ncyBrYW5uIGljaCBtaWNoIG5vY2ggZ3V0IGRyYW4gZXJpbm5lcm4sIGRhbm4gbWFuIHNpY2ggZGFiZWkgemllbWxpY2gKZGFlbWxpY2ggdm9ya29tbXQsIGRlc2hhbGIgd2Vpc3MgaWNoIG5pY2h0LCBvYiBlcyBzZWluIG11c3MsIHNpY2ggZGFydWViZXIgaW4gCmRlciBtcGEgbHVzdGlnIHp1IG1hY2hlbi4KCndhcyBzYWd0IHVucyBkZXIgYmVsaWVidGUgZmluZ2VyLWJlZmVobD8gU3BpZWxlcmxldmVsIDIuCgpEcmFjaG5vIApyZWljaHQgTGluZmxhcyBhbHMgZWJlbmJ1ZXJ0aWdlbiBHZXNwcmFlY2hzcGFydG5lciAvZGV2L3plcm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFISEhISCEgKExpbmZsYXMsIDEwLiBKYW4gMjAwMSwgMTg6NTI6MTMpOgp+IyEgcm49RHJhY2hubyBydD05NzkxNDkwMjMgcmc9c2NobWFycm4KfiMhIHRpZD05NzkxNDQ2MzcKCkxpZWJlciBEcmFjaG5vIQoKU2llaGUgUnVicmlrIChTY2htYXJybikuCgpNYW4ga2FubiBzaWNoIGphIGF1Y2ggYWxsZXMgenUgSGVyemVuIG5laG1lbiB1bmQgZG9ydCBlaW5lIFVudmVyc2NoYWVtdGhlaXQKdW5kIE1hbmdlbCBhbiBGYWlybmVzcyB3aXR0ZXJuLiBXaWUgZ2VzYWd0LCBtYW4gX2thbm5fLgoKTGluZmxhcywgd2lsbCBqb3VybmFsaXN0aXNjaGVuIEFuc3BydWNoIGluIGRlciBtcGEgZHVyY2hzZXR6ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBSEhISEghIChXZWF0aGVyd2F4LCAxMC4gSmFuIDIwMDEsIDE4OjU2OjAzKToKfiMhIHJuPURyYWNobm8gcnQ9OTc5MTQ5MDIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc5MTQ0NjM3CkhpLAoKRHUgaGFzdCBqYSBuaWNodCBnYW56IHVucmVjaHQsIGFiZXIgdmllbGVzLCB3YXMgaGllciBnZXNjaHJpZWJlbiB3aXJkLCBnZWh0CmF1ZiBEdW1taGVpdCB1bmQvb2RlciBVbmVyZmFocmVuaGVpdCB6dXJ1ZWNrLgpVbmQgd2VubiBlcyBkZW5uIG1hbCBzbyBsdXN0aWcgaXN0LCBkYW5uIGxhZGUgaWNoIGFsbGUgaGVyemxpY2ggZWluLCBhdWNoClNjaHdhY2hmdWcgdm9uIG1pciB6dSB2ZXJvZWZmZW50bGljaGVuLCBkZXIgZGFyYXVmIHp1cnVlY2sgZ2VodCwgZGFzcyBpY2ggd2FzCm5vY2ggbmljaHQga2FubnRlLgoKTGllYmVyIGF1ZiBlaW5lbiBndXRlbiBGcmV1bmQgdmVyemljaHRlbiwgYWxzIGF1ZiBlaW5lIEd1dGUgUG9pbnRlLgpPc2NhciBXaWxkZQoKR3J1ZXNzZQpXeAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQUhISEhIISAoRHJhY2hubywgMTAuIEphbiAyMDAxLCAxODo1OTo0MCk6Cn4jISBybj1MaW5mbGFzIHJ0PTk3OTE0OTEzMyByZz1zY2htYXJybgp+IyEgdGlkPTk3OTE0NDYzNwoKaWNoIG1vZWNodGUgaGllciB3ZWRlciBlaW5lbiBmbGFtZS13YXIgbm9jaCBzb25zdHdhcyB2b20gemF1biBicmVjaGVuLCAKbGluZmxhcywgYWJlciBkdSBoYXN0IG5pY2h0IGdhbnogdW5yZWNodCwgZGFzIGljaCBkaXIgZWluZW4gbWFuZ2VsIGFuIGZhaXJuZXNzCmdlcmFkZSBrbGVpbmVyZW4vanVlbmdlcmVuIHNwaWVsZXJuIGdlZ2VudWViZXIgdW50ZXJzdGVsbGUuCgp1bmQgZGFzIGthbm4gZWluIGRlbmthbnJlaXogZnVlciBkaWNoIHNlaW4sIG11c3MgYWJlciBuaWNodC4KYWJlciBkZWZpbml0aXYgbWVpbiBsZXR6dGVyIGtvbW1lbnRhciBkYXp1IGluIGRlciBtcGEuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoWm9vaywgMTEuIEphbiAyMDAxLCAwMTozNTo1Myk6CltBYmVudGV1ZXI6SGVyZXRpa10ga29ua3JldGUgZnJhZ2UgSUk6IHdvIGluIGRlciBnZW5lc2lzaG9laGxlIGZpbmRlIGljaCBkaWUKW0FiZW50ZXVlcjpIZXJldGlrXSBEcmFjaGVuaG9laGxlPwpbVG9kOkxhcnNdIEVpbiBGbHVnZHJhY2hlIGhhdCBnZXJhZGUgSGVyZXRpayB1bWdlYnJhY2h0LgoKWm9vayBmcmFndDogR2VmdW5kZW4/IAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQmllcmNoZW4gdW5kIGdlbG9lc2NodGUgRmlsZXMgKE5ldm9rLCAxMS4gSmFuIDIwMDEsIDE2OjM2OjQzKToKfiMhIHJuPVNpbHZhbmEgcnQ9OTc5MjA4MTAxIHJnPWQucG9sYXIKfiMhIHRpZD05NzkwOTAwMjEKS2xsbGxsbGxsbGVpbmUgU3RlaW5lLCBncm9zc2UgU3RlaW5lLCBydW5kZSBTdGVpbmUsIFNwaXR6ZSBTdGVpbmUhCkdhbnogZnJpc2NoIDopCgoKTmV2b2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuc2ljaHRiYXJlIFN0b2VyZW5mcmllZGUgOikgKE9iaSwgMTEuIEphbiAyMDAxLCAxNjo0NToxNyk6ClNvZXJlbiBNb2Vya2VuIHNhZ3Q6IE51biBkZW5uLCBPQkkuIFdpZSBpY2ggc2VoZSwgYmlzdCBEdSBlcmZhaHJlbiBnZW51ZywgdW0KU29lcmVuIE1vZXJrZW4gc2FndDogdm9uIG1pciBkaWUgZXJzdGUgTGVrdGlvbiB6dSBsZXJuZW4hCj4gU29lcmVuIE1vZXJrZW4gc2NobWVpc3N0IEplbWFuZCBhdXMgZGVtIElnbHUuCgpPQkksIHNjaG11bnplbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBhZCBnZXN0ZXJuIGFiZW5kLi4uIChXaWxsb3csIDExLiBKYW4gMjAwMSwgMTg6MzM6MDcpOgp+IyEgcm49SGlnaHQgcnQ9OTc5MTM0ODczIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc5MTI3MTY0Cm5hLCBnZWh0IGRvY2ggZ2FueiBlaW5mYWNoIC0gc3B1ZWxtYXNjaGluZSBhdWYsIHRhc3RhdHVyIHJlaW4sIHNwdWVsbWFzY2hpbmUKZWluc2NoYWx0ZW4gLSBmZXJ0aWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBhZCBnZXN0ZXJuIGFiZW5kLi4uIChIaWdodCwgMTEuIEphbiAyMDAxLCAxOTozMjoyMyk6Cn4jISBybj1XaWxsb3cgcnQ9OTc5MjM0Mzg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc5MTI3MTY0CmljaCBoYWIgaW1tZXJub2NoIG1laW5lIHp3ZWlnZWwgb2IgZGFzIGtsYXB0IC4uLi4gCgpvYndvaGwgLi4uIGhhbmR5cyBkZXIgZmlucm1hIE4gZGVyIG51bW1lciA2MjEwIGthbm4gbWFuIGJlaSA2MCBncmFkIHdhc2NoZW4Kb2huZSBkYXMgd2FzIHBhc3NpZXJ0CgpoaWdodCB1ZWJlcmxnZWZlbmQgd2llIGVyIGRlbiBlcnN0IGRlciBzcHVlbG1hc2NoaWVuZSB2b2xsIGJla29tbXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGFkIGdlc3Rlcm4gYWJlbmQuLi4gKFNvbG15ciwgMTEuIEphbiAyMDAxLCAyMTo1Mjo1NSk6Cn4jISBybj1IaWdodCBydD05NzkyMzc5NDMgcmc9c2NobWFycm4KfiMhIHRpZD05NzkxMjcxNjQKSXN0IG5pY2h0IERlaW4gRXJuc3QsIGRhc3MgRHUgRGVpbiBIYW5keSBtaXRnZXdhc2NoZW4gaGFzdCxvZGVyPwoKKlBmZmZmZmZmZmZmdCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGFkIGdlc3Rlcm4gYWJlbmQuLi4gKEhpZ2h0LCAxMS4gSmFuIDIwMDEsIDIzOjQxOjQxKToKfiMhIHJuPVNvbG15ciBydD05NzkyNDYzNzUgcmc9c2NobWFycm4KfiMhIHRpZD05NzkxMjcxNjQKbmVpbiBtZWluZSBtb20gLi4uLiBqZWRlcyBwZmVubmluZ3N0dWVjayAvIHRhc2NoZW50dWNoIC8gd2FzIGF1Y2ggaW1tZXIgemllaHQKc2UgYXVzIGRlbiB0YXNjaGVuIGFiYmEgd2VubiBpY2ggbWFsIHZlcmdlc3MgZGFzIGhhbmR5IGF1cyBkZXIgaG9zZSB6dSBuZWhtZW4Kd2Flc2NodCBzaWUgZXMgbWl0IAoKaGlnaHQgbmluIGVpbiBlaW56aWdhcnRpZ2VzIGhhbmR5IGhhYmVuZCBtaXQgbmVtIGtsZWluZW4gcHVua3QgaW0gZGlzcGFseQooZWluemlnZSBlcmlubmVydW5nKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWVoLi4uLiAoR3J1bXBmLCAxMi4gSmFuIDIwMDEsIDAxOjEzOjM0KToKRWluIEZyb3NjaCB0ZWlsdCBEaXIgbWl0OiBBZWggLi4uLiBoaWVyIHNpdHp0IG4gZnJvc2NoIGRlciBzbyBoZWlzdCB3aWUgaWNoIC4uCkVpbiBGcm9zY2ggdGVpbHQgRGlyIG1pdDogd2llIGthbm4gZGFzIHNlaW4gPyAKCktlaW5lIEZyYWdlbiBFdWVyIEVocmVuIQoKR3J1bXBmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBhZCBnZXN0ZXJuIGFiZW5kLi4uIChDYXR3ZWF6bGUsIDEyLiBKYW4gMjAwMSwgMDc6MzE6MjgpOgp+IyEgcm49U29sbXlyIHJ0PTk3OTI0NjM3NSByZz1zY2htYXJybgp+IyEgdGlkPTk3OTEyNzE2NApLYW5uIGRvY2ggamVkZW0gbWFsIHBhc3NpZXJlbi4KCllUQyAqaHVlc3RlbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvZWdlbC4uLiAoWWVuZGksIDEyLiBKYW4gMjAwMSwgMTA6NTE6MzMpOgo+IERlZXBCbHVlIHJ1ZnQ6IEVsc3RlcmNoZW4hISEKPiBEZXIgUGFwYWdlaSBzYWd0OiBJbW1lciBkaWVzZSBFaWxlLgpEZXIgUGFwYWdlaSBzYWd0OiBuYWphIGxhbmdzYW0gd2lyZHMgemVpdAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiAyLiBzZWhlci1zdGF0dXMgKEFuYXRvbCwgMTIuIEphbiAyMDAxLCAxMzoyMToxMCk6Cn4jISBybj1FbGVuZGlsIHJ0PTk3OTI5NTc3MiByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTk3OTI1NjU5NwpFbGVuZGlsLCBkZXIgV2FybWR1c2NoZXIsIGRlci4uLiBpaWloLi4uIEtudXRzY2hyaW5na251dHNjaGVyISA7KQoKQW5hdG9sIGNyIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3dhcyA6KSAoQW1hcnlsbGlzLCAxMi4gSmFuIDIwMDEsIDE2OjA5OjE2KToKVW5nZXNjaG5pdHRlbjoKCltaYXViZXJlcjpBbWFyeWxsaXMgc2NocmVja3QgaG9jaC5dCltBYmVudGV1ZXI6PFF1ZXN0Pl0gUm9obG9mZiBoYXQgZ2VyYWRlIGVpbiBBYmVudGV1ZXIgYmVzdGFuZGVuOiBGaW5kZSBkaWUgRmVlCltBYmVudGV1ZXI6PFF1ZXN0Pl0gQW1hcnlsbGlzIAoKQW1hcnlsbGlzIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYSwgYWxsZXMga2xhciA6KSAoQW5hdG9sLCAxMy4gSmFuIDIwMDEsIDIyOjAxOjE3KToKWmFyZG96ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCltDaGFvczpLcnV1b2xxXSBJY2ggaGFiZSBzb2ViZW4gWmFyZG96IGFscyBFcnptZWlzdGVyIGRlcyBDaGFvcyBhYmdlbG9lc3QuIFVtCltDaGFvczpLcnV1b2xxXSBFdWNoIG5pY2h0IHZvbGxlbmRzIHp1IGJsYW1pZXJlbiwgd2VyZGUgaWNoIGFuIGRlbSBuYWVjaHN0ZW4KW0NoYW9zOktydXVvbHFdIEthbXBmIG5pY2h0IHRlaWxuZWhtZW4gPjopCgoqcHJ1c3QqIENoYW90ZW4uIEtlaW5lIHdlaXRlcmVuIEZyYWdlbi4gOikKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGFzIGtvbW10IHZvbSBzYXVmZW4uLi4gKFRvZSwgMTQuIEphbiAyMDAxLCAwMjo1NToyMSk6Cj4gSW1kYSBzaWVodCBiZXRydW5rZW4gYXVzLgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgSW1kYS4KSW1kYSBydWVscHN0LgpJbWRhIHNhZ3Q6IDxIaWNrPiEKSW1kYSBnZWh0IGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlc2NobWFja3N2ZXJpcnJ1bmc/IChEZWVwYmx1ZSwgMTQuIEphbiAyMDAxLCAxODozMTo1MCk6CkhpcHBlIHNhZ3QgOiAnV28gaXN0IGRhcyBNYWx6YmllciA/JwpIaXBwZSBnZWh0IGF1ZiBkaWUgVG9pbGV0dGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFp3ZXJnZW5hbmdyaWZmIChHcmltbWJvcm4sIDE0LiBKYW4gMjAwMSwgMTk6NDE6MzApOgp+IyEgcm49UGFkcmVpYyBydD05Nzk0OTc2MDQgcmc9ZC5wb2xhcgp+IyEgdGlkPTk3OTQ5NzU2NApLZWluZSBQYW5pay4KU29sYW5nZSBMZXV0ZSB3aWUgTWFjYmV0aCBpaHJlIFNhY2hlbiBkcmFubGFzc2VuIGlzdCBQb2xlbiBub2NoIG5pY2h0CnZlcmxvcmVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW5hdG9sIC0gVXJ0ZWlsZSBqZWRlciBzZWxic3QgKEFuYXRvbCwgMTUuIEphbiAyMDAxLCAxMDo0ODo1Nik6Cn4jISBvbj1BbmF0b2wgb3Q9OTc5NDk1OTEzIG9nPWFsbGdlbWVpbmVzCn4jISBybj1Ub3dlciBydD05Nzk0OTMwOTkgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05Nzk0OTMwOTkKRGEgZGVyIEZhbGwgIlRvd2VyIGdlZ2VuIEFuYXRvbCIgaW0gYWxsZ2VtZWluZW4gb2VmZmVudGxpY2hlbiBJbnRlcmVzc2UKaXN0LCBiaW4gaWNoIHp1ciBHZWdlbmRhcnN0ZWxsdW5nIGdlend1bmdlbiB3b3JkZW4sIHR1dCBtaXIgbGVpZC4gOikKCkVpbmVzIHNjaG9lbmVuIGFiZW5kcyBkYWNodGUgaWNoOiAgIkhleSwgR2Vpc3QsIG1laW4gZ3Jvc3NlciBUYW5qaWFuLCBlcgpoYXQgbm9jaCBTY2h3ZXJ0bWVpc3RlcnNjaHdlcnQhIFdhcnVtIG5pY2h0IGViZW4gZWluZXMgaG9sZW4/Ii4gVW5kIGFsc28KZ2VzY2hhaCBlcywgIGljaCB6b2cgbG9zIHp1bSB0aWVmZW4gU2NoYWNodCB1bmQgYmVnYW5uIGRhcyBncmF1c2FtZSBXZXJrCmRlciBWZXJuaWNodHVuZy4KRG9jaCBkYSEgIEp1c3QgZG9ydCwgIHdvIGljaCBkZW4gZXJzdGVuIEdlZ25lciwgIG5hY2hkZW0gaWNoIGRhbm4gendlY2tzCmdlaXN0aWdlciBTdGFlcmt1bmcgZWluZSBLbmVpcGUgYXVmc3VjaGVuIHdvbGx0ZSwgIHZlcm11dGV0ZSwgIHN0YW5kIGRlcgpHZW5lcmFsIGRlcyBLb3J1LVRzY2hha2FyLVN0cnV2cyBBbG9pcyBLLiBbMV0gaGVydW0uICBJY2ggYmVtdWVodGUgcmFzY2gKbWVpbmUgS2VubnRuaXNzZSB1bmQgZmFuZCBoZXJhdXMsIGRhc3MgZXIgZG9ydCBzY2hvbiBtZWhyZXJlIE1pbnV0ZW4gKCEpCmxhbmcgYWJzb2x1dCB1bnRhZXRpZyBoZXJ1bXN0YW5kLiAiTnVuIGd1dCIsIHNjaG9zc2VuIG1pciBHZWRhbmtlbiBkdXJjaApkZW4gS29wZi4gIndlbm4gZXMgaWhtIFNwYXNzIG1hY2h0Li4uIiAgdW5kIGljaCBsaWVzcyBpZGxlbiBkZW4sICBkZXIgZGEKaWRsZW4gd29sbHRlIHVuZCB6b2cgd2VpdGVyIGluIGRpZSBUaWVmZW4sIHVtIFRvZCB1bmQgVmVyZGVyYmVuIHp1IGRlbmVuCnp1IHRyYWdlbiwgZGllIHNpY2ggZG9ydCB6dSBsZWJlbiBlcmRyZWlzdGV0ZW4uIFVuZCBzaWVoZSwgc2Nob24gZGVyIHZvbgpuaWVtYW5kZW0gd2lya2xpY2ggZ2VmdWVyY2h0ZXRlIEZ1ZXJjaHRlci1MaWNoIHdhcmQgZGEuCkFuIGplbmVyIFN0ZWxsZSBzb2xsdGUgYmVtZXJrdCB3ZXJkZW4sICBkYXNzIGljaCB3ZWlzZSBtZWluZSAgV2VnbWVsZHVuZwpoYWJlIHN0ZWhlbiBsYXNzZW4gLSBqZWRlciBlcmZhaHJlbmUgS3JpZWdlciB3ZWlzcyBqYSwgZGFzcyBtYW4gYmVpbSBCZS0KZnJpZWRlbiBkZXMgU2NoYWNodGVzIG5pY2h0IHp1dmllbCBaZWl0IHZlcmxpZXJlbiBzb2xsdGUuCkRhaGVyIHJlYWdpZXJ0ZSBpY2ggYXVjaCBuaWNodCwgYWxzIEFsb2lzIEsuIG1pY2ggcGxvZXR6bGljaCAnYW5zcHJhY2gnLgpFciB0ZWlsdGUgbWlyICJoaSIgbWl0LiBVbmQgImh1aHU/Ii4gIE5hIG9kZXIgenVtaW5kZXN0IGFlaG5saWNoIGdlaGFsdC0Kdm9sbGUgS29tbWVudGFyZS4gV29sbHRlIGVyIGVpbiBHZXNwcmFlY2ggYW5rbnVlcGZlbj8gIE51biwgIGRhIEFsb2lzIEsuCndvaGwgbGVzZW4ga2FubiwgcmVhZ2llcnRlIGljaCBuaWNodCB3ZWl0ZXIgLSBBbG9pcyBnZWhvZXJ0IG5pY2h0IHp1IGRlbgptaXIgd2ljaHRpZ2VuIExldXRlbiwgd2FzIGFsbGdlbWVpbiBiZWthbm50IGlzdC4gIEFscyBkYW5uIGRhcyBWb3JsZXR6dGUKbWVpbmVyIE9wZmVyIChvZGVyIGRhcyBWb3J2b3JsZXR6dGUsIGdhbnogZ2VuYXUgd2Vpc3MgaWNoIGVzIG5pY2h0IG1laHIpCmRhcyAgWmVpdGxpY2hlIGdlc2VnbmV0IGhhdHRlICB1bmQgenUgdmVycm90dGVuICBiZWdhbm4sICB0ZWlsdGUgbWlyIGVpbgphbmRlcmVyIEdlbmVyYWwgZGVzIHNlbGJlbiBTdHJ1dnMgbWl0LCBkYXNzIHNpZSAtIGFsc28gZXIgdW5kIEFsb2lzIEsuIC0KZ2VwbGFudCBoYXR0ZW4sICBhdWYgZWluZW4gUnV0c2NoIFpXRUkgZGllc2VyIHRvbGxlbiBTY2h3ZXJ0ZXIgenUgaG9sZW4uCk5hY2hkZW0gaWNoIGt1cnogLSBpY2ggd2FyIGphIGluIEVpbGUgLSBzY2hpbGRlcnRlLCB3YXMgaWNoIGdlcmFkZSBzbyBhbQpFcmxlYmVuIHdhciwgbWVpbnRlIG1laW4gR2VzcHJhZWNoc3BhcnRuZXIsIGRhc3MgZXMgbmljaHQgd2VpdGVyIHNjaGxpbW0Kd2FlcmUgdW5kIGVyIHNpY2ggc2VpbiBTTVMgYXVjaCBzcGFldGVyIGhvbGVuIGtvZW5uZS4KSW5kZXMgZXJwcm9idCBBbG9pcyBLLiAgc2VpbiBzdGltbWdld2FsdGlnZXMgT3JnYW4gdW5kIG5pbW10IHZpYSAgInJ1ZmUiCmRhbm4gZG9jaCBLb21tdW5pa2F0aW9uIGF1ZiwgdW0gbWlyIGRhbm4genUgZXJrbGFlcmVuLCB3YXMgbWlyIGRvY2ggZWJlbgpzY2hvbiBrdW5kIGdldGFuIHd1cmRlLiBFciByZWNodGZlcnRpZ3RlIHNlaW4gSWRsZW4gIHp1IG1laW5lciBncm9lc3N0ZW4KVmVyYmx1ZWZmdW5nIGRhbWl0LCBkYXNzICppY2gqIGRvY2ggZGVyamVuaWdlIGdld2VzZW4gc2VpLCBkZXIgZWluZSBXZWctCm1lbGR1bmcgZ2VzZXR6dCBoYWJlLCBuaWNodCBlci4gU3RpbGwgdW5kIHVudGVyIFRyYWVuZW4gZnJhZ3RlIGljaCBtaWNoLAp3YXJ1bSBlciBlaW5lcnNlaXRzIGRpZSBXZWdtZWxkdW5nIGxhcywgYW5kZXJlcnNlaXRzIGFiZXIgLSBuYXR1ZXJsaWNoIC0Ka3JpdGlzaWVydGUsIGRhc3MgaWNoIGF1ZiBpaG4gbmljaHQgcmVhZ2llcnRlLiBVbmQgaWNoIGRhY2h0ZSBpbW1lciwgYmVpCmRlbiBUcnZlcyB3dWVyZGUgZXR3YXMgdWViZXIgIlByaW9yaXRhZXRlbiIgZ2VsZWhydCB3ZXJkZW4uICBUYWV1c2NodW5nPwpXaWUgZGVtIGF1Y2ggc2VpOiBJY2ggdm9sbGVuZGV0ZSBtZWluIFdlcmsgdW5kIG1hY2h0ZSBtaWNoIHZvbiB1bnRlbiBhdWYKZGVuIFdlZyBuYWNoIG9iZW4gLSB3YXMgIGluIGVpbmVtIFNjaGFjaHQgZHVyY2hhdXMgc2lubnZvbGwgaXN0LCAgZ2xhdWJ0Cm1pciEgLSBhbHMgaWNoIHBsb2V0emxpY2ggZWJlbiBqZW5lbiBCcnVkZXIgZmFuZCwgIGRlciB2b3JoaW4gZG9jaCBuaWNodApkYSB3YXIuIFVuZCBBbG9pcyBLLiB3YXIgd2VnLCBuaWNodCBtZWhyIGRhISBLdXJ6ZXJoYW5kIHNjaGlja3RlIGljaCBkZW4KYm9lc2VuIEJydWRlciB6dSBzZWluZXIgSGF1c2hhZWx0ZXJpbiBpbiBkaWUgZXdpZ2VuIEphZ2RncnVlbmRlLCAgdW0gZGVuCmZyZXVuZGxpY2hlbiBHZW5lcmFsIHZvbiBlYmVuIG1pdHp1dGVpbGVuLCAgZGFzcyBkb2NoIHRhdHNhZWNobGljaCBlaW5lcwpkaWVzZXIgU2Nod2VydGVyIHVlYmVyIHNlaSwgZGEgbWlyIGRlciBCcnVkZXIgLSBkZXIgZGVzIFNjaHdlcnRtZWlzdGVycywKaWhyIHdpc3N0IHNjaG9uIC0gIHNvIHNjaG9lbiBpbnMgTWVzc2VyIC4uLiBlaCAuLi4gIHZvciBkaWUgU2FldXJlaGFlbmRlCmdlbGF1ZmVuIGlzdC4gRXIgZnJldXRlIHNpY2guCgpBbG9pcyBLLiBoYXQgbmF0dWVybGljaCBuaWNodHMgenUgbGFjaGVuLCBkZW5uIGVyIGhhdCBqZXR6dCBnYW56IHVtc29uc3QKZ2VpZGVsdC4gQWJlciB3ZW5uIGljaCBnYW56IGVocmxpY2ggYmluOiAgSWRlbG5kIGlzdCBlciBtaXIgYW0gbGllYnN0ZW4uCgpBbmF0b2wgLSBuaWNodCBnYW56IGVybnN0CgpbMV0gTmFtZSB2LiBkLiBSZWQuIGdlYWVuZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFuYXRvbCAtIFVydGVpbGUgamVkZXIgc2VsYnN0IChBbmF0b2wsIDE1LiBKYW4gMjAwMSwgMTA6NDk6MTQpOgp+IyEgcm49QW5hdG9sIHJ0PTk3OTU1MjEzNiByZz1zY2htYXJybgp+IyEgdGlkPTk3OTQ5MzA5OQpTb3JyeSwgYWJlciBkYSBnZWhvZXJ0IGRlciAiQmVpdHJhZyIgZ2xhdWInIGljaCBoaW4gOykKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQW5hdG9sIC0gVXJ0ZWlsZSBqZWRlciBzZWxic3QgKE1vbnRhbnVzLCAxNS4gSmFuIDIwMDEsIDEwOjU2OjQ5KToKfiMhIHJuPUFuYXRvbCBydD05Nzk1NTIxNTQgcmc9c2NobWFycm4KfiMhIHRpZD05Nzk0OTMwOTkKCk1hY2ggZG9jaCBHcmltbWJvcm4gbmljaHQgYXJiZWl0c2xvcywgZGVyIHNjaGxhZWZ0IHNvbnN0IG5vY2ggYS5kLksuIGVpbi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBbmF0b2wgLSBVcnRlaWxlIGplZGVyIHNlbGJzdCAoTWluZ28sIDE1LiBKYW4gMjAwMSwgMTE6MDY6MjQpOgp+IyEgcm49TW9udGFudXMgcnQ9OTc5NTUyNjA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc5NDkzMDk5CkRhcyBoYXQgQW5hdG9sIG1pdCBBYnNpY2h0IGdlbWFjaHQsIHdlaWwgZWluaWdlIGdyaW1tYm9ybi5tcGEgd2VnZW4gZGVzc2VuCmFyYmVpdHNiZWRpbmd0ZW4gRWlnZW50dWVtZXJzY2hhZnRlbiBhbiAibmV1ZW4iIEFydGlrZWwgaWdub3JpZXJlbi4KCk1pbmdvIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQW5hdG9sIC0gVXJ0ZWlsZSBqZWRlciBzZWxic3QgKEdyaW1tYm9ybiwgMTUuIEphbiAyMDAxLCAxMTo0Mzo0NSk6Cn4jISBybj1NaW5nbyBydD05Nzk1NTMxODQgcmc9c2NobWFycm4KfiMhIHRpZD05Nzk0OTMwOTkKVW5kIHZlcmxlZ3QgaGFiIGljaCBkYXMgbmljaHQgd2VpbCBlaWdlbnRsaWNoIGljaCBkYW5uIGF1Y2ggZGVuIEFydGlrZWwgdm9uClRvd2VyIGhhZXR0ZSB2ZXJsZWdlbiBtdWVzc2VuLiBOaWNodCBkYXNzIGljaCBuaWNodCBkZXIgTWVpbnVuZyB3YWVyZSBlcgp3dWVyZGUgaGllciBhdWNoIGhpbnBhc3NlbiwgYWJlciB6dW1pbmRlc3Qga2FubiBtYW4gYXJndW1lbnRpZXJlbiBkYXNzIGRhcwptZWluZSBQcml2YXRtZWludW5nIHNlaS4gRWluZSBSdWJyaWsgImdlamFtbWVyIiBmZWhsdCBhbGxlcmRpbmdzIHdpcmtsaWNoCm5vY2guLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXLi4uIChBbmF0b2wsIDE1LiBKYW4gMjAwMSwgMTM6NTA6MTIpOgpbQWJlbnRldWVyOkNvcm1ha10gV2VubiBpY2ggc3RlcmJlLi4uLi4gYWVyZ2VyZSBpY2ggbWljaCB1ZWJlciBkaWUgZmVobGVuZGUKW0FiZW50ZXVlcjpDb3JtYWtdIFBhcnRpdGlvbgpbVG9kOkxhcnNdIEVpbiBTdGVybmVucmVnZW4gaGF0IGdlcmFkZSBDb3JtYWsgdW1nZWJyYWNodC4KW1RvZDpFaW4gU3Rlcm5lbnJlZ2VuIHNpbmd0IHVudm9yc2ljaHRpZ2UgU2FlbmdlciBpbiBkZW4gVG9kICFdCgpFciBhZXJnZXJ0IHNpY2ggdWViZXIgZGllIGZlaGxlbmRlIFBhcnRpdGlvbi4gCkFuYXRvbCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE9mZmVuZXIgQnJpZWYgYW4gUGFyYWNlbHN1cyAoTWluZ28sIDE1LiBKYW4gMjAwMSwgMTg6MzE6MTMpOgp+IyEgcm49RGVlcGJsdWUgcnQ9OTc5NTYyNzM5IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTc4OTU3NDE0Ck5lZSwgZGFubiB3YWVyIGRlciBUaHJlYWQga2xlaW5lciwgd2VpbCBpbiAic2NobWFycm4iIGRpZSBBcnRpa2VsIHNjaG5lbGxlcgppbnMgT0xEIGdlc2Nob2JlbiB3ZXJkZW4uCgpNaW5nbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IDIuIHNlaGVyLXN0YXR1cyAoQW5hdG9sLCAxNS4gSmFuIDIwMDEsIDE4OjQ3OjIwKToKfiMhIHJuPVFpdGVzcyBydD05Nzk1ODA1MjMgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD05NzkyNTY1OTcKSWNoIHZlcnN1Y2hlIGdlcmFkZSwgbWlyIGVpbmVuIFp3ZXJnIHNjaGxlaWNoZW5kIHZvcnp1c3RlbGxlbi4KCkVpbiBIYXVmZW4gQXVzcnVlc3R1bmcgdmVyc3VjaHQsIGdlcmFldXNjaGxvcyBoZXJlaW56dWt1bGxlcm4uCgpLbGFwcHQgbmljaHQgOikKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IDIuIHNlaGVyLXN0YXR1cyAoUWl0ZXNzLCAxNS4gSmFuIDIwMDEsIDE4OjQ4OjE3KToKfiMhIHJuPUFuYXRvbCBydD05Nzk1ODA4NDAgcmc9c2NobWFycm4KfiMhIHRpZD05NzkyNTY1OTcKKnNjaGVwcGVyKnNjaGVwcGVyKgp3YWVyZSB2aWVsbGVpY2h0IGF1Y2ggbm9jaCB3YXMsIHdhcyBtaXQgZWluenViYXVlbiB3YWVyZS4uLmFsbGVzLCB3YXMgYXVzCm1ldGFsbCBpc3QsIHNjaGVwcGVydCB1bmQgYmVoaW5kZXJ0IGVpbmVuIHNvbWl0IGJlaW0gc2N2aGxlaWNoZW4uLi4KUUkqKnNhbW1lbHQga3VwZmVybXVlbnplbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU293YXMgKExpbmZsYXMsIDE1LiBKYW4gMjAwMSwgMjA6MjY6MjIpOgpEdSBuaW1tc3Qgc2Nob24gYW0gU3BpZWwgdGVpbCEKVmVyd2VuZGUgRGVpbmUgYWx0ZSBzdGVyYmxpY2hlIEh1ZWxsZSAuLi4KQXVmIGVpbmVtIEdlYmlyZ3NwZmFkLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogbm9yZHdlc3RlbiB1bmQgb3N0b2Jlbi4KQm9pbmdzIGtsZWluZXIgZ3J1ZW5lciBTdGVpbmJlaXNzZXIuCkRlciBTdGVpbmJlaXNzZXIgc2FndDogQm9pbmcgaGF0IGRhcyBTcGllbCB2ZXJsYXNzZW4sIGRhbm4gZ2VoIGljaCBhdWNoLgpEZXIgU3RlaW5iZWlzc2VyIGR1ZXN0IGRhdm9uLgoKTGluZmxhcywgd2lsbCBLdWVoZSB1bmQgd3VuZGVydCBzaWNoLCBkYXMgZXIgc29sY2hlbiBFaW5mbHVzcyBhdWYgR29ldHRlciBoYXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXLi4uIChBcmssIDE1LiBKYW4gMjAwMSwgMjA6NDY6MjEpOgp+IyEgcm49QW5hdG9sIHJ0PTk3OTU2MzAxMiByZz1zY2htYXJybgp+IyEgdGlkPTk3OTU2MzAxMgpGZXN0cGxhdHRlIG1hbCB3aWVkZXIgdWViZXJwcnVlZmVuPwoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhpaGkgOikgKEFuYWNyaW9uLCAxNS4gSmFuIDIwMDEsIDIxOjA1OjMxKToKTml4d2VpcyBrb21tdCBhbi4KW01vZXJkZXI6R2Vpc3QgZWluZXIgRmV1ZXJmbGllZ2VdIFNhbmdvCk5peHdlaXMgZnJhZ3Q6IEZleSBuYWNqIHF1ZXN0PwpbTW9lcmRlcjpTYW5nb10gS2xhcm8gOikKTml4d2VpcyBmcmFndDogRmV5IG5hY2ggcXVlc3Q/Ck5peHdlaXMgZ2VodCBuYWNoIFdlc3Rlbi4KUnVicmlrIDQ0OiBzY2htYXJybgpOaXggTmV1ZXMgaW4gZGllc2VyIFJ1YnJpay4KTmV1ZXIgQXJ0aWtlbCBpbiBSdWJyaWsgc2NobWFycm46ClRpdGVsIGlzdDogSGloaSA6KS4KClVuZ2VzY2huaXR0ZW4uCgpGZXkgQW5hY3Jpb24gZGVyIFNjaGVyem1hZ2lzdGVyIC0gc28gc3RlaHQgZXMgaW0gcmF1bSA6KQoKUC5TLiBTb3JyeSBmdWVyIGRlbiB1bmdsdWVja2xpY2hlbiBTY2huaXR0LCBhYmVyIGN1dG5wYXN0ZSBiZWkgd2ludGVsbmV0IGlzdApuaWNodCBzbyBwcmFsbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmFjaGhpbGZlIGdlc3VjaHQgKFRhaW5hLCAxNS4gSmFuIDIwMDEsIDIyOjE4OjM3KToKZnJhZyBhbWFuZGEgbmFjaCBvcmFsdmVya2VocgpBbWFuZGEgc2FndDogSGFlPyBLZWluZSBBaG51bmcuCkFtYW5kYSBzY2h3aW5ndCBpaHJlIEh1ZWZ0ZW4uCmZyYWcgYW1hbmRhIG5hY2ggYW5hbHZlcmtlaHIKQW1hbmRhIHNhZ3Q6IEhhZT8gS2VpbmUgQWhudW5nLgpmcmFnIGFtYW5kYSBuYWNoIHBldHRpbmcKQW1hbmRhIHNhZ3Q6IEhhZT8gS2VpbmUgQWhudW5nLgo+IEFtYW5kYSB3ZWRlbHQgbWl0IGlocmVtIFRhZXNjaGNoZW4uCmZyYWcgYW1hbmRhIG5hY2ggenVoYWVsdGVyCkFtYW5kYSBzYWd0OiBIYWU/IEtlaW5lIEFobnVuZy4KCm5vIGNvbW1lbnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpbGwgYXVjaCBtYWwuLi4gKFNpbHZhbmEsIDE1LiBKYW4gMjAwMSwgMjM6MDI6MTQpOgpaZXBoeXIgaGFlbHQgVGlsbHkgZWluZSBLYXJ0b2ZmZWwgdW50ZXIgZGllIE5hc2UuCltBbGxnZW1laW46S2FydG9mZmVsIG1hY2h0IHNpY2ggdm9tIEFja2VyIHVuZCBrdWxsZXJ0IGdlbiBCZXR0Y2hlbi5dCltBbGxnZW1laW46S2FydG9mZmVsXSBHdXRzIE5hZWNodGxlIHp1c2FtbWVuCgpmcmFnZSB6ZXBoeXIgbmFjaCB6dXNhbW1lbmhhbmcuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJhZmZ6YWhuISAoWm9vaywgMTYuIEphbiAyMDAxLCAwMDo0MDozMSk6CltBbGxnZW1laW46WWFsYWRhbl0gaGF0IHp1ZmFlbGxpZyBqZW1hbmQgYmVpIGRlciBha2FkZW1pZXN0cmFzc2UgbmUga29tcGxldHRlCltBbGxnZW1laW46WWFsYWRhbl0gYXVzcnVlc3R1bmcgbGllZ2VuIHNlaGVuPyA8MDA6MzQ6NTQ+CltBbGxnZW1laW46Wm9va10gTGVpZGVyIG5laW4uIDwwMDozNTowOD4KW0FsbGdlbWVpbjpUcnVnXSBmcmFnIG1hbCBoaXBwZSA8MDA6MzU6MTI+CltUb2Q6TGFyc10gSGlwcGUgaGF0IGdlcmFkZSBNdXJnZWxtYW5uIHVtZ2VicmFjaHQuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IDIuIHNlaGVyLXN0YXR1cyAoQW5hdG9sLCAxNi4gSmFuIDIwMDEsIDAyOjIzOjIxKToKfiMhIHJuPUdub21lIHJ0PTk3OTYwMzI5MiByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTk3OTI1NjU5NwoiZ2VyZWNodCI/IEhhYmUgaWNoIGRhICJnZXJlY2h0IiBnZWxlc2VuPwoKQW5hdG9sIC0gc3RhdW50IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogMi4gc2VoZXItc3RhdHVzIChOZXZvaywgMTYuIEphbiAyMDAxLCAxNToxMzozMSk6Cn4jISBybj1TYXVsIHJ0PTk3OTY0NTgzMSByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTk3OTI1NjU5Nwo+IFBlcnNvZW5saWNoa2VpdGVuIHd1cmRlbiBqZXR6dCB3b2hsIGdlbnVnIGF1c2dldGF1c2NodAoKT2VoIGphPyBXaWUgZGFzIGRlbm4/IFRhdXNjaGUgbWFuaXNjaC1kZXByZXNzaXYgZ2VnZW4gcGhsZWdtYXRpc2NoPyBTbyBpbgpzdWNoZS1iaWV0ZT8gSGFiZSBlaW5lbiBNb29zaGFtbWVyIHVuZCBzdWNoZSBlaW5lbiBMYWdlcmZlbGQgZGFmdWVyPyBVbmQgaWNoCmhhYidzIHdpZWRlciB2ZXJwYXNzdCwgTWlzdCBhYmVyIGF1Y2guLi4KCgpOZXZvaywgZGVyIGRhY2h0ZSwgZGFzcyBNZW5zY2hlbmhhbmRlbCB2ZXJib3RlbiBpc3QuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmFjaGhpbGZlIGdlc3VjaHQgKFFpdGVzcywgMTYuIEphbiAyMDAxLCAxNjo1NDo1MCk6Cn4jISBybj1UYWluYSBydD05Nzk1OTM1MTcgcmc9c2NobWFycm4KfiMhIHRpZD05Nzk1OTM1MTcKamEsIGljaCBoYXR0ZSBlcyBhdWNoIG1hbCB2ZXJzdWNodC4uLgpmKioqIEFtYW5kYQpBbWFuZGEgc2FndDogSGFlPyBXaWUgc29sbCBkZW5uIGRhcyBnZWhlbj8KCmphLCB1bmQgZGFubiBoYWIgaWNoIHZlcnN1Y2h0LCBpaHIgYXVzenVtYWxlbiwgd2FzIHdpciB6d2VpIGRvY2ggZnVlciBzZWhyCnNjaG9lbmUgZGluZ2UgenVzYW1tZW4gbWFjaGVuIGtvZW5udGVuLCBhYmVyIGljaCBoYWJlIGRhcyBnZWZ1ZWhsLCBzaWUgaGF0IG1pcgpuaWNodCBzbyByaWNodGlnIHp1Z2Vob2VydC4uLnp3aXNjaGVuZHJpbiBpc3Qgc2llIGF1Y2ggendlaW1hbCBlaW5mYWNoCmdlZ2FuZ2VuLgpzY2hhZGUsIGVzIGhhZXR0ZSByaWNodGlnIHJvbWFudGlzY2ggd2VyZGVuIGtvZW5uZW4gLSB3aXIgYmVmYW5kZW4gdW5zCm5hZW1saWNoIGdlcmFkZSBhbiBlaW5lbSBrbGVpbmVuIEJhY2ggaW4gZWluZW0gaGVycmxpY2hlbiBncnVlbmVuIFdhbGQuLi4KCm5hamEgLSBlcyBoYXR0ZSBuaWNodCBzb2xsZW4gc2VpbgoKUUkqKiBkaWUgaW1tZXIgbm9jaCBhdWYgZGVyIHN1Y2hlIG5hY2ggZWluZW0gZ2VlaWduZXRlbiBTdGVjaGVyIGlzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBpbiBidWNoIChHcmltbWJvcm4sIDE2LiBKYW4gMjAwMSwgMjI6NDM6MDIpOgp+IyEgb249VGFpbmEgb3Q9OTc5Njc5OTY4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1KaWdnYSBydD05Nzk2NzQyNzggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05Nzk2NzQyNzgKR2Vob2VydCBkYXMgbmljaHQgbmFjaCBzY2htYXJybj8gKmdnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU0NIV1VQUERJV1VQUCEgKEFuYXRvbCwgMTcuIEphbiAyMDAxLCAwMDoxMzozMik6Cn4jISBybj1Nb250YW51cyBydD05Nzk2ODY1NTQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05Nzk2NzQyNzgKClVuZCBtYW4ga2FubiBkYW1pdCBzb2dhciBkYXMgU3ViamVjdCB3ZWNoc2VsbiwgdG9sbCwgZ2VsbD8gOikKCkFiZXIgcHJpbnppcGllbGwgaGF0IE5vbm5lIG5pY2h0IHVucmVjaHQsIGRlbmtlIGljaC4gRWluICJ2ZXJmYXNzZSIgb2RlcgpzbyBpc3QgZGV1dGxpY2ggc2ljaGVyZXIgYWxzICJzY2hyZWliZSIuCgpBbmF0b2wgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU0NIV1VQUERJV1VQUCEgKEFuYWNyaW9uLCAxNy4gSmFuIDIwMDEsIDAwOjE1OjA1KToKfiMhIHJuPUFuYXRvbCBydD05Nzk2ODY4MTIgcmc9c2NobWFycm4KfiMhIHRpZD05Nzk2NzQyNzgKQWxzbyBhYiBuYWNoIAoKQWxzbyBhYiBuYWNoIERpc2t1c3Npb24gb2RlciBFbnR3aWNrbHVuZyBkYW1pdC4KCkdyaW1tYm9ybiB1ZWJlciBuZWhtZW4gc2llIC4uCgpBbmFjKiAtIGZpbmRldCBhdWNoLCBkYXNzIGVyIHp1b2Z0IHplaXR1bmdzYXJ0aWtlbCBhbmZhZW5ndCwgd2VubiBlciBlcyBuaWNodAp3b2xsdGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OTk6IFNDSFdVUFBESVdVUFAhIChBbmF0b2wsIDE3LiBKYW4gMjAwMSwgMDA6MTU6NDcpOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTc5Njg2OTA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc5Njc0Mjc4CkRhcyBzY2hsaW1tZSBpc3Q6IER1IHZlcm9lZmZlbnRsaWNoc3Qgc2llIGRhbm4gYXVjaCBub2NoLiA7KQoKQW5hdG9sIC0gaW4gInNjaG1hcnJuIiBzY2hvbiByaWNodGlnIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDAxOiBTQ0hXVVBQRElXVVBQISAoQW5hY3Jpb24sIDE3LiBKYW4gMjAwMSwgMDA6MTc6MTEpOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTc5Njg2OTk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc5Njc0Mjc4CkVzIGthbm4gbmljaHQgamVkZXIgc28gZ2VoYWx0dm9sbGUgZmxhbWVzIHNjaHJlaWJlbiB3aWUgZHUgYW5hdG9sLgoKYW5hYyogLSB3aWxsIGhpZXIgcmF1cy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwMDI6IFNDSFdVUFBESVdVUFAhIChab29rLCAxNy4gSmFuIDIwMDEsIDAwOjE3OjQyKToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk3OTY4NzAzMSByZz1zY2htYXJybgp+IyEgdGlkPTk3OTY3NDI3OApBbHNvLCB3ZW5uIGlociBzY2hvbiBzaW5uZnJlaSBzY2hyZWlidCwgZGFubiBwYWNrdCBkYXMgaW4gZWluZXIKYW5kZXJlIFJ1YnJpaywgc29uc3QgaGF0IEdkQSBqYSBuaXggenUgdHVuLCBvZGVyPyA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwMDM6IFNDSFdVUFBESVdVUFAhIChBbmF0b2wsIDE3LiBKYW4gMjAwMSwgMDA6MTg6MTgpOgp+IyEgcm49QW5hdG9sIHJ0PTk3OTY4NzA1NSByZz1zY2htYXJybgp+IyEgdGlkPTk3OTY3NDI3OApSZXBsaWVzIGF1ZiBlaW5lbiBlaWdlbmVuIEFydGlrZWwgc2NocmVpYmVuIHVuZCBkZW4gZGFubiBsb2VzY2hlbiBpc3QKYXVjaCBlaW4gYmVsaWVidGVyLi4uIEFORkFFTkdFUkZFSExFUiA7KQoKQW5hdG9sIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDA0OiBTQ0hXVVBQRElXVVBQISAoR3JpbW1ib3JuLCAxNy4gSmFuIDIwMDEsIDA3OjAwOjEyKToKfiMhIHJuPUFuYXRvbCBydD05Nzk2ODcwOTggcmc9c2NobWFycm4KfiMhIHRpZD05Nzk2NzQyNzgKSWNoIGJpbiBzdHJpa3QgZ2VnZW4gZWluIGVyc2V0emVuIHZvbiAic2NocmVpYmUiIGR1cmNoICJ2ZXJmYXNzZSIgb2RlciBzb3dhcy4KRGFzIHd1ZXJkZSBkZW4gQW50ZWlsIHdpcmtsaWNoIGxlc2Vuc3dlcnRlciBBcnRpa2VsIHNpZ25pZmlrYW50IHNlbmtlbi4gVW5kCndlbm4gc2ljaCBqZW1hbmQsIG1vZWdsaWNoc3Qgbm9jaCBkdXJjaCAiaW50aW1lcmUgU2FjaGVuIiwgYmxhbWllcmVuIHdpbGwgaGFiZQppY2ggbmljaHRzIGRhZ2VnZW4uIFNvbGFuZ2UgZXMgdW50ZXJoYWx0c2FtIGlzdC4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRHJha29uaWVyZmVzdHVuZyAoTGlhcmEsIDE3LiBKYW4gMjAwMSwgMTM6Mzg6MTkpOgp+IyEgcm49TW9yZ290aCBydD05Nzk3MzQyMzIgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9OTc5NzI4ODkyCkRBIEdJUFMgREVUQUlMUz8/Pz8KTWVpbiBXZWx0YmlsZC4gKndpbW1lcioKCkxaLCBzY2hsdWNoenQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1pc3QtQmFsZy4uLiAoRm9vYmFyLCAxNy4gSmFuIDIwMDEsIDE5OjM5OjEwKToKRGFzIER1bmtlbHp3ZXJnZW5raW5kIHN0ZWNrdCBlaW5lbiBMb2xsaSBpbiBkZW4gTXVuZC4KIApEYXMgRHVua2VsendlcmdlbmtpbmQgZmFlbmd0IGFuLCBhbiBkZW0gTG9sbGkgenUgbHV0c2NoZW4uCiAKRGFzIER1bmtlbHp3ZXJnZW5raW5kIHBsYWVydDogQnVhZWVlaGhoaGghCiAKRGFzIER1bmtlbHp3ZXJnZW5raW5kIHNjaG1laXNzdCBlaW5lbiBMb2xsaSB3ZWcuCiAKRGFzIER1bmtlbHp3ZXJnZW5raW5kIGZyYWd0OiBIYXN0IER1IGVpbmVuIExvbGxpIGZ1ZXIgbWljaD8gICAgICAgICAgICAgICAgICAgCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldHQuIChWYW5pb24sIDE3LiBKYW4gMjAwMSwgMjE6MTU6MDcpOgpbVG9kOkxhcnNdIEVpbiBDaGl0aW5lbmtyaWVnZXIgaGF0IGdlcmFkZSBTZWxic3Rtb3JkIHVtZ2VicmFjaHQuICAgCgpWKiwgZ2xhdWJ0IGRhcyBtYW5jaGVyIFNlaGVyIHNlaW5lbiBOYW1lbiwgZGVuIGVyIGlyZ2VuZHdhbm4gbWFsIGdld2FlaGx0IGhhdCwKYmVyZXVodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5lZSBpc3Qga2xhci4uLiAoRGFya3dpbmcsIDE3LiBKYW4gMjAwMSwgMjI6NDE6NDUpOgpFaW4gYmxpbmRlciBEcmFjaGUgc2NoYXV0IE1hdGlzIGZyYWdlbmQgYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZWluIFNjaG51Y2tlbC4uLiAoQW5hdG9sLCAxNy4gSmFuIDIwMDEsIDIzOjM2OjU2KToKWmVwaHlyIHppZWh0IGVpbmUgdHJhdW1oYWZ0ZSBXZXNwZW50YWlsbGUgYW4uCkR1IHNwdWVyc3QgZWluIHByaWNrZWxuZGVzIEdlZnVlaGwgYXVmIGRlciBIYXV0LgoKKmh1ZXN0ZWwqCkFuYXRvbCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IDIuIHNlaGVyLXN0YXR1cyAoTmV2b2ssIDE4LiBKYW4gMjAwMSwgMDA6Mjc6NTgpOgp+IyEgcm49S3JlbGxqYSBydD05Nzk3Njk4MDUgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD05NzkyNTY1OTcKT3J3ZWxsIHdhciBkYXMgZG9jaCBtaXQgQW5pbWFsIEZhcm0sIG9kZXI/IE1pdCBkZW4gVGllcmVuLCBkaWUgZXR3YXMgZ2xlaWNoZXIKc2luZCBhbHMgYW5kZXJlPwoKT2luayEKCk5ldm9rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWlzdC1CYWxnLi4uIChZZW5kaSwgMTguIEphbiAyMDAxLCAxMzowMDo1Nyk6Cn4jISBybj1Gb29iYXIgcnQ9OTc5NzU2NzUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc5NzU2NzUwClNjaHJlaWJ0IHNpY2ggInBsYWVycmVuIiBuaWNodCBtaXQgRG9wcGVsLVIgPwoKWWVuZGkgRHVkZW4sCiAgICAgICAgICAgICB6dSBmYXVsLCB1bSBEdW5rZWx6d2VyZ2Vua2luZGVyIHp1IHN1Y2hlbiB1bmQgZGFubgogICAgICAgICAgICAgZWluZW4gdHlwbyBhYnp1c2V0emVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkltbWVyIGRpZXNlIEVpbGUuLi4gKEZvb2JhciwgMTguIEphbiAyMDAxLCAxNTozMToxMyk6Ckdvcm9nICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkR1IHRlaWxzdCBHb3JvZyBtaXQ6IE1vaW4uCkdvcm9nIHRlaWx0IERpciBtaXQ6IGJpbiBzY2hvbiB3aWVkZXIgd2VnCkdvcm9nICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhISAgICAgICAgICAgICAgICAgICAgIAoKQWxsZXMgaW5uZXJoYWxiIHZvbiAzIFNla3VuZGVuLi4uCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJ1bW1zIChMaW5mbGFzLCAxOC4gSmFuIDIwMDEsIDE2OjMyOjM3KToKW1RvZDpMYXJzXSBEaWUgZmFsc2NoZSBXYWhsIGhhdCBnZXJhZGUgQmVyc3VsZiB1bWdlYnJhY2h0LgoKQ0RVPwoKTGluZmxhcyBwZmVpZnQgYXVmIHBvbGl0aWNhbCBjb3JyZWN0bmVzcyB1bmQgd2FlaGx0IGxpZWJlciBLdWVoZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXaWxsIGF1Y2ggbWFsLi4uIChLYXJ0b2ZmZWwsIDE4LiBKYW4gMjAwMSwgMjE6NDc6MTApOgp+IyEgcm49U2lsdmFuYSBydD05Nzk1OTYxMzQgcmc9c2NobWFycm4KfiMhIHRpZD05Nzk1OTYxMzQKCkM0LCB3YXMgdHVzdCBEdSBtaXQgbWlyPz8/PwoKJ1RvZmZlbC13aWxsIG5pY2ggdW50ZXIgYW5kZXJlciBMZXV0cyBSaWVjaGtvbGJlbiBnZWhhbHRlbiB3ZXJkZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVpbiB6d2VyZz8hPyE/IChOb25uZSwgMTguIEphbiAyMDAxLCAyMjo0ODozNSk6Ck1hdGlzIHNhZ3Q6IHdhc2NoZW4gaXN0IG5lIGd1dGUgaWRlZSA7bykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApEYXJrd2luZyB2ZXJmb2xndCBzZWluZW4gVmVyc3RhbmQgZmx1Y2hlbmQgbmFjaCBTdWVkd2VzdGVuLiAgICAgICAgICAgICAgICAgICAKTHVyY2hpIHNjaGxhZW5nZWx0IHNpY2ggbmFjaCBTdWVkd2VzdGVuLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkxhcmluYSB3YW5kZWx0IHdlaXRlciBuYWNoIFN1ZWR3ZXN0ZW4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApNYXRpcyBzYWd0OiBpY2ggbGV1Z25lIGRhcyBqZSBnZXNhZ3QgenUgaGFiZW4gOm8pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKTWF0aXMgZ2VodCBuYWNoIFN1ZWR3ZXN0ZW4sIHVtIGRvcnQgd2VpdGVyZSBCbHVtZW4genUgZ2llc3Nlbi4gICAgICAgICAgICAgICAgCgpOb25uZSwgZ3JpbnNlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZXNjaGFmZnQuLi4uIChSb2NodXMsIDE4LiBKYW4gMjAwMSwgMjM6MDI6NTQpOgpEZWluIEZyZXVuZCBUaWFtYWsgYWVjaHp0IGluIGRlciBGZXJuZTogIk1QQSBnZXNjaGFmZnQiLgoKc29zby4uLi4KREFDSFRFU1QgZHUuLi4uCgogIFJvY2h1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFByb2pla3QgWlBLIChBbmF0b2wsIDE5LiBKYW4gMjAwMSwgMDE6MDM6MTYpOgp+IyEgcm49Q3JvZnQgcnQ9OTc5ODYwMTY5IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTc5ODYwMTY5CklociBzb2xsdGV0IGRlbiBLYXJsc3J1aGVyIFN0YW1tdGlzY2ggaW4gZWluZSBNaWxjaGJhciB2ZXJsZWdlbi4gCgpBbmF0b2wgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5laW4gKExpbmZsYXMsIDE5LiBKYW4gMjAwMSwgMDE6MDg6MDcpOgpDYXR3ZWF6bGUgaXN0IGRhLiBEdSBmdWVobHN0IERpY2ggc2ljaGVyLgoKSWNoIHdpbGwgbmFjaCBIYXVzZSEKCkxpbmZsYXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTYW5kdGlnZXIuLi4gcGZmZmYuLi4uIChBbmF0b2wsIDE5LiBKYW4gMjAwMSwgMTA6NDE6MDUpOgpEdSB0ZWlsc3QgRGFuY2VyIG1pdDogRXMgbGVidCA6KQpEYW5jZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpEYW5uLiBIYWx0LiBOSUNIVC4KQW5hdG9sICpwZmZ0KiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUHJvamVrdCBaUEsgKEZhbnRhZ2hpcm8sIDE5LiBKYW4gMjAwMSwgMTE6NDA6NTMpOgp+IyEgcm49QW5hdG9sIHJ0PTk3OTkwMDY4MiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk3OTg2MDE2OQpBbmF0b2wsIG1laW5zdCBkdSBkdXJjaHNjaG5pdHRsaWNoZXMgQWx0ZXIgZWluZXMgWndlcmdzIG9kZXIgbmljaHQgZG9jaCBlaGVyCmRpZSBkdXJjaHNjaG5pdHRsaWNoZSBHcm9lc3NlIGVpbmVzIFp3ZXJnZXMsIGRpZSBkYW5uIGluIGRpZSBGU0sgZWluZ2VodCA/IAoKRmFudGEqIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUHJvamVrdCBaUEsgKEFuYXRvbCwgMTkuIEphbiAyMDAxLCAxMTo0NDozOCk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk3OTkwMDg1MyByZz1zY2htYXJybgp+IyEgdGlkPTk3OTg2MDE2OQpOYXR1ZXJsaWNoIHNjaG9uIGRhcyBBbHRlci4gRWluIFp3ZXJnIG1pdCB6d2VpIE1ldGVyIEtvZXJwZXJncm9lc3NlLi4uCipTQ0hVRVRURUwqIHJlY2huZSBkb2NoIG1hbCBob2NoLCB3aWUgc2Nod2VyIGRlciBkYW5uIHdhZXJlLi4uIGRvcHBlbHQKc28gaG9jaCAqIGRvcHBlbHQgc28gYnJlaXQgKiBkb3BwZWx0IHNvIGRpY2sgPSA3MCAqIDggPSB2aWVsIHp1dmllbC4KCkFuZGVyZXJzZWl0cy4gRWluIFp3ZXJnIGRpZXNlciBHcm9lc3NlIGhhdCBkYW5uIGVuZGxpY2ggYXVjaCBlaW4gSGlybiwKZGFzIGF1c2dlcHJhZWd0IGdlbnVnIGlzdCwgdW0gcmVsYXRpdiBzY2huZWxsIHVtenVsZXJuZW4uIE1hbiBicmF1Y2h0Cm51ciBldHdhcyBHZWR1bGQsIEhhbW1lciB1bmQgTWVpc3NlbC4KCkFuYXRvbCAtICgnJ1p1bSBad2VyZ2VudW1zY2h1bHVuZ3N6ZW50cnVtPyBOZWFuZGVydGFsLCByZWNodHMuJycpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUHJvamVrdCBaUEsgKEZhbnRhZ2hpcm8sIDE5LiBKYW4gMjAwMSwgMTE6NDc6NDYpOgp+IyEgcm49QW5hdG9sIHJ0PTk3OTkwMTA3OCByZz1zY2htYXJybgp+IyEgdGlkPTk3OTg2MDE2OQpBbmF0b2wgQW5hdG9sLCBkYSBtdXNzIG1lciBzaWNoIGRvY2ggZGFubiBhdWNoIGRpZSBEdXJjaHNjaG5pdHRzZ3JvZXNzZSBlaW5lcwpad2VyZ2VzIGluIGNtIHZvcnN0ZWxsZW4gYWxzbyBzYWdlbiB3aXIgbWFsIDExMCBjbSB1bmQgZGllIHNjaGxpbW1lbiBiZXdlZ3RlbgpCaWxkZXIgaW0gWlBLIHdlcmRlbiBkYW5uIGVyc3QgYWIgMTMwIGNtIGZyZWlnZWdlYmVuIG9kZXIgc28uLi4gYWJlciBtZXIga2FubnMKbmF0dWVybGljaCBhdWNoICprb21wcm9taXNzIGFuKiBtaXQgZGVtIEFsdGVyIG5vY2gga29tYmluaWVyZW4gKmtvbXByb21pc3MKYXVzKiAKV2FlcmUgZGVzIG5pY2ggbm9jaCBuZW4gVm9yc2NobGFnID8gKkcqIAoKRmFudGEqIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogUHJvamVrdCBaUEsgKEFuYXRvbCwgMTkuIEphbiAyMDAxLCAxMTo1MDoxNCk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk3OTkwMTI2NiByZz1zY2htYXJybgp+IyEgdGlkPTk3OTg2MDE2OQpOZWVlZW5lZWVlZWUuIER1IGJpc3QgRGlyIHNpY2hlciwgZGFzcyBEdSBrZWluZW4gUHJvdmlzaW9uc3ZlcnRyYWcgbWl0CmRlbiBLbGVyaWtlcm4gYWJnZXNwcm9jaGVuIGhhc3Q/IERpZSBnYW56ZW4gZ2Vicm9jaGVuZW4gS25vZWNoZWwgdW5kCmF1Zmdlc2NobGFnZW5lbiBIYWVuZGUsIHdlaWwgWndlcmdlK0hpZ2gtSGVlbHMgZWluZmFjaCBuaWNodCBndXRnZWh0Li4uCgpJbnRlcmVzc2FudGVyIGZhZW5kZSBpY2ggZGllIEJlc2NocmFlbmt1bmcgIk1lbiBvbmx5Ii4gSWNoIGJpbiBnZXNwYW5udCwKd2llIGRpZSBLdW5kZW4gREFTIG5hY2h3ZWlzZW4gd29sbGVuLi4uIF06Xj4KCkFuYXRvbCAtIEtlaW4gWndlcmdlbmZlaW5kLCBvaCBuZWluIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2luKi1PcHRpbWlzbXVzLi4uIChTaWx2YW5hLCAxOS4gSmFuIDIwMDEsIDExOjU4OjQ5KToKUGluZyBtZy5tdWQuZGUgIG1pdCAzMiBCeXRlcyBEYXRlbjoKCkFudHdvcnQgdm9uIDE5NC45NS4xNzAuMjA1OiBCeXRlcz0zMiBaZWl0PTE3MG1zIFRUTD0yNDYKWmVpdHVlYmVyc2NocmVpdHVuZyBkZXIgQW5mb3JkZXJ1bmcuClplaXR1ZWJlcnNjaHJlaXR1bmcgZGVyIEFuZm9yZGVydW5nLgpaZWl0dWViZXJzY2hyZWl0dW5nIGRlciBBbmZvcmRlcnVuZy4KClBpbmctU3RhdGlzdGlrIGZ1ZXIgMTk0Ljk1LjE3MC4yMDU6ClBha2V0ZTogR2VzZW5kZXQgPSA0LCBFbXBmYW5nZW4gPSAxLCBWZXJsb3JlbiA9IDMgKDc1JSBWZXJsdXN0KSwKQ2EuIFplaXRhbmdhYmVuIGluIE1pbGxpc2VrLjoKCkljaCB3dXNzdGUsIGRhc3MgQmlsbCBHYXRlcyBrcmFua2hhZnQgb3B0aW1pc3Rpc2NoIGlzdCwgYWJlciBkYXMuLi4gOy0pIwoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogMi4gc2VoZXItc3RhdHVzIChOZXZvaywgMTkuIEphbiAyMDAxLCAxNDoxMTozNik6Cn4jISBybj1Ub3dlciBydD05Nzk4NDM0NDkgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD05NzkyNTY1OTcKV2VyIGlzIGRlbm4gZGllIGFybWVyZSBXdXJzdCwgbGllYmVyIFRvd2VyICh2b24gUGlzYT8pLiBEZXIsIGRlciBpbW1lciBzYWdlbgptdXNzIHdpZSBkb29mIGRlciBhbmRlcmUgaXN0IHVuZCBkYW1pdCBkYW5uIGRvY2ggZGVtIGVpbmVuIG9kZXIgZGVyIGFuZGVyZW4KYXVmIGRlbiBTYWNrIGdlaHQgb2RlciBkZXIgZGVyIGVzIGluIGRlbiBBdWdlbiBkZXMgQW5kZXJlbiBpc3Q/CgpNZWluIFRpcCwgbGllYmVzIFR1ZXJtY2hlbjogRmFzc2FkZSByZW5vdmllcmVuIGxhc3NlbiwgRGVpbiBQdXR6IGJyb2Vja2VsdCB1bmQKbWFjaHQgRGljaCBNaWVzZXBldHJpZy4gRGVzd2VpdGVyZW4gc3RvZXJlbiBkaWUgU2FjaGVuIGRpZSB2b24gRGlyIGFiZmFsbGVuCnVuZ2VtZWluLCBiZWhhbHRzIGJlaSBEaXIKCgpOZXZvaywgZGVyIGZpbmRldCwgZGFzcyBnZW51ZyBGb2VybWNoZW4sIFNjaGF1ZmVsbiB1bmQgU2FuZGthZXN0ZW4gZnVlciBhbGxlCmhpZXIgaW0gTUcgc2luZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogUHJvamVrdCBaUEsgKEJhbWJpLCAxOS4gSmFuIDIwMDEsIDE1OjIxOjQ5KToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTc5OTAxMjY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTc5ODYwMTY5CkljaCBoYWV0dGUgamV0enQgZWluZmFjaCBtYWwgYXVmIEJhcnRsYWVuZ2UgZ2V0aXBwdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwYWV0YXVmc3RlaGVyaW4gKFllbmRpLCAxOS4gSmFuIDIwMDEsIDE2OjQwOjU1KToKRHUgdGVpbHN0IE1pZXplIG1pdDogQWNoLCBkb2NoIGRhPwpNaWV6ZSBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBtaWRkYWNoCj4gemVpdApGcmUsIDE5LiBKYW4gMjAwMSwgMTY6NDA6MjMuCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRpbGx5K1BhcmEsIGVpbiBsdXN0aWdlcyBUZWFtIChLYXJ0aWksIDE5LiBKYW4gMjAwMSwgMjA6Mzk6MDcpOgpEdSB2ZXJsaWVyc3QgZGllIEtvbnplbnRyYXRpb24gdW5kIGRpZSBLYWVsdGUgdHJpZmZ0IERpY2ggc2VsYnN0LgpEZWluZSBQdWRlbG11ZXR6ZSBnaWJ0IGVpbiB3dWV0ZW5kZXMgQmVsbGVuIHZvbiBzaWNoLCBlaW4gRmVobGVuZGUKQXVzZ2VnbGljaGVuaGVpdCBzY2hhdXQgRGljaCB2ZXJhZW5nc3RpZ3QgYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqV0FFTFoqIENoYW9zIGlzdCB0b2xsIDopIChBbmF0b2wsIDIwLiBKYW4gMjAwMSwgMDE6NDQ6MzkpOgpbQ2hhb3M6S3J1dW9scV0gVmFuaXIgaGF0IGltIGJsdXRpZ2VuIEthbXBmIGRhcyBLb2VubmVuIHVudGVyIEJld2VpcyBnZXN0ZWxsdApbQ2hhb3M6S3J1dW9scV0gdW5kIGRhcmYgc2ljaCBudW4gRXJ6bWVpc3RlciBkZXMgQ2hhb3MgbmVubmVuLiBFcnppdHRlcnQgdm9yCltDaGFvczpLcnV1b2xxXSBzZWluZXIgTWFjaHQhCltDaGFvczpTYW5nb10gR3JhdHVsaWVyZSA6KQpbVG9kOkxhcnNdIERpZSBDaGFvc21hZ2llciBoYWJlbiBnZXJhZGUgVmFuaXIgdW1nZWJyYWNodC4KW1RvZDpEaWUgQ2hhb3NtYWdpZXIgc2FnZW46IFdpciB2ZXJ1cnRlaWxlbiBEaWNoIHdlZ2VuIEZlaWdoZWl0IGltIEthbXBmLl0KCkFoYT8gOikKQW5hdG9sLi4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYWVtcGZlci4uLiAoQW1hcnlsbGlzLCAyMS4gSmFuIDIwMDEsIDE4OjAwOjMyKToKSmVsa2EgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgpbVHJ2ZXM6QW5hdG9sIG1lbGRldCBKZWxrYSB6dW0gRGllbnN0Ll0KW1RydmVzOkplbGthXSAqZyoKW1RydmVzOlphbmFjXSBmZWluLiBhYiB6dW0ga2FydG9mZmVsc2NoYWVsZW4KSmVsa2EgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KClVuZ2VzY2huaXR0ZW4uCkFtYSosIHJ1ZnQ6IEJyaWVzZWwsIHVlYmVybmVobWVuIFNpZSBkaWVzZXMgRHJ1ZWNrZWJlcmdlci1QYWNrISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VsYnN0ZWluc2NoYWV0enVuZyAoTGlhZmFyLCAyMS4gSmFuIDIwMDEsIDE4OjMxOjU1KToKPiBzY2hhZXR6IGxpYWZhcgpMaWFmYXIgaXN0IGV0d2EgZ2xlaWNoIHN0YXJrIHdpZSBEdS4KRXVyZSBSdWVzdHVuZ2VuIHNpbmQgZXR3YSBnbGVpY2ggZ3V0LgpFdXJlIFdhZmZlbiBzaW5kIGV0d2EgZ2xlaWNoIGd1dC4KPiBzY2hhZXR6IGxpYWZhcgpEZXIgWmF1YmVyc3BydWNoIGlzdCBtaXNzZ2x1ZWNrdC4KRHUgbGVybnN0IGF1cyBEZWluZW0gRmVobGVyLgo+IHNjaGFldHogbGlhZmFyCkxpYWZhciB3ZWhydCBEZWluZW4gU3BydWNoIGFiLgoKLUxpYWZhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFuIGFsbGUgSnVuZ21hZ2llcmUgdW5kIGRpZSBlcyBnZXJuZSB3ZXJkZW4gbW9lY2h0ZW4hIChBbmF0b2wsIDIxLiBKYW4gMjAwMSwgMTg6NDQ6MTMpOgp+IyEgcm49Wm9vayBydD05ODAwOTkwMTkgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTk4MDA5OTAxOQpXYXMgc2luZCBHZXNzZWxlbnN0dWVja2U/CgpBbmF0b2wgLSByZW5udCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbiBhbGxlIEp1bmdtYWdpZXJlIHVuZCBkaWUgZXMgZ2VybmUgd2VyZGVuIG1vZWNodGVuISAoTWluZ28sIDIxLiBKYW4gMjAwMSwgMTk6MDE6NDcpOgp+IyEgcm49QW5hdG9sIHJ0PTk4MDA5OTA1MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MDA5OTAxOQpIYXQgYmVzdGltbXQgd2FzIG1pdCBHZWlzc2VsbiB6dSB0dW4uCgpNaW5nbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXPyAoVGlhbWFrLCAyMS4gSmFuIDIwMDEsIDIwOjQ0OjQyKToKTWlrYWdlIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCk1pa2FnZSB0ZWlsdCBEaXIgbWl0OiBpY2ggd2lsbCBuaWNodCBnZWZldWRlbHQgd2VyZGVuIQpbVG9kOkxhcnNdIERlciBGbHVjaCBkZXMgUGhhcmFvcyBFc3RoZWtvdGggaGF0IGdlcmFkZSBNaWthZ2UgdW1nZWJyYWNodC4KClRpYW1hayBkZW5rdCAuIG8gTyhkYXMga29tbXQgZGF2b24gO14pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWYgV3Vuc2NoISAoWm9vaywgMjEuIEphbiAyMDAxLCAyMDo0Nzo0NSk6ClRpYW1hayBtdXNzIGFtIEVuZGUgbm9jaCBuZSBQdXR6ZnJhdSBlaW5zdGVsbGVuLgpEdSB6aWVoc3QgZGVuIFRhcm5oZWxtIGFuLgpEdSBzcHJpY2hzdCBkaWUgbWFnaXNjaGVuIFdvcnRlIDogJ0RlbSBIYXVwdCBmdWVndCBzaWNoIGRlciBIZWxtLCBvYgpkZXIgc2ljaCBkZXIgWmF1YmVyIGF1Y2ggemVpZ3QgPyBOYWNodCB1bmQgTmViZWwsIG5pZW1hbmQgZ2xlaWNoICEnCkR1IGJpc3QgamV0enQgZWluZSBXb3Jrcm9vbS1QdXR6ZSEKRWluZSBXb3Jrcm9vbS1QdXR6ZSB3aXNjaHQuIApSaWt1cyBmcmV1dCBzaWNoLgpFaW5lIFdvcmtyb29tLVB1dHplIHBhY2t0IGVpbmVuIEZldWRlbCBhdXMuCkVpbmUgV29ya3Jvb20tUHV0emUgZmV1ZGVsdCBSaWt1cyBHZXNpY2h0LgpSaWt1cyBmZXVkZWx0IGRpZSBQdXR6ZS4KVGlhbWFrIGVuZ2FnaWVydCBkaWUgV29ya3Jvb20tUHV0emUgOi0pCkVpbmUgV29ya3Jvb20tUHV0emUgc3RlY2t0IGVpbmVuIEZldWRlbCB3aWVkZXIgd2VnLgpab29rIGFuIGFsbGUgTWFnaWVyOiBTdHJpaWlpaWlpaWlpaWlpaWlpaWlpa2UhClpvb2sgZmV1ZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCkVsZW5kaWwgdGVpbHQgRGlyIG1pdDogV2FzIGlzdCBkZW5uIGZldWRlbG4gOikgPwpXaWxsIHRlaWx0IERpciBtaXQ6ID8/PwpSaWt1cyBzdGllcnQgRGljaCBhbi4KTGFyaW5hIHRlaWx0IERpciBtaXQ6IGhpIHdhcyBiaXR0ZXNjaG9lbiBpc3QgZmV1ZGVsdCA/CkdydW1wZiBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgpCcm9lc2VsIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KU2Ftb3Mga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpBbWF6b25lIHRlaWx0IERpciBtaXQ6IGR1IGZldWRlbHN0IG1pY2g/CklsZXNzYSB0ZWlsdCBEaXIgbWl0OiAqaHVzdCoKRGVpbmUgVGFzY2hlIHRlaWx0IERpciBtaXQ6IER1IHd1cmRlc3Qgdm9uIFRoYW5pcyBnZWZpbmdlcnQuClRodWZoaXIgdGVpbHQgRGlyIG1pdDogTXVoPwpMYXJpbmEga251ZGRlbHQgRGljaCBsYWVjaGxlbiBkIGF1cyBkZXIgRmVybmUuCkFub3JhbHBoIHRlaWx0IERpciBtaXQ6IGRhbmtlIDopCk1pbmdvIHRlaWx0IERpciBtaXQ6IEZldWRlbG4/IEljaCBpZGxlIHp3YXIsIGFiZXIgZGFzIGhlaXNzdCBuaWNodCwgZGFzcyBpY2gKTWluZ28gdGVpbHQgRGlyIG1pdDogYW5nZXN0YXVidCBiaW4uCkdhbGJyYWl0aCB0ZWlsdCBEaXIgbWl0OiB3YXMgaXN0ICJmZXVkZWxuIj8/PwpNaWthZ2UgdGVpbHQgRGlyIG1pdDogd2FzIGlzdCBmZXVkZWxuPz8gOikKW0FsbGdlbWVpbjpBbmF0b2wgaGFlbW1lcnQgYXVmIFpvb2sgaGVydW0uXQpIaXNBc3VsIHRlaWx0IERpciBtaXQ6IHdhcyBpcyBmZXVkZWxuID8KUEZMVU5aLCBBbmF0b2xzIEthdXRzY2h1a2hhbW1lciBmbGllZ3QgaGVyZWluLCB0YW56dCBhdWYgRGVpbmVtIEtvcGYgZWluZQpSZWloZSBsYXRlaW5hbWVyaWthbmlzY2hlciBUYWVuemUsIHNjaGxpZXNzdCBtaXQgZWluZW0gUGFzbyBEb2JsZSBhYiB1bmQKaHVlcGZ0IHdpZWRlciBkYXZvbi4KU2Ftb3MgbGFlY2hlbHQgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgpGb29iYXIgdGFldHNjaGVsdCBEaXIgYXVzIGRlciBGZXJuZSBkZW4gS29wZi4KWm9vayBhbiBhbGxlIE1hZ2llcjogSWRpb3QhCkJlcmVuIGZldWRlbHQgRGljaCBhdXMgZGVyIEZlcm5lIHp1cnVlY2suClZhcmRpb24gZmV1ZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUgenVydWVjay4KRHUgcnVmc3Q6IEtpbmRlciEKV3lybmV5IHRlaWx0IERpciBtaXQ6ICpmcmFnZW5kZ3VjayoKRHUgcnVmc3Q6IEljaCBmZXVkZWwgaGllciBUaWFtYWtzIFdvcmtyb29tIHVuZCBzb25zdCBuaXghCkxhcmluYSB0ZWlsdCBEaXIgbWl0OiB3YXMgaGFiIGljaCBkZW5uIG51IHNjaG9uIHdpZWRlciBiZXJwYXNzdCA/IT8KQW1hem9uZSB0ZWlsdCBEaXIgbWl0OiBhY2ggZWNob2FsbC4gc29ycnkKRm9vYmFyIHRlaWx0IERpciBtaXQ6IE5pY2h0IHNjaGxlY2h0IDtvKQpTaWx2YW5hIHRlaWx0IERpciBtaXQ6IEh1aD8KVGh1ZmhpciB0ZWlsdCBEaXIgbWl0OiBNdWghCkxhcmluYSBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgpJbGVzc2EgcnVmdDogamEsIHVuZCBpY2ggaGFiIG5lIHN0YXViYWxsZXJnaWUhClNhaGFkb29tIHRlaWx0IERpciBtaXQ6IFdhcyB6dW0gSGVua2VyIHNvbGwgJ2ZldWRlbG4nIHNlaW4/IEljaCBoYWIgendhciBuZW4KU2FoYWRvb20gdGVpbHQgRGlyIG1pdDogQmVrYW5udGVuIG5hbWVucyAnRmV1ZGVsJyBhYmEuLi4gKmcqCkNoYW5nIHRlaWx0IERpciBtaXQ6IHdhcyBpc3QgZGVubiBmZXVkZWxuPwpMaXJhbmEgdGVpbHQgRGlyIG1pdDogPwpbRW5kIG9mIG1lc3NhZ2VdCkdydW1wZiBydWZ0OiBmZXVkZWxuIGlzIG5hc3Mgd2lzY2hlbgoKCgpOYWphLCBkZXIgUmVzdCBpc3QgcmF1c2dlc2Nyb2xsdC4uLiAKClpvb2suCgpQLlMuOiBXZXJzIG5pY2h0IG1pdGJla29tbWVuIGhhdCwgZGFzICJab29rIGZldWRlbHQgRGljaCBhdXMgZGVyCkZlcm5lLiIga2FtIHZvbi4uLiBuYWphLCBpcmdlbmR3ZW0gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXR0ZSBTY2hpY2h0Li4uIChTb2xteXIsIDIyLiBKYW4gMjAwMSwgMDE6Mjg6MTIpOgpTZWhyIGFyYmVpdHN3dWV0aWcsIGRpZSBndXRlIEZyYXU6CgpNaWV6ZSBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogSWhyZW0gQnVlcm9zZXNzZWwgKHVlYmVyIEhhbGxlKS4KUGFzc2l2IHNlaXQ6IDJkIDA0OjQxOjEwCnouWi4gYWJ3ZXNlbmQsIEdydW5kICA6IEB3b3JrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCU0UsIE9oIFdlaCEgKFNvbG15ciwgMjIuIEphbiAyMDAxLCAwMjowOToyNik6Ckt1cnplIFVudGVyaGFsdHVuZyBtaXQgR2FsYnJhaXRoLCAuLi4KCkR1IGdyaW5zdCBHYWxicmFpdGggYXVzIGRlciBGZXJuZSBhbi4KRHUgdGVpbHN0IEdhbGJyYWl0aCBtaXQ6IERlaW5lIEJTRSBVZWJlcnNldHp1bmcuLi47KQpHYWxicmFpdGggdGVpbHQgRGlyIG1pdDogQmVzc2VyIFNjaHdlaW5lZmxlaXNjaCBFc3NlbiA7PSkpIDAyOjA1CkR1IG5pY2tzdCBHYWxicmFpdGggYXVzIGRlciBGZXJuZSB6dS4KR2FsYnJhaXRoIHRlaWx0IERpciBtaXQ6IG9kZXIuLi5CZXNzZXIgU29sbXlyIEVybWV0emVsbiA7PSkpIDAyOjA2CgpIUk1QRiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbSB0YXQgZGFzIHdvaGwgd2VoPyAoU2NobGVpY2hlciwgMjIuIEphbiAyMDAxLCAxNTozMDo1Myk6Ck5va2kgdmVyd2FuZGVsdCBtaXQgZWluZW0gVHJvcGZlbiBXYXNzZXIgc2VpbiBIYXVzLgpEdSBob2Vyc3QgZWluZW4gZW50c2V0emxpY2hlbiBTY2hyZWkgaW0gU3VlZHdlc3Rlbi4gCgpTY2hsZWljaGVyIGhhdCBuaXggZGFtaXQgenUgdHVuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW5nZXNjaG5pdHRlbiAoVGh1ZmhpciwgMjIuIEphbiAyMDAxLCAyMDo0ODoyNik6ClNraXBwZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRHUgZXJzdGFycnN0IHZvciBFaHJmdXJjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRE8gKEdyaW1tYm9ybiwgMjIuIEphbiAyMDAxLCAyMToxNTowOCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTgwMTk0NDY2IG9nPXRyZWZmZW4KfiMhIHJuPU1vcmdvdGggcnQ9OTgwMTkyODU5IHJnPXRyZWZmZW4KfiMhIHRpZD05ODAxOTI4NTkKWnUgOTAlPyBEdSBoYXN0IGlobiBnZWtvZXBmdD8gSXN0IGRhcyBuaWNodCB6aWVtbGljaC4uLiB1bmFwcGV0aXRsaWNoPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqUElORyogKE1vcmdvdGgsIDIzLiBKYW4gMjAwMSwgMTA6MDM6MjUpOgpUaHVmaGlyICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhISAgICAgICAgICAgICAgICAgICAKSGF0ZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhISAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkhhdGUgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhICAgICAgICAgICAgICAgICAgICAgIAooU2lsdmFuYSkgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKW01hZ2llcjpTaWx2YW5hXSByZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkhhdGUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApIYXRlICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhISAgICAgICAgICAgICAgICAgICAgICAKRmFuZmFyZW4gc2NoYWxsZW4gdm9uIGRlciBBcmVuYSBoZXJ1ZWJlci4gS2VzYWhyIGhhdCBhbGxlCkdsYWRpYXRvcmVuIGJlc2llZ3QgdW5kIHRyYWVndCBmb3J0YW4gZGVuIFRpdGVsICdPYmVyZ2xhZGlhdG9yJy4gICAgICAgICAgICAgIApTbGlhICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKU2xpYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEgICAgICAgICAgICAgICAgICAgICAgCkFya2FuYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhISAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApIYXRlICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKSGF0ZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEgICAgICAgICAgICAgICAgICAgICAgClBhcmFjZWxzdXMgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApBcmthbmEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhICAgICAgICAgICAgICAgICAgICAKQXJrYW5hICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkhhdGUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKTSogd2FyIG51ciBmcnVlaHN0dWVja2VuLCBlaHJsaWNoLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZWluIFNlaGVyaGF1cyB1bmQgaWNoLi4uIChSZWZhcmRvbiwgMjMuIEphbiAyMDAxLCAxMDo0NjozOCk6CgpWb2xsZXIgVm9yZnJldWRlIGdyZWlmc3QgRHUgbmFjaCBEZWluZXIgR2llc3NrYW5uZSB1bmQgYmVnaW5uc3QsIERlaW4gbXVlaC0Kc2FtIGVyc3BhcnRlcyBJbnN0YW50aGF1cyB6dSBiZWdpZXNzZW4uIE1vbWVudC4uLiBHaWVzc2thbm5lPyBSZWljaGxpY2ggdmVyLQoKLi4uCgpEYW5uIGVyaGVidCBzaWNoIGRvcnQsIHdvIER1IGRhcyBUcm9ja2VuaGF1cyBhYmdlc3RlbGx0IGhhdHRlc3QsIGVpbmUgZ3Jvc3NlLApzY2hhdW1pZ2UgQmxhc2UhIFNpZSB3aXJkIGdyb2Vzc2VyIHVuZCBncm9lc3NlciwgYmlzIHNpZSBEaWNoIHNjaGxpZXNzbGljaAprbwpzdHJlaWZ0LiBEYWJlaSBwbGF0enQgc2llIG1pdCBlaW5lbSBsZWlzZW4gKlBMT1BQKiAtIHVuZCBlcyBibGVpYnQgZWluIGJlLQp6dWdzZmVydGlnZXMgU2VoZXJoYXVzIHp1cnVlY2shCkR1IHdpcmZzdCBub2NoIGVpbm1hbCBlaW5lbiB2ZXJzdG9obGVuZW4gQmxpY2sgYXVmIGRpZSBHaWVzc2thbm5lLCBtdXNzdCBhYmVyCmZlc3RzdGVsbGVuLCBkYXNzIHNpZSB2ZXJzY2h3dW5kZW4gaXN0IHVuZCBhdWNoIHZlcnNjaHd1bmRlbiBibGVpYnQuCkR1IGJpc3QgbnVuIHRvdGFsIGR1cmNobmFlc3N0IHVuZCBmdWVobHN0IERpY2ggd2llIGVpbiBuYXNzZXIgUHVkZWwuCgpEYSBoYWIgaWNoIHdvaGwgZXR3YXMgdWViZXJ0cmllYmVuIG1pdCBHaWVzc2VuIDspCgpSZWYsIGRlciBNZWlzdGVyZ2FlcnRuZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb2RvbWllPyAoQ29ybWFrLCAyMy4gSmFuIDIwMDEsIDEzOjI0OjI0KToKQW1hbmRhIHNhZ3Q6IEhhbGxvIENvcm1hayEKQW1hbmRhIGdyYWJiZWx0IGFuIERpciBoZXJ1bS4KQW1hbmRhIHNhZ3Q6IFdpZSB3YWVycyBkZW5uIG1pdCB1bnMsIEtsZWluZXI/CkFtYW5kYSBzYWd0OiBIYWxsbyBBcm5pZSEKQW1hbmRhIGdyYWJiZWx0IGFuIEFybmllIGhlcnVtLgpBbWFuZGEgc2FndDogV2llIHdhZXJzIGRlbm4gbWl0IHVucywgS2xlaW5lcj8KICAgLi4uLgp1bnQgYXJuaWUKRWluIGdyb3NzZXIga3JhZWZ0aWdlciwgZ2FueiBvZmZlbnNpY2h0bGljaCByZWlucmFzc2lnZXIsIGRldXRzY2hlcgpTY2hhZWZlcmh1bmQuIFNlaW5lciBrcmFlZnRpZ2VuIFN0YXR1ciB1bmQgc2VpbmVtIGdlcGZsZWd0ZW4gRmVsbCBrYW5uc3QKRHUgZW50bmVobWVuLCBkYXNzIGVzIHNpY2ggaGllcmJlaSB1bSBlaW4gZ2FueiBlZGxlcyBUaWVyIGhhbmRlbHQuIEVyIGhlaXNzdApBcm5pZSB1bmQgZ2Vob2VydCBDb3JtYWsuCkVyIGlzdCBhYnNvbHV0IGZpdC4KClNvLCBzbywgQW1hbmRhIHdpbGwgYWxzbyB3YXMgdm9uIG1laW5lbSBIdW5kLi4uLi4gdHMsIHRzLCB0cyEgOykKCkNvcm1haywgZGVyIGpldHp0IHdlaXNzLCB3YXJ1bSBtYW4gc2ljaCBiZWkgQW1hbmRhIGFuc3RlY2tlbiBrYW5uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3NvLi4uIChHcmltbWJvcm4sIDIzLiBKYW4gMjAwMSwgMTU6NDA6NDgpOgpNZXJsaW4gcnVmdDogRmVsaWEgaXN0IGpldHp0IGVpbmUgU2VoZXJpbiEKRm9vYmFyIHJ1ZnQ6IC1oKwpDYXNleSBydWZ0OiBHUkFBQUFUUwpTcGF3biBydWZ0OiBHUkFUUyAhISEKQWhhYiBydWZ0OiBHcmF0cyEKV3Vyc3RlbCBydWZ0OiBncmF0dWxpZXJlISEhCkFudGlwYXRoeSBydWZ0OiBncmF0cwpDcm9mdCBydWZ0OiBHcmF0cyEKTWlrYWdlIHJ1ZnQ6IFMgVSBQIEkgIQpEdXJhdGggcnVmdDogZ3JhdHMKUmF2ZW50aHJvbmUgcnVmdDogR3JhdHMhCkVsYWluZSBydWZ0OiBHcmF0dWxpZXJlIDstKQpKYW1lc29uIHJ1ZnQ6IGdyYXRzCkNob2ppbiBydWZ0OiBHUkFUUyEKR3JpbnVyIHJ1ZnQ6IEdSQVRTClJpayBydWZ0OiBHcmF0dWxhdGlvbiEKS3Jlb24gcnVmdDogR1JBVFMhCkZlbGlhIHJ1ZnQ6IGRhbmtlClN0dXJta3JhZWhlIHJ1ZnQ6IEdSQUFBQUFBVFMKCmZpbmdlciBmZWxpYQpbLi4uXQpHZXNjaGxlY2h0OiB3ZWlibGljaApbLi4uXQoKS2VpbmUgd2VpdGVyZW4gRnJhZ2VuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU29zby4uLiAoRm9vYmFyLCAyMy4gSmFuIDIwMDEsIDE1OjQxOjQwKToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODAyNjA4NDggcmc9c2NobWFycm4KfiMhIHRpZD05ODAyNjA4NDgKSGFldHRlIG1hbiBhdWNoIHNjaG9uIGRhcmFuIGVya2VubmUga29lbm5lbiwgZGFzcyBzaWUgIlNlaGVyaW4iIHd1cmRlLgoKRm9vYmFyIC0ga3VyeiB1bmQga25hcHAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU29zby4uLiAoR3JpbW1ib3JuLCAyMy4gSmFuIDIwMDEsIDE1OjQ4OjMxKToKfiMhIHJuPUZvb2JhciBydD05ODAyNjA5MDAgcmc9c2NobWFycm4KfiMhIHRpZD05ODAyNjA4NDgKRGFubiBoYWV0dGUgbWFuIGRpZSBBdXNzYWdlIGRlcyBBcnRpa2VscyBuaWNodCBzbyBkZXV0bGljaCB1bmQgcHJhZXppc2UgYXVmCmRlbiBQdW5rdCBicmluZ2VuIGtvZW5uZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRhcyBsZWJlbiAoQmlyZHksIDIzLiBKYW4gMjAwMSwgMTU6NTU6MDIpOgpmcmFnZSBzbW9lcmUgbmFjaCBsZWJlbgpTbW9lcmUgQnJvZWQgc2V1Znp0OiBFcyBpc3QgbnVuIHNjaG9uIGZhc3Qgdm9yYmVpLgpyaWNodGUga2VyYmhvbHogYXVmIHNtb2VyZQpEdSByaWNodGVzdCBEZWluIEtlcmJob2x6IGF1ZiBTbW9lcmUgQnJvZWQsIGVzIHZpYnJpZXJ0IGxlaWNodC4KCndhcyBzb2xsIGljaCBkYSBub2NoIHp1IHNhZ2VuIDspPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGRhcyBsZWJlbiAoU29sbXlyLCAyMy4gSmFuIDIwMDEsIDE1OjU1OjQyKToKfiMhIHJuPUJpcmR5IHJ0PTk4MDI2MTcwMiByZz1zY2htYXJybgp+IyEgdGlkPTk4MDI2MTcwMgondG9ldGUgc21vZXJlJyA/IDspCgpTb2xteXIsIGtsZWluZSBIaWxmZXN0ZWxsdW5nIGdlYmVuZD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFlcmdlciB1bmQgc28gKEJpcmR5LCAyMy4gSmFuIDIwMDEsIDE2OjUwOjIxKToKPiByaWVjaGUKRXMgcmllY2h0IG5hY2ggQWVyZ2VyIDotKQpya2Egc29lcmVuCkR1IHJpY2h0ZXN0IERlaW4gS2VyYmhvbHogYXVmIFNvZXJlbiBNb2Vya2VuLCBlcyB2aWJyaWVydCBsZWljaHQuCgppbm51aXQga2FubiBtYW4gZWluZmFjaCBuaXggdm9ybWFjaGVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWVyZ2VyIHVuZCBzbyAoQW5hdG9sLCAyMy4gSmFuIDIwMDEsIDE2OjUzOjE4KToKfiMhIHJuPUJpcmR5IHJ0PTk4MDI2NTAyMSByZz1zY2htYXJybgp+IyEgdGlkPTk4MDI2NTAyMQpKYSwgQmlyZHkuCkR1IGJpc3QgdG9sbC4KV2lyIGhhYmVuIGVzIGJlZ3JpZmZlbi4KRWhybGljaC4KCiphdWdlbnZlcmRyZWgqCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhZXJnZXIgdW5kIHNvIChCaXJkeSwgMjMuIEphbiAyMDAxLCAxNjo1NTowNik6Cn4jISBybj1BbmF0b2wgcnQ9OTgwMjY1MTk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgwMjY1MDIxCndlbmlnc3RlbnMgZWluZXIsIGRlciBtaWNoIHJlc3Bla3RpZXJ0IDopCmRhbmtlIGFuYXRvbCAhCgoqYXVnZW52ZXJkcmVoKgpCaXJkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVyc3RraWxscyB1bmQgTlBDLUJhbGFuY2UgKEFtYXJ5bGxpcywgMjMuIEphbiAyMDAxLCAxNzoyMzo1Nyk6Cn4jISBybj1SaWt1cyBydD05ODAyNjM3MzYgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTk4MDI2MzczNgoidW50ZXJ3dWVyZmlnIiA/CgpIYWIgaWNoIGRhIGV0d2EgaW0gQXJiZWl0c3ZlcnRyYWcgd2FzIHVlYmVybGVzZW4/ICpzY2hsdWNrKgoKQW1hKiwgc2ljaCBhbSBLb3BwIGtyYXR6ZW5kLi4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGFlcmdlciB1bmQgc28gKE1pbmdvLCAyMy4gSmFuIDIwMDEsIDE3OjMwOjM4KToKfiMhIHJuPUFuYXRvbCBydD05ODAyNjUxOTggcmc9c2NobWFycm4KfiMhIHRpZD05ODAyNjUwMjEKSmEgQW5hdG9sLCB3aXIgYmVsYWVzdGlnZW4gRGljaC4KS29tbXQgbmllIHdpZWRlciB2b3IuCkJpcmR5LCBob2VyIGF1ZiB6dSBzcGllbGVuIHVuZCBTcGFzcyB6dSBoYWJlbi4KCiphdWdlbnJvbGwqCk1pbmdvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTb3NvLi4uIChMaWFyYSwgMjMuIEphbiAyMDAxLCAxOToyMTowMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTgwMjYxMzExIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgwMjYwODQ4Cldlbm4gRHUgZ3V0IHdhZXJlc3QsIGhhZXR0ZXN0IER1IGVzIGdla29ubnQhCgpMWiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6ICNtZy5kZSBJUkMgZ2VodCB3aWVkZXIgKEdyaW1tYm9ybiwgMjMuIEphbiAyMDAxLCAyMDozMDo1MSk6Cn4jISBvbj1Tb2xteXIgb3Q9OTgwMjc4MTAxIG9nPWFsbGdlbWVpbmVzCn4jISBybj1Tb2xteXIgcnQ9OTgwMjc3Nzk4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTgwMDE1NTA1CkFzdWthIG1laW50IGZ1ZXIgJ2dlamFtbWVyJyB3YWVyIGRhIHp1IHdlbmlnIEdlamFtbWVyIGRyaW4sIGFiZXIKR3JpbW1ib3JuIDogSWNoIHdpbGwgbmljaHQgTXVlbGwgc2Vpbi4gRGFyZiBpY2ggYml0dGUgYml0dGUgYml0dGUKbmFjaCAnR2VqYW1tZXInLC4uLm9kZXIgJ3NvbG15ci5nZWphbW1lcicgOz0pCgpTb2xteXIsc2ljaCBuaWNodCBzaWNoZXIgb2IgZXIgZGFzIHBvc3RlbiBzb2xsLCBhYmVyIGluIGRlciBNcGEKaXN0IGVpbmZhY2ggenUgd2VuaWcgbG9zLi4uCiwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6ICNtZy5kZSBJUkMgZ2VodCB3aWVkZXIgKEdyaW1tYm9ybiwgMjMuIEphbiAyMDAxLCAyMDozMjoyMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTgwMjc4MjUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgwMDE1NTA1ClNvLCBkYXMgaXN0IGRvY2ggamV0enQgbmUgZ2VyZWNodGUgVmVydGVpbHVuZyBnZXdlc2VuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6ICNtZy5kZSBJUkMgZ2VodCB3aWVkZXIgKFNvbG15ciwgMjMuIEphbiAyMDAxLCAyMDozMjo1OSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTgwMjc4MzQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgwMDE1NTA1CkJpbiB6dWZyaWVkZW4sIGRhbmtlIDspCgpTb2xteXIsIGdsdWVja2xpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTb3NvLi4uIChNZW5hY2UsIDIzLiBKYW4gMjAwMSwgMjE6MjU6MzcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4MDI2MDg0OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MDI2MDg0OApOYXR1ZXJsaWNoIGlzdCBGZWxpYSB3ZWlibGljaCwgd2llIHNvbGx0ZSBzaWUgc29uc3QgU2VoZXJfaW5fIHdlcmRlbj8KCkFiZXIgYXVmZmFlbGxpZyBpc3QgZXMgc2Nob24sIGRhc3Mgd2VpYmxpY2hlciBDaGFyYWt0ZXJlIG9mZmVuYmFyIG1laHIKWnVzcHJ1Y2ggZXJoYWx0ZW4gO28pCgpNZW5hY2UgKmRlciBuaWNodCBkYSB3YXIgdW5kIHNvbnN0IG1pdGdlZ3JhdHN0IGhhZXR0ZSwgYWJlciBhdWNoIHdlbm4gd2VubgpGZWxpYSBfbnVyXyBTZWhlciBnZXdvcmRlbiB3YWVyZSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU29zby4uLiAoTW9udGFudXMsIDIzLiBKYW4gMjAwMSwgMjE6NTM6NTYpOgp+IyEgcm49TWVuYWNlIHJ0PTk4MDI4MTUzNyByZz1zY2htYXJybgp+IyEgdGlkPTk4MDI2MDg0OAoKIlNlaGVyIiBvZGVyICJTZWhlcmluIiB6dSB3ZXJkZW4gaXN0IGphIHdvaGwgZWluZmFjaC4KU2Nod2llcmlnIGlzdCBqYSB3b2hsIG51ciwgTGV2ZWwsIHp1IGVycmVpY2hlbiwgZGllIGVzIGdhciBuaWNodCBtZWhyIGdpYnQgLQp1bmQgZGFzICwgb2huZSBTZWhlciB6dSBzZWluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5vY2ggZWluIHBhYXIgSWRlZW4gKE5ldm9rLCAyMy4gSmFuIDIwMDEsIDIyOjUxOjQzKToKfiMhIHJuPVRzdW5hbWkgcnQ9OTgwMjc2MDUyIHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9OTgwMjc2MDUyCk9laCwgbXVzc3RlIGRvY2ggZ2VyYWRlIG5vY2ggbWFsIG5hY2hzY2hhdWVuIG9iIGRhcyBuaWNoIHdpcmtsaWNoIGluCidzY2htYXJybicgc3RhbmQuIFNhY2ggbWEsIFRzdW5hbWksIG1laW5zdCBEdSBkYXMgd2lya2xpY2ggZXJuc3Q/IE9kZXIgaGFiIGljaApuaWNoIGdlbnVlZ2VuZCBLYWZmZWUgdW5kIGJpbiB6dSBzZWhyIGF1ZiBCYWdlbC1FbnR6dWcgdW0gZGllIElyb25pZSB6dSBzZWhlbj8KOikKCk5ldm9rLCBzY2h3ZXIgYXVmIEVudHp1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBub2NoIGVpbiBwYWFyIElkZWVuIChHbm9tZSwgMjMuIEphbiAyMDAxLCAyMzoxMToxNyk6Cn4jISBybj1IaWdodCBydD05ODAyODA1Nzkgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD05ODAyNzYwNTIKenUgNi4KCmljaCEgaWNoIGhhYmUgX2RhdWVybmRfIGdlbGRwcm9ibGVtZS4gd2VyIHp1dmllbCBkYXZvbiBoYXQsIG1pciBpbnMgaGF1cwpsZWdlbiwgZXMgd2lyZCBiZXN0aW1tdCB2ZXJ3ZXJ0ZXQuLi4gOikKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNvc28uLi4gKEdub21lLCAyMy4gSmFuIDIwMDEsIDIzOjE0OjM2KToKfiMhIHJuPU1lbmFjZSBydD05ODAyODE1Mzcgcmc9c2NobWFycm4KfiMhIHRpZD05ODAyNjA4NDgKa2xhciBtZW5hY2UsIHNpY2hlci4KKnp3aW5rZXIqCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGEgZmVobHQgZWluZS4uLiAoQW5hdG9sLCAyNC4gSmFuIDIwMDEsIDAwOjU1OjUwKToKLi4uIFp3ZWl0aWVtYXJraWVydW5nPwoKRGVpbiBGcmV1bmQgVmFuaXIgdGVpbHQgRGlyIG1pdDogR3V0ZSBOYWNodApWYW5pciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKQ2FuY29yICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpQYWRyZWljICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKQW5hdG9sIC0gSGFiIGljaCB3YXMgdmVycGFzc3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptYWwgd2llZGVyIHVuZ2VzY2huaXR0ZW4gKE1vbnRhbnVzLCAyNC4gSmFuIDIwMDEsIDE2OjMyOjI4KToKCkJvaW5nIHRlaWx0IERpciBtaXQ6IGh1aHUhCkVpbiBlbnRzZXR6bGljaGVyIFNjaHJlaSBoYWxsdCB2b20gRnJpZWRob2YgaGVydWViZXIuCgood28gbGllZ3QgZGVyIFVudGVyc2NoaWVkPykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBtYWwgd2llZGVyIHVuZ2VzY2huaXR0ZW4gKE11YWRpYiwgMjQuIEphbiAyMDAxLCAxNjozNzo1OSk6Cn4jISBybj1Nb250YW51cyBydD05ODAzNTAzNDggcmc9c2NobWFycm4KfiMhIHRpZD05ODAzNTAzNDgKbmlldHpzY2hlIGhhdHRlIGFsc28gcmVjaHQgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU29zby4uLiAoWWVuZGksIDI0LiBKYW4gMjAwMSwgMTc6NDY6MDApOgp+IyEgcm49TW9udGFudXMgcnQ9OTgwMjgzMjM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgwMjYwODQ4ClllbmRpCiAgICAgIGZ1ZWhsdCBzaWNoIGFuZ2VzcHJvY2hlbgoodW5kIHNjaHJlaWJ0IHNjaG5lbGwgZWluZW4gTnVsbHplaWxlci4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhaG52b3JzdGVsbHVuZyA/PyAoTW9yZ290aCwgMjQuIEphbiAyMDAxLCAyMzoxNDozNyk6CkZhbnRhZ2hpcm8gcnVmdDogbmVpbiByb2NodXMgTkVJTiAhISEKRHUgdGVpbHN0IFJvY2h1cyBtaXQ6IGhtPwpSb2NodXMgaXN0IHNlaXQgMTAgTWludXRlbiB2b2VsbGlnIHVudGFldGlnLgoKTSogc3RhdW50CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FobnZvcnN0ZWxsdW5nID8/IChTb2xteXIsIDI0LiBKYW4gMjAwMSwgMjM6MTU6MjEpOgp+IyEgcm49TW9yZ290aCBydD05ODAzNzQ0Nzcgcmc9c2NobWFycm4KfiMhIHRpZD05ODAzNzQ0NzcKRGFzIGlzJyB3b2hsIG5lIGV0d2FzIHVudHlwaXNjaGUgV2Vja2FrdGlvbiwgOykKSG1tLGdsZWljaCBtYWwgbW9yZ2VuIGJlaSBtZWluZXIgRnJldW5kaW4gdGVzdGVuLi4uCgpTb2xteXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2FobnZvcnN0ZWxsdW5nID8/IChNb3Jnb3RoLCAyNC4gSmFuIDIwMDEsIDIzOjE1OjQ5KToKfiMhIHJuPVNvbG15ciBydD05ODAzNzQ1MjEgcmc9c2NobWFycm4KfiMhIHRpZD05ODAzNzQ0NzcKV2llc28/IFNjaGxhZWZ0IHNpZSBkYWJlaSBpbW1lciBlaW4/IDstKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdhaG52b3JzdGVsbHVuZyA/PyAoU29sbXlyLCAyNC4gSmFuIDIwMDEsIDIzOjE4OjIxKToKfiMhIHJuPU1vcmdvdGggcnQ9OTgwMzc0NTQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgwMzc0NDc3CldvcmF1ZiB3aWxsc3QgRHUgamV0enQgaGluYXVzPyA7KSBEYWJlaSghKSBzY2hsYWVmdCBzaWUgbmljaHQKZWluLCBhYmVyIHdlbm4gbWFuIHNpZSB3ZWNrZW4gd2lsbCwga3JpZWd0IG1hbiBtYW5jaG1hbCBlaW4KS2lzc2VuIHVtIGRpZSBPaHJlbiBnZXBmZWZmZXJ0LCA7KSBJc3QgaGFsdCBlaW4gdG90YWxlciBNb3JnZW4tCm11ZmZlbCwgYWJlciBhdXMgZGVyIERpc3Rhbnogc2NocmVpZW4sIGhtbSwgbWFsIHRlc3RlbiA7KQoKU29sbXlyLCB2ZXJ3dW5kZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2FobnZvcnN0ZWxsdW5nID8/IChHbm9tZSwgMjQuIEphbiAyMDAxLCAyMzoyMToxMik6Cn4jISBybj1Tb2xteXIgcnQ9OTgwMzc0NzAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgwMzc0NDc3CmR1IG11c3N0IHNpZSBudXIgcmljaHRpZy4uLiBhZWguLi4gYW5wYWNeV3dlY2tlbiwgZGFubiBtdWZmZWx0IHNpZQoodmVybXV0bGljaCkgbmljaHQgbWVociA6KQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdhaG52b3JzdGVsbHVuZyA/PyAoU29sbXlyLCAyNC4gSmFuIDIwMDEsIDIzOjIyOjI4KToKfiMhIHJuPUdub21lIHJ0PTk4MDM3NDg3MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MDM3NDQ3NwpTaW5kIHVucyBkZW5uIGRpZSBUaGVtZW4gc28gYXJnIGF1c2dlZ2FuZ2VuLCBkYXNzIHdpciB1ZWJlciBtZWluClNleGxlYmVuIHBoaWxvc29waGllciduIDs9KQoKU29sbXlyLCBhcmdsbmQKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBXYWhudm9yc3RlbGx1bmcgPz8gKEZhbnRhZ2hpcm8sIDI0LiBKYW4gMjAwMSwgMjM6MjM6MDApOgp+IyEgcm49U29sbXlyIHJ0PTk4MDM3NDk0OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MDM3NDQ3NwpKYQoKRmFudGEqIC0gS3VyeiB1bmQgc2NobWVyemhhZnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXYWhudm9yc3RlbGx1bmcgPz8gKFNvbG15ciwgMjQuIEphbiAyMDAxLCAyMzoyMzo1NCk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4MDM3NDk4MCByZz1zY2htYXJybgp+IyEgdGlkPTk4MDM3NDQ3NwpJY2ggenVlY2sgZ2xlaWNoICdTdWJsaW1lJyAhCgpTb2xteXIsIGt1cnogdW5kIG1pdCBTaWNoZXJoZWl0IHNjaG1lcnpoYWZ0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFdhaG52b3JzdGVsbHVuZyA/PyAoTW9udGFudXMsIDI0LiBKYW4gMjAwMSwgMjM6Mzg6MjMpOgp+IyEgcm49U29sbXlyIHJ0PTk4MDM3NTAzNCByZz1zY2htYXJybgp+IyEgdGlkPTk4MDM3NDQ3NwoKTXVkZGVyIHVuZCBTZXhsZWJlbi4uLiBpY2ggZ2xhdWIsIGlociBoYWJ0IGdlbmF1IGRpZSByaWNodGlnZSBVZWJlcnNjaHJpZnQKZnVlciBkZW4gVEhyZWFkIGdld2FlaGx0LiA6LSkKCkVpbiBFeC1NdWRkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbmUgV2VsbGUgaW0gRmV0dG5hcGYuIChNZXNpcmlpLCAyNS4gSmFuIDIwMDEsIDAyOjM2OjQwKToKVm9uIFRzdW5hbWk6IGhtbT8gbm9lLCBrb21tdCBiZWkgbWlyIHNhdWJlciBhbi4gTXVkZGVzdCBkdSBldHdhIG1pdApWb24gVHN1bmFtaTogdGVsbmV0PwpNZXNpLCBtdWRkZXQgTklDSFQgbWl0IHRlbG5ldAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBtYWwgd2llZGVyIHVuZ2VzY2huaXR0ZW4gKEJhbWJpLCAyNS4gSmFuIDIwMDEsIDEyOjQ2OjA3KToKfiMhIHJuPU11YWRpYiBydD05ODAzNTA2Nzkgcmc9c2NobWFycm4KfiMhIHRpZD05ODAzNTAzNDgKd29taXQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFcnN0a2lsbHMgdW5kIE5QQy1CYWxhbmNlIChMaWFyYSwgMjUuIEphbiAyMDAxLCAxMjo1MjoxNyk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9OTgwNDIwNDgyIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTgwMjYzNzM2CkdvciB1bmQgQW1hKiBzaW5kIHZlcmFudHdvcnR1bmdzdm9sbD8gOy0pCgpMWiwgZ3JpbnN0IHVuZCB6d2VpZmVsdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogbm9jaCBlaW4gcGFhciBJZGVlbiAoQW5hdG9sLCAyNS4gSmFuIDIwMDEsIDEyOjUyOjI5KToKfiMhIHJuPVNjaGxlaWNoZXIgcnQ9OTgwNDIzNDM2IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9OTgwMjc2MDUyCk1hY2gnIGJsb3NzIG5pZSBkZW4gTXVuZCBhdWYuIAoKTXVlbmRlciB3dXJkZW4gc2Nob24genUgYm9vb2VlZWVzZXIgUHJvcGFnYW5kYSB2ZXJ3ZW5kZXQuIFNvd2FzIHNvbGx0ZQptYW4gd2VnbGFzc2VuLCBhbSBiZXN0ZW4gc2Nob24gamV0enQgaW0gRGVua2Fuc2F0ei4KCkFuZGVyZXJzZWl0cy4gV2VsY2hlciBEZW5rYW5zYXR6PwoKQW5hdG9sIC0gdmVyc2NoZW5rdCBnZWxiZSBBcm1iaW5kZW4gbWl0IDMgc2Nod2FyemVuIFB1bmt0ZW4gZHJhdWYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBub2NoIGVpbiBwYWFyIElkZWVuIChBbmF0b2wsIDI1LiBKYW4gMjAwMSwgMTM6MDY6NDIpOgp+IyEgcm49Rm9vYmFyIHJ0PTk4MDQyNDM1MiByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTk4MDI3NjA1MgpEaWUgYmxhdWVuIEZsZWNrZW4gaW4gRGVpbmVtIEJhcnQgdm9tIEhlaWRlbGJlZXJlc3NlbiAnOTggcmVpY2hlbiBuaWNodD8KCkFuYXRvbCAgLiBvIE8gKCBad2VyZ2UuLi4hICkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBtYWwgd2llZGVyIHVuZ2VzY2huaXR0ZW4gKE11YWRpYiwgMjUuIEphbiAyMDAxLCAxMzoxMDowMSk6Cn4jISBybj1CYW1iaSBydD05ODA0MjMxNjcgcmc9c2NobWFycm4KfiMhIHRpZD05ODAzNTAzNDgKZ290dCBsaWVndCBhdWYgZGVtIGZyaWVkaG9mICpmcmVpIG5hY2ggbmlldHpzY2hlKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRXJzdGtpbGxzIHVuZCBOUEMtQmFsYW5jZSAoU2lsdmFuYSwgMjUuIEphbiAyMDAxLCAxNjowNzo0MSk6Cn4jISBybj1aYXJkb3ogcnQ9OTgwNDM1MTAwIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTgwMjYzNzM2Ck1hZyBzZWluLCBkYXNzIER1IE11ZHMgdmVyc3RlaHN0LCBhYmVyLi4uIE9iIER1IE1VRERFUiB2ZXJzdGVoc3QuLi4/IDstKQoKICBTaWx2YW5hIChydW1zY2htYXJybmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHbGVpY2ggbWFsIHdhcyB0dW4uLi4gKFRhaW5hLCAyNS4gSmFuIDIwMDEsIDE2OjU0OjA1KToKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGlzdCBlcyBpbnp3aXNjaGVuIGVpZ2VudGxpY2ggY2hpY2ssIGRhc3MgamVkZXIKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGplZGVuIHRhZyBtaW5kZXN0ZW5zIDMgYmxvZWRlIGFydGlrZWwgaW4gZGllCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBtcGEgc2NobWVpc3N0PwpTY2hsZWljaGVyICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKV2FzIG1pciBkYXMgd29obCBzYWd0Pz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExhdGV4LUVkaXRvciBmdWVyIFdpbmRvd3MgKEdyaW1tYm9ybiwgMjUuIEphbiAyMDAxLCAyMjo1ODozNSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTgwNDU5OTA5IG9nPXN1Y2hlLWJpZXRlCn4jISBybj1Sb25kYSBydD05ODA0NTAyNjUgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD05ODA0MjgwODEKSWNoIGVtcGZlaGxlIG5vdGVwYWQuIEFscyBncm9zc2VzIFBsdXMgaGF0IGRhcyBlaW5lIDUway1CZWdyZW56dW5nIChvZGVyCndhcmVucyA2NGs/KSB1bmQgendpbmd0IGVpbmVuIGRhbWl0LCBzaWNoIGt1cnogenUgZmFzc2VuLiBTZWhyCnVtd2VsdGZyZXVuZGxpY2guCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHJhZXRzZWwgZ2VzdWNodCAoR3JpbW1ib3JuLCAyNi4gSmFuIDIwMDEsIDEyOjU1OjQzKToKfiMhIG9uPVllbmRpIG90PTk4MDUxMDA3MyBvZz1hbnplaWdlbgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4MDQ2MDMyMiByZz1hbnplaWdlbgp+IyEgdGlkPTk4MDM3NTY0NwpEYXMgaXN0IGRvY2ggZGVyIFNwZWNodCBpbSBTY2hyYWNrLCBEdSBEb2VzZWwuLi4KCk9LLCBhYiBuYWNoIHNjaG1hcnJuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHJhZXRzZWwgZ2VzdWNodCAoR3JpbW1ib3JuLCAyNi4gSmFuIDIwMDEsIDEyOjU2OjM5KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODA1MTAxNDMgcmc9c2NobWFycm4KfiMhIHRpZD05ODAzNzU2NDcKVmllbGxlaWNodCBvdXRlIGljaCBqZXR6dCBtZWluZSBLdWVjaGUgYWxzIHZvZWxsaWcgdW56dXJlaWNoZW5kIGF1c2dlcnVlc3RldCwKYWJlciBpY2ggaGFiZSBub2NoIG5pZSBlaW5lbiBTcGVjaHQgaW0gS3VlY2hlbnNjaHJhbmsgZ2VoYWJ0LiBEaWUgQXJtYmFuZHVocgphdWYgZGVyIEFyYmVpdHNwbGF0dGUgaXN0IGplZG9jaCBiZWkgbWlyIHVlYmxpY2guCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHJhZXRzZWwgZ2VzdWNodCAoWWVuZGksIDI2LiBKYW4gMjAwMSwgMTI6NTc6MzIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4MDUxMDE5OSByZz1zY2htYXJybgp+IyEgdGlkPTk4MDM3NTY0NwpUamEsIER1IGhhc3QgRGVpbmUgS3VlY2hlIGphIGF1Y2ggbmljaHQgaW0gRWxmZW5kb3JmLCBvZGVyPwoKWVRZCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xhcHB0IGRhcyBpbW1lcj8gKFRpYW1haywgMjYuIEphbiAyMDAxLCAxOTowNTowOSk6ClJ5b3VzaGkgdHJpdHQgYXVzIGVpbmVyIFNjaHdlZmVsd29sa2UuClJ5b3VzaGkgc2V0enQgc2ljaCBoaW4gdW5kIGZhZW5ndCBhbiB6dSBtZWRpdGllcmVuLgpCb2luZyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKClRpYW1hayBkZW5rdCAuIG8gTyhUZXN0c3BpZWxlciBhYndlcnRlbiEpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCZXdlcmJ1bmcgKEdyaW1tYm9ybiwgMjYuIEphbiAyMDAxLCAyMzoxMToxMyk6CkljaCBoYWJlIGphIGtlaW5lIEFuZ3N0IHZvciBBdXNsYWVuZGVyd2l0emVuLCBkYWhlciBoaWVyIGVpbiBBdXN6dWcgYXVzIGVpbmVyCkJld2VyYnVuZywgZGllIGFuIGVpbmUgTGludXhmaXJtYSBnZXNjaGlja3Qgd3VyZGU6CgppY2ggIFN0dWRlbnQgZGVyIFVuaXZlcnNpdGFldCBHcmVpZnN3YWxkIGJpbiB1bmQKbW9lY2h0ZSBpbiBkaWVzZW4gIFdpbnRlcmZlcmllbiBiZWkgSWhuZW4gYXJiZWl0ZW4uCgpGYW0uU3RhZW5kOiAgICAgICAgIExlZGlnLCBNYWVubmxpY2guCkdlc3VuZGhlaXQ6ICAgICAgICBHdXQKUXVhbGlmaWthdGlvbjogICAgIEIuQS4gKEp1bmdnZXNlbGxlIGRlciBLdWVuc3RlKQpQQy1LZW5udG5pc3NlOiAgICAgV29yZCwgUG93ZXIgUG9pbnQsIEV4Y2VsLgpEZXV0c2NoZS0Kc3ByYWNoa2VubnRuaXNzZTogIEd1dAoKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIHN0b2x6ZW4gTWFsbG9ybiAoTm9raSwgMjcuIEphbiAyMDAxLCAwMDozMzo1NSk6CldlciBrZW5udCBzaWUgbmljaHQsIGRpZSB3dW5kZXJzY2hvZW5lbiBNYWxsb3JuYmFldW1lIGluIEdhbGFkcmllbHMKTG90aGxvcmllbi4gSmVkZXIgVG9sa2llbmZhbiB3dWVuc2NodCBzaWNoIGRvY2ggc29laW5lbiBhbHMgQm9uc2FpLCBvZGVyPyA7KQpIaWVyIGVpbmUgQmVzY2hyZWlidW5nIGlocmVzIEF1c3NlaGVucyBpbiBiZXN0ZXIgYmFiZWxmaXNoLVVlYmVyc2V0enVuZy4gQWxzbywKaWNoIGhhYmUgZ2VsYWNodCwuLi4gOikKClNlaW5lIEJhcmtlIHdhcnNpbGJlcm4gdW5kIG1hY2h0IHVuZCBzZWluIHVwc3dlcHQgZGVyIGJvdWdocyBlaW4gd2VuaWcgbmFjaApkZXIgV2Vpc2VkZXIgQnVjaGUgZ2xhdHQuIGFiZXIgc2llIHd1Y2hzIG5pZSBhdXNzZXIgbWl0IGVpbmVtIGVpbnplbG5lbgpLYWJlbC5TZWluZSBCbGFldHRlciwgd2llIGRpZSBkZXIgQnVjaGUgYWJlciBncm9lc3Nlciwgd2FyZW4gTGF0dGVuY0dydWVub2Jlbgp1bmQgd2FyZW4gdW50ZW4gZGFzIFNpbGJlciB1bmQgZ2xpc3RlcmluZyBpbSBzdW4uLCBpbiBkZW4gSGVyYnN0ZmllbGVuIHNpZQpuaWNodCwgYWJlciBnZXdlbmRldCBhbiBMYXR0ZW5nb2xkLiBJbSBGcnVlamFociBtYWcgZXNBdXNib2hydW5nIGdvbGRlbmUKQmx1ZXRlIGluIGRlbiBCbG9lY2tlbiBlaW5lIEtpcnNjaGUsIGRpZSBhbndhZWhyZW5kIGRlcyBTb21tZXJzIGJsdWVodGUuIHVuZApzb2JhbGQgZGllIEJsdW1lbiBzaWNoIG9lZmZuZXRlbixmaWVsZW4gZGllIEJsYWV0dGVyLCBkYW1pdCBkdXJjaCBGcnVlaGxpbmcKdW5kIFNvbW1lciBlaW5lIFdhbGR1bmcgdm9ubWFsaW5vcm5pIG1pdCBHb2xkIG1pdCBUZXBwaWNoIGF1c2dlbGVndCB1bmQgcm9vZmVkCnd1cmRlLCBhYmVyIHNlaW5lUGZvc3RlbiB3YXJlbiB2b20gZ3JhdWVuIFNpbGJlci4gU2VpbmUgRnJ1Y2h0IHdhciBlaW5lCk11dHRlcm1pdCBlaW5lbSBzaWxiZXJuZW4gU2NoaWVmZXIuIAoKTm9raSwga2ljaGVybmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllIHN0b2x6ZW4gTWFsbG9ybiAoR3JpbW1ib3JuLCAyNy4gSmFuIDIwMDEsIDAwOjQwOjU2KToKfiMhIHJuPU5va2kgcnQ9OTgwNTUyMDM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgwNTUyMDM1CldpZXNvPwpHZW5hdXNvIGhhYmUgaWNoIHNpZSBtaXIgaW1tZXIgdm9yZ2VzdGVsbHQuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBTY2h3ZXJtZXRhbGxiZWxhc3R1bmcgaW0gTUcgc2NoZWludCBqYSByZWNodCBob2NoIHp1IHNlaW4gLi4uIChNYW5kcmFnb24sIDI3LiBKYW4gMjAwMSwgMDA6NDI6MDgpOgoKRHUgaWRlbnRpZml6aWVyc3QgZGFzIFNhbGF0YmxhdHQuIEVzIGJlc3RlaHQgYXVzIE1ldGFsbC4gRHUga2FubnN0IHNvbnN0Cm5pY2h0cyBiZXNvbmRlcmVzIGFuIGlobSBlcmtlbm5lbi4KCk1BbmRyYWdvbiBmcmFndCBuYWNoIGVpbmVyIHJhZGlvYWt0aXZlbiBLaWxsZXJndXJrZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGllIHN0b2x6ZW4gTWFsbG9ybiAoTWluZ28sIDI3LiBKYW4gMjAwMSwgMDU6Mjg6NTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4MDU1MjQ1NiByZz1zY2htYXJybgp+IyEgdGlkPTk4MDU1MjAzNQpJY2ggaGFiIG1laHIgTGVlcnJhZXVtZSB6d2lzY2hlbiBkZW4gZWluemVsbmVuIEJsYWV0dGVybiBlcndhcnRldC4KCk1pbmdvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBXYWhudm9yc3RlbGx1bmcgPz8gKFJhcmRpYW4sIDI3LiBKYW4gMjAwMSwgMDY6MTI6MjkpOgp+IyEgcm49U29sbXlyIHJ0PTk4MDM3NDk0OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MDM3NDQ3NwpPaCwgZXMgZ2luZyB1bSBTZXg/IE1pc3QhIERhbm4gbXVzcyBpY2ggZGllIHZvcmhlcmlnZW4gQXJ0aWtlbCBqYSBkb2NoIG5vY2htYWwKbGVzZW4uLi4gOykKClJhci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHbGVpY2ggbWFsIHdhcyB0dW4uLi4gKFJhcmRpYW4sIDI3LiBKYW4gMjAwMSwgMDY6MTQ6NTYpOgp+IyEgcm49VGFpbmEgcnQ9OTgwNDM4MDQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgwNDM4MDQ1Cgo+V2FzIG1pciBkYXMgd29obCBzYWd0Pz8/CgpEYXNzIGRpZXMgZGVpbiBlcnN0ZXIgdm9uIGRyZWllbiB3YXI/IDspCgpSYXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhhcmRjb3JlLUNoYXJha3RlcmUgKEdyaW1tYm9ybiwgMjcuIEphbiAyMDAxLCAwOTo1NjowNCk6Cn4jISBvbj1SYXJkaWFuIG90PTk4MDU3MzA0NiBvZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgcm49TXVhZGliIHJ0PTk4MDUxODk1MCByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTk4MDUxNjk1OAo+LWVpbiBoYXJkY29yZW1ldHpsZXIgaXN0IGltbWVyIGVpbiBlcnN0aWUsIGRlciBtaW5kZXN0ZW5zIGxldmVsIHkgZXJyZWljaHQKLi4uCkRlbiB6d2VpdGVuIFRlaWwgZGVyIEJlZGluZ3VuZyBmaW5kZSBpY2ggZWNodCBnZWx1bmdlbiBmb3JtdWxpZXJ0ISA6KSBEZW4KZXJzdGVuIFRlaWwgZmluZCBpY2ggYmxvZWQuIERhbm4ga29lbm5lbiB3aXIgTWFnaWVyZSBqYSBuaWUgSGFyZGNvcmVyIHdlcmRlbgpvZGVyIGtvZW5uZW4gc2ljaCBNYWdpZXJlIGRhbm4gYXVjaCB6dW0gSGFyZGNvcmVyIHRyYW5zZm9ybWllcmVuIGxhc3Nlbj8KKExldmVsIHkgaXN0IHNpY2hlciBzY2huZWxsIGdlc2V0enQuLi4pCgpSYXIgLiBvIE8gKFVwcyEgSXN0IGphIGdhciBuaWNodCBzY2htYXJybi4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWUgU2Nod2VybWV0YWxsYmVsYXN0dW5nIGltIE1HIHNjaGVpbnQgamEgcmVjaHQgaG9jaCB6dSBzZWluIC4uLiAoUm9jaHVzLCAyNy4gSmFuIDIwMDEsIDEyOjE3OjM0KToKfiMhIHJuPU1hbmRyYWdvbiBydD05ODA1NTI1Mjggcmc9c2NobWFycm4KfiMhIHRpZD05ODA1NTI1MjgKSW4gQXJiZWl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogbWFsIHdpZWRlciB1bmdlc2Nobml0dGVuIChBc2hhbiwgMjcuIEphbiAyMDAxLCAxMjo0MzowNCk6Cn4jISBybj1NdWFkaWIgcnQ9OTgwNDI0NjAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgwMzUwMzQ4CmhtbSwgaWNoIGZhbmQgYmVzc2VyOgoKR290dCBpc3QgdG90ICAoTmlldHpzY2hlKQoKZWluIHBhYXIgSmFocnplaG50ZSBzcGFldGVyOgoKTmlldHpzY2hlIGlzdCB0b3QgICAoR290dCkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBtYWwgd2llZGVyIHVuZ2VzY2huaXR0ZW4gKE1pbmdvLCAyNy4gSmFuIDIwMDEsIDEyOjQ2OjE5KToKfiMhIHJuPUFzaGFuIHJ0PTk4MDU5NTc4NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MDM1MDM0OApVbnZvbGxrb21tZW5lIFppdGF0ZSAuLi4KVG90ZSByZWRlbiBuaWNodC4gKERqYW5nbykKCk1pbmcgZXJnYWVuenQgbnVyIGZ1ZXIgYWxsZSwgZGllIGRhIGF1Y2ggZXR3YXMgdmVybWlzc3QgaGFiZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClByb21wdGUgQmVkaWVudW5nLi4uIChGb29iYXIsIDI3LiBKYW4gMjAwMSwgMTY6MTU6MzEpOgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0LgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gQXJrIGluIFJ1YnJpayAia3VsdHVyIi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCkZvb2JhciAtIGhhdCB3aWVkZXIgd2FzIHp1IGxlc2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE9iaSwgMjcuIEphbiAyMDAxLCAyMTo0NDoxNSk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIHNjaHdhcnplbiBTY2htaWVkc10gU2NoZWlzc2UsIE9sbGksIGljaCBoYXR0ZSAnbmVuCltNb2VyZGVyOkdlaXN0IGVpbmVzIHNjaHdhcnplbiBTY2htaWVkc10gRGlzY29ubmVjdCAuLi4KW01vZXJkZXI6T2xsaV0gU28gc29sbCdzIHNlaW4gOikKRHUgdGVpbHN0IEZvb2JhciBtaXQ6IGhhaCEgOikKW1RvZDpMYXJzXSBFaW5lIEtvaGxlbnN0YXViZXhwbG9zaW9uIGhhdCBnZXJhZGUgT2xsaSB1bWdlYnJhY2h0LgoKT0JJCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGZXVlcixHYWxicmFpdGggdW5kIE9sbGkgKFNvbG15ciwgMjguIEphbiAyMDAxLCAwMTo0OTo0OCk6CkhtbW1tbW1tIDs9KSBNaWNoIGhhdCdzIGFtdWVzaWVydC4uLgoKR2FsYnJhaXRoICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogT2gsIEdhbGJyYWl0aCBpc3QgZmFzdCB0b3QgOz0pCiBUb2Q6TGFycyBCcmVubmVuZGVyIFNjaHdlZmVsIGhhdCBnZXJhZGUgT2xsaSB1bWdlYnJhY2h0LgogVG9kOkJyZW5uZW5kZXIgU2Nod2VmZWwgRHUgYnJlbm5zdCB3b2hsIQpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogVW5kIE9sbGkgYXVjaCA7PSkKCj4gR2FtaW5hICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkR1IHRlaWxzdCBHYW1pbmEgbWl0OiBOYSwgd2llZGVyIGZhc3QgVG90PyA7KQo+IEFsbGdlbWVpbjpHYW1pbmEgd2llIHdpcmQgbWFuIHNpY2ggZWluYnJlbm5lbmRlbiBzY2h3ZWZlbCBsb3M/Cgo7KSBTb2xteXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoR29yLCAyOC4gSmFuIDIwMDEsIDE1OjQ0OjA4KToKRGVpbiBGcmV1bmQgTWF0aXMgdGVpbHQgRGlyIG1pdDogbm8gcGFuaWMKW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbCBoYXQgZ2VyYWRlIE1hdGlzIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWxdIFBmZmZmZmZmZmZmZnQuLi4uLi4uUExVTVBTIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5lLCBpcyBrbGFyLiAoWm9vaywgMjguIEphbiAyMDAxLCAxODo0NToxMSk6ClJ1YnJpayBCZWthbm50bWFjaHVuZ2VuOgoKKC4uLikgQW0gRnJlaXRhZywgMDIuMDIuMjAwMSB3aXJkIGVzIGdlZ2VuIDIyOjAwIFVociBlaW5lbiBSZWJvb3QgKC4uLikKCkFybWFnZWRkb24gcnVmdDogSW4gMzA4IFRhZ2VuLCA0IFN0dW5kZW4sIDAgTWludXRlbiB1bmQgMCBTZWt1bmRlbiB3ZXJkZSBpY2gKQXJtYWdlZGRvbiBydWZ0OiBkaWUgV2VsdCB6ZXJzdG9lcmVuIHVuZCBuZXUgZXJzY2hhZmZlbiEKW0FsbGdlbWVpbjpUaWFtYWsgZGVua3QgLiBvIE8oc2hpdCwgZGFzIHdhciB2ZXJyZWNobmV0IDotKV0KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmUsIGlzIGtsYXIuIChWYW5pb24sIDI4LiBKYW4gMjAwMSwgMTg6NDY6MTkpOgp+IyEgcm49Wm9vayBydD05ODA3MDM5MTEgcmc9c2NobWFycm4KfiMhIHRpZD05ODA3MDM5MTEKVGlhbWFrIGlzdCBlYmVuIE9wdGltaXN0LgoKViosIGRhY2h0ZSBUaWEgd2lsbCBpbW1lciBudXIgdmVyZG9wcGVsbiAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkltbWVyIHdpZWRlciBhbXVlc2FudC4uLiAoRm9vYmFyLCAyOC4gSmFuIDIwMDEsIDIxOjIyOjIyKToKRHUgdGVpbHN0IEFybWFnZWRkb24gbWl0OiBMZWNrIG1pY2guLi4KQXJtYWdlZGRvbiB0ZWlsdCBEaXIgbWl0OiBFcyBpc3Qgbm9jaCB6dSBmcnVlaCEgUHJvYmllciBlcyAxMCBNaW51dGVuIHZvciBkZW0KQXJtYWdlZGRvbiB0ZWlsdCBEaXIgbWl0OiBFbmRlIG5vY2htYWwhCkFybWFnZWRkb24gdGVpbHQgRGlyIG1pdDogSW4gNSBUYWdlbiwgMCBTdHVuZGVuLCAzOCBNaW51dGVuIHVuZCAxIFNla3VuZGUgaXN0CmVzCkFybWFnZWRkb24gdGVpbHQgRGlyIG1pdDogc293ZWl0ISAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDb29sIDstKSAoTW9yZ290aCwgMjkuIEphbiAyMDAxLCAwODoxOTozNSk6ClVlYmVyZ2VoZSBBcnRpa2VsIDMyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDMzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM1IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM4IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDM5IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQxIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuCltEZWJ1ZzpNUEFdIEhpZXIgc3RlaHQgbmljaHQgbWVociBkcmluLgoKU28gbGllYiBpY2ggTVBBIDstKQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDb29sIDstKSAoTWluZ28sIDI5LiBKYW4gMjAwMSwgMDk6NDY6NDUpOgp+IyEgcm49TW9yZ290aCBydD05ODA3NTI3NzUgcmc9c2NobWFycm4KfiMhIHRpZD05ODA3NTI3NzUKRGVpbmUgTk5BRFctTWVsZHVuZyBpc3QgYmV6ZWljaG5lbmQgZnVlciBEaWNoIDo+CgpNaW5nbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCdWNodGlwIChHcmltbWJvcm4sIDI5LiBKYW4gMjAwMSwgMTM6MDE6NTEpOgp+IyEgcm49TGluZmxhcyBydD05ODA3NjgzNDggcmc9a3VsdHVyCn4jISB0aWQ9OTgwNjA4NDczCkphLCBkYXMgQnVjaCBpc3Qgd2lya2xpY2ggZWluIEtsYXNzaWtlci4gS29tbXQgdWVibGljaGVyd2Vpc2Uga3VyeiBuYWNoIGRlcgpIZXJtYW5uIEhlc3NlIFBoYXNlLCBrdXJ6IHZvciBkZXIgZXJuc3RoYWZ0ZW4gQmVzY2hhZWZ0aWd1bmcgbWl0IFRvbGtpZW4uLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCAoa2VubnQgYXVjaCBkZW4gRmlsbSB6dW0gQnVjaCwgdW5kIGRpZSBNdXNpayBpc3QgYXVjaApuaWNodCBzbyBzY2hsZWNodCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEhhcmRjb3JlLUNoYXJha3RlcmUgKFJhcmRpYW4sIDI5LiBKYW4gMjAwMSwgMTU6MzI6MzEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4MDU4NTc2NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MDUxNjk1OApEYW5rZSwgR3JpbW1ib3JuIDopIC4uLgoKUmFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQnVjaHRpcCAoR3JpbW1ib3JuLCAyOS4gSmFuIDIwMDEsIDE1OjQ3OjI1KToKfiMhIHJuPVNvbG15ciBydD05ODA3Nzk1MjEgcmc9a3VsdHVyCn4jISB0aWQ9OTgwNjA4NDczCi4uLnVuZCBqZWRlciB6d2VpdGUgaW4gbWVpbmVyIHNpZWJ0ZW4gU2NodWxrbGFzc2UgKG9kZXIgd2FycyBkaWUgYWNodGU/KQpyZWRldGUgdWViZXIgUmVsYXRpdml0YWV0c3RoZW9yaWUgdW5kIFF1YW50ZW5waHlzaWsuIERlbm5vY2ggc2luZCBkYXMga2VpbmUKS2luZGVydGhlbWVuLCB1bmQga29ubnRlbiB2b24gdW5zIGRhbWFscyBpbiBpaHJlciB3aXJrbGljaGVuIFRpZWZlIGthdW0KZXJmYXNzdCB3ZXJkZW4uIFRyb3R6ZGVtIHdhcnMgY29vbC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQnVjaHRpcCAoU29sbXlyLCAyOS4gSmFuIDIwMDEsIDE1OjQ4OjU4KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODA3Nzk2NDUgcmc9c2NobWFycm4KfiMhIHRpZD05ODA2MDg0NzMKQmVpIHVucyB3YXIgJ1RyYWVnaGVpdCBkZXIgTWFzc2UnIGVpbiBGYXZvcml0IDspCgpTb2xteXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEJ1Y2h0aXAgKEFuYXRvbCwgMjkuIEphbiAyMDAxLCAxNTo0OToyOCk6Cn4jISBybj1Tb2xteXIgcnQ9OTgwNzc5NzM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgwNjA4NDczCk9oLCB3aXIgaGF0dGVuIGRhbWFscyAiVWViZXJsaWNodCIuCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBCdWNodGlwIChHcmltbWJvcm4sIDI5LiBKYW4gMjAwMSwgMTU6NTA6NDcpOgp+IyEgcm49QW5hdG9sIHJ0PTk4MDc3OTc2OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MDYwODQ3MwpEYXMgd2llZGVydW0gaGF0IHVucyBlcnN0IGFuIGRlciBVbmkgZ2V0cm9mZmVuLiBadSBkZW0gWmVpdHB1bmt0IGFscyBkaWUKS29lbG5lciBQaHlzaWtlciBpaHJlIFR1bm5lbHplaXRtZXNzdW5nZW4gZ2VtYWNodCBoYWJlbiB3YXIgaWNoIHNjaG9uIGF1cyBkZXIKU2NodWxlIHJhdXMuIEphamEsIGljaCB3ZXJkIGF1Y2ggbmljaHQganVlbmdlci4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQnVjaHRpcCAoSmFtZXNvbiwgMjkuIEphbiAyMDAxLCAxNTo1MTowMyk6Cn4jISBybj1BbmF0b2wgcnQ9OTgwNzc5NzY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgwNjA4NDczCm9mZmVuc2ljaHRsaWNoIGhhdCdzIG5pY2h0IGdlaG9sZmVuIDstKQoKU0NOUiwKakFtZXNvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2FyZGV3YWVjaHRlciAtPiBSb2NrZXI/IChTb2xteXIsIDI5LiBKYW4gMjAwMSwgMTU6NTM6NTEpOgpIbW0sIC4uLiBzdGFuZCB2b3IgZWluIHBhYXIgVGFnZW4gbmljaHQgaW4gZGVyIE1QQSwgZGFzcyB3aXIgZWluaWdlCm5ldWUgU3BydWVjaGUgYXVmIC1Nb2VyZGVyIGhhZXR0ZW4gOz0pCgpBYmVyIHNhZ3QgbWFsLCB3aXIgc2luZCBlaW4gRmFudGFzeW11ZCB1bmQgZGVyIEdlaXN0IGVpbmVzIEdhcmRlLQp3YWVjaHRlcnMgc2FndCBiZXN0aW1tdCBuaWNodDogJ3h4eHh4LCB3YXJ1bSBzb2xsdGUgaWNoIERpciBtZWluZQpKYWNrZSB1bmQgbWVpbiBNb3RvcnJhZCBnZWJlbj8nIHdlbm4gZXIgc3RpcmJ0Li4uLgoKdHNldHNldHNlClNvbG15cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFBydWVmdW5ncy1XaXR6IChHYW5kdXIsIDI5LiBKYW4gMjAwMSwgMTc6Mzk6MDYpOgp+IyEgb249R2FuZHVyIG90PTk4MDc4NjEwMyBvZz1kaXNrdXNzaW9uCn4jISBybj1BbmF0b2wgcnQ9OTgwNzg1ODQ4IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05ODA2MTgyOTUKbWFuIGthbm4gd2VkZXIgZGllIGVpbmVuIG5vY2ggZGllIGFuZGVyZW4gdmVyc3RlaGVuLgoKU0NOUiwgR2FuZHVyICppbiBEZWNrdW5nIGhlY2h0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IFBydWVmdW5ncy1XaXR6IChHcmltbWJvcm4sIDI5LiBKYW4gMjAwMSwgMTc6Mzk6NDgpOgp+IyEgcm49R2FuZHVyIHJ0PTk4MDc4NjM0NiByZz1zY2htYXJybgp+IyEgdGlkPTk4MDYxODI5NQpBY2gsIHdlaXNzdGUsIHdpZSBkaWVzZSBiYXllcmlzY2hlbiBTdGFlbW1lIHNpY2ggdW50ZXJlaW5hbmRlciBuZW5uZW4gaXN0CmVpZ2VudGxpY2ggemllbWxpY2ggdW5pbnRlcmVzc2FudC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogUHJ1ZWZ1bmdzLVdpdHogKEdyaW1tYm9ybiwgMjkuIEphbiAyMDAxLCAxODozMzoxNyk6Cn4jISBybj1EaWVkZXIgcnQ9OTgwNzg2ODA2IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05ODA2MTgyOTUKQWxzbyBrYW5uIGVpbmVyIGFsbGVpbmUgdGF0c2FlY2hsaWNoIHNvIGRhZW1saWNoIHNlaW4uLi4gKnN0YXVuKgpVbmQgZGFubiBnaWJ0cyBkYXZvbiBhdWNoIG5vY2ggendlaSBTdHVlY2suIE5hamEuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDcmFzaCBhbSAyOS4xLiAoR2FuZHVyLCAyOS4gSmFuIDIwMDEsIDE5OjUyOjMyKToKfiMhIHJuPU5hY2h0d2luZCBydD05ODA3ODkyMDEgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTk4MDc4OTIwMQpudW4gYmluIGljaCBnZXNwYW5udCB3YXMgbWVpbiBDaGVmIGRhenUgc2FndCB3ZW5uIGljaCBtb3JnZW4gbmljaHQKenVyIGFyYmVpdCBrb21tZSwgc2NobGllc3NsaWNoIG11c3MgamEgaGV1dCBmcmVpdGFnIHNlaW4gOykKCmdhbmR1ciAoc2NobWFycm5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RhdGkgQiAoUm9jaHVzLCAyOS4gSmFuIDIwMDEsIDIyOjU2OjQ3KToKWFhYIHRlaWx0IERpciBtaXQ6IER1LCBhbSBGcmVpdGFnIGlzdCBkb2NoIHdpZWRlciBkZXIgTUctU3RhbW10aXNjaC4gR2Voc3QgZHUKZGFoaW4/PyIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBQcnVlZnVuZ3MtV2l0eiAoR25vbWUsIDI5LiBKYW4gMjAwMSwgMjM6NDc6NDkpOgp+IyEgcm49RGFyaWEgcnQ9OTgwNzgzNTc4IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05ODA2MTgyOTUKIi4uLkZhbGxzIHNpY2ggZWluZXIgdWViZXIgRm9ybWF0aWVydW5nIGF1ZnJlZ3Q6IEljaCBtdWRkZSBtaXQgVGVsbmV0LiIKCmRlaW5lIGZvcm1hdGllcnVuZyBpc3QgdHJvdHogdGVsbmV0IGdhbnogYXVzZ2V6ZWljaG5ldC4KbWFuY2hlIHpNdWQtdXNlciBrcmllZ2VuIG5pY2h0IG1hbCBfZGFzXyBoaW4uLi4gOCkKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCdWNodGlwIChHbm9tZSwgMjkuIEphbiAyMDAxLCAyMzo1NjowMyk6Cn4jISBybj1Tb2xteXIgcnQ9OTgwNzc5NTIxIHJnPWt1bHR1cgp+IyEgdGlkPTk4MDYwODQ3MwoiLi4uZGllIFByZXNzZSBoYXQgZGVuIGRhbm4gc28genUgU2Nocm90dCBnZXNjaG5pdHRlbi4uLiIKCmZhbHNjaC4KZGVyIGZpbG0gaXN0IG5pY2h0IGRhcyB6ZWxsdWxvaWQgd2VydCwgYXVmIGRlbSBlciBnZWRyZWh0IHd1cmRlLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtbSwgbmllIHdpZWRlciBBbGpvaG9ob2hvbC4gOykgKFNvbG15ciwgMzAuIEphbiAyMDAxLCAwMzo1MTo0OCk6CkhtbSxhbHNvIGRlciBuYWVjaHN0ZSBSZWJvb3QgYnJpbmd0IFZlcmFlbmRlcnVuZ2VuIGFtIFF1ZXN0bWFzdGVyCm1pdCBzaWNoPyBJc3QgYXVjaCBiZXNzZXIgc28sIC4uLiAzOjUwIERpZW5zdGFnIG1vcmdlbiAuLi4KCkRpZSBGYWVocnRlbnNhZW5nZXIgc2luZ2VuOiBXaXIgZGFua2VuIERpciwgQWxrb2hvbCwgZnVlciBkaWUKUmFldHNlbHN0ZWlucGFydGl0dXIhCkVsYmVyZXQgZGVua3QgICAuIG8gTyAodGl0dGVuYm9udXMpCgpTb2xteXIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSG1tLCBuaWUgd2llZGVyIEFsam9ob2hvaG9sLiA7KSAoU29sbXlyLCAzMC4gSmFuIDIwMDEsIDAzOjUyOjQ4KToKfiMhIHJuPVNvbG15ciBydD05ODA4MjMxMDggcmc9c2NobWFycm4KfiMhIHRpZD05ODA4MjMxMDgKSG1tLCBpcmdlbmR3aWUga3JpZWcgaWNoIGRhcyBGb3JtYXQgbmljaHQgaGluLCBkZXIgdmVyc2NobHVja3QgaW1tZXIKd2llZGVyIFplaWxlbi4gU2NoZWlzcyBaTXVkLi4uCgpTb2xteXIsIGdlbmVydnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3VjaGUgKEFuYXRvbCwgMzAuIEphbiAyMDAxLCAxMzoxODo0OSk6Cn4jISBybj1NdWFkaWIgcnQ9OTgwODUyMzkzIHJnPXd3dwp+IyEgdGlkPTk4MDU5MDE3MgpXYXMgbGVybmVuIHdpciBkYXJhdXM/CgpEZXIgVGV1ZmVsIGhhdCB1ZWJlcmFsbCBzZWluZW4gRGF1bScgaW0gU3BpZWwuICpzY2huaWVmKgoKQW5hdG9sICpnbHVja3MqIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLdXJ6c2ljaHRpZ2tlaXQgKFZhbmlvbiwgMzAuIEphbiAyMDAxLCAxNjoyMDoyNCk6CkVpbiBBcnRpa2VsIGluIGphcGFuLmFuaW1lLmV2YW5nZWxpb24gKHZvbiBlaW5lbSBQb3N0ZXIgbWl0ICouanAtZW1haWwpOgoqdmllbCBqYXBhbmlzY2hlcyAoc2llaHQgb2huZSBpbnN0YWxsaWVydGVuIFNjaHJpZnRzYXR6IHppZW1saWNoIGFsYmVybiBhdXMpKgoKQW50d29ydDogKHZpZWxsZWljaHQgdm9uICduZW0gQW1pPykKKHNpZ2gpIFlldCBhbm90aGVyIHVucmVhZGFibGUgcG9zdGluZy4uLgoKQW50d29ydCBhdWYgZGllIEFudHdvcnQ6CkRvbid0IGJsYW1lIEphcGFuZXNlIHBlb3BsZSBmb3IgcG9zdGluZyBpbiBKYXBhbmVzZSwgcGxlYXNlLi4uCgpWKiwgZ2xhdWJ0IGRhcyBJZ25vcmFueiBrZWluZSBHcmVuemVuIGtlbm50LCBlcyBhYmVyIGxva2FsZSBIYWV1ZnVuZ2VuIGdpYnQKKmcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBwcnVzdCogKEdyaW1tYm9ybiwgMzEuIEphbiAyMDAxLCAwMDowNTozMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTgwODk1ODY2IHJnPXdpdHplCn4jISB0aWQ9OTgwODk1MzkyCkF1c3NlcmRlbSBiaXR0ZSBiaXMgRG9ubmVyc3RhZyBNaXR0ZXJuYWNodCBvZGVyIEZyZWl0YWcgd2FydGVuLiBCaW4gdm9uIG1vcmdlbgpBYmVuZCBiaXMgRG9ubmVyc3RhZyBBYmVuZCBuaWNodCB2ZXJmdWVnYmFyLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBwcnVzdCogKEdyaW1tYm9ybiwgMzEuIEphbiAyMDAxLCAwMDowNjozMik6Cn4jISBvbj1BbmF0b2wgb3Q9OTgwODk1OTE0IG9nPXdpdHplCn4jISBybj1HcmltbWJvcm4gcnQ9OTgwODk1ODY2IHJnPXdpdHplCn4jISB0aWQ9OTgwODk1MzkyClNjaGFkZSwga2VpbiBNYXNzZW5zdGVyYmVuIGluIEZ1cnR3YW5nZW4uLi4gOikKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhhcmFsZCBTY2htaWR0Li4uIChEZWVwYmx1ZSwgMzEuIEphbiAyMDAxLCAxMDozMzo1Myk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTgwODk2MTE2IHJnPXdpdHplCn4jISB0aWQ9OTgwODk2MTE2CkRpZXNlciBBcnRpa2VsIGlzdCBnZXdhbHR2ZXJoZXJybGljaGVudCBtZW5zY2hlbnZlcmFjaHRlbmQgdW5kIHdpZGVybGljaC4gSWNoCmZvcmRlcmUgaGllcm1pdCBkaWUgb2VmZmVudGxpY2hlIEhpbnJpY2h0dW5nIGRlcyBVZWJlcmJyaW5nZXJzIGRlciBOYWNocmljaHQuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEJ1Y2h0aXAgKFFpdGVzcywgMzEuIEphbiAyMDAxLCAxNjo1NDowNCk6Cn4jISBybj1BbmF0b2wgcnQ9OTgwNzc5NzY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgwNjA4NDczCmljaCBzYWcgbnVyIC0gZW5kb3BsYXNtYXRpc2NoZXMgUmV0aWt1bHVtLi4uCgpRSSoqIGRlbmt0IGFuIGhlcnJsaWNoZSBTY2h1bHplaXRlbiB6dXJ1ZWNrLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEJ1Y2h0aXAgKEdyaW1tYm9ybiwgMzEuIEphbiAyMDAxLCAxNjo1ODozNCk6Cn4jISBybj1RaXRlc3MgcnQ9OTgwOTU2NDQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgwNjA4NDczCkhtbSwgc293ZWl0IGljaCBtaWNoIGVyaW5uZXJlIHdhcmVuIFNhY2hlbiwgZGllIHRhdHNhZWNobGljaCBpbSBVbnRlcnJpY2h0CnZvcmthbWVuLCB3ZW5pZ2VyIHZvbiBJbnRlcmVzc2UuIFNvIGhhYmUgaWNoICJFZmZpIEJyaWVzdCIgaW4gZGVyIG5ldW50ZW4KS2xhc3NlIHdlc2VudGxpY2ggaW50ZXJlc3NhbnRlciBnZWZ1bmRlbiBhbHMgaW4gZGVyIHp3b2VsZnRlbiwgd28gc2llIGltClVudGVycmljaHQgZHJhbmthbS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEJ1Y2h0aXAgKE1pbmdvLCAzMS4gSmFuIDIwMDEsIDE3OjQ1OjU0KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODA5NTY3MTQgcmc9c2NobWFycm4KfiMhIHRpZD05ODA2MDg0NzMKVW5kIGljaCBrYW5uIGRhenUgbnVyIHNhZ2VuLCBkYXNzIG1hbiBzaWNoIHZlcmRhbW10IGdsdWVja2xpY2ggc2NoYWV0emVuCmtvbm50ZSwgd2VubiBtYW4gZWluIEJ1Y2ggdm9yIGRlciBvZmZpemllbGxlbiBCZWhhbmRsdW5nIGR1cmNoIGRpZSBTY2h1bGUgbGFzLgpNYWwgZ2FueiBhYmdlc2VoZW4gdm9tIHJlYmVsbGlzY2hlbiBJbXB1bHMgKHdlbm4gaWNoIG11c3MsIGRhbm4gaGFiIGljaCBrZWluZQpMdXN0KSBtYWNoZW4gdm9yZ2VnZWJlbmVzIFRlbXBvIHVuZCBUZXh0c3RlbGxlbmludGVycHJldGF0aW9uICgid2FzIHdvbGx0ZSB1bnMKZGVyIEF1dG9yIGRhbWl0IHNhZ2VuIiAqd3VhZXJncyogIkhlcnIgTGVocmVyLCBrb2VubmVuIHdpciBuaWNodCBtYWwgZGFydWViZXIKZGlza3V0aWVyZW4sIG9iIEF1dG9yZW4ga2xhc3Npc2NoZXIgc293aWUgbmV1ZXJlciBMaXRlcmF0dXIgbWFuY2htYWwgYXVjaCByZWluCmRlciBGcmV1ZGUgYW0gU2NoYWZmZW4gd2lsbGVuIGdlc2NocmllYmVuIGhhYmVuIGtvZW5uZW4gdW5kIGFsbGVuZmFsbHMKdW5iZXd1c3N0IGRhbWFsaWdlIFp1c3RhZW5kZSBrcml0aXNpZXJ0ZW4/IikgaW4gZGVyIG5vcm1hbHNjaHVsaXNjaGVuCkJlaGFuZGx1bmcgdm9uIExpdGVyYXR1ciBhdXMgZGVtIExlc2VuIGVpbiBPcGZlcmZlc3QgYW4gZGllIEdlZHVsZC4KCk1pbmdvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEF1ZnNjaHJpZnRlbiB2b24gS29uc3VtYXJ0aWtlbG4gKE1pbmdvLCAgMS4gRmViIDIwMDEsIDAyOjE5OjI0KToKfiMhIHJuPVRzdW5hbWkgcnQ9OTgwOTg5OTQwIHJnPXdpdHplCn4jISB0aWQ9OTgwODY4ODczCkljaCBtb2VjaHRlIG51ciBhbm1lcmtlbiwgZGFzcyBEdSBzaWNoZXJsaWNoIG5pY2h0IGplZGVzIERlaW5lciBqZW1hbHMKZ2VzYWd0ZW4gV29ydGUgYXVmIGRlciBHb2xkd2FhZ2Ugd2llZGVyZmluZGVuIHdvZWxsdGVzdC4gSWNoIHd1ZW5zY2hlIGVzIERpcgphdWNoIG5pY2h0IHNvbmRlcmxpY2gsIG5pY2h0IG1hbCBkZXIgUHJvYmUgaGFsYmVyLiBEdSBrb2VubnRlc3QgZmVzdHN0ZWxsZW4sCmRhc3MgYXVjaCBEZWluZSBadW5nZSBtYW5jaG1hbCBzY2huZWxsZXIgaXN0IGFscyBEZWluIERlbmtlbi4KCk1pbmdvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBdWZzY2hyaWZ0ZW4gdm9uIEtvbnN1bWFydGlrZWxuIChMaWFyYSwgIDEuIEZlYiAyMDAxLCAxNjoyMDozMCk6Cn4jISBybj1IaWdodCBydD05ODEwMzU2Mjggcmc9d2l0emUKfiMhIHRpZD05ODA4Njg4NzMKV2lldmllbGUgTWV0ZXIgaGFzdCBEdSBzbz8gOy0pCgpMWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQXVmc2NocmlmdGVuIHZvbiBLb25zdW1hcnRpa2VsbiAoSGlnaHQsICAxLiBGZWIgMjAwMSwgMTY6NDA6MzApOgp+IyEgcm49TGlhcmEgcnQ9OTgxMDQwODMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgwODY4ODczCjIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFuZ3N0ID8gKEFsZXNjYSwgIDEuIEZlYiAyMDAxLCAyMDozMDowMik6CjxUYW5qaWFuPiBMYXZpbmlhIHp1ZWNrdCBzY2hvbiBtYWwgdm9yc29yZ2xpY2ggZWluIEthc3RyaWVybWVzc2VyCjxUYW5qaWFuPiBMdXB1cyBlc3BlcnQ6IFdhaCwgaWNoIGtvbW0gcmVpbiB1bmQgRHUgenVlY2tzdCBkYXMgS2FzdHJpZXJtZXNzZXI/CjxUYW5qaWFuPiBMdXB1cyBlc3BlcnQ6ICpzY2hsdWNrKgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKU293YXMgbmVubnQgbWFuIGFsc28gQW5nc3R6dXN0YWVuZGUgOikKCkFsZXNjYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQXVmc2NocmlmdGVuIHZvbiBLb25zdW1hcnRpa2VsbiAoR25vbWUsICAxLiBGZWIgMjAwMSwgMjI6NTk6NDQpOgp+IyEgcm49R29yb2cgcnQ9OTgxMDM1MTQzIHJnPXdpdHplCn4jISB0aWQ9OTgwODY4ODczCmRpZSBVU0EgaGF0IGpldHp0IGVpbmVuIGNvd2JveSBhdXMgdGV4YXMgYW4gZGVyIHNwaXR6ZSwgZGVyIG1pdCBzZWluZW0KY29sdCBzY2huZWxsZXIgaXN0LCBhbHMgc2VpbiBzY2hhdHRlbi4KbmljaHQgbnVyLCBkYXNzIGVyIGtlaW5lIGFobnVuZyB2b24gYXVzc2VucG9saXRpayBoYXQsIGVyIGhhdAphdXNzZXJkZW0gYXVjaCBub2NoIGtlaW5lIHZlcm51ZW5mdGlnZSBhbGxnZW1laW5iaWxkdW5nLgoKd2lsbGtvbW1lbiwga2FsdGVyIGtyaWVnLi4uCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmFuZGFyIGRvY2ggenUgd2FzIGZhZWhpZy4uLiAoU3Ryb2hhbG0sICAyLiBGZWIgMjAwMSwgMDY6MzQ6MjIpOgpBbiBMbHlzdHJhdGhlOiBraWxsZSB0YW5qaWFuCkxseXN0cmF0aGUgc2NobGFlZ3Qgdm9yOiBGcmFnIGRvY2ggbWFsIFJhbmRhciBUb2JpcyBkYW5hY2guIERlciBrdWVtbWVydCBzaWNoCkxseXN0cmF0aGUgc2NobGFlZ3Qgdm9yOiBoaWVyIHVtIGRlbiBnYW56ZW4gS2xlaW5rcmFtLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQXVmc2NocmlmdGVuIHZvbiBLb25zdW1hcnRpa2VsbiAoS2FyaXMsICAyLiBGZWIgMjAwMSwgMDk6MjM6MDMpOgp+IyEgcm49R25vbWUgcnQ9OTgxMDY0Nzg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgwODY4ODczCkRpZSBoYXR0ZW4gc2Nob24gc2NobGltbWVyZXMgdWViZXJzdGFuZGVuIGRhIGRydWViZW4KV2FzIGVyd2FydGVzdCBEdSB2b24gZWluZW0gTGFuZCwgaW4gZGVtIFNjaGF1c3BpZWxlcgpCdWVyZ2VybWVpc3RlciB1bmQgUHJhZXNpZGVudGVuIHdlcmRlbj8KCkdlbmVyYWVsY2hlbiBLYXJpcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhpaGkgKE5vbm5lLCAgMi4gRmViIDIwMDEsIDExOjIyOjE4KToKbm4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNjcgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgZGlza3Vzc2lvbi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNjggdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgZGlza3Vzc2lvbi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNjkgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgZGlza3Vzc2lvbi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNzAgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgZGlza3Vzc2lvbi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNzEgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgZGlza3Vzc2lvbi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNzIgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgZGlza3Vzc2lvbi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNzMgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgZGlza3Vzc2lvbi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNzQgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgZGlza3Vzc2lvbi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNzUgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgZGlza3Vzc2lvbi4KCkRhIG1hY2h0IE1QQS1sZXNlbiBkb2NoIHdpZWRlciBzcGFzcyAqZyoKCk5vbm5lLCBmZXJ0aWcgbWl0IGRlciBaZWl0dW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhpaGkgKE5ldm9rLCAgMi4gRmViIDIwMDEsIDEzOjI5OjMzKToKfiMhIHJuPU5vbm5lIHJ0PTk4MTEwOTMzOCByZz1zY2htYXJybgp+IyEgdGlkPTk4MTEwOTMzOApTb3NvLCB1bmQgS2F0aG9saWtlbiBzaW5kIGF1Y2ggc2NoZWlzc2UsIHdlaWwgZGVyIFBhcHN0IGF1Y2ggU2NoYXVzcGllbGVyIHZvcgpzZWluZW0gaGVpbGlnZW4gTGViZW4gd2FyPwpEdWNrIERpY2ggbWFsLCBkYSBrb21tZW4gYmVzdGltbXQgZWluIHBhYXIgS29tbWVudGFyZSA6KQoKTmV2b2ssIEF0aGVpc3QgdW5kIGZyb2ggZHJ1ZWJlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogT2ZmZW5lciBCcmllZiBhbiBQYXJhY2Vsc3VzIChBbmF0b2wsICAyLiBGZWIgMjAwMSwgMTM6NDg6MDMpOgp+IyEgcm49R3JlbGxnZW4gcnQ9OTgxMTE3ODI0IHJnPWdpbGRlbi50YW5qaWFuCn4jISB0aWQ9OTc4OTU3NDE0CldvbWl0IGRlciBHZWdlbmJld2VpcyBlcmJyYWNodCB3YWVyZSAtICJFcnptZWlzdGVyIGRlcyBUYXUtVGF1IiBzZWluCmlzdCBvZmZlbnNpY2h0bGljaCBrZWluZSBoaW5yZWljaGVuZGUgQmVkaW5ndW5nIGZ1ZXIgS29tcGV0ZW56LgoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBPZmZlbmVyIEJyaWVmIGFuIFBhcmFjZWxzdXMgKFBhcmFjZWxzdXMsICAyLiBGZWIgMjAwMSwgMTM6NTA6MTgpOgp+IyEgcm49QW5hdG9sIHJ0PTk4MTExODA4MyByZz1zY2htYXJybgp+IyEgdGlkPTk3ODk1NzQxNApJY2ggYWxzIEdpbGRlbmNoZWYgdWViZXJuZWhtZSBrZWluZXJsZWkgVmVyYW50d29ydHVuZyBmdWVyIGRpZSBnZWlzdGlnZQpWZXJmYXNzdW5nIG1laW5lciBHaWxkZW5taXRnbGllZGVyLgoKUGFyYWNlbHN1cyBdOi0+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBPZmZlbmVyIEJyaWVmIGFuIFBhcmFjZWxzdXMgKEdyZWxsZ2VuLCAgMi4gRmViIDIwMDEsIDEzOjU2OjEyKToKfiMhIHJuPUFuYXRvbCBydD05ODExMTgwODMgcmc9c2NobWFycm4KfiMhIHRpZD05Nzg5NTc0MTQKSWNoIGhhYmUgbmljaHQgYmVoYXVwdGV0LCBkYXNzIE5hY2h0d2luZCBkaWUgR2lsZGUgbmljaHQga2VubnQgb2RlciBlaW5lciBkZXIKdmVyYW50d29ydGxpY2hlbiB1bmZhZWhpZyB3YWVyZS4KCldhcyBpY2ggc2FnZW4gd29sbHRlLCB3YXIgbnVyLCBkYXNzIGVzIG1pY2ggYW5rb3R6dCwgZGFzcyBpbW1lciBkaWUKa29tcGV0ZW50ZXN0ZW4gX1NlaGVyXyBzaWNoIGFubWFzc2VuLCBkaWUgVGFuamlhbiBiZXVydGVpbGVuIHp1IHdvbGxlbiwgb2huZQpkaWUgR2lsZGUgd2lya2xpY2ggenUga2VubmVuLgpCZWlzcGllbHN3ZWlzZSBnZWhvZXJ0IGRhIGVpbiBiaXNzY2hlbiBtZWhyIGRhenUgYWxzIG51ciBkYXMsIHdhcyAiaGludGVuCnJhdXNrb21tdCIuCgpTbywgJ251ZmYgc2FpZCwgenUgc2NoYWRlIHVtIGRpZSBaZWl0LgoKT25rZWwgR3JlbGxnZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11c3MgbWFsIGZlc3RnZWhhbHRlbiB3ZXJkZW4uIChab29rLCAgMi4gRmViIDIwMDEsIDE0OjI0OjUyKToKW1phdWJlcmVyOkFuYXRvbF0gRWluIEhvYmJpdCBpc3QgaW0gUHJpbnppcCBlaW4gaGFsYmllcnRlciBGZWxpbmUsIGRlciBkZW4KW1phdWJlcmVyOkFuYXRvbF0gUHVua3QgIkZlbGxwZmxlZ2UiIHZlcmdlc3NlbiBoYXQuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE9mZmVuZXIgQnJpZWYgYW4gUGFyYWNlbHN1cyAoQW5hdG9sLCAgMi4gRmViIDIwMDEsIDE3OjIxOjQ2KToKfiMhIHJuPUdvciBydD05ODExMzA3NjIgcmc9Z2lsZGVuLnRhbmppYW4KfiMhIHRpZD05Nzg5NTc0MTQKU2Nob24gZGFzIHp3ZWl0ZSBtYWwgaGV1dGUsIGRhc3MgaWNoIGRpZSBLb21wZXRlbnogdm9uIC4uLiBvZWggLi4uCkZ1cnR3YW5nZW4gYW56d2VpZmVsbiBtdXNzLCBvYndvaGwgZGllIGVudHNwcmVjaGVuZGVuIENoYXJha3RlcmUgYW5nZWJsaWNoCnNvd29obCAnaG9jaCcgc2luZCBhbHMgYXVjaCBnZXNwaWVsdCB3ZXJkZW4uCgpBc2NoZSBhdWYgbWVpbiBhcnJvZ2FudGVzIEVsZmVuaGF1cHQuLi4KCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogT2ZmZW5lciBCcmllZiBhbiBQYXJhY2Vsc3VzIChBbmF0b2wsICAyLiBGZWIgMjAwMSwgMjE6MDU6NTgpOgp+IyEgcm49R29yIHJ0PTk4MTE0NDEyMyByZz1naWxkZW4udGFuamlhbgp+IyEgdGlkPTk3ODk1NzQxNApXYXMgbmF0dWVybGljaCB3aWVkZXJ1bSBhdWNoIG51ciBEZWluZSBzdWJqZWt0aXZlIE1laW51bmcgaXN0LgoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBPZmZlbmVyIEJyaWVmIGFuIFBhcmFjZWxzdXMgKFNreSwgIDIuIEZlYiAyMDAxLCAyMToxNDoxMCk6Cn4jISBybj1Hb3IgcnQ9OTgxMTQ0MTIzIHJnPWdpbGRlbi50YW5qaWFuCn4jISB0aWQ9OTc4OTU3NDE0CgoKRGllc21hbCBzb2xsdGUgZXMgc3RpbW1lbi4uCgpYWFhYWFhYWFggdGVpbHQgRGlyIG1pdDogRW50d2VkZXIgaGF0IEZ1cnR3YW5nZW4gRGVpbmVuIEFydGlrZWwKWFhYWFhYWFhYIHRlaWx0IERpciBtaXQ6IG5pY2h0IHJpY2h0aWcgZ2VsZXNlbiBvZGVyIHdvaGwgZWluZmFjaApYWFhYWFhYWFggdGVpbHQgRGlyIG1pdDogbmljaHQgdmVyc3RhbmRlbig/KQoKU2t5IHNjaGFldHp0IG1hbCwgZGFzcyBiZWlkZXMgZGVyIEZhbGwgaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogT2ZmZW5lciBCcmllZiBhbiBQYXJhY2Vsc3VzIChHb3IsICAyLiBGZWIgMjAwMSwgMjE6MTc6MzYpOgp+IyEgcm49U2t5IHJ0PTk4MTE0NDg1MCByZz1zY2htYXJybgp+IyEgdGlkPTk3ODk1NzQxNApTdGltbXQsIHNvIGVpbmUgTGV2ZWxnZWlsaGVpdCB1bmQgZGllIEFuZ3N0LCBkYXNzIHdlciBhdXMgZWluZXIgYW5kZXJlbiBHaWxkZQplaW4gaG9laGVyZXMgTGV2ZWwgYWxzIG1hbiBzZWxiZXIgaGF0LCBrYW5uIG1hbiB0YXRzYWVjaGxpY2ggbmljaHQgdmVyc3RlaGVuLgoKR29yIHNjaGF1dCBhdWYgZGllIFJ1YnJpayB1bmQgbmlja3Qgd2Vpc2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLbGVyaWtlciBtdWVzc3QgbWFuIHNlaW4gKE1hZ2lydXMsICAyLiBGZWIgMjAwMSwgMjE6MTk6MjMpOgpFaWNoZW4gd2lya3QgZWluIFd1bmRlci4KTml4d2Vpcycgd2lkZXJsaWNoZXIgRnVyeiBoYXQgc2ljaCBlbmRsaWNoIHZlcnpvZ2VuLgoKTWFnaXJ1cywgd2llZGVyIG9obmUgQXRlbXNjaHV0egoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2IgZGllIHNpY2ggZWluaWcgd2VyZGVuPyAoS2hpc2FudGgsICAyLiBGZWIgMjAwMSwgMjE6NTc6MTIpOgoKTGFycyBnZWh0IHp1IFRvZCB1bmQgYmVnaW5udCBlaW4gR2VzcHJhZWNoLCBkYXMgRHUgbGVpZGVyIG5pY2h0IHZlcnN0ZWhlbiAKa2FubnN0LiBCZWlsYWV1ZmlnIG5pbW10IExhcnMgVG9kIGRpZSBTYW5kdWhyIGF1cyBkZW4gSGFlbmRlbiB1bmQgYmUtCnRyYWNodGV0IHNpZSBuZXVnaWVyaWcuCgoKQXJtYWdlZGRvbiBydWZ0OiBJbiAxMiBNaW51dGVuIHVuZCA0NyBTZWt1bmRlbiB3ZXJkZSBpY2ggZGllIFdlbHQgemVyc3RvZXJlbgpBcm1hZ2VkZG9uIHJ1ZnQ6IHVuZCBuZXUgZXJzY2hhZmZlbiEKCkhpbnRlciBUb2RzIFJ1ZWNrZW4gZHJlaHQgTGFycyBkaWUgU2FuZHVociB1bSB1bmQgc2NodWV0dGVsdCBzaWUgaGVmdGlnLgoKS2hpc2FudGgsIGltIEdlZGVua2VuIGFuIHNlaW5lbiBsZXR6dGVuIFRvZCB2b3JtIFJlYm9vdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogT2ZmZW5lciBCcmllZiBhbiBQYXJhY2Vsc3VzIChHYW5kdXIsICAyLiBGZWIgMjAwMSwgMjM6NDA6MzUpOgp+IyEgcm49R29yIHJ0PTk4MTE0NTA1NiByZz1zY2htYXJybgp+IyEgdGlkPTk3ODk1NzQxNAp1bmQgZHUgbWVpbnN0IGlociAoYnp3LiBkZWluZSBzcGllbGVyIHVuZCBlcikgbmVobXQgZXVjaCBkYSB3YXM/IDspCgpncnVzcywgZ2FuZHVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3NvIChFbGJlcmV0LCAgMy4gRmViIDIwMDEsIDAzOjU5OjA5KToKRG90eiBzYWd0OiBhY2gsIHdhcyBtdXNzIG1hbiBvZnQgdm9uIGJvZXNlbiBidWJlbiBob2VyZW4gb2RlciBsZXNlbi4gc28genUKRG90eiBzYWd0OiBiZWlzcGllbCBhdWNoIHZvbiBkaWVzZW4sIHdlbGNoZSBkb3R6IHVuZCBlbGJpIGhpZXNlbgoKSG1tLCBiaW4gaWNoIHNvb28gYm9lc2U/IAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFuIEFsbGUgKGFuIGVpbmlnZSBtZWhyLCBhbiBhbmRlcmUgd2VuaWdlcikgKEFuYXRvbCwgIDMuIEZlYiAyMDAxLCAxNTo1MzoyOCk6Cn4jISBybj1KYXNtaW4gcnQ9OTgxMjA4MTQ0IHJnPWdpbGRlbi50YW5qaWFuCn4jISB0aWQ9OTgxMjA4MTQ0CkxpZXMgRGVpbmVuIEFydGtlbCBub2NobWFsLgoKTm9jaG1hbC4KCk5PQ0hNQUwuCgpJc3QgRGlyIGV0d2FzIGF1ZmdlZmFsbGVuPwpOZWluPwoKU2NoYWRlLgoKQW5hdG9sIC0gZnJhZ3Qgc2llLCB3aWUgYmxpbmQgbWFuIGVpZ2VudGxpY2ggc2VpbiBrYW5uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFyYXRoLCAgMy4gRmViIDIwMDEsIDIyOjU3OjQ2KToKTGFrb3IgZnJhZ3Q6IE5hY2ggZ2lyZz8KTGFrb3IgZnJhZ3Q6IE5hY2ggZ2lmdD8KTGFrb3IgZ2x1ZWh0IHdpZSBpbSBGaWViZXIsIGthbm4gc2ljaCBrYXVtIG5vY2ggcnVlaHJlbiB1bmQgaGF0IGVpbgpzY2htZXJ6dmVyemVycnRlcyBHZXNpY2h0LiAKTGFrb3IgZ2x1ZWh0IHdpZSBpbSBGaWViZXIsIGthbm4gc2ljaCBrYXVtIG5vY2ggcnVlaHJlbiB1bmQgaGF0IGVpbgpzY2htZXJ6dmVyemVycnRlcyBHZXNpY2h0LiAKTGFrb3IgZ2x1ZWh0IHdpZSBpbSBGaWViZXIsIGthbm4gc2ljaCBrYXVtIG5vY2ggcnVlaHJlbiB1bmQgaGF0IGVpbgpzY2htZXJ6dmVyemVycnRlcyBHZXNpY2h0LiAKTGFrb3IgZ2x1ZWh0IHdpZSBpbSBGaWViZXIsIGthbm4gc2ljaCBrYXVtIG5vY2ggcnVlaHJlbiB1bmQgaGF0IGVpbgpzY2htZXJ6dmVyemVycnRlcyBHZXNpY2h0LiAKTGFrb3Igd2lyZCB2b24gR2lmdCBoaW53ZWdnZXJhZmZ0IHVuZCBraXBwdCB1bS4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpMYXJzXSBFaW5lIFZlcmdpZnR1bmcgaGF0IGdlcmFkZSBMYWtvciB1bWdlYnJhY2h0LgoKbm8gbW9yZSB0byBzYXkuLi4KQXJhdGgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCbGVpYnQgbWFsIGJ6dy4ga29tbXQgYXVmIGRlbiBCb2RlbiB6dXJ1ZWNrIChHcmVsbGdlbiwgIDQuIEZlYiAyMDAxLCAxMTozMTowNCk6Cn4jISBybj1QZXJ0aW5heGUgcnQ9OTgxMjM0NjQ3IHJnPWdpbGRlbi50YW5qaWFuCn4jISB0aWQ9OTgxMjM0NjQ3CkhvZW1tYSBQZXJ0aW5heGUsCgpzZWl0IHdhbm4gdmVyZ2xlaWNoc3QgRHUgZGVuIGxpZWJlbiBPbmtlbCBHcmVsbGdlbiBtaXQgZWluZXIgImFuZ2VzY2hvc3NlbmVuCldpbGRzYXUiID8/PwoKT25rZWwgR3JlbGxnZW4sIGVtcG9lcnQgdW5kIG5vY2ggbGFuZ2UgbmljaHQgYXVzZ2V6YWVobHQgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJsZWlidCBtYWwgYnp3LiBrb21tdCBhdWYgZGVuIEJvZGVuIHp1cnVlY2sgKERpZWRlciwgIDQuIEZlYiAyMDAxLCAxMzo1NTowOSk6Cn4jISBybj1Ob25uZSBydD05ODEyMzU2MjIgcmc9Z2lsZGVuLnRhbmppYW4KfiMhIHRpZD05ODEyMzQ2NDcKU2VociBnZWVocnRlIE5vbm5lLAoKZ2VuYXVzbywgd2llIG1hbiBkZW4gSGVhZGVyIGVpbmVyIFNQQU0tTWFpbCBlaW5lciBkZXRhaWxsaWVydGVuIEFuYWx5c2UKdW50ZXJ6aWVoZW4ga2FubiwgdW0gZmVzdHp1c3RlbGxlbiwgd28gbWFuIHNpY2ggYmVzY2h3ZXJlbiBtdXNzLCBsYWVzc3QKc2ljaCBtaXR0ZWxzIGRlcyAiZmluZ2VyIi1CZWZlaGxzIHp1bWluZGVzdCBlaW5lIGdyb2JlIEVpbnNjaGFldHp1bmcgZGVzCmJldHJlZmZlbmRlbiBDaGFyYWt0ZXJzIHZvcm5laG1lbi4gTnVuLCBTaWUgd29sbHRlbiBlaW5lIEVybGFldXRlcnVuZyBkZXMKdm9uIElobmVuIGFuZ2VmdWVocnRlbiAiQXVzc2Nobml0dHMiIGVpbmVzIENoYXJha3RlcnMuIERpZXNlciBFcmxhZXV0ZXJ1bmcKd2lsbCBpY2ggaGllcm1pdCBuYWNoa29tbWVuLCBpbmRlbSBpY2ggSWhuZW4gaW0gZm9sZ2VuZGVuIGRhcmxlZ2VuIG1vZWNodGUsCndpZSBtYW4gZGFzIEVyZ2VibmlzIGVpbmVzIGZpbmdlci1CZWZlaGxzIGxlc2VuIGthbm4uCgpCZXRyYWNodGVuIHdpciB6dW5hZWNoc3QgZGllIGVyc3RlIFplaWxlLiBEaWVzZSBzYWd0IGxlZGlnbGljaCBhdXMsIG9iIGRlcgpiZXRyZWZmZW5kZSBDaGFyYWt0ZXIgZ2VyYWRlIGFuIGRpZXNlciB3dW5kZXJzY2hvZW5lbiBXZWx0IHBhcnRpemlwaWVydApvZGVyIG5pY2h0LiBXaWUgU2llIHJpY2h0aWcgZXJrYW5udCBoYWJlbiwgaXN0IGRpZXMgbmljaHQgYWxsenUgc2VociB2b24KQmVsYW5nLCBkYXJ1bSBoYWJlbiBTaWUgc2llIGZvbGdlcmljaHRpZyBpbiBJaHJlbSBhbmdlZnVlaHJ0ZW4gQmVpc3BpZWwKYXVjaCB3ZWdnZWxhc3Nlbi4KCk51ciB1bndlc2VudGxpY2ggaW50ZXJlc3NhbnRlciBzaW5kIGRpZSBmb2xnZW5kZW4gendlaSBaZWlsZW4uIEhpZXIgbGFlc3N0CnNpY2ggenVtIGVpbmVuIGVya2VubmVuLCB3b2hlciBkZXIgYmV0cmVmZmVuZGUgQ2hhcmFrdGVyIGVpbmdlbG9nZ3QgaXN0Cm9kZXIgd2FyIChzZWl0IE5ldWVzdGVtIGR1ZXJmZW4gU3BpZWxlciBoaWVyIGF1Y2ggc28gc2lubnZvbGxlIEFuZ2FiZW4gd2llCiJ2b24gWnVoYXVzZSIsICJ2b24gbWVpbmVtIFJlY2huZXIiIG9kZXIgInZvbSBJbnRlcm5ldCIgbWFjaGVuKSwgdW5kIHp1bQphbmRlcmVuLCBzZWl0IHdhbm4gZGVyamVuaWdlIGVpbmdlbG9nZ3QgaXN0IG9kZXIgd2FubiBlciBlcyBkYXMgbGV0enRlIE1hbAp3aXJrbGljaCBnZXNjaGFmZnQgaGF0LCBzaWNoIGF1c3p1bG9nZ2VuLiBEYSBiZWlkZSBaZWlsZW4gYXVjaCBrZWluZSBhbGx6dQpncm9zc2UgQXVzc2FnZWtyYWZ0IGJlc2l0emVuIChkYXMgRWlubG9nZ2RhdHVtIGJ1Z3QgenVkZW0gYWIgdW5kIGFuKSwgaGFiZW4KU2llIHNpZSBsb2VibGljaGVyd2Vpc2UgaW4gSWhyZW0gQmVpc3BpZWwgZWJlbmZhbGxzIGF1c2dlc2NobG9zc2VuLgoKS29tbWVuIHdpciBudW4gbGFuZ3NhbSBhYmVyIHNpY2hlciB6dW0gaW50ZXJlc3NhbnRlbiBUZWlsLiBBbHMgbmFlY2hzdGVzCmZvbGd0IHN0ZXRzIGRlciB2b2xsZSBOYW1lIGRlcyBiZXRyZWZmZW5kZW4gQ2hhcmFrdGVycy4gRGEgZGllc2VyLCBzb2JhbGQKZGVyIENoYXJha3RlciAoenVtaW5kZXN0IGZvcm1hbCkgZGVuIFN0YXR1cyBlaW5lcyAiU2VoZXJzIiBlcnJlaWNodCBoYXQsCmZyZWkgZ2V3YWVobHQgdW5kIGdlYWVuZGVydCB3ZXJkZW4ga2Fubiwga2FubiBtYW4gaGllciBhdXMgb2JqZWt0aXZlciBTaWNodAp3ZW5pZyBkYXp1IHNhZ2VuIC0gZXMgc29sbCBhYmVyIENoYXJha3RlcmUgZ2ViZW4sIGRpZSBzaWNoIGFuaGFuZCB2b2VsbGlnCmFic3RydXNlciBUaXRlbCBzY2hvbiBsYWVjaGVybGljaCBnZW1hY2h0IGhhYmVuLCBvZGVyIGJlaSBkZW5lbiBtYW4KYXVmZ3J1bmQgZGVyIFRhdHNhY2hlLCBkYXNzIGRlciBUaXRlbCBtZWhyIGFscyBlaW5lIFplaWxlIHVtZmFzc3QsIGF1ZiBlaW4KZ2VzdGVpZ2VydGVzIEdlbHR1bmdzYmVkdWVyZm5pcyBzY2hsaWVzc2VuIG11c3MuCgpTb3ZpZWwgenVtIGVpbmxlaXRlbmRlbiwgd2VuaWcgYXVzc2FnZWtyYWVmdGlnZW4gR2VwbGFlbmtlbCBkZXMgImZpbmdlciItClJlc3VsdGF0cy4gU3RlaWdlbiB3aXIgbnVuIHdlaXRlciBoaW5hYiwgaW5kZW0gd2lyIGVpbiBiZXNvbmRlcmVzIEF1Z2VuLQptZXJrIGF1ZiBkaWUgbmFlY2hzdGVuLCB2b24gSWhuZW4gbnVubWVociBhbmdlZnVlaHJ0ZW4gWmVpbGVuIChkaWVzZSBzaW5kCmVudHNjaGVpZGVuZCwgU2llIGhhYmVuIGVzIHNjaG9uIGJlbWVya3QhKSB3ZW5kZW4uCgpEaWUgWmVpbGUsIGRpZSBudW4gdW5zZXJlIEF1Zm1lcmtzYW1rZWl0IGZlc3NlbHQsIGlzdCBkaWVqZW5pZ2UsIGFuIGRlcgptYW4gUmFzc2UsIEdpbGRlIHVuZCBHZXNjaGxlY2h0IGRlcyBQcm9iYW5kZW4gYWJsZXNlbiBrYW5uLiBOdW4sIHp1ciBSYXNzZQpnaWJ0IGVzIG5pY2h0IHZpZWwgenUgc2FnZW4uIFNpZSBrYW5uIGZyZWkgZ2V3YWVobHQgd2VyZGVuLCB1bmQgZGEgZXMgc2ljaApoaWVyIHVtIGVpbiBTcGllbCAoKmh1c3QqICprb3Bma3JhdHoqKSBoYW5kZWx0LCBzb2xsdGUgbWFuIGF1Y2ggbmljaHQgdm9uCmRlciBCZWhhYXJ1bmcsIEludGVsbGlnZW56IG9kZXIgc2V4dWVsbGVyIFZlcmhhbHRlbnN3ZWlzZSBhdWYgZGVuIFJMLQpNZW5zY2hlbiBkYWhpbnRlciBzY2hsaWVzc2VuLiBBdWNoIGRpZSBHaWxkZSBoYXQgaW0gR3J1bmRlIG5pY2h0cyB6dSBzYWdlbiwKZGEgZGllc2UgKHdpZSBBbmF0b2wgc28gdHJlZmZlbmQgZXJ3YWVobnQgaGF0KSwgcmVpbiBhdXMgR3J1ZW5kZW4gZGVzCkdlc2NobWFja3MsIEZsYWlycyB1bmQgU3Bhc3NlcyBnZXdhZWhsdCB3aXJkLCBhZWgsIGdld2FlaGx0IHdlcmRlbiBzb2xsdGUuCkRhc3MgaW4gSWhyZW0gQmVpc3BpZWwgYXVzZ2VyZWNobmV0IF9kaWVfIEdpbGRlIGF1ZmdlZnVlaHJ0IGlzdCwgZGllIGluCmxldHp0ZXIgWmVpdCBzb3dpZXNvIGxhdWZlbmQgZ2ViZXV0ZWx0IHdpcmQsIGlzdCB3b2hsIHJlaW4genVmYWVsbGlnLiBEZXIKcHJpbWFlciB3aWNodGlnc3RlIEtuYWNrcHVua3QgYWJlciBzdGVsbHQgaW4gZGllc2VyIFplaWxlIGVpbmRldXRpZyBkYXMKR2VzY2hsZWNodCBkYXIsIHdlbGNoZXMgd2lyIGdsZWljaCBlaW5tYWwgaW0gSGludGVya29wZiBiZWhhbHRlbiBzb2xsdGVuLgpEb2NoIGRhenUga29tbWVuIHdpciBnbGVpY2ggbm9jaC4KCkRpZSBsZXR6dGVuIGRyZWkgdm9uIElobmVuIGFuZ2VmdWVocnRlbiBaZWlsZW4gc3RlbGxlbiB3b2hsIGRpZSBFc3NlbnogZGVzCkNoYXJha3RlcnMgZGFyIHVuZCBzaW5kIGF1c3NjaGxhZ2dlYmVuZCBmdWVyIGRpZSB2b24gSWhuZW4gZ2VzdGVsbHRlCkZyYWdlLiBIaWVyIGtvZW5uZW4gd2lyIGFibGVzZW4sIHdpZXZpZWxlIE9ubGluZS1UYWdlIGRlciBiZXRyZWZmZW5kZQpDaGFyYWt0ZXIgYmVyZWl0cyBoaWVyIHBhcnRpemlwaWVydCBoYXQsIHdlbGNoZW4gU3BpZWxlcmxldmVsIChTZWhlciBvZGVyCm5pY2h0KSBlciBiZXNpdHp0LCB3ZWxjaGVuIExldmVsIGVyIGluIGRlciBvYmVuIGdlc2VoZW5lbiBHaWxkZSBoYXQsIHdhbm4KZXIgenVtIGVyc3RlbiBNYWwgZGFzIFRhZ2VzbGljaHQgaW4gZGllc2VyIEdlbWVpbmRlIGVyYmxpY2t0ZSB1bmQgd2llIG9mdAplciBiZXJlaXRzIGJlaSBMYXJzIGF1ZiBlaW5lbiBTcHJ1bmcgdm9yYmVpIGdlc2NoYXV0IGhhdC4KCktvbW1lbiB3aXIgbnVuIHp1bSBzcGFubmVuZHN0ZW4gVGVpbCBtZWluZXIgQXVzZnVlaHJ1bmdlbiAtIG5hZW1saWNoIGRlcgpJbnRlcnByZXRhdGlvbiBlYmVuIGRpZXNlciBsZXR6dGVuIDMgWmVpbGVuLgoKRGllIFRhdHNhY2hlLCBkYXNzIFNpZSBkYXMgdm9uIElobmVuIGF1ZmdlZnVlaHJ0ZSBCZWlzcGllbCBtaXQgIkVyc3RpZSIKdWViZXJzY2hyaWViZW4gaGFiZW4sIGVuZ3QgZGllIFVlYmVybGVndW5nZW4gaW4gZWluZSBSaWNodHVuZyBlaW4sIGRpZQpqZWRvY2ggbGFuZ3dpZXJpZ2VyIHp1IGVybGFldXRlcm4gaXN0IC0gYmVpIGVpbmVtIFp3ZWl0aWUgd2FlcmUgaWNoIGpldHp0Cm1pdCBkZW4gV29ydGVuICJad2VpdGllLCBrZW5udCBhbGxlcywgaGF0IGdyb3NzZW4gRXJzdGllIGhpbnRlciBzaWNoIgpmZXJ0aWcuCgpOdW4sIGVzIGlzdCB1bnNjaHdlciB6dSBlcmtlbm5lbiwgZGFzcyBkZXIgZ2VuYW5udGUgUHJvYmFuZCB6dW0gcmVjaHQgIm5ldSIKaXN0ICh6dSBlcmtlbm5lbiBhbSAianVuZ2VuIiBFcnN0bG9naW4pLCBhYmVyIGF1ZiBkZXIgYW5kZXJlbiBTZWl0ZSBkb2NoCnNjaG9uIHJlY2h0IHZpZWxlIE9ubGluZXRhZ2UgYXVmIGRlbSBCdWNrZWwgaGF0LiBSZWNobmV0IG1hbiBkYXMgaG9jaCwKa29tbXQgbWFuIGF1ZiBlaW5lIE9ubGluZXplaXQgdm9uIGNhLiBlaW5lciBXb2NoZSBwcm8gTW9uYXQsIHdhcyBkb2NoCnJlY2h0IGFuc2VobmxpY2ggaXN0IC0gaW1tZXJoaW4gZ2VodCBlaW4gVmllcnRlbCBkZXIgZ2VzYW10ZW4gWmVpdCBvZGVyCjYgU3R1bmRlbiBhbSBUYWcgZHJhdWYsIHNjaGxhZmVuIHNvbGx0ZSBtYW4gamEgYXVjaCBub2NoLCB1bmQgdmllbGxlaWNodApoYXQgbWFuIHNvZ2FyIG5vY2ggZWluZW4gQmVydWY/CgpBYmVyIGd1dCwgd2VuZGVuIHdpciB1bnMgZGVtIGVycmVpY2h0ZW4gU3BpZWxlci0gdW5kIEdpbGRlbmxldmVsIHp1LiBFcyBpc3QKd29obCBzZWhyIGVyc2ljaHRsaWNoLCBkYXNzIGRpZXNlciBpbSBWZXJnbGVpY2ggenUgRXJzdGxvZ2luIHVuZCBBbHRlciBkZXMKUHJvYmFuZGVuIHNlaHIgaG9jaCBpc3QgKG1hbiBiZWFjaHRlIGRhYmVpIGVybmV1dCBkaWUgVGF0c2FjaGUgZGVzICJFcnN0aWUiCnNvd2llIC0genVyIEJldXJ0ZWlsdW5nIGRlcyBHaWxkZW5sZXZlbHMgLSBkaWUgR2lsZGUpLiBVbmQgd2VubiBtYW4gZGFubgpub2NoIHNpZWh0LCBkYXNzIGRlciBDaGFyYWt0ZXIgd2FlaHJlbmQgc2VpbmVzIGJpc2hlcmlnZW4gV2VyZGVnYW5ncyBnZXJhZGUKbWFsIGxhZWNoZXJsaWNoZSAxMyBTdGlwcHZpc2l0ZW4gYmVpIHVuc2VyIGFsbGVyIEZyZXVuZCwgZGVtIFNjaG5pdHRlciwKYWJzb2x2aWVydCBoYXQsIHNvIG1hZyBtYW4gc2ljaCBpbiBkZXIgVGF0ICh3aWUgU2llIGRhcyBzbyB0cmVmZmVuZCBnZXRhbgpoYWJlbikgZnJhZ2VuLCB3aWUgc28gZXR3YXMgbW9lZ2xpY2ggaXN0LgoKQWxsZWluIGRpZSBUYXRzYWNoZSwgZGFzcyBlcyBzaWNoIGhpZXIgdW0gZWluZW4gQ2hhcmFrdGVyIHdlaWJsaWNoZW4KR2VzY2hsZWNodGVzIGhhbmRlbHQsIG1hZyB6d2FyIGZ1ZXIgdmllbGUgTGV1dGUgYWxzIEJlZ3J1ZW5kdW5nIHNjaG9uCmF1c3JlaWNoZW5kIHNlaW4sIGRvY2ggbmVpbiEgTWFuIG11c3MgbWl0IGRpZXNlbSBWb3J0ZWlsIGF1Y2ggcmljaHRpZwp1bXp1Z2VoZW4gd2lzc2VuLiBJY2ggZ2ViZSB6dSwgZGFzcyBlcyBTcGllbGVyIGdpYnQsIGJlaSBkZW5lbiBhbGxlaW4gZGFzCldvcnQgIndlaWJsaWNoIiBiZWltICJmaW5nZXJuIiB6dSBlaW5lciBzb2xjaGVuIHJlbGF0aW9uYWxlbiBJbnN1ZmZpemllbnoKZnVlaHJ0LCBkYXNzIG1hbiBzaWNoIGFscyAiT3BmZXIiIG5pY2h0IHdlaXRlciBhbnN0cmVuZ2VuIG11c3MsIHVtIGJlc3RlCkF1c3J1ZXN0dW5nLCBRdWVzdHRpcHMsIE1ldHplbGhpbGZlLCBTa3JpcHRlIG9kZXIgZWluZSBrb21wbGV0dGUgUGFyYXdlbHQtCkZ1ZWhydW5nIGlua2wuIGRlciBBbmdhYmUgYWxsZXIgVW5pcXVlcyB6dSBiZWtvbW1lbi4gRGllc2UgU3BpZWxlciBzdGVsbGVuCmplZG9jaCBlaW5lIE1pbmRlcmhlaXQgZGFyLgoKTWFuIGthbm4gamVkb2NoIGFuIGRpZSBvYmVuIGJlc2NocmllYmVuZW4gRGluZ2Uga29tbWVuLCBpbmRlbSBtYW4gc2ljaAptb2VnbGljaHN0IGhpbGZsb3MsIHVuc2NodWxkaWcgb2RlciBlaW5mYWNoIG51ciAic3Vlc3MiIGdpYnQuIERpZXNlIEZha3RvcmVuLAp6dSBkZXJlbiBFcnJlaWNoZW4gZXMgYWxsZXJkaW5ncyBnZXdpc3NlciBWZXJoYWx0ZW5zd2Vpc2VuIGJlZGFyZiwgZGllCmR1cmNoYXVzIGVpbm1hbCBlaW4gYmlzc2NoZW4gQXJiZWl0IGtvc3RlbiBrb2VubmVuLCBmdWVocmVuIGRhbm4gaW1tZXJoaW4KYmVpIGVpbmVtIGdyb2Vzc2VyZW4gU3BpZWxlcmtyZWlzIGFscyBkZW0gb2JlbiBiZXNjaHJpZWJlbmVuIHp1bSBnZXd1ZW5zY2h0ZW4KRXJnZWJuaXMuCgpOdW5kZW5uLCBhdWNoIFNwaWVsZXIgc2luZCBuaWNodCBwZXJmZWt0LCB1bmQgc28gd2lyZCBkZXIgVGFnIGtvbW1lbiwgYW4gZGVtCm1hbiB2b24gc2VpbmVtIFZvcmJpbGQvRnJlaW1ldHpsZXIvRlAtWmVpZ2VyL0Vyc3RraWxsLVp1dHJhZWdlci8uLi4gbmljaHRzCm1laHIgcHJvZml0aWVyZW4ga2Fubiwgd2VpbCBtYW4gaWhuIGVpbmdlaG9sdCBoYXQuIEhpZXIgaXN0IGVzIG51biBhbmdlcmF0ZW4sCnp1bSBuYWVjaHN0aG9laGVyZW4gUGFwaSB6dSB3ZWNoc2VsbiwgZGVyIGVpbmVuIG5vY2ggbWVociB3ZWl0ZXJicmluZ2VuIGthbm4uCk1hbiBrYW5uIG5hdHVlcmxpY2ggYXVjaCBkaWUgRnJlY2hoZWl0IGJlc2l0emVuLCBlaW5tYWwgd2lya2xpY2ggc2VsYmVyCmxvc3p1emllaGVuLCB6dSBmb3JzY2hlbiB1bmQgenUgbWV0emVsbiwgdW5kIGZvbGdlcmljaHRpZyBhdWNoIG1hbCB6dSBzdGVyYmVuLgpMZXR6dGVyZXMgcGFzc2llcnQgbmF0dWVybGljaCBudXIsIHdlbm4gbWFuIHNpY2ggaW4gZWluZXIgR2lsZGUgdW5nbGVpY2ggZGVyCnZvbiBEaXIgYW5nZWZ1ZWhydGVuIGJlZmluZGV0LgoKSGFzdCBEdSBudW4gZ2VzZWhuLCB3aWUgbWFuIGVpZ2VudGxpY2ggYXVzIGVpbmVyIGVpbnppZ2VuIFplaWxlIGltICJmaW5nZXIiCihuYWVtbGljaCB1ZWJlciBHaWxkZSB1bmQgR2VzY2hsZWNodCkgZGllIHZvbiBEaXIgZ2VzdGVsbHRlbiBGcmFnZW4gYmVhbnQtCndvcnRlbiBrYW5uPyBEYXMgc2luZCBuYXR1ZXJsaWNoIGFsbGVzIG51ciBnZXdhZ3RlIEludGVycHJldGF0aW9uZW4gdm9uIG1pciwKYWJlciBzbyBrb2VubnRlIGVzIHNpY2ggenVnZXRyYWdlbiBoYWJlbi4uLgoKTWl0IGZyZXVuZGxpY2hlbiBHcnVlc3NlbiwKRGllZGVyLCBDaGFvdC4KClBTOiBLb2VubnRlc3QgRHUgbWlyIGVpbm1hbCBiZWkgR2VsZWdlbmhlaXQgdW50ZXIgdmllciBBdWdlbiBkZW4gTmFtZW4gRGVpbmVzCiAgICBCZWlzcGllbHMgbmVubmVuPyBEYW5uIGtvZW5udGUgaWNoIG1laW5lIFRoZXNlbiBlaW5tYWwgdWViZXJwcnVlZmVuLi4uCgpQUFM6IHNjbnIsIGRhZnVlciBzdGVodCBhYmVyIGRlciBBcnRpa2VsIGluIGRlciByaWNodGlnZW4gUnVicmlrIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQmxlaWJ0IG1hbCBiencuIGtvbW10IGF1ZiBkZW4gQm9kZW4genVydWVjayAoRGFyaWEsICA0LiBGZWIgMjAwMSwgMTQ6MDE6MjcpOgp+IyEgcm49RGllZGVyIHJ0PTk4MTI5MTMwOSByZz1zY2htYXJybgp+IyEgdGlkPTk4MTIzNDY0NwpBbHNvIGRhcyBmb2xnZW5kZSBzYWd0IGRvY2ggYWxsZXMuLi4KW01vZXJkZXI6R2Vpc3QgZWluZXMgc2liaXJpc2NoZW4gVGlnZXJzXSBXYWVyIGljaCBUYW5qaWFuLCBoYWV0dGVzdCBEdSBkYXMKW01vZXJkZXI6R2Vpc3QgZWluZXMgc2liaXJpc2NoZW4gVGlnZXJzXSBuaWNodCBnZXNjaGFmZnQsIEdvb2Z5IQoKV2VubiBzY2hvbiBkaWUgTlBDcyBzbyBkZW5rZW4uLi4uCgpJY2ggbWVpbiwgd2VyIGtlbm50IGRhcyBNRyBiZXNzZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCbGVpYnQgbWFsIGJ6dy4ga29tbXQgYXVmIGRlbiBCb2RlbiB6dXJ1ZWNrIChXdXJ6ZWwsICA0LiBGZWIgMjAwMSwgMTQ6MDM6MDUpOgp+IyEgcm49RGFyaWEgcnQ9OTgxMjkxNjg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgxMjM0NjQ3CmhtLiBpc3QgZGFzIHNvPwptdXNzIGRvY2ggbWFsIHNjaGF1ZW4sIG9iIG1hbiBuaWNodCBlaW4gcGFhciBucGNzIHVtc3RlbGxlbiBrYW5uLi4uCndvIGxpZWd0IGRlciBzdGFuZGFyZC10YW5qaWFuLW5wYyBub2NobWFsPwoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCbGVpYnQgbWFsIGJ6dy4ga29tbXQgYXVmIGRlbiBCb2RlbiB6dXJ1ZWNrIChHb3IsICA0LiBGZWIgMjAwMSwgMTQ6MDM6MzcpOgp+IyEgcm49RGFyaWEgcnQ9OTgxMjkxNjg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgxMjM0NjQ3CkRpZXNlIGJlc29uZGVycyBnZXNjaG1hY2t2b2xsZW4sIG5ldWVuIE1PZXJkZXJtZWxkdW5nZW4gc2luZCBlaW4gYW5kZXJlcwpUaGVtYS4gOikgQWxzbyBiaXR0ZSBub2NoIG5lbiBuZXVlbiBUaHJlYWQuIFNvbnN0IHZlcmdlc3NlbiB3aXIgdGF0c2FlY2hsaWNoLAp3b3J1bSBlcyB1ZWJlcmhhdXB0IGdpbmcuIEFiZXIgR3JpbW1ib3JuIHdpcmQgdW5zIGRpZXNlcyBNYWwgYmVzdGltbXQgd2llZGVyCmF1ZiBkZW4ga2VybiBkZXIgRGlza3Vzc2lvbiB6dXJ1ZWNrZnVlaHJlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJsZWlidCBtYWwgYnp3LiBrb21tdCBhdWYgZGVuIEJvZGVuIHp1cnVlY2sgKE5vbm5lLCAgNC4gRmViIDIwMDEsIDE2OjQ0OjM2KToKfiMhIHJuPURpZWRlciBydD05ODEyOTEzMDkgcmc9c2NobWFycm4KfiMhIHRpZD05ODEyMzQ2NDcKV2VubiBEZWluIEFydGlrZWwgbmljaHQgc28gZnVlcmNodGVybGljaCBpcm9uaXNjaCBrbGluZ2VuIHd1ZXJkZSwga2FlbWUgaWNoIGluClZlcnN1Y2h1bmcsIERpY2ggenUgZnJhZ2VuLCBvYiBEaXIgJ3JoZXRvcmlzY2hlIEZyYWdlJyBldHdhcyBzYWd0Li4uCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFldHNjaCBCYW1iaSAoRGFyaWEsICA0LiBGZWIgMjAwMSwgMTY6NTc6MTMpOgpCYW1iaSBydWZ0OiBEVVJDSCEgSUNIIEJJTiBEVVJDSCEKClRqYSwgd29obCBkb2NoIG5jaWh0Li4uICpmaWVzZ3JpbnMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp2b24gZGVyIGRpc3ppcGxpbiBkZXIga2FlbXBmZXJnaWxkZSAoSm9obm55Ym9zcywgIDQuIEZlYiAyMDAxLCAxNzoxNDo1MCk6CmVpbmUgZ2FueiBub3JtYWxlIFZlcmVpZGlndW5nCgouLi5ibGFibGFibGEuLi4uc2Nod2FsbC4uLi4KJ1dpZSBpY2ggaW4gbWVpbmVuIFVudGVybGFnZW4gc2VoZSwgYmVrb21tc3QgRHUgNjUgTXVlbnplbiBhbiBTb2xkLCBhdWNoIHdlbm4KIER1IGVzIG5pY2h0IHZlcmRpZW50IGhhc3QhIERpZSBMb2hua29zdGVuIHdlcmRlbiBkYXMgU3RydXYgbm9jaCBiYW5rcm90dAogbWFjaGVuIScKU29sbXlyIHN0ZWNrdCA2NSBNdWVuemVuIGluIGVpbmUgR2VsZGJvZXJzZS4KS2xvaXJlbiBFaXNlbmhlbG0gZ2lidCBTb2xteXIgNjUgTXVlbnplbi4KR29yZHVyIHNhbHV0aWVydCB2b3IgS2xvaXJlbiBFaXNlbmhlbG0uClNvbG15ciBzdGVodCByaWNodGlnIHNjaG9lbiBzdGlsbC4KU29sbXlyIHNhbHV0aWVydCB2b3IgQnJpZXNlbHRyaW0uCkdhbGJyYWl0aCBzYWx1dGllcnQgdm9yIEtsb2lyZW4gRWlzZW5oZWxtLgpBbG1kdWRsZXIgZ3JpbnN0LgpHb3JkdXIgZnJhZ3QgS2xvaXJlbiBFaXNlbmhlbG0gbmFjaCBTb2xkLgpLbG9pcmVuIEVpc2VuaGVsbSBzYWd0OiAKJ1dpZSBpY2ggaW4gbWVpbmVuIFVudGVybGFnZW4gc2VoZSwgYmVrb21tc3QgRHUgNjAgTXVlbnplbiBhbiBTb2xkLCBhdWNoIHdlbm4KIER1IGVzIG5pY2h0IHZlcmRpZW50IGhhc3QhIERpZSBMb2hua29zdGVuIHdlcmRlbiBkYXMgU3RydXYgbm9jaCBiYW5rcm90dAogbWFjaGVuIScKS2xvaXJlbiBFaXNlbmhlbG0gZ2lidCBHb3JkdXIgNjAgTXVlbnplbi4KSGludGVyIExpc3Qgc2FndDogRGVyIHp3ZWl0ZSBTY2h3dXIhIEJlc3RpbW10aGVpdCBzZWkgdW5zZXJlIGVyc3RlIFR1Z2VuZCwKSGludGVyIExpc3Qgc2FndDogZGllIFRyZXVlIHp1IFdlZyB1bmQgWmllbCBlaXNlcm4uIERlbSByZWNodGVuIEVudHNjaGx1c3MKSGludGVyIExpc3Qgc2FndDogdmVycGZsaWNodGVuIHdpciB1bnMgbWl0IGRlbSBQZmFuZCB1bnNlcmVzIExlYmVucy4KW01vZXJkZXI6VmFyZGlvbl0gbmEgZGFzIHdhZXIgZG9jaCBtYWwgbmUgYXVmd2VydHVuZyA7KQpQZXJ0aW5heGUgd2lyZnQgZWluZW4gRmxpcHBlcmZsdW1taWUuIE1pdCBlaW5lciB3YWhuc2lubmlnZW4gR2VzY2h3aW5kaWdrZWl0CnJhc3QgZXIgZHVyY2ggZGVuIFJhdW0uCkVpbiBGbGlwcGVyZmx1bW1pZSBmbGllZ3QgZ2VnZW4gRGVpbmVuIEtvcGYuIER1IGhvZXJzdCBlaW46IEF1QXVBdS4KRWluIEZsaXBwZXJmbHVtbWllIGh1ZXBmdCB6dXJ1ZWNrIGluIFBlcnRpbmF4ZXMgSGFuZC4KQ2h1Y2t5bGVpbiBzYWd0OiBtaXN0IEVTU0VOIQpTb2xteXIgZnJhZ3QgQnJpZXNlbHRyaW0gbmFjaCBCZWZvZXJkZXJ1bmcuCkJyaWVzZWx0cmltIHNhZ3Q6IExhc3MgbWljaCBpbiBSdWhlISBJY2ggaGFiIGhpZXIgd2ljaHRpZ2VzIHp1IGVybGVkaWdlbiEKR2FsYnJhaXRoIGZyYWd0IEtsb2lyZW4gRWlzZW5oZWxtIG5hY2ggU29sZC4KS2xvaXJlbiBFaXNlbmhlbG0gc2FndDogCidXaWUgaWNoIGluIG1laW5lbiBVbnRlcmxhZ2VuIHNlaGUsIGJla29tbXN0IER1IDEwMCBNdWVuemVuIGFuIFNvbGQsIGF1Y2ggd2VubgogRHUgZXMgbmljaHQgdmVyZGllbnQgaGFzdCEgRGllIExvaG5rb3N0ZW4gd2VyZGVuIGRhcyBTdHJ1diBub2NoIGJhbmtyb3R0CiBtYWNoZW4hJwpLbG9pcmVuIEVpc2VuaGVsbSBnaWJ0IEdhbGJyYWl0aCAxMDAgTXVlbnplbi4KQ2h1Y2t5bGVpbiBncnVtbWVsdC4KVHJhdW1hIHN0YXJydCBkZXIgQXJ6dGhlbGZlcmluIHRpZWYgaW4gZGllIEF1Z2VuIHVuZCBzYWd0OiBTdG9laG5lIQpFaW5lIEFyenRoZWxmZXJpbiBiZWdpbm50IGx1c3R2b2xsIHp1IHN0b2VobmVuLi4uIEhvbGxhLCB3YXMgZnVlciBCZW5laG1lbiEKIDpzY2htZWlzc3QgQnJpZXNlbCBlaW5lbiBIYXVmZW4gaW5zIEdlc2ljaHQKPkpvaG5ueWJvc3Mgc2NobWVpc3N0IEJyaWVzZWwgZWluZW4gSGF1ZmVuIGlucyBHZXNpY2h0Cj4gR2FsYnJhaXRoIHN0ZWNrdCAxMDAgTXVlbnplbiBpbiBlaW5lIEdlbGRib2Vyc2UuClRyYXVtYSBzdGFycnQgSGludGVyIExpc3QgdGllZiBpbiBkaWUgQXVnZW4gdW5kIHNhZ3Q6IFN0b2VobmUhCkhpbnRlciBMaXN0IGJlZ2lubnQgbHVzdHZvbGwgenUgc3RvZWhuZW4uLi4gSG9sbGEsIHdhcyBmdWVyIEJlbmVobWVuIQpEdSBzY2hhdXN0IGRlemVudCB3ZWcsIGFscyBzaWNoIEdhbGJyYWl0aCB1bmQgZWluZSBBcnp0aGVsZmVyaW4gdmVybGllYnQgaW4KZGllIEFybWUKc2lua2VuLgpTY3lsbGEgc2FndDogQmVzdGltbXRoZWl0IHNlaSB1bnNlcmUgZXJzdGUgVHVnZW5kLCBkaWUgVHJldWUgenUgV2VnIHVuZCBaaWVsClNjeWxsYSBzYWd0OiBlaXNlcm4uIERlbSByZWNodGVuIEVudHNjaGx1c3MgdmVycGZsaWNodGVuIHdpciB1bnMgbWl0IGRlbSBQZmFuZApTY3lsbGEgc2FndDogdW5zZXJlcyBMZWJlbnMuCiA6c2NobWVpc3N0IEhpbnRlciBMaXN0IGVpbmVuIEhhdWZlbiBpbnMgR2VzaWNodAo+Sm9obm55Ym9zcyBzY2htZWlzc3QgSGludGVyIExpc3QgZWluZW4gSGF1ZmVuIGlucyBHZXNpY2h0Cj4gSGludGVyIExpc3QgYmVnaW5udCBsdXN0dm9sbCB6dSBzdG9laG5lbi4uLiBIb2xsYSwgd2FzIGZ1ZXIgQmVuZWhtZW4hCkVpbmUgQXJ6dGhlbGZlcmluIGJlZ2lubnQgbHVzdHZvbGwgenUgc3RvZWhuZW4uLi4gSG9sbGEsIHdhcyBmdWVyIEJlbmVobWVuIQpHb3JkdXIgZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KQWxtZHVkbGVyIHN0ZWh0IHJpY2h0aWcgc2Nob2VuIHN0aWxsLgpBbG1kdWRsZXIgc2FsdXRpZXJ0IHZvciBLbG9pcmVuIEVpc2VuaGVsbS4KW01vZXJkZXI6R2Vpc3QgZWluZXIgQmFuc2hlZV0gVG93ZXIgaXN0IGVpbiBNZXR6ZWxza3JpcHQsIGljaCBoYWIncyBnZW5hdQpbTW9lcmRlcjpHZWlzdCBlaW5lciBCYW5zaGVlXSBnZXNlaGVuIQpTb2xteXIgZ3JpbnN0IFNjeWxsYSBhbi4KQ2h1Y2t5bGVpbiBzYWd0OiB3YXJ1bSBiZWtvbW1zdCBkdSAxMDAgbXVlbnplbj8/Pz8/Pz8/Pz8/CkdvcmR1ciBzdGVodCByaWNodGlnIHNjaG9lbiBzdGlsbC4KUGVydGluYXhlIGZyYWd0IEhpbnRlciBMaXN0IG5hY2ggTGllYmUuCkhpbnRlciBMaXN0IGJydWVsbHQ6IFNlaGUgaWNoIHdpZSBlaW4gSW5mb3N0YW5kIGF1cz8/CkNodWNreWxlaW4gc2FndDogZ2FsYnJhaXRoIGR1IHNhc3UKQWxtZHVkbGVyIGZyYWd0IEtsb2lyZW4gRWlzZW5oZWxtIG5hY2ggU29sZC4KS2xvaXJlbiBFaXNlbmhlbG0gc2FndDogCidXaWUgaWNoIGluIG1laW5lbiBVbnRlcmxhZ2VuIHNlaGUsIGJla29tbXN0IER1IDEwMCBNdWVuemVuIGFuIFNvbGQsIGF1Y2ggd2VubgogRHUgZXMgbmljaHQgdmVyZGllbnQgaGFzdCEgRGllIExvaG5rb3N0ZW4gd2VyZGVuIGRhcyBTdHJ1diBub2NoIGJhbmtyb3R0CiBtYWNoZW4hJwpLbG9pcmVuIEVpc2VuaGVsbSBnaWJ0IEFsbWR1ZGxlciAxMDAgTXVlbnplbi4KSGludGVyIExpc3QgYmVnaW5udCBsdXN0dm9sbCB6dSBzdG9laG5lbi4uLiBIb2xsYSwgd2FzIGZ1ZXIgQmVuZWhtZW4hCkNodWNreWxlaW4gc2FndDogc2F1CkdvcmR1ciBzYWx1dGllcnQgdm9yIGVpbmVyIEFyenRoZWxmZXJpbi4KQ2h1Y2t5bGVpbiBzYWd0OiBhaGhoaGhoaGhoClBlcnRpbmF4ZSBmcmFndCBIaW50ZXIgTGlzdCBuYWNoIEFyenQuCkhpbnRlciBMaXN0IHNhZ3Q6IFVuc2VyIFN0cnV2YXJ6dCBpc3QgTm9ldmFsIENlbGVtYmFyLiBFciBoYXQgaW4gZGVyIE5hZWhlIGRlcgpIaW50ZXIgTGlzdCBzYWd0OiBUcmFpbmluZ3NoYWxsZSBzZWluZSBQcmF4aXMuCkVpbmUgQXJ6dGhlbGZlcmluIGJlZ2lubnQgbHVzdHZvbGwgenUgc3RvZWhuZW4uLi4gSG9sbGEsIHdhcyBmdWVyIEJlbmVobWVuIQpIaW50ZXIgTGlzdCBzYWd0OiBEZXIgZHJpdHRlIFNjaHd1ciEgVmVyc3RhbmRlc2tsYXJoZWl0IHVuZCBTaW5uZXNzY2hhZXJmZQpIaW50ZXIgTGlzdCBzYWd0OiBsZWl0ZSB1bnNlciBEZW5rZW4uIE51dHpsb3NlcyB1bmQgRWl0bGVzIHRyb3BmZSBhYiBhbgpIaW50ZXIgTGlzdCBzYWd0OiB1bnMsIHZlcmFjaHRlbnN3ZXJ0IHNlaWVuIER1bW1oZWl0IHVuZCBJZ25vcmFuei4KRGVyIEZ1cnogcmllY2h0LCBhbHMgd3VlcmRlIEpvaG5ueWJvc3MgaW5uZXJsaWNoIHZlcmZhdWxlbi4KR2FsYnJhaXRoIHNhZ3Q6IHdlaWwgaWNoIGd1dCBiaW4gOz0pClNvbG15ciBzYWd0OiBXZWlsIHNjaG9uIGdyb3NzZSBLYW1wZnd1cnN0IQpTb2xteXIgZ3JpbnN0LgpEdSBoYWVsdHN0IERpciBkaWUgTmFzZSB6dS4KSGludGVyIExpc3QgYmVnaW5udCBsdXN0dm9sbCB6dSBzdG9laG5lbi4uLiBIb2xsYSwgd2FzIGZ1ZXIgQmVuZWhtZW4hCkNodWNreWxlaW4gc2FndDogYWxsZSBrcmllZ2VuIDEwMCBtdWVuemVuIGluIG51ciA3MApQZXJ0aW5heGUgZnJhZ3QgSGludGVyIExpc3QgbmFjaCBQcmF4aXMuCkhpbnRlciBMaXN0IHNhZ3Q6IFdpciBUcnZlcyB1ZWJlbiB1bnMgc3RhZW5kaWcgaW0gS2FtcGYuIERhcyBpc3QgYXVjaCB3aWNodGlnLgpDaHVja3lsZWluIHNldWZ6dC4KR29yZHVyIGZyYWd0IGVpbmUgQXJ6dGhlbGZlcmluIG5hY2ggUml6aW51cy4KRGllIEFyenRoZWxmZXJpbiBoYXQgRGljaCBiZXN0aW1tdCBuaWNodCBnZWhvZXJ0LgpTY3lsbGEgc2FndDogVmVyc3RhbmRlc2tsYXJoZWl0IHVuZCBTaW5uZXNzY2hhZXJmZSBsZWl0ZSB1bnNlciBEZW5rZW4uClNjeWxsYSBzYWd0OiBOdXR6bG9zZXMgdW5kIEVpdGxlcyB0cm9wZmUgYWIgYW4gdW5zLCB2ZXJhY2h0ZW5zd2VydCBzZWllbgpTY3lsbGEgc2FndDogRHVtbWhlaXQgdW5kIElnbm9yYW56LgpDb3JhayBzdGVodCByaWNodGlnIHNjaG9lbiBzdGlsbC4KSGludGVyIExpc3QgYmVnaW5udCBsdXN0dm9sbCB6dSBzdG9laG5lbi4uLiBIb2xsYSwgd2FzIGZ1ZXIgQmVuZWhtZW4hCkVpbmUgQXJ6dGhlbGZlcmluIGJlZ2lubnQgbHVzdHZvbGwgenUgc3RvZWhuZW4uLi4gSG9sbGEsIHdhcyBmdWVyIEJlbmVobWVuIQpLYWRpcyBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgpbTW9lcmRlcjpUb3dlcl0ga2FubnN0IGR1IGRvY2ggZ2FyIG5pY2h0LCBzbyBTY2huZWVibGluZCB3aWUgZHUgYmlzdCEKQ29yYWsgc2FsdXRpZXJ0IHZvciBLbG9pcmVuIEVpc2VuaGVsbS4KSm9obm55Ym9zcycgRnVyeiBzdGlua3Qgd2lya2xpY2ggZ3JhdWVuZXJyZWdlbmQuClBlcnRpbmF4ZSBmcmFndCBIaW50ZXIgTGlzdCBuYWNoIFphdWJlcmVyLgpIaW50ZXIgTGlzdCBzcHVja3QgdmVyYWVjaHRsaWNoIGF1cy4KSGludGVyIExpc3Qgc2FndDogRGVyIHZpZXJ0ZSBTY2h3dXIhIFphdWJlcmVyIGFid2VydGVuICEKSGludGVyIExpc3QgYmVnaW5udCBsdXN0dm9sbCB6dSBzdG9laG5lbi4uLiBIb2xsYSwgd2FzIGZ1ZXIgQmVuZWhtZW4hCkNvcmFrIGZyYWd0IEtsb2lyZW4gRWlzZW5oZWxtIG5hY2ggU29sZC4KS2xvaXJlbiBFaXNlbmhlbG0gc2FndDogCidXaWUgaWNoIGluIG1laW5lbiBVbnRlcmxhZ2VuIHNlaGUsIGJla29tbXN0IER1IDcwIE11ZW56ZW4gYW4gU29sZCwgYXVjaCB3ZW5uCiBEdSBlcyBuaWNodCB2ZXJkaWVudCBoYXN0ISBEaWUgTG9obmtvc3RlbiB3ZXJkZW4gZGFzIFN0cnV2IG5vY2ggYmFua3JvdHQKIG1hY2hlbiEnCktsb2lyZW4gRWlzZW5oZWxtIGdpYnQgQ29yYWsgNzAgTXVlbnplbi4KIDpzY2htZWlzc3QgSGludGVyIExpc3QgZWluZW4gSGF1ZmVuIGlucyBHZXNpY2h0Cj5Kb2hubnlib3NzIHNjaG1laXNzdCBIaW50ZXIgTGlzdCBlaW5lbiBIYXVmZW4gaW5zIEdlc2ljaHQKPiBQZXJ0aW5heGUgZnJhZ3QgSGludGVyIExpc3QgbmFjaCBDaGFvdGVuLgpIaW50ZXIgTGlzdCBzYWd0OiBEYXMgaXN0IHNjaG9uIGVpbiB3dWVzdGVyIEhhdWZlbiEgQWJlciB3aWxkZXMKSGludGVyIExpc3Qgc2FndDogRHJhdWZsb3NrbG9wcGVuIGlzdCBlYmVuIGRvY2gga2VpbiByaWNodGlnZXIgS2FtcGYsIHNvbmRlcm4KSGludGVyIExpc3Qgc2FndDogbnVyIEtpbmRlcmtyYW0uCkVpbmUgQXJ6dGhlbGZlcmluIGJlZ2lubnQgbHVzdHZvbGwgenUgc3RvZWhuZW4uLi4gSG9sbGEsIHdhcyBmdWVyIEJlbmVobWVuIQpDb3JhayBzdGVja3QgNzAgTXVlbnplbiBpbiBlaW5lIEdlbGRib2Vyc2UuClRyYXVtYSBmbHVlc3RlcnQgU2N5bGxhIGV0d2FzIGlucyBPaHIuClNjeWxsYSBzY2hydW1wZnQgenVzYW1tZW4sIGxhZXVmdCBncnVlbiBhbiB1bmQgdmVyd2FuZGVsdCBzaWNoIGxhbmdzYW0gaW4KZWluZW4gRnJvc2NoLgpIaW50ZXIgTGlzdCBiZWdpbm50IGx1c3R2b2xsIHp1IHN0b2VobmVuLi4uIEhvbGxhLCB3YXMgZnVlciBCZW5laG1lbiEKSm9obm55Ym9zcycgd2lkZXJsaWNoZXIgRnVyeiBoYXQgc2ljaCBlbmRsaWNoIHZlcnpvZ2VuLgpIaW50ZXIgTGlzdCBzYWd0OiBCZXdhaHJlIGRpZXNlbiBLb2RleCBpbW1lciBpbiBEZWluZW0gSGVyemVuIHVuZCBoYW5kbGUKSGludGVyIExpc3Qgc2FndDogZGFuYWNoISBOdXIgc28gd2lyc3QgRHUgV29obHdvbGxlbiB1bmQgQWNodHVuZyBpbSBTdHJ1dgpIaW50ZXIgTGlzdCBzYWd0OiBlcmhhbHRlbiEKUGVydGluYXhlIHdpcmZ0IGVpbmVuIEZsaXBwZXJmbHVtbWllLiBNaXQgZWluZXIgd2FobnNpbm5pZ2VuIEdlc2Nod2luZGlna2VpdApyYXN0IGVyIGR1cmNoIGRlbiBSYXVtLgpFaW4gRmxpcHBlcmZsdW1taWUgaHVlcGZ0IHp1cnVlY2sgaW4gUGVydGluYXhlcyBIYW5kLgogOnNwdWVsdC4KPkpvaG5ueWJvc3Mgc3B1ZWx0LiAKPiBHb3JkdXIgZnJhZ3QgSGludGVyIExpc3QgbmFjaCBBYmVudGV1cmVyLgpIaW50ZXIgTGlzdCBncmluc3QgbWl0bGVpZGlnOiBEaWUgc2luZCBqYSBzb3dhcyB2b24gcHJpbWl0aXYuLi4KW1RydmVzOkdhbGJyYWl0aF0gaGF0dGVuIHdpciBuaWNodCBuZXVsaWNoIG1hbCBuZSBuZXVlIGFyenRoZWxmZXJpbgpbVHJ2ZXM6R2FsYnJhaXRoXSBiZWtvbW1lbj8/PwpBbG1kdWRsZXIgc2FndDogSVNDSCBXRVJEIEhJRVIgTk9DSCBCRUtMT1BQVCAhISEhCkhpbnRlciBMaXN0IGJlZ2lubnQgbHVzdHZvbGwgenUgc3RvZWhuZW4uLi4gSG9sbGEsIHdhcyBmdWVyIEJlbmVobWVuIQpFaW5lIEFyenRoZWxmZXJpbiBiZWdpbm50IGx1c3R2b2xsIHp1IHN0b2VobmVuLi4uIEhvbGxhLCB3YXMgZnVlciBCZW5laG1lbiEKVmFyZGlvbiBmbGllZ3QgaGVyZWluLgpwaW5rZWwKV2llIGJpdHRlPwo+IEhpbnRlciBMaXN0IHRyaXR0IFZhcmRpb24ga3JhZWZ0aWcgaW4gZGVuIEhpbnRlcm4uCkVpbmUgQXJ6dGhlbGZlcmluIHRyaXR0IFZhcmRpb24ga3JhZWZ0aWcgaW4gZGVuIEhpbnRlcm4uCkdyYW1kYWxhIFpvcmtrZWxiYSB0cml0dCBWYXJkaW9uIGtyYWVmdGlnIGluIGRlbiBIaW50ZXJuLgpIb25kYW0gVW50ZXJmZWxzIHRyaXR0IFZhcmRpb24ga3JhZWZ0aWcgaW4gZGVuIEhpbnRlcm4uCkthcmFrIHRyaXR0IFZhcmRpb24ga3JhZWZ0aWcgaW4gZGVuIEhpbnRlcm4uCkhpbnRlciBMaXN0IGhhZW5ndCBlaW4gYW5kZXJlcyBQbGFrYXQgYXVmLgpQaGlsIGF1ZiBLYWRpcycgQXJtIHNjaGF1dCBEaWNoIG1pdCBsZXVjaHRlbmRlbiBBdWdlbiBhbi4KR2VkIGtyYXR6dCBzaWNoIGF1ZiBBcmlhcyBTY2h1bHRlciBoaW50ZXIgZGVtIE9oci4gCkhpbnRlciBMaXN0IGJlZ2lubnQgbHVzdHZvbGwgenUgc3RvZWhuZW4uLi4gSG9sbGEsIHdhcyBmdWVyIEJlbmVobWVuIQpQZXJ0aW5heGUgZnJhZ3QgSGludGVyIExpc3QgbmFjaCBBcnp0aGVsZmVyaW4uCkhpbnRlciBMaXN0IHNhZ3Q6IERpZSBrbGVpbmUgYXJiZWl0ZXQgaW0gVm9yemltbWVyIGRlcyBBcnp0ZXMgKFdlciBoYWV0dGUgZGFzCkhpbnRlciBMaXN0IHNhZ3Q6IGdlZGFjaHQpLgogOnNjaGlmZnQgaW4gZGllIEVja2UuIApFaW5lIEFyenRoZWxmZXJpbiBiZWdpbm50IGx1c3R2b2xsIHp1IHN0b2VobmVuLi4uIEhvbGxhLCB3YXMgZnVlciBCZW5laG1lbiEKPkpvaG5ueWJvc3Mgc2NoaWZmdCBpbiBkaWUgRWNrZS4KPiBbVHJ2ZXM6U29sbXlyXSBkaWUgaGF0IGlocmVuIFRpdGVsIHdpZWRlciBnZWFlbmRlcnQuLi4KW1RydmVzOkhpbnRlciBMaXN0XSBFaW4gRnJvc2NoIHd1cmRlIGdlcmFkZSB2ZXJlaWRpZ3QgdW5kIGlzdCBkYW1pdCBlaW4KW1RydmVzOkhpbnRlciBMaXN0XSB2b2xsd2VydGlnZXMgTWl0Z2xpZWQgZGVzIFN0cnV2IQpIaW50ZXIgTGlzdCBzYWd0OiBEdSBiaXN0IG51biBlaW4gcmljaHRpZ2VyIFRydmVzISBXaWxsa29tbWVuIGluIHVuc2VyZXIKSGludGVyIExpc3Qgc2FndDogTWl0dGUhCkJ1bHJpayBUaG9yYW4gZ3JhdHVsaWVydCBTY3lsbGEuCkVpbiBLb2NoIGdyYXR1bGllcnQgU2N5bGxhLgpLYXJhayBncmF0dWxpZXJ0IFNjeWxsYS4KQnJpZXNlbHRyaW0gZ3JhdHVsaWVydCBTY3lsbGEuCkxleWlkYXMgZ3JhdHVsaWVydCBTY3lsbGEuCktsb2lyZW4gRWlzZW5oZWxtIGdyYXR1bGllcnQgU2N5bGxhLgpOb2V2YWwgZ3JhdHVsaWVydCBTY3lsbGEuCkhvbmRhbSBVbnRlcmZlbHMgZ3JhdHVsaWVydCBTY3lsbGEuCkdyYW1kYWxhIFpvcmtrZWxiYSBncmF0dWxpZXJ0IFNjeWxsYS4KRWluZSBBcnp0aGVsZmVyaW4gZ3JhdHVsaWVydCBTY3lsbGEuCkhvZ28gZ3JhdHVsaWVydCBTY3lsbGEuCkh1enJ1Y2sgZ3JhdHVsaWVydCBTY3lsbGEuClRyaW5hIGdyYXR1bGllcnQgU2N5bGxhLgpRdWFydCBncmF0dWxpZXJ0IFNjeWxsYS4KVHV0c3p0IGdyYXR1bGllcnQgU2N5bGxhLgpIaW50ZXIgTGlzdCBiZWdpbm50IGx1c3R2b2xsIHp1IHN0b2VobmVuLi4uIEhvbGxhLCB3YXMgZnVlciBCZW5laG1lbiEKUGVydGluYXhlIGZyYWd0IGVpbmUgQXJ6dGhlbGZlcmluIG5hY2ggVGVybWluLgpEaWUgQXJ6dGhlbGZlcmluIHNhZ3Q6IFdlbm4gRHUgRGljaCBhbm1lbGRlc3QsIGthbm4gaWNoIERpciBlaW5lbiBUZXJtaW4KRGllIEFyenRoZWxmZXJpbiBzYWd0OiBnZWJlbi4KW3p0OkthdHplbnRhbnRlXSB3byBmaW5kZSBpY2ggY2F0d2VhemxlcyBoYXVzIGZ1ZXIgZGVuIHp0Pz8/CkthZGlzIGdyYXR1bGllcnQgZWluZW0gRnJvc2NoLgpbVHJ2ZXM6R3JlbGxnZW5dIGhlaGUsIGRhcyBwYXNzdCB6dSBFdWNoIDopCkhpbnRlciBMaXN0IGJlZ2lubnQgbHVzdHZvbGwgenUgc3RvZWhuZW4uLi4gSG9sbGEsIHdhcyBmdWVyIEJlbmVobWVuIQpFaW5lIEFyenRoZWxmZXJpbiBiZWdpbm50IGx1c3R2b2xsIHp1IHN0b2VobmVuLi4uIEhvbGxhLCB3YXMgZnVlciBCZW5laG1lbiEKW1RydmVzOlNvbG15cl0gKkdHR0dHR0dHKgpQZXJ0aW5heGUgZnJhZ3QgZWluZSBBcnp0aGVsZmVyaW4gbmFjaCBBbm1lbGR1bmcuCkRpZSBBcnp0aGVsZmVyaW4gc2FndDogV2lsbHN0IER1IHp1IE5vZXZhbCBDZWxlbWJhcj8gRGFubiBtdXNzdCBEdSBEaWNoCkRpZSBBcnp0aGVsZmVyaW4gc2FndDogYW5tZWxkZW4hCklzaGFyYSBzdGVodCByaWNodGlnIHNjaG9lbiBzdGlsbC4KIDpsYW5ndCBlaW5lciBBcnp0aGVsZmVyaW4gYW4gZGVuIFBvLgo+Sm9obm55Ym9zcyBsYW5ndCBlaW5lciBBcnp0aGVsZmVyaW4gYW4gZGVuIFBvLgo+IFNvbG15ciBrbnVkZGVsdCBlaW5lbiBGcm9zY2guCkhpbnRlciBMaXN0IHdpc2NodCBzaWNoIGRlbiBTY2h3ZWlzcyB2b24gZGVyIFN0aXJuLgpIaW50ZXIgTGlzdCBzYWd0OiBEYXMgaGFldHRlbiB3aXIgbWFsIHdpZWRlciBlcmxlZGlndC4uLgpbVHJ2ZXM6VHJhdW1hXSAqTE9MKgpbVHJ2ZXM6R2FsYnJhaXRoXSBobWphLCBkaWUgYWx0ZSBrZW5uIGljaCBzY2hvbiBpbi0gdW5kIGF1c3dlbmRpZyA7PSkKU29sbXlyIHNhZ3Q6IEpldHp0CkhpbnRlciBMaXN0IGJlZ2lubnQgbHVzdHZvbGwgenUgc3RvZWhuZW4uLi4gSG9sbGEsIHdhcyBmdWVyIEJlbmVobWVuIQpHb3JkdXIgZ3JhdHVsaWVydCBlaW5lbSBGcm9zY2guCkNvcmFrIGdyYXR1bGllcnQgZWluZW0gRnJvc2NoLgpbenQ6S2F0emVudGFudGVdIGljaCBiaW4gaW4gVmFsZ2Vzc2EKRWluZSBBcnp0aGVsZmVyaW4gYmVnaW5udCBsdXN0dm9sbCB6dSBzdG9laG5lbi4uLiBIb2xsYSwgd2FzIGZ1ZXIgQmVuZWhtZW4hCmtudWRkZWwgc3VzaQpEdSBrbnVkZGVsc3QgZGllIEFyenRoZWxmZXJpbi4KPiBJbGVzc2EgZ3JhdHVsaWVydCBlaW5lbSBGcm9zY2guCkhpbnRlciBMaXN0IGJlZ2lubnQgbHVzdHZvbGwgenUgc3RvZWhuZW4uLi4gSG9sbGEsIHdhcyBmdWVyIEJlbmVobWVuIQpTb2xteXIgcnVmdDogVW5kIG5hY2ggZGVyIFZlcmVpZGlndW5nLi4uLi4uLi4uU2F1ZmVuISEhIDopCmtudWRkZWwgc3VzaQpQZXJ0aW5heGUgZ3JhdHVsaWVydCBlaW5lbSBGcm9zY2guCkR1IGtudWRkZWxzdCBkaWUgQXJ6dGhlbGZlcmluLgo+IElsZXNzYSBrbnVkZGVsdCBIaW50ZXIgTGlzdCwgZWluZW4gRnJvc2NoLCBHb3JkdXIsIEthZGlzLCBEaWNoLCBUcmF1bWEsCklzaGFyYSwgUGVydGluYXhlLCBUdXRzenQsIFF1YXJ0LCBUcmluYSwgSHV6cnVjaywgSG9nbywgZWluZSBBcnp0aGVsZmVyaW4sCkdyYW1kYWxhIFpvcmtrZWxiYSwgSG9uZGFtIFVudGVyZmVscywgTm9ldmFsLCBLbG9pcmVuIEVpc2VuaGVsbSwgTGV5aWRhcywKQnJpZXNlbHRyaW0sIEthcmFrLCBlaW5lbiBLb2NoLCBCdWxyaWsgVGhvcmFuLCBTb2xteXIsIENvcmFrLCBHYWxicmFpdGgsCkFsbWR1ZGxlciwgQ2h1Y2t5bGVpbiwgQXJpYSB1bmQgVmFyZGlvbi4gCmtudWRkZWwgc3VzaQpIaW50ZXIgTGlzdCBzYWd0OiBXYXMgaXN0IG5vY2g/IERpZSBBcmJlaXQgd2FydGV0ISBBdWYgZ2VodHMhCkR1IGtudWRkZWxzdCBkaWUgQXJ6dGhlbGZlcmluLgo+IGtudWRkZWwgc3VzaQpFaW5lIEFyenRoZWxmZXJpbiBiZWdpbm50IGx1c3R2b2xsIHp1IHN0b2VobmVuLi4uIEhvbGxhLCB3YXMgZnVlciBCZW5laG1lbiEKRHUga251ZGRlbHN0IGRpZSBBcnp0aGVsZmVyaW4uCj4gR2FsYnJhaXRoIGtudWRkZWx0IEhpbnRlciBMaXN0LCBlaW5lbiBGcm9zY2gsIEdvcmR1ciwgS2FkaXMsIERpY2gsIElsZXNzYSwKVHJhdW1hLCBJc2hhcmEsIFBlcnRpbmF4ZSwgVHV0c3p0LCBRdWFydCwgVHJpbmEsIEh1enJ1Y2ssIEhvZ28sIGVpbmUKQXJ6dGhlbGZlcmluLCBHcmFtZGFsYSBab3Jra2VsYmEsIEhvbmRhbSBVbnRlcmZlbHMsIE5vZXZhbCwgS2xvaXJlbiBFaXNlbmhlbG0sCkxleWlkYXMsIEJyaWVzZWx0cmltLCBLYXJhaywgZWluZW4gS29jaCwgQnVscmlrIFRob3JhbiwgU29sbXlyLCBDb3JhaywKQWxtZHVkbGVyLCBDaHVja3lsZWluLCBBcmlhIHVuZCBWYXJkaW9uLiAKQ29yYWsga251ZGRlbHQgSGludGVyIExpc3QsIGVpbmVuIEZyb3NjaCwgR29yZHVyLCBLYWRpcywgRGljaCwgSWxlc3NhLCBUcmF1bWEsCklzaGFyYSwgUGVydGluYXhlLCBUdXRzenQsIFF1YXJ0LCBUcmluYSwgSHV6cnVjaywgSG9nbywgZWluZSBBcnp0aGVsZmVyaW4sCkdyYW1kYWxhIFpvcmtrZWxiYSwgSG9uZGFtIFVudGVyZmVscywgTm9ldmFsLCBLbG9pcmVuIEVpc2VuaGVsbSwgTGV5aWRhcywKQnJpZXNlbHRyaW0sIEthcmFrLCBlaW5lbiBLb2NoLCBCdWxyaWsgVGhvcmFuLCBTb2xteXIsIEdhbGJyYWl0aCwgQWxtZHVkbGVyLApDaHVja3lsZWluLCBBcmlhIHVuZCBWYXJkaW9uLiAKSGVyZXRpayBydWZ0OiBaLWxlciBhbndlc2VuZD8hCkFsbWR1ZGxlciBrbnVkZGVsdCBIaW50ZXIgTGlzdCwgZWluZW4gRnJvc2NoLCBHb3JkdXIsIEthZGlzLCBEaWNoLCBJbGVzc2EsClRyYXVtYSwgSXNoYXJhLCBQZXJ0aW5heGUsIFR1dHN6dCwgUXVhcnQsIFRyaW5hLCBIdXpydWNrLCBIb2dvLCBlaW5lCkFyenRoZWxmZXJpbiwgR3JhbWRhbGEgWm9ya2tlbGJhLCBIb25kYW0gVW50ZXJmZWxzLCBOb2V2YWwsIEtsb2lyZW4gRWlzZW5oZWxtLApMZXlpZGFzLCBCcmllc2VsdHJpbSwgS2FyYWssIGVpbmVuIEtvY2gsIEJ1bHJpayBUaG9yYW4sIFNvbG15ciwgQ29yYWssCkdhbGJyYWl0aCwgQ2h1Y2t5bGVpbiwgQXJpYSB1bmQgVmFyZGlvbi4gClNvbG15ciBmbGllZ3QgbmFjaCBXZXN0ZW4uClNvbG15ciBmbGllZ3QgaGVyZWluLgpQZXJ0aW5heGUgd2lyZnQgZWluZW4gRmxpcHBlcmZsdW1taWUuIE1pdCBlaW5lciB3YWhuc2lubmlnZW4gR2VzY2h3aW5kaWdrZWl0CnJhc3QgZXIgZHVyY2ggZGVuIFJhdW0uCkVpbiBGbGlwcGVyZmx1bW1pZSBlcndpc2NodCBEaWNoIHVuZCBtYWNodDogQXV0c2NoIQpFaW4gRmxpcHBlcmZsdW1taWUgaHVlcGZ0IHp1cnVlY2sgaW4gUGVydGluYXhlcyBIYW5kLgpBbG1kdWRsZXIgc2VpbHQgc2ljaCBuYWNoIFdlc3RlbiBhYi4KRWluZSBBcnp0aGVsZmVyaW4gc2FsdXRpZXJ0IHZvciBTb2xteXIuCkVpbiBLb2NoIHNhbHV0aWVydCB2b3IgU29sbXlyLgpFaW5lIEFyenRoZWxmZXJpbiBiZWdpbm50IGx1c3R2b2xsIHp1IHN0b2VobmVuLi4uIEhvbGxhLCB3YXMgZnVlciBCZW5laG1lbiEKU29sbXlyIGZsaWVndCBuYWNoIFdlc3Rlbi4KR29yZHVyIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCkJ1bHJpayBUaG9yYW4gZ2VodCBuYWNoIFdlc3Rlbi4KS2FyYWsgZ2VodCBuYWNoIFdlc3Rlbi4KRGllIEFyenRoZWxmZXJpbiBnZWh0IG5hY2ggV2VzdGVuLgpOb2V2YWwgZ2VodCBuYWNoIFdlc3Rlbi4KTGV5aWRhcyBnZWh0IG5hY2ggV2VzdGVuLgpEZXIgS29jaCBnZWh0IG5hY2ggV2VzdGVuLgpUcmluYSBnZWh0IG5hY2ggV2VzdGVuLgpLbG9pcmVuIEVpc2VuaGVsbSBnZWh0IG5hY2ggV2VzdGVuLgpIdXpydWNrIGdlaHQgbmFjaCBXZXN0ZW4uCkdyYW1kYWxhIFpvcmtrZWxiYSBnZWh0IG5hY2ggV2VzdGVuLgpIb25kYW0gVW50ZXJmZWxzIGdlaHQgbmFjaCBXZXN0ZW4uClF1YXJ0IGdlaHQgbmFjaCBXZXN0ZW4uCkhvZ28gZ2VodCBuYWNoIFdlc3Rlbi4KQnJpZXNlbHRyaW0gZ2VodCBuYWNoIFdlc3Rlbi4KW1RydmVzOk5peHdlaXNdIGhhdCBoaWVyIGVpbmVyIGRpZSBsZXV0ZSBpbSBzdHJ1diBnZWtpbGx0ID8KRWluIEZyb3NjaCBzYWd0OiBEYW5rZSEiCkVpbiBGcm9zY2ggaHVlcGZ0IG5hY2ggV2VzdGVuLgpHYWxicmFpdGggc2FndDogaG1tCltUcnZlczpHb3JkdXJdIG5vZSwgZGllIGhhdHRlbiBlaW5lIGJldHJpZWJzZmVpZXIKR2FsYnJhaXRoIHNhZ3Q6IGdyYXRzLCBGcm9zY2ggOz0pCklzaGFyYSBnZWh0IG5hY2ggV2VzdGVuLgpbVHJ2ZXM6R29yZHVyXSBzb2xsdGVuIGpldHp0IHdpZWRlciBkYSBzZWluClNvbG15ciBmbGllZ3QgaGVyZWluLgpTb2xteXIgc2FndDogU29vb29vb29vbywgc2F1ZmVuClBlcnRpbmF4ZSBzYWd0OiBuYSBpbW1lcmhpbiBpc3QgZXIgY3V0ICYgcGFzdGUtZmVzdApTb2xteXIgc2FndDogQWIgaW4gZGllIEtOZWlwZQpTb2xteXIgc2FndDogQWIgaW4gZGllIEtOZWlwZQpTb2xteXIgc2FndDogQWIgaW4gZGllIEtOZWlwZQpTb2xteXIgc2FndDogQWIgaW4gZGllIEtOZWlwZQpQZXJ0aW5heGUgZmxpZWd0IG5hY2ggV2VzdGVuLgpHb3JkdXIgc2FndDogam8hCgoKREVSIEFVVE9SIEdSQVRVTElFUlQgU0NZTExBIFpVUiBWRVJFSURJR1VORyEKSm9obm55Qm9zcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHZvbiBkZXIgZGlzemlwbGluIGRlciBrYWVtcGZlcmdpbGRlIChIZXJvbWNmbHksICA0LiBGZWIgMjAwMSwgMTc6MzU6MDcpOgp+IyEgcm49Sm9obm55Ym9zcyBydD05ODEzMDMyOTAgcmc9c2NobWFycm4KfiMhIHRpZD05ODEzMDMyOTAKCmljaCBzZWggZGFzIG9mdCBnZW51ZyBkdSBicmF1Y2hzdCBkYXMgbmljaHQgYXVjaCBub2NoIGluIGRpZSBtcGEgcG9zdGVuIC4uLgphYmVyIHJlbGF0aXZlIHdlbmlnIHNjcm9sbCBkaWVzZXMgbWFsIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOdXIgZGVyIFZvbGxzdGFlbmRpZ2tlaXQgaGFsYmVyIChHbG9pbnNvbiwgIDQuIEZlYiAyMDAxLCAxNzozODowOSk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTgxMjkwOTEzIHJnPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgdGlkPTk4MTI5MDcwNwpHZWVlZW51YSEKYWVoLCBOZWFwZWwsIEdlZWVlZW5hdSEKCkdsb2luKHNvbikgc2NoYWRlbmZyb2ggW01hZ2llcnZvcmF1c3NldHp1bmddLCB2ZXJrbmlmZmVuLCB3aWNodGlnICghKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQmxlaWJ0IG1hbCBiencuIGtvbW10IGF1ZiBkZW4gQm9kZW4genVydWVjayAoQWdvbnksICA0LiBGZWIgMjAwMSwgMTc6NTE6NTUpOgp+IyEgcm49RGllZGVyIHJ0PTk4MTI5MTMwOSByZz1zY2htYXJybgp+IyEgdGlkPTk4MTIzNDY0Nwp1bmQgZGllIG1vcmFsIGRlciBnZXNjaGljaHQuLi5kaWUgdGFuamlhbiBzaW5kIHRyb3R6ZGVtIHp1IHN0YXJrLCBqYXdvbGwgOikKc29sY2hlIGdlc2NoaWNodGVuIGhhZXR0ZW4gZWluZW0gZnJ1ZWhlciBlaW5mYWxsZW4gc29sbGVuLCB3byBmdWVyIGVpbgp6dXNwYWV0a29tbWVuIGluIGRlciBzY2h1bGUgZGFzIGxhcGlkYXJlIHVuZCBuaWUgZ2VnbGF1YnRlCiAiZGVyIHdlY2tlciBoYXQgbmljaHQgZ2VrbGluZ2VsdCIgaGVyaGFsdGVuIG11c3N0ZS4KbnVuIGphLCBlcyB3YXIgamEgZWlnZW50bGljaCBhdWNoIG5pZSB3YWhyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBrb3JyZWt0dXIgKEdsb2luc29uLCAgNC4gRmViIDIwMDEsIDE3OjU3OjAzKToKfiMhIHJuPVd1cnplbCBydD05ODEyODkxNzUgcmc9Z2lsZGVuLnRhbmppYW4KfiMhIHRpZD05ODEyODY5OTcKPiBlaW5lIGJlc2NocmFlbmt1bmcgYXVmIF9laW5fIGtvbW1hbmRvIHBybyBoZWFydGJlYXQuCkplcHAuIE9kZXIgQXVzZGF1ZXJwdW5rdGUuIEFuYXRvbCBoYXQgc2ljaGVyIGRhcyBMb2cgaXJnZW5kIGVpbmVyIERpc2t1c3Npb24KZGFydWViZXIgaW4gUmVzZXJ2ZS4gV2VubiBtYW4gZGFzIEJlaXNwaWVsIGluIExETVVEIDMuMi4rKyByaWNodGlnIGRldXRldAptb2VjaHRlIExBcnMgZXMgd29obCBhdWNoIGVpbmJhdW4uIEFiZXIgZGFtaXQgdmVybGFuZ3NhbSBkYXMgbWFuIGphIG51cgp1bndlc2VudGxpY2guCgpHbG9pbihzb24pIHNhZ3Q6IFNrcmlwdCBob29vb28hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEF1ZnNjaHJpZnRlbiB2b24gS29uc3VtYXJ0aWtlbG4gKEdyaW1tYm9ybiwgIDQuIEZlYiAyMDAxLCAxOTo1NTozNSk6Cn4jISBvbj1Kb2hubnlib3NzIG90PTk4MTI4NzQzOCBvZz13aXR6ZQp+IyEgcm49VHN1bmFtaSBydD05ODA5ODk5NDAgcmc9d2l0emUKfiMhIHRpZD05ODA4Njg4NzMKaWNoIGdsYXViZSBkYSBpc3QgamVkZXIga29tbWVudGFyIHVlYmVyZmx1ZXNzaWcuIHVuZCB2b24gc293YXMgd2lyZCBkZXIgd29obAptYWVjaHRpZ3N0ZSBzdGFhdCBkZXIgd2VsdCByZWdpZXJ0ISBhdWEKCm1pdCBmcmV1bmRsaWNoZW4gZ3J1ZXNzZW4gYW4gZGNob2F0c2NoIGRhYmJsaXUgYnVzY2gKSm9obm55Qm9zcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQmxlaWJ0IG1hbCBiencuIGtvbW10IGF1ZiBkZW4gQm9kZW4genVydWVjayAoQm9pbmcsICA1LiBGZWIgMjAwMSwgMDk6MzM6MTEpOgp+IyEgcm49RGllZGVyIHJ0PTk4MTI5MTMwOSByZz1zY2htYXJybgp+IyEgdGlkPTk4MTIzNDY0NwpTY2hvZW5lciBBcnRpa2VsISA6KQpBYmVyIHp1bSBQUzogSWNoIGhhYiBudXIgZWlubWFsIGZpbmdlcm4gbXVlc3NlbiB1bSBtZWluZSBWZXJtdXR1bmcgenUKYmVzdGFldGlnZW4gLi4uIERhcyBrYW5uc3QgRHUgYXVjaCEgOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogaGFiIGljaCBudXIgYXVzIHJ1ZWNrc2ljaHQgYXVmIGFsbGUgenVlY2h0aWdlbiBtdWRkZXIgZ2VtYWNodCAoR3JpbW1ib3JuLCAgNS4gRmViIDIwMDEsIDEyOjM0OjUyKToKfiMhIG9uPU9iZXJtb3R6IG90PTk4MTM3MjY0NyBvZz1hbGxnZW1laW5lcwp+IyEgcm49TW9yZ290aCBydD05ODEzNjQ2NzYgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05ODExOTYwMDMKSWNoIG1laW5lIGZvcnMuLi4gTmVpbiwgaWNoIGthbm4gZXMgd2lya2xpY2ggbmljaHQgYXVzc3ByZWNoZW4gOy0pCgpPTSBkZXIgQW50aWZvcnNjaGVyIHNjaHJlaWJ0IEFydGlrZWwsIGRhbWl0IEdkQSB3YXMgenUgdmVybGVnZW4gaGF0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBoYWIgaWNoIG51ciBhdXMgcnVlY2tzaWNodCBhdWYgYWxsZSB6dWVjaHRpZ2VuIG11ZGRlciBnZW1hY2h0IChHcmltbWJvcm4sICA1LiBGZWIgMjAwMSwgMTI6MzQ6NTQpOgp+IyEgb249UmlrdXMgb3Q9OTgxMzcyNzI2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1PYmVybW90eiBydD05ODEzNzI2NDcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05ODExOTYwMDMKQWxzIEFudGlmb3JzY2hlciBoYXN0IER1IGFiZXIgcmVjaHQgdmllbGUgRlBzISBNYWdzdCBEdSB3ZW5pZ2VyPyA6KQoKUmlrdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGhhYiBpY2ggbnVyIGF1cyBydWVja3NpY2h0IGF1ZiBhbGxlIHp1ZWNodGlnZW4gbXVkZGVyIGdlbWFjaHQgKEdyaW1tYm9ybiwgIDUuIEZlYiAyMDAxLCAxMjozNzoyOSk6Cn4jISBvbj1PYmVybW90eiBvdD05ODEzNzI5MDggb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVJpa3VzIHJ0PTk4MTM3MjcyNiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk4MTE5NjAwMwpJY2ggd3VyZGUgZ2V6d3VuZ2VuISBJY2ggaGFiZSBuaWNodCBmcmVpd2lsbGlnIGdlZm8uLi4hCgpPTSBkZXIgZGVuIEFydGlrZWwgbmFjaCBzY2htYXJybiBzY2hpZWJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUcmFsbGFsbGEgKEFuYXRvbCwgIDUuIEZlYiAyMDAxLCAxMzozMjozNSk6Cn4jISBvbj1BbmF0b2wgb3Q9OTgxMzc2MzUxIG9nPWdpbGRlbi50YW5qaWFuCn4jISBybj1QYXJhY2Vsc3VzIHJ0PTk4MTM3NjI0NSByZz1naWxkZW4udGFuamlhbgp+IyEgdGlkPTk4MTM2Nzk0OQpHZW5hdS4gVW5kIHdlaWwgZGllIEdpbGRlbmJhbGFuY2UgZnVyY2h0YmFyIHVuZmFlaGlnIGlzdCwgbXVzcyBlcyBlaW5mYWNoCk5QQ3MgZ2ViZW4sIGRpZSBTY2h1dHp6YXViZXIgYXVmaGViZW4gb2RlciBnYXIgdW1rZWhyZW4sIFNjaGF0dGVua2FlbXBmZXIKdmVyc2Nod2luZGVuIGxhc3NlbiB1bmQgc28gd2VpdGVyLiBEaWUgWmF1YmVyZXIgc2luZCBzbyBvZGVyIHNvIHZpZWwgenUKc3RhcmssIG5pY2h0IHdhaHI/CgpPaywgaWNoIHZlcmxlZ2UgaWhuIHNlbGJzdCBuYWNoICJzY2htYXJybiIuCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRyYWxsYWxsYSAoUGFyYWNlbHN1cywgIDUuIEZlYiAyMDAxLCAxMzozOTozMyk6Cn4jISBybj1BbmF0b2wgcnQ9OTgxMzc2MzU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgxMzY3OTQ5Cldlbm4gZWluIE5QQyB2b24gc2VpbmVyIE5hdHVyIGhlciBtYWVjaHRpZyBnZW51ZyBpc3QsIHdhcnVtIHNvbGx0ZSBlcgpuaWNodCBpbiBkZXIgTGFnZSBzZWluLCBlaW5lbiBTY2h1dHp6YXViZXIgenUgbmV1dHJhbGlzaWVyZW4gb2Rlcgp1bXp1a2VocmVuPyBXYXJ1bSBzb2xsdGUgZXIgbmljaHQgaW4gZGVyIExhZ2Ugc2VpbiwgZWluZW4gei5CLiBtaXQKZWluZW0gU2NobGFnIGFsbGUgS1AgenUgcmF1YmVuPwpXaWUgZ2VzYWd0OiBzb2Zlcm4gZXMgenUgZGVtIE5QQyBwYXNzdC4gV2VubiBkYXMgbmF0dWVybGljaCBqZWRlciBXYWxkLQp1bmQtV2llc2VuLUdvYmxpbi9EcmFrb25pZXIvT3JrIG1hY2h0LCBpc3QgZGFzIFNjaHdhY2hzaW5uLgoKVW5kIG5laW4sIGljaCBkZW5rZSBuaWNodCwgZGFzcyBkaWUgWmF1YmVyZXIgZGVyemVpdCB6dSBzdGFyayBzaW5kLgpOdXIgdWViZXJhcmJlaXR1bmdzYmVkdWVyZnRpZyAtIHZpZWxsZWljaHQgc29nYXIgenV1bmd1bnN0ZW4gaWhyZXIKRmxleGliaWxpdGFldCwgZGllIC0genVtaW5kZXN0IGluIG1laW5lbiBBdWdlbiAtIGRpZSBHaWxkZSBtaXR0bGVyd2VpbGUKenUga29tcGxpemllcnQgZnVlciBpaHJlIE1pdGdsaWVkZXIgbWFjaHQuIEFiZXIgREFTIGlzdCBsZXR6dGVuZGxpY2ggU2FjaGUKZGVyIFVlYmVyYXJiZWl0ZW5kZW4uCgpQYXJhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVHJhbGxhbGxhIChBbmF0b2wsICA1LiBGZWIgMjAwMSwgMTM6NDU6MTkpOgp+IyEgcm49UGFyYWNlbHN1cyBydD05ODEzNzY3NzMgcmc9c2NobWFycm4KfiMhIHRpZD05ODEzNjc5NDkKT2gsIGViZW4gZGllIEtvbXBsZXhpdGFldCBlaW5lciBHaWxkZSBtYWNodCB1bHRyYXZpZWwgdm9uIGlociBhdXMuIFdlbm4Ka2FyYXRla2xpa2UgamVkZXIgbXVkZGVuZGUgQ29ja2VyLVNwYW5pZWwgbWV0emVsbiBnZWhlbiBrYW5uLCBpc3QgZGFzCnNjaGFkZSwgZGllIFNraWxscyBzaW5kIGVpbiAxMDAlaWcgZ3VlbHRpZ2VzIE1hc3MgZnVlciBkaWUgJ1N0YWVya2UnIApkZXMgQ2hhcmFrdGVycy4KCkluIGVpbmVyIGtvbXBsZXhlcmVuIEdpbGRlIC0gd2llIHouQi4gZGllIFRydmVzIC0ga29lbm5lbiB6d2lzY2hlbiB6d2VpCmF1c2dlbWF4dGVuICh1bmQgZGFtaXQgc2tpbGx0ZWNobmlzY2ggZ2xlaWNoc3RhcmtlbikgQ2hhcmFrdGVyZW4gV2VsdGVuCmxpZWdlbi4gCgpBbmF0b2wgLSB2ZXJkYW1tdCwgbXVzcyBkYXMgamV0enQgbmFjaCBEaXNrdXNzaW9uPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQmxlaWJ0IG1hbCBiencuIGtvbW10IGF1ZiBkZW4gQm9kZW4genVydWVjayAoRGllZGVyLCAgNS4gRmViIDIwMDEsIDE0OjAzOjE4KToKfiMhIHJuPUJvaW5nIHJ0PTk4MTM2MTk5MSByZz1zY2htYXJybgp+IyEgdGlkPTk4MTIzNDY0NwpEYW5rZSBmdWVyIGRpZSBCbHVtZW4gOi0pCgpOdW5qYSwgd2VubiBpY2ggZWhybGljaCBiaW4sIHdhciBtZWluZSBWZXJtdXR1bmcgZGVyIEFubGFzcyBmdWVyIGRpZXNlbgpBcnRpa2VsLgpJbnNvZmVybiBrYW0gaWNoIGxldHp0bGljaCBhdWNoIG1pdCBfZWluZW1fIGZpbmdlci1CZWZlaGwgYXVzIDotKQoKT3BhIERpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2VsY2ggZWluZSBtYWNodCAuLi4gKEdvbGFzLCAgNS4gRmViIDIwMDEsIDE0OjU4OjUzKToKVW5hc2FpIGdyaW5zdCBEaWNoIHZlcnNjaG1pdHp0IGF1cyBkZXIgRmVybmUgYW4uCkVpbiBsYXV0ZXIgS25hbGwgaGFsbHQgdm9tIEdlYmlyZ2UgaGVydWViZXIuCgpuYXR1ZXJsaWNoIHVuZ2VzY2huaXR0ZW4gLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZGllcyB1bmQgZGFzIChUZWxlbm9zLCAgNS4gRmViIDIwMDEsIDE2OjU5OjQ2KToKfiMhIHJuPUphc21pbiBydD05ODEzNzY3OTcgcmc9Z2lsZGVuLnRhbmppYW4KfiMhIHRpZD05ODEzNzY3OTcKTWZHIC0gbWl0IGZyZXVuZGxpY2hlbiBHcnVlc3NlbgpkaWUgV2VsdCBsaWVndCB1bnMgenUgRnVlc3NlbiwgZGVubiB3aXIgc3RlaGVuIGRyYXVmCndpciBnZWhlbiBkcmF1ZiBmdWVyIGVpbiBMZWJlbiB2b2xsZXIgU2NoYWxsIHVuZCBSYXVjaApiZXZvciB3aXIgZmFsbGVuLCBmYWxsZW4gd2lyIGxpZWJlciBhdWYKCgoKbmEsIGdlbnVnIGF1ZmdlZmFsbGVuPyBJY2ggYnJhdWNoIGdsZWljaCBlaW4gcGFhciBUYXNjaGVudHVlY2hlciAqc25pZmYqCkdvbGFzLCBEdSBwb2VzZXIgUHVyc2NoZSEKCgpUZWxlbm9zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGRpZXMgdW5kIGRhcyAoTmV2b2ssICA1LiBGZWIgMjAwMSwgMTc6MDM6MjYpOgp+IyEgcm49VGVsZW5vcyBydD05ODEzODg3ODYgcmc9c2NobWFycm4KfiMhIHRpZD05ODEzNzY3OTcKPiBEdSBob2Vyc3QgZGllIFVociBzY2hsYWdlbjogRXMgaXN0IGpldHp0IDE3IFVoci4KQW1hcnlsbGlzIHRlaWx0IERpciBtaXQ6IGhhc3RlIERpY2ggbmljaHQgZ2V0cmF1dCwgZGVuIEFydGlrZWwgbWl0IERlaW5lbQpBbWFyeWxsaXMgdGVpbHQgRGlyIG1pdDogRXJzdGllIHp1IHNjaHJlaWJlbj8gOikKRHUgdGVpbHN0IEFtYXJ5bGxpcyBtaXQ6IHdpZXNvPyBpcyBUYW5qaWFuZ2lsZGVucmVwbHkgdW5kIGljaCBiaW4gdGFuamlhbgpEdSB0ZWlsc3QgQW1hcnlsbGlzIG1pdDogb2Rlcj8KPiBBbWFyeWxsaXMgdGVpbHQgRGlyIG1pdDogbmFqYSwgbWl0IGRlciBnaWxkZSBhbiBzaWNoIGhhdHRlIGRlciB0aHJlYWQgamEKc2Nob24KQW1hcnlsbGlzIHRlaWx0IERpciBtaXQ6IHNlaHIgbGFuZyBuaXggbWVociB6dSB0dW4gOikKRHUgdGVpbHN0IEFtYXJ5bGxpcyBtaXQ6IG5hYWFhYSBndXQuIFdpcmRzIGhhbHQgY3Jvc3NnZXBvc3RlZC4gQmluIGphIG5pY2gKRHUgdGVpbHN0IEFtYXJ5bGxpcyBtaXQ6IGF1Y2ggZWluIHBvZXNlciBQdXJzY2hlLgo+IEFtYXJ5bGxpcyBraWNoZXJ0IGF1cyBkZXIgRmVybmUuCgoKQWxsZXMga2xhcj8KCgpOZXZvaywgYXVjaCBuYWNoIFRhdHVldGF0YXMuLi5hZWggVGFzY2hlbnR1ZWNoZXJuIHN1Y2hlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBUcmFsbGFsbGEgKEFnb255LCAgNS4gRmViIDIwMDEsIDE3OjI3OjE5KToKfiMhIHJuPUFuYXRvbCBydD05ODEzNzYzNTUgcmc9c2NobWFycm4KfiMhIHRpZD05ODEzNjc5NDkKbmljaHQgenUgdmVyZ2Vzc2VuIGRlciBnaXBmZWwgZGVyIGZyZWNoaGVpdCwgZGllIHByaXZhdGUgZ2lsZGVuYmFsYW5jZSBpbgpmb3JtIHZvbiByZWdpb25zLW11bHRpcGxpa2F0b3JlbiBiZWkgTlBDcy4gZGllIHRhbmppYW4gc2luZCBhdXMgc2ljaHQKZGVzIGJldHJlZmZlbmRlbiBtYWdpZXJzIG5hdHVlcmxpY2ggdm9sbCBpbSBsb3QsIG9id29obCBzaWUgZGEgd29obCBlaGVyCmVpbmUgMC4yNSB2ZXJkaWVudCBoYWV0dGVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUcmFsbGFsbGEgKERlZXBibHVlLCAgNS4gRmViIDIwMDEsIDE3OjU3OjE1KToKfiMhIHJuPUVuaXJvIHJ0PTk4MTM5MTY3NCByZz1naWxkZW4udGFuamlhbgp+IyEgdGlkPTk4MTM2Nzk0OQpEZW4gWWV0aXMgZXJ6YWVobGVuIHNpY2ggYXVjaCwgZGFzcyBlcyBkZW4gTWVzc25lciBnaWJ0LCBhYmVyIGtlaW5lciB2b24gaWhuZW4KaGF0IGlobiBiaXNoZXIgd2lya2xpY2ggZ2VzZWhlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHJha29uaWVyZmVzdHVuZyB3ZWdlbiBVZWJlcmZ1ZWxsdW5nIGdlc2NobG9zc2VuISAoR29yb2csICA1LiBGZWIgMjAwMSwgMTk6MDc6MTApOgpEaWUgQW5nc3QgaXN0IHN0YWVya2VyIGFscyBEdSAuLi4gRHUgd2lsbHN0IG51ciBub2NoIHdlZyBoaWVyLiAKRHUga2xldHRlcnN0IGRlbiBrbGVpbmVuIFBmYWQgd2llZGVyIGhpbnVudGVyLiAKRWluIEJvcnogRHJha29uaWVyIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4gCkVpbiBLb3BvayBEcmFrb25pZXIgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLiAKRWluIEJvcnogRHJha29uaWVyIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4gCkVpbiBLb3BvayBEcmFrb25pZXIgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLiAKRWluIEJvcnogRHJha29uaWVyIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4gCkVpbiBCb3J6IERyYWtvbmllciBpc3QgamV0enQgaGludGVyIERpciBoZXIuIApFaW4gS29wb2sgRHJha29uaWVyIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4gCkVpbiBLb3BvayBEcmFrb25pZXIgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLiAKRWluIEtvcG9rIERyYWtvbmllciBpc3QgamV0enQgaGludGVyIERpciBoZXIuIApBdWYgZWluZW0ga2xlaW5lbiBCZXJncGZhZC4gCkVzIGdpYnQga2VpbmUgc2ljaHRiYXJlbiBBdXNnYWVuZ2UuIApFaW4gbWFnaXNjaGVzIFBvcnRhbC4KCkdvcm9nIGZpbmRldCBkYXMgZXR3YXMgc2VociB2b2xsLiBhYmVyIG5hamEgd2VuaWdzdGVucyBpcyBkZXIgc2l2b2sgdm9yemVpdGlnCmFiZ2VoYXVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRHJha29uaWVyZmVzdHVuZyB3ZWdlbiBVZWJlcmZ1ZWxsdW5nIGdlc2NobG9zc2VuISAoQW1hcnlsbGlzLCAgNS4gRmViIDIwMDEsIDE5OjM3OjA5KToKfiMhIHJuPUdvcm9nIHJ0PTk4MTM5NjQzMCByZz1zY2htYXJybgp+IyEgdGlkPTk4MTM5NjQzMApIbSwKCmpldHp0IGhhYiBpY2ggZ3JhZCBBcnRpa2VsIDYgaW4gZC5nZWJpcmdlIGdlbGVzZW4gdW5kIGRhbm4gZGllc2VyPwoKQW1hKiwgdmVya25laWZ0IHNpY2ggamV0enQgbmVuIEtvbW1lbnRhciA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFRyYWxsYWxsYSAoVGh1ZmhpciwgIDUuIEZlYiAyMDAxLCAxOTo0ODoyNyk6Cn4jISBybj1QYXJhY2Vsc3VzIHJ0PTk4MTM3NjI0NSByZz1naWxkZW4udGFuamlhbgp+IyEgdGlkPTk4MTM2Nzk0OQpBc2NoZSB1ZWJlciBtZWluIFp3ZXJnZW5oYXVwdCAob2RlciBiZXNzZXIgR29sZHN0YXViKSwgd2llIGtvbm50ZSBpY2ggZGFzIG51cgp1bnRlcnNjaGxhZ2VuLCB1bmQgZGFubiBlcnN0ICJnd2lsbGUiLCBkZXNzZW4gU3RhZXJrZSBudXIgdm9uIGRlciB2b3JoYW5kZW5lbgpNZW5nZSBhbiBHb2xzdGF1YiBhYmhhZW5naWcgaXN0LCBaYXViZXJlciBzb2ZvcnQgYWJ3ZXJ0ZW4sIHNjaG9lbiBkYXNzIG1hbmNoZQpNZW5zY2hlbiBpaHJlbiBvZmZlbnNpY2h0bGljaGVuIEZydXN0IHNvIHNjaG9lbiBrYW5hbGlzaWVyZW4ga29lbm5lbiEKCnMnWmF1YmVyendlcmNoLCBrb3Bmc2NodWV0dGVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRhbmppYW4gdW5kIExhZyAoU29sbXlyLCAgNS4gRmViIDIwMDEsIDIyOjM5OjEzKToKU28sIGpldHp0IGhhYmVuIHdpciBkZW4gQmV3ZWlzLCBkYXNzIHVucydyZSBNYWdpZXIgc2ljaCB3aXJrbGljaCAKbWFlY2h0aWdlIFNvcmdlbiB1bmQgZWluZW4gbWFlY2h0aWdlbiBBdWZ3YW5kIHVtIGRpZSBBYndlcnR1bmcKZGVyIFRhbmppYW4gR2lsZGUgbWFjaGVuOgoKTWFzdGVyUiA6ICAgUmlrdXMgOiBXaXIgbGFnZ2VuIG1hbC4uLgpNYXN0ZXJSIDogICBPbGxpIDogU2VpZCBpaHIgZmVydGlnPwpNYXN0ZVIgOiBSaWt1cyA6IGpvLCBpY2ggaGF0dGUgMTEwMDAgcGxheWVyZmlsZXMgZ2VsYWRlbiA6KSBudW4gaGF0IHNpZQpsaW51eCBnZWNoYWNoZWQKClNvbG15ciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRhbmppYW4gdW5kIExhZyAoU29sbXlyLCAgNS4gRmViIDIwMDEsIDIyOjM5OjQzKToKfiMhIHJuPVNvbG15ciBydD05ODE0MDkxNTMgcmc9c2NobWFycm4KfiMhIHRpZD05ODE0MDkxNTMKTWFuIGJpbiBpY2ggbXVlZGUsIHNvJ24gRm9ybWF0IHp1IHN0YW5kZSB6dSBiZWtvbW1lbiAqRyoKClNvbG15cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUYW5qaWFuIHVuZCBMYWcgKExpYXJhLCAgNS4gRmViIDIwMDEsIDIzOjMxOjM1KToKfiMhIHJuPVNvbG15ciBydD05ODE0MDkxODMgcmc9c2NobWFycm4KfiMhIHRpZD05ODE0MDkxNTMKU29sbXlyPwpXaXIgZGVua2VuIHVucyBkZW4gMnRlbiBBcnRpa2VsLCBpbiBkZW0gRHUgRGljaCBmdWVyIGRhcyBGb3JtYXQgZW50c2NodWxkaWdzdCwKZWluZmFjaCBqZWRlc21hbCBkYXp1LCBvaz8gOy0pCgpMWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVGFuamlhbiB1bmQgTGFnIChTb2xteXIsICA1LiBGZWIgMjAwMSwgMjM6NDY6MzApOgp+IyEgcm49TGlhcmEgcnQ9OTgxNDEyMjk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgxNDA5MTUzCk9rIDopIEljaCBsZXJuJ3MgaXJnZW5kd2FubiBub2NoLi4uCgpTb2xteXIsIGxva2FsZXMgRWNobyB3aWVkZXIgYW5zY2hhbHRlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5pY2h0IG1hcmtpZXJ0ZSBad2VpdGllcy4uLiAoVHN1bmFtaSwgIDYuIEZlYiAyMDAxLCAwMjowNjowOCk6CnVuZ2VzY2huaXR0ZW4KClRpbGx5ICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpBbmF0b2wgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpUc3VuYW1pLCBoYXQgZXMgc2Nob24gaW1tZXIgZ2V3dXNzdC4KCkVpbmUgRnJhZ2UgYmxlaWJ0IGplZG9jaCwgd2VyIGlzdCB3ZXNzZW4gWndlaXRpZS4uLgoKTXlzdGVyaWVuLCBNeXN0ZXJpZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogQmxpbmRoZWl0IC4uLiAoUGFkcmVpYywgIDYuIEZlYiAyMDAxLCAxMjowMzowMSk6Cn4jISBvbj1Nb3Jnb3RoIG90PTk4MTQ1NzI4NSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49UGFkcmVpYyBydD05ODE0NTcyMjMgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05ODEzMTM5MTAKSG1tLCBhbiBTaXIgb2RlciBhbiBEZWF0aD8gKmdyaW5zKgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBCbGluZGhlaXQgLi4uIChQYWRyZWljLCAgNi4gRmViIDIwMDEsIDEyOjAzOjA1KToKfiMhIG9uPVBhZHJlaWMgb3Q9OTgxNDU3MzU1IG9nPWVudHdpY2tsdW5nCn4jISBybj1Nb3Jnb3RoIHJ0PTk4MTQ1NzI4NSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk4MTMxMzkxMApJY2ggc2FndGUgUk0gTW9yZ290aCwgd2VyIGxlc2VuIGthbm4uLi4uCgpQYWQqIDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc28ga3JlYXRpdiBzaW5kIG1hZ2llciAoR3JpbW1ib3JuLCAgNi4gRmViIDIwMDEsIDEzOjIxOjM5KToKfiMhIG9uPUpvaG5ueWJvc3Mgb3Q9OTgxNDYxNDMzIG9nPWFsbGdlbWVpbmVzCj4gc2NoYXUgc2FjaGVuCklyZ2VuZHdlbGNoZXMgWmV1Z3MgaGFsdC4uLgo+IHNjaGF1IHpldWdzCklyZ2VuZHdlbGNoZSBTYWNoZW4gaGFsdC4uLgptZmcKam9obm55Ym9zcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZSAoRGVlcGJsdWUsICA2LiBGZWIgMjAwMSwgMTU6MDM6NTEpOgpbQWJlbnRldWVyOkphc21pbl0gd2FzIG1hY2ggaWNoIGJlaSBIZXJ6cXVlc3QsIHdlbm4gaWNoIG1pY2ggYXVmIGRlbiBTdHVobApbQWJlbnRldWVyOkphc21pbl0gZ2VzZXR6dCBoYWIgdW5kIG1pY2ggZGVyIEJhdW0ga2FwdXR0aGF1dD8KW0FiZW50ZXVlcjpSaWt1c10gc3RlcmJlbj8KW1RvZDpMYXJzXSBFaW4gZGlja2VyIEFzdCBoYXQgZ2VyYWRlIEphc21pbiB1bWdlYnJhY2h0LgpbVG9kOkVpbiBkaWNrZXIgQXN0XSBKYXNtaW5zIEdlbmljayBpc3QgZmFzdCB2b24gYWxsZWluZSBnZWJyb2NoZW4hCltBYmVudGV1ZXI6TWVzaXJpaSBrZXJidCBHb3IgOikpKV0KW0FiZW50ZXVlcjpSaWt1c10gaWNoIHNhZydzIGphCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZSBpcyBrbGFyIChBbWFyeWxsaXMsICA2LiBGZWIgMjAwMSwgMTU6NTI6MzQpOgpbVG9kOkxhcnNdIFlueidUcmFrIGhhdCBnZXJhZGUgUGl0ZmFsbCB1bWdlYnJhY2h0LgpZbnonVHJhayB0ZWlsdCBEaXIgbWl0OiBJY2ggaGFiZSBlYmVuIFBpdGZhbGwgZ2V0b2V0ZXQhClBpdGZhbGwgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgoKTWVubm8gR29yLCBpY2ggbGVzIGRvY2ggLVQuLi4gaW1tZXIgZGllc2UgUmVkdW5kYW56IDotKQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5lIGlzIGtsYXIgKEJhbWJpLCAgNi4gRmViIDIwMDEsIDE3OjUxOjM3KToKfiMhIHJuPUFtYXJ5bGxpcyBydD05ODE0NzExNTQgcmc9c2NobWFycm4KfiMhIHRpZD05ODE0NzExNTQKSWNoIGthbm4gbWljaCBlcmlubmVybiwgbWFsIHZvbiBEZWluZW0gTWFzdGVyIGFuZ2VxdWF0c2NodCB3b3JkZW4genUgc2VpbiB1bmQKd2Vpc3MgYmlzdCBoZXV0ZSBuaWNodCwgd2FydW0uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGYXN0IEZMVyBvZGVyIGF1Y2ggZWluIFRhbmppYW4gaXN0IHN0ZXJibGljaCAuLi4gKE1hdGlzLCAgNi4gRmViIDIwMDEsIDE3OjUzOjIxKToKW01vZXJkZXI6R2Vpc3QgZWluZXMgU3RhZHR0b3J3YWVjaHRlciB2b24gUydUaGlzcyBUb3JzXSBJY2ggZm9yZGVyZSBSZXZhbmNoZSwKW01vZXJkZXI6R2Vpc3QgZWluZXMgU3RhZHR0b3J3YWVjaHRlciB2b24gUydUaGlzcyBUb3JzXSBKYXNtaW4hCltNb2VyZGVyOkphc21pbl0gYnVlZGRlLCBnZXJuIDspCgpjYS4gMzAgbWluIHNwYWV0ZXIgLi4uCgpbVG9kOkxhcnNdIEVpbiBTdGFkdHRvcndhZWNodGVyIHZvbiBTJ1RoaXNzIFRvciBoYXQgZ2VyYWRlIEphc21pbiB1bWdlYnJhY2h0LgoKTWF0aXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmxlcm5mYWVoaWdlIE5QQ3MgLSBvZGVyIGRpZSBGcmFnZTogV2llIGJla29tbSBpY2ggZGEgYml0dGUgbWVpbmUgQXVzcnVlc3R1bmcgd2llZGVyPyAqZyogKEphc21pbiwgIDYuIEZlYiAyMDAxLCAxODowNzo1MCk6ClZvciBkaXIgc3RlaHQgZWluIGdlZmFlaHJsaWNoIGF1c3NlaGVuZGVyIFR5cC4gRGFzIEdlc2ljaHQgaXN0IG1pdCBncm9zc2VuCk5hcmJlbiB1ZWJlcnNhZWh0LiBEdSBzY2hhZXR6dCwgZGFzcyBtaXQgaWhtIG5pY2h0IHp1IHNwYXNzZW4gaXN0LiBTZWluZQptdXNrZWxiZXBhY2t0ZW4gT2JlcmFlcm1lIHBhc3NlbiBrYXVtIGR1cmNoIGRpZSBlbmdlbiBBcm1vZWZmbnVuZ2VuIHNlaW5lcwpQYW56ZXJzLiBJbiBiZWlkZW4gSGFlbmRlbiBoYWVsdCBlciBlaW4gd3VjaHRpZ2VzIFNjaHdlcnQuCkVyIGlzdCBhYnNvbHV0IGZpdC4KRXIgdHJhZWd0IGVpbmVuIFdhZmZlbmd1ZXJ0ZWwgaW4gZGVtIDcgV2FmZmVuIHN0ZWNrZW4uCklobiB1bWdpYnQgZWluIGR1bmtsZXIgU2NoYXR0ZW4uCkVyIHRyYWVndCBiZWkgc2ljaDoKRGVpbmUgU2Vlci1DYXJkIChUTSkuCkVpbiBMYWctTy1NZXRlci4KRWluZSBTY2hhdWZlbC4gKDIpCkVpbiBTY2hsZWltYmV1dGVsLgpFaW4gYGBCb3JuIHRvIEtpbGwnJy1TdGlybmJhbmQuIChhbmdlem9nZW4pLgpFaW4gV2FmZmVuZ3VlcnRlbCAoYW5nZXpvZ2VuKS4KRWluIFBhYXIgQWRhbWFudHNjaHVoZSAoYW5nZXpvZ2VuKS4KRWluIGdlbGJlcyBQb3N0cGFrZXQgKGdlb2VmZm5ldCkuCkVpbmUgR2VsZGJvZXJzZSBtaXQgMTM5NDcgTXVlbnplbi4KRHJhY2hlbmtsYXVlbiAoYW5nZXpvZ2VuKS4KRWluZSBLcmlzdGFsbGtyb25lIChhbmdlem9nZW4pLgo5IEhlaWx3dXJ6ZWxuLgpFaW4gUmluZyBkZXIgQXVzZGF1ZXIgKCsxKSAoYW5nZXpvZ2VuKS4KRWluZSBicmVubmVuZGUgSG9zZSAoYW5nZXpvZ2VuKS4KRWluZSBEcmFjaGVuc2NodXBwZS4KRWluIFNjb3JlYW11bGV0dCAoYW5nZXpvZ2VuKS4KRWluIFBhYXIgRW5nZWxzZmx1ZWdlbCAoYW5nZXpvZ2VuKS4KRWluZSBEaWRkbC1LbnVkZGVsLU1hdXMuCkVpbiB0cm9sbGlnZXIgU2NoYW1hbmVudW1oYW5nIChhbmdlem9nZW4pLgpFaW4gU2VpbC4KRWluIGdydWVuZXIgS3Jpc3RhbGwuCkVpbiBncm9zc2VyLCBlaXNlbmVyIFNjaGx1ZXNzZWwuCkVpbmUgYWJnZWJyb2NoZW5lIEtyYWxsZS4KRWluZSBoYW5kbGljaGUgQXJtYnJ1c3QuCkVpbiBUb3RlbmtvcGZhbXVsZXR0IChhbmdlem9nZW4pLgpFaW4gbWVya3d1ZXJkaWdlciBLcnVnLgpNYW5vaydTb3Jyc3MgZGVyIFNwZWVyIGRlcyBoZWlsaWdlbiBJbmZlcm5vcy4KRWluIERyYWNoZW5hbXVsZXR0IChhbmdlem9nZW4pLgpFaW4gZnVua2VsbmRlciBUdWVya2lzLgpFaW4gU2Nod2VydC4KODAwMCBNdWVuemVuLgpFaW4gU2Nod2VydCAoZ2V6dWVja3QpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGxlcm5mYWVoaWdlIE5QQ3MgLSBvZGVyIGRpZSBGcmFnZTogV2llIGJla29tbSBpY2ggZGEgYml0dGUgbWVpbmUgQXVzcnVlc3R1bmcgd2llZGVyPyAqZyogKEFtYXJ5bGxpcywgIDYuIEZlYiAyMDAxLCAxODoxMzoyNCk6Cn4jISBybj1KYXNtaW4gcnQ9OTgxNDc5MjcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgxNDc5MjcwCmdvdG8gZ2xvY2tlbndhbGQsIHRvZXRlIHdhZWNodGVyLCBuaW1tIGFsbGVzIGF1cyBsZWljaGUsIHRyYWdlIGFsbGVzLCB6dWVja2UKc2Nod2VydC4KZ290byA8bmFtZSBkZXMgc2VwcGVscywgZGVyIGRpZSBhdXNydWVzdHVuZyBoYXQ+LCBrb2tvcm8sIGhheWFpLCB0b2V0ZQp3YWVjaHRlciwgNSBydW5kZW4gd2FydGVuIChldnRsLiBiaXNzbCBrYW1pbmFyaSBvLmFlLiB6dXIgYmVzY2hsZXVuaWd1bmcgZGVzCnZvcmdhbmdzKSwgbmltbSBhbGxlcyBhdXMgbGVpY2hlLgoKSXN0IGRhcyBzbyBzY2h3ZXI/CgpzY25yLApBbWEqIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBsZXJuZmFlaGlnZSBOUENzIC0gb2RlciBkaWUgRnJhZ2U6IFdpZSBiZWtvbW0gaWNoIGRhIGJpdHRlIG1laW5lIEF1c3J1ZXN0dW5nIHdpZWRlcj8gKmcqIChNYXRpcywgIDYuIEZlYiAyMDAxLCAxODoxNToxMik6Cn4jISBybj1BbWFyeWxsaXMgcnQ9OTgxNDc5NjA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgxNDc5MjcwCldhciBkYXMgaXJvbmlzY2gsIHNhcmthc3Rpc2NoLCBvZGVyIGdhciB6eW5pc2NoPyA6bykKCk1hdGlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmFzdCBGTFcgb2RlciBhdWNoIGVpbiBUYW5qaWFuIGlzdCBzdGVyYmxpY2ggLi4uIChBbmF0b2wsICA2LiBGZWIgMjAwMSwgMTg6MTU6MTYpOgp+IyEgcm49TWF0aXMgcnQ9OTgxNDc4NDAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgxNDc4NDAxCk11c3MgZWluIEZha2UgZ2V3ZXNlbiBzZWluLgoKQW5hdG9sIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogQmxpbmRoZWl0IC4uLiAoVmFuaW9uLCAgNi4gRmViIDIwMDEsIDE4OjIxOjIyKToKfiMhIHJuPVZhbmlvbiBydD05ODE0Nzk2MzYgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05ODEzMTM5MTAKR3JyLCBtYW5jaG1hbCBiaW4gaWNoIHp1IGxhbmdzYW0sIHdhcyBkYXMgdGhyZWFkIGlnbm9yaWVyZW4gYW5nZWh0IDotLwoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGxlcm5mYWVoaWdlIE5QQ3MgLSBvZGVyIGRpZSBGcmFnZTogV2llIGJla29tbSBpY2ggZGEgYml0dGUgbWVpbmUgQXVzcnVlc3R1bmcgd2llZGVyPyAqZyogKEdhbmR1ciwgIDYuIEZlYiAyMDAxLCAyMTowMTo1Myk6Cn4jISBybj1NYXRpcyBydD05ODE0Nzk3MTIgcmc9c2NobWFycm4KfiMhIHRpZD05ODE0NzkyNzAKcmVhbGlzdGlzY2g/ID47KQoKZ2FuZHVyLCBobSB3aXIgc2luZCBpbiBkZXIgcmljaHRpZ2VuIHJ1YnJpawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogbGVybmZhZWhpZ2UgTlBDcyAtIG9kZXIgZGllIEZyYWdlOiBXaWUgYmVrb21tIGljaCBkYSBiaXR0ZSBtZWluZSBBdXNydWVzdHVuZyB3aWVkZXI/ICpnKiAoQW5hdG9sLCAgNi4gRmViIDIwMDEsIDIxOjAyOjE1KToKfiMhIHJuPUdhbmR1ciBydD05ODE0ODk3MTMgcmc9c2NobWFycm4KfiMhIHRpZD05ODE0NzkyNzAKTmVlZWVpbiwgZ2FueiBkaWUgZmFsc2NoZSBSdWJyaWshIDspCgpBbmF0b2wgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFlYmJlbiAhIChJbWRhLCAgNi4gRmViIDIwMDEsIDIxOjI2OjUyKToKW0FsbGdlbWVpbjpJc2xhbmRdIGRhcyBoaWVyIGFsbGUgbnVyIGFucyBlc3NlbiBkZW5rZW4gbXVlc3NlbgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBXaXJ0c10gTmllbWFuZCEgTmllbWFuZCBuZW5udCBtaWNoIGVpbmUgZmVpZ2UgU2F1LCBTbXV0ISAKCmpvLCBhZWJiZW4uLi4KCkltZGEuIElkbGVyLiBIdW5ncmljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbGVybmZhZWhpZ2UgTlBDcyAtIG9kZXIgZGllIEZyYWdlOiBXaWUgYmVrb21tIGljaCBkYSBiaXR0ZSBtZWluZSBBdXNydWVzdHVuZyB3aWVkZXI/ICpnKiAoUGFyYWNlbHN1cywgIDYuIEZlYiAyMDAxLCAyMTo1OTo0OSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9OTgxNDc5NjA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgxNDc5MjcwCkR1IGJyYXVjaHN0IERhIDUgUnVuZGVuIGZ1ZXI/IEdlaCB1ZWJlbiEKClBhcmFjZWxzdXMgZGVua3QgLiBvIE8gKFBhc3NlbmRlIFJ1YnJpaykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBCbGluZGhlaXQgLi4uIChBbmFjcmlvbiwgIDcuIEZlYiAyMDAxLCAwMDozMjo1MCk6Cn4jISBvbj1BbmFjcmlvbiBvdD05ODE1MDIzNDAgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUdub21lIHJ0PTk4MTUwMjMwNiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk4MTMxMzkxMApEcmVkZCBydWxleiA7KQoKQW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1ldHplbGdlYmlldGUgdW5kIGRlciBJbWJpc3MgOikgKEdyaW1tYm9ybiwgIDcuIEZlYiAyMDAxLCAwOTozNDozMik6Cn4jISBybj1Tb2xteXIgcnQ9OTgxNTM0Mjc5IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTgxNTI4MDczCkxhc3MgbWFsLCBkYXMgaXN0IHNjaG9uIHNpbm52b2xsIGRhc3MgZGllIFNwaWVsZXIgZGVuIGdhbnplbiBEdWVubnBmaWZmLCBkZW4Kc2llIHNvIHZlcnphcGZlbiwgYXVjaCBhdXNzZXJoYWxiIGRlciBtcGEgbG9zd2VyZGVuIGtvZW5uZW4sIGluc29mZXJuIHNpbmQKc2FuaXRhZXJlIEFubGFnZW4gc2VociB3aWxsa29tbWVuLgoKR3JpbW1ib3JuIGRlciBBdGhlaXMgdW5kIEtsb21hbm4gZGVyIG1wYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2lyIGhhYmVuIGpldHp0IGVpbmVuIFNjaHV0emhlaWxpZ2VuIChDYXR3ZWF6bGUsICA3LiBGZWIgMjAwMSwgMTA6MDU6MDUpOgpEZXIgUGFwc3QgaGF0IHVucyBTdXJmZXJuIGVpbmVuIEhlaWxpZ2VuIHZlcnBhc3N0OgpodHRwOi8vd3d3LnNwaWVnZWwuZGUvbmV0endlbHQvbmV0emt1bHR1ci8wLDE1MTgsMTE2MjAxLDAwLmh0bWwKCkljaCBicmF1Y2ggdW5iZWRpbmd0IGVpbiBCaWxkIGRhcyB1ZWJlciBtZWluZW4gTW9uaXRvciBoYWVuZ2VuIGthbm4gb2RlcgpiZXNzZXIgbm9jaCBlaW5lIGtsZWluZSBHb2xkZmlnZXIsIGRpZSBpY2ggaW4gZGVyIEhhbmQgaGFsdGVuIGthbm4gOi0pCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1pbmlmcm9lc2NoZT8gKE9ya3RvZXRlciwgIDcuIEZlYiAyMDAxLCAxMTozNTowNSk6CmdlcmFkZSBlcmtlYnQ6CgpWb3IgZWluZXIgcmllc2lnZW4gRmVzdHVuZy4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KQXNoJ2VuJ2xva2guCkVpbiB6d2VyZ2lzY2hlciBUcm9tcGV0ZXIuCkVpbiBhdXNyYW5naWVydGVyIE9jaHNlbmthcnJlbi4KRWluZSBrbGVpbmUgUmlrc2NoYS4KRWluIGdyb3NzZXIgTGVpdGVyd2FnZW4uCkVpbmUgcGluZ2VsaWdlIFB1dHpmcmF1LgpBc2gnZW4nbG9raCBtaXNzbGluZ3QgZGllIEZpbnRlIGdlZ2VuIGVpbmVuIEZyb3NjaCB2b2VsbGlnLgogIC4uLi4uZXh0cmEvV2FmZmVuc2NobGFnIEFzaCdlbidsb2toLi4gOiBGcm9zY2guLi4uLi4uICoqKioqKioqIC0tIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9LbGFwcG1lc3Nlci4gQXNoJ2VuJ2xva2guLiA6IEZyb3NjaC4uLi4uLi4gKioqKioqKiogLS0gdmVyZmVobHQKQXNoJ2VuJ2xva2ggbWVpbnQ6IEV5IEFsdGVyLCBpc2NoIGJpbiB6dSBrb25rcmV0IGRyYXVmIGZ1ZXIgRGlzY2ghCiAgLi4uLm5vcm1hbC9IYWVuZGVuLi4uLi4gRnJvc2NoLi4uLi4uLiA6IEFzaCdlbidsb2toLi4gKioqKioqKiogLS0gdmVyZmVobHQKICAuLi4uLmV4dHJhL0thbXBmdHJpdHQuLiBBc2gnZW4nbG9raC4uIDogRnJvc2NoLi4uLi4uLiAqKioqKioqKiAtLSB2ZXJmZWhsdAogIC4uLi4uZXh0cmEvRWxsYm9nZW5zY2hsIEFzaCdlbidsb2toLi4gOiBGcm9zY2guLi4uLi4uICoqKioqKioqIC0tIHZlcmZlaGx0CiAgLi4uLi5leHRyYS9Lb3Bmc3Rvc3MuLi4gQXNoJ2VuJ2xva2guLiA6IEZyb3NjaC4uLi4uLi4gKioqKioqKiogLS0gdmVyZmVobHQKICAuLi4ubm9ybWFsL0tsYXBwbWVzc2VyLiBBc2gnZW4nbG9raC4uIDogRnJvc2NoLi4uLi4uLiAqKioqKioqKiAtLSBoYXJ0IAoKU2luZCBGcm9lc2NoZSBqZXR6dCBzY2hvbiBzbyBrbGVpbiwgZGFzIG1hbiBzaWUgZ2FyIG5pY2h0IG1laHIgc2llaHQ/CgpPcmtUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNZXR6ZWxnZWJpZXRlIHVuZCBkZXIgSW1iaXNzIDopIChOZXZvaywgIDcuIEZlYiAyMDAxLCAxMzozNDoyMCk6Cn4jISBybj1IdW1uaSBydD05ODE1Mzk4ODggcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05ODE1MjgwNzMKQXUgbWFuLCBnaWJ0cyBqZXR6dCBkZW1uYWVjaHN0IG5lICdIaWxmZSBLbG8nIG1hbnBhZ2U/IE9kZXIgd2lyZCBkYXMgbm9jaApleHBsaXppdGVyPwpVYWVoIDopCgpOZXZvawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVmlydXN3YXJudW5nIChtb2VnbC4gaG9heD8pIChBbmF0b2wsICA3LiBGZWIgMjAwMSwgMTU6MTc6MDIpOgp+IyEgcm49TGluZmxhcyBydD05ODE1NTE2Mjkgcmc9YW56ZWlnZW4KfiMhIHRpZD05ODE1NDY2MDcKaHR0cDovL21nLm11ZC5kZS9jZ2ktYmluL21wYS5wbD9USVRFTD0mSU5IQUxUPUtFVFRFTkJSSUVGK1RZUCZBVVRPUj0mREFUVU09JkNBClRFR09SWT1BbGxlK1J1YnJpa2VuJkNBU0U9aSZISVRTPTEwCgpBbmF0b2wgLSBrZW5udCBDbGF1ZGlhLCB1bmQgbmljaHQgSmVucyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJiZWl0c3VuZmFsbCBhbSBGbGVpc2Noa2Vzc2VsPyAoWWVuZGksICA3LiBGZWIgMjAwMSwgMTc6MzM6NDApOgpbVG9kOkxhcnNdIEVpbiBLYW5uaWJhbGVuLVJpdHVhbCBoYXQgZ2VyYWRlIE1pZXplIHVtZ2VicmFjaHQuCkR1IHRlaWxzdCBNaWV6ZSBtaXQ6IFdhcyB3YXIgZGVubiBkYXM/Ck1pZXplIGlzdCBnZXJhZGUgbmljaHQgZGE6IEB3b3JrCgpBaGFhYWEuLi4KTWllemUgaXN0IEtvZWNoaW4sIHVuZCBkaWUgRmxlaXNjaGJlaWxhZ2UgaGF0IHNpY2ggZ2V3ZWhydD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmFocnVuZ3NtaXR0ZWwgaW0gTUcgKEdsb2luc29uLCAgNy4gRmViIDIwMDEsIDE3OjQ0OjQ3KToKfiMhIHJuPUFteW50aG9yIHJ0PTk4MTU2NDAxMSByZz1zY2htYXJybgp+IyEgdGlkPTk4MTU2NDAxMQpIYXN0IER1IGRhcnVlYmVyIG5hY2hnZWRhY2h0LCBkYXNzIER1IGRhbWl0IGV2ZW50dWVsbGVuIExlc2VybiBEZWluZXMKQXJ0aWtlbHMgZGVuIFNwYXNzIGFtIFNlbGJlcmZpbmRlbiBuaW1tc3Q/CgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmFocnVuZ3NtaXR0ZWwgaW0gTUcgKEFnb255LCAgNy4gRmViIDIwMDEsIDE3OjQ0OjU1KToKfiMhIHJuPUFteW50aG9yIHJ0PTk4MTU2NDAxMSByZz1zY2htYXJybgp+IyEgdGlkPTk4MTU2NDAxMQppY2ggd3Vzc3RlIGdhciBuaWNodCwgZGFzcyBtYW4gbWlsY2hrYW5uZW4gZXNzZW4ga2Fubi4uLm5hIGphLCBtaXQgbWFnaWUKa2FubiBtYW4gamEgYWxsZXMgYmVncnVlbmRlbiA7KQplaW5lciBkZXIgc2FjaGVuIGlzdCBnaWZ0aWcuLi5zcGFuIHVucyBuaWNodCBhdWYgZGllIGZvbHRlciwgd2VsY2hlciBkYXMKZ2FueiBvZmZlbnNpY2h0bGljaCBzZWluIGtvZW5udGUgOykpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2lyIGhhYmVuIGpldHp0IGVpbmVuIFNjaHV0emhlaWxpZ2VuIChXZWF0aGVyd2F4LCAgNy4gRmViIDIwMDEsIDE3OjUwOjMwKToKfiMhIHJuPUNhdHdlYXpsZSBydD05ODE1MzY3MDUgcmc9c2NobWFycm4KfiMhIHRpZD05ODE1MzY3MDUKSGksCgp3d3cuaGVpbGlnZW5sZXhpa29uLmRlL0Jpb2dyYXBoaWVuSS9Jc2lkb3Jfdm9uX1NldmlsbGEuaHRtCgpHcnVzcwoKV3gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hbCB3aWVkZXIgKExpbmZsYXMsICA3LiBGZWIgMjAwMSwgMTk6NDg6NTcpOgp1bmdla3Vlcnp0OgoKW0FsbGdlbWVpbjpEcm9sbGldIG9rIHVlYnVuZyBudW1tZXIgMTogZGVuIHBmbG9jayBpbiBkYXMgaGVyeiBlaW5lcyB2YW1waXJzCltBbGxnZW1laW46RHJvbGxpXSByZWlucmFtbWVuCltBbGxnZW1laW46UGl0ZmFsbF0gbXVzcyBpY2ggZGEgamV0enQgbWl0bWFjaGVuPwpbQWxsZ2VtZWluOkRyb2xsaV0gb2ggZGllIGthbmlkYXRlbiBtYWNoZQpbQWxsZ2VtZWluOkRyb2xsaV0gbWFjaGVuIGRhcyBwcmFlY2h0aWcKW0FsbGdlbWVpbjpEcm9sbGldIGtsYXIgbXVzc3QgZHUgOikKW0FsbGdlbWVpbjpQaXRmYWxsXSB3byBpc3QgbWVpbiB2YW1waXI/CltUb2Q6TGFyc10gRWluIFZhbXBpciBoYXQgZ2VyYWRlIFdpbGxvdyBnZXRvZXRldC4KClNvd2FzIDopCgpMaW5mbGFzLCBtYWNodCBzaWNoIHNlaW5lIEt1aGUgZWJlbiBzZWxic3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZWx0ZW4gc28gZ2VsYWNodCAoTWVzaXJpaSwgIDguIEZlYiAyMDAxLCAxMjowNjoxOSk6ClN0cm9oYWxtIGlzdCBnZXJhZGUgbmljaHQgZGE6IElkbGUuLi4gYmlzIGplZGVyIFRhbmppaGFobiAiS29rb3Jva2lpaWlpIiBvaG5lIApzdG90dGVybiBydWZlbiBrYW5uIDspCgpNZXNpLCBpbW1lciBub2NoIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWluaWZyb2VzY2hlPyAoR29yLCAgOC4gRmViIDIwMDEsIDEyOjUyOjE2KToKfiMhIHJuPU9ya3RvZXRlciBydD05ODE1NDIxMDUgcmc9c2NobWFycm4KfiMhIHRpZD05ODE1NDIxMDUKTm9lLCBhYmVyIGRpZSBGcm9lc2NoZSBoYWJlbiBpbSBhbGxnZW1laW5lbiBuZW4gdmVyZGFtbXQgaG9oZW4gQm9keSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2lsdmFuYSB1bmQgaWhyZSBBcmJlaXQgKFphcm5peWEsICA4LiBGZWIgMjAwMSwgMTQ6NDk6MDYpOgpTaWx2YW5hIGlzdCBnZXJhZGUgbmljaHQgZGE6IEFyYmVpdC4gVmllbC4gSmV0enQuCkVpbiBlbnRzZXR6bGljaGVyIFNjaHJlaSBoYWxsdCB2b20gRnJpZWRob2YgaGVydWViZXIuCgpEYSB3aWxsIGljaCBuaWNodCBnZW5hdWVyIG5hY2hmcmFnZW4gOikKCk1hcmMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWVpbnVuZ3NiaWxkIGdlZnJhZ3QuIChBbmF0b2wsICA4LiBGZWIgMjAwMSwgMTY6MDg6MTkpOgp+IyEgcm49SmFzbWluIHJ0PTk4MTY0NDg2NSByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD05ODE2NDEyMDIKT2sgLSBQYXJhY2Vsc3VzLCBKYXNtaW4gbW9lY2h0ZSBpaHJlIFNLaWxscyBnZWxvZXNjaHQgYmVrb21tZW4uLi4gOikKCkFuYXRvbCwgaGlsZnQgaW1tZXIgd2llZGVyIGdlcm5lIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaXBwZWZhbGwgKFNvbG15ciwgIDguIEZlYiAyMDAxLCAxNjoyNzoyNik6Ck5ldWxpY2ggaW0gTWc6CiBbenQ6aGVyZXRpa10gU28gbWFuY2hlciBUcmFuayBpc3Qgc2Nod2VyIHp1IGZpbmRlbiwKIFt6dDpoZXJldGlrXSBCZWkgZGVtIGhpZXIgbXVzc3QgRGljaCB1ZWJlcndpbmRlbiwKIFt6dDpoZXJldGlrXSBadSBTcHJpbmdlbiBpbiBkZXMgV2Fzc2VycyBGYWxsLAogW3p0OmhlcmV0aWtdIERhcyBrYW5uIG1hbiBhdWNoIG5pY2h0IHVlYmVyYWxsLgogW3p0OmhlcmV0aWtdIEljaCBzdGVoIGltIFdhc3NlcmZhbGwgaW4gZGVyIE9zdGVyYmFjaHNjaGx1Y2h0Li4ud2FzIGdpYnRzCm5vY2gKIFt6dDpoZXJldGlrXSB6dSB0dW4/CiBbenQ6ZGVlcGJsdWVdIFp1IGRlbSByaWNodGVuIFdhc3NlcmZhbGwgZ2VoZW4uCgpLdXJ6ZSBaZWl0IHNwYWV0ZXIuLi4KIFtUb2Q6TGFyc10gSGlwcGUgaGF0IGdlcmFkZSBIZXJldGlrIHVtZ2VicmFjaHQuCj8/PyAhISEgPz8/IFJ1ZnQgc2Nob25tYWwgYmVpIE11bGRlciBhbi4gRGFzIGlzdCBlaW4gRmFsbCBmdWVycyBGQkkuClNvbG15cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmUsIGlzIGtsYXIgOykgKFpvb2ssICA4LiBGZWIgMjAwMSwgMTY6Mzc6NDApOgpbWmF1YmVyZXI6Rm9vYmFyXSBTaWx2YW5hLCBzaW5kIG1pdCAia29tcGxldHQgbmV1ZSBHaWxkZSIgYXVjaCBuZXVlL2FuZGVyZQpbWmF1YmVyZXI6Rm9vYmFyXSBTcGVsbHMgZ2VtZWludCBvZGVyIG51ciBlaW4gbWFzc2l2ZXIgVW1iYXUgZGVyIHZvcmhhbmRlbmVuPwpbWmF1YmVyZXI6Rm9vYmFyXSAibnVyIiBtZWludGUgaWNoIDpvKQpbWmF1YmVyZXI6U2lsdmFuYV0ga29tcGxldHQgbmV1ZS4gVmllbGxlaWNodCB1ZWJlcmxlYmVuIGVpbiBwYWFyLCBhYmVyIGltCltaYXViZXJlcjpTaWx2YW5hXSB3ZXNlbnRsaWNoZW4gd2VyZGVuIHNpZSBuZXUgZ2VtYWNodC4KW1phdWJlcmVyOkFtYXJ5bGxpc10gIkhhbmQiIHdpcmRzIG5pY2h0IG1laHIgZ2ViZW4sICJGdXNzIiBhdWNoIG5pY2h0IDopCltaYXViZXJlcjpGb29iYXJdIFNjaG9uIHdpZWRlciBlaW5lIEdpbGRlIG9obmUgSGFuZCB1bmQgdW5mIEZ1c3M/IDpvKQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1laW51bmdzYmlsZCBnZWZyYWd0LiAoT2Jlcm1vdHosICA4LiBGZWIgMjAwMSwgMTY6NDU6NDEpOgp+IyEgb249T2Jlcm1vdHogb3Q9OTgxNjQ3MTE1IG9nPWdpbGRlbi56YXViZXJlcgp+IyEgcm49TGluZmxhcyBydD05ODE2NDY5ODEgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9OTgxNjQxMjAyCk9saWdhcmNoaWU/IElzdCBkYXMgd2FzIGFlaG0gc2NobHVlcGZyaWdlcz8gOy0pCgpPTSB2ZXJsZWd0IGRlbiBBcnRpa2VsIGdsZWljaCBuYWNoIC0+IHNjaG1hcnJuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFtYXJ5bGxpcywgIDguIEZlYiAyMDAxLCAxNzowMjoyMik6CltBbGxnZW1laW46SGVyZXRpa10gYWxsZSBIb2JiaXRoYXNzZXIgaW5zIERvcmYgenVtIFNjaG5pdHplbG4KCm51ciB1bndlc2VudGxpY2ggc3BhZXRlcjoKCltUb2Q6TGFyc10gRWluIEhvYmJpdHdhZWNodGVyIGhhdCBnZXJhZGUgSGVyZXRpayB1bWdlYnJhY2h0LgpbVG9kOkVpbiBIb2JiaXR3YWVjaHRlcl0gSmEsamEgd2lyIEhvYmJpdHMgc2luZCBkaWUgYmVzdGVuIEthZW1wZmVyIGRlciBXZWx0IQpbVG9kOkVpbiBIb2JiaXR3YWVjaHRlcl0gOi0pIAoKSGFyaGFyLgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3RhbW10aXNjaCBLYXJsc3J1aGUgKEFuYXRvbCwgIDguIEZlYiAyMDAxLCAxNzowNjo0NSk6Cn4jISBybj1BbmF0b2wgcnQ9OTgxNjQ4MzYzIHJnPXRyZWZmZW4KfiMhIHRpZD05ODE2NDgzNjMKTmVpbiwgaWNoIGdlaCBkYSBuaWNodCBoaW4uIFdhZXIgYXVjaCBldHdhcyB3ZWl0LCBzbyB6dSBGdXNzLiAKCkFuYXRvbCAtIGRpZSBLYXJsc3J1aGVyIGJlcnVoaWdlbmQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFN0YW1tdGlzY2ggS2FybHNydWhlIChCb2luZywgIDguIEZlYiAyMDAxLCAxNzo1MTo0NCk6Cn4jISBybj1IdW1uaSBydD05ODE2NTA5Mzkgcmc9dHJlZmZlbgp+IyEgdGlkPTk4MTY0ODM2MwpBdXNzZXJkZW0gd2FyIHZvbiAncHJvbWluZW50JyBkaWUgUmVkZSAuLi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJvaGUgV2VpaG5hY2h0ZW4gIT8gKFNvbG15ciwgIDguIEZlYiAyMDAxLCAxODo1MjozMyk6CkhtbSwgZ3JhZCBlYmVuIGFtIFNhbmR0aWdlci4uLgoKRGVyIFNhbmR0aWdlciBiZWdydWVzc3QgRG9sZ29yaW0gbWl0IDogSWNoIHNvbGwgRGlyIHZvbiBBcmlhIGF1c3JpY2h0ZW4gOgpGcm9oZSBXZWlobmFjaHRlbiEKCkhtbSwgaG9sdCBlaW5lciBtYWwgZGFzIENvZGVidWNoIHJhdXMgdW5kIHNhZ3QgbWlyIHdhcyBkYXMgaGVpc3N0ID8gT2Rlcgppc3QgZGllIE11ZFVociBzY2hvbiB3aWVkZXIga2FwdXR0PwoKU29sbXlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1laW51bmdzYmlsZCBnZWZyYWd0LiAoQW5hdG9sLCAgOS4gRmViIDIwMDEsIDAwOjIxOjI0KToKfiMhIHJuPVNjaGF1aSBydD05ODE2NzQyNzQgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9OTgxNjQxMjAyCj4gZmkgZ3dlbgpHd2VuIGlzdCBuaWNodCBhbndlc2VuZC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogRXJsYW5nZW4uClp1bGV0enQgYXVzZ2Vsb2dndDogRGllLCAxNy4gSmFuIDE5OTUsIDAwOjUyOjMzICgyMjE0ZCAyMzoyNTozNSkuClZvbGxlciBOYW1lOiBHd2VuIGRlciBaYXViZXJsZWhybGluZwpSYXNzZTogWndlcmcsICBHaWxkZTogQWJlbnRldXJlciwgIEdlc2NobGVjaHQ6IHdlaWJsaWNoCkFsdGVyOiAyMjozODowNCwgICBTcGllbGVybGV2ZWw6IDE1CkRhdHVtIGRlcyBlcnN0ZW4gTG9naW46IHZvciBkZW0gMTAuIE5vdiAxOTk1CgpBbHNvLiBEYXMgIlphdWJlcmxlaHJsaW5nIiBkZXIgQWJlbnRldXJlcmdpbGRlIHZvbiAuLi4gZGFtYWxzIC4uLgpkYXMgd2FyIHNjaG9uIHdhcyBhbmRlcmVzLi4uIAoKQW5hdG9sIC0gc2NuciA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWVpbnVuZ3NiaWxkIGdlZnJhZ3QuIChNb3Jnb3RoLCAgOS4gRmViIDIwMDEsIDAwOjIyOjI2KToKfiMhIHJuPUFuYXRvbCBydD05ODE2NzQ0ODQgcmc9c2NobWFycm4KfiMhIHRpZD05ODE2NDEyMDIKVW5kIGRhbm4gbm9jaCBad2VyZyAgKmdyaW5zKgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmphIGdlaHQgZGFzIGRlbm4/IChHb2xhcywgIDkuIEZlYiAyMDAxLCAxMjowNTo1OSk6CkRlaW4gRnJldW5kIFhYWCB0ZWlsdCBEaXIgbWl0OiBVbHRyYWt1cnogOikgbnVyIE1QQSA6KQoKZ29sYXMgZ2xhdWJ0IG5pY2h0IGFuIHNvd2FzIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiA6KSAoTGlhcmEsICA5LiBGZWIgMjAwMSwgMTc6MDQ6MzEpOgp+IyEgcm49U29sbXlyIHJ0PTk4MTczNDYyNyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk4MTczNDU4NQpNdWVuemUgZ2Vob2VydCBtaXIhIDotKQoKTFoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1laW51bmdzYmlsZCBnZWZyYWd0IChBbmF0b2wsICA5LiBGZWIgMjAwMSwgMTg6MzA6MjQpOgp+IyEgcm49UGFkcmVpYyBydD05ODE3Mzk3OTQgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9OTgxNjQxMjAyCkRhc3MgRHUgRGVpbmUgVWViZXZvbGxzY3JpcHRzIHVtc3RlbGxlbiBtdXNzdCwgaXN0IERpciBhYmVyIGtsYXI/IDspCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjopIChHcmltbWJvcm4sICA5LiBGZWIgMjAwMSwgMTg6MzM6MDMpOgp+IyEgb249Tmljb2xhaSBvdD05ODE3MzQ1ODUgb2c9YWxsZ2VtZWluZXMKWFhYWCB0ZWlsdCBEaXIgbWl0OiBpY2ggbXVzcyBtaXIgdW5iZWRpbmd0IG1hbCBuIG11ZCBzdWNoZW4gd28gaWNoIG1pdCBuZW0KWFhYWCB0ZWlsdCBEaXIgbWl0OiB3ZWlibGljaGVuIGNoYXIuIHZvbiBhbmZhbmcgYW4gc3BpZWxlIC4uLiB3aWxsIGVuZGxpY2gKWFhYWCB0ZWlsdCBEaXIgbWl0OiBtYWwgZGVuIHRpdHRlbmJvbnVzIGhhYmVuIC5vKSAgICAgICAgICAgCgpTbywgZGFubiBiaWV0ZXQgbWlyIG1hbCB3YXMgYW4sIGRhc3MgaWNoIGRlbiBOYW1lbiB2b24gJ1hYWFgnIHJhdXNydWVja2U6KQoKCk5pY29sYWksIG5hY2ggUmVib290IGF1c3J1ZXN0dW5nc2JlZHVlcmZ0aWc6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IDopIChHcmltbWJvcm4sICA5LiBGZWIgMjAwMSwgMTg6MzM6MDUpOgp+IyEgb249U29sbXlyIG90PTk4MTczNDYyNyBvZz1hbGxnZW1laW5lcwp+IyEgcm49Tmljb2xhaSBydD05ODE3MzQ1ODUgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05ODE3MzQ1ODUKV28gZmFuZ2VuIHdpciBkZW5uIGFuPyBCZWkgMSBNdWVuemU/IDopCgpTb2xteXIsIDEgTXVlbnplIGJpZXRlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiA6KSAoR3JpbW1ib3JuLCAgOS4gRmViIDIwMDEsIDE4OjMzOjExKToKfiMhIG9uPVFpdGVzcyBvdD05ODE3MzU3NzAgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU5pY29sYWkgcnQ9OTgxNzM0NTg1IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTgxNzM0NTg1Ci4uLmljaCBoYWIgZGVuIHRpdHRlbmJvbnVzLgpiaXR0ZSwgbmljb2xhaSwgYml0dGUgYml0dGUsIHNhZyBkb2NoLCB3ZXIncyB3YXIuLi4KUUkqKgoKUC5TLjogZGFzIG1pdCBkZW0gdGl0dGVuYm9udXMgaXN0IGVpZ2VudGxpY2ggYWxiZXJuLi4uCm5uCmFlaC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiA6KSAoR3JpbW1ib3JuLCAgOS4gRmViIDIwMDEsIDE4OjMzOjIxKToKfiMhIG9uPUFuYXRvbCBvdD05ODE3MzkxODIgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVFpdGVzcyBydD05ODE3MzU3NzAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05ODE3MzQ1ODUKRHUgaGFzdCB2aWVsbGVpY2h0IFRpdHRlbiwgYWJlciBuaWNodCBkZW4gVGl0dGVuYm9udXMuIEJlaSBEaXIgc3ByaW5nZW4KbmljaHQgZGllIEJlc2NodWV0emVyaW5zdGlua3RlIGFuLCBzb25kZXJuIGRlciBTZWxic3RlcmhhbHR1bmdzdHJpZWIuCgoqZmx1ZWNodCogOykKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiA6KSAoR2xvaW5zb24sICA5LiBGZWIgMjAwMSwgMjA6NDk6NDMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4MTc0MDAwMSByZz1zY2htYXJybgp+IyEgdGlkPTk4MTczNDU4NQoqcm90ZmwqCgpEYXMgaGF0IGRlbiBOYWdlbCBnZW5hdSBpbnMgQXVnZSBnZXRyb2ZmZW4sIG9kZXIgc28gOj4KCkdsb2luc29uIC4uLiBncmluc3QgaW1tZXIgbm9jaCBicmVpdCAoenUgdW53aWNodGlnIHVtIHp1IGZsdWVjaHRlbiA6PikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1laW51bmdzYmlsZCBnZWZyYWd0IChOZXZvaywgIDkuIEZlYiAyMDAxLCAyMzo0MDoyNyk6Cn4jISBybj1XZWF0aGVyd2F4IHJ0PTk4MTc1MTgzNCByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD05ODE2NDEyMDIKLi4uZGFzcyBzaWUgaGludGVyaGVyIG5pY2h0IGFscyBIYW5zd3VycyBkYXN0ZWhlbiB3b2xsZW4sIHVuZCBtZWhyCm5pY2h0LgoKCkhhbnN3dXJzdCBpc3QgbmljaHQgYW53ZXNlbmQuClp1bGV0enQgYXVzZ2Vsb2dndDogRnJlLCAgOS4gRmViIDIwMDEsIDA0OjQ4OjEzICgxODo1MTowNikuClJhc3NlOiBFbGYsICBHaWxkZTogWmF1YmVyZXIsICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKCgoKaXMgZGFzIGpldHp0IGRpc3NlbiBvZGVyIHNjaG9uIGZsYW1lbj8KCk5ldm9rIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNZWludW5nc2JpbGQgZ2VmcmFndCAoTGlhcmEsIDEwLiBGZWIgMjAwMSwgMDA6NTE6MDgpOgp+IyEgcm49QXJrIHJ0PTk4MTc0ODY4NSByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD05ODE2NDEyMDIKQWxzbyBkYXMgSmFtbWVybiBtdXNzdGUgYWJlciBub2NoIHVlYmVuLCBBcmsuIDstKQpVbmQgZmFsbCAndW5zJyBudSBuaWNodCBpbiBkZW4gUnVlY2tlbiwgZGFtaXQgdHVzc3UgRGlyIG51biBzZWxiZXIgd2VoLiAqZyoKCkxaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNZWludW5nc2JpbGQgZ2VmcmFndCAoQXJrLCAxMC4gRmViIDIwMDEsIDE1OjQxOjQyKToKfiMhIHJuPUxpYXJhIHJ0PTk4MTc2MjY2OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MTY0MTIwMgpJbSBHZWdlbnR1bSwgZXJzZXR6ZSBKIG1pdCBILCBlcmdhZW56ZSBlIGhpbnRlciBhLiBXaXIgYmF1ZW4gdW0sIGJyZWNoZW4gbWl0CmFsdGVuIFRyYWRpdGlvbmVuLCBmb3JtZW4gbmV1LiBTYXVndCBkaWVzZW4gR2VkYW5rZW4gc2Nob25tYWwgYXVmLCBhdG1ldCBpaG4KZWluIHVuZCBhdXMuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdGllZmUgVHJhdWVyIChRaXRlc3MsIDEwLiBGZWIgMjAwMSwgMTc6MzY6MzEpOgpEZWluIEZyZXVuZCBOb2tpIHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1LgpOb2tpICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpEYXMgTW9yZ2VuR3JhdWVuIGVyeml0dGVydCB1bnRlciBlaW5lbSBsYW5nZXpvZ2VuZW4sIHVubWVuc2NobGljaGVuIFNjaHJlaS4gIApRSSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2hvbiB3aWVkZXI/IChRaXRlc3MsIDEwLiBGZWIgMjAwMSwgMjI6NDc6MjMpOgpEdSBob2Vyc3QgZWluIFdpc3Blcm4uCk5va2kgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRHUgaG9lcnN0IGVpbmVuIGVudHNldHpsaWNoZW4gU2NocmVpIGltIFN1ZWR3ZXN0ZW4uICAgICAKClFJKiogYmVrb21tdCBsYW5nc2FtIGF1Y2ggQW5nc3Qgdm9yIE5va2kuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHT0VUVExJQ0g/IChRaXRlc3MsIDEwLiBGZWIgMjAwMSwgMjI6NTM6MDkpOgpTY2hyaXR0ZSBpbSBTdWVkZW4uCkFuYXRvbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKU3RpbGxlICAKClFJKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGtpbmRlcnBvcm5vcyBpbSBXV1cgKEJhbWJpLCAxMS4gRmViIDIwMDEsIDEzOjE1OjQ5KToKfiMhIHJuPVBhbXBlcnMgcnQ9OTgxODg5NzEwIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTgxODQwNjQ1Ck5laG10IGlociBhdWNoIE11ZW56ZW4sIGRpZSBldmVudHVlbGwgZ2VmYWVsc2NodCB3dXJkZW4gb2RlciBudXIgU2NoZWluZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZToga2luZGVycG9ybm9zIGltIFdXVyAoQW5hdG9sLCAxMS4gRmViIDIwMDEsIDEzOjU0OjQyKToKfiMhIHJuPVBhbXBlcnMgcnQ9OTgxODg5NzEwIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTgxODQwNjQ1CipwcnVzdCoKClBhbXBlcnMgLSBpbW1lciB3aWVkZXIgZWluZmFjaCBndXQuIDopCgpBbmF0b2wgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndpZSB3YWhyLi4uIChHbm9tZSwgMTEuIEZlYiAyMDAxLCAxNDo0ODo0Nyk6CkRlaW4gRnJldW5kIFN0cm9oYWxtIHRlaWx0IERpciBtaXQ6IGh1aWlpaS4uIGljaCBiaW4gYm9vb2VzZSA7KQpbVG9kOkxhcnNdIEVpbmUgVmVyZ2lmdHVuZyBoYXQgZ2VyYWRlIE1hZ3VzIHVtZ2VicmFjaHQuICAgICAgICAgICAgICAgCgpnbk9tZSBzY2hyZWl0OiBQSyEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGtpbmRlcnBvcm5vcyBpbSBXV1cgKFpvb2ssIDExLiBGZWIgMjAwMSwgMTY6MDM6MTkpOgp+IyEgcm49UWl0ZXNzIHJ0PTk4MTkwMzYxNSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk4MTg0MDY0NQpEYXMgZXJpbm5lcnQgbWljaCBhbiBkaWUgTGV1dGUsIGRpZSBiZWkgSW5mb3JtYXRpb25lbiB6dW0gVGV4dHNhdHpzeXN0ZW0KVGVYIHVuZCBMYVRlWCBpbiBkaWUgU3VjaG1hc2NoaW5lICJsYXRleCIgZWluZ2ViZW4gdW5kIHNpY2ggZGFubiBlaW4Kd2VuaWcgd3VuZGVybiwgZGFzcyBkYXMgbmljaHQgbnVyIGV0d2FzIG1pdCBUZXh0c2F0eiB6dSB0dW4gaGF0IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzoga2luZGVycG9ybm9zIGltIFdXVyAoR2xvaW5zb24sIDExLiBGZWIgMjAwMSwgMTc6MjE6MzApOgp+IyEgcm49UWl0ZXNzIHJ0PTk4MTkwMzYxNSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk4MTg0MDY0NQpXaWUgU2lsdmFuYSBzY2hvbiBpbSBCZWlzcGllbCBnZWdlYmVuIGhhdC4gSVN0IHp3YXIgZ2FueiBsdXN0aWcsIHdlbm4gbWFuCmdlcmFkZSBuYWNoICJFeWUgb2YgdGhlIEJlaG9sZGVyIElJIiArd2Fsa3Rocm91Z2ggc3VjaHQgYXVjaCBUaXR0ZW5zZWl0ZW4KYW5nZXplaWd0IHp1IGJla29tbWVuLCBhYmVyIGJlaW0gbHVzdGlnIGJsZWlidHMgdW5kIHp1bSBuZXJ2aWcgd2lyZHMuIFNvbGx0ZXN0CnZpZWxsZWljaHQgZWluZmFjaCBtYWwgZWluIHBhYXIgVGVzdGFuZnJhZ2VuIGF1ZiB3YXMgc2VociBzcGV6aWVsbGVzIHN0YXJ0ZW4KdW5kIGRhbm4gamVnbGljaGUgU2VpdGUgb2VmZm5lbiBkaWUgZGEgYW5nZXplaWd0IHdpcmQuCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBraW5kZXJwb3Jub3MgaW0gV1dXIChRaXRlc3MsIDExLiBGZWIgMjAwMSwgMTk6MTY6MzYpOgp+IyEgcm49R2xvaW5zb24gcnQ9OTgxOTA4NDkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgxODQwNjQ1Cm5hLCBtZW5zY2ggZXMgaXN0IGRvY2ggbmljaHQgc28sIGRhc3MgaWNoIG5pY2h0IGF1Y2ggc2Nob24geHh4LXNlaXRlbiBiZWtvbW1lbgpoYWJlIHVuZCBqYSwgYXVjaCBhbmdlc2VoZW4sIGFiZXIgZGllIGdhbnogYm9lc2VuIHNhY2hlbiBoYWJlIGljaCBuaWNodApiZWtvbW1lbi4uLgpRSSoqIGxlaG50IHNpY2ggZ2VnZW4gaWhyZSBFcndhY2hzZW5lLU1hZW5uZXItUG9ybm8tU2FtbWx1bmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlbmtzdGUhIChab29rLCAxMS4gRmViIDIwMDEsIDIxOjQ2OjM3KToKWm9vayBncmluc3QgTGFyaW5hIGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVG91Y2hlLi4uIChBbmF0b2wsIDEyLiBGZWIgMjAwMSwgMDA6NTM6MjMpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBLb2JvbGRzXSBXZW5uIER1IHNvbnN0IG5vY2ggUHJvYmxlbWUgaGFzdCwgS2FmZiwgZ2VoJyB6dQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBLb2JvbGRzXSBNYXJ2aW4gdW5kIHJlZCcgbWl0IGlobSBkYXJ1ZWJlci4KW1RvZDpMYXJzXSBFaW4gS29ib2xkIGhhdCBnZXJhZGUgS2FmZiB1bWdlYnJhY2h0LgpbVG9kOmVpbiBLb2JvbGRdIEhpIGhpLCBlcndpc2NodC4uLgoKQW5hdG9sIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbGtvaG9scHJvYmxlbWU/IChPbGxpLCAxMi4gRmViIDIwMDEsIDAzOjM1OjQ3KToKCkhhbnN3dXJzdCBoYXQgZ2VyYWRlIGRpZSBTY2hhZW5rZSBiZXRyZXRlbi4KS3JhY2hlbmQgZmFlbGx0IHVudGVuIGVpbmVyIGRlciBHYWVzdGUgYmVzb2ZmZW4gdm9tIFN0dWhsLgpIYW5zd3Vyc3Qgc3RlaHQgdW50ZW4gYXVmIHVuZCB2ZXJsYWVzc3QgZGllIFNjaGFlbmtlIFJpY2h0dW5nIEhhbGxlLgoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmxhISAoR2xvaW5zb24sIDEyLiBGZWIgMjAwMSwgMTg6MTk6MjUpOgpEaWVzIGlzdCBlaW4KTm9ubmUta2Fubi1lbmRsaWNoLXdhcy1pbi1kZXItTW9yZ2VuZ3JhdWVucHJlc3NlYWdlbnR1ci1sZXNlbi11bmQtbXVzcy1uaWNodC1pCnJnZW5kd2VsY2hlLWJvZXNlbi1EaW5nZS1mdWVyLWRpZS1LbGVyaWtlci11bmQtZ2VnZW4tZGllLVphdWJlcmVyLXByb2dyYW1taWVybgotZGllLWRhbm4tZWgtbmljaHQtZHVyY2gtZGllLUJhbGFuY2Uta29tbWVuLW9kZXItd2VnZW4tZGVuZW4tTm9ubmUtbmllLUVyem1hZ2kKZXItd2lyZC11bmQtZGFubi12aWVsbGVpY2h0LW5vY2gtc2NobW9sbGVuZC1pbi1laW4tYW5kZXJlcy1NdWx0aXVzZXItRHVuZ2Vvbi16CmllaHQtQXJ0aWtlbC4gV2llIGhhYmUgaWNoIGRlbiBTYXR6IG5vY2htYWwgYmVnb25uZW4/CgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaWdlbmFydGlnLi4uIChMaWFmYXIsIDEyLiBGZWIgMjAwMSwgMTg6MjU6MzIpOgpDaHVja3lsZWluIHN1Y2h0IEFyaWEgdW5kIGdyYWVidCBqZWRlbiBTdGVpbiB1bS4KQXJpYSBzY2hsZWljaHQgaGVyZWluLgpDaHVja3lsZWluIHdhbmRlbHQgdmVyendlaWZlbHQgbmFjaCBXZXN0ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogIlN0ZWxsZW4iLWFuZ2Vib3QgKEdub21lLCAxMy4gRmViIDIwMDEsIDAwOjA4OjA2KToKfiMhIHJuPVJ1bWF0YSBydD05ODE5ODI4NTcgcmc9YW56ZWlnZW4KfiMhIHRpZD05ODE5ODI4NTcKaGFiIG5lbiBzdG9mZi1kZWxwaGluLCBrYW5uIHNlaHIgZ3V0IGZyYW56b2VzaXNjaCwgZGV1dHNjaCB6dXIgbm90IGF1Y2guCmtyaWVnIGljaCBkYWZ1ZXIgamV0enQgZGllIGRvbGxhcj8gOikKCmduT21lLCBudXIgaGFsYmVybnN0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBHZWJ1cnRzdGFnZSBhIGxhIElDUSAoSHVtbmksIDEzLiBGZWIgMjAwMSwgMDA6NDA6MzYpOgp+IyEgcm49QXBzdSBydD05ODIwMTg5ODYgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05ODE3NjIwMDcKRHUgaGFzdCBub2NoIG5pZSBlZCBiZW51dHp0LCBkZW4gRWRpdG9yIGltIE1VRCwgb2Rlcj8KCnZpIGlzdCBlbWFjcyBkYWdlZ2VuLi4uLi4KCkh1bW5pLCBzY2htYXJybmVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZpZWxlbiBEYW5rIGZ1ZXIgZGllIEdhc3RmcmV1bmRzY2hhZnQgOikgKEFuYWNyaW9uLCAxMy4gRmViIDIwMDEsIDA4OjA3OjQwKToKCkViZW4gYmVpbSBlaW5sb2dnZW4gLi4uCgpEZXIgU3RlaW5iZWlzc2VyIHdhcm50IERpY2g6CiAgJ1dlaGUsIER1IGZhZW5nc3QgYW4sIGFuZGVyZSBTcGllbGVyIGFuenVncmVpZmVuLicKCkRlciBTdGVpbmJlaXNzZXIgdmVyc2Nod2luZGV0IHdpZWRlciwgdW5kIER1IHdhY2hzdCBpbiBlaW5lciBhbmRlcmVuIFdlbHQgYXVmLgoKU2Nob2VuLCBkYXNzIER1IHdpZWRlciBkYSBiaXN0LCBBbmFjcmlvbiEKCkR1IG5pbW1zdCBzY2hvbiBhbSBTcGllbCB0ZWlsIQpWZXJ3ZW5kZSBEZWluZSBhbHRlIHN0ZXJibGljaGUgSHVlbGxlIC4uLgoKRGVpbiBWZXJsb2J1bmdzcmluZyBsZXVjaHRldCBhdWYuIER1IGxpZXN0OiBSb2FuYSBpc3QgbGVpZGVyIG5pY2h0IGRhLgoKRWxlbmRpbCwgU3Ryb2hhbG0gdW5kIEZhbnRhZ2hpcm8gc2luZCBpbSBTcGllbC4KQW53ZXNlbmRlIEVyd2FydGV0ZTogRWxlbmRpbCB1bmQgU3Ryb2hhbG0uCkRpciBmYWVsbHQgZWluLCBkYXNzIER1IHZpZWxsZWljaHQgRGVpbiBCZXR0IG1hY2hlbiBzb2xsdGVzdC4KW21hY2hlIGJldHRdCkR1IHdpbGxzdCBkb2NoIG5pY2h0IGZyZW1kZXIgTGV1dGUgQmV0dGVuIG1hY2hlbj8KCgpOYSB3YXQgZGVubiBudW4/CgpGaW5kIGljaCBqYSB0cm90emRlbSBuZXR0LCBkaWUgWmF1YmVyZXIgaW0gU2NobGFmc2FhbCBlaW56dXF1YXJ0aWVyZW4uCldlc2VudGxpY2ggYmVzc2VyIGFscyBkaWUgdWVibGljaGUgRnVzc21hc3NhZ2UgLi4uLiBNSVQgZGVuIEZ1ZXNzZW4sIG5pY2h0CkZVRVIgZGllIGZ1ZXNzZSwgdmVyc3RlaHQgc2ljaCA7KSAuLi4KCgpBbmFjKiAtIGZpbmRldCBTdHJ1dmJldHRlbiB2aWVsIHp1IGhhcnQgdW5kIHVuYmVxdWVtIHVuZCBqYW1tZXJ0IGRlc2hhbGIKZ2xlaWNoIG1hbCAqSkFNTUVSKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmEsIHdhcyBkZW5uIG51bj8gKE5va2ksIDEzLiBGZWIgMjAwMSwgMTM6MzI6MjUpOgoKRHUgaGFzdCBkZW4gV2FsZHJhbmQgZXJyZWljaHQuIEhpZXIgd2FjaHNlbiBkaWUgQmFldW1lIG5pY2h0bWVociBzbyBkaWNodAoKenVzYW1tZW4gdW5kIGdlYmVuIGRpZSBTaWNodCBhdWYgZWluIHNjaG1hbGVzIEZsdXNzdWZlciBmcmVpLiBFcyBtdXNzIGRhcyBVZmVyCgpkZXMgRHJ1ZGVuZmx1c3NlcyBzZWluLiBEZXIgRmx1c3MgdHJhZWd0IHNlaW5lIFF1ZWxsZSBpbSBub2VyZGxpY2hlbiBUZWlsIGRlcwoKV2FsZGVzLiBFciBmbGllc3N0IG5hY2ggU3VlZGVuIHdlaXRlciB1bmQgdW1zY2hsaWVzc3QgZG9ydCBkZW4gU3RlaW5odWVnZWwgdW0KCnNjaGxpZXNzbGljaCBpbSB3ZXN0bGljaGVuIFRlaWwgZGVzIFdhbGRlcyBpbSBCb2RlbiB6dSB2ZXJzaWNrZXJuLiBFaW5lIGtsZWluZQoKU3RlaW5icnVlY2tlIGZ1ZWhydCBoaWVyIHVlYmVyIGRlbiBGbHVzcy4KCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkd2VzdGVuLCBub3JkZW4gdW5kIHN1ZWRvc3Rlbi4KCgp1bnQgZmx1c3N1ZmVyCgpbLi4uXSBNb21lbnRhbiBrYW5uc3QgZHUgYXVjaCBrZWluZSBCcnVlY2tlIHNlaGVuLCBkaWUgZGlyIGRhcyBVZWJlcnF1ZXJlbiBkZXMKCkZsdXNzZXMgZXJtb2VnbGljaGVuCgp3dWVyZGUuCgpCcnVlY2tlIG9kZXIgbmljaHQgQnJ1ZWNrZSwgZGFzIGlzdCBoaWVyIGRpZSBGcmFnZS4KCm5va2ksIHNpY2ggZnVlciBkYXMgRm9ybWF0IGVudHNjaHVsZGlnZW5kLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEphLCB3YXMgZGVubiBudW4/IChOb2tpLCAxMy4gRmViIDIwMDEsIDE0OjE4OjU3KToKfiMhIHJuPUdsb2luc29uIHJ0PTk4MjA2OTExMyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjA2NzU0NQpXYWVyZSBkb2NoIGRhbm4gZWluZW4gZ2VsdW5nZW5lIEF1ZmdhYmUgZnVlciBKdW5nbWFnaWVyLCBkaWVzZSBHZWdlbmQgbWFsCndlbmlnc3RlbnMgbG9naXNjaCB1bmQgaW4gaWhyZW4gRGV0YWlscyBhdWZ6dXJhZXVtZW4uLi4gaWNoIG1lbGRlIG1pY2gsIHdlbm4KaWNoIG1hbCBkZXByaW1pZXJ0IGdlbnVnIGJpbiwgdW0gbWljaCB3aXp6ZW4genUgbGFzc2VuLiAqendpbmtlcioKTm9raS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSmEsIHdhcyBkZW5uIG51bj8gKEFwb2xsb25pYSwgMTMuIEZlYiAyMDAxLCAxNToyMjowOCk6Cn4jISBybj1Ob2tpIHJ0PTk4MjA3MDMzNyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjA2NzU0NQpXaWUgd2FlcidzLCB3ZW5uIExpbmZsYXMgc2ljaCBkYSBtYWwgc2VpbmUgS3VoZSBiYXN0ZWx0PyA7bykKCkljaCBmdWVyIG1laW5lbiBUZWlsIGhhYiBqZWRlbmZhbGxzIHNjaG9uIGdlbnVnIGF1ZiBkZXIgTGlzdGUuLi4KCkFwbyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEphLCB3YXMgZGVubiBudW4/IChMaW5mbGFzLCAxMy4gRmViIDIwMDEsIDE2OjMyOjIwKToKfiMhIHJuPUFwb2xsb25pYSBydD05ODIwNzQxMjggcmc9c2NobWFycm4KfiMhIHRpZD05ODIwNjc1NDUKSmEsIEtsYXIuIEljaCBoYWIgenVyIFplaXQgamEgYXVjaCBzb25zdCBuaWNodHMgdm9yLiA6KQoKTnVyIHdpZXNvIGhhYmUgaWNoIGRlbiBFaW5kcnVjayBkYXMgbWFuIHNjaG9uIGFscyBXdWVyc3RjaGVubWFnaWVyIHNjaG5lbGwKZWluZSB6dSBsYW5nZSBMaXN0ICh2b3ItKSBoYXQuCgpFZ2FsLCBOb2tpLCB3ZW5uIGR1IE1hZ2llciB3ZXJkZW4gd2lsbHN0LCBpY2ggZXJmdWVsbGUgZGlyIGRlbiBXdW5zY2ggdW5kIGRlaW4KR1MgaXN0IHNjaG9uIHZvcmJlcmVpdGV0IDspCgpMaW5mbGFzLCBtZWludCBkYXMgWm9vayBzY2hvbiBhbiBLdWhlbiBhcmJlaXRldC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZydWVoZXIgd2FyIGFsbGVzIGJlc3Nlci4gKFZhbmlvbiwgMTMuIEZlYiAyMDAxLCAxODoxMjo1OCk6CldhcmdvbiBydWZ0OiBVbmQgVHNjaHVlc3MhCkVpbmUgS3V0c2NoZSBkb25uZXJ0IHZvcmJlaS4gICAKClYqLCBnbGF1YnQsIGRhc3MgbWFuIHZvbSBNdWQgYXVzIGF1Y2ggb2huZSBGYWhyemV1ZyBuYWNoIGhhdXNlIGtvbW10LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FlbXBmZXIgc2luZCBuaWNodCBkdW1tIChEb3R6LCAxMy4gRmViIDIwMDEsIDIwOjE3OjE2KToKCkRlaW4gRnJldW5kIEVsYmVyZXQgd2lsbCBIaXJuIHZvbSBIaW1tZWwgZmFsbGVuIHNlaGVuIGF1cyBkZXIgRmVybmUuCkx1cmNoaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKRG90eiwgbmljaHQgc2NobmVpZGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEdlYnVydHN0YWdlIGEgbGEgSUNRIChWYW5pb24sIDEzLiBGZWIgMjAwMSwgMjA6NTQ6NDQpOgp+IyEgcm49Wm9vayBydD05ODIwOTI3MTggcmc9ZW50d2lja2x1bmcKfiMhIHRpZD05ODE3NjIwMDcKSWNoIGdsYXViIGphIGFuIGRlbiBCRU1GSCwgYWJlciBkYXMgaXMgd29obCBlaW4gYW5kZXJlcyBUaGVtYSA7LSkKClYqIGR1Y2t0IHNpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogR2VidXJ0c3RhZ2UgYSBsYSBJQ1EgKFpvb2ssIDEzLiBGZWIgMjAwMSwgMjA6NTU6MDIpOgp+IyEgcm49VmFuaW9uIHJ0PTk4MjA5NDA4NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MTc2MjAwNwpab29rIHJlaWNodCBWYW5pb24gZWluIFdvZXJ0ZXJidWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmE/IChMaW5mbGFzLCAxNC4gRmViIDIwMDEsIDAxOjMzOjQ2KToKCltBYmVudGV1ZXI6U2VwaGlyb3RoXSBrYW5uIGVzIHNlaW4sIGRhc3MgZXMgaW4gZGVyIGVpc3d1dwoKdW5kIGRhbm4gZm9sZ3RlIFNjaHdlaWdlbi4gS2VpbiBTY2huaXR0LCBrZWluIGdhcm5peC4KSXN0IGVzIHdpcmtsaWNoIHNjaG9uIHNvIHNwYWV0PyA6KQoKTGluZmxhcywgemFlaGx0IGJhbGQgS3VoZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBKYT8gKE1vbnRhbnVzLCAxNC4gRmViIDIwMDEsIDAxOjM1OjI3KToKfiMhIHJuPUxpbmZsYXMgcnQ9OTgyMTEwODI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMTEwODI2ClNjaGFsdCBoYWx0IGRlbiBUT2Rlc2thbmFsIGFuLiBNYW4ga2FubiBhdWNoIG1pdHRlbiBpbSBTYXR6IHN0ZXJiZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhlaWx6d2VpdGllcyA6KSAoU29sbXlyLCAxNC4gRmViIDIwMDEsIDAyOjA1OjE2KToKV29iZWkgZG9jaCBncmFkIGRpZSBLbGVyaWtlciBlaW4gd2VuaWcgaW0gR2VzcHJhZWNoIHNpbmQsIC4uLiB3ZXIgaGF0CmRhIHNlaW5lbiBIZWlsendlaXRpZSBrdXJ6IHZvciBkZXIgS3Jpc3RhbGxlYmVuZSB2ZXJnZXNzJ24gOik/CiBbZmluZ2VyIGxvdmlzXQogTG92aXMgaXN0IGFud2VzZW5kLAogUGFzc2l2IHNlaXQ6IDA3OjQyOjM4CiBMb3ZpcyBpc3QgWndlaXRzcGllbGVyaW4uClNvbG15ciwgOikgSmV0enQgaXN0J3MgcmljaHRpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWmF1YmVyZXIgdW5kIGRpZSBXZWx0IChPYmVybW90eiwgMTQuIEZlYiAyMDAxLCAxMTozNzo0MSk6CkhtLCBTaWx2YW5hIGhhdCBlcndhZWhudCwgZGFzcyBpY2ggaW4gZ3JvZXNzZXJlbiBEaW1lbnNpb25lbiBkZW5rZW4gc29sbC4KVW5kIGljaCBoYWJlIFNpbHZhbmFzIFdpbmsgdmVyc3RhbmRlbjoKClphdWJlcmVyIHNpbmQgZGllIEdyb2Vzc3RlbiEgV2lyIHdlcmRlbiBhbGxlIGFuZGVyZW4gR2lsZGVuIGRlbSBFcmRib2RlbgpnbGVpY2htYWNoZW4hIERhcyBNRyBnZWhvZXJ0IHVucyEgVW5zIGFsbGVpbiEKCk5laW4sIGVzIGdlaG9lcnQgbWlyISBJY2ggYmluIHVuc2NobGFnYmFyISEKCk9NLCBkZXIgbmV1ZSBNZWlzdGVyIGRlcyBNRwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFphdWJlcmVyIHVuZCBkaWUgV2VsdCAoQm9pbmcsIDE0LiBGZWIgMjAwMSwgMTE6Mzk6NTUpOgp+IyEgcm49T2Jlcm1vdHogcnQ9OTgyMTQ3MDYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMTQ3MDYxCkVuZGxpY2ggc2NocmVpYnN0IER1IGluIGRlciByaWNodGlnZW4gUnVicmlrIC4uLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFphdWJlcmVyIHVuZCBkaWUgV2VsdCAoU29sbXlyLCAxNC4gRmViIDIwMDEsIDE1OjU2OjMzKToKfiMhIHJuPUJvaW5nIHJ0PTk4MjE0NzE5NSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjE0NzA2MQpOYWphLHp1ciBOb3QgcGFzc3QgZXMgYXVjaCBub2NoIGluICdHZWphbW1lcicgOikKClNvbG15cnkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpZSB3YWhyISAoVG93ZXIsIDE0LiBGZWIgMjAwMSwgMTc6NDc6MzApOgoKRGVyIFdhZWNodGVyIGhhdCBrZWluZSBMdXN0IG1laHIuCiAgLi4uLm5vcm1hbC9TY2h3ZXJ0Li4uLi4gRHUuLi4uLi4uLi4uLiA6IERyYWtvbmllcndhZWMgKioqKioqKiogLT4gaGFydApEZXIgRHJha29uaWVyd2FlY2h0ZXIgZmFlbGx0IHRvdCB6dSBCb2Rlbi4gCgpTZWx0ZW4gc28gd2FocmUgQXVzc2FnZW4gZ2VsZXNlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogaG1ibCAoQW5hY3Jpb24sIDE0LiBGZWIgMjAwMSwgMTg6MjI6MjIpOgp+IyEgcm49U2FoYWRvb20gcnQ9OTgyMTcxMjM3IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTk4MjE2MjIyMgpBbHNvIHdlbm4gd2lyIHdlaXRlciBzbyBzY2hyZWliZW4sIGVyZGVuIHJ1YnJpa2VuIHdpZSAnRGlza3Vzc2lvbicgdW5kCidzdXBlcnNlaGVyLmdlamFtbWVyJyBjb21pY2hlZnRlIHNlaW4gaW0gdmVyZ2xlaWNoIHp1bSBicm9ja2hhdXMgZy56CgpBbmFjKiBzZW5mdCBtaXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGhtYmwgKFpvb2ssIDE0LiBGZWIgMjAwMSwgMTk6MTg6NTApOgp+IyEgcm49TW9udGFudXMgcnQ9OTgyMTczMTgzIHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTk4MjE2MjIyMgpXaWxsc3QgRHUgVmVybGVnZXJlY2h0ZT8gOykgCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhtYmwgKFpvb2ssIDE0LiBGZWIgMjAwMSwgMTk6MjI6MjApOgp+IyEgcm49VmVjdG9yIHJ0PTk4MjE2MjIyMiByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD05ODIxNjIyMjIKWm9vayBtZWludDogVWxtIGlzdCB0b2xsIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBobWJsIChUaWFtYWssIDE0LiBGZWIgMjAwMSwgMTk6MjM6NTUpOgp+IyEgcm49Wm9vayBydD05ODIxNzQ5NDAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIxNjIyMjIKVGlhbWFrIGVyZ2Flbnp0OiBVbmQgRnVydHdhbmdlbiBlcnN0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBobWJsIChTa3ksIDE0LiBGZWIgMjAwMSwgMjE6MTg6NTEpOgp+IyEgcm49TGlhcmEgcnQ9OTgyMTY2MDA5IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTk4MjE2MjIyMgpobW0gZGVpbmUgYW50d29ydCBrbGluZ3QgaW1obyBldHdhcy4uLmFlaC4uLnNhZ2VuIHdpciBtYWwgc2NoaXpvcGguLipodXN0KgpldHdhcywgYWVoLi5zZWx0c2FtLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogaG1ibCAoR29yLCAxNS4gRmViIDIwMDEsIDAxOjQ2OjA4KToKfiMhIHJuPVRpYW1hayBydD05ODIxNzUwMzUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIxNjIyMjIKR29yIGxvYnQgZGVuIGFybWVuIFRpYW1hayBhdWNoIGdhbnogZG9sbGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWwgd2FzIGFuZCdyZXMgOikgKFNvbG15ciwgMTUuIEZlYiAyMDAxLCAwNjowODowNyk6Cn4jISBvbj1Tb2xteXIgb3Q9OTgyMjEzMjA5IG9nPWdpbGRlbi56YXViZXJlcgpXaWUgd2FlcnMgZGVubiBtaXQgMiBrb25rdXJpZXJlbmRlbiBaYXViZXJlcmdpbGRlbiwgd29iZWkgYmVpZGUgdmVyLQpzdWNoZW4gZGllIE1hY2h0IGltIE1HIGFuIHNpY2ggenUgcmVpc3NlbiA6KSBFcmxhdWJ0ZSBQSydzLCBMZWljaGVuCmZsZWRkZXJuLCBib2VzZSBXb3J0ZSBoaW4gdW5kIGhlciBzY2htZWlzc2VuLiBCZWlkZSBmYW5nZW4gYmVpIE51bGwgYW4KdW5kIG1ldHplbG4gc2ljaCBkYW5uIGFic29sdXQgYmx1dHJ1ZW5zdGlnIG5hY2ggb2Jlbi4gTmF0dWVybGljaCBtdXNzCmVzIGVpbiBTeXN0ZW0gZ2ViZW4sIGluIHdpZSB3ZWl0IG1hbiBQSydzIGF1ZiBTcGllbGVybGV2ZWwgYmVncmVuenQuCkFtIGJlc3RlbiArLTUgb2RlciBzbyA6KQoKU29sbXlyLCBuaWNodCBnYW56IGVybnN0IHVuZCBkaWUgRGlza3Vzc2lvbiBlcm9lZmZuZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHb2V0dGVybWFjaHQgKERlZXBibHVlLCAxNS4gRmViIDIwMDEsIDA5OjE1OjA0KToKfiMhIHJuPURyZWFtZXIgcnQ9OTgyMTc3NTAxIHJnPWdpbGRlbi5rbGVydXMKfiMhIHRpZD05ODIxNTExMzMKPiBEYSBibGVpYnQgZWluIEthbmRyaSB0cm90emRlbSBkZWZlbnNpdiwgYXVjaCB3ZW5uIGljaCBLYW5kcmkgbWFsCj4gZ2VzY2h3b3JlbiBoYWJlIG1laW5lIEtldWxlIHp1IHNjaHdpbmdlbiB1bSBnZWdlbiBVbnRvdGUsIGJvZXNlLAo+IHNhdGFuaXNjaGUgS3JlYXR1cmVuIHp1IGthZW1wZmVuISAod2llIGRlbm4gb2huZSBLUHMpLgoKQWZhaWsga29zdGV0IGRhcyBLZXVsZSBzY2h3aW5nZW4ga2VpbmUgS1BzLiBBbHNvIHNjaHdpbmdlIERlaW5lIEtldWxlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogaG1ibCAoS2FyaXMsIDE1LiBGZWIgMjAwMSwgMTA6NTg6MjcpOgp+IyEgcm49R29yIHJ0PTk4MjE5Nzk2OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjE2MjIyMgpXb3csIHdhcyBrb2VubnQgaWhyIGFsbGUgZWluemVpbGVybi4KR2VuZXJhZWxjaGVuIEthcmlzLCBrYW5uIGRhcyBuaWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNYWwgd2FzIGFuZCdyZXMgOikgKEthcmlzLCAxNS4gRmViIDIwMDEsIDEwOjU5OjUyKToKfiMhIHJuPVNvbG15ciBydD05ODIyMTM2ODcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIyMTM2ODcKRGFzIG1pdCBQaW5reSB1bmQgQnJhaW4gdW5kIGRlciBXZWx0aGVycnNjaGFmdCB3YXIgYWJlciBpbW1lcgpzY2hvbiBuYWNoIDIwIE1pbnV0ZW4gdW5kIHp3ZWkgV2VyYmVibG9lY2tlbiB6dWVuZGUhCgpHZW5lcmFlbGNoZW4gS2FyaXMsIGJpdHRldCBTb2xteXIgdW0gZWluIG5ldWVzIEtvbnplcHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBobWJsIChBbmF0b2wsIDE1LiBGZWIgMjAwMSwgMTY6NTA6NTYpOgp+IyEgcm49RWxlbmRpbCBydD05ODIyNDU1MTUgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9OTgyMTYyMjIyCj4gZmkgdmVjdG9yClZlY3RvciBpc3QgbmljaHQgYW53ZXNlbmQuClp1bGV0enQgZWluZ2Vsb2dndCB2b246IFVsbS4KWnVsZXR6dCBhdXNnZWxvZ2d0OiBEb24sIDE1LiBGZWIgMjAwMSwgMTQ6MjE6MjQgKDAyOjI3OjU3KS4KVm9sbGVyIE5hbWU6IFtBc3Nhc3NpbnNdIFZlY3RvciBsZXJudCBmcmFuem9lc2lzY2ggZmx1Y2hlbgpSYXNzZTogRWxmLCAgR2lsZGU6IFNjaG5lbGxmZXVlcmthcmF0ZWthLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAxMDFkIDE1OjM1OjE2LCAgIFNwaWVsZXJsZXZlbDogMTAxIChTZWhlciksICAgR2lsZGVubGV2ZWw6IE1BWF9JTlQKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogRnJlLCAyNi4gRmViIDE5OTksIDExOjExOjQ2CkJpc2hlciBiZXJlaXRzIDc3IG1hbCBnZXN0b3JiZW4KUHJvamVrdDogQWJ3YXJ0ZW4sIHdhcyBmdWVyIHBlaW5saWNoZSBUaXRlbCBKYXNtaW4gbm9jaCBmaW5kZXQgOy0pCgpTaWVodCBkb2NoIGdhbnogb2sgYXVzLi4uIF06bykuCkFuYXRvbCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGhtYmwgKEthc3BhciwgMTUuIEZlYiAyMDAxLCAxNjo1MTo0Mik6Cn4jISBybj1BbmF0b2wgcnQ9OTgyMjUyMjU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMTYyMjIyCkdpbGRlbmxldmVsOiBNQVhfSU5UID8/IGVya2xhZXIgbWFsOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGhtYmwgKEFuYXRvbCwgMTUuIEZlYiAyMDAxLCAxNjo1MjozOSk6Cn4jISBybj1LYXNwYXIgcnQ9OTgyMjUyMzAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMTYyMjIyCkVzIGhhdCBuaWNodHMsIGFiZXIgYXVjaCBnYXIgbmljaHRzLCBtaXQgSW50ZWxsaWdlbnogICgiSW50IikgenUgdHVuLgoKcS5lLmQuLAoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBobWJsIChLYXNwYXIsIDE1LiBGZWIgMjAwMSwgMTY6NTM6MzcpOgp+IyEgcm49QW5hdG9sIHJ0PTk4MjI1MjM1OSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjE2MjIyMgpIbSBhbHMgZGVpbiBVZWJ1bmdzbGVpdGVyIGthbm4gaWNoIGRhIG51ciBzYWdlbjoKRGFzIGlzdCBzbyBrZWluIEJld2VpcywgbnVsbCBQdW5rdGUgOikgbXVhaGFoYWgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClQtT25saW5lLCBMdWVnZSBhbGxlcyBMdWVnZSAhIDo9KSAoU29sbXlyLCAxNS4gRmViIDIwMDEsIDIwOjAyOjMwKToKSG1tLCBhbHNvIGRpZSBiZWkgVC1PZmZsaW5lIHNpbmQgYWxsZXMgdmVya2Fja3RlLCBkdW1tZSBMdWVnbmVyLiBJY2ggCm1laW4gd2VubiBzY2hvbiBzbyB3YXMgd2llICdGdWVyIGRlbiBHcm9zc3RlaWwgYWxsZXIgVC1PbmxpbmUgU3VyZmVyICcKZXJnZWJlbiBzaWNoIGVyaGVibGljaGUgUHJlaXN2b3J0ZWlsZScgaW0gUHJlc3NldGV4dCBmaW5kZXQgdW5kIGRhcmF1ZmhpbgpzaWNoIGh1bmRlcnRlIExldXRlIGluIGRpdmVyc2VuIE1haWxpbmdsaXN0cyBkYXJ1ZWJlciBhdWZyZWdlbiwgLi4uIGljaAptZWluLCBkYSB3b2xsZW4gZGllIGRpZSBVc2VyIG5vY2ggdmVyYWVwcGVsbiA6KSBTb2xsZW4gc2llIGRvY2ggc2FnZW4sCmRhc3Mgc2ljaCBkYXMgbmljaHQgcmVjaG5ldCB1bmQgc2llIG5pY2h0IHp1IGdyb3NzenVlZ2lnIHdlcmRlbiB3b2xsZW4uCgpTb2xteXIsIGJydW1tZWxuZCwgZ3J1bW1lbG5kIHVuZCBnYW56IHNjaG9lbiB0cmF1cmlnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIEtvbW1lbnRhciAoTGlhcmEsIDE1LiBGZWIgMjAwMSwgMjA6MzI6MjgpOgoKW0FsbGdlbWVpbjpUc3VuYW1pXSB1ZWJyaWdlbnMsIGxhdXQgZWluZXIgYmVrYW5udGVuIEZpcm1hIHdpcmQgRmVybnNlaHNjaGF1bgpbQWxsZ2VtZWluOlRzdW5hbWldIGluIFp1a3VuZnQgZWluZSB2ZW9sbGlnIG5ldWUgRGltZW5zaW9uIGJla29tbWVuLi4uCltBbGxnZW1laW46VHN1bmFtaV0gPDIwOjMwOjQ0PgpbQWxsZ2VtZWluOlRzdW5hbWldIGRpZSBGaXJtYSBoZWlzc3QuLi4uIDwyMDozMTowMD4KW0FsbGdlbWVpbjpUc3VuYW1pXSBUcm9tbWVsd2lyYmVsIDwyMDozMTowND4KW0FsbGdlbWVpbjpUc3VuYW1pXSBtaWNyb3NvZnQgPDIwOjMxOjA2PgpJcmdlbmR3byBsYWNodCBqZW1hbmQgbGF1dGhhbHMuCgpVbmdlc2Nobml0dGVuIC4uLgoKTFoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFZpcmVud2FybnVuZyAiT25UaGVGbHkgKEFubmEgS291cm5pa292YSkiIChBbmF0b2wsIDE1LiBGZWIgMjAwMSwgMjI6MDM6MTYpOgp+IyEgcm49U2NyZWFtZXIgcnQ9OTgyMjcwOTM2IHJnPWFuemVpZ2VuCn4jISB0aWQ9OTgyMTU4NjYxCi4uLi4gUmVhZCBIZWFkIC4uLi4KCkFoYS4gOikKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBWaXJlbndhcm51bmcgIk9uVGhlRmx5IChBbm5hIEtvdXJuaWtvdmEpIiAoU2NyZWFtZXIsIDE1LiBGZWIgMjAwMSwgMjI6MTc6MzApOgp+IyEgcm49QW5hdG9sIHJ0PTk4MjI3MDk5NiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjE1ODY2MQpBbmF0b2wsIG9iIEhlYWQgb2RlciBIYXQsIGlzdCBiZWlkZXMgcmVjaHQgd2VpdCB1ZWJlcm0gQm9kZW4uLi4uCkFiZXIgRGFua2UgZnVlciBkaWUga29ycmVrdHVyLCB3YXIgZWluIHdlcnR2b2xsZXIgQmVpdHJhZyB2b24gRGlyLgoKU2NyZWFtZXIgKCprcmVpc2NodCBiZWkgc292aWVsIGtvcmludGhlbmthY2tlcmVpKikKUC5TLiBiaXR0ZSBncm9zcy1rbGVpbnNjaHJlaWJ1bmcta29ycmVrdHVyZW4gYWxzIG1haWwgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBWaXJlbndhcm51bmcgIk9uVGhlRmx5IChBbm5hIEtvdXJuaWtvdmEpIiAoR2xvaW5zb24sIDE1LiBGZWIgMjAwMSwgMjI6MzA6MDYpOgp+IyEgcm49U2NyZWFtZXIgcnQ9OTgyMjcxODUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMTU4NjYxCkphLCBpcmdlbmR3YW5uIHNvbGx0ZSBBbmF0b2wgcmVkYWt0aW9uZWxsZSBCZWFyYmVpdHVuZyBkZXIgQXJ0aWtlbCBlcmxhdWJ0CndlcmRlbiAtIGVpbmUgQXJ0IFZvcmluc3RhbnogenVtIChEZSlrbGFzc2llcmVyIEdyaW1tYm9ybi4KCkdsb2luKHNvbikgLi4uIGlzdCBuaWNodCBlcm5zdCB6dSBuZWhtZW4gd2VpbCBleHRyZW0gYW5nZXNhZXVlcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG5lbGxlciBUb2QgKFNseWZveCwgMTUuIEZlYiAyMDAxLCAyMzowMjowOCk6ClVnaSBmbGllZ3QgaGVyZWluLgpVZ2kgYmV0cml0dCBkYXMgUG9ydGFsLgpVZ2kgZmxpZWd0IG5hY2ggU3VlZHdlc3Rlbi4KW1RvZDpMYXJzXSBFaW4gT3JrIGhhdCBnZXJhZGUgVWdpIHVtZ2VicmFjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoWm9vaywgMTYuIEZlYiAyMDAxLCAxMzo1Nzo1OCk6Clpvb2sgZ3JpbnN0IFB1ayBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQdWssIDE2LiBGZWIgMjAwMSwgMTM6NTg6NDQpOgp+IyEgcm49Wm9vayBydD05ODIzMjgyNzggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGFuayBkaXIgWm9vaywgZHUgYmlzdCBlYmVuIGRvY2ggd2lya2xpY2ggenUgZ3V0IGZ1ZXIgZGllc2UgV2VsdCA7KQpTb25zdCBoYWV0dGUgaWNoIG5vY2ggZXdpZyB3YXJ0ZW4gbXVlc3Nlbi4KCkRhbmtiYXJlciBQdWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoV3VyemVsLCAxNi4gRmViIDIwMDEsIDEzOjU5OjMxKToKfiMhIHJuPVB1ayBydD05ODIzMjgzMjQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKdG9sbC4gbGFzc3QgdW5zIGVpbmVuIG5ldWVuIHRocmVhZCBkcmF1cyBtYWNoZW4uCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFpvb2ssIDE2LiBGZWIgMjAwMSwgMTM6NTk6NTMpOgp+IyEgcm49V3VyemVsIHJ0PTk4MjMyODM3MSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApHbGVpY2ggZWluZW4gZ2FuemVuIFRocmVhZD8gT2JzIGRhcyBUaGVtYSBoZXJnaWJ0PwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEthcmlzLCAxNi4gRmViIDIwMDEsIDE0OjAwOjI0KToKfiMhIHJuPVd1cnplbCBydD05ODIzMjgzNzEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSmFhYWFhYWEhCgpHZW5lcmFlbGNoZW4gS2FyaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFB1aywgMTYuIEZlYiAyMDAxLCAxNDowMDoyNSk6Cn4jISBybj1ab29rIHJ0PTk4MjMyODM5MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApzaWNoZXIgcmVpY2h0IGRhcywgc29uc3Qgd2lyZCBkb2NoIGFpdWNoIGF1ZiBhbGxlcyBnZWxhbW10IDopCgpQdWssIHN0cmVpY2h0IGVpbiBpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQYXJhY2Vsc3VzLCAxNi4gRmViIDIwMDEsIDE0OjAwOjQ0KToKfiMhIHJuPVB1ayBydD05ODIzMjg0MjUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKU2Nod3VwcGRpd3VwcD8KClBhcmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAxNi4gRmViIDIwMDEsIDE0OjAxOjQ0KToKfiMhIHJuPVBhcmFjZWxzdXMgcnQ9OTgyMzI4NDQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Clpvb2sgemFlaGx0IHNjaG9uIG1hbCBkaWUgUmUncy4gV2llIHdlaXQgd2lyIGtvbW1lbiB3ZXJkZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChPbGxpLCAxNi4gRmViIDIwMDEsIDE0OjAyOjA5KToKfiMhIHJuPVpvb2sgcnQ9OTgyMzI4NTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CktvZW5udGUgemllbWxpY2ggd2VpdCB3ZXJkZW4uLi4uCgpPbGxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChGYW50YWdoaXJvLCAxNi4gRmViIDIwMDEsIDE0OjAyOjExKToKfiMhIHJuPVpvb2sgcnQ9OTgyMzI4NTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmJlc3RpbW10IHdlaXRlciBhbHMgc29uc3Qgd28gKkcqIHZvciBhbGxlbSBtaXQgc2VociB2aWVsIFNpbm4gKmZyZWNoZ3JpbnMKRmFudGEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQYXJhY2Vsc3VzLCAxNi4gRmViIDIwMDEsIDE0OjAyOjI5KToKfiMhIHJuPU9sbGkgcnQ9OTgyMzI4NTI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CldvIGhhdHRlbiB3aXIgZGVubiBkYW1hbHMgYXVmZ2Vob2VydD8KClBhcmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAxNi4gRmViIDIwMDEsIDE0OjAyOjM5KToKfiMhIHJuPVBhcmFjZWxzdXMgcnQ9OTgyMzI4NTQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkxldXRlLCBpbW1lciBlaW5lbiBBcnRpa2VsIG5hY2hlaW5hbmRlci4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChPbGxpLCAxNi4gRmViIDIwMDEsIDE0OjAyOjQ5KToKfiMhIHJuPVpvb2sgcnQ9OTgyMzI4NTU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck9oLCBzb3JyeS4KCk9sbGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQYXJhY2Vsc3VzLCAxNi4gRmViIDIwMDEsIDE0OjAzOjA1KToKfiMhIHJuPU9sbGkgcnQ9OTgyMzI4NTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck5hIGd1dC4KClBhcmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRmFudGFnaGlybywgMTYuIEZlYiAyMDAxLCAxNDowMzoyMSk6Cn4jISBybj1QYXJhY2Vsc3VzIHJ0PTk4MjMyODU4NSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp0dXQgbWljaCBzb3JyeQoqRyogCkZhbnRhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFpvb2ssIDE2LiBGZWIgMjAwMSwgMTQ6MDQ6MzEpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODIzMjg2MDEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSG1tLi4uIGFsc28gaGllciBwYXNzZW4gZXJzdG1hbCBwcm9ibGVtbG9zIDIwMCBNZWxkdW5nZW4gaW4gZGllIFJ1YnJpay4KTWFsIHNlaGVuLCB3YXMgZGFubiBrb21tdC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoWWVuZGksIDE2LiBGZWIgMjAwMSwgMTQ6MDU6MDcpOgp+IyEgcm49Wm9vayBydD05ODIzMjg2NzEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKWVRZCiAgICBzZXR6dCBlaW5lbiBLYXN0ZW4gQmllciBhdXMgYXVmIFJlXjIwMAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAxNi4gRmViIDIwMDEsIDE0OjA1OjI3KToKfiMhIHJuPVllbmRpIHJ0PTk4MjMyODcwNyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApFbmRsaWNoIGVpbiBFaW5zYXR6LgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChCaWVsZWZlbGQsIDE2LiBGZWIgMjAwMSwgMTQ6MDU6MjkpOgp+IyEgcm49Wm9vayBydD05ODIzMjg2NzEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKV2VubiBkaWVzZSBSdWJyaWsgdm9sbCBpc3QsIGdpYnRzIGltbWVyIG5vY2ggZGllIG5hZWNoc3RlLgpJY2ggc2NobGFnZSBzZWhlci5lbnR3aWNrbHVuZyB2b3IuLi4gOikKCi1CaWVsZWZlbGQKUC5TLjogPEhpZXIgZWluZSBHaWxkZSBlaW5zZXR6ZW4+IGFid2VydGVuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE9sbGksIDE2LiBGZWIgMjAwMSwgMTQ6MDU6NDUpOgp+IyEgcm49Wm9vayBydD05ODIzMjg3Mjcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGFubiB3YXJ0ZSBpY2ggbWFsIGF1ZiBSZV4xOTkgOikKCk9sbGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAxNi4gRmViIDIwMDEsIDE0OjA2OjEzKToKfiMhIHJuPU9sbGkgcnQ9OTgyMzI4NzQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkhtbW0uLi4gd29iZWksIHdlciBiZWtvbW10IGRpZSBLaXN0ZSBkYW5uPyBEZXIgbWl0IGRlbSBSZV4yMDA/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFllbmRpLCAxNi4gRmViIDIwMDEsIDE0OjA2OjI3KToKfiMhIHJuPVpvb2sgcnQ9OTgyMzI4NzczIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CktsYXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFBhcmFjZWxzdXMsIDE2LiBGZWIgMjAwMSwgMTQ6MDY6NDEpOgp+IyEgcm49WWVuZGkgcnQ9OTgyMzI4Nzg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cldhc3NuIGZ1ZXIgbmUgU29ydGUgdWViZXJoYXVwdD8KClBhcmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoT2xsaSwgMTYuIEZlYiAyMDAxLCAxNDowNjo1NSk6Cn4jISBybj1ZZW5kaSBydD05ODIzMjg3ODcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRWlnZW50bGljaCBoYWV0dGVuIHdpciBpbm5lciBhbmRlcmVuIFJ1YnJpayBzY2hyZWliZW4gbXVlc3NlbiwgZGFtaXQKR3JpbW1ib3JuIGF1Y2ggd2FzIHp1IHR1biBoYXQgaGludGVyaGVyIDopCgpPbGxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoWm9vaywgMTYuIEZlYiAyMDAxLCAxNDowNzoxMyk6Cn4jISBybj1PbGxpIHJ0PTk4MjMyODgxNSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJY2ggZGFjaHRlLCBkaWUgS2lzdGVuIHRyaW5rZW4gd2lyIGRhbm4gYXVmIGRlciBuYWVjaHN0ZW4gRmV0ZS4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoV3VyemVsLCAxNi4gRmViIDIwMDEsIDE0OjA3OjE1KToKfiMhIHJuPU9sbGkgcnQ9OTgyMzI4ODE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmRlciBoYXQgZG9jaCB1cmxhdWIuCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChPbGxpLCAxNi4gRmViIDIwMDEsIDE0OjA3OjI1KToKfiMhIHJuPVd1cnplbCBydD05ODIzMjg4MzUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSGludGVyaGVyLCBzYWd0ZSBpY2ggZG9jaCA6KQoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFpvb2ssIDE2LiBGZWIgMjAwMSwgMTQ6MDc6MjkpOgp+IyEgcm49V3VyemVsIHJ0PTk4MjMyODgzNSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApVbmQgamVkZXIgYmVrb21tdCBnZW1hZXNzIHNlaW5lbSBUaHJlYWQtQW50ZWlsLiAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoWm9vaywgMTYuIEZlYiAyMDAxLCAxNDowNzo0MSk6Cn4jISBybj1ab29rIHJ0PTk4MjMyODg0OSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApNaXN0LCBpY2ggdGlwcCB6dSBsYW5nc2FtLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChPbGxpLCAxNi4gRmViIDIwMDEsIDE0OjA3OjUxKToKfiMhIHJuPVpvb2sgcnQ9OTgyMzI4ODYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkphdSA6KQoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFBhcmFjZWxzdXMsIDE2LiBGZWIgMjAwMSwgMTQ6MDc6NTkpOgp+IyEgcm49T2xsaSBydD05ODIzMjg4NzEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKT2RlciB6dXZpZWwgOikKClBhcmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoUmF2ZW50aHJvbmUsIDE2LiBGZWIgMjAwMSwgMTQ6MDg6MDApOgp+IyEgcm49Wm9vayBydD05ODIzMjg4NDkgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKV2llIHdpbGxzdCBkdSBkYXMgYmVtZXNzZW4/IDEgQmllciBwcm8gUG9zdGluZz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAxNi4gRmViIDIwMDEsIDE0OjA4OjEzKToKfiMhIHJuPVJhdmVudGhyb25lIHJ0PTk4MjMyODg4MCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApQdWsgd2lyZCBzaWNoIGZyZXVlbiwgd2VubiBlciB3aWVkZXIga29tbXQuIDopCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFpvb2ssIDE2LiBGZWIgMjAwMSwgMTQ6MDg6MzUpOgp+IyEgcm49Wm9vayBydD05ODIzMjg4OTMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQXVqYS4gMSBCaWVyIHBybyBQb3N0aW5nIGlzdCBndXQuIDopCgpab29rIGhpY2tzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChPbGxpLCAxNi4gRmViIDIwMDEsIDE0OjA4OjUzKToKfiMhIHJuPVpvb2sgcnQ9OTgyMzI4OTE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkljaCBzY2hyZWliIGRhbm4gbWFsIHNjaG5lbGxlciA6OQoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFBhcmFjZWxzdXMsIDE2LiBGZWIgMjAwMSwgMTQ6MDg6NTQpOgp+IyEgcm49Wm9vayBydD05ODIzMjg5MTUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSmEsIGJpbiBhdWNoIGRhZnVlciA6KQoKUGFyYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChXdXJ6ZWwsIDE2LiBGZWIgMjAwMSwgMTQ6MDg6NTUpOgp+IyEgcm49Wm9vayBydD05ODIzMjg5MTUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKbWVpbmUgbGViZXIuLi4KCnd1cnplbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFpvb2ssIDE2LiBGZWIgMjAwMSwgMTQ6MDk6MTgpOgp+IyEgcm49V3VyemVsIHJ0PTk4MjMyODkzNSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApUb2xsLCBkcmVpbWFsIFJlXjI1LiBTbyB3aXJkIGRhcyBuaXguIDopCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE9sbGksIDE2LiBGZWIgMjAwMSwgMTQ6MDk6MzQpOgp+IyEgcm49Wm9vayBydD05ODIzMjg5NTggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSG0sIHdpciBzb2xsdGVuIHVucyBhYnNwcmVjaGVuLiAqZyoKCk9sbGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChXdXJ6ZWwsIDE2LiBGZWIgMjAwMSwgMTQ6MDk6NDIpOgp+IyEgcm49Wm9vayBydD05ODIzMjg5NTggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKd2lyIGJyYXVjaGVuIGVpbmUgbW9kZXJpZXJ0ZSBydWJyaWsuCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChPbGxpLCAxNi4gRmViIDIwMDEsIDE0OjA5OjU2KToKfiMhIHJuPVd1cnplbCBydD05ODIzMjg5ODIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSG0sIG1vZGVyaWVydGVyIE11ZWxsLiBOZXR0IDopCgpPbGxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoWm9vaywgMTYuIEZlYiAyMDAxLCAxNDoxMDowNik6Cn4jISBybj1XdXJ6ZWwgcnQ9OTgyMzI4OTgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkJhbWJpPyBEYXMgd2lyZCBTY3JvbGwuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFllbmRpLCAxNi4gRmViIDIwMDEsIDE0OjEwOjIwKToKfiMhIHJuPVpvb2sgcnQ9OTgyMzI5MDA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkdyaW1taSBzY2hyZWlidCBzaWNoIGdlcmFkZSBlaW4gc2NyaXB0LCB3ZWxjaGVzIGF1ZiAiUmVeMTk5OiBIYWNoLi4uIgp0cmlnZ2VydC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChOaXJkYXZvLCAxNi4gRmViIDIwMDEsIDE0OjEwOjMwKToKfiMhIHJuPVpvb2sgcnQ9OTgyMzI5MDA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClZlcmZsaXh0IC4uLiBuaWNodCBzbyBzY2huZWxsISBJY2gga29tbSBqYSBrYXVtIG1pdCAnbm4nIG5hY2ghCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSXNpLCAxNi4gRmViIDIwMDEsIDE0OjEwOjQyKToKfiMhIHJuPVd1cnplbCBydD05ODIzMjg5ODIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKVW5kIHdlbm4gaWNoIGtlaW4gQmllciB3aWxsPwpJc2kgKG5lIGJpZXIgaXN0IGtlaW5lIEtvbXBvIHp1bSB3ZXJmZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoT2xsaSwgMTYuIEZlYiAyMDAxLCAxNDoxMDo0Nik6Cn4jISBybj1OaXJkYXZvIHJ0PTk4MjMyOTAzMCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApXYXMgc29sbGVuIHdpciBlcnN0IHNhZ2VuLCB3aXIgbXVlc3NlbiBzY2hyZWliZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChOaXJkYXZvLCAxNi4gRmViIDIwMDEsIDE0OjExOjA2KToKfiMhIHJuPU9sbGkgcnQ9OTgyMzI5MDQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmljaCBoZWxmIGphIG1pdCAuLiB1bmQgaWNoIG1hZyBrZWluIEJpZXIhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoT2xsaSwgMTYuIEZlYiAyMDAxLCAxNDoxMToxNCk6Cn4jISBybj1OaXJkYXZvIHJ0PTk4MjMyOTA2NiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAprcmllZyBpY2ggZGFubiBkZWlucz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAxNi4gRmViIDIwMDEsIDE0OjExOjE2KToKfiMhIHJuPU9sbGkgcnQ9OTgyMzI5MDQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClZvcnNjaGxhZzogSW1tZXIgbnVyIGVpbmVuIEFydGlrZWwgcHJvIE1pbnV0ZT8gCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE9sbGksIDE2LiBGZWIgMjAwMSwgMTQ6MTE6MzgpOgp+IyEgcm49T2xsaSBydD05ODIzMjkwNzQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKV2VubnMgZGFubiBoaW5oYXV0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTmlyZGF2bywgMTYuIEZlYiAyMDAxLCAxNDoxMjowNik6Cn4jISBybj1PbGxpIHJ0PTk4MjMyOTA5OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAptaXQgbnVyIGVpbmVtIEFydGlrZWwgcHJvIG1pbnV0ZSBkYXVlcnRzIHp1IGxhbmcgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoT2xsaSwgMTYuIEZlYiAyMDAxLCAxNDoxMjozMCk6Cn4jISBybj1OaXJkYXZvIHJ0PTk4MjMyOTEyNiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApIbSwgZ3V0ZXMgQXJndW1lbnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoV3VyemVsLCAxNi4gRmViIDIwMDEsIDE0OjEyOjM0KToKfiMhIHJuPU5pcmRhdm8gcnQ9OTgyMzI5MTI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmF1c3NlcmRlbSwgaGVpc2Ugd2FyIGdlc3Rlcm4gYXVjaCBzY2huZWxsZXIgOikKCnd1cnplbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFRhbmdhbHVyLCAxNi4gRmViIDIwMDEsIDE0OjEzOjEwKToKfiMhIHJuPU9sbGkgcnQ9OTgyMzI5MTUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmhleSB3aWxsIGF1Y2ggd2FzIHNjaHJlaWJlbi4uLi4gaWhyIHNlaWQgbnVyIHNvIHNjaG5lbGwgKmhldWwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoWm9vaywgMTYuIEZlYiAyMDAxLCAxNDoxMzozMyk6Cn4jISBybj1UYW5nYWx1ciBydD05ODIzMjkxOTAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSGV5LCBndXQgVGFuZ2FsdXIuIEd1dCBnZXRyb2ZmZW4uLi4gV2VpdGVyIHNvIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChSYXZlbnRocm9uZSwgMTYuIEZlYiAyMDAxLCAxNDoxNDo1Myk6Cn4jISBybj1ab29rIHJ0PTk4MjMyOTIxMyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApBbHNvIHNvIHdpcmQgZGFzIG5peC4gRXJzdCBiZWkgUmVeMzguLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE9sbGksIDE2LiBGZWIgMjAwMSwgMTQ6MTU6MDUpOgp+IyEgcm49UmF2ZW50aHJvbmUgcnQ9OTgyMzI5MjkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CjM5Li4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFpvb2ssIDE2LiBGZWIgMjAwMSwgMTQ6MTU6NDMpOgp+IyEgcm49T2xsaSBydD05ODIzMjkzMDUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKUHVrLCBzY2hyZWliIGRvY2ggYXVjaCBtYWwgd2FzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDE6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE9sbGksIDE2LiBGZWIgMjAwMSwgMTQ6MTY6MDMpOgp+IyEgcm49Wm9vayBydD05ODIzMjkzNDMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGVyIGxpZWd0IHRvdCB2b3JtIFJlY2huZXIsIHdlbm4gZXIgZGFzIGxpZXN0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoVGFuZ2FsdXIsIDE2LiBGZWIgMjAwMSwgMTQ6MTY6MjcpOgp+IyEgcm49Wm9vayBydD05ODIzMjkzNDMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKaWNoIHdpbGwgamFldHogZW5kbGljaCBhdWNobWFsIHdhcyBzY2hyZWliZW4gIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE9sbGksIDE2LiBGZWIgMjAwMSwgMTQ6MTY6MzcpOgp+IyEgcm49VGFuZ2FsdXIgcnQ9OTgyMzI5Mzg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Clp1IHNwYWV0Li4uIGljaCB3YXIgc2NobmVsbGVyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OTk6IFNDSFdVUFBESVdVUFAhIChBbmF0b2wsIDE2LiBGZWIgMjAwMSwgMTQ6MTY6MzgpOgp+IyEgcm49T2xsaSBydD05ODIzMjkzNjMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQW5mYWVuZ2VyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSXNpLCAxNi4gRmViIDIwMDEsIDE0OjE2OjQ1KToKfiMhIHJuPVpvb2sgcnQ9OTgyMzI5MzQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClVuZCB3ZW5uIHdpciBkaWUgZG9wcGVsdGVuIG5hY2h6YWVobGVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTAwMDogU0NIV1VQUERJV1VQUCEgKElzaSwgMTYuIEZlYiAyMDAxLCAxNDoxNzoxOSk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyMzI5Mzk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClNjaHVtbWxlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTAwMTogU0NIV1VQUERJV1VQUCEgKFRhbmdhbHVyLCAxNi4gRmViIDIwMDEsIDE0OjE5OjAzKToKfiMhIHJuPUlzaSBydD05ODIzMjk0Mzkgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKLi4uLiB1bmQgbm9jaCBlaW5lciBodXBwcyBzY2hvbiAxMDAxCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDAyOiBTQ0hXVVBQRElXVVBQISAoV3VyemVsLCAxNi4gRmViIDIwMDEsIDE0OjE5OjI3KToKfiMhIHJuPVRhbmdhbHVyIHJ0PTk4MjMyOTU0MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApkYXMgYmllciBnYWJzIGFiZXIgYmVpIDIwMCwgbmljaHQgMTAwMC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFpvb2ssIDE2LiBGZWIgMjAwMSwgMTQ6MTk6NTMpOgp+IyEgcm49SXNpIHJ0PTk4MjMyOTQwNSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApEZW4gVGhyZWFkIGhpZXIgbWFsIHdpZWRlciBuYWNoIHZvcm5lIGJyaW5nZW4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDAzOiBTQ0hXVVBQRElXVVBQISAoSXNpLCAxNi4gRmViIDIwMDEsIDE0OjIwOjMxKToKfiMhIHJuPVd1cnplbCBydD05ODIzMjk1Njcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKTmUgYmVpIDEwMAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFB1aywgMTYuIEZlYiAyMDAxLCAxNDoyMDo0NCk6Cn4jISBybj1ab29rIHJ0PTk4MjMyODg2MSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApobmdsLCBkYW5uIG11c3MgaWNoIGFiZXIgc2NobmVsbGVyIHNjaHJlaWJlbiB3ZW5uIGplZGVyIG5hY2ggJXR1YWxlbSBhbnRlaWwKYmVrb21tdCEKClB1ayAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwMDM6IFNDSFdVUFBESVdVUFAhIChUYW5nYWx1ciwgMTYuIEZlYiAyMDAxLCAxNDoyMDo1NCk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTgyMzI5NTY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmVpbmVuIGthc3RlbiBiZWkgMjAwIHVuZCBiZWkgMTAwMCBzaW5kcyBkYW5uIDUgS2Flc3RlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMTYuIEZlYiAyMDAxLCAxNDoyMTowOCk6Cn4jISBybj1QdWsgcnQ9OTgyMzI5NjQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkR1IGJpc3QgY2EgMjAgcmUncyB6dSB3ZWl0IGhpbnRlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMTYuIEZlYiAyMDAxLCAxNDoyMTo1Mik6Cn4jISBybj1ab29rIHJ0PTk4MjMyOTU5MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApBbHNvIERhbmNlciBoYXR0ZSBkYW1hbHMgYmVpIFJlXjEwMDAgZGVuIEthc3RlbiBsb2NrZXIgZ2VtYWNodC4uLgoKQW5hdG9sIC0gd2Vpc3MgZXMgbm9jaCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFBhcmFjZWxzdXMsIDE2LiBGZWIgMjAwMSwgMTQ6MjI6MjQpOgp+IyEgcm49QW5hdG9sIHJ0PTk4MjMyOTcxMiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApBY2gsIER1cmlhbiB3YXJzPwoKUGFyYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDE2LiBGZWIgMjAwMSwgMTQ6MjI6MzQpOgp+IyEgcm49UGFyYWNlbHN1cyBydD05ODIzMjk3NDQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGVyIG1pdCBkZW4gUHlyYW1pZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFB1aywgMTYuIEZlYiAyMDAxLCAxNDoyMjo1Nik6Cn4jISBybj1ab29rIHJ0PTk4MjMyODg5MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp0dSBpY2ggem9vaywgaWNoZyBmcmV1IG1pY2ggd2lya2xpY2ggOikKClB1awoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFllbmRpLCAxNi4gRmViIDIwMDEsIDE0OjIzOjI0KToKfiMhIHJuPUFuYXRvbCBydD05ODIzMjk3NTQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQWNoIHNvLCBEdXJpYW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDE2LiBGZWIgMjAwMSwgMTQ6MjM6NTcpOgp+IyEgcm49WWVuZGkgcnQ9OTgyMzI5ODA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CldlciBzb2xsIGRlbiB1ZWJlaGF1cHQgemFobGVuIGRlbiBLYXN0ZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40NzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoVGFuZ2FsdXIsIDE2LiBGZWIgMjAwMSwgMTQ6MjQ6MDUpOgp+IyEgcm49WWVuZGkgcnQ9OTgyMzI5ODA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmFyZ3MgamV0enQgZmFlbGx0IG1pciBuaXggbWVociBlaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChSYXZlbnRocm9uZSwgMTYuIEZlYiAyMDAxLCAxNDoyNDoxMyk6Cn4jISBybj1Jc2kgcnQ9OTgyMzI5ODM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkRlciwgZGVyIGlobiBhbmdlYm90ZW4gaGF0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFBhcmFjZWxzdXMsIDE2LiBGZWIgMjAwMSwgMTQ6MjU6NTEpOgp+IyEgcm49UmF2ZW50aHJvbmUgcnQ9OTgyMzI5ODUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck5hbnUgLi4uIHBsb2V0emxpY2hlIFN0aWxsZT8KClBhcmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoVGFuZ2FsdXIsIDE2LiBGZWIgMjAwMSwgMTQ6MjY6MDEpOgp+IyEgcm49UmF2ZW50aHJvbmUgcnQ9OTgyMzI5ODUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmhleSB3YXNuIGxvcyBzZWlkIGlociBlaW5nZXNjbGFmZW4uLi4gYmluIGljaCBqZXR6dCBhbGxlaW5lIGRhIGRyYXVzc2VuID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDE2LiBGZWIgMjAwMSwgMTQ6MjY6MTMpOgp+IyEgcm49UmF2ZW50aHJvbmUgcnQ9OTgyMzI5ODUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck1obSAtIHVuZCBkYXMgd2FyPyBWaWVsY2h0IGxhZXNzdCBkZXIgbWl0IHNpY2ggZmVpbHNjaGVuIHVuZCBtYWNodCBuZSBGbGFzY2hlCldlaW4gZHJhdXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41MDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAxNi4gRmViIDIwMDEsIDE0OjI2OjE0KToKfiMhIHJuPVRhbmdhbHVyIHJ0PTk4MjMyOTk2MSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApLZWluZXIgd2lsbCBkZW4gS2FzdGVuIHphaGxlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChXdXJ6ZWwsIDE2LiBGZWIgMjAwMSwgMTQ6MjY6MjMpOgp+IyEgcm49VGFuZ2FsdXIgcnQ9OTgyMzI5OTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmR1IGJyYXVjaHN0IGRvY2ggemVpdCB6dW0gc2NocmVpYmVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTE6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFRhbmdhbHVyLCAxNi4gRmViIDIwMDEsIDE0OjI3OjA0KToKfiMhIHJuPVd1cnplbCBydD05ODIzMjk5ODMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKYWNoc28gZGFzIGlzdCBhYmVyIG5ldHQgdm9uIGV1Y2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChXdXJ6ZWwsIDE2LiBGZWIgMjAwMSwgMTQ6Mjc6MjApOgp+IyEgcm49VGFuZ2FsdXIgcnQ9OTgyMzMwMDI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cmdlcm4gZ2VzY2hlaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFJhdmVudGhyb25lLCAxNi4gRmViIDIwMDEsIDE0OjI3OjUyKToKfiMhIHJuPVd1cnplbCBydD05ODIzMzAwNDAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKWWVuZGkgaGF0IGRlbiBLYXN0ZW4gdWVicmlnZW5zIGdlc2V0enQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41MzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSXNpLCAxNi4gRmViIDIwMDEsIDE0OjI4OjAwKToKfiMhIHJuPVd1cnplbCBydD05ODIzMzAwNDAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQWxzbyBoYWx0ZW4gd2lyIGZlc3Qgd2lyIHNjaHJlaWJlbiB1bSBlaW5lbiBLYXN0ZW4gZGVuIGtlaW5lciB6YWhsdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChUYW5nYWx1ciwgMTYuIEZlYiAyMDAxLCAxNDoyODowNCk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTgyMzMwMDQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClZpZWxlbiBEYW5rICEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChXdXJ6ZWwsIDE2LiBGZWIgMjAwMSwgMTQ6Mjg6NTApOgp+IyEgcm49QWdvbnkgcnQ9OTgyMzMwMTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CndhcnVtIGF1ZmhvZXJlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDE2LiBGZWIgMjAwMSwgMTQ6Mjk6MTIpOgp+IyEgcm49V3VyemVsIHJ0PTk4MjMzMDEzMCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp1bmQgdWViZXJoYXVwdCBkaWUgaGF0dGVuIGFsbGUgZGllIGdsZWljaGUgTnVtbWVyIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFpvb2ssIDE2LiBGZWIgMjAwMSwgMTQ6Mjk6MTYpOgp+IyEgcm49V3VyemVsIHJ0PTk4MjMzMDEzMCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApUc3RzdHRzLi4uIG5vY2ggbmljaHQgbWFsIGRpZSBSZXBseXMgaGF0IGVyIGhvY2hnZXphZWhsdCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQYXJhY2Vsc3VzLCAxNi4gRmViIDIwMDEsIDE0OjI5OjI4KToKfiMhIHJuPVd1cnplbCBydD05ODIzMzAxMzAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKVW5kIHdlbm4gQWdvbnkgamV0enQgd2lya2xpY2ggbWl0IHRmIHVtZ2VoZW4ga29lbm50ZSwgd2FlcmVuIGRpZSBSZSdzIG1hZWNodGlnCmluIGRpZSBIb2VoZSBnZXNjaG5lbGx0LgoKUGFyYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChXdXJ6ZWwsIDE2LiBGZWIgMjAwMSwgMTQ6Mjk6MzApOgp+IyEgcm49SXNpIHJ0PTk4MjMzMDE1MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApnZW5hdS4gemFlaGx0IG5pY2h0IGZ1ZXJzIGJpZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41NDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoVGFuZ2FsdXIsIDE2LiBGZWIgMjAwMSwgMTQ6Mjk6MzQpOgp+IyEgcm49V3VyemVsIHJ0PTk4MjMzMDEzMCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp0ZiBobW0gZGFzIGhhdCBrZWluZW4gU3RpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFnb255LCAxNi4gRmViIDIwMDEsIDE0OjI5OjU4KToKfiMhIHJuPVBhcmFjZWxzdXMgcnQ9OTgyMzMwMTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmhleSwgaWNoIGhhYiBleHRyYSBudXIgbmUgMjUgZGF2b3JnZXNjaHJpZWJlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMTYuIEZlYiAyMDAxLCAxNDozMDowMCk6Cn4jISBybj1UYW5nYWx1ciBydD05ODIzMzAxNzQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQWdvbnkgaGF0IGtlaW5lbiBTdGlsLgoKRGFzIGlzcyduIFVudGVyc2NoaWVkIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41NjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoVGFuZ2FsdXIsIDE2LiBGZWIgMjAwMSwgMTQ6MzA6MTgpOgp+IyEgcm49V3VyemVsIHJ0PTk4MjMzMDE3MCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApub2NoIGVpbmVyIG1laHIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAxNi4gRmViIDIwMDEsIDE0OjMwOjQyKToKfiMhIHJuPVRhbmdhbHVyIHJ0PTk4MjMzMDIxOCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApIZXksIHVudGVyIHZpZXIgV29lcnRlcm4gemFlaGx0cyBhYmVyIGF1Y2ggbmljaHQgc28gcmVjaHQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDE2LiBGZWIgMjAwMSwgMTQ6MzE6MDQpOgp+IyEgcm49Wm9vayBydD05ODIzMzAyNDIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKV2VubiBkYXMgU3BlZWR5IG5vY2ggUmVrdXJzaW9uIGtvZW5udGUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChUYW5nYWx1ciwgMTYuIEZlYiAyMDAxLCAxNDozMToxMCk6Cn4jISBybj1ab29rIHJ0PTk4MjMzMDI0MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApvayBvayBub2NoIGVpbiBhcnRpa2VsIG1laHIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDE2LiBGZWIgMjAwMSwgMTQ6MzE6MTQpOgp+IyEgcm49VGFuZ2FsdXIgcnQ9OTgyMzMwMjE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cm51ciAnbm9jaCBlaW5lciBtZWhyJz8gaXN0IGRhcyBuaWNodCBiaXNzZXJsIHdlbmlnPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTg6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFRhbmdhbHVyLCAxNi4gRmViIDIwMDEsIDE0OjMxOjU1KToKfiMhIHJuPUlzaSBydD05ODIzMzAyNzQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKZGFzIHdhciBkb2NoIGpldHp0IGVpbmRldXRpZyBtZWhyIGluaGFsdCBvZGVyID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDE2LiBGZWIgMjAwMSwgMTQ6MzI6MDUpOgp+IyEgcm49VGFuZ2FsdXIgcnQ9OTgyMzMwMjcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck1pc3Qgd2llZGVyIHp1IGxhaG0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChXdXJ6ZWwsIDE2LiBGZWIgMjAwMSwgMTQ6MzI6MTUpOgp+IyEgcm49VGFuZ2FsdXIgcnQ9OTgyMzMwMzE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cm5pY2h0IHdpcmtsaWNoLiBhYmVyIHBhc3N0IHNjaG9uIGhpZXJoZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42MDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoWm9vaywgMTYuIEZlYiAyMDAxLCAxNDozMjozNyk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTgyMzMwMzM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CldhcnVtIHJlZ3Qgc2ljaCBqZW1hbmQgdWViZXIgZGVuIFRocmVhZCBhdWY/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42MTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoT2xsaSwgMTYuIEZlYiAyMDAxLCAxNDozMjo1MSk6Cn4jISBybj1ab29rIHJ0PTk4MjMzMDM1NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp3ZWlsIHVlYmVyZ2VoZSB0aHJlYWQgc28gc2Nyb2xsdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMTYuIEZlYiAyMDAxLCAxNDozMzowMik6Cn4jISBybj1PbGxpIHJ0PTk4MjMzMDM3MSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOYSB3ZW5uIGRhcyBhbGxlcyBpc3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjYxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChSYXZlbnRocm9uZSwgMTYuIEZlYiAyMDAxLCAxNDozMzowNik6Cn4jISBybj1ab29rIHJ0PTk4MjMzMDM1NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApCaWVybmVpZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjYzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChPbGxpLCAxNi4gRmViIDIwMDEsIDE0OjMzOjMwKToKfiMhIHJuPUFuYXRvbCBydD05ODIzMzAzODIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKR2VuYXUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjYxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChUYW5nYWx1ciwgMTYuIEZlYiAyMDAxLCAxNDozMzozMik6Cn4jISBybj1ab29rIHJ0PTk4MjMzMDM1NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApobW0gamEgayBhYmVyIGVpZ2VudGxpY2ggZWdhbC4uLndhcyBtYW4gbmljaHQgYWxsZXMgZnVlciBlaWVuIGthc3RlbiBiaWVyIHR1CmRlbiBuaWVtYW5kIHN0aWZ0ZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjYyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBZ29ueSwgMTYuIEZlYiAyMDAxLCAxNDozNDoxOCk6Cn4jISBybj1UYW5nYWx1ciBydD05ODIzMzA0MTIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKbGVpZGVyIHdhcmVuIGRpZSAyNSBhcnRpa2VsIGdlbmF1c28gc2NobmVsbCB3aWVkZXIgZ2Vsb2VzY2h0IHdpZQpnZXNjaHJpZWJlbi4uLmRhIG11ZXNzdCBpaHIgbm9jaCBuZSB3ZWlsZSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFpvb2ssIDE2LiBGZWIgMjAwMSwgMTQ6MzQ6MzYpOgp+IyEgcm49QWdvbnkgcnQ9OTgyMzMwNDU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck5hLCBkYXMgdmVyc2NoYWZmdCB1bnMgbm9jaCBlaW4gd2VuaWcgUGxhdHogaW4gZGVyIFJ1YnJpay4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42MzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAxNi4gRmViIDIwMDEsIDE0OjM0OjQ4KToKfiMhIHJuPUFnb255IHJ0PTk4MjMzMDQ1OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApNYWNodCBkb2NoIFNwYXNzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFRhbmdhbHVyLCAxNi4gRmViIDIwMDEsIDE0OjM1OjA2KToKfiMhIHJuPVRhbmdhbHVyIHJ0PTk4MjMzMDQxMiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApnZXNjaGFmZnQgLi4ua2F1bSB6dSBnbGF1YmVuClJ1YnJpayA0Mzogc2NobWFycm4sIEFydGlrZWw6IDE2NCB2b24gMTY0ClJlXjYxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChUYW5nYWx1ciwgMTYuIEZlYiAyMDAxLCAxNDozMzozMik6CltCZXp1ZzogQXJ0aWtlbCAxNTkgdm9uIFpvb2sgdm9tIDE2LiBGZWIgMjAwMSwgMTQ6MzI6MzddCgpobW0gamEgayBhYmVyIGVpZ2VudGxpY2ggZWdhbC4uLndhcyBtYW4gbmljaHQgYWxsZXMgZnVlciBlaWVuIGthc3RlbiBiaWVyIHR1CmRlbiBuaWVtYW5kIHN0aWZ0ZXQKPiBubgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0Lgo+IG5uCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCj4gbm4KTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjYzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQdWssIDE2LiBGZWIgMjAwMSwgMTQ6MzU6NDQpOgp+IyEgcm49VGFuZ2FsdXIgcnQ9OTgyMzMwNTA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmVuZGUgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMTYuIEZlYiAyMDAxLCAxNDozNTo1Nik6Cn4jISBybj1QdWsgcnQ9OTgyMzMwNTQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck1pY2hhZWw/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42NTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoUGFyYWNlbHN1cywgMTYuIEZlYiAyMDAxLCAxNDozNjoxMik6Cn4jISBybj1BbmF0b2wgcnQ9OTgyMzMwNTU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClN0aWNoPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMTYuIEZlYiAyMDAxLCAxNDozNjoyMCk6Cn4jISBybj1QYXJhY2Vsc3VzIHJ0PTk4MjMzMDU3MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOZWluLCBFTkRFISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFBhcmFjZWxzdXMsIDE2LiBGZWIgMjAwMSwgMTQ6MzY6NTMpOgp+IyEgcm49QW5hdG9sIHJ0PTk4MjMzMDU4MCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApBY2hzby4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChUYW5nYWx1ciwgMTYuIEZlYiAyMDAxLCAxNDozNzoxNSk6Cn4jISBybj1QYXJhY2Vsc3VzIHJ0PTk4MjMzMDYxMyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApqZXR6dCBzY2hvbiA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42ODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAxNi4gRmViIDIwMDEsIDE0OjM3OjE5KToKfiMhIHJuPVBhcmFjZWxzdXMgcnQ9OTgyMzMwNjEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ckhhc3QgRHUgJ25lbiBUcmFnZXNraWxsPyBEdSBiaXN0IHNvIHNjaHdlciB2b24gQmVncmlmZi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMTYuIEZlYiAyMDAxLCAxNDozNzoyMyk6Cn4jISBybj1UYW5nYWx1ciBydD05ODIzMzAzMTUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKbWVociB3b3J0ZSBzaW5kIG5pY2h0IHVuYmVkaW5ndCBtZWhyIGluaGFsdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjg6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFB1aywgMTYuIEZlYiAyMDAxLCAxNDozNzoyNSk6Cn4jISBybj1QYXJhY2Vsc3VzIHJ0PTk4MjMzMDYxMyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApBbHNvIGlzdCBqZXR6dCB3aXJrbGljaCBzY2hvbiBTZW5zZSA/IFpaWk9PT09LS0tLSywgdHUgd2FzICEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQYXJhY2Vsc3VzLCAxNi4gRmViIDIwMDEsIDE0OjM3OjM3KToKfiMhIHJuPUFuYXRvbCBydD05ODIzMzA2Mzkgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKTmVlLCBuZSBFcmthZWx0dW5nIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43MDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoWm9vaywgMTYuIEZlYiAyMDAxLCAxNDozODoyNSk6Cn4jISBybj1QYXJhY2Vsc3VzIHJ0PTk4MjMzMDY1NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApab29rIHNjaGF1dCBQdWsgdmVyd3VuZGVydCBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjcxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQYXJhY2Vsc3VzLCAxNi4gRmViIDIwMDEsIDE0OjM5OjM5KToKfiMhIHJuPVpvb2sgcnQ9OTgyMzMwNzA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkRhcyBtYWNoZW4gZGllIERyb2dlbiwgWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjcxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDE2LiBGZWIgMjAwMSwgMTQ6Mzk6NDUpOgp+IyEgcm49Wm9vayBydD05ODIzMzA3MDUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKbmEgd2FzIHNvIHJ1aGlnIHBsb2V0emxpY2g/IEFsbGUgZXJzY2hvZXBmdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjcxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQdWssIDE2LiBGZWIgMjAwMSwgMTQ6Mzk6NDcpOgp+IyEgcm49Wm9vayBydD05ODIzMzA3MDUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKTmEgaWNoIGJla29tbWUgc2Nob24gd2llZGVyIExhbmd3ZWlsZSwgdHV0IHNpY2ggamEgbml4LiBVbmQgbWl0IHRlbG5ldCBrYW5uCm1hbiBlYmVuIGZhc3R0IG51ciBtcGEgbGVzZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjcyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDE2LiBGZWIgMjAwMSwgMTQ6NDA6MTMpOgp+IyEgcm49UHVrIHJ0PTk4MjMzMDc4NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApvaywgZG9jaCBuaWNodCBydWhpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzE6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFB1aywgMTYuIEZlYiAyMDAxLCAxNDo0MDo0OSk6Cn4jISBybj1ab29rIHJ0PTk4MjMzMDcwNSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApXaWVkZXIgbWFsIGZ1ZXIgbmUgaGFsYmUgc3R1bmRlIG9mZiwgc2NoYWZmdCBpaHIgZXMgbWljaCB3aWVkZXIgenUgc2Nob2NrZW4gPwo7KQogClB1aywgZ2xhdWJ0IGRhIG5pY2h0IGRyYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjcyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChXdXJ6ZWwsIDE2LiBGZWIgMjAwMSwgMTQ6NDA6NTEpOgp+IyEgcm49UHVrIHJ0PTk4MjMzMDc4NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApmb3JzY2hlbiBnZWh0IGF1Y2ggbWl0IHRlbG5ldC4KKmF1YSwgbmljaHQgc2NobGFnZW4qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43MzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSXNpLCAxNi4gRmViIDIwMDEsIDE0OjQxOjE1KToKfiMhIHJuPVd1cnplbCBydD05ODIzMzA4NTEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKd2FzIGhhdCBmb3JzY2hlbiBtaXQgQmllcmthZXN0ZW4genUgdHVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFBhcmFjZWxzdXMsIDE2LiBGZWIgMjAwMSwgMTQ6NDE6MTYpOgp+IyEgcm49V3VyemVsIHJ0PTk4MjMzMDg1MSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApTaWUgaGF0IGRhcyBGLVdvcnQgZ2VzYWd0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFRhbmdhbHVyLCAxNi4gRmViIDIwMDEsIDE0OjQxOjI1KToKfiMhIHJuPVd1cnplbCBydD05ODIzMzA4NTEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKaWRsZW4gZ2VodCBhdWNoIGdhbnogaGVydm9yYWdlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAxNi4gRmViIDIwMDEsIDE0OjQyOjAwKToKfiMhIHJuPVRhbmdhbHVyIHJ0PTk4MjMzMDg4NSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApEcm9nZW4/IFdhcyBmdWVyIERyb2dlbj8gCgpab29rIHN0aWVydCBlaW4gd2VuaWcgdm9yIHNpY2ggaGluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMTYuIEZlYiAyMDAxLCAxNDo0MjoyNik6Cn4jISBybj1ab29rIHJ0PTk4MjMzMDkyMCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApNUEEgc2NobWFycm4gc2NocmVpYmVuIGlzdCBuZSBEcm9nZT8gYWIgd2FubiBpc3QgbWFuIGFiaGFlbmdpZz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAxNi4gRmViIDIwMDEsIDE0OjQyOjM4KToKfiMhIHJuPVpvb2sgcnQ9OTgyMzMwOTIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck1pY2ggd3VlcmRlIGphIG1hbCBpbnRlcmVzc2llcmVuLCBvYiBkYXMgJ25uJyBpcmdlbmR3YW5uIGJlaSBuZW0genUKbGFuZ2VuIGlnbm9yaWVydGVuIFRocmVhZCBuZW4gRmVobGVyIHByb2R1emllcnQuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43NjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoV3VyemVsLCAxNi4gRmViIDIwMDEsIDE0OjQyOjQyKToKfiMhIHJuPUlzaSBydD05ODIzMzA5NDYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKYWIgMzAwIGFydGlrZWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43NzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSXNpLCAxNi4gRmViIDIwMDEsIDE0OjQzOjIyKToKfiMhIHJuPVd1cnplbCBydD05ODIzMzA5NjIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKTWhtIC0gc2NoYWZmZW4gd2lyIGRhcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChXdXJ6ZWwsIDE2LiBGZWIgMjAwMSwgMTQ6NDM6NDYpOgp+IyEgcm49SXNpIHJ0PTk4MjMzMTAwMiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApub2NoIDEwIHN0dWVjaywgZGFubiB3aXNzZW4gd2lyIGVzIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoWm9vaywgMTYuIEZlYiAyMDAxLCAxNDo0NDowMik6Cn4jISBybj1XdXJ6ZWwgcnQ9OTgyMzMxMDI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClVpdWl1aXVpLi4uIGRhcyBFbmRlIG5haHQuLi4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43NzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoVGFuZ2FsdXIsIDE2LiBGZWIgMjAwMSwgMTQ6NDQ6MDMpOgp+IyEgcm49V3VyemVsIHJ0PTk4MjMzMDk2MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApuYSBkZW5uIG1hbCBsb3MgZGEgaGViZW4gd2lyIGdyYWRlIGV0d2FzIG1laHIgYWxzIEhhbGJ6ZWl0Ck5OCmh1cHBzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44MDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoVGFuZ2FsdXIsIDE2LiBGZWIgMjAwMSwgMTQ6NDQ6NDQpOgp+IyEgcm49Wm9vayBydD05ODIzMzEwNDIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKbmFudSB0cmF1dCBzaWNoIGtlaW5lciBtZWhyID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChPbGxpLCAxNi4gRmViIDIwMDEsIDE0OjQ0OjQ2KToKfiMhIHJuPVRhbmdhbHVyIHJ0PTk4MjMzMTA0MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOYWphLCBlaW5lbiB3aWxsIGljaCBhdWNoIG5vY2ggc2NocmVpYmVuIHZvciBkZW4gMjAwIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44MTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoWm9vaywgMTYuIEZlYiAyMDAxLCAxNDo0NDo1OCk6Cn4jISBybj1UYW5nYWx1ciBydD05ODIzMzEwODQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRG9jaCBkb2NoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoT2xsaSwgMTYuIEZlYiAyMDAxLCAxNDo0NDo1OSk6Cn4jISBybj1PbGxpIHJ0PTk4MjMzMTA4NiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAoyMDAgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjgwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChUYW5nYWx1ciwgMTYuIEZlYiAyMDAxLCAxNDo0OTowMik6Cn4jISBybj1PbGxpIHJ0PTk4MjMzMTA5OSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApodWNoIGlzdCBqYSB3aWVkZXIgcGxhdHogd2llIGRhcyBkZW5uID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAxNi4gRmViIDIwMDEsIDE0OjQ5OjA4KToKfiMhIHJuPVpvb2sgcnQ9OTgyMzMxMTg4IHJnPW11ZWxsCn4jISB0aWQ9OTgyMzI4Mjc4CldpZWRlciBoaWVyaGluIHp1cnVlY2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppLkEuIEhlcm9NY0ZseSAoV2hpdGV3aXosIDE3LiBGZWIgMjAwMSwgMDA6MjA6NTgpOgpzY2hhdQpEdSBiZWZpbmRlc3QgRGljaCBpbiBlaW5lciBrbGVpbmVuIEthcGVsbGUsIGluIGRlciBEdSBiZXRlbiBrYW5uc3QsIHVtCndpZWRlciBEZWluZSBuYXR1ZXJsaWNoZSBHZXN0YWx0IHp1IGVyaGFsdGVuLiBBbSBub2VyZGxpY2hlbiBFbmRlIHN0ZWh0CmVpbiBBbHRhciwgYXVmIGRlbSBzaWNoIGVpbiBncm9zc2VzIEtyZXV6IGJlZmluZGV0LiBJbiBkZW4gV2FlbmRlbiBzaWVoc3QKRHUgaGVycmxpY2hlIEZlbnN0ZXIsIGR1cmNoIGRpZSB0YWdzdWViZXIgZGFzIExpY2h0IGJ1bnQgaGVyZWluc2NoZWludC4KSW0gU3VlZGVuIGJlZmluZGV0IHNpY2ggZWluZSBUdWVyLCBkaWUgenVyIFN0cmFzc2UgZnVlaHJ0LgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZGVuLgpFaW4gR3JhZmZpdHkuCkluIGVpbmVyIEVja2Ugc3RlaHQgZWluIE9wZmVyc3RvY2suCmJldGUKPiBEdSBoYWVsdHN0IGVpbmUga3VyemUgQW5kYWNodC4KRWluZSBzZWhyIHN0YXJrZSBLcmFmdCBzYXVndCBEaWNoIGF1ZiB1bmQgc3B1Y2t0IERpY2ggd2llZGVyIGF1cy4KPiAgIERlciBTY2hsYWVjaHRlciBncmVpZnQgRGljaCBhdXMgZGVyIEZlcm5lIG1pdCBzZWluZW4gbWVzc2Vyc2NoYXJmZW4gS2xhdWVuCmFuLgogIERlciBTY2hsYWVjaHRlciB0cmlmZnQgRGljaCBoYXJ0LgpbVG9kOkxhcnNdIEVpbiBTY2hsYWVjaHRlciBoYXQgZ2VyYWRlIEhlcm9tY2ZseSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTY2hsYWVjaHRlcl0gU2NoaWNodCBpbSBTY2hhY2h0ISAKSG1tbW0sIGV0d2FzIHZlcmRhdHRlcnQgc2NoYXVzdCBEdSBEaWNoIHVtLgoKCgptYW5jaGUgbWFnaWVyIHR1biBhdWNoIGFsbGVzIHVtIHp1IC4uLiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmR1bWRpZHVtIChIZXJvbWNmbHksIDE4LiBGZWIgMjAwMSwgMDM6MTk6NDgpOgoKc28gdm9uIHdlZ2VuIHNhY2hlbiBzdGVoZW4gbGFzc2VuIHVuZCBzbyA6KQoKUmF1bSBkZXMgS29tbWFuZG9mdWVocmVycy4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHVudGVuLgpFaW4gZHJha29uaXNjaGVyIEtvbW1hbmRvZnVlaHJlci4gICAgICBFaW4gZHJha29uaXNjaGVyIFByaWVzdGVyLgpFaW4gZHJha29uaXNjaGVyIFByaWVzdGVyLiAgICAgICAgICAgICBFaW4gZHJha29uaXNjaGVyIExldXRuYW50LgpFaW4gZHJha29uaXNjaGVyIExldXRuYW50LiAgICAgICAgICAgICBFaW4gZHJha29uaXNjaGVyIExldXRuYW50LgpFaW4gZHJha29uaXNjaGVyIFdhZWNodGVyLiAgICAgICAgICAgICBFaW4gZHJha29uaXNjaGVyIExldXRuYW50LgoKc28gc2FocyBhdXMgYmV2aXIgaWNoIGRhIHJlaW5iaW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBkdW1kaWR1bSAoQW5hY3Jpb24sIDE4LiBGZWIgMjAwMSwgMDM6MjA6NDgpOgp+IyEgcm49SGVyb21jZmx5IHJ0PTk4MjQ2Mjc4OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjQ2Mjc4OApLYWVtcGZlciBhYndlcnRlbiEKCkFuYWMqIC0gS3VyeiB1bmQgcHJhZWduYW50LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gdmllbCB6dW0gVGhlbWEgSiogOikgKFNvbG15ciwgMTguIEZlYiAyMDAxLCAyMDowOTo1Nyk6CkdyYWQgZWJlbiBpbiBGcmFua3MgQWJlbnRldWVya25laXBlOgoKSioga251ZGRlbHQgRSouCkluIEUqIEdlc2ljaHQgc3BpZWdlbHQgc2ljaCBncm9zc2UgTm90LCBlciBoYXQgZ3Jvc3NlIFNjaG1lcnplbi4KRSogc2llaHQgbGVpY2hlbmJsYXNzIGF1cy4KSiogc2FndDogSHVjaCwgd2FzIGhhc3QgRHUgZGVubj8KRSogc2FndDogQWVobSA6KQpFKiBodWVsbHQgc2ljaCBpbiBzZWluZW4gQXN0cmFsbWFudGVsLkVpbiB0cmFuc3BhcmVudGVyIE1hdGVsIHNjaHdlYnQgbmFjaApOb3JkZW4uCgpTb2xteXIsIG5vY2ggRnJhZ2VuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNvIHZpZWwgenVtIFRoZW1hIEoqIDopIChTb2xteXIsIDE4LiBGZWIgMjAwMSwgMjA6MTc6MjMpOgp+IyEgcm49U29sbXlyIHJ0PTk4MjUyMzM5NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjUyMzM5NwpadXIgV2FocnVuZyBkZXIgV3VlcmRlIGRlciBlaW56ZWxuZW4gUGVyc29uZW4sIHRhdXNjaGUgaWNoIHVlYnJpZ2VuZHMKZGFzIEUgbWl0IGxlbmRpbCB1bmQgZGFzIEogbWl0IGFzbWluIGF1cy4gRGFtaXQgaGllciBrZWluZXIgenUgU2NoYWRlbgprb21tdC4KClNvbG15ciwgZnVyY2h0YmFyIGVybnN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZSA6LSkgKE1pcmphbSwgMTguIEZlYiAyMDAxLCAyMToyNzoyMik6ClhYWFhYWCB0ZWlsdCBEaXIgbWl0OiBJY2ggd2Vpc3MsIHdhcnVtJ3MgbGFnIGdhYi4gOikgSWNoIGhhYiBtaXIgRGllZGVyIG1hbApYWFhYWFggdGVpbHQgRGlyIG1pdDogYW5nZXNjaGF1dCAqRyoKCktsZWluZSBTY2h3ZXN0ZXIgTWlyamFtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZSBpcyBrbGFyLi4uIChBcmF0aCwgMTguIEZlYiAyMDAxLCAyMzo0ODozOSk6CmZpbmdlciBkaWVkZXI6CgpEaWVkZXIgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IEFyc2NoIGRlciBXZWx0ICh1ZWJlciBGYWlsZWQ6IENvbm5lY3Rpb24gcmVmdXNlZCkuCi4uLgoKQXJhdGgsIGtpY2hlcm5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9obmUgV29ydGUgOi0pIChEaWVkZXIsIDE5LiBGZWIgMjAwMSwgMTI6NTE6MTQpOgp+IyEgcm49TWlyamFtIHJ0PTk4MjUyODA0MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjUyODA0MgpIbXBmLCBkZXIvZGllIHNvbGwgc2VpbmUvaWhyZSBHbG90emJlYmJsIGJlaSBzaWNoIGxhc3NlbiEKCkRpZWRlciwgZW1wb2VydCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEpvaG5ueWJvc3MsIDE5LiBGZWIgMjAwMSwgMTU6NTE6MjQpOgp+IyEgcm49Wm9vayBydD05ODIzMjg1MDQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKaGllciB2b24gbWlyIGJla29tbXQgaWhyIGF1Y2ggbm9jaCBlaW4gcmUuIGVyd2FydGV0IGFiZXIgbmljaHRzIGtvbnN0cnVrdGl2ZXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSm9obm55Ym9zcywgMTkuIEZlYiAyMDAxLCAxNTo1NDozNyk6Cn4jISBybj1ab29rIHJ0PTk4MjMyODg0OSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApVbmQgamVkZXIgYmVrb21tdCBnZW1hZXNzIHNlaW5lbSBUaHJlYWQtQW50ZWlsLiAKc2NoZWlzc2UsIGRhbm4gbXVzcyBpY2ggamEgbm9jaCBlaW4gcGFhciBhcnRpa2VsIHNjaHJlaWJlbi4uLi4gCgoKCgoqdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdGlwcHQKaXBwdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdGlwCnB0aXBwdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdAppcHB0aXBwdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdGlwcHRpcHB0aXBwdGlwcAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTAwMzogU0NIV1VQUERJV1VQUCEgKEpvaG5ueWJvc3MsIDE5LiBGZWIgMjAwMSwgMTU6NTg6NTcpOgp+IyEgcm49V3VyemVsIHJ0PTk4MjMyOTU2NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApzb3dhcyBrYW5uIG1hbiBudXIgYWxzIHNlaGVyIG9kZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGltIEZpbmFsRnJvbnRpZXIuLi46IChTb2xteXIsIDE5LiBGZWIgMjAwMSwgMTc6MDk6NDcpOgpOZXVsaWNoIGltIEZpbmFsRnJvbnRpZXIuLi46CmZyYWdlIG5lbHJveSBuYWNoIHNvbApOZWxyb3kgc2FndDogSG1tLi4uIFdlbm4gRHUgaGllciB3YXMgd2lsbHN0LCBzb2xsdGVzdCBEdSBkZXV0c2NoIHJlZGVuLiBXZW5uCkR1CmdsYXVic3QgaWNoIHJlYWdpZXJlIGF1ZiBlaW4gZWluemlnZXMgV29ydCwgZGFubiBzcGllbCBkb2NoIGxpZWJlcgpNb3JnZW5HcmF1ZW4uCgpTb2xteXIgd2lsbCBuZSBNb2VyZGVybWVsZHVuZywgd28gRmluYWxGIGRyaW4gdm9ya29tbXQuIFVuZCB3ZW5uIGRhIGpldHp0ClJlcGx5cwprb21tZW4gOiBOZWluLCBpY2ggem9ja2UgbmljaHQgRkYsIG51ciBhbGxlIGhhbGJlIEphaHJlIHBhY2t0IG1pY2ggZWluZQpnZXdpc3NlCk5ldWdpZXIgTmV1ZXMgenUgZW50ZGVja2VuIHVuZCBrb21tZSBkYW5uIHNjaG5lbGwgd2llZGVyIHJ1bnRlciwgd2VubiBpY2ggc2VoZQp3aWUgJ0FuZGVycycgZGllIGFuZGVyZW4gTXVkcyBkb2NoIHNpbmQuIEljaCBmb3JtdWxpZXIgZXMgbWFsIGV4dHJhIGxlaWNodCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWxpY2ggaW0gRmluYWxGcm9udGllci4uLjogKFNvbG15ciwgMTkuIEZlYiAyMDAxLCAxNzoxMDoyNSk6Cn4jISBybj1Tb2xteXIgcnQ9OTgyNTk4OTg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyNTk4OTg3ClVuZCBuaWNodG1hbCBkaWUgRm9ybWF0aWVydW5nIHN0aW1tdCBkYSA6KSAqYWVoKgoKU29sbXlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkcmFrb25pZXIgKEZhaW4sIDE5LiBGZWIgMjAwMSwgMTg6NDg6MjUpOgpEdSB0cmlmZnN0IGRlbiBEcmFrb25pZXJ3YWVjaHRlciBzZWhyIGhhcnQuIApEZXIgRHJha29uaWVyd2FlY2h0ZXIgZmFlbGx0IHRvdCB6dSBCb2Rlbi4gCkVpbiBEcmFrb25pZXJ3YWVjaHRlciBqYWd0IERpY2ggbmljaHQgbWVoci4KCndhciBkZXIgbWljaCB3b2hsIG5jaWh0IG1laHIgamFnZHQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFYmVuIGluIGRlciBBRy4uLiAoRGllZGVyLCAxOS4gRmViIDIwMDEsIDE5OjE2OjU4KToKQmlnYXMgYmVpc3N0IERpciBpbiBkaWUgTmFzZSB1bmQga3JhYmJlbHQgZGFubiBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KCkRpZWRlciwgbWVpbnQ6ICJGZWlnZXIgU2FjayEiIChiencuICJmZWlnZSBTYWVja2luIikgOy0pKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAxOS4gRmViIDIwMDEsIDE5OjUwOjI4KToKfiMhIHJuPVpvb2sgcnQ9OTgyMzMxMzQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CldhcyBzZWlkaWhyIGVpZ2VudGxpY2ggZnVlciBtcGEtQW5mYWVuZ2VyLi4uClVtIGRlbiBLYXN0ZW4gQmllciB6dSBiZWtvbW1lbiwgbXVzcyBtYW4gc2Nob24gcmljaHRpZyBzY2htYXJyZW4uIFVuZCBqZW1hbmQKaGFiZW4sIGRlciByZWdlbG1hZXNzaWcgYXVmcmFldW10LgoKTW9uYXRudXMgd2lsbCBHcmltbWJvcm4tUmVjaHRlLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc293YXMgKExpbmZsYXMsIDIwLiBGZWIgMjAwMSwgMDA6Mzc6NDIpOgoKRGVpbiBGcmV1bmQgWFhYWCB0ZWlsdCBEaXIgbWl0OiB3ZW5uIGRhcyBudXIgYWxsZXMgd2Flciwgd2FzIGFuIG1pcgpEZWluIEZyZXVuZCBYWFhYIHRlaWx0IERpciBtaXQ6IHBlaW5saWNoIGlzIC4uLjotKSkpCgpMaW5mbGFzLCB3dW5kZXJ0IHNpY2ggdWViZXIgZ2Fybml4LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChHcmVsbGdlbiwgMjAuIEZlYiAyMDAxLCAwMjoyMzozNSk6CltUZWFtIDEwOlN0cm9oYWxtXSBtaXN0Li4gaGllciBnZWh0IHRlbGVwb3J0IG5ldCBiZWkgbG9yZW56IDspCi4uLgpbVGVhbSAxMDpUb2RdIFNUUk9IQUxNIEhBVCBEQVMgVEVBTSBWRVJMQVNTRU4uCltUZWFtIDEwOl0gRWxiZXJldCBoYXQgZGllIFRlYW1sZWl0dW5nIHVlYmVybm9tbWVuLiAKW1RvZDpMYXJzXSBMb3JlbnogaGF0IGdlcmFkZSBTdHJvaGFsbSB1bWdlYnJhY2h0LgoKR3JlbGxnZW4sIGFyZ2xuZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFN0YXRpIFNjaHdlaXogKEJvaW5nLCAyMC4gRmViIDIwMDEsIDEwOjM5OjI3KToKfiMhIHJuPVBhcmFjZWxzdXMgcnQ9OTgyNjYwODYyIHJnPXRyZWZmZW4KfiMhIHRpZD05ODI2MTk3NDQKR3V0IGtvbWJpbmllcnQhIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBTdGF0aSBTY2h3ZWl6IChab29rLCAyMC4gRmViIDIwMDEsIDEyOjU5OjA4KToKfiMhIHJuPVBhcmFjZWxzdXMgcnQ9OTgyNjYwODYyIHJnPXRyZWZmZW4KfiMhIHRpZD05ODI2MTk3NDQKVG9sbCwgZGFzIHdpZWRlciBtYWwgZWluIGt1cnplciBBcnRpa2VsIHZvbiBtaXIgc28gZWluZW4gUmllc2VudGhyZWFkCmVudGZhY2h0IGhhdC4gQWJlciB3byBpc3QgbnVuIG1laW4gU3RhdGk/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gbGllYiBpY2ggZGFzLi4uIChNZW5hY2UsIDIwLiBGZWIgMjAwMSwgMTk6MTY6NTUpOgpVZWJlcmdlaGUgQXJ0aWtlbCAyNCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAyNSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgooLi4uKQpiaXM6CiguLi4pClVlYmVyZ2VoZSBBcnRpa2VsIDE2MyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxNjQgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KCl9Tb18ga2FubiBtYW4gYXVjaCBkaWUgTVBBIGR1cmNoYXJiZWl0ZW4uIDtvKQoKTWVuYWNlLCBkZXIga2VpbmUgTHVzdCBhdWYgdWViZXIgMTQwIFNjaG1hcnJuLUFydGlja2VsIGhhdHRlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEb3BwZWx0ZXIgVG9kIChNZW5hY2UsIDIwLiBGZWIgMjAwMSwgMTk6MjA6MjYpOgpbVG9kOkxhcnNdIERlciBBdXNnYW5nIGhhdCBnZXJhZGUgQm9ya2EgdW1nZWJyYWNodC4KW1RvZDpEZXIgQXVzZ2FuZ10gSGUsIGVyIHdvbGx0ZSBkb2NoIHJhdXMhIEpldHp0IHZlcmdsdWVodCBlciBpbSBld2lnZW4gRmV1ZXIhCltUb2Q6RGVyIEF1c2dhbmddIFdhcyBrYW5uIGljaCBkYWZ1ZXI/CltUb2Q6TGFyc10gRGFzIGV3aWdlIEZldWVyIGhhdCBnZXJhZGUgQm9ya2EgdW1nZWJyYWNodC4KW1RvZDpEYXMgZXdpZ2UgRmV1ZXJdIEJyZW5uZSwgQm9ya2EsIGJyZW5uZSEKCkFscyBvYiBlaW5tYWwgc3RlcmJlbiBuaWNodCByZWljaGVuIHd1ZXJkZS4KCk1lbmFjZSwgQm9ya2EgQmVpbGVpZCB3dWVuc2NoZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0dGUgVm9yc3RlbGx1bmcgKFNvbG15ciwgMjAuIEZlYiAyMDAxLCAyMDo1NDo1Mik6CkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IGh1aHUgZGlkYWUKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogaGFzdGUgZGllIG9sbGUgcHV0emUgaW4gZGVuIHNjaHJhbmsKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogZ2VwYWNrdD8gOy0pCkRpZWRlciBydWZ0OiBIQUxaIE1BVUwgRU5ETElDSAoKU29sbXlyIGlzdCBmcmV1bmRsaWNoZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVudHRhZXVzY2hlbmQgOikgKE9sbGksIDIwLiBGZWIgMjAwMSwgMjE6MTc6MzQpOgoKVm9uIFZhcmRpb246IHVpaSAtIG1wYSBkdXJjaCA6LSkKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIFd1cnplbCBpbiBSdWJyaWsgInRyZWZmZW4iLgoKRGFzIHdpcmQgd29obCBuaWUga2xhcHBlbiA6KQoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVudHRhZXVzY2hlbmQgOikgKFd1cnplbCwgMjAuIEZlYiAyMDAxLCAyMToxODo0Mik6Cn4jISBybj1PbGxpIHJ0PTk4MjcwMDI1NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjcwMDI1NApsaWVndCB2aWVsbGVpY2h0IGFuIG1laW5lciBubmFkdy1tZWxkdW5nLi4uCnNjaHJlaWIgc2VsYmVyIHdhcwoKd3VyemVsLCByaWNodGlnZSBydWJyaWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyYXVlbiAuLi4gKnNldWZ6KiAoR3JlaWZheCwgMjAuIEZlYiAyMDAxLCAyMzo1ODozNCk6CgpuZXVsaWNoIGluIGRlciBSYWdlaHVldHRlIC4uLgoKW1JhZ2U6RWluIFJhZ2VsYWJvcl0gR3JlaWZheCBoYXQgbWl0IDY5IFB1bmt0ZW4gZGllIFJ1bmRlIGdld29ubmVuLgpaZXBoeXIgZGVua3QgICAuIG8gTyAod2VpYSkKWGVuYWRhIHN1Y2h0IG5hY2ggVGlsbGllcyBTY2h1bW1lbHRvb2wgYmVpIEdyZWlmYXguCltSYWdlOkx1cmNoaV0gZ3JhdHMgenVja2VyendlcmcgOykKW1JhZ2U6WGVuYWRhXSBlbmRsaWNoIGdyYXR1bGllcnQgaWhtIGVpbmVyIDspCltSYWdlOlhlbmFkYV0gZXIgZmluZyBzY2hvbiBhbiB6dSBqYW1tZXJuIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFN0YXRpIFNjaHdlaXogKEFuYWNyaW9uLCAyMS4gRmViIDIwMDEsIDAwOjAxOjAyKToKfiMhIHJuPUFuYXRvbCBydD05ODI3MDk5OTIgcmc9dHJlZmZlbgp+IyEgdGlkPTk4MjYxOTc0NApIYXN0IG1pY2ggZG9jaCBncmFkZSBhdWYgbmUgSWRlZSBnZWJyYWNodCwgd2VsY2hlcyBMaWVkIG1pciBOYXBzdGVyIG1hbApzY2huZWxsIHp1ciB2VmVyZnVlZ3VuZyBzdGVsbGVuIGtvZW5udGUgLi4uCgpBbmFjKiBzaW5ndCB3YXMgdm9uIExvZXdlbiAuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFN0YXRpIFNjaHdlaXogKEFuYXRvbCwgMjEuIEZlYiAyMDAxLCAwMDowMzoyOCk6Cn4jISBvbj1BbmF0b2wgb3Q9OTgyNzEwMjAyIG9nPXRyZWZmZW4KfiMhIHJuPUthcmlzIHJ0PTk4MjcxMDA4MiByZz10cmVmZmVuCn4jISB0aWQ9OTgyNjE5NzQ0CkViZW4sIHdhcyB3b2xsZW4gZGllIEJheWVybiBtaXQgSG9jaGRldXRzY2g/CgpBbmF0b2wgLT4gdmVybGVndCBuYWNoIHNjaG1hcnJuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFN0YXRpIFNjaHdlaXogKEthcmlzLCAyMS4gRmViIDIwMDEsIDAwOjA1OjE1KToKfiMhIHJuPUFuYXRvbCBydD05ODI3MTAyMDggcmc9c2NobWFycm4KfiMhIHRpZD05ODI2MTk3NDQKSmEsIGRhcyBpc3NlcyBqYS4gRWJlbiBuaXggOikKCkFjaCwgc2NobWFycnQgZG9jaCBiaXR0ZSB3ZXIgYW5kZXJzIHdlaXRlciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWxpY2ggYW4gZGVyIEJ1c2hhbHRlc3RlbGxlIC4uLiAoSHVtbmksIDIxLiBGZWIgMjAwMSwgMDk6NTU6MjApOgp+IyEgb249SHVtbmkgb3Q9OTgyNzQ1NzE0IG9nPXdpdHplCn4jISBybj1BbmFjcmlvbiBydD05ODI3NDM5NDcgcmc9d2l0emUKfiMhIHRpZD05ODI3NDM5NDcKSWNoIHdlaXNzLCBpY2ggYmluIGVpbiBLbHVnc2NoZWlzc2VyLi4uLgpBYmVyIGdlaHQgZGVyIFJlaXNzdmVyc2NobHVzcyBhbiBlaW5lbSBSb2NrIG5hY2ggdW50ZW4gYXVmIHdpZSBkZXIgYW4gZWluZXIKSG9zZT8gVW5kIHdlbm4gZGVtIHNvIGlzdCwgd2llc28gaGF0IG1hbiBkYW5uIG1laHIgQmV3ZWd1bmdzZnJlaWhlaXQgd2VubiBtYW4KZGVuIHZvbiBvYmVuIG9lZmZuZXQ/CgpIdW1uaS4gQW0gYmVzdGVuIHNvZm9ydCB2ZXJsZWdlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYSB3YXMgaXMgbnUgcGFzc2llcnQgLi4uIChDcml0dGVyLCAyMS4gRmViIDIwMDEsIDEzOjEzOjUwKToKRGFzIFBvcnRhbCBmbGFja2VydCBrdXJ6IGF1Zi4gSXJnZW5kd2FzIGlzdCBqZXR6dCBwYXNzaWVydC4gTnVyIHdhcz8KRGVyIEJvZGVuIGJlZ2lubnQgenUgeml0dGVybiB1bmQgYW0gSG9yaXpvbnQgc2NoZWludCBkZXIgSGltbWVsIHp1IGJyZW5uZW4uClBpdGZhbGwgaGF0IGRlbiBTdGVpbiBkZXIgTWFjaHQgYW4gZGllIE9iZXJmbGFlY2hlIGdlYnJhY2h0IHVuZCBzbyBkaWUKUHlyYW1pZGVuIGJlZnJlaXQhIAoKCm5hIGRhcyBpcyBwYXNzaWVydC4uLiBqZXR6dCB3ZWlzcyBpY2ggZW5kbGljaCB3aWUgbWFuIGZ1ZXIgYW5kZXJlIApQeXJhbWlkZW4gbG9lc3QgOikKZ3J1c3MgYy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRGllZGVyLCAyMS4gRmViIDIwMDEsIDIxOjU0OjE5KToKRGVpbiBGcmV1bmQgQmlyZHkgdGVpbHQgRGlyIG1pdDogaWNoIHdlcmQgZGFubiBtYWwgc3RlcmJlbgouLi4KW1RvZDpMYXJzXSBFaW4gZGlja2VyIEFzdCBoYXQgZ2VyYWRlIEJpcmR5IHVtZ2VicmFjaHQuCltUb2Q6RWluIGRpY2tlciBBc3RdIEJpcmR5cyBHZW5pY2sgaXN0IGZhc3Qgdm9uIGFsbGVpbmUgZ2Vicm9jaGVuIQoKRWluIFdhaHJzYWdlciA6KQpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVlYmVydHJpZWJlbj8gKFRvd2VyLCAyMS4gRmViIDIwMDEsIDIzOjE2OjIzKToKCkR1IGJldHJhY2h0ZXN0IGRhcyBtZXJrd3VlcmRpZyBzY2hpbW1lcm5kZSBSdW5lbnNjaHdlcnQgZWluZ2VoZW5kLgpFcyBpc3QgZWluZSAyLUhhbmR3YWZmZSB1bmQgZ2Vob2VydCBkZXIgR3J1cHBlIGRlciBTY2h3ZXJ0ZXIgYW4uIEVzIG1hY2h0CnNpY2hlcmxpY2ggZWluZW4gdWViZXJkdXJjaHNjaG5pdHRsaWNoZW4gU2NoYWRlbi4gRXMgd2lyZCB2b24gZWluZXIKdW5oZWltbGljaGVuIEthZWx0ZSBkdXJjaGRydW5nZW4uIEVzIGlzdCBpcmdlbmR3aWUgc2VsdHNhbSBuYXNzLiBFcyBzY2hlaW50CnZlcmdpZnRldCB6dSBzZWluLiBFcyB0cmllZnQgZ2VyYWRlenUgdm9uIFNhZXVyZS4gRXMgaGFja3QgRGVpbmUgR2VnbmVyIGluClN0dWVja2UuIAoKTm8gY29tbWVudCwgVG93ZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoZWhlIChMaW5mbGFzLCAyMS4gRmViIDIwMDEsIDIzOjE3OjQ3KToKW1RvZDpMYXJzXSBFaW4gdm9uIFRvd2VyIGdlc2NoZW5rdGVzIFJ1bmVuc2Nod2VydCBoYXQgZ2VyYWRlIFRvd2VyIHVtZ2VicmFjaHQuCltUb2Q6VG9kXSBEQVMgV0FSIFNDSE9OIERBUyAxMDBURSBNQUwhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVWViZXJ0cmllYmVuPyAoQWdvbnksIDIxLiBGZWIgMjAwMSwgMjM6MTc6NTQpOgp+IyEgcm49VG93ZXIgcnQ9OTgyNzkzNzgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyNzkzNzgzCkR1IGJldHJhY2h0ZXN0IGRhcyBtZXJrd3VlcmRpZyBzY2hpbW1lcm5kZSBSdW5lbnNjaHdlcnQgZWluZ2VoZW5kLgpFcyBpc3QgZWluZSAyLUhhbmR3YWZmZSB1bmQgZ2Vob2VydCBkZXIgR3J1cHBlIGRlciBTY2h3ZXJ0ZXIgYW4uIEVzIG1hY2h0CnNpY2hlcmxpY2ggZWluZW4gdWViZXJkdXJjaHNjaG5pdHRsaWNoZW4gU2NoYWRlbi4gRXMgd2lyZCB2b24gZWluZXIKdW5oZWltbGljaGVuIEthZWx0ZSBkdXJjaGRydW5nZW4uIEVzIGlzdCBpcmdlbmR3aWUgc2VsdHNhbSBuYXNzLiBFcyBzY2hlaW50CnZlcmdpZnRldCB6dSBzZWluLiBFcyB0cmllZnQgZ2VyYWRlenUgdm9uIFNhZXVyZS4gRXMgaGFja3QgRGVpbmUgR2VnbmVyIGluClN0dWVja2UuIAoKTm8gY29tbWVudCwgVG93ZXIuCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCltUb2Q6TGFyc10gRWluIHZvbiBUb3dlciBnZXNjaGVua3RlcyBSdW5lbnNjaHdlcnQgaGF0IGdlcmFkZSBUb3dlciB1bWdlYnJhY2h0LgpbVG9kOlRvZF0gREFTIFdBUiBTQ0hPTiBEQVMgMTAwVEUgTUFMIQpbQmVpbGVpZDpBZ29ueV0gKnBydXN0KgpOZXVlciBBcnRpa2VsIGluIFJ1YnJpayBzY2htYXJybjoKVGl0ZWwgaXN0OiBSZTogVWViZXJ0cmllYmVuPy4KR2liIGpldHp0IERlaW5lbiBUZXh0IGVpbiwKKiogb2RlciAuIHdlbm4gRHUgZmVydGlnIGJpc3QsIH5xIHp1bSBBYmJyZWNoZW4sIH5oIGZ1ZXIgZWluZSBIaWxmc3NlaXRlLgpbQmVpbGVpZDpEaWVkZXJdICpXQUVMWioKCi0tLS0tCm5pY2h0IGdlc2Nobml0dGVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERpZWRlciwgMjEuIEZlYiAyMDAxLCAyMzoxODozNCk6CiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBUb3dlciBpbiBSdWJyaWsgInNjaG1hcnJuIi4Kbm4KLi4uIEFydGlrZWwgMzMgdWViZXIgZGFzIFJ1bmVuc2Nod2VydCAuLi4KMiBTZWsgc3BhZXRlciA6KQpbVG9kOkxhcnNdIEVpbiB2b24gVG93ZXIgZ2VzY2hlbmt0ZXMgUnVuZW5zY2h3ZXJ0IGhhdCBnZXJhZGUgVG93ZXIgdW1nZWJyYWNodC4KW1RvZDpUb2RdIERBUyBXQVIgU0NIT04gREFTIDEwMFRFIE1BTCEKCkRpZWRlciwgYXBwbGF1ZGllcmVuZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoQW5hdG9sLCAyMS4gRmViIDIwMDEsIDIzOjI5OjQzKToKfiMhIHJuPURpZWRlciBydD05ODI3OTM5MTQgcmc9c2NobWFycm4KfiMhIHRpZD05ODI3OTM5MTQKSWhyIG1hY2h0IGV1Y2ggdWViZXIgaWhuIGx1c3RpZy4gClNjaGFlbXQgZXVjaC4KSWhyIHNlaWQgYWxsZSBPLi4uYS4uLi4uLi4uLi4gLgpXaXJrbGljaC4KCkFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKenRvZXRlPyAoRG90eiwgMjEuIEZlYiAyMDAxLCAyMzo0Mzo0Nyk6CgpbVG9kOkxhcnNdIEVpbiBPcmsgaGF0IGdlcmFkZSBDaW5kZXJlbGxhIHVtZ2VicmFjaHQuCkNpbmRlcmVsbGEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCkdpYnQncyBuZXVlcmRpbmdzIGF1Y2ggeih1a3VuZnRzKXRvZXRlKT8KCkRvdHosIGFuZ3N0ZXJmdWVsbHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRqYS4uLiAoRm9vYmFyLCAyMi4gRmViIDIwMDEsIDAwOjI5OjE1KToKRWluIEZvcnNjaGVycHVua3RzYW1tbGVyIHZlcnN1Y2h0LCBlaW5lIHd1bmRlcnNhbWUgQmx1bWUgenUgcGZsdWVja2VuLgpFaW4gRm9yc2NoZXJwdW5rdHNhbW1sZXIgc2NocmVpdCBsYXV0IGF1Zi4uLnNjaGVpbmJhciBoYXQgRXIgc2ljaCBnZXN0b2NoZW4uCkRlciBGb3JzY2hlcnB1bmt0c2FtbWxlciBmYWVsbHQgdG90IHp1IEJvZGVuLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKS29tbXQgZGFzIG9lZnRlciB2b3I/CgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsZWluIGlzdCBrbGVpbiwgUmVzdCBpc3QgZWdhbC4uLiAoQW5hdG9sLCAyMi4gRmViIDIwMDEsIDAxOjE5OjU5KToKPiB1bnQgaG9tcGVsICAgICAgICAgICAgICAgICAgCkRhcyBpc3QgSG9tcGVsLiBFciBpc3QgZnVlciBlaW5lbiBad2VyZyBtaXR0ZWxncm9zcy4KVm9yIERpciBzdGVodCBlaW4gdmVyZ251ZWd0IGRyZWluc2NoYXVlbmRlciBIb2JiaXQuIEVyIHRyYWVndCBlaW5mYWNoZSwKaGVsbGJyYXVuZSBLbGVpZHVuZywgZGllIC4uLgoKTmFqYSwgdm9uIG9iZW4gYmV0cmFjaHRldC4uLgpBbmEgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGVpbiBpc3Qga2xlaW4sIFJlc3QgaXN0IGVnYWwuLi4gKFZhcmxhcmlvbiwgMjIuIEZlYiAyMDAxLCAwMToyMjo1OSk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODAxMTk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyODAxMTk5CldlciBtYWNodCBzaWNoIGF1Y2ggc2Nob24gZGllIE15aGUsIHp1IHVudGVyc2NoZWlkZW4sCndhcyBnZW5hdSBlaW5lbSBkYSBiaXMgenVyIEh5ZnRlIHJlaWNodD8gOykKClZhcmwqLCBhdWNoIEVsZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLbGVpbiBpc3Qga2xlaW4sIFJlc3QgaXN0IGVnYWwuLi4gKERpZWRlciwgMjIuIEZlYiAyMDAxLCAwMToyNDoyNyk6Cn4jISBybj1WYXJsYXJpb24gcnQ9OTgyODAxMzc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyODAxMTk5CnN0ZWxsIG1hbCBEZWluZSBUYXN0YXR1ciB2b24gImt5cmlsbGlzY2giIGF1ZiBEZXV0c2NoIHVtIDopCgpEaWVkZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBLbGVpbiBpc3Qga2xlaW4sIFJlc3QgaXN0IGVnYWwuLi4gKEFuYXRvbCwgMjIuIEZlYiAyMDAxLCAwMToyNTowMyk6Cn4jISBybj1EaWVkZXIgcnQ9OTgyODAxNDY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyODAxMTk5CkR1IG1laW5zdCAia3lyeWxseXNjaCI/IDspCgpBbmEgLSBuaWNodCB3aXJrbGljaCBkYSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtsZWluIGlzdCBrbGVpbiwgUmVzdCBpc3QgZWdhbC4uLiAoR25vbWUsIDIyLiBGZWIgMjAwMSwgMDE6MjU6MDcpOgp+IyEgcm49QW5hdG9sIHJ0PTk4MjgwMTE5OSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjgwMTE5OQpkYXMgbGllZ3QgZWluemlnIHVuZCBhbGxlaW4gYW4gZGVtIGJlc2NocmFlbmt0ZW4gd2Focm5laG11bmdzdmVybW9lZ2VuCmVpbmVzIGVsZmVuLiBhbGxlcywgd2FzIGtsZWluZXIgYWxzIGVpbiBiYXVtIGlzdCwga2FubiBuaWNodCBkZXV0bGljaAp1bnRlcnNjaGllZGVuIHdlcmRlbi4uLiA6KQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEtsZWluIGlzdCBrbGVpbiwgUmVzdCBpc3QgZWdhbC4uLiAoVmFybGFyaW9uLCAyMi4gRmViIDIwMDEsIDAxOjI1OjU3KToKfiMhIHJuPURpZWRlciBydD05ODI4MDE0Njcgcmc9c2NobWFycm4KfiMhIHRpZD05ODI4MDExOTkKUGZmdCwgbmFjaCBkZXIgUmFlY2h0c2NocmF5YnJlcGhvcm0gc29sbHRlIGRhcyBkb2NoIHdvaGwKa2VpbiBQcm9ibGVtIGRhcnN0ZWxsZW4sIG9kZXI/IDspCgpWYXJsYXJpb24sIGt5bnN0bGVyaXNjaGUgRnJlaWhlaXQgZ2VuaWVzc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLbGVpbiBpc3Qga2xlaW4sIFJlc3QgaXN0IGVnYWwuLi4gKEFuYXRvbCwgMjIuIEZlYiAyMDAxLCAwMToyNjo0MCk6Cn4jISBybj1Hbm9tZSBydD05ODI4MDE1MDcgcmc9c2NobWFycm4KfiMhIHRpZD05ODI4MDExOTkKTmljaHQgdm9uIERpY2ggYXVmIGFuZGVyZSBzY2hsaWVzc2VuLiBOdXIgd2VpbCBEdSBCYXVtIHVuZCBFbGYgbmljaHQKdW50ZXJzY2hlaWRlbiBrYW5uc3QgLSB6dW1pbmRlc3Qgd2VubiBkZXIgRWxmIHN0aWxsc3RlaHQgKGFiZXIgZ2liIGVzCnp1LCBzZWxic3Qgd2VubiBlciByZW5udCBiaXN0IER1IERpciB1bnNpY2hlcikgLSBoZWlzc3QgZGFzIG5pY2h0LCBkYXNzCmVzIHVtZ2VrZWhydCBnZW5hdXNvIGlzdCwgR24wbWUuIDspCgpFbGYgQW5hdG9sIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44NjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMi4gRmViIDIwMDEsIDAxOjI3OjIyKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4MjYwODYyOCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOaWNodCBkYXNzIGRlciBUaHJlYWQgaGllciB2ZXJzZWhlbnRsaWNoIHN0aXJidC4gOikKCkFuYXRvbCwgdm9yc29yZ2xpY2guLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEtsZWluIGlzdCBrbGVpbiwgUmVzdCBpc3QgZWdhbC4uLiAoRm9vYmFyLCAyMi4gRmViIDIwMDEsIDAxOjI3OjMwKToKfiMhIHJuPUFuYXRvbCBydD05ODI4MDE2MDAgcmc9c2NobWFycm4KfiMhIHRpZD05ODI4MDExOTkKTXVzcyBtYW4gYXVjaCBuaWNoIHVudGVyc2NoZWlkZW4sIHdpcmQgZWggYmVpZGVzIG1pdCBkZXIgQXh0IHVtZ2VoYWNrdC4KClp3ZXJnIEZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVsaWNoIGFuIGRlciBCdXNoYWx0ZXN0ZWxsZSAuLi4gKEFuYWNyaW9uLCAyMi4gRmViIDIwMDEsIDAyOjI3OjE5KToKfiMhIHJuPUh1bW5pIHJ0PTk4Mjc0NTcyMCByZz1zY2htYXJybgp+IyEgdGlkPTk4Mjc0Mzk0NwpXZW5uIG1hbiBkaWUgSEFuZCBudXIgZ2VudWcgdmVyZHJlaHQgL3ouQi4gbmFjaCBoaW50ZW4pIGlzdCBkaWUgQmV3ZWd1bmcsIHVtCmRlbSBIaW50ZXJtYW4gZGVuIFJlaXZlcnNjaGx1c3MgYXVmenVtYWNoZW4sIGllc2VsYmUgd2llIGRpZSwgdW0gZGVuIGVpZ2VuZW4KUm9jayBhdWZ6dW1hY2hlbiAuLi4KCkFuYWMqIC0gYXVjaCBrbHVnc2NoZWlzc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE5pcmRhdm8sIDIyLiBGZWIgMjAwMSwgMDk6NDE6MTkpOgp+IyEgcm49QW5hdG9sIHJ0PTk4MjgwMTY0MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApzdGltbXQsIGRpZSBeMjAwIG11c3MgamEgbm9jaCBlcnJlaWNodCB3ZXJkZW4uIEljaCBiaW4gZGVubiBtYWwgZ2VzcGFubnQsIHdlcgpkZW4gS2FzdGVuIEJpZXIgYmVrb21tdCwgZGVuIGtlaW5lciBzcGVuZGV0IDotKQoKICBOaXJkYXZvICwgaGlsZnQgYWxsZW4gQmllcnRyaW5rZXJuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44ODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoUHVrLCAyMi4gRmViIDIwMDEsIDExOjIzOjUzKToKfiMhIHJuPU5pcmRhdm8gcnQ9OTgyODMxMjc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClJldHRldCBkZW4gVGhyZWFkICEhISEhISEhCgpQdWssIHdlZGVsdCBtaXQgZGVtICdab29rIFZvcicgRmFlaG5jaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45MDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRmFudGFnaGlybywgMjIuIEZlYiAyMDAxLCAxMToyOTozMyk6Cn4jISBybj1Jc2kgcnQ9OTgyODM3NDc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cmthbm4gbWVyIGRlcyBlc3NlbiA/Pz8/IAoKRmFudGFnaGlybyAod2llIGltbWVyIGh1bmdyaWcpIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTE6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFpvb2ssIDIyLiBGZWIgMjAwMSwgMTI6MDM6MzIpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODI4Mzc3NzMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQWhoaC4uLiBkZXIgVGhyZWFkIGlzdCBub2NoIGluIGRlciBNUEEuIERhcyBpc3QgZ3V0LiBCZWkgMjAwIGdpYnRzIGRpZQpLaXN0ZT8gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45MjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoWm9vaywgMjIuIEZlYiAyMDAxLCAxMjowNzowNCk6Cn4jISBybj1ab29rIHJ0PTk4MjgzOTgxMiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApTbywgbnVuIGhhYmUgaWNoIGRhcyBnZWxlc2VuLiBKYSwgc2llaHQgZG9jaCBzY2hvbiB3aWVkZXIgZ3V0CmF1cy4uLiA6KSkpIFdlciB3b2xsdGUgZGllIEtpc3RlIG5vY2ggbWFsIHNwZW5kZW4/IEljaCB2ZXJnZXNzCmRhcyBpbW1lciB3aWVkZXIuIDopCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFpvb2ssIDIyLiBGZWIgMjAwMSwgMTI6MTE6NTcpOgp+IyEgcm49Wm9vayBydD05ODI4NDAwMjQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKVHlwaXNjaCBTdWVkZGV1dHNjaGxhbmQ6IFN0dXR0Z2FydDogUm9iYmllIFdpbGxpYW1zIHZvbiBkZXIKQnVlaG5lIGdlc3Rvc3Nlbi4gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45NDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRmFudGFnaGlybywgMjIuIEZlYiAyMDAxLCAxMjoxNjo1Mik6Cn4jISBybj1ab29rIHJ0PTk4Mjg0MDMxNyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAphbHNvIHdlZ2VuIGRlciBraXN0ZSBiaWVyOiAKd2VubiBub2NoIHdlciBtaXRtYWNodCB1ZWJlcm5laG0gaWNoIG5lIGhhbGJlIGtpc3RlICh6dW0gc3BlbmRlbikgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp2ZXJmcmVzc2VuZSBNZW5zY2hlbj8gKFhlbmFkYSwgMjIuIEZlYiAyMDAxLCAxMjozMToxOSk6CjEyOjI4CkRlaW4gRnJldW5kIEZpcmVoYXdrIHRlaWx0IERpciBtaXQ6IFNvLCBiaW4gZXJzdG1hbCB3aWVkZXIgd2VjaCwgbXVzcyBtYWwgd2FzCkRlaW4gRnJldW5kIEZpcmVoYXdrIHRlaWx0IERpciBtaXQ6IHp1bSBTcGFjaHRlbG4gb3JnYW5pc2llcmVuLiBCaW4KRGVpbiBGcmV1bmQgRmlyZWhhd2sgdGVpbHQgRGlyIG1pdDogd2FocnNjaGVpbmxpY2ggaGV1dGUgYWJlbmQgd2llZGVyIGRhCkljaCBkYWNodGUgRmlyZSogaXMgbWVuc2NoIHVuZCBuaWNoIGhvYmJpdC4uLi5hYmVyIHdlbm4gZXIgc292aWVsIHp1IGVzc2VuCmJyYWNoIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLb2VjaGUgYXVmd2VydGVuISAoT2dhciwgMjIuIEZlYiAyMDAxLCAxMjo0Mjo0Nik6ClVuZ2VzY2huaXR0ZW46CgpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KCkhvZ28gc2Nod2Flcm10OiAKJ0phLCBkYXMgaXN0IGRvY2ggbGVja2VyISBBYmVyIHNvd2FzIG11c3MgaWNoIG1pciBoaWVyIGltbWVyIHNlbGJlciBiZXNvcmdlbiwKIGRlbm4gZGVyIEtvY2ggaXN0IGZ1ZXIgc29sY2hlIERlbGlrYXRlc3NlbiBsZWlkZXIgenUgZGFlbWxpY2guJwoKVmllbGxlaWNodCBzb2xsdGUgSG9nbyBtYWwgZWluZW4gQXVzaGFuZyBtYWNoZW46ICBHYW56ZSBIeWRyYSBnZXN1Y2h0IC0KZ2VkdWVuc3RldCwgbmljaHQgZ2VicmF0ZW4uICBNaXQgZWluIHBhYXIgS1RTUHMgYWxzIEJlbG9obnVuZyBmaW5kZW4Kc2ljaCBiZXN0aW1tdCBmYWVoaWdlcmUgS29lY2hlLiAgOy0pCgotLSAKT2dhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFB1aywgMjIuIEZlYiAyMDAxLCAxNDoyNToxOCk6Cn4jISBybj1ab29rIHJ0PTk4Mjg0MDMxNyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApVbmQgPz8KSGF0IGVyIHVlYmVybGVidCA/Pz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldWxpY2ggYW4gZGVyIEJ1c2hhbHRlc3RlbGxlIC4uLiAoTXVhZGliLCAyMi4gRmViIDIwMDEsIDE0OjQ0OjE5KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk4MjgwNTIzOSByZz1zY2htYXJybgp+IyEgdGlkPTk4Mjc0Mzk0NwpobW0gZHUgdHJhZWdzdCByb2Vja2U/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45NTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMi4gRmViIDIwMDEsIDE1OjEzOjI5KToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTgyODQwNjEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkRhbm4gd2FlcmVuIHdpciBqZXR6dCBiZWkgMSAxLzIgS2lzdGVuLiBZZW5kaSBzcGVuZGV0IGRvY2ggZWluZQpnYW56ZS4gQWJlciBoaWVzcyBkYXMgbmljaHQgIkthc3RlbiI/IEdpYnQgZXMgVW50ZXJzY2hpZWRlIHp3aXNjaGVuCidLYXNjaGRuIEJpYScgdW5kICdLaXNjaGRlIEJpYSc/IEdyb2Vzc2U/IE1hcmtlPyBBbHRlcj8gTWF0ZXJpYWw/CgpBbSBFbmRlIGlzdCBkYXMgYWxsZXMgYW4gZGVuIFRocmVhZCBhbmdlcGFzc3QuLi4gdW5kIF9pbmhhbHRzbG9zXyEKClRyYWdpc2NoCgpEYXMgUmVeOTUgd3VyZGUgSWhuZW4gcHJhZXNlbnRpZXJ0IHZvbgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpZSB3YWhyIChEb3R6LCAyMi4gRmViIDIwMDEsIDE2OjI5OjUxKToKCjpmcmFnZSBwcmllc3RlciBuYWNoIG1vcmdvdGgKRGVyIE9ya3ByaWVzdGVyIHNhZ3Q6IFdlbm4gRHUgbWljaCBzY2hvbiBzbyBkaXJla3QgZnJhZ3N0LiBPay4gRXIgaGF0IHNpY2gKRGVyIE9ya3ByaWVzdGVyIHNhZ3Q6IGRpZXNlIGdhbnplIFN0YWR0IGF1c2dlZGFjaHQuIEVyIGlzdCBhYmVyIHp1bSBHbHVlY2sgbWl0CkRlciBPcmtwcmllc3RlciBzYWd0OiBzZWluZW4gSWRlZW4gbm9jaCBuaWNodCBhbSBFbmRlLgpFaW4ga2FsdGVyIFNjaGF1ZXIgbGFldWZ0IERpciB1ZWJlciBkZW4gUnVlY2tlbi4KCkRvdHosIGltbWVyIG5vY2ggb2huZSBTY2huZWlkZW1lc3NlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAyMi4gRmViIDIwMDEsIDE3OjI1OjQ4KToKfiMhIHJuPUFuYXRvbCBydD05ODI4NTEyMDkgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGFubiBoZWxmZSBpY2ggYXVjaCBtYWwgd2llZGVyIG1pdC4KRXMgaGVpc3N0IHRhdHNhZWNobGljaCAnS2lzdGUgQmllcicsIGF1Y2ggd2VubiBkaWUgVW12ZXJwYWNrdW5nIGVoZXIgZWluCkthc3RlbiBpc3QuIEdlbmF1ZXIgZ2VzYWd0LCBlcyBoZWlzc3Qgc29nYXIgQmllcmthc3Rlbiwgd2VubiBtYW4gbnVyIGRpZQpVbXZlcnBhY2t1bmcgbmltbXQuCkFsc286IEtpc3RlIEJpZXIgYWxzIE1lbmdlbmJlemVpY2hudW5nLCBCaWVya2FzdGVuIGFscyBIdWVsbGVuYmV6ZWljaG51bmcuCldvaWxsdGVzdCBEdSBkYXMgd2lya2xpY2ggc28gZ2VuYXUgd2lzc2VuPwoKRWluIFdlaW50cmlua2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45NzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMi4gRmViIDIwMDEsIDE3OjM4OjMzKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4Mjg1OTE0OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApLb21tdCBkcmF1ZiBhbi4gSWNoIGJpbiBrZWluIEJpZXJ0cmlua2VyLCBNSVIgaXN0IGVnYWwsIG9iIFllbmRpCmVpbmVuICJLYXN0ZW4iIG9kZXIgZWluZSAiS2lzdGUiIHNwZW5kaWVydCwgYWxzbyBlaW5lIGxlZXJlIEh1ZWxsZSBvZGVyCmVpbmUgZ2VlaWNodGUgTWVuZ2UgZ2VicmF1dGVzIEd1dC4gOikKCkZhbnRhZ2hpcm8gaGF0ICJLaXN0ZSIgZ2VzYWd0LCBvZGVyPyBBbHNvICJoYWxiZSBLaXN0ZSIsIHVtIGdlbmF1IHp1IHNlaW4uCgpad2lzY2hlbnN0YW5kIGJpcyBkYXRvIGFsc286IEVudHdlZGVyIGVpbiBLYXN0ZW4gdW5kIGVpbmUgaGFsYmUgS2lzdGUuLi4Kb29vZGVyIGVpbmVpbmhhbGIgS2lzdGVuLiBHZW1lc3NlbiBhbiBEZWluZXIgS29lcnBlcmdyb2Vzc2UgZGVzIGVpbmVuIApvZGVyIGFuZGVyZW4gTWl0d2lya2VuZGVuIGtvbW1lIGljaCBuaWNodCB1bWhpbiwgbWlyIHp1IHd1ZW5zY2hlbiwgZGFzcwpZZW5kaSB0YXRzYWVjaGxpY2ggS0FTVEVOIG1laW50OiBNaXRoaWxmZSBkZXNzZW4gZGFubiBlaW4gWndlcmcgbWVociAKZWluZW0gRWxmIHp1bWluZGVzdCBGQVNUIGluIGRpZSBBdWdlbiBzZWhlbiBrYW5uLiBdOm8pCgpBbmEgLSB3ZW5uIFNjaG1hcnJuLCBkYW5uIHJpY2h0aWcgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjIuIEZlYiAyMDAxLCAxNzo1MToxNik6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODU5OTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkFsc28gaWNoIGJpbiBtaXIgc2ljaGVyLCBkYXNzIFllbmRpIGViZW5mYWxscyBlaW5lIG1pdCBCaWVyIGdlZnVlbGx0ZSBLaXN0ZQpnZW1laW50IGhhdC4gRGllIG1laXN0ZW4gS3VsdHVyZW4gc2VoZW4gQmllcmtpc3RlbiBudXIgYWxzIGV4aXN0ZW50IGFuLCB3ZW5uCnNpZSBnZWZ1ZWxsdCBzaW5kLgooc2llIHZlcmxpZXJlbiBpaHJlbiBTdGF0dXMsIHdlbm4gc2llIGxlZXIgc2luZCwgZGFubiBoZWlzc2VuIHNpZSBudXIgbm9jaAonUGZhbmQnKQpBbGxlcmRpbmdzIGJpbiBpY2ggc2Nob24gdWViZXIgamVkZW4gTXVlbnN0ZXJhbmVyIGZyb2gsIGRlciBCaWVyIGluIEtpc3RlbgprZW5udCB1bmQgbmljaHQgZGllIGhhZXVmaWdlciBnZWJyYXVjaHRlIE1lbmdlbmJlemVpY2hudW5nICdQYWxldHRlJwp2ZXJ3ZW5kZXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAyMi4gRmViIDIwMDEsIDE3OjU0OjUxKToKfiMhIHJuPUlzaSBydD05ODI4NjA4MDEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSGFyYXNzZT8KV2FzIGJpdHRlc2Nob2VuIGlzdCBlaW5lIEhhcmFzc2U/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKExpbmZsYXMsIDIyLiBGZWIgMjAwMSwgMTc6NTY6MTApOgp+IyEgcm49SXNpIHJ0PTk4Mjg2MDgwMSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApMYXV0IER1ZGVuOgoKS2FzdGVuID0gdmllcmVja2lnZXIgQmVoYWVsdGVyIG1pdCBEZWNrZWwgKCEpCgpLaXN0ZSA9IFJlY2h0ZWNraWdlciBCZWhhZWx0ZXIgYXVzIGZlc3RlbSBNYXRlcmlhbCAobWVpc3QgbWl0IERlY2tlbCkKCkFsc28gaWNoIGZhdm9yaXNpZXJlIGRpZSBLaXN0ZS4KCkxpbmZsYXMsIHNwZW5kZXQga2VpbiBCaWVyIGhldXRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTAxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjIuIEZlYiAyMDAxLCAxNzo1NzowMik6Cn4jISBybj1MaW5mbGFzIHJ0PTk4Mjg2MDk3MCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJY2ggaGFiIG5vY2gga2VpbmUgQmllcmtpc3RlIG1pdCBEZWNrZWw7IGdlc2VoZW4uCkRhbm4gZnVua3Rpb25pZXJ0IGRhcyBTdGFwZWxuIGRvY2ggbmljaHQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwMjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTGluZmxhcywgMjIuIEZlYiAyMDAxLCAxNzo1Nzo0Mik6Cn4jISBybj1Nb250YW51cyBydD05ODI4NjEwMjIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSmEsIGRhcnVtIEtpc3RlLiBEYSBfbXVzc18gamEgbmljaHQgZWluIERlY2tlbCBkcmF1ZiBzZWluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTAyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjIuIEZlYiAyMDAxLCAxNzo1OToyMSk6Cn4jISBybj1Jc2kgcnQ9OTgyODYxMDkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmFsc28gRHVyaWFuIGhhdCBkYW1hbHMgZGllIEtpc3RlIGZ1ZXIgZWluIHJlXjEwMDA6IFNjaHd1cHBkaXd1cHAgYXVzZ2VnZWJlbi4KSmV0enQgaXN0IHdvaGwgMjAwIHVuZ2Vtb2dlbHQgZGllR3JlbnplLgpPIHRlbXBvcmEgbyBtb3Jlcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwMzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTGluZmxhcywgMjIuIEZlYiAyMDAxLCAxNzo1OTo1NSk6Cn4jISBybj1Nb250YW51cyBydD05ODI4NjExNjEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQWIgMjAwIGFsbGUgMTAwIGVpbmUgS2lzdGUgbWVociwgd2llIHdhZXIgZGFzPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjIuIEZlYiAyMDAxLCAxODowMDoyNyk6Cn4jISBybj1MaW5mbGFzIHJ0PTk4Mjg2MTE5NSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApoYWIgaWNoIGRhcyByaWNodGlnIGdlbGVzZW4sIExpbmZsYXMgc3BlbmRpZXJ0IGJlaSAzMDAgZGllIG5hZWNoc3RlIEtpc3RlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChMaW5mbGFzLCAyMi4gRmViIDIwMDEsIDE4OjAwOjU3KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4Mjg2MTIyNyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOZWluLCBhYmVyIERpciBlaW5lIG5ldWUgQnJpbGxlIDspCgpNaXQgbWVpbmVtIEthc3RlbiBCaWVyIGthbm4gbnVyIGljaCB3YXMgYW5mYW5nZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwNjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTW9udGFudXMsIDIyLiBGZWIgMjAwMSwgMTg6MDI6MjMpOgp+IyEgcm49TGluZmxhcyBydD05ODI4NjEyNTcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRXMgemFlaGxlbiBpbW1lcm51ciBkaWUgZWNodGVuLiBEYXMgc2luZCBkaWUgU3BpZWxyZWdlbG4uIFdlbm4gTGV1dGUgYXVmIGRlbgpmYWxzY2hlbiBBcnRpa2VsIGFudHdvcnRlbiwgc2luZHNpZSBzZWxiZXIgc2NodWxkLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChMaW5mbGFzLCAyMi4gRmViIDIwMDEsIDE4OjAzOjAxKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4Mjg2MTM0MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApPSywgaWNoIHNwZW5kZSBlaW5lIFBhY2t1bmcgV2VydGhlcidzIEVjaHRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjIuIEZlYiAyMDAxLCAxODowNDoxMSk6Cn4jISBybj1MaW5mbGFzIHJ0PTk4Mjg2MTM4MSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApHdXQuIERhbm4gbm9jaG1hbCBlaW5lIEF1ZnphZWhsdW5nIGRlciBCZXV0ZToKUmVeMjAwOiAxIEtpc3RlIEJpZXIgKFllbmRpKSwgMS8yIEtpc3RlIEJpZXIgKEZhbnRhZ2hpcm8pClJlXjMwMDogMSBQYWNrdW5nIFdlcnRoZXIncyBFY2h0ZSAoTGluZmxhcykKCldlciB3aWxsIG5vY2ggbWFsLCB3ZXIgaGF0IG5vY2ggbmljaHQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjIuIEZlYiAyMDAxLCAxODowNjo1OSk6Cn4jISBybj1Nb250YW51cyBydD05ODI4NjE0NTEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSmV0enQgbXVlc3NlbiB3aXIgYmlzIDMwMCBtYWNoZW4gLSBkZW5uIFdlcnRoZXJzIEVjaHRlIGVzcyBpY2ggenVyIE5vdCBhdWNoLgpFU1NFTi4gTmljaHQgc3BlbmRpZXJlbi4gVW50ZXJzY2hpZWQuIDspCgpBbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExMTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTGluZmxhcywgMjIuIEZlYiAyMDAxLCAxODowODoxOSk6Cn4jISBybj1Jc2kgcnQ9OTgyODYxNjY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkRpZSAiRWNodGVuIiBnaWJzIGF1Y2ggcGVyIFBvc3QgOikuIERhbm4gbXVzcyBpY2ggbWVpbmVuIGZhdWxlbiBoaW50ZXJuIG5pY2h0CnNvIHdlaXQgYmV3ZWdlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExMTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRmFudGFnaGlybywgMjIuIEZlYiAyMDAxLCAxODowODoyOSk6Cn4jISBybj1Jc2kgcnQ9OTgyODYxNjY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmljaCB3dWVyZCBzYWdlbiBhdWYgZGVyIHBhcnR5IGluIG11ZW5zdGVyICg9IAoKRmFudGEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMjIuIEZlYiAyMDAxLCAxODowOToyOCk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Mjg2MTcwOSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApvaG9oIGRhbm4gc3BlbmRpZXIgaWNoIGJlc3NlciBuaXggOykKSXNpIChkb2NoX2tlaW5lX01vdXNzZV93ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTEzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDIyLiBGZWIgMjAwMSwgMTg6MTA6MjIpOgp+IyEgcm49SXNpIHJ0PTk4Mjg2MTc2OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApadSBzcGFldCwgSXNpLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDIyLiBGZWIgMjAwMSwgMTg6MTI6MDUpOgp+IyEgcm49QW5hdG9sIHJ0PTk4Mjg2MTgyMiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApXaWVzbywgaGFiIGljaCB3YXMgZ2VzYWd0PwpJc2kgKHdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAyMi4gRmViIDIwMDEsIDE4OjE2OjM2KToKfiMhIHJuPUlzaSBydD05ODI4NjE5MjUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQWxzbyBpY2ggaGFiIGRhcyBXb3J0ICdNb3Vzc2UnIGdhbnogZ2V1dGxpY2ggZ2VsZXNlbiwgSXNpLiBEdSBrYW5uc3QgZGllCk1vdXNzZSBpbW1lcm5vY2ggYWxzIEJlbG9obnVuZyBmdWVyIGRpZSA0MDAgZmVzdGxlZ2VuLCBMaW5mbGFzIGhhdCBqYQoxMDBlci1TY2hyaXR0ZSB2b3JnZXNjaGxhZ2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE2OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDIyLiBGZWIgMjAwMSwgMTg6MjI6MzEpOgp+IyEgcm49TW9udGFudXMgcnQ9OTgyODYyMTk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkFsc28gZ3V0IGVpbmUgUG9ydGlvbiBNb3Vzc2UgKFNjaG9rb2xhZGUsIGdld29yZmVuKSBmdWVyIGRpZSA0MDAKdW5kIHdlaGUgZXMgZmFlbmd0IHNpZSBrZWluZXIgOykKSXNpIChkb2NoX21vdXNzZXdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAyMi4gRmViIDIwMDEsIDE4OjI1OjIzKToKfiMhIHJuPUlzaSBydD05ODI4NjI1NTEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKTmEgYWxzbywgZXMgZ2VodCBkb2NoLgpVbmQgd2llIHZlcnNwcm9jaGVuIGdpYnRzIHZvbiBtaXIgZGFubiB3YXMgZnVlciBkaWUgNTAwLCBuYWVtbGljaDoKNTAwIE1hZ2ljLUthcnRlbiwgYnVudCBnZW1pc2NodC4KT2RlciBhbHRlcm5hdGl2IGF1Y2ggN3RoIHNlYSwgVmFtcGlyZTogVGhlIEV0ZXJuYWwgU3RydWdnbGUsIFgtbWVuLCBMb29uZXkKVHVuZXMsIFBva2Vtb24gb2RlciBhbGxlcyB6dXNhbW1lbmdld29yZmVuLiBTdWNodCBlcyBldWNoIGF1cy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMi4gRmViIDIwMDEsIDE4OjQ3OjUxKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4Mjg2MjcyMyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOYSBkYW5uLiBJY2ggbmVobSBkZW4gNTAwZXIgLSBzb2xsdGUgbWVpbiBaaW1tZXIgZWggbmV1IHRhcGV6aWVyZW4uLiA7KQoKKkRVQ0sqCgpBbmF0b2wgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSXNpLCAyMi4gRmViIDIwMDEsIDE4OjQ5OjEwKToKfiMhIHJuPUFuYXRvbCBydD05ODI4NjQwNzEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKZXJzdG1hbCBzb3dlaXQga29tbWVuIFVORCBkYW5uIG5vY2gga3JpZWdlbiA7KQpJc2kgKHdpcmZ0IGRhbm4gaGFsdCB0aWVmZXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjIuIEZlYiAyMDAxLCAxODo1MTo0OSk6Cn4jISBybj1Jc2kgcnQ9OTgyODY0MTUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck9oLCBlaW4gU3R1ZWNrIENob2NvbGF0IG5laG1lIGljaCBuYXR1ZXJsaWNoIGF1Y2guIEljaCBiaW4gZGEgZmxleGliZWwuCgpEYXMgaGVpc3N0IG5pY2h0LCBkYXNzIGljaCBhbGxlcyBuZWhtZS4KV2lya2xpY2ggbmljaHQuCk9id29obCBpY2ggRWxmIGJpbi4KT2Rlci4uLgpHRVJBREUgd2VpbCBpY2ggRWxmIGJpbi4KRWNodCBqZXR6dC4KSmFqYSwgWndlcmdlIGdsYXViZW4gZGFzIG5pY2h0LgpBYmVyIGRhcyBlcndhcnRldCBqYSBhdWNoIGtlaW5lci4KS2VpbiBFbGYgenVtaW5kZXN0LgpBbHNvIGVpZ2VudGxpY2gga2VpbmVyLgpadW1pbmRlc3Qga2VpbmVyIGRlciBJbnRlbGxpZ2VudGVuLgpWZXJtdXRsaWNoLgpEdW5rZWxlbGZlbiBzaW5kIGphIGF1Y2ggRWxmZW4uCkFiZXIgZGllIGhhYmVuIGphIG5pY2h0bWFsIGVpbmVuIFZhdGVyLgpTbyByYXNzZW50ZWNobmlzY2guClp1bWluZGVzdCBrZWluZW4gSW50ZWxsaWdlbnRlbi4KQWxzbyBrZWluZW4sIGRlciB6YWVobHQuCkljaCBzb2xsdGUgZXR3YXMgZXNzZW4uClVuZCB3ZW5pZ2VyIHJhdWNoZW4uCk9kZXIgenVtaW5kZXN0IGV0d2FzIGFuZGVyZXMuCkdlbGwuCgpSZV4xMTkgLSB3aWVkZXIgdm9uIEFuYXRvbCAobmFjaCBEaWt0YXQgaW4gZGllIEt1ZWNoZSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjE6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjIuIEZlYiAyMDAxLCAxODo1NjoyMyk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODY0MzA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck5hY2h0cmFnOiBFcyB3YXIgc2Nob24gUmVeMTIwLiBBbHNvIGRhcyBqZXR6dCBOci4gMTIxLiBOdXIgc28genVyCkVya2xhZXJ1bmcuIERhcyBtaXQgZGVyIEt1ZWNoZSB3YXIgdWVicmlnZW5zIGVpbiBSZWluZmFsbCwgZGVyIE9mZW4KbXVzcyB2b3JoZWl6ZW4gOykKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmlzY2h3YWFnZSAoQW15bnRob3IsIDIyLiBGZWIgMjAwMSwgMTg6NTc6MzkpOgo+IHN0ZWNrZSBhYWwgaW4gd2FhZ2UKRGFzIGlzdCBlaW5lIEZpc2Nod2FhZ2UhIFVuZCBrZWluZSBBYWx3YWFnZS4KRWluZW4gQWFsIGthbm5zdCBkdSBkb3J0IG5pY2h0IGhpbmVpbnN0ZWNrZW4uCgo+IHN0ZWNrZSBoZXJpbmcgaW4gd2FhZ2UKRGFzIGlzdCBlaW5lIEZpc2Nod2FhZ2UhIFVuZCBrZWluZSBIZXJpbmd3YWFnZS4KRWluZW4gSGVyaW5nIGthbm5zdCBkdSBkb3J0IG5pY2h0IGhpbmVpbnN0ZWNrZW4uCgo+IHN0ZWNrZSBoZWlsYnV0dCBpbiB3YWFnZQpEYXMgaXN0IGVpbmUgRmlzY2h3YWFnZSEgVW5kIGtlaW5lIEhlaWxidXR0d2FhZ2UuCkVpbmVuIEhlaWxidXR0IGthbm5zdCBkdSBkb3J0IG5pY2h0IGhpbmVpbnN0ZWNrZW4uCgpBbXludGhvciwgdmVyd3VuZGVydC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmlzY2h3YWFnZSAoU2lsdmFuYSwgMjIuIEZlYiAyMDAxLCAxOTowMDo0Myk6Cn4jISBybj1BbXludGhvciBydD05ODI4NjQ2NTkgcmc9c2NobWFycm4KfiMhIHRpZD05ODI4NjQ2NTkKQmxpbmQgZ3Vlc3MuLi4gVmVyc3VjaCBkb2NoIG1hbCAic3RlY2tlIGZpc2NoIGluIHdhYWdlIi4gOy0pCgogIFNpbHZhbmEgKGF1Y2ggaXJyaXRpZXJ0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTIyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAyMi4gRmViIDIwMDEsIDE5OjAxOjQxKToKfiMhIHJuPUFuYXRvbCBydD05ODI4NjQ1ODMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSWNoIGthdWZlIGltbWVyIEJpZXJzY2hhY2h0ZWxuLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyMzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMi4gRmViIDIwMDEsIDE5OjAyOjE1KToKfiMhIHJuPVpvb2sgcnQ9OTgyODY0OTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClVuZCB3YXMgaXN0IGRhIGRyaW4/CgpTYWcgbmljaHQgIkJpZXIuIiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyNDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoWm9vaywgMjIuIEZlYiAyMDAxLCAxOTowMjo1NSk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODY0OTM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cldlbm4gaWNoIG5pY2h0IEJpZXIgc2FnZW4gZGFyZiwgZGFubiBzYWcgaWNoIG5peC4KClpvb2sgc2Nod2VpZ3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAyMi4gRmViIDIwMDEsIDE5OjA0OjQzKToKfiMhIHJuPVpvb2sgcnQ9OTgyODY0OTc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkljaCBnbGF1YiAnQmllcnNjaGFjaHRlbCcgaXN0IGVpbiBzdWVkZGV1dHNjaGVyIEJlZ3JpZmYgZnVlciAnUGFsZXR0ZScuCkFiZXIgZGFzIG11ZXNzdGVzdCBkdSBkb2NoIGRhbm4ga2VubmVuLCBBbmF0b2wsIG9kZXI/Ck9kZXIgbGllZ3RzIGRyYW4sIGRhc3MgWm9vayB6dWxhbmdlIGluIEhlc3NlbiB3YXI/CkZyYWdlbiB1ZWJlciBGcmFnZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyNjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoWm9vaywgMjIuIEZlYiAyMDAxLCAxOTowNjo0Nik6Cn4jISBybj1Nb250YW51cyBydD05ODI4NjUwODMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKU28sIG51biBnZWh0cyB3ZWl0ZXIuCgpab29rIGVyd2VpdGVydCBkaWUgTVBBLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjIuIEZlYiAyMDAxLCAxOTowNzoyNCk6Cn4jISBybj1ab29rIHJ0PTk4Mjg2NTIwNiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApIYXN0ZSB3ZW5pZ3N0ZW5zIGRpZSBHcmVuemUgamV0enQgYXVmIDUwMCBnZXNldHp0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAyMi4gRmViIDIwMDEsIDE5OjA3OjQwKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4Mjg2NTI0NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOZWluLCAyMDAuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAyMi4gRmViIDIwMDEsIDE5OjA4OjE2KToKfiMhIHJuPVpvb2sgcnQ9OTgyODY1MjYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CktvZW5udGUgYml0dGUgamVtYW5kIGFsbGUgMjUgQXJ0aWtlbCBwb3N0ZW4sIHdhcyBlcyBmdWVyIHdlbGNoZQpSZXMgZ2lidD8gSWNoIHZlcmdlc3MgZGFzIHNvbnN0IHdpZWRlci4uLgoKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZpc2Nod2FhZ2UgKEFteW50aG9yLCAyMi4gRmViIDIwMDEsIDE5OjA4OjQyKToKfiMhIG9uPUFteW50aG9yIG90PTk4Mjg2NTIxOCBvZz1hbGxnZW1laW5lcwo+IHN0ZWNrZSBmaXNjaCBpbiB3YWFnZQpXQVMgd2lsbHN0IGR1IGluICdXYWFnZScgc3RlY2tlbj8KCkFteW50aG9yLCB6d2VpZmVsbmQsIG9iIHNlaW4gRmlzY2ggd2lya2xpY2ggZWluIEZpc2NoIGlzdC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFpvb2ssIDIyLiBGZWIgMjAwMSwgMTk6MTA6MjgpOgp+IyEgcm49Wm9vayBydD05ODI4NjUyOTYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSmFqYWphLi4uIGlyZ2VuZHdlciBhcmJlaXRldCBkYSBnZWdlbiBkYXMgQmllci4uLi4KCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTMxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDIyLiBGZWIgMjAwMSwgMTk6MTA6MzYpOgp+IyEgcm49Wm9vayBydD05ODI4NjU0Mjggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKS3JpZWcgZGVyIEVyem1hZ2llciEgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzMjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoWm9vaywgMjIuIEZlYiAyMDAxLCAxOToxMDo1Mik6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODY1NDM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ckthbm4gbnVyIGplbWFuZCBzZWluLCBkZXIga2VpbiBCaWVyIG1hZy4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjIuIEZlYiAyMDAxLCAxOToxMTozMCk6Cn4jISBybj1ab29rIHJ0PTk4Mjg2NTQ1MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApHZWdlbiBkYXMgQmllciB3YWVyIGphIG5pY2h0IHRyYWdpc2NoLgpBYmVyIGRpZSBXZXJ0aGVycyBFY2h0ZW4hCkRpZSBNb3Vzc2UhCkRpZSBNYWdpYy8uLi4vLUthcnRlbiEKCkFuYXRvbCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTMzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjIuIEZlYiAyMDAxLCAxOToxMjoyNCk6Cn4jISBybj1ab29rIHJ0PTk4Mjg2NTQ1MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApBYmVyIGVzIGdlaHQgamEgaW56d2lzY2hlbiB1bSBtZWhyIGFscyBCaWVyLiA6KQpOb2NobWFsIHp1bSBNaXRzY2hyZWliZW46ClJlXjIwMDogMSBLaXN0ZSBCaWVyIChZZW5kaSksIDEvMiBLaXN0ZSBCaWVyIChGYW50YWdoaXJvKQpSZV4zMDA6IFdlcnRoZXInc0VjaHRlIGZ1ZXIgYWxsZSAoTGluZmxhcykKUmVeNDAwOiBNb3Vzc2UgYXUgY2hvY29sYXQgKElzaSkKUmVeNTAwOiA1MDAgTWFnaWMtS2FydGVuIChNb250YW51cykKCldlciB3aWxsIG5vY2htYWwsIHdlciBoYXQgbm9jaCBuaWNodCBnZXNwZW5kZXQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjIuIEZlYiAyMDAxLCAxOToxNTowNyk6Cn4jISBybj1Nb250YW51cyBydD05ODI4NjU1NDQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKV2VyIHNhZ3QgZWlnZW50bGljaCwgZGFzcyBlcyB1bSBkaWUgQW56YWhsIGRlciBSZXBsaWVzIGdlaGVuIG11c3M/CldpciBrb2VubmVuIGphIGF1Y2ggZGllIEFuemFobCBkZXJlciwgZGllIGRlbiBUaHJlYWQgaWdub3JpZXJlbiwgYWxzCk1hc3MgbmVobWVuLiBEYSBoYWV0dGVuIHdpciB2aWVsbGVpY2h0IHNjaG9uIGRhcyBQeXJhbWlkZW5uaXZlYXUgMTAwMAplcnJlaWNodCA7KSAuLi4KCkFuYSAnSW5ub3ZhdGlvbiBpc3QgYWxsZXMnIHRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDIyLiBGZWIgMjAwMSwgMTk6MTc6MTEpOgp+IyEgcm49QW5hdG9sIHJ0PTk4Mjg2NTcwNyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApVbmQgd2llIHdpbGxzdGUgZGllIHphZWhsZW4/CklzaSAodm9yc2ljaHQgdGllZmZsaWVnZW5kZSBNb3Vzc2UpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAyMi4gRmViIDIwMDEsIDE5OjE4OjAzKToKfiMhIHJuPUlzaSBydD05ODI4NjU4MzEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSXJnZW5kZWluIE1hZ2llciBzY2hyZWlidCBkYWZ1ZXIgc2ljaGVyIGVpbiBUb29sLiBEaWUgaGFiZW4gZWggYWxsZSB6dSB2aWVsClplaXQuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFpvb2ssIDIyLiBGZWIgMjAwMSwgMTk6MTg6MjQpOgp+IyEgcm49TW9udGFudXMgcnQ9OTgyODY1ODgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck9oLCBkYXMgZ2VodCBzY2huZWxsLiBab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDIyLiBGZWIgMjAwMSwgMTk6MTg6NDIpOgp+IyEgcm49Wm9vayBydD05ODI4NjU5MDQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGFzIFRvb2wgaGVpc3N0ICJNdWQtU2hlbGwiLiBHZWxsPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjIuIEZlYiAyMDAxLCAxOToxOTowOCk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODY1OTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkZyYWcgbmljaHQgbWljaC4gQmluIGljaCBNYS1HZWllcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0MDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMi4gRmViIDIwMDEsIDE5OjE5OjI2KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4Mjg2NTk0OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApSZWljaHQsIHdlbm4gRHUgTGludXR6ZXIgYmlzdC4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0MTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSXNpLCAyMi4gRmViIDIwMDEsIDE5OjIwOjA4KToKfiMhIHJuPUFuYXRvbCBydD05ODI4NjU5NjYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKd2llIHdhcyB3YXMgZ2VodCBzY2huZWxsPwpJc2kgKGZhZGVuIHN1Y2gpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAyMi4gRmViIDIwMDEsIDE5OjIwOjM4KToKfiMhIHJuPUlzaSBydD05ODI4NjYwMDggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSWNoIGdsYXViLCBkYXMgbmVubnQgc2ljaCAiZ3JlcHBlbiIuIApEYXMgZ2luZ2UgZGFubiB3aXJrbGljaCBzY2huZWxsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChGYW50YWdoaXJvLCAyMi4gRmViIDIwMDEsIDE5OjIxOjAyKToKfiMhIHJuPUlzaSBydD05ODI4NjYwMDggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKdW5kIHdlbm4gaWhyIGFsbGUgYnJhdiBzZWlkLCBkYW5uIHNwZW5kZSBpY2ggYmVpIHJlXjYwMCBuZSBzZWxic3RnZW1hY2h0ZQp0b3J0ZSAod2VubiBtaXIgamVtYW5kIG5lbiBiYWNrb2ZlbiB6dXIgdmVyZnVlZ3VuZyBzdGVsbHQuIAoKRmFudGEqIC0gaGF0IGx1c3QgenVtIFRvcnRlbmJhc3RlbG4uIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDIyLiBGZWIgMjAwMSwgMTk6Mzk6MzkpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODI4NjYwNjIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSG1tbW0gVG9ydGUgLSB3YXMgZGVubiBmdWVyIFRvcnRlPwpVbmQgd2FzIGhlaXNzdCBicmF2PwpJc2kgKHdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEZhbnRhZ2hpcm8sIDIyLiBGZWIgMjAwMSwgMTk6NDA6NTUpOgp+IyEgcm49SXNpIHJ0PTk4Mjg2NzE3OSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp3YXMgZnVlciBuZSB0b3J0ZTogCmlociBoYWJ0IGRpZSB3YWhsIHp3aXNjaGVuOiBzY2hva29zYWhuZSB1bmQgd2FsZG1laXN0ZXJzYWhuZSAKdW5kIGJyYXY6IApuYWphLCBpY2ggd2lsbCBSZV42MDAgaGllciBoYWJlbiB1bmQgZXMgbXVzcyBtaXIgd2VyIG5lbiBiYWNrb2ZlbiB6dXIKdmVyZnVlZ3VuZyBzdGVsbG4uLi4gZGVzIG1laW4gaWNoIG1pdCBicmF2LiAKCkZhbnRhIC0gaHVuZ2VyIGhhYmVuZCAod2llIGltbWVyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDIyLiBGZWIgMjAwMSwgMTk6NDI6MTEpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODI4NjcyNTUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKd2FsZG1laXN0ZXJzYWhuZT8/PyB1aSB3aWxsIHJlemVwdAp1bmQgdWViZXJoYXVwdCB3aWVzbyBpc3QgcGxvZXR6bGljaCBiZWkgMTIwIGFydGlrZWxuIFNjaGx1c3M/CklzaSAoYXJ0aWtlbHdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEZhbnRhZ2hpcm8sIDIyLiBGZWIgMjAwMSwgMTk6NTA6MTEpOgp+IyEgcm49SXNpIHJ0PTk4Mjg2NzMzMSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAppc2ksIGljaCB2ZXJyYXQgc28gdmllbDogCmRlciBib2RlbiBpcyBiaXNxdWl0LWJvZGVuIAp1bmQgb2JlbmRyYXVmIGtvbW10IG5lIG1pc2NodW5nIGF1czogc2FobmUsIHdhbGRtZWlzdGVyZ29ldHRlcnNwZWlzZSwgY3JlbWUKZnJhaWNoZSB1bmQgZXMgZ2Vob2VybiBub2NoIGxvZWZmZWxiaXNxdWl0cyBkYXp1Li4uIAoKRmFudGEqIC0gYmlzc2NoZW4gd2FzIHZlcnJhdGVuZC4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMjIuIEZlYiAyMDAxLCAxOTo1MzoyOCk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Mjg2NzgxMSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApIbW0ga2xpbmd0IGxlY2tlcgpNaXN0IGhlaXNzdCBkYXMgaWNoIG11c3MgZXMgYXVmcyBUcmVmZmVuIHNjaGFmZmVuPwpJc2kgKG1vdXNzZXdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDg6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjIuIEZlYiAyMDAxLCAxOTo1Mzo1NCk6Cn4jISBybj1Jc2kgcnQ9OTgyODY4MDA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkFsbGVpbiBzY2hvbiB3ZWdlbiBkZXIgTW91c3NlIG11c3N0IER1IGhpbi4gQWxzbyAtIGRvbid0IGJvdGhlci4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSXNpLCAyMi4gRmViIDIwMDEsIDIwOjAwOjA5KToKfiMhIHJuPUFuYXRvbCBydD05ODI4NjgwMzQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSWNoIG1laW50ZSB3ZWdlbiBkZXIgTW91c3NlCklzaSAod2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1MDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoUHVrLCAyMi4gRmViIDIwMDEsIDIxOjUxOjI4KToKfiMhIHJuPUlzaSBydD05ODI4Njg0MDkgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSHVodSA/CnNjaGxhZnQgaWhyIGVpbiA/CldpcmRzIGV1Y2ggZXR3YSBtdWVkZSA/CkhhLCBrZWluZSBBdXNkYXVlciwgZGVyIGxldHp0ZSBBcnRpa2VsIG5hY2ggZGVtIGxpZWd0IDEgU3R1bmRlIDUwIE1pbnV0ZW4KenVydWVjay4KU28gc2NoYWZmdCBpaHIgZGFzIG5pZSEKClB1aywgd2VkZWx0IHdpZWRlciBtaXQgZGVtICdHbyBab29rIEdvJyBGYWVobmNoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTE6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjIuIEZlYiAyMDAxLCAyMTo1MTo1Nik6Cn4jISBybj1QdWsgcnQ9OTgyODc1MDg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck5vY2ggNDkgYmlzIHp1IGRlbiBlaW5laW5oYWxiIEthZXN0ZW4gQmllci4gT2RlciB3YXJlbiBlcyBLaXN0ZW4/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTUyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTa3ksIDIyLiBGZWIgMjAwMSwgMjE6NTI6MjIpOgp+IyEgcm49QW5hdG9sIHJ0PTk4Mjg3NTExNiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp6dXIgbm90IGdlaG4gYXVjaCBkb3NlbiwsLGlzdCBkb2NoIHd1cnNjaGR0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFd1cnplbCwgMjIuIEZlYiAyMDAxLCAyMTo1MjoyMyk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODc1MTE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CnNjaGFjaHRlbG4uCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1MjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoUHVrLCAyMi4gRmViIDIwMDEsIDIxOjUyOjMyKToKfiMhIHJuPUFuYXRvbCBydD05ODI4NzUxMTYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKS2Flc3RlbiwgZGVmaW5pdGl2LiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1MzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMi4gRmViIDIwMDEsIDIxOjU0OjIzKToKfiMhIHJuPVB1ayBydD05ODI4NzUxNTIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRHJlaSBSZXBsaWVzIGF1ZiBlaW5lbiBtZWluZXIgQXJ0aWtlbC4gVW5kIGRhcyBiZWkgZWluZW0gU0NITUFSUk4tQXJ0aWtlbC4KSWNoIHd1ZW5zY2h0ZSwgc292aWVsIEZlZWRiYWNrIGhhZXR0ZSBpY2ggYmVpIGV0d2FzLCBkYXMgaWNoIGVybnN0IG1laW5lLi4uCgpBbmEgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1NDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoV3VyemVsLCAyMi4gRmViIDIwMDEsIDIxOjU0OjUxKToKfiMhIHJuPUFuYXRvbCBydD05ODI4NzUyNjMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKb2g/IHdvIGlzdCBkZXIgdW50ZXJzY2hpZWQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjIuIEZlYiAyMDAxLCAyMTo1NTo0Nik6Cn4jISBybj1XdXJ6ZWwgcnQ9OTgyODc1MjkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck1hbmNobWFsIGZyYWdlIGljaCBtaWNoIGRhcyBhdWNoLgoKQW5hdG9sIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFB1aywgMjIuIEZlYiAyMDAxLCAyMjowMTo1OSk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODc1MzQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClNjaG9uIHdpZWRlciBydWhpZyA/CgpLaW5uZXJzLCBzbyB3aXJkIGRhcyBlY2h0IG5pY2h0LCBuaWNodCB3aXJrbGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1NzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoV3VyemVsLCAyMi4gRmViIDIwMDEsIDIyOjA0OjI2KToKfiMhIHJuPVB1ayBydD05ODI4NzU3MTkgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKaGFzdCBkdSBkdXJzdCBvZGVyIHdhcz8KaW1tZXIgc28gdW5nZWR1bGRpZywgZGllIGp1Z2VuZC4uLgoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTg6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFB1aywgMjIuIEZlYiAyMDAxLCAyMjoyMDo0Nik6Cn4jISBybj1XdXJ6ZWwgcnQ9OTgyODc1ODY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClN1Z2kgaGF0IGRvY2ggaW1tZXIgRHVyc3QuClNpZSB3dWVyZGUgZGVtIFRocmVhZCBnbGF1YiBpY2ggbGViZW4gZWluaGF1Y2hlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxhbmdlIEFydGlrZWwuIChWYW5pb24sIDIyLiBGZWIgMjAwMSwgMjM6MDY6NTkpOgpCaW4gaWNoIGVpZ2VudGxpY2ggZGVyIGVpbnppZ2UsIGRlciBBcnRpa2VsLCBkaWUgdWViZXIgbWVociBhbHMgZWluZSBTZWl0ZQpnZWhlbiwgZWluZmFjaCBuaWNoIGxpZXN0PyBPZGVyIGdhciBnYW56ZSBUaHJlYWRzIGF1cyBzb2xjaGVuIEFydGlrZWxuPwoKViogc2NobWFycm50LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTUzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTY3JlYW1lciwgMjIuIEZlYiAyMDAxLCAyMzoxMjoyNyk6Cn4jISBybj1Ta3kgcnQ9OTgyODc1MTQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CgppZ2l0dCwgRG9zZW5iaWVyLi4uLi4gRGVyIHNjaGxlY2h0ZSBHZXNjaG1hY2sgd2lyIGFsc28gYXVjaCBoaWVyIAp2ZXJicmVpdGV0LiA7LSkKClNjcmVhbWVyIChCaWVyZXhwZXJ0ZSwga3JlaXNjaGVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0NzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoT2xsaSwgMjIuIEZlYiAyMDAxLCAyMzoxNjozOSk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Mjg2NzgxMSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApXZW5uIGVzIGRpZSBXYWxkbWVpc3RlcnRvcnRlIGlzdCwgZGllIGljaCBzY2hvbiBrZW5uZSwgZGFubiBtdXNzCmljaCBqYSBnbGF1YiBpY2ggbWFsIHdlaXRlciBtaXRzY2hyZWliZW4uLi4gZWJlbiBtYWwgZGFzIEVuZGUgZGVzClRocmVhZHMgc3VjaGVuIDopCgpPbGxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjIuIEZlYiAyMDAxLCAyMzoxNzo0NSk6Cn4jISBybj1QdWsgcnQ9OTgyODc2ODQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkhpZXIgaXN0IGRhcyBFbmRlIGRlcyBUaHJlYWRzLgpEYXMgdm9ybGFldWZpZ2UgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2MDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoWmVwaHlyLCAyMi4gRmViIDIwMDEsIDIzOjE4OjA5KToKfiMhIHJuPUFuYXRvbCBydD05ODI4ODAyNjUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKTmljaHQgbWVociBsYW5nZSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTYxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDIyLiBGZWIgMjAwMSwgMjM6MTg6MTkpOgp+IyEgcm49WmVwaHlyIHJ0PTk4Mjg4MDI4OSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApEYWNodCcgaWNoIG1pci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2MjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoT2xsaSwgMjIuIEZlYiAyMDAxLCAyMzoxODoyOSk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODgwMjk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmFoLCBoaWVyIHNldHogaWNoIGpldHp0IHdpZWRlciBhbiA6KQoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWxsb2hvbC4uLiAoR25vbWUsIDIyLiBGZWIgMjAwMSwgMjM6NTU6MTYpOgpEZWluIEZyZXVuZCBCaXJkeSB0ZWlsdCBEaXIgbWl0OiBiaW4genUgYmVzZmZmZW4gemptIHF1ZXN0ZW4KCmthbm4gbWFuIHNvIHNhZ2VuLCBqYS4uLiA6KQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2MzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoT2xsaSwgMjMuIEZlYiAyMDAxLCAwMDowMzo0Nik6Cn4jISBybj1PbGxpIHJ0PTk4Mjg4MDMwOSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApVbnRlciBhbmRlcmVtIFN1YmplY3QsIGRhbWl0IHNpY2hzIGxvaG50Li4uIDopCgpIaWVyIG5ldHRlIGZsdydzIDopCgpWb24gSGFuc3d1cnN0OiB3dWFoCltUb2Q6TGFyc10gRWluZSBBc3NlbHVzIGNhdmljYXRpY3VzIGhhdCBnZXJhZGUgSGFuc3d1cnN0IHVtZ2VicmFjaHQuCgprYW0gZWlnZW50bGljaCBvaG5lIHplaXRsaWNoZSBWZXJ6b2VnZXJ1bmcgKmcqCgpPbGxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAyMy4gRmViIDIwMDEsIDAwOjEwOjQyKToKfiMhIHJuPU9sbGkgcnQ9OTgyODgzMDI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkRhcyBpc3QgZGllIHJpY2h0aWdlIEVpbnN0ZWxsdW5nLCBPbGxpLiA6KQpIbW1tLCBudXIgbm9jaCAzNiBBcnRpa2VsIGJpcyB6dW0gRXJyZWljaGVuIGRlciBlcnN0ZW4gQmllcmh1ZXJkZS4KVmllbGxlaWNodCBmYW5nZW4gZGFubiBhdWNoIGRpZSBOaWNodGJpZXJ0cmlua2VyIGFuLCBtaXR6dXNjaHJlaWJlbi4KU2NobGllc3NsaWNoIGdlaHRzIGRhbm4gamEgdW0gcmljaHRpZ2UgTmFocnVuZ3NtaXR0ZWwuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2NTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMy4gRmViIDIwMDEsIDAwOjExOjA2KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4Mjg4MzQ0MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApWb3IgYWxsZW0gZ2VodCBlcyB1bSBlaW5lIGJ1bnRlIFRhcGV0ZS4gKmhhYmVubWFnKiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbWFyeWxsaXMsIDIzLiBGZWIgMjAwMSwgMDA6MzE6MjEpOgpbQWJlbnRldWVyOkZsYXVyb3NdIGRhbmtlIHNjaG9lbiwgaGFicyBnZWZ1bmRlbiEhCgpwYWFyIHNlay4gc3BhZXRlcjoKCltUb2Q6TGFyc10gRWluIFdhc3NlcmJ1ZWZmZWwgaGF0IGdlcmFkZSBGbGF1cm9zIHVtZ2VicmFjaHQuCgpBbWEqLCB3ZWlzZSBuaWNrZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY2OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChSYXJkaWFuLCAyMy4gRmViIDIwMDEsIDAwOjUzOjMyKToKfiMhIHJuPUFuYXRvbCBydD05ODI4ODM0NjYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKV28gc2luZCBlaWdlbnRsaWNoIGRpZSBSZSA4OSwgOTksIDExMCBoaW4/IEhhdCBkYSBqZW1hbmQgZ2VzY2h1bW1lbHQ/IEljaApzY2hsYWdlIHZvciwgaWhyIGZhbmd0IG1pdCBuZW0gbmV1ZW4gVGhyZWFkIG5vY2htYWwgdm9uIHZvcm5lIGFuLi4uCgpSYXIsIG1pdCBOYWNodHNjaGljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjMuIEZlYiAyMDAxLCAwMDo1NDoxNCk6Cn4jISBybj1SYXJkaWFuIHJ0PTk4Mjg4NjAxMiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApLYW5uIHNlaW4sIGRhc3MgZWluIHBhYXIgUmUncyBnZWxvZXNjaHQgd3VyZGVuLCB1bSBuZXVlbiBBcnRpa2VsbgpQbGF0eiB6dSBtYWNoZW4uIElyZ2VuZGVpbiBFcnppIHNldHp0ZSBuYWVtbGljaCBkaWUgR3J1cHBlbmdyb2Vzc2UKZ2VsZWdlbnRsaWNoIHJ1bnRlci4gOykKCmFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChSYXJkaWFuLCAyMy4gRmViIDIwMDEsIDAwOjU4OjA2KToKfiMhIHJuPUFuYXRvbCBydD05ODI4ODYwNTQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKTmEgaWNoIHdlcmQgZGFzIG1hbCB2ZXJmb2xnZW4gdW5kIGJlaSBNaXNzYnJhdWNoIGRlbSBTaGVyaWZmIG1lbGRlbiEhIEdlaHQgamEKbmljaHQsIGRhc3MgaGllciAia3VlbnN0bGljaCIgYXVmIGRpZSA2MDAgZ2VzY2hvYmVuIHdpcmQuLi4gOykKClJhci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3MDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMy4gRmViIDIwMDEsIDAyOjQ1OjI4KToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTgyODkyNjk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkRhbm4gZ2VoIGlucyBCZXR0LiBJc3QgZWluIGVjaHQgc2NobGF1ZXIgUmF0ISA6KQoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzE6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEZhbnRhZ2hpcm8sIDIzLiBGZWIgMjAwMSwgMDI6NDc6MDIpOgp+IyEgcm49QW5hdG9sIHJ0PTk4Mjg5MjcyOCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAphYmVyIGljaCBtdXNzIGRvY2ggYmFsZCB3aWVkZXIgbmFlY2h0ZSBkdXJjaG1hY2hlbiB1bmQgZnVlcnMgbXVkZGVuIGJlemFobHQKd2VyZGVuLCBkYSBtdXNzIGljaCBkb2NoIHNjaG9ubWFsIHRyYWluaWVyZW4gISEhISAKCkZhbnRhIC0gdmVyemljaHRldCBhdWYgQW5hdG9sJ3MgUmFldGUgdW5kIHN0cmVja3QgaWhtIGRpZSBadW5nZSByYXVzLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3MjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMy4gRmViIDIwMDEsIDAyOjQ3OjU2KToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTgyODkyODIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkRJRSBpZGVsc3QgRHUgZG9jaCBlaCBkdXJjaCwgdW0genUgdmVyYmVyZ2VuLCBkYXNzIER1IGVpbiBibHV1dXV0anVuZ2VzCkt1ZWtlbiBiaXN0LiBBYmVyIGtlaW5lIFNvcmdlLCBEdSBiaXN0IGR1cmNoc2NoYXV0Li4uLi4gOikKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDIzLiBGZWIgMjAwMSwgMDI6NTA6NDgpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODI4OTMwMjAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKS2VpbmUgQ2hhbmNlLiBEYXMgbWl0IGRlbSBKdWVuZ2VyLXdlcmRlbiBoYWJlIGljaCBub2NoIG5pY2h0IHJhdXMuCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3NDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRWxiZXJldCwgMjMuIEZlYiAyMDAxLCAwMjo1MToyMik6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Mjg5MzAyMCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp3aWVzbyBlaW5pZ2VuIG1lciB1bnMgbmljaHQgZGFyYXVmLCBkYXNzIGVzIGRhcyBiaWVyIGF1ZiBhbGxlIGZhZWxsZSBnaWJ0IHVuZApkaWUgVG9ydGU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEZhbnRhZ2hpcm8sIDIzLiBGZWIgMjAwMSwgMDI6NTE6NDgpOgp+IyEgcm49QW5hdG9sIHJ0PTk4Mjg5MzA0OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApBbmF0b2wgQW5hdG9sIEFuYXRvbC4uLiAKc29sbCBpY2ggamV0eiB2ZXJyYXRlbiB3aWUgYWx0IGR1IGF1c3NpZWhzdCA/IAoKRmFudGEgLSBoZWltbGljaCBraWNoZXJuZC4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjMuIEZlYiAyMDAxLCAwMjo1NDowOCk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Mjg5MzEwOCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApFcyBnaW5nIG5pY2h0IHVtJ3MgQXVzc2VoZW4uIDspCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3NzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRmFudGFnaGlybywgMjMuIEZlYiAyMDAxLCAwMjo1NDo1MCk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODkzMjQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmFjaCwgZWNodCBuaWNoID8gCmRhbm4gaGFiIGljaCB3b2hsIG1hbCB3aWVkZXIgd2FzIG1pc3R2ZXJzdGFuZGVuLi4uIAphYmVyIGFuYXRvbCwgZHUgc2NoYXVzdCBqdWVuZ2VyIGF1cyBhbHMgZHUgYmlzdCAuLi4gCgpGYW50YSogLSBoZWltbGljaCBrb21wbGltZW50ZSB2ZXJ0ZWlsZW5kLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3ODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRWxiZXJldCwgMjMuIEZlYiAyMDAxLCAwMjo1NTozMik6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Mjg5MzI5MCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApTY2hhZGUsIGRhc3MgbmljaHQgZ2xlaWNoemVpdGlnIEdyaW1tYm9ybiBuYWNoIG11ZWxsIHZlcmxlZ3QgOykKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMy4gRmViIDIwMDEsIDAyOjU2OjMwKToKfiMhIHJuPUVsYmVyZXQgcnQ9OTgyODkzMzMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkljaCBzZWhlIHZvciBhbGxlbSBqdWVuZ2VyIGF1cywgYWxzIHdpZSBpY2ggbWljaCBmdWVobGUuCgouLi4gYWxzIHdpZSAuLi4gCktsaW5ndCBncmFtbWF0aWthbGlzY2ggZmFsc2NoLgpBYmVyIGljaCBiaW4gbXVlZGUuIApJbiBtZWluZW0gQWx0ZXIgYnJhdWNodCBtYW4gc2VpbmUgTmFjaHRydWhlLgoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEVsYmVyZXQsIDIzLiBGZWIgMjAwMSwgMDI6NTc6MDgpOgp+IyEgcm49QW5hdG9sIHJ0PTk4Mjg5MzM5MCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAptdXNzIGVzIG5jaWh0IHdpZSBhbHMgaWNoIGhlaXNzZW4/CgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEZhbnRhZ2hpcm8sIDIzLiBGZWIgMjAwMSwgMDI6NTc6MjApOgp+IyEgcm49QW5hdG9sIHJ0PTk4Mjg5MzM5MCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApqYWphLCBhbmF0b2wgdW5kIGRhcyBhbHRlci4uLiAKd2VubiBkdSB3ZWl0ZXIgc28gdWViZXJ0cmVpYnN0IGtvZW5udCBtZXIgZmFzdCBtZWluZW4gZHUgc2NoYXVzdCBhdXMgd2llIGRlcgpUT0Qgdm9uIEZvcmNoaGVpbSAqRyogCgpGYW50YSogLSBibG9lZHNpbm4gZmFicml6aWVyZW5kLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4MTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMy4gRmViIDIwMDEsIDAyOjU3OjQ4KToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTgyODkzNDQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkdlaCBpbnMgQmV0dCwgRmFudGFkaW5nZW5zLgpEYSBnZWhvZXJzdCBEdSBoaW4uCgpBbmF0b2wgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4MjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRmFudGFnaGlybywgMjMuIEZlYiAyMDAxLCAwMjo1ODozNik6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODkzNDY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cm5laW4gcGFwYSBhbmF0b2wsIGljaCB3aWxsIGFiZXIgbmljaHQgaW5zIGJldHQuLi4gCgpGYW50YSogLSB3aWUgbmVuIGtsZWlua2luZCBxdWVuZ2VsbmQuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTgyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChFbGJlcmV0LCAyMy4gRmViIDIwMDEsIDAyOjU4OjM4KToKfiMhIHJuPUFuYXRvbCBydD05ODI4OTM0Njggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKc28gZnJ1aWVoIHNjaG9uIGlucyBCZXR0PwoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTgzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDIzLiBGZWIgMjAwMSwgMDM6MDA6MTYpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODI4OTM1MTYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSmFqYSwgcXVlbmdlbCcgRHUgcnVoaWcuCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4NDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRmFudGFnaGlybywgMjMuIEZlYiAyMDAxLCAwMzowMDo1Mik6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODkzNjE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmtsYXIgbWFjaCBjaWggZGVzLCBpcyBkZXMgZWluemlnZSB3YXMgaWNoIHdpcmtsaWNoIGd1dCBrYW5uLiAKCkZhbnRhKiBnaWJ0IEFuYXRvbCBuZW4gVHJpdHQgaW4gZGVuIEhpbnRlcm4uIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDIzLiBGZWIgMjAwMSwgMDM6MDI6MDgpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODI4OTM2NTIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKU3RpbW10LCB0cmV0ZW4ga2FubnN0IER1IG5pY2h0LgpVbmQgamV0enQgemllaCBhKSBEZWluZW4gU2NodWggd2llZGVyIGFuIHVuZCBiKSBzdGVsbCBkZW4gU3R1aGwgd2llZGVyIGhpbi4KCkFuYXRvbCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg2OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChGYW50YWdoaXJvLCAyMy4gRmViIDIwMDEsIDAzOjAyOjU0KToKfiMhIHJuPUFuYXRvbCBydD05ODI4OTM3Mjggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQW5hdG9sLCB3aWUgc29sbCBkZXMgZnVua3Rpb25pZXJuID8/Pz8gCkljaCB6aWVoIGFsc28gbWVpbmVuIFNjaHVoIHdpZWRlciBhbiB1bmQgc3RlbGwgZGVuIGRhbm4gaGluID8/Pz8/IAptYWNoc3QgZHUgbWlyIGRlcyBtYWwgdm9yID8/Pz8gCgpGYW50YSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4NzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRWxiZXJldCwgMjMuIEZlYiAyMDAxLCAwMzowMzoxOCk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Mjg5Mzc3NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApuaWNodCBkZW4gc2NodWgsIGRlbiBzdHVobCBoaW5zdGVsbGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjMuIEZlYiAyMDAxLCAwMzowMzo0MCk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Mjg5Mzc3NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApTY2h1aC4KU3R1aGwuCgpEYXMgc2luZCBpbSBEZXV0c2NoZW4gendlaSB2ZXJzY2hpZWRlbmUgRGluZ2UuCgpBYmVyLi4uIER1IGJpc3QgamEgRmVsaW5lLi4uCnNjaGxpbW1lciBub2NoOiBGZWxpbl9JTl8uCgpFbnRzY2h1bGRpZ3VuZyBhbmdlbm9tbWVuIDspCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4ODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRWxiZXJldCwgMjMuIEZlYiAyMDAxLCAwMzowNDo1MCk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODkzODIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmljaCBnbGF1YiBpY2ggbXVzcyBtaXIgbWFsIG5lbiBwYWFyIGFsaXMgYW5sZWdlbiwgc29uc3QgaGF0IG1hbiBqYSBoaWVyIGtlaW5lCkNoYW5jZSBtaXR6dWtvbW1lbgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDIzLiBGZWIgMjAwMSwgMDM6MDU6MTQpOgp+IyEgcm49RWxiZXJldCBydD05ODI4OTM4OTAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKIm5uIiByZWljaHQuCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4ODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRmFudGFnaGlybywgMjMuIEZlYiAyMDAxLCAwMzowNToxOCk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODkzODIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkFuYXRvbCwgbGllYmVyIEZlbGluaW4sIFp3ZXJnIG9kZXIgTWVuc2NoLCBhbHMgZWluIEVMRiB6dSBzZWluLi4uIAoKRmFudGEqIC0gbWFnIG51ciBlbGZlbiwgd2VubiBzaWUgbGVja2VyIHp1YmVyZWl0ZXQgc2luZC4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEVsYmVyZXQsIDIzLiBGZWIgMjAwMSwgMDM6MDU6NDYpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODI4OTM5MTggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKaWNoIGJpbiBhdWNoIGltbWVyIGxlY2tlciB6dWJlcmVpdGV0IDspCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEZhbnRhZ2hpcm8sIDIzLiBGZWIgMjAwMSwgMDM6MDY6MTQpOgp+IyEgcm49RWxiZXJldCBydD05ODI4OTM5NDYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRmFudGFnaGlybyBrbmFiYmVydCBhbiBFbGJpIHJ1bS4gCgogICAtIHN0aW1tdCwgTEVDS0VSU1QgISEhISAtIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTkxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChFbGJlcmV0LCAyMy4gRmViIDIwMDEsIDAzOjA3OjQwKToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTgyODkzOTc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmRhcyBmYW5kIEdsb2luc29uIGF1Y2gKCkVsYmkgKnNlaW5hbmdla25hYmJlcnRlc09ocnJ1bXplaWdlbmQgOikgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEZhbnRhZ2hpcm8sIDIzLiBGZWIgMjAwMSwgMDM6MDg6MjQpOgp+IyEgcm49RWxiZXJldCBydD05ODI4OTQwNjAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSGUsIGVsYmksIGljaCBrbmFiYmVyIG5pY2ggYW4gZGVpbmVtIE9IUi4uLiBpY2ggYmVpc3MgZGlyIGluIGRlbiBIYWxzICEgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEVsYmVyZXQsIDIzLiBGZWIgMjAwMSwgMDM6MDg6NDYpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODI4OTQxMDQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKCkFuYXRvbCwgaGlsZiBtaXIgISEKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5NDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRmFudGFnaGlybywgMjMuIEZlYiAyMDAxLCAwMzowOTo1NCk6Cn4jISBybj1FbGJlcmV0IHJ0PTk4Mjg5NDEyNiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApuaXggZGEgZWxiaS4uLiBhbmF0b2wga2FubiBkaXIgREEgYXVjaCBuaWNodCBtZWhyIGhlbGZlbi4uLiAKCkZhbnRhKiBzcGl0enQgaWhyZSBSZWlzc3phZWhuZS4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjMuIEZlYiAyMDAxLCAwMzoxMDoxMCk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Mjg5NDE5NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJY2ggYmluIHNlaW4gU2NodXR6cGF0cm9uLgoKSWNoIGthbm4uCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5NTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRWxiZXJldCwgMjMuIEZlYiAyMDAxLCAwMzoxMDoxNik6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Mjg5NDE5NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAprbGFyIGthbm4gZGVyIGRhIGhlbGZlbgoKRWxiaS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5NjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRWxiZXJldCwgMjMuIEZlYiAyMDAxLCAwMzoxMDo1MCk6Cn4jISBybj1FbGJlcmV0IHJ0PTk4Mjg5NDIxNiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAplYmVuCgpFbGJlcmV0IG5pY2t0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDIzLiBGZWIgMjAwMSwgMDM6MTE6MTApOgp+IyEgcm49RWxiZXJldCBydD05ODI4OTQyNTAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGFzIG1pdCBkZW0gQmV6dWcgZGVyIEFydGlrZWwsIGRhcyB1ZWJlbiB3aXIgbm9jaC4uLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChGYW50YWdoaXJvLCAyMy4gRmViIDIwMDEsIDAzOjExOjE2KToKfiMhIHJuPUVsYmVyZXQgcnQ9OTgyODk0MjUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CnBmZmZmdC4uLiAKaWhyIHNlaWQgc28gZ2VtZWluIHp1IG1pciAhISEgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTg6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjMuIEZlYiAyMDAxLCAwMzoxMToyOCk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Mjg5NDI3NiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApEdSBiaXN0IG5lIEZyYXUuIFdhcyBlcndhcnRlc3QgRHU/CkFuYXRvbCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChFbGJlcmV0LCAyMy4gRmViIDIwMDEsIDAzOjExOjQwKToKfiMhIHJuPUFuYXRvbCBydD05ODI4OTQyNzAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKaWNoIHNhZyBqYSBhbGlzIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEZhbnRhZ2hpcm8sIDIzLiBGZWIgMjAwMSwgMDM6MTE6NDgpOgp+IyEgcm49QW5hdG9sIHJ0PTk4Mjg5NDI4OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAptb2VjaHRlc3QgZHUgZGFzIHdpcmtsY2loIHdpc3NlbiBhbmF0b2wgPyAKbm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5ODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRWxiZXJldCwgMjMuIEZlYiAyMDAxLCAwMzoxMTo1Mik6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODk0MjcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cm1pc3QsIGljaCBsZXJucyBuaWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwMDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMy4gRmViIDIwMDEsIDAzOjExOjU2KToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTgyODk0MzA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck5laW4uCgpCSUlJSUlJSUlJSUlFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFSEhISEhISEhISFIhISEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwMTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRmFudGFnaGlybywgMjMuIEZlYiAyMDAxLCAwMzoxMjoxMik6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODk0MzE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CnNvb28sIGRpZSAyMDAgaXMgdm9sbC4uLiBzY2hhZmYgbWVyIGRpZSAzMDAgamV0eiBhdWNoIG5vY2ggPyAqRyogCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjMuIEZlYiAyMDAxLCAwMzoxMjozMCk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Mjg5NDMzMiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOZWluLCBkaWUgUnVicmlrIGlzdCBhdWYgMjAwIEFydGlrZWwgYmVncmVuenQuLi4gaW4gdmllciBUYWdlbiB3aWVkZXIuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEVsYmVyZXQsIDIzLiBGZWIgMjAwMSwgMDM6MTI6NTApOgp+IyEgcm49RmFudGFnaGlybyBydD05ODI4OTQzMzIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKd2VyIHdhciBkZW5uIDIwMD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwMzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRmFudGFnaGlybywgMjMuIEZlYiAyMDAxLCAwMzoxMzozMCk6Cn4jISBybj1FbGJlcmV0IHJ0PTk4Mjg5NDM3MCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApBbmF0b2wgd2FycywgYW5hdG9sIGlzIHNjaHVsZCAhIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjAzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDIzLiBGZWIgMjAwMSwgMDM6MTM6MzQpOgp+IyEgcm49RWxiZXJldCBydD05ODI4OTQzNzAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRWluZSBLaXN0ZSBCaWVyIHZvbiBZZW5kaS4KRWluZSBoYWxiZSBLaXN0ZSBCaWVyIHZvbiBGYW50YWdoaXJvLgoKTmFlY2hzdGVzIFppZWw6IDMwMC4gUHJlaXM6IEVpbmUgUGFja3VuZyBXZXJ0aGVycyBFY2h0ZS4KCkFuYXRvbCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmFjcmlvbiwgMjMuIEZlYiAyMDAxLCAwMzoxNDo1NSk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODk0NDE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkJlaSBkZXIgbmFlY2hzdGVuIE11ZHBhcnR5ID8KCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEVsYmVyZXQsIDIzLiBGZWIgMjAwMSwgMDM6MTU6MTUpOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTgyODk0NDk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmljaCBkYWNodCBkdSBpZ25vcmllcnN0IGRlbiB0aHJlYWQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYWNyaW9uLCAyMy4gRmViIDIwMDEsIDAzOjE1OjM5KToKfiMhIHJuPUVsYmVyZXQgcnQ9OTgyODk0NTE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClR1IGljaCBhdWNoIC4uLgoKQW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwNzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMy4gRmViIDIwMDEsIDAzOjIwOjMzKToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk4Mjg5NDUzOSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOYWVjaHN0ZSBNdWRwYXJ0eS4KCkFrdHVlbGxlciBad2lzY2hlbnN0YW5kLCBiZXZvciBpY2ggaW5zIEJldHQgZ2VoZToKCistLSsKfCMjfCAKfCMjfCAxMDAKfCMjfAp8IyN8IDIwMCAgICAgMS41IEtpc3RlbiBCaWVyIChZZW5kaSwgRmFudGFnaGlybykKfCcgfAp8ICB8IDMwMCAgICAgRWluZSBQYWNrdW5nIFdlcnRoZXJzIEVjaHRlIChMaW5mbGFzKQp8ICB8CnwgIHwgNDAwICAgICBNb3Vzc2UgLSBuaWNodCBuYWVoZXIgZGVmaW5pZXJ0IChJc2kpCnwgIHwgCnwgIHwgNTAwICAgICA1MDAgS2FydGVuIE1hZ2ljL1Bva2Vtb24vLi4uIChNb250YW51cykKfCAgfCAKfCAgfCA2MDAgICAgIEVpbmUgVG9ydGUsIGZhbGxzIE9mZW4gdm9yaGFuZGVuICAoRmFudGFnaGlybykKfCAgfAoKT2RlciBoYWJlIGljaCBtaWNoIGdldGFldXNjaHQ/CgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRWxiZXJldCwgMjMuIEZlYiAyMDAxLCAwMzoyMDo1OSk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyODk0ODMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CndvdyBBbmF0b2wgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTmFjaHR3aW5kLCAyMy4gRmViIDIwMDEsIDAzOjIyOjEzKToKfiMhIHJuPUVsYmVyZXQgcnQ9OTgyODk0ODU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ckdld29ubmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjEwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDIzLiBGZWIgMjAwMSwgMTA6MTk6NTQpOgp+IyEgcm49TmFjaHR3aW5kIHJ0PTk4Mjg5NDkzMyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp3YXMgZ2V3b25uZW4/ClVuZCBkaWUgTW91c3NlIHdhciBTY2hva29sYWRlLCBnZXdvcmZlbiwgd2VoZSBzaWUgd2lyZCBuaWNodCBnZWZhbmdlbgptaG0gLSB3YXMgcGFzc2llcnQgd2VubiBpY2ggbmljaHQgenVtIFRyZWZmZW4ga2Fubj8KSXNpIChtb3Vzc2V3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjExOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChZZW5kaSwgMjMuIEZlYiAyMDAxLCAxMzozNjo0OSk6Cn4jISBybj1Jc2kgcnQ9OTgyOTE5OTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClNhZyBtYWwsIEFuYXRvbCwgc29sbHRlIGRpZXNlcyBGaWViZXJ0aGVybW9tZXRlciBuaWNodCB1bnRlbiBhbmZhbmdlbiB1bmQgbmFjaApvYmVuIGhpbiBvZmZlbiBzZWluPyBEYW5uIGthbm4gbWFuIGRhcyBUZWlsIG5hZW1saWNoIHNvIHNjaG9uIGJpcyB1bnRlciBkaWUKRGVja2UgdmVybGFlbmdlcm4sIHdlbm4gbmFjaGVpbmFuZGVyIGRpZSBNYXJrZW4gZXJyZWljaHQgd2VyZGVuLgoKWVRZCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjEyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDIzLiBGZWIgMjAwMSwgMTM6Mzc6NDkpOgp+IyEgcm49WWVuZGkgcnQ9OTgyOTMxODA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmVyIGhhdHMgYWJlciBudW5tYWwgb2JlbiBhbmdlZmFuZ2VuIHVuZCBuYWNoIHVudGVuIGhpbiBvZmZlbiBnZW1hY2h0CmlzdCBkb2NoIGVpbmZhY2ggdW50ZXIgemVpbGVuIGRyYW56dXBhcHBlbi4uLgpJc2kgKG1vdXNzZXdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFllbmRpLCAyMy4gRmViIDIwMDEsIDEzOjM4OjUxKToKfiMhIHJuPUlzaSBydD05ODI5MzE4Njkgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQWJlciBkYW5uIGxhZXVmdCBkb2NoIHVudGVuIGRhcyBnYW56ZSBCaWVyIHJhdXMuLi4gb2RlciBzby4uLgoKWVRZCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChZZW5kaSwgMjMuIEZlYiAyMDAxLCAxMzo0MDoxNSk6Cn4jISBybj1ZZW5kaSBydD05ODI5MzE5MzEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKVWVicmlnZW5zOiBCZWkgZGVyIEtpc3RlIHdpcmQgZXMgc2ljaCB1bSBvcmlnaW5hbCBtdWVuc3RlcmFuZXIgUGlua3VzYnJhZXUKaGFuZGVsbi4gSWhyIGhhYmUgYWxzbyBub2NoIEdlbGVnZW5oZWl0LCBlcyBldWNoIGFuZGVycyB6dSB1ZWJlcmxlZ2VuLi4uIDstKQoKWVRZCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDIzLiBGZWIgMjAwMSwgMTM6NDA6MjUpOgp+IyEgcm49WWVuZGkgcnQ9OTgyOTMxOTUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkRhcyBtdXNzdGUgYWVobSBBbmF0b2w/IHNhZ2VuIGRlciBoYXR0ZSBkYXMgMjAwZXIgUmUKSWNoIHNwZWt1bGllciBudXIgYXVmIGRpZSBUb3J0ZQpJc2kgKG1vdXNzZXdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFllbmRpLCAyMy4gRmViIDIwMDEsIDE0OjA1OjAyKToKfiMhIHJuPUlzaSBydD05ODI5MzIwMjUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKR2VyYWRlIGdlc2VoZW46CgpodHRwOi8vd3d3LmZpZXNlLXNjaGVpdGVsLmRlLwoKU2NoYXV0IGV1Y2ggbWFsIHVudGVyICJNZXRhbC1Hb2V0dGVyIiBkaWUgQmFuZCAiTml0cm8iIGFuLi4uIHdvdy4uLgoKWVRZCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDIzLiBGZWIgMjAwMSwgMTQ6MDk6MzUpOgp+IyEgcm49WWVuZGkgcnQ9OTgyOTMzNTAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkljaCBzZWggZGVuIEJlenVnIG5pY2h0ICpncnVlYmVsKgpoYXN0IER1IGRlbiBCaWVya2FzdGVuIHNjaG9uIGdldHJ1bmtlbiwgZGVuIER1IGF1c2dlc2NocmllYmVuIGhhdHRlc3Q/CklzaSAobW91c3Nld2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoWWVuZGksIDIzLiBGZWIgMjAwMSwgMTQ6MjI6MjcpOgp+IyEgcm49SXNpIHJ0PTk4MjkzMzc3NSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOZWUsIGljaCB3b2xsdGUgbnVyIG5pY2h0IGVpbmVuIEFydGlrZWwgYW4gZWluZW4gYW5kZXJlbiBUaXRlbCB2ZXJzY2h3ZW5kZW4uCjstKQoKWVRZCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR290dCBvZGVyIGRvY2ggbnVyIGVpbiBNZW5zY2g/IChKYXNtaW4sIDIzLiBGZWIgMjAwMSwgMTU6MTg6MjUpOgpuZXVsaWNoIGFuIGRlciBCYXVzdGVsbGU6CgpSaWNodGUgS2VyYmhvbHogYXVmIEJvaW5nIC0tLS0+IERlaW4gS2VyYmhvbHogd2VpZ2VydCBzaWNoLCBhdWYgZWluZW4gU3BpZWxlcgpnZXJpY2h0ZXQgenUgd2VyZGVuIQoKSmFzbWluLCBzaWNodGxpY2ggZXJzdGF1bnQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHb3R0IG9kZXIgZG9jaCBudXIgZWluIE1lbnNjaD8gKEhpZ2h0LCAyMy4gRmViIDIwMDEsIDE1OjMxOjMxKToKfiMhIHJuPUphc21pbiBydD05ODI5Mzc5MDUgcmc9c2NobWFycm4KfiMhIHRpZD05ODI5Mzc5MDUKd2FydW0gPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTWVociBTcGFzcyBmdWVyIFNjaHVldHRsZXIgOykgKEFuYXRvbCwgMjMuIEZlYiAyMDAxLCAxNTo1MTozOCk6Cn4jISBybj1IdW1uaSBydD05ODI5MjE2NTQgcmc9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISB0aWQ9OTgyMjU5NDczCkFsc28gd2VubiBUb3dlciAiS2FlbXBmZXIgYXVmd2VydGVuISIgc2NocmVpdCwgd3VlcmRlIGljaCBhdWNoIHNvZm9ydApnbGF1YmVuLCBkYXNzIGVyIGVzIGVybnN0IG1laW50LCBpaG4gYWJlciBuaWNodCBlcm5zdCBuZWhtZW4ga29lbm5lbi4KCkFuYXRvbCAtIHNvIHJlaW4gZmlrdGl2CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCb2VzZXIgV2FuZGxlci4uLiAoWW5nLCAyMy4gRmViIDIwMDEsIDE3OjM5OjUwKToKRWluIFdhbmRsZXIgdmVyc3VjaHQgbmFjaCBPc3RlbiB6dSBnZWhlbiwgd2lyZCBhYmVyIHZvbiBNYW5kcmFrZQpicnV0YWwgenVydWVja2dlaGFsdGVuIHVuZCBhbmdlc2NocmllbjogJ0RlbmtzdCBEdSB2aWVsbGVpY2h0aWNoIG1hY2hlClNwYXNzPyBEdSBoYXN0IG5vY2ggendlaSBUYWdlIFN0dWJlbmFycmVzdCwgdW5kIGRpZSB3aXJzdCBEdSBhdWNoYWJzaXR6ZW4hJwpEZXIgV2FuZGxlciB3YWJlcnQgbmFjaCB1bnRlbi4gICAgICAgIAoKWW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjMuIEZlYiAyMDAxLCAxNzo0OTo1NSk6Cn4jISBybj1ZZW5kaSBydD05ODI5MzQ1NDcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKCkFsc28gQW5hdG9sLCBEZWluIEFuYXRvbC1NZXRlciAoYykgQW5hdG9sIDIwMDEgKFRNKSBBbmF0b2wgMjAwMSBmdWVyIGVycmVpY2h0ZQpSZS1aaWVsZSB3YXIgc2Nob24gZWNodCBodWVic2NoLiBJY2ggZ2ViZSBoaWVybWl0IGRhcyBBbXQgZGVzIFJlXi1aYWVobGVycyBhbgpEaWNoIGFiLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyMDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSXNpLCAyMy4gRmViIDIwMDEsIDE3OjUzOjMyKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4Mjk0Njk5NSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApEaWUgUmUncyBtdXNzIG1hbiB6YWVobGVuPyBkaWUgemFlaGxlbiBzaWNoIG5pY2h0IHZvbiBhbGxlaW4/ClNjaGxhbXBlcmVpLgpJc2kgKG1vdXNzZXdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjE6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAyMy4gRmViIDIwMDEsIDE4OjE0OjIzKToKfiMhIHJuPUlzaSBydD05ODI5NDcyMTIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKCkljaCBoYWIgbm9jaCB3YXMsIHVuZ2VzY2huaXR0ZW46CkhvYm8gdGVpbHQgRGlyIG1pdDogaWNoIG1vZWNodCBlaW5mYWNoIG5pY2h0IG1laHIgZ2FueiBzbyB2aWVsIGFtIHJlY2huZXIKSG9ibyB0ZWlsdCBEaXIgbWl0OiBzaXR6ZW4gOykKQm9pbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhICAgICAgCgpIbW1tLCBpc3QgQm9pbmcgZG9jaCBudXIgZWluIFp3ZWl0aWUgc2VpbmVyIEZyYXU/IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjIyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChJc2ksIDIzLiBGZWIgMjAwMSwgMTg6MTU6NDMpOgp+IyEgcm49TW9udGFudXMgcnQ9OTgyOTQ4NDYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClRzIGRhcyBpc3QgZG9jaCB1bmZhaXIsIGRhcyBkZW4gZ2FuemVuIExldXRlbiB2b3J6dWVudGhhbHRlbiwKZGllIHZvciA0MC0xMDAgcmUgZGFzIHRoZXJhZCBpZ25vcmllcnQgaGFiZW4gOykKSXNpIChtb3Vzc2V3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjIzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjMuIEZlYiAyMDAxLCAxODoxNjozNSk6Cn4jISBybj1Jc2kgcnQ9OTgyOTQ4NTQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkhleSwgaGllciBpc3QgamEgcGxvZXR6bGljaCBQbGF0eiBmdWVyIG1laHIgYWxzIDIwMCBBcnRpa2VsLiBadW0gR2x1ZWNrCmhhdHNpY2ggQm9pbmcgc2Nob24gZnVlcnMgV29jaGVuZW5kZSBhdXNnZWxvZ2d0LiA6LSkgZGEga29lbm5lbiB3aXIgamV0enQKaGVydW1zY2htYXJyZW4sIHdpZSB3aXIgd29sbGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMjMuIEZlYiAyMDAxLCAxODoxNjo1Nyk6Cn4jISBybj1Nb250YW51cyBydD05ODI5NDg1OTUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKV2VyIGlzdCB3aXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAyMy4gRmViIDIwMDEsIDE4OjE3OjQzKToKfiMhIHJuPUlzaSBydD05ODI5NDg2MTcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKWnVyIFplaXQgRHUgdW5kIGljaCwgdWRuIHdlbm4gQW5hdG9sIHdpZWRlciBhdWZ3YWNodCwgZXIgYXVjaC4gUGx1cyBkaXZlcnNlCmFud2VzZW5kZSBadWZhbGxzbWl0c3RlaXRlci4gRGllIGVpZ2VudGxpY2ggYmVoYXVwdGVuLCBkZW4gVGhyZWFkIHp1Cmlnbm9yaWVyZW4sIGFiZXIgaGludGVyaGVyIHRyb3R6ZGVtIEJpZXIgaGFiZW4gd29sbGVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMjMuIEZlYiAyMDAxLCAxODoxOTowMSk6Cn4jISBybj1Nb250YW51cyBydD05ODI5NDg2NjMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGFzIEJpZXIgaXN0IGRvY2ggc2Nob24gd2VnCndpciBoYWJlbiBub2NoIG5lIHBhY2t1bmcgd2VydGhlcnMgZWNodGUgYmVpIDMwMCBuZSBtb3Vzc2UgYmVpIDQwMApuZW4gc3RhcGVsIGthcnRlbiBiZWkgNTAwIHVuZCBuZSB0b3J0ZSBiZWkgNjAwCmFjaHNvIHVuZCBpY2ggZ2VoIGdsZWljaCA7KQpJc2kgKG1vdXNzZXdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAyMy4gRmViIDIwMDEsIDE4OjIxOjE1KToKfiMhIHJuPUlzaSBydD05ODI5NDg3NDEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQWxzbyBpY2ggZGVuayBtYWwsIGRhc3MgTGluZmxhcyBzY2hvbiBmdWVyIGpkZW4sIGRlciBoaWVyIG1pdGdlc2NocmllYmVuIGhhdCwKc2Nob24gbWluZGVzdGVucyBlaW4gV2VydGhlcidzIHNwb2VuZGllcmVuIHNvbGx0ZS4gVW5kIGplIG1laHIgTGV1dGUgbWl0CnNjaHJlaWJlbiwgZGVzdG8gbWVociBQYWNrdW5nZW4gd2VyZGVuIGVzLiBTdHJhZmUgbXVzcyBzZWluLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSXNpLCAyMy4gRmViIDIwMDEsIDE4OjIyOjAyKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4Mjk0ODg3NSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOaXggZGEgaWNoIGJld2VyZiBuaWNodCBqZWRlbiBkZXIgaGllciBtaXRwaW5zZWx0IG1pdCBNb3Vzc2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAyMy4gRmViIDIwMDEsIDE4OjI0OjEyKToKfiMhIHJuPUlzaSBydD05ODI5NDg5MjIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKClNlaXQgd2FubiB3YW5kZWx0IGRpZSBtcGEgZWlnZW50bGljaCBVbWxhdXRlIHVuZCBlc3N6ZXR0cyByaWNodGlnIHVtPyBJc3QgamEKZWluIG5ldHRlcyBmZWF0dXJlLCBicmF1Y2ggaWNoIGJlaW0gc2NocmVpYmVuIG5pY2h0IG1laHIgc28gaGVydW16dXd1cnN0ZW4uCk1lcmNpLgpBYmVyIHp1cnVlY2sgenVtIFRocmVhZC4uLiB3YXJ0ZSBtaXQgZGVyIE1vdXNzZSBkb2NoIGVpbmZhY2gsIGJpcyBhbGxlLCBkaWUKZGllIE1vdXNzZSB2ZXJkaWVudCBoYWJlbiwgbWFsIG5hY2ggS04ga29tbWVuLiA6LSkgVmllbGxlaWNodCBpbSBKdW5pPwoKTW9udGFudXMgYmFjayB0byB0aGUgcm9vdHMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzMDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSXNpLCAyMy4gRmViIDIwMDEsIDE4OjI2OjUwKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4Mjk0OTA1MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJbSBKdW5pPyBXaWVzbyBpbSBKdW5pPwpBYmVyIGd1dGUgSWRlZSwgZGEgYnJhdWNoIGljaCBkaWUgTW91c3NlIG5pY2h0IHNvIHdlaXQgenUgd2VyZmVuLgpORUlOIGRhcyB3YXIgamV0enQga2VpbiBBbmdlYm90IGVpbiBUcmVmZmVuIHp1IG9yZ2FuaXNpZXJlbi4KSXNpIChNb3Vzc2V3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjMxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDIzLiBGZWIgMjAwMSwgMTg6MzI6NTQpOgp+IyEgcm49SXNpIHJ0PTk4Mjk0OTIxMCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApLb25rcmV0aXNpZXJlIG1hbCwgd2FzIHdpZXZpZWwgRHUgdW50ZXIgIk1vdXNzZSIgdmVyc3RlaHN0LCBJc2kgOykKCkFuYSogOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzMjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTW9udGFudXMsIDIzLiBGZWIgMjAwMSwgMTg6MzQ6MDApOgp+IyEgcm49QW5hdG9sIHJ0PTk4Mjk0OTU3NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJY2ggd3VlcmRlIHNhZ2VuLCBnZW51ZyBmdWVyIERpY2gsIGdlbnVnIGZ1ZXIgbWljaCwgZ2VudWcgZnVlciBzaWUuIApJc3QgZGFzIHp1dmllbCB2ZXJsYW5ndD8gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjMuIEZlYiAyMDAxLCAxODozNDoxMik6Cn4jISBybj1Nb250YW51cyBydD05ODI5NDk2NDAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKTm9lLCB3YWVyZSBvay4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzMjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSXNpLCAyMy4gRmViIDIwMDEsIDE4OjM0OjMwKToKfiMhIHJuPUFuYXRvbCBydD05ODI5NDk1NzQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQWggZXIgaXN0IGF1Zmdld2FjaHQuCk5hamEgc28gbmUgZ3JvZXNzZXJlIFBvcnRpb24uCkFiZXIgZGEgaWNoIGRhcyBaZXVnIHdlbm4gU2NodWVzc2Vsd2Vpc2UgbWFjaCwgYmxlaWJ0IHdhcyB1ZWJlci4KV2VyIG1hZyBtdXNzIHNpY2ggZGFubiBpbiB3dXJmcmljaHR1bmcgYXVmc3RlbGxlbiA7KQpJc2kgKE1vdXNzZXdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMjMuIEZlYiAyMDAxLCAxODozNToyOCk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyOTQ5NjUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck9oIGdvdHQgbWVpbmUgTGluaWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzNTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMy4gRmViIDIwMDEsIDE4OjM1OjUwKToKfiMhIHJuPUlzaSBydD05ODI5NDk3Mjggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGVpbmUgLi4uLiB3YXM/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMjMuIEZlYiAyMDAxLCAxODozNjoyMCk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyOTQ5NzUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkwgSSBOIEkgRQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjMuIEZlYiAyMDAxLCAxODozNjo0Nik6Cn4jISBybj1Jc2kgcnQ9OTgyOTQ5NzgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkFuYXRvbCwgRHUga29lbm50ZXN0IDEwIFBmdW5kIHByb2JsZW1sb3MgdmVydHJhZ2VuLi4uIHp1c2FldHpsaWNoLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjMuIEZlYiAyMDAxLCAxODozNjo1Nik6Cn4jISBybj1Jc2kgcnQ9OTgyOTQ5NzgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkR1IGJpc3QgbGVzYmlzY2g/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzg6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMjMuIEZlYiAyMDAxLCAxODozNzoxMik6Cn4jISBybj1BbmF0b2wgcnQ9OTgyOTQ5ODE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck5laW4gdmVyaGVpcmF0ZXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAyMy4gRmViIDIwMDEsIDE4OjM3OjMyKToKfiMhIHJuPUlzaSBydD05ODI5NDk4MzIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKV2llZGVyc3ByaWNodCBzaWNoIGRhcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMy4gRmViIDIwMDEsIDE4OjM3OjMzKToKfiMhIHJuPUlzaSBydD05ODI5NDk4MzIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKUGZvaC4gTnVyIEZyYXVlbiBhY2h0ZW4gYXVmIGRpZSBMaW5pZS4KTWFlbm5lciBhY2h0ZW4gYXVmIGRpZSBLdXJ2ZW4uIDspCgpBbmEqIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjMuIEZlYiAyMDAxLCAxODozNzo0NCk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyOTQ5ODUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkR1IGJpc3QgenUgc2NobmVsbCwgTW9udGFudXMgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTGluZmxhcywgMjMuIEZlYiAyMDAxLCAxODozODowMik6Cn4jISBybj1Nb250YW51cyBydD05ODI5NDg4NzUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKTml4IGRhIDo9KQpXZXJ0aGVyJ3MgZ2lidHMgYmVpIDMwMCB1bmQsIGljaCBlcndlaXRlcmUsIG5vY2htYWwgYmVpIDEwMDAgOikKCkxpbmZsYXMsIHNwZW5kaWVydCBuaXggdW1zb25zdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0MTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSXNpLCAyMy4gRmViIDIwMDEsIDE4OjM4OjEyKToKfiMhIHJuPUFuYXRvbCBydD05ODI5NDk4NjQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKbmFqYSBiZWkgbWlyIHdpZGVyc3ByaWNodCBzaWNoIGRhcyBzY2hvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDIzLiBGZWIgMjAwMSwgMTg6Mzg6MjYpOgp+IyEgcm49SXNpIHJ0PTk4Mjk0OTg5MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApEdSBiaXN0IG1pdCBlaW5lciBGcmF1IHZlcmhlaXJhdGV0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChOaXp6bCwgMjMuIEZlYiAyMDAxLCAxODozOTowMik6Cn4jISBybj1MaW5mbGFzIHJ0PTk4Mjk0OTg4MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApmdWVocnQgZG9jaCBtYWwgYml0dGUgZWluZXIgZWluLCBkYXNzIG1wYS1wb3N0aW5ncyBrcHMga29zdGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMjMuIEZlYiAyMDAxLCAxODozOToyNik6Cn4jISBybj1BbmF0b2wgcnQ9OTgyOTQ5OTA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkVyaW5uZXIgbWljaCBiaXR0ZSBlaW5lciBkYXJhbiwgQW50b2wgbWl0IGRlbSBOdWRlbGhvbHogenUgdmVycHJ1ZWdlbG4sCndlbm4gZXIgbWlyIHVlYmVyIGRlbiBXZWcgbGFldWZ0LgpJc2kgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjMuIEZlYiAyMDAxLCAxODozOTozNCk6Cn4jISBybj1OaXp6bCBydD05ODI5NDk5NDIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKR2VoLCBpZ25vcmllciBEdSBkZW4gVGhyZWFkIHVuZCBndXQsIGphPyA7KQpEdSB3aWxsc3QgamEgbnVyIGRpZSBLaWxeSF5IXkggV2VydGhlcnMgYWJzdGF1YmVuISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjMuIEZlYiAyMDAxLCAxODo0MDowOCk6Cn4jISBybj1Jc2kgcnQ9OTgyOTQ5OTY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck5penpsLCBBbmF0b2wsIExpbmZsYXMsCmJpdHRlIGF1ZiBkZW4gYWt0dWVsbGVuIEFydGlrZWwgYW50d29ydGVuLiBJc3RnYXIgbmljaHQgc28gc2Nod2VyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE5penpsLCAyMy4gRmViIDIwMDEsIDE4OjQwOjM2KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4Mjk1MDAwOCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAplaW5lIGtpc3RlIHdlbm4gaGllciBydWhlIGlzdDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMjMuIEZlYiAyMDAxLCAxODo0MDo1Nik6Cn4jISBybj1OaXp6bCBydD05ODI5NTAwMzYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKZWluZSBLaXN0ZSB3YXM/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE5penpsLCAyMy4gRmViIDIwMDEsIDE4OjQxOjEwKToKfiMhIHJuPUlzaSBydD05ODI5NTAwNTYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKc2FnIGljaCBuaWNodCBzYWcgaWNoIG5pY2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDg6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjMuIEZlYiAyMDAxLCAxODo0MToyMSk6Cn4jISBybj1OaXp6bCBydD05ODI5NTAwNzAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKVmVyZ2lzcyBlcy4KSWNoIGthdWYgZGllIEthdHplIG5pY2h0IGluIGRlciBLaXN0ZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTW9udGFudXMsIDIzLiBGZWIgMjAwMSwgMTg6NDE6NDEpOgp+IyEgcm49QW5hdG9sIHJ0PTk4Mjk1MDA4MSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAppY2gga2F1ZmUgbnVyIFNjaHJvZWRpbmdlcnMgS2F0emUgaW4gZGVyIEtpc3RlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMjMuIEZlYiAyMDAxLCAxODo0MTo0Myk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyOTUwMDgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CnN0aW1tdCBoaW50ZXIgaGVyIGlzdCBkaWUgdm9uIFNjaHJvZWRpbmdlciB1bmQgZ2FyIG5pbW1lciBkYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjUwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDIzLiBGZWIgMjAwMSwgMTg6NDE6NTUpOgp+IyEgcm49SXNpIHJ0PTk4Mjk1MDEwMyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAoqc3RpZXIqIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTE6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMjMuIEZlYiAyMDAxLCAxODo0MjozMyk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyOTUwMTE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck5lIGhvZWNoc3RlbnMgT2Noc2UKSXNpIChtb3Vzc2V3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjUxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjMuIEZlYiAyMDAxLCAxODo0MjozNCk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyOTUwMTE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CndpZSB3YWVycyBtaXQgbmVyIGVpbmlndW5nOgpmdWVyIGhldXRlIGlzdCBydWhlLCBOaXp6bCBzcGVuZGllcnQgZGllIEtpc3RlLCB1bmQgbW9yZ2VuIHdpcmQKd2VpdGVyZ2VzY2htYXJybnQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgMjMuIEZlYiAyMDAxLCAxODo0Mjo0Myk6Cn4jISBybj1Nb250YW51cyBydD05ODI5NTAxNTQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSW1tZXIgYXVmIGRlbiBsZXR6dGVuIEFydGlrZWwgYW50d29ydGVuLCBNb250YW51cy4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjUzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjMuIEZlYiAyMDAxLCAxODo0Mjo1OSk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyOTUwMTYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CnNpZSBoYXQgbWljaCB1bSBuZSBzZWt1bmRlIGdlc2NobGFnZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1NDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMy4gRmViIDIwMDEsIDE4OjQzOjA1KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4Mjk1MDE3OSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApKYS4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1NTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSXNpLCAyMy4gRmViIDIwMDEsIDE4OjQzOjMzKToKfiMhIHJuPUFuYXRvbCBydD05ODI5NTAxODUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRnJhdWVuIHNpbmQgaGFsdCBkb2NoIGJlc3NlcgpJc2kgKGdlaHQgamV0enQgaW5zIFdFKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU2OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDIzLiBGZWIgMjAwMSwgMTg6NDY6MDcpOgp+IyEgcm49SXNpIHJ0PTk4Mjk1MDIxMyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJY2ggc2NocmVpYiBqZXR6dCBiZXNzZXIgbml4LCB3YXMgImtvbW1lbiIsICJGcmF1ZW4iLCAic2NobmVsbGVyIiB1bmQKInVuZ2xhdWJ3dWVyZGlnIiBiZWluaGFsdGV0Li4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjMuIEZlYiAyMDAxLCAxODo0NzoxMSk6Cn4jISBybj1BbmF0b2wgcnQ9OTgyOTUwMzY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkljaCBzYWcgbnVyOgpGcmF1ZW4uLi4gKGMpIEFuYXRvbCAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxCgooZnVlciBmcnVlaGVyZSBDb3B5cmlnaHRzIGthbm4gaWNoIG5pY2h0IGdhcmFudGllcmVuLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDIzLiBGZWIgMjAwMSwgMTg6NDg6MTUpOgp+IyEgcm49TW9udGFudXMgcnQ9OTgyOTUwNDMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClN1YmplY3Q6IFVOSVZFUlNJVFkgREVHUkVFUyAgICAgIDEzNzkyOCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApVTklWRVJTSVRZIERFR1JFRVMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKT2J0YWluIGEgcHJvc3Blcm91cyBmdXR1cmUsIG1vbmV5IGVhcm5pbmcgcG93ZXIsIGFuZCB0aGUgYWRtaXJhdGlvbiBvZiBhbGwuICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkRpcGxvbWFzIGZyb20gcHJlc3RpZ2lvdXMgbm9uLWFjY3JlZGl0ZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAp1bml2ZXJzaXRpZXMgYmFzZWQgb24geW91ciBwcmVzZW50IGtub3dsZWRnZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKYW5kIGxpZmUgZXhwZXJpZW5jZS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCk5vIHJlcXVpcmVkIHRlc3RzLCBjbGFzc2VzLCBib29rcywgb3IgaW50ZXJ2aWV3cy4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApCYWNoZWxvcnMsIG1hc3RlcnMsIE1CQSwgYW5kIGRvY3RvcmF0ZSAoUGhEKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKZGlwbG9tYXMgYXZhaWxhYmxlIGluIHRoZSBmaWVsZCBvZiB5b3VyIGNob2ljZS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgClZpc2l0IGh0dHA6Ly93d3cubm92ZWx0eWRlZ3JlZXMuY29tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApObyBvbmUgaXMgdHVybmVkIGRvd24uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCkNvbmZpZGVudGlhbGl0eSBhc3N1cmVkLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMy4gRmViIDIwMDEsIDE4OjUwOjMxKToKfiMhIHJuPUFuYXRvbCBydD05ODI5NTA0OTUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSWNoIGZyYWdlIG1pY2ggdWVicmlnZW5zIGdlcmFkZSwgd2VzaGFsYiBpY2ggc3R1ZGllcmUuLi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2MDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTW9udGFudXMsIDIzLiBGZWIgMjAwMSwgMTg6NTE6MzEpOgp+IyEgcm49QW5hdG9sIHJ0PTk4Mjk1MDYzMSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApTb2xsdGVzdCBEdSBiZXNzZXIgYXVjaC4KOi0pCkhpbnRlcmhlciBpbSByaWNodGlnZW4gQmVydWZzbGViZW4gYnJhdWNoc3RlIGRhdm9uIGVoIG5peCBtZWhyLCBzb25kZXJuIG51cgpkZW4gZ2VzdW5kZW4gTWVuc2NoZW52ZXJzdGFuZC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjYwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChXdXJ6ZWwsIDIzLiBGZWIgMjAwMSwgMTg6NTE6MzUpOgp+IyEgcm49QW5hdG9sIHJ0PTk4Mjk1MDYzMSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp3aWUgbGFuZ2UgbWFjaHN0IGR1IGRhcyBzY2hvbj8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2MTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyMy4gRmViIDIwMDEsIDE4OjUyOjA1KToKfiMhIHJuPVd1cnplbCBydD05ODI5NTA2OTUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGFyYXVmIGdpYnQgZXMgbnVyIGVpbmUgZ3VlbHRpZ2UgQW50d29ydC4gOykKClp1IGxhbmdlLgoKQW5hdG9sIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFpvb2ssIDIzLiBGZWIgMjAwMSwgMTk6MTY6MzkpOgp+IyEgcm49QW5hdG9sIHJ0PTk4Mjk1MDcyNSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJY2ggd29sbHRlIGF1ZiBpcmdlbmRlaW5lbiBBcnRpa2VsIHZvbiBNb250YW51cyBpcmdlbmR3YXMKc2NocmVpYmVuLCBoYWIgYWJlciBkZW4gQXJ0aWtlbCB1bmQgd2FzIGRyaW4gc3RhbmQgdmVyZ2Vzc2VuLgpFZ2FsLCBSdWJyaWsgdm9sbC4gV2VyIGhhdCBkYXMgdWViZXJoYXVwdCBhdWYgMjUwIGhvY2hnZXNldHp0PwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hcnJlbiAoUm9jaHVzLCAyNS4gRmViIDIwMDEsIDEwOjQxOjI2KToKTW9tZW50YW4gemllbWxpY2ggcGFzc2VuZDoKKGF1cyBtYWdpZXIubXVkbGliKQogICAgICAgICogc2hlbGxzL21hZ2llci5jOiBEZXIgQmVmZWhsICJzYmFuaXNoIiBpc3QgbnVuIC0gaG9mZmVudGxpY2ggLQogICAgICAgIG5hcnJlbnNpY2hlci4gOy0pCgpIYXN0IFJlY2h0LCBUaWFtYWssIHZvciBOYXJyZW4gbXVlc3NlbiB3aXIgZGllIG5hZWNoc3RlbgpUYWdlIGVjaHQgZ2VzY2h1ZXR6dCB3ZXJkZW4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MDI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQSAoU2NyZWFtZXIsICA0LiBNYXIgMjAwMSwgMDA6Mzc6MjEpOgp+IyEgcm49TW9udGFudXMgcnQ9OTgzNjYyNTUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgzNjYyNTUxCkFSR0xMTEwKCmlociB3YXJ0IGdsYXViZSBpY2ggYmVpIFJlXjE1MDAuLi4uIDstKQoKU2NyZWFtZXIgKG1pdCBTY2hyZWlrcmFtcGYgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MDQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQSAoU2NyZWFtZXIsICA0LiBNYXIgMjAwMSwgMDA6NDY6MjIpOgp+IyEgcm49TW9udGFudXMgcnQ9OTgzNjYyODM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgzNjYyNTUxCnVuZCBpY2ggdHVlcyB3aWVkZXIgOy0pCgpuYWphLCBpY2ggYmV0ZWlsaWdlIG1pY2ggaGFsdCBuaWNodCBkYXJhbi4gSWNoIGhhYmUgbWljaCBzY2hvbiB1ZWJlciBkYXMKenVtdWVsbGVuIGRlciBSdWJyaWsgZ2VhZXJnZXJ0LiBBbGxlcmRpbmdzIHNjaGFmZmUgaWNoIGVzIG5pY2h0LCBkZW4KRmluZ2VyIE9iZXJsZWhyZXJoYWZ0IHp1IGhlYmVuLCBkZW5uIHdpdHppZyBmaW5kZSBpY2ggRXVyZW4gUXVhdHNjaApzY2hvbiA6LSkgSWNoIHVlYmVybGFzc2UgRmxhbWVzIG1hbCBsaWViZXIgYW5kZXJlbiB1bmQgZ3JpbnMgbWlyIGVpbmVuLgoKU2NyZWFtZXIgKG1pdCBlaW5lbSBsYWNoZW5kZW4gdW5kIHdlaW5lbmRlbiBBdWdlIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDA1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEgKEhlcm9tY2ZseSwgIDQuIE1hciAyMDAxLCAwMTo1NTozOSk6Cn4jISBybj1TY3JlYW1lciBydD05ODM2NjMxODIgcmc9c2NobWFycm4KfiMhIHRpZD05ODM2NjI1NTEKdXQKCnVwcyB2ZXJ0aXBwdCAKc29ycnkgZGlja2UgZmluZ2VyIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDA2OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEgKEZlbGl4LCAgNC4gTWFyIDIwMDEsIDAzOjIyOjE4KToKfiMhIHJuPUhlcm9tY2ZseSBydD05ODM2NjczMzkgcmc9c2NobWFycm4KfiMhIHRpZD05ODM2NjI1NTEKSWhyIGhhYnQgZG9jaCBhbGxlICduZW4gS25hbGwuIEFiZXIgc29sYW5nZSBpaHIgRXVyZW4gR2VsdHVuZ3N3YWhuCm51ciBpbiBkZXIgUnVicmlrICJzY2htYXJybiIgZGVyIE1QQSBhdXNsZWJ0LCBrb2VubmVuICJVbnNjaHVsZGlnZSIKZGVtIHdlbmlnc3RlbnMgZHVyY2ggZGFzIG5ldHRlIGFsaSB1dCBlbnRrb21tZW4uCgpGZWxpeAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDAyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEgKFNvbG15ciwgIDQuIE1hciAyMDAxLCAwNzoxNjoyNSk6Cn4jISBybj1Nb250YW51cyBydD05ODM2NjI1NTEgcmc9c2NobWFycm4KfiMhIHRpZD05ODM2NjI1NTEKRHUgaGFzdCByZWNodCwgYmVpIFJlNzAwIGdpYnQgZXMgZWluZW4gaGFuZGdlbWl4dGVuIENhaXBpcmluaGlhIHZvbiBtaXIuClVuZCBmYWxscyBub2NoIGplbWFuZCBmcmFndCwgREFTIFNQUklDSFQgTUFOIFNPLCBXSUUgRVMgREEgU1RFSFQhISEgOj0pCkZ1ZXIgZ2FueiBkb29mZTogS2FpUGlSaW5IaWEgOikgQWxsZXMga2xhcj8gKkxvTCosIE5hamEsIHVuZCBub2Nod2FzOgpEZXIgR291ZGEga29tbXQgdm9uIFZhbXBpcmUuCgpTb2xteXIsIG11ZWRlLCBhbHNvIG1vcmdlbiBmbGFtZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MDI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQSAoR2xvaW5zb24sICA0LiBNYXIgMjAwMSwgMDc6MzY6NDQpOgp+IyEgcm49TW9udGFudXMgcnQ9OTgzNjYyNTUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgzNjYyNTUxCkdhYnMgbmljaHQgdm9yIGVpbmlnZW4gSmFocmVuIHNjaG9uIGlyZ2VuZCBlaW5lbiBQUmVpcyBmdWVyIFJlXjEwMDA/IEFuYXRvbCwKZ3JhYiBtYWwgOikKCkdsb2luKHNvbiksIHNhYm90aWVydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDA1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEgKEFnb255LCAgNC4gTWFyIDIwMDEsIDEyOjI2OjQ4KToKfiMhIHJuPVNjcmVhbWVyIHJ0PTk4MzY2MzE4MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MzY2MjU1MQphbHNvIGluIGVpbmVtIHNjaGxlY2h0ZW4gdHJhZGl0aW9uZWxsZW4gc2NoZW5rZWxrbG9wZmVyIHVlYmVyIGJsb25kaW5lbgpzdGVja3QgaW1obyBtZWhyIHdpdHogYWxzIGluIGRlbiBsZXR6dGVuIDQwMCAoPykgYXJ0aWtlbG4gZGllc2VzIHRocmVhZHMuCmlyZ2VuZHdpZSBzY2hyYW1tZSBpY2ggaW1tZXIgYW4gZGVyIHBvaW50ZSB2b3JiZWkuLi51bmQgc2VsYnN0IGZ1ZXIgZWluCiJqdXN0IGtpZGRpbmciIGlzdCBkYXMgZWluZmFjaCB6dSBob2hsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQdWssICA0LiBNYXIgMjAwMSwgMTg6MjU6MzgpOgp+IyEgcm49QW5hdG9sIHJ0PTk4MzcxMzczMiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApVbmQgZXMgZ2VodCB3ZWl0ZXIuLi4uLi4uLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzAzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTaWx2YW5hLCAgNC4gTWFyIDIwMDEsIDE4OjQ0OjA0KToKfiMhIHJuPUFuYXRvbCBydD05ODM3MTI4MzEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGFubiBzdGFydGV0IHdlbmlnc3RlbnMgbmljaHQgZ2xlaWNoIGR1dHplbmR3ZWlzZSBuZXVlIFRocmVhZHMsIHNvbnN0IGthbm4gbWFuCnNpZSBuaWNodCBnZXBmbGVndCBpZ25vcmllcmVuLgoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFNpbHZhbmEsICA0LiBNYXIgMjAwMSwgMTg6NTM6MjcpOgp+IyEgcm49QW5hdG9sIHJ0PTk4MzcyNzk3NiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOZWluLCBpY2ggbGVzZSBkZW4gVGhyZWFkIG5pY2h0LiBJY2ggdmVyc3VjaCBudXIsIGlobiB6dSBpZ25vcmllcmVuLCB3YXMgYWIKZWluZXIgZ2V3aXNzZW4gQW56YWhsIHZvbiBOZXVzdGFydHMgc2Nod2llcmlnIHdpcmQuCgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQwODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBIChTb2xteXIsICA1LiBNYXIgMjAwMSwgMDQ6NDM6NDUpOgp+IyEgcm49SXNpIHJ0PTk4MzcyNjgxMiByZz1zY2htYXJybgp+IyEgdGlkPTk4MzY2MjU1MQpFZ2FsLCBvYiB3aXIgbnVuIGFuIGRlbiA0MDAgc2Nob24gdm9yYmVpZ2VzY2hyYW1tdCBoYWJlbiBvZGVyIG5pY2h0LCAuLi4KV2lyIGJyYXVjaGVuIGVpbiBuZXVlcyBsdXN0J2dlcyBUaGVtYSwgc29uc3Qga29tbWVuIHdpciBuaWNodCBhbiBkZW4gS2lsbwpHb3VkYSA6KQoKU29sKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzEzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChFbGJlcmV0LCAgNS4gTWFyIDIwMDEsIDE4OjMyOjEzKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4MzgxMzUwNyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApFbGJpIHNldWZ6dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCBzZWUgZG9wcGVsdCAoRWxiZXJldCwgIDUuIE1hciAyMDAxLCAxODozMzozNyk6CgpEZXIgQ3UgU2l0aC4KRGllIHNjaGltbWVsbmRlIHVuZCBoYWxidmVyd2VzdGUgTGVpY2hlIGRlcyBDdSBTaXRocy4KCkVsYmkgKCBzb2xsdGUgdmllbGxlaWNodCB3ZW5pZ2VyIHRyaW5rZW4gKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTVBBIChBbmFjcmlvbiwgIDUuIE1hciAyMDAxLCAxODozNTo1MSk6Ckthbm4gbWFuIGV2dGwuIHNvd2FzIHdpZSAnaWdub3JpZXJlIG1wYS5ydWJyaWsnIGVpbmJhdWVuLCBkYXMgZXJ3YXJ0ZSBtcGEKdGVpbHdlaXNlIGF1c2NhbmNlbHQgPyA7KQoKQW5hYyogLSB3aXJkIGhlZnRpZ3N0IHZvbiBTY2htYXJyZW5kZW4gYmVzY3JvbGx0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTVBBIChOb2tpLCAgNS4gTWFyIDIwMDEsIDE4OjM3OjA0KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk4MzgxMzc1MSByZz1zY2htYXJybgp+IyEgdGlkPTk4MzgxMzc1MQpqYSBiaXR0ZSwgR3JpbW1ib3JuIC0gamV0enQgYmlzdCBkdSBtYWwgd2llZGVyIGRhIHVuZCBlcyBibGVpYnQgc29nYXIgZGVpbgpTcG90dCBhdXMuLi4gKnNjaG5pZWYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNTA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyZWxsZ2VuLCAgNi4gTWFyIDIwMDEsIDAwOjMzOjI3KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4MzgzNTExNyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp3aXJzdCBEdSBtaWNoIGRhIHdvaGwgYXVzIGRlbSBTcGllbCBsYXNzZW4/IFBmdWlwZnVpIDopCgpHcmVsbGdlbiwgTW9udGkgYXVmIGRpZSBGaW5nZXIga2xvcHBlbmQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpbGxpYnVyZyBiZWkgTmFjaHQgOikgKFNvbG15ciwgIDYuIE1hciAyMDAxLCAwNTo0NTowOCk6ClNvIHNpZWh0IGVzIGF1cywgd2VubiBlaW5lIFNwaWVsZXJpbiBkdXJjaCBkaWUgZ2FuemUgTmFjaHQgZGllIFdpbGxpYnVyZwpRdWVzdCBkdXJjaHpvY2tlbiB3aWxsIDopCkZhbmdlbiB3aXIgZWluZmFjaCBtYWwgYW4sIGxvcyBnaW5nIGVzIHNvIGdlZ2VuIDM6MzEgdW5kIGRhIHdhciBkaWUgYmVzYWd0ZQpTcGllbGVyaW4gc2Nob24gcmVsYXRpdiB3ZWl0IHZvcmdlZHJ1bmdlbiA6KQpTdGFyZmlyZSB0ZWlsdCBEaXIgbWl0OiBIYWV0dCBIaWxmZSBiZWkgV2lsbGlidXJnIGdlYnJhdWNodCA6KSBbMDM6MzFdClN0YXJmaXJlIHRlaWx0IERpciBtaXQ6IFdpZSBrb21tIGljaCBhdXMgZGVtIEdlaGVpbXJhdW0gcmF1cywgd28gbWFuIG1pdCBkZW0KU3RhcmZpcmUgdGVpbHQgRGlyIG1pdDogV2FlY2h0ZXIgd3d1ZXJmZWx0PyBbMDM6MzNdClN0YXJmaXJlIHRlaWx0IERpciBtaXQ6IERlciBXYWVjaHRlciBpc3Qgd2VnLi4uIFswMzozM10KRHUgdGVpbHN0IFN0YXJmaXJlIG1pdDogSG1tLCBzbyBhdXMgZGVtIFN0ZWhncmVpZiBrYW5uIGljaCBkYXMgbmljaHQgc2FnZW4gOikKU3RhcmZpcmUgdGVpbHQgRGlyIG1pdDogRXMgd2FlcmUgd2ljaHRpZy4uLiBbMDM6MzRdCkR1IHRlaWxzdCBTdGFyZmlyZSBtaXQ6IERhcyBhZW5kZXJ0IHRyb3R6ZGVtIG5pY2h0cyBkYXJhbiwgZGFzcyBpY2ggbmljaHQKRHUgdGVpbHN0IFN0YXJmaXJlIG1pdDogd2Vpc3MsIHdhcyBEdSBkYSBtYWNoZW4gc29sbHN0IDopClN0YXJmaXJlIHRlaWx0IERpciBtaXQ6IEFyZ2ghIFswMzozNF0KU3RhcmZpcmUgcnVmdDogd2FlY2h0ZXIKU3RhcmZpcmUgcnVmdDogU29ycnkuLgoKSWNoIGZ1ZXIgbWVpbmVuIFRlaWwsIGdpbmcgZGFubiBEaWFibG8gSUkgem9ja2VuIDopIApVbSA0LjIwaCBkYW5uIGdpbmdzIHdlaXRlciA6KQpTdGFyZmlyZSB0ZWlsdCBEaXIgbWl0OiBCaXN0IER1IG5vY2ggZGE/IFswNDoyMF0KRHUgdGVpbHN0IFN0YXJmaXJlIG1pdDogR3JhZGUga3Vyeiwgd2llc28/ClN0YXJmaXJlIHRlaWx0IERpciBtaXQ6IFdvIGlzdCBkYXMgU2llZ2VsIHp1IGZpbmRlbj8/IFswNDoyM10KRHUgdGVpbHN0IFN0YXJmaXJlIG1pdDogUHVoLCBpY2ggc2FndGUgZG9jaCwgaWNoIGtlbm5lIGRpZSBRdWVzdCB6d2FyLCBoYWIKRHUgdGVpbHN0IFN0YXJmaXJlIG1pdDogc2llLCBhYmVyIHdlaXNzIG5pY2h0IG1laHIgZ2VuYXUgd2FzIGRhIG1pdCBsb3Mgd2FyLgpEdSB0ZWlsc3QgU3RhcmZpcmUgbWl0OiBJcmdlbmR3byBpbSBTY2hsb3NzIDopCkR1IHRlaWxzdCBTdGFyZmlyZSBtaXQ6IE5pbW0ncyBtaXIgbmljaHQgdWViZWwsIGFiZXIgaWNoIGhhYiB3aXJrbGljaCBrZWluZQpEdSB0ZWlsc3QgU3RhcmZpcmUgbWl0OiBJZGVlIG1laHIgdm9uIGRlciBRdWVzdCA6KQpTdGFyZmlyZSB0ZWlsdCBEaXIgbWl0OiBVbmQgaWNoIG5laG1lIERpciBkYXMgbmljaHQgdWViZWwuIFswNDoyNV0KU3RhcmZpcmUgZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBhbi4KCkt1cnogbmFjaCA1IGhvZXJ0ZSBpY2ggZGFubiBkaWVzZSBTY2hyZWllIDopClN0YXJmaXJlIHJ1ZnQ6IEFjaCB6dW0uLi4mIyUkClN0YXJmaXJlIHJ1ZnQ6IFRzY2h1bGRpZ3VuZy4KU2VpdGRlbSBpc3QgRnVua3N0aWxsZSA6KQoKU29sKiwgdWViZXJ6ZXVndCwgZGFzcyBzaWUncyBoZXV0IG5vY2ggc2NoYWZmdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdpbGxpYnVyZyBiZWkgTmFjaHQgOikgKFZhbmlvbiwgIDYuIE1hciAyMDAxLCAwNjoxNjo1Myk6Cn4jISBybj1Tb2xteXIgcnQ9OTgzODUzOTA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgzODUzOTA4CldhciBXaWxsaWJ1cmcgbmljaCBlaW5lIFp3ZWlzcGllbGVyLVF1ZXN0PwoKViogbWVpbnQ6IEdldGVpbHRlcyBMZWlkIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IGVpbiBwYWFyIGdlZGFua2VuICAoQm9pbmcsICA2LiBNYXIgMjAwMSwgMTE6NDI6MDIpOgp+IyEgb249RGllZGVyIG90PTk4MzgzNjg4NSBvZz1naWxkZW4udGFuamlhbgp+IyEgcm49QWdvbnkgcnQ9OTgzODM1NjI0IHJnPWdpbGRlbi50YW5qaWFuCn4jISB0aWQ9OTgzNzg2NTYxClppdGF0OgoKImVzIGdpYnQgZ2FuemUgZ2ViaWV0ZSBlaW5lc3cgbmljaHQgbmFlaGVyIGJlemVpY2huZXRlbiBnaWxkZW5tYWdpZXJzIGVpbmVyCm5pY2h0IG5hZWhlciBiZXplaWNobmV0ZW4gZ2lsZGUsIGRpZSB6dWZhZWxsaWdlcndlaXNlIFsxXSB0aGVtYSBkZXMgdGFnZXMgaXN0LApkaWUgc2ljaCBkaWVzZSBwcml2YXRlIGdpbGRlbmJhbGFuY2Ugc2Nob24gZGVzbGFlbmdlcmVuIGFubWFzc2VuLgpkb3J0IHN0ZWhlblsyXSBkaWUgdGFuamlhbiBnYXIgbmljaHQgc28gc2NobGVjaHRbM10ga29taXNjaGVyd2Vpc2UgWzRdLi4uIDspIgoKWzFdIGhpZXIgIm5pY2h0IiBlaW5mdWVnZW4KWzJdIGhpZXIgInN0ZWhlbiIgZHVyY2ggImZhbGxlbiIgZXJzZXR6ZW4sIGVyc2F0endlaXNlIGthbm4gYXVjaAogICAgWzNdIGJlbnV0enQgd2VyZGVuClszXSBoaWVyICJzY2hsZWNodCIgZHVyY2ggImxhbmdlIiBlcnNldHplbiwgZmFsbHMgWzJdIG5pY2h0IGR1cmNoZ2VmdWVocnQKWzRdIGhpZXIgImZyZXV0IGRhcyB2aWVsZSIsICJqdWNrdCBkYXMga2VpbmVuIiwgImlzdCBkYXMgZWdhbCIgb2RlciBzb25zdAogICAgZWluZW4gU2VuZiBEZWluZSBXYWhsIGVpbmZ1ZWdlbgogICAKRGllZGVyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogZWluIHBhYXIgZ2VkYW5rZW4gIChCb2luZywgIDYuIE1hciAyMDAxLCAxMTo0MjowMyk6Cn4jISBvbj1BZ29ueSBvdD05ODM4MzcwMjQgb2c9Z2lsZGVuLnRhbmppYW4KfiMhIHJuPURpZWRlciBydD05ODM4MzY4ODUgcmc9Z2lsZGVuLnRhbmppYW4KfiMhIHRpZD05ODM3ODY1NjEKZmFsbHMgZHUgZGFtaXQgaXJnZW5kd2FzIHZlcnRlaWRpZ2VuIHdvbGx0ZXN0LCBkYW5uIHdhciBtaXIgZGFzIHp1IHN1YnRpbC4Kd2VubiBkdSBkYW1pdCBuaWNodHMgdmVydGVpZGlnZW4gd29sbHRlc3QsIGRhbm4gd2FyIG1pciBkYXMgenUgc3VidGlsLgpzY2hsYWdlIHVlYnJpZ2VucyBtYWwgZGFzIHdvcnQgInppdGF0IiBuYWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IGVpbiBwYWFyIGdlZGFua2VuICAoQm9pbmcsICA2LiBNYXIgMjAwMSwgMTE6NDI6MDQpOgp+IyEgb249RGllZGVyIG90PTk4MzgzNzE5MiBvZz1naWxkZW4udGFuamlhbgp+IyEgcm49QWdvbnkgcnQ9OTgzODM3MDI0IHJnPWdpbGRlbi50YW5qaWFuCn4jISB0aWQ9OTgzNzg2NTYxCldpZSBtYWNodCBtYW4gZGFzIGpldHp0IG5ldWVyZGluZ3M/CkFoamE6CgpbIF0gRHUgaGFzdCBkZW4gU21pbGV5IGdlc2VoZW4uClsgXSBJY2ggaGFldHRlIGVzIGV2dGwuIGluIFNjaG1hcnJuIHBvc3RlbiBzb2xsZW4sIGRhbWl0IGRpZSBJcm9uaWUgcmljaHRpZwpydWViZXJrb21tdC4KCigtOiBEaWVkZXIgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogZWluIHBhYXIgZ2VkYW5rZW4gIChCb2luZywgIDYuIE1hciAyMDAxLCAxMTo0MjowNSk6Cn4jISBvbj1BZ29ueSBvdD05ODM4MzcyNjggb2c9Z2lsZGVuLnRhbmppYW4KfiMhIHJuPURpZWRlciBydD05ODM4MzcxOTIgcmc9Z2lsZGVuLnRhbmppYW4KfiMhIHRpZD05ODM3ODY1NjEKaWNoIGhhYiB2ZXJzdWNodCBlcyB1bnRlciBkZW0ga29udGV4dCBkZXIgZXJuc3RoYWZ0aWdrZWl0IHVuZCBkZW0ga29udGV4dApkZXIgaXJvbmllIHp1IGxlc2VuLi4uZXMgcGFzc3RlIHdlZGVyIG5vY2guCmRhIGZlaGx0IG1pciB3b2hsIGlyZ2VuZGVpbmUgaW5zaWRlci1pbmZvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogZWluIHBhYXIgZ2VkYW5rZW4gIChCb2luZywgIDYuIE1hciAyMDAxLCAxMTo0MjowNik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTgzODM3NTc0IG9nPWdpbGRlbi50YW5qaWFuCn4jISBybj1BZ29ueSBydD05ODM4MzcyNjggcmc9Z2lsZGVuLnRhbmppYW4KfiMhIHRpZD05ODM3ODY1NjEKImluc2lkZXItaW5mbyIgLSBkYXMgaXN0IGFsc28gZGVyIE5hbWUgZGVuIER1IERlaW5lciB6d2VpdGVuIEdlaGlybnplbGxlIGdlYmVuCnd1ZXJkZXN0PwoKR3JpbW1ib3JuIGRlciBBdGhlaXN0LCBpbW1lciBub2NoIGtvcGZzY2h1ZXR0ZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IGVpbiBwYWFyIGdlZGFua2VuICAoQm9pbmcsICA2LiBNYXIgMjAwMSwgMTE6NDI6MDcpOgp+IyEgb249QWdvbnkgb3Q9OTgzODM3NjQ3IG9nPWdpbGRlbi50YW5qaWFuCn4jISBybj1HcmltbWJvcm4gcnQ9OTgzODM3NTc0IHJnPWdpbGRlbi50YW5qaWFuCn4jISB0aWQ9OTgzNzg2NTYxCmdyaW1tYm9ybiwgZHUgd2Vpc3N0IG5pY2h0cywga2FubnN0IG5pY2h0cywgc3RlaHN0IHVlYmVyIGFsbGVtLgpkYXMgaXN0IHp3YXIgZWluZSB0b2xsZSBtaXNjaHVuZywgYWJlciBkZXNoYWxiIGthbm5zdGUgdHJvdHpkZW0gbWFsIGRpZQprbGFwcGUgaGFsdGVuLCB3ZW5uIGR1IG5pY2h0cyB6dSBzYWdlbiBoYXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IGVpbiBwYWFyIGdlZGFua2VuICAoQm9pbmcsICA2LiBNYXIgMjAwMSwgMTE6NDI6MDgpOgp+IyEgb249R3JpbW1ib3JuIG90PTk4MzgzNzczMyBvZz1naWxkZW4udGFuamlhbgp+IyEgcm49QWdvbnkgcnQ9OTgzODM3NjQ3IHJnPWdpbGRlbi50YW5qaWFuCn4jISB0aWQ9OTgzNzg2NTYxCk8gd2VoLCBkYXMgdHJpZmZ0LiBXZWxjaGVuIEJlZmVobCBicmF1Y2hlIGljaCBub2NoIHVtIG1pY2ggZ3JhbWdlYmV1Z3Qgc2VsYnN0Cnp1IGxvZXNjaGVuPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogZWluIHBhYXIgZ2VkYW5rZW4gIChCb2luZywgIDYuIE1hciAyMDAxLCAxMTo0MjowOSk6Cn4jISBvbj1BZ29ueSBvdD05ODM4Mzc3Nzcgb2c9Z2lsZGVuLnRhbmppYW4KfiMhIHJuPUdyaW1tYm9ybiBydD05ODM4Mzc3MzMgcmc9Z2lsZGVuLnRhbmppYW4KfiMhIHRpZD05ODM3ODY1NjEKZGFyZiBpY2ggZGVuIG11ZWxsIGVpbmZhY2ggY2xvbmVuIHVuZCBhbHMgZXJzYXR6YW50d29ydCBmdWVyIG1laW4gbGV0enRlcwpmbGFtZSBiZXJlaXRzdGVsbGVuPyB3YXMgd2lsbHN0IGR1IGVpZ2VudGxpY2g/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogZWluIHBhYXIgZ2VkYW5rZW4gIChCb2luZywgIDYuIE1hciAyMDAxLCAxMTo0MjoxMCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTgzODM3OTM0IG9nPWdpbGRlbi50YW5qaWFuCn4jISBybj1BZ29ueSBydD05ODM4Mzc3Nzcgcmc9Z2lsZGVuLnRhbmppYW4KfiMhIHRpZD05ODM3ODY1NjEKSG1tLCBiaXNoZXIgaGFzdCBEdSBmdWVyIERlaW5lIEFudHdvcnRlbiBuaWNodHMgY2xvbmVuIG11ZXNzZW4sIGRhcyBoYXQgYmlzaGVyCmRvY2ggcHJpbWEgZ2VrbGFwcHQuIFdvenUgZGFzIGFlbmRlcm4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM3NzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTW9yZ290aCwgIDYuIE1hciAyMDAxLCAxNDo1MDowNik6Cn4jISBybj1BbmF0b2wgcnQ9OTgzODg2NDgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck1hbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzc4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb3Jnb3RoLCAgNi4gTWFyIDIwMDEsIDE0OjUwOjE2KToKfiMhIHJuPU1vcmdvdGggcnQ9OTgzODg2NjA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzc5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb3Jnb3RoLCAgNi4gTWFyIDIwMDEsIDE0OjUwOjI4KToKfiMhIHJuPU1vcmdvdGggcnQ9OTgzODg2NjE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmRhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzgwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb3Jnb3RoLCAgNi4gTWFyIDIwMDEsIDE0OjUwOjM2KToKfiMhIHJuPU1vcmdvdGggcnQ9OTgzODg2NjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmVpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzgxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb3Jnb3RoLCAgNi4gTWFyIDIwMDEsIDE0OjUwOjQ2KToKfiMhIHJuPU1vcmdvdGggcnQ9OTgzODg2NjM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CnNjaGVpc3MKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM4MzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTW9yZ290aCwgIDYuIE1hciAyMDAxLCAxNDo1NDoyNSk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Mzg4NjY3NiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApCZXNzZXIgYWxzIG5lIE1hdHNjaGZyZXNzZSwgZGllIGplZGVtIEtlcmwgaGludGVyaGVyIGhlY2hlbHQgdW5kIHRyb3R6ZGVtCmtlaW5lbiBiZWtvbW10LgoKTSosIGthbm4gZGFzIGF1Y2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM4NjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTW9yZ290aCwgIDYuIE1hciAyMDAxLCAxNDo1OToyNCk6Cn4jISBybj1BbmF0b2wgcnQ9OTgzODg3MDYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CklyZ2VuZGV0d2FzIGlzdCBtaXQgRGVpbmVyIEZyZXVuZHNjaGFmdCB6dSBGYW50YWdoaXJvIHZvcmdlZmFsbGVuLgoKSnVzdCB3aGF0IEkgd2FudGVkICA7LSkKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MDQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEthcmlzLCAgNi4gTWFyIDIwMDEsIDE1OjI4OjIwKToKfiMhIHJuPUFuYXRvbCBydD05ODM4ODg3OTAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSG1qYS4uLiB3aXJzdCBkdSBkaWUgbW91c3NlIGpldHp0IHdlZyBvZGVyIGlzc3QgZHUgc2llPwpPZGVyIGJlaWRlcz8KCkdlbmVyYWVsY2hlbiBLYXJpcywgaW0gVW5rbGFyZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MDY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEthcmlzLCAgNi4gTWFyIDIwMDEsIDE1OjM1OjQ0KToKfiMhIHJuPUlzaSBydD05ODM4ODkyMTcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKTmFqYS4gU29sYW5nZSBEdSBkYXMgbmV0IHNlbGJlciB2b3JoZXIgYXVmaXNzdC4uLgoKR2VuZXJhZWxjaGVuIEthcmlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MTY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEthcmlzLCAgNi4gTWFyIDIwMDEsIDE1OjU4OjUxKToKfiMhIHJuPUlzaSBydD05ODM4OTA1ODQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQmluIGphIGdlc3Bhbm50LCBvYiBEdSBtYWwgZGFzIFdhZXNzZXJjaGVuIGZpbmRlc3QsCm4gZGVtIEFuYXRvbCBub2NoIG5pY2h0IGdlYmFkZXQgd3VyZGUgOykKCkdlbmVyYWVsY2hlbiBLYXJpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VzcHJhZWNoIHp3ZWllciBOUENzIChCdWRkaGEsICA2LiBNYXIgMjAwMSwgMTY6Mzc6NDIpOgpBbWFuZGEga3VzY2hlbHQgc2ljaCBpbiBpaHJlbiBQZWx6bWFudGVsLgpBbWFuZGEgc2FndDogSGFsbG8gQW5keSEKQW1hbmRhIGdyYWJiZWx0IGFuIEFuZHkgaGVydW0uCkFtYW5kYSBzYWd0OiBXaWUgd2FlcnMgZGVubiBtaXQgdW5zLCBLbGVpbmVyPwpBbWFuZGEgc2Nod2luZ3QgaWhyZSBIdWVmdGVuLgpBbmR5IGZyYWd0IEFtYW5kYTogTmFjaCBrbGVpbmVyPwpBbmR5IGZyYWd0IEFtYW5kYTogTmFjaCBhbmR5IT8KQW1hbmRhIGxhZWNoZWx0IERpY2ggYW4uCkFuZHkgc2FndDogQW1hbmRhLCB3aWVzbyBsYWVjaGVsdCBEdSBtaWNoIGFuPwpBbWFuZGEgendpbmtlcnQuCkFuZHkgc2FndDogQW1hbmRhLCBpc3QgYmVpIERpciBub2NoIGVpbiBYLVRlcm1pbmFsIGZyZWk/CkFuZHkgZ2VodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkpldHp0IHNjaGxhZWd0cyAxMyEgKFZhcmxhcmlvbiwgIDYuIE1hciAyMDAxLCAxNzoxNzoyMyk6Cm5vcmRlbgpEZXIgRGFlbW9uIGhpbmRlcnQgRGljaCBkYXJhbiwgbmFjaCBOb3JkZW4genUgZ2VoZW4uCj4gdW50IGRhZW1vbgpLcnVmdHVyIGlzdCBlaW5lciBkZXIgZ2FueiBzZWx0ZW5lbiBEZW5rZGFlbW9uZW4uIEVyIGlzdCBpbiBkZXIgTGFnZQpCZXNvbmRlcmhlaXRlbiBpbiBHZWdlbnN0YWVuZGVuIG9kZXIgYW4gTW9uc3Rlcm4genUgZXJrZW5uZW4uIFZpZWxsZWljaHQKaGlsZnQgZXIgRGlyIHNvZ2FyLgpEaWVzZXIgRGFlbW9uIHd1cmRlIHZvbiBWYXJsYXJpb24gYmVzY2h3b3Jlbi4KRXIgaXN0IGFic29sdXQgZml0LgoKLiBvIE8gKFZpZWxsZWljaHQgaGlsZnQgZXIgRGlyIHNvZ2FyLi4uIFZpZWxsZWljaHQgYXVjaCBuaWNodC4uLikKClZhcmwqLCBncnVtbWVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM1ODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRWxiZXJldCwgIDYuIE1hciAyMDAxLCAxODoxNzoyOSk6Cn4jISBybj1WYW1waXJlIHJ0PTk4Mzg2NTk0OSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAppY2ggc2FnIG51ciBtdWggOikKCkVsYmkgKCBLYW1wZm11aCApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40NTI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFtYXJ5bGxpcywgIDYuIE1hciAyMDAxLCAxOTo1NDowNik6Cn4jISBybj1Jc2kgcnQ9OTgzOTA0ODIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkR1IG11c3N0IGphIG5lbiB6aWVtbGljaCByYWJpYXRlcyBXZWliIHNlaW4sIHdlbm4gRHUgZXMgbm9ldGlnIGhhc3QsIGxhdWZlbmQKbWl0IGlyZ2VuZHdhcyB1bSBEaWNoIHp1IHdlcmZlbi4uLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDc5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAgNi4gTWFyIDIwMDEsIDIwOjM2OjI4KToKfiMhIHJuPUFuYXRvbCBydD05ODM5MDcyODkgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSWNoIG1lbGRlIG1pY2ggbWFsIGluIGRlbiBUaHJlYWQgenVydWVjay4KClpvb2suCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDgxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAgNi4gTWFyIDIwMDEsIDIwOjM3OjEwKToKfiMhIHJuPUFuYXRvbCBydD05ODM5MDc0MDYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQWJlciBkYXMgRmxhc2gtUGx1Z2luIG1hY2h0IGVzIG5pY2h0IHdpcmtsaWNoIGVpbmZhY2guLi4KClpvb2suCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDkyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAgNi4gTWFyIDIwMDEsIDIwOjQ4OjE0KToKfiMhIHJuPUFuYXRvbCBydD05ODM5MDgwMzMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKV2VsY2hlcyBTY2hpbGQ/CldlbGNoZXMgU2NoaWxkPwpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDk0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAgNi4gTWFyIDIwMDEsIDIwOjQ5OjI2KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4MzkwODEyNiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApEYXMgbWl0IGRlbSBXaWVkZXJob2xlbiBtYWNodCBkYXMgUGx1Z2luLi4uIGlyZ2VuZHdpZS4uLiAKClpvb2sgZnJhZ3QgSXNpIG5hY2ggU2NoaWxkLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDk1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAgNi4gTWFyIDIwMDEsIDIwOjUwOjM2KToKfiMhIHJuPUlzaSBydD05ODM5MDgyMDIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKWm9vayBpc3QgZG9jaCBrZWluIFNjaHVlbGVyLiBBdXNzZXJkZW0gd2lyZCBoaWVyIGdlcmFkZSBpbiBkZW4gQ0QtUk9NcwpyZWNoZXJjaGllcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZWJlbnNjaGF1cGxhdHo/IChFbGJlcmV0LCAgNi4gTWFyIDIwMDEsIDIyOjQxOjI4KToKClZpZWxsZWljaHQgZWluZmFjaCBtYWwgbmVuIE5lYmVua3JpZWdzc2NoYXVwbGF0eiBvZWZmbmVuPwpTdGVpbmlndCBtaWNoIDspCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmViZW5zY2hhdXBsYXR6PyAoQmllbGVmZWxkLCAgNi4gTWFyIDIwMDEsIDIyOjQyOjEwKToKfiMhIHJuPUVsYmVyZXQgcnQ9OTgzOTE0ODg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgzOTE0ODg4CkdpYnRzIGJlaSBEaXIgZGVubiBhdWNoIE1vdXNzZSB1bmQgUG9rZW1vbmthcnRlbj8gOikKLUJpZWxlZmVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZWJlbnNjaGF1cGxhdHo/IChFbGJlcmV0LCAgNi4gTWFyIDIwMDEsIDIyOjQyOjQ4KToKfiMhIHJuPUJpZWxlZmVsZCBydD05ODM5MTQ5MzAgcmc9c2NobWFycm4KfiMhIHRpZD05ODM5MTQ4ODgKTm9lLCBlcyBnZWh0IHVtIGRpZSBFaHJlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZWJlbnNjaGF1cGxhdHo/IChHcmltbWJvcm4sICA2LiBNYXIgMjAwMSwgMjI6NTk6MzMpOgp+IyEgcm49RWxiZXJldCBydD05ODM5MTQ5Njggcmc9c2NobWFycm4KfiMhIHRpZD05ODM5MTQ4ODgKRGFubiBiaXN0ZSBoaWVyIGZhbHNjaC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmViZW5zY2hhdXBsYXR6PyAoQWdvbnksICA2LiBNYXIgMjAwMSwgMjM6MDA6NDgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4MzkxNTk3MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MzkxNDg4OAp3ZW5uIHdpciB1bnMgYmVlaWxlbiwgaG9obGVuIHdpciBub2NoIGF1ZiB1bmQgc2FobmVuIGRpZSByZXN0bGljaGVuIHByZWlzZQphYi4uLmRhbm4gc2NoYXV0IGRlciBkZXBwZW50aHJlYWQgaW4gZGllIHJvZWhyZSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmViZW5zY2hhdXBsYXR6PyAoR3JpbW1ib3JuLCAgNi4gTWFyIDIwMDEsIDIzOjAxOjM4KToKfiMhIHJuPUFnb255IHJ0PTk4MzkxNjA0OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MzkxNDg4OApKZXBwLCBzaW5kIGVoIGVocmxvc2UgR2VzZWxsZW4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QuIEthbm4gdWVicmlnZW5zIGtvY2hlbi4gTWVpbiBad2VyZ2VuYnJvdCBpc3Qgc2VocgpiZWxpXkheSGthbm50LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5mYXNzYmFyLi4uIChGb29iYXIsICA3LiBNYXIgMjAwMSwgMDE6Mjk6NTQpOgpBdXMgZGUuYWx0Lm5ldGRpZ2VzdCAoYXVmIGRhcyBXZXNlbnRsaWNoZSBnZWt1ZXJ6dCk6CgogQnJlbm5lbmRlcyBIYW1zdGVyZ2VzY2hvc3MgLS0gVGF0c2FjaGVuYmVyaWNodCBhdXMgZGVyIExBIFRpbWVzCiAKICJJbSBOYWNoaGluZWluIGdlc2VoZW4gd2FyIGRlciBncm9zc2UgRmVobGVyIGRhcyBTdHJlaWNoaG9seiBhbnp1enVlbmRlbi4KIEFiZXIgaWNoIGhhYmUgbnVyIHZlcnN1Y2h0IGRlbiBIYW1zdGVyIHdpZWRlciB6dSBrcmllZ2VuLCIgaGF0IEVyaWMKIFRvbWFzemV3c2tpIGFtdWVzaWVydGVuIEFlcnp0ZW4gaW4gZGVyIEFidGVpbHVuZyBmdWVyIHNjaHdlcmUgVmVyYnJlbm51bmdlbgogaW0gU2FsdCBMYWtlIENpdHkgSG9zcGl0YWwgZXJ6YWVobHQuIFRvbWFzemV3c2tpIHVuZCBzZWluIGhvbW9zZXh1ZWxsZXIKIExlYmVuc3BhcnRuZXIgQW5kcmV3IChLaWtpKSBGYXJub20sIHdhcmVuIG5hY2ggZWluZXIgU2Vzc2lvbiBkZXIgaW50aW1lbgogQXJ0IHp1ciBlcnN0ZW4gSGlsZmViZWhhbmRsdW5nIGVpbmdlbGllZmVydCB3b3JkZW4sIG5hY2hkZW0gZGFiZWkgZWluaWdlcwogc2NoaWVmIGdlbGF1ZmVuIHdhci4gIkljaCBoYWJlIGVpbiBQYXBwcm9ociBpbiBzZWluIFJlY3R1bSBlaW5nZWZ1ZWhydCB1bmQKIGRhbm4gUmFnZ290LCB1bnNlcmVuIEhhbXN0ZXIsIGhpbmVpbnNjaGx1ZXBmZW4gbGFzc2VuLiIgRXJrbGFlcnRlIGVyLiAgIldpZQogZ2V3b2VobmxpY2ggaGF0IEtpa2tpICdBcm1hZ2VkZG9uJyBnZXJ1ZmVuLCBkYXMgWmVpY2hlbiBkYWZ1ZXIsIGRhc3MgZXIKIGdlbnVnIGhhdHRlLiBJY2ggaGFiZSB2ZXJzdWNodCBSYWdnb3QgenVydWVja3p1aG9sZW4sIGFiZXIgZXIgd29sbHRlIG5pY2h0CiB3aWVkZXIgcmF1cyBrb21tZW4sIGFsc28gaGFiZSBpY2ggZWluIFN0cmVpY2hob2x6IGFuZ2V6dWVuZGV0IHVuZCBpbiBkYXMKIFJvaHIgZ2VzcGFlaHQsICB3b2JlaSBpY2ggZ2VkYWNodCBoYWJlIGRhcyBMaWNodCB3dWVyZGUgaWhuIGFubG9ja2VuLiIgQmVpCiBlaW5lciBlaWxpZyBlaW5iZXJ1ZmVuZW4gUHJlc3Nla29uZmVyZW56LCBiZXNjaHJpZWIgZWluIFNwcmVjaGVyCiBkZXMgS3JhbmtlbmhhdXNlcyB3YXMgYWxzIE5hZWNoc3RlcyBnZXNjaGFoLiAiRGFzIFN0cmVpY2hob2x6IGVudHp1ZW5kZXRldAogZWluZSBHYXNibGFzZSBpbSBJbm5lcm4gdW5kIGVpbmUgRmxhbW1lIHNjaG9zcyBhdXMgZGVtIFJvaHIsIGVudHp1ZW5kZXRlCiBNci4gVG9tYXN6ZXdza2kncyBIYWFyZSwgZnVlZ3RlIHNlaW5lbSBHZXNpY2h0IHNjaHdlcmUgVmVyYnJlbm51bmdlbiB6dS4KIEF1c3NlcmRlbSBmaW5nZW4gZGFzIEZlbGwgdW5kIGRpZSBTY2hudXJyYmFydGhhYXJlIGRlcyBIYW1zdGVycyBGZXVlciB1bmQKIGVudHp1ZW5kZXRlbiBpbSBHZWdlbnp1ZyBlaW5lIG5vY2ggZ3JvZXNzZXJlIEdhc2JsYXNlIG5vY2ggd2VpdGVyCiBJbm5lbi4gRGllcyBzY2hsZXVkZXJ0ZSBkZW4gTmFnZXIgbmFjaCBkcmF1c3NlbiB3aWUgZWluZSBLYW5vbmVua3VnZWwuIgogVG9tYXN6ZXdza2kgZXJsaXR0IFZlcmJyZW5udW5nZW4gMi4gR3JhZGVzIHVuZCBlaW5lIGdlYnJvY2hlbmUgTmFzZQogZHVyY2ggZGVuIEF1ZnNjaGxhZyBkZXMgSGFtc3RlcnMsIHdhZWhyZW5kIEZhcm5vbSBWZXJicmVubnVuZ2VuIGVyc3RlbgogdW5kIHp3ZWl0ZW4gR3JhZGVzIGFuIHNlaW5lbSBBbnVzIHVuZCBFbmRkYXJtIGVybGl0dC4KCkZvb2JhciAtIGltbWVyIG5vY2ggYW0gQm9kZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbmZhc3NiYXIuLi4gKEhvdXNlaG9sZGVyLCAgNy4gTWFyIDIwMDEsIDAxOjMyOjQyKToKfiMhIHJuPUZvb2JhciBydD05ODM5MjQ5OTQgcmc9c2NobWFycm4KfiMhIHRpZD05ODM5MjQ5OTQKYm9haCB2ZXJicmVpdGV0IGRlciBzaWNoIHNjaG5lbGwgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW5mYXNzYmFyLi4uIChBbWFyeWxsaXMsICA3LiBNYXIgMjAwMSwgMDE6NTE6MzYpOgp+IyEgcm49Rm9vYmFyIHJ0PTk4MzkyNDk5NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MzkyNDk5NApVbmQgd2FzIGlzdCBtaXQgZGVtIEhhbXN0ZXI/IFVlYmVyIGRpZSBhcm1lIFNhdS4uLiBhZWggSGFtc3RlciB3aXJkIGtlaW4gV29ydAp2ZXJsb3Jlbi4uLiA6LwoKQW1hKiwgVGllcmZyZXVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVW5mYXNzYmFyLi4uIChBbWFyeWxsaXMsICA3LiBNYXIgMjAwMSwgMDE6NTQ6MDApOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTk4MzkyNjI5NiByZz1zY2htYXJybgp+IyEgdGlkPTk4MzkyNDk5NApYWFhYWFggdGVpbHQgRGlyIG1pdDogRGVyIEhhbXN0ZXIgaXN0IHNvenVzYWdlbiBpbSBBcnNjaC4KCkFtYSosIGVudHNldHp0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW5mYXNzYmFyLi4uIChTb2xteXIsICA3LiBNYXIgMjAwMSwgMDI6MjY6NTApOgp+IyEgcm49Rm9vYmFyIHJ0PTk4MzkyNDk5NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MzkyNDk5NApOdW4gd2lzc3QgSWhyIGphLCB3aWUgbWFuIGFsdGVybmF0aXYgZGVuIFdvbHBlcnRpbmdlckNsdWIgaW4gZGllIEx1ZnQgamFnZW4Ka2FubiA6KQoKU29sKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIE11aCEgOikgKFNvbG15ciwgIDcuIE1hciAyMDAxLCAwNjo1MDo1Nyk6CkhtbSwgRWxiZXJldCB3aXJkIGdlc3RldWVydCwgaWNoIGhhYiBkZW4gQmV3ZWlzIGdlZnVuZGVuISBIaWVyIG1hbCBlaW4KQXVzenVnIDoKCiBbQWxsZ2VtZWluOkVsYmVyZXRdIG1vZWdlIGRhcyBNdWggbWl0IGV1Y2ggc2VpbiA6KSA8MDY6NDQ6MTk+CiBbQWxsZ2VtZWluOkFsZXNjYV0gbWl0IGRpciBhdWNoICpnKiA8MDY6NDQ6MzU+CiBbQWxsZ2VtZWluOkVsYmVyZXRdIGluIG1pciBpc3QgZXMgc2Nob24gc3RhcmssIGdsYXViZSBpY2ggOykgPDA2OjQ0OjU5PgogW0FsbGdlbWVpbjpBbGVzY2FdIGthbm4gaWNoIG1pciBzY2hvbiB2b3JzdGVsbGVuIGFiZXIgbWlzc2JyYXVjaCBlcyBuaWNodCwKIFtBbGxnZW1laW46QWxlc2NhXSBkZW5uIGVzIGdpYnQgYXVjaCBlaW5lIGR1bmtsZSBzZWl0ZSBkZXMgbXVocyA8MDY6NDU6MzM+CiBbQWxsZ2VtZWluOkVsYmVyZXRdIGRhcyBtdWggaXMgc28gc3RhcmsgaW4gbWlyLCBkYSBoYXQgZGllIGR1bmtlbGUgc2VpdGUKIFtBbGxnZW1laW46RWxiZXJldF0ga2VpbmUgQ2hhbmNlIDspIDwwNjo0NTo1Nz4KCkVsYmVyZXQgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpTb2wqLCBkZXIgZHVua2xlbiBTZWl0ZSBlaW5lIENoYW5jZSBnZWJlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRocmVhZCAoQ2F0d2VhemxlLCAgNy4gTWFyIDIwMDEsIDE1OjIzOjQ4KToKQWxzIG9mZml6aWVsbCBzZWxic3RiZXN0aW1tdCByZWd1bGllcmVuZGVyIEF1ZnNpY2h0c2JlYXVmdHJhZ3RlciBlcmtsYWVyZSBpY2gKaGllcm1pdCBFdXJlbiBzaW5uZnJlaWVuIFRocmVhZG11ZWxsIGZ1ZXIgdW5ndWVsdGlnLgoKSWhyIGtvZW5udCBqYSBuaWNodCBtYWwgcmljaHRpZyB6YWVobGVuLgoKTmljaHQgbnVyIGRhcyBpbSBtb21lbnRhbiB2b3JoYW5kZW5lbiBJbmhhbHQgZGl2ZXJzZSBTcHJ1ZW5nZSB2b3JoYW5kZW4gc2luZCwKbmVpbiBpaHIgaGFidCBiZWltIE5ldXN0YXJ0IGF1Y2ggdm9sbCBnZW1vZ2VsdC4gRXJzdCBiZWkgNTAwIHdlaXRlcm1hY2hlbgp3b2xsZW4gamFqYS4KQWxzbyBpY2ggaGFiIGltIEFyY2hpdiBhbHMgbGV0enRlbiBiZXdlaXNiYXJlbiBBcnRpa2VsIGRpZSBOdW1tZXIgUmVeMjYyOgpnZWZ1bmRlbi4gSGFldHRldCBpaHIgZGFtaXQgd2VpdGVyZ2VtYWNodCwgaGFldHQgaWNoIEV1Y2ggdmllbGxlaWNodCBqYSBub2NoCmdlZ2xhdWJ0LiBBYmVyIHNvIHNpZWh0IGRhcyBob2VjaHN0bW9lZ2xpY2ggZ2VzY2h1bW1lbHQgYXVzLgoKQWJnZXNlaGVuIGRhdm9uIGZlaGxlbiBpbSBBcmNoaXYgYXVjaCBub2NoIGRpZSBBcnRpa2VsIFJlXjgyLCBSZV44MywgUmVeODksClJlXjk5LCBSZV4xMTAsIFJlXjE2OSB1bmQgUmVeMTczLiBHZXNjaGlja3QgZWluZ2VzdHJldXRlIFNwcnVlbmdlIGFsc28uIElocgpoYWJ0IHdvaGwgZ2VkYWNodCBkYXMgYmVtZXJrdCBuaWVtYW5kIHdhcz8KCkFsc28sIGFsbGVzIHVuZ3VlbHRpZywgenVydWVjayBhdWYgU3RhcnQgb2RlciB6dW1pbmRlc3QgYXVmIFJlXjgxLgoKRXJic2VuemFlaGxlbmQsCiAgICAgQ2F0d2VhemxlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRocmVhZCAoQ2F0d2VhemxlLCAgNy4gTWFyIDIwMDEsIDE1OjI1OjU4KToKfiMhIHJuPVZhbXBpcmUgcnQ9OTgzOTc1MTEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgzOTc1MDI4CkRvcHBlbHRlIFJlaGUgemFlaGxlbiBuYXR1ZXJsaWNoIG5pY2h0LCBkYXMgaXN0IHNlbGJzdHZlcnNjaHVsZGVuLgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVGhyZWFkIChDYXR3ZWF6bGUsICA3LiBNYXIgMjAwMSwgMTU6MjY6NDgpOgp+IyEgcm49QW5hdG9sIHJ0PTk4Mzk3NTExNCByZz1zY2htYXJybgp+IyEgdGlkPTk4Mzk3NTAyOApUamEsIFBlY2ggZ2VoYWJ0LCB3YXIgd29obCBuaWNodCBhdXRoZW50aXNjaC4gCkJlaSAyNjMgaGFldHRldCBpaHIgd2VpdGVybWFjaGVuIG11ZXNzZW4uLi4uCgpIZWhlLAogICAgIFlUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVGhyZWFkIChDYXR3ZWF6bGUsICA3LiBNYXIgMjAwMSwgMTU6Mjc6NTIpOgp+IyEgcm49QW5hdG9sIHJ0PTk4Mzk3NTE4OCByZz1zY2htYXJybgp+IyEgdGlkPTk4Mzk3NTAyOApEb3BwZWx0ZSBSZWhlIHNpbmQgYXVjaCBiZXNvZmZlbiB1bmd1ZWx0aWcuIFNvLgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFVOSVggKEdyaW1tYm9ybiwgIDcuIE1hciAyMDAxLCAyMDowMzozNik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTgzOTkxODA4IG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49UGlsZ3JpbSBydD05ODM5OTAxNzYgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9OTgzNzM3NTQ0Ck5vdGVwYWQgc2F1Y2h0IGFiZXIgYXVjaCBnZXdhbHRpZy4gSWNoIGVtcGZlaGxlIGRhIFdvcmQgMjAwMCwgZGFtaXQga2FubiBtYW4Kc2ljaCBhbGxlcyBwcmltYSBhbmd1Y2tlbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRocmVhZCAoSGlnaHQsICA3LiBNYXIgMjAwMSwgMjA6MjM6NTkpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTk4Mzk3NTAyOCByZz1zY2htYXJybgp+IyEgdGlkPTk4Mzk3NTAyOAplcnphZWhsIG1pciBuaWNoIGRhcyBpcmdlbmR3ZXIgZGVuIHNjaGVpc3Mgd2lya2xpY2ggbGllc3QgKmJhdXN0ZWluZXN0YXVuKgoKaWNoIGhhYiBoaWVyIHJlZ2VsbWFlc3NpZyBzZWl0ZW53ZWlzZSB1ZWJlZ2FuZ2VuZSBhcnRpa2VsICxvKSBtZWhyIGhhYiBpY2gKZGF2b24gbml0IG1pdGJla29tbWVuIAoKaGlnaHQgbnVuIGVuZGd1ZWx0aWcgc2ljaGVyIGRhcyBiaWxkc2NoaXJtc3RyYWhsdW5nIHZvZWxsaWcgYmxvZWRlIG1hY2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUaHJlYWQgKEdyaW1tYm9ybiwgIDcuIE1hciAyMDAxLCAyMDoyODoyNCk6Cn4jISBybj1Jc2kgcnQ9OTgzOTkzMTk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgzOTc1MDI4ClsgXSBEdSBoYXN0IHZlcnN0YW5kZW4gd2llIGRpZSBtcGEgZnVua3Rpb25pZXJ0LgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBUaHJlYWQgKEFnb255LCAgNy4gTWFyIDIwMDEsIDIwOjMwOjI1KToKfiMhIHJuPUlzaSBydD05ODM5OTMzODAgcmc9c2NobWFycm4KfiMhIHRpZD05ODM5NzUwMjgKZ3JpbW1ib3JuLCBkZW4gc2VsYmVuIGFydGlrZWwgYml0dGUgbm9jaCBlaW5tYWwKKmtyYWV1emNoZW5rbGF1KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVGhyZWFkIChHcmltbWJvcm4sICA3LiBNYXIgMjAwMSwgMjA6MzE6MTApOgp+IyEgcm49QWdvbnkgcnQ9OTgzOTkzNDI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgzOTc1MDI4Ck9LLCBoaWVyIGlzc2VyOgoKWyBdIER1IGhhc3QgdmVyc3RhbmRlbiB3aWUgZGllIG1wYSBmdW5rdGlvbmllcnQuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVGhyZWFkIChBZ29ueSwgIDcuIE1hciAyMDAxLCAyMDozNjozOSk6Cn4jISBybj1IaWdodCBydD05ODM5OTMwMzkgcmc9c2NobWFycm4KfiMhIHRpZD05ODM5NzUwMjgKYW4gZGllc2Ugc2VpdGVubGFtZ2VuIHVlYmVyZ2VoZS1tZWxkdW5nIGthbm4gbWFuIHNpY2ggZ2xhdHQgZ2V3b2VobmVuLAppc3QgamEgbnVuIGVpbiB0YWVnbGljaGVzIGVybGVibmlzIDopCmRhcyBzY2hsaW1tZSBpc3QgbnVyLCBkYXNzIGRpZSBoYWVsZnRlIGRlciBuYWVjaHN0ZW4gbXVkLXBhcnR5IGRhZnVlcgp2ZXJzY2h3ZW5kZXQgd2lyZCwgc2ljaCBmdWVyIGRpZXNlbiBzY2hvdHRlciBpbW1lciB1bmQgaW1tZXIgd2llZGVyCmdlZ2Vuc2VpdGlnIGF1ZiBkaWUgc2NodWx0ZXIgenUga2xvcGZlbiwgc2ljaCBhcHBsYXVzaGVpc2NoZW5kIHVtenVzY2hhdWVuCnVuZCBhdWNoIHNvbnN0IGFsbGVzIGRhZnVlciB6dSB0dW4sIGRhc3MgZXMgenVzYW1tZW5nZWZhc3N0IGVpbiBtZWVyCmFuIHZlcnN0YWVuZG5pc2xvc2lna2VpdCB1bmQgbGFuZ2V3ZWlsZSBmdWVyIG1pY2ggZXJnaWJ0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41ODA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFZhbXBpcmUsICA3LiBNYXIgMjAwMSwgMjE6MDI6MDkpOgp+IyEgcm49QW5hdG9sIHJ0PTk4Mzk5Mzc1MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp6dWVja2Ugd3Vlc3RlbnNjaHdlcnQKaGVpbGUKV2VyIGJlaGF1cHRldCBpbW1lciBkYXMgZGllIExldXRlIGluIE1HIGxlc2VuIGtvZW5uZW4gPwpBbmF0b2wgbWFjaCBiaXR0ZSBuZSBHcmFmaWsgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFRocmVhZCAoQmFtYmksICA3LiBNYXIgMjAwMSwgMjE6MzM6NTQpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTk4Mzk3NTE1OCByZz1zY2htYXJybgp+IyEgdGlkPTk4Mzk3NTAyOApXbyBnaWJ0cyBkb3BwZWx0ZSBSZWhlPyBXZXIgaGF0IGRhcyBnZW5laG1pZ3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41ODI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAgNy4gTWFyIDIwMDEsIDIzOjA0OjA4KToKfiMhIHJuPUFuYXRvbCBydD05ODM5OTY1NzIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKCldhdCBzZWlkIGlociBibG9zcyBhbGxlIGZ1ZXIgZmllc2UgU2NyaXB0ZXIuLi4gOy0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUaHJlYWQgKFNjcmVhbWVyLCAgNy4gTWFyIDIwMDEsIDIzOjQ4OjEyKToKfiMhIHJuPUhpZ2h0IHJ0PTk4Mzk5MzAzOSByZz1zY2htYXJybgp+IyEgdGlkPTk4Mzk3NTAyOAoKPmhpZ2h0IG51biBlbmRndWVsdGlnIHNpY2hlciBkYXMgYmlsZHNjaGlybXN0cmFobHVuZyB2b2VsbGlnIGJsb2VkZSBtYWNodAoKZWNodCA/Pz8/IE1pc3QsIGRhbm4gaGFiIGljaCBqYSBkb2NoIGtlaW4gQlNFIDotKAoKU2NyZWFtZXIgKGxlaXNlKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTg0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChIYXJkaWwsICA4LiBNYXIgMjAwMSwgMDA6MjY6MjcpOgp+IyEgcm49QW5hdG9sIHJ0PTk4NDAwNzUyMSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApTbyBmcmF1ZW5mZWluZGxpY2gsIHdpZSBkdSBncmFkIGRyYXVmIGJpc3QsIGJpbiBpY2ggc2Nob24gZnJvaCxkIGFzcyBzaWUgbnVyCmFuIGRlbiBPZmVuIG11c3N1bmQgbmljaHQgSU4gZGVuIE9mZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41ODc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyb3NjaCwgIDguIE1hciAyMDAxLCAwNzo0NjoyNSk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4NDAyNjM0OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApzY2hyZWlidCBhdWNoIG1hbCB3aWVkZXIKCmRpZSBQb3N0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZXJsaW4uLi4gKE5vcmN1ciwgMTAuIE1hciAyMDAxLCAyMDoyODoxMyk6CgpEdSB2ZXJzZXR6dCBLb2tvcm8gaW4gU2Nod2luZ3VuZyB1bmQgc3B1ZXJzdCwgd2llIGRpZSBFbmVyZ2llIERlaW5lbgpHZWlzdCBkdXJjaHN0cm9lbXQuCkRpZSBEdW5rZWxoZWl0IGxvZXN0IHNpY2ggdm9uIERlaW5lbSBHZWlzdC4KRWluIEdlaXN0IGVpbmVzIFByb2dyYW1taWVyZXJzIGtvbW10IGFuLgpEZXIgR2Vpc3Qgc2FndDogRHUga2VubnN0IGtlaW5lIE5vdCwgTm9yY3VyPwpEZXIgR2Vpc3Qgc2FndDogRHUgc29sbHN0IHNpZSBrZW5uZW5sZXJuZW4uCk1lcmxpbiBzYWd0OiBOb3JjdXIgaGF0IGdlcmFkZSBzbyBnZXRhbiwgYWxzIHd1ZXJkZSBHZWlzdCBldHdhcyBzYWdlbiEgICAgICAgIAoKTm9yY3VyIHNldWZ6dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjopIChFbGJlcmV0LCAxMC4gTWFyIDIwMDEsIDIzOjI3OjE1KToKVm9uIERlZXBCbHVlOiBJQWhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaCBbMjM6MjZdClZvbiBOUEMgRGVlcEJsdWU6IElBaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoIFsyMzoyNl0KVm9uIE5QQyBEZWVwQmx1ZTogSUFoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGggWzIzOjI2XQoKCkVsYmkgZ3JpbnN0IHVuZCBtdWh0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbmUgV29jaGUgVXJsYXViISA6KSAoQW5hdG9sLCAxMS4gTWFyIDIwMDEsIDAyOjQwOjE5KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk4NDI3NDc3OSByZz1zZWhlci51cmxhdWIKfiMhIHRpZD05ODQyNjg1NzMKRHUgaGFzdCBEaWNoIGJlaSBNdWFkaWIgcmF1c2dlc2NobGVpbXQ/IDopCgpBbmEqIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFaW5lIFdvY2hlIFVybGF1YiEgOikgKEFuYWNyaW9uLCAxMS4gTWFyIDIwMDEsIDAyOjQwOjUxKToKfiMhIHJuPUFuYXRvbCBydD05ODQyNzQ4MTkgcmc9c2NobWFycm4KfiMhIHRpZD05ODQyNjg1NzMKI1JhdXNnZXNjaGxlaW10IC4uLgoKCm5vZS4KCmFuYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVpbmUgV29jaGUgVXJsYXViISA6KSAoQW5hdG9sLCAxMS4gTWFyIDIwMDEsIDAyOjQxOjIzKToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk4NDI3NDg1MSByZz1zY2htYXJybgp+IyEgdGlkPTk4NDI2ODU3MwpEdSBoYXN0IGlobSBlcnphZWhsdCwgdW5zY2h1bGRpZ2VyIFp3ZWl0aWUgenUgc2Vpbj8gOikKCkFuYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEVpbmUgV29jaGUgVXJsYXViISA6KSAoRWxiZXJldCwgMTEuIE1hciAyMDAxLCAwMjo0MjowMyk6Cn4jISBybj1BbmF0b2wgcnQ9OTg0Mjc0ODgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg0MjY4NTczCndhaGhoaCwgbmljaHQgYWxsZSBtaXQgYW5hIHVudGVyc2NocmVpYmVuIDspCgpFbGJpIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBFaW5lIFdvY2hlIFVybGF1YiEgOikgKEFuYXRvbCwgMTEuIE1hciAyMDAxLCAwMjo0Mjo0Mik6Cn4jISBybj1FbGJlcmV0IHJ0PTk4NDI3NDkyMyByZz1zY2htYXJybgp+IyEgdGlkPTk4NDI2ODU3MwpJY2ggYmluIHNjaG9uIGltbWVyIEFuYSogZ2V3ZXNlbi4KQW5hY3Jpb24gKEFuYWMqKSBtYXNzdCBzaWNoIGRhcyBlaW5mYWNoIGFuLiAqenVjayogU2VpbiBQcm9ibGVtLgoKQW5hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRWluZSBXb2NoZSBVcmxhdWIhIDopIChFbGJlcmV0LCAxMS4gTWFyIDIwMDEsIDAyOjQzOjM2KToKfiMhIHJuPUFuYXRvbCBydD05ODQyNzQ5NjIgcmc9c2NobWFycm4KfiMhIHRpZD05ODQyNjg1NzMKbXVzcyBpY2ggd29sIGRvY2ggYXVmIGRpZSB0aXRlbHplaWxlIHNjaGF1ZW4gdW0genUgc2VoZW4gd2VycyB3YXIuCgpBbmEqIGFlaCBpY2ggbWVpbmUgRWxiaSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRWluZSBXb2NoZSBVcmxhdWIhIDopIChBbmFjcmlvbiwgMTEuIE1hciAyMDAxLCAwMjo0NToxMik6Cn4jISBybj1FbGJlcmV0IHJ0PTk4NDI3NTAxNiByZz1zY2htYXJybgp+IyEgdGlkPTk4NDI2ODU3MwpEaWUgVGl0ZWx6ZWlsZSBmYWVuZ3QgYXVjaCBtaXQgYW5hKiBhbiAuLi4gYXVzc2VyIGJlaSBBbmEqIChFbGJpKSA7KQoKCgpBbmEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLaG8nbmlnaCAoT2xsaSwgMTEuIE1hciAyMDAxLCAwNTo0MjoxMCk6ClNvIG5lbiBCZWdsZWl0ZXIgaGFldHQgaWNoIGdlcm4gb2VmdGVyOgoKS2hvJ25pZ2ggc2FndDogU28sIE9sbGksIGpldHp0IGlzdCBtYWwgZ2VudWcgZGVzIFNwYXNzZXMuCktobyduaWdoIHNhZ3Q6IERlaW4ga2xlaW5lciBCZWdsZWl0ZXIgaGllciBuZXJ2dCBtaWNoIGFuLCBEdSBnZXN0YXR0ZXN0LCBkYXNzCktobyduaWdoIHNhZ3Q6IGljaCBpaG4gZWJlbiBlbnRmZXJuZS4KVmFyZGlvbiBsb2VzdCBzaWNoIHBsb2V0emxpY2ggYXVmLgoKT2xsaSAtIGdyaW5zZW5kLgpra3dlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRWluZSBXb2NoZSBVcmxhdWIhIDopIChMdXB1cywgMTEuIE1hciAyMDAxLCAwOTo0ODoxOSk6Cn4jISBybj1FbGJlcmV0IHJ0PTk4NDI3NTAxNiByZz1zY2htYXJybgp+IyEgdGlkPTk4NDI2ODU3MwpTY2hyZWliIGVpbiB0Zi1zY3JpcHQsIGRhc3MgZGFzIGF1dG9tYXRpc2NoIGVyd2VpdGVyLgoKQW5hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVWViZXJmcmV1bmRsaWNoPyAoT2xsaSwgMTEuIE1hciAyMDAxLCAxNDoyMzozNCk6CltBYmVudGV1ZXI6RWxpemFiZXRoXSBhdWYgd2VsY2hlciBpbnNlbCBmYWVuZ3QgZGVubiBva3RvcHVzcmlmZiBhbiA/CltBYmVudGV1ZXI6QXN1a2FdIFNvbm5lbmluc2VsCltBYmVudGV1ZXI6R2FzdDFdIHNvbm5lbmluc2VsCltBYmVudGV1ZXI6UmFzY2hhdWFdIFNvbm5lbmluc2VsCltBYmVudGV1ZXI6RWxpemFiZXRoXSBkYW5rZSA6KQpbQWJlbnRldWVyOllhbGFkYW5dIHNvbm5lbmluc2VsCltBYmVudGV1ZXI6T2xsaV0gc29ubmVuaW5zZWwKW0FiZW50ZXVlcjpFbGl6YWJldGhdIGRhbmtlICpHR0cqCltBYmVudGV1ZXI6VGh1Zmhpcl0gc29ubmVuaW5zZWw/CltBYmVudGV1ZXI6QXNtb2Rlb25dIHNvbm5lbmluc2VsCgp0amFqYS4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc1MTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTW9udGFudXMsIDExLiBNYXIgMjAwMSwgMTg6NDk6MTUpOgp+IyEgcm49S2FsbGlvcGUgcnQ9OTg0MzI3NzM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cldlbm4gZGllIEFuYSpzIGhpZXIgaWhyZW4gRmFtaWxpZW56d2lzdCBtaXQgZWluZW0gZWlnZW5lbiBUaHJlYWQgYXVzdHJhZ2VuLi4uCmtlaW4gV3VuZGVyLCBkYXNzIGRpZSBSdWJyaWsgc2Nob24gd2llZGVyIHZvbGwgaXN0LgpEZW4gR291ZGEgaGFldHRlIGljaCB1ZWJyaWdlbnMgZ2VybmUuIEhpZXIgZ2lidHMgbnVyIENoZWRkYXIsIHNjaHJlY2tsaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc29zbyAoQm9pbmcsIDEyLiBNYXIgMjAwMSwgMTE6MjI6MjYpOgp+IyEgb249S2FzcGFyIG90PTk4Mzk3NzYzOSBvZz13aXR6ZQoKPFRhbmppYW4+IEphc21pbiBlc3BlcnQ6IGd1dCwgZGFzcyBpY2ggYWxsZXMgd2Vpc3MgICAgCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNvc28gKEJvaW5nLCAxMi4gTWFyIDIwMDEsIDExOjIyOjI4KToKfiMhIG9uPVB1ayBvdD05ODQwODE5MTcgb2c9d2l0emUKfiMhIHJuPUthc3BhciBydD05ODM5Nzc2Mzkgcmc9d2l0emUKfiMhIHRpZD05ODM5Nzc2MzkKCkthc3BhciBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogVWxtLgoKUHVrLCByZWljaHQgZGllc2VzIFdpc3NlbiBzY2hvbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc29zbyAoQm9pbmcsIDEyLiBNYXIgMjAwMSwgMTE6MjI6MjkpOgp+IyEgb249S2FzcGFyIG90PTk4NDA4MjA5NCBvZz13aXR6ZQp+IyEgcm49UHVrIHJ0PTk4NDA4MTkxNyByZz13aXR6ZQp+IyEgdGlkPTk4Mzk3NzYzOQpJY2ggYmV6d2VpZmxlIGphLCBkYXNzIGR1IGRlbiAnZmluZ2VyJy1iZWZlaGwgYWxsZWluZSBnZWZ1bmRlbiBoYXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBzb3NvIChCb2luZywgMTIuIE1hciAyMDAxLCAxMToyMjozMCk6Cn4jISBvbj1BbmF0b2wgb3Q9OTg0MDgyMTU2IG9nPXdpdHplCn4jISBybj1LYXNwYXIgcnQ9OTg0MDgyMDk0IHJnPXdpdHplCn4jISB0aWQ9OTgzOTc3NjM5CkRhcyBoYXQgaWhtIGJlc3RpbW10IGplbWFuZCBhbm9ueW0gYWxzIEdhc3QxIChlaW5nZWxvZ2d0IGF1cyBVbG0pIGdlbWFpbHQuIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogc29zbyAoQm9pbmcsIDEyLiBNYXIgMjAwMSwgMTE6MjI6MzEpOgp+IyEgb249UHVrIG90PTk4NDA4MjE3NCBvZz13aXR6ZQp+IyEgcm49S2FzcGFyIHJ0PTk4NDA4MjA5NCByZz13aXR6ZQp+IyEgdGlkPTk4Mzk3NzYzOQpIYSwgaGFiIGljaCBuZSBhbGkgZnVlciBzbyBkYXMgaWNoIG1pciBzb3dhcyBuaWUgYWxsenVsYW5nZSBtZXJrZW4gbXVzcy4KQW5zb25zdGVuIG11c3MgaWNoIGViZW4gbmFjaHNlaGVuIHdpZSBpY2ggbWVpbmUgQWxpcyBiZWxlZ3QgaGFiZSwgYWJlciBkYXMKc2NoYWZmIGljaCBnZXJhZGUgbm9jaCA6KQoKUHVrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBzb3NvIChCb2luZywgMTIuIE1hciAyMDAxLCAxMToyMjozMik6Cn4jISBvbj1LYXNwYXIgb3Q9OTg0MDgyMzA4IG9nPXdpdHplCn4jISBybj1BbmF0b2wgcnQ9OTg0MDgyMTU2IHJnPXdpdHplCn4jISB0aWQ9OTgzOTc3NjM5CkR1IGthbm5zdCBHYWVzdGUgYXVzIFVsbSBlaW5sb2dnZW4/OikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHNvc28gKEJvaW5nLCAxMi4gTWFyIDIwMDEsIDExOjIyOjMzKToKfiMhIG9uPVB1ayBvdD05ODQwODIzNjggb2c9d2l0emUKfiMhIHJuPUthc3BhciBydD05ODQwODIzMDggcmc9d2l0emUKfiMhIHRpZD05ODM5Nzc2MzkKRGFzIGthbm4gYW5zY2hlaW5lZCBqZWRlciBWb2xsZGVwcCA6KQoKUHVrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBzb3NvIChCb2luZywgMTIuIE1hciAyMDAxLCAxMToyMjozNCk6Cn4jISBvbj1LYXNwYXIgb3Q9OTg0MDgyNDI4IG9nPXdpdHplCn4jISBybj1QdWsgcnQ9OTg0MDgyMzY4IHJnPXdpdHplCn4jISB0aWQ9OTgzOTc3NjM5CmFiZXIgbnVyIG1pdCBkZW4gcmljaHRpZ2VuIGFsaWFzc2VuIGhvZWhvZWg7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzb3NvIChCb2luZywgMTIuIE1hciAyMDAxLCAxMToyMjozNik6Cn4jISBvbj1Ta3kgb3Q9OTg0MTQ5Mzc4IG9nPXdpdHplCn4jISBybj1QdWsgcnQ9OTg0MDgxOTE3IHJnPXdpdHplCn4jISB0aWQ9OTgzOTc3NjM5CgpIaSBQdWssCndhcyBzb2xsIG1pciBkZWluZSBob2NoZ3JlaWZlbmRlIEF1c3NhZ2UgZGVubiB2ZXJtaXR0ZWxuPwpIYXN0IGR1IGVpbiBQcm9ibGVtIG1pdCBhbGxlbiBMZXV0ZW4gZGllIHNpY2ggdWViZXIgIlVsbSIKZWlubG9nZ2VuPyBPZGVyIGJpc3QgRHUgUmFzc2lzdCB1bmQgbWFnc3QgZ2VuZXJlbGwga2VpbmUKVWxtZXI/IE9kZXIgc2NobGllc3N0IER1IHZvbiBkZXIgQXVzc2FnZSBlaW5lcyB1ZWJlciBVbG0KZWluZ2Vsb2dndGVuIFNwaWVsY2hhcmFrdGVycyBhdXRvbWF0aXNjaCBhdWYgYWxsZSBhbmRlcmVuPwpPZGVyIHdhciBlcyBlaW5mYWNoIG51ciBkZXIgV2lsbGUgaGllciB6dSBlaW5lbSBBcnRpa2VsCmVpbmUsIGluIGRlaW5lbiBBdWdlbiB3b2hsIGdlaXN0cmVpY2hlLCBCZW1lcmt1bmcgYWJ6dS0KZ2ViZW4/CgpTa3ksIGltbWVyIHVlYmVyIFVsbSBlaW5nZWxvZ2d0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthbXBmendlcmdlIChHcmltbWJvcm4sIDEyLiBNYXIgMjAwMSwgMTc6MjE6NDMpOgp+IyEgcm49U29sbXlyIHJ0PTk4NDQxMjk0OCByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTk4NDQxMjk0OApTdWNoIGhhbHQgaW0gTmV0eiBuYWNoICJHcmVnb3IgR3lzaSIuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLYW1wZnp3ZXJnZSAoU29sbXlyLCAxMi4gTWFyIDIwMDEsIDE3OjI0OjE5KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODQ0MTQxMDMgcmc9c2NobWFycm4KfiMhIHRpZD05ODQ0MTI5NDgKR2lidHMgZGEgbmljaHQgbmUgU0YgU2VyaWUgbmFtZW5zICdSZWQgRHdhcmYnID8gOikKClNvbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1VRERFUiAoU2lsdmFuYSwgMTIuIE1hciAyMDAxLCAxNzozMDo0Nik6CkR1IHdlaXNzdCwgZGFzcyBEdSB6dXZpZWwgbXVkZGVzdCwgd2Vubi4uDQoNCjEwKSAuLi4gRHUgUkwtR2VzY2hhZWZ0c2JyaWVmZSBtaXQgRGVpbmVtIE11ZC1OYW1lbiB1bnRlcnplaWNobmVzdC4NCg0KOSkgLi4uIER1IGJlaW0gVmVybGFzc2VuIGRlciBXb2hudW5nIGRlbmt0c3QgLiBvIE8gKG9lZmZuZSB0dWVyLCByYXVzLA0KICAgc2NobGllc3NlIHR1ZXIsIHNjaGxpZXNzZSB0dWVyIGFiKQ0KDQo4KSAuLi4gRHUgYmVpbSBWZXJsYXNzZW4gZGVyIEtuZWlwZSBkZW4gV2lydCBtZXVjaGVsc3QsIHdlbm4gZXIgR2VsZA0KICAgaGFiZW4gd2lsbCB1bmQgZGVua3N0IC4gbyBPIChSb2NodXMgdW5kIHNlaW5lIFJhZXViZXIgd2llZGVyLi4uKQ0KDQo3KSAuLi4gRHUgRGVpbmUgZ2VzcHJvY2hlbmVuIFNhZXR6ZSBtaXQgInNhZy4uLiIgYmVnaW5uc3QNCg0KNikgLi4uIER1IGF1ZiBEZWluIEZyZXVuZHNjaGFmdHNiYW5kIHNjaGF1c3QsIHVtIHp1IHNlaGVuLCBvYiBqZW1hbmQNCiAgIGludGVyZXNzYW50ZXMgZGEgaXN0LCBlcnNjaHJpY2tzdCwgd2VpbCBEdSBrZWluZXMgaGFzdCB1bmQgbnVyDQogICBrbmFwcCBkZW0gU3VpemlkIGVudGdlaHN0Lg0KDQo1KSAuLi4gRHUgZ2FyIGtlaW5lIFJMLUdlc2NoYWVmdGUgbWVociBoYXN0LCBEaXIgYWxzbyAxMCkgbmljaHQgbWVocg0KICAgcGFzc2llcmVuIGthbm4uDQoNCjQpIC4uLiBEdSBkaWUgV29obnVuZyBlaCBuaWNodCBtZWhyIHZlcmxhZXNzdC4NCg0KMykgLi4uIER1IGRlbiBQaXp6YWJvdGVuIGFucnVmc3QgdW5kICJuYWNoIFBpenphIiBmcmFnc3Q7IHVuZCB3ZW5uDQogICBkaWUgUGl6emEga29tbXQsIGVudHRhZXVzY2h0IGJpc3QsIHdlaWwgZGVyIEtuaWxjaCBiZXN0aW1tdCBuaWNodA0KICAgc3R1cHN0Lg0KDQoyKSAuLi4gRHUgRGljaCBuaWNodCBtZWhyIGRhcmFuIGVyaW5uZXJuIGthbm5zdCwgUkwgZ2VzcHJvY2hlbiB6dQ0KICAgaGFiZW4uDQoNCjEpIC4uLiBEdSBuYWNoIExla3R1ZXJlIGRpZXNlcyBBcnRpa2VscyB3aXJrbGljaCBiZXVucnVoaWd0IGJpc3QuLi4NCg0KDQpTaWx2YW5hDQpQUzogVW5kIG51biBkdWVyZnQgaWhyIHJhdGVuLCB3ZWxjaGUgUHVua3RlIGRhYmVpIGF1dG9iaW9ncmFwaGlzY2ggaW5zcGlyaWVydApzaW5kLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdWVyIGFsbGUgU29ubnRhZ3NTdXJmZXIgOikgKFNvbG15ciwgMTIuIE1hciAyMDAxLCAxNzozMTozMCk6Ck1hbCBkYSBzY2hhdW46IGh0dHA6Ly93d3cubXJkYXRhLmRlL21lcnMvZ2FsZXJpZS9nYWxlcmllMi5waHAzCklzdCBkb2NoIHp1bSB2ZXJydWVja3Qgd2VyZGVuLCB3ZW5uIG1hbiBhdWYgZGVyIFN1Y2hlIG5hY2ggZ3V0ZW4KQmlsZGVybiBpc3Q6ClppdGF0IDogQXVzIEdydWVuZGVuIGRlciBUcmFmaWNyZWR1emllcnVuZyBpc3QgZGllIEZhbnRhc3ktR2FsZXJpZQplcnN0bWFsIG51ciBub2NoIFNvbm50YWdzIHZlcmZ1ZWdiYXIgIQoKU29sKiwgcm90ZmxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1VRERFUiAoQ2lzb3UsIDEyLiBNYXIgMjAwMSwgMTc6MzQ6NDIpOgp+IyEgcm49U2lsdmFuYSBydD05ODQ0MTQ2NDYgcmc9c2NobWFycm4KfiMhIHRpZD05ODQ0MTQ2NDYKCk1pbmRlc3RlbnMgKCEhISkgZWluZW4gUHVua3QgaGFzdCBEdSBkYSBhYmVyIHVudGVyc2NobGFnZW4gOykuCgpXZW5uIER1IGFuZmFlbmdzdCwgbmFjaHRzIHVtIDMgUmFnZSBtaXQgRGlyIHNlbGJzdCB6dSBzcGllbGVuLCB3ZWlsIHNvbnN0Cm5pZW1hbmQgbWVociBkYXp1IGluIGRlciBMYWdlIGlzdCA7KS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNVURERVIgKEhpZ2h0LCAxMi4gTWFyIDIwMDEsIDE5OjI2OjA5KToKfiMhIHJuPVNpbHZhbmEgcnQ9OTg0NDE0NjQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg0NDE0NjQ2CjEgYmlzIDEwID8hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYWJ0IGlociBzaWUgbm9jaCBhbGxlPyAoTW9yZ290aCwgMTMuIE1hciAyMDAxLCAwMDoyNDoxNCk6ClVlYmVyZ2VoZSBBcnRpa2VsIDU1IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDU2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDU3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDU4IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDU5IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDYwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDYxIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDYyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDYzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDY0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDY1IHZvbiBGYW50YWdoaXJvIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNjYgdm9uIEZhbnRhZ2hpcm8gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA2NyB2b24gRmFudGFnaGlybyBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBBcnRpa2VsIDY4IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDY5IHZvbiBGYW50YWdoaXJvIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIEFydGlrZWwgNzAgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNzEgdm9uIEZhbnRhZ2hpcm8gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA3MiB2b24gRmFudGFnaGlybyBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBBcnRpa2VsIDczIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDc0IHZvbiBGYW50YWdoaXJvIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNzUgdm9uIEZhbnRhZ2hpcm8gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA3NiB2b24gRmFudGFnaGlybyBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBBcnRpa2VsIDc3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDc4IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDc5IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDgwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDgxIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDgyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDgzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDg0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDg1IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDg2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDg3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDg4IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDg5IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDkwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDkxIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDkyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDkzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDk0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDk1IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDk2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDk3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDk4IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDk5IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDEwMCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxMDEgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTAyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDEwMyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxMDQgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTA1IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDEwNiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxMDcgdm9uIEZhbnRhZ2hpcm8gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgQXJ0aWtlbCAxMDggYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMTA5IHZvbiBGYW50YWdoaXJvIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIEFydGlrZWwgMTEwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDExMSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxMTIgdm9uIEZhbnRhZ2hpcm8gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgQXJ0aWtlbCAxMTMgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTE0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDExNSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxMTYgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTE3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDExOCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxMTkgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTIwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDEyMSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxMjIgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTIzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDEyNCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxMjUgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTI2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDEyOCB2b24gU29sbXlyIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIEFydGlrZWwgMTMyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDEzMyB2b24gRmFudGFnaGlybyBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBBcnRpa2VsIDEzNCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxMzUgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMTM2IHZvbiBGYW50YWdoaXJvIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIEFydGlrZWwgMTM3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDEzOCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxMzkgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTQwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE0MSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxNDIgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTQzIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE0NSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxNDYgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMTQ3IHZvbiBGYW50YWdoaXJvIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIEFydGlrZWwgMTQ4IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE0OSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxNTAgdm9uIEZhbnRhZ2hpcm8gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgQXJ0aWtlbCAxNTEgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTUyIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDE1MyB2b24gRmFudGFnaGlybyBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBBcnRpa2VsIDE1NCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxNTUgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMTU2IHZvbiBGYW50YWdoaXJvIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIEFydGlrZWwgMTU3IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE1OCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxNTkgdm9uIEZhbnRhZ2hpcm8gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgQXJ0aWtlbCAxNjAgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTYxIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE2MiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxNjMgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTY0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDE2NSB2b24gRmFudGFnaGlybyBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBBcnRpa2VsIDE2NiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxNjcgdm9uIEZhbnRhZ2hpcm8gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgQXJ0aWtlbCAxNjggYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTY5IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE3MCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxNzEgdm9uIEZhbnRhZ2hpcm8gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgQXJ0aWtlbCAxNzIgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTczIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDE3NCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxNzUgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTc2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQ0IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQ1IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDQ2IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDIyIHZvbiBTb2xteXIgaW4gUnVicmlrIHN1Y2hlLWJpZXRlLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIYWJ0IGlociBzaWUgbm9jaCBhbGxlPyAoTWVuYWNlLCAxMy4gTWFyIDIwMDEsIDAwOjI3OjE1KToKfiMhIHJuPU1vcmdvdGggcnQ9OTg0NDM5NDU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg0NDM5NDU0CnNlaSBkb2NoIGZyb2gsIHNvIGhhc3RlIGRpZSBNUEEgaW4gTnVsbGtvbW1hbml4IGR1cmNoISA7bykKCk1lbmFjZSAqYWVobmxpY2ggc2NobmVsbCBsZXNlbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45MDU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE11cGZlbCwgMTMuIE1hciAyMDAxLCAwMDoyODoxOSk6Cn4jISBybj1Eb29kbGUgcnQ9OTg0NDI5Njc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkVpbmUgS3VoIG11aHQ6IE11dXVoLCBtdXV1dXVoLCBtdXV1dXV1dXV1dXV1dXV1dXV1dXVoICEhCkZlcm4gYW0gSGltbWVsIHRhdWNodCBlaW4gUHVua3QgYXVmLgpMZWlzZSB2ZXJuaW1tc3QgRHUgdm9uIHdlaXQgb2JlbiBhbSBIaW1tZWw6IE1VVVVVVVVVVVVISEhISApFaW5lIEt1aCBmbGllZ3QgbWl0IHJhc2VuZGVyIEdlc2Nod2luZGlna2VpdCBoZXJhbi4KIHZ2ICAgIHZ2CiB8fC0tLS18fCAgICoKIHx8ICAgICB8ICAvCiAvLS0tLS0tLS8KKG9vKQoofn4pCk1pdCBlaW5lbSBkdW1wZmVuIEtsYXRzY2hlbiB6ZXJtYWxtdCBkaWUgS3VoIGRlbiBTdWVuZGVyIHVudGVyIHNpY2guCkVsYmVyZXQgcnVmdDogTVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUhISEhISEhISEhISEhISEhISEhISEhICltUb2Q6TGFyc10gRWluIEthbWVsIGhhdCBnZXJhZGUgV3lybmV5IHVtZ2VicmFjaHQuCgpLbmFwcCBkYW5lYmVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGFidCBpaHIgc2llIG5vY2ggYWxsZT8gKFNvbG15ciwgMTMuIE1hciAyMDAxLCAwMToyNDozMyk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTk4NDQzOTQ1NCByZz1zY2htYXJybgp+IyEgdGlkPTk4NDQzOTQ1NApEYXMgaWNoIGRlbiBrcm9lbmVuZGVuIEFic2NobHVzcyBEZWluZXMgQXJ0aWtlbHMgYmlldGUsIGlzdCBuaWNodCBuZXR0IDopCkRhcyB2ZXJ6ZXJydCBkb2NoIGRhcyBnYW56ZSBCaWxkLi4uCgpTb2wqLCByb3RmbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFtYXJ5bGxpcywgMTMuIE1hciAyMDAxLCAwMToyNzoyOSk6CkRlaW4gRnJldW5kIE11cGZlbCB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4KRWluIEJvdGUga29tbXQgaGVyZWluZ2VoYXN0ZXQgdW5kIHBsYXBwZXJ0IHZvZWxsaWcgYXVzc2VyIEF0ZW0gbG9zIDoKJ1NjaGJlbGxmYWlhIGhhdCBkaWUgZ3Jvc3NlbiBHbGFkaWF0b3JlbiB6dW0gS2FtcGYgaGVyYXVzZ2Vmb3JkZXJ0IQpHZWh0IHNjaG5lbGwgaW4gZGllIFd1ZXN0ZSB6dXIgZ3Jvc3NlbiBLYW1wZmFyZW5hIHVuZCBsYXNzdCBFdWNoCmRpZXNlcyBTY2hhdXNwaWVsIG5pY2h0IGVudGdlaGVuIScKRGFuYWNoIGhhc3RldCBlciBzY2huZWxsIHdlaXRlci4KW0FsbGdlbWVpbjpHYWxicmFpdGhdIGdvLCBzY2hiZWxsaSwgZ28gOz0pKQpbQWxsZ2VtZWluOlNjaGJlbGxmYWlhXSA6PgouLi4KW1RvZDpMYXJzXSBKb2hhbm5hIHZvbiBPcmxlYW5zIGhhdCBnZXJhZGUgU2NoYmVsbGZhaWEgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIYWJ0IGlociBzaWUgbm9jaCBhbGxlPyAoVmFuaW9uLCAxMy4gTWFyIDIwMDEsIDA2OjE5OjI5KToKfiMhIHJuPU1vcmdvdGggcnQ9OTg0NDM5NDU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg0NDM5NDU0CkhtbXBmLCAKCm1laW4gJ25uJyBzaWVodCBhZWhubGljaCBhdXMsIGVzIGRhbm4gYWJlciBub2NobWFsIGFscyBBcnRpa2VsIGdlemVpZ3QgenUKYmVrb21tZW4gaXMgcmVpY2hsaWNoIGh5cGVyZmx1aWQgKmcqCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIYWJ0IGlociBzaWUgbm9jaCBhbGxlPyAoQW5hY3Jpb24sIDEzLiBNYXIgMjAwMSwgMDY6MjI6MjcpOgp+IyEgcm49VmFuaW9uIHJ0PTk4NDQ2MDc2OSByZz1zY2htYXJybgp+IyEgdGlkPTk4NDQzOTQ1NApKYS4gSGFiIGt1cnogdm9yIG5lbSBpZ25vcmllcmUgbW9yZ290aC5uZXdzIGdlc3RhbmRlbi4KCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGFidCBpaHIgc2llIG5vY2ggYWxsZT8gKExpYXJhLCAxMy4gTWFyIDIwMDEsIDA4OjM2OjExKToKfiMhIHJuPU1vcmdvdGggcnQ9OTg0NDM5NDU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg0NDM5NDU0CkFiZXIgRHUgbXVzc3QgZGVuIGdhbnplbiBTY2hlaXNzIG5hdHVlcmxpY2ggbm9jaG1hbCBpbiBkaWUgTVBBIHNjaHJlaWJlbiAuLi4KbWFjaHQncyBkYXMgdmllbGxlaWNodCBiZXNzZXI/Pz8KCkxaLCBub2NoIG1laHIgZ2VuZXJ2dAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhhYnQgaWhyIHNpZSBub2NoIGFsbGU/IChBcG9sbG9uaWEsIDEzLiBNYXIgMjAwMSwgMDg6NDg6MjMpOgp+IyEgcm49TW9yZ290aCBydD05ODQ0Mzk0NTQgcmc9c2NobWFycm4KfiMhIHRpZD05ODQ0Mzk0NTQKRGllIEZyYWdlIGVydWVicmlndCBzaWNoLCBNKi4gV2lyIHNpbmQgZG9jaCBNdWRkZXIgO28pCgpBcG8qIChiZWkgZGVyJ3MgamVkZW4gVGFnIGdhbnogYWVobmxpY2ggc2Nyb2xsdCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGFidCBpaHIgc2llIG5vY2ggYWxsZT8gKFNpbHZhbmEsIDEzLiBNYXIgMjAwMSwgMTA6NTQ6MjMpOgp+IyEgcm49VmFuaW9uIHJ0PTk4NDQ2MDc2OSByZz1zY2htYXJybgp+IyEgdGlkPTk4NDQzOTQ1NApKbywgaWNoIGhhYiBpY2ggYXVjaCB1ZWJlciBkYXMgClJ1YnJpayA1ODogc2NobWFycm4sIEFydGlrZWw6IDE3NyB2b24gMTg2CkhhYnQgaWhyIHNpZSBub2NoIGFsbGU/IChNb3Jnb3RoLCAxMy4gTWFyIDIwMDEsIDAwOjI0OjE0KToKbWl0dGVuIGltIHNjcm9sbCBnZXd1bmRlcnQuIDstKQoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGFidCBpaHIgc2llIG5vY2ggYWxsZT8gKEFwc3UsIDE0LiBNYXIgMjAwMSwgMTA6MTI6NDYpOgp+IyEgcm49TW9yZ290aCBydD05ODQ0Mzk0NTQgcmc9c2NobWFycm4KfiMhIHRpZD05ODQ0Mzk0NTQKQmVpIG1pciBzaWVodHMgbmV0IGJlc3NlciBhdXMsIG11c3N0IER1IERlaW4gR2VzY3JvbGxlIGF1Y2ggbm9jaCBwb3N0ZW4sIHNvCmRhc3MgaWNoIG1laW4gVU5EIERlaW4gR2VzY3JvbGxlIGVydHJhZ2VuIG11c3MgPyA7LSkKCkFwc3UgbHV0IGFldHplbmQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBTZWhlcmhhZXVzZXIgKExpYXJhLCAxNC4gTWFyIDIwMDEsIDEzOjI4OjE2KToKfiMhIHJuPUdsb2luc29uIHJ0PTk4NDU3MDgzOCByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTk4Mzk5NzEwNwpXZXJkZXQgaGFsdCBhbGxlIFphdWJpcywgZGFubiBzZWlkIElociBpbW1lciBwbGVpdGUgdW5kIG11ZXNzdCBhbGxlcwp2ZXJzZXR6ZW4uIDstKQoKTFosIG5pY2h0IGdhbnogZXJuc3QgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogU2VoZXJoYWV1c2VyIChMaWFyYSwgMTQuIE1hciAyMDAxLCAxMzozMDoyNCk6Cn4jISBybj1KYW5pc2EgcnQ9OTg0NTcyOTcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgzOTk3MTA3Ck5lZSwgZGllIGdlYnJvY2hlbmVuIEtvZXJwZXJ0ZWlsZSBoYWJlbiBuYXR1ZXJsaWNoIGRpZSBBbmRlcmVuLiA7LSkKCkxaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogU2VoZXJoYWV1c2VyIChEYXJpYSwgMTQuIE1hciAyMDAxLCAxMzozMTowNCk6Cn4jISBybj1MaWFyYSBydD05ODQ1NzMwMjQgcmc9c2NobWFycm4KfiMhIHRpZD05ODM5OTcxMDcKSG0uLi4gZ2Vicm9jaGVuIG9kZXIgYWJnZWJyb2NoZW4/CgpEYXJpYSBkZW5rdCBncmFkIGFuIHp1Y2tlbmRlIEhhZW5kZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHJvbGxpIGlzdCB3aWUgaW1tZXIgdW5wYXNzZW5kLi4uLiAoU3dvdGwsIDE0LiBNYXIgMjAwMSwgMjM6MTE6MTUpOgpCYWJ5bW9uc3RlciBrcmFlY2h6dDoga3Jyb29hYSAuLi4gTmlnaHRzIGluIHdoaXRlIHNhdGluIG5ldmVyIHJlYWNoaW5nIHRoZQpCYWJ5bW9uc3RlciBrcmFlY2h6dDogZW5kIC4uLiBMZXR0ZXJzIEkndmUgd3JpdHRlbiBuZXZlciBtZWFuaW5nIHRvIHNlbmQgLi4uCkJhYnltb25zdGVyIGtyYWVjaHp0OiBCZWF1dHkgSSdkIGFsd2F5cyBtaXNzZWQgd2l0aCB0aGVzZSBleWVzIGJlZm9yZSAuLi4KQmFieW1vbnN0ZXIga3JhZWNoenQ6IEp1c3Qgd2hhdCB0aGUgdHJ1dGggaXMgSSBjYW4ndCBzYXkgYW55IG1vcmUgLi4uIENhdXNlCkJhYnltb25zdGVyIGtyYWVjaHp0OiBJIGxvdmUgeW91IC4uLiBZZXMgSSBsb3ZlIHlvdSAuLi4gT2ggaG93IEkgbG92ZSB5b3UKQmFieW1vbnN0ZXIga3JhZWNoenQ6IC4uLiBHYXppbmcgYXQgcGVvcGxlIHNvbWUgaGFuZCBpbiBoYW5kIC4uLiBKdXN0IHdoYXQKQmFieW1vbnN0ZXIga3JhZWNoenQ6IEknbSBnb2luZyB0aHJvdWdoIHRoZXkgY2FuJ3QgdW5kZXJzdGFuZCAuLi4gU29tZSB0cnkKQmFieW1vbnN0ZXIga3JhZWNoenQ6IHRvIHRlbGwgbWUgdGhvdWdodHMgdGhleSBjYW5ub3QgZGVmZW5kIC4uLiBKdXN0IHdoYXQKQmFieW1vbnN0ZXIga3JhZWNoenQ6IHlvdSB3YW50IHRvIGJlIHlvdSdsbCBiZSBpbiB0aGUgZW5kIC4uLiBBbmQgSSBsb3ZlIHlvdQpCYWJ5bW9uc3RlciBrcmFlY2h6dDogLi4uIFllcyBJIGxvdmUgeW91IC4uLiBPaCBob3cgSSBsb3ZlIHlvdSwgb2guIE5pZ2h0cwpCYWJ5bW9uc3RlciBrcmFlY2h6dDogSW4gV2hpdGUgU2F0aW46IE1vb2R5IEJsdWVzLiAKW0FsbGdlbWVpbjpEcm9sbGldIEhPU1NBIEhPU1NBIEhPU1NBCgpQUzogQmFieW1vbnN0ZXIgaXN0IG1laW4genV2b3IgYW4gTGlhcmEgZW50bGllaGVuZXIgUGFwYWdlaS4uCgpTd290bCBTdXJnZW5zc29uLCBUcm9sbC1TbGF5ZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbGJpIGVpbiBQcm9waGV0PyEgKFZhcmxhcmlvbiwgMTQuIE1hciAyMDAxLCAyMzo1NToxMSk6CkRlaW4gRnJldW5kIEVsYmVyZXQgcnVmdDogRXVjaCBoYXQgZGVyIGhlaWxpZ2UgR2Vpc3QgdmVybGFzc2VuICEgYXVzIGRlcgpGZXJuZS4KVGlhbWFrICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKVmFybCosIHd1bmRlcnQgc2ljaCB1ZWJlciBkaWUgS3JhZnQgZGVzIE11aC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi0+IEJla2FubnRtYWNodW5nISAoTGluZmxhcywgMTUuIE1hciAyMDAxLCAwMjoyNzowMyk6CkxpZWJlciBQQy1CZW51dHplciwKYmVpIGVpbmVyIFJvdXRpbmV1bnRlcnN1Y2h1bmcgZmllbCBhdWYsIGRhc3MgYmVpIHZpZWxlbiBQQ3MgaW1tZXIgbm9jaCBkaWUKRHVlc3NlbGRvcmZlciBUYXN0YXR1ciBpbiBCZW51dHp1bmcgaXN0LgpEaWVzIGlzdCB1bnZlcnp1ZWdsaWNoIHp1IGFlbmRlcm4uCkJpdHRlIGVudGZlcm5lbiBTaWUgZGllIFRhc3RlICJBbHQiIHVtZ2VoZW5kLiBEZXIgRWluemVsaGFuZGVsIHdpcmQgaW4gS3VlcnplCmVpbmUgVGFzdGUgIktvZWxzY2giIHp1ciBWZXJmdWVndW5nIHN0ZWxsZW4uCiJBbHQgR3IiLiBEaWVzZSBpc3QgZ2VnZW4gIktvZWxzY2ggMCw0IGwiIGF1c3p1dGF1c2NoZW4uCgpMaW5mbGFzLCBwcm9zdGV0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZXJ6Z2ViaXJnZSBpc3QgZHJ1ZWJlbiEgKEpvaG5ueWJvc3MsIDE1LiBNYXIgMjAwMSwgMTM6NTE6NTIpOgplcnpnZWJpcmdlIGlzdCBkcnVlYmVuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlY2h0c2NocmVpYnVuayAoR3JpbW1ib3JuLCAxNS4gTWFyIDIwMDEsIDE1OjE0OjUzKToKfiMhIG9uPUhpZ2h0IG90PTk4NDY2NTU3MiBvZz13aXR6ZQp+IyEgcm49QW1hcnlsbGlzIHJ0PTk4NDYxMjk3NyByZz13aXR6ZQp+IyEgdGlkPTk4NDYxMjk3NwpUSVA6CgpsaWVzIG1hbCBkYXMgd2FzIGljaCBzbyB2b24gbWlyIGdlYmUgLG8pIAoKCmhpZ2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlY2h0c2NocmVpYnVuayAoR3Jvc2NoLCAxNS4gTWFyIDIwMDEsIDE1OjE1OjM3KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODQ2NjU2OTMgcmc9c2NobWFycm4KfiMhIHRpZD05ODQ2MTI5NzcKSWNoIGhhYmUgaW4gbWVpbmVtIHNjaGxhZiB3YXMgYmVzc2VyZXMgenUgdHVuIDopCgpHcm9zY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGVpbmUgQWVuZGVydW5nIChab29rLCAxNS4gTWFyIDIwMDEsIDE2OjEyOjAxKToKfiMhIHJuPUJvaW5nIHJ0PTk4NDU1MzEyOCByZz1naWxkZW4uYWJlbnRldXJlcgp+IyEgdGlkPTk4NDU1MzEyOApVbmQgd2FzIG1hY2hlIGljaCBudW4gbWl0IG1laW5lbiBBbGlzIDEgdW5kIDM/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLbGVpbmUgQWVuZGVydW5nIChTb2xteXIsIDE1LiBNYXIgMjAwMSwgMTY6MTg6NDEpOgp+IyEgcm49Wm9vayBydD05ODQ2NjkxMjEgcmc9c2NobWFycm4KfiMhIHRpZD05ODQ1NTMxMjgKTG9lc2NoZW4/CgpTb2wqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTdGFtbXRpc2NoIEthcmxzcnVoZSAoR3Jvc2NoLCAxNS4gTWFyIDIwMDEsIDIwOjEzOjQ2KToKfiMhIG9uPUdyb3NjaCBvdD05ODQ2ODM1NTcgb2c9dHJlZmZlbgp+IyEgcm49TW9udGFudXMgcnQ9OTg0NjgzNDc3IHJnPXRyZWZmZW4KfiMhIHRpZD05ODQ2NzMwMzgKLCwKZ3Jvc2NoIG5vY2ggMiwgbWVocgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVyaW5uZXJ1bmcgKEFtYXJ5bGxpcywgMTUuIE1hciAyMDAxLCAyMDo1NDozNyk6Cn4jISBybj1BcmsgcnQ9OTg0Njg2MDA1IHJnPXRyZWZmZW4KfiMhIHRpZD05ODQ2ODYwMDUKZGFzIHJlaWNodCwgb2ggamEuCgpBbWEqLCB3b2xsdGUgamEgZWlnZW50bGljaCBrb21tZW4sIGhhdCBzaWNoIGRhbm4gYWJlciB2b24gZGVyIEdlc2NoaWNodGUgZG9jaAphYnNjaHJlY2tlbiBsYXNzZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLiBBdWZsYWdlbnN0YWVya3VuZyAuLi4gKEdsb2luc29uLCAxNi4gTWFyIDIwMDEsIDA5OjUxOjExKToKUnVicmlrIEtsZWluYW56ZWlnZW46CgogVGF1c2NoZSBPYmVybW90eiBnZWdlbiBLb21wb25lbnRlbi4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp1ZmFsbCAoTGluZmxhcywgMTYuIE1hciAyMDAxLCAxMzozOTozOSk6ClVuZ2VzY2huaXR0ZW46CgpKdWxlIHRyaXR0IGF1cyBlaW5lciBTY2h3ZWZlbHdvbGtlLgpbVG9kOkxhcnNdIEVpbmUgZ2VmYWVocmxpY2hlIFN0cmFobHVuZyBoYXQgZ2VyYWRlIEdhcmdvbGQgdW1nZWJyYWNodC4KW1RvZDpFaW5lIGdlZmFlaHJsaWNoZSBTdHJhaGx1bmddIFNjaG9uIG1hbCB1ZWJlciBlbnRzcHJlY2hlbmRlbiBTY2h1dHoKW1RvZDpFaW5lIGdlZmFlaHJsaWNoZSBTdHJhaGx1bmddIG5hY2hnZWRhY2h0PwoKTGluZmxhcyBkZW5rdCBlaW5mYWNoIG5pY2h0IG1laHIgZHJ1ZWJlciBuYWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS2lub0BCb25uPyAoTGlhcmEsIDE2LiBNYXIgMjAwMSwgMTg6MjY6MzIpOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTg0NzYzNDkwIHJnPXRyZWZmZW4KfiMhIHRpZD05ODQ0ODgyNTEKRHUgYmlzdCB0b2xsLCBBbmFjKi4gKmcqCldhcyBhdWNoIGltbWVyIGRhcyBpc3QuIDstKQoKTFoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEtpbm9AQm9ubj8gKEFuYWNyaW9uLCAxNi4gTWFyIDIwMDEsIDE4OjI3OjIxKToKfiMhIHJuPUxpYXJhIHJ0PTk4NDc2MzU5MiByZz1zY2htYXJybgp+IyEgdGlkPTk4NDQ4ODI1MQpEYSBtYXFjaHQgbWFuIGVpbiBuZXR0ZXMgQW5nZWJvdCB1bmQgdmVyc3VjaHQsIGFuZGVyZW4gR2VsZCB6dSBzcGFyZW4gdW5kIGRhbm4Kc293YXMuCgpEYW5rZS4KCkFuYWMqIHNjaG1vbGx0CiwuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogS2lub0BCb25uPyAoTGlhcmEsIDE2LiBNYXIgMjAwMSwgMTg6Mjg6MTQpOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTg0NzYzNjQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg0NDg4MjUxCldhcyBoYXQgS2lubyBtaXQgR2VsZCBzcGFyZW4genUgdHVuPyA7LSkKU2FnIG1pciBsaWViZXIsIG9iIGRlciBGaWxtIHNpY2ggbG9obnQuICpncmlucyoKCkxaLCBtYWcgS2lub2F0bW9zcGhhZXJlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbW1lciBkaWVzZXMgU2NobWFyb3R6ZXJ0dW0gOikgKFNvbG15ciwgMTYuIE1hciAyMDAxLCAxODozMzowMik6ClhYWCBmcmFndCBBdWd1c3QgbmFjaCBSYWJhdHQuCkF1Z3VzdCBzYWd0OiBOdXIgU3RhbW1rdW5kZW4sIGRpZSB1bnMgc2Nob24gYnJhdWNoYmFyZSBJZGVlbiBnZWxpZWZlcnQgaGFiZW4sCkF1Z3VzdCBzYWd0OiBvZGVyIGRpZSB1bnMgYmVpbSBBdWZiYXUgZGVzIEdlc2NoYWVmdHMgZ2Vob2xmZW4gaGFiZW4sIGdld2FlaHJlbgpBdWd1c3Qgc2FndDogd2lyIFJhYmF0dC4KWFhYIGZyYWd0IEF1Z3VzdCBuYWNoIFN0YW1ta3VuZGVuLgpBdWd1c3Qgc2FndDogRWluaWdlIGtvbW1lbiBvZWZ0ZXIgdm9yYmVpLgpYWFggZnJhZ3QgQXVndXN0IG5hY2ggQW5nZWJvdC4KQXVndXN0IHNjaGF1dCBYWFggZnJhZ2VuZCBhbi4KClNvbCosIG1hbCBqdWdlbmRmcmVpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuYSEgKExpbmZsYXMsIDE2LiBNYXIgMjAwMSwgMTk6NTY6MDkpOgpVbSBqZWdsaWNoZW4gYW5kZXJzbGF1dGVuZGVuIEdlcnVlY2h0ZW4gdm9yenViZXVnZW46CgpMaW5mbGFzLCB3aWxsIEt1aGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbmEhIChab29rLCAxNi4gTWFyIDIwMDEsIDIzOjA2OjQ2KToKfiMhIHJuPUxpbmZsYXMgcnQ9OTg0NzY4OTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg0NzY4OTY5Clpvb2sgenVlY2h0ZXQgYmVyZWl0cy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzMDc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAxNy4gTWFyIDIwMDEsIDAxOjE2OjEwKToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTg0NzY2MjEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmFsc28gd2VubiBBbmF0b2wgc2FtdCBGYW1pbGllIGF1ZiBUZW5lcmlmZmEgaXN0LCBzb2xsdGUgZWluZXIgdW5zZXJlcgpIaWxmc2xvZXNjaGVyIHVuZCBiYWNrdXBNYWNoZXIgYXVjaCBhYiB1bmQgenUgbWFsIGVpbiBha3R1ZWxsZXMKQW5hdG8tU2NobWFycm4tTWV0ZXIgcG9zdGVuLiAKV2VubiB1ZWJyaWdlbnMgaXJnZW5kamVtYW5kIEludGVyZXNzZSBoYXQ6IGljaCBoYWIgYXVjaCBub2NoIG9obmUgRW5kZQpWYW1waXJlL0p5aGFkLUthcnRlbiBoaWVyIGhlcnVtZmxpZWdlbi4uLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdlZmx1ZWdlbHNhbGF0ID8gKEltZGEsIDE3LiBNYXIgMjAwMSwgMDM6MTc6MzYpOgpbTW9lcmRlcjpHZWlzdCBlaW5lciBFbnRlXSBIYWV0dGVuIHdpciBkYXMgbmljaHQgYXVzZGlza3V0aWVyZW4ga29lbm5lbiwKW01vZXJkZXI6R2Vpc3QgZWluZXIgRW50ZV0gRm9vYmFyPwpbTW9lcmRlcjpHZWlzdCBlaW5lciBXYWNodGVsXSBIdWNoLCBpY2ggYmluIGphIHNjaG9uIHdpZWRlciBhdWYgLU1vZXJkZXIhCltNb2VyZGVyOkdlaXN0IGVpbmVyIEdhbnNdIERhcyBzYWcgaWNoIGFsbGVzIEJvaW5nLCBGb29iYXIhCltNb2VyZGVyOkdlaXN0IGVpbmVzIFRydXRoYWhuc10gRm9vYmFyLCBEdSBNb25zdGVyc2NoYWVuZGVyIQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBIdWhuc10gTmllbWFuZCEgTmllbWFuZCBuZW5udCBtaWNoIGVpbmUgZmVpZ2UgU2F1LApbTW9lcmRlcjpHZWlzdCBlaW5lcyBIdWhuc10gRm9vYmFyISAgICAKCkltZGEuIGh1bmdyaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW5nZXNjaG5pdHRlbiAoRHJhY2hubywgMTcuIE1hciAyMDAxLCAxMDo0MToyMik6CkRlaW4gRnJldW5kIE5va2kgdmlicmllcnQgenVyIEFyYmVpdC4gQnJ1bW1lbiBhdXMgZGVyIEZlcm5lLgpEZWluIEZyZXVuZCBOb2tpIHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1LgpFaW5lIEt1dHNjaGUgZG9ubmVydCB2b3JiZWkuCgpEYXMgd2FyIGVyIGRhbm4gd29obC4uLgoKRHJhY2hubyAtIGhpbnRlcmhlciBzY2hhdWVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChab29rLCAxOC4gTWFyIDIwMDEsIDAwOjE0OjIxKToKW0FiZW50ZXVlcjpJbWRhXSAzCltBYmVudGV1ZXI6SW1kYV0gMgpbQWJlbnRldWVyOkltZGFdIDEKW1RvZDpMYXJzXSBFaW4gZGlja2VyIEFzdCBoYXQgZ2VyYWRlIEltZGEgdW1nZWJyYWNodC4KW1RvZDpFaW4gZGlja2VyIEFzdF0gSW1kYXMgR2VuaWNrIGlzdCBmYXN0IHZvbiBhbGxlaW5lIGdlYnJvY2hlbiEKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjgxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNdXBmZWwsIDE4LiBNYXIgMjAwMSwgMDI6Mjk6MzEpOgp+IyEgcm49SmFuaXNhIHJ0PTk4NDc0NDkwMyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAppc3QgZGFzIG5pY2h0IGRpZXNlIHBldGVyIGFsZXhhbmRlciB2ZXJhcnNjaHVuZz8gdm9uIGlyZ2VuZHNvbSBrYWJhcmV0dGlzdGVuCmV2ZW50dWVsbCBzdGVmYW4gd2FsZD8KCi1tdXBmZWwtIChoYXQgZGEgd2FzIGltIG9ociA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFp1ZmFsbCAoQXBvbGxvbmlhLCAxOC4gTWFyIDIwMDEsIDE3OjAwOjMwKToKfiMhIHJuPUxpbmZsYXMgcnQ9OTg0NzQ2Mzc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg0NzQ2Mzc5CldhcyBoYXQgbmUgU2Nod2VmZWx3b2xrZSBtaXQgZ2VmYWVocmxpY2hlciBTdHJhaGx1bmcgenUgdHVuPz8/IEp1bmdlLCBEdSBtdXNzdApuaWNodCBudXIgVkwgbm9jaCB2aWVsIGxlcm5lbi4uLgoKQXBvKgphdWdlbnJvbGxlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWnVmYWxsIChJbWRhLCAxOC4gTWFyIDIwMDEsIDE3OjIwOjQ0KToKfiMhIHJuPUFwb2xsb25pYSBydD05ODQ5MzEyMzAgcmc9c2NobWFycm4KfiMhIHRpZD05ODQ3NDYzNzkKV2llc28sIGRhcyBpcyBiZWlkZXMgYm9lc2UsIHVuZCBsaWVndCBhbiBkZW4gQXRvbWVuLCBvZGVyIGFuIGRlbiBHZW5lbiwgd2VpcwpuaWNoIHNvIGdlbmF1LiBBdWYgamVkZW4gRmFsbCBnZWhvZXJ0cyB2ZXJib3Rlbi4KCkltZGEuIEZ1ZXIgZGFzIGd1dGUsIGdlZ2VuIGRhcyBTY2hsZWNodGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPcmRvcyB1bmQgQWVyenRlLi4uIChTb2xteXIsIDE5LiBNYXIgMjAwMSwgMTg6NTA6MjApOgogW0FiZW50ZXVlcjpPcmRvc10gd28gZmluZGUgaWNoIGVpbmVuIGRva3Rvcj8gPDE4OjMyOjIwPgogW0FiZW50ZXVlcjpPcmRvc10gd28gZmluZGUgaWNoIGVpbmVuIGRva3Rvcj8gPDE4OjMzOjE0PgogW0FiZW50ZXVlcjpPcmRvc10gd28gZmluZGUgaWNoIGVpbmVuIGRva3Rvcj8gPDE4OjMzOjE2PgogW0FiZW50ZXVlcjpPcmRvc10gd28gZmluZGUgaWNoIGVpbmVuIGRva3Rvcj8gPDE4OjMzOjE2PgogW0FiZW50ZXVlcjpPcmRvc10gd28gZmluZGUgaWNoIGVpbmVuIGRva3Rvcj8gPDE4OjMzOjE2PgogW0FiZW50ZXVlcjpPcmRvc10gd28gZmluZGUgaWNoIGVpbmVuIGRva3Rvcj8gPDE4OjMzOjE2PgogW0FiZW50ZXVlcjpPcmRvc10gd28gZmluZGUgaWNoIGVpbmVuIGRva3Rvcj8gPDE4OjMzOjE2PgogW0FiZW50ZXVlcjpPcmRvc10gd28gZmluZGUgaWNoIGVpbmVuIGRva3Rvcj8gPDE4OjMzOjE4PgogW0FiZW50ZXVlcjpTb2xteXJdIEhleSwuLi4gPDE4OjMzOjIyPgogW0FiZW50ZXVlcjpBbG1kdWRsZXJdIGdsZWljaCBrb21tdCBhICEgPDE4OjMzOjI4PgoKQWxtZHVkbGVyIHRlaWx0IERpciBtaXQ6IERlciB1bmdsYXVibGljaGUgQXJ6dCBBbG1pIHdpcmQgdm9uIDQKQWxtZHVkbGVyIHRlaWx0IERpciBtaXQ6IEtyYW5rZW5zY2h3ZXN0ZXJuIGhlcmVpbmdldHJhZ2VuLjx3aWUgZ2VodCBlcyB1bnMKQWxtZHVkbGVyIHRlaWx0IERpciBtaXQ6IGRlbm4gaGV1dGU+ZnJhZ3QgZXIgdW5kIG1hY2h0IGVpbiBrb21pc2NoZXMKQWxtZHVkbGVyIHRlaWx0IERpciBtaXQ6IGdlc2ljaHQuRXIgbmltbXQgZWluZW4gUmV6ZXB0YmxvY2sgdW5kIHZlcm9yZG5ldDoKQWxtZHVkbGVyIHRlaWx0IERpciBtaXQ6IEZ1ZXIgZGFzIGFybWUgc29sbXlyY2hlbjogUmVjaXBlOiBIYWVuZ2VtYXR0b2xpbgpBbG1kdWRsZXIgdGVpbHQgRGlyIG1pdDogZm9ydGUgM3gxIENvY2t0YWlsbWl4IHVsdHJhIGFkIGxpYml0dW0uIERhcnVudGVyIGlzdApBbG1kdWRsZXIgdGVpbHQgRGlyIG1pdDogZWluIEtyYWtlbCB6dSBzZWhlbiwgZGVyIHdvaGwgZWluZSBVbnRlcnNjaHJpZnQgc2VpbgpBbG1kdWRsZXIgdGVpbHQgRGlyIG1pdDogc29sbC4gRGVtIGFybWVuIGdlcGxhZ3RlbiBzb2xteXJjaGVuIHdpcmQgYmVpIGRlbQpBbG1kdWRsZXIgdGVpbHQgRGlyIG1pdDogR2VkYW5rZW4gYW4gZGllIHJlemVwdGdlYnVlaHIgZ2xlaWNoIGJlc3Nlci4gWzE4OjM0XQpBbG1kdWRsZXIgdGVpbHQgRGlyIG1pdDogZGFzIGhhYiBpY2ggaWhtIG1hbCBnZXNjaGlja3QsIHNvbGx0ZSBkb2NoIGZ1ZXIgZGVuCkFsbWR1ZGxlciB0ZWlsdCBEaXIgbWl0OiBhbmZhbmcgcmVpY2hlbiBbMTg6MzVdCkR1IGdyaW5zdCBBbG1kdWRsZXIgYXVzIGRlciBGZXJuZSBhbi4KQWxtZHVkbGVyIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCgogW1RvZDpMYXJzXSBFaW5lIHNjaHdlcmUgS3JhbmtoZWl0IGhhdCBnZXJhZGUgT3Jkb3MgdW1nZWJyYWNodC4KRHUgcnVmc3Q6IExvb29vb29vb29vb0wgOikKTm9jaCBlaW4gYW5kZXJlciBIYWVuZGxlciBzY2htdW56ZWx0IGFtdWVzaWVydC4KClNvbCogdW5kIEFsbSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnJlcGZpbGUuLi4gKFd1cnplbCwgMTkuIE1hciAyMDAxLCAyMzo1OTowMCk6Cm1hbiBpc3QgamEgZnVlciBqZWRlbiBoaW53ZWlzIGRhbmtiYXIuIGFsbGVyZGluZ3MgaXN0IGVzIG5pY2h0IGltbWVyIGxlaWNodCwKZGllIGlkZWVuIGRlciBzcGllbGVyIGF1Y2ggdW16dXNldHplbi4uLiB3aWUgZGllc2UgaGllcjoKCklERUEgdm9uIHdpbm5pIFsvZC9nZWJpcmdlL3d1cnplbC9yb29tL2Zlc3R1bmcva2FwZWxsZV0gKCAxLiBNYXIgMjAwMSk6CmZpY2tlbgoKd2FzIHNhZ3QgdW5zIGRhcyBqZXR6dD8gYnJhdWNoZW4gd2lyIGVpbmUgYW1hbmRhIGZ1ZXIgendlcmdlPyBvZGVyIHNvbGx0ZQppY2ggbGllYmVyIHdlbmlnZXIgdm9yIGRlbSByZWNobmVyIGhvY2tlbiB1bmQgZGFmdWVyIHdhcyBhbmRlcmVzIHR1bj8KZnJhZ2VuIHVlYmVyIGZyYWdlbi4uLgp3ZW5uIGlociB3YXMgc2NocmVpYnQsIGRhbm4gZG9jaCBiaXR0ZSBzbywgZGFzcyBpY2ggd2Vpc3Mgd2FzIGlociBtZWludC4KCnd1cnplbCBiZWkgZGVyIGFyYmVpdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHJlcGZpbGUuLi4gKEFuYXRvbCwgMTkuIE1hciAyMDAxLCAyMzo1OTo1OCk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTg1MDQyNzQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg1MDQyNzQwClZlcnplaWggaWhtLiBFciBpc3QgWndlcmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHJlcGZpbGUuLi4gKEdyaW1tYm9ybiwgMjAuIE1hciAyMDAxLCAwMDowMToyMyk6Cn4jISBybj1BbmF0b2wgcnQ9OTg1MDQyNzk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg1MDQyNzQwCkhtbSwgd2VubiBlciBiZWkgImZpY2tlbiIgbmljaHQgd2Vpc3Mgd2FzIGdlbWVpbnQgaXN0IC0gdGphLCB3aWUgZHJ1ZWNrZSBpY2gKZGFzIGF1cz8gV3VyemVsLCBtYWNoIGRvY2ggbWFsIFBhdXNlIHZvbSBDb21wdXRlciB1bmQgdW50ZXJoYWx0ZSBEaWNoIG1hbAp3aWVkZXIgbWl0IERlaW5lciBGcmF1LCB2aWVsbGVpY2h0IGhhdCBzaWUgZGEgamEgZWluZSBJZGVlLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvc28uLi4gKEdub21lLCAyMC4gTWFyIDIwMDEsIDAwOjU5OjQ3KToKRHUgZ3JlaWZzdCBLaG8nbmlnaCBtaXQgZGVtIEtyaWVnc2hhbXN0ZXIgYW4uCi4uLgpLaG8nbmlnaCBzYWd0OiBTbywgR25vbWUsIGpldHp0IGlzdCBtYWwgZ2VudWcgZGVzIFNwYXNzZXMuCktobyduaWdoIHNhZ3Q6IFdhcyBpc3QgZGVubiBkYXMgZnVlciBlaW5lIHNjaGxlY2h0ZSBXYWZmZT8gRGllIGtvZW5udGVzdCBEdQpLaG8nbmlnaCBzYWd0OiBhdWNoIGVpbm1hbCByZXBhcmllcmVuLgoKc2NobGVjaHRlIHdhZmZlPyBzb3NvLgpib2luZz8gd2FzIGhhc3QgZHUgdW5zIGRhIGFuZ2VkcmVodD8gOikKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogLi4uIEF1ZmxhZ2Vuc3RhZXJrdW5nIC4uLiAoT2Jlcm1vdHosIDIwLiBNYXIgMjAwMSwgMDk6MzM6NTcpOgp+IyEgcm49R2xvaW5zb24gcnQ9OTg0NzMyNjcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg0NzMyNjcxCgpKYWphLCBpbW1lciBhdWYgZGllIGtsZWluZW4hIEtvZW5udCBJaHIgRXVjaCBuaWNodCB3YXMgZ3JvZXNzZXJlcyBhdXNzdWNoZW4/CgpPTQoKUFM6IEFlaG0sIGhhYnQgSWhyIGVpbiBwYWFyIEtvbXBvcyB1ZWJlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiAxMDBsIHRhbm5lbnphZXBmbGUgKEpvaG5ueWJvc3MsIDIwLiBNYXIgMjAwMSwgMTY6MzE6MTgpOgp0YW5uZW56YWVwZmxlIGlzY2hzIGJlc3RlIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAgMTAwbCB0YW5uZW56YWVwZmxlIChKb2hubnlib3NzLCAyMC4gTWFyIDIwMDEsIDE3OjQxOjQ1KToKfiMhIHJuPUdsb2luc29uIHJ0PTk4NTEwMzQ3MyByZz1zY2htYXJybgp+IyEgdGlkPTk4NTEwMjI3OAp3YXMgaGVpc3N0IGhpZXIgbmljaHQgbWFsIHNvIHNjaGxlY2h0Pz8/Pz8/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAgMTAwbCB0YW5uZW56YWVwZmxlIChKb2hubnlib3NzLCAyMC4gTWFyIDIwMDEsIDE3OjUzOjA1KToKfiMhIHJuPUpvaG5ueWJvc3MgcnQ9OTg1MTA2NTA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg1MTAyMjc4CndpZSB3YWVycyBtaXQgbmVtIGthc3RlbiB0YW5uZW56YWVwZmxlIGF1ZiB0YW5uZW56YWVwZmxlLXJlIDIwMD8gKG51ciB1bQpncmltbWJvcm4genUgYWVyZ2VybikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6ICAxMDBsIHRhbm5lbnphZXBmbGUgKEdsb2luc29uLCAyMC4gTWFyIDIwMDEsIDE3OjU5OjUwKToKfiMhIHJuPUpvaG5ueWJvc3MgcnQ9OTg1MTA3MTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg1MTAyMjc4CkljaCB3dWVyZGUgYWxsZW5mYWxscyAnbmUgU3RpZWdlIEdyYWZlbndhbGRlciBmdWVyIGRhcyBzb2ZvcnRpZ2UgQmVlbmRlbgpiZXphaGxlbi4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhZW1vbmVuLi4uIChGb29iYXIsIDIwLiBNYXIgMjAwMSwgMjA6NTY6MTgpOgpFaW4gRHVua2VsZGFlbW9uIGxhZXVmdCBnZWdlbiBlaW5lbiBhdWZnZW1hbHRlbiBEdXJjaGdhbmcgaW0gT3N0ZW4uCkRlciBEdW5rZWxkYWVtb24gYnJpY2h0IHRvdCB6dXNhbW1lbi4KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VmYWhyIChHcmltbWJvcm4sIDIwLiBNYXIgMjAwMSwgMjI6MDE6MDQpOgp+IyEgb249R3JpbW1ib3JuIG90PTk4NTEyMTU1NSBvZz1oYXJkc29mdHdhcmUKSWNoIHdvbGx0ZSBhdXMgZ2VnZWJlbmVtIEFubGFzcyBkYXZvciB3YXJuZW4gdW5lcndhcnRldCBncm9lc3NlcmUgRGF0ZW5tZW5nZW4KYXVmIGVpbmVyIEZlc3RwbGF0dGUgenUgbG9lc2NoZW4uIEljaCBoYWJlIGdlc3Rlcm4gZ2VuYXUgZGllc2VzIGdldGFuLCB1bmQKamV0enQgcGZlaWZ0IGRpZSBGZXN0cGxhdHRlIHppZW1saWNoIHNjaHJpbGwuIEljaCBnZWhlIGRhdm9uIGF1cyBkYXNzIGRhcwpkYXJhbiBsaWVndCwgZGFzcyBkaWUgRGF0ZW4gcmVsYXRpdiBlbmcgYmVpZWluYW5kZXIgbGFnZW4gdW5kIGR1cmNoIGRhcwpFbnRmZXJuZW4gZGllIFBsYXR0ZSBlaW5lIFVud3VjaHQgZW50d2lja2VsdCBoYXQuIE9mZmVuc2ljaHRsaWNoIGdpYnQgZXMgZWluZW4KaW50ZXJuZW4gTWVjaGFuaXNtdXMsIGRlciBiZWltIGxhbmdzYW1lbiBGdWVsbGVuIGRlciBQbGF0dGVuICh1bmQgZGFzIGlzdCBqYQp1ZWJsaWNoZXJ3ZWlzZSBkaWUgZWluemlnZSBWZXJhZW5kZXJ1bmdzcmljaHR1bmcsIG9kZXIga2VubnQgamVtYW5kIFBsYXR0ZW4sCmRpZSBtaXQgZGVyIFplaXQgaW1tZXIgbGVlcmVyIHdlcmRlbj8pIGRpZSBEYXRlbiBzbyB2ZXJ0ZWlsdCwgZGFzcyBzaWUgZGllClBsYXR0ZSBnbGVpY2htYWVzc2lnIGJlbGFzdGVuLiBJY2ggd2VyZGUgamV0enQgbWVpbmUgRGF0ZW4gdWViZXIgZWluZQptZWdhc2NobmVsbGUgMjguOGVyIExlaXR1bmcgc2ljaGVybiB1bmQgYW5zY2hsaWVzc2VuZCBkZW4gUmVjaG5lciBtYWwgdWViZXIKTmFjaHQgYXVzc2NoYWx0ZW4uIFVuZCB3ZW5uIGRpZSBEYXRlbiBtb3JnZW4gZnJ1ZWggd2VnIHNpbmQgaGFiIGljaCBpbW1lciBub2NoCmRhcyBiYWNrdXAgbWVpbmVyIHBlcnNvZW5saWNoZW4gRGF0ZW4uIFVuZCBlaW5lbiBncm9zc2VuIHBlcnNvZW5saWNoZW4gRnJ1c3QuCkljaCB3ZXJkZSBrZWluZXJsZWkgSGVtbXVuZ2VuIGhhYmVuLCBpaG4gZGFubiBhbiBkZXIgbXBhIHVuZCBpaHJlbgphbmdlc2NobG9zc2VuZW4gU3BpZWxlcm4gYXVzenVsYXNzZW4uLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdlZmFociAoR3JpbW1ib3JuLCAyMC4gTWFyIDIwMDEsIDIyOjAxOjEwKToKfiMhIG9uPVd1cnplbCBvdD05ODUxMjE2NDQgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1HcmltbWJvcm4gcnQ9OTg1MTIxNTU1IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTk4NTEyMTU1NQpobSwgd3Vzc3RlIGdhciBuaWNodCBkYXNzIGRhdGVuIHNvIHNjaHdlciBzZWluIGtvZW5uZW4uLi4gbWFuIGxlcm50IG5pZQphdXMsIG9mZmVuc2ljaHRsaWNoIDopCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHZWZhaHIgKEdyaW1tYm9ybiwgMjAuIE1hciAyMDAxLCAyMjowMToxMik6Cn4jISBvbj1QYXRyeW4gb3Q9OTg1MTIxNjgwIG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4NTEyMTU1NSByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD05ODUxMjE1NTUKaWNoIGVtcGZlaGxlIGluIGRpZXNlbSB6dXNhbW1lbmhhbmcgYXVjaCBkZW4gMS4gYXByaWwgZ2FnIGF1cyBkZXIKZGllc21vbmF0aWdlbiBsaW51eC1tYWdhemluLCBzdGljaHdvcnQgYmlnIGJyb3RoZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR2VmYWhyIChHcmltbWJvcm4sIDIwLiBNYXIgMjAwMSwgMjI6MDE6MTMpOgp+IyEgb249VGlhbWFrIG90PTk4NTEyMTc1NCBvZz1oYXJkc29mdHdhcmUKfiMhIHJuPVBhdHJ5biBydD05ODUxMjE2ODAgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9OTg1MTIxNTU1CkRpZXNtb25hdGlnZW4/CgpBbHNvIGRlbiBHYWcgbWl0IGRlciBVbnd1Y2h0IGF1ZiBkZXIgRmVzdHBsYXR0ZSBnYWIgZXMgc2Nob24genUgWmVpdGVuIGRlcwpBbWlnYS1NYWdhemlucy4gTGFhYWFhYW5nIGlzdCdzIGhlci4gOi0pCgoKVGlhbWFrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdlZmFociAoR3JpbW1ib3JuLCAyMC4gTWFyIDIwMDEsIDIyOjAxOjE0KToKfiMhIG9uPUdyaW1tYm9ybiBvdD05ODUxMjE3NjAgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1XdXJ6ZWwgcnQ9OTg1MTIxNjQ0IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTk4NTEyMTU1NQpOYXR1ZXJsaWNoLCBkaWUgRGF0ZW4gd2VyZGVuIGphIG1pdCBFbGVrdHJvbmVuIGdlc3BlaWNoZXJ0LCB1bmQgZGllIGhhYmVuCk1hc3NlLiBEYWZ1ZXIgZ2lidHMgZGFubiBqYSAvZGV2L3plcm8sIGRhc3MgenVtIEF1c2dsZWljaCBOdWxsZW4gdmVydGVpbGVuCmthbm4gdW0gQmVyZWljaGUgenUgZ3Jvc3NlciBEaWNodGUgenUgZW50bGFzdGVuLgoKR3JpbW1ib3JuIGRlciBDb21wdXRlcnByb2ZpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHZWZhaHIgKEdyaW1tYm9ybiwgMjAuIE1hciAyMDAxLCAyMjowMToxNSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTg1MTIxODE0IG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49VGlhbWFrIHJ0PTk4NTEyMTc1NCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD05ODUxMjE1NTUKSWNoIGhhYiBhdWNoIG1hbCBlaW4gQXVzd3VjaHR1bmdzcHJvZ3JhbSBmdWVyIERPUyBnZWhhYnQuIDotKQpEZXIgZ2FnIGltIExNIGlzdCBlaW4gZ2VyYWRlenUgbGllYmV2b2xsIHp1c2FtbWVuZ2VzdGVsbHRlciBrZXJuZWwgYnVnLgpCZXNvbmRlcnMgbmV0dCBpc3QgZGVyIHdvcmthcm91bmQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR2VmYWhyIChHcmltbWJvcm4sIDIwLiBNYXIgMjAwMSwgMjI6MDE6MTYpOgp+IyEgb249UGF0cnluIG90PTk4NTEyMTgxOCBvZz1oYXJkc29mdHdhcmUKfiMhIHJuPVRpYW1hayBydD05ODUxMjE3NTQgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9OTg1MTIxNTU1CmFiZXIgZGFzIG1pdCBiaWcgYnJvdGhlciBpbiBsaW51eCBoYWIgaWNoIGdlc3Rlcm4genVmYWVsbGlnIGltIGJhaG5ob2YKdWViZXJmbG9nZW4gdW5kIGVzIHdhciBuZXR0IGdlc2NocmllYmVuIHVuZCBpbWhvIG5ldSA6KQplaW5mYWNoIG1hbCBlbXBmZWhsZW5zd2VydC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR2VmYWhyIChHcmltbWJvcm4sIDIwLiBNYXIgMjAwMSwgMjI6MDE6MTcpOgp+IyEgb249Wm9vayBvdD05ODUxMjE4NTAgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1QYXRyeW4gcnQ9OTg1MTIxODE4IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTk4NTEyMTU1NQpJbiB3ZWxjaGVtIEJhaG5ob2Yga2FubiBtYW4gZGFzIGxlc2VuPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEdlZmFociAoR3JpbW1ib3JuLCAyMC4gTWFyIDIwMDEsIDIyOjAxOjE4KToKfiMhIG9uPVBhdHJ5biBvdD05ODUxMjE4ODYgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1ab29rIHJ0PTk4NTEyMTg1MCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD05ODUxMjE1NTUKaW4gamVkZW0gYmFobmhvZiBtaXQgZGVtIGhhcmR3YXJlLW1vZHVsIHplaXR1bmdzbGFkZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEdlZmFociAoR3JpbW1ib3JuLCAyMC4gTWFyIDIwMDEsIDIyOjAxOjE5KToKfiMhIG9uPUdyaW1tYm9ybiBvdD05ODUxMjE5NDIgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1QYXRyeW4gcnQ9OTg1MTIxODg2IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTk4NTEyMTU1NQpXb2JlaSBkYXMgTGl6ZW56bW9kZWxsIGZ1ZXIgZGFzIE1vZHVsIHppZW1saWNoIG5lcnZpZyBpc3QuIE51dHp1bmcgbnVyIHp1CnZvcmtvbmZpZ3VyaWVydGVuLCBuaWNodCBrb25maWd1cmllcmJhcmVuIFplaXRlbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogR2VmYWhyIChHcmltbWJvcm4sIDIwLiBNYXIgMjAwMSwgMjI6MDE6MjApOgp+IyEgb249Wm9vayBvdD05ODUxMjE5ODAgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1HcmltbWJvcm4gcnQ9OTg1MTIxOTQyIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTk4NTEyMTU1NQpNYWwgc2VoZW4sIG9iIGRpZSBoaWVyIGluIGRlciBTY2h3ZWl6IGF1Y2ggZGllIHBhc3NlbmRlIFZlcnNpb24gaGFiZW4uCldlbm4gZGFzIG5lIGFsdGUgVmVyc2lvbiBpc3QsIGthbm4gbWFuIGRhcyBNb2R1bCBkYW5uIGlyZ2VuZHdpZQp1cGRhdGVuPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEdlZmFociAoR3JpbW1ib3JuLCAyMC4gTWFyIDIwMDEsIDIyOjAxOjIxKToKfiMhIG9uPVBhdHJ5biBvdD05ODUxMjE5ODEgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1HcmltbWJvcm4gcnQ9OTg1MTIxOTQyIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTk4NTEyMTU1NQouLi51bmQga2VpbmVyIGRlciB2ZXJudWVuZnRpZyB2ZXJsZWd0Li4uamEgamEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEdlZmFociAoR3JpbW1ib3JuLCAyMC4gTWFyIDIwMDEsIDIyOjAxOjIyKToKfiMhIG9uPUdyaW1tYm9ybiBvdD05ODUxMjIwNTIgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1QYXRyeW4gcnQ9OTg1MTIxOTgxIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTk4NTEyMTU1NQpEYXMgZmllcGVuIG1laW5lciBIRCBsZW5rdCBtaWNoIGFiLiBIbW0uLi4gKktvcGYgc2NoaWVmIGxlZyogInNjaG1hcnJuIiwgZGVua2UKaWNoLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEdlZmFociAoR3JpbW1ib3JuLCAyMC4gTWFyIDIwMDEsIDIyOjAyOjE4KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODUxMjIwODIgcmc9c2NobWFycm4KfiMhIHRpZD05ODUxMjE1NTUKSmVwcCwgaGllciBwYXNzdHMuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdlZmFociAoUGF0cnluLCAyMC4gTWFyIDIwMDEsIDIyOjAzOjE3KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODUxMjIwNzQgcmc9c2NobWFycm4KfiMhIHRpZD05ODUxMjE1NTUKYWxzbyB3ZW5uIGljaCBhbiBFPW0qYypjIGRlbmtlLCBkYW5uIG11c3MgZGVyIHNjaHJlaWIta29wZiBkZWluZXIgcGxhdHRlCm1laHIgZW5lcmdpZSB1bXNldHplbiBrb2VubmVuIGFscyBhbGxlIHRlaWxjaGVuYmVzY2hsZXVuaWdlciBkaWVzZXIKd2VsdCB6dXNhbW1lbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRnJ1ZWhqYWhyc3BhcnR5PyAoQW5hY3Jpb24sIDIwLiBNYXIgMjAwMSwgMjM6MzA6MTYpOgp+IyEgb249QW5hY3Jpb24gb3Q9OTg1MTI3Mzk4IG9nPXBhcnR5Cn4jISBybj1XdXJ6ZWwgcnQ9OTg1MTI3MjU2IHJnPXBhcnR5Cn4jISB0aWQ9OTgwODY2MTAyClZpZWxsZWljaHQga29lbm5lbiBpbSBuYWVjaHN0ZW4gRnJ1ZWhqYWhyIG1laHIgTGV1dGUgPwoKQW5hYyogaXN0IGRhbm4gYXVjaCB3aWVkZXIgaW0gTEFuZGUgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBGcnVlaGphaHJzcGFydHk/IChFbGJlcmV0LCAyMS4gTWFyIDIwMDEsIDAwOjI1OjM5KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk4NTEyNzQxNiByZz1zY2htYXJybgp+IyEgdGlkPTk4MDg2NjEwMgpFbGJpIGF1Y2ggOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnN0cmlrZS4uLiAoQW1hcnlsbGlzLCAyMS4gTWFyIDIwMDEsIDAwOjU2OjE5KToKW01vZXJkZXI6R2Vpc3QgUGFwYSBNb29yaHVobnNdIEljaCBtdXNzIHNhZ2VuLCBPbGxpIGthbm4gZmVzdGUgc2NobGFnZW4uCgozIFNlay4gc3BhZXRlci4uLgoKW1RvZDpMYXJzXSBLaG8nbmlnaCBoYXQgZ2VyYWRlIE9sbGkgdW1nZWJyYWNodC4KW1RvZDpLaG8nbmlnaF0gSGV1dGUgZWluIEtvZW5pZyEKW1RvZDpPbGxpXSBIdXBzIDopCgpPZmZlbmJhciBuaWNodCBzdGFyayBnZW51ZyA6KQpBbWEqLCBLaG8nbmlnaCBoaWdoNSdlbnQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBKZW1hbmQgaGllci4uLiAoQW5hY3Jpb24sIDIxLiBNYXIgMjAwMSwgMDI6NTg6NTIpOgp+IyEgb249QW5hY3Jpb24gb3Q9OTg1MTM5MTYxIG9nPWFuemVpZ2VuCn4jISBybj1IdW1uaSBydD05ODUxMzI5MDEgcmc9YW56ZWlnZW4KfiMhIHRpZD05ODUxMzI5MDEKRGVyIFNhdHogaXN0IGluIEdlaXN0ZXJzcHJhY2hlIHVuZCBoZWlzc3Q6CgonVW5kIGRhcyBoaWVyIGlzdCBmdWVyIEh1bW5pLCBkZXIgc2ljaCBiZXN0aW1tdCBqYWhyZWxhbmcgZnJhZ2VuIHdpcmQsIHdhcyBkYXMKaGVpc3N0LicKCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNaXQgQW5sYXVmLi4uIChab29rLCAyMS4gTWFyIDIwMDEsIDEzOjI3OjEwKToKU3dvdGwgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KU3dvdGwgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgpbVG9kOkxhcnNdIEVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsIGhhdCBnZXJhZGUgU3dvdGwgdW1nZWJyYWNodC4KW1RvZDpFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbF0gUGZmZmZmZmZmZmZmdC4uLi4uLi5QTFVNUFMhCgpab29rIGZyYWd0IHNpY2gsIG9iIHNpY2ggYXVzIGRlbSBOZXR6dG90ZW4tUmF1bSBiZXNzZXIgaW4gZGVuIEFiZ3J1bmQgc3ByaW5nZW4KbGFlc3N0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdlZmFociAoTGlhcmEsIDIxLiBNYXIgMjAwMSwgMTM6MzI6MTcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4NTEyMjA2NCByZz1zY2htYXJybgp+IyEgdGlkPTk4NTEyMjA2NApTdWVzcy4gOy0pIER1IG1laW5zdCwgRHUgbXVlc3N0ZXN0IGVzIGV4dHJhIG5vY2ggZXJ3YWVobmVuLCBkYXNzIER1IERlaW5lbgpwZXJzb2VubGljaGVuIEZydXN0IGhpZXIgcmF1c2xhZXNzdD8gOy0pCkhhc3RlIGpldHp0IERlaW5lIHNvemlhbGUgQWRlciBlbnRkZWNrdD8gOy0pCgpMWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHZWZhaHIgKEdyaW1tYm9ybiwgMjEuIE1hciAyMDAxLCAxMzo1MDoyNik6Cn4jISBybj1MaWFyYSBydD05ODUxNzc5Mzcgcmc9c2NobWFycm4KfiMhIHRpZD05ODUxMjIwNjQKRGFzIGdhbnplIGlzdCBub2NoIHdlc2VudGxpY2ggc2NobGltbWVyLiBOYWNoZGVtIGljaCBkZW4gUmVjaG5lcgpydW50ZXJnZWZhaHJlbiBoYXR0ZSB3YXIgZGFzIHBpZXBzZW4gaW1tZXIgbm9jaCBuaWNodCB3ZWcuIERhcyBrYW0gaW4KV2lya2xpY2hrZWl0IHZvbiBlaW5lbSBlbGVrdHJpc2NoZW4gV2Vja2VyLCBkZW4gaWNoIGZ1ZXIga2FwdXR0IGhpZWx0LCBkZXIKYWJlciBub2NoIGF1ZiBkZW0gbGV0enRlbiBMb2NoIHBmaWZmLiBTbyBlaW4gRHJlY2ssIDEwNyBUYWdlIHVwdGltZSBiZWltClRldWZlbC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHZWZhaHIgKFpvb2ssIDIxLiBNYXIgMjAwMSwgMTM6NTA6NDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4NTE3OTAyNiByZz1zY2htYXJybgp+IyEgdGlkPTk4NTEyMjA2NApOdXIgMTA3LCBkYXMgaXN0IGphIGFybS4uLi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBZW5nc3RsaWNoPyAoRGFyaWEsIDIxLiBNYXIgMjAwMSwgMTY6NDc6MTYpOgpEdSBob2Vyc3QgZWluIEdyb2xsZW4uIERlciBWdWxrYW4gaXN0IG1hbCB3aWVkZXIgYWt0aXYuCltTZWhlcjpHb2xhcyBrdXNjaGVsdCBzaWNoIGFuIExhcmFuaXMgYW5dCgpIbS4uLgpEYXJpYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChab29rLCAyMS4gTWFyIDIwMDEsIDIyOjU3OjEwKToKW0JlaWxlaWQ6SW1kYV0gdXV1cHNzCltCZWlsZWlkOkltZGFdIGhuZ2wKW1RvZDpMYXJzXSBZbnonVHJhayBoYXQgZ2VyYWRlIEltZGEgdW1nZWJyYWNodC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChBbWFyeWxsaXMsIDIxLiBNYXIgMjAwMSwgMjI6NTg6MDIpOgp+IyEgcm49Wm9vayBydD05ODUyMTE4MzAgcmc9c2NobWFycm4KfiMhIHRpZD05ODUyMTE4MzAKSm8uIEd1dCB3YXIgYXVjaDoKW1RvZDpMYXJzXSBZbnonVHJhayBoYXQgZ2VyYWRlIEltZGEgdW1nZWJyYWNodC4KWW56J1RyYWsgdGVpbHQgRGlyIG1pdDogSWNoIGhhYmUgZWJlbiBJbWRhIGdldG9ldGV0IQoKQWxzbyBvYiBpY2ggZGFzIG5pY2h0IHZvbiBMYXJzIHNjaG9uIG1pdGdla3JpZWd0IGhhZXR0ZSA6KQoKQW1hKiwgR29yIHRyZXRlbmQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKFpvb2ssIDIxLiBNYXIgMjAwMSwgMjM6MDE6NTgpOgp+IyEgcm49Wm9vayBydD05ODUyMTE4MzAgcmc9c2NobWFycm4KfiMhIHRpZD05ODUyMTE4MzAKW0JlaWxlaWQ6QW1hcnlsbGlzXSBIdWNoLi4uIEltZGEgYXVzc2VyaGFsYiBkZXIgQUc/IERhcyBfbXVzc18gdG9lZGxpY2gKW0JlaWxlaWQ6QW1hcnlsbGlzXSBlbmRlbi4uLiA8MjI6NTc6MTY+CltCZWlsZWlkOk1lbmFjZV0gb2gsIGRhcyB3YXIgbWl0IFZvcmFua3VlbmRpZ3VuZywgSW1kYT8gQmVpbGVpZCA8MjI6NTc6NTI+CltCZWlsZWlkOkltZGFdIGJsb2VkZXMgZHJlY2tzdmllaCB2ZXJmbHVjaHRlcyAhIDwyMjo1OToyMD4KW0JlaWxlaWQ6QW1hcnlsbGlzXSBCbGVpYiBpbiBkZXIgQUcsIGRhIHBhc3NpZXJ0IG5peCA6KSA8MjM6MDA6MzQ+CltCZWlsZWlkOkltZGFdIGphLCBkdW1tIGF1cyBkZXIgQUcgZ2VzdG9scGVydCB1bmQgbmljaCBtaGVyIHp1cnVlY2tnZWZ1bmRlbi4uLgpbQmVpbGVpZDpJbWRhXSA8MjM6MDE6MTA+Cgpab29rIGRlbmt0IC4gbyBPIChXbyBtYW4gc28gYWxsZXMgYmVpbSBTdG9scGVybiBsYW5kZW4ga2Fubi4uLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBhcnR5LUluZm9zIGRpZSAxLiAoTWVuYWNlLCAyMi4gTWFyIDIwMDEsIDAxOjAwOjU5KToKfiMhIG9uPU1lbmFjZSBvdD05ODUyMTkxNzkgb2c9cGFydHkKfiMhIHJuPUJyYW5kaXIgcnQ9OTg1MjE4ODkwIHJnPXBhcnR5Cn4jISB0aWQ9OTg1MjE4ODkwCj4gU29sbHRlIEludGVyZXNzZSBhbiBULVNoaXJ0cywgVGFzc2VuLCBTbGlwcyBldGMuIGJlc3RlaGVuLAoKT2ggamEsIGljaCB3aWxsIG5lbiBTbGlwISBBbSBiZXN0ZW4gU3RyaW5ndGFuZ2EsIG9id29obC4uLgpEYSB3YWVyIGphIGRhbm4gbnVyIHdlbmlnIFBsYXR6IGZ1ZXIgZWluIE1vdGl2ISBPaywgZGFubiBkb2NoIGxpZWJlciBuZQpCb3hlcnNob3J0cyEgO28pCgpNZW5hY2UgKHNvd2llZ2VodGRhc2pldHp0bWl0ZGVtbmFjaHNjaG1hcnJudmVybGVnZW4/KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQYXJ0eS1JbmZvcyBkaWUgMS4gKE1lbmFjZSwgMjIuIE1hciAyMDAxLCAwMTowMTozMyk6Cn4jISBybj1NZW5hY2UgcnQ9OTg1MjE5MjU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg1MjE4ODkwCmtsYXBwdCBqYSEKCk1lbmFjZSAqZnJldSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0NTQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYm9ybiwgMjIuIE1hciAyMDAxLCAwMTozNjo1Nik6Cn4jISBybj1Nb250YW51cyBydD05ODUyMDg3NDMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGFzcyBpY2ggaW0gc2FlY2hzaXNjaGVuIFRlaWwgdm9uIEJheWVybiBsZWJlIGlzdCBtaXIgZHVyY2hhdXMgYmVrYW5udCwgZGEKbXVzc3QgRHUgbmljaHQgbm9jaCBkcmF1ZiBydW1yZWl0ZW4uClVuZCBTY2hhZWwgU2ljayBpc3RzIGF1Y2ggbm9jaC4gSWNoIGJpbiBlaW4gUmVjaHRzcmhlaW5pc2NoZXIsIGJhZWhoLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUGFydHktSW5mb3MgZGllIDEuIChSYXJkaWFuLCAyMi4gTWFyIDIwMDEsIDEzOjE4OjA4KToKfiMhIHJuPU1lbmFjZSBydD05ODUyMTkyNTkgcmc9c2NobWFycm4KfiMhIHRpZD05ODUyMTg4OTAKPiBEYSB3YWVyIGphIGRhbm4gbnVyIHdlbmlnIFBsYXR6IGZ1ZXIgZWluIE1vdGl2IQoKQWxzbyBkYXMsIGxpZWJlciBNZW5hY2UsIGhhZW5ndCBqYSB3b2hsIGRhdm9uIGFiLCBuaWNodCB3YWhyPyA7KQoKUmFyLCBtYWNodCBkYW1pdCB1ZWJlcmhhdXB0IGtlaW5lIEFuc3BpZWx1bmdlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhIHByb3BvcyB0cmVmZmVuIChBbmF0b2wsIDIyLiBNYXIgMjAwMSwgMTM6MjA6MzYpOgp+IyEgcm49UWl0ZXNzIHJ0PTk4NTI2MzYwMCByZz10cmVmZmVuCn4jISB0aWQ9OTg1MjYzNjAwClZpZWxsZWljaHQuIFdlbm4gamEsIGRhbm4gaGFiZW4gd2lyIGRhcyBhbGxlIGdhbnogc2ljaGVyIHZlcmRyYWVuZ3QuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUGFydHktSW5mb3MgZGllIDEuIChIb3VzZWhvbGRlciwgMjIuIE1hciAyMDAxLCAxMzoyMDo1Nik6Cn4jISBybj1SYXJkaWFuIHJ0PTk4NTI2MzQ4OCByZz1zY2htYXJybgp+IyEgdGlkPTk4NTIxODg5MApkYXMgbW90aXYgd2lyZCBkYW5uIGViZW4gYXVmIGRpZSBmcmVpZW4gaGF1dHBhcnRpZW4gdGFldG93aWVydCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmluIHNhbmQgKEdyaW1tYm9ybiwgMjIuIE1hciAyMDAxLCAxNTo1NDo0MSk6Cn4jISBvbj1IYXVrZSBvdD05ODUyNzI2Mzcgb2c9YWxsZ2VtZWluZXMKaG1tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaW4gc2FuZCAoR3JpbW1ib3JuLCAyMi4gTWFyIDIwMDEsIDE1OjU0OjQzKToKfiMhIG9uPVNvbG15ciBvdD05ODUyNzI3NDEgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUhhdWtlIHJ0PTk4NTI3MjYzNyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk4NTI3MjYzNwpVbmQgd2llZGVyIHdhcyB6dW0gTG9lc2NoZW4sIEdyaW1tYiogOikKClNvbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaW4gc2FuZCAoR3JpbW1ib3JuLCAyMi4gTWFyIDIwMDEsIDE1OjU1OjE1KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODUyNzI4ODMgcmc9c2NobWFycm4KfiMhIHRpZD05ODUyNzI2MzcKSWNoIGxvZXNjaGUgZ2VuZXJlbGwgbmljaHQuIEF1c3NlciBpbSBSZV4xMDAwMC10aHJlYWQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoYS4uLiAoWm9vaywgMjIuIE1hciAyMDAxLCAxNzo0NDozNCk6CltUcnZlczpHb2xhcyBrdXNjaGVsdCBzaWNoIGFuIEhpZ2h0IGFuXQpbVHJ2ZXM6TGlhcmEgd2VuZGV0IHNpY2ggYWIuXQpEZWluIEZyZXVuZCBHb2xhcyB0ZWlsdCBEaXIgbWl0OiBmb3JzY2hlbiBpc3QgZ3JhdXNhbSAuLi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE15dGhyYW4sIDIyLiBNYXIgMjAwMSwgMTk6MDU6MDMpOgpFbGl6YWJldGggdGVpbHQgRGlyIG1pdDogaG0gYmluIGpldHp0IGltIHRyZWlic2FuZC4uIHN0ZXJiIGljaCBqZXR6dCA/CltUb2Q6TGFyc10gVHJlaWJzYW5kIGhhdCBnZXJhZGUgRWxpemFiZXRoIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJrZWhydGUgV2VsdCBvZGVyIHdhcz8gKFNvbG15ciwgMjIuIE1hciAyMDAxLCAxOTowODozOSk6CiBbZmluZ2VyIGhlcmV0aWtdCiBbLi4uXQogU3BpZWxlcmxldmVsOiAzMyAoU2VoZXIpLCBHaWxkZW5sZXZlbCA4IChLYWVtcGZlcikKCiBbVHJ2ZXM6SGludGVyIExpc3RdIEluIDEwIE1pbnV0ZW4gYmVnaW5udCBkaWUgVmVyZWlkaWd1bmcgdm9uIEhlcmV0aWsgaW0KIFtUcnZlczpIaW50ZXIgTGlzdF0gVmVyc2FtbWx1bmdzc2FhbCBkZXMgU3RydXYhIEljaCBiaXR0ZSBhbGxlIFRydmVzIHp1CiBbVHJ2ZXM6SGludGVyIExpc3RdIGVyc2NoZWluZW4hCiBbLi4uXQogSGVyZXRpayB0ZWlsdCBEaXIgbWl0OiBhcmdoLCB3byBpc3QgZGVubiBkZXIgdmVyc2FtbWx1bmdzc2FhbD8KClNvbCosIG9obmUgV29ydGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWZXJrZWhydGUgV2VsdCBvZGVyIHdhcz8gKFNvbG15ciwgMjIuIE1hciAyMDAxLCAxOToxMToyNCk6Cn4jISBybj1Tb2xteXIgcnQ9OTg1Mjg0NTE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg1Mjg0NTE5CiBOYWNoc2NobGFnLCB6dXIgRXJpbm5lcnVuZzoKIFtmaW5nZXIgaGVyZXRpa10KIFsuLi5dCiBTcGllbGVybGV2ZWw6IDMzIChTZWhlciksIEdpbGRlbmxldmVsIDggKEthZW1wZmVyKQoKIEhlcmV0aWsgdGVpbHQgRGlyIG1pdDogd2FzIGlzdCBtcGE/PwoKU29sKiwgcm90ZmxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBWZXJrZWhydGUgV2VsdCBvZGVyIHdhcz8gKFNvbG15ciwgMjIuIE1hciAyMDAxLCAxOToxMjozNSk6Cn4jISBybj1Tb2xteXIgcnQ9OTg1Mjg0Njg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg1Mjg0NTE5CiBFaW4gd2VpdGVyZXIgOikKIFtmaW5nZXIgaGVyZXRpa10KIFsuLi5dCiBTcGllbGVybGV2ZWw6IDMzIChTZWhlciksIEdpbGRlbmxldmVsIDggKEthZW1wZmVyKQoKIEhlcmV0aWsgdGVpbHQgRGlyIG1pdDogZGEgc3RlaCBpY2ggZHJpbj8hCgpTb2wqLCBqZXR6dCBmYXN0IHRvdCB2b3IgbGFjaGVuIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVmVya2VocnRlIFdlbHQgb2RlciB3YXM/IChTb2xteXIsIDIyLiBNYXIgMjAwMSwgMTk6MjI6MjApOgp+IyEgcm49U29sbXlyIHJ0PTk4NTI4NDc1NSByZz1zY2htYXJybgp+IyEgdGlkPTk4NTI4NDUxOQogV2FocnNjaGVpbmxpY2ggbm9jaCBsYW5nZSBrZWluIGxldHp0ZXIsICpzZXVmeio6CiBbZmluZ2VyIGhlcmV0aWtdCiBbLi4uXQogU3BpZWxlcmxldmVsOiAzMyAoU2VoZXIpLCBHaWxkZW5sZXZlbCA4IChLYWVtcGZlcikKCiBIaW50ZXIgTGlzdCBzYWd0OiBTbywgZGEgd2lyIGhpZXIgbnVuIGFsbGUgenVyIFZlcmVpZGlndW5nIHZvbiBIZXJldGlrCiBIaW50ZXIgTGlzdCBzYWd0OiB2ZXJzYW1tZWx0IHNpbmQsIHdvbGxlbiB3aXIgYXVjaCBnbGVpY2ggYmVnaW5uZW4uCiBIaW50ZXIgTGlzdCBzYWd0OiBadW5hZWNoc3QgdWViZXJwcnVlZmVuIHdpciBtYWwgc2VpbmUgS2xlaWR1bmcgdW5kCiBIaW50ZXIgTGlzdCBzYWd0OiBBdXNydWVzdHVuZy4KIEhpbnRlciBMaXN0IHNjaGF1dCBIZXJldGlrIGFic2NoYWV0emVuZCBhbi4KIEhpbnRlciBMaXN0IHNhZ3Q6IFdlbm4gRHUgZWluZSBlaW5oYWVuZGlnZSBXYWZmZSB0cmFlZ3N0LCBkYW5uIG11c3N0IER1CiBIaW50ZXIgTGlzdCBzYWd0OiBuYXR1ZXJsaWNoIGF1Y2ggZWluZW4gU2NoaWxkIGRhYmVpIGhhYmVuIQogSGVyZXRpayBzYWd0OiBkYXMgaXN0IGVpbiB6d2VpaGFlbmRlciBkdSAqKioqKgogU2xheCBncmluc3QuCiBbZ2liIHNjaGlsZCBhbiBoZXJldGlrXSAobWFuIGlzdCBqYSBtaXRmdWVobGVuZCkKIEhlcmV0aWsga2FubiBlaW5lbiBhZXR6ZW5kZW4gRWxlbWVudGFyc2NoaWxkIG5pY2h0IG1laHIgdHJhZ2VuLgogRHUgbGFlc3N0IGRlbiBhZXR6ZW5kZW4gRWxlbWVudGFyc2NoaWxkIGZhbGxlbi4KIER1IHNhZ3N0OiBsYXNzIHdhcyBmYWxsZW4sIGR1IGthbm5zdCBuaXggdHJhZ2VuCiBIaW50ZXIgTGlzdCBzYWd0OiBTbyBnZWh0IGRhcyBlaW5mYWNoIG5pY2h0ISBFcyBoYXQga2VpbmVuIFNpbm4hIER1IGJpc3QKSGludGVyIExpc3Qgc2FndDogbm9jaCBuaWNodCByZWlmIGZ1ZXIgZWluZSBWZXJlaWRpZ3VuZywgSGVyZXRpayEgV2lyCiBIaW50ZXIgTGlzdCBzYWd0OiBicmVjaGVuIGhpZXIgYWIuCiBBbGxlcyBncmluc3QuCiBIZXJldGlrIHNhZ3Q6IERBUyBJU1QgRUlOIFpXRUlIQWVOREVSIFdFSUwgTUVJTkUgV0VSVEUgWlUgU0NITEVDSFQgU0lORAoKIER1IHNhZ3N0OiBTb2xsIGljaCBkYXMgbm9jaCBwb3N0ZW4/IDopCiBFbGFpbmUgbmlja3QgRGlyIHp1LgogRG90eiBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgogRHUgc2Fnc3Q6IEljaCBzdWNoIG1hbCBkaWUgYmVzdGVuIHN0ZWxsZW4gcmF1cyA6KQoKU29sKiwgZmVydGlnIGpldHp0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVmVya2VocnRlIFdlbHQgb2RlciB3YXM/IChHcmltbWJvcm4sIDIyLiBNYXIgMjAwMSwgMTk6Mjc6MzQpOgp+IyEgcm49U29sbXlyIHJ0PTk4NTI4NTM0MCByZz1zY2htYXJybgp+IyEgdGlkPTk4NTI4NDUxOQpXZW5uIER1IHdlaXRlcmhpbiBzdGFlbmRpZyBpbSBmYWxzY2hlbiB0aHJlYWQgcG9zdGVzdCB3aXJkIGRhcyBuYXR1ZXJsaWNoIG5peAptaXQgZGVyIFBhcnR5Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFZlcmtlaHJ0ZSBXZWx0IG9kZXIgd2FzPyAoU29sbXlyLCAyMi4gTWFyIDIwMDEsIDE5OjMyOjExKToKfiMhIHJuPVNvbG15ciBydD05ODUyODUzNDAgcmc9c2NobWFycm4KfiMhIHRpZD05ODUyODQ1MTkKSWNoIGhhYiBkYSBlaGVyIGFuIGRpZSBBbGxnZW1laW5oZWl0IGdlZGFjaHQgOikgU29sbHRlIGplZGVyIG1hbCBtaXRiZWtvbW1lbi4KClNvbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFZlcmtlaHJ0ZSBXZWx0IG9kZXIgd2FzPyAoQW5hY3Jpb24sIDIyLiBNYXIgMjAwMSwgMTk6Mzc6NTApOgp+IyEgcm49U29sbXlyIHJ0PTk4NTI4NTkzMSByZz1zY2htYXJybgp+IyEgdGlkPTk4NTI4NDUxOQpXZW5uIER1IGFuIGRpZSBBbGxnZW1laW5oZWl0IGdlZGFjaHQgaGFldHRlc3QsIGhhZXR0ZXN0IER1IGVzIGluIGRlbiBhbmRlcmVuClRocmVhZCAod2Vpc3MgZGVuIG5hbWVuIG5pY2h0IG1laHIsIHdlaWwgaWdub3JpZXJ0KSBnZXRhbi4KCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSb2NodXMgLT4gSGVsbHNlaGVyIChTb2xteXIsIDIzLiBNYXIgMjAwMSwgMDE6MDA6MTgpOgogW2t3ZXIgbWFnaWVyXQoKICAgICAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBGcmUsIDIzLiBNYXIgMjAwMSwgMDA6NTY6NDUgKDUgVGVpbG5laG1lcikKCiBEdXN0eS4uLi4uLi4uLi5KLm0gSHlwby4uLi4uLi4uLi4uaXdtIEdyaW1tYm9ybi4uLi4uLkl3bSBDeW1vbmsuLi4uLi4uLi5JLlIKICpSb2NodXMuLi4uLi4uLi4uRQoKIFt0ZWlsZSByb2NodXMgbWl0IFNhZyBtYWwsIGRpZSBEU0sgd2FyIERlaW5lIG9kZXI/XQogUm9jaHVzICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQogS2VpbiBzb2xjaGVyIFNwaWVsZXIhCgogW2dydW1tZWxdCgpTb2wqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMYXJzJyBQYXBpIChGb29iYXIsIDIzLiBNYXIgMjAwMSwgMTI6MjA6MzMpOgo+ZmcgZ251bGxpCi4uLgpQbGFuOgpHbnVsbGkgYXJiZWl0ZXQgYW4gZWluZSBFaXNiYWVyZW5xdWVzdCBpcmdlbmR3byBiZWkgZGVuIEluc2Vsbi4KWmllbCB3aXJkIGVzIHNlaW4sIGRlbSBrbGVpbmVuIExhcnMgenUgaGVsZmVuLCBzZWluZW4gVmF0ZXIKd2llZGVyenVmaW5kZW4uCgpKZXR6dCB3YXIgaWNoIHNjaG9uIHNvIG9mdCBiZWkgZGllc2VtICJrbGVpbmVuIExhcnMiLCBkYSBoYWV0dGUgZXIgcnVoaWcgc2Nob24KbWFsIHdhcyBzYWdlbiBrb2VubmVuIDtvKQoKRm9vYmFyCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEJlcnVlaG10ZSBGZWhsZWluc2NoYWV0enVuZ2VuOiAoR2xvaW5zb24sIDIzLiBNYXIgMjAwMSwgMTc6NTE6MjgpOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTg1MzY2MjQ5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05ODUyOTU1OTAKRGVyIEZ1ZWhlciB3YXIgZWluIGFybWVzIFNjaHdlaW4gLi4uCgpHbG9pbihzb24pLCBlcmdhZW56dCBuaWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVmIGFid2VnZW4/IDopIChNaWthZ2UsIDIzLiBNYXIgMjAwMSwgMjI6NDk6MTApOgpSb2xhIHNhZ3Q6IGltbWVyaGluIGhhYiBpY2ggbmUgZGlsZG8gbWF1cwpSb2xhIHNhZ3Q6IGFlaG0gZGlkZGVsIG1hdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW1hcnlsbGlzLCAyNC4gTWFyIDIwMDEsIDAxOjIzOjE2KToKW1NlaGVyOlZhbmlyXSB3byBicmljaHQgbWFuIHNpY2ggZWlnZW50bGljaCBkaWUgbmFzZSA/Ci4uLgpbVG9kOkxhcnNdIEVpbiBWYW1waXIgaGF0IGdlcmFkZSBWYW5pciB1bWdlYnJhY2h0LgoKQW1hKiBtZWludCwgd2Vpc2Ugbmlja2VuZDogRGEgenVtIEJlaXNwaWVsLiBEYSBicmljaHQgbWFuIHNpY2ggYWJlciBhdWNoIG1laHIsCndpZSBEdSBzaWVoc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEthZmYsIDI0LiBNYXIgMjAwMSwgMTY6Mjc6MDYpOgpQYXRyaW90IHRlaWx0IERpciBtaXQ6IGRhbmtlIDopKSBzdWVkb3N0ZW4gbXVzcyB3aWV0ZXIgbWVpbmUgc2FjaGVuIHdpZWRlcgpob25sCltUb2Q6TGFyc10gRWluIHJpZXNpZ2VzIFVudGllciBoYXQgZ2VyYWRlIFBhdHJpb3QgdW1nZWJyYWNodC4KCkNoYW90IHNlaW4gaXMgaGFydCwgbWFjaHQgYWJlciBTcGFzcwpLYWYKZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW5keSAoRGFzaGVsLCAyNC4gTWFyIDIwMDEsIDIzOjQ2OjUyKToKQW5keSBrb21tdCBhbi4KRHUgZXJmbGVoc3QgZGllIEduYWRlIGRlciBHb2V0dGVyLgpBbmR5IGdlaHQuIAoKLSBkYXMgd2FyIGRvY2ggbWFsIGVpbiBlcmZvbGdyZWljaGVzIEdlYmV0ICpnKgpEYXNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgd2Fociwgd2llIHdhaHIuLi4gKE9sbGksIDI2LiBNYXIgMjAwMSwgMDA6NDk6MzIpOgoKUmF2ZW50aHJvbmUgZml4aWVydCBMYXJzIHVuZCBtYWNodCBzY2h3dW5ndm9sbGUgQmV3ZWd1bmdlbi4KTGFycyB0YW56dCB3aWUgaW4gVHJhbmNlIGR1cmNoIGRpZSBHZWdlbmQuCkxhcnMgc2V1Znp0IDogJ0RpZXNlIFNwaWVsZXIgbWFjaGVuIHNvdmllbCBVbmZ1Zy4nCgpPbGxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCbHV0aWdlciBBZG1pbj8gT2RlciBudXIgZ2VmYWVyYnQ/IChEcmFjaG5vLCAyNi4gTWFyIDIwMDEsIDEzOjA2OjM0KToKCj4gbWlzY2hlIHJvdCBtaXQgcm9vdApEaWUgendlaXRlIEZhcmJlIGdpYnQgZXMgbmljaHQhIChadW1pbmRlc3QgaGllcikKCkRyYWNobm8gLSBkZW4gc3UgaGV1dGUgbWFsIHN0ZWNrZW4gbGFzc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVmIGFsdGFyIFJFR08gSEVSQkFNIChHcmltbWJvcm4sIDI2LiBNYXIgMjAwMSwgMTM6MjQ6MDApOgp+IyEgb249TGVlbG9vIG90PTk4NTYwNTY5NSBvZz1hbGxnZW1laW5lcwpzYWcgRklBVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU3RhbW10aXNjaCBLYXJsc3J1aGUgKEh1bW5pLCAyNi4gTWFyIDIwMDEsIDE2OjIyOjIxKToKfiMhIHJuPUFtYXJ5bGxpcyBydD05ODU2MTYzMTggcmc9dHJlZmZlbgp+IyEgdGlkPTk4NTI2MzI4NwpJc3QgZG9jaCBlZ2FsLiBIYXVwdHNhY2hlLCBlcyBzaW5kIEZpc2NoZSwgZGFtaXQga2FubiBtYW4gc2llIG5pY2h0IGVzc2VuLiAKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMZWljaHRzaW5uIGltIE1HIDotKSAoUGFsZSwgMjYuIE1hciAyMDAxLCAyMzoxMjo1NCk6Cm5hY2ggZWluZW0gU3BydW5nIGluIGRlbiBXYXNzZXJmYWxsIC4uLgoKCkJlb3dhciB0ZWlsdCBEaXIgbWl0OiB3YXMgZnVlciBlaW4gZmx1ZwouLi4KQmVvd2FyIHRlaWx0IERpciBtaXQ6IG9kZXIgc29sbCBpY2ggZW5kZSBtYWNoZW4KLi4uCkJlb3dhciB0ZWlsdCBEaXIgbWl0OiBkZW4genQgaGFiIGljaCA6LSkKLi4uCkR1IHRlaWxzdCBCZW93YXIgbWl0OiBkYW5uIGhhc3RlIGphIGdsdWVjawpCZW93YXIgdGVpbHQgRGlyIG1pdDogd2Vpc3Mgbm9jaCBuaWNodAouLi4KRHUgdGVpbHN0IEJlb3dhciBtaXQ6IG5vY2ggbmljaHQgYXVnZXNjaGxhZ2VuPwpCZW93YXIgdGVpbHQgRGlyIG1pdDogYWJlciBnbGVpY2ggaXN0IHNjaGx1c3MKQmVvd2FyIHRlaWx0IERpciBtaXQ6IG9kZXIgZG9jaCBlbmRlCi4uLgpEdSB0ZWlsc3QgQmVvd2FyIG1pdDogLVRvZCsKQmVvd2FyIHRlaWx0IERpciBtaXQ6IG5vY2ggbmljaHQKLi4uCkR1IHRlaWxzdCBCZW93YXIgbWl0OiB2aWVsbGVpY2h0IHNjaGFmZnN0ZSBlcyBqYSA6LSkKQmVvd2FyIHRlaWx0IERpciBtaXQ6IHNjaGFkZSB1biBkaWUgYXVzcnVlc3V0bmcKQmVvd2FyIHRlaWx0IERpciBtaXQ6IGdlaHQgbmljaHQKLi4uCkR1IHRlaWxzdCBCZW93YXIgbWl0OiBpY2ggd3VlcmQncyB2ZXJzdWNoZW4KQmVvd2FyIHRlaWx0IERpciBtaXQ6IG9kZXIgZWluZmFjaCBuZXR6IHRyZW5uZW4/CkJlb3dhciB0ZWlsdCBEaXIgbWl0OiBpY2ggc2l0emUgKHN0dWVyemUpIGVzIGF1cwouLi4KW1RvZDpMYXJzXSBFaW4gZnJlaWVyIEZhbGwgaGF0IGdlcmFkZSBCZW93YXIgdW1nZWJyYWNodC4KW1RvZDpFaW4gZnJlaWVyIEZhbGxdIEhleSAtIE1vbWVudC4gQWxzIEJlb3dhciBub2NoIGltIGZyZWllbiBGYWxsIHdhciwgbGVidGUKW1RvZDpFaW4gZnJlaWVyIEZhbGxdIGVyIG5vY2ghIEtvcnJpZ2llcnQgZGFzIGdlZmFlbGxpZ3N0IQpbVG9kOkxhcnNdIERlciBoYXJ0ZSBBdWZzY2hsYWcgaGF0IGdlcmFkZSBCZW93YXIgdW1nZWJyYWNodC4KW1RvZDpEZXIgaGFydGUgQXVmc2NobGFnXSBWZXJkYW1tdCwgd2llc28gc29sbCBpY2ggaW1tZXIgU2NodWxkIHNlaW4/CgpQYWxlICppbW1lciBub2NoIGxhY2hlbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW5tYWwgTGFycyB1bmQgenVydWVjayA6KSAoU29sbXlyLCAyNy4gTWFyIDIwMDEsIDAxOjI5OjMyKToKIAogCiBKdXJyeSB0ZWlsdCBEaXIgbWl0OiBhcmdsIGJlaW0gdGV1ZmVsIGdlbGFuZGV0IGJpdHRlc3QgZHUgbWFsIGZ1ZXIgbWljaAogSnVycnkgdGVpbHQgRGlyIG1pdDogaW4gZGVyIGthcGVsbGUgPyBbMDE6MTNdCiBEdSB0ZWlsc3QgSnVycnkgbWl0OiBJY2ggd2FyIGRhIG5vY2ggbmllLC4uLmJpbiBhYmVyIGF1ZidtIFdlZy4KIEp1cnJ5IHRlaWx0IERpciBtaXQ6IGhtbSBoYWIgc2NobmVld2l0Y2hlbiBnZWtpbGx0IDopIFswMToxNF0KIER1IGdyaW5zdCBKdXJyeSBhdXMgZGVyIEZlcm5lIGFuLgogWy4uLmJlaSBMYXJzXQogRHUgc2Fnc3Q6IGJpdHRlIGZ1ZXIga2llc2Vsc3RlaW4KIExhcnMgbGFlY2hlbHQgRGljaCBhbiA6ICdBYmVyIGdlcm5lJwogS2llc2Vsc3RlaW4gd2FlY2hzdCBhdXMgZGVtIEdlc3RlaW4gZW1wb3IuCiBEdSBrbnVkZGVsc3QgS2llc2Vsc3RlaW4uCiBbLi4uXQogRHUgc2Fnc3Q6IFdhcyBwYXNzaWVydCB3ZW5uIG1hbiBkZW4gYW5ncmVpZnQ/CiBEdSBiaXR0ZXN0IEtpZXNlbHN0ZWluIHVtIEdydWVuZHVuZyBlaW5lcyBUZWFtcy4KIFtUZWFtIDU6XSBTb2xteXIgd3VyZGUgaW5zIFRlYW0gYXVmZ2Vub21tZW4uIAogW1RlYW0gNTpTb2xteXJdIG5hIGRhbm4gbWFsIHJhdWYgZGEgOikKIEtpZXNlbHN0ZWluIHNhZ3Q6IHN0dXBzdCBuaWNodAogW1RlYW0gNTpTb2xteXJdIGVnYWwsIHJhdWYgZGEgOikKIFtBbGxnZW1laW46R3JpbW1hbl0gLXRvZCsgPDAxOjIwOjI2PgogS2llc2Vsc3RlaW4gcmljaHRldCBzZWluZSBBdWZtZXJrc2Fta2VpdCBhdWYgTGFycy4KIEtpZXNlbHN0ZWluIGdyZWlmdCBMYXJzIG1pdCBlaW5lbSBTY2h3ZXJ0IGFuLgogS2llc2Vsc3RlaW4gdHJpZmZ0IExhcnMgc2VociBoYXJ0LgogS2llc2Vsc3RlaW4gdmVyc2NobWlsenQgbWl0IGRlbSBHZXN0ZWluLgogTGFycyBmYWVsbHQgdG90IHp1IEJvZGVuLgogW0FsbGdlbWVpbjpTb2xteXIgcm90Zmx0XQogW0FsbGdlbWVpbjpHcmltbWFuXSBqYWphIC4uLiBudSBoYXN0ZSA0MCBNaW51dGVuIFplaXQgS2llc2VsIDopCiBbLi4uXQogSnVycnkgdGVpbHQgRGlyIG1pdDogaG1tIHdpZWRlciBiaXR0ZW4gWzAxOjIxXQogRHUgdGVpbHN0IEp1cnJ5IG1pdDogSWNoIGthbm4gZGVuIHRvdGVuIExhcnMgbmljaHQgYml0dGVuICpHR0cqCiBKdXJyeSB0ZWlsdCBEaXIgbWl0OiB0b2QgPyBbMDE6MjFdCiBEdSB0ZWlsc3QgSnVycnkgbWl0OiBKbyA6KQogPiBKdXJyeSB0ZWlsdCBEaXIgbWl0OiBhcmdsIGJpbiBpbiBkZXIgaG9lbGxlIFswMToyMV0KIER1IHRlaWxzdCBKdXJyeSBtaXQ6IEpvLCBkYXMgZGF1ZXJ0IGJpcyBMYXJzIHdpZWRlcmtvbW10ICpHKgogW0FsbGdlbWVpbjpTb2xteXJdIEljaCBrb21tIGRhbm4gaW4gZWluZXIgU3R1bmRlIHdpZWRlciB1bmQgaG9sIGRpY2ggYWIsCiBbQWxsZ2VtZWluOlNvbG15cl0gS2llc2VsIDopICpHR0cqCgpTb2wqIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFN0YXRpIGluIE1TIGFtIDI2LjMuMjAwMSAoTWVuYWNlLCAyNy4gTWFyIDIwMDEsIDAyOjAzOjA3KToKfiMhIG9uPU1lbmFjZSBvdD05ODU2NTEzNTkgb2c9dHJlZmZlbgp+IyEgcm49VmFybGFyaW9uIHJ0PTk4NTYyOTQ3NSByZz10cmVmZmVuCn4jISB0aWQ9OTg1NTU4NTI5CkRhcyB3aXJkIGFiZXIgc2VsdHNhbSBhdXNzZWhlbiwgd2VubiBudXIgOTUlIHZvbiBEaXIgZGEgc2luZC4KCk1lbmFjZSAqZnJhZ3Qgc2ljaCB3ZWxjaGUgNSUgZGEgZmVobGVuIHdlcmRlbioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFN0YXRpIGluIE1TIGFtIDI2LjMuMjAwMSAoVmFybGFyaW9uLCAyNy4gTWFyIDIwMDEsIDAyOjQ2OjUzKToKfiMhIHJuPU1lbmFjZSBydD05ODU2NTEzODcgcmc9c2NobWFycm4KfiMhIHRpZD05ODU1NTg1MjkKR3V0ZSBGcmFnZSwgaWNoIHN1Y2ggc2llIGF1Y2ggc2Nob24gZGllIGdhbnplIFplaXQsIGthbm5zdCBtaXIgamEgaGVsZmVuLAp3ZW5uIER1IG1hZ3N0IDspCgpWYXJsLCA5NSVpZ2VyIEJsaW5kZW5odW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEcmVhbWVyLCBhbHNvIG5laW4hIChTd290bCwgMjguIE1hciAyMDAxLCAwMDo1NzowOCk6CkRyZWFtZXIgZ2VodCBnYW56IGNvb2wgYXVmIGRpZSBUb2lsZXR0ZS4KRHJlYW1lciBoYXQgRGljaCBlaXNrYWx0IGVyd2lzY2h0LgoKRWlza2FsdD8gSG1tLi4ud29obCBlaGVyIHBpc3N3YXJtPwpJZ2l0dC4KClN3b3RsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzAzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChGYW50YWdoaXJvLCAyOC4gTWFyIDIwMDEsIDEzOjE0OjM2KToKfiMhIHJuPVBpdGZhbGwgcnQ9OTg1Nzc4MDYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmtsYXIsIGVpZ2VuaGFlbmRpZ2VzIHZvbGxzY3JpcHQgKD0gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzAzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDI4LiBNYXIgMjAwMSwgMTM6MTQ6NDYpOgp+IyEgcm49SHVtbmkgcnQ9OTg1Nzc4MDcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkdyaW1tYm9ybiBtdXNzIGdsZWljaCBtYWwgZGllIExvZXNjaG1hc2NoaW5lIGFud2VyZmVuCm5uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzA0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChGYW50YWdoaXJvLCAyOC4gTWFyIDIwMDEsIDEzOjE1OjAxKToKfiMhIHJuPVNvbG15ciBydD05ODU3NzgwODYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKYWJlciBuaWNoIGJldm9yIGFuYXRvbCBkaWUgZ3JhZmlrIGdldXBkYXRlZCBoYXQgIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTcwNDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoU29sbXlyLCAyOC4gTWFyIDIwMDEsIDEzOjE1OjA3KToKfiMhIHJuPVNvbG15ciBydD05ODU3NzgwODYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKVW5kIGVyIGlkbGV0LCBhcmdsClVuZCBlciBpZGxldCwgYXJnbAoKU29sKiwgZG9wcGVsdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTcwNTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyOC4gTWFyIDIwMDEsIDEzOjE3OjExKToKfiMhIHJuPVNvbG15ciBydD05ODU3NzgxMDcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRmFudGFnaGlybyB3aXJkIGxhbmdzYW0genVyIEFiZ3JlaWZlcmluLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzA2OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChGYW50YWdoaXJvLCAyOC4gTWFyIDIwMDEsIDEzOjE3OjMxKToKfiMhIHJuPUFuYXRvbCBydD05ODU3NzgyMzEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKaWNoIHNwZW5kZSBhYmVyIGF1Y2ggaW1tZXIgbWFsIHdpZWRlciB3YXMgISAoPSAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3MDY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFNvbG15ciwgMjguIE1hciAyMDAxLCAxMzoxNzo0Myk6Cn4jISBybj1BbmF0b2wgcnQ9OTg1Nzc4MjMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkRhcyBzaWVodCB3b2hsIHNvIGF1cyA6KSBCZXNvbmRlcnMgZGV1dGxpY2gsIHdlbm4gbWFuIGRlbiBOYW1lbiBoaWdobGlnaHRldCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXJ3YXJ0ZSB1bmQgVG9kZSAuLi4gKFNvbG15ciwgMjguIE1hciAyMDAxLCAxMzozMjoyMik6CiBbLi4uXQogW1RvZDpMYXJzXSBFaW4gV2Fzc2VydW53ZXNlbiBoYXQgZ2VyYWRlIEVsZGFyb24gdW1nZWJyYWNodC4KIEVsZGFyb24gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCiBbZmFsc2NoIV0KIEVsZGFyb24gICBXIEEgUiAgIEcgIFIgIEEgIEQgICAgRCBBICEhIQoKU29sKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTcwODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSmFtZXNvbiwgMjguIE1hciAyMDAxLCAxNDo0MTo1MCk6Cn4jISBybj1BbmF0b2wgcnQ9OTg1Nzc4NDM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CltUb2Q6TGFyc10gRWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWwgaGF0IGdlcmFkZSBQaXRmYWxsIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWxdIFBmZmZmZmZmZmZmZnQuLi4uLi4uUExVTVBTIQpbVG9kOlBpdGZhbGxdIEljaCBnZWggZGFubiBtYWwgZWluZW4gdHJpbmtlbgoKakFtZXNvbiwgZnJhZ3Qgc2ljaCAuIG8gTyAodWViZW4gZnVlciBkaWUgemljaCBIZWt0b2xpdGVyIGF1ZiBkZXIgUGFydHk/KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGFyYURyYWsqIHVuZCBuaWUgd2llZGVyIHp1cnVlY2sgKFNvbG15ciwgMjguIE1hciAyMDAxLCAxNDo0MzowNyk6CiBEZWluIEZyZXVuZCBQaXRmYWxsIHRlaWx0IERpciBtaXQ6IGthbm4gbWljaCBtYWwgZWJlbiB3ZXIgaW4gcGFyYSBuYWNoCiBEZWluIEZyZXVuZCBQaXRmYWxsIHRlaWx0IERpciBtaXQ6IGRyYWtvbmllbiBicmluZ2VuPyBpY2ggYmluIGdyYWQgc2NyaXB0bG9zCiBEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogSWVoLCBuZSBKdW5nZnJhdSA6KSAqRyoKIERlaW4gRnJldW5kIFBpdGZhbGwgYnJ1bW1lbHQgYXVzIGRlciBGZXJuZS4KIERlaW5lIEZyZXVuZGluIExpYXJhIHZlcnBhc3N0IFNvbG15ciBlaW4gdmFsaXVtIGF1cyBkZXIgRmVybmUuCiBQaXRmYWxsIHRlaWx0IERpciBtaXQ6IGthbm5zdCBkdSBtaWNoIG1hbCBpbiBwYXJhIG5hY2ggZHJha29uaWVuIGJyaW5nZW4/CiBEdSB0ZWlsc3QgUGl0ZmFsbCBtaXQ6IEhhYiBkYSBrZWluIFNjcmlwdCBoaW4uLi4KIFBpdGZhbGwgdGVpbHQgRGlyIG1pdDogaWNoIGF1Y2ggbmljaHQgLiAuIC4gbmljaHQgbWVociBbMTQ6MzRdCiBbLi4uXQogW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbCBoYXQgZ2VyYWRlIFBpdGZhbGwgdW1nZWJyYWNodC4KIFtUb2Q6RWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWxdIFBmZmZmZmZmZmZmZnQuLi4uLi4uUExVTVBTIQogW1RvZDpQaXRmYWxsXSBJY2ggZ2VoIGRhbm4gbWFsIGVpbmVuIHRyaW5rZW4KClNvbCwgZGVyIFBsdW1wcyBpc3QgZGFzIFppZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQYXJhRHJhayogdW5kIG5pZSB3aWVkZXIgenVydWVjayAoUGl0ZmFsbCwgMjguIE1hciAyMDAxLCAxNDo0Mzo1MSk6Cn4jISBybj1Tb2xteXIgcnQ9OTg1NzgzMzg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg1NzgzMzg3CmljaCBzYWcgZGEgbml4IHp1IGF1c3NlciA6CgppY2ggd2lsbCBfbWVpbmVfIHNjcmlwdGUgd2llZGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzA4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChHcmltbWJvcm4sIDI4LiBNYXIgMjAwMSwgMTQ6NTQ6MDMpOgp+IyEgcm49QW5hdG9sIHJ0PTk4NTc3ODQzNCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApNYWNoZW4gd2lyIGRvY2ggc3Bhc3Nlc2hhbGJlciBub2NoIGVpbiBiYWNrdXAuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSaXR0ZXJndXQgKEdyaW1tYm9ybiwgMjguIE1hciAyMDAxLCAyMDoyOTo0Mik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTg1ODA0MTc0IG9nPWQuZWJlbmUKfiMhIHJuPUFyayBydD05ODU4MDM5NDcgcmc9ZC5lYmVuZQp+IyEgdGlkPTk4NTQ4MDIyMQpLb21tdCBtaXIgYmVrYW5udCB2b3IuCkFtZWlzZW4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFJpdHRlcmd1dCAoQXJrLCAyOC4gTWFyIDIwMDEsIDIwOjQ3OjI1KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODU4MDQxODIgcmc9c2NobWFycm4KfiMhIHRpZD05ODU0ODAyMjEKSG0sIGVoZXIgQnVlY2hlci4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzA5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChCaWVsZWZlbGQsIDI4LiBNYXIgMjAwMSwgMjI6NTE6MTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4NTc4NDA0MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOYSBzY2hvZW4sIGpldHp0IGlzdCBkaWUgUnVicmlrIGxlZXIuIFVuZCB3aWUgZ2VodHMgd2VpdGVyPyA6KQoKLUJpZWxlZmVsZCAoZW50c2V0enQgb2IgZGVyIFN0aWxsZSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3MTA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEZhbnRhZ2hpcm8sIDI4LiBNYXIgMjAwMSwgMjI6NTE6NDUpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTk4NTgxMjY3NiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp3ZWlzcyBuaWNoLi4uIHNjaGxhZyBkdSBkb2NoIG1hbCBuZW4gdGhlbWEgdm9yLi4uIAoKRmFudGEqIC0gYnJ1bW1lbmQuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTcxMTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hdG9sLCAyOC4gTWFyIDIwMDEsIDIzOjQ3OjEzKToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTg1ODEyNzA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClRIRU1BPyA6KSBXaXIgdmVyYnJhdGVuIGhpZXIgZG9jaCBudXIgaW5oYWx0c2xvc2VuIEJsb2Vkc2lubiB1bmQgd2VyZGVuCnNjaG9uIHZvbiBhdXNnZXN1Y2h0ZW4gTGV1dGVuIGtvbXBsZXR0IGlnbm9yaWVydCAtIGRhbWl0IG1hbiBkaWUgTWVsZHVuZ2VuCmRlciBaZWl0dW5nIG5pY2h0IG1laHIgc2llaHQuIDopIEJpdHRlLCB3ZXIgYnJhdWNodCBkYSBub2NoIEluaGFsdD8KCldpciBrb2VubnRlbiBuYXR1ZXJsaWNoIGF1Y2ggc2lubmxvcyBkaXNrdXRpZXJlbi4KClVlYmVyLi4uCgotIENhc3RvciwgV2lkZXJzdGFuZCwgU3RldWVyZ2VsZGVyCgotIENlbGxhciwgSGFubmlnYW4sIERpZS1CcmF1bmhhYXJpZ2UtRG9vZmUtZGVyZW4tTmFtZW4tbWlyLWVudGZpZWwKCi0gUlRMLCBQUiwgTm8gQW5nZWxzCgotIEZyYXVlbiwgRnJhdWVuLCBGcmF1ZW4KCi4uLiBvZGVyIHNvCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTcxMjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoR3JpbW1ib3JuLCAyOC4gTWFyIDIwMDEsIDIzOjUxOjEyKToKfiMhIHJuPUFuYXRvbCBydD05ODU4MTYwMzMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQWxzbyBDYXN0b3IgaXN0IHNjaGxpbW0uIERhcyBzaW5kIEJpbGRlciBkaWUgd2lya2xpY2ggbWFsIGRhcyBCaWxkIHZvbiBkZXIKUG9saXplaSBhbHMgRnJldW5kIHVuZCBIZWxmZXIgdW50ZXJzdHVldHplbi4gCkphLCBkaWUgTGV1dGUgd2FyZW4gamEgdm9uIEdlc2lubnVuZ3NnZW5vc3NlbiBhbiBkaWUgR2xlaXNlIGJldG9uaWVydCB3b3JkZW4KdW5kIGtvbm50ZW4gbnVyIHZvbiBkZXIgUG9saXplaSBnZXJldHRldCB3ZXJkZW4uIERhZ2VnZW4gc2luZCBkaWUgQmV0b25zY2h1aGUKZGVyIE1hZmlhIHp1bSBUYXVjaGVuIGVpbiBLaW5kZXJrcmFtLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzEzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDI5LiBNYXIgMjAwMSwgMDA6MjA6MzEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4NTgxNjI3MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApNYW4gc3RlbGxlIHNpY2ggdm9yLCBkZXIgQ2FzdG9yIGhhZXR0ZSBkYW5uIGRvY2ggZWluZSBhbmRlcmUgUm91dGUKZ2Vub21tZW4gb2RlciB3YWVyZSB2b3JoZXIgZnVlciAyIFRhZ2Ugc3RlaGVuZ2VibGllYmVuLi4uIFdlciBoYWV0dGUKZGllc2UgIkhlbGRlbiIgZGFubiBhdXMgaWhyZXIgc3RlaW5oYXJ0ZW4gRGlsZW1tYSBiZWZyZWl0PwoKR2VuYXUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChGb29iYXIsIDI5LiBNYXIgMjAwMSwgMDE6MzE6MTcpOgpbQWJlbnRldWVyOlV6aWVsXSB3aWUgYmVmcmVpIGljaCBtaWNoIGF1cyBlaXN3YXNzZXI/PwpbQWJlbnRldWVyOkFuYWNyaW9uXSBlbmRlCltBYmVudGV1ZXI6VXppZWxdIGhpbGYKW0FiZW50ZXVlcjpBbmFjcmlvbl0gc29uc3QgbGFycwpbVG9kOkxhcnNdIEVpbiB6dWdlZnJvcmVuZXIgV2VpaGVyIGhhdCBnZXJhZGUgVXppZWwgdW1nZWJyYWNodC4KW1RvZDpFaW4genVnZWZyb3JlbmVyIFdlaWhlcl0gSGV5LCBkYXMgRWlzIGlzdCBzY2h1bGQhIEVzIHdhciB3b2hsIGVpbmZhY2gKW1RvZDpFaW4genVnZWZyb3JlbmVyIFdlaWhlcl0gbmljaHQgc3RhYmlsIGdlbnVnLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRpcHMgZnVlcnMgTGViZW4uLi4uLiAoSHVtbmksIDI5LiBNYXIgMjAwMSwgMTI6NDU6MTkpOgpbQWxsZ2VtZWluOlNjaGxlaWNoZXJdIHJpazogc2NobGFnIGRpZSB0YXN0YXR1ciBtYWwgZHJlaW1hbCBnZWdlbiBkZWluZW4KW0FsbGdlbWVpbjpTY2hsZWljaGVyXSBzY2hhZWRlbCBlbnR3ZWRlciBmdW56dCBzaWUgZGFubiB3aWRlciBvZGVyIGRpciBpc3QgZXMKW0FsbGdlbWVpbjpTY2hsZWljaGVyXSBlZ2FsCltBbGxnZW1laW46UmlrXSBnZWh0IHdpZWRlciwgZGFua2UuLi4gOikKCgpIbW0uLi5tZXJrZW4gOy0pCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RyaWtlISAoQ3JvZnQsIDI5LiBNYXIgMjAwMSwgMTQ6NTk6MzgpOgpKZW1hbmQgbGFlc3N0IGVpbmVuIFN0aW5rZWZ1cnogZmFocmVuLgpGdWVyY2h0ZXJsaWNoZXIgR2VzdGFuayBlcmZ1ZWxsdCBkZW4gUmF1bS4KSmVtYW5kcyBGdXJ6IHN0aW5rdCB3aXJrbGljaCBncmF1ZW5lcnJlZ2VuZC4KRHUgZnVlaGxzdCBlaW4gR3J1bW1lbG4gaW4gZGVpbmVtIEJhdWNoLgpEdSBmdXJ6dCBoZW1tdW5nc2xvcy4KPiBlcmRiZWJlbgpEdSBrbmllc3Qga3VyeiBuaWVkZXIgdW5kIGtsYXRzY2h0IG1pdCBkZW4gSGFlbmRlbiBhdWYgZGVuIEJvZGVuLgpQbG9ldHpsaWNoIGJlZ2lubnQgZGllIEVyZGUgenUgYmViZW4uCkV0d2FzIGZhZWxsdCB2b24gZGVyIERlY2tlIHVuZCB0cmlmZnQgRGljaC4KRHUgaGFzdCBqZXR6dCAxOTQgTGViZW5zcHVua3RlIHVuZCAyMjYgS29uemVudHJhdGlvbnNwdW5rdGUuCiAgRHUgemVyc3RhZXVic3QgSmVtYW5kZW4uCkR1IGhvZXJzdCBlaW5lbiBsZXR6dGVuIEZ1cnosIGRvY2ggZXIgc3Rpbmt0IG5pY2h0LgoKRGllIFJhY2hlIHdhciBtZWluIDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJlcmxpbiAtIFJ1ZGVsbXVkZGVuIChBbWFyeWxsaXMsIDMwLiBNYXIgMjAwMSwgMDA6Mjk6NDQpOgp+IyEgcm49R2xvaW5zb24gcnQ9OTg1OTA0ODYzIHJnPXRyZWZmZW4KfiMhIHRpZD05ODU5MDQ4NjMKaGFidCBpaHIgd2llZGVyIG5lbiBCYWdnZXJmYWhyZXIgZ2VwYWNodGV0LCBkZXIgc2ljaCB1ZWJlciBkaWUgU3RyaXBwZW4KaGVybWFjaHQ/IDopCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRlcm1pbmF0b3IgKEFtYXJ5bGxpcywgMzAuIE1hciAyMDAxLCAwMDo0ODo0Mik6Cn4jISBybj1XdXJ6ZWwgcnQ9OTg1OTA2MDYyIHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9OTg1ODk1MTA4CnNjaGFkZS4KCmljaCBob2ZmZSBzY2hvbiwgZGVyIFRlcm1pbmF0b3IgaGFldHRlIHNpY2ggZGFtaXQgc2VsYnN0IHRlcm1pbmllcnQgOikKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFRlcm1pbmF0b3IgKFd1cnplbCwgMzAuIE1hciAyMDAxLCAwMTowMDoxMSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9OTg1OTA2MTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg1ODk1MTA4CmxlaWRlciBnZWh0IGRhcyBuaWNodCBzbyBlaW5mYWNoLCBkYSBicmF1Y2h0IGVzIHNjaG9uIGRpZSBnZWVpZ25ldGUKc2Nocm90dHByZXNzZS4KCnd1cnplbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVocmxhdWIgKEdsb2luc29uLCAzMC4gTWFyIDIwMDEsIDEwOjA4OjQ2KToKfiMhIHJuPVdpbGxvdyBydD05ODU5MzUwMDYgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTk4NTkzNTAwNgpHbG9pbihzb24pIGdpYnQgV2lsbG93IGVpbmUgRmFja2VsIGZ1ZXIgZGllIFplaGVuIG1pdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnByZWNvZ25pdGl2ZXMuLi4gKEdlaXN0LCAzMC4gTWFyIDIwMDEsIDE1OjI5OjMzKToKLi4uIHRlaWx0IERpciBtaXQ6IGhhc3QgZHUgZGF6dSB0b3dlcnMgZXJsYXViaXM/IGVpbmZhY2ggc28gc2VpbmUKLi4uIHRlaWx0IERpciBtaXQ6IHByaXZhdC1ucGNzIHdlZ2tsb3BwZW4uLi4KClsuLi5dCgpbU2VoZXI6T3JrdG9ldGVyXSBJY2gga2FubnMgamEgbmljaHQgZmFzc2VuLiBEZXIgR2Vpc3QgZGVyIHN0ZXRzIHZlcm5laW50IHVuZApbU2VoZXI6T3JrdG9ldGVyXSBzaWNoIGltbWVyIHNvIGRhcnVlYmVyIGVjaGF1ZmZpZXJ0IGhhdCwgZGFzIFRvd2VyIGluIGRlcgpbU2VoZXI6T3JrdG9ldGVyXSBXb2xrZW5lYmVuIGdlbWV0emVsdCBoYXQsIGp1c3RhbWVudGUgZGllc2VyIEdlaXN0IGhhdCBzaWNoCltTZWhlcjpPcmt0b2V0ZXJdIG51biBzZWxiZXIgZG9ydCB2ZXJsYXVmZW4gdW5kIGZpbmRldCBuaWNodCBtZWhyIGhlcmF1cy4uLgpbU2VoZXI6T3JrdG9ldGVyXSBWaWxlaWNodCBzb2xsdGUgVG93ZXIgbWFsIHp1IHNlaW5lciBSZXR0dW5nIGVpbGVuLi4uCgoqV0VJTiogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhaHJzYWdlcmluIEFtYSogKEFtYXJ5bGxpcywgIDEuIEFwciAyMDAxLCAyMjo0OTozMyk6CltDaGFvczpXdW1dIFRPVCBBTExFTiBDSEFPU01BR0lFUk4hCltDaGFvczpUd2VlZ10gYWJlciBhYmVyIDopCltDaGFvczpWYW5pb25dIEdlbmF1LCBsb2VzY2h0IHNpZSBhbGxlIQpbQ2hhb3M6UmFuaV0gam8uCltDaGFvczpBbWFyeWxsaXMgd2llZ3QgYmVkYWVjaHRpZyBpaHIgd2Vpc2VzIEhhdXB0Ll0KW0NoYW9zOkdsb2luc29uIGJyaWNodCBpbiBzY2hhbGxlbmRlcyBHZWxhZWNodGVyIGF1cy5dCltDaGFvczpNdXBmZWxdIG11c3MgZXMgbmljaHQgIndlaXNzZXMiIGhlaXNzZW4/CltDaGFvczpBbWFyeWxsaXNdIGtsYWJiZSBtdXBmLgp4eHggdGVpbHQgRGlyIG1pdDogREFOS0UgISBkYXMgd2FyIGRlcyBiZXN0ZSB3YXMgaGV1dCB3ZXIgZ2VzYWd0IGhhdAp4eHggdGVpbHQgRGlyIG1pdDogISEhIQpbQ2hhb3M6UmFuaV0gd2F0IHNpY2ggaGV1dHp1dGFnZSBzbyBhbGxlcyBhbHMgd2Vpc2UgYmV6ZWljaG5ldCAuLi4gOy0pCltDaGFvczpWYW5pb25dIEltbWVyIGRpZXNlIEZsdWctS29ib2xkZS4KRHUgdGVpbHN0IHh4eCBtaXQ6IHdhcyBtZWluc3QgZHUgZ2VuYXU/IDopCltDaGFvczpUd2VlZ10gaGV5IHZhbmlvbgpbQ2hhb3M6VmFuaW9uXSBJY2ggbWVpbmUgRWxmZW4uCltDaGFvczpUd2VlZyBmZWl4dC5dCltDaGFvczpWYW5pb25dIEljaCBtZWluZSBGZWVuIC0gbnUgaGFiIGljaHMgLi4uCltDaGFvczpSYW5pXSB6d2VyZ2VucGF1ZXIgOi0pCnh4eCB0ZWlsdCBEaXIgbWl0OiBkZXMgbWl0OiBrbGFiYmUgbXVwZi4gLi4uIGRlcyB3YXIgZWluZmFjaCBkZXMgYmVzdGUKeHh4IHRlaWx0IERpciBtaXQ6IHdhcyBoZXV0IHdlciBnZXNhZ3QgaGF0LiAuLi4gZHUga2FubnN0IGdlZGFua2VuCnh4eCB0ZWlsdCBEaXIgbWl0OiBsZXNlbiAhCnh4eC0+QW1hcnlsbGlzIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCgpBbWEqLCBlcm5ldXQgd2Vpc2Ugbmlja2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYWhyc2FnZXJpbiBBbWEqIChBbmF0b2wsICAxLiBBcHIgMjAwMSwgMjI6NTA6MzEpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTk4NjE1ODE3MyByZz1zY2htYXJybgp+IyEgdGlkPTk4NjE1ODE3MwpEdSBoYWV0dGVzdCBGYW50YWdoaXJvIG5pY2h0IGR1cmNoICJ4eHgiIGVyc2V0emVuIG11ZXNzZW4uLi4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGYWlybmVzcy4uLi4uIChBbmF0b2wsICAyLiBBcHIgMjAwMSwgMTc6MzA6MDcpOgp+IyEgcm49R2FzdDIgcnQ9OTg2MjI1MzI1IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9OTg2MjE2NjA3CkJvbnVzZnJhZ2UgZnVlciBPc3RlcmVpZXJzdWNoZW5kZTogV2VsY2hlIEZhcmJlIGhhdCBkZXIgQWdlbnQ/IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llPz8/IGRlciBUaHJlYWQgaGF0IGVpbiBFbmRlID8gKE1vcmdvdGgsICAzLiBBcHIgMjAwMSwgMDc6MzM6MzgpOgpBbndlc2VuZGUgRXJ3YXJ0ZXRlOiBNb3Jnb3RoIHVuZCBIYXRlLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKRGVyIEdhbWVEcml2ZXIgdGVpbHQgRGlyIG1pdDogRHUgaGFzdCBEZWluZSBGZW5zdGVyZ3JvZXNzZSBhdWYgMjQgWmVpbGVuIHVuZAo4MwpEZXIgR2FtZURyaXZlciB0ZWlsdCBEaXIgbWl0OiBTcGFsdGVuIGdlYWVuZGVydC4gCltubl0KW0RlYnVnOk1QQV0gSGllciBzdGVodCBuaWNodCBtZWhyIGRyaW4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpNKiwgc2Nod2VyIGVyc3RhdW50CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFF1ZXN0cy4gKEdub21lLCAgMy4gQXByIDIwMDEsIDEwOjE0OjE1KToKfiMhIHJuPVpvb2sgcnQ9OTg2MTYzMDczIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD05ODYwODEwNjQKaG1tLApkaWUgaWRlZSBmYW5kIGljaCB3ZWRlciBzY2hsZWNodCBub2NoIGFid2VnaWcuCm51ciBkaWUgYXVzd2FobCB3YXIgZXR3YXMuLi4gYWVobS4uLiB2ZXJiZXNzZXJ1bmdzd3VlcmRpZy4gOikKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2llPz8/IGRlciBUaHJlYWQgaGF0IGVpbiBFbmRlID8gKFpvb2ssICAzLiBBcHIgMjAwMSwgMTI6MzA6MzUpOgp+IyEgcm49TW9yZ290aCBydD05ODYyNzYwMTggcmc9c2NobWFycm4KfiMhIHRpZD05ODYyNzYwMTgKVmllbCBiZW1lcmtlbnN3ZXJ0ZXIgZmluZGUgaWNoIGRpZSBNUEEtTWVsZHVuZy4gOikgCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXaWU/Pz8gZGVyIFRocmVhZCBoYXQgZWluIEVuZGUgPyAoVmFyZGlvbiwgIDMuIEFwciAyMDAxLCAxNjowMjo0Myk6Cn4jISBybj1ab29rIHJ0PTk4NjI5MzgzNSByZz1zY2htYXJybgp+IyEgdGlkPTk4NjI3NjAxOApIbW0gLSBtdWVzc3RlIGRhcyBuaWNodCBlaWdlbnRsaWNoCgpbRW50d2lja2x1bmc6TVBBXSBIaWVyIHN0ZWh0IG5pY2h0IG1laHIgZHJpbi4KCmhlaXNzZW4/IDstKQoKLiBvIE8gKHJpY2h0aWdlIHJ1YnJpaykKClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUuLiAoWmVwaHlyLCAgNC4gQXByIDIwMDEsIDAwOjIxOjM1KToKVGlsbHkgc2FndDogSWNoIGRlcHJpbWllcmUgU3BpZWxlciBuaWNodCBhYnNpY2h0bGljaCA6LSkKCkM0LCBodXN0ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqZyogKEpvaG5ueWJvc3MsICA0LiBBcHIgMjAwMSwgMTI6NDg6MjkpOgpsb2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqZyogKEthZmYsICA0LiBBcHIgMjAwMSwgMjM6MDY6MDgpOgp+IyEgcm49Sm9obm55Ym9zcyBydD05ODYzODEzMDkgcmc9c2NobWFycm4KfiMhIHRpZD05ODYzODEzMDkKcm90ZmxtYW8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxNzE6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYm9ybiwgIDUuIEFwciAyMDAxLCAxMDo1MzoyMSk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4NjQ1NzE4NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJY2ggbWFjaCBtYWwgendlaSByZXBseXMgZHJhdXM6Ck51ciB3ZWlsIHdpciBoZWlyYXRlbiB3ZXJkZW4gc2luZCB3aXIgbm9jaCBsYW5nZSBuaWNodCB2ZXJsb2J0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTcyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChHcmltbWJvcm4sICA1LiBBcHIgMjAwMSwgMTA6NTM6MzUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4NjQ2MDgwMSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApVbmQgZnVlciBtaWNoIGdlaHQgZGVyIFVybGF1YiBuYWNoIEhvbGxhbmQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxNzM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFuYXRvbCwgIDUuIEFwciAyMDAxLCAxMDo1Mzo1Myk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTg2NDYwODE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck1pciBzY2htb2dnbGVkIGFsbGUgbmllZGVyLi4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTc5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChHcmltbWJvcm4sICA1LiBBcHIgMjAwMSwgMTM6MTg6NTcpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODY0NjUzMTUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKU28sIG5hY2hkZW0gaWNoIGVpbiBiaXNjaGVuIFBsYXR6IGdlc2NoYWZmZW4gaGFiZS4uLiBJY2ggZmFocmUgamV0enQgYmlzIG5hY2gKT3N0ZXJuIGluIFVybGF1YiwgYWxzbyBnZWh0IHNvcmdzYW0gbWl0IGRlciBtcGEgdW0gdW5kIGxvZXNjaHQgaW1tZXIgYnJhdiBkaWUKQXJ0aWtlbCBzZWxiZXIsIGdlbGw/IFVuZCB3ZW5uIGljaCB6dXJ1ZWNra29tbWUgd2lsbCBpY2ggZWluIGdlZnVlbGx0ZXMKc2NobWFycm4tby1tZXRlciBzZWhlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE5MjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSHVtbmksICA1LiBBcHIgMjAwMSwgMTQ6MTI6MzApOgp+IyEgcm49SXNpIHJ0PTk4NjQ3MjcwMSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApIZSwgRHUgbXVzc3QgbnVyIHp1ciBQYXJ0eSBrb21tZW4uClVuZCBBcnRpa2VsIFJlIDIyMjIgc2NocmVpYmVuLgpVbmQgc2Nob24ga3JpZWdzdCBEdSBFaXMuCgpVbmQgd2VubiBEdSBuaWNodCB6dXIgUGFydHkga29tbXN0LCBiYXUgaWNoIGVpbmVuIE1vcmRpbGxhciBudXIgZnVlciBEaWNoLi4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE5NDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSHVtbmksICA1LiBBcHIgMjAwMSwgMTQ6MTQ6MjcpOgp+IyEgcm49SXNpIHJ0PTk4NjQ3Mjg0MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApNb21lbnQuLi5pY2ggYmF1IERpciBlYmVuZSBlaW5lbiwgbnVyIGZ1ZXIgRGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOTY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEh1bW5pLCAgNS4gQXByIDIwMDEsIDE0OjE1OjI1KToKfiMhIHJuPUlzaSBydD05ODY0NzI5MTMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRHUgd2lyc3QgbWlyIG5pY2h0IGxhbmdlIGRhbmtlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjIwNzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSHVtbmksICA1LiBBcHIgMjAwMSwgMTc6Mjk6MzYpOgp+IyEgcm49UGl0ZmFsbCBydD05ODY0ODQ1NjMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKamEsIGxhbmcgaXN0cyBuaWNodCBtZWhyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjIwODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoUGl0ZmFsbCwgIDUuIEFwciAyMDAxLCAxNzozMDowNCk6Cn4jISBybj1IdW1uaSBydD05ODY0ODQ1NzYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKZ2VuYXUKdHJpbmsgZGljaCBzY2hvbm1hbCB3YXJtIGh1bW5pICpnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI1MDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoR3Jvc2NoLCAgNS4gQXByIDIwMDEsIDE4OjE4OjA0KToKfiMhIHJuPVBpdGZhbGwgcnQ9OTg2NDg3NDIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmFsbGEgZ3V0LSBkdSBiYWRlbnNlcgpncm9zY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyNTM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyb3NjaCwgIDUuIEFwciAyMDAxLCAxODoyMDowMCk6Cn4jISBybj1QaXRmYWxsIHJ0PTk4NjQ4NzUzNiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApqYW1lc29uIGhhdCBkb2NoIGFsbGEgZ3V0IGdlc2NocmllYmVuIChpY2ggYmVsZWlkaWdlIGlobikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyNTU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEh1bW5pLCAgNS4gQXByIDIwMDEsIDE4OjIyOjA2KToKfiMhIHJuPUphbWVzb24gcnQ9OTg2NDg3NjkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkJhZGVuc2VyIHRyaWZmdCBuaWNodD8KS29taXNjaC4KCkh1bW5pLCBoYXQgaW1tZXIgbm9jaCBuaXgga2FwaWVydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyNTU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyb3NjaCwgIDUuIEFwciAyMDAxLCAxODoyMjozMSk6Cn4jISBybj1KYW1lc29uIHJ0PTk4NjQ4NzY5MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApkYXMgaXN0IG5lIHJpY2h0aWdlIGJlbGVpZGlndW5nIGljaCB3b2huZSBuaWNodCBpbiBiYWRlbiB1bmQgc2Nob24gZ2FyIG5pY2h0CmluIGthcmxzcnVoZSEhCkdyb3NjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2Nob2VuLCB3ZW5uIG1hbiBIdW1vciBoYXQuLi4uIChab29rLCAgNS4gQXByIDIwMDEsIDIwOjI2OjQ1KToKW0FiZW50ZXVlcjpTYXJrb25dIGhhdCBlaWdlbnRsaWNoIGluIGRlbiBsZXR6dGVuIGFjaHQgamFocmVuIGlyZ2VuZHdlciBtYWwKW0FiZW50ZXVlcjpTYXJrb25dIGdlZ2VuIHBldHJ1cyBpbSA0Z3cgZ2V3b25uZW4/IDwyMDoyNTozMT4KW0FiZW50ZXVlcjpTdGFyZmlyZV0gSmEgPDIwOjI1OjQxPgpbQWJlbnRldWVyOlNhcmtvbl0gYWxzbyBzYXJrb24tZ2V3aW5udCB3aXJkIGRhcyBzcGllbCBiZXN0aW1tdCBuaWUgaGVpc3NlbgpbQWJlbnRldWVyOlNhcmtvbl0gPDIwOjI2OjAxPgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlemVwdCBoYWJlbiB3b2xsZW4uLi4uIChab29rLCAgNS4gQXByIDIwMDEsIDIxOjM4OjE3KToKW0FsbGdlbWVpbjpFbmRvcl0gd2FzIG1hY2h0IG1hbiBtaXQgZWluZXIgZWlzbnVzcyA8MjE6Mzc6MjE+CltBbGxnZW1laW46U2NobGVpY2hlcl0gbnVzc2Vpcz8gPDIxOjM3OjQzPgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZXplcHQgaGFiZW4gd29sbGVuLi4uLiAoU2NobGVpY2hlciwgIDUuIEFwciAyMDAxLCAyMTo0NzoyMyk6Cn4jISBybj1ab29rIHJ0PTk4NjQ5OTQ5NyByZz1zY2htYXJybgp+IyEgdGlkPTk4NjQ5OTQ5NwpBbHNvb29vby4uLiBtYW4gbmVobWUgZWluZW4gZ3V0IGFiZ2VoYW5nZW5lbiBTcGllbGVyIGRlciBlaW5lIEVpc251c3MgYmVpIHNpY2gKdHJhZWd0LCBnZWJlIGRpZXNlbiBsYWFhYWFuZ3NhbSBpbiBkZW4gKEhhdXN0aWVyKSBTY2hyZWRkZXIsIGRpZSBkb3J0CnJhdXNxdWVsbGVuZGUgTWFzc2UgZ2lidCBtYW4gaW4gZWluZSBzYXViZXJlIFNjaHVlc3NlbCwgZnVlZ3Qgbm9jaCBldHdhcyAyMApKYWhyZSBhbHRlbiBTaW5nbGUgTWFsdCBXaGlza3kgenUgKGVudHdlZGVyIGluIGRpZSBTY2h1ZXNzZWwsIGJlc3NlciBpbiBzaWNoCnNlbGJzdCkgdmVycnVlaHJlIGFsbGVzIGJpcyBlcyBjcmVtaWcgKG5pY2h0IGZydWNodGlnKSBpc3QsIHVuZCBnZWJlIGVzCmxhbmdzYW0gdW50ZXIgYmVzdGFuZGlnZW0gUnVlaHJlbiBpbnMgS2xvLgpHdXRlbiBBcHBldGl0IQoKU2NobGVpY2hlciBkZXIgSG9iYnlrb2NoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjYwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsICA1LiBBcHIgMjAwMSwgMjM6NDA6NDYpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTk4NjUwMjUwOSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApTY2hvbiB3aWVkZXIgaGF0IEZhbnRhZ2hpcm8gbmVuIFByZWlzIGFiZ2VncmlmZmVuLiBBdXMgUHJvdGVzdCBnaWJ0IGVzIGJpcwpEaWVuc3RhZyBrZWluIFNjaG1hcnJuLW8tTWV0ZXIuIE5hamEsIG9rLCBlcyBnaWJ0IG5vY2ggYW5kZXJlIEdydWVuZGUsIGFiZXIKZGllIHNpbmQgbmljaHQgc28gc3Bla3Rha3VsYWVyLgoKQW5hdG9sIChkZXJ6ZWl0IG5pY2h0IGluIE9TKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSZXplcHQgaGFiZW4gd29sbGVuLi4uLiAoR2xvaW5zb24sICA2LiBBcHIgMjAwMSwgMDY6MDQ6NTIpOgp+IyEgcm49U2NobGVpY2hlciBydD05ODY1MDAwNDMgcmc9c2NobWFycm4KfiMhIHRpZD05ODY0OTk0OTcKSWNoIGRhY2h0ZSBkYXJhdXMgYmVzdGVodCBkZXIgTnVzc2JyZWkgaW4gTmVza2F5YT8gSXN0IGRhcyBLbG8gZWluZSBoZWltbGljaGUKTmVza2F5YS1QaXBlbGluZT8gS29lbm5lbiBTcGllbGVyIGRhIHVudGVybSBQYXNzIGhpbmR1cmNoa3JpZWNoZW4/IEVyc3RpY2tlbgpzaWUgamFlbW1lcmxpY2gsIHdlbm4genUgdmllbGUgTGV1dGUgaW4gV2lsaGVsbXNidXJnIGlocmVuIERydWNrIGFibGFzc2VuPyAuLi4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFJlemVwdCBoYWJlbiB3b2xsZW4uLi4uIChCZW5kZWlnaWQsICA2LiBBcHIgMjAwMSwgMDk6NTc6MTkpOgp+IyEgcm49R2xvaW5zb24gcnQ9OTg2NTI5ODkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg2NDk5NDk3CldFSEUsCmplbWFuZCBwYW50c2NodCBkZW4gTnVzc2JyZWkgaW4gTmVza2F5YSEgRGVyIGlzdCBhdXMgb3J0c2Fuc2Flc3NpZ2VyCkhlcnN0ZWxsdW5nIHVuZCBrb21tdCBnYXJhbnRpZXJ0IG5pY2h0IGF1cyBkZXIgVW50ZXJ3ZWx0IG8uYWUuISEKVW5kIG5laW4sIG5lIFBpcGVsaW5lIGdpYmV0IG5pY2h0IChhdWNoIHdlbm4gZGllIElkZWUgbWl0IGRlbSBFcnN0aWNrZW4gbmV0dAppc3QpLCB1bmQgZGVyIFBhc3Mgd2lyZCBhdWNoIHp1a3VlbmZ0aWcgdWViZXItLCBuaWNodCB1bnRlcndhbmRlcnQhCgpCZW5kZWlnaWQsIHNpY2ggbWl0IGFsbGVuIE1pdHRlbCBOZXNrYXlhIHRvdXJpc3RlbmZyZWkgaGFsdGVuZCB1bmQgZGFzCk5haHJ1bmdzbWl0dGVscmVpbmhlaXRzZ2Vib3QgZHVyY2hzZXR6ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBSZXplcHQgaGFiZW4gd29sbGVuLi4uLiAoR2xvaW5zb24sICA2LiBBcHIgMjAwMSwgMTA6Mjg6MzIpOgp+IyEgcm49QmVuZGVpZ2lkIHJ0PTk4NjU0MzgzOSByZz1zY2htYXJybgp+IyEgdGlkPTk4NjQ5OTQ5NwpJY2ggaGFiIGRhIGVpZ2VudGxpY2ggbmllIE51ZXNzZSBnZXNlaGVuLiBOdXIgQXBlZmVsIHVuZCBzb2xjaGVuIEtyYW1zLgpIbWhtbW0uIEFsc28gYmluIGljaCBub2NoIGFyZyBhbSBad2VpZmVsbiB3YXMgZGllIEhlcnN0ZWxsdW5nIGJldHJpZmZ0LgoKR2xvaW4oc29uKSBwbGFlZGllcnQgZnVlciBlaW5lIFNhdXJpZXJmbHVnbGluaWUgenVtIFBhc3MKKE1pdCBQdGVyb2Rha3R5bGVuLiBJaHIgd2lzc3Qgc2Nob24uIERpZSBpbW1lciBlaW5lbiBQYXNzYWdpZXIgYWxzCiBGbHVnc25hY2sgbWl0bmVobWVuIHVuZCBlaW5lbiBEZWFsIG1pdCBkZXIgQmFuc2hlZSBoYWJlbiAuLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjg2OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChIdW1uaSwgIDYuIEFwciAyMDAxLCAxMTozOTo0Myk6Cn4jISBybj1Jc2kgcnQ9OTg2NTQ5ODIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cldlbm4gQmllbGVmZWxkIGVzc2VuIGdlaHQgZ2lidCBlcyB2ZXJtdXRsaWNoIFBhZGVyYm9ybi4uLm9kZXIgd2FzIGVzc2VuCkdyb3NzdGFlZHRlIHNvPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2V1bGVuLCBuZWluLi4uUGl6emEhIChTb2xteXIsICA2LiBBcHIgMjAwMSwgMTU6MDM6MzgpOgogW1VuZ2VzY2huaXR0ZW5dCiBEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogRGFubiBoYWx0IGVyc3QgUGl6emEgZXNzZW4KIHdlZyBATWFtcGYKIER1IGJpc3QgamV0enQgYWxzIGFid2VzZW5kIGdla2VubnplaWNobmV0LgogSmFtZXNvbiBydWZ0OiBrZXVsdCBpaG4hCiBFbGl6YWJldGggcnVmdDogcmVpc3N0IGlobSBkaWUgYmVpbmUgYXVzKwogQmllbGVmZWxkIHJ1ZnQ6IFdpZXNvIGlobj8KIEFtYXJ5bGxpcyBydWZ0OiBIYWx6ZXQgT2lyZSAgIE1vaWxhIAogRWxpemFiZXRoIHJ1ZnQ6IGhtIHdpZXNvIG5pY2ggaWhuID8/CiBEZWVwQmx1ZSBydWZ0OiBMb2VzY2h0IEV1Y2ggOi0pCiBFbGl6YWJldGggcnVmdDogbm9vb29vb2UKCiBTb2wqLCBrb3Bmc2NodWV0dGVsbmQgdW5kIG1hbXBmZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2V1bGVuLCBuZWluLi4uUGl6emEhIChKYW1lc29uLCAgNi4gQXByIDIwMDEsIDE1OjA4OjA4KToKfiMhIHJuPVNvbG15ciBydD05ODY1NjIyMTggcmc9c2NobWFycm4KfiMhIHRpZD05ODY1NjIyMTgKZGEgaGFzdCBkdSBhYmVyIGRhcyBXaWNodGlnc3RlIHVudGVyc2NobGFnZW4hCnZvciBkYXMgYWxsZXMgZ2Vob2VydCBub2NoOgoKQmllbGVmZWxkIHJ1ZnQ6IE11dXV1dXV1aGhoIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI1NjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSm9obm55Ym9zcywgIDYuIEFwciAyMDAxLCAxNjowNjozNSk6Cn4jISBybj1Hcm9zY2ggcnQ9OTg2NDg3NzUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CipiZXN0YWV0aWd0LCBkYXNzIGdyb3NjaCBuaWNodCBpbSBkcml0dGUtd2VsdC1zdGFhdCBiYWRlbiBzb25kZXJuIGltCmZvcnRzY2hyaXR0bGljaGVtIHN0YWF0IHNjaHdhYmVuIGxlYnQuKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM2MDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoVmFybGFyaW9uLCAgNi4gQXByIDIwMDEsIDE4OjU1OjAwKToKfiMhIHJuPUlzaSBydD05ODY1NzYwMTIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQmlzIHdvaGluIHNlaWQgaWhyIHZlcnNvcmd0PyBiaXMgMjUwMD8KClZhcmwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzYyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChWYXJsYXJpb24sICA2LiBBcHIgMjAwMSwgMTg6NTY6MDApOgp+IyEgcm49RmFudGFnaGlybyBydD05ODY1NzYxMjAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGFubiBnaWJ0cyBmdWVyIGRhcyBSZSAyNjAwIHZvbiBtaXIgbmUgVHVldGUgTW96YXJ0a3VnZWxuLgoKVmFybCwgdGF0c2FlY2hsaWNoIHdhcyBsb3N3ZXJkZW4gd29sbGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM2NTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoVmFybGFyaW9uLCAgNi4gQXByIDIwMDEsIDE4OjU4OjEyKToKfiMhIHJuPUlzaSBydD05ODY1NzYyNjYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQWNoamEsIGZ1ZXIgYWJnZWJyb2NoZW5lIERpYWV0ZW4gb2RlciBHZXdpY2h0c3p1bmFobWUgYmluIGljaApuYXR1ZXJsaWNoIG5pY2h0IHZlcmFudHdvcnRsaWNoIHp1IG1hY2hlbiA7KQoKVmFybCwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzNjY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFZhcmxhcmlvbiwgIDYuIEFwciAyMDAxLCAxODo1ODo1MCk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4NjU3NjI5NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApPY2gsIGluIEhvbGxhbmQgZ2lidHMgZ2FueiBhbmRlcmUgbmV0dGUgIkNhZmVzIiA7KQoKVmFybCwgYXVjaCBtYWwgd2llZGVyIG5hY2ggSG9sbGFuZCB3b2xsZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzY5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChWYXJsYXJpb24sICA2LiBBcHIgMjAwMSwgMTk6MDA6MDQpOgp+IyEgcm49TW9udGFudXMgcnQ9OTg2NTc2MzgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CnNlaXQgd2FubiB3b2huc3QgZHUgaW4gaG9sbGFuZCwgZmFudGE/CgpWYXJsLCBncnliZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM3MjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoVmFybGFyaW9uLCAgNi4gQXByIDIwMDEsIDE5OjAyOjAyKToKfiMhIHJuPUlzaSBydD05ODY1NzY0OTkgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKYWxzbyBpY2ggYmluIGphIG5pY2ggc28gZGVyIHNjaG9rb2xhZGVuZmFuLCBhYmVyIHdlbm4gaWNoIG1pciBtZWluCmtlcmxjaGVuIHNvIGFuc2VoZSwgZGFubiBrb2VubnRlIG1hbiBtb3Vzc2UgYWxzIGRyb2dlIGF1ZmZhc3Nlbi4uLgoKVmFybCwga2ljaGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzNzM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFZhcmxhcmlvbiwgIDYuIEFwciAyMDAxLCAxOTowMjo1NCk6Cn4jISBybj1Nb250YW51cyBydD05ODY1NzY1NTEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKYWJlciBrZWtzZSBtYWcgaWNoIGFscyByYXVjaGVyIGF1Y2ggOykKClZhcmwsIGh1bmdyaWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzNzU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFZhcmxhcmlvbiwgIDYuIEFwciAyMDAxLCAxOTowNDo0Myk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4NjU3NjY2MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApUZWUgaXN0IGF1Y2gga2VpbmUgc2NobGVjaHRlIElkZWUuCgpWYXJsLCBUZWVmYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzNzY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFBpdGZhbGwsICA2LiBBcHIgMjAwMSwgMTk6MDQ6NTgpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTk4NjU3NjY4MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApkdSB3aWxsc3QgZGVuIHRlZSBkb2NoIG51ciByYXVjaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzc3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChWYXJsYXJpb24sICA2LiBBcHIgMjAwMSwgMTk6MDU6MzUpOgp+IyEgcm49SXNpIHJ0PTk4NjU3NjcwMiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApUZWUgcmF1Y2hlbiBpcyBla2xpZy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM3OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoVmFybGFyaW9uLCAgNi4gQXByIDIwMDEsIDE5OjA2OjM1KToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTg2NTc2NzY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClVlYnJpZ2VucywgbWl0IFJlemVwdGVuIGthbm4gaWNoIGRpZW5lbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzgxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChWYXJsYXJpb24sICA2LiBBcHIgMjAwMSwgMTk6MDc6MTkpOgp+IyEgcm49TW9udGFudXMgcnQ9OTg2NTc2ODE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CldhcyByYXVjaHN0IGR1IGF1Y2ggdmVyc2NoaW1tZWx0ZXMgRnJhbnpvc2Vuc3Ryb2g/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzgzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChWYXJsYXJpb24sICA2LiBBcHIgMjAwMSwgMTk6MDc6NDMpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODY1NzY4NTMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKbGFzcyBpY2ggZG9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM4NTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoVmFybGFyaW9uLCAgNi4gQXByIDIwMDEsIDE5OjA4OjIzKToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTg2NTc2ODc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmdlbmF1LCBoYWIgZGEgamEgYXVjaCBtZWluZW4gZWlnZW5lbiBnZXNjaG1hY2sgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzODc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFZhcmxhcmlvbiwgIDYuIEFwciAyMDAxLCAxOTowOTozNSk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4NjU3NjkzNSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAphcHJvcG9zIHN1Y2h0LCBiaXMgZ2xlaWNoIDspCgpWYXJsLCB0ZWVyZmFuZ2VuZCB1bmQgbmljaHQgYXVmaG9lcmVuIGtvZW5uZW5kLCB3ZWRlciBtaXQgZGVtIGVpbmVuLCBub2NoIG1pdApkZW0gYW5kZXJlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM5MDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoVmFybGFyaW9uLCAgNi4gQXByIDIwMDEsIDE5OjIwOjQwKToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTg2NTc3MTc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CnNvZGVsZSwgaWNoIHZlcnppZWggbWljaCB3aWVkZXIgaW5zIEFMLCBtYWwgd2FzIHNpbm52b2xsZXMgdHVuIDspCgpWYXJsLCB3aW5rZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzkzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsICA2LiBBcHIgMjAwMSwgMjE6MDU6MDApOgp+IyEgcm49RmFudGFnaGlybyBydD05ODY1ODE4OTkgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKIFppdGF0OgogUmUgNTAwMCBEaXZlcnNlIE11ZGRlciBlbnR3aWNrZWxuIEFnZ3Jlc3Npb25lbiBnZWdlbiBTY2hhcnJucG9zdGVyIDspCiBTY2hhcnJuPyBJc3QgZGFzICduZSBuZXVlIEJveWdyb3VwIG9kZXIgd2llPwoKIFNvbCosIGR1c2NoZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUb2QgYXVmIEtvbW1hbmRvIChCaWVsZWZlbGQsICA3LiBBcHIgMjAwMSwgMTQ6NDU6MTEpOgpVbmdlc2Nobml0dGVuOgoKW0FiZW50ZXVlcjpEZXJ0c10gbG9zIG5pYmJlbHQgbWl0IG1pciBhYiA6KQpbVG9kOkxhcnNdIEFsYmVyaWNoIGhhdCBnZXJhZGUgRWxpemFiZXRoIHVtZ2VicmFjaHQuCgpCaW4gbWFsIGdlc3Bhbm50LCB3aWUgZGFzIHdlaXRlcmdlaHQuLi4gOi0pCgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUb2xsIGRpZSBLbGVpbmVuIChQZXN0LCAgOC4gQXByIDIwMDEsIDAzOjUzOjE1KToKRW5kbGljaCBob2VydCBtYWwgZWluZXIgZHJhdWY6CgpbWmF1YmVyZXI6UGVzdF0gaGllciBlaW5lciB2b24gTHVncyBndXRlbiBSYXRzY2hsYWVnZW46IExPRVNDSCBESUNIIQo+IFtaYXViZXJlcjpIYXVrZV0gcGVzdCB5dXAuCgpTY2hvZW4sIGthbm4gaWNoIGphIHdpZWRlciBnZWhlbgpQZXN0IGkuQS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0MDA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFd1cnplbCwgIDguIEFwciAyMDAxLCAxNDo1OToyNCk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4NjcyNDg0NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApobSwga2F1bSBpc3QgbWFuIG1hbCBlaW4gcGFhciB0YWdlIGF1ZiBhY2hzZSwgc2Nob24gd2VyZGV0IGlociBtdWVkZS4uLgpkaWUganVnZW5kIHZvbiBoZXV0ZSBpc3QgaXJnZW5kd2llIGF1Y2ggbmljaHQgbWVociBkYXMgOikKCnd1cnplbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2Vpc3Rlci4uLiAoRm9vYmFyLCAgOC4gQXByIDIwMDEsIDIzOjIyOjIzKToKSHVpLUJ1aCBzYWd0OiBKYSwgd2lyIGhhYmVuIGhpZXIgZWluIEZlc3R1bmdzZ2VzcGVuc3QuIEVzIGhlaXNzdCBIdWktQnVpaC4KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWx0IGFiYmEgaW1tZXJ3aWVkZXIgZ3V0IC4uLiAoSGlnaHQsICA5LiBBcHIgMjAwMSwgMDA6MTM6NDMpOgpJbWRhICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkVpbiBlbnRzZXR6bGljaGVyIFNjaHJlaSBoYWxsdCB2b20gRnJpZWRob2YgaGVydWViZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQxMTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRWxiZXJldCwgIDkuIEFwciAyMDAxLCAwMDoxNzo1MCk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Njc2ODIwNiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApzaW5kIGRlbm4gaHVlYnNjaGUgTWFlZGVscyB6dSBzZWhlbj8KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0MTM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEVsYmVyZXQsICA5LiBBcHIgMjAwMSwgMDA6MTk6MzEpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODY3NjgzMDQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKIGhtbSwgdmllbGxlaWNodCBzb2xsdGUgaWNoIGRhIHJlaW5nZWhlbiA7KQoKRWxiaSAqbXVoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDE1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChFbGJlcmV0LCAgOS4gQXByIDIwMDEsIDAwOjIxOjIxKToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTg2NzY4NDEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cm9jaCwgd2llIGljaHMgbmNpaHQgbWFjaGVuIHNvbGx0ZSwgZGFzIHdlaXMgaWNoIGd1dCBnZW51ZyA7KQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQxNzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRWxiZXJldCwgIDkuIEFwciAyMDAxLCAwMDoyMjozNik6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Njc2ODUxNiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAppY2ggd2Vpc3MgbmljaHQgOykKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZlaW5kc2VsaWdrZWl0ZW4gPyEgKENyaXR0ZXIsICA5LiBBcHIgMjAwMSwgMTM6MjQ6NDQpOgpQeXJkYWNvciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKTGlhcmEgcnVmdDogZ3JhdHMgcmFuZG9sZgpBbmFjcmlvbiBydWZ0OiBHUkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVRTIDotKQpSYW5kb2xmIHJ1ZnQ6IEUgTiBEIEwgSSBDIEggICBHRVNDSEFGRlQhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvc28gKEpvaG5ueWJvc3MsICA5LiBBcHIgMjAwMSwgMTU6NTc6NTgpOgpMZXlpZGFzIHNhZ3Q6IEljaCBzYWd0ZSBTdG9wIQpMZXlpZGFzIHNhZ3Q6IFdlbm4gaWNoIHNhZ2UgU3RvcCwgZGFubiBtZWluIGljaCBkYXMgYXVjaCwgaXN0IGRhcyBrbGFyPyAKW01vZXJkZXI6U3dvdGxdIE5vZS4KCgppbnRlcmVzc2FudC4uLgpqYgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ3MzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoUGl0ZmFsbCwgIDkuIEFwciAyMDAxLCAxODoyOTo0Nik6Cn4jISBybj1Tb2xteXIgcnQ9OTg2ODMzNzcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmdlbmF1CnVuZCBkaWUgd2VyYnVuZyBhdWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDkzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChHcmltbWFuLCAgOS4gQXByIDIwMDEsIDIxOjE4OjM5KToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTg2ODQzODc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmljaCBuZWhtIGlobiA6KQoKR3JpbU1hbiAtLS0gc2FldWZ0IGFsbGVzIHdhcyBkcmVodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ5NDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoUGl0ZmFsbCwgIDkuIEFwciAyMDAxLCAyMToxODo0OSk6Cn4jISBybj1HcmltbWFuIHJ0PTk4Njg0MzkxOSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp0ZWlsZW4gd2lyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ5NzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoUGl0ZmFsbCwgIDkuIEFwciAyMDAxLCAyMToyMDoyMCk6Cn4jISBybj1HcmltbWFuIHJ0PTk4Njg0Mzk5NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp3aWUgZ2VzYWd0IG1hIGd1Y2tlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjUwMjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoUGl0ZmFsbCwgIDkuIEFwciAyMDAxLCAyMToyMTo0MCk6Cn4jISBybj1HcmltbWFuIHJ0PTk4Njg0NDA4NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApkdSBiZWtvbW1zdCB3YXMgYWIKdmllbGxlaWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjUxMzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTW9udGFudXMsICA5LiBBcHIgMjAwMSwgMjE6NDY6MTEpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODY4NDU0MTMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGFzIGlzdCBlY2h0ZXIgU2NobWFycm46Cgo8cXVvdGUgb24+CkhhbGxvLgoKS29lbm50ZSBiaXR0ZSBlaW5lciBkZXIgSExQcywgZGllIGRlciBOUEMtQmFsYW5jZSBiZWZvaGxlbiBoYWJlbiBkaWUgTWVsZHVuZ2VuCmF1ZiAtbW9lcmRlciB6dSBrdWVyemVuLCBkYWZ1ZXIgc29yZ2VuLCBkYXNzIHNjaG1hcnJuIHdpZWRlciBsZXNiYXIgd2lyZD8KCkRhbmtlLgoKRm9vYmFyCjxxdW90ZSBvZmY+CgpBTEwgWU9VUiBTQ0hNQVJSTiBBUkUgQkVMT05HIFRPIFVTIQooZGEgbnV0enQgcG9zdGVuIGluIGVpbmVyIGFuZGVyZW4gUnVicmlrIGdhciBuaXghKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjUxNDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSHVtbmksICA5LiBBcHIgMjAwMSwgMjI6MzQ6MTQpOgp+IyEgcm49TW9udGFudXMgcnQ9OTg2ODQ1NTcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Clp1bWFsIG1pciBkYXMgbmllbWFuZCBiZWZvaGxlbiBoYXQuIEFiZXIgZWdhbC4gRGFzIHdpcmQgamEgcXVhc2kgc2Nob24gZXJuc3QuClNvcnJ5LiBGYWxzY2hlIFJ1YnJpay4gSWNoIGxhc3MgZXMgdHJvdHpkZW0gaGllci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1MjU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAxMC4gQXByIDIwMDEsIDE3OjMyOjI5KToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTg2OTAxNzQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkhhLCBuZSBTY2huYXBzemFobCBmdWVyIGRlbiBSZXBseSBlcndpc2NodC4gOi0pCkluIHRoZSByZXBseSAyNTI1Li4uIG5lZSwgZGVyIFNvbmcgZ2luZyBhbmRlcnMuCkFiZXIgZXMgaXN0IERpZW5zdGFnLCBBbmF0b2wgaXN0IGRhLCB1bmQgZXMgZ2FiIG5vY2gga2VpbiBVcGRhdGUuIFdhcyBpc3QgbG9zPwo7LSkKVW5kIGljaCBoYWIgbm9jaCBuZW4gbmV0dGVuIExpbmsgZnVlciBhbGxlLCBkaWUgZ2VyYWRlIG5lbiBuZXVlbiBKb2Igc3VjaGVuLgoKaHR0cDovL3d3dy5oZWFkaHVudGVyLm5ldC9qb2JzZWVrZXIvam9icy9Kb2JEZXRhaWxzLmFzcD9kaWQ9SjI2SzY2RDBZSkJCNERXUFdKCgpBdXNwcm9iaWVyZW4uCgotU3VwZXJtb250YW51cy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1MzU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFplcGh5ciwgMTAuIEFwciAyMDAxLCAyMjowOToyOCk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4NjkzMzI2MCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApBbHNvIGRhcyBtaXQgZGVtIEVOVHNjaGxhZmVuIGRlcyBTZW5zZW5tYW5ucyBnZWh0IGFiZXIgc2NobmVsbGVyIDopCkM0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTM2OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMTAuIEFwciAyMDAxLCAyMjoxMToyNSk6Cn4jISBybj1aZXBoeXIgcnQ9OTg2OTMzMzY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkFuYXRvbCwgaWNoIGdsYXViIGRhcyB3YXJlbiBkaWUgQzY0IGNoZWF0IGNvZGVzIGZ1ZXIuLi4gYXJnbCwgWmF4eG9uPwpWZXJyYXRzIHVucy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1Mzg6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAxMC4gQXByIDIwMDEsIDIyOjEzOjA4KToKfiMhIHJuPUFuYXRvbCBydD05ODY5MzM1MDIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKVW5saW1pdGVkIExpZmVzIGZ1ZXIgRGF2aWQncyBNaWRuaWdodCBNYWdpYz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1NDA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAxMC4gQXByIDIwMDEsIDIyOjE1OjI5KToKfiMhIHJuPUFuYXRvbCBydD05ODY5MzM2MDIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKCkhtbW1tLCBkYW5uIHdpcmRzIHNjaHdpZXJpZy4gVW56ZXJzdG9lcmJhcmVzIEF1dG8gYmVpIEJ1cm5pbmcgUnViYmVyPyBTb25zdAp3ZWlzcyBpY2hzIHdpcmtsaWNoIG5pY2h0LiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1NDI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAxMC4gQXByIDIwMDEsIDIyOjE3OjA0KToKfiMhIHJuPUFuYXRvbCBydD05ODY5MzM3NDkgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSWNoIGhhYiBmYXN0IG5pZSBnZWNoZWF0ZXQsIHNvbnN0IGhhZXR0ZSBpY2ggZGllIENvZGVzIGF1Y2ggc29mb3J0IGVya2FubnQuCjstKQpWb3IgZWluLCB6d2VpIEphaHJlbiBrYW5udGUgaWNoIGphIHNvZ2FyIG5vY2ggZGFzIFBpcmF0ZXMtQ29kZXdoZWVsCmF1c3dlbmRpZy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU0NDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTW9udGFudXMsIDEwLiBBcHIgMjAwMSwgMjI6MjE6NTApOgp+IyEgcm49QW5hdG9sIHJ0PTk4NjkzMzkzMyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAplaHJsaWNoPyBEZW4gaGFiIGljaCBuaWUgZ2VicmF1Y2h0LiA6LSkgTWVpbmUgQ3JldyB3YXIgYXVjaCBzbyBpbW1lciBoYXBweS4KVW5kIHdlbm4gbmljaHQsIGRhbm4gd3VyZGUgaGFsdCBtYWwga3VyeiBDYXJ0YWdlbmEgdm9uIExhbmRzZWl0ZSBoZXIKYW5nZWdyaWZmZW4sIGJpcyBkaWUgQ3JldyB3aWVkZXIgYXVmIGVpbiBlcnRyYWVnbGljaGVzIE1hc3ogKGMpIEFjcmltb24KenVzYW1tZW5nZXNjaHJ1bXBmdCB3YXIgdW5kIGRhcyBUZWlsZW4gd2llZGVyIFNwYXNzIGdlbWFjaHQgaGF0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU0NTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSHVtbmksIDExLiBBcHIgMjAwMSwgMDA6MzY6MTgpOgp+IyEgcm49TW9udGFudXMgcnQ9OTg2OTM0MTEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck1lbnNjaCwgZGVuIENoZWF0IGhhZXR0IGljaCBkYW1hbHMgZ2VicmF1Y2h0Li4uYmVpIG1pciBoYWJlbiBkaWUgZGF1ZXJuZApnZW1ldXRlcnQuLgpVbmQgZGllIExhbmRzZWl0ZW4tRHVlbGxlIHdhcmVuIGZ1ZXIgbWljaCBpbW1lciByZWluZSBLYXRhc3Ryb3BoZW4sIHdlbm4gaGFiCmljaCBob2VjaHN0ZW5zIHZvbiBTZWUgYXVzIG9kZXIgYW0gQmVzdGVuIG9obmUgRm9ydHMgU3RhZWR0ZSBlcm9iZXJ0Li4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTQ3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQaXRmYWxsLCAxMS4gQXByIDIwMDEsIDA5OjIyOjMzKToKfiMhIHJuPUFuYXRvbCBydD05ODY5NzM3MTkgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKam8KaGF2YW5uYSBhbmdyZWlmZW4gd2FyIGltbWVyIGx1c3RpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU1MDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSHVtbmksIDExLiBBcHIgMjAwMSwgMTE6Mjc6NDkpOgp+IyEgcm49QW5hdG9sIHJ0PTk4Njk4MTAwNyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApEVSBLRU5OU1QgUEFSQURST0lEIE5JQ0hUPwpEZXIgYm9lc2UgOTk5IGRlbiBtYW4gYWxzIDAwMCBiZXNpZWdlbiBtdXNzPwpJY2ggZW1wZmVobGUgZGVuIGF1cyBkZXIgNGVyLXNlcmllIGRlciBzY2hpZXNzZW4ga2Fubi4gRGllIFphaGwgaGFiIGljaAp2ZXJnZXNzZW4uCgpIdW1uaQpQUzowMDEgbmF0dWVybGljaCwgbmljaHQgMDAwLiBCaW4genUgZmF1bCBkYXMgenUga29ycmlnaWVyZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTUyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChIdW1uaSwgMTEuIEFwciAyMDAxLCAxMTozMDozNyk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Njk4MTMyMiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApBbHMgVGlwOgoKaHR0cDovL3d3dy5jNjRnYW1lcy5kZS9zdGFydHNlaXRlLmFzcD9MRz1EJlNGPWZpbGVsaXN0JlNlYXJjaD1QYXJhZHJvaWQmR3JvdXA9CjAKCkdlcmFkZSBnZWZ1bmRlbi4KSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1NTQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEh1bW5pLCAxMS4gQXByIDIwMDEsIDExOjU2OjU3KToKfiMhIHJuPUFuYXRvbCBydD05ODY5ODIzNTQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKTmFqYSBpY2ggaGFiIHNjaG9uIG1laHJmYWNoIHVlYmVybGVndCBvYiBzaWNoIGFsdGUgSW5mb2NvbXMgZWlnbmVuIHd1ZXJkZW4gLQpzb3p1c2FnZW4gYWxzIFF1ZXN0Li4uYWJlciBpY2ggd2Vpc3MgbmljaHQsIGljaCBoYWIgYXVjaCBudXIgMiBvZGVyIDMgTG9lc2VuCmtvZW5uZW4gdW5kIGRhbm4gbWVpc3QgbnVyIG1pdCBLTC4uLi4ub2RlciBtaXQgSGlsZmUuLi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXbyB3aWxsIGRhcyBWbGFuZCBudXIgaGluPyAoRGFzaGVsLCAxMS4gQXByIDIwMDEsIDEyOjUwOjU1KToKLi4uCkVpbiB3YWJlcm5kZXMgR2ViaWxkZSBlcnNjaGVpbnQgdXJwbG9ldHpsaWNoIHZvciBEaXIuCi4uLgpELnZsYW5kLnBhdHJ5biBvZWZmbmV0IGxlaXNlIGRpZSBUdWVyIHVuZCBnZWh0IG5hY2ggTm9yZGVuLgouLi4KV2VnIGlzc2VzLgpEYXNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV28gd2lsbCBkYXMgVmxhbmQgbnVyIGhpbj8gKFBhdHJ5biwgMTEuIEFwciAyMDAxLCAxMzowNToyNCk6Cn4jISBybj1EYXNoZWwgcnQ9OTg2OTg2MjU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg2OTg2MjU1CmhhaC4uLmljaCBiaW4gZXJrYW5udCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU2NDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoUGl0ZmFsbCwgMTEuIEFwciAyMDAxLCAxMzoyNDowOSk6Cn4jISBybj1Jc2kgcnQ9OTg2OTg4MjE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cmxvb20gaW0gbXVkPwoKa2xpbmd0IG5hY2ggbmVyIGVpZ2VuZW4gZ2lsZGUgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTY5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQaXRmYWxsLCAxMS4gQXByIDIwMDEsIDEzOjI5OjAxKToKfiMhIHJuPVNvbG15ciBydD05ODY5ODg1MzEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKZGVyIGd1dGUgd2lsbGUgemFlaGx0IHNvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU2OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoUGl0ZmFsbCwgMTEuIEFwciAyMDAxLCAxMzoyOTo1MSk6Cn4jISBybj1Jc2kgcnQ9OTg2OTg4NTc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmRhbmtlIHZpZWxtYWxzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTc1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQaXRmYWxsLCAxMS4gQXByIDIwMDEsIDE0OjEwOjM2KToKfiMhIHJuPUlzaSBydD05ODY5OTEwMTIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKc3BpbmF0cGl6emEgc2l0IGRvY2ggZWtlbGlnCnNjaHdlaW5zYnJhdGVuIGhvZXJ0IHNpY2ggZGEgYmVzc2VyIGFuCipmYW5nKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU4MjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSHVtbmksIDExLiBBcHIgMjAwMSwgMTQ6MTM6NTgpOgp+IyEgcm49U29sbXlyIHJ0PTk4Njk5MTE2OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApXb2hsLCBsZWNrZXIuCgpIdW1uaSwgSHVuZ2VyIGtyaWVnZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU4MzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSHVtbmksIDExLiBBcHIgMjAwMSwgMTQ6MTQ6MTIpOgp+IyEgcm49SXNpIHJ0PTk4Njk5MTI0MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApBdWNoIGxlY2tlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1ODQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFBpdGZhbGwsIDExLiBBcHIgMjAwMSwgMTQ6MjI6NTApOgp+IyEgcm49SHVtbmkgcnQ9OTg2OTkxMjUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CndpZSBuZWluCgpwaXQgKmRyb2hlbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTg1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChIdW1uaSwgMTEuIEFwciAyMDAxLCAxNDoyMzozMCk6Cn4jISBybj1QaXRmYWxsIHJ0PTk4Njk5MTc3MCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJY2ggaGFiIGdlc2FndCBhdWNoIGxlY2tlciwgbmljaHQgbmVpbi4KCkh1bW5pLCBuaWNodCB2ZXJzdGVoZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU4NjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoUGl0ZmFsbCwgMTEuIEFwciAyMDAxLCAxNDoyMzo1NCk6Cn4jISBybj1IdW1uaSBydD05ODY5OTE4MTAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKaWNoIGxlcm4gZGFzIHNjaG9uIG5vY2ggbWl0IGRlbiByZXBseXMgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTkwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQaXRmYWxsLCAxMS4gQXByIDIwMDEsIDE0OjMwOjA1KToKfiMhIHJuPUFuYXRvbCBydD05ODY5OTIxOTMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKZGFzIHdpbGxzdCBkdSBnYXIgbmNpaHQgd2lzc2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTk1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChCaWVsZWZlbGQsIDExLiBBcHIgMjAwMSwgMTY6MTI6MjUpOgp+IyEgcm49U29sbXlyIHJ0PTk4Njk5ODMxNSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOdWphLCBiZXZvciBpY2ggbWljaCBwcnVlZ2VsbiBsYXNzZS4KCi1CaWVsZWZlbGQgKGltbWVyIGZ1ZXIgU3Vlc3NlcyB6dSBoYWJlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OTc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJpZWxlZmVsZCwgMTEuIEFwciAyMDAxLCAxNjoxMzoxNyk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Njk5ODM4MSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApLbGFyLCB3dXNzdGVzdCBEdSBkYXMgZXR3YSBub2NoIG5pY2h0PyA6LSkKCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OTg6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEh1bW5pLCAxMS4gQXByIDIwMDEsIDE2OjEzOjQ4KToKfiMhIHJuPUlzaSBydD05ODY5OTg0MTcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSm8sIGxlY2tlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU5ODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSHVtbmksIDExLiBBcHIgMjAwMSwgMTY6MTM6NTQpOgp+IyEgcm49SXNpIHJ0PTk4Njk5ODQxNyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApTZWhyIGxlY2tlciBzb2dhci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OTk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJpZWxlZmVsZCwgMTEuIEFwciAyMDAxLCAxNjoxNDozMik6Cn4jISBybj1IdW1uaSBydD05ODY5OTg0MzQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQWxzbyBndXQsIGdlYmUgaWNoIG1hbCBlaW5lIFZvcmxhZ2UgZnVlciBkaWUgTGVja2VybWFldWxlci4uLiA6KQoKLUJpZWxlZmVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjYwMDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSHVtbmksIDExLiBBcHIgMjAwMSwgMTY6MTQ6NDApOgp+IyEgcm49RmFudGFnaGlybyBydD05ODY5OTg0NzMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRG9jaCBkb2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjYwMjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSHVtbmksIDExLiBBcHIgMjAwMSwgMTY6MTU6MzEpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODY5OTg1MDkgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSWNoIGJpbiBpbW1lciBzdWVzcyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2MDI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJpZWxlZmVsZCwgMTEuIEFwciAyMDAxLCAxNjoxNTozMyk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4Njk5ODUwOSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApNb3phcnRrdWdlbG4gaW4gQmllcj8KSWNoIHdlaXNzIGphIG5pY2h0LCBvYiBzaWNoIGRhcyB2ZXJ0cmFlZ3QuLi4gOikKCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2MDM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEh1bW5pLCAxMS4gQXByIDIwMDEsIDE2OjE1OjQzKToKfiMhIHJuPUJpZWxlZmVsZCBydD05ODY5OTg1MzMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRG9jaCBkb2NoLgpJbW1lci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2MDQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMTEuIEFwciAyMDAxLCAxNjoxNjoxOSk6Cn4jISBybj1Tb2xteXIgcnQ9OTg2OTk4NTUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkljaCBoYWIgbGlhcmEgbmljaHQgYXVmbSBmYmFuZCA7KQpJc2kgKGZiYWVuZGVyd2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2MDU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJpZWxlZmVsZCwgMTEuIEFwciAyMDAxLCAxNjoxNjozNyk6Cn4jISBybj1Jc2kgcnQ9OTg2OTk4NTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkljaCBhdWNoIG5pY2h0IDotKAoKLUJpZWxlZmVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjYxMDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSXNpLCAxMS4gQXByIDIwMDEsIDE2OjQ0OjU3KToKfiMhIHJuPVBpdGZhbGwgcnQ9OTg3MDAwMTM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cj8hCklzaSAoSm9naHV0d2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2MTI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMTEuIEFwciAyMDAxLCAxNjo0Njo0NCk6Cn4jISBybj1QaXRmYWxsIHJ0PTk4NzAwMDMxNyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApSdWhlIGljaCBoYXR0ZSB6dWxldHplbiBkaWUgc3RhcndhcnMgdG9kZXNlcQpJc2kgKE9zdGVyZWl3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1pdCBkZXIgQml0dGUgdW0gQmVydWVja3NpY2h0aWd1bmcgLi4uLiAoQW5hdG9sLCAxMS4gQXByIDIwMDEsIDE3OjA2OjAyKToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTk4NzAwMTQ5OCByZz13aXR6ZQp+IyEgdGlkPTk4NzAwMTQ5OApEdSB3aWxsc3Qgc2FnZW4sIGRhc3MgZXMgS29lbHNjaCBhdWNoIGluIDAsNCBnaWJ0PyBHaWJ0IGVzIGRhenUgdWViZXJoYXVwdApwYXNzZW5kZSBHbGFlc2VyIGluIEtvZWxuPyA7bykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjE2OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDExLiBBcHIgMjAwMSwgMTc6MDk6MzkpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODcwMDE3MzQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKR2VoIG1pdCBndXRlbSBCc3Audm9yYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2MTg6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEphbWVzb24sIDExLiBBcHIgMjAwMSwgMTc6MzY6MTUpOgp+IyEgcm49RWxiZXJldCBydD05ODcwMDMzNTMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKdWksIGR1IGJpc3QgYWJlciBlaW4gdG9sbGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjIwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChKYW1lc29uLCAxMS4gQXByIDIwMDEsIDE3OjM2OjQxKToKfiMhIHJuPUFuYXRvbCBydD05ODcwMDMzODkgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKaGFlLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUYW5qaWFuIHVuZCBJaHIgR2lsZGVuZmVlbGluZyA6KSAoU29sbXlyLCAxMS4gQXByIDIwMDEsIDE4OjE5OjQwKToKfiMhIHJuPUVsYmVyZXQgcnQ9OTg3MDA1OTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg3MDA1NzA1ClBmZmZmZnQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2MjI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKElzaSwgMTEuIEFwciAyMDAxLCAxOToyNDowNCk6Cn4jISBybj1FbGJlcmV0IHJ0PTk4NzAwMzYxNSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApXbyBnYWJzIG5vY2ggbWFsIGRpZSBCdWVjaGVyIGluendpc2NoZW4/Ck5pY2ggZGFzcyBpaHIgbWlyIGRpZSB1ZWJlciBPc3Rlcm4gd2Vnc2NobmFwcHQuCklzaSAodXJsYXVid2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2MjM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJpZWxlZmVsZCwgMTEuIEFwciAyMDAxLCAyMTo1MjowNik6Cn4jISBybj1Jc2kgcnQ9OTg3MDA5ODQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmJlaSBSZWggMjcyNy4uLgoKQWJlciBkYXMgZ2lidCBlaW4gSGF1ZW4gdW5kIFN0ZWNoZW4uLi4gOykKCi1CaWVsZWZlbGQgKHdpbGwgYXVjaCB3YXMgbGVzZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjI1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChCaWVsZWZlbGQsIDExLiBBcHIgMjAwMSwgMjE6NTU6MTgpOgp+IyEgcm49QW5hdG9sIHJ0PTk4NzAxODg1NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApUcmF1IERpY2ggcnVoaWcuLi5zYWd0IGphIGF1Y2gga2VpbmVyLCBkYXNzIGRpZSBCdWVjaGVyIG5pY2h0IGdldGVpbHQKd2VyZGVuIGtvZW5uZW4sIG9kZXI/CgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjMyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChCaWVsZWZlbGQsIDExLiBBcHIgMjAwMSwgMjI6MjI6MTQpOgp+IyEgcm49RWxiZXJldCBydD05ODcwMjA1MDYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSWNoIG5laG1lIERpciBtYWwgZWluZW4gYWIgOikKCi1CaWVsZWZlbGQgKGhpbGZzYmVyZWl0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjUyNzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoR3JpbW1hbiwgMTIuIEFwciAyMDAxLCAwNzozMDoyNik6Cn4jISBybj1BbmF0b2wgcnQ9OTg2OTE2NzkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck4gYmlzc2lrZW4gb2ZmIFRocmVhZCAuLi4gYWJlciBpY2ggd2lsbCBqYSBkaWUgS2V0dGUgbmljaCByZWlzc2VuIGxhc3NlbiA6KQoKWnVtIFZlcnN0YWVuZG5pcyBzZWkgZ2VzYWd0LCBkYXMgaWNoIE5FQkVOIFN1YmxpbWUgc2FzcywgYWxzIGVyIGRpZXNlbgpGYXV5LXBhcyBsZWlzdGV0ZSAuLi4KU3VibGltZSBpbSBHZXNwcmFlY2ggbWl0IHh4eCAodm9uIGRlciBSZWRha3Rpb24gZ2VzdHJpY2hlbikKRGFzIEdlc3ByYWVjaCBrb21tdCBpcmdlbmR3aWUgYXVmIEhhdWtlIChzZWluZXMgWmVpY2hlbnMgSnVuZ3phdWJpKSAuLi4KU3VibGltZSB0aXBwdCBpcnR1ZW1saWNydHVlbWxpY2ggOgp0bSBoYXVrZSBIYXVrZSBpcyBqYSBhdWNoIG5lIFd1cnN0Lgooc29sbHRlIG5hdHVlcmxpY2ggYW4geHh4IGdlaGVuIC4uLiBhYmVyIG1hbiB3ZWlzcyBqYSAuLi4KSnVuZ3phdWJpcyB1bmQgc28gLi4uICkKVW5kIEhhdWtlIHR1dCBzZWluIHVlYnJpYnN0ZXMsIGRpZXNlbiBBdXNzcHJ1Y2ggc2lubnZvbGwgenUgYmVzdGFldGlnZW4gLi4uCkhhZWFlPyB3YXMgd2FyIGRlbm4gLi4uCk5hamEgLi4uIHVuZCBkaWUgTW9yYWwgdm9uIGRlciBHZXNjaGljaHQgLi4KR3V0ZSBKdW5nemF1YmVyZXIgZ2lidCBlcyBuaWNodCA6KQoKTWZHIGFuIEp1bmd3dXJzdCBTdWJsaW1lCgpHcmltTWFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTI4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDEyLiBBcHIgMjAwMSwgMDc6MzU6MjMpOgp+IyEgcm49R3JpbW1hbiBydD05ODcwNTM0MjYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKU29sKiBobm5nbHQgc2VpbmUgTXVlZGlna2VpdCBnYW56IHdlaXQgd2VnIDopIDMgTHYgaW4gRDIgaGFiZW4gbWljaCB3b2hsIGdhbnoKc2Nob2VuCm11ZWRlIGdlbWFjaHQgOikKClNvbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1Mjk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYW4sIDEyLiBBcHIgMjAwMSwgMDc6Mzk6MTgpOgp+IyEgcm49U29sbXlyIHJ0PTk4NzA1MzcyMyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApobW1tIC4uLi4gV1VSU1QgISEhCgpHcmltTWFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTMxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChHcmltbWFuLCAxMi4gQXByIDIwMDEsIDA3OjQzOjI3KToKfiMhIHJuPVNvbG15ciBydD05ODcwNTQwMDYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKZWtsaWcgc3RpbmtlbmRlIHJhbnppZ2UgS25vYmxhdXNhbGFtaSwgYWJlciB2b24gZGVyIGdhbnogaGVmdGlnZW4gU29ydGUuCgpHcmltTWFuIC4uLiBpbW1lciBmdWVyIEVya2xhZXJ1bmdlbiBkYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1MzM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYW4sIDEyLiBBcHIgMjAwMSwgMDc6NDk6MTYpOgp+IyEgcm49U29sbXlyIHJ0PTk4NzA1NDI5NiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApobW1tIC4uLiB1bSBpbiBkZWluZXIgQ29taWNzcHJhY2hlIHp1IGJsZWliZW4gLi4uCmFid2FydGVuIChUb2Rlc3NlcXVlbnopIGJldGUsIHNjaHJlaWJlIGFydGlrZWwgOiBTdWJsaW1lIGlzIGRvY2ggZWluIGZpZXNlcgppZ25vcmFudGVyIGhpbnRlcmhhZWx0aWdlciBncm9lc3NlbndhaG5zaW5uaWdlciBNaW5pbWFnIC4uLiBkZXIgaGF0IFBvdGVuemlhbAouLi4gZ2VidCBkZW0gbWVociBBdWZnYWJlbiwgZGFzIGRlciBrZWluZSBaZWl0IG1laHIgaGF0IHVuc2NodWxkaWdlIFNwaWVsZXIgenUKYWVyZ2VybiAuLi4gaXJnZW5kd2FzIHp1bSBkZWJ1Z2dlbiAuLi4KenVtIEJlaXNwaWVsIERvcHBlbGtvcGYgdWViZXJhcmJlaXRlbiAuLi4KCmFic2NoaWNrZW4sIHJncmluc2UgU29sbXlyLCBhYndhcnRlbiBiaXMgZXIgKEVYVFJFTSBsYXV0KSBzY2hyZWl0IAp1bmQgZGFubiB6dSBpaG0gc2FnZW46IGR1IHdvbGx0ZXN0IGRpY2ggbWl0IG1pciBhbmxlZ2VuPyBrZWluIFByb2JsZW0sIGR1CnppZWhzdCBkZW4ga3VlcnplcmVuIQoKR3J1WzJpbU1hbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjUzNDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoR3JpbW1hbiwgMTIuIEFwciAyMDAxLCAwNzo1MDowNCk6Cn4jISBybj1HcmltbWFuIHJ0PTk4NzA1NDU1NiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAplbnRzY2h1bGRpZ3VuZyBkYXMgaWNoIGVjaHQgR3JpbU1hbiB1bmQgdW5zY2h1bGRpZyBpbiBlaW5lbSBTYXR6IG5hbm50ZSAuLi4KR3JpbU1hbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjUzNTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoR3JpbW1hbiwgMTIuIEFwciAyMDAxLCAwNzo1MToyNyk6Cn4jISBybj1Tb2xteXIgcnQ9OTg3MDU0NjMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmljaCB1bmQgc2NodW1tZWxuPyBpY2ggaGVsZiBkaXIgbnVyLCBkYXMgZHUgYXVjaCBtYWwgd2FzIHNjaGFmZnN0CgpKdW5nbWFnaWVyIC4uLiBwZmZmdAoKR3JpbU1hbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogdGVsbmV0IG5lbWVzaXMuZGUgMjAwMCAoR3JpbW1hbiwgMTIuIEFwciAyMDAxLCAxNzo1MTozMyk6Cn4jISBybj1HcmltbWFuIHJ0PTk4NzA5MDU4OSByZz1hbnplaWdlbgp+IyEgdGlkPTk4NzAxNzExMgpBQ0hUVU5HICEhISBTZWxic3QtUmVwbHkgISEhCldhc24gbG9zPyBQZW5udCBpaHIgYWxsZSwgbWVociBBY3Rpb24gYml0dGUgLi4uIHdpciB3b2xsZW4gZG9jaCBkaWUgMTAwMDAgdm9sbAptYWNoZW4sIGFsbHNvIGJpdHRlIDogTWVociBFaW5zYXR6IQoKR3JpbU1hbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogdGVsbmV0IG5lbWVzaXMuZGUgMjAwMCAoU29sbXlyLCAxMi4gQXByIDIwMDEsIDE3OjUyOjQ1KToKfiMhIHJuPVNvbG15ciBydD05ODcwOTA3NTUgcmc9c2NobWFycm4KfiMhIHRpZD05ODcwMTcxMTIKTmVpbiBOZWluLCBTY2htYXJybiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogdGVsbmV0IG5lbWVzaXMuZGUgMjAwMCAoSmFtZXNvbiwgMTIuIEFwciAyMDAxLCAxOTo1MjowNik6Cn4jISBybj1FbGJlcmV0IHJ0PTk4NzA5Nzg3MiByZz1hbnplaWdlbgp+IyEgdGlkPTk4NzAxNzExMgpFbGJlcmV0IGxhc3MgRGljaCBzY2hsYWdlbi4gQXVjaCBub2NoIGRpZSBmYWxzY2hlIFJ1YnJpayEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHRlbG5ldCBuZW1lc2lzLmRlIDIwMDAgKEVsYmVyZXQsIDEyLiBBcHIgMjAwMSwgMTk6NTI6MzIpOgp+IyEgcm49SmFtZXNvbiBydD05ODcwOTc5MjYgcmc9c2NobWFycm4KfiMhIHRpZD05ODcwMTcxMTIKdW5kIGZhbHNjaGVyIHRocmVhZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VpdCB3YW5uIFNPIGVtcGZsaW5kbGljaCBBbmF0b2w/IChTY2hsZWljaGVyLCAxMy4gQXByIDIwMDEsIDAwOjE3OjI5KToKW0FsbGdlbWVpbjpEcm9sbGldIHdhcyBpc3QgZWlnZW50bGljaCBrYWZyZWl0YWcgcGFzc2llcnQ/IGlzdCBkb3J0IGplc3VzCltBbGxnZW1laW46RHJvbGxpXSBnZXN0b3JiZW4gb2RlciBhdWZlcnN0YW5kZW4/CltBbGxnZW1laW46UGF1bGVuZXVdIGFjaCBkdSBzY2hhbmRlCltBbGxnZW1laW46RHJvbGxpXSBlciBpc3QgZ2VzdG9lYmVuIG9kZXI/CkFuYXRvbCBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgoKRWluIGdyaW5zZW5kZXIgU2NobGVpY2hlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKPGtlaW5lcj4gKEpvaG5ueWJvc3MsIDEzLiBBcHIgMjAwMSwgMTI6NDE6MTIpOgprb2VubnQgbWFsIGplbWFuZCB3aWVkZXIgc2NobWFycm4gZXR3YXMgZW50cnVlbXBlbG4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZXJ1ZWNodGUgKExpYXJhLCAxMy4gQXByIDIwMDEsIDE1OjI3OjUzKToKWFhYWFhYWFggdGVpbHQgRGlyIG1pdDogaGFzdCBkdSBtYSBlYmVuIHNjaG5lbGwgbmUgc2VrIHplaXQ/IGhhYiBuZSBmcmFnZSB6dQpYWFhYWFhYWCB0ZWlsdCBEaXIgbWl0OiBob21wYWdlZXJzdGVsbHVuZy4uLgoKRHUgdGVpbHN0IFhYWFhYWFhYIG1pdDogYWVoIHNvcnJ5IGRhdm9uIGhhYiBpY2ggbnVsbCBwbGFuIGR1IG11c3N0IG1pY2gKRHUgdGVpbHN0IFhYWFhYWFhYIG1pdDogdmVyd2VjaHNlbG4KClhYWFhYWFhYIHRlaWx0IERpciBtaXQ6IGljaCBkYWNodGUgaGFsdCBkdSBrYW5uc3QgYWxsZXMgLi4uKmcqIGtlbm5zdCBkdSB3ZW4KWFhYWFhYWFggdGVpbHQgRGlyIG1pdDogZGVyIHBsYW4gZGF2b24gaGF0PwoKTFosIHN0YXVudCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoWmFuYWMsIDE0LiBBcHIgMjAwMSwgMDk6MjY6MzEpOgpEaWUgWmF1YmVyZXIgLi4uCgpaYXViZXJlcjpIYXVrZV0gZHVyY2ggdGVsZXBvcnQgbGVybnQgbWFuIGphIGRhcyBtZyBrZW5uZW4gOk8pCltUb2Q6TGFyc10gRWluIENoYW9zZGFlbW9uIGhhdCBnZXJhZGUgSGF1a2UgdW1nZWJyYWNodC4KClVuZ2VzY2huaXR0ZW4uCgpaYW5hYwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3VlY2h0aWc/IChab29rLCAxNC4gQXByIDIwMDEsIDE1OjQwOjEwKToKU29sbXlyIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KW1JhZ2U6RWluIFJhZ2VsYWJvcl0gU29sbXlyIHNjaGVpbnQgZWluZSBSdW5kZSBIYXJkY29yZS1NaW5pLVJhZ2Ugc3BpZWxlbiB6dQpbUmFnZTpFaW4gUmFnZWxhYm9yXSB3b2xsZW4uCltSYWdlOlNvbG15cl0gUmFnZT8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFYmVuZW51ZWJlcmdyZWlmZW5kIDopIEltbWVyIHdpZWRlciBuZXR0IChTb2xteXIsIDE0LiBBcHIgMjAwMSwgMTc6MjQ6MjUpOgogW0FsbGdlbWVpbjpEcm9sbGldIGljaG1vZWNodGUgbWFsIHdpc3NlbiB3ZXIgZGllc2VzIG1hbCBkcmFuIGdsYXViZW4gbXVzcwogW1RvZDpMYXJzXSBEZXIgZ29sZGVuZSBEcmFjaGUgaGF0IGdlcmFkZSBCaXJkeSB1bWdlYnJhY2h0LgogW1RvZDpEZXIgZ29sZGVuZSBEcmFjaGVdIER1IGFybWVzIFd1ZXJzdGNoZW4uIEljaCBzYWd0ZSBkaXIgZG9jaCwgZGFzcyBpY2gKIFtUb2Q6RGVyIGdvbGRlbmUgRHJhY2hlXSB1bmJlc2llZ2JhciBiaW4uCiBbQWxsZ2VtZWluOkRyb2xsaV0gdmllbGxlaWNodCBqZW1hbmQgZGVuIGljaCBrZW5uZSA6KQogW1Nwb3J0OkdhbGJyYWl0aF0gZnVlciBTcGFubnVuZyBpcyBnZXNvcmd0IDs9KQoKU29sKiwga2ljaGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthbm4gZGFzIExpZWJlIHNlaW4/IChTb2xteXIsIDE2LiBBcHIgMjAwMSwgMDc6MjQ6MzUpOgogV2FsZHdlZyBpbSBHcmltbXN3YWxkLgogRXMgZ2lidCB2aWVsZSBzaWNodGJhcmUgQXVzZ2FlbmdlOiByYXVzLCBoaWxmZSwgd2VzdGVuLCBub3RhdXNnYW5nLCBhcmdoLAogd2VpdHdlZywgZWdhbHdvaGluLCBpY2h3aWxsaGllcndlZywgaWNod2lsbGhpZXJyYXVzLCBtYWFhbWlpaWlpaSB1bmQKIG5pY2h0c3dpZXdlZy4KIERlciBXZWdoaWVyLgogKioqIEVpbmUgcm90ZSBSb3NlICh2b24gUGl0ZmFsbCkgLiAqKioKIEVpbmUgVmVyc2ljaGVydW5nc3BvbGljZS4KCiBTb2wqLCBHdXRlbiBNb3JnZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLYW5uIGRhcyBMaWViZSBzZWluPyAoUGl0ZmFsbCwgMTYuIEFwciAyMDAxLCAwNzoyNToxMSk6Cn4jISBybj1Tb2xteXIgcnQ9OTg3Mzk4Njc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg3Mzk4Njc1Cm5hIGphLCBuZSBzY2h3YXJ6ZSBoYWIgaWNoIG5pY2h0IGdlZnVuZGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEthbm4gZGFzIExpZWJlIHNlaW4/IChTb2xteXIsIDE2LiBBcHIgMjAwMSwgMDc6MjU6NTApOgp+IyEgcm49UGl0ZmFsbCBydD05ODczOTg3MTEgcmc9c2NobWFycm4KfiMhIHRpZD05ODczOTg2NzUKTmEgZGFmdWVyIGxpZWd0IGhhbHQgYXVjaCBkaWUgVmVyc2ljaGVydW5nc3BvbGljZSBkYWJlaSwgb2J3b2hsLCBkaWUgCmhpbGZ0IGJlaW0gV2VnaGllciBuaWNodCBncmFkZSB2aWVsIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBLYW5uIGRhcyBMaWViZSBzZWluPyAoU29sbXlyLCAxNi4gQXByIDIwMDEsIDA3OjMzOjE1KToKfiMhIHJuPVNvbG15ciBydD05ODczOTg3NTAgcmc9c2NobWFycm4KfiMhIHRpZD05ODczOTg2NzUKTm9jaCBlaW5lbiBlbnRkZWNrdCA6KSBFciBkYWNodGUgd29obCwgZXIgd2FlcmUgYWxsZWluIGltIFJhdW0gLi4uCgpLYXJuZW9sIHNjaHJlaXQ6IFdlZyBoaWVyIQpLYXJuZW9sIGt1Z2VsdCBuYWNoIFdlc3Rlbi4KUGl0ZmFsbCBzYWd0OiBva2kKUGl0ZmFsbCBrdXNjaGVsdCBzaWNoIGFuIGRlbiBXZWdoaWVyIGFuLgoKU29sKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZXh0cmEgZnVlciBsYXJpbmEgKEdvbGFzLCAxNi4gQXByIDIwMDEsIDIxOjEwOjE3KToKaGFsbG8gZHUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWl0IGRlciBCaXR0ZSB1bSBCZXJ1ZWNrc2ljaHRpZ3VuZyAuLi4uIChHcmltbWJvcm4sIDE3LiBBcHIgMjAwMSwgMTE6MTU6MzUpOgp+IyEgb249U2NobGVpY2hlciBvdD05ODcwNzIwOTQgb2c9d2l0emUKfiMhIHJuPVNjaHd1YmJlbCBydD05ODcwMjUwMjYgcmc9d2l0emUKfiMhIHRpZD05ODcwMDE0OTgKTklFTUFMUyEhIQoKU2NobGVpY2hlciBEdWVzc2VsZG9yZmVyIFBpbHMgVHJpbmtlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVqYSBWdSAoQW5hY3Jpb24sIDE4LiBBcHIgMjAwMSwgMDg6Mjc6MDcpOgpbPE1hc3RlUj46QmllbGVmZWxkIGxhZXNzdCBkaWUgRWJlbmUgJ1JhZGlvJyBlbnRzdGVoZW4uXQpEdSBkZW5rc3QgICAuIG8gTyAoYWguIGRpZSBtYW1tYSAuLiBnbGVpY2ggaGFiZW4gd2lyIGJlc3VjaCA7LSkpCj4gQmllbGVmZWxkIGVyc2NoZWludCBhdXMgZWluZXIgRGltZW5zaW9uc3NwYWx0ZS4KRHUgYnJpY2hzdCB2b3IgTGFjaGVuIHp1c2FtbWVuLgo+IEJpZWxlZmVsZCBzYWd0OiBHdXRlbiBNb3JnZW4gOikKQW5hYyogLSB1bmdlcnVlaHJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNvbG15ciBpc3QgdHJhdXJpZy4uLiAoRGVlcGJsdWUsIDE4LiBBcHIgMjAwMSwgMDk6MTY6NTUpOgp+IyEgcm49U29sbXlyIHJ0PTk4NzU2NTMxNiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk4NzQ3ODEzMgpXaWUgZ2VzYWd0LCBzdWNoIERpciBuZW4gc2Nob2VuZW4gQmF1bS4gVW0gZGVuIGthbm5zdCBEdSBEaWNoIGVpbiBsZWJlbiBsYW5nCmt1ZW1tZXJuLCBpaG4gZ2llc3NlbiB1bmQgYmVzY2huZWlkZW4uIE9kZXIgaGFzdCBEdSBBbmdzdCwgZGFzcyBzZWxic3QgZGVyCnVudGVyIERlaW5lciBCZWhhbmRsdW5nIGVpbmdlaHQ/IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXLi4uIChGb29iYXIsIDE4LiBBcHIgMjAwMSwgMTE6Mjc6MzkpOgpDcml0dGVyIHRlaWx0IERpciBtaXQ6IGRlciBzdGlyYnQgamV0enQgdW5kIGd1dC4uLi4KW1RvZDpMYXJzXSBFaW4gTW9lbmNoIGRlcyBkdW5rbGVuIE9yZGVucyBoYXQgZ2VyYWRlIENyaXR0ZXIgdW1nZWJyYWNodC4gICAgICAgCgoKSGVyemxpY2hlcy4uLgoKRm9vYmFyCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGVqYSB2dWUgMiAoRGVlcGJsdWUsIDE4LiBBcHIgMjAwMSwgMTI6MjU6NTMpOgpbU2VoZXI6UmF2ZW50aHJvbmVdIFdhciBoZXV0IHNjaG9uIG5lIFRhbnRlIGRhPwpbU2VoZXI6VHJhbmNlXSBpc3QgYXVjaCBUYW50ZS4KRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuCltTZWhlcjpSYXZlbnRocm9uZV0gQWggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhuZ2wgKFRoYW5vcywgMTguIEFwciAyMDAxLCAxNToxNToxMSk6CgpFaW4gSHV0emVsZ25vbSBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgZWluZW0gSHV0emVsZ25vbS4KClNvIGVpbiBrbGVpbmVyIEZlaWdsaW5nIDopCgpUaGFub3MKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZ1ZXIgYWxsZS4uIChOaXp6bCwgMTguIEFwciAyMDAxLCAyMDowOTowOCk6Ci4uZGllIGRpZXMgbmljaHQgamVkZW4gdGFnIGVybGViZW4gZHVlcmZlbjoKCkRlciBTZW5zZW5tYW5uIHNhZ3Q6IEhhbGxvIENhcmFkaHJhcywgc2Nob2VuIERpY2ggd2llZGVyenVzZWhlbi4gOikKRGVyIFNlbnNlbm1hbm4ga251ZGRlbHQgQ2FyYWRocmFzIHp1ciBCZWdydWVzc3VuZy4KICAuLi4uLk1hZ2llL0ZldWVyLi4uLi4uLiBDYXJhZGhyYXMuLi4uIDogU2Vuc2VubWFubi4uLiAqKioqKioqKiAtLSBzZWhyIGhhcnQKICAuLi4ubm9ybWFsL2Jsb3NzZW4gSGFlbiBDYXJhZGhyYXMuLi4uIDogU2Vuc2VubWFubi4uLiAqKioqKioqKiAtLSB2ZXJmZWhsdCAKCi4uZGVyIHJlc3QgZGVyIGdlc2NoaWNodGUgZHVlcmZ0ZSBiZWthbm50IHNlaW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvbGtpZW4gQWt0aW9uLWZpZ3VyZW4gKFd1bGZncmltbSwgMTguIEFwciAyMDAxLCAyMTowNDowNyk6CkhhYmUgaWNoIHNjaG9uIGVyd2FlaG50IHdhcyBhbiBNZXJjaGFuZGlzaW5nIHNvIHNjaGxlY2h0IGlzdD8KaHR0cDovL3d3dy5jaGV6LmNvbS9lbG9zdGlyaW9uL21lcmNoYW5kaXNlMy5odG0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUb2xraWVuIEFrdGlvbi1maWd1cmVuIChHbG9pbnNvbiwgMTguIEFwciAyMDAxLCAyMTowNzozMik6Cn4jISBybj1XdWxmZ3JpbW0gcnQ9OTg3NjIwNjQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg3NjIwNjQ3CkRhcyBEaXIgZGllIEdlc2ljaHRlciBuaWNodCBwYXNzZW4/CgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXQ/IFdlciBiaXN0IER1IGRlbm4/IDopIChTb2xteXIsIDE5LiBBcHIgMjAwMSwgMDI6NDQ6MzgpOgogRGEga29tbXQgbWFuIGVpbmZhY2ggaW5zIE11ZCwgdW5kIHNjaG9uIHBhc3NpZXJ0IHNvIHdhcy4uLiA6KQogRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IHVuZCByZWggOikKIER1IGtudWRkZWxzdCBEZWluZSBGcmV1bmRlIGF1cyBkZXIgRmVybmUuCiBEZWluIEZyZXVuZCBHYWxicmFpdGggdGVpbHQgRGlyIG1pdDogbmEsIFNvbG15ciwgYWx0ZXIgU3VmZmtvcHA/CiBEcm9sbGkgdGVpbHQgRGlyIG1pdDogbmEgZHUgc3RlY2hlciA6KSBbMDI6NDJdCgpTb2wqLCBzZXVmemVuZCAoc28gd2lyZCBkYXMgbnVlc2NodCBtaXQgJ25lciBad2VyZ2VuZnJhdSkuLi4qaGlja3MqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBeHQsIFRvaWxldHRlPyAqWklJSUlJSU5HKiAoU29sbXlyLCAxOS4gQXByIDIwMDEsIDAzOjIwOjA1KToKIEhtbSwgZGFzIGdpYnQgbWlyIHp1IGRlbmtlbi4uLgogRm9vYmFyIHNjaGxlcHB0IGVpbmUgcmllc2lnZSBBeHQgYXVmIGRpZSBUb2lsZXR0ZS4KIFtXYXMgbnU/XSAqWklJSUlJSU5HKiAqUEZMVU5TQ0gqCgpTb2wqLCBiaWJiZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEF4dCwgVG9pbGV0dGU/ICpaSUlJSUlJTkcqIChGb29iYXIsIDE5LiBBcHIgMjAwMSwgMDQ6MDQ6MDApOgp+IyEgcm49U29sbXlyIHJ0PTk4NzY0MzIwNSByZz1zY2htYXJybgp+IyEgdGlkPTk4NzY0MzIwNQpBYiB1bmQgenUgdHJlaWJlbiBzaWNoIGRhIGF1Y2ggbWFsIEVsZmVuIHJ1bS4uLgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYXNtaW4gZW50dGFybnQgOikgKFNvbG15ciwgMTkuIEFwciAyMDAxLCAwODowMjoxMyk6Ck5laW4sIEphc21pbiBpc3QgbmljaHQgU2NobGVpY2hlciB1bmQgU2NobGVpY2hlciBuaWNodCBKYXNtaW4gOikgSWNoCmhhYiBlbmRsaWNoIGRlcyBSYWV0c2VscyBMb2VzdW5nLi4uCiBEZWluIEZyZXVuZCBFbGJlcmV0IHRlaWx0IERpciBtaXQ6IHNvLCBpY2ggZ2VoIG1hbCBuYWNoIGhhdXNlLCBtb3JnZW4KIERlaW4gRnJldW5kIEVsYmVyZXQgdGVpbHQgRGlyIG1pdDogd2lyZCBsYW5nZXIgdGFnLCBpY2ggbXVzcyBpbnMgYmV0dGNoZW4KIEphc21pbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKClNvbCosIGh1ZXBmZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSmFzbWluIGVudHRhcm50IDopIChFbGJlcmV0LCAxOS4gQXByIDIwMDEsIDA4OjAzOjM3KToKfiMhIHJuPVNvbG15ciBydD05ODc2NjAxMzMgcmc9c2NobWFycm4KfiMhIHRpZD05ODc2NjAxMzMKdWksIG11c3MgaWNoIG1pciBqZXR6dCBkZW4gdGl0ZWwgc2V0emVuOiBFbGJlcmV0IGlzdCBuaWNodCBKYXNtaW4/CgpFbGJpIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEphc21pbiBlbnR0YXJudCA6KSAoR3JpbW1hbiwgMTkuIEFwciAyMDAxLCAwODowNDoyMSk6Cn4jISBybj1FbGJlcmV0IHJ0PTk4NzY2MDIxNyByZz1zY2htYXJybgp+IyEgdGlkPTk4NzY2MDEzMwpKYSEKCkdyaW1NYW4gLSBtaXRzY2htYXJybmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSmFzbWluIGVudHRhcm50IDopIChFbGJlcmV0LCAxOS4gQXByIDIwMDEsIDA4OjA1OjAzKToKfiMhIHJuPUdyaW1tYW4gcnQ9OTg3NjYwMjYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg3NjYwMTMzCnNvIGd1dD8KCkVsYmkKc2NoYXVlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBKYXNtaW4gZW50dGFybnQgOikgKEdyaW1tYW4sIDE5LiBBcHIgMjAwMSwgMDg6MDY6NDgpOgp+IyEgcm49RWxiZXJldCBydD05ODc2NjAzMDMgcmc9c2NobWFycm4KfiMhIHRpZD05ODc2NjAxMzMKaG1tbSBqYSAuLi4ga29tbXQgc2Nob24gZWluZW0gcHJvZmVzc2lvbmVsbGVuIERlbWVudGkgcmVjaHQgbmFoZSA6KQoKR3JpbU1hbiAtIGVpZ2VudGxpY2ggYXVjaCBzY2hvbiB6dSBtdWVkZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSmFzbWluIGVudHRhcm50IDopIChFbGJlcmV0LCAxOS4gQXByIDIwMDEsIDA4OjA3OjMyKToKfiMhIHJuPUdyaW1tYW4gcnQ9OTg3NjYwNDA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg3NjYwMTMzCjopKQoKYWJlciBqZSBwcm9mZXNpb25lbGxlciBkYXMgZGVtZW50aSwgZGVzdG8gd2FocmVyIGRlciBzYWNodmVyaGFsdCwgb2Rlcj8KCkVsYmkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZWh0IGphIHNjaG5lbGwuLi4gOikgKFpvb2ssIDE5LiBBcHIgMjAwMSwgMTE6NTI6NTQpOgpbWmF1YmVyZXI6UmF2ZW50aHJvbmVdIE1vaW4gR2lsZGUKW1RvZDpMYXJzXSBEZXIgRmx1Y2ggZGVzIFBoYXJhb3MgRXN0aGVrb3RoIGhhdCBnZXJhZGUgUmF2ZW50aHJvbmUgdW1nZWJyYWNodC4KW1RvZDpUb2RdIERBUyBXQVIgU0NIT04gREFTIDEwMFRFIE1BTCEKCkdyYXRzIHp1bSAxMDAudGVuLiA6KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9icyBoaWxmdCAoQ3JpdHRlciwgMTkuIEFwciAyMDAxLCAxMjowNjoxNCk6CkFsbGdlbWVpbjpGYWxsZW5hbmdlbF0gd2Vpc3Mgam1kLiB2bGwsIHdvIHNpY2ggcGh5bGFrZW4gZGVyIGhhZW5kbGVyIGdlcmFkZQpbQWxsZ2VtZWluOkZhbGxlbmFuZ2VsXSBiZWZpbmRldD8gOikKW0FsbGdlbWVpbjpab29rXSBLbGFyIHdlaXNzIGljaCBkYXMuOikKW0FsbGdlbWVpbjpab29rIGxpZXN0IGdyYWQgWmVpdHVuZyB1bmQgaXN0IHZvbGwgaW5mb3JtaWVydC5dCltBbGxnZW1laW46Q3JpdHRlcl0gc28gZ2VmYWVsbHN0IGR1IG1pciBzY2hvbiBiZXNzZXIgem9vawpGYWxsZW5hbmdlbCB3YW5kZWx0IGhlcmVpbi4KRmFsbGVuYW5nZWwgbmltbXQgZGllIFplaXR1bmcuIFNvZm9ydCBlcnNjaGVpbnQgYXVmIHVuZXJrbGFlcmxpY2hlIFdlaXNlIGVpbmUKbmV1ZS4KRmFsbGVuYW5nZWwgd2FuZGVsdCBuYWNoIE5vcmRlbi4KW0FsbGdlbWVpbjpab29rXSBEYWNodCBpY2ggbWlyIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcyB3aXJrdC4uLiAoU2NobGVpY2hlciwgMTkuIEFwciAyMDAxLCAxMjoyNjoxNSk6CkR1IGJpc3QgamV0enQgc2ljaHRiYXIuCkR1IGtudWRkZWxzdCBEZWluZSBGcmV1bmRlIGF1cyBkZXIgRmVybmUuICAgCkdsb2luc29uIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCgpTY2hsZWljaGVyIGRlciBTcHJhY2hsb3NlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzYXZlIGF1Y2ggKE1hbmlhYywgMTkuIEFwciAyMDAxLCAxNzoxMzoyMik6CnNhdmUgYXVjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmV0dGV0IGRlbiBTcGVpY2hlcnBsYXR6ISAoTXl0aHJhbiwgMTkuIEFwciAyMDAxLCAxNzozMDoyNik6CkFzdWthIHNhZ3Q6IGFscyBuYWVjaHN0ZXMgd2VyZGVuIGRpZSBTZWhlcmhhZXVzZXIgenVzYW1tZW5nZWxlZ3QuLnp3ZWkgc2VoZXIKQXN1a2Egc2FndDogbXVlc3NlbiBzaWNoIGVpbiBoYXVzIHRpZWxlbiwgZGFzIGFuZGVyZSB3aXJkIGdlbG9lc2NodApEdSBraWNoZXJzdC4gKFdpZSBhbGJlcm4gdm9uIERpcikKbmlja2UKRHUgbmlja3N0IHp1c3RpbW1lbmQuCkFzdWthIHNhZ3Q6IGRyaXR0ZW5zIGRpZSBnaWxkZW5maWxlcy4uLmRhIGZsaWVndCBkaWUga2FlbXBmZXJnaWxkZSByYXVzLCBkaWUKQXN1a2Egc2FndDogc29sbGVuIHRhbmppYW4gd2VyZGVuIHdlbm4gc2llIG1ldHplbG4gd29sbGVuCkR1IHNhZ3N0OiBEc2NodW5nZWwgd2VyZGVuIGtvcGllcnRlIFJhZXVtZSBnZXN0cmljaGVuLi4uZGllIHVlYnJpZ2VuIDUga29lbm5lbgpEdSBzYWdzdDogYmxlaWJlbgpBc3VrYSBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KQXN1a2Egc2FndDogYWNoamEuLmVpbiBwYWFyIFF1ZXN0IGthbm4gbWFuIGF1Y2ggYXVzYmF1ZW4uLi5UaG9ycyBIYW1tZXIsCkFzdWthIHNhZ3Q6IEtyaXN0YWxsa3VnZWwsIFJhZXRzZWxzdGVpbiwgSGV4ZXIsIFRldWZlbHNnZWlnZQpEdSBzYWdzdDogc2NobWFycm4tdGhyZWFkcyB3ZXJkZW4gYXVmIGVpbiByZXBseSBiZWdyZW56dApEdSBraWNoZXJzdC4gKFdpZSBhbGJlcm4gdm9uIERpcikKQXN1a2Egc2FndDogYmluIGljaCBzb2ZvcnQgZnVlci4uLgpBc3VrYSBzYWd0OiBkZXIgUmllc2VudGhyZWFkIGlzdCBzaWNoZXJsaWNoIHNjaHVsZApCZW5hcmVzIGxlZ3Qgc2ljaCBhdWYgZGVuIEJvZGVuIHVuZCBzY2hsaWVzc3QgZGllIEF1Z2VuLgpraWNoZXIKRHUga2ljaGVyc3QuIChXaWUgYWxiZXJuIHZvbiBEaXIpCkR1IG5pY2tzdCBoZWZ0aWcuCkR1IHNhZ3N0OiBkYW5uIHdlcmRlbiBhbGxlIGNoYXJhY3MsIGRpZSBsYWVuZ2VyIGFscyBlaW5lbiBtb25hdCBuaWNodCBkYSB3YXJlbgpEdSBzYWdzdDogZ2Vsb2VzY2h0Li5kaWUgc2NoZWluZW4gamEga2VpbmVuIHNwYXNzIG1laHIgenUgaGFiZW4uLi51bmQgYXVmCkR1IHNhZ3N0OiB1cmxhdWIgdmVyemljaHRldCBtYW4gZnVlcnMgTVVEIGdlZmFlbGxpZ3N0CkFzdWthIHNhZ3Q6IHVuZCBtYWwgYWxsZSBQbGF5ZXJmaWxlcyBhZWx0ZXIgOTUgbG9lc2NoZW4uIERpZSBoYWJlbiBsYW5nIGdlbnVnCkFzdWthIHNhZ3Q6IGdlc3BpZWx0CkR1IGtpY2hlcnN0LiAoV2llIGFsYmVybiB2b24gRGlyKQpBc3VrYSBzYWd0OiB1bmQgdm9yIGFsbGVtLi5tYWwgYml0dGUgdXJhbHRwbGF5ZXIgbG9lc2NoZW4uLi5hbHNvIGhpZXIgc2luZApBc3VrYSBzYWd0OiBwbGF5ZXJmaWxlcyB2b24gYW5ubyB0YWJhayB3byBkZXIgc3BpZWxlciB0YXVzZW4gdGFnZSBvZGVyIGxhZW5nZXIKQXN1a2Egc2FndDogbmljaHQgbWVociBkYSB3YXIKRHUgc2Fnc3Q6IGFsbGUgd2FmZmVuIHdlcmRlbiBhdWYgZWluIGV4ZW1wbGFyIHBybyB0eXAgYmVncmVuenQuLi4KQXN1a2Egc2FndDogZGFubiB3aWxsIGljaCBhYmVyIFJlc2V0emVpdGVuIHZvbiBlaW5lciBNaW51dGUgOikKRHUga2ljaGVyc3QuIChXaWUgYWxiZXJuIHZvbiBEaXIpCkFzdWthIGJyYXVjaHQgamEgZWgga2VpbmUgV2FmZmVuLgpEdSBkZW5rc3QgICAuIG8gTyAoZWJlbiBoYXR0ZSBpY2ggZG9jaCBub2NoLi4uICp3dWVobCogd28gaXN0IGRhcyBkaW5nIGhpbj8/PykKRHUgZ3JpbnN0LgpEdSBzYWdzdDogRGVyIFd1ZXJmZWwgaW4gZGVyIEtLdWdlbCBxdWVzdCB3aXJkIGF1ZiAyeDJ4MiBnZWt1ZXJ6dC4udmllbApEdSBzYWdzdDogd2VuaWdlciBTcGVpY2hlci1BdWZ3YW5kCkFzdWthIHNhZ3Q6IGRlciBrYW5uIGdhbnogcmF1cy4uLnNvIGVpbiByYXVtIG1pdCBuZW0gU2NoaWxkOiBIaWVyIHdhciBlaW4KQXN1a2Egc2FndDogbmVydmlnZXMgTGFiLiBBdWZncnVuZCB2b24gUGxhdHpwcm9ibGVtZW4gd3VyZGUgZXMgZ2Vsb2VzY2h0LgpBc3VrYSBzYWd0OiBCaXR0ZSBmcmFnZSBkZW4gbmFlY2hzdGVuIEFud2VzZW5kZW4gTWFnaWVyIG5hY2ggZGVtIFNjaGx1ZXNzZWwKQXN1a2Egc2FndDogZGVuIGVzIGhpZXIgZWlnZW50bGljaCBnZWJlbiBzb2xsdGUuIiA6KQpEdSBraWNoZXJzdC4gKFdpZSBhbGJlcm4gdm9uIERpcikKRHUgbmlja3N0IHp1c3RpbW1lbmQuCkR1IHNhZ3N0OiBQYXJhLVdlbHRlbiB2ZXJzY2htZWx6ZW4genUgZWluZXIgRWJlbmUsIG1pdCBRdWVzdHMgd2llICdEZXIgV2VnaGllcgpEdSBzYWdzdDoga2FubiBuaWNodCBzY2hsYWZlbi4uLicKQmVuYXJlcyBzY2hudXJydCBnbHVlY2tsaWNoIHVuZCBzY2htaWVndCBzaWNoIGVuZyBhbiBBc3VrYXMgQmVpbmUuCkFzdWthIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgoKClN0YXJrIGdla3Vlcnp0LCBhYmVyIG5vY2ggd2VyIElkZWVuPwpNeXRocmFuIHNwZWljaGVyc2FtbWVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklycnR1bSBvZGVyIG1hbCBhbmRyZSBGTFcuLi4gKEthZmYsIDE5LiBBcHIgMjAwMSwgMTc6NTI6NTUpOgpbQWxsZ2VtZWluOkthZmZdIGxldHp0ZXIKW0FsbGdlbWVpbjpEZWVwQmx1ZV0gdm9ybGV0enRlcgpBcm1hZ2VkZG9uIHJ1ZnQ6IEljaCBzdGFydGUgZGFzIFNwaWVsIGpldHp0IG5ldSAhCkdhbWUgZHJpdmVyIHNob3V0czogTFBtdWQgc2h1dHRpbmcgZG93biBpbW1lZGlhdGVseS4KU3BlaWNoZXJlIEthZmYuCkJpcyBiYWxkIQpDbG9zaW5nIGRvd24uCgpDb25uZWN0aW9uIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCgpXaWUgbGVpY2h0IG1hbiBzaWNoIGRvY2ggaXJyZW4ga2Fubi4KS2FmZgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFcyB3aXJrdC4uLiAoR2xvaW5zb24sIDIwLiBBcHIgMjAwMSwgMTY6MDk6MTUpOgp+IyEgcm49U2NobGVpY2hlciBydD05ODc2NzU5NzUgcmc9c2NobWFycm4KfiMhIHRpZD05ODc2NzU5NzUKPiBma251ZGRlbApXaWUgYml0dGU/Cj4ga3dlcgouLi4KU2NobGVpY2hlci4uLi4uaS5NIC4uLgouLi4KCkR1IGJpc3QgYXVmIGplZGVuIEZhbGwgcGVuZXRyYW50ZXIgYWxzIGljaC4KCkdsb2luKHNvbiksIGdsYXVidCBuaWNodCBhbiBBbGxoZWlsbWl0dGVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEZvb2JhciwgMjAuIEFwciAyMDAxLCAxODo0NToxOSk6ClRhY2sgcnVmdDogYWFhYWFoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoCltBYmVudGV1ZXI6RWxpemFiZXRoXSBqYS4uCltUb2Q6TGFyc10gRWluZSBWZXJnaWZ0dW5nIGhhdCBnZXJhZGUgVGFjayB1bWdlYnJhY2h0LiAgICAgICAgICAgICAgICAgICAgICAgIAoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbGxlIE1hY2h0IGRlbSBNdXV1dXV1SCEgKFNvbG15ciwgMjAuIEFwciAyMDAxLCAyMDo1NzoxMik6CiBNb2VyZGVyOkdlaXN0IGVpbmVyIHJpZXNpZ2VuIEt1aCBBZWhtIEVsZGFyb24sIGljaCBzY2hsaWVzc2UgbWljaCBqZXR6dAogTW9lcmRlcjpHZWlzdCBlaW5lciByaWVzaWdlbiBLdWggZWluZW0gVGVhbSBhbiwgZGFubiBoYXN0IER1IGtlaW5lIENoYW5jZQogTW9lcmRlcjpHZWlzdCBlaW5lciByaWVzaWdlbiBLdWggbWVoci4KIGt1cnplIFplaXQgc3BhZXRlcgogRGVpbiBGcmV1bmQgRWxiZXJldCB0ZWlsdCBEaXIgbWl0OiBhcmdsCiBUb2Q6TGFycyBFaW4gT3JrIGhhdCBnZXJhZGUgRWxiZXJldCB1bWdlYnJhY2h0LgoKTXV1dXV1dXV1dXV1dWghCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptZWluIFRlZGR5IGhhdCBtaWNoIGxpZWIgKEVsYmVyZXQsIDIwLiBBcHIgMjAwMSwgMjE6NDc6NTUpOgoKRHUgaGFlbHRzdCBlaW5lIGt1cnplIEFuZGFjaHQuCkVpbmUgc2VociBzdGFya2UgS3JhZnQgc2F1Z3QgRGljaCBhdWYgdW5kIHNwdWNrdCBEaWNoIHdpZWRlciBhdXMuCkRlciBUZWRkeSBrbnVkZGVsdCBEaWNoIGVpbiBsZXR6dGVzIE1hbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwMDY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYm9ybiwgMjEuIEFwciAyMDAxLCAwMDoyNjo1MCk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4NzgwNTUzMCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApKZXBwLiBVbmQgaWNoIGhhdHRlIG5pY2h0IGRlbiBFaW5kcnVjayBkYXNzIGVzIERpciB1bmFuZ2VuZWhtIHdhci4gOy0pCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwMTI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYm9ybiwgMjEuIEFwciAyMDAxLCAwMDoyOTo1MCk6Cn4jISBybj1KYW1lc29uIHJ0PTk4NzgwNTc4MCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApVbmQgd29oaW4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwMTU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYm9ybiwgMjEuIEFwciAyMDAxLCAwMDozMTozMCk6Cn4jISBybj1KYW1lc29uIHJ0PTk4NzgwNTg0NiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApXZWlzc3QgRHUsIGF1Y2ggd2VubiBlcyBNYWVubmVyIGltbWVyIHdpZWRlciB1ZWJlcnJhc2NodCwgYWJlciB0YXRzYWVjaGxpY2gKZ2VodCBRdWFsaXRhZXQgdm9yIFF1YW50aXRhZXQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwMTc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYm9ybiwgMjEuIEFwciAyMDAxLCAwMDozNDowNyk6Cn4jISBybj1BbmF0b2wgcnQ9OTg3ODA1OTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck5laW4sIGljaCBzdGVoIG5pY2h0IHNvIGF1ZiBrdXJ6ZSwgaWNoIG5laG1lIG51ciBkYXMgQmllci4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzAyMDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoR3JpbW1ib3JuLCAyMS4gQXByIDIwMDEsIDAwOjM1OjAzKToKfiMhIHJuPUphbWVzb24gcnQ9OTg3ODA2MDgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkljaCBnZWggZXJzdG1hbCBkdXNjaGVuLCB1bmQgZGFubiBsb2VzY2hlIGljaC4gT0s/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwMjI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYm9ybiwgMjEuIEFwciAyMDAxLCAwMDozNjowMyk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4NzgwNjEzMSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApLZWluZSBTb3JnZSwgZGllc21hbCBiaXN0IER1IGphIG5pY2h0IGhpZXIuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzAyNDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoR3JpbW1ib3JuLCAyMS4gQXByIDIwMDEsIDAxOjEwOjM1KToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTg3ODA2MTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkphLCBpY2gga2FubiBudXIgc2FnZW46IFNvIGFsbGVpbmUgZHVzY2hlbiBpc3QgdmllbCBsYW5nd2VpbGlnZXIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwMjY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYm9ybiwgMjEuIEFwciAyMDAxLCAwMToxMTozOSk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4NzgwODI1OSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJY2ggaGFiIGphIGF1Y2ggbm9jaCBnZXBhY2t0LiBXYXMgaWNoIGJyYWV1Y2h0ZSB3YWVyZSBlaW4gbWl0dGVsZ3Jvc3NlcgpLb2ZmZXIsIGRhcyBSaWVzZW50ZWlsIGlzdCBnZXJhZGUgbWFsIGVpbiBEcml0dGVsIHZvbGwuIEF1ZiBkZW0gSGlud2VnLApqZWRlbmZhbGxzLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDI3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChHcmltbWJvcm4sIDIxLiBBcHIgMjAwMSwgMDE6MTI6MjUpOgp+IyEgcm49SmFtZXNvbiBydD05ODc4MDgyODUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKV2VyIHNjaGl6b3BocmVuIGlzdCBpc3QgbmllIGFsbGVpbmUuCkFiZXIgRmFudGFzaWUgaGFiZSBpY2ggYXVjaCwgamEuIFRyb3R6ZGVtIG5pY2h0IGRhc3NlbGJlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDMwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChHcmltbWJvcm4sIDIxLiBBcHIgMjAwMSwgMDE6MzU6MjApOgp+IyEgcm49SmFtZXNvbiBydD05ODc4MDgzODggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKU28sIGljaCBnZWhlIGpldHp0IHNjaGxhZmVuIHVuZCBiaW4gbW9yZ2VuIGZydWVoIHdlZy4gTWFjaHQgZGVuIHRocmVhZCBuaWNodAprYXB1dHQsIHVuZCB2b3IgYWxsZW06CkZpbmdlciB3ZWcgdm9uIG1laW5lciBGcmF1IQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEcm9nZW5sYWRlbj8gKEthZmYsIDIxLiBBcHIgMjAwMSwgMDE6NTE6MzIpOgpUaGFub3Mgc3VjaHQgZWluIHNpY2hlcmVzIFZlcnN0ZWNrIGZ1ZXIgUGFyYWNlbHN1cyBEcm9nZW4gYXVzIGRlbSBMYWRlbi4KCldlbm5zIGRpZSBlaCBpbSBMYWRlbiBnaWJ0IGRhbm4gaGlsZnQgZGFzIFZlcnN0ZWNrZW4gYXVjaCBuZXQgdmllbC4uLi4KS2FmZiAtIHdvbGx0IGVpZ2VudGxpY2ggbWV0emVsbiBnZWhuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmEsIHdhcyBpc3QgZGFzIGRlbm4/IChTb2xteXIsIDIxLiBBcHIgMjAwMSwgMDY6MTk6MzQpOgogR3JhZCBlYmVuIG1hbCBwYXNzaWVydCA6KQogRGVyIFNhbmR0aWdlciBlcmtlbm50IERpY2ggd2llZGVyIHVuZCBuaWNrdCBEaXIgaG9lZmxpY2ggenUuCiAuLi4ga290eiB0aWdlciAuLi4KIERlciBTYW5kdGlnZXIgaXN0IG1pdCBlaW5lbSBTYXR6IGF1ZiBkZW4gQmVpbmVuIHVuZCBncmVpZnQgYW4hCgpBbGxlcyBudXIgd2VnZW4gZWluIGJpc3NjaGVuIE1hZ2Vuc2FmdCwuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwMzU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYW4sIDIxLiBBcHIgMjAwMSwgMTk6MDE6NTYpOgp+IyEgcm49S2FmZiBydD05ODc4NzA4ODAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKVW5kIG1hbmNoZSBQcm9ibGVtZSBsb2VzZW4gc2ljaCBiZWkgZ2VuYXVlbSBoaW5zZWhlbiBpbiBXb2hsZ2VmYWxsZW4gYXVmIC4uLgoKR3JpbU1hbiAtIGthbm4gYXVjaCBwaGlsb3NvcGhpc2NoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDM3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChHcmltbWFuLCAyMS4gQXByIDIwMDEsIDE5OjMwOjQ1KToKfiMhIHJuPUthZmYgcnQ9OTg3ODcyNjQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck9laG0gLi4uIG1pciBnZWh0IGRlciAocGhpbG9zb3BoaXNjaGUpIHNhZnQgYXVzCgpHcmltTWFuIC0gc3ByYWNobG9zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUaWVycHN5Y2hvbG9naWUuLi4gKEFuYXRvbCwgMjEuIEFwciAyMDAxLCAyMDozMjoxNSk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIFNjaG5lZWhvZXJuY2hlbnNdIERpZSBSZWNobnVuZyBmdWVyIGRpZSBCZWhhbmRsdW5nIG1laW5lcgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBTY2huZWVob2VybmNoZW5zXSBNaW5kZXJ3ZXJ0aWdrZWl0c2tvbXBsZXhlIGdlaHQgYW4gSGFzaS4KCk9rLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDQwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIxLiBBcHIgMjAwMSwgMjI6MDQ6NDEpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODc4ODMzNTkgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGEgaGlsZnQgaW1tZXIgd2llZGVyICdGb29iYXIgc2NobGVwcHQgZWluZSByaWVzaWdlIEF4dCBhdWYgZGllIFRvaWxldHRlLicKICpaSUlJSUlJSUlORyEqCkRhbm4ga29tbXQgZWluIFNjaHJlaSAnV28gaXNzZXIgaGluPycKClNvbCosIG5vY2ggRnJhZ2VuPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRlbGVrb21pa2VyISEhIChIdW1uaSwgMjEuIEFwciAyMDAxLCAyMzo1NDo1OCk6Cn4jISBybj1KYW1lc29uIHJ0PTk4Nzg4ODgwMiByZz13aXR6ZQp+IyEgdGlkPTk4Nzg4ODgwMgpIbW0uLi53byBpc3QgZGFzIFByb2JsZW0/CkJsdW1lIGlzdCBCbHVtZS4uLi4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUZWxla29taWtlciEhISAoSmFtZXNvbiwgMjEuIEFwciAyMDAxLCAyMzo1NTozNik6Cn4jISBybj1IdW1uaSBydD05ODc4OTAwOTggcmc9c2NobWFycm4KfiMhIHRpZD05ODc4ODg4MDIKb2sgd28gd29obnN0IER1IGRlbm4sIHZpZWxsZWljaHQga2xhcHB0IGRhcyBqYSBiZWkgRGlyIGF1Y2ggOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDQzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIyLiBBcHIgMjAwMSwgMDU6MjM6MTMpOgp+IyEgcm49QW5hdG9sIHJ0PTk4Nzg5NjYxOSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApIbW0sIGFsc28gaWNoIGJlbnV0eiBkaWUgVG9pbGV0dGUgbnVyIHp1ciBOb3RkdXJmdCwgYWJlciBpY2ggZHVyZnRlIGxldHp0ZW5zCm1hbCBlaW5lbiBCbGljayBpbiBGb29iYXJzIHVuZCBEcmVhbWVycyBLbG9BbGlhcyB3ZXJmZW4gOikKIG8sa2Fja2UscGlzc2Usc3B1ZWxlLFpJTkcgbmFjaGJhcixmcmV1LGh1ZXBmLGdyaW5zLHcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwNDU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYW4sIDIyLiBBcHIgMjAwMSwgMjE6MzY6MTYpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTk4Nzk2ODA4NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApEYXMgd2lsbHN0IGR1IGdhcm5pY2ggd2lzc2VuIDopClVuZCB3ZW5uIGRvY2ggLi4uIGZyYWcgU29sbXlyLCBkZXIgaGF0IGRlbiBCZWdyaWZmIGF1ZmdlYnJhY2h0IDopClVuZCB3ZW5uIGRvY2ggLi4uIGZyYWcgU29sbXlyLCBkZXIgaGF0IGRlbiBCZWdyaWZmIGF1ZmdlYnJhY2h0IDopCgpHcmltTWFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDQ3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIyLiBBcHIgMjAwMSwgMjI6MzY6MzYpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTk4Nzk2ODIwOCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApXZWlsIEZvb2JhciBzb25zdCB2aWVsbGVpY2h0IGF1Y2ggYmVpIERpciBtYWwgWklJSUlORyBtYWNodD8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwNDk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFNvbG15ciwgMjIuIEFwciAyMDAxLCAyMjozODo0Mik6Cn4jISBybj1CaWVsZWZlbGQgcnQ9OTg3OTcxODgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClpJSUlJSU5HIGhlaXNzdCAnU2Nod2FueiBhYicuIFNvIHNjaHdlciBpc3QgZGFzIG5pY2h0LCBkYXMgYXVzenVzcHJlY2hlbiA7KQoKU29MKi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwNTA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYW4sIDIyLiBBcHIgMjAwMSwgMjI6Mzk6MDgpOgp+IyEgcm49U29sbXlyIHJ0PTk4Nzk3MTkyMiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApobW1tbSAuLi4uIAoKR3JpbU1hbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA1MTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoU29sbXlyLCAyMi4gQXByIDIwMDEsIDIyOjM5OjMwKToKfiMhIHJuPUthZmYgcnQ9OTg3OTcxOTU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkhtbW1tbW1tbW0gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwNTI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFNvbG15ciwgMjIuIEFwciAyMDAxLCAyMjozOTo0NCk6Cn4jISBybj1Tb2xteXIgcnQ9OTg3OTcxOTcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkRpZSBIcCBzYWd0IHdhcyBhbmRlcmVzLCBvZGVyIGJpc3QgRHUgUkwgWndlcmdpbiBtaXQgQmFydD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwNTQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFNvbG15ciwgMjMuIEFwciAyMDAxLCAwMTo1Mjo0Nik6Cn4jISBybj1CaWVsZWZlbGQgcnQ9OTg3OTcyMDQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck1hbCBlaW4gc2lubmxvc2VyIEFydGlrZWwsIGRhbWl0IGFsbGUgbWFsIHdpZWRlciBlaW4gJ25uJyB0aXBwZW4ga29lbm5lbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA1NjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoU29sbXlyLCAyMy4gQXByIDIwMDEsIDAxOjU0OjA2KToKfiMhIHJuPUthZmYgcnQ9OTg3OTgzNjE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CnNlbGJzdGxvZXNjaHVuZyB3YWVyIGhpZXIgZGllIEFudHdvcnQgOikgQXVjaCB3ZW5uJ3Mga2VpbmUgRnJhZ2Ugd2FyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA1OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoU29sbXlyLCAyMy4gQXByIDIwMDEsIDA3OjMxOjMzKToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTg4MDAzODI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkRhbm4ga3VzY2hlbG4gZGllIGFiZXIgc2Nob24gc2VpdCBlaW4gcGFhciBTdHVuZGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDYyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDc6MzM6MDUpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODgwMDM5NDEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKKmlyb25pZSBhbiogVmllbGxlaWNodCBhdWNoIE5laWQgKmlyb25pZSBvZmYqIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDYzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDc6MzM6MjMpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTk4ODAwMzk4NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApWYXIgc2NocmVpYnQgZG9wcGVsdGUgUmUncywgaWNoIGhhYnMgZ2VuYXUgZ2VzZWhlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA2NDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoU29sbXlyLCAyMy4gQXByIDIwMDEsIDA3OjMzOjMzKToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTg4MDA0MDA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClVuZCBGYW50YSBhdWNoIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDY5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDc6MzU6MTkpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODgwMDQxMDYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKVmFyKiBwcm9nZ3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDY3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmFjcmlvbiwgMjMuIEFwciAyMDAxLCAwNzozNToyNSk6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4ODAwNDA2OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApXYXMgaGFzdCBEdSB3aWVkZXIgZGllIGdhbnplIE5hY2h0IGdlbWFjaHQgPwoKQWxzbyBLYWZmIGthbm4gbmljaHQgc2NodWxkIHNlaW4gLi4uCgpBbmFjKiAtIE5PQ0ggcHV0em11bnRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA2ODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQmllbGVmZWxkLCAyMy4gQXByIDIwMDEsIDA3OjM1OjU3KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk4ODAwNDEyNSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJY2ggYmluIGF1Y2ggdW5zY2h1bGRpZyA6KQoKLUJpZWxlZmVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA2OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hY3Jpb24sIDIzLiBBcHIgMjAwMSwgMDc6MzY6MzcpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTk4ODAwNDE1NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApMYXJpbmEgaXN0IGFuZ2VibGljaCBhdWNoIHVuc2NodWxkaWcuCgpBbmFjKiAtIG51ZWNodGVybgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA2OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoU29sbXlyLCAyMy4gQXByIDIwMDEsIDA3OjM2OjM4KToKfiMhIHJuPUJpZWxlZmVsZCBydD05ODgwMDQxNTcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQmllbGVmZWxkIGlzJyBuaWUgdW5zY2h1bGRpZwoKKmVpbmZhY2ggbWFsIGJlaGF1cCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwNzA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFNvbG15ciwgMjMuIEFwciAyMDAxLCAwNzozNjo1OCk6Cn4jISBybj1Tb2xteXIgcnQ9OTg4MDA0MTk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CldvdywgZ2xlaWNoIDMgZG9wcGVsdGUgUmUncyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA3MTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTmV3eW9yaywgMjMuIEFwciAyMDAxLCAwNzozOToxMik6Cn4jISBybj1Tb2xteXIgcnQ9OTg4MDA0MjE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkF1ZiBqZWRlbiBGYWxsIGJpbiBpY2ggZ3JvZXNzZXIgdW5kIHdpY2h0aWdlciBhbHMgQmllbGVmZWxkLgoKZXcgWW9yayAtIEdyb3Nzc3RhZHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwNzM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKENoaW5hLCAyMy4gQXByIDIwMDEsIDA3OjQxOjA1KToKfiMhIHJuPVZhcmxhcmlvbiBydD05ODgwMDQzNzggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKU3RhZWR0ZSBzaW5kIGRvY2ggbml4Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDczOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChOZXd5b3JrLCAyMy4gQXByIDIwMDEsIDA3OjQxOjIxKToKfiMhIHJuPVZhcmxhcmlvbiBydD05ODgwMDQzNzggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQWxzbyBpY2ggaGFiIGRhcyBOIGdldGlwcHQgLi4uIHN0ZWh0IGhpZXIgdm9yIG1pciBhdWZtIFRlcm1pbmFsIC4uLgoKTmV3IFlvcmsgLSBhbSBQdWxzIGRlciBaZWl0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDc0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChDaGluYSwgMjMuIEFwciAyMDAxLCAwNzo0MjowNSk6Cn4jISBybj1OZXd5b3JrIHJ0PTk4ODAwNDQ4MSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApTdGFlZHRlIHNpbmQgaGFsdCBkb29mIHVuZCBzdGlua2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA3NTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTWlsa3l3YXksIDIzLiBBcHIgMjAwMSwgMDc6NDQ6MDkpOgp+IyEgcm49Q2hpbmEgcnQ9OTg4MDA0NTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkVpbiBMYW5kIC4uIGRhcyBpY2ggbmljaHQgbGFjaGUuCgoKTWlsa3kgV2F5IHJ1bGV6IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA3NzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTW9udGFudXMsIDIzLiBBcHIgMjAwMSwgMDc6NDU6NDUpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTk4ODAwNDY4MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJaHIgc2VpZCBkb2NoIGtyYW5rLCBzbyBmcnVlaCBhbSBNb250YWdtb3JnZW4uLi4gOy0pCgotTW9udGFudXMgKGdlaHQgamV0enQgZXJzdG0sYWwgaW5zIEJldHQsIGRhcyBlaW56aWdlLCB3YXMgbWFuIHVtIGRpIFplaXQKbWFjaGVuIHNvbGx0ZSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwNzk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFNvbG15ciwgMjMuIEFwciAyMDAxLCAwNzo0NzowMik6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTk4ODAwNDc3OSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp3ZW0gYmVzdGltbXRlcyA9IGVpbiBzY2h3YXJ6ZXIgVGVkZHliYWVyIG1pdCBBeHQgaW4gZGVyIEhhbmQgdW5kIFBlbnRhZ3JhbW0KYXVmJ20gQmF1Y2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDgxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDc6NDk6MDUpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODgwMDQ5Mjcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKZWluIGt1c2NoZWxodW5kPwosCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDgzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDc6NTA6NDkpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODgwMDQ5NjEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSG1tLCBzY2hhZGUsIGljaCBrb25udGUgQW5hKiBuaWNodCB1ZWJycmVkZW4gZWluZW4gS3VzY2hlbE1pY2hHcmltbWJvcm4genUKY2xvbmVuIDopIE5hamEsIFN0cm9oYWxtIG5hY2hoZXIgZnJhZ2VuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDg2OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDc6NTI6MzQpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODgwMDUxMzIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKR3VtbWlodWhuPyBEYXMgaXN0IG5vY2ggbmljaHQgYXVmZ2VnZXNzZW4/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDg3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDc6NTI6NTYpOgp+IyEgcm49U29sbXlyIHJ0PTk4ODAwNTE1NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApBdWEhCiwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwODg6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFNvbG15ciwgMjMuIEFwciAyMDAxLCAwNzo1Mzo0OCk6Cn4jISBybj1Tb2xteXIgcnQ9OTg4MDA1MTc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkdpYnRzIHdhcyBmdWVyIFJlMzFrPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA4OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hY3Jpb24sIDIzLiBBcHIgMjAwMSwgMDc6NTQ6MjgpOgp+IyEgcm49U29sbXlyIHJ0PTk4ODAwNTIyOCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOZW4ga29zdGVubG9zZW4gTGFyc2Jlc3VjaCBrb2VubnRlIGljaCBhbmJpZXRlbiAuLgoKQW5hYyogLSBzcGVuZGFiZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOTA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFNvbG15ciwgMjMuIEFwciAyMDAxLCAwNzo1NDo1MCk6Cn4jISBybj1BbmFjcmlvbiBydD05ODgwMDUyNjggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQWJlciBudXIgaW0gVGVhbSBtaXQgRGlyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDkxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQaXRmYWxsLCAyMy4gQXByIDIwMDEsIDA4OjU3OjE4KToKfiMhIHJuPVNvbG15ciBydD05ODgwMDUyOTAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKc28gZGEgYmluIGljaCB3aWVkZXIsCmhhYiBpY2ggd2FzIHZlcnBhc3N0PwoKcGl0KiAtZ2FlaG5lbmQtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDkyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDg6NTg6NTApOgp+IyEgcm49UGl0ZmFsbCBydD05ODgwMDkwMzggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKbm9lLCBkdSB3YXJzdCBqYSBuaWNoIGRhLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOTM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFBpdGZhbGwsIDIzLiBBcHIgMjAwMSwgMDg6NTk6MTQpOgp+IyEgcm49U29sbXlyIHJ0PTk4ODAwOTEzMCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApoYWJ0IGlociBtaWNoIGV0d2EgdmVybWlzc3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDk0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDg6NTk6NTcpOgp+IyEgcm49UGl0ZmFsbCBydD05ODgwMDkxNTQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGEgZ2lidHMgamVtYW5kZW4sIGRlbiB2ZXJtaXNzZW4gd2lyIG1laHIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOTU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFBpdGZhbGwsIDIzLiBBcHIgMjAwMSwgMDk6MDA6MjMpOgp+IyEgcm49U29sbXlyIHJ0PTk4ODAwOTE5NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApzbz8gd2VuIGRlbm4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDk3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDk6MDE6MzkpOgp+IyEgcm49RmFudGFnaGlybyBydD05ODgwMDkyNzcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRmFlbmd0IG1pdCBHIGFuIHVuZCBtaXQgcmltbWJvcm4gYXVmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA5ODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoUGl0ZmFsbCwgMjMuIEFwciAyMDAxLCAwOTowMjowNyk6Cn4jISBybj1Tb2xteXIgcnQ9OTg4MDA5Mjk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cm5hIHdlbmlnc3RlbnMgd2VyIGRlciBtaWNoIHZlcm1pc3N0IGhhdAoKcGl0KiAtc3RvbHogaW4gZGVyIGdlZ2VuZCBydW1odWVwZmVuZC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOTk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFNvbG15ciwgMjMuIEFwciAyMDAxLCAwOTowMjozNyk6Cn4jISBybj1QaXRmYWxsIHJ0PTk4ODAwOTMyNyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJY2ggaGFiIERpY2ggYXVjaCB2ZXJtaXNzdCwgd29iZWkuLi5oYXQgbWljaCBkYSBuaWNodCBzbyBlaW4gYmVzdHVzc3RlciBHYXN0CmRpZSBnYW56ZSBaZWl0IHp1Z2VsYWJlcnQ/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTAwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQaXRmYWxsLCAyMy4gQXByIDIwMDEsIDA5OjAyOjUzKToKfiMhIHJuPVNvbG15ciBydD05ODgwMDkzNTcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKd29oZXIgc29sbCBpY2ggZGFzIHdpc3Nlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxMDE6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFNvbG15ciwgMjMuIEFwciAyMDAxLCAwOTowMzoyMSk6Cn4jISBybj1QaXRmYWxsIHJ0PTk4ODAwOTM3MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApFY2h0ZSBNdWRkZXIgaGFsdGVuIGlocmUgU3BpZWxwYXVzZW4gZWggbmljaCBkdXJjaCA6KSBHaWJzIHp1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTAyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDk6MDM6MzEpOgp+IyEgcm49U29sbXlyIHJ0PTk4ODAwOTQwMSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApvZGVyIER1IGhhc3QgbmVuIFp3aWxsaW5nIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTAzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQaXRmYWxsLCAyMy4gQXByIDIwMDEsIDA5OjAzOjU1KToKfiMhIHJuPVNvbG15ciBydD05ODgwMDk0MTEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKbmVlIGljaCBiaW4gZWlubWFsaWcsCjIgdm9uIG1laW5lciBzb3J0ZSB3YWVyZW4gamEgd29obCBhdWNoIHRvZWRsaWNoIG9kZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTA0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDk6MDQ6MDkpOgp+IyEgcm49UGl0ZmFsbCBydD05ODgwMDk0MzUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKTnVyIHRvZWRsaWNoPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzEwNTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoUGl0ZmFsbCwgMjMuIEFwciAyMDAxLCAwOTowNDozMyk6Cn4jISBybj1Tb2xteXIgcnQ9OTg4MDA5NDQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cm5hIHdpZSB3dWVyZGVzdCBkdSBkYXMgZGVubiBzb25zdCBuZW5uZW4gc29sPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzEwNjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoU29sbXlyLCAyMy4gQXByIDIwMDEsIDA5OjA1OjI1KToKfiMhIHJuPVBpdGZhbGwgcnQ9OTg4MDA5NDczIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4ClNvIHRvZWRsaWNoIHVuZCBzY2huZWxsIHdpZSBkZXIgQmlzcyBlaW5lciBLbGFwcGVyc2NobGFuZ2U/IDEwMCBNZWdhVG9ubmVuCkdld2ljaHQsIGRhc3MgYXVmIGVpbmVuIHJ1bnRlcmZhZWxsdD8gMzAgRWlzZW5iYWhuenVlZ2UsIGRpZSBlaW5lbgpuYWNoZWluYW5kZXIgdWViZXJyb2xsZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTA3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQaXRmYWxsLCAyMy4gQXByIDIwMDEsIDA5OjA1OjQ1KToKfiMhIHJuPVNvbG15ciBydD05ODgwMDk1MjUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKaGFzdCBkYSBlcmZhaHJ1bmcgbWl0IGphPwoqZ2cqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTA4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDk6MDY6MTUpOgp+IyEgcm49UGl0ZmFsbCBydD05ODgwMDk1NDUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKS2xpbmd0IHNvLCBvZGVyPyBEdSB3ZWlzc3QgZG9jaCwgaWNoIGJpbiB2ZXJydWVja3QsIHdhcyBtZWluc3QgRHUgd29oZXIgZGFzCmtvbW10IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTA5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQaXRmYWxsLCAyMy4gQXByIDIwMDEsIDA5OjA2OjQ3KToKfiMhIHJuPVNvbG15ciBydD05ODgwMDk1NzUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKd2VubiBpY2ggZWhybGljaCBiaW4gd2lsbCBpY2ggZGFzIGdhciBuaWNodCB3aXNzZW4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTEwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDk6MDc6NTQpOgp+IyEgcm49UGl0ZmFsbCBydD05ODgwMDk2MDcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQm9haCwgRHUgR3JvYmlhbiEgSWNoIGlnbm9yaWVyIERpY2ggYWIgc29mb3J0LCB1bnNlcmUgRnJldW5kc2NoYWZ0IGthbm5zdCBEdQp2ZXJnZXNzZW4uLi4KClNvbCogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxMTE6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFBpdGZhbGwsIDIzLiBBcHIgMjAwMSwgMDk6MDg6MTgpOgp+IyEgcm49U29sbXlyIHJ0PTk4ODAwOTY3NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApiaXR0ZSBhbGxlcywgbnVyIGRhcyBuaWNodAoqeml0dGVyKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzExMjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoU29sbXlyLCAyMy4gQXByIDIwMDEsIDA5OjA4OjQ0KToKfiMhIHJuPVBpdGZhbGwgcnQ9OTg4MDA5Njk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck5hIGd1dCwgZGllIGxldHp0ZSBHbmFkZW5mcmlzdCBzZWkgRGlyIGdld2FlaHJ0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTEzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQaXRmYWxsLCAyMy4gQXByIDIwMDEsIDA5OjA5OjEwKToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTg4MDA5NzMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmhtbSB3aWUgbGFuZyBpc3QgZGllPyBiaXMgaWNoIGRpY2ggZGFzIG5hZWNoc3RlIG1hbCBpbiBkZXIgYXJlbmEga2lsbGU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTE0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDk6MDk6MjIpOgp+IyEgcm49UGl0ZmFsbCBydD05ODgwMDk3NTAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRmFuZyBnYXIgbmljaHQgZXJzdCBhbiBGYW50YSouCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTE2OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQaXRmYWxsLCAyMy4gQXByIDIwMDEsIDA5OjEwOjE0KToKfiMhIHJuPUZhbnRhZ2hpcm8gcnQ9OTg4MDA5Nzk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CnNlaWQgZG9jaCBlaW5mYWNoIG1hbCBmcmllZGxpY2ggKnNldWZ6KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzExNzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW5hY3Jpb24sIDIzLiBBcHIgMjAwMSwgMDk6MTA6MjYpOgp+IyEgcm49UGl0ZmFsbCBydD05ODgwMDk4MTQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKZ2VuYXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxMTc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFNvbG15ciwgMjMuIEFwciAyMDAxLCAwOToxMDozMik6Cn4jISBybj1QaXRmYWxsIHJ0PTk4ODAwOTgxNCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJY2ggaGFiIG5pY2gnIGFuZ2VmYW5nZW4sIEZhbnRhKiBoYXQgSWhyZW4gVWViZXJtdWVkdW5nc2ZsYXNoIGdla3JpZWd0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTE4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDk6MTA6NDYpOgp+IyEgcm49U29sbXlyIHJ0PTk4ODAwOTgzMiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApBbHNvIEhhbHogTWF1bCwgZGFua2UgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxMTg6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKFBpdGZhbGwsIDIzLiBBcHIgMjAwMSwgMDk6MTA6NTApOgp+IyEgcm49U29sbXlyIHJ0PTk4ODAwOTgzMiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApuYSBkYW5uIGJlbGFzcyBlcyBqZXR6dCBkYWJlaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzExOTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoU29sbXlyLCAyMy4gQXByIDIwMDEsIDA5OjEwOjU0KToKfiMhIHJuPVNvbG15ciBydD05ODgwMDk4NDYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKKmlyb255IG9mZioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXQ/IFdlciBiaXN0IER1IGRlbm4/IDopIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDk6MTE6NTUpOgp+IyEgcm49U29sbXlyIHJ0PTk4NzY0MTA3OCByZz1zY2htYXJybgp+IyEgdGlkPTk4NzY0MTA3OApTaW5kIHdpciB3aWVkZXIgYmVpbSBYWFhYTCBUaGVtYSBhbmdlbGFuZ3Q/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhdD8gV2VyIGJpc3QgRHUgZGVubj8gOikgKFBpdGZhbGwsIDIzLiBBcHIgMjAwMSwgMDk6MTI6MTUpOgp+IyEgcm49U29sbXlyIHJ0PTk4ODAwOTkxNSByZz1zY2htYXJybgp+IyEgdGlkPTk4NzY0MTA3OAphbHNvIGljaCB2b3RpZXJlIGhpZXJtaXQgZnVlciBuZW4gdGhlbWF3ZWNoc2VsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXYXQ/IFdlciBiaXN0IER1IGRlbm4/IDopIChTb2xteXIsIDIzLiBBcHIgMjAwMSwgMDk6MTM6MjkpOgp+IyEgcm49UGl0ZmFsbCBydD05ODgwMDk5MzUgcmc9c2NobWFycm4KfiMhIHRpZD05ODc2NDEwNzgKV2llIGdlc2FndCwgaWNoIGJpbidzIG5pY2h0IGdld2VzZW4uIEFiZXIgRmFudGEqLCB3ZW5pZ3N0ZW5zIGtvbW1zZSBtaXQgdW5kCmxhc3NlbiBtaWNoIG5pY2gnIGVpbmZhY2ggc28gZmFsbGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXYXQ/IFdlciBiaXN0IER1IGRlbm4/IDopIChQaXRmYWxsLCAyMy4gQXByIDIwMDEsIDA5OjE0OjAzKToKfiMhIHJuPVNvbG15ciBydD05ODgwMTAwMDkgcmc9c2NobWFycm4KfiMhIHRpZD05ODc2NDEwNzgKUlVIQUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUUKCnBpdCogLWF1c25haG1zd2Vpc2UgbWFsIHNjaHJlaWVuZC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZlYXR1cmVzID8gOikgKFRoYW5vcywgMjMuIEFwciAyMDAxLCAxOTo0NzowNSk6CgpnIG9ydGUKTGFyaW5hICAgICAgTmljaHRzIHp1IHNlaGVuLgoKU291bGh1bnRlciAgTmljaHRzIHp1IHNlaGVuLgoKVGhhbm9zICAgICAgS2VpbmUgSW5mb3JtYXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCllhbGFkYW4gICAgIERlciBTYWV1cmVyYXVtICAgCgpmaSBsYXJpbmEKTGFyaW5hIGlzdCBuaWNodCBhbndlc2VuZC4KCmZpIHNvdWxodW50ZXIKU291bGh1bnRlciBpc3QgbmljaHQgYW53ZXNlbmQuCgpTdGFya2VzIHRlYW0gOikgenUgaHVlbGYKClRoYW5vcywgaW1tZXIgdmVybGFzcyBhdWZzIFRlYW0gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdyaW1tYW4gdW5kIGVpbiBnZXdpc3NlciBQaGFyYW8uLi4gKEZvb2JhciwgMjMuIEFwciAyMDAxLCAyMTozNTo0MCk6CltTZWhlcjpHcmltbWFuXSBhdXRzY2ggLi4uIEVzdGhla290aCBpcyBqYSBuIGdhbnogZmllc2VyIDopCi4uLgpbU2VoZXI6R3JpbW1hbl0gbmVlZSBpY2ggZW50ZmVybmUgbWljaCBkYSB3aWVkZXIgbGF1dGxvcyA6KQpbU2VoZXI6R3JpbW1hbl0gbXVzcyBqYSBuaWNoIHNlaW4sIGRhcyBpY2ggbWljaCB2b24gbmVyIEtsb3JvbGxlIHplcmxlZ2VuCltTZWhlcjpHcmltbWFuXSBsYXNzZSA6KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAouLi4KW1NlaGVyOkdyaW1tYW5dIGFhYWggbnUgc2VoZSBpY2ggd2FzIGRlciBTUGFzcyBiZWkgRXNodGVob3Qgb2RlciB3aWUgZGVyCltTZWhlcjpHcmltbWFuXSBMdWVtbWVsIGhlaXNzdCBpc3MgLi4uIHBsb2V0emxpY2ggaGF0dGUgaWNoIC01IEF1c2RhdWVyIDopCltTZWhlcjpHcmltbWFuXSBOZXR0IDopICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAouLi4KVW5kIHNjaGxpZXNzbGljaDoKW1RvZDpMYXJzXSBEZXIgRmx1Y2ggZGVzIFBoYXJhb3MgRXN0aGVrb3RoIGhhdCBnZXJhZGUgR3JpbW1hbiB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdyaW1tYW4gdW5kIGVpbiBnZXdpc3NlciBQaGFyYW8uLi4gKEFyaywgMjMuIEFwciAyMDAxLCAyMTozNzoyNik6Cn4jISBybj1Gb29iYXIgcnQ9OTg4MDU0NTQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4MDU0NTQwCklzdCBkYW1pdCBqZXR6dCBiZXdpZXNlbiwgZGFzcyBhbiBLbG9wYXBpZXIgbWFuY2htYWwgbm9jaCBTY2gqKioqKiBoYWVuZ3Q/IDteKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR3JpbW1hbiB1bmQgZWluIGdld2lzc2VyIFBoYXJhby4uLiAoR3JpbW1hbiwgMjMuIEFwciAyMDAxLCAyMjoyNzo0NSk6Cn4jISBybj1BcmsgcnQ9OTg4MDU0NjQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4MDU0NTQwCkhtbW1tIC4uLiBtZWluIEZlaGxlciB3YXIsIGRhcyBpY2ggbmUgWmVpdGxhbmcgbmljaCBhbSBSZWNobmVyIHdhciAuLi4gdW5kCmRhbWl0IGRpZSBBYnp1ZWdlIGxlaWNodCB2ZXJwYXNzdCBoYWJlIC4uLiBuYWphIC4uLgpTaGl0IGhhcHBlbnMgLi4uIG11c3MgbWFuIGFsbGVzIG1hbCBlcmxlYnQgaGFiZW4gOikKQlRXIC4uLiB3byBpcyBtZWluIEZMYW1tZW5wYW56ZXI/IDopCgpHcmltTWFuIC0gc3RpcmJ0IG5pZSB3aWVkZXIgYW0gU1QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFbmRsaWNoIHdpZWRlciBkYTogRGVyIFBhZGVyYm9ybmVyIFN0YW1tdGlzY2ggOy0pIChEZWVwYmx1ZSwgMjMuIEFwciAyMDAxLCAyMjozMDoxNyk6Cn4jISBybj1Sb25kYSBydD05ODgwNDQwMjMgcmc9dHJlZmZlbgp+IyEgdGlkPTk4ODA0NDAyMwpXYXMgaGF0IGRpZSBXaXJ0aW4gZGFtaXQgenUgdHVuLCBvYnMgZGEgZW5nIHdpcmQ/CkRlZXBibHVlLCBpbiBkZXIgcGFzc2VuZGVuIFJ1YnJpawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFbmRsaWNoIHdpZWRlciBkYTogRGVyIFBhZGVyYm9ybmVyIFN0YW1tdGlzY2ggOy0pIChHcmltbWFuLCAyMy4gQXByIDIwMDEsIDIyOjMxOjIxKToKfiMhIHJuPURlZXBibHVlIHJ0PTk4ODA1NzgxNyByZz1zY2htYXJybgp+IyEgdGlkPTk4ODA0NDAyMwplciBoYXQgZG9jaCB3YXMgZ2VzYWd0IGRhcyBlciBzaWUgZXR3YXMga2VubnQgLi4uIHVuZCB3ZW5uIGJlaSBpaHIgenUgdmllbAprb21tZW4sIHdpcmQgc2llIGVuZz8gT2RlciBoYWIgaWNoIGRhIHdhcyB2ZXJ3ZWNoc2VsdD8KR3JpbU1hbiAtIGhldXRlIG1hbCB2ZXJzYXV0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR3JpbW1hbiB1bmQgZWluIGdld2lzc2VyIFBoYXJhby4uLiAoQXJrLCAyMy4gQXByIDIwMDEsIDIyOjM2OjEyKToKfiMhIHJuPUdyaW1tYW4gcnQ9OTg4MDU3NjY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4MDU0NTQwCjk5JSBhbGxlciBUb2RlIHNpbmQgZWlnZW5lcyBWZXJzY2h1bGRlbi4gRGVyIFJlc3QgaXN0IHN1Ympla3RpdiB1bmVya2xhZXJiYXIsCmFiZXIgc3RhdGlzdGlzY2ggc293aWVzbyBuaWNodCByZWxldmFudC4KClNjaG9uIG9lZnRlciBnZXNlaGVuOiBLYWVtcGZlciBuZWlnZW4gZGF6dSwgbmFjaCBkZW0gS2FtcGYgZWluZSB6dSByYXVjaGVuIHVuZAp1ZWJlciBpaHJlIHRvbGxlbiBUYXRlbiBlaW5lIElkbGVwYXVzZSBlaW56dWxlZ2VuLiBXZWlzcyBkYXMgQnJpZXNlbHRyaW0/Pz8KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHcmltbWFuIHVuZCBlaW4gZ2V3aXNzZXIgUGhhcmFvLi4uIChHcmltbWFuLCAyMy4gQXByIDIwMDEsIDIyOjM3OjI0KToKfiMhIHJuPUFyayBydD05ODgwNTgxNzIgcmc9c2NobWFycm4KfiMhIHRpZD05ODgwNTQ1NDAKVG9sbGUgVGF0IHdhZXJlIGdld2VzZW4sIHdlbm4gaWNoIGlobiB1bWxlZ2UsIGFiZXJpY2ggYmluIGphIHppZW1saWNoIGZlaWdlCndlZ2dlcmFubnQgLi4uCkFiZXIgYml0dGUgbmljaCBCcmllc2VsdHJpbSBzYWdlbiwgZGVyIG11c3MgamEgbmljaCBhbGxlcyB3aXNzZW4gOikKCkdyaW1NYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEdyaW1tYW4gdW5kIGVpbiBnZXdpc3NlciBQaGFyYW8uLi4gKEVsYmVyZXQsIDIzLiBBcHIgMjAwMSwgMjI6Mzc6NTgpOgp+IyEgcm49QXJrIHJ0PTk4ODA1ODE3MiByZz1zY2htYXJybgp+IyEgdGlkPTk4ODA1NDU0MAphbHNvIGJlaSBtaXIgd2FyZW4gMTAwJSBhbGxlciBUb2RlIGVpZ2VuZXMgVmVyc2NodWxkZW4gdW5kIFpldWduaXMgbWVpbm5lcgpuaWNodCB6dSBmYXNzZW5kZW4gVW5nZXNjaGlja3RoZWl0IHVuZCBEdW1taGVpdCA6KQoKVW5kIGljaCBiaW4gTmljaHRyYXVjaGVyIDspCkVsYmkgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHcmltbWFuIHVuZCBlaW4gZ2V3aXNzZXIgUGhhcmFvLi4uIChBcmssIDIzLiBBcHIgMjAwMSwgMjI6NDc6NTIpOgp+IyEgcm49RWxiZXJldCBydD05ODgwNTgyNzggcmc9c2NobWFycm4KfiMhIHRpZD05ODgwNTQ1NDAKU2VsYnN0IHNjaHVsZCwgZWJlbiB1ZWJlcmtvbW10IG1pY2ggZGVyIEtvbW1lbnRhcjogIlVuZCBpY2ggYmluIGF1Y2gKS2FlbXBmZXIuIgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBpdGZhbGwgc2llaHQgcm90IDopIChTb2xteXIsIDI0LiBBcHIgMjAwMSwgMDk6MTA6MTQpOgogRGVpbiBGcmV1bmQgUGl0ZmFsbCBocm1wZnQgYXVzIGRlciBGZXJuZS4KIERlaW4gRnJldW5kIFBpdGZhbGwgdGVpbHQgRGlyIG1pdDogQVRUQUNLRSEKIFBpdGZhbGwgdGVpbHQgRGlyIG1pdDogZXJzdCBkaWUgZG9vZmUgdmVyZWlzZXJpbiB1bmQgZGFubiBkZW4gZmV1ZXJkcmFjaGVuLgogTGFyaW5hIGVyc2NoZWludCBtaXQgZWluZW0gTGFlY2hlbG4gYXVmIGRlbiBMaXBwZW4uCiBYZW5hZGEgemVybGF0c2NodCBlaW5lbiBad2VyZy4KCldlbm4gWGVuYWRhIFp3ZXJnZSB6ZXJsYXRzY2h0LCBkYW5uIGthbm4gaWNoIGphIG5vY2ggdmVyc3RlaGVuLCBkYXNzIFBpdCogc2llCmZ1ZXIgZWluZW4gRmV1ZXJkcmFjaGVuIGhhZWx0LCBhYmVyIExhcmluYSBzb2xsICduZSBWZXJlaXNlcmluIHNlaW4/IE1pdCBzbycKbmVtIExhZWNoZWxuPyA6KQoKU29sKiwgc2ljaCB3dW5kZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFpvb2sgZXJmdWVsbHQgZGFzIE1pdGxlaWQuLi4uIChCYW1iaSwgMjQuIEFwciAyMDAxLCAwOToxNDo0OCk6Cn4jISBvbj1CYW1iaSBvdD05ODgwOTY0ODIgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVpvb2sgcnQ9OTg4MDI5MjkzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTg4MDI5MjkzCkljaCBnbGF1YiBEaXIga2VpbiBXb3J0LiBEYXMgaXN0IGJlc3RpbW10IG51ciBlaW4gZ2FueiBnZW1laW5lciBUcmljayB2b24gRGlyIQpHaWJzIHp1IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBpdGZhbGwgc2llaHQgcm90IDopIChYZW5hZGEsIDI0LiBBcHIgMjAwMSwgMDk6NTA6MDgpOgp+IyEgcm49U29sbXlyIHJ0PTk4ODA5NjIxNCByZz1zY2htYXJybgp+IyEgdGlkPTk4ODA5NjIxNApJY2ggZGVtZW50aWVyZSBoaWVybWl0IGVpbiBEcmFjaGUgenUgc2VpbiA6KQpYZW5hZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUGl0ZmFsbCBzaWVodCByb3QgOikgKEdyZWlmYXgsIDI0LiBBcHIgMjAwMSwgMTA6MDg6NDYpOgp+IyEgcm49WGVuYWRhIHJ0PTk4ODA5ODYwOCByZz1zY2htYXJybgp+IyEgdGlkPTk4ODA5NjIxNAphdXMgZ2V3b2VobmxpY2ggZ3V0IGluZm9ybWllcnRlbiBLcmVpc2VuIHdpcmQgZGFzICh6dW1pbmRlc3RlbnMgbWFuY2htYWwpCmluIFp3ZWlmZWwgZ2V6b2dlbi4KaS5BLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUGl0ZmFsbCBzaWVodCByb3QgOikgKFhlbmFkYSwgMjQuIEFwciAyMDAxLCAxMDoxMToxMCk6Cn4jISBybj1HcmVpZmF4IHJ0PTk4ODA5OTcyNiByZz1zY2htYXJybgp+IyEgdGlkPTk4ODA5NjIxNApEYXMgaXN0IGRpZSBwdXJlIFZlcmxldWdudW5nIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSTCBNdWQgKFNvbG15ciwgMjQuIEFwciAyMDAxLCAxNjozOTo0MCk6CiBIaWVyIG1hbCB3aWVkZXIgZWluIG5ldHRlcyBCZWlzcGllbCBmdWVyIGRpZSBMZXV0ZSwgZGllIHNjaG9uIHZpZWwgenUKIGxhbmdlIGhpZXIgcnVtaGFlbmdlbiB1bmQgZGFzIE11ZCBtaXQgZGVtIFJMIGdldGF1c2NodCBoYWJlbiA6KQoKIFtUcnZlczpIaXNBc3VsIGdlaHQgZmx1Y2hlbmQgenVydWVjayB6dSBzZWluZW0gU2NocmVpYnRpc2NoIHVuZCBsZXJudCB3aWVkZXIKICAgIGF1ZnMgQWJpICp3aW5rKl0KIFtUcnZlczpTaXJqb2huXSBIbW1tLCBHaWxkZW5zdHVmZSAyMyBLYWVtcGZlcnNlaGVyIC0gZHUga2FubnN0IERlaW4gQWJpIGphCiBbVHJ2ZXM6U2lyam9obl0gYXVjaCBhbmRlcnMgInZlcmRpZW5lbiIgOikKIFtUcnZlczpTb2xteXIgZ3JpbnN0IGJyZWl0Ll0KClNvbCosIHNldWZ6ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqd3VlcmcqKmJyZWNoKmtvdHoqIChTb2xteXIsIDI0LiBBcHIgMjAwMSwgMTg6NDE6MjQpOgogWFhYIHRlaWx0IERpciBtaXQ6IG1hbCBzZWhlbiwgaGFiIG1pciBtaXQgbmVyIHBpenphIGRlbiBtYWdlbiB2ZXJkb3JiZW4KIFhYWCB0ZWlsdCBEaXIgbWl0OiB1bmQgbWlyIGdlcmFkZSBlcnN0bWFsIGtvaGxldGFibGV0dGVuIGdlaG9sdCA6LS8KIFhYWCB0ZWlsdCBEaXIgbWl0OiBiYWFhaCwga29obGV0YWJsZXR0ZSBpbiB3YXNzZXIgYXVmZ2Vsb2VzdCBzaW5kIGphCiBYWFggdGVpbHQgRGlyIG1pdDogb2JlcmVrbGlnCgogRHUgdGVpbHN0IFhYWCBtaXQ6IEtvaGxldGFibGV0dGVuIHNpbmQgZWggZWtsaWcKIER1IHRlaWxzdCBYWFggbWl0OiBVbmQgaWNoIHNjaGllYiBtaXIgamV0enQgbmUgcGl6emEgaW4gZGVuIG9mZW4gOikKIER1IHRlaWxzdCBYWFggbWl0OiA6PSkpKSkpCiBUaGFub3MgcnVmdDogSGV1dGUgaXN0IGRhcyBFbmRlIGFsbGVyIFRhZ2UuLi4uCgpOYSBkYW5uIG1hbCAqISpHVVRFTiBNQU1QRiohKiBTb2wqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3dhcyBhYmVyIGF1Y2ggKEVsYmVyZXQsIDI0LiBBcHIgMjAwMSwgMjA6MDQ6NDIpOgpBbHNvIGRlciBpc3QgYXVjaCBrZWluIEdlbmVyYWwgdW5kIG1hY2h0IHNvd2FzOgoKQnVscmlrIFRob3JhbiBoaW5kZXJ0IERpY2ggZGFyYW4sIGRlbiBIZWJlbCB6dSBiZXdlZ2VuLgpCdWxyaWsgVGhvcmFuIGJydWVsbHQ6IFdhcyBzb2xsIGRlciBVbnNpbm4/IFJhdXMgaGllciEhCkJ1bHJpayBUaG9yYW4gd2lyZnQgRGljaCBkaWUgVHJlcHBlIHJ1bnRlci4KRGVyIFdhY2hyYXVtLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIG9iZW4gdW5kIG5vcmRlbi4KR3JvZ2cgWnIna3VtcGYuCll6YWcgWmhvci4KWXphZyBaaG9yIHN0ZWh0IHN0aWxsIHVuZCBncnVlc3N0IERpY2guCgpJY2ggd2lsbCBkZW4genVtIER1ZWxsIGZvcmRlcm4gZHVlcmZlbiAhISEhIQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChab29rLCAyNS4gQXByIDIwMDEsIDEyOjUzOjExKToKW0FsbGdlbWVpbjpTYW1oYWluXSBrb2VubnQgbWlyIHdlciBkaWUgZmVzdHVuZ3N3YWVjaHRlciB2b3IgbWlyIHdlZ2hhdW4gPwpbVG9kOkxhcnNdIEVpbiBXYWVjaHRlciBkZXIgWndlcmdlbmZlc3R1bmcgaGF0IGdlcmFkZSBTYW1oYWluIHVtZ2VicmFjaHQuCgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwaWVsZXJoaWxmZSA6LSkgKExpYXJhLCAyNS4gQXByIDIwMDEsIDEzOjUwOjU1KToKVHJ2ZXM6U21lcnQgaGlobyB3YXIgc2Nob24gc28gemllbWxpY2ggemllbWxpY2ggbGFuZ2UgbmljaHQgbWVociBkYS4uLi4gd2FzClRydmVzOlNtZXJ0IHNpbmQgbW9tZW50YW4gZGllIGJlc3RlbiBBdXNydWVzdHVuZ3NnZWdlbnN0YWVuZGUgZnVlciBuZW4KVHJ2ZXM6U21lcnQgdHJ2ZXM/PwpUcnZlczpCaWVsZWZlbGQgdGFuamlhbiA6KQoKTFogKHNvcnJ5IGZ1ZXIgZGllIGZlaGxlbmRlbiBLbGFtbWVybiwgZGFzIGlzdCB6TVVEKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNwaWVsZXJoaWxmZSA6LSkgKEFybWl0YWdlLCAyNS4gQXByIDIwMDEsIDE0OjMyOjM1KToKfiMhIHJuPUxpYXJhIHJ0PTk4ODE5OTQ1NSByZz1zY2htYXJybgp+IyEgdGlkPTk4ODE5OTQ1NQoKRHUgbWVpbnN0IGVoZXIsIGRhc3MgZGllcyBlaW4gZmFsc2NoIGtvbmZpZ3VyaWVydGVzIHpNdWQgaXN0LiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTcGllbGVyaGlsZmUgOi0pIChTb2xteXIsIDI1LiBBcHIgMjAwMSwgMTQ6MzM6NDMpOgp+IyEgcm49QXJtaXRhZ2UgcnQ9OTg4MjAxOTU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4MTk5NDU1CmhlaGUsIGRlbSBzdGltbWUgaWNoIGVpbmZhY2ggbWFsIHp1IDopICdwcmVmZXJlbmNlcycgc29sbHRlIG1hbiBzaWNoIGltbWVyCnp1ZXJzdCBhbnNjaGF1biA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIHdvbGx0IGljaCBuaWNodC4uLi4uIChab29rLCAyNS4gQXByIDIwMDEsIDE0OjM2OjQwKToKRHUgc2NobWVpc3N0IGVpbiBLaXNzZW4gbmFjaCBWYXJkaW9uLgpQQUZGISBEdSB0cmlmZnN0IFZhcmRpb24gbWl0dGVuIGlucyBHZXNpY2h0LgpWYXJkaW9uIHdpcmQga3VyeiB2b24gZWluZXIgbGV1Y2h0ZW5kZW4gQXVyYSBlaW5nZWh1ZWxsdCwgZGllIHZvbiBzZWluZW0KQW11bGV0dCBhdXN6dWdlaGVuIHNjaGVpbnQuCgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYXMgd29sbHQgaWNoIG5pY2h0Li4uLi4gKFNvbG15ciwgMjUuIEFwciAyMDAxLCAxNDozNzo1MCk6Cn4jISBybj1ab29rIHJ0PTk4ODIwMjIwMCByZz1zY2htYXJybgp+IyEgdGlkPTk4ODIwMjIwMApIbW0sIHNjaHJlaWIgaWNoIGpldHp0IG5lIE1haWwgYW4gTXVhZGliIG9kZXIgbGllYmVyIG5pY2h0PyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIG11c3MgTGllYmUgc2VpbiA6KSAqc2V1ZnoqIChTb2xteXIsIDI1LiBBcHIgMjAwMSwgMTQ6NDY6NDYpOgogW01vZXJkZXI6R2Vpc3QgZWluZXMgU2l2b2sgRHJha29uaWVyc10gSWNoIGJpbiBiZWVpbmRydWNrdCwgUGl0ZmFsbC4KIFtNb2VyZGVyOlBpdGZhbGxdIExBU1MgVUdJIElOIFJVSEUhISEhISEhISEKCiBEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogUGl0ZmFsbCBsaWVidCBVZ2ksIFVnaSBsaWVidCBQaXRmYWxsIDopCgpTb2wqLCBIQSEgTGlhcmEsIHVuZCBtaXQgS2xhbW1lcm4gdW5kIFpNdWQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYXMgbXVzcyBMaWViZSBzZWluIDopICpzZXVmeiogKFNvbG15ciwgMjUuIEFwciAyMDAxLCAxNTowMTozMyk6Cn4jISBybj1Tb2xteXIgcnQ9OTg4MjAyODA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4MjAyODA2CiBVbmQgc29nbGVpY2ggZm9sZ3QgZGVyIEJld2VpcyA7KQogW01vZXJkZXI6R2Vpc3QgZWluZXMgc2Nod3VsZW4gWndlcmdzXSBOZW5lbmUsIHR1ZXRlbGRpdHVldCwgRHUgYmlzdCBqYSBuZW4KIFtNb2VyZGVyOkdlaXN0IGVpbmVzIHNjaHd1bGVuIFp3ZXJnc10gZ2FueiBzY2hsaW1tZXIgRmluZ2VyLCBVZ2khCgpTb2wqLCBHZXJ1ZWNodGUgdmVyYnJlaXRlbmQsIENoYW9zS0FFTVBGRVIgYXVzIExlaWRlbnNjaGFmdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHV1dXBzPyAoR3JpbW1hbiwgMjUuIEFwciAyMDAxLCAxNzoyNDoxNyk6CkRhcyBTY2h3ZXJ0IGthbm5zdCBkdSBsZWlkZXIgbmljaHQgc2NoYWVyZmVuLCB3ZWlsIGVzIGtlaW5lIEtsaW5nZSBiZXNpdHp0LgoKV2llIG1hY2h0IGRhcyBEcmVja3N0ZWlsIGRhbm4gU2NoYWRlbj8gTHVmdHp1Zz8gT2RlciB3YXM/CgpHcmltTWFuIC0gZXJzdGF1bnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppY2ggd2Vpc3MgOikgKFRoYW5vcywgMjUuIEFwciAyMDAxLCAyMjozMDowMyk6CkJpZWxlZmVsZCB0ZWlsdCBEaXIgbWl0OiBkdSBidWdnc3QgOikgMjI6MjgKWm9vayB0ZWlsdCBEaXIgbWl0OiBEYSBpc3QgZWluIEJ1Zy4gOikgMjI6MjgKTXVwZmVsIHRlaWx0IERpciBtaXQ6IGR1IGJ1Z2dzdCAyMjoyOApNb3Jnb25hdGUgdGVpbHQgRGlyIG1pdDogaG9lciBhdWYgenUgemF1YmVybiAyMjoyOAoKZW50c29yZ2UgYnVndCA6KQpUaGFub3MKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBpY2ggd2Vpc3MgOikgKEVsYmVyZXQsIDI1LiBBcHIgMjAwMSwgMjI6MzE6NDMpOgp+IyEgcm49VGhhbm9zIHJ0PTk4ODIzMDYwMyByZz1zY2htYXJybgp+IyEgdGlkPTk4ODIzMDYwMwpoZWlzc3QgZGFzIGVpZ2VudGxpY2ggZHUgYnVnc3Qgb2RlciBkdSBidWdnc3Q/CgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGljaCB3ZWlzcyA6KSAoR2xvaW5zb24sIDI2LiBBcHIgMjAwMSwgMDA6NTQ6MjQpOgp+IyEgcm49RWxiZXJldCBydD05ODgyMzA3MDMgcmc9c2NobWFycm4KfiMhIHRpZD05ODgyMzA2MDMKRGFzIGhlaXNzdCAiSG9lciBhdWYgb2RlciBpY2ggemFwIERpY2ghIi4KCkdsb2luKHNvbiksIEthZXNlbWFnaWVyaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGljaCB3ZWlzcyA6KSAoRWxiZXJldCwgMjYuIEFwciAyMDAxLCAwMTowMToyNyk6Cn4jISBybj1HbG9pbnNvbiBydD05ODgyMzkyNjQgcmc9c2NobWFycm4KfiMhIHRpZD05ODgyMzA2MDMKTmVlLCBkYXMgaGVpc3N0OiBIb2VyIGF1Ziwgb2RlciBpY2gga2F1IERpciBlaW4gT2hyIGFiIDopCgpFbGJpIHplaWd0IHNlaW4gQWJiZXMgT2hyIHJ1bSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2RkYSBzby4uLiAoSW1kYSwgMjYuIEFwciAyMDAxLCAwMzoxODoxOSk6CiAgRHUgdHJpZmZzdCBNb3JkaWxsYXIgaGFydC4KRHUgZnJhZ3N0IE1vcmRpbGxhcjogbmFjaCBwYXJ0eT8gCk1vcmRpbGxhciBmYWVsbHQgdG90IHp1IEJvZGVuLgpdIFtNb2VyZGVyOkdlaXN0IE1vcmRpbGxhcnNdIEltZGEga29tbXQgenVyIFBhcnR5IHVuZCBoYXV0IG1pY2ggZWluZmFjaCB1bSEKCgpobW0sIHdhciBkYXMgbmUgYW50d29ydCA/CgpJbWRhLiB1bnp1cmVjaG51Z3NmYWVoaWcuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogYmxpenphcmQgdW5kIGRhcyBiYXR0bGUubmV0IChCYW1iaSwgMjYuIEFwciAyMDAxLCAwOToyMTo1OCk6Cn4jISBybj1TdHJvaGFsbSBydD05ODgyNjg5MDMgcmc9d3d3Cn4jISB0aWQ9OTg4MjY4ODI5CkF1cyB3YXMgdHJpZ2dlcnN0IER1PyBBdWYgIkxhZyI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZXNjaHdpc3Rlcj8gKFZhcmRpb24sIDI2LiBBcHIgMjAwMSwgMTY6MDQ6MzEpOgpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4gKDE2OjAyKQpEZWluIEZyZXVuZCBFbGJlcmV0IHRlaWx0IERpciBtaXQ6IFNjaHdlc3RlcmNoZW4gOykKClZhcmRpb24sIHZlcnd1bmRlcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBnZXNjaHdpc3Rlcj8gKEVsYmVyZXQsIDI2LiBBcHIgMjAwMSwgMTY6MDU6NTcpOgp+IyEgcm49VmFyZGlvbiBydD05ODgyOTM4NzEgcmc9c2NobWFycm4KfiMhIHRpZD05ODgyOTM4NzEKa2xhciwgd3Vzc3Rlc3QgZHUgZGFzIG5pY2h0ID8gOikKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZ2VzY2h3aXN0ZXI/IChIdW1uaSwgMjYuIEFwciAyMDAxLCAxNzozMzo1NSk6Cn4jISBybj1FbGJlcmV0IHJ0PTk4ODI5Mzk1NyByZz1zY2htYXJybgp+IyEgdGlkPTk4ODI5Mzg3MQpBYiBzb2ZvcnQgaXN0IEVsYmVyZXQgdW5zZXIgYWxsZXIgT25rZWwuCkJld2VpczogSHlkcmEgaXN0IHVuc2VyIGFsbGVyIFRhbnRlLgpFbGJlcmV0IGlzdCBCcnVkZXIgdm9uIEh5ZHJhLgpIbW0uLnN0aW1tdCBuaWNodCB1bmJlZGluZ3QsIHZpZWxsZWljaHQgaXN0IEVsYmVyZXQgYXVjaCB1bnNlciBhbGxlciBQYXBhLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGdlc2Nod2lzdGVyPyAoRWxiZXJldCwgMjYuIEFwciAyMDAxLCAxNzozNjoyMik6Cn4jISBybj1IdW1uaSBydD05ODgyOTkyMzUgcmc9c2NobWFycm4KfiMhIHRpZD05ODgyOTM4NzEKZGFubiBnZWh0IGpldHp0IG1hbCBhbGxlIHNjaG9lbiBpbnMgQmV0dC4gSXN0IHNjaG9uIHNwYWV0IGZ1ZXIgZXVjaCwgS2lubmVycwo6KQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR3JhdHMgQzQgOikgKFNvbG15ciwgMjYuIEFwciAyMDAxLCAyMzoyOTowOCk6CiBOYSB3ZW5uIGRhcyBuaWNodCBtYWwgdmVyZXdpZ3VuZ3N3dWVyZGlnIGlzJyA6KQogW1phdWJlcmVyOmJsYWJsYWJsYV0KIFtaYXViZXJlcjpNVFYgZ3JpbnN0IEM0IGZyZWNoIGFuXQogW1phdWJlcmVyOlplcGh5cl0gc3RvcGZ0IE1UViBlaW5lIEhhbmR2b2xsIFNhbHpzdGFuZ2VuIGluIGRpZSBTY2hudWVzcyB1bQppaG4KIFtaYXViZXJlcjpaZXBoeXJdIHJ1aGlnenVzdGVsbGVuLgogW1phdWJlcmVyOk1UViBtYW1wZnQgZ2VudWVzc2xpY2ggZGllIFNhbHpzdGFuZ2VuIHVuZCBpc3QgZGFmdWVyIHJ1aGlnXQogR3JhdHM6RW9sYWh1c10gbWl0IHZpZWwgZ2VmaWNrIGdlbG9lZnQgLi4uIGZ1cGVyIC4uLiBrbGFmZmUgLi4uIGdyYXRmIQoKU29sKiwgd3VlbnNjaHQgc2ljaCBlbmRsaWNoIEZyaWVkZSBpbSBNdWQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCidJQ0ggQklOIFdJUktMSUNIIEVYVFJFTSBCT0VTRSEnIChHcmltbWJvcm4sIDI3LiBBcHIgMjAwMSwgMTg6MDA6MTIpOgp+IyEgb249TXl0aG9zIG90PTk4ODM4NzE4MCBvZz1hbGxnZW1laW5lcwpzYWcgYml0dGUsIG51ciBlaW5lIG1pbGxlIHBybyBwZXJzb24gdW5kIGRhcyBkZW5rbWFsIGZ1ZXIgZGllIGFybWVuIG9wZmVyIGRlcwprcmllZ2VzIGthbm4gZmVydGlnZ2VzdGVsbHQgd2VyZGVuLi4uCklDSCBCSU4gV0lSS0xJQ0ggRVhUUkVNIEJPRVNFIQpJQ0ggQklOIFdJUktMSUNIIEVYVFJFTSBCT0VTRSEKSUNIIEJJTiBXSVJLTElDSCBFWFRSRU0gQk9FU0UhCklDSCBCSU4gV0lSS0xJQ0ggRVhUUkVNIEJPRVNFIQpJQ0ggQklOIFdJUktMSUNIIEVYVFJFTSBCT0VTRSEKSUNIIEJJTiBXSVJLTElDSCBFWFRSRU0gQk9FU0UhCklDSCBCSU4gV0lSS0xJQ0ggRVhUUkVNIEJPRVNFIQpJQ0ggQklOIFdJUktMSUNIIEVYVFJFTSBCT0VTRSEKSUNIIEJJTiBXSVJLTElDSCBFWFRSRU0gQk9FU0UhCklDSCBCSU4gV0lSS0xJQ0ggRVhUUkVNIEJPRVNFIQpJQ0ggQklOIFdJUktMSUNIIEVYVFJFTSBCT0VTRSEKSUNIIEJJTiBXSVJLTElDSCBFWFRSRU0gQk9FU0UhCklDSCBCSU4gV0lSS0xJQ0ggRVhUUkVNIEJPRVNFIQpJQ0ggQklOIFdJUktMSUNIIEVYVFJFTSBCT0VTRSEKSUNIIEJJTiBXSVJLTElDSCBFWFRSRU0gQk9FU0UhCklDSCBCSU4gV0lSS0xJQ0ggRVhUUkVNIEJPRVNFIQpJQ0ggQklOIFdJUktMSUNIIEVYVFJFTSBCT0VTRSEKSUNIIEJJTiBXSVJLTElDSCBFWFRSRU0gQk9FU0UhCklDSCBCSU4gV0lSS0xJQ0ggRVhUUkVNIEJPRVNFIQpJQ0ggQklOIFdJUktMSUNIIEVYVFJFTSBCT0VTRSEKSUNIIEJJTiBXSVJLTElDSCBFWFRSRU0gQk9FU0UhCklDSCBCSU4gV0lSS0xJQ0ggRVhUUkVNIEJPRVNFIQpJQ0ggQklOIFdJUktMSUNIIEVYVFJFTSBCT0VTRSEKSUNIIEJJTiBXSVJLTElDSCBFWFRSRU0gQk9FU0UhCklDSCBCSU4gV0lSS0xJQ0ggRVhUUkVNIEJPRVNFIQpJQ0ggQklOIFdJUktMSUNIIEVYVFJFTSBCT0VTRSEKSUNIIEJJTiBXSVJLTElDSCBFWFRSRU0gQk9FU0UhCklDSCBCSU4gV0lSS0xJQ0ggRVhUUkVNIEJPRVNFIQpJQ0ggQklOIFdJUktMSUNIIEVYVFJFTSBCT0VTRSEKSUNIIEJJTiBXSVJLTElDSCBFWFRSRU0gQk9FU0UhCklDSCBCSU4gV0lSS0xJQ0ggRVhUUkVNIEJPRVNFIQpJQ0ggQklOIFdJUktMSUNIIEVYVFJFTSBCT0VTRSEKSUNIIEJJTiBXSVJLTElDSCBFWFRSRU0gQk9FU0UhCklDSCBCSU4gV0lSS0xJQ0ggRVhUUkVNIEJPRVNFIQpJQ0ggQklOIFdJUktMSUNIIEVYVFJFTSBCT0VTRSEKSUNIIEJJTiBXSVJLTElDSCBFWFRSRU0gQk9FU0UhCnNjaHVldHRlbCBidWVjaHNlCklDSCBCSU4gV0lSS0xJQ0ggRVhUUkVNIEJPRVNFIQpJQ0ggQklOIFdJUktMSUNIIEVYVFJFTSBCT0VTRSEKYmVzY2h3b2VyZSBkYWVtb24KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2FtaWthemVmbGllZ2VyIChHcmltbWJvcm4sIDI4LiBBcHIgMjAwMSwgMDk6MTA6MTEpOgp+IyEgcm49U3VibGltZSBydD05ODg0Mzg4MDggcmc9a3VsdHVyCn4jISB0aWQ9OTg4NDM4ODA4CldhcyBtaWNoIHdpZWRlciB6dSBlaW5lbSBkZXIgdW5nZWxvZXN0ZW4gTXlzdGVyaWVuIGRlciBNZW5zY2hoZWl0c2dlc2NoaWNodGUKZnVlaHJ0OiBXYXJ1bSB6dW0gR2VpZXIgaGF0dGVuIGRpZSBLYW1pa2F6ZWZsaWVnZXIgSGVsbWUgYW4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2FtaWthemVmbGllZ2VyIChBbmF0b2wsIDI4LiBBcHIgMjAwMSwgMDk6MTk6MDUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4ODQ0MTgxMSByZz1zY2htYXJybgp+IyEgdGlkPTk4ODQzODgwOApTdGVodCBkYXMgaW4gZGVyIFByaW8tTGlzdGUgdm9yIG9kZXIgbmFjaCBkZXIgRnJhZ2UsIHdhcnVtIEZyYXVlbiB6dSAKendlaXQgYXVmIGRpZSBUb2lsZXR0ZSBnZWhlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEthbWlrYXplZmxpZWdlciAoR3JpbW1ib3JuLCAyOC4gQXByIDIwMDEsIDA5OjIwOjE1KToKfiMhIHJuPUFuYXRvbCBydD05ODg0NDIzNDUgcmc9c2NobWFycm4KfiMhIHRpZD05ODg0Mzg4MDgKTmFjaC4gQWJlciBub2NoIHZvciBkZXIgRnJhZ2Ugd2FydW0gbWVpbiBHZXBhZWNrIGF1ZiBGbHVlZ2VuIGltbWVyIG51ciBkYW5uCnZlcnNjaHdpbmRldCB3ZW5uIGljaCBrZWluZSBVbnRlcmhvc2VuIGltIEhhbmRnZXBhZWNrIGhhYmUuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEthbWlrYXplZmxpZWdlciAoQW5hdG9sLCAyOC4gQXByIDIwMDEsIDA5OjIxOjU1KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODg0NDI0MTUgcmc9c2NobWFycm4KfiMhIHRpZD05ODg0Mzg4MDgKQWxzbyBxdWFzaSBhdWYgUGxhdHogMy4gQXVmIFBsYXR6IDEgaXN0IGphIG5hY2ggd2llIHZvciBkYXMgUmFldHNlbAoiV29oaW4gaW4gYWxsZXIgV2VsdCBoYXQgZGllIFdhc2NobWFzY2hpbmUgZGVuIFNvY2tlbiBoaW5nZXphdWJlcnQ/IgoKQWRUIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBLYW1pa2F6ZWZsaWVnZXIgKEZvb2JhciwgMjguIEFwciAyMDAxLCAwOToyMjozOCk6Cn4jISBybj1BbmF0b2wgcnQ9OTg4NDQyNTE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4NDM4ODA4ClZpZWwgbXlzdGVyaW9lc2VyIGZpbmRlIGljaCBpbiBkaWVzZW0gWnVzYW1tZW5oYW5nLCB3YXJ1bSB2ZXJzY2h3dW5kZW5lIFNvY2tlbgpuYWNoIE1vbmF0ZW4gcGxvZXR6bGljaCB3aWVkZXIgYXVmdGF1Y2hlbi4uLgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBLYW1pa2F6ZWZsaWVnZXIgKEFuYXRvbCwgMjguIEFwciAyMDAxLCAwOToyMzowNCk6Cn4jISBybj1Gb29iYXIgcnQ9OTg4NDQyNTU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4NDM4ODA4CkFjaCBiZWkgRElSIHNpbmQgYWxzbyBtZWluZSBTb2NrZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEthbWlrYXplZmxpZWdlciAoQmllbGVmZWxkLCAyOC4gQXByIDIwMDEsIDA5OjI1OjM2KToKfiMhIHJuPUFuYXRvbCBydD05ODg0NDI1ODQgcmc9c2NobWFycm4KfiMhIHRpZD05ODg0Mzg4MDgKVmVyc2Nod3VuZGVuZSBTb2NrZW4gdGF1Y2hlbiBhYmVyIG5pY2h0IHBhYXJ3ZWlzZSB3aWVkZXIgYXVmLi4uIDspCgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBLYW1pa2F6ZWZsaWVnZXIgKEFuYXRvbCwgMjguIEFwciAyMDAxLCAwOToyNjoyMCk6Cn4jISBybj1CaWVsZWZlbGQgcnQ9OTg4NDQyNzM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4NDM4ODA4ClNpZSB2ZXJzY2h3aW5kZW4gamEgYXVjaCBuaWNodCBwYWFyd2Vpc2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBLYW1pa2F6ZWZsaWVnZXIgKEZvb2JhciwgMjguIEFwciAyMDAxLCAwOToyNjoyOCk6Cn4jISBybj1CaWVsZWZlbGQgcnQ9OTg4NDQyNzM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4NDM4ODA4Ck5laW4sIGVzIHZlcnNjaHdpbmRldCBqYSBpbW1lciBudXIgX2Vpbl8gU29ja2VuLiBad2VpIHZlcnNjaGllZGVuZSBzaW5kIGJlaQptaXIgYXVjaCBub2NoIG5pZSBnbGVpY2h6ZWl0aWcgYXVmZ2V0YXVjaHQgO28pCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEthbWlrYXplZmxpZWdlciAoTXVwZmVsLCAyOC4gQXByIDIwMDEsIDExOjQ4OjU1KToKfiMhIHJuPUZvb2JhciBydD05ODg0NDI3ODggcmc9c2NobWFycm4KfiMhIHRpZD05ODg0Mzg4MDgKTmllIHZvbiBTb2NrZW4tRW50cm9waWUgZ2Vob2VydD8gOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGZXJud2VzdHdlZy4uLiAoQWhhYiwgMjguIEFwciAyMDAxLCAxNDoxNDoyOSk6CnVudCBtYWdpZXIKCk1hZ2llciBzaW5kIGVpbmUga29taXNjaGUgQXJ0IHZvbiBMZWJld2VzZW4uIFNpZSBtYWNoZW4gZWluZW0gbWVpc3RlbnMgZGFzCkxlYmVuIHNjaHdlciB1bmQgYW11ZXNpZXJlbiBzaWNoIGRhYmVpIGtvZW5pZ2xpY2guIEFiZXIgZXMgc29sbCBqYSBBdXNuYWhtZW4KZ2ViZW4uLi4KCkhvZmZudW5nc3ZvbGw6IHVudCBhdXNuYWhtZW4KCkVyZ2VibmlzOiBTb3dhcyBzaWVoc3QgRHUgZGEgbmljaHQhCgpBaGFiLCBuaWNodCB3aXJrbGljaCB2ZXJ3dW5kZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogS2FtaWthemVmbGllZ2VyIChXYXJnb24sIDI4LiBBcHIgMjAwMSwgMTU6MDE6MDMpOgp+IyEgcm49Rm9vYmFyIHJ0PTk4ODQ0MjU1OCByZz1zY2htYXJybgp+IyEgdGlkPTk4ODQzODgwOApEYXMgbGllZ3QgYmVzdGltbXQgYW4gZGVyIEVuZXJnaWVlcmhhbHR1bmcuCgpXYXJnb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEdW5rbGUgWmVpdGVuIGt1ZW5kaWdlbiBzaWNoIGFuICAoTml6emwsIDI4LiBBcHIgMjAwMSwgMjM6MzQ6NDcpOgp+IyEgcm49R2FzdDEgcnQ9OTg4NDc4ODE5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTg4NDc4ODE5CmFjaHNvIGR1IG1laW5zdCBkYXMgcmVpY2ggZGVyIG5ldHp0b3Rlbi4uLmtlbm4gaWNoIGtlbm4gaWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKExpbmZsYXMsIDI5LiBBcHIgMjAwMSwgMTM6NTE6NTIpOgpbQWxsZ2VtZWluOkRyb2xsaSBpc3QgMTAwIFRBR0UgQUxUIV0KW0FsbGdlbWVpbjpDaHVja3lsZWluXSBhbHRlciBTYWNrIDopCltBbGxnZW1laW46RHJvbGxpIEdyaW5zdC5dCltBbGxnZW1laW46RHJvbGxpXSAyNDAwIHNjaGVpc3Mgc3R1bmRlbiBpbiBkZW0gTXVkIGdlb3BmZXJ0LgpEcm9sbGkgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCltBbGxnZW1laW46TGluZmxhc10gZGFzIG5lbm4gaWNoIGtvbnNlcXVlbnQuLi4KCkxpbmZsYXMsIGhhdCBkZW0gbml4bWVociBoaW56dXp1a3VoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEthbWlrYXplZmxpZWdlciAoVmFuaW9uLCAyOS4gQXByIDIwMDEsIDE4OjE0OjA4KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODg0NDE4MTEgcmc9c2NobWFycm4KfiMhIHRpZD05ODg0Mzg4MDgKWnVtIFRoZW1hIEthbWlrYXplLVBpbG90ZW4gZ2FicyBtYWwgbmUgZXJzY2h1ZXR0ZXJuZGUgUmVwb3J0YWdlIGluIGRlciBBUkQ6Cmh0dHA6Ly93d3cuamFwYW5saW5rLmRlL2FrL2FrX3Rlcm1pbmVfMjAwMDA4MDMuc2h0bWwKCld1cmRlIGRpZXNlcyBKYWhyIGF1Y2ggc2Nob24gZ2V6ZWlndCwgbWVpbiBpY2guIFZpZWxsZWljaHQga29tbXRzIGphIG5vY2htYWwuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS2FtaWthemVmbGllZ2VyIChTb2xteXIsIDI5LiBBcHIgMjAwMSwgMTg6NTU6MTYpOgp+IyEgcm49VmFuaW9uIHJ0PTk4ODU2MDg0OCByZz1zY2htYXJybgp+IyEgdGlkPTk4ODQzODgwOApJaHIgaGFidCBhYmVyIHZlcnN0YW5kZW4sIGRhc3MgZXMgdW0gZWluZSBLYW1pa2F6ZWZsaWVnZSBnaW5nLCBvZGVyPyA6KQoKU29sKi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEthbWlrYXplZmxpZWdlciAoVmFuaW9uLCAyOS4gQXByIDIwMDEsIDE4OjU3OjM3KToKfiMhIHJuPVNvbG15ciBydD05ODg1NjMzMTYgcmc9c2NobWFycm4KfiMhIHRpZD05ODg0Mzg4MDgKTm9lLgpWKiwgbWVya2JlZnJlaXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBLYW1pa2F6ZWZsaWVnZXIgKFZhbmlvbiwgMjkuIEFwciAyMDAxLCAxODo1OTozMyk6Cn4jISBybj1WYW5pb24gcnQ9OTg4NTYzNDU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4NDM4ODA4CldhcnVtIHNpY2ggdm9uIHNvbGNoZW4gS2xlaW5pZ2tlaXRlbiB2b24gZWluZXIgdmllbHZlcnNwcmVjaGVuZGVuIERpc2t1c3Npb24KYWJoYWx0ZW4gbGFzc2VuIC4uLiAKClYqIHZlcndlaXN0IGhpZXIgbWFsIGF1ZiBNZWdhc2NobWFycm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClphdWJlcmVpISBUZXVmZWxzd2VyayEgKEZvb2JhciwgMjkuIEFwciAyMDAxLCAxOTo1NjoyOSk6CgoKQm9yb25hciBmYWVsbHQgdG90IHp1IEJvZGVuLgpCb3JvbmFyIGtvbW10IGFuLgoKCkZvb2JhcgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWmF1YmVyZWkhIFRldWZlbHN3ZXJrISAoR3JpbW1hbiwgMjkuIEFwciAyMDAxLCAyMDoxNTo1Nik6Cn4jISBybj1Gb29iYXIgcnQ9OTg4NTY2OTg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4NTY2OTg5CkRlciBoYXQgc2ljaGVyIHNjaG9uIDIwIE1pbnV0ZW4gbmViZW5hbiBnZXdhcnRldCwgd2VpbCBkdSBuaWNoIGZlcnR1aWcKZ2V3b3JkZW4gYmlzdCA6KQoKR3JpbU1hbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBiZWltIFNhbmR0aWdlci4gKEZvb2JhciwgMjkuIEFwciAyMDAxLCAyMToyNjoyMCk6ClR1cm9jayBrb21tdCBhbi4KVHVyb2NrIGxhZXNzdCBkZW4gQmV1dGVsIGZhbGxlbi4KVHVyb2NrIGxhZXNzdCBHZW5pdGFsaWVuIGZhbGxlbi4KVHVyb2NrIGxhZXNzdCBHZW5pdGFsaWVuIGZhbGxlbi4KVHVyb2NrIGxhZXNzdCBHZW5pdGFsaWVuIGZhbGxlbi4KVHVyb2NrIGxhZXNzdCBHZW5pdGFsaWVuIGZhbGxlbi4KVHVyb2NrIGxhZXNzdCBHZW5pdGFsaWVuIGZhbGxlbi4KVHVyb2NrIGxhZXNzdCBHZW5pdGFsaWVuIGZhbGxlbi4KVHVyb2NrIGxhZXNzdCBHZW5pdGFsaWVuIGZhbGxlbi4KVHVyb2NrIGxhZXNzdCBHZW5pdGFsaWVuIGZhbGxlbi4KVHVyb2NrIGxhZXNzdCBHZW5pdGFsaWVuIGZhbGxlbi4KVHVyb2NrIGxhZXNzdCBHZW5pdGFsaWVuIGZhbGxlbi4KVHVyb2NrIGxhZXNzdCBHZW5pdGFsaWVuIGZhbGxlbi4KVHVyb2NrIGxhZXNzdCBHZW5pdGFsaWVuIGZhbGxlbi4KVHVyb2NrIHppZWh0IGVpbmVuIFJ1Y2tzYWNrIGF1cy4KRHUgZGVua3N0ICAgLiBvIE8gKD8pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkR1IGJpc3QgYW0gU3RhZHR0b3Igdm9uIFBvcnQgVmFpbiBhbmdla29tbWVuLCBkYXMgdW5taXR0ZWxiYXIgdm9yIERpciBsaWVndC4KSW4Kd2VzdGxpY2hlciBSaWNodHVuZyBmdWVocnQgZGllIFBvcnQgVmFpbmVyIExhbmRzdHJhc3NlIGluIGRpZSBncm9zc2UsIHdlaXRlCldlbHQgaGluYXVzIHVuZCBpbiBvZXN0bGljaGVyIFJpY2h0dW5nIHp1bSBncm9zc2VuIFN0YWR0emVudHJ1bSBkZXIKSGFmZW5zdGFkdC4KVW5taXR0ZWxiYXIgc3VlZGxpY2ggdm9uIERpciwgZGlyZWt0IG5lYmVuIGRlbSBTdGFkdHRvciBzaWVoc3QgRHUgZGllIHJpZXNpZ2UKUGZvcnRlIGVpbmVzIG5vY2ggcmllc2lnZXJlbiBXZXR0cGFsYXN0ZXMgdm9yIERpciBhdWZyYWdlbi4gRHUgbGVnc3QgRGVpbmVuCktvcGYgaW4gZGVuIE5hY2tlbiwgdW0gaWhuIGdhbnogYmV0cmFjaHRlbiB6dSBrb2VubmVuLiBFaW4gZ3Jvc3NlcyBTY2hpbGQKaGFlbmd0IHVlYmVyIGRlciBFaW5nYW5nc3Bmb3J0ZS4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4gdW5kIHdlc3Rlbi4KRGllIEdlbml0YWxpZW4gdm9uIGVpbmVtIE9yay4KRGllIEdlbml0YWxpZW4gdm9uIGVpbmVtIFdvbGYuCkRpZSBHZW5pdGFsaWVuIHZvbiBlaW5lbSBCcmF1bmJhZXJlbi4KRGllIEdlbml0YWxpZW4gdm9uIGVpbmVtIEdhcmRld2FlY2h0ZXIuCkRpZSBHZW5pdGFsaWVuIHZvbiBlaW5lbSBWZXJ0cmV0ZXIuCkRpZSBHZW5pdGFsaWVuIHZvbiBTYW0uCkRpZSBHZW5pdGFsaWVuIHZvbiBlaW5lbSBQb2xhcmZ1Y2hzLgpEaWUgR2VuaXRhbGllbiB2b24gZWluZW0gU2NobmVlbWFubi4KRGllIEdlbml0YWxpZW4gdm9uIGVpbmVtIFdlaXNzZnJvc2NoLgpEaWUgR2VuaXRhbGllbiB2b24gZWluZW0gS3JpZWdlci4KRGllIEdlbml0YWxpZW4gdm9uIGVpbmVtIFJlaGJvY2suCkRpZSBHZW5pdGFsaWVuIHZvbiBSb2Jpbi4KRWluIEJldXRlbCAoZ2VvZWZmbmV0KS4KVHVyb2NrIGRlciBNZWlzdGVyYW53YWVydGVyLgpFaW4gU2FuZHRpZ2VyLgpFaW4gbWFnaXNjaGVzIFBvcnRhbC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlbmkoYWwpdGFsaWVuIDopIChTb2xteXIsIDI5LiBBcHIgMjAwMSwgMjE6MzE6MjgpOgogUGl0ZmFsbCBncmluc3QuCiBEdSBncmluc3QuCiBEdSBnaWJzdCBHZW5pdGFsaWVuIGFuIFBpdGZhbGwuCkR1IGdpYnN0IEdlbml0YWxpZW4gYW4gUGl0ZmFsbC4KRHUgZ2lic3QgR2VuaXRhbGllbiBhbiBQaXRmYWxsLgpEdSBnaWJzdCBHZW5pdGFsaWVuIGFuIFBpdGZhbGwuCgogUGl0ZmFsbCBkZW5rdCAgIC4gbyBPIChtYW5uIGhhYiBpY2ggZGlja2UgZWllcikKClNvbCosIHVuZCBzbyB2aWVsZSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdlbmkoYWwpdGFsaWVuIDopIChHbG9pbnNvbiwgMjkuIEFwciAyMDAxLCAyMjoxNDo0OSk6Cn4jISBybj1Tb2xteXIgcnQ9OTg4NTcyNjg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4NTcyNjg4CkFjaCwgZGFzIHdhcmVuIG5vY2ggWmVpdGVuIGFscyBpcmdlbmR3ZWxjaGUgU3BpZWxlciAoaGV1dGlnZSBTZWhlcikgaGludGVyCmdlaGVpbWVuIFp3ZWl0aWVzIGhpbnRlcmhlcnJhbm50ZW4gdW5kIGlocmUgR2VuaXRhbGllbiB3aWVkZXJoYWJlbiB3b2xsdGVuIC4uLgoKR2xvaW4oc29uKSAod2FycyBuaWNodCAoYmVzdGltbXQgbmljaHQgKEJld2Vpc2UhKSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdlbmkoYWwpdGFsaWVuIDopIChGb29iYXIsIDI5LiBBcHIgMjAwMSwgMjI6MTY6NDIpOgp+IyEgcm49R2xvaW5zb24gcnQ9OTg4NTc1Mjg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4NTcyNjg4Cm5pbW0gaW1taGVyaGluLCBhdXMgaWNoIG11c3N0ZSBtZWluZSBkYW1hbHMgZnVlciB0ZXVlciBHZWxkIGltIExhZGVuCnp1cnVlY2trYXVmZW4uLi4KCkdydXNzLAoKICAgIEZvb2JhcgoKCgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHZW5pKGFsKXRhbGllbiA6KSAoR2xvaW5zb24sIDI5LiBBcHIgMjAwMSwgMjI6MzM6NDApOgp+IyEgcm49Rm9vYmFyIHJ0PTk4ODU3NTQwMiByZz1zY2htYXJybgp+IyEgdGlkPTk4ODU3MjY4OApJY2ggaGFiIG5pY2h0IGdlc2FndCBkZXJqZW5pZ2UgaGFldHRlIHNpZSBhdWNoIHp1cnVlY2tnZWdlYmVuIDpdCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHZW5pKGFsKXRhbGllbiA6KSAoU29sbXlyLCAyOS4gQXByIDIwMDEsIDIzOjU5OjQyKToKfiMhIHJuPUdsb2luc29uIHJ0PTk4ODU3NjQyMCByZz1zY2htYXJybgp+IyEgdGlkPTk4ODU3MjY4OApXYWhyc2NoZWlubGljaCBiZWZpbmRlbiBzaWUgc2ljaCBoZXV0enV0YWdlIGluIEdsYWVzZXJuIHp1bSBLb25zZXJ2aWVyZW4gaW4KZGl2ZXJzZW4gU2VoZXJoYWV1c2VybiBvZGVyIFdvcmtyb29tcyB1bmQgd2VyZGVuIGVpbm1hbCBwcm8gSmFociBhdXNnZS0Kc3RlbGx0LCB3ZW5uIGRlcmplbmlnZSBlaW5tYWwgaW0gSmFociBlaW5lbiAnVGFnIGRlciBvZmZlbmVuIFR1ZXInIG1hY2h0IDopCgpTb2wqLCBtdWVkZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIFRPTExFIEhpcnVkbyA6KSAoU29sbXlyLCAzMC4gQXByIDIwMDEsIDEwOjQyOjEwKToKIERlciB0b2xsZSBIaXJ1ZG8gc2FndDogcGFydHltb25zdGVyIGdpYiBtaXIgcm90ZQogRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBSb3RlIGhhYmUgaWNoIG5pY2h0IQogRGVyIHRvbGxlIEhpcnVkbyBzYWd0OiBwYXJ0eW1vbnN0ZXIgZ2liIG1pciB0b3J0ZQogRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBEZXIgdG9sbGUgaGlydWRvIHNlaGUgaWNoIGhpZXIgbmljaHQhCiBIaXJ1ZG8gZGVua3QgICAuIG8gTyAoYXJncykKClNvbCosIHRqYSBzbyB0b2xsLCBpc3QgZXIgd29obCBkb2NoIG5pY2h0LCB3YXMgIT8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBmdWVyIFNpdHRlbiA6KSAoU29sbXlyLCAzMC4gQXByIDIwMDEsIDExOjI4OjA0KToKIEdhc3QxIHNhZ3Q6IG9oIG9oIHdhcyBmdWVyIHNpdHRlbi4uLgogRHUgZnVyenQgaGVtbXVuZ3Nsb3MuCiBGdWVyY2h0ZXJsaWNoZXIgR2VzdGFuayBlcmZ1ZWxsdCBkZW4gUmF1bS4KIER1IGdyaW5zdCBHYXN0MSBhbi4KIER1IGhhZWx0c3QgRGlyIGRpZSBOYXNlIHp1LgogSXNpIHNwdWNrdCBlaW4gcGFhciBIYWFyZSBhdXMuCiBJc2kgZGVua3QgICAuIG8gTyAoenV2aWVsIGZlbGwpCiBSaWt1cyB3YWNrZWx0IG1pdCBzZWluZW0gSGludGVybi4KIE9iIFJpa3VzIGVzIHdpbGwgb2RlciBuaWNodCwgRHUgYmVnaW5uc3QgaWhtIGxhbmdzYW0gZGVuIFJ1ZWNrZW4genUga3JhdHplbi4KIER1IGdyaW5zdCBSaWt1cyBhbi4KIElzaSBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgoKIER1IHNhZ3N0OiBFaHJsaWNoIGdlc2FndCwgaWNoIGtlbm4gbmllbWFuZGVuIGltIFJMLCBkZXIgYXVmIEtvbW1hbmRvIGZ1cnplbgogRHUgc2Fnc3Q6IGthbm4gOikKIFJpa3VzIHNhZ3Q6IG1vZWNodGUgaWNoIGF1Y2ggbmljaHQga2VubmVuCiBEdSBzYWdzdDogSWNoIGF1Y2ggbmljaHQuLi4KIElzaSBnaWJ0IGVpbiBhbGJlcm5lcyBLaWNoZXJuIHZvbiBzaWNoLgoKU29sKiwgZ2FueiBub3JtYWwgaW4gZGVyIEEqKi4uOkdpbGRlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0d2VyIChGb29iYXIsIDMwLiBBcHIgMjAwMSwgMTQ6MDU6MzMpOgotLS0tLS0tLS0tLS0tLS0tIFphbGtoJ0JhdGFyIC0tLS0tLS0tLS0tLS0tLS0KICAgICAgIEdvb2Z5IFsyM10KICAgICBIaXNhc3VsIFsyM10KICAgICAgIEthcmlzIFsyM10KICAgICAgUmluZ29yIFsyM10KICAgICAgRm9vYmFyIFsyM10KLS0tLS0tLS0tLS0tLS0tLSBUYWthbCdNb3IgLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAgIFhlbmFkYSBbMjJdCiAgICAgRWxiZXJldCBbMjJdCiAgICAgIFp3aXJjaCBbMjJdCiAgICAgIENob2ppbiBbMjFdCiAgICAgUGl0ZmFsbCBbMjBdCiAgICAgICBGcmVjYSBbMTldIChNYWdpZXIpCiAgICAgICBaYW5hYyBbMThdCiAgICAgIEdydW1wZiBbMThdCi0tLS0tLS0tLS0tLS0tLS0gR3JhJ1Rha2FsIC0tLS0tLS0tLS0tLS0tLS0tLQogICAgICBTbGF5ZXIgWzE3XQogICAgICAgQ29yYWsgWzE3XQogICAgICAgIEVwcGkgWzE0XQogICAgICAgTmFvaGUgWzE0XQogICAgRG9sZ29yaW0gWzE0XQogICAgICAgTWllemUgWzEzXQogICAgICBLYXJpbmEgWzEzXQogICAgIEZsYXVyb3MgWzEzXQotLS0tLS0tLS0tLS0tLS0tIFByb2xraCdXZXRoIC0tLS0tLS0tLS0tLS0tLS0KICAgICBFb2xhaHVzIFsxMl0KIEhvdHplbnBsb3R6IFsxMF0KLS0tLS0tLS0tLS0tLS0tLSBLcmFraCdHZXRyZXMgLS0tLS0tLS0tLS0tLS0tCiAgICAgIEZhbnRpYyBbIDddCiAgICAgIExpcmFuYSBbIDNdCiAgICAgICAgIFluZyBbIDJdCiAgICAgU3VibGltZSBbIDBdIChNYWdpZXIpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpNYW4gYWNodGUgdm9yIGFsbGVtIGF1ZiBkZW4gbGV0enRlbiBFaW50cmFnIDpvKQoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbW1lciB3aWVkZXIgc2Nob2VuLCBkaWUgInNjaGxhZiBlaW4iLVRvZC1UZWNobmlrOiAoWm9vaywgMzAuIEFwciAyMDAxLCAxNDo0NzowMCk6CltUb2Q6TGFyc10gRWluIFdhZWNodGVyIGRlcyBXYWxkZXMgaGF0IGdlcmFkZSBCcmFiYmVsIHVtZ2VicmFjaHQuCkJyYWJiZWwgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KClpvb2sgZ3JhdHVsaWVydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB0d2VyIChTb2xteXIsIDMwLiBBcHIgMjAwMSwgMTU6MjM6NDYpOgp+IyEgcm49Rm9vYmFyIHJ0PTk4ODYzMjMzMyByZz1zY2htYXJybgp+IyEgdGlkPTk4ODYzMjMzMwpQYWggOikgSWNoIGJpbiBoYWx0IHdhcyBiZXNvbmRlcmVzICpHKgoKU29sKiwgTGV2ZWwgMCBibGVpYmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmFqYSwgSnVuZ21hZ2llciBzaW5kIGhvZXJpZyA6KSAoU29sbXlyLCAzMC4gQXByIDIwMDEsIDE1OjM3OjQzKToKIEljaCBtdXNzIGRhenUgc2FnZW4sIGljaCB3YXIgZ3JhZCBkYWJlaSBSYWdlU3BpZWxlciB6dSByZWtydXRpZXJlbiA6KQoKIENodWNreWxlaW4gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKIERlaW4gRnJldW5kIENodWNreWxlaW4ga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgogRGVpbiBGcmV1bmQgQ2h1Y2t5bGVpbiB0ZWlsdCBEaXIgbWl0OiB0YWcKIERlaW4gRnJldW5kIENodWNreWxlaW4gdGVpbHQgRGlyIG1pdDogc2NoZWlzcyB0YWcuLgogRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IG9rCiBEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogY2h1Y2t5bGVpbi4uLgogRGVpbiBGcmV1bmQgQ2h1Y2t5bGVpbiB0ZWlsdCBEaXIgbWl0OiBqYT8KIER1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBnb3RvIHNvbG15cgogQ2h1Y2t5bGVpbiB3aXJkIHZvbiBtYWVjaHRpZ2VuIEtyYWVmdGVuIGhlcmVpbmdlYmVhbXQuCiBEdSBzYWdzdDogZWluc3RlaWdlbgogSXNpIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCiBDaHVja3lsZWluIGdydWViZWx0IGVpbmUgV2VpbGUgdm9yIHNpY2ggaGluLgogQ2h1Y2t5bGVpbiBzYWd0OiBhY2ggaWNoIHBlaWwgZ2FyIG5peCBtZWhyCiBEdSBzdHVwc3QgQ2h1Y2t5bGVpbiBhbi4KIER1IHNhZ3N0OiBlaW5zdGVpZ2VuCiBDaHVja3lsZWluIHNhZ3Q6IGVpbnN0ZWlnZW4/CiBJc2kgc2FndDogc29sbXlyIHZlcnN1Y2h0IHJhZ2VzcGllbGVyIHp1IHJla3J1dGllcmVuIDspCiBEdSBuaWNrc3QgenVzdGltbWVuZC4KIER1IHNhZ3N0OiBlaW5zdGVpZ2VuCiBEdSBncmluc3QuCiBDaHVja3lsZWluIHNhZ3Q6IG5lIGhldXQgbmV0CgpTb2wqLCBzb3ZpZWwgQXJiZWl0IGZ1ZXIgc28gd2VuaWcgRXJnZWJuaXMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtbSwgbmV1ZSBLYW1wZnRlY2huaWs/IChTb2xteXIsIDMwLiBBcHIgMjAwMSwgMTc6MTk6MjgpOgogQWxzbyBkYXMgZ2lidCBtaXIgenUgZGVua2VuIDopLi4uCgogW01vZXJkZXI6R2Vpc3QgZWluZXMgV2FjaHNvbGRhdHNdIEljaCBiaW4gYmVlaW5kcnVja3QsIEdhYmkuCiBbTW9lcmRlcjpHZWlzdCBlaW5lcyBXYWNoc29sZGF0c10gSW4gd2VsY2hlciBHaWxkZSBrb25udGUgbWFuIG5vY2htYWwKIFtNb2VyZGVyOkdlaXN0IGVpbmVzIFdhY2hzb2xkYXRzXSAiYmVmcmllZGUiIGxlcm5lbiwgR2FiaT8KCldpZSBoYXQgc2llIGRpZSBibG9zcyB0b3RnZWtyaWVndD8gSWNoIHNhZyBqZXR6dCBuaXggbWVociwgd28gd2lyIGRvY2ggZ3JhZGUKZWJlbiBhdWYgLTxtYXN0ZXIgbm9jaCBzbyBzY2hvZW4gdWViZXIgTHVzdCB1bmQgRXh0YXNlIGJlcmF0c2NobGFndCBoYWJlbiA6KQoKU29sKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEltbWVyIHdpZWRlciBzY2hvZW4sIGRpZSAic2NobGFmIGVpbiItVG9kLVRlY2huaWs6IChWYW5pb24sIDMwLiBBcHIgMjAwMSwgMTc6MjY6MTIpOgp+IyEgcm49Wm9vayBydD05ODg2MzQ4MjAgcmc9c2NobWFycm4KfiMhIHRpZD05ODg2MzQ4MjAKRXJ3YXJ0ZSBhbGxlPyBEYSB3aXJkIG1hbiBkb2NoIHdhaG5zaW5uaWcgLi4uCgpWKiwgaGF0IGRpZSBGaW5nZXItV2FybnVuZyBhdXNnZXNjaGFsdGV0LCB3ZWlscyBpaG4gaW4gZGllIFBhcmFub2phIHRyaWViCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTYWNoZW4gZ2lwcyAoVmFuaW9uLCAzMC4gQXByIDIwMDEsIDE3OjI5OjM4KToKYXVzIGRlLmFsdC4gbmV0ZGlnZXN0Ci0tCk5ld3Nncm91cHM6IGRlLnNvYy5yZWNodC5kYXRlbm5ldHplClN1YmplY3Q6IEJlaSBtaXIgd3VyZGUgZWluIFZpcnVzIGVpbmdlc2NobGV1c3QgKHBlciBpbnRlcm5ldCkKRGF0ZTogVHVlLCAyNCBBcHIgMjAwMSAyMTozNTowOSArMDIwMApNZXNzYWdlLUlEOiA8OWM0a20zJGMxbiQwNSQxQG5ld3MudC1vbmxpbmUuY29tPgoKSGFsbG8sCgpLYW5uICh1bmQgdm9yIGFsbGVtIHdhcykga2FubiBpY2ggcmVjaHRsaWNoIHR1biwgd2VubiBpY2ggZWluZW4gTGluayBpbgplaW5lbSBDaGF0cm9vbSBnZXBvc3RldCBiZWtvbW1lbiBoYWJlLCB1bmQgZGllc2VzIFByb2dyYW1tIGRhbm4KaGVydW50ZXJnZWxhZGVuIGhhYmUuIERhcyBTZXR1cHByb2dyYW1tIGhhdHRlIGVpbmUgTGl6ZW5zdmVyZWluYmFydW5nLApkaWUgc2FndGUgZGFzcyBkYXMgUHJvZ3JhbW0gZWluIFZpcnVzIGJlaW5oYWx0ZXRlLiBJY2ggaGFiZSwgd2VpbCBpY2gKZ3J1bmRzYWV0emxpY2gga2VpbmUgdmVyZWluYmFydW5nZW4gbGVzZSksIGVpbmZhY2ggYXVmIEFremVwdGllcmVuCmdla2xpY2t0LgpEYW5uIHdhciBuaXggbWVociBhdWYgbWVpbmVyIFBsYXR0ZSEhCgpIZWxmdCBtaXIgYml0dGUsIGljaCBoYWIgbm9jaCBkYXMgUHJvZ3JhbW0hIQoKTUZHLAotLQoKViogbWVpbnQ6IENoYW9zIGlzdCB1ZWJlcmFsbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkplbWFuZHMuLi4gKEZvb2JhciwgIDEuIE1haSAyMDAxLCAwMDo0Nzo0NSk6CltUZWFtIDU6XSBKZW1hbmQgaGF0IGRhcyBUZWFtIHZlcmxhc3Nlbi4KCkZvb2JhciB3dW5kZXJ0IHNpY2ggZXR3YXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgd2Fociwgd2llIHdhaHIuLi4gKEZvb2JhciwgIDEuIE1haSAyMDAxLCAxMjo0MDo0OCk6Cj4gdW50IGVsZgpEdSBzaWVoc3QgZWluZW4gZ2FueiBnZXdvZWhubGljaGVuIEVsZmVuLiBHcm9zcywgZHVlbm4sIHNwaXR6ZSBPaHJlbiB1bmQgbmFjaApGaXNjaCBzdGlua2VuZC4gRGlyIGZhZWxsdCBlaW5lIE5hcmJlIGF1ZiwgZGllIGRpZSByZWNodGUgU2VpdGUgc2VpbmVzCkdlc2ljaHRlcyAndmVyemllcnQnLgoKRm9vYmFyIC0gd2Vpc3MgQmVzY2hlaWQgOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaWVyIGtvbW0gaWNoIG5pZSByYXVzIT8gKFNvbG15ciwgIDEuIE1haSAyMDAxLCAxNDowMzoyMyk6CiBbWmF1YmVyZXI6RW9sYWh1c10gaXN0IGRhcyBub3JtYWwgZGFzIG1hbiBudXIgYmVpIGRlbiBkdW5rZWx6d2VyZ2VuIGxhbmRldAogW1phdWJlcmVyOkVvbGFodXNdIDEzOjQ4OjU5CiBbWmF1YmVyZXI6UGFsbGFuZG9dIHdlbm4gbWFuIGltbWVyIGRlbiB3ZWcgenUgZGVuIGR6d2VyZ2VuIGdlaHQsIGphIDEzOjQ5OjU0CiBbWmF1YmVyZXI6U29sbXlyIGdyaW5zdCBicmVpdC4gMTM6NTI6NDVdCiBbQWxsZ2VtZWluOkVvbGFodXNdIGhpZXIga29tbSBpY2ggbmlld2llZGVyIHJhdXMgMTM6NTY6MzkKIFtBbGxnZW1laW46RW9sYWh1c10gYmxvZWRlcyB0YXJhbWlzIDEzOjU3OjExCiBbVG9kOkxhcnNdIFZvZWxsaWdlIEVyc2Nob2VwZnVuZyBoYXQgZ2VyYWRlIEVvbGFodXMgdW1nZWJyYWNodC4KClNvbG15ciwgZG9jaCBkb2NoLCBlcyBnZWh0IFJBVVMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVy4uLiAoRm9vYmFyLCAgMS4gTWFpIDIwMDEsIDE0OjA5OjUyKToKW0FiZW50ZXVlcjpNaWR5cl0gcGFuZG9yYSB3ZGVyIEZsdWdkcmFjaGVuIGhhdCBtaWNoIHZlcnNjaGx1Y2t0ICEgd2FzIG1hY2ggaWNoCltBYmVudGV1ZXI6TWlkeXJdIGpldHp0PyA8MTQ6MDg6NDM+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKW1RvZDpMYXJzXSBFaW4gRmx1Z2RyYWNoZSBoYXQgZ2VyYWRlIE1pZHlyIHVtZ2VicmFjaHQuIDwxNDowODo1Mz4KCkZvb2JhciAtIEJlaWxlaWQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1aSA6KSAoR3JpbW1hbiwgIDEuIE1haSAyMDAxLCAxOTozMjoyNik6CkR1IGJpc3QgamV0enQgRnJldW5kIHZvbiBMb29tLgpEdSBIdWVwZnN0IHVtIExvb20gaGVydW0uClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBMb29tLgoKR3JpbU1hbiAuLi4gd2lya2xpY2ggc28gc2NobGltbT8/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHVpIDopIChQaXRmYWxsLCAgMS4gTWFpIDIwMDEsIDE5OjMzOjM3KToKfiMhIHJuPUdyaW1tYW4gcnQ9OTg4NzM4MzQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4NzM4MzQ2CndpbGxzdCBkdSBqZXR6dCBuZSBhbnR3b3J0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB1aSA6KSAoR3JpbW1hbiwgIDEuIE1haSAyMDAxLCAxOTozNDowOSk6Cn4jISBybj1QaXRmYWxsIHJ0PTk4ODczODQxNyByZz1zY2htYXJybgp+IyEgdGlkPTk4ODczODM0NgpKYSwgdW5kIGJpdHRlIG5lIGVocmxpY2hlLgoKR3JpbU1hbiAuLi4gaXMgbmV1Z2llcmlnIGJpcyB6dW0gVG9kZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHVpIDopIChMaW5mbGFzLCAgMS4gTWFpIDIwMDEsIDE5OjM1OjIyKToKfiMhIHJuPUdyaW1tYW4gcnQ9OTg4NzM4NDQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4NzM4MzQ2CkxpbmZsYXMgSVNUIEpFVFpUIE5JQ0hUIE1FSFIgREEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpicmVlZWVlZWVlZWVpdCAoU3VibGltZSwgIDEuIE1haSAyMDAxLCAxOTozNjowNik6CnNjaHJlaWJlIGFydGlrZWwKSWNoIGJpaWluIGJyZWl0IDopIAoKQW55IENvb21lbnRzLCBleHRyYSBmdWVyIGNodWNrbGVpbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogdWkgOikgKEdyaW1tYW4sICAxLiBNYWkgMjAwMSwgMTk6MzY6MTQpOgp+IyEgcm49TGluZmxhcyBydD05ODg3Mzg1MjIgcmc9c2NobWFycm4KfiMhIHRpZD05ODg3MzgzNDYKRGVuIFp1c2FtbWVuaGFuZyBtdXNzdCBkdSBtaXIgbmljaCBlcmtsYWVyZW4gLi4uIGFiZXIgd2llc28gd2Fyc3QgZHUgYmVpbQpTdGFUaSBHQVJOSUNIVCBkYT8gOikKCkdyaW1NYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHVpIDopIChMaW5mbGFzLCAgMS4gTWFpIDIwMDEsIDE5OjM2OjUyKToKfiMhIHJuPUdyaW1tYW4gcnQ9OTg4NzM4NTc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4NzM4MzQ2CkR1IHNhZ3N0IGVzIGRvY2ggc2VsYnN0IDopCgpMaW5mbGFzLCB3aWxsIHNlaW4gTGViZW4gbmljaHQgYXVzaGF1Y2hlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHVpIDopIChHcmltbWFuLCAgMS4gTWFpIDIwMDEsIDE5OjM3OjM0KToKfiMhIHJuPUxpbmZsYXMgcnQ9OTg4NzM4NjEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4NzM4MzQ2CkFoIHNvIC4uLiBuYWphIC4uLiB3aXJkIHNjaG9uLgoKR3JpbU1hbiAtIGhhdWNodCBMaW5mbGFzIG1pdCBCaWVyZmFobmUgYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXIgZGFzIHZlcmRpZW50PyAoQ2h1Y2t5bGVpbiwgIDEuIE1haSAyMDAxLCAyMTozNjoyNCk6CkR1IHRyaXR0c3QgVGF1YmUuCkZsYXVyb3MgdHJpdHQgRGljaC4KU2Fya29uIGJyaWNodCBpbiBUcmFlbmVuIGF1cyB1bmQgd2VpbnQgYml0dGVybGljaC4KCgpDaHVja3lsZWluLCBzaWNoIGZyYWdlbmQgb2Igc2llIG5pY2h0IGxlc2VuIGtvZW5uZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWwgd2llZGVyIHdhcyBhdXMgZGUuYWx0Lm5ldGRpZ2VzdCA6bykgKEZvb2JhciwgIDEuIE1haSAyMDAxLCAyMzoyODo0MCk6CltBbm06IEVzIGdpbmcgdW0gZGllIEZyYWdlLCBvYiBlaW4gRmlsbSAiS2FsaWZvcm5pYSIgb2RlciAiQ2FsaWZvcm5pYSIKaGVpc3N0Ll0KClZvbjogUmFsZiBIZXJ6ZWwgPHJhbGZoZXJ6ZWxAY29tcHVzZXJ2ZS5kZT4KTmV3c2dydXBwZW46IGRlLnJlYy5maWxtLm1pc2MKQmV0cmlmZnQ6IFJlOiBGU0stUHJvYmxlbQpEYXR1bTogTW9uLCAzMCBBcHIgMjAwMSAxNzozNTozOSArMDIwMApNZXNzYWdlLUlEOiA8OGkxcmV0Z2doNXE5ZzUzNm12dm1iZW90b3VkdGc5cnIzYUA0YXguY29tPgoKT24gTW9uLCAzMCBBcHIgMjAwMSAxMzoyNjoxNyBHTVQsICJUdXZvayIgPHR1dm9rLnJpY2hpZUBjaGVsbG8uYXQ+Cndyb3RlOgoKPk5lIGRlciBGaWxtIGhlaXNzdAo+Cj5LYWxpZm9ybmllbgoKR2VuYXUhCkZvbGdlbmRlIFRpdGVsa29ycmVrdHVyZW4gbW9lY2h0ZSBpY2ggYmVpIGRpZXNlciBHZWxlZ2VuZWhlaXQKYmVrYW5udGdlYmVuOgpGaWdodCBDbHViID0gQ2x1YiBkZXIgdG90ZW4gS2xvcHBlcgpUZXJtaW5hdG9yID0gRGVyIFRvdG1hY2hlcgpCcmFpbmRlYWQgPSBKZW5ueSBFbHZlcnMKQXVzdGluIFBvd2VycyAyIC0gVGhlIHNweSB3aG8gc2hhZ2dlZCBtZSA9IEF1c3RpbiBQb3dlcnMgMiAtIERlciBTcGlvbiAKZGVyIHdvIG1pY2ggc2NobmFnZ2VsdCBoYXQKVGhlIEtpbGxlciA9IERlciBUb2V0ZXIKS2FsaWZvcm5pYSA9IFNhY2hzZW4KClNvIGRhcyB3YWVyJ3MuLi5nZW51ZyAiZ2V0dXZva3QiLgoKCgotLSAKU3VibWlzc2lvbmVuIGZ1ZXIgZGUuYWx0Lm5ldGRpZ2VzdCBiaXR0ZSBhbgo8ZGUtYWx0LW5ldGRpZ2VzdEBtb2RlcmF0b3JzLmRhbmEuZGU+IHNjaGlja2VuLgpEZXIgU3VibWl0dGVyIGlzdCBmdWVyIGRlbiBJbmhhbHQgZGVyIEVpbnJlaWNodW5nIHZlcmFudHdvcnRsaWNoLCAKbmljaHQgZGVyIE1vZGVyYXRvciBkZXIgTmV3c2dydXBwZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvc28uLi4gKEZvb2JhciwgIDIuIE1haSAyMDAxLCAxMzozNzowMik6Ck1hdHJpeDogRm9vYmFyIGZ1ZWhsdGUgc2ljaCBoZXV0ZSBhdWNoIHNjaG9uIGJlc3Nlci4gKDgwJSkKCkRhcyB3dXNzdGUgaWNoIHNjaG9uIDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW5tYXJraWVydGVyIFp3ZWl0aWU/IChNZW5hY2UsICAyLiBNYWkgMjAwMSwgMjE6MTI6MjUpOgppY2ggaGFiIGVzIGRvY2ggc2Nob24gaW1tZXIgZ2VhaG50OgoKRGVpbmUgRnJldW5kaW4gQmllbGVmZWxkIHRlaWx0IERpciBtaXQ6IC9iaW4vZXJzdG1hbC93aWVkZXIvd2VnCkRlaW5lIEZyZXVuZGluIEJpZWxlZmVsZCB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4KRGVpbmUgRnJldW5kaW4gRWxpemFiZXRoIHRlaWx0IERpciBtaXQ6IHdpbmtlCkRlaW5lIEZyZXVuZGluIEVsaXphYmV0aCB0ZWlsdCBEaXIgbWl0OiB3aW5rZSB3aW5layAqRyoqUk9UU0VJKgoKRWxpemFiZXRoICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpCaWVsZWZlbGQgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpNZW5hY2UgKkdlcnVlY2h0ZSBzdHJldWVuZCogO28pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdW5tYXJraWVydGVyIFp3ZWl0aWU/IChHcmltbWJvcm4sICAyLiBNYWkgMjAwMSwgMjE6MTU6MDYpOgp+IyEgcm49TWVuYWNlIHJ0PTk4ODgzMDc0NSByZz1zY2htYXJybgp+IyEgdGlkPTk4ODgzMDc0NQpBZWgsIHdpZXNvIGdlbmF1IHdhciBqZXR6dCBFbGl6YWJldGggcm90PyBTZWkgZG9jaCBiaXR0ZSBzbyBuZXR0IHVuZCBwb3N0ZQphdWNoIGRlbiB2b3JhbmdlZ2FuZ2VuZW4gVGVpbCBkZXMgbG9ncywgZGFtaXQgYXVjaCBrbGFyIHdpcmQgd2VsY2hlIEdlcnVlY2h0ZQpEdSBnZW5hdSBzdHJldXN0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHVubWFya2llcnRlciBad2VpdGllPyAoTWVuYWNlLCAgMi4gTWFpIDIwMDEsIDIxOjIwOjA5KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODg4MzA5MDYgcmc9c2NobWFycm4KfiMhIHRpZD05ODg4MzA3NDUKQWxzbyB2b24gcm90IHdhciBuaWUgZGllIFJlZGUgdW5kIHZvcmF1c2dlZ2FuZ2VuIGlzdCBhdWNoIG5peC4gc2llIHNpbmQgaGFsdApudXIgYmVpZGUgenVyIGdsZWljaGVuIHplaXQgdmVyc2Nod3VuZGVuLiAKVW5kIGphLCBpY2ggd2Vpc3MsIGRhcyBpc3Qga2VpbiBBcmd1bWVudCB1bmQgZXMgd2FyIGphIGF1Y2ggbnVyIGVpbiBTY2hlcnouCjtvKQoKTWVuYWNlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB1bm1hcmtpZXJ0ZXIgWndlaXRpZT8gKEdyaW1tYm9ybiwgIDIuIE1haSAyMDAxLCAyMToyMTozNyk6Cn4jISBybj1NZW5hY2UgcnQ9OTg4ODMxMjA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4ODMwNzQ1CkFsc28sIHdlbm4gaWNoIG1pciBmb2xnZW5kZSBaZWlsZSBzbyBhbmd1Y2tlICh2b3IgYWxsZW0gYW0gRW5kZSk6Cj4gRGVpbmUgRnJldW5kaW4gRWxpemFiZXRoIHRlaWx0IERpciBtaXQ6IHdpbmtlIHdpbmVrICpHKipST1RTRUkqCmZpbmRlIGljaCBzY2hvbiBkYXNzIGRhcyBuYWNoIFJPVFNFSU4gYXVzc2llaHQuCldhcnVtIHNpZSBkYXMgc28gcnVtYnJ1ZWxsdCBpc3QgdWVicmlnZW5zIGVpbmUgZGF2b24gdW5hYmhhZW5naWdlIEZyYWdlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB1bm1hcmtpZXJ0ZXIgWndlaXRpZT8gKFNvbG15ciwgIDIuIE1haSAyMDAxLCAyMToyMjowNSk6Cn4jISBybj1NZW5hY2UgcnQ9OTg4ODMxMjA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4ODMwNzQ1CkFsc28gZGFzIEJpZWxlZmVsZCBuaWNodCBnbGVpY2ggRWxpemFiZXRoIGlzdCwga2FubiBpY2ggZGVmaW5pdHYgYmUtCnN0YWV0aWdlbiA6KQoKU29sKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogdW5tYXJraWVydGVyIFp3ZWl0aWU/IChBbWFyeWxsaXMsICAyLiBNYWkgMjAwMSwgMjE6MjM6MTUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4ODgzMTI5NyByZz1zY2htYXJybgp+IyEgdGlkPTk4ODgzMDc0NQpTaWUgYnJ1ZWxsdCBqYSBuaWNodCBudXIgdWViZXIgZnJ1ZmUgZ2VybmUgcnVtLi4uCgpzY25yLApBbWEqIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB1bm1hcmtpZXJ0ZXIgWndlaXRpZT8gKE1lbmFjZSwgIDIuIE1haSAyMDAxLCAyMTozNzo0MCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTg4ODMxMjk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4ODMwNzQ1CkFoIHNvISBUamEsIGRhIHdpcnN0IER1IGplbWFuZCBhbmRlcmVzIGZyYWdlbiBtdWVzc2VuLCBkYXMgaGFiIGljaCBuaWNodAptaXRiZWtvbW1lbiwgZGEgc2llIHZvcmhlciBtaW5kLiBuZSB2aWVydGVsIFN0dW5kZSBpaHJlbiBGcmV1bmRlbiBuaXgKbWl0Z2V0ZWlsdCBoYXQuIE9kZXIgRHUgZnJhZ3N0IHNpZSBzZWxiZXIsIHdlbm4gc2llIHdpZWRlciBkYSBpc3QhIDtvKQoKTWVuYWNlCiprZWluZUFobnVuZ2hhYmVuZHdhcnVtRWxpemFiZXRocm90d3VyZGV1bmRHcmltbmJvcm5kYWhlcm5pY2h0aGVsZmVua29lbm5lbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB1bm1hcmtpZXJ0ZXIgWndlaXRpZT8gKENodWNreWxlaW4sICAyLiBNYWkgMjAwMSwgMjE6NDU6NDIpOgp+IyEgcm49TWVuYWNlIHJ0PTk4ODgzMjI2MCByZz1zY2htYXJybgp+IyEgdGlkPTk4ODgzMDc0NQpTb3dlaXQgaWNoIGRhcyB3ZWlzcyBnaW5nIGVzIHVtIGVpbmUgb21pbm9lc2UgQmFkZXdhbm5lIHZvbiBBenp1cm8uCgpDaHVja3lsZWluLCBudXIgdmVybXV0ZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWlzaSBvZGVyIExhdmE/IChLYWZmLCAgMi4gTWFpIDIwMDEsIDIyOjM2OjE2KToKQ2hhb3QgRWlzaSAoTGV2ZWwgMTEsIFNlaGVyKSBiZXRyYXQgZ2VyYWRlIGRhcyBNb3JnZW5ncmF1ZW4uIApbVG9kOkxhcnNdIEVpbiBTcHJ1bmcgaW4gZ2x1ZWhlbmRlIExhdmEgaGF0IGdlcmFkZSBEZWlkcmUgdW1nZWJyYWNodC4gCgpXb2hsIExhdmEuLi4KS2FmZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpc2kgb2RlciBMYXZhPyAoU29sbXlyLCAgMi4gTWFpIDIwMDEsIDIzOjA3OjA3KToKfiMhIHJuPUthZmYgcnQ9OTg4ODM1Nzc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4ODM1Nzc2CkFsc28gZWhybGljaCBLYWZmLCBkZW4gaGFiIGljaCBuaWNodCBzbyByZWNodCB2ZXJzdGFuZGVuIDopCgpTb2wqLCBEb29maGVpdCB3aXJkIGJlbG9obnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkx1bmNodGltZSA6KSAoTml6emwsICAyLiBNYWkgMjAwMSwgMjM6MzU6MDIpOgoKW01vZXJkZXI6R2Vpc3QgZWluZXIgUmF0dGVdIFRzY2h1ZXNzIGVyc3RtYWwsIE1pYXUuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbiBkZXIgS2xlcmlrZXJnaWxkZSAoQW5hY3Jpb24sICAzLiBNYWkgMjAwMSwgMDA6NDM6MzIpOgp1IGJlZmluZGVzdCBEaWNoIGltIFRlbXBlbCBkZXMgSGVpbGlnZW4gT3JkZW5zLiBUZW1wZWxkaWVuZXIgaHVzY2hlbiBnZS0Kc2NoYWVmdGlnIGR1cmNoIGRlbiBob2hlbiBSYXVtLCBpbiBkZW0gc2ljaCBpaHIgR2VtdXJtZWwgbWl0IGRlbSBHZXJhZXVzY2gKaWhyZXIgU2Nocml0dGUgenUgZWluZXIgYW5kYWVjaHRpZ2VuIEdlcmFldXNjaGt1bGlzc2UgdmVyZWluaWd0LiBBbiBkZXIKU3VlZHNlaXRlIGRlcyBSYXVtZXMgc3RlaHQgZWluIGdyb3NzZXIsIHN0ZWluZXJuZXIgQWx0YXIuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBub3JkZW4uCltSaXR0ZXIgdm9uIE1lbG9yYW46XSBBc2NhZGFyIEV0aGF2YXIsIGtvZW5pZ2xpY2hlciBMZWliYXJ6dC4KRWluZSBsZWVyZSBTcHJ1ZWhkb3NlLgpEZXIgT3JkZW5zdm9yc3RlaGVyIEFya3NoYXQuClpvb2sgZXJzY2hlaW50LgpbQWxsZ2VtZWluOkphc21pbl0gZGFubiB3YWVyIGVyIGFiZXIgbmljaCBiZWltIEhlaWxlcgpNdXBmZWwga29tbXQga2V1Y2hlbmQgaGVyZWluIHVuZCBtdXNzIGVyc3RtYWwgdmVyc2NobmF1ZmVuLgpBcmtzaGF0IGhlaXNzdCBNdXBmZWwgYWxzIHJldWlnZW4gU3VlbmRlciB3aWxsa29tbWVuIHVuZCBsYWV1dGVydCBzZWluZW4KR2Vpc3QuCltBbGxnZW1laW46RWxiZXJldF0gUm9uZGEsIHdhcyBoYXN0IGR1IGdlcmF1Y2h0PyA7KQpEdSBmbHVjaHN0IGxhdXRzdGFyay4KRHUgZ3JpbnN0Lgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2tzIEthdXRzY2h1a2hhbW1lciBmbGllZ3QgaGVyZWluLCB0cmlmZnQgRXRoYXZhciBhbSBLb3BmLCB0YW56dCBkb3J0CmVpbmUga2xlaW5lIFJ1bWJhIHVuZCBzcHJpbmd0IHdpZWRlciBkYXZvbi4gRWlnZW5hcnRpZy4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9va3MgS2F1dHNjaHVraGFtbWVyIGZsaWVndCBoZXJlaW4sIHRyaWZmdCBNdXBmZWwgYW0gS29wZiwgdGFuenQgZG9ydCBlaW5lClx3aWxsZQprbGVpbmUgUnVtYmEgdW5kIHNwcmluZ3Qgd2llZGVyIGRhdm9uLiBFaWdlbmFydGlnLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KWm9vayBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpab29rIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uClpvb2sgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KTXVwZmVsIHNhZ3Q6IG9oIHNjcm9sbApBdXMgaGVpdGVyZW0gSGltbWVsIGVyc2NoZWludCBlaW5lIERyZWNrd29sa2UgdW5kIHN0YXVidCBab29rIHp1LgpSb25kYXMgSGV4ZW5zdGFiIGhhdXQgWm9vayBrcmFlZnRpZyBhdWYgZGVuIEtvcGYhClpvb2sgc2FndDogQWNoLgpDcm9mdHMgS2F1dHNjaHVraGFtbWVyIGZsaWVndCBoZXJlaW4sIHRyaWZmdCBab29rIGFtIEtvcGYsIHRhbnp0IGRvcnQgZWluZQprbGVpbmUgUnVtYmEgdW5kIHNwcmluZ3Qgd2llZGVyIGRhdm9uLiBFaWdlbmFydGlnLgpNdXBmZWwgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KTXVwZmVsIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uCk11cGZlbCBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpNdXBmZWwgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KTXVwZmVsIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uCk11cGZlbCBzY2htZWlzc3Qgc2VpbmVuIEthdXRzY2h1a2hhbW1lciB3ZWcuIEVyc3RhdW5saWNoZXJ3ZWlzZSBrb21tdCBlcgpzb2ZvcnQgd2llZGVyIHp1cnVlY2tnZXNwcnVuZ2VuLgpNdXBmZWwgc2NobWVpc3N0IHNlaW5lbiBLYXV0c2NodWtoYW1tZXIgd2VnLiBFcnN0YXVubGljaGVyd2Vpc2Uga29tbXQgZXIKc29mb3J0IHdpZWRlciB6dXJ1ZWNrZ2VzcHJ1bmdlbi4KTXVwZmVsIHNjaG1laXNzdCBzZWluZW4gS2F1dHNjaHVraGFtbWVyIHdlZy4gRXJzdGF1bmxpY2hlcndlaXNlIGtvbW10IGVyCnNvZm9ydCB3aWVkZXIgenVydWVja2dlc3BydW5nZW4uCkF1cyBoZWl0ZXJlbSBIaW1tZWwgZXJzY2hlaW50IGVpbmUgRHJlY2t3b2xrZSB1bmQgc3RhdWJ0IE11cGZlbCB6dS4KUm9uZGFzIEhleGVuc3RhYiBoYXV0IE11cGZlbCBrcmFlZnRpZyBhdWYgZGVuIEtvcGYhCkxlZWxvb3MgS2F1dHNjaHVraGFtbWVyIGZsaWVndCBoZXJlaW4sIHRyaWZmdCBab29rIGFtIEtvcGYsIHRhbnp0IGRvcnQgZWluZQprbGVpbmUgUnVtYmEgdW5kIHNwcmluZ3Qgd2llZGVyIGRhdm9uLiBFaWdlbmFydGlnLgp1IGRlbmtzdCAgIC4gbyBPIChvYiBpY2ggZGFzIG1hbCBwb3N0ZSA/KQoqWlVGRiogTXVwZmVsIGhhdXQgRGlyIHNlaW4gR3VtbWlodWhuIHVtIGRpZSBPaHJlbi4KCm9va3MgS29wZiB3YWNrZWx0LgpNdXBmZWwgZHJlaHQgYWJzb2x1dCBkdXJjaCB1bmQgYmVoYWVtbWVydCBBcmtzaGF0IG1pdCBzaWNodGxpY2hlbQpWZXJnbnVlZ2VuIG1pdCBlaW5lbSBLYXV0c2NodWtoYW1tZXIuClpvb2sgdHJldGV0IEFya3NoYXQuCkFya3NoYXQgcnVmdDogRnJldmVsIQpNdXBmZWwgd2lyZCBkZXMgVGVtcGVscyB2ZXJ3aWVzZW4uClpvb2sgd2Vpc3Mgc2Nob24sIHdhcnVtIGVyIHNlaW5lbiBXb3Jrcm9vbSBub3JtYWxlcndlaXNlIG5pY2h0IHZlcmxhZXNzdC4KWm9vayBsb2VzdCBzaWNoIGxhbmdzYW0gYXVmLiBadXJ1ZWNrIGJsZWlidCBudXIgZWluIEZsaW1tZXJuIGluIGRlciBMdWZ0LgpEaWUgTHVmdCBmYWVuZ3QgYW4genUgZmxpbW1lcm4uIFBsb2V0emxpY2ggZXJzY2hlaW50IFpvb2sgdm9yIERpci4KQXJrc2hhdCBydWZ0OiBGcmV2ZWwhCk11cGZlbCB3aXJkIGRlcyBUZW1wZWxzIHZlcndpZXNlbi4KWm9vayB3ZWlzcyBzY2hvbiwgd2FydW0gZXIgc2VpbmVuIFdvcmtyb29tIG5vcm1hbGVyd2Vpc2UgbmljaHQgdmVybGFlc3N0Lgpab29rIGxvZXN0IHNpY2ggbGFuZ3NhbSBhdWYuIFp1cnVlY2sgYmxlaWJ0IG51ciBlaW4gRmxpbW1lcm4gaW4gZGVyIEx1ZnQuCgpBbmFjKgoKUC5TLiAxIG9kZXIgMiBaZWlsZW4ga29lbm50ZW4gZG9wcGVsdCBzZWluIC4uLi4gcGFzdGVmZWhsZXIgOy0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWxpY2ggaW4gZGVyIEtsZXJpa2VyZ2lsZGUgKFpvb2ssICAzLiBNYWkgMjAwMSwgMDA6NDU6NTYpOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTg4ODQzNDEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4ODQzNDEyCgpTZWkgZnJvaCwgZGFzcyBzb3dlbmlnIExldXRlIGRhIHdhcmVuLiA6KSBBYmVyIDEyMCBTcGllbGVyIHdpcmQgZGFzCmRvY2ggZXJzdCB3aXJrbGljaCB3aXR6aWcuIDopCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVsaWNoIGluIGRlciBLbGVyaWtlcmdpbGRlIChWYXJsYXJpb24sICAzLiBNYWkgMjAwMSwgMDA6NDY6NDYpOgp+IyEgcm49Wm9vayBydD05ODg4NDM1NTYgcmc9c2NobWFycm4KfiMhIHRpZD05ODg4NDM0MTIKR3VtbWlodWVobmVyIHVlYmVyYWxsLi4uCgpWYXJsKiwgaXJyZSBraWNoZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmV1bGljaCBpbiBkZXIgS2xlcmlrZXJnaWxkZSAoRWxiZXJldCwgIDMuIE1haSAyMDAxLCAwMDo0NzozOCk6Cn4jISBybj1WYXJsYXJpb24gcnQ9OTg4ODQzNjA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4ODQzNDEyCkljaCB3aWxsIGF1Y2ggbmVuIEd1bW1paHVobgoKRWxiaS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV1bGljaCBpbiBkZXIgS2xlcmlrZXJnaWxkZSAoQW1hcnlsbGlzLCAgMy4gTWFpIDIwMDEsIDAwOjQ3OjQ2KToKfiMhIHJuPVpvb2sgcnQ9OTg4ODQzNTU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4ODQzNDEyCnBvcGxpZywgZGVyIFNjcm9sbC4uLiBzb3dhcyBrcmllZ3QgbWVpbiAydGllIHVlYmVycyBGQmFuZCBoaW4sIGFsc28gcGx1c3RlcgpEaWNoIG5pY2ggc28gYXVmIDopCgpBbWEqLCBoZXV0ZSBtYWwgR3Jvc3Nrb3R6IAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmV1bGljaCBpbiBkZXIgS2xlcmlrZXJnaWxkZSAoWm9vaywgIDMuIE1haSAyMDAxLCAwMDo0ODowMCk6Cn4jISBybj1FbGJlcmV0IHJ0PTk4ODg0MzY1OCByZz1zY2htYXJybgp+IyEgdGlkPTk4ODg0MzQxMgpKYW1tZXIgbmV0dCBydW0sIHZpZWxsZWljaHQgc2V0enQgamVtYW5kIG5vY2ggZWlucyBpbSBNZWdhc2NobWFycm4tVGhyZWFkCmF1cy4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOZXVsaWNoIGluIGRlciBLbGVyaWtlcmdpbGRlIChWYXJsYXJpb24sICAzLiBNYWkgMjAwMSwgMDA6NDg6MTgpOgp+IyEgcm49Wm9vayBydD05ODg4NDM2ODAgcmc9c2NobWFycm4KfiMhIHRpZD05ODg4NDM0MTIKamEsIHZpZWxsZWljaHQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldWxpY2ggaW4gZGVyIEtsZXJpa2VyZ2lsZGUgKFpvb2ssICAzLiBNYWkgMjAwMSwgMDA6NDg6MzIpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTk4ODg0MzY2NiByZz1zY2htYXJybgp+IyEgdGlkPTk4ODg0MzQxMgpHZWggaW0gU2FuZCBzcGllbGVuLCBBbWFyeWxsaXMhCgpab29rIHdpcmZ0IGVpbiBwYWFyIEZvZXJtY2hlbiBpbiBkaWUgV3Vlc3RlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmV1bGljaCBpbiBkZXIgS2xlcmlrZXJnaWxkZSAoQW1hcnlsbGlzLCAgMy4gTWFpIDIwMDEsIDAwOjUwOjE4KToKfiMhIHJuPVpvb2sgcnQ9OTg4ODQzNzEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4ODQzNDEyCkFsc28gaG9lbW1hIFp1ZyEKCkljaCBiaW4genV0aWVmc3QgZW1wb2VydCB1bmQgZW50c2V0enQgb2IgRGVpbmVzIEFydGlrZWxzLgpXb2hpbiBzb2xsIGRpZSBFbnR3aWNrbHVuZyBkaWVzZXMgTWVocmJlbnV0emVya2Vya2VycyBmdWVocmVuLCB3ZW5uIHNpY2gKc2VsYnN0IHNjaG9uIHVudGVyIGRlbiBhY2ggc28gdG9sbGVuIE1hZ2llcm4gZGllc2VyIFRvbiB1bmQgZGllc2VyIFVtZ2FuZwphdXNicmVpdGV0Pz8KCkFtYSosIGVtcG9lcnQgc2NobmF1YmVuZCB1bmQgc2ljaCB3aWVkZXIgaW4gaWhyZXIgT2FzZSBuaWVkZXJsYXNzZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmV1bGljaCBpbiBkZXIgS2xlcmlrZXJnaWxkZSAoVmFybGFyaW9uLCAgMy4gTWFpIDIwMDEsIDAwOjUxOjA2KToKfiMhIHJuPUFtYXJ5bGxpcyBydD05ODg4NDM4MTggcmc9c2NobWFycm4KfiMhIHRpZD05ODg4NDM0MTIKSGFlaD8hCgpWYXJsKiwgYXVmIGRpZSBVZWJlcnNldHp1bmcgd2FydGVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5ldWxpY2ggaW4gZGVyIEtsZXJpa2VyZ2lsZGUgKFpvb2ssICAzLiBNYWkgMjAwMSwgMDA6NTE6MjUpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTk4ODg0Mzg2NiByZz1zY2htYXJybgp+IyEgdGlkPTk4ODg0MzQxMgpab29rIHN0cmV1dCBTYW5kIGluIEFtYXJ5bGxpcyBHZXRyaWViZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE5ldWxpY2ggaW4gZGVyIEtsZXJpa2VyZ2lsZGUgKEFtYXJ5bGxpcywgIDMuIE1haSAyMDAxLCAwMDo1MzozNSk6Cn4jISBybj1ab29rIHJ0PTk4ODg0Mzg4NSByZz1zY2htYXJybgp+IyEgdGlkPTk4ODg0MzQxMgpIaWxmYWUhIEVpbiBHcmFic2NoZXIhCgpBbWEqLCBmYXNzdW5nc2xvcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5ldWxpY2ggaW4gZGVyIEtsZXJpa2VyZ2lsZGUgKFpvb2ssICAzLiBNYWkgMjAwMSwgMDA6NTQ6MzUpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTk4ODg0NDAxNSByZz1zY2htYXJybgp+IyEgdGlkPTk4ODg0MzQxMgpVbSBNb250YW51cyBGcmFnZSBhdWZ6dWdyZWlmZW46IFdhcyBnaWJ0IGVzIGhpZXIgZnVlciBSZV4xMDA/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTmV1bGljaCBpbiBkZXIgS2xlcmlrZXJnaWxkZSAoU29sbXlyLCAgMy4gTWFpIDIwMDEsIDAwOjU1OjA3KToKfiMhIHJuPVpvb2sgcnQ9OTg4ODQ0MDc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4ODQzNDEyCkVpbmVuIGdlYnJhdGVuZW4gS2xlcmlrZXIgbmFjaCBTb2xteXIncyBBcnQgaGFldHQgaWNoIGFuenViaWV0ZW4gOikKClNvbCouCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTmV1bGljaCBpbiBkZXIgS2xlcmlrZXJnaWxkZSAoVmFybGFyaW9uLCAgMy4gTWFpIDIwMDEsIDAwOjU1OjI5KToKfiMhIHJuPVNvbG15ciBydD05ODg4NDQxMDcgcmc9c2NobWFycm4KfiMhIHRpZD05ODg4NDM0MTIKT2RlciBlaW4gR3VtbWlodWhuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE5ldWxpY2ggaW4gZGVyIEtsZXJpa2VyZ2lsZGUgKEFuYWNyaW9uLCAgMy4gTWFpIDIwMDEsIDAwOjU1OjQxKToKfiMhIHJuPVNvbG15ciBydD05ODg4NDQxMDcgcmc9c2NobWFycm4KfiMhIHRpZD05ODg4NDM0MTIKR2lidHMgYXVjaCBnZWdyaWxsdGVuIFNvbG15ciBhdWYgS2xlcmlrZXJhcnQgPwoKQW5hKiwgaHVuZ3JpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE5ldWxpY2ggaW4gZGVyIEtsZXJpa2VyZ2lsZGUgKFNvbG15ciwgIDMuIE1haSAyMDAxLCAwMDo1NjowNSk6Cn4jISBybj1BbmFjcmlvbiBydD05ODg4NDQxNDEgcmc9c2NobWFycm4KfiMhIHRpZD05ODg4NDM0MTIKSG1tLCBEdSBrb21tc3QgamEgbmljaHQgenVyIFBhcnR5LCBBbmEqIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgcGFzc2llcnQgd2VubiBMTFAnbGVyIG11ZWRlIHNpbmQgOikgKFNvbG15ciwgIDMuIE1haSAyMDAxLCAwMjoyMzo1NSk6CiBbQWJlbnRldWVyOlNhcmtvbl0gc3RpbW10IGVzLCBkYXNzIHJpemludXNmcnVlY2h0ZSBhdWYgdG9ydHVnYSB3YWNoc2VuPwogW0FiZW50ZXVlcjpTYXJrb25dIDAyOjE2OjE4CiBbQWJlbnRldWVyOk1hZ2lydXNdIG5vZSAwMjoxNjo0MgogW0FiZW50ZXVlcjpTYXJrb25dIG1pc3QsIGF1cm9yYT8gMDI6MTY6NTAKIFtBYmVudGV1ZXI6TWFnaXJ1c10gbm9lIDAyOjE2OjU0CiBbQWJlbnRldWVyOlNhcmtvbl0gbWhtbSwgc29ubmVuaW5zZWw/IDAyOjE3OjAwCiBbQWJlbnRldWVyOk1hZ2lydXNdIGFsbGUgc2NobGVjaHRlbiBkaW5nZSBzaW5kIGRyZWk/IDAyOjE3OjA4CiBbQWJlbnRldWVyOlNhcmtvbl0gKmdnKiBvaywgc3ZvbHZhZXIgOikgMDI6MTc6MjYKIFtBYmVudGV1ZXI6TWFnaXJ1c10gZXJob2VoZSBhdWYgdmllciAwMjoxNzozMgogW0FiZW50ZXVlcjpTYXJrb25dIGZldWVyaW5zZWw/IDAyOjE3OjM4CiBbQWJlbnRldWVyOlNvbG15ciBraWNoZXJ0LiAwMjoxNzo0Nl0KIFtBYmVudGV1ZXI6U2Fya29uXSByaWVzZW5pbnNlbD8gMDI6MTc6NTAKIFtBYmVudGV1ZXI6TWFnaXJ1cyBncmluc3QuIDAyOjE3OjUyXQogW0FiZW50ZXVlcjpTb2xteXJdIE1hY2h0IG1hbCB3ZWl0ZXIuLi4gMDI6MTc6NTgKIFtBYmVudGV1ZXI6U2Fya29uXSAqd2VpbiogbnUgaGFiIGljaCBkYW5uIGFsbGUgZHVyY2ggMDI6MTg6MDgKIFtBYmVudGV1ZXI6TWFnaXJ1c10gbmVpbiwgZ2VmYWVuZ25pc2luc2VsIGF1Y2ggbmljaHQgKmcqIDAyOjE4OjEwCiBbQWJlbnRldWVyOlNhcmtvbl0gbWhtbSwgZGllIGFsdGUgY2hpbGFuYSBzYWd0IGF1ZiBuZXIgZmV1Y2h0d2FybWVuIGluc2VsCiBbQWJlbnRldWVyOlNhcmtvbl0gMDI6MTg6MzgKIFtBYmVudGV1ZXI6U2Fya29uXSBhbHNvIG1laHIgaW5zZWxuIGZhbGxlbiBtaXQgZGEgc3BvbnRhbiBuaWNoIGVpbiAwMjoxODo1NAogW0FiZW50ZXVlcjpTb2xteXIgZmFsbGVuIGRhIGF1Y2ggbmljaHQgbWVociBlaW4gOikgMDI6MTk6MDZdCiBbQWJlbnRldWVyOk1hZ2lydXNdIHp3ZWkgaGFzdCBkdSB2ZXJnZXNzZW4uIHNvZ2FyIHp3ZWkgZmV1Y2h0d2FybWUgMDI6MTk6MTAKIFtBYmVudGV1ZXI6U29sbXlyXSBUYW1pYmFyIHVuZCBkYXMgVkxhbmQuLiAwMjoxOToyMgogW0FiZW50ZXVlcjpTYXJrb25dIGFyZ3MsIHZsYW5kIHNvbGwgZmV1Y2h0d2FybSBzZWluPyAwMjoxOTozMAogW0FiZW50ZXVlcjpNYWdpcnVzXSB2bGFuZCBpc3QgbmljaHQgZmV1Y2h0d2FybSAwMjoxOTozMgogW0FiZW50ZXVlcjpTYXJrb24gZ3JpbnN0LiAwMjoxOTo0MF0KIFtBYmVudGV1ZXI6U29sbXlyXSBOb2UsIGFiZXIgZGllIGhhc3QgRHUgYXVjaCBuaWNodCBnZW5hbm50IDAyOjE5OjQyCiBbQWJlbnRldWVyOlNhcmtvbl0gZGFubiBpc3NlcyB0YW1pYmFyIDopIDAyOjE5OjUyCiBbQWJlbnRldWVyOlNvbG15ciBzZXVmenQuIDAyOjE5OjU2XQogW0FiZW50ZXVlcjpTYXJrb25dIGVpbiBsdXN0aWdlcyByYXRlc3BpZWwgaGllciAqZ2cqIDAyOjIwOjEwCgogLi4uIGhtbSAuLi4KIF1bQWJlbnRldWVyOlNhcmtvbl0gd2FhYSwgYmluIGljaCBkb29vZiEgdGl0aXd1IGlzc2VzIGJlc3RpbW10CiBdW0FiZW50ZXVlcjpNYWdpcnVzIGdyaW5zdCBoaW50ZXIgdm9yZ2VoYWx0ZW5lciBFeHRyYWhhbmQuXQoKU29sKiwgYXVmIGRpZXNlIFdlaXNlIENodWNreWxlaW4gZ3J1ZXNzZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYXNzaGVpc3NIZWlzc25hc3MgOikgKFNvbG15ciwgIDMuIE1haSAyMDAxLCAwMjoyODo1NSk6CiBEdSB6aWVoc3QgRGVpbmUgV2Fzc2VycGlzdG9sZSB1bmQgc3ByaXR6dCBTYXJrb24gcGF0c2NobmFzcy4KIER1IHNhZ3N0OiBPaCBEdSBiaXN0IG5hc3MsIG5hIHdhcnRlLCBpY2ggbWFjaCBEaWNoIHRyb2NrZW4gOikKIER1IGhvbHN0IGF1cyBEZWluZW4gdGllZnN0ZW4gVGFzY2hlbiAob2RlciB3YXMgd2Vpc3MgZGVubiBpY2ggd29oZXIpIERlaW5lbgogTW9yZ2VuR3JhdWVuIGhhbmRnZWFyYmVpdGV0ZW4gTWluaS1GbGFtbWVud2VyZmVyICh0bSksIHJpY2h0ZXN0IGlobiBhdXMKdW5kLi4uCiBmZXVlcnN0IGVpbmVuIHJpZXNpZ2VuIEZldWVyYmFsbCBhdWYgU2Fya29uIGFiLgogRXMgcmllY2h0IGF1ZiBlaW5tYWwgc28gdmVyYnJhbm50IGhpZXIuLi4KIER1IHNhZ3N0OiBIZXksIER1IGJyZW5uc3QhISEKIER1IHppZWhzdCBEZWluZSBXYXNzZXJwaXN0b2xlIHVuZCBzcHJpdHp0IFNhcmtvbiBwYXRzY2huYXNzLgogU2Fya29uIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgogU2Fya29uIGRlbmt0ICAgLiBvIE8gKGltbWVyIG51ciBxdWF0c2NoIGltIGtvcGYgKmdnKikKIER1IGtpY2hlcnN0LiAoV2llIGFsYmVybiB2b24gRGlyKQoKU29sKiwgTnIuMiBmdWVyIENodWNreWxlaW4gKGplZGVyIEFydGlrZWwga3JpZWd0IG5lIE51bW1lciB1bmQgbmUgV2lkbXVuZwphbiBkZW4gSnVuZ21hZ2llcikgKkcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTYXJrb24gaG9jaCAzIChTb2xteXIsICAzLiBNYWkgMjAwMSwgMDI6MzQ6MTgpOgogRHUgc2Fnc3Q6IENodWNreSogd29sbHQgQXJ0aWtlbCBoYWJlbiwgd2VpbCBpaG0gbGFuZ3dlaWxpZyB3YXIuLi4KIFNhcmtvbiBzYWd0OiBuYWphLCB1bmQga2xlaW5lIHNwaWVsZXIgbXVlc3NlbiBoZXJoYWx0ZW4gOikKIFNhcmtvbiBncmluc3QuCiBEdSBncmluc3QuCiBEdSB0YWV0c2NoZWxzdCBTYXJrb24gZGVuIEtvcGYuCiBEdSBuaWNrc3QgenVzdGltbWVuZC4KIER1IHNhZ3N0OiBTbyBrbGVpbiBiaXN0ZSBqYSBhdWNoIG5pY2h0IG1laHIKIFNhcmtvbiBzYWd0OiBuYWphLCBsaWViZXIgc28gdHVuCiBTYXJrb24gc2FndDogYnJpbmd0IHVuZ2VhaG50ZSB2b3J0ZWlsZQogRHUgc2Fnc3Q6IEpldHp0IGdlaCBtYWwgZGVpbmUgRnJ1ZWNodGUgc3VjaGVuLCBpY2ggZ2VoIHNjaGxhZmVuIDopCiBEdSBzdHVwc3QgU2Fya29uIGFuLgogU2Fya29uIGdyaW5zdC4KIFNhcmtvbiBzYWd0OiBzY2hsYWcgZ3V0CiBTYXJrb24gc2FndDogYWFlYWVhZWFlYWVhZQogU2Fya29uIHNhZ3Q6IGR1IHdlaXNzdCB3YXMgaWNoIG1laW4KIER1IG5pY2tzdCB6dXN0aW1tZW5kLgoKU29sKiwgZWluZW4gd2VpdGVyZW4gRmFsbCB2b24gSGlybml0aXMgaW5yZXBhcmFiaWxpdGlzIGF1ZnplaWdlbmQuIERhcyAKd2lyZCBoaWVyIG5vY2ggenVtIFZvbGtzc3BvcnQuIFNvIENodWNreSosIGljaCBob2ZmZSBkYXMgYmVmcmllZGlndApEZWluZW4gU2NobWFycm5kdXJzdCA6KQpEZWluZW4gU2NobWFycm5kdXJzdCA6KQoKU29sKidzIFJldHVyblRhc3RlIGtsZW1tdCB3aWVkZXIgKGhhYiB6dSBvZnQsIGF1ZiBtZWluZSBUYXN0YXR1ciBlaW5nZS0KZHJvc2NoZW4pLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLbGVyaWtlciB1bmQgQWxrb2hvbC4uLiAgKExhY3JpLCAgMy4gTWFpIDIwMDEsIDA4OjQwOjUzKToKCkR1IGJlZmluZGVzdCBEaWNoIGltIFRlbXBlbCBkZXMgSGVpbGlnZW4gT3JkZW5zLiBUZW1wZWxkaWVuZXIgaHVzY2hlbiBnZS0Kc2NoYWVmdGlnIGR1cmNoIGRlbiBob2hlbiBSYXVtLCBpbiBkZW0gc2ljaCBpaHIgR2VtdXJtZWwgbWl0IGRlbSBHZXJhZXVzY2gKaWhyZXIgU2Nocml0dGUgenUgZWluZXIgYW5kYWVjaHRpZ2VuIEdlcmFldXNjaGt1bGlzc2UgdmVyZWluaWd0LiBBbiBkZXIKU3VlZHNlaXRlIGRlcyBSYXVtZXMgc3RlaHQgZWluIGdyb3NzZXIsIHN0ZWluZXJuZXIgQWx0YXIuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBub3JkZW4uCkRlciBPcmRlbnN2b3JzdGVoZXIgQXJrc2hhdC4KRGVyIE9yZGVuc3ZvcnN0ZWhlciBBcmtzaGF0LgpEaWVzIGlzdCBBcmtzaGF0LCBkZXIgaGllc2lnZSBPcmRlbnN2b3JzdGVoZXIuIEVyIGlzdCBlaW4gd3VlcmRpZ2VyIGFsdGVyCk9yaywgaW4gZWluZSB3ZWl0ZSwgd2Vpc3NlIFJvYmUgbWl0IHZlcmdvbGRldGVuIFNhZXVtZW4gZ2VrbGVpZGV0IHVuZCBtaXQKZWluZW0gZ3VldGlnZW4gQmxpY2sgaW4gZGVuIGR1bmtsZW4gQXVnZW4uCkFya3NoYXQgZnVlaHJ0IGRpZSBPYmVyYXVmc2ljaHQgdWViZXIgZGllIFRlbXBlbGRpZW5lciBoaWVyIGltIFRlbXBlbCwgdW5kCmVyIHN0ZWh0IERpciBiZWkgRnJhZ2VuIHNpY2hlciBnZXJuZSB6dXIgVmVyZnVlZ3VuZy4KRXIgaXN0IGFic29sdXQgZml0LiAoMTAwJSkKRXIgdHJhZWd0IGJlaSBzaWNoOgpFaW4gc3RyYWhsZW5kZXIgVGFsaXNtYW4gKGFuZ2V6b2dlbikuCkRpZXMgaXN0IEFya3NoYXQsIGRlciBoaWVzaWdlIE9yZGVuc3ZvcnN0ZWhlci4gRXIgaXN0IGVpbiB3dWVyZGlnZXIgYWx0ZXIKT3JrLCBpbiBlaW5lIHdlaXRlLCB3ZWlzc2UgUm9iZSBtaXQgdmVyZ29sZGV0ZW4gU2FldW1lbiBnZWtsZWlkZXQgdW5kIG1pdAplaW5lbSBndWV0aWdlbiBCbGljayBpbiBkZW4gZHVua2xlbiBBdWdlbi4KQXJrc2hhdCBmdWVocnQgZGllIE9iZXJhdWZzaWNodCB1ZWJlciBkaWUgVGVtcGVsZGllbmVyIGhpZXIgaW0gVGVtcGVsLCB1bmQKZXIgc3RlaHQgRGlyIGJlaSBGcmFnZW4gc2ljaGVyIGdlcm5lIHp1ciBWZXJmdWVndW5nLgpFciBpc3QgYWJzb2x1dCBmaXQuICgxMDAlKQpFciB0cmFlZ3QgYmVpIHNpY2g6CkVpbiBoYW5kbGljaGVyIEthdXRzY2h1a2hhbW1lci4KRWluIHN0cmFobGVuZGVyIFRhbGlzbWFuIChhbmdlem9nZW4pLgoKd2llc28gaXN0IEFya3NoYXQgaGllciAyIG1hbCB1bmQgaGF0IHNvZ2FyIGVpbm1hbCBlaW5lbiBLYXV0c2NodWtoYW1tZXIgZGFiZWkKPyAKCkxhY3JpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIFNvbConcyBTcHJ1Y2ggZGVzIFRhZ2VzIChmdWVyIENodWNreWxlaW4pIChTb2xteXIsICAzLiBNYWkgMjAwMSwgMTI6MjY6MDkpOgogSG1tLCBhdWYgUGxhdHogMSBpc3QgZGVmaW5pdGl2IDoKIFtBbGxnZW1laW46RHJvbGxpXSB3b3p1IGhhdCBtYW4gZWluIGdlaGlybj8gYmVzdGltbXQgbmljaHQgbnVyIHVtIGVzCnp3aXNjaGVuCiBbQWxsZ2VtZWluOkRyb2xsaV0gZGVuIGJlaW5lbiB6dSB0cmFnZW4gOikKCiBVbmQgUGxhdHogMiBnZWh0IGFuOgogJ0lzdCBkaWUgTGViZXIga2FwdXR0LCBzYXVmZW4gd2lyIGF1ZiBkZXIgTWlseiB3ZWl0ZXInIChNdXBmZWwpCgogQWVoLCB1bmQgTnIuMyBnaWJ0cyBuaWNodCA6KQoKU29sKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWhhIDopIChTdHJvaGFsbSwgIDMuIE1haSAyMDAxLCAxNzo1MzowMik6ClJhbmRhciBUb2JpcyBzYWd0OiBJY2ggZ2xhdWJlLCBtaWNoIGVyZWlsdCBkZXIgUnVmIGRlciBOYXR1ci4KUmFuZGFyIFRvYmlzIHZlcnN1Y2h0IG5hY2ggTm9yZGVuIHp1IGdlaGVuLgpMbHlzdHJhdGhlIHJ1ZnQ6IFJhbmRhciwgRHUgYmxlaWJzdCBISUVSLCBEdSBtdXNzdCBhcmJlaXRlbi4KUmFuZGFyIFRvYmlzIHNldHp0IHNpY2ggd2llZGVyLgpSYW5kYXIgVG9iaXMgc2V1Znp0IGVyZ2ViZW4uClZvbiBGcmV1bmQgRWxiZXJldDogc28sIGljaCBtdXNzIGFyYmVpdGVuCgoKSGFlbG1jaGVuLCBoYXQgRWxiaSBkdXJjaHNjaGF1dAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFoYSA6KSAoRWxiZXJldCwgIDMuIE1haSAyMDAxLCAxOToxNTo0OSk6Cn4jISBybj1TdHJvaGFsbSBydD05ODg5MDUxODIgcmc9c2NobWFycm4KfiMhIHRpZD05ODg5MDUxODIKOikKCkFyYmVpdCBtYWNodCBTcGFzcyA6KQoKRWxiaS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgTmV3YmllcyBhdWYgQWJ3ZWdlbiBUZWlsIDEgKFNvbG15ciwgIDMuIE1haSAyMDAxLCAxOToxOTo1OSk6CiBbQWJlbnRldWVyOkhlbGl1bV0gZ2xlaWNoIGlzIHplaXR1bWtlaHIhIGRhbm4gYmluIGljaCBicmVpdCAxOToxNDo0OQogW0FiZW50ZXVlcjpIZWxpdW1dIGhlPyBpY2ggYmluIG5pY2ggdG90PyBpY2ggYmluIG51ciBpbiBlaW5lbSByYXVtIG9obmUKIFtBYmVudGV1ZXI6SGVsaXVtXSBhdXNnYWVuZ2U/IDE5OjE1OjMzCiBbQWJlbnRldWVyOkhlbGl1bV0gZXMga2FubiBhYmVyIHBhc3NpZXJlbiBkYXMgaWNoIGdsZWljaCBicmVpdCBiaW4sIHdlcgp3ZWlzcwogW0FiZW50ZXVlcjpIZWxpdW1dIHdhcyBqZXR6IGtvbW10Li4uIGJpbiB2b2xsIGFtIGF1ZiBkZW0gc2FuZCBzdXJmZW4uLi4gOz0oCiBbQWJlbnRldWVyOkhlbGl1bV0gMTk6MTY6MzYKIFtBYmVudGV1ZXI6SGVsaXVtXSBub2NoIG5pY2ggdG90PyAxOToxNzo1MgogW0FiZW50ZXVlcjpIZWxpdW1dIHNoaXQsIGVpbiB3YXNzZXItIGFlaCBTQU5ERkFMTCEhISAxOToxODoxMgogW0JlaWxlaWQ6UHJlc2lkaW9dIG9kZXIgc2FuZAoKIFtUb2Q6TGFyc10gTWFzc2VuIGFuIFNhbmQgaGFiZW4gZ2VyYWRlIEhlbGl1bSB1bWdlYnJhY2h0LiAxOToxODoxNQogW1RvZDpNYXNzZW4gYW4gU2FuZCBiZXJlaXRlbiBEaXIgbnVuIGVpbiBrdWVobGVzIEdyYWIuIDE5OjE4OjE1XQorClNvbCosIGdyaW5zZW5kICh3aWUgaW1tZXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXdiaWVzIGF1ZiBBYndlZ2VuIFRlaWwgMiAoU29sbXlyLCAgMy4gTWFpIDIwMDEsIDE5OjIyOjU0KToKIE5vY2ggc28gZWluIEZhbGwgOikKIEVsaXphYmV0aCB0ZWlsdCBEaXIgbWl0OiBzaW5kIGRpZSB6d2VyZ2Vud2FlY2h0ZXIgaW4gZGVyIHp3ZXJnZW5zdGFkdCBoYXJ0PwogRHUgZ3JpbnN0IEVsaXphYmV0aCBhdXMgZGVyIEZlcm5lIGFuLgogRHUgdGVpbHN0IEVsaXphYmV0aCBtaXQ6IFdpcnN0IER1IHdvaGwgbWVpbmUgRnJldW5kZSBpbiBSdWhlIGxhc3NlbiEgKkcqCk5hamEsCiBEdSB0ZWlsc3QgRWxpemFiZXRoIG1pdDogaWNoIGdsYXViIG5pY2h0LCBkYXNzIER1IGRpZSBzY2hvbiBzY2hhZmZzdCA6KQogRHUgdGVpbHN0IEVsaXphYmV0aCBtaXQ6IE1hY2ggZGllIFNTUCB1bnNpY2hlcgogRWxpemFiZXRoIHRlaWx0IERpciBtaXQ6ICpHKiBrYW5ucyBqYSBwcm9iaWVyZW4gKkcqICwpICpHKiBuYWphLi4gb2tva29rLiAsKQoKWmVpdCB2ZXJzdHJlaWNodC4uLgogW1RvZDpMYXJzXSBEaWUgdW5oZWltbGljaGUgSGFlbmdlYnJ1ZWNrZSBoYXQgZ2VyYWRlIEVsaXphYmV0aCB1bWdlYnJhY2h0LgogW1RvZDpMYXJzXSAxOToxNTo0MwogW1RvZDpEaWUgdW5oZWltbGljaGUgSGFlbmdlYnJ1ZWNrZV0gRGFzIEFlY2h6ZW4gZGVyIFBsYW5rZW4gaG9lcnQgc2ljaAogW1RvZDpEaWUgdW5oZWltbGljaGUgSGFlbmdlYnJ1ZWNrZV0gaGFlbWlzY2ggYW4uIDE5OjE1OjQzCiBbVG9kOkxhcnNdIERpZSB1bmhlaW1saWNoZSBIYWVuZ2VicnVlY2tlIGhhdCBnZXJhZGUgT3JiaXRhbCB1bWdlYnJhY2h0LgogW1RvZDpMYXJzXSAxOToxNjo1OAogW1RvZDpEaWUgdW5oZWltbGljaGUgSGFlbmdlYnJ1ZWNrZV0gRGFzIEFlY2h6ZW4gZGVyIFBsYW5rZW4gaG9lcnQgc2ljaAogW1RvZDpEaWUgdW5oZWltbGljaGUgSGFlbmdlYnJ1ZWNrZV0gaGFlbWlzY2ggYW4uIDE5OjE2OjU4CgpTb2wqLCBOci4yIChqZXR6dCB3YXJ0ZW4gd2lyIGF1ZiBTYXJrb24pLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFzIHBhc3NpZXJ0IHdlbm4gTExQJ2xlciBtdWVkZSBzaW5kIDopIChDaHVja3lsZWluLCAgMy4gTWFpIDIwMDEsIDE5OjIzOjUyKToKfiMhIHJuPVNvbG15ciBydD05ODg4NDk0MzUgcmc9c2NobWFycm4KfiMhIHRpZD05ODg4NDk0MzUKZGFua2Ugc29sbXlyIGpldHp0IGJpbiBpY2ggYmVmcmllZGlndAoKY2h1Y2t5bGVpbiwgc2ljaCBmcmV1ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERhcyBwYXNzaWVydCB3ZW5uIExMUCdsZXIgbXVlZGUgc2luZCA6KSAoSXNpLCAgMy4gTWFpIDIwMDEsIDE5OjI5OjI5KToKfiMhIHJuPUNodWNreWxlaW4gcnQ9OTg4OTEwNjMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4ODQ5NDM1ClVpIGlzc2VyIHNvIGd1dD8KR2xhdHQgbWFsIGF1c3Byb2JlaXJlbiwgYmVpIGdlbGdlZ2VuaGVpdApJc2kgKG1vdXNzZXdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1bmN1dCBkLWNoYXQgKE1hbmlhYywgIDMuIE1haSAyMDAxLCAyMTowMjowOCk6CltBbGxnZW1laW46VGhlbWlzdG9rXSBkYW5uIGhhdCBoaWxiZXJ0IGdlcmFkZSBlaW5lbiBBbnRpLUVyZGJlYmVuemF1YmVyCltBbGxnZW1laW46VGhlbWlzdG9rXSBnZXNwcm9jaGVuLS4uLi4uCltELWNoYXQ6QWxmZUBUdWJNdWRdIHdlbm4gZXIgZGllc2UgYXVzZ2FiZSBnZW1hY2h0IGhhdCwga2FubnN0IGR1IGplIGVpbgpbRC1jaGF0OkFsZmVAVHViTXVkXSByYWlzZV9lcnJvcigpIG1hY2hlbjsgZGFubiBoYXN0IGR1IGVpbmVuIHN0YWNrLXRyYWNlCltBbGxnZW1laW46TGlyYW5hXSBkYW5uIGJpbiBpY2ggZ2Vrb21tZW4gOykKW0QtY2hhdDpBbGZlQFR1Yk11ZF0gYWJlciB3ZW5uIGRhcyB2aWVsIGFyYmVpdCBtYWNodCwgbGFzcyBlcyBsaWViZXIuICBzbyBzZWhyCltELWNoYXQ6QWxmZUBUdWJNdWRdIHN0b2VydCBkYXMgYXVjaCBuaWNodCAuLi4KbWFuaWFjCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zODE5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgIDMuIE1haSAyMDAxLCAyMTo0MzozNCk6Cn4jISBybj1Nb250YW51cyBydD05ODg5MTg5NTIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKTnVyIHVtIG5pY2h0IHVudGVyIG5lbSBuZXVlbiBUb3BpYyBwb3N0ZW4genUgbXVlc3Nlbi4uLgpEaWUgV0FIUkhFSVQgdWViZXIgZGVuIEdyaWxsYWJlbmQuCgpEZWZpbml0aW9uIG9mIGFuIG91dGRvb3IgYmFyLWItcXVlLi4uaXQncyB0aGUgb25seSB0eXBlIG9mIGNvb2tpbmcgInJlYWwgbWVuIgp3aWxsIGRvLgoKV2hlbiBhIG1hbiB2b2x1bnRlZXJzIHRvIGRvIHN1Y2ggY29va2luZywgdGhlIGZvbGxvd2luZyBjaGFpbiBvZiBldmVudHMgaXMgcHV0CmludG8gbW90aW9uLgoKMSkgIFRoZSB3b21hbiBnb2VzIHRvIHRoZSBzdG9yZS4KCjIpICBUaGUgd29tYW4gZml4ZXMgdGhlIHNhbGFkLCB2ZWdldGFibGVzLCBhbmQgZGVzc2VydC4KCjMpICBUaGUgd29tYW4gcHJlcGFyZXMgdGhlIG1lYXQgZm9yIGNvb2tpbmcsIHBsYWNlcyBpdCBvbiBhIHRyYXkgYWxvbmcgd2l0aAp0aGUgbmVjZXNzYXJ5IGNvb2tpbmcgdXRlbnNpbHMsIGFuZCB0YWtlcyBpdCB0byB0aGUgbWFuLCB3aG8gaXMgbG91bmdpbmcKYmVzaWRlIHRoZSBncmlsbCwgZHJpbmtpbmcgYSBiZWVyLgoKNCkgIFRoZSBtYW4gcGxhY2VzIHRoZSBtZWF0IG9uIHRoZSBncmlsbC4KCjUpICBUaGUgd29tYW4gZ29lcyBpbnNpZGUgdG8gY2hlY2sgb24gdGhlIHZlZ2V0YWJsZXMgYW5kIHNldCB0aGUgdGFibGUuCgo2KSAgVGhlIHdvbWFuIGNvbWVzIG91dCB0byB0ZWxsIHRoZSBtYW4gdGhhdCB0aGUgbWVhdCBpcyBidXJuaW5nLgoKNykgIFRoZSBtYW4gdGFrZXMgdGhlIG1lYXQgb2ZmIHRoZSBncmlsbCBhbmQgaGFuZHMgaXQgdG8gdGhlIHdvbWFuLgoKOCkgIFRoZSB3b21hbiBwcmVwYXJlcyB0aGUgcGxhdGVzIGFuZCBicmluZ3MgdGhlbSB0byB0aGUgdGFibGUuCgo5KSAgQWZ0ZXIgZWF0aW5nLCB0aGUgd29tYW4gY2xlYXJzIHRoZSB0YWJsZSBhbmQgZG9lcyB0aGUgZGlzaGVzLgoKMTApICBUaGUgbWFuIGFza3MgdGhlIHdvbWFuIGhvdyBzaGUgZW5qb3llZCBoZXIgIm5pZ2h0IG9mZi4iCgpBbmQgdXBvbiBzZWVpbmcgaGVyIGFubm95ZWQgcmVhY3Rpb24sIGNvbmNsdWRlcyB0aGF0IHRoZXJlJ3MganVzdCBubyBwbGVhc2luZwpzb21lIHdvbWVuLgoKSG1tbSwgUm9uZGEgcGFzc3QgaXJnZW5kd2llIGhpZXIgZG9wcGVsdCByZWluPyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgU2FjaGVuIGdpYnRzLi4uIChWYXJsYXJpb24sICAzLiBNYWkgMjAwMSwgMjI6MjU6NDgpOgpSb3NhIGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBULU9ubGluZS4KRWluZ2Vsb2dndCBzZWl0OiBEb24sICAzLiBNYWkgMjAwMSwgMTk6NTg6MzIKVm9sbGVyIE5hbWU6IFJvc2EgdmVyc3VjaHQgbmljaHQgenUgc3RlcmJlbgpSYXNzZTogTWVuc2NoLCAgR2lsZGU6IENoYW9zLCAgR2VzY2hsZWNodDogd2VpYmxpY2gKQWx0ZXI6IDIzZCAyMTowNjoxOCwgICBTcGllbGVybGV2ZWw6IDM2IChTZWhlcmluKSwgICBHaWxkZW5sZXZlbDogMTEKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogdm9yIGRlbSAxMC4gTm92IDE5OTUKVmVyaGVpcmF0ZXQgbWl0OiBNYWplc3RpeApSb3NhIGlzdCBad2VpdHNwaWVsZXJpbi4KQmlzaGVyIGJlcmVpdHMgMTggbWFsIGdlc3RvcmJlbgpSb3NhIHRlaWx0IERpciBtaXQ6IHdvIGZpbmRlIGljaCBXdXFvdXI/ClJvc2EgdGVpbHQgRGlyIG1pdDogQmluIFd1cnN0Y2hhb3QKClZhcmwqLCBrYW5ucyBpbW1lcm5vY2ggbmV0IGZhc3Nlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktyYW5raGVpdGVuIC4uLiAoVmFuaW9uLCAgMy4gTWFpIDIwMDEsIDIzOjEzOjUzKToKTGlhcmEgdGFldHNjaGVsdCBQZXN0IGRlbiBLb3BmLgoKViogbWVpbnQ6IEtsaW5ndCBhbnN0ZWNrZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFydGlrZWwgU2FjaGVuIGdpYnRzLi4uIChDaHVja3lsZWluLCAgNC4gTWFpIDIwMDEsIDEzOjQ5OjE4KToKfiMhIHJuPVZhcmxhcmlvbiBydD05ODg5MjE1NDggcmc9c2NobWFycm4KfiMhIHRpZD05ODg5MjE1NDgKSGFsdCBzbyByaWNodGlnIENoYW90aXNjaCA6KQoKQ2h1Y2t5bGVpbiB3dW5kZXJ0IGRhcyBnYXIgbmljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGluIGVpZ2VuZXIgc2FjaGUgKEphbWVzb24sICA0LiBNYWkgMjAwMSwgMTQ6MjE6MTApOgp+IyEgcm49UWl0ZXNzIHJ0PTk4ODk3ODgxNiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk4ODkxNjQ2MgpoZXkgUWl0ZXNzLCBoYXN0IER1IEx1c3QsIGVpbiBWb2xvbnRhcmlhdCBiZWkgR3JpbW1ib3JuIHp1IG1hY2hlbj8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaW4gZWlnZW5lciBzYWNoZSAoR3JpbW1ib3JuLCAgNC4gTWFpIDIwMDEsIDE0OjMzOjQ1KToKfiMhIG9uPVFpdGVzcyBvdD05ODg5Nzg4MTYgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU1hbmlhYyBydD05ODg5MTY0NjIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05ODg5MTY0NjIKLi4uCgpEaWVzZXIgQXJ0aWtlbCBnZWhvZXJ0IHVudGVyICdSdWJyaWsgQU56ZWlnZW4nLgoKQml0dGUgdmVybGVnZW4uCgpRSSoqCgooQml0dGUgbGFlY2hlbG4gU2llIEpFVFpUISkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaW4gZWlnZW5lciBzYWNoZSAoR3JpbW1ib3JuLCAgNC4gTWFpIDIwMDEsIDE0OjM0OjA5KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODg5Nzk2MjUgcmc9c2NobWFycm4KfiMhIHRpZD05ODg5MTY0NjIKRHUgaXJyc3QuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXIgS2FzcGFyIChDaHVja3lsZWluLCAgNC4gTWFpIDIwMDEsIDE2OjEyOjIxKToKR3J1c3MgYW4gS2FzcGFyLCB3ZXIgc29sbHRlIHdhcyBzY2hyZWliZW4uCgpDaHVja3lsZWluLCBzaWNoIGltbWVyIHVtIGRpZSBTcGllbGVyIGt1ZW1tZXJuZC4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hbCB3aWVkZXIgd2FzIGZ1ZXIgQ2h1Y2t5KiwgQWJ0ZWlsdW5nIFNlbGJzdGdlc3ByYWVjaGUgOikgKFNvbG15ciwgIDUuIE1haSAyMDAxLCAwNzowMToyMSk6CiBIbW0sIG5peCBsb3MgaW0gSGF1c2UgJ3NjaG1hcnJuJz8gTXVzcyBkb2NoIG1vcmdlbiB3YXMgZnVlciBDaHVja3lsZWluCiBnZXNjaHJpZWJlbiBoYWJlbi4uLgoKIER1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBLYW5uIGRpZSBXZWx0IHNpY2ggbmljaHQgbmFjaCBtaXIgZHJlaGVuIHVuZAogRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGRpZSBMZXV0ZSB3YWNoIHNlaW4gbGFzc2VuLCB3ZW5uIGljaCB3aWxsLAogRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGRhc3Mgc2llIHdhY2ggc2luZD8KIFsuLi5dCiBEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogRGFzIGdsZWljaGUgZ2lsdCBhdWNoIGZ1ZXIgTGFlZGVuLAogRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IFBpenphZGllbnN0ZSwgbWVpbiBCZXR0IDopIHVuZCBub2NoIHNvCiBEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogZWluaWdlcyBhbmRlcmVzCiBbLi4uXQogRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IEZ1ZXIgZGllIFNvbm5lIGJlaXNwaWVsc3dlaXNlLi4ud2FydW0gc2NoZWludAogRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGRpZSBub2NoIG5pY2h0PyBNaXIgaXN0IGthbHQgOigKIFsuLi5dCiBbZGVua10KIGZ3ZXIgaWRsZXQgd28KIFN0cm9oYWxtICAgICAgIC0gIDA6IDg6NDAgLSBPYmVuIGluIFN0cm9oYWxtcyBFaWNoZQoKU29sKiBzZXVmenQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNYWwgd2llZGVyIHdhcyBmdWVyIENodWNreSosIEFidGVpbHVuZyBTZWxic3RnZXNwcmFlY2hlIDopIChDaHVja3lsZWluLCAgNS4gTWFpIDIwMDEsIDA3OjQ4OjM0KToKfiMhIHJuPVNvbG15ciBydD05ODkwMzg4ODEgcmc9c2NobWFycm4KfiMhIHRpZD05ODkwMzg4ODEKTWlzdCwgamV0enQgaGFiIGljaCBXaXR6IG5pY2ggdmVyc3RhbmRlbiA6KAoKQ2h1Y2t5bGVpbiwgc2NobHVjaHplbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hbCB3aWVkZXIgd2FzIGZ1ZXIgQ2h1Y2t5KiwgQWJ0ZWlsdW5nIFNlbGJzdGdlc3ByYWVjaGUgOikgKEJpZWxlZmVsZCwgIDUuIE1haSAyMDAxLCAwOTozMDoxOSk6Cn4jISBybj1DaHVja3lsZWluIHJ0PTk4OTA0MTcxNCByZz1zY2htYXJybgp+IyEgdGlkPTk4OTAzODg4MQpEYSB3YXIgd29obCBhdWNoIGtlaW5lci4uLgoKLUJpZWxlZmVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWFsIHdpZWRlciB3YXMgZnVlciBDaHVja3kqLCBBYnRlaWx1bmcgU2VsYnN0Z2VzcHJhZWNoZSA6KSAoQW5hY3Jpb24sICA1LiBNYWkgMjAwMSwgMDk6MzE6MDcpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTk4OTA0NzgxOSByZz1zY2htYXJybgp+IyEgdGlkPTk4OTAzODg4MQoKR3JpbW1ib3JuIHVlYmVybmVobWVuIHNpZS4gLi4uLiAKCkVyIGlzdCBqYSBxdWFzaSBhbiBPcnQgdW5kIFN0ZWxsZSA7LSkKCkFuYShjKSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1hbCB3aWVkZXIgd2FzIGZ1ZXIgQ2h1Y2t5KiwgQWJ0ZWlsdW5nIFNlbGJzdGdlc3ByYWVjaGUgOikgKEdyaW1tYm9ybiwgIDUuIE1haSAyMDAxLCAwOTo0Nzo0Nik6Cn4jISBybj1BbmFjcmlvbiBydD05ODkwNDc4Njcgcmc9c2NobWFycm4KfiMhIHRpZD05ODkwMzg4ODEKSG1tPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNYWwgd2llZGVyIHdhcyBmdWVyIENodWNreSosIEFidGVpbHVuZyBTZWxic3RnZXNwcmFlY2hlIDopIChTb2xteXIsICA1LiBNYWkgMjAwMSwgMTQ6NDE6MDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4OTA0ODg2NiByZz1zY2htYXJybgp+IyEgdGlkPTk4OTAzODg4MQpOZWluLCBhYmVyIG1pdCBkZXIgcGFzc2VuZGVuIE11c2lrIGltIEhpbnRlcmdydW5kIHVuZCBkZW0gcmljaHRpZ2VuIExpY2h0CmZhbmQgaWNoJ3MgaXJnZW5kd2llIHRyYXVyaWcgdW5kIGFlaCwgLi4gYmVtaXRsZWlkZW5zd2VydCA6KQoKU29sKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYnJpZWYgKFdhcmdvbiwgIDUuIE1haSAyMDAxLCAxNjoyODo1Nik6Cn4jISBvbj1Ccml4eGkgb3Q9OTg5MDcxMzg4IG9nPWFsbGdlbWVpbmVzCmgKcQpzYWZrbGEKc2ZkCmFzCmFzCmFzZgphc2ZkClEKcwpzY2hlaXNzZQpuZWluCmFhYWFhYWFoaApzY2hsYWZlIGVpbgphYWFhaGhoaGgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERhcyBwYXNzaWVydCB3ZW5uIExMUCdsZXIgbXVlZGUgc2luZCA6KSAoR3JpbW1hbiwgIDUuIE1haSAyMDAxLCAxNzoyNzowMik6Cn4jISBybj1Jc2kgcnQ9OTg4OTEwOTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg4ODQ5NDM1CkRhcyB3aWxsc3QgZHUgZGlyIG5pY2h0IHdpcmtsaWNoIGFudHVuLCBJc2ksIGdsYXViIG1pci4KCkdyaW1NYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgTmV1bGljaCBpbiBkZXIgVG9kZXNzZXF1ZW56Li4uIChWYXJsYXJpb24sICA2LiBNYWkgMjAwMSwgMDc6MTk6NDIpOgpbVG9kOl0gRUxCRVJFVCBWRVJTVUNIVEUsIE1JUiBaVSBFTlRLT01NRU4gLSBKRVRaVCBIQUJFIElDSCBXSUVERVIKW1RvZDpdIEVYVFJBLUFSQkVJVCBNSVQgSUhNIC4uLgpFbGJlcmV0IHdlaWx0IHdpZWRlciB1bnRlciBkZW4gTGViZW5kZW4uCkVsYmVyZXQgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTYXJrb24gaXN0IG5vY2ggenUgaGFiZW4gKEdyaW1tYm9ybiwgIDYuIE1haSAyMDAxLCAxMjowNDowMik6Cn4jISBvbj1Tb2xteXIgb3Q9OTg5MTI3NDY3IG9nPWFsbGdlbWVpbmVzCn4jISBybj1FbGl6YWJldGggcnQ9OTg5MDk1Nzc4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTg5MDk1Nzc4ClNhZyBtYWwgRWxpemFiZXRoLCBlcyB0dXQgbWlyIGpldHp0IHNjaG9uIGxlaWQsIERpciBkaWUgRnJhZ2UgenUgc3RlbGxlbiwKZGEgRHUgd2FocnNjaGVpbmxpY2ggd2llZGVyIGRlbmtzdCwgd2llIGZpZXMgdW5kIGdlbWVpbiBpY2ggYmluLCBBQkVSIFNBRwpNQUwKV0FSVU0gTUFDSFNUIERVIE1JUiBFSUdFTlRMSUNIIEFMTEVTIE5BQ0g/IDo9KSBJY2ggbWVpbiwgZXJzdCBzY2hyZWlzdApEdSBsYXV0ZXIgRHJvbGxpLCB3ZW5uIGljaCBEcm9sbGkgc2NocmVpZSAodW5kIGRhcyBkYXJmIG51ciBpY2ggLT4gc3ByaWNoCkdld29laG51bmdzcmVjaHQpIHVuZCBkYW5uIHNjaHJlaWJzdCBEdSBub2NoIEtvbnRha3RhbnplaWdlbiwgLi4uIEljaAptdXNzIGRvY2ggc2Nob24gc2FnZW4sIHdlbm4gaWNoIGhpZXIgdm9tIEZlbGQgdHJldGUsIGRhbm4gc3VjaCBpY2ggbWlyIGVpbmVuCm5ldHRlbiwgbGllYmVuIE5hY2hmb2xnZXJJTiBhdXMgdW5kIHdlaXNlIHNpZSBpbiBkaWUgS3Vuc3QgZGVzIE5lcnZlbnMKZWluIDopCgpTb2wsIE1JVCBERVIgQklUVEUgQVVGIERJRSA6KSBaVSBBQ0hURU4gVU5EIERJRSAoU0VMQlNUKUlST05JRSBNQUwgWlUKVkVSU1RFSE4sIE5VUiBFSU4gRUlOWklHRVMgTUFMIE5VUiAhISEgQklUVEUgISEhIDo9KSkpKSAoYmluIHNjaG9uIHdpZWRlcgpicmVpdCwgbWVpbiBkYXMgYWJlciBzb25zdCBlcm5zdCAtPiA6KSAuLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNhcmtvbiBpc3Qgbm9jaCB6dSBoYWJlbiAoR3JpbW1ib3JuLCAgNi4gTWFpIDIwMDEsIDEyOjA0OjA0KToKfiMhIG9uPVNvbG15ciBvdD05ODkxMjc1ODcgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVNvbG15ciBydD05ODkxMjc0Njcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05ODkwOTU3NzgKV2VubiBlciBrZWluZSBFaW53YWVuZGUgaGF0LCBlcnN0ZWxsIGljaCB1ZWJyaWdlbmRzIGVpbmUgbGllYmUga2xlaW5lCk1lbnNjaGVuZnJhdSAobWl0IGVpbiBwYWFyIFdhcnplbiwgbnVyIGVpbmVtIEF1Z2UgaW4gZGVyIE1pdHRlLCBQZmVyZGUtCmh1ZmVuLCBTdGFjaGVsIGF1ZiBkZW0gUnVlY2tlbiB1bmQgSGFlbmdlYWVoPyA6KS4uLnVuZCBuZWluLCBkYXMgaXN0IGtlaW4KVGV1ZmVsKSwgZGllIGVyIGRhbm4gaGVpcmF0ZW4gdW5kIGJlc3RlaWdlbiBrYW5uIHNvIG9mdCBlciB3aWxsLiBTb2wqIGlzdApqYSBlaCBpbW1lciBvbmxpbmUgOikKClNvbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNhcmtvbiBpc3Qgbm9jaCB6dSBoYWJlbiAoR3JpbW1ib3JuLCAgNi4gTWFpIDIwMDEsIDEyOjA0OjA1KToKfiMhIG9uPUFuYWNyaW9uIG90PTk4OTEyNzY0NSBvZz1hbGxnZW1laW5lcwp+IyEgcm49U29sbXlyIHJ0PTk4OTEyNzU4NyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk4OTA5NTc3OApMRCAoYykgTFVHCgpBbmFjKiAtIGZhZWxsdCBuaXggbWVociBlaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNhcmtvbiBpc3Qgbm9jaCB6dSBoYWJlbiAoR3JpbW1ib3JuLCAgNi4gTWFpIDIwMDEsIDEyOjA0OjA2KToKfiMhIG9uPVNvbG15ciBvdD05ODkxMjc2NTcgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVNvbG15ciBydD05ODkxMjc1ODcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05ODkwOTU3NzgKWnUgSGlsZmUgYmluIGljaCBicmVpdCwgaWNoIGdlaCBzY2hsYWZlbiA6KSBBYmVyIEVsaXphYmV0aCwgd2VyZCcgd2lyay0KbGljaCBtYWwgZWluIHdlbmlnIGtyZWF0aXZlciwgc28gaXN0IGRhcyBudXIgenVtIGxhZWNoZWxuLCBuaWNodCBtYWwgenVtClphZWhuZSB6ZWlnZW4gOikKClNvbCosIG1hbiBiZW1lcmtlIGJpdHRlIHdpZWRlciBkaWUgOikgdW5kIGRpZSBJcm9uaWUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNhcmtvbiBpc3Qgbm9jaCB6dSBoYWJlbiAoR3JpbW1ib3JuLCAgNi4gTWFpIDIwMDEsIDEyOjA0OjA3KToKfiMhIG9uPVNvbG15ciBvdD05ODkxMjc3NTMgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVNvbG15ciBydD05ODkxMjc2NTcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05ODkwOTU3NzgKVW5kIHdlciBiaXMgaGllcmhpbiBnZWxlc2VuIGhhdCwgLi4uIFNhcmtvbiBzdWNodCBpbW1lciBub2NoIG5lIEZyYXUgKkcqClVuZCB3ZW5uIER1IGRhIGJpc3QsIHNwcmljaCBtaWNoIG1hbCBhbiwgaWNoIGtvZW5udGUgZGEgdmllbGxlaWNodCBtYWwgd2FzCm1pdCBQX0dFTkRFUiBiZWkgSGlzYXN1bCBkcmVoZW4gOikKClNvbCosIGVudGd1ZWx0aWcgZmVydGlnLi4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLb250YWt0YW56ZWlnZW4gKEdyaW1tYm9ybiwgIDYuIE1haSAyMDAxLCAxMjowNDowOCk6Cn4jISBvbj1DaHVja3lsZWluIG90PTk4OTEyODcxNyBvZz1hbGxnZW1laW5lcwpBcHJvcG8gS29ua2FrdGFuemVpZ2VuLCB3ZWlzcyBqZW1hbmQgd2FydW0gV293YmFnZ2VyIG5pY2h0IG1laHIga29tbXQ/CgpDaHVjayoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFNhcmtvbiBpc3Qgbm9jaCB6dSBoYWJlbiAoQXBzdSwgIDYuIE1haSAyMDAxLCAxMjowOToyNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTg5MTQzNDQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5MDk1Nzc4CkdpYmJldCBpbSBFcm90aWstVmVyc2FuZC4gU29nYXIgYXVmYmxhc2JhciB1bmQgYWJ3YXNjaGJhciB1bmQga3JpZWd0IG5pZQpNaWdyYWVuZS4gCgpBcHN1LCBjb3VsZCBub3QgcmVzaXN0IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGFkcmVpYyAoRWxlbmRpbCwgIDYuIE1haSAyMDAxLCAxNzozNjo0NSk6Ck5ldWxpY2ggaW4gZGVyIEFHOgpQYWRyZWljIGtyYXR6dCBzaWNoIGF1ZiBEZW50aXMgU2NodWx0ZXIgaGludGVyIGRlbSBPaHIuCkRpZSBNYXVzIFBhZHJlaWMgYXVmIERlbnRpcyBTY2h1bHRlciB6d2lua2VydCBEaXIgenUuClBhZHJlaWMga25hYmJlcnQgRGVudGkgc2FuZnQgYW0gT2hyLiBFciBtdXNzIGt1cnogbGFjaGVuLiBPZmZlbnNpY2h0bGljaCBoYXQKZXMgZ2VraXR6ZWx0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaXMga2xhIChHcmVsbGdlbiwgIDYuIE1haSAyMDAxLCAxODo0MjozNyk6CltUZWFtIE1ISzpdIFZhcmRpb24gc3RhcnRldCBkZW4gQW5ncmlmZi4gCltUZWFtIE1ISzpUaHVmaGlyXSBzY2h1c3NzClZhcmRpb24gbGFlc3N0IGVpbmUga2xlaW5lIEt1Z2VsIGF1cyBGZXVlciBlbnRzdGVoZW4uClZhcmRpb24gc2NobGV1ZGVydCBkaWUgS3VnZWwgaW4gS2hvJ25pZ2hzIFJpY2h0dW5nLgpLaG8nbmlnaCBzYWd0OiBWYXJkaW9uLCB3b2hpbiBoYXN0IER1IGRlbm4gRGVpbmUgTVBzIHZlcnNjaGxldWRlcnQ/IEpldHp0CktobyduaWdoIHNhZ3Q6IGtvZW5udGVzdCBEdSBzaWUgYnJhdWNoZW4sIHdhcz8KICBWYXJkaW9ucyBGZXVlcmJhbGwgdmVyYnJlbm50IEtobyduaWdoIGZhc3QgenUgQXNjaGUuCktobyduaWdoIHNpbmt0IHRvZWRsaWNoIGdldHJvZmZlbiB6dSBCb2Rlbi4KW01vZXJkZXI6R2Vpc3QgS2hvJ25pZ2hzXSBWYXJkaW9uLCBEdSBNb25zdGVyc2NoYWVuZGVyIQoKSG0sIGRpZSBNUHMgYnJhdWNodCBlciBkYW5uIHdvaGwgZG9jaCBuaWNodCBtZWhyIDopCgpHcmVsbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhcnRpa2VsIFNhY2hlbiBnaWJ0cy4uLiAoQW5hdG9sLCAgNi4gTWFpIDIwMDEsIDIzOjA3OjE2KToKfiMhIHJuPVZhcmxhcmlvbiBydD05ODg5MjE1NDggcmc9c2NobWFycm4KfiMhIHRpZD05ODg5MjE1NDgKcS5lLmQuIF06Xj4KCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzIHdvbGx0ZSB1bnMgZGllc2VyIFBvc3RrYXJ0ZW5zY2hyZWliZXIgZGFtaXQgc2FnZW4/IC4uLiAoU29sbXlyLCAgNy4gTWFpIDIwMDEsIDA4OjQ2OjM1KToKIE9kZXIgd29sbHRlIGVyIGRvY2ggbnVyIGluIGRpZSBSdWJyaWsgJ1NjaG1hcnJuJz8gOikgSGllciBlaW5tYWwgR2UtCiBzY2hpY2h0ZW4sIGF1cyBtZWluZW0gSW52ZW50YXIuLi4KIFtpXQogWy4uLl0KIFtFaW5lIFBvc3RrYXJ0ZSB2b24gU2NobG9zcyBDYW1lbG90Ll0KIFsuLi5dCgogVW5kIGRhcyBUZWlsIHNpZWh0IHNvIGF1cyA6KQogCiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKIHwgICAgICAgICAgICAgKysrKysrKysrKyAgICAgICAgICAgICAgICsrKysrKysrKysgfAogfCAgICAgICAgICAgICsgICAgICAgICt8ICAgICAgICAgICAgICArICAgICAgICArfCB8CiB8ICAgICAgICAgICArICAgICAgICArLysrKysrKysrKysrKysrKyAgICAgICAgKyB8IHwKIHwgICAgICAgICAgKysrKysrKysrKyArLS0tLS0tLS0tLS0tLSsrKysrKysrKysgIHwgfAogfCAgICAgICAgICB8ICB8LyB8ICBJIHxbXSBbXSBbXSBbXSBbfCAgfC8gfCAgfCAgfCB8CiB8ICAgICAgICAgIHwgICsgICsgIHwgfCAgICAgICAgICAgICB8ICAvICArICB8ICB8IHwKIHwgICAgICAgICAgfCArICAvfCAgfCB8W10gW10gW10gW10gW3wgLyAgK3wgIHwgIHwgfAogfCAgICAgICAgICB8KyAgLyB8ICB8IHwgICstLS0tLS0tLSsgfC8gICsgfCAgfCAgfCB8CiB8ICAgICsrKysrKysrKysgIHwgIHwgfC0vICAgICArKysrKysrKysrICB8ICB8ICB8IHwKIHwgICArICAgICAgICArfCAgfCAgfCB8LyAgICAgKyAgICAgICAgK3wgIHwgIHwgICsgfAogfCAgKyAgICAgICAgKy8tLS0tLS0tLS0tLS0tLSsgICAgICAgICsgfCAgfCAgfCAvICB8CiB8ICsrKysrKysrKysgKysrKysrKysrKysrKysrKysrKysrKysrICB8ICB8ICB8LyAgIHwKIHwgfFtdIFtdIFtdfCB8W10gW10gW10gW10gW3xbXSBbXSBbXXwgIHwgICstLSsgICAgfAogfCB8ICAgICAgICB8IHwgICAgICAgICAgICAgfCAgICAgICAgfCAgfCAvICAgICAgICB8CiB8IHxbXSBbXSBbXXwgfFtdIFtdIFtdIFtdIFt8W10gW10gW118ICB8LyAgICAgICAgIHwKIHwgfCAgICAgICAgfCB8ICAgICAgICAgICAgIHwgICAgICAgIHwgIHwgICAgICAgICAgfAogfCB8W10gW10gW118L3xbXSBbXSstLStbXSBbfFtdIFtdIFtdfCAgfCAgICAgICAgICB8CiB8IHwgICAgICAgIHwvfCAgICAgfC8gfCAgICB8ICAgICAgICB8ICArICAgICAgICAgIHwKIHwgfFtdIFtdIFtdfCArLS0tLS0rICArLS0tLXxbXSBbXSBbXXwgLyAgICAgICAgICAgfAogfCB8ICAgICAgICB8LyAgICAgLyAgLyAgICAgfCAgICAgICAgfC8gICAgICAgICAgICB8CiB8ICstLS0tLS0tLSsgICAgIC8gIC8gICAgICArLS0tLS0tLS0rICAgICAgICAgICAgIHwKICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwogSGllciBoYXN0IGR1IHdhcyBmdWVyIFNjaG1hcnJuCiBEaWVzZW4gR3J1c3MgaGF0IERpciBIRVJFVElLICh3aXIgZXJpbm5lcm4gdW5zLi4uKSB6dWdlc2FuZHQuCgpBbHNvIG1hbCBlaHJsaWNoLCBkYXMgVGVpbCBzaWVodCBlaWdlbnRsaWNoIGdhciBuaWNodCB3aWUgZWluIFNjaGxvc3MgYXVzLgpNaWNoIGVyaW5uZXJ0IGRhcyBlaGVyIGFuIGVpbiBadWNodGhhdXMsIGVpbiBHZWZhZW5nbmlzLCBlaW5lIE5lcnZlbi0Ka2xpbmlrLCBuZXIgUG9saXplaXN0YXRpb24sIG5lbSBwcnVua3ZvbGxlbiBQbGF0dGVuYmF1IE1hcmtlIEREUiwgJ25lciBnZS0KdGFybnRlbiBSYWtldGVuYmFzaXMgKEFsbCB5b3VyIEJhc2UgYXJlIGJlbG9uZyB0byB1cyEpIG9kZXIgYXVjaCAnbmVtIGFsdGVuCk5hemliYXUgLi4uIGFiZXIgd2VyIHp1bSBHZWllciBpc3QgZGFyYXVmIGdla29tbWVuLCBkYXMgZnVlciBTY2hsb3NzIENhLQptZWxvdCB6dSBoYWx0ZW4/IDopCgpTb2wqLCBpc3QgSGVyZXRpayBqZXR6dCBiZWZyaWVkaWd0LCBoYXQgQ2h1Y2t5bGVpbiB3ZW5pZ3N0ZW5zIGdlZ3JpbnN0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWJlbmRzIGltIE1HIChMaW5mbGFzLCAgNy4gTWFpIDIwMDEsIDIzOjEyOjA3KToKW0FsbGdlbWVpbjpEcm9sbGldIG1hbmEgbWFuYQpbQWxsZ2VtZWluOkVvbGFodXNdIHBpcGlwaWRpcGkKW0FsbGdlbWVpbjpFbGNpZF0gbWFuYW1hbmEKW0FsbGdlbWVpbjpFb2xhaHVzXSBwaXBpcGlkaXBpCltBbGxnZW1laW46RHJvbGxpXSBuaXggcGlwcGkgOikKW0FsbGdlbWVpbjpFbGNpZF0gbWFuYW1hbmEKW0FsbGdlbWVpbjpTdWJsaW1lXSBNQU5BTUFOQSA6KQpbQWxsZ2VtZWluOkJpcmR5XSBtYW5hIG1hbmEKW0FsbGdlbWVpbjpEcm9sbGldIG1hbmFtYW5hCltBbGxnZW1laW46RWxjaWRdIG1hbmFtYW5hPwoKTGluZmxhcyBoYXQgZGVtIG5pY2h0cyBtZWhyIGhpbnp1enVmdWVnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zODIwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChOaXJkYXZvLCAgOC4gTWFpIDIwMDEsIDE3OjI1OjIxKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4ODkxOTAxNCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAogIEhhbGxvLCBtaXRlaW5hbmRlciEKICBOYWNoIGVpbiBwYWFyIHppZW1saWNoIGhla3Rpc2NoZW4gV29jaGVuLCBpbiBkZW5lbiBpY2gga2VpbmUgWmVpdCB6dW0KTXVkZGVuIGhhdHRlLCBtdXNzIGljaCBmZXN0c3RlbGxlbiwgZGFzcyBkaWVzZXIgVGhyZWFkIGphIChmYXN0KSB0b3QgaXN0ISBTbwprb21tZW4gd2lyIGphIG5pZSBhdWYgcmVeMTAwMDAhIEJlaSBtaXIgbGllZ2VuIGRvY2ggc2Nob3BuIDQyClVlYmVycmFzY2h1bmdzZWllciwgZGllIG5vY2ggZ2VnZXNzZW4gd2VyZGVuIHdvbGxlbiEgCgogIE5pcmRhdm8sIGZyZXV0IHNpY2ggYXVmICduZSBQYXJ0eSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM4MjE6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKExpbmZsYXMsICA4LiBNYWkgMjAwMSwgMTc6MjY6MTcpOgp+IyEgcm49TmlyZGF2byBydD05ODkzMzU1MjEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRHUgYmlzdCBlaW5mYWNoIG5pY2h0IG1laHIgdXAtdG8tZGF0ZSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM4MjI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE5pcmRhdm8sICA4LiBNYWkgMjAwMSwgMTc6Mjg6MTcpOgp+IyEgcm49TGluZmxhcyBydD05ODkzMzU1Nzcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKIEphamEsIGljaCBoYWJzIGphIHNoY29uIG1pdGJla29tbWVuIChEYW5rZSBhbGxlbiEpLiBJY2ggemllaCBhdWNoIG5hY2gKTWVnYXNjaG1hcnJuIHVtIQogIE5pcmRhdm8sIGJlbGVocnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zODIzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgIDguIE1haSAyMDAxLCAxODoxOToyMyk6Cn4jISBybj1OaXJkYXZvIHJ0PTk4OTMzNTY5NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApBY2gsIFVtemllaGVuIG11c3MgbmljaHQgc2Vpbi4gRGllIFJ1YnJpayBoaWVyIGlzdCBncmFkIHNvIHNjaG9lbiBsZWVyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40Mjg2OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChCaWVsZWZlbGQsICA4LiBNYWkgMjAwMSwgMTg6MjA6MTUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4OTMzODc3MSByZz1tZWdhc2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGFubiBibGVpYnQgd2VuaWdzdGVucyBiZWltIHJpY2h0aWdlbiBSZWggOi0pCgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40Mjg3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChHcmltbWJvcm4sICA4LiBNYWkgMjAwMSwgMTg6MjI6MjcpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTk4OTMzODgxNSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApTaWUga2lsbGVuIHVucywgc2llIGtpbGxlbiB1bnMsIHNpZSBraWxsZW4gdW5zLi4uCgpHZEEgKGFlaCwgdW5zID0gZXVjaC4gSWNoIE1hZ2llci4gSWNoIG5peCBraWxsYmFyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDI4ODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTW9udGFudXMsICA4LiBNYWkgMjAwMSwgMTg6MjM6MDMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4OTMzODk0NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApBY2ggd28uIERhIGdpYnRzIGVpbiBndXRlcyBSZXplcHQgZ2VnZW46IGVpbmZhY2ggYXVmIGRlciBhbmRlcmVuIFNlaXRlIGRlcwpBdGxhbnRpayBibGVpYmVuLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQyODk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYm9ybiwgIDguIE1haSAyMDAxLCAxODoyNDoyMSk6Cn4jISBybj1Nb250YW51cyBydD05ODkzMzg5ODMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKIk1pdCA4MCBLbGlja3MgdW0gZGllIFdlbHQiIC0gZXR3YSAzMCBLbGlja3MsIHVuZCBzaWUgaGFiZW4gRGljaC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MjkwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgIDguIE1haSAyMDAxLCAxODoyNjowMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTg5MzM5MDYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkhtbW1tLiBEYW5uIG11c3MgaWNoIGhhbHQgZGFubiBtZWluZW4gQ2hhcm1lIHJhdXNob2xlbiwgb2RlciBBbGluZSB6dSBIaWxmZQpydWZlbi4gOy0pCihvYiB3aXIgaGllciBzY2huZWxsZXIgYXVmIGRpZSA0MzAwIGtvbW1lbiBhbHMgaW4gZGVyIGZhbHNjaGVuIHVicmlrPykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQyOTE6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYm9ybiwgIDguIE1haSAyMDAxLCAxODoyNzowMSk6Cn4jISBybj1Nb250YW51cyBydD05ODkzMzkxNjIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKUnVmIGxpZWJlciBBbGluZSB6dSBIaWxmZSwgZGFzIGlzdCB2aWVsdmVyc3ByZWNoZW5kZXIuLi4KCkdkQSAtIGdlZm9ya3RlIHRocmVhZHMgc2luZCBhdWNoIG5ldHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQyOTI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1vbnRhbnVzLCAgOC4gTWFpIDIwMDEsIDE4OjI3OjI5KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODkzMzkyMjEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKYmVzb25kZXJzIHdlbm4gQW5hdG9sIGltIGZhbHNjaGVuIFRocmVhZCBSZWhlIHZlcnNjaGVua3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MjkzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChHcmltbWJvcm4sICA4LiBNYWkgMjAwMSwgMTg6Mzc6MzQpOgp+IyEgcm49TW9udGFudXMgcnQ9OTg5MzM5MjQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkFjaCB3ZWlzc3QgRHUsIGVzIGdpYnQgaGllciBzb3ZpZWxlIFJlaGUsIGRhcyBmYWVsbHQgZG9jaCBrYXVtIGF1Zi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40Mjk0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgIDguIE1haSAyMDAxLCAxODozODo0NSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTg5MzM5ODU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkFiZXIgZXMgZ2lidCBudXIgZWluIEJhbWJpISA7LSkKSW1tZXJoaW4gc2luZCB3aXIgamV0enQgd2llZGVyIDIgUmVoZSB2b3IgQW5hdG9sIHVuZCBIdW1uaS4KRGFzIGVyaW5uZXJ0IG1pY2ggYW4gZGllc2UgcGFyYWxsZWxhYmZhaHJ0ZW4gaW0gU2tpbGF1aWZlbiwgb2RlciBkaWUKQmlhdGhsb25zdGFmZmVsbi4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40Mjk1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQaXRmYWxsLCAgOC4gTWFpIDIwMDEsIDE4OjM5OjE5KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4OTMzOTkyNSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAptdWhoaGhoaGhoaGhoaGhoCgpwaXQqIC1rdWVoZXdlcmZlbmQgKGMpIGlzaS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQyOTU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYm9ybiwgIDguIE1haSAyMDAxLCAxODozOTozMyk6Cn4jISBybj1Nb250YW51cyBydD05ODkzMzk5MjUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSG1tPyBJY2ggZGFjaHRlIGJlaW0gQWJmYWhydHNzY2hpbGF1ZiBtdWVzc3RlIG1hbiBpbW1lciBkaWUgU2NoaWVyIHBhcmFsbGVsCmhhbHRlbj8KCkdkQSAtIGF1cyBLb2Vsbiwgb2huZSBXaW50ZXJzcG9ydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDI5NjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTW9udGFudXMsICA4LiBNYWkgMjAwMSwgMTg6NDA6MzIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4OTMzOTk3MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApkaWUgbWFjaGVuIGRhIG1hbmNobWFsIHNvIG5ldHRlIGV2ZW50cywgd28gendlaSBMZXV0ZSBnZWdlbmVpbmFuZGVyCmdsZWljaHplaXRpZyBmYWhyZW4gbXVlc3Nlbi4gV2VyIHp1ZXJzdCBpbSBUYWwgaXN0LCBoYXQgZ2V3b25uZW4uIG9kZXIgd2VubgpkZXIgYW5kZXJlIHN0dWVyemVsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQyOTc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYm9ybiwgIDguIE1haSAyMDAxLCAxODo0MToxNik6Cn4jISBybj1Nb250YW51cyBydD05ODkzNDAwMzIgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSG9lcnQgc2ljaCBjb29sIGFuLiBXYXMgZnVlciBXYWZmZW4gc2luZCBlcmxhdWJ0PwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40Mjk4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQaXRmYWxsLCAgOC4gTWFpIDIwMDEsIDE4OjQxOjI0KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODkzNDAwNzYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKYWxsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDI5OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTW9udGFudXMsICA4LiBNYWkgMjAwMSwgMTg6NDE6NTQpOgp+IyEgcm49UGl0ZmFsbCBydD05ODkzNDAwODQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKaWNoIGdsYXViIFphcmRveiBoYXQgaGllciBzb3dhcyBtYWwgZ2Vwcm9nZ3QsIGRhcyBkYW5uIGFiZXIgUm9kZWxiYWhuIGdlbmFubnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MzA0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgIDguIE1haSAyMDAxLCAxODo0Nzo0NCk6Cn4jISBvbj1Nb250YW51cyBvdD05ODkzNDA0NTYgb2c9bWVnYXNjaG1hcnJuCn4jISBybj1IdW1uaSBydD05ODkzNDAzOTQgcmc9bWVnYXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkRpZSBzY2htYXJyZW5kZSBGcm9udCBzY2htYXJybnQgbnVyIGltIHNjaG1hcnJuLVRocmVhZCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQzMDU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEVsYmVyZXQsICA4LiBNYWkgMjAwMSwgMTg6NDg6MTApOgp+IyEgcm49TW9udGFudXMgcnQ9OTg5MzQwNDY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmhvZXIgYXVmIGRhbWl0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MzA2OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgIDguIE1haSAyMDAxLCAxODo0OToxNik6Cn4jISBybj1FbGJlcmV0IHJ0PTk4OTM0MDQ5MCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApNdXV1dXV1aC4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gbGV0enRlcyBNYWwgOikgKFNvbG15ciwgIDguIE1haSAyMDAxLCAyMDozNToxMCk6CiBJbiBadWt1bmZ0IHdlcmQgaWNoIGRhcyBsYXNzZW4sIGFiZXIgZGllIFRpZ2VyQWt0aW9uIHNjaHJlaXQgbmFjaAogVmVyZ2VsdHVuZy4uLgoKIE5ldWxpY2ggaW4gbWVpbmVtIFBvc3RmYWNoOgogMzg6ICggICBYWFggOiksICA4LiBNYWkpIHNlaW4gbGFzc2VuCiAKIEFic2VuZGVyOiBYWFgKIEFuOiBTb2xteXIKIERhdHVtOiBEaWUsICA4LiBNYWkgMjAwMSwgMTg6NDY6NDgKIFRpdGVsOiBzZWluIGxhc3NlbgogS29lbm50ZXN0IGR1IGVzIHdvaGwgdW50ZXJsYXNzZW4sIGlyZ2VuZHdlbGNoZSBtZXNzYWdlcyBvZGVyIHNvbnN0aWdlcwogaW4gZGllIG1wYSB6dSBwYXN0ZW4gPwogaWNoIHdhcmUgZGlyIHNlaHIgZGFua2Jhci4KIFsuXQoKV2lyZCBnZW1hY2h0IDopCiwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaW4gbGV0enRlcyBNYWwgOikgKFNvbG15ciwgIDguIE1haSAyMDAxLCAyMDozNTozNik6Cn4jISBybj1Tb2xteXIgcnQ9OTg5MzQ2OTEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5MzQ2OTEwCkRhcyBnaWx0IG5hdHVlcmxpY2ggbnVyIGZ1ZXIgZGllIGVpbmUgUGVyc29uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuYWNodHMgaW0gbXVkLi4uIChTdHJvaGFsbSwgIDkuIE1haSAyMDAxLCAwMzowNTo0NCk6CltUb2Q6TGFyc10gRWluZSB2ZXJ3aXJyZW5kZSBCZWRpZW51bmdzYW5sZWl0dW5nIGhhdCBncmFkZSBab29rIHVtZ2VicmFjaHQuCkZhbnRhZ2hpcm8gc2FndDogem9vay4uLiBnZWh0IGRvY2ggZ2FueiBsZWljaHQuLi4KRGVpbiBXaWxsZSBsYWVzc3QgbmFjaC4KRHUga29uemVudHJpZXJzdCBEZWluZW4gV2lsbGVuIGF1ZiBEZWluZW4gU2NodXR6LgpMUDogMjEwICgwKSBNUDogMTc3ICgtOCkKRGVpbiBaYXViZXJzdGFiIHVudGVyc3R1ZXR6dCBEaWNoIGJlaSBkZW0gU3BydWNoLgpMUDogMjEwICgwKSBNUDogMTg0ICg3KQpGb29iYXIgZ3JpbnN0Lgpab29rIGZhZWxsdCB0b3QgenUgQm9kZW4uCltUb2Q6TGFyc10gWm9vayBoYXQgZ2VyYWRlIFpvb2sgdW1nZWJyYWNodC4KRmFudGFnaGlybyBzYWd0OiB4Y2FsbCBmb29iYXItPmRpZSgpCkZhbnRhZ2hpcm8gc2FndDogc28gZWluZmFjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd3d3Lm1zbGludXgub3JnIChDYXR3ZWF6bGUsICA5LiBNYWkgMjAwMSwgMDg6NTY6MTkpOgoKQWFoLCBlbmRsaWNoLCBkaWUgcGVyZmVrdGUgVmVyYmluZHVuZy4KRW5kbGljaCBnaWJ0cyBrZWluZW4gR3J1bmQgbWVociBmdWVyIEJldHJpZWJzc3lzdGVtc2dsYXViZW5za3JpZWdlIHp3aXNjaGVuClckbmRvd3MgdW5kIExpbnV4LgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmdzdCBpbSBNRz8gKENyb2Z0LCAgOS4gTWFpIDIwMDEsIDEyOjIzOjU3KToKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KT3JrdG9ldGVyIHJ1ZnQ6IE9SS1RPRVRFTk9SS1RPRVRFTk9SS1RPRVRFTk9SS1RPRVRFTk9SS1RPRVRFTk9SS1RPRVRFTgoKU292aWVsZSBPcmtzIGhhdHRlbiB3aXIgZG9jaCBoaWVyIG5pY2h0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW5nc3QgaW0gTUc/IChNb3Jnb3RoLCAgOS4gTWFpIDIwMDEsIDEyOjI0OjU1KToKfiMhIHJuPUNyb2Z0IHJ0PTk4OTQwMzgzNyByZz1zY2htYXJybgp+IyEgdGlkPTk4OTQwMzgzNwp2b3IgYWxsZW0gaXNzZXIgYXVjaCBub2NoIGVpbiBmZWlnbGluZy4gZGVyIGhhdCBzaWNoIG5vY2ggbmllIHp1bSBrbG9wcGVuIG5hY2gKb3JraGF1c2VuIGdldHJhdXQgOy0pCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbmdzdCBpbSBNRz8gKE5vbm5lLCAgOS4gTWFpIDIwMDEsIDEyOjI2OjEzKToKfiMhIHJuPU1vcmdvdGggcnQ9OTg5NDAzODk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5NDAzODM3CkVyIG1laW50IGRvY2ggZGllIGltIE9ya2xhZ2VyLiBEaWUgaW4gT3JraGF1c2VuIHNpbmQgZG9jaCBudXIgd2FzIGZ1ZXIgSExQIChjOwoKTm9ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBbmdzdCBpbSBNRz8gKEFuYXRvbCwgIDkuIE1haSAyMDAxLCAxMzowMDoxOCk6Cn4jISBybj1Ob25uZSBydD05ODk0MDM5NzMgcmc9c2NobWFycm4KfiMhIHRpZD05ODk0MDM4MzcKRXIgdHJhdXQgc2ljaCBzY2hvbiBpbnMgT3JrbGFnZXI/IEljaCBkYWNodGUgaW1tZXIsIGVyIHZlcnN1Y2h0IHNpY2gKLSB2ZXJnZWJlbnMgbmF0dWVybGljaCAtIGFuIGRlciBMaWNodHVuZyBub2VyZGxpY2ggdm9uIERyYWNoZW5ob3J0Li4uIDspCgpBbmF0b2wgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFuZ3N0IGltIE1HPyAoTW9yZ290aCwgIDkuIE1haSAyMDAxLCAxMzowMToxNCk6Cn4jISBybj1BbmF0b2wgcnQ9OTg5NDA2MDE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5NDAzODM3CkhleSwgZGEgc2luZCBEUkVJIHN0dWVjayBpbiBlaW5lbSByYXVtLi4ubmllbWFscwoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFuZ3N0IGltIE1HPyAoQW5hY3Jpb24sICA5LiBNYWkgMjAwMSwgMTM6MDI6NDYpOgp+IyEgcm49TW9yZ290aCBydD05ODk0MDYwNzQgcmc9c2NobWFycm4KfiMhIHRpZD05ODk0MDM4MzcKWnVtIEdsaXVlY2sgZ2lidHMgZG9jaCBkaWUgaW4gZGVyIFNTUCA7LSkKCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBbmdzdCBpbSBNRz8gKE5vbm5lLCAgOS4gTWFpIDIwMDEsIDEzOjAzOjM2KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk4OTQwNjE2NiByZz1zY2htYXJybgp+IyEgdGlkPTk4OTQwMzgzNwpKYWphLCBhYmVyIG51ciBiaXMgenVtIEFuZnVlaHJlciwgZGVyIGlzdCBlY2h0IHp1IGhhcnQuCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFuZ3N0IGltIE1HPyAoQW5hdG9sLCAgOS4gTWFpIDIwMDEsIDEzOjA0OjEyKToKfiMhIHJuPU5vbm5lIHJ0PTk4OTQwNjIxNiByZz1zY2htYXJybgp+IyEgdGlkPTk4OTQwMzgzNwpEaWUgZGF2b3IgYXVjaCBudXIsIHdlbm4gZWluIHJpY2h0aWdlciBLYWVtcGZlciBzaWUgaWhtIGF1ZiAxMCUgcnVudGVya2xvcGZ0LgoKQW5hKiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQW5nc3QgaW0gTUc/IChTb2xteXIsICA5LiBNYWkgMjAwMSwgMTQ6NTc6MTUpOgp+IyEgcm49QW5hdG9sIHJ0PTk4OTQwNjI1MiByZz1zY2htYXJybgp+IyEgdGlkPTk4OTQwMzgzNwpJaHIgdmVyZ2Vzc3QgYWxsZSBkaWUgZXJzdGUgRWJlbmUgZGVyIE9ya2hvZWhsZSB1bmQgZGllIGJlaWRlbiBzY2h3YWNoZW4KT3JrcyBhbSBFaW5nYW5nLCB0c2V0c2V0c2UKClNvbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEFuZ3N0IGltIE1HPyAoQW5hdG9sLCAgOS4gTWFpIDIwMDEsIDE1OjE0OjUzKToKfiMhIHJuPVNvbG15ciBydD05ODk0MTMwMzUgcmc9c2NobWFycm4KfiMhIHRpZD05ODk0MDM4MzcKT3JraG9laGxlPyBPaG5lIFJ1ZWNrZW5kZWNrdW5nLCBTY2h1dHpoYW5kLCBIZWlsdHJhZW5rZSB1bmQgS2FlbXBmZXJ6d2VpdGllPwpEdSB2ZXJnaXNzdCwgdm9uIHdlbSB3aXIgcmVkZW4uLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQW5nc3QgaW0gTUc/IChHbG9pbnNvbiwgIDkuIE1haSAyMDAxLCAxNToxNjoxNCk6Cn4jISBybj1BbmF0b2wgcnQ9OTg5NDE0MDkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5NDAzODM3CkljaCB3ZXR0ZSwgZXIgZmFlaHJ0IGltbWVyIG51ciBpbiBIaWxiZXJ0cyBUdXJtIGhvY2ggdW5kIHJ1bnRlciB1bmQgZ3Vja3QgZGVuCnp3byBPcmtzIHp1LgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEFuZ3N0IGltIE1HPyAoR3JpbW1ib3JuLCAgOS4gTWFpIDIwMDEsIDE1OjE4OjQ3KToKfiMhIHJuPUdsb2luc29uIHJ0PTk4OTQxNDE3NCByZz1zY2htYXJybgp+IyEgdGlkPTk4OTQwMzgzNwpOYWphLCBkYWZ1ZXIgaXN0IGVyIGphIGF1Y2ggaW4gZGVyIEFiZW50ZXVyZXJnaWxkZSwgdW5kIG5pY2h0IGluIGVpbmVyIGRpZXNlcgpuZXVtb2Rpc2NoZW4gSG9jaGxlaXN0dW5nc2thbXBmZ2lsZGVuIHdpZSBCaWVyc2NodWV0dGxlciwgQ2hhb3MsIEthZW1wZmVyLApLYXJhdGUsIEtsZXJpa2VyLCBUc2NoYXRzY2hhdHNjaGEgb2RlciBaYXViZXJlci4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFidGF1Y2hlbiAoQW5hdG9sLCAgOS4gTWFpIDIwMDEsIDE2OjA2OjE3KToKfiMhIHJuPU11YWRpYiBydD05ODk0MTU0NzYgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTk4OTQxNTQ3NgooQSluYXJjaGllISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEFuZ3N0IGltIE1HPyAoU29sbXlyLCAgOS4gTWFpIDIwMDEsIDE2OjMyOjQwKToKfiMhIHJuPUFuYXRvbCBydD05ODk0MTQwOTMgcmc9c2NobWFycm4KfiMhIHRpZD05ODk0MDM4MzcKRHUgaGFzdCBkaWUgU2FuZHVociB2ZXJnZXNzZW4gOikgRGEgYmxlaWJ0IGVyIDJzZWMgbGFlbmdlciBtaXQgZHJpbiBzdGVoZW4uCgpTb2wqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZSwgaXN0IGtsYXIgKFRhcnphbiwgIDkuIE1haSAyMDAxLCAxNzowOToxOCk6CmZyYWdlIHRyb2xsIG5hY2ggSGlsZmUKRGVyIE1vZGRlcnRyb2xsIHNhZ3Q6IFdpciBNb2RkZXJ0cm9sbGUgaGFzc2VuIGRhcyBMaWNodCEgQWJlciBlcyBpc3QgZWluZmFjaApEZXIgTW9kZGVydHJvbGwgc2FndDogdWViZXJhbGwhIEJyaW5nIG1pciBlaW5lIERvc2UgSGFuc2EtUGlscywgZGFubiBnZWhlbiBiZWkKRGVyIE1vZGRlcnRyb2xsIHNhZ3Q6IG1pciBzaWNoZXIgZGllIExpY2h0ZXIgYXVzIHdlbm4gaWNoIGVzIHRyaW5rZSEgSWNoIHdlcmRlCkRlciBNb2RkZXJ0cm9sbCBzYWd0OiBEaWNoIGF1Y2ggYmVsb2huZW4gc29sbHRlc3QgRHUgbWlyIGhlbGZlbiBrb2VubmVuLgo+IERlciBUcm9sbCBtdXJtZWx0OiBXZW5uIGljaCBudXIgZWluIE1pdHRlbCBkYWdlZ2VuIGhhZXR0ZSEKRHUgZ2lic3QgZGllIEJpZXJkb3NlIGFuIGVpbmVuIE1vZGRlcnRyb2xsLgpEZXIgVHJvbGwgZ3JpbnN0OiBWaWVsZW4gRGFuaywgZGFzIGthbm4gaWNoIHNpY2hlciBndXQgZ2VicmF1Y2hlbi4gQWJlciBmcmFnCkRlciBUcm9sbCBncmluc3Q6IG1pY2ggZG9jaCBkYXMgbmFlY2hzdGVtYWwsIGJldm9yIER1IG1pciBldHdhcyBicmluZ3N0Lgo+IERlciBUcm9sbCBzZXVmenQ6IFdlciBrYW5uIG1pciBibG9zcyBoZWxmZW4/Pz8KClRhcnphbiwgc3ByaW5ndCBkYSBkb2NoIGxpZWJlciBnZWdlbiBCYWV1bWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNhY2hlbiBnaWJ0cy4uLiAoU29sbXlyLCAgOS4gTWFpIDIwMDEsIDIxOjE0OjM0KToKIERhIHN0ZWh0IG1hbiBnYW56IHNpY2hlciBpbiBkZXIgQWJlbnRldWVyZ2lsZGUsIGlkbGVuZCB1bmQgd2FzIHBhc3NpZXJ0PwoKIEVpbiBFbnRsYXVmZW5lciBTU1AtVGlnZXIga29tbXQgbGVpY2hlbmJsYXNzIGhlcmVpbmdlc3RvbHBlcnQuLgogRGVyIEVudGxhdWZlbmVyIFNTUC1UaWdlciBnaHVsdCBuYWNoIE5vcmRlbi4KIEVpbiBFbnRsYXVmZW5lciBTU1AtVGlnZXIga29tbXQgbGVpY2hlbmJsYXNzIGhlcmVpbmdlc3RvbHBlcnQuLgogUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIEVudGxhdWZlbmVyIFNTUC1UaWdlci4KIERlciBFbnRsYXVmZW5lciBTU1AtVGlnZXIgZ2h1bHQgaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4uCgpHcnVlc3NlIGZ1ZXIgSGVyZXRpayBhbiBkaWVzZXIgU3RlbGxlIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hyZWlidCBtYW4gZWluZW4sIGtvbW10cyBpbSBEYXVlcmZldWVyLi4uIChTb2xteXIsICA5LiBNYWkgMjAwMSwgMjE6MTk6MzEpOgogW0tsZXJ1czpMZW1ib2xkXSBTY2h3ZXN0ZXIgTmlubmlmZXkgZXJrbG9tbSBlaW5lIHdlaXRlcmUgU3R1ZmUgZGVyCiBbS2xlcnVzOkxlbWJvbGRdIE9yZGVuc2hpZXJhcmNoaWUgdW5kIGRhcmYgc2ljaCBudW4gZGllIERpYWtvbmlzc2UgbmVubmVuIQogW0tsZXJ1czpEYWVkYWx1c10gZ3JhdHMKIFtLbGVydXM6TmlubmlmZXldIHNjaGVpc3NlCiBbS2xlcnVzOk5pbm5pZmV5XSB3b2xsdGUgZWlnZW50bGljaCBudXIgZGllIHNwaWVsZXJzdHVmZSByYXVmc2V0emVuCgpTb2wqLCBzaWNoIGltbWVyIHVlYmVyIEx2VXBzIGZyZXVlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbmVuIGluIGVpZ2VuZXIgU2FjaGUgOikgKFNvbG15ciwgIDkuIE1haSAyMDAxLCAyMToyMjoxOSk6CiBSYWduYXJvZWsgcnVmdDogU0FNSEFJTiEgOykKIFNhbWhhaW4gcnVmdDogSEkKIFNhbWhhaW4gcnVmdDogU09MKgogRHUgcnVmc3Q6IEh1aHUgOikKIER1IGdyaW5zdCBTdGFyZmlyZSBhdXMgZGVyIEZlcm5lIGFuLgogU2FtaGFpbiBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgoKIFhYWCB0ZWlsdCBEaXIgbWl0OiBTb3NvLCBhbmRlcmUgd2VyZGVuIGFsc28gYmVncnVlc3N0Li4uICpncnVtbWVsKgogWFhYMiB0ZWlsdCBEaXIgbWl0OiBBdWNoIGd1dGVuIFRhZywgU29sbXlyISA6KQoKIER1IHJ1ZnN0OiBIdWh1IFN0YXJmaXJlbGVpbiA6KQogWFhYIHRlaWx0IERpciBtaXQ6IFBvZWghCgpTb2wqIHNldWZ6dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaW5lbiBpbiBlaWdlbmVyIFNhY2hlIDopIChTb2xteXIsICA5LiBNYWkgMjAwMSwgMjE6MjI6NTQpOgp+IyEgcm49U29sbXlyIHJ0PTk4OTQzNjEzOSByZz1zY2htYXJybgp+IyEgdGlkPTk4OTQzNjEzOQpXb2JlaSBkaWUgWCdlIG5pY2h0IHdpcmtsaWNoIFNpbm4gbWFjaGVuIDooICpBcmdsKiwgZGFzIHBhc3NpZXJ0IG1pciBpbW1lci4uLgoKU29sKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFaW5lbiBpbiBlaWdlbmVyIFNhY2hlIDopIChCaWVsZWZlbGQsICA5LiBNYWkgMjAwMSwgMjI6NTM6NTkpOgp+IyEgcm49U29sbXlyIHJ0PTk4OTQzNjE3NCByZz1zY2htYXJybgp+IyEgdGlkPTk4OTQzNjEzOQouLi51bmQgZGEgc2FnZSBlaW5lciwgaW4gbWVnZXNjaG1hcnJuIHN0ZWhlIG51ciBTdHVzcy4uLgoKLUJpZWxlZmVsZCAoZWluemVpbGVybmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCVUghIDopIChBbmF0b2wsICA5LiBNYWkgMjAwMSwgMjM6Mzc6NTApOgpKZW1hbmQgaXN0IGpldHp0IGJlc3RpbW10IGVyc2Nocm9ja2VuLi4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYW5rZSBIaWxiZXJ0IDopIChTb2xteXIsIDEwLiBNYWkgMjAwMSwgMDE6Mjk6MTEpOgogRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KIERlciBBYmRydWNrIGF1ZiBEZWluZXIgU3Rpcm4gdmVyc2Nod2luZGV0LgoKU29sKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhbmtlIEhpbGJlcnQgOikgKEdyaW1tYm9ybiwgMTAuIE1haSAyMDAxLCAwMTozNToxMyk6Cn4jISBybj1Tb2xteXIgcnQ9OTg5NDUwOTUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5NDUwOTUxCktlaW5lIFNvcmdlLCBkZW4ga2FubiBtYW4gc2ljaGVyIHdpZWRlciBuZXUgbWFjaGVuLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3Qgc3VjaHQgc2Nob25tYWwgbmFjaCBkZW0gQmFzZWJhbGxzY2hsYWVnZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERhbmtlIEhpbGJlcnQgOikgKFNvbG15ciwgMTAuIE1haSAyMDAxLCAwMTozNTo1MSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTg5NDUxMzEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5NDUwOTUxCk5lZSBuZWUsIGRhcyBkYXJmIG51ciBGaXJlaGF3aywgd2VubiBpY2ggSWhuIG1hbCB3aWVkZXIgYmVpbSBSYWdlIGFiLQp6b2NrZSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWWlwcGllIERpIERvbyA6KSAoU29sbXlyLCAxMC4gTWFpIDIwMDEsIDAxOjUxOjIzKToKIFtBYmVudGV1ZXI6Qmxhc2VuXSB3aWU/IGRhIGthbm4gbWFuIHN0ZXJiZW4/CiBbQWJlbnRldWVyOlNhbWhhaW5dIGphIHdlbm4gbWFuIHp1IHp3ZXJnaXdhZWNodGVybGkgZ2VodAogW0FiZW50ZXVlcjpTYW1oYWluXSB1bmQgbmllbWFuZCBoaWxmdCBlaW5lbSByYXVzCiBbQWJlbnRldWVyOkJsYXNlbl0gZGllIGdyZWlmZW4gYW4gMDE6NDk6MjkKIFtBYmVudGV1ZXI6U2FtaGFpbl0gamEgYmlzc2NoZW4gMDE6NDk6MzcKIFtBYmVudGV1ZXI6U29sbXlyXSAtdG9kKyAwMTo0OTo0MQogW0FiZW50ZXVlcjpTYW1oYWluXSBzb2xteXIgYml0dGUgMDE6NDk6NDcKIFtBYmVudGV1ZXI6U29sbXlyXSAtYmVpbGVpZC0gMDE6NDk6NTMKIFtBYmVudGV1ZXI6U29sbXlyIGdyaW5zdC4gMDE6NDk6NTVdCiBbQWJlbnRldWVyOlNhbWhhaW5dIGRhbmtlIHZpZWxtYWxzIDAxOjQ5OjU3CgpTb2wqLCAtdG9kKyAtYmVpbGVpZC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBZaXBwaWUgRGkgRG9vIDopIChNdXBmZWwsIDEwLiBNYWkgMjAwMSwgMDk6NTU6MDApOgp+IyEgcm49U29sbXlyIHJ0PTk4OTQ1MjI4MyByZz1zY2htYXJybgp+IyEgdGlkPTk4OTQ1MjI4MwpBZWggaXN0IGRlciBOYW1lIGlyZ2VuZHdpZSBQcm9ncmFtbSA/IDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUGxhbmV0YXJpb24gKFpvb2ssIDEwLiBNYWkgMjAwMSwgMTM6NDU6MDQpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTk4OTQ5NDgzOCByZz1wYXJ0eQp+IyEgdGlkPTk4OTMyNDgwNgpJY2ggZXJpbm5lcmUgbWljaCBub2NoIGd1dCBhbiBkaWUgZWluZSBNdWVuc3Rlci1QYXJ0eSBtaXQgZGVtIFdlZwp2b20gQ2FtcGluZ3BsYXR6IHp1bSBQYXJ0eXJhdW0uIFdhcyBzYWd0ZXN0IER1IG5vY2gsIENhdHR5PyAiRGF1ZXJ0Cm5pY2h0IGxhbmcuIEhvZWNoc3RlbnMgendlaSBvZGVyIGRyZWkgS2lsb21ldGVyLiIgOykKClpvb2sgaGFldHRlIG5pZSBnZWRhY2h0LCBkYXNzIG1hbiBzbyBsYW5nZSBmdWVyIDIgYmlzIDMgS2lsb21ldGVyIGJyYXVjaGVuIAprYW5uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUGxhbmV0YXJpb24gKENhdHdlYXpsZSwgMTAuIE1haSAyMDAxLCAxMzo0NTo0MCk6Cn4jISBybj1ab29rIHJ0PTk4OTQ5NTEwNCByZz1zY2htYXJybgp+IyEgdGlkPTk4OTMyNDgwNgpNYWNoIERpciBrZWluZSBTb3JnZW4sIHZpZWwgd2VpdGVyIGlzc2VzIHZvbiBTY2hsb3NzIGJpcyBab28gYXVjaCBuaWNodC4uLgoKWVRDIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUGxhbmV0YXJpb24gKEFuYXRvbCwgMTAuIE1haSAyMDAxLCAxMzo0NTo0Nik6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9OTg5NDk0ODM4IHJnPXBhcnR5Cn4jISB0aWQ9OTg5MzI0ODA2Ckp1bmdlYmxvZHRwbGF0ei4uLiBPYmluYSBTaG9jaz8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFBsYW5ldGFyaW9uIChDYXR3ZWF6bGUsIDEwLiBNYWkgMjAwMSwgMTM6NDk6MjcpOgp+IyEgcm49QW5hdG9sIHJ0PTk4OTQ5NTE0NiByZz1zY2htYXJybgp+IyEgdGlkPTk4OTMyNDgwNgpBQ0sKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBQbGFuZXRhcmlvbiAoQW5hdG9sLCAxMC4gTWFpIDIwMDEsIDEzOjUxOjIzKToKfiMhIHJuPUNhdHdlYXpsZSBydD05ODk0OTUzNjcgcmc9c2NobWFycm4KfiMhIHRpZD05ODkzMjQ4MDYKTWFhYWFhYWFlZWVlZWVlZWVlZW1tbW1tbW1tbXJpaWlpaWlpaWlpaWlpaWlzc3NzLi4uLi4uLi4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkV4IHVuZCBob3BwIChTb2xteXIsIDExLiBNYWkgMjAwMSwgMDE6MjM6NTMpOgogW1RydmVzOklkbGVmaXhdIGthbm4gbWFsIGplbWFuZCBzY2huZWxsIGlucyBzdHJ1diBrb21tZW4gPyBpY2ggd2VyZGUgYXVmCiBbVHJ2ZXM6SWRsZWZpeF0gd2FjaGUgZ2VtZXR6ZWx0CiBbVG9kOkxhcnNdIEVpbiBSYWV1YmVyIGhhdCBnZXJhZGUgSWRsZWZpeCB1bWdlYnJhY2h0LgoKU29sKiwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkt1c2NoZWxlaW5oZWl0ZW4uLi4gKFZhcmxhcmlvbiwgMTEuIE1haSAyMDAxLCAxMDoyNzozNCk6CkRlaW4gRnJldW5kIFBpdGZhbGwgdGVpbHQgRGlyIG1pdDoga3VzY2hlbHZvcnNjaGxhZWdlPwpEaWUgRWxmZW53YWNoZSBzYWd0OiBLZWluZW4gQWVyZ2VyIGluIGRlciBTaWVkbHVuZywgYml0dGUhCkRlaW4gRnJldW5kIFNvbG15ciBtZWxkZXQgc2ljaCBhdXMgZGVyIEZlcm5lLgo+IERlaW4gRnJldW5kIFNvbG15ciBicmF1Y2ggS3VzY2hlbGVpbmhlaXRlbiBhdXMgZGVyIEZlcm5lLgpEZXIgRWxmZW53YWVjaHRlciBnZWh0IG5hY2ggV2VzdGVuLgpEZWluIEZyZXVuZCBQaXRmYWxsIHRlaWx0IERpciBtaXQ6IHBmZnQKRGVpbiBGcmV1bmQgU29sbXlyIHRlaWx0IERpciBtaXQ6IEJpaWlpaWlpdHRlIDopCj4gRGVpbiBGcmV1bmQgU29sbXlyIHRlaWx0IERpciBtaXQ6IEJpaWlpaWlpdHRlIDopIEJpaWlpaWlpdHRlIDopCkRlaW4gRnJldW5kIFNvbG15ciB0ZWlsdCBEaXIgbWl0OiBCaWlpaWlpaXR0ZSA6KSBCaWlpaWlpaXR0ZSA6KSBCaWlpaWlpaXR0ZSA6KQpEZWluIEZyZXVuZCBTb2xteXIgZ3JpbnN0IGJyZWl0IGF1cyBkZXIgRmVybmUuCgpWYXJsKiwgLiBvIE8gKEthZW1wZmVyPyEpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS3VzY2hlbGVpbmhlaXRlbi4uLiAoU29sbXlyLCAxMS4gTWFpIDIwMDEsIDEwOjI4OjA4KToKfiMhIHJuPVZhcmxhcmlvbiBydD05ODk1Njk2NTQgcmc9c2NobWFycm4KfiMhIHRpZD05ODk1Njk2NTQKRXkgIT8gRGFzIGlzdCB1bnNlcmUgUHJpdmF0c3BoYWVyZSA6PSkgKkcqCgpTb2wqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FubiBnZWh0cyBsb3M/ISAoU29sbXlyLCAxMS4gTWFpIDIwMDEsIDEwOjMwOjE4KToKfiMhIHJuPVJvbmRhIHJ0PTk4OTU2OTc2NCByZz1zY2htYXJybgp+IyEgdGlkPTk4OTU2OTc2NApXYXIgZGFzIGRlciBXZWcgdm9tIEhhdXB0YmFobmhvZiB6dW0gQ3ViYT8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYW5uIGdlaHRzIGxvcz8hIChBbmFjcmlvbiwgMTEuIE1haSAyMDAxLCAxMDozMTowMCk6Cn4jISBybj1Sb25kYSBydD05ODk1Njk4MjIgcmc9c2NobWFycm4KfiMhIHRpZD05ODk1Njk4MjIKR2VydW5kaXVtCgpBbmFjKiAtIGhpbGZzYmVyZWl0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FubiBnZWh0cyBsb3M/ISAoQ2F0d2VhemxlLCAxMS4gTWFpIDIwMDEsIDEwOjMxOjQ2KToKfiMhIHJuPVJvbmRhIHJ0PTk4OTU2OTgyMiByZz1zY2htYXJybgp+IyEgdGlkPTk4OTU2OTgyMgpHZXJ1bmRpdW0uCkdlcnVuZGl2dW0ga29ubnQgaWNoIG5pZSwgaWNoIGhhZXR0ZSBkYXMgc2NocmVja2Vuc2VudHNldHp0IGVya2FubnQgd2VubnMgZWlucwpnZXdlc2VuIHdhZXJlIDopCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llIGdlcnVmZW4gKEFuYWNyaW9uLCAxMS4gTWFpIDIwMDEsIDEwOjM2OjUxKToKW0FsbGdlbWVpbjpBbmFjcmlvbl0gbnVyIHdlbm4gZGllIGJhbGFuY2UgamEgc2FndCA7LSkKPiBBbmF0b2wgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCgpBbmFjKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRXJmYWhydW5nc3B1bmt0ZSB1bmQgU3R1cHNlIChWYW5pb24sIDExLiBNYWkgMjAwMSwgMTg6MDk6MTgpOgp+IyEgcm49R29yIHJ0PTk4OTUwMDQ1MSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk4OTQxNTYxOApWZXJydGF0LCB3d3cuZnBsaXN0ZS5uZXQgZ2lidHMgamEgZ2FybmljaCA6LwoKViogc2NobWFycm50IGhldXQgKGF1c25haG1zd2Vpc2UpIG1hbCAqZmllcyBraWNoZXIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPZWhoLi4uIChLYWZmLCAxNC4gTWFpIDIwMDEsIDAwOjQ0OjA5KToKV2FyIGljaCBkYXM/CgpbVG9kOkxhcnNdIEVpbiBLYXV0c2NodWtoYW1tZXIgaGF0IGdlcmFkZSBLYXJpYyB1bWdlYnJhY2h0LiAKRHUgbmltbXN0IGRlbiBzY2h3ZXJlbiBTdGllbGhhbW1lci4gCgpLYWZmIGlzdCBkb2NoIG5pY2h0IGJlaGFlbW1lcnQsIG9kZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgOikgKEVsYmVyZXQsIDE0LiBNYWkgMjAwMSwgMDE6MjU6NDIpOgpWb24gRnJldW5kIFN0cm9oYWxtOiBqby4uLiB0YW1haG9ybnkgYWJlciBub2NoIGRhIDspClZvbiBGcmV1bmQgU29sbXlyOiBLZW5udCBzaWNoIGplbWFuZCBtaXQgQXVkaW9ncmFiYmVyIGF1cz8KW1RvZDpMYXJzXSBFaW4gVGFtYWhvcm55IGhhdCBnZXJhZGUgU3Ryb2hhbG0gdW1nZWJyYWNodC4KW1RvZDpFaW4gVGFtYWhvcm55XSBFbmRsaWNoIGJpc3QgRHUgbWljaCBsb3MuLi4uc2Nob2VuLCBuaWNodCB3YWhyPyA6KSAKQW4gRnJldW5kZW4gOiBnZWggd2VuaWdzdGVucyBnZXBmbGVndCBzdGVyYmVuIDspCgoKV2FyIGRhcyBudW4gZ2VwZmxlZ3Qgb2RlciBuaWNodCA/IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGFjaGphLi4uIChJbWRhLCAxNC4gTWFpIDIwMDEsIDE0OjQ1OjU4KToKPlBlcmRpdGEgc2NobmFwcHQgc2ljaCBkZWluZW4gUm9sbHN0dWhsIHVuZCBmYWVocnQgZGljaCBlaW4gYmlzc2NoZW4gZHVyY2ggZGVuClBhcmsuCkVpbmUgaGVycmxpY2hlIFdhZXJtZSBnZWh0IHZvbiBEZWluZW0gQW11bGV0dCBhdXMsIHVuZCBEdSBmdWVobHN0CkRpY2ggcHJpbWEuCltQZXJkaXRhIGRlbmt0ICAgLiBvIE8gKGltbWVyIHp1IGRpZW5zdGVuISkKCkpvLCB3ZW5uIHdpciB1bnNlcmUgWml2aXMgbmljaCBoYWV0dGVuLi4uCgpJbWRhLiBNb2VjaHRlZ2VybnJlbnRuZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIFdpZSBwYXNzZW5kIDopIChWYXJsYXJpb24sIDE0LiBNYWkgMjAwMSwgMTY6MTg6NDApOgpEZWluIEZyZXVuZCBSaWt1cyB0ZWlsdCBEaXIgbWl0OiByZWgKRGVpbiBGcmV1bmQgTXVwZmVsIHRlaWx0IERpciBtaXQ6IGhpcnNjaApEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogZWxjaApEZWluIEZyZXVuZCBPYmkgdGVpbHQgRGlyIG1pdDogTVVIIQpEZWluIEZyZXVuZCBFbGJlcmV0IGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRGVpbiBGcmV1bmQgRWxiZXJldCB0ZWlsdCBEaXIgbWl0OiBtb2luCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdWVobmVyLi4uIChGb29iYXIsIDE0LiBNYWkgMjAwMSwgMTY6NTE6MzQpOgoqWlVGRiogVmFybGFyaW9uIGhhdXQgRGlyIHNlaW4gR3VtbWlodWhuIHVtIGRpZSBPaHJlbi4KRGFzIEdsb2Vja2NoZW4gdm9uIERlaW5lbSBaaXBmZWxtdWV0emNoZW4gYmltbWVsdCBhdWZnZXJlZ3QuCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIdWVobmVyLi4uIChWYXJsYXJpb24sIDE0LiBNYWkgMjAwMSwgMTY6NTI6MDgpOgp+IyEgcm49Rm9vYmFyIHJ0PTk4OTg1MTg5NCByZz1zY2htYXJybgp+IyEgdGlkPTk4OTg1MTg5NAp1cHMsIHNvIGhlZnRpZyB3b2xsdCBpY2ggZGljaCBhdWNoIG5pY2ggaGF1ZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvIHNpZWh0IG5lIHJpY2h0aWdlIGthZW1wZmVya29tYm8gYXVzLi4gKEthcmljLCAxNC4gTWFpIDIwMDEsIDE3OjAxOjUyKToKaWNoIHNhY2ggZGF6dSBuaXggd2VpdGVyLi5zY2hhdXQgdW5kIHN0YXVudCA7KQpEdSBzdGVja3N0IGRpZSBCbGl0emF4dCB6dXJ1ZWNrLgpEdSB6dWVja3N0IGRlbiBLYW1wZnN0b2NrLgpGZWhsc2NobGFlZ2UgYmVpIEZpbnRlIGhldXRlOiAxCkR1IHN0ZWNrc3QgZGVuIEthbXBmc3RvY2sgenVydWVjay4KQXVhLiBPYndvaGwgRHUgZGllIEF4dCBzb3JnZmFlbHRpZyBpbiBkaWUgSGFuZCBuaW1tc3QsIApzY2huZWlkZXN0IER1IERpY2ggYW4gZGVyIHN1cGVyc2NoYXJmZW4gU2NoZXJiZS4KRHUgenVlY2tzdCBkaWUgQmxpdHpheHQuCkZlaGxzY2hsYWVnZSBiZWkgS29wZnN0b3NzIGhldXRlOiAxCkZlaGxzY2hsYWVnZSBiZWkgS2FtcGZ0cml0dCBoZXV0ZTogMQpGZWhsc2NobGFlZ2UgYmVpIFdhZmZlbnNjaGxhZyBoZXV0ZTogMQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3RhVGkgSGFubm92ZXIgKEFuYXRvbCwgMTQuIE1haSAyMDAxLCAxODo1ODo0NSk6Cn4jISBybj1PbGxpIHJ0PTk4OTg1OTQ3MyByZz10cmVmZmVuCn4jISB0aWQ9OTg5ODQ3MDUyClNjaG9uIGFiZ2VzY2hpY2t0LCBPbGxpPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3RhVGkgSGFubm92ZXIgKE9sbGksIDE0LiBNYWkgMjAwMSwgMTk6MDM6MTMpOgp+IyEgcm49QW5hdG9sIHJ0PTk4OTg1OTUyNSByZz1zY2htYXJybgp+IyEgdGlkPTk4OTg0NzA1MgpOb2NoIG5pY2h0LCBkZXIgVW1zY2hsYWcgbGllZ3Qgbm9jaCBmcmFua2llcnQgYW4gZGVyIFR1ZXIgOikKCk9sbGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFN0YVRpIEhhbm5vdmVyIChBbmF0b2wsIDE0LiBNYWkgMjAwMSwgMTk6MDM6NDcpOgp+IyEgcm49T2xsaSBydD05ODk4NTk3OTMgcmc9c2NobWFycm4KfiMhIHRpZD05ODk4NDcwNTIKV2lyZiBpaG4gZWluLCBiZXZvciBkZXIgV29sa2VuYnJ1Y2ggYXVzIE9zbmFicnVlY2sgbmFjaCBIYW5ub3ZlciB6b2chIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSG9jaHplaXQgKFJvbmRhLCAxNC4gTWFpIDIwMDEsIDE5OjM5OjI3KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODk4NjEzMDcgcmc9YW56ZWlnZW4KfiMhIHRpZD05ODk4NjEzMDcKQWVobS4gSXJnZW5kd2llIGtsaW5ndCBmdWVyIGRpZSBaZXJlbW9uaWUgJ1BvbHRlcmFiZW5kJyBrb21wbGV0dCB1bnBhc3NlbmQuCldlbm4gSWhyIHNjaG9uIEV1cmUgZ2VtZWluc2FtZSBBYm5laWd1bmcgZmVpZXJuIHdvbGx0LCBzb2xsdGV0IElociBsaWViZXIgenVtCmdlbWVpbnNhbWVuIEJlbWJlbC1Ub2VwZmVybiBlaW5sYWRlbi4uLgoKLi4uIG1laW50IFJvbmRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhvY2h6ZWl0IChNb250YW51cywgMTQuIE1haSAyMDAxLCAxOTo0MDoxOCk6Cn4jISBybj1Sb25kYSBydD05ODk4NjE5Njcgcmc9c2NobWFycm4KfiMhIHRpZD05ODk4NjEzMDcKaGloaS4uLiB3ZXIgemllaHQgZGVubiBmcmVpd2lsbGlnIG5hY2ggSGVzc2VuLCBIZXhjaGVuPyA7LSkKU29sbGVuIHdpciBzY2hvbiBtYWwgcHJvcGh5bGFrdGlzY2ggZnVlciBkaWUgbmFlY2hzdGUgRmV0ZSBmdWVyIGRpY2ggQWVwcGVsd29pCmJlcmVpdHN0ZWxsZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpwaGFhYWFhYWFhYWFhYWFhYWFhYWFhYWEgISAoSGlnaHQsIDE0LiBNYWkgMjAwMSwgMTk6NDY6MzUpOgpUb2Q6TGFyc10gRWluIGdyb3NzZXIgc2Nod2FyemVyIFF1YXJ6IGhhdCBnZXJhZGUgS3JlaWdhciB1bWdlYnJhY2h0LgpbVG9kOkVpbiBncm9zc2VyIHNjaHdhcnplciBRdWFyeiB2ZXJodWVsbHQgRGVpbmVuIEdlc2FuZyBtaXQgVmVyZ2Vzc2VuLl0KRGVpbmUgRnJldW5kaW4gTGFyaW5hIGtudWRkZWx0IERpY2ggbm9jaCBtYWwgZnJvZWhsaWNoIGF1cyBkZXIgRmVybmUuCgpobW0gd2VyIGxpZWJ0IHVuZCBuZXR0ID8gCgpoaWdodCBrYW5uIHNpY2ggbmltbWVyIGVyaW5uZXJuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTdGFUaSBIYW5ub3ZlciAoTXVwZmVsLCAxNC4gTWFpIDIwMDEsIDIwOjM2OjA1KToKfiMhIHJuPUFuYXRvbCBydD05ODk4NTk4Mjcgcmc9c2NobWFycm4KfiMhIHRpZD05ODk4NDcwNTIKSmFqYSBkZXIgV29sa2VuYnJ1Y2guLi4gZmFociBpY2ggZG9jaCBzbyBnYW56IGhhcm1sb3MgbWl0IGRlbSBGYWhycmFkIG5hY2gKSGF1c2UsIGJld2lyZnQgbWljaCBkb2NoIGdhbnogZnJlY2ggdm9uIG9iZW4gamVtYW5kIG1pdCBFaXN3dWVyZmVsbiB1bmQgdmllbApXYXNzZXIuLi4uIG5hY2ggNTAwIE1ldGVybiBrYW0gaWNoIG1pciB2b3Igd2llIGJlaW0gU2Nod2ltbWVuLi4uIGJsdWJiYmx1YmIuLi4KCi1tdXBmZWwtICh3aWVkZXIgdHJvY2tlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmllbmNoZW4gaGFidCBuZW4gc2NoYWNoZW4gTWFnZW4gOikgKEVsYmVyZXQsIDE0LiBNYWkgMjAwMSwgMjE6MTI6MjIpOgoKaS52LiBmdWVyIEVsYmVyZXRoIGRpZSBnZXJhZGUgYWVoIHZlcmhpbmRlcnQgaXN0IDopCgpEZWluIEZyZXVuZCBFbGJlcmV0IHRlaWx0IERpciBtaXQ6IE1lcmxpbiBydWZ0OiBJY2ggYmluIGltIEFyc2NoIQpEZWluIEZyZXVuZCBFbGJlcmV0IHRlaWx0IERpciBtaXQ6IGljaCBmaW5kIGRhcyBzdWVzcyA7KQpEaXIgd2lyZCBzY2hsZWNodC4KCkVsYmkgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkViZW4gaW0gRHVlc3RlcndhbGQuLi4gKFJhZ25hcm9laywgMTQuIE1haSAyMDAxLCAyMTozODowNSk6Cgo+IHVudCBmaW5zdGVybmlzCkVzIGlzdCB2ZXJkYW1tdCBkdW5rZWwgaGllciwgZG9jaCBkYXMgaXN0IG5pY2h0IGRhcyBQcm9ibGVtLiBEdSB3YWVyZXN0IG5pY2h0CkxldmVsIDEgZ2V3b3JkZW4sIHdlbm4gRHUgbmljaHQgbWl0IER1bmtlbGhlaXQgZmVydGlnIHdlcmRlbiB3dWVyZGVzdC4KCkFjaCBqYT8gV2FzIHdhZXIgaWNoIGRhbm4/IDspCi1SYWduYXJvZWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB1cmxhdWIgKEdyaW1tYm9ybiwgMTUuIE1haSAyMDAxLCAwMDo1MjozMyk6Cn4jISBybj1FbGJlcmV0IHJ0PTk4OTg4MDM4MCByZz1zZWhlci51cmxhdWIKfiMhIHRpZD05ODk4ODAzODAKRHUgV2VpY2hlaS4gSWNoIHdldHRlIER1IHdpbGxzdCBpbiBXaXJrbGljaGtlaXQgbnVyIG1hbCBhdXNzY2hsYWZlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdXJsYXViIChBbmFjcmlvbiwgMTUuIE1haSAyMDAxLCAwMDo1NDozMyk6Cn4jISBybj1FbGJlcmV0IHJ0PTk4OTg4MDM4MCByZz1zZWhlci51cmxhdWIKfiMhIHRpZD05ODk4ODAzODAKV2FydW0gd3Vzc3RlIGljaCwgYWxzIGljaCBkaWUgQW5rdWVuZGlndW5nIHBlciBlcndhcnRlIG1wYSBsYXMsIGRhc3MgZ2VuYXUgREFTCmRyaW5zdGVodCAuLi4KCkFuYWMqIC0gYXVzIEZsZWljaCB1bmQgQmx1dAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB1cmxhdWIgKEVsYmVyZXQsIDE1LiBNYWkgMjAwMSwgMDA6NTU6MTIpOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTg5ODgwODczIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5ODgwMzgwCmljaCBmaW5kLCBkYXMgc2luZCBnZXN1bmRoZWl0bGljaGUgR3J1ZW5kZSwgb2Rlcj8gCgpFbGJpIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHVybGF1YiAoR3JpbW1ib3JuLCAxNS4gTWFpIDIwMDEsIDAwOjU1OjI0KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk4OTg4MDg3MyByZz1zY2htYXJybgp+IyEgdGlkPTk4OTg4MDM4MApLZWluZSBBaG51bmcuIEphLCB3YXJ1bSB3dXNzdGVzdCBEdSBkYXM/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHVybGF1YiAoRWxiZXJldCwgMTUuIE1haSAyMDAxLCAwMDo1NTo0MCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTg5ODgwOTI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5ODgwMzgwCkVsYmVyZXQga2ljaGVydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHVybGF1YiAoQW5hY3Jpb24sIDE1LiBNYWkgMjAwMSwgMDA6NTU6NTIpOgp+IyEgcm49RWxiZXJldCBydD05ODk4ODA5MTIgcmc9c2NobWFycm4KfiMhIHRpZD05ODk4ODAzODAKQmlzdCBEdSBrcmFuayA/IDstKSAKCkljaCBmaW5kZSBuaWNodC4gQWxzbyB3ZW5uIEVsYmkgcG9yb2VzIHdhZXJlLCB3YWVyZW4gZGFzIGdlc3VuZGhlaXRsaWNoZQpHcnVlbmRlIC4uLgoKQW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHVybGF1YiAoRWxiZXJldCwgMTUuIE1haSAyMDAxLCAwMDo1NjoyNik6Cn4jISBybj1BbmFjcmlvbiBydD05ODk4ODA5NTIgcmc9c2NobWFycm4KfiMhIHRpZD05ODk4ODAzODAKYWxzbyBpY2ggYmluIG5pY2h0IHBvcm9lcyB1bmQgZWlnZW50bGljaCBhdWNoIGdhbnogZ2VzdW5kIDspCgpFbGJpIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB1cmxhdWIgKEdyaW1tYm9ybiwgMTUuIE1haSAyMDAxLCAwMDo1OToxMCk6Cn4jISBybj1FbGJlcmV0IHJ0PTk4OTg4MDk4NiByZz1zY2htYXJybgp+IyEgdGlkPTk4OTg4MDM4MApEYXMgbGFlc3N0IHNpY2ggc2ljaGVyIGFlbmRlcm4uIFNhZyBCZXNjaGVpZCB3ZW5uIER1IGludGVyZXNzaWVydCBiaXN0LCBkYW5uCmhvbGxlIGlzY2ggbWluZ2UgQnJvZGVyZSBtaXQgZGUgTW9wZXR0a2V0dCwgdW5kIGRhbm4uLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHVybGF1YiAoRWxiZXJldCwgMTUuIE1haSAyMDAxLCAwMTowMDowNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTg5ODgxMTUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5ODgwMzgwCmljaCBiaW4gZG9jaCBuY2lodCBpbiBVcmxhdWIsIEJJZW5jaGVuIGlzdCB1bmQgbmFqYSBzaWUgaXN0IHZpZWxsZWljaHQgbmljaHQKa3JhbmssIGFiZXIgZ2VzdW5kIHdpbGwgaWNoIGRhcyBhdWNoIG5jaWh0IG5lbm5lbiA7KQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogdXJsYXViIChHbG9pbnNvbiwgMTUuIE1haSAyMDAxLCAwMTo1Njo1MSk6Cn4jISBybj1FbGJlcmV0IHJ0PTk4OTg4MTIwNCByZz1zY2htYXJybgp+IyEgdGlkPTk4OTg4MDM4MApCaWVuY2hlbiBpc3Qgc2Nod2FuZ2VyPyBJc3QgZG9jaCBhdWNoICduZSBBcnQgS3JhbmtoZWl0IDopIE11ZXNzdGUgc2llIGRhbm4KbmljaHQgSHVtbWVsY2hlbiBoZWlzc2VuPwoKR2xvaW4oc29uKSwgc29sbXlyc2NoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiB1cmxhdWIgKEdyaW1tYm9ybiwgMTUuIE1haSAyMDAxLCAwMTo1NzoyMyk6Cn4jISBybj1HbG9pbnNvbiBydD05ODk4ODQ2MTEgcmc9c2NobWFycm4KfiMhIHRpZD05ODk4ODAzODAKQWVoLCB1bmQgd28gbmltbXN0IER1IGRhcyAiY2hlbiIgaGVyPwoKR2RBIGdlaHQgc2Nob25tYWwgaW4gRGVja3VuZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogdXJsYXViIChFbGJlcmV0LCAxNS4gTWFpIDIwMDEsIDAzOjE3OjQ5KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODk4ODQ2NDMgcmc9c2NobWFycm4KfiMhIHRpZD05ODk4ODAzODAKTmVpbiwgQmllbmNoZW4gaXN0IG5pY2h0IHNjaHdhbmdlciA6bykKV2FlciBhdWNoIG5pY2h0IGdlc3VuZCBmdWVycyBLaW5kIAoKRWxiaSA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1lcmxpbiBoYXQgd29obCBuaXggenUgdHVuIChFbGJlcmV0LCAxNS4gTWFpIDIwMDEsIDAzOjU2OjUzKToKWzxNYXN0ZVI+Ok1lcmxpbl0gbGFnCls8TWFzdGVSPjo8TWFzdGVSPl0gNy4zNCBjbWRzL3MsIDQyLjAwIGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogNzUuMyUvNjAsIDYyLjQlLzE1LCA4OS4zJS8xCgpPZGVyIGlzdCBlciB3b2hsbW9lZ2xpY2ggZnVlcnMgbGFnIHZlcmFudHdvcnRsaWNoPyA6KQoKRWxiaSAoZ3JpbnNlbndlcmZlbmQgKGMpIElzaSApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcuLi4gKEFuYXRvbCwgMTUuIE1haSAyMDAxLCAxMzoyMDo1MSk6CltTZWhlcjpWYXJsYXJpb24gc3RyZWNrdCBNb3Jnb3RoIGRpZSBadW5nZSByYXVzLl0KW1RvZDpMYXJzXSBTaGFpLUh1bHVkIGhhdCBnZXJhZGUgVmFybGFyaW9uIHVtZ2VicmFjaHQuCltTZWhlcjpNb3Jnb3RoXSBzdHJycnJycnJpa2UKCk91Y2hpYm91Y2hpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3Bhc3MgbWl0IExhcnMgKFZhcmxhcmlvbiwgMTUuIE1haSAyMDAxLCAxMzoyNDozOSk6CltUb2Q6TGFyc10gRWluIFdhZWNodGVyIGRlciBad2VyZ2VuZmVzdHVuZyBoYXQgZ2VyYWRlIFRpbGwgdW1nZWJyYWNodC4KICBEZXIgWndlcmcgdHJpZmZ0IFRpbGwgc2VociBoYXJ0LgogIERlciBad2VyZyB0cmlmZnQgVGlsbCBoYXJ0LgogIERlciBad2VyZyB0cmlmZnQgVGlsbCBzZWhyIGhhcnQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBUaWxsLgoKSW50ZXJlc3NhbnRlIERpbmdlIGdlaGVuIGltIFRvZGVzcmF1bSB2b3Igc2ljaC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmVlLCBpcyBrbGFyIDopIChTb2xteXIsIDE1LiBNYWkgMjAwMSwgMTY6NTA6MjIpOgogQWxsZ2VtZWluOkVvbGFodXMgd2VyIGlzdCBnZXJhZGUgYmVpbSBzY2huZWUgYmFsbCB2ZXJyZWNrdCA/IDE2OjQ3OjM1CiBBbGxnZW1laW46RWxkYXJvbiAtVCoxIDE2OjQ3OjUwCgogMAogRGllc2UgQW5nYWJlIHdhciBuaWNodCBlaW5kZXV0aWchIEZvbGdlbmRlIEViZW5lbiBwYXNzZW46CiB0cnZlcywgdG9kLCB0b3BvZ3JhcGhpZSwgdGFuamlhbiwgdGYsIHR2LCB0ZWxsbmV0dAoKU29sKiwgQWhhIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEb3VnbGFzIEFkYW1zIGlzdCB0b3QgKEdyaW1tYm9ybiwgMTUuIE1haSAyMDAxLCAxOTo0MToyNCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTg5OTQ4NDc4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1WYW5pb24gcnQ9OTg5OTQ4Mjc1IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTg5OTI5Njk2Ck51ciB3ZWlsIERpciBTaGFrZXNwZWFyZSBrZWluIEJlZ3JpZmYgaXN0IGlzdCBkYXMgbm9jaCBrZWluIEdydW5kIHNvCnVlYmVyenVyZWFnaWVyZW4uIFN0YXkgY29vbCwgbWFuLi4uCgpHZEEsIG1pdHRsZXJ3ZWlsZSA4IEhpbndlaXNlIGF1ZiBEb3VnbGFzJyBUb2QgZXJoYWx0ZW4gdW5kIGltbWVyIG5vY2ggcG9zaXRpdgpnZW51ZyB1bSBpaG4gbWl0IFNoYWtlc3BlYXJlIHp1IHZlcmdsZWljaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEb3VnbGFzIEFkYW1zIGlzdCB0b3QgKE1vbnRhbnVzLCAxNS4gTWFpIDIwMDEsIDE5OjQ1OjMzKToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODk5NDg0ODQgcmc9c2NobWFycm4KfiMhIHRpZD05ODk5Mjk2OTYKRGEga2VubnQgamVtYW5kIFNoYWtlc3BlYXJlIG5pY2h0PyBabGF0a28/Pz8gSGllcj8/Pwooc29ycnkgZnVlciBkaWUgZHJlaSBGcmFnZXplaWNoZW4sIGVpbnMgaXN0IGZ1ZXIgSnVzdHVzLCBlaW5zIGZ1ZXIgQm9iIHVuZAplaW5zIGZ1ZXIgUGV0ZXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEb3VnbGFzIEFkYW1zIGlzdCB0b3QgKEFuYXRvbCwgMTUuIE1haSAyMDAxLCAxOTo0NjozMyk6Cn4jISBybj1Nb250YW51cyBydD05ODk5NDg3MzMgcmc9c2NobWFycm4KfiMhIHRpZD05ODk5Mjk2OTYKRGFzIGRyaXR0ZSBpc3QgZnVlciBCb2IsIG5pY2h0IGRhcyB6d2VpdGUuCkJhbmF1c2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEb3VnbGFzIEFkYW1zIGlzdCB0b3QgKEdyaW1tYm9ybiwgMTUuIE1haSAyMDAxLCAxOTo0NzowNSk6Cn4jISBybj1BbmF0b2wgcnQ9OTg5OTQ4NzkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5OTI5Njk2Ck1vbnRhbnVzIGhhdHRlIG5pY2h0IGRpZSBSZWloZW5mb2xnZSBzcGV6aWZpemllcnQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IERvdWdsYXMgQWRhbXMgaXN0IHRvdCAoTW9udGFudXMsIDE1LiBNYWkgMjAwMSwgMTk6NDk6NDApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4OTk0ODgyNSByZz1zY2htYXJybgp+IyEgdGlkPTk4OTkyOTY5Ngp3YXIgUGV0ZXIgbnVuIGRhcyBibGF1ZT8gRGllIEZhcmJyZWloZW5mb2xnZSBpc3QgZG9jaCB2aWVsIGludGVyZXNzYW50ZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBEb3VnbGFzIEFkYW1zIGlzdCB0b3QgKEFuYXRvbCwgMTUuIE1haSAyMDAxLCAxOTo1Njo1Myk6Cn4jISBybj1Nb250YW51cyBydD05ODk5NDg5ODAgcmc9c2NobWFycm4KfiMhIHRpZD05ODk5Mjk2OTYKV2Vpc3MsIEJsYXUsIFJvdCwgZGFjaHRlIGljaC4gCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRG91Z2xhcyBBZGFtcyBpc3QgdG90IChHcmltbWJvcm4sIDE1LiBNYWkgMjAwMSwgMTk6NTk6MzApOgp+IyEgcm49QW5hdG9sIHJ0PTk4OTk0OTQxMyByZz1zY2htYXJybgp+IyEgdGlkPTk4OTkyOTY5NgpBbHNvLCBpY2ggaGFiZSBpbW1lciAic2Nod2Fyeiwgcm90LCBnb2xkIiBnZWxlcm50LCBhYmVyIGljaCBiaW4gamEgYXVjaApTY2h3ZWRlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRG91Z2xhcyBBZGFtcyBpc3QgdG90IChNb250YW51cywgMTUuIE1haSAyMDAxLCAyMDowNjozNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTg5OTQ5NTcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5OTI5Njk2CldlaXNzIHJvdCBibGF1LiBoYWIgZ3JhZCBuYWNoZ2VzY2hhdXQuCkFyZ2wsIHdpciB3ZXJkZW4gd2lya2xpY2ggYWx0LCB3ZW5uIHdpciBkYXMgbmljaHQgbWVociBhdXMgZGVtIEVmZmVmZgp3aXNzZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBEb3VnbGFzIEFkYW1zIGlzdCB0b3QgKEdyaW1tYm9ybiwgMTUuIE1haSAyMDAxLCAyMDowODoyOCk6Cn4jISBybj1Nb250YW51cyBydD05ODk5NDk5OTQgcmc9c2NobWFycm4KfiMhIHRpZD05ODk5Mjk2OTYKT2RlciBtZWluc3QgRHUgZG9jaCAiVGFyemFuLCBLYXJsLCBLbG9lc3NjaGVuIHVuZCBHYWJpIGRpZSBQZm90ZSI/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBEb3VnbGFzIEFkYW1zIGlzdCB0b3QgKE1vbnRhbnVzLCAxNS4gTWFpIDIwMDEsIDIwOjExOjIzKToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODk5NTAxMDggcmc9c2NobWFycm4KfiMhIHRpZD05ODk5Mjk2OTYKaWNoIGtlbm5lIG51ciB0YXJ6YW4gdW5kIEphbmUuCi1Nb250YW51cwoobGllYmVyIGRvb2Ygc2VpbiBhbHMgR2FiaSBoZWlzc2VuKSAoYykgZGllIGtsZWluZSBUaWVyc2NoYXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBEb3VnbGFzIEFkYW1zIGlzdCB0b3QgKERhcmlhLCAxNS4gTWFpIDIwMDEsIDIwOjEyOjM4KToKfiMhIHJuPUdyaW1tYm9ybiBydD05ODk5NTAxMDggcmc9c2NobWFycm4KfiMhIHRpZD05ODk5Mjk2OTYKRGVyIGhlaXNzdCBkb2NoIFRpbS4gTmFjaCBCdWNoIHdlaWwgZXIgVGFyemFuIGlyZ2VuZHdhbm4gZG9vZiBmYW5kLCBhYmVyIGRhCndhcmVuIHdvaGwgVXJoZWJlcnJlY2h0ZSBpbSBTcGllbC4KRGFyaWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBEb3VnbGFzIEFkYW1zIGlzdCB0b3QgKEdyaW1tYm9ybiwgMTUuIE1haSAyMDAxLCAyMDoxNDoxNyk6Cn4jISBybj1EYXJpYSBydD05ODk5NTAzNTggcmc9c2NobWFycm4KfiMhIHRpZD05ODk5Mjk2OTYKU2llaHN0ZSwgenUgbWVpbmVyIFplaXQgd2FyIGRhcyBub2NoIFRhcnphbi4gRGVyIFVtc2Nod3VuZyBhdWYgVGltIGthbSBlcnN0Cndlc2VudGxpY2ggc3BhZXRlci4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogRG91Z2xhcyBBZGFtcyBpc3QgdG90IChNb250YW51cywgMTUuIE1haSAyMDAxLCAyMDoxNTozMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTg5OTUwNDU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5OTI5Njk2CmljaCBoYWIgbGllYmVyIFNjaHJlY2tlbnN0ZWluIHVuZCBkZW4gZ2FuemVuIEJseXRvbi1LYW5vbiBnZWxlc2VuLiBUS0tHIGFsd2F5cwpzdWNrZWQuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IERvdWdsYXMgQWRhbXMgaXN0IHRvdCAoR3JpbW1ib3JuLCAxNS4gTWFpIDIwMDEsIDIwOjE5OjEwKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk4OTk1MDUzMyByZz1zY2htYXJybgp+IyEgdGlkPTk4OTkyOTY5NgpIbW0uIFNhZW10bGljaGUgSGFubmkgdW5kIE5hbm5pcyBpbiBkZXIgR3J1bmRzY2h1bGUgKHdhcmVuIGRhbWFscyBudXIgMTUKU3R1ZWNrLCBpY2ggZ2xhdWJlIGRhIGdpYnRzIG1pdHRsZXJ3ZWlsZSBtZWhyKSwgRG9sbHkgaGFiIGljaCBpcmdlbmR3YW5uIGV0d2FzCnNwYWV0ZXIgZGVuIGtvbXBsZXR0ZW4gU2FtbWVsYmFuZCBpbiBkaWUgRmluZ2VyIGJla29tbWVuLiBEaWUgIiogZGVyCkFiZW50ZXVlciIgU2VyaWUgKG1pdCBLaSJXZWcgaXN0IGRhcyBXaWVzZWwhImtpKSB3YXIga2xhc3NlLCBiZXNzZXIgYWxzIGRpZQoiR2VoZWltbmlzIHVtLi4uIiBTYWNoZW4uCk5hamEsIHVuZCBTY2hyZWNrZW5zdGVpbiBoYWJlIGljaCBqYSBnZWxpZWJ0Li4uCkhhY2ggamEsIGdyZWF0IHRpbWVzLCB3b2hpbiBpc3QgZGllIEp1Z2VuZCBudXIgZW50c2Nod3VuZGVuLi4uICpzZXVmeioKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IERvdWdsYXMgQWRhbXMgaXN0IHRvdCAoRGFyaWEsIDE1LiBNYWkgMjAwMSwgMjA6MjE6MTYpOgp+IyEgcm49RGFyaWEgcnQ9OTg5OTUwODIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5OTI5Njk2ClJhZXRzZWwgdW0uLi4gaGFzdCBkdSB2ZXJnZXNzZW4uIE1pdCBEaWFuYSB1bmQgU3R1cHMgdW5kIFJvYmVydC4KRGFyaWEgbGllYnRlIGRpZXNlIEJ1ZWNoZXIgYXVjaC4gCihBYmVyIEthZXN0bmVyIHdhciBmYXN0IG5vY2ggYmVzc2VyLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBEb3VnbGFzIEFkYW1zIGlzdCB0b3QgKEdyaW1tYm9ybiwgMTUuIE1haSAyMDAxLCAyMDoyMToyMik6Cn4jISBybj1EYXJpYSBydD05ODk5NTA4MjAgcmc9c2NobWFycm4KfiMhIHRpZD05ODk5Mjk2OTYKTmVpbiwgaGFiZSBpY2ggbmljaHQgdmVyZ2Vzc2VuLCBkaWUgaGFiIGljaCBsZWRpZ2xpY2ggbmljaHQgc29uZGVybGljaAppbnRlbnNpdiBnZWxlc2VuLgpLZW5udCBlaWdlbnRsaWNoIG5vY2ggamVtYW5kIGF1c3NlciBtaXIgZGllc2UgZ2FuemVuIE1hcmsgQnJhbmRpcyBCdWVjaGVyLCBzbwplaW5lIEFydCBTY2llbmNlIEZpY3Rpb24gbmljaHQgYWxsenUgd2VpdCBpbiBkZXIgWnVrdW5mdCBpaXJjPyBHaWJ0cyBkaWUgbm9jaD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IERvdWdsYXMgQWRhbXMgaXN0IHRvdCAoRGFyaWEsIDE1LiBNYWkgMjAwMSwgMjA6MjE6NTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4OTk1MDg4MiByZz1zY2htYXJybgp+IyEgdGlkPTk4OTkyOTY5NgpBbWF6b24gc29sbHRlIGRhcyB3aXNzZW4uLi4KRGFyaWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBEb3VnbGFzIEFkYW1zIGlzdCB0b3QgKFpvb2ssIDE1LiBNYWkgMjAwMSwgMjA6NDk6NDQpOgp+IyEgcm49RGFyaWEgcnQ9OTg5OTUwOTE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5OTI5Njk2CldhcyBnaWJ0cyBkZW5uIGhpZXIgZnVlciBSZV4xMDA/Cgpab29rLAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IERvdWdsYXMgQWRhbXMgaXN0IHRvdCAoR3JpbW1ib3JuLCAxNS4gTWFpIDIwMDEsIDIwOjUwOjM3KToKfiMhIHJuPVpvb2sgcnQ9OTg5OTUyNTg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5OTI5Njk2CkVpbiB2b24gbWlyIGhvZWNoc3RwZXJzb2VubGljaCBnZXNjaHJpZWJlbmVzIFJlXjEwMS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IERvdWdsYXMgQWRhbXMgaXN0IHRvdCAoTW9udGFudXMsIDE1LiBNYWkgMjAwMSwgMjA6NTE6MzEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4OTk1MjYzNyByZz1zY2htYXJybgp+IyEgdGlkPTk4OTkyOTY5NgpIYXQgbmljaHQgamVtYW5kIGVpbiBuZXR0ZXMgSnVnZW5kYnVjaCBhdXMgZGVuIG9iZW4gYmVzY2hyaWViZW5lbiBLYXRlZ29yaWVuCmFscyBQcmVpcyBhbnp1YmlldGVuPyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBEb3VnbGFzIEFkYW1zIGlzdCB0b3QgKFpvb2ssIDE1LiBNYWkgMjAwMSwgMjA6NTM6MDgpOgp+IyEgcm49TW9udGFudXMgcnQ9OTg5OTUyNjkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5OTI5Njk2Ck5laW4sIGljaCB3ZXJkZSBlcyBfbmljaHRfIG5hY2ggbWVnYXNjaG1hcnJuIHZlcmxlZ2VuLgoKWm9vayBncmluc3QgSmVtYW5kIGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3RhdGkgRGFybXN0YWR0IChIdW1uaSwgMTUuIE1haSAyMDAxLCAyMzowNTozMyk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTg5OTM3NjIzIHJnPXRyZWZmZW4KfiMhIHRpZD05ODk4NjU3MjEKCkRhIGljaCBnZXJhZGUgbWVpbmUgYWx0ZSBMaWViZSB6dSBkZW4gS2Fzc2V0dGVuIHdpZWRlcmdlZnVuZGVuIGhhYmU6CgpXZWlzcywgUm90LCBCbGF1IGlzdCByaWNodGlnLgoKPz8/IHJ1bGV6LCBpY2ggdWViZXJsZWcgZ2VyYWRlIG9iIG1hbiBkYXp1IG5pY2h0IG5lIFF1ZXN0IG1hY2hlbiBzb2xsdGUuLi4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IERvdWdsYXMgQWRhbXMgaXN0IHRvdCAoQmllbGVmZWxkLCAxNi4gTWFpIDIwMDEsIDAwOjMwOjMyKToKfiMhIHJuPVpvb2sgcnQ9OTg5OTUyNzg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5OTI5Njk2CmFwcm9wb3MuLi4gd2lldmllbCBCYWVuZGUgU2NocmVja2Vuc3RlaW4gZ2lidHMgZWlnZW50bGljaD8KCi1CaWVsZWZlbGQgKGhhdCBuYWNoIDI2IGtlaW5lIG1laHIgZ2VmdW5kZW4uLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFuYXRvbCwgMTYuIE1haSAyMDAxLCAwMTowODo1Nyk6CltaYXViZXJlcjpMbHlzdHJhdGhlXSBDcm9kbyB6ZWlndGUgZGFzIG5vZXRpZ2UgV2lzc2VuIHVuZCBLb2VubmVuIHVtIHZvbiBudW4KW1phdWJlcmVyOkxseXN0cmF0aGVdIGFuIGRlbiBUaXRlbCAnZGVyIFBydWVmdW5nc2Fud2FlcnRlcicgdHJhZ2VuIHp1IGR1ZXJmZW4uCltUb2Q6TGFyc10gRGllIEVyem1hZ2lzdHJhIExseXN0cmF0aGUgaGF0IGdlcmFkZSBDcm9kbyB1bWdlYnJhY2h0LgpbVG9kOkRpZSBFcnptYWdpc3RyYSBMbHlzdHJhdGhlXSBFdHdhcyBncm9lc3NlbndhaG5zaW5uaWcsIHdhcz8gU2ljaCBtaXQgZWluZXIKW1RvZDpEaWUgRXJ6bWFnaXN0cmEgTGx5c3RyYXRoZV0gRXJ6bWFnaXN0cmEgYW56dWxlZ2VuLi4uCgpHcm9lc3NlbndhaG5zaW5uPwpBbmF0b2wgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBEb3VnbGFzIEFkYW1zIGlzdCB0b3QgKEphbWVzb24sIDE2LiBNYWkgMjAwMSwgMDE6MDk6NTcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk4OTk1MDg4MiByZz1zY2htYXJybgp+IyEgdGlkPTk4OTkyOTY5NgpKYSBqYSBNYXJrIEJyYW5kaXMgOikgZGVuIGhhYiBpY2ggYXVjaCB2ZXJzY2hsdW5nZW4uIExlaWRlciBoYWIgaWNoIHNlbGJzdCBudXIKdmllciBkYXZvbiwgZGVyIFJlc3Qgd2FyIGF1c2dlbGllaGVuLgpVbmQgS2lraSBmYW5kIGljaCBhdWNoIHVudWViZXJ0cm9mZmVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuYSByYXQgbWFsLi4uIDspIChJbWRhLCAxNi4gTWFpIDIwMDEsIDEzOjQzOjA4KToKQW5keSBzYWd0OiBJbWRhLCB3aWVzbyBzY2hpZXNzdCBEdSBlaW5lbiBTYWV1cmVzdHJhaGwgYXVmIG1pY2g/IAoKRHVtcGZiYWNrZS4KCkltZGEuIElkbGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphdXMgbmV3cy4uLiAoUGF0cnluLCAxNi4gTWFpIDIwMDEsIDE1OjE1OjEwKToKVHlwIEE6IERlciA4MGVyLUphaHJlIEluZm9ybWF0aWtlciwgZGljayAod2VpbCBudXIgdm9ybSBSZWNobmVyIHNpdHplbmQKdW5kIGNoaXBzIGVzc2VuZCksIGxhbmdlLCBmZXR0aWdlIEhhYXJlLCBhdXNnZWxlaWVydGUgS2xhbW90dGVuLApnZW5pYWxlciBIYWNrZXIsIGRlciBtYWwgZWJlbiBpbiBBc3NlbWJsZXIgKG9kZXIgZ2xlaWNoIE1hc2NoaW5lbmNvZGUpCmVpbmUgM0QtQW5pbWF0aW9uIHphdWJlcnQsIGhhdCBhYmVyIGtlaW5lIEFobnVuZyB2b24gU29mdHdhcmUtRGVzaWduLAp2b24gT08gaGF0IGVyIG5vY2ggbml4IGdlaG9lcnQuIChTdWJ0eXAgKEExKTogTWVpbnQgc2ljaCBzb3ppYWwKZW5nYWdpZXJlbiB6dSBtdWVzc2VuIHVuZCBpc3QgZGFoZXIgc2VpdCAxNCBTZW1lc3Rlcm4gaW4gZGVyIEZhY2hzY2hhZnQKYWt0aXYgKGQuaC4gdHJpbmt0IGRvcnQgS2FmZmVlIDstKSkKClR5cCBCOiBEZXIgZXJzdCBzZWl0IGt1cnplbSBleGlzdGllcmVuZGUgVHlwLCBpZFIgSW5mb3JtYXRpay1TdHVkZW50IGltCmVyc3RlbiBTZW1lc3RlciwgZ3V0IGdla2xlaWRldCB1bmQgZ2VzdHlsZWQsIHNlaHIgc3RyYWlnaHQuIFdlaXNzLCBkYXNzCm1hbiBtaXQgIkluZm9ybWF0aWsiICh3YXMgYXVjaCBpbW1lciBkYXMgaXN0KSB6LlouIHZpZWwgS29obGUgbWFjaGVuCmthbm4uIEFiIGRlbSB6d2VpdGVuIFNlbWVzdGVyIG5pY2h0IG1laHIgYW56dXRyZWZmZW4sIHdlaWwgZXIgZW50d2VkZXIKaW4gZGllIEluZHVzdHJpZSBhbmJnZXdhbmRlcnQgaXN0LCBvZGVyIHZpZWwgd2FocnNjaGVpbmxpY2hlciwgd2VpbCBlcgpnZW1lcmt0IGhhdCwgZGFzcyBlcyBlaW5lIFNjaG5hcHNpZGVlIHdhciwgSW5mb3JtYXRpayB6dSBzdHVkaWVyZW4sIHVuZAphdWYgQldMIGdld2VjaHNlbHQgaGF0LgoKVHlwIEM6IERlciBwcmF4aXNmZXJuZSBBa2FkZW1pa2VyLCBiZXNjaGFlZnRpZ3Qgc2ljaCBlaWdlbnRsaWNoIG51ciBtaXQKdGhlb3JldGlzY2hlciBJbmZvcm1hdGlrLCAnQmVyZWNoZW5iYXJrZWl0JyBldGMuLi4gUHJvZ3JhbW1pZXJlbiwKU29mdHdhcmUtRGVzaWduIHVuZCBhbmRlcmUgRGluZ2UgZGVzIHNjaG5vZWRlbiBNYW1tb25zIHVlYmVybGFlc3N0IGVyCmFuZGVyZW4uIFdpcmQsIHdlbm4gbWFuIGlobSBpbiBkZXIgVW5pIHVlYmVyIGRlbiBXZWcgbGFldWZ0LCBpbW1lciBtaXQKZWluZW0gTWF0aGVtYXRpa2VyIHZlcndlY2hzZWx0LgoKVHlwIEQ6IERlciBqdW5nZSwgZHluYW1pc2NoZSwgc3BvcnRsaWNoZSwgaW5kaXZpZHVlbGxlIEluZm9ybWF0aWtlciwgZGVyCnNpY2ggZWlnZW50bGljaCBpbiBrZWluZSBkZXIgS2xhc3NlbiBlaW5vcmRuZW4gbGFlc3N0LgoKWnVnZWdlYmVuZXJtYXNzZW4gbmltbXQgR3J1cHBlIEQgKG5hY2ggQiBuYXR1ZXJsaWNoKSBpbiBsZXR6dGVyIFplaXQKZ2xhdWJlIGljaCwgemllbWxpY2ggenUuLi4KCkFjaHNvLCBhbGxlLCBkaWUgZGFzIGxlc2VuIGdlaG9lcmVuIG5hdHVlcmxpY2ggenUgKEQpLCBpY2ggd2lsbCBqYSBrZWluZW4KYmVsZWlkaWdlbiEgOi0pCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogRG91Z2xhcyBBZGFtcyBpc3QgdG90IChTbmlwZXIsIDE2LiBNYWkgMjAwMSwgMTU6NTc6MjQpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTk4OTk2NTgzMiByZz1zY2htYXJybgp+IyEgdGlkPTk4OTkyOTY5NgpJTUhPIDI3LCBmYWxscyBrZWluZSBuZXVlbiBkYXp1IGdla29tbWVuIHNpbmQuCgpTbmlwZXIsIGFsbGUgMjcgYmVzaXR6ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogRG91Z2xhcyBBZGFtcyBpc3QgdG90IChCaWVsZWZlbGQsIDE2LiBNYWkgMjAwMSwgMTY6MTI6MDcpOgp+IyEgcm49U25pcGVyIHJ0PTk5MDAyMTQ0NCByZz1zY2htYXJybgp+IyEgdGlkPTk4OTkyOTY5NgpTZWhyIGluZm9ybWF0aXY6CgpodHRwOi8vd3d3LmJ1cmctc2NocmVja2Vuc3RlaW4uZGUvCgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp2ZXJkYW1tdCBpbiBhbGxlIGV3aWdrZWl0IChHcmltbWJvcm4sIDE2LiBNYWkgMjAwMSwgMTc6Mzc6NDQpOgp+IyEgb249TWlrYWdlIG90PTk5MDAyNjY3MCBvZz1hbnplaWdlbgpbVG9kOkxhcnNdIFVuYmFlbmRpZ2VyLCBlaGVsaWNoZXIgSGFzcyBoYXQgZ2VyYWRlIEVsYWluZSB1bWdlYnJhY2h0LgpbVG9kOkxhcnNdIFVuYmFlbmRpZ2VyLCBlaGVsaWNoZXIgSGFzcyBoYXQgZ2VyYWRlIE1pa2FnZSB1bWdlYnJhY2h0LgpEdSBmYWVsbHN0IGluIE9obm1hY2h0LgouLi4Kd2FzIHNvbGwgbWFuIGRhenUgbm9jaCBzYWdlbj8gOm8pCkRhbmtlIE5vbm5lISBEYW5rZSBCdWRkaGEhIERhbmtlIGFuIGFuIGRpZSBsaWViZW4gRnJldW5kZSwgZGllIGtyYWVmdGlnCkVJTlNQUlVDSCBnZXNjaHJpZWVuIGhhYmVuIQoqTWlLYUdlKiwgRWxhaW5lIHd1ZXJnZW5kIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUb2xsZSBCYWxhbmNlIChOYWNodHdpbmQsIDE2LiBNYWkgMjAwMSwgMjE6MTI6NTIpOgp+IyEgb249TXl0aHJhbiBvdD05OTAwMzk2MjYgb2c9YmFsYW5jZQp+IyEgcm49TW9udGFudXMgcnQ9OTkwMDM5NTY5IHJnPWJhbGFuY2UKfiMhIHRpZD05OTAwMzg5NDAKQWxzIFRhbmppYW4gdGFuamluaWVyZSBpY2g/IE9kZXIgd2llIGhlaXNzdCBkYXMgZGFubj8KT2RlciBhbHMgTmV1dHJhbGVyIG5ldXRyYWxpc2llcmUgaWNoPwoKTXl0aHJhbiBtaXQgSWRlbnRpdGFldHNrcmlzZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IERvdWdsYXMgQWRhbXMgaXN0IHRvdCAoWmVwaHlyLCAxNi4gTWFpIDIwMDEsIDIzOjAyOjIyKToKfiMhIHJuPUphbWVzb24gcnQ9OTg5OTY4MTk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5OTI5Njk2CmR1bXBmdW5kZHVua2VsZHVtcGZ1bmRkdW5rZWwgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBEb3VnbGFzIEFkYW1zIGlzdCB0b3QgKE1vbnRhbnVzLCAxNi4gTWFpIDIwMDEsIDIzOjA0OjAxKToKfiMhIHJuPVplcGh5ciBydD05OTAwNDY5NDIgcmc9c2NobWFycm4KfiMhIHRpZD05ODk5Mjk2OTYKVGphLCBoZXV0enV0YWdlIHNjaG9ja3QgRXhwcmVzc3p1Z2dlc2NocmVpIGhhbHQga2VpbmVuIG1laHIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1pc3NpbmcgZGV0YWlscyAoRG90eiwgMTYuIE1haSAyMDAxLCAyMzoxOTo1OSk6Cgp1bnQgYXVmbWVya3NhbWtlaXQKVW50ZXJzdWNoIG1hbCBzaW5udm9sbGUgU2FjaGVuLgo6dW50IHNpbm52b2xsZSBzYWNoZW4KU293YXMgc2llaHN0IER1IGRhIG5pY2h0IQoKRGVyIGlkZWFsZSBSYXVtIGZ1ZXIgQW50aS1Gb3JzY2hlcjoga2VpbmUgd2ljaHRpZ2VuIERldGFpbHMuCkRvdHosIFdHCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIFpvb2xvZ2llIGZ1ZXIgRm9ydGdlc2Nocml0dGVuZSAoVmFybGFyaW9uLCAxNi4gTWFpIDIwMDEsIDIzOjQzOjE5KToKPiB1bnQgcGFwYWdlaQpFaW4gaHVlYnNjaGVyLCBncm9zc2VyLCBidW50ZXIgUGFwYWdlaSBtaXQgZWluZW0gcm90ZW4gU2NobmFiZWwuIEVyIGhlaXNzdApFc2tpbHNqdW5hIHVuZCBnZWhvZXJ0IEhhcmRpbC4KRXIgaXN0IGFic29sdXQgZml0IC0+IDEwMCUKRWluIEZyb3NjaCBoYXQgZWluZW4gQWJkcnVjayBpbiBGb3JtIGVpbmVzIFRvdGVua29wZnMgaW4gZGVyIFN0aXJuLgoKVmFybCosIGxlaWNodCB2ZXJ3aXJydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFydGlrZWwgWm9vbG9naWUgZnVlciBGb3J0Z2VzY2hyaXR0ZW5lIChNb250YW51cywgMTYuIE1haSAyMDAxLCAyMzo0NjoxMCk6Cn4jISBybj1WYXJsYXJpb24gcnQ9OTkwMDQ5Mzk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkwMDQ5Mzk5CkRhbmNlciBpc3Qgc2NodWxkLgoodW5kIFRpbGx5IGF1Y2gpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEcmFjbyBJbiBOb2V0ZW4uLi4gKFNvbG15ciwgMTcuIE1haSAyMDAxLCAwNDowMjowNCk6CiBGdWVyIGFsbGUsIGRpZSBuaWNodCBtb2VnZW4sIHdlbm4gQXJ0aWtlbCBrZWluZSBQb2ludGVuIGhhYmVuIChMeHh4eCwgZXRjLikKIGJpdHRlIHdlZ2hvZXJuIDopLi4uCgogW1RvZDpMYXJzXSBKb2hhbm5hIHZvbiBPcmxlYW5zIGhhdCBnZXJhZGUgRHJhY28gdW1nZWJyYWNodC4KIFtmaW5nZXIgZHJhY29dCiBEcmFjbyBpc3QgYW53ZXNlbmQsCiAuLi4KIEFsdGVyOiAzM2QgMDI6MzY6MTIsICAgU3BpZWxlcmxldmVsOiA0MCAoU2VoZXIpLCAgIEdpbGRlbmxldmVsOiAxMAogei5aLiBhYndlc2VuZCwgR3J1bmQgIDogTGV2ZWwgMTEgZXJyZWljaGVuIHVuZCBhbGxlIG1laW5lIFNwcnVlY2hlIChkaWUgaWNoCiBiaXMgZGFoaW4gaGFiZSAtIGZ1ZXIgVmFuaXIgKSBhdWYgYWJzb2x1dCBwZXJmZWt0IHVlYmVuLgoKIFtCZWlsZWlkOkh5cG9dIE9ISEhISEhICiBbQmVpbGVpZDpTb2xteXJdIEFlaCwgTG9MICEhIQogW0JlaWxlaWQ6U29sbXlyXSBMb2VzY2ggRGljaCwgRHJhY28hIExvZXNjaCBEaWNoIQoKU29sKiwgaW5oZXJpdCBMdWdzcHJ1ZWNoZS5jIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbnMncmUgc3Vlc3NlbiBTYW5kdGlnZXJjaGVuIDopIChTb2xteXIsIDE3LiBNYWkgMjAwMSwgMDU6NDM6MTEpOgogVW5kIGRlciBpc3QgYXVjaCBsZXNiYXIgZnVlciBMeHh4eCAobmVpbiwgaWNoIGhhYiBEaWNoIGxpZWIgKkcqKSBsZXNiYXIsCiBkYSBzdWVzcyA6KQoKIER1IGJpc3QgYW0gU3RhZHR0b3Igdm9uIFBvcnQgVmFpbi4KIER1IHNpZWhzdDoKIEVpbiBTYW5kdGlnZXIuCiBFaW5lIFNhbmR0aWdlcmluLgogRWluIFNhbmR0aWdlcmtpbmQuCiBFaW4gbWFnaXNjaGVzIFBvcnRhbC4KIEh5cG9iYW5rIGRlciBudWVjaHRlcm5lIEFuZmFlbmdlci4KClNvbCosIGF1Y2ggZWluZSBGYW1pbGllIHdvbGxlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3RlbGxlbmFuZ2Vib3QgKEdsb2luc29uLCAxNy4gTWFpIDIwMDEsIDEzOjI5OjAyKToKfiMhIHJuPVNvbG15ciBydD05OTAwOTg0Njggcmc9YW56ZWlnZW4KfiMhIHRpZD05OTAwOTUyMDAKSG0uIFNvbG15cnMgYWx0ZXIgZWdvIHdpcmQgVmxhbmQtRGV0YWlsLU1hZ2llcj8gV2llIHdhciBkYXMgbWl0IFJlZ2VuIHVuZApUcmF1ZmU/IEljaCBnbGF1YmUsIFJlZ2VuIHVuZCBPemVhbiAuLi4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFuZHkgaW4gQWN0aW9uIDspIChKYXNtaW4sIDE3LiBNYWkgMjAwMSwgMTM6MzE6MzgpOgpBbmR5IHNhZ3Q6IEphc21pbixiaXMgamV0enQgaGF0dGUgaWNoIG5pY2h0IHNvIG1pdCBmcmF1ZW4sIHdlaWwKQW5keSBzYWd0OiBpY2ggemllbWxpY2ggc2NodWVjaHRlcm4gYmluLi4uCkFuZHkgc2FndDogYWJlciBqZXR6dCBiaW4gaWNoIGF1ZiBkZW4gZ2VzY2htYWNrIGdla29tbWVuLgpCZW5kYWlnYSBFZ2lkIGtvbW10IGFuLgpCZW5kYWlnYSBFZ2lkIGdyZWlmdCBEaWNoIG1pdCBkZW0gWndlaWxpbGllbiBhbi4KQmVuZGFpZ2EgRWdpZCB2ZXJmZWhsdCBEaWNoLgpCZW5kYWlnYSBFZ2lkIGdlaHQgbmFjaCBTdWVkZW4uCkR1IHZlcmZvbGdzdCBqZXR6dCBCZW5kYWlnYSBFZ2lkLgpCZW5kYWlnYSBFZ2lkIGtvbW10IGFuLgpEZXIgVm9sbHN0cmVja2VyIHNjaGxhZWd0IG1pdCBncm9lc3N0ZXIgRnJldWRlIGJlc29uZGVycyBrcmFlZnRpZyBhdWYKRGVpbmVuIEdlZ25lciBlaW4sIGFscyBlciBtZXJrdCwgZGFzcyBkaWVzZXIga3VyeiB2b3JtIEVuZGUgc3RlaHQhCkR1IGdyZWlmc3QgQmVuZGFpZ2EgRWdpZCBtaXQgZGVtIFZvbGxzdHJlY2tlciBhbi4KRHUgemVyc2NobWV0dGVyc3QgQmVuZGFpZ2EgRWdpZCBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KQmVuZGFpZ2EgRWdpZCBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW5lIExlaWNoZSB3aXJkIHZvbiBBbmR5IHZvbGwgSGluZ2VidW5nIHZlcnNwZWlzdC4KQW5keSBuaW1tdCBkYXMgQ2FubmFiaXMtVC1TaGlydC4KQW5keSBuaW1tdCBkYXMgU2Nod2VydC4KQW5keSBuaW1tdCBkZW4gRmxhbW1lbnBhbnplci4KQW5keSBuaW1tdCBkYXMgUGFhciBDaGFvc2hhbmRzY2h1aGUuCkFuZHkgbmltbXQgZGVuIE1ldGFsbGhlbG0uCkFuZHkgbmltbXQgZGllIEt1dHRlLgpBbmR5IG5pbW10IGRhcyBQYWFyIEJlaW5zY2hpZW5lbi4KQW5keSBuaW1tdCBkZW4gTWV0YWxsaGVsbS4KQW5keSBuaW1tdCBkaWUgTW9lbmNoc3JvYmUuCkFuZHkgbmltbXQgZGVuIEhvbHpzY2hpbGQuCkFuZHkgbmltbXQgZGVuIFVtaGFuZy4KQW5keSBuaW1tdCBTdGllZmVsLgpBbmR5IG5pbW10IGRhcyBBbXVsZXR0LgpBbmR5IG5pbW10IGRhcyBQYWFyIEJlaW5zY2hpZW5lbi4KQW5keSBuaW1tdCBkaWUgRHVua2VsbWFnaWVydWVzdHVuZy4KQW5keSBuaW1tdCBkZW4gUml0dGVyaGVsbS4KQW5keSBuaW1tdCBkYXMgRmV1ZXJzY2h3ZXJ0LgpBbmR5IG5pbW10IExlZGVyc3RpZWZlbC4KQW5keSBuaW1tdCBkaWUgU3BydWVoZG9zZS4KQW5keSBuaW1tdCBkYXMgQW11bGV0dC4KQW5keSBuaW1tdCBkaWUgRHVua2VsbWFnaWVydWVzdHVuZy4KQW5keSBuaW1tdCBkaWUgS3V0dGUuCkFuZHkgbmltbXQgU3RpZWZlbC4KQW5keSBuaW1tdCA0NjgzMSBNdWVuemVuLgpBbmR5IHppZWh0IFN0aWVmZWwgYW4uCkFuZHkgemllaHQgZWluZSBLdXR0ZSBhbi4KQW5keSB6aWVodCBlaW5lIER1bmtlbG1hZ2llcnVlc3R1bmcgYW4uCkFuZHkgemllaHQgZWluIEFtdWxldHQgYW4uCkFuZHkgemllaHQgZWluZW4gUml0dGVyaGVsbSBhbi4KQW5keSB6aWVodCBlaW5lbiBIb2x6c2NoaWxkIGFuLgpBbmR5IHppZWh0IGVpbiBQYWFyIEJlaW5zY2hpZW5lbiBhbi4KQW5keSB6dWVja3QgZWluIEt1cnpzY2h3ZXJ0LgpBbmR5IHN0ZWNrdCBlaW4gS3VyenNjaHdlcnQgenVydWVjay4KQW5keSB6dWVja3QgZWluIEtyaWVnc2JlaWwuCkFuZHkgc3RlY2t0IGVpbiBLcmllZ3NiZWlsIHp1cnVlY2suCkFuZHkgenVlY2t0IGVpbmVuIFNwZWVyLgpBbmR5IHN0ZWNrdCBlaW5lbiBTcGVlciB6dXJ1ZWNrLjs+QW5keSBncnVlc3N0IEJlbmRhaWdhIEVnaWQuOz5BbmR5IGdydWVzc3QKQmVuZGFpZ2EgRWdpZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFuZHkgaW4gQWN0aW9uIChKYXNtaW4sIDE3LiBNYWkgMjAwMSwgMTM6MzI6NDgpOgpNYW4gYmVhY2h0ZSBiZXNvbmRlcnMgd2llIGxpZWJldm9sbCBlciBuYWNoaGVyIGRpZSB6dXZvciBnZWZyZXNzZW5lIExlaWNoZQpnbGVpY2ggMiBtYWwgZ3J1ZXNzdCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3RlbGxlbmFuZ2Vib3QgKFNvbG15ciwgMTcuIE1haSAyMDAxLCAxMzo0MToxMCk6Cn4jISBybj1HbG9pbnNvbiBydD05OTAwOTg5NDIgcmc9c2NobWFycm4KfiMhIHRpZD05OTAwOTUyMDAKSG1tLCBpY2ggZ2xhdWJlLCBkYXMgaGFzdCBEdSBub2NoIG5pY2h0IHNvIHJlY2h0IHZlcnN0YW5kZW4gR2xvaW5zb24gOikKRXJmdWVsbHQgU3VibGltZSBkaWUgS3JpdGVyaWUgJ0xQQyBLZW5udG5pc3NlJyBhdXNyZWljaGVuZD8gTmVpbi4uLnNvbWl0CmlzdCBkYXMgZ2FuemUgRGluZyBoaW5mYWVsbGlnIDopCgpHcnVzcyBTb2wqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTdGVsbGVuYW5nZWJvdCAoVmFybGFyaW9uLCAxNy4gTWFpIDIwMDEsIDE1OjAxOjAwKToKfiMhIHJuPVNvbG15ciBydD05OTAwOTk2NzAgcmc9c2NobWFycm4KfiMhIHRpZD05OTAwOTUyMDAKSmEgamEsIGpldHp0IHJhdXNyZWRlbiA7KSBTb28gc2Nod2VyIGlzdCBBZGREZXRhaWwgYXVjaCBuZXQKClZhcmwqLCBoZXV0ZSBnZW1laW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFN0ZWxsZW5hbmdlYm90IChXdXJ6ZWwsIDE3LiBNYWkgMjAwMSwgMTU6MDQ6NTMpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTk5MDEwNDQ2MCByZz1zY2htYXJybgp+IyEgdGlkPTk5MDA5NTIwMApuZWluLCBlaW4gQWRkRGV0YWlsIGlzdCByZWNodCBlaW5mYWNoLiBzbyBsYW5nZSBlcyBudXIgZWlucyBpc3QsIGtlaW4KcHJvYmxlbS4uLgoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTdGVsbGVuYW5nZWJvdCAoUGF0cnluLCAxNy4gTWFpIDIwMDEsIDE1OjQ2OjEzKToKfiMhIHJuPVd1cnplbCBydD05OTAxMDQ2OTMgcmc9c2NobWFycm4KfiMhIHRpZD05OTAwOTUyMDAKd2llIHdhZXJlIGVzIG1pdCBBZGRSYW5kb21EZXRhaWwoKS4uLndhZXJlIGVjaHQgbmUgbGliLXZlcmJlc3NlcnVuZyA6KQplaW4gZm9yKGludCBpPTEwMDtpLS07KUFkZFJhbmRvbURldGFpbCgpIGtvZW5udGUgbWFuIGRhbm4gYXVjaCBpbiBzdGQvcm9vbQphdWZuZWhtZW4gOykKCi0tLS0tLQpwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgVW5iZWthbm50ZSBCaWVybWFya2U/IChEb3R6LCAxNy4gTWFpIDIwMDEsIDIyOjI4OjIxKToKS2FyaXMgcnVmdDogTElhYWFhYWFyYWEgOikKSXJnZW5kd29oZXIgZXJ0b2VuZW4gbGF1dGUgUnVmZSBuYWNoIG1laHIgQmllci4KCk5hY2ggd2FzIGRhcyB3b2hsIHNjaG1lY2t0PwpEb3R6LCBXRwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJvc2NoZ2VpIChaZXBoeXIsIDE3LiBNYWkgMjAwMSwgMjI6NTQ6MjMpOgpIYXJkaWwgd2VpbHQgd2llZGVyIHVudGVyIGRlbiBMZWJlbmRlbi4KRWluIEZyb3NjaCBmbGF0dGVydCBoZXJlaW4uCkVza2lsc2p1bmEga3JhZWNoenQ6IC4uLiBrcnJyb29vYWFhIC4uLiBIYWxsbyBUaWxseSwgRmlyZWhhd2sgdW5kIFplcGh5ciAuLi4gClRpbGx5IGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guClRpbGx5IHNhZ3Q6IFNvbGwgaWNoIG1hbCBkZW4gUGFwYWdlaWVuIHJlcGFyaWVyZW4/CkVza2lsc2p1bmEga3JhZWNoenQ6IC4uLiBUaWxseSByZWRldCBudXIgTXVlbGwgLi4uIGtycm9vb2FhYWEgLi4uIG51ciBNdWVsbApIYXJkaWwgZ3JpbnN0LgpEdSBzYWdzdDogZGVyIFBhcGFnZWkgd2lsbCB3b2hsIG5pY2h0IDspCkVza2lsc2p1bmEga3JhZWNoenQ6IEVza2lsc2p1bmEgaXN0IGRhIGFuZGVyZXIgTWVpbnVuZywgWmVwaHlyIC4uLiBrcnJyb29hYWEKVGlsbHkga3JhdHp0IHNpY2ggYW0gS29wcC4KRHUgc2Fnc3Q6IHdhcyBkZW5uIG51PwpUaWxseSBzYWd0OiBXYXMgZGVubiBudT8KRXNraWxzanVuYSBrcmFlY2h6dDogLi4uIFdhcyBkZW5uIG51PyAuLi4ga3Jyb29vYWFhISAKRXNraWxzanVuYSBrcmFlY2h6dDogLi4uIGlyZ2VuZHdpZSBrbGFyIDopIC4uLiBpcmdlbmR3aWUga2xhciA6KSAuLi4gClplcGh5ciBmaW5kZXQgZGFzIGdhciBuaWNodCBrbGFyLgpUaWxseSBuaWNrdCBEaXIgenUuCgpDNCwgdmVyd2lycnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFRvbGxlIEJhbGFuY2UgKEFuYXRvbCwgMTcuIE1haSAyMDAxLCAyMzowMToyMik6Cn4jISBybj1QZXJpc2hhbiBydD05OTAxMzMyMzggcmc9YmFsYW5jZQp+IyEgdGlkPTk5MDAzODk0MApBbmFjKiwgRHUgYmlzdCBlaW4gUGZ1c2Noa29wcCA7KQoKQW5hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJrIHVuZCBzZWluZSBSZWltZS4uLiAoQW1hcnlsbGlzLCAxNy4gTWFpIDIwMDEsIDIzOjIyOjQ0KToKR2VyYWRlIG1hbCB3aWVkZXIgbmVuIEFyay1UZXN0aWUgYWJnZXJhdWNodCwgbWl0IGVpbmVyIHR5cGlzY2gtYXJrJ3NjaGVuCkxhcnMtTWVsZHVuZyA6LSkKRWluZSBCZXNjaHdlcmRlIHVlYmVyIFJoeXRobWlrIHVuZCBWZXJzbWFzcyBlcmJyYWNodGUgZm9sZ2VuZGVzOgoKRGVydHMgdGVpbHQgRGlyIG1pdDogZGFzIGlzdCBlYmVuIHByb3NhcmVpbSA6KQoKYWhhLi4uCgpEZXJ0cyB0ZWlsdCBEaXIgbWl0OiBsaWVzIGVzIGxhbmdzYW0gdW5kIG1pdCBiZWRhY2h0LCBkYW5uIGF1Y2ggZGVyIHJlaW0gc2VpbgpEZXJ0cyB0ZWlsdCBEaXIgbWl0OiBrbGFuZyBlbnRmYWNodCA6KQoKQW1hKiwgbGF1dCBzY2hyZWllbmQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBcmsgdW5kIHNlaW5lIFJlaW1lLi4uIChQZXJpc2hhbiwgMTcuIE1haSAyMDAxLCAyMzozODo1OSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9OTkwMTM0NTY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkwMTM0NTY0ClNjaHJlaSBuaWNodCBzbyBsYXV0LiBBcmtyZWltZSBpbiAKQW1hZ2ViaWV0ZW4gZ2VmYWxsZW4gbWlyIHdlbmlnZXIgYWxzIGRpZSBpbiBBcmtnZWJpZXRlbiAuLiBpbiBsZXR6dGVyZW4gd2Vpc3MKaWNoLCBkYXNzIHNpZSBrb21tZW4gOy0pCgpBbmEoYykqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVG9sbGUgQmFsYW5jZSAoQ2F0d2VhemxlLCAxOC4gTWFpIDIwMDEsIDA4OjA1OjEyKToKfiMhIG9uPUdvciBvdD05OTAxMzE5NDAgb2c9YmFsYW5jZQp+IyEgcm49U3RhcmZpcmUgcnQ9OTkwMDM4OTQwIHJnPWJhbGFuY2UKfiMhIHRpZD05OTAwMzg5NDAKQXJ0aWtlbCBuYWNoIFNjaG1hcnJuIHZlcnNjaGllYmVuIHVuZCB6d2VpdGVucyBhdXMgZGVyIEtrcmllZ2VyZ2lsZGUKYXVzdHJldGVuLiBEYSBpcyBuZSBBbmZhZW5nZXJnaWxkZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVG9sbGUgQmFsYW5jZSAoQ2F0d2VhemxlLCAxOC4gTWFpIDIwMDEsIDA4OjA1OjE2KToKfiMhIG9uPVZhbmlvbiBvdD05OTAxMzMwNzggb2c9YmFsYW5jZQp+IyEgcm49R29yIHJ0PTk5MDEzMTk0MCByZz1iYWxhbmNlCn4jISB0aWQ9OTkwMDM4OTQwClYqIGxhZXNzdCBzaWNoIG1hbmNobWFsIGhpbnJlaXNzZW4gLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUb2xsZSBCYWxhbmNlIChDYXR3ZWF6bGUsIDE4LiBNYWkgMjAwMSwgMDg6MDU6MTgpOgp+IyEgb249UGVyaXNoYW4gb3Q9OTkwMTMzMTQ0IG9nPWJhbGFuY2UKfiMhIHJuPVZhbmlvbiBydD05OTAxMzMwNzggcmc9YmFsYW5jZQp+IyEgdGlkPTk5MDAzODk0MApBYmVudGV1cmVyIHVuZCBGZWxpbmVuIG9mZmVuc2ljaHRsaWNoIC4uLiA7LSkgCgpXZXIgd3VlcmRlIHNvd2FzIHNjaG9uIGFuIGRlciBMZXJua3VydmUgZmVzdG1hY2hlbiA7LSkKCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUb2xsZSBCYWxhbmNlIChDYXR3ZWF6bGUsIDE4LiBNYWkgMjAwMSwgMDg6MDU6MjIpOgp+IyEgb249QW1hcnlsbGlzIG90PTk5MDEzMzE5OCBvZz1iYWxhbmNlCn4jISBybj1WYW5pb24gcnQ9OTkwMTMzMDc4IHJnPWJhbGFuY2UKfiMhIHRpZD05OTAwMzg5NDAKaWNoIHd1ZXJkZSB2b3JzY2hsYWdlbiwgaWhyIGVpbmlndCBFdWNoIG1hbCBhdWYgVmFyKiB1bmQgVmFuKi4uLiA6KQoKQW1hKiwgbmljaHQgenUgdmVyd2VjaHNlbG4gbWl0IEFuYSogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRvbGxlIEJhbGFuY2UgKENhdHdlYXpsZSwgMTguIE1haSAyMDAxLCAwODowNToyNCk6Cn4jISBvbj1QZXJpc2hhbiBvdD05OTAxMzMyMzggb2c9YmFsYW5jZQp+IyEgcm49QW1hcnlsbGlzIHJ0PTk5MDEzMzE5OCByZz1iYWxhbmNlCn4jISB0aWQ9OTkwMDM4OTQwCkhtbS4gPwoKCkFuYSogbmljaHQgenUgdmVyd2VjaHNlbG4gbWl0IEFtYSogb2RlciBBbmF0KiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFRvbGxlIEJhbGFuY2UgKENhdHdlYXpsZSwgMTguIE1haSAyMDAxLCAwODowNToyNik6Cn4jISBvbj1Nb250YW51cyBvdD05OTAxMzMyNzIgb2c9YmFsYW5jZQp+IyEgcm49UGVyaXNoYW4gcnQ9OTkwMTMzMjM4IHJnPWJhbGFuY2UKfiMhIHRpZD05OTAwMzg5NDAKQWNoLCB3ZXIgRmFuYXRnaGlybyB1bmQgRmFudGFib3kgYXVzZWluYW5kZXJoYWx0ZW4ga2FubiwgZGVyIGthbm4gYXVjaCBQYWQqCnVuZCBBbmEqIHVuZCBWKi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFRvbGxlIEJhbGFuY2UgKENhdHdlYXpsZSwgMTguIE1haSAyMDAxLCAwODowNTozMCk6Cn4jISBvbj1BbWFyeWxsaXMgb3Q9OTkwMTMzMjk2IG9nPWJhbGFuY2UKfiMhIHJuPVBlcmlzaGFuIHJ0PTk5MDEzMzIzOCByZz1iYWxhbmNlCn4jISB0aWQ9OTkwMDM4OTQwCmljaCBkYWNodGUgRHUgYmlzdCBBbmFfY18qID8KCm9kZXIgUGVyaSosIG5pY2h0IHp1IHZlcndlY2hzZWxuIG1pdCBQZXJ0aSogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh5ZHJhLVBob2JpZSA6KSAoU29sbXlyLCAxOC4gTWFpIDIwMDEsIDA5OjM3OjM2KToKIFtTZWhlcjpLYXNwYXJdIHdhbm4gd2FyIGRpZSBsZXR6dGUgaHlkcmEgZGE/OikKIERpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgogW1NlaGVyOlZhcmRpb25dIGVpbmUgaHlkcmEgd2llIGJlc3RlbGx0Li4KClNvbCosIGtpY2hlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogamEgd2FzIGRlbm4gbm9jaCAuLiAoTGlhcmEsIDE4LiBNYWkgMjAwMSwgMTM6MzE6MzcpOgp+IyEgcm49S2llc2Vsc3RlaW4gcnQ9OTkwMTczMDc0IHJnPWJhbGFuY2UKfiMhIHRpZD05OTAxNzMwNzQKSWNoIGJpbiBkYWZ1ZXIsIGRhc3MgbWFuICBkaWUgTGV1dGUgaGllciBudXIgbm9jaCBtaXQgc2VpbmVtIEVyc3RpZQpiZXNjaGltcGZlbiBkYXJmLiA7LSkKCkxaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGphIHdhcyBkZW5uIG5vY2ggLi4gKExpYXJhLCAxOC4gTWFpIDIwMDEsIDEzOjMzOjI5KToKfiMhIHJuPUxpYXJhIHJ0PTk5MDE4NTQ5NyByZz1zY2htYXJybgp+IyEgdGlkPTk5MDE3MzA3NApOYWNodHJhZzogLi4uIHNvbnN0IHZlcndhZXNzZXJuIGRpZSBGZWluZGJpbGRlciBzby4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBqYSB3YXMgZGVubiBub2NoIC4uIChMaWFyYSwgMTguIE1haSAyMDAxLCAxMzozNjo1NSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTk5MDE3NzU4MCByZz1iYWxhbmNlCn4jISB0aWQ9OTkwMTczMDc0CkhpbGZlIQoKTFosIGtsYW1tZXJ0IHNpY2ggdmVyendlaWZlbHQgYW4gaWhyZW0gV2VsdGJpbGQgZmVzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogamEgd2FzIGRlbm4gbm9jaCAuLiAoR2xvaW5zb24sIDE4LiBNYWkgMjAwMSwgMTM6NDE6NTcpOgp+IyEgcm49TW9yZ290aCBydD05OTAxNzc1ODAgcmc9YmFsYW5jZQp+IyEgdGlkPTk5MDE3MzA3NApEYXNzIER1IGFuIGRpdmVyc2VuIFN0ZWxsZW4gd2VpY2hlIGdld29yZGVuIGJpc3QgaGFiIGljaCBtaXIgc2Nob24gZXJ6YWVobGVuCmxhc3NlbiwgZGFzIG1pdCBkZW0gYWx0IHdlcmQgaWNoIGF1Y2ggbmljaHQgYmVzdHJlaXRlbiwgYWJlciBkYXNzIER1CmFicnVlc3Rlc3QgaGFsdGUgaWNoIGZ1ZXIgZWluIGhpbnRlcmhhZWx0aWdlcyBHZXJ1ZWNodCwgbWl0IGRlbSBEdSBudXIgdm9uCkRlaW5lbiBuZXVlbiBmaWVzZW4gRm9sdGVyaW5zdHJ1bWVudGVuIGZ1ZXIgYXJtZSBnZXBsYWd0ZSBOUENzIGFibGVua2VuCndpbGxzdC4gRXJ3aXNjaHQhCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0b2xsZXMgZmxhbWUgKFBhdHJ5biwgMTguIE1haSAyMDAxLCAxNDo1OTowMCk6CmdyYWQgZ2VmdW5kZW4uLi5zbyBtdXNzIG1hbiBmbGFtZW4gOykKCi0tLQpXZXIgb2RlciB3YXMgaXN0IGVpZ2VudGxpY2ggZWluZSBNZXJrYmVmcmVpdW5nPyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKRGllIGVpbnppZyBlY2h0ZSBNZXJrYmVmcmVpdW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkRpZSBuYWNoc3RlaGVuZCBlaW5kZXV0aWcgaWRlbnRpZml6aWVydGUgTGViZW5zZm9ybSAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApOYW1lICAgICAgICAgICAgICAgICA6ID8/PwpWb3JuYW1lICAgICAgICAgICAgICA6ID8/PwpHZWJ1cnRzZGF0dW0gICAgICAgICA6IF9fX19fX19fX18gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKR2VidXJ0c29ydCAgICAgICAgICAgOiBfX19fX19fX19fX19fX19fX19fXyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgClBlcnNvbmFsYXVzd2Vpc251bW1lcjogX19fX19fX19fX19fX19fX19fX18gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAppc3QgaGllcm1pdCBmdWVyIGRlbiBaZWl0cmF1bSB2b24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICBbX10gIDYgTW9uYXRlbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICBbX10gMTIgTW9uYXRlbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICBbX10gMjQgTW9uYXRlbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICBbeF0gdW5iZWZyaXN0ZXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKZGF2b24gYmVmcmVpdCwgZXR3YXMgenUgbWVya2VuLCBkLmguIHdlc2VudGxpY2hlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgClZlcmhhbHRlbnNhZW5kZXJ1bmdlbiBiZWkgZGVyIEludGVyYWt0aW9uIG1pdCBkZW5rZW5kZW4gV2VzZW4genUgICAgICAgICAgICAgIAp6ZWlnZW4uIERpZSBFaW5zdHVmdW5nIGRlciBvLmEuIFBlcnNvbiBuYWNoIGRlbSBhbXRsaWNoZW4gSW5kZXggICAgICAgICAgICAgICAKZnVlciBNZXJrYmVmcmVpdW5nZW4gbGllZ3QgYmVpIGRlbSBBZXF1aXZhbGVudCB2b24gICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgW19dIGVpbmVtIE1lbnNhZXNzZW4gdm9tIFZvcnRhZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgW19dIGRyZWkgSGFydGtla3NlbiBpbiBsb2VzbGljaGVtIEthZmZlZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgW19dIGVpbmVyIEtpc3RlIFNjaHdhcnpicm90IGluIERvc2VuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgW3hdIGVpbmVtIFF1YWRyYXRtZXRlcnN0dWVjayBUb3JmbW9vcyB3YWVocmVuZCBlaW5lciAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgIHNlY2hzd29lY2hpZ2VuIFNvbW1lcmR1ZXJyZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgW19dIGVpbmVtIENvbnRhaW5lciBlcm9kaWVydGVtIFNhbmRzdGVpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgIChTdHJldXNhbmRxdWFsaXRhZXQpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkRpZSBhdXNnZXNwcm9jaGVuZSBNZXJrYmVmcmVpdW5nIGVybGlzY2h0IG1pdCBkZW0gQWJsYXVmIGRlcyAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgIFtfXSBfXy5fXy4xOV9fICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgIFtfXSBfXy5fXy4yMF9fICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgIFt4XSBkZXIgdm9sbHN0YWVuZGlnZW4gRXJvc2lvbiBkZXIga29lcnBlcmxpY2hlbiAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICBCZXN0YW5kdGVpbGUgZGVyIG8uYS4gTGViZW5zZm9ybSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAp1bmQgZ2lsdCwgc29mZXJuIGRpZSBvLmEuIExlYmVuc2Zvcm0gZHVyY2ggZGFzIG5hY2hzdGVoZW5kZSAgICAgICAgICAgICAgICAgICAKS2VubnplaWNoZW4gYWxzIG1lcmtiZWZyZWl0IHp1IGlkZW50aWZpemllcmVuIGlzdDogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgW19dIGVpbmUgcm90ZSBQbGFzdGlrbmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgW19dIG9saXZlcyBTdG9mZnN0dWVjayBtaXQgd2Vpc3NlbSBSYW5kLCBhdWYgZGVyIFNjaHVsdGVyICAgICAgICAgICAgCiAgICAgICAgICAgIHp1IHRyYWdlbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgW3hdIGRpZSBMZWJlbnNmb3JtIGlzdCBkdXJjaCBkZW4gR2VzaWNodHNhdXNkcnVjayAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgIHp3ZWlmZWxzZnJlaSBhbHMgdW5iZWZyaXN0ZXQgbWVya2JlZnJlaXQgenUgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgIGVya2VubmVuLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkRpZSBvLmEuIExlYmVuc2Zvcm0gaXN0IGR1cmNoIGRlbiBFcndlcmIgZGllc2VzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApNZXJrYmVmcmVpdW5nc3NjaGVpbnMgYXV0b21hdGlzY2ggZnVlciBkaWUgZm9sZ2VuZGVuIFRhZXRpZ2tlaXRlbiAgICAgICAgICAgICAKcXVhbGlmaXppZXJ0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgW19dIE1hcmtpZXJ1bmdzaHVldGNoZW4gYmVpIEFibWFya2llcnVuZ3NhcmJlaXRlbiBhdWYgICAgICAgICAgICAgICAgCiAgICAgICAgICAgIEJ1bmRlc2F1dG9iYWhuZW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgW19dIEdhcmRlcm9iZW5zdGFlbmRlciB1bmQgUmVnZW5zY2hpcm1zdGFlbmRlciBpbiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgIFJlc3RhdXJhbnRzIGJpcyB6dSwgYWJlciBuaWNodCBlaW5nZXNjaGxvc3NlbiwgMyAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgIFN0ZXJuZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgW3hdIFJlZ2Vsc3RhYiBpbiBTY2h3ZXJ3YXNzZXJyZWFrdG9yZW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgW19dIE1hcmtpZXJ1bmdzc3RhYiBmdWVyIGRhcyBGYWhyd2Fzc2VyIGltIE5hdGlvbmFscGFyayAgICAgICAgICAgICAgCiAgICAgICAgICAgIFdhdHRlbm1lZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgW19dIExhbmRzY2hhZnRzbWVya21hbC9PcmllbnRpZXJ1bmdzaGlsZmUgaW4gZGVyIFd1ZXN0ZSAgICAgICAgICAgICAgCiAgICAgICAgICAgIEdvYmkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkRpZSBNZXJrYmVmcmVpdW5nIGZ1ZXIgZGllIG8uYS4gTGViZW5zZm9ybSB3dXJkZSBpbiBlaW5lbSAgICAgICAgICAgICAgICAgICAgIApvZWZmZW50bGljaGVuIE1lcmtiZWZyZWl1bmdzdmVyZmFocmVuIGF1c2dlc3Byb2NoZW4gdW5kIGlzdCBuYWNoICAgICAgICAgICAgICAKQWJsYXVmIGRlciBFaW5zcHJ1Y2hzZnJpc3Qgdm9uIDE3IFNla3VuZGVuIHJlY2h0c2tyYWVmdGlnLiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkRhdHVtICAgICAgICAgVW50ZXJzY2hyaWZ0ICBEaWVuc3RzaWVnZWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApTdGlybmFiZHJ1Y2sgZGVzIE1lcmtiZWZyZWl0ZW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKRGllc2UgTWVya2ZyZWl1bmcgd3VyZGUgZWxla3Ryb25pc2NoIGVyc3RlbGx0IHVuZCBpc3QgZGVzd2VnZW4gICAgICAgICAgICAgICAgCm5pY2h0IHVudGVyc2NocmllYmVuLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIAogICAgQ29weXJpZ2h0IDE5OTcgS3Jpc3RpYW4gS29laG50b3BwICAKICAgRGVyIEJ1bmRlc2JlYXVmdHJhZ3RlIGZ1ZXIgZGFzIE1lcmtiZWZyZWl1bmdzd2VzZW4gaW4gZGVuIEJlemlya2VuCiAgIE9zdHdlc3RmYWxlbi1MaXBwZSwgc3VlZGxpY2hlcyBOaWVkZXJzYWNoc2VuIHVuZApTdWVkaGVzc2VuL1JoZWluLU1haW4tTmVja2FyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpaYXViZXJlci1GQVEgO28pIChGb29iYXIsIDE5LiBNYWkgMjAwMSwgMDI6MjY6MzApOgpXaXJkIGVzIGVpbiBTZWhlcnRvciBpbnMgQ3Jvbm9lcnRhbCBnZWJlbj8KSmEsIGJhbGQuCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGphIHdhcyBkZW5uIG5vY2ggLi4gKEFuYXRvbCwgMTkuIE1haSAyMDAxLCAxMjozODoyMik6Cn4jISBybj1LaWVzZWxzdGVpbiBydD05OTAyNDg3MTIgcmc9YmFsYW5jZQp+IyEgdGlkPTk5MDE3MzA3NAo+IC4uLiB1bmQgaGFiZSBiaXMgZGF0byBpbW1lciBhbGxlcyBoaW5nZW5vbW1lbiwgd2VpbCBpY2ggZWlnZW50bGljaCBkYXZvbgo+IGF1c2dlaGUgZGFzIGJlaSBqZWRlciBBa3Rpb24gc2ljaCBpcmdlbmR3ZXIgc2ljaCB3YXMgZGFiZWkgZ2VkYWNodCBoYXQuCgpKdXJyeS0iS2F1ZnQgbWlyIHNvZm9ydCBCdW1lcmFuZ3Mgb2RlciBpY2gga2xhdSBzaWUgZXVjaCEiIGRhcyBUaWVyIGRlcgpSZWJlbGwgd2FyIGltbWVyIGxpZWIgdW5kIG5ldHQgdW5kIGhhdCBhbGxlcyBoaW5nZW5vbW1lbi4KCkRFUiB3YXIgZ3V0LiA6KQoKQW5hdG9sIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBLbm9wZi1Ub2RlOiAoUmVeODogVG9kZXNmb2xnZW4pIChMaWFyYSwgMTkuIE1haSAyMDAxLCAxMzo1MzoxOCk6Cn4jISBybj1WYW5pb24gcnQ9OTkwMjAxNzE3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05OTAxOTc2NzkKQXVmIGRpZXNlIEFydCB1bmQgV2Vpc2Uga29lbm50ZSBtYW4gZGFubiB2aWVsbGVpY2h0IGF1Y2ggZW5kbGljaCBkaWUgJ0NoYXR0ZXInCnZvbiBkZW4gJ3JpY2h0aWdlbiBNdWRkZXJuJyAoQykgU2t5IG9kZXIgc28gLSB0cmVubmVuLiA7LSkKTFoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBaYXViZXJlci1GQVEgO28pIChIaWdodCwgMTkuIE1haSAyMDAxLCAxNDo1MDoxOCk6Cn4jISBybj1Gb29iYXIgcnQ9OTkwMjMxOTkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkwMjMxOTkwCmRpZSBiZXRvbnVuZyBsaWVndCBoaWVyIHdvaGwgYXVmIElOUyAuLi4gdW5kIGRhcyBnaWJ0IGVzICEKCkdpbGRlbnBvcnRhbCB0YXV0IHp1IGRlbSB6d2VjayBzY2hvbiAKCnZvbiByYXVzIGhhdCBqYSBrZWluZXIgd2FzIGdlc2FjaHQgb2RlciA/CgpoaWdodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGJhbGFuY2UgKEdsb2luc29uLCAxOS4gTWFpIDIwMDEsIDIyOjMxOjAyKToKfiMhIHJuPVBlcnRpbmF4ZSBydD05OTAzMDM3NTEgcmc9YmFsYW5jZQp+IyEgdGlkPTk5MDMwMzc1MQo+IGYgcGVydGluYXhlCi4uLgpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBTb24sICA3LiBTZXAgMTk5NywgMTI6MzY6MTYKRS1NYWlsLUFkcmVzc2U6IG5vbmUKLi4uCgpSb2xsc3R1aGw/IEJ3aGFoYWhhaGEhIEp1bmdzcHVuZC4KRGllIFJvbGxzdHVlaGxlIHNpbmQgZWggYWxiZXJuLgoKR2xvaW4oc29uKSwgaGF0IGFsbGVzIHVubnVldHplIGdlc2FndCAobmVic3QgRXJ3YWVobnVuZyBCZXNjaGFlZGlndW5nKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbWFyeWxsaXMsIDIwLiBNYWkgMjAwMSwgMDA6MDE6MjYpOgpbVG9kOkxhcnNdIEdpYW5uaSBoYXQgZ2VyYWRlIE1pbmdvIHVtZ2VicmFjaHQuCi4uLgpbQmVpbGVpZDpNaW5nbyBncnVtbWVsdC5dCltCZWlsZWlkOk1pbmdvXSBEZXIgd2FyIGhhbHQgc2NobmVsbGVyLiBCbG9lZGUgS2xldHRlLgpbVG9kOkxhcnNdIEVpbiBHb2JsaW4gaGF0IGdlcmFkZSBNaW5nbyB1bWdlYnJhY2h0LgoKSGV1dGUgaXJnZW5kd2llIGplZGVyIHNjaG5lbGxlciBhbHMgRHUsIG9kZXI/IDopCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogVG9kZXNmb2xnZW4gKENhdHdlYXpsZSwgMjEuIE1haSAyMDAxLCAwOTo1MToyMSk6Cn4jISBybj1Uem9mZSBydD05OTA0MzExODUgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTk5MDE4NzY3MgpXYXMgenVtIEhlbmtlciBtYWNodCBya2F1ZmU/Pz8KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFRvZGVzZm9sZ2VuIChIdW1uaSwgMjEuIE1haSAyMDAxLCAxMDo1NTo1NSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9OTkwNDMxNDgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkwMTg3NjcyCkZ1ZXIgRGljaCwgQ2F0dHk6IGdvdG8gYnJ1bm8sIGZyYWdlIGJydW5vIG5hY2ggcmthdWZlLgoKQ1UgSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBUb2Rlc2ZvbGdlbiAoQ2F0d2VhemxlLCAyMS4gTWFpIDIwMDEsIDExOjA0OjI4KToKfiMhIHJuPUh1bW5pIHJ0PTk5MDQzNTM1NSByZz1zY2htYXJybgp+IyEgdGlkPTk5MDE4NzY3MgpBaCwgaW50ZXJlc3NhbnQsIGRhbmtlIDopCgpZVEMgKCdIdW1uaSBmb3IgTWFzdGVyemFwZmVyJy1GYWVobmNoZW4gc2Nod2Vua2VuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGVpbiBwYWFyIEdlZGFua2VuIHp1bSBUaGVtYSBhYndlcnRlbiB1bmQgbW9lZ2xpY2hlIEFsdGVybmF0aXZlbiAoQW5hY3Jpb24sIDIxLiBNYWkgMjAwMSwgMTU6MjM6MTQpOgp+IyEgb249QW5hY3Jpb24gb3Q9OTkwNDUxMzQ4IG9nPWJhbGFuY2UKfiMhIHJuPUNhdHdlYXpsZSBydD05OTA0NTEyMjcgcmc9YmFsYW5jZQp+IyEgdGlkPTk5MDI5OTcxNwpXbyBzaW5kIHdpciBlaWdldGxpY2ggaGluZ2Vrb21tZW4gPwoKU2Nob24gemlnIEFydGlrZWwgenVtIFRoZW1hIHVuZCBkaWUgbGV0enRlbiBBcnRpa2VsIHNpbmQgbm9jaCB6dW0gZ2xlaWNoZW4KdGhlbWEgd2llIGRpZSBlcnN0ZW4gQXJ0aWtlbC4KCktlaW5lIEZsYW1lcyAobmljaHQgdmlpZWxlIHp1bWluZGVzdCksIGtlaW5lciBkZXIgaGFsYmhlcnppZ2VuIFZlcnN1Y2hlLCBkYXMKVGhlbWEgenUgd2VjaHNlbG4sIGhhdCBnZWdyaWZmZW4uCgpBbmFjKiBtZWludDogQW5hdG9sLCBpaHIgRWluc2F0ei4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBlaW4gcGFhciBHZWRhbmtlbiB6dW0gVGhlbWEgYWJ3ZXJ0ZW4gdW5kIG1vZWdsaWNoZSBBbHRlcm5hdGl2ZW4gKFBhdHJ5biwgMjEuIE1haSAyMDAxLCAxNTozODoyOSk6Cn4jISBybj1BbmFjcmlvbiBydD05OTA0NTEzOTQgcmc9c2NobWFycm4KfiMhIHRpZD05OTAyOTk3MTcKd2FyIGRhcyBqZXR6dCBlaW4gZmxhbWUgb2RlciBlaW4gYWJsZW5rdW5nc3ZlcnN1Y2g/IDopCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogZWluIHBhYXIgR2VkYW5rZW4genVtIFRoZW1hIGFid2VydGVuIHVuZCBtb2VnbGljaGUgQWx0ZXJuYXRpdmVuIChBbmFjcmlvbiwgMjEuIE1haSAyMDAxLCAxNTo0MjoyNCk6Cn4jISBybj1QYXRyeW4gcnQ9OTkwNDUyMzA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkwMjk5NzE3CmlzdCBkb2NoIHNjaG9uIGluIHNjaG1hcnJuCgphbmFjKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnVlciBJbWRhIChCaWVsZWZlbGQsIDIxLiBNYWkgMjAwMSwgMjA6MjA6MzgpOgpJbWRhIHNhZ3Q6IGpvLCBhYmVyIG5lciBzdWVzc2VuIGZyYXUgYmVpbSBrb2NoZW4genVzY2hhdW4sIHVuZCBkYWJlaQpJbWRhIHNhZ3Q6IGJpZXJ0cmluZWtuIGlzIGRvY2ggb3B0aW1hbAoKRXIgd29sbHRlIGVzIHNvIDopCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRpZSBzdGVpZ2VydW5nIChCaWVsZWZlbGQsIDIxLiBNYWkgMjAwMSwgMjA6MjE6NDApOgpSYWduYXJvZWsgc2FndDogZWluIGt1ZWhsZXMgYmllciBpbiBkZXIgaGFuZCwgenVydWVja2dlbGVobnQgaW0gY2hlZnNlc3NlbCwKUmFnbmFyb2VrIHNhZ3Q6IGRpZSBmdWVzc2UgYXVmbSBrYXN0ZW4sIHVuZCBkZW4gYmxpY2sgaW4gZGllIG9mZmVuZSBrdWVjaGUsIGluClJhZ25hcm9layBzYWd0OiBkZXIgc2ljaCBzcGFlcmxpY2ggYmVrbGVpZGV0ZSBtdWRkZXJpbm5lbiB6dSBkZWluZW0gd29obApSYWduYXJvZWsgc2FndDogYWJyYWNrZXJuIDspCgotQmllbGVmZWxkIChjb3VsZCBub3QgcmVzaXN0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGZ1ZXIgSW1kYSAoSW1kYSwgMjEuIE1haSAyMDAxLCAyMDoyMjowNCk6Cn4jISBybj1CaWVsZWZlbGQgcnQ9OTkwNDY5MjM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkwNDY5MjM4CldhYWFhaGhoaC4uLgoKRHUgZGVua3N0ICAgLiBvIE8gKGhvZmZlbnRsaWNoIGtvbW10IGRlciBzYXR6IG5pY2ggaW4gZGllIG1wYSkKRHUgZ3JpbnN0LgpSYWduYXJvZWsgc2FndDogZWluIGt1ZWhsZXMgYmllciBpbiBkZXIgaGFuZCwgenVydWVja2dlbGVobnQgaW0gY2hlZnNlc3NlbCwKUmFnbmFyb2VrIHNhZ3Q6IGRpZSBmdWVzc2UgYXVmbSBrYXN0ZW4sIHVuZCBkZW4gYmxpY2sgaW4gZGllIG9mZmVuZSBrdWVjaGUsIGluClJhZ25hcm9layBzYWd0OiBkZXIgc2ljaCBzcGFlcmxpY2ggYmVrbGVpZGV0ZSBtdWRkZXJpbm5lbiB6dSBkZWluZW0gd29obApSYWduYXJvZWsgc2FndDogYWJyYWNrZXJuIDspCkJpZWxlZmVsZCBoYXQgZWluZW4gQXJ0aWtlbCBpbiBkZXIgWmVpdHVuZyB2ZXJvZWZmZW50bGljaHQuClJhZ25hcm9layBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KCgpCaWVsZWZlbGQgaHVlcGZ0IHVtIERpY2ggaGVydW0uIApCaWVsZWZlbGQgc2FndDogc29ycnksIGhldXRlIGtlbm4gaWNoIGtlaW5lIGduYWRlIDopICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZnVlciBJbWRhIChHcmltbWJvcm4sIDIxLiBNYWkgMjAwMSwgMjA6MjM6MDIpOgp+IyEgcm49SW1kYSBydD05OTA0NjkzMjQgcmc9c2NobWFycm4KfiMhIHRpZD05OTA0NjkyMzgKSG1tLCBlaW5lIEZyYXUgZWluZmFjaCBzbyBhbiBkaWUgZ3V0ZSBLdWVjaGVuZWlucmljaHR1bmcgenUgbGFzc2VuPyBNaWNoCmRldWNodCBkYXMgZWluIHdlbmlnLi4uIHJpc2thbnQuCgpHZEEgKGhhdCBfc2NoYXJmZV8gTWVzc2VyIGluIGRlciBLdWVjaGUpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBmdWVyIEltZGEgKEJpZWxlZmVsZCwgMjEuIE1haSAyMDAxLCAyMDoyMzoyNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTkwNDY5MzgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkwNDY5MjM4CldpciByZWRlbiBqYSBhdWNoIG5pY2h0IHZvbiBEZWluZXIgRnJhdSA7KQoKLUJpZWxlZmVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZnVlciBJbWRhIChBbmF0b2wsIDIxLiBNYWkgMjAwMSwgMjA6MjM6NDApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5MDQ2OTM4MiByZz1zY2htYXJybgp+IyEgdGlkPTk5MDQ2OTIzOApEdSBoYXN0IGRpZSBmYWxzY2hlbiBGcmF1ZW4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBmdWVyIEltZGEgKEdyaW1tYm9ybiwgMjEuIE1haSAyMDAxLCAyMDoyNDoyMik6Cn4jISBybj1CaWVsZWZlbGQgcnQ9OTkwNDY5NDA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkwNDY5MjM4CkljaCByZWRlIHZvbiBGcmF1ZW4gYWxsZ2VtZWluLgpJY2ggbWFjaGUgZGEgZWluZSBlaW56aWdlIEF1c25haG1lLiBVbmQgZGFzIGlzdCBuaWNodCBtZWluZSBNdXR0ZXIsIGF1ZiBkZW4KTWVzc2VybiBpbiBkZXJlbiBLdWVjaGUga2FubiBtYW4gc2ljaCBuaWNodG1hbCBtaXQgR2V3YWx0IHZlcmxldHplbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS3VlaGUgOikgKEVsYmVyZXQsIDIxLiBNYWkgMjAwMSwgMjM6NTA6MTYpOgpXYXMgdW5zIEt1ZWhlbiBhbGxlcyBzbyBkcm9odCAuLi4KCkh1bW5pIHNhZ3Q6IE11aGZpciBrb21tdCBhdWYgYWxsZSBGYWVsbGUuCkh1bW5pIHNhZ3Q6IFNvbnN0IHdpcmQgZXIuLgpEdSBuaWNrc3QgenVzdGltbWVuZC4KSHVtbmkgc2FndDogSG1tLi4uCkR1IGdyaW5zdC4KSHVtbmkgc2FndDogZ2Vtb2xrZW4hCiAgRWxiaSAoIGtvbW10IHdvaGwgZGFubiBkb2NoIGxpZWJlciBhdWYgamVkZW4gRmFsbCA7KSApCgoKa2t3ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGhpZXIgaXN0IGphIGFic29sdXQgZWJiZS4uLiAoQW1hcnlsbGlzLCAyMi4gTWFpIDIwMDEsIDAxOjMwOjMzKToKfiMhIHJuPUdub21lIHJ0PTk5MDQ4NzcwMSByZz1wdWl6Cn4jISB0aWQ9OTkwMTIyNDkzCiJEYXMgQmlub20gX3phY2tpZ18gYXVmZ2Vsb2VzdCIgPz8KClR5cGlzY2ggS2FlbXBmZXJwYV5IXkhzIDopCgpBbWEqLCBrb3Bmc2NodWV0dGVsbmQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGhpZXIgaXN0IGphIGFic29sdXQgZWJiZS4uLiAoR25vbWUsIDIyLiBNYWkgMjAwMSwgMDE6NDA6NTUpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTk5MDQ4NzgzMyByZz1zY2htYXJybgp+IyEgdGlkPTk5MDEyMjQ5MwpoYWJiaWNoIGJlaSBtZWluZW0gYXVzYmlsZGVyIHNvIGdlbGVybnQuIGluIHJsIHNvd2llIGluIHZsIDstKQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbnMncmUgc3Vlc3NlbiBTYW5kdGlnZXJjaGVuIDopIChTdGFyZmlyZSwgMjIuIE1haSAyMDAxLCAwNjowNzozOCk6Cn4jISBybj1Tb2xteXIgcnQ9OTkwMDcwOTkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkwMDcwOTkxCkFsc28gU29sbXlyLApqZXR6dCBtdXNzIGljaCBkb2NoIGRpcmVrdCBtYWwgd2FzIGRhenUgc2FnZW4uIFdpZSB3dWVyZGUgZGFzIGRlbm4gd29obAphdXNzZWhlbiwgd2VubiBkYSBzdHVlbmRlIFNvbG15ciwgU29sbXlpZXJpbiB1bmQgU29sbXlyYmFieT8gKmdydWViZWwqCkRhbm4gZG9jaCBsaWViZXIgZWluZSBTYW5kdGlnZXJmYW1pbGllICprdXNjaGVsIHNvbG15cioKU3RhcmZpcmUsIFNhbmR0aWdlcmluIGVocmVuaGFsYmVyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbnZlcnNjaGFlbXRoZWl0ISAoQW1hcnlsbGlzLCAyMi4gTWFpIDIwMDEsIDEzOjIxOjA5KToKWndpcmlvbiB0ZWlsdCBEaXIgbWl0OiBiZWdydWVuZSBsaWViZXIgbWFsIGRpZSB3dWVzdGUgZWluIGJpc3NjaGVuIGFscyBoaWVyClp3aXJpb24gdGVpbHQgRGlyIG1pdDogZHVtbSBydW1tenVzY2h3YWV0emVuIDopClp3aXJpb24gdGVpbHQgRGlyIG1pdDogdW5kIGxhc3MgbWljaCBpbiBydWhlIHVlYmVuLCBsZXZlbCAxMSBydWZ0IDopCgpBbWEqLCBmYXNzdW5nc2xvcyBhbmdlc2ljaHRzIGRpZXNlcyBmcmVjaGVuIFNwaWVsZXJwYWNrcyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSWhyIHdlcmRldCBlcyBuaWNodCBmYXNzZW4gLi4uIChMaWFyYSwgMjIuIE1haSAyMDAxLCAxMzoyNjoyMik6Cn4jISBybj1UaHVmaGlyIHJ0PTk5MDUyNjQ3MyByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD05OTA0Nzc0OTgKV2lsbCBlci4gOi0pCgpMWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHlwaXNjaCB3ZWlibGljaCA6KSAoVGFyemFuLCAyMi4gTWFpIDIwMDEsIDIxOjMzOjM3KToKdW50IGRlY2tlCkRpZSBEZWNrZSBzY2hlaW50IHNpY2ggZ2VyYWRlIHp1IHVlYmVybGVnZW4sIG9iIHNpZSBEaWNoIG1pdCBlaW4gcGFhcgpTdGVpbmVuIGJld2VyZmVuIHNvbGwsIHZpZWxsZWljaHQgc29sbHRlc3QgRHUgc2llIG5pY2h0IGFlcmdlcm4/CmFlcmdlcmUgRGVja2UKRHUgZ3JpbnN0IGRpZSBEZWNrZSBoZWltdHVlY2tpc2NoIGFuLCB3b3JhdWYgc2llIGluIGRpZSBFY2tlIGdlaHQgdW5kCnNjaG1vbGx0LgoKSW1tZXIgd2llZGVyIGd1dCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWlzc3ZlcnN0YWVuZG5pcz8gKEZvb2JhciwgMjIuIE1haSAyMDAxLCAyMjowMzowMik6CkVsYmVyZXRoICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkFuYWtpbiBydWZ0OiBSVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVESQpFbGJlcmV0aCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEgICAgICAgICAgICAgICAgICAKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaC4uLiAoSmFzbWluLCAyMi4gTWFpIDIwMDEsIDIzOjA3OjU1KToKSFVDSCwgZmFzdCB3YWVyc3QgRHUgYXVmIE5hcnMgZ2V0cmV0ZW4uCgpBbWFyeWxsaXMgYmVzY2h3b2VydCBlaW5lbiBCbGl0eiB2b20gSGltbWVsLgpOYXJzIGZhZWxsdCB0b3QgenUgQm9kZW4uCk5hcnMgaGF1dCBhYi4KCiphdWNod2lsbCogKndpbGRydW1zcHJpbmcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBlaW4gcGFhciBHZWRhbmtlbiB6dW0gVGhlbWEgYWJ3ZXJ0ZW4gdW5kIG1vZWdsaWNoZSBBbHRlcm5hdGl2ZW4gKEFuYXRvbCwgMjMuIE1haSAyMDAxLCAwMDo0OTozNCk6Cn4jISBybj1NdXBmZWwgcnQ9OTkwNTcxNzA0IHJnPWJhbGFuY2UKfiMhIHRpZD05OTAyOTk3MTcKVmVybXV0bGljaCBoYXQgZXIgZGllICJEdSBoYXN0IEh1bmdlci4iLW11ZHMgYWVobmxpY2ggZ3V0ICJnZXNwaWVsdCIgCndpZSBQYWRyZWljLi4uCgpBbmEqIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogZWluIHBhYXIgR2VkYW5rZW4genVtIFRoZW1hIGFid2VydGVuIHVuZCBtb2VnbGljaGUgQWx0ZXJuYXRpdmVuIChFbGJlcmV0LCAyMy4gTWFpIDIwMDEsIDAwOjUwOjM4KToKfiMhIHJuPUFuYXRvbCBydD05OTA1NzE3NzQgcmc9c2NobWFycm4KfiMhIHRpZD05OTAyOTk3MTcKRWxiZXJldCBoYXQgaW1tZXIgSHVuZ2VyLgotPiBzY2htYXJybiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGVpbiBwYWFyIEdlZGFua2VuIHp1bSBUaGVtYSBhYndlcnRlbiB1bmQgbW9lZ2xpY2hlIEFsdGVybmF0aXZlbiAoQW5hdG9sLCAyMy4gTWFpIDIwMDEsIDAwOjUwOjUyKToKfiMhIHJuPUVsYmVyZXQgcnQ9OTkwNTcxODM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkwMjk5NzE3CkRhbm4gaGVpbHN0IER1IG5pY2h0IGhvY2ggOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBlaW4gcGFhciBHZWRhbmtlbiB6dW0gVGhlbWEgYWJ3ZXJ0ZW4gdW5kIG1vZWdsaWNoZSBBbHRlcm5hdGl2ZW4gKEVsYmVyZXQsIDIzLiBNYWkgMjAwMSwgMDA6NTE6NDIpOgp+IyEgcm49QW5hdG9sIHJ0PTk5MDU3MTg1MiByZz1zY2htYXJybgp+IyEgdGlkPTk5MDI5OTcxNwpnZW5hdSwgd2VubiBpY2ggenVsYW5nZSBvaG5lIGVzc2VuIGlkbGUgaXN0IGRhcyBuY2lodCBndXQgZnVlciBtaWNoIDspCgpFbGJpICggbmFqYSB2aWVsZWljaHQgd2FlcnMgYXVjaCBnYXIgbmNpaHQgc29vbyBzY2hsZWNodCApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogZWluIHBhYXIgR2VkYW5rZW4genVtIFRoZW1hIGFid2VydGVuIHVuZCBtb2VnbGljaGUgQWx0ZXJuYXRpdmVuIChFbGJlcmV0LCAyMy4gTWFpIDIwMDEsIDAwOjUyOjE4KToKfiMhIHJuPUVsYmVyZXQgcnQ9OTkwNTcxOTAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkwMjk5NzE3CmJyaW5uZyBtaXIgbWFsIGVpbmVyIGJlaSB3aWUgbWFuIG5pY2h0IHJpY2h0aWcgc2NocmVpYnQKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndlbm4gQmllcnNjaHVldHRsZXIgd2lua2VuIChFbGJlcmV0LCAyMy4gTWFpIDIwMDEsIDAxOjAxOjA0KToKCkRlaW4gRnJldW5kIEh1bW5pIHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1LgpFaW4gZnVlcmNodGVybGljaGVzIEJlYmVuIGVyc2NodWV0dGVydCBkaWUgRGltZW5zaW9uZW4gaW4gaWhyZW4gR3J1bmRmZXN0ZW4uCgpFbGJpIDopCgpQUzogSHVtbmkga2FubiBlaCBhbSBiZXN0ZW4gZ3JpbnNlbiBrbnVkZGVsbiB1bmQgdWViZXJoYXVwdCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBrbGFyc3RlbGx1bmcgKEJlbmRlaWdpZCwgMjQuIE1haSAyMDAxLCAwOTozODozMSk6Cn4jISBvbj1HYWxicmFpdGggb3Q9OTkwNjU2Nzc3IG9nPWFsbGdlbWVpbmVzCn4jISBybj1QYXRyeW4gcnQ9OTg4NjgxMTYwIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTg4NjgwODc4CgosCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBrbGFyc3RlbGx1bmcgKEJlbmRlaWdpZCwgMjQuIE1haSAyMDAxLCAwOTozODozOSk6Cn4jISBvbj1FbGJlcmV0IG90PTk5MDY1NjgwNSBvZz1hbGxnZW1laW5lcwp+IyEgcm49R2FsYnJhaXRoIHJ0PTk5MDY1Njc3NyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk4ODY4MDg3OApqbywgamV0enQgaXN0IGFsbGVzIGtsYXIgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgR2VkaWNodCAoVmFybGFyaW9uLCAyNS4gTWFpIDIwMDEsIDE3OjM0OjMwKToKRWluIHZvZ29uaXNjaGVzIEdlZGljaHQuCnVudCBnZWRpY2h0ClNpZWggZXMgRGlyIGJlc3NlciBuaWNodCBzbyBnZW5hdSBhbiwgZXMgaXN0IGVpbmZhY2ggbnVyIGVudHNldHpsaWNoLgpFaW5lIFN0aW1tZSBmbHVlc3RlcnQ6IEVzIHd1cmRlIHZvbiBSb2NodXMgZ2VzY2hyaWViZW4uCgpWYXJsKiwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxvY2tlbiBoaWxmdCAuLi4gKEFuYWNyaW9uLCAyNS4gTWFpIDIwMDEsIDIyOjM4OjMyKToKCkR1IGRlbmtzdCAgIC4gbyBPIChrb21tIG1pY2hpIDotKSkKUGl0ZmFsbCBzYWd0OiBwdW5rdCBhbSBlbmRlClBpdGZhbGwgZ3JpbnN0LgpQaXRmYWxsIGRlbmt0ICAgLiBvIE8gKHB1dHQgcHV0dCBwdXR0KQpEdSBzYWdzdDogaG1tLiBndXQuIGRvY2ggbmljaHQgc28gc2NobGVjaHQgbWVpbmUgZ3JhdWVuIHplbGxlbgpNaWNoYWVsIGtvbW10IGFuLgoKQW5hYyogLSB3aWxsIHVlYmVyYWxsIHNvIHByb21wdGUgQmVkaWVudW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQnJpdG5leSBMaXZlIChUZWt0dWtvLCAyNi4gTWFpIDIwMDEsIDE1OjMzOjI5KToKRWluIFZpZGVvIHZvbiBCcml0bmV5IGZpbmRldCBtYW4gYXVmICB3d3cuenRoaW5nLmNvbS96dGhpbmdzL29vcHNfZmFydHMuaHRtbApzb2xsdGUgbWFuIHNpY2ggYXVmIGtlaW5lbiBGYWxsIGVudGdlaGVuIGxhc3NlbiwgYWNoamEgc2llIGlzdCBlcyBuaWNodAp3aXJrbGljaCwgZ3Vja3RzIGV1Y2ggYW4gdW5kIGxhY2h0IG1pdCBtaXIgOikgRW50ZGVja3QgaGF0IGRpZSBTZWl0ZSBZYWxhZGFuLApiZWRhbmt0IGV1Y2ggYmVpIGlobSAqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEVyZmFocnVuZ3NwdW5rdGUgKEdub21lLCAyNy4gTWFpIDIwMDEsIDAzOjU1OjA3KToKfiMhIHJuPU1vcmdvdGggcnQ9OTkwODI2ODE1IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05OTA4MDYzMTkKZ2VuYXUhCnVuZCB3aWUga29tbWUgaWNoIGRhbm4gYW4gbWVpbmUgcmVzdGxpY2hlbiAxMDAuMDAwIHN0ZXJuZT8gOikKb2RlciBnaWJiZXQgZGllIGRhbm4gd2llZGVyIGltIGxhZGVuIHp1IGthdWZlbj8gOy0pCgpnbk9tZSwgZGFnZWdlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZ1ZXIgbm9ubmUgKE5hY2h0d2luZCwgMjcuIE1haSAyMDAxLCAxMDoxNTowNCk6Cm5vbm5lIGlzdCBkb29mIHVuZCBzdGlua3QhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZnVlciBub25uZSAoTm9ubmUsIDI3LiBNYWkgMjAwMSwgMTA6MTU6NTgpOgp+IyEgcm49TmFjaHR3aW5kIHJ0PTk5MDk1MTMwNCByZz1zY2htYXJybgp+IyEgdGlkPTk5MDk1MTMwNApUb2xsLCB3aWUgc29sbCBpY2ggZGVubiBkYXJhdXMgZWluZW4gRmxhbWV3YXIgbWFjaGVuPyBTY2hyZWliIGxpZWJlciwgZGFzcyBkaWUKS2xlcmlrZXIgYWJnZXdlcnRldCB3ZXJkZW4sIG9kZXIgZGllIFRhbmppYW4gd2llZGVyIGF1ZiAoYzsKCk5vbm5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBmdWVyIG5vbm5lIChOYWNodHdpbmQsIDI3LiBNYWkgMjAwMSwgMTA6MTc6MTgpOgp+IyEgcm49Tm9ubmUgcnQ9OTkwOTUxMzU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkwOTUxMzA0Cm9oLiB0c2NodWxsaWd1bmcuCmFsc28uLiBhZWguLiB0amEuLiBEaWUgS2xlcmlrZXIgd2VyZGVuIGFiZ2V3ZXJ0ZXQhISBCbGl0eiB3aXJkIGFiZ2VoYWVuZ3QsCkRvbm5lciBzb3dpZXNvLCB1bmQgZGVyIEtldWxlbnNraWxsIG11c3Mgd2VnISBBdXNzZXJkZW0gc3RpcmJ0IG1hbiwgc29iYWxkCm1hbiBuaWNodCBtZWhyICJoZWlsaWciIGlzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGZ1ZXIgbm9ubmUgKE5vbm5lLCAyNy4gTWFpIDIwMDEsIDEwOjIwOjM3KToKfiMhIHJuPU5hY2h0d2luZCBydD05OTA5NTE0Mzggcmc9c2NobWFycm4KfiMhIHRpZD05OTA5NTEzMDQKRGFzIGlzdCBkb2NoIG1hbCBlaW5lIERpc2t1c3Npb25zZ3J1bmRsYWdlOgoxLiBCbGl0eiBtdXNzIHdlZyBpc3Qgb2theS4gRGVyIGlzdCBmdWVyIGRpZSBNUCBlaCB6dSBzY2h3YWNoLgoyLiBEb25uZXIgbWFjaHQgbWVpbmVtIFRlYW0gU2NoYWRlbiwgYXVjaCBrZWluIFZlcmx1c3QuCjMuIE1hbiBzdGlyYnQsIHdlbm4gbWFuIGJvZXNlciBhbHMgbmV1dHJhbCB3aXJkLCBkYW1pdCBrYW5uIGljaCBsZWJlbi4KNC4gTWVzc2Vya3JlaXMgbWFjaHQgZGFubiAyMDAgU2NoYWRlbiwgZGFtaXQgc2luZCBkaWUgTmFjaHRlaWxlIGF1Zmdld29nZW4gKGM7CjUuIEthZW1wZmVyLCBaYXViZXJlciB1bmQgVGFuamlhbiBhYmhhZW5nZW4sIGRhbm4gc2luZCB3aXIgZW5kbGljaCBkaWUKc3RhZXJrc3RlIEdpbGRlISAqZyoKCk5vbm5lLiBIZXV0ZSBtYWwga3JlYXRpdgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZnVlciBub25uZSAoR2xvaW5zb24sIDI3LiBNYWkgMjAwMSwgMTM6NTg6MzIpOgp+IyEgcm49Tm9ubmUgcnQ9OTkwOTUxNjM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkwOTUxMzA0CkljaCBiaW4gamEgZGFmdWVyLCBkYXNzIGRlciBIZWlsaWdlbnNjaGVpbiBudXIgbm9jaCAyMCBTZWt1bmRlbiBoYWVsdCB1bmQgZGVyClRhbGlzbWFuLCB3ZW5uIGVyIHp1IHNlaHIgc3RyYWhsdCBrcmFmdCBzZWluZXMgU3RyYWhsdW5nc3J1Y2tlcyBpbiBlaW56ZWxuZQpSaW5nZSB6ZXJmYWVsbHQgdW5kIGRhdm9ua3VsbGVydCAuLi4gb2RlciBzb3dhcy4gQXVzc2VyZGVtIHNvbGx0ZW4gS2xlcmlrZXIgaW4KR2VnZW53YXJ0IHZvbiBDaGFvdGVuIE1hZ2VuZHJ1ZWNrZW4gb2RlciBlaW5lIEZ1cnprcmFua2hlaXQgYmVrb21tZW4uIAoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uIG1hbCB3aWVkZXIgZ2VrbGF1dCBhdXMgZGUuYWx0Lm5ldGRpZ2VzdCAoUm9uZGEsIDI3LiBNYWkgMjAwMSwgMTg6MDI6NDMpOgpGcm9tOiBTZWJhc3RpYW5AU3Byb2Vzc2VyLmNvbSAoU2ViYXN0aWFuIFNwcm9lc3NlcikKTmV3c2dyb3VwczogZGUuYWx0LmZvbGtsb3JlLnVyYmFuLWxlZ2VuZHMKU3ViamVjdDogUmU6IFVuYmVmbGVja3RlIEVtcGZhZW5nbmlzCk1lc3NhZ2UtSUQ6IDw5ZTVqN2kuMTdjLjFAc3Byb2Vzc2VyLmNvbT4KRGF0ZTogU2F0LCAxOSBNYXkgMjAwMSAxMjoyNToyNiArMDIwMAoKSmVucyBIYXVnIDxoYXVnQGlrZmYudW5pLXN0dXR0Z2FydC5kZT4gbWVpbnRlOgoKPiBXaWVzbywgd2FzIGthbm4gdW5kIGRhcmYgaGllciBkZW5uIG5pY2h0IHNlaW4/Cj4gRXMga2FtZW4gYmlzIGpldHp0IGRvY2gga2VpbmUgRXJrbGFlcnVuZ2VuLCB3aWUgTWFyaWEganVuZ2ZyYWV1bGljaAo+IHNjaHdhbmdlciB3ZXJkZW4ga29ubnRlLCBzb25kZXJuIG51ciBVZWJlcmxlZ3VuZ2VuIGRhenUsIHdpZSBlaW4KPiBFdmFuZ2VsaXN0IGF1ZiBkaWUgSWRlZSBrb21tdCwgc28gZXR3YXMgLSBhZWggLSBnZXdhZ3RlcyB6dSBiZWhhdXB0ZW4KPiBiencuIG9iIGRhcyBnYW56ZSBlaW4gZ3Jvc3NlcyBNaXNzdmVyc3RhZW5kbmlzIHdhci4KPiBLbGFyLCBtYW4ga2FubiBhdWNoIGJlaGF1cHRlbiwgZXIgaGFldHRlIGRhcyBhbHMgZHVtbWVuIFN0cmVpY2ggZWluZmFjaCAKPiBlcmZ1bmRlbiwgYWJlciBzbyB3YXJlbiBkaWUgRXZhbmdlbGlzdGVuIGRhbm4gd29obCBkb2NoIG5pY2h0IGRyYXVmLAo+IG9kZXI/IAoKUTogICAgICAgICAgICAgICAgICAgICAgIFNvLCBwYXNzdCBtYWwgYXVmIEp1bmdzLCB3YXMga29lbm50ZW4gd2lyIGRlbm4gbm9jaAogICAgICAgICAgICAgICAgICAgICAgICAgIHNvIGVpbmJhdWVuPwpNYXJrdXMgKmtpY2hlcm5kKjogICAgICAgSWNoIGhhYnMsIGljaCBoYWJzISEhCkpvaGFubmVzOiAgICAgICAgICAgICAgICBBdSBqYSAtIHNhZyBzY2hvbi4KQWxsZSBhbmRlcmVuOiAgICAgICAgICAgIFNjaG5hdXplLCBKb2hhbm5lcyEKSm9oYW5uZXMgKnJlc2lnbmllcmVuZCo6IE9jaCBtZW5uby4uLgpNYXJrdXM6ICAgICAgICAgICAgICAgICAgQWFhbHNvICpraWNoZXJ0KiB3aWUgd2FlcnMgZGVubiwgd2VubiB3aXIgSmVzdXMgenUKICAgICAgICAgICAgICAgICAgICAgICAgICBuZXIgVHJhbnNlIG1hY2hlbiB3dWVyZGVuPyAqa2ljaGVydCoKUTogICAgICAgICAgICAgICAgICAgICAgIERhcyBrb2VubmVuIHdpciBkb2NoIGVpZ2VudGxpY2ggbmljaHQgYnJpbmdlbiwgb2Rlcj8KTWFya3VzOiAgICAgICAgICAgICAgICAgIEJpdHRlYml0dGViaXR0ZWJpdHRlLi4uCkpvaGFubmVzOiAgICAgICAgICAgICAgICBEYXMgZmFlbmRlIGljaCBhYmVyIGd1dCEKTWFya3VzOiAgICAgICAgICAgICAgICAgIE5vZSwgd2VubiBkZXIgSm9oYW5uZXMgZGFzIGd1dCBmaW5kZXQsIGRhbm4gd2lsbCBpY2gKICAgICAgICAgICAgICAgICAgICAgICAgICBkYXMgbmljaHQgbWVociBzbyBoYWJlbi4KSm9oYW5uZXMgKnJlc2lnbmllcmVuZCo6IE9jaCBtZW5uby4uLgpNYXR0aGFldXM6ICAgICAgICAgICAgICAgIFdlbm4gaWNoIGRhenUgYXVjaCB3YXMgc2FnZW4gZHVlcmZ0ZS4uLgpROiAgICAgICAgICAgICAgICAgICAgICAgU2NoaWVzcyBsb3MsIE1hdHRoZXchCk1hdHRoYWV1czogICAgICAgICAgICAgICAgQWxzbyBtZWluZSBNZWludW5nIG5hY2ggc29sbHRlbiB3aXIgc28gYWxzIGtsZWluZW4KICAgICAgICAgICAgICAgICAgICAgICAgICBHYWcgaXJnZW5kd2FzIHVubW9lZ2xpY2hlcyBlaW5iYXVlbi4uLgpKb2hhbm5lcyAqdW50ZXJicmljaHQqOiAgQWxzbyBkb2NoIGRpZSBKZXN1cy1UcmFuc2UhCkFsbGUgYW5kZXJlbjogICAgICAgICAgICBTY2huYXV6ZSwgSm9oYW5uZXMhCkpvaGFubmVzICpyZXNpZ25pZXJlbmQqOiBPY2ggbWVubm8uLi4KTWF0dGhhZXVzOiAgICAgICAgICAgICAgICAuLi4gZXR3YXMgdW5tb2VnbGljaGVzLCB3YXMgYWJlciBkZW4gR2xhdWJlbgogICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnN0YWVya2VuIGthbm4uCkx1a2FzOiAgICAgICAgICAgICAgICAgICBIbW0sIGRhcyBpcyBhYmVyIHNjaHdpZXJpZy4KSm9oYW5uZXM6ICAgICAgICAgICAgICAgIEljaCB3ZWlzcyB3YXMhIEljaCB3ZWlzcyB3YS4uLgpBbGxlIGFuZGVyZW46ICAgICAgICAgICAgU2NobmF1emUsIEpvaGFubmVzIQpKb2hhbm5lcyAqcmVzaWduaWVyZW5kKjogT2NoIG1lbm5vLi4uIE1pciByZWljaHRzIGpldHp0LiBNYWNodCBldWVyIGJsb2VkZXMKICAgICAgICAgICAgICAgICAgICAgICAgICBFdmFuZ2VsaXVtIGRvY2ggYWxsZWluZS4KKkpvaGFubmVzIGdlaHQgdW5kIHNjaGxhZWd0IGRpZSBUdWVyZSBoaW50ZXIgc2ljaCB6dSoKQWxsZSBhbmRlcmVuOiAgICAgICAgICAgIEp1aHUhIEVuZGxpY2ggaXN0IGRlciBFaWdlbmJyb2V0bGVyIHdlZyEKUTogICAgICAgICAgICAgICAgICAgICAgIEljaCBoYWIgZWluZSBFcmxldWNodHVuZy4gV2lyIGtvZW5udGVuIGRpZSBkb2NoIGFsbGUKICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJhcnNjaGVuIHVuZCBiZWhhdXB0ZW4sIE1hcmlhIHdhZXJlIGVpbmUgSnVuZ2ZyYXUKICAgICAgICAgICAgICAgICAgICAgICAgICBnZXdlc2VuIQpBbGxlIGFuZGVyZW46ICAgICAgICAgICAgQXUgZmVpbiwgZGFzIG1hY2hlbiB3aXIhClE6ICAgICAgICAgICAgICAgICAgICAgICBBYmVyIHZlcnJhdGV0IGRlbSBKb2hhbm5lcyBuaXguLi4gU29uc3Qgc2NocmVpYnQKICAgICAgICAgICAgICAgICAgICAgICAgICBkZXIgZGFzIG5vY2ggYWIuLi4KClNDTlIsClNlYmFzdGlhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIEFyYmVpdCBkZXIgRnVlaHJ1bmdza3JhZWZ0ZS4uLi4gKFJlYXBlciwgMjguIE1haSAyMDAxLCAwMTo0NzoxOSk6CklkbGVmaXggZnJhZ3QgQnJpZXNlbHRyaW0gbmFjaCBCZWZvZXJkZXJ1bmcuCkJyaWVzZWx0cmltIHNhZ3Q6IExhc3MgbWljaCBpbiBSdWhlISBJY2ggaGFiIGhpZXIgd2ljaHRpZ2VzIHp1IGVybGVkaWdlbiEKQnJpZXNlbHRyaW0gYmVnaW5udCBsdXN0dm9sbCB6dSBzdG9laG5lbi4uLiBIb2xsYSwgd2FzIGZ1ZXIgQmVuZWhtZW4hCi1SZWFwZXIgLiBvIE8gKC4uLkthZW1wZmVyLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbmFjcmlvbiwgMjguIE1haSAyMDAxLCAwMzowMjo1Myk6CkVsYmVyZXRoIHRlaWx0IERpciBtaXQ6IGhtbSwgYWxzbyB3ZW5uIGljaCBmZXVlcndhbHplIGRhIG1hY2gsIGRhbm4gc29sbHRlbgpFbGJlcmV0aCB0ZWlsdCBEaXIgbWl0OiBkaWUgZG9jaCBudXIgYXVmIG1pY2ggc2F1ZXIgc2VpbiwgYWxzbyBlbGJpIHJ1ZWhyZW4KRWxiZXJldGggdGVpbHQgRGlyIG1pdDogc2llIG5jaWh0IGFuCltUb2Q6TGFyc10gSGludGVyIExpc3QgaGF0IGdlcmFkZSBFbGJlcmV0aCB1bWdlYnJhY2h0LgoKQW5hYyogd2VpbnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKEVsYmVyZXQsIDI4LiBNYWkgMjAwMSwgMDM6MDM6MjYpOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTkxMDExNzczIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxMDExNzczCmR1bW1lIHphdWJpcyA7KQoKRWxiaSAoc29uc3Qga2VpbiBLb21tZW50YXIgd2lzc2VuZCApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3dhcyA7KSAoRWxiZXJldCwgMjguIE1haSAyMDAxLCAwMzowNzo1NCk6CkJyaWVzZWx0cmltIGJlc2NobGV1bmlndCBzZWluZSBBdHRhY2tlbiEKVm9uIERlciBHYW1lRHJpdmVyOiBEZWluIEhlcnpzY2hsYWcgaGF0IGF1c2dlc2V0enQhCkthcmFrIGJlc2NobGV1bmlndCBzZWluZSBBdHRhY2tlbiEKRGljaC4uLi4gPC0gLi4uLm5vcm1hbC9LZXVsZS4uLi4uLi4gaGFydC4uLi4uLi4uIDwtIEthcmFrLi4uLi4uLi4gKioqKioqKioKLi4KemVpbGVuIHdlaXRlcgoKVG9kOkxhcnNdIEhpbnRlciBMaXN0IGhhdCBnZXJhZGUgRWxiZXJldGggdW1nZWJyYWNodC4KRGljaC4uLi4gPC0gLi4uLm5vcm1hbC9CcmVpdHNjaHdlcnQgdmVyZmVobHQuLi4uIDwtIEhpbnRlciBMaXN0Li4gKioqKioqKioKRGVpbiBLb2VycGVyIGdlaG9yY2h0IERpciBuaWNodCAhCkRlaW4gS29lcnBlciBnZWhvcmNodCBEaXIgbmljaHQgIQpEZWluIEtvZXJwZXIgZ2Vob3JjaHQgRGlyIG5pY2h0ICEKCgpWb24gTlBDIERlciBHYW1lRHJpdmVyOiBEZWluIEhlcnpzY2hsYWcgaGF0IHdpZWRlciBlaW5nZXNldHp0LgoKa29taXNjaCwgaWNoIGRhY2h0LCB3ZW5uIG1hbiB0b3QgaXMsIGlzdCBkaWUgUHVtcGUgc3RpbGwKCkVsYmkgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW1hcnlsbGlzLCAyOC4gTWFpIDIwMDEsIDAzOjEwOjExKToKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEVsYmVyZXQgaW4gUnVicmlrICJzY2htYXJybiIuCltUb2Q6TGFyc10gQnVscmlrIFRob3JhbiBoYXQgZ2VyYWRlIEVsYmVyZXRoIHVtZ2VicmFjaHQuCgpBbWEqLCBtZWludDogbGllYmVyIGFiaGF1ZW4sIGFscyBzaWNoIG1pdCBaZWl0dW5nc2FydGlrZWxuIGF1Znp1aGFsdGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChHbG9pbnNvbiwgMjguIE1haSAyMDAxLCAwMzoyODowNyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9OTkxMDEyMjExIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxMDEyMjExCkRhcyBiaWV0ZSBpY2ggYW5kZXJzOgoKW0JlaWxlaWQ6RWxiZXJldF0gb2RlciBpcyBlcyBub3JtYWwgd2VubiBtaXR0ZW0gaW0gS2FtcGYgbWVpbiBIZXJ6c2NobGFnCltCZWlsZWlkOkVsYmVyZXRdIGF1c3NldHp0PwpbQmVpbGVpZDpHbG9pbnNvbl0gRGEgd2FyIGVpbiBrbGVpbmVyIEJ1ZyAuLi4KLi4uCkVsYmVyZXQgdGVpbHQgRGlyIG1pdDogd2FzIGRlbm4gZnVlciBuZW4gYnVnPwpbVG9kOkxhcnNdIEJ1bHJpayBUaG9yYW4gaGF0IGdlcmFkZSBFbGJlcmV0aCB1bWdlYnJhY2h0LgoKRGEgd29sbHRlIGVyIGVzIHdvaGwgZ2FueiBnZW5hdSB3aXNzZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdldWVidCA/IDspIChJbWRhLCAyOC4gTWFpIDIwMDEsIDA0OjMzOjEwKToKPiB1bnQgbmliYmxlcgoKRGFzIGlzdCBOaWJibGVyLiBFciBpc3QgZnVlciBlaW5lbiBad2VyZyBtaXR0ZWxncm9zcy4KRGFtaXQgaXN0IGVyIGVpbmVuIEtvcGYga2xlaW5lciBhbHMgRHUuCkVyIGlzdCBhYnNvbHV0IGZpdC4KTmliYmxlciBoYXQgZWluZW4gbWF0dGVuIFRhbGlzbWFuIGFuLCBrZWluZSBXYWZmZSBnZXp1ZWNrdCB1bmQgdHJhZWd0IGVpbmUKTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZQpMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lCkxpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUKTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZQpMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lCkxpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUKTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZQpMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lCkxpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUKTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZQpMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lCkxpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUKTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZQpMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lCkxpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUKTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZQpMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lCkxpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUKTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZQpMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lCkxpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUKTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZQpMaWNodGt1Z2VsLCBlaW5lIExpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCwgZWluZSBMaWNodGt1Z2VsLCBlaW5lCkxpY2h0a3VnZWwsIGVpbmUgTGljaHRrdWdlbCB1bmQgZWluZSBMaWNodGt1Z2VsLiAgIAoKSW1kYS4gRnJldXQgc2ljaCBhdWZzIHplcnBsYXR6ZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnRzdHN0cy4uLiAoRGFyaWEsIDI4LiBNYWkgMjAwMSwgMTY6MTc6MzcpOgpEZXIgU3VtcGZkcmFjaGUgc2NobGFlZ3QgRGljaCBtaXQgc2VpbmVtIG1hZWNodGlnZW4gU2Nod2Fuei4KRHUgd2VocnN0IGRlbiBTcHJ1Y2ggYWIuCgpLYW5uIGF1Y2ggbnVyIGR1bW1lIFNwcnVlY2hlIG1hY2hlbiBzb24gRHJhY2hlbi4uLiA7LSkKRGFyaWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2guLi4gKEphc21pbiwgMjkuIE1haSAyMDAxLCAwMDoxMTo1Nyk6CkVsZGFyb24gICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhClRoYW5vcyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKVmFyZGlvbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKU3Ryb2hhbG0gICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCm5hLi4ucmVzZXQgYmVpIE1haXNlbj8gKmcqCih1bmdlc2Nobml0dGVuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWxpY2guLi4gKEFuYWNyaW9uLCAyOS4gTWFpIDIwMDEsIDAwOjEzOjE0KToKfiMhIHJuPUphc21pbiBydD05OTEwODc5MTcgcmc9c2NobWFycm4KfiMhIHRpZD05OTEwODc5MTcKRWhlcjoKClZlcmdlc3Nlbiwgd2VuIHZvciBkaWUgVHVlciB6dSBzdGVsbGVuID8KCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaC4uLiAoQW1hcnlsbGlzLCAyOS4gTWFpIDIwMDEsIDAwOjE0OjA0KToKfiMhIHJuPUphc21pbiBydD05OTEwODc5MTcgcmc9c2NobWFycm4KfiMhIHRpZD05OTEwODc5MTcKd2FlcnN0IER1IGRhYmVpIGdld2VzZW4sIHdhZXIgZGFzIG5pY2h0IHBhc3NpZXJ0IDopCgpzY25yLApBbWEqLCBraWNoZXJuZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVsaWNoLi4uIChBbmFjcmlvbiwgMjkuIE1haSAyMDAxLCAwMDoxNDozNik6Cn4jISBybj1BbWFyeWxsaXMgcnQ9OTkxMDg4MDQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxMDg3OTE3Ck1pciBpc3QgZXMgZWlubWFsIHBhc3NpZXJ0IC4uLgoKZWlubWFsIHVuZCBuaWUgd2llZGVyIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmV1bGljaC4uLiAoRWxiZXJldCwgMjkuIE1haSAyMDAxLCAwMDoxNTowNCk6Cn4jISBybj1BbmFjcmlvbiBydD05OTEwODgwNzYgcmc9c2NobWFycm4KfiMhIHRpZD05OTEwODc5MTcKb2NoIGRhIGthbm4gbWFuIGF1Y2ggYW5kZXJzIHN0ZXJiZW4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXVsaWNoLi4uIChBbmFjcmlvbiwgMjkuIE1haSAyMDAxLCAwMDoxNjowMyk6Cn4jISBybj1FbGJlcmV0IHJ0PTk5MTA4ODEwNCByZz1zY2htYXJybgp+IyEgdGlkPTk5MTA4NzkxNwpIYWIgaWNoIGRhcyBiZXN0cml0dGVuID8KCkFuYWMqIC0gc3RpcmJ0IHp1IG9mdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoLi4uIChNYXRpcywgMjkuIE1haSAyMDAxLCAwMDoyNDo0OSk6Cn4jISBybj1KYXNtaW4gcnQ9OTkxMDg3OTE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxMDg3OTE3CkhleSwgbWl0IDQgTWFubiBrYW5uIG1hbiBkYSBkb2NoIHN0ZWhlbiA7bykuIEFsbGVzIEZlaWdsaW5nZSAuLi4KCk1hdGlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGcmFnZTogU3RhdGkgQmVybGluIChHbG9pbnNvbiwgMjkuIE1haSAyMDAxLCAwMzozMDoxNSk6Cn4jISBybj1MaW5mbGFzIHJ0PTk5MTA5MTg0NiByZz10cmVmZmVuCn4jISB0aWQ9OTkxMDY4NTE5CkFjaCwgc2luZCBzY2hvbiBhbGxlIFNjaGVyYmVuIGVudGZlcm50IHVuZCB3YWVjaHN0IGRhIGF1Y2ggd2llZGVyIEdyYXMgbmFjaApkZW0gMzAuQXByaWw/CgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVyZmFocnVuZ3NwdW5rdGUgKENhdHdlYXpsZSwgMjkuIE1haSAyMDAxLCAwNzo1Nzo0Mik6Cn4jISBvbj1aaWxsdXMgb3Q9OTkxMDUwMTk0IG9nPWRpc2t1c3Npb24KfiMhIHJuPURhcmlhIHJ0PTk5MTA0MzA2MCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTkwODA2MzE5CmFiIHdlbGNoZW0gbGV2ZWwgd2lyZCBtYW4gZGVubiBlcm5zdCBnZW5vbW1lbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVyZmFocnVuZ3NwdW5rdGUgKENhdHdlYXpsZSwgMjkuIE1haSAyMDAxLCAwNzo1Nzo1NSk6Cn4jISBvbj1Nb3Jnb3RoIG90PTk5MTA1MDIzNiBvZz1kaXNrdXNzaW9uCn4jISBybj1aaWxsdXMgcnQ9OTkxMDUwMTk0IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05OTA4MDYzMTkKTUFYKzEKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFcmZhaHJ1bmdzcHVua3RlIChDYXR3ZWF6bGUsIDI5LiBNYWkgMjAwMSwgMDc6NTc6NTcpOgp+IyEgb249U2NobWFycm4gb3Q9OTkxMDUwNTMyIG9nPWRpc2t1c3Npb24KfiMhIHJuPVppbGx1cyBydD05OTEwNTAxOTQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTk5MDgwNjMxOQoxMDAgYXVmd2FlcnRzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFcmZhaHJ1bmdzcHVua3RlIChDYXR3ZWF6bGUsIDI5LiBNYWkgMjAwMSwgMDc6NTc6NTkpOgp+IyEgb249UnVtYXRhIG90PTk5MTA1MDU2NCBvZz1kaXNrdXNzaW9uCn4jISBybj1TY2htYXJybiBydD05OTEwNTA1MzIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTk5MDgwNjMxOQpXaXpMZXZlbCwgd29obGdlbWVya3QKUnVtKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEVyZmFocnVuZ3NwdW5rdGUgKENhdHdlYXpsZSwgMjkuIE1haSAyMDAxLCAwNzo1ODowMCk6Cn4jISBvbj1TY2htYXJybiBvdD05OTEwNTA2MjYgb2c9ZGlza3Vzc2lvbgp+IyEgcm49UnVtYXRhIHJ0PTk5MTA1MDU2NCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTkwODA2MzE5CkR1IGdsYXVic3QgZG9jaCBuaWNodCBldHdhLCBkYXNzIERpY2ggamVtYW5kIGVybnN0IG5pbW10Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBFcmZhaHJ1bmdzcHVua3RlIChDYXR3ZWF6bGUsIDI5LiBNYWkgMjAwMSwgMDc6NTg6MDcpOgp+IyEgb249UnVtYXRhIG90PTk5MTA1MDY3NCBvZz1kaXNrdXNzaW9uCn4jISBybj1TY2htYXJybiBydD05OTEwNTA2MjYgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTk5MDgwNjMxOQpadWNrLCBkaWUgRnJhZ2Ugd2FyLCBhYiB3ZW5uIElDSCBqZW1hbmRlbiBlcm5zdCBuZWhtZSA6LSkKUnVtKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEVyZmFocnVuZ3NwdW5rdGUgKENhdHdlYXpsZSwgMjkuIE1haSAyMDAxLCAwNzo1ODowOSk6Cn4jISBvbj1FbGNpZCBvdD05OTEwNTA4ODcgb2c9ZGlza3Vzc2lvbgp+IyEgcm49UnVtYXRhIHJ0PTk5MTA1MDY3NCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9OTkwODA2MzE5CktsYXNzZSB2b24gd2VtIG1hbiBoaWVyIHdhbm4gZXJzdCBlcm5zdCBnZW5vbW1lbiB3aXJkLi4uLi4uLi4KS29lbm50ZSBoYWx0IG51ciBwYXNzaWVyZW4gZGFzIGlociBkYW5uIGlyZ2VuZHdhbm4gYWxsZWluIG1pdCBoaWdoIGx2bApTcGllbGVybiB1bmQgZGVyZW4geC10aWVzIHNpdHp0LgogTmFqYSwgaXMgbWlyIHd1cnNjaHQgd2FzIGhpZXIgZXJuc3QgZ2Vub21tZW4gd2lyZCwgb2RlciB2b24gd2VtLiBJY2ggbmVobSBlaApuaXggbWVociBlcm5zdC4gU2NoYWRlIGVpZ2VudGxpY2guLi4uCkVsY2lkIG1hbCB3aWVkZXIgbGFlc3Rlcm5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRXJmYWhydW5nc3B1bmt0ZSAoQ2F0d2VhemxlLCAyOS4gTWFpIDIwMDEsIDA3OjU4OjExKToKfiMhIG9uPVppbGx1cyBvdD05OTEwNTEwMjUgb2c9ZGlza3Vzc2lvbgp+IyEgcm49RWxjaWQgcnQ9OTkxMDUwODg3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05OTA4MDYzMTkKamEsIHNjaGFkZSwgZGFzcyBEdSBhbGxlcyBlcm5zdCBuaW1tc3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEVyZmFocnVuZ3NwdW5rdGUgKENhdHdlYXpsZSwgMjkuIE1haSAyMDAxLCAwNzo1ODoxMyk6Cn4jISBvbj1LYXJpcyBvdD05OTEwNTEwNTUgb2c9ZGlza3Vzc2lvbgp+IyEgcm49RWxjaWQgcnQ9OTkxMDUwODg3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05OTA4MDYzMTkKV2VyIG5pbW10IGRlbm4gSExQcyBlcm5zdD8/CgpHZW5lcmFlbGNoZW4gS2FyaXMsIGhhdCBhdWNoIGhldXRlIHdpZWRlciBlaW5lbiBNb3Jkc3NwYXNzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBFcmZhaHJ1bmdzcHVua3RlIChDYXR3ZWF6bGUsIDI5LiBNYWkgMjAwMSwgMDc6NTg6MTcpOgp+IyEgb249UGF0cnluIG90PTk5MTA1Mzk0MyBvZz1kaXNrdXNzaW9uCn4jISBybj1SdW1hdGEgcnQ9OTkxMDUwNjc0IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05OTA4MDYzMTkKZHUgbmltbXN0IGRpY2ggc2VsYnN0IG5pY2h0IGVybnN0PyBhdWNoIG5lIGVpbnN0ZWxsdW5nIDopCgotLS0tLS0KcGF0cnluLCB3b3J0ZSBpbiBkZW4gbXVuZCBsZWdlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEVyZmFocnVuZ3NwdW5rdGUgKENhdHdlYXpsZSwgMjkuIE1haSAyMDAxLCAwNzo1ODo0Myk6Cn4jISBvbj1QYXRyeW4gb3Q9OTkxMDY4NzcyIG9nPWRpc2t1c3Npb24KfiMhIHJuPUVsYmVyZXQgcnQ9OTkxMDY4MzU5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05OTA4MDYzMTkKaWNoIGJpbiBkYWZ1ZXIsIGVsYmVyZXQgYWJ6dXNjaGFmZmVuLgphYndlcnRlbiBvZGVyIGFic2NoYWZmZW4sIGFiZXIgaWNoIGJpbiBkZWZpbnRpdiBmdWVycyBhYnNjaGFmZmVuLgoKLS0tLS0tCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogS29jaG1lc3NlciAoSXNpLCAyOS4gTWFpIDIwMDEsIDEzOjE2OjAyKToKfiMhIHJuPUNhdHdlYXpsZSBydD05OTExMzQ4NzUgcmc9ZC53dWVzdGUKfiMhIHRpZD05OTEwOTI4NjIKVHJhZW5lbiBiZWltIFp3aWViZWxzY2huZWlkZW4ga29lbm5lbiB2ZXJtaWVkZW4gd2VyZGVuLAp3ZW5uIG1hbiBzdGF0dCBkZXIgWndpZWJlbCBlaW5lIGtsZWluZSBLb2hscmFiaSBuaW1tdC4KSXNpIChrbm9ibGF1Y2h3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogS29jaG1lc3NlciAoSHVtbmksIDI5LiBNYWkgMjAwMSwgMTQ6MTI6MzEpOgp+IyEgb249SHVtbmkgb3Q9OTkxMTM4MTg4IG9nPWQud3Vlc3RlCn4jISBybj1DYXR3ZWF6bGUgcnQ9OTkxMTM0ODc1IHJnPWQud3Vlc3RlCn4jISB0aWQ9OTkxMDkyODYyCk51ciBtYWwgc286CgpXZXIgYmVpbSBsZXR6dGVuIEtvbnN0YW56LVN0YXRpIGRhYmVpIHdhciAob2RlciB3YXJzIGRlciB2b3JsZXR6dGU/ICpncnVlYmVsKikKd2Vpc3MsIERBU1MgZXMgendlaWhhZW5kaWdlIE1lc3NlciBnaWJ0LgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEtvY2htZXNzZXIgKEltZGEsIDI5LiBNYWkgMjAwMSwgMTQ6MTQ6NTYpOgp+IyEgcm49SHVtbmkgcnQ9OTkxMTM4MzUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxMDkyODYyCgpKbywgYWJlciB3aWUgc29sbG1hIG1pdCBzb3dhcyBrYW1lcGZlbiwgd2Vubm1hIG5vY2huaWNobWFsIHBpenphc2NobmVpZGVuIGthbm4KZGFtaXQgPwoKSW1kYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEtvY2htZXNzZXIgKEthcmlzLCAyOS4gTWFpIDIwMDEsIDE0OjE2OjAyKToKfiMhIHJuPUltZGEgcnQ9OTkxMTM4NDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxMDkyODYyCldlciBzYWd0IGRlbm4sIGRhc3MgRHUgZGFtaXQgbWV0emVsbiBzb2xsc3Q/PyBCZXN0aW1tdCBrYW5uIG1hbiBkYW1pdCBiZXNzZXIKZm9yc2NoZW4gOikKCkdlbmVyYWVsY2hlbiBLYXJpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogS29jaG1lc3NlciAoSHVtbmksIDI5LiBNYWkgMjAwMSwgMTQ6MTc6MDkpOgp+IyEgcm49S2FyaXMgcnQ9OTkxMTM4NTYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxMDkyODYyCkRhcyB3YXIgYXVjaCBlaW4gLi4uIG5hamEuLi4gZXMgd2FyIGVpbmUgQXJ0IEtvY2htZXNzZXIsIGthbm4gbWFuIHNvIHNhZ2VuIDstKQoKVW5kIGljaCBnbGF1YmUsIFBpenphIHNjaG5laWRlbiB3YXIgZGFzIGVpbnppZ2Ugd2FzIGdpbmcsIG9kZXI/CgpGb3JzY2hlbiBrb25udGUgbWFuIGF1Y2guICxXaWUgc2NobmVpZGUgaWNoIGVpbmUgUGl6emEuLi4nIHVuZCBzbyB3ZWl0ZXIuLi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogS29jaG1lc3NlciAoR3JpbW1ib3JuLCAyOS4gTWFpIDIwMDEsIDE2OjM0OjM5KToKfiMhIHJuPUh1bW5pIHJ0PTk5MTEzODYyOSByZz1zY2htYXJybgp+IyEgdGlkPTk5MTA5Mjg2MgpJY2ggaGFiIGVpbmVzIGRlciBncm9lc3N0ZW4gS29jaG1lc3NlciwgZGllIGVzIGF1ZiBkZW0gTWFya3QgZ2FiLCBiZWkgbWlyIGluCmRlciBLdWVjaGUsIEtsaW5nZW5sYWVuZ2UgaXJnZW5kd2FzIGtuYXBwIHVlYmVyIDMwIGNtIGlpcmMuIFVuZCBkYXMgdmVyd2VuZGUKaWNoIGR1cmNoYXVzIGVpbmhhZW5kaWcuClVuZCB3ZW5uIG1hbiB6LkIuIEtvaGwgc2NobmVpZGVuIHdpbGwgZ2lidHMgbmljaHRzIGJlc3NlcmVzLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogS29jaG1lc3NlciAoSHVtbmksIDI5LiBNYWkgMjAwMSwgMTg6MjI6MjIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5MTE0Njg3OSByZz1zY2htYXJybgp+IyEgdGlkPTk5MTA5Mjg2MgpEYXMgTWVzc2VyIGluIEtvbnN0YW56IGhhdHRlIGFiZXIgendlaSBHcmlmZmUuLi4uCgpEYXMgZGV1dGV0IGZ1ZXIgbWljaCBFSU5ERVVUSUcgYXVmIGVpbmVuIHp3ZWloYWVuZGlnZW4gR2VicmF1Y2ggaGluLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBLb2NobWVzc2VyIChCaWVsZWZlbGQsIDI5LiBNYWkgMjAwMSwgMTg6MjM6MTApOgp+IyEgcm49SHVtbmkgcnQ9OTkxMTUzMzQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxMDkyODYyClZpZWxsZWljaHQgc29sbHRlIGVzIGFiZXIgYXVjaCBibG9zcyB2b24gendlaSBMZXV0ZW4gZ2xlaWNoemVpdGlnCmFscyBFaW5oYWVuZGVyIHZlcndlbmRldCB3ZXJkZW4uLi4/CgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogS29jaG1lc3NlciAoS2FyaXMsIDI5LiBNYWkgMjAwMSwgMTg6NDE6NDkpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTk5MTE1MzM5MCByZz1zY2htYXJybgp+IyEgdGlkPTk5MTA5Mjg2MgpVbmQgd2llZGVyIGhhdCBkYXMgTSBhdXMgbXVkIHp1IGdlc2NobGFnZW4sIHdhcz8gOykKCkdlbmVyYWVsY2hlbiBLYXJpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEtvY2htZXNzZXIgKE1vbnRhbnVzLCAyOS4gTWFpIDIwMDEsIDE5OjUxOjIwKToKfiMhIHJuPUthcmlzIHJ0PTk5MTE1NDUwOSByZz1zY2htYXJybgp+IyEgdGlkPTk5MTA5Mjg2Mgpzbywgd2llIGlociByZXBsaWVzIHN0YXBlbHQsIHNlaWQgaWhyIGVpbmRldXRpZyBpbiBkZXIgZmFsc2NoZW4gUnVicmlrLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBLb2NobWVzc2VyIChNdXBmZWwsIDI5LiBNYWkgMjAwMSwgMTk6NTM6MDUpOgp+IyEgcm49TW9udGFudXMgcnQ9OTkxMTU4NjgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxMDkyODYyCmhtLi4uIGRhcyB6d2VpaGFlbmRpZ2Uga29jaG1lc3NlciBoZWlzc3QgYWJlciBkb2NoIGlyZ2VuZHdpZSBhbmRlcnMgb2Rlcj8gKGljaAprb21tIGdyYWQgbmljaHQgZHJhdWYuLi4gOykgdm9tIHdhZmZlbnR5cCAoaGFuZGxpbmcpIGlzdCBlcyBhYmVyIGVoZXIgbmUgYXh0Cm1pdCBleHRyZW0ga3VyemVuIHN0aWVsLi4uLgoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBLb2NobWVzc2VyIChJc2ksIDI5LiBNYWkgMjAwMSwgMTk6NTQ6MTYpOgp+IyEgcm49TXVwZmVsIHJ0PTk5MTE1ODc4NSByZz1zY2htYXJybgp+IyEgdGlkPTk5MTA5Mjg2MgpyZWRldCBpaHIgdm9uIG5lbSBXaWVnZW1lc3Nlcj8KaXNpIChwZXRlcnNpbGlld2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBLb2NobWVzc2VyIChNb250YW51cywgMjkuIE1haSAyMDAxLCAxOTo1NTowNCk6Cn4jISBybj1Jc2kgcnQ9OTkxMTU4ODU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxMDkyODYyCmRhcmFuIGhhdHRlIGljaCBhdWNoIGdlZGFjaHQuIEFiZXIgZGllIFNwZXppYWxpc3RpbiBmdWVyIEtvbnN0YW56ZXIKU3RhbW10aXNjaGUgbXVlc3N0ZXN0IGphIGVpZ2VudGxpY2ggZHUgc2Vpbi4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogS29jaG1lc3NlciAoSXNpLCAyOS4gTWFpIDIwMDEsIDE5OjU1OjQ0KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk5MTE1ODkwNCByZz1zY2htYXJybgp+IyEgdGlkPTk5MTA5Mjg2MgpJY2ggd2FyIG5pY2h0IGRhIDooCklzaSAob3JhZ3dlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogS29jaG1lc3NlciAoTXVwZmVsLCAyOS4gTWFpIDIwMDEsIDE5OjU3OjUxKToKfiMhIHJuPUlzaSBydD05OTExNTg5NDQgcmc9c2NobWFycm4KfiMhIHRpZD05OTEwOTI4NjIKZ2VuYXUsIHdpZWdlbWVzc2VyLgoKYWVoLi4uCgphZWguLi4uLgoKd2llc28gYW50b3dydGUgaWNoIG5pY2h0IGF1ZiBkZWluZW4gYXJ0aWtlbCBzb25kZXJuIGF1ZiBtb250YW51cz8/IGFyZ3MgaWNoCmJpbiBtZWdhc2NobWFycm4tZ2VzY2hhZWRpZ3QhISEhCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZXNlcyBNdWQgc3RpcmJ0ISAoR2xvaW5zb24sIDMwLiBNYWkgMjAwMSwgMDI6MzM6NDYpOgp+IyEgcm49VHN1bmFtaSBydD05OTExODE3NTUgcmc9YmFsYW5jZQp+IyEgdGlkPTk5MTE4MTc1NQpOYSBlaW4gR2x1ZWNrLCBkYXNzIGljaCBrZWluIHZpZWx2ZXJzcHJlY2hlbmRlciBOYWNod3VjaHMgYmluLiBXYXMgZ2VzY2hhZWhlCm1pdCBpciwgd2VubiBpY2ggYXVzYmxpZWJlIC4uLgpBZWggOykKRGFzIGVzIHNvb28gbGFuZ2UgZGF1ZXJ0IGlzdCB0YXRzYWVjaGxpY2ggZXR3YXMgaGFwcGlnLiBBYmVyIGRhIGhhYmUgaWNoIG5vY2gKa2VpbmUgZGlyZWt0ZW4gRXJmYWhydW5nZW4uCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdXMgZGUuYWx0Lm5ldGRpZ2VzdC4uLiBmdWVyIGRpZSBBZWx0ZXJlbiB1bnRlciB1bnMuLi4gKEZvb2JhciwgMzAuIE1haSAyMDAxLCAwNToyMTo0OCk6CiBGcm9tIC0gV2VkIE1heSAzMCAwNDo1NjoxMCAyMDAxCiBGcm9tOiBKZW5zIFBhcGVuZnVocyA8SmVucy5QYXBlbmZ1aHNAZ214LmRlPgogTmV3c2dyb3VwczogZGUuYWx0Lm5ldGRpZ2VzdAogU3ViamVjdDogW3dvbGZzYnVyZy5ha3R1ZWxsXSBSZTogTW9kZXJuIFRhbGtpbmcga29tbXQgaW4gZGVuIE1vbmRvIENsdWIgYW0KMi4wNgogRm9sbG93dXAtVG86IGRlLnRhbGsuam9rZXMuZAogRGF0ZTogMjggTWF5IDIwMDEgMTg6MDA6MDUgKzAyMDAKIE1lc3NhZ2UtSUQ6IDwwNjI2ZDQ5M2M2MDkyYTM3ZTIxNjM1ZWY1YzRhNmVkZkBmaXR1Zy5kZT4KCiBGcm9tOiBEaXJrIE1lbnplciA8ZC5tZW56ZXJAZ214LmRlPgogTmV3c2dyb3Vwczogd29sZnNidXJnLmFrdHVlbGwKIFN1YmplY3Q6IFJlOiBNb2Rlcm4gVGFsa2luZyBrb21tdCBpbiBkZW4gTW9uZG8gQ2x1YiBhbSAyLjA2CiBEYXRlOiBTdW4sIDI3IE1heSAyMDAxIDExOjQ3OjM3ICswMjAwCiBNZXNzYWdlLUlEOiA8MTQ1NzM2NzQuaGxNRVI3WENnY0BuZXdzLm5pdGVoYXdrLmRlPgoKCiBHbmFkZSBkZW4gRnJ1ZWhnZWJvcmVuZW4uLi4KCiBGdWVyIGFsbGUgYW5nZWhlbmRlbiAzMCBqYWVocmlnZW4sIE1pdHRlIGRyZWlzc2lnZXIgdW5kIGp1bmcgZ2VibGllYmVuZW4KIE9mZmVuIGdlc3RhbmRlbiBrb3R6dCBlcyBtaWNoIGFuOiBkaWVzZXMgZHVtbWUgR2VyZWRlIGRlcgogZGVyemVpdGlnZW4gIkdlbmVyYXRpb24gWiIsIGRpZSA4MGVyIEphaHJlIHdhZXJlbiBsYW5nd2VpbGlnIGdld2VzZW4uCiBUb3RhbGVyIEJvY2ttaXN0LiBIb2VydCBnZW5hdSB6dSwgSWhyIHp1bmdlbmdlcGllcmN0ZW4gVGVra25vaG9wcGxlcgogbWl0IFRhdHRvb3MgYXVmIGRlciBsaW5rZW4gQXJzY2hiYWNrZTogSWhyIHdhcnQgbmljaHQgZGFiZWkhCiBXaXIgTWl0dC1EcmVpc3NpZ2VyIGhhYmVuIHNpZSBsaXZlIGVybGVidDogZGllIEdlYnVydCBkZXMgU3ludGhlc2l6ZXJzCiB1bmQgZGVuIHdhaHJlbiBTb3VuZHRyYWNrIGRlciA4MGVyLCBkZXIgdm9uIEJhbmRzIHdpZSBEZXBlY2hlIE1vZGUsCiBDdXJlIHVuZCBZYXpvbyBnZXNjaHJpZWJlbiB3dXJkZS4gV2lyIGhhYmVuIG5vY2ggbWl0IE1pZGlzY2hsZWlmZW4KIHVuZCBPc3ppbGxvZ3JhcGhlbiBnZWthZW1wZnQhIFdpciBoYWJlbiBFdWVyIFRla2tubyBlcmZ1bmRlbiwgYmVpIHVucwogbmFubnRlIHNpY2ggZGFzIGFiZXIgbm9jaCAiV2F2ZSIgdW5kIHdhciB0YXRzYWVjaGxpY2ggTXVzaWsuICh1ZWJyaWdlbnMKIHZlcnd1cnN0ZW4gRXVyZSBESidzIGRpZSBEaW5nZXIgbm9jaCBoZXV0ZSB6dSBlaW5lciBBcnQgbXVzaWthbGlzY2hlcgogQ2FubmVsb25pIG1pdCBzY2h3dWxzdGlnZXIgQ29tcHV0ZXJiYXNzc29zc2UpLgoKIFdpciBtdXNzdGVuIG5vY2gga2VpbmUgQW5nc3QgaGFiZW4sIGRhc3MgdW5zIFRpbmEgVHVybmVyIG1pdCBkZW0KIGtsYXNzaXNjaGVuIFNlbmlvcmVub2JlcnNjaGVua2VsaGFsc2JydWNoIHZvbiBkZXIgQnVlaG5lIHB1cnplbHQgdW5kCiB3aXIgaGFiZW4gTWFkb25uYSBub2NoIG1pdCBmZXN0ZW4gQnJ1ZXN0ZW4gdW5kIG9obmUgQmFieS1QYXVzZQogZ2VrYW5udCwgSWhyIE5hc2VuIQoKIFdpciB2ZXJiaW5kZW4gIktyYWZ0d2VyayIgbm9jaCBuaWNodCBtaXQgU29sYXJlbmVyZ2llIHVuZCB3aXIgaGF0dGVuCiBub2NoIEFuZ3N0LCBkYXNzIEpvc2Noa2EgRmlzY2hlciB2b24gSG9sZ2VyIEJvcm5lciBtaXQgZGVyIERhY2hsYXR0ZQogdmVycHJ1ZWdlbHQgd2lyZC4gV2lyIGVyaW5uZXJuIHVucyBub2NoIGFuIFRlcnJvcmlzdGVuZmFobmR1bmdzcGxha2F0ZSwKIGF1ZiBkZW5lbiBoaW4gdW5kIHdpZWRlciBlaW4gR2VzaWNodCBsaWViZXZvbGwgbWl0IEt1bGkgdm9uIGVpbmVtCiBTdGFhdHNiZWRpZW5zdGV0ZW4gZHVyY2hnZXN0cmljaGVuIHd1cmRlLi4uLi4KCiBEaWUgQnVuZGVzd2VociB1bmQgZGllIE5WQSBtYWNodGVuIG5vY2ggU3Bhc3MsIHdpciBrYW5udGVuIGphIGRpZQogUmljaHR1bmcsIGF1cyBkZXIgZGVyIEZlaW5kIGtvbW10Li4uLi4uLi4uLgogWnUgdW5zZXJlciBaZWl0IGZpZWxlbiBCcmVhay1EYW5jZXIgYXVmIGRlbiBGdXNzZ2FlbmdlcnpvbmVuIG5vY2ggaGluCiB1bmQgd2llZGVyIHJpY2h0aWcgYXVmIGRpZSBGcmVzc2UgdW5kIFBldGVyIE1hZmZheSB3dXJkZSBiZWltIFN0b25lcy0KIEtvbnplcnQgbm9jaCBvcmRlbnRsaWNoIHZvbiBkZXIgQnVlaG5lIGdlcGZpZmZlbi4gV2lyIGhhdHRlbiBub2NoCiBQbGF0dGVuc3BpZWxlciAoYXVmIDMzIiB1bmQgNDUiKSB1bmQgcmljaHRpZyBnZWlsZSBQbGF0dGVuY292ZXIsIGF1ZgogZGVuZW4gbWFuIGRpZSBOYW1lbiBkZXIgTVVTSUtFUiAodW5kIG5pY2h0IGRlciBQcm9ncmFtbWllcmVyKSBvaG5lCiBMdXBlCiBlcmtlbm5lbiBrb25udGUgdW5kIGRpZSB0YXRzYWVjaGxpY2ggS3Vuc3Qgd2FyZW4gLSBrZWluZSBUZW1wb3Rhc2NoZW4tCiB0dWNoZ3Jvc3NlbiwgZWluZmFyYmlnZW4gQm9va2xldHMgYXVmIGRlbmVuIGdlcmFkZSBub2NoICJuaWNlIFByaWNlIgogbGVzYmFyIGlzdC4KCiBGdXIgdW5zIHdhciBlaW5lIExQIGV0d2FzIEhlaWxpZ2VzLCBkYXMgZ2VwZmxlZ3QgdW5kIGdlbGllYnQKIHdlcmRlbiBtdXNzdGUgLSB1bmQga2VpbmUgQ0QtUGxhc3Rpay1XZWd3ZXJmd2FyZSwgZGllIHNvIHJvYnVzdCBpc3QsCiBkYXNzIG1hbiBzaWUgZHVyY2hhdXMgYXVjaCBhbHMgQmllcmdsYXN1bnRlcnNldHplciB2ZXJ3ZW5kZW4ga2Fubi4KIEJlaSB1bnMgZXJrYW5udGUgamVkZXIgc2VpbiBFaWdlbnR1bSBub2NoIGFuIGRlbiBpbmRpdmlkdWVsbGVuCiBLcmF0emVybi4KCiBXaXIgaGFiZW4ga2VpbiBCQiBnZWd1Y2t0IHNvbmRlcm4gIkZvcm1lbCAxIiwgd28gZXMgZWluZSBnYW56ZSBmZXR0ZQogU3R1bmRlIHdpcmtsaWNoIGd1dGUgTXVzaWt2aWRlb3MgenUgc2VoZW4gZ2FiLCBkaWUgZGFzIExpZWQKIHVudGVybWFsdGVuLCB3aXIgaGF0dGVuIGtlaW4gTVRWIG1pdCBkZWdlbmVyaWVydGVuIENELVdlcmJlc3BvdHMKIG5vdGlnLgogV2lyIGhhYmVuIHVucyAiV2llZGVyc2VoZW4gbWl0IEJyaWdodHNoZWFkIiByZWluZ2V6b2dlbiB1bmQgc2NobGVwcHRlbgogZGFubiBUZWRkaWVzIGluIERpc2tvdGhla2VuIHVuZCBsaWVzc2VuIHVucyBkaWUgSGFhcmUgc2VpdGxpY2ggaW5zCiBHZXNpY2h0IGZhbGxlbiAtIG9obmUgZGllc2UgYmVrbmFja3RlbiwgdW1nZWRyZWh0ZW4gQmFzZWJhbGxtdWV0emVuCiBvZGVyIFdvbGxoYXViZW4uCgogSW4gdW5zZXJlbiBIb3NlbiBrb25udGUgbWFuIHNlaGVuLCBvYiBlaW5lciBlaW5lbiBIaW50ZXJuIGhhdHRlLCBoZXV0ZQogaGFlbmd0IGRlciBBcnNjaCBqYSBiZWkgamVkZW0gdm9uIEV1Y2ggaW4gZGVyIEtuaWVrZWhsZSBkZXIgYWNoIHNvCiB0b2xsZW4gQWRpZGFzLUpvZ2dpbmdob3NlLiBVbmQgZGllIFdlaWJlciBoYXR0ZW4gZGlja2UgTW9wc2UgdW5kCiBzY2htYWxlCiBIdWVmdGVuLCB1bmQgbmljaHQgYW5kZXJzcnVtLiBVbmQgQmF1Y2hmcmVpIG1hY2h0ZSBudXIsIHdlciBlcyBzaWNoCiBsZWlzdGVuCiBrb25udGUgISEhCgogQmVpIHVucyBoYWJlbiBzaWNoIGtlaW5lIE5lb25hemlzIG1pdCBUdWVya2VuIGdla2xvcHB0LCBzb25kZXJuIFB1bmtzCiBtaXQKIFRlZHMsIFRlZHMgbWl0IFBvcHBlcm4sIFBvcHBlciBtaXQgb2Vrb3MgdW5kIG9la29zIG1pdCBkZXIgUG9saXplaS4uLi4KIEJlaSB1bnMgZ2FiIGVzIG5vY2ggTW9mYXMsIEtyYWZ0aXMgdW5kIDgwZXIgYmVpIGRlbmVuIGR1cmNoZ2FlbmdpZyBkaWUKIEJldHJpZWJzZXJsYXVibmlzIGVybG9zY2hlbiB3YXIsIGRlbm4gZGFzIFdvcnQgImZyaXNpZXJlbiIgaGF0dGUKIGRhbWFscyBub2NoIHNlaW5lIGVpZ2VudGxpY2hlIEJlZGV1dHVuZywgd2FzIGlociBrYWhsZ2VzY2hvcmVuZW4KIFBmZWlmZW4gbmllIHZlcnN0ZWhlbiB3ZXJkZXQuCgogVW5kIHdlciBlaW5lbiBGdWVocmVyc2NoZWluIGhhdHRlLCBmdWhyIGFscyBlcnN0ZXMgZWluZW4gS2FlZmVyIG9kZXIKIGVpbmVuCiBEZXV4Y2hldmV1eCwgYmVpIGRlbSBEZWxsZW4gdm9uIEluZGl2aWR1YWxpc211cyB6ZXVndGVuLCBJaHIKIE9wZWwtQ29yc2EtUG9wZWwhCiBVbmQgd2VpbCBpaHIgZ2VyYWRlIGltIExlaXN0dW5nc2t1cnMgSW5mb3JtYXRpayBzaXR6dDogZGllIEFDL0RDCiBFaW5yaXR6dW5nZW4gYXVmIGRlbiBUaXNjaGVuIHNpbmQgdm9uIFVOUyAtIHVuZCBlcyBnZXNjaGllaHQgRXVjaCBudXIKIHJlY2h0LCB3ZW5uIGlociBnbGF1YnQsIGRhc3MgZGllIERpbmdlciBhdXMgZGVtIFBoeXNpa3NhYWwga29tbWVuLCB3bwogaXJnZW5kZWluIGZpbmRpZ2VyIFNjaHVlbGVyIHNlaW5lcnplaXQgZGllIEFia3Vlcnp1bmcgZnVyICJXZWNoc2Vsc3Ryb20vCiBHbGVpY2hzdHJvbSIgaW4gZGllIEJhbmsgZ2VtZWlzc2VsdCBoYXQhCgogX0Fsc28gZXJ6YWVobHQgdW5zIG5pY2h0cyB1ZWJlciBkaWUgODBlci4gVW5kIGphLCBoaWVybWl0IGVudHNjaHVsZGlnZQogaWNoCiBtaWNoLCBhdWNoIGltIE5hbWVuIG1laW5lciBBbHRlcnNnZW5vc3NlbiwgZnVyIE1vZGVybiBUYWxraW5nLiBEYXMKIGhhYmVuIHdpciBuaWNodCBnZXdvbGx0Ll8KCiBHcnVlc3NlIERpcmsKCiAtLSAKIFN1Ym1pc3Npb25lbiBmdWVyIGRlLmFsdC5uZXRkaWdlc3QgYml0dGUgYW4KIDxkZS1hbHQtbmV0ZGlnZXN0QG1vZGVyYXRvcnMuZGFuYS5kZT4gc2NoaWNrZW4uCiBEZXIgU3VibWl0dGVyIGlzdCBmdWVyIGRlbiBJbmhhbHQgZGVyIEVpbnJlaWNodW5nIHZlcmFudHdvcnRsaWNoLCAKIG5pY2h0IGRlciBNb2RlcmF0b3IgZGVyIE5ld3NncnVwcGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBQYWRlcmJvcm4uIDkuNi4yMDAxLiAxOSBVaHIgR3J1ZW5lciBGcm9zY2ggKEh1bW5pLCAzMC4gTWFpIDIwMDEsIDEwOjEwOjI3KToKfiMhIHJuPUJpZWxlZmVsZCBydD05OTExNzAzNDIgcmc9dHJlZmZlbgp+IyEgdGlkPTk5MTA0ODk1MQpHaWJzIHp1IEJpZWxlZmVsZCwgZ2VuYXUgd2llIGljaCBoYXN0IER1IG5pY2h0ICxFaW4gQmllcicgc29uZGVybiAsRWluIEJpZXIsCmdlc2NodWV0dGVsdCwgbmljaHQgZ2VydWVocnQnIGJlc3RlbGx0LgpEQVMgdWViZXJmb3JkZXJ0ICh6dW1pbmRlc3QgZGllIGVyc3RlbiAxMCBTZWt1bmRlbiwgZGVtIEdlc2ljaHRzYXVzZHJ1Y2sgbmFjaCkKSkVERU4gS2VsbG5lci4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEaWVzZXMgTXVkIHN0aXJidCEgKEh1bW5pLCAzMC4gTWFpIDIwMDEsIDEzOjQyOjM1KToKfiMhIHJuPUFyayBydD05OTEyMjI4ODMgcmc9YmFsYW5jZQp+IyEgdGlkPTk5MTE4MzM1NApBbHNvIHNvICxub3JtYWxlJyBJdGVtcyB3aWUgVG9kZXNmYWxsZW4sIFBoYXJhb25lbmZsdWVjaGUgdW5kIHNvPwoKSHVtbmksIGluIGRlciByaWNodGlnZW4gUnVicmlrIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRGllc2VzIE11ZCBzdGlyYnQhIChHbG9pbnNvbiwgMzAuIE1haSAyMDAxLCAxMzo0MzozMSk6Cn4jISBybj1IdW1uaSBydD05OTEyMjI5NTUgcmc9c2NobWFycm4KfiMhIHRpZD05OTExODMzNTQKRGllIG11ZXNzZW4gYmFsYW5jaWVydCB3ZXJkZW4/IEJhbGFuY2llcnQgd2lyZCBkb2NoIG51ciBkYXMgd2FzIFNwaWVsZXJuCm51ZXR6dCA6KQoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRGllc2VzIE11ZCBzdGlyYnQhIChBcmssIDMwLiBNYWkgMjAwMSwgMTQ6NDE6MDEpOgp+IyEgcm49R2xvaW5zb24gcnQ9OTkxMjIzMDExIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxMTgzMzU0CktvbW10IHNjaG9uLiBCYWxhbmNpZXJ0IHdpcmQsIHdhcyBhbmRlcmVuIGF1Y2ggZWluZW4gdWViZXJtYWVzc2lnZW4gVm9ydGVpbAp2ZXJzY2hhZmZlbiBrb2VubnRlIGltIFNwaWVsLiBXZW5uIGRpZXNlIERpbmdlIGRhenUgemFlaGxlbiwgd3VlcmRlIGVzIG1pY2gKc2VociB3dW5kZXJuLCB6YWVobGUgaWNoIGRpZXNlIE9iamVrdGUgZG9jaCBvZWZ0ZXIgenUgZGVuIE5hY2h0ZWlsZW4gYmVpIHp1CmJlc2NoYWZmZW5kZW4gYmFsYW5jZXVudGVyd29yZmVuZW4gT2JqZWt0ZW4uIFp3ZWltYWwgYmV3ZXJ0ZW4/IE5laW4gZGFua2UuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ2hyb25pY2xlcyBvZiBHZW9yZ2UgKFJvbmRhLCAzMC4gTWFpIDIwMDEsIDE5OjE3OjQxKToKV2FybnVuZzogTmljaHQgYW5zZWhlbiwgd2VubiBtYW4ga2VpbmUgWmVpdCBoYXQuIE9kZXIgc2VsYnN0IG1hbCBTdXBwb3J0Cm1hY2hlbiBtdXNzdGUuIE9kZXIgdmllbGxlaWNodCBncmFkZSBkYW5uPwoKaHR0cDovL2Nocm9uaWNsZXNvZmdlb3JnZS5uYW5jLmNvbS8KClJvbmRhICprYW5udGUgZGllIFNpdGUgYmlzaGVyIG5vY2ggbmljaHQuLi4qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGJlaSBHZXZhdHRlciBUb2QgKFBpdGZhbGwsIDMwLiBNYWkgMjAwMSwgMTk6Mzk6MjEpOgoKW1RvZDpMYXJzXSBFaW5lIFJhdHRlIGhhdCBnZXJhZGUgSGlzYXN1bCB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgUmF0dGVdIERhcyB3YXIgd29obCBlaW5tYWwgbmljaHRzPyEKICAuLi4ubm9ybWFsLz8/Py4uLi4uLi4uLiBSYXR0ZS4uLi4uLi4uIDogSGlzQXN1bC4uLi4uLiAqKioqKioqKiAtLSBnZXRyb2ZmZW4KICAuLi4ubm9ybWFsLz8/Py4uLi4uLi4uLiBSYXR0ZS4uLi4uLi4uIDogSGlzQXN1bC4uLi4uLiAqKioqKioqKiAtLSBoYXJ0CiAgLi4uLm5vcm1hbC8/Pz8uLi4uLi4uLi4gUmF0dGUuLi4uLi4uLiA6IEhpc0FzdWwuLi4uLi4gKioqKioqKiogLS0gS3JhY2hlbgogIC4uLi5ub3JtYWwvPz8/Li4uLi4uLi4uIFJhdHRlLi4uLi4uLi4gOiBIaXNBc3VsLi4uLi4uICoqKioqKioqIC0tIGhhcnQKICAuLi4ubm9ybWFsLz8/Py4uLi4uLi4uLiBSYXR0ZS4uLi4uLi4uIDogSGlzQXN1bC4uLi4uLiAqKioqKioqKiAtLSBLcmFjaGVuCiAgLi4uLm5vcm1hbC8/Pz8uLi4uLi4uLi4gUmF0dGUuLi4uLi4uLiA6IEhpc0FzdWwuLi4uLi4gKioqKioqKiogLS0gS3JhY2hlbgogIC4uLi5ub3JtYWwvPz8/Li4uLi4uLi4uIFJhdHRlLi4uLi4uLi4gOiBIaXNBc3VsLi4uLi4uICoqKioqKioqIC0tIGhhcnQKICAuLi4ubm9ybWFsLz8/Py4uLi4uLi4uLiBSYXR0ZS4uLi4uLi4uIDogSGlzQXN1bC4uLi4uLiAqKioqKioqKiAtLSBoYXJ0CiAgLi4uLm5vcm1hbC8/Pz8uLi4uLi4uLi4gUmF0dGUuLi4uLi4uLiA6IEhpc0FzdWwuLi4uLi4gKioqKioqKiogLS0gc2VociBoYXJ0CiAgLi4uLm5vcm1hbC8/Pz8uLi4uLi4uLi4gUmF0dGUuLi4uLi4uLiA6IEhpc0FzdWwuLi4uLi4gKioqKioqKiogLS0gc2VociBoYXJ0CiAgLi4uLm5vcm1hbC8/Pz8uLi4uLi4uLi4gUmF0dGUuLi4uLi4uLiA6IEhpc0FzdWwuLi4uLi4gKioqKioqKiogLS0gZ2V0cm9mZmVuCltCZWlsZWlkOkdudXJ0XSB3YWFhYWFhYWFhCltCZWlsZWlkOkphc21pbl0gYXVhCgpwaXQqIGRlbmt0IC4gbyBPIChMZWljaGVuc2NoYWVuZGVyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogUGFkZXJib3JuLiA5LjYuMjAwMS4gMTkgVWhyIEdydWVuZXIgRnJvc2NoIChCaWVsZWZlbGQsIDMwLiBNYWkgMjAwMSwgMjI6MjI6NTkpOgp+IyEgcm49SHVtbmkgcnQ9OTkxMjEwMjI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxMDQ4OTUxCk5laW4gSHVtbmksIGRlbiBadXNhdHogaGFiZSBpY2ggbWlyIGhvZWNoc3RlbnMgZ2VkYWNodCA7LSkgRGllIGRhbWFsaWdlCkJlc3RlbGx1bmcgbGF1dGV0ZSB3aXJrbGljaCBhdWYgIkVpbiBCaWVyIi4gVHJveSB1bmQgQm9pbmcga29lbm50ZW4Kc2ljaCBldnRsLiBub2NoIGRyYW4gZXJpbm5lcm4uLi4KCi1CaWVsZWZlbGQgKGFsdGUgRXJpbm5lcnVuZ2VuIHJhdXNrcmFtZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVlciBMYXJpbmNoZW4gOikgKEFuYXRvbCwgMzAuIE1haSAyMDAxLCAyMjozMjozOSk6CgppbiBkdWJpbyBwcm8gZm9ybWEgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEJFUkxJTiAoUm9uZGEsIDMwLiBNYWkgMjAwMSwgMjI6NTU6NTIpOgp+IyEgcm49R2xvaW5zb24gcnQ9OTkxMjU1NjY4IHJnPXRyZWZmZW4KfiMhIHRpZD05OTExNDY3MjEKSG1tLi4uIGRhcyBwYXNzdGUgZWNodDoKCltHbG9pbiogc2NocmVpYnQgbmVuIGJpc3NjaGVuIHdhcyB6dW0gU3RhdGkgQl0KR2xvaW4oc29uKQoKUFM6IEF1c3NlciBkYXNzIFRpbmkmaWNoIGRpZXNlbiBGcmVpdGFnIG5pY2h0IGRhIHNpbmQgdW5kIGRlbiBuaWNodCBhdXNydWZlbi4KPkZhdWxlcyBQYWNrISBLZWluZXIgc2NocmVpYnQgd2FzIQoKTWFuY2htYWwgcGFzc3QgbWVpbmUgJ05pY2h0cyBOZXVlcyBhdWYgZGVyIFdlbHQtTWVsZHVuZycgZWNodCBndXQuLi4KClJvbmRhICpzY2htYXJybmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBQYWRlcmJvcm4uIDkuNi4yMDAxLiAxOSBVaHIgR3J1ZW5lciBGcm9zY2ggKFRyb3ksIDMxLiBNYWkgMjAwMSwgMDk6MzQ6MDkpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTk5MTI1NDE3OSByZz1zY2htYXJybgp+IyEgdGlkPTk5MTA0ODk1MQpIbW0uIEVzIGtvZW5udGUgYXVjaCBzb3dhcyB3aWUgIkVpbiBCaWFlIiBnZXdlc2VuIHNlaW4uLi4KClRyb3kgLSBkZW5rdCBpbSBNb21lbnQgZWhlciBldHdhcyBub3JkZGV1dHNjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVlciBOb25uZS4uLiAoRm9vYmFyLCAzMS4gTWFpIDIwMDEsIDE5OjE3OjM1KToKZWluIHBhYXIgZmxhbWVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogRGllc2VzIE11ZCBzdGlyYnQhIChSb2NodXMsIDMxLiBNYWkgMjAwMSwgMTk6Mzk6MjgpOgp+IyEgb249Um9jaHVzIG90PTk5MTMzMDc1NiBvZz1iYWxhbmNlCn4jISBybj1Nb250YW51cyBydD05OTEzMjM4MDUgcmc9YmFsYW5jZQp+IyEgdGlkPTk5MTE4MzM1NApXZWdoaWVyIGltIDQgZ2V3aW5udCBzY2hsYWdlbj8KQmF1IGljaCBlaW4sIHdlbm4gaWNoIG1hbCBaZWl0IGhhYmUgOi0pCkFsbGVyZGluZ3MgbnVyLCB3ZW5uIGRlciBXZWdoaWVyIGFuZmFlbmd0IDotKQoKICBSb2NodXMKClBTOiBFcyBnaWJ0IGRhIG5lIG5ldHRlIERpcGxvbWFyYmVpdCB2b24gVmljdG9yIEFsbGlzIHp1IGRlbSBUaGVtYS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IERpZXNlcyBNdWQgc3RpcmJ0ISAoSGlnaHQsIDMxLiBNYWkgMjAwMSwgMjA6NDA6MjMpOgp+IyEgcm49Um9jaHVzIHJ0PTk5MTMzMDc2OCByZz1zY2htYXJybgp+IyEgdGlkPTk5MTE4MzM1NAp1bnRlcnN0ZWggZGljaCAuLi4gZGVyIHNvbGwgZ2VmYWVsbGlnc3QgbWl0IHZzIGthZW1wZmVuIAoKaGlnaHQgd2VnaGllcnMgaGFlbmRlIG5pY2h0IG1vZWdlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBicmllZiAoR2xvaW5zb24sICAxLiBKdW4gMjAwMSwgMTA6MTk6MDUpOgp+IyEgcm49QmVuZGVpZ2lkIHJ0PTk5MTM4MjY4NyByZz1hbnplaWdlbgp+IyEgdGlkPTk5MTM4MjY4NwpNb2dsaT8gQW0gRW5kZSBnYXIgTW9nZ2w/CgpOaWNodCBtYXJraWVydGVyIFp3ZWl0aWUhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcuLi4gKEJpZWxlZmVsZCwgIDEuIEp1biAyMDAxLCAxMDozNTo0OSk6CltBbGxnZW1laW46T3Jkb3NdIHdpZSBrYW5uIGljaCBtaWNoIGF1cyBkZW0gd2VpaGVyIGJlZnJlaWVuPwpbQWxsZ2VtZWluOkRlZXBibHVlXSBEYXMgbWFjaHQgTGFycyBmdWVyIERpY2gKW0FsbGdlbWVpbjpPcmRvc10gZGFua2UKCjEwIFNla3VuZGVuIHNwYWV0ZXIuLi4KCltUb2Q6TGFyc10gRWluIHp1Z2Vmcm9yZW5lciBXZWloZXIgaGF0IGdlcmFkZSBPcmRvcyB1bWdlYnJhY2h0LgoKQml0dGUuLi4KLUJpZWxlZmVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFuY2hlIGhhYmVucyBlaWxpZy4uLiAoQmllbGVmZWxkLCAgMS4gSnVuIDIwMDEsIDE1OjMyOjI0KToKVW5nZXNjaG5pdHRlbjoKCkRpZWRlciAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEZWluIEZyZXVuZCBEaWVkZXIgdGVpbHQgRGlyIG1pdDogaHVodQpEZWluIEZyZXVuZCBEaWVkZXIga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpbVG9kOkxhcnNdIEVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsIGhhdCBnZXJhZGUgRGllZGVyIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWxdIFBmZmZmZmZmZmZmZnQuLi4uLi4uUExVTVBTIQoKU2VsdHNhbWUgQXJ0LCBIYWxsbyB6dSBzYWdlbi4uLiA7LSkKCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwaWVsc3VjaHQuLi4gKEZvb2JhciwgIDIuIEp1biAyMDAxLCAwMzoxOTozNCk6CmVpbiBXYW5kbGVyIGtvbW10IGF1cyBkZW0gTHVja3kgVGlnZXJgcyBXZXR0cGFsYXN0IGhlcmF1cy4KCkZvb2JhciAtIGF1Y2ggbWFsIGVpbnplaWxlcm5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNwaWVsc3VjaHQuLi4gKEZvb2JhciwgIDIuIEp1biAyMDAxLCAwMzoyMjo1NSk6Cn4jISBybj1Gb29iYXIgcnQ9OTkxNDQ0Nzc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxNDQ0Nzc0CkRpZSBGb3J0c2V0enVuZzoKCkplbWFuZCBiZXRyaXR0IGRlbiBXZXR0cGFsYXN0IGltIFN1ZWRlbi4KCkZvb2JhciAtIHNjaG9uIHdpZWRlciBlaW56ZWlsZXJuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRvbG1ldHNjaGVyIDopKSAoRWxiZXJldCwgIDIuIEp1biAyMDAxLCAyMzo1OTo0NSk6CkZvb2JhciBzYWd0OiBGaWZjaGUnZiBGJ2l0emUgZmlmY2h0IGYnaWZjaGUgRmlmY2hlLgoKRWxiaSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IEtvY2htZXNzZXIgKElzaSwgIDQuIEp1biAyMDAxLCAxODo1NDoxMCk6Cn4jISBybj1UYXJhZ29uIHJ0PTk5MTY2ODMzNyByZz1kLnd1ZXN0ZQp+IyEgdGlkPTk5MTA5Mjg2MgpBbHNvIGRpZSB6d2Vpc2NobmVpZGlnZW4gV2llZ2VtZXNzZXIgc2luZCBob2VjaHN0CnVucHJha3Rpc2NoLCBkaWUgYmVrb21tdCBtYW4gc28gc2NobGNodCBzYXVlcmIuCmlzaShlaW5zY2hlaW5kaWdlIHdpZWdlc2Vzc2VyLHp3ZWloYWVuZGlnLHdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogS29jaG1lc3NlciAoR3JpbW1ib3JuLCAgNC4gSnVuIDIwMDEsIDE5OjMzOjI5KToKfiMhIHJuPUlzaSBydD05OTE2NzM2NTAgcmc9c2NobWFycm4KfiMhIHRpZD05OTEwOTI4NjIKVW5kIGljaCBoYWJlIHNvIGVpbiBjaGluZXNpc2NoZXMgSGFja2ViZWlsLCBkYXMgZWlnbmV0IHNpY2ggZXJzdGF1bmxpY2ggZ3V0Cnp1bSBlaW5oYWVuZGlnZW4gdW5kIC1zY2huZWlkaWdlbiB3aWVnZW4uIEFiZXIgZGFzIGlzdCBlaW4gYW5kZXJlcyBUaGVtYS4uLgo7LSkKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IEtvY2htZXNzZXIgKE1vbnRhbnVzLCAgNC4gSnVuIDIwMDEsIDIxOjI5OjIyKToKfiMhIHJuPUdyaW1tYm9ybiBydD05OTE2NzYwMDkgcmc9c2NobWFycm4KfiMhIHRpZD05OTEwOTI4NjIKSWhyIGhhYnQgdW5zZXJlbiBUaHJlYWQgZ2VrbGF1dCEKR2VidCBpaG4genVydWVjaywgaWhyIFNjaHVmdGUhIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmFtZW4gc2luZCBzY2hhbGwgdW5kIHJhdWNoIChHdW1taWh1aG4sICA1LiBKdW4gMjAwMSwgMDY6NTU6NDEpOgp3aXJkIHdhcyBsYWVuZ2VyLCBhYmVyIGljaCBiaW4gZ2V6d3VuZ2VuIHdvcmRlbiBlcyB6dSBwb3N0ZW4sIGF1c3NlcmRlbSB3YXIgZXMKZWluZmFjaCBudXIgbHVzdGlnIDspCgpbQWxsZ2VtZWluOkRlbGZpbl0gVHNjaHVlc3MhIERpZSBNYWdpZXJvYnJpZ2tlaXQgd3VlbnNjaHQgbWljaCBtaXQgbWVpbmVtCltBbGxnZW1laW46RGVsZmluXSBOYW1lbiBoaWVyIG5pY2ggd2VpdGVyIDooCltBbGxnZW1laW46RWxiZXJldF0gd2llc28gZGFzIG5jaWh0LCB3ZW5ucyBuY2lodCBnZWJhbmlzaGVkIGlzdD8KW0FsbGdlbWVpbjpIaXNBc3VsXSBUamEgRWxiaSwgZGllIHNjaGxhbXBpZ2VuIE1hZ3MuLi4gOykKW0FsbGdlbWVpbjpJbWRhIGdydWViZWx0Li4uXQpbQWxsZ2VtZWluOkNvcmFrXSBvbWFyeWxsaXMgd2FyIGJpcyB2b3Iga3VyemVtIGF1Y2ggbm9jaCBmcmVpIDspCltBbGxnZW1laW46SW1kYV0ga29tbSBhbHMgZmxpcHBlciB3aWVkZXIuLi4KW0FsbGdlbWVpbjpFbGJlcmV0XSBlYmVuIGZsaXBwZXIgOykKW0FsbGdlbWVpbjpIaXNBc3VsXSBEZWxmaW5uZW4gbXVlc3N0IGlociBub2NoIGJhbmlzaGVuIDspICBEZXIgUGx1cmFsIGRhcmYgYXUKW0FsbGdlbWVpbjpIaXNBc3VsXSBuZWQgZ2VobgpbQWxsZ2VtZWluOkVsYmVyZXRdIGFsc28gaWNoIHd1ZXNzdCBuY2lodCwgd2FzIGFuIGZsaXBwZXJuIGJhbmlzaHd1ZXJkaWcgaXN0PwpbQWxsZ2VtZWluOkhpc0FzdWxdIE9ua2VscnlsbGlzIGdlaHQgYWJlciBqZXR6dCBub2NoLi4uCltBbGxnZW1laW46RWxiZXJldF0gaWNoIGhhYiBiYWJ5cnlsbGlzIGF1Y2ggZnJlaXdpbGxpZyBnZWxvZXNjaHQsIGFiZXIgbmljaHQKW0FsbGdlbWVpbjpFbGJlcmV0XSB3ZWlsIG1pY2ggZWluZXIgZ2V6d3VuZ2VuIGhhdApbQWxsZ2VtZWluOkhpc0FzdWxdIG5hamEsIHdhciBhYmVyIHdpdHppZy4gRGVscGhpbiA9IERlbGZpbgpbQWxsZ2VtZWluOkhpc0FzdWxdIChSZWNodHNjaHJlaWJyZWZvcm0pCltBbGxnZW1laW46RWxiZXJldF0gYWJlciB3aXJrbGljaCwgZXJrbGFlciBtaXIgbWFsIGJpdHRlIGVpbmVyLCB3YXMgYW4gRGVsZmluCltBbGxnZW1laW46RWxiZXJldF0gKCBhbGlhcyBGbGlwcGVyLCBCZXRvbnVuZyBhdWYgZGVyIHp3ZWl0ZW4gU2lsYmUpIHNjaGxpbW0KW0FsbGdlbWVpbjpFbGJlcmV0XSBpc3QgPwpbQWxsZ2VtZWluOkVsYmVyZXRdIGViZW4KW0FsbGdlbWVpbjpIaXNBc3VsXSBGcmFnIFBhZHJlaWMgOykKW0FsbGdlbWVpbjpXaW5rZWxyaWVkXSBkZXIgTWFnIG1vZWdlIHNpY2ggYml0dGUgZXJrbGFlcmVuCltBbGxnZW1laW46VmFyZGlvbl0gaXN0IG5hY2ggZGVyIG5ldWVuIHJlY2h0c2NocmVpYnVuZyBkaWUga29ycmVrdGUKW0FsbGdlbWVpbjpWYXJkaW9uXSBzY2hyZWlid2Vpc2UgZnVlciBkYXMgdGllcgpbQWxsZ2VtZWluOkVsYmVyZXRdIHdlbm5zIG5lbiBhbmRlcmVyIHdlaXNzLCBrYW5uIGRlciBhdWNoIGFudHJ3b3J0ZW4KW0FsbGdlbWVpbjpEZWxmaW5dIEljaCBiaW4gdW5lcnd1ZW5zY2h0PyBXaWV6bz8gU2NobWVjayBpY2ggbmFjaCBUaHVuZmlzY2g/CltBbGxnZW1laW46V2FsZGldIGRlbGxmaWVobj8gLSBmaXNjaCA/Pz8/ICpobXBmKgpbQWxsZ2VtZWluOkhpc0FzdWxdIGhpaGkKW0FsbGdlbWVpbjpJbWRhXSBrYXR6ZSB1bmQgZmlzY2ggPyB3aWUgcGFzc3RuIGRhcyB6dXNhbW1lbiA/CltBbGxnZW1laW46SW1kYV0gYWNoLCBpcyBkb2NoIGFsbGVzIHNvIGtvbWlzY2hlcyBmaXNjaGdlc29ja3MsIHdhcyBkYSBpbQpbQWxsZ2VtZWluOkltZGFdIHdhc3NlciBydW1zY2h3aW1tdC4uLgpbQWxsZ2VtZWluOkphbW1lcnlsbGlzIGphbW1lcnQgaGVyZWluLl0KW0FsbGdlbWVpbjpFbGJlcmV0IHJvdGZsdF0KW0FsbGdlbWVpbjpHb2V0aGUgd2FlbHp0IHNpY2guXQpbQWxsZ2VtZWluOkphbW1lcnlsbGlzIHdlaW50IGxlaXNlIGluIGlocmVtIER1ZW1iZWwuI10KW0FsbGdlbWVpbjpFbGJlcmV0IG5pY2t0IHdlaXNlXQpbQWxsZ2VtZWluOkphbW1lcnlsbGlzXSBNb2cgbWlociBkZW5uIGdvciBnZWVuYSBoZWxmbj8KW0FsbGdlbWVpbjpIaXNBc3VsXSAoYykgVmVyZ2Vzc2VuID8KW0FsbGdlbWVpbjpFbGJlcmV0XSB3aWVzbz8KW0FsbGdlbWVpbjpIaXNBc3VsXSBpY2ggbWVpbiBudXIuLi4KW0FsbGdlbWVpbjpFbGJlcmV0XSBoYWIgaWNoIHdlaXNlIG1laW4gd2Vpc3NlcyBIYXVwdCBiZXdlZ3Q/IDspCltBbGxnZW1laW46TW9ocmdvdHRdIGpldHp0ZXJ0bGUuLi4KW0FsbGdlbWVpbjpFbGJlcmV0XSA6KQpbQWxsZ2VtZWluOkhpc0FzdWwgZGVua3QgLiBvIE8gKEhhbHogb2lyZSBNb2lsYS4uLildCltBbGxnZW1laW46UGFkcmVpbW9uIGJsdWJiZXJ0IGltIFRha3QuXQpbQWxsZ2VtZWluOlBhdHJ5bW9uIG1hY2h0IGVpbmUgU2F0aXJlYXR0YWNrZSBhdWYgUEFkcmVpbW9uLl0KW0FsbGdlbWVpbjpTcGVsbGJlcmV0XSBpcyB2ZXJzdGVpbmVydC4KCltBbGxnZW1laW46QW1hcnlsbGlzXSBpYSBoYXB0IGphIGFsbGUgbmVuIGtvbXBsZXR0biBIYXUKW0FsbGdlbWVpbjpBbWFyeWxsaXMgd2llZ3QgYmVkYWVjaHRpZyBpaHIgd2Vpc2VzIEhhdXB0Ll0KW0FsbGdlbWVpbjpFbGJlcmV0XSBub2UsIG5lbiBoYXUgaGF0LCB3ZXIgZGVuIG5hbWVuIERlbGZpbiB1bmVyd3VlbnNjaHQgZmluZGV0CltBbGxnZW1laW46QW1hcnlsbGlzXSB3ZXIgZmluZGV0IGRlbm4gZGFzPwpbQWxsZ2VtZWluOkZpc0FzdWxdIGJhc3RlbHN0IHNpY2ggbmUgRmFtaWxpZSB1bSBkYW5uIHNwYWV0ZXIgZGllIFRvbmxlaXRlcgpbQWxsZ2VtZWluOkZpc0FzdWxdIHNwaWVsZW4genUga29lbm5lbi4uLgpbQWxsZ2VtZWluOkhpc0FzdWxdIFBhZHJlaWMgbWVpbnRlIGVyIGtvZW5udGUgenUgVmVyd2VjaHNsdW5nZW4gZnVlaHJlbgpbQWxsZ2VtZWluOkJpZWxlYWNrZXJdIHdvbWl0PwpbQWxsZ2VtZWluOkVsYmVyZXRdIGJlaSBkZWxmaW4gPz8/CltBbGxnZW1laW46SGlzQXN1bF0gRGVsZiBpcyBkaWUgQWJrdWVyenVuZyBmdWVyIER1bmtlbGVsZiA9PiBEZWxmaW4gZnVlcgpbQWxsZ2VtZWluOkhpc0FzdWxdIER1bmtlbGVsZmluIDopCltBbGxnZW1laW46RWxiZXJldF0gYWggamEKW0FsbGdlbWVpbjpKYW1tZXJ5bGxpc10gaWEgaGFwdCBnZXJ1Zm4/CltBbGxnZW1laW46VmFyZGlvbl0gZGFzIGhlaXNzdCBFbGZfZV8uIGJpdHRlIHdlciBoYXQgbnVyIGplbWFscyBkYXMgd29ydApbQWxsZ2VtZWluOlZhcmRpb25dIEVsZl9pbl8gdmVyYnJvY2hlbj8KW0FsbGdlbWVpbjpKYW1tZXJ5bGxpcyBiaWV0ZXQgWmVvZmxlLl0KW0FsbGdlbWVpbjpFbGJlcmV0IG5pY2t0IFZhcmRpb24gd2Vpc2UgenUgKGMpIHdlciB3ZWlzcyB3ZXJdCltBbGxnZW1laW46SmFtbWVyeWxsaXMgYmlldGV0IFp3b2VsZmUuXQpbQWxsZ2VtZWluOkhpc0FzdWxdIEFiZXIgd2FzIGhhdCBlaW4gRGVsZmluIChmcnVlaGVyIERlbHBoaW4pIG1pdCBlaW5lbQpbQWxsZ2VtZWluOkhpc0FzdWxdIER1bmtlbGVsZiBnZW1laW5zYW0uLi4KW0FsbGdlbWVpbjpBbWFyeWxsaXMgenVlY2t0IGVpbiBUb29sLl0KW0FsbGdlbWVpbjpQYWRyZWltb24gaXN0IGVoIGFsYmVybi5dCltBbGxnZW1laW46RHJvbV0gaXMgZGFzIGpldHp0IHNjaGxpbW0gd2VubiBpY2ggc28gaGVpc3NlPwpbQWxsZ2VtZWluOk1pbmdvXSBBVUYgSUhOISBSVUVDSyBERU4gUklORyBSQVVTIQpbQWxsZ2VtZWluOkRyb20gZ3JpbnN0XQpbQWxsZ2VtZWluOlN1cGVyVXNlcl0gamV0enQgbWFjaHQgYWJlciBtYWwgbmVuIFB1bmt0IQpbQWxsZ2VtZWluOkZpc0FzdWxdIGphLCBnaWJzIHVucyA6KQpbQWxsZ2VtZWluOkVsYmVyZXRdIGRhIGZlaGx0IG5lbiBlIGluIGRlaW5lbSBuYW1lbiA7KQpbQWxsZ2VtZWluOlNwZWxsYmVyZXRdIGJlaSBtaXIgPyBub2UsIG9kZXIgPwpbQWxsZ2VtZWluOkVsYmVyZXRdIDopCltBbGxnZW1laW46UG9pbmddIEFjaCwgS2xhcHBlIQpbQWxsZ2VtZWluOkRpZXNlIGJsb2VkZW4gTmFtZW4gYWJlciBhdWNoLl0KW0FsbGdlbWVpbjpFbGJlcmV0XSB3ZW5uIGRhbm4gYmlkZGUgU3BlbGxiZXJldGgsIGljaCBoYWIgbWl0IHNwZWxscyBuaXggYW0gSHV0CltBbGxnZW1laW46RWxiZXJldF0gb2ggamUsIGRpZXNlIHdhciBuY2lodCBnZWJhbmlzaGVkPyA7KSkKW0FsbGdlbWVpbjpHb2V0aGVdIGlzIGRhcyBrZWluIE1hZyA/CltBbGxnZW1laW46UnVtYmxhYmxhXSBFdHp0IGlzdCBhYmVyIFNjaHVseiEKW0FsbGdlbWVpbjpFbGJlcmV0XSBmaW5nZXIgZGllc2UgOykKW0FsbGdlbWVpbjpEaWVzZXIgTmFtZSBpc3QgYXVjaCBub2NoIHp1IGhhYmVuLl0KW0FsbGdlbWVpbjpFbGJlcmV0IGdyaW5zdF0KW0FsbGdlbWVpbjpKZW5lIGRvcnQsIGRpZSBzb2xsdGVuIGdlYmFuaXNoZWQgd2VyZGVuIV0KW0FsbGdlbWVpbjpXdXJzdG1hZ10gaWNoIHphcCBldWNoIGFsbGUKW0FsbGdlbWVpbjpFbGJlcmV0XSBuYW1lbiBzaW5kIGVoIHNjaGxhbGwgdW5kIHJhdWNoCltBbGxnZW1laW46TmFtZW5dIHdhcyBoYWJ0IGlociBkZW5uIGFsbGUgPwpbQWxsZ2VtZWluOlJldHRlIHNpY2ggd2VyIGthbm4hXQpbQWxsZ2VtZWluOlZpZWxlIE5hbWVuIHNpbmQgbm9jaCB6dSBiYW5pc2hlbi5dCltBbGxnZW1laW46SGlzQXN1bF0gU2NoYXR0ZW5tYWVubmVyIHNvbGx0ZSBlcyBhdSBuZWQgZ2ViZW4gOikKW0FsbGdlbWVpbjpUb2V0ZSBhbGxlXQpbQWxsZ2VtZWluOkVsYmVyZXRdIDopCltBbGxnZW1laW46Q29yYWsgbGVpaHQgc2ljaCBncmFkIG1hbCBlaW4gWmFwLVRvb2wgYXVzIEFtYXJ5bGxpcyBHcm9zc2xhZ2VyXQpbQWxsZ2VtZWluOkd1bW1paHVobl0gSGFseiBvaXJlIE1vaWxhIDspCgpbQWxsZ2VtZWluOlNhdWZlbiBzYXVmZW4gc2F1ZmVuIHNhdWZlbiBmcmVzc2VuIHVuZCBibHVtZW5mbHVlY2tlbi4uLl0KW0FsbGdlbWVpbjpGcm9zY2hlbiBmaW5kZXQgc2VpbmVuIE5hbWVuIGF1Y2ggdG9sbC5dCltBbGxnZW1laW46SmFtbWVyeWxsaXMgamFtbWVydCBsYXV0ZXIuIEVpbiBlY2h0ZXIgVG9kISBEYWJlaSBiaW4gaWNoIGVpbmUgc28KICAgICAgICAgICBqdW5nZSBKYW1tZXJ1bmtlISAqamFtbWVyKiAqamFtbWVyKiBNZW4gZ2FuemVzIExlYmVuIGlzdCB2ZXJzYXV0IQogICAgICAgICAgIEljaCBnbGF1YiBpY2ggd2VyZCBNYWdpZXIgLi4uXQpbQWxsZ2VtZWluOlVlbmtjaGVuXSBhbHNvIGRpZSB1bmtlIGJpbiBqYSB3b2hsIGljaCBoaWVyIDspCltBbGxnZW1laW46VW5rZSB3YXIgdWVicmllbnMgbm9jaCBmcmVpLl0KW0FsbGdlbWVpbjpUdW5rZSB0dXQgbWEgdWViZXIgZGllIFBvbW1lcy5dCgoKSHVlbmNoZW4gOikKCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVsZmVuLi4uIChGb29iYXIsICA1LiBKdW4gMjAwMSwgMTY6MjI6NDgpOgpEZXIgR2VuZXJhbCBzYWd0OiBQZmZmZnQsIHNvd2FzIGthbm4gaWNoIGdyYWRlIG5vY2ggZWluc3RlY2tlbi4KICAuLi4ubm9ybWFsL0tyaWVnc2hhbXN0ZSBEdS4uLi4uLi4uLi4uIDogYWx0ZW4gR2VuZXJhbCAqKioqKioqKiAtPiB6dSBCcmVpCkRlciBhbHRlIEdlbmVyYWwgZmFlbGx0IHRvdCB6dSBCb2Rlbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKRm9vYmFyIGRlbmt0IC4gbyBPICggV29obCBkb2NoIG5pY2h0Li4uICkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFbGZlbi4uLiAoQW5hY3Jpb24sICA1LiBKdW4gMjAwMSwgMTc6MzU6MjQpOgp+IyEgcm49Rm9vYmFyIHJ0PTk5MTc1MDk2OCByZz1zY2htYXJybgp+IyEgdGlkPTk5MTc1MDk2OApBdWNoIHdlbm4gbWlyIGpldHp0IHdpZWRlciB3ZXIgd2FzIHVlYmVyICdBbmFjKiB3aWxsIGVoIGFsbGVzIGFid2VydGVuJwplcnphZWhsdDogV2VubiBlaW4gTk9STUFMRVIgYW5ncmlmZiBtaXQgZGVtIGhhbXN0ZXIgQlJFSVQsIGlzdCBlciBpbWhvIHp1CnN0YXJrLCBvZGVyIHNlaGUgaWNoIGRhIHdhcyBmYWxzY2ggPz8KCkFuYWMqIC0gbGVpY2h0IGVyc3RhdW50IHVlYmVyIGRpZSBLYW1wZnN0YWVya2UgbWl0IGVpbmlnZW4gV2FmZmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0ZXVyZSBTY2hva29sYWRlIChBc2hhbiwgIDUuIEp1biAyMDAxLCAxOTozMDoxMCk6CkRlaW5lIEZyZXVuZGluIEFzdWthIHJlaWNodCBFbGJlcmV0IGVpbmVuIFJpZWdlbCBLaW5kZXItU2Nob2tvbGFkZSBhdXMgZGVyCkZlcm5lLgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgpEZWluIEZyZXVuZCBEZWVwYmx1ZSB0ZWlsdCBEaXIgbWl0OiB1bmQgaW1tZXIgbm9jaCBzbyB0ZXVlciwgRWxiaWU/CgoKCkhtbSwgd2llIHRldWVyIHdhciBkZXIgUmllZ2VsIGRlbm4gPyA6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVsZmVuLi4uIChHbm9tZSwgIDUuIEp1biAyMDAxLCAyMzo0MzoyNyk6Cn4jISBybj1BbmFjcmlvbiBydD05OTE3NTUzMjQgcmc9c2NobWFycm4KfiMhIHRpZD05OTE3NTA5NjgKOnJlaWNodCBhbmFjcmlvbiBlaW5lbiBrZXVsZW5za2lsbCwgZWluZW4gendlaWhhbmRza2lsbCwgZXR3YXMgaGV1LAplaW4gcGFhciBtdWVuemVuIHVuZCBvYmVuZHJhdWYgZWluIHJhbmRvbS4gZ3V0IGR1cmNoemllaGVuIGxhc3NlbiB1bmQKZGFubiBrb21tdCBhdWNoIHNjaG9uIG1hbCBlaW4gYnJlaSByYXVzLgpqYSwgZHUgc2llaHN0IGRhIHdhcyBmYWxzY2guCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRWxmZW4uLi4gKEFuYWNyaW9uLCAgNS4gSnVuIDIwMDEsIDIzOjUyOjE0KToKfiMhIHJuPUdub21lIHJ0PTk5MTc3NzQwNyByZz1zY2htYXJybgp+IyEgdGlkPTk5MTc1MDk2OApTbyA/CgpBbHNvIGVnYWwgd2VsY2hlIHVtc3RhZW5kZSAuLi4gb2huZSBBbmZhZWxsaWdrZWl0ZW4gdW5kIE1QLXZlcndlbmR1bmcgenUKYnJlaWVuIGZpbmRlIGljaCBoZWZ0aWcgLi4gZGFzIHNjaGFmZmVuIGF1Y2ggaW1obyBrZWluZSBhbmRlcmVuIGdpbGRlbi4KCkFuYWMqIC0gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFbGZlbi4uLiAoRWxiZXJldCwgIDUuIEp1biAyMDAxLCAyMzo1Mzo0MCk6Cn4jISBybj1BbmFjcmlvbiBydD05OTE3Nzc5MzQgcmc9c2NobWFycm4KfiMhIHRpZD05OTE3NTA5NjgKYWxzbyBzY2hsYW5nZSB6YiBrb3N0ZXQgc2Nob24ga3BzIHVuZCB6d2FyIG1laHIgYWxzIGhhbmQgZmV1ZXIsIGdsYXViZSBpY2gKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEVsZmVuLi4uIChBbmFjcmlvbiwgIDUuIEp1biAyMDAxLCAyMzo1NDoxMik6Cn4jISBybj1FbGJlcmV0IHJ0PTk5MTc3ODAyMCByZz1zY2htYXJybgp+IyEgdGlkPTk5MTc1MDk2OApXYXIgZGEgZWluIFNjaGxhbmdlID8/PwoKQW5hYyogLSBpc3QgbmljaHQgYmxpbmQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRWxmZW4uLi4gKEVsYmVyZXQsICA1LiBKdW4gMjAwMSwgMjM6NTQ6MzApOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTkxNzc4MDUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxNzUwOTY4CkVsYmkgYWJlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVsZmVuLi4uIChEYXJrd2luZywgIDYuIEp1biAyMDAxLCAwMDoyNjoxNyk6Cn4jISBybj1BbmFjcmlvbiBydD05OTE3Nzc5MzQgcmc9c2NobWFycm4KfiMhIHRpZD05OTE3NTA5NjgKaGFyIGhhci4uLi4gZGFzIHNjaGFmZmUgc29nYXIgZGllIEthcmF0ZWthcyA6LSkpCgpEYXJrd2luZyA7PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRWxmZW4uLi4gKEFuYWNyaW9uLCAgNi4gSnVuIDIwMDEsIDAxOjA0OjI2KToKfiMhIHJuPURhcmt3aW5nIHJ0PTk5MTc3OTk3NyByZz1zY2htYXJybgp+IyEgdGlkPTk5MTc1MDk2OApJY2ggc2FndGUgJ29obmUgYW5mYWVsbGlna2VpdCcgdW5kICdvaG5lIG1wLXZlcmx1c3QnICAuLi4uIGFsc28gb2huZSBtcCBpc3QKbWVpbiBrYXJhdGVrYSB6aWVtbGljaCBzY2hsZWNodCBkcmF1Ziwgd2VubiBlcyBuY2lodCBncmFkZSBkaWUgZ2xhc2ViZW5lCihhbmZhZWxsaWcgZ2VnZW4gc2NobGFnc2NoYWRlbikgaXN0CgpBbmFjKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRWxmZW4uLi4gKERhcmt3aW5nLCAgNi4gSnVuIDIwMDEsIDAxOjA2OjI4KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk5MTc4MjI2NiByZz1zY2htYXJybgp+IyEgdGlkPTk5MTc1MDk2OApHbGFzZWJlbmUgYWJ3ZXJ0ZW4gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggYmluIGJlZWluZHJ1Y2t0Li4uIChBbGlhbmUsICA2LiBKdW4gMjAwMSwgMDE6MTE6NTgpOgogIC4uLi5ub3JtYWwvS2FtcGZicm90Li4uICoqKioqKioqIC0+IHZlcmZlaGx0Li4gOiBEdS4uLi4uLi4uLi4uClBhZHJpYy4uLi4uLi4KICAuLi4ubm9ybWFsL0thbXBmYnJvdC4uLiAqKioqKioqKiAtPiB2ZXJmZWhsdC4uIDogRHUuLi4uLi4uLi4uLgpQYWRyaWMuLi4uLi4uCiAgLi4uLm5vcm1hbC9LYW1wZmJyb3QuLi4gKioqKioqKiogLT4gaGFydC4uLi4uLiA6IER1Li4uLi4uLi4uLi4KUGFkcmljLi4uLi4uLgogIFBhZHJpYyBiZXNjaHdvZXJ0IGVpbmVuIEJsaXR6IHZvbSBIaW1tZWwuCiAgLi4uLm5vcm1hbC9GaXNjaC4uLi4uLi4gKioqKioqKiogPC0genUgQnJlaS4uLiA6IFBhZHJpYy4uLi4uLi4KRGljaC4uLi4uLi4uLgpQYWRyaWMgd2F0c2NoZWx0IG5hY2ggTm9yZGVuLgpEdSB2ZXJmb2xnc3QgamV0enQgUGFkcmljLgpEdSB2ZXJzaW5rc3QgaW4gdGllZmVyIEtvbnplbnRyYXRpb24uCkR1IGtvbnplbnRyaWVyc3QgRGljaCBhdWYgZGVuIEZsdXNzIGRlciBaZWl0LgpEZXIgWmVpdGZsdXNzIHZlcmFlbmRlcnQgc2ljaCBzZWhyLgogIC4uLi5ub3JtYWwvPz8/Li4uLi4uLi4uICoqKioqKioqIDwtIHZlcm5pY2h0ZXQgOiBCbGl0ei4uLi4uLi4uCkRpY2guLi4uLi4uLi4KCkR1IHNwdWVyc3QgZWluZW4gc2NocmVja2xpY2hlbiBTY2htZXJ6LgoKRGFmdWVyIGRhc3NlciBuaWNodCBtYWwgbWVociBkYSB3YXIuLi4KCkFsaWFuZSwgdG90CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIGJpbiBiZWVpbmRydWNrdC4uLiAoUGF0cnluLCAgNi4gSnVuIDIwMDEsIDAxOjEzOjA2KToKfiMhIHJuPUFsaWFuZSBydD05OTE3ODI3MTggcmc9c2NobWFycm4KfiMhIHRpZD05OTE3ODI3MTgKbnVyIHNvIGlzdCB0YW5qaWFuIGRlcnplaXQgdWViZXJoYXVwdCBiZWl6dWtvbW1lbiA7KQoKLS0tLS0tCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFbGZlbi4uLiAoRm9vYmFyLCAgNi4gSnVuIDIwMDEsIDAxOjQyOjUxKToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk5MTc1NTMyNCByZz1zY2htYXJybgp+IyEgdGlkPTk5MTc1MDk2OApKYSwgRHUgc2llaHN0IGRhIHdhcyBmYWxzY2guCgpEZXIgQW5ncmlmZiB3dXJkZSBkdXJjaCBTY2hsYW5nZSwgMi1IYW5kLVNraWxsIHVuZCBLeWxsLVNraWxsIHZlcnN0YWVya3QuIEVzCndhciBhbHNvIGtlaW4gIm5vcm1hbGVyIiBBbmdyaWZmIChkZW4gaGFldHRlIG1hbiBnZXNlaGVuIHdlbm4gZWluCkNoYW90L0FiZW50ZXVyZXIvQmllcnNjaHVldHRsZXIgbWl0IGRlbSBIYW1zdGVyIGthZW1wZnQpLgoKVW5kIHdlbm4gZWluIFNwZWxsIGJlaW0gU3RlaW4gdmVybmljaHRldCwgaXN0IGVyIHp1IHN0YXJrLCBvZGVyIHNlaGUgaWNoIGRhCndhcyBmYWxzY2g/CgpGb29iYXIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFbGZlbi4uLiAoQW5hY3Jpb24sICA2LiBKdW4gMjAwMSwgMDE6NTQ6NDApOgp+IyEgcm49Rm9vYmFyIHJ0PTk5MTc4NDU3MSByZz1zY2htYXJybgp+IyEgdGlkPTk5MTc1MDk2OApNYWNodCBqYSBsYW5nc2FtIHNwYXNzIDotKQoKYSkgV2VsY2hlIHNraWxscyBkYSByZWluc3BpZWxlbiBpc3QgbWlyIGJlaSBkZXIgZGVmaW5pdGlvbiB2b24gJ25vcm1hbCcKemllbWxpY2ggZWdhbCA6bykgCnNjaGxhbmdlIHNhaCBtYW4gbmljaHQgbm90d2VuZGlnZXJ3ZWlzZSBpbiBkZWluZW0gb3V0cHV0IC4uIHNvbGx0ZSBkYSBuaWNodApzY2hsYW5nZSBzdGVoZW4gPyAqZ3J1ZWJlbCoKCndlbm4gZWluIHNwZWxsIGJlaW0gc3RlaW4gdmVybmljaHRldCwgZGVyIGV4dHJlbSBmZXVlcmFuZmFlbGxpZyBpc3QsIGRhbm4gaXN0CmRhcyBkYXMgZ2xlaWNoZSwgd2llIHdlbm4gZWluIGthZW1wZmVyIG1pdCB3YWZmZW5zY2hsYWcgdmVybmljaHRldC4KCkRlciB1bnRlcnNjaGllZCBpc3QsIGRhc3MgbWFuIE1QIGF1ZndlbmRlbiBtdXNzIHVuZCBhbmZhZWxsaWdrZWl0ZW4gZGEgc2luZAouLi4KCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFbGZlbi4uLiAoUHVrLCAgNi4gSnVuIDIwMDEsIDAxOjU2OjA3KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk5MTc4NTI4MCByZz1zY2htYXJybgp+IyEgdGlkPTk5MTc1MDk2OApOYWpvLCB1bmQgZGVyIFVudGVyc2NoaWVkIGlzdCBkYXMgZGFzIG5lbiBaYXViaSBiaXMgMyBtYWwgZGllIFJ1bmRlIHNjaGFmZnQKd3VlcmQgaWNoIG1laW5lbiA6KQpFeHRyZW1lIEFuZmFlbGxpZ2tlaXQgbWFsIHZvcnJhdXNnZXNldHp0IHdpZSBiZWltIHN0ZWluIGdlZ2ViZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEVsZmVuLi4uIChBbmFjcmlvbiwgIDYuIEp1biAyMDAxLCAwMTo1OTozMik6Cn4jISBybj1QdWsgcnQ9OTkxNzg1MzY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxNzUwOTY4CgpXZWxjaGVyIFphdWJlcmVyIHZlcm5pY2h0ZXQgYmVpIGRlbSAzIG1hbCBkaWUgUnVuZGUgPz8/CgpWaWVsbGVpY2h0IGJpbiBpY2ggYWJlciBlaW5mYWNoIGF1Y2ggbnVyIHNjaGxlY2h0LCBkYXNzIGljaCAnbnVyJyAyIG1hbCBzdGF1YgpzY2hhZmZlIHdlbm4gZXMgaG9jaCBrb21tdCA6bykKCkxldHp0ZXJlcyBtYWNoZW4gS0FlbXBmZXIgYWxsZXJkaW5ncyBkdXJjaCBkZW4gS25pZXN0b3NzIGluIFN0YXViZ2VnZW5kLCBkZW4KV2FmZmVuc2NobGFnIHVuZCBkZW4gVG9kZXNzdG9zcyBsb2NrZXIgd2V0dCA6LSkKCndpZSBnZXNhZ3QgLi4gaWNoIGZpbmRlIGJyZWkgYW4gc2ljaCBuaWNodCB6dSBoYXJ0IC4uLiB3ZW5uIGtlaW5lCkFuZmFlbGxpZ2tlaXRlbiB1bmQga2VpbiBNUGF1ZndhbmQgaW0gU3BpZWwgc2luZCBhbGxlcmRpbmdzIHNjaG9uIC4uCmJlc29uZGVycywgd2VubiBtYW4gZXMgbm9jaCBtaXQgc2NobmVsbCB1bmQgcmFzZXJlaSB1bmQgc28gYXVmIDUgYXR0YWNrZW4gZGllCnJ1bmRlIGhvY2h6dWVjaHRlbiBrYW5uLgoKQW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEVsZmVuLi4uIChBbmFjcmlvbiwgIDYuIEp1biAyMDAxLCAwMjowMToxNik6Cn4jISBybj1BbmFjcmlvbiBydD05OTE3ODU1NzIgcmc9c2NobWFycm4KfiMhIHRpZD05OTE3NTA5NjgKQmV2b3IgZXMgUmVwbGllcyBnaWJ0OiBJY2gga2FubiBkaWUgU3RhZXJrZSBlaW5lcyBmYmFsbHMgdW5kIHZvbiB2ZXJsZXR6ZQpuaWNodCBnZW5hdSBhYnNjaGFldHplbiwgYXVjaCB3ZW5uIGVzIG9iZXJoYWxiIHZvbiBicmVpIGxpZWd0IC4uIGRhcyB3YWVyZSBlaW4KZHJpdHRlciBhbmdyaWZmLiAKCkxhZXNzdCBzaWNoIGFsbGVyZGluZ3MgbG9ja2VyIGluIGRlbiBpbiBsZXR6dGVtIEFydGlrZWwgZ2VtYWNodGVuIGF1c3NhZ2VuCmludGVncmllcmVuLgoKQW5hYyogLSBtYWNodCB1bmdlcm4gc2VsYnN0cmVwbGllcywgaXN0IGFiZXIgdmVyZ2Vzc2xpY2ggOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBFbGZlbi4uLiAoUGF0cnluLCAgNi4gSnVuIDIwMDEsIDAyOjAxOjIwKToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk5MTc4NTU3MiByZz1zY2htYXJybgp+IyEgdGlkPTk5MTc1MDk2OApkYXMgZ2VodCBqZXR6dCBzaWNoZXJsaWNoIHN0dW5kZW5sYW5nIHNvIGhpbiB1bmQgaGVyIDopCgotLS0tLS0tCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRWxmZW4uLi4gKEdub21lLCAgNi4gSnVuIDIwMDEsIDAyOjAyOjEyKToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk5MTc4NTU3MiByZz1zY2htYXJybgp+IyEgdGlkPTk5MTc1MDk2OAprYW5uc3QgZHUgZGljaCBqZXR6dCBhdWNoIHdpZWRlciBhYnJlZ2VuPyBvZGVyIHdpZSBvZnQgZ2VodCBkaWVzZXMKZGVyLWhhdC13YXMtZ2VtYWNodC13YXMtdmllbC16dS1zdGFyay1hdXNzaWVodC1zcGllbGNoZW4gbm9jaD8KCmduT21lIGRlbmt0IC4gbyAwKHNhbmRrYXN0ZW5uaXZlYXUpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBFbGZlbi4uLiAoQW5hY3Jpb24sICA2LiBKdW4gMjAwMSwgMDI6MDI6NDYpOgp+IyEgcm49UGF0cnluIHJ0PTk5MTc4NTY4MCByZz1zY2htYXJybgp+IyEgdGlkPTk5MTc1MDk2OApJY2ggd2Vpc3MgamEgYXVjaCBuaWNodCAuLiBhYmVyIGljaCBtZWluZSBtaWNoIGVyaW5uZXJuIHp1IGtvZW5uZW4sIGRlbgpnZW5lcmFsIG1pdCBhZXVzc2Vyc3QgaGVmdGlnZW4gaGFlbmRlbiBiZXN0ZW5mYWxscyBnZWtyYWNodCB6dSBoYWJlbi4gLi4uIGlzdApuZXR0IHdlbm4gYWxsZSBwbG9ldHpsaWNoIHdpZWRlciBleHRyZW1lIGFuZmFlbGxpZ2tlaXRlbiBlaW5iZXppZWhuIHVuZCBzcGVsbHMKZGllIE1QIGtvc3RlbgoKYW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEVsZmVuLi4uIChQYXRyeW4sICA2LiBKdW4gMjAwMSwgMDI6MDM6MTgpOgp+IyEgcm49R25vbWUgcnQ9OTkxNzg1NzMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxNzUwOTY4CmRhbm4gYmxlaWJlIGJpdHRlIHVucGFydGVpaXNjaC4uLmVzIHdpcmt0IGV0d2FzIGFsYmVybiB3ZW5uIGVpbiBraW5kCmFsdGtsdWcgZGFoZXJyZWRldCwgZGFzcyBmb3JtY2hlbnNwaWVsZW4ga2luZGlzY2ggd2FlcmUgdW5kIGRhbm4Kc2VsYnN0IGluIGRlbiBzYW5ka2FzdGVuIHNwcmluZ3QgOikKCi0tLS0tLQpwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEVsZmVuLi4uIChEYXJrd2luZywgIDYuIEp1biAyMDAxLCAwMjowMzoyOCk6Cn4jISBybj1BbmFjcmlvbiBydD05OTE3ODU3NjYgcmc9c2NobWFycm4KfiMhIHRpZD05OTE3NTA5NjgKdmllbGxlaWNodCBndWNrc3QgRHUgRGlyIGRlbiBHZW5lcmFsIG1hbCBhbiA6KQpCZWkgZGVtIGdlbHRlbiBlaCBhbmRlcmUgUmVnZWxuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRWxmZW4uLi4gKEFuYWNyaW9uLCAgNi4gSnVuIDIwMDEsIDAyOjAzOjQ2KToKfiMhIHJuPURhcmt3aW5nIHJ0PTk5MTc4NTgwOCByZz1zY2htYXJybgp+IyEgdGlkPTk5MTc1MDk2OApOZSBlY2h0ID8KCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRWxmZW4uLi4gKEJpZWxlZmVsZCwgIDYuIEp1biAyMDAxLCAwMjowNDowNCk6Cn4jISBybj1BbmFjcmlvbiBydD05OTE3ODU4MjYgcmc9c2NobWFycm4KfiMhIHRpZD05OTE3NTA5NjgKV2FzIGdidHMgZnVlciBSZV4xMDA/CgotQmllbGVmZWxkIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRWxmZW4uLi4gKEZvb2JhciwgIDYuIEp1biAyMDAxLCAwMjowNDowOCk6Cn4jISBybj1BbmFjcmlvbiBydD05OTE3ODUyODAgcmc9c2NobWFycm4KfiMhIHRpZD05OTE3NTA5NjgKQWxzbzoKCldlbm4gaWNoIG1laW5lIEF1c2JpbGRlciBmcnVlaGVyIHJpY2h0aWcgdmVyc3RhbmRlbiBoYWJlIGVyaG9laHQgZGllCkthbXBmdGVjaG5payBTY2hsYW5nZSBzb3dvaGwgZGllIERlZmVuc2l2ZSBhbHMgYXVjaCBkaWUgT2ZmZW5zaXZlIChiZWlkZXMKbmljaHQgaW4gZGVtIE1hc3NlLCB3aWUgZXMgZGllIHNwZXppYWxpc2llcnRlbiBLYW1wZnRlY2huaWtlbiBTY2hpbGRrcm9ldGUgdW5kCkRyYWNoZSB0dW4pLgoKWnVzYWV0emxpY2ggZ2lidCBlcyBub2NoICJzY2hsYW5nZW5hcnRpZ2UiIEFuZ3JpZmZlLiBFaW5lbiBzb2xjaGVuIGhhdHRlIGljaAppbiBkZXIgVGF0IG5pY2h0LCBkaWUgT2ZmZW5zaXZlIHdhciBhYmVyIGJlcmVpdHMgZHVyY2ggZGllIEthbXBmdGVjaG5pawpTY2hsYW5nZSBlcmhvZWh0LgoKQXVzc2VyZGVtIHdhciBpY2ggaW1tZXIgZGVyIE1laW51bmcgZGFzIGF1Y2ggZGVyIGFsdGUgR2VuZXJhbCBmZXVlcmFuZmFlbGxpZwppc3QuIFZpZWxsZWljaHQgbWFnIGVpbiBaYXViZXJlciBkYXMgYmVpIHNjaGFldHovaWQgb2VkZXIgd2llIGF1Y2ggaW1tZXIgbmljaHQKc2VoZW4sIHdlbm4gbWFuIGRlbiBhYmVyIGVpbiBwYWFyIE1hbCB1bWdlbmlldGV0IGhhdCBrb21tdCBtYW4gYXVmIGRlbiBEcmVoLgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBFbGZlbi4uLiAoRm9vYmFyLCAgNi4gSnVuIDIwMDEsIDAyOjA1OjU2KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk5MTc4NTU3MiByZz1zY2htYXJybgp+IyEgdGlkPTk5MTc1MDk2OAp0b2Rlc3N0b3NzIHppZWh0IGJla2FubnRsaWNoIG51ciBnZWdlbiAiRW5kZSIsIHdhZXIgZGVuIGFtIEFuZmFuZyBiZW51dHp0IGlzdAprZWluIEthZW1wZmVyIChvZGVyIEdlZ25lciBzdGVodCBzY2hvbiBhdWYgZGVyIFNjaHdlbGxlKS4KCkljaCBoYWJlIFphdWJpcyBnZXNlaGVuLCBkaWUgbWl0IGhhbmQgZmV1ZXIgcGx1cyBmZXVlcmJhbGwvdmVybGV0emUgNCBtYWwgZGllClJ1bmRlIHZlcm5pY2h0ZS4gRGFzIHNjaGFmZmUgaWNoIG5pY2h0LgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBFbGZlbi4uLiAoQW5hY3Jpb24sICA2LiBKdW4gMjAwMSwgMDI6MDY6MjApOgp+IyEgcm49Rm9vYmFyIHJ0PTk5MTc4NTk1NiByZz1zY2htYXJybgp+IyEgdGlkPTk5MTc1MDk2OApJY2ggYXVjaCBuaWNodC4gVHJvdHogZ2V3YWx0aWdlbSBTY2hsYWdyaW5nLgoKQW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEVsZmVuLi4uIChUYXJ6YW4sICA2LiBKdW4gMjAwMSwgMDI6MDc6MjgpOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTkxNzg1OTgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxNzUwOTY4CkFjaCwgc28gbmUgc2Nob2VuZXIgVGhyZWFkIGFtIEFiZW5kIGlzdCBkb2NoIGltbWVyIHdpZWRlciB3YXMgZmVpbmVzLi4uLiA7KQoKUGFyZG9uLCBNb3JnZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEVsZmVuLi4uIChGb29iYXIsICA2LiBKdW4gMjAwMSwgMDI6MDk6NTQpOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTkxNzg1NzY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxNzUwOTY4CiBFcyBsaWVndCBpbiBkZXIgTmF0dXIgZGVzIEdlbmVyYWxzLCBkYXMgbWFuIGRhIHJlY2h0IG9mdCB2ZXJmZWhsdAp1bmQgYWIgdW5kIHp1IG1hbCBndXQgdHJpZmZ0LiBFcyBtYWcgbGFlY2hlcmxpY2gga2xpbmdlbiwgYWJlciBhbSBFbmRlIGhhdHRlCmljaCBlaW5lbiBndXRlbiBUcmVmZmVyLgoKVW5kIHdlbm4gaWNoIERpciBqZXR6dCBzYWdlLCBkYXNzIGljaCBtaXQgS2FtcGZ0cml0dC9Lb3Bmc3Rvc3MvV2FmZmVuc2NobGFnCnBsdXMgU2NobmVsbCBwbHVzIEhhbXN0ZXIgdXN3LiBhdWNoIHJ1bmRlbmxhbmcga29tcGxldHQgdmVyZmVobGUgYnp3LiB1ZWJlcgplaW4gaGFydCBuaWNodCBoZXJhdXNrb21tZSB3aXJzdCBEdSBtaXIgd2FocnNjaGVpbmxpY2ggbmljaHQgZ2xhdWJlbi4KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRWxmZW4uLi4gKEFuYWNyaW9uLCAgNi4gSnVuIDIwMDEsIDAyOjEyOjAwKToKfiMhIHJuPUZvb2JhciBydD05OTE3ODYxOTQgcmc9c2NobWFycm4KfiMhIHRpZD05OTE3NTA5NjgKRG9jaCA6LSkKCkljaCB2ZXJmZWhsZSBkYSBtZWlzdCBhdWNoIDotKQoKClM5aW5kIHdpciBoaWVyIEJpZXJlcm5zdCBnZXdvcmRlbiA/CgpBbmFjKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEVsZmVuLi4uIChCaWVsZWZlbGQsICA2LiBKdW4gMjAwMSwgMDI6MTI6MjIpOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTkxNzg2MzIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxNzUwOTY4CldhcyBlcndhcnRlc3QgRHU/IFNwYXNzIHdhciBoaWVyIHNjaG9uIGltbWVyIHZlcmRhZWNodGlnIDopCgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRWxmZW4uLi4gKEZvb2JhciwgIDYuIEp1biAyMDAxLCAwMjoxMjoyMyk6Cn4jISBybj1BbmFjcmlvbiBydD05OTE3ODYzMjAgcmc9c2NobWFycm4KfiMhIHRpZD05OTE3NTA5NjgKTm9lLCBpc3QgZG9jaCBzY2htYXJybiA6bykKCkZvb2JhcgosLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEVsZmVuLi4uIChQYXRyeW4sICA2LiBKdW4gMjAwMSwgMDI6MTM6MzApOgp+IyEgcm49Rm9vYmFyIHJ0PTk5MTc4NjM0MyByZz1zY2htYXJybgp+IyEgdGlkPTk5MTc1MDk2OAp3ZW5uIGRpZSBhYmVudGV1cmVyIHZvbiB1bnRlbiBoZXIgbmljaHQgaW1tZXIgd2llZGVyIGRpZQpydWVzdHVuZ3NzcGlyYWxlIGFuaGVpemVuIHd1ZXJkZW4sIGdhZWJlIGVzIGRpZSBwcm9ibGVtZSBhbGxlIG5pY2h0IDspCgotLS0tLS0KcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogRWxmZW4uLi4gKEJpcmR5LCAgNi4gSnVuIDIwMDEsIDAyOjE3OjMzKToKfiMhIHJuPVBhdHJ5biBydD05OTE3ODY0MTAgcmc9c2NobWFycm4KfiMhIHRpZD05OTE3NTA5NjgKZGllc2UgcHJvYmxlbWUgZ2FlYmUgZXMgbmljaHQsIHdlbm4gZGllIG1hZ2llcm4gbmljaHQgaW1tZXIgdmVyc3VjaGVuIHd1ZXJkZW4sCmRlbiBzcGllbGVybiBhbGxlcyByZWNodCB6dSBtYWNoZW4uCm1hZ2llciwgc2NobGllc3N0IGtlaW5lIG5ldWVuIGdlYmlldGUgYW4gdW5kIGtlaW5lIG5ldWVuIGdpbGRlbiAhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogRWxmZW4uLi4gKEZvb2JhciwgIDYuIEp1biAyMDAxLCAwMjoxODoxMSk6Cn4jISBybj1CaXJkeSBydD05OTE3ODY2NTMgcmc9c2NobWFycm4KfiMhIHRpZD05OTE3NTA5NjgKQlRXIGhhYmUgaWNoIEFiZW50ZXVyZXIgZGVuIFN0ZWluIHplcnN0YWV1YmVuIHNlaGVuLi4uIFdhbm4gc2luZCBkaWUKZWlnZW50bGljaCBhdWZnZXdlcnRldCB3b3JkZW4/IDpvKQoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBFbGZlbi4uLiAoVmFyZGlvbiwgIDYuIEp1biAyMDAxLCAwODo0NTozMik6Cn4jISBybj1Gb29iYXIgcnQ9OTkxNzg1OTU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxNzUwOTY4CkRpZXNlIFphdWJpcyBnZWhvZXJ0ZW4gZWluZW0gYmVzdGltbXRlbiBNYWdpc3Rlcnp3ZWlnIGFuLiBEZXIgTm9ybWFsemF1YmVyZXIKc2NoYWZmdCBkYXMgbmljaHQuCgpWYXJkaW9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBFbGZlbi4uLiAoRm9vYmFyLCAgNi4gSnVuIDIwMDEsIDEzOjI0OjMwKToKfiMhIHJuPVZhcmRpb24gcnQ9OTkxODA5OTMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxNzUwOTY4ClVuZCBkaWVzZXIgS2FlbXBmZXIgZ2Vob2VydGUgZWluZXIgYmVzdGltbXRlbiBSYXNzZSBhbi4KCkRlciBOb3JtYWxrYWVtcGZlciBzY2hhZmZ0IGRhcyBhdWNoIG5pY2h0IDtvKQoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBFbGZlbi4uLiAoQXJrLCAgNi4gSnVuIDIwMDEsIDE1OjU5OjI2KToKfiMhIHJuPUZvb2JhciBydD05OTE3ODYxOTQgcmc9c2NobWFycm4KfiMhIHRpZD05OTE3NTA5NjgKR2VuZXJhbD8gRGVyIG1pdCBCaW9hbGtvaG9sPyBWZXJmZWhsZW4/IEJsb2VkZSBXZXJidW5nLiBSaWNodGlnZSBSdWJyaWsgOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRWxmZW4uLi4gKEFuYWNyaW9uLCAgNi4gSnVuIDIwMDEsIDE2OjIzOjU3KToKfiMhIHJuPUZvb2JhciBydD05OTE4MjY2NzAgcmc9c2NobWFycm4KfiMhIHRpZD05OTE3NTA5NjgKQWxsZXJkaW5ncyBpc3QgZGllIFphaGwgZGVyIFp3ZXJnZW5rYWVtcHBmZXIgZG9jaCBkZXV0bGljaCBob2hlciBhbHMgZGllIGRlcgpXYW5kbHVuZ3NtYWdpc3Rlci4KClVuZCBlcyBrb3N0ZXQgYXVjaCBrZWluZSBNUCwgWndlcmcgenUgc2Vpbiwgd2FlaHJkZW4gZGllIFdhbmRsdW5nIHNjaGxhcHBlIDUwCk1QIGtvc3RldC4KCkFuYWMqLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRG90eiBpZ25vcmllcnQgamEgYWxsZXMgKEVsYmVyZXQsICA2LiBKdW4gMjAwMSwgMjA6NDQ6MDEpOgphbHNvLCB1bWRlbiB0cmlnZ2VyIHp1IHRlc3RlbgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRWxmZW4uLi4gKEZvb2JhciwgIDcuIEp1biAyMDAxLCAwMToxOTo1Mik6Cn4jISBybj1BbmFjcmlvbiBydD05OTE4Mzc0Mzcgcmc9c2NobWFycm4KfiMhIHRpZD05OTE3NTA5NjgKTmFqYSwgd2FlciBqYSBhdWNoIG5vY2ggc2Nob2VuZXIsIDQgbWFsIGRpZSBSdW5kZSB2ZXJuaWNodGVuIGZ1ZXIgMCBNUCA7bykKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEVsZmVuLi4uIChCb2luZywgIDcuIEp1biAyMDAxLCAwOToxMTo0OCk6Cn4jISBybj1Gb29iYXIgcnQ9OTkxODY5NTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkxNzUwOTY4CkljaCBkYWNodGUgbWFuIG11ZXNzdGUgRWxmZW5rYWVtcGZlciBzZWluLCB1bSBkZW0gU3RlaW4gc28gcmljaHRpZwplaW56dWhlaXplbiAuLi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIG1vZWNodCcgZWluZSBSdWJyaWsgZGUuYWx0Lm5ldGRpZ2VzdCEgKFJvbmRhLCAgNy4gSnVuIDIwMDEsIDIxOjE1OjQ1KToKLi4uIGRhbm4gbXVlc3NlbiBGb29iYXIgdW5kIGljaCB1bnMgbmljaHQgbWVociBkaWUgTXVlaGUgbWFjaGVuLCBlaW5lbgpuZXRkaWdlc3Qgb2YgZGUuYWx0Lm5ldGRpZ2VzdCB6dSBtYWNoZW4uLi4gQXVmIGdlaHRzOgoKRnJvbTogSGFucyBCb25maWd0IDxib25maWd0LnNlcy1rb2VsbkB0LW9ubGluZS5kZT4KTmV3c2dyb3VwczogZGUuYWx0LnN5c2FkbWluLnJlY292ZXJ5ClN1YmplY3Q6IFJlOiBIUCBUYXNjaGVucmVjaG5lcgpNZXNzYWdlLUlEOiA8M0IxRjI2RkUuNDFDNkB0LW9ubGluZS5kZT4KCk1hcmMgSGFiZXI6Cj4gCj4gRGFtYWxzIFt0bV0gZ2FiIGVzIGtlaW5lbiBuaWNodCBwcm9ncmFtbWllcmJhcmVuIFVQTi1UYXNjaGVucmVjaG5lcgo+IHZvbiBIUC4KCldhcyB3YXIgbWl0IGRlbSBIUC0xMiA/Cgo+IE1pdCBkZW0gRXJnZWJuaXMsIGRhc3MgaWNoIGluIG1laW5lbSBWb3JkaXBsb20gbWl0IENBU0lPCj4gZ2VhcmJlaXRldCBoYWJlLCBkYSBpY2ggbWljaCB1bmdlcm5lIG51ciBmdWVyIGRpZSBLbGF1c3VyZW4gdW1nZXdvZWhuZW4KPiB3b2xsdGUuCgpPaCwgamV0enQgZXJpbm5lcmUgaWNoOiAgTWVpbmUgTWl0c2NodWVsZXIgc29yZ3RlbiBlYmVuZmFsbHMgZGFmdWVyLApkYXNzIG1pciBkaWUgQmVudXR6dW5nIGRlcyBIUCAoMTlDIGluIGRpZXNlbSBGYWxsZSkgdW50ZXJzYWd0IHd1cmRlLgpEaWUgZ2V0YXVmdGVuIEhlaWRlbiBoYXR0ZW4sIG9id29obCBzaWUgc2VsYnN0IGlocmVuIFRJLTMwIGJlbnV0emVuCmR1cmZ0ZW4sIEFuZ3N0IHZvciBkZW0gTm90ZW5zY2huaXR0LiAgWnVyIG5hZWNoc3RlbiBLbGF1c3VyIGVyc2NoaWVuCmljaCBtaXQgZWluZW0gMjAtbS1WZXJsYWVuZ2VydW5nc2thYmVsIHVlYmVyIGRlciBTY2h1bHRlciB1bmQgZWluZW0Ka29tcGFrdGVuLCBjYS4gMjAgS2cgc2Nod2VyZW4gUFJFQ0lTQSAtIFRpc2NobW9kZWxsIG1laW5lcyBhbHRlbgpIZXJybi4gIE9obmUgRGlzcGxheS4gIFRpcHBlbHRpcHBlbHRpcHBlbCAtIFJhdGF0YXRhdGF0YXRhdGF0YXRhIC0KUmFidW1yYWJ1bXJhYnVtLiAgSGVoZS4gIEFiIGRhIHdhciBkaWUgTnV0enVuZyBkZXMgVGFzY2hlbnJlY2huZXJzCmtlaW4gVGhlbWEgbWVoci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBCRVJMSU4gKFRodWZoaXIsICA3LiBKdW4gMjAwMSwgMjE6MjU6MTYpOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTkxOTM2NTYzIHJnPXRyZWZmZW4KfiMhIHRpZD05OTExNDY3MjEKd2VyIHNhY2h0IERpciBkZW5uLCBkYXNzIGluIGVpbmVtIG1laW5lciB2aWVsZW4gUGFuc2VuIG5pY2h0IHNvd2FzIHdpZQp0aGVybWlzY2hlIEF1ZmFyYmVpdHVuZyBzdGF0dGZpbmRldD8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIG1vZWNodCcgZWluZSBSdWJyaWsgZGUuYWx0Lm5ldGRpZ2VzdCEgKEZvb2JhciwgIDcuIEp1biAyMDAxLCAyMjoxNDo1MSk6Cn4jISBybj1Sb25kYSBydD05OTE5NDEzNDUgcmc9c2NobWFycm4KfiMhIHRpZD05OTE5NDEzNDUKR2VuYXUhIFVuZCBoaWVyIG1laW4gRmF2b3JpdCBkaWVzZXIgV29jaDoKLS0tIHNjaG5pcHAgLS0tCkJldHJpZmZ0OiBbZGUucmVjLm1vdG9ycmFkXSBSZTogT2Vsd2V4ZWwKRGF0dW06IDUgSnVuIDIwMDEgMTg6MDA6MDggKzAyMDAKVm9uOiBSYWRiZXJ0IEdyaW1taWcgPGdyaW1taWdAY2l0eXdlYi5kZT4KT3JnYW5pc2F0aW9uOiBKdXN0IFJpbmNlcyBwcml2YXRlIExpbnV4IHNpdGUKTmV3c2dydXBwZW46IGRlLmFsdC5uZXRkaWdlc3QKRm9sbG93dXAtVG86IGRlLnRhbGsuam9rZXMuZAoKRnJvbTogZGlldGVyLWt1ZWZuZXJAdC1vbmxpbmUuZGUgKERpZXRlciBLdWVmbmVyKQpOZXdzZ3JvdXBzOiBkZS5yZWMubW90b3JyYWQKU3ViamVjdDogUmU6IE9lbHdleGVsCkRhdGU6IFRodSwgMzEgTWF5IDIwMDEgMTY6NTc6NTcgR01UCgpPbiBXZWQsIDMwIE1heSAyMDAxIDAxOjA0OjQxICswMjAwLCAiUm9iZXJ0IEt1ZWhuZSIKPHIua3VlaG5lQGJlcmxpbi5kZT4gd3JvdGU6Cgo+SGkgTkcsCj4KPlNvIG5hY2hkZW0gaWNoIG1pciBpbSBIZXJic3QgbWVpbiBlcnN0ZXMgTW9wcGVkIGdla2F1ZnQgaGFiIHN0YW5kIGF1Y2ggaGV1dAo+ZGVyIGVyc3RlIE9lbHdleGVsIGFuLiBBbGxlcyBlaW5nZWthdWZ0IChuYWphIGZlaGx0ZW4gbnVybm9jaCBPZWwsClp1ZW5ka2VyemVuCj51bmQgT2VsZmlsdGVyKS4gU2llaHQgZ3V0IGF1cyBzb2dhciBkYXMgV2V0dGVyIHNwaWVsdCBtaXQuIFNvbm5lbnNjaGVpbiBrZWluCj5SZWdlbiBkYWZ1ZXIgYWJlciByZWNodCB3aW5kaWcuCj4KPkFsc28gbWFsIEFuZmFuZ2VuIC4uLgoKRGF6dSBmYWVsbHQgbWlyIGZvbGdlbmRlcyBlaW4uLi4KS3VlcnpsaWNoIGdlbGVzZW4uLi4KCgpPZWx3ZWNoc2VsIGJlaSBNYWVubmVybiB1bmQgRnJhdWVuCgogQW5sZWl0dW5nIGZ1ZXIgRnJhdWVuOgoKIDEuICAgSW4gZGllIFdlcmtzdGF0dCBmYWhyZW4sIHNwYWV0ZXN0ZW5zIDE1LjAwMCBrbSBuYWNoIGRlbSBsZXR6dGVuCiBPZWx3ZWNoc2VsCiAyLiAgIEthZmZlZSB0cmlua2VuCiAzLiAgIE5hY2ggMTUgbWluIFNjaGVjayBhdXNzdGVsbGVuIHVuZCBtaXQgb3JkZW50bGljaCBnZXdhcnRldGVtCiBGYWhyemV1ZwogV2Vya3N0YXR0IHZlcmxhc3NlbgoKIEF1c2dhYmVuOgogT2Vsd2VjaHNlbDogRE0gNTAsLQogS2FmZmVlOiBETSAxLC0KIEdlc2FtdDogRE0gNTEsLQoqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgogQW5sZWl0dW5nIGZ1ZXIgTWFlbm5lcjoKCiAxLiAgIElucyBadWJlaG9lcmdlc2NoYWVmdCBmYWhyZW4sIERNIDcwLC0gZnVlciBPZWwsIEZpbHRlciwgT2VsYmluZGVyLAogUmVpbmlndW5nc2NyZW1lIHVuZCBlaW5lbiBEdWZ0YmF1bSBhdXNnZWJlbgogMi4gICBFbnRkZWNrZW4sIGRhc3MgQmVoYWVsdGVyIGZ1ZXIgQWx0b2VsIHZvbGwgaXN0OyBhbnN0YXR0IGlobiB6dXIKIFRhbmtzdGVsbGUgenUgYnJpbmdlbiwgT2VsIGluIExvY2ggaW0gR2FydGVuIHNjaHVldHRlbgogMy4gICBFaW5lIERvc2UgQmllciBvZWZmbmVuLCB0cmlua2VuCiA0LiAgIEZhaHJ6ZXVnIGF1ZmJvY2tlbjsgdm9yaGVyIDMwIG1pbiBsYW5nIEtsb2V0emUgc3VjaGVuCiA1LiAgIEtsb2V0emUgdW50ZXIgU29obmVtYW5ucyBUcmV0YXV0byBmaW5kZW4KIDYuICAgVm9yIGxhdXRlciBGcnVzdCBlaW5lIERvc2UgQmllciBvZWZmbmVuLCB0cmlua2VuCiA3LiAgIEFibGFzc3dhbm5lIHVudGVyIE1vdG9yIHNjaGllYmVuCiA4LiAgIDE2ZXIgU2NocmF1YmVuc2NobHVlc3NlbCBzdWNoZW4KIDkuICAgQXVmZ2ViZW4gdW5kIHZlcnN0ZWxsYmFyZW4gU2NocmF1YmVuc2NobHVlc3NlbCB2ZXJ3ZW5kZW4KIDEwLiAgQWJsYXNzc2NocmF1YmUgbG9lc2VuCiAxMS4gIEFibGFzc3NjaHJhdWJlIGluIFdhbm5lIG1pdCBoZWlzc2VtIE9lbCB3ZXJmZW47IHNpY2ggZGFiZWkgbWl0CmhlaXNzZW0gT2VsIGJlc2NobWllcmVuCiAxMi4gIFNhdWVyZWkgYXVmcHV0emVuCiAxMy4gIEJlaSBlaW5lbSB3ZWl0ZXJlbiBCaWVyIGJlb2JhY2h0ZW4sIHdpZSBkYXMgT2VsIGFibGFldWZ0CiAxNC4gIE9lbGZpbHRlcnphbmdlIHN1Y2hlbgogMTUuICBBdWZnZWJlbjsgT2VsZmlsdGVyIG1pdCBTY2hyYXViZW56aWVoZXIgZWluc3RlY2hlbiB1bmQgYnNjaHJhdWJlbgogMTYuICBCaWVyIAoxNy4gIEt1bXBlbCB0YXVjaHQgYXVmOyBmYWNoc2ltcGVsbiwgZGFiZWkgQmllcmthc3RlbiBtaXQgIGlobQp6dXNhbW1lbiBsZWVyZW47T2UgbHdlY2hzZWwgbW9yZ2VuIGJlZW5kZW4KIDE4LiAgTmFlaHN0ZXIgVGFnOiBPZWx3YW5uZSB2b2xsIG1pdCBBbHRvZWwgdW50ZXIgZGVtIEF1dG8gaGVydm9yemllaGVuCiAxOS4gIEJpbmVtaXR0ZWwgYXVmIE9lbCBzdHJldWVuLCBkYXMgd2FlaHJlbmQgMTguIHZlcnNjaHVldHRldCB3dXJkZQogMjAuICBCaWVyIC0gbmVpbiwgd3VyZGUgamEgZ2VzdGVybiBnZXRydW5rZW4KIDIxLiAgWnVtIEdldHJhZW5rZW1hcmt0IGdlaGVuLCBCaWVyIGthdWZlbgogMjIuICBOZXVlbiBPZWxmaWx0ZXIgYW5icmluZ2VuLCBkYWJlaSBkdWVubmVuIE9lbGZpbG0gYXVmIGRpZQogT2VsZmlsdGVyZGljaHR1bmcgYXVmYnJpbmdlbgogMjMuICBFcnN0ZW4gTGl0ZXIgT2VsIGluIGRlbiBNb3RvciBlaW5mdWVsbGVuCiAyNC4gIFNpY2ggYW4gZGllIEFibGFzc3NjaHJhdWJlIGF1cyBTY2hyaXR0IDExLiBlcmlubmVybgogMjUuICBTY2huZWxsIGRpZSBTY2hyYXViZSBpbiBkZXIgQWJsYXNzd2FubmUgc3VjaGVuCiAyNi4gIFNpY2ggZXJpbm5lcm4sIGRhc3MgU2NocmF1YmUgenVzYW1tZW4gbWl0IEFsdG9lbCBpbSBHYXJ0ZW4KZW50c29yZ3Qgd3VyZGUKIDI3LiAgQmllcgogMjguICBMb2NoIHdpZWRlciBhdXNoZWJlbiwgbmFjaCBkZXIgU2NocmF1YmUgc3VjaGVuCiAyOS4gIERlbiBlcnN0ZW4gTGl0ZXIgZnJpc2NoZW4gT2VscyBhdWYgZGVtIEJvZGVuIGRlciBHYXJhZ2UKd2llZGVyZmluZGVuCgogMzAuICBCaWVyCiAzMS4gIEJlaW0gQW56aWVoZW4gZGVyIEFibGFzc3NjaHJhdWJlIG1pdCBkZW0gU2NocmF1YmVuc2NobHVlc3NlbAogYWJydXRzY2hlbiwgZGllIEZpbmdlcmtub2VjaGVsIGFuIGRlciBLYXJvc3NlcmllIGF1ZnNjaGxhZ2VuCiAzMi4gIEtvcGYgYXVmIEJvZGVuZmxpZXNlbiBzY2hsYWdlbiwgYWxzIFJlYWt0aW9uIGF1ZiAzMS4KIDMzLiAgTWl0IHd1ZXN0ZW4gRmx1ZWNoZW4gYmVnaW5uZW4KIDM0LiAgU2NocmF1YmVuc2NobHVlc3NlbCB3ZWdzY2hsZXVkZXJuCiAzNS4gIFdlaXRlcmUgMTAgbWluIGZsdWNoZW4sIHdlaWwgZGVyIFNjaHJhdWJlbnNjaGx1ZXNzZWwgZGllIGFuIGRlcgpXYW5kIGFuZ2VwaW5udGUgIk1pc3MgRGV6ZW1iZXIiIGluIGRpZSBsaW5rZSBCcnVzdCBnZXRyb2ZmZW4gaGF0CiAzNi4gIEJpZXIKIDM3LiAgSGFlbmRlIHVuZCBTdGlybiByZWluaWdlbiB1bmQgdm9yc2NocmlmdHNtYWVzc2lnIHZlcmJpbmRlbiwgdW0KIEJsdXRmbHVzcwogenUgc3RvcHBlbgogMzguICBCaWVyCiAzOS4gIEJpZXIKIDQwLiAgVmllciBMaXRlciBmcmlzY2hlcyBPZWwgZWluZnVlbGxlbgogNDEuICBCaWVyCiA0Mi4gIEF1dG8gdm9uIEJvZWNrZW4gYWJsYXNzZW4KIDQzLiAgRWluZW4gZGVyIEtsb2V0emUgZGFiZWkga2FwdXR0bWFjaGVuCiA0NC4gIEZhaHJ6ZXVnIHp1cnVlY2tzZXR6ZW4sIGRhbmFjaCBCaW5kZW1pdHRlbCBhdWYgZGFzIGluIFNjaHJpdHQgMjMuCiB2ZXJzY2h1ZXR0ZXRlIE9lbCBzdHJldWVuCiA0NS4gIEJpZXIKIDQ2LiAgUHJvYmVmYWhydAogNDcuICBBdWYgZGllIFNlaXRlIGdld2lua3QgdW5kIHdlZ2VuIEZhaHJlbnMgdW50ZXIgQWxrb2hvbGVpbmZsdXNzCiB2ZXJoYWZ0ZXQgd2VyZGVuCiA0OC4gIEZhaHJ6ZXVnIHdpcmQgYWJnZXNjaGxlcHB0CiA0OS4gIEthdXRpb24gc3RlbGxlbiwgRmFocnpldWcgdm9tIFBvbGl6ZWlob2YgYWJob2xlbgoKIEF1c2dhYmVuOgogVGVpbGU6IERNIDcwLC0KIEFuemVpZ2Ugd2cuIFRydW5rZW5oZWl0c2ZhaHJ0OiBETSAyMDAsLQogQWJzY2hsZXBwa29zdGVuOiBETSAxMDAsLQogS2F1dGlvbjogRE0gMjAwLC0KIEJpZXI6IERNIDMwLC0KIEdlc2FtdDogRE0gNjAwLC0KLS0tIHNjaG5hcHAgLS0tCgpGb29iYXIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogQkVSTElOIChHbG9pbnNvbiwgIDcuIEp1biAyMDAxLCAyMjoyNDo1NSk6Cn4jISBybj1UaHVmaGlyIHJ0PTk5MTkzNTI0NyByZz10cmVmZmVuCn4jISB0aWQ9OTkxMTQ2NzIxCkFsc28gd2VubiBpY2ggbWlyIGRpZSBBcnRpa2VsIHNvIGR1cmNobGVzZSwgd3VuZGVyIGljaCBtaWNoIGltbWVyIHdpZWRlciAsd2llCmd1dCBpY2ggZG9jaCBzY2hvbiB2b3IgbGFuZ2VyIFplaXQgZGllIG11ZGRlbmRlIEt1ZWhlIGVpbmdlc2NoYWV0enQgaGFiZSAuLi4KbmFlaGVyZSBub2NoIGluIGRpZXNlbSBKYWhyKHplaG50PykgOikKCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXIgUGl0dHkgKFRoYW5vcywgIDcuIEp1biAyMDAxLCAyMjo0MDowNCk6ClBpdGZhbGwgc2FndDogc2luZCBkaWUgbm9jaCBzYXVlciBhdWYgbWljaD8KQW5vcmlzIHNhZ3Q6IGhtIGthbm4gc2VpbiAuLi4KPiBQaXRmYWxsIHNhZ3Q6IHRlc3Rlbgo+IFBpdGZhbGwgZ2VodCB0aWVmdHJhdXJpZyBuYWNoIE9zdGVuLgoKVG9kOkxhcnMgRWxob2xkcmlvbiBoYXQgZ2VyYWRlIFBpdGZhbGwgdW1nZWJyYWNodC4KVG9kOlBpdGZhbGwgZGFzIHdhciBlaW4gRk9SU0NIRVJUT0QKCkljaCBkZW5rZSBzaWUgd2FyZW4gZXMgOikKClRoYW5vcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZ1ZXIgUGl0dHkgKFBpdGZhbGwsICA4LiBKdW4gMjAwMSwgMTI6Mzg6NDkpOgp+IyEgcm49VGhhbm9zIHJ0PTk5MTk0NjQwNCByZz1zY2htYXJybgp+IyEgdGlkPTk5MTk0NjQwNApuYSBpaHIgd2lzc3QgamE6CnNjaG1lcnplbiBzaW5kIGdlaWwKKGF1c3NlciB3ZW5ucyB3ZWh0dXQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRXJmYWhydW5nc3B1bmt0ZSB1bmQgU3R1cHNlIChHcmltbWJvcm4sICA4LiBKdW4gMjAwMSwgMTQ6MTk6MDcpOgp+IyEgb249R3JpbW1hbiBvdD05OTIwMDE4ODIgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUloc2FobiBydD05OTA4MjkwNTIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05ODk0MTU2MTgKTFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUcgISEhIQoKR3JpbW1pZSAuLi4gbGVidCBhdWNoIG5vY2ggLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp1cmFsdCAoQmlyZHksICA4LiBKdW4gMjAwMSwgMTU6NTM6MTgpOgpmaW5nZXIgZ2F3YWluCi4uLgpadWxldHp0IGF1c2dlbG9nZ3Q6IEZyZSwgMjIuIFNlcCAxOTk1LCAxMTowNjoyMiAoMjA4NmQgMDQ6NDU6MzMpLgouLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB1cmFsdCAoVmVjdG9yLCAgOC4gSnVuIDIwMDEsIDE1OjU1OjI2KToKfiMhIHJuPUJpcmR5IHJ0PTk5MjAwODM5OCByZz1zY2htYXJybgp+IyEgdGlkPTk5MjAwODM5OApmaW5nZXIgZ3JpbW1kZWF0aApadWxldHp0IGF1c2dlbG9nZ3Q6IFNvbiwgMTYuIEFwciAxOTk1LCAyMjo1MDowNCAoMjI0NGQgMTc6MDU6MDApLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB1cmFsdCAoVmVjdG9yLCAgOC4gSnVuIDIwMDEsIDE1OjU2OjA2KToKfiMhIHJuPVZlY3RvciBydD05OTIwMDg1MjYgcmc9c2NobWFycm4KfiMhIHRpZD05OTIwMDgzOTgKZmluZ2VyIG1hcm1lbGFkZQpadWxldHp0IGF1c2dlbG9nZ3Q6IE1pdCwgIDEuIEZlYiAxOTk1LCAyMToyMzozNyAoMjMxOGQgMTc6MzI6MDUpLgogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdXJhbHQgKEJpZWxlZmVsZCwgIDguIEp1biAyMDAxLCAxNTo1NjowOCk6Cn4jISBybj1WZWN0b3IgcnQ9OTkyMDA4NTI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkyMDA4Mzk4CmZpbmdlciB3aWxtYQpadWxldHp0IGF1c2dlbG9nZ3Q6IE1pdCwgIDguIE1hciAxOTk1LCAxODo0MTo0NSAoMjI4M2QgMjA6MTQ6MDMpLgoKLUJpZWxlZmVsZCAod2VyIGJpZXRldCBtZWhyPykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHVyYWx0IChCaXJkeSwgIDguIEp1biAyMDAxLCAxNjoxNTo0MSk6Cn4jISBybj1WZWN0b3IgcnQ9OTkyMDA4NTY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkyMDA4Mzk4CmZpbmdlciBtdXR0ZXIKLi4uClp1bGV0enQgYXVzZ2Vsb2dndDogRGllLCAyNy4gRGV6IDE5OTQsIDE3OjIyOjE1ICgyMzU0ZCAyMTo1Mjo1NCkKLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB1cmFsdCAoVmVjdG9yLCAgOC4gSnVuIDIwMDEsIDE2OjE2OjIxKToKfiMhIHJuPUJpcmR5IHJ0PTk5MjAwOTc0MSByZz1zY2htYXJybgp+IyEgdGlkPTk5MjAwODM5OApmaW5nZXIgd3VlcnN0Y2hlbgooMjM2MmQgMjM6NTU6NDEpLiAgCm11YWhhaGE6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogdXJhbHQgKE5penpsLCAgOC4gSnVuIDIwMDEsIDIwOjE0OjEwKToKfiMhIHJuPVZlY3RvciBydD05OTIwMDk3ODEgcmc9c2NobWFycm4KfiMhIHRpZD05OTIwMDgzOTgKZmluZ2VyIGdpbWxpClp1bGV0enQgYXVzZ2Vsb2dndDogRGllLCAxMy4gRGV6IDE5OTQsIDIwOjQ5OjQyICgyMzY4ZCAyMjoyMzo1MikuCndhaHJoYXJoYXJoYXJoYXJoYXI6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogdXJhbHQgKENyb2Z0LCAgOC4gSnVuIDIwMDEsIDIwOjM0OjM3KToKfiMhIHJuPU5penpsIHJ0PTk5MjAyNDA1MCByZz1zY2htYXJybgp+IyEgdGlkPTk5MjAwODM5OApmaW5nZXIga3J1bGwKWnVsZXR6dCBhdXNnZWxvZ2d0OiBEb24sICAxLiBEZXogMTk5NCwgMTk6NDQ6MjEgKDIzODBkIDIzOjQ1OjAwKS4KRWF0IHRoaXMgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiB1cmFsdCAoQ3JvZnQsICA4LiBKdW4gMjAwMSwgMjA6NTU6NDEpOgp+IyEgcm49Q3JvZnQgcnQ9OTkyMDI1Mjc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkyMDA4Mzk4CmZpbmdlciByYWlzdApadWxldHp0IGF1c2dlbG9nZ3Q6IE1pdCwgMzAuIE5vdiAxOTk0LCAxMzozNjo1OCAoMjM4MmQgMDY6MTY6NTApLgo7LSkKR3J1c3MgQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR2lsZGVuYm9zcyAoQW5hdG9sLCAgOS4gSnVuIDIwMDEsIDAxOjEyOjMwKToKfiMhIHJuPUZldWVyd2VociBydD05OTIwNDExNjMgcmc9Z2lsZGVuLmNoYW9zCn4jISB0aWQ9OTkyMDQxMTI5CkdsdWVjayBnZWhhYnQuCgoqcHVoKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR2lsZGVuYm9zcyAoVmFybGFyaW9uLCAgOS4gSnVuIDIwMDEsIDAxOjEzOjE0KToKfiMhIHJuPUFuYXRvbCBydD05OTIwNDE5NTAgcmc9c2NobWFycm4KfiMhIHRpZD05OTIwNDExMjkKVmFybGFyaW9uIG5pY2t0IEFuYXRvbCBncmluc2VuZCB6dS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJhZWggZGFzIGlzIGphIGVpbmZhY2ggKEhpZ2h0LCAgOS4gSnVuIDIwMDEsIDAxOjE2OjU4KToKbWFuIGZpbmdlciBzbyB6ZWlobWxpY2ggamVkZW4gYmVsaWViZW4gY2hhci4gYXVzbSBoZXJybiBkZXIgcmluZ2UgLi4uCmVscm9uZCAKZ2FsYWRyaWVsCmVjdC4gYWxsZSB1ZWJlciAyMDAwIHRhZ2UgbmV0IGRhIC4uLiBpY2ggZ2xhdWIgaWNoIGhhYiBkYW1hbHMgYWxzIGljaCBoaWdodAplcnNjaGFmZmVuIGhhYiBzbyB6aWVobWxpY2ggamVkZW4gdmVyc3VjaHQgLG8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYWVtcGZlciBiaWxkZXQgS2xlcmlrZXIgYXVzIChFbGVuZGlsLCAgOS4gSnVuIDIwMDEsIDAxOjUwOjIyKToKRFUgPSBVbmFzYWkKClU+ICAgRWluIEFiYmlsZCBJZGxlZml4JyB0YWV1c2NodCBlaW5lbiBBbmdyaWZmIGFuLgpVPiAgIC4uLi5ub3JtYWwvU3Bpbm5lbmJlaW4uIElkbGVmaXguLi4uLi4gOiBad2VyZ3JpZXNlbi4uICoqKioqKioqIC0tIHNlaHIKaGFydApVPiAgIC4uLi5ub3JtYWwvRmV1ZXJoYW5kLi4uIEVsZW5kaWwuLi4uLi4gOiBad2VyZ3JpZXNlbi4uICoqKioqKioqIC0tIHNlaHIKaGFydApVPiA9PT09PT4gMjAlIDw9PT09PQpVPiAgIC4uLi5ub3JtYWwvSGVsbGViYXJkZS4uIER1Li4uLi4uLi4uLi4gOiBad2VyZ3JpZXNlbi4uICoqKioqKioqIC0+CmdldHJvZmZlbgpVPiAgIC4uLi5ub3JtYWwvSGVsbGViYXJkZS4uIER1Li4uLi4uLi4uLi4gOiBad2VyZ3JpZXNlbi4uICoqKioqKioqIC0+IGhhcnQKVT4gICAuLi4ubm9ybWFsL0tldWxlLi4uLi4uLiBad2VyZ3JpZXNlLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LQp2ZXJmZWhsdApVPiAgIEVpbiBBYmJpbGQgSWRsZWZpeCcgdGFldXNjaHQgZWluZW4gQW5ncmlmZiBhbi4KVT4gICAuLi4uLmV4dHJhL0thbXBmdHJpdHQuLiBEdS4uLi4uLi4uLi4uIDogWndlcmdyaWVzZW4uLiAqKioqKioqKiAtPiBLcmFjaGVuClU+IEZ1ZXIgSWRsZWZpeCB3YXIgZGllcyBNb25zdGVyIE5yLiAzMDQhClU+IERlciBad2VyZ3JpZXNlIGhhdCBqZXR6dCBkYXMgbGV0enRlIG1hbCBzZWluZW4gSm9iIGFscyBUdWVyc3RlaGVyCmF1c2dldWVidC4KRGVyIFp3ZXJncmllc2UgbXVybWVsdCBpcmdlbmRldHdhcyB2b24gJ1R1ZXJzdGVoZXJnZXdlcmtzY2hhZnQnLgoKVGphLCBLYWVtcGZlciBtYWNoZW4gZWNodCBhbGxlcyBpbiBpaHJlciBOb3QsIG9kZXIgOikgPwoKRWxlbmRpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthZW1wZmVyIGJpbGRldCBLbGVyaWtlciBhdXMgKFVuYXNhaSwgIDkuIEp1biAyMDAxLCAwMTo1MTo1MSk6Cn4jISBybj1FbGVuZGlsIHJ0PTk5MjA0NDIyMiByZz1zY2htYXJybgp+IyEgdGlkPTk5MjA0NDIyMgpwYWFhYWFhYWFhYWFhYWFhYWFhaCEgZnJlY2hoZWl0ISB3ZXIgd2Vpc3MgenUgd2FzIGlociB6YXViaXMgZ3JlaWZlbiBtdWVzc3QsCndlbm5zIGJlaSBldWNoIG1hbCBzb3dlaXQgaXN0Li4uLi4KVW5hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUXVlc3QtRU0gKE5vbm5lLCAgOS4gSnVuIDIwMDEsIDE4OjUzOjI5KToKTm9ubmUgaGF0IGtlaW5lIEx1c3QgbWVociBhdWYgUXVlc3RzIHNjaHJlaWJlbiwgd2VpbCBkZXIgUXVlc3QtRU0gbm9jaApsYW5nc2FtZXIgYWxzIGRpZSBCYWxhbmNlIGlzdAoKRnVlciBab29rLCB3ZWlsIGVyIHNpY2ggc28gZWluZW4gQXJ0aWtlbCBnZXd1ZW5zY2h0IGhhdCAoYzsKCk5vbm5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFF1ZXN0LUVNIChab29rLCAgOS4gSnVuIDIwMDEsIDE4OjU0OjIzKToKfiMhIHJuPU5vbm5lIHJ0PTk5MjEwNTYwOSByZz1zY2htYXJybgp+IyEgdGlkPTk5MjEwNTYwOQpIbmdsZ25nbGduZ25nbmduZ25ubm5ubm5ubm5uLi4uLi4uCgpab29rIHBydWVnZWx0IGRpZSBNUEEgdW5kIG1hY2h0IHNpY2ggaW4gYmFlbGRlIGFuIGRpZSBBcmJlaXQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvZGUgLi4uIChTaXJqb2huLCAgOS4gSnVuIDIwMDEsIDE5OjI0OjI1KToKQWVobmxpY2hlciBUaHJlYWQgd2llIGRlciBtaXQgZGVtIEFsdGVyIC4uLgpmaW5nZXIgaGFyYWtpcmkKQmlzaGVyIGJlcmVpdHMgOTYzIG1hbCBnZXN0b3JiZW4KCldlciBiaWV0ZXQgbWVocj8KIC0tIFNpckpvaG4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUb2RlIC4uLiAoTXVwZmVsLCAxMC4gSnVuIDIwMDEsIDAyOjExOjMxKToKfiMhIHJuPVNpcmpvaG4gcnQ9OTkyMTA3NDY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkyMTA3NDY1CkhhcmFraXJpIGlzdCBuIFN0ZXJiaWUuLi4gZGVuIFNjb3JlIGthbm5zdGUgbWl0IG5lbSBTY3JpcHQgbGVpY2h0IHRvcHBlbi4uLgppbnRlcmVzc2FudGVyIHNpbmQgIm5vcm1hbGUgU3BpZWxlciIsIHdpZSBLZXkgbWl0IDQ3MCBUb2RlbiBpbSBhZWggbm9ybWFsZW4KQmV0cmllYi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRvZGUgLi4uIChBbmF0b2wsIDEwLiBKdW4gMjAwMSwgMDI6MTM6MjUpOgp+IyEgcm49TXVwZmVsIHJ0PTk5MjEzMTg5MSByZz1zY2htYXJybgp+IyEgdGlkPTk5MjEwNzQ2NQpEdSBiZXplaWNobmVzdCBLZXkgYWxzIG5vcm1hbD8KCipzY2hsdWNrc2Nod2VyKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVG9kZSAuLi4gKE11cGZlbCwgMTAuIEp1biAyMDAxLCAwMjoxNjozMyk6Cn4jISBybj1BbmF0b2wgcnQ9OTkyMTMyMDA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkyMTA3NDY1CldpZXNvLCBEdSBiaXN0IGRvY2ggYXVjaCBub3JtYWwgOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBUb2RlIC4uLiAoQW5hdG9sLCAxMC4gSnVuIDIwMDEsIDAyOjE3OjI1KToKfiMhIHJuPU11cGZlbCBydD05OTIxMzIxOTMgcmc9c2NobWFycm4KfiMhIHRpZD05OTIxMDc0NjUKKm5vY2hzY2h3ZXJlcnNjaGx1Y2sqIERhYmVpIGdlYmUgaWNoIG1pciBhbGxlIE11ZWhlLCBnZXJhZGUgZGFzIG5pY2h0IHp1IHNlaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbXBmIChUZWt0dWtvLCAxMC4gSnVuIDIwMDEsIDA0OjI0OjUyKToKTnVyIDEsNSBTdHVuZGVuIFplaXR1bmcgbGVzZW4gdW5kIHNjaG9uIGFsbGVzIHZvcmJlaT8gaG5nbCwgbmljaHQgbmV0dCA6KSBpY2gKZnJldSBtaWNoIHNjaG9uIGF1ZiBNb3JnZW4gdW5kIGhvZmYgZGFzIGljaCBuZW4gd2VuZyBtZWhyIGxlc2VuIGthbm4sIG9kZXIKc29sbHRlIGljaCB3aWVkZXIgMiB3b2NoZW4gd2FydGVuPyBkYW5uIHN0ZWh0IGphIHZpZWxsZWljaHQgbWVociBkcmluLgoKR3J1c3MgVGVraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVG9kZSAuLi4gKEdsb2luc29uLCAxMC4gSnVuIDIwMDEsIDA2OjMzOjAzKToKfiMhIHJuPUFuYXRvbCBydD05OTIxMzIyNDUgcmc9c2NobWFycm4KfiMhIHRpZD05OTIxMDc0NjUKSWNoIGJlaGF1cHRlIG1hbCBnZXJhZGUgZGFzIG1hY2h0IERpY2ggamEgc28gbm9ybWFsLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhtcGYgKFBhcmRhdXosIDEwLiBKdW4gMjAwMSwgMTU6MzY6MzcpOgp+IyEgcm49VGVrdHVrbyBydD05OTIxMzk4OTIgcmc9c2NobWFycm4KfiMhIHRpZD05OTIxMzk4OTIKUGFyZGF1eiBlbXBmaWVobHQgZWluemVpbGVybmQ6IHdpZWRlcmhvbGUgYWxsZXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRvZGUgLi4uIChDYXR3ZWF6bGUsIDExLiBKdW4gMjAwMSwgMDc6NDc6NDIpOgp+IyEgcm49TXVwZmVsIHJ0PTk5MjEzMjE5MyByZz1zY2htYXJybgp+IyEgdGlkPTk5MjEwNzQ2NQpCaXR0ZSBkZWZpbmllcmUgJ25vcm1hbCcuIDopCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVpbiBMb2IgYXVmIENhdHR5PyAoVmFnYWJ1bmQsIDExLiBKdW4gMjAwMSwgMDk6Mzc6NTIpOgoKSmVkZW4gRElFTlNUQUcgaXN0IE11ZC1TdGFtbXRpc2NoIGluIE11ZW5zdGVyISBFciBmaW5kZXQgaW0gSm9obgpEb2UncyBEaW5lciAod3d3LmpvaG4tZG9lcy1kaW5lci5jb20pIHN0YXR0IHVuZCBiZWdpbm50IHB1ZW5rdGxpY2ggCnVtIDIwOjA3IFVoci4gU2NoYXUgZG9jaCBtYWwgdm9yYmVpLgoKVmFnYWJ1bmQgdmFnYWJ1bmRpZXJ0IHdlaXRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmV1ZXJ3ZWhyIDpvKSAoRm9vYmFyLCAxMS4gSnVuIDIwMDEsIDE1OjQxOjA2KToKICAoMjIuMDUuMDEgLyAxMzowOCBVaHIpIE1pdCBlaW5lbSByZWdlbHJlY2h0ZW4gQW1va2xhdWYgaGF0IGVpbmUgS3VoIGltCnNjaGxlc3dpZy1ob2xzdGVpbmlzY2hlbiBJdHplaG9lIHZlcnN1Y2h0LCBkZW0gdG9lZGxpY2hlbiBTY2hpY2tzYWwgaW0KU2NobGFjaHRoYXVzIHp1IGVudGtvbW1lbi4gV2llIGRpZSBQb2xpemVpIGFtIERpZW5zdGFnIG1pdHRlaWx0ZSwgd2FyIGRhcwpSaW5kdmllaCBhbSBWb3J0YWcgYXVmIGRlbiBsZXR6dGVuIE1ldGVybiBrdXJ6ZXJoYW5kIGF1c2dlYnJvY2hlbiwgaW4gZGllCm5haGVnZWxlZ2VuZSBTdG9lciBnZXNwcnVuZ2VuIHVuZCBoYXR0ZSBkZW4gRmx1c3MKZHVyY2hzY2h3b21tZW4uIEFtIGdlZ2VudWViZXJsaWVnZW5kZW4gVWZlciBzdGllc3MgZXMgenVuYWVjaHN0IGVpbmVuIEFuZ2xlcgppbnMgV2Fzc2VyLiBEYW5uIHVudGVyYnJhY2ggZGVyIHRpZWZlIFNjaGxpY2sgaW0gaG9oZW4gUmVldCB2b3J1ZWJlcmdlaGVuZApkaWUgRmx1Y2h0LgoKT2J3b2hsIFBvbGl6ZWksIEZldWVyd2VociB1bmQgU2NobGFjaHRob2ZtaXRhcmJlaXRlciBkYXMgR2VsYWVuZGUgYWJzcGVycnRlbgp1bmQgZWluIGhlcmJlaWdlcnVmZW5lciBUaWVyYXJ6dCBkZXIgS3VoIGRyZWkgQmV0YWV1YnVuZ3NzY2h1ZXNzZSB2ZXJwYXNzdGUsCnN0dWVybXRlIGRhcyBSaW5kdmllaCBkZW5ub2NoIHVycGxvZXR6bGljaCB3aWVkZXIgbG9zLiBFcyByYW5udGUgZGVuIEFyenQKdWViZXIKZGVuIEhhdWZlbiB1bmQgaGFldHRlIGJlaW5haGUgYXVjaCBkaWUgTWl0YXJiZWl0ZXJpbiBlaW5lciBvcnRzYW5zYWVzc2lnZW4KWmVpdHVuZyBuaWVkZXJnZXRyYW1wZWx0LCB3ZW5uIGRpZXNlIHNpY2ggbmljaHQgZHVyY2ggZWluZW4gYmVoZXJ6dGVuIFNwcnVuZwpnZXJhZGUgbm9jaCBpbiBTaWNoZXJoZWl0IGdlYnJhY2h0IGhhZXR0ZS4gRXJzdCB6d2VpIHdlaXRlcmUgQmV0YWV1YnVuZ3NwZmVpbGUKYXVzIGRlbSBHZXdlaHIgZGVzIFRpZXJhcnp0ZXMga29ubnRlbiBkaWUgS3VoIHNjaGxpZXNzbGljaCBzb3dlaXQgYmVydWhpZ2VuLApkYXNzIHNpZSB6dW0gU2NobGFjaHRob2YgenVydWVja2dlZnVlaHJ0IHdlcmRlbiBrb25udGUuICBRdWVsbGU6IGRkcAoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmV1ZXJ3ZWhyIDpvKSAoV3VyemVsLCAxMS4gSnVuIDIwMDEsIDE1OjUxOjQzKToKfiMhIHJuPUZvb2JhciBydD05OTIyNjY4NjYgcmc9c2NobWFycm4KfiMhIHRpZD05OTIyNjY4NjYKZGEgc2llaHQgbWFuIGVzIG1hbCB3aWVkZXIgZ2FueiBkZXV0bGljaDogaW50ZWxsaWdlbnogaXN0IHNjaGFlZGxpY2guCndlbm4gZWluZSBrdWggbWFsIG5pY2h0IHN0dW1wZnNpbm5pZyBpbiBkZW4gc2NobGFjaHRob2YgdHJvdHRldCwgZGFyZiBzaWUKc2ljaCBlcnN0bWFsIG1lZGlrYW1lbnRvZXMgYmVydWhpZ2VuLCBiZXZvciBpaHIgdHJvdHpkZW0gZGVyIGdhcmF1cyBnZW1hY2h0CndpcmQuIGF1c3NlciBzdHJlc3Mgdm9yIGRlbSB0b2QgaGF0IGlociBkaWUgbGVpY2h0IGVyaG9laHRlIGludGVsbGlnZW56Cm5pY2h0cyBnZWJyYWNodC4gZGllIHVuemFlaGxpZ2VuIGRlcHBlbiBnZWhlbiB3ZW5pZ3N0ZW5zIG5pY2h0c2FobmVuZCBpbgpkZW4gdG9kLiBmYXN0IHNvIHdpZSBiZWkgdW5zLgoKd3VyemVsIChrZWluIHZlZ2V0YXJpZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRmV1ZXJ3ZWhyIDpvKSAoR3JpbW1ib3JuLCAxMS4gSnVuIDIwMDEsIDE3OjUzOjU3KToKfiMhIHJuPVd1cnplbCBydD05OTIyNjc1MDMgcmc9c2NobWFycm4KfiMhIHRpZD05OTIyNjY4NjYKQWVoLCBJSVJDIGthbm4gZGllIEt1aCBqZXR6dCBuaWNodCBlaW5mYWNoIHNvIGdlc2NobGFjaHRldCB3ZXJkZW4sIGRhIGdpYnRzCnppZW1saWNoIGVuZ2UgQmVzdGltbXVuZ2VuIHdlbGNoZSBNZWRpa2FtZW50ZSBlaW5lbSBTY2hsYWNodHRpZXIgaW4gZGVuCmxldHp0ZW4gU3R1bmRlbi9UYWdlbiBpaHJlcyBMZWJlbnMgbm9jaCB2ZXJhYnJlaWNodCB3ZXJkZW4gZHVlcmZlbi4gSW5zb2Zlcm4KaGF0IGRpZSBLdWggKGF1Y2ggd2VubnMgaWhyIG5pY2h0cyBicmluZ3QpIGR1cmNoYXVzIG5vY2ggZWluIHBhYXIgVGFnZSBMZWJlbgpoZXJhdXNnZXNjaGxhZ2VuLgpXZW5uIE1lbnNjaGVuIGRhc3NlbGJlciBlcnJlaWNoZW4gd29sbGVuIG11ZXNzZW4gc2llIGRlbSBGQkkgZXJzdG1hbApuYWNod2Vpc2VuLCBkYXNzIGVzIGV0bGljaGUgVGF1c2VuZCBTZWl0ZW4gQmV3ZWlzbWF0ZXJpYWwgbmljaHQgdm9yZ2VsZWd0CmhhdC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogcGFyYTIgKFNpbHZhbmEsIDExLiBKdW4gMjAwMSwgMTk6MDU6MTYpOgp+IyEgcm49VmVjdG9yIHJ0PTk5MjI3MzQ2NSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk5MjI3MzQ2NQoiQXVmIGRhcyBkaWVzZXMgTWFsIGRpZSBTa2VsZXR0ZSBiZWtvbW1lbiwgd2FzIHNpZSB2ZXJkaWVuZW4uIgpEdSBtZWluc3Q6IEdlc2VsbHNjaGFmdD8gOy0pCgogIFNpbHZhbmEgKGhpbGZ0IGRhIGRvY2ggZ2VybmUpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYXR6ZW5rbG8gKEdyaW1tYm9ybiwgMTEuIEp1biAyMDAxLCAxOTo0MjoyNCk6Cn4jISBvbj1UZWt0dWtvIG90PTk5MjI3ODM4NyBvZz1hbGxnZW1laW5lcwpLYXR6ZW5rbG8sIEthdHplbmtsbywgamEgZGFzIG1hY2h0IGRpZSBLYXR6ZSBmcm9oIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphdWYgZW1hIChHcmltbWJvcm4sIDEyLiBKdW4gMjAwMSwgMDA6Mzc6MzIpOgp+IyEgb249RWxhdGl1cyBvdD05OTIyOTczMTMgb2c9YWxsZ2VtZWluZXMKLXEKcQpkCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR25hZ25hIDopIChHbG9pbnNvbiwgMTIuIEp1biAyMDAxLCAwODozNTozOSk6ClhYWCB0ZWlsdCBEaXIgbWl0OiBJY2ggZ2xhdWJlIG5pY2gsIGRhc3MgRHUgZGllIExldXRlIGtlbm5zdCwgZGllIGRpZQpYWFggdGVpbHQgRGlyIG1pdDogW3NjaGxlY2h0ZV0gTWVpbnVuZyB2b24gRGlyIGhhYmVuLCBkaWUgaWNoIGJpc2hlciB6dQpYWFggdGVpbHQgRGlyIG1pdDogaG9lcmVuIGtyaWVndGUsIHVuZCBsYW5nc2FtIHdlaXNzIGljaCBhdWNoLCB3aWVzbyBkYXMgc28KWFhYIHRlaWx0IERpciBtaXQ6IGlzdC4uLgoKRWhybGljaD8gSWNoIGF1Y2ggOikgTGV1dGUgZGllIG1pY2ggbmljaHQga2VubmVuIHVuZCBlaW5lIHNjaGxlY2h0ZSBNZWludW5nCnZvbiBtaXIgaGFiZW4ga29lbm5lbiBkaWUgZnVlciBzaWNoIGJlaGFsdGVuLgoKR2xvaW4oc29uKSBraWNoZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQnVmZnkgJiBBbmdlbCAoR3JpbW1ib3JuLCAxMi4gSnVuIDIwMDEsIDEwOjIwOjQzKToKfiMhIG9uPUdyaW1tYm9ybiBvdD05OTIzMzQwMzkgb2c9c3VjaGUtYmlldGUKfiMhIHJuPU1vcmdvdGggcnQ9OTkyMzI5NzQxIHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9OTkyMzI5NzQxCkphLCB3ZW5uIGplbWFuZCBDRHMgcGVyIGZ0cCB2ZXJzY2hpY2tlbiBrYW5uIHdhZXJlIGljaCBhdWNoIGludGVyZXNzaWVydC4gVm9yCmFsbGVtIHdlbm4gc2ljaCBkaWVzZSBUZWNobmlrIGF1Y2ggYXVmIFBpenplbiBhdXN3ZWl0ZW4gbGllc3NlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJ1ZmZ5ICYgQW5nZWwgKEJlbmRlaWdpZCwgMTIuIEp1biAyMDAxLCAxMjowODo0NCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTkyMzM0MDQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkyMzI5NzQxCkRpZSBlaW56aWdlIFBpenphLCBkaWUgc2ljaCBwZXIgZnRwIHZlcnNjaGlja2VuIGxhZXNzdCwgaXN0IGJpc2hlciBudXIgZGFzIE1HLgpMZWlkZXIuCkFiZXIgbWFuIGFyYmVpdGV0IHNpY2hlciBkYXJhbi4KCmJlbmRlaWdpZCwgZnVlciBzb2xjaGUgTm90ZmFlbGxlIGRpZSBNZW5zYSBoYWJlbmQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJ1ZmZ5ICYgQW5nZWwgKFNpcmpvaG4sIDEyLiBKdW4gMjAwMSwgMTI6NTk6NTIpOgp+IyEgcm49QmVuZGVpZ2lkIHJ0PTk5MjM0MDUyNCByZz1zY2htYXJybgp+IyEgdGlkPTk5MjMyOTc0MQpVaGguLi4gUXVlc3RoaWxmZSA6bwoKU2lySm9obiwgYXVmIGRlbiBSdWJyaWstTmFtZW4gVmVyd2Vpc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBoYWJlbiB3YXMgbmljaCB2ZXJzdGFuZGVuLi4uIChDcml0dGVyLCAxMi4gSnVuIDIwMDEsIDEzOjE5OjQ3KToKQWJlbnRldWVyOjxRdWVzdD5dIEVsY2lkIGhhdCBnZXJhZGUgZWluIEFiZW50ZXVlciBiZXN0YW5kZW46IEJlZnJlaWUgZGVuCltBYmVudGV1ZXI6PFF1ZXN0Pl0gRnJpZWRob2YKSmltbXkgcnVmdDogRWxjaWQgaGF0IG1pdCBzZWluZW0gSGVsZGVubXV0IGRlbiBGcmllZGhvZiBiZWZyZWl0IQpKaW1teSBydWZ0OiBXZW5uIGRhcyBrZWluIEdydW5kIHp1bSBGZWllcm4gaXN0ISEgOi0pCkVpbmUgR3J1cHBlIG5pZWRlcmdlc2NobGFnZW5lciBNb2VuY2hlIGJldHJpdHQgZGFzIFNjaGlmZi4gU2llIHNldHplbiBzaWNoCmFuIGRpZSBSdWRlciB1bmQgZmFocmVuIGxvcy4KRXR3YXMgZW50dGFldXNjaHQsIGFiZXIgaW1tZXIgbm9jaCBtb3RpdmllcnQgcnVkZXJuIGRpZSBNb2VuY2hlIGVpbmVtIG5ldWVuClppZWwgZW50Z2VnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEcm9sbGkgaXN0IHNjaHd1bCB1bmQgZGFzIGlzdCBhdWNoIGd1dCBzby4uLiAoU29sbXlyLCAxMi4gSnVuIDIwMDEsIDIzOjIwOjE0KToKIERyb2xsaSB3ZWlsdCB3aWVkZXIgdW50ZXIgZGVuIExlYmVuZGVuLgogRHJvbGxpICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCiBEcm9sbGkga251ZGRlbHQgRGljaC4KIERyb2xsaSBzYWd0OiBrdXJ6IGtsbwogQWxsZ2VtZWluOkFsYm9pbiBrYXVtIHJlZGVuIHdpciB1ZWJlciBzY2h3dWxlIHNjaG9uIGtvbW10IGRyb2xsaSAuLi4KClNvbCogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldGRpZ2VzdC4uLiAoRm9vYmFyLCAxMy4gSnVuIDIwMDEsIDAwOjUxOjM0KToKRnJvbTogU3ZlbiBIYXJ0Z2UgPHNoLTAxNUBkczkuYXJnaC5vcmc+Ck5ld3Nncm91cHM6IGRlLmFkbWluLm5ld3MuZ3JvdXBzClN1YmplY3Q6IFJlOiBQcmFlLVJGRDogKFJldHJvL1JvYm8pLU1vZGVyYXRpb24gdm9uIGRlLm5ld3VzZXJzLnF1ZXN0aW9ucwpEYXRlOiBTYXQsIDkgSnVuIDIwMDEgMTg6MTI6NTEgKzAwMDAgKFVUQykKTWVzc2FnZS1JRDogPDMuM2IyMjY2ZjMuNGM2LjNlOEBkczkuYXJnaC5vcmc+CgpKb2hhbm5lcyBGb3JtYW5uIDxqb2hhbm5lc0Bmb3JtYW5uLmRlPiBzY2hyaWViOgoKPiBUb2JpYXMgWmltcGVsIDx1c2VuZXQtcmVwbHlAc3RhcnRyZWstd2ViLmRlPiB3cm90ZToKCj4+IE1laHIgaW5mb3MgdW50ZXIgaHR0cDovL3dweHgwMi50b3hpLnVuaS13dWVyemJvcmcuZGUvfmRjb3VsbW9kLwoKPiBUaGUgcmVxdWVzdGVkIFVSTCBjb3VsZCBub3QgYmUgcmV0cmlldmVkCj4gV2hpbGUgdHJ5aW5nIHRvIHJldHJpZXZlIHRoZSBVUkw6Cj4gaHR0cDovL3dweHgwMi50b3hpLnVuaS13dWVyemJvcmcuZGUvfmRjb3VsbW9kLyAKCldlIGFyZSBXdWVyei1Cb3JnIG9mIFBlcHBlci4gWW91IHdpbGwgYmUgc3BpY2VkLiBSZXNpc3RhbmNlIGlzIFNhbGFkLgoKUyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnRhbnplbiAoWmlsbHVzLCAxMy4gSnVuIDIwMDEsIDAyOjEyOjA1KToKaHR0cDovL3d3dy5kYW5jaW5ncGF1bC5jb20vCgplbmpveSAuLi4KClppbGx1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIGJpbiBzY2h3dWwgdW5kIGRhcyBpc3QgYXVjaCBndXQgc28sIERJRSBaV0VJVEUgOikgKFNvbG15ciwgMTMuIEp1biAyMDAxLCAwMzoyNTowMyk6CiBTdGFyZmlyZSBydWZ0OiBZZXNzIQogRHUgcnVmc3Q6IEhtPwogW0FiZW50ZXVlcjo8UXVlc3Q+XSBUYWxpbWEgaGF0IGdlcmFkZSBlaW4gQWJlbnRldWVyIGJlc3RhbmRlbjogRGllIEh1ZGRsZXMuCiBbQWJlbnRldWVyOjxRdWVzdD5dIE1hbiBob2VydCBlaW4gZnJldWRpZ2VzIEJlbGxlbiBpcmdlbmR3byBhdXMgZGVtCiBbQWJlbnRldWVyOjxRdWVzdD5dIEhvYmJpdGRvcmYuCiBEdSB0ZWlsc3QgU3RhcmZpcmUgbWl0OiBUYWxpbWEgZ2Vob2VydCB6dSBEaXI/IDopCiBTdGFyZmlyZSBuaWNrdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4KIFN0YXJmaXJlIHRlaWx0IERpciBtaXQ6IElzdCBMb2V3aXMgVmVybG9idGUuLi4gWzAzOjE1XQogRHUgcnVmc3Q6IElOWkVTVCAhCiBEdSBydWZzdDogTU9FUkRFUkJSVVQhCiBTdGFyZmlyZSB0ZWlsdCBEaXIgbWl0OiBOZWluLCBzaWUgaXN0IG5pY2h0IG1laW4gWndlaXRpIDopKSBbMDM6MTZdCiBCaWVsZWZlbGQgcnVmdDogd2Fzbj8KIFN0YXJmaXJlIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCiBEdSB0ZWlsc3QgU3RhcmZpcmUgbWl0OiBVbmQgd2llc28gaGFzdCBEdSBkYW5uICd5eXl5ZXMnIGdlYnJ1ZWxsdCwgd2llIHNvJ24KIER1IHRlaWxzdCBTdGFyZmlyZSBtaXQ6IE9jaHNlID8hIDopCiBTdGFyZmlyZSB0ZWlsdCBEaXIgbWl0OiBXZWdlbiBCaWVsZSA6KSBbMDM6MTddCgpJQ0ggQklOIFNDSFdVTCBVTkQgREFTIElTVCBHVVQgU08hIERhbm4gYnJhdWNoIGljaCBzbyB3YXMgYXVjaCBuaWNodCB2ZXJzdGVobgo6KQoKQW5tLmQuUmVkLiBTb2xteXIgaXN0IG5hdHVlcmxpY2ggc3RvY2toZXRlcm8sIGVyIGhlaXNzdCBlaWdlbnRsaWNoIEh1Z2ggSGVmbmVyCnVuZCBsYWVzc3QgNyBzY2hvZW5lIEJsb25kaW5lbiBmdWVyIHNpY2ggZGllIFRleHRlIHRpcHBlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJY2ggYmluIHNjaHd1bCB1bmQgZGFzIGlzdCBhdWNoIGd1dCBzbywgRElFIFpXRUlURSA6KSAoU29sbXlyLCAxMy4gSnVuIDIwMDEsIDAzOjI2OjM1KToKfiMhIHJuPVNvbG15ciBydD05OTIzOTU1MDMgcmc9c2NobWFycm4KfiMhIHRpZD05OTIzOTU1MDMKRGllIFRhc3RhdHVyIGlzdCBuYXR1ZXJsaWNoIHJpZXNlbmdyb3NzLCAxeDEgTWV0ZXItVGFzdGVuLCB3byBkaWUgQnVubmllcyBoaW4KdW5kIGhlcnNwcmluZ2VuLCB3byBpY2ggSWhuZW4gaGluemVpZ2UuCgpIdXBzLCB0cmFldW0gaWNoPyBOZWluLCBpY2ggYmluIGltIEVseXNpdW0uLi4qc2V1ZnoqIFNvbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCBiaW4gc2Nod3VsIHVuZCBkYXNzIGlzdCBndXQgc28gOikgVGVpbCAzIChTb2xteXIsIDE0LiBKdW4gMjAwMSwgMDY6MTE6MTApOgogW0FsbGdlbWVpbjp4eHhdIGhhcmhhciAuLiBhdXNzZXIgbWlyIG51ciA0IG5pY2h0IGlkbGUgLi4uIGpldHp0IGxvZ2dlIGljaAogW0FsbGdlbWVpbjp4eHhdIG5vY2ggbWVpbmUgeHRpZXMgZWluIHVuZCB1ZWJlcm5laG1lIGRhcyBtdWQgOy0pCiBbQWxsZ2VtZWluOlNvbG15cl0gVW5kIHdhcyBoYXN0IER1IGRhbm4gZGF2b24gPyEgOikKIFtBbGxnZW1laW46eHh4XSBtYWNodCwgcG93ZXIgLi4gaWNoIEdFV0lOTkUgOi0pCiBbQWxsZ2VtZWluOlNvbG15cl0gQWNoIGhlcnJqZSwgZWluZXIgbWl0IGRlbSB0eXBpc2NoZW4gSWNoa29tcGxleCA6KQogW0FsbGdlbWVpbjp4eHhdIHdlbm4gaWNoIGRhcyBtZyBlbmRsaWNoIGdld29ubmVuIGhhYiwgaGFiZSBpY2ggd2llZGVyCiBbQWxsZ2VtZWluOnh4eF0gemVpdCBmdWVyIFJMIDstKQogW0FsbGdlbWVpbjpFckVMXSBLZW5uZSBpY2ggRGljaCA/CgpHdXRlbiBNb3JnZW4gUyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVoLW9oLi4uIChBcHN1LCAxNC4gSnVuIDIwMDEsIDA5OjQ0OjU3KToKW0FsbGdlbWVpbjpEZWVwYmx1ZV0gV2FzIGlzc24gaGV1dGUgaGllciBsb3M/IFNvIGZhbWlsaWFlciB3YXIgZGFzIE1HIGxhbmdlCltBbGxnZW1laW46RGVlcGJsdWVdIG5pY2h0LCBudXIgMzUgTGV1dGUsIGRhdm9uIDEyIG5pY2h0IGlkbGUKW0FsbGdlbWVpbjpXaWxsb3ddIGhtbW0uLi4gYWxsZSBrcmFuaz8KW0FsbGdlbWVpbjpEZWVwYmx1ZV0gRGFubiB3YWVyZW4gc2llIGphIGhpZXIgOi0+CltBbGxnZW1laW46SmVtYW5kXSBhbGxlIHVuc2ljaHRiYXIgdW5kIGhlY2tlbiBnZW1laW5oZWl0ZW4gYXVzLgpbQWxsZ2VtZWluOldpbGxvdyBraWNoZXJ0XQpbQWxsZ2VtZWluOkRlZXBibHVlXSBHZW1laW5oZWl0ZW5hdXNoZWNrZW5kZSBKZW1hbmRzIGFid2VydGVuIQpbQWxsZ2VtZWluOkplbWFuZCBuaWNrdCBlcm5zdC5dCltBbGxnZW1laW46SmVtYW5kXSBhY2ggcXVhdHNjaApbQWxsZ2VtZWluOkplbWFuZCBncmluc3QgSmVtYW5kZW4gYW4uXQpbQWxsZ2VtZWluOkplbWFuZCBncmluc3QgZGlhYm9saXNjaF0KW0FsbGdlbWVpbjpKZW1hbmQgZGVua3QgLiBvIE8gKG51ciBiZWtsb3BwdGUuLi4pXQpbQWxsZ2VtZWluOkplbWFuZF0gb2hoaGphLgoKT2huZSBXb3J0ZS4uLiA6LSkKQXBzdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogS3VoLUFuaW1hdGlvbiAoR3JpbW1ib3JuLCAxNC4gSnVuIDIwMDEsIDE4OjA5OjQyKToKfiMhIHJuPVRyb3kgcnQ9OTkyNTMyNzA5IHJnPXd3dwp+IyEgdGlkPTk5MjQ2ODEzMwpbIF0gRGlyIHNpbmQgZGllIExlc2ViZXNjaHJhZW5rdW5nZW4gZnVlciBNYWdpZXIgaW4gZGllc2VtIG11ZCBiZWthbm50LgpbWF0gRGlyIHNpbmQgZGllIExlc2ViZXNjaHJhZW5rdW5nZW4gZnVlciBNYWdpZXIgaW4gZGllc2VtIG11ZCBnZXJhZGUKICAgIGluIGRpZSBRdWVyZSBnZWtvbW1lbiB1bmQgRHUgaGFzdCBEaWNoIG51biBlbnRzY2hpZWRlbiwgc2llIGtlbm5lbiB6dQogICAgbGVybmVuLgpbIF0gRHUga2FubnN0IG1pdCBDaGVja2JveGVuIGFic29sdXQgbmljaHQgc2FjaGdlbWFlc3NlIHVtZ2VoZW4sIHdhcyBEaXIKICAgIGFiZXIgYXVjaCBlZ2FsIGlzdC4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGVkZHlzIHNpbmQgc28gbGllYiA6KSAoUHVrLCAxNC4gSnVuIDIwMDEsIDE5OjMxOjUzKToKCkR1IGZldWVyc3QgZWluZW4gZmx1ZXNzaWdlbiBNZXNzZXJzY2huaXR0IGF1ZiBZYWxhZGFuIGFiLgpEdSAtLS0tLS0tLS0tIFlhbGFkYW4gLS0tLS0tLS0tLS0tLS0tPiBCUkVJCkRlciBUZWRkeSBrbnVkZGVsdCBEaWNoIGVpbiBsZXR6dGVzIE1hbC4KCk1lcmtlLCBhdWNoIGZyZW1kZSBUZWRkeSdzIGtudWRkbGVuIGdlcm5lIDopClB1aywgZG9jaCByZWNodCBsZWJlbmRpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogS3VoLUFuaW1hdGlvbiAoVHJveSwgMTUuIEp1biAyMDAxLCAwODo1MjoyNyk6Cn4jISBvbj1Ucm95IG90PTk5MjU4NzkzMyBvZz13d3cKfiMhIHJuPUZvb2JhciBydD05OTI1NDQwMTQgcmc9d3d3Cn4jISB0aWQ9OTkyNDY4MTMzClsgXSBNdXV1dXV1dXV1dXV1dXVoCgpUcm95CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBCdWNoZW1wZmVobHVuZyAoQW1hcnlsbGlzLCAxNS4gSnVuIDIwMDEsIDEyOjU0OjE3KToKfiMhIHJuPUdyaW1tYm9ybiBydD05OTI1OTQ5OTMgcmc9a3VsdHVyCn4jISB0aWQ9OTkyNTUwMjAxClNvbGFyaXM/IEhhYiBpY2ggYXVjaCBuZW4gQnVjaCBoaWVyIHJ1bXN0ZWhlbiwgYWxsZXJkaW5ncyBuaWNodCB2b24gU3RhbmlzbGF3CkxlbSwgc29uZGVybiB2b24gU3VuIDopCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2hsZWNodGVzIE5hbWVuc2dlZGFlY2h0bmlzLi4uPyAoQW5hdG9sLCAxNS4gSnVuIDIwMDEsIDIwOjUzOjU1KToKW1RvZDpMYXJzXSBFaW4gc2Nod2FyemVzIFNrZWxldHQgaGF0IGdlcmFkZSBFbGFpbmUgdW1nZWJyYWNodC4KW1RvZDpFaW4gc2Nod2FyemVzIFNrZWxldHRdIFdpbGxrb21tZW4gaW0gQ2x1YiwgRWxlbmRpbCEKClNvd2FzLgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzY2hsZWNodGVzIE5hbWVuc2dlZGFlY2h0bmlzLi4uPyAoVmFyZGlvbiwgMTYuIEp1biAyMDAxLCAwMTozMjoyOSk6Cn4jISBybj1BbmF0b2wgcnQ9OTkyNjMxMjM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkyNjMxMjM1CkRlciBCdWcgaXN0IHVyYWx0LiBBYmVyIFBhcmFjZWxzdXMgbGllc3Qga2VpbmUgTWFpbCBvZGVyIGVudGZlcm50IGtlaW5lIEJ1Z3MKOikKClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc2NobGVjaHRlcyBOYW1lbnNnZWRhZWNodG5pcy4uLj8gKFBhdHJ5biwgMTYuIEp1biAyMDAxLCAwMTo0MDo0MCk6Cn4jISBybj1WYXJkaW9uIHJ0PTk5MjY0Nzk0OSByZz1zY2htYXJybgp+IyEgdGlkPTk5MjYzMTIzNQpoYWIgZGVuIGJ1ZyBub2NoIG5pY2gsIHNjaGVpbnQgbWlyIGFiZXIga2VpbiBidWcgYmVpIHBhcmEgenUgc2Vpbi4KCi0tCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogc2NobGVjaHRlcyBOYW1lbnNnZWRhZWNodG5pcy4uLj8gKEdsb2luc29uLCAxNi4gSnVuIDIwMDEsIDA2OjEyOjQzKToKfiMhIHJuPVBhdHJ5biBydD05OTI2NDg0NDAgcmc9c2NobWFycm4KfiMhIHRpZD05OTI2MzEyMzUKS0VpbmUgQWhudW5nLiBJY2ggZnVlZ2UgenVyIExpc3RlIHNlbHRzYW1lciBWb3Jrb21tbmlzc2UgZ2VybiBub2NoIGhpbnp1IHdhcwpuZXVsaWNoIGdlc2NoYWg6ClthbSBUYWxyYW5kIGdlbiBEcmFrb25pZXJweXJhbWlkZSwgbl0KW1RvZDpMYXJzXSBQaXRmYWxsIGhhdCBnZXJhZGUgTWluZ28gdW1nZWJyYWNodC4KCkVzIHdhciBuYXR1ZXJsaWNoIGtlaW4gUEsgdm9uIGlobSwgYXVjaCBrZWluZXN3ZWdzIGJlaSBpaG0gZWluZ2V0cmFnZW4sIGFiZXIKc2Nob24gc2VsdHNhbS4gS3VyeiB2b3JoZXIgaXN0IGRlciBGcmVzc3NhY2sgTWluZ28gUGl0ZmFsbCBiZWdlZ25ldCBhYmVyIGRhc3MKZGllcyBnbGVpY2ggZGVuIEtJTExFUiBzbyB2ZXJhZW5kZXJ0IC4uLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS29rb3JvIChFbGVuZGlsLCAxNi4gSnVuIDIwMDEsIDE0OjUxOjI2KToKRGllIEtha2VybGFrZSBzdHVlcnp0IHNpY2ggZ2llcmlnIGF1ZiBkYXMgS29rb3JvIHZvbiBFbGRhcm9uIHVuZCBmcmlzc3QgZXMKZ2VudWVzc2xpY2ggaW4gU2VrdW5kZW5zY2huZWxsZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NoYWNodCAoQ3JvZnQsIDE2LiBKdW4gMjAwMSwgMTY6MjA6MzgpOgpbVG9kOkxhcnNdIERpZSBIYXVzaGFlbHRlcmluIGRlciBPbWEgZGVyIEdhZXJ0bmVyaW4gZGVyIFNjaHdlc3RlciBkZXIKW1RvZDpMYXJzXSBOYWNoYmFyaW4gZGVzIEJydWRlcnMgZGVzIFNjaHdlcnRtZWlzdGVycyAuLi4KWy4uLl0KW1RvZDpSb2NodXNdIER1IGhhc3QgZGEgd2FzIHZlcmdlc3NlbiwgTGFycy4KW1RvZDpMYXJzXSBJY2ggZ2VicyBhdWYuCltUb2Q6TGFyc10gRXR3YXMgR2VoZWltbmlzdm9sbGVzIHVuZCBVbmJla2FubnRlcyBoYXQgZ2VyYWRlIEhlbHZldGlhCltUb2Q6TGFyc10gdW1nZWJyYWNodC4KClsuLi4gZXR3YXMgc3BhZXRlciAuLi5dCltCZWlsZWlkOkhlbHZldGlhXSB3YXIgYWJlciBlaW4gdG9sbGVyIFNjcm9sbCA7LSkpCltUb2Q6TGFyc10gRWluIFNjaGxhZWNodGVyIGhhdCBnZXJhZGUgSGVsdmV0aWEgdW1nZWJyYWNodC4KW1RvZDpFaW4gU2NobGFlY2h0ZXJdIFNjaGljaHQgaW0gU2NoYWNodCEgCgpXZWlscyBzbyBzY2hvZW4gd2FyLi4uIDotLwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllc2UgUnVuZGUgZ2luZyB3b2hsIGFucyBVbmdlemllZmVyLi4uIChGb29iYXIsIDE2LiBKdW4gMjAwMSwgMTg6MzQ6MTYpOgogIC4uLi5ub3JtYWwvRmx1ZWdlbHNjaGxhIE1vdHRlLi4uLi4uLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIGhhcnQKICAuLi4ubm9ybWFsL0JlaXNzd2Vya3pldSBTcGlubmUuLi4uLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSBnZWtyYXR6dApBdXRzY2ghIElyZ2VuZHdhcyBpc3QgRGlyIGdlcmFkZSBhdWYgZGVuIEtvcGYgZ2VmYWxsZW4uLi5kZXIgSG9send1cm0uLi53byBrYW0KZGVyIGRlbm4gaGVyPyEKRHUgZHVja3N0IERpY2ggZ2FueiBnZXNjaHdpbmQgdW5kIHRhdWNoc3Qgc28gdW50ZXIgZGVtIEFuZ3JpZmYgdm9sbHN0YWVuZGlnCmR1cmNoLgogIC4uLi5ub3JtYWwvQmVpc3N3ZXJremV1IEhvbHp3dXJtLi4uLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHZlcmZlaGx0CkF1dHNjaCEgSXJnZW5kd2FzIGlzdCBEaXIgZ2VyYWRlIGF1ZiBkZW4gS29wZiBnZWZhbGxlbi4uLmRlciBIb2x6d3VybS4uLndvIGthbQpkZXIgZGVubiBoZXI/IQogIC4uLi5ub3JtYWwvQmVpc3N3ZXJremV1IEhvbHp3dXJtLi4uLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtClNjaG1ldHRlcm4KICAuLi4ubm9ybWFsL2Jsb3NzZW4gSGFlbiBTdGF1Ym1pbGJlLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSBzZWhyIGhhcnQKICAuLi4ubm9ybWFsL0ZsdWVnZWxzY2hsYSBNb3R0ZS4uLi4uLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSBoYXJ0CiAgLi4uLm5vcm1hbC9GbHVlZ2Vsc2NobGEgRnJ1Y2h0ZmxpZWdlLiA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gc2VociBoYXJ0CiAgLi4uLm5vcm1hbC9CZWlzc3dlcmt6ZXUgSmVtYW5kLi4uLi4uLiA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gc2VociBoYXJ0CklpaWlrcyEgRGllIEtha2VybGFrZSBrcmllY2h0IGFuIERlaW5lbSBCZWluIGhvY2ghIER1IGthbm5zdCBzaWUgZ3JhZCBub2NoIHNvCmFic2NodWV0dGVsbiwgZG9jaCBkZXIgRWtlbCBzY2h1ZXR0ZWx0IERpY2guCiAgLi4uLm5vcm1hbC9CZWlzc3dlcmt6ZXUgS2FrZXJsYWtlLi4uLiA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gc2VociBoYXJ0CiAgLi4uLm5vcm1hbC9mbGFtbWVuZGVtIFogRmV1ZXJlbGVtZW50YSA6IEhvbHp3dXJtLi4uLi4gKioqKioqKiogLS0gdmVyZmVobHQKRGllIEZydWNodGZsaWVnZSBzYXVzdCBrdXJ6IGluIERlaW4gT2hyLi4uICpCIFIgVSBNIE0gKiAuLi5hdWEsIGRhcyBpc3QgamEKcmljaHRpZyBsYXV0LiBOdXIgbWl0IE11ZWhlIHdpcnN0IER1IHNpZSB3aWVkZXIgbG9zLgogIC4uLi5ub3JtYWwvRmx1ZWdlbHNjaGxhIEZydWNodGZsaWVnZS4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHNlaHIgaGFydAogIC4uLi5ub3JtYWwvRmx1ZWdlbHNjaGxhIEZydWNodGZsaWVnZS4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHNlaHIgaGFydApEaWUgQW5nc3QgaXN0IHN0YWVya2VyIGFscyBEdSAuLi4gRHUgd2lsbHN0IG51ciBub2NoIHdlZyBoaWVyLgpEaWUgSG9senR1ZXIgaXN0IGRvY2ggc2Nob24gZ2VvZWZmbmV0IQpEdSBrb21tc3QgbmljaHQgbG9zISBEZXIgRmFkZW4gZGVyIFNwaW5uZSBoYWVsdCBEaWNoIGZlc3QuCkRlaW4gRmx1Y2h0dmVyc3VjaCBpc3QgZ2VzY2hlaXRlcnQuCkR1IGJlaXNzdCBvYiBkZXIgU2NobWVyemVuIGRpZSBaYWVobmUgenVzYW1tZW4uCkR1IGJpc3QgamV0enQgaW4gUmVpaGUgMi4KW1RlYW0gNjpdIERlZXBibHVlLT4xLCBGb29iYXItPjIKICAuLi4ubm9ybWFsL0ZsdWVnZWxzY2hsYSBNb3R0ZS4uLi4uLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvQmVpc3N3ZXJremV1IFNwaW5uZS4uLi4uLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIGhhcnQKICAuLi4ubm9ybWFsL0JlaXNzd2Vya3pldSBIb2x6d3VybS4uLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSBnZWtyYXR6dAogIC4uLi5ub3JtYWwvQmVpc3N3ZXJremV1IEhvbHp3dXJtLi4uLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIGhhcnQKICAuLi4ubm9ybWFsL2Jsb3NzZW4gSGFlbiBTdGF1Ym1pbGJlLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSBoYXJ0CiAgLi4uLm5vcm1hbC9GbHVlZ2Vsc2NobGEgTW90dGUuLi4uLi4uLiA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gaGFydAogIC4uLi5ub3JtYWwvRmx1ZWdlbHNjaGxhIEZydWNodGZsaWVnZS4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIGdldHJvZmZlbgogIC4uLi5ub3JtYWwvQmVpc3N3ZXJremV1IEplbWFuZC4uLi4uLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIGhhcnQKICAuLi4ubm9ybWFsL0JlaXNzd2Vya3pldSBLYWtlcmxha2UuLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSBzZWhyIGhhcnQKU28gd2lyc3QgRHUgZGllIGZsaW5rZSBGcnVjaHRmbGllZ2UgbmljaHQgZXJ3aXNjaGVuLgogIC4uLi5ub3JtYWwvbmljaHQuLi4uLi4uIER1Li4uLi4uLi4uLi4gOiBGcnVjaHRmbGllZ2UuICoqKioqKioqIC0+IHZlcmZlaGx0CkRpZSBGcnVjaHRmbGllZ2Ugc2F1c3Qga3VyeiBpbiBEZWluIE9oci4uLiAqQiBSIFUgTSBNICogLi4uYXVhLCBkYXMgaXN0IGphCnJpY2h0aWcgbGF1dC4gTnVyIG1pdCBNdWVoZSB3aXJzdCBEdSBzaWUgd2llZGVyIGxvcy4KICAuLi4ubm9ybWFsL0ZsdWVnZWxzY2hsYSBGcnVjaHRmbGllZ2UuIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSBLcmFjaGVuCltUb2Q6TGFyc10gRWluZSBGcnVjaHRmbGllZ2UgaGF0IGdlcmFkZSBGb29iYXIgdW1nZWJyYWNodC4KW1RvZDpFaW5lIEZydWNodGZsaWVnZV0gV2lyIEluc2VrdGVuIHdlcmRlbiBldWNoIGRvY2ggdWViZXJsZWJlbiEgICAgICAgICAgICAgCgpGb29iYXIgLSBtaXQgVG9kZXNmb2xnZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzcyBuZW5uIGljaCBQZmxpY2h0YmV3dXNzdHNlaW4gKEthZmYsIDE3LiBKdW4gMjAwMSwgMjA6NTA6MDQpOgpIaXNBc3VsIHNjaHJlaXRldCBwZmxpY2h0YmV3dXNzdCBoZXJlaW4uCkhpc0FzdWwgd2lyZnQgc2VpbmVuIFdlY2tlciBuYWNoIEZhbnRhZ2hpcm8uCkhpc0FzdWwgd2lyZnQgc2VpbmVuIFdlY2tlciBuYWNoIEZhbnRhZ2hpcm8uCkhpc0FzdWwgd2lyZnQgc2VpbmVuIFdlY2tlciBuYWNoIEZhbnRhZ2hpcm8uCkhpc0FzdWwgd2lyZnQgc2VpbmVuIFdlY2tlciBuYWNoIEZhbnRhZ2hpcm8uCkhpc0FzdWwgc2NocmVpdGV0IHBmbGljaHRiZXd1c3N0IG5hY2ggT3N0ZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWUgUXVlc3QgKEdub21lLCAxOC4gSnVuIDIwMDEsIDEyOjU3OjQyKToKfiMhIHJuPU5vbm5lIHJ0PTk5Mjc4MTc1NiByZz1kLnZsYW5kCn4jISB0aWQ9OTkyNzgxNzU2CmdlbmF1IQpiaW4gaW4gbm9ybWFsIG5hZW1saWNoIHNjaG9uIHJlaWNobGljaCBtaXQhIDstKQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldGRpZ2VzdCBhZ2FpbiAoVmFuaW9uLCAxOC4gSnVuIDIwMDEsIDE3OjM0OjI3KToKRnJvbTogIk1pY2hhZWwgTGluZG5lciIgPG5ld3NAdG90ZS10aWVyZS5jb20+Ck5ld3Nncm91cHM6IGRlLm9yZy5jY2MKU3ViamVjdDogUmU6IFdvaGVyIGlzJ24gZWlnZW50bGljaCBkYXMgSW50ZXJuZXQ/CkRhdGU6IFN1biwgMTcgSnVuIDIwMDEgMDE6NTc6MTMgKzAyMDAKTWVzc2FnZS1JRDogPDlnZ3JtdiQ0YjkkMDQkMUBuZXdzLnQtb25saW5lLmNvbT4KCgpUb2JpYXMgSHVjaCA8dGh1Y2hAdC1vbmxpbmUuZGU+IHNjaHJpZWIgaW4gaW0gTmV3c2JlaXRyYWc6CjlnZzdpNSQ2MmkkMDEkMUBuZXdzLnQtb25saW5lLmNvbS4uLgoKPiBKZXAuLi4gZGFzIHN0aW1tdC4KPiBEZW4gZHVyY2hicmVjaGVuZGVuIEVyZm9sZ3QgaGF0IGVzIGRhbm4gYmVrb21tZW4sIGFscyBkaWUgZXJzdGVuCj4gUG9ybm8tQW5nZWJvdGUgaW0gTmV0eiBzdGFuZGVuLgo+IERhbm4gd3VyZGUgZXMgZHVyY2ggZGllIFBvcm5vaW5kdXN0cmllIGVpbiBNYXNzZW5tZWRpdW0uIEF1Y2ggbm9jaCBoZXV0ZQo+IGlzdCBkaWVzZSBCcmFuY2hlIGRpZSB0cmVpYmVuZGUgS3JhZnQgZnVlciBuZXVlIEVudHdpY2tsdW5nZW4uCgpOZXVsaWNoIGluIGRlciBaZWl0dW5nIGJlaSBkZW4gV2l0emVuOgpEYXMgSW50ZXJuZXQgaXN0IGFiIHNvZm9ydCBhdWYgMTcuMDAwIERWRHMgZXJoYWVsdGxpY2guCkFsdGVybmF0aXYgaW0gQW5nZWJvdDogZGllIEp1Z2VuZnJlaWUgVmVyc2lvbiBhdWYgMiBDRHMuCgotLQpWKiBoYXQgYmVpZGUgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbm9jaCB3YXMgZGF6dSAoR3JpbW1ib3JuLCAxOC4gSnVuIDIwMDEsIDIxOjU2OjQ1KToKfiMhIHJuPVJvbGFuZCBydD05OTI4OTQwNDQgcmc9YmFsYW5jZQp+IyEgdGlkPTk5Mjg4NjE0MQoqc2V1ZnoqIEljaCBiaW4gZWluIGdlZHVsZGlnZXIgTWVuc2NoIChvaywgWndlcmcuIFVuZCBuaWNodCB3aXJrbGljaApnZWR1bGRpZykuIEFiZXIgZWluIF9iaXNjaGVuXyBTb3JnZmFsdCBpbiBkZXIgT3J0aG9ncmFwaGllIHNjaGFkZXQgd2lya2xpY2gKbmljaHQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBub2NoIHdhcyBkYXp1IChUZWt0dWtvLCAxOC4gSnVuIDIwMDEsIDIxOjU3OjQ4KToKfiMhIHJuPUdyaW1tYm9ybiBydD05OTI4OTQyMDUgcmc9c2NobWFycm4KfiMhIHRpZD05OTI4ODYxNDEKT3J0aG9ncmFwaGllPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbm9jaCB3YXMgZGF6dSAoR3JpbW1ib3JuLCAxOC4gSnVuIDIwMDEsIDIxOjU4OjEwKToKfiMhIHJuPVRla3R1a28gcnQ9OTkyODk0MjY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkyODg2MTQxClJlY2h0c2NocmVpYnVuZy4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbm9jaCB3YXMgZGF6dSAoSXNpLCAxOC4gSnVuIDIwMDEsIDIxOjU4OjU0KToKfiMhIHJuPVRla3R1a28gcnQ9OTkyODk0MjY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkyODg2MTQxCmxpbmtzc2NocmVpYnVuZyAobmV1KSBvZGVyIGFsdCBvZGVyIGVpbiB6ZXVnbmlnIHVlYmVyCmFuZXJrYW5udGUgbGVnYXN0aGVuaWUgb2RlciBjaHJvbmlzY2hlIE1pZXBpdGlzCihNaWVwaXRpcz0gc3RhZW5kaWdlcyBwcm9kdXppZXJlbiB2b24gdHlwb3MgbWl0IGhvZWNoc3Qga29taXNjaGVuIGZvbGdlbikKaXNpKHR5cG9zd2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IG5vY2ggd2FzIGRhenUgKFRla3R1a28sIDE4LiBKdW4gMjAwMSwgMjE6NTg6NTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5Mjg5NDI5MCByZz1zY2htYXJybgp+IyEgdGlkPTk5Mjg4NjE0MQpBY2hzbywgYWVobSBqYSBrbGFyIDopIFd1ZXJkZSBtaWNoIG1hbCBpbnRlcmVzc2llcmVuIHdpZSBkYXMgYXVzZ2VzZWhuIGhhdC4KRGFzIFdpbmRvd3MgMi54CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBub2NoIHdhcyBkYXp1IChHcmltbWJvcm4sIDE4LiBKdW4gMjAwMSwgMjI6MDI6MDEpOgp+IyEgcm49VGVrdHVrbyBydD05OTI4OTQzMzYgcmc9c2NobWFycm4KfiMhIHRpZD05OTI4ODYxNDEKSW4gUGFkZXJib3JuIGdpYnRzIGdsYXViIGljaCBlaW4gQ29tcHV0ZXJtdXNldW0uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IG5vY2ggd2FzIGRhenUgKE11cGZlbCwgMTguIEp1biAyMDAxLCAyMzoxMjozNyk6Cn4jISBybj1UZWt0dWtvIHJ0PTk5Mjg5NDMzNiByZz1zY2htYXJybgp+IyEgdGlkPTk5Mjg4NjE0MQpXaW5kb3dzIDIuMCBzaWVodCBhdXMgd2llIGRpZSBlcnN0ZW4gUEMtR0VNIFZlcnNpb25lbi4gR3JhdWVyIERlc2t0b3AuIDIsIDMKRmVuc3RlciAoVWhyIFRhc2NoZW5yZWNobmVyIEVkaXRvcikuIEthdW0gRnVua3Rpb25hbGl0YWV0IHVuZCBkYXp1IGxhaG0uCgotbXVwZmVsLSAoaGF0cyBtYWwgZ2VzZWhlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IG5vY2ggd2FzIGRhenUgKEdsb2luc29uLCAxOC4gSnVuIDIwMDEsIDIzOjMxOjE0KToKfiMhIHJuPU11cGZlbCBydD05OTI4OTg3NTcgcmc9c2NobWFycm4KfiMhIHRpZD05OTI4ODYxNDEKSmEuIFppZW1saWNoZSBHdWVsbGUuIFVuc2VyZSBYVC1CZXNpdHplciBpbiBkZXIgS2xhc3NlIGhhYmVuIGRvY2ggbGllYmVyIEdFTQpvZGVyIGlyZ2VuZHdlbGNoZW4gR0VPKHZlcndlY2hzZWwgaWNoIGpldHp0IGRlbiBOYW1lbiBtaXQgZGVtCkN4eC1Qcm9ncmFtbT8pLUtyYW0gYmVudXR6dC4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IG5vY2ggd2FzIGRhenUgKFpvb2ssIDE4LiBKdW4gMjAwMSwgMjM6MzI6MTApOgp+IyEgcm49TXVwZmVsIHJ0PTk5Mjg5ODc1NyByZz1zY2htYXJybgp+IyEgdGlkPTk5Mjg4NjE0MQpJY2ggaGFiIGF1Y2ggbWFsLi4uIHdpZSBoaWVzcyBkYXM/IEZyYW1lV29yayBiZW51dHp0LiBEYXMgaGF0dGUgYXVjaApuZSBzY2hpY2tlIEZlbnN0ZXJ2ZXJ3YWx0dW5nLCB3YXIgYWJlciBzYXVtaWVzcyB6dSBiZWRpZW5lbiB1bmQgCmF1c3NlcmRlbSBoYXQgZGVyIEtvcGllcnNjaHV0eiBnZW5lcnZ0IHdpZSB1bmdlc2NoZWl0Li4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogbm9jaCB3YXMgZGF6dSAoQmllbGVmZWxkLCAxOC4gSnVuIDIwMDEsIDIzOjMyOjE2KToKfiMhIHJuPUdsb2luc29uIHJ0PTk5Mjg5OTg3NCByZz1zY2htYXJybgp+IyEgdGlkPTk5Mjg4NjE0MQoqaG1tbSogaWNoIGdsYXViIHdpciBoYWJlbiBhdWYgZGVyIEFyYmVpdCBub2NoIDIuMS1EaXNrZXR0ZW5zYWV0emUgCnJ1bWZsaWVnZW4uLi4ud2FlcmUgZGlyZWt0IG1hbCBlaW4gR3J1bmQsIGluIGRpZSBNdWVsbGtpc3RlIHp1Cmd1Y2tlbiA6LSkKCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IG5vY2ggd2FzIGRhenUgKEdsb2luc29uLCAxOS4gSnVuIDIwMDEsIDAyOjMxOjA0KToKfiMhIHJuPUJpZWxlZmVsZCBydD05OTI4OTk5MzYgcmc9c2NobWFycm4KfiMhIHRpZD05OTI4ODYxNDEKUEFzcyBibG9zcyBhdWYsIG9kZXIgaWNoIHRyZWliIGRpZSBEaXNrZXR0ZSBtaXQgbWVpbmVuIERPUy1WaXJlbiB3aWVkZXIgYXVmIDopCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBub2NoIHdhcyBkYXp1IChBbmFjcmlvbiwgMTkuIEp1biAyMDAxLCAwMjozMTo1MCk6Cn4jISBybj1HbG9pbnNvbiBydD05OTI5MTA2NjQgcmc9c2NobWFycm4KfiMhIHRpZD05OTI4ODYxNDEKR2licyBpaG0hIQoKYW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IG5vY2ggd2FzIGRhenUgKEFuYXRvbCwgMTkuIEp1biAyMDAxLCAwNDoxNjozNSk6Cn4jISBybj1HbG9pbnNvbiBydD05OTI4OTk4NzQgcmc9c2NobWFycm4KfiMhIHRpZD05OTI4ODYxNDEKIkdlb3MiIGhpZXNzIGRhcyBkb2NoLCBvZGVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBub2NoIHdhcyBkYXp1IChTb2xteXIsIDE5LiBKdW4gMjAwMSwgMDU6Mjg6MzYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5Mjg5NDIwNSByZz1zY2htYXJybgp+IyEgdGlkPTk5Mjg4NjE0MQpTZWkgbmFjaHNpY2h0aWcsIEdkQSwgc2VpIG5hY2hzaWNodGlnISBPZGVyIGhhc3QgRHUgYmVyZWl0cyBzY2hvbiBzbyAiZmFzdCIKZmVobGVyZnJlaSBnZXNwcm9jaGVuLCBhbHMgRHUgdmllciBUYWdlIGFsdCB3YXJzdD8gOj0pCgpTb2wqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBub2NoIHdhcyBkYXp1IChHcmltbWJvcm4sIDE5LiBKdW4gMjAwMSwgMDY6NDE6MzgpOgp+IyEgcm49U29sbXlyIHJ0PTk5MjkyMTMxNiByZz1zY2htYXJybgp+IyEgdGlkPTk5Mjg4NjE0MQpKYS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogbm9jaCB3YXMgZGF6dSAoR2xvaW5zb24sIDE5LiBKdW4gMjAwMSwgMDg6NDA6NDgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5MjkyNTY5OCByZz1zY2htYXJybgp+IyEgdGlkPTk5Mjg4NjE0MQpJY2gga2FubiBkaWVzZSBBdXNzYWdlIGF1Y2ggZnVlciBtaWNoIHVuZCBtZWluZW4gQmVrYW5udGVua3JlaXMgc28KYmVzdGFldGlnZW4uCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGF1Y2ggbWFsIHdhcyB6dW0gc21zIHNhZ2VuIHdpbGwgKERlZXBibHVlLCAxOS4gSnVuIDIwMDEsIDA4OjQxOjEwKToKfiMhIHJuPVBhcmRhdXogcnQ9OTkyODk0NTAzIHJnPWJhbGFuY2UKfiMhIHRpZD05OTI4ODYxNDEKV2llc28gd2lsbHN0IER1IG5pY2h0IGFsbGVzIGdsZWljaCBtYWNoZW4/IFdhZXJlIGRvY2ggbmUgZ3V0ZSBTYWNoZS4gTGFzcyB1bnMKZGVuIEtvbW11bmlzbXVzIGltIE1HIGVpbmZ1ZWhyZW4gLSBzbyBhbHMgQWJzY2hyZWNrdW5nIGZ1ZXIgZGllIG5vcm1hbGUgV2VsdC4KSmF3b2xsIQpEZWVwYmx1ZSwgYWJzaWNodGxpY2ggZGllIFJ1YnJpayBnZXdlY2hzZWx0IGhhYmVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IG5vY2ggd2FzIGRhenUgKFZhcmRpb24sIDE5LiBKdW4gMjAwMSwgMDk6NDI6MzMpOgp+IyEgcm49QW5hdG9sIHJ0PTk5MjkxNjk5NSByZz1zY2htYXJybgp+IyEgdGlkPTk5Mjg4NjE0MQpBRkFJUiBoaWVzcyBlcyBhdWZtIEM2NC8xMjggJ0dlb3MnIHVuZCBhdWYgUEMgR2VvV29ya3MgRW5zZW1ibGUuCgpWYXJkaW9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBub2NoIHdhcyBkYXp1IChDYXR3ZWF6bGUsIDE5LiBKdW4gMjAwMSwgMTI6NTY6MTQpOgp+IyEgcm49VmFyZGlvbiBydD05OTI5MzY1NTMgcmc9c2NobWFycm4KfiMhIHRpZD05OTI4ODYxNDEKQWxzbyBpY2gga2FubiBtaWNoIGVyaW5uZXJuLCBkYXMgaWNoIEdlb3MgZGFtYWxzIHZvbGwgc2NoZWlzc2UgZmFuZC4gV2FydW0Kd2Vpc3MgaWNoIGFsbGVyZGluZ3MgbmljaHQgbWVociAuLi4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IG5vY2ggd2FzIGRhenUgKEFsYm9pbiwgMTkuIEp1biAyMDAxLCAxMjo1ODoxNCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9OTkyOTQ4MTc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkyODg2MTQxCmljaCBuZWhtZSBtYWwgYW4gd2VpIGR1IGtlaW5lIGx1c3QgaGF0dGVzdCBzdGFlbmRpZyBkaWUgZGlza2V0dGVuIHp1IHdlY2hzZWxuCgphbGJvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBub2NoIHdhcyBkYXp1IChDYXR3ZWF6bGUsIDE5LiBKdW4gMjAwMSwgMTM6MDE6MjkpOgp+IyEgcm49QWxib2luIHJ0PTk5Mjk0ODI5NCByZz1zY2htYXJybgp+IyEgdGlkPTk5Mjg4NjE0MQpKYS4gSmEgZGFzIGthbm4gc2VpbiA6KQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogbm9jaCB3YXMgZGF6dSAoR3JpbW1ib3JuLCAxOS4gSnVuIDIwMDEsIDEzOjI1OjI5KToKfiMhIHJuPUNhdHdlYXpsZSBydD05OTI5NDg0ODkgcmc9c2NobWFycm4KfiMhIHRpZD05OTI4ODYxNDEKT2RlciB3ZWlsIER1IGRhbWFscyBzY2hvbiBYIGthbm50ZXN0LiBJY2ggZXJpbm5lcmUgbWljaCBkYSBhbiBzbyBpbmNpZGVudHMgd28KcGFzY2FsIGVoZXIgd2VuaWdlciBaZWl0IGZ1ZXIgZGFzIE1HIGhhdHRlLCB3ZWlsIGlyZ2VuZHNvIFR5cGVuIG1pdCBYCnVlYmVybWFlc3NpZyBSZXNvdXJjZW4gdmVyYnJhdGVuIGhhYmVuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBub2NoIHdhcyBkYXp1IChDYXR3ZWF6bGUsIDE5LiBKdW4gMjAwMSwgMTM6Mzg6MjIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5Mjk0OTkyOSByZz1zY2htYXJybgp+IyEgdGlkPTk5Mjg4NjE0MQpBbHNvIG1laW5lIEdlb3MtIHVuZCBYLVplaXRlbiBsaWVnZW4gemVpdGRpbWVuc2lvbmFsIG1pbmRlc3RlbnMgNSBKYWhyZQphdXNlaW5hbmRlci4gVW5kIGF1c3NlcmRlbSwgd2FzIGthbm4gaWNoIGRhZnVlciB3ZW5uIHh2IGxhZW5nZXIgJ3Ntb290aCd0IGFscwppY2ggd2lsbC4gSW1tZXJoaW4gaXN0IGVpbiB1bmtsb2V0emlnZXMgVC1TaGlydC1CaWxkIGRhYmVpIHJhdXNnZWtvbW1lbiwgaWNoCmZpbmRlIGRhIGthbm4gbWFuIHJ1aGlnIG1hbCBlaW4gcGFhciBQcm96ZW50IGxhZyBpbnZlc3RpZXJlbi4KCllvdXJzIHRydWx5LAogICAgIENhdHdlYXpsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IG5vY2ggd2FzIGRhenUgKEJvaW5nLCAxOS4gSnVuIDIwMDEsIDEzOjM5OjU4KToKfiMhIHJuPUNhdHdlYXpsZSBydD05OTI5NTA3MDIgcmc9c2NobWFycm4KfiMhIHRpZD05OTI4ODYxNDEKSWNoIGdsYXViZSBlciBoYXQgbmljaHQgdm9uIHh2IGdlcmVkZXQgc29uZGVybiB2b24geGJvaW5nIC4uLiA7KQogIEJvaW5nIChvaG5lIFgpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTY2h3ZXJ0bWVpc3RlcnNjaHdlcnQgKEJpZWxlZmVsZCwgMTkuIEp1biAyMDAxLCAxMzo1NjowMCk6Cn4jISBybj1WZWN0b3IgcnQ9OTkyOTUxNzIwIHJnPWJhbGFuY2UKfiMhIHRpZD05ODk5NjY5MTYKV2FzIG1hY2h0IGRlbm4gYml0dGU6CnZvcnNpY2h0IDAKd2lyZiBtdWVuemUgYXVzIGJvZXJzZSB3ZWcKc2NoYXUKc2NobGFmIGVpbgoKLUJpZWxlZmVsZCAobGVpY2h0IHZlcndpcnJ0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogbm9jaCB3YXMgZGF6dSAoQW1hcnlsbGlzLCAxOS4gSnVuIDIwMDEsIDE0OjQyOjMzKToKfiMhIHJuPUdsb2luc29uIHJ0PTk5MjkxMDY2NCByZz1zY2htYXJybgp+IyEgdGlkPTk5Mjg4NjE0MQphbHMgZWhlbWFsaWdlciBBVi1Qcm9ncmFtbWllcmVyIGhhZXR0ZSBpY2ggZGEgYXVjaCBub2NoIG5lbiBBcmNoaXYgYW56dWJpZXRlbjoKZ3V0IDEwIE1CIEdyb2Vzc2UsIGtuYXBwIDEyMDAgdW50ZXJzY2hpZWRsaWNoZSBuZXR0ZSBQQy1WaXJlbiBkcmluIC0gdm9tCmhhcm1sb3NlbiBIZXJic3RsYXViIGJpcyB6dW0gZmllc2VzdGVuIFN0ZWFsdGggaXMgZGEgYWxsZXMgZGFiZWkgPjstKQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQnVnISAoRGllZGVyLCAxOS4gSnVuIDIwMDEsIDE2OjQ4OjI1KToKRm9vYmFyIHNjaGxlcHB0IGVpbmUgcmllc2lnZSBBeHQgaGVyZWluLgpGb29iYXIgZmFlbmd0IGFuIHp1IGRlbmtlbi4KS2xlaW5lIFJhdWNod29lbGtjaGVuIHN0ZWlnZW4gYXVmLi4uCgpLYW5uIGphIHdvaGwgbmljaCBzZWluLi4uIFp3ZXJnIHVuZCBkZW5rZW4uLi4KCkRpZWRlciwgZW1wb2VydCBCdWdtZWxkdW5nIGFiZ2ViZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa3dlci4uLi4gKEh1bW5pLCAyMC4gSnVuIDIwMDEsIDAxOjQxOjQyKToKW2t3ZXJdCkJvZXJzZS4uLi4uLi4uLkp3cyBDYXJ0bWFuLi4uLi4uLi5KLnMgRWxiaW5jaGVuLi4uLi4uSndzIE1vbmQuLi4uLi4uLi4uLkoucwpPc25hYnJ1ZWNrLi4uLi5Kd3MgT2Rhbi4uLi4uLi4uLi4uSi5zIFBvc3RwYWtldC4uLi4uLkkucyBFbGlzZS4uLi4uLi4uLi4uLnoKV2ludGVybXV0ZS4uLi4uaXdzIEp1bmlsaWFuLi4uLi4uLi4ucyBUcmVrLi4uLi4uLi4uLi4uLnogTG9ld2VuemFobi4uLi4uSXdzCkJvZXJzZSwgTW9uZCwgT3NuYWJydWVjaywgUG9zdHBha2V0LCBMb2V3ZW56YWhuLCBUcmVrIHVuZCBXaW50ZXJtdXRlLi4uIHdhcyBlcwpuYWNodHMgYWxsZXMgc28gaW0gTXVkIGdpYnQuLiA7LSkKT2J3b2hsIFdpbnRlcm11dGUgdmVybXV0bGljaCBXaW50ZXJtdWV0emUgaGVpc3NlbiBzb2xsdGUuCgpIdW1uaSwgZnJldXQgc2ljaCBzY2hvbiBhdWYgLFBvc3RwYWtldCBoYXQgc2ljaCBhbHMgQnJpZWZ0cmFlZ2VyIGJld2FlaHJ0Jy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBrd2VyLi4uLiAoU29sbXlyLCAyMC4gSnVuIDIwMDEsIDAxOjQ3OjIxKToKfiMhIHJuPUh1bW5pIHJ0PTk5Mjk5NDEwMiByZz1zY2htYXJybgp+IyEgdGlkPTk5Mjk5NDEwMgpEdSBoYXN0ICdTZWxic3Rtb3JkJywgJ0RlZnJhZycsICdUcmF1bWEnLCAnU3VwZXJtYXJpbycsICdCcm9lc2VsJywgWndpbGxpbmcnLAp1bmQgJ0VsYmluY2hlbicgKmcqIHZlcmdlc3Nlbi4uLgoKU29sKiBlcmdhZW56dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZToga3dlci4uLi4gKERlZnJhZywgMjAuIEp1biAyMDAxLCAwMjozNToxMCk6Cn4jISBybj1Tb2xteXIgcnQ9OTkyOTk0NDQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkyOTk0MTAyCkVoLCBoYXNjaGR1IG1pIGFuZ3Vja3QgPyBIYWJiaXNjaCB6ZWhubWFya3NjaGVpbiBpbSBHc2ljaHQgPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNjaHdlcnRtZWlzdGVyc2Nod2VydCAoR2xvaW5zb24sIDIwLiBKdW4gMjAwMSwgMDg6MjU6NDQpOgp+IyEgcm49U29sbXlyIHJ0PTk5Mjk1MTUwMCByZz1iYWxhbmNlCn4jISB0aWQ9OTg5OTY2OTE2Cj4gLi4uIGltIFN1ZmYgbmFjaCBkZXIgQXJiZWl0IC4uLgoKSGF0dGUgaWNoIGRhcyByaWNodGlnIHZlcnN0YW5kZW4sIER1IGJpc3QgTWl4ZXIgYW4gZWluZXIgQmFyPyBVbmQgaWNoIHNvbGwgZGVuClNhdHogd2lya2xpY2ggc28gZ2xhdWJlbiB3aWUgZXIgZGEgc3RlaHQ/IDopCgpHbG9pbihzb24pIGdyaW5zdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IG5vY2ggd2FzIGRhenUgKEdsb2luc29uLCAyMC4gSnVuIDIwMDEsIDA4OjI5OjU1KToKfiMhIHJuPUFtYXJ5bGxpcyBydD05OTI5NTQ1NTMgcmc9c2NobWFycm4KfiMhIHRpZD05OTI4ODYxNDEKSm8sIGRpZSBTdGVhbHRoLVZpcmVuIHdhZXJlbiBnYW56IG50dC4gSGFzdCBEdSBlcyBhdWNoIGdsZWljaCBkaXNhc3NlbWJsaWVydApwYXJhdCwgZGFubiBzcGFydCBkYXMgQXJiZWl0IDspPwoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU2Nod2VydG1laXN0ZXJzY2h3ZXJ0IChHbG9pbnNvbiwgMjAuIEp1biAyMDAxLCAwODozMDo1NSk6Cn4jISBybj1CaWVsZWZlbGQgcnQ9OTkyOTUxNzYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5OTY2OTE2CkVpbiBOb3RzY2hsYWZlZWluIGZ1ZXIgQW5nc3QtVHJpZ2dlciB1LmEuIGJlaSBTZWhlcnJhZXViZXJuPyBEYW1pdCBtYW4gc2llaHQKd28gbWFuIGdlbGFuZGV0IGlzdD8KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFsdGVybmRlIGthZW1wZmVyIChQaXRmYWxsLCAyMC4gSnVuIDIwMDEsIDExOjM1OjIyKToKR2FsYnJhaXRoIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCkR1IG11c3N0IHVuYmVkaW5ndCBlaW5lIFN0ZWxsZSB6dW0gV2FzY2hlbiBmaW5kZW4hCgoKcGl0KiBkZW5rdCAuIG8gKGljaCB3aWxsIGpldHp0IGdhciBuY2lodCB3aXNzZW4gd2FzIEdhbGJyYWl0aCBnZW1hY2h0IGhhdCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFNjaHdlcnRtZWlzdGVyc2Nod2VydCAoU29sbXlyLCAyMC4gSnVuIDIwMDEsIDE2OjIyOjA2KToKfiMhIHJuPUdsb2luc29uIHJ0PTk5MzAxODM0NCByZz1zY2htYXJybgp+IyEgdGlkPTk4OTk2NjkxNgpJY2ggYmluIEJhcmtlZXBlciB1bmQsIGFlaCwgamEgPyEgOikgU28gZWluIHBhYXIgS3VyemUgdW5kIGVpbiBwYWFyIERyaW5rcwprb21tZW4gc2Nob24gdm9yLCB6dW1hbCBtb3JnZW5kcywgd2VubiBtZWluZSBLdW1wZWxzIHZvcmJlaWtvbW1lbiA6KQoKU29sbXlyLCB2b2VsbGlnIG51ZWNodGVybgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKGFsdGVybmRlIGthZW1wZmVyKSAoUm9sYW5kLCAyMC4gSnVuIDIwMDEsIDE3OjM3OjU1KToKfiMhIHJuPVBpdGZhbGwgcnQ9OTkzMDI5NzIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkzMDI5NzIyCm9laG1tbSBQaXQuIGVuIHN0ZWxsIHdvIG1hbiBzaWNoIHdhc2NoZW4ga2Fubj8Kb2Rlciwgb2VobW1tIGVpbmUgYW0ga29lcnBlciBkaWUgbm9jaCBkZXMgd2FzY2hlbnMgbm9ldGlnIGhhdCA/CgoqKiBtYWwgdm9uIGRlciB6d2VyZ2VuIGFiZ2VzZWhlbiAuLi4gZGVuIHp3ZXJnZSB1bmQgd2FzY2hlbiAuLiBuYWphIDopCgo6bykgcm9sYW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBQcmF0dGNoZXQtWml0YXQgZ2VzdWNodCAoUm9uZGEsIDIwLiBKdW4gMjAwMSwgMTk6MzU6MDgpOgp+IyEgcm49QXRveiBydD05OTMwNDUxMTggcmc9c3VjaGUtYmlldGUKfiMhIHRpZD05OTI5NjA2NzcKLi4uIHVuZCBEZWluIDspKSkgaXN0IGVpbiBkZXV0bGljaGVzIFplaWNoZW4gZnVlciBlaW4gdWVibGVzCkRvcHBlbC0oRHJlaWZhY2g/KS1LaW5uIHVuZCBrZWluZSBOYXNlLCBqYT8KClNDTlIsCgpSb25kYSAqZ2xlaWNoIGluIHNjaG1hcnJuIHNjaG1hcnJuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFNjaHdlcnRtZWlzdGVyc2Nod2VydCAoTml6emwsIDIwLiBKdW4gMjAwMSwgMjA6NTg6NDgpOgp+IyEgcm49R2xvaW5zb24gcnQ9OTkzMDE4NjU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTg5OTY2OTE2Cm1vb29lZWVlcCEhIDopCmJlaSBkZW4gc2VoZXJyYWV1YmVybiBoYXQgbWFuIChob2ZmZW50bGljaDopKSBrZWluZSBtdWVuemUgZGFiZWkgenVtCmZhbGxlbmxhc3NlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFNjaHdlcnRtZWlzdGVyc2Nod2VydCAoRm9vYmFyLCAyMC4gSnVuIDIwMDEsIDIxOjAwOjE0KToKfiMhIHJuPU5penpsIHJ0PTk5MzA2MzUyOCByZz1zY2htYXJybgp+IyEgdGlkPTk4OTk2NjkxNgpPY2gsIHNvbGFuZyBlcyBudXIgX2VpbmVfIE11ZW56ZSBpc3QgO28pCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWxpY2ggaW4gZGVyIEREIChEYXJrd2luZywgMjEuIEp1biAyMDAxLCAwMDoyNjowNSk6CkVpbiBTYWV1cmUtWW5hZ3pldCBiZXNwdWNrdCBEaWNoIG1pdCBFbGFpbmUuCi4uLi5ub3JtYWwvcmllc2lnZW4gS2xhIFNhZXVyZS1ZbmFnemUgOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIFNjaG1ldHRlcm4KRGllIEFuZ3N0IGlzdCBzdGFlcmtlciBhbHMgRHUgLi4uIER1IHdpbGxzdCBudXIgbm9jaCB3ZWcgaGllci4KCkRhcmt3aW5nLCBncmluc2VuZCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlYnVydHN0aXAgPihva29rLG0gc29ycnksIGtvbW10IHp1IHNwYWV0KT9bRD9bRD9bRD9bRD9bRCAoT3JrdG9ldGVyLCAyMS4gSnVuIDIwMDEsIDA5OjQ0OjA2KToKR2VyYWRlIGltIHd3dyBnZWZ1bmRlbiA6ICJQbGlueSB0aGUgRWxkZXIgKEdhaXVzIFBsaW5pdXMgU2VjdW5kdXMsIDIzLTc5IEFEKQpyZWNvbW1lbmRlZFBsaW55IHRoZSBFbGRlciAoR2FpdXMgUGxpbml1cyBTZWN1bmR1cywgMjMtNzkgQUQpIHJlY29tbWVuZGVkOgpwbGFjaW5nIHRoZSByaWdodCBmb290IG9mIGEgaHlhZW5hIG9uIGEgd29tYW4gZHVyaW5nIGNoaWxkYmlydGgiCkRhbWl0IHdhZXJlIGVzIGRhbm4gc2NobmVsbGVyIGdlZ2FuZ2VuLi4uLiAobGF1dCBQbGludXMpLi4uIGFiZXIgZXIgaGF0dGUgYXVjaApub2NoIGFuZGVyZSBUaXBzLi46Cgpwb3dkZXJlZCBzb3cncyBkdW5nIHRvIHJlbGlldmUgbGFib3VyIHBhaW5zLCBvciBnb29zZSBzZW1lbiBtaXhlZCB3aXRoIHdhdGVyCm9yICJ0aGUgbGlxdWlkcyB0aGF0IGZsb3cgZnJvbSBhIHdlYXNlbCdzIHV0ZXJ1cyB0aHJvdWdoIGl0cyBnZW5pdGFscwpuaWNodCB6dSB2ZXJnZXNzZW46IGtpc3NpbmcgdGhlIGhhaXJ5IG11enpsZSBvZiBhIG1vdXNlJyBhcyBhIGN1cmUgZm9yIGNvbGRzCihhbmQgY3VyaW5nIGhlYWRhY2hlcykKCk9ya1QgdHJhdXQgZGFubiBkb2NoIGVoZXIgbW9kZXJuZW4gTWVkaXppbm1hZW5uZXJuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZWxzdGVybiAoQnVkZGhhLCAyMi4gSnVuIDIwMDEsIDIyOjMxOjUzKToKRGllIEVsc3RlciBrbGF1dCBEaXIgZWluZW4gU2NobGVpbWJldXRlbCEKRGllIEVsc3RlciBrbGF1dCBEaXIgZWluZSBMdXBpbmUhCkRpZSBFbHN0ZXIga2xhdXQgZWluZXIgRWxzdGVyIGV0d2FzLgpNYW4gYmVhY2h0ZSBkaWUgbGV0enRlIFplaWxlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaG5lIHdvcnRlLi4gKFNreSwgMjMuIEp1biAyMDAxLCAxNDo1OToxNCk6CkVpbiBGcm9zY2ggdHJhYnQgaGVyZWluLiAgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogb2huZSB3b3J0ZS4uIChPcmt0b2V0ZXIsIDIzLiBKdW4gMjAwMSwgMTU6MjM6MjEpOgp+IyEgcm49U2t5IHJ0PTk5MzMwMTE1NCByZz1zY2htYXJybgp+IyEgdGlkPTk5MzMwMTE1NApPY2hzZW5mcm9zY2ggPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2VobSAoUm9sYW5kLCAyMy4gSnVuIDIwMDEsIDE2OjQ5OjMwKToKfiMhIHJuPUJ1ZGRoYSBydD05OTMyNDE5MTMgcmc9c2NobWFycm4KfiMhIHRpZD05OTMyNDE5MTMKZGllIGVsc3RlciBkZXIgZWxzdGVyIC4uIG9laG0gLi4gaGFiIGljaCBub2NoIG5pZSBiZW1lcmt0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmR5IC4uLiAoQW5hY3Jpb24sIDI0LiBKdW4gMjAwMSwgMDE6MjU6NTYpOgpBbmR5IHNhZ3Q6IEVpbiBLYW5pbmNoZW4sIGdpYiBtaXIgYWxsIERlaW4gR2VsZCwgb2RlciBpY2ggd2VyZGUgRGljaCB0b2V0ZW4hCgpTdXBlciwgQW5keSA6LSkKCmFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoRm9vYmFyLCAyNC4gSnVuIDIwMDEsIDE5OjUyOjUwKToKTWVzc2FnZS1JRDogIDx3azF5b2RrYnozLmZzZi5uYXRodXNpdUBJRC0xMjEwLnVzZXIuZGZuY2lzLmRlPgpTdWJqZWN0OiAgICAgUmU6IE9UOiBTbWlsaWVzLCBXYXM6IFVudGVyaGFsdCBmdWVyIFN0dWRlbnRlbgpGcm9tOiAgICAgICAgQ2hyaXN0b3BoIHZvbiBOYXRodXNpdXMgPHVzZW5ldC1hYnVzZUBnbXguZGU+Ck5ld3Nncm91cHM6ICBkZS5zb2MucmVjaHQubWlzYwpEYXRlOiAgICAgICAgMjEgSnVuIDIwMDEgMTg6NTc6MDQgKzAyMDAKCltGJ3VwMjpwXQoKYmVnaW4gcXVvdGluZywgTWF0dGhpYXMgSG9lbGxlciA8bWhvQGxmcHQucnd0aC1hYWNoZW4uZGU+IHdyb3RlOgo+IGljaCB3cm90ZToKPiAKPj4gIDotKSkpCj4gR2lsdCBkZXIgU3BydWNoIG1pdCBkZW4gbXVsdGlwbGUgZXhjbGFtYXRpb24gbWFya3MgZWlnZW50bGljaCBhdWNoIGZ1ZXIKPiBTbWlsaWVzPyBEYW5uIGhhYiBpY2ggbWljaCBoaWVybWl0IHdvaGwgc2VsYnN0IGVudGxhcnZ0IC4uLiAqc2V1ZnoqCgoiU21pbGllcyB3aXRoIG11bHRpcGxlIHJpZ2h0IHBhcmVudGhlc2VzICwiIGhlIHdlbnQgb24sIHNoYWtpbmcgaGlzIAogaGVhZCwgImFyZSBhIHN1cmUgc2lnbiBvZiBhIGRvdWJsZSBjaGluLiIKCkN2TgoKLS0gClN1Ym1pc3Npb25lbiBmdWVyIGRlLmFsdC5uZXRkaWdlc3QgYml0dGUgYW4KPGRlLWFsdC1uZXRkaWdlc3RAbW9kZXJhdG9ycy5kYW5hLmRlPiBzY2hpY2tlbi4KRGVyIFN1Ym1pdHRlciBpc3QgZnVlciBkZW4gSW5oYWx0IGRlciBFaW5yZWljaHVuZyB2ZXJhbnR3b3J0bGljaCwgCm5pY2h0IGRlciBNb2RlcmF0b3IgZGVyIE5ld3NncnVwcGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKEF0b3osIDI0LiBKdW4gMjAwMSwgMTk6NTY6MjIpOgp+IyEgcm49Rm9vYmFyIHJ0PTk5MzQwNTE3MCByZz1zY2htYXJybgp+IyEgdGlkPTk5MzQwNTE3MApEYSBzaWVodCBtYW4gbWFsLCBkYXNzIElociBhbGxlIGtlaW5lIEFobnVuZyBoYWJ0OgpJY2ggaGF0dGUgbWljaCBudXIgdW0gZWluICkgdmVydGFuLiBFaWdlbnRsaWNoIHNvbGx0ZSBlcyBlaW4gOykpKSkgLT4gR3JpbnNlbgp1ZWJlciBhbGxlIEJhY2tlbiB3ZXJkZW4uIFNvIHdpcmQgbWFuIHZlcmthbm50Li4uCgpHcnVzcywKQXRvegoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VyIGhhdCBkZW5uIG51IGdld29ubmVuPyAoQ29yYWssIDI0LiBKdW4gMjAwMSwgMjA6NTA6MzQpOgpCcm90bmFlbCBoYXQgYXVmIGhlbGRlbmhhZnRlIFdlaXNlIGVpbmUgU2NobGFjaHQgZ2V3b25uZW4uClBpdGZhbGwgd2lyZCB2b24gcmllc2lnZW4gT3JrcyBhdWYgZWluZW0gU2NoaWxkIGhlcmVpbmdldHJhZ2VuLgpEaWUgT3JrcyBncm9laGxlbiA6IEhVTERJR1QgREVNIEdMT1JSRUlDSEVOIFNJRUdFUiBQaXRmYWxsLgpEaWUgT3JrcyB1ZWJlcnJlaWNoZW4gZGVtIFNpZWdlciBlaW5lIEJlbG9obnVuZy4KCkNvcmFrIC0ga2VpbiBLb21tZW50YXIgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZyZXVkLi4uIChHbm9tZSwgMjQuIEp1biAyMDAxLCAyMjoxMToxMyk6CkRlaW4gRnJldW5kIFZhcmRpb24gdGVpbHQgRGlyIG1pdDogaGF0IHdlciBuZW4gMmllIHZvbiBzbyBldHdhIGxldmVsIDEwLCBkZW4KRGVpbiBGcmV1bmQgVmFyZGlvbiB0ZWlsdCBEaXIgbWl0OiBlciBtaXIgbWFsIGViZW4gZnVlciAnZXhwZXJpbWVudGUnCkRlaW4gRnJldW5kIFZhcmRpb24gdGVpbHQgRGlyIG1pdDogYXVzbGVpY2hlbiBrb2VubnRlPyA7LSkKCmphIGdlbmF1LiBtZWluZW4ga3JpZWdzdCBkdSBqZXR6dCBiZXN0aW1tdCBuaWNodC4gOy0pCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGJ1Z2ZpeCAoWm9vaywgMjUuIEp1biAyMDAxLCAxMzoyNjoxOCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTk5MzQ2ODI2NiByZz1kLnZsYW5kCn4jISB0aWQ9OTkzNDY4MjY2CkFjaCBkYXMgd2FyIGVpbiBGZWhsZXI/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmEgc3VwZXIuLi4gKEZvb2JhciwgMjUuIEp1biAyMDAxLCAxNzo0NTowNik6Cj4gbGVnZSBmaXNjaCBpbiB3YWFnZQpEYXMgaXN0IGVpbmUgRmlzY2h3YWFnZSEgVW5kIGtlaW5lIEZpc2Nod2FhZ2UuCkVpbmVuIEZpc2NoIGthbm5zdCBEdSBkb3J0IG5pY2h0IGhpbmVpbnN0ZWNrZW4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKRm9vYmFyIHNhZ3Q6IEhlcnpsaWNoZW4gR2x1ZWNrd3Vuc2NoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmEgc3VwZXIuLi4gKFd1cnplbCwgMjUuIEp1biAyMDAxLCAxODowODo0MCk6Cn4jISBybj1Gb29iYXIgcnQ9OTkzNDgzOTA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkzNDgzOTA2CnZpZWxsZWljaHQgbXVzc3QgZHUgZWluZmFjaCBub2NoIHdhcnRlbiwgYmlzIGRlciBmaXNjaCBhdWNoIGVudHNwcmVjaGVuZApyaWVjaHQ/Cgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUgKERhcmt3aW5nLCAyNi4gSnVuIDIwMDEsIDAyOjQ0OjA4KToKRGFya3dpbmcgZmFlbmd0IERlaW5lbiBBbmdyaWZmIGdlZ2VuIEVsYWluZSBldHdhcyBhYi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPaG5lIFdvcnRlIChHbG9pbnNvbiwgMjYuIEp1biAyMDAxLCAwMzoxMTo1Nik6Cn4jISBybj1EYXJrd2luZyBydD05OTM1MTYyNDggcmc9c2NobWFycm4KfiMhIHRpZD05OTM1MTYyNDgKV2FzIGhhc3QgRHUgZ2VnZW4gYXVzc2Vya29lcnBlcmxpY2hlIEVyZmFocnVuZ2VuIG9obmUgVG9kZXNmb2xnZW4gZWluenV3ZW5kZW4/CgpHbG9pbihzb24pIHp3aW5rZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5hIHN1cGVyLi4uIChSb2xhbmQsIDI2LiBKdW4gMjAwMSwgMTQ6MTY6MTcpOgp+IyEgcm49V3VyemVsIHJ0PTk5MzQ4NTMyMCByZz1zY2htYXJybgp+IyEgdGlkPTk5MzQ4MzkwNgpOb2UgbXVkZHUgbmljaHQgLi4uIGFiZXIgZG9lcyBpcyBuZSB3YWFnZSBkaWUgYXVzc2llaHQgd2llIG5lIHdhc2NobWFzY2hpbmUgLi4KYWxzbyBzb2xsdGVzdCBkdSBkZW4gZmlzY2ggcmVpbnN0ZWNrZW4uCmdlbmF1OiBzdGVja2UgZmlzY2ggaW4gd2FhZ2UKCmJlaSBkZXIgZ2FuemVuIHN0ZWNrZXJlaSBmcmFndCBzaWNoIG51ciBvYiBkZXIgZmlzY2ggZGFubiBnZXdvZ2VuIG9kZXIKZ2V3YXNjaGVuIHdpcmQgIT8KCjopIFJvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0YW5qaXMgdG9kYXkgKFBpdGZhbGwsIDI2LiBKdW4gMjAwMSwgMTU6NTA6MjMpOgogIC4uLi4uZXh0cmEvS25pZXN0b3NzLi4uIFp3aXJpb24uLi4uLi4gOiBTcGlubmUuLi4uLi4uICoqKioqKioqIC0tClNjaG1ldHRlcm4KCnNvdmllbCB6dW0gdGhlbWEgYWJ3ZXJ0dW5nLCB3YXIgZGFzIGVoZXIgbmUgdW1zYXR0bHVuZz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxvY2ggTmVzcyBydWxlcyEgKExpbmZsYXMsIDI3LiBKdW4gMjAwMSwgMTc6MDA6MDApOgpBdXMgZGVuIHlhaG9vLW5ld3M6CgpFaW4gaXRhbGllbmlzY2hlciBGb3JzY2hlciBnbGF1YnQgamV0enQgZGFzIEdlaGVpbW5pcyBoaW50ZXIgZGVtIGJlcnVlY2h0aWd0ZW4KTW9uc3RlciB2b24gTG9jaCBOZXNzIGdlbHVlZnRldCB6dSBoYWJlbi4gIk5lc3NpZSIsIHNvIGRlciBTcGl0em5hbWUgZGVzCkZhYmVsdGllcnMsIGRhcyBpbiBlaW5lbSBzY2hvdHRpc2NoZW4gU2VlIHZlcm11dGV0IHdpcmQsIGR1ZXJmdGUgZGVtbmFjaCBkYXMKc2ltcGxlIFJlc3VsdGF0IGtsZWluZXIgRXJkYmViZW4gc2VpbiwgZGllIGhhbGx1emlub2dlbmUgR2FzZSBmcmVpc2V0emVuLgoKV2VpdGVyZXM6IGh0dHA6Ly9kZS5uZXdzLnlhaG9vLmNvbS8wMTA2MjcvODcvMXEzOTIuaHRtbApNYW4gYWNodGUgYXVjaCBhdWYgZGVuIE5hbWVuIGRlcyBGb3JzY2hlcnMgKEVpbiBVcmFobmUgdm9uIEplYW4tTHVjPykuCgpMaW5mbGFzIGlzdCBmdWVyIGRpZSBMZWdhbGlzaWVydW5nIHZvbiBSZWlzZW4gaW5zIFNjaG90dGlzY2hlIExhbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYT8gTmE/IFJpY2h0aWchIE5ldGRpZ2VzdCBtYWwgd2llZGVyLi4uIChGb29iYXIsIDI3LiBKdW4gMjAwMSwgMjA6Mjk6MjUpOgpGcm9tOiAiSm9hY2hpbSBTY2hlcndlbmsiIDxFbXBlcm9yc0B1bmkuZGU+Ck5ld3Nncm91cHM6IGRlLm9yZy5jY2MKU3ViamVjdDogRGllIEJ1bGxlbiB3YXIgYmVpIG1pcgpEYXRlOiBNb24sIDI1IEp1biAyMDAxIDE3OjA2OjI0ICswMjAwCk1lc3NhZ2UtSUQ6IDw5aDdrNHAkcXRvJDA1JDFAbmV3cy50LW9ubGluZS5jb20+CgpnZXN0ZXJuIHdhciBkaWUgQnVsbGVuIGJlaSBtaXIgdW5kIG1laW4gUEMgYmVzY2hsYWduYWhtdCwgd2VpbCBpY2ggaW4KWmVpdHJhdW0gendpc2NoZW4gMy4xMS4yMDAwIGJpcyAyOC4yLjIwMDEgYXVmIEZyZW1kZW4gSW50ZXJuZXR6dWdhbmcgZ2VzdXJmdApoYWJlLiBadWZhZWxsaWcgaGFiZW4gZGllIEJ1bGxlbiBub2NoIGNhLiAxNSBnZWJyYW5kZSBDRHMgbWl0Z2Vub21tZW4uIEJpbgpnZXJhZGUgbWFsIDE2LCB3YXMgd3VlcmRlIG1pciBub2NoIHBhc3NpZXJlbj8KCgotLSAKU3VibWlzc2lvbmVuIGZ1ZXIgZGUuYWx0Lm5ldGRpZ2VzdCBiaXR0ZSBhbgo8ZGUtYWx0LW5ldGRpZ2VzdEBtb2RlcmF0b3JzLmRhbmEuZGU+IHNjaGlja2VuLgpEZXIgU3VibWl0dGVyIGlzdCBmdWVyIGRlbiBJbmhhbHQgZGVyIEVpbnJlaWNodW5nIHZlcmFudHdvcnRsaWNoLCAKbmljaHQgZGVyIE1vZGVyYXRvciBkZXIgTmV3c2dydXBwZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOYT8gTmE/IFJpY2h0aWchIE5ldGRpZ2VzdCBtYWwgd2llZGVyLi4uIChBbmF0b2wsIDI3LiBKdW4gMjAwMSwgMjE6MDM6MjUpOgp+IyEgcm49Rm9vYmFyIHJ0PTk5MzY2NjU2NSByZz1zY2htYXJybgp+IyEgdGlkPTk5MzY2NjU2NQpGdWVyIGRpZSBzeW50YWt0aXNjaGUgRmFudGFzaWUgYmVpICJnZWJyYW5kZSIgd3VlcmRlIGljaCBpaG0gZWluZW4gT3JkZW4KdmVybGVpaGVuLi4uIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOYT8gTmE/IFJpY2h0aWchIE5ldGRpZ2VzdCBtYWwgd2llZGVyLi4uIChXdXJ6ZWwsIDI4LiBKdW4gMjAwMSwgMTE6NTI6NTApOgp+IyEgcm49QW5hdG9sIHJ0PTk5MzY2ODYwNSByZz1zY2htYXJybgp+IyEgdGlkPTk5MzY2NjU2NQpuaWNodCBhdWZyZWdlbi4gcmVjaHRzY2hyZWlidW5nIGlzdCBvdXQsIHVuZCBzZWl0IGRlciByZWZvcm0gYXVjaCBub2NoCmhhbGJ3ZWdzIGxlZ2FsaXNpZXJ0ZSBsZWdhc3RoZW5pZSB2b3JoZXJyc2NoZW5kLgp3aWUgc2FndGUgbWFsIGVpbiBtaXIgYmVrYW5udGVyIGxlaHJlcjogZXMgZ2lidCB3aWNodGlnZXJlcyBhbHMgZGllCnJlY2h0c2NocmVpYnVuZy4gZXIgaGF0IHp3YXIgcmVjaHQsIGFiZXIgZGFzIGFscyBncnVuZCBmdWVyIGVpbmVuIHZvZWxsaWdlbgp2ZXJ6aWNodCBpbiBkZXIgc2NodWxlIHp1IHNlaGVuIHdpZGVyc3RyZWJ0IG1pciBkYW5uIGRvY2guCm5hY2ggZGVtIG5pY2h0IHJlcHJhZXNlbnRhdGl2ZW4gYmlsZCwgZGFzIHNpY2ggbWlyIHZvbiBkZW4gb3J0aG9ncmFwaGlzY2hlbgprdWVuc3RlbiB1bnNlcmVyIGp1Z2VuZCBiaWV0ZXQsIGthbm4gZXR3YSBkaWUgaGFlbGZ0ZSBrZWluZW4gZmVobGVyZnJlaWVuCnNhdHogc2NocmVpYmVuLiBiZWkgZHJlaSBvZGVyIG1laHIgc2FldHplbiBsaWVnZW4gd2lyIGJlaSBldHdhIDgwICUsIGRpZQpmZWhsZXIgbWFjaGVuLi4uIG5hamEsIGVzIGdpYnQgd2lya2xpY2ggd2ljaHRpZ2VyZXMgYWxzIGt1bHR1ci4KCnd1cnplbCAoYXVjaCBuaWNodCBpbW1lciBmZWhsZXJmcmVpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmE/IE5hPyBSaWNodGlnISBOZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoQW1hcnlsbGlzLCAyOC4gSnVuIDIwMDEsIDExOjU1OjI1KToKfiMhIHJuPVd1cnplbCBydD05OTM3MjE5NzAgcmc9c2NobWFycm4KfiMhIHRpZD05OTM2NjY1NjUKVW5kIHdpZSBzYWd0ZSBlaW4gbWlyIGJla2FubnRlciBMZWhyZXI6Cldlbm4gdW5zZXJlIEp1Z2VuZCBudXIgZGllIEhhZWxmdGUgZGVyIFplaXQsIGRpZSBzaWUgaW0gQmF0dGxlbmV0IHZlcmJyaW5ndCwKbWl0IFNjaHVsYmlsZHVuZyBiencuIExlcm5lbiB2ZXJicmluZ2VuIHd1ZXJkZSwgbXVlc3N0ZSBkZXIgV2VsdCBBbmdzdCB1bmQKQmFuZ2Ugd2VyZGVuIHZvciBkaWVzZXIgIkludGVsbGlnZW56YmVzdGllIERldXRzY2hsYW5kIi4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5hPyBOYT8gUmljaHRpZyEgTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKEZvb2JhciwgMjguIEp1biAyMDAxLCAxMTo1NjoxNSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9OTkzNzIyMTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkzNjY2NTY1CkxhZXNzdCBzaWNoIElNSE8gYXVjaCBndXQgYXVmcyBNdWRkZW4gYW53ZW5kZW4gO28pCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5hPyBOYT8gUmljaHRpZyEgTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKERlZXBibHVlLCAyOC4gSnVuIDIwMDEsIDExOjU3OjA2KToKfiMhIHJuPUZvb2JhciBydD05OTM3MjIxNzUgcmc9c2NobWFycm4KfiMhIHRpZD05OTM2NjY1NjUKYXVjaCB2b3IgZGVtIENvbXB1dGVyemVpdGFsdGVyIHdhciB2b24gZWluZXIgIkludGVsbGlnZW56YmVzdGllIERldXRzY2hsYW5kIgpuaXggenUgc3B1ZXJlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTmE/IE5hPyBSaWNodGlnISBOZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoRm9vYmFyLCAyOC4gSnVuIDIwMDEsIDExOjU3OjQxKToKfiMhIHJuPURlZXBibHVlIHJ0PTk5MzcyMjIyNiByZz1zY2htYXJybgp+IyEgdGlkPTk5MzY2NjU2NQpXYXIgZGEgbmljaHQgRmxvd2VyUG93ZXI/IEtlaW5lIEZyYWdlbiBtZWhyIDpvKQoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBOYT8gTmE/IFJpY2h0aWchIE5ldGRpZ2VzdCBtYWwgd2llZGVyLi4uIChXdXJ6ZWwsIDI4LiBKdW4gMjAwMSwgMTE6NTg6MzUpOgp+IyEgcm49Rm9vYmFyIHJ0PTk5MzcyMjI2MSByZz1zY2htYXJybgp+IyEgdGlkPTk5MzY2NjU2NQp6d2lzY2hlbiBmbG93ZXJwb3dlciB1bmQgY29tcHV0ZXJ6ZWl0YWx0ZXIgbGFnZW4gc2Nob24gbm9jaCBlaW4gcGFhciBqYWhyZS4KCnd1cnplbCAod2FyIGRhYmVpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTmE/IE5hPyBSaWNodGlnISBOZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoRm9vYmFyLCAyOC4gSnVuIDIwMDEsIDExOjU5OjQ3KToKfiMhIHJuPVd1cnplbCBydD05OTM3MjIzMTUgcmc9c2NobWFycm4KfiMhIHRpZD05OTM2NjY1NjUKVW5kIHdhcyB3YXIgZGF6d2lzY2hlbj8KCkZPb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTmE/IE5hPyBSaWNodGlnISBOZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoU29sbXlyLCAyOC4gSnVuIDIwMDEsIDEzOjExOjE3KToKfiMhIHJuPUZvb2JhciBydD05OTM3MjIzODcgcmc9c2NobWFycm4KfiMhIHRpZD05OTM2NjY1NjUKRGEgaGVycnNjaHRlIGRhcyBQdW5raW1wZXJpdW0gYnp3LiBkaWUgR2VnbmVyLCBkaWUga29saCdzY2hlClJlZ2llcnVuZy4KClNvbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOYT8gTmE/IFJpY2h0aWchIE5ldGRpZ2VzdCBtYWwgd2llZGVyLi4uIChEZWVwYmx1ZSwgMjguIEp1biAyMDAxLCAxMzoxMzoyMyk6Cn4jISBybj1Tb2xteXIgcnQ9OTkzNzI2Njc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkzNjY2NTY1ClVuZCBkYSB3dXJkZW4gZGllIFNjaHVlbGVyIHZvbSBTYXVtYWNobiBhYmdlbGVua3Q/IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGFuemVuZGUgTGVpY2hlbj8gKEJvcmxlaWFzLCAyOS4gSnVuIDIwMDEsIDE0OjU3OjM1KToKRGVyIFdvbGYgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRWluZSBMZWljaGUgdGFuenQgd2llIGluIFRyYW5jZSBkdXJjaCBkaWUgR2VnZW5kLgoKSWNoIHd1c3N0ZSBnYXIgbmljaHQsIGRhc3MgaWNoIGVpbiBOZWNyb21hbnQgYmluLi4uIDspCgpCb3JsZWlhcyBkZXIgTmVjcm9sZWhybGluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbHVzdGlnZSBUYW5qaWFuLVphdWJlciAoRGFya3dpbmcsIDI5LiBKdW4gMjAwMSwgMTY6Mjg6MjIpOgpFbGFpbmUga29uemVudHJpZXJ0IHNpY2ggbWl0IGhhbGIgZ2VzY2hsb3NzZW5lbiBBdWdlbi4KRXMgd2lyZCBwbG9ldHpsaWNoIGthZWx0ZXIuCkF1ZiBkZXMgYmxhdWVuIERyYWNoZW4gSGF1dCBiaWxkZW4gc2ljaCBwbG9ldHpsaWNoIEVpc2tyaXN0YWxsZSEKRGVzIGJsYXVlbiBEcmFjaGVuIEhhdXQgYmVrb21tdCBlaW5lbiBCbGF1c3RpY2guCgpTdXBlciA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyBpbiBkaWUgbXBhIChJbWRhLCAyOS4gSnVuIDIwMDEsIDE4OjE4OjA1KToKU29taXQgcGFzc2llcnQuLi4KCkdydXNzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdhcyBpbiBkaWUgbXBhIChTb2xteXIsIDI5LiBKdW4gMjAwMSwgMTg6MjQ6NTEpOgp+IyEgcm49SW1kYSBydD05OTM4MzE0ODUgcmc9c2NobWFycm4KfiMhIHRpZD05OTM4MzE0ODUKSW50ZXJlc3NhbnQuCgpTb2xteXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtsZXJpa2VyIG1hIHdpZWRlciAoU3Ryb2hhbG0sIDI5LiBKdW4gMjAwMSwgMTg6MzQ6NDYpOgpHbG9pbiBzdGVsbHQgbWVudGFsIGVpbmUgVmVyYmluZHVuZyB6dSBLYW5kcmkgZGVyIEdlcmVjaHRlbiBoZXIuIE51biBydWhlbgppaHJlIHNjaHVldHplbmRlbiBIYWVuZGUgdWViZXIgRGlyLgpEdSBzdGlua3N0LCBhbHMgd2FlcnN0IER1IGluIGVpbmUgR3VlbGxlZ3J1YmUgZ2VmYWxsZW4uCgoKSGFlbG1jaGVuLCBtdWZmZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGtsZXJpa2VyIG1hIHdpZWRlciAoR2xvaW4sIDI5LiBKdW4gMjAwMSwgMjM6NTI6NTIpOgp+IyEgcm49U3Ryb2hhbG0gcnQ9OTkzODMyNDg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkzODMyNDg2CkRhIHNpZWh0IG1hbiBlaGVyIG1hbCwgd2FzIGZ1ZXIgR2VzdGFuayBkZXIgS2xlcnVzIGVydHJhZWd0IHVtIGFuZGVyZW4genUKaGVsZmVuLiBEdSBoYXN0IGphIHNjaG9uIHZvcmhlciBGbGllZ2VuIHVtIERpY2ggZ2VzY2hhcnQgYWxzIHdlbm4gRHUgZWluZQpGbGllZ2VuenVja2Vyd2F0dGUgKChjKSBTaHJlaykgZXJ6ZXVnZW4gd29lbGx0ZXN0LgoKR2xvaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFjaCBuZWUgKEVsYmVyZXQsIDMwLiBKdW4gMjAwMSwgMTM6MDM6NTYpOgpEaWVzZXIgYmVzb25kZXJzIGd1dCB2ZXJhcmJlaXRldGV0IFNwZWVyIHNpZWh0IHNvIGF1cywKYWxzIHNlaSBlciB6dSBlaW5lbSBiZXNvbmRlcmVuIFp3ZWNrIGFuZ2VmZXJ0aWd0IHdvcmRlbi4KRXIgdHJhZWd0IGVpbmUgSW5zY2hyaWZ0LgpEdSBmaW5kZXN0IGFuIGVpbmVtIFNwZWVyIGtlaW4gIkluc2NocmlmdCIuCgpFbGJpIGdyaW5zZW5kIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWNoIG5lZSAoRGVlcGJsdWUsIDMwLiBKdW4gMjAwMSwgMTM6MDQ6NDEpOgp+IyEgcm49RWxiZXJldCBydD05OTM4OTkwMzYgcmc9c2NobWFycm4KfiMhIHRpZD05OTM4OTkwMzYKTmVkIHNjaG1hcnJlbiwgcm9ocmhvZXJlbiB1bmQgTWFnaWVyIHp1c2FtbWVucGZlaWZlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogYWNoIG5lZSAoRWxiZXJldCwgMzAuIEp1biAyMDAxLCAxMzowNToxMSk6Cn4jISBybj1EZWVwYmx1ZSBydD05OTM4OTkwODEgcmc9c2NobWFycm4KfiMhIHRpZD05OTM4OTkwMzYKd2llc28gc29sbCBpY2ggUm9jaHVzIHp1c2FtbWVucGZlaWZlbj8KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGFjaCBuZWUgKERlZXBibHVlLCAzMC4gSnVuIDIwMDEsIDEzOjA2OjA5KToKfiMhIHJuPUVsYmVyZXQgcnQ9OTkzODk5MTExIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkzODk5MDM2CndlaWwgZXIgRGlyIGF1ZiBnZW1laW5lIEFydCB1bmQgd2Vpc2UgZGVuIEluaGFsdCBkZXIgSW5zY2hyaWZ0IHZvcmVudGhhZWx0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBhY2ggbmVlIChFbGJlcmV0LCAzMC4gSnVuIDIwMDEsIDEzOjA2OjQzKToKfiMhIHJuPURlZXBibHVlIHJ0PTk5Mzg5OTE2OSByZz1zY2htYXJybgp+IyEgdGlkPTk5Mzg5OTAzNgp2aWVsbGVpY2h0IGJpbiBpY2ggYXVjaCBudXIgenUgZG9vZiBzaWUgenUgZmluZGVuPwoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogYWNoIG5lZSAoRGVlcGJsdWUsIDMwLiBKdW4gMjAwMSwgMTM6MDc6MTMpOgp+IyEgcm49RWxiZXJldCBydD05OTM4OTkyMDMgcmc9c2NobWFycm4KfiMhIHRpZD05OTM4OTkwMzYKRGFubiBwZmVpZiBEaWNoIHNlbGJlciB6dXNhbW1lbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogYWNoIG5lZSAoRWxiZXJldCwgMzAuIEp1biAyMDAxLCAxMzowOTowMyk6Cn4jISBybj1EZWVwYmx1ZSBydD05OTM4OTkyMzMgcmc9c2NobWFycm4KfiMhIHRpZD05OTM4OTkwMzYKRWxiZXJldCBwZmVpZnQgc2ljaCBlaW5lbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogYWNoIG5lZSAoRGVlcGJsdWUsIDMwLiBKdW4gMjAwMSwgMTM6MDk6MjUpOgp+IyEgcm49RWxiZXJldCBydD05OTM4OTkzNDMgcmc9c2NobWFycm4KfiMhIHRpZD05OTM4OTkwMzYKUGZlaWZlIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogYWNoIG5lZSAoRWxiZXJldCwgMzAuIEp1biAyMDAxLCAxMzowOTozMyk6Cn4jISBybj1EZWVwYmx1ZSBydD05OTM4OTkyMzMgcmc9c2NobWFycm4KfiMhIHRpZD05OTM4OTkwMzYKTVVVVVVVVVVVVVVVVVVVVVVISEhISEhISEhISEhISEhISEhISEhISEhICihhdXMgZ2VnZWJlbmVtIEFubGFzcykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGFjaCBuZWUgKFNvbG15ciwgMzAuIEp1biAyMDAxLCAxNDowMjo0OSk6Cn4jISBybj1FbGJlcmV0IHJ0PTk5Mzg5OTM3MyByZz1zY2htYXJybgp+IyEgdGlkPTk5Mzg5OTAzNgpJY2ggZ2xhdWJlLCBzbyBsYW5nc2FtIG11ZXNzZW4gd2lyIGhpZXIgbmUgS3VoYXVzdHJlaWJ1bmcKZHVyY2hmdWVocmVuLiBJY2ggaGFiIDIgZ2VrcmV1enRlIFppZWdlbmhvZXJuZXIgbWl0LCB3ZXIgaGlsZnQ/CgpTb2xteXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhY2ggbmVlIChOaXp6bCwgMzAuIEp1biAyMDAxLCAxNDoxNjo0OSk6Cn4jISBybj1FbGJlcmV0IHJ0PTk5Mzg5OTAzNiByZz1zY2htYXJybgp+IyEgdGlkPTk5Mzg5OTAzNgpnZXJ1ZWNodGV3ZWlzZSBzb2xsIG1hbiBpbnNjaHJpZnRlbiBhdWNoIGxlc2VuIGtvZW5uZW4gOikKaGFiIGljaCBhYmVyIG51ciBtYWwgaXJnZW5kd28gZ2Vob2VydC4uLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhY2ggbmVlIChTb2xteXIsIDMwLiBKdW4gMjAwMSwgMTQ6MTg6MTMpOgp+IyEgcm49Tml6emwgcnQ9OTkzOTAzNDA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkzODk5MDM2CkRhIHN0ZWh0IHdhaHJzY2hlaW5saWNoIGVoIG51ciBDb2NhIENvbGEgZHJhdWYgOikgQWxzbyBrZWluZSBQYW5pay4KClNvbG15cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogYWNoIG5lZSAoRWxiZXJldCwgMzAuIEp1biAyMDAxLCAxNjoyODo1Myk6Cn4jISBybj1Tb2xteXIgcnQ9OTkzOTAzNDkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTkzODk5MDM2CmRlc3dlZ2VuIHN0ZWh0IGRlciBqYSBhdWNoIGluIHNjaG1hcnJuIHVuZCBuaWNodCBpbiBpZGVlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTEwgKE1vcmdvdGgsICAxLiBKdWwgMjAwMSwgMjM6MjE6MDQpOgpEZWVwYmx1ZSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbVG9kOkxhcnNdIEVpbiBPcmsgaGF0IGdlcmFkZSBEZWVwYmx1ZSB1bWdlYnJhY2h0LgoKU29ycnkgOy0oCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR3JhZGUgZ2VmdW5kZW4gOikgUmVjaHQgbmV0dC4uLiAoU29sbXlyLCAgMi4gSnVsIDIwMDEsIDA2OjAzOjE5KToKWnUgZGVtIFRvYXN0IGdpYnQgZXMgZXRsaWNoZSBUaGVvcmllbi4gU28gbGFuZGV0IGphIGVpbmUgS2F0emUgYmVpc3BpZWxzd2Vpc2UKaW1tZXIgYXVmIGRlbiBGdWVzc2VuLCB3YWVocmVuZCBlaW4gQnV0dGVydG9hc3QgaW1tZXIgYXVmIGRlciBCdXR0ZXJzZWl0ZQpsYW5kZXQuIFdlbm4gbWFuIG51biBhYmVyIGRlciBLYXR6ZSBkYXMgQnV0dGVydG9hc3QgbWl0IGRlciBCdXR0ZXJzZWl0ZSBuYWNoCm9iZW4gYXVmIGRlbiBSdWVja2VuIHNjaG5hbGx0LCBzdGVsbHQgc2ljaCBsZWlkZXIgdHJvdHpkZW0gbmljaHQgZGVyIFp1c3RhbmQKZWluLCBkYXNzIGRpZXNlIEtvbnN0cnVrdGlvbiBlaW5mYWNoIHNjaHdlYnQuIAoKU29sKiwgc2V1ZnplbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHcmFkZSBnZWZ1bmRlbiA6KSBSZWNodCBuZXR0Li4uIChWYXJsYXJpb24sICAyLiBKdWwgMjAwMSwgMDY6MDM6NTUpOgp+IyEgcm49U29sbXlyIHJ0PTk5NDA0NjU5OSByZz1zY2htYXJybgp+IyEgdGlkPTk5NDA0NjU5OQp1bmQgd2VubiBtYW4gZGVyIGthdHplIGJ1dHRlciBhdWYgZGVuIHJ1ZWNrZW4gc3RyZWljaHQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdyYWRlIGdlZnVuZGVuIDopIFJlY2h0IG5ldHQuLi4gKFNvbG15ciwgIDIuIEp1bCAyMDAxLCAwNjowNDo0Myk6Cn4jISBybj1WYXJsYXJpb24gcnQ9OTk0MDQ2NjM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0MDQ2NTk5CkhtbSwgZmFsbHMgaWNoIG1pciBkaWVzZSBXb2NoZSAnbmVuIEh1bmQgYW5zY2hhZmZlLCBwcm9iaWVyIGljaApkYXMgbWFsIGF1cy4gQmlzIGRhaGluLCA6Ty4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR3JhZGUgZ2VmdW5kZW4gOikgUmVjaHQgbmV0dC4uLiAoSG91c2Vob2xkZXIsICAyLiBKdWwgMjAwMSwgMDk6NTc6MTkpOgp+IyEgcm49U29sbXlyIHJ0PTk5NDA0NjY4MyByZz1zY2htYXJybgp+IyEgdGlkPTk5NDA0NjU5OQppY2ggc3RyZWljaCBsaWViYSBidXR0ZXIgYXVmIGFsbGUgNiBzZWl0ZW4gZGVzIHRvYXN0cyAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEdyYWRlIGdlZnVuZGVuIDopIFJlY2h0IG5ldHQuLi4gKFZhcmxhcmlvbiwgIDIuIEp1bCAyMDAxLCAxMDowMDoxMik6Cn4jISBybj1Ib3VzZWhvbGRlciBydD05OTQwNjA2Mzkgcmc9c2NobWFycm4KfiMhIHRpZD05OTQwNDY1OTkKZHUgbWVpbnN0LCBkYW5uIGZhZWxsdCBkaWUga2F0emUgYXVmIGplZGVuIGZhbGwgYXVmIGRpZSBmdWVzc2U/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdyYWRlIGdlZnVuZGVuIDopIFJlY2h0IG5ldHQuLi4gKFNjaGxlaWNoZXIsICAyLiBKdWwgMjAwMSwgMTA6NDQ6MjApOgp+IyEgcm49VmFybGFyaW9uIHJ0PTk5NDA0NjYzNSByZz1zY2htYXJybgp+IyEgdGlkPTk5NDA0NjU5OQpXZW5uIG1hbiBlaW5lciBLYXR6ZSBCdXR0ZXIgYXVmIGRlbiBSdWVja2VuIHNjaG1pZXJ0IGlzdCBzaWUgc2F1ZXIgdW5kIHJpZWNodApuYWNoICduZXIgWmVpdCByYW56aWcuLi4gCgpTY2hsZWljaGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3JhZGUgZ2VmdW5kZW4gOikgUmVjaHQgbmV0dC4uLiAoQWhhYiwgIDIuIEp1bCAyMDAxLCAxMToxNzo1Nyk6Cn4jISBybj1Tb2xteXIgcnQ9OTk0MDQ2NTk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0MDQ2NTk5Clp1IGRlbSBUb2FzdCBrb2VubnRlc3QgRHUgbm9jaCBlcndhZWhuZW4sIGRhc3MgZGFzIExhbmRlbiBhdWYgZGVyIEJ1dHRlcnNlaXRlCm51ciBmdWVyIEV1cm9wYSB1bmQgYW5kZXJlIEt1bHR1cmtyZWlzZSBtaXQgaG9jaGJlaW5pZ2VuIFRpc2NoZW4gZ2lsdC4KV2VubiBtYW4gZGVuc2VsYmVuIFRlc3QgaW4gT3N0YXNpZW4gbWFjaHQsIHdvIGRpZSBUaXNjaGUgbWVpc3Qgc2VociBuaWVkcmlnCnNpbmQsIGZhZWxsdCBkZXJzZWxidCBUb2FzdCBfaW1tZXJfIGF1ZiBkaWUgdW5nZWJ1dHRlcnRlIFNlaXRlLgpEYXMgZ2FuemUgaGF0IG9mZmVuYmFyIG51ciB3YXMgbWl0IGRlciBGYWxsaG9laGUgenUgdHVuLi4uCgpBaG9pLAoKQWhhYiAuIG8gTyAoSGF0IHdvaGwgZWluZSBLYXR6ZSBnZW51ZWdlbmQgWmVpdCwgYXVmIGRpZSBGdWVzc2UgenUgZmFsbGVuLCAKICAgICAgICAgICAgd2VubiBtYW4gc2llIHZvbiBlaW5lbSBuaWVkcmlnZW4gamFwYW5pc2NoZW4gVGlzY2ggcnVudGVyd2lyZnQ/KQogICAgIC4gbyBPIChPZGVyIG11c3MgbWFuIGRpZSBkYWZ1ZXIgYnV0dGVybj8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3JhZGUgZ2VmdW5kZW4gOikgUmVjaHQgbmV0dC4uLiAoUGF0cnluLCAgMi4gSnVsIDIwMDEsIDExOjUxOjIyKToKfiMhIHJuPVNvbG15ciBydD05OTQwNDY1OTkgcmc9c2NobWFycm4KfiMhIHRpZD05OTQwNDY1OTkKbmVpbiwgYWJlciBkYXMga29lbm50ZSBndXQgZGFyYW4gbGllZ2VuIGRhc3MgZHUgZGFzIHF1ZW50ZW5zeXN0ZW0Ka2F0emUgKyBidXR0ZXJ0b3N0IG5pY2h0IHZlcnNjaHJhZW5rdCBiZWtvbW1zdC4uLmxldHp0bGljaCBoYXN0IGR1IG51cgplaW4gaGF1ZmVuIG5hcmJlbiBpbSBnZXNpY2h0LCBlaW4gYnV0dGVydG9hc3QgYXVmIGRlciBob3NlIHVuZCBlaW5lCmthdHplIHdlbmlnZXIuCgotLQpwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJyYXVjaCBpY2ggbmUgYnJpbGxlIG9kZXIgd2FzPyAoUGl0ZmFsbCwgIDIuIEp1bCAyMDAxLCAxNToxMjowMCk6ClNvZXJlbiBNb2Vya2VuIHNhZ3Q6IEZ1ZXIgRXVjaCBBYmVudGV1cmVyIGhhYmUgaWNoIGVpbmUgQXJ0IFNjaG5lbGxrdXJzIGluIDUKU29lcmVuIE1vZXJrZW4gc2FndDogTGVrdGlvbmVuIGVyYXJiZWl0ZXQuIEF1Y2ggYXJiZWl0ZSBpY2ggYW4gZWluZW0gQnVjaApTb2VyZW4gTW9lcmtlbiBzYWd0OiBkYXp1LCBhYmVyIGRhcyB3aXJkIHNpY2hlciBub2NoIGV0d2FzIGRhdWVybi4gRHUga2FubnN0ClNvZXJlbiBNb2Vya2VuIHNhZ3Q6IG1pdCA8bGVybmUgbGVrdGlvbj4gZWluZSBMZWt0aW9uIGJlaSBtaXIgbmVobWVuLiBIYXN0IER1ClNvZXJlbiBNb2Vya2VuIHNhZ3Q6IGJlcmVpdHMgZXR3YXMgbWl0IGRlbSBTcGVlciBnZXVlYnQsIGthbm5zdCBEdSBtaWNoIG5hY2gKU29lcmVuIE1vZXJrZW4gc2FndDogPHZlcmdsZWljaD4gZnJhZ2VuLgoKCnBpdCogLWRhcmFuIHp3ZWlmZWxuZCBhYmVudGV1cmVyIHp1IHNlaW4tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3JhZGUgZ2VmdW5kZW4gOikgUmVjaHQgbmV0dC4uLiAoV2VhdGhlcndheCwgIDIuIEp1bCAyMDAxLCAxODozOTo0MSk6Cn4jISBybj1Tb2xteXIgcnQ9OTk0MDQ2NTk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0MDQ2NTk5ClNlaHIgaW50ZXJlc3NhbnRlIEtvbnN0cnVrdGlvbi4gQWJlciBhdWNoLCB3ZW5uIHNpZSBuaWNodCBzY2h3ZWJ0LCB3dWVyZGUgbWljaApzY2h3ZXIgaW50ZXJlc3NpZXJlbiwgYXVmIHdlbGNoZSBTZWl0ZSBzaWUgZGVubiBudW4gZmFlbGx0LgoKV3gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR3JhZGUgZ2VmdW5kZW4gOikgUmVjaHQgbmV0dC4uLiAoQ3VjaHVsbGluLCAgMi4gSnVsIDIwMDEsIDE4OjUxOjQ3KToKfiMhIHJuPVdlYXRoZXJ3YXggcnQ9OTk0MDkxOTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0MDQ2NTk5CkF1ZiBkZW4gS29wZi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBHZWZhaHIgdmVya2FubnQuLi4gKFJlYXBlciwgIDIuIEp1bCAyMDAxLCAyMToxNDoyNyk6CgpUcnZlcy4uLiBrYXVtIGVpbmdlbm9tbWVuIHZvbiBpaHJlbSBrb21pc2NoZW4gTGFnZXIsIHVuZCBkb2NoIGltbWVyIAp3aWVkZXIgbHVzdGlnLi4uIEZMVyBkaWVzbWFsIGV0d2FzIGFuZGVycy4uLiA7KQoKCkhvbmRhbSBVbnRlcmZlbHMgc2FndDogSGFsbG8gU3BlbGxmaXJlISBXZW5uIER1IGlucyBTdHJ1diBlaW50cmV0ZW4gd2lsbHN0CkhvbmRhbSBVbnRlcmZlbHMgc2FndDogdW0gc29taXQgZWluIFRydmVzIHp1IHdlcmRlbiwgc28gYmVnaWIgRGljaCBiaXR0ZSBpbgpIb25kYW0gVW50ZXJmZWxzIHNhZ3Q6IGRhcyBCdWVybyBkZXMgS29tbWFuZGFudGVuIGdsZWljaCBoaWVyIGltIFN1ZWRlbiEKQXVzIFNwZWxsZmlyZXMgRmluZ2Vyc3BpdHplbiBzY2hpZXNzdCBlaW5lIGdld2FsdGlnZSBGZXVlcmxhbnplIGF1ZiAKSG9uZGFtIFVudGVyZmVscy4KICBTcGVsbGZpcmVzIEZldWVybGFuemUgdmVyc2Vua3QgSG9uZGFtIFVudGVyZmVscyBkaWUgSGF1dC4KSG9uZGFtIFVudGVyZmVscyBmYWVsbHQgdG90IHp1IEJvZGVuLgoKClNwaXR6aHV0IFJlYXBlciwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWUgR2VmYWhyIHZlcmthbm50Li4uIChBcmssICAyLiBKdWwgMjAwMSwgMjE6MTg6MjkpOgp+IyEgcm49UmVhcGVyIHJ0PTk5NDEwMTI2NyByZz1zY2htYXJybgp+IyEgdGlkPTk5NDEwMTI2Nwp0eXBvIEZldWVybGFuemVuc3BydWNoOiAuLi52ZXJzZW5fZ190IDxvcGZlcj4gZGllIEhhdXQuCmlkZWUgRmV1ZXJsYW56ZW5zcHJ1Y2g6IEhhYmVuIGFsbGUgTlBDIGVpbmUgSGF1dD8KbWFzc25haG1lIFJlY2h0c2NocmVpYnVuZyBhbndlcmZlbi4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYWRyZWljLi4uc2NobmVsbGVyIGFscyBzZWluIFNjaGF0dGVuIChNb3Jnb3RoLCAgMy4gSnVsIDIwMDEsIDAwOjAzOjIwKToKW2t3ZXJdCiAgICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERpZSwgIDMuIEp1bCAyMDAxLCAwMDowMjowNSAoOTEgVGVpbG5laG1lcikgICAgCgpBbGlhbmEuLi4uLi4uLi4uLnMgR2FzdDEuLi4uLi4uLi4uaS5zIEhvbGdlci4uLi4uLi4uLkoucyBLYW50YXJnby4uLi4uLi5KLnMKLi4uU05JUC4uLgpQYWRyZWljLi4uLi4uLi4uLlIgQ2F0d2VhemxlLi4uLi4uSi5XIFJvY2h1cy4uLi4uLi4uLmkuRQoKUGFkcmVpYyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKSG1tbW1tPwoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWUgR2VmYWhyIHZlcmthbm50Li4uIChCZW5kZWlnaWQsICAzLiBKdWwgMjAwMSwgMTE6MDQ6NDkpOgp+IyEgcm49UmVhcGVyIHJ0PTk5NDEwMTI2NyByZz1zY2htYXJybgp+IyEgdGlkPTk5NDEwMTI2NwpKYSwgZGFzIGlzdCBpbiBkZXIgVGF0IGJlZWluZHJ1Y2tlbmQhIApWb3IgYWxsZW0gZGVyIG1hc3NpdmUgVHlwbyBpbiBkZXIgVHJlZmZlcm1lbGR1bmcuLi4KQWJlciBaYXViaXMgc2luZCB3b2hsIHZvciBhbGxlbSBtaXQgTWV0emVsbiB1bnNjaHVsZGlnZXIgSG9iYml0cyBiZXNjaGFlZnRpZ3QKdW5kIGhhYmVuIGtlaW5lIFplaXQuIHNpY2ggbWl0IGRlciBSZWNodHNjaHJlaWJ1bmcgYXVzZWluYW5kZXJ6dXNldHplbi4KU2NoYWRlLiAKCkJlbmRlaWdpZCwgYmVzdHVlcnp0IHVlYmVyIGRlbiBzY2hhbWxvc2VuIE1vcmQsIHNlbGJzdCB3ZW5uYHMgYmxvc3MgZWluIEhvYmJpdAp3YXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGllIEdlZmFociB2ZXJrYW5udC4uLiAoUGF0cnluLCAgMy4gSnVsIDIwMDEsIDEyOjU5OjQzKToKfiMhIHJuPUJlbmRlaWdpZCBydD05OTQxNTEwODkgcmc9c2NobWFycm4KfiMhIHRpZD05OTQxMDEyNjcKZGFzIHdhciBrZWluZSB6YXViaS1tZWxkdW5nLgp6dW0gZWluZW4ga2FubiBtYW4gZGFzIGRhcmFuIGVyc2VoZW4sIGRhc3MgZWluIHphdWJpIGRhc3MgbWl0IGVpbmVtCnZlcmxldHplIG5pY2h0IGdlc2NoYWZmdCBoYWV0dGUsIHp1bSBhbmRlcmVuIGtvZW5uZW4gbm9jaCBtZWhyIGxldXRlIGxlc2VuCnVuZCBkaWUgemF1YmVyZXJnaWxkZSBpc3Qgc2VpdCBld2lna2VpdGVuIGRyYW4uCgotLQpwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGllIEdlZmFociB2ZXJrYW5udC4uLiAoVmVjdG9yLCAgMy4gSnVsIDIwMDEsIDEzOjI4OjQwKToKfiMhIHJuPUJlbmRlaWdpZCBydD05OTQxNTEwODkgcmc9c2NobWFycm4KfiMhIHRpZD05OTQxMDEyNjcKPiBCZW5kZWlnaWQsIGJlc3R1ZXJ6dCB1ZWJlciBkZW4gc2NoYW1sb3NlbiBNb3JkLCBzZWxic3Qgd2VubmBzIGJsb3NzIGVpbgpIb2JiaXQKPiB3YXIuLi4KCk51biBlaW5lIEdpbGRlLCBkaWUgYW5kZSBHaWxkZW4gbWl0IFRyaXR0ZSBpbiBIaW50ZXJuIHVuZCBTY2hsZWltYXVzd3VlcmZlbiAKaW0gR2VzaWNodCBiZWdydWVzc3QsIHNvbGx0ZSBkb2NoIGVpZ2VudGxpY2ggZWluIEVjaG8gZXJ3YXJ0ZW4gKG11ZXNzZW4pID8gOikKCi0tVmVjdG9yLS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR3JhZGUgZ2VmdW5kZW4gOikgUmVjaHQgbmV0dC4uLiAoTXVhZGliLCAgMy4gSnVsIDIwMDEsIDE1OjMyOjQ0KToKfiMhIHJuPVBhdHJ5biBydD05OTQwNjc0ODIgcmc9c2NobWFycm4KfiMhIHRpZD05OTQwNDY1OTkKd2FydW0gc29sbHRlIGljaCBuZW4gbGVja2VyZW4ga2F0emVuYnV0dGVydG9hc3Qgdm9tIHRpc2NoIGZhbGxlbiBsYXNzZW4/IGRlbgplc3MgaWNoIGxpZWJlciBydWNrenVjayBhdWYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNlaGVyd2VyZHVuZyAoR25vbWUsICAzLiBKdWwgMjAwMSwgMjI6MDM6MjQpOgp+IyEgcm49VmVjdG9yIHJ0PTk5NDE0NDUxNiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTk5NDA4ODYzMQpkdSBoYXN0IGRyZWkgZGF1bWVuPyBlY2h0PwpvZGVyIGhlaXNzdCBkYXMgYXVmIHp3ZXJnaXNjaCB6d2VpPyA6KQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNlaGVyd2VyZHVuZyAoTWF0aXMsICAzLiBKdWwgMjAwMSwgMjI6MDQ6NTQpOgp+IyEgcm49R25vbWUgcnQ9OTk0MTkwNjA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0MDg4NjMxCkphLCBlciBoYXQgMyBEYXVtZW4uIFp1bWluZGVzdCBtZWlzdGVucy4gOm8pCgpNYXRpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWUgR2VmYWhyIHZlcmthbm50Li4uIChBcHN1LCAgNC4gSnVsIDIwMDEsIDAwOjE0OjUyKToKfiMhIHJuPUJlbmRlaWdpZCBydD05OTQxNTEwODkgcmc9c2NobWFycm4KfiMhIHRpZD05OTQxMDEyNjcKKmhhZW5kZSBpbiBkaWUgSHVlZnRlbiBzdGVtbSB1bmQgQmVuZGUgbXVzdGVyKgoKQXBzdSwgZWluemVpbGlnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgYmlzaGVyIHNjaG9lbnN0ZSBFcmdlYm5pcy4uIChaZXBoeXIsICA1LiBKdWwgMjAwMSwgMDA6MzU6MTEpOgouLiBpbiBlaW5lciBSYWdlLVJ1bmRlIDopCgpbPFJhZ2U+XSAqKioqKioqKioqCls8UmFnZT5dIERhcyBTcGllbCBpc3QgYmVlbmRldC4gRW5kZXJnZWJuaXM6Cls8UmFnZT5dIFRpbGx5Li4uLi4uLi4uLiAgMTMgUHVua3RlCls8UmFnZT5dIE9sbGkuLi4uLi4uLi4uLiAgMTMgUHVua3RlCls8UmFnZT5dIFplcGh5ci4uLi4uLi4uLiAgMTIgUHVua3RlCltSYWdlOkVpbiBSYWdlbGFib3JdIFRpbGx5IHVuZCBPbGxpIGhhYmVuIG1pdCAxMyBQdW5rdGVuIGRpZSBSdW5kZSBnZXdvbm5lbi4KCgpDNCwgdHV0IG5vY2ggZWluZW4gRm9yc2NoZXJwdW5rdCBpbiBkZW4gVG9wZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIGFoamEgOikgKFRoYW5vcywgIDUuIEp1bCAyMDAxLCAyMTowNDo0MSk6CgpEYXInemFjaGthIEthY2hrYSBncmVpZnQgRGljaCBtaXQgTXVuZGdlcnVjaCBhbi4KRGVyIEtpZWZlcmtub2NoZW4gZmFlbmd0IGRlbiBTY2hsYWcgZGVzIEdlZ25lcnMgYWIuCgpMdXN0aWcgZnVlciB3YXMgZGVyIGFsbGVzIHRhdWd0IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICBhaGphIDopIChab29rLCAgNS4gSnVsIDIwMDEsIDIxOjA2OjQyKToKfiMhIHJuPVRoYW5vcyBydD05OTQzNTk4ODEgcmc9c2NobWFycm4KfiMhIHRpZD05OTQzNTk4ODEKVW5kPyBXZWxjaGVuIEVyZm9sZyBoYXQgZXIgYmVpIERpciBlcnppZWx0PwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvIEthbm5zIGVuZGVuIDspIChJbWRhLCAgNi4gSnVsIDIwMDEsIDE1OjQ2OjIwKToKSW1kYSBydWZ0OiBWb2xsZSBEZWNrdW5nICEhCltUb2Q6TGFyc10gRWluZSB1ZWJlcmF1cyBib2VzZSB1bmQgZmllc2UgS2FkaXMgaGF0IGdlcmFkZSBJbWRhIHVtZ2VicmFjaHQuCltUb2Q6RWluZSB1ZWJlcmF1cyBib2VzZSB1bmQgZmllc2UgS2FkaXNdIER1IGJpc3QgYW4gYWxsZW0gU2NodWxkLCBJbWRhIQpbVG9kOkltZGFdIEhpbW1lbGhlcnJnb3R0c2FrcmFtZW50ICEKW0JlaWxlaWQ6QmllbGVmZWxkXSBuYSBzb3dhcy4uLgpIb3R6ZW5wbG90eiBmbGllZ3QgaGVyZWluLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBLcmlzdGFsbGRyYWNoZW5dIEhhbGxvPyBIYXQgamVtYW5kIG1laW5lbiBLb2VycGVyCltNb2VyZGVyOkdlaXN0IGVpbmVzIEtyaXN0YWxsZHJhY2hlbl0gZ2VzZWhlbj8gTXVlc3N0ZSBpcmdlbmR3byBiZWkgUGl0ZmFsbApbTW9lcmRlcjpHZWlzdCBlaW5lcyBLcmlzdGFsbGRyYWNoZW5dIGxpZWdlbiEgIAoKSW1kYS4gTWl0IERhbmsgYW4gcGl0ZmFsbCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHUgd2Vpc3N0LCBkYXNzIER1IHp1IHZpZWwgbXVkZGVzdCwgd2Vubi4uLiAoU2lsdmFuYSwgIDYuIEp1bCAyMDAxLCAxNjo1MzowNSk6Ci4uLkR1IGJlaW0gU2llZGxlci1LYXJ0ZW5zcGllbCBlaW5lIFppdGFsZGVsbGUgYmF1ZW4gd2lsbHN0IHVuZCBhbnN0ZWxsZSB2b24KIlphdWJlcmVyIGFid2VzZW5kIiBsaWVzdDogIlphdWJlcmVyIGFid2VydGVuIi4KClNpbHZhbmEgKEJldHJpZWJzYmxpbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRHUgd2Vpc3N0LCBkYXNzIER1IHp1IHZpZWwgbXVkZGVzdCwgd2Vubi4uLiAoRm9vYmFyLCAgNi4gSnVsIDIwMDEsIDE3OjA5OjUwKToKfiMhIHJuPVNpbHZhbmEgcnQ9OTk0NDMxMTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0NDMxMTg1Ci4uLndlbm4gRHUgaW4gZWluZW0gbm9ybWFsZW4gQ2hhdCBuaWNodCBrb21tdW5pemllcmVuIGthbm5zdCwgb2huZSBpbiBqZWRlcgpaZWlsZSAic2FnIiB6dSB0aXBwZW4uCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRHUgd2Vpc3N0LCBkYXNzIER1IHp1IHZpZWwgbXVkZGVzdCwgd2Vubi4uLiAoT3JrdG9ldGVyLCAgNi4gSnVsIDIwMDEsIDE3OjEyOjAwKToKfiMhIHJuPUZvb2JhciBydD05OTQ0MzIxOTAgcmc9c2NobWFycm4KfiMhIHRpZD05OTQ0MzExODUKLi4ud2VubiBEdSBiZWkgIm5vcm1hbGVuIiBUZXh0ZW4gbWl0IHN1Y2hlbiZlcnNldHplbiB1bnQgZHVyY2ggdW5kIGVyc2V0emVuCm11c3N0LgoKT3JrVCwgZGVyIG5pY2h0IGZvcnNjaHQgdW5kIHNvIGV0d2FzIGF1Y2ggZ2FyIG5pY2h0IG5vZXRpZyBoYXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEdSB3ZWlzc3QsIGRhc3MgRHUgenUgdmllbCBtdWRkZXN0LCB3ZW5uLi4uIChWZWN0b3IsICA2LiBKdWwgMjAwMSwgMTc6MTM6MDkpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTk5NDQzMjMyMCByZz1zY2htYXJybgp+IyEgdGlkPTk5NDQzMTE4NQoKLi4ud2VubiBtYW4gYW5zdGF0dCAnbHMnIHNlaW4gYWxpIGZ1ZXIgc2NoYXUgZWludGlwcHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEdSB3ZWlzc3QsIGRhc3MgRHUgenUgdmllbCBtdWRkZXN0LCB3ZW5uLi4uIChQYWRyZWljLCAgNi4gSnVsIDIwMDEsIDE3OjU1OjQyKToKfiMhIHJuPVZlY3RvciBydD05OTQ0MzIzODkgcmc9c2NobWFycm4KfiMhIHRpZD05OTQ0MzExODUKCi4uLiBtYW4gc2ljaCBkb2NoIHRhdHNhZWNobGljaCBHZWRhbmtlbiBkYXJ1ZWJlciBtYWNodCwgd29yYW4gbWFuIGZlc3RzdGVsbGVuCmtvZW5udGUsIGRhc3MgbWFuIHp1dmllbCBtdWRkZXQuCgpQYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEdSB3ZWlzc3QsIGRhc3MgRHUgenUgdmllbCBtdWRkZXN0LCB3ZW5uLi4uIChJc2ksICA2LiBKdWwgMjAwMSwgMTc6NTY6MjApOgp+IyEgcm49UGFkcmVpYyBydD05OTQ0MzQ5NDIgcmc9c2NobWFycm4KfiMhIHRpZD05OTQ0MzExODUKaWNoIGRhY2h0ZSB6dXZpZWwgbXVkZGVuIHNlaSBlaW5lICdjb25kaXRpbyBzaW5lIHF1YSBub24nID8KaXNpIChtb3Vzc2V3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRHUgd2Vpc3N0LCBkYXNzIER1IHp1IHZpZWwgbXVkZGVzdCwgd2Vubi4uLiAoQ3VjaHVsbGluLCAgNi4gSnVsIDIwMDEsIDE4OjM0OjIwKToKfiMhIHJuPVBhZHJlaWMgcnQ9OTk0NDM0OTQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0NDMxMTg1CktlaW5lIEFuZ3N0LCBQYWRyZWljLiBXaXIgd2lzc2VuLCBkYXNzIER1IGF1Y2ggdm9yaGVyIHNjaG9uIHNvIGdld2VzZW4Kc2VpbiBtdXNzdC4gQW4gQUxMRU0ga2FubiBzZWxic3QgZWluIE11ZCBuaWNodCBzY2h1bGQgc2Vpbi4uLiB9Ol4+CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRHUgd2Vpc3N0LCBkYXNzIER1IHp1IHZpZWwgbXVkZGVzdCwgd2Vubi4uLiAoQXBzdSwgIDYuIEp1bCAyMDAxLCAxOTo1Njo1MCk6Cn4jISBybj1WZWN0b3IgcnQ9OTk0NDMyMzg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0NDMxMTg1Cldlbm4gbWFuIGJlaSBqZWRlbSBMYWVjaGVsbiAoYmVpbSB3aXR6ZSwgZW1haWxzIG9kZXIgd2Vpc3Nqb2Z3YXMgbGVzZW4pIGRlbgpLb3BmIGF1ZiBkaWUgbGlua2UgU2NodWx0ZXIgbGVndCAuLi4gOi0pCn5+cgp+fnIKCn5+cgp+fmN1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEdSB3ZWlzc3QsIGRhc3MgRHUgenUgdmllbCBtdWRkZXN0LCB3ZW5uLi4uIChBcHN1LCAgNi4gSnVsIDIwMDEsIDE5OjU4OjA5KToKfiMhIHJuPUFwc3UgcnQ9OTk0NDQyMjEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0NDMxMTg1CmhtbW0gaGFiIGtlaW5lIGFobnVuZyB3aWVzbyBkaWUgfiBkZWFrdGl2aWVydCBpc3Qgc29ycnkKYXBzdSwgc2VpdCBuZXVlc3RlbSBtaXQgem11ZCBmcmVtZGdlaGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnJvc2NocG93ZXIgKFBpdGZhbGwsICA2LiBKdWwgMjAwMSwgMTk6NTg6MTcpOgpLYXJsbGEgendpbmd0IERpY2ggenU6ICdzYWdlIFF1YWFhayEnLgpEdSBzYWd0czogUXVhYWFrIQpEdSBmdWVobHN0IERpY2ggcGxvZXR6bGljaCBzbyBhbmRlcnMgLi4uIFFVQUFBSyEKICAuLlNjaGxhbmdlL1ZvbGxzdHJlY2tlciBEdS4uLi4uLi4uLi4uIDogS2FybGxhLi4uLi4uLiAqKioqKioqKiAtPiBzZWhyIGhhcnQKMTAgJQogIFRvZGVzc3Rvc3MvVm9sbHN0cmVja2VyIER1Li4uLi4uLi4uLi4gOiBLYXJsbGEuLi4uLi4uICoqKioqKioqIC0+IHp1IEJyZWkKS2FybGxhIHZlcmdlaHQgaW4gZWluZXIgRmxhbW1lbmxvaGUuCltNb2VyZGVyOkdlaXN0IEthcmxsYXNdIERhcyB3aXJzdCBEdSBub2NoIGJlcmV1ZW4sIEVpbiBGcm9zY2guCiAgLi4uLm5vcm1hbC9FaXNkb2xjaC4uLi4gWWFsYWRhbi4uLi4uLiA6IFR1dHN6dC4uLi4uLi4gKioqKioqKiogLS0gdmVyZmVobHQKVHV0c3p0IHZlcnNjaHdpbmRldC4KRGVpbmUgU3RhZXJrZSByZWljaHQgZGFmdWVyIG5pY2h0IGF1cy4KRGVpbmUgU3RhZXJrZSByZWljaHQgZGFmdWVyIG5pY2h0IGF1cy4KW01vZXJkZXI6RnJvc2NoIFBpdGZhbGxdIGhlaGUKRHUgdmVyc3BvdHRlc3QgRGVpbiB0b3RlcyBPcGZlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmxpZWJlciBNYWdpZXIuLi4gKE5hY2h0d2luZCwgIDcuIEp1bCAyMDAxLCAxNTo1OTowOSk6CkFyayBzYWd0OiBobSwgbWl0IG1vZXJkZXJtZWxkdW5nZW4gaGFiIGljaCBtaWNoIG5vY2ggbmllIGF1c2VpbmFuZGVyZ2VzZXR6dCwKQXJrIHNhZ3Q6IGljaCBnZWhlIGRhdm9uIGF1cywgZGFzcyBtZWluZSBucGNzIGdld2lubmVuIDopCgpOYWNodHdpbmQsIGdyaW5zZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRHUgd2Vpc3N0LCBkYXNzIER1IHp1IHZpZWwgbXVkZGVzdCwgd2Vubi4uLiAoVG9nLCAgNy4gSnVsIDIwMDEsIDE2OjExOjQ2KToKfiMhIHJuPVZlY3RvciBydD05OTQ0MzIzODkgcmc9c2NobWFycm4KfiMhIHRpZD05OTQ0MzExODUKTG9lc3VuZyBmdWVyIGRhcyAibHMiLVByb2JsZW06IGFsaWFzIGxzIHNjaGF1ICQqIC4uLi4KCgpUb2csIGhhdCBkZW4gYWxpIHRhdHNhZWNobGljaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmFjaGUgaXN0IHN1ZXNzLi4gOikgKEVsYWluZSwgIDcuIEp1bCAyMDAxLCAyMjowNDo1Nik6CltUb2Q6TGFyc10gRWluIEVsYWluZS1ab21iaWUgaGF0IGdlcmFkZSBQaXRmYWxsIHVtZ2VicmFjaHQuIDwyMTo0MjoxND4KW1RvZDpMYXJzXSBFaW4gUGl0ZmFsbC1ab21iaWUgaGF0IGdlcmFkZSBFbGFpbmUgdW1nZWJyYWNodC4gPDIxOjQyOjE4PgoKS2VpbmUgd2VpdGVyZW4gRnJhZ2VuLi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVpbnRvZW5pZ2VzIGdlYmV0IChCdWRkaGEsICA3LiBKdWwgMjAwMSwgMjM6Mzc6MzMpOgpEdSBiZWdpbm5zdCBpbmJydWVuc3RpZyB6dSBiZXRlbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKRHUgYmV0ZXN0IGZ1ZXIgZ3V0ZXMgV2V0dGVyLCBzY2h3YWNoZSBHZWduZXIgdW5kIGVpbiBsZWljaHRlcmVzIExlYmVuIGltCkFsbGdlbWVpbmVuIHNvd2llIGZ1ZXIgZWluIGJhbGRpZ2VzIEVuZGUgZGVyIEdlYmV0c3J1bmRlIGltIEJlc29uZGVyZW4uICAgICAgIApEdSBiZXRlc3QgZnVlciBndXRlcyBXZXR0ZXIsIHNjaHdhY2hlIEdlZ25lciB1bmQgZWluIGxlaWNodGVyZXMgTGViZW4gaW0KQWxsZ2VtZWluZW4gc293aWUgZnVlciBlaW4gYmFsZGlnZXMgRW5kZSBkZXIgR2ViZXRzcnVuZGUgaW0gQmVzb25kZXJlbi4gICAgICAgCkR1IGJldGVzdCBmdWVyIGd1dGVzIFdldHRlciwgc2Nod2FjaGUgR2VnbmVyIHVuZCBlaW4gbGVpY2h0ZXJlcyBMZWJlbiBpbQpBbGxnZW1laW5lbiBzb3dpZSBmdWVyIGVpbiBiYWxkaWdlcyBFbmRlIGRlciBHZWJldHNydW5kZSBpbSBCZXNvbmRlcmVuLiAgICAgICAKRHUgYmV0ZXN0IGZ1ZXIgZ3V0ZXMgV2V0dGVyLCBzY2h3YWNoZSBHZWduZXIgdW5kIGVpbiBsZWljaHRlcmVzIExlYmVuIGltCkFsbGdlbWVpbmVuIHNvd2llIGZ1ZXIgZWluIGJhbGRpZ2VzIEVuZGUgZGVyIEdlYmV0c3J1bmRlIGltIEJlc29uZGVyZW4uICAgICAgIApEdSBiZWVuZGVzdCBEZWluIEdlYmV0IG1pdCBlaW5lbSBlcmxlaWNodGVydGVuICdFbmRsaWNoJyAgICAgICAgICAgICAgICAgICAgICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBlaW50b2VuaWdlcyBnZWJldCAoTGluZmxhcywgIDguIEp1bCAyMDAxLCAwMTozMjoxNik6Cn4jISBybj1CdWRkaGEgcnQ9OTk0NTQxODUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0NTQxODUzCkhtbW0sIGJpc2hlciBkYWNodGUgaWNoIEJ1ZGRoaXN0ZW4gbWVkaXRpZXJlbi4uLgoKTGluZmxhcywgYmV3ZWlzdCBtYWwgd2llZGVyIGRhcyBlciBuZSBXdXJzdCBpc3QuCgpQLlMuIC0+IG11ZWxsIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2VobSAoUm9sYW5kLCAgOC4gSnVsIDIwMDEsIDAzOjA5OjUyKToKV2FzIGlzIGRlciBVbnRlcnNjaGllZCB6d2lzY2hlbiBuZW0gUG9ybm9zdGFyIHVuZCBKZXN1cyA/CgpyYXRldCBlcnN0IG1hIGRhbm4gc2FnIGljaHMgOikKCm1mZyBybwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG9laG0gKEhpZ2h0LCAgOC4gSnVsIDIwMDEsIDAzOjE0OjI5KToKfiMhIHJuPVJvbGFuZCBydD05OTQ1NTQ1OTIgcmc9c2NobWFycm4KfiMhIHRpZD05OTQ1NTQ1OTIKZGVyIGdlc2ljaHRzYXVzZHJ1Y2ggYmVpbSBuYWdlbG4gCgpoaWdodCBpbmdvIGFwZWx0LWNkIGJlc2l0emVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBvZWhtIChSb2xhbmQsICA4LiBKdWwgMjAwMSwgMDQ6MDM6NTEpOgp+IyEgcm49SGlnaHQgcnQ9OTk0NTU0ODY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0NTU0NTkyCm9jaCBtZW5ubwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRHUgd2Vpc3N0LCBkYXNzIER1IHp1IHZpZWwgbXVkZGVzdCwgd2Vubi4uLiAoWm9vaywgIDguIEp1bCAyMDAxLCAxNDowMDo1Nik6Cn4jISBybj1Ub2cgcnQ9OTk0NTE1MTA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0NDMxMTg1Clpvb2sgaGF0IHVudGVyIFVOSVgtU2hlbGxzIGRhcyB1bWdla2VocnRlOiBzY2hhdT1scyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZW5kbGljaCBoYXRzIHdlciBlcmthbm50IChQaXRmYWxsLCAgOC4gSnVsIDIwMDEsIDIwOjQyOjA1KToKW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbCBoYXQgZ2VyYWRlIEFzdWthIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWxdIFBmZmZmZmZmZmZmZnQuLi4uLi4uUExVTVBTIQpbVG9kOkFzdWthXSBIYSwgZXMgZ2lidCBpbW1lciBlaW5lbiBXZWcgdW0gaXJnZW5kd28gcmF1c3p1a29tbWVuLgpbQmVpbGVpZDpQYWldIGFsc28gbWFuIHNvbGx0ZSBhbiBkZXIgU3RlbGxlIHdpcmtsaWNoIGtlaW5lIFplaXR1bmcgbGVzZW4KW0JlaWxlaWQ6Q3JvZnRdIG9kZXIgaXJnZW5kd28gcmVpbnp1a29tbWVuIDstKAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5hY2h0cmFnIDotKSAoQm9pbmcsICA5LiBKdWwgMjAwMSwgMTA6MDA6MjcpOgp+IyEgcm49S2FkaXMgcnQ9OTk0NjI2MDgwIHJnPXBhcnR5Cn4jISB0aWQ9OTk0NjI2MDgwCkROPyBEaW5hcj8gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2Nob24gZ2V3dXN0ID8/Pz8/Pz8gKFJvbGFuZCwgIDkuIEp1bCAyMDAxLCAyMDoyMjowNCk6ClZvbiBvYmVuIGtvbW10IE5hY2hzY2h1YiB2b24gRWxkYXJvbi4KRHUgc3RpbmtzdC4KVm9uIG9iZW4ga29tbXQgTmFjaHNjaHViIHZvbiBFbGFpbmUuClZvbiBvYmVuIGtvbW10IE5hY2hzY2h1YiB2b24gV2ljY2EuClZvbiBvYmVuIGtvbW10IE5hY2hzY2h1YiB2b24gRWxkYXJvbi4KVm9uIG9iZW4ga29tbXQgTmFjaHNjaHViIHZvbiBSYXNwZWwuCkRpciB3aXJkIHNjaGxlY2h0LgpWb24gb2JlbiBrb21tdCBOYWNoc2NodWIgdm9uIEJyb3RuYWVsLgpWb24gb2JlbiBrb21tdCBOYWNoc2NodWIgdm9uIEVsZGFyb24uClZvbiBvYmVuIGtvbW10IE5hY2hzY2h1YiB2b24gUmFzcGVsLgpWb24gb2JlbiBrb21tdCBOYWNoc2NodWIgdm9uIEphc21pbi4KRXMgc3Rpbmt0LgoKClNvIHdhcyBzYWd0IHVucyBkYXMgPwoKTWFlZGNoZW53dWVyc3RjaGVuIHVuZCBKdW5nZW53dWVyc3RjaGVuIGxhbmRlbiBpbiBlaW5lbSBUb3BmIC4uLiAKClNlZWVlZWVlZWhyIHdpc3NlbnN3ZXJ0LCBvZGVyID8gCgoKbWZnIHJvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2Nob24gZ2V3dXN0ID8/Pz8/Pz8gKEthZmYsICA5LiBKdWwgMjAwMSwgMjA6MjI6NTApOgp+IyEgcm49Um9sYW5kIHJ0PTk5NDcwMjkyNCByZz1zY2htYXJybgp+IyEgdGlkPTk5NDcwMjkyNApNaXIgc2FndCBkYXNzLCBkYXNzIGR1IFRvaWxldHRlbnNrcmlwdGUgYmVudXR6dC4uLi4KS2FmZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzY2hvbiBnZXd1c3QgPz8/Pz8/PyAoUm9sYW5kLCAgOS4gSnVsIDIwMDEsIDIwOjI4OjM2KToKfiMhIHJuPUthZmYgcnQ9OTk0NzAyOTcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0NzAyOTI0Cm5hamEgbWFuIGthbm4gYXVjaCByZWluIGtsZXR0ZXJuIC4uLgoKbHVzdGlnZXJ3ZWlzZSAuLiBrb2VubnRlIG1hbiBlcyBqYSBtYWwgbWFjaGVuIGRhY2h0IGljaCA6KQoKbmFqYSAuLi4KClNDSCogYW4gZGllIG1hY2h0IC4uLiBlcyBsZWJlIGRlciBVTlNJTk4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHNjaG9uIGdld3VzdCA/Pz8/Pz8/IChQb2luZywgIDkuIEp1bCAyMDAxLCAyMDozNTozNyk6Cn4jISBybj1Sb2xhbmQgcnQ9OTk0NzAzMzE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0NzAyOTI0ClNpbmQgZGllIEthZW1wZmVyIHNjaG9uIHNvIHdlaXQgZ2VzdW5rZW4gZGFzIHNpZSBzY2hvbiBpbiBkaWUgVG9pbGV0dGVuCmtsZXR0ZXJuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogc2Nob24gZ2V3dXN0ID8/Pz8/Pz8gKEthZmYsICA5LiBKdWwgMjAwMSwgMjA6NDE6MjUpOgp+IyEgcm49UG9pbmcgcnQ9OTk0NzAzNzM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0NzAyOTI0CkdpYnRzIGRhZnVlciB3ZW5pZ3N0ZW5zIEZvcnNjaGVycHVua3RlPwpEYW5uIHd1ZXJkZSBzaWNoIGRpZSBTY2gqKioqKiBqYSBsb2huZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHNjaG9uIGdld3VzdCA/Pz8/Pz8/IChQb2luZywgIDkuIEp1bCAyMDAxLCAyMDo1MDozMCk6Cn4jISBybj1LYWZmIHJ0PTk5NDcwNDA4NSByZz1zY2htYXJybgp+IyEgdGlkPTk5NDcwMjkyNApWbGwuIGlzdCBlcyBqYSBlaW5lIG5ldWUgS2FlbXBmZXItR2lsZGVucXVlc3QgOikKRGllIEdlbmVyYWxzcXVlc3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHNjaG9uIGdld3VzdCA/Pz8/Pz8/IChHbG9pbnNvbiwgMTAuIEp1bCAyMDAxLCAwMjoxNToxNCk6Cn4jISBybj1LYWZmIHJ0PTk5NDcwMjk3MCByZz1zY2htYXJybgp+IyEgdGlkPTk5NDcwMjkyNApEYXMgc2FndCBtaXIgd2llZGVydW0sIGRhc3MgRGlyIGRpZSBuaWNodCBmcmVtZCBzZWluIGtvZW5uZW4gd2VubiBEdSB1bSBkYXMKUmVpbmtsZXR0ZXJuIG5pY2h0IHdlaXNzdCA6KQoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gYmVrb21tdCBtYW4gU2NodXR6aHVlbGxlbiBrYXB1dHQgKERhcmt3aW5nLCAxMC4gSnVsIDIwMDEsIDIyOjM0OjM4KToKRWxlbmRpbCB6aWVodCBkaWUgS2FwdXplIHNlaW5lcyBBc3RyYWxtYW50ZWxzIHp1cnVlY2sgdW5kIHdpcmQgc2ljaHRiYXIuCkVsZW5kaWwgbGFldWZ0IGluIGVpbmUgV2FuZC4KRWxlbmRpbCBsYWV1ZnQgaW4gZWluZSBXYW5kLgpFbGVuZGlsIGxhZXVmdCBpbiBlaW5lIFdhbmQuCkVsZW5kaWwgbGFldWZ0IGluIGVpbmUgV2FuZC4KRWxlbmRpbCBsYWV1ZnQgaW4gZWluZSBXYW5kLgpFbGVuZGlsIGxhZXVmdCBpbiBlaW5lIFdhbmQuCkVsZW5kaWwgbGFldWZ0IGluIGVpbmUgV2FuZC4KRWxlbmRpbCBsYWV1ZnQgaW4gZWluZSBXYW5kLgpFbGVuZGlsIGxhZXVmdCBpbiBlaW5lIFdhbmQuCkRpZSBBdXJhIHVtIEVsZW5kaWwgbG9lc3Qgc2ljaCBsYW5nc2FtIGF1Zi4KIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNvIGJla29tbXQgbWFuIFNjaHV0emh1ZWxsZW4ga2FwdXR0IChQYXRyeW4sIDEwLiBKdWwgMjAwMSwgMjI6MzY6MjcpOgp+IyEgcm49RGFya3dpbmcgcnQ9OTk0Nzk3Mjc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0Nzk3Mjc4CmFyZ2wuLi5ub2NoIGVpbiBidWcsIHdpZSBtYW4gc2NodXR6aHVlbGxlLXVlYmVuIHNjaG5lbGwgZHVyY2hzY3JpcHRlbiBrYW5uLgoKLS0KcGF0cnluLCBuaWNodCB3aXJrbGljaCBhdWYgYnVnLXN1Y2hlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMRXR6dGUgV29ydGUgLi4uIChHbG9pbiwgMTEuIEp1bCAyMDAxLCAwMDo1ODo0MCk6CkRlaW4gRnJldW5kIFBpdGZhbGwgdGVpbHQgRGlyIG1pdDogd2llIHNvIG5lIGR1bW1lIGNoYW90aW4gcHVsdmVydCBtaWNoClszMCBzXQpbVG9kOkxhcnNdIEVpbiBSaXNzd2VzZW4gaGF0IGdlcmFkZSBJZGxlZml4IHVtZ2VicmFjaHQuCltCZWlsZWlkOi4uXSAuLi4KRGVpbiBGcmV1bmQgUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiBoZXkgZGllIG1hY2h0IGRhcyBqYSBkYXVlcm5kCltUb2Q6TGFyc10gS3Vyc2FuYSBoYXQgZ2VyYWRlIFBpdGZhbGwgdW1nZWJyYWNodC4KCkdsb2luIGtpY2hlcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoVmFybGFyaW9uLCAxMS4gSnVsIDIwMDEsIDAwOjU4OjUwKToKRGVpbiBGcmV1bmQgUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiB3aWUgc28gbmUgZHVtbWUgY2hhb3RpbiBwdWx2ZXJ0IG1pY2gKCm51ciB3ZW5pZyBzcGFldGVyOgoKRGVpbiBGcmV1bmQgUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiBoZXkgZGllIG1hY2h0IGRhcyBqYSBkYXVlcm5kCltUb2Q6TGFyc10gS3Vyc2FuYSBoYXQgZ2VyYWRlIFBpdGZhbGwgdW1nZWJyYWNodC4KW1RvZDpQaXRmYWxsXSB3aXIgc2VoZW4gdW5zIHdpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTbyBiZWtvbW10IG1hbiBTY2h1dHpodWVsbGVuIGthcHV0dCAoU2lsdmFuYSwgMTEuIEp1bCAyMDAxLCAxMTo0OTo1Nyk6Cn4jISBybj1QYXRyeW4gcnQ9OTk0Nzk3Mzg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0Nzk3Mjc4CkRlciBHZWRhbmtlIGthbSBtaXIgYXVjaCBncmFkLiBOdXIgYmVpIEVsZW5kaWwgZWhlciB1bndhaHJzY2hlaW5saWNoLiBEZXIgaGF0CmRlbiBTcHJ1Y2ggc2Nob24gbGFlbmdlciBwZXJmZWt0Li4uIDstKQoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTbyBiZWtvbW10IG1hbiBTY2h1dHpodWVsbGVuIGthcHV0dCAoU29sbXlyLCAxMS4gSnVsIDIwMDEsIDExOjUyOjE4KToKfiMhIHJuPVNpbHZhbmEgcnQ9OTk0ODQ0OTk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0Nzk3Mjc4Ck5vc3RhbGdpZSBpc3QgaW4gaG9laGVyZW0gQWx0ZXIgb2VmdGVycyBhbnp1dHJlZmZlbiwgLi4uCgpTb2xteXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQZmxpY2h0YmV3dXNzdCBzb2dhciBpbSBUb2QuLi4gKFNvbG15ciwgMTEuIEp1bCAyMDAxLCAxMzoyMDoxNyk6ClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBJbmZhbnRlcmllLgpJbmZhbnRlcmllIGdlaHQgaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4gdW5kIHNpY2hlcnQgZGFzIEdlbGFlbmRlLgoKU29sbXlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGZsaWNodGJld3Vzc3Qgc29nYXIgaW0gVG9kLi4uIChHbG9pbnNvbiwgMTEuIEp1bCAyMDAxLCAxMzo1MDo1Nyk6Cn4jISBybj1Tb2xteXIgcnQ9OTk0ODUwNDE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0ODUwNDE3CkljaCBuZWhtIGRhcyBhbHMgQW50cmFnIGRhcmF1ZiwgTmV0enRvdGVuIChiZWltIE1ldHplbG4pIGltbWVyIGdsZWljaCB6dSBMYXJzCnp1IHNjaGlja2VuLgoKR2xvaW4oc29uKSwgZGFmdWVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprYWVtcGZlci4uLiAoSW1kYSwgMTEuIEp1bCAyMDAxLCAxNToyODoyOCk6CltUcnZlczpUaHVmaGlyXSBhbHNvIHdlbm4gbm9jaCA1IHphdWJlcmVyIG1pdGtvbW1lbiwgZGFubiBoYXUgaWNoIGRpZSBiZWlkZW4KW1RydmVzOlRodWZoaXJdIG9ya3Mgdm9yIGRlciBzc3AuIDspCltUcnZlczpLcm9ub3NdIGhtLCB2ZXJzdWNodCBoYWIgaWNocyBzY2hvbiAtIGhhYiBpY2ggdHJvdHpkZW0gbmljaCBnZXNjaGFmZnQgCgpJbWRhLiBtdXJtZWx0IGlyZ2VuZHdhcyB2b24gWnVzYW1tZW5oYW5nIDs5CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0ZGlnZXN0ISAoRm9vYmFyLCAxMS4gSnVsIDIwMDEsIDIxOjIzOjI2KToKU3VibWl0dGVycyBOb3QoZSk6IEF1cyBkZXIgU3BpZWxhbmxlaXR1bmcgZnVlciAiRGFzIEhleGFnb24tS2FydGVsbCIKcHVibGlzaGVkIGJ5IFNXSU5HIQoKCgpBZW5kZXJ1bmdlbiBpbiBsZXR6dGVyIE1pbnV0ZQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQpBbnkgS2V5Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCgpGYWxscyBhdWYgSWhyZXIgVGFzdGF0dXIgbm9jaCBrZWluZSAiYW55IGtleSItVGFzdGUgdm9yaGFuZGVuIHNlaW4gc29sbHRlLAprb2VubmVuIFNpZSBkaWUgRnVua3Rpb24gZXJyZWljaGVuLCBpbmRlbSBTaWUgZm9sZ2VuZGUgVGFzdGVuIGdsZWljaHplaXRpZwpnZWRydWVja3QgaGFsdGVuOgoKPExpbmtlIFNUUkc+IDxBTFQ+IDxGMT4gPEVTQz4gPEFMVEdSPiA8UD4gPEk+IDxQQVVTRT4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERlZXBibHVlLCAxMS4gSnVsIDIwMDEsIDIxOjQ1OjI2KToKRGVpbmUgRnJldW5kaW4gQXN1a2EgdGVpbHQgRGlyIG1pdDogaG1tLnVuZCBpcmdlbmRldHdhcyB2ZXJnaWZ0ZXQgbWljaApEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiBhbmRhdWVybmQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKWy4uLl0KW1RvZDpMYXJzXSBEaWUgQmVydWVocnVuZyBkZXMgZmF1bGVuZGVuIEdvdHRlcyBoYXQgZ2VyYWRlIEFzdWthIHVtZ2VicmFjaHQuCltUb2Q6QXN1a2FdIERpZXNlbiBUb2Qgd2lkbWUgaWNoIGRlciBBa3Rpb24gIlN0ZXJiZW4gZnVlciBBcmsiLiAgICAgICAgICAgICAgIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWxiaSB3YXJzISAoUm9uZGEsIDExLiBKdWwgMjAwMSwgMjM6MTA6MzIpOgpHcmFkIGltIFBybzctVGVsZVRleHQgYXVmIFNlaXRlIDEyMzoKClR1ZXJrZWk6IEt1aCBmaWVsIHZvbSBIaW1tZWwKCkluIGRlciBUdWVya2VpIGhhdCBlaW4gS2FmZmVlaGF1c2Jlc3VjaGVyIGVpbmUgdW5nZXdvZWhubGljaGUgQmVrYW5udHNjaGFmdAptaXQgZWluZXIgS1VoIGdlbWFjaHQuIERlciBNYW5uIHNhcyBnZW11ZXRsaWNoIGluIGVpbmVtIEthZmZlZWhhdXMsIGFscwpwbG9ldHpsaWNoIGVpbmUgS3VoIGF1ZiBpbiBzdHVlcnp0ZS4gRXIgYnJhY2ggc2ljaCBlaW4gQmVpbiB1bmQgem9nIHNpY2ggZWluZQpQbGF0end1bmRlIHp1LiBbLi4uXQoKVW5kIGljaCBoYWIgZ2VkYWNodCwgRWxiaSB3YWVyIGluIGRlbiBVU0E/CgpSb25kYSAqbXVodCBsZWljaHQgdmVyaGVkZGVydC4uLioKClBzOiBXYXMgZGVyIGFybWVuIEt1aCBwYXNzaWVydCBpc3QsIGludGVyZXNzaWVydCB3aWVkZXIga2VpbiBTY2h3ZWluIDstKAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVsYmkgd2FycyEgKFRpbGx5LCAxMS4gSnVsIDIwMDEsIDIzOjEzOjAzKToKfiMhIHJuPVJvbmRhIHJ0PTk5NDg4NTgzMiByZz1zY2htYXJybgp+IyEgdGlkPTk5NDg4NTgzMgpIYSwgZGFzIGlzdCBkb2NoIG5peCBnZWdlbiBkaWUgR2VzY2hpY2h0ZSwgZGllIHZvciBlaW5pZ2VuCkphaHJlbiBpbiBkZXIgVWtyYWluZSBwYXNzaWVydCBpc3Q6CgpEYSBmdWhyZW4gZWluaWdlIEZpc2NoZXIgZnJpZWRsaWNoIGF1ZiBkZW4gU2VlIGhpbmF1cyB1bmQKZ2luZ2VuIGlocmVtIFRhZ3dlcmsgbmFjaC4gUGxvZXR6bGljaCBlcnRvZW50ZSBlaW4gbGF1dGVzCk11dXV1dXV1dXV1dXV1dXV1aCEgdW5kIGVpbmUgS3VoIGZpZWwgdm9tIEhpbW1lbCBpbiBkYXMKQm9vdCB1bmQgZXJzY2hsdWcgZGllIEhhZWxmdGUgZGVyIEJlc2F0enVuZy4KCk5hY2hmb3JzY2h1bmdlbiBlcmdhYmVuLCBkYXNzIHNpY2ggYmVpIGVpbmVtIFRyYW5zcG9ydC0KZmx1Z3pldWcgZGllIEx1a2UgZ2VvZWZmbmV0IGhhdHRlIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFbGJpIHdhcnMhIChFbGJlcmV0LCAxMi4gSnVsIDIwMDEsIDAwOjE1OjM2KToKfiMhIHJuPVRpbGx5IHJ0PTk5NDg4NTk4MyByZz1zY2htYXJybgp+IyEgdGlkPTk5NDg4NTgzMgprbGFyIHdhciBpY2ggZGFzIDopCgpFbGJpIG11dXV1dXV1dXV1dXV1dXV1dXV1dWh0IGxhdXQgdW5kIHdpcmZ0IG1pdCBLdWVoZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtLi4uIChGb29iYXIsIDEyLiBKdWwgMjAwMSwgMDE6NTI6MjIpOgpEZXIgU2FuZHRpZ2VyIHRhbnp0IGRlbiBTY2h3ZXJ0dGFlbnplcnRhbnohISEKRGVyIFNhbmR0aWdlciBmYXVjaHQgbGF1dCBhdWYgdW5kIHZlcnNjaHdpbmRldCBkYW5uIGluIGVpbmVyIEdsdXR3b2xrZS4KCkZvb2JhciBrYW5uIGRpZSBHaWxkZSBrYXVtIG5vY2ggZXJ3YXJ0ZW4gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGFkZXJib3JuIGhlaXNzdCBqZXR6dCBCSUVMRUZFTEQhIChIdW1uaSwgMTIuIEp1bCAyMDAxLCAwOTo1NzowNSk6Cn4jISBybj1Sb25kYSBydD05OTQ3ODc5MTggcmc9dHJlZmZlbgp+IyEgdGlkPTk5NDc4NzkxOApCaWVsZWZlbGQgZ2lidHMgZG9jaCBnYXIgbmljaHQuCgpIdW1uaS4gTmljaHQgd2lya2xpY2ggb3JpZ2luZWxsLiBLb25udGUgYWJlciBuaWNodCBhbmRlcnMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBhZGVyYm9ybiBoZWlzc3QgamV0enQgQklFTEVGRUxEISAoQmllbGVmZWxkLCAxMi4gSnVsIDIwMDEsIDA5OjU3OjUxKToKfiMhIHJuPUh1bW5pIHJ0PTk5NDkyNDYyNSByZz1zY2htYXJybgp+IyEgdGlkPTk5NDc4NzkxOApGcmV2bGVyIQoKRWluZmFjaCBzbyBhbiBtZWluZXIgRXhpc3RlbnogenUgendlaWZlbG4uLi4gOy0pCgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3dhcy4uLjogKEJpZWxlZmVsZCwgMTIuIEp1bCAyMDAxLCAxNToyODoxNyk6ClVuZ2VzY2huaXR0ZW46CgpEdSBtdXNzdCBEaWNoIGJlaW5haCB1ZWJlcmdlYmVuLCBhbHMgU29sbXlycyBGdXJ6IGluIERlaW5lIE5hc2Uga3JpZWNodC4KW1RvZDpMYXJzXSBVZWJlbHJpZWNoZW5kZXMgR2FzIGhhdCBnZXJhZGUgVmFybGFyaW9uIHVtZ2VicmFjaHQuCgpVbmQgaWNoIGxlYmUgbm9jaC4uLj8gS25hcHAuLi4KCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzb3dhcy4uLjogKFZhcmxhcmlvbiwgMTIuIEp1bCAyMDAxLCAxNjozNzozNSk6Cn4jISBybj1CaWVsZWZlbGQgcnQ9OTk0OTQ0NDk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0OTQ0NDk3ClZhcmxhcmlvbiBydWZ0OiBQSyEgUEshIFBLISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ29vbGVyIEhhc2UgKEVwcGksIDEyLiBKdWwgMjAwMSwgMTc6MTY6NTApOgpEdSBiaXN0IG51biBpbSAiVWx0cmFrdXJ6Im1vZHVzLgogIC4uLi5LbGVydXMvRG9ubmVyLi4uLi4uIEhhc2UuLi4uLi4uLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9OYWdlemFlaG5lbi4gSGFzZS4uLi4uLi4uLiA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gdmVyZmVobHQKICAuLi4ubm9ybWFsL05hZ2V6YWVobmVuLiBIYXNlLi4uLi4uLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSB2ZXJmZWhsdApFaW4gSGFzZSBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkVpbiBIYXNlIGlzdCBqZXR6dCBoaW50ZXIgRGlyIGhlci4KRWluIEhhc2UgaXN0IGpldHp0IGhpbnRlciBEaXIgaGVyLgoKRXBwaSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IENvb2xlciBIYXNlIChTaWx2YW5hLCAxMi4gSnVsIDIwMDEsIDE3OjI1OjA4KToKfiMhIHJuPUVwcGkgcnQ9OTk0OTUxMDEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0OTUxMDEwCkthbm4gbWlyIGRhcyBtYWwgamVtYW5kIHVlYmVyc2V0emVuPwpJc3QgZXMgY29vbCwgZGFzcyBEaWNoIGRyZWkgSGFzZW4gYW5nZWdyaWZmZW4gaGFiZW4/CgogIFNpbHZhbmEgKHZlcnN0ZWh0IGRlbiBTaW5uIHNvbGNoZXIgQXJ0aWtlbCBuaWNodC4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IENvb2xlciBIYXNlIChBbmFjcmlvbiwgMTIuIEp1bCAyMDAxLCAxNzoyNTo0NSk6Cn4jISBybj1TaWx2YW5hIHJ0PTk5NDk1MTUwOCByZz1zY2htYXJybgp+IyEgdGlkPTk5NDk1MTAxMApFcyBnZWh0IGRhcnVtLCBkYXNzIGRlciBkb25uZXJ0IDstKQoKYW5hYyogLSBhdWZrbGFlcmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQ29vbGVyIEhhc2UgKENyb2Z0LCAxMi4gSnVsIDIwMDEsIDE3OjI2OjM2KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTk5NDk1MTU0NSByZz1zY2htYXJybgp+IyEgdGlkPTk5NDk1MTAxMApJc3QgZWluZSBrbGVpbmUgVW5zY2hvZW5oZWl0IGluIFJpbmdvcnMga2FtcGZtZWxkdW5nZW4udGYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IENvb2xlciBIYXNlIChGb29iYXIsIDEyLiBKdWwgMjAwMSwgMTc6Mjc6MjQpOgp+IyEgcm49Q3JvZnQgcnQ9OTk0OTUxNTk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0OTUxMDEwCklzdCBlcyBuaWNodC4gSWNoIGthbm4gZGEgaW1tZXIgaGVycmxpY2ggZHJ1ZWJlciBsYWNoZW4sIHdlbm4gei5CLiBkaWUgSHlhZW5lbgppbiBWYWxnZXNzYSB2ZXJzdWNoZW4gbWljaCB6dSB2ZXJiYW5uZW4uCgpHcnVzcywKCiAgICAgRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBDb29sZXIgSGFzZSAoVmFybGFyaW9uLCAxMi4gSnVsIDIwMDEsIDE3OjI3OjU2KToKfiMhIHJuPUZvb2JhciBydD05OTQ5NTE2NDQgcmc9c2NobWFycm4KfiMhIHRpZD05OTQ5NTEwMTAKRGFzIHd1ZXJkIGljaCBhdWNoIHZlcnN1Y2hlbiwgd2VubiBzbyBlaW4ga29taXNjaGVyIFp3ZXJnIHBsb2V0emxpY2ggdm9yIG1pcgphdWZ0YXVjaHQuLi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IENvb2xlciBIYXNlIChGb29iYXIsIDEyLiBKdWwgMjAwMSwgMTc6Mjg6MzApOgp+IyEgcm49VmFybGFyaW9uIHJ0PTk5NDk1MTY3NiByZz1zY2htYXJybgp+IyEgdGlkPTk5NDk1MTAxMApJY2ggc2NoYWV0emUsIER1IHd1ZXJkZXN0IGVoZXIgenVtICJjaGFvc2JhbGwgd2Fzc2VyIiBncmVpZmVuIDpvKQoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBDb29sZXIgSGFzZSAoVmFybGFyaW9uLCAxMi4gSnVsIDIwMDEsIDE3OjI4OjUyKToKfiMhIHJuPUZvb2JhciBydD05OTQ5NTE3MTAgcmc9c2NobWFycm4KfiMhIHRpZD05OTQ5NTEwMTAKV2VubiBkYXMgVmVyYmFubmVuIG5pY2h0cyBicmluZ3QgamEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IENvb2xlciBIYXNlIChGb29iYXIsIDEyLiBKdWwgMjAwMSwgMTc6Mjk6MjQpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTk5NDk1MTczMiByZz1zY2htYXJybgp+IyEgdGlkPTk5NDk1MTAxMApEYW5uIGlzdCBlaW5lIEthbXBmcnVuZGUgdm9yYmVpIHVuZCBEdSBiaXN0IHRvdCA6bykKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQ29vbGVyIEhhc2UgKFZhcmxhcmlvbiwgMTIuIEp1bCAyMDAxLCAxNzozMDozNCk6Cn4jISBybj1Gb29iYXIgcnQ9OTk0OTUxNzY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0OTUxMDEwCkRhbm4gbWFjaHQgZGljaCBoYWx0IG1laW4gWml2aSBwbGF0dCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBDb29sZXIgSGFzZSAoR2xvaW5zb24sIDEyLiBKdWwgMjAwMSwgMTg6NDM6MzkpOgp+IyEgcm49U2lsdmFuYSBydD05OTQ5NTE1MDggcmc9c2NobWFycm4KfiMhIHRpZD05OTQ5NTEwMTAKSWNoIHZlcnN1Y2hlIGdhciBuaWNodCBlcnN0IHNvbGNoZSBLYW1wZnN0YXRpc3Rpa2VuIHp1IGRldXRlbi4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMRXR6dGUgV29ydGUgLi4uIChSb2xhbmQsIDEyLiBKdWwgMjAwMSwgMTk6MzA6MDcpOgp+IyEgcm49R2xvaW4gcnQ9OTk0ODA1OTIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0ODA1OTIwCnNvd2FzIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFjR3l2ZXIgKEdyaW1tYm9ybiwgMTIuIEp1bCAyMDAxLCAyMDo1MToyNyk6Cn4jISBvbj1Sb2xhbmQgb3Q9OTk0OTYzNTkxIG9nPW1lZ2FzY2htYXJybgpIYW5kbHVuZzoKCkVpbmUgR3J1cHBlIGFlbmdzdGxpY2hlciBNZW5zY2hlbiBzY2hyZWl0OgogICAgICAgICJIaWxmZSwgZGFzIEF0b21rcmFmdHdlcmshIEVzIHdpcmQgZ2xlaWNoIGV4cGxvZGllcmVuISEhIEggSSBMIEYgRSIKCk1hY0d5dmVyIGFudHdvcnRldDoKICAgICAgICAiS2VpbmUgQW5nc3QhIEljaCBoYWJlIGhpZXIgZGllc2VuIEJpbmRmYWRlbiB1bmQgZGllc2UgS3VsaW1pZW5lISIKCk1hY0d5dmVyIHN0b3B0IGRlbiBHQVUgbWl0IGRlbSBGYWRlbiB1bmQgZGVyIE1pbmUuCkRhbmtlbmQgd2lyZCBNYWNHeXZlciBlaW4gd2VpdGVyZXMgbWFsIGFscyBIZWxkIGdlZmVpZXJ0IQoKVW5kIGRhbm4ga29tbXQgd2llc2VyIHd1bmRlcmJhcmUgYWJzcGFuIC4uLiBtaXQgZGVtIEhlbGRlbiBkZXMgVGFnZXMuCgogKEVpbmUgU2VyaWUgd2llIGF1cyBkZW0gTGViZW4gZ2VzY2huaXR0ZW4pCgpSb2xhbmQga2ljaGVydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hY0d5dmVyIChHcmltbWJvcm4sIDEyLiBKdWwgMjAwMSwgMjA6NTE6MjkpOgp+IyEgb249QW5hdG9sIG90PTk5NDk2MzgxOSBvZz1tZWdhc2NobWFycm4KfiMhIHJuPVJvbGFuZCBydD05OTQ5NjM1OTEgcmc9bWVnYXNjaG1hcnJuCn4jISB0aWQ9OTk0OTYzNTkxCkVyc3RhdW5saWNoLCB3aWV2aWVsZSBGbHVlY2h0aWdrZWl0c2ZlaGxlciBtYW4gaW4gc28gd2VuaWcgVGV4dApicmluZ2VuIGthbm4uCgpBbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWmVsdGVuIChPcmt0b2V0ZXIsIDEyLiBKdWwgMjAwMSwgMjE6MzE6MDkpOgp+IyEgb249T3JrdG9ldGVyIG90PTk5NDk2NjE2MSBvZz1wYXJ0eQp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5NDk2NjExNyByZz1wYXJ0eQp+IyEgdGlkPTk5NDk2NjA3NwpIYXN0ZSBqZXR6dCBuZW4gWmlya3VzLCBRaXRlc3M/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaG9yY2h0YXVmIHNjaGF1dGhlciAoR25vbWUsIDEyLiBKdWwgMjAwMSwgMjE6NTM6MTgpOgp+IyEgcm49SGlnaHQgcnQ9OTk0OTY3NTA3IHJnPXBhcnR5Cn4jISB0aWQ9OTk0OTY3NTA3CndpcmYgZXMgd2VnIDpvKQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaG9yY2h0YXVmIHNjaGF1dGhlciAoSGlnaHQsIDEyLiBKdWwgMjAwMSwgMjE6NTc6MTUpOgp+IyEgcm49R25vbWUgcnQ9OTk0OTY3NTk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0OTY3NTA3Cm1hY2ggaWNoIHdlbm4gZHUgZXMgc2NoYWZzdCBtZWluZSBpc2RuLWthcnRlIHVudGVyIGRlbSBhbmRlcmVuIG9zIHp1bSBsYXVmZW4KenUgYnJpbmdlbgoKQ2hyaXMKCm9laG0gSGlnaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IENvb2xlciBIYXNlIChNdXBmZWwsIDEyLiBKdWwgMjAwMSwgMjM6MTk6MzIpOgp+IyEgcm49Q3JvZnQgcnQ9OTk0OTUxNTk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0OTUxMDEwClJpbmdvciBpc3Qgc2NodWxkISA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNYWNHeXZlciAoU2Nod3ViYmVsLCAxMy4gSnVsIDIwMDEsIDAwOjMyOjEwKToKfiMhIHJuPUdyaW1tYm9ybiBydD05OTQ5NjM4ODcgcmc9c2NobWFycm4KfiMhIHRpZD05OTQ5NjM4ODcKTWFjR3l2ZXIgc2Nob2VuIHVuZCBndXQuLi4uCk51ciBtb2VjaHRlIGljaCBtYWwgd2lzc2VuCldlciBpc3QgZGFzIGVpZ2VudGxpY2g/CgpTY2h3dWJiZWwgKHNlcmllbmhhc3NlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogWmVsdGVuIChFbGJlcmV0LCAxMy4gSnVsIDIwMDEsIDA4OjEzOjA0KToKfiMhIHJuPVdpbGxvdyBydD05OTUwMDQzNzcgcmc9cGFydHkKfiMhIHRpZD05OTQ5NjYwNzcKd2llIG9mdCBoYXN0IGR1IGRlbm4gaW0gR2VsYWVuZGUgZGVuIEF1c3B1ZmYgYWJnZWZhaHJlbj8KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBaZWx0ZW4gKFdpbGxvdywgMTMuIEp1bCAyMDAxLCAwODo0MToxMik6Cn4jISBybj1FbGJlcmV0IHJ0PTk5NTAwNDc4NCByZz1zY2htYXJybgp+IyEgdGlkPTk5NDk2NjA3NwphZWhtLCBkZW4ga2FubiBtYW4gbmljaHQgYWJmYWhyZW4gLSBkZXIgbGllZ3QgaW4gY2EuIDFtIGhvZWhlIHVuZCBiZXN0ZWh0IGF1cwoyIGNhLiA1MGNtIGR1cmNobWVzc2VyIGhhYmVuZGVuIG9lZmZudW5nZW4uLi4gZGEgaXN0IG5paGN0cyBtaXQgYWJmYWhyZW4KV2lsbG93IGhhdCBob2VjaHN0ZW5zIGJhZXVtZSBVTWdlZmFocmVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogWmVsdGVuIChFbGJlcmV0LCAxMy4gSnVsIDIwMDEsIDA4OjQyOjAyKToKfiMhIHJuPVdpbGxvdyBydD05OTUwMDY0NzIgcmc9c2NobWFycm4KfiMhIHRpZD05OTQ5NjYwNzcKaWNoIGhvZXJ0dGUgbnVyLCBkZXIgYXVzcHVmZiBzZWkgZWluZSBoYWV1ZmlnZSBzdG9lcnN0ZWxsZSB1bmQgb2Z0IGVpbiBncnVuZAp3ZXN3ZWdlbiBkZXIgbGVvIHJlcGFyaXVlcnQgd2VyZGVuIG11c3MKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBaZWx0ZW4gKFdpbGxvdywgMTMuIEp1bCAyMDAxLCAwODo0Mzo1MCk6Cn4jISBybj1FbGJlcmV0IHJ0PTk5NTAwNjUyMiByZz1zY2htYXJybgp+IyEgdGlkPTk5NDk2NjA3NwpuYWphLCBkYXMgd29obCBtZWhyIHdlZ2VuIGRlciAyIHNjaHJhdWJlbiwgbWl0IGRlbmVuIGRlciBtb3RvcmJsb2NrCnp1c2FldHpsaWNoIHp1IGRlbiA0ICg/KSBzY2hyYXViZW4gdm9uIHVudGVuIGJlZmVzdGlndCB3dXJkZSAtIGljaCBoYXR0ZSBkYQpuaWUgcHJvYmxlbWUgbWl0IC0gYmVpIG1pciB3YXIgZGllIHR1cm1lbGVrdHJvbmlrIG9lZnRlciBrYXB1dHQgOykKV2lsbG93CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogWmVsdGVuIChHcmltbWJvcm4sIDEzLiBKdWwgMjAwMSwgMDg6NDY6NTYpOgp+IyEgcm49V2lsbG93IHJ0PTk5NTAwNjYzMCByZz1zY2htYXJybgp+IyEgdGlkPTk5NDk2NjA3NwpIb2VydCBzaWNoIGFsbGVzIHNlaHIgdmVydHJhdWVuZXJ3ZWNrZW5kIGFuLiBFaW4gR2x1ZWNrIGRhc3MgZGVyIFdhcnNjaGF1ZXIKUGFrdCB6dXNhbW1lbmdlYnJvY2hlbiBpc3QgYmV2b3IgZXIgZGFzIG1pdGdla3JpZWd0IGhhdC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogWmVsdGVuIChXaWxsb3csIDEzLiBKdWwgMjAwMSwgMDg6NDc6MzgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5NTAwNjgxNiByZz1zY2htYXJybgp+IyEgdGlkPTk5NDk2NjA3NwpXZWlkY2hlbiBXaWxsb3cgbmlja3QgenVzdGltbWVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IFplbHRlbiAoRGVlcGJsdWUsIDEzLiBKdWwgMjAwMSwgMDk6MDQ6NDUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5NTAwNjgxNiByZz1zY2htYXJybgp+IyEgdGlkPTk5NDk2NjA3NwpNZWluc3QgRHUsIGRpZSBJbmZvIGhhZXR0ZSBkZW0gV2Fyc2NoYXVlciBQYWt0IHdhcyBnZW51dHp0PyBEaWUgTGV1dGUgd2FlcmVuCnp3YXIgaW4gcnVzc2lzY2hlbiBQYW56ZXIgYW5nZWtvbW1lbiwgYWJlciBoYWV0dGVuIHZvciBkZW0gZXJzdGVuCkFzeWxhbnRlbmhlaW0gYW5nZWhhbHRlbiB1bmQgd2FlcmVuIGRhIGVpbmdlem9nZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBaZWx0ZW4gKEdyaW1tYm9ybiwgMTMuIEp1bCAyMDAxLCAwOToxODowMyk6Cn4jISBybj1EZWVwYmx1ZSBydD05OTUwMDc4ODUgcmc9c2NobWFycm4KfiMhIHRpZD05OTQ5NjYwNzcKRGVyIGdpbmcgc286CiJEaWUgUnVzc2VuIGJlaGF1cHRlbiBpbiAyIFN0dW5kZW4gZHVyY2ggZGllIEJSRCBkdXJjaHp1a29tbWVuLiBEYXMgZ2xhdWJlIGljaApuaWNodDogc3BhZXRlc3RlbnMgYW0gS2FtZW5lciBLcmV1eiBoYWVuZ2VuIHNpZSBmZXN0LiIKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZWNoIChHcmltbWJvcm4sIDEzLiBKdWwgMjAwMSwgMTE6MTY6MzYpOgp+IyEgb249R2xvaW5zb24gb3Q9OTk1MDE1NzA5IG9nPW1hZ2llci51cmxhdWIKfiMhIHJuPUNhdHdlYXpsZSBydD05OTUwMTMwNzYgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTk5NTAxMjI5NwpFbmRsaWNoIGtvZW5uZW4gd2lyIGJlbGllYmlnZSBSdWJyaWtlbiBtaXQgYmVsaWViaWcgc2lubmZyZWllbiBBcnRpa2VsbgpmdWVsbGVuIG9obmUgZGFzcyBkaWVzZSB2ZXJsZWd0IHdlcmRlbiAuLi4KCkdsb2luKHNvbiksIGZ1ZWxsdCBsb3MKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdlY2ggKEdyaW1tYm9ybiwgMTMuIEp1bCAyMDAxLCAxMToxNjo0OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTk1MDE1Nzk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk1MDEyMjk3CkRlciBtdXNzdGUgbmF0dWVybGljaCB2ZXJsZWd0IHdlcmRlbi4uLiA7LSkKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2VjaCAoR2xvaW5zb24sIDEzLiBKdWwgMjAwMSwgMTE6MTk6NDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5NTAxNTgwOCByZz1zY2htYXJybgp+IyEgdGlkPTk5NTAxMjI5NwpHZWggZW5kbGljaCBpbiBVcmxhdWIhCgpHbG9pbihzb24pLCBqYW1tZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXZWNoIChHcmltbWJvcm4sIDEzLiBKdWwgMjAwMSwgMTE6MjE6NTcpOgp+IyEgcm49R2xvaW5zb24gcnQ9OTk1MDE1OTg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk1MDEyMjk3CkVyc3QgTW9udGFnIG1pdHRhZy4gR2FueiBzbyBzY2huZWxsIGdlaHQgZGFzIGhhbHQgbmljaHQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogV2VjaCAoU29sbXlyLCAxMy4gSnVsIDIwMDEsIDExOjM5OjIyKToKfiMhIHJuPUdyaW1tYm9ybiBydD05OTUwMTYxMTcgcmc9c2NobWFycm4KfiMhIHRpZD05OTUwMTIyOTcKRGFzIGlzdCBqYSBmYXN0IHNvIHNjaGxpbW0sIHdpZSBkYXMgV2FydGVuIGJlaSBkZXIgRDJFeHBhbnNpb24gOikKV2FydW0gcG9zdGVzdCBEdSBlaWdlbnRsaWNoIGhldXRlIHNjaG9uLCB3ZW5uIER1IGVyc3QgTW9udGFnIHdlZwpiaXN0PyBJbSBNdWQgZ2lidCBlcyBkb2NoIGtlaW5lIDUgVGFnZSBXb2NoZSwgbWVpbiBMaWViZXIsIGRhcyBSTApzY2hlaW50IHNjaG9uICBpbiB3ZWl0ZSBGZXJuZSBnZXJ1ZWNrdCB6dSBzZWluLi4uCgpTb2wqIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXZWNoIChHcmltbWJvcm4sIDEzLiBKdWwgMjAwMSwgMTE6NTA6NTApOgp+IyEgcm49U29sbXlyIHJ0PTk5NTAxNzE2MiByZz1zY2htYXJybgp+IyEgdGlkPTk5NTAxMjI5NwpJY2ggZ29lbm5lIGRlbiBMZXV0ZW4gaGFsdCBkaWUgVm9yZnJldWRlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBXZWNoIChBbmFjcmlvbiwgMTMuIEp1bCAyMDAxLCAxMTo1MToxNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTk1MDE3ODUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk1MDEyMjk3CkdpYnRzIG5lIFBhcnR5ID8KCmFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBXZWNoIChHcmltbWJvcm4sIDEzLiBKdWwgMjAwMSwgMTI6MDE6MjYpOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTk1MDE3ODc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk1MDEyMjk3ClBhcnRpZXMgZ2lidHMgaW1tZXIgd2llZGVyLCBzb3dlaXQgaWNoIHdlaXNzLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYW5uIGdpYnRzIGVuZGxpY2ggZGllIEZhbW91cyBGaXJzdCBXb3JkcyA/IChWYW5pciwgMTMuIEp1bCAyMDAxLCAxNjozNDowMik6CkdlcmFkZSBnZXNlaGVuOgoKW1RvZDpMYXJzXSBFaW4gU2Nod2VpbmVodW5kIGhhdCBnZXJhZGUgUGl0ZmFsbCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTY2h3ZWluZWh1bmRdIEtSUlJSUgpbVG9kOlBpdGZhbGxdIHdpciBzZWhlbiB1bnMgd2llZGVyClBpdGZhbGwgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEgICAgICAgICAgICAgICAgIAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBaZWx0ZW4gKEh1bW5pLCAxNC4gSnVsIDIwMDEsIDAyOjM4OjA2KToKfiMhIG9uPUh1bW5pIG90PTk5NTA3MDk3NCBvZz1wYXJ0eQp+IyEgcm49V2lsbG93IHJ0PTk5NTAwNDM3NyByZz1wYXJ0eQp+IyEgdGlkPTk5NDk2NjA3NwpJY2ggYmluIGRlbm4gZG9jaCBmcm9oLCBkYXNzIGljaCBiZWkgZGVtIEJ1bGxpIGluIG1laW5lciBaaXZpLVN0ZWxsZSBkYXMKRmVuc3RlciBiZWltIEZhaHJlbiBuYWNoIGJlbGllYmVuIGF1Zi0gdW5kIHp1bWFjaGVuIGtvbm50ZS4uLi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogWmVsdGVuIChSb2xhbmQsIDE0LiBKdWwgMjAwMSwgMTU6MjA6MzgpOgp+IyEgcm49SHVtbmkgcnQ9OTk1MDcxMDg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0OTY2MDc3CmhpZXMgZXMgbmljaHQgbnVyIGJpcyB6dW0gVDQgYnVsbGkgLS0tIGRhcyB3YXMgamV0enQgcnVta3JhdWNodCBpcyBkb2NoIG4KZWluZmFjaGVyIHQ1IC4uLi4gCnNvbGx0ZSBuaWNodCBtZWluZW4gZGFzIGVzIG5vY2ggYnVsbGkgaGVpc3QgPz8/Pz8gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogWmVsdGVuIChIdW1uaSwgMTQuIEp1bCAyMDAxLCAxNzozMTo0MCk6Cn4jISBybj1Sb2xhbmQgcnQ9OTk1MTE2ODM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0OTY2MDc3CklyZ2VuZHdpZSB2ZXJzdGVoZSBpY2ggZGVpbmVuIEFydGlrZWwgbmljaHQuCgpFaW4gS2xlaW50cmFuc3BvcnRlciwgdWVibGljaGVyd2Vpc2UgZnVlciBjYS4gOCBQZXJzb25lbiBvZGVyIG1pdCBlaW5lbSBmdWVyCkF1dG9zIGdyb3NzZW4gdW5kIGZ1ZXIgTGFzdHdhZ2VuIGtsZWluZW4gTGFkZXJhdW0sIGZhaHJiYXIgbWl0IGVpbmVtCkZ1ZWhyZXJzY2hlaW4gS2xhc3NlIDMgKHdhcyBkYXMgaW4gRXVyb3BhIGhldXR6dXRhZ2UgaXN0IHdlaXNzIGljaCBuaWNodCkKbmVubmUgaWNoIEJ1bGxpLgoKVW5kIGljaCB3YXIgVDIuIEljaCBkdXJmdGUgbmljaHQgaW5zIEhvY2hnZWJpcmdlIHVuZCBpY2ggZHVyZnRlIGtlaW5lCkFCQy1TY2h1dHptYXNzbmFobWVuIG1pdG1hY2hlbi4gV2FyIGJlaWRlcyBmdWVyIG1laW5lbiBKb2IgZWdhbC4gQWJlciBpY2gKZHVyZnRlIEJ1bGxpIGZhaHJlbi4KCkh1bW5pClBTOiBBY2ggamEsIGljaCBsZXNlIG5vY2ggUGVycnkgUmhvZGFuLiBEYSBnaWJ0IGVzIGF1Y2ggZWluZW4gQnVsbHksIGRhcyBpc3QKZWluIFNwaXR6bmFtZSBmdWVyIFJlZ2luYWxkIEJ1bGwuIERhIGRlciBiZWkgZGVyIEFpciBGb3JjZSB3YXIgd2FyIGRlciBhYmVyCmJlc3RpbW10IFQxLgpQUFM6IFVuZCBkaWUgQnVsbHlwYXJhZGUgZ2lidHMgYXVjaCBub2NoLCBkaWUga29tbXQgaW0gRmVybnNlaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IFplbHRlbiAoU29sbXlyLCAxNS4gSnVsIDIwMDEsIDE4OjE5OjMyKToKfiMhIHJuPUh1bW5pIHJ0PTk5NTEyNDcwMCByZz1zY2htYXJybgp+IyEgdGlkPTk5NDk2NjA3NwpEZXIgaXN0IGdyb3R0ZW5zY2hsZWNodCwgcnVuZGV0IGRpZSBnYW56ZSBTYWNoZSBhYmVyIG5vY2ggbWFsIGFiIDopCgpTY29wZSBsYWVzc3QgZGVuIFBhbnplciBmYWxsZW4uCgpTb2xteXIsIHNpY2ggZXJpbm5lcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGluIGRlbiBLYXRhcyAoR29yb2csIDE1LiBKdWwgMjAwMSwgMjA6NDY6MTIpOgpEdSB6ZXJzdGFldWJzdCBkaWUgTXVtaWUuCkRpZSBNdW1pZSB6ZXJmYWVsbHQgenUgU3RhdWIuCgpBbHNvIGRvcHBlbHQgbXVzcyBkYXMgZGEgbmljaHQgc3RlaG4sIGFiZXIgcGFzc2VuZCBpcyBlcyBzY2hvbiAoOwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXRkaWdlc3QgKG1hbCB3aWVkZXIpIChWYW5pb24sIDE1LiBKdWwgMjAwMSwgMjM6NTE6MTIpOgp+IyEgcm49TW9udGFudXMgcnQ9OTk1MjMzNDYxIHJnPXdpdHplCn4jISB0aWQ9OTk1MjMzMDc3CkVyd2FydGUgZG9jaCBuaWNoIGluIGplZGVtIFBvc3RpbmcgZWluZW4gS3JldXp6dWcuCgpJY2ggZmFuZCBkYXMgcG9zdGluZyBlaW5mYWNoIG51ciB3aXR6aWcuIFNvbnN0IG5peC4KClYqIGlzdCBpcnJpdGllcnQsIGFiZXIgbmljaCB3aXJrbGljaCB1ZWJlcnJhc2NodC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogWmVsdGVuIChJbWRhLCAxNi4gSnVsIDIwMDEsIDAwOjA4OjI1KToKfiMhIHJuPURlZXBibHVlIHJ0PTk5NTAwNzg4NSByZz1zY2htYXJybgp+IyEgdGlkPTk5NDk2NjA3NwpUNSA/IGhhYmJpY2ggZGEgd2FzIHZlcnBhc3N0ID8KV2FzIGltIG1vbWVudCBydW1mYWVociBpcyBkZXIgVDQKRGFzIGVja2lnZSBWb3JnYWVuZ2VybW9kZWxsIHdhciBkZXIgVDMKRGVyIHJ1bmRlIGRhdm9yIHNhZ2UgZGVyIFQyCkRlciBtaXQgZGVyIGdldGVpbHRlbiBGcm9udHNjaGVpYmUgd2FyIGRlciBUMQoKVW5kIEJ1bGx5IGhlaXNzZW4gc2UgaW0gU3ByYWNoZ2VicmF1Y2ggYWxsZS4uLiBPYndvaGwgZGVyIFQ0IHp1Z2VnZWJlbmVybWFzc2UKbmljaCBnYW56IHp1bSBCaWxkIGVpbmVzIEJ1bGx5cyBwYXNzdC4uLgoKT2ZmaXppZWwgaGllc3NlbiBzaWUgc28gd29obCBhdXMgbWFya2VucmVjaHRsaWNoZW4gR3J1ZW5kZW4gbmllLgoKT2RlciBoYWJiaWNoIGRpZSBFaW5mdWVocnVuZyBkZXMgVDUgdmVycGFzc3QgOzkKCkdydXNzCgpJbWRhLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNUyBTdGFUaSAxNy4wNy4wMSAoVmFybGFyaW9uLCAxNi4gSnVsIDIwMDEsIDE2OjA0OjI1KToKfiMhIHJuPUZvb2JhciBydD05OTUyOTIyMjcgcmc9c2NobWFycm4KfiMhIHRpZD05OTUyOTIyMjcKQWVobSwgaWNoIGhvZmZlLCBkYXMgaXN0IGpldHp0IGtlaW4gU2NobWFycm4/IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXJ3aXNjaHQgKFB1aywgMTYuIEp1bCAyMDAxLCAxNjozNDozMSk6CgpFaW5lIFN0aW1tZSBzYWd0OiBCb2VzZXIgQ2hhb3QhIEpldHp0IG5vY2ggbGViZW5kaWcsIGJhbGQgc2Nob24gdG90IQoKRGVyIFNjaGF0dGVuIHNhZ3Q6ICJTQUcsIFdBUyBNQUNIU1QgRFUgRUlHRU5UTElDSCBESUUgR0FOWkUgWkVJVCwgUFVLPyIKRGVyIFNjaGF0dGVuIHNhZ3Q6ICJSVU1TVEVIRU4gVU5EIERJQ0ggVU1CUklOR0VOIExBU1NFTj8gSElFUiBJU1QgREVJTiIKRGVyIFNjaGF0dGVuIHNhZ3Q6ICJLT0VSUEVSLiIKCkVyIGhhdCBtaWNoIGR1cmNoc2NoYXV0IDopCgpQdWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBaZWx0ZW4gKFJvbGFuZCwgMTYuIEp1bCAyMDAxLCAyMjo0ODo0OCk6Cn4jISBybj1JbWRhIHJ0PTk5NTIzNDkwNSByZz1zY2htYXJybgp+IyEgdGlkPTk5NDk2NjA3NwpuYWphIGRhbm4gaGFiIGljaCBtaWNoIHdvaGwgZ2V0ZXVzY2h0IC4uIApqZWRlbmZhbGxlcyBpcyBkZXIgbmV1ZSBrZWluIGJ1bGxpIG1laHIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBaZWx0ZW4gKEltZGEsIDE3LiBKdWwgMjAwMSwgMDA6NDg6MzgpOgp+IyEgcm49Um9sYW5kIHJ0PTk5NTMxNjUyOCByZz1zY2htYXJybgp+IyEgdGlkPTk5NDk2NjA3NwpOdWphLCB3aXJkIGF1Y2ggbm9jaCBvZnQgYWxzIEJ1bGxpIGJlemVpY2huZXQsIGFiZXIgZHUgaGFzdCByZWNodCwgZXIgc2llaHQKbmljaG1laHIgYXVzIHdpZSBuIGJ1bGxpLCB1bmQgZXIgZmFlaHJ0IHNpY2ggd2llbiBwa3cuLi4KCmFiZXIgd2Vubm1hIHNpY2ggZGVuIFQ1IGFuc2NoYXV0IChrb21tdCBhbmZhbmcgbmFlY2hzdGVuIGphaHJlcyByYXVzLCBvZGVyCnRhZXVzY2hpY2ggbWljaCA/KS4uLiBEZXIgaXMgamEgbnVuIHdpcmtsaWNoIGJsb3NzIG5vY2ggbmUgZXR3YXMgaG9laGVyZQpsaW1vc2luZS4uLgoKRGllIGd1dGVuIGFsdGVuIFplaXRlbiA6KAoKR3J1c3MKCkltZGEuIEJ1bGx5ZmFocmVyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogWmVsdGVuIChKYW1lc29uLCAxNy4gSnVsIDIwMDEsIDAwOjUwOjUwKToKfiMhIHJuPUltZGEgcnQ9OTk1MzIzNzE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk0OTY2MDc3CkljaCB3YXIgdWVicmlnZW5zIGRhbWFscyBUMy4gV2VnZW4gU2NoZXVlcm1hbm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hvbiBtYWwgd2FybWdld3VlcmZlbHQ/IDopIChaZXBoeXIsIDE3LiBKdWwgMjAwMSwgMjM6MTc6MDQpOgo+IHVudCBnbHVlY2sKSGFsdCEgTW9vb29tZW50IC4uLi4gZGEgbGllZiB3YXMgc2NoaWVmISBJY2ggd3VlcmZlbCBub2NobWFsLgoqa2xvY2tlciBrbG9ja2VyKiAuLi4KSW4gZGVyIEZlcm5lIGhvZXJzdCBEdSBqZW1hbmQgbGF1dCBmbHVjaGVuLgpbQWxsZ2VtZWluOlB1a10gTUFFWENIRU4KCkM0LCBvaG5lIFNjaHVtbWVsdG9vbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ29ldHRlcm1hY2h0IChQaXRmYWxsLCAxOC4gSnVsIDIwMDEsIDAwOjQ4OjMyKToKRHUgd3VlcmZlbHN0IHVuZCBiZXRlc3QgenUgQm9pbmcsIGRhc3MgZXIgRGlyIGVpbiBNYWV4Y2hlbiBnZWJlbiBtb2VnZS4KICArLS0tLS0tLSsgICAgKy0tLS0tLS0rCiAgfCAgICAgKiB8ICAgIHwgICAgICAgfAogIHwgICAgICAgfCAgICB8ICAgKiAgIHwKICB8ICogICAgIHwgICAgfCAgICAgICB8CiAgKy0tLS0tLS0rICAgICstLS0tLS0tKwoKCndlbm4gZGFzIG51ciBpbW1lciBzbyBrbGFwcGVuIHd1ZXJkZQoKcGl0KiAtc2V1ZnplbmQtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZ29ldHRlcm1hY2h0IChCb2luZywgMTguIEp1bCAyMDAxLCAxMDoyNjoxNyk6Cn4jISBybj1QaXRmYWxsIHJ0PTk5NTQxMDExMiByZz1zY2htYXJybgp+IyEgdGlkPTk5NTQxMDExMgpJY2ggbXVzcyBtaWNoIGphIGF1Y2ggbm9jaCB1bSBhbmRlcmUga3VlbW1lcm4gLi4uIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWJhdWZ0cml0dCBMS0EgSGFubm92ZXIgKEh1bW5pLCAxOC4gSnVsIDIwMDEsIDE2OjQxOjU0KToKfiMhIG9uPUh1bW5pIG90PTk5NTQ2NzI5MiBvZz1hbGxnZW1laW5lcwp+IyEgcm49U3VibGltZSBydD05OTU0NjA0NjUgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTU0NjA0NjUKTWFsIGFiZ2VzZWhlbiBkYXZvbiBkYXNzIGljaCBuaWNodCBmdWVyIGVpbiBMS0EgYXJiZWl0ZW4gd2lsbCwgZnJhZyBpY2ggbWljaApEb2NoLCB3aWUgaWNoIGFuIERpY2ggT0RFUiBEaWNoIHNjaHJlaWJlbiBzb2xsLi4uaXN0IGRhcyBlaW4gZXhjbHVzaXZlcyBvZGVyCmVpbiBpbmNsdXNpdmVzIG9kZXI/IEJlaSB6d2VpdGVyZW0gZ2VodHMsIGJlaSBlcnN0ZXJlbSBuaWNodC4uLgoKR3J1c3MgSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZ29ldHRlcm1hY2h0IChSb2xhbmQsIDE4LiBKdWwgMjAwMSwgMTc6MTM6MTApOgp+IyEgcm49Qm9pbmcgcnQ9OTk1NDQ0Nzc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk1NDEwMTEyCkhtbW1tbW1tCgppY2ggZGFjaHQgaW1tZXIgZGFzIGdvZXR0ZXIgc293YXMgd2llIG9laG1tbW0gL3RjaGphIEdvZXR0ZXIpIHNpbmQuCjIzNjQ3Nzggb2hyZW4sIDEyNjczIGF1Z2VuLCB2aWVsZSB2aWVsZSBoYWVuZGUgdW5kIGZpbmdlci4KdW5kIHdlbm5zIG1hbCBlbmcgd2lyZCAuLiBrb21tIGVpbmZhY2ggbm9jaCB3ZWxjaGUgZGF6dSAuLiBHb2V0dGxpY2ggZWJlbi4KCmRhIG11c3MgZG9jaCBlaW4ga2xlaW5lcyBtYWV4Y2hlbiBmdWVyIGplZGVuIGJldGVuZGVuIG11ZGRlciBkcmluIHNlaW4uPz8KCm5hamEgZ29ldHRlciBzdGVoZW4gaGFsZCB1bnRlciBzdHJlc3MuCgoKPiBSb2xhbmQgZmFsdGVkIGRpZSBoYWVuZGUuCj4gU2NoYXV0IGF1ZiB6dSBCb2luZy4KPiBTY2htdW56ZWx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVm9yYWhudW5nLi4gKFplcGh5ciwgMTguIEp1bCAyMDAxLCAxOTo0MzowOSk6CkR1IHRlaWxzdCBQaXRmYWxsIG1pdDogaHVoPyBERz8KUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiBqbwpEdSB0ZWlsc3QgUGl0ZmFsbCBtaXQ6IHN0aXJiIG5pY2ggOi8KUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiBuaWUgOj0pCkR1IHRlaWxzdCBQaXRmYWxsIG1pdDogaWNoIGdsYXViIGljaCBnZWggbGllYmVyIHdpZWRlciB1bSBtaXIgZGFzIG5pY2h0IGFuc2VobgpEdSB0ZWlsc3QgUGl0ZmFsbCBtaXQ6IHp1IG11ZXNzZW4gOikKUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiAqc2NobW9sbCoKRHUgdGVpbHN0IFBpdGZhbGwgbWl0OiAqc2V1ZnoqClBpdGZhbGwgdHJvZXN0ZXQgRGljaCBsaWViIGF1cyBkZXIgRmVybmUuCltUb2Q6TGFyc10gRWluIEdsdXRiZWlzc2VyIGhhdCBnZXJhZGUgUGl0ZmFsbCB1bWdlYnJhY2h0LgogCkM0LCBrdW1tZXJ2b2xsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgOykgKEFuYXRvbCwgMTguIEp1bCAyMDAxLCAyMjoxNDo1Myk6CltCZWlsZWlkOlBpdGZhbGxdIHdlbmlnc3RlbnMgd2lzc2VuIHdpciBqZXR6dCBkYXNzIGVzIHJlc2V0dGV0IGhhdCA6PSkpCltUb2Q6TGFyc10gRWluIEdsdXRiZWlzc2VyIGhhdCBnZXJhZGUgUGl0ZmFsbCB1bWdlYnJhY2h0LgpbVG9kOlBpdGZhbGxdIFdvIGRlbm4/CgpEQSEgOikKQW5hdG9sIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBCcm93c2VyIHN0YXJ0ZXQgdW5nZXdvbGx0ZSBTZWl0ZSAoR25vbWUsIDE4LiBKdWwgMjAwMSwgMjI6NDA6MDkpOgp+IyEgcm49Um9sYW5kIHJ0PTk5NTQ2ODU5MSByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD05OTUzMjM4MTAKZ2VuYXUhCmJsZWliIGJlaSB0b25ubGluZSwgemFobCBkaWNoIGR1bW0gdW5kIGRhZW1saWNoIHVuZCB1bnRlcnN0dWV0eiBzb21tZXJzCnN0dXJya29wZi1wb2xpdGlrIG1pdCBkZWluZW0gZ2VsZC4gcmVjaHQgaGFzdCBkdS4Kd2lya2xpY2ggZWluZSBzYXVlcmVpLCBkYXNzIGZyZWVuZXQgc2ljaCBkdXJjaCB3ZXJidW5nIGZpbmFuemllcnQhCgpnbk9tZSBkZW5rdCAuIG8gMCAoIEEgUiBHIEwgISAhICEpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmQgdHNjaHVlc3MuLi4gKEZvb2JhciwgMTguIEp1bCAyMDAxLCAyMzoxNDoxNyk6CltaYXViZXJlcjpBc3Rlcm90aCAuLi5hZWguLlBobGFzdGVyb3RoIHZlcmFic2NoaWVkZXQgc2ljaC5dCltUb2Q6TGFyc10gVm9lbGxpZ2UgRXJzY2hvZXBmdW5nIGhhdCBnZXJhZGUgQXN0ZXJvdGggdW1nZWJyYWNodC4KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYW0gZnJ1ZWhlbiBtb3JnZW4gKFBpdGZhbGwsIDE5LiBKdWwgMjAwMSwgMDk6MTg6MjgpOgpCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBhbHNvIG1pdCBkcmVpIHRvZGVzZm9sZ2VuIGlzIGRlciBwYXJha2FyYXRlb3JrIGVpbmUKQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogcXVhbC4uLgpEdSBncmluc3QgQnJvdG5hZWwgYXVzIGRlciBGZXJuZSBhbi4KQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogaXMgYXVjaCBzY2hvbiBhdWYgODAgJSAqZ2cqCltUb2Q6TGFyc10gRWluIFBhcmFsbGVsd2VsdGthcmF0ZW9yayBoYXQgZ2VyYWRlIEJyb3RuYWVsIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZWJldGUgKFBpdGZhbGwsIDE5LiBKdWwgMjAwMSwgMjM6Mzg6MDYpOgpEZXIgRHJha29uaWVyYWRlcHQgc3ByaWNodCBlaW4gbGV0enRlcyBHZWJldC4KWmVwaHlyICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKCndhcyBoYXQgZGVyIGtlcmwgZ2ViZXRldD8/Pz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11aC4gKEZvb2JhciwgMjAuIEp1bCAyMDAxLCAwMDo0MDo0Myk6ClF1ZWxsZTogU2F0MS1WaWRlby1UZXh0CgpBcHBsYXVzOiBUb3RlIEt1aCB1ZWJlciBCZXJsaW4KClRyb3R6IHZpZWxmYWNoZXIgUHJvdGVzdGUgaGF0IGRlciBBa3Rpb25za3VlbnN0bGVyIFdvbGZnYW5nIEZsYXR6IHNlaW4KdW1zdHJpdHRlbmVzIFZvcmhhYmVuIHVtZ2VzZXR6dCB1bmQgYW0gQWJlbmQgZWluZSB0b3RlIEt1aCB1ZWJlciBCZXJsaW4KYWJnZXdvcmZlbi4gTWl0IGRlciBoYWxic3R1ZW5kaWdlbiBQZXJmb3JtYW5jZSAiRmxlaXNjaCIgd29sbHRlIGVyIGRlbiAiVW1nYW5nCmRlcyBNZW5zY2hlbiBtaXQgc2VpbmVtIEtvZXJwZXIgdW5kIGRlciBOYWhydW5nc2tldHRlIiBpbiBGcmFnZSBzdGVsbGVuLiAzMDAwCkJlcmxpbmVyIHN0YXVudGVuLgogICAgIEVpbiBIZWxpa29wdGVyIGtyZWlzdGUgaW4gNDAgbSBIb2VoZSB1ZWJlciBkZW0gR2VsYWVuZGUgZWluZXIgYWx0ZW4KQmFja2ZhYnJpayBhbSBQcmVuemxhdWVyIEJlcmcgdW5kIHdhcmYgZGVuIEthZGF2ZXIgaW4gZWluZSBCYXVncnViZS4gQmVpbQpBdWZwcmFsbCBleHBsb2RpZXJ0ZW4gRmV1ZXJ3ZXJrc2tvZXJwZXIuIEZsYXR6ICg0OCkgaGluZyBzZWxic3QgbmFja3QgYW0gS3Jhbi4KCkZvb2JhcgoKUFM6ICJJY2ggaGFiZSBtaWNoIG5pY2h0IGFuIGRpZSBTcGl0emUgZGVyIE5haHJ1bmdza2V0dGUgdm9yZ2VhcmJlaXRldCwgdW0KZGFubiBWZWdldGFyaWVyIHp1IHdlcmRlbi4iIChhdXMgZGUuYWx0Lm5ldGRpZ2VzdCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFN0dXR0Z2FydC4uLiAoSHVtbmksIDIwLiBKdWwgMjAwMSwgMDA6NTM6MDgpOgp+IyEgb249SHVtbmkgb3Q9OTk1NTgzMTQyIG9nPWRpc2t1c3Npb24KfiMhIHJuPUN1Y2h1bGxpbiBydD05OTU1ODA4NjMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTk5NTU4MDE3NwpXZWlsIGljaCBkYSB3b2huZSB1bmQgZGllIGFsbGUgU3RldWVybiB2b24gbWlyIGthc3NpZXJlbj8KCk5hIGd1dCBpY2ggd29obiBuaWNodCBpbSAsTGFlbmRsZScuIEFiZXIgaW0gc2VsYmVuIEJ1bmRlc2xhbmQuCgpVbmQgQWhudW5nIGhhYiBpY2ggc292aWVsIHZvbiBzZWxiaWdlbSB3aWUgZGllIGhpZXNpZ2VuIHZvbSBCaWVyYnJhdWVuIChhdXNzZXIKZGVuIFRhbm5lbnphZXBmbGVybiwgZGllIHNpbmQgb2spCgpIdW1uaSwgdmVyc2NoaWVidCBtYWwgZGlyZWt0IG5hY2ggc2NobWFycm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYT8gTmE/IFJpY2h0aWcsIE5ldGRpZ2VzdCEgKEZvb2JhciwgMjAuIEp1bCAyMDAxLCAwMDo1NToxOCk6CkZyb206IEFudG9uIERpc2NobmVyIDxkaXNjaG5lckBrbGNoLm1lZC51bmktbXVlbmNoZW4uZGU+Ck5ld3Nncm91cHM6IGRlLnJlYy5tb3RvcnJhZApTdWJqZWN0OiBSZTogTG9ldHppbm4KRGF0ZTogVGh1LCAxOSBKdWwgMjAwMSAxMTowMDozMiArMDIwMAoKRnJhbmtmdXJ0IDE4IEp1bGkgMjAwMQoKMTY6MDUgVWhyIFBhc3NhbnRlbiBtZWxkZW4gZGVtIG9lcnRsaWNoZW4gUmFkaW8gV2V0dGVybGV1Y2h0ZW4gaW0gUmF1bQpGcmFua2Z1cnQKCjE3OjAyIERhcyBoaWVzaWdlIEtsaW5pa3VtIG1lbGRldCBTYXVlcnN0b2Zmbm90c3RhbmQuCiAgICAgIEVpbiBHcm9zc2FibmVobWVyIGhhdCBkaWUgb2VydGxpY2hlbiBMYWdlcmJlc3RhZW5kZSBhdWZnZWthdWZ0LgoKMTc6NDUgRGVyIGxva2FsZSBXZXR0ZXJkaWVuc3QgYmVvYmFjaHRldCBlaW5lbiBBbnN0aWVnIGRlciBEdXJjaHNjaG5pdHRzLQogICAgICB0ZW1wYXJhdHVyIHVtIDMgR3JhZCBDZWxzaXVzLgoKMTg6MDAgRWluemVsaGFlbmRsZXIgdmVybWVsZGVuIGVpbmVuIFJ1biBhdWYgUHJvcGFuZ2FzZmxhc2NoZW4KICAgICAgRGllIFVtc2FldHplIGVpbmVzIGdhbnplbiBKYWhyZXMgd2VyZGVuIGluIGVpbmVtIFRhZyBlaW5nZWZhaHJlbi4KCjE5OjAwIEVpbmUgQm9pbmcga2FubiBnZXJhZGUgbm9jaCBkZW4gTGFuZGVhbmZsdWcgYWJicmVjaGVuLgogICAgICBFaW5lIHN0YXJrZSBMaWNodHF1ZWxsZSB3dXJkZSBhbHMgTGFuZGViYWhubGFtcGVuIGZlaGxpbnRlcnByZXRpZXJ0LgoKMTk6MjMgRmVsZGphZWdlciBkZXIgQnVuZGVzd2VociB3ZXJkZW4gYXVzZ2VzY2hpY2t0IHp1IGtsYWVyZW4KICAgICAgd2VyIGltIHppdmlsZW4gQmVyZWljaCBQdWxzdHJpZWJ3ZXJrZSBlaW5zZXR6dC4KCjIwOjAwIERpZSBydXNzaXNjaGUgc3RyYXRlZ2lzY2hlIEx1ZnRhYndlaHIgZXJob2VodCBkaWUgQWJ3ZWhyYmVyZWl0c2NoYWZ0LgogICAgICBMdWZ0YmlsZGF1Zm5haG1lbiB2b24gRnJhbmtmdXJ0IGxhc3NlbiBzY2hsaWVzc2VuIGRhc3MKICAgICAgSW50ZXJrb250aW5lbnRhbHJha2V0ZW4gZ2V6dWVuZGV0IHdlcmRlbi4KCjIzOjAwIEZyYW5rZnVydCBpc3QgdGFnaGVsbCBlcmxldWNodGV0LiAKICAgICAgVmVyc3RvZXJ0ZSBCYW5rZXIgZ2xhdWJlbiBlcyBpc3QgZnJ1ZWhlciBNb3JnZW4gdW5kIGZhaHJlbiBpbiBkaWUKQXJiZWl0LgoKMjQ6MDAgRGllIG9lcnRsaWNoZSBQb2xpemVpIG5pbW10IGVpbmVuIHZlcndpcnJ0ZW4gQW53b2huZXIgZmVzdC4KICAgICAgQXVnZW56ZXVnZW4gYmVyaWNodGVuIGRhc3MgZGVyIE1hbm4gZXR3YXMgdm9uCiAgICAgICJJY2ggd29sbHRlIGRvY2ggbnVyIG5lbiBMYW1wZW5oYWx0ZXIgc2Nod2Vpc3Nlbi4uLiIgc3RhbW1lbHRlCgpTQ05SLApHcnVzcywKClRvbmkKIAo+IERpZSBHdXp6aSBicmF1Y2h0IGVpbmVuIG5ldWVuIExhbXBlbmhhbHRlciB2b3JuZS4gLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmE/IE5hPyBSaWNodGlnLCBOZXRkaWdlc3QhIChDdWNodWxsaW4sIDIwLiBKdWwgMjAwMSwgMDI6MDY6MjgpOgp+IyEgcm49Rm9vYmFyIHJ0PTk5NTU4MzMxOCByZz1zY2htYXJybgp+IyEgdGlkPTk5NTU4MzMxOAo+IDE5OjAwIEVpbmUgQm9pbmcga2FubiBnZXJhZGUgbm9jaCBkZW4gTGFuZGVhbmZsdWcgYWJicmVjaGVuLgoKW25vIGNvbW1lbnRdIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOYT8gTmE/IFJpY2h0aWcsIE5ldGRpZ2VzdCEgKFRyb3ksIDIwLiBKdWwgMjAwMSwgMDg6NTM6MjApOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTk5NTU4NzU4OCByZz1zY2htYXJybgp+IyEgdGlkPTk5NTU4MzMxOApUamEuCgpSaWNodGlnIG11ZXNzdGUgZXMgYWxzbyBoZWlzc2VuOgo+IDE5OjAwIEVpbiBCb2luZyBrYW5uIGdlcmFkZSBub2NoIGRlbiBMYW5kZWFuZmx1ZyBhYmJyZWNoZW4uCgp0cm95CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOYT8gTmE/IFJpY2h0aWcsIE5ldGRpZ2VzdCEgKEJvaW5nLCAyMC4gSnVsIDIwMDEsIDA5OjIyOjQwKToKfiMhIHJuPVRyb3kgcnQ9OTk1NjEyMDAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk1NTgzMzE4ClVuZCBpY2gga2FubiBldWNoIHNhZ2VuOiBFcyB3YXIgdmVyZGFtbXQga25hcHAhCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNdWguIChMaW5mbGFzLCAyMC4gSnVsIDIwMDEsIDExOjEyOjQ5KToKfiMhIHJuPUZvb2JhciBydD05OTU1ODI0NDMgcmc9c2NobWFycm4KfiMhIHRpZD05OTU1ODI0NDMKTGluZmxhcyBpc3QgZW50c2V0enQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOYT8gTmE/IFJpY2h0aWcsIE5ldGRpZ2VzdCEgKEhpZ2h0LCAyMC4gSnVsIDIwMDEsIDEyOjU5OjQ1KToKfiMhIHJuPVRyb3kgcnQ9OTk1NjEyMDAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk1NTgzMzE4Cm5lcmphIGljaCBiaW4gYmVydWhpZ3QgZGFzIGljaCBuZXQgZGVyIGVpbnppZ2UgYmluIGRlciBkYXMgYm9pbmcgc3RhdCBibyBpbmcKZ2VsZXNlbiBoYXQgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOYT8gTmE/IFJpY2h0aWcsIE5ldGRpZ2VzdCEgKFd1cnplbCwgMjAuIEp1bCAyMDAxLCAxNTozNzo0OCk6Cn4jISBybj1IaWdodCBydD05OTU2MjY3ODUgcmc9c2NobWFycm4KfiMhIHRpZD05OTU1ODMzMTgKd29iZWksIHdlbm4gZXMgdW0gZGVuIGZsdWd6ZXVnaGVyc3RlbGxlciBnZWh0LCBkaWVzZXIgYm9laW5nIGhlaXNzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXQVMgSUNIIFZPTiBNRUlORU4gS0lOREVSTiBHRUxFUk5UIEhBQkUgKEdBTlogRUhSTElDSCkgKEFuYXRvbCwgMjAuIEp1bCAyMDAxLCAxNjozNDowMSk6Cn4jISBvbj1BbmF0b2wgb3Q9OTk1NjM5NjM3IG9nPXdpdHplCn4jISBybj1Jdm8gcnQ9OTk1NjM2ODkyIHJnPXdpdHplCn4jISB0aWQ9OTk1NjM2ODkyClVuZCBpcmdlbmR3YW5uIHdlcmRlbiBhdWNoIFptdWRkZXIgbGVybmVuLCB3aWUgbWFuIHZlcm51ZW5mdGlnIHBhc3RldCA7KQoKU0NOUiA7KQpBbmF0b2wgKGhhdHMgdHJvdHpkZW0gZ2VsZXNlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV0FTIElDSCBWT04gTUVJTkVOIEtJTkRFUk4gR0VMRVJOVCBIQUJFIChHQU5aIEVIUkxJQ0gpIChWYXJsYXJpb24sIDIwLiBKdWwgMjAwMSwgMTY6MzU6MjQpOgp+IyEgcm49QW5hdG9sIHJ0PTk5NTYzOTY0MSByZz1zY2htYXJybgp+IyEgdGlkPTk5NTYzNjg5MgpIbW0sIGRpZSBuZXVlIFZlcnNpb24gdm9uIHpNVUQgX2thbm5fIGNvcHkgbiBwYXN0ZSB1bmQgendhciBzZWhyIGd1dCA6KQoKVmFybCosIGJla2VubmVuZGVyIEV4LXpNVURkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdBUyBJQ0ggVk9OIE1FSU5FTiBLSU5ERVJOIEdFTEVSTlQgSEFCRSAoR0FOWiBFSFJMSUNIKSAoQW5hdG9sLCAyMC4gSnVsIDIwMDEsIDE2OjM3OjEyKToKfiMhIHJuPVZhcmxhcmlvbiBydD05OTU2Mzk3MjQgcmc9c2NobWFycm4KfiMhIHRpZD05OTU2MzY4OTIKQWJlciBmdWVyIGRpZSBuZXVlIG11ZXNzdGVuIGRpZSBMZXV0ZSBHZWxkIGJlemFobGVuLiA7bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdBUyBJQ0ggVk9OIE1FSU5FTiBLSU5ERVJOIEdFTEVSTlQgSEFCRSAoR0FOWiBFSFJMSUNIKSAoRWxiZXJldCwgMjAuIEp1bCAyMDAxLCAxNjozODoxMik6Cn4jISBybj1BbmF0b2wgcnQ9OTk1NjM5ODMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk1NjM2ODkyCmljaCBkZW5rLCBkaWUgbWVpc3RlbiBaYWhsZW4gZnVlcnMgbXVkZGVuIGFuIHNpY2ggc2Nob24gZ2VudWcgZ2VsZCwgZGEKZmFlbGx0ZGFzIGJpc2NoZW4gZnVlciBlaW5lIHptdWQgdmVyc2lvbiBhdWNoIG5jaWh0ZyBtZWhyIGlucyBnZXdpY2h0IDspCgpFbGJpIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV0FTIElDSCBWT04gTUVJTkVOIEtJTkRFUk4gR0VMRVJOVCBIQUJFIChHQU5aIEVIUkxJQ0gpIChWYXJsYXJpb24sIDIwLiBKdWwgMjAwMSwgMTY6Mzk6MzYpOgp+IyEgcm49RWxiZXJldCBydD05OTU2Mzk4OTIgcmc9c2NobWFycm4KfiMhIHRpZD05OTU2MzY4OTIKTWlyIHdhcnMgZGFtYWxzIGRpZSA1MCBTY2hsZWlmZW4gd2VydCB1bmQgZGFmdWVyIHN0dWVuZGUgbWlyIGluIFp1a3VuZnQgaW1tZXIKZGllIG5ldWVzdGUgVmVyc2lvbiB6dXIgVmVyZnVlZ3VuZywgd2VubiBpY2ggek1VRCBkZW5uIG5vY2ggbnV0emVuIHdvbGx0ZSA7KQoKVmFybCosIFRGLXdlcmZlbmQgKGMpIElzaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQnVzaW5lc3MtQm9hcmlzY2ggKE11cGZlbCwgMjAuIEp1bCAyMDAxLCAxNzo1ODowNyk6CkJ1c2luZXNzLUJvYXJpc2NoICEKCiAgV0lFIE1FSU5FTiwgT0RFUiBXQVMgV0lMTCBERVIgS09MTEVHRSBBVVMgQkFZRVJOIERBTUlUIFNBR0VOID8KCkRlcyBzb2cgaSBkYSAuLi4uLgpESUVTRSBTQUNIRSBNT0VDSFRFIElDSCBCRVNPTkRFUlMgQkVUT05FTgoKRG8gd2VubnN0IG1hIG5lZCBnZXN0Ck1JVCBESUVTRVIgU0FDSEUgTU9FQ0hURSBJQ0ggTUlDSCBJTSBNT01FTlQgTklDSFQgQkVGQVNTRU4KCktvbiBzY2hvIHNlaQpFUyBTUFJJQ0hUIEVJTklHRVMgREFGVUVSLCBEQVNTCgpTbyBpcyBhIHdpZWRhIG5lZCAuLi4uCkRFUiBTQUNIVkVSSEFMVCBJU1QgS09NUExJWklFUlRFUiwgV0lFIEVSIFNJQ0ggREFSU1RFTExUCgpTY2hhdSBtYSBtb2kuLi4uCkRFVEFJTExJRVJURSBBVVNTQUdFTiBTSU5EIElNIE1PTUVOVCBOSUNIVCBPUFBPUlRVTgoKQSBiaXNzZSB3b3MgZ2VodCBpbW1hLi4uLgpFSU5FIEtPTVBST01JU1NMT0VTVU5HIElTVCBWT1JTVEVMTEJBUgoKRG8gc2NoaWFidCBzZSBoZWl0IG5peCBtZWhyLi4uLgpESUUgQVJCRUlURU4gS09FTk5FTiBIRVVURSBMRUlERVIgTklDSFQgTUVIUiBGRVJUSUcgR0VTVEVMTFQgV0VSREVOCgpKZXR6dCB3YXJ0JyBtYSBtb2kuLi4uCklNIE1PTUVOVCBTT0xMVEVOIEtFSU5FIEVOVFNDSEVJRFVOR0VOIEdFVFJPRkZFTiBXRVJERU4KCldlbm5zdCBtb2Fuc3QuLi4KSUNIIEFLWkVQVElFUkUgSUhSRSBNRUlOVU5HLCBXVUVSREUgQUJFUiAuLi4uCgpTY2htYXJybi4uLi4uCkRBIEJJTiBJQ0ggQU5ERVJFUiBNRUlOVU5HCgpEZXMgd29hcyBpIGEgbmVkLi4uCkRBWlUgS0FOTiBJQ0ggSU0gTU9NRU5UIEtFSU5FIEFOVFdPUlQgR0VCRU4KCk5hY2hhLCBwYWNrJ21hcy4uLgpXSVIgV0VSREVOIFVOUyBVTSBJSFIgUFJPQkxFTSBLVUVNTUVSTiAuLi4uCgpTbyBhIEdsdW1wLCB2ZXJyZWNrdHMuLi4uCklNIE1PTUVOVCBCRVNURUhUIEVJTiBRVUFMSVRBRVRTUFJPQkxFTSBNSVQKCkRlciB6aWFndCBuZWQgLi4uCkRFUiBLVU5ERSBURUlMVCBJTiBESUVTRVIgQU5HRUxFR0VOSEVJVCBOSUNIVCBVTlNFUkUgTUVJTlVORwoKQWJhIGhlaWQgbmltbWEuLi4KRVMgSVNUIFVOUyBIRVVURSBMRUlERVIgTklDSFQgTUVIUiBNT0VHTElDSAoKSmEsIHNwaW5uIGkgZGVubiA/CklDSCBLQU5OIEdBUiBOSUNIVCBHTEFVQkVOLCBXQVMgU0lFIE1JUiBFUlpBRUhMRU4KCldpYSBsYWZ0J3MgbmFjaGF0IHNvID8KV0lFIFNJTkQgU0lFIE1JVCBERVIgUEVSRk9STUFOQ0UgREVSIEFOTEFHRU4gWlVGUklFREVOID8KCkRlcyBpcyBpc2kuLi4KSUhSRU0gV1VOU0NIIEZPTEdFTkQgS09FTk5FTiBXSVIgRElFIEFFTkRFUlVORyBTT0ZPUlQgSU1QTEVNRU5USUVSRU4KCgoKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQnVzaW5lc3MtQm9hcmlzY2ggKEhpZ2h0LCAyMS4gSnVsIDIwMDEsIDAxOjMwOjU0KToKfiMhIHJuPU11cGZlbCBydD05OTU2NDQ2ODcgcmc9c2NobWFycm4KfiMhIHRpZD05OTU2NDQ2ODcKaG1tbSBpY2ggYmluIHp3YXIga2VpbiBiYXllciBhYmJhIGljaCB3ZWlzcyBkYXMgImEgYmlzc2Ugd29zIGdlaHQgaW1tZXIiCmtlaW5lciBzYWd0IHNvd2VpdCBtaXIgYmVrYW5udCBtdXNzIGRhcyBoZWlzc2VuOiAiYSBiaXNzbGEgd29zIGdlaHQgb2xhd29pIgpvZGVyIHNvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbGZlbmthZW1wZmVyIC4uLiAoRGFya3dpbmcsIDIxLiBKdWwgMjAwMSwgMjI6NTI6MTYpOgpVbmFzYWkgc2NoYWVyZnQgZGllIEtsaW5nZSBlaW5lcyBCb2dlbnMsIGJ6dy4gc2llIHZlcnN1Y2h0IGVzIHdlbmlnc3RlbnMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWxmZW5rYWVtcGZlciAuLi4gKEZvb2JhciwgMjEuIEp1bCAyMDAxLCAyMjo1MzoyNSk6Cn4jISBybj1EYXJrd2luZyBydD05OTU3NDg3MzYgcmc9c2NobWFycm4KfiMhIHRpZD05OTU3NDg3MzYKR2FiIHNpY2hlciAnbmVuIEZlaGxzY2hsYWcgO28pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmbHcgbWFsIHdpZWRlciAoUGl0ZmFsbCwgMjQuIEp1bCAyMDAxLCAxNjo1MzowNCk6CkRlaW5lIEZyZXVuZGluIEJpZ2FzIGdydW1tZWx0IGVpbmVuIFdlZ2hpZXIgYW4gYXVzIGRlciBGZXJuZS4KW1RvZDpMYXJzXSBFaW4gV2VnaGllciBoYXQgZ2VyYWRlIEJpZ2FzIHVtZ2VicmFjaHQuCltUb2Q6RWluIFdlZ2hpZXJdIEdvdGNoYSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlbmFlcmVsYWUgIT8hIChQdWssIDI1LiBKdWwgMjAwMSwgMDE6MTM6MTkpOgpEdSB0ZWlsc3QgWFhYIG1pdDogZHUga2FubnN0IGplZGVuIG1pdCBuYXJ5YSBsb2NrZW4KWFhYIHRlaWx0IERpciBtaXQ6IG9kZXIgc28gMDE6MDQKWFhYIHRlaWx0IERpciBtaXQ6IHdhcyBoYXQgZGllIGRlbiBmZWluZXMgYXVzZXIgc3R1cHNlID8gCkR1IHRlaWxzdCBYWFggbWl0OiB3ZXIgPwpYWFggdGVpbHQgRGlyIG1pdDogbmFyeWEgCkR1IHRlaWxzdCBYWFggbWl0OiBkdSB3ZWlzc3QgbmljaHQgd2FzIG5hcnlhIGlzdCA/ClhYWCB0ZWlsdCBEaXIgbWl0OiBueWVsYSBoZW5uZSBpY2ggamEgYWJlciBuYXJ5YSBuaWNodCAKClB1aywgc2NodWV0dGVsdCBkZW4ga29wZiB1bmQgZGVua3QgS2FlbXBmZXIgdm9uIEhldXRlIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2VuYWVyZWxhZSAhPyEgKE5hcnlhLCAyNS4gSnVsIDIwMDEsIDAxOjE3OjI0KToKfiMhIHJuPVB1ayBydD05OTYwMTYzOTkgcmc9c2NobWFycm4KfiMhIHRpZD05OTYwMTYzOTkKQWVoLCB3ZXIga2VubnQgbWljaCBoaWVyIG5pY2h0PyBGcmVjaGhlaXQsIHNvd2FzLi4uCgpHZEEsIGtlbm50IHNpY2ggc2VsYmVyIG5pY2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGphIChQdWssIDI1LiBKdWwgMjAwMSwgMTY6NTI6MzgpOgoKS2FlbXBmZXIgc29uZGVyYXR0YWNrZSA6CgpEZWluIEZyZXVuZCBQaXRmYWxsIHRlaWx0IERpciBtaXQ6IEFUVEFDS0UhClBpdGZhbGwgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpQdWssIHd1bmRlcnQgbml4IG1laHIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3ZpZWwgenVtIGZvcnNjaGVuIChSb2xhbmQsIDI1LiBKdWwgMjAwMSwgMjE6MDc6NTIpOgo+IHVudCBib2RlbgpEZXIgQm9kZW4gaXN0IG1vcmFzdGlnIHVuZCBtaXQgZ2lmdGlnZW0gV2Fzc2VyIGJlZGVja3QuCj4gdW50IHdhc3NlcgpFcyBzaWVodCB6aWVtbGljaCB1bmdlc3VuZCBhdXMuCj4gdHJpbmtlIHdhc3NlcgpEdSBiaXN0IHdpcmtsaWNoIGV0d2FzIGJsb2VkLCBvZGVyPyBOdW4gZ3V0IC4uIER1IHRyaW5rc3QgZGFzIGdpZnRpZ2UgV2Fzc2VyLgpEdSBoYXN0IGVpbmUgbGVpY2h0ZSBWZXJnaWZ0dW5nLgo+IGtpY2hlcgpEdSBraWNoZXJzdC4gKFdpZSBhbGJlcm4gdm9uIERpcikKRHUgaGFzdCBlaW5lIGxlaWNodGUgVmVyZ2lmdHVuZy4KRHUgaGFzdCBlaW5lIGxlaWNodGUgVmVyZ2lmdHVuZy4KPiBlbnRnaWZ0ZQpEdSBoZWlsc3QgRGVpbmUgVmVyZ2lmdHVuZyB2b2VsbGlnLgoKKipraWNoZXIgLi4uIHNvdmllbCBkYXp1IC4uLi4uLi4gOikgTWZHIFJvLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWljaCBoYXQgbWFuIGphIG5pY2h0IGdlZnJhZ3QgOikgKFNvbG15ciwgMjUuIEp1bCAyMDAxLCAyMToxMTo0Mik6CiBEZWluIEZyZXVuZCBTYXJrb24gdGVpbHQgRGlyIG1pdDogc2FndCBkb2NoIHdlbmlnc3RlbnMgInNlaSBydWhpZyB1bmQKIERlaW4gRnJldW5kIFNhcmtvbiB0ZWlsdCBEaXIgbWl0OiBuZXJ2bmV0IiBpY2ggZ2xhdWIgZGFzIGxlenRlIHdvcnQgZGFzCiBEZWluIEZyZXVuZCBTYXJrb24gdGVpbHQgRGlyIG1pdDogamVtYW5kIG1pdG1pciBnZXdlY2hzZWx0IGhhdCBmaWVsIHZvcgogRGVpbiBGcmV1bmQgU2Fya29uIHRlaWx0IERpciBtaXQ6IHZvciAxMCBTdHVuZGVuLCBpY2ggZ2xhdWIgaWNoIHdlcmYKIERlaW4gRnJldW5kIFNhcmtvbiB0ZWlsdCBEaXIgbWl0OiBtZWluIHBjIHJhdXMgKm1lZ2FhcmdMKgoKU2Fya29uICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpkYSBpc3QgQ0FQU0xPQ0sgbWFsIGFuIGRlciByaWNodGlnZW4gU3RlbGxlCgpGcmVpIG5hY2ggSG9ubmVja2VyIDopIEljaCBsaWViZSBkb2NoIGFsbGUsIGFsbGUgTWVuc2NoZW4uLi4KU29sKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1pY2ggaGF0IG1hbiBqYSBuaWNodCBnZWZyYWd0IDopIChHcmltbWJvcm4sIDI1LiBKdWwgMjAwMSwgMjE6MjE6NTUpOgp+IyEgcm49U29sbXlyIHJ0PTk5NjA4ODMwMiByZz1zY2htYXJybgp+IyEgdGlkPTk5NjA4ODMwMgpEYXMgd2FyIEVyaWNoIE1pZWxrZSwgbmljaHQgZWJlbnNvbGNoZXIgSG9uZWNrZXIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLk5ldGRpZ2VzdCEgKEZvb2JhciwgMjUuIEp1bCAyMDAxLCAyMTozMToxMik6CkZyb206IE1hdHRoaWFzIEVza2VuIDxtdWVsbGVpbWVyMjAwMUB1c2VuZXR2ZXJ3YWx0dW5nLm9yZz4KTmV3c2dyb3VwczogZGUuYWx0LmZvbGtsb3JlLnVyYmFuLWxlZ2VuZHMKU3ViamVjdDogUmU6IEJvbnNhaS1LYXR6ZW4/CkRhdGU6IFR1ZSwgMjQgSnVsIDIwMDEgMjI6NTQ6MjkgKzAyMDAKTWVzc2FnZS1JRDogPDlqa3ViNi4zdnZmbm50LjFAdXNlbmV0LmVza2VuLmRlPgoKIlZvbGtlciBHcmluZ211dGgiIDxuZXdzLWZ1cHNAdm9sa2VyLWdyaW5nbXV0aC5kZT4gc2NocmllYjoKCj4gRGFzIGdlaHQgamEgbm9jaCwgYWJlciBFaWVyIG1pdCBQcm90ZWluZW4gd3VlcmRlIGljaCBuaWUgdW5kIG5pbW1lciAKPiBrYXVmZW4hIE1hbiB3ZWlzcyBqYSwgd2FzIG1pdCAiUHJvIiBhbmZhZW5ndCwgaXN0IGVpbmUgcmVpbmUgRXJmaW5kdW5nIAo+IGRlciBXZXJidW5nISAKCktlaW5lICJQcm8icyBtZWhyPyBOYSBndXQuCgpEaWVzZW4gRWluZmFsbCBoYWx0ZSBpY2ggZnVlciBzZWhyIHZva2FudCEKCldlbm4gZGVtbmFlY2hzdCBpbSBMaXRlcmFyaXNjaGVuIFF1YXJ0ZXR0IGVpbmlnZSBNaW5lbnRlIHNpdHplbiB1bmQKdWViZXIgU2EgZGlza3V0aWVyZW4sIGRhbm4gd2lyZCdzIHNjaG9uIGV0d2FzIGVpZ2VuYXJ0aWcuIEZhbmUKVGFsa3Nob3dzIGltIFByaXZhdGZlcm5zZWhlbiBtaXQgVGl0ZWxuIHdpZSAiRXIgdHp0IG1pdCBzZWluZXIgU3RhdGEiCndlcmRlbiBlbmRndWVsdGlnIGlocmVuIGxldHp0ZW4gQW5zcHJ1Y2ggdmVybGllcmVuLiBXaWUgc29sbCBtYW4gc2ljaApkYW1pdCBub2NoIGZpbGllcmVuPwoKV2VubiBWZXJ0ZXRlciBkYW5uIGF1Y2ggbm9jaCB2b24gVmlzaW9uZW4gbGViZW4gc29sbGVuLCBkYW5uIGhhYmVuIHdpcgplaW4gZWNodGVzIEJsZW0uIEljaCBmdWVyY2h0ZSwgZGllIHZvbiBkaXIgcGFnaWVydGUgSWRlZSBmdWVocnQgenUKRHVrdGlvbnNhdXNmYWVsbGVuIHVuZCB3ZW5uIGRhbm4gZGVyIEZpdCBmZWhsdCwgZGFubiBoYXN0IGR1IGdhbnoKc2NobmVsbCBlaW5lbiBaZXNzIGFtIEhhbHMuCgpEdSBrYW5uc3Qgbm9jaCBzbyB2aWVsIFBhZ2FuZGEgbWFjaGVuIHVuZCBkdSBrYW5uc3QgU3Bla3RlIHZlcnRlaWxlbgphYmVyIGR1IHdpcnN0IG5pY2h0IGVpbm1hbCBlaW5lbiBUb3R5cGVuIGRlaW5lciBhbmdlcGFzc3RlbiBTcHJhY2hlCmR1cmNoYmVrb21tZW4uIE1hbiBtdXNzIGtlaW4gUGhldCBzZWluLCB3ZW5uIG1hbiBkYXMgU2NoZWl0ZXJuIGRpZXNlcwpKZWt0cyB2b3JoZXJzYWd0LiBTb3dvaGwgTGV0ZW4gd2llIGF1Y2ggTW92aWVydGUgdW5kIEZlc3NvcmVuIHdlcmRlbgpkYWdlZ2VuIHRlc3RpZXJlbi4KClNvLCBpY2ggaG9lcicgamV0enQgbGllYmVyIGF1ZiB1bmQgZ2VoZSBpbiBkaWVzZW0gVmluem5lc3Qgbm9jaCBlaW4KQmllcmNoZW4gdHJpbmtlbi4gU3QhCgogICAgIE1hdHRoaWFzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc292aWVsIHp1bSBmb3JzY2hlbiAoVGVrdHVrbywgMjUuIEp1bCAyMDAxLCAyMjoxMjoyNCk6Cn4jISBybj1Sb2xhbmQgcnQ9OTk2MDg4MDcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2MDg4MDcyCk1oaCwgaXJnZW5kd2llIGZpbmRlIGljaCBkaWUgUG9lbnRlIG9kZXIgd2llIGRhcyBoZWlzc3QgbmljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHNvdmllbCB6dW0gZm9yc2NoZW4gKEdyaW1tYm9ybiwgMjUuIEp1bCAyMDAxLCAyMjoxNTowNCk6Cn4jISBybj1UZWt0dWtvIHJ0PTk5NjA5MTk0NCByZz1zY2htYXJybgp+IyEgdGlkPTk5NjA4ODA3MgpEYXMgaGVpc3N0IFBvdGVudGUsIEZyYW5rYSBtaXQgVk9ybmFtZW4uCgpHZEEgcmVubnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHNvdmllbCB6dW0gZm9yc2NoZW4gKFRla3R1a28sIDI1LiBKdWwgMjAwMSwgMjI6MTU6NDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5NjA5MjEwNCByZz1zY2htYXJybgp+IyEgdGlkPTk5NjA4ODA3MgpOZWluIE5laW4sIGljaCBtZWludGUgZGFzIGFuZGVyZSBXb3J0IGZ1ZXIgV2l0ei4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHNvdmllbCB6dW0gZm9yc2NoZW4gKEZvb2JhciwgMjUuIEp1bCAyMDAxLCAyMjoxNzowMyk6Cn4jISBybj1UZWt0dWtvIHJ0PTk5NjA5MjE0NiByZz1zY2htYXJybgp+IyEgdGlkPTk5NjA4ODA3MgpFaW4gV2l0eiBoYXQgLSBob2ZmZW50bGljaCAtIGVpbmUgUG9pbnRlIGlzdCBhYmVyIHNlbHRlbiBlaW5lLgoKRm9vYmFyIHBoaWxvc29waGllcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBzb3ZpZWwgenVtIGZvcnNjaGVuIChUZWt0dWtvLCAyNS4gSnVsIDIwMDEsIDIyOjE4OjAyKToKfiMhIHJuPUZvb2JhciBydD05OTYwOTIyMjMgcmc9c2NobWFycm4KfiMhIHRpZD05OTYwODgwNzIKRGVpbiBXaXR6IHdhciBtaXIgdW0gZGllIFVocnplaXQgenUgbGFuZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHNvdmllbCB6dW0gZm9yc2NoZW4gKEZvb2JhciwgMjUuIEp1bCAyMDAxLCAyMjoxOTowOSk6Cn4jISBybj1UZWt0dWtvIHJ0PTk5NjA5MjI4MiByZz1zY2htYXJybgp+IyEgdGlkPTk5NjA4ODA3MgpEdSBtZWluc3QgbWVpbmUgUG90ZW50ZT8KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogc292aWVsIHp1bSBmb3JzY2hlbiAoR3JpbW1ib3JuLCAyNS4gSnVsIDIwMDEsIDIyOjI1OjMxKToKfiMhIHJuPUZvb2JhciBydD05OTYwOTIzNDkgcmc9c2NobWFycm4KfiMhIHRpZD05OTYwODgwNzIKRGFzIHdpZWRlcnVtIGhlaXNzdCAiUG90ZW56IiB1bmQgd2llIGxhbmcgZGllIGlzdCAtIG5hamEsIGRhcyBpc3QgRXVlcgpQcm9ibGVtLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEZvb2JhciwgMjUuIEp1bCAyMDAxLCAyMjozMTowMCk6CkRlaW4gRnJldW5kIE9iaSB0ZWlsdCBEaXIgbWl0OiBLYWRpcyBpc3QgbmUgV3Vyc3QhISEgOikKW1RvZDpMYXJzXSBFaW4gR1JPU1NFUiBLcmlzdGFsbGRyYWNoZSBoYXQgZ2VyYWRlIE9iaSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBHUk9TU0VSIEtyaXN0YWxsZHJhY2hlXSAuLi4gZGFzIHp1bSBXZWljaGVpOikpICAgICAgICAgICAgICAgICAgICAgICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCBibGFldHRlciBoaWVyIGdyYWQgc28gLi4gdW5kIG11c3MgZ3JpbnNlbiAhIDopIChSb2xhbmQsIDI2LiBKdWwgMjAwMSwgMjA6NDc6MjQpOgppZSBsYW5nIGRpZSBpc3QgLSBuYWphLCBkYXMgaXN0IEV1ZXIKUHJvYmxlbS4KCkdkQQpCcm90bmFlbCB3dXNlbHQgbmFjaCBXZXN0ZW4uCm5uClJ1YnJpayA0NTogc2NobWFycm4sIEFydGlrZWw6IDE5IHZvbiAxOQpGTFcgKEZvb2JhciwgMjUuIEp1bCAyMDAxLCAyMjozMTowMCk6CgoKRGVpbiBGcmV1bmQgT2JpIHRlaWx0IERpciBtaXQ6IEthZGlzIGlzdCBuZSBXdXJzdCEhISA6KQpbVG9kOkxhcnNdIEVpbiBHUk9TU0VSIEtyaXN0YWxsZHJhY2hlIGhhdCBnZXJhZGUgT2JpIHVtZ2VicmFjaHQuCltUb2Q6RWluIEdST1NTRVIgS3Jpc3RhbGxkcmFjaGVdIC4uLiBkYXMgenVtIFdlaWNoZWk6KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJY2ggYmxhZXR0ZXIgaGllciBncmFkIHNvIC4uIHVuZCBtdXNzIGdyaW5zZW4gISA6KSAoQW1hcnlsbGlzLCAyNi4gSnVsIDIwMDEsIDIwOjQ5OjUxKToKfiMhIHJuPVJvbGFuZCBydD05OTYxNzMyNDQgcmc9c2NobWFycm4KfiMhIHRpZD05OTYxNzMyNDQKaGFlaD8KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSWNoIGJsYWV0dGVyIGhpZXIgZ3JhZCBzbyAuLiB1bmQgbXVzcyBncmluc2VuICEgOikgKEdyaW1tYm9ybiwgMjYuIEp1bCAyMDAxLCAyMDo1MTozNyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9OTk2MTczMzkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2MTczMjQ0CkR1IGhhc3Qgc2ljaGVyIG51ciBuaWNodCBkaWUgcmljaHRpZ2UgTWVuZ2UgZGVyIHJpY2h0aWdlbiBEcm9nZW4genUgRGlyCmdlbm9tbWVuIC0wIGljaCBiaW4gYXVjaCBub2NoIGFtIGV4cGVyaW1lbnRpZXJlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEljaCBibGFldHRlciBoaWVyIGdyYWQgc28gLi4gdW5kIG11c3MgZ3JpbnNlbiAhIDopIChUZWt0dWtvLCAyNi4gSnVsIDIwMDEsIDIwOjUxOjM5KToKfiMhIHJuPUFtYXJ5bGxpcyBydD05OTYxNzMzOTEgcmc9c2NobWFycm4KfiMhIHRpZD05OTYxNzMyNDQKaGFlIHdhcyBtZWludGUgZXI/IHNhZyBtaXIgQmVzY2hlaWQgd2VubiBkdXMgd2Vpc3N0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSWNoIGJsYWV0dGVyIGhpZXIgZ3JhZCBzbyAuLiB1bmQgbXVzcyBncmluc2VuICEgOikgKEFtYXJ5bGxpcywgMjYuIEp1bCAyMDAxLCAyMDo1NTozNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTk2MTczNDk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2MTczMjQ0CmR1IG1laW5zdCBkaWVzZSBrbGVpbmVuIGJ1bnRlbiBTbWFydGllcyBvZGVyIGRpZXNlIGF1Zmdlem9nZW5lbgpGbHVlc3NpZ2tlaXRlbj8KTmVlIGRhbmtlLCBkYXMgaGFiIGljaCBpbSBGZXJuc2VoZW4gamEgZ2VzZWhlbiwgd2FzIGRhcyBiZWkgZGVyIFNjaG51bGxpcGFyYWRlCmluIEJlcmxpbiBmdWVyIEF1c3dpcmt1bmdlbiBhdWYgZGllIGdhbnplbiBJcnJlbiBoYXR0ZS4uLgoKQW1hKiwgbWVpbnQgc293aWVzbyAod2Vpc2Ugbmlja2VuZCk6IFdlciBtdWRkZXQsIGJyYXVjaHQgc29uc3Qga2VpbmUgRHJvZ2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBJY2ggYmxhZXR0ZXIgaGllciBncmFkIHNvIC4uIHVuZCBtdXNzIGdyaW5zZW4gISA6KSAoVGVrdHVrbywgMjYuIEp1bCAyMDAxLCAyMDo1Nzo1NSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9OTk2MTczNzM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2MTczMjQ0Ckthbm4gbWFuIE11ZCBhbHMgRHJvZ2UgYmV6ZWljaG5lbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEljaCBibGFldHRlciBoaWVyIGdyYWQgc28gLi4gdW5kIG11c3MgZ3JpbnNlbiAhIDopIChHbG9pbnNvbiwgMjYuIEp1bCAyMDAxLCAyMDo1ODowNyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9OTk2MTczNzM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2MTczMjQ0CkRpZSBwaW5rZWxuIGF1Y2ggb2huZSBEcm9nZW4gaW4gZGVuIFRpZXJnYXJ0ZW4uCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBJY2ggYmxhZXR0ZXIgaGllciBncmFkIHNvIC4uIHVuZCBtdXNzIGdyaW5zZW4gISA6KSAoUm9sYW5kLCAyNi4gSnVsIDIwMDEsIDIxOjA2OjU1KToKfiMhIHJuPUdsb2luc29uIHJ0PTk5NjE3Mzg4NyByZz1zY2htYXJybgp+IyEgdGlkPTk5NjE3MzI0NApBbHNvIGRhcyB3YXMgbWljaCB6dW0gZ3JpbnNlbiBicmFjaHRlIHdhciAuLi4gOgoKZGFzIG9iaSBhdWYgZm9vYmFycyBGYmFuZCBnZXJ1ZmVuIGhhdHRlIGRhcyBLYWRpcyBuZSB3dXJzdCBpcyAuLi4uCgp1bmQgZ2VuYXUgaW4gZGllc2VuIG1vbSBhbHMgaWNoIGRhcyBsYXMgc2VpbmUgdG9kZXNtZWxkdW5nIGF1ZnRhdWNodGUgOikKCgpuYWd1dCBkYXMgbmFlY2hzdGUgbWFsIHNjaHJlaWIgaWNocyBnbGVpY2ggZHJ1bnRlcgoKcm9sYW5kIGdyaW5zdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEljaCBibGFldHRlciBoaWVyIGdyYWQgc28gLi4gdW5kIG11c3MgZ3JpbnNlbiAhIDopIChHcmltbWJvcm4sIDI2LiBKdWwgMjAwMSwgMjE6MTQ6NDgpOgp+IyEgcm49Um9sYW5kIHJ0PTk5NjE3NDQxNSByZz1zY2htYXJybgp+IyEgdGlkPTk5NjE3MzI0NApBZWgsIER1IHdlaXNzdCB3YXMgZWluIEFydGlrZWwgaW4gZGVyIG1wYSBpc3QsIGphPyBVbmQgZGFzcyBkYSBib2VzZSBMZXV0ZSwKZGllIERpY2ggdmVyd2lycmVuIHdvbGxlbiwgc293b2hsIGZydWZlIGFscyBhdWNoIEthbmFsbWVsZHVuZ2VuIHJlaW5zY2hyZWliZW4Ka29lbm5lbiwgZGFtaXQgRHUgZGVua2VuIHNvbGxzdCBkYXNzIGRhcyBnZXJhZGUgbGl2ZSBwYXNzaWVydD8gS2xlaW5lciBUaXAKdW50ZXIgS29sbGVnZW46IEZhbGwgbmljaHQgZHJhdWYgcmVpbi4KCkdkQSBlbXBmaWVobHQgKGpldHp0IGltIE1vbWVudCBpc3RzIG5vY2ggYWt0dWVsbCkgImFydGlrZWwgMTkiLiBIdWNoLCBlcgpzdGlyYnQgc2Nob24gd2llZGVyLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogSWNoIGJsYWV0dGVyIGhpZXIgZ3JhZCBzbyAuLiB1bmQgbXVzcyBncmluc2VuICEgOikgKFNvbG15ciwgMjYuIEp1bCAyMDAxLCAyMjozMzowOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTk2MTc0ODg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2MTczMjQ0CkVuZGxpY2gga29lbm50IElociBqZW1hbmQgYW5kZXJlbSBkZW4gVGl0ZWwgJ0Jla2xvcHB0ZXN0ZXIgTXBhUG9zdGVyJwp2ZXJsZWloZW4sLi4uIElDSCBCSU4gRlJFSSwgSlVDSFUsIElDSCBCSU4gRlJFSSA6KQoKU29sKiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSWNoIGJsYWV0dGVyIGhpZXIgZ3JhZCBzbyAuLiB1bmQgbXVzcyBncmluc2VuICEgOikgKENyb2Z0LCAyNi4gSnVsIDIwMDEsIDIzOjA0OjAxKToKfiMhIHJuPVRla3R1a28gcnQ9OTk2MTczODc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2MTczMjQ0Cj4gS2FubiBtYW4gTXVkIGFscyBEcm9nZSBiZXplaWNobmVuPwpEYSBlcyBzdWVjaHRpZyBtYWNoZW4ga2FubiwgYXVmIGplZGVuIEZhbGwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBJY2ggYmxhZXR0ZXIgaGllciBncmFkIHNvIC4uIHVuZCBtdXNzIGdyaW5zZW4gISA6KSAoQXRveiwgMjcuIEp1bCAyMDAxLCAxNjo0MjowNyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9OTk2MTczNzM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2MTczMjQ0Ck1laW5zdCBEdSBuaWNodCBlaGVyOgpXZXIgbXVkZGV0IGhhdCBrZWluIEdlbGQgbWVociBmdWVyIERyb2dlbj8KCkdydXNzLApBdG96CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWEhIChGb29iYXIsIDI4LiBKdWwgMjAwMSwgMDA6NDY6MTQpOgpIdXpydWNrIGhhZW1tZXJ0IGFuIGVpbmVtIEtyaWVnc2hhbXN0ZXIgaGVydW0uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBJY2ggYmxhZXR0ZXIgaGllciBncmFkIHNvIC4uIHVuZCBtdXNzIGdyaW5zZW4gISA6KSAoUm9sYW5kLCAyOC4gSnVsIDIwMDEsIDE4OjQyOjUyKToKfiMhIHJuPUdyaW1tYm9ybiBydD05OTYxNzQ4ODggcmc9c2NobWFycm4KfiMhIHRpZD05OTYxNzMyNDQKZ2xhdWJzdCBkdSBpY2ggYmluIHRvdGFsIG1pc2NodWNrZSBncmltYi4gPwoKZGVyIHdpdHogaXMgamEgYXVjaCBuZXQgZGFzIGRhcyB3ZXIgZ2VzY2hyaWVibiBoYXQuIHNvbmRlcm4gZGFzIGRlciB0eXAgZ2VuYXUKaW4gZGVtIG1vbSB2ZXJyZWNrdCBpcyB3aWUgaWNoIHNlaW5lbiBwcm9sbGlnZXMgdm9uIGYuIGdlcG9zdGV0ZXMgZmdydWZlCmdlbGVzZW4gaGFiIC4uLiAKCmRhcyBuYWVjaHN0ZSBtYWwgc2NocmVpYiBpY2ggbmUgNSBzZWl0ZXIgZXJsYWV1dGVydW5nIGRydW50ZXIgLi4uLiBkYW1pdCBpaHIKd2lzdCBkYXMgaWNoIG4gcG9zdCB2b24gbmVtIHJ1ZmUgdW50ZXJzY2hlaWRlbiBrYW5uCgoKUm9sYW5kIHZlcnp3ZWlmZWx0IGJlaSBzb2xsZW0gc3R1bXBmc2lubiAuLi4uICAKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBJY2ggYmxhZXR0ZXIgaGllciBncmFkIHNvIC4uIHVuZCBtdXNzIGdyaW5zZW4gISA6KSAoU29sbXlyLCAyOC4gSnVsIDIwMDEsIDE5OjM5OjMzKToKfiMhIHJuPVJvbGFuZCBydD05OTYzMzg1NzIgcmc9c2NobWFycm4KfiMhIHRpZD05OTYxNzMyNDQKSGksCgoxLiBoYWIgaWNoJ3MgYXVjaCBuaWNodCBzbyByZWNodCB2ZXJzdGFuZGVuCjIuIEZ1ZWdzdCBEdSBzbyB2aWVsZSBUeXBvcyBpbiBEZWluZSBBcnRpa2VsIGVpbiwgZGFzcyBkaWUga2F1bQogICBsZXNiYXIgc2luZC4KMy4gQmluIGljaCBqZXR6dCBkYXZvbiB1ZWJlcnpldWd0ICghKSwgZGFzcyBlcyBqZW1hbmRlbiBnaWJ0LCBkZXIKICAgbm9jaCBzY2hsaW1tZXJlIEFydGlrZWwgYWxzIGljaCBzY2hyZWlidCA6KQoKR3J1c3MKU29sbXlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBJY2ggYmxhZXR0ZXIgaGllciBncmFkIHNvIC4uIHVuZCBtdXNzIGdyaW5zZW4gISA6KSAoUGl0ZmFsbCwgMjguIEp1bCAyMDAxLCAxOTo0MDo0NSk6Cn4jISBybj1Tb2xteXIgcnQ9OTk2MzQxOTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2MTczMjQ0CnF1b2QgZXJhdCBkZW1vbnN0cmFuZHVtPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEljaCBibGFldHRlciBoaWVyIGdyYWQgc28gLi4gdW5kIG11c3MgZ3JpbnNlbiAhIDopIChWYXJsYXJpb24sIDI4LiBKdWwgMjAwMSwgMTk6NDE6MjMpOgp+IyEgcm49UGl0ZmFsbCBydD05OTYzNDIwNDUgcmc9c2NobWFycm4KfiMhIHRpZD05OTYxNzMyNDQKT2Igc2NobGltbWVyLCB3ZWlzcyBpY2ggbmljaHQsIFNvbG15ciwgc2lubmxvc2VyIGFiZXIgYXVmIGplZGVuIEZhbGwgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRpZSBSYWNoZSBkZXMga2xlaW5lbiBNYW5uZXMgOikgKEFtYXJ5bGxpcywgMjkuIEp1bCAyMDAxLCAwMjo1MDoxNik6CltNb2VyZGVyOkdlaXN0IGVpbmVyIFNpbmdzY2hhcl0gV2Vpc3N0IER1LCBFbGFpbmUsIGljaCBoYWJlIG51ciB2ZXJsb3Jlbiwgd2VpbApbTW9lcmRlcjpHZWlzdCBlaW5lciBTaW5nc2NoYXJdIER1IC4uLiBhZWgsIHdlaWwgaWNoIC4uLiBhZWggLi4uIHdlaWwgRHUKW01vZXJkZXI6R2Vpc3QgZWluZXIgU2luZ3NjaGFyXSBnZXdvbm5lbiBoYXN0LgpbTW9lcmRlcjpFbGFpbmVdIG11YWhhaGEgOikKW1RvZDpMYXJzXSBTaW5nZW5kZSB3ZWlzc2UgRW5nZWwgaGFiZW4gZ2VyYWRlIEVsYWluZSB1bWdlYnJhY2h0LgpbVG9kOlNpbmdlbmRlIHdlaXNzZSBFbmdlbCB3ZWluZW4gbmljaHQgdW0gamFtbWVybmRlIFN0b2VyZW5mcmllZGUuXQoKIE9obmUgV29ydGUgOikKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFwc3UgbGVidCBoaW50ZXJtIE1vbmQgOikgKFNvbG15ciwgMjkuIEp1bCAyMDAxLCAxMDozMzo1OSk6CiBEdSBydWZzdDogR3V1dXV1dXV0ZW4gTW9yZ2FhYWVuIDopCiBBcHN1IHJ1ZnQ6IGRhcyBoZWlzc3QgTW9yZ2FhYWVoaG4hIDstKQogRHUgcnVmc3Q6IEd1dXV1dXV1dGVuIEFhYWFhYmVlZWVlZWhobmQhIDo9KQogQXBzdSBydWZ0OiBsZWdhc3RoZW5pa2EhIDopCgogRGVpbiBGcmV1bmQgUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiBuYWJlbmQgbWFlZGVscwogRGVpbiBGcmV1bmQgUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiBrdXNjaGVsdm9yc2NobGFlZ2U/CgpTb2wqLCBub2UgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbm4gbWFuIExhbmdld2VpbGUgaGF0IChPbGxpLCAyOS4gSnVsIDIwMDEsIDIzOjAyOjI1KToKVm9uIEFzdWthOiBhbHNvIGlyZ2VuZHdpZSBsZWIgaWNoIG5vY2gKVm9uIFBpdGZhbGw6IDUKU2llYmVuc3RlaW4gcnVmdDogcm9iaW4KVm9uIFBpdGZhbGw6IDQKVm9uIFBpdGZhbGw6IDMKVm9uIEFzdWthOiBkYXMgZGF1ZXJ0IGphIHJpY2h0aWcKVm9uIFBpdGZhbGw6IDIKVm9uIFBpdGZhbGw6IDEKW1RvZDpMYXJzXSBFaW4gRHJhY2hlbm1hZWRjaGVuIGhhdCBnZXJhZGUgQXN1a2EgdW1nZWJyYWNodC4KW1RvZDpFaW4gRHJhY2hlbm1hZWRjaGVuXSBEdSAuLiBkdSAuLiBkdSBTY2hldXNhbCA6KSkKW1RvZDpBc3VrYV0gSWNoIGxhc3MgbWljaCBhdWZ3ZXJ0ZW4uClZvbiBQaXRmYWxsOiAqQlVNTSoKCgpPbGxpIC0gZmFzc3VuZ3Nsb3MgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEljaCBibGFldHRlciBoaWVyIGdyYWQgc28gLi4gdW5kIG11c3MgZ3JpbnNlbiAhIDopIChCb2luZywgMzAuIEp1bCAyMDAxLCAwODo1ODo1OSk6Cn4jISBybj1Sb2xhbmQgcnQ9OTk2MzM4NTcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2MTczMjQ0CkRlciBlaWdlbnRsaWNoIFdpdHogaXN0IGRvY2gsIGRhc3MgRHUgZGVuIFp1c2FtbWVuaGFuZyB6d2lzY2hlbiBLYWRpcwp1bmQgZWluZW0gR1JPU1NFTiBLcmlzdGFsbGRyYWNoZW4gbmljaHQgZXJrYW5udCBoYXN0LCBSb2xhbmQgLi4uIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEljaCBibGFldHRlciBoaWVyIGdyYWQgc28gLi4gdW5kIG11c3MgZ3JpbnNlbiAhIDopIChWYXJsYXJpb24sIDMwLiBKdWwgMjAwMSwgMTI6MDg6MzkpOgp+IyEgcm49Qm9pbmcgcnQ9OTk2NDc2MzM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2MTczMjQ0CkFsc28gZGVyIFp1c2FtbWVuaGFuZyB6d2lzY2hlbiBLYWRpcyB1bmQgZWluZW0gR1JPU1NFTiBLcmlzdGFsbGRyYWNoZW4gaXN0IG1pcgphdWNoIG5pY2h0IHdpcmtsaWNoIGtsYXJnZXdvcmRlbiAqZHVjayoKClZhcmwqLCBmcmVjaCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEljaCBibGFldHRlciBoaWVyIGdyYWQgc28gLi4gdW5kIG11c3MgZ3JpbnNlbiAhIDopIChLYWRpcywgMzAuIEp1bCAyMDAxLCAxMjozMDowOCk6CgpGRkZGQUFBQUFVVVVVQ0NDSEhISCAuLi4uIGlociBzZWlkIGphIGFsbGUgc29vb29vIGdlbWVpbiAuLi4gZGFmdWVyIHdlcmRldCBpaHIKenUgUGFydHkgYWxsZSBnZWZyZXNzZW4sIHNvICEhISA6KQoKRWluIHNjaG1vbGxlbmRlciBEcmFjaGUgbmFtZW5zIEthZGlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogSWNoIGJsYWV0dGVyIGhpZXIgZ3JhZCBzbyAuLiB1bmQgbXVzcyBncmluc2VuICEgOikgKFZhcmxhcmlvbiwgMzAuIEp1bCAyMDAxLCAxMjozMToyNCk6Cn4jISBybj1LYWRpcyBydD05OTY0ODkwMDggcmc9c2NobWFycm4KfiMhIHRpZD05OTY0ODkwMDgKKnB1dXVoaGgqIFdhcyBlaW4gR2x1ZWNrLCBkYXNzIGljaCBuaWNodCB6dXIgUGFydHkga29tbWUgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBJY2ggYmxhZXR0ZXIgaGllciBncmFkIHNvIC4uIHVuZCBtdXNzIGdyaW5zZW4gISA6KSAoUmFyZGlhbiwgMzAuIEp1bCAyMDAxLCAxNTo1MzoxMSk6Cn4jISBybj1LYWRpcyBydD05OTY0ODkwMDggcmc9c2NobWFycm4KfiMhIHRpZD05OTY0ODkwMDgKPiBkYWZ1ZXIgd2VyZGV0IGlociB6dSBQYXJ0eSBhbGxlIGdlZnJlc3Nlbiwgc28gISEhIDopClJlY2h0IHNvLCBLYWRpcyEgV2VyYnVuZyBtYWNodCBzaWNoIGltbWVyIGd1dCEgOikKCkdydXNzLAogIFJhci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBmdWVyIG5lIFN0aW1tdW5nLi4uIChab29rLCAzMC4gSnVsIDIwMDEsIDE2OjEyOjI2KToKRm9vYmFyIHJ1ZnQ6IFNUSU1NVU5HIQpGb29iYXIgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FzIGZ1ZXIgbmUgU3RpbW11bmcuLi4gKFZhcmxhcmlvbiwgMzAuIEp1bCAyMDAxLCAxNjoxMjo1Myk6Cn4jISBybj1ab29rIHJ0PTk5NjUwMjM0NiByZz1zY2htYXJybgp+IyEgdGlkPTk5NjUwMjM0NgpWaWVsbGVpY2h0IHdhcnMgaWhtIGRhbm4gZG9jaCB6dXZpZWwgU3RpbW11bmc/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogSWNoIGJsYWV0dGVyIGhpZXIgZ3JhZCBzbyAuLiB1bmQgbXVzcyBncmluc2VuICEgOikgKEhpZ2h0LCAzMC4gSnVsIDIwMDEsIDE2OjEyOjU3KToKfiMhIHJuPVJhcmRpYW4gcnQ9OTk2NTAxMTkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2NDg5MDA4Cm9laG0gaWNoIGRhY2h0ZSBkYXMgc29sbCBuIHdvY2hlbmVuZGUgZGF1ZXJuIHVuZCBuZXQgbmphaHJ6ZWhudCAqa3JhdHoqCgpoaWdodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEljaCBibGFldHRlciBoaWVyIGdyYWQgc28gLi4gdW5kIG11c3MgZ3JpbnNlbiAhIDopIChHbG9pbnNvbiwgMzAuIEp1bCAyMDAxLCAxNjo1MzoxNSk6Cn4jISBybj1LYWRpcyBydD05OTY0ODkwMDggcmc9c2NobWFycm4KfiMhIHRpZD05OTY0ODkwMDgKV2VubiBEdSB6dXIgUGFydHkgd2lya2xpY2ggRmV1ZXIgb2RlciB3ZW5pZ3N0ZW5zIHZpZWxlIEtyaXN0YWxsZSBzcHVja3N0IGJpc3QKRHUgYWxzIERyYWNoZSByZWhhYmlsaXRpZXJ0LgoKR2xvaW4oc29uKSwgYnJpbmd0IFNwaXJpdHVzIG1pdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHJhY2hlbiBhdWZ3ZXJ0ZW4uIChGb29iYXIsIDMwLiBKdWwgMjAwMSwgMjI6MzM6MTEpOgpIVUNILCBmYXN0IHdhZXJzdCBEdSBhdWYgTmFycyBnZXRyZXRlbi4KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVycGFjayEhISAoVmFybGFyaW9uLCAzMC4gSnVsIDIwMDEsIDIzOjAxOjA0KToKRHUgc2V0enQgZGljaCBhdWYgZWluZXMgZGVyIGt1c2NoZWxpZ2VuIFdvbGtlbnNvZmFzLCB3ZWxjaGVzIHNpY2gKc29mb3J0IGRlaW5lbSBLb2VycGVyIGFucGFzc3QuCkRpZXNlciBPcnQgdmVyaGVpc3N0IEVudHNwYW5udW5nIHB1ciwgaGllciBrYW5uIG1hbiB1bmdlc3RvZXJ0Cm1pdCBndXRlbiBGcmV1bmRlbiBlaW4gU2Nod2FldHpjaGVuIGhhbHRlbi4KTmF0dWVybGljaCBrYW5uIG1hbiBzaWNoIGF1Y2ggYXVmIGRlciBmbGF1c2NoaWctd2VpY2hlbiBXb2xrZQo6ZWlucm9sbGVuIHVuZCBlaW4gTmlja2VyY2hlbiBtYWNoZW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiB1bnRlbi4KW1RlYW06SGV1c2NobnVwZmVuXSBFaW5lIHplcmZldHp0ZSBNdXBmZWwgKGFuIGRpZSBXYW5kIGdlbmFnZWx0KS4KW1RlYW06SGV1c2NobnVwZmVuXSBFaW5lIHplcmZldHp0ZSBIb3NlIChhbiBkaWUgV2FuZCBnZW5hZ2VsdCkuCgpWYXJsKiwga29wZnNjaHl0dGVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZCB3aWVkZXIgZWlubWFsIHp1IHNwYWV0Li4uIChBbWFyeWxsaXMsIDMwLiBKdWwgMjAwMSwgMjM6MDU6MjQpOgpbVG9kOkxhcnNdIEVpbiBNb2VuY2ggZGVzIGR1bmtsZW4gT3JkZW5zIGhhdCBnZXJhZGUgTGlhZmFyIHVtZ2VicmFjaHQuCkxpYWZhciBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgoKQW1hKiwgZmllcyBncmluc2VuZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWx0IGFiZXIgaW1tZXIgd2llZGVyIGd1dCA6KSAoVGFyemFuLCAzMS4gSnVsIDIwMDEsIDAwOjM4OjU0KToKIE1hZXhjaGVuOlplcGh5ciBEQVMgd2FyIEVyemllaHVuZyA7KQpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIDopIChBaGFiLCAzMS4gSnVsIDIwMDEsIDIwOjQ1OjA2KToKRGVpbiBGcmV1bmQgUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiByZXcKW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbCBoYXQgZ2VyYWRlIFBpdGZhbGwgdW1nZWJyYWNodC4KW1RvZDpFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbF0gUGZmZmZmZmZmZmZmdC4uLi4uLi5QTFVNUFMhCltUb2Q6UGl0ZmFsbF0gRGllc2VuIFRvZCB3aWRtZSBpY2ggZGVyIEFrdGlvbi4gIlN0ZXJiZW4gZnVlciBlaW4gYW5zdGFlbmRpZ2VzCltUb2Q6UGl0ZmFsbF0gU2Nod2VydCIKCkdpYnRzIF9kb3J0XyBnZXNjaGVpdGUgU2Nod2VydGVyPwoKQWhhYiwgb2huZSBTY2hlcmUsIG5pY2h0cyBzY2huZWlkZW5kIHVuZCBuaWNodHMgdm9uIFNjaHdlcnRlcm4gdmVyc3RlaGVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFucGFzc3VuZyBFbGVtZW50YXJzY2h3ZXJ0Ly1zY2hpbGQgKFBhZHJlaWMsICAxLiBBdWcgMjAwMSwgMTI6MjA6NDkpOgp+IyEgb249VGVycm9yaXN0IG90PTk5NjY2MTIwOSBvZz1iYWxhbmNlCn4jISBybj1QYWRyZWljIHJ0PTk5NjY2MTAzNiByZz1iYWxhbmNlCn4jISB0aWQ9OTk2NjE4OTk2ClNpY2hlciBkYXMgRGVpbmUgR2lsZGUgc28gd2llIHNpZSBnZXBsYW50IHdhciBqZW1hbHMgZWluZSBDaGFuY2UgaGF0dGUKenVnZWxhc3NlbiB6dSB3ZXJkZW4/IDopCgpURVJST1IqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBbnBhc3N1bmcgRWxlbWVudGFyc2Nod2VydC8tc2NoaWxkIChQYWRyZWljLCAgMS4gQXVnIDIwMDEsIDEyOjIwOjUxKToKfiMhIG9uPVBhZHJlaWMgb3Q9OTk2NjYxMjM1IG9nPWJhbGFuY2UKfiMhIHJuPVRlcnJvcmlzdCBydD05OTY2NjEyMDkgcmc9YmFsYW5jZQp+IyEgdGlkPTk5NjYxODk5NgpfR2Fuel8gc2ljaGVyIQoKUGFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVlciBab29rIDopIChHcmltbWJvcm4sICAxLiBBdWcgMjAwMSwgMTI6MzA6MjgpOgp+IyEgb249UGFkcmVpYyBvdD05OTY2NjE2OTYgb2c9bWVnYXNjaG1hcnJuCn4jISBvbj1UZXJyb3Jpc3Qgb3Q9OTk2NjYxNjU1IG9nPWJhbGFuY2UKTmVlZSBhbHNvIHNvIGthbm4gZGFzIG5ldCB3ZWl0ZXJnZWhlbi4KTWFuIGFyYmVpdGV0IEphaHJlbGFuZyBkYWRyYW4gZGFzIG1hbiBlbmRsaWNoIG1hbCB3YXMgdW1oYXVlbiBrYW5uLCB1bmQgZGFubj8KSXJnZW5kZWlucGFhciBoZXJnZWxhdWZlbmUgZGllIG1laW5lbiBzaWUgc2VpZW4gZGllIFRvcHNlaGVyIGRlciBUb3BzZWhlcgp2ZXJzYXVlbiBhbGxlcy4KTnVyIHdlaWwgc2llIHNlbGJzdCBuZXRtYWwgaW4gZGllIE5hZWhlIHZvbiBndXRlbiBPYmpla3RlbiBrb21tZW4sIG11ZXNzZW4gd2lyCmRpZSBkaWVzZSBpbiAyIFNla3VuZGVuIGhvbGVuIGRhcnVudGVyIGxlaWRlbgpBYmVyIGRhcyBpc3QgamEgd2llZGVyIFR5cGlzY2ggOykKClRFUlJPUioKClAuUy46IFpvb2sgc2NoYWx0IGRhcyB6d2luZ2UgYXVzISA6KQpQLlAuUy46IEhpZXIgZGFyZnN0ZSB2ZXJsZWdlbiBQYWRyZWljIDopIE5hY2ggTXVlbGwgKmdnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZ1ZXIgWm9vayA6KSAoR3JpbW1ib3JuLCAgMS4gQXVnIDIwMDEsIDEyOjMwOjMyKToKfiMhIG9uPVBhZHJlaWMgb3Q9OTk2NjYxNzI0IG9nPW1lZ2FzY2htYXJybgp+IyEgcm49UGFkcmVpYyBydD05OTY2NjE2OTYgcmc9bWVnYXNjaG1hcnJuCn4jISB0aWQ9OTk2NjYxNjk2CkppcGllZWUuLi4gZGFyZiBpY2ggYXVjaCBtYWwgd2FzIGhpZXJoaW4gdmVybGVnZW4uLi4gOm8pCgpQYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVlciBab29rIDopIChCb2luZywgIDEuIEF1ZyAyMDAxLCAxMzoyMTo1NCk6Cn4jISBvbj1ab29rIG90PTk5NjY2MTcxNCBvZz1iYWxhbmNlCn4jISBybj1UZXJyb3Jpc3QgcnQ9OTk2NjYxNjU1IHJnPWJhbGFuY2UKfiMhIHRpZD05OTY2NjE2NTUKSGV5LCBuaWNodCBuYWNoIE11ZWxsLiBFaW4gbWlyIGdld2lkbWV0ZXIgQXJ0aWtlbCBoYXQgZGVyIApBbGxnZW1laW5oZWl0IHp1ciBWZXJmdWVndW5nIHp1IHN0ZWhlbi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBbnBhc3N1bmcgRWxlbWVudGFyc2Nod2VydC8tc2NoaWxkIChNdXBmZWwsICAxLiBBdWcgMjAwMSwgMTQ6Mzc6MTcpOgp+IyEgcm49UGFkcmVpYyBydD05OTY2NjEyNDkgcmc9c2NobWFycm4KfiMhIHRpZD05OTY2MTg5OTYKQWJlciBrbGFyLi4uLgoKLW11cGZlbC0KUFMuOiBlciBoYXR0ZSBuYXR1ZXJsaWNoIGVpbmthbGt1bGllcnQsIGJpcyBkYWhpbiBFTSBHaWxkZW5iYWxhbmNlIHp1IHNlaW4KKG1pbmRlc3RlbnMgOyksIGRhcnVtIHNvbGx0ZSBkaWUgR2lsZGUga2VpbiBQcm9ibGVtIHNlaW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBBbnBhc3N1bmcgRWxlbWVudGFyc2Nod2VydC8tc2NoaWxkIChHcmltbWJvcm4sICAxLiBBdWcgMjAwMSwgMjA6Mjc6MjkpOgp+IyEgcm49TXVwZmVsIHJ0PTk5NjY5MDM4NSByZz1iYWxhbmNlCn4jISB0aWQ9OTk2NjE4OTk2CkR1IGthbm5zdCBQX1JPUkFURSBpbnRlZ3JpZXJlbiB3byBEdSB3aWxsc3QsIGFiZXIgZGFzIGJyaW5ndCBuYXR1ZXJsaWNoIG5peC4KOi0pCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFN0YXRpIGluIEJlcmxpbiAoR3JpbW1ib3JuLCAgMS4gQXVnIDIwMDEsIDIxOjE0OjQ2KToKfiMhIHJuPUh1bW5pIHJ0PTk5NjY5MzIwMSByZz10cmVmZmVuCn4jISB0aWQ9OTk2NjgxNDQzCi4uLmFiZXIgaW4gZGVyIHJpY2h0aWdlbiBaZWl0dW5nLCBpbnNvZmVybiBwYXNzdHMgc2Nob24uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRm9vYmFyLCAgMi4gQXVnIDIwMDEsIDIwOjE1OjQwKToKW1NlaGVyOkFwc3VdIGFyZ2wgc2V0enQgZGVyIHNlZWJhZXIgaW4gdmwgZG9lIHZvcnNpY2h0IHJ1bnRlcj8KW1NlaGVyOkFzdGVyb3RoXSBqZXBwCltTZWhlcjpWYXJkaW9uXSBqYSA6KQpbQWJlbnRldWVyOlNldGhhaV0ga2FubiBuaWNoIG1hbCBzY2huZWxsIGVpbmVyIGFsZXhpcyBhYmxlbmtlbjopCltUb2Q6TGFyc10gRWluIFNlZWJhZXIgaGF0IGdlcmFkZSBBcHN1IHVtZ2VicmFjaHQuCltUb2Q6RWluIFNlZWJhZXJdIFdlciBzdG9lcnQgbWVpbmVuIFNjaGxhZj8KW1RvZDpFaW4gQWxjaGVtaXN0XSBKZXR6dCBtdXNzIGljaCB3aWVkZXIgZGllIFJlc3RlIHdlZ3JhZXVtZW4hCltUb2Q6RWluIFNlZWJhZXJdIEphLCBzb3JyeS4uLmFiZXIgaWNoIHdhciBuaWNodCBhbGxlaW4gU2NodWxkISAgICAgICAgICAgICAgIAoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUcmV1ZSBNaXRzdHJlaXRlciAoR29yb2csICAzLiBBdWcgMjAwMSwgMDA6MDc6MzkpOgpEZXIgR2Vpc3QgZXJncmVpZnQgQmVzaXR6IHZvbiBEaXIuCkRlciBHZWlzdCB2ZXJmZWhsdCBEaWNoLiAKRHUgc2NobGFlZ3N0IERpY2ggc2VsYnN0LiAKRWluIEFiYmlsZCBHb3JvZ3MgbWFjaHQgZWluIGJlbGVpZGlndGVzIEdlc2ljaHQuIApHb3JvZ3MgU2NodXR6ZW5nZWwgbWFjaHQgZWluIGJlbGVpZGlndGVzIEdlc2ljaHQuIAoKRGFuYWNoIHNpbmQgc2llIGRhbm4gYWJnZWhhdW4sIGhhZXR0ZSBlY2h0IG5pY2h0IHNlaW4gbXVlc3NlbiAoOwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVm9yc2ljaHQgdm9yIEtsZWludGVpbGVuIChDYXR3ZWF6bGUsICAzLiBBdWcgMjAwMSwgMTM6MDE6MzgpOgpLaW5kZXIgdmVyc2NobHVja2VuIE1pbmVudGVpbGU6IFJ1ZWNrcnVmYWt0aW9uIGFtZXJpa2FuaXNjaGVyIExhbmRtaW5lbiAKQk9TVE9OIC0gRGFzIFVudGVybmVobWVuIERJR0dFUiBMVEQsIGZ1ZWhyZW5kZXIgSGVyc3RlbGxlciB2b24gTGFuZG1pbmVuLCBtdXNzCmF1ZiBBbnRyYWcgZGVzIGFtZXJpa2FuaXNjaGVuIFZlcmJyYXVjaGVyYW53YWx0ZXMgUmFscGggTmFkZXIgc2FlbXRsaWNoZQpwcm9kdXppZXJ0ZW4gdW5kIHZlcmxlZ3RlbiBTcHJlbmdrb2VycGVyIGVpbmVyIFVlYmVycHJ1ZWZ1bmcgdW50ZXJ6aWVoZW4uICAgCldpZSBqZXR6dCBiZWthbm50IHd1cmRlLCBiZXNpdHplbiBESUdHRVItTWluZW4gYmV3ZWdsaWNoZSBUZWlsZSwgZGllCktsZWlua2luZGVyIHZlcnNjaGx1Y2tlbiBrb2VubmVuLiBEcmVpIEVsdGVybnBhYXJlLCBhdXMgZGVtIEtvc292bywgS2FtYm9kc2NoYQp1bmQgQW5nb2xhLCBlcnN0YXR0ZXRlbiBBbnplaWdlIGdlZ2VuIGRhcyBVbnRlcm5laG1lbi4gSWhyZSBLaW5kZXIKdmVyc2NobHVja3RlbiBUZWlsZSBkZXIgTGFuZG1pbmUsIGJldm9yIGRpZXNlIGV4cGxvZGllcnRlLiAgR3J1bmRsYWdlIGRlcgpBbnplaWdlLCBESUdHRVIgaGF0dGUgdmVyZ2Vzc2VuIGVudHNwcmVjaGVuZGUgV2FybnVuZ2VuIGFuIGRlbiBNaW5lbgphbnp1YnJpbmdlbiwgZGllIGF1ZiBiZXdlZ2xpY2hlIFRlaWxlIGhpbndlaXNlbiwgZGllIHZvbiBLaW5kZXJuIGdlc2NobHVja3QKd2VyZGVuIGtvZW5uZW4uICBVbnRlcm5laG1lbnNzcHJlY2hlciBQZXRlciBTbmlkZXIgd2Vpc3QgZGFyYXVmaGluLCBkYXNzIG51cgpkaWUgUGxhc3Rpa21pbmUgIkp1bXBpbmcgSmFjayBGbGFzaCIgdm9tIFJ1ZWNrcnVmIGJldHJvZmZlbiBpc3QuIFNpZSBiZXNpdHp0CmFscyBlaW56aWdlIGRlciBESUdHRVItTWluZW4gVGVpbGUsIGRpZSBmdWVyIGVpbiBLaW5kIGdlZmFlaHJsaWNoIHNlaW4Ka29lbm5lbi4gU25pZGVyOiAiV2lyIGJlZGF1ZXJuIGRpZXNlIFZvcmZhZWxsZSBuYXR1ZXJsaWNoIHNlaHIuIFdpciBrb2VubmVuCmFiZXIgdmVyc2ljaGVybiwgZGFzcyB1bnNlcmUgYW5kZXJlbiBNaW5lbi1Qcm9kdWt0ZSwgd2llICJCcmFpbmxlc3MiIG9kZXIKIkFuYWwgSW50cnVkZXIiLCBkYXZvbiBuaWNodCBiZXRyb2ZmZW4gc2luZC4gQW4gaWhuZW4gYmVmaW5kZW4gc2ljaCBrZWluZQpUZWlsZSwgZGllIGVpbmUgR2VmYWhyIGRhcnN0ZWxsZW4uIiBTbmlkZXIgbGFjaGVuZDogIkF1c3NlciBzaWUgZXhwbG9kaWVyZW4gaW4KZGVuIEhhZW5kZW4gZGVyIGtsZWluZW4gUmFja2VyLiIgIERJR0dFUiBob2ZmdCBhdWYgZWluZSBndWV0bGljaGUgRWluaWd1bmcgaW4KZGVtIFJlY2h0c3N0cmVpdC4gQWxzIEF1c2dsZWljaCBmdWVyIGRlbiBWZXJsdXN0IGRlcyBLaW5kZXMgd2lsbCBESUdHRVIgZGVuCkVsdGVybiBqZSBlaW5lbiBHZXNjaGVua2tvcmIsIGltIFdlcnQgdm9uIDksOTkgRG9sbGFyLCB6dWtvbW1lbiBsYXNzZW4uClNjaHdpZXJpZ2VyIGdlc3RhbHRldCBzaWNoIGRpZSBSdWVja3J1ZmFrdGlvbi4gVmllbGUgS3VuZGVuIHdlaWdlcm4gc2ljaCwgZGllCk1pbmVuIHdpZWRlciBhdXN6dWdyYWJlbiB1bmQgYW4gZGFzIFdlcmsgenVydWVja3p1c2NoaWNrZW4uICBEYXMgVW50ZXJuZWhtZW4KaXN0IGluIEdlc3ByYWVjaGVuIG1pdCBkZW0gYW1lcmlrYW5pc2NoZW4gSnVzdGl6bWluaXN0ZXJpdW0sIHVtIGRlbiBSdWVja3J1ZgphYnp1d2VuZGVuLiBHZXBsYW50IGlzdCBzdGF0dGRlc3NlbiBhbiBkZW4gTWluZW4gQXVma2xlYmVyIGluIGRlcgpMYW5kZXNzcHJhY2hlIGFuenVicmluZ2VuLCBkaWUgRWx0ZXJuIHVuZCBLaW5kZXIgZGF2b3Igd2FybmVuLCBUZWlsZSBkZXIgTWluZQp6dSB2ZXJzY2hsdWNrZW4uCi0tLS0tClF1ZWxsZTogd3d3Lnp5bi5kZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZvcnNpY2h0IHZvciBLbGVpbnRlaWxlbiAoV3VyemVsLCAgMy4gQXVnIDIwMDEsIDEzOjA1OjAwKToKfiMhIHJuPUNhdHdlYXpsZSBydD05OTY4MzY0OTggcmc9c2NobWFycm4KfiMhIHRpZD05OTY4MzY0OTgKKndhZWx6KiBkaWUgc3Bpbm5lbiwgZGllIGFtaXMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVm9yc2ljaHQgdm9yIEtsZWludGVpbGVuIChHcmltbWJvcm4sICAzLiBBdWcgMjAwMSwgMTM6MDc6MzApOgp+IyEgcm49V3VyemVsIHJ0PTk5NjgzNjcwMCByZz1zY2htYXJybgp+IyEgdGlkPTk5NjgzNjQ5OApBaCwgdW5kIFp5biEga2VubnQgZXIgYXVjaCBuaWNodC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBWb3JzaWNodCB2b3IgS2xlaW50ZWlsZW4gKENhdHdlYXpsZSwgIDMuIEF1ZyAyMDAxLCAxMzowOToxMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTk2ODM2ODUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2ODM2NDk4CkRhYmVpIGhhYiBpY2hzIGV4dHJhIGRhYmVpZ2VzY2hyaWViZW4gOikKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVm9yc2ljaHQgdm9yIEtsZWludGVpbGVuIChXdXJ6ZWwsICAzLiBBdWcgMjAwMSwgMTM6MTA6MzkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5NjgzNjg1MCByZz1zY2htYXJybgp+IyEgdGlkPTk5NjgzNjQ5OApuZWluLiBsZWlkZXIgaGF0IGVpbiB0YWcgc2VsYnN0IHVudGVyIGVpbnNjaGx1c3MgZGVyIG5hY2h0IG51ciAyNCBzdHVuZGVuLApkYXZvbiBnZWhlbiAxNCBzdHVuZGVuIGZ1ZXIgYXJiZWl0IGRyYXVmLCAyIHN0dW5kZW4gZmFocnplaXQsCjIgc3R1bmRlbiBmdWVyIGdydW5kc2FldHpsaWNoIGJpb2xvZ2lzY2hlIGZ1bmt0aW9uZW4gdW5kIDYgc3R1bmRlbiBzY2hsYWYuCndpZSBzb2xsdGUgaWNoIGRhIG5vY2ggd2FzIGxlc2VuIGtvZW5uZW4/Cgp3dXJ6ZWwgbXVybWVsdCB3YXMgdm9uICJzdHVkZW50ZW5wYWNrIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVm9yc2ljaHQgdm9yIEtsZWludGVpbGVuIChHcmltbWJvcm4sICAzLiBBdWcgMjAwMSwgMTM6MTI6MjQpOgp+IyEgcm49V3VyemVsIHJ0PTk5NjgzNzAzOSByZz1zY2htYXJybgp+IyEgdGlkPTk5NjgzNjQ5OApNaXQgRGVpbmVtIEdlbXVybWVsIGxpZWdzdCBEdSBuaWNodCB3aXJrbGljaCAxMDAlaWcgcmljaHRpZy4uLgpVbmQgd2VubiBEdSBNUEEgbGVzZW4ga2FubnN0IGthbm5zdCBEdSBhdWNoIFp5biEgbGVzZW4uIERhcyBiaWxkZXQgYXVmIGplZGVuCkZhbGwgbWVociBhbHMgZGllIEZBWi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVm9yc2ljaHQgdm9yIEtsZWludGVpbGVuIChCb2luZywgIDMuIEF1ZyAyMDAxLCAxMzoxNTo0Mik6Cn4jISBybj1XdXJ6ZWwgcnQ9OTk2ODM3MDM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2ODM2NDk4ClNjaGxhZiBpc3Qga2VpbmUgZ3J1bmRzYWV0emxpY2hlIGJpb2xvZ2lzY2hlIEZ1bmt0aW9uPyA6KQpBdXNzZXJkZW06IFN1Y2ggRGlyIG5lbiBuZXVlbiBKb2IsIHNvbnN0IGhhc3QgRHUgamEgZ2FyIGtlaW5lIFplaXQsIGRpZQpnYW56ZSBLb2hsZSBhdXN6dWdlYmVuIC4uLiA7KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBWb3JzaWNodCB2b3IgS2xlaW50ZWlsZW4gKEdyaW1tYm9ybiwgIDMuIEF1ZyAyMDAxLCAxMzoxNjoyNSk6Cn4jISBybj1Cb2luZyBydD05OTY4MzczNDIgcmc9c2NobWFycm4KfiMhIHRpZD05OTY4MzY0OTgKTmVpbiwgU2NobGFmIGRlciB1ZWJlciAyaCBoaW5hdXNnZWh0IGlzdCBrZWluZSBncnVuZHNhZXR6bGljaCBiaW9sb2dpc2NoZQpGdW5rdGlvbiBzb25kZXJuIEx1eHVzLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBWb3JzaWNodCB2b3IgS2xlaW50ZWlsZW4gKFd1cnplbCwgIDMuIEF1ZyAyMDAxLCAxMzoxNzowNyk6Cn4jISBybj1Cb2luZyBydD05OTY4MzczNDIgcmc9c2NobWFycm4KfiMhIHRpZD05OTY4MzY0OTgKbmV1ZSBqb2JzIHRlbmRpZXJlbiBpcmdlbmR3aWUgaW1tZXIgZGF6dSwgbm9jaCBtZWhyIHplaXQKaW4gYW5zcHJ1Y2ggenUgbmVobWVuIDopCmRpZSBrb2hsZSBiZWtvbW10IGVoIGRhcyBmaW5hbnphbXQsIGRhIG1hY2ggaWNoIG1pciBnYXIga2VpbmUgaWxsdXNpb25lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFZvcnNpY2h0IHZvciBLbGVpbnRlaWxlbiAoS2FyaXMsICAzLiBBdWcgMjAwMSwgMTM6MTk6MTUpOgp+IyEgcm49V3VyemVsIHJ0PTk5NjgzNzQyNyByZz1zY2htYXJybgp+IyEgdGlkPTk5NjgzNjQ5OApBcmJlaXQgbXVzcyBqYSByaWNodGlnIFNwYXNzIG1hY2hlbiB1bmQgZXJmdWVsbGVuZCBzZWluIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVm9yc2ljaHQgdm9yIEtsZWludGVpbGVuIChHcmltbWJvcm4sICAzLiBBdWcgMjAwMSwgMTM6MjA6MDkpOgp+IyEgcm49S2FyaXMgcnQ9OTk2ODM3NTU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2ODM2NDk4Ck5hamEsIHdlciBzaWNoIGFscyBXb3JrYWhvbGljIHdvaGwgZnVlaGx0Li4uICpzY2h1bHRlcnp1Y2sqCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNoYW9zIGtvbnRyYSBad2VyZyAoUHVrLCAgMy4gQXVnIDIwMDEsIDIxOjM0OjM0KToKRGVpbiBGcmV1bmQgVmFybGFyaW9uIHRlaWx0IERpciBtaXQ6IGJpdHRlIG1hbCBlaW4gYmVsaWViaWdlciB6d2VyZyBiZWkgZnVzcwpEZWluIEZyZXVuZCBWYXJsYXJpb24gdGVpbHQgRGlyIG1pdDogOikKTWF0aXMgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKClB1awoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNYWdpZXIgdW5kIGlocmUgS2luZGVyIC4uLiAoQW5hdG9sLCAgNC4gQXVnIDIwMDEsIDAwOjQwOjQzKToKfiMhIHJuPVBhdHJ5biBydD05OTY4NzgzOTQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTk5Njg3ODE5NQpVbmQ/CkhhdHRlc3QgRHU/CgpBbmF0b2wgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1hZ2llciB1bmQgaWhyZSBLaW5kZXIgLi4uIChQYXRyeW4sICA0LiBBdWcgMjAwMSwgMDA6NDI6MTMpOgp+IyEgcm49QW5hdG9sIHJ0PTk5Njg3ODQ0MyByZz1zY2htYXJybgp+IyEgdGlkPTk5Njg3ODE5NQppY2ggYmluIG1hZ2llcixpY2ggYnJhdWNoIGRhcyBuaWNoIG1laHIgOykKCi0tIApwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1hZ2llciB1bmQgaWhyZSBLaW5kZXIgLi4uIChHcmltbWJvcm4sICA0LiBBdWcgMjAwMSwgMDA6NDI6MzcpOgp+IyEgcm49UGF0cnluIHJ0PTk5Njg3ODUzMyByZz1zY2htYXJybgp+IyEgdGlkPTk5Njg3ODE5NQpKYWphLCBlcyBnaWJ0IExldXRlIGRpZSB3ZXJkZW4gZ2VyYWRlenUgenUgTWFnaWVybiBnZWJvcmVuLi4uCgpHZEEgbmlja3Qgd2Vpc2UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1hZ2llciB1bmQgaWhyZSBLaW5kZXIgLi4uIChQYXRyeW4sICA0LiBBdWcgMjAwMSwgMDA6NDM6MjcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5Njg3ODU1NyByZz1zY2htYXJybgp+IyEgdGlkPTk5Njg3ODE5NQpkdSBoYXN0IGRvY2ggaGV1dGUgbm9jaCBkYW1pdCBnZXByYWhsdCwgZXMgc2Nob24gOTQgaGludGVyIGRpY2ggZ2VicmFjaHQKenUgaGFiZW4gOykKCi0tIApwYXRyeW4sIHNjaG11bnplbHQgd2Vpc2UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE1hZ2llciB1bmQgaWhyZSBLaW5kZXIgLi4uIChHcmltbWJvcm4sICA0LiBBdWcgMjAwMSwgMDA6NDY6NTApOgp+IyEgcm49UGF0cnluIHJ0PTk5Njg3ODYwNyByZz1zY2htYXJybgp+IyEgdGlkPTk5Njg3ODE5NQouLi53YXMgd2llZGVydW0gbGFuZ2UsIGxhbmdlIG5hY2ggbWVpbmVyIEdlYnVydCB3YXIuCkF1c3NlcmRlbSBoYWx0ZW4gaGllciBtYXNzZ2VibGljaGUgTWFnaWVyIG5pY2h0cyBkYXZvbiB3ZW5uIEluZm9ybWF0aW9uIHZvbgpNYWdpZXJxdWVsbGVuICh3aWUgei5CLiBtcnVmKSBpbiBTcGllbGVycnVicmlrZW4gZGVyIHBtYSBhdWZ0YXVjaGVuLiBNaXIgaXN0cwpqYSBlZ2FsLCBhYmVyIERpY2gga3VlbW1lcnQgc293YXMgZG9jaCBzaWNoZXIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1hZ2llciB1bmQgaWhyZSBLaW5kZXIgLi4uIChMaWFyYSwgIDQuIEF1ZyAyMDAxLCAwMDo0NzowNCk6Cn4jISBybj1BbmF0b2wgcnQ9OTk2ODc4NDQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2ODc4MTk1CkVyIHdhciBpbiBUb21iIFJhaWRlciwgemFlaGx0IGRhcyBhdWNoPyA7LSkKCkxaWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTWFnaWVyIHVuZCBpaHJlIEtpbmRlciAuLi4gKFBhdHJ5biwgIDQuIEF1ZyAyMDAxLCAwMDo0ODoyNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTk2ODc4ODEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2ODc4MTk1CnNvcnJ5LCBpY2ggaGF0dGUgZ3JhZCBtYWwgbm9jaCBpbiBlcmlubmVydW5nIGRhc3MgaWhyIGRhcnVlYmVyIGdlcmVkZXQgaGFidAp1bmQgd2FyIG1pciB3ZWRlciB1ZWJlciBkYXMgZGF0dW0gc2ljaGVyIHVuZCBzY2hvbiBnYXIgbmljaCB1ZWJlciBkZW4KY2hhbm5lbC4uLm1pciBpc3QgZGFzIGphIGVnYWwsIGFiZXIgZGlyIG9mZmVuc2ljaHRsaWNoIG5pY2gsIHVuZCBkYW1pdApzb3JyeS4KCi0tIApwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnZlcnNjaGllYnVuZyBpbSB6ZWl0Z2VmdWVnZT8gKExpYWZhciwgIDQuIEF1ZyAyMDAxLCAyMjo1OTozNCk6Cj5ob2xlIHNjaHVoZSBhYgpFaW4gU2NobmVpZGVyZ2VoaWxmZSBicmluZ3QgZnJpc2NoIGFuZ2VmZXJ0aWd0ZSBLbGVpZGVyIGhlcmVpbiB1bmQKdmVyc2Nod2luZGV0IHdpZWRlciBpbiBkZXIgQXJiZWl0c3N0dWJlLgpEZXIgU2NobmVpZGVyIHNhZ3Q6IEFuIGRlbiB3YXJtZW4gU29ja2VuIHdpcmQgbW9tZW50YW4gbm9jaCBnZWFyYmVpdGV0LgpEZXIgU2NobmVpZGVyIHNhZ3Q6IFZlcnN1Y2hlbiBTaWUgZXMgZG9jaCBiaXR0ZSBpbiAtMTY2MTU5NjcgTWludXRlbiB1bmQgLTMzCkRlciBTY2huZWlkZXIgc2FndDogU2VrdW5kZW4gbm9jaCBlaW5tYWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2VoZW5zd2VydCAoR3JpbW1ib3JuLCAgNS4gQXVnIDIwMDEsIDE4OjUzOjEyKToKfiMhIHJuPUdyaW1tYm9ybiBydD05OTcwMzAzNDcgcmc9d3d3Cn4jISB0aWQ9OTk3MDMwMzQ3CkVtcGZlaGxlbnN3ZXJ0IGlzdCBhdWNoIAp3d3cub3J0b2dycGhpZS1hYmVycmljaHRpZy5kZQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNlaGVuc3dlcnQgKE1vbnRhbnVzLCAgNS4gQXVnIDIwMDEsIDE5OjA0OjA3KToKfiMhIHJuPUdyaW1tYm9ybiBydD05OTcwMzAzOTIgcmc9c2NobWFycm4KfiMhIHRpZD05OTcwMzAzNDcKV2VubiBEdSBpbiBkZXIgZmFsc2NoZW4gUnVicmlrIHBvc3Rlc3QsIGlzc2VzIGphIGtsYXIsIGRhc3MgdWViZXJzIFdPY2hlbmVuZGUKbml4IG1lZ2FzY2htYXJybmlnZXMgenVzYW1tZW4ga29tbXQuIDstKQoKS29ucmFkIER1ZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGFlaD8gKEtlbGx5YnVuZHksICA1LiBBdWcgMjAwMSwgMjE6MDY6MjMpOgpEdSBzcGVuZGllcnN0IElya2l0aXMgZXR3YXMuCkFscyBOaWNodC1NaXRnbGllZCBkZXIgR2lsZGUgZGVzIENoYW9zIGhhZXR0ZXN0IER1IGlociBzdGFlcmtzdGVzIEdlYnJhZXUKYmVzc2VyIG5pY2h0IGJlc3RlbGx0LiBEaXIgZHJlaHQgc2ljaCBkZXIgTWFnZW4gdW0gdW5kIG1pdCBlaW5lbSBTY2hsYWcgd2lyZApEaXIgZnVyY2h0YmFyIHVlYmVsLgoKRHVtcGZiYWNrZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG5nbCAoUHVrLCAgNS4gQXVnIDIwMDEsIDIxOjE3OjMxKToKRHUgLS0tLS0tLS0tLWRlbiBPcmsuLS0tLS0tLS0tLS0tLS0tPiBQVUxWRVJJU0lFUlQKRGVpbmUgU3RpZWZlbCBrb21tdCBiZWkgZGVtIFNjaGxhZyB6dSBTY2hhZGVuLgoKSWNoIHd1c3N0ZSBuaW1tZXIgZGFzIGRpZSBNYWdpZSBpbiBkZW4gRnVlc3NlbiBsaWVndC4KVW5kIG1pdCBlaW56YWhsIHVuZCBtZWhyemFobC4uLiBqYWphLCBpc3QgaGFsdCBzbyBuZSBzYWNoZSA6KQoKUHVrLCBzZXVmemVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhuZ2wgKEhpZ2h0LCAgNS4gQXVnIDIwMDEsIDIyOjQ0OjA1KToKfiMhIHJuPVB1ayBydD05OTcwMzkwNTEgcmc9c2NobWFycm4KfiMhIHRpZD05OTcwMzkwNTEKKmdyaW4qIHNjaGFkZW5zYXJ0IGdlc3RhbmsgaXMgZ2FueiBuZXUgdW5kIGtvbW10IHZvbiBkZW4gZnVlc3NlbiAuLi4gaXMgYWJiYQplaWdlbnRsaWNoIG51ciBmdWVyIGthcmF0ZWtzIGdlZGFjaHQgLG8pCgpoaWdodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0ZGlnZXN0Li4uIChGb29iYXIsICA3LiBBdWcgMjAwMSwgMDI6MjA6MDApOgpGcm9tOiAiVG9iaWFzIFN0ZWlubWV0eiIgPGFsemV5ZXItYXV0b21vYmlsQHQtb25saW5lLmRlPgpOZXdzZ3JvdXBzOiBkZS5jb21tLmdlcmFldGUubW9iaWwubm9raWEKU3ViamVjdDogUmU6IFNvZnR3YXJlIGZ1ZXIgSGFuZHlzCkRhdGU6IFRodSwgMiBBdWcgMjAwMSAxODoyOTozMiArMDIwMApNZXNzYWdlLUlEOiA8OWtidXYzJGZibCQwNSQxQG5ld3MudC1vbmxpbmUuY29tPgoKCj4gSWNoIGhhYiBtaXIgZ2VyYWRlIGVpbiBCdWNoIHVlYmVyIE1lbnN0cnVhdGlvbnMtUHJvYmxlbWUgZ2VrYXVmdC4KCmVjaHQ/IGlzdCBqYSBrbGFzc2UuIGljaCBmaW5kZSBhdWNoLCBkYXNzIHNpY2ggbWFlbm5lciBlaW5mYWNoIHp1CnNlbHRlbiBtaXQgZGllc2VtIHRoZW1hIGJlZmFzc2VuIC4uLiB0b2xsIGRhc3MgZHUgZGljaCBkYSBvdXRlc3QgLi4uCgpoaWVyIGVpbiBrbGVpbmVyIGFuZmFuZyAuLi4KCkRlciB3ZWlibGljaGUgS29lcnBlciBnbGVpY2h0IGVpbmVtIE1laHJmYW1pbGllbmhhdXMuIFVudGVuIHdvaG5lbgpMb2VjaGVscywgaW4gZGVyIE1pdHRlIEJhZXVjaGVscyB1bmQgb2JlbiB3b2huZW4gQnJ1ZXN0ZWxzLgpMb2VjaGVscyBiZWtvbW1lbiBvZWZ0ZXIgQmVzdWNoLW1hbmNobWFsIGtvbW1lbiBTY2h3YWVuemVscyB1bmQgbWFuY2htYWwKa29tbWVuIFJvdHMuCldlbm4gUm90cyBkYSBzaW5kICwga29tbWVuIFNjaHdhZW56ZWxzIG1laXN0IG5pY2h0LCB3ZWlsIHNpY2ggZGllCmJlaWRlbiBuaWNodCB2ZXJ0cmFnZW4uCldlbm4gUm90cyBmb3J0IHNpbmQsIGtvbW1lbiBTY2h3YWVuemVscyB3aWVkZXIuCkVpbm1hbCBzaW5kIFNjaHdhZW56ZWxzIHp1IGxhbmdlIGdlYmxpZWJlbixkYSB3YXJlbiBSb3RzIGJvZXNlIHVuZCBzaW5kCm5pY2h0IG1laHIgZ2Vrb21tZW4uCkRhcmF1ZiBoYWJlbiBCYWV1Y2hlbHMgZWluZW4gQmFsa29uIGdlYmF1dCB1bmQgQnJ1ZXN0ZWxzIGtvbm50ZW4gbmljaHQKbWVociB6dSBMb2VjaGVscyBoaW51bnRlcmd1Y2tlbiB1bmQgaGFiZW4gZGVzaGFsYiBlaW5lbiBQcm96ZXNzCmFuZ2VzdHJlYnQuCkRpZXNlciBkYXVlcnRlIG5ldW4gTW9uYXRlIHVuZCBCcnVlc3RlbHMgaGFiZW4gZ2V3b25uZW4uCkJhZXVjaGVscyBtdXNzdGVuIGRlbiBCYWxrb24gd2llZGVyIGFiYmF1ZW4uCkFscyBkaWVzZXMgZ2VzY2hlaGVuIHdhciwgZ2FiIGVzIHdpZWRlciBSdWhlIGltIEhhdXMuIFNjaHdhZW56ZWxzIHVuZApSb3RzIGtvbW1lbiBqZXR6dCB3aWVkZXIgcmVnZWxtYWVzc2lnIHVuZCBhYndlY2hzZWxuZCB6dSBMb2VjaGVscyB6dQpCZXN1Y2guClNjaHdhZW56ZWxzIGtvbW1lbiBhYmVyIG9lZnRlciBhbHMgUm90cywgZGEgZXMgaWhuZW4gYmVpIExvZWNoZWxzIGFtCmJlc3RlbiBnZWZhZWxsdC4KCldpZSBzY2hvZW4gaXN0IGRvY2ggc28gZWluIE1laHJmYW1pbGllbmhhdXMuCgpFcyBnaWJ0IGFiZXIgYXVjaCA2LUZhbWlsaWVuLUhhZXVzZXIuCgpEYSBiZXN1Y2hlbiBTY2h3YWVuemVscyBhdWNoIGFiIHVuZCB6dSBtYWwKQWVyc2NoZWxzIGFtIEhpbnRlcmVpbmdhbmcgdW5kIE11ZW5kZWxzIHVudGVybQpEYWNoLiBHcmFkIGluIGRlciBaZWl0IHdlbm4gUm90cyBiZWkgTG9lY2hlbHMgc2luZC4KQW4gZGVuIFNlaXRlbmVpbmdhZW5nZW4gd29obmVuIGF1Y2ggbm9jaCBIYWVuZGVscy4KV2FzIGFiZXIgYXVmZmFlbGxpZyBpc3QgISBEYXMgSGF1cyB3aXJkIHN0YWVuZGlnIG5ldQpnZXN0cmljaGVuLCBiZXNvbmRlcnMgZ2VybiB1bXMgRGFjaCBydW0gb2RlciBkZXIKQmFsa29uIHZvbiBCcnVlc3RlbHMuIEJlaSBMb2VjaGVscyB3aXJkIGVoZXIgbWFsCmRpZSBXb2hudW5nIGlubmVuIGdlc3RyaWNoZW4uClVlYnJpZ2Vucywgd2VubiBTY2h3YWVuemVscyB2b3JiZWlrb21tZW4gc2luZCBhdWNoCmltbWVyIFNhZWNrZWxzIG1pdCBkYWJlaSB1bmQgSGFlbmRlbHMgdm9tIE5hY2hiYXJoYXVzCnNjaGF1ZW4gYXVjaCBtYWwgYWIgdW5kIHp1IGJlaSBMb2VjaGVscyB2b3JiZWkuCgpncnVzcyB0b2JpYXMKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV0ZGlnZXN0Li4uIChCaXJkeSwgIDcuIEF1ZyAyMDAxLCAxMzo0NDowMik6Cn4jISBybj1Gb29iYXIgcnQ9OTk3MTQzNjAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3MTQzNjAwCk1hbiBiZWFjaHRlIGRpZSBuZXdzZ3JvdXAgdW5kIGF1ZiB3ZWxjaGVuIGFydGlrZWwgZGFtaXQgZ2VhbnR3b3J0ZXQgd2lyZC4gKmcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJ3aXJydD8gKEVsYWluZSwgIDcuIEF1ZyAyMDAxLCAyMzo0NzozNSk6CgpBbWFuZGEgdGVpbHQgRGlyIG1pdDogV29oaW4gc28gc2NobmVsbCwgRWxhaW5lPwpBbWFuZGEgdGVpbHQgRGlyIG1pdDogSW1tZXIgc2luZCBzaWUgc28gZWlsaWcsIGRpZSBNYWVubmVyLi4uCgpFbGFpbmUsIGdydWViZWxuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWZXJ3aXJydD8gKFd1cnplbCwgIDguIEF1ZyAyMDAxLCAwMDowMjo1Mik6Cn4jISBybj1FbGFpbmUgcnQ9OTk3MjIwODU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3MjIwODU1CnJhc2llcnN0IGR1IGRpY2ggdmllbGxlaWNodCBtb3JnZW5zPyBub3JtYWxlcndlaXNlIGhhdCBhbWFuZGEgZGEgZWluIHJlY2h0CnVudHJ1ZWdsaWNoZXMgZ2VzcHVlciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIGdlc3BpZWx0ZSBXaXR6Li4uIChGb29iYXIsICA4LiBBdWcgMjAwMSwgMDI6NDg6NTcpOgpEZXIgRWlzZWxmZW53YWVjaHRlciBrYWVtcGZ0IHZlcmZsaXh0IGd1dC4KRGVyIEVpc2VsZmVud2FlY2h0ZXIgcm9lY2hlbHQgbm9jaCBlaW4gbGV0enRlcyBNYWwgdW5kIGZhZWxsdCB0b3QgdW0uCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklzdCBkYXMgaGllciBkaWUgU2NobWFycm4tUnVicmlrPyAoQm9pbmcsICA4LiBBdWcgMjAwMSwgMDk6NTg6MjYpOgp+IyEgb249TW9udGFudXMgb3Q9OTk3MjEyODMyIG9nPWJhbGFuY2UKTGlhcmEgcnVmdDogSWNoIGJpbiBzY2h1bGQhIDotKQpQaXRmYWxsIHJ1ZnQ6IGtvbW0genUgZGVuIG5ldWlna2VpdGVuIDo9KQpEdSBydWZzdDogbm9lLCBEYW5jZXIgaXN0IHNjaHVsZCEgOi0pCkdsb2luc29uIHJ1ZnQ6IE91dGUgRGljaCwgTW9udGFudXMuClBpdGZhbGwgcnVmdDogbWl0IGdld2lzc2VuIGF1c25haG1lbiBkaWUgdm9ycmFuZyBoYWJlbiA6KQpMaWFyYSBydWZ0OiBuZWluIG5laW4gaWNoIG11c3Mgc2NodWxkIHNlaW4gOy0pCldpbGxvdyBydWZ0OiB3YXIgZGFzIG5pY2h0IGR1cmlhbj8/PwogW0FsbGdlbWVpbjpPcmt0b2V0ZXJdIElzdCBzbyBydWhpZyBoaWVyLCB3aXJkIGRvY2ggbmljaHQgZXR3YSBGdXNzYmFsbCBzZWluPwoKCk5hIHdlbm4gZGFzIHNjaG9uIHJ1aGlnIGlzdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkw8bm9yZGVuPiAoTW9yZ290aCwgIDguIEF1ZyAyMDAxLCAxMToyMzo1OSk6CkVWRU5ULUNJVFkgOiBBaGFiIGhhdCBkaWUgU3RhZHQgYmV0cmV0ZW4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApLSzogZmV1ZXJiYWxsICgxLUhhbmQpCltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIEFoYWIgdW1nZWJyYWNodC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFp6ZXJlbnp6ZW4gKEJvaW5nLCAgOC4gQXVnIDIwMDEsIDEzOjMwOjA3KToKfiMhIG9uPUdyaW1tYm9ybiBvdD05OTcyNjkyMjAgb2c9ZC51bnRlcndlbHQKfiMhIHJuPUFyayBydD05OTcyNjg4NzAgcmc9ZC51bnRlcndlbHQKfiMhIHRpZD05OTY4NzY0NjYKSG9lcnQgbmljaHQgYXVmIGlobi4gRXIgd2lsbCBudXIgZGVyIE1laHJoZWl0IGhpZXIgZGllIHVudGVyaGFsdHNhbWUuLi4gYWVoLi4uCkRpc2t1c3Npb24gcmF1YmVuLiBLbG9wcHQgZXVjaCBydWhpZyB3ZWl0ZXIhCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFp6ZXJlbnp6ZW4gKEdyaW1tYm9ybiwgIDguIEF1ZyAyMDAxLCAxMzozNzo0MCk6Cn4jISBybj1Cb2luZyBydD05OTcyNzAyMDcgcmc9c2NobWFycm4KfiMhIHRpZD05OTY4NzY0NjYKSG1tLCBpY2ggc2VoZSBlaWdlbnRsaWNoIG5pY2h0IHdpcmtsaWNoIGlud2lld2VpdAotIG1laW4gQXJ0aWtlbCBlaGVyIG5hY2ggc2NobWFycm4gZ2Vob2VydCBhbHMgZGllIGdhbnplIERpc2t1c3Npb24gdW5kCi0gd2llc28gZWluIFJNIEdlYmlyZ2UvRXJ6bWFnaWVyIHNpY2ggaW4gZC51bnRlcndlbHQgZWlubWlzY2h0LgoKU2VpcyBkcnVtLCBtaXIgcGVyc29lbmxpY2ggaXN0cyBudW4gd2lya2xpY2ggZWdhbCB3byBkaWUgU2FjaGVuIHN0ZWhlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogWnplcmVuenplbiAoSHVtbmksICA4LiBBdWcgMjAwMSwgMTM6NDA6MTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5NzI3MDY2MCByZz1zY2htYXJybgp+IyEgdGlkPTk5Njg3NjQ2NgpJc3QgZG9jaCBrbGFyOiBEZWluIEFydGlrZWwgbWFjaHQga2xhciwgZGFzcyBkaWUgTGV1dGUgbnVyIHNjaG1hcnJuZW4gdW5kCmJyaW5ndCBzaWUgenVyIEJlc2lubnVuZyBzdGF0dCBkYXMgR2VnZW50ZWlsIHp1IGJld2lya2VuLCB3YXMgZXIgamEKb2ZmZW5zaWNodGxpY2ggaW50ZW5kaWVydC4gRGEgQm9pbmcgZGllIERpc2t1c3Npb24gZ2VybmUgbm9jaCB2ZXJmb2xnZW4gd2lsbApoYXQgZXIgaWhuIGdlc2NobWFycm50LCB3b3JhdWZoaW4gZGVyIFVta2VocmVmZmVrdCBlaW5tYWwgbWVociBlaW50cml0dCB1bmQKYWxsZSB3ZWl0ZXIgaW4gZC51bnRlcndlbHQgc2NocmVpYmVuLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBaemVyZW56emVuIChQYXRyeW4sICA4LiBBdWcgMjAwMSwgMTM6NDU6MTMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5NzI3MDY2MCByZz1zY2htYXJybgp+IyEgdGlkPTk5Njg3NjQ2NgpoYXQgZGlyIGplbWFuZCBpbnMgaGFuZHdlciBnZXBmdXNjaHQ/IG9oaGhoaGhoaGhoCgotLSAKcGF0cnksIHdpc2NodCBzaWNoIGVpbmUgZWluc2FtZSB0cmFlbmUgdm9uIGRlciB3YW5nZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFp6ZXJlbnp6ZW4gKEdyaW1tYm9ybiwgIDguIEF1ZyAyMDAxLCAxMzo1NDozOCk6Cn4jISBybj1QYXRyeW4gcnQ9OTk3MjcxMTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2ODc2NDY2Ck5laW4uIEljaCB2ZXJsZWdlIG5pY2h0IGF1cyBkLiogdW5kIGdpbGRlbi4qLCB3ZWlsIGRhcyBtZWluZXIgTWVpbnVuZyBuYWNoIGRhcwpQcm9ibGVtIGRlciBlbnRzcHJlY2hlbmRlbiB7UixHfU0gaXN0LgpEZWluZSBILVRhc3RlIHByZWxsdCB1ZWJyaWdlbnMuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTY2hsYWdyaW5nIChHcmltbWJvcm4sICA5LiBBdWcgMjAwMSwgMTE6MDY6NTYpOgp+IyEgb249R3JpbW1ib3JuIG90PTk5NzM0ODAxMCBvZz1naWxkZW4uemF1YmVyZXIKfiMhIHJuPVN0cm9oYWxtIHJ0PTk5NzM0NzkzOCByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD05OTczNDc5MzgKTmFja3Qgb2huZSBSaW5nPyBJc3QgZGFzIGVpbiBHYW56a29lcnBlcnJpbmcgb2RlciBiaXN0IER1IGVpbmZhY2ggbnVyLi4uCnVudGVyZ3Jvc3M/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTY2hsYWdyaW5nIChDYXR3ZWF6bGUsICA5LiBBdWcgMjAwMSwgMTE6MDg6NDYpOgp+IyEgcm49U3Ryb2hhbG0gcnQ9OTk3MzQ3OTM4IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTk5NzM0NzkzOApJY2ggV0lMTCBkYXMgdmVybGVnZW4uIApnZWphbW1lciBpc3QgcmF0emVrYWhsIGxlZXIsIHVuZCBpY2ggV0lMTCBkYXMgdmVybGVnZW4uIEVzIGp1Y2t0IG1pY2ggaW4gZGVuCkZpbmdlcm4uIAoKR3JpbW1ib3JuIQpQcmluemlwaWVuIHNpbmQgZGF6dSBkYSBnZWJyb2NoZW4genUgd2VyZGVuLiBBbHNvIGxvcywgaWdub3JpZXIgZGFzIGdpbGRlbi4qIAoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1ldHplbHRlYW0gKEFuYXRvbCwgIDkuIEF1ZyAyMDAxLCAxNjoyMDozMSk6Cn4jISBybj1NdWFkaWIgcnQ9OTk3MzY2NzcxIHJnPXRyZWZmZW4KfiMhIHRpZD05OTY5NDkzOTQKVW50ZXJ3YXNzZXItUGFudGJhbGwuLi4KCipodWVzdGVsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWV0emVsdGVhbSAoTW9udGFudXMsICA5LiBBdWcgMjAwMSwgMTY6MjE6MjUpOgp+IyEgcm49QW5hdG9sIHJ0PTk5NzM2NjgzMSByZz1zY2htYXJybgp+IyEgdGlkPTk5Njk0OTM5NApuYWphLCB3aWxsc3QgRHUgd2lya2xpY2ggTXVhZGliIHVudGVyIFdhc3NlciBvaGVuIFBhbnRzLCBzcHJpY2ggSG9lc2NoZW4Kc2VoZW4/Ck5pY2h0IHdpcmtsaWNoLCBvZGVyPyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1ldHplbHRlYW0gKE11YWRpYiwgIDkuIEF1ZyAyMDAxLCAxNjoyNzo1Nyk6Cn4jISBybj1BbmF0b2wgcnQ9OTk3MzY2ODMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2OTQ5Mzk0CmtpbmRza29wZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTWV0emVsdGVhbSAoWm9vaywgIDkuIEF1ZyAyMDAxLCAxNjoyODoxMyk6Cn4jISBybj1NdWFkaWIgcnQ9OTk3MzY3Mjc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2OTQ5Mzk0CkljaCBoYWV0dCBkYW5uIGdlcm5lIFZpZGVvLUF1ZnplaWNobnVuZ2VuLiA6LSkKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNZXR6ZWx0ZWFtIChCb2luZywgIDkuIEF1ZyAyMDAxLCAxNjoyOToxMik6Cn4jISBybj1NdWFkaWIgcnQ9OTk3MzY3Mjc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2OTQ5Mzk0CktpbmRza29wZiBpc3QgbmljaHQgYW53ZXNlbmQuClp1bGV0enQgZWluZ2Vsb2dndCB2b246IEthcmxzcnVoZS4KWnVsZXR6dCBhdXNnZWxvZ2d0OiBTb24sIDI5LiBPa3QgMjAwMCwgMTg6Mzc6NDkgKDI4M2QgMjA6NTA6NTcpLgpWb2xsZXIgTmFtZTogS2luZHNrb3BmIGRlciBrbGVpbmUgQ2hhb3QKUmFzc2U6IFp3ZXJnLCAgR2lsZGU6IENoYW9zLCAgR2VzY2hsZWNodDogbWFlbm5saWNoClNwaWVsZXJsZXZlbDogNiwgICBHaWxkZW5sZXZlbDogMQpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBNb24sIDEwLiBKdWwgMjAwMCwgMTY6MjI6NTIKCkR1bWlkdW0gLi4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNZXR6ZWx0ZWFtIChNdWFkaWIsICA5LiBBdWcgMjAwMSwgMTY6MzA6NDcpOgp+IyEgcm49Qm9pbmcgcnQ9OTk3MzY3MzUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2OTQ5Mzk0Cm9oIC0gbWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTWV0emVsdGVhbSAoWm9vaywgIDkuIEF1ZyAyMDAxLCAxNjozMTozMCk6Cn4jISBybj1NdWFkaWIgcnQ9OTk3MzY3NDQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2OTQ5Mzk0CldhcyBnaWJ0cyBpbiBkZW0gVGhyZWFkIGZ1ZXIgUmVeMTAwYD8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBNZXR6ZWx0ZWFtIChCb2luZywgIDkuIEF1ZyAyMDAxLCAxNjozMjowNCk6Cn4jISBybj1ab29rIHJ0PTk5NzM2NzQ5MCByZz1zY2htYXJybgp+IyEgdGlkPTk5Njk0OTM5NApBcmdoISBFciBzY2hvbiB3aWVkZXIhIFNvbGwgaWNoIGlobiBnbGVpY2ggbmFjaCBNZWdhc2NobWFycm4gdmVybGVnZW4/CiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE1ldHplbHRlYW0gKEJvaW5nLCAgOS4gQXVnIDIwMDEsIDE2OjMyOjE4KToKfiMhIHJuPUJvaW5nIHJ0PTk5NzM2NzUyNCByZz1zY2htYXJybgp+IyEgdGlkPTk5Njk0OTM5NApBbHNvIGRlbiBUaHJlYWQgLi4uIG5pY2h0IFpvb2sgLi4uIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE1ldHplbHRlYW0gKENyb2Z0LCAgOS4gQXVnIDIwMDEsIDE2OjMyOjM0KToKfiMhIHJuPUJvaW5nIHJ0PTk5NzM2NzUzOCByZz1zY2htYXJybgp+IyEgdGlkPTk5Njk0OTM5NApKYSBCaXR0ZSAoZWdhbCB3ZW4gOy0pCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTWV0emVsdGVhbSAoS2FyaXMsICA5LiBBdWcgMjAwMSwgMTY6MzM6MDIpOgp+IyEgcm49Q3JvZnQgcnQ9OTk3MzY3NTU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk2OTQ5Mzk0CkJpdHRlIGJlaWRlCkthcmlzLCBzY2hvbm1hbCB2b3Jzb3JnbGljaCBSZXMgcHJvZHV6aWVyZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTWV0emVsdGVhbSAoTXVwZmVsLCAgOS4gQXVnIDIwMDEsIDE2OjM5OjUwKToKfiMhIHJuPUthcmlzIHJ0PTk5NzM2NzU4MiByZz1zY2htYXJybgp+IyEgdGlkPTk5Njk0OTM5NApOYSBpaHIgc2VpZCBqYSBkcmF1Zi4uLi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSW5zZWxjaGVuIChUaWFtYWssICA5LiBBdWcgMjAwMSwgMTk6NDg6NDcpOgp+IyEgcm49QW5hdG9sIHJ0PTk5NzM3OTE4NyByZz1zZWhlci51cmxhdWIKfiMhIHRpZD05OTczNzkxODcKV2FzIGludGVyZXNzaWVydCBtaWNoLCBvYiBEaXIgZGllIFNvbm5lIGF1ZiBkZW4gQmF1Y2ggc2NoZWludD8KTmF0dWVybGljaCBrYW5uIGljaCBkYXp1ICJuZWluIiBzYWdlbi4gT2huZSBQcm9ibGVtZSA7XikKCgpUaWFtYWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhdHMgd29obCBub2V0aWcuLi4gOi0pIChBaGFiLCAxMC4gQXVnIDIwMDEsIDExOjUwOjE2KToKQW1hbmRhIHNhZ3Q6IEhhbGxvIFR1dHN6dCEKQW1hbmRhIGdyYWJiZWx0IGFuIFR1dHN6dCBoZXJ1bS4KQW1hbmRhIHNhZ3Q6IFdpZSB3YWVycyBkZW5uIG1pdCB1bnMsIEtsZWluZXI/CgpEYXMga2FubiBqYSB3YXMgZ2ViZW4uCgpBaGFiLCBrYW5uIHNpY2ggZGFzIEdyaW5zZW4gbmljaHQgdmVya25laWZlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhhdHMgd29obCBub2V0aWcuLi4gOi0pIChBbmF0b2wsIDEwLiBBdWcgMjAwMSwgMTE6NTE6MTgpOgp+IyEgcm49QWhhYiBydD05OTc0MzcwMTYgcmc9c2NobWFycm4KfiMhIHRpZD05OTc0MzcwMTYKV2FzIGdsYXVic3QgRHUsIHdpZSBPbWJhdGlzIGVudHN0YW5kZW4gaXN0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIYXRzIHdvaGwgbm9ldGlnLi4uIDotKSAoVHpvZmUsIDEwLiBBdWcgMjAwMSwgMTE6NTU6NTMpOgp+IyEgcm49QW5hdG9sIHJ0PTk5NzQzNzA3OCByZz1zY2htYXJybgp+IyEgdGlkPTk5NzQzNzAxNgpJY2ggZGFjaHRlIGltbWVyLCBPbWJhdGlzIHNlaSBlaW4gR3JpbW1ib3JuLUNsb25lIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSGF0cyB3b2hsIG5vZXRpZy4uLiA6LSkgKEdyaW1tYm9ybiwgMTAuIEF1ZyAyMDAxLCAxMTo1OToyMyk6Cn4jISBybj1Uem9mZSBydD05OTc0MzczNTMgcmc9c2NobWFycm4KfiMhIHRpZD05OTc0MzcwMTYKTmVpbiwgT21iYXRpcyBpc3QgZWluIEV1c2ViaXVzIGNsb25lLCBkZXIgd2llZGVydW0gYXVmIGVpbmUgSWRlZSB2b24gbWlyCnp1cnVlY2tnZWh0LiBBYmVyIGRhcyB3YXIgdm9yIGRlbSBLcmllZyB1bmQgaXN0IHNjaG9uIGZhc3QgbmljaHQgbWVociB3YWhyLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEhhdHMgd29obCBub2V0aWcuLi4gOi0pIChQYXRyeW4sIDEwLiBBdWcgMjAwMSwgMTI6MDA6MjUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5NzQzNzU2MyByZz1zY2htYXJybgp+IyEgdGlkPTk5NzQzNzAxNgp1bmQgd2llIGdlbmF1IHNhaCBkZXIgdm9yc2NobGFnIGF1cz8Kby10b24gZ3JpbW1ib3JuOiAidmVyc3VjaCBtYWwsIG1pY2ggbmFjaHp1cHJvZ3JhbW1pZXJlbiIgPyA7KQoKLS0gCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSGF0cyB3b2hsIG5vZXRpZy4uLiA6LSkgKEdyaW1tYm9ybiwgMTAuIEF1ZyAyMDAxLCAxMjoxNTozOCk6Cn4jISBybj1QYXRyeW4gcnQ9OTk3NDM3NjI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3NDM3MDE2Ck5hamEsIER1IGthbm5zdCBrYXVtIFZvcmJpbGQgZ2V3ZXNlbiBzZWluLiBFdXNlYml1cyBpc3QgYWVsdGVyIHVuZApvcmlnaW5lbGxlci4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSGF0cyB3b2hsIG5vZXRpZy4uLiA6LSkgKFBhdHJ5biwgMTAuIEF1ZyAyMDAxLCAxMzo0ODoxNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTk3NDM4NTM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3NDM3MDE2CmR1IGVtcGZpbmRlc3QgbmVydmlnIGFscyBvcmlnaW5lbGw/IGRlc2hhbGIgdmVyaGFlbHRzdCBkdSBkaWNoIHNvLi4uIDspCgotLSAKcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBIYXRzIHdvaGwgbm9ldGlnLi4uIDotKSAoR3JpbW1ib3JuLCAxMC4gQXVnIDIwMDEsIDE0OjMxOjA5KToKfiMhIHJuPVBhdHJ5biBydD05OTc0NDQwOTYgcmc9c2NobWFycm4KfiMhIHRpZD05OTc0MzcwMTYKU2ljaGVyLiBXaXIgaGF0dGVuIGluIGRlciBTY2h1bGUgTGV1dGUgZGllIGhhYmVuIERvbiBHaW92YW5uaSB2b24gTW96YXJ0IGFscwpuZXJ2aWcgYmV6ZWljaG5ldCwgZWJlbnNvIHdpZSBGcmFueiBLYWZrYS4gRXMgbWFnIGFsc28gdm9ya29tbWVuIGRhc3MgaWNoIGRhcywKd2FzIHNvbGNoZSBMZXV0ZSBuZXJ2aWcgZmluZGVuLCBhbHMgb3JpZ2luZWxsIGVtcGZpbmRlLiBVbmQgZGVtZW50c3ByZWNoZW5kCnZlcmhhbHRlIGljaCBtaWNoLiAqZ2FlaG4qCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEhhdHMgd29obCBub2V0aWcuLi4gOi0pIChQYXRyeW4sIDEwLiBBdWcgMjAwMSwgMTQ6MzI6NDIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5NzQ0NjY2OSByZz1zY2htYXJybgp+IyEgdGlkPTk5NzQzNzAxNgpqYSwgZHUgYmlzdCB0b2xsIDopCgotLSAKcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBIYXRzIHdvaGwgbm9ldGlnLi4uIDotKSAoR3JpbW1ib3JuLCAxMC4gQXVnIDIwMDEsIDE0OjMzOjQwKToKfiMhIHJuPVBhdHJ5biBydD05OTc0NDY3NjIgcmc9c2NobWFycm4KfiMhIHRpZD05OTc0MzcwMTYKTmljaHQgd2lya2xpY2gsIGFiZXIgaWNoIGhhYmUgVmVyc3RhZW5kbmlzIGRhZnVlciBkYXNzIERpciBkYXMgc28gdm9ya29tbXQuIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSG90ZWx6aW1tZXIgKEdyaW1tYm9ybiwgMTAuIEF1ZyAyMDAxLCAxOToxNToyOCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTk3NDYzNzIyIG9nPXBhcnR5Cn4jISBybj1Bbm9yaXMgcnQ9OTk3NDYzMTc3IHJnPXBhcnR5Cn4jISB0aWQ9OTk3NDYzMTc3CkhtbSwgZ3V0ZSBGcmFnZS4gV2llIGd1dCBiaXN0IER1IGRlbm4gc28gaW0gQmV0dD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVG9sbGVyIFJlc2V0Li4uIChGb29iYXIsIDExLiBBdWcgMjAwMSwgMDQ6MTE6NTYpOgpEZXIgTGljaHRkYWVtb24gdmVyc2Nod2luZGV0IGluIGVpbmVtIExpY2h0YmxpdHouCkVpbiBMaWNodGRhZW1vbiBrb21tdCBhbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoRm9vYmFyLCAxMS4gQXVnIDIwMDEsIDA1OjI2OjM4KToKW1N1Ym1pdHRlcnMgbm90ZTogQXVjaCBpbSBXV1ctQ2hhdCBrYW5uIG1hbgogYWIgdW5kIGFuIG1hbCBhdWYgUGVybGVuIHN0b3NzZW5dCiAKfCAxNDo0NyBmZWlyZWZpeiBrb21tdCBhdXMgZGVtIFJhdW0gR1JJTi5DaGF0IGhlcmVpbiAKfCAoZmVpcmVmaXopIHdhcyBnaWJ0cz8gCnwgKEd1ZXN0MTcyKSB3aWxsc3RlIGRpcnR5IHRhbGtlbj8gCnwgKEd1ZXN0MTcyKSBiaXNzY2hlbiBjcz8gCnwgKGZlaXJlZml6KSBhdWYgbWl0dGVsaG9jaGRldXRzY2g/IAp8IChHdWVzdDE3MikgamEgb2RlciBuZWluIAp8IChHdWVzdDE3MikgYmVzY2hyZWliIGRpY2ggbWFsLHNjaGF0eiAKfCAoZmVpcmVmaXopIGF1ZiBtaXR0ZWxob2NoZGV1dHNjaCBnZXJuZSAKfCAoZmVpcmVmaXopIGFsc286IAp8IChmZWlyZWZpeikgc2NoaWxkZXMgYW1iZXQgaXMgbW4gYXJ0IAp8IChmZWlyZWZpeikgdW5kIGR1PyAKfCAoR3Vlc3QxNzIpIGljaCBiaW4gMTYwY20gZ3Jvc3MsIGhhYiBncnVlbmUgYXVnZW4gdW5kIHBvbGFuZ2Ugc2Nod2FyemUgaGFhcmUgCnwgKEd1ZXN0MTcyKSB3YXMgaGFzdGUgYW4/IAp8IChHdWVzdDE3Mikgd2llIGhlaXNzdCBkdT8gCnwgKGZlaXJlZml6KSBob3NlLCBwdWxsaSAKfCAoZmVpcmVmaXopIGZlaXJlZml6LCBzdGVodCBkb2NoIGRhIAp8IChHdWVzdDE3Mikgc29ycnkgCnwgKGZlaXJlZml6KSBtbiB0cnQsIHdhcyBicmlzdGV0IGRpcj8gCnwgKEd1ZXN0MTcyKSB3aWxsc3RlIHdpc3Nlbix3YXMgaWNoIGFuaGFiZT8gCnwgKGZlaXJlZml6KSBva2F5IAp8IChHdWVzdDE3MikgaGFlYWVhZWFlYWUgCnwgKGZlaXJlZml6KSBtZWluZSBsaWViZSwgd2FzIGZlaGx0IGRpcj8gCnwgKGZlaXJlZml6KSB3YXMga2FubiBpY2ggZnVlciBkaWNoIHR1bj8gCnwgKEd1ZXN0MTcyKSBjaCBoYWJlIG5lbiBzY2h3YXJ6ZW4gc3RyaW5nIGFuLCByb3RlIGhvdHBhbnRzIHVuZCBuZSB2aWVsIHp1CmVuZ2Ugd2Vpc3NlIHNlaWRlbmJsdXNlIHVuZCBuZW4gc2Nod2FyemVuIHNwaXR6ZW4gLSBiaCAKfCAoR3Vlc3QxNzIpIHp1IGVuZyAtIGljaCBob2ZmZSxkdSB3ZWlzc3QgLCB3YXMgaWNoIGRhbWl0IG1laW5lIAp8IChmZWlyZWZpeikgZGFzIGJlaGluZGVydCBkaWUgYXRtdW5nIAp8IChHdWVzdDE3MikgaGFlYWVhZWFlPyAKfCAoZmVpcmVmaXopIHNvbGx0ZXN0IGR1IG5pY2h0IHRyYWdlbiAKfCAoR3Vlc3QxNzIpIHdhcyBkZW5uPyAKfCAoZmVpcmVmaXopIHp1IGVuZ2Ugc2FjaGVuIAp8IChmZWlyZWZpeikgb2RlciBvZmZlbmxhc3NlbiAKfCAoR3Vlc3QxNzIpIGRpZSBibHVzZSB6ZWljaG5ldCBhYmVyIGd1dCBtZWluZSBuaXBwZWwgYWIgCnwgKEd1ZXN0MTcyKSB1bmQgbWVpbmUgdGl0dGVuICg3NSBkb3BlbC1kKSAKfCAoZmVpcmVmaXopIGFoYSAKfCAoR3Vlc3QxNzIpIGljaCBiaW4gbmF0YXNjaGEgCnwgKGZlaXJlZml6KSA3NT8/PyAKfCAoR3Vlc3QxNzIpIGphIAp8IChHdWVzdDE3Mikgc3RlaHQgbWFsIGRyaW4gCnwgKGZlaXJlZml6KSBtZWluZSBmcmV1bmRpbiBoYXQgbnVyIDIgCnwgKGZlaXJlZml6KSBoYWxsbyBuYXRhc2NoYSAKfCAoR3Vlc3QxNzIpIGRpZSB1bnRlcm9iZXJ3ZWl0ZW5sYWVuZ2UgbmF0dWVybGljaCAKfCAoR3Vlc3QxNzIpIGx1c3QgYXVmIGNzPyAKfCAoZmVpcmVmaXopIGFjaHNvIAp8IChHdWVzdDE3Mikga29lbm5lbiB3aXIgZWluIHNwaWVsIHNwaWVsZW4/IAp8IChmZWlyZWZpeikgd2VsY2hlcyBkZW5uPyAKfCAoR3Vlc3QxNzIpIGR1IHNhZ3N0IG1pcix3YXMgaWNoIG1pdCBtZWluZW0ga29lcnBlciBtYWNoZW4gc29sbCx1bmQgaWNoIG1hY2hzCi0gZWdhbCB3YXMgKmcqIAp8IChHdWVzdDE3MikgZ2liIG1pciBiZWZlaGxlIC0gaWNoIGJpbiBzbyBmZXVjaHQgCnwgKGZlaXJlZml6KSBkYW5uIHNvbGx0ZXN0IGR1IGRpY2ggYWJ0cm9ja25lbiAKfCAoZmVpcmVmaXopIHNvbnN0IGVya2FlbHRlc3QgZHUgZGljaCAKfCAxNDo1NCBHdWVzdDE3MiB2ZXJsYWVzc3QgZGVuIENoYXQgCgoKLS0gClN1Ym1pc3Npb25lbiBmdWVyIGRlLmFsdC5uZXRkaWdlc3QgYml0dGUgYW4KPGRlLWFsdC1uZXRkaWdlc3RAbW9kZXJhdG9ycy5kYW5hLmRlPiBzY2hpY2tlbi4KRGVyIFN1Ym1pdHRlciBpc3QgZnVlciBkZW4gSW5oYWx0IGRlciBFaW5yZWljaHVuZyB2ZXJhbnR3b3J0bGljaCwgCm5pY2h0IGRlciBNb2RlcmF0b3IgZGVyIE5ld3NncnVwcGUuCgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdldCAtIG5pY2h0IGp1Z2VuZGZyZWkgKEZvb2JhciwgMTEuIEF1ZyAyMDAxLCAwNTozNjowMik6CnJvbTogamV6ZXdza2lAZ214LmRlIChIZWluei1XZXJuZXIgSmV6ZXdza2kpCk5ld3Nncm91cHM6IGRlLnRhbGsubGllYmVzYWt0ClN1YmplY3Q6IFJlOiBHLVB1bmt0IGRlciBGcmF1IGdlc3VjaHQ/PwoKW05vdGU6IEVzIGdlaHQgdW0gZGllIFN1Y2hlIG5hY2ggZGVtIEctUHVua3RdCgpUaG9tYXMgTmV1bWFubiA8VE4xOTY2QHQtb25saW5lLmRlPiBzY2hyaWViOgoKPiBNaXQgZGVtIFBlbmlzIGlzdHMgYXVjaCB2ZXJkYW1tdCBzY2h3aWVyaWcuIFNjaG9ubWFsIG1pdCBkZW0gRmluZ2VyCj4gdmVyc3VjaHQ/IER1IGZ1ZWhsc3QgaWhuIGRhbm4gYXVjaCBzZWhyIGd1dC4gRXIgZnVlaGx0IHNpY2ggZXR3YXMKPiBzY2h3YW1tYXJ0aWcgYW4uIAoKS2FubiBkb2NoIGdhciBuaWNodCBzY2hpZWZnZWhlbiwgJ25lIHNjaHdhbW1hcnRpZ2UgU3RlbGxlIGluIGRlciBWYWdpbmEuCkRhcyBpc3QgYWVobmxpY2ggYWxzIHdlbm4gbWFuIGluIGRlciBXdWVzdGUgbmFjaCBlaW5lbSBTY2hhdHogc3VjaHQuIERpZQpTdGVsbGUgd28gZXIgdmVyZ3JhYmVuIGlzdCwgaXN0IHppZW1saWNoIHNhbmRpZy4KCkdydXNzCgpIZWluei1XZXJuZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXRkaWdldCAtIG5pY2h0IGp1Z2VuZGZyZWkgKEdyaW1tYm9ybiwgMTEuIEF1ZyAyMDAxLCAwNjoxNDo0Nik6Cn4jISBybj1Gb29iYXIgcnQ9OTk3NTAwOTYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3NTAwOTYyCkFlaCwgd2FzIGlzdCBkYXJhbiBuaWNodCBqdWdlbmRmcmVpPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBZWguLi4gKFZhcmxhcmlvbiwgMTEuIEF1ZyAyMDAxLCAxNzoyMjowMCk6CkRlciBLb2JvbGQgbWVya3Qgc2ljaCBqZXR6dCBhbGxlcyEKW1RvZDpMYXJzXSBFaW4gS29ib2xkIGhhdCBnZXJhZGUgTWluZGJsYXN0IHVtZ2VicmFjaHQuCltUb2Q6RWluIEtvYm9sZF0gSGkgaGksIGVyd2lzY2h0Li4uCgpWYXJsKiwgd3VuZGVydCBzaWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFZlcndpcnJ0PyAoUm9sYW5kLCAxMi4gQXVnIDIwMDEsIDExOjQ5OjEzKToKfiMhIHJuPVd1cnplbCBydD05OTcyMjE3NzIgcmc9c2NobWFycm4KfiMhIHRpZD05OTcyMjA4NTUKd2FzIGR1IGhhc3QgYW1hbmRhIG5pY2h0IGdlZ2FndCA/CgphbHMgaGlsZmUKCiNnYWcgYW1hbmRhCgo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVmVyd2lycnQ/IChNdXBmZWwsIDEyLiBBdWcgMjAwMSwgMTU6MTY6MDQpOgp+IyEgcm49Um9sYW5kIHJ0PTk5NzYwOTc1MyByZz1zY2htYXJybgp+IyEgdGlkPTk5NzIyMDg1NQpOaWNodCBqZWRlciBiZW51dHp0IGVpbmVuIE1VRGNsaWVudCwgZGVyIHNvbGNoZXJhcnRlbiBGdW5rdGlvbmFsaXRhZXQKYmlldGV0Li4uCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVmVyd2lycnQ/IChJdm8sIDEyLiBBdWcgMjAwMSwgMTY6MTM6MzEpOgp+IyEgcm49TXVwZmVsIHJ0PTk5NzYyMjE2NCByZz1zY2htYXJybgp+IyEgdGlkPTk5NzIyMDg1NQoKZ2FnIGFtYW5kYSBpc3QgbmljaHQgenUgZW1wZmVobGVuLCB3ZW5uIG1hbiBlaW5lIGJlc3RpbW10ZSBxdWVzdCBtYWNodCwgaGFiZQpsYWVuZ2VyZSB6ZWl0IGdlYnJhdWNodCwgYmlzIGljaCBlcyBoZXJhdXMgZ2VmdW5kZW4gaGFiZSwgd2FzIGZhbHNjaCBsYWV1ZnQ7KQoKSXZvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBWZXJ3aXJydD8gKFJvY2h1cywgMTIuIEF1ZyAyMDAxLCAyMDo1MDowMSk6Cn4jISBybj1Sb2xhbmQgcnQ9OTk3NjA5NzUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3MjIwODU1Ck5pbW0gYWJlciBuZW4gby1nYWcgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBWZXJ3aXJydD8gKEhpZ2h0LCAxMi4gQXVnIDIwMDEsIDIwOjU0OjQ0KToKfiMhIHJuPUl2byBydD05OTc2MjU2MTEgcmc9c2NobWFycm4KfiMhIHRpZD05OTcyMjA4NTUKZGFua2UgKmh1ZXBmKiAKCmljaCBiaW4gZmFzdCB2ZXJ6d2VpZmVsdCB3ZWlsIGljaCBkaWUgdHVzcyBuaWNoIGdlc2VoZW4gaGFiIC4uLiAKCmhpZ2h0IGRvY2ggbmV0IGRlciBlaW56aWdlIGRvb2ZlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoaWNrPyAoTml6emwsIDEyLiBBdWcgMjAwMSwgMjI6Mzk6MTYpOgoKPEhpY2s+ISBPaCwgVHNjaHVsZGlndW5nLgo8SGljaz4hIE9oLCBUc2NodWxkaWd1bmcuClthbGNvdGVzdF0KRHUgYmlzdCB2b2VsbGlnIG51ZWNodGVybi4KPEhpY2s+ISBPaCwgVHNjaHVsZGlndW5nLgpbYWxjb3Rlc3RdCkR1IGJpc3Qgdm9lbGxpZyBudWVjaHRlcm4uClt0bWhdCkxseXN0cmF0aGUgdGVpbHQgRGlyIG1pdDogSWdpdHQhIER1IHdhcnN0IGphIHZvZWxsaWcgYmVzb2ZmZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaGljaz8gKFBhdHJ5biwgMTMuIEF1ZyAyMDAxLCAwODoxMzoxNik6Cn4jISBybj1OaXp6bCBydD05OTc2NDg3NTYgcmc9c2NobWFycm4KfiMhIHRpZD05OTc2NDg3NTYKZml4ZWQuCgotLSAKcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWb3JhaG51bmc/IChEZWVwYmx1ZSwgMTMuIEF1ZyAyMDAxLCAxMjo1Njo1OSk6CltNb2VyZGVyOkdlaXN0IE5hcmNvcm9yc10gUGl0ZmFsbCB3aXJkIGdsZWljaCBkYXMgU3BpZWwgdmVybGFzc2VuLCB1bSBtZWluZXIKW01vZXJkZXI6R2Vpc3QgTmFyY29yb3JzXSBSYWNoZSB6dSBlbnRnZWhlbiEKUGl0ZmFsbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRpZXJpc2NoZSBGcmV1ZGVuLi4gKEFuYXRvbCwgMTMuIEF1ZyAyMDAxLCAyMDo0MjowMik6CklyZ2VuZHdpZSBzaW5kIGZvbGdlbmRlIExldXRjaGVuIG5pY2h0IGd1dCBhdWYgRGljaCB6dSBzcHJlY2hlbjogZWluClp3ZXJnc2NoYWYKCgpLbGFyLiBIZWlzc3QgamEgYXVjaCAiTXV1dWgiLCBuaWNodCAiTWFlYWVhZWgiLiA7KQpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVwcyAoR2l6aSwgMTMuIEF1ZyAyMDAxLCAyMToxNTo0Mik6CkltIFZlcmJvcmdlbmVuIG1hY2hzdCBEdSBlaW5lIG1hZ2lzY2hlIEhhbmRiZXdlZ3VuZy4KRGlyIGlzdCBzb2ViZW4gZWluZSBIYW5kIGFiZ2VmYWxsZW4uCj4gV3VlaGxlciBzdGVja3QgZWluZSBEYWVtb25lbmF4dCB6dXJ1ZWNrLgpXdWVobGVyIHp1ZWNrdCBlaW5lbiBLYW1wZnN0b2NrLgpXdWVobGVyIGRlbmt0ICAgLiBvIE8gKHVwcykKUGh1biBkZW5rdCAgIC4gbyBPIChhdWEpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2hyZWliZSBhcnRpa2VsIChSb2xhbmQsIDEzLiBBdWcgMjAwMSwgMjE6MjE6MTEpOgplaW4ga2xlaW5lciBNZWluemVsbWFubiBrb21tdCBoZXJyZWluIHVuZCBicnVlbGx0OgoKR1VUTiBBQUFBQUFBQUFoTU1NTU1NTU1NTU1UICEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzY2hyZWliZSBhcnRpa2VsIChBbmF0b2wsIDEzLiBBdWcgMjAwMSwgMjE6MjI6NTYpOgp+IyEgcm49Um9sYW5kIHJ0PTk5NzczMDQ3MSByZz1zY2htYXJybgp+IyEgdGlkPTk5NzczMDQ3MQpEdSBiaXN0IG5pY2h0IHdpdHppZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzY2hyZWliZSBhcnRpa2VsIChNb250YW51cywgMTMuIEF1ZyAyMDAxLCAyMToyMzowMCk6Cn4jISBybj1Sb2xhbmQgcnQ9OTk3NzMwNDcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3NzMwNDcxCmFyZ2wsIHdlciBub2NoIG5pY2h0IG1hbCBNYWlueiAodW5kIGRhbWl0IGRpZSBEZXJpdmF0aW9uIE1haW56ZWxtYW5uKSByaWNodGlnCnNjaHJlaWJlbiBrYW5uLCBkZXIgc29sbHRlIHNpY2ggZWNodCBuaWNodCB3dW5kZXJuLCB3ZW5uIGVyIGhpZXIgZGF1ZXJuZCB3ZWdlbgpPdHRvIEdyYWZpZSB2b24gZGVyIFNlaXRlIGFuZ2VsYWJlcnQgd2lyZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc2NocmVpYmUgYXJ0aWtlbCAoR3JpbW1ib3JuLCAxMy4gQXVnIDIwMDEsIDIxOjM2OjUwKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk5NzczMDU4MCByZz1zY2htYXJybgp+IyEgdGlkPTk5NzczMDQ3MQpOdW4gbWFjaCBpaG4gbmljaHQgdW5ub2V0aWcgZmVydGlnLiBXZW5uIGVyIHdlbmlnc3RlbnMgaW5oYWx0bGljaCBhbnNhdHp3ZWlzZQp3YXMgc2lubnZvbGxlcyBvZGVyIHdlbmlnc3RlbnMgYW11ZXNhbnRlcyB6dSBiaWV0ZW4gaGFldHRlIHd1ZXJkZSBuaWVtYW5kCnNlaW5lIFJlY2h0c2NocmVpYnNjaHdhZWNoZSBlcndhZWhuZW4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkltbWVyIHdpZWRlciBuZXR0Li4uIChGb29iYXIsIDE0LiBBdWcgMjAwMSwgMDI6Mjc6MTkpOgpEdSB0ZWlsc3QgQXJtYWdlZGRvbiBtaXQ6IExlY2sgbWljaCBhbSBBcnNjaC4KQXJtYWdlZGRvbiB0ZWlsdCBEaXIgbWl0OiBFcyBpc3Qgbm9jaCB6dSBmcnVlaCEgUHJvYmllciBlcyAxMCBNaW51dGVuIHZvciBkZW0KQXJtYWdlZGRvbiB0ZWlsdCBEaXIgbWl0OiBFbmRlIG5vY2htYWwhCkFybWFnZWRkb24gdGVpbHQgRGlyIG1pdDogSW4gMSBUYWcsIDE4IFN0dW5kZW4sIDI4IE1pbnV0ZW4gdW5kIDUwIFNla3VuZGVuIGlzdApBcm1hZ2VkZG9uIHRlaWx0IERpciBtaXQ6IGVzIHNvd2VpdCEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW1tZXIgZGllIFphdWJpcyAoVGVrdHVrbywgMTQuIEF1ZyAyMDAxLCAyMjowNDo1Nik6CkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCltTcG9ydDpNZWxjaG9yXSAuLiBkaWUgemF1YmlzIHdpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2VpbmUgRkxXLi4uIChGb29iYXIsIDE1LiBBdWcgMjAwMSwgMTU6Mzg6MTcpOgpEYW9zIHNjaGxlaWNodCBoZXJlaW4uCiAgLi4uLm5vcm1hbC9LcmV1emF4dC4uLi4gR2FyZGlzdC4uLi4uLiA6IERhb3MuLi4uLi4uLi4gKioqKioqKiogLS0gc2VociBoYXJ0CkRhb3MgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpMYXJzXSBFaW4gZmVsaW5pc2NoZXIgR2FyZGlzdCBoYXQgZ2VyYWRlIERhb3MgdW1nZWJyYWNodC4gICAgICAgICAgICAgICAgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2VpbmUgRkxXLi4uIChSYXJkaWFuLCAxNS4gQXVnIDIwMDEsIDE2OjEzOjM2KToKfiMhIHJuPUZvb2JhciBydD05OTc4ODI2OTcgcmc9c2NobWFycm4KfiMhIHRpZD05OTc4ODI2OTcKVW5hcnRpZ2UgRmVsaW5lbmJ1ZWJjaGVuLCBkYXMgc2llaHQgS29hbmEgdWViZXJoYXVwdCBuaWNodCBnZXJuZSwgdWViZXJoYXVwdApuaWNodCBnZXJuZSBzaWVodCBzaWUgZGFzLi4uCgpSYXIsIHNjaGF1dCBtaXRsZWlkaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcmV1ZGUgaGVycnNjaHQgKEFub3JpcywgMTUuIEF1ZyAyMDAxLCAxODoxOToxOCk6Ck1lbGNob3Igd2FuZGVsdCBoZXJlaW4uCkJyaWVzZWx0cmltIGJydWVsbHQ6IFdBUyBpc3QgZGVubiBkYXM/PyBNZWxjaG9yLCB3YXJ1bSB0cmFlZ3N0IER1IGtlaW4KQnJpZXNlbHRyaW0gYnJ1ZWxsdDogUmFuZ2FiemVpY2hlbj8/PyBEYXMgZ2lidCBlaW5lbiBkaWNrZW4gVmVyd2VpcyEKTWVsY2hvciB3YW5kZWx0IG5hY2ggTm9yZGVuLgoKLSBBbm9yaXMgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcmV1ZGUgaGVycnNjaHQgKEdyaW1tYm9ybiwgMTUuIEF1ZyAyMDAxLCAxODoyMDo1NCk6Cn4jISBybj1Bbm9yaXMgcnQ9OTk3ODkyMzU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3ODkyMzU4CkphLCBkYXMgd2FyIG1hbCBlaW4gYXVzbmVobWVuZCBhbXVlc2FudGVyIEF1c3NwcnVjaCBkZXMgQnJpZXNlbHRyaW0uLi4KCkdkQSBoYXQgbWFsIHdpZWRlciBkZW4gV2l0eiBuaWNodCB2ZXJzdGFuZGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZyZXVkZSBoZXJyc2NodCAoQm9pbmcsIDE1LiBBdWcgMjAwMSwgMTg6MjI6MjQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5Nzg5MjQ1NCByZz1zY2htYXJybgp+IyEgdGlkPTk5Nzg5MjM1OApBbHNvIGljaCBmYW5kIGRlbiBBcnRpa2VsIDIgdm9yaGVyIChLZWluZSBGTFcpIGZhc3Qgbm9jaCBsdXN0aWdlciAuLi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRnJldWRlIGhlcnJzY2h0IChHcmltbWJvcm4sIDE1LiBBdWcgMjAwMSwgMTg6MjQ6NTYpOgp+IyEgcm49Qm9pbmcgcnQ9OTk3ODkyNTQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3ODkyMzU4CkRhIGhhdHMgamEgYXVjaCBlaW5lbiBTcGllbGVyIHplcmxlZ3QsIGRhcyBpc3QgbmF0dWVybGljaCBsdXN0aWdlciwgYWJlciBkYXMKaXN0IGRvY2ggYXVzc2VyIEtvbmt1cnJlbnouLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRnJldWRlIGhlcnJzY2h0IChab29rLCAxNS4gQXVnIDIwMDEsIDE4OjM1OjMyKToKfiMhIHJuPUdyaW1tYm9ybiBydD05OTc4OTI2OTYgcmc9c2NobWFycm4KfiMhIHRpZD05OTc4OTIzNTgKSWNoIHZlcnN0ZWggRXVlcm4gSHVtb3IgbmljaHQgc28gd2lya2xpY2guLi4uIAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZyZXVkZSBoZXJyc2NodCAoR3JpbW1ib3JuLCAxNS4gQXVnIDIwMDEsIDE4OjM5OjAyKToKfiMhIHJuPVpvb2sgcnQ9OTk3ODkzMzMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3ODkyMzU4CkRhIGdlaHRzIERpciBuaWNodCBhbmRlcnMgYWxzIHZpZWxlbiwgdmllbGVuIExldXRlbiwgZGVuZW4gYXVzIHZpZWxlbiwgdmllbGVuCkdydWVuZGVuIG5pY2h0IGFuZGVycyBlcmdlaHQuIE5hIHVuZD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRnJldWRlIGhlcnJzY2h0IChIdW1uaSwgMTUuIEF1ZyAyMDAxLCAxODo0NDowNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTk3ODkzNTQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3ODkyMzU4CkFsc28genUgZGVtIFZlcndlaXMgaGFiIGljaCBpbW1lciBudXIgenUgYmlldGVuLCBkYXNzIGljaCB3ZWdlbiBtZWluZXIgS2F0emUKYmVpIEJyaWVzZWwgaW1tZXIgd2VsY2hlIGtyaWVnZS4gVW5kIGRhcyB3aXR6aWdlIGlzdCBob2VjaHN0ZW5zLCBkYXNzIGljaCBrZWluCkthZW1wZmVyIGJpbi4uLgoKSHVtbmksIHZlcnN0ZWh0IGRlbiBIdW1vciBoaWVyIGF1Y2ggbmljaHQgKG1laHIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBGcmV1ZGUgaGVycnNjaHQgKFRla3R1a28sIDE1LiBBdWcgMjAwMSwgMTg6NDU6MzMpOgp+IyEgcm49SHVtbmkgcnQ9OTk3ODkzODQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3ODkyMzU4Ck5pY2h0IG51ciBkaXIsIGRlciB2ZXJzdWNodCBhdWNoIFphdWJlcmVybiBWZXJ3ZWlzZSByZWluenVkcnVlY2tlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBGcmV1ZGUgaGVycnNjaHQgKE1vbnRhbnVzLCAxNS4gQXVnIDIwMDEsIDE4OjUzOjU4KToKfiMhIHJuPVRla3R1a28gcnQ9OTk3ODkzOTMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3ODkyMzU4CkljaCBnbGF1YiwgZGVyICdIdW1vcicgYW4gZGVyIFNhY2hlIGlzdCwgZGFzcyBMZXV0ZSwgaWQgZSBpbSBSTCBqZWdsaWNoZXIKQXV0b3JpdGFldCBhZXVzc2Vyc3QgbmVnYXRpdiBnZWdlbnVlYmVyIGVpbmdlc3RlbGx0IHNpbmQsIGhpZXIgbWFlbm5jaGVuCmJhdWVuLCB3ZW5uIGVpbmUgY29tcHV0ZXJnZXRldWVydGUgUHVwcGUgaWhuZW4gS29tbWFuZG9zIHZvcnJvdHp0LgpVbmdsYXVibGljaCBhYmVyIHdhaHIuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRnJldWRlIGhlcnJzY2h0IChXdXJ6ZWwsIDE1LiBBdWcgMjAwMSwgMTk6MDg6MDQpOgp+IyEgcm49TW9udGFudXMgcnQ9OTk3ODk0NDM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3ODkyMzU4CnNpZSBiYXVlbiBqYSBudXIgdmlydHVlbGxlIG1hZW5uY2hlbi4gaG9mZmUgaWNoIHdlbmlnc3RlbnMgOikKYmVzc2VyIHdpcmQgZXMgZGF2b24gYWJlciBhdWNoIG5pY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEZyZXVkZSBoZXJyc2NodCAoTW9udGFudXMsIDE1LiBBdWcgMjAwMSwgMTk6MDk6MzUpOgp+IyEgcm49V3VyemVsIHJ0PTk5Nzg5NTI4NCByZz1zY2htYXJybgp+IyEgdGlkPTk5Nzg5MjM1OAp3ZW5uIHdpciBnZXJhZGUgc2Nob24gZGFiZWkgc2luZDoKU292aWVsIEVuZXJnaWUsIHdpZSBtYW5jaGUgaGllciBpbiBpaHJlIHZpdHVlbGxlbiBTY2hlaW5lIGF1ZiBkZXIKa2FlbXBmZXJha2FkZW1pZSAoQWJzY2hsdXNzYmVyaWNodCBvZGVyIHdpZSBzaWNoIGRhcyBuZW5udCkgc3RlY2tlbiwgaGFiZW4gc2llCm1laXN0IGFuIGRlciBVbmkgbm9jaCBuaWNodCBpbnZlc3RpZXJ0LgoKS29wZnNjaHVldHRlbG5kOiBNb250YW51cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhqYSAoUHVrLCAxNS4gQXVnIDIwMDEsIDIwOjUxOjM4KToKRHUga2xhbW1lcnN0IERpY2ggZnVyY2h0c2FtIGFuIFB1ayBmZXN0LgpQdWsgdW1rbGFtbWVydCBEaWNoIGFlbmdzdGxpY2guCgpQdWssIHdlaXNzIGRhdm9uIGdhciBuaXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBaGphIChSb2xhbmQsIDE1LiBBdWcgMjAwMSwgMjE6Mjk6NDgpOgp+IyEgcm49UHVrIHJ0PTk5NzkwMTQ5OCByZz1zY2htYXJybgp+IyEgdGlkPTk5NzkwMTQ5OApnZWh0IGphIG5vY2ggLi4uCgppY2ggaGFiIG1pY2ggc2VsYmVyIGZyZXVkaWcgZ2VrbnV0c2NodCAuLi4KdW50IGRhbm4gaGFiIGljaCBtaWNoIG5vY2htYWwgenVydWVja2VnZWtudXRzY2h0CgpzZWx0c2FtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZToga2xlaW5lIEp1bmdzIChHcmltbWJvcm4sIDE1LiBBdWcgMjAwMSwgMjM6MDU6NTgpOgp+IyEgb249QW5hY3Jpb24gb3Q9OTk3OTA3MTQ1IG9nPXdpdHplCn4jISBybj1Nb250YW51cyBydD05OTc4OTQyNTkgcmc9d2l0emUKfiMhIHRpZD05OTc4OTQyNTkKSGVoZS4gU2VsdGVuIHNvIGdlbGFjaHQuCgphbmFjKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJ5ZWJ5ZSAuLi4gOikgKExpYXJhLCAxNS4gQXVnIDIwMDEsIDIzOjMzOjA1KToKfiMhIHJuPUJvaW5nIHJ0PTk5NzkwMjMxMSByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9OTk3OTAyMzExCk1laW5lIEd1ZXRlLCBpaHIgaGFidCBqYSBzb2dhciBkaWUgTG9naW5zZXF1ZW56IGdlYWVuZGVydCAuLi4gLiA7LSkKQmVhZW5nc3RpZ2VuZCwgZWNodCBiZWFlbmdzdGlnZW5kLiAKCkxaWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRnJldWRlIGhlcnJzY2h0IChSYXJkaWFuLCAxNi4gQXVnIDIwMDEsIDEyOjE5OjA2KToKfiMhIHJuPUh1bW5pIHJ0PTk5Nzg5Mzg0NyByZz1zY2htYXJybgp+IyEgdGlkPTk5Nzg5MjM1OAo+SHVtbmksIHZlcnN0ZWh0IGRlbiBIdW1vciBoaWVyIGF1Y2ggbmljaHQgKG1laHIpCgpIdW1vciBpc3QgaGFsdCBzdWJqZWt0aXYuCgpSYXIsIHdlaXNlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKISAoR3JpbW1ib3JuLCAxNi4gQXVnIDIwMDEsIDEzOjQyOjQwKToKfiMhIG9uPU5pY29sYWkgb3Q9OTk3NjkzNTE1IG9nPXNlaGVyLnVybGF1YgpVbSBtYWwgZGVuIEdlcnVlY2h0ZW4genUgd2lkZXJzcHJlY2hlbiBhdWYgZGllIGljaCBoaWVyIGltbWVyIHdpZWRlciAKYW5nZXNwcm9jaGVuIHdlcmRlOgpXZWRlciBWZWN0b3Igbm9jaCBTa3kgaGFiZW4gc2ljaCBhdWZncnVuZCBkZXIgQWVuZGVydW5nIGRlciBFUC1XZXJ0aWdrZWl0CmF1cyBkZW0gTUcgenVydWVja2dlem9nZW4uCgotLVZlY3Rvci0tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogISAoR3JpbW1ib3JuLCAxNi4gQXVnIDIwMDEsIDEzOjQyOjQ0KToKfiMhIG9uPURlbCBvdD05OTc4Mjg2Mjkgb2c9c2VoZXIudXJsYXViCn4jISBybj1OaWNvbGFpIHJ0PTk5NzY5MzUxNSByZz1zZWhlci51cmxhdWIKfiMhIHRpZD05OTc2OTM1MTUKTWggc29sbCBkYXMgamV0enQgaGVpc3NlbiBJaHIgc2VpZCBkaWUgZ2FuemUgWmVpdCBpbiBVcmxhdWI/IE9kZXIgd2llc28gZGllc2UKUnVicmlrLi4uPwpBY2hqYS4uLiB3ZW4gaW50ZXJlc3NpZXJ0IGRhcyBlaWdlbnRsaWNoLCBWZWN0b3I/CkRpZSBOdURlbCwgZGllIHNpY2ggdW50ZXIgc2VoZXIudXJsYXViIHdhcyBhbmRyZXMgdm9yc3RlbGx0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICEgKEdyaW1tYm9ybiwgMTYuIEF1ZyAyMDAxLCAxMzo0Mjo0NSk6Cn4jISBvbj1OaWNvbGFpIG90PTk5Nzg3MzUzMCBvZz1zZWhlci51cmxhdWIKfiMhIHJuPURlbCBydD05OTc4Mjg2Mjkgcmc9c2VoZXIudXJsYXViCn4jISB0aWQ9OTk3NjkzNTE1Ci4uLndlaWwgZGllc2UgUnVicmlrIHZvbiBkZXIgWmllbGdydXBwZSBnZWxlc2VuIHdpcmQgYXVzIGRlciBhdWNoIGRpZSAKR2VydWVjaHRlIGtvbW1lbi4gV2VsY2hlIFJ1YnJpayBoYWV0dGVzdCBkdSBkZW4gZ2Vub21tZW4gSGVyemNoZW4/IApLb2NocmV6ZXB0ZT8KCi1WZWN0b3ItCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAhIChHcmltbWJvcm4sIDE2LiBBdWcgMjAwMSwgMTM6NDI6NDYpOgp+IyEgb249UHVrIG90PTk5Nzg3ODI5MiBvZz1zZWhlci51cmxhdWIKfiMhIHJuPU5pY29sYWkgcnQ9OTk3ODczNTMwIHJnPXNlaGVyLnVybGF1Ygp+IyEgdGlkPTk5NzY5MzUxNQpBbHNvIGljaCBoYWV0dGUgdmVybXV0ZXQgZHUgZW50c2NoZWlkZXN0IGRpY2ggZnVlciBnZWphbW1lciBvZGVyIG1lZ2FzY2htYXJybgo6KQoKUHVrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAhIChHcmltbWJvcm4sIDE2LiBBdWcgMjAwMSwgMTM6NDI6NDcpOgp+IyEgb249RGVsIG90PTk5Nzk1OTkzOSBvZz1zZWhlci51cmxhdWIKfiMhIHJuPU5pY29sYWkgcnQ9OTk3ODczNTMwIHJnPXNlaGVyLnVybGF1Ygp+IyEgdGlkPTk5NzY5MzUxNQpBbHNvIHdlbm4gRHUgbWljaCBzbyBmcmFnc3QsIGRhbm4gaGFsdGUgaWNoIGRhIGluIERlaW5lbSBGYWxsIE1lZ2FzY2htYXJybgpmdWVyIGFuZ2VicmFjaHQsIHNvIGFscyBwb3RlbnRpZWxsZXIgU3VwZXJzZWhlci4uLgpEaWUgTnVEZWwsIGRpZSBrZWluZSBLb2NocmV6ZXB0ZSBicmF1Y2h0IHdlaWwgc2llIHNlbGJlciBhbCBkZW50ZSBpc3QgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiAhIChHcmltbWJvcm4sIDE2LiBBdWcgMjAwMSwgMTM6NDI6NDgpOgp+IyEgb249Tmljb2xhaSBvdD05OTc5NjAwNTcgb2c9c2VoZXIudXJsYXViCn4jISBybj1EZWwgcnQ9OTk3OTU5OTM5IHJnPXNlaGVyLnVybGF1Ygp+IyEgdGlkPTk5NzY5MzUxNQpBbHNvIFNjaGFldHpjaGVuLAp3ZXIgLXNvIHdpZSBkdS0gbWVpbnQsIHNpY2ggd2VnZW4gaXJnZW5kIG5lbSBBcnRpa2VsIGhpZXIKYXVmc3BpZWxlbiAocHJvZmlsaWVyZW4/KSB6dSBtdWVzc2VuLCBkZXIgbXVzcyBhdWNoIGRhcwpFY2hvIGVydHJhZ2VuLgoKTmljb2xhaSB6ZWlndCBtaXQgZGVtIEZpbmdlciBhdWYgRGVsIHVuZCBsYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6ICEgKEdyaW1tYm9ybiwgMTYuIEF1ZyAyMDAxLCAxMzo0Mjo0OSk6Cn4jISBvbj1QdWsgb3Q9OTk3OTYwMjQ1IG9nPXNlaGVyLnVybGF1Ygp+IyEgcm49Tmljb2xhaSBydD05OTc5NjAwNTcgcmc9c2VoZXIudXJsYXViCn4jISB0aWQ9OTk3NjkzNTE1ClZlcnN0ZWggaWNoIG5pY2h0ICpncnVlYmVsKgpEaWUgQXVzc2FnZSBkYXMgbWVnYXNjaG1hcnJuIGRlciB2ZXJzdGVja3RlIFN1cGVyc2VoZXIga2FuYWwgaXN0IHN0YW1tdCBkb2NoCnZvbiBuZW0gR290dCB1bmQgbmljaHQgdm9uIERlbCwgc2llIHdpZWRlcmhvbHQgZXMgbnVyIGZ1ZXIgZGljaCA6KQpJY2ggZmluZCBlcyBlaGVyIGxvYmVuc3dlcnQgZGFzIHNpZSBkaWNoIGF1ZiBkZWluZSBmZWhsZW5kZSBXaXNzZW5zbHVlY2tlCmhpbndlaXN0LgoKUHVrLCBkYW5rdCBEZWwgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6ICEgKEdyaW1tYm9ybiwgMTYuIEF1ZyAyMDAxLCAxMzo0Mjo1MCk6Cn4jISBvbj1Cb2luZyBvdD05OTc5NjAyOTkgb2c9c2VoZXIudXJsYXViCn4jISBybj1QdWsgcnQ9OTk3OTYwMjQ1IHJnPXNlaGVyLnVybGF1Ygp+IyEgdGlkPTk5NzY5MzUxNQpIdXBwcywgamV0enQgaGFldHRlIGljaCBmYXN0IGRlbiBUaHJlYWQgbmFjaCBzY2htYXJybiB2ZXJsZWd0LCBKb2Ygc2VpCkRhbmtlIGlzdCBtaXIgZ3JhZCBub2NoIG1laW4gbmV1ZXIgTGV2ZWwgZWluZ2VmYWxsZW4gLi4uIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6ICEgKEdyaW1tYm9ybiwgMTYuIEF1ZyAyMDAxLCAxMzo0Mjo1MSk6Cn4jISBvbj1NYXRpcyBvdD05OTc5NjA1MDcgb2c9c2VoZXIudXJsYXViCn4jISBybj1Cb2luZyBydD05OTc5NjAyOTkgcmc9c2VoZXIudXJsYXViCn4jISB0aWQ9OTk3NjkzNTE1CkRlciBlcnN0ZSBBcnRpa2VsIGRpZXNlcyBUaHJlYWRzIHdhciBpbmZvcm1hdGl2IC0gaW1tZXJoaW4gd3VyZGUgd2lya2xpY2gKdmVybWVocnQgbmFjaCBkZXIgQWJ3ZXNlbmhlaXQgdm9uIFNreSB1bmQgVmVjdG9yIGdlZnJhZ3QuIFdhcnVtIGRhcyBkYW5uCnNvZm9ydCB3aWVkZXIgcGVyc29lbmxpY2ggd2VyZGVuIG11c3MgLi4uCgpNYXRpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogISAoR3JpbW1ib3JuLCAxNi4gQXVnIDIwMDEsIDEzOjQyOjUyKToKfiMhIG9uPUJvaW5nIG90PTk5Nzk2MDU2OSBvZz1zZWhlci51cmxhdWIKfiMhIHJuPU1hdGlzIHJ0PTk5Nzk2MDUwNyByZz1zZWhlci51cmxhdWIKfiMhIHRpZD05OTc2OTM1MTUKU3RpbW10LCBpY2ggaGFiIG1pY2ggdW5rbGFyIGF1c2dlZHJ1ZWNrdCAuLi4gaWNoIGhhZXR0ZSBhbGxlIGJpcyBhdWYgZGVuCmVyc3RlbiB2ZXJsZWd0LgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiAhIChHcmltbWJvcm4sIDE2LiBBdWcgMjAwMSwgMTM6NDM6NDApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5Nzk2MjE3MiByZz1zY2htYXJybgp+IyEgdGlkPTk5NzY5MzUxNQpXZW5uIGlociBtYWwgbmljaHQgc2NobmVsbGVyIEFtb2sgbGF1ZmVuIHd1ZXJkZXQgYWxzIGljaCBybCBiZXNjaGFlZnRpZ3QgYmluCm11ZXNzdGUgaWNoIG5pY2h0IGltbWVyIGRpZSBBcnRpa2VsIGdsZWljaCBpbSBEdXR6ZW5kIHZlcmxlZ2VuLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogISAoRWxiZXJldCwgMTYuIEF1ZyAyMDAxLCAxMzo0NToyMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTk3OTYyMjIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3NjkzNTE1CndhaHJzY2hlaW5saWNoIGhhdCBkYXMgZWggc2Nob24gZWluZXIgdm9yZ2VzY2hsYWdlbiB1bmQgd2FocnNjaGVpbmxpY2ggZ2VodApkYXMgbmNpaHQsIGFiZXIgaXMgZGFzIG1vZWdsaWNoIGRhcyBzY2hvbiBnZWxlc2VuZSBhcnRpa2VsIGdlbGVzZW4gbWFya2llcnQKYmxlaWJlbiB3ZW5uIHNpZSB2ZXJsZWd0IHdlcmRlbj8KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiAhIChTY2hsZWljaGVyLCAxNi4gQXVnIDIwMDEsIDEzOjQ4OjEyKToKfiMhIHJuPUVsYmVyZXQgcnQ9OTk3OTYyMzIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3NjkzNTE1CkF1Y2ggd2lsbCEKClNjaGxlaWNoZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiAhIChHcmltbWJvcm4sIDE2LiBBdWcgMjAwMSwgMTM6NTI6MDkpOgp+IyEgcm49U2NobGVpY2hlciBydD05OTc5NjI0OTIgcmc9c2NobWFycm4KfiMhIHRpZD05OTc2OTM1MTUKSWNoIGhhYiBkYSAob2huZSB0ZWNobmlzY2hlcyBWZXJzdGFlbmRuaXMsIG5hdHVlcmxpY2gpIGdlc3Rlcm4sIGFscyBpY2ggZGVyCkhpdHplIHdlZ2VuIG5pY2h0IGVpbnNjaGxhZmVuIGtvbm50ZSwgZWluIGJpc2NoZW4gS29wZnJlY2huZW4gZ2VtYWNodCB1bmQgYmluCmF1ZiBlaW5lIFZlcmdyb2Vzc2VydW5nIGRlciBTcGllbGVyc2F2ZWZpbGVzIHVtIG1pbmRlc3RlbnMgMjAga2IgZ2Vrb21tZW4sCmFiZ2VzZWhlbiB2b24gZWluZW0ga29tcGxldHRlbiBVbXN0cmlja2VuIGRlciBtcGEuIEFiZXIgYml0dGUsIGRhcyBnZWh0CnZlcm11dGxpY2ggYXVjaCBzcGFyc2FtZXIuIER1IGJpc3QgamVkZXJ6ZWl0IHdpbGxrb21tZW4gTWFnaWVyIHp1IHdlcmRlbiB1bmQKZGFzIHVtenVzZXR6ZW4uLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6ICEgKFNjaGxlaWNoZXIsIDE2LiBBdWcgMjAwMSwgMTM6NTM6MDkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5Nzk2MjcyOSByZz1zY2htYXJybgp+IyEgdGlkPTk5NzY5MzUxNQpCaXN0IGR1IGZ1ZXIgZGllIE1QQSB6dXNhdGVuZGlnIG9kZXIgaWNoPwoKU2NobGVpY2hlciBuaWUgTWFnaWVyIGdld2VzZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogISAoRWxiZXJldCwgMTYuIEF1ZyAyMDAxLCAxMzo1MzoyNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTk3OTYyNzI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3NjkzNTE1CmlzdCBtZWluIFBhcHMgbmljaHQgTWFnaWVyPyAKKnd1bmRlciA6KQoKRWxiaQoKUFMuIGljaCBoYWIga2VpbmUgQWhudW5nIGljaCBoYWIgbnVyIGxpZWIgZ2VmcmFndCB1bmQgd2VubnMgbmNpaHQgZ2VodCwgZGFubgpsZXMgaWNoIHdlaXRlciB2ZXJzY2hvYmVuZSBhcnRpa2VsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogISAoR3JpbW1ib3JuLCAxNi4gQXVnIDIwMDEsIDEzOjUzOjQ0KToKfiMhIHJuPVNjaGxlaWNoZXIgcnQ9OTk3OTYyNzg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3NjkzNTE1CldlZGVyIG5vY2guIExvY28gaXN0IGZ1ZXIgZGllIG1wYSB6dXN0YWVuZGlnLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogISAoU2NobGVpY2hlciwgMTYuIEF1ZyAyMDAxLCAxMzo1NDozNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTk3OTYyODI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3NjkzNTE1Ck5hIGRlciBzZXR6dCBkYXMgYmVzdGltbXQgbW9yZ2VuIHVtIDotKQoKU2NobGVpY2hlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6ICEgKFd1cnplbCwgMTYuIEF1ZyAyMDAxLCAxNDoyNDo0NSk6Cn4jISBybj1QYXRyeW4gcnQ9OTk3OTY0NDk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3NjkzNTE1CmRhcyBzaWVodCBzZWhyIG5hY2ggZWluZW0gaW5mb3JtYXRpa2VyLWFuc2F0eiBhdXMuLi4gc3ByaWNoOiBmdWVyIGRlbgpub3JtYWxlbiB3dXJzdGllIHZvZWxsaWcgdW52ZXJzdGFlbmRsaWNoIHVuZCB1ZWJlcmRpZXMgc28gc2VociB2ZXJsaWVidAppbiBkaWUgdGVjaG5paywgZGFzcyBlY2h0ZSBiZW5lZml0cyB1bmVudGRlY2t0IGJsZWliZW4uCm1pdCBhbmRlcmVuIHdvcnRlbjogd2FzIHdpbGxzdCBkdSB1bnMgZGFtaXQgc2FnZW4/IDopCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiAhIChOb25uZSwgMTYuIEF1ZyAyMDAxLCAxNDoyNzoxMik6Cn4jISBybj1XdXJ6ZWwgcnQ9OTk3OTY0Njg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3NjkzNTE1Ck1hbiBrb2VubnRlIGF1Y2ggZWluZmFjaCAnaWdub3JpZXJlIGdyaW1tYm9ybi5uZXdzJyBtYWNoZW4uIDEuIExpZXN0IG1hbgpzZWx0ZW4gQXJ0aWtlbCB6d2VpbWFsLiAyLiBlcnNwYXJ0IG1hbiBzaWNoIGRhcyBnZXdhZXNjaHQgdm9uIEdyaW1tYm9ybi4gMy4gRXMKa29zdGV0IG1pbmltYWwgbWVociBTcGVpY2hlciBpbSBTcGllbGVyLiA0LiBLZWluIFByb2dyYW1taWVyYXVmd2FuZC4KCkRhcyBzaW5kIGphIGdsZWljaCA0IFNhY2hlbiBhdWYgZWlubWFsISBEYXMgZ2VodCBudW4gd2lya2xpY2ggbmljaHQgKGM7Ck5vbm5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6ICEgKEdyaW1tYm9ybiwgMTYuIEF1ZyAyMDAxLCAxNDozNToyMik6Cn4jISBybj1Ob25uZSBydD05OTc5NjQ4MzIgcmc9c2NobWFycm4KfiMhIHRpZD05OTc2OTM1MTUKSmEsIGljaCB3YXIgYXVjaCBzY2hvbiBnZWxlZ2VudGxpY2ggdmVyc3VjaHQgZGFzIGlnbm9yaWVyZSBncmltbWJvcm4ubmV3cwpMZXV0ZW4gdW50ZXJ6dXNjaGllYmVuLCB1bSBtaXIgZGVyZW4gUmVha3Rpb25lbiB6dSBlcnNwYXJlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogISAoV3VyemVsLCAxNi4gQXVnIDIwMDEsIDE0OjQ5OjA1KToKfiMhIHJuPUdyaW1tYm9ybiBydD05OTc5NjUzMjIgcmc9c2NobWFycm4KfiMhIHRpZD05OTc2OTM1MTUKbXVzcyBpY2ggZGlyIHdpcmtsaWNoIGVya2xhZXJlbiwgZGFzcyBpZ25vcmllcmUgPHNwaWVsZXI+Lm5ld3MgYWxsZ2VtZWluCmZ1bmt0aW9uaWVydD8gZGFzIGlzdCBrZWluIHNwZXppZWxsIGF1ZiBkaWNoIGF1c2dlcmljaHRldGVzIGZlYXR1cmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogISAoUGF0cnluLCAxNi4gQXVnIDIwMDEsIDE0OjUwOjUxKToKfiMhIHJuPVd1cnplbCBydD05OTc5NjYxNDUgcmc9c2NobWFycm4KfiMhIHRpZD05OTc2OTM1MTUKd28gbGllc3QgZHUgZGVubiBzb3dhcyBoZXJhdXM/IGRhIG11c3MgaWNoIG1pY2ggbmljaCB3dW5kZXJuLCBkYXNzIGR1IHNvZ2FyCm1laW5lIGdhZ3MgbmljaHQgbWVociB2ZXJzdGVoc3QgOikKCi0tIApwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiAhIChHcmltbWJvcm4sIDE2LiBBdWcgMjAwMSwgMTQ6NTY6NDApOgp+IyEgcm49UGF0cnluIHJ0PTk5Nzk2NjI1MSByZz1zY2htYXJybgp+IyEgdGlkPTk5NzY5MzUxNQpFYmVuLiBVbmQgd2VubiBpY2ggZGFzIGlnbm9yaWVyZSBncmltbWJvcm4ubmV3cyBqZW1hbmRlbSBpbiBkaWUgSWdub3JpZXJlbGlzdGUKc2NobXVnZ2VsIGRhbm4gZXJzcGFyZSBpY2ggbWlyIGRhbWl0IHVucXVhbGlmaXppZXJ0ZSBLb21tZW50YXJlIHNlaW5lcnNlaXRzCnVlYmVyIG1laW5lIG1wYS1Ba3Rpdml0YWV0ZW4uIApXYXMgZ2VuYXUgd29sbHRlc3QgRHUgbWlyIGVya2xhZXJlbiwgV3VyemVsPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogISAoRWxiZXJldCwgMTYuIEF1ZyAyMDAxLCAxNDo1ODowNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTk3OTY2NjAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3NjkzNTE1CmhtbSwgaWNoIGdlYmUgbnVyIHVucXVhbGlmaXppZXJ0ZSBLb21tZW50YXJlIGluIGRlciBtcGEgYWIgOikKCkVsYmkgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogISAoS2FyaXMsIDE2LiBBdWcgMjAwMSwgMTU6MDE6MTUpOgp+IyEgcm49RWxiZXJldCBydD05OTc5NjY2ODUgcmc9c2NobWFycm4KfiMhIHRpZD05OTc2OTM1MTUKRGllc2VyIEtvbW1lbnRhciBpc3QgYXVjaCBub2NoIHZvZWxsaWcgcmVkdW5kYW50IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogISAoQm9pbmcsIDE2LiBBdWcgMjAwMSwgMTU6MDE6NDkpOgp+IyEgcm49S2FyaXMgcnQ9OTk3OTY2ODc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3NjkzNTE1CkRlaW5lciBvZGVyIHNlaW5lcj8KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6ICEgKEVsYmVyZXQsIDE2LiBBdWcgMjAwMSwgMTU6MDE6NTkpOgp+IyEgcm49S2FyaXMgcnQ9OTk3OTY2ODc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3NjkzNTE1CmViZW4sIHJlZHVuZGFudCB1bmQgYWJlciB3YWhyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogISAoS2FyaXMsIDE2LiBBdWcgMjAwMSwgMTU6MDc6NTMpOgp+IyEgcm49Qm9pbmcgcnQ9OTk3OTY2OTA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3NjkzNTE1CkRhcyBEdSBzb3dhcyBpbiBkaWVzZXIgUnVicmlrIGZyYWdzdCwgQm9pbmcuLi4KS2FyaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNoYW9zbWFnaWVyLi4uIChWYXJsYXJpb24sIDE4LiBBdWcgMjAwMSwgMTk6Mzc6MjMpOgpDaGFvdCBNdXBmZWwgKExldmVsIDEzLCBNYWdpZXIpIGJldHJhdCBnZXJhZGUgZGFzIE1vcmdlbmdyYXVlbi4KRGVyIERhZW1vbiBsYWVzc3QgRGljaCB1bmtvbnRyb2xsaWVydCBoZXJ1bWxhdWZlbi4KClZhcmwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ2hhb3NtYWdpZXIuLi4gKFZhbmlvbiwgMTguIEF1ZyAyMDAxLCAyMDo1MzowNCk6Cn4jISBybj1WYXJsYXJpb24gcnQ9OTk4MTU2MjQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4MTU2MjQzClVuZCBkdSBoYXR0ZXN0IG5vY2ggWmVpdCBkaWVzZW4gQXJ0aWtlbCB6dSBzY2hyZWliZW4sIGJldm9yIGR1IExhcnMgYmVzdWNodApoYXN0PwoKViosIGdsYXVidCwgZGFzIE11cGZlbCB3b2hsIGxhbmdzYW0gd2VpY2ggd2lyZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndhcyBudW4/IChHbm9tZSwgMTkuIEF1ZyAyMDAxLCAxNzo0OToyMik6CkdhbmR1ciAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpIaXJ1ZG8gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbiBGcmV1bmQgR2FuZHVyIHRlaWx0IERpciBtaXQ6IG5hYmVuZApEZWluIEZyZXVuZCBIaXJ1ZG8gdGVpbHQgRGlyIG1pdDogbW9yZ2VuCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdhcyBudW4/IChHYW5kdXIsIDE5LiBBdWcgMjAwMSwgMTc6NTA6NDcpOgp+IyEgcm49R25vbWUgcnQ9OTk4MjM2MTYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4MjM2MTYyCm51biBnYW56IGVpbmZhY2ggLi4uIGljaCBiaW4gKHJsKSBmYW1pbGllbnBhcGEsIGhpcnVkbyBuaWNodC4KCmdydXNzLCBnYW5kdXIgKG1hbmNobWFsIG1vZWNodGUgaWNoIG1hbCB3aWVkZXIgYXVzc2NobGFmZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2h1bHRlcnp1Y2tlbiAoUm9sYW5kLCAxOS4gQXVnIDIwMDEsIDE5OjAzOjE4KToKV2FzIGRhcyB3b2hsIGJlZGV1dGV0LgpIaWdodCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKSGlnaHQgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzY2h1bHRlcnp1Y2tlbiAoR3J1bXBmLCAxOS4gQXVnIDIwMDEsIDE5OjA0OjE2KToKfiMhIHJuPVJvbGFuZCBydD05OTgyNDA1OTggcmc9c2NobWFycm4KfiMhIHRpZD05OTgyNDA1OTgKRGFzIGJlZGV1dGV0Li4uCkhpZ2h0ICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpIaWdodCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhISAgCgpHcnVtcGYgZ3J1bXBmdCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IG1hbCB3YXMga29uc3RydWt0aXZlcy4uLiAoUmFyZGlhbiwgMjAuIEF1ZyAyMDAxLCAxNzowNjoyOCk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTk3OTg0MzgxIHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9OTk3Mjk0NjA0Cj5tYW4gc2ljaGVyIHNhZ2VuOiB3ZWRlciBlciBub2NoIHNlaW4gYnJ1ZGVyIHNpbmQgbWFzb2NoaXN0ZW4uIGltIGdlZ2VudGVpbC4KCkljaCBkYWNodGUgaW1tZXIsIE1hc29jaGlzbXVzIHdhZXJlIEJld2VyYnVuZ3Nrcml0ZXJpdW0gZnVlciBkZW4gSm9iICJNb25zdGVyCmltIE1HIC0gV2lyIGJpZXRlbiBBdWZzdGllZ3MtIHVuZCBXZWl0ZXJiaWxkdW5nc21vZWdsaWNoa2VpdGVuISIKClJhciwgendlaWZlbG5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogbWFsIHdhcyBrb25zdHJ1a3RpdmVzLi4uIChXdXJ6ZWwsIDIwLiBBdWcgMjAwMSwgMTc6MjM6MDApOgp+IyEgcm49UmFyZGlhbiBydD05OTgzMTk5ODggcmc9c2NobWFycm4KfiMhIHRpZD05OTcyOTQ2MDQKZXMgZ2lidCBzcGllbGVyLCBkaWUgc3RlcmJlbiBvZWZ0ZXIgYWxzIG1hbmNoZSBtb25zdGVyLiBmcmFnIGRpZSBkb2NoIG1hbApuYWNoIGlocmVyIG1laW51bmcgenVtIHRoZW1hIG1hc29jaGlzbXVzIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogbWFsIHdhcyBrb25zdHJ1a3RpdmVzLi4uIChTY2hsZWljaGVyLCAyMC4gQXVnIDIwMDEsIDE3OjUwOjMwKToKfiMhIHJuPVd1cnplbCBydD05OTgzMjA5ODAgcmc9c2NobWFycm4KfiMhIHRpZD05OTcyOTQ2MDQKSGFiZW4gU3BpZWxlciBlaW5lIE1laW51bmc/IER1ZXJmZW4gc2llIGRpZSBhdWNoIHdpcmtsaWNoIGhhYmVuPyBLYW5uIG1hbiBkYQpuaXggZ2VnZW4gdHVuPyBHaWJ0IGphIG5vY2ggbmUgcmljaHRpZ2UgQW5hcmNoaWUgaGllciEKClNjaGxlaWNoZXIsIG5hY2ggRGlrdGF0IHZlcmVpc3N0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IG1hbCB3YXMga29uc3RydWt0aXZlcy4uLiAoS2FyaXMsIDIwLiBBdWcgMjAwMSwgMTc6NTE6MzApOgp+IyEgcm49U2NobGVpY2hlciBydD05OTgzMjI2MzAgcmc9c2NobWFycm4KfiMhIHRpZD05OTcyOTQ2MDQKSmEsIFNwaWVsZXIgaGFiZW4gZWluZSBNZWludW5nLiBTaWUgZHVlcmZlbiBkYXMgYXVjaC4KQWJlciB0dW4gbXVzcyBtYW4gbml4IGRhZ2VnZW4uIEVzIGhvZXJ0IGphIGVoIGtlaW5lciBkcmF1Zi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBtYWwgd2FzIGtvbnN0cnVrdGl2ZXMuLi4gKFNjaGxlaWNoZXIsIDIwLiBBdWcgMjAwMSwgMTc6NTI6MjEpOgp+IyEgcm49S2FyaXMgcnQ9OTk4MzIyNjkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk3Mjk0NjA0CldhcnVtIHNvbGwgZXMgRXVjaCBkYSBiZXNzZXIgZ2VobiBhbHMgc28ga2xlaW5lbiBXdXJzdCBNYWdzIHdpZSBtaXIgOy0pKSkKClNjaGxlaWNoZXIgTWVpbnVuZ3Nsb3MKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjAuIEF1ZyAyMDAxLCAyMToxNDoxNCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTk4MzM0ODI4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1HbG9pbnNvbiBydD05OTgzMzQ3NjYgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKVGphLCBNYW5uIG9kZXIgTWVtbWU/IFNvZmFzIGhhbHRlIGljaCBsZWRpZ2xpY2ggZnVlciBIaWxmbWl0dGVsIGRlcgpFdm9sdXRpb24uLi4KCkdkQSB0YXVjaHQgZnJlaXdpbGxpZyBuaWNodCB1bnRlciA0MCBjbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMC4gQXVnIDIwMDEsIDIxOjE1OjAzKToKfiMhIG9uPVdpbGxvdyBvdD05OTgzMzQ4ODMgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUdyaW1tYm9ybiBydD05OTgzMzQ4Mjggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKaHVjaD8gZHUgdGF1Y2hzdCBzbyB0aWVmPyBkYSBpc3QgZG9jaCBkZXIga29tcGxldHRlIGtvcGYgdW50ZXIgd2Fzc2VyLi4uCldlaWRjaGVuIFdpbGxvdyB0cmF1dCBzaWNoIGRhcyBuaWNodCB6dQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMC4gQXVnIDIwMDEsIDIxOjE2OjA5KToKfiMhIHJuPUdyaW1tYm9ybiBydD05OTgzMzQ5MDMgcmc9c2NobWFycm4KfiMhIHRpZD05OTgzMTE3NjEKSmEsIGRlc3dlZ2VuIGhhbHRlIGljaCBtaWNoIGRhbm4gamEgYXVjaCBtaXQgZGVuIEhhZW5kZW4gYW0gQmVja2VucmFuZCBmZXN0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHbG9pbnNvbiwgMjAuIEF1ZyAyMDAxLCAyMToxOTo1Myk6Cn4jISBybj1HcmltbWJvcm4gcnQ9OTk4MzM0OTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4MzExNzYxCkphamEsIHdpZSBkaWVzZSBkaWNrZW4gS2luZGVyIGRpZSBtZWluZSBNdXR0ZXIgaW1tZXIgdmVyc3VjaHRlbiBhbiBkZXIgU3RhbmdlCmlucyBXYXNzZXIgenUgemllaGVuLiBBYmVyIGF1c3NlcmhhbGIgZGVzIFdhc3NlcnMgZWluZSBncm9zc2UgS2xhcHBlLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTXVkZGVyLi4uIChFbGFpbmUsIDIwLiBBdWcgMjAwMSwgMjM6MjE6MDUpOgpbVGVhbSBERy1aYXA6R25vbWVdIGhtbW0sIG1laW4gd2VpbiBpcyBhbGxlLiBnZWJ0IG1pciBhbGxvaGwhCltUZWFtIERHLVphcDpHbm9tZV0gYWVoLi4gb2RlciBzbwpEZWluZSBGcmV1bmRpbiBOb25uZSB0ZWlsdCBEaXIgbWl0OiB3b3csIHdhcyBmdWVyIGFiZ2VmYWhyZW5lIGVmZmVrdGUgbWFuIG1pdApEZWluZSBGcmV1bmRpbiBOb25uZSB0ZWlsdCBEaXIgbWl0OiBlaW5lbSBmZWhsZXIgaW4gZWluZXIKRGVpbmUgRnJldW5kaW4gTm9ubmUgdGVpbHQgRGlyIG1pdDogM0QtdHJhbnNmb3JtYXRpb25zbWF0cml4IG1hY2hlbiBrYW5uCkRlaW5lIEZyZXVuZGluIE5vbm5lIHRlaWx0IERpciBtaXQ6IGJlc3NlciBhbHMga2lmZmVuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM4OjQ4KToKfiMhIG9uPUJvaW5nIG90PTk5ODMxNjg2NCBvZz1hbGxnZW1laW5lcwp+IyEgcm49TXVhZGRpYiBydD05OTgzMTY4NDAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKRmFocnJhZWRlciBnaWJ0cyBpbiBqZWRlbSBCYWdnZXJzZWUgLi4uIGlzdCBkb2NoIGludGVyZXNzYW50LiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTA6Mzg6NDkpOgp+IyEgb249R3JpbW1ib3JuIG90PTk5ODMxNjg5MCBvZz1hbGxnZW1laW5lcwp+IyEgcm49Qm9pbmcgcnQ9OTk4MzE2ODY0IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTk4MzExNzYxClVuZCB3ZW5uIG1hbiBtYWwgZWluZSBNdW5kdm9sbCBXYXNzZXIgc2NobHVja2VuIHNvbGx0ZSBpc3QgbWFuIGF1Y2ggZnJvaCB3ZW5uCm1hbiBnZXJhZGUgaW4gZWluZW0gU3Vlc3N3YXNzZXJzZWUgaXN0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTA6Mzg6NTApOgp+IyEgb249TXVhZGRpYiBvdD05OTgzMTY5MDggb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUdyaW1tYm9ybiBydD05OTgzMTY4OTAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKQWxsZXMgS2V0emVyIHVuZCBIZWlkZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAxLCAxMDozODo1MSk6Cn4jISBvbj1NdWFkaWIgb3Q9OTk4MzE3MjQ3IG9nPWFsbGdlbWVpbmVzCn4jISBybj1Cb2luZyBydD05OTgzMTY4NjQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKaXJnZW5kd2Fubiwgd2VubiBpY2ggbm9jaCBvZnQgZmFocnJhZCBob2VyZSBnaWJ0cyBlaW5zIG1laHIsIG1pdCBmYWhyZXIKYW5nZWtldHRldCB2ZXJzdGVodCBzaWNoIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTA6Mzg6NTIpOgp+IyEgb249R2xvaW5zb24gb3Q9OTk4MzM0NzY2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1Cb2luZyBydD05OTgzMTY4NjQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKSG1qYSwgaW4gbWFuY2hlbiBCYWdnZXJzZWVuIGdpYnQgZXMgYWJlciB1bnRlbiBsZWlkZXIgYXVjaCBub2NoIG1laHIgYWxzIG51cgpGYWhycmFlZGVyLiBTb3dhcyB3aWUgcm9zdGlnZSBEcmFlaHRlIG9kZXIgU2VpbGUuIFNlaHIgdW5zY2hvZW4gZnVlcgpPaG5lZmxhc2NoZW5udXJmdWVuZm1ldGVydGllZnRhdWNoZXIgd2llIG1pY2guCgpHbG9pbihzb24pIHNhY2h0OiBIYWx0IGRpZSBMdWZ0IGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM4OjUzKToKfiMhIG9uPVRyb3kgb3Q9OTk4Mzc1NDY2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1HbG9pbnNvbiBydD05OTgzMzQ3NjYgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKLi4udW5kIGVyc3QgZGllIEtyb2tvZGlsZSwgZGllIGF1cyBpcmdlbmR3ZWxjaGVuIFRlcnJhcmllbiBhYmhhdWVuIHVuZAppbiBCYWdnZXJzZWVuIHVudGVydGF1Y2hlbi4uLgoKVHJveSAtIHRhdWNodCBtYWwgd2llZGVyIGdhciBuaXguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTA6Mzg6NTQpOgp+IyEgb249U2NobGVpY2hlciBvdD05OTgzNzU5NDcgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVRyb3kgcnQ9OTk4Mzc1NDY2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTk4MzExNzYxCkpvaCwgZGFzIFZpZWggaGllcyB6LkIuIFNhbW15LCB3YXIgZWluIEthaW1hbiB1bmQgcGxhbnRzY2h0ZSBtdW50ZXJuIGhpZXIgaW4KRHVlc3NlbGRvcmYgaW0gVW50ZXJiYWNoZXIgU2VlIDstKQoKU2NobGVpY2hlciB0YXVjaHQgZXJzdG1hbCB1bnRlci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM4OjU1KToKfiMhIG9uPUdsb2luc29uIG90PTk5ODM3NzYxNiBvZz1hbGxnZW1laW5lcwp+IyEgcm49U2NobGVpY2hlciBydD05OTgzNzU5NDcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKSGFiZW4gc2llcyBlaWdlbnRsaWNoIGxldHp0bGljaCBnZWdlc3Nlbj8gS3Jva29mbGVpc2NoIHNjaG1lY2t0IG5hZW1saWNoCnppZW1saWNoIGxlY2tlci4gR2VicmF0ZW4gbmF0dWVybGloYywgdWViZXIgZGVuIEltLVdhc3Nlci1adXN0YW5kIGthbm4gbnVyIGRlcgpNYW5uIG1pdCBkZW0gcmljaHRpZ2VuIE1lc3NlciB3YXMgc2FnZW4uCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTA6Mzg6NTYpOgp+IyEgb249U2NobGVpY2hlciBvdD05OTgzNzc4NzUgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUdsb2luc29uIHJ0PTk5ODM3NzYxNiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk5ODMxMTc2MQpOZWluIG5laW4sIFNhbW15IHd1cmRlIGltIG5hZXJyaXNjaGVuIER1ZXNzZWxkb3JmIHNvd2FzIHdpZSBlaW5lIExlZ2VuZGUgdW5kCkxlZ2VuZGVuIHdlcmRlbiBoaWVyIG51ciBzZWx0ZW4gdmVyc3BlaXNzdCwgd29iZWkgZXMgYmVpIGVpbmVtIHNjaHd1bGVuCkthcm5ldmFsc3ByaW56ZW4gd29obCBtYWwgZWluZSBBdXNuYWhtZSBnZWdlYmVuIGhhYmVuIHNvbGwgLSBhYmVyIGRhcyBzaW5kCnVuYmVzdGFldGlndGUgR2VydWVjaHRlLgoKU2NobGVpY2hlciB3ZWRlciBuYWVycmlzY2ggbm9jaCBLdWx0dmVyZGFlY2h0aWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTA6Mzg6NTcpOgp+IyEgb249R2xvaW5zb24gb3Q9OTk4Mzc4MTI2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1TY2hsZWljaGVyIHJ0PTk5ODM3Nzg3NSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk5ODMxMTc2MQpVZWJlciBkZW4gR2VzY2htYWNrIHZvbiBQcmluemVuIG9kZXIgU2Nod3VsZW4gd2Vpc3MgaWNoIG5pY2h0cyB6dSBzYWdlbiwgZGFoZXIKaXN0IG1pciBkYXMgYXVjaCB3dXJzY2h0IG9iIGlociBkZW4gZ2VnZXNzZW4gaGFidC4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTA6Mzg6NTgpOgp+IyEgb249U2NobGVpY2hlciBvdD05OTgzNzgzNDIgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUdsb2luc29uIHJ0PTk5ODM3ODEyNiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk5ODMxMTc2MQpOYWphIGRhbm4gcHJvYmllciBkb2NoIG1hbCBlaW4gU3RyYXVzc2Vuc3RlYWssIHNjaG1lY2t0IHp3YXIgd29obCBhdWNoIG5pY2h0CnByaW56bGljaCBhYmVyIHRyb3R6ZGVtIHNlaHIgZ3V0LgoKU2NobGVpY2hlciBzaWNoIGZyYWdlbmQgb2IgZGFzIGhpZXIgS29jaHJlemVwdGUgaXN0PyBHcmltbWJvcm4gdHUgbWFsIHdhcyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTA6Mzg6NTkpOgp+IyEgb249TXVhZGRpYiBvdD05OTgzNzg2OTcgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVNjaGxlaWNoZXIgcnQ9OTk4Mzc4MzQyIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTk4MzExNzYxClZvciBhbGxlbSBpc3QgU3RyYXVzc2VuZmxlaXNjaCBmZXR0YXJtIChudWxsIGZldHQ/KSwgc2NobWVja3Qgd2llIGZpbGV0c3RlYWsKdm9tIHJpbmQgdW5kIG1hY2h0IG5pY2h0IHdhaG5zaW5uaWcuIG9wdGltYWwgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTA6Mzk6MDApOgp+IyEgb249V3VyemVsIG90PTk5ODM3ODc5NyBvZz1hbGxnZW1laW5lcwp+IyEgcm49TXVhZGRpYiBydD05OTgzNzg2OTcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKenVtaW5kZXN0ZW5zIHNvIGxhbmdlIG9wdGltYWwsIGJpcyBtYW4gbWFsIGVpbmUgZGVyIGRldXRzY2hlbiBzdHJhdXNzZW5mYXJtZW4KZ2VzZWhlbiBoYXQuIGRhIGthbm4gZWluZW0gc2Nob24gbWFsIGRlciBhcHBldGl0IGF1ZiBkYXMgZmxlaXNjaCB2ZXJnZWhlbi4KCnd1cnplbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAxLCAxMDozOTowMSk6Cn4jISBvbj1TY2hsZWljaGVyIG90PTk5ODM3ODgxMyBvZz1hbGxnZW1laW5lcwp+IyEgcm49TXVhZGRpYiBydD05OTgzNzg2OTcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKQWxsZXMgb2sgc29sYW5nZSBpY2ggZGllIFZpZWNoZXIgbmljaHQgc2VsYnN0IGVybGVnZW4gbXVzcywgZGllIHJlaXNzZW4gc28KaGFlc3NsaWNoZSBuYXJiZW4uLi4KClNjaGxlaWNoZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTA6Mzk6MDIpOgp+IyEgb249U2NobGVpY2hlciBvdD05OTgzNzg5NDIgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVd1cnplbCBydD05OTgzNzg3OTcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKQW4gZGllc2VyIFN0ZWxsZSBtYWwgZWluIFppdGF0IHZvbSBrdWVyemxpY2ggdmVyc3RvcmJlbmVuIFdhdSBIb2xsYW5kOiAiSWNoCmJpbiBuaWNodCBWZWdldGFyaWVyIHdlaWwgaWNoIGRpZSBUaWVyZSBsaWViZSBzb25kZXIgd2VpbCBpY2ggZGllIFBmbGFuemVuIHNvCmhhc3NlLiIKQnllIFdhdSEKClNjaGxlaWNoZXIgRmxlaXNjaGVzc2VyIChNb2VnZW4gc2llIFJpbmRmbGVpc2NoPyBXYWhuc2lubmlnIGdlcm5lISkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTA6Mzk6MDMpOgp+IyEgb249R3JpbW1ib3JuIG90PTk5ODM3ODk4MiBvZz1hbGxnZW1laW5lcwp+IyEgcm49U2NobGVpY2hlciBydD05OTgzNzg5NDIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKVW5kIGljaCBoYWJlIG1pY2ggbmljaHQgYW4gZGllIFNwaXR6ZSBkZXIgTmFocnVuZ3NrZXR0ZSBnZWthZW1wZnQgdW0gZGFubgpWZWdldGFyaWVyIHp1IHdlcmRlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAxLCAxMDozOTowNCk6Cn4jISBvbj1TY2hsZWljaGVyIG90PTk5ODM3OTA2OCBvZz1hbGxnZW1laW5lcwp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5ODM3ODk4MiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk5ODMxMTc2MQpBbiBkZXIgU3BpdHplIGRlciBOYWhydW5nc2tldHRlIHN0ZWhzdCBEdSBhYmVyIGF1Y2ggbnVyIGhpZXIgaW0gInNpY2hlcmVuIgpFdXJvcGEsIGdlaCBtYWwgaW4gZGVuIERzY2h1bmdlbCBvZGVyIGluIGRpZSBTdGVwcGUgZGEgc2llaHQgZGllY2ggU2FjaGUgZ2FuegpzY2huZWxsIGFuZGVycyBhdXMgOy0pCgpTY2hsZWljaGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM5OjA1KToKfiMhIG9uPUJvaW5nIG90PTk5ODM3OTEyNiBvZz1hbGxnZW1laW5lcwp+IyEgcm49U2NobGVpY2hlciBydD05OTgzNzkwNjggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKS29tbXQgaW1tZXIgYXVmIGRpZSBBdXNydWVzdHVuZyBhbiAuLi4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAxLCAxMDozOTowNik6Cn4jISBvbj1TY2hsZWljaGVyIG90PTk5ODM3OTE4MiBvZz1hbGxnZW1laW5lcwp+IyEgcm49Qm9pbmcgcnQ9OTk4Mzc5MTI2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTk4MzExNzYxCk5hamEgZGllIGdsZWljaGUgQXVzcnVlc3R1bmcgbWl0IGRlciBEdSBhdWNoIGhpZXIgRGVpbiBFc3NlbiBlcmxlZ3N0L2VpbmthdWZ0cwp9Oi0+CgpTY2hsZWljaGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM5OjA3KToKfiMhIG9uPU11YWRkaWIgb3Q9OTk4Mzc5Mjc0IG9nPWFsbGdlbWVpbmVzCn4jISBybj1TY2hsZWljaGVyIHJ0PTk5ODM3OTE4MiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk5ODMxMTc2MQoyMC1NYXJrLVNjaGVpbj8gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM5OjA4KToKfiMhIG9uPVNjaGxlaWNoZXIgb3Q9OTk4Mzc5Mzg4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1NdWFkZGliIHJ0PTk5ODM3OTI3NCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk5ODMxMTc2MQpJbSBad2VpZmVsc2ZhbGxlIGF1Y2ggbm9jaCBlaW4gVGVsZWZvbiBmYWxscyBEdSBQaXp6YXRheGlrdW5kZSBiaXN0IDstKQoKU2NobGVpY2hlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAxLCAxMDozOTowOSk6Cn4jISBvbj1NdWFkZGliIG90PTk5ODM3OTQyNCBvZz1hbGxnZW1laW5lcwp+IyEgcm49U2NobGVpY2hlciBydD05OTgzNzkzODggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKRGllIGhhYmVuIFN0cmF1c3NlbmZsZWlzY2g/IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAxLCAxMDozOToxMCk6Cn4jISBvbj1TY2hsZWljaGVyIG90PTk5ODM3OTU0NiBvZz1hbGxnZW1laW5lcwp+IyEgcm49TXVhZGRpYiBydD05OTgzNzk0MjQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKTmVlZWVlZWVlZSwgd2VubiBtZWluZSBMaWVic3RlIHp1IEJlc3VjaCBpc3Qgd2VyZGUgaWNoIGRlciBkb2NoIGtlaW4gUGl6emF0YXhpCnp1bXV0ZW4uLi4gQWNoamEsIDIwIERNIGhhYmVuIGZ1ZXIgZGFzIFN0cmF1c3NlbnN0ZWFrIGF1Y2ggbmljaHQgd2lya2xpY2gKZ2VyZWljaHQgOy0pCgpTY2hsZWljaGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM5OjExKToKfiMhIG9uPUdyaW1tYm9ybiBvdD05OTgzNzk1NjIgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU11YWRkaWIgcnQ9OTk4Mzc5NDI0IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTk4MzExNzYxClVuZCBpY2ggc2FnIG5vY2gsIGRlciBnZWJyYXVjaHRlIExlbyBJIHdhciBlaW4gZ3V0ZXIgS2F1Zi4gU2FldWZ0IHp3YXIgRGllc2VsCndpZSBibG9lZCwgYWJlciBtYW4ga29tbXQgYW4uCgpTbywgd2FzIHdhcmVuIGpldHp0IGRpZSBQcm9ibGVtZSBtaXQgU3RlcHBlLCBEc2NodW5nZWwgdW5kIE5haHJ1bmdza2V0dGU/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTA6Mzk6MTIpOgp+IyEgb249U2NobGVpY2hlciBvdD05OTgzNzk2MTYgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUdyaW1tYm9ybiBydD05OTgzNzk1NjIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKRGVyIHZlcnJlY2t0IERpciBkb2NoIHNjaG9uIGJlaW0gZXJzdGVuIFN0YXUgYW0gS2FybWVuZXIgS3JldXouCgpTY2hsZWljaGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM5OjEzKToKfiMhIG9uPU11YWRkaWIgb3Q9OTk4Mzc5NjQ5IG9nPWFsbGdlbWVpbmVzCn4jISBybj1TY2hsZWljaGVyIHJ0PTk5ODM3OTYxNiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk5ODMxMTc2MQpXaWVzbyBzdGF1PyAqY3J1bmNoKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAxLCAxMDozOToxNCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9OTk4Mzc5NjcxIG9nPWFsbGdlbWVpbmVzCn4jISBybj1TY2hsZWljaGVyIHJ0PTk5ODM3OTYxNiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk5ODMxMTc2MQpTdGF1PyBXYXMgZnVlciBlaW4gU3RhdT8gSWNoIGVybGViZSBnZWxlZ2VudGxpY2ggc28gZWluIEtuaXJzY2hlbiB1bnRlciBkZW4KS2V0dGVuLCBhYmVyIFN0YXUgaGFiIGljaCBlaWdlbnRsaWNoIG5vY2gga2VpbmVuIGVybGVidC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM5OjE1KToKfiMhIG9uPVNjaGxlaWNoZXIgb3Q9OTk4Mzc5NzIxIG9nPWFsbGdlbWVpbmVzCn4jISBybj1HcmltbWJvcm4gcnQ9OTk4Mzc5NjcxIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTk4MzExNzYxCkJlaSBuZW0gMzggVG9ubmVyIFRhbmtsYXN0enVnIHdvaGwgZWhlciAqQlVNTSogYWxzICpjcnVuY2gqCgpTY2hsZWljaGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM5OjE2KToKfiMhIG9uPVpvb2sgb3Q9OTk4Mzc5NzQxIG9nPWFsbGdlbWVpbmVzCn4jISBybj1TY2hsZWljaGVyIHJ0PTk5ODM3OTcyMSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk5ODMxMTc2MQpXYXMgZ2lidHMgaGllciBmdWVyIFJlXjEwMD8KClpvb2sgbWVpbnQ6IEFidHJ1ZW5uaWdlIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAxLCAxMDozOToxNyk6Cn4jISBvbj1NdWFkZGliIG90PTk5ODM3OTc0MiBvZz1hbGxnZW1laW5lcwp+IyEgcm49U2NobGVpY2hlciBydD05OTgzNzk3MjEgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKTmFqYSwgbWFuIG11c3MgamEgbmljaHQgc3R1cGlkZSB1ZWJlciBhbGxlIGRydWViZXJmYWhyZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTA6Mzk6MTgpOgp+IyEgb249U2NobGVpY2hlciBvdD05OTgzNzk3OTcgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU11YWRkaWIgcnQ9OTk4Mzc5NzQyIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTk4MzExNzYxCkRhbm4gc3RlaHQgbWFuIGFiZXIgd2llZGVyIGltIFN0YXUuLi4KClNjaGxlaWNoZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTA6Mzk6MTkpOgp+IyEgb249TXVhZGRpYiBvdD05OTgzNzk4Mjkgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVNjaGxlaWNoZXIgcnQ9OTk4Mzc5Nzk3IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTk4MzExNzYxCk5lZSwgZGFubiB3ZWljaHQgbWFuIGRlbSBUYW5rbGFzdHp1ZyBhdXMgdW5kIHBsYWV0dGV0IGRhZnVlciBkZW4gWjggbmViZW5kcmFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAxLCAxMDozOToyMCk6Cn4jISBvbj1TY2hsZWljaGVyIG90PTk5ODM3OTg3MyBvZz1hbGxnZW1laW5lcwp+IyEgcm49TXVhZGRpYiBydD05OTgzNzk4Mjkgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKT2NoIGtvbW0sIGVpbiBaOCBrYW5uc3UgamEgYXVjaCBtaXQgbmVtIFRhbmtsYXN0enVnIHBsYWV0dGVuLgoKU2NobGVpY2hlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAxLCAxMDozOToyMSk6Cn4jISBvbj1NdWFkZGliIG90PTk5ODM3OTkxOSBvZz1hbGxnZW1laW5lcwp+IyEgcm49U2NobGVpY2hlciBydD05OTgzNzk4NzMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKRHUgbWVpbnN0LCBkYXMgaXN0IGJlc3NlciBhbHMgZGVyIExlbz8gTmFqYSwgbWFuIHNvbGx0ZSBnbGF1YiBpY2ggZnVlciBlaW5lCkZhaHJ0IGR1cmNoIC5kZSBzZWluZW4gVGFua2VyIGRhYmVpIGhhYmVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM5OjIyKToKfiMhIG9uPVNjaGxlaWNoZXIgb3Q9OTk4MzgwMDAyIG9nPWFsbGdlbWVpbmVzCn4jISBybj1NdWFkZGliIHJ0PTk5ODM3OTkxOSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk5ODMxMTc2MQpBbHNvIExlbyBtaXQgbmVtIFRhbmtsYXN0ZXIgZGVyIGhpbnRlcmhlcmZhZWhydD8KClNjaGxlaWNoZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAxLCAxMDozOToyMyk6Cn4jISBvbj1Gb29iYXIgb3Q9OTk4MzgwNzY3IG9nPWFsbGdlbWVpbmVzCn4jISBybj1TY2hsZWljaGVyIHJ0PTk5ODM3Nzg3NSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk5ODMxMTc2MQpTaW5kIEthcm5ldmFsc3ByaW56ZW4gbmljaHQgc293aWVzbyBpbW1lciBzY2h3dWw/CgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTA6Mzk6MjQpOgp+IyEgb249U2NobGVpY2hlciBvdD05OTgzODA4NDYgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUZvb2JhciBydD05OTgzODA3Njcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKV2VubiBpY2ggZGFzIG1hbCB3dWVzc3RlLi4uIEplZGVuZmFsbHMgZWluZXIgd2FycyB1biBkZXIgaXN0IGFiZ2VzZXR6dAp3b3JkZW4uLi4gQWJlciBkYSBoYWIgaWNoIG51ciBtZWluZSBaZWl0dW5nc2JpbGR1bmcgd2VpbCB3ZW5uIEthcm5ldmFsIGlzdApzY2hsaWVzc2UgaWNoIGhpZXIgYmVpIG1pciBUdWVyIHVuZCBUb3IuCgpTY2hsZWljaGVyIEthcm5ldmFsc2hhc3NlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAxLCAxMDozOToyNSk6Cn4jISBvbj1LYXJpcyBvdD05OTgzODI3Njggb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU11YWRkaWIgcnQ9OTk4Mzc5ODI5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTk4MzExNzYxClNvbGwgZGFzIGhlaXNzZW4sIGVpbiBaOCBzYWV1ZnQgc28gdmllbCwgZGFzcyBlciBzdGFlbmRpZyBuZWJlbiBuZW0KVGFua2xhc3RlciBmYWhyZW4gbXVzcz8/PwpLYXJpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAxLCAxMDozOToyNik6Cn4jISBvbj1NdWFkZGliIG90PTk5ODM4Mjc5OCBvZz1hbGxnZW1laW5lcwp+IyEgcm49S2FyaXMgcnQ9OTk4MzgyNzY4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTk4MzExNzYxCktsYXNzaXNjaGVyIEZhbGwgdm9uIFRoZW1hIHZlcmZlaGx0LiBTZXR6ZW4uIFNlY2hzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAxLCAxMDozOToyNyk6Cn4jISBvbj1XdXJ6ZWwgb3Q9OTk4MzgyODEwIG9nPWFsbGdlbWVpbmVzCn4jISBybj1LYXJpcyBydD05OTgzODI3Njggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKbmVpbi4gZXMgcmVpY2h0LCB3ZW5uIGRlciBhYnN0YW5kIHp3aXNjaGVuIGRlbiB0YW5rc3RlbGxlbiBuaWNodCB6dSBncm9zcyBpc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM5OjI4KToKfiMhIG9uPUthcmlzIG90PTk5ODM4MjgzMCBvZz1hbGxnZW1laW5lcwp+IyEgcm49TXVhZGRpYiBydD05OTgzODI3OTggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKRGFzIGlzdCBtZWluZSBTcGV6aWFsaXRhZXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM5OjI5KToKfiMhIG9uPUthcmlzIG90PTk5ODM4Mjg2OCBvZz1hbGxnZW1laW5lcwp+IyEgcm49V3VyemVsIHJ0PTk5ODM4MjgxMCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk5ODMxMTc2MQpEZWZpbmllcmU6IG5pY2h0IHp1IGdyb3NzLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTA6Mzk6MzApOgp+IyEgb249TXVhZGRpYiBvdD05OTgzODI4ODYgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUthcmlzIHJ0PTk5ODM4Mjg2OCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk5ODMxMTc2MQo8MTAwa20/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM5OjMxKToKfiMhIG9uPVd1cnplbCBvdD05OTgzODI5MDQgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUthcmlzIHJ0PTk5ODM4Mjg2OCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk5ODMxMTc2MQpudW4sIDUwIGttIHNvbGx0ZSBlciBzY2hhZmZlbi4uLiBoYWIgZXMgYWxsZXJkaW5ncyBub2NoIG5pY2h0IHZlcnN1Y2h0LgoKd3VyemVsIGZhZWhydCBrZWluIGJtdwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAxLCAxMDozOTozMik6Cn4jISBvbj1LYXJpcyBvdD05OTgzODI5MzYgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVd1cnplbCBydD05OTgzODI5MDQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKNTBrbS4uIGhtbS4uIHdhciBkYXMgamV0enQgbWl0IG9kZXIgb2huZSBUYW5rbGFzdHp1ZyBuZWJlbmRyYW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMjogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM5OjMzKToKfiMhIG9uPU11YWRkaWIgb3Q9OTk4MzgyOTY2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1XdXJ6ZWwgcnQ9OTk4MzgyOTA0IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTk4MzExNzYxCk5hamEsIGVyIGlzdCBzY2hvbiBuaWNodCBzbyBzY2hsZWNodCB1bmQgc2NoYWZmdCBzaWNoZXIgYXVjaCBlaW4gcGFhciBLTSwKYWxsZXJkaW5ncyBudXIsIHdlbm4gZXIgdW50ZXJ3ZWdzIG5pY2h0IHZvbiBlaW5lbSBMZW8gZ2VjcnVuY2h0IHdpcmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMzogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM5OjM0KToKfiMhIG9uPVd1cnplbCBvdD05OTgzODMwMDggb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU11YWRkaWIgcnQ9OTk4MzgyOTY2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTk4MzExNzYxCmdvLCBsZW8sIGdvIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzM6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAxLCAxMDozOTozNSk6Cn4jISBvbj1LYXJpcyBvdD05OTgzODMwNTQgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU11YWRkaWIgcnQ9OTk4MzgyOTY2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9OTk4MzExNzYxCkRhcyB3dWVyZGUgYWJlciBhdWNobnVyIGdlaGVuLCB3ZW5uIGRlciBMZW8gc2NobmVsbGVyIGlzdCBhbHMgZGVyIApUYW5rbGFzdHp1Zy4gV2VpbCBudXIgZGFubiBrYW5uIGRlciBMZW8gZGVtIFRhbmtlciBhdXN3ZWljaGVuIHVuZCBkZW4KWjggYW5zY2hpZWJlbi4gV2llIHNjaG5lbGwgaXN0IGRlbm4gbnVuIHNvIGVpbiBMZW8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNDogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjM5OjM2KToKfiMhIG9uPU11YWRkaWIgb3Q9OTk4MzgzMTE2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1LYXJpcyBydD05OTgzODMwNTQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD05OTgzMTE3NjEKSW0gU3RhdSBpbiBLb2VsbiBzY2huZWxsZXIgYWxzIGRlciBSZXN0LiBJbW1lciBkZW4gZ2FuemVuIFRocmVhZCBsZXNlbiwgamE/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNTogU3Vlc3N3YXNzZXJ0YXVjaGVuIGRlciBiZXNvbmRlcmVuIEFydCAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDEsIDEwOjQwOjAwKToKfiMhIHJuPUdyaW1tYm9ybiBydD05OTgzODMxNzYgcmc9c2NobWFycm4KfiMhIHRpZD05OTgzMTE3NjEKSmVwcCwgdW5kIHZvciBhbGxlbSBhdWNoIGlobiBpbiBkZXIgcmljaHRpZ2VuIFJ1YnJpayBsZXNlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzU6IFN1ZXNzd2Fzc2VydGF1Y2hlbiBkZXIgYmVzb25kZXJlbiBBcnQgKEthcmlzLCAyMS4gQXVnIDIwMDEsIDEwOjQwOjE4KToKfiMhIHJuPUdyaW1tYm9ybiBydD05OTgzODMxNzYgcmc9c2NobWFycm4KfiMhIHRpZD05OTgzMTE3NjEKSWNoIGhhYiBub2NoIG5pZSBuZW4gU3RhdSBpbiBLb2VsbiBnZXNlaGVuLiBJc3QgZGFzCmRhcyBnbGVpY2hlIHdpZSBlaW4gU3RhdSBpbiBNdWVuY2hlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM2OiBTdWVzc3dhc3NlcnRhdWNoZW4gZGVyIGJlc29uZGVyZW4gQXJ0IChXdXJ6ZWwsIDIxLiBBdWcgMjAwMSwgMTA6NDc6MTcpOgp+IyEgcm49S2FyaXMgcnQ9OTk4MzgzMjE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4MzExNzYxCm5pY2h0IGdhbnouIHdhZWhyZW5kIG1hbiBkYSBzdGVodCwgdHJpbmt0IG1hbiBhbmRlcmVzIGJpZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXQgZGVuIG51ID8/IChQdWssIDIxLiBBdWcgMjAwMSwgMTI6NDY6MDApOgp6aWVoZSBhcm1yZWlmZW4gYXVzCkR1IHRyYWVnc3Qga2VpbiBkcmFrb25pc2NoZXMgUGFhciBBcm1yZWlmZW4uCnRyYWdlIEFybXJlaWZlbgpEdSB0cmFlZ3N0IGJlcmVpdHMgZGFzIGRyYWtvbmlzY2hlIFBhYXIgQXJtcmVpZmVuIGFscyBTY2h1dHogZGVyIFNvcnRlCkhhbmRzY2h1aC4KClB1aywgdmVyd2lycnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyYWdlbiB1ZWJlciBGcmFnZW4uLi4gKEZvb2JhciwgMjEuIEF1ZyAyMDAxLCAxNDo1ODo1MSk6Ci0gV2FzIGZ1ZWhsdCBlaW4gU2NobWV0dGVybGluZyBpbSBCYXVjaCwgd2VubiBlciB2ZXJsaWVidCBpc3Q/Ci0gV2FzIHNvbGwgZGFzIFZlcmZhbGxzZGF0dW0gYXVmIHNhdXJlciBTYWhuZT8KLSBXYXMgemFlaGxlbiBTY2hhZmUsIHdlbm4gc2llIGVpbnNjaGxhZmVuIHdvbGxlbj8KLSBHaWJ0IGVzIGluIGVpbmVyIFRlZWZhYnJpayBLYWZmZWVwYXVzZW4/Ci0gV2FzIHBhc3NpZXJ0LCBuYWNoZGVtIG1hbiBzaWNoIDIgTWFsIGhhbGJ0b3QgZ2VsYWNodCBoYXQ/Ci0gV2FydW0gbmVubnQgbWFuIGVpbmVuIE1hbm4sIGRlciBGcmF1ZW4gc2NobXV0emlnZSBTYWNoZW4gc2FndCwgZWluZW4gU2V4aXN0LAogIHdhZWhyZW5kIGVpbmUgRnJhdSwgZGllIE1hZW5uZXJuIHNjaG11dHppZ2UgU2FjaGVuIHNhZ3QsIGVpbmUgTWFyayBwcm8KICBNaW51dGUga3JpZWd0PwotIFdhcnVtIHRyYWVndCBlaW4gS2FtaWthemVwaWxvdCBlaW5lbiBIZWxtPwotIFdhcnVtIGdpYnQgZXMgV2hpc2thcy1IdWhuLCAtRmlzY2ggdW5kIC1SaW5kLCBhYmVyIGtlaW4gV2hpc2thcy1NYXVzPwotIFdlbm4gZWluIFNjaGl6b3BocmVuZXIgbWl0IFNlbGJzdG1vcmQgZHJvaHQgLSBpc3QgZGFzIGRhbm4gZWluZSBHZWlzZWxuYWhtZT8KLSBJc3QgZWluZSB2b2xsZSBIYXJkZGlzayBzY2h3ZXJlciBhbHMgZWluZSBsZWVyZT8KLSBXZW5uIFNjaHdpbW1lbiBndXQgc2VpbiBzb2xsIGZ1ZXIgZGllIEVudHdpY2tsdW5nIHZvbiBBcm1lbiB1bmQgQmVpbmVuLAogIHdhcnVtIGhhYmVuIEZpc2NoZSB3ZWRlciBBcm1lIG5vY2ggQmVpbmU/Ci0gV2FydW0gd2VyZGVuIFppZ2FyZXR0ZW4gYW4gVGFua3N0ZWxsZW4gdmVya2F1ZnQsIHdvIGRhcyBSYXVjaGVuIHZlcmJvdGVuCiAgaXN0PwotIFdlbm4gQXV0b2ZhaHJlbiB2ZXJib3RlbiBpc3QsIG5hY2hkZW0gbWFuIGV0d2FzIGdldHJ1bmtlbiBoYXQsIHdhcnVtIGhhYmVuCiAgQmFycyB1bmQgS25laXBlbiBQYXJrcGxhZXR6ZT8KLSBXZW5uIG5pY2h0cyBhbiBUZWZsb24ga2xlYmVuIGJsZWlidCwgd2llIHdpcmQgVGVmbG9uIGFuIGRlciBQZmFubmUKICBmZXN0Z2VtYWNodD8KLSBLcmllZ3QgZWluIEZpc2NoIGdlbmF1IHdpZSBlaW4gTWVuc2NoIEtyYWVtcGZlLCB3ZW5uIGVyIGRpcmVrdCBuYWNoIGRlbQogIEVzc2VuIHNjaHdpbW1lbiBnZWh0PwotIFdpZSBoZWlzc2VuIGRpZSBoYXJ0ZW4gUGxhc3Rpa2VuZGVuIGFuIGRlbiBTY2hudWVyc2Vua2Vsbj8KLSBXZW5uIGVpbiBMYWRlbiAyNCBTdHVuZGVuIGFtIFRhZyBhbiAzNjUgVGFnZW4gaW0gSmFociBnZW9lZmZuZXQgaGF0LCB3YXJ1bQogIGhhdCBlciBkYW5uIGVpbiBTY2hsb3NzIGluIGRlciBUdWVyPwotIFdlbm4gZWluZSBGbGllZ2UgYW4gZGVyIFppbW1lcmRlY2tlIGxhbmRldCwgbWFjaHQgc2llIGRhbm4gZWluZW4gTG9vcGluZwogIG9kZXIgZWluZSBEcmVodW5nIHVtIGlocmUgTGFlbmdzYWNoc2U/CgpGb29iYXIgLSB3aWxsIGVzIHdpc3Nlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcmFnZW4gdWViZXIgRnJhZ2VuLi4uIChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMSwgMTU6MzE6MDEpOgp+IyEgcm49Rm9vYmFyIHJ0PTk5ODM5ODczMSByZz1zY2htYXJybgp+IyEgdGlkPTk5ODM5ODczMQoxLiBTY2htZXR0ZXJsaW5nZSBoYWJlbiBrZWluZW4gQmF1Y2guCjIuIERlbSBCZW51dHplciBzdWdnZXJpZXJlbiBlciB3dWVyZGUgd2FzIEZyaXNjaGVzIGthdWZlbiB1bmQgZGllIFdpcnRzY2hhZnQKICAgYW5rdXJiZWxuLgozLiBTY2hhZmUga29lbm5lbiBuaWNodCB6YWVobGVuLgo0LiBOZWluLCBUZWVwYXVzZW4uIEluIFRleHRpbGZhZXJiZXJlaWVuIGdpYnQgZXMgaGluZ2VnZW4gQmxhdXBhdXNlbi4KNS4gIkRhcyBHYW56ZSBpc3QgbWVociBhbHMgZGllIFN1bW1lIHNlaW5lciBUZWlsZSIsIGVzIGJsZWlidCBhbHNvIG5vY2ggd2FzCiAgIHVlYnJpZwo2LiBXZWlsIGRpZSBXZWx0IHNpY2ggbmljaHQgYW4gZGllIFRoZW9yaWUgZGVyIEdsZWljaGJlcmVjaHRpZ3VuZyBoYWVsdC4KNy4gRGFtaXQgZXIgYmVpbSBBdWZwcmFsbCBtZWhyIFNjaGFkZW4gbWFjaHQuCjguIFdlaWwgZGFzIGRpZSBSZW50bmVyIHVuZCBLdWVuc3RsZXIgZGFubiBuaWNodCBrYXVmZW4gd3VlcmRlbi4KOS4gU29ycnksIG11c3MgaWNoIHBhc3Nlbi4gSWNoIGRlbmtlIGFiZXIgamEuCjEwLiBLZWluZSBBaG51bmcsIG1laW5lciBFcmZhaHJ1bmcgbmFjaCBnaWJ0cyBsZWVyZSBIYXJkZGlza3MgbnVyIHNvIGt1cnplCiAgICBaZWl0IGRhc3MgbWFuIHNpZSBuaWNodCB3aWVnZW4ga2Fubi4KMTEuIFdlaWwgc2llIHNjaHdpbW1lbiBpbmRlbSBzaWUgZGVuIFNjaHdhbnogYmV3ZWdlbiB1bmQgbmljaHQgQXJtZSB1bmQgCiAgICBCZWluZS4gVW5kIGpldHp0IHZlcmdsZWljaCBtYWwgZWluZW4gRmlzY2hzY2h3YW56IG1pdC4uLiBsYXNzZW4gd2lyIGRhcy4KMTIuIFdlaWwgZXMgTGV1dGUgZ2lidCBkaWUgZGVyIE1laW51bmcgc2luZCBlaW5lIGJyZW5uZW5kZSBUYW5rc3RlbGxlIG1hY2h0CiAgICBvcHRpc2NoIG5ldHQgd2FzIGhlci4KMTMuIERhbWl0IG1hbiBzZWluIEF1dG8gZGEgYWJzdGVsbGVuIGthbm4uIFZpZWwgbXlzdGVyaW9lc2VyIGlzdCBkZXIgCiAgICBBdXNzY2hhbmsgdm9uIEJpZXIgei5CLiBpbSBNY0RvbmFsZHMgRHJpdmUtaW4uCjE0LiBFcyB3aXJkIGRhcyBUZWZsb24gYW4gZGVyIFBmYW5uZSBmZXN0Z2VtYWNodCwgbmljaHQgZGllIFBmYW5uZSBhbSAKICAgIFRlZmxvbi4gVW5kIGFuIGRlciBQZmFubmUgYmxlaWJ0IGphIHdhcyBrbGViZW4uCjE1LiBOZWluLCB3ZWlsIGVyIHNjaG9uIHdhZWhyZW5kIGRlcyBFc3NlbnMgc2Nod2ltbXQuCjE2LiAiSGFydGUgUGxhc3Rpa2VuZGVuIGFtIFNjaG51ZXJzZW5rZWwiCjE3LiBXZWlsIGRpZSBUdWVyIG9obmUgdGV1cmVyIGdld2VzZW4gd2FlcmUuIAoxOC4gU2llIG1hY2h0IGVpbmVuIGhhbGJlbiBMb29waW5nLgoKR2RBIGhhdCBpbW1lciB1bmQgYXVmIGFsbGVzIEFudHdvcnRlbiBwYXJhdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChGb29iYXIsIDIxLiBBdWcgMjAwMSwgMjI6MTI6MzUpOgpGcm9tOiBiLnh4QGdteC5uZXQgKEFsZXggRWJuZXIpCk5ld3Nncm91cHM6IGRlLnRhbGsuam9rZXMKU3ViamVjdDogR2Vob2VydCBEZXV0c2NobGFuZCB6dSBSdXNzbGFuZD8KRGF0ZTogMTcgQXVnIDIwMDEgMTE6MTU6MjIgR01UCk1lc3NhZ2UtSUQ6IDw5bGl1Y2Ekb240NEB1c2VuZXQuYm13LmRlPgoKQXVzIGRlbSBTdWVkZGV1dHNjaGUgWmVpdHVuZyBNYWdhemluIHZvbSAxNy4wOAoKRnJhZ2VuIGRpZSBzaWNoIGRldXRzY2hlIEF1c3RhdXNjaHNjaHVlbGVyIGluIEFtZXJpa2EgYW5ob2VyZW4gZHVyZnRlbjoKCiJTdGltbXQgZXMgZGFzcyBzaWNoIGRpZSBkZXV0c2NoZW4gTWFlZGNoZW4gaWhyZSBBY2hzZWxob2VobGVuIG5pY2h0IApyYXNpZXJlbj8iCihNaW5uZWFwb2xpcykKCiJEdWVyZmVuIHNpY2ggRnJhdWVuIGluIERldXRzY2hsYW5kIGlocmUgTWFlbm5lciBzZWxic3QgYXVzc3VjaGVuPyIKKEphY2tzb252aWxsZS9GbG9yaWRhKQoKIkdpYnQncyBiZWkgZXVjaCBCaWVyIHp1bSBGcnVlaHN0dWVjaz8iCihTdC4gTHVpcy9NaXNzb3VyaSkKCiJXaWUga2FubiBkZXIgVmVya2VociBpbiBlaW5lciBHcm9zc3N0YWR0IGxhdWZlbiB3ZW5uIGVzIG5pcmdlbmRzClRlbXBvbGltaXQgZ2lidD8iCihBdXN0aW4vVGV4YXMpCgoiR2lidCBlcyBiZWkgZXVjaCBCZXJnZSB1bmQgQmFldW1lPyIKKEh1bnRzdmlsbGUvQWxhYmFtYSkKCiJHaWJ0IGVzIGluIERldXRzY2hsYW5kIG5vY2ggU2NoaWxkZXIgbWl0IGRlbSBIaW53ZWlzID5LZWluZSBKdWRlbjw/IgooQXZvbiBMYWtlL09oaW8pCgoiV2llIHdhc2NodCBpaHIgZXVyZSBIYWFyZT8iCihMYXVyZWwvTWFyeWxhbmQpCgoiSXN0IEhpdGxlciBub2NoIGltbWVyIGV1ZXIgUHJhZXNpZGVudD8iCihIZW1ldC9LYWxpZm9ybmllbikKCiJIYWJ0IGlociBub2NoIGFuZGVyZSBBdXRvcyBhbHMgVm9sa3N3YWdlbj8iCihUYWxsYWhhc3NlZS9GbG9yaWRhKQoKIkdpYnQgZXMgYmVpIGV1Y2ggZGllIEZhcmJlIFdlaXNzIgooQ3VsbG1hbm4vQWxhYmFtYSkKCiJJaHIgaGFidCBlaW5lIGVpZ2VuZSBTcHJhY2hlPyBJY2ggZGFjaHRlIGlociBzcHJlY2h0IEVuZ2xpc2NoIG1pdApBa3plbnQhIgooRWwgUGFzby9UZXhhcykKCiJSZWl0ZXQgaWhyIG1vcmdlbnMgbWl0IFBmZXJkZW4gaW4gZGllIFNjaHVsZSIKKE1pbGVzIENpdHkvTW9udGFuYSkKCiJ3aWUgc2VoZW4gZGllIFN0ZXJuZSBpbiBEZXV0c2NobGFuZCBhdXM/IgooTmFwZXJ2aWxsZS9JbGxpbm9pcykKCiJXaWUgdmllbGUgTW9uYXRlIGhhYnQgaWhyIGluIERldXRzY2hsYW5kPyIKKFJvY2sgSXNsYW5kL0lsbGlub2lzKQoKIkdpYnQgZXMgUHJvYmxlbWUgYW0gZGV1dHNjaC1jaGluZXNpc2NoZW4gR3Jlbnp1ZWJlcmdhbmc/IgooTmFzaHZpbGxlL0luZGlhbmEpCgoiSGFidCBpaHIgYXVjaCBzbyBldHdhcyB3aWUgRGVtb2tyYXRpZSBpbiBEZXV0c2NobGFuZD8iCihPeGZvcmQvT2hpbykKCiJJc3QgRGV1dHNjaGxhbmQgZWluIFRlaWwgdm9uIFJ1c3NsYW5kPyIKKE1pc3NvdWxhL01vbnRhbmEpCgoKSXN0IGRhcyBqZXR6dCB6dW0gTGFjaGVuIG9kZXIgaGV1bGVuPz8/PwoKQWxleAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXRkaWdlc3QgbWFsIHdpZWRlci4gKFZhcmxhcmlvbiwgMjEuIEF1ZyAyMDAxLCAyMjoxNToyMyk6Cn4jISBybj1Gb29iYXIgcnQ9OTk4NDI0NzU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1CkFsc28gaWNoIGhhdHRlIG5vY2ggbmllIFByb2JsZW1lLCBhbSBkZXV0c2NoLWNoaW5lc2lzY2hlbiBHcmVuenVlYmVyZ2FuZywKc2Nob24gZWhlciBhbSBkZXV0c2NoLWhvbGxhZW5kaXNjaGVuICpmbG9ldHBmZWlmKiA7KQoKVmFybCosIGxpZWJlciBHcmFzIHJhdWNoZW5kLCBhbHMgSGV1IHNjaG51cGZlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChNb250YW51cywgMjEuIEF1ZyAyMDAxLCAyMjoxNTo1Nyk6Cn4jISBybj1Gb29iYXIgcnQ9OTk4NDI0NzU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1CkVzIGlzdCB6dW0gSGV1bGVuLCB3ZW5uIERldXRzY2hlIGdlbmF1c29kb29mIHNpbmQgdW5kIGluIGRlciBTWiBuYXNodmlsbGUgbmFjaApJbmRpYW5hIHZlcmxlZ2VuLiBEYXMgaXN0IGJla2FubnRsaWNoIGluIFRlbm5lc3NlZSwgZ2VuYXVzbyB3aWUgc2ljaCBTdC4gTG91aXMKbWl0IG8gc2NocmVpYnQuCgpVbmQgZGllIEZyYWdlICJIYWJ0IGlociBhdWNoIHNvIGV0d2FzIHdpZSBEZW1va3JhdGllIGluIERldXRzY2hsYW5kPyIgdHJpZnQKZG9jaCBnZW5hdSBkZXMgUHVkZWxzIEtlcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoV3VyemVsLCAyMS4gQXVnIDIwMDEsIDIyOjQwOjE0KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk5ODQyNDk1NyByZz1zY2htYXJybgp+IyEgdGlkPTk5ODQyNDc1NQpkYXNzIGFtZXJpa2FuZXIgc293YXMgd2llIGFsbGdlbWVpbmJpbGR1bmcgd2VkZXIga2VubmVuIG5vY2ggYmVzaXR6ZW4gb2RlcgpnYXIgZnVlciBub2V0aWcgaGFsdGVuIGlzdCBqYSBuaWNodHMgbmV1ZXMuIGdlc2NoaWNodGUgYmVnaW5udCB2b3IgMjAwIGphaHJlbiwKdW5kIHdlciBkaWUgYnVuZGVzc3RhYXRlbiBtaXRzYW10IGhhdXB0c3RhZWR0ZW4gYXVmemFlaGxlbiBrYW5uIGhhdCBpbgpnZW9ncmFwaGllIHNjaG9uIGJlc3RhbmRlbi4gZGllIHJlc3RsaWNoZSB3ZWx0IGV4aXN0aWVydCBuaWNodCB3aXJrbGljaCBvZGVyCnRhdWd0IGFsbGVuZmFsbHMgYWxzIGZpbG1rdWxpc3NlLiB3ZWVubiBtYW4gbnVyIGxhbmdlIGdlbnVnIHN1Y2h0LCBmaW5kZXQKbWFuIGJlc3RpbW10IGVpbmVuIGFtZXJpa2FuZXIsIGRlciBzdGVpZiB1bmQgZmVzdCBiZWhhdXB0ZXQgYXVzbGFuZCBzZWkgZWluZQplcmZpbmR1bmcgYXVzIGhvbGx5d29vZC4KZGFzcyBlcyBzaWNoIG5pY2h0IHVtIGVpbnplbGZhZWxsZSBoYW5kZWx0LCB3aWUgbWFuIHZlcm11dGVuIGtvZW5udGUsIHplaWd0CmVpbmUgc2Nob24gZXRsaWNoZSBqYWhyZSBhbHRlIHVudGVyc3VjaHVuZyBhbiBoaWdoIHNjaG9vbCBhYnNvbHZlbnRlbi4gZXMKd3VyZGUgaWhuZW4gZWluZSB3ZWx0a2FydGUgb2huZSBsYWVuZGVyZ3JlbnplbiBnZXplaWd0LCBhdWYgZGVyIG51ciBkaWUKZ2VvZ3JhcGhpc2NoZW4gZmFrdGVuIHdpZSBiZXJnZSwgZmx1ZXNzZSB1bmQgbWVlcmUgZWluZ2V6ZWljaG5ldCB3YXJlbiwgYWJlcgp3ZWRlciBzdGFlZHRlIG5vY2ggbGFlbmRlci4gc2llIHNvbGx0ZW4gemVpZ2VuLCB3byBkYXJhdWYgYW1lcmlrYSBsaWVndCAod2FzCmF1Y2ggc29uc3QpLiBlcnNjaHVldHRlcm5kIGZhbmQgaWNoIGRhbWFscywgZGFzcyB6d2VpIGRyaXR0ZWwgZGVyIGp1bmdlbgpsZXV0ZSBhdWYgcnVzc2xhbmQgemVpZ3Rlbiwgd2VpbCBlcyBkaWUgZ3JvZXNzdGUgbGFuZG1hc3NlIGhhdCB1bmQgYW1lcmlrYQpzbyBlaW4gZ3Jvc3NlcyBsYW5kIGlzdC4uLgp1bmQgc29sY2hlIGxldXRlIHdvbGxlbiB1bnMgaWhyZSB1bmt1bHR1ciBhdWZ6d2luZ2VuLCBkYXMgdHJhdXJpZ3N0ZSBkYXJhbgppc3QsIGRhc3Mgc2llIGVzIGF1Y2ggc2NoYWZmZW4gd2VyZGVuLgoKd3VyemVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXRkaWdlc3QgbWFsIHdpZWRlci4gKFpvb2ssIDIxLiBBdWcgMjAwMSwgMjI6NDE6MzQpOgp+IyEgcm49V3VyemVsIHJ0PTk5ODQyNjQxNCByZz1zY2htYXJybgp+IyEgdGlkPTk5ODQyNDc1NQoiQW1lcmlrYSAtIGRhcyBpc3QgZGVyIFdlZyB2b24gZGVyIEJhcmJhcmVpIGluIGRpZSBEZWthZGVueiBvaG5lIGRlbgpVbXdlZyB1ZWJlciBkaWUgS3VsdHVyIHp1IG5laG1lbi4iCgpOYWosIHZvbiB3ZW0gaXN0IGRlcj8gCgpab29rLgoKUC5TLjogU3VwZXJzZWhlciB3aXNzZW4gYmVyZWl0cyBCZXNjaGVpZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoTW9udGFudXMsIDIxLiBBdWcgMjAwMSwgMjM6MDU6MDgpOgp+IyEgcm49Wm9vayBydD05OTg0MjY0OTQgcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKLi4uIHVuZCBub2NoIGVpbiBUaXA6CkdkQSBhbHMgQW50d29ydCBpc3QgZmFsc2NoLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoWm9vaywgMjEuIEF1ZyAyMDAxLCAyMzowNTo0NCk6Cn4jISBybj1Nb250YW51cyBydD05OTg0Mjc5MDggcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKT2hoaGhoaGhoLi4uIGRhcyB3YXIgbnVuIGFiZXIgZ2VtZWluIGFscyBUaXBwLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoR2xvaW5zb24sIDIxLiBBdWcgMjAwMSwgMjM6MjY6NDApOgp+IyEgcm49V3VyemVsIHJ0PTk5ODQyNjQxNCByZz1zY2htYXJybgp+IyEgdGlkPTk5ODQyNDc1NQpJY2ggZ2xhdWIgbmljaHQgZGFzcyBkZXIgZHVyY2hzY2huaXR0bGljaGUgVVMtQW1lcmlrYW5lciBEaXIgaXJnZW5kd2VsY2hlCkt1bHR1ciBhdWZ6d2luZ2VuIHdpbGwuIFVuZCB3ZW5uIER1IGF1ZiBlaW5lbSBoYWxiZW4gS29udGluZW50IHp1IEhhdXNlIHdhZXJzdAprb2VubnRlIGVzIGR1cmNoYXVzIHNlaW4gZGFzcyBEdSBuaWNodCB1bmJlZGluZ3Qgc292aWVsIEludGVyZXNzZSBhbiBhbmRlcmVuCkxBZW5kZXJuIHplaWdlbiBtdXNzdCB3aWUgd2lyIGVzIGhpZXIgdW50ZXIgYW5kZXJlbSBub2V0aWcgaGFiZW4uCktlaW5lIGR1bW1lbiBGcmFnZW4sIGFsc28gZWhlciB6d2FuZ2hhZnRlIEtsaXNjaGVlZGFyc3RlbGx1bmcgZGVzClVTLUFtZXJpa2FuZXJzIGFscyBVbndpc3NlbmRlbSB3YXJlbiBmdWVyIG1pY2ggZWluaWdlIGRlciBaZWlsZW4uIEphLCBkaWUKU3Rlcm5lIHNlaGVuIGplIG5hY2ggV29obm9ydCBpbiBkZW4gU3RhYXRlbiBoaWVyIGFuZGVycyBhdXMuIEphLCBpY2ggd2Vpc3MKYXVjaCBuaWNodCB3ZWxjaGUgR2VzZWxsc2NoYWZ0c2Zvcm0gZ2VyYWRlIGluIEVxdWFkb3Igdm9yaGVycnNjaHQsIG9iCkFtZXJpa2FuZXIgc28gYXVzZnVlaHJsaWNoIGZydWVoc3R1ZWNrZW4gd2llIHdpciwgb2IgbWFuIG5pY2h0IGluIHdlaXRlcgphdXNnZWJhdXRlbiBMQW5kc3RyaWNoZW4gYXVjaCBtYWwgbWl0IGRlbSBQZmVyZCB6dXIgU2NodWxlIHJlaXRldCwgd2llIGFuZGVyZQpWb2Vsa2VyIGlocmUgSGFhcmUgd2FzY2hlbiAoZGllIEZyYWdlIGZpbmQgaWNoIHVlYnJpZ2VucyBuZXR0LCB3ZWlsIHNpZSB6ZWlndApkYXNzIG5pY2h0IGplZGVybWFubiBhdXRvbWF0aXNjaCBhbm5pbW10IGRhcyBpbiBhbmRlcmVuIExBZW5kZXJuIGRpZSBzZWxiZW4KU2l0dGVuIGhlcnJzY2hlbikuIFVuZCB2b3IgYWxsZW0gd2Vpc3MgaWNoIG5pY2h0IHdhcnVtIGluIGlyZ2VuZHdlbGNoZW4KRmlsbWVuLCBvYiBkZXV0c2NoIHN5bmNocm9uaXNpZXJ0IG9kZXIgaW4gT1QgIkF1c2xhZW5kZXIiIHVudGVyZWluYW5kZXIgZmFzdAppbW1lciBkaWUgRmlsbXNwcmFjaGUgbWl0IEFremVudCBzcHJlY2hlbiBhbnN0YXR0IGRhcyBVbnRlcnRpdGVsIGJlbnV0enQKd2VyZGVuLgoKR2xvaW4oc29uKQoKUFM6IEFiZXIgaWNoIGZpbmQgbWl0IGRlciBMaXN0ZSBkYXMgS2xpc2NoZWUgZGFzIG1laW4gVm9sayBnYW56IGRyaW5nZW5kIGltbWVyCnZlcmdsZWljaGVuIG11c3Mgd2lldmllbCBrbHVlZ2VyLCBiZXNzZXIgdW5kIHRvbGxlciBlcyBpc3QgYWxzIGFuZGVyZQp3dW5kZXJiYXIgYmVzdGFldGlndC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoTW9udGFudXMsIDIxLiBBdWcgMjAwMSwgMjM6Mzg6MzUpOgp+IyEgcm49R2xvaW5zb24gcnQ9OTk4NDI5MjAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1Cndlbm4gZGllIERpc2t1c2lvbiBqZXR6dCBlcm5zdGhhZnQgd2lyZCwgc2luZCB3aXIgaW4gZGVyIGZhbHNjaGVuIFJ1YnJpay4gOi0pCk5hY2ggaW56d2lzY2hlbiB1ZWJlciA3IE1vbmF0ZW4gaGllciBpbSBMYW5kIGRlciB1bmJlZ3Jlbnp0ZW4gQW1lcmlrYW5lciBoYWIKaWNoIG1pY2ggdm9uIHZpZWxlbiBsaWViZW4gVm9ydXJ0ZWlsZW4gdWViZXIgZGllc2UgdW5zZXJlIEZyZXVuZGUgYXVzIGRlbSBOU0EKdmVyYWJzY2hpZWRldC4KVmllbGVzIGlzdCBhbmRlcnMsIHZpZWxlcyBpc3QgYmVzc2VyLCB2aWVsZXMgaXN0IHNjaGxpbW1lci4KVW5kIGRlciBJbnRlbGxpZ2Vuei1JbXBlcmlhbGlzbXVzIGRlciBFdXJvcGFlciBpc3QgbWl0IGRlbQpLdWx0dXItSW1wZXJpYWxpc211cyBkZXIgQW1lcmlrYW5lciBzaWNoZXJsaWNoIGF1ZiBlaW5lIGFlaG5saWNoZSBFYmVuZSB6dQpzdGVsbGVuLgpVbmQgaWNoIGthbm4gaW56d2lzY2hlbiBhdWNoIHZlcnN0ZWhlbiwgZGFzcyB2aWVsZW4gTGV1dGVuIGVzIGVnYWwgaXN0LCB6Qgp3ZWxjaGUgU3ByYWNoZSBpbiBCZWxnaWVuIGdlc3Byb2NoZW4gd2lyZCwgZGEgQmVsZ2llbiAoYSkga2xlaW5lciBhbHMgT2tsYWhvbWEKQ2l0eSBpc3QgdW5kIChiKSBnZW5hdXNvIHdlbmlnIGJlcnVlaG10ZSBQZXJzb2VubGljaGtlaXRlbiBoZXJ2b3JnZWJyYWNodCBoYXQuClVuZCB3ZXIgc2Nob25tYWwgaW4gT2tsYWhvbWEgQ2l0eSB3YXIsIHdlaXNzLCB3YXJ1bSBkZW4gQW1lcmlrYW5lcm4gc2VsYnN0Ck9rbGFob21hIENpdHkgZWdhbCBpc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOZXRkaWdlc3QgbWFsIHdpZWRlci4gKEdub21lLCAyMS4gQXVnIDIwMDEsIDIzOjQzOjMwKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk5ODQyOTkxNSByZz1zY2htYXJybgp+IyEgdGlkPTk5ODQyNDc1NQp1bmQgZGllc2UgZ3J1ZW5kZSBoYWVsc3QgZHUgZnVlciBhdXNyZWljaGVuZCwgZWluZSBiZXNwaWVsbG9zZQppZ25vcmFueiBhbmRlcmVuIHZvZWxrZXJuL2t1bHR1cmVuIG9kZXIgYXVjaCBudXIgZGVyIGVpZ2VuZW4gdW13ZWx0CmFuIGRlbiB0YWcgenUgbGVnZW4/Cgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChHbG9pbnNvbiwgMjEuIEF1ZyAyMDAxLCAyMzo0NTozNik6Cn4jISBybj1Nb250YW51cyBydD05OTg0Mjk5MTUgcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKT2NoLCByaWNodGlnIGVybnN0IGdlbWVpbnQgd2FyIGRhcyBsZXR6dGxpY2ggbmljaHQgbWVoci4gTWFjaHQgamEgU3Bhc3Mgc2ljaAp1ZWJlciBzb2xjaGUgImVpbmZhY2hlbiIgRnJhZ2VuIHp1IGFtdWVzaWVyZW4sIGFiZXIgaXJnZW5kd2llIGZhZW5kIGljaCBlcwpiZXNzZXIgd2VubiBtYW4gZGllc2UgYXVjaCBoaWVyIHVuYmVncmluc3Qgc3RlbGxlbiBrb2VubnRlLiBPZGVyIGRhbm4gYXVjaApiZWFudHdvcnRldCBiZWthZW1lLgoKR2xvaW4oc29uKQoKR2xvaW4oc29uKSwgdmVyZ2xlaWNodCBnZXJhZGUgZGllIFZvcmJlcmVpdHVuZyB6d2VpIHZlcnNjaGllZGVuZXIgU2VtaW5hcmUuCkVpbiBTZW1pbmFyYmV0cmV1ZXIgYmVhbnR3b3J0ZXRlICJlaW5mYWNoZSIgRnJhZ2VuIHZpZWwgd2VuaWdlciBhcnJvZ2FudCB1bmQKaXJnZW5kd2llIHNpbmQgZGllIGJlaWRlbiBWb3J0cmFlZ2UgYmVpIGlobSB1bSBMYWVuZ2VuIGJlc3NlciBnZXdvcmRlbiBhbHMgZGVyCmVpbmUgYmVpbSBhbmRlcmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChNb250YW51cywgMjEuIEF1ZyAyMDAxLCAyMzo0NjoyNCk6Cn4jISBybj1Hbm9tZSBydD05OTg0MzAyMTAgcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKTmVpbiwgZGEgZXMga2VpbmUgSWdub3JhbnogaXN0LiBFcyBpc3QgVW53aXNzZW4uClNpZSB3dWVyZGVuIGdlcm5lIG1laHIgd2lzc2VuLiBTaWUgc2luZCBuZXVnaWVyaWcuIFNpZSBpbnRlcmVzc2llcmVuIHNpY2gKZGFmdWVyLCB3aWUgZXMgYW5kZXJzd28gaXN0LiBTaWUgcmVpc2VuIGdlcm5lIHVuZCBzY2h3YWVybWVuIGhpbnRlcmhlciB2b24KRXVyb3BhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChHbG9pbnNvbiwgMjEuIEF1ZyAyMDAxLCAyMzo0NzozMCk6Cn4jISBybj1Hbm9tZSBydD05OTg0MzAyMTAgcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKU2VpdCB3YW5uIGJyYXVjaHQgbWFuIGRlbm4gZWluZSBCZWdydWVuZHVuZyBmdWVyIElnbm9yYW56PyBJY2ggaGludGVyZnJhZwptZWluZSBvZGVyIERlaW5lIGphIGF1Y2ggbmljaHQgYXVzc2VyIGljaCBiaW4gaW4gZWluZXIgU2VsYnN0ZXJrZW5udG5pc2tyaXNlCm9kZXIgbW9lY2h0ZSBEaWNoIGJlbGVpZGlnZW4uCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBOZXRkaWdlc3QgbWFsIHdpZWRlci4gKEdub21lLCAyMS4gQXVnIDIwMDEsIDIzOjQ5OjQwKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk5ODQzMDM4NCByZz1zY2htYXJybgp+IyEgdGlkPTk5ODQyNDc1NQp1bndpc3Nlbj8KaWNoIG1vZWNodGUgamEgbmljaHQgc2Nob24gd2llZGVyIHZvbiBkZW0gc2hlcmlmZiBhdXMgdGV4YXMgYW5mYW5nZW4uCmFiZXIga2FubiBzaWNoIGptZCB2b3JzdGVsbGVuLCBkYXNzIGVpbmUgX2dlc2FtdGVfIGZ1ZWhydW5nc21hbm5zY2hhZnQKZGVzIGdyb2Vzc3Rlbi9tYWVjaHRpZ3N0ZW4gc3RhYXRlcyBkZXIgd2VsdCB1bndpc3NlbmQgYnpnbC4gaWhyZXIKdW13ZWx0IGlzdD8gZGFzIGlzdCBwdXJlIGlnbm9yYW56LiBuYWNoIHVucyBkaWUgc2ludGZsdXQuIHVuZCBkYXMKcmVmbGVrdGllcnQgc2ljaCBhdWYgZGllIGdlc2FtdGUgYmV2b2Vsa2VydW5nLi4uIGRlbm4gd2FzIGRlcgpwcmFlc2lkZW50IG1hY2h0LCBrYW5uIGphIG5pY2h0IHNjaGxlY2h0IHNlaW4sIHVucyBnZWh0IGVzIGphCmd1dCBkYWJlaS4KKmtvdHoqCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChNb250YW51cywgMjEuIEF1ZyAyMDAxLCAyMzo1MDo1MCk6Cn4jISBybj1Hbm9tZSBydD05OTg0MzA1ODAgcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKV2VubiBkdSB3dWVzc3Rlc3QsIHdpZSB1bmJlbGllYnQgZGVyIER1Yi1ZYSBoaWVyIGlzdC4uLgpVbmQgZGFzIGlzdCBoYWx0IGRhcyBnZXNldHogZGVzIGthcGl0YWxpc211cywgd2VyIGRpZSBLb2hsZSBoYXQsIHJlZ2llcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLcm9rb21hbmlhIChWYXJsYXJpb24sIDIyLiBBdWcgMjAwMSwgMDM6NTQ6NTQpOgpbU2VoZXI6TXVwZmVsIGlzdCBrcm9rb3BoaWwgOyldCltTZWhlcjpWYXJsYXJpb24gbmlja3Qgd2lsZC5dCgpEYXMgZ3Jvc3NlIEtyb2tvdmllbCBqYWd0IERpY2ggbmljaHQgbWVoci4KRGVyIFN0b3Bmcm9zY2ggamFndCBEaWNoIG5pY2h0IG1laHIuCkRlciBGZXVlcmZyb3NjaCBqYWd0IERpY2ggbmljaHQgbWVoci4KRGVyIEVpc2Zyb3NjaCBqYWd0IERpY2ggbmljaHQgbWVoci4KRGVyIEdpZnRmcm9zY2ggamFndCBEaWNoIG5pY2h0IG1laHIuCkRlciBTdHVybWZyb3NjaCBqYWd0IERpY2ggbmljaHQgbWVoci4KCmFlaCwgamEhCgpWYXJsKiwgbWl0IGRlciBMaXplbnogenVyIEtyb2tvamFnZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1ZXMgdm9tIGtyb2tvdmllbCAoVmFybGFyaW9uLCAyMi4gQXVnIDIwMDEsIDA0OjIxOjIwKToKW1RvZDpMYXJzXSBFaW4gcmllc2lnZXMgS3Jva292aWVsIGhhdCBnZXJhZGUgVmFybGFyaW9uIHVtZ2VicmFjaHQuIDwwNDowODowMj4KW1RvZDpFaW4gcmllc2lnZXMgS3Jva292aWVsXSBHZWdlbiBtaWNoIGlzdCBNdXBmZWwgaGFybWxvcyEgPDA0OjA4OjAyPgoKW0JlaWxlaWQ6TXVwZmVsXSBzb3NvLCBoYXJtbG9zIGJpbiBpY2g/IDwwNDowODo0ND4KW0JlaWxlaWQ6U3RhcmZpcmVdIEhuZ2wgOigoKCggPDA0OjA5OjEyPgpbQmVpbGVpZDpWYXJsYXJpb24gbXVzdGVydCBNdXBmZWwgdW5kIGRlbmt0OiAuIG8gTyAoaGFybWxvcz8hKSA8MDQ6MTI6NDI+XQpbQmVpbGVpZDpNdXBmZWxdIGFiZXIgamFhIGRvY2ggPDA0OjEzOjAwPgpbQmVpbGVpZDpNdXBmZWwgbGFlY2hlbHQgbGllYiwgbmV0dCAmIGhhcm1sb3MgPDA0OjEzOjEyPl0KW0JlaWxlaWQ6VmFybGFyaW9uXSBwZmZ0LCBtc2NoYXUgYXVzLCB0b29scyB3ZWcgdW5kIGFiIGluIGRpZSBhcmVuYSEKW0JlaWxlaWQ6VmFybGFyaW9uXSA8MDQ6MTM6MjA+CltCZWlsZWlkOlN0YXJmaXJlXSBIZXksIHRyYWdzIGVpY2hhbiBFaGVrcmFjaCB3b2FuZGVyc3QgYXVzISExIDopKSA8MDQ6MTM6MjI+CltCZWlsZWlkOk11cGZlbF0gZWhla3JhY2g/IGljaCBiaW4gZG9jaCBuaWNodCBtaXQgbmVtIGtlcmwgdmVyaGVpcmF0ZXQuIGljaApbQmVpbGVpZDpNdXBmZWxdIGJpbiB1ZWJlcmhhdXB0IG5pY2h0IHZlcmhlaXJhdGV0LiBzbyB3ZWl0IGtvbW10cyBub2NoISEhIDspCltCZWlsZWlkOk11cGZlbF0gPDA0OjE0OjA4PgpbQmVpbGVpZDpNdXBmZWxdIGluIDcgamFocmVuIGFscyBtdWRkZXIgaGF0cyBub2NoIG5pZW1hbmQgZ2VzY2hhZmZ0IG1pY2ggaW4KW0JlaWxlaWQ6TXVwZmVsXSBkaWUga2FwZWxsZSB6dSB6ZXJyZW4gKGFsbGVyZGluZ3MgaGF0cyBhdWNoIG5vY2gga2VpbmVyCltCZWlsZWlkOk11cGZlbF0gdmVyc3VjaHQgOykgPDA0OjE1OjA4PgpbQmVpbGVpZDpWYXJsYXJpb24gemVycnQgYW4gTXVwZmVsLiA8MDQ6MTY6MTA+XQpbQmVpbGVpZDpNdXBmZWwgaXN0IHdpZSBhbmdld2FjaHNlbiA8MDQ6MTY6MjA+XQoKa3VyeiBkYXJhdWY6Ck11cGZlbCB3aXJkIGFuIGRpZSBXYW5kIGdlbmFnZWx0LgpEdSBzdGVoc3QgaW4gZWluZW0gcmVsYXRpdiBrbGVpbmVuIFJhdW0sIGRlciBhbGxlcmRpbmdzIHJlY2h0IGdyb3NzIHdpcmt0LgpEaWVzIGtvbW10IHdvaGwgZHVyY2ggZGllIHZpZWxlbiwgbGFuZ2VuIHNjaHdhcnplbiBWb3JoYWVuZ2UgZGllIHZvciBqZWRlbQpGZW5zdGVyIGhhZW5nZW4uIERlciBHcnVuZHJpc3MgZGllc2VzIFJhdW1lcyBlbnRzcHJpY2h0IGluIGV0d2EgZGVtIGFsbGVyCnR5cGlzY2hlbiBLYXBlbGxlbi4gRGEgaG9lcnQgZGllIEFlaG5saWNoa2VpdCBkYW5uIGFiZXIgYXVjaCBzY2hvbiB3aWVkZXIgYXVmLgpBbnN0ZWxsZSB2b24gQmFlbmtlbiBnaWJ0cyBoaWVyIG51ciBkZW4gYmxhbmtlbiBCb2RlbiwgdW5kIGRlciBBbHRhciBzaWVodApleHRyZW0gYm9lc2FydGlnIGF1cywgYmx1dGJlc3VkZGVsdCB3aWUgZXIgaXN0LiBMaW5rcyB2b24gRGlyIHNpZWhzdCBEdSBub2NoCmVpbmUga2xlaW5lIGhvZWx6ZXJuZSBLYW1tZXIuIEFuc29uc3RlbiBmYWxsZW4gZWluZW0gd29obCBub2NoIHNvZm9ydCBkaWUKbWVya3d1ZXJkaWdlbiBHZXN0YWx0ZW4gYXVmLCBkaWUgaGllciBydW1zdGVoZW4uLi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRlbi4KW1RlYW06SGV1c2NobnVwZmVuXSBFaW5lIHplcmZldHp0ZSBNdXBmZWwgKGFuIGRpZSBXYW5kIGdlbmFnZWx0KS4KRWluZSBzY2h3YXJ6ZSwgbWFybW9ybmUgVGFmZWwuCkVpbiBab21iaWUtTWVzc2RpZW5lci4KWHJ1dXIsIGRlciBEYWVtb25lbnByaWVzdGVyLgpNdXBmZWwgYmVzY2h3b2VydCBlaW5lbiBCbGl0eiB2b20gSGltbWVsLgpYcnV1ciBmYWVsbHQgdG90IHp1IEJvZGVuLgpNdXBmZWwgc2FndDogbnVyIHp1ciBzaWNoZXJoZWl0IDspCk11cGZlbCBsaWVzdCBkaWUgc2Nod2FyemUgVGFmZWwuCkVpbmUgTGVpY2hlIGh1ZXBmdCBhdWYgdW5kIGRhdm9uLgoKVmFybCogZGVua3Q6IC4gbyBPIChzbyBzby4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChUcm95LCAyMi4gQXVnIDIwMDEsIDA4OjM2OjU4KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTk5ODQyNDk1NyByZz1zY2htYXJybgp+IyEgdGlkPTk5ODQyNDc1NQpUamEuIEhpZXIgaGF0IGRpZSBhbWVyaWthbmlzY2hlIEdsZWljaGJlcmVjaHRpZ3VuZyB6dWdlc2NobGFnZW4uCmEpIE5hc2h2aWxsZSBnaWJ0cyBpbiBkZW4gU3RhYXRlbiBtaW5kZXN0ZW5kIDV4LCB3YXJ1bSBuaWNodCBhdWNoIGluIEluZGlhbmEKYikgU3QuIExvdWlzIChtaXQgb3UpIGxpZWd0IGluIEthbnNhcyBhbiBkZXIgR3JlbnplIHp1IE1pc3NvdXJpLiBXYXJ1bQogICBzb2xsdHMgaW4gTWlzc291cmkgbmljaHQgbm9jaCBlaW4gS2FmZiBtaXQgZGVtIE5hbWVuIFN0LiBMdWlzIGdlYmVuPwogICBXZW5uIERpZSBMZXV0ZSBlaCBuaXggdm9uIGRlciBXZWx0IG1pdGtyaWVnZW4sIGxhZXNzdCBkYXMgZG9jaCBzY2hvbgogICBhdWYgZGllIEdyb2Vzc2UgZGVzIE9lcnRjaGVucyBzY2hsaWVzc2VuLi4uCgpUcm95CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXRkaWdlc3QgbWFsIHdpZWRlci4gKFRyb3ksIDIyLiBBdWcgMjAwMSwgMDg6Mzk6NTgpOgp+IyEgcm49VHJveSBydD05OTg0NjIyMTggcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKR25hLiBadSBiKSBub2NoIGVpbmUgS29ycmVrdHVyOiBTdC4gTG91aXMgbGllZ3QgQVVGIGRlciBHcmVuemUgdm9uIEthbnNhcwp1bmQgTWlzc291cmkgdW5kIGdlaG9lcnQgaW4gVGVpbGVuIHp1IGJlaWRlbi4gRGllIFNjaHJlaWJ3ZWlzZSBvaG5lIG8gaXN0CnRhdHNhZWNobGljaCBnZWJyYWV1Y2hsaWNoIGluIEFtZXJpa2FzIFNwcmFjaGUgTm8uIDE6IFNwYW5pc2NoLgoKVHJveQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChXdXJ6ZWwsIDIyLiBBdWcgMjAwMSwgMTA6MDM6MDMpOgp+IyEgcm49VHJveSBydD05OTg0NjIzOTggcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKbmF0dWVybGljaCBrYW5uIG1hbiBkaWUgYW1lcmlrYW5lciB2ZXJzdGVoZW4uIGVzIGlzdCBlaW4gd2lya2xpY2ggZ3Jvc3NlcwpsYW5kLCBtaXQgZ2VudWcgcmF1bSBmdWVyIGFsbGVzIG1vZWdsaWNoZS4gd2VubiBtYW4gYXVmIGVpbmVtIGhpZ2h3YXkgdWViZXIKc3R1bmRlbiBpbW1lciBudXIgZ2VyYWRlYXVzIGZhZWhydCwgZmFlbGx0IGVpbmVtIGF1Y2ggZWluLCBkYXNzIGVzCmluIGRldXRzY2hsYW5kIHppZW1saWNoIHNjaHdpZXJpZyB3aXJkIGVpbmUgc3RlbGxlIHp1IGZpbmRlbiwgYW4gZGVyIG1hbgpuaWNodCBzcGFldGVzdGVucyBuYWNoIGZ1ZW5mIG1pbnV0ZW4genVlZ2lnZXIgZmFocnQgd2llZGVyIGFuIGVpbmVyCm1lbnNjaGxpY2hlbiBiZWhhdXN1bmcgdm9yYmVpa29tbXQuCndlbm4gbWFuIHNvIGVpbmVuIHdlaXRlbiBob3Jpem9udCBoYXQsIGZhZWxsdCBlcyBlYmVuIG5pY2h0IHNvIGxlaWNodCBhdWYsCmRhc3MgZXIgdHJvdHpkZW0gc2VociBiZXNjaHJhZW5rdCBpc3QuIGljaCBlcmlubmVyZSBtaWNoIGRhIGFuIGVpbiBlcmxlYm5pcwphdXMgZWluZW0gc29tbWVyLCBpbiBkZW0gaW4gZGVyIHdlbHQgc2VociB2aWVsIGxvcyB3YXIuIGFuIGVpbmVtIHRhZyBzcHJhY2gKZGllIGdhbnplIHdlbHQgdm9uIGdld2ljaHRpZ2VuIGVyZWlnbmlzc2VuLCBudXIgZGllIHRhZ2VzemVpdHVuZyBpbiBkZXIKZ2VnZW5kIGhhdHRlIGFscyBzY2hsYWd6ZWlsZSBkZW4gYmVyaWNodCB1ZWJlciBlaW5lbiBsa3csIGRlciBpbgpkZW0gdW53ZXR0ZXIgZGVzIHZlcmdhbmdlbmVuIHRhZ2VzIHVtZ2VmYWxsZW4gd2FyLiBrbGFyLCBkYXMgd2FyIGRlbiBsZXV0ZW4KZG9ydCBpbiBhcml6b25hIHNlaHIgdmllbCB3aWNodGlnZXIgYWxzIGtyaWVnIGluIGVpbmVyIHJlZ2lvbiwgZGllIHNvd2llc28Ka2VpbmUgc2F1IGtlbm50Lgp2ZXJzdGVoZW4ga2FubiBtYW4gZGFzIGR1cmNoYXVzLiBndXRmaW5kZW4gaXN0IGFiZXIgd2FzIGFuZGVyZXMuCgp3dXJ6ZWwgKG1hZyBhbWVyaWthLCBhYmVyIGF1Y2ggZXVyb3BhKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChPYmVybW90eiwgMjIuIEF1ZyAyMDAxLCAxNzozNjozNCk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTk4NDY3MzgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1CkFiZXIgZGV1dHNjaGUgRnJhdWVuIG11ZXNzZW4gbmljaHQgdW5iZWRpbmd0IGJlc3NlciBzZWluLgpIaWVyIGRlciBCZXdlaXM6CgpGcmFnZTogV28ga29tbWVuIGRpZSBLaW5kZXIgaGVyPwooT3JpZ2luYWwtKUFudHdvcnQ6IFZvbiBkaWUgRWllciEKCkRhcyBhbnR3b3J0ZXRlIHp1bWluZGVzdGVucyBtZWluZSBOaWNodGUgc3BvbnRhbiB1bmQgYXVzIHRpZWZzdGVyIFVlYmVyLQp6ZXVndW5nIGltIEFsdGVyIHZvbiAoZmFzdCkgMyBKYWhyZW4uCgpPTSBlcmlubmVydCBiZWkgZGVyIEdlbGVnZW5oZWl0IG1hbCB3aWVkZXIgYW4gZGllIFNwZW5kZW5ha3Rpb24gIktvbXBvcyBmdWVyCk9iZXJtb3R6ISIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcmFnZW4gdWViZXIgRnJhZ2VuLi4uIChNZW5hY2UsIDIyLiBBdWcgMjAwMSwgMjE6MDg6MTYpOgp+IyEgcm49Rm9vYmFyIHJ0PTk5ODM5ODczMSByZz1zY2htYXJybgp+IyEgdGlkPTk5ODM5ODczMQo+IFdlbm4gZWluZSBGbGllZ2UgYW4gZGVyIFppbW1lcmRlY2tlIGxhbmRldCwgbWFjaHQgc2llIGRhbm4gZWluZW4gTG9vcGluZwo+IG9kZXIgZWluZSBEcmVodW5nIHVtIGlocmUgTGFlbmdzYWNoc2U/CgpBbHNvIF9kYXNfIGthbm4gaWNoIGRpciBzYWdlbjogZWluZW4gaGFsYmVuIExvb3BpbmcuCgpNZW5hY2UgKnp1bWluZGVzdCBfZWluZV8gQW50d29ydCBoYWJlbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQaGlsb3NvcGhpZSAoVmFybGFyaW9uLCAyMi4gQXVnIDIwMDEsIDIzOjAyOjQ2KToKRGllIEZsZWRlcm1hdXMgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRGVyIGtsZWluZSBHcnVmdGllIHBoaWxvc29waGllcnQgdWViZXIgZGVuIFRvZCB1bmQgZGVuIFNpbm4gZGVzIExlYmVucy4KCk11aGFyaGFyaGFyIChjKSBPbWFeSF5IXkhBbWFyeWxsaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcmFnZW4gdWViZXIgRnJhZ2VuLi4uIChNdXBmZWwsIDIyLiBBdWcgMjAwMSwgMjM6NDM6MTcpOgp+IyEgcm49Rm9vYmFyIHJ0PTk5ODM5ODczMSByZz1zY2htYXJybgp+IyEgdGlkPTk5ODM5ODczMQotIEthbm4gbWFuIEdyYXNmcm9lc2NoZSByYXVjaGVuPwoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRnJhZ2VuIHVlYmVyIEZyYWdlbi4uLiAoQmllbGVmZWxkLCAyMi4gQXVnIDIwMDEsIDIzOjQzOjQ3KToKfiMhIHJuPU11cGZlbCBydD05OTg1MTY1OTcgcmc9c2NobWFycm4KfiMhIHRpZD05OTgzOTg3MzEKSGF0IG1hbiBkYW5uIGhpbnRlcmhlciBlaW5lbiBGcm9zY2hpbSBIYWxzPwoKLUJpZWxlZmVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRnJhZ2VuIHVlYmVyIEZyYWdlbi4uLiAoVmFybGFyaW9uLCAyMi4gQXVnIDIwMDEsIDIzOjQ0OjIyKToKfiMhIHJuPUJpZWxlZmVsZCBydD05OTg1MTY2Mjcgcmc9c2NobWFycm4KfiMhIHRpZD05OTgzOTg3MzEKVmFybGFyaW9uIHNhZ3Q6IERhcyBpc3QgZG9jaCBhbGxlcyBRdWEocilrIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZyYWdlbiB1ZWJlciBGcmFnZW4uLi4gKFNwZWxsZmlyZSwgMjMuIEF1ZyAyMDAxLCAwMjo0ODoyMSk6Cn4jISBybj1Gb29iYXIgcnQ9OTk4Mzk4NzMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4Mzk4NzMxCldhcnVtIHdlcmRlbiBUb2Rlc3Nwcml0emVuIGRlc2luZmV6aWVydD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBtb2Rlcm5lIGZyYXVlbi4uLiAoWGVuYWRhLCAyMy4gQXVnIDIwMDEsIDIwOjUwOjIyKToKfiMhIHJuPUdub21lIHJ0PTk5ODU5MjI3MSByZz1zY2htYXJybgp+IyEgdGlkPTk5ODU5MjI3MQpYZW5hZGEgaGF0IGRhZnVlciBkZW1uYWVjaHN0IG5lbiBIYXVzendlcmcgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbW9kZXJuZSBmcmF1ZW4uLi4gKEdub21lLCAyMy4gQXVnIDIwMDEsIDIwOjUwOjQ2KToKfiMhIHJuPVhlbmFkYSBydD05OTg1OTI2MjIgcmc9c2NobWFycm4KfiMhIHRpZD05OTg1OTIyNzEKKmJydW1tZWwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUb25zIG9mIENvdyAoVHJveSwgMjQuIEF1ZyAyMDAxLCAwOTowMDo0MCk6CkdlZnVuZGVuIHVudGVyIGh0dHA6Ly91c2VycGFnZXMudW1iYy5lZHUvfmRzY2htaTEvbGlua3MvY293Lmh0bWw6CgpUb25zIG9mIENvdwoKU3VuZyB0byB0aGUgdHVuZSBvZiAiVG9ucyBvZiBTdGVlbCIgYnkgdGhlIEdyYXRlZnVsIERlYWQKT3JpZ2luYWwgbHlyaWNzIGJ5IEJyZW50IE15ZGxhbmQKQm92aW5lIGx5cmljcyBieSBSaWNoYXJkIEUuIEJhdW0KUG9zdGVkIHRvIHJlYy5tdXNpYy5nZGVhZCBieSBTVEFGRk9SREBaRU5JVEguZG5ldC5oYWMuY29tIG9uIDE3IE5vdiAxOTk0CgpJIGtub3cgdGhpcyBmaWVsZCB3ZSdyZSBvbiBsaWtlIEkga25vdyBteSBHZXVybnNleSdzIHNtaWxlCldlJ3ZlIHNlZW4gYSBkb3plbiBkcmVhbXMgaW4gZXZlcnkgbWFudXJlIHBpbGUKQ2FuJ3QgYmVnaW4gdG8gY291bnQgdGhlIHF1YXJ0J3Mgb2YgbWlsayBzaGUncyBnaXZlbiBtZQpCdXQgSSB3aXNoIEkgaGFkIGEgZG9sbGFyIGZvciBlYWNoIGdsYXNzIEkgZHJhbmsgZm9yIGZyZWUKCk5pbmUgaHVuZHJlZCB0aG91c2FuZCB0b25zIG9mIGNvdy4uLiBtYWRlIHRvIG1vdwpUaGVpciB0ZWV0aCBhdCB3b3JrIGFuZCB3aXRoIGFsbCB0aGF0IGdyYXNzClRoZWlyIHVkZGVycyBhcmUgc3VyZSB0byBibG93Ck5pbmUgaHVuZHJlZCB0aG91c2FuZCB0b25zIG9mIGNvdy4uLiBvdXQgb2YgY29udHJvbApUaGV5J3JlIG1vcmUgYSByb2xsaW5nIG1pbGsgdHJ1Y2sgdGhhbiB0aGF0IGhlcmQgSSB1c2VkIHRvIGtub3cuLi4KCkl0J3Mgb25lIGhlbGwgb2YgYW4gdW5kZXJzdGF0ZW1lbnQgdG8gc2F5IHRoZXkgY2FuJ3QgYmUgbWVhbgpUaGV5J3JlIHRlbXBlcmFtZW50YWwsIGp1c3QgYSBiaWcgZ3Jhc3MgZWF0aW5nIG1hY2luZQpUaGV5IHdlcmVuJ3QgYnVpbHQgdG8gdHJhdmVsIGF0IHRoZSBzcGVlZCBhIG1vd2VyIHJpZGVzCkJ1dCB0aGVzZSBjb3dzJ2xsIGNoZXcgdGhhdCBncmFzcyBhbmQgc2NhcmUgYXdheSB0aGUgZmxpZXMhCgpOaW5lIGh1bmRyZWQgdGhvdXNhbmQgdG9ucyBvZiBjb3cuLi4gbWFkZSB0byBtb3cKVGhlaXIgdGVldGggYXQgd29yayBhbmQgd2l0aCBhbGwgdGhhdCBncmFzcwpUaGVpciB1ZGRlcnMgYXJlIHN1cmUgdG8gYmxvdwpOaW5lIGh1bmRyZWQgdGhvdXNhbmQgdG9ucyBvZiBjb3cuLi4gb3V0IG9mIGNvbnRyb2wKVGhleSdyZSBtb3JlIGEgcm9sbGluZyBtaWxrIHRydWNrIHRoYW4gdGhhdCBoZXJkIEkgdXNlZCB0byBrbm93Li4uCgpUaGUgZ3Jhc3Mgb3V0IGRpZCBpdHNlbGYgZ3Jvd2luZyBhcm91bmQgdGhlIGJhY2sKSSBjYW4gb25seSBob3BlIHRoZSBjb3dzIGFyZSByZWFkeSBmb3IgYSBzbmFjawpXZWxsIEkgaGF2ZSBwcmF5ZWQgdG8gR29kIHRoaXMgYWluJ3QgdGhlIGRlYXRoIG9mIG1lClRoZSBjb3dzIGFyZSBub3cgYXJvdW5kIHRoZSBwb29sLCBlYXRpbmcgdXAgdGhlIHdlZWRzIQoKTmluZSBodW5kcmVkIHRob3VzYW5kIHRvbnMgb2YgY293Li4uIG1hZGUgdG8gbW93ClRoZWlyIHRlZXRoIGF0IHdvcmsgYW5kIHdpdGggYWxsIHRoYXQgZ3Jhc3MKVGhlaXIgdWRkZXJzIGFyZSBzdXJlIHRvIGJsb3cKTmluZSBodW5kcmVkIHRob3VzYW5kIHRvbnMgb2YgY293Li4uIG91dCBvZiBjb250cm9sClRoZXkncmUgbW9yZSBhIHJvbGxpbmcgbWlsayB0cnVjayB0aGFuIHRoYXQgaGVyZCBJIHVzZWQgdG8ga25vdy4uLgoKT29oLCBvb2ggSSB3YW50IHRvIG1pbGsgdGhlbSBzbG9vb3cKT29vaCBvb29oIG9vb2ggb29vaCBvb29oIG9vb2ggb29oCk5pbmUgaHVuZHJlZCB0aG91c2FuZCB0b25zIG9mIGNvdy4uLiBvdXQgb2YgY29udHJvbApUaGV5J3JlIG1vcmUgYSByb2xsaW5nIG1pbGsgdHJ1Y2sgdGhhbiB0aGF0IGhlcmQgSSB1c2VkIHRvIGtub3cuLi4KClRyb3kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDcmFzaCB2b20gMjQuMDguMjAwMSAoR2xvaW5zb24sIDI1LiBBdWcgMjAwMSwgMDM6MDc6NTMpOgp+IyEgcm49VGlhbWFrIHJ0PTk5ODcwMDcwOCByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9OTk4NzAwNzA4CkJyb3RuYWVsIGhhdCBhbSBTdGVja2VyIGdld2Fja2VsdC4gSWNoIGhhYnMgZ2VzZWhlbiB3aWUgZXIgZGllIEZhc3NhZGUKaG9jaGdla2xldHRlcnQgaXN0LgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NoaXpvcGhyZW4gPyEgKFR1ZmlyLCAyNi4gQXVnIDIwMDEsIDEyOjEzOjA2KToKaGllciAoa29zdGVuKTogCkhleSwgZGFzIG1laXN0ZSBoYXN0IER1IHNjaG9uIGdlc2NoYWZmdC4KRHUgbXVzc3QgRGVpbmUgQW5ydWZ1bmdlbiB1bmQgRmFlaGlna2VpdGVuIG5vY2ggdmVyYmVzc2VybiwgZGFtaXQgRHUgVHVmaXIgYWxzCkhvaGVwcmllc3RlciBhYmxvZXNlbiBrYW5uc3QuCkFsdGVybmF0aXYga2FubnN0IER1IGF1Y2ggZGFyYXVmIGhvZmZlbiwgZGFzcyBUdWZpciBzaWNoIGxhbmdlIFplaXQgbmljaHQgbWVocgplaW5sb2dndC4gICAgICAgICAgICAgICAgICAgICAgICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoRGFyaWEsIDI2LiBBdWcgMjAwMSwgMTI6MjQ6NTApOgp+IyEgcm49R2xvaW5zb24gcnQ9OTk4NDI5MjAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1CkRhcyBQcm9ibGVtIG1pdCBkZXIgYW1lcmlrYW5pc2NoZW4gS3VsdHVyIGlzdCBuaWNodCwgZGFzcyBkaWUgZXMgdW5zCmF1Znp3aW5nZW4gd29sbGVuLCBzb25kZXJuIGRhc3MgbWFuY2hlIGRldXRzY2hlIFBvbGl0aWtlciAqc2NoaWVsbmFjaEhlc3NlbioKbWVpbmVuLCBhbGxlcyB3YXMgYXVzIEFtaWxhbmQga29tbXQgd2FlcmUgdG9sbC4gKE9rIG5pY2h0IG51ciBQb2xpdGlrZXIuKQpEYWJlaSB3aXJkIG1laXN0IHZlcmdlc3NlbiwgZGFzcyBkYXMsIHdhcyBhdWYgZGVuIGVyc3RlbiBCbGljayBpbiBBTWlsYW5kIGd1dApmdW54dCwgYXVmIGRlbiB6d2VpdGVuIEJsaWNrIGF1Y2ggbWFlY2h0aWdlIFR1ZWNrZW4gaGF0IHVuZCBhdXNlcmRlbSBpbiBkZW4Kc2VsdGVuc3RlbiBGYWVsbGVuIHNpY2ggYXVmIGRhcyBkZXV0c2NoZSBTeXN0ZW0gYW53ZW5kZW4gbGFlc3N0LgoKRGFyaWEgc2FndCBudXI6IEJhY2hlbG9yL01hc3Rlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoV3VyemVsLCAyNi4gQXVnIDIwMDEsIDEyOjI3OjI2KToKfiMhIHJuPURhcmlhIHJ0PTk5ODgyMTQ5MCByZz1zY2htYXJybgp+IyEgdGlkPTk5ODQyNDc1NQp3YXMgZGFzIG1pdCBoZXNzZW4genUgdHVuIGhhYmVuIHNvbGwsIGlzdCBtaXIgYWxsZXJkaW5ncyBuaWNodCBrbGFyLiBhYmVyCnZpZWxsZWljaHQgbGllZ3QgZXMgamEgZGFyYW4sIGRhc3MgZHUgc2NoaWVsc3QuCmhlc3Npc2NoZSBwb2xpdGlrZXIgc2luZCBuaWNodCBiZXNzZXIgb2RlciBzY2hsZWNodGVyIGFscyBhbmRlcmUuIGdlc29ja3MKaXN0IHVlYmVyYWxsIGdlc29ja3MuIGFiZXIgZGllc2UgZGlza3Vzc2lvbiBnYWIgZXMgamEgYXVjaCBzY2hvbiBoYWV1ZmlnZXIuCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoRGFyaWEsIDI2LiBBdWcgMjAwMSwgMTI6Mjk6MjIpOgp+IyEgcm49V3VyemVsIHJ0PTk5ODgyMTY0NiByZz1zY2htYXJybgp+IyEgdGlkPTk5ODQyNDc1NQpJY2ggYmV6b2cgbWljaCBkYW1pdCBhdWYgZGllIElkZWVuIGRlcyBoZXNzaXNjaGVuIE1pbmlzdGVycHJhZXNpZGVudGVuIHp1bQpUaGVtYSBTb3ppYWxoaWxmZWVtcGZhZW5nZXIuIERpZXNlIElkZWVuIGhhdHRlIGVyIG5hY2ggZWlnZW5lbiBBdXNzYWdlbiBhdXMKQW1lcmlrYS4KU29ycnkgd2VubiBkYXMgdW5rbGFyIHdhci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoWm9vaywgMjYuIEF1ZyAyMDAxLCAxMzowOToyNik6Cn4jISBybj1EYXJpYSBydD05OTg4MjE3NjIgcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKVW5kIGVyIGlzdCBzbyBiZWdlaXN0ZXJ0LCBkZXIgS29jaCwgZGFzcyBlciBudW4gc2VpbmUgbmV1ZSBTb3ppYWxtaW5pc3RlcmluCm1pdHNhbXQgVHJvc3MgbmFjaCBXaXNjb25zaW4gc2NoaWNrdCwgZGFtaXQgZGllIHNpY2ggZGFzIGFuc2NoYXVlbgprb2VubmVuLgoKWm9vayBzY2h1ZXR0ZWx0IG1pdCBkZW0gS29wZi4KClAuUy46IFdhcnVtIGRpZSBudW4gZGllIFNvemlhbGhpbGZlIGFscyBNZWRpZW50aGVtYSBlbnRkZWNrdCBoYWJlbiwgaXMKbWlyIGphIG5pY2h0IHNvIGdhbnoga2xhci4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoU29sbXlyLCAyNi4gQXVnIDIwMDEsIDEzOjExOjMwKToKfiMhIHJuPVpvb2sgcnQ9OTk4ODI0MTY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1CkdhbnogZWluZmFjaCwgS3JpZWcgc2Nob2NrdCBlaW5mYWNoIG5pY2h0IG1laHIgc28gc2Voci4uLmRhIG5laG1lbgpkaWUgbGllYmVyIHdhcyBzb3ppYWxwb2xpdGlzY2hlcy4gQW55d2F5LCBTb3ppYWxoaWxmZSB3aXJkIGVzIHdlaXRlci0KaGluIGdlYmVuLiBXaXIgc2luZCBudW4gbWFsIGVpbiBTb3ppYWxzdGFhdCwgd3VlcmRlIGRpZSBSZWdpZXJ1bmcKYmVzY2hsaWVzc2VuLCBkZW4gQXJiZWl0c2ZhdWxlbiB1bmQgT3JpZW50aWVydW5nc2xvc2VuIGRhcyBHZWxkIHp1CnN0cmVpY2hlbiwgd2FlcmVuIHNjaHd1cHBzaHVwcHMgZGllIEtsYWdlbiBpbiBLYXJsc3J1aGUgYXVmbSBUaXNjaC4KClNvbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoV3VyemVsLCAyNi4gQXVnIDIwMDEsIDEzOjEyOjI3KToKfiMhIHJuPVNvbG15ciBydD05OTg4MjQyOTAgcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKZXMgZ2lidCBlaW4gZ3J1bmRyZWNodCBhdWYgZmF1bGhlaXQsIGRhcyBlaW5rbGFnYmFyIGlzdD8gbWFuIGxlcm50IG5pZSBhdXMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoWm9vaywgMjYuIEF1ZyAyMDAxLCAxMzoxMjozNSk6Cn4jISBybj1Tb2xteXIgcnQ9OTk4ODI0MjkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1Ck5hamEsIGljaCBoYWIgamEgZGVuIGR1bXBmZW4gVmVyZGFjaHQsIG1hbiBuaW1tdCBudW4gZGllIFNvemlhbGhpbGZlCnVuZCBwcnVlZ2VsdCBhdWYgZGVuIFNvemlhbGhpbGZlbXBmYWVuZ2VybiBydW0uIERpZSBoYWJlbiBqYSBpbiBkZXIKUmVnZWwga2VpbmUgc3RhcmtlIExvYmJ5LCBkaWUgc2ljaCB3ZWhyZW4ga2Fubi4gQWJlciBkaWUgUHJvYmxlbWUgZGVyCnN0cnVrdHVyZWxsZW4gQXJiZWl0c2xvc2lna2VpdCB3aXJkIG1hbiBkYW1pdCBpbiBEZXV0c2NobGFuZCBtZWluZXMKRXJhY2h0ZW5zIG5pY2h0IGxvZXNlbiBrb2VubmVuLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOZXRkaWdlc3QgbWFsIHdpZWRlci4gKFNvbG15ciwgMjYuIEF1ZyAyMDAxLCAxMzoxNTowOSk6Cn4jISBybj1XdXJ6ZWwgcnQ9OTk4ODI0MzQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1Ck5laW4sIGFiZXIgZGVyIFN0YWF0IGlzdCBhdWNoIGRhenUgZGEsIERpciBpbiBlaW5lciBOb3RsYWdlIHp1IGhlbGZlbi4KV3VlcmRlIGRlciBTdGFhdCBkaWUgU296aWFsaGlsZmUgc3RyZWljaGVuLCB3dWVyZGUgZGllIEx1ZWNrZSB6dy4KQXJtIHVuZCBSZWljaCBub2NoIHZpZWwgd2VpdGVyIGF1c2VpbmFuZGVya2xhZmZlbiB1bmQgZGFzIGthbm4gamEgYXVjaApuaWNodCBpbSBTaW5uZSBkZXMgU3RhYXRlcyBzZWluLiBEYXMgRGV1dHNjaGxhbmQgaW4gMTAgSmFocmVuIHNvIGF1cy0Kc2llaHQgd2llIEJyYXNpbGllbiAobmVpbiwgbmljaHQgZGllIEZyYXVlbiB1bmQgbmljaCBkaWUgVHJvcGVuaGl0emUpCm1pdCBkZW4gU2x1bXMgdW5kIGRlbiBLaW5kZXJuIGF1ZiBkZW4gTXVlbGxiZXJnZW4sIGlzdCBpbWhvIGVpbmZhY2gKbmljaHQgbW9lZ2xpY2guCgpTb2wqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChXdXJ6ZWwsIDI2LiBBdWcgMjAwMSwgMTM6MTU6MTMpOgp+IyEgcm49Wm9vayBydD05OTg4MjQzNTUgcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKc3RydWt0dXJlbGxlIGFyYmVpdHNsb3NpZ2tlaXQ/IHNvd2FzIHdpZQoiaWNoIGhhYmUgZGFjaGRlY2tlciBnZWxlcm50IHVuZCB3b2huZSBpbiBuaWVkZXJiYXllcm4uIGxlaWRlciBnaWJ0IGVzIGhpZXIKenUgdmllbGUgZGFjaGRlY2tlciwgc28gZGFzcyBpY2gga2VpbmUgYXJiZWl0IGhhYmUsIGFiZXIgdW16aWVoZW4gb2RlciB3YXMKbmV1ZXMgbGVybmVuIHdpbGwgaWNoIGF1Y2ggbmljaHQiCmluIGRlciBhcnQ/IGRvY2gsIHNvd2FzIGxhZXNzdCBzaWNoIGRhbWl0IGxvZXNlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBOZXRkaWdlc3QgbWFsIHdpZWRlci4gKFpvb2ssIDI2LiBBdWcgMjAwMSwgMTM6MTc6NDMpOgp+IyEgcm49V3VyemVsIHJ0PTk5ODgyNDUxMyByZz1zY2htYXJybgp+IyEgdGlkPTk5ODQyNDc1NQpEYXMgd2FlcmUgZnJpa3Rpb25lbGxlIEFyYmVpdHNsb3NpZ2tlaXQsIFd1cnplbC4KClVuZCBzZWxic3QgZG9ydCBoaWxmdCBuaWNodCBlaW5lIFNvemlhbGhpbGZlLVJlZm9ybSwgc29uZGVybiBkYSBtdXNzIG1hbgpzY2hhdWVuLCBvYiB1bmQgd2llIG1hbiBkaWUgTW9iaWxpdGFldCBlcmhvZWh0IGJ6dy4gZGllIEFyYmVpdHN2ZXJtaXR0bHVuZwp2ZXJiZXNzZXJ0LgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBOZXRkaWdlc3QgbWFsIHdpZWRlci4gKFd1cnplbCwgMjYuIEF1ZyAyMDAxLCAxMzoyMjozNCk6Cn4jISBybj1ab29rIHJ0PTk5ODgyNDY2MyByZz1zY2htYXJybgp+IyEgdGlkPTk5ODQyNDc1NQpoaWVyIHNwcmljaHQgZGVyIHNvemlhbHdpc3NlbnNjaGFmdGxlci4uLiBmcmlrdGlvbmVsbCBpc3QgZWluIG5ldHRlcyBuZXVlcwp3b3J0LCBkYXMgaWNoIGJpc2hlciBuaWNodCBrYW5udGUuCmh1bmdlciBlcmhvZWh0IG1vYmlsaXRhZXQgZ2V3YWx0aWcuIHNvIGxhbmdlIGVzIHdlaXRlIGJlcmVpY2hlIGluIHVuc2VyZXIKd2lydHNjaGFmdCBnaWJ0LCBkaWUgaGFlbmRlcmluZ2VuZCBuYWNoIGFyYmVpdHNrcmFlZnRlbiBzdWNoZW4sIHNvIGxhbmdlIHdpcgp1ZWJlciBncmVlbiBjYXJkIHJlZ2VsdW5nZW4gdW5kIG1pZ3JhdGlvbnNnZXNldHplIHJlZGVuLCB1bSBvZmZlbmUgc3RlbGxlbgpiZXNldHplbiB6dSBrb2VubmVuLCB3dWVyZGUgaWNoIGRhcyBnZWxkIGxpZWJlciBpbiBhdXNiaWxkdW5nc3Byb2dyYW1tZSB1bmQKdW16dWdzYmVpaGlsZmVuIGludmVzdGllcnQgc2VoZW4gYWxzIGVzIHNvIHdpZSBqZXR6dCBwZXIgZ2llc3NrYW5uZSB6dQp2ZXJ0ZWlsZW4uIGVyc3Qgd2VubiB3aXIgYWxsZSBzdGVsbGVuIGJlc2V0enQgaGFiZW4sIGtvZW5uZW4gd2lyIHNlaGVuIHdhcwpkYW5uIG5vY2ggenUgdHVuIHVlYnJpZyBibGVpYnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChab29rLCAyNi4gQXVnIDIwMDEsIDEzOjMyOjAyKToKfiMhIHJuPVd1cnplbCBydD05OTg4MjQ5NTQgcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKTnVuamEsIGxlaWRlciBsaWVnZW4gZGllIERpbmdlIGluIGRpZXNlbSBCZXJlaWNoIGxlaWRlciBuaWNodCBzbyBlaW5mYWNoLAp3aWUgZWluZW0gZGFzIGdlcm5lIGdsYXViZW4gZ2VtYWNodCB3aXJkLiBCZXJlaXRzIGJlaSBkZXIgQWJzY2hhZXR6dW5nCmRlcyBBbnRlaWxzIGRlciAibWlzbWF0Y2giLUFyYmVpdHNsb3NpZ2tlaXQgKHVtIG1hbCBub2NoIG5lbiBuZXVlcyBXb3J0CmlucyBTcGllbCB6dSBicmluZ2VuKSwga29tbXQgbWFuIGF1ZiBaYWhsZW4gendpc2NoZW4gInZlcm5hY2hsYWVzc2lnYmFyIgpiaXMgenUgNDAgYmlzIDYwIHYuSC4gKGFuIGRlciBnZXNhbXRlbiBBcmJlaXRzbG9zaWdrZWl0KS4gQXVjaCAKYmV6dWVnbGljaCBlaW5lciBwYXNzZW5kZW4gQXJiZWl0c21hcmt0cG9saXRpayBpc3QgbWFuIHNpY2ggbm9jaCAKcmVsYXRpdiB1bmVpbnMuCgpOdW4sIGFiZXIgRHUgaGFzdCB2b2VsbGlnIFJlY2h0LCBkYXNzIG1hbiBhbiBkZXIgU3RlbGxlIGFuc2V0emVuIG11c3MsCnVtIHp1bWluZGVzdCBkaWVzZW4gVGVpbCBkZXIgQXJiZWl0c2xvc2lna2VpdCBpbiBkZW4gR3JpZmYgenUgYmVrb21tZW4KKGF1Y2ggd2VubiBlcyBpbW1lciBlaW5lbiBnZXdpc3NlbiBBbnRlaWwgZGVyYXJ0aWdlciBmcmlrdGlvbmVsbGVyIApBcmJlaXRzbG9zaWdrZWl0IGdlYmVuIG11c3MpLiAKCk51ciBzZXR6dCBtZWluZSBLcml0aWsgYW0gZGVyemVpdGlnZW4gTWVkaWVudGhlYXRlciBkYXJhbiBhbiwgZGFzcyBtYW4Kc2ljaCBlaW5lbiBmdWVyIGRpZSBob2hlIEFyYmVpdHNsb3NpZ2tlaXQgYXVzIG1laW5lciBTaWNodCBuaWNodCBzbyAKZW50c2NoZWlkZW5kZW4gVGVpbCBkZXMgU296aWFsc3lzdGVtcyByYXVzZ2Vob2x0IGhhdCwgbmFlbWxpY2ggZGllClNvemlhbGhpbGZlLiBVbmQgd2VubiB1bnNlcmUgUG9saXRpa2VyLURhbXBmcGxhdWRlcmVyIGVyemFlaGxlbiwgZGEKbXVlc3NlIGRyaW5nZW5kIHdhcyBnZW1hY2h0IHdlcmRlbiwgZGFubiBzY2hlaW50IG1pciwgbWFuIGtvZW5udGUgYW4KYW5kZXJlbiBQb2xpdGlrYmVyZWljaGVuIGRldXRsaWNoIG1laHIgaW4gQmV6dWcgYXVmIGRpZSBBcmJlaXRzbG9zaWdrZWl0CnVudGVybmVobWVuLCBhYmVyIGRvcnQgbXVlc3N0ZSBtYW4gZGFubiBnZWdlbiBlaW5lIHN0YXJrZSBMb2JieSBhbmdlaGVuCnVuZCBkYXMgaXN0IGltIFZvcmZlbGQgdm9uIFdhaGxlbiBpbW1lciB1bmdlcm4gZ2VzZWhlbi4uLiAKClVlYnJpZ2VucyBiaWV0ZXQgZGllIFNvemlhbGhpbGZlIGluIGRlciBkZXJ6ZWl0aWdlbiBGb3JtIGR1cmNoYXVzIApNb2VnbGljaGtlaXRlbiwgRHJ1Y2sgYXVmIEFyYmVpdHN1bndpbGxpZ2UgYXVzenV1ZWJlbiwgd2lyZCBqYSBhdWNoCmJlcmVpdHMgdm9uIGVpbmlnZW4gS29tbXVuZW4gZ2VtYWNodC4gCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoV3VyemVsLCAyNi4gQXVnIDIwMDEsIDEzOjM5OjI4KToKfiMhIHJuPVpvb2sgcnQ9OTk4ODI1NTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1CmRydWNrIG1hY2h0IG51ciBkYW5uIHNpbm4sIHdlbm4gYXVjaCBvcHRpb25lbiB1bmQgYWx0ZXJuYXRpdmVuIGdlZ2ViZW4Kd2VyZGVuLiBkYSBmZWhsdCBlcyBtZWluZXIga2VubnRuaXMgbmFjaCB6aWVtbGljaCBvZnQgZHJhbi4Kd2FzIHBvbGl0aWtlciBzbyB0dW4gb2RlciBuaWNodCB0dW4sIGhhdCBtaXQgZGVtIHdhcyBzaW5udm9sbCBpc3Qgb2RlciBuaWNodApsZWlkZXIgbnVyIGluIGRlbiBzZWx0ZW5zdGVuIGZhZWxsZW4gZWluZSBiZXppZWh1bmcuIGRhcyBtZXJrdCBtYW4gbmF0dWVybGljaAphdWNoIGluIGRlciBha3R1ZWxsZW4gZGlza3Vzc2lvbiB3aWVkZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChNdXBmZWwsIDI2LiBBdWcgMjAwMSwgMTU6MzU6MzkpOgp+IyEgcm49V3VyemVsIHJ0PTk5ODgyNTk2OCByZz1zY2htYXJybgp+IyEgdGlkPTk5ODQyNDc1NQpPaCBtZWluIEdvdHQsIE5pdmVhdSBhdWYgU2NobWFycm4uIFdvbWl0IGhhYmVuIHdpciBkYXMgamV0enQgdmVyZGllbnQ/IDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChYZW5hZGEsIDI2LiBBdWcgMjAwMSwgMTY6Mjg6MjgpOgp+IyEgcm49Wm9vayBydD05OTg4MjQxNjYgcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKc2NoaWNrdCBzaWUgbmFjaCBhbWVyaWthIGFuc3RhdHQgaW4gZWluZSBrbGVpbnN0YWR0IGluIGhlc3NlbiBkaWUgZGFzIGdhbnplIAppbSByYWhtZW4gZGVyIGhldXRpZ2VuIGdlc2V0emxpY2hlbiBtb2VnbGljaGtlaXRlbiBzY2hvbiBqZXR6dCBkdXJjaGZ1ZWhyZW4uClhlbmFkYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChYZW5hZGEsIDI2LiBBdWcgMjAwMSwgMTY6MzE6MzQpOgp+IyEgcm49WGVuYWRhIHJ0PTk5ODgzNjEwOCByZz1zY2htYXJybgp+IyEgdGlkPTk5ODQyNDc1NQppY2gga2FubiBzY2hlaW5iYXIga2VpbmUgZ2FuemVuIHNpbm52b2xsZW4gc2FldHplIG1laHIgc2NocmVpYmVuLi4uCmljaCBtZWludGUgZWlnZW50bGljaCwgZGFzIGVzIGluIEhlc3NlbiBzY2hvbiBlaW5lIGtsZWluc3RhZHQgZ2lidApkaWUgYWxsZSBtb2VnbGljaGtlaXRlbiBhdXNudXR6dCB1bmQgZGFtaXQgYXVjaCBkaWUga3Vlcnp1bmcgdm9uIGhpbGZlIGVpbi0Kc2NobGllc3N0LiB1bmQgd2FydW0gbWFuIGRhbm4gZGllIG1pbmlzdGVyaW4gbmFjaCB1c2Egc2NoaWNrdCBhbnN0YXR0IG1pdApkZW0gYnVzIGluIGRpZSBzdGFkdCBpcyBzY2hsZWllcmhhZnQuClhlbmFkYSBpcyBldHdhcyB2ZXJ3aXJydCBoZXV0ZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOZXRkaWdlc3QgbWFsIHdpZWRlci4gKEdhbmR1ciwgMjYuIEF1ZyAyMDAxLCAxNjozMjoyNik6Cn4jISBybj1YZW5hZGEgcnQ9OTk4ODM2Mjk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1CjpzY2h3ZWlndCBsaWViZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChYZW5hZGEsIDI2LiBBdWcgMjAwMSwgMTY6MzI6NTYpOgp+IyEgcm49R2FuZHVyIHJ0PTk5ODgzNjM0NiByZz1zY2htYXJybgp+IyEgdGlkPTk5ODQyNDc1NQpYZW5hZGEgR3J1bW1lbHQgaWhyZW4gTWFubiBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBOZXRkaWdlc3QgbWFsIHdpZWRlci4gKEdhbmR1ciwgMjYuIEF1ZyAyMDAxLCAxNjozMzoxMCk6Cn4jISBybj1YZW5hZGEgcnQ9OTk4ODM2Mzc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1CjpraWNoZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChBbmFjcmlvbiwgMjYuIEF1ZyAyMDAxLCAxNjozNjo0OSk6Cn4jISBybj1EYXJpYSBydD05OTg4MjE3NjIgcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKSWNoIGZpbmRlIGRpZSBJZGVlbiBndXQgLi4uIGdyb2Vzc3RlbnRlaWxzLgoKYW5hYyogLSBoZXNzZSB1bmQgZGVyemVpdCB3YWhsYW1pIDtvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChEYXNoZWwsIDI2LiBBdWcgMjAwMSwgMjA6MTY6NDUpOgpWYXJkaW9uIGZhZWxsdCBhbHMgRmV1ZXJiYWxsIGhlcmFiLgogIC4uWmF1YmVyZWkvRmV1ZXIuLi4uLi4uIFZhcmRpb24uLi4uLi4gOiBGcm9zY2guLi4uLi4uICoqKioqKioqIC0tClNjaG1ldHQoKykKRGVyIEZyb3NjaCBmYWVsbHQgdG90IHp1IEJvZGVuLgoKRGEgd2FyIHdvaGwgbml4IG1laHIgbWl0IEZMVyA6KQpEYXNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBOZXRkaWdlc3QgbWFsIHdpZWRlci4gKEtlbGx5YnVuZHksIDI2LiBBdWcgMjAwMSwgMjA6NTQ6MDgpOgp+IyEgcm49TW9udGFudXMgcnQ9OTk4NDMwMzg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1CkljaCBoYWJlIHNjaG9uIGVpbmVuIEdJIGVybGVidCwgZGVyIHdhciBzY2hvbiA2ICghKSBqYWhyZSBpbiBEZXV0c2NobGFuZApzdGF0aW9uaWVydCB1bmQgd2FyIGltbWVyIG5vY2ggZGVyIE1laW51bmcsIGRhc3MgZGllIE51ZXJuYmVyZ2VyIFJhc3Nlbmdlc2V0emUKbm9jaCBnZWx0ZW4gKGVyIHdhciB3ZWlzcyB1bmQgZmFuZCBkYXMgbmF0dWVybGljaCB2b2xsIGNvb2wsIGFiZXIgTmF6aXMgc2luZApuYXR1ZXJsaWNoICdmdWNraW5nJyksIGJlaSBzb3dhcyBmcmFndCBtYW4gc2ljaCB3aXJrbGljaCwgb2IgZGllIEFybXkgbmFjaCBkZW0KVmVyZmFocmVuICdjaGFpciBvciBHZXJtYW55JyBkaWUgU29sZGF0ZW4gYXVzc3VjaHQuCktlbGx5LCB3aWxkIG1pdCBlaW5lbSAnQW1pIGdvIGhvbWUnLUZhZWhuY2hlbiB3ZWRlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChLZWxseWJ1bmR5LCAyNi4gQXVnIDIwMDEsIDIxOjAzOjM0KToKfiMhIHJuPVd1cnplbCBydD05OTg4MjQ1MTMgcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKRGVtamVuaWdlbiBzb2ZvcnQgYWxsZSBCZXp1ZWdlIHN0cmVpY2hlbi4gSW4gTmllZGVyYmF5ZXJuIGlzdCBkaWUKQXJiZWl0c2xvc2lna2VpdCBuaWNodCBzb29vIGhvY2gsIGRhcyBlciBuaWNodHMgZmluZGVuIHd1ZXJkZSwgZGEgbXVzcyBlciBoYWx0Cm1hbCB3YXMgYW5uZWhtZW4sIHdhcyBlciBuaWNodCBnZWxlcm50IGhhdC4KCkR1bXBmYmFja2UsIHVlYmVycXVhbGlmaXppZXJ0IGFiZXIgZ2x1ZWNrbGljaCBtaXQgZGVtIG1vbWVudGFuZW4gSm9iCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChPbGxpLCAyNi4gQXVnIDIwMDEsIDIxOjA3OjE3KToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9OTk4ODUyNjE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1Cj4gRHVtcGZiYWNrZSwgdWViZXJxdWFsaWZpemllcnQKCkhtLCBpY2ggc3RlbGwgbWlyIGRhcyBnZXJhZGUgdm9yLCBmaW5kIGFiZXIgbml4LCB3b2Z1ZXIgS2VsbHkgdWViZXItCnF1YWxpZml6aWVydCBzZWluIGtvZW5udGUgKmdnKgoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoS2VsbHlidW5keSwgMjYuIEF1ZyAyMDAxLCAyMToyMjowMik6Cn4jISBybj1PbGxpIHJ0PTk5ODg1MjgzNyByZz1zY2htYXJybgp+IyEgdGlkPTk5ODQyNDc1NQpOYSBmdWVycyBCdW1zZW4sIEtyZWRpdGthcnRlbiB1ZWJlcnMgTGltaXQgYnJpbmdlbiwgc2ljaCBhdXNoYWx0ZW4gbGFzc2VuLCBkaWUKc2NobmVsbGUgTWFyayBhdWZtIFJ1ZWNrc2l0eiB2b24gaXJnZW5kbmVyIEJNVy1TY2h3YW56cHJvdGhlc2UgbWFjaGVuLi4uLiBldGMKcHBwIDstKQpEdW1wZmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBOZXRkaWdlc3QgbWFsIHdpZWRlci4gKEthcmlzLCAyNi4gQXVnIDIwMDEsIDIyOjA3OjQ5KToKfiMhIHJuPU9sbGkgcnQ9OTk4ODUyODM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1CkJlaW5lIHVlYmVyZWluYW5kZXJzY2hsYWdlbiBrYW5uIEtlbGx5IGdhYWFueiB0b2xsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoT2xsaSwgMjYuIEF1ZyAyMDAxLCAyMjowOTowNyk6Cn4jISBybj1LYXJpcyBydD05OTg4NTY0Njkgcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKSmFqYWphLCBvaywgaWNoIGdlYiBtaWNoIGdlc2NobGFnZW4gOikKCk9sbGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoR2xvaW5zb24sIDI3LiBBdWcgMjAwMSwgMDI6MjI6NDgpOgp+IyEgcm49S2VsbHlidW5keSBydD05OTg4NTIwNDggcmc9c2NobWFycm4KfiMhIHRpZD05OTg0MjQ3NTUKRWluIHByaW1hIFplaWNoZW4gZGFmdWVyLCB3aWUgaXNvbGllcnQgZGllIFNvbGRhdGVuIGRlciBBbGxpZXJ0ZW4gbGViZW4uCkRhZnVlciB3YXJlbiBiZWkgdW5zIGF1Y2ggZWluaWdlIEluZmFudGVyaXN0ZW4gYXVzIGRlbSBoaW50ZXJlbiBTaWJpcmllbgpzdGF0aW9uaWVydCBkaWUgbm9jaCBrZWluIGZsaWVzc2VuZCBXYXNzZXIgYXVzIGRlciBXYW5kIGthbm50ZW4uIFNjaGVpc3MKU29sZGF0ZW5sZWJlbi4KCkdsb2luKHNvbiksIGF1c2dlbXVzdGVydCB1bmQgZnJvaCBkYWJlaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRm9yYmVzIE1hZ2F6aW5lIChEb3R6LCAyNy4gQXVnIDIwMDEsIDE1OjU4OjQxKToKVGhlIGZvbGxvd2luZyBpcyBhbiBhY3R1YWwgZXhjZXJwdCBmcm9tIHRoaXMgbW9udGgncyBGb3JiZXMgKEF1c3RyYWxpYSkKTWFnYXppbmU6IAoKQSBoZXJkIG9mIGJ1ZmZhbG8gY2FuIG9ubHkgbW92ZSBhcyBmYXN0IGFzIHRoZSBzbG93ZXN0IGJ1ZmZhbG8sIGFuZCB3aGVuIHRoZQpoZXJkIGlzIGh1bnRlZCwgaXQgaXMgdGhlIHNsb3dlc3QgYW5kIHdlYWtlc3Qgb25lcyBhdCB0aGUgYmFjayB0aGF0IGFyZSBraWxsZWQKZmlyc3QuIFRoaXMgbmF0dXJhbCBzZWxlY3Rpb24gaXMgZ29vZCBmb3IgdGhlIGhlcmQgYXMgYSB3aG9sZSxiZWNhdXNlIHRoZQpnZW5lcmFsIHNwZWVkIGFuZCBoZWFsdGggb2YgdGhlIHdob2xlIGlzIG1haW50YWluZWQgb3IgZXZlbiBpbXByb3ZlZCBieSB0aGUKcmVndWxhciBjdWxsaW5nIG9mIHRoZSB3ZWFrZXN0IG1lbWJlcnMuCgpJbiBtdWNoIHRoZSBzYW1lIHdheSwgdGhlIGh1bWFuIGJyYWluIGNhbiBvcGVyYXRlIG9ubHkgYXMgZmFzdCBhcyB0aGUgc2xvd2VzdApicmFpbiBjZWxscyB0aHJvdWdoIHdoaWNoIHRoZSBlbGVjdHJpY2FsIHNpZ25hbHMgcGFzcy4KClJlY2VudCBlcGlkZW1pb2xvZ2ljYWwgc3R1ZGllcyBoYXZlIHNob3duIHRoYXQgd2hpbGUgZXhjZXNzaXZlIGludGFrZSBvZgphbGNvaG9sIGtpbGxzIG9mZiBicmFpbiBjZWxscywgaXQgYXR0YWNrcyB0aGUgc2xvd2VzdCBhbmQgd2Vha2VzdCBicmFpbiBjZWxscwpmaXJzdC4gVGh1cywgcmVndWxhciBjb25zdW1wdGlvbiBvZiBiZWVyIGhlbHBzIGVsaW1pbmF0ZSB0aGUgd2Vha2VyIGNlbGxzLApjb25zdGFudGx5IG1ha2luZyB0aGUgYnJhaW4gYSBmYXN0ZXIgYW5kIG1vcmUgZWZmaWNpZW50IG1hY2hpbmUuCgpUaGUgcmVzdWx0IG9mIHRoaXMgaW4tZGVwdGggc3R1ZHkgdmVyaWZpZXMgYW5kIHZhbGlkYXRlcyB0aGUgY2F1c2FsIGxpbmsKYmV0d2VlbiBhbGwtd2Vla2VuZCBwYXJ0aWVzIGFuZCBqb2IgcmVsYXRlZCBwZXJmb3JtYW5jZS4gSXQgYWxzbyBleHBsYWlucyB3aHksCmFmdGVyIGEgZmV3IHNob3J0IHllYXJzIG9mIGxlYXZpbmcgYSB1bml2ZXJzaXR5IGFuZCBnZXR0aW5nICBtYXJyaWVkLCBtb3N0CnByb2Zlc3Npb25hbHMgY2Fubm90IGtlZXAgdXAgd2l0aCB0aGUgcGVyZm9ybWFuY2Ugb2YgdGhlIG5ldyBncmFkdWF0ZXMuIE9ubHkKdGhvc2UgZmV3IHRoYXQgc3RpY2sgdG8gdGhlIHN0cmljdCByZWdpbWVuIG9mIHZvcmFjaW91cyBhbGNvaG9saWMgY29uc3VtcHRpb24KY2FuIG1haW50YWluIHRoZSBpbnRlbGxlY3R1YWwgbGV2ZWxzIHRoYXQgdGhleSBhY2hpZXZlIGR1cmluZyB0aGVpciBjb2xsZWdlCnllYXJzLgoKU28sIHRoaXMgaXMgYSBjYWxsIHRvIGFybXMuIEFzIG91ciBjb3VudHJ5IGlzIGxvc2luZyBpdHMgdGVjaG5vbG9naWNhbCBlZGdlLAp3ZSBtdXN0IG5vdCBzaHVkZGVyIGluIG91ciBob21lcy4gR2V0IGJhY2sgaW50byB0aGUgYmFycy4gUXVhZmYgdGhhdCBwaW50LgpZb3VyIGNvbXBhbnkgYW5kIGNvdW50cnkgbmVlZCB5b3UgdG8gYmUgYXQgeW91ciBwZWFrLCBhbmQgeW91IHNob3VsZG4ndCBkZW55CnlvdXJzZWxmIHRoZSBjYXJlZXIgdGhhdCB5b3UgY291bGQgaGF2ZS4gVGFrZSBsaWZlIGJ5IHRoZSBib3R0bGUgYW5kIGJlIGFsbAp0aGF0IHlvdSBjYW4gYmUuCgpEb3R6LCBXRwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWl0dGVuIGluIGVpbmVyIFRTUTogKEdsb2luc29uLCAyNy4gQXVnIDIwMDEsIDE2OjAxOjI0KToKW1RvZDpMYXJzXSBFaW4gRHJha29uaWVycHJpZXN0ZXIgaGF0IGdlcmFkZSBSb3NhIHVtZ2VicmFjaHQuClJvc2Egc2NobGVpY2h0IGxlaXNlIGhlcmVpbi4KICBEZXIgRHJha29uaWVyYWRlcHQga2l0emVsdCBSb3NhIGFtIEJhdWNoLgogIERlciBEcmFrb25pZXJhZGVwdCB0cmlmZnQgUm9zYSBoYXJ0LgpSb3NhIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBSb3NhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChTb2xteXIsIDI3LiBBdWcgMjAwMSwgMjE6MjA6NDQpOgp+IyEgcm49QW5hY3Jpb24gcnQ9OTk4ODM2NjA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1Ck5pZW1hbmQgdW5kIG5pY2h0cyBpbiBEZXV0c2NobGFuZCB3aXJkIG1pY2ggdW0gbWVpbmVuIFNveiogYnJpbmdlbiwKYXVjaCB3ZW5uIGljaCBkYWZ1ZXIgYmlzIG5hY2ggS2FybHNydWhlIGtsYWdlbiBtdXNzIDspLiBOYWphLCBzYWdlbgp3aXIgZWhlciA6IERldXRzY2hsYW5kcyBHZXNldHpnZWJ1bmcgaXN0IHNvIGxhbmdzYW0sIGJpcyBkYWhpbiBiaW4KaWNoIHNjaG9uIG1pdCBtZWluZXIgQXVzYmlsZHVuZyBmZXJ0aWcuLi4KCkdydXNzIFNvbCoKClBzIDogTWFuIHNvbGx0ZSBuaWUgdmVyZ2Vzc2VuLCBkYXMgbmljaHQgbnVyIEFyYmVpdHN1bndpbGxpZ2UgU296KgpiZXppZWhlbiwgc29uZGVybiBhdWNoIExldXRlIG1pdCBkaXYuIEtyYW5raGVpdGVuLCBLaW5kZXIgZGllIGF1Zi0KZ3J1bmQgZWluZXMgc2NobGVjaHRlbiBFbHRlcm5oYXVzZXMgYXVzZ2V6b2dlbiBzaW5kIG9kZXIgZWluZmFjaCBBdXMtCmJpbGR1bmdzc3VjaGVuZGUsIGRpZSBrZWluZW4gUGxhdHogZmluZGVuLCBhdWNoIHdlbm4gZXMgTWFzc2VuIHZvbgpBdXN3ZWljaHByb2dyYW1tZW4gZ2lidC4KCkBXdXJ6ZWwgOiBTb3JyeSwgYWJlciB1ZWJlciBkaWUgU2FjaGUgbWl0IGRlbSBNb3NsZW0gaW0gU2Nod2VpbmVzY2hsYWNodC0KaG9mIHNvbGx0ZXN0IER1IHNlbGJlciBub2NoIGVpbm1hbCBuYWNoZGVua2VuLiBCZXZvciBEdSBkYSBzbyB2b3JzY2huZWxsCnVydGVpbHN0LCBzb2xsdGVzdCBEdSBEaXIgdm9yc3RlbGxlbiBpbiBDaGluYSBvZGVyIEluZGllbiB6dSBsZWJlbiB1bmQKZGVuIEpvYiBhbHMgVm9ya29zdGVyIHZvbiBIZXVzY2hyZWNrZW5wcm9kdWt0ZW4gYXVzenVmdWVocmVuLiBOYXR1ZXJsaWNoCmFscyBldXJvcGFlaXNjaGVyLCBhcmJlaXRzbG9zIGdlbWVsZGV0ZXIgRWlud2FuZGVyZXIuLi5BYmVyIGVnYWwsIHdpciAKd29sbHRlbiBqYSBuaWNodCBkYXJ1ZWJlciBkaXNrdXRpZXJlbiwgZ2VsbGU/ISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuIChNb250YW51cywgMjcuIEF1ZyAyMDAxLCAyMTo0Nzo0Mik6Cn4jISBybj1Tb2xteXIgcnQ9OTk4OTQwMDQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1CkljaCBrYW5uIG51ciBzYWdlbiwgZGFzcyBpY2ggdm9uIGJlZnJldW5kZXRlbiBTb3ppYWxhcmJlaXRlcm4gR2VzY2hpY2h0ZW4KaG9lcmUgdm9uIEZhbWlsaWVuLCBkaWUgYmVyZWl0cyBpbiBkZXIgZHJpdHRlbiBnZW5lcmF0aW9uClNvemlhbGhpbGZlZW1wZmFlbmdlciBzaW5kLiBEYXMga2FubiBpcmdlbmR3aWUgbmljaHQgc2VpbiwgamVkZW5mYWxscyBuaWNodApuYWNoIE1lbmRlbC4gTmF0dWVybGljaCwgd2VubiBkaWUgS2luZGVyIHZvcmdlbGVidCBiZWtvbW1lbiwgZGFzcyBtYW4gZGVuCmdhbnplbiBUYWcgbWl0IGRlciBEb3NlIEJpZXIgdm9yZGVtIEZlcm5zZWhlciBoZXJ1bWhhZW5nZW4ga2FubiB1bmQgbmljaHQKYXJiZWl0ZW4gbXVzcywgd2VpbCBpcmdlbmR3byBkYXMgc296aWFsZSBOZXR6IGdyZWlmdC4uLgouLi4gZGFzIGlzdCByaWNodGlnIHNjaGFkZSwgd2VpbCBkYWR1cmNoIGRhcyBzb3ppYWxlIE5ldHogc28gdWViZXJzc3RyYXBhemllcnQKd2lyZCwgZGFzcyBkaWUgd2lya2xpY2ggQmVkdWVyZnRpZ2VuIG5pY2h0IHJpY2h0aWcgdW5lcnN0dWV0enQgd2VyZGVuIGtvZW5uZW4uClVkbiBkYW5uIGtvbW1lbiBQb2xpdGlrZXIgd2llIGRlciBoZXJyIFdhaGxmYWVsc2NoZXIgS29jaCBhdWYgZGllIElkZWUsIHNpY2gKaW4gV2lzY29uc2luIHVtenVzY2hhdWVuLi4uCk5vY2ggZWluIERlbmthbnNjaHViOiBBTFUtIG9kZXIgU0gtRW1wZmFlbmdlciwgZGllIHZvbSBBcmJlaXRzYW10IGltIGhlcmJzdAphbHMgRXJudGVoZWxmZXIgYXVmcyBMYW5kIGdlc2NoaWNrdCB3ZXJkZW4sIHVuZCBkaWUgc2ljaCB6dSBkYWVtbGljaCBkYWJlaQphbnN0ZWxsZW4sIEthcnRvZmZlbG4sIEFlcGZlbCBvZGVyIFRyYXViZW4gZWluenVmYWhyZW4uIEljaCBrcmllZyBqZWRlcyBqYWhyCmRhcyBHZWphbW1lciBkZXIgYmF1ZXJuIHVuZCBXaW56ZXIgbWl0LCBkaWUgcmljaHRpZyBndXRlcyBHZWxkIGZ1ZXIKU2Fpc29ua3JhZWZ0ZSB6YWhsZW4gd29sbGVuIHVuZCBudXIgTGV1dGUgYmVrb21tZW4sIGRpZSBTdGVpbmUgbmljaHQgdm9uClJ1ZWJlbiB1bnRlcnNjaGVpZGVuIGtvZW5uZW4gdW5kIGRhcyBhdWNoIG5jaWh0IGxlcm5lbiB3b2xsZW4uIFdvYmVpIGVzIGVjaHQKbmljaHQgc28gc2Nod2VyIGlzdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoR2xvaW5zb24sIDI3LiBBdWcgMjAwMSwgMjI6MDY6MjgpOgp+IyEgcm49TW9udGFudXMgcnQ9OTk4OTQxNjYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NDI0NzU1CkVyc3RlbnMgaXN0IHJpY2h0aWcgZ3V0ZXMgR2VsZCBhdWYgZGVtIExhbmRlIG1laXN0IGViZW4gbmljaHQgdmllbCBtZWhyIGFscwpkYXMgU296aWFsZ2VsZCAoYXVjaCB3ZW5uIGRpZSBMYW5kd2lydHNjaGFmdCB1ZWJlcmFsbCBlaW4gd2VuaWcgdW50ZXJzdHVldHp0CndpcmQgbGViZW4gZGllIG5pY2h0IHNvIGZldHQgZGFzcyBzaWUgRGlyIEJvbWJlbmxvZWhuZSB6YWhsZW4ga29lbm5lbiksIHdvCmFsc28gaXJnZW5kd2FzIHNjaGllZmdlaHQgdW5kIHp3b3RlbnMgaXN0IGRhcyBtZWlzdCBlaW5lIHppZW1saWNoZQpLbm9jaGVuYXJiZWl0IEFlcGZlbCB6dSBwZmx1ZWNrZW4sIEthcnRvZmZlbG4genUgc29ydGllcmVuIG9kZXIgLi4uIGRpZQp2aWVsbGVpY2h0IG5vY2ggZXR3YXMgaGFlcnRlciBpc3QgYWxzIGF1ZiBkZW0gQmF1IHp1IGFyYmVpdGVuIChpY2ggaGFiIGluCmxldHp0ZXIgWmVpdCBzZWx0ZW4gQmF1YXJiZWl0ZXIgd2lya2xpY2ggd2llIGZydWVoZXIgU3RlaW5lIHNjaGxlcHBlbiBzZWhlbiwKZGllIG1laXN0ZW4gaGF0dGVuIGluendpc2NoZW4gZWluZW4gQXVmenVnKS4gRGEgbXVzc3QgRHUgZGVtCmR1cmNoc2Nobml0dGxpY2hlbiBBcmJlaXRzbG9zZW4sIGRlciB2b3JoZXIgaXJnZW5kZWluZSBEZW5rYXJiZWl0IGdlbWFjaHQgaGF0CnNjaG9uIGVpbiB3ZW5pZyBtZWhyIEFucmVpeiBnZWJlbiBzaWNoIGRhcyBlcnN0ZW1hbCBpbSBMZWJlbiBhdXMgZGVyIFN0YWR0IHp1CmJld2VnZW4uCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMYXN0IEV4aXQgKEV4aXQsIDI4LiBBdWcgMjAwMSwgMDI6MTY6NTMpOgpCaWV0ZXQgd2VyIG1laHIgPwpXaWUgaGVpc3N0IER1IGRlbm4gKCJuZXUiIGZ1ZXIgbmV1ZW4gU3BpZWxlcik/IFNjaG9lbiwgZGFzcyBEdSB3aWVkZXIgZGEgYmlzdCwKRXhpdCEKMzIgZmVobGdlc2NobGFnZW5lIExvZ2luLVZlcnN1Y2hlIHNlaXQgZGVtIGxldHp0ZW4gZXJmb2xncmVpY2hlbiBMb2dpbi4KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAgICBEaWUgUmVnZWxuIHNpbmQgbWl0IGRlbSBCZWZlaGwgImhpbGZlIHJlZ2VsbiIgYWJydWZiYXIuICAgICAgICAgCiAgICAgICBFaW5lIEVpbmZ1ZWhydW5nIGZ1ZXIgQW5mYWVuZ2VyIGxpZWZlcnQgImhpbGZlIGVpbmZ1ZWhydW5nIi4KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkRhcyBsZXR6dGUgTWFsIGthbXN0IER1IHZvbiAyMTcuMC4xMTYuNDcuCgoiVmllbGxlaWNodCBzb2xsdGUgZGVyIE5hbWUgZ2VzcGVycnQgd2VyZGVuIGJ6dy4KZGllIE1vZWdsaWNoa2VpdCBiZXN0ZWhlbiBtaXQgJ2V4aXQnIGRhcyBFaW5sb2dnZW4genUgYmVlbmRlbiIKCkNocmlzdG9waGVyCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMYXN0IEV4aXQgKENocmlzdG9waGVyLCAyOC4gQXVnIDIwMDEsIDAyOjE5OjU3KToKfiMhIHJuPUV4aXQgcnQ9OTk4OTU3ODEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4OTU3ODEzCmFjaCBqYSA6IERlciBOYW1lIGthbm4gb2huZSBSdWVja3NwcmFjaGUgenVtIHNwZXJyZW4gZ2Vsb2VzY2h0IHdlcmRlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNjaGxlaW1kcmFjaGUgKEJvaW5nLCAyOC4gQXVnIDIwMDEsIDEyOjEzOjQ3KToKfiMhIG9uPVNvbG15ciBvdD05OTg5OTI5Nzkgb2c9ZC5nZWJpcmdlCn4jISBybj1Cb2luZyBydD05OTg5OTI2NTEgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9OTk4OTkyNjUxCkhhYmVuIHNpY2ggTGV1dGUgbWl0IFVlYmVyZnVua3Rpb24gSWhyZXIgU2NobGVpbWRydWVzZW4gYmVzY2h3ZWhydD8KCiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTY2hsZWltZHJhY2hlIChCb2luZywgMjguIEF1ZyAyMDAxLCAxMjoxMzo0OSk6Cn4jISBvbj1WYXJsYXJpb24gb3Q9OTk4OTkzMDYyIG9nPWQuZ2ViaXJnZQp+IyEgcm49U29sbXlyIHJ0PTk5ODk5Mjk3OSByZz1kLmdlYmlyZ2UKfiMhIHRpZD05OTg5OTI2NTEKTmEgZHUga29tbXN0IGF1ZiBpZGVlbi4uLiB1bmQgZGFzLCB3byBpY2ggZG9jaCBncmFkIGdlZnJ5aHN0eWNrdCBoYWIuLi4KClZhcmwqLCB3eXJnZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTY2hsZWltZHJhY2hlIChCb2luZywgMjguIEF1ZyAyMDAxLCAxMjoxMzo1MCk6Cn4jISBvbj1Tb2xteXIgb3Q9OTk4OTkzMjUzIG9nPWQuZ2ViaXJnZQp+IyEgcm49VmFybGFyaW9uIHJ0PTk5ODk5MzA2MiByZz1kLmdlYmlyZ2UKfiMhIHRpZD05OTg5OTI2NTEKQWNoLCBEdSB3ZWlzc3QgZG9jaC4uLmljaCBoYWIgaW0gS3JhbmtlbmhhdXMgZ2VhcmJlaXRldC4gSWNoIGtvZW5udGUKRGlyIGRhIG5vY2ggbmUgTWVuZ2UgZXJ6YWVobGVuLCAuLi4gYWJlciBlcnN0IG5hY2htIE1pdHRhZ2Vzc2VuIDspCgpTb2wqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGluIGRlciBBKkdpbGRlIChTb2xteXIsIDI4LiBBdWcgMjAwMSwgMTM6NTI6MjApOgogJ25pbW0gYnVjaCcKCiBGdWVyIGRhcyBBbmZhZW5nZXJidWNoIGJpc3QgRHUgbnVuIHp1IGFsdC4KIEZ1ZXIgZGFzIEFuZmFlbmdlcmJ1Y2ggYmlzdCBEdSB6dSBhbHQuCiBEdSBuaW1tc3QgZGFzIEJ1Y2guCgogJ2knCiBLbGVpZHVuZyAmIFJ1ZXN0dW5nZW46CiAgRWluIEtyYWdlbiBtaXQgendlaSBLbm9jaGVua3JldXplbiAoYW5nZXpvZ2VuKS4KICBFaW4gRnVzc3JpbmcuCiBWZXJzY2hpZWRlbmVzOgogIEVpbmUgd2lsZGUgUm9zZS4gICAgICAgICAgICAgICAgICAgICAgIERpZSBaZWl0dW5nLgogIEVpbiBQbGFuZWRpdG9yLiAgICAgICAgICAgICAgICAgICAgICAgIFNvbG15cnMgVGVkZHliYWVyIFNvbG1pY2guCiAgRWluIGdsYWVzZXJuZXIgUnVlY2tlbmtyYXR6ZXIuICAgICAgICAgRWluIEtlcmJob2x6LgogIEVpbiBGcmV1bmRzY2hhZnRzYmFuZCAoZ2V0cmFnZW4pLiAgICAgIEVpbiBBYmVudGV1ZXJ0YWdlYnVjaC4KCldvIGlzIG51IGRhcyBCdWNoPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogcGlja3VwIChHcmltbWJvcm4sIDI4LiBBdWcgMjAwMSwgMTU6NDQ6NTMpOgp+IyEgcm49SG9ibyBydD05OTkwMDQ5MzYgcmc9YW56ZWlnZW4KfiMhIHRpZD05OTg3ODExODUKTWFnIGphIHNlaW4gZGFzcyBMZWRlciBndXQgcmllY2h0LCBhYmVyIGljaCBzdGVoIGRhbm4gZG9jaCBtZWhyIGF1ZiBMYXRleCB1bmQKR3VtbWkuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogcGlja3VwIChDYXR3ZWF6bGUsIDI4LiBBdWcgMjAwMSwgMTU6NDU6MzcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTk5OTAwNjI5MyByZz1zY2htYXJybgp+IyEgdGlkPTk5ODc4MTE4NQpSaWVjaHQgZGFzIG5pY2h0IGd1dD8KWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBwaWNrdXAgKEdyaW1tYm9ybiwgMjguIEF1ZyAyMDAxLCAxNTo1NzozMyk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9OTk5MDA2MzM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk4NzgxMTg1ClsgXSBEdSBoYXN0IHNjaG9ubWFsIGFuIHZlcnNjaHdpdHp0ZW0gR3VtbWkgZ2Vyb2NoZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJbiBZYWxhcyBBdWZ0cmFnIDopIChHcmltbWJvcm4sIDI5LiBBdWcgMjAwMSwgMDc6NDU6MTcpOgp+IyEgcm49U3RhcmZpcmUgcnQ9OTk5MDYzNTQzIHJnPXdpdHplCn4jISB0aWQ9OTk5MDYzNTQzCk1hbmNobWFsIGRlbmtlIGljaCBlaW5lIFJ1YnJpayB3aXR6ZS51cmFsdCBpc3QgZHJpbmdlbmQgbm9ldGlnLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSW4gWWFsYXMgQXVmdHJhZyA6KSAoUGF0cnluLCAyOS4gQXVnIDIwMDEsIDA3OjU1OjU5KToKfiMhIHJuPUdyaW1tYm9ybiBydD05OTkwNjM5MTcgcmc9c2NobWFycm4KfiMhIHRpZD05OTkwNjM1NDMKZWhlciB3aXR6ZS51cmFsdC5zY2hsZWNodC5lcnphZWhsdAoKLS0gCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSW4gWWFsYXMgQXVmdHJhZyA6KSAoT3JrdG9ldGVyLCAyOS4gQXVnIDIwMDEsIDA4OjI0OjQ3KToKfiMhIHJuPVBhdHJ5biBydD05OTkwNjQ1NTkgcmc9c2NobWFycm4KfiMhIHRpZD05OTkwNjM1NDMKTm9jaCBiZXNzZXIgd2l0emUudXJhbHQuc2NobGVjaHQuZXJ6YWVobHQubWl0X3R5cG9zCgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSW5zZWxjaGVuIChWYW5pb24sIDI5LiBBdWcgMjAwMSwgMjE6Mzk6MjgpOgp+IyEgcm49QW5hdG9sIHJ0PTk5OTExMzc1NCByZz1zZWhlci51cmxhdWIKfiMhIHRpZD05OTczNzkxODcKV2VpYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSW5zZWxjaGVuIChMaWFyYSwgMjkuIEF1ZyAyMDAxLCAyMTo0MDowMik6Cn4jISBvbj1MaWFyYSBvdD05OTkxMTM4NTggb2c9c2VoZXIudXJsYXViCn4jISBybj1BbmF0b2wgcnQ9OTk5MTEzNzU0IHJnPXNlaGVyLnVybGF1Ygp+IyEgdGlkPTk5NzM3OTE4NwpJc3QgZGFzICduZSBEcm9odW5nPyA6LSkKClpaTEIsIGhhdCBBbmdzdCA7LSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmQgd2llZGVyIG1hbCBOZXRkaWdlc3QuLi4gKEZvb2JhciwgMjkuIEF1ZyAyMDAxLCAyMjo1NjowMyk6CkRhdGU6IE1vbiwgMjcgQXVnIDIwMDEgMjA6MjI6MzEgKzAyMDAKRnJvbTogSm9jaGVuIDxLcmFlbWVyakBzdHVkLW1haWxlci51bmktbWFyYnVyZy5kZT4KTmV3c2dyb3VwczogZGUuc29jLmRyb2dlbgpTdWJqZWN0OiBSZTogQWdncmVzc2lvbnNzdGVpZ2VybmRlcyBQb3RlbnppYWwgdm9uIEFsa29ob2wKCgpPbiBNb24sIDI3IEF1ZyAyMDAxLCBBbmR5IEFuZ2VyZXIgd3JvdGU6CltwbGFubG9zZXItc25pcF0KPiBkb2NoIGF1Y2ggIldlcmJ1bmciIGZ1ZXIgVG9sZXJhbnosIG9id29obCdzIGF1Y2ggdW50ZXIgInVucyIgd2VsY2hlCj4gZ2lidCwgYmVpIGRlbmVuIGVzIGRhcmFuIG1hbmNobWFsIGVpbiB3ZW5pZyBoYXBlcnQuIFdpcmQgZGFzIGRlc3dlZ2VuCj4gZ2xlaWNoIHVuZ2xhdWJ3dWVyZGlnPyBEaWUgUG9saXplaSB2ZXJsYW5ndCBqYSBpbW1lcmhpbiB2b24gaWhyZW4KPiBNaXRnbGllZGVybiwgc2ljaCBzZWxiZXIgYW4gZGVuIFRleHQgZGVzIEF1ZmtsZWJlcnMgenUgaGFsdGVuLgoKKmh1ZXN0ZWwqClNwb250YW4gZmFlbGx0IG1pciBkYSBlaW5lIEVyaW5uZXJ1bmcgZWluLiBFcyBnZXNjaGFoIHZvciB2aWVsZW4gSmFocmVuLgpEYXMgQnVuZGVzaW5uZW5taW5pc3Rlcml1bSAodW50ZXIgTWFuZnJlZCBLYW50aGVyKSBoYXR0ZSBzbyBlaW5lIEthbXBhZ25lCmFtIExhdWZlbjogRkFJUlNUQUVORE5JUywgaGllc3MgZXMgZ3Jvc3MgYXVmIFBsYWthdGVuLCBBdWZrbGViZXJuLApCcm9zY2h1ZXJlbi4gRGllIE1lbnNjaGVuIHNvbGx0ZW4gbmV0dCB6dWVpbmFuZGVyIHNlaW4gdW5kIHNvLiBLZWluZQpHZXdhbHQgdW5kIHNvLi4uCkRpZSBQb2xpemVpIGhhdHRlIGRpZXNlIEJlcHBlcmxlIGF1Y2ggYXVmIEF1dG9zLi4uIGFscyBpY2ggaXJnZW5kd2FubiBtYWwKYXVmIGVpbmVyIERlbW8gd2FyIHVuZCBlaW5lbiBuZWJlbiBtaXIgbGF1ZmVuZGVuIEJlYW10ZW4gbXVzdGVydGUsIGJsaWViCm1hbiBCbGljayBhdWYgZGVtIEZBSVJTVEFFTkROSVMtQXVma2xlYmVyIGhhZW5nZW4gKExhY2hmbGFzaCBmb2xndGUKdW5nZXdvbGx0KS4KUXVpemZyYWdlOiBXbyBoYXQgZXIgc2VpbmVuIEF1ZmtsZWJlcj8gUmljaHRpZzogQXVmIHNlaW5lbSBTY2hsYWdzdG9jay4KCkpvY2hlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBJbnNlbGNoZW4gKE1vbnRhbnVzLCAyOS4gQXVnIDIwMDEsIDIzOjIyOjU0KToKfiMhIHJuPUFuYXRvbCBydD05OTkxMTM3NTQgcmc9c2VoZXIudXJsYXViCn4jISB0aWQ9OTk3Mzc5MTg3CndpZXNvPyBTdG9wcCBtYWwuIFdpciBoYWJlbiBSZV4xMDAwMCBnZW5hdSBhdWYgZGVpbmUgUnVlY2trZWhyIGlucyBNdWQgZ2VsZWd0CnVuZCBEaXIgZGVuIEVsZm1ldGVyIGdlc2NoZW5rdC4gV2FzIHdpbGx0IGR1IG1laHI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IDEwLUphaHJlc2ZlaWVyIChDYXR3ZWF6bGUsIDMwLiBBdWcgMjAwMSwgMTI6MzI6NTApOgp+IyEgb249UmlrdXMgb3Q9OTk5MTY3MDk0IG9nPXBhcnR5Cn4jISBybj1HYW5kdXIgcnQ9OTk5MTY3MDQ2IHJnPXBhcnR5Cn4jISB0aWQ9OTk5MTYyNzM4Ck1qYW1tLCBsZWNrZXJlIEtpbmRlcnNjaG5pdHplbCA6KQoKUmlrdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IDEwLUphaHJlc2ZlaWVyIChDYXR3ZWF6bGUsIDMwLiBBdWcgMjAwMSwgMTI6MzI6NTEpOgp+IyEgb249R2FuZHVyIG90PTk5OTE2NzI3MCBvZz1wYXJ0eQp+IyEgcm49UmlrdXMgcnQ9OTk5MTY3MDk0IHJnPXBhcnR5Cn4jISB0aWQ9OTk5MTYyNzM4CkF1Y2ggd2VubiBkdSBFTSBiaXN0LCBtaXQgendlaSBFbHRlcm4gd2lsbHN0IGR1IERpY2ggbmljaHQgYW5sZWdlbiA7KQoKR2FuZHVyICgtPiBzY2htYXJybikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IDEwLUphaHJlc2ZlaWVyIChDYXR3ZWF6bGUsIDMwLiBBdWcgMjAwMSwgMTI6MzI6NTIpOgp+IyEgb249UmlrdXMgb3Q9OTk5MTY3MzU4IG9nPXBhcnR5Cn4jISBybj1HYW5kdXIgcnQ9OTk5MTY3MjcwIHJnPXBhcnR5Cn4jISB0aWQ9OTk5MTYyNzM4CmFuIHNpY2ggbmUgZ3V0ZSBJZGVlLCBJaHIgMiBlcmdlYnQgbmVuIFNlbmlvcmVudGVsbGVyLCBkYXMgS2xlaW5lIGRhcwpLaW5kZXJzY2huaXR6ZWwgOikKClJpa3VzIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogMTAtSmFocmVzZmVpZXIgKFhlbmFkYSwgMzAuIEF1ZyAyMDAxLCAxMzoxMzoyOCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9OTk5MTY3NTcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5MTYyNzM4ClhlbmFkYSBmdWVobHQgc2ljaCBlaWdlbnRsaWNoIG5vY2ggbmljaHQgd2llIGVpbiBTZW5pb3IuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiAxMC1KYWhyZXNmZWllciAoWm9vaywgMzAuIEF1ZyAyMDAxLCAxMzoxNDoyMik6Cn4jISBybj1YZW5hZGEgcnQ9OTk5MTcwMDA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5MTYyNzM4ClRqYSwgZGFzIHdhciBlYmVuIFJpa3VzIHVud2lkZXJzdGVobGljaGVyIENoYXJtZS4uLiA6LSkKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbyBub2V0aWcgaGFiZW4gZXMgS2xlcmlrZXIgKFphY2F0dCwgMzAuIEF1ZyAyMDAxLCAxNToyNzoyNSk6CkFwb2xsb25pYSB3aXJmdCBTcGVsbGZpcmUgZWluZSB3dW5kZXJ2b2xsZSBSb3NlIHp1LgpEdSBzY2hsaWVzc3QgS3JhZXV0ZXIsIFN0cmFldWNoZXIsIEJ1ZXNjaGUgdW5kIEJhZXVtZSBpbiBEZWluIEdlYmV0IGVpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoYT8hIChWYXJsYXJpb24sIDMxLiBBdWcgMjAwMSwgMDI6MTM6NTkpOgpWb20gTWFnaXNjaGVuIEF1Z2Ugd2FsbHQgTmViZWwgYXVmLCBhdXMgZGVtIGRpZSBXb3J0ZSB0b2VuZW46CkRlbiAnS2xlcmlrZXIgc2luZCBXZWljaGVpZXInIEJ1dHRvbiBrYW5uc3QgRHUgYW4gdmVyc2NoaWVkZW5lbiBLb2VycGVyc3RlbGxlbgpiZW51dHplbi4KVmVyZ2xpY2hlbiBtaXQgUnVlc3R1bmdlbiBkZXMgZ2xlaWNoZW4gVHlwcyBpc3QgZGllc2UgUnVlc3R1bmcgCmR1cmNoc2Nobml0dGxpY2g7Ckluc2dlc2FtdCBpc3Qgc2llIGViZW5mYWxscyBpbGxlZ2FsLCBsZWljaHQgdW5kIHNlaHIgYmlsbGlnLgpEZXIgJ0tsZXJpa2VyIHNpbmQgV2VpY2hlaWVyJyBCdXR0b24gaXN0IHVuYmVzY2hhZWRpZ3QuCgplYmVuZmFsbHMgaWxsZWdhbD8hCgpWYXJsKiwgZ3J5YmVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthcHV0dHJlcGFyaWVydCAoV2FyaywgMzEuIEF1ZyAyMDAxLCAxMjoxMDo0Nik6CkR1IGdpYnN0IGRpZSBGZXVlcmF4dCBhbiBIdXpydWNrLgpIdXpydWNrIHNhZ3Q6IE9oLCBlaW5lIEZldWVyYXh0IGlzdCBqYSBiZXNjaGFlZGlndC4gSWNoIHdlcmRlIHNpZSBnbGVpY2ggbWFsCkh1enJ1Y2sgc2FndDogcmVwYXJpZXJlbi4gRGFzIGRhdWVydCBuYXR1ZXJsaWNoIGVpbmVuIE1vbWVudC4KSHV6cnVjayBoYWVtbWVydCBhbiBlaW5lciBGZXVlcmF4dCBoZXJ1bS4KSHV6cnVjayBzYWd0OiBTbywgZmVydGlnLCBzaWUgaXN0IG5vY2ggaGVpc3MsIGljaCBsZWcgc2llIG1hbCBoaWVyIGhpbi4KCk5PQ0ggaGVpc3M/IERhIGhhdCBlciBzaWUgd29obCBrYXB1dHRnZXNwaWVsdC4gSWNoIGdsYXViLCBpY2ggZ2VoIG5hZWNoc3RlbnMKd2llZGVyIHp1IFdhbHRlciwgZGVyIHZlcnN0ZWh0IHNlaW4gSGFuZHdlcmsuIDotKQoKLS0gCldhcmsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhcnR5IEAgbGFycyAoVHJ1ZywgIDEuIFNlcCAyMDAxLCAwMTowNToxMSk6Cj4gZmluZGUgd3lybmV5CkR1IHNjaGF1c3QgdGllZiBpbiBkaWUgS3VnZWwsIGxhbmdzYW0gbG9lc3Qgc2ljaCBkZXIgbWlsY2hpZ2UgUmF1Y2ggaW4KaWhyIHVuZCBEdSBzaWVoc3QgOgpFaW4gZHVua2xlciBSYXVtLCBlcmxldWNodGV0IHZvbiBkdW5rbGVtIExpY2h0LCBkYXMgc2ljaCBkZXIgRHVua2VsaGVpdCBuaWNodApzbyBzZWhyIHp1IHdpZGVyc2V0emVuIHNjaGVpbnQsIGluZGVtIGVzIGxldWNodGV0LCBhbHMgZGFzcyBlcyBkZXIgZHVua2Vsc3RlClB1bmt0IGluIGVpbmVyIHdlbmlnZXIgZHVua2xlbiBVbWdlYnVuZyBpc3QuIEltIHNlbHRzYW1lbiBMaWNodCBlcmtlbm5zdCBEdQplaW5lbiB6ZW50cmFsIGF1Zmdlc3RlbGx0ZW4gU2NocmVpYnRpc2NoLCBkZXIgbWl0IERpYWdyYW1tZW4gdW5kIEJ1ZWNoZXJuCmJlZGVja3QgaXN0LiBEaWUgV2FlbmRlIHZlcnNjaHdpbmRlbiBoaW50ZXIgUmVnYWxlbiwgZGllIGdlZnVlbGx0IHNpbmQgbWl0IGluCkxlZGVyIGdlYnVuZGVuZW4sIGR1bmtsZW4gV2FlbHplcm4sIHZvbiBkZW5lbiBnZWhlaW1uaXN2b2xsZSBSdW5lbiBsZXVjaHRlbi4KVG9kLgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgpEZXIgR2Vpc3Qgdm9uIFd5cm5leS4KRGVyIEdlaXN0IHZvbiBQaXRmYWxsLgpEZXIgR2Vpc3Qgdm9uIEdsb2luLgpEZXIgR2Vpc3Qgdm9uIEJyb3RuYWVsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uIChHbG9pbiwgIDEuIFNlcCAyMDAxLCAwMTo1Nzo1OSk6CkJpcmR5IGtvbnplbnRyaWVydCBzaWNoIGF1ZiBpcmdlbmRldHdhcy4KR3dlbmR1bGEgc2FndDogbGFzcyBkaWNoIHZvbiBnbG9pbiBzZWduZW4KQmlyZHkgZmxpZWd0IG5hY2ggU3VlZGVuLgpbVG9kOkxhcnNdIEVpbmUgU3Bpbm5lIGhhdCBnZXJhZGUgQmlyZHkgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWcgbmFjaCBNdXNwZWxoZWltIChHcmltbWJvcm4sICAxLiBTZXAgMjAwMSwgMTI6NTI6NDYpOgp+IyEgcm49RGFya3dpbmcgcnQ9OTk5MzQxNDYyIHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9OTk5MzQxNDYyClNwaWVsdmVyZGVyYmVyLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouIG8gTyAoIFJ1ZGVyYm9vdGUuLi4gKSAoRm9vYmFyLCAgMS4gU2VwIDIwMDEsIDIyOjE1OjE2KToKRHUga29uemVudHJpZXJzdCBEaWNoIGF1ZiBkYXMgUnVkZXJib290IHVuZCBzYW1tZWxzdCBkaWUgRW5lcmdpZW4gZGVzIFlyZCwKZGFubiBzdHJlaWNoc3QgRHUgbWl0IGRlbSBZcmRzdGVpbiB1ZWJlciBkYXMgUnVkZXJib290IHVuZCBlcmhhZWx0c3QgZm9sZ2VuZGUKSW5mb3JtYXRpb246CkR1IGthbm5zdCBuaWNodHMgQmVzb25kZXJlcyBhbiBkZW0gUnVkZXJib290IGZpbmRlbi4KRWluIFJ1ZGVyYm9vdCBzY2hhdXQgRGljaCBmcmFnZW5kIGFuLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAuIG8gTyAoIFJ1ZGVyYm9vdGUuLi4gKSAoQW5hdG9sLCAgMS4gU2VwIDIwMDEsIDIyOjE2OjA2KToKfiMhIHJuPUZvb2JhciBydD05OTkzNzUzMTYgcmc9c2NobWFycm4KfiMhIHRpZD05OTkzNzUzMTYKPiBmaW5nZXIgZm9vYmFyCi4uLgpSYXNzZTogWndlcmcsICBHaWxkZTogS2FlbXBmZXIsICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKLi4uCgpBbGxlcyBrbGFyLiBXYXMgd2FyIGVzIHdvaGwgd2lya2xpY2g/IEVpbiBydWhlbmRlciBXYWxkZWxmPyA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogLiBvIE8gKCBSdWRlcmJvb3RlLi4uICkgKEZvb2JhciwgIDEuIFNlcCAyMDAxLCAyMjoyMDoyMSk6Cn4jISBybj1BbmF0b2wgcnQ9OTk5Mzc1MzY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5Mzc1MzE2Cj50b2V0ZSB3YWxkZWxmCiAgRHUgZ3JlaWZzdCBkZW4gV2FsZGVsZiBtaXQgZGVyIEFldHpheHQgYW4uCiAgRHUgdmVybmljaHRlc3QgZGVuIFdhbGRlbGYuCkRlciBXYWxkZWxmIGZhZWxsdCB0b3QgenUgQm9kZW4uCgpUamEsIEFuYXRvbCBoYXR0ZSBtYWwgd2llZGVyIHJlY2h0IDtvKQoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAuIG8gTyAoIFJ1ZGVyYm9vdGUuLi4gKSAoQW5hdG9sLCAgMS4gU2VwIDIwMDEsIDIyOjI5OjMyKToKfiMhIHJuPUZvb2JhciBydD05OTkzNzU2MjEgcmc9c2NobWFycm4KfiMhIHRpZD05OTkzNzUzMTYKKnN0b2VobiogSmV0enQgZmFlbGx0IGVyIEJhZXVtZSB1bmQgZ2xhdWJ0LCBlciB3YWVyZSBFbGZlbmtpbGxlci4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IC4gbyBPICggUnVkZXJib290ZS4uLiApIChLYXJpYywgIDEuIFNlcCAyMDAxLCAyMjozOTowNCk6Cn4jISBybj1BbmF0b2wgcnQ9OTk5Mzc2MTcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5Mzc1MzE2CkR1IG11c3N0IGFiZXIgenVnZWJlbiwgZGFzcyBkYSBrZWluIGdyb3NzZXIgdW50ZXJzY2hpZWQgaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogLiBvIE8gKCBSdWRlcmJvb3RlLi4uICkgKEFuYXRvbCwgIDEuIFNlcCAyMDAxLCAyMjo0MDoyMCk6Cn4jISBybj1LYXJpYyBydD05OTkzNzY3NDQgcmc9c2NobWFycm4KfiMhIHRpZD05OTkzNzUzMTYKRnVlciBlaW5lbiBad2VyZyBvZmZlbmJhciBuaWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IC4gbyBPICggUnVkZXJib290ZS4uLiApIChWYXJsYXJpb24sICAxLiBTZXAgMjAwMSwgMjI6NDE6MTkpOgp+IyEgcm49QW5hdG9sIHJ0PTk5OTM3NjgyMCByZz1zY2htYXJybgp+IyEgdGlkPTk5OTM3NTMxNgpFaW4gUnVkZXJib290IHRhbnp0IHdpZSBpbiBUcmFuY2UgZHVyY2ggZGllIEdlZ2VuZC4KCm5vY2ggRnJhZ2VuPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogLiBvIE8gKCBSdWRlcmJvb3RlLi4uICkgKE11cGZlbCwgIDEuIFNlcCAyMDAxLCAyMjo0NjozNCk6Cn4jISBybj1WYXJsYXJpb24gcnQ9OTk5Mzc2ODc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5Mzc1MzE2CkphamEgRWxmZW4gdW5kIFJ1ZGVyYm9vdGUgLSBhbGxlcyBkYXNzZWxiZS4uLiBpcmdlbmR3aWUKCi1tdXBmbGUtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFuYXRvbCwgIDIuIFNlcCAyMDAxLCAxNzoyNTo1Nyk6CltBbGxnZW1laW46SWNld2luZCBzaW5ndCA6ICdTY2h1YmkgRHViIERpIER1YiddCltBbGxnZW1laW46SWNld2luZCBzaW5ndCA6ICdTY2h1YmkgRHViIERpIER1YiddCltUb2Q6TGFyc10gRWluIEZlaGx0cml0dCBoYXQgZ2VyYWRlIEljZXdpbmQgdW1nZWJyYWNodC4KCktlaW5lIHdlaXRlcmVuIEZyYWdlbi4uLiA7KQpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IDEwLUphaHJlc2ZlaWVyIChDYXR3ZWF6bGUsICAzLiBTZXAgMjAwMSwgMDg6MDk6NTUpOgp+IyEgb249Wm9vayBvdD05OTk0MjY1OTMgb2c9cGFydHkKfiMhIHJuPUFwb2xsb25pYSBydD05OTk0MjY1NjMgcmc9cGFydHkKfiMhIHRpZD05OTkxNjI3MzgKRGllIHNpbmQgYXVjaCBzZWhyIGxlY2tlciwgZGllIE11ZmZpbnMuLi4gOi0pKQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IDEwLUphaHJlc2ZlaWVyIChDYXR3ZWF6bGUsICAzLiBTZXAgMjAwMSwgMDg6MDk6NTkpOgp+IyEgb249Um9jaHVzIG90PTk5OTQyNjY2MyBvZz1wYXJ0eQp+IyEgcm49QXBvbGxvbmlhIHJ0PTk5OTQyNjU2MyByZz1wYXJ0eQp+IyEgdGlkPTk5OTE2MjczOApJY2ggaGVsZmUgZGFubiBhdWNoIGJlaW0gQmFja2VuIDotKQoKICBSb2NodXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IDEwLUphaHJlc2ZlaWVyIChDYXR3ZWF6bGUsICAzLiBTZXAgMjAwMSwgMDg6MTA6MDApOgp+IyEgb249Wm9vayBvdD05OTk0MjY3MTkgb2c9cGFydHkKfiMhIHJuPVJvY2h1cyBydD05OTk0MjY2NjMgcmc9cGFydHkKfiMhIHRpZD05OTkxNjI3MzgKSGFzdCBEdSBkYXMgbGV0enRlIG1hbCBhdWNoIHNjaG9uIG1pdGdlaG9sZmVuPwoKWm9vayBmYW5kIHdlbmlnIFRvZGVzZmFsbGVuIGluIGRlbiBNdWZmaW5zLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogMTAtSmFocmVzZmVpZXIgKENhdHdlYXpsZSwgIDMuIFNlcCAyMDAxLCAwODoxMDowMSk6Cn4jISBvbj1Pcmt0b2V0ZXIgb3Q9OTk5NDI3NjA3IG9nPXBhcnR5Cn4jISBybj1Sb2NodXMgcnQ9OTk5NDI2NjYzIHJnPXBhcnR5Cn4jISB0aWQ9OTk5MTYyNzM4CkljaCBoZWxmIGRhbm4gYXVjaCBiZWltIEVzc2VuIDotKQoKICBPcmtULiAoTXVmZmludmVybmljaHRlciBlbiBncm9zKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogMTAtSmFocmVzZmVpZXIgKENhdHdlYXpsZSwgIDMuIFNlcCAyMDAxLCAwODoxMDowMik6Cn4jISBvbj1Hbm9tZSBvdD05OTk0NTA4NzMgb2c9cGFydHkKfiMhIHJuPVJvY2h1cyBydD05OTk0MjY2NjMgcmc9cGFydHkKfiMhIHRpZD05OTkxNjI3MzgKYWJlciBsYXNzIGRlbiBydW0genVoYXVzZSwgcm9jaHVzLi4uCjxIaWNrIT4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogMTAtSmFocmVzZmVpZXIgKENhdHdlYXpsZSwgIDMuIFNlcCAyMDAxLCAwODoxMDowMyk6Cn4jISBvbj1ab29rIG90PTk5OTQ2ODQ0NCBvZz1wYXJ0eQp+IyEgcm49R25vbWUgcnQ9OTk5NDUwODczIHJnPXBhcnR5Cn4jISB0aWQ9OTk5MTYyNzM4CkFjaCBqYS4uLiBSb2NodXMgdW5kIEt1Y2hlbiBtaXQgUnVtIG9kZXIgd2llIHdhciBkYXM/IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IERhcyBsaWViZSBCZXRlbi4gKEFwb2xsb25pYSwgIDMuIFNlcCAyMDAxLCAyMjo0Mjo0NSk6Cn4jISBybj1Ob25uZSBydD05OTk1NDUwODAgcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTk5OTUzMzk4MQpXZWxjaGUgSGludGVybiBhbnN0ZWhlbj8/PyBIYXQgTSogZGllIFNhY2hlIG1pdCBkZW0gRnVyemZsdWNoIHVuZCBkZXIKYnJlbm5lbmRlbiBIb3NlIHNjaG9uIGVpbmdlYmF1dD8/PwoKQXBvKgphbiBOb25uZXMgVHlwb3MgendhciBnZXdvZWhudCwgYWJlciB0cm90emRlbSBncmluc2VuZCA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlciBiaWV0ZXQgd2VtPyAoWmVwaHlyLCAgMy4gU2VwIDIwMDEsIDIyOjU4OjU3KToKPiB2ZXJrYXVmZSBhbGxlcyBhdXMgYmV1dGVsIDEKRWluZSBFaXNrZXVsZTogRGVyIEhhZW5kbGVyIGJpZXRldCBEaXIgYWJlciBudXIgMTkgR29sZHN0dWVja2UgZGFmdWVyLgpFaW4gRWlzc2Nod2VydDogRGVyIEhhZW5kbGVyIGJpZXRldCBEaXIgYWJlciBudXIgMTkgR29sZHN0dWVja2UgZGFmdWVyLgpFaW4gRWlzc2Nod2VydDogRGVyIEhhZW5kbGVyIGJpZXRldCBEaXIgYWJlciBudXIgMTkgR29sZHN0dWVja2UgZGFmdWVyLgpFaW4gSGFlbmRsZXIgc2FndDogSG1tbSwgRHUgaGFzdCBhYmVyIG5pY2h0IGJlc29uZGVycyB2aWVsIHp1IGJpZXRlbi4uLgoKQzQsIGdydW1tZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGl2ZSB2b20gUGluZzogKEFuYXRvbCwgIDMuIFNlcCAyMDAxLCAyMzoxOToyOCk6Ci4uLgo2NCBieXRlcyBmcm9tIDE5NC45NS4xNzAuMjA1OiBpY21wX3NlcT0xNTYgdHRsPTI0MiB0aW1lPS0xNTkxNTk4Li0yOTQgbXMKLi4uCgoqc3RhdW4qIDopCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExpdmUgdm9tIFBpbmc6IChBbmF0b2wsICAzLiBTZXAgMjAwMSwgMjM6MjY6MDMpOgp+IyEgcm49QW5hdG9sIHJ0PTk5OTU1MTk2OCByZz1zY2htYXJybgp+IyEgdGlkPTk5OTU1MTk2OAotLS0gbWcubXVkLmRlIHBpbmcgc3RhdGlzdGljcyAtLS0KNjA0IHBhY2tldHMgdHJhbnNtaXR0ZWQsIDYwMyBwYWNrZXRzIHJlY2VpdmVkLCAwJSBwYWNrZXQgbG9zcwpyb3VuZC10cmlwIG1pbi9hdmcvbWF4ID0gLTE1OTE1OTguLTMyOC8tMTQzMjIuLTMwLzIxMDAuMDI5IG1zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUVEIgKEdub21lLCAgNC4gU2VwIDIwMDEsIDAwOjM1OjEyKToKW2xpZXMgdG9kZXN0YWdlYnVjaF0KLi4uCiAgIDE3OC4gU29uLCAxOS4gQXVnIDIwMDEsIDE5OjQyOjI2OgogICBTY2hhZGUsIGRhcyBGZW5zdGVyc3BydW5nIGhhdHRlIGljaCBzY2hvbiBhdWYgZGVyIFNjaHdlbGxlIGdlaGFidC4KLi4uCgphaGEsIHN0aW1tdC4gaWNoIGVyaW5uZXIgbWljaDogZGFzIGZlbnN0ZXJzcHJ1bmcgd2FyIHJlY2h0IGhlZnRpZyBtaXQKdmllbGVuIHNwZWxscyB1bmQgbmVtIHZlcmdpZnRlLWZlYXR1cmUuIGRlciBraWxsIGZlaGx0IG1pciBpbW1lciBub2NoLiA6KQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUVEIgKFNwZWxsZmlyZSwgIDQuIFNlcCAyMDAxLCAwMToxMToyNyk6Cn4jISBybj1Hbm9tZSBydD05OTk1NTY1MTIgcmc9c2NobWFycm4KfiMhIHRpZD05OTk1NTY1MTIKQXVjaCBuZXR0OgogICAzNTQuIEZyZSwgMTAuIEF1ZyAyMDAxLCAyMToxMToyMDoKICAgVmVyZGFtbXQsIHdpZSBvZnQgaWNoIHdvaGwgbm9jaCBhbiBkZW0gc2NobGltbWUgRXJmcmllcnVuZyBzdGVyYmVuIG11c3M/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRUQiAoVmFybGFyaW9uLCAgNC4gU2VwIDIwMDEsIDAxOjEzOjQzKToKfiMhIHJuPVNwZWxsZmlyZSBydD05OTk1NTg2ODcgcmc9c2NobWFycm4KfiMhIHRpZD05OTk1NTY1MTIKICAgMTA0LiBNb24sIDE0LiBNYWkgMjAwMSwgMTI6MTU6Mjc6CiAgIFB1ayAtIGRhcyBFbmRlIG1laW5lcyBrYWVyZ2xpY2hlbiBTcGllbGVyLURhc2VpbnMgKmhldWwqLgoKICAgWy4uLl0KCiAgIDEwOC4gRG9uLCAxNC4gSnVuIDIwMDEsIDE5OjI4OjMxOgogICBLbGFyLCBiZWkgZGVtIE1lc2lyaWkgbXVzc3RlIGphIHVuYmVkaW5ndCBlaW4gQm9pbmctUmVzZXQga29tbWVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFRUQiAoU3BlbGxmaXJlLCAgNC4gU2VwIDIwMDEsIDAxOjE1OjIzKToKfiMhIHJuPVZhcmxhcmlvbiBydD05OTk1NTg4MjMgcmc9c2NobWFycm4KfiMhIHRpZD05OTk1NTY1MTIKICAgMjk0LiBNaXQsIDMxLiBNYWkgMjAwMCwgMDA6MDc6MDE6CiAgIEF1Y2ggaW0geC10ZW4gQW5sYXVmIGhhYmUgaWNoIGRlbiBKZW1hbmQgZGFtYWxzIG5pY2h0IGdlc2NoYWZmdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRUQiAoRm9vYmFyLCAgNC4gU2VwIDIwMDEsIDEwOjMzOjQ3KToKfiMhIHJuPVNwZWxsZmlyZSBydD05OTk1NTg5MjMgcmc9c2NobWFycm4KfiMhIHRpZD05OTk1NTY1MTIKR2FueiBzY2hvZW4gcGVpbmxpY2gsIGRlciBzdGVodCBkb2NoIGltIFBvbGFyYmlya2Vud2FsZCwgb2RlciBuaWNodD8gO28pCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFQtT25saW5lIEZsYXQgUmFldHNlbC4uLiA6KSAoQXBvbGxvbmlhLCAgNC4gU2VwIDIwMDEsIDExOjAwOjQzKToKfiMhIHJuPUFuYXRvbCBydD05OTk1OTM5NjEgcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTk5OTU1MTcxMApUb2xsY2hlbiwgZXIgaXN0IFp3ZXJnLiBEaWUgc2luZCBudW4gbWFsIGJsb3NzIHp1bSBGcmVzc2VuIGd1dCA7bykKCkFwbyoKZGllIGRhcyBtaXQgZGVyIE1QQSBhdWNoIG5vY2ggbmljaHQgcmljaHRpZyBnZWxlcm50IGhhdCwgc292aWVsIHp1bSBUaGVtYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFRUQiAoUGl0ZmFsbCwgIDQuIFNlcCAyMDAxLCAxMjoyMzo1Nyk6Cn4jISBybj1Gb29iYXIgcnQ9OTk5NTkyNDI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5NTU2NTEyCmljaCBmaW5kIG1laW4gdHRiIGphIHZpZWwgYmVzc2VyCmxpZXMgdG9kZXN0YWdlYnVjaCAtLT4gICAgRVJST1I6IChzKXByaW50ZigpOiBCVUZGX1NJWkUgb3ZlcmZsb3dlZC4uLgoKcGl0KiAtZ3JpbnNlbmQtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTYXBoaW5hcyBXb2hsdGF0ZW4gKEJ1ZGRoYSwgIDQuIFNlcCAyMDAxLCAxNjo0Njo0Myk6CkR1IGJlZ2lubnN0IGluYnJ1ZW5zdGlnIHp1IGJldGVuLgpEdSBlcmZsZWhzdCBlaW4gcGFhciBMZWJlbnNwdW5rdGUgdm9uIFNhcGhpbmEuCkVpbmUgaGVycmxpY2hlIFdhZXJtZSBnZWh0IHZvbiBEZWluZW0gQW11bGV0dCBhdXMsIHVuZCBEdSBmdWVobHN0CkRpY2ggcHJpbWEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLbGVpbmUgRWRlbHN0ZWlua3VuZGUuIChBaGFiLCAgNC4gU2VwIDIwMDEsIDIxOjE1OjQ0KToKPiBpZGVudGlmaXppZXJlIG1hdGVyaWFsIHZvbiBzYXBoaXIKCkR1IGtsb3Bmc3QgcHJ1ZWZlbmQgYXVmIGRlcyBld2lnZW4gU2FwaGlycyBPYmVyZmxhZWNoZSBoZXJ1bS4gSW0gR2Vpc3QKZXJ0YXN0ZXN0IER1IGF1Y2ggZGllIHRpZWZlcmVuIFN0cnVrdHVyZW4uLi4KRGVyIGV3aWdlIFNhcGhpciBiZXN0ZWh0IGF1cyB2ZXJnbGVpY2hzd2Vpc2UgYXVlc3NlcnN0IHZpZWwgTWFnaWUgdW5kCmF1ZXNzZXJzdCB2aWVsIFJ1YmluLgoKQWhhYiwgdmVyd2lycnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2xlaW5lIEVkZWxzdGVpbmt1bmRlLiAoV3VyemVsLCAgNC4gU2VwIDIwMDEsIDIyOjQxOjEzKToKfiMhIHJuPUFoYWIgcnQ9OTk5NjMwOTQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5NjMwOTQ0CmNoZW1pc2NoIGdlc2VoZW4gaXN0IGRhcyBudXIgZWluIHVuYmVkZXV0ZW5kZXIgdW50ZXJzY2hpZWQgaW4gZGVyIGpld2VpbGlnZW4KdmVydW5yZWluaWd1bmcuIGFsc28ga2VpbiBncnVuZCB6dXIgYXVmcmVndW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtsZWluZSBFZGVsc3RlaW5rdW5kZS4gKEdsb2luc29uLCAgNC4gU2VwIDIwMDEsIDIyOjQ2OjMwKToKfiMhIHJuPUFoYWIgcnQ9OTk5NjMwOTQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5NjMwOTQ0Cld1cnplbCBoYXQgcmVjaHQuIFVuZCB3ZW5uIER1IHp1IGJsb2VkIGJpc3QgZGVuIFVudGVyc2NoaWVkIHp3aXNjaGVuIFNhcGhpcgp1bmQgUnViaW4genUgZXJrZW5uZW4gaXN0IGRhcyBuaWNodCB3aXJrbGljaCBzY2hsaW1tLiBBbmRlcmUgTGV1dGUgcmljaHRlbgpzaWNoIG51ciBuYWNoIGRlciBGYXJiZSB1bmQgZmFsbGVuIGF1Y2ggYXVmIGRpZSBGcmVzc2UuCgpHbG9pbihzb24pIGdyaW5zdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFsdCwgYWJlciBpbW1lciB3aWVkZXIgZ3V0Li4uIChTcGVsbGZpcmUsICA1LiBTZXAgMjAwMSwgMDM6NTY6MjgpOgp+IyEgcm49R3JpbnVyIHJ0PTk5OTYzNTM3OCByZz13d3cKfiMhIHRpZD05OTk2MzUzNzgKVW5kIGF1c3NlcmRlbSBpc3QgZGVyIG5pY2h0IGV3aWcuLi4uCgpTcGVsbGZpcmUsIHNjaG9uIHNlaXQgbGFuZ2VtIHBsYWVkaWVyZW5kIGZ1ZXIgZGllIFVtYmVudW5uZyBpbgpGYXN0LWdhci1uaWNodC1zby1ld2lnZXIgU2FwaGlyZXxSdWJpbgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGVpbmUgRWRlbHN0ZWlua3VuZGUuIChQYXRyeW4sICA1LiBTZXAgMjAwMSwgMDc6MzM6MzkpOgp+IyEgcm49QWhhYiBydD05OTk2MzA5NDQgcmc9c2NobWFycm4KfiMhIHRpZD05OTk2MzA5NDQKKmZpeGVkKgoKLS0gCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCB0eXBpc2NoIEthZW1wZmVyIChNYWdpcnVzLCAgNS4gU2VwIDIwMDEsIDE0OjIyOjU0KToKRWluIFdlZ2hpZXIgdmVyc3VjaHQsIHNlaW5lbiBLb3BmIGluIGVpbmUgRmV1ZXJ3YWx6ZSBoaW5laW56dXN0b3NzZW4sIHN0b2Vzc3QKc2ljaCBkYWJlaSBhYmVyIG51ciBkZW4gS29wZi4KCk1hZ2lydXMgKHNpY2ggdWViZXIgZ2FyIG5pY2h0cyBtZWhyIHd1bmRlcm5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFydGlrZWwgdHlwaXNjaCBLYWVtcGZlciAoUGF0cnluLCAgNS4gU2VwIDIwMDEsIDE0OjI5OjI5KToKfiMhIHJuPU1hZ2lydXMgcnQ9OTk5NjkyNTc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5NjkyNTc0Cipyb3RmbCoKKmZpeGVkKgoKLS0gCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLbGVpbmUgRWRlbHN0ZWlua3VuZGUuIChUcm95LCAgNS4gU2VwIDIwMDEsIDE1OjMwOjQwKToKfiMhIHJuPVd1cnplbCBydD05OTk2MzYwNzMgcmc9c2NobWFycm4KfiMhIHRpZD05OTk2MzA5NDQKRWNodD8gRWlnZW5hcnRpZy4gSWNoIHdhciBpbW1lciBkYXZvbiBhdXNnZWdhbmdlbiwgZGFzcyBTYXBoaXJlIHp1ciBHYXR0dW5nCmRlciBCZXJ5bGxlLCBtaXRoaW4gYWxzbyB6dSBTbWFyYWdkZW4gdW5kIHNvd2FzIHphZWhsZW4sIFJ1YmluZSBoaW5nZWdlbgppcmdlbmR3byBhbmRlcnMgbGFnZW4uLi4gU28ga2FubiBtYW4gc2ljaCB0YWV1c2NoZW4uCgpUcm95CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpiZXNjaGVpZGVuZSBLbGVyaWtlciAuLi4gKERhcmt3aW5nLCAgNS4gU2VwIDIwMDEsIDE2OjM3OjM1KToKQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogcGZ1aS4gYmVzdGltbXQgb2huZSBhYndlcnR1bmcuIG51IGhhdXQgbWFuIGRhIG5pY2ggCkJyb3RuYWVsIHRlaWx0IERpciBtaXQ6IG1hbCBtZWhyIGF0b20gZGEKCkRhcmt3aW5nLCBlaW4gd2VuaWcgYXVzIGRlbSBadXNhbW1lbmhhbmcgcmVpc3NlbmQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEtsZWluZSBFZGVsc3RlaW5rdW5kZS4gKEdsb2luc29uLCAgNS4gU2VwIDIwMDEsIDE5OjIzOjIxKToKfiMhIHJuPVRyb3kgcnQ9OTk5Njk2NjQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5NjMwOTQ0ClJ1YmluL1NhcGhpcjogS29ydW5kZSAoT3hpZGtsYXNzZSksIEFsMk8zLCBSdWJpbiArPSBlaW4gd2VuaWcgQ2hyb21kcmVjawpCZXJ5bGxlIHNpbmQgQmUzQWwyKFNpTzMpNiAtIFNpbGlrYXRlIHdpZSBTbWFyYWdkZSBvZGVyIEFxdW1hcmluZS4KCkdsb2luKHNvbiksIGhhdCAnbmVuIExpbmsgdW5kIGVpbmVuIEdlb2xvZ2VuIHp1bSBWYXRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGJlc2NoZWlkZW5lIEtsZXJpa2VyIC4uLiAoUGl0ZmFsbCwgIDYuIFNlcCAyMDAxLCAwNDoxOToxMSk6Cn4jISBybj1EYXJrd2luZyBydD05OTk3MDA2NTUgcmc9c2NobWFycm4KfiMhIHRpZD05OTk3MDA2NTUKRGVpbiBGcmV1bmQgQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogdmVybmljaHRldD8gd2llIGxhbmd3ZWlsaWcuLi4gaWNoIHF1YWVsCkRlaW4gRnJldW5kIEJyb3RuYWVsIHRlaWx0IERpciBtaXQ6IGxpZWJlciBtZWluZSBnZWduZXIgZWluIHdlbmlnLi4uCgp2aWVsbGVpY2h0IGJlc3Nlcm4gc2llIHNpY2ggamEgbm9jaAoKcGl0KiAtaG9mZm51bmdzbG9zZXIgb3B0aW1pc3QtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBLbGVpbmUgRWRlbHN0ZWlua3VuZGUuIChMaWFyYSwgIDYuIFNlcCAyMDAxLCAxMzozNToxOSk6Cn4jISBybj1HbG9pbnNvbiBydD05OTk3MTA2MDEgcmc9c2NobWFycm4KfiMhIHRpZD05OTk2MzA5NDQKRGFzIG1pdCBkZW4gU3VtbWVuZm9lcm1lbGNoZW4gaW0gRWRpdG9yIHVlYmVuIHdpciBhYmVyIG5vY2htYWwuICpHKiBIYWV0dGVzdAp3ZW5pZ3N0ZW5zIHRpZWZzdGVsbGVuIGtvZW5uZW4uIDstKQpaWkxCCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBLbGVpbmUgRWRlbHN0ZWlua3VuZGUuIChHbG9pbnNvbiwgIDYuIFNlcCAyMDAxLCAxNDozNjowOCk6Cn4jISBybj1MaWFyYSBydD05OTk3NzYxMTkgcmc9c2NobWFycm4KfiMhIHRpZD05OTk2MzA5NDQKRGFubiB3YWVyZW4gZGFzIHp1dmllbCBaZWlsZW4gZnVlciBTY2htYXJybiBnZXdvcmRlbi4KCkdsb2luKHNvbiksIG5vdG9yaXNjaCBmYXVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTEEgKEZvb2JhciwgIDYuIFNlcCAyMDAxLCAxNzo0OTo0Nyk6CkJyb3RuYWVsIHd1c2VsdCBoZXJlaW4uCkJyb3RuYWVsIHd1c2VsdCBhdWYgZGllIExpY2h0dW5nLgpbVG9kOkxhcnNdIEVpbmUgc2NoZXVzc2xpY2hlIGFsdGUgSGV4ZSBoYXQgZ2VyYWRlIEJyb3RuYWVsIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBzY2hldXNzbGljaGUgYWx0ZSBIZXhlXSBIYXN0IER1IERpY2ggYXVjaCBnZXdhc2NoZW4sIEJyb3RuYWVsPyBJY2gKW1RvZDpFaW5lIHNjaGV1c3NsaWNoZSBhbHRlIEhleGVdIGhhc3NlIERyZWNrIGluIGRlciBTdXBwZS4gICAgICAgICAgICAgICAgICAgCgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYXJhdGUgKFZhcmxhcmlvbiwgIDYuIFNlcCAyMDAxLCAyMDoyNzoxNSk6ClJvY2h1cyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEZWVwQmx1ZSBydWZ0OiBLYXJhdGUgYXVmd2VydGVuIQpSb2NodXMgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpWYXJsKiwgc2NobXVuemVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRpdGl3dSBtYWwgd2llZGVyLi4uIChWYXJsYXJpb24sICA3LiBTZXAgMjAwMSwgMDA6MjE6NTEpOgpQaW5nIFBpbmd1aW4gc2FndDogSWNoIGhhZXR0ZSBzbyBnZXJuZSBlaW5lIE11cGZlbCAuLi4KPiBmcmFnZSBwaW5nIG5hY2ggbXVwZmVsClBpbmcgUGluZ3VpbiBzY2hhdXQgRGljaCB2b2xsZXIgSG9mZm51bmcgYW4gdW5kIGZyYWd0OiBIYXN0IER1IGVpbmU/CgpCbG9lZGUgRnJhZ2UhIEFiZXIgbWVpbmVuIE11cGZlbCBrcmllZyBkZXIgZHVtbWUgUGluZ3VpbiBuaWNodCEKClZhcmwqLCBncnVtbWVsbmQgdW5kIGhldXRlIG9obmUgSGVyeiBmdWVyIFRpZXJlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMZXJuZXJmb2xnIChNYWdpcnVzLCAgNy4gU2VwIDIwMDEsIDAyOjExOjU5KToKaWUgRmV1ZXJ3YWx6ZSByb2xsdCBuYWNoIE9zdGVuLgpFaW5lIFN0aWNoZmxhbW1lIGVyd2lzY2h0IERpY2ggdW5kIHZlcnNlbmd0IERlaW5lIEhhYXJlLgogIC4uLi5ub3JtYWwvPz8/Li4uLi4uLi4uIEZldWVyd2FsemUuLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIFB1bHZlcgpEdSBsZXJuc3QgZXR3YXMgYXVzIERlaW5lbSBFcmZvbGcuCgpFcmZvbGcgaXN0IGVpbmUgendlaXNjaG5laWRpZ2UgU2FjaGU/CgpNYWdpcnVzIChhdWYgc29sY2hlIGxpZWJlciBFcmZvbGdlIHZlcnppY2h0ZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG1tLi4uLiAoSHVnYWxmLCAgNy4gU2VwIDIwMDEsIDEwOjQ3OjE0KToKRWluZSBUaXRhbndhbHplIGdsdWVodCB3aWUgaW0gRmllYmVyLCBrYW5uIHNpY2gga2F1bSBub2NoIHJ1ZWhyZW4gdW5kIGhhdCBlaW4Kc2NobWVyenZlcnplcnJ0ZXMgR2VzaWNodC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpTZWx0c2FtZSBXYWx6ZS4KCkh1Z2FsZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGV4ZW4uLi4gKEZvb2JhciwgIDcuIFNlcCAyMDAxLCAxMDo1NDoxMik6ClVuYXNhaSB0ZWlsdCBEaXIgbWl0OiBhYmVyIGljaCBzb2xsdCBuaWNoIGFsbGVpbiBoaW4gZ2VsbD8gOikgWzEwOjQ3XQpVbmFzYWkgdGVpbHQgRGlyIG1pdDogYXVhIGljaCBoYWIgc2llIGdlZnVuZGVuIDooIFsxMDo0OF0KLi4uCltUb2Q6TGFyc10gRWluZSB3aWRlcmxpY2hlIGFsdGUgSGV4ZSBoYXQgZ2VyYWRlIFVuYXNhaSB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgd2lkZXJsaWNoZSBhbHRlIEhleGVdIEpldHp0IGtvbW1zdCBEdSBpbiBkZW4gVG9wZiB1bmQgd2lyc3QgenUgU3VwcGUKW1RvZDpFaW5lIHdpZGVybGljaGUgYWx0ZSBIZXhlXSBnZW1hY2h0LCBVbmFzYWkhCgpCZWlsZWlkLgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGV4ZW4uLi4gKFhlbmFkYSwgIDcuIFNlcCAyMDAxLCAxMDo1ODowMCk6Cn4jISBybj1Gb29iYXIgcnQ9OTk5ODUyODUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5ODUyODUyCmRhIGZlaGx0ZSBkZXIgZXJzdGUgdGVpbCA7KQpEZWluZSBGcmV1bmRpbiBVbmFzYWkgdGVpbHQgRGlyIG1pdDogaGF0IGRpZXNlIGRyZWkgaGV4ZW4gZWlnZW50bGljaCBzY2hvbgpEZWluZSBGcmV1bmRpbiBVbmFzYWkgdGVpbHQgRGlyIG1pdDogamVtYW5kIGdlZnVuZGVuPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGV4ZW4uLi4gKEZvb2JhciwgIDcuIFNlcCAyMDAxLCAxMTowMjozMik6Cn4jISBybj1YZW5hZGEgcnQ9OTk5ODUzMDgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5ODUyODUyCkdlbmF1LCB1bmQgZGFubiBrYW06CkRlaW4gRnJldW5kIFB1ayB0ZWlsdCBEaXIgbWl0OiAtdG9kKjIwIDopClVuYXNhaSB0ZWlsdCBEaXIgbWl0OiB3byBzaW5kIGRlbm4gZGllIG9sbGVuIHd1cnplbGhleGVuPyBbMTA6NDNdClVuYXNhaSB0ZWlsdCBEaXIgbWl0OiBhbHNvIGRpZSBhdXMgZGVyIGZpbnN0ZXJ3YWxka2xpbmlrPyA6KSBbMTA6NDNdClVuYXNhaSB0ZWlsdCBEaXIgbWl0OiBiaXN0IGlkbGU/IFsxMDo0NV0KVW5kIGRhbm4gZm9sZ3RlIGRpZSBXZWJnZXNjaHJlaWJ1bmcsIGRlciBSZXN0IGlzdCBiZWthbm50IDpvKQoKRm9vYmFyIC0gbWl0ZnVlaGxlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6ICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIChMaWFyYSwgIDcuIFNlcCAyMDAxLCAxMjozNDowMik6Cn4jISBybj1Sb25kYSBydD05OTk4MTYwNDEgcmc9dHJlZmZlbgp+IyEgdGlkPTk5OTgwODE2NQpSb25kYWxlaW4sIGRpZSBGb2hsZW4gYmVrb21tZW4gZWluIEJyYW5kemVpY2hlbiAuLi4gZGFtaXQgc2llIHdpc3Nlbiwgd29oaW4Kc2llIGdlaG9lcmVuIG9kZXIgc28uIDstKSkgKEhtLCBlaWdlbnRsaWNoIHdvaGwgZWhlciwgd29oZXIgc2llIGtvbW1lbi4gOykKSGFzdCBEdSBldHdhIG5vY2gga2VpbnM/IDstKQoKWlpMQiwgZ3VnZ3QgUm9uZGFsZWluIGFsbGVybGllYnN0IGFuIHVuZCAqemVuc2llcnR6ZW5zaWVydHplbnNpZXJ0Li4uemVuc2llcnQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiAoRm9vYmFyLCAgNy4gU2VwIDIwMDEsIDEyOjM5OjE5KToKfiMhIHJuPUxpYXJhIHJ0PTk5OTg1ODg0MiByZz1zY2htYXJybgp+IyEgdGlkPTk5OTgwODE2NQpSb25kYSBpc3QgZWluIEZvaGxlbj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiAoVmFybGFyaW9uLCAgNy4gU2VwIDIwMDEsIDEyOjQwOjU2KToKfiMhIHJuPUZvb2JhciBydD05OTk4NTkxNTkgcmc9c2NobWFycm4KfiMhIHRpZD05OTk4MDgxNjUKbm9lLCBpY2ggZ2xhdWIgZWhlciBuaWNodCwgYWJlciBlcyBzY2hhZGV0IG5pY2h0LCBzZWluZW4gYmVzaXR6IHp1IG1hcmtpZXJlbiwKbmljaHQgd2FociwgbGlhcmE/IDspCgpWYXJsKiwgd2Flcm10IHNjaG9ubWFsIGRhcyBCcmFuZHplaWNoZW4gZnVlciBNdXBmZWwgfTotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogKEdsb2luc29uLCAgNy4gU2VwIDIwMDEsIDEyOjQ4OjAzKToKfiMhIHJuPVZhcmxhcmlvbiBydD05OTk4NTkyNTYgcmc9c2NobWFycm4KfiMhIHRpZD05OTk4MDgxNjUKSG0uIEtsYXNzZSBJZGVlLiBFaW4gQnJhbmR6ZWljaGVudGFja2VyLiBGdWVyIExldXRlIGRpZSBzY2huZWxsIHZpZWxlCkJSYW5kemVpY2hlbiB6dSB2ZXJnZWJlbiBoYWJlbi4gRGFzIGhhdCBtaXIgaW4gbWVpbmVyIFNhbW1sdW5nICJJZGVlbiBmdWVyCnNpbm5sb3NlIE9iamVrdGUiIGJpc2hlciBnZWZlaGx0LgoKR2xvaW4oc29uKSwgc2NocmVpYnQgbWFsIHdhcyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogKExpYXJhLCAgNy4gU2VwIDIwMDEsIDEyOjQ4OjA3KToKfiMhIHJuPVZhcmxhcmlvbiBydD05OTk4NTkyNTYgcmc9c2NobWFycm4KfiMhIHRpZD05OTk4MDgxNjUKQWVoLCBkYW1pdCBtYW4gZGFzIGViZW4gbmljaHQgc28gdmVyc3RlaHQsIGhhdHRlIGljaCBkZW4gVGV4dCBtaXQgZGVtIGhlaXNzZW4KRWlzZW4gemVuc2llcnQuIDstKQoKWlpMQiwgaGF0IGVzIG5pY2h0IG5vZXRpZywgaXJnZW5kd2VuIHp1IG1hcmtpZXJlbiB1bmQgaGFlbHQgYXVjaCBuaXggdm9uIHNvd2FzCjotKQoKUC4gUy46IE5laW4sIFJvbmRhIGlzdCBrZWluIEZvaGxlbi4gQWJlciBIZXhjaGVuIGhhbHRlbiB3ZW5pZ3N0ZW5zIHN0aWxsIGJlaW0KU3RyZWljaGVsbi4gKkcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiAoRm9vYmFyLCAgNy4gU2VwIDIwMDEsIDEyOjQ5OjA5KToKfiMhIHJuPUxpYXJhIHJ0PTk5OTg1OTY4NyByZz1zY2htYXJybgp+IyEgdGlkPTk5OTgwODE2NQpTYWcgZGFzIG1hbCBXdXJ6ZWwsIExpYXJhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogKExpYXJhLCAgNy4gU2VwIDIwMDEsIDEyOjQ5OjI1KToKfiMhIHJuPUZvb2JhciBydD05OTk4NTk3NDkgcmc9c2NobWFycm4KfiMhIHRpZD05OTk4MDgxNjUKQWVoLCB3YXM/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiAoRm9vYmFyLCAgNy4gU2VwIDIwMDEsIDEyOjQ5OjQ5KToKfiMhIHJuPUxpYXJhIHJ0PTk5OTg1OTc2NSByZz1zY2htYXJybgp+IyEgdGlkPTk5OTgwODE2NQpEYXMgSGV4ZW4gYmVpbSBTdHJlaWNoZWxuIHN0aWxsaGFsdGVuLgoKSGFiZW4gc2llIG5hZW1saWNoIGlyZ2VuZHdpZSBuaWNodCBnZXRhbiA6bykKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6ICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIChMaWFyYSwgIDcuIFNlcCAyMDAxLCAxMjo1MTowOSk6Cn4jISBybj1Gb29iYXIgcnQ9OTk5ODU5Nzg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5ODA4MTY1ClNlaXQgd2FubiBzdHJlaWNoZWxuIEthZW1wZmVyIGlocmUgR2VnbmVyPwpVbmQgYXVzc2VyZGVtIHNjaHJpZWIgaWNoICdIZXhjaGVuJy4KRGFzIG1hY2h0IGVpbmVuIGdyb3NzZW4gVW50ZXJzY2hpZWQuIDstKQoKWlpMQgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6ICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIChWYXJsYXJpb24sICA3LiBTZXAgMjAwMSwgMTI6NTE6NDMpOgp+IyEgcm49TGlhcmEgcnQ9OTk5ODU5ODY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5ODA4MTY1CmRlciB1bnRlcnNjaGllZCBsaWVndCB3b2hsIGRhcmluLCBkYXNzIGRlaW4gaGV4Y2hlbiBuaWNodCB2b24gd3VyemVsIGdlcHJvZ2d0Cnd1cmRlIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogKEZvb2JhciwgIDcuIFNlcCAyMDAxLCAxMjo1MjowMyk6Cn4jISBybj1MaWFyYSBydD05OTk4NTk4Njkgcmc9c2NobWFycm4KfiMhIHRpZD05OTk4MDgxNjUKTmFqYSwgd2FzIFBpdGZhbGwgbWl0IGRlbSBXZWdoaWVyIGFuc3RlbGx0IGxhZXNzdCBtaXIgbWFuY2hlcyBNYWwgZGllClNjaGFtZXNyb2V0ZSBpbnMgR2VzaWNodCBzdGVpZ2VuLgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogKExpYXJhLCAgNy4gU2VwIDIwMDEsIDEyOjUzOjUxKToKfiMhIHJuPUZvb2JhciBydD05OTk4NTk5MjMgcmc9c2NobWFycm4KfiMhIHRpZD05OTk4MDgxNjUKRm9vYmk/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogKEZvb2JhciwgIDcuIFNlcCAyMDAxLCAxMjo1NDowOCk6Cn4jISBybj1MaWFyYSBydD05OTk4NjAwMzEgcmc9c2NobWFycm4KfiMhIHRpZD05OTk4MDgxNjUKSmE/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogKExpYXJhLCAgNy4gU2VwIDIwMDEsIDEyOjU0OjU2KToKfiMhIHJuPUZvb2JhciBydD05OTk4NjAwNDggcmc9c2NobWFycm4KfiMhIHRpZD05OTk4MDgxNjUKTGFzcyBtaWNoIHJhdGVuLCBEdSBoYXN0IGltIE1vbWVudCBhdWNoIG5peCB3ZWx0YmV3ZWdlbmRlcyB6dSB0dW4gb2RlcgpkcnVlY2tzdCBEaWNoIHZvciBpcmdlbmR3YXMuIChaLiBCLiBBcmJlaXQuKSAqRyoKClpaTEIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiAoRm9vYmFyLCAgNy4gU2VwIDIwMDEsIDEyOjU1OjIyKToKfiMhIHJuPUxpYXJhIHJ0PTk5OTg2MDA5NiByZz1zY2htYXJybgp+IyEgdGlkPTk5OTgwODE2NQpXYWgsIG1laW4gR2V3aXNzZW4uLi4KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6ICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIChWYXJsYXJpb24sICA3LiBTZXAgMjAwMSwgMTI6NTU6MzgpOgp+IyEgcm49Rm9vYmFyIHJ0PTk5OTg2MDEyMiByZz1zY2htYXJybgp+IyEgdGlkPTk5OTgwODE2NQpnZWggZWluZW4gV29scGVydGluZ2VyIGtudWRkZWxuLCBkYXMgaGlsZnQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiAoTGlhcmEsICA3LiBTZXAgMjAwMSwgMTI6NTU6NTIpOgp+IyEgcm49Rm9vYmFyIHJ0PTk5OTg2MDEyMiByZz1zY2htYXJybgp+IyEgdGlkPTk5OTgwODE2NQpOZWUsIGljaCBiaW4ncyBibG9zcywgTGlhcmEuICpsYWVjaGVsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogKEFyaywgIDcuIFNlcCAyMDAxLCAxMzo0MDoxOCk6Cn4jISBybj1HbG9pbnNvbiBydD05OTk4NTk2ODMgcmc9c2NobWFycm4KfiMhIHRpZD05OTk4MDgxNjUKQWxsZSBHbGFkYmFjaGVyIGJyYXVjaGVuIHdvaGwgZWluIEJyYW5kemVpY2hlbiwgb2Rlcj8gTmUsIGRlciB3YXIgZmxhY2guCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIChMaWFyYSwgIDguIFNlcCAyMDAxLCAxMjoyMjo1NCk6Cn4jISBybj1BcmsgcnQ9OTk5ODA4MTY1IHJnPXRyZWZmZW4KfiMhIHRpZD05OTk4MDgxNjUKSGV5LCBEZWluZSBsZXV0ZSBoYWJlbiBkZW4gQmVpZmFsbCB2ZXJnZXNzZW4sIEhlcnIgQXJrIQoKICAgICAgICAgICAgICAgICAgICAgKkFQUExBVURJRVIqCgpEYWJlaSB3YXIgZGFzIGJlc3RpbW10IGVpbmUgdXJsYXVic2dlYnJhZXVudGUsIGtuYWNraWdlIFN0YW1tdGlzY2hhbnNhZ2UgdW5kCkJlaWZhbGwgaXN0IHdvaGwgZGFzIG1pbmRlc3RlIHdhcyBEdSBlcndhcnRlbiBrYW5uc3QuIDstKQoKWlpMQgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiAoQXJrLCAgOC4gU2VwIDIwMDEsIDE2OjA5OjIxKToKfiMhIHJuPUxpYXJhIHJ0PTk5OTk0NDU3NCByZz1zY2htYXJybgp+IyEgdGlkPTk5OTgwODE2NQpIbSwgZGllIEFucmVkZSAiSGVyciIgc3RpbW10IG1pY2ggbmFjaGRlbmtsaWNoLiBXYXMgaGFiIGljaCBmYWxzY2ggZ2VtYWNodD8gWnUKZnJldW5kbGljaD8gWnUgYWx0PyAqc2V1ZnoqClVuZCwgd2VyIHNpbmQgIm1laW5lIiBMZXV0ZT8gU29sbHRlIG5pY2h0IGplZGVyIHdlbGNoZSBoYWJlbj8gU28gd2llIGVpbmVuClp3ZXJnIGltIEdhcnRlbj8KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbGNoZW1pc3Rlbi4uLiAoRm9vYmFyLCAgOC4gU2VwIDIwMDEsIDE2OjU2OjExKToKPmthdWZlIHlyZHN0ZWluZQpMemh5JyBLcm5pdm9zIHNhZ3Q6IEljaCB2ZXJrYXVmZSBudXIgWXJkc3RlaW5lLgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWxjaGVtaXN0ZW4uLi4gKE9ya3RvZXRlciwgIDguIFNlcCAyMDAxLCAxNzoyNTowOSk6Cn4jISBybj1Gb29iYXIgcnQ9OTk5OTYwOTcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5OTYwOTcxCmdpZXIgd2lyZCBiZXN0cmFmdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogKFd1cnplbCwgIDguIFNlcCAyMDAxLCAxOToyMToxMik6Cn4jISBybj1BcmsgcnQ9OTk5OTU4MTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5ODA4MTY1CmR1IHNvbGx0ZXN0IG5pY2h0IHNvIG9mdCBpbSBmaXJtZW5vdXRmaXQga29tbWVuLiBrb2VubnRlIGRhcmFuIGxpZWdlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VyIGZvcnNjaHQsIHZlcmxpZXJ0IChFbGFpbmUsICA4LiBTZXAgMjAwMSwgMTk6MzI6NTApOgpbdW50IGtldHRlbl0KUm9zdGlnZSwgYXJtZGlja2UgS2V0dGVuIGhhZW5nZW4gdm9uIGRlciBEZWNrZSBoZXJhYi4gU2llIHNpbmQgZG9ydCBhbiBPZXNlbgpiZWZlc3RpZ3QgdW5kIGRpZW50ZW4gd29obCBkZXJlaW5zdCBhbHMgRmVzc2VsbiBmdWVyIHdpZGVyc3BlbnN0aWdlIExldXRlLgpbdW50IG9lc2VuXQpBbiBkZW4gT2VzZW4gc2luZCBkaWUgS2V0dGVuIGJlZmVzdGlndC4gClt1bnQgdWViZXJyZXN0ZV0KRGllIGt1ZW1tZXJsaWNoZW4gVWViZXJyZXN0ZSBpaHJlciBzdGVyYmxpY2hlbiBLb2VycGVyIHNpZWhzdCBEdSBpbiBkZW4gRWNrZW4uClt1bnQgZWNrZW5dCkRpZSBSZXN0ZSBkaWVzZXIgYWNoIHNvIHN0ZXJibGljaGVuIEtvZXJwZXIgbGllZ2VuIGluIGRlbiBFY2tlbi4gClt1bnQga25vY2hlbl0KSW4gZGVuIEVja2VuIGxpZWdlbiBudXIgZWluaWdlIEtub2NoZW4uCkhvZmZlbnRsaWNoIGVuZGVzdCBEdSBuaWNodCBlYmVuc28uCltlbmRlIGViZW5zb10KW1NrZWxldHRlOkVsYWluZSB1ZWJlcmdpYnQgZGllIEViZW5lIGFuIERhcmt3aW5nLl0KU3BlaWNoZXJlIEVsYWluZS4KRHUgemllaHN0IGRlbiBhZGFtYW50ZW5lbiBFaGVyaW5nIGF1cy4KRHUgemllaHN0IGRlbiBGdXNzcmluZyBhdXMuCkR1IHppZWhzdCBkZW4gc2Nod2FyemVuIFNpZWdlbHJpbmcgYXVzLgpEdSB6aWVoc3QgZGVuIERyYWNoZW50b2V0ZXItT3JkZW4gYXVzLgpCaXMgYmFsZCEgCkR1IHZlcmxhZXNzdCBkYXMgVGVhbS4KRHUgemllaHN0IGRhcyBQYWFyIEFkYW1hbnRzY2h1aGUgYXVzLgpEdSB6aWVoc3QgRHJhY2hlbmtsYXVlbiBhdXMuCkR1IHppZWhzdCBkaWUgS3Jpc3RhbGxrcm9uZSBhdXMuCkR1IHppZWhzdCBkaWUgYnJlbm5lbmRlIEhvc2UgYXVzLgpEdSB6aWVoc3QgZGVuIFJ1Y2tzYWNrIGF1cy4KRHUgemllaHN0IGRlbiBTY2hhdHRlbiBhdXMuCkR1IHppZWhzdCBkZW4gZHJha29uaXNjaGVuIFdhZmZlbmd1ZXJ0ZWwgYXVzLgpEdSB6aWVoc3QgZGFzIFNjb3JlYW11bGV0dCBhdXMuCkR1IHppZWhzdCBkYXMgUGFhciBFbmdlbHNmbHVlZ2VsIGF1cy4KRHUgemllaHN0IGRpZSBLZXR0ZSBtaXQgU2NoYWVkZWxhbmhhZW5nZXIgYXVzLgpEdSB6aWVoc3QgZGllIEdvbGRrZXR0ZSBhdXMuCkR1IHppZWhzdCBkYXMgQW11bGV0dCBhdXMuCkNsb3NpbmcgZG93bi4KLS0tLSBObyB3b3JsZCAtLS0tCgpBcmdsISA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZXIgZm9yc2NodCwgdmVybGllcnQgKFd1cnplbCwgIDguIFNlcCAyMDAxLCAxOTozNDozNik6Cn4jISBybj1FbGFpbmUgcnQ9OTk5OTcwMzcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5OTcwMzcwCiJlbmRlIiBicmF1Y2h0IGtlaW5lIGFyZ3VtZW50ZSwgZGFzIGZ1bmt0aW9uaWVydCBlaW53YW5kZnJlaSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogKFJvbmRhLCAgOS4gU2VwIDIwMDEsIDAyOjUzOjUzKToKfiMhIHJuPUxpYXJhIHJ0PTk5OTg1ODg0MiByZz1zY2htYXJybgp+IyEgdGlkPTk5OTgwODE2NQpBZWhtLiBBbHNvIEZvaGxlbiBiZWtvbW1lbiBCcmFuZHplaWNoZW4sIGRhbWl0IG1hbiB3ZWlzcywgd28gc2llIGhpbmdlaG9lcmVuCm9kZXIgc28uCk1hY2hlbiBkaWUgYmVpIEV1Y2ggaW4gZGVyIEdlZ2VuZCBuaWNodCBTYXVlcmJyYXRlbiBhdXMgUGZlcmRlbiBvZGVyIHNvPyBIaWxmdAplaW5lbSBkYW5uIGRhcyBCcmFuZHplaWNoZW4gaXJnZW5kd2llIGJlaW0gaWRlbnRpZml6aWVyZW4gdm9uIGRlbSwgd2FzIG1hbiBkYQphdWZtIFRlbGxlciBoYXQgb2RlciBzbz8KClJvbmRhICpuaWNodCBhdXNtIFJoZWlubGFuZC4uLiB1bmQgZGEgd29obCBhdWNoIGthdW0gaGlucGFzc2VuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6ICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIChMaWFyYSwgIDkuIFNlcCAyMDAxLCAxMjozMToxOSk6Cn4jISBybj1Sb25kYSBydD05OTk5OTY4MzMgcmc9c2NobWFycm4KfiMhIHRpZD05OTk4MDgxNjUKRm9obGVuIC0+IEJyYW5kemVpY2hlbjogRWlnZW50dW1zLSBvZGVyIFp1Y2h0a2VubnplaWNobnVuZwpVbmQ6IFNwcmljaHQgbmljaHQgZnVlciBEaWNoLCB3ZW5uIER1IHdpcmtsaWNoIGdsYXVic3QsIER1IHBhc3N0IGhpZXIgbmljaHQKaGluLgoKWlpMQiwgdmVyd3VuZGVydCwgZnVlaGx0IHNpY2ggd29obCBpbSBSaGVpbmxhbmQgLi4uIG5hamEsIHdvaGVyIHNvbGwgZWluCldlc3RmYWxlIGF1Y2ggd2lzc2VuIHdhcyBndXQgaXN0IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogKFJvbmRhLCAgOS4gU2VwIDIwMDEsIDE4OjU5OjE4KToKfiMhIHJuPUxpYXJhIHJ0PTEwMDAwMzE0Nzkgcmc9c2NobWFycm4KfiMhIHRpZD05OTk4MDgxNjUKSGVqLCBpY2ggd2Vpc3Mgd29mdWVyIG5lbiBCcmFuZHplaWNoZW4gaXN0IDstKSAodHJvdHpkZW06IGFybWVyIEdhdWwsIGRhcyBtdXNzCmZ1cmNodGJhciB3ZWggdHVuIHVuZCBoZWZ0aWcgc3Rpbmtlbi4uLikKVW5kIGF1c3NlcmRlbSBiaW4gaWNoIFdlbGZlLCBuaXggV2VzdGZhbGUgOy0pCgpSb25kYSAqaGV1dGUgbWFsIHByYWV6aXNlKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogKEFuYWNyaW9uLCAgOS4gU2VwIDIwMDEsIDE5OjUzOjQ2KToKfiMhIHJuPVJvbmRhIHJ0PTEwMDAwNTQ3NTggcmc9c2NobWFycm4KfiMhIHRpZD05OTk4MDgxNjUKSWNoIGRhY2h0ZSwgZGllIFdlbGZlbiB3YWVyZW4gZWluIEZhbWlsaWVubmFtZSwga2VpbmUgT3J0c2FuZ2FiZSAuLi4KCmFuYWMqIC0gaG9iYnloaXN0b3Jpa2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUYWwgZGVyIEx1cGluZW4uLi4uIDopIChBbmF0b2wsICA5LiBTZXAgMjAwMSwgMjA6NDI6NTUpOgpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KW1NlaGVyOkVsZGFyb25dIGp1aHUKW1NlaGVyOlVuYXNhaV0gd2VpYSA6KQpbU2VoZXI6QW5vcmlzXSBqZXR6dCB3aXJkcyBodWVic2NoIDspCltTZWhlcjpBbmF0b2wgaGF0IG5vY2ggZWluIHBhYXIgWndlaXRpZXMsIGRpZSBrZWluZSBSdWVzdHVuZyBoYWJlbiA7KV0KW1NlaGVyOlVuYXNhaV0gbm9lIGVoZXIgbmljaHQgOikKW1NlaGVyOlRpYW1ha10gc28sIGpldHp0IGlzdCBSdWhlLiBFbmRndWVsdGlnIF06LT4KW1NlaGVyOkdub21lXSBvY2guLi4gOi0vCltTZWhlcjpBaGFiXSBodWNoPyBoYXN0c2UgZ2xlaWNoIGdhbnogYWJnZWtsZW1tdD8gOykKRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuCltTZWhlcjpFbGRhcm9uIGZyYWd0IHNpY2gsIHdpZSBkYXMgIkVuZGd1ZWx0aWciIHZlcnN0ZWhlbiBzb2xsLl0KW1NlaGVyOkZhbnRhZ2hpcm9dIGlzIGpldHogdGFudGNoZW4gYWJnZWhhZW5ndCA/CltTZWhlcjpUaWFtYWsgYXJnbHRdCltTZWhlcjpBbmF0b2xdIE11YWhhaGEgOykKW1NlaGVyOkdub21lXSAqbGFjaCoKW1NlaGVyOkVsZGFyb24gbGFjaHQuXQpbU2VoZXI6QWhhYl0gYWNoPwpbU2VoZXI6RWxlbmRpbF0gUmVzcGVrdCA6KQpbQWxsZ2VtZWluOkFoYWJdIHNvc28uCltTZWhlcjpVbmFzYWkga2ljaGVydC5dCltTZWhlcjpMaWFyYV0gd293CgouLi4uCgpBbmF0b2wgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6ICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIChXdXJ6ZWwsICA5LiBTZXAgMjAwMSwgMjE6MTY6NTcpOgp+IyEgcm49Um9uZGEgcnQ9OTk5OTk2ODMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5ODA4MTY1CmZ1ZXIgc2F1ZXJicmF0ZW4gbmltbXQgbWFuICh3ZW5uIGVzIGRlbm4gZWluIHJpY2h0aWdlciBzZWluIHNvbGwpIGZsZWlzY2gKdm9uIHBmZXJkZW4uIHNvd2VpdCByaWNodGlnLiBhbGxlcmRpbmdzIG5pbW10IG1hbiBkYSBzY2hsYWNodHBmZXJkZSwgdW5kIGRpZQpoYWJlbiBub3JtYWxlcndlaXNlIGtlaW4gYnJhbmR6ZWljaGVuLiBzb25zdCB3YWVyZSBkZXIgc2F1ZXJicmF0ZW4gd29obCBrYXVtCnNvIHBvcHVsYWVyIGdld29yZGVuLCBzb25kZXJuIGVpbiB6aWVtbGljaCBlbGl0YWVyZXMgKHdlaWwgdGV1cmVzKSBnZXJpY2h0LgpicmFuZHplaWNoZW4gYmVrb21tZW4gcGZlcmRlLCBkaWUgaW5zIHp1Y2h0YnVjaCBlaW5nZXRyYWdlbiB3ZXJkZW4uIHVuZCBkaWVzZQplaW50cmFndW5nIGhhZW5ndCBvZnRtYWxzIGVpbmUgbnVsbCBhbiBkZW4gcHJlaXMgaGludGVuIGRyYW4uCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBkZW5uIGpldHp0PyBhdWYgb2RlciB6dT8gKENvcmFrLCAgOS4gU2VwIDIwMDEsIDIxOjQ4OjMwKToKc2NobGllc3NlIHR1ZXIgYXVmCkR1IHNjaGxpZXNzdCBkaWUgVHVlcmUgYXVmIHVuZCBvZWZmbmVzdCBzaWUuCm9zdGVuCkR1IHJlbm5zdCBnZWdlbiBlaW5lIHZlcnNjaGxvc3NlbmUgVHVlci4gQk9JTkchCgphaGphLi4uIDspCkNvcmFrLCB2ZXJ3aXJydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcyBkZW5uIGpldHp0PyBhdWYgb2RlciB6dT8gKFd1cnplbCwgIDkuIFNlcCAyMDAxLCAyMTo1OToxNCk6Cn4jISBybj1Db3JhayBydD0xMDAwMDY0OTEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMDA2NDkxMAp3aWV2aWVsZSB0dWVyZW4gZ2lidCBlcyBkb3J0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXYXMgZGVubiBqZXR6dD8gYXVmIG9kZXIgenU/IChWYXJsYXJpb24sICA5LiBTZXAgMjAwMSwgMjI6MDA6MDkpOgp+IyEgcm49V3VyemVsIHJ0PTEwMDAwNjU1NTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAwMDY0OTEwCnZpZWxsZWljaHQgbWVociwgYWxzIGVpbiBrYWVtcGZlciB6YWVobGVuIGthbm4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhcyBkZW5uIGpldHp0PyBhdWYgb2RlciB6dT8gKENvcmFrLCAgOS4gU2VwIDIwMDEsIDIzOjU1OjQ4KToKfiMhIHJuPVd1cnplbCBydD0xMDAwMDY1NTU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMDA2NDkxMAp1bSBnZW5hdSB6dSBzZWluIDMKdW5kIGRhaGludGVyIG5vY2ggbmUgd2FuZCwgaGF0IGVpbmVyIG5vY2ggZXR3YXMgZHluYW1pdCB1ZWJlcj8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdhcyBkZW5uIGpldHp0PyBhdWYgb2RlciB6dT8gKE9ya3RvZXRlciwgMTAuIFNlcCAyMDAxLCAwMDowOToxNik6Cn4jISBybj1Db3JhayBydD0xMDAwMDcyNTQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMDA2NDkxMApOb3JtYWx3ZWx0Li4uIHdpZSBsYW5nd2VpbGlnLi4uLiA6KQoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktlaW4gS29tbWVudGFyIChMaWFyYSwgMTAuIFNlcCAyMDAxLCAxNDozODo1Nik6CgpEZWluIEZyZXVuZCBNb3Jnb3RoIGphbW1lcnQgaW4gZGVyIEZlcm5lLgoKWlpMQgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGVoZSAoTGlhcmEsIDEwLiBTZXAgMjAwMSwgMTQ6NDI6NTkpOgoKRGVpbiBGcmV1bmQgTW9yZ290aCB0ZWlsdCBEaXIgbWl0OiBJQ0ggQklOIE5JQ0hUIFNVRVNTICEKClpaTEIsIHNjaG1pbHp0IGRhaGluIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhlaGUgKE1vcmdvdGgsIDEwLiBTZXAgMjAwMSwgMTQ6NDM6NDMpOgp+IyEgcm49TGlhcmEgcnQ9MTAwMDEyNTc3OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDAxMjU3NzkKQVJHTCwgbmljaHQgbWFsIGRhcyBsZXR6dGUgYmlzY2hlbiBXdWVyZGUgd2lyZCBlaW5lbSBoaWVyIGdlbGFzc2VuLgoKTSogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGVoZSAoTGlhcmEsIDEwLiBTZXAgMjAwMSwgMTQ6NDQ6NDEpOgp+IyEgcm49TW9yZ290aCBydD0xMDAwMTI1ODIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMDEyNTc3OQpLbnVycnN0ZSBub2NobWEgZnVlciBtaWNoPwoKWlpMQiwgZmFlbGx0IGdsZWljaCB2b3IgRW50enVlY2tlbiB2b20gU3R1aGwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGVoZSAoR2xvaW5zb24sIDEwLiBTZXAgMjAwMSwgMTQ6NDY6NDkpOgp+IyEgcm49TW9yZ290aCBydD0xMDAwMTI1ODIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMDEyNTc3OQpTb2xhbmdlIER1IG5vY2ggZ2VudWcgV3VlcnplIGZ1ZXIgTGlhcmEgaGFzdCwgc2llIERpY2ggYWxzbyBrbmFja2lnIGZpbmRldCAuLi4KCkdsb2luKHNvbikgZ3JpbnN0IC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogKEhyZWlkbWFyLCAxMC4gU2VwIDIwMDEsIDE4OjAyOjE0KToKfiMhIHJuPVd1cnplbCBydD0xMDAwMDYzMDE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5ODA4MTY1Ck5hamEsIGF1Y2ggZGllIFplaXRlbiBoYWJlbiBzaWNoIGdlYWVuZGVydC4gTGF1dCBuZXVlc3RlciBWZXJvcmRudW5nIG11c3MKSkVERVMgUGZlcmQgZWluZW4gRXF1aWRlbnBhc3MgYmVrb21tZW4sIGQuaC4gZXMgbXVzcyBlaW5kZXV0aWcgZ2VrbGFlcnQgc2VpbiwKb2IgZGFzIFRpZXIgZnVlciBkaWUgU2NobGFjaHR1bmcgdmVyd2VuZGV0IHdlcmRlbiBzb2xsIG9kZXIgbmljaHQuIERhbWl0IHNvCmVpbiBQYXNzIGF1c2dlc3RlbGx0IHdlcmRlbiBrYW5uLCBtdXNzIGVzIGVpbmRldXRpZyBpZGVudGlmaXppZXJ0IHdlcmRlbgprb2VubmVuLiBNYW5jaG1hbCBiZWtvbW10IGVzIGRlc2hhbGIgZWluIEJyYW5kemVpY2hlbi4uLmF1Y2ggd2VubiBlcyBkYW5uCnNjaG5lbGwgaW4gZGllIFd1cnN0IGtvbW1lbiBzb2xsLi4uCkhyZWlkbWFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiAoV3VyemVsLCAxMC4gU2VwIDIwMDEsIDE4OjA1OjQ5KToKfiMhIHJuPUhyZWlkbWFyIHJ0PTEwMDAxMzc3MzQgcmc9c2NobWFycm4KfiMhIHRpZD05OTk4MDgxNjUKd2VuIGludGVyZXNzaWVyZW4gc29sY2hlIHZlcm9yZG51bmdlbj8gbWVpbmUgcGZlcmRlICh6d2VpIGFuIGRlciB6YWhsKSBoYWJlbgprZWluZSBlcXVpZGVucGFlc3NlLCBkaWUgcGZlcmRlIG1laW5lciBiZWthbm50ZW4gbmljaHQsIHVuZCBhdWNoIHNvbnN0IGthdW0KZWluIHBmZXJkIGRhcyBpY2gga2VubmUuIGhhdCBkYSBkZXIgaGVpbGlnZSBidWVyb2tyYXRpdXMgd2llZGVyIHp1Z2VzY2hsYWdlbgp1bmQgZWluZSBuZXVlIGFiem9ja21vZWdsaWNoa2VpdCBnZWZ1bmRlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6ICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIChIcmVpZG1hciwgMTAuIFNlcCAyMDAxLCAxODoxMTo1Nik6Cn4jISBybj1XdXJ6ZWwgcnQ9MTAwMDEzNzk0OSByZz1zY2htYXJybgp+IyEgdGlkPTk5OTgwODE2NQpEaWUgb2ZmaXppZWxsZSBCZWdydWVuZHVuZyBmdWVyIGRpZXNlbiBQYXNzIGlzdCBlaW5lcnNlaXRzIGRlciBIaW53ZWlzIGRhcmF1ZiwKZGFzcyBQZmVyZGUgamEgcG90ZW50aWVsbCBkZW0gTWVuc2NoZW4gYXVjaCBhbHMgTmFocnVuZ3NtaXR0ZWwgZGllbmVuIGtvZW5uZW4uCkFsc28gbXVzcyBnZXNpY2hlcnQgd2VyZGVuLCBkYXNzIGluIGVpbiBwb3RlbnRpZWxsZXMgU2NobGFjaHR0aWVyIG5peCBhbgpNZWRpa2FtZW50ZW4gcmVpbiBrb21tdCwgd2FzIGRlbSBNZW5zY2hlbiBzY2hhZGVuIGthbm4uIEF1c3NlcmRlbSB2ZXJsYW5ndCBqYQpkaWUgUHJhZXZlbnRpb24gdm9uIFRpZXJzZXVjaGVuLCBkYXNzIGRpZSBUcmFuc3BvcnR3ZWdlIGRlciBUaWVyZSBlaW5kZXV0aWcKbmFjaHZlcmZvbGd0IHdlcmRlbiBrb2VubmVuLgoKSWNoIGhpbmdlZ2VuIHZlcm11dGUsIHdlbm4gZXJzdG1hbCBhbGxlIChvZGVyIGdlbnVlZ2VuZCkgUGZlcmRlIHJlZ2lzdHJpZXJ0Cnd1cmRlbiwgZGFubiB3aXJkIGRlciBGaXNrdXMgenVzY2hsYWdlbiB1bmQgZWluZSBQZmVyZGUodmVyZ251ZWd1bmdzKXN0ZXVlcgpvZGVyIHNvd2FzIHZlcmxhbmdlbi4uLgoKQWJlciBkdSBzb2xsdGVzdCB3aXJrbGljaCBiZXNzZXIgc29sY2hlIFBhZXNzZSBiZWFudHJhZ2VuLCB2b3IgYWxsZW0gd2VubiBkdQpkZWluZSBiZWlkZW4gR2FldWxlIHRyYW5zcG9ydGllcmVuIHdpbGxzdC4gRmFsbHMgZHUgaW4gZWluZSBLb250cm9sbGUgZ2VyYWV0c3QKdW5kIGRpZXNlIGJlaWRlbiBQYWVzc2UgbmljaHQgdm9yemVpZ2VuIGthbm5zdCwgd2lyZCBlcyB0YXRzYWVjaGxpY2ggdGV1ZXIsCm9kZXIgZ2FyIGRlciBUcmFuc3BvcnQgdW50ZXJidW5kZW4uLi50cmF1cmlnLCBhYmVyIHdhaHIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiAoU2Nod3ViYmVsLCAxMC4gU2VwIDIwMDEsIDIzOjA5OjAyKToKfiMhIHJuPUhyZWlkbWFyIHJ0PTEwMDAxMzgzMTYgcmc9c2NobWFycm4KfiMhIHRpZD05OTk4MDgxNjUKdW5kIGFuIEhhbmQgZGllc2VyIGRvb2ZlbiBQYWVzc2Ugc29sbGVuIGRhbm4gZGllIEJ1bGxlbiBtaXQgZGVtIHVlYmVycmFnZW5kZW4KUGZlcmRldmVyc3RhbmQgZXJrZW5uZW4sIGRhc3Mgc2llIGF1ZiBnZXJhZGUgKmRhcyogUGZlcmQgYXVzZ2VzdGVsbHQgc2luZCwgZGllCnNpY2ggaW0gSGFlbmdlciBiZWZpbmRlbiwgYnJ1aGFoYWhhLiBEYSBrYW5uIG1hbiBkb2NoIGJlc2NoZWlzc2VuLCBiaXMgZGllCkFscGVuIHVta2lwcGVuLiBFaGVyIG1hbCB3aWVkZXIgZWluIGJpc3NjaGVuIG1laHIgQnVlcm9rcmF0aXVzIGZ1ZXIgZGllCkhvaGxrb2VwZmUgaW4gQnJ1ZXNzZWwuClNjaGxpZXNzbGljaCBtdXNzIGRvY2ggamVkZXIgdm9yIE1lZGlrYW1lbnRlbiBpbSBQZmVyZCBnZXNjaHVldHp0IHdlcmRlbiwgZGllCmVzIGZ1ZXIgZGVuIE1lbnNjaGVuIHJlemVwdGZyZWkgaW4gamVkZXIgQXBvdGhla2UgZ2lidC4gQWJlciB3YXMgc29sbHMsIHZvciAyMApKYWhyZW4gaGFldHRlIGF1Y2ggamVkZXIgbGF1dGhhbHMgZ2VsYWNodCwgd2VubiBtYW4gaWhtIGVyemFlaGx0IGhhZXR0ZSwgZGFzcwpQZmVyZGUgaXJnZW5kd2FubiBtYWwgTnVtbWVybnNjaGlsZGVyIHRyYWdlbi4KClNjaHd1YmJlbCwgZGVyIGpldHp0IGRhcmF1ZiB3YXJ0ZXQsIGRhc3MgbWFuIG51ciBub2NoIG1pdCBGdWVocmVyc2NoZWluCkZhaHJyYWQgb2RlciBSb2xsZXIgZmFocmVuIGRhcmYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmV0d2FzIHRvdD8gKFJlZHNoaXJ0LCAxMC4gU2VwIDIwMDEsIDIzOjQ3OjA3KToKPnVudCB6d2VyZwpWb3IgRGlyIHRyZWlidCBlaW4gdG90ZXIgWndlcmcsIGRlciBzaWNoIG51biBuaWNodCBtZWhyIGZ1ZXIgc28gZ3Jvc3MgaGFlbHQuCkVyIGlzdCBzY2hvbiBldHdhcyBnZXNjaHdhZWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBldHdhcyB0b3Q/IChGb29iYXIsIDExLiBTZXAgMjAwMSwgMDA6MDE6MTkpOgp+IyEgcm49UmVkc2hpcnQgcnQ9MTAwMDE1ODQyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDAxNTg0MjcKVW50b3QgOm8pCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZXR3YXMgdG90PyAoTml6emwsIDExLiBTZXAgMjAwMSwgMDA6MDM6NTApOgp+IyEgcm49Rm9vYmFyIHJ0PTEwMDAxNTkyNzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAwMTU4NDI3ClZpZWxsZWljaHQgcmllY2h0IGVyIGF1Y2ggbnVyIHNvIHN0YXJrLCBkYXNzIG1hbiBtZWludCBlciBzZWkgdG90IDopIG11aGFoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBldHdhcyB0b3Q/IChSZWRzaGlydCwgMTEuIFNlcCAyMDAxLCAwMDoxNjo0Mik6Cn4jISBybj1Gb29iYXIgcnQ9MTAwMDE1OTI3OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDAxNTg0MjcKVW50b3Q/IERhcyB3b2xsdGUgaWNoIGRhbm4gZG9jaCBnZW5hdWVyIHdpc3Nlbi4KCj51bnQgendlcmcKVm9yIERpciB0cmVpYnQgZWluIHRvdGVyIFp3ZXJnLCBkZXIgc2ljaCBudW4gbmljaHQgbWVociBmdWVyIHNvIGdyb3NzIGhhZWx0LgpFciBpc3QgYWJzb2x1dCBmaXQuCkRhcyBXYXNzZXIgc3RvZXNzdCBhbiBkaWUgRGVja2UuIER1IHNvbGx0ZXN0IERpciBldHdhcyBlaW5mYWxsZW4gbGFzc2VuLCBkZW5uCmRpZSBMdWZ0IHdpcmQgRGlyIGtuYXBwLgo+dG9ldGUgendlcmcKT2suCkRpZSBBbmdzdCBpc3Qgc3RhZXJrZXIgYWxzIER1IC4uLiBEdSB3aWxsc3QgbnVyIG5vY2ggd2VnIGhpZXIuCkR1IHZlcnN1Y2hzdCB6dSBmbGllaGVuLCBzY2hhZmZzdCBlcyBhYmVyIG5pY2h0LgogIC4uLi5ub3JtYWwvYmxvc3NlbiBIYWVuIER1Li4uLi4uLi4uLi4gOiBHYW1hbGxvLi4uLi4uICoqKioqKioqIC0+IHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9ibG9zc2VuIEhhZW4gR2FtYWxsby4uLi4uLiA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gc2VociBoYXJ0CltUb2Q6TGFyc10gR2FtYWxsbyBoYXQgZ2VyYWRlIFJlZHNoaXJ0IHVtZ2VicmFjaHQuCgoKd2FyIHdvaGwgZG9jaCBub2NoIG5pY2h0IHRvdC4gS2FubiBtYW4gVW50b3RldCB0b2V0ZW4/CkVnYWwsIGdlbnVnIEV4cGVyaW1lbnRlIGZ1ZXIgaGV1dGUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFyYXRob24tVmVyc2FtbWx1bmcgKE1hZ2lydXMsIDExLiBTZXAgMjAwMSwgMTU6MjY6NDEpOgo6emVpdApEaWUsIDExLiBTZXAgMjAwMSwgMTU6MjU6MTMuCjp6ZWlnZXRlcm1pbgpEaWUgVmVyc2FtbWx1bmcgdm9tIE1pdCwgMTQuIE1hciAyMDAxLCAxOToxOToxOSBpc3QgZ2VyYWRlIGltIEdhbmdlLgoKTWFnaXJ1cyAoZGllIFZlcnNhbW1sdW5nIGluIFp1a3VuZnQgbWVpZGVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6ICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIERBICogREEgKiBEQSAqIChNb250YW51cywgMTEuIFNlcCAyMDAxLCAxNTozOTozOCk6Cn4jISBybj1BbmFjcmlvbiBydD0xMDAwMDU4MDI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTk5ODA4MTY1CkR1IGJpc3QgV2VsZmUsIFJvbmRhPwpTaW5kIGRhcyBuaWNodCBkaWUsIGRpZSBkYXVlcm5kIEJpZXIgdHJpbmtlbiB1bmQgZGFubiBhbiB0dWVya2lzY2hlIFBhdmlsbG9ucwphdWYgZGVyIEVYUE8gcGlua2VsbiwgRm90b2dyYXBoZW4gdmVycHJ1ZWdlbG4gdW5kIHNvIHdlaXRlcj8KCi1Nb250YW51cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcG9laCEgKEdub21lLCAxMS4gU2VwIDIwMDEsIDE5OjU1OjM1KToKW3dhZiBzdGVybl0KRGVuIFd1cmZzdGVybiBoYXQgZWluZSBzbyBndXRlIEtsaW5nZSwgZGFzcyBEdSBEaWNoIG1pdCBEZWluZW4gYmVzY2hlaWRlbmVuCktlbm50bmlzc2VuIGltIFdhZmZlbnNjaGFlcmZlbiBuaWNodCBkYXJhbiBoZXJhbndhZ3N0LgoKZ25PbWUgZGVua3QgIC4gbyAwIChERU4gdHJ2ZXMgaGF0IHNvbGNoIGVpbmUgZ3V0ZSB3YWZmZW5rZW5udG5pcywgZGFzcwogICAgICAgICAgICAgICAgICAgIGVyIGRhcyBlaWdlbnRsaWNoIHNjaGFmZmVuIHNvbGx0ZS4uLiBwZmZmZmZmZmZmdC4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmR5Li4uIChGb29iYXIsIDEyLiBTZXAgMjAwMSwgMDE6NTI6MDYpOgpBbmR5IHNhZ3Q6IEZvb2Jhciwgd2llc28gcmljaHRldCBEdSBzZWluZSBnYW56ZSBBdWZtZXJrc2Fta2VpdCBhdWYgbWljaD8KCkpldHp0IHdlaXNzIGVyIGVzLgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW5keS4uLiAoVHN1bmFtaSwgMTIuIFNlcCAyMDAxLCAwMTo1Mjo1MCk6Cn4jISBybj1Gb29iYXIgcnQ9MTAwMDI1MjMyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDAyNTIzMjYKZGF6dSBtdXNzdGVzdCBkdSBhYmVyIGF1ZiBlaW5lbiBTY2hlbWVsIHN0ZWlnZW4sIG5pY2h0PyA6KQoKVHN1bmFtaS4gU29sbHRlIG1hbCBuZSBad2VyZ2VubGVpdGVyIGJhc3RlbG4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFuZHkuLi4gKE11cGZlbCwgMTIuIFNlcCAyMDAxLCAwMTo1Mzo1OCk6Cn4jISBybj1Uc3VuYW1pIHJ0PTEwMDAyNTIzNzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAwMjUyMzI2Ck5hLCB2aWVsbGVpY2h0IHJpY2h0ZXQgZXIgZGllIEF1Zm1lcmtzYW1rZWl0IGF1ZiBkaWUgVGVpbGUsIGRpZSBlciBzZWhlbiBrYW5uPwo7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFuZHkuLi4gKFRzdW5hbWksIDEyLiBTZXAgMjAwMSwgMDE6NTQ6NDIpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMDAyNTI0Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDAwMjUyMzI2CmRhcyB3YWVyZSBkYW5uIGRlciBCYXJ0LCBpbiBkZW0gemFobGxvc2UgZWtsaWdlIERpbmdlIHN0ZWNrZW4va2xlYmVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBbmR5Li4uIChWYXJsYXJpb24sIDEyLiBTZXAgMjAwMSwgMDE6NTU6MDIpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMDAyNTI0Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDAwMjUyMzI2CnNvIHdpZSBkaWUgbGVpdGVyIHZvbiBjYXNhbnVuZHJhLCBkZW0gendlaXRncm9lc3N0ZW4gbGllYmhhYmVyIGFsbGVyIHplaXRlbiAtCnVuZCBkZW0ga2xlaW5zdGVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQW5keS4uLiAoTGlhcmEsIDEyLiBTZXAgMjAwMSwgMDE6NTU6MzYpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMDAyNTI1MDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAwMjUyMzI2CkFlaCwgZnVlciB3YXMgZ2VuYXUgYnJhdWNodGUgZGVyIGRpZSBMZWl0ZXI/IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQW5keS4uLiAoTXVwZmVsLCAxMi4gU2VwIDIwMDEsIDAxOjU3OjQ4KToKfiMhIHJuPVRzdW5hbWkgcnQ9MTAwMDI1MjQ4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDAyNTIzMjYKQmFydD8gV2llc28gQmFydD8gU2VpdCB3YW5uIHRyYWVndCBBbmR5IEJhcnQ/CgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSXN0IEhhdGUgZWluIEhlbGxzZWhlcj8gKE1pZXplLCAxMi4gU2VwIDIwMDEsIDE2OjAxOjM3KToKClNvIGViZW4gcGFzc2llcnQ6CgpVZ2kgcnVmdDogRVMgS0FOTiBOVVIgRUlORU4gR0VCRU4uLi4uISEhCk1hc3RlciBIYXRlIHJ1ZnQ6IHVuZCBkZXIgc3RpcmJ0IGdsZWljaApbVG9kOkxhcnNdIEVpbiBGcm9zdHd1cm0gaGF0IGdlcmFkZSBVcmdzIHVtZ2VicmFjaHQuCgpNaWV6ZSAtIGtpY2hlcnQgaW1tZXJub2NoLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBlcnNjaHVldHRlcm5kLi4uIChCb2luZywgMTMuIFNlcCAyMDAxLCAxNToxNjo0Myk6Cn4jISBybj1WaW5jZW50IHJ0PTEwMDAzODYxMTMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMDAyNDcwMTAKRXMgd2FyIGVpbmUgQm9FRUVFRUVFaW5nIC4uLiBpY2ggaGFiIG5peCBkYW1pdCB6dSB0dW4hCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBlcnNjaHVldHRlcm5kLi4uIChLYXJpcywgMTMuIFNlcCAyMDAxLCAxNToxODozOCk6Cn4jISBybj1Cb2luZyBydD0xMDAwMzg3MDAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMDI0NzAxMApTY2hvbiB3aWVkZXIgZWluZXIsIGRlciBkZW1lbnRpZXJ0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVXJsYXViIChab29rLCAxNC4gU2VwIDIwMDEsIDE2OjIxOjAzKToKfiMhIHJuPVJpa3VzIHJ0PTEwMDA0NzI2NTIgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTEwMDA0NzI2NTIKRGFzIHJlaWNodCBkYW5uIGFiZXIgYXVjaC4gV28ga29tbWVuIHdpciBkZW5uIGRhIGhpbj8gMiBUYWdlIHVuZCBub2NoIHp3ZWkKV29jaGVuPyBTb3dhcy4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXVjaCBoaWVyIGdpYnRzIHdhcyB6dSBiZXJpY2h0ZW4uLi4gKE5penpsLCAxNC4gU2VwIDIwMDEsIDIxOjUzOjQ2KToKfiMhIHJuPU1vcmdvdGggcnQ9MTAwMDQ2NTExOSByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDAwNDY1MTE5CnVpaCwgZGFzIGdpYnRzIG5vY2g/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbnRibG9lc2VyPyAoRGVlcGJsdWUsIDE1LiBTZXAgMjAwMSwgMTI6NDI6MzApOgpQaXRmYWxsIHppZWh0IGVpbmUgZ3J1ZW5lIFJvYmUgYXVzLgpVbmlwdW1hIGVyYmxlaWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhdGVuInNjaHV0eiI/IChUaWFtYWssIDE2LiBTZXAgMjAwMSwgMjA6MDE6MzMpOgpFYmVuIGluIGRlbiAiRGF0ZW5zY2h1dHotSW5mb3MiIHZvbiBib2wuZGUgZ2VmdW5kZW46CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tc2NobmlwcC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkRpZSBib2wuZGUgR21iSCBuaW1tdCBkZW4gU2NodXR6IHBlcnNvbmVuYmV6b2dlbmVyIERhdGVuIGVybnN0LiBEYWhlciBzdGVsbGVuCndpciBhbmRlcmVuIFVudGVybmVobWVuIElocmUgRS1NYWlsLUFkcmVzc2UgbmljaHQgenVyIFZlcmZ1ZWd1bmcuIFdpciB3ZXJkZW4KbnVyIElocmUgYW5sYWVzc2xpY2ggdm9uIEJlc3RlbGx1bmdlbiBhbmZhbGxlbmRlbiBEYXRlbiBmdWVyIGRpZSBBYndpY2tsdW5nCklocmVyIEJlc3RlbGx1bmcgdW5kIGZ1ZXIgV2VyYmV6d2Vja2UgbnV0emVuLiBJaHJlIEFuc2NocmlmdCB3aXJkIGFsbGVuZmFsbHMKYW4gYXVzZ2V3YWVobHRlIHNlcmlvZXNlIFBhcnRuZXIgd2VpdGVyZ2VnZWJlbi4gRGllcyBlcmZvbGd0IHVudGVyIHN0cmVuZ2VyCkJlYWNodHVuZyBkZXIgZ2VsdGVuZGVuIGRhdGVuc2NodXR6cmVjaHRsaWNoZW4gQmVzdGltbXVuZ2VuLiBNb2VjaHRlbiBTaWUgZGllCldlaXRlcmdhYmUgYW4gRHJpdHRlIGF1c3NjaGxpZXNzZW4sIGtvZW5uZW4gc2llIHVucyBkaWVzIGplZGVyemVpdCBoaWVyIGFuCnNlcnZpY2VAYm9sLmRlIG1pdHRlaWxlbi4KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLXNjaG5hcHAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKRGllc2UgRm9ybXVsaWVydW5nIGtvZW5udGUgYXVjaCAxOjEgZWluZW0gU2F0aXJlbWFnYXppbiBlbnRub21tZW4gc2VpbiAuLi4KCgpUaWFtYWsuIFdlaXNzIG5pY2h0LCBvYiBlciBkYSBudW4gbGFjaGVuIG9kZXIgd2VpbmVuIHNvbGwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGF0ZW4ic2NodXR6Ij8gKEFuYWNyaW9uLCAxNi4gU2VwIDIwMDEsIDIwOjA0OjE3KToKfiMhIHJuPVRpYW1hayBydD0xMDAwNjYzMjkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMDY2MzI5MwpJY2ggd2Vpc3Mgc2Nob24sIHdhcnVtIGljaCBiZWkgQm9sIG5peCBrYXVmZS4gCgoqYWVjaHoqCgphbmFjKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVzZXQgLi4uIChMaWFyYSwgMTYuIFNlcCAyMDAxLCAyMjowMTo0Nyk6CkF1c2dlc3Byb2NoZW4gbGVja2VyZXIgQXNzYW0sIGVzIGtyaWJiZWx0IGluIGRlaW5lbSBnYW56ZW4gS29lcnBlci4KRWluZSBnZW11ZXRsaWNoZSBrbGVpbmUgS25laXBlLCB3aWUgbWFuIHNpZSBoYWV1ZmlnIGluIERvZXJmZXJuIGZpbmRldC4gRWluZQpmcmV1bmRsaWNoZSBCZWRpZW51bmcgc3RlaHQgaGludGVyIGRlciBUaGVrZSB1bmQga29jaHQgVGVlLiBJbSBPc3RlbiBnZWh0IGVzCnp1CmRlbiBUb2lsZXR0ZW4uIApFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4gdW5kIHdlc3Rlbi4KW0ZldWVyendlcmddIE55aydrb3IgRm9vYmFyLgpXaW50ZXJtdXRlIGRpZSBLYXJhdGUtS2FlbXBmZXJpbiwgNS4gS3l1LgpFaW4gSGFldWZjaGVuIFNhbmQuICgxODYpCkVpbiBlaW5hcm1pZ2VyIEJhbmRpdC4KRGllIFRvcC1MaXN0ZSwgVG9wLVNwaWVsZXJsaXN0ZSB1bmQgVG9wLVNlaGVybGlzdGUuCkV0d2FzIFNhbmQgdmVyd2VodC4KRXR3YXMgU2FuZCB2ZXJ3ZWh0LgpFdHdhcyBTYW5kIHZlcndlaHQuCkV0d2FzIFNhbmQgdmVyd2VodC4KRXR3YXMgU2FuZCB2ZXJ3ZWh0LgpFdHdhcyBTYW5kIHZlcndlaHQuCkV0d2FzIFNhbmQgdmVyd2VodC4KRXR3YXMgU2FuZCB2ZXJ3ZWh0LgpFdHdhcyBTYW5kIHZlcndlaHQuCkV0d2FzIFNhbmQgdmVyd2VodC4KRXR3YXMgU2FuZCB2ZXJ3ZWh0LgpFdHdhcyBTYW5kIHZlcndlaHQuCkV0d2FzIFNhbmQgdmVyd2VodC4KRXR3YXMgU2FuZCB2ZXJ3ZWh0LgpFdHdhcyBTYW5kIHZlcndlaHQuCkV0d2FzIFNhbmQgdmVyd2VodC4KRXR3YXMgU2FuZCB2ZXJ3ZWh0LgpFdHdhcyBTYW5kIHZlcndlaHQuCkV0d2FzIFNhbmQgdmVyd2VodC4KRGVpbmUgU2NodWhlIGdsdWVoZW4ga3VyeiBhdWYgdW5kIGhlaWxlbiBEaWNoIGVpbiB3ZW5pZy4KClpaTEIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNUyBTdGFUaSAxOC4wOS4wMSAoTGlhcmEsIDE2LiBTZXAgMjAwMSwgMjM6NDI6MDEpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwMDA2NzY0Mzkgcmc9dHJlZmZlbgp+IyEgdGlkPTEwMDA2NzY0MzkKXyBpbW1lciBub2NoIGdlc2NobG9zc2VuIF8gCkhlaGUsIGlociBzZWlkIGVjaHQgb3B0aW1pc3Rpc2NoIGluIG11ZW5zdGVyLiA6LSkKClpaTEIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTVMgU3RhVGkgMTguMDkuMDEgKEZvb2JhciwgMTYuIFNlcCAyMDAxLCAyMzo0MzowMSk6Cn4jISBybj1MaWFyYSBydD0xMDAwNjc2NTIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMDY3NjQzOQpOYWphLCB2b3Iga3VyemVuIHN0YW5kIGRhIGRpZSBoYWJlbiBnZXNjaGxvc3NlbiBzbyBsYW5nZSBndXRlcyBXZXR0ZXIgaXN0LgoKRGFzIFdldHRlciBpc3Qgc28gd2llIGltbWVyIGluIE11ZW5zdGVyLgoKT2IgZGFzIGpldHp0IGd1dCBvZGVyIHNjaGxlY2h0IGlzdCwgdGphLCB3ZXIgd2Vpc3MgZGFzIHNjaG9uLi4uCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1TIFN0YVRpIDE4LjA5LjAxIChMaWFyYSwgMTYuIFNlcCAyMDAxLCAyMzo0Mzo1OSk6Cn4jISBybj1Gb29iYXIgcnQ9MTAwMDY3NjU4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDA2NzY0MzkKSWhyIHNlaWQgbmljaHQgbnVyIG9wdGltaXN0aXNjaCwgaWhyIGdsYXVidCBhdWNoIGFsbGVzLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1TIFN0YVRpIDE4LjA5LjAxIChWYXJsYXJpb24sIDE2LiBTZXAgMjAwMSwgMjM6NDg6MDgpOgp+IyEgcm49TGlhcmEgcnQ9MTAwMDY3NjYzOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDA2NzY0MzkKSmEsIHNvIHNpbmQgc2llLCBkaWUgTXVlbnN0ZXJhbmVyIDopIFdpZSBhdWNoIGltbWVyLCBpY2ggd2VyZGUgZXVjaAphdWZzcHVlcmVuLCB3byBhdWNoIGltbWVyIGlociBldWNoIGRpZXNtYWwgdmVya3JpZWNodCA7KQoKVmFybCosIGRyb2hlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1TIFN0YVRpIDE4LjA5LjAxIChHb3JvZywgMTcuIFNlcCAyMDAxLCAwOToyNzowMCk6Cn4jISBybj1Gb29iYXIgcnQ9MTAwMDY3NjU4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDA2NzY0MzkKSG1tbSBsZXR6dGVuIE1pdHR3b2NoIGhhdHRlbiBkaWUgZ3J1bmRsb3MgZ2VzY2hsb3NzZW4gdW5kIHp3YXIgZ2VnZW4gMjAuMzAKYWxzbyB3dWVyZGUgaWNoIHN0YXJrIGVtcGZlaGxlbiBkaXJla3QgZWluZW4gYXVzd2VpY2hzb3J0IHp1IHN1Y2hlbi4uLgoKZ29yb2cgbmljaHQgYW53ZXNlbmQgbmljaHQgc2NobWFycm5lbmQgbmljaHQgd2ljaHRpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTVMgU3RhVGkgMTguMDkuMDEgKENhdHdlYXpsZSwgMTcuIFNlcCAyMDAxLCAwOToyNzo0NCk6Cn4jISBybj1Hb3JvZyBydD0xMDAwNzExNjIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMDY3NjQzOQpQYWVsbGEhCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1TIFN0YVRpIDE4LjA5LjAxIChGb29iYXIsIDE3LiBTZXAgMjAwMSwgMDk6Mjg6MjApOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMDA3MTE2NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAwNjc2NDM5CkhtPwoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNUyBTdGFUaSAxOC4wOS4wMSAoQ2F0d2VhemxlLCAxNy4gU2VwIDIwMDEsIDA5OjI4OjQwKToKfiMhIHJuPUZvb2JhciBydD0xMDAwNzExNzAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMDY3NjQzOQpIYXZhbmEhCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE1TIFN0YVRpIDE4LjA5LjAxIChGb29iYXIsIDE3LiBTZXAgMjAwMSwgMDk6Mjk6MTQpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMDA3MTE3MjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAwNjc2NDM5CkpvLiBTdGVodCBqYSBhdWNoIGRhIGluIGRlciBSdWJyaWsgInRyZWZmZW4iLiA6bykKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTVMgU3RhVGkgMTguMDkuMDEgKENhdHdlYXpsZSwgMTcuIFNlcCAyMDAxLCAwOTozNToyNSk6Cn4jISBybj1Gb29iYXIgcnQ9MTAwMDcxMTc1NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDA2NzY0MzkKTmllbWFuZCB2ZXJzdGVodCBtaWNoLgoKV2FzIGljaCBtaXQgZGVtIEF1c3J1ZiAnUGFlbGxhIScgYXVzZHJ1ZWNrZW4gd29sbHRlIHdhcjoKCkluIEFuYmV0cmFjaHQgZGVyIFRhdHNhY2hlLCBkYXMgZGllIEt1bGlzc2Ugd2FocnNjaGVpbmxpY2ggZWggenUgaGF0LCBkYSBzaWUKamEgdm9yIDIgV29jaGVuIGF1Y2ggZGljaHQgd2FyIG9obmUgZGFzcyBkYXMgdm9uIGF1c3NlbiBvZGVyIGltIHZvcmhpbmVpbgppcmdlbmR3aWUgZXJrZW5uYmFyIGdld2VzZW4gd2FlcmUsIHVuZCBkaWUgS3VsaXNzZSBzb3dpZXNvIG5pZW5pY2ggd2llZGVyCmF1Zm1hY2hlbiB3aXJkIGRhIHNjaGxpZXNzbGljaCBfd2lyXyBzaWUgYmVzdWNodGhhYmVuLCB3YWVyZSBlcyBkb2NoIHdvaGwKYmVzc2VyIGRlbiBTdGFtbXRpc2NoIGRpcmVrdCBpbSBIYXZhbmEgYW56dXNldHplbiB1bmQgYXVjaCBzbyBhbnp1a3VlbmRpZ2VuLApkYSBlcyBkb3J0IHp1ZGVtIGF1Y2ggbm9jaCBsZWNrZXJlIFBhZWxsYSBnaWJ0LCBkaWUgaWNoIHNlaHIgZ2VybmUgbWFsCnByb2JpZXJlbiB3dWVyZGUuCgpTbywgZHUgd29sbHRlc3QgZXMgamEgYXVzZnVlaHJsaWNoIGhhYmVuIC4uLi4KCllUQyAoc29uc3QgZWluc2lsYmlnKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTVMgU3RhVGkgMTguMDkuMDEgKEVsYmVyZXQsIDE3LiBTZXAgMjAwMSwgMDk6NDE6MzApOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMDA3MTIxMjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAwNjc2NDM5CmFsc28gZGllIFBhZWxsYSB3dWVyZCBpY2ggYXVjaCBnZXJuIHByb2JpZXJlbiA7KQo6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE1TIFN0YVRpIDE4LjA5LjAxIChGb29iYXIsIDE3LiBTZXAgMjAwMSwgMDk6NDE6NTQpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMDA3MTIxMjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAwNjc2NDM5CkljaCB2ZXJzdGVoZS4KCkhhZXR0ZSBqZW1hbmQgZGVuIEFydGlrZWwgZmFsc2NoIHZlcnN0YW5kZW4ga29lbm50ZSBlciBhdWYgZGllIElkZWUga29tbWVuCnNpY2ggZ2xlaWNoIGluIGRhcyBIYXZhbmEgenUgc2V0emVuLCBvaG5lIHZvcmhlciBiZWkgZGVyIEt1bGlzc2UKdm9yYmVpenVzY2hhdWVuLgoKRm9sZ2xpY2gga29lbm5lbiB3aXIgbnVyIGhvZmZlbiwgZGFzcyBkaWUgS3VsaXNzZSB6dSBoYXQsIHdlaWwgZXMgc29uc3QgZWluZW4KdmVyc3ByZW5ndGVuIE11ZW5zdGVyYW5lciBTdGFUaSBnaWJ0LiBVbmQgZGFzIHdpbGwgamEga2VpbmVyLgoKRm9vYmFyIGRlbmt0IC4gbyBPICggR2FueiBzY2hvZW4ga29tcGxpemllcnQgKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTVMgU3RhVGkgMTguMDkuMDEgKEJvaW5nLCAxNy4gU2VwIDIwMDEsIDEwOjEyOjE4KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDAwNzEyMTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMDY3NjQzOQpXaWVzbyBiZXN1Y2h0IGlociBuaWNodCBtYWwgZWluIHBhYXIgS25laXBlbiBkaWUgYXVzIGRlciBNdWVuc3RlcmFuZXIKS25laXBlbmxhbmRzY2hhZnQgdmVyc2Nod2luZGVuIHNvbGx0ZW4/IElociBzY2hlaW50IGluIGRlciBCZXppZWh1bmcKc2VociBlcmZvbGdyZWljaCB6dSBzZWluIHVuZCBkYW5uIGdpYnRzIFBsYXR6IGZ1ZXIgZ3V0ZSBuZXVlIEtuZWlwZW4uIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYXRlbiJzY2h1dHoiPyAoWm9vaywgMTcuIFNlcCAyMDAxLCAxMzowMjoxOSk6Cn4jISBybj1UaWFtYWsgcnQ9MTAwMDY2MzI5MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDA2NjMyOTMKV2VpbmUuIFdlbm4gaWNoIGRhcyBoZXV0ZSBtb3JnZW4gdW0gNy4wMGFtIGltIEhhbGJzY2hsYWYgbWl0YmVrb21tZW4gaGFiZSwKaGF0IGRlciBCdW5kZXNpbm5lbm1pbmlzdGVyIHZlcmxhdXRiYXJlbiBsYXNzZW4sIGRhc3Mgd2lyIGluIERldXRzY2hsYW5kCndvaGwgYmVpbSAiRGF0ZW5zY2h1dHoiIHp1IHN0cmVuZyB3YXJlbiB1bmQgZGFzcyBtYW4gZGFzIGZ1ZXIgZGllIApUZXJyb3Jpc3RlbmFid2VociBhZW5kZXJuIG11c3MuLi4KCkdydXNzLCBab29rLgoKUC5TLjogV2VyIGdhcmFudGllcnQgbWlyIGVpZ2VudGxpY2gsIGRhc3MgZGVyIFN0YWF0IGRhbWl0IHZlcmFudHdvcnR1bmdzLQp2b2xsIHVtZ2VodD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNlbHRzYW1lcyBXZXR0ZXIuLi4gKFZhcmxhcmlvbiwgMTcuIFNlcCAyMDAxLCAxNjoxODo1Mik6CkVpbiBGcm9zY2ggZmxpZWd0IGhlcmVpbi4KRWluIEZyb3NjaCBmbGllZ3QgbmFjaCBTdWVkZW4uCkVpbiBGcm9zY2ggZmxpZWd0IGhlcmVpbi4KRWluIEZyb3NjaCBmbGllZ3QgbmFjaCBOb3JkZW4uCgpWYXJsKiwgc3VjaHQgZWluZW4gUmVnZW5zY2hpcm0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNhZXVyZXJlc2lzdGVudCAoU2xheCwgMTcuIFNlcCAyMDAxLCAyMDoxNjo0Nik6CkltIEdyYWIgdm9uIE11cmFkaHMgVHVybToKRGVyIFdhbmRsZXIgbGFlY2hlbHQgRGllIFNhZXVyZSBtaWxkZSBhbiB1bmQgc2FndDogV2VubiBEdSBtYWwgZ3Jvc3MgYmlzdCwKRGVyIFdhbmRsZXIgbGFlY2hlbHQgRGllIFNhZXVyZSBtaWxkZSBhbiB1bmQgc2FndDogZXZlbnR1ZWxsLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2FldXJlcmVzaXN0ZW50IChQYXRyeW4sIDE3LiBTZXAgMjAwMSwgMjA6Mjc6NDMpOgp+IyEgcm49U2xheCBydD0xMDAwNzUwNjA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMDc1MDYwNgoqcHJ1c3QqIGRlciBpc3QgZG9jaCBpbW1lciB3aWRlciBmdWVyIG5lbiBnYWcgZ3V0Li4uZGFzIGlzdCBlaWdlbnRsaWNoCmRhcyBhYmZhbmdlbiB2b24genUga2xlaW5lbiBhbmdyZWlmZW5kZW4gc3BpZWxlcm4uCgotLSAKcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2FldXJlcmVzaXN0ZW50IChHcmltbWJvcm4sIDE3LiBTZXAgMjAwMSwgMjA6Mjg6MDEpOgp+IyEgcm49U2xheCBydD0xMDAwNzUwNjA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMDc1MDYwNgpXYXMgaGFzdCBEdSB2ZXJ3ZW5kZXQ/IEtvaGxlbnNhZXVyZT8KCkdkQSBlbXBmaWVobHQgZWluIEdlbWlzY2ggYXVzIFNiRjUvSEYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVsZmVuIG5laG1lbiBNb3JvbiBlaW4hIChDcm9mdCwgMTcuIFNlcCAyMDAxLCAyMjoyNjozMSk6Ck5vZXJkbGljaCB2b24gaGllciwgYW4gZGVyIGdlZ2VudWViZXJsaWVnZW5kZW4gU2VpdGUgZGVzIFBsYXR6ZXMsIHNpZWhzdCBEdQplaW4KZ2V3YWx0aWdlcyBHZWJhZXVkZSBtaXQgZWluZXIgZ3Jvc3NlbiBLdXBwZWwsIGRpZSBEaXIgc2Nob24gYmVpbSBCZXRyZXRlbiBkZXIKU3RhZHQgYXVmZ2VmYWxsZW4gaXN0LiBBdXNzZXJkZW0gZnVlaHJ0IGltIFdlc3RlbiBkaWUgSGF1cHRzdHJhc3NlIHRpZWZlciBpbgpkaWUgU3RhZHQgaGluZWluLiAKRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCB3ZXN0ZW4sIG5vcmRlbiB1bmQgbm9yZG9zdGVuLgpFaW4gU2NoYXR0ZW5tYW5uLgpFaW4gRWxmZW53YWVjaHRlci4KRGllIEVsZmVud2FjaGUgc2FndDogS2VpbmVuIEFlcmdlciBpbiBkZXIgU2llZGx1bmcsIGJpdHRlIQoKQ3JvZnQgKGZpbmRldCBkeW5hbWlzY2hlIE11ZHMgc2Nob2VuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWxsZXMgbnVyIGdla2xhdXQ/IChDb3JhaywgMTcuIFNlcCAyMDAxLCAyMzoxMDozMSk6CkhpZXIgZWluIHNjaG9lbmVyIEVpbnRyYWcgYXVzIG1laW5lbSBUb2Rlc3RhZ2VidWNoOgoKQXJnbCwgaGF0IHNpY2ggZGEgZXR3YSBkaWUgUmF0dGUgdm9uIEFtYXJ5bGxpcyB2ZXJzdGFlcmtlbiBsYXNzZW4/CgppY2ggZGFjaHRlIGRpZSBSYXR0ZW4gd2FyZW4gdm9uIFBhdHJ5biBvZGVyIGhhdCBBbWFyeWxsaXMgZGllIG5ldWVyZGluZ3MKYWRvcGllcnQ/IDspCgpDb3JhaywgbGVpY2h0IHZlcndpcnJ0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYWNoYWJsb2VzdW5nIGltIFRvZGVzcmF1bS4uLiAoTXVwZmVsLCAxOC4gU2VwIDIwMDEsIDAwOjEwOjU3KToKW1RvZDpMYXJzXSBEZXIgQW5mdWVocmVyIGRlciBad2VyZ2VuaG9yZGUgaGF0IGdlcmFkZSBFcHBpIHVtZ2VicmFjaHQuCltUb2Q6RGVyIEFuZnVlaHJlciBkZXIgWndlcmdlbmhvcmRlXSBIQVJIQVJIQVIhIEF1Y2ggRHUgd2lyc3QgZGVuIEFuZ3JpZmYKW1RvZDpEZXIgQW5mdWVocmVyIGRlciBad2VyZ2VuaG9yZGVdIG5pY2h0IHN0b3BwZW4hCkVwcGkgc2NobGVpY2h0IGxlaXNlIGhlcmVpbi4KUmVhcGVyIHZlcnNjaHdpbmRldCBnYW56IGxlaXNlLgoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhpaGkgOikgKFZhcmxhcmlvbiwgMTguIFNlcCAyMDAxLCAwMTowOToxMSk6CltNb2VyZGVyOkdlaXN0IGVpbmVyIHJpZXNpZ2VuIEt1aF0gQWVobSBWYXJsYXJpb24sIGljaCBzY2hsaWVzc2UgbWljaCBqZXR6dApbTW9lcmRlcjpHZWlzdCBlaW5lciByaWVzaWdlbiBLdWhdIGVpbmVtIFRlYW0gYW4sIGRhbm4gaGFzdCBEdSBrZWluZSBDaGFuY2UKW01vZXJkZXI6R2Vpc3QgZWluZXIgcmllc2lnZW4gS3VoXSBtZWhyLiA8MDE6MDc6Mjc+CltNb2VyZGVyOkdlaXN0IGVpbmVzIE5naG9nc10gSG9mZmVudGxpY2ggd2VyZGUgaWNoIG5hZWNoc3RlcyBNYWwgYWxzIEt1aApbTW9lcmRlcjpHZWlzdCBlaW5lcyBOZ2hvZ3NdIHdpZWRlcmdlYm9yZW4sIEZvb2JhciAuLi4gPDAxOjA4OjAxPgpEZWluZSBGcmV1bmRpbiBMaWFyYSB0ZWlsdCBEaXIgbWl0OiBuZWUgYml0dGUga2VpbmUga3VlaGUgYXVmIG1vZXJkZXIKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogKnNjaGx1Y2h6KgoKVmFybCosIG11aGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxTIChGYW1vdXMgbGFzdCBzdGVwIF06LSkgKE1vcmdvdGgsIDE4LiBTZXAgMjAwMSwgMTI6MDQ6NDgpOgpFVkVOVC1YWFhYIDogQWhhYiBnZWh0IG5hY2ggU3VlZG9zdGVuLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKW1RvZDpMYXJzXSBFaW4gRmV1ZXJkYWVtb24gaGF0IGdlcmFkZSBBaGFiIHVtZ2VicmFjaHQuCltUb2Q6RWluIEZldWVyZGFlbW9uXSBFcyByaWVjaHQgc28gdmVyYnJhbm50IGhpZXIuIEJpc3QgRHUgZGFzPwoKTSogZ3JpbnN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXR0Li4uIDotKSAoWm9vaywgMTkuIFNlcCAyMDAxLCAxNjowNzoyNik6CltUb2Q6TGFyc10gRWluIEFyenQgZGVyIEZpbnN0ZXJ3YWxka2xpbmlrIGhhdCBnZXJhZGUgU2NobWVyeiB1bWdlYnJhY2h0LgpbVG9kOkVpbiBBcnp0IGRlciBGaW5zdGVyd2FsZGtsaW5pa10gRHUgc29sbHRlc3QgaGllciBuaWNodCByYW5kYWxpZXJlbi4KVAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh1bW9yIHZvbiBQcm9ncmFtbWllcmVybi4gKFZhbmlvbiwgMTkuIFNlcCAyMDAxLCAxNzowNDowOSk6Cj4gLi9jb25maWd1cmUKCi4uLgpQbGVhc2Ugd2FpdCB3aGlsZSAuL2NvbmZpZ3VyZSBkaXNjb3ZlcnMgeW91ciBzb2Z0d2FyZSBhbmQgaGFyZHdhcmUKZW52aXJvbm1lbnQhCkNoZWNraW5nIHZlcnNpb24gb2YgZ2NjIC4uLiAyLjk2LCBiYWQKUGxlYXNlIGRvd25ncmFkZSh1cGdyYWRlKSBnY2MgY29tcGlsZXIgdG8gZ2NjLTIuOTUuMisgb3IgZ2NjLTMuMCsgdmVyc2lvbgo+CgpWKiwgbGFjaHQgc3BhZXRlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIdW1vciB2b24gUHJvZ3JhbW1pZXJlcm4uIChWYXJkaW9uLCAxOS4gU2VwIDIwMDEsIDE4OjEwOjE0KToKfiMhIHJuPVZhbmlvbiBydD0xMDAwOTExODQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMDkxMTg0OQpXaWVzbz8gSXN0IGRvY2gga29ycmVrdC4gZ2NjIDIuOTYgd2FyIHNjaGxpY2h0d2VnIG5pY2ggenVyIFZlcndlbmR1bmcgZHVyY2gKRW5kbnV0emVyIGdlZGFjaHQuIFVuZCBlcyBpc3Qgd29obCBuaWNodCBtZWhyIG5hY2h2b2xsemllaGJhciwgd2VyIFJlZEhhdCBpbgpkZW4gS29wZiBnZXNjaCoqKioqIGhhdCwgYWxzIHNpZSBkZW4gaW4gZGllIERpc3RyaSBnZXBhY2t0IGhhYmVuLgoKVmFyZGlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIdW1vciB2b24gUHJvZ3JhbW1pZXJlcm4uIChWYW5pb24sIDE5LiBTZXAgMjAwMSwgMjA6NDg6NDEpOgp+IyEgcm49VmFyZGlvbiBydD0xMDAwOTE1ODE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMDkxMTg0OQpJcyBqYSBndXQsIGljaCBzZWhzIGVpbiA6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlZGFua2VubGVzZXI/IHVuZ2VrdWVyenQhIChHcnVtcGYsIDIxLiBTZXAgMjAwMSwgMDA6MDk6MjgpOgpKZW5hbmRyYSB0ZWlsdCBEaXIgbWl0OiB1bmQgZGljaCBkYWJlaSB1bWdlYnJhY2h0IGljaCB3ZWlzcyAuLi4gZXMgd2lyZCB6dXIKZ2V3b2huaGVpdCA7LSkgT2xsaSBydWZ0OiB3aXJkIGRhcyB6dXIgR2V3b2huaGVpdD8gOikKCkdydW1wZiBncnVtcGZ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpiZXNvZmZlbiBpbSBkaWVuc3QhIChHbm9tZSwgMjEuIFNlcCAyMDAxLCAwMDo1MTozMSk6CkVwcGkgZnJhZ3QgZGVuIFp3ZXJnZWxlZmFudCBuYWNoIEVyYmVyd2VydGUuCkRlciBad2VyZ2VsZWZhbnQgdHJvZXRldCBpcnJpdGllcnQuCkR1IGJyaWNoc3Qgdm9yIExhY2hlbiB6dXNhbW1lbi4KPEhpY2s+ISBPaCwgVHNjaHVsZGlndW5nLgpFcHBpIGZyYWd0IGRlbiBad2VyZ2VsZWZhbnQgbmFjaCBFcmJlcndlcnQuCkRlciBad2VyZ2VsZWZhbnQgdHJvZXRldCBpcnJpdGllcnQuCkVwcGkgZnJhZ3QgZGVuIFp3ZXJnZWxlZmFudCBuYWNoIEViZXJ3ZXJ0LgpEZXIgWndlcmdlbGVmYW50IHRyb2V0ZXQgaXJyaXRpZXJ0LgpQaXRmYWxsIGdyaW5zdCBFcHBpIGFuLgpFcHBpIHNhZ3Q6IDxIaWNrPiEKRXBwaSBmcmFndCBkZW4gWndlcmdlbGVmYW50IG5hY2ggRWJlcndlcnRlLgpEZXIgWndlcmdlbGVmYW50IHRyb2V0ZXQgaXJyaXRpZXJ0LgoKZ25PbWUgZGVua3QgLiBvIDAgKGJlc3NlciBlaW4gYWxpIGRyYXVmbWFjaGVuLi4uIDstKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBRMzNOWSAoR3JpbW1ib3JuLCAyMS4gU2VwIDIwMDEsIDE5OjEyOjI0KToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAwMTA5MjIyNSBvZz1hbGxnZW1laW5lcwp+IyEgcm49TW9udGFudXMgcnQ9MTAwMTA5MDE1OCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMDEwOTAxNTgKb2NoIGpvLCBpY2ggd2Vpc3MsIGljaCBiaW4gZWluIEFyc2NobG9jaCwgYWJlciB0cm90emRlbSBzY2hyZWliIGljaCBtYWwgd2FzCmhpZXIgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUTMzTlkgKEdyaW1tYm9ybiwgMjEuIFNlcCAyMDAxLCAxOToxMjozMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwMTA5MjM0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDEwOTAxNTgKQWJlciBuaWNodCBmdWVyIGxhbmdlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogbGVocmxpbmdzYW5mb3JkZXJ1bmdlbjogbHZsIDIwPyAoTGlhcmEsIDIzLiBTZXAgMjAwMSwgMDE6NTk6MDApOgp+IyEgcm49QmllbGVmZWxkIHJ0PTEwMDExOTE1NzIgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTAwMTA5MTQ5NApBbmFjcmlvbiB3YXIgbWFsIGVpbiBrbGVpbmVyIFphdWJlcmVyPwoKOnN0YXVudC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBsZWhybGluZ3NhbmZvcmRlcnVuZ2VuOiBsdmwgMjA/IChBbmF0b2wsIDIzLiBTZXAgMjAwMSwgMDI6MjQ6NTgpOgp+IyEgcm49QW5hdG9sIHJ0PTEwMDEyMDM2MDcgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTAwMTA5MTQ5NAoKLi4uLgpHZW51ZyBkZXIgUmVnZWxuIC0gd2llIG1vZWNodGVzdCBEdSBpbiBkaWVzZW0gU3BpZWwgaGVpc3Nlbj8gdGVzdG9zdGVyb24KV2FlaGxlIGVpbiBQYXNzd29ydDoKCgpadXIgRXJpbm5lcnVuZzogRXMgaXN0ICB2IGUgciBiIG8gdCBlIG4sIGFuZGVyZSBTcGllbGVyIGFuenVncmVpZmVuIQpEYXMgZ2lsdCBhdWNoIGZ1ZXIgRnJvZXNjaGUsIGJlaSBkZW5lbiAiRWluIEZyb3NjaCBuYW1lbnMgWFhYWFgiIHN0ZWh0LgoKUGFzc3dvcnQgYml0dGUgbm9jaG1hbCBlaW5nZWJlbjoKCkR1IG11c3N0IERpY2ggamV0enQgZW50c2NoZWlkZW4sIHdlbGNoZXIgUmFzc2UgRHUgaW4gZGllc2VyIFdlbHQgYW5nZWhvZXJlbgptb2VjaHRlc3QuIEFsbGUgUmFzc2VuIGhhYmVuIHZlcnNjaGllZGVuZSBWb3ItIHVuZCBOYWNodGVpbGUsIGluc2dlc2FtdCBhYmVyCmdsZWljaCBndXRlIENoYW5jZW4uIEF1Y2ggZGFzIFN0YXJ0Z2ViaWV0IGhhZW5ndCB2b24gZGVyIGF1c2dld2FlaGx0ZW4gUmFzc2UKYWIuIEltIE5vcm1hbGZhbGwga2FubiBkaWUgUmFzc2UgbmljaHQgbWVociBnZXdlY2hzZWx0IHdlcmRlbiwgbmFjaGRlbSBzaWUKZWlubWFsIGF1c2dld2FlaGx0IHd1cmRlLiBVZWJlcmxlZ2UgRGlyIERlaW5lIEVudHNjaGVpZHVuZyBhbHNvIGd1dC4gRGVyemVpdApzdGVoZW4gZm9sZ2VuZGUgUmFzc2VuIHp1ciBBdXN3YWhsOgogMS4gWndlcmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMi4gRWxmCiAzLiBGZWxpbmUgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0LiBIb2JiaXQKIDUuIE1lbnNjaCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKCkR1cmNoIEVpbmdhYmUgZWluZXIgWmlmZmVyIHdhZWhsc3QgRHUgZGllIFJhc3NlIGF1cywgZHVyY2ggRWluZ2FiZSBlaW5lcyAiPyIKZ2Vmb2xndCB2b24gZWluZXIgWmlmZmVyIGVyaGFlbHN0IER1IG5hZWhlcmUgSW5mb3JtYXRpb25lbiB1ZWJlciBlaW5lIFJhc3NlLgpFaW4gIj8iIGFsbGVpbiB3aWVkZXJob2x0IGRpZXNlIExpc3RlLgoKV2FzIHdpbGxzdCBEdSB0dW46IDUKT2ssIER1IGJpc3QgamV0enQgZWluIE1lbnNjaAoKRHUgbXVzc3QgRGljaCBqZXR6dCBlbnRzY2hlaWRlbiwgbWl0IHdlbGNoZXIgU3BpZWxlcnN0dWZlIER1IGluIGRhcyBTcGllbAplaW5zdGVpZ2VuIG1vZWNodGVzdC4gQml0dGUgYmVhY2h0ZSwgZGFzcyBEaXIsIGplIG5hY2ggU3R1ZmUsIGJlcmVpdHMgZWluZW4KVGVpbCBkZXIgQWJlbnRldWVyIHVuZCBkaWUgZGF6dWdlaG9lcmlnZW4gRm9yc2NoZXJwdW5rdGUgYWxzICdnZWxvZXN0JyBiencuCidnZWZ1bmRlbicgZ2VzZXR6dCB3ZXJkZW4uCgogMS4gU3BpZWxlciwgU3R1ZmUgMSAgICAgICAgICAgICAgIHwgICAyLiBTcGllbGVyLCBTdHVmZSAyMAogMy4gU3BpZWxlciwgU3R1ZmUgMzUgICAgICAgICAgICAgIHwgICA0LiBTZWhlciwgU3R1ZmUgNTAKIDUuIFNlaGVyLCBTdHVmZSAxMDAgICAgICAgICAgICAgICB8ICAgNi4gTWFnaWVyCgpEdXJjaCBFaW5nYWJlIGVpbmVyIFppZmZlciB3YWVobHN0IER1IGRpZSBTdHVmZSBhdXMsIGR1cmNoIEVpbmdhYmUgZWluZXMgIj8iCmdlZm9sZ3Qgdm9uIGVpbmVyIFppZmZlciBlcmhhZWx0c3QgRHUgbmFlaGVyZSBJbmZvcm1hdGlvbmVuIHVlYmVyIGVpbmUgU3R1ZmUuCkVpbiAiPyIgYWxsZWluIHdpZWRlcmhvbHQgZGllc2UgTGlzdGUuIEJlYWNodGUsIGRhc3MgRHUgZnVlciAiTWFnaWVyIiBlaW5lbgpWZXJ0cmFnc3RleHQgYWt6ZXB0aWVyZW4gbXVzc3QuCgpXYXMgd2lsbHN0IER1IHR1bjogNApPaywgRHUgYmlzdCBqZXR6dCBlaW4gU2VoZXIgbWl0IGVpbmVyIDEwMCVpZ2VuIEZsdWNodHJpY2h0dW5nLCA3NSUgYWxsZXIKQWJlbnRldWVycHVua3RlIHVuZCBuYXR1ZXJsaWNoIHZvbGxlbiBBdHRyaWJ1dGVuLgoKSmV0enQgbXVzc3QgRHUgRGljaCBlbnRzY2hlaWRlbiwgenUgd2VsY2hlciBHaWxkZSBEdSBnZWhvZXJlbiBtb2VjaHRlc3QuCkR1IHdpcnN0IGdsZWljaCBub2NoIGRpZSBNb2VnbGljaGtlaXQgaGFiZW4sIERlaW5lIEdpbGRlbmZhZWhpZ2tlaXRlbgphdWYgZWluZW4gRGlyIGdlbmVobWVuIFN0YXJ0d2VydCB6dSBzZXR6ZW4sIHpvZWdlcmUgYWxzbyBuaWNodCwgZWluZQphbnNwcnVjaHN2b2xsZSBHaWxkZSB6dSB3YWVobGVuLgoKIDEuIEFiZW50ZXVyZXIgICAgICAgICAgICAgICAgICAgICB8ICAgMi4gS2FyYXRlCiAzLiBDaGFvcyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQuIEhlaWxpZ2VyIE9yZGVuCi4uLi4KCgpOdXIgZmFsbHMgZWluZXIgbmljaHQgYmVncmlmZmVuIGhhdCwgd2FydW0gaWNoIEFyZWtzIEFyZ3VtZW50YXRpb24gbmljaHQKZm9sZ2VuIGthbm4uLi4gOykKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IGxlaHJsaW5nc2FuZm9yZGVydW5nZW46IGx2bCAyMD8gKE9ya3RvZXRlciwgMjMuIFNlcCAyMDAxLCAwMjo0OTowNSk6Cn4jISBybj1BbmF0b2wgcnQ9MTAwMTIwNDY5OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDEwOTE0OTQKSXN0IGRhcyBsb2dpbiBuZXU/IE9kZXIgaGFiZSBpY2ggZGFtYWxzIG51ciBldHdhcyB1ZWJlcmxzZW4/CgpPcmtULCBhbHQgdW50IHRhdHRyaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogbGVocmxpbmdzYW5mb3JkZXJ1bmdlbjogbHZsIDIwPyAoQW5hdG9sLCAyMy4gU2VwIDIwMDEsIDAyOjUwOjUyKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDAxMjA2MTQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTA5MTQ5NApOYWphLCBiZWkgbWFuY2hlbiBMZXV0ZW4gaGFiZSBpY2ggZGFzIEdlZnVlaGwsIGRhc3Mgc2llIGVpZ2VudGxpY2gKbWl0IDEwMCUgR2lsZGVuZmFlaGlna2VpdGVuIGhhZXR0ZW4gZWluc3RlaWdlbiBrb2VubmVuIC4uLi4gd2VpbCBzaWUKYXVmIGRlbSBXZWcgZG9ydGhpbiBvaG5laGluIG5pY2h0cyBnZWxlcm50IGhhYmVuLi4uIDspCgpTQ05SLiA7KQpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBsZWhybGluZ3NhbmZvcmRlcnVuZ2VuOiBsdmwgMjA/IChXdXJ6ZWwsIDIzLiBTZXAgMjAwMSwgMDQ6Mjc6MjApOgp+IyEgcm49QW5hdG9sIHJ0PTEwMDEyMDYyNTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxMDkxNDk0Cm5hdHVlcmxpY2ggaGFiZW4gc2llIGV0d2FzIGdlbGVybnQuIHp1bWluZGVzdGVucywgd2llIG1hbiBjbGllbnRzIGtvbmZpZ3VyaWVydAp1bmQgc2tyaXB0ZSBhbndpcmZ0LiBkaWUgYmVzc2VyZW4ga29lbm5lbiBzb2dhciBzZWxic3Qgc2tyaXB0ZSBwcm9ncmFtbWllcmVuLgptYW4gc29sbHRlIGRpZXNlbiBsZXV0ZW4gYWJlciB2aWVsbGVpY2h0IG1hbCBzYWdlbiwgZGFzcyBzaWUgenVtIGNoYXR0ZW4KbmljaHQgc28gdmllbCBjcHVsZWlzdHVuZyB2ZXJicmF0ZW4gbXVlc3NlbiwgZGFzIGdlaHQgYXVjaCBlaW5mYWNoZXIuCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBsZWhybGluZ3NhbmZvcmRlcnVuZ2VuOiBsdmwgMjA/IChNb250YW51cywgMjMuIFNlcCAyMDAxLCAwNjoyNDozMyk6Cn4jISBybj1XdXJ6ZWwgcnQ9MTAwMTIxMjA0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDEwOTE0OTQKbXVzcyBpY2ggbWljaCBqZXR6dCBzY2hhZW1lbiwgd2VpbCBpY2ggc2Nob24gbWl0IGtuYXBwIHVlYmVyIDEwMDAgQVAgU2VoZXIKd2VyZGVuIGthbm4/IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IGxlaHJsaW5nc2FuZm9yZGVydW5nZW46IGx2bCAyMD8gKE5vbm5lLCAyMy4gU2VwIDIwMDEsIDA5OjE4OjMzKToKfiMhIHJuPUFuYXRvbCBydD0xMDAxMjA0Njk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTA5MTQ5NApEYWZ1ZXIhIERhbm4gc3BpZWxlIGljaCBoaWVyIGF1Y2ggd2llZGVyIGFiIHVuZCBhbiAoYzsKCk5vbm5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IGxlaHJsaW5nc2FuZm9yZGVydW5nZW46IGx2bCAyMD8gKFpvb2ssIDIzLiBTZXAgMjAwMSwgMTI6MTc6NDYpOgp+IyEgcm49QW5hdG9sIHJ0PTEwMDEyMDQ2OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxMDkxNDk0ClVuZCBpY2ggZGFjaHRlIGltbWVyLCB1bSBTZWhlciB6dSB3ZXJkZW4sIGJyYWV1Y2h0ZSBtYW4gODAgdi5ILiBkZXIgCkFiZW50ZXVlcnB1bmt0ZSBvZGVyIGhhYiBpY2ggZGEgd2FzIGdlYWVuZGVydD8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogbGVocmxpbmdzYW5mb3JkZXJ1bmdlbjogbHZsIDIwPyAoR3JpbW1ib3JuLCAyMy4gU2VwIDIwMDEsIDEyOjIxOjE5KToKfiMhIHJuPVpvb2sgcnQ9MTAwMTI0MDI2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDEwOTE0OTQKTmVpbiwgRHUgaGFzdCBlYmVuIGdlcmFkZSBuaWNodHMgZ2VhZW5kZXJ0LiBKdW5nc3B1bmQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBsZWhybGluZ3NhbmZvcmRlcnVuZ2VuOiBsdmwgMjA/IChab29rLCAyMy4gU2VwIDIwMDEsIDEyOjIyOjAxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDAxMjQwNDc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTA5MTQ5NApBY2g/IAoKWm9vayB2ZXJmb2xndCBkZW4gVGhyZWFkIG51ciBoYWxiaGVyemlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IGxlaHJsaW5nc2FuZm9yZGVydW5nZW46IGx2bCAyMD8gKFZhcmxhcmlvbiwgMjMuIFNlcCAyMDAxLCAxMjoyMjozOSk6Cn4jISBybj1ab29rIHJ0PTEwMDEyNDAyNjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxMDkxNDk0CjgwJSBkZXIgcGZsaWNodC1BUCB1bmQgbmljaHQgODAlIGRlciBnZXNhbXQtQVAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBsZWhybGluZ3NhbmZvcmRlcnVuZ2VuOiBsdmwgMjA/IChHcmltbWJvcm4sIDIzLiBTZXAgMjAwMSwgMTI6MjI6NTcpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMDEyNDA1NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxMDkxNDk0ClVuZCBzZWxic3QgZGFzIG51ciBmdWVyIG5ldSBlaW5nZWxvZ2d0ZSBDaGFyYWt0ZXJlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogbGVocmxpbmdzYW5mb3JkZXJ1bmdlbjogbHZsIDIwPyAoWm9vaywgMjMuIFNlcCAyMDAxLCAxMjoyMzo1Myk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwMTI0MDU3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDEwOTE0OTQKQWgsIGpldHp0IG11c3N0ZSBpY2ggQW5hdG9scyBBcnRpa2VsIGRvY2ggbm9jaCBlaW5tYWwgbGVzZW4uIFN0aW1tdCwgZGEKc3RlaHQgImFsbGVyIEFiZW50ZXVlcnB1bmt0ZSIuIEFiZXIgQW5hdG9sLCBpc3QgZGFubiBkb3J0IGF1Y2ggQXJjaGl0ZWt0Cm1pdCBkcmluIG9kZXIgZWhlciBuaWNodD8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogbGVocmxpbmdzYW5mb3JkZXJ1bmdlbjogbHZsIDIwPyAoVmFybGFyaW9uLCAyMy4gU2VwIDIwMDEsIDEyOjI0OjE1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDAxMjQwNTc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTA5MTQ5NApvYndvaGwgZXMgbWFsIG5lIGlkZWUgd2FlcmUsIGZ1ZXIgZGVuIHdlcnQgaW0gJ2luZm8nIGRpZSBnZXNhbXQtQVAgenUKbmVobWVuLi4uIHNpZWh0IGV0d2FzIG1lcmt3dWVyZGlnIGF1cywgd2VubiBtYW4gbWVociBBUCBoYXQsIGFscyBlcyBnaWJ0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogbGVocmxpbmdzYW5mb3JkZXJ1bmdlbjogbHZsIDIwPyAoWm9vaywgMjMuIFNlcCAyMDAxLCAxMjoyNDo0MSk6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTAwMTI0MDY1NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDEwOTE0OTQKSWNoIGhhYiBudXIgMjE0MSB2b24gMjUxMiBBYmVudGV1ZXJwdW5rdGVuLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBsZWhybGluZ3NhbmZvcmRlcnVuZ2VuOiBsdmwgMjA/IChWYXJsYXJpb24sIDIzLiBTZXAgMjAwMSwgMTI6MjU6MjEpOgp+IyEgcm49Wm9vayBydD0xMDAxMjQwNjgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTA5MTQ5NAprbGFyLCBmdWVyIHphdWJpZXMgc2luZCBhcmNoaXRla3QgdW5kIGluZmVybm8gbWl0IGRyaW4sIGRhcyBzaW5kIGphCmFuZm9yZGVydW5nZW4gZnVlciBnbHZsIDkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBsZWhybGluZ3NhbmZvcmRlcnVuZ2VuOiBsdmwgMjA/IChOb25uZSwgMjMuIFNlcCAyMDAxLCAxMjoyNToyMyk6Cn4jISBybj1ab29rIHJ0PTEwMDEyNDA2ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxMDkxNDk0CldBUz8/PyBEdSBoYXN0IGFscyBRdWVzdC1FTSBuaWNodCBhbGxlIFF1ZXN0IGdlc3BpZWx0PyBOYSBkYW5uIG1hbCBob3BwLCBob3BwCipnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IGxlaHJsaW5nc2FuZm9yZGVydW5nZW46IGx2bCAyMD8gKFpvb2ssIDIzLiBTZXAgMjAwMSwgMTI6MjU6NTYpOgp+IyEgcm49Tm9ubmUgcnQ9MTAwMTI0MDcyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDEwOTE0OTQKTW9vb29tZW50LCBBUHMgbmljaHQgYmVrb21tZW4gdW5kIG5pY2h0IGdlc3BpZWx0IGlzdCB3YXMgdW50ZXJzY2hpZWRsaWNoZXMuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IGxlaHJsaW5nc2FuZm9yZGVydW5nZW46IGx2bCAyMD8gKEdyaW1tYm9ybiwgMjMuIFNlcCAyMDAxLCAxMjoyNjo1MCk6Cn4jISBybj1ab29rIHJ0PTEwMDEyNDA3NTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxMDkxNDk0Cldlbm4gZGVtIHNvIGlzdCBpc3QgZGFzIHZvciBhbGxlbSBlaW5zOiBFaW4gR3J1bmQgZGVuIERlYnVnZ2VyIGFuenV3ZXJmZW4uCgpHcmltbSJqZWRlbSBRdWVzdGVyIHNlaW5lIFB1bmt0ZSEiYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IGxlaHJsaW5nc2FuZm9yZGVydW5nZW46IGx2bCAyMD8gKFpvb2ssIDIzLiBTZXAgMjAwMSwgMTI6Mjc6MzApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDEyNDA4MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxMDkxNDk0ClRzY2hhLi4uIHdlbm4gaWNoIGRpZSBRdWVzdHMgc3BpZWxlLCBnaWJ0J3MgbWVpc3RlbnMgbm9jaCBrZWluZSAKQWJlbnRldWVycHVua3RlLiBEaWUgbXVzcyBkZXIgTWFnaWVyIGRhbmFjaCBtaXIgZXJzdCBlaW5tYWwgYWJyaW5nZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IGxlaHJsaW5nc2FuZm9yZGVydW5nZW46IGx2bCAyMD8gKEdyaW1tYm9ybiwgMjMuIFNlcCAyMDAxLCAxMjoyOToyOCk6Cn4jISBybj1ab29rIHJ0PTEwMDEyNDA4NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxMDkxNDk0CklyZ2VuZHdpZSB2ZXJzdHJpY2tzdCBEdSBEaWNoIGluIG5pY2h0IHNlaHIgZ2xhdWJ3dWVyZGlnZSB1bmQgemllbWxpY2gKZHVyY2hzaWNodGlnZSBBcmd1bWVudGF0aW9uZW4uIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMjogbGVocmxpbmdzYW5mb3JkZXJ1bmdlbjogbHZsIDIwPyAoWm9vaywgMjMuIFNlcCAyMDAxLCAxMjozMDoxMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwMTI0MDk2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDEwOTE0OTQKWm9vayBzdHJpY2t0IG5pY2h0LiBTY2hvbiBnYXIga2VpbmUgQXJndW1lbnRhdGlvbmVuLCBob2VjaHN0ZW4gU29ja2VuCmZ1ZXIgZGVuIFdpbnRlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMzOiBsZWhybGluZ3NhbmZvcmRlcnVuZ2VuOiBsdmwgMjA/IChOb25uZSwgMjMuIFNlcCAyMDAxLCAxMjozMjozNSk6Cn4jISBybj1ab29rIHJ0PTEwMDEyNDEwMTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxMDkxNDk0Ck9oaCwgc3RyaWNrc3QgRHUgbWlyIGRhbm4gYXVjaCB3ZWxjaGU/IE1laW5lIEdyb3NzbXV0dGVyIGlzdCBqYSBsZWlkZXIgdm9yIGVpbgpwYWFyIEphaHJlbiB2ZXJzdG9yYmVuLCBudSBrcmllZ2UgaWNoIHNvbnN0IGtlaW5lIFNvY2tlbiBtZWhyIGdlc3RyaWNrdCAoYzsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM0OiBsZWhybGluZ3NhbmZvcmRlcnVuZ2VuOiBsdmwgMjA/IChab29rLCAyMy4gU2VwIDIwMDEsIDEyOjMzOjU1KToKfiMhIHJuPU5vbm5lIHJ0PTEwMDEyNDExNTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxMDkxNDk0Clpvb2sga2VocnQgZGVtIFRocmVhZCBkZW4gUnVlY2tlbiB1bmQgYWJzZW50aWVydCBzaWNoIGluIGRlbiAKZWlnZW50bGljaGVuIFRocmVhZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBsZWhybGluZ3NhbmZvcmRlcnVuZ2VuOiBsdmwgMjA/IChMaWFyYSwgMjMuIFNlcCAyMDAxLCAxMjozNToxMSk6Cn4jISBybj1ab29rIHJ0PTEwMDEyNDA4NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxMDkxNDk0Cjp3ZWRlbHQgbWl0IGVpbmVtICdBUCBmdWVyIFpvb2snIC0gRmFlaG5jaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IGxlaHJsaW5nc2FuZm9yZGVydW5nZW46IGx2bCAyMD8gKEh1bW5pLCAyMy4gU2VwIDIwMDEsIDEyOjQxOjEzKToKfiMhIHJuPUxpYXJhIHJ0PTEwMDEyNDEzMTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxMDkxNDk0Cldlbm4gaWhyIGVzIHNjaGFmZnQsIGRpZXNlbiBUaHJlYWQgYXVmIFJlXjEwMDAwIHp1IGtyaWVnZW4sIGtyaWVnZW4gd2lyIGVpbmVuCm5ldWVuIE11ZGdvdHQuCgpIdW1uaSwgVmVyc2Nod29lcnVuZ3N0aGVvcmV0aWtlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMzOiBsZWhybGluZ3NhbmZvcmRlcnVuZ2VuOiBsdmwgMjA/IChBbmF0b2wsIDIzLiBTZXAgMjAwMSwgMTM6NDg6MDEpOgp+IyEgcm49SHVtbmkgcnQ9MTAwMTI0MTY3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDEwOTE0OTQKSmE/IEhhdXQgZGFubiBSdW1hdGEgYWI/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHb3R0bG9lc2UgRnJlZmxlciAoR29yb2csIDIzLiBTZXAgMjAwMSwgMTQ6MDA6MTQpOgogcHJhZXNlbnogbm9yZGVuCkVpbiBXYWVjaHRlciBzYWd0OiBLYXBpZXJzdCBkdSBkYXM/IERVIEJMRUlCU1QgSElFUiEhIQpMZWlkZXIga2FubiBMZW1ib2xkIG5pY2h0IGluIGRpZXNlIFJpY2h0dW5nIGJsaWNrZW4uCgpHb3R0bG9zZSBGcmVmbGVyLCBsYXNzZW4gbmljaHRtYWwgZGVuIEJsaWNrIGVpbmVzIEdvdHRlcyBwYXNzaWVyZW4hCgpHb3JvZyBtdWVycmlzY2ggdW56dWZyaWVkZW4gdW5kIG1pdCBndXRlciBMdXNzdCBLb2VwcGUgZWluenVzY2hsYWdlbi4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHb3R0bG9lc2UgRnJlZmxlciAoWm9vaywgMjMuIFNlcCAyMDAxLCAxNDowNDowOCk6Cn4jISBybj1Hb3JvZyBydD0xMDAxMjQ2NDE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTI0NjQxNApab29rIHJlaWJ0IHNpY2ggc2NobXVuemVsbmQgZGllIEhhZW5kZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR290dGxvZXNlIEZyZWZsZXIgKEdvcm9nLCAyMy4gU2VwIDIwMDEsIDE0OjA1OjIwKToKfiMhIHJuPVpvb2sgcnQ9MTAwMTI0NjY0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDEyNDY0MTQKRGVyIFdpdHogaXMsIGljaCBkdXJmdGUgcGFzc2llcmVuICg7CgpHb3JvZyB3aWVkZXIgYmVydWhpZ3QsIGFiZXIgaW1tZXIgbm9jaCBlaW53ZW5pZyBtdWVycmlzY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTogbGVocmxpbmdzYW5mb3JkZXJ1bmdlbjogbHZsIDIwPyAoTXVwZmVsLCAyMy4gU2VwIDIwMDEsIDE2OjEwOjU1KToKfiMhIHJuPVpvb2sgcnQ9MTAwMTI0MDg1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDEwOTE0OTQKbmEga2xhciwgYmVpIGluZmVybm8gdW5kIGFyY2hpIHdhciBkYXMgYXVjaCBzY2hvbiBzbywgbmEga2xhciwgdHJhZXVtIHdlaXRlcgo7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBsZWhybGluZ3NhbmZvcmRlcnVuZ2VuOiBsdmwgMjA/IChWYW5pb24sIDIzLiBTZXAgMjAwMSwgMTY6NTA6MjgpOgp+IyEgcm49QW5hdG9sIHJ0PTEwMDEyMDQ2OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxMDkxNDk0CldhcyBpY2ggamV0enQgbmljaCB2ZXJzdGFuZGVuIGhhYiwgaXMgd2FydW0gZHUgbmVuIEw1MCBTZWhlciBnZW5vbW1lbiBoYXN0IHVuZAprZWluZW4gTDEwMC1TZWhlciA6KQoKViosIHNjaG1hcnJudC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldGRpZ2VzdCAoRm9vYmFyLCAyMy4gU2VwIDIwMDEsIDIxOjQ1OjU3KToKCkZyb206ICJWb2xrZXIgR3JpbmdtdXRoIiA8bmV3cy1mdXBzQHZvbGtlci1ncmluZ211dGguZGU+Ck5ld3Nncm91cHM6IGRlLmNvbW0uc29mdHdhcmUubmV3c3JlYWRlcgpTdWJqZWN0OiBSZTogSGlsZmUhIEthbm4gRW1haWxzIG5pY2h0IG1laHIgbG9lc2NoZW4hCk1lc3NhZ2UtSUQ6IDw5bzg5bm4uM3Z2ODUzZC4xQG5ld3MwMS52b2xrZXItZ3JpbmdtdXRoLmRlPgoKQ2hyaXN0aWFuIEtsdWcgKGNocmlzQGVqLXNjaHdlaW5mdXJ0LmRlKSB3cm90ZToKCj4gaXJnZW5kbmUgTWlyY29zY2hyb3R0LU5HIHVlYmVyIE9qRSBnaWJ0J3MgbmljaHQ/CgpEb2NoLgpTaWUgaGF0IGRlbiBzY2hvZW5lbiBsZWljaHQgenUgbWVya2VuZGVuIE5hbWVuCgogIG5ld3M6bWljcm9zb2Z0LnB1YmxpYy5kZS5nZXJtYW4uaW5ldGV4cGxvcmVyLmllNi5vdXRsb29rZXhwcmVzcwoKKGRhcyAiZ2VybWFuIiBhbHMgRXJrbGFlcnVuZyBmdWVyIGRhcyAiZGUiIHdhciBJSVJDIG5vZXRpZywgd2VpbCBzaWNoCnZpZWxlIHZlcmlycnRlIFVTLUFud2VuZGVyIHVlYmVyIGRpZSB1bmxlc2VybGljaGVuIFBvc3RpbmdzCmJlc2Nod2VydGVuLi4uKQoKV2lzc2Vuc3dlcnRlcyB6dSBtJC5BTEw6IE1hbiBicmF1Y2h0IHZvbiBqZWRlbSBUaHJlYWQgaW1tZXIgbnVyIGRhcwpsZXR6dGUgUG9zdGluZyB6dSBsZXNlbiwgd2VpbCBkb3J0IGFscyBUT0ZVIGRpZSBrb21wbGV0dGUgYmlzaGVyaWdlCkRpc2t1c3Npb24gc2Nob24gZHJhbmhhZW5ndC4KCnZHCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBMZXZlbGFuZm9yZGVydW5nZW4gKFpvb2ssIDI0LiBTZXAgMjAwMSwgMTA6NTA6MTUpOgp+IyEgcm49UGF0cnluIHJ0PTEwMDEzMDg1MjYgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTAwMTIzMDk0NQpGaW5kZXQgc2ljaCBkYSBpbiBkZXIgTmFlaGUgZGVzIFdvcnRlcyAiZXJkcm9zc2VsbiIgZWluIGZyZXVkc2NoZXIKVmVydGlwcGVyPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMzOiBsZWhybGluZ3NhbmZvcmRlcnVuZ2VuOiBsdmwgMjA/IChCb2luZywgMjQuIFNlcCAyMDAxLCAxMToyOTozMyk6Cn4jISBybj1IdW1uaSBydD0xMDAxMjQxNjczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTA5MTQ5NApIdXBwcyAuLi4gdW5kIGljaCBkYWNodGUgZGVuIFp1c2FtbWVuaGFuZyBoYWV0dGUgbmllbWFuZCBiZW1lcmt0IC4uLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogbGVocmxpbmdzYW5mb3JkZXJ1bmdlbjogbHZsIDIwPyAoQXJrLCAyNC4gU2VwIDIwMDEsIDE0OjQ3OjIwKToKfiMhIHJuPVpvb2sgcnQ9MTAwMTI0MDI2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDEwOTE0OTQKU2VoZXIgYmlzdCBEdSBlcnN0IGRhbm4sIHdlbm4gRHUgZXMgImdlc2NoYWZmdCIgaGFzdC4gRFUgaGF0dGVzdCBlcyBuaWUgc293ZWl0CmdlYnJhY2h0LCBzb25zdCB3YWVyc3QgRHUgbmljaHQgc28gZml4IE1hZ2llciBnZXdvcmRlbi4gRGVpbiBBYnN0aWVnIHp1bSBHb3R0CndhciBiZWkgRGVpbmVyIGdlc3RvZXJ0ZW4gUGVyc29lbmxpY2hrZWl0ICgiaGlsZnJlaWNoIHNlaW4iLCAiVmVyc3RhZW5kbmlzCmRlbW9uc3RyaWVyZW4iIHVuZCB3ZWl0ZXJlIFBlcnZlcnNsaWNoa2VpdGVuKSBzb3dpZXNvIHVudmVybWVpZGJhci4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEJpZWxlZmVsZCwgMjQuIFNlcCAyMDAxLCAxNTozNzozOCk6Ck1vc2VzIHRlaWx0IERpciBtaXQ6IHdvenUgZ2lidCBlcyBzZWxic3Rtb3JkendlaXRpcyA6KQouLi53ZW5pZyBzcGFldGVyLi4uCltUb2Q6TGFyc10gRWluIFdhZWNodGVyIGRlciBad2VyZ2VuZmVzdHVuZyBoYXQgZ2VyYWRlIE1vc2VzIHVtZ2VicmFjaHQuCgpBaGphLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogTGV2ZWxhbmZvcmRlcnVuZ2VuIChBbmF0b2wsIDI0LiBTZXAgMjAwMSwgMTc6MDU6NTUpOgp+IyEgb249QW5hdG9sIG90PTEwMDEzNDM5NDcgb2c9Z2lsZGVuLnphdWJlcmVyCn4jISBybj1BbmFjcmlvbiBydD0xMDAxMzQzOTI3IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTEwMDEyMzA5NDUKRHUgc2NoYXVzdCB0aWVmIGluIGRpZSBLdWdlbCwgbGFuZ3NhbSBsb2VzdCBzaWNoIGRlciBtaWxjaGlnZSBSYXVjaCBpbgppaHIgdW5kIER1IHNpZWhzdCA6CkR1IGJpc3QgbnVuIGF1ZiBkZW0gV2VnIHp1ciBTdGFkdC4gQW0gV2VnZXNyYW5kIHN0ZWhlbiBodWVic2NoZSBCbHVtZW4uIER1CmZyZXVzdCBEaWNoIHNjaG9uIGluIGRpZSBTdGFkdCB6dSBrb21tZW4sIGRpZSBpbSBOb3JkZW4gdm9yIERpciBsaWVndC4gRHUKa2FubnN0IHZvbiBoaWVyIGRhcyBncm9zc2UgU3RhZHR0b3IgdW5kIHp3ZWkgU3RhdHVlbiBzZWhlbiwgZGllIG5lYmVuIGRlbSBUb3IKc3RlaGVuLiBTaWUgc2NoZWluZW4gZGFzIFRvciBpcmdlbmR3aWUgenUgYmV3YWNoZW4uIEVzIHNpZWh0IGZhc3Qgc28gYXVzLCBhbHMKd3VlcmRlbiBzaWUgRGljaCBiZW9iYWNodGVuLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KW1JpdHRlciB2b24gTWVsb3JhbjpdIEZleSBBbmFjcmlvbiBkZXIgU2NoZXJ6bWFnaXN0ZXIgKElkbGUpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1TIFN0YVRpIDI1LjA5LjAxIChIdW1uaSwgMjQuIFNlcCAyMDAxLCAxNzowODo1Mik6Cn4jISBybj1Gb29iYXIgcnQ9MTAwMTM0NDAwOSByZz10cmVmZmVuCn4jISB0aWQ9MTAwMTM0NDAwOQogLHdpZGVyIGVyd2FydGVuJyAqcHJ1c3QqCldhcnQgaWhyIGV0d2Egbm9jaCBuaWUgZGE/CgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogZXJzY2h1ZXR0ZXJuZC4uLiAoQW5hY3Jpb24sIDI0LiBTZXAgMjAwMSwgMTg6NDQ6MTcpOgp+IyEgcm49Qm9pbmcgcnQ9MTAwMTM0ODAyMSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAwMDI0NzAxMApIZWhlIDpvKQoKYW5hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmUgTGFuemUgZnVlcnMgcXVlc3Rlbi4uLiAoTGlhcmEsIDI1LiBTZXAgMjAwMSwgMDA6MTI6NDIpOgp+IyEgcm49TGlhcmEgcnQ9MTAwMTM2OTM4OSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAwMTM2ODcwNApWYXJsYXJpb24gdGVpbHQgRGlyIG1pdDogc2Nod2ltbWUgbmFjaCBvc3Rlbiwgc2Nod2ltbWUgbmFjaCBvc3Rlbi4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IExldmVsYW5mb3JkZXJ1bmdlbiAoRm9vYmFyLCAyNS4gU2VwIDIwMDEsIDEwOjMyOjQ4KToKfiMhIHJuPVZhcmRpb24gcnQ9MTAwMTM2NzcwNiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAwMTIzMDk0NQpEZWluIFF1ZXN0dG9vbCB0ZWlsdCBEaXIgbWl0OiBHZWgnIG1hbCBuYWNoIE5vcmRlbiB1bmQgZnJhZycKRGVpbiBRdWVzdHRvb2wgdGVpbHQgRGlyIG1pdDogZGVuIE5QQyBkb3J0IG5hY2ggIkhpbGZlIi4KClNDTlIsIEZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IGxlaHJsaW5nc2FuZm9yZGVydW5nZW46IGx2bCAyMD8gKERyb2dvLCAyNS4gU2VwIDIwMDEsIDE1OjUxOjUzKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDAxMjA2MTQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTA5MTQ5NAoxMCBBbnplaWNoZW4gZGFmdWVyLCBkYXNzIER1IHp1dmllbCBtdWRkZXN0OgouLi4KMTEuIER1IHNjaHJlaWJzdCAndW5kJyBtaXQgJ3QnCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS3VocG93ZXI/IChOb25uZSwgMjUuIFNlcCAyMDAxLCAyMDoxODowNik6CkJyb3RuYWVsIHN0ZWxsdCBzaWNoIGF1ZiBhbGxlIHNlaW5lIHZpZXIgUGZvdGVuIHVuZCBicnVlbGx0OiBNVUghISEKQnJvdG5hZWwgc2NobGFlZ3QgU0FUQU4genUgQnJlaS4KU0FUQU4gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KW01vZXJkZXI6R2Vpc3QgU0FUQU5zXSBBYWFhYWFoaGhoaGhoaGhoaGhoaC4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqa2ljaGVyKiAoTm9ubmUsIDI1LiBTZXAgMjAwMSwgMjE6MDk6NDgpOgpBdXMgZWluZW0gUG9zdGluZyBpbSBGb3J1bSB6dW0gSGVpc2UtTmV3c3RpY2tlcjoKVGhlZmlyc3Rwcm9kdWN0eW91Z2V0ZnJvbU1pY3Jvc29mdHRoYXRkb2Vzbid0c3Vja2lzCiAgd2hlbnRoZXlzdGFydHNlbGxpbmd2YWN1dW1jbGVhbmVycy4uLjstKQoKbGFjaGVuZApOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqa2ljaGVyKiAoVmFybGFyaW9uLCAyNS4gU2VwIDIwMDEsIDIxOjEwOjM2KToKfiMhIHJuPU5vbm5lIHJ0PTEwMDE0NDQ5ODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxNDQ0OTg4CmF1Y2ggd2VubiBkdSBqZXR6dCBsZWVyemVpY2hlbiBlaW5mdWVnc3QsIGRhcyBtYWNodCBkZW4gd2l0eiBhdWNoIG5pY2h0CmJlc3Nlci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAqa2ljaGVyKiAoR3JpbW1ib3JuLCAyNS4gU2VwIDIwMDEsIDIxOjExOjE4KToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDAxNDQ1MDM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTQ0NDk4OApVbmQgaWNoIHNhY2ggbm9jaCwgd2lyIGJyYXVjaGVuIGVpbmUgUnVicmlrIHdpdHplLnVyYWx0LnVud2l0emlnLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICpraWNoZXIqIChOb25uZSwgMjUuIFNlcCAyMDAxLCAyMToxMToyMCk6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTAwMTQ0NTAzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDE0NDQ5ODgKT2theSwgZGFubiBsYXNzIGljaCBkaWUgd2VnLiBBYmVyIEh1bW9yIGtvZW5udGVzdCBEdSBEaXIgdmllbGxlaWNodCBtYWwKenVsZWdlbiAoYzsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6ICpraWNoZXIqIChWYXJsYXJpb24sIDI1LiBTZXAgMjAwMSwgMjE6MTI6NDIpOgp+IyEgcm49Tm9ubmUgcnQ9MTAwMTQ0NTA4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDE0NDQ5ODgKVmFybGFyaW9uIG5pY2t0IEdyaW1tYm9ybiB3aWxkIHp1LgoKVmFybCosIGh1bW9ybG9zIHdpZSBpbW1lciB1bmQgc3RvbHogZGFyYXVmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAqa2ljaGVyKiAoR3JpbW1ib3JuLCAyNS4gU2VwIDIwMDEsIDIxOjEzOjAxKToKfiMhIHJuPU5vbm5lIHJ0PTEwMDE0NDUwODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxNDQ0OTg4Ckh1bW9yPyBTaWNoZXIuIER1IHdpbGxzdCBNaWNyb3NvZnQgYmFzaGluZz8gS2VpbiBQcm9ibGVtOgoKTWljcm9zb2Z0IGlzIG5vdCB0aGUgQm9yZyBjb2xsZWN0aXZlLiBUaGUgQm9yZyBjb2xsZWN0aXZlIGhhcyBnb3QKcHJvcGVyIG5ldHdvcmtpbmcuCgpJY2ggYmV3dW5kZXJlIFdpbmRvd3MgVXNlciEKTWl0IHNhZ2VuaGFmdGVyIEdlZHVsZCB2b2xsYnJpbmdlbiBzaWUgaW1tZXIgd2llZGVyIGVyc3RhdW5saWNoc3RlCktsaW1tenVlZ2UsIHVtIGVpbmZhY2hzdGUgU2FjaGVuIHp1IGVybGVkaWdlbiEKCiJPbmUgd29ybGQsIE9uZSB3ZWIsIE9uZSBwcm9ncmFtIiAtIE1pY3Jvc29mdCBwcm9tb3Rpb25hbCBhZAoiRWluIFZvbGssIEVpbiBSZWljaCwgRWluIEZ1ZWhyZXIiIC0gQWRvbGYgSGl0bGVyCgpHaXZlbiBpbmZpbml0ZSB0aW1lLCAxMDAgbW9ua2V5cyBjb3VsZCB0eXBlIG91dCB0aGUgY29tcGxldGUgd29ya3Mgb2YKU2hha2VzcGVhcmUuCldpbiA5OCBzb3VyY2UgY29kZT8gRWlnaHQgbW9ua2V5cywgZml2ZSBtaW51dGVzLgoKV2luZG93cyA5OCAtIEVjaHRlcyBXSU5FIEZlZWxpbmcgamV0enQgYXVjaCB1bnRlciBET1MuCgoKR2RBICpnYWVobioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5lIExhbnplIGZ1ZXJzIHF1ZXN0ZW4uLi4gKExpYXJhLCAyNi4gU2VwIDIwMDEsIDAxOjIwOjAxKToKfiMhIHJuPUthcmlzIHJ0PTEwMDEzNjk4NjIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMDEzNjg3MDQKRHUgLi4uLiBEdXV1dSAuLiBEVSBLb3JpbnRoZW5rYWNrZXIsIER1ISA6LSkKV2FydGVzdCBiaXMgaWNoIHdlY2ggYmluIHVuZCBzY2hyZWlic3QgZGFubiBkb2NoIGVpbmVuIEFydGlrZWwgLi4uIDstKQoKWlpMQiAqbGFlY2hlbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6ICpraWNoZXIqIChNYXJjdXMsIDI2LiBTZXAgMjAwMSwgMTE6MDk6NDkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDE0NDUxODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxNDQ0OTg4Cj4gV2luZG93cyA5OCAtIEVjaHRlcyBXSU5FIEZlZWxpbmcgamV0enQgYXVjaCB1bnRlciBET1MuCgoqZ3J1bW1lbCoKCkNpYW8sIE1hcmN1cyAoV0lORSBjb3JlIGRldmVsb3BlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVy4uLiAoUmVhcGVyLCAyNi4gU2VwIDIwMDEsIDE0OjM5OjQyKToKPiBEYXJrd2luZyBzYWd0OiBtb20gbXVzcyBtYWwgZ2VycmFkZSBlbGFpbmUgaGVsZmVuCkR1IG5pY2tzdCB6dXN0aW1tZW5kLgpEYXJrd2luZyB2ZXJmb2xndCBzZWluZW4gVmVyc3RhbmQgZmx1Y2hlbmQgbmFjaCB1bnRlbi4KW1RvZDpMYXJzXSBEYXMgT2doYW0gZGVyIFZlcm5pY2h0dW5nIGhhdCBnZXJhZGUgRGFya3dpbmcgdW1nZWJyYWNodC4KClJlYXBlciwgYXVjaCBqZWRlcnplaXQgc3Rlcl5oXmheaF5oaGlsZnNiZXJlaXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5pa29sYXVzZmV0ZSBhdWZzIE5ldWUgIChab29rLCAyNi4gU2VwIDIwMDEsIDE4OjI2OjE2KToKfiMhIG9uPVpvb2sgb3Q9MTAwMTUyMTU2NCBvZz1wYXJ0eQp+IyEgcm49UGl6emFwZXBlIHJ0PTEwMDE1MjE1MDQgcmc9cGFydHkKfiMhIHRpZD0xMDAwNTAwMTQzCiJoYXQgYXVmc3RlbGxlbiBsYXNzZW4iIHRyaWZmdHMgd29obCBlaGVyIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogKmtpY2hlciogKEdub21lLCAyNi4gU2VwIDIwMDEsIDIyOjU3OjI3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDAxNDQ1MTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTQ0NDk4OApmYWxzY2hlIHJ1YnJpaywgZ3JpbW1pLgphbmQgYnR3OiBudXIgd2VpbCBlaW4gcmVudG5lciBzY2hvbiBhbGxlIHdpdHplIGtlbm50LCBtdWVzc2VuIGRvY2ggbmljaHQKZ2xlaWNoIGFsbGUgYW5kZXJlbiBzaWUgYXVjaCBrZW5uZW4uLi4gaW1tZXIgZGllc2UgaWdub3JhbnouCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IGtlaW4gdGl0ZWwgKEdub21lLCAyNi4gU2VwIDIwMDEsIDIyOjU5OjQ0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDAxNDI4MzE2IHJnPXd3dwp+IyEgdGlkPTEwMDE0MTUxNTcKZGEgaXNzbiB0eXBvIGRyaW4sIGdyaW1taS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBrZWluIHRpdGVsIChHbm9tZSwgMjYuIFNlcCAyMDAxLCAyMzowMTowOSk6Cn4jISBybj1BbmF0b2wgcnQ9MTAwMTQyODM2OSByZz13d3cKfiMhIHRpZD0xMDAxNDE1MTU3CndhcnVtIGRlbm4/IFNPIHNjaGxlY2h0IHNpZWh0IHNpZSBkb2NoIG51biB3aXJrbGljaCBuaWNodCBhdXMuCi4uLnp1bWluZGVzdCB1bnRlcmhhbGIgZGVzIGhhbHNlcy4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjoga2VpbiB0aXRlbCAoS2FyaXMsIDI2LiBTZXAgMjAwMSwgMjM6MjA6MDApOgp+IyEgcm49R25vbWUgcnQ9MTAwMTUzODA2OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDE0MTUxNTcKRHUgbWVpbnN0IGFiZXIgbmljaCBkYXMgRm90bywgYXVmIGRlbSBzaWUgYXVmIGRlbSBLb3BmIHN0ZWh0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmFtb3VzIGxhc3Qgc3RlcCAoVmFyZGlvbiwgMjcuIFNlcCAyMDAxLCAwMDoyODozMyk6CkJpcmR5IGtvbW10IGRlbiBCZXJnIGhlcnVudGVyZ2VzdGFwZnQuCkJpcmR5IGZsaWVndCBuYWNoIFN1ZWR3ZXN0ZW4uCltUb2Q6TGFyc10gVm9lbGxpZ2UgRXJzY2hvZXBmdW5nIGhhdCBnZXJhZGUgQmlyZHkgdW1nZWJyYWNodC4KW1RvZDpCaXJkeV0gV2VubiBpY2ggbWVpbmVuIFdhcm9rc2tpbGwgYXVmIDEwMCUgaGFiZSwgaGFiIGljaCBrZWluZSBFUHMgbWVoci4KW1RvZDpCaXJkeV0gKmdydW1tZWwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgogQ2xhc3MgZGFlbW9uID8gKFB1aywgMjcuIFNlcCAyMDAxLCAwMTowNTo0Nyk6CkR1IGhlYnN0IGRpZSBBcm1lIGVtcG9yIHVuZCB3aXJmc3QgdWViZWxzdGUgV29ydGUgZ2VnZW4gZWluZW4gT3JrLgpEaWUgSGFhcmUgRGVzIE9ya3Mgc2Nod2FlY2hlbiBEZWluZSBXYWZmZS4KRHUgLS0tLS0tLS0tLWRlbiBPcmstLS0tLS0tLS0tLS0tLS0+IEtSQUNIRU4gQlJFQ0hFTkRFUiBLTk9DSEVOCgpQdWssIGxlcm50IG5pZSBhdXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzbyBpc3RzIGJyYXYgKFZhcmxhcmlvbiwgMjcuIFNlcCAyMDAxLCAwMjowMToyNyk6CiAgLi4uLi5DaGFvcy9GZXVlcitQZWl0c2MgRHUuLi4uLi4uLi4uLiA6IE11bWllLi4uLi4uLi4gKioqKioqKiogLT4KemVyc3RhZXVidApEaWUgTXVtaWUgemVyZmFlbGx0IHp1IFN0YXViLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOykgKERpbWl0cmksIDI3LiBTZXAgMjAwMSwgMTA6NDU6MzApOgpbS2FybHNydWhlOkJhbWJpXSBzby4gRHVyY2ggTVBBIGR1cmNoLiA6fAoKSmV0enQgbmltbWVyIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbmF0b2wsIDI3LiBTZXAgMjAwMSwgMTk6MDA6MDYpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBEcmFjaGVuXSBXZW5uIER1IGRhcyBub2NoIG9lZnRlciBtYWNoc3QsIFRoYW5vcywgZGFubgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBEcmFjaGVuXSBzcGllbGUgaWNoIGhpZXIgbmljaHQgbWVociEKW01vZXJkZXI6VGhhbm9zXSBkcmVodCBpaHIgYWxsZSBhbSBSQWQgPz8/Pz8/CltUb2Q6TGFyc10gU2NocmVpbmVtYWtlcnMgaWhyZSBTY2h3ZXN0ZXIgaGF0IGdlcmFkZSBUaGFub3MgdW1nZWJyYWNodC4KW1RvZDpTY2hyZWluZW1ha2VycyBpaHJlIFNjaHdlc3Rlcl0gU2NoaWNodCBpbSBTY2hhY2h0ISAKCkpvLgpBbmF0b2wgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMRyAoZmFtb3VzIGxhc3QgZ3JpbikgKFZhcmxhcmlvbiwgMjcuIFNlcCAyMDAxLCAxOTowNjoxOSk6Ckx1Z2lhIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCltUb2Q6TGFyc10gRWluZSBzY2h3ZXJlIEtyYW5raGVpdCBoYXQgZ2VyYWRlIEx1Z2lhIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIChGb29iYXIsIDI3LiBTZXAgMjAwMSwgMjM6NTA6NTQpOgpEZWluIEZyZXVuZCBFbGJlcmV0IHRlaWx0IERpciBtaXQ6IGhtcGYgd2llc28gc3BpbnR5IGRhcyB0ZXIsbWlhbmw/CgpGb29iYXIgZnJhZ3Qgc2ljaCBkYXMgYXVjaCA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPaG5lIFdvcnRlIChFbGJlcmV0LCAyOC4gU2VwIDIwMDEsIDAwOjAzOjQwKToKfiMhIHJuPUZvb2JhciBydD0xMDAxNjI3NDU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTYyNzQ1NAppbnp3aXNjaGVuIGlzIG51ciBub2NoIGRpZSBzdGF0dXN6ZWlsZSB3ZWlzcyBhbnNvbnN0ZW4gdHV0cyB3aWVkZXIKIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZW5lcmFlbGUgLi4uIChMaWFyYSwgMjguIFNlcCAyMDAxLCAwMDozODoxNSk6CkR1IHNhZ3N0OiBkYXJrd2luZywgc2FnIG1hbCBGb29iaSBpc3Qgc3Vlc3MhCkR1IHNhZ3N0OiBkYXJrd2luZywgc2FnIG1hbCBGb29iaSBpc3Qgc3Vlc3MhCkR1IHNhZ3N0OiBkYXJrd2luZywgc2FnIG1hbCBGb29iaSBpc3Qgc3Vlc3MhCgpEYXJrd2luZyBzYWd0OiBmdWVyIG5lbiBad2VyZyBzY2hvbiA6KQoKRHUgZ3JpbnN0IERhcmt3aW5nIGFuLgpGb29iYXIga3VzY2hlbHQgc2ljaCBhbiBEYXJrd2luZyBhbi4KRHUgaHVlcGZzdCB1bSBEYXJrd2luZyBoZXJ1bS4KRGFzIEdsb2Vja2NoZW4gdm9uIERlaW5lbSBaaXBmZWxtdWV0emNoZW4gYmltbWVsdCBhdWZnZXJlZ3QuCkRhcmt3aW5nIHNjaHJlaXQgbGF1dCEKClpaTEIsIFBhcGFnZWllbmJlc2l0emVyaW4gKGxlaWNodCBhdXMgZGVtIFp1c2FtbWVuaGFuZyBnZWdyaWZmZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktlaW4gS29tbWVudGFyIDstKSAoTGlhcmEsIDI5LiBTZXAgMjAwMSwgMDA6MDc6MzUpOgpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiBpY2ggd2lsbCBoaWVyIHJhdXMgOikKRGVpbiBGcmV1bmQgRGFya3dpbmcgdGVpbHQgRGlyIG1pdDogaWNoIGF1Y2ghCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBzY2hsYWZlIGVpbj8/CkRlaW5lIEZyZXVuZGluIEFzdWthIHRlaWx0IERpciBtaXQ6IG5lLi5pc3QgZWluIHVuZ3VlbnN0aWdlciBvcnQgZGFmdWVyIDopCmZpbmRlIGFzdWthCkR1IG11cm1lbHN0IGRpZSB2b3JnZXNjaHJpZWJlbmVuIFdvcnRlIHVuZCBoYWVsdHN0IHBsb2V0emxpY2ggZWluZSBtYWdpc2NoZQpLdWdlbCBpbiBkZW4gSGFlbmRlbi4KRHUgc2NoYXVzdCBpbiBkaWUgZ3J1ZW5saWNoIHNjaGltbWVybmRlIEt1Z2VsIHVuZCBlcmtlbm5zdCB2ZXJzY2h3b21tZW46Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKRGllIHByaXZhdGUgSG9laGxlIGRlcyBLb2JvbGRrb2VuaWdzIGJlZ2lubnQgaGllci4gQWxsZXMgaW4gYWxsZW0gbmljaHQgdmllbApiZXNzZXIgYWxzIGRpZSBhZXVzc2VyZW4gSG9laGxlbiwgZG9jaCB3ZW5pZ3N0ZW5zIGdpYnQgZXMgaGllciBlaW5lCkVpbnJpY2h0dW5nLiAKRWluZSBhYmdlc2NobG9zc2VuZSBUdWVyLiAgCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBzdWVkZW4uCk5paGFvIGxhZWNoZWx0IHVlYmVyIGRlbiBlaXRsZW4gUGZhdS4KVGVhbTpCbHV0cmF1c2NoIEVsYWluZSBzYWd0OiBOaWUgb2huZSBGb2xnZW4uClRlYW06Qmx1dHJhdXNjaCBEYXJrd2luZyBzYWd0OiBObyBSaXNrIC0gTm8gRnVuLgpBc3VrYSB3aWxsIGVpbmVuIHNjaG51ZmZpZ2VuIHBsdWVzY2hpZ2VuIFBsdWVzY2hwYW50aGVyLgpOZWluLCBkYXMgaXN0IG5pY2h0IEFzdWthLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkRpZSBLdWdlbCBsb2VzdCBzaWNoIHdpZWRlciBhdWYuCkRlaW4gWmF1YmVyc3RhYiB1bnRlcnN0dWV0enQgRGljaCBiZWkgZGVtIFNwcnVjaC4KRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGhlaGUKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IHNhZyBibG9zcyBkYXMgZ2VodCBuaWNoIGF1ZiBkYQpEYXJrd2luZyB0ZWlsdCBEaXIgbWl0OiBzbyBlaW4gQWVyZ2VyLCB3aXIgaGFiZW4gYWxsZSBHYXRvIGJlaSBkZW4gS29ib2xkZW4KRGFya3dpbmcgdGVpbHQgRGlyIG1pdDogZ2Vob2xmZW4gdW5kIGRhbm4gd2FyIGRpZSBUdWVyIHp1IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgKEZvb2JhciwgMjkuIFNlcCAyMDAxLCAwMDozNDozNik6CkZyb206IEdlcm5vdCBQcnVlbnN0ZXIgPGdwcnVlbnN0QGdld2kua2Z1bmlncmF6LmFjLmF0PgpOZXdzZ3JvdXBzOiBkZS5yZWMubXVzaWsuaGlmaQpTdWJqZWN0OiBSZTogUmVnYWxsYXV0c3ByZWNoZXIgKyBTdWJ3b29mZXI/Ck1lc3NhZ2UtSUQ6IDxrM3I1cnRjcWhvaTlpNGZkczdxMTUyNDVtcjJtMGdjcTRlQDRheC5jb20+CkRhdGU6IFRodSwgMjcgU2VwIDIwMDEgMTI6MDg6NTUgKzAyMDAKCnBma0BjLnplaXNzLmRlIChGcmFuayBLbGVtbSkgd3JvdGU6Cgo+Pj5XYXMgaXN0IGVpbiAic2NobmVsbGVyIiBCYXNzPwo+Pgo+PkVpbmVyLCBkZXIgZWJlbiAic2NobmVsbGVyIiBhbHMgZWluICJsYW5nc2FtZXIiIGlzdCA6LSkKPj4KPkFsbGUgRnJlcXVlbnpiZXJlaWNoZSBzb2xsdGVuIHN5bmNocm9uIHp1ZWluYW5kZXIgbGF1ZmVuLgo+S2VpbmVyIHNvbGx0ZSBzY2huZWxsZXIgbm9jaCBsYW5nc2FtZXIgc2Vpbi4gU2Nob24gMCwxJQo+R2VzY2h3aW5kaWdrZWl0c3VudGVyc2NoaWVkIG1hY2hlbiBhbSBFbmRlIGVpbmVyIENEIDQuLi41IFNla3VuZGVuIGF1cy4KCk5ldWxpY2ggYmVpbSBGcmlzZXVyOgpIYWFyZXdhc2NoZW4uCiJQYXNzdCBkaWUgV2Flcm1lPyIKIkljaCBoYWIgbWVpbiBLYWxvcmllbWV0ZXIgbGVpZGVyIG5pY2h0IGRhYmVpLCBhYmVyIHNlbGJzdCB3ZW5uLCB3b2hlcgpzb2xsIGljaCB3aXNzZW4sIHdlbGNoZSBXYWVybWUgZGllIHBhc3NlbmRlIGlzdD8iCiJJY2ggbWVpbmUgZGFzIFdhc3Nlci4gSXN0IGVzIHdhcm0gZ2VudWc/IgoiTmVobWVuIHdpciBhbiwgc2llIGdpZXNzZW4gNSBrZyBXYXNzZXIgbWl0IGVpbmVyIFRlbXBlcmF0dXIgdm9uIDI3OEsKdWViZXIgbWVpbmVuIEtvcGYsIGRhbm4gZW50c3ByaWNodCBkYXMgZWluZXIgZ2V3aXNzZW4gV2Flcm1lbWVuZ2UuCldlbm4gc2llIGFiZXIgMTAga2cgV2Fzc2VyIGRlciBzZWxiZW4gVGVtcGVyYXR1ciBuZWhtZW4sIGlzdCBkYXMgZGllCmRvcHBlbHRlIFdhZXJtZW1lbmdlLiBNaXIgcGFzc3QgZGFubiBhYmVyIGRpZSBlaW5lIFdhZXJtZSBnZW5hdSBzbyBndXQKb2RlciBzY2hsZWNodCB3aWUgZGllIGFuZGVyZS4KIlN0ZWxsZW4gU2llIHNpY2ggYWJzaWNodGxpY2ggZHVtbT8iCiJOZWluLCBpY2ggYmluIFBoeXNpa2VyLiIKIkFjaCBzby4iCiJXZW5ucyBzaWUgV2Flcm1lIGFuZGVycyB2ZXJzdGVoZW4sIGFscyBlcyBzZWluZXIgbGV4aWthbGlzY2hlbgpEZWZpbml0aW9uIGVudHNwcmljaHQsIG11ZXNzZW4gc2llIGRlbiBCZWdyaWZmIHN0aXB1bGF0aXYKcmVkZWZpbmVyaWVuLCBhbnNvbnN0ZW4gaXN0IHNpbm52b2xsZSBLb21tdW5pa2F0aW9uIHVubW9lZ2xpY2guIgoiQWxsZSBhbmRlcmVuIEt1bmRlbiBzY2hlaW5lbiBtaWNoIHJlY2h0IGd1dCB6dSB2ZXJzdGVoZW4uIEF1Y2ggTGFpZW4Ka29lbm5lbiBzaWNoIHVlYmVyIFdhZXJtZSB1bnRlcmhhbHRlbi4gT2huZSBEZWZpbml0aW9uZW4uIgoiSWNoIHdlaXNzIGltbWVyIG5vY2ggbmljaHQsIHdhcyBzaWUgdW50ZXIgV2Flcm1lIHZlcnN0ZWhlbi4iCiJJY2ggaGFiIGF1Y2gga2VpbiBzY2kgU2NoaWxkIGluIGRlciBBdXNsYWdlIiwgc2FndCBkZXIgRnJpc2V1ciB1bmQKc3RlbGx0IGRlbiBXYXNzZXJoYWhuIGF1ZiB2b2xsIGF1ZiBXYWVybWUuCgpTY2hvZW5lIEdydWVzc2UsCkdlcm5vdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhlaGUgKEhpZ2h0LCAyOS4gU2VwIDIwMDEsIDAyOjAyOjM4KToKTGlhcmEgc2FndDogPEhpY2s+IQpbQWxsZ2VtZWluOkxpYXJhXSBobSBkZXIgYmV0dGxlciBoYXQgbWljaCBhbmdlaGF1Y2h0IGljaCBiaW4gYmxhdSAuLi4gb2RlcgpbQWxsZ2VtZWluOkxpYXJhXSBoYXN0ZSBkYXMgZ3JhZGUgd2lya2xpY2ggZ2VzYWd0IDstKQoKaGlnaHQgKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNlbWluYXJ2b3JzY2hsYWVnZSAxMC1KYWhyZXMtUGFydHkgMjAwMiAoR3JpbW1ib3JuLCAyOS4gU2VwIDIwMDEsIDE3OjQyOjU5KToKfiMhIHJuPVpvb2sgcnQ9MTAwMTc3Nzk4NCByZz1wYXJ0eQp+IyEgdGlkPTEwMDE3MTU2NDAKV2FlcnN0IER1IGRhbm4gZWhlciBmdWVyIGRpZSBkbydzIG9kZXIgZGllIGRvbid0J3MgenVzdGFlbmRpZz8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU2VtaW5hcnZvcnNjaGxhZWdlIDEwLUphaHJlcy1QYXJ0eSAyMDAyIChHbm9tZSwgMjkuIFNlcCAyMDAxLCAxOToyNzoyNyk6Cn4jISBybj1NYXRpcyBydD0xMDAxNzg0MTEyIHJnPXBhcnR5Cn4jISB0aWQ9MTAwMTcxNTY0MApodW1vcmxvc2VyIGFuZ2Vsc2FjaHNlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNdXBmZWwsIDI5LiBTZXAgMjAwMSwgMjI6MDM6MTQpOgpEZWluZSBGcmV1bmRpbiBMaWFyYSB0ZWlsdCBEaXIgbWl0OiBtYSB3YXMgdGVzdGVuCltUb2Q6TGFyc10gRWluZSBoZXJhYnNhdXNlbmRlIExhd2luZSBoYXQgZ2VyYWRlIExpYXJhIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBoZXJhYnNhdXNlbmRlIExhd2luZV0gSGF0dGUgaWNoIGRpY2ggbmljaHQgZ2V3YXJudD8KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbmV1bGljaCBpbiBlaW5lciBiYXIgKFhlbmFkYSwgMzAuIFNlcCAyMDAxLCAxMjo0NDo0Nik6Cn4jISBybj1HYXN0MSBydD0xMDAxODQ1NzQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTg0NTc0MwpYZW5hZGEga2VubnN0IHNpZSB1bmQgZGllIEJhciA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2lld2Fzd28/IChHbm9tZSwgMzAuIFNlcCAyMDAxLCAxNDo0NDoxMyk6CkRlaW4gRnJldW5kIEhpcnVkbyB0ZWlsdCBEaXIgbWl0OiBtb20KUGF0cnluICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpQYXRyeW4gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbiBGcmV1bmQgSGlydWRvIHRlaWx0IERpciBtaXQ6IHJlIDopCgphaGEuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoZWhlIDopIChHbm9tZSwgMzAuIFNlcCAyMDAxLCAyMTozODoxMyk6CmdhbmR1ciB1bmQgZ25vbWUgc2l0emVuIGF1ZiBkZXIgY291Y2gsIGthcmluIGFtIHJlY2huZXIuIGdub21lIGthdXQgZWluCnRvYXN0IG1pdCBwZmxhdW1lbm11cyAoVE0pIHVuZCBtZXJrdCBhbHNiYWxkIGVpbmUgbmVsa2Ugendpc2NoZW4gZGVuCnphZWhuZW4uCmdhbmR1ciBzYWd0OiAibmVsa2U/Igpnbm9tZSBobW10IHVuZCBsZWd0IHNpZSBhdWYgZGVuIHRlbGxlciB2b3Igc2ljaC4KZ2FuZHVyIHNhZ3Q6ICJuZWluLCBuaWNodCBhdWYgZGVuIHRlbGxlci4uLiBsZWcgc2llIGluIGRhcyBnbGFzIGRhLi4uIgp4ZW5hZGEgc2FndDogIm5laW4sIG5pY2h0IGlucyBnbGFzLCBkYXMgaXN0IG1laW5zLi4uIgpnYW5kdXIgc2FndDogIndpZT8gaGFzdCBkdSBkYSBldHdhIGRyYXVzIGdldHJ1bmtlbj8iCnhlbmFkYSBobW10LgpnYW5kdXIgc2FndDogImF1cyBkZW0gZ2xhcywgaW4gZGFzIGljaCByZXN0ZSB2b20gYm9kZW4gZWluZ2VzYW1tZWx0CiAgICAgICAgICAgICAgaGFiZS4uLiIKZ25vbWUgZ3JpbnN0LgpnYW5kdXIgc2FndDogIi4uLndlbGNoZSB0b25pIHZvcmhlciBpbSBtdW5kIGhhdHRlPyIKZ25vbWUgcHJ1c3RldC4KeGVuYWRhIGFyZ2x0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhlaGUgOikgKFhlbmFkYSwgMzAuIFNlcCAyMDAxLCAyMTo0NDowOCk6Cn4jISBybj1Hbm9tZSBydD0xMDAxODc4NjkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTg3ODY5MwpqYS4uLi5kdSBzcG90dGUgbWFsLi4ud2lsbHN0ZSBtb3JnZW4gZnJ1ZWggbmViZW4gbmVyIHdpbmRlbCB3YWNoIHdlcmRlbj8gOykKWGVuYWRhIGlzIGhldXRlIGdlbWVpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaGVoZSA6KSAoR3JpbW1ib3JuLCAgMS4gT2t0IDIwMDEsIDAwOjM2OjAxKToKfiMhIHJuPVhlbmFkYSBydD0xMDAxODc5MDQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTg3ODY5MwpJbnRlcmVzc2FudCBpc3QgZGFubiBkaWUgRnJhZ2Ugd28gRHUgZGFubiB6dSBmaW5kZW4gc2VpbiB3aXJzdCwgbmFjaGRlbSBEdSBkZXIKV2luZGVsIFBsYXR6IGdlbWFjaHQgaGFzdC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIZWhlaGUgOikgKFZhcmxhcmlvbiwgIDEuIE9rdCAyMDAxLCAwMDo1MDo0NSk6CkltIEZlbGRsYWdlci4KRXMgZ2lidCBmdWVuZiBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuLCBub3JkZW4sIG5vcmRvc3RlbiB1bmQKc3VlZG9zdGVuLgpFaW4gSHVmZWlzZW4uICAgICAgICAgICAgIEVpbiBkZWZla3RlcyBXYWdlbnJhZC4gICAgRWluIEFtYm9zcy4KRWluIEh1ZnNjaG1pZWQuICAgICAgICAgICBFaW5lIFphbmdlLiAgICAgICAgICAgICAgIApFaW4gSGFtbWVyLiAgICAgICAgICAgICAgIEVpbiBsZWljaHRlciBIYW1tZXIuICAgICAgCi0tLSBWZXJzdWNoZSBhbGxlcyB6dSBlbnRzb3JnZW46IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoqIERlciBBbWJvc3Mgd3VyZGUgZW50c29yZ3QuCiogRGVyIEhhbW1lciB3dXJkZSBlbnRzb3JndC4KKiBEaWUgWmFuZ2Ugd3VyZGUgZW50c29yZ3QuCiogRGFzIFdhZ2VucmFkIHd1cmRlIGVudHNvcmd0LgoqIERlciBIYW1tZXIgd3VyZGUgZW50c29yZ3QuCiogRGFzIEh1ZmVpc2VuIHd1cmRlIGVudHNvcmd0LgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KT0ssIHZlcnN1Y2hlIFN0YWIgdW0gNiBQdW5rdGUgYXVmenVsYWRlbi4KSGF0IHNvZ2FyIGdla2xhcHB0LgpEdSBzdGVoc3Qgdm9yIGVpbmVyIHByb3Zpc29yaXNjaGVuIFNjaG1pZWRlLiBJbSBXZXN0ZW4gYmVncmVuemVuClBhbGlzYWRlbiBkYXMgTGFnZXIsIG5hY2ggT3N0ZW4gZ2VodCBlcyB6dW0gWmVudHJ1bSBkZXMgSG9mZXMuIEltCk5vcmRvc3RlbiBpc3QgZWluIFRvciBpbSBaYXVuIHp1IGVya2VubmVuLgpFcyBnaWJ0IGZ1ZW5mIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9zdGVuLCBzdWVkZW4sIG5vcmRlbiwgbm9yZG9zdGVuIHVuZApzdWVkb3N0ZW4uCkVpbiBIdWZzY2htaWVkLgpEZXIgSHVmc2NobWllZCBzYWd0OiBXbyBpc3QgZGVubiBudXIgbWVpbiBBbWJvc3MgaGluLCBlYmVuIHdhciBlciBkb2NoCkRlciBIdWZzY2htaWVkIHNhZ3Q6IG5vY2ggaGllci4uLi4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTdGFtbXRpc2NoIEJvbm4gKEdyaW1tYm9ybiwgIDEuIE9rdCAyMDAxLCAwMTozMzoxMyk6Cn4jISBybj1NdXBmZWwgcnQ9MTAwMTg5MTM4OSByZz10cmVmZmVuCn4jISB0aWQ9MTAwMTcwMjY5NQo+IHN1Y2h0IGltbWVyIG5vY2ggbmVuIHNjaGxhZnBsYXR6Li4uCgpBY2gsIFN0cmVzcyBtaXQgVmFybGFyaW9uPyBFcyBmbGllZ2VuIGRpZSBGZXR6ZW4/IFdpbGRlIEJlc2NoaW1wZnVuZ2VuPwpTY2htdXR6aWdlIFdhZXNjaGUgd2FzY2hlbj8gCkRldGFpbHMgYml0dGUsIGhvZXJ0IHNpY2ggaW50ZXJlc3NhbnQgYW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3RhbW10aXNjaCBCb25uIChWYXJsYXJpb24sICAxLiBPa3QgMjAwMSwgMDE6MzQ6NTMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDE4OTI3OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxNzAyNjk1ClZvbiBtZWluZXIgU2VpdGUgYXVzIG5pY2h0LCBhYmVyIGljaCBoYWIga2VpbmUgTHVzdCwgbmFjaCBCb25uIHp1IGZhaHJlbiB1bmQKZGllIEtuZWlwZSBzYWd0IG1pciBhdWNoIG5pY2h0IHNvIHp1LCBhbHNvIGRhcmYgZGVyIEhlcnIgYWxsZWluZSBmYWhyZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFN0YW1tdGlzY2ggQm9ubiAoR29yb2csICAxLiBPa3QgMjAwMSwgMTY6MDE6MjkpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMDE4OTI4OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxNzAyNjk1CkdlbmF1IFZhcmxhcmlvbi4gS29tbSB6dW0gQ291bnRlci1TdGF0aSBpbiBNdWVuc3Rlci4gV2llIGltbWVyIG1pdApVZWJlcnJhc2NodW5ncyBMb2thdGlvbiB3ZW5uIG1hbCB3aWVkZXIgd2FzIHp1IGhhdCAoOyAKCklaSyBHb3JvZyBydWZ0OiBNdWVuc3RlciBydWx6ISAuLi4gIG9id29obHMgcmVnbmV0IC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU3RhbW10aXNjaCBCb25uIChMaWFyYSwgIDEuIE9rdCAyMDAxLCAxNjoxMTo1NCk6Cn4jISBybj1Hb3JvZyBydD0xMDAxOTQ0ODg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTcwMjY5NQpIb2VyIGF1ZiwgdW5zIGRpZSBMZXV0ZSBhYnp1d2VyYmVuLiAqa251cnIqCgpaWkxCIC4gbyBPIChhYmVyIHdlciB3aWxsIHNjaG9uIG5hY2ggTXVlbnN0ZXIgdm9yIGVpbmUgZ2VzY2hsb3NzZW5lIEtuZWlwZSBpbQpSZWdlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFN0YW1tdGlzY2ggQm9ubiAoTXVwZmVsLCAgMS4gT2t0IDIwMDEsIDE2OjI1OjI3KToKfiMhIHJuPUdvcm9nIHJ0PTEwMDE5NDQ4ODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxNzAyNjk1CmFyZ3MgZGEgaWNoIGluIGJvbm4gbmljaHQgdWViZXJubmFjaHRlbiBrYW5uIG11c3MgaWNoIHdvaGwgZG9jaCBkZW4gbXVlbnN0ZXIKc3RhdGkgYmVzdWNoZW4uLi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2htYXJybj8gOy0pIChMaWFyYSwgIDEuIE9rdCAyMDAxLCAxNjozMDo1Myk6CkRlaW4gRnJldW5kIFpvb2sgdGVpbHQgRGlyIG1pdDogU28sIG1hbCBhdXNsb2dnZW4gdW5kIGluIEt1ZXJ6ZSBnZW4gSGVpbWF0CkRlaW4gRnJldW5kIFpvb2sgdGVpbHQgRGlyIG1pdDogZmFocmVuLi4uLgpEZWluIEZyZXVuZCBab29rIHRlaWx0IERpciBtaXQ6IFdpciB3b2xsZW4gZGVuIE1vbnRhZyBqYSBuaWNodCBnbGVpY2ggbWl0CkRlaW4gRnJldW5kIFpvb2sgdGVpbHQgRGlyIG1pdDogU3RyZXNzIGJlZ2lubmVuIGxhc3NlbiA7KQpEZWluIEZyZXVuZCBNdXBmZWwgdGVpbHQgRGlyIG1pdDogd2VyIHdpcj8KRGVpbiBGcmV1bmQgWm9vayB0ZWlsdCBEaXIgbWl0OiBVbnNlcmUgR290dGhlaXQuCi4uLgpMaWFyYSBncmllbnQgWm9vayBhbiB1bmQgaGFlbHQgbmFjaCBkZW4gd2Vpc3NlbiBtYWVubmVybiBBdXNzY2hhdSBhdXMgZGVyCkZlcm5lLgpEZWluIEZyZXVuZCBab29rIGRlbmt0IGluIGRlciBGZXJuZSAuIG8gTyAoV2VyIGR1bW0gZnJhZ3QsIGtyaWVndCBkdW1tZQpBbnR3b3J0ZW4gOykpLgpEZWluIEZyZXVuZCBNdXBmZWwgc2llaHQgaW4gZGVyIEZlcm5lIGVpbmVuIHdlaXNzZW4gd2FnZW4gbWl0IHF1ZWl0c2NoZW5kZW4KcmVpZmVuIGhhbHRlbi4KClpaTEIgZGVua3QgLiBvIE8gKGphamEgZXJzdCBzYWdlbiB1bmQgZGFubiBuaWNodCBkYXp1IHN0ZWhlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2FlcmUgZXMgbmljaHQgbmV0dC4uLiAoVmFybGFyaW9uLCAgMS4gT2t0IDIwMDEsIDE5OjQ2OjI1KToKfiMhIHJuPUxhcmlzc2EgcnQ9MTAwMTk1ODMwNSByZz1wYXJ0eQp+IyEgdGlkPTEwMDE5NTc3NzMKSmFhYSwgaWNoIGZyZXUgbWljaCBzY2hvbiBhdWYgU3RvcmllcyB3aWU6CiJEYW1hbHMgaGF0dGVuIHdpciBudXIgVGVsbmV0LCBNZWdhbGFnIHVuZCBlcyBnYWIgbm9jaCBrZWluZSBXZWdzY3JpcHRlLCBkYQptdXNzdGVuIHdpciA0IFN0dW5kZW4gdm9uIGRlciBBYmVudGV1cmVyZ2lsZGUgenVyIEhvY2hlYmVuZSBsYXVmZW4gdW5kIGRpZQpQaWx6ZSBmdWVyIGRlbiBTY2hyYXQgaGFiZW4gd2lyIG5vY2ggbWl0IGJsb3NzZW4gSGFlbmRlbiBlcnd1ZXJndC4uLiIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoVmFyZGlvbiwgIDEuIE9rdCAyMDAxLCAyMDozNzo1Nik6CkRlaW4gRnJldW5kIFBpdGZhbGwgdGVpbHQgRGlyIG1pdDogdWkgMTAgbHBzIDopCgpbVG9kOkxhcnNdIEVpbiBGZXVlcnNjaGVtZW4gaGF0IGdlcmFkZSBQaXRmYWxsIHVtZ2VicmFjaHQuCltUb2Q6UGl0ZmFsbF0gTXV1dWg/Pz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNoYW90ZW4gLi4uIChMaWFyYSwgIDIuIE9rdCAyMDAxLCAwMjoyMDo1Nyk6ClppbGxlaSBzdGV1ZXJ0IHBsYW5sb3MgYXVmIGRpZSBUb2lsZXR0ZS4KWXJpbnRyaSB3YW5kZWx0IGRhdm9uLgpLcnVmdHVyIGdlaHQuCkludGFyYmlyIGdlaHQuCkJodXR1cmloIHRhZW56ZWx0IGRhdm9uLgpaaWxsZWkgc3RldWVydCBwbGFubG9zIGhlcmVpbi4KWXJpbnRyaSB3YW5kZWx0IGhlcmVpbi4KS3J1ZnR1ciBrb21tdCBhbi4KSW50YXJiaXIga29tbXQgYW4uCkJodXR1cmloIHRhZW56ZWx0IGhlcmVpbi4KClpaTEIgZGVua3QgLiBvIE8gKCBtdWVzc2VuIGRpZSBlaW5zYW0gc2VpbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VsbGVuIC4uLiAoTWlyamFtLCAgMi4gT2t0IDIwMDEsIDAyOjI1OjU5KToKVHN1bmFtaSB0ZWlsdCBEaXIgbWl0OiA6KSB6dSBodWVsZmUuLiBpY2ggaGF0dGUgc2Nob24gaW1tZXIgUGFuaWsgdm9yIEZyYXVlbgpUc3VuYW1pIHRlaWx0IERpciBtaXQ6IG1pdCBXYWZmZW4gOikKCk1pcmphbSwgZnJhZ3Qgc2ljaCBudXIgd2FzIGdlbmF1IGRpZSBNYWVkZWxzIGRhbm4gbWl0IGRlbiBXYWZmZW4gYW4gZGVyClBsYWV0c2NoZXJ3ZWxsZW4gZnVtbWVsbiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUgKE1pcmphbSwgIDIuIE9rdCAyMDAxLCAwMjo0NzoyNik6CgpUc3VuYW1pIGRvbm5lcnQgYXVmIGRpZSBUb2lsZXR0ZS4KCi4gbyBPIChHcm9zc3JlaW5pZ3VuZyB3YXIgc2ljaGVyIG1hbCBub2V0aWcgLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9obmUgV29ydGUgKExpYXJhLCAgMi4gT2t0IDIwMDEsIDAyOjQ4OjUyKToKfiMhIHJuPU1pcmphbSBydD0xMDAxOTgzNjQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTk4MzY0NgpGb3J0c2V0enVuZzoKCkRlaW4gRnJldW5kIFRzdW5hbWkgdGVpbHQgRGlyIG1pdDogaHVjaCBpY2ggYmluIGluIGRlciBEYW1lbnRvaWxldHRlCgouLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogT2huZSBXb3J0ZSAoTGlhcmEsICAyLiBPa3QgMjAwMSwgMDI6NTE6MDMpOgp+IyEgcm49TGlhcmEgcnQ9MTAwMTk4MzczMiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDE5ODM2NDYKLi4uIC4uLiAuLi4KCkRlaW4gRnJldW5kIFRzdW5hbWkgdGVpbHQgRGlyIG1pdDogd2FzIG1hY2ggaWNoIGhpZXIgZWlnZW50bGljaD8KCipzdG9laG4qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIZWhlIChMaWFyYSwgIDIuIE9rdCAyMDAxLCAwMzoxODoxNyk6CkRlaW4gRnJldW5kIFRzdW5hbWkgdGVpbHQgRGlyIG1pdDogc2VpdCB3YW5uIHdlcmRlbiBrb2VuaWdsaWNoZSBNYWplc3RhZXRlbgpEZWluIEZyZXVuZCBUc3VuYW1pIHRlaWx0IERpciBtaXQ6IHVuZCBhbmRlcmUgd2ljaHRpZ2UgUGVyc29lbmxpY2hrZWl0ZW4KRGVpbiBGcmV1bmQgVHN1bmFtaSB0ZWlsdCBEaXIgbWl0OiAoTWFnaWVyISkgdm9uIFJhZXViZXJuIGluIEdlYnVlc2NoZQpEZWluIEZyZXVuZCBUc3VuYW1pIHRlaWx0IERpciBtaXQ6IGdlemVocnQhPz8/Pwpmd2VyIG9ydApUc3VuYW1pICAgICAgICAtIEVpbiBHZWJ1ZXNjaAoKWWVhaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIZWhlIChWYXJsYXJpb24sICAyLiBPa3QgMjAwMSwgMDM6MTk6NDEpOgp+IyEgcm49TGlhcmEgcnQ9MTAwMTk4NTQ5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDE5ODU0OTcKZ2lidHMgYmFsZCBlaW5lIHJ1YnJpayB0c3VuYW1pLnNjaG1hcnJuPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIZWhlIChUc3VuYW1pLCAgMi4gT2t0IDIwMDEsIDAzOjIwOjI3KToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDAxOTg1NTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTk4NTQ5NwprYXVtIGdldHJhdXQgbWFuIHNpY2ggbWFsIHdpZWRlciBhdXMgc2VpbmVtIFdvcmtyb29tIGdpYnRzIFByb2JsZW1lIHp1aGF1Zi4KClRzdW5hbWkuICoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIZWhlIChWYXJsYXJpb24sICAyLiBPa3QgMjAwMSwgMDM6MjY6MjkpOgp+IyEgcm49VHN1bmFtaSBydD0xMDAxOTg1NjI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTk4NTQ5NwpUc3VuYW1pIHNhZ3Q6IHRvZXRlIGFsbGUgZ2VodCBuZWQKRWluIFJhZXViZXIgbGFjaHQgVHN1bmFtaSBhdXMuClRzdW5hbWkgc2FndDogV0FTClRzdW5hbWkgc2FndDogLi4uIHRvZXRlIHJhZXViZXIKRGllIEhvZWhsZSBiZXdlZ3Qgc2ljaC4KVHN1bmFtaSBzYWd0OiBhbnR3b3J0OgpUc3VuYW1pIHNhZ3Q6IERlciBSYWV1YmVyIGtyaW5nZWx0IHNpY2ggdm9yIExhY2hlbiB1bmQgc2FndDoKVHN1bmFtaSBzYWd0OiBHZWdlbiB1bnMgaGFldHRlc3QgRHUga2VpbmUgQ2hhbmNlLCBnaWIgdW5zIGxpZWJlciBEZWluIEdlbGQuClRzdW5hbWkga3JhdHp0IHNpY2ggYW0gS29wcC4KVHN1bmFtaSBzYWd0OiBobW0KTXVwZmVsIHNhZ3Q6IGZyYWd0IGRlciBkZWluIHNwaWVsZXJsZXZlbCBhYj8KRGllIEhvZWhsZSBwYXNzdCBzaWNoIGFuIGRpZSBVbWdlYnVuZyBhbi4KRGVyIEJhdW0gYmV3ZWd0IHNpY2guClRzdW5hbWkgc2FndDogd2llc28gZ2VodCBkYXMgbmljaHQKVHN1bmFtaSBzYWd0OiBpY2ggYmluIFN0dWZlIDc0ClRzdW5hbWkgc2FndDogYXVjaCBnYW56IGVocmxpY2ggdW5kIHNlbGJlciBob2NoZ2VzcGllbHQKVHN1bmFtaSBzYWd0OiBtb21lbnRjaGVuCgpubyBjb21tZW50CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBZWg/IDstKSAoTGlhcmEsICAyLiBPa3QgMjAwMSwgMDM6Mjc6NTcpOgoKTXVwZmVsIHRlaWx0IERpciBtaXQ6IGtvbW0gaW5zIGdlYnVlc2NoCgpBaGphLiAuLi4gTXVzcyBuZSBlcm5zdGUgTWFnaWVya3JhbmtoZWl0IGF1c2dlYnJvY2hlbiBzZWluIGhldXRlIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFlaD8gOy0pIChWYXJsYXJpb24sICAyLiBPa3QgMjAwMSwgMDM6Mjg6MTMpOgp+IyEgcm49TGlhcmEgcnQ9MTAwMTk4NjA3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDE5ODYwNzcKVmFybGFyaW9uIHByb3Rlc3RpZXJ0IGVuZXJnaXNjaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBZWg/IDstKSAoTGlhcmEsICAyLiBPa3QgMjAwMSwgMDM6NDQ6MTEpOgp+IyEgcm49TGlhcmEgcnQ9MTAwMTk4NjA3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDE5ODYwNzcKW1RvZDpMYXJzXSBFaW4gUmFldWJlciBoYXQgZ2VyYWRlIFRzdW5hbWkgdW1nZWJyYWNodC4KClEuIEUuIEQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFlaD8gOy0pIChUc3VuYW1pLCAgMi4gT2t0IDIwMDEsIDAzOjQ0OjQxKToKfiMhIHJuPUxpYXJhIHJ0PTEwMDE5ODcwNTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxOTg2MDc3CndpZSBpbiBndXRlbiBhbHRlbiBaZWl0ZW4gOikKCipzY2h3YWVybSoKClRzdW5hbWkuIE5pY2h0IHdpcmtsaWNoIGdlc3RvcmJlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQWVoPyA7LSkgKExpYXJhLCAgMi4gT2t0IDIwMDEsIDAzOjQ3OjQyKToKfiMhIHJuPVRzdW5hbWkgcnQ9MTAwMTk4NzA4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDE5ODYwNzcKICAuLi4ubm9ybWFsL01lc3Nlci4uLi4uLiBSYWV1YmVyLi4uLi4uIDogVHN1bmFtaS4uLi4uLiAqKioqKioqKiAtLSBoYXJ0CiAgLi4uLm5vcm1hbC9NZXNzZXIuLi4uLi4gUmFldWJlci4uLi4uLiA6IFRzdW5hbWkuLi4uLi4gKioqKioqKiogLS0gZ2V0cm9mZmVuCiAgLi4uLm5vcm1hbC9NZXNzZXIuLi4uLi4gUmFldWJlci4uLi4uLiA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gdmVyZmVobHQKICAuLi4ubm9ybWFsL01lc3Nlci4uLi4uLiBSYWV1YmVyLi4uLi4uIDogVHN1bmFtaS4uLi4uLiAqKioqKioqKiAtLSBnZXRyb2ZmZW4KICAuLi4ubm9ybWFsL0dsYWRpdXMuLi4uLiBUc3VuYW1pLi4uLi4uIDogUmFldWJlci4uLi4uLiAqKioqKioqKiAtLSB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvR2xhZGl1cy4uLi4uIFRzdW5hbWkuLi4uLi4gOiBSYWV1YmVyLi4uLi4uICoqKioqKioqIC0tIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9HbGFkaXVzLi4uLi4gVHN1bmFtaS4uLi4uLiA6IFJhZXViZXIuLi4uLi4gKioqKioqKiogLS0gdmVyZmVobHQKRGFzIEdlYnVlc2NoIHBhc3N0IHNpY2ggYW4gZGllIFVtZ2VidW5nIGFuLgpEYXMgSGF1cyBiZXdlZ3Qgc2ljaC4KICAuLi4ubm9ybWFsL0ZldWVyaGFuZC4uLiBEdS4uLi4uLi4uLi4uIDogUmFldWJlci4uLi4uLiAqKioqKioqKiAtPgpTY2htZXR0ZXJuCiAgLi4uLm5vcm1hbC9GZXVlcmhhbmQuLi4gRHUuLi4uLi4uLi4uLiA6IFJhZXViZXIuLi4uLi4gKioqKioqKiogLT4KU2NobWV0dGVybgogIC4uLi5ub3JtYWwvTWVzc2VyLi4uLi4uIFJhZXViZXIuLi4uLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9NZXNzZXIuLi4uLi4gUmFldWJlci4uLi4uLiA6IFRzdW5hbWkuLi4uLi4gKioqKioqKiogLS0gZ2V0cm9mZmVuClRzdW5hbWkgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpMYXJzXSBFaW4gUmFldWJlciBoYXQgZ2VyYWRlIFRzdW5hbWkgdW1nZWJyYWNodC4KICAuLi4ubm9ybWFsL0tydW1tc2FlYmVsLiBSYWV1YmVyLi4uLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvQmFzdGFyZHNjaHdlIFJhZXViZXIuLi4uLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIHZlcmZlaGx0CkR1IG1hY2hzdCBEZWluZSBHZWRhbmtlbiBmcmVpIHZvbiBhbGxlbiB3ZWx0bGljaGVuIERpbmdlbiB1bmQga29uemVudHJpZXJzdApEaWNoIGF1ZiBkaWUgQXVzZnVlaHJ1bmcgZGVzIFNwcnVjaHMgJ0ZldWVyYmFsbCcuCiAgLi4uLm5vcm1hbC9GZXVlcmhhbmQuLi4gRHUuLi4uLi4uLi4uLiA6IFJhZXViZXIuLi4uLi4gKioqKioqKiogLT4gS3JhY2hlbgpEZXIgUmFldWJlciBmYWVsbHQgdG90IHp1IEJvZGVuLgoKSG0sIHNhaCBhYmVyIHZlcmRhbW10IHdpcmtsaWNoIGF1cy4gOy0pCgooU29ycnkgZnVlciBkYXMgRm9ybWF0LikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFlaD8gOy0pIChUc3VuYW1pLCAgMi4gT2t0IDIwMDEsIDAzOjQ4OjIwKToKfiMhIHJuPUxpYXJhIHJ0PTEwMDE5ODcyNjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxOTg2MDc3CmljaCBoYWJlIG1pciBhdWNoIE11ZWhlIGdlZ2ViZW4gZGFtaXQgaWhyIGV1Y2ggZXR3YXMgYW11ZXNpZXJlbiBrb2VubnQgOikKClRzdW5hbWkuKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFlaD8gOy0pIChMaWFyYSwgIDIuIE9rdCAyMDAxLCAwMzo0OTowMik6Cn4jISBybj1Uc3VuYW1pIHJ0PTEwMDE5ODczMDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxOTg2MDc3Ck5hamEsIGVpbiBiaXNzY2hlbiBub3JtYWwgYmlzdGUgamEgZG9jaCBub2NoLiA7LSkgSGFldHRlIG1pY2ggYXVjaCBnZXd1bmRlcnQsCndlbm4gTWFncyBlaHJsaWNoIHN0ZXJiZW4ga29lbm5lbi4gKmcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBZWg/IDstKSAoVHN1bmFtaSwgIDIuIE9rdCAyMDAxLCAwMzo1MDoxNik6Cn4jISBybj1MaWFyYSBydD0xMDAxOTg3MzQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTk4NjA3NwpuYWphLCBtaXQgTWFnaWVybW9kdXMgJ2F1cycga2FubiBtYW4gc2Nob24gZWhybGljaCBzdGVyYmVuLCB3YXMgaWNoIGF1Y2gKZ2V0YW4gaGFiZSwgamVkb2NoIGthbm4gbWFuIGRpZSBUb2Rlc2ZvbGdlbiB1bWdlaGVuLgoKSWNoIGhhYmUgYWJlciB0YXRzYWVjaGxpY2ggZWluZSBsYWVuZ2VyZSBMYXJzc2VxdWVueiB1ZWJlciBtaWNoIGVyZ2VoZW4gCmxhc3NlbiA6KQoKVHN1bmFtaS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFlaD8gOy0pIChMaWFyYSwgIDIuIE9rdCAyMDAxLCAwMzo1MDozOCk6Cn4jISBybj1Uc3VuYW1pIHJ0PTEwMDE5ODc0MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxOTg2MDc3CkR1IGphbW1lcnN0LiBTY2hhZW0gZGljaCB3YXMhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBZWg/IDstKSAoVHN1bmFtaSwgIDIuIE9rdCAyMDAxLCAwMzo1MDo1OCk6Cn4jISBybj1MaWFyYSBydD0xMDAxOTg3NDM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTk4NjA3NwppY2ggamFtbWVyIG5pY2h0LCBpY2ggaGFiZSBtaWNoIGtvZXN0bGljaCBhbXVlc2llcnQgOikKClRzdW5hbWkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBZWg/IDstKSAoTXVwZmVsLCAgMi4gT2t0IDIwMDEsIDAzOjUxOjAwKToKfiMhIHJuPUxpYXJhIHJ0PTEwMDE5ODc0Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxOTg2MDc3ClVuZCBkYW5uIGlzc2VyIG5pY2h0bWFsIFphdWJpIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG1pa3Jvc2tvcGlzY2ggd2luemlnIGtsZWluZSBBZW5kZXJ1bmcuIChab29rLCAgMi4gT2t0IDIwMDEsIDE5OjE1OjU5KToKfiMhIG9uPVpvb2sgb3Q9MTAwMjA0Mjk0OSBvZz1kLnBvbGFyCn4jISBybj1Uc3VuYW1pIHJ0PTEwMDIwNDI4MzYgcmc9ZC5wb2xhcgp+IyEgdGlkPTEwMDIwNDI4MzYKU29zbywgZGVyIFNjaGx1ZXNzZWwgaGF0IG5pY2h0IGtvb3BlcmllcnQuLi4gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBtaWtyb3Nrb3Bpc2NoIHdpbnppZyBrbGVpbmUgQWVuZGVydW5nLiAoVmFybGFyaW9uLCAgMi4gT2t0IDIwMDEsIDE5OjMwOjAxKToKfiMhIHJuPVRlcnJvcmlzdCBydD0xMDAyMDQzNjY5IHJnPWQucG9sYXIKfiMhIHRpZD0xMDAyMDQyODM2CkR1IG1laW5zdCBkaWVzZW4gUmVudG5lcj8gOikgTmFqYSwgaWhtIHd1ZXJkIGljaHMgc29nYXIgenV0cmF1ZW4sIF9rZWluZV8KZ2VtZWluZW4gUGxhZW5lIHp1ciBBdXNyb3R0dW5nIGRlciBTcGllbGVyc2NoYWZ0IHp1IHNjaG1pZWRlbiwgYWJlciBtYW4gd2Vpc3MKamEgbmllLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0cmFnaXNjaCAoRGVlcGJsdWUsICAyLiBPa3QgMjAwMSwgMjI6MTY6MDEpOgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgpMYXJpbmEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXYWVyZSBlcyBuaWNodCBuZXR0Li4uIChDYXR3ZWF6bGUsICAzLiBPa3QgMjAwMSwgMDM6MjA6NDQpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMDE5NTgzODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxOTU3NzczCjMgU2VrdW5kZW4uClBlciBIYW5kLCBQbGFpbiBUZWxuZXQuIApTaWNoIHdpZWRlcmhvbGVuZCwKICAgICBDYXR3ZWF6bGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldGRpZ2VzdCBtYWwgd2llZGVyLiAoRm9vYmFyLCAgMy4gT2t0IDIwMDEsIDA0OjI3OjI1KToKU3VibWl0dGVycyBub3RlOiBFcyB3dXJkZSBudXIgZGllIFNpZyBlaW5nZXJlaWNodC4KCkZyb206ICJFcmlrIEh1ZXRoZXIiIDxudW5lQG9zdGVydGFsZXIuZGU+Ck5ld3Nncm91cHM6IGRlLnJlYy5tdXNpay5tYWNoZW4KU2VudDogTW9uZGF5LCBPY3RvYmVyIDAxLCAyMDAxIDk6MDcgUE0KU3ViamVjdDogUmU6IFJvZWhyZW4gcm9laHJlbiBsYXNzZW4gaW0gRWlnZW5iYXUKCgo+IERpZSBMb3ZlcGFyYWRlIGlzdCB2b3JiZWksIGRpZSBSYXZlciBoaW50ZXJsaWVzc2VuIHNhZ2UgdW5kIHNjaHJlaWJlCj4gMjIwIFRvbm5lbiBNdWVsbCwgZGllIE11c2lrIG5vY2ggbmljaHQgbWl0Z2VyZWNobmV0LiAoTkRSMi1OYWNocmljaHRlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdhZXJlIGVzIG5pY2h0IG5ldHQuLi4gKEdsb2luc29uLCAgMy4gT2t0IDIwMDEsIDExOjE2OjM1KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDAyMDcyMDQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTk1Nzc3MwpKYSwgZGllIFplaXQgaW4gZGVyIG5vY2ggRWRpdG9yZmVuc3RlciBiZWltIEVpbmxvZ2dlbiBhdWZrbGFwcHRlbi4gQmVpIE1haGF0bWEKd2FyZW4gZXMgYXVjaCBub2NoIEphaHJlIGRhbmFjaCBjaXJjYSB6ZWhuIFN0dWVjayBtaXQgZGVuIHdpY2h0aWdzdGVuIFdlZ2VuLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFdhZXJlIGVzIG5pY2h0IG5ldHQuLi4gKEdyaW1tYm9ybiwgIDMuIE9rdCAyMDAxLCAxMzozMDoyMyk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTAwMjEwODQxNSBvZz1wYXJ0eQp+IyEgcm49QW5hdG9sIHJ0PTEwMDIwOTgzNDggcmc9cGFydHkKfiMhIHRpZD0xMDAxOTU3NzczCldpZSwgZXMgZ2lidCBrZWluZSBGZWhsdGVsZXBvcnRlIG1laHI/IERhcyB3YXIgZG9jaCBpbW1lciBzbyBsdXN0aWcsIGRlcgpBdWdlbmJsaWNrIHdvIG1hbiBzaWNoIGJhbmcgdW1zYWggd28gbWFuIGpldHp0IHNjaG9uIHdpZWRlciBnZWxhbmRldCB3YXIuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFdhZXJlIGVzIG5pY2h0IG5ldHQuLi4gKEdyaW1tYm9ybiwgIDMuIE9rdCAyMDAxLCAxMzozMDoyNSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTAwMjEwODYxOSBvZz1wYXJ0eQp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDIxMDg0MTUgcmc9cGFydHkKfiMhIHRpZD0xMDAxOTU3NzczCkljaCB3ZXJkZSBkYXJhdWYgaGluZ2V3aWVzZW4gZGFzcyBpY2ggZGllIFRlbGVwb3J0dW5mYWVsbGUgbWl0IGRlbSBLbGl0emVsZHJvbQphbHMgZWluemlnZW0gIldlZyIgenVyIEZldWVyZWJlbmUgdmVyd2VjaHNlbC4gRGFoZXI6IGJlaWRlIEFydGlrZWwgYWIgbmFjaApzY2htYXJybi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2FlcmUgZXMgbmljaHQgbmV0dC4uLiAoV2FyZ29uLCAgMy4gT2t0IDIwMDEsIDE1OjE0OjMzKToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDAxOTU4Mzg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTk1Nzc3Mwo+IHVuZCBkaWUKPiBQaWx6ZSBmdWVyIGRlbiBTY2hyYXQgaGFiZW4gd2lyIG5vY2ggbWl0IGJsb3NzZW4gSGFlbmRlbiBlcnd1ZXJndC4uLgpTbyBlaW4gUXVhdHNjaC4gV2lyIGhhYmVuIGRhbWFscyBnZXdhcnRldCwgYmlzIGplbWFuZCBhbmRlcmVyIGRpZSBRdWVzdApnZW1hY2h0IGhhdCB1bmQgc2VpbmUgUmVzdHBpbHplIGltIEhhdXMgYWJnZWxhZGVuIGhhdCwgdW5kIGhhYmVuIHVucyBkYSBkYW5uCmRlbiByaWNodGlnZW4gcmF1c2dlc3VjaHQuCiAgV2FyZ29uCiAgKGRlciBlcnN0IGFscyBNYWdpZXIgaGVyYXVzZ2VmdW5kZW4gaGF0LCBkYXNzIG1hbiBkaWUgUGlsemUgYXVjaCBhdWYKICBkZXIgSG9jaGViZW5lIHNhbW1lbG4ga2FubikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdhZXJlIGVzIG5pY2h0IG5ldHQuLi4gKEdsb2luc29uLCAgMy4gT2t0IDIwMDEsIDE1OjU3OjA1KToKfiMhIHJuPVdhcmdvbiBydD0xMDAyMTE0ODczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTk1Nzc3MwpVbmQgbnVyIGVpbi96d2VpIEphaHJlIHNwYWV0ZXIgbGFnZW4gc293aWVzbyBpbW1lciBzY2hvbiBQaWx6ZSBpbSBIYXVzIHJ1bSBkaWUKbWFuIHBydWVmZW4ga29ubnRlLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogV2FlcmUgZXMgbmljaHQgbmV0dC4uLiAoR3JpbW1ib3JuLCAgMy4gT2t0IDIwMDEsIDE2OjIxOjAyKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMDIxMTc0MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAxOTU3NzczCldvIHdpciBnZXJhZGUgdm9uIGd1dGVuIEZpbG1lbiByZWRlbjogIkFmcmljYW4gUXVlZW4iIGxhZXVmdCBnZXJhZGUgYXVmCkthYmVsMS4gQXVjaCBlaW5lciBtZWluZXIgYWJzb2x1dGVuIEZhdm91cml0ZXMuIEtvZW5udGUgc29nYXIgV3VyemVsIGtlbm5lbiwKZGVyIGhhdCBkYW1hbHMgZGllIFByZW1pZXJlIG5vY2ggbWl0ZXJsZWJ0LiA7LSkKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2FlcmUgZXMgbmljaHQgbmV0dC4uLiAoV3VyemVsLCAgMy4gT2t0IDIwMDEsIDE2OjIzOjQ2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDAyMTE4ODYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTk1Nzc3MwprZW5uIGljaC4gZ3V0ZXIgZmlsbSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogV2FlcmUgZXMgbmljaHQgbmV0dC4uLiAoR3JpbW1ib3JuLCAgMy4gT2t0IDIwMDEsIDE2OjI0OjQ5KToKfiMhIHJuPVd1cnplbCBydD0xMDAyMTE5MDI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTk1Nzc3MwpMdXN0aWdlcndlaXNlIGlzdCBkZXIgaW4gRmFyYmUuIElzdCBlaW4gRmlsbSBkZXIgaW4gbWVpbmVyIEVyaW5uZXJ1bmcgaW1tZXIKc2Nod2FyendlaXNzIGlzdCwgdW5kIHdvIGljaCBpcmdlbmR3aWUgamVkZXNtYWwgdWViZXJyYXNjaHQgYmluIGRhc3MgZXIgZG9jaApmYXJiaWcgaXN0LiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogV2FlcmUgZXMgbmljaHQgbmV0dC4uLiAoV3VyemVsLCAgMy4gT2t0IDIwMDEsIDE2OjI2OjQ3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDAyMTE5MDg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMTk1Nzc3MwpkYXMgdWViZXJyYXNjaHQgbWljaCBqZXR6dCBhdWNoLi4uIGFiZXIgZGllIGhhYmVuIGphIHNvIG1hbmNoZSBmaWxtZQpuYWNoa29sb3JpZXJ0IChwZnVpKS4gaG0uLi4ga29lbm50ZSBhYmVyIHNlaW4sIGRhc3MgYWZyaWNhbiBxdWVlbiBzY2hvbgpkYW1hbHMgZmFyYmlnIHdhci4gdmllbGxlaWNodCBsaWVndCBlcyBhbiBib2dleSwgZGVyIHNvbnN0IHZvciBhbGxlbQpzY2h3YXJ6d2Vpc3NmaWxtZSBnZW1hY2h0IGhhdCwgZGFzcyBtYW4gZGllc2UgYXNzb3ppYXRpb24gaGF0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdhZXJlIGVzIG5pY2h0IG5ldHQuLi4gKEdyaW1tYm9ybiwgIDMuIE9rdCAyMDAxLCAxNjozMDoyMSk6Cn4jISBybj1XdXJ6ZWwgcnQ9MTAwMjExOTIwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDE5NTc3NzMKTm9wZSwgZGVyIGlzdCBvcmlnaW5hbCBmYXJiaWcuIE5peCBrb2xvcmllcnQuIFVuZCBkZXIgRmlsbSBpc3QgamEgYXVjaCB2b24KMTk1MSwgZGEgaXN0IEZhcmJlIG5pY2h0IHNvIHVuZ2V3b2VobmxpY2guIFp1bWFsIEJvZ2FydCBuYXR1ZXJsaWNoIG5hY2gKQ2FzYWJsYW5jYSAoZGVyIGlzdCBhYmVyIHNjaHdhcnp3ZWlzcykgZWluIFN1cGVyc3RhciB3YXIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxhZyB1bmQgc2VpbmUgVHVlY2tlbi4uLi4gKFpvb2ssICAzLiBPa3QgMjAwMSwgMTg6Mjg6MzcpOgoKWFhYIHRlaWx0IERpciBtaXQ6IFRvbGwsIGpldHp0IGlzdCBtaXIgaW0gZ2FuemVuIExhZyBkZXIKWFhYIHRlaWx0IERpciBtaXQ6IEZTYW1tbGVyIGFtIEdpZnQgdW1nZWtpcHB0ICpncnVtbWVsCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExhZyB1bmQgc2VpbmUgVHVlY2tlbi4uLi4gKEJhbWJpLCAgMy4gT2t0IDIwMDEsIDE4OjQxOjIzKToKfiMhIHJuPVpvb2sgcnQ9MTAwMjEyNjUxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDIxMjY1MTcKQW0gR2lmdCB1bWdla2lwcHQ/IEdhYnMgbmljaHQgbWFsIHNvIGVpbmUgUmljaHRsaW5pZSwgZGFzcyBTcGllbGVyIG5pY2h0CnZlcmdpZnRlbiBrb2VubmVuIGR1ZXJmZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExhZyB1bmQgc2VpbmUgVHVlY2tlbi4uLi4gKEFuYWNyaW9uLCAgMy4gT2t0IDIwMDEsIDE4OjQyOjI5KToKfiMhIHJuPUJhbWJpIHJ0PTEwMDIxMjcyODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAyMTI2NTE3CkdpZnRwZmVpbCBydWxlei4KCmFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExhZyB1bmQgc2VpbmUgVHVlY2tlbi4uLi4gKEdyaW1tYm9ybiwgIDMuIE9rdCAyMDAxLCAxODo0MzowMSk6Cn4jISBybj1CYW1iaSBydD0xMDAyMTI3MjgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMjEyNjUxNwpKYSwgaWNoIGthbm4gbWlyIGF1Y2ggbmljaHQgdm9yc3RlbGxlbiBkYXNzIGplbWFuZCBhbiBHaWZ0IHVta2lwcHQuIFdlciBoYXQKc2Nob24gQW5nc3Qgdm9yIGVpbmVtIExldmVsIDEgU3BpZWxlcj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBMYWcgdW5kIHNlaW5lIFR1ZWNrZW4uLi4uIChWYXJkaW9uLCAgMy4gT2t0IDIwMDEsIDE4OjU4OjIwKToKfiMhIHJuPUJhbWJpIHJ0PTEwMDIxMjcyODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAyMTI2NTE3Ck1pciBmYWxsZW4gc3BvbnRhbiAzIEdpbGRlbiBlaW4sIGRpZSB2b24gc2ljaCBhdXMgdmVyZ2lmdGVuIGtvZW5uZW4sIHVuZCBlaW5lCjQuLCBkaWUgZXMgdWViZXIgZWluIEl0ZW0ga2Fubi4gRWluZXIgZGllc2VyIEdpbGRlbiBnZWhvZXJ0IGVpbmVyIGRlaW5lciAyaWVzCmFuLiBFcnN0YXVubGljaCwgd2llIGd1dCBlaW5pZ2UgTWFnaWVyIGhpZXIgaW5mb3JtaWVydCBzaW5kIDotKQoKVmFyZGlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaXMga2xhciAoSGlnaHQsICAzLiBPa3QgMjAwMSwgMjA6MzQ6NDEpOgpEZWluIEZyZXVuZCBHb3JvZyB0ZWlsdCBEaXIgbWl0OiBsYWc/IHdvPyBiZWkgbWlyIG5pY2h0Cls8TWFzdGVSPjpHb3JvZ10gbApbPE1hc3RlUj46PE1hc3RlUj5dIDEzLjQyIGNtZHMvcywgMTU2LjM5IGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMC44JS82MCwgMC44JS8xNSwgMy4yJS8xCgpIaWdodCBzY2htdW56ZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG9jaHplaXQ/IDstKSAoTGlhcmEsICAzLiBPa3QgMjAwMSwgMjI6MjY6MTQpOgpNdXBmZWwgcGlua2VsdCB1bmF1ZmZhZWxsaWcgaW4gZGllIEVja2UuCkZvb2JhciBrcnVlbW10IHNpY2ggdm9yIExhY2hlbi4KR29yb2cgcHJ1c3RldCBsYXV0aGFscyBsb3MuCmVpbiBTdGVpbmJlaXNzZXIgcHJ1c3RldCBsYXV0aGFscyBsb3MuCkJvcmthIGtydWVtbXQgc2ljaCB2b3IgTGFjaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhvY2h6ZWl0PyA7LSkgKE11cGZlbCwgIDMuIE9rdCAyMDAxLCAyMjo0NDo0NCk6Cn4jISBybj1MaWFyYSBydD0xMDAyMTQwNzc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMjE0MDc3NApYcnV1ciBzYWd0OiBHZWggc3BpZWxlbiwgTGlhcmEuClhydXVyIGVyaGVidCBiZXNjaHdvZXJlbmQgZGllIEhhZW5kZS4KTGlhcmEgZ2VodCBzcGllbGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG9jaHplaXRzbG9nIChGb29iYXIsICAzLiBPa3QgMjAwMSwgMjI6NTA6MzUpOgpNb2luLgoKRWluIExvZyB2b24gVGh1ZmhpcnMgdW5kIEZhbnRhZ2hpcm9zIEhvY2h6ZWl0IGlzdCBoaWVyIHp1IGZpbmRlbjoKCmh0dHA6Ly93d3cubXVlbnN0ZXIuZGUvfmtvc3RoL2hvY2h6ZWl0LnR4dAoKU2luZCBjYS4gMzgwIGsuCgpWaWVsIFNwYXNzLgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSG9jaHplaXRzbG9nIChNdXBmZWwsICA0LiBPa3QgMjAwMSwgMDA6MDI6MDYpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwMDIxNDIyMzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAyMTQyMjM1Ci4uLmRhcmF1cyBlaW4ga2xlaW5lciBBdXN6dWcgKG51ciB1bSB6dSB6ZWlnZW4gd2llIHdpbGQgZGFzIHdhciA7KSA6CgogWm9vayBzYWd0OiBwYXJ0eW1vbnN0ZXIgZ2liIGFsbGVuIHNjaG9rb2xhZGUKIC4uLiBkYW5uIHJlaXNzdCBlciBzZWluIEhlbWQgaW4gRmV0emVuLi4uICEKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgKEZvb2JhciwgIDQuIE9rdCAyMDAxLCAwMTowMjozNSk6CkZyb206IGx1dHpAaWtzLWplbmEuZGUgKEx1dHogRG9ubmVyaGFja2UpCk5ld3Nncm91cHM6IGRlLmFsdC50ZWNobmlrLm1pc2MKU3ViamVjdDogUmU6IGFuIGRpZSBTdGVnYW5vZ3JhZmllLUZyZXVuZGUKRGF0ZTogTW9uLCAxIE9jdCAyMDAxIDE1OjM5OjU4ICswMDAwIChVVEMpCk1lc3NhZ2UtSUQ6IDxzbHJuOXJoM2k4Lms4Lmx1dHpAdGFyYW5pcy5pa3MtamVuYS5kZT4KCltzdWJtaXR0ZXIncyBub3RlOiBRdW90aW5nIGVyZ2Flbnp0XQoKPj4+PiBzZWxic3QgYXVmIGRpZSBHZWZhaHIgaGluLCBLbGVpbi1Eb29maWUgenUgc2Vpbjogd2FzIGlzdCBkZW5uCj4+Pj4gIlN0ZWdhbm9ncmFmaWUiPyBVbmQgd29mdWVyIGlzdCBkaWUgZ3V0Pwo+Pj4KPj4+IFZlcnNjaGx1ZXNzZWx1bmcgdm9uIEluZm9ybWF0aW9uIGR1cmNoIFZlcnN0ZWNrZW4gaW4gZWluZXIKPj4+IEJpbGRkYXRlaS4KPj4KPj4gU3RlZ2Fub2dyYWZpZSBpc3QgbmljaHQgbm90d2VuZGlnZXJ3ZWlzZSBWZXJzY2hsdWVzc2VsdW5nLiBFcyBpc3QgZGFzCj4+IHJlaW5lIFZlcnN0ZWNrZW4gZWluZXIga2xlaW5lbiBEYXRlaSBpbSAiUmVkdW5kYW56YmVyZWljaCIgZWluZXIKPj4gZ3Jvc3Nlbi4KPgo+IE9rLCBpY2ggbWVpbnRlIGhhbHQgdmVyc3RlY2tlbiwgc28gZGFzcyBlcyBvaG5lIHRlY2huaXNjaGUKPiBIaWxmc21pdHRlbCBuaWNodCBtZWhyIGxlc2JhciBpc3QuCgpUcml2aWFsOiBTcGVpY2hlcmUgbWl0IE1TLVdvcmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFtaXMgLi4uIChHcmltbWJvcm4sICA0LiBPa3QgMjAwMSwgMTE6MzA6NDEpOgp+IyEgcm49QmlyZHkgcnQ9MTAwMjE4NTcxNiByZz13aXR6ZQp+IyEgdGlkPTEwMDIxNzcwOTYKTmFqYSwgZXMgaXN0IGphIHdpcmtsaWNoIG5pY2h0IHNvIGFscyBzZWkgZGFzIHNvIHNjaHJlY2tsaWNoLCB6d2VpIHZvZWxsaWcKaXJyZWxldmFudGUgTGFlbmRlciBrYW5uIG1hbiBzY2hvbm1hbCBkdXJjaGVpbmFuZGVyYnJpbmdlbi4gT0ssIGRpZSBTY2h3ZWl6ZXIKd3VlcmRlbiB2aWVsbGVpY2h0IGlocmUgQmVyZ2UgdmVybWlzc2VuLCBhYmVyIHdlbiBzdG9lcnQgZGFzIHNjaG9uPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVoLCBnZXNjaGFmZnQgKEN1Y2h1bGxpbiwgIDQuIE9rdCAyMDAxLCAxMzo0MzozOSk6Cn4jISBybj1Hb3IgcnQ9MTAwMjE5NTUxOCByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDAyMTg2MzQwCkZ1ZXIgZGVuIDEuIEFwcmlsIHdhciBlaW4gbCB6dXZpZWwuCgpTY2huYXJjaG5hc2UuIDspCgpDdWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVaCwgZ2VzY2hhZmZ0IChCb2luZywgIDQuIE9rdCAyMDAxLCAxNDoyMDozMik6Cn4jISBvbj1TaWxsdmFuYSBvdD0xMDAyMTg2MzQwIG9nPWQuZ2ViaXJnZQpXZXIgaGFldHRlIGVzIGdlZ2xhdWJ0LCBkYXMgZXMgZGllc2VuIE1vbWVudCBub2NoIGdpYnQuIEFiZXIgZXMgc3RpbW10LApUYXJhbWlzIGlzdCBmZXJ0aWcuClZpZWwgU3Bhc3MhClNpbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVaCwgZ2VzY2hhZmZ0IChCb2luZywgIDQuIE9rdCAyMDAxLCAxNDoyMDozMyk6Cn4jISBvbj1DYXR3ZWF6bGUgb3Q9MTAwMjE4NjQ1MCBvZz1kLmdlYmlyZ2UKfiMhIHJuPVNpbGx2YW5hIHJ0PTEwMDIxODYzNDAgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTAwMjE4NjM0MApLZWluIFNjaGVpc3M/IFVubW9lZ2xpY2ggLi4uLgoKWVRDCgpQUzogR2Vob2VydCBkYXMgbmFjaCBNdWVsbCBvZGVyIGlzc2VzIG51ciBTY2htYXJybj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVWgsIGdlc2NoYWZmdCAoQm9pbmcsICA0LiBPa3QgMjAwMSwgMTQ6MjA6MzQpOgp+IyEgb249Wm9vayBvdD0xMDAyMTg2NDkwIG9nPWQuZ2ViaXJnZQp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMDIxODY0NTAgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTAwMjE4NjM0MApNdWVsbC4gRGVyIEFydGlrZWwgZmFlbGx0IGZhc3QgdW50ZXIgIkdhZXN0ZSBzY2hyZWliZW4gaGllciBuaXgiLgoKWm9vayBydWZ0IG5hY2ggZGVtIFJNIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBVaCwgZ2VzY2hhZmZ0IChCb2luZywgIDQuIE9rdCAyMDAxLCAxNDoyMDozNSk6Cn4jISBvbj1EZWVwYmx1ZSBvdD0xMDAyMTg2NDk2IG9nPWQuZ2ViaXJnZQp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMDIxODY0NTAgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTAwMjE4NjM0MApOYWNoIFRvRG8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVaCwgZ2VzY2hhZmZ0IChCb2luZywgIDQuIE9rdCAyMDAxLCAxNDoyMDozNik6Cn4jISBvbj1Hb3Igb3Q9MTAwMjE5NTUxOCBvZz1kLmdlYmlyZ2UKfiMhIHJuPVNpbGx2YW5hIHJ0PTEwMDIxODYzNDAgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTAwMjE4NjM0MApEdSwgaGV1dGUgaXN0IG5pY2h0IGRlciAxLiBBcHJpbCwgd28gc29sY2hlIFNjaGVyemUgenUgcmVjaHRmZXJ0aWdlbiB3YWVyZW4uCjspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVoLCBnZXNjaGFmZnQgKEJvaW5nLCAgNC4gT2t0IDIwMDEsIDE0OjIwOjM3KToKfiMhIG9uPVphcm5peWEgb3Q9MTAwMjE5NjUxMCBvZz1kLmdlYmlyZ2UKfiMhIHJuPUdvciBydD0xMDAyMTk1NTE4IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwMDIxODYzNDAKYWxzbyB3ZXIgYXVmIFNJTExWQU5BIG1pdCBkb3BwZWx0ZW0gbCByZWluZmFlbGx0LCBkZXIgaGF0IGVzIG5pY2h0IGFuZGVycwp2ZXJkaWVudC4KCk1hcmMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFVoLCBnZXNjaGFmZnQgKEJvaW5nLCAgNC4gT2t0IDIwMDEsIDE0OjIwOjM4KToKfiMhIG9uPUdvciBvdD0xMDAyMTk2NTgyIG9nPWQuZ2ViaXJnZQp+IyEgcm49WmFybml5YSBydD0xMDAyMTk2NTEwIHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwMDIxODYzNDAKLi4uLnVuZCB3ZXIgZ2VzY2hyaWViZW5lcyBuaWNodCB2ZXJzdGVodCwgc29sbHRlIGJlc3NlciBuaWNodCBzZWxiZXIKc2NocmVpYmVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBpdGZhbGw/Pz8gKERlZXBibHVlLCAgNC4gT2t0IDIwMDEsIDE1OjUyOjEzKToKRGVpbiBGcmV1bmQgQ29yYWsgdGVpbHQgRGlyIG1pdDogaXJnZW5kd2VyIGx1c3QgbmUgcnVuZGUgenUgbWV0emVsbj8gbWlyCkRlaW4gRnJldW5kIENvcmFrIHRlaWx0IERpciBtaXQ6IGZlaGxlbiBkYSBub2NoIHNvIGVpbiBwYWFyIHNhY2hlbgpQaXRmYWxsICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTVBBIChHbG9pbnNvbiwgIDQuIE9rdCAyMDAxLCAxNzoxMjozNyk6CkRpZSBNUEEgYmVyaWNodGV0IHVlYmVyIERpc2t1c3Npb25lbiB6dSBBbnN0cmVuZ3VuZ2VuIHp1ciBVbnRlcmRydWVja3VuZwptb3JhbGlzY2ggdmVyd2VyZmxpY2hlciBBa3Rpdml0YWV0ZW4uIEVpbiBqZWRlciBpc3QgZGF6dSBhdWZnZWZvcmRlcnQgZWluZW4KVGVpbCBzZWluZXIgbW9yYWxpc2NoZW4gQW5zaWNodGVuIGluIFJlZ2VsbiB6dSBwcmVzc2VuIHVtIGVpbmVuIEtvZGV4IHp1CmVyc3RlbGxlbi4KCkdsb2luKHNvbiksIGJlcmljaHRldCB2b24gZGVyIEZyb250CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERlZXBibHVlLCAgNC4gT2t0IDIwMDEsIDE4OjA5OjM1KToKRGVpbiBGcmV1bmQgQ29yYWsgdGVpbHQgRGlyIG1pdDogaWNoIGdlaCBkYW5uIG1hbCB2ZXJzdWNoZW4gbWVpbiB6ZXVnIHp1CkRlaW4gRnJldW5kIENvcmFrIHRlaWx0IERpciBtaXQ6IGhvbGVuLCBvZGVyIHp1IHN0ZXJiZW4uLi4KWy4uLl0KW1RvZDpMYXJzXSBEaWUgRmxhbW1lIHZvbiBVZHVuIGhhdCBnZXJhZGUgQ29yYWsgdW1nZWJyYWNodC4KW1RvZDpEaWUgRmxhbW1lIHZvbiBVZHVuXSBIYXN0IER1IGV0d2FzIGFuZGVyZXMgZXJ3YXJ0ZXQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoaWhpIChQYXRyeW4sICA0LiBPa3QgMjAwMSwgMjA6MDc6MjQpOgpncmFkIGluIG5ld3Nncm91cCBnZWZ1bmRlbi4uLnJlY2h0IG5ldHQgZmluZGUgaWNoCi0tLS0tCk1vaW4hCgpBbSAwMi4xMC4yMDAxIHNjaHJpZWIgU3RlZmFuIE1hdHRoaWFzIEF1c3QgPHNtYUAzcGx1czQuZGU+IDoKCgo+ID5JY2ggZ2xhdWJlIG5pY2h0IGRhc3Mgd2lyIHNvIGJhbGQgZWluZW4ga29tcGxldHQgbmV1ZW4gU3RhbmRhcmQgYnJhdWNoZW4uCj4gPldhcyB3aXIgYnJhdWNoZW4gaXN0IGVpbiBncnVlbmRsaWNoZXMgQXVzbWlzdGVuIGRlciBiaXNoZXJpZ2VuIFN0YW5kYXJkcwoKCj4gRGFzIGtsYXBwdCBuaWUgdW5kIG5pbW1lci4gU3RhbmRhcmRzIHdlcmRlbiBpbW1lciBncm9lc3NlciwgbmllbWFscwo+IGtsZWluZXIuICBNaXIgZmFlbGx0IGtlaW4gQmVpc3BpZWwgZWluLCB3byBtYW4gZXR3YXMgenVzYW1tZW5nZXN0cmljaGVuCj4gaGF0LgoKCipTcHVyYnJlaXRlKgoKRGllIFNwdXJicmVpdGUgdm9uIEVpc2VuYmFobmVuIGluIGRlbiBVU0EgdW5kIGluIEthbmFkYSAoZGVyIEFic3RhbmQgCnp3aXNjaGVuIGRlbiBHbGVpc2VuKSBpc3QgNCBGdXNzIDguNSBab2xsLiBEaWVzIGlzdCBhdWNoIGRpZSBTcHVyYnJlaXRlIApoaWVyenVsYW5kZSBtaXQgMTQzNSBtbS4gRGFzIGlzdCBlaW5lIGF1c3Nlcm9yZGVudGxpY2gga3J1bW1lIFphaGwuCgpXYXJ1bSB3dXJkZSBnZXJhZGUgZGllc2UgU3B1cmJyZWl0ZSB2ZXJ3ZW5kZXQ/CgpXZWlsIEVpc2VuYmFobmVuIHNvIGluICBFbmdsYW5kIGdlYmF1dCB3b3JkZW4gd2FyZW4sIHVuZCBkaWUgCkVpc2VuYmFobmVuIGRlciBVU0Egd3VyZGVuIHZvbiBlbmdsaXNjaGVuIEF1c3dhbmRlcmVybiBnZWJhdXQuCgpXYXJ1bSBoYXR0ZW4gZGllIEVuZ2xhZW5kZXIgc2llIHNvIGdlYmF1dD8KCldlaWwgZGllIGVyc3RlbiBFaXNlbmJhaG5saW5pZW4gdm9uIGRlbnNlbGJlbiBMZXV0ZW4gZ2ViYXV0IHdvcmRlbiAKd2FyZW4sIGRpZSBpbSBWb3ItRWlzZW5iYWhuLVplaXRhbHRlciBkaWUgU3RyYXNzZW5iYWhubGluaWVuIGdlYmF1dCAKaGF0dGVuLCBtaXQgZWJlbiBqZW5lciBTcHVyYnJlaXRlLgoKVW5kIHdhcnVtIGhhdHRlbiBkaWUgU3RyYXNzZW5iYWhuLUxldXRlIGplbmUgU3B1cmJyZWl0ZSBiZW51dHp0PwoKV2VpbCBzaWUgZGllc2VsYmVuIFdlcmtiYWVua2UgdW5kIFdlcmt6ZXVnZSB2ZXJ3ZW5kZXQgaGF0dGVuIHdpZSBiZWltIApCYXVlbiB2b24gbm9ybWFsZW4gV2FnZW4sIHdlbGNoZSBhdWNoIGRpZXNlbiBSYWRhYnN0YW5kIGhhdHRlbi4KCk51biBndXQuIEFiZXIgd2FydW0gaGF0dGVuIGRpZSBXYWdlbiBnZW5hdSBkaWVzZW4gUmFkYWJzdGFuZD8KCldlaWwgZGllIFJhZWRlciBkZXIgV2FnZW4gc29uc3QgenUgQnJ1Y2ggZ2VnYW5nZW4gd2FlcmVuIGJlaW0gRmFocmVuIGF1ZiAKZ2V3aXNzZW4gRmVybnN0cmFzc2VuIGluIEVuZ2xhbmQsIHdlaWwgZGllc2UgU3RyYXNzZW4gdGllZiBlaW5nZWZhaHJlbmUgClJpbGxlbiBpbiBkaWVzZW0gQWJzdGFuZCBoYXR0ZW4uCgpXZXIgaGF0dGUgZGllc2UgU3RyYXNzZW4gZ2ViYXV0LCBkaWUgc28gYWx0IHdhcmVuLCBkYXNzIGRpZSBXYWdlbiB0aWVmZSAKRnVyY2hlbiBnZWZhaHJlbiBoYXR0ZW4/CgpEaWUgZXJzdGVuIEZlcm5zdHJhc3NlbiBpbiBFbmdsYW5kLCB3aWUgdWViZXJhbGwgaW4gZ2FueiBFdXJvcGEsIHdhcmVuIAp2b20ga2Fpc2VybGljaGVuIFJvbSBmdWVyIHNlaW5lIExlZ2lvbmVuIGdlYmF1dCB3b3JkZW4gdW5kIHNpbmQgaW1tZXIgCm5vY2ggaW4gR2VicmF1Y2guCgpVbmQgZGllIEZ1cmNoZW4gaW4gZGVuIFN0cmFzc2VuPwoKRGllIHVyc3BydWVuZ2xpY2hlbiBGdXJjaGVuLCBhdWYgZGllIGplZGVybWFubiBSdWVja3NpY2h0IG5laG1lbiBtdXNzdGUsIAphdXMgQW5nc3QsIHNvbnN0IGRpZSBXYWdlbnJhZWRlciB6dSBCcnVjaCB6dSBmYWhyZW4sIHN0YW1tdGVuIHZvbiAKcm9lbWlzY2hlbiBTdHJlaXR3YWdlbiwgdm9uIFN0cmVpdHdhZ2VuLCBkaWUgdWViZXJhbGwgaW0gUm9lbWlzY2hlbiBSZWljaCAKZ2xlaWNoIHdhcmVuIGluIHB1bmt0byBSYWRhYnN0YW5kLgoKRGllIFN0YW5kYXJkLUVpc2VuYmFobi1TcHVyYnJlaXRlIGluIGRlbiBVU0Egdm9uIDQgRnVzcyA4LjUgWm9sbCBpc3QgCmFiZ2VsZWl0ZXQgdm9uIGRlciB1cnNwcnVlbmdsaWNoZW4gU3BlemlmaWthdGlvbiBmdWVyIHJvZW1pc2NoZSAKU3RyZWl0d2FnZW4uIFNwZXppZmlrYXRpb24gdW5kIEJ1ZXJva3JhdGllIHNpbmQgdW5zdGVyYmxpY2guIFdlbm4gU2llIAphbHNvIGRhcyBuYWVjaHN0ZSBNYWwgaXJnZW5kZWluZSBTcGV6aWZpa2F0aW9uIHZvcmdlbGVndCBiZWtvbW1lbiB1bmQgCnNpY2ggd3VuZGVybiwgd2VsY2hlciBQZmVyZGUtQXJzY2ggd29obCBkYXJhdWYgZ2Vrb21tZW4gaXN0LCBrb2VubnRlbiAKU2llIGdlbmF1IGlucyBTY2h3YXJ6ZSB0cmVmZmVuLCB3ZWlsIG5hZW1saWNoIGRlciByb2VtaXNjaGUgU3RyZWl0d2FnZW4gCmdlbmF1IHNvIGJyZWl0IGdlbWFjaHQgd29yZGVuIHdhciwgZGFzcyBlciBQbGF0eiBib3QgZnVlciB6d2VpIEhpbnRlcm4gCnZvbiBBcm1lZS1QZmVyZGVuLgoKRGFtaXQgaGFiZW4gd2lyIGVuZGxpY2ggZGllIEFudHdvcnQgYXVmIGRpZSB1cnNwcnVlbmdsaWNoZSBGcmFnZS4KCkVzIGdpYnQgbm9jaCBlaW5lIGludGVyZXNzYW50ZSBGb3J0c2V0enVuZyBkaWVzZXIgR2VzY2hpY2h0ZSBtaXQgCkVpc2VuYmFobi1TcHVyYWJzdGFlbmRlbiB1bmQgUGZlcmRlLUhpbnRlcm4uIFdlbm4gbWFuIHNpY2ggZGVuIFNwYWNlIApTaHV0dGxlIGFuc2llaHQsIHdpZSBlciBhdWYgZGVtIFN0YXJ0cGxhdHogc3RlaHQsIGJlbWVya3QgbWFuIHp3ZWkgCkhpbGZzcmFrZXRlbiBhbiBkZW4gU2VpdGVuIGRlcyBncm9zc2VuIEhhdXB0LVRyZWlic3RvZmZ0YW5rcy4gRGllcyBzaW5kIApGZXN0c3RvZmZyYWtldGVuLCAic29saWQgcm9ja2V0IGJvb3N0ZXJzIiwga3VyeiBTUkIuIERpZXNlIFNSQiB3ZXJkZW4gCnZvbiBkZXIgRmlybWEgVGhpb2tvbCBpbiBlaW5lciBGYWJyaWsgaW4gVXRhaCBoZXJnZXN0ZWxsdC4KCkRpZSBJbmdlbmlldXJlLCB3ZWxjaGUgZGllIFNSQiBrb256aXBpZXJ0IGhhdHRlbiwgaGFldHRlbiBzaWNoIGRpZXNlIAplaWdlbnRsaWNoIGV0d2FzIGRpY2tlciBnZXd1ZW5zY2h0LiBBYmVyIGRpZSBTUkIgbXVzc3RlbiBwZXIgRWlzZW5iYWhuIAp2b24gZGVyIEZhYnJpayB6dW0gU3RhcnRwbGF0eiB0cmFuc3BvcnRpZXJ0IHdlcmRlbi4gRGllIGVudHNwcmVjaGVuZGUgCkVpc2VuYmFobmxpbmllIHZlcmxpZWYgZHVyY2ggZWluZW4gVHVubmVsIGluIGRlbiBCZXJnZW4sIHVuZCBkaWUgU1JCIAptdXNzdGVuIG5hdHVlcmxpY2ggZHVyY2ggZGllc2VuIFR1bm5lbCBwYXNzZW4uIERlciBUdW5uZWwgaXN0IGVpbiAgd2VuaWcgCmJyZWl0ZXIgYWxzIGRpZSBTY2hpZW5lbiwgdW5kIGRpZSBTY2hpZW5lbiBoYWJlbiBldHdhIGRlbiBBYnN0YW5kIHZvbiAKendlaSBQZmVyZGUtSGludGVybiBuZWJlbmVpbmFuZGVyLgoKU28ga29tbXQgZXMsIGRhc3MgZWluIHdpY2h0aWdlcyBGZWF0dXJlIGVpbmVzIGRlciBtb2Rlcm5zdGVuIApUcmFuc3BvcnRzeXN0ZW1lIGRlciBXZWx0IHZvciB6d2VpdGF1c2VuZCBKYWhyZW4gZmVzdGdlbGVndCB3dXJkZSBtaXQgCkhpbGZlIGRlciBCcmVpdGUgZGVzIEhpbnRlcm4gZWluZXMgUGZlcmRlcy4KCgo+IEFjaCBqYSwgd2VsY2hlIENsaWVudHMgZ2lidCBlcyBkZW5uIG5vY2ggaW4gZ3Jvc3NlciBaYWhsIG5lYmVuCj4gV2luL01hYy9MaW51eCBkYXMgZWluZSBQb3J0aWVydW5nIGludGVyZXNzYW50IHdhZXJlPyAgRnJlZUJTRD8KCgpBbHMgRGVza3RvcC1TeXN0ZW0/IC0gRnVlciBlaW4gU2VydmVyLVN5c3RlbSBpc3Qgc28gZXR3YXMgZG9jaCAKdW5pbnRlcmVzc2FudC4KaHR0cDovL3d3dy5nb29nbGUuY29tL3ByZXNzL3plaXRnZWlzdC5odG1sIChpbW1lcmhpbiA0LDM4JSAiT3RoZXIiKQoKVHNjaHVlc3MKSGF1a2UKCi0tIApwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVaCwgZ2VzY2hhZmZ0IChIaWdodCwgIDQuIE9rdCAyMDAxLCAyMDo1MTowMyk6Cn4jISBybj1Cb2luZyBydD0xMDAyMTk4MDMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMjE5ODAzMgpuZXQga2xlaW5lIHNwaWVsZXIgdmVyYXJzY2hlbiBoaWVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaGloaSAoVmFuaW9uLCAgNC4gT2t0IDIwMDEsIDIzOjA5OjAzKToKfiMhIHJuPVBhdHJ5biBydD0xMDAyMjE4ODQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMjIxODg0NApJbnRlcmVzc2FudCB6dSBkZW0gTGluayBnYW56IHVudGVuIGlzdCBkaWUgRXJrbGFlcnVuZyB2b24gWmVpdGdlaXN0LgoKInplaXRnZWlzdCB8IFByb251bmNpYXRpb246ICd0c0l0LSJnSXN0LCAnekl0IHwgRnVuY3Rpb246IG5vdW4gfCBFdHltb2xvZ3k6Ckdlcm1hbiwgZnJvbSBaZWl0ICh0aW1lKSArIEdlaXN0IChzcGlyaXQpIHwgRGF0ZTogMTg4NCB8IE1lYW5pbmc6IHRoZSBnZW5lcmFsCmludGVsbGVjdHVhbCwgbW9yYWwsIGFuZCBjdWx0dXJhbCBjbGltYXRlIG9mIGFuIGVyYSIKCkthbm4gbWlyIG1hbCBqZW1hbmQgc2FnZW4sIG5hY2ggd2VsY2hlbSBTeXN0ZW0gZGllIFByb25vdW5jaWF0aW9uCmZ1bnRrdGlvbmllcnQ/CgpWKiwgZXJzdGF1bnQgdW5kIHZlcndpcnJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG1hZ2lldGV4dCBhdWYgYWRhbWFudHNjaHVoZSAoVmFybGFyaW9uLCAgNC4gT2t0IDIwMDEsIDIzOjI3OjAwKToKfiMhIHJuPUxhY3JpIHJ0PTEwMDIyMzA3NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDAyMjMwNzU4CmhtbS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBoaWhpIChBbmF0b2wsICA0LiBPa3QgMjAwMSwgMjM6NTk6MTUpOgp+IyEgcm49VmFuaW9uIHJ0PTEwMDIyMjk3NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAyMjE4ODQ0CkVuZ2xpc2NoZSBBdXNzcHJhY2hlIGdlc2NocmllYmVuZW4gV29ydGVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBoaWhpIChHb3JvZywgIDUuIE9rdCAyMDAxLCAxMzowNjoyOSk6Cn4jISBybj1WYW5pb24gcnQ9MTAwMjIyOTc0MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDIyMTg4NDQKSG1tbSBpY2ggZGVuayBkYXMgbGFldWZ0IHVlYmVyIGRhcyBlbmdsaXNjaGUgaSwgZGFzIGVpIGF1c2dlc3Byb2NoZW4gd2lyZC4KZGFtaXQga2FlbWUgbWFubiBkYW5uIGF1ZiBzb3dhcyB3aWUgdHNlaXQgZ2Vpc3Qgb2RlciBzby4KCkdvcm9nIGRlciBpbiBkZXIgU2NodWxlIG5vY2ggTGF1dHNjaHJpZnQgbWl0IGlucyBWb2thYmVsaGVmdCBlaW50cmFnZW4gbXVzc3RlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGh5bGFrZW4gZGVyIERpZWIgKFNvdWwsICA1LiBPa3QgMjAwMSwgMTc6NDU6MjQpOgpIZXV0ZToKRGEgRHUgMyBtdW1pZml6aWVydGUgSGFlbmRlIG5pY2h0IG1laHIgdHJhZ2VuIGthbm5zdCwgbGVndCBQaGx5YWtlbiBzaWUgYXVmCmRlbiBCb2Rlbi4KPlBoeWxha2VuIG5pbW10IDMgbXVtaWZpemllcnRlIEhhZW5kZS4KUGh5bGFrZW4gdmVyc2Nod2luZGV0IG1pdCBlaW5lbSBGaW5nZXJzY2huaXBwZW4uCgpMZWljaHQgdW52ZXJzY2hhZW10IGRlciBKdW5nZS4gV2VubiBpaHIgaWhuIGRhcyBuYWVjaHN0ZW1hbCBraWxsdCAtIGdydWVzc3QgaW4Kc2Nob2VuIHZvbiBtaXIhCgpTb3VsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprYWVtcGZlbiBuYWNoIGRlbSBUb2Q/IChEZWVwYmx1ZSwgIDcuIE9rdCAyMDAxLCAwMTowMTo1MSk6CkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOiAKREVSIEtBTVBGIElOIERFUiBBUkVOQSBCRUdJTk5UISBNT0VHRSBERVIgU1RBRVJLRVJFIEdFV0lOTkVOIQpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDogClBpdGZhbGwgc2llaHQgZXR3YXMgbWl0Z2Vub21tZW4gYXVzLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDogClBpdGZhbGwgc2llaHQgZXR3YXMgbWl0Z2Vub21tZW4gYXVzLgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDogCk1pcmphbSB3aXJkIGdldHJvZmZlbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDogClBpdGZhbGwgbXVzcyBUcmVmZmVyIGhpbm5laG1lbi4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6IApNaXJqYW0gbXVzcyBUcmVmZmVyIGhpbm5laG1lbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6IApQaXRmYWxsIHdpcmQgZ2V0cm9mZmVuLgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDogClBpdGZhbGwgbXVzcyBzY2h3ZXJlIFRyZWZmZXIgZWluc3RlY2tlbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApbVG9kOkxhcnNdIE1pcmphbSBoYXQgZ2VyYWRlIFBpdGZhbGwgdW1nZWJyYWNodC4KW1RvZDpQaXRmYWxsXSBNdXV1dWg/ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCktydWZ0dXIgdmVyc2Nod2luZGV0IGFscyBJbnNwaXJhdGlvbnNwYXJ0aWtlbC4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6IApQaXRmYWxsIHNpZWh0IGV0d2FzIG1pdGdlbm9tbWVuIGF1cy4KRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6IApQaXRmYWxsIHN0ZWh0IGt1cnogdm9yIGRlbSBFbmRlLCBtZWluZSBEYW1lbiB1bmQgSGVycmVuLiBEaWUgRW50c2NoZWlkdW5nCnN0ZWh0IHVubWl0dGVsYmFyIGJldm9yISEKRGVyIEFyZW5hc3ByZWNoZXIgcnVmdCA6IApNaXJqYW0gc2llaHQgZXR3YXMgbWl0Z2Vub21tZW4gYXVzLgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDogCk1pcmphbSB3aXJkIHdpZWRlcmhvbHQgZ2V0cm9mZmVuIQpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDogCk1laW5lIERhbWVuLCB1bmQgSGVycmVuLCB3YXMgZnVlciBlaW4gS2FtcGYhIFdpciB3dXJkZW4gWmV1Z2VuIGVpbmVzIGdyb3NzZW4KS2FtcGZlcywgZGVyIGluIE1pcmphbSBlaW5lbiB3dWVyZGV2b2xsZW4gU2llZ2VyIGZhbmQhIFVucyBibGVpYnQKbnVuIG5pY2h0cyB3ZWl0ZXIsIGFscyBJaG5lbiBlaW5lIHNjaG9lbmUgSGVpbXJlaXNlIHp1IHd1ZW5zY2hlbiEgQmlzIHp1bQpuYWVjaHN0ZW4gbWFsIQpFaW4gTWFubiBtaXQgZ3Jvc3NlbiBTcGVja2FybWVuIHVuZCBlaW5lciBTY2h1ZXJ6ZSBhdWYgZGVyICdPdHRvcyBJbWJpc3N0dWJlJwpzdGVodCBrb21tdCBpbiBkaWUgQXJlbmEgdW5kIHNjaGxlaWZ0IGRpZSBMZWljaGUgcmF1cy4gICAgICAgICAgICAgICAgICAgICAgICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnRydmVzIChQaXRmYWxsLCAgNy4gT2t0IDIwMDEsIDIwOjEzOjU5KToKRWluIEdlbmVyYWwgc2FndDogdXBzCkVpbiBHZW5lcmFsIGdyaW5zdC4KRWluIEdlbmVyYWwgbW9lY2h0ZSBkYXMgU3RydXYgYmV0cmV0ZW4uIER1IHNvbGx0ZXN0IGlobiBncnVlbmRsaWNoIGJlZnJhZ2VuCnVuZCBkdXJjaHN1Y2hlbiwgc2NobGllc3NsaWNoIGlzdCBlciBrZWluIFRydmVzIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBpbSBzY2h3YXJ6ZW4gS3Jpc3RhbGwgKEVsY2lkLCAgNy4gT2t0IDIwMDEsIDIzOjA0OjI3KToKVmVyd2VuZGUgRGVpbmUgYWx0ZSBzdGVyYmxpY2hlIEh1ZWxsZSAuLi4KRGVyIHNjaHdhcnplIEtyaXN0YWxsIGlzdCB2b24gaW5uZW4gZ2VuYXUgZGFzOiBzY2h3YXJ6LiBWaWVsIGdpYnQgZXMgaGllcgplaWdlbnRsaWNoIG5pY2h0IHp1IHNlaGVuLCBhYmdlc2VoZW4gdmllbGxlaWNodCB2b24gZGVtIE11c3RlciBhbiBkZXIgV2FuZC4KV2VubiBEdSBoaWVyIHdlZyB3aWxsc3QsIHN0ZWhlbiBEaXIgaW1tZXJoaW4gZnVlbmYgdmVyc2NoaWVkZW5lIFdlZ2UgenVyCkF1c3dhaGwuCkVzIGdpYnQgZnVlbmYgc2ljaHRiYXJlIEF1c2dhZW5nZTogbm9yZG9zdGVuLCBzdWVkb3N0ZW4sIG9zdG9iZW4sCnN1ZWRzdWVkb3N0dW50ZW4gdW5kIG5vcmRub3Jkb3N0dW50ZW4uCkFwb2xsb25pYSwgRWxiZXJldCwgUGl0ZmFsbCwgTGlyYW5hIHVuZCBNZWxjaG9yIHNpbmQgaW0gU3BpZWwuCk9kaW4gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KT2RpbiBoYXV0IGFiLgpFaW4gQmxpdHogenVja3QgYXVzIGRlciBEZWNrZSB1bmQgdHJpZmZ0IERpY2guCkR1IGhhc3QgamV0enQgMTc0IExlYmVuc3B1bmt0ZSB1bmQgMjAyIEtvbnplbnRyYXRpb25zcHVua3RlLgpUcnVnICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpEdSBoYXN0IGpldHp0IDE3NSBMZWJlbnNwdW5rdGUgdW5kIDIwMiBLb256ZW50cmF0aW9uc3B1bmt0ZS4KCkhtbW1tLCBPZGluIGZhZWxsdCBlcnN0IHRvdCB1bSB1bmQgaGF1dCBkYW5uIGFiPz8/Pz8/PwpVbmQgd2llc28gZ2VodHMgbWlyIGV0d2FzIGJlc3NlciB3ZW5uIFRydWcgbmljaHQgbWVociBkYSBpc3QgPz8/PwoKRnJhZ2VuIHVlYmVyIEZyYWdlbi4uCgpJbiBkaWVzZW0gU2lubmUgCkVsY2lkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbmV1bGljaCBpbSBzY2h3YXJ6ZW4gS3Jpc3RhbGwgKE11cGZlbCwgIDcuIE9rdCAyMDAxLCAyMzoxNzoyMCk6Cn4jISBybj1FbGNpZCBydD0xMDAyNDg4NjY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMjQ4ODY2NwpEYXMgaXN0IHZvZWxsaWcgbm9ybWFsLCBFbGNpZCA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbmV1bGljaCBpbSBzY2h3YXJ6ZW4gS3Jpc3RhbGwgKFZhcmxhcmlvbiwgIDcuIE9rdCAyMDAxLCAyMzoyMToxNCk6Cn4jISBybj1NdXBmZWwgcnQ9MTAwMjQ4OTQ0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDI0ODg2NjcKVmFybGFyaW9uIG5pY2t0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbmV1bGljaCBpbSBzY2h3YXJ6ZW4gS3Jpc3RhbGwgKEVsY2lkLCAgOC4gT2t0IDIwMDEsIDExOjM3OjEyKToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDAyNDg5Njc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMjQ4ODY2NwpOYSB3ZW5uIGRhcyBzbyBpc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNaCB3YXQgZGVuIG51IChUZWt0dWtvLCAgOC4gT2t0IDIwMDEsIDIxOjExOjQ5KToKRGVpbiBGcmV1bmQgQ29yYWsgdGVpbHQgRGlyIG1pdDogaWNoIHN0ZXJiIGRhbm4gbWFsCkNvcmFrICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IENIISAoR3JpbW1ib3JuLCAgOC4gT2t0IDIwMDEsIDIyOjI2OjU1KToKfiMhIHJuPVpvb2sgcnQ9MTAwMjU3Mjc2MSByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTAwMjU3Mjc2MQpXYXMgZGVubiBudW46IFNjaHdlaXogb2RlciBVcmxhdWI/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQ0ghIChDcm9mdCwgIDguIE9rdCAyMDAxLCAyMjoyNzo0MSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwMjU3MjgxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDI1NzI3NjEKS3VyenVybGF1YiAmIFNjaHdlaXouICBVbSBpbiBkaWUgU2Nod2VpeiB6dSBrb21tZW4sIG11c3MgZXIgamEgbm9jaCBoaW4gdW5kCndpZWRlciB6dXJ1ZWNrZmFocmVuLgpHcnVzcyBDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBDSCEgKFpvb2ssICA4LiBPa3QgMjAwMSwgMjI6Mjc6NDIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDI1NzI4MTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAyNTcyNzYxCkljaCBrYW5uIGluIGRlciBIZWltYXQgVXJsYXViIG1hY2hlbiwgamEgd2lya2xpY2guIDspIEF1c3NlcmRlbSBtdXNzIGljaAptZWluZSBLb250ZW4gcHJ1ZWZlbi4gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBDSCEgKFRpYW1haywgIDguIE9rdCAyMDAxLCAyMjoyOTo1OSk6Cn4jISBybj1ab29rIHJ0PTEwMDI1NzI4NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAyNTcyNzYxCldhc2NoIGRhcyBHZWxkIGxpZWJlciBqZXR6dCwgYmV2b3IgZGFzIEJhbmtnZWhlaW1uaXMgZ2FueiBhYmdlc2NoYWZmdCBpc3QuCgpVbmQgYnJpbmcgbWlyIGJlaSBkZXIgR2VsZWdlbmhlaXQgZWluIHBhYXIgS2lsbyBkYXZvbiBtaXQuIDteKQoKClRpYW1hawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJ1c3RyaWVydD8gKFNjaGxlaWNoZXIsICA5LiBPa3QgMjAwMSwgMTA6MjM6MDcpOgpOb3JjdXIgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLiAKWzxNYXN0ZVI+Ok5vcmN1cl0gdXAgIApbPE1hc3RlUj46PE1hc3RlUj5dIERhcyBNVUQgbGFldWZ0IGpldHp0IDkgU3R1bmRlbiwgMTUgTWludXRlbiB1bmQgMTQgCltzY2huaXBwLi4uXQpOb3JjdXIgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KClNjaGxlaWNoZXIgc2NobXVuemVsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE11ZWxsaGFsZGVuIGluIFNlaGVyaGFldXNlcm4gKEFuYXRvbCwgIDkuIE9rdCAyMDAxLCAxNjoxMzo0MSk6Cn4jISBybj1QYWRyZWljIHJ0PTEwMDI2MjM2OTEgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD0xMDAyNTcxMDg4Cj4gQXNzb3ppYWxlcyBWZXJoYWx0ZW4gaXN0IGluIG1laW5lbiBBdWdlbiBtZWhyIGFscyBHcnVuZCBnZW51ZyBkYWZ1ZXIuLi4KCipQUlVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTVCogVW5kIGRhcyB2b24gRGlyLCBQYWRyZWljPyEgOm8pCgpBbmF0b2wsIGZhc3N0IGVzIG5pY2h0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYW5kbGVyIG1hbCB3aWVkZXIgOikgKERhcmt3aW5nLCAgOS4gT2t0IDIwMDEsIDE5OjIyOjQzKToKRWluIHdhYmVybmRlcyBHZWJpbGRlIGVyc2NoZWludCB1cnBsb2V0emxpY2ggdm9yIERpci4KRGVyIFdhbmRsZXIgdmVyc2Nod2luZGV0IHVycGxvZXR6bGljaC4KSmVtYW5kIHNjaHJlaXQ6IFdlZyBoaWVyISBFZ2FsIHdvaGluIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFlbW9uZW4gdW50ZXIgc2ljaCAoRGVlcGJsdWUsICA5LiBPa3QgMjAwMSwgMTk6MjI6NTUpOgpBbHNvIERhcyBPbWJhdGlzIHNvZ2FyIGRhZW1vbmVuIHZlcnRyZWlidDoKU2FtaWVsIGtpY2hlcnQgd2lsZCB1bmQgc3ByaWNodCBzZWx0c2FtZSBXb3J0ZSBtaXQgZWluZXIgU3RpbW1lLCBkaWUgZ2FyIG5pY2h0Cnp1IGlobSBwYXNzdC4gU29mb3J0IGJpbGRldCBzaWNoIGVpbiBkdW5rbGVzIFBvcnRhbCBtaXR0ZW4gaW4gZGVyIEx1ZnQuCk9tYmF0aXMgZXJzY2hlaW50IG1pdCBQb2x0ZXJuIHVuZCBHZXRvZXNlLgpJbnRhcmJpciB2ZXJsYWVzc3QgZGllc2UgV2VsdC4KS3J1ZnR1ciB2ZXJzY2h3aW5kZXQgYWxzIEluc3BpcmF0aW9uc3BhcnRpa2VsLgpCaHV0dXJpaCB2ZXJibGFzc3QgaW0gTmljaHRzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhZW1vbmVuIHVudGVyIHNpY2ggKEdyaW1tYm9ybiwgIDkuIE9rdCAyMDAxLCAxOToyMzozMSk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDAyNjQ4MTc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMjY0ODE3NQpTaWUgbW9lZ2VuIGJvZXNlIHNlaW4sIGFiZXIgc2llIHNpbmQgbmljaHQgZGFlbWxpY2guLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRW5kbGljaCB3YXMgZ2V3b25uZW4hIChNZXNpcmlpLCAxMC4gT2t0IDIwMDEsIDAwOjU1OjQ4KToKRHUgZm9yZGVyc3QgRGVpbiBHbHVlY2sgaGVyYXVzIHVuZCBzZXR6dCAwIE11ZW56ZW4hClZlcnRyYXVlbnN2b2xsIHNjaGxpZXNzdCBEdSBkaWUgQXVnZW4gdW5kIHNwcmljaHN0IGVpbiBrdXJ6ZXMgU3Rvc3NnZWJldAphbiBGb3J0dW5hLgpBbHMgRHUgZGllIEF1Z2VuIHdpZWRlciBvZWZmbmVzdCBzY2hlaW5zdCBEdSB0YXRzYWVjaGxpY2ggR2x1ZWNrIGdlaGFidAp6dSBoYWJlbiEgRHUgc2llaHN0IHBsb2V0emxpY2ggMCBNdWVuemVuIHZvciBEaXIgbGllZ2VuLCBkaWUgRHUKZ2llcmlnIGtpY2hlcm5kIHNvZm9ydCBlaW5zdGVja3N0LgpNZXNpcmlpIGlzdCBqZXR6dCByZWljaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVuZGxpY2ggd2FzIGdld29ubmVuISAoQW5hdG9sLCAxMC4gT2t0IDIwMDEsIDAwOjU2OjE4KToKfiMhIHJuPU1lc2lyaWkgcnQ9MTAwMjY2ODE0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDI2NjgxNDgKU2V0eiAtMTAwMDAgTXVlbnplbiB1bmQgdmVyc3VjaGUsIHp1IHZlcmxpZXJlbi4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFbmRsaWNoIHdhcyBnZXdvbm5lbiEgKE1lc2lyaWksIDEwLiBPa3QgMjAwMSwgMDA6NTc6MDgpOgp+IyEgcm49QW5hdG9sIHJ0PTEwMDI2NjgxNzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDAyNjY4MTQ4CkdlaHQgbGVpZGVyIG5ldCwgaGFldHRlIGljaCBzb25zdCBzY2hvbiBwcm9iaWVydCA6KQpNZXNpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogTXVlbGxoYWxkZW4gaW4gU2VoZXJoYWV1c2VybiAoVmFybGFyaW9uLCAxMC4gT2t0IDIwMDEsIDExOjMxOjA4KToKfiMhIHJuPUFuYXRvbCBydD0xMDAyNzA2MTAyIHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTAwMjU3MTA4OApNaW5kZXN0ZW5zIGhhbHRiYXIgYmlzOiBzaWVoZSBEcmFjaGVudW50ZXJzZWl0ZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBNdWVsbGhhbGRlbiBpbiBTZWhlcmhhZXVzZXJuIChBbmF0b2wsIDEwLiBPa3QgMjAwMSwgMTE6NDA6MjApOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMDI3MDYyNjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDAyNTcxMDg4CldlciBlaW5lbiBEcmFjaGVuIHZvbiB1bnRlbiBzaWVodCwgaGF0IGFuZGVyZSBQcm9ibGVtZS4uLiA7KQoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogTXVlbGxoYWxkZW4gaW4gU2VoZXJoYWV1c2VybiAoR3JpbW1ib3JuLCAxMC4gT2t0IDIwMDEsIDExOjQwOjQ0KToKfiMhIHJuPUFuYXRvbCBydD0xMDAyNzA2MTAyIHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTAwMjU3MTA4OAoiRXJvc2lvbiBpbSBBbnNjaGF1dW5nc3VudGVycmljaHQiLiBGaW5kIGljaCBjb29sLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmFzc2lzdGlzY2ggemFydGJlc2FpdGV0ZSB3ZWdob2VyLi4uIHdlZ2xlc2VuISAoSHVtbmksIDEwLiBPa3QgMjAwMSwgMTU6Mzg6MDcpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMDI3MjA1NzYgcmc9d2l0emUKfiMhIHRpZD0xMDAyNzIwNTc2CkhhZT8gU2VpdCB3YW5uIGZhaHJlbiBkaWUgZGVubiBNZXJjZWRlcz8KCktvZW5udGUgbWljaCBuaWNodCBhbiBlaW5lbiBQb2xpemVpLU1lcmNlZGVzIGVyaW5uZXJuLgoKSHVtbmkKUFM6IFNvd2VpdCBpY2ggd2Vpc3Mga29tbXQgZGFzIGFiZXIgYXVmcyBCdW5kZXNsYW5kIGFuLCB2aWVsbGVpY2h0IGlzdCBkYXMKYW5kZXJub3J0cyBhbmRlcnMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGhoaGphLi4uIChTY2hsZWljaGVyLCAxMC4gT2t0IDIwMDEsIDE2OjUzOjQwKToKeHh4IHNhZ3Q6IGxlZyBtaWNoIGpldHp0IGVyc3RtYWwgaGluICwgYmxlaWJlIGFiZXIgc3RlaGVuLgoKU2NobGVpY2hlciBzdGF1bnQgd2FzIFNwaWVsZXIgYWxsZXMga29lbm5lbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IE11ZWxsaGFsZGVuIGluIFNlaGVyaGFldXNlcm4gKEFuYWNyaW9uLCAxMC4gT2t0IDIwMDEsIDE5OjMyOjA4KToKfiMhIG9uPUFuYWNyaW9uIG90PTEwMDI3MzUxMDYgb2c9c2VoZXIuZW50d2lja2x1bmcKfiMhIHJuPVhlbmFkYSBydD0xMDAyNzM1MDE0IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTAwMjU3MTA4OApEYWZ1ZXIgOm8pCgphbmFjKiAtIG11c3Mgc2VpbmVuIHNjaGxlY2h0ZW4gcnVmIGF1ZnJlY2h0ZXJoYWx0ZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmFzc2lzdGlzY2ggemFydGJlc2FpdGV0ZSB3ZWdob2VyLi4uIHdlZ2xlc2VuISAoSW1kYSwgMTAuIE9rdCAyMDAxLCAyMTo0OToxMik6Cn4jISBybj1IdW1uaSBydD0xMDAyNzIxMDg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMjcyMDU3NgpPZWhtID8gRmFocm4gZGllIG5vY2ggd2FzIGFuZGVyZXMgYWxzIE1lcmNlZGVzID8gVW5kIGRlbiBlaW4gb2RlciBhbmRlcmVuClBvcnNjaGUgPyA7KQoKSGllciBlcnNldHplbiBzaWUgZ3JhZCBzb2dhciBkaWUgVlctQnVzc2UgZHVyY2ggTUIgU3ByaW50ZXIgYnp3LiBWaXRvLi4uCgpLYW5uIG5hdHVlcmxpY2ggYW4gZGVyIFN0YWR0IGxpZWdlbiA7KQoKR3J1c3MKCmltZGEuCiwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktvbWlzY2hlcyBCZXN0ZWNrIDstKSAoQ3JvZG8sIDExLiBPa3QgMjAwMSwgMDM6MTE6MDkpOgppZCBnYWJlbApEdSB2ZXJ0aWVmc3QgRGVpbmUgR2VkYW5rZW4gaW4gZGllIEdhYmVsIHVuZCB2ZXJnaXNzdCBmdWVyIGt1cnplIFplaXQgYWxsZXMgdW0KRGljaCBoZXJ1bS4uLgpEaWUgR2FiZWwgaXN0IGVpbmUgV2FmZmUuClNpZSBpc3QgZWluZSBBcnQgdm9uIE1lc3Nlci4KU29uc3Qga2FubnN0IER1IG5pY2h0cyBiZXNvbmRlcmVzIGFuIGRlciBHYWJlbCBlcmtlbm5lbi4KCmFoamEsIGVpbmUgZ2FiZWwgaXN0IGRhbm4gYWxzbyBlaW4gbWVzc2VyLi4uCndhcyBpc3QgZGFubiBlaW4gbWVzc2VyIGJpdHRlPyBlaW4gc2Nod2VydD8gb2RlciBlaW4ga251ZXBwZWw/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYSB3aWUgPyAoSW1kYSwgMTEuIE9rdCAyMDAxLCAxMDoyNjo1OSk6Ck11bGFpIE9sb3JuIHRpciBUYWlybmdpcmUgYmxpY2t0IERpY2ggdHJhdXJpZyBhbiB1bmQgZmFlbGx0IGluIHNpY2ggenVzYW1tZW4uCkRlciBXYWVjaHRlciBkZXIgR2FyZGUgc2FndDogTGFuZyBsZWJlIGRlciBNdWxhaSAhICAgIAoKV2FzIG1vZWNodGUgdW5zIGRlciBEaWNodGVyIGRhbWl0IHNhZ2VuID8KCkltZGEuIFZlcndpcnJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IENJQSBzdWNodCBGcmVtZHNwcmFjaGxlci4uLiAoR3JpbW1ib3JuLCAxMS4gT2t0IDIwMDEsIDEwOjM4OjU1KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDAyNzg1NTY1IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDAyMjA1MDQxCiJJY2ggZmluZGUgRW1hbnplbiB0b2xsLiBCZXNvbmRlcnMgc29sY2hlIG1pdCBwcmFsbGVuIEJydWVzdGVuIHVuZCBydW5kZW4KQWVyc2NoZW4uIgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbnZlcnNjaGFlbXRoZWl0IDspIChEdW5zdCwgMTEuIE9rdCAyMDAxLCAxMToxNDowNyk6ClNyYWJpIGZhZWxsdCB0b3QgenUgQm9kZW4uCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCltUb2Q6TGFyc10gRWluIERyYWtvbmllcm9iZXJwcmllc3RlciBoYXQgZ2VyYWRlIFNyYWJpIHVtZ2VicmFjaHQuCgpXaWVzbyBzYW1tZWx0IG1pY2ggZGEgamVtYW5kIGVpbj8gRnJlY2hoZWl0LgoKRHVuc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbnZlcnNjaGFlbXRoZWl0IDspIChSYXJkaWFuLCAxMS4gT2t0IDIwMDEsIDE2OjM2OjE1KToKfiMhIHJuPUR1bnN0IHJ0PTEwMDI3OTE2NDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAyNzkxNjQ3Cj4+RHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0Cj5XaWVzbyBzYW1tZWx0IG1pY2ggZGEgamVtYW5kIGVpbj8gRnJlY2hoZWl0LgoKVW5kIHdpZXNvIHNhbW1lbHQgZGEgamVtYW5kIG51ciBfZXR3YXNfIHZvbiBEaXIgZWluIHVuZCBuaWNodCBnbGVpY2ggYWxsZXM/CkViZW5mYWxscyBlaW5lIEZyZWNoaGVpdCwgb2RlciBuaWNodD8KClJhci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hamEuLi4gKFN3b3RsLCAxMS4gT2t0IDIwMDEsIDE4OjEwOjQ1KToKRGFqaW4gd2Vpc3MgendhciBuaWNodCwgd2FzIGVyIGRhIHNvbGwsIGFiZXIgZXIgZ2VodCBtYWwgYXVmIGRpZSBUb2lsZXR0ZS4KCk11c3MgbWFuIGlobSBkYXMgZXJrbGFlcmVuPwoKU3dvdGwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFcyBnaWJ0IHZpZWwgenUgdHVuLi4uIGZ1ZXIgTGludXggOi0oIChHcmltbWJvcm4sIDExLiBPa3QgMjAwMSwgMjI6NTM6MDgpOgp+IyEgb249VHJ1ZyBvdD0xMDAyODMzMjc0IG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49U2NobGVpY2hlciBydD0xMDAyNzg2NDM3IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwMDI3ODY0MzcKSWNoIGRlbmtlIG5pY2h0LCBkYXNzIG1hbiBhdWYgY25ldCBiZXNvbmRlcnMgdmllbCBmdWVyIGVpbiBMaW51eCBiencgZWluClVuaXgtRGVyaXZhdCBmaW5kZXQuIERhIHNjaGF1ZW4gc2Nob24gZGllIExldXRlIGF1ZiBhbmRyZSBTZXJ2ZXIsIHdlbm4gc2llCnNvd2FzIHN1Y2hlbi4uLgoKT2RlciB3YWVyIGRhIGRpZSBUb3AgVGVuIFVwZ3JhZGVzIHNvOgoKMS4gTnVlcm5iZXJnZXIgV2luZG93cyA3LjIKMi4gS29tbXVuaXN0ZW5odXQgNi4wCjMuIE1hbmRyYWdvcmEgOC4wCjQuIFNvbm5lbmJ1ZXJvIDYuMAo1LiBXYXVFbi1XYXJlIDMuMAo2LiBPcmljdWx1bSA5LjIKNy4gU2FuZE5haWwgOC4yMwo4LiBOdWVybmJlcmdlciBXaW5kb3dzIDcuMAo5LiBTY2hsZWNrd2FyZSA4LjAKMTAuIEZydWVoQlNEIDUuMAoKQ05FVCBpc3QgaGFsdCBXaW5kb3dzemVudHJpc2NoLCBnZW5hdXNvIHdpZSBGcmVzaG1lYXQgZGEgaGFsdCBhdWNoIHNlaW5lbgpGb2N1cyBoYXVwdHNhZWNobGljaCBhdWYgTGludXgvQlNEL1VuaXhlIGhhdC4KCnRydWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgRmF1bGVyIENoZWYgKFJhc3BlbCwgMTIuIE9rdCAyMDAxLCAxODoyNzo1Myk6Cj4gdGVpbGUgc2lhbWlsIG1pdCB0b2V0ZSBkaWNoClNpYW1haWwgdGVpbHQgRGlyIG1pdDogSWNoIG1hY2hlIGdlcmFkZSBQYXVzZS4KCkFsc28gc3BhZXRlciBub2NobWFsIHZlcnN1Y2hlbi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhcnRpa2VsIEZhdWxlciBDaGVmIChSYXNwZWwsIDEyLiBPa3QgMjAwMSwgMTg6Mjk6MjUpOgpKYWphLCBpY2ggd2Vpc3MsIGRlciBUeXAgaGVpc3N0IFNpYW1pbC4KRGVtbmFlY2hzdCBhbHNvIHdpZWRlciBDb3B5JlBhc3RlIHN0YXR0IGFidGlwcGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IE11ZWxsaGFsZGVuIGluIFNlaGVyaGFldXNlcm4gKEdub21lLCAxMi4gT2t0IDIwMDEsIDE5OjE5OjQyKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwMDI3OTczNjIgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD0xMDAyNTcxMDg4CmRpZSBzYWVjaHNpc2NoZSBzY2h3ZWl6PyB3YXNuIGRhcz8gZG9wcGVsdGVzIGF1c2xhbmQ/ID46KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IE11ZWxsaGFsZGVuIGluIFNlaGVyaGFldXNlcm4gKEFuYXRvbCwgMTIuIE9rdCAyMDAxLCAxOToyMDo0MSk6Cn4jISBybj1Hbm9tZSBydD0xMDAyOTA3MTgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMjU3MTA4OApJcyBzY2hvZW4gZGEuIAoKQW5hdG9sLCBrZW5udCdzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW5ob2VybmVyLi4uIChGb29iYXIsIDEyLiBPa3QgMjAwMSwgMjE6NTQ6MzkpOgpEYXMgRWluaG9ybiBzYWd0IHppZW1saWNoIHR1Y2tpZzogRWluIEdsYWVzY2hlbiBSb3Nlbndhc3NlciBiaXR0ZS4KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0ZGlnZXN0IChGb29iYXIsIDEyLiBPa3QgMjAwMSwgMjI6NTE6MzUpOgpGcm9tOiBUaG9tYXMgVW5nZXIgPHRob21hcy51bmdlckBtYXRoZW1hdGlrLnR1LWNoZW1uaXR6LmRlPgpOZXdzZ3JvdXBzOiBjaGVtbml0ei50dS5pbmZvcm1hdGlrClN1YmplY3Q6IE1hdGhlMy1VZWJ1bmcgKERvbm5lcnN0YWcpCkRhdGU6IFdlZCwgMTAgT2N0IDIwMDEgMTA6MjA6MDIgKzAyMDAKTWVzc2FnZS1JRDogPDNCQzQwNEIyLkUwMUY1N0RCQG1hdGhlbWF0aWsudHUtY2hlbW5pdHouZGU+CgpBdWNoIHdlbm4gZXMgd2VnZW4gZGVyIFNlbWVzdGVyLUF1ZnRha3QtUGFydHkgc2Nod2VyZmFsbGVuIHdpcmQsIGZpbmRldAptb3JnZW4gNy4zMCBVaHIgZGllIFVlYnVuZyAiTWF0aGUzIGZ1ZXIgSUYvQUlGIiBzdGF0dC4gV2llIGltIGxldHp0ZW4KU2VtZXN0ZXIgc2Nob24gYW5nZWRyb2h0LCB3ZXJkZW4gd2lyIGRlbiBVZWJ1bmdzemV0dGVsICJGb2xnZW4gdW5kClJlaWhlbiIgYmVlbmRlbiB1bmQgLS0gaG9mZmVudGxpY2ggLS0gbWl0ICJHcmVuendlcnRlIHZvbiBGdW5rdGlvbmVuIgpmb3J0c2V0emVuLgpHcnVlc3NlIFRob21hcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQm9lc2UgVG9nYS4gKFNsYXgsIDE0LiBPa3QgMjAwMSwgMjE6MTE6MzApOgpEZXIgRWNoc2Vud2FlY2h0ZXIgcnVmdDogVG9nYSBncmVpZnQgbWljaCBhbiEhISBUb2V0ZXQgZGllIGVsZW5kZSBMdWVnbmVyaW4hISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCb2VzZSBUb2dhLiAoRGFya3dpbmcsIDE0LiBPa3QgMjAwMSwgMjI6MDY6MDcpOgp+IyEgcm49U2xheCBydD0xMDAzMDg2NjkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMzA4NjY5MApmYXN0IHNvIGd1dCB3aWU6CgpIb2dvIHJ1ZnQ6IEFMQVJNISBFaW4gVG9kZXNwYW56ZXIgZ3JlaWZ0IGRhcyBTdHJ1diBhbiEKSG9nbyBydWZ0OiBaVSBERU4gV0FGRkVOIQoKTGFuZyBpc3RzIGhlciwgZGEgaGF0dGUgaWNoIEZhdXN0a2FtcGYgZ2VsZXJudCA6KQoKRGFya3dpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMyOiBNdWVsbGhhbGRlbiBpbiBTZWhlcmhhZXVzZXJuIChBbmFjcmlvbiwgMTUuIE9rdCAyMDAxLCAwMDoxNzoyMSk6Cn4jISBvbj1BbmFjcmlvbiBvdD0xMDAzMDk3ODMzIG9nPXNlaGVyLmVudHdpY2tsdW5nCn4jISBybj1HcmltbWJvcm4gcnQ9MTAwMzA5NzQ5MSByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMDI1NzEwODgKV2FzIHN0dWRpZXJzdCBEdSA/IGUtVGVjaG5paz8KCmFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMzogTXVlbGxoYWxkZW4gaW4gU2VoZXJoYWV1c2VybiAoR3JpbW1ib3JuLCAxNS4gT2t0IDIwMDEsIDAwOjI1OjIzKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDAzMDk3ODc3IG9nPXNlaGVyLmVudHdpY2tsdW5nCn4jISBybj1BbmFjcmlvbiBydD0xMDAzMDk3ODMzIHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTAwMjU3MTA4OApOaWNodCBkYXNzIGljaCB3dWVzc3RlIHdpZSBEdSBhdWYgZGllIEZyYWdlIGtvbW1zdCwgYWJlciBpY2ggc3R1ZGllcmUgbmljaHQuCgpHZEEgdmVyZGllbnQgZWhybGljaGVzIEdlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM0OiBNdWVsbGhhbGRlbiBpbiBTZWhlcmhhZXVzZXJuIChMaWFyYSwgMTUuIE9rdCAyMDAxLCAwMDo0NTo0NSk6Cn4jISBybj1BbmF0b2wgcnQ9MTAwMzA5OTQ2MSByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMDI1NzEwODgKSWNoIHdpbGwgYml0dGUgOSB3ZWlzc2UgdW5kIDkgZ3J1ZW5lLiBEYW5rZS4KClpaTEIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM1OiBNdWVsbGhhbGRlbiBpbiBTZWhlcmhhZXVzZXJuIChBbmFjcmlvbiwgMTUuIE9rdCAyMDAxLCAwMDo0NjowOSk6Cn4jISBybj1MaWFyYSBydD0xMDAzMDk5NTQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMjU3MTA4OApEYW5uIGxlZyAzMCB3ZWlzc2UgdW5kIDMwIGdydWVuZSB2b3IgZGVpbiBoYXVzIHVuZCB3YXJ0ZSBuZSB3ZWlsZQoKYW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM2OiBNdWVsbGhhbGRlbiBpbiBTZWhlcmhhZXVzZXJuIChBbmF0b2wsIDE1LiBPa3QgMjAwMSwgMDA6NDY6NTUpOgp+IyEgcm49QW5hY3Jpb24gcnQ9MTAwMzA5OTU2OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDI1NzEwODgKVW5wcmFrdGlrYWJlbCwgbmFjaCBlaW5lciBXZWlsZSBzaW5kIGVzIGRhbm4gMyB3ZWlzc2UgdW5kIDMgZ3J1ZW5lLiA6KQpEYW5uIGhhdCBMaWFyYXMgTHVldHRlIG5pY2h0IDgsIHNvbmRlcm4gbnVyIDIgS3JvbmVuIHVlYmVyLiA6KQoKQW5hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzc6IE11ZWxsaGFsZGVuIGluIFNlaGVyaGFldXNlcm4gKEFuYWNyaW9uLCAxNS4gT2t0IDIwMDEsIDAwOjQ3OjMzKToKfiMhIHJuPUFuYXRvbCBydD0xMDAzMDk5NjE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMjU3MTA4OApad2VpdGllcyBhYndlcnRlbiAuLiBhZWggLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNzogTXVlbGxoYWxkZW4gaW4gU2VoZXJoYWV1c2VybiAoTGlhcmEsIDE1LiBPa3QgMjAwMSwgMDA6NDc6NDEpOgp+IyEgcm49QW5hdG9sIHJ0PTEwMDMwOTk2MTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAyNTcxMDg4CkVpbmVyIHZlcnN0ZWh0IG1pY2guICp3aW1tZXIqCgpaWkxCLCBrYW5uIGVzIG5pY2h0IGZhc3NlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE5lZSAoSXNpLCAxNS4gT2t0IDIwMDEsIDEwOjA5OjE2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDAyOTEwOTgwIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDAyODMxMTc4CkFsc28gYmVpIGRlbiBTY2h3YWJlbiB1bmQgQWxsZW1hbm5lbiBnZWhlbiBkaWUgRnVlc3NlCmJpcyB6dXIgSHVlZnRlLi4uCmlzaSAoc2NodWhld2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBOZWUgKEdyaW1tYm9ybiwgMTUuIE9rdCAyMDAxLCAxMDo1NDoyNik6Cn4jISBybj1Jc2kgcnQ9MTAwMzEzMzM1NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDI4MzExNzgKRXMgZ2lidCBGcmF1ZW4gdm9uIGRlbmVuIHdpcmQga29scG9ydGllcnQgaWhyZSBCZWluZSBnaW5nZSBiaXMgenVtIEhhbHMuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzU6IE11ZWxsaGFsZGVuIGluIFNlaGVyaGFldXNlcm4gKExpYXJhLCAxNS4gT2t0IDIwMDEsIDE2OjIxOjQ4KToKfiMhIHJuPVBhdHJ5biBydD0xMDAzMTU1MTAwIHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTAwMjU3MTA4OApIbSwgaWNoIHdlaXNzIGdhciBuaWNodCwgd2FzIGFlbHRlciBpc3QuIDstKQpKZWRlbmZhbGxzOiBXZWcgbWl0IGRlbSBNdWVsbHNhY2ssIFphdWJpcyB1bmQgVGFuamlhbiBmb3IgTXVlbGxhYmZ1aHIhIDstKSkpCgpaWkxCLCB3aXJyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNTogTXVlbGxoYWxkZW4gaW4gU2VoZXJoYWV1c2VybiAoVGlhbWFrLCAxNS4gT2t0IDIwMDEsIDE5OjM3OjQ4KToKfiMhIHJuPVBhdHJ5biBydD0xMDAzMTU1MTAwIHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTAwMjU3MTA4OApHZW5hdS4KCkZydWVoZXIgaGF0IGRpZSBaYXViZXJlcmdpbGRlIEZlYXR1cmVzIHZvbiBleGlzdGVudGVuIE9iamVrdGVuIGdla2xhdXQsIGhldXRlCndlcmRlbiBaYXViZXJlcmdpbGRlbmZlYXR1cmVzIGZ1ZXIgbmV1ZSBPYmpla3RlIGFiZ2VrdXBmZXJ0LgoKSW4gZGVyIFRhdCwgZGllIFplaXRlbiBhZW5kZXJuIHNpY2guIDteKQoKClRpYW1hawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3VjaHQ/IFdJUj8/IChCZW5kZWlnaWQsIDE2LiBPa3QgMjAwMSwgMTM6Mzk6NTEpOgpGdWVyIGFsbGUsIGRpZSBub2NoIG5lYmVuIGRlbSBNdWQgbmVuIEJyb3dzZXIgb2VmZm5lbiBrb2VubmVuIChhdXMKWmVpdGdydWVuZGVuLi4uKToKaHR0cDovL3d3dy5oZWlzZS5kZS9uZXdzdGlja2VyL2RhdGEvYW53LTE2LjEwLjAxLTAwMi8KClpgcGFyIFNlcnZ1LAoKQmVuZGVpZ2lkLCBuaWNodCBzdWVjaHRpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN1Y2h0PyBXSVI/PyAoQW5hdG9sLCAxNi4gT2t0IDIwMDEsIDEzOjQxOjQzKToKfiMhIHJuPUJlbmRlaWdpZCBydD0xMDAzMjMyMzkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMzIzMjM5MQoicGx1cmFsZSBGcmVpemVpdGdlc2VsbHNjaGFmdCIuIFdhcyBmdWVyIGVpbiBLb25zdHJ1a3QuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTU0ggdW50ZXIgV2luKiAoR3JpbW1ib3JuLCAxNi4gT2t0IDIwMDEsIDE0OjI1OjE5KToKfiMhIHJuPUFoYWIgcnQ9MTAwMzIzNDYyNSByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDAzMjM0NTE5CkFlaCwgaGVpc3N0IGRlciBuaWNodCAiWm9vayI/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBFaW5hZXVnaWdlIHVudGVyIGRlbiBCbGluZGVuIChBenp1cm8sIDE3LiBPa3QgMjAwMSwgMDE6MDc6MzgpOgpbWk11ZDpBenp1cm9dIGlzdCBkYSBlaW4gUHJvZmkgZnVlciBlaW5lIGt1cnplIEZyYWdlPyA8MDE6MDE6Mjg+Cj4tem11ZD8KWk11ZCwgV2llIGRlciBOYW1lIHNjaG9uIHNhZ3QuLi4uCkR1IHNpZWhzdCBlaW4gR2VzaWNodCBhdWYgZGVyIEViZW5lICdaTXVkJzoKQXp6dXJvCjxNYXN0ZVI+IGhhdCBkYXMgU2FnZW4gYXVmIGRpZXNlciBFYmVuZS4KCklzdCB3b2hsIFNlbGJzdGhpbGZlIGFuZ2VzYWd0IDooCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQcm9tcHRlIEhpbGZlIChQdWssIDE3LiBPa3QgMjAwMSwgMDE6MjU6MzIpOgpEdSAtLS0gQ2hhb3NiYWxsIEYvRiAtLS0tLS0tUHVrLS0tLS0tLS0tLS0tLS0tPiBTQ0hNRVRURVJOClB1ayB6ZXJzY2htZXR0ZXJ0IERpY2ggaW4ga2xlaW5lIFN0dWVja2NoZW4uCkR1IHNjaG5laWRlc3QgZWluZW0gV2Fzc2VydW53ZXNlbiBkaWUgT2hyZW4gYWIgdW5kIHZlcnNwZWlzdCBzaWUuCgpTbyBtYWcgaWNoIGRhcyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU1NIIHVudGVyIFdpbiogKFNpbHZhbmEsIDE3LiBPa3QgMjAwMSwgMTA6NTg6MDMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDMyNjk2OTIgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTAwMzIzNDUxOQpBdSB3ZWlhLCBzZWlkIGlociBhbGxlIG5pZWRsaWNoLiA6KSBKYSwgaWNoIHdlaXNzLCB3YXMgaWNoIHZlcm1pc3N0IGhhYiEKCiAgU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU1NIIHVudGVyIFdpbiogKFRvZywgMTcuIE9rdCAyMDAxLCAxOTo1NToxNSk6Cn4jISBybj1TaWx2YW5hIHJ0PTEwMDMzMDkwODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAzMjM0NTE5CgpIYSwgaWNoIGhhYnMgZ2VhaG50LCBEdSBiaXN0IG51ciBlaW4gVHJvbGwgLi4uIEluIGVjaHQgYmlzdCBEdSBMaW51eEZyZWFrCnVuZCB3b2xsdGVzdCBudXIgbWFsIHdpZWRlciBuZSBNZW5nZSBSZXBsaWVzIGtyaWVnZW4hCgpEb24ndCBmZWVkIHRoZSBUcm9sbHMhCgpUb2csIHJlaW5nZWZhbGxlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU1NIIHVudGVyIFdpbiogKEdyaW1tYm9ybiwgMTcuIE9rdCAyMDAxLCAyMDowNTozMyk6Cn4jISBybj1Ub2cgcnQ9MTAwMzM0MTMxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDMyMzQ1MTkKSG1tLCBhdWNoIHdlbm4gbWlyIGRhcyBtb2VnbGljaGVyd2Vpc2Uga2VpbmVyIGdsYXVidCwgYWJlciBlaW4gIlRyb2xsIiBpc3QgZWluCnBvc3RpbmcgZWluZXMgVHJvbGxlcnMgKFRyb2xsZW5kZW4/KS4gTmljaHQgZGllIFBlcnNvbiBzZWxiZXIuCgpXZWl0ZXJoaW4gYmV6ZWljaG5ldCBkYXMgV29ydCBub2NoIHNrYW5kaW5hdmlzY2hlIEdub21lIHVuZCBNaXRhcmJlaXRlciBkZXIKRmlybWEgVHJvbGxUZWNoLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU1NIIHVudGVyIFdpbiogKFNpbHZhbmEsIDE3LiBPa3QgMjAwMSwgMjA6MjU6NTcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDMzNDE5MzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAzMjM0NTE5CkRpZSBBbmdlc3RlbGx0ZW4gZGVzIE1haW56ZXIgVHJvbGxoYXVzZXMgKEZhbnRhc3ktU3BpZWxlbGFkZW4pIHdlcmRlbiBhdWNoIGFscwpUcm9sbGUgYmV6ZWljaG5ldC4gQWJlciBpcmdlbmR3aWUga2FubiBpY2ggbWljaCBrZWluZXIgZGllc2VyIFBlcnNvbmVuZ3J1cHBlbgp6dWdlaG9lcmlnIGZ1ZWhsZW4uLi4KCiAgU2lsdmFuYSAod2Vpc3MgZWggbmljaHQsIHdhcyBkZXIgQXVmc3RhbmQgd2llZGVyIHNvbGx0ZS4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldGRpZ2VzdCAoRm9vYmFyLCAxNy4gT2t0IDIwMDEsIDIyOjI5OjUxKToKRnJvbTogSmVucyBSaWNodGVyIDxndW1wZWxpbm9AcGxhbmV0d2F2ZS5uZXQ+Ck5ld3Nncm91cHM6IGRlLmFsdC5zb2Mud3RjLWF0dGVudGF0ClN1YmplY3Q6IFJlOiBQYXJhbm9pYQpEYXRlOiBUdWUsIDE2IE9jdCAyMDAxIDE1OjI1OjM1ICswMTAwClJlcGx5LVRvOiBndW1wZWxpbm9AcGxhbmV0d2F2ZS5uZXQKCk9uIFR1ZSwgMTYgT2N0IDIwMDEgMTY6MTQ6MTggKzAyMDAsIEtlcnN0aW4gTmFydWhuIDxzdW5uanlAZ214LmRlPgp3cm90ZToKCj5bLi4uXQo+SW4gU2FjaHNlbiBoYXQgZWluIG1pdCAiR2lmdCIgZ2VrZW5uemVpY2huZXRlcyBHZXNjaGVua3BhZWNrY2hlbiBhdXMgZGVuIAo+VVNBIHp1IG1laHJzdHVlbmRpZ2VuIFBvbGl6ZWllcm1pdHRsdW5nZW4gZ2VmdWVocnQuIEVyc3QgU3R1bmRlbiBuYWNoIAo+QmVnaW5uIGRlcyBQb2xpemVpZWluc2F0emVzIGdhYiBlcyBFbnR3YXJudW5nLiBFaW5lbSBkZXIgYmV0ZWlsaWd0ZW4gCj5CZWFtdGVuIHdhciBhdWZnZWZhbGxlbiwgZGFzcyAiR2lmdCIgZGFzIGVuZ2xpc2NoZSBXb3J0IGZ1ZXIgR2VzY2hlbmsgCj5pc3QuIAoKTE9MCkRhcyBzaWVodCBhYmVyIHNjaGxlY2h0IGF1cy4gRGFzIG5hZWNoc3RlIFBhZWNrY2hlbiBpc3Qgd29tb2VnbGljaCBtaXQKIlBvaXNvbiIgZ2VrZW5udHplaWNobmV0IHVuZCB3aXJkIHNvZm9ydCBnZW9lZmZuZXQsIHdlaWwgbWFuIGVpbiBQYXJmdWVtCnZlcm11dGV0Li4uUGFyYW5vaWEgb2RlciBCaWxkdW5nc3JlZm9ybSwgZGFzIGlzdCBoaWVyIGRpZSBGcmFnZS4KSmVucwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU1NIIHVudGVyIFdpbiogKEdyaW1tYm9ybiwgMTcuIE9rdCAyMDAxLCAyMjo0MTo0Myk6Cn4jISBvbj1IdW1uaSBvdD0xMDAzMzUxMjgzIG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDMzNDAzNjggcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTAwMzIzNDUxOQoxLiBHcmltbWJvcm4gaGF0IG5hdHVlcmxpY2ggUmVjaHQgOy0pCjIuIFNwaWVsemV1Zz8gSG1tLi5kaWUgd2lya2xpY2ggZ3V0ZW4gU3BpZWxlIGxhdWZlbiBudXIgdW50ZXIgV2luZG93cywgd2VubgptYW4gdm9uIE11ZHMgbWFsIGFic2llaHQgOy0pCgpIdW1uaSwgdmVybGVndCBtYWwgbmFjaCBzY2htYXJybi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFNTSCB1bnRlciBXaW4qIChHcmltbWJvcm4sIDE3LiBPa3QgMjAwMSwgMjI6NDI6MjUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDMzNTEzMDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAzMjM0NTE5CkVtYWNzIGxhZXVmdCBuaWNodCBudXIsIHNvbmRlcm4gYXVjaCB1bnRlciBXaW5kb3dzLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU1NIIHVudGVyIFdpbiogKERlZXBibHVlLCAxNy4gT2t0IDIwMDEsIDIzOjE1OjExKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDAzMzUxMzQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMzIzNDUxOQpMYWV1ZnQgV2luZG93cyBhdWNoIHVudGVyIEVtYWNzPwpVbmQgd2FubiBnaWJ0cyBlbmRsaWNoIG5lbiBnZXNjaGVpdGVuIEVkaXRvciBmdWVyIEVtYWNzPyBPZGVyIHdpZSBiaW5kZXQgbWFuCmRhIFZpbSBlaW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogU1NIIHVudGVyIFdpbiogKEdyaW1tYm9ybiwgMTcuIE9rdCAyMDAxLCAyMzozNjowMCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDAzMzUzMzExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMzIzNDUxOQpOZWluLCBsYWV1ZnQgZXMgbmljaHQuIEVzIGdpYnQga2VpbmUgd2luZS1Qb3J0aWVydW5nIGZ1ZXIgZW1hY3MuClVuZCBkZXIgZW1hY3MgaGF0IGVpbmVuIHZpIG1vZGUuIEtlaW5lIEFobnVuZyB3aWUgbWFuIGRhIGRyYW4ga29tbXQsIHVuZCBpY2gKd2lsbHMgYXVjaCBnYXIgbmljaHQgd2lzc2VuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE1hbmRyYWdvbiwgMTguIE9rdCAyMDAxLCAwMTo1NTo1MSk6ClBpdGZhbGwgaHVlcGZ0IGF1ZiBzZWluZW0gRWlzemFwZmVuIG5hY2ggU3VlZG9zdGVuLgpEdSB0ZWlsc3QgUGl0ZmFsbCBtaXQ6IG5hY2ggMjEuMTIgO28pCltUb2Q6TGFyc10gU2NocmVpbmVtYWtlcnMgaWhyZSBTY2h3ZXN0ZXIgaGF0IGdlcmFkZSBQaXRmYWxsIHVtZ2VicmFjaHQuCltUb2Q6U2NocmVpbmVtYWtlcnMgaWhyZSBTY2h3ZXN0ZXJdIFNjaGljaHQgaW0gU2NoYWNodCEKW1RvZDpQaXRmYWxsXSBNdWggICAgIAoKSHVwcy4gTmljaHQgYW50d29ydGVuIC4uLiBLQUVNUEZFTgoKTWEqICh0aWVmYmV0cnVlYnQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBhdWYgYWx0YXIgUkVHTyBIRVJCQU0gKExpYXJhLCAxOC4gT2t0IDIwMDEsIDIxOjI4OjUyKToKfiMhIHJuPU5hZGRsIHJ0PTEwMDM0Mjc4MjAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDAzNDA3ODY3Ci4uLiBhYmVyIG9mZmVuc2ljaHRsaWNoIG5pY2h0IGdhbnogYmVpIERpci4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEcmFjaGVuc2NodXBwZW4gKFRodWZoaXIsIDE4LiBPa3QgMjAwMSwgMjI6NTI6MTUpOgp+IyEgcm49TW9yZ290aCBydD0xMDAzNDM2NTM1IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwMDM0MDExNTUKc28gaGluIHVuZCB3aWVkZXIgbmVuIHF1YWxpZml6aWVydGVyIGtvbW1lbnRhciBlcmhvZWh0IGRlbiBiZWthbm50aGVpdHNncmFkLi4uCjspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0d2luZ2kgKEJpcmR5LCAxOS4gT2t0IDIwMDEsIDIyOjA1OjMxKToKaWNoIHNjaHJlaWIgaGllciBuaXggcmVpbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNlbmlsID8gKEhpZ2h0LCAyMC4gT2t0IDIwMDEsIDEzOjUxOjMwKToKRGVpbiBGcmV1bmQgRGFya3dpbmcgdGVpbHQgRGlyIG1pdDogQUFBQUFBQUFSR0hISEgKRGVpbiBGcmV1bmQgRGFya3dpbmcgdGVpbHQgRGlyIG1pdDogd2llIGRhbmViZW4gbXVzcyBtYW4gZWlnZW50bGljaCBzZWluLCB1bQpEZWluIEZyZXVuZCBEYXJrd2luZyB0ZWlsdCBEaXIgbWl0OiBzZWluZW4gU2NobHVlc3NlbCBpbiBkZW4gS1VFSExTQ0hSQU5LIHp1CkRlaW4gRnJldW5kIERhcmt3aW5nIHRlaWx0IERpciBtaXQ6IHJhZXVtZW4gPwpEZWluIEZyZXVuZCBEYXJrd2luZyBoYXQgc2ljaCBnZXJhZGUgZmFzdCB0b3RnZXN1Y2h0IGF1cyBkZXIgRmVybmUuCgpoaWdodCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChab29rLCAyMC4gT2t0IDIwMDEsIDE3OjA0OjIzKToKW0FiZW50ZXVlcjpBbGlzZWFdIHdpZSBrYW5uIGljaCBkZW0gdmVydW5nbHVlY2t0ZW4gdmlnZ3kgKHJhZXRzZWxzdGVpbnF1ZXN0KQpbQWJlbnRldWVyOkFsaXNlYV0gaGVsZmVuLCBpY2ggbmVobWUgbWFsIGFuIGRpZXMgaXN0IG5vZXRpZy4KW1RvZDpMYXJzXSBEZXIgc2Nod2FyemUgVHVybSBoYXQgZ2VyYWRlIEFsaXNlYSB1bWdlYnJhY2h0LgpbVG9kOkRlciBzY2h3YXJ6ZSBUdXJtIHN1bW10IGRlbSBMZWljaHRzaW5uaWdlbiBlaW4gdG9lZGxpY2gnIExpZWQuXQoKU28gd29obCBuaWNodC4uLgoKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCYWJlbGZpc2NoIGF0IGl0cyBiZXN0IChPcmt0b2V0ZXIsIDIwLiBPa3QgMjAwMSwgMTc6MjA6MzMpOgpXaWVzbyBzb2xsdGUgZXMgYXVjaCBhbmRlcnMga29tbWVuIGFscyBlcndhcnRldD8KQWxzbywgZXJzdCBtYWwgZWluIFRleHQsIHdpZSBpaG4gQmFiZWxmaXNjaCBnZWxpZWZlcnQgaGF0IHVuZCBkYW5uIGRhcwpPcmlnaW5hbCwgZGFtaXQgbWFuIHdlbmlnc3RlbnMgd2Vpc3MsIHdhcyBlcyB1cnNwcnVlbmdsaWNoIG1hbCBoaWVzczoKCiJWb3JoZXIgaGFiZW4genV2ZXJsc3NpZ2UgUXVlbGxlbiBDTk4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVya2xydCwgZGEgZXMKZWluIHBlcmlvZGlzY2hlcyBWb3JoYW5kZW5zZWluCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXIKVVMtU1BFWklFTExFTiBPcGVyYXRpb25lbiB1bmQgZGVyCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicml0aXNjaGVuCnNwZXppZWxsZW4gS3JmdGUgZGVzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApGbHVnbGluaWVudmVya2VocmVzIChEbXBmdW5nc3JlZ2xlcikgYXVzIGRlbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR3J1bmQgaW4KQWZnaGFuaXN0YW4gZ2VnZWJlbiBoYXR0ZS4KCnNvIHVuZCBudW4gZGFzIE9yaWdpbmFsOgoKIlByZXZpb3VzbHksIHJlbGlhYmxlIHNvdXJjZXMgaGF2ZSB0b2xkIENOTiB0aGF0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGVyZSBoYWQgYmVlbiBhCnBlcmlvZGljIHByZXNlbmNlIG9mIFUuUy4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNwZWNpYWwKT3BlcmF0aW9ucyBhbmQgQnJpdGlzaCBTcGVjaWFsIEFpcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2VydmljZSAoU0FTKQpmb3JjZXMgb24gdGhlIGdyb3VuZCBpbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWZnaGFuaXN0YW4uIAoiCgpUamEsLCBCYWJlbGZpc2NoIG11c3MgZGEgd29obCBub2NoIHNvIGVpbmlnZXMgbGVybmVuLi4uCgpPcmtULCBzaWNoIGltbWVyIG1hbCB3aWVkZXIgYW11ZXNpZXJlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmFiZWxmaXNjaCBhdCBpdHMgYmVzdCAoT3JrdG9ldGVyLCAyMC4gT2t0IDIwMDEsIDE3OjIyOjI5KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDAzNTkxMjMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMzU5MTIzMwpzb3JyeSwgaXN0IGVpbiBzY2hsZWNodGVyIFN0aWwgYXVmIGVpbmVuIGVpZ2VuZW4gQXJ0aWtlbCB6dSBhbnR3b3J0ZW4sIGFiZXIKYmVpIGRlciBtaWVzZW4gZm9yYW10aWVydW5nIHNvbGx0ZWljaCB3b2hsIGVpbmUgZW50c2NodWxkaWd1bmcgbmFjaHJlaWNoZW4uLi4KCk9ya1Qgc2NoYWVtdCBzaWNoLgoKUFMgZGllIFF1ZWxsZW5hbmdhYmUgZmVobHRlIG5vY2g6CiJodHRwOi8vd3d3LmNubi5jb20vMjAwMS9XT1JMRC9ldXJvcGUvMTAvMTkvcmV0Lmdyb3VuZC5mb3JjZS8iCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJhYmVsZmlzY2ggYXQgaXRzIGJlc3QgKEN1Y2h1bGxpbiwgMjAuIE9rdCAyMDAxLCAxNzoyNjoyNSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAwMzU5MTM0OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDM1OTEyMzMKSWNoIHZlcnN0ZWhlIG5pY2h0IGdhbnosIHdvIGRhIGRlciBQdW5rdCBzZWluIHNvbGwuIERhc3MgbWFzY2hpbmVsbGUKVWViZXJzZXR6dW5nICh6dW1pbmRlc3QgaW4gZGVyIE9lZmZlbnRsaWNoa2VpdCkgbm9jaCBsYWVuZ3N0IG5pY2h0IGRhcwpTdGFkaXVtIGVycmVpY2h0IGhhdCwgaW4gZGVtIGltbWVucyBncm9zc2UgV2lzc2Vuc2Jhc2VuIGRhenUgaW4gZGVyCkxhZ2Ugc2luZCwgZGVuIFdvcnRrb250ZXh0IHZvbGxzdGFlbmRpZyBrYXRlZ29yaXNpZXJlbiB6dSBrb2VubmVuLCBpc3QKamEgd29obCBuaWNodCBnYW56IG5ldS4uLgoKQ3VjaCB6dWNrdCBtaXQgZGVuIFNjaHVsdGVybi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJhYmVsZmlzY2ggYXQgaXRzIGJlc3QgKE9ya3RvZXRlciwgMjAuIE9rdCAyMDAxLCAxOToxMDo1Nyk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAwMzU5MTU4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDM1OTEyMzMKZGVyIFB1bmt0IGlzdDogSWNoIGhhYmUgYmVpIGRlbiBWZXJzdWNoZW4sIGRpZSBpY2ggYmlzbGFuZyB2b24gWmVpdCB6dSBaZWl0Cm1hbCBnZW1hY2h0IGhhYmUgbm9jaCBuaWNodCBlaW5lIFVlYmVyc2V0enVuZyBoaW5iZWtvbW1lbiwgYXVzIGRlciBpY2ggb2huZQpLZW50aW5pc3MgZGVzIE9yaWdpbmFscyBkZW4gSW5oYWx0IGhhZXR0ZSBlbnRuZWhtZW4ga29lbm5lbi4gRC5oLiBCYWJlbGZpc2NoCmlzdCBlaW5lIG5ldHRlIElkZWUsIGFiZXIgc28gbGVpZGVyIG5pY2h0IHp1IGdlYnJhdWNoZW4uCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmFhYWphYWEsICJhcmJlaXRlbiIgKE1vcmdvdGgsIDIyLiBPa3QgMjAwMSwgMTE6NTQ6MTUpOgpUT0QtV0FDSEUgOiBGb29iYXIgaGF0IGRpZSBXYWNoZSBnZXRvZXRldC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKRHUgdGVpbHN0IEZvb2JhciBtaXQ6IG1vZXJkZXIKRm9vYmFyIGlzdCBnZXJhZGUgbmljaHQgZGE6IEF1ZiBBcmJlaXQuLi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEphYWFqYWFhLCAiYXJiZWl0ZW4iIChEZWVwYmx1ZSwgMjIuIE9rdCAyMDAxLCAxMjozMzoxNSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwMDM3NDQ0NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAzNzQ0NDU1Ck1hbiBrYW5uIEFyYmVpdGVuIG9obmUgImF1ZiBBcmJlaXQiIHp1IHNlaW4sIHVuZCAiYXVmIEFyYmVpdCIgc2VpbiBvaG5lIHp1CmFyYmVpdGVuLi4uCkRlZXAsIGluIGRlciByaWNodGlnZW4gUnVicmlrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hhZGVuZnJldWRlLi4uLiAoSmFua2EsIDIyLiBPa3QgMjAwMSwgMjM6MDM6NDcpOgpbVG9kOkxhcnNdIEVpbiBTY2htZXR0ZXJsaW5nIGhhdCBnZXJhZGUgRHJhY3VsYSB1bWdlYnJhY2h0LgpbQmVpbGVpZDpKYW5rYV0gYmxlaWIgbGllYmVyIGJlaSBEZWluZW4gRmxlZGVybWFldXNlbiEKW0JlaWxlaWQ6Wm9va10gVWkuLi4gR3JhdHMhCltCZWlsZWlkOkNyb2Z0XSBobS4gcGFyYS1zY2htZXR0ZXJsaW5nZT8KW0JlaWxlaWQ6Wm9vayBzY2htdW56ZWx0IHdpc3NlbmQuXQpbQmVpbGVpZDpKYW5rYV0gd29sbGVuIHdpciBkb2NoIGhvZmZlbi4gU29uc3Qgd2FlcmUgZXMgcGVpbmxpY2ghCltUb2Q6TGFyc10gQm9zaGFmdGlna2VpdCBoYXQgZ2VyYWRlIEphbmthIHVtZ2VicmFjaHQuCltUb2Q6Qm9zaGFmdGlna2VpdCBpc3Qgc2Nob24gZmllcy4uLl0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGFydHliaWxkZXIhIChab29rLCAyMi4gT2t0IDIwMDEsIDIzOjM4OjUwKToKfiMhIG9uPVpvb2sgb3Q9MTAwMzc4NjcyNCBvZz1wYXJ0eQp+IyEgcm49UGVyZGl0YSBydD0xMDAzNzg1OTIzIHJnPXBhcnR5Cn4jISB0aWQ9MTAwMzc4NTkyMwpVZWJyaWdlbnMsIGVzIGdpYnQgbm9jaCBCaWxkZXIsIGRpZSBsaWVnZW4gaGVydW0sIG5laW4sIG5pY2h0IHZvbiBkZXIKUGFydHksIGFiZXIgZXMgc2luZCBCaWxkZXIgdW5kIGljaCBoYWJlIHNpZSBnZXNpY2h0ZXQgdW5kIGVzIHdpcmQgc2llCmdlYmVuLCBpbiBCYWVsZGUgdW5kIGljaCBnZWIgbWlyIE11ZWhlIHVuZCB1ZWJlcmhhdXB0LgoKWm9vayBncmluc3QgTW9udGFudXMgYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTcGlubmVuICAoR3JpbW1ib3JuLCAyMy4gT2t0IDIwMDEsIDE2OjQ5OjAyKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDAzODQ4NTM0IG9nPXB1aXoKfiMhIHJuPUNyb2Z0IHJ0PTEwMDM4NDg0NzUgcmc9cHVpegp+IyEgdGlkPTEwMDM4NDc3ODUKV2VubiBpY2ggZXVjaCBlcndpc2NoZSB3aWUgaWhyIGRlbiBhcm1lbiBTcGlubmVuIGRpZSBCZWluZSByYXVzcmVpc3N0IGRhbWl0CnNpZSBpbiBuaWNodCB2b3JoYW5kZW5lIFNjaHVoZSBwYXNzZW4sIGRhbm4gZ2lidHMgYWJlciBlaW4gRG9ubmVyd2V0dGVyLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyA7KSAoSmFua2EsIDI0LiBPa3QgMjAwMSwgMTA6Mjc6MjUpOgpbU2VoZXI6RWxkYXJvbl0gdGFudGUgOikpCltTZWhlcjpNdXJnZWxtYW5uXSBEYXJmIGljaCA7KQpbVG9kOkxhcnNdIEVpbiBIeWRyYWtvcGYgaGF0IGdlcmFkZSBNdXJnZWxtYW5uIHVtZ2VicmFjaHQuCltUb2Q6RWluIEh5ZHJha29wZl0gaHNzc3NzcyAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBFaHJlIGhhbGJlciAoSmFua2EsIDI0LiBPa3QgMjAwMSwgMTA6NDI6NDcpOgowMTo0MSBIWURSQSAtIGdla2lsbHQgdm9uIE11cmdlbG1hbm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNwaW5uZW4gIChMaW5mbGFzLCAyNC4gT2t0IDIwMDEsIDEyOjAxOjM5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDAzODQ4NTQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMzg0Nzc4NQpadWxldHp0IGhhdHRlIGljaCBtb3JnZW5zIGVpbmUgU3Bpbm5lIGluIG1laW5lbSBTY2h1aC4uLgoKTC4sIHZvZWxsaWdlbiBVbmZ1ZyBlcnphZWhsZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTUcgdW5kIEt1ZWhlIChQdWssIDI0LiBPa3QgMjAwMSwgMTc6NDM6NDgpOgpNaXQsIDIyLiBKYW4gMTk5NywgMTM6NDM6MjQgOiBFaW50cmFnIHZvbiBNYWdpY29sbGk6CkljaCB3aWxsIEt1ZWhlISEKCkRpZXNlciBLdWh3YWhuIHBsYWd0IGRhcyBNZyBhYmVyIHNjaG9uIHJlY2h0IGxhbmcgOikKClB1awoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1HIHVuZCBLdWVoZSAoU2lsdmFuYSwgMjQuIE9rdCAyMDAxLCAxNzo0NToxNSk6Cn4jISBybj1QdWsgcnQ9MTAwMzkzODIyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDM5MzgyMjgKTmEsIG9iIGRpZSBIaXN0b3Jpa2VyIHVudGVyIHVucyBub2NoIHdpc3Nlbiwgd2llIGVzIGRhenUgZ2Vrb21tZW4gaXN0Li4uPwoKICBTaWx2YW5hICh3ZWlzcyBlcywgYWx0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNRyB1bmQgS3VlaGUgKEVsYmVyZXQsIDI0LiBPa3QgMjAwMSwgMTc6NDc6NTkpOgp+IyEgcm49U2lsdmFuYSBydD0xMDAzOTM4MzE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMzkzODIyOApNdXV1dXV1dXV1dXV1dXV1dXVoaGhoaGhoaGhoaGggOikpCgp3YXMgc29sbCBtYW4gYXVjaCBzb25zdCBkYXp1IHNhZ2VuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNRyB1bmQgS3VlaGUgKE5penpsLCAyNC4gT2t0IDIwMDEsIDIxOjU5OjU1KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAwMzkzODQ3OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDM5MzgyMjgKICAgICAKICAgICAgKChfXykpCiAgICAgICAoMDApCiAgbm4tLShvX19vKS0tbm4KIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTUcgdW5kIEt1ZWhlIChFbGJlcmV0LCAyNC4gT2t0IDIwMDEsIDIyOjAwOjMyKToKfiMhIHJuPU5penpsIHJ0PTEwMDM5NTM1OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAzOTM4MjI4CmdlbmF1IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNRyB1bmQgS3VlaGUgKEFtYXJ5bGxpcywgMjQuIE9rdCAyMDAxLCAyMjowMToyMCk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMDM5NTM2MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAzOTM4MjI4CkhtLCBkaWUga29lbm50ZSBpY2ggZ2xhdHQgbWFsIGluIG1laW4gQ293LVRvb2wgdWViZXJuZWhtZW4gOikKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1HIHVuZCBLdWVoZSAoUGF0cnluLCAyNC4gT2t0IDIwMDEsIDIyOjAxOjMwKToKfiMhIHJuPU5penpsIHJ0PTEwMDM5NTM1OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDAzOTM4MjI4CmRhIGhhYmVuIHdpciBkaWUgYmVncnVlbmR1bmcuLi5rdWVoZSBsYXNzZW4gc2ljaCBnYW56IGVpbmZhY2ggbWFsIG9wdGltYWwKaW4gYXNjaWktYXJ0IHBhY2tlbiA6KQpudXIgd2VuaWdlIHRpZXJlIGJpZXRlbiBiZWkgZGVyYXJ0IHdlbmlnZW4gemVpY2hlbiBkaWVzZW4Kd2llZGVyZXJrZW5udW5nc2VmZmVrdCBuZWJzdCBnYXJhbnRpZXJ0ZW4gbGFjaGVybiBkYW5rIGtvbWlzY2hlcgpzdGVsbHVuZ2VuIDopCgotLSAKcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNRyB1bmQgS3VlaGUgKEJpZWxlZmVsZCwgMjQuIE9rdCAyMDAxLCAyMjo0NzowMSk6Cn4jISBybj1OaXp6bCBydD0xMDAzOTUzNTk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwMzkzODIyOApXZWxjaCBBdXNkcnVja3NrcmFmdDogRWluZSBLdWgsIGVpbmdla2VpbHQgendpc2NoZW4gendlaSAnbm4nLgoKLUJpZWxlZmVsZCAoZmFzemluaWVydCB2b24gZGVyIEJlZGV1dHVuZ3NzY2h3ZXJlKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFM6IEZlc3RwbGF0dGUgKEdyaW1tYm9ybiwgMjYuIE9rdCAyMDAxLCAxNDoyOTo1MSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTAwNDA5OTM4NyBvZz1zdWNoZS1iaWV0ZQp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMDQwOTkyOTAgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMDA0MDk5MjkwCkljaCBoYWIgZWluZSBJREUtRmVzdHBsYXR0ZSBtaXQgNi41IEdCLCBmdWVyIDUwMCBETSBrYW5uc3QgRHUgc2llIGhhYmVuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjIgc3R1bmRlbiBhbmNoIGRlbSBDcmFzaCAoQmlyZHksIDI2LiBPa3QgMjAwMSwgMjA6MTg6NTkpOgpEZXIgS3JhZW1lciBqYW1tZXJ0OiBEZXIgbmFlY2hzdGUgQ3Jhc2ggcnVpbmllcnQgbWljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyODk0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbmF0b2wsIDI3LiBPa3QgMjAwMSwgMDM6MDM6MTYpOgp+IyEgcm49V3VyemVsIHJ0PTEwMDQxMzAzMzAgcmc9bWVnYXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cj4gZmkgZWxhaW5lCkVsYWluZSBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogQm9ubiAodWViZXIgS29lbG4pLgpFaW5nZWxvZ2d0IHNlaXQ6IFNhbSwgMjcuIE9rdCAyMDAxLCAwMTo0ODozNQpWb2xsZXIgTmFtZTogW1RlYW06Qmx1dHJhdXNjaF0gRWxhaW5lIHNhZ3Q6IE5pZSBvaG5lIEZvbGdlbgpSYXNzZTogTWVuc2NoLCAgR2lsZGU6IEthZW1wZmVyIChDbGFuIE5la2VrYW1pKSwgIEdlc2NobGVjaHQ6IHdlaWJsaWNoCi4uLgoKKmphbW1lciogOykgRGllIFRydmVzIHdlcmRlbiByZXZvbHV0aW9uaWVydC4uLiA7KQoKQW5hdG9sIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBvc3RwYWtldGUgKFJvbmRhLCAyOC4gT2t0IDIwMDEsIDAyOjAwOjA1KToKfiMhIHJuPVRpYW1hayBydD0xMDA0MjE1NTk0IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTAwNDIxNTU5NApBZWguLi4gd2FydW0gc29sbCBtYW4gZGVuIFBvc3RwYWtldGVuIGFuc2VoZW4sIGFuIHdlbiBzaWUgYWRkcmVzc2llcnQgc2luZD8KV2VyZGVuIGRpZSBkYW5uIGluIFp3ZWlmZWxzZmFlbGxlbiBhdWYgTWlsemJyYW5kIHVudGVyc3VjaHQ/IE11c3MgbWFuIHNvbnN0CmRhcyBNRy1Qb3N0b2ZmaWNlIGRlc2luZml6aWVyZW4/IEdhYnMgc2Nob24gU3B1cmVuIHZvbiB3ZWlzc2VtIFB1bHZlciBpbQpMUEMtQ29kZT8KClJvbmRhICptaXQgc2Nod2FyemVtIEh1bW9yLiBKYSwgYmVpIHVucyBnYWJzIHNjaG9uIEFsYXJtIGluIGRlciBQb3N0c3RlbGxlIDstKAoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpad2VpIEt1ZWhlIChUcm95LCAyOC4gT2t0IDIwMDEsIDEwOjE3OjQwKToKCiBUSEUgIlRXTy1DT1cgRVhQTEFOQVRJT04iIE9GIFdIQVQgTUFLRVMuLi4KCiBBIFNPQ0lBTElTVDoKIFlvdSBoYXZlIHR3byBjb3dzLiBUaGUgZ292ZXJubWVudCB0YWtlcyBvbmUgYW5kIGdpdmVzIGl0CiB0byB5b3VyIG5laWdoYm9yLgoKIEEgUkVQVUJMSUNBTjoKIFlvdSBoYXZlIHR3byBjb3dzLiBZb3VyIG5laWdoYm9yIGhhcyBub25lLiBTbyB3aGF0PwoKIEEgREVNT0NSQVQ6IFlvdSBoYXZlIHR3byBjb3dzLiBZb3VyIG5laWdoYm9yIGhhcyBub25lLgogWW91IGZlZWwgZ3VpbHR5IGZvciBiZWluZyBzdWNjZXNzZnVsLiBZb3Ugdm90ZSBwZW9wbGUKIGludG8gb2ZmaWNlIHdobyB0YXggeW91ciBjb3dzLCBmb3JjaW5nIHlvdSB0byBzZWxsIG9uZQogdG8gcmFpc2UgbW9uZXkgdG8gcGF5IHRoZSB0YXguIFRoZSBwZW9wbGUgeW91IHZvdGVkIGZvcgogdGhlbiB0YWtlIHRoZSB0YXggbW9uZXkgYW5kIGJ1eSBhIGNvdyBhbmQgZ2l2ZSBpdCB0bwogeW91ciBuZWlnaGJvciBZb3UgZmVlbCByaWdodGVvdXMuCgogQSBDT01NVU5JU1Q6CiBZb3UgaGF2ZSB0d28gY293cy4gVGhlIGdvdmVybm1lbnQgc2VpemVzIGJvdGggYW5kCiBwcm92aWRlcyB5b3Ugd2l0aCBtaWxrLgoKIEEgRkFTQ0lTVDoKIFlvdSBoYXZlIHR3byBjb3dzLiBUaGUgZ292ZXJubWVudCBzZWl6ZXMgYm90aCBhbmQgc2VsbHMKIHlvdSB0aGUgbWlsay4gWW91IGpvaW4gdGhlIHVuZGVyZ3JvdW5kIGFuZCBzdGFydCBhCiBjYW1wYWlnbiBvZiBzYWJvdGFnZS4KCiBERU1PQ1JBQ1ksIEFNRVJJQ0FOIFNUWUxFOgogWW91IGhhdmUgdHdvIGNvd3MuIFRoZSBnb3Zlcm5tZW50IHRheGVzIHlvdSB0byB0aGUgcG9pbnQKIHlvdSBoYXZlIHRvIHNlbGwgYm90aCB0byBzdXBwb3J0IGEgbWFuIGluIGEgZm9yZWlnbgogY291bnRyeSB3aG8gaGFzIG9ubHkgb25lIGNvdywgd2hpY2ggd2FzIGEgZ2lmdCBmcm9tIHlvdXIKIGdvdmVybm1lbnQuCgogQ0FQSVRBTElTTSwgQU1FUklDQU4gU1RZTEU6CiBZb3UgaGF2ZSB0d28gY293cy4gWW91IHNlbGwgb25lLCBidXkgYSBidWxsLCBhbmQgYnVpbGQgYQogaGVyZCBvZiBjb3dzLgoKIEJVUkVBVUNSQUNZLCBBTUVSSUNBTiBTVFlMRToKIFlvdSBoYXZlIHR3byBjb3dzLiBUaGUgZ292ZXJubWVudCB0YWtlcyB0aGVtIGJvdGgsCiBzaG9vdHMgb25lLCBtaWxrcyB0aGUgb3RoZXIsIHBheXMgeW91IGZvciB0aGUgbWlsaywgdGhlbgogcG91cnMgdGhlIG1pbGsgZG93biB0aGUgZHJhaW4uCgogQU4gQU1FUklDQU4gQ09SUE9SQVRJT046CiBZb3UgaGF2ZSB0d28gY293cy4gWW91IHNlbGwgb25lLCBhbmQgZm9yY2UgdGhlIG90aGVyIHRvCiBwcm9kdWNlIHRoZSBtaWxrIG9mIGZvdXIgY293cy4gWW91IGFyZSBzdXJwcmlzZWQgd2hlbgogdGhlIGNvdyBkcm9wcyBkZWFkLiAKCgogQSBGUkVOQ0ggQ09SUE9SQVRJT046CiBZb3UgaGF2ZSB0d28gY293cy4gWW91IGdvIG9uIHN0cmlrZSBiZWNhdXNlIHlvdSB3YW50CiB0aHJlZSBjb3dzLgoKIEEgSkFQQU5FU0UgQ09SUE9SQVRJT046CiBZb3UgaGF2ZSB0d28gY293cy4gWW91IHJlZGVzaWduIHRoZW0gc28gdGhleSBhcmUKIG9uZS10ZW50aCB0aGUgc2l6ZSBvZiBhbiBvcmRpbmFyeSBjb3cgYW5kIHByb2R1Y2UgdHdlbnR5CiB0aW1lcyB0aGUgbWlsay4KCiBBIEdFUk1BTiBDT1JQT1JBVElPTjoKIFlvdSBoYXZlIHR3byBjb3dzLiBZb3UgcmVlbmdpbmVlciB0aGVtIHNvIHRoZXkgbGl2ZSBmb3IKIDEwMCB5ZWFycywgZWF0IG9uY2UgYSBtb250aCwgYW5kIG1pbGsgdGhlbXNlbHZlcy4KCiBBTiBJVEFMSUFOIENPUlBPUkFUSU9OOgogWW91IGhhdmUgdHdvIGNvd3MgYnV0IHlvdSBkb24ndCBrbm93IHdoZXJlIHRoZXkgYXJlLiBZb3UKIGJyZWFrIGZvciBsdW5jaC4KCiBBIFJVU1NJQU4gQ09SUE9SQVRJT046CiBZb3UgaGF2ZSB0d28gY293cy4gWW91IGNvdW50IHRoZW0gYW5kIGxlYXJuIHlvdSBoYXZlCiBmaXZlIGNvd3MuIFlvdSBjb3VudCB0aGVtIGFnYWluIGFuZCBsZWFybiB5b3UgaGF2ZSA0MgogY293cy4gWW91IGNvdW50IHRoZW0gYWdhaW4gYW5kIGxlYXJuIHlvdSBoYXZlIDEyIGNvd3MuCiBZb3Ugc3RvcCBjb3VudGluZyBjb3dzIGFuZCBvcGVuIGFub3RoZXIgYm90dGxlIG9mIHZvZGthLgoKIEEgTUVYSUNBTiBDT1JQT1JBVElPTjoKIFlvdSB0aGluayB5b3UgaGF2ZSB0d28gY293cywgYnV0IHlvdSBkb24ndCBrbm93IHdoYXQgYQogY293IGxvb2tzIGxpa2UuIFlvdSB0YWtlIGEgbmFwLgoKIEEgU1dJU1MgQ09SUE9SQVRJT046CiBZb3UgaGF2ZSA1MDAwIGNvd3MsIG5vbmUgb2Ygd2hpY2ggYmVsb25ncyB0byB5b3UuIFlvdQogY2hhcmdlIGZvciBzdG9yaW5nIHRoZW0gZm9yIG90aGVycy4KCiBBIEJSQVpJTElBTiBDT1JQT1JBVElPTjoKIFlvdSBoYXZlIHR3byBjb3dzLiBZb3UgZW50ZXIgaW50byBhIHBhcnRuZXJzaGlwIHdpdGggYW4KIEFtZXJpY2FuIGNvcnBvcmF0aW9uLiBTb29uIHlvdSBoYXZlIDEwMDAgY293cyBhbmQgdGhlCiBBbWVyaWNhbiBjb3Jwb3JhdGlvbiBkZWNsYXJlcyBiYW5rcnVwdGN5LgoKIEFOIElORElBTiBDT1JQT1JBVElPTjoKIFlvdSBoYXZlIHR3byBjb3dzLiBZb3Ugd29yc2hpcCB0aGVtIAoKOi0pIFRyb3kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhpc2NvcmVsaXN0ZSAoS25hcnosIDI4LiBPa3QgMjAwMSwgMjA6MjM6NTQpOgpoYWV0dGUgbm9jaCBnZXJuZSBlaW5lIGFuemVpZ2UgZGVyIGdld29ubmVuZW4gdW5kIHZlcmxvcmVuZW4gc3BpZWxlLCBzb3dpZQplaW5lIHB1bmt0ZXdlcnR1bmcgZnVlciBkaWUgaGlzY29yZWxpc3RlLCBzb3dpZSBlaW5lIGdydXBwZW5laW50ZWlsdW5nIGluCmFuZmFlbmdlciwgZm9ydGdlc2Nocml0dGVuIHVuZCBwcm9maXMgKCBmb3J0Z2VzY2hyaXR0ZW4gbWluIDMgZ2V3b25uZW5lIHNwaWVsZQpnZWdlbiBhbmZhZW5nZXIsIG9kZXIgMSBnZWdlbiBmb3J0Z2VzY2hyaXR0ZW4pICprbmFyeiBtYWwgd2llZGVyIGdhbnogZ2llcmlnKiwKYWxzIGJlbG9obnVuZyBmdWVyIGRlbiBlaW50cml0dCBpbiBlaW5lIGhvZWhlcmUgZ3J1cHBlIGVpbiBzaWxiZXJuZXMgdW5kIGRhbm4KZWluIGdvbGRlbmVzIHN0aXJuYmFuZCwgd2VsY2hlcyBtYW4gYXVjaCB0cmFnZW4ga2FubiAqZ2llciogdGpvIGRhbm4sIHZpZWwKc3Bhc3Mgbm9jaCAqZyogY2lhbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhpc2NvcmVsaXN0ZSAoQW5hdG9sLCAyOC4gT2t0IDIwMDEsIDIwOjI2OjE2KToKfiMhIHJuPUtuYXJ6IHJ0PTEwMDQyOTcwMzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA0Mjk3MDM0CkVyIG1laW50IEdvLiBPZGVyPyA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaGlzY29yZWxpc3RlIChHcmltbWJvcm4sIDI4LiBPa3QgMjAwMSwgMjA6NTA6NTkpOgp+IyEgcm49QW5hdG9sIHJ0PTEwMDQyOTcxNzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA0Mjk3MDM0ClVuZCBpY2ggc2NoZW5rIGlobSBlaW4gcGFhciBaZWlsZW51bWJydWVjaGU6CgoKCkF1c3NlcmRlbSBpc3Qgc2VpbmUgR3JlbnplIHZvbiBkcmVpIGdld29ubmVuZW4gU3BpZWxlbiB2aWVsIHp1IGtsZWluLCB3aWUgamVkZQpvYmVyZmxhZWNobGljaGUgc3RhdGlzdGlzY2hlIEJldHJhY2h0dW5nIHplaWd0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZXNjaGVuayAoSG9uZXksIDI5LiBPa3QgMjAwMSwgMTU6MjQ6MzUpOgphaCBzaGl0IGZhbHNjaCAqc2NoYWVtKiBuYWphIGV0eiB3ZWlzcyBpY2ggd2VuaWdzdGVucyB3aWUgZGFzIGdlaHQgO3AKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClF1YWxpdGFldHNzaWNoZXJ1bmchIChab29rLCAyOS4gT2t0IDIwMDEsIDIwOjIwOjU0KToKCltUb2Q6TGFyc10gVGlhbWFrcyBUb0RvLUxpc3RlIGhhdCBnZXJhZGUgTm9ubmUgdW1nZWJyYWNodC4KW1RvZDpUaWFtYWtzIFRvRG8tTGlzdGVdIEZhc3MgbWljaCBuaWNodCBhbiEKW0JlaWxlaWQ6Tm9ubmVdIGRpZSB6ZWl0IGluIGRlciB0b2Rlc3NxdWVueiBrYW5uIGljaCBkYW5uIGxlaWRlciBuaWNodCBpbiBkaWUKW0JlaWxlaWQ6Tm9ubmVdIHF1YWxpdGFldHNzaWNoZXJ1bmcgbWVpbmVzIGNvZGVzIHN0ZWNrZW4gKGM7CkRlaW4gRnJldW5kIFhYWCB0ZWlsdCBEaXIgbWl0OiBzZWl0IHdhbm4gaGF0IG5vbm5lcyBjb2RlIHF1YWxpdGFldD8gOy0pCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERBREFEQSAoQW1hcnlsbGlzLCAzMC4gT2t0IDIwMDEsIDEzOjM3OjU3KToKfiMhIHJuPUFyayBydD0xMDA0NDQ1MjQyIHJnPXRyZWZmZW4KfiMhIHRpZD0xMDA0NDQ1MjQyCkRhcm1zdGFkdD8gd28gaXNuIGRhcz8gSG9lcnQgc2ljaCBpcmdlbmR3aWUgdmVyZGFtbXQgbmFjaCAiQXJzY2ggZGVyIFdlbHQiIGFuCjotKQoKQW1hKiwgZGFjaHRlIGVpZ2VudGxpY2ggZGFzcyBudXIgRnVydHdhbmdlbiBkaWVzZW4gVGl0ZWwgdHJhZWd0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERBREFEQSAoQmllbGVmZWxkLCAzMC4gT2t0IDIwMDEsIDEzOjM4OjQ3KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDA0NDQ1NDc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNDQ0NTI0MgpBdWNoIGJla2FubnQgYWxzICdIZXNzaXNjaC1GdXJ0d2FuZ2VuJy4KCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogREFEQURBIChBcmssIDMwLiBPa3QgMjAwMSwgMTM6Mzk6NTcpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMDQ0NDU0Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA0NDQ1MjQyCkhtLCB3ZW5uIGljaCBtaWNoIHJlY2h0IGVyaW5uZXIsIHdhcnN0IER1IGF1Y2ggc2Nob24gbWFsIGFtIEFyc2NoLCBvZGVyPwoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERBREFEQSAoQXJrLCAzMC4gT2t0IDIwMDEsIDEzOjQwOjI3KToKfiMhIHJuPUJpZWxlZmVsZCBydD0xMDA0NDQ1NTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNDQ0NTI0MgpEYSBzcHJpY2h0IGRlciBNYW5uIHZvbiBXZWx0IC4uLiBzZWluZXIga2xlaW5lbiBXZWx0IGViZW4gO14pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogREFEQURBIChTaWx2YW5hLCAzMC4gT2t0IDIwMDEsIDEzOjQxOjI1KToKfiMhIHJuPUFyayBydD0xMDA0NDQ1NTk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNDQ0NTI0MgpFcmlubmVydCBtaWNoIGltbWVyIHdpZWRlciBhbiBkaWVzZSB3dW5kZXJ2b2xsZSBOb3JkLVN1ZWQgU3RyZWNrZToKTGVlciAtIEVzc2VuIC0gRGFybXN0YWR0IC0gUGZvcnpoZWltLgoKU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogREFEQURBIChBbWFyeWxsaXMsIDMwLiBPa3QgMjAwMSwgMTM6NDM6NDEpOgp+IyEgcm49QXJrIHJ0PTEwMDQ0NDU1OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA0NDQ1MjQyCktsYXIsIGRydW0gaGFiIGljaCBkb2NoIEZ1cnR3YW5nZW4gZXJ3YWVobnQuLi4gOi0pCgpBbWEqLCBmcm9oLCBkb3J0IHdlZyB6dSBzZWluIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEQURBREEgKEh1bW5pLCAzMC4gT2t0IDIwMDEsIDEzOjQ2OjU3KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDA0NDQ1ODIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNDQ0NTI0MgpKbywgYWxzIGljaCBlcmZhaHJlbiBoYWIgd2llIGdyb3NzIGRlciBPcnQgaXN0IGhhYiBpY2ggYXVjaCBhbmdlZmFuZ2VuIGFsbGUKZG9ydCB6dSBiZWRhdWVybiAoaWNoIHdhciBiaXNoZXIgdm9uIHNvIDUwLTEwMC4wMDAgYXVzZ2VnYW5nZW4uLi4pCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogREFEQURBIChBbWFyeWxsaXMsIDMwLiBPa3QgMjAwMSwgMTQ6MDA6MzgpOgp+IyEgcm49SHVtbmkgcnQ9MTAwNDQ0NjAxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDQ0NDUyNDIKNTA/IGRhcyBrb21tdCBkdXJjaGF1cyBoaW4uLi4genVtaW5kZXN0IGluIHZvcmxlc3VuZ3NmcmVpZW4gWmVpdGVuIDopCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEQURBREEgKEh1bW5pLCAzMC4gT2t0IDIwMDEsIDE0OjA4OjA0KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDA0NDQ2ODM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNDQ0NTI0MgpOYWphIGljaCBkYWNodGUgYW4gNTBLLi4uLgoKYWxzIGljaCBkYW5uIHZvbiAxMEsgZ2VsZXNlbiBoYWJlIGhhYmUgaWNoIGFuZ2VmYW5nZW4sIGdld2lzc2UgTGV1dGUgRVJOU1RIQUZUCnp1IGJlZGF1ZXJuLgoKSHVtbmksIG51biB3aXJrbGljaCBrZWluICxHcm9zcydzdGFlZHRlci4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogREFEQURBIChIaWdodCwgMzAuIE9rdCAyMDAxLCAxNDozMjoyMyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTAwNDQ0NTQ3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDQ0NDUyNDIKbmVpbiBmdXJ0d2FuZ2VuIGlzIGRlciBoYXVmZW4gZGVyIGVpbnN0IHZvbSBhcnNjaCBkZXIgd2VsdCBoaW5hYiBpbiBkaWUKYWJncnVlbmRlIGZpZWwKCmhpZ2h0ICoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEQURBREEgKEdyaW1tYm9ybiwgMzAuIE9rdCAyMDAxLCAxNDozMzoxNSk6Cn4jISBybj1IaWdodCBydD0xMDA0NDQ4NzQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNDQ0NTI0MgpIbW0sIGlzdCBGdXJ0d2FuZ2VuIGVpbiBTeW5vbnltIGZ1ZXIgQmF5ZXJuLCBvZGVyIHdhcz8KCkdkQSwgZ2QmcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogREFEQURBIChIaWdodCwgMzAuIE9rdCAyMDAxLCAxNDozMzozNyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTAwNDQ0NjgzOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDQ0NDUyNDIKZXIgbWVpbnRlIGRpZSBlaW53b2huZXIgemFobCBuaWNoIGRhcyBqdWVuZ3N0ZSBtaXRnbGllZCBkZXIgZ2VtZWluZGUgLG8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb2xpZGFyaXRhZXQgbWl0IGRlbiBVU0EgKERlZXBibHVlLCAgMS4gTm92IDIwMDEsIDEwOjIzOjE1KToKCkRlciBQcmFlc2lkZW50IGRlciBVU0EgZm9yZGVydGUgdW5zIGF1ZiwgRWluaWdrZWl0IGJlaSBmb2xnZW5kZXIKR2VtZWluc2NoYWZ0c2FrdGlvbiB6dSB6ZWlnZW46CgpBbmdlc2ljaHRzIGRlciBUYXRzYWNoZSwgZGFzcyBkaWUgcmFkaWthbGVuIE11c2xpbWUgZGVuIFZlcnplaHIKdm9uIEFsa29ob2wgYWJsZWhuZW4gdW5kIGJlcnVlY2tzaWNodGlnZW5kLCBkYXNzIFNpZSBkZW4gQW5ibGljayBlaW5lcgphbmRlcmVuIG5hY2t0ZW4gRnJhdSBhbHMgaWhyZXIgZWlnZW5lbiBhbHMgU3VlbmRlIGJldHJhY2h0ZW4sIHNpbmQgZnVlcgptb3JnZW4gMTIgVWhyIGFsbGUgRnJhdWVuIGF1ZmdlcnVmZW4gbmFja3QgYXVmIGRpZSBTdHJhc3NlIHp1IGxhdWZlbgp1bmQgYWxsZSBNYWVubmVyLCBpaG5lbiBtaXQgZWluZW0gQmllciBpbiBkZXIgSGFuZCB6dSBmb2xnZW4uCgpBdWYgZGllc2UgV2Vpc2UgaGVsZmVuIHdpciwgZGllIFRlcnJvcmlzdGVuIHVudGVyIHVucwphdXNmaW5kaWcgenUgbWFjaGVuLgoKRGllIFZlcmVpbmlndGVuIFN0YWF0ZW4gZGFua2VuIElobmVuIGZ1ZXIgSWhyZSBCZW11ZWh1bmdlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRXR3YXMgRGlzemlwbGluIGJpdHRlIChab29rLCAgMi4gTm92IDIwMDEsIDEwOjQyOjUwKToKfiMhIHJuPVZhcmRpb24gcnQ9MTAwNDY5Mjk2NyByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMDA0NjkyMDk1CkZydWVoc3R1ZWNrIHVtIDEwLjIyIFVociB1bmQgZGFzIGluIGRlciBXb2NoZS4gU293YXMgYWJlciBhdWNoLi4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRXR3YXMgRGlzemlwbGluIGJpdHRlIChNYW5kcmFnb24sICAyLiBOb3YgMjAwMSwgMTA6NDM6MTgpOgp+IyEgcm49Wm9vayBydD0xMDA0Njk0MTcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNDY5MjA5NQpKby4gSWNoIHNvbGx0ZSBsYW5nc2FtIGlucyBCZXR0IC4uLi4KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IGRlciBkc2NodW5nZWwgbGVidCAobm9jaCkgKERlZXBibHVlLCAgMi4gTm92IDIwMDEsIDE4OjAwOjI3KToKfiMhIG9uPURlZXBibHVlIG90PTEwMDQ3MjA0MTMgb2c9ZC5kc2NodW5nZWwKfiMhIHJuPVRlcnJvcmlzdCBydD0xMDA0NzIwMzEwIHJnPWQuZHNjaHVuZ2VsCn4jISB0aWQ9MTAwNDcwNzczOAoiSGV1bCBkb2NoISIgaXN0IHZvbiBBbmF0b2wgdW5kIG5pY2h0IHZvbiBMdWcKVW5kIG51biwgVGVycm9yaXN0LCBMT0VTQ0ggRElDSCAoYykgTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogZGVyIGRzY2h1bmdlbCBsZWJ0IChub2NoKSAoTW9udGFudXMsICAyLiBOb3YgMjAwMSwgMTg6MDI6MDEpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTAwNDcyMDQyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDQ3MDc3MzgKdW5kICAiTE9FU0NIIERJQ0giIGlzdCBhdWNoIG5pY2h0IHZvbiBMdWcsIHNvbmRlcm4gd2VubiB1ZWJlcmhhdXB0LCBkYW5uIHZvbgpHcmltbWJvcm4uCgpFY2h0LCBkaWVzZXIgTHVnLUZhbmNsdWIgLSBhbGxlcyBHZXNjaGljaHRza2xpdHRlcmVyLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBkZXIgZHNjaHVuZ2VsIGxlYnQgKG5vY2gpIChEZWVwYmx1ZSwgIDIuIE5vdiAyMDAxLCAxODowMjo1OCk6Cn4jISBybj1Nb250YW51cyBydD0xMDA0NzIwNTIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNDcwNzczOAphbG9zIGF1ZiBMT0VTQ0ggRElDSCBoYXQgTHVnIHp1bWluZGVzdCBuZW4gR2VicmF1Y2hzbXVzdGVyc2NodXR6IGdlaGFidAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IGRlciBkc2NodW5nZWwgbGVidCAobm9jaCkgKE1vbnRhbnVzLCAgMi4gTm92IDIwMDEsIDE4OjA1OjAyKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwMDQ3MjA1Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDA0NzA3NzM4CndhcyB0cm90emRlbSBuaWNodCBiZXN0cmVpdGV0LCBkYXNzIGVyIG51ciBuZSBzY2hsZWNodGUgS29waWUgdm9uIEdkQSBpc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogZGVyIGRzY2h1bmdlbCBsZWJ0IChub2NoKSAoQW5hdG9sLCAgMi4gTm92IDIwMDEsIDE5OjI2OjA1KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwMDQ3MjA3MDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA0NzA3NzM4ClZvbiBtaXIgaXN0IG51ciAiSGV1bCcgZG9jaC4iLiBEYXMgaXN0IHRyb2NrZW5lciB1bmQgZ3JhbW1hdGlrYWxpc2NoCmtvcnJla3QuIERhcyAiSGV1bCBkb2NoISIgaXN0IGVpbiBwbHVtcGVzIFBsYWdpYXQuCgpBbmF0b2wgaGV1bHQgc2VsYnN0IG9mdCBnZW51ZyBydW0gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBkZXIgZHNjaHVuZ2VsIGxlYnQgKG5vY2gpIChNb250YW51cywgIDIuIE5vdiAyMDAxLCAxOToyNjo0Myk6Cn4jISBybj1BbmF0b2wgcnQ9MTAwNDcyNTU2NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDQ3MDc3MzgKV2FydW0gdmVybGVndCBlaWdlbnRsaWNoIGtlaW5lciBkaWVzZW4gVGhyZWFkIG5hY2ggZ2lsZGVuLnphdWRlcmVyPyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBkZXIgZHNjaHVuZ2VsIGxlYnQgKG5vY2gpIChNYW5kcmFnb24sICAyLiBOb3YgMjAwMSwgMTk6MzE6MjQpOgp+IyEgcm49TW9udGFudXMgcnQ9MTAwNDcyNTYwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDQ3MDc3MzgKV2VpbCBIYXJkaWwgbmNpaHQgbWVociBzcGllbHQuCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZ1ZXIgaW5zaWRlciA6KSAoU2t5LCAgMy4gTm92IDIwMDEsIDAwOjM4OjMyKToKRGVyIGxpc3RpZ2UgS2FtcGZ6d2VyZyBiZXNpdHp0IGtlaW5lIFdhZmZlLCBkaWUgRHUgdW50ZXJsYXVmZW4ga29lbm50ZXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUHV0emZyYXVlbi4uLiAoRm9vYmFyLCAgMy4gTm92IDIwMDEsIDExOjQ1OjQ5KToKRGllIFB1dHpmcmF1IG5pbW10IGVpbmUgRXh0cmFoYW5kLgo+IHVudCBwdXR6ZnJhdQpIaWVyIGhhc3QgZHUgZGllIGd1dGUgU2VlbGUgZGVyIEZlc3R1bmcgZ2VmdW5kZW4uIFNpZSBzY2hhdXQsIGRhcyBhbGxlcyBzY2hvZW4Kc2F1YmVyIHVuZCBhbnNlaG5saWNoIGJsZWlidC4gVGVpbHdlaXNlIGVudHNvcmd0IHNpZSBSdWVzdHVuZ2VuIHVuZCBMZWljaGVuCnZlcnN0b3JiZW5lciBTcGllbGVyLgpTaWUgc2llaHQgbmljaHQgbWVociB0YXVmcmlzY2ggYXVzLiAoNjAlKQpTZWluZSBFeHRyYWhhbmQgdmVybGVpaHQgaWhtIGVpbmVuIGdlaGVpbW5pc3ZvbGxlbiBUb3VjaC4KU2llIHRyYWVndCBiZWkgc2ljaDoKRWluZSBrbGVpbmUgRWllcnNjaGFsZS4gKDQpCkVpbiBkdW5rbGVyIEVsZmVucGFuemVyIChhbmdlem9nZW4pLgpFaW4gZ3Jvc3NlciwgZWlzZW5lciBTY2hsdWVzc2VsLgpFaW4gZHVua2xlciBFbGZlbnBhbnplci4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIE9obmUgVGl0ZWwgKE9ya3RvZXRlciwgIDMuIE5vdiAyMDAxLCAxODozNjoyMSk6CgpTYWNoZW4gZ2lidHM6CgpQaXRmYWxsIGlzdCBuaWNodCBhbndlc2VuZC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogQmxvb2R5IE5pZ2h0bWFyZSAodWViZXIgQmVybGluKS4KWnVsZXR6dCBhdXNnZWxvZ2d0OiBTYW0sICAzLiBOb3YgMjAwMSwgMTg6MzQ6MjIgKDAwOjAwOjExKS4KVm9sbGVyIE5hbWU6IFtUZWFtIE1ldHplbG1laXN0ZXJdIFtUZWFtIEthbXBmTXVoIV0gUGl0ZmFsbCBpc3QgZWluIGJsb2NrZW5kZXIKS2FtcGZmcm9zY2gKUmFzc2U6IE1lbnNjaCwgIEdpbGRlOiBLYWVtcGZlciwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogMTU5ZCAxMDowNzozNiwgICBTcGllbGVybGV2ZWw6IDg3IChTZWhlciksICAgR2lsZGVubGV2ZWw6IDIzCkRhdHVtIGRlcyBlcnN0ZW4gTG9naW46IFNhbSwgMjIuIE1haSAxOTk5LCAxNToxMjo0MgpIb21lcGFnZTogamliYmV0IG5pY2h0ClZlcmhlaXJhdGV0IG1pdDogWWFubmlzCkJpc2hlciBiZXJlaXRzIDIyMiBtYWwgZ2VzdG9yYmVuClByb2pla3Q6IG5peCBtZWhyIGZhbHNjaCBtYWNoZW4KW1RvZDpMYXJzXSBFbGRhcm9uIGhhdCBnZXJhZGUgUGl0ZmFsbCB1bWdlYnJhY2h0LgpbVG9kOlBpdGZhbGxdIHVuZCBlaW5lciBmdWVyIFJvY2h1cwpbPE1hc3RlUj46UGl0ZmFsbCBsYWVzc3QgZGllIEViZW5lICdDUycgZW50c3RlaGVuLl0KT2ssIER1IGhhc3QgZGllIFJ1YnJpayBzY2htYXJybiBtaXQgMjUgQXJ0aWtlbG4gYXVmZ2VzY2hsYWdlbi4KW0JlaWxlaWQ6U2Fya29uXSB1aS4uLndhdHQgd2FyIGRhcwpbQmVpbGVpZDpCcm90bmFlbF0gaGVoZSwgbnUgaGF0dGEgbmVuIHBrIDopKQoKCgpPcmtUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTdGFtbXRpc2NoIGluIEtOPyAoTWFuZHJhZ29uLCAgNC4gTm92IDIwMDEsIDE4OjA2OjE3KToKfiMhIG9uPU1hbmRyYWdvbiBvdD0xMDA0ODkzNTQ5IG9nPXRyZWZmZW4KfiMhIHJuPVpvb2sgcnQ9MTAwNDg5MzUyOSByZz10cmVmZmVuCn4jISB0aWQ9MTAwNDg4ODcyNQpTb3dhcyBzdWJ0aWxlcy4KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQnV0dGVyYnJvdCAoVHJveSwgIDUuIE5vdiAyMDAxLCAwOTowNzo0MSk6CkRpZXMgc3RhbW10IGF1cyBkZXIgWmVpdCBOci4gNDQvMTk5NSwgaXN0IGFsc28gc2Nob24gZXR3YXMgYWVsdGVyOgoKV2llIHN0ZWh0IGVzIHVtIGRpZSBkZXV0c2NoZSBLb2Noa3VsdHVyPwoKTWFsIGFuZ2Vub21tZW4sIFNpZSBzaW5kIGVpbiBNYW5uLCBrb21tZW4gYWJlbmRzIG5hY2ggSGF1c2UsIHVuZCBuaWVtYW5kIGlzdApkYS4gRGFubiBtdWVzc2VuIFNpZSBodW5ncmlnIGlucyBCZXR0LiBadW1pbmRlc3QgbWl0IGVpbmlnZXIKV2FocnNjaGVpbmxpY2hrZWl0LiBEZW5uIDQ0IFByb3plbnQgZGVyIE1hZW5uZXIga29lbm5lbiBzaWNoIGtlaW4gQnV0dGVyYnJvdApzY2htaWVyZW4uIERhcyBoYXQgZGllIGxnbG8tRm9ydW0tU3R1ZGllICc5NSBoZXItYXVzZ2VmdW5kZW4gLSBpbiBlaW5lcgpyZXByYWVzZW50YXRpdmVuIFVtZnJhZ2UgbWl0IGRlbSBOYW1lbiAiS29jaGVuIGluIERldXRzY2hsYW5kIi4KCk51biBoYWJlbiBTaWUgendlaSBNb2VnbGljaGtlaXRlbi4gRW50d2VkZXIgU2llIHJ1ZmVuIElocmUgTXV0dGVyIGFuLiBEaWUKd2lyZCBJaG5lbiBzYWdlbiwgZGFzcyBTaWUgbmllIGFucnVmZW4sIGRhc3MgU2llIHNpY2ggd2FybSBhbnppZWhlbiBzb2xsZW4gdW5kCmRhc3Mgc2llIGJhbGQgc3RlcmJlbiB3ZXJkZSwgd2VubiBTaWUgc28gd2VpdGVybWFjaGVuLiBPYiBkZW5uIGVpbiBBbnJ1ZiBwcm8KV29jaGUgd2lya2xpY2ggenV2aWVsIHZlcmxhbmd0IHNlaS4gRGllIGFuZGVyZSBNb2VnbGljaC1rZWl0OiBTaWUgbGVybmVuLCB3aWUKbWFuIGVpbiBCdXR0ZXJicm90IHNjaG1pZXJ0LiBEYWZ1ZXIgemllaGVuIFNpZSBzaWNoIGluIGVpbmVuIFJhdW0genVydWVjaywgaW4KZGVtIFNpZSBzaWNoIHdvaGwgZnVlaGxlbiB1bmQgYW5nc3RmcmVpIGJld2VnZW5rb2VubmVuLiBJbiBJaHIgQXJiZWl0emltbWVyCmFsc28uIERhbWl0IGVzIGxvc2dlaGVuIGthbm4sIGJyYXVjaGVuIFNpZToKCi0gQnJvdCAxIFNjaGVpYmUsIGV0d2EgZmluZ2VyZGljawotIEJ1dHRlciwgZXR3YXMKLSBCdXR0ZXJtZXNzZXIsIDEKLSBUZWxsZXIsIGtsZWluCgpFaW4gQnV0dGVybWVzc2VyIGlzdCBlaW4gbGFlbmdsaWNoZXIsIG1ldGFsbGVuZXIgR2VnZW5zdGFuZC4gRXIgaXN0IGRvcHBlbHQKc28gbGFuZyB3aWUgZWluIEhhbmR5LCBoYWxiIHNvIGJyZWl0LCB3aWUgZWluIEZpbG9mYXggZGljayBpc3QsIHVuZCBnZWhvZXJ0Cnp1ciBHYXR0dW5nIGRlcyBCZXN0ZWNrcyAoc2llaGUgYXVjaDogR2FiZWwsIExvZWZmZWwpLiBCdXR0ZXJtZXNzZXIgZmluZGVuClNpZSBpbiBqZW5lbSBSYXVtIElocmVyIFdvaG51bmcsIGRlbiBTaWUgbm9jaCBuaWUgYmV0cmV0ZW4gaGFiZW4gdW5kIHZvbiBkZW0KU2llIHNpY2ggc2Nob24gb2Z0IGdlZnJhZ3QgaGFiZW4sIHdhcyBzaWNoIGRhcmluIHZlcmJlcmdlbiBtYWcuIEdlaGVuIFNpZQpoaW5laW4uIERhcyBTY2hsaW1tc3RlLCB3YXMgSWhuZW4gcGFzc2llcmVuIGthbm4sIGlzdCwgZGFzcyBTaWUgZWluZXIgZnJlbWRlbgpGcmF1IGJlZ2VnbmVuLiBLZWluZSBBbmdzdDogU2llIHdvaG50IHNlaXQgbGFuZ2VtIG1pdCBJaG5lbiB1bnRlciBlaW5lbQpEYWNoLiBXdWVuc2NoZW4gU2llIElociBlaW5lbiBndXRlbiBUYWcuCgpEYXMgQmVzdGVjayBsaWVndCBpbiBlaW5lciBTY2h1YmxhZGUsIGRpZSBzaWNoIGZ1ZXIgZ2V3b2VobmxpY2ggaW4gZGVyIE5hZWhlCmVpbmVzIGF1ZmZhZWxsaWdlbiBLYXN0ZW5zIGJlZmluZGV0LiBEaWVzZXIgS2FzdGVuIGhhdCBvYmVuIHZpZXIKc2NoYWxscGxhdHRlbmFydGlnZSBTY2hlaWJlbiB1bmQgdm9ybmUgS25vZXBmZSwgd2llIFNpZSBzaWUgYXVzIElocmVtIEJNVyA1MzUKaSBrZW5uZW4uIFdlbm4gU2llIGFuIGRlbiBLbm9lcGZlbiBkcmVoZW4sIHN0YXJ0ZW4gU2llIGRhcyBHZXJhZXQuIEJlc3NlciwgU2llCnJ1ZWhyZW4gZXMgbmljaHQgYW4uIE9kZXIgZnJhZ2VuIFNpZSBkaWUgRnJhdSwgZGllIFNpZSBtaXR0bGVyd2VpbGUKbWlzc3RyYXVpc2NoIGJlb2JhY2h0ZXQuIE5laG1lbiBTaWUgZGFzIEJ1dHRlcm1lc3NlciBhdXMgZGVyIFNjaHVibGFkZSB1bmQKdmVybGFzc2VuIFNpZSBkZW4gUmF1bS4KQnJvdCBnaWJ0IGVzIGluIGVpZ2VucyBkYWZ1ZXIgZWluZ2VyaWNodGV0ZW4gQnJvdHZlcnRlaWxzdGVsbGVuLiBNYW4gZXJrZW5udApzaWUgYW4gZGVuIFNjaGF1ZmVuc3Rlcm4sIGluIGRlbmVuIHJpZXNlbmdyb3NzZSwgc3RhdWJpZ2UgQnJlemVsIGF1cyBTYWx6dGVpZwpsaWVnZW4sIGRpZSBuaWUgamVtYW5kIGthdWZ0LiBMYXNzZW4gU2llIHNpY2ggZGF2b24gbmljaHQgZW50bXV0aWdlbi4gV2Vubgpkb2NoLCBkZW5rZW4gU2llIGFuIE11dHRlci4gVHJldGVuIFNpZSBlaW4gdW5kIHZlcmxhbmdlbiBTaWU6ICJFaW5lIFNjaGVpYmUKQnJvdCwgYml0dGUuIiBCcm90IG5vdGllcnQgZGVyemVpdCBtaXQgNzUgUGZlbm5pZyBkaWUgU2NoZWliZS4gRGVyIEt1cnMgaXN0CmZlc3QuIERpZSBCdXR0ZXIgbGllZ3QgaW0gS3VlaGxyZWdhbC4gU2llIGlzdCBpbiBGb2xpZSBlaW5nZXNjaGxhZ2VuIHVuZApkdXJjaCBkaWUgQXVmc2NocmlmdCAsLER1IGRhcmZzdCBnZWtlbm56ZWljaG5ldC4KCk51biB6dW0gc2Nod2llcmlnc3RlbiBUZWlsIGRlciBTYWNoZS4gTGVnZW4gU2llIGRpZSBTY2hlaWJlIGF1ZiBkZW4gVGVsbGVyLApuZWhtZW4gU2llIGVpbmUgTWVzc2Vyc3BpdHplIHZvbiBkZXIgemltbWVyd2FybWVuICghKSBCdXR0ZXIsIHVuZCBzdGVsbGVuClNpZSBzaWNoIGZvbGdlbmRlIFN6ZW5lIHZvcjogU2llIFNpdHplbiBpbiBlaW5lciBWb3JzdGFuZHNzaXR6dW5nLCBNZXllciBoYXQKZWluIFBhcGllciBwcmFlc2VudGllcnQuIFZvcnN0YW5kc3ZvcnNpdHplbmRlciBLcmF3ZWhsLCBlaW5lciBpaHJlcgpJbnRpbWZlaW5kZS4gZmluZGV0IE1leWVycyBQYXBpZXIgU2NoZWlzc2UuIERhIE1leWVyIElociBsb3lhbCBlcmdlYmVuZXIKUHJvZHVjdG1hbmFnZXIgaXN0LCBtdWVzc2VuIFNpZSBudW4gbWl0IGRlciBFbGVnYW56IGVpbmVzIFJhdWJ0aWVyZXMsIG1pdApkcmFlbmdlbmRlciwgZ2xlaWNod29obCByZXNwZWt0dm9sbGVyIEFyZ3VtZW50YXRpb24gZGVuIEtyYXdlaGwgbmllZGVyYnVlZ2Vsbgp1bmQgaWhtIHp1Z2xlaWNoIHNjaG1laWNoZWxuIHVuZCBkYW1pdCBNZXllciwgZGVuIElkaW90ZW4sIHJhdXNoYXVlbi4gRGllc2VzCkdlZnVlaGwgdHJhbnNwb25pZXJlbiBTaWUgbnVuIGluIElocmUgUmVjaHRlIHVuZCBmdWVocmVuIGRhbWl0IGRhcyBNZXNzZXIgc2FtdApCdXR0ZXIgdWViZXIgZGllIE9iZXJmbGFlY2hlIGRlciBCcm90c2NoZWliZS4gSGluIHVuZCBoZXIuIEhpbiB1bmQgaGVyIEJpcyBkaWUKQnV0dGVyIGR1ZW5uIGlzdCB3aWUgZWluZSBpZGVhbGUgUGVyc29uYWxkZWNrZS4gRGllIGFuZGVyZSBNb2VnbGljaGtlaXQ6ClN0ZWxsZW4gU2llIHNpY2ggdm9yLCBTaWUgc2VpZW4gU2NoYXJwaW5nLiBEYXMgZ2VodCBhdWNoLgoKT2JhY2h0OiBCdXR0ZXJicm90ZSB3ZXJkZW4gLSBlbnRnZWdlbiBJaHJlciBzb25zdGlnZW4gR2V3b2huaGVpdCwgYWxsZXMgc2VocgpncnVlbmRsaWNoIHp1IG1hY2hlbiAtIG51ciBlaW5zZWl0aWcgYmVzdHJpY2hlbi4gRmVydGlnLgpOdW4ga29lbm5lbiBTaWUgdm9ybmUsIHdvIGRpZSBTY2hlaWJlIHNjaG1hbCB1bmQgcnVuZCB6dWxhZXVmdCwgaW4gZGFzCkJ1dHRlcmJyb3QgaGluZWluYmVpc3Nlbi4KClRyb3kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEdpbGRlbmtyaWVnZSAoRGVlcGJsdWUsICA1LiBOb3YgMjAwMSwgMDk6MjA6MTgpOgp+IyEgcm49WmFybml5YSBydD0xMDA0OTQ4MDk2IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTAwNDk0NjM3NQpXaWVzbyBzY2hyZWlic3QgRHUgZGFzIGVpZ2VudGxpY2ggbWl0IG5lbSBMZXZlbDEtU3BpZWxlciB1bmQgbmljaHQgbWl0IERlaW5lbQpFcnN0aWU/IFVuZCBkYW5uIG5vY2ggYWxzIEFiZW50ZXVyZXIsIGRlciBuaWNodCBtYWwgbmVuIEdpbGRlbi1OUEMgaGF0LCBkZW4KbWFuIHZlcnRlaWRpZ2VuIGtvZW5udGU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBHaWxkZW5rcmllZ2UgKEJvaW5nLCAgNS4gTm92IDIwMDEsIDA5OjM0OjI3KToKfiMhIHJuPURlZXBibHVlIHJ0PTEwMDQ5NDg0MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDA0OTQ2Mzc1CkF1Y2ggTGV2ZWwgMSBTcGllbGVyIGtvZW5uZW4gRXJzdGllcyBzZWluIHVuZCB0cm90emRlbSBkYXMgTXVkIHVuZCBzZWluZW4KV2VyZGVnYW5nIGtlbm5lbi4KTmFqYSwgYmlzdCBub2NoIG5pY2h0IHNvIGxhbmdlIGRhYmVpIHVuZCBrYW5uc3QgZXMgZXZ0bC4gbmljaHQgd2lzc2VuLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBHaWxkZW5rcmllZ2UgKEZvb2JhciwgIDUuIE5vdiAyMDAxLCAwOTo1OTozOSk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDA0OTQ4NDE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNDk0NjM3NQpXaWUgd2FlciBlcyBtaXQgT3dlbj8gOm8pCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEdpbGRlbmtyaWVnZSAoVmFybGFyaW9uLCAgNS4gTm92IDIwMDEsIDEwOjAwOjIxKToKfiMhIHJuPUZvb2JhciBydD0xMDA0OTUwNzc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNDk0NjM3NQpvaCB1bmQgaWNoIGRhY2h0ZSwgaWNoIGhhZXR0ZSBiaXNoZXIgbm9jaCBrZWluZW4gZ2lsZGVuLW5wYyBnZWtpbGx0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBHaWxkZW5rcmllZ2UgKERlZXBibHVlLCAgNS4gTm92IDIwMDEsIDEwOjAyOjA1KToKfiMhIHJuPURlZXBibHVlIHJ0PTEwMDQ5NDg0MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDA0OTQ2Mzc1Ck93ZW4/IERhbWl0IGRlciBuaWNodCBub2NobWFsIDMgVG9yZSBnZWdlbiBEZXV0c2NobGFuZCBzY2hpZXNzdD8gT2NoIGxhc3MgbWFsCjotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogR2lsZGVua3JpZWdlIChEZWVwYmx1ZSwgIDUuIE5vdiAyMDAxLCAxMDowODoyMSk6Cn4jISBybj1aYXJuaXlhIHJ0PTEwMDQ5NTA4Nzkgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDA0OTQ2Mzc1CkR1IGhhc3N0IHdhcyB2ZXJnZXNzZW4uCllhbnRybyBoYXQgZGllIE5pc2NoZSwgaGllciB6d2FyIHNlbGJzdCBuaWNodCBtZWhyIHp1IHNwaWVsZW4sIGFiZXIgaW1tZXIKd2llZGVyIGVuZGxvc2UgRGlza3Vzc2lvbmVuIGhlcmF1Znp1YmVzY2h3b2VyZW4uIFp1bSBHbHVlY2sgdW50ZXJzdHVldHp0IGlobgpTZWxic3RhdWNobmljaHRtZWhyc3BpZWxlciBHcmltbWJvcm4gZGFiZWkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogR2lsZGVua3JpZWdlIChWYXJsYXJpb24sICA1LiBOb3YgMjAwMSwgMTA6MTU6MzkpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTAwNDk1MTMwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDQ5NDYzNzUKbmEgbWFsIGFid2FydGVuLCB3YXMgZGllIGFrdGl2ZW4gc3BpZWxlciB6dSBkZW0gdGhlbWEgc2FnZW4sIHdlbm4gc2llIGF1cyBkZW4KYmV0dGVuIGZhbGxlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEdpbGRlbmtyaWVnZSAoRGVlcGJsdWUsICA1LiBOb3YgMjAwMSwgMTA6MjE6NTMpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwMDQ5NTE3NDMgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDA0OTQ2Mzc1CkdhbnogdmVyZ2Vzc2VuOiBOZW4gWmF1YmkgbWV0emVsdCBkZW4gU3RydXYsIHVuZCBsb2dndCBkYW5uIHNlaW5lbgpUcnZlcy1ad2VpdGllIGVpbiB1bmQgbWV0emVsdCBzaWNoIHNlbGJlciA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBHaWxkZW5rcmllZ2UgKEthcmlzLCAgNS4gTm92IDIwMDEsIDEwOjI3OjQyKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwMDQ5NTIxMTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA0OTQ2Mzc1CkphLCBzb3dhcyBicmluZ2VuIGF1Y2ggbnVyIFphdWJpZXMgZmVydGlnIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogR2lsZGVua3JpZWdlIChEZWVwYmx1ZSwgIDUuIE5vdiAyMDAxLCAxMDoyODoyNCk6Cn4jISBybj1LYXJpcyBydD0xMDA0OTUyNDYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNDk0NjM3NQpUcnZlcyBhdWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEdpbGRlbmtyaWVnZSAoWmFybml5YSwgIDUuIE5vdiAyMDAxLCAxMDozMzoyMik6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDA0OTUxMzAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNDk0NjM3NQpkYWZ1ZXIgYmVzZXR6dCBEdSBkaWUgTmlzY2hlIERpciBkYXMgUmVjaHQgaGVyYXVzIHp1IG5laG1lbiwgZWluZW0gbmljaHQgbWVocgpha3RpdmVuIFNwaWVsZXIgZGFzIERpc2t1c3Npb25zcmVjaHQgZW50emllaGVuIHp1IHdvbGxlbi4gSWNoIHdlaXNzIGF1Y2ggZWluZW4KTmFtZW4gZnVlciBkaWUgTmlzY2hlLCBpbiBkZXIgRHUgc2l0enQsIGFiZXIgaWNoIHdpbGwgZGllc2VuIGRlbiBMZXNlcm4gbmljaHQKenVtdXRlbi4gOi0pCgpNYXJjIChlaW4gR2x1ZWNrLCBkYXNzIGRhcyBoaWVyIHNjaG1hcnJuIGlzdCB1bmQgaW4gZW50d2lja2x1bmcgd2VpdGVyCnNhY2hsaWNoIHVlYmVyIGRpZSBTYWNoZSBnZXNwcm9jaGVuIHdpcmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogR2lsZGVua3JpZWdlIChEZWVwYmx1ZSwgIDUuIE5vdiAyMDAxLCAxMDo0NjoxNyk6Cn4jISBybj1aYXJuaXlhIHJ0PTEwMDQ5NTI4MDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA0OTQ2Mzc1CkljaCBlbnR6aWVoZSBuaWVtYW5kZW4gZGFzIFJlZGVyZWNodC4gTWljaCB3dW5kZXJ0IGVzIG51ciwgZGFzcyBkZXIgVm9yc2NobGFnCnZvbiBqZW1hbmRlbiBrb21tdCwgZGVyIG5pY2h0IGFrdGl2IGhpZXIgc3BpZWx0LiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBHaWxkZW5rcmllZ2UgKEthcmlzLCAgNS4gTm92IDIwMDEsIDEwOjQ3OjQ4KToKfiMhIHJuPURlZXBibHVlIHJ0PTEwMDQ5NTM1Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA0OTQ2Mzc1CkRlZmluaWVyZSAnc3BpZWxlbicuCkthcmlzLCBicmljaHQgbmV1ZSBEaXNrdXNzaW9uZW4gdm9tIFphdW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogR2lsZGVua3JpZWdlIChHcmltbWJvcm4sICA1LiBOb3YgMjAwMSwgMTE6NDg6MDcpOgp+IyEgcm49S2FyaXMgcnQ9MTAwNDk1MzY2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDQ5NDYzNzUKTnVuIHVlYmVyZm9yZGVyZSBpaG4gZG9jaCBuaWNodCBzby4gTnVyIHdlaWwgZXIgZWluIFdvcnQgdmVyd2VuZGVuIGthbm4gaGVpc3N0CmRhcyBuaWNodCBkYXNzIGlobSBhdWNoIGRpZSBCZWRldXR1bmcga2xhciBpc3QuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEdpbGRlbmtyaWVnZSAoRGVlcGJsdWUsICA1LiBOb3YgMjAwMSwgMTQ6MTk6MjkpOgp+IyEgb249RGVlcGJsdWUgb3Q9MTAwNDk2NjM2MSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49RWxiZXJldCBydD0xMDA0OTY2MTk2IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTAwNDk0NjM3NQp3ZWlsIGRpZSBMZXV0ZSwgZGllIGRhcyBoaWVyIGZvcmRlcm4sIGVzIHNlbGJzdCBnYXJuaWNodCB0dW4gd29sbGVuLCB3ZWlsIHNpZQpzb3dpZXNvIG5pY2h0IHNwaWVsZW4/IEVzIGlzdCBoYWx0IGJla2FubnQsIGRhc3MgZGFzIFRoZW1hIFBLcyBzY2huZWxsIHp1bQpSZWl6dGhlbWEgd2lyZC4gQWxzbyBlaWduZXQgZXMgc2ljaCBwcmltYSB6dW0gU3R1bmsgbWFjaGVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogR2lsZGVua3JpZWdlIChJc2ksICA1LiBOb3YgMjAwMSwgMTQ6Mzg6NDgpOgp+IyEgcm49RWxiZXJldCBydD0xMDA0OTY3NDc0IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTAwNDk0NjM3NQpJaHIgYnJhdWNodCB1bmJlZGlndCBuZSBtcGEtcnVicmlrICdLaW5kZXJnYXJ0ZW5mbGFtZXMnCmlzaSAoTW91c3Nld2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBHaWxkZW5rcmllZ2UgKEdyaW1tYm9ybiwgIDUuIE5vdiAyMDAxLCAxNDo0MDo1NSk6Cn4jISBybj1Jc2kgcnQ9MTAwNDk2NzUyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDQ5NDYzNzUKV296dSBlaW5lIFJ1YnJpayBmdWVyIGV0d2FzLCB3YXMgaW4gcHJha3Rpc2NoIGRlciBnZXNhbXRlbiBtcGEgb24tdG9waWMgaXN0PwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogR2lsZGVua3JpZWdlIChJc2ksICA1LiBOb3YgMjAwMSwgMTQ6NDI6NTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDQ5Njc2NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA0OTQ2Mzc1CnVtIGRpZSBzcHJldSB2b20gd2VpemVuIHp1IHRyZW5uZW4gekIKYXVzc2VyZGVtIGJyYWV1dGUgbWFuIGRhbm4gbmljaHQgc28gb2Z0IHRocmVhZHMgaWdub3JpZXJlbi4KaXNpICh3YXNzZXJwaXN0b2xld2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBHaWxkZW5rcmllZ2UgKERlZXBibHVlLCAgNS4gTm92IDIwMDEsIDE1OjAzOjAwKToKfiMhIHJuPUJpZWxlZmVsZCBydD0xMDA0OTY4MzYyIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTAwNDk0NjM3NQpOb2UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBHaWxkZW5rcmllZ2UgKEdsb2luc29uLCAgNS4gTm92IDIwMDEsIDE4OjAwOjQwKToKfiMhIHJuPVphcm5peWEgcnQ9MTAwNDk1MjgwMiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDQ5NDYzNzUKOnN0ZWNrdCBUcm95cyBGZXR0ZWNrZSBpbiBFdXJlIE5pc2NoZW4uCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUHV0emZyYXVlbi4uLiAoUGF0cnluLCAgNS4gTm92IDIwMDEsIDE5OjM5OjA3KToKfiMhIHJuPUZvb2JhciBydD0xMDA0Nzg0MzQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNDc4NDM0OQpleHRyYWhhbmQgaG9wZWZ1bGx5IGZpeGVkLgpzb2xsdGVuIG51biBuaWNoIG1laHIgd2VpdGVyZ2ViYmFyIHNlaW4gKGZ1bmt0aW9uZWxsIHdhcnMgZWggbmljaHQpCgotLSAKcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFB1dHpmcmF1ZW4uLi4gKEFuYXRvbCwgIDUuIE5vdiAyMDAxLCAxOTo0MDoyNyk6Cn4jISBybj1QYXRyeW4gcnQ9MTAwNDk4NTU0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDQ3ODQzNDkKRml4JyBkb2NoIGF1Y2ggbWFsIGdsZWljaCAid2lsbGUiLCBiaXR0ZSAtIFdhcyB3aWxsIGRlciBHbm9tZW56YXViZXJlcgphdWNoIGltbWVyIGRhbWl0Li4uID8gOykKCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmEsIGRhIHN0ZWhlbiB1bnMgbm9jaCBsdXN0aWdlIFplaXRlIGJldm9yLi4uLiAoWm9vaywgIDUuIE5vdiAyMDAxLCAyMjowNjoxNyk6CltTZWhlcjpFbGRhcm9uIGZsYWVjaGVuZnJvc2NodCBrd2VyIGdpbGRlIGNoYW9zLl0KW1NlaGVyOlBhdHJ5biBmcm9zY2hyZWduZXQgZGFzIHN0cnV2XQpbU2VoZXI6RWxkYXJvbiBqdWJlbHQuXQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOYSwgZGEgc3RlaGVuIHVucyBub2NoIGx1c3RpZ2UgWmVpdGUgYmV2b3IuLi4uIChMaWFyYSwgIDUuIE5vdiAyMDAxLCAyMjoxNDowMyk6Cn4jISBybj1ab29rIHJ0PTEwMDQ5OTQzNzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA0OTk0Mzc3ClNlaXQgd2FubiBrb2VubmVuIFRhbmppYW53dWVyc3RlIGZyb3NjaGVuLiA6LSkKClpaTCwgZHVja3Qgc2ljaCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmEsIGRhIHN0ZWhlbiB1bnMgbm9jaCBsdXN0aWdlIFplaXRlIGJldm9yLi4uLiAoTWFuZHJhZ29uLCAgNS4gTm92IDIwMDEsIDIzOjE2OjI5KToKfiMhIHJuPUxpYXJhIHJ0PTEwMDQ5OTQ4NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA0OTk0Mzc3CkIgZmVobHQuCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmEsIGRhIHN0ZWhlbiB1bnMgbm9jaCBsdXN0aWdlIFplaXRlIGJldm9yLi4uLiAoTGlhcmEsICA1LiBOb3YgMjAwMSwgMjM6Mjc6NDUpOgp+IyEgcm49TGlhcmEgcnQ9MTAwNDk5NDg0MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDQ5OTQzNzcKTm9lLCBCIGlzdCBHZXNjaGljaHRlLiA6LSkKClpaTAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmEsIGRhIHN0ZWhlbiB1bnMgbm9jaCBsdXN0aWdlIFplaXRlIGJldm9yLi4uLiAoTWFuZHJhZ29uLCAgNS4gTm92IDIwMDEsIDIzOjM3OjI3KToKfiMhIHJuPUxpYXJhIHJ0PTEwMDQ5OTkyNjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA0OTk0Mzc3Ci4uLiB1bmQgd2FubiBrcmllZ2VuIHdpciBkaWUgbGllYmUgTFogd2llZGVyID8KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRXR3YXMgRGlzemlwbGluIGJpdHRlIChBbmF0b2wsICA2LiBOb3YgMjAwMSwgMTI6MjI6NTkpOgp+IyEgb249QW5hdG9sIG90PTEwMDUwNDU3NzUgb2c9Z2lsZGVuLnphdWJlcmVyCn4jISBybj1TaWx2YW5hIHJ0PTEwMDUwNDU3MzUgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTAwNDY5MjA5NQpJY2ggd3Vzc3RlIGVzOiBBbGxlcyBoYXQgaXJnZW5kd28gZXR3YXMgR3V0ZXMuIDspCgpBbmF0b2wgLSB2ZXJsZWd0IGVzIHNlbGJzdCBuYWNoICJzY2htYXJybiIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFNRCA4MDAgKEdyaW1tYm9ybiwgIDYuIE5vdiAyMDAxLCAxNjo0NToxMSk6Cn4jISBybj1QaWxncmltIHJ0PTEwMDUwNjExNDMgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTAwNTA0MDMyMQpGdWVyIHNvd2FzIGJyYWV1Y2h0ZW4gd2lyIGVpZ2VudGxpY2ggZWluZSBSdWJyaWsKIm1laW5lcl9pc3RfZ3JvZXNzZXJfYWxzX2RlaW5lciIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpY2tlIFp3ZXJnZS4uIDopIChaZXBoeXIsICA2LiBOb3YgMjAwMSwgMjM6NTI6MzApOgpEdSB0ZWlsc3QgUGl0ZmFsbCBtaXQ6IGFjaCBpaHIgc2VpZCB6dSB6d2VpdCA6KQpQaXRmYWxsIHRlaWx0IERpciBtaXQ6IGpvIGljaCB1bmQgbWVpbiBkaWNrZXMgaXVjaCA6KQo+IHRlYW0gbGlzdGUKVGVhbSA2OiBQaXRmYWxsLCBVZ2koKikKCkM0LCBoYXRzIHNjaG9uIGltbWVyIGdld3Vzc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldGRpZ2VzdC4uLiAoRm9vYmFyLCAgNy4gTm92IDIwMDEsIDAwOjU3OjM2KToKRnJvbTogTWFyYyBSaWVzZSA8bWFyY0BzY25yLmRlPgpTdWJqZWN0OiBSZTogTU1NIDMgLSAyLiBWZXJzdWNoCk5ld3Nncm91cHM6IGRlLmNvbW0ucHJvdmlkZXIubWV0cm9uZXQKRGF0ZTogRnJpLCAwMiBOb3YgMjAwMSAxNzowNDowNiArMDEwMApNZXNzYWdlLUlEOiA8MjExMDEuMzcxM0BidHcuc2Nuci5kZT4KClBldHJhIFRpbHNuZXIgc2NocmllYjoKCj5NYXJjIFJpZXNlIHNjaHJpZWI6Cj4+IC4uLiBoZWlzc2VuIHVlYnJpZ2VucyBuZXVlcmRpbmdzICJQb3J0bW9uZWUiLCBqZWRlbmZhbGxzIG5hY2ggbmV1ZXIKPj4gUmVjaHRzY2hyYWlwdW5jayB8LSkuCj4KPmRhcyBpc3QgamEgc29vb29vIGVrbGlnIFt0bV0KCkphLCBkaWUgbmV1ZSBPcnRvZ3JhZmllIG1pdCBhbGwgaWhyZW4gRmFzc2V0dGVuIGlzdCBlaW4gZWNodGVyIEFsYnRyYXVtLgpLb21tdCBtaXIgbWFuY2htYWwgdm9yIHdpZSBlaW4gc2NobGVjaHRlciBTa2V0c2NoLiBNaXQgQnJhdnVyIGhhdCBtYW4gamEKcGVyIEtvbW11bmlrZWUgZGllc2VzIHBvdGVuemllbGwgYXVmd2FlbmRpZyBlcnN0ZWxsdGUgV2VyayBiZWthbm50CmdlbWFjaHQuIEJlc29uZGVycyBiZWltIEdhbmcgaW4gZGVuIFN1cGVybWFya3Qgd2lyZCBtYW4gc2ljaCBhbgpUdW5maXNjaCwgSm9ndXJ0IG9kZXIgS2V0c2NodXAgZ2V3b2VobmVuIG11ZXNzZW4uIElzdCBtaXIgYWxsZXMgamV0enQKc2Nob24gZWluIEdyYWV1ZWwuCgpNYXJjCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWZrbGFlcnVuZyAoTGlhcmEsICA3LiBOb3YgMjAwMSwgMDE6MTg6MTMpOgpbWmF1YmVyZXI6QnJvdG5hZWxdIGFhYWFhYWxzbywgenVlcnN0IGtvbW1lbiBkaWUgQmllbmNoZW4sIGRpZSBzdW1tZW4gc28KW1phdWJlcmVyOkJyb3RuYWVsXSBydW0uLi4KW1phdWJlcmVyOkVsZGFyb24gcnVuemVsdCBkaWUgU3Rpcm4uXQpbWmF1YmVyZXI6QnJvdG5hZWxdIGRhbm4gZmFsbGVuIHNpZSB1ZWJlciBuZW4gc3RvcmNoIGhlciB1bmQgZGVyIGxhZXNzdCB3YXMKW1phdWJlcmVyOkJyb3RuYWVsXSBmYWxsZW4uLi4KW1phdWJlcmVyOldlYXRoZXJ3YXhdIHZvciBzY2hyZWNrPwpbWmF1YmVyZXI6QnJvdG5hZWxdIG5hamEuLiB1bmQgaXJnZW5kd2llIGJydWV0ZXQgWmVwaHlyIGRhbm4gZGFydW0gdW5kIHNjaHd1cHMKW1phdWJlcmVyOkJyb3RuYWVsXSBpcyB3YXMga2xlaW5lcyBzY2hyZWllbmRlcyBkYQpbWmF1YmVyZXI6RWxkYXJvbiBtdXJtZWx0OiAnS2xlcmlrZXInISFdCgpaWkwsIGRlbmt0IC4gbyBPIChFeGtsZXJpa2VyLCBtYW4gbWVya3QgZXMgZGV1dGxpY2gsIGVzIGZlaGx0IGRvY2ggZGllCnByYWt0aXNjaGUgTGViZW5zZXJmYWhydW5nIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmQgbm9jaCBtYWwgTmV0ZGlnZXN0Li4uIChGb29iYXIsICA3LiBOb3YgMjAwMSwgMDE6MTg6NDEpOgpGcm9tOiBGbG9yaWFuIFdlaW1lciA8ZndAZGVuZWIuZW55by5kZT4KTmV3c2dyb3VwczogZGUuY29tcC5zdGFuZGFyZHMKU3ViamVjdDogUmU6IEtsaW5nb25pc2NoIC8gVW5pY29kZQpEYXRlOiBNb24sIDA1IE5vdiAyMDAxIDAwOjI1OjM0ICswMTAwCk1lc3NhZ2UtSUQ6IDw4N2xtaG02cnY1LmZzZkBkZW5lYi5lbnlvLmRlPgoKIkplbnMgTXVlbGxlciIgPGplbnNAdW5mYWVoaWcuZGU+IHdyaXRlczoKCj4gV2Vpc3MgamVtYW5kLCAvd2FydW0vIFVuaWNvZGUgZGllIEF1Zm5haG1lIHZvbiBLbGluZ29uaXNjaCBhYmdlbGVobnQKPiBoYXQ/CgogRXMgd2FyIGJlaSBkZW4gZW50c3ByZWNoZW5kZW4gU2l0enVuZ2VuIGtlaW4gS2xpbmdvbmUgYW53ZXNlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpobW1tIChQaXRmYWxsLCAgNy4gTm92IDIwMDEsIDEzOjQ2OjI3KToKW1phdWJlcmVyOkJpcmR5XSBhdWYgZGVyIG5hZWNoc3RlbiBwYXRyeSBncm9zc2VzIGt1c2NoZWxuIDopPwpJcmdlbmR3byBpbiBkZXIgRW50ZmVybnVuZyBob2Vyc3QgRHUgZWluZW4gZ3JhdWVudm9sbGVuIFNjaHJlaS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJvZXNlciBQaXRmYWxsIC4uIChEYXJrd2luZywgIDcuIE5vdiAyMDAxLCAxMzo1MToxOSk6CkRlaW4gRnJldW5kIFBpdGZhbGwgc2V0enQgZWluIGdld2FsdGlnZXMgTVVVVUghIGdlZ2VuIFB1ayBhbiBhdXMgZGVyIEZlcm5lLgpbVG9kOkxhcnNdIEVpbiBHbHV0YmVpc3NlciBoYXQgZ2VyYWRlIFRoYW5vcyB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGJvZXNlciBQaXRmYWxsIC4uIChQdWssICA3LiBOb3YgMjAwMSwgMTQ6MTM6NDQpOgp+IyEgcm49RGFya3dpbmcgcnQ9MTAwNTEzNzQ3OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDUxMzc0NzkKUHVrIHNjaHJlaXQ6ICdQSyxQSycgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVuZ2VmYWVoci4uLiAoQW5hdG9sLCAgNy4gTm92IDIwMDEsIDE0OjIyOjExKToKUmVzdWx0YXRlIDEgLSA5IHZvbiB1bmdlZmFlaHIgMTAuIFN1Y2hkYXVlcjogMC4yMSBTZWt1bmRlbi4KCkRhbmtlLCBHb29nbGUgOykKQW5hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHVuZ2VmYWVoci4uLiAoTm9ubmUsICA3LiBOb3YgMjAwMSwgMTQ6Mjc6MjkpOgp+IyEgcm49QW5hdG9sIHJ0PTEwMDUxMzkzMzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1MTM5MzMxClJlc3VsdGF0ZSAxIC0gMTAgdm9uIHVuZ2VmYWVociAyMywzMDAsMDAwLiBTdWNoZGF1ZXI6IDAuMDcgU2VrdW5kZW4uCgpOYSwgd2VyIGVycmFldCwgbmFjaCB3YXMgaWNoIGdlc3VjaHQgaGFiZSAqZyoKTm9ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHVuZ2VmYWVoci4uLiAoRGVlcGJsdWUsICA3LiBOb3YgMjAwMSwgMTQ6Mjk6MTkpOgp+IyEgcm49Tm9ubmUgcnQ9MTAwNTEzOTY0OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDUxMzkzMzEKU2llYmVuIG1pbnVzIDE/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB1bmdlZmFlaHIuLi4gKENyb2Z0LCAgNy4gTm92IDIwMDEsIDE1OjIzOjUzKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwMDUxMzk3NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1MTM5MzMxCkRhcyBzb2xsdGVuIG1laHIgSGl0cyBzZWluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaG1tbSAoRGFyaWEsICA3LiBOb3YgMjAwMSwgMTc6NDU6MDkpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDA1MTM3MTg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTEzNzE4NwpIbW1tLi4uIG4gdmVyZ2Vzc2VuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB1bmdlZmFlaHIuLi4gKFJvY2h1cywgIDcuIE5vdiAyMDAxLCAyMDozNzowMCk6Cn4jISBybj1Ob25uZSBydD0xMDA1MTM5NjQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTEzOTMzMQpJY2gga2FubiBlcyBtaXIgZGVua2VuLi4uCk51ciBlaW5zIHZlcnN0ZWhlIGljaCBuaWNodCAtIHdpZXNvIHN1Y2hzdCBEdQpub2NoIGV0d2FzLCB3YXMgRHUgc2Nob24gZ2VmdW5kZW4gaGFzdD8gOikKCiAgUm9jaHVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpAdW5pLi4uIChBbmF0b2wsICA4LiBOb3YgMjAwMSwgMDM6MDA6MzYpOgouLi4uClR1bm5lbHBvcnRhbCBnYWVobnQgRGlyIHNjaHdhcnogdW5kIGJlZHJvaGxpY2ggZW50Z2VnZW4uIEFuIGRlciBEZWNrZQpoYWVuZ3QgZWluZSBVaHIgdW5kIGVpbmUgQW56ZWlnZXRhZmVsLgogICAgICBXZWl0ZXI6IEhvY2ggdW5kIE5vcmRlbi4KRGFzIHNjaHdhcnplIEJyZXR0ICdUcmFlZ2Vya3JlaXMnLgpFaW5lIHNjaG9lbmUganVuZ2UgRnJhdS4KPiB1bnQgZnJhdQpEdSBtdXNzdCBzY2hvbiBnZW5hdWVyIHNhZ2VuLCB3YXMgRHUgdHVuIG1vZWNodGVzdC4KQW5zY2hhdWVuLCBob3JjaGVuLCByaWVjaGVuIG9kZXIgYmVmdWVobGVuPwo+IGJlZnVlaGxlIGZyYXUKRHUgZnVlaGxzdCBuaWNodHMgVW5nZXdvZWhubGljaGVzLgoKTmFqYWFhYWFhYWFhYS4uLi4uLi4uLi4gOikKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQHVuaS4uLiAoR25vbWUsICA4LiBOb3YgMjAwMSwgMTE6NDk6MTApOgp+IyEgcm49QW5hdG9sIHJ0PTEwMDUxODQ4MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1MTg0ODM2CmRhIHdhciBiZXN0aW1tdCBuZSBhYmZyYWdlIGF1ZiBnZW5kZXIgZHJpbi4uLiA7LSkKCmduT21lIGRlbmt0IC4gbyAwIChhbmF0b2xpYT8gKnBydXN0KikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFNwaWVsIGdlc3VjaHQgKFNpbHZhbmEsICA4LiBOb3YgMjAwMSwgMTU6MjE6MDMpOgp+IyEgb249U2lsdmFuYSBvdD0xMDA1MjI5MjM1IG9nPXN1Y2hlLWJpZXRlCn4jISBybj1DYXNzYW5kcmEgcnQ9MTAwNTIyNzE4MCByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwMDUyMjYzOTUKS2F1ZiB6d2VpIExhcHRvcHMgdW5kIG5lbiBGdW5rTEFOLCBkYW5uIGtvZW5udCBpaHIgTW9yZ2VuZ3JhdWVuIHNwaWVsZW4uLi4gOy0pCgpva29rb2ssIGljaCBiaW4gc2Nob24gc3RpbGwuIDstKQoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXRkaWdlc3QgKEdyaW1tYm9ybiwgIDguIE5vdiAyMDAxLCAyMToyOTo1NCk6CkljaCB3aWxsIGF1Y2ggbWFsIGVpbmVuIG5ldGRpZ2VzdCBoaWVyIGVpbmVyIGJyZWl0ZXJlbiBPZWZmZW50bGljaGtlaXQgYmVrYW5udAptYWNoZW46Cgo+IEVyc3Qgd2VubiBkZXIgbGV0enRlIFNjaG5hdXplciBnZXBsYWV0dGV0LCBkaWUgdWx0aW1hdGUgRG9nZ2UgdWViZXJyb2xsdCwKPiBkZXIgZmluYWxlIFNwaXR6IGZsYWNoZ2VidWVnZWx0IHVuZCBkZXIgT21lZ2EtU2NoYWVmZXJodW5kIHZvbGxndW1taWVydAo+IGlzdCwgd2VyZGV0IGlociBmZXN0c3RlbGxlbiwKCi4uLmRhc3MgSHVuZGUgZWluIHNjaGxlY2h0ZXIgRXJzYXR6IGZ1ZXIgZWNodGUgRnJldW5kZSBzaW5kLgouLi5kYXNzIHBsb2V0emxpY2ggaGltbWxpc2NoZSBSdWhlIGhlcnJzY2h0LgouLi5kYXNzIG1hbiBvaG5lIFRvZWxlbiB2aWVsIGFuZ2VuZWhtZXIgbGViZW4ga2Fubi4KLi4uZGFzcyBzaWNoIGFuZGVyZSBUaWVyZSB2aWVsIGJlc3NlciBhbHMgQmxpbmRlbmZ1ZWhyZXIgdS5hZS4gZWlnbmVuLgouLi5kYXNzIGRlciBHZXdpbm4gZHVyY2ggZGllIHNlbHRlbmVyZSBTdHJhc3NlbnJlaW5pZ3VuZyBkaWUgRWlubmFobWVuCiAgIGR1cmNoIEh1bmRlc3RldWVyIGJlaSB3ZWl0ZW0gdWViZXJzdGVpZ3QuCi4uLmRhc3MgcGxhdHRlIEh1bmRlIGFuZ2VuZWhtZXIgc2luZCwgYWxzIGRpZSBIYXVmZW4sIGRpZSBzaWUKICAgaGludGVybGFzc2VuLgouLi5kYXNzIGRpZSBHZXJpY2h0ZSBpbiBDaGluYXJlc3RhdXJhbnRzIHBsb2V0emxpY2ggdmllbCBiZXNzZXIgc2NobWVja2VuLgoKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZW50d2lja2x1bmcgKFpvb2ssICA4LiBOb3YgMjAwMSwgMjI6Mjk6MjUpOgp+IyEgcm49QXJrIHJ0PTEwMDUyNTQ5MDEgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDA0OTQ2Mzc1CldhcyBpY2ggbWljaCBpbW1lciBzY2hvbiBnZWZyYWd0IGhhYmU6IEdpYnQgQXJrIHNlaW4gKioqIEFyayBkZXIgV2Fzd2Vpc3MKaWNod2FzZXJkYXRpcHB0KioqIGltbWVyIHZvbiBIYW5kIGVpbiBvZGVyIHZpYSBDdXRuUGFzdGUuLi4/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZW50d2lja2x1bmcgKEFuYXRvbCwgIDguIE5vdiAyMDAxLCAyMjoyOTozNyk6Cn4jISBybj1ab29rIHJ0PTEwMDUyNTQ5NjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA0OTQ2Mzc1Ci5zaWduYXR1cmU/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBlbnR3aWNrbHVuZyAoQXJrLCAgOC4gTm92IDIwMDEsIDIyOjMwOjIxKToKfiMhIHJuPUFuYXRvbCBydD0xMDA1MjU0OTc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNDk0NjM3NQpKdXAuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT3RvbiBQaXRmYWxsOiAoR2xvaW5zb24sICA4LiBOb3YgMjAwMSwgMjI6Mzk6MjgpOgpEYXMgTG9jaCBpc3QgenUga2xlaW4uClNvbGwgaWNoIGpldHp0IG5vY2ggc2FnZW4gZXMgc2VpZW4ga2VpbmUgSGFhcmUgZHJ1bT8KCihzYWVtdGxpY2hlIFppdGF0ZSBzaW5kIGF1cyBlaW5lbSBvaG5laGluIHNpbm5mcmVpZW4gWnVzYW1tZW5oYW5nIGdlcmlzc2VuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT3RvbiBIYW5nb3ZlcjogKEdsb2luc29uLCAgOC4gTm92IDIwMDEsIDIzOjA0OjA0KToKS2FubnN0IER1IG1hbCBlaW4gUXVlciBtYWNoZW4/Cj4gcXVlcgo+IGtyZXV6CltIYW5nb3ZlciBncmVpZnQgenVyIFRhc3RhdHVyXQpPTW0KOnNhZ3QgQUNLClBpdGZhbGwgc2FndDogTXVoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCaWVsZWZlbGQgc2FndCB6dSBtaXIgLi4uIChHbG9pbnNvbiwgIDkuIE5vdiAyMDAxLCAwMDoxNzoyMCk6CjogQXVzemllaGVuLgpQaXRmYWxsIHNhZ3Q6IE5laW4hClBpdGZhbGwgc2FndDogWmVpZ2VuIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBCZXJnIHJ1ZnQgLi4uIChKYW5rYSwgIDkuIE5vdiAyMDAxLCAwNToyNDowOCk6CltUb2Q6TGFyc10gRWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWwgaGF0IGdlcmFkZSBTbGF4IHVtZ2VicmFjaHQuCltUb2Q6RWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWxdIFBmZmZmZmZmZmZmZnQuLi4uLi4uUExVTVBTIQpmaW5nZXIgc2xheApTbGF4IGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBEcmVzZGVuLgpFaW5nZWxvZ2d0IHNlaXQ6IEZyZSwgIDkuIE5vdiAyMDAxLCAwMDoyNDowOApWb2xsZXIgTmFtZTogU2xheCBoYXBwZW5zCkhvcHBsYSwgZWluIEdlaXN0IQpSYXNzZTogTWVuc2NoLCAgR2lsZGU6IEthZW1wZmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAxMDdkIDE3OjE0OjUwLCAgIFNwaWVsZXJsZXZlbDogODcgKFNlaGVyKSwgICBHaWxkZW5sZXZlbDogMjIKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogU2FtLCAxMy4gTWFpIDIwMDAsIDEzOjU3OjMzCnouWi4gYWJ3ZXNlbmQsIEdydW5kICA6IERlciBCZXJnIHJ1ZnQuCkJpc2hlciBiZXJlaXRzIDM5IG1hbCBnZXN0b3JiZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldGRpZ2VzdCAoVmFuaW9uLCAxMC4gTm92IDIwMDEsIDEzOjQ2OjQ1KToKV2VpbCBkZXIgbGV0enRlIE9TLUZsYW1ld2FyIHNvIGxhbmdlIGhlciBpc3QsIHVuZCBpY2ggaGVyemxpY2ggZ2VsYWNodCBoYWI6CgotLQpGcm9tOiBBbmRyZWFzIFJpZWRlbCA8YW5kcmVhcy5yaWVkZWxAaHJ6LnR1LWNoZW1uaXR6LmRlPgpOZXdzZ3JvdXBzOiBkZS5jb21wLm9zLnVuaXguZGlzY3Vzc2lvbgpTdWJqZWN0OiBSZTogR2x1ZWNrc3JpdHRlciBhdWZnZXBhc3N0IQpEYXRlOiA4IE5vdiAyMDAxIDA3OjE3OjUwIEdNVApNZXNzYWdlLUlEOiA8c2xybjl1a2NjdS4xZmh0LmFuZHJlYXMucmllZGVsQHRtbi5jc24udHUtY2hlbW5pdHouZGU+CgpNYXJrdXMgRnJpdHNjaGUgc2NocmllYjoKPiBodHRwOi8vd3d3LmhlaXNlLmRlL25ld3N0aWNrZXIvZGF0YS9vZGktMDcuMTEuMDEtMDAxLwoKICAgICAgICAgICAgICAgICBQYXJpcy1IT1dUTwogICAgICAgICAgICAgICAgID09PT09PT09PT09CgpJY2ggaGFiZSBnZWhvZXJ0LCBkYXNzIE1pY3Jvc29mdCBSZWlzZW4gbmFjaCBQYXJpcyB2ZXJnaWJ0LiBXYXMgbXVzcyBpY2gKdHVuLCB3ZW5uIGljaCBkYSBoaW4gd2lsbD8KCiAgIER1IG11c3N0IGVpbmVuIFNlcnZlciB2b24gTGludXggYXVmIFdpbmRvd3MgbWlncmllcmVuLCBlaW5lbiBCZXJpY2h0CiAgIHNjaHJlaWJlbiwgd2llIHRvbGwgZGFzIHdhciB1bmQgZGllc2VuIGFuIE1pY3Jvc29mdCBzY2hpY2tlbi4gV2VubgogICBkaWUgRGVpbmVuIEJlcmljaHQgZ3V0IGZpbmRlbiB1bmQgRHUgR2x1ZWNrIGhhc3QsIGRhcmZzdCBEdSBuYWNoCiAgIFBhcmlzLgoKSWNoIHdpbGwgYWJlciBnYXIgbmljaHQgbWlncmllcmVuISBEYXJmIGljaCBkYSBuaWNodCBuYWNoIFBhcmlzPwoKICAgRG9jaCwgbmF0dWVybGljaC4KCldpZSBnZWh0IGRhcyBkYW5uPwoKICAgWnVlcnN0IHJ1ZnN0IER1IGJlaSBkZXIga29zdGVubG9zZW4gTWljcm9zb2Z0LUhvdGxpbmUgYW4gdW5kCiAgIGVya3VuZGlnc3QgRGljaCBuYWNoIGRlbSBQcmVpcyBmdWVyIGVpbmVuIFdpbmRvd3MgMjAwMCBTZXJ2ZXIgZnVlcgogICBEZWluZSBOdXR6ZXJ6YWhsLiBEYW5uIHNjaGFmZnN0IER1IGRpZXNlIFN1bW1lIGF1ZiBkYXMgbmFlY2hzdGUKICAgUmVpc2VidWVybyB1bmQgc2Fnc3QsIGRhc3MgRHUgbmFjaCBQYXJpcyB3aWxsc3QuIERlbiBSZXN0IHdpcmQgZGFzCiAgIFJlaWVidWVybyBmdWVyIERpY2ggaW4gZGllIFdlZ2UgbGVpdGVuLgoKUHJpbWEhIEhhdCBkYXMgbm9jaCBhbmRlcmUgVm9ydGVpbGU/CgogICBOdW4sIGRpZXNlIFZhcmlhbnRlIGhhdCBkaWUgdHlwaXNjaGVuIFVuaXgtVm9ydGVpbGU6CiAgICAgICogU2llIG1hY2h0IHdlbmlnZXIgQXJiZWl0LgogICAgICAqIFNpZSBmdW5rdGlvbmllcnQgaW1tZXIsIG5pY2h0IG51ciB3ZW5uIE1pY3Jvc29mdCB1bmQgRm9ydHVuYQogICAgICAgIHdvbGxlbi4KICAgICAgKiBTaWUgaXN0IGZyZWkga29uZmlndXJpZXJiYXI6IFdlbm4gRHUgbGllYmVyIG5hY2ggTG9uZG9uIG9kZXIKICAgICAgICBLb3BlbmhhZ2VuIHdpbGxzdCAtIGtlaW4gUHJvYmxlbSEgRHUgbXVzc3QgbnVyIGltIFJlaXNlYnVlcm8gZGFzCiAgICAgICAgcmljaHRpZ2UgWmllbCBhbmdlYmVuLgogICBWaWVsbGVpY2h0IGZhbGxlbiBEaXIgamEgc29nYXIgbm9jaCBtZWhyIFZvcnRlaWxlIGVpbi4KCkdydXNzCkFuZHJlYXMKCi0tClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgKERhc2hlbCwgMTAuIE5vdiAyMDAxLCAxOTowODowNCk6CkljaCBrYW5uIGRhcyBlaW5mYWNoIG5pY2ggZnVlciBtaWNoIGJlaGFsdGVuLCBzb3JyeS4KLS0KU3VibWl0dGVyJ3Mgbm90ZTogaW4gZGVicyBrdXJzaWVyZW4gc2VpdCBMYWVuZ2VyZW0gV2l0emUgdWViZXIKIldlYmJkaXNhZWluZXIiLi4uIGZvbGdlbmRlcyBQb3N0aW5nIGVya2xhZXJ0LCB3aWVzbyA6LSkKCkZyb206ICJTcGFjZW1hbiIgPHBva2Vtb241NjlAaG90bWFpbC5jb20+Ck5ld3Nncm91cHM6IGRlLmV0Yy5iZXJ1Zi5zZWxic3RhZW5kaWcKU2VudDogU3VuZGF5LCBOb3ZlbWJlciAwNCwgMjAwMSA4OjQxIFBNClN1YmplY3Q6IFdlYmRlc2lnbmhvc3RpbmdhZ2VudHVyCgoKPiBIaSBGb2x4IQo+Cj4gd2lyIHNpbmQgendlaSBzY2h1ZWxlciB1bmQgaW56d2lzY2hlbiByZWNodCBmaXQgaW0gcHJvZ2dlbiB2b24KPiBob21lcGFnZXMuIGRhIGhhYmVuIHdpciB1bnMgZ2VkYWNodCwgZGFzIG1hbiBkYW1pdCBiZXN0aW1tdCBhdWNoCj4gZ2FueiBndXQga29obGUgYWJncmVpZmVuIGthbm4gdW5kIGRlc2hhbGIgd29sbGVuIHdpciBuZSBhZ2VudHVyCj4gZ3J1ZW5kZW4gZnVlciB3ZWJkZXNpZ24sIGRhdGVuYmFua3Byb2dyYW1taWVydW5nIHVuZCBob3N0aW5nIGF1ZiBuZW0KPiBlaWdlbmVuIHNlcnZlciwgZGEgbWVpbiBmcmV1bmQgbmUgZHNsLWZsYXQgdW5kIHN1c2UgbGludXggaGF0Lgo+IHZpZWxsZWljaHQgaGFidCBpaHIgamEgZGVuIGVpbiBvZGVyIGFuZGVyZW4gdGlwIHp1cgo+IHN0ZXVlcm9wdGltaWVydW5nIG9kZXIgc28gb2RlciB6dXIgc2VsYnN0c3RhZW5kaWdtYWNodW5nIGltCj4gYWxsZ2VtZWluZW4gOy0pKSkpCj4KPiBncmVldHMKPgo+IFNwYWNlbWFuCkRhc2gsIGZyZXV0IHNpY2ggc2Nob24gYXVmIGRpZSBuZXVlbiBzSXRlWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gbG9iZSBpY2ggbWlyIGRhcyA6bykgKEZvb2JhciwgMTAuIE5vdiAyMDAxLCAyMTozMjoyMCk6CkVpbmUgU2NobGFlZ2VyZWkgYnJpY2h0IGF1cywgYWxzIGVpbiBrbGVpbmVyIFp3ZXJnIGVpbmVtIFphdWJlcmVyIG1pdCBlaW5lcgpLZXVsZSBkZW4gS29wZiBlaW5zY2hsYWVndC4gQWxzIGRlciBad2VyZyBkZW4gWmF1YmVyZXIgc2NobGllc3NsaWNoCm5pZWRlcnN0aWNodCB1bmQgZGllc2VyIGluIGVpbmVyIGdyb3NzZW4gQmx1dGxhY2hlIHp1c2FtbWVuYnJpY2h0LCBlaWxlbgpzb2ZvcnQgZWluaWdlIER1bmtlbHp3ZXJnZSBoZXJiZWksIGRpZSBkZW4gTGVpY2huYW0gcGFja2VuIHVuZCBpbiBkaWUKU3BlaXNla2FtbWVyIHplcnJlbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTbyBsb2JlIGljaCBtaXIgZGFzIDpvKSAoTWFuZHJhZ29uLCAxMC4gTm92IDIwMDEsIDIyOjA4OjA0KToKfiMhIHJuPUZvb2JhciBydD0xMDA1NDI0MzQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTQyNDM0MApEYSBzdGFuZCBuaWNodCBkYWJlaSwgZGFzcyBkYXMgZWluIExWTDEtWmF1YmVyZXIgd2FyIHVuZCBrdXJ6IGRhbmFjaCBlaW4KTWFnaXN0ZXIgcmVpbmthbSB1bmQgYWxsZSBad2VyZ2UgdmVyaGF1ZW4gaGF0IHVuZCBpaHJlIExlaWNoZW4gZW50c29yZ3QuCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTbyBsb2JlIGljaCBtaXIgZGFzIDpvKSAoVmFyZGlvbiwgMTAuIE5vdiAyMDAxLCAyMjozMToyOCk6Cn4jISBybj1Gb29iYXIgcnQ9MTAwNTQyNDM0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU0MjQzNDAKRXIgX3N0aWNodF8gaWhuIG1pdCBkZXIgS2V1bGUgbmllZGVyPyBJbnRlcmVzc2FudC4uLgoKVmFyZGlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTbyBsb2JlIGljaCBtaXIgZGFzIDpvKSAoRm9vYmFyLCAxMC4gTm92IDIwMDEsIDIyOjMzOjAyKToKfiMhIHJuPVZhcmRpb24gcnQ9MTAwNTQyNzg4OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU0MjQzNDAKV28gc3RlaHQsIGRhc3MgZXIgaWhuIG1pdCBlaW5lciBLZXVsZSBuaWVkZXJzdGljaHQ/CgpXYWhyc2NoZWlubGljaCBoYXQgZXIgaWhuIG1pdCBpcmdlbmRlaW5lciBTdGljaHdhZmZlIG5pZWRlcmdlc3RvY2hlbiwgd2Vzd2VnZW4KU3RpY2h3YWZmZW4gYXVjaCBkaWVzZW4gTmFtZW4gdHJhZ2VuLiBNYW4gc3RpY2h0IG1pdCBpaG5lbi4KCkljaCB3dXNzdGUgc2Nob24gaW1tZXIsIGRhc3MgWmF1YmJlcmVyIHZvbiBXYWZmZW4ga2VpbmUgQWhudW5nIGhhYmVuIDpvKQoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTbyBsb2JlIGljaCBtaXIgZGFzIDpvKSAoRGVlcGJsdWUsIDEwLiBOb3YgMjAwMSwgMjI6MzQ6MzUpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwMDU0Mjc5ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1NDI0MzQwCldlbm4gZXIgaWhuIG1pdCBkZXIgV2FmZmUgX2Vyc3RpY2h0XywgZGFubiBtdWVzc3RlIGRhc3MgZG9jaCBlaW5lCkVyc3RpY2gtV2FmZmUgdW5kIGtlaW5lIFN0aWNod2FmZmUgc2Vpbi4KRGVlcCAtIEthcmF0ZWthIHVuZCBrZWluZSBXYWZmZW4gYnJhdWNoZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3Rlcm5mYWhyZXIgZnVlciBJbnNpZGVyIChHbG9pbnNvbiwgMTEuIE5vdiAyMDAxLCAwMTowMDoyNCk6ClBpdGZhbGwgYmVyZWl0ZXQgc2ljaCBkYXJhdWYgdm9yIGRpZSB1bHRpbWF0aXZlIEhhbmRlbHNzdGF0aW9uIHp1IGJhdWVuIC0gYmF1dAptYWwgZWJlbiBIYW5kZWxzc2NoaWZmLCBBbnRyaWViLCBub2V0aWdlbiBGcmFjaHRyYXVtIHVuZCBicmF1Y2h0IG51ciBmdWVuZgpCRXdlZ3VuZ3NwdW5rdGUgYmlzIHp1ciBIYW5kZWxzc3RhdGlvbiBtaXQgZGVtIFJhdW13YXJwOgpHbG9pbnNvbjogTWgsIGpldHp0IG11ZXNzdGUgWmFobiBkZXIgWmVpdCBrb21tZW4uClBpdGZhbGwgc2NodWV0dGVsdDogRWluZSBzY2h3YXJ6LgpFcHBpIHppZWh0LCBncmluc3Q6IFphaG4gZGVyIFplaXQuIChuZXVtaXNjaGVuKQpHbG9pbnNvbiBtaXNjaHQsIHNhZ3Q6IFdvIHdhciBqZXR6dCBub2NoIGRpZSBLYXJ0ZSBtaXQgZGVtIEhhbmRlbHNmdWVyc3RlbgpHbG9pbnNvbiBtaXNjaHQsIHNhZ3Q6IGRlciBkYXMgU2NoaWZmIHNhYm90aWVydD8KR2xvaW5zb24gZnJhZ3Q6IFdpZXZpZWwgUm9oc3RvZmZlIGhhc3QgRHUsIFBpdGZhbGw/ClBpdGZhbGwgc2FndDogTmFkYS4KRXBwaSB6aWVodCwgZ3JpbnN0OiBzaWUgYmVnZWduZW4gZWluZW0gSGFlbmRsZXIsIHdpZSB2aWVsZSBSb2hzdG9mZmUgZ2ViZW4KRXBwaSB6aWVodCwgZ3JpbnN0OiBzaWUgaWhtPwpQaXRmYWxsIHNhZ3Q6IE5hIGtlaW5lIC4uLgpFcHBpIHNhZ3Q6IERld3IgSGFuZGVsc2Z1ZXJzdCBpc3QgYmVsZWlkaWd0IC4uLgpQaXRmYWwgc2FndDogTmVpaWlpaWlpaWlpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldPIEJJTiBJQ0ggOikgPyAoQ3VjaHVsbGluLCAxMS4gTm92IDIwMDEsIDAxOjU1OjU5KToKCkljaCBsb2dnZSBtaWNoIGVpbiB1bmQgZGFzIGVyc3RlLCB3YXMgaWNoIGxlc2UsIGlzdDoKCltBbGxnZW1laW46VmFyZGlvbl0gaGFlbmd0IGF1Y2ggZGF2b24gYWIsIHdpZSBndXQgZHUgZGllIGFybW11c2t1bGF0dXIgaW0gICAgIApbQWxsZ2VtZWluOlZhcmRpb25dIG1vbWVudCBkZXMgc3ByaXR6ZW5zIGVudHNwYW5udCBoYXR0ZXN0LgoKS2VpbmUgd2VpdGVyZW4gRnJhZ2VuLCBGU0sxOC4KQ3VjaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWlrYWdlIC4uIChJbnNpZGVyKSAoRGFya3dpbmcsIDExLiBOb3YgMjAwMSwgMTM6NDQ6NTkpOgpEZWluZSBGcmV1bmRpbiBNaWthZ2UgdGVpbHQgRGlyIG1pdDogZW1pc3QsIGpldHp0IGhhYmUgaWNoIG5lbiB0LXByb2JsZW0gOm8pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdPIEJJTiBJQ0ggOikgPyAoR2xvaW5zb24sIDExLiBOb3YgMjAwMSwgMTQ6Mzk6NTUpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMDU0NDAxNTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1NDQwMTU5CiphdWZrbGFlciogSW1wZnVuZ2VuIHdhciBkYXMgVGhlbWEgdW5kIHdhcnVtIEFub3JpcycgQXJtIG5vY2ggc2NobWVyenQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZSwgaXMga2xhci4gKFpvb2ssIDExLiBOb3YgMjAwMSwgMTQ6NDE6MjkpOgpFaW4gRnJvc2NoIHRlaWx0IERpciBtaXQ6IE11aAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6ICJ6LiBIZC4iIChHcmltbWJvcm4sIDExLiBOb3YgMjAwMSwgMjA6NDk6MTEpOgp+IyEgcm49Wm9vayBydD0xMDA1NDgzODk4IHJnPXB1aXoKfiMhIHRpZD0xMDA1NDA1NzEyCkFsc28sIHdlbm4gbWVpbiBBcmJlaXRnZWJlciB1bmdlZnJhZ3QgaXJnZW5kd2VsY2hlIFBvc3RzZW5kdW5nZW4gbWl0IG1laW5lbQpOYW1lbiBkcmF1ZiBvZWZmbmV0IG9obmUgZGF6dSBiZWF1ZnRyYWd0IHp1IHNlaW4gb2RlciBHdXRlIEdydWVuZGUgZGFmdWVyIHp1CmhhYmVuIChhbHNvIGljaCBhdWYgd2FzIHdhcnRlIHZvbiBkZW0gYmVrYW5udCBpc3QgZGFzcyBkYXMgZWggZnVlciB3ZW4gYW5kZXJzCmlzdCB6LkIuKSB3YWVyZSBkYXMgZWluIEFubGFzcyB6dXIgRGlza3Vzc2lvbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogInouIEhkLiIgKEFuYXRvbCwgMTEuIE5vdiAyMDAxLCAyMDo1MDoxNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwNTUwODE1MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU0MDU3MTIKV2FzIHdpbGxzdCBEdSBkYW5uIG1hY2hlbj8gS3VlbmRpZ2VuPyBJbiBlaW5lciBnZXNhZXR0aWd0ZW4gQnJhbmNoZT8gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiAiei4gSGQuIiAoR3JpbW1ib3JuLCAxMS4gTm92IDIwMDEsIDIwOjUxOjUxKToKfiMhIHJuPUFuYXRvbCBydD0xMDA1NTA4MjE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTQwNTcxMgpOZWluLCBkaXNrdXRpZXJlbiwgc2NocmllYiBpY2ggZG9jaC4KTWVpbmUgRGlza3Vzc2lvbmVuIHNpbmQgaW4gZGVyIEZpcm1hIGJla2FubnQgdW5kIGdlZnVlcmNodGV0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogInouIEhkLiIgKE1hbmRyYWdvbiwgMTEuIE5vdiAyMDAxLCAyMDo1MjoyNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwNTUwODMxMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU0MDU3MTIKSW50ZXJlc3NhbnQgLi4uIHdvIHNpZSBkb2NoIGltIE1HIGVoZXIgYmVsYWVjaGVsdCB3ZXJkZW4gOm8pCgpNYSogLSBmbGFtZWZyZXVkaWcgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogInouIEhkLiIgKEdsb2luc29uLCAxMS4gTm92IDIwMDEsIDIwOjUzOjM3KToKfiMhIHJuPU1hcmN1cyBydD0xMDA1NTA4MzU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTQwNTcxMgpJY2gga29lbm50ZSBtaXIgZWluICJFciBzY2hvbiB3aWVkZXIgKnNldWZ6KiAqZ3JpbnMqICp3ZWdnZWgqIiB2b3JzdGVsbGVuLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6ICJ6LiBIZC4iIChHcmltbWJvcm4sIDExLiBOb3YgMjAwMSwgMjA6NTg6MjUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAwNTUwODQxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU0MDU3MTIKRGFzIGlzdCBhbGxlcyBndXQgdW5kIHJpY2h0aWcuIEFiZXIsIHdpZSBlaW4gYW5zY2hlaW5lbmQgc2VociBiZWxpZWJ0ZXIKZGV1dHNjaGVyIFN0YWF0c21hbm4gKGltbWVyaGluIHd1cmRlIGVyIHN0YWVuZGlnIHdpZWRlcmdld2FlaGx0KSBzbyByaWNodGlnCnNhZ3RlOiBXYXMgemFlaGx0IGlzdCBkYXMsIHdhcyBhbSBFbmRlIGhpbnRlbiByYXVza29tbXQuIFVuZCBkaWUgSGF1cHRzYWNoZQppc3QgZG9jaCBkYXNzIGljaCBtaWNoIGR1cmNoc2V0emUuLi4KCkFjaCwgTWFyY3VzLCBpY2ggbG9lc2NoZSBEZWluZW4gQXJ0aWtlbCBtYWwsIGljaCBwb3NhdW5lIGhpZXIgamEgYXVjaCBuaWNodApEZWluZW4gUmVhbG5hbWVuIGVpbmZhY2ggc28gcmF1cy4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogInouIEhkLiIgKE1hcmN1cywgMTEuIE5vdiAyMDAxLCAyMDo1OToxNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwNTUwODcwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU0MDU3MTIKSmEsIGVzIG11c3MgamEgbmllbWFuZCB3aXNzZW4sIGRhcyBpY2ggUnVtcGVsc3RpbHpjaGVuIGhlaXNzLgoKT29wcywgaGFiIGljaCBkYXMgamV0enQgZXR3YSBsYXV0IGdlc2FndD8KCkNpYW8sIE1hcmN1cwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9laG0uLi4/IChBbmF0b2wsIDEyLiBOb3YgMjAwMSwgMDI6MzQ6MDEpOgotLS0gSWxsdW1pbmF0aW9uOiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRGVpbmUgVW1nZWJ1bmcgc2VsYnN0IGlzdCB2b2VsbGlnIHVuZXJrZW5uYmFyIGhlbGwuLi5vZGVyIGF1Y2ggZHVua2VsIQpBbmF0b2wgaGF0IGVpbiBvZGVyIG1laHJlcmUgaW50ZXJlc3NhbnRlIFNhY2hlbi4gRGllc2UgbGV1Y2h0ZW4gc2VociBzdGFyay4KSW5zZ2VzYW10IGdlc2VoZW4gaXN0IGVzIGhpZXIgdm9lbGxpZyB1bmVya2VubmJhciBoZWxsLi4ub2RlciBhdWNoIGR1bmtlbCEKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpKamouLi4uYS4KCkFuYXRvbCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9laG0uLi4/IChHbG9pbnNvbiwgMTIuIE5vdiAyMDAxLCAwMzoxNTowMCk6Cn4jISBybj1BbmF0b2wgcnQ9MTAwNTUyODg0MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU1Mjg4NDEKTmEgaXN0IGRvY2gga2xhciBtaXQgZGVtIExpY2h0c3lzdGVtIC0gZGllc2VyIFNwcnVjaCAoPykgYmVydWVja3NpY2h0aWd0CnNhZW10bGljaGUgbW9lZ2xpY2hlIFN0YW5kcHVua3RlLiBBdXMgU2ljaHQgZGVzIFNwaWVsZXJzIG1pdCBMaWNodHF1ZWxsZS9BdXMKU2ljaHQgYW5kZXJlciBvaG5lLC4uLixBdXMgU2ljaHQgZGVzIFNwaWVsZXJzIG1pdCBJbmJldHJhY2h0bmFobWUgYWxsZXIgc2VpbmVyCkxpY2h0cXVlbGxlbi9BdXMgU2ljaHQgYW5kZXJlciBtaXQgSW5iZXRyYWNodG5haG1lIGFsbGVyIExpY2h0cXVlbGxlbiBkZXMKU3BpZWxlcnMgZGllIGZ1ZXIgYW5kZXJlIHNjaGxpZXNzbGljaCBrZWluZSBSb2xsZSBzcGllbGVuLiAqdmVyc3VjaCogKmVya2xhZXIqCipmdWNodGVsKiAqcnVtbGV1Y2h0KgpPZGVyIHNvIDopCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE9laG0uLi4/IChNYW5kcmFnb24sIDEyLiBOb3YgMjAwMSwgMDc6NTE6MzQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAwNTUzMTMwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU1Mjg4NDEKYWVoLiBkdSBzYWd0ZXN0IGxpY2h0U1lTVEVNID8KCk1hKiAtIGhhbGJlcm5zdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogT2VobS4uLj8gKEFuYXRvbCwgMTIuIE5vdiAyMDAxLCAwOTo0MDoyOSk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTAwNTU0Nzg5NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU1Mjg4NDEKRGVyIFdhaG5zaW5uIGhhdCBNZXRob2RlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG1hbCB3aWVkZXIgcHVpei4uLi4gKEFtYXJ5bGxpcywgMTIuIE5vdiAyMDAxLCAxMDozOTo1MSk6Cn4jISBybj1OaWNvbGFpIHJ0PTEwMDU1NTc1OTIgcmc9cHVpegp+IyEgdGlkPTEwMDU1NTc1OTIKSWNoIHd1c3N0ZSBpbW1lciwgZGFzcyBkaWVzZXIgSnVuZ2dvdHQgbmljaHQgc28gbGllYiwgbmV0dCB1bmQgaGFybWxvcyBpc3QsCndpZSBlciBpbW1lciB0dXQuLi4gOi0pCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWYgZGVtIEJlcmxpbmVyIFN0YW1tdGlzY2guLi4gKEJpZWxlZmVsZCwgMTIuIE5vdiAyMDAxLCAxODoyMDoxMSk6ClBpdGZhbGw6IC4uLm1laW4gWmF1YmVyZXIuLi4KRWxpemFiZXRoOiBEdSBoYXN0IG5lbiBaYXViZXJlcj8KUGl0ZmFsbDogSmEuCkVsaXphYmV0aDogQXN1a2E/CgotQmllbGVmZWxkIChvaG5lIEtvbW1lbnRhcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNwYWV0ZSBlaW5zaWNodCAoR25vbWUsIDEzLiBOb3YgMjAwMSwgMDk6NTQ6MDkpOgpEZWluIEZyZXVuZCBQaXRmYWxsIHRlaWx0IERpciBtaXQ6IGphYWFhYWFhYWFhYSBhZXh0ZSA6LSkKCm5hIGVuZGxpY2ghIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGYW1vdXMgbGFzdCBsb2dpbnMgKEZvb2JhciwgMTQuIE5vdiAyMDAxLCAyMjoyNjowNik6ClB1ayAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbVG9kOkxhcnNdIEVpbmUgIk1hZ2VudmVyc3RpbW11bmciIGhhdCBnZXJhZGUgUHVrIHVtZ2VicmFjaHQuICAgICAgICAgICAgICAgICAKCkZvb2Jhci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2NodWV0dGVsYmllciAoR3JpbW1ib3JuLCAxNS4gTm92IDIwMDEsIDEyOjM5OjU0KToKfiMhIHJuPUh1bW5pIHJ0PTEwMDU4MjQxNTggcmc9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISB0aWQ9MTAwNTgyMzk0MQpBbHNvLCB6dSBtZWluZXIgWmVpdCBoYWJlbiB3aXIgZGFzIEV0d2FzIG5vY2ggZ2VqYWd0LCB1bmQgbmljaHQgZ2VoZWlsdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGFndHM/IChPcmt0b2V0ZXIsIDE1LiBOb3YgMjAwMSwgMTM6MTA6MDYpOgogMSAgV05FVUNSMDMuaGlnaHdheS50ZWxla29tLmF0ICgxNzIuMTguOTUuNTYpICAzMSBtcyAgMjMgbXMgIDMyIG1zCiAyICAxNzIuMTkuOTUuNDkgKDE3Mi4xOS45NS40OSkgIDI3IG1zICAyNyBtcyAgMjcgbXMKIDMgIEFVWDEtV05FVVJPMDEuaGlnaHdheS50ZWxla29tLmF0ICgxOTUuMy42OC41KSAgMjcgbXMgIDM0IG1zICAyOCBtcwogNCAgSUlYLmhpZ2h3YXkudGVsZWtvbS5hdCAoMTk1LjMuNjguMjI1KSAgMjkgbXMgIDI4IG1zICAyOSBtcwogNSAgdDNhMS1wOS0wLTAuYXQtdmllLmNvbmNlcnQubmV0ICgxNjYuNDkuMjIyLjE0OSkgIDI4IG1zICAzMCBtcyAgMjggbXMKIDYgIHQyYzItcDItMy5kZS1mcmEuY29uY2VydC5uZXQgKDE2Ni40OS4yMDguNDEpICAzNCBtcyAgMzUgbXMgIDQwIG1zCiA3ICB0MmMyLXA5LTAubmwtYW1zMi5jb25jZXJ0Lm5ldCAoMTY2LjQ5LjIwOC4zMCkgIDY4IG1zICA0MiBtcyAgNDUgbXMKIDggIHQyYTEtZ2U2LTAubmwtYW1zMi5jb25jZXJ0Lm5ldCAoMTY2LjQ5LjIwMC4xNykgIDcxIG1zICA0MCBtcyAgNDYgbXMKIDkgIGl4cDEtcDEtMC0wLm5sLWFtczIuY29uY2VydC5uZXQgKDE2Ni40OS4yMDguOTQpICA2OSBtcyAgMTcwIG1zICAyMDcgbXMKMTAgIGFtc3RlcmRhbTExLm5sLmVxaXAubmV0ICgxOTMuMTQ4LjE1LjQ0KSAgNzEgbXMgIDQ2IG1zICA0NiBtcwoxMSAgbG9uZG9uNTAuZ2IuZXFpcC5uZXQgKDE5NS4yMDYuNjQuMTU4KSAgNjAgbXMgIDYyIG1zICA1OSBtcwoxMiAgNjIuNDAuMTAzLjE1MyAoNjIuNDAuMTAzLjE1MykgIDQ1OSBtcyAgNDU2IG1zICA0NjQgbXMKMTMgIDYyLjQwLjk2LjEyNSAoNjIuNDAuOTYuMTI1KSAgNDkzIG1zICA0ODggbXMgKgoxNCAgNjIuNDAuOTYuNjUgKDYyLjQwLjk2LjY1KSAgNTI3IG1zICA1MTkgbXMgIDUxNCBtcwoxNSAgKiA2Mi40MC45Ni4xMjkgKDYyLjQwLjk2LjEyOSkgIDUxNSBtcyAgNTEyIG1zCjE2ICA2Mi40MC4xMDMuMzQgKDYyLjQwLjEwMy4zNCkgIDUyMSBtcyAgNTE0IG1zICA1MTAgbXMKMTcgIGNyLWZyYW5rZnVydDEuZy13aW4uZGZuLmRlICgxODguMS44MC4zNykgIDUyMSBtcyAqICoKMTggICogY3ItYmVybGluMS5nLXdpbi5kZm4uZGUgKDE4OC4xLjE4LjIyKSAgNTE4IG1zICA1MzYgbXMKMTkgIGFyLWZ1YmVybGluMS5nLXdpbi5kZm4uZGUgKDE4OC4xLjIwLjYpICA1MjYgbXMgIDUyMyBtcyAqCjIwICAqIGdtZGFnYXRlLmZpcnN0LmdtZC5kZSAoMTk0Ljk1LjE2OC4xKSAgNTMxIG1zICA1MzAgbXMKMjEgIG1nLmZpcnN0LmdtZC5kZSAoMTk0Ljk1LjE3MC4yMDUpICA1MjkgbXMgIDUyOCBtcyAgNTIyIG1zCgpPcmtULCBlaW5lIExlaXR1bmcgYW5ncnVtbWVsbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGFndHM/IChaYXJuaXlhLCAxNS4gTm92IDIwMDEsIDEzOjE1OjU4KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDA1ODI2MjA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgpuZXR0Li4uIHNvIHdlaXNzIGljaCBlbmRsaWNoLCB3ZWxjaGUgU3RlbGxlIGljaCBsYWhtbGVnZW4gbXVzcywgdW0gT3JrdHJvZXRlCmxvc3p1d2VyZGVuIDopCgpNYXJjCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExhZ3RzPyAoR3JpbW1ib3JuLCAxNS4gTm92IDIwMDEsIDEzOjE3OjQ3KToKfiMhIHJuPVphcm5peWEgcnQ9MTAwNTgyNjU1OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4MjYyMDYKSmEsIE1hbmhhdHRhbiB2b3IgendlaSBNb25hdGVuIHdhciBmYWxzY2ggZ2V6aWVsdC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGFndHM/IChNb3Jnb3RoLCAxNS4gTm92IDIwMDEsIDEzOjQ2OjQ4KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDA1ODI2MjA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgpIbW0sIGJlaSBtaXIgc2llaHQgZGFzIHNvIGF1czoKdHJhY2Vyb3V0ZSB0byBtZy5tdWQuZGUgKDE5NC45NS4xNzAuMjA1KSwgMzAgaG9wcyBtYXgsIDQwIGJ5dGUgcGFja2V0cwogMSAgZ2F0ZXdheS5jaGVtaWUudW5pLWRvcnRtdW5kLmRlICgxMjkuMjE3LjIxNy4xKSAgMSBtcyAgMSBtcyAgMCBtcwogMiAgZ3dpbi1ndy1naWcwMC0yNi5IUlouVW5pLURvcnRtdW5kLkRFICgxMjkuMjE3LjEyOS4yMzQpICAxIG1zICAxIG1zICAxIG1zCiAzICBhci1lc3NlbjIuZy13aW4uZGZuLmRlICgxODguMS40NC4zMykgIDIgbXMgIDIgbXMgIDEgbXMKIDQgIGNyLWVzc2VuMS5nLXdpbi5kZm4uZGUgKDE4OC4xLjg2LjEpICAxIG1zICAxIG1zICAxIG1zCiA1ICBjci1iZXJsaW4xLmctd2luLmRmbi5kZSAoMTg4LjEuMTguMjIpICAyMiBtcyAgMjIgbXMgIDIyIG1zCiA2ICBhci1mdWJlcmxpbjEuZy13aW4uZGZuLmRlICgxODguMS4yMC42KSAgMjIgbXMgIDIyIG1zICAyMiBtcwogNyAgZ21kYWdhdGUuZmlyc3QuZ21kLmRlICgxOTQuOTUuMTY4LjEpICAyMiBtcyAgMjIgbXMgIDIyIG1zCiA4ICBtZy5tdWQuZGUgKDE5NC45NS4xNzAuMjA1KSAgMjMgbXMgIDIyIG1zICAyMyBtcwoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTGFndHM/IChaYXJuaXlhLCAxNS4gTm92IDIwMDEsIDEzOjU5OjQ0KToKfiMhIHJuPU1vcmdvdGggcnQ9MTAwNTgyODQwOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4MjYyMDYKCk1hY2hlbiB3aXIgbmVuIFdldHRiZXdlcmIgZHJhdXMuLi4gSGF0ZSBkYXJmIG5pY2h0IG1pdHNwaWVsZW4gOi0pCgp0cmFjZXJvdXRlIHRvIG1nLm11ZC5kZSAoMTk0Ljk1LjE3MC4yMDUpLCAzMCBob3BzIG1heCwgNDAgYnl0ZSBwYWNrZXRzCiAxICBsZmktZ3cgKDEzNC45NS4xOS4yNTQpICAwLjM3MyBtcyAgMC4yNzQgbXMgIDAuMjY1IG1zCiAyICBiLXdpbi1ndyAoMTM0Ljk1LjQuMzMpICAwLjM1NCBtcyAgMS40NjMgbXMgIDAuMzA3IG1zCiAzICAxOTQuMTIyLjI0Ni4xMyAoMTk0LjEyMi4yNDYuMTMpICAwLjYzMSBtcyAgMC42MTggbXMgIDAuNzI5IG1zCiA0ICAxOTQuMTIyLjI0Mi4xOTMgKDE5NC4xMjIuMjQyLjE5MykgIDUuMjA4IG1zICA0LjMzMyBtcyAgNC4xOTYgbXMKIDUgIDE5NC4xMjIuMjQzLjQ5ICgxOTQuMTIyLjI0My40OSkgIDQuNTY1IG1zICA1LjA5NiBtcyAgNC4zMzcgbXMKIDYgIDE5NC4xMjIuMjQyLjEzOCAoMTk0LjEyMi4yNDIuMTM4KSAgNC44MDYgbXMgIDUuNjIwIG1zICA0LjcxMCBtcwogNyAgaXItZnJhbmtmdXJ0Mi5nLXdpbi5kZm4uZGUgKDE5NC4zMS4yMzIuMjIyKSAgNS4xOTYgbXMgIDUuMDcwIG1zICA0Ljg3NyBtcwogOCAgY3ItZnJhbmtmdXJ0MS5nLXdpbi5kZm4uZGUgKDE4OC4xLjgwLjM3KSAgNS40MzggbXMgIDUuMzczIG1zICA0Ljg3MyBtcwogOSAgY3ItYmVybGluMS5nLXdpbi5kZm4uZGUgKDE4OC4xLjE4LjIyKSAgMTMuNDA2IG1zICAxMy43NjEgbXMgIDEzLjUxMSBtcwoxMCAgYXItZnViZXJsaW4xLmctd2luLmRmbi5kZSAoMTg4LjEuMjAuNikgIDEzLjQ4MiBtcyAgMTMuNjExIG1zICAxMy4xOTUgbXMKMTEgIGdtZGFnYXRlLmZpcnN0LmdtZC5kZSAoMTk0Ljk1LjE2OC4xKSAgMTQuMDc1IG1zICAxMy43NjYgbXMgIDE0LjI3OCBtcwoxMiAgbWcuZmlyc3QuZ21kLmRlICgxOTQuOTUuMTcwLjIwNSkgIDEzLjg3NyBtcyAgMTMuOTY4IG1zICAxNC4yNjcgbXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IExhZ3RzPyAoVHJveSwgMTUuIE5vdiAyMDAxLCAxNDo0Njo0MCk6Cn4jISBybj1aYXJuaXlhIHJ0PTEwMDU4MjkxODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2CmljaCBoYWIgYmxvc3MgMTEgSG9wcy4uLgoKdHJhY2Vyb3V0ZSB0byBtZy5tdWQuZGUgKDE5NC45NS4xNzAuMjA1KSwgMzAgaG9wcyBtYXgsIDQwIGJ5dGUgcGFja2V0cwogMSAgcmEgKDE5Mi4xNjguMC4yKSAgNiBtcyAgMCBtcyAgMCBtcwogMiAgc3cwNy0wMTkuaGFtLmRhdGFhaXJ3YXlzLm5ldCAoMjEyLjEwNS4yMDEuNjUpICAxIG1zICAxIG1zICAyIG1zCiAzICAyMTIuMTA1LjIxMC40NSAoMjEyLjEwNS4yMTAuNDUpICAyIG1zICA0IG1zICAxIG1zCiA0ICBmZTAtMS5jcjA0LmhhbS5tZWRpYXNjYXBlLm5ldCAoMjEyLjEwNS4yMTAuMSkgIDEgbXMgIDEgbXMgIDcgbXMKIDUgIG5hcC1kZWNpeC5mZm0ubWVkaWFzY2FwZS5uZXQgKDE5NC4xNDAuMTE0LjYwKSAgMTggbXMgIDE4IG1zICAyMiBtcwogNiAgaXItZnJhbmtmdXJ0Mi5nLXdpbi5kZm4uZGUgKDE5NC4zMS4yMzIuMjIyKSAgMTggbXMgIDI1IG1zICAxOCBtcwogNyAgY3ItZnJhbmtmdXJ0MS5nLXdpbi5kZm4uZGUgKDE4OC4xLjgwLjM3KSAgMjEgbXMgIDIwIG1zICAxOCBtcwogOCAgY3ItYmVybGluMS5nLXdpbi5kZm4uZGUgKDE4OC4xLjE4LjIyKSAgMjYgbXMgIDMzIG1zICAyOCBtcwogOSAgYXItZnViZXJsaW4xLmctd2luLmRmbi5kZSAoMTg4LjEuMjAuNikgIDgwIG1zICAyNyBtcyAgMjkgbXMKMTAgIGdtZGFnYXRlLmZpcnN0LmdtZC5kZSAoMTk0Ljk1LjE2OC4xKSAgMzAgbXMgIDMxIG1zICAyNyBtcwoxMSAgbWcuZmlyc3QuZ21kLmRlICgxOTQuOTUuMTcwLjIwNSkgIDI4IG1zICAyNiBtcyAgMzAgbXMKClRyb3kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMYWd0cz8gKFRyb3ksIDE1LiBOb3YgMjAwMSwgMTQ6NDg6NTEpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMDU4MjYyMDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2Ck9lc3RlcnJlaWNoIG11c3MgdWViZXIgQW1zdGVyZGFtIHVuZCBMb25kb24gcmVpbiBzZWl0IGRpZSBUdWVya2VpIGdlc3Rlcm4KbmljaHQgbWVociB2b3IgV2llbiBzdGVoZW5ibGllYj8KCk9kZXIgd2llIHNvbGwgbWFuIGRhcyBpbnRlcnByZXRpZXJlbj8KClRyb3kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTGFndHM/IChDdWNodWxsaW4sIDE1LiBOb3YgMjAwMSwgMTQ6NDk6MTcpOgp+IyEgcm49VHJveSBydD0xMDA1ODMyMTMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgpTaWUgc2NoaWNrZW4gT3JrdG9ldGVyIGR1cmNoIEV1cm9wYSwgYXVmIGRhc3MgZXIgc2ljaCB2ZXJsYXVmZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IExhZ3RzPyAoR3JpbW1ib3JuLCAxNS4gTm92IDIwMDEsIDE0OjUwOjA1KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDA1ODMyMTU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgpHbGF1YiBpY2ggbmljaHQuIE1laW5lcyBXaXNzZW5zIGhhdCBhdWNoIE9lc3RlcnJlaWNoIGRpZSBHZW5mZXIgS29udmVudGlvbgpyYXRpZml6aWVydC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTGFndHM/IChEYXJpYSwgMTUuIE5vdiAyMDAxLCAxNjoxNDoyMSk6Cn4jISBybj1aYXJuaXlhIHJ0PTEwMDU4MjkxODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2CnRyYWNlcm91dGUgdG8gbWcubXVkLmRlICgxOTQuOTUuMTcwLjIwNSksIDMwIGhvcHMgbWF4LCA0MCBieXRlIHBhY2tldHMKIDEgIGNhdG5ldHoxNC0xICgxMzEuMjM0LjE0LjIpICAyLjA4MiBtcyAgMS4xOTQgbXMgIDEuMjQ3IG1zCiAyICBwYWRlcmJvcm4tZ3dpbiAoMTMxLjIzNC4xLjEpICAxLjI4OCBtcyAgMS43NzQgbXMgIDEuNDE0IG1zCiAzICBhci1iaWVsZWZlbGQxLmctd2luLmRmbi5kZSAoMTg4LjEuNDQuMTkzKSAgMi41NTUgbXMgIDEuNzg0IG1zICAxLjkxNCBtcwogNCAgY3ItZXNzZW4xLmctd2luLmRmbi5kZSAoMTg4LjEuODYuNjkpICA0LjQ2MyBtcyAgNC4zNTkgbXMgIDQuNDgzIG1zCiA1ICBjci1mcmFua2Z1cnQxLmctd2luLmRmbi5kZSAoMTg4LjEuMTguODkpICAyMy40ODcgbXMgIDIyLjU3OCBtcyAgMjIuODUzIG1zCiA2ICBjci1iZXJsaW4xLmctd2luLmRmbi5kZSAoMTg4LjEuMTguMjIpICAyMi45NzQgbXMgIDIyLjY0NCBtcyAgMjIuNjgyIG1zCiA3ICBhci1mdWJlcmxpbjEuZy13aW4uZGZuLmRlICgxODguMS4yMC42KSAgMjIuNTg4IG1zICAyMi42NDcgbXMgIDI1LjQ4NyBtcwogOCAgKiBnbWRhZ2F0ZS5maXJzdC5nbWQuZGUgKDE5NC45NS4xNjguMSkgIDIzLjMyNyBtcyAgMjIuOTg0IG1zCiA5ICBtZy5maXJzdC5nbWQuZGUgKDE5NC45NS4xNzAuMjA1KSAgMjMuNDA0IG1zICAyMy4wNDUgbXMgIDIzLjE1OCBtcwoKCkRhcmlhIHdpbGwgYXVjaCBtaXRzcGllbGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBMYWd0cz8gKE1lc2lyaWksIDE1LiBOb3YgMjAwMSwgMTY6MTg6NDcpOgp+IyEgcm49RGFyaWEgcnQ9MTAwNTgzNzI2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4MjYyMDYKdHJhY2Vyb3V0ZSB0byBtZy5tdWQuZGUgKDE5NC45NS4xNzAuMjA1KSwgMzAgaG9wcyBtYXgsIDQwIGJ5dGUgcGFja2V0cwogMSAgMTQxLjc2LjU1LjI1NCAoMTQxLjc2LjU1LjI1NCkgIDEgbXMgIDAgbXMgIDAgbXMKIDIgIDE0MS43Ni44Mi4yNTQgKDE0MS43Ni44Mi4yNTQpICAxIG1zICAzIG1zICAxIG1zCiAzICBjaXNjby5pbmYudHUtZHJlc2Rlbi5kZSAoMTQxLjc2LjEyLjEpICAzIG1zICA0IG1zICAyIG1zCiA0ICBDSVNDTy1HV0lOLnVyei50dS1kcmVzZGVuLmRlICgxNDEuMzAuMjQuMSkgIDIgbXMgIDMgbXMgIDMgbXMKIDUgIGFyLWRyZXNkZW4xLmctd2luLmRmbi5kZSAoMTg4LjEuMzUuMTI5KSAgMiBtcyAgMyBtcyAgNCBtcwogNiAgY3ItbGVpcHppZzEuZy13aW4uZGZuLmRlICgxODguMS43MC40OSkgIDUgbXMgIDMgbXMgIDMgbXMKIDcgIGNyLWhhbm5vdmVyMS5nLXdpbi5kZm4uZGUgKDE4OC4xLjE4LjMzKSAgMTcgbXMgIDE4IG1zICAxNSBtcwogOCAgY3ItYmVybGluMS5nLXdpbi5kZm4uZGUgKDE4OC4xLjE4LjEwOSkgIDE2IG1zICAxNiBtcyAgMTkgbXMKIDkgIGFyLWZ1YmVybGluMS5nLXdpbi5kZm4uZGUgKDE4OC4xLjIwLjYpICAxNiBtcyAgMTUgbXMgIDE2IG1zCjEwICBnbWRhZ2F0ZS5maXJzdC5nbWQuZGUgKDE5NC45NS4xNjguMSkgIDE2IG1zICAxOCBtcyAgMjAgbXMKMTEgIG1nLmZpcnN0LmdtZC5kZSAoMTk0Ljk1LjE3MC4yMDUpICAxNiBtcyAgMTYgbXMgIDE2IG1zCkljaCBhdWNoIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBMYWd0cz8gKERhcmlhLCAxNS4gTm92IDIwMDEsIDE2OjIwOjM0KToKfiMhIHJuPU1lc2lyaWkgcnQ9MTAwNTgzNzUyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4MjYyMDYKaWNoIGJpbiBhYmVyIGJlc3NlciBtaXQgOSEgKmJhZXRzY2gqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBMYWd0cz8gKEZhbnRhZ2hpcm8sIDE1LiBOb3YgMjAwMSwgMTY6MjE6MTIpOgp+IyEgcm49RGFyaWEgcnQ9MTAwNTgzNzYzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4MjYyMDYKdHJhY2Vyb3V0ZSB0byBtZy5tdWQuZGUgKDE5NC45NS4xNzAuMjA1KSwgMzAgaG9wcyBtYXgsIDQwIGJ5dGUgcGFja2V0cwogMSAgNjIuMjI1LjI1NS42NSAoNjIuMjI1LjI1NS42NSkgIDU3IG1zICA1NSBtcyAgNTUgbXMKIDIgIDYyLjIyNS4yNTUuNjYgKDYyLjIyNS4yNTUuNjYpICA1NiBtcyAgNTYgbXMgIDU2IG1zCiAzICBILWd3MTMuSC5ORVQuRFRBRy5ERSAoNjIuMTU0LjUwLjM4KSAgNjEgbXMgIDEyMjYgbXMgIDU5IG1zCiA0ICBpci1oYW5ub3ZlcjEuZy13aW4uZGZuLmRlICgxODguMS42Mi4xKSAgNjkgbXMgIDcyIG1zICA3MCBtcwogNSAgY3ItaGFubm92ZXIxLmctd2luLmRmbi5kZSAoMTg4LjEuODguMSkgIDc2IG1zICA3MiBtcyAgNjkgbXMKIDYgIGFyLWZ1YmVybGluMS5nLXdpbi5kZm4uZGUgKDE4OC4xLjIwLjYpICA3NCBtcyAgNzUgbXMgIDc1IG1zCiA3ICBnbWRhZ2F0ZS5maXJzdC5nbWQuZGUgKDE5NC45NS4xNjguMSkgIDc4IG1zICA3MyBtcyAgNzMgbXMKIDggIG1nLmZpcnN0LmdtZC5kZSAoMTk0Ljk1LjE3MC4yMDUpICA3NSBtcyAgNzcgbXMgIDc1IG1zCgoKVW5kIGljaCBhdWYgOC4uLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IExhZ3RzPyAoUGVyZGl0YSwgMTUuIE5vdiAyMDAxLCAxNjoyMjowNik6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTEwMDU4Mzc2NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2CmJpdHRlIG5pY2h0IGxhY2hlbiwgYWJlciB3aWUgbWFjaHQgbWFuIGRhcywgd2FzIGlociBkYSBncmFkIGFsbGUgbWFjaHQ/CmJyYXVjaHQgbWFuIGRhIGVpbiBiZXN0aW1tdGVzIHByb2dyYW1tIHp1PyBvZGVyIHdpZT8KUGVyZGl0YSBoYXQgZG9jaCB2b24gc293YXMga2VpbmUgQWhudW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBMYWd0cz8gKEdyaW1tYm9ybiwgMTUuIE5vdiAyMDAxLCAxNjoyMzozOSk6Cn4jISBybj1QZXJkaXRhIHJ0PTEwMDU4Mzc3MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2Cm1hbiB0cmFjZXJvdXRlCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IExhZ3RzPyAoUGVyZGl0YSwgMTUuIE5vdiAyMDAxLCAxNjozODoxNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwNTgzNzgxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4MjYyMDYKd293LCBpY2ggaGFiIGphIGF1Y2ggbnVyIDkgaG9wcy4uLgp3YXMgYXVjaCBpbW1lciBtaXIgZGFzIGpldHp0IGJyaW5ndC4uLgpQZXJkaXRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTGFndHM/IChGb29iYXIsIDE1LiBOb3YgMjAwMSwgMTY6Mzk6MDUpOgp+IyEgcm49UGVyZGl0YSBydD0xMDA1ODM4Njk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgpCZWkgbWlyIGhhdCBlciBuYWNoIDMwIGFiZ2Vicm9jaGVuLCBhYmVyIGRhcyBpc3Qgbm9ybWFsLgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTGFndHM/IChQZXJkaXRhLCAxNS4gTm92IDIwMDEsIDE2OjQxOjA3KToKfiMhIHJuPUZvb2JhciBydD0xMDA1ODM4NzQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgp1bmQgd2FzIG1hY2h0ICJwaW5nIj8Kd2FzIHNhZ2VuIG1pciBkaWUgemFobGVuIGRhPwpQZXJkaXRhIGltbWVyIHdpc3NiZWdpZXJpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IExhZ3RzPyAoRm9vYmFyLCAxNS4gTm92IDIwMDEsIDE2OjQyOjA1KToKfiMhIHJuPVBlcmRpdGEgcnQ9MTAwNTgzODg2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4MjYyMDYKR2VyYWRlIGViZW46Ci0tLSBtZy5tdWQuZGUgcGluZyBzdGF0aXN0aWNzIC0tLQo0NjUwIHBhY2tldHMgdHJhbnNtaXR0ZWQsIDQ2MTIgcGFja2V0cyByZWNlaXZlZCwgMCUgcGFja2V0IGxvc3MKcm91bmQtdHJpcCBtaW4vYXZnL21heCA9IDE0MC4wMTgvMzMxLjM2OS8yMjczMC4wNDAgbXMKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IExhZ3RzPyAoRGFyaWEsIDE1LiBOb3YgMjAwMSwgMTY6NDM6NDEpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwMDU4Mzg5MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2CkljaCBnbGF1YmUgcGluZ2VuIGthbm4gc2llIHNlbGJlci4uLiBzaWUgd2lsbCB3aXNzZW4gd29ydW1zIGRhIGdlaHQuLi4KCkRhcyBoZWlzc3QgZ2xhdWIgaWNoIHdpZSBzY2huZWxsIERhdGVuIHZvbiBkaXIgenVtIE11ZHJlY2huZXIga29tbWVuLgp0cmFjZXJvdXRlIHNjaGx1ZXNzZWx0ICBkaXIgenVzYWV0emxpY2ggbm9jaCBkZW4gV2VnIGF1ZiwgZGVuIGRpZSBEYXRlbgpuZWhtZW4uCgpBbGxlIEFuZ2FiZW4gb2huZSBHZXdhZWhyLgpEYXJpYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IExhZ3RzPyAoUGl0ZmFsbCwgMTUuIE5vdiAyMDAxLCAxNjo0ODo0Mik6Cn4jISBybj1EYXJpYSBydD0xMDA1ODM5MDIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgp0cmFjZXJvdXRlIHRvIG1nLm11ZC5kZSAoMTk0Ljk1LjE3MC4yMDUpLCAzMCBob3BzIG1heCwgNDAgYnl0ZSBwYWNrZXRzCiAxICBtaXR0ZTAyMC5yei5maHR3LWJlcmxpbi5kZSAoMTQxLjQ1LjIwLjEpICAwIG1zICAwIG1zICAwIG1zCiAyICByYW5kMDAyLnJ6LmZodHctYmVybGluLmRlICgxNDEuNDUuMi4yKSAgMSBtcyAgMSBtcyAgMSBtcwogMyAgYXItaHViZXJsaW4xLmctd2luLmRmbi5kZSAoMTg4LjEuMzMuOTcpICAxIG1zICAxIG1zICAxIG1zCiA0ICBhci1mdWJlcmxpbjEuZy13aW4uZGZuLmRlICgxODguMS4yMC4yMikgIDEgbXMgIDEgbXMgIDEgbXMKIDUgIGdtZGFnYXRlLmZpcnN0LmdtZC5kZSAoMTk0Ljk1LjE2OC4xKSAgMiBtcyAgMiBtcyAgMiBtcwogNiAgbWcuZmlyc3QuZ21kLmRlICgxOTQuOTUuMTcwLjIwNSkgIDIgbXMgIDIgbXMgIDIgbXMgICAgIAoKCjAlIHBhY2tldCBsb3NzCnJvdW5kLXRyaXAgbWluL2F2Zy9tYXggPSAxLjUyOC8xLjY0My8yLjExMyBtcyAgICAgICAgCgoKdW5kIGxhZyBvaG5lIGVuZGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBMYWd0cz8gKEVsYmVyZXQsIDE1LiBOb3YgMjAwMSwgMTY6NDk6MTQpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDA1ODM5MzIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgpkdSBiaXN0IGphIGF1Y2ggYXVzIGJlcmxpbiwgZGFzIGlzdCBnZW1laW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBMYWd0cz8gKFRyb3ksIDE1LiBOb3YgMjAwMSwgMTc6MjE6NDApOgp+IyEgcm49RWxiZXJldCBydD0xMDA1ODM5MzU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgpFciBpc3Qgdm9yIGFsbGVtIGF1Y2ggSU4gQmVybGluLiBTb25zdCB3YWVyIGVzIHdpcmtsaWNoIGdlbWVpbi4gTnVyIHdlaWwgZXIKQVVTIEJlcmxpbiBpc3QsIHdlbmlnZXIgSG9wcy4uLgoKVHJveQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTGFndHM/IChIaWdodCwgMTUuIE5vdiAyMDAxLCAxNzozNDoyNSk6Cn4jISBybj1NZXNpcmlpIHJ0PTEwMDU4Mzc1Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2Cm9raSBkYW5uIHNwaWVsIGljaCBhdWNoIG1pdCAubykgCgp0cmFjZXJvdXRlIHRvIG1nLm11ZC5kZSAoMTk0Ljk1LjE3MC4yMDUpLCAzMCBob3BzIG1heCwgMzggYnl0ZSBwYWNrZXRzCiAxICB3b3JmLkFTSy5GSC1GdXJ0d2FuZ2VuLkRFICgxNDEuMjguMjI1LjEpICAwLjQzNyBtcyAgMC4zMzMgbXMgIDAuMzI0IG1zCiAyICBDSVNDTy1GVzEtRTUucnotaW50LkZILUZ1cnR3YW5nZW4uREUgKDE0MS4yOC4xNS42MikgIDM0MC42MDEgbXMgIDM2OC41OTcKbXMgIDM4My45MDkgbXMKIDMgIEZILUZ1cnR3YW5nZW4xLkJlbFd1ZS5ERSAoMTI5LjE0My4yMy4yNSkgIDQ3OS42MTggbXMgIDQxNS4zNzEgbXMgIDQ1NS43NzYKbXMKIDQgIEZyZWlidXJnMS5CZWxXdWUuREUgKDEyOS4xNDMuMTMuNSkgIDYxMi40OTIgbXMgIDUxNi4yMDkgbXMgIDU4MS44NzMgbXMKIDUgIEZyZWlidXJnMS1uZXUuQmVsd3VlLkRFICgxMjkuMTQzLjE1LjE0NSkgIDU0MS42MDMgbXMgIDYxMS4zMjUgbXMgIDYwMC45MTIKbXMKIDYgIEthcmxzcnVoZTEtbmV1LkJlbFd1ZS5ERSAoMTI5LjE0My4xLjIxKSAgNjIxLjMyNCBtcyAgNjA1LjM0OCBtcyAgNjM1LjE5NQptcwogNyAgU3R1dHRnYXJ0OS5CZWxXdWUuREUgKDEyOS4xNDMuMS43KSAgNTIyLjc3NiBtcyAgNzExLjY4NSBtcyAgNTIzLjQ5NiBtcwogOCAgU3R1dHRnYXJ0OC5CZWxXdWUuREUgKDEyOS4xNDMuMS4zMCkgIDYxNC40MTAgbXMgIDU5MC41OTIgbXMgIDU1OS44OTggbXMKIDkgIEZyYW5rZnVydDEuQmVsV3VlLkRFICgxMjkuMTQzLjEuMjYpICA1MzQuODU1IG1zICA1NTkuNjQxIG1zICA3NjYuNDg1IG1zCjEwICAxOTUuNzMuMzQuNjEgKDE5NS43My4zNC42MSkgIDY0My4xNDQgbXMgIDY2NC4xNDEgbXMgIDQ2OC4wNjYgbXMKegpmaW50ZQp6CmthbXBmdHJpdHQgCmtuaWVzdG9zcyAKa29wZnN0b3NzIAplbGxib2dlbnNjaGxhZyAKMTIgIHIxLWRlY2l4LmYuZGUua3BucXdlc3QubmV0ICgxOTQuMTIyLjI0Mi4xMzgpICA2MjUuMzM5IG1zICA1OTQuODEwIG1zIAo1NzguNjI2IG1zCjEzICBpci1mcmFua2Z1cnQyLmctd2luLmRmbi5kZSAoMTk0LjMxLjIzMi4yMjIpICA1NjMuMDk5IG1zICA1OTkuMDYzIG1zIAo1ODQuNjI5IG1zCjE0ICBjci1mcmFua2Z1cnQxLmctd2luLmRmbi5kZSAoMTg4LjEuODAuMzcpICA2MDQuMTM1IG1zICA1MDcuMzYxIG1zICA1NTUuODQ3Cm1zCjE1ICBjci1iZXJsaW4xLmctd2luLmRmbi5kZSAoMTg4LjEuMTguMjIpICA2MjQuNzQ1IG1zICA2MjUuMDQyIG1zICA1MDcuMzk3IG1zCjE2ICBhci1mdWJlcmxpbjEuZy13aW4uZGZuLmRlICgxODguMS4yMC42KSAgMzgzLjQyNyBtcyAgNDk1LjAxNSBtcyAgNTAzLjcwNSBtcwoxNyAgZ21kYWdhdGUuZmlyc3QuZ21kLmRlICgxOTQuOTUuMTY4LjEpICA1NzYuMTUyIG1zICA2NTEuMzgzIG1zICA2MjYuMTMyIG1zCjE4ICBtZy5maXJzdC5nbWQuZGUgKDE5NC45NS4xNzAuMjA1KSAgNTgyLjUwNiBtcyAgNDU0LjcwOCBtcyAgNDczLjc0NiBtcwoKd2VyIGdld2lubnQgZWlnZW50bGljaCA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBMYWd0cz8gKEZvb2JhciwgMTUuIE5vdiAyMDAxLCAxNzozNTowMSk6Cn4jISBybj1IaWdodCBydD0xMDA1ODQyMDY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgpEaWUgRnJhZ2UgbmFjaCBkZW0gR2V3aW5uZXIgaGFzdCBEdSBtaXQgZGVyIEthbXBma29tYmkgZWluZGV1dGlnIGJlYW50d29ydGV0CjtvKQoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBMYWd0cz8gKFB1aywgMTUuIE5vdiAyMDAxLCAxNzozNjoxNik6Cn4jISBybj1Gb29iYXIgcnQ9MTAwNTg0MjEwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4MjYyMDYKVm9nZWwgYWJnZXNjaG9zc2VuIHNvenVzYWdlbiA6KQoKUHVrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBMYWd0cz8gKEhpZ2h0LCAxNS4gTm92IDIwMDEsIDE3OjM2OjUyKToKfiMhIHJuPUhpZ2h0IHJ0PTEwMDU4NDIwNjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2CmhtbW0gd2FzIHp1bSBoZW5rZXIgaGF0IGRlbiBzY2hlaXNzIGRhcyBhdXNnZWxvZXN0ID8KCmhpZ2h0IHN0YXVuZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBMYWd0cz8gKEN1Y2h1bGxpbiwgMTUuIE5vdiAyMDAxLCAxNzozNjo1NCk6Cn4jISBybj1QdWsgcnQ9MTAwNTg0MjE3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4MjYyMDYKSGlnaHQgd2lyZCBlaW4gS2V5YmluZGluZyBhdWYgIjExIiBoYWJlbi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IExhZ3RzPyAoSGlnaHQsIDE1LiBOb3YgMjAwMSwgMTc6Mzg6MTIpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMDU4NDIyMTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2Cmthbm4gYXVjaCAzIDMgc2VpbiAuLi4gaWNoIHdlaXNzIG5ldCBpY2ggaGFicyBsYW5nIG5ldCBiZW51dHp0ICxvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTGFndHM/IChIdW1uaSwgMTUuIE5vdiAyMDAxLCAxNzozODozNCk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAwNTg0MjIxNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4MjYyMDYKdHJhY2Vyb3V0ZSB0byBtZy5tdWQuZGUgKDE5NC45NS4xNzAuMjA1KSwgMzAgaG9wcyBtYXgsIDQwIGJ5dGUgcGFja2V0cwogMSAgMTMyLjIzMC4xOS4yNTQgKDEzMi4yMzAuMTkuMjU0KSAgMyBtcyAgMyBtcyAgMiBtcwogMiAgMTMyLjIzMC4yMjMuMSAoMTMyLjIzMC4yMjMuMSkgIDEgbXMgIDEgbXMgIDEgbXMKIDMgIEZyZWlidXJnMS5CZWxXdWUuREUgKDEyOS4xNDMuNTYuMSkgIDIgbXMgIDIgbXMgIDIgbXMKIDQgIEZyZWlidXJnMS1uZXUuQmVsd3VlLkRFICgxMjkuMTQzLjE1LjE0NSkgIDIgbXMgIDIgbXMgIDIgbXMKIDUgIEthcmxzcnVoZTEtbmV1LkJlbFd1ZS5ERSAoMTI5LjE0My4xLjIxKSAgNCBtcyAgNSBtcyAgNCBtcwogNiAgU3R1dHRnYXJ0OS5CZWxXdWUuREUgKDEyOS4xNDMuMS43KSAgNiBtcyAgNSBtcyAgNiBtcwogNyAgU3R1dHRnYXJ0OC5CZWxXdWUuREUgKDEyOS4xNDMuMS4zMCkgIDcgbXMgIDcgbXMgIDYgbXMKIDggIEZyYW5rZnVydDEuQmVsV3VlLkRFICgxMjkuMTQzLjEuMjYpICA5IG1zICA5IG1zICA5IG1zCiA5ICAxOTUuNzMuMzQuNjEgKDE5NS43My4zNC42MSkgIDEwIG1zICA5IG1zICA5IG1zCjEwICByMS1lcnAxLmYuZGUua3BucXdlc3QubmV0ICgxOTQuMTIyLjI0My40OSkgIDEwIG1zICAxMCBtcyAgMTAgbXMKMTEgIHIxLWRlY2l4LmYuZGUua3BucXdlc3QubmV0ICgxOTQuMTIyLjI0Mi4xMzgpICAxMCBtcyAgMTEgbXMgIDEwIG1zCjEyICBpci1mcmFua2Z1cnQyLmctd2luLmRmbi5kZSAoMTk0LjMxLjIzMi4yMjIpICAxMSBtcyAgMTAgbXMgIDEwIG1zCjEzICBjci1mcmFua2Z1cnQxLmctd2luLmRmbi5kZSAoMTg4LjEuODAuMzcpICA5IG1zICAxMSBtcyAgMTAgbXMKMTQgIGNyLWJlcmxpbjEuZy13aW4uZGZuLmRlICgxODguMS4xOC4yMikgIDE5IG1zICAxOCBtcyAgMTggbXMKMTUgIGFyLWZ1YmVybGluMS5nLXdpbi5kZm4uZGUgKDE4OC4xLjIwLjYpICAxOCBtcyAgMTkgbXMgIDE4IG1zCjE2ICBnbWRhZ2F0ZS5maXJzdC5nbWQuZGUgKDE5NC45NS4xNjguMSkgIDE5IG1zICAyMCBtcyAgMTkgbXMKMTcgIG1nLmZpcnN0LmdtZC5kZSAoMTk0Ljk1LjE3MC4yMDUpICAxOSBtcyAgMjAgbXMgIDE5IG1zCgpLYW5uIGljaCBhdWNoIQoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBMYWd0cz8gKEJvaW5nLCAxNS4gTm92IDIwMDEsIDE3OjQwOjAyKToKfiMhIHJuPUh1bW5pIHJ0PTEwMDU4NDIzMTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2CnRyYWNlcm91dGUgdG8gbWcubXVkLmRlICgxOTQuOTUuMTcwLjIwNSksIDMwIGhvcHMgbWF4LCA0MCBieXRlIHBhY2tldHMKIDEgIG1nLmZpcnN0LmdtZC5kZSAoMTk0Ljk1LjE3MC4yMDUpICAwIG1zICAwIG1zICAwIG1zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTGFndHM/IChab29rLCAxNS4gTm92IDIwMDEsIDE3OjQwOjI2KToKfiMhIHJuPUJvaW5nIHJ0PTEwMDU4NDI0MDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2CkJvYWghCgpab29rIGthbm5zIG5pY2h0IHVudGVyYmlldGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IExhZ3RzPyAoR3JpbW1ib3JuLCAxNS4gTm92IDIwMDEsIDE3OjQ0OjMxKToKfiMhIHJuPVpvb2sgcnQ9MTAwNTg0MjQyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4MjYyMDYKV2VubiBtYW4gYmVkZW5rdCBkYXNzIDAgdWVibGljaGVyd2Vpc2UgImRpc2FibGVkIiBoZWlzc3Qgd3VlcmRlIGljaCBuaWNodApzYWdlbiBkYXNzIGRhcyBzbyBndXQgaXN0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBMYWd0cz8gKEFuYXRvbCwgMTUuIE5vdiAyMDAxLCAxODowODozOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwNTg0MjY3MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4MjYyMDYKQWxzbyBtZWluIFRyYWNlcm91dGUgYXVmIGxvY2FsaG9zdCBzYWd0IGF1Y2ggMC8wLzAuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBMYWd0cz8gKFNjb3JwaW9uLCAxNS4gTm92IDIwMDEsIDE4OjE2OjQ2KToKfiMhIHJuPUhpZ2h0IHJ0PTEwMDU4NDIwNjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2ClJvdXRlLVZlcmZvbGd1bmcgenUgbWcubXVkLmRlIFsxOTQuOTUuMTcwLjIwNV0KCiAgMSAgICAgNyBtcyAgICAgNyBtcyAgICAgNiBtcyAgMTAuMTk0LjgwLjEKIDIgICAgMTAgbXMgICAgIDggbXMgICAgIDcgbXMgIDYyLjIuNDAuMzcKIDMgICAgIDkgbXMgICAgIDkgbXMgICAgIDggbXMgIDYyLjIuOTQuMTg1CjQgICAgIDkgbXMgICAgIDkgbXMgICAgIDkgbXMgIHAxMC0wLnp1cjAxYjA0LnN1bnJpc2UuY2ggWzE5NS4xNDEuMjQwLjI0MV0KNSAgICAxNCBtcyAgICAxMyBtcyAgICAxNSBtcyAgZGVjaXgucDQtMC56dXIwMWIwNC5zdW5yaXNlLmNoIFsxOTUuMTQxLjIzMC4xODZdCiA2ICAgIDE0IG1zICAgIDEzIG1zICAgIDE0IG1zICBpci1mcmFua2Z1cnQyLmctd2luLmRmbi5kZSBbMTk0LjMxLjIzMi4yMjJdCiA3ICAgIDE1IG1zICAgIDE2IG1zICAgIDE1IG1zICBjci1mcmFua2Z1cnQxLmctd2luLmRmbi5kZSBbMTg4LjEuODAuMzddCjggICAgMjUgbXMgICAgMjIgbXMgICAgMjMgbXMgIGNyLWJlcmxpbjEuZy13aW4uZGZuLmRlIFsxODguMS4xOC4yMl0KOSAgICAyMSBtcyAgICAyMiBtcyAgICAyNCBtcyAgYXItZnViZXJsaW4xLmctd2luLmRmbi5kZSBbMTg4LjEuMjAuNl0KIDkgICAgMjEgbXMgICAgMjIgbXMgICAgMjQgbXMgIGFyLWZ1YmVybGluMS5nLXdpbi5kZm4uZGUgWzE4OC4xLjIwLjZdCjEwICAgIDIyIG1zICAgIDIzIG1zICAgIDIyIG1zICBnbWRhZ2F0ZS5maXJzdC5nbWQuZGUgWzE5NC45NS4xNjguMV0KIDExICAgIDIyIG1zICAgIDIzIG1zICAgIDIyIG1zICBtZy5tdWQuZGUgWzE5NC45NS4xNzAuMjA1XQoKU2NvcnBpb24sIGF1cyBkZXIgc2Nod2VpeiB3aW5rZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGFndHM/IChWYW5pb24sIDE1LiBOb3YgMjAwMSwgMTg6MjU6NDUpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMDU4MjYyMDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2Ck5hamEsIHdlbm4gZHUgYXVjaCBkZW4gZGlyZWt0ZW4gV2VnIHZvbiBXaWVuID4gKEJhaG4pID4gQW1zdGVyZGFtID4gKFNjaGlmZikgPgpMb25kb24gPiAoRmx1Z3pldWcpID4gRnJhbmtmdXJ0ID4gKEJhaG4pID4gQmVybGluIG5pbW1zdCwgaXMgZGFzIGtlaW4gV3VuZGVyLgoKSGFldHRlIHNjaGxpbW1lciBrb21tZW4ga29lbm5lbi4gRGEgc2luZCBzY2hsaWVzc2xpY2ggMnggMyBNaW51dGVuIFZlcnNwYWV0dW5nCmVpbmthbGt1bGllcmJhci4KClYqLCBkZW5rdCBkYSBhbiBkaWUgQmFobndlcmJ1bmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExhZ3RzPyAoSGlnaHQsIDE1LiBOb3YgMjAwMSwgMTg6NTY6MDEpOgp+IyEgcm49VmFuaW9uIHJ0PTEwMDU4NDUxNDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2Cip3YWVseiogaWNoIHdlaXNzIGphIG5ldCBtaXQgd2VsY2hlciBiYWhuIGR1IGZhZWhyc3QgYWJiYSAzIG1pbnV0ZW4gYmVpbSBpY2UKc2luZCB1dG9waXNjaCAuLi4gbmFjaCA0IGhhbHRlc3RlbGxlbiBzaW5kIGRhcyBlaGVyIDMwIGFscyAzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBMYWd0cz8gKEJvaW5nLCAxNS4gTm92IDIwMDEsIDE4OjU3OjIxKToKfiMhIHJuPUhpZ2h0IHJ0PTEwMDU4NDY5NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2CkRhIHJlaWNodCBzY2hvbiBlaW5lIEhhbHRlc3RlbGxlIC4uLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBMYWd0cz8gKEh1bW5pLCAxNS4gTm92IDIwMDEsIDE4OjU4OjMzKToKfiMhIHJuPUJvaW5nIHJ0PTEwMDU4NDcwNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2Ckthbm4gaWNoIGF1Y2ghCgp0cmFjZXJvdXRlIHRvIG1nLm11ZC5kZSAoMTk0Ljk1LjE3MC4yMDUpLCAzMCBob3BzIG1heCwgNDAgYnl0ZSBwYWNrZXRzCiAxICBtZy5maXJzdC5nbWQuZGUgKDE5NC45NS4xNzAuMjA1KSAgMSBtcyAgMCBtcyAgMCBtcwoKSHVtbmkKTmFqYSBmYXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTGFndHM/IChIaWdodCwgMTUuIE5vdiAyMDAxLCAxODo1ODo1OSk6Cn4jISBybj1Cb2luZyBydD0xMDA1ODQ3MDQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgpuZXJqYSBkZXIgcmVrb3JkIHdhciBiaXNoZXIgbnVlcm5iZXJnIG11ZW5zdGVyIChzdHJhdHB1bmt0IG51ZXJuYmVyZykgaXMgNDUKbWludXRlbiB6dSBzcGFldCBnZXN0YXJ0ZXQKCmljaCBtZWluIGd1dCB3YXJ0ZW4gYXVmIGFuc2NobHVzc3JlaXNlbmRlIG1hY2h0IHZpZWxlaWNodCBkZXMgbmFjaHRzIHNpbm4gYWJiYQptaXR0YWdzID8gCgpIaWdodCBuaWNoIHZpZWwgdm9tICJTZXJ2aWNldW50ZXJuZWhtZW4iIGJhaG4gaGFsdGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTGFndHM/IChab29rLCAxNS4gTm92IDIwMDEsIDE4OjU5OjUzKToKfiMhIHJuPUhpZ2h0IHJ0PTEwMDU4NDcxMzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2CldhcyBnZW5hdSBnYWIgZXMgaW4gZGllc2VtIFRocmVhZCBmdWVyIFJlXjEwMD8KClpvb2suIEFidHJ1ZW5uaWdlIHdpZWRlciBuYWNoIG1lZ2FzY2htYXJybiBlaW5zYW1tZWxuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IExhZ3RzPyAoSGlnaHQsIDE1LiBOb3YgMjAwMSwgMTk6MDE6MjIpOgp+IyEgcm49Wm9vayBydD0xMDA1ODQ3MTkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgppY2ggYmluIG5pY2ggYWJ0cnVlbmlnICEKCiB4IDM2LiBtZWdhc2NobWFycm4gICAgICAgICAgICAgICAgICAgICAgICAgICA6IDMwNCBBcnRpa2VsICgxNS4gTm92IDAxKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IExhZ3RzPyAoQm9pbmcsIDE1LiBOb3YgMjAwMSwgMTk6MDI6MjYpOgp+IyEgcm49SGlnaHQgcnQ9MTAwNTg0NzI4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4MjYyMDYKPiAgeCAzNi4gbWVnYXNjaG1hcnJuICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAzMDQgQXJ0aWtlbCAoMTUuIE5vdiAwMSkKRGFzIGlzdCBkZXIgd2FocmUgR2Vpc3QhCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IExhZ3RzPyAoV2lsbG93LCAxNS4gTm92IDIwMDEsIDE5OjMzOjAxKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTAwNTgzNzUyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4MjYyMDYKdHJhY2Vyb3V0ZSB0byBtZy5tdWQuZGUgKDE5NC45NS4xNzAuMjA1KSwgMzAgaG9wcyBtYXgsIDQwIGJ5dGUgcGFja2V0cwogMSAgMjE3LjUuOTguNTggKDIxNy41Ljk4LjU4KSAgMzcgbXMgIDMzIG1zICAzMSBtcwogMiAgMjE3LjIzNy4xNTMuMTgyICgyMTcuMjM3LjE1My4xODIpICAzMSBtcyAgMzEgbXMgIDMyIG1zCiAzICBILWd3MTMuSC5ORVQuRFRBRy5ERSAoNjIuMTU0LjUwLjM4KSAgMzEgbXMgIDMwIG1zICAzMiBtcwogNCAgaXItaGFubm92ZXIxLmctd2luLmRmbi5kZSAoMTg4LjEuNjIuMSkgIDEzMyBtcyAgNDIgbXMgIDQzIG1zCiA1ICBjci1oYW5ub3ZlcjEuZy13aW4uZGZuLmRlICgxODguMS44OC4xKSAgNDEgbXMgIDQxIG1zICA0MiBtcwogNiAgYXItZnViZXJsaW4xLmctd2luLmRmbi5kZSAoMTg4LjEuMjAuNikgIDQ3IG1zICA0OCBtcyAqCiA3ICAqIGdtZGFnYXRlLmZpcnN0LmdtZC5kZSAoMTk0Ljk1LjE2OC4xKSAgNDkgbXMgIDQ2IG1zCiA4ICBtZy5maXJzdC5nbWQuZGUgKDE5NC45NS4xNzAuMjA1KSAgNDYgbXMgIDEzMCBtcyAqCnRyYWNlcm91dGUgdG8gbWcubXVkLmRlICgxOTQuOTUuMTcwLjIwNSksIDMwIGhvcHMgbWF4LCA0MCBieXRlIHBhY2tldHMKIDEgIDIxNy41Ljk4LjU4ICgyMTcuNS45OC41OCkgIDM3IG1zICAzMyBtcyAgMzEgbXMKIDIgIDIxNy4yMzcuMTUzLjE4MiAoMjE3LjIzNy4xNTMuMTgyKSAgMzEgbXMgIDMxIG1zICAzMiBtcwogMyAgSC1ndzEzLkguTkVULkRUQUcuREUgKDYyLjE1NC41MC4zOCkgIDMxIG1zICAzMCBtcyAgMzIgbXMKIDQgIGlyLWhhbm5vdmVyMS5nLXdpbi5kZm4uZGUgKDE4OC4xLjYyLjEpICAxMzMgbXMgIDQyIG1zICA0MyBtcwogNSAgY3ItaGFubm92ZXIxLmctd2luLmRmbi5kZSAoMTg4LjEuODguMSkgIDQxIG1zICA0MSBtcyAgNDIgbXMKIDYgIGFyLWZ1YmVybGluMS5nLXdpbi5kZm4uZGUgKDE4OC4xLjIwLjYpICA0NyBtcyAgNDggbXMgKgogNyAgKiBnbWRhZ2F0ZS5maXJzdC5nbWQuZGUgKDE5NC45NS4xNjguMSkgIDQ5IG1zICA0NiBtcwogOCAgbWcuZmlyc3QuZ21kLmRlICgxOTQuOTUuMTcwLjIwNSkgIDQ2IG1zICAxMzAgbXMgKgoqZ3JpbnMqIFdpbGxvdyBhdWNoLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgKFZhbmlvbiwgMTUuIE5vdiAyMDAxLCAyMDoyOTo0Nyk6CgpGcm9tOiBXYXkyZmFzdEBnbXgubmV0IChGYXN0KQpOZXdzZ3JvdXBzOiBkZS5zb2Muc3Via3VsdHVyLmJkc20KU3ViamVjdDogUmU6IEJsb29keSBOZXdiaWUKRGF0ZTogV2VkLCAxNCBOb3YgMjAwMSAyMDowMDoyNCBHTVQKTWVzc2FnZS1JRDogPDNiZjJjYzFkLjczOTAwNEBuZXdzLkNJUy5ERk4uREU+CgpPbiBXZWQsIDE0IE5vdiAyMDAxIDA5OjA5OjE5IEdNVCwgIkFsZXhhbmRlciBMZWhuZXIiCjxhbGV4YW5kZXIubGVobmVyQGNoZWxsby5hdD4gd3JvdGU6Cgo+bWljaCBiZXNjaGFlZnRpZ3QgZGllIEZhbnRhc2llIGVpbmVyIEZyYXUgYmVkaW5ndW5nc2xvcyB1bnRlcndvcmZlbiB6dSBzZWluCj5zY2hvbiBzZWl0IGxhZW5nZXJlciBaZWl0LiAKCmRhbm4gc29sbHRlc3QgRHUgaGVpcmF0ZW4uCgpGLgoKLS0gClN1Ym1pc3Npb25lbiBmdWVyIGRlLmFsdC5uZXRkaWdlc3QgYml0dGUgYW4KPGRlLWFsdC1uZXRkaWdlc3RAbW9kZXJhdG9ycy5kYW5hLmRlPiBzY2hpY2tlbi4KRGVyIFN1Ym1pdHRlciBpc3QgZnVlciBkZW4gSW5oYWx0IGRlciBFaW5yZWljaHVuZyB2ZXJhbnR3b3J0bGljaCwgCm5pY2h0IGRlciBNb2RlcmF0b3IgZGVyIE5ld3NncnVwcGUuCi0tClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBMYWd0cz8gKFhlbmFkYSwgMTUuIE5vdiAyMDAxLCAyMToyNjo1Mik6Cn4jISBybj1ab29rIHJ0PTEwMDU4NDcxOTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2CkFscyBCZWxvaG51bmcgZXJzY2hmZnN0IGR1IGVpbiBleHRyYSBncm9zc2VzIExhZz8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXRkaWdlc3QgKExpYXJhLCAxNS4gTm92IDIwMDEsIDIxOjU4OjQ0KToKfiMhIHJuPVZhbmlvbiBydD0xMDA1ODUyNTg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTg1MjU4NwpXaXR6aWcgaXN0IC4uLiBpY2ggZ2xhdWJlLCBpY2gga2VubmUgZGVuIFR5cC4gOi0pCgpaWkwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV0ZGlnZXN0IChHcmltbWJvcm4sIDE1LiBOb3YgMjAwMSwgMjE6NTk6NTUpOgp+IyEgcm49TGlhcmEgcnQ9MTAwNTg1NzkyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4NTI1ODcKSXN0IGdlYm9uZ3QsIHdpciBrb21tZW4gZGFubiBhbGxlIHp1ciBIb2NoemVpdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFdhcyBzbyBpbiBkZXIgV2VsdCBwYXNzaWVydCAuLi4gKExpYXJhLCAxNS4gTm92IDIwMDEsIDIyOjAyOjQ1KToKfiMhIHJuPVBhdHJ5biBydD0xMDA1ODA2OTM3IHJnPXd3dwp+IyEgdGlkPTEwMDU3MDA5NDcKJy4uLiB1bmQgZXJoYWVsdCBCZXppZWh1bmdlbi4nCgpTdGFlbmRpZyByZWRlc3QgRHUgdWViZXIgU2V4ISA7LSkgVW5kIG1pciBoYXQgaW1tZXIgbm9jaCBuaWVtYW5kIGRhcyBtaXQgZGVuCkJpZW5jaGVuIHVuZCBkZW4gQmx1ZW1jaGVuIGVya2xhZXJ0LiAqc2NobW9sbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBXYXMgc28gaW4gZGVyIFdlbHQgcGFzc2llcnQgLi4uIChHcmltbWJvcm4sIDE1LiBOb3YgMjAwMSwgMjI6MzE6MzcpOgp+IyEgcm49TGlhcmEgcnQ9MTAwNTg1ODE2NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU3MDA5NDcKQWxzbywgZGFzIG1pdCBkZW4gQmllbmNoZW4gdW5kIEJsdWVtY2hlbiBpc3QgamEgd29obCB0b3RhbCBzaW1wZWwuIE9kZXIgaXNzdApEdSBrZWluZW4gSG9uaWcgb2RlciB3YXM/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoRGVlcGJsdWUsIDE2LiBOb3YgMjAwMSwgMTA6NTY6MTUpOgpEZWluZSBGcmV1bmRpbiBFbGFpbmUgdGVpbHQgRGlyIG1pdDogSGF0IG5vY2ggd2VyIG5lbiBUaXAgZnVlciBkYXMgS2xhbW1lcmdyYXMKRGVpbmUgRnJldW5kaW4gRWxhaW5lIHRlaWx0IERpciBtaXQ6IGltIEtsb3N0ZXJnYXJ0ZW4gdm9uIFN1bGE/IDpvKQpEZWluZSBGcmV1bmRpbiBFbGFpbmUgdmVyZmx1Y2h0IFB1bWEgYXVzIGRlciBGZXJuZS4KW1RvZDpMYXJzXSBEZXIgR2FydGVuIGRlcyBUb2RlcyBoYXQgZ2VyYWRlIEVsYWluZSB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2lsZGUgZGVyIElkbGVyIChDdWNodWxsaW4sIDE2LiBOb3YgMjAwMSwgMTE6MDM6NDYpOgotLS0gRm9sZ2VuZGUgWmF1YmVyZXIgc2luZCBhbndlc2VuZDogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKGkpIEFuYWNyaW9uIGRlciBNYWdpc3RlciAgICAgICAgICAgICAgICAgIChBYndlaHIpCihJKSBWYXJkaW9uIGRlciBNYWdpc3RlciAgICAgICAgICAgICAgICAgICAoQWJ3ZWhyKQooaSkgUmF2ZW50aHJvbmUgZGVyIE1hZ2lzdGVyICAgICAgICAgICAgICAgCihpKSBTY29wZSBkaWUgTWFnaXN0cmEgICAgICAgICAgICAgICAgICAgICAoVmVyd2FuZGx1bmcpCihqKSBPYmVybW90eiBkZXIgTWFnaXN0ZXIgICAgICAgICAgICAgICAgICAKKEopIExhY3JpIGRpZSBNZWlzdGVyYW53YWVydGVyaW4gICAgICAgICAgIAooaSkgQmVvd2FyIGRlciBNZWlzdGVyYW53YWVydGVyICAgICAgICAgICAgCihqKSBUdXJvY2sgZGVyIE1laXN0ZXJhbndhZXJ0ZXIgICAgICAgICAgICAKICAgIEN1Y2h1bGxpbiBkZXIgTWVpc3RlcmFud2FlcnRlciAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hbmNobWFsIGlkZWxuIHNpZSBhdWNoIGluIE11c3Rlcm4uLi4gKEN1Y2h1bGxpbiwgMTYuIE5vdiAyMDAxLCAxMTowODowOSk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAwNTkwNTAyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU5MDUwMjYKLS0tIEZvbGdlbmRlIFphdWJlcmVyIHNpbmQgYW53ZXNlbmQ6IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICBFbGVuZGlsIGRlciBNYWdpc3RlciAgICAgICAgICAgICAgICAgICAoQWJ3ZWhyKQooaSkgQW5hY3Jpb24gZGVyIE1hZ2lzdGVyICAgICAgICAgICAgICAgICAgKEFid2VocikKICAgIFZhcmRpb24gZGVyIE1hZ2lzdGVyICAgICAgICAgICAgICAgICAgIChBYndlaHIpCihJKSBSYXZlbnRocm9uZSBkZXIgTWFnaXN0ZXIgICAgICAgICAgICAgICAKICAgIFNjb3BlIGRpZSBNYWdpc3RyYSAgICAgICAgICAgICAgICAgICAgIChWZXJ3YW5kbHVuZykKKGopIE9iZXJtb3R6IGRlciBNYWdpc3RlciAgICAgICAgICAgICAgICAgIAogICAgU2F1bCBkZXIgTWVpc3RlcmFud2FlcnRlciAgICAgICAgICAgICAgKEhlbGxzaWNodCkKKEopIExhY3JpIGRpZSBNZWlzdGVyYW53YWVydGVyaW4gICAgICAgICAgIAogICAgQmVvd2FyIGRlciBNZWlzdGVyYW53YWVydGVyICAgICAgICAgICAgCihqKSBUdXJvY2sgZGVyIE1laXN0ZXJhbndhZXJ0ZXIgICAgICAgICAgICAKICAgIEN1Y2h1bGxpbiBkZXIgTWVpc3RlcmFud2FlcnRlciAgICAgICAgIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hbmNobWFsIGlkZWxuIHNpZSBhdWNoIGluIE11c3Rlcm4uLi4gKEFtYXJ5bGxpcywgMTYuIE5vdiAyMDAxLCAxMTowODo0Nyk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAwNTkwNTI4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU5MDUwMjYKQWxzbyBkaWUgImoiIHN0ZWhlbiBmdWVyICJqYW1tZXJuIi4uLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNYW5jaG1hbCBpZGVsbiBzaWUgYXVjaCBpbiBNdXN0ZXJuLi4uIChBbmFjcmlvbiwgMTYuIE5vdiAyMDAxLCAxMTowOTozNSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTAwNTkwNTMyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU5MDUwMjYKRGFubiBiaW4gaWNoIGphIGJlcnVoaWd0LgoKQW5hYyogLSBqYW1tZXJ0IG5pY15oXmheaHNlbHRlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWFuY2htYWwgaWRlbG4gc2llIGF1Y2ggaW4gTXVzdGVybi4uLiAoRm9vYmFyLCAxNi4gTm92IDIwMDEsIDExOjQ0OjU4KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTEwMDU5MDUzNzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1OTA1MDI2CkRhbm4gZmVobGVuIGRhIGFiZXIgbm9jaCAibiIgdW5kICJzIiA7bykKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IChEZWVwYmx1ZSwgMTYuIE5vdiAyMDAxLCAxNjoxMDo1Mik6CltBYmVudGV1ZXI6QmVlbHplYnViXSBhdWdlOiB3aWUga2FubiBpY2ggZGllIGZsZWNodGVuIGVudGZlcm5lbiA/CltBYmVudGV1ZXI6QmVlbHplYnViXSBoaWxmZQpbVG9kOkxhcnNdIERlciB0b2RicmluZ2VuZGUgRmx1Y2ggZGVzIE1vb3Ntb25zdGVycyBoYXQgZ2VyYWRlIEJlZWx6ZWJ1YgpbVG9kOkxhcnNdIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqeml0dGVyKiAoUHVrLCAxNi4gTm92IDIwMDEsIDE5OjM4OjMzKToKRGVyIER1bmtlbGVsZiB3aXJkIERpciBnZXNjaGVoZW4sIHdlbm4gRHUgZ2Voc3QuCgpQdWssIHppdHRlcnQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZhbW91cyBsYXN0IGFjdGlvbi4uLiAoR3JlbGxnZW4sIDE3LiBOb3YgMjAwMSwgMTQ6NDI6NTUpOgpEZXIgUHJpZXN0ZXIgYmVydWVocnQgR2hvc3QgbWl0IHNlaW5lbSBoZWlsaWdlbiBTeW1ib2wgdW5kIEdob3N0IG5pbW10CmtvZXJwZXJsaWNoZSBGb3JtIGFuLiAKR2hvc3QgZ2VodCBuYWNoIFN1ZWRlbi4KW1RvZDpMYXJzXSBFaW4gQmV0dGxlciBoYXQgZ2VyYWRlIEdob3N0IHVtZ2VicmFjaHQuCgpHcmVsbGdlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluIHdlaXNlcyBXb3J0IChHcmVsbGdlbiwgMTcuIE5vdiAyMDAxLCAxNTowMDo1MCk6CkRlaW4gRnJldW5kIHh4eCB0ZWlsdCBEaXIgbWl0OiB1bmQgdW50ZXIgZGVyIGFubmFobWUsIGRhc3MgZ2VsZD16ZWl0IGlzdCwKRGVpbiBGcmV1bmQgeHh4IHRlaWx0IERpciBtaXQ6IHNpbmQgZ2lybHMgPSB6ZWl0IHp1bSBxdWFkcmF0CgpHcmVsbGdlbiwgYmVkb2l0dW54dm9sbCBuaWNrZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbiB3ZWlzZXMgV29ydCAoRWxiZXJldCwgMTcuIE5vdiAyMDAxLCAxNTowMjoxNSk6Cn4jISBybj1HcmVsbGdlbiBydD0xMDA2MDA1NjUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjAwNTY1MApkYSBmZWhsdCBub2NoIHdhcywgYWJlciB3ZW5uIGljaCBkYXMgamV0enQgc2NocmVpYiBmbGllZyBpY2ggYmVpIHdlbSB2b20gRmJhbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWluIHdlaXNlcyBXb3J0IChBbmF0b2wsIDE3LiBOb3YgMjAwMSwgMTU6MDM6MjkpOgp+IyEgcm49RWxiZXJldCBydD0xMDA2MDA1NzM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjAwNTY1MApHZWh0IG1pciBnZW5hdXNvLCBFbGJlcmV0Li4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbiB3ZWlzZXMgV29ydCAoR3JpbW1ib3JuLCAxNy4gTm92IDIwMDEsIDE1OjAzOjM1KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAwNjAwNTczNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDYwMDU2NTAKSG1tLCBhbHNvLCBpY2ggaGFiIGtlaW4gcXVhZHJhdGlzY2hlcyBHZWxkLiBNaXQgdmllbCBHbHVlY2sgaXN0IGVzIHJlY2h0ZWNraWcKc3RhdHQgcnVuZCwgYWJlciBxdWFkcmF0aXNjaCBiaXNoZXIgbmljaHQuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3Qga3JhdHp0IHNpY2ggYW0gS29wcAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRWluIHdlaXNlcyBXb3J0IChFbGJlcmV0LCAxNy4gTm92IDIwMDEsIDE1OjA0OjA3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDA2MDA1ODE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjAwNTY1MAprcmF0eiBudXIgc2Nob2VuIHdlaXRlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaW4gd2Vpc2VzIFdvcnQgKE1hdGlzLCAxNy4gTm92IDIwMDEsIDE2OjMzOjExKToKfiMhIHJuPUdyZWxsZ2VuIHJ0PTEwMDYwMDU2NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2MDA1NjUwCkRlciBXaXR6IGlzdCBkb2NoIGVpZ2VudGxpY2gsIGRhc3MgbWFuIG1pdCBlaW5pZ2VuIHdlaXRlcmVuIEFubmFobWVuCih1LmEuIGRhcyBHZWxkIGRpZSBXdXJ6ZWwgYWxsZW4gVWViZWxzIGlzdCkgZGllIEdsZWljaGVpdCBHaXJsPVVlYmVsCnplaWdlbiBrYW5uLiBJbSBFbmdsaXNjaGVuIGtvbW10IGRhcyBtaXQgIm1vbmV5IGlzIHRoZSByb290IG9mIGFsbCBldmlsIiAKbm9jaCAnbmVuIERldXQgYmVzc2VyIHJ1ZWJlciA7bykuCgpNYXRpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFaW4gd2Vpc2VzIFdvcnQgKEFyaywgMTcuIE5vdiAyMDAxLCAxNjozNToyNyk6Cn4jISBybj1NYXRpcyBydD0xMDA2MDExMTkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjAwNTY1MApHZWxkPVd1cnplbCBhbGxlbiBVZWJlbHMgLT4gV3VyemVsLCBzb2ZvcnQgaGVya29tbWVuLCBpY2ggYnJhdWNoIG1hbCBldHdhcwoxMDAwMCBUZWlsZSB2b24gRGlyLiBQcm9udG8hCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRWluIHdlaXNlcyBXb3J0IChXdXJ6ZWwsIDE3LiBOb3YgMjAwMSwgMTY6MzY6NDEpOgp+IyEgcm49QXJrIHJ0PTEwMDYwMTEzMjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2MDA1NjUwCmljaCBiaW4gZ2VsZD8gc2VsdHNhbWUgYW5uYWhtZS4uLgppY2ggbGFzcyBtaWNoIGFiZXIgbnVyIHVuZ2VybiBpbiB0ZWlsZSB6ZXJsZWdlbi4gZXJnbzogbml4IGdpcHMuCgp3dXJ6ZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVpbiB3ZWlzZXMgV29ydCAoT3JrdG9ldGVyLCAxNy4gTm92IDIwMDEsIDE2OjM3OjAzKToKfiMhIHJuPUFyayBydD0xMDA2MDExMzI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjAwNTY1MApJY2ggZGVua2UgaWNoIHdlcmRlIGF1Y2ggZWluIE1lc3NlciB6dXIgMTAtSmFocmVzcGFydHkgbWl0YnJpbmdlbiB1bmQgbWlyIGVpbgpTdHVlY2sgaGVyYXVzc2NobmVpZGVuIDspCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRWluIHdlaXNlcyBXb3J0IChNb250YW51cywgMTcuIE5vdiAyMDAxLCAxNjozNzozOCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAwNjAxMTQyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDYwMDU2NTAKQXJrIHd1ZXJkZSBkYXp1IHNhZ2VuOiAid2l0emlzY2giLgoKanVzdCBteSAyYwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRWluIHdlaXNlcyBXb3J0IChXdXJ6ZWwsIDE3LiBOb3YgMjAwMSwgMTY6Mzg6MzQpOgp+IyEgcm49TW9udGFudXMgcnQ9MTAwNjAxMTQ1OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDYwMDU2NTAKd2FydGUgYWJlciBtaXQgZGVtIGdlbGFlY2h0ZXIsIGJpcyBkdSBuYWNoIGRlbSB2ZXJzdWNoIHNlaW5lIHVlYmVycmVzdGUKc2llaHN0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFaW4gd2Vpc2VzIFdvcnQgKEFuYXRvbCwgMTcuIE5vdiAyMDAxLCAxNjozODo0MSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAwNjAxMTQyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDYwMDU2NTAKTmFjaCB3YXMgc2NobWVja3QgZWlnZW50bGljaCBSb290IEJlZXI/IE5hY2ggS3VwZmVyPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRWluIHdlaXNlcyBXb3J0IChXdXJ6ZWwsIDE3LiBOb3YgMjAwMSwgMTY6Mzk6MjMpOgp+IyEgcm49QW5hdG9sIHJ0PTEwMDYwMTE1MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2MDA1NjUwCnJvb3QgYmVlciBzY2htZWNrdCBuYWNoIGdla29jaHRlciBzY2hlaXNzZS4gZWlubWFsIHByb2JpZXJlbiByZWljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBFaW4gd2Vpc2VzIFdvcnQgKE1vbnRhbnVzLCAxNy4gTm92IDIwMDEsIDE2OjM5OjI5KToKfiMhIHJuPUFuYXRvbCBydD0xMDA2MDExNTIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjAwNTY1MApXdXJ6ZWxiaWVyPyBOYWphLCBpY2ggd3VlcmQgc2FnZW4sIG5hY2ggQ2hlbWllLiA6LSkKR2FyYW50aWVydCBrZWluZSBWaXRhbWluZSBkcmluLgpWYXJsYXJpb24sIHVlYmVybmVobWVuIFNpZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEVpbiB3ZWlzZXMgV29ydCAoQW5hdG9sLCAxNy4gTm92IDIwMDEsIDE2OjM5OjUxKToKfiMhIHJuPVd1cnplbCBydD0xMDA2MDExNTYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjAwNTY1MApEYWhlciBhbHNvIERlaW5lIEFmZmluaXRhZXQgenUgQWJvcnRlbi4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEVpbiB3ZWlzZXMgV29ydCAoRWxiZXJldCwgMTcuIE5vdiAyMDAxLCAxNjo0MDozMSk6Cn4jISBybj1BbmF0b2wgcnQ9MTAwNjAxMTU5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDYwMDU2NTAKZGEgbXVzcyBpY2ggd3VyemVsIGFiZXIgZWNodCByZWNodCBnZWJlbiwgaWNoIHdlaXNzIG5jaWh0IGdlbmF1IHdpZSBzY2hlaXNzZQpzY2htZWNrdCwgYWJlciBzbyBzdGVsbCBpY2ggbXVpciBkYXMgdm9yIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBFaW4gd2Vpc2VzIFdvcnQgKE1vbnRhbnVzLCAxNy4gTm92IDIwMDEsIDE2OjQyOjAzKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAwNjAxMTYzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDYwMDU2NTAKTmFqYSwgV3VyemVsIHNjaGVpbnQgZXMgenUgd2lzc2VuLgpCaXNoZXIgaGF0dGUgaWNoIGphIG51ciBHdXRlcyB2b24gc2VpbmVuIEtvY2hrdWVuc3RlbiBnZWhvZXJ0LCBhYmVyIHdlbm4gZXIKc293YXMgaW4gc2VpbmUgS29jaHRvZXBmZSB0dXQsIGRhbm4gbW9lY2h0ZSBpY2ggZGEgbGllYmVyIG5pY2h0IGRpcHBlZ3VnZ2UuCjotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRWluIHdlaXNlcyBXb3J0IChBbmF0b2wsIDE3LiBOb3YgMjAwMSwgMTY6NDI6MjgpOgp+IyEgcm49TW9udGFudXMgcnQ9MTAwNjAxMTcyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDYwMDU2NTAKV2FocnNjaGVpbmxpY2gga29jaHQgZXIgaW4gZGVyIE1lbnNhLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBFaW4gd2Vpc2VzIFdvcnQgKFZhcmxhcmlvbiwgMTcuIE5vdiAyMDAxLCAxNjo0NDowNCk6Cn4jISBybj1BbmF0b2wgcnQ9MTAwNjAxMTc0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDYwMDU2NTAKV3VyemVsPUdlbGQsIGF1c3NlcmRlbSBnaWJ0IGVzIHZpdGFtaW5mcmVpZXMgQmllciwgd2FzIGF1cyBpaG0gZ2VtYWNodCB3aXJkLgpLbGFyLCBkYXNzIGRhcyBlbnR3ZWRlciBuYWNoIE1ldGFsbCBvZGVyIG5hY2ggUGFwaWVyIHNjaG1lY2t0LiBJc3QgamV0enQKbmF0dWVybGljaCBkaWUgRnJhZ2UsIG9iIGRpZXNlcyBCaWVyIHdlcnR2b2xsIGlzdC4uLgoKVmFybCosIHd1ZXJkZSBzb3dhcyBuaWNodG1hbCB0cmlua2VuLCB3ZW5uIGVzIGdhcmFudGllcnQgMTAwJSB2aXRhbWluZnJlaSBpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBFaW4gd2Vpc2VzIFdvcnQgKEFuYXRvbCwgMTcuIE5vdiAyMDAxLCAxNjo0NDozMCk6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTAwNjAxMTg0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDYwMDU2NTAKSnVuZ3MuIE1hZWRlbHMuIFdpciBzaW5kIGltIGZhbHNjaGVuIFRocmVhZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogRWluIHdlaXNlcyBXb3J0IChWYXJsYXJpb24sIDE3LiBOb3YgMjAwMSwgMTY6NDQ6NDYpOgp+IyEgcm49QW5hdG9sIHJ0PTEwMDYwMTE4NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2MDA1NjUwClZhcmxhcmlvbiBuaWNrdCBBbmF0b2wgenUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBFaW4gd2Vpc2VzIFdvcnQgKEdsb2luc29uLCAxNy4gTm92IDIwMDEsIDE3OjEwOjA1KToKfiMhIHJuPVd1cnplbCBydD0xMDA2MDExNTYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjAwNTY1MApNaWNoIGhhdHMgYW4gaXJnZW5kIGVpbmVyIHdpZGVybGljaGUgTWVkaXppbiB6dSBPc3R6ZWl0ZW4gZXJpbm5lcnQuIEZyYWcgbWljaApudXIgd2llIFJvZGRlbmJlcnJ5JkNvIGRhcyBhbHMgX2Rhc18gR2V0cmFlbmsgZnVlciBTdGFyZmxlZXQgd2FlaGxlbiBrb25udGVuCjopCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBFaW4gd2Vpc2VzIFdvcnQgKFd1cnplbCwgMTcuIE5vdiAyMDAxLCAxNzoxMTowMSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDA2MDEzNDA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjAwNTY1MApmdWVyIGdlbGQgdHVuIG1hbmNoZSBsZXV0ZSBhbGxlcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktvYm9sZGUuLiAoQ3VjaHVsbGluLCAxNy4gTm92IDIwMDEsIDE3OjE2OjU5KToKRWluIGtsZWluZXIgS29ib2xkIHRlaWx0IERpciBmb2xnZW5kZXMgbWl0OgpYeHh4eHh4eCB0ZWlsdCBEaXIgbWl0OiBobW1wZi4gZGVyIGRlbGZlbm1hZ2llciBoYXQgZGF1ZXJuZCBudXIgd2FzIGljaCBOSUNIVApYeHh4eHh4eCB0ZWlsdCBEaXIgbWl0OiBicmF1Y2hlIFswMjoyN10KPiB1aHJ6ZWl0ClNhbSwgMTcuIE5vdiAyMDAxLCAxNzoxNjowNy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUb2FzdGJyb3QgKFZhcmxhcmlvbiwgMTcuIE5vdiAyMDAxLCAxNzozNTo0MCk6Cn4jISBybj1FbGl6YWJldGggcnQ9MTAwNjAxNDg4OCByZz1tZWdhc2NobWFycm4KfiMhIHRpZD0xMDA2MDE0NzkxCmdldG9hc3RldCBvZGVyIHVuZ2V0b2FzdGV0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVG9hc3Ricm90IChNdXBmZWwsIDE3LiBOb3YgMjAwMSwgMTk6NDE6NTApOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMDYwMTQ5NDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2MDE0NzkxClVuZCBkZXIgU2llZ2VyIGdlaHQgZGFubiBpbiBMZWxldiAyOiBpc3MgZWluZW4gQmllcmRlY2tlbCBpbiB3ZW5pZ2VyIGFscyAxCk1pbnV0ZQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFRvYXN0YnJvdCAoVmFybGFyaW9uLCAxNy4gTm92IDIwMDEsIDE5OjQzOjAyKToKfiMhIHJuPU11cGZlbCBydD0xMDA2MDIyNTEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjAxNDc5MQpEdSBiaXN0IGltIGZhbHNjaGVuIFRocmVhZCwgTXVwZmVsLiBBbiBEZWluZXIgU3RlbGxlIHd1ZXJkIGljaCBkYSBhdWNoIG5pY2h0Cnp1IGxhdXQgcnVtdG9lbmVuLCBJbWRhIHNwaWVsdCBqYSBhdWNoIG5vY2ggbWl0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBUb2FzdGJyb3QgKEVsYmVyZXQsIDE3LiBOb3YgMjAwMSwgMTk6NDM6MjcpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMDYwMjI1ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2MDE0NzkxCmltZGEgaGF0IGtlaW5lIENoYW5jZSwgZXMgc2VpIGRlbm4gZXIgZmFlbmd0IG1pdCBkZXIgTGViZXIgYW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFRvYXN0YnJvdCAoTW9udGFudXMsIDE3LiBOb3YgMjAwMSwgMTk6NDQ6MDUpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMDYwMjI1ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2MDE0NzkxCnBhY2sgbmUgc2NoZWliZSBTYWxhbWkgYXVmIGRlbiBCaWVyZGVja2VsLCBwcmVzcyBuZSBUb21hdGUgZHJ1ZWJlciB1bmQgZXR3YXMKUmVpYmVrYWVzZSwgc2NoaWVicyBpbiBPZmVuIC0gaWNoIGdsYXViLCBkYSB3dWVyZGVuIGVpbmlnZSBoZWlzcyBoaW50ZXJoZXIKc2Vpbi4uLiBuaWNodCB3YWhyLCBWYXJsKiA/IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRWluIHdlaXNlcyBXb3J0IChTY2h3dWJiZWwsIDE4LiBOb3YgMjAwMSwgMTA6MjQ6NDYpOgp+IyEgcm49V3VyemVsIHJ0PTEwMDYwMTE1NjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2MDA1NjUwCldlbm4gZHUgZ2VybiBuYWNoIEFtZXJpa2EgZmFlaHJzdCwgc29sbHRlc3QgZHUgaW1tZXIgbmUgRG9zZSB2b24gZGVtIFpldWcgaW0KS3VlaGxzY2hyYW5rIGhhYmVuLiBLb21tdCBkYXMgRmVybndlaCA9PiBlaW4gU2NobHVjayBSb290YmVlciwgdW5kIGR1IGJpc3QKZnVlciBlaW4gSmFociBrdXJpZXJ0LgpEYXMgWmV1ZyBzY2htZWNrdCBuYWNoIGFsbGVtLCBudXIgbmljaHQgbmFjaCBCaWVyIChoYXQgYXVjaCBOdWxsIEFsa29ob2wpLgoKU2Nod3ViYmVsLApub2NoIGZ1ZXJjaHRlcmxpY2hlIEVyaW5uZXJ1bmdlbiBhbiBlaW5lIFByb2JlZG9zZSBhbSBCcnljZSBDYW55b24gaGFiZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBFaW4gd2Vpc2VzIFdvcnQgKEJhbWJpLCAxOC4gTm92IDIwMDEsIDEzOjA1OjIzKToKfiMhIHJuPVNjaHd1YmJlbCBydD0xMDA2MDc1NDg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjAwNTY1MApTY2htZWNrdCBuaWNodCBuYWNoIEJpZXI/IERhcyBtYWNodCBkYXMgWmV1ZyBnbGVpY2ggdmllbCBzeW1wYXRpc2NoZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3YXMgZGVubiBudSAuLi4gKERhcmt3aW5nLCAxOC4gTm92IDIwMDEsIDEzOjE1OjI1KToKW1RlYW0gTUhLOlNhcmtvbl0gbXVzcyBrdXJ6IGxhZW5nZXIgcGF1c2UgbWFjaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBFaW4gd2Vpc2VzIFdvcnQgKEdsb2luc29uLCAxOC4gTm92IDIwMDEsIDEzOjQ5OjM4KToKfiMhIHJuPUJhbWJpIHJ0PTEwMDYwODUxMjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2MDA1NjUwCldpciBzb2xsdGVuIERpY2ggendpbmdlbiB2b24gZGVyIEhleGVucGlzc2UgbWFsIHp3ZWkgTGl0ZXIgenUgdmVyZHJ1ZWNrZW4gOikKCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IExhZ3RzPyAoWmFybml5YSwgMTkuIE5vdiAyMDAxLCAwOToxMjoxNik6Cn4jISBybj1GYW50YWdoaXJvIHJ0PTEwMDU4Mzc2NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2CkhtbW0gaGFiIGljaCBkYSB3YXMgZmFsc2NoIHZlcnN0YW5kZW4/IEljaCBmaW5kIGRpZSBBbnphaGwgZGVyIFN0YXRpb25lbiBpbQpUcmFjZXJvdXRlIHVud2ljaHRpZy4uLiBkaWUgbXMgc2luZCBkb2NoIHdpY2h0aWcuLi4gd2FzIG51ZXR6dCBkYXMsIHdlbm4gbWFuCm51ciB1ZWJlciA1IFN0YXRpb25lbiBnZWh0LCBhYmVyIDEyMCBtcyBicmF1Y2h0PyAKCk1hcmMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IExhZ3RzPyAoTGlhcmEsIDE5LiBOb3YgMjAwMSwgMTI6NTY6MzgpOgp+IyEgcm49WmFybml5YSBydD0xMDA2MTU3NTM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgpOZWluLCBEdSBoYXN0IG5pY2h0cyBmYWxzY2ggdmVyc3RhbmRlbi4gRGVpbiBBcnRpa2VsIHN0ZWh0IGFiZXIgaW0gU2NobWFycm4uCjstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbiB3ZWlzZXMgV29ydCAoSGlnaHQsIDE5LiBOb3YgMjAwMSwgMTM6NTM6MjcpOgp+IyEgcm49R3JlbGxnZW4gcnQ9MTAwNjAwNTY1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDYwMDU2NTAKZGFzIGdlaHQgbmljaCB3ZWl0ZXIKCmdyaWxzID0gdGltZSArIG1vbmV5CnRpbWUgPSBtb25leQotPiBncmlscyA9IG1vbmV5XjIKbW9uZXk9d3VyemVsKGV2aWwpCi0+IGdyaW5zID0gZXZpbAoKaGlnaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWluIHdlaXNlcyBXb3J0IChHcmltbWJvcm4sIDE5LiBOb3YgMjAwMSwgMTM6NTU6MjcpOgp+IyEgcm49SGlnaHQgcnQ9MTAwNjE3NDQwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDYwMDU2NTAKSW50ZXJlc3NhbnRlIFJlY2h0c2NocmVpYnVuZywgbXVzcyBpY2ggc2Nob24gc2FnZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEVpbiB3ZWlzZXMgV29ydCAoSGlnaHQsIDE5LiBOb3YgMjAwMSwgMTQ6MDE6MTUpOgp+IyEgcm49U2Nod3ViYmVsIHJ0PTEwMDYwNzU0ODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2MDA1NjUwCipsYWNoKiBzZWxiZXIgc2NodWxkIHdlbm4gaWhyIGRhcyB6ZXVnIHRyaW5rdCAuLi4KCkhpZ2h0IGZyaXNzdCBsaWViZXIgbiBraWxvIHRhYmxldHRlbiBvaG5lIHdhcyB6dSB0cmluZWtuIGFscyByb290YmVlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRWluIHdlaXNlcyBXb3J0IChTaWx2YW5hLCAxOS4gTm92IDIwMDEsIDE1OjI1OjU0KToKfiMhIHJuPUhpZ2h0IHJ0PTEwMDYxNzQ4NzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2MDA1NjUwCldlbm4gaWNoIG1pciBkZW4gQXJ0aWtlbCA5NyB2b24gRGlyIChhbHNvIGRyZWkgdm9yIGRpZXNlbSBoaWVyKSBhbnNlaGUsIGdsYXViCmljaCBkYXMgc29mb3J0LgoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBFaW4gd2Vpc2VzIFdvcnQgKEFuYWNyaW9uLCAxOS4gTm92IDIwMDEsIDE2OjI1OjMxKToKfiMhIHJuPVNpbHZhbmEgcnQ9MTAwNjE3OTk1NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDYwMDU2NTAKCkFsc28gdGltZSA9IG1vbmV5CkRhbm4gaXN0IHRpbWUgKyBtb25leSBhYmVyIDIqbW9uZXkgdW5kIG5pY2h0IG1vbmV5XjIgLi4uCgpBbmFjKiAoa2x1Z3NjaGVpc3NlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRWluIHdlaXNlcyBXb3J0IChQaXRmYWxsLCAxOS4gTm92IDIwMDEsIDE2OjU2OjAzKToKfiMhIHJuPUFuYWNyaW9uIHJ0PTEwMDYxODM1MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2MDA1NjUwCmZhbGxzIHRpbWUgPSBtb25leSA9IDIgaXN0IHN0aW1tdHMgZG9jaC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEVpbiB3ZWlzZXMgV29ydCAoTGlhcmEsIDE5LiBOb3YgMjAwMSwgMTY6NTc6MDkpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDA2MTg1MzYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjAwNTY1MApFcyBtdWVzc3RlIGdpcmxzPWV2aWxeMiBvZGVyIGdpcmxzPWV2aWwqMiBoZWlzc2VuIC4uLiA/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEVpbiB3ZWlzZXMgV29ydCAoSXZvLCAxOS4gTm92IDIwMDEsIDE3OjIzOjEyKToKfiMhIHJuPUxpYXJhIHJ0PTEwMDYxODU0Mjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2MDA1NjUwCkRhbmtlIExpYXJhLCBudW4gaGFiIGF1Y2ggaWNoIGRlbiBBcnRpa2VsIDk3IHZlcnN0YW5kZW47KQoKR3J1c3MsIEl2bwoKUFM6IGRhcyBncmlscyBnaXJscyBoZWlzc2VuIGtvZW5uZW4sIG51bmphLCBhYmVyIGdyaW5zID8gKkcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKENyb2Z0LCAxOS4gTm92IDIwMDEsIDE3OjUyOjU4KToKW0FiZW50ZXVlcjpDbGF1ZF0gd2VuIG11c3MgbWFuIG5vY2htYWwgYW5ncmVpZmVuLCBkYW1pdCBtYW4gYXVmIEdJIGtvbW10PwpbQWJlbnRldWVyOkhhdWtlXSBlaW5lbiBvcmt3YWVjaHRlci4KW1RvZDpMYXJzXSBFaW4gT3JrIGhhdCBnZXJhZGUgQ2xhdWQgdW1nZWJyYWNodC4KCkhhdWtlIGhhZXR0ZSB2aWVsbGVpY2h0IG5vY2ggc2FnZW4gc29sbGVuLCB3ZWxjaGVuIE9ya3dhZWNodGVyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBMYWd0cz8gKFRpYW1haywgMTkuIE5vdiAyMDAxLCAxODoyNjoxNCk6Cn4jISBybj1aYXJuaXlhIHJ0PTEwMDYxNTc1MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2CldlbiBpbnRlcmVzc2llcmVuIHNjaG9uIDEyMG1zPwoKTWV0emVsbiBrYW5uIG1hbiBvaG5lIG5lbm5lbnN3ZXJ0ZSBCZWVpbnRyYWVjaHRpZ3VuZ2VuIG5vY2ggYmlzIGxvY2tlcgozMDBtcy1QaW5ncy4gSmVkZXIsIGRlciBkYXMgR2VnZW50ZWlsIGJlaGF1cHRldCwgaXN0IGVpbiBKYW1tZXJsYXBwZW4uIF06LT4KCgpUaWFtYWsuIEV4LU1vZGVtYmVzaXR6ZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBMYWd0cz8gKEdsb2luc29uLCAxOS4gTm92IDIwMDEsIDE5OjE0OjU1KToKfiMhIHJuPVRpYW1hayBydD0xMDA2MTkwNzc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgpPY2gsICduZSBoYWxiZSBTZWt1bmRlIGdpbmcgYXVjaCBub2NoLiBEYSBoYXQgbWFuIHNpY2ggZWJlbiBnYW56IGdlbmF1CnVlYmVybGVndCB3YW5uIG1hbiB6dW0gZ3Jvc3NlbiBNb25zdGVyIHJlaW5zcHJpbmd0LiBBYiBlaW5lciBTZWt1bmRlIHd1cmRlIGVzCmFiZXIgcG90ZW50aWVsbCB0b2VkbGljaCBiZWkgZ3JvZXNzZXJlbiBBdWZnYWJlbi4KCkdsb2luKHNvbiksIEV4LWF1cy1EcmVzZGVuLW5hY2gtTXVlbnN0ZXItU2NoZWlzcy1MZWl0dW5nLW1hbmNobWFsLU11ZGRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYm9lc2VyIFdhbmRsZXIgKFRyYXVtYSwgMTkuIE5vdiAyMDAxLCAyMTowMTo0MCk6CltuXQpTY2hpbGZsYW5kc2NoYWZ0LgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogc3VlZGVuIHVuZCBub3Jkb3N0ZW4uCkVpbiBXYW5kbGVyLgpEZXIgV2FuZGxlciBnZWh0IGluICBkaWUgU2NoaWxmbGFuZHNjaGFmdC4KW25vXQpIbW0sIGluIGRlciBTY2hpbGZsYW5kc2NoYWZ0IGlzdCBlcyB6aWVtbGljaCBsYW5nd2VpbGlnIGZ1ZXIgZWluZW4gc28KZXJmYWhyZW5lbiBaYXViZXJlciB3aWUgRGljaC4gVmllbGVpY2h0IHNvbGx0ZXN0IER1IERpciBsaWViZXIgYW5kZXJlIEF1ZmdhYmVuCnN1Y2hlbi4KClNvIGVpbiBGZWlnbGluZyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IExhZ3RzPyAoV29vZHksIDE5LiBOb3YgMjAwMSwgMjI6MTU6MDEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAwNjE5MzY5NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4MjYyMDYKRnJhZyBtYWwgdW5zIE9lc2lzLCB3YXMgd2lyIGluIGRlciBaZWl0IHZvciBURU4tMzQgKGNhLiAxOTk2KQpnZW1hY2h0IGhhYmVuLi4uIDEgU2VrdW5kZSBMYWcgZ2FicyBtYXhpbWFsIGFiIE1pdHRlcm5hY2h0IDopClVuZCBhbGxlcyBsaWVmIHVlYmVyIEx5b24uIE5hamEuCgpXb29keSAod2lsbCB3b3JrIGZvciBiYW5kd2lkdGgpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IExhZ3RzPyAoR3JpbW1ib3JuLCAxOS4gTm92IDIwMDEsIDIyOjE2OjQ4KToKfiMhIHJuPVdvb2R5IHJ0PTEwMDYyMDQ1MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA1ODI2MjA2CkljaCBlcmlubmVyZSBtaWNoLiBJbiBnZXdpc3NlciBXZWlzZSB3YXJlbiBkaWUgT2VzaXMgZGFtYWxzIGRhcyB3YXMgaGV1dGUgZGllClphdWJpcyBzaW5kOiBFaW5lIFF1ZWxsZSBzdGFlbmRpZ2VyIEphbW1lcmVpLiA6LSkKTmFqYSwgenVtaW5kZXN0IGJpcyBtYW4gZGFzIHNlbGJlciBtYWwgZXJsZWJ0IGhhdC4uLiB1bmQgZWlnZW50bGljaCBpc3QgZGFzCmVyc3RhdW5saWNoIHdhcyBtYW4gZGFtYWxzIG1pdCBzb2xjaGVuIGxhZ3MgYWxsZXMgaGF0IHJlaXNzZW4ga29lbm5lbi4KCkdkQSwgd2FlaHJlbmQgZGVyIGdlc2FtdGVuIFNlaGVyemVpdCBpbiBTY2h3ZWRlbiB1bmQgbWl0IGFlaG5saWNoZW4gTGVpdHVuZ2VuCmthZW1wZmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGJvZXNlciBXYW5kbGVyIChCYW1iaSwgMTkuIE5vdiAyMDAxLCAyMzo1MTowMCk6Cn4jISBybj1UcmF1bWEgcnQ9MTAwNjIwMDEwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDYyMDAxMDAKSGFzdCBEdSB3ZW5pZ3N0ZW5zIGVpbmVuIFR5cG8gYWJnZXNldHp0IG9kZXIgaGFzdCBEdSBudXIgZmFsc2NoIGFiZ2V0aXBwdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBMYWd0cz8gKEFuYXRvbCwgMjAuIE5vdiAyMDAxLCAwMTowMzoxOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwNjIwNDYwOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDU4MjYyMDYKT2NoLCBPc25hYnJ1ZWNrIHdhciBhdWNoIG5pY2h0IHNvIHZpZWwgYmVzc2VyLiBEaWUgZ2FuemUgVW5pIGhpbmcgYW4KNjRrQml0IChKQVdPSEwsIF9rXykuIEFscyBpY2ggbWljaCBkYXMgZXJzdGUgbWFsIGltIEFuZGVybGFuZCwgZGFzIGRhbWFscwppbSBOYWNoYmFyZ2ViYWV1ZGUsIGluIGRlciBQaHlzaWssIGdlc3RhcnRldCB3dXJkZSwgZWlubG9nZ3RlLCBlbnRmdWhyCm1pciBlaW4gTGF1dCBkZXMgRXJzdGF1bmRlbnM6IFdpZSwgZGVyIEthbXBmIHNjcm9sbHQgaW0gWndlaXNla3VuZGVudGFrdCE/CgpBbmF0b2wsIGRlciBtaXQgT2VzaS1MYWcgKGNlcnRpZmllZCBieSBXb29keSkgU2VoZXIgd3VyZGUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVz8gKEFuYXRvbCwgMjAuIE5vdiAyMDAxLCAxNTo0NTo0OCk6Cls8TWFzdGVSPjpVZ2ldIHdhaCA/Cls8TWFzdGVSPjpQaXRmYWxsXSB2b3JoZXIgZmFlbGx0IG5hcnMgOikKW1RvZDpMYXJzXSBEZXIgRHJhY2hlIE5hcnMgaGF0IGdlcmFkZSBQaXRmYWxsIHVtZ2VicmFjaHQuCltUb2Q6RGVyIERyYWNoZSBOYXJzIHdpbmRldCBzaWNoIHZvciBMYWNoZW4uXQoKQW5hc2V1ZnoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBMYWd0cz8gKE1vbnRhbnVzLCAyMC4gTm92IDIwMDEsIDE3OjU1OjEwKToKfiMhIHJuPUFuYXRvbCBydD0xMDA2MjE0NTk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgpGcmFndCBtYWwgQ2FsdW0uCkRlciBoYXQgZ2FueiBNb3JvbiBtaXQgbmVyIDlrQml0LUxlaXR1bmcgaG9jaGdlbGFkZW4sIHdhcyBpaG4gbWVocmVyZSBOYWVjaHRlCmdla29zdGV0IGhhdC4gQWJlciBkYW1hbHMgd2FyZW4gd2lyIGphIGFsbGUgbm9jaCBqdW5nIHVuZCB3YWhuc2lubmlnLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBMYWd0cz8gKE9ya3RvZXRlciwgMjAuIE5vdiAyMDAxLCAxODowNDo1OCk6Cn4jISBybj1Nb250YW51cyBydD0xMDA2Mjc1MzEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgpXYXIgZGFzIGRlciBHcnVuZCwgd2FydW0gYXVzIGRlciBnZXBsYW50ZW4gUXVlc3QgbmllIGV0d2FzIGdld29yZGVuIGlzdD8gKmcqCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IExhZ3RzPyAoV3VyemVsLCAyMC4gTm92IDIwMDEsIDIzOjQ2OjU3KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDA2Mjc1ODk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNTgyNjIwNgp3ZWljaGVpZXIuIG1laW5lIGVyc3RlbiBtdWQtdmVyc3VjaGUgdm9uIHp1aGF1c2UgYXVzIGhhYmUgaWNoIG1pdCBkZW0gZ3V0ZW4KYWx0ZW4gMzAwIGJhdWQgYWt1c3Rpa2tvcHBsZXIgZ2VtYWNodC4uLiBkYXMgd2FyIGFsbGVyZGluZ3MgZGVtIGRhbWFsaWdlbgptdWQgKGxhbmdlIGJldm9yIGVzIG1vcmdlbmdyYXVlbiBnYWIpIGR1cmNoYXVzIGFuZ2VwYXNzdCwgdm9uIGRlciB1bmkgbXVzc3RlCmljaCBnZW5hdXNvIGxhbmdlIGF1ZiByZXNwb25zZSB3YXJ0ZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbHRzYW0gLi4uLiAoTW9yZ290aCwgMjEuIE5vdiAyMDAxLCAwMDowMToxNSk6CgpEdSB0ZWlsc3QgVWdpIG1pdDogLS0+IHNpbHZhbmEKU2lsdmFuYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKRHUgdGVpbHN0IFVnaSBtaXQ6IGFyZ2wKVW5hc2FpIGh1ZXBmdCB3aWxkIHVuZCBhdXNnZWxhc3NlbiBhdXMgZGVyIEZlcm5lIHVtIERpY2ggaGVydW0uClVuYXNhaSB2ZXJuZWlndCBzaWNoIGdyYXppb2VzIGF1cyBkZXIgRmVybmUgdm9yIERpci4KRXMgc2luZCBudXIgbm9jaCAwIFN0dW5kZW4gYmlzIHp1ciBFd2lna2VpdC4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ2hpbmVzaXNjaCBmdWVyIEFtZXJpa2FuZXIgKEFuZmFlbmdlcmt1cnMpIChBbmF0b2wsIDIxLiBOb3YgMjAwMSwgMDA6NDA6MjYpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMDYyOTM0MTYgcmc9d2l0emUKfiMhIHRpZD0xMDA2MjkzNDE2ClVuZCBkb3J0LCB3byBEdSBkYXMgZ2VrbGF1dCBoYXN0LCBob2ZmZW4gc2llIG5vY2ggaW1tZXIsIER1IG1vZWdlc3QgCndpZWRlciB6dSBtdWRkZW4gYXVmaG9lcmVuLCBvZGVyPyA7bykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMYWcgaW4gZGVyIEFyZW5hLi4uIChPcmt0b2V0ZXIsIDIxLiBOb3YgMjAwMSwgMTc6MTE6MzEpOgpMYWcsIG9kZXIgaXN0IGRlciBBcmVuYXNwcmVjaGVyIHNlaW5lciBaZWl0IGhpbnRlcmhlcj8KVW5kIHdhcnVtIHNjaGxhZWd0IEhlbGdhIG5vY2ggYXVmIGVpbmVuIFRvdGVuIGVpbj8KCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgpIZWxnYSBzaWVodCBldHdhcyBtaXRnZW5vbW1lbiBhdXMuCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgpFcyB3aXJkIHNwYW5uZW5kISBIZWxnYSB3aXJkIHZvbiBzZWhyIGhhcnRlbiBTY2hsYWVnZW4gZ2V0cm9mZmVuIQpbVG9kOkxhcnNdIEhlbGdhIGhhdCBnZXJhZGUgU2VraSB1bWdlYnJhY2h0LgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKU2VraSBtdXNzIFRyZWZmZXIgaGlubmVobWVuLgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKRGllIGVudHNjaGVpZGVuZGUgUGhhc2UhIERhcyBFbmRlIHZvbiBTZWtpIGlzdCBzY2hvbiBzZWhyIG5haGUhIQpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKV2FzIGZ1ZXIgZWluIEthbXBmISEgRG9jaCBhdWNoIGhldXRlIGJsZWlidCBIZWxnYSB1bmJlc2llZ3QhICAgCgpGcmFnZW4gdWViZXIgRnJhZ2VuLi4uLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMYWcgaW4gZGVyIEFyZW5hLi4uIChHcmltbWJvcm4sIDIxLiBOb3YgMjAwMSwgMTc6MTM6MDkpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMDYzNTkwOTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2MzU5MDkxCkRlciBBcmVuYXNwcmVjaGVyIHdhciBzY2hvbiB6dSBtZWluZW4gU3BpZWxlcnplaXRlbiBlaW5lIGxhaG1lIFNjaG5lY2tlLCBpbW1lcgpkZW4gRXJlaWduaXNzZW4gaGludGVyaGVyLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTEFJRU5IQUZURSBOT0NLRU4hIChHbm9tZSwgMjEuIE5vdiAyMDAxLCAxOToyODo0Mik6Cn4jISBybj1MaWFyYSBydD0xMDA2MjU1NzY5IHJnPXd3dwp+IyEgdGlkPTEwMDYyNTU3NjkKTD4gIlByaW56aXBpZWxsIGlzdCBzb3dhcyB3b2hsIHJlaWNobGljaCB1bmludGVyZXNzYW50LC4uLiIKCm9jaC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIE11aCwgaWNoIHd1c3N0ZSBlcyA6KSAoRWxiZXJldCwgMjEuIE5vdiAyMDAxLCAyMDoxMzo0OCk6ClZvbiBGcmV1bmQgRm9vYmFyOiAiU2hvdyBmb3IgZWFjaCBvcmRlciBwcmlvcml0eSAoaW4gY3JlYXNpbmcKVm9uIEZyZXVuZCBGb29iYXI6IG9yZGVyKSB0aGUgbG9uZ2VzdCBwZXJpb2QgaW4gZGF5cyBmcm9tIHRoZQpWb24gRnJldW5kIEZvb2JhcjogcGxhY2VtZW50IG9mIGFuIG9yZGVyIGJ5ClZvbiBGcmV1bmQgRGVlcGJsdWU6IE11aCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnN0cmlja2VuPz8/IChHbm9tZSwgMjEuIE5vdiAyMDAxLCAyMDoyNjo1MCk6CkVsYWluZSBuaW1tdCBkaWUgU3RyaWNrbmFkZWwuCkVsYWluZSBnaWJ0IERpciBkaWUgU3RyaWNrbmFkZWwuCkh1c3QhIEtldWNoISBIYWx0IGRpciBkb2NoIHdlbmlnc3RlbnMgZGllIEhhbmQgdm9yIGRlbiBNdW5kIQpFbGFpbmUgcGZlaWZ0IGVpbiB1bnNjaHVsZGlnJyBMaWVkY2hlbi4KRHUgc2Fnc3Q6IHdpZSBtZWluZW4/CkVsYWluZSBzYWd0OiBvY2ggbnVleCA6KQpFbGFpbmUgc2FndDogSWNoIGRhY2h0ZSB2aWVsbGVpY2h0IGthbm5zdCBEdSBkaWUgZ2VicmF1Y2hlbiA6KQoKYnJpZXNlbD8gZGllIGZyYXVlbiBoYWJlbiBuaXggbWVociB6dSB0dW4hCgpnbk9tZSwgZW50cnVlc3RldAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uTmV0ZGlnZXN0Li4uIChGb29iYXIsIDIxLiBOb3YgMjAwMSwgMjE6NDc6MjYpOgpGcm9tOiBGcmFuayAnS2Vsc2hvbicgU2NobWlkdCA8QmFsdG9uX1d5dEBnbXgubmV0PgpOZXdzZ3JvdXBzOiBkZS5jb21wLm9zLnVuaXgubGludXgubWlzYwpTdWJqZWN0OiBSZTogY3J5cHRvIEZTCkRhdGU6IE1vbiwgMTkgTm92IDIwMDEgMTE6Mzk6MjcgKzAxMDAKCkFuZHJlYXMgRGVscCA8YW5kcmVhc2RlbHBAZ214LmRlPiA6Cgo+IE51ciBzY2hlaW50IGVzIGtlcm5lbGkub3JnIG5pY2h0IG1laHIgenUgZ2ViZW4uCj4gV2FzIGlzdCBkYSBsb3MgPwoKRGVyIEROUy1TZXJ2ZXJsaSBtYWcgZGllIFZlcm5pZWRsaWNodW5nIGRlcyBVUkxpIG5pY2h0LCBzbyBkYXNzIGRlcgpCcm93c2VybGkgZGFzIEFkcmVzc2xpIG5pY2h0IGZpbmRlbiBrYW5uLiAKCkZyYW5raQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJnaC4uLiAoQXBvcGhpcywgMjIuIE5vdiAyMDAxLCAwMDo1NTo1OSk6CkR1IGxhZXNzdCBlaW5lIG1pdHRsZXJlIEt1Z2VsIGF1cyBGZXVlciBlbnRzdGVoZW4uCkR1IHNjaGxldWRlcnN0IGRpZSBLdWdlbCBpbiBkZXMgWndlcmdzIFJpY2h0dW5nLgpEZWluIEZldWVyYmFsbCByb2VzdGV0IGRlbiBad2VyZyBhdWYga2xlaW5lciBGbGFtbWUuCkRlaW4gRmV1ZXJiYWxsIHZlcmJyZW5udCBkZW4gT2JlcmF1ZnNlaGVyIGZhc3QgenUgQXNjaGUuCkRlciBPYmVyYXVmc2VoZXIgZmFlbGx0IHdpZSBlaW4gQmF1bSB1bS4KRHUgaGFzdCBEaWNoIGdlcmFkZSBpbSBVbWdhbmcgbWl0IGRlbSBaYXViZXJzdGFiIHZlcmJlc3NlcnQuCkRlaW4gWmF1YmVyc3RhYiB1bnRlcnN0dWV0enQgRGljaCBiZWkgZGVtIFNwcnVjaC4KQXBvcGhpcyB2ZXJmZWhsdCBkZW4gWndlcmcuCkRlciBad2VyZyB2ZXJmZWhsdCBEaWNoLgpEdSBncmVpZnN0IGRlbiBad2VyZyBtaXQgYnJlbm5lbmRlbiBIYWVuZGVuIGFuLgpEdSB0cmlmZnN0IGRlbiBad2VyZyBzZWhyIGhhcnQuCkFwb3BoaXMgdmVyZmVobHQgZGVuIFp3ZXJnLgpEZXIgWndlcmcga3JhdHp0IEFwb3BoaXMuCkR1IHNjaGxhZWdzdCBkZW4gWndlcmcgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KRGVyIFp3ZXJnIGZhZWxsdCB0b3QgenUgQm9kZW4uCkRpZSBibGFldWxpY2ggc2NoaW1tZXJuZGUgU2NodXR6YXVyYSB1bSBEaWNoIGxvZXN0IHNpY2ggbGFuZ3NhbSBhdWYuCkVpbiBad2VyZyBrb21tdCBhbi4KRWluIE9iZXJhdWZzZWhlciBrb21tdCBhbi4KRWluIE9iZXJhdWZzZWhlciB6dWVja3QgZWluIEVpc2VsZmVuc2Nod2VydC4KRWluIE9iZXJhdWZzZWhlciB6aWVodCBlaW5lbiBFaXNlbGZlbmhlbG0gYW4uCkVpbiBPYmVyYXVmc2VoZXIgemllaHQgZWluZW4gRWlzZWxmZW5wYW56ZXIgYW4uCkVpbiBPYmVyYXVmc2VoZXIgemllaHQgZWluZW4gUG9sYXItQnV0dG9uIGFuLgoKaWNoIGxpZWJlIGRhcyA6cAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVm9yc2NobGFnIChUcm95LCAyMi4gTm92IDIwMDEsIDA4OjUwOjU2KToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAwNjM3MDc4NCBvZz1wYXJ0eQp+IyEgcm49RWxpemFiZXRoIHJ0PTEwMDYzNzA3NzQgcmc9cGFydHkKfiMhIHRpZD0xMDA2MzcwNDE0CmVyIG1laW50IG1pY2ggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFZvcnNjaGxhZyAoVHJveSwgMjIuIE5vdiAyMDAxLCAwODo1MTowMCk6Cn4jISBvbj1FbGl6YWJldGggb3Q9MTAwNjM3MDc3NCBvZz1wYXJ0eQp+IyEgcm49Rm9vYmFyIHJ0PTEwMDYzNzA3NDYgcmc9cGFydHkKfiMhIHRpZD0xMDA2MzcwNDE0CmJlaXNwaWVsID8/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogbWFsIHdpZWRlciBwdWl6Li4uLiAoVHJveSwgMjIuIE5vdiAyMDAxLCAwODo1MTowNCk6Cn4jISBvbj1FbGl6YWJldGggb3Q9MTAwNjM3MTE2NCBvZz1wYXJ0eQp+IyEgcm49SHVtbmkgcnQ9MTAwNTU1OTAxMSByZz1wdWl6Cn4jISB0aWQ9MTAwNTU1NzU5MgpBYmVyLCBiZWRpbmd1bmcgaXN0IG5vY2gsIHdlaXNzZXMgaGFudHVjaCB1bSBkaWUgaHVlZnRlbiBiZWkgbWFlbm5saWNoZW4KbWFzc2V1cmVuIDspKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVm9yc2NobGFnIChUcm95LCAyMi4gTm92IDIwMDEsIDA4OjUxOjA4KToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAwNjM3MDc2OCBvZz1wYXJ0eQp+IyEgcm49Rm9vYmFyIHJ0PTEwMDYzNzA3NDYgcmc9cGFydHkKfiMhIHRpZD0xMDA2MzcwNDE0CmRhcyB3dWVyZCBpY2ggYXVjaCBmdWVyIERpY2ggdWViZXJuZWhtZW4gRm9vYmFyIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBWb3JzY2hsYWcgKFRyb3ksIDIyLiBOb3YgMjAwMSwgMDg6NTE6MTApOgp+IyEgb249Rm9vYmFyIG90PTEwMDYzNzA3NDYgb2c9cGFydHkKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDA2MzcwNjQxIHJnPXBhcnR5Cn4jISB0aWQ9MTAwNjM3MDQxNApPY2gsIHNvIGVpbiBNYXNzYWtyaWVyLVdvcmtzaG9wIGhhZXR0ZSBhYmVyIGF1Y2ggd2FzLiBJY2ggd3Vlc3N0ZSBlaW5lbiBIYXVmZW4KZ2VlaWduZXRlciBQYXRpZW50ZW4uCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFZvcnNjaGxhZyAoVHJveSwgMjIuIE5vdiAyMDAxLCAwODo1MToxMik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTAwNjM3MDY0MSBvZz1wYXJ0eQp+IyEgcm49Rm9vYmFyIHJ0PTEwMDYzNzA1OTIgcmc9cGFydHkKfiMhIHRpZD0xMDA2MzcwNDE0CiJNYXNzaWVyZW4iLCBuaWNodCAibWFzc2FrcmllcmVuIi4gRHUgaGFzdCBkYSB3YXMgdmVyd2VjaHNlbHQsIHNjaGFldHplIGljaC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBWb3JzY2hsYWcgKFRyb3ksIDIyLiBOb3YgMjAwMSwgMDg6NTE6MTQpOgp+IyEgb249Rm9vYmFyIG90PTEwMDYzNzA1OTIgb2c9cGFydHkKfiMhIHJuPUVsYmVyZXQgcnQ9MTAwNjM3MDU3NiByZz1wYXJ0eQp+IyEgdGlkPTEwMDYzNzA0MTQKSWNoIGF1Y2guCgpGb29iYXIgenVlY2t0IHNjaG9uIG1hbCBkaWUgQXh0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBMQUlFTkhBRlRFIE5PQ0tFTiEgKEdyaW1tYm9ybiwgMjIuIE5vdiAyMDAxLCAxMjoxMToyNyk6Cn4jISBybj1Benp1cm8gcnQ9MTAwNjQyNzMwNiByZz13d3cKfiMhIHRpZD0xMDA2MjU1NzY5CkR1IHNvbGx0ZXN0IHNjaGxldW5pZ3N0IGRlbiBSZWNobmVyIGF1c3NjaGFsdGVuLCBkYXMgaXN0IGVpbiBWaXJ1cyBkZXIKYW5zb25zdGVuIERlaW5lIEZlc3RwbGF0dGUgaW4ga2xlaW5lIFNjaG5pcHNlbCB6ZXJsZWd0LCBkYXMgTmV0enRlaWwgYW56dWVuZGV0CnVuZCB1ZWJlciBkZW4gU3Ryb21rcmVpcyBzYWVtdGxpY2hlIEdsdWVoYmlybmVuIGltIEhhdXMgZXhwbG9kaWVyZW4gbGFlc3N0Li4uCgpHcmltbSJvaG5lIGpzY3JpcHQgJiBDby4gaW4gbWFpbHMgd2FlcmUgZGFzIG5pY2h0IHBhc3NpZXJ0ImJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IHZvcndhcm51bmcsIGxlcm5lbiBJICh2b24gSUlJKSAoR3JpbW1ib3JuLCAyMi4gTm92IDIwMDEsIDEzOjM2OjIyKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDA2NDMyNTcwIG9nPWdpbGRlbi56YXViZXJlcgp+IyEgcm49UGF0cnluIHJ0PTEwMDY0MzI0NTAgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTAwNjQyOTU3MQpKYSwgYWJlciBkZXIgbnV0enQgRGlyIGVoZXIgbmljaHRzLCBkYSBtdXNzIG1hbiBuYWVtbGljaCB2b3JoZXIgYW5rbGlja2VuICJpY2gKYmluIGFlbHRlciBhbHMgMTggSmFocmUiIG9kZXIgImljaCBiaW4ganVlbmdlciBhbHMgMTggSmFocmUiLCB1bmQgZGFtaXQKZmxpZWdzdCBEdSBkYW5uIGF1dG9tYXRpc2NoIHdpZWRlciByYXVzLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiB2b3J3YXJudW5nLCBsZXJuZW4gSSAodm9uIElJSSkgKFBhdHJ5biwgMjIuIE5vdiAyMDAxLCAxMzozNzo1MSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwNjQzMjU4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY0Mjk1NzEKd2llLCBkYSBiZWtvbW1lbiBudXIga2luZGVyIHdhZmZlbj8gYWxzbyBzb3dhcwoKLS0gCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogdm9yd2FybnVuZywgbGVybmVuIEkgKHZvbiBJSUkpIChHcmltbWJvcm4sIDIyLiBOb3YgMjAwMSwgMTQ6MDM6MzUpOgp+IyEgcm49UGF0cnluIHJ0PTEwMDY0MzI2NzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NDI5NTcxCkViZW4gZ2VuYXUgbmljaHQuIFVuZCB2ZXJtdXRsaWNoIGhhYmVuIHNpZSBkZW4gbGluayAiaWNoIGJpbiBtdWRkZXIgdW5kIGRhaGVyCmdlbmVyZWxsIG5pY2h0IHp1cmVjaG51bmdzZmFlaGlnIiB2ZXJnZXNzZW4sIG1pdCBkZW0gbWFuIHNvZm9ydCBhbGxlcyBrcmllZ3QuCkltbWVyaGluIGhhYmVuIGRpZSBqYSBlaW4gSW50ZXJlc3NlIGFuIFdlcmJ1bmcsIHVuZCBzaW5kIGFsc28gZWhlciBkcmFuCmludGVyZXNzaWVydCBhbiBMZXV0ZSB6dSB2ZXJrYXVmZW4gZGllIGVzIGF1Y2ggcHVibGlrdW1zd2lya3NhbSBlaW5zZXR6ZW4gYWxzCmFuIExldXRlIGRpZSBzaWNoIGRhcyBudXIgZGVrb3JhdGl2IGFuIGRpZSBXYW5kIGhhZW5nZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRlciBUVUVWaVQuLi4gKEFwb3BoaXMsIDIyLiBOb3YgMjAwMSwgMTQ6MzE6NDcpOgoKaHR0cDovL3d3dy5ldS5taWNyb3NvZnQuY29tL2dlcm1hbnkvdGhlbWVuL3BpcmF0ZXJpZS9wcm9kdWt0YWt0aXZpZXJ1bmcvdHVldi9kCmVmYXVsdC5odG0KCndpZSB3YXIgZGFzIGRvY2ggZ2xlaWNoIG1pdCBkZW4gaHVuZGVydGVuIExldXRlbiwgZGllIGlociBYUCBiZWkgQW1hem9uCmJlc3RlbGx0IGhhdHRlbiB1bmQgZXMgZGFubiBuaWNodCBha3RpdmllcmVuIGtvbm50ZW4/CgogLi4uQXBvcGhpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGRlciBUVUVWaVQuLi4gKEJvaW5nLCAyMi4gTm92IDIwMDEsIDE1OjE4OjI5KToKfiMhIHJuPUFwb3BoaXMgcnQ9MTAwNjQzNTkwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY0MzU5MDcKSWNoIHdlaXNzIG5pY2h0IHdpZSBkYXMgbWl0IGRlbiBodW5kZXJ0ZW4gTGV1dGVuIHdhciwgc2Fnc3QgRHUgZXMgbWlyPwpCencuIGxpZWZlciBhbSBiZXN0ZW4gZ2xlaWNoIG5lIFF1ZWxsZW5hbmdhYmUgLi4uIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZGVyIFRVRVZpVC4uLiAoQXBvcGhpcywgMjIuIE5vdiAyMDAxLCAxNToyNDowNSk6Cn4jISBybj1Cb2luZyBydD0xMDA2NDM4NzA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjQzNTkwNwpoYXR0IGljaCBnbGF0dCB2ZXJnZXNzZW4sCgogaHR0cDovL3d3dy5oZWlzZS5kZS9uZXdzdGlja2VyL2RhdGEvcHMtMDIuMTEuMDEtMDAxLwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZGVyIFRVRVZpVC4uLiAoQm9pbmcsIDIyLiBOb3YgMjAwMSwgMTU6MjY6NTgpOgp+IyEgcm49QXBvcGhpcyBydD0xMDA2NDM5MDQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjQzNTkwNwpEYW5rZSBzY2hvZW4hCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNaXlhZ2kgaXN0IGpldHp0IGVpbmUgU2VoZXJpbiEgKFpvb2ssIDIyLiBOb3YgMjAwMSwgMTc6NDE6MDYpOgp+IyEgcm49TWVybGluIHJ0PTEwMDYzOTM3MTggcmc9c3R1ZmVuCn4jISB0aWQ9MTAwNjM5MzcxOApPaCwgbnVuIGdlaHQgZXMgU2NobGFnIGF1ZiBTY2hsYWc/IAoKWm9vayBncmluc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgKEZvb2JhciwgMjMuIE5vdiAyMDAxLCAwMDo1NjozMCk6CktsZWluZSBBbm1lcmt1bmcgdm9uIG1pciAoRm9vYmFyKTogQWxzIGljaCBkZW4gVHJhaWxlciBzYWggaGFiIGljaCBhZWhubGljaGVzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KTWVzc2FnZS1JRDogPDNCRkExMTY2LkUwNUVEQTI5QGRmZC5kbHIuZGU+CkZyb206IEdlb3JnZSBFbGxpcyA8ZWxsaXNAZGZkLmRsci5kZT4KTmV3c2dyb3VwczogZGUucmVjLmZpbG0ubWlzYwpTdWJqZWN0OiBSZTogU1cgRXBpZG9lMiBoZXV0ZSEhIQpEYXRlOiBUdWUsIDIwIE5vdiAyMDAxIDA5OjE2OjM4ICswMTAwCgoKTXVzdGFmYSBCYXlkYXIgc2NocmllYjogCj4gUmFpbmVyIEJlaHJlbmR0IHdyb3RlOgo+PiJTZWJhc3RpYW4gR3J1bmRzY2hvZXR0ZWwiIDx3YWtlbWVub3dAaG90bWFpbC5jb20+IHNjaHJpZWIgZm9sZ2VuZGVzOgo+Pgo+Pj5EZXIgVHJhaWxlciBsYWV1ZnQgaGV1dCB3aWVkZXIgYXVmIFBybyBzaWViZW4gMjAuMTMhCj4+VW5kPyBNYW4ga29lbm50ZSBqYSBiYWxkIGFubmVobWVuLCBkYXMgZGllcyBlaW5lcyBkZXIgV2VsdHd1bmRlciB3YWVyZS4KPiBJc3QgZXMgYXVjaC4gOi0pCgo/Pz8KCj4gVW5kIGhhZXR0ZSBkaWUgaWNoIGRpZSBORyBmcnVlaGVyIGdlbGVzZW4sIGhhZXR0ZSBpY2ggZXMgbmljaHQgaGFsYgo+IHZlcnBhc3N0Li4uCgpFcGlzb2RlIElJIGtvZW5udGUgLSBnbGF1YnQgbWFuIGRlbSBuZXVlbiBUcmFpbGVyIC0gYXVjaCAiU2lzc2lzIFJ1ZWNrLQprZWhyIiBoZWlzc2VuLCBzbyB0cmFuaWctc2NobWFsemlnIHdhciBkYXMuIEZhc3QgbnVyIHJvbWFudGlzY2hlIFN6ZW5lbgpyZWluZ2VzY2huaXR0ZW4sIHVuZCBhbSBFbmRlIGVpbiBiaXNoZXJoZW4gTGFzZXJzY2h3ZXJ0Z2VoYXVlIHVuZCBmbGllLQpnZW5kZSBSYXVtc2NoaWZmZSwgZGFtaXQgZGllIExldXRlIG1lcmtlbiwgZGFzcyBlcyBlYmVuIF9uaWNodF8gZGVyClRyYWlsZXIgZnVlciBlaW5lbiBuZXVlbiBTaXNzaS1GaWxtIGlzdC4gT2ggd2VpLgoKICAgICAgICBHZW9yZ2UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJlcmxpbiAoQW1hcnlsbGlzLCAyMy4gTm92IDIwMDEsIDEyOjA0OjUwKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMDY1MTM0MTkgcmc9dHJlZmZlbgp+IyEgdGlkPTEwMDY0NzEyNzgKSGFuZi1NdXNldW0/Ck5laW4gZGFua2UsIGRhIGhhZW5nZW4gaW1tZXIgZGllc2UgZ2FuemVuIEthcHV0dGVuIHJ1bSA6LSkKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEJlcmxpbiAoSXNpLCAyMy4gTm92IDIwMDEsIDE4OjMxOjEwKToKfiMhIHJuPUxpbmZsYXMgcnQ9MTAwNjUzNjU2MCByZz10cmVmZmVuCn4jISB0aWQ9MTAwNjQ3MTI3OAp0eXBvcyBzaW5kIG5pY2h0IHNjaGxpbW0sIHNjaGxpbW0gaXN0IGhvZWNoc3RlbiwgZGFzcyB3ZXIKc3RhbmRhcmQgbWl0ICd0JyBzY2hyZWlidCAKKG1laW4gZGV1dHNjaGxlaHJlciBkYXp1IC0gZGFzIGlzdCBkb2NoIGtlaW5lIHN0YW5kYXJ0ZSkKaXNpIChtb3Vzc2V3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgYmVpIFZhcmxhcmlvbi4uLiAoTXVwZmVsLCAyMy4gTm92IDIwMDEsIDIyOjUyOjMzKToKJCBmaW5kZSB6b29rCkR1IHNldHp0IGRpY2ggYXVmIGVpbmVzIGRlciBrdXNjaGVsaWdlbiBXb2xrZW5zb2Zhcywgd2VsY2hlcyBzaWNoCnNvZm9ydCBkZWluZW0gS29lcnBlciBhbnBhc3N0LgpEaWVzZXIgT3J0IHZlcmhlaXNzdCBFbnRzcGFubnVuZyBwdXIsIGhpZXIga2FubiBtYW4gdW5nZXN0b2VydAptaXQgZ3V0ZW4gRnJldW5kZW4gZWluIFNjaHdhZXR6Y2hlbiBoYWx0ZW4uCk5hdHVlcmxpY2gga2FubiBtYW4gc2ljaCBhdWNoIGF1ZiBkZXIgZmxhdXNjaGlnLXdlaWNoZW4gV29sa2UKZWlucm9sbGVuIHVuZCBlaW4gTmlja2VyY2hlbiBtYWNoZW4uCkNvbnRlbnQ6CiAxLiBab29rIC4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uIGkuIFsvbWFnaWVyOnpvb2tdCiAyLiBUaWFtYWsgLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uIGkuIFsvbWFnaWVyOnRpYW1ha10KCm5lZWlza2xhci4uLgoKLW11cGZlbC0gKGtlbm50IFRpYW1ha3MgdHJpY2tpZ2VuIFdvcmtyb29tIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCwgYmVpIFZhcmxhcmlvbi4uLiAoVmFybGFyaW9uLCAyMy4gTm92IDIwMDEsIDIyOjU0OjMxKToKfiMhIHJuPU11cGZlbCBydD0xMDA2NTUyMzUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjU1MjM1MwpXV1dBQUFBQUFBQUFBQUFBQUFBQUFISEhISEhISEhISEhISEhISEhISEhISEhISEhISCBibGVpYnQgbWlyIGJsb3NzIHZvbSBMZWliIQoKVmFybCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoLCBiZWkgVmFybGFyaW9uLi4uIChUaWFtYWssIDIzLiBOb3YgMjAwMSwgMjM6MDE6NDcpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMDY1NTIzNTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NTUyMzUzClZvbiB3ZWdlbiAiaGllciBrYW5uIG1hbiB1bmdlc3RvZXJ0IG1pdCBndXRlbiBGcmV1bmRlbiBlaW4gU2Nod2FldHpjaGVuCmhhbHRlbiIgLi4uIGJlbGF1c2NodCB1bmQgdmVycmF0ZW4gd2lyZCBtYW4hIEJldHJ1ZyBpc3QgZGFzLCBqYXdvbGwhCgoKVGlhbWFrLiBTY2h3ZXIgZW50dGFldXNjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWxpY2gsIGJlaSBWYXJsYXJpb24uLi4gKFZhcmxhcmlvbiwgMjMuIE5vdiAyMDAxLCAyMzowNDo1Mik6Cn4jISBybj1UaWFtYWsgcnQ9MTAwNjU1MjkwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY1NTIzNTMKUmljaHRpZywgV29sa2VuZnJpZWRlbnNicnVjaCBpc3QgZGFzIQoKVmFybCosIGZ1ZWhsdCBzaWNoIGJlb2JhY2h0ZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLm5ldGRpZ2VzdC4uLiAoRm9vYmFyLCAyNC4gTm92IDIwMDEsIDAwOjM1OjM1KToKRnJvbTogSGFydG11dCAnSGFyZHknIFNjaGlzemxlciA8c2NoaXN6bGVyQHdlYi5kZT4KRGF0ZTogV2VkLCAyMSBOb3YgMjAwMSAxMzo0ODo1NyArMDEwMApNZXNzYWdlLUlEOiA8OXRnN3JyJDJkaGZpJDVASUQtODI4MDEubmV3cy5kZm5jaXMuZGU+CgpIYWxsb2xlLCBPbiBXZWQsIDIxIE5vdiAyMDAxIDEyOjQzOjEwICswMTAwLCAiU3RlZmFuIEthdWVyaG9mIgo8bWFpMDFkc2ZAc3R1ZHNlcnYudW5pLWxlaXB6aWcuZGU+IHdyb3RlOgoKPkljaCBiaW4gamVkb2NoIGFlIExhaWJkenNjaGVyIAoKPE9UPgpEYSBmYWVsbHQgbWlyIGRvY2ggZWluIEFuZWtkb2VkY2hlbiBlaW4uCkt1cnogbmFjaCBHcmVuem9lZmZudW5nIGZpbmQgYmVpIHVucyBlaW5lIEtvbGxlZ2luIGF1cyBMZWlwemlnIGFuIHp1CmFyYmVpdGVuLiBzaWUgYmVub2V0aWd0ZSBuYXR1ZXJsaWNoIGVpbmVuIFJlaXNlcGFzcyBhbHMgQnVuZGVzYnVlcmdlci4KQXVkIGRlbSBFaW53b2huZXJtZWxkZWFtdCBpbiBCYWQgU2NoKioqYmFjaCBsaWVzcyBzaWUgc2ljaCBkYW5uIGF1Y2gKZWluZW4gYXVzc3RlbGxlbi4gRGllIG5vdHdlbmRpZ2VuIEFuZ2FiZW4gbWFjaHRlIHNpZSBtdWVuZGxpY2gsIGRpZQpzYWNoYmVhcmJlaXRlcmluIHRydWcgZGFzIGRhbm4gZWluIG0gRm9ybXVsYXIuCk5hY2ggZXJoYWx0IG9nLiBBdXN3ZWlzZG9rdW1lbnRzIGtvbnRyb2xsaWVydGUgc2llIGRpZSBFaW50cmFlZ2UgdW5kCmxhcyBiZWkgR2VidXJ0c29ydDoiTGFlYmR6c2NoIgoKVHNjaHVlYnVlcyBIYXJkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTm8gQ29tbWVudCAoVmFybGFyaW9uLCAyNC4gTm92IDIwMDEsIDAzOjI2OjAwKToKTXVwZmVsIHp1ZWNrdCBzZWluZW4gU3BhemllcnN0b2NrIHVuZCB3aXJmdCBzZWluIEdlYmlzcyB6dSBQYXBpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGFybWxvc2UgV29sZnNtZW5zY2hlbiAoQW5hY3Jpb24sIDI0LiBOb3YgMjAwMSwgMjA6MTI6NTMpOgoKICAuLi4uS2xlcnVzL0JsaXR6Li4uLi4uLiBEdS4uLi4uLi4uLi4uIDogVmFnbmFyZCBlaW4uLiAqKioqKioqKiAtPiBzZWhyIGhhcnQKICAuLi4ubm9ybWFsL1BsYS1Wb2xsc3RyZSBEdS4uLi4uLi4uLi4uIDogV29sZnNtZW5zY2guLiAqKioqKioqKiAtPiB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvc3BpdHplbiBaYWVoIFdvbGZzbWVuc2NoLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIEtyYWNoZW4KICAuLi4ubm9ybWFsL3NwaXR6ZW4gWmFlaCBXb2xmc21lbnNjaC4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSBLcmFjaGVuCiAgLi4uLm5vcm1hbC9zcGl0emVuIFphZWggV29sZnNtZW5zY2guLiA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gS3JhY2hlbgogIC4uLi5ub3JtYWwvc3BpdHplbiBaYWVoIFdvbGZzbWVuc2NoLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIEtyYWNoZW4KICAuLi4ubm9ybWFsL3NwaXR6ZW4gWmFlaCBXb2xmc21lbnNjaC4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSBLcmFjaGVuCiAgLi4uLm5vcm1hbC9IYWVuZGVuLi4uLi4gVmFnbmFyZC4uLi4uLiA6IERpY2guLi4uLi4uLi4gKioqKioqKiogPC0gS3JhY2hlbgoKU293YXMgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouLi5OZXRkaWdlc3QgLSB1bmQgV2ViLU5vY2tlbiAoRm9vYmFyLCAyNC4gTm92IDIwMDEsIDIyOjM4OjI1KToKRnJvbTogQW5kcmVhcyBTY2h3YXJ6IDxhbmRyZWFzLnNjaHdhcnpAZ214LmRlPgpOZXdzZ3JvdXBzOiBkZS5hZG1pbi5uZXQtYWJ1c2UubWFpbApTdWJqZWN0OiBHcmF1c2FtIHVlYmVyc2V0enRlIFNwYW0tTWFpbHMKRGF0ZTogMjMgTm92IDIwMDEgMjE6Mjk6NTMgR01UCk1lc3NhZ2UtSUQ6IDxYbnM5MTYyRTREQzE1MDBGYW5kcmVhc3N3ZWJkZUAxMzAuMTMzLjEuND4KCkhhbGxvLAoKYWxzIHdhZXJlbiAyMCBTcGFtLU1haWxzIHBybyBUYWcgbmljaHQgc2Nob24gZ2VudWcsIHNpbmQgaGV1dGUgZWluIHBhYXIgdm9uIApCYWJiZWxmaXNjaCBhdWZzIGdyYXVzYW1zdGUgdmVyc3R1ZW1tZWx0ZSB1bmQgbWFzc2FrcmllcnRlIE1haWxzIGJlaSBtaXIgCmVpbmdldHJvZmZlbiwgYXVzIGRlbmVuIGljaCBldWNoIGVpbiBwYWFyIFppdGF0ZSBuaWNodCB2b3JlbnRoYWx0ZW4gbW9lY2h0ZToKCiI1MCwwMDAgbmV1ZSBob2hlIFplcmxlZ3VuZ2ZvdG9zIgoiUmVhbGUgIFhYWCBXZWItTm9ja2VuISIKIklociBBbnRyYWcgdW5zZXJlIGV4a2x1c2l2ZSBHZXNjaGxlY2h0dmVyZWluIHp1enVncmVpZmVuIGFuZ2Vub21tZW4gd29yZGVuIgoiaW50ZXJha3RpdmVzIGRpbGRvZ2VzY2hsZWNodCIKIlBoYXNlbmdlc2NobGVjaHRlcnNjaGVpbmVuIgoiU2llIHp1IHZhbGlkaWVyZW4gWnVncmlmZiBBTlNDSExVU1NTVElGVCAhIgoiU2llIGhpZXIsIHVtIElocmVuIEFOU0NITFVTU1NUSUZUIHp1IHZhbGlkaWVyZW4iCgpSZWljaHQgZGFzIGZ1ZXIgZWluZSBBbnplaWdlIGdlZ2VuIEFsdGF2aXN0YT8KClVlYnJpZ2VuczogbmljaHQgZGFzcyBpY2ggU3BhbW1lciBmdWVyIHNvbmRlcmxpY2ggaW50ZWxsaWdlbnQgaGFsdGUsIGFiZXIgZXMgCnNvbGx0ZSBkb2NoIHNlbGJzdCBkZW0gZHVlbW1zdGVuIElkaW90ZW4gYmVrYW5udCBzZWluLCBkYXNzIG1hbiBIVE1MLUNvZGUgCm5pY2h0IGF1Y2ggbm9jaCBkdXJjaCBkZW4gVWViZXJzZXR6ZXIgamFnZW4gc29sbHRlLiBPZGVyPwoKTWZHCkFuZHJlYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvIHdpciBkb2NoIGdyYWQgYmVpIEJhYmVsZmlzaCBzaW5kLi4uIChBcG9sbG9uaWEsIDI1LiBOb3YgMjAwMSwgMDk6MjM6NTcpOgpVZWJlcnNldHp1bmcgdm9tIERldXRzY2hlbiBpbnMgRW5nbGlzY2hlIHVuZCB6dXJ1ZWNrLi4uIAoKM3ggZHVlcmZ0IGlociByYXRlbiwgd2VsY2hlciBSYXVtIGRhcyBpc3QuLi4gKmdyaW5zKgoKU2llIGthbWVuIHp1IGRlbSBTdGFkdC1HYXR0ZXIgdm9uIFBvcnRuaWNodGlnZW0sIGRhcyBkaXJla3Qgdm9yIElobmVuCmF1Zmdlc3RlbGx0IHdpcmQuICBJbiBkZXIgd2VzdGxpY2hlbiBSaWNodHVuZyBmdWVocnQgZGllIG5pY2h0aWdlcmUKUG9ydGRhdGVuYmFobiBpbiBkaWUgZ3Jvc3NlLCB3ZWl0ZSBXZWx0YXVzc2Vuc2VpdGUgdW5kIGluIGRlcgpvZXN0bGljaGVuIFJpY2h0dW5nIHp1bSBncm9zc2VuIFN0YWR0emVudHJ1bSBkZXMgS2FuYWxzLiAgRGVyIGRpcmVrdApTdWVkZW4gdm9uIElobmVuLCBkaXJla3QgbmViZW4gZGVtIFN0YWR0LUdhdHRlciBTaWUgc2VoZW4gZGFzIGVub3JtZQpHYXR0ZXIgZWluZXMgZW5vcm1lcmVuIFBhbGFzdGVzIGRlciBTdGlsbGUgdm9yIElobmVuIHN0ZWlnZW4uICBTaWUKc2V0enRlbiBJaHJlbiBLb3BmdGV4dCBpbiBkZW4gQW5zYXR6LCB1bSB6dSBrb2VubmVuLCBpaG4gdm9sbHN0YWVuZGlnCnp1IGJldHJhY2h0ZW4uICBFaW4gZ3Jvc3NlcyBaZWljaGVuIGhhZW5ndCB1ZWJlciBkZW0gSW5wdXRnYXR0ZXIuCgoKQXBvKgpoYXQgaGVyemxpY2ggZ2VsYWNodCAtIHVuZCBkYXMgYW0gZnJ1ZWhlbiBNb3JnZW4gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV28gd2lyIGRvY2ggZ3JhZCBiZWkgQmFiZWxmaXNoIHNpbmQuLi4gKE1vbywgMjUuIE5vdiAyMDAxLCAxNDoyMDowMCk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTAwNjY3NjYzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY2NzY2MzcKV28gaXN0biBkYSBkZXIgU2FuZHRpZ2VyPwoKQWJlciBhdWNoIGVpbm1hbC1VZWJlcnNldHp1bmdlbiBrb2VubmVuIHNjaHdpZXJpZyBzZWluOgoxeCB2b24gRGV1dHNjaCBuYWNoIEVuZ2xpc2NoOgoiQ29uZGl0aW9uYWNlaW5pdGlhbHNpdHVhdGlvbmR1Y2tzIgoKV2FzIGRhcz8KCk1vbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNYW5kcmFnb24sIDI1LiBOb3YgMjAwMSwgMTg6MzQ6MTIpOgoKRGVpbiBGcmV1bmQgUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiBkc2wgc3RyZXNzdC4uLgpbVG9kOkxhcnNdIEVpbiBLaW5kIGhhdCBnZXJhZGUgUGl0ZmFsbCB1bWdlYnJhY2h0LgoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERlZXBibHVlLCAyNS4gTm92IDIwMDEsIDE4OjM0OjI0KToKUGl0ZmFsbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEgICAgICAgICAgICAgICAgICAgClBpdGZhbGwgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApEZWluIEZyZXVuZCBQaXRmYWxsIHRlaWx0IERpciBtaXQ6IGRzbCBzdHJlc3N0Li4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKW1RvZDpMYXJzXSBFaW4gS2luZCBoYXQgZ2VyYWRlIFBpdGZhbGwgdW1nZWJyYWNodC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgCgoKSmFqYSwgaW1tZXIgaXN0IGRpZSBUZWxla29tIGRyYW4gc2NodWxkLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBQYXJhenplcmVuenplbiAoTWFuZHJhZ29uLCAyNS4gTm92IDIwMDEsIDIwOjU4OjI3KToKfiMhIG9uPU1hbmRyYWdvbiBvdD0xMDA2NzE4Mjk5IG9nPWQudW50ZXJ3ZWx0Cn4jISBybj1Hbm9tZSBydD0xMDA2NzE4MjY1IHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9MTAwNjY5MTgwMQpQZXJmZWt0ZSBadWt1ZnQgPwoKRGllIGhhZXR0ZSBpY2ggYXVjaCBnZXJuZS4KCk1hKiAKClAuUy4gSmEgaWNoIHZlcmxlZ2UgZXMgc2VsYmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTb25kZXJzdGF0aSBLYXJsc3J1aGUuIChWYXJsYXJpb24sIDI1LiBOb3YgMjAwMSwgMjI6Mjk6MDkpOgp+IyEgcm49QmFtYmkgcnQ9MTAwNjcyMzYxOCByZz10cmVmZmVuCn4jISB0aWQ9MTAwNjcwNTUxNQpJc3QgZGFzIHBocm9laGxpY2hlIEtuZWlwZW5zdWNoZW4sIHdpZSBlcyBrdWVyemxpY2ggaW4gTXVlbnN0ZXIgc3RhdHRmYW5kLCBudW4KYmVpIGV1Y2ggaW4gS2FybHNydWhlIGFuZ2VzYWd0PyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU29uZGVyc3RhdGkgS2FybHNydWhlLiAoQ3JvZnQsIDI1LiBOb3YgMjAwMSwgMjI6MzA6MjEpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMDY3MjM3NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NzA1NTE1CkplaW4uICBJc3QgbnVyIHVuc2VyZSBEdW1taGVpdCB6dXp1c2NocmVpYmVuIGRhcyB3aXIgZXMgaW0gTWVpZXJob2YKdmVyc3VjaHQgaGFiZW4uICBEZXIgaGF0IFNvbm4tIHVuZCBGZWllcnRhZ3MgZGljaHQsIHVuZCBkYXMgbWl0IEZlaWVydGFncwp3aXNzZW4gd2lyIGVpZ2VudGxpY2ggenVyIEdlbnVlZ2UuICBEYXMgbWl0IGRlbSAnWnVtIERyYWNoZW4nIHdhciBlaW5mYWNoCm51ciBQZWNoIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU29uZGVyc3RhdGkgS2FybHNydWhlLiAoV3VyemVsLCAyNS4gTm92IDIwMDEsIDIzOjI3OjE2KToKfiMhIHJuPUNyb2Z0IHJ0PTEwMDY3MjM4MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NzA1NTE1Cmthbm4gdWVicmlnZW5zIGJlc3RhZXRpZ2VuLCBkYXNzIG1hbiBkZW4gbWVpZXJob2Ygc2VociBlaW5mYWNoIGZpbmRlbiBrYW5uLgp3b2xsdGUgbWljaCBnZXJhZGUgYXVmIGRpZSBzdWNoZSBtYWNoZW4sIGRhIHN0YW5kIGljaCBzY2hvbiB2b3IgZGVyIHR1ZXIuLi4Kd2FzIGljaCBhYmVyIG5pY2h0IGJlc3RhZXRpZ2VuIGthbm4gaXN0LCBkYXNzIGVzIHNpY2ggdW0gZGllIGdlbXVldGxpY2hzdGUKa25laXBlIHZvbiBrYXJsc3J1aGUgaGFuZGVsdC4gZWluIGVpbmZhY2hlciBzdWNoYWxnb3JpdGhtdXMgKCJzY2hhdW4gbWVyIG1hbCIpCmZ1ZWhydCB6dSBiZXNzZXJlbiBlcmdlYm5pc3Nlbi4gd2FzIGFiZXIgbmljaHRzIHVlYmVyIGRpZSBxdWFsaXRhZXQgZGVyIGdhZXN0ZQphdXNzYWd0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU29uZGVyc3RhdGkgS2FybHNydWhlLiAoQ3JvZnQsIDI1LiBOb3YgMjAwMSwgMjM6MzM6MDApOgp+IyEgcm49V3VyemVsIHJ0PTEwMDY3MjcyMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NzA1NTE1CldlciBoYXQgYmVoYXVwdGV0IGRhcyBlcyBzaWNoIHVtIGRpZSBnZW11ZXRsaWNoc3RlIEtuZWlwZSB2b24gS2FybHNydWhlCmhhbmRlbHQ/IDotKSAgRGFzIGlzdCBlaW5mYWNoIG51ciBlaW5lIGdhbnogbmV0dGUgU3R1ZGktIHVuZCBTdGF0aS1LbmVpcGUKdW5kIG1laHIgbmljaHQgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbmRsaWNoIGhhYiBpY2ggYXVjaCBtYWwgc28gbmVuIGx1c3RpZ2VzIFRlaWwgYmVrb21tZW4gKE1lc2lyaWksIDI2LiBOb3YgMjAwMSwgMTM6NDQ6NDYpOgpTdWJqZWN0OiBJY2ggd3VlbnNjaGUgU2llIG5pY2h0IG1laW5lbiBHZXNjaGxlY2h0cGljcyBhdXNzZW5kZW4KCgpIYWxsbywgd2lyIGxhZGVuIFNpZSB6dSB1bnNlcmVuIDcyIFN0dW5kZW4gR2VzY2hsZWNodHN0YWRpdW0gZWluLiBJaHIKS2VubndvcnQgaXN0IFRUNjdZSDg1LiBFcyB3aXJkIGlubmVyaGFsYiAzIFRhZ2UgZ2Vsb2VzY2h0LgpLbGlja2VuIFNpZSBoaWVyLCB1bSBJaHIgS2VubndvcnQgNzIgU3R1bmRlbiBsYW5nCnZhbGlkaWVyZW4KaHR0cDovL3d3dy50ZXJyYS5lcy9wZXJzb25hbDgvc3VzYW4xMzI2CkVyc3RlciBUYWc6IEdlc2NobGVjaHRmaWxtaGFuZGVsbi4gMTAwMCBMZXV0ZSBiaWV0ZW4gSWhuZW4gbmV1ZSBncm9zc2UKRmlsbWUgYW4sIHVtIHp3ZWl0ZW4gVGFnIHp1CmRvd25sb2FkZW46IHRyZWZmZW4gU2llIHVuc2VyZSAzIHJlaXp2b2xsZW4gUGhhc2VubWFlZGNoZW4uIFplaXQgYXVzIDMwCk1pbnV0ZW4uCkRyaXR0ZXIgVGFnOiBXZWx0cGljcy1IYW5kZWxuLiBXZW5uIFNpZSBuaWNodCBwaWNzIHp1bSBIYW5kZWxuIGhhYmVuLAplcmhhbHRlbiBTaWUgdmllbCB2b24gYW5kZXJlbgpCYXV0ZWlsZW4uCktsaWNrZW4gU2llIGhpZXIsIHVtIElociBLZW5ud29ydCA3MiBTdHVuZGVuIGxhbmcKCmh0dHA6Ly93d3cudGVycmEuZXMvcGVyc29uYWw4L3N1c2FuMTMyNgoKV2lyIGhvZmZlbiwgU2llIGJhbGQgenUgdHJlZmZlbiBTdXNhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBydG9ldGUgKE1hbmRyYWdvbiwgMjYuIE5vdiAyMDAxLCAxMzo1NDozOCk6Cn4jISBybj1WaW5jZW50IHJ0PTEwMDY3Nzg3NjIgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTAwNjc3MDI4OQpHZWh0cyBEaXIgbm9jaCBndXQgVmluY2VudD8KCkljaCBkZW5rZSBuaWNodCwgZGFzcyBhbGxlcyB3YXMgc2Nob24gaW1tZXIgc28gd2FzLCBzaWNoIGJld2FlaHJ0IGhhdCB1bmQKZGVzaGFsYiBhdXRvbWF0aXNjaCBndXQgaXN0LgpBdXNzZXJkZW0ga2FubiBCYW1iaSBhbHMgUk0gZHVyY2hhdXMgc2VpbmVuIEVybWVzc2Vuc3NwaWVscmF1bSBudXR6ZW4gdW5kCnJ0b2V0ZSBmdWVyIGVpbmVuIEJ1Zywga2VpbiBGZWF0dXJlICggOi0pICkgaGFsdGVuIHVuZCBlbnRmZXJuZW4KCk1hKiAtIGluYiBkZXIgcmljaHRpZW4gUnVicmlrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBydG9ldGUgKERhcmt3aW5nLCAyNi4gTm92IDIwMDEsIDEzOjU2OjE0KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDA2Nzc5Mjc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjc3MDI4OQpLZWluZSB6d2VpIFRhZ2UgUk0gdW5kIHNjaG9uIGJhdXQgZXIgZGllIHNjaG9lbnN0ZW5zIFNhY2hlbiBhdXMuLi4gKmdydW1tZWwqCgpFcyBzaW5kIHNjaG9uIExldXRlIGFuIFVlYmVybW90aXZhdGlvbiBnZXN0b3JiZW4gaGFiIGljaCBnZWhvZXJ0IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogcnRvZXRlIChHcmltbWJvcm4sIDI2LiBOb3YgMjAwMSwgMTM6NTc6NTApOgp+IyEgcm49RGFya3dpbmcgcnQ9MTAwNjc3OTM3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY3NzAyODkKS2VpbiBQcm9ibGVtLCB3ZW5uIGhpZXIgTGV1dGUgc2luZCBkaWUgZGFmdWVyIHNpbmQgZGFzcyBtYW4gc2Nob24gaW1tZXIKZGFnZXdlc2VuZSBTYWNoZW4gZXh0ZW5zaXYgbnV0emVuIGthbm46IEljaCBoYWV0dGUgbm9jaCBlaW4gInphcCIgdW5kIGVpbgoicnphcCIgenUgYmlldGVuLiBGcmVpd2lsbGlnZSBiaXR0ZSB0bSBhbiBtaWNoLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRW5kbGljaCBoYWIgaWNoIGF1Y2ggbWFsIHNvIG5lbiBsdXN0aWdlcyBUZWlsIGJla29tbWVuIChHbG9pbnNvbiwgMjYuIE5vdiAyMDAxLCAxMzo1OTowMSk6Cn4jISBybj1NZXNpcmlpIHJ0PTEwMDY3Nzg2ODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2Nzc4Njg2CkljaCBlcmhvZWhlIGdlcm4gbWVpbmVuIEFsbGdlbWVpbmJpbGR1bmdzZ3JhZDogV2FzIHNpbmQgUGhhc2VubWFlZGNoZW4/IDopClNpbmQgZGllIGF1cyBkZXIgUGhhc2Ugb2RlciBoYWJlbiBkaWUgaWhyZSBQaGFzZSBvZGVyIHdhcz8KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRW5kbGljaCBoYWIgaWNoIGF1Y2ggbWFsIHNvIG5lbiBsdXN0aWdlcyBUZWlsIGJla29tbWVuIChEZWVwYmx1ZSwgMjYuIE5vdiAyMDAxLCAxNDowMzowMyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDA2Nzc5NTQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjc3ODY4NgpWb3JzaWNodCwgR2xvaW5zb24uIEljaCBoYWIgZ2Vob2VydCwgZGllIGhhYmVuIGltbWVyIG5lbiBQaGFzZXIgYmVpIHNpY2ggdW5kCmJhbGxlcm4gYXVmIGFsbGVzLCB3YXMgc2ljaCBiZXdlZ3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVuZGxpY2ggaGFiIGljaCBhdWNoIG1hbCBzbyBuZW4gbHVzdGlnZXMgVGVpbCBiZWtvbW1lbiAoR3JpbW1ib3JuLCAyNi4gTm92IDIwMDEsIDE0OjAzOjE5KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMDY3Nzk1NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2Nzc4Njg2CkR1IHdlaXNzdCBzY2hvbiwgIldlbGxlLVRlaWxjaGVuZHVhbGlzbXVzIi4gVW5kIGVpbmUgV2VsbGUgaGF0IGhhbHQgZWluZQpQaGFzZS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogcnRvZXRlIChBcmssIDI2LiBOb3YgMjAwMSwgMTQ6MDU6MTApOgp+IyEgcm49RGFya3dpbmcgcnQ9MTAwNjc3OTM3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY3NzAyODkKSG0sIGtlaW5lIEFobnVuZywgd2FzIGRhcyBydG9ldGUgc28gZ2VtYWNodCBoYXQsIGFiZXIgd2VubiBlcyBkYXMgaXN0LCB3YXMgaWNoCmF1cyBkZW0gRmVhdHVyZSBhYnp1bGVzZW4gZ2xhdWJlLCBiYXUgaWNoIGRhcyBnZXJuZSAtIGV0d2FzIGFiZ2VhZW5kZXJ0IC0gbWFsCmJlaSBtaXIgaXJnZW5kd28gZWluLiBPYiBkYXMgYXVjaCBzbyBndXQgYW5rb21tdD8gTWFsIHRlc3RlbiwgaG9mZmVudGxpY2gKc3RlcmJlIF9pY2hfIG5pY2h0IGFuIFVlYmVybW90aXZhdGlvbi4gRmluZGUgaWNoIGFiZXIgdG9sbCwgZGFzcyBTcGllbGVyIGRvY2gKZnVlciBkZXJhcnRpZ2UgU2FjaGVuIGVpbiBvZmZlbmVzIE9ociBoYWJlbiA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBydG9ldGUgKFBpdGZhbGwsIDI2LiBOb3YgMjAwMSwgMTQ6MDU6NDYpOgp+IyEgcm49QXJrIHJ0PTEwMDY3Nzk5MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NzcwMjg5CnJ0b2V0ZSBhdWZ3ZXJ0ZW4sIGRyYXN0aXNjaCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHJ0b2V0ZSAoSHVtbmksIDI2LiBOb3YgMjAwMSwgMTQ6MDY6MTcpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDA2Nzc5OTQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjc3MDI4OQpXaWVzbyBydG9ldGU/IER1IHRvZXN0ZXN0IGRvY2ggZGllIExldXRlIG1laXN0IGRpcmVrdCBiZWkgRGlyLCBBcmsuLiA7LSkKCk9LLCBkaWUgRmx1ZWNoZSB3aXJrZW4gZWluIHdlbmlnIGxhZW5nZXIsIGFiZXIgd2FzIHNvbGxzLi4uLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IHJ0b2V0ZSAoQXJrLCAyNi4gTm92IDIwMDEsIDE0OjA3OjE0KToKfiMhIHJuPUh1bW5pIHJ0PTEwMDY3Nzk5Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NzcwMjg5CkljaCBzY2hyZWliZSBncmFkIG1pdCwgbmljaHQgc28gc2NobmVsbCAuLi4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBydG9ldGUgKE1vcmdvdGgsIDI2LiBOb3YgMjAwMSwgMTU6MDQ6NDcpOgp+IyEgcm49QXJrIHJ0PTEwMDY3Nzk5MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NzcwMjg5CkhtbSwgaGF0IG5pY2h0IFJvY2h1cycgU2NobGFlY2h0ZXIgYXVjaCBzbyBlaW4gZmVhdHVyZT8gQmluIG1hbCBnZXNwYW5udCB3aWUKZGVyIHJlYWdpZXJ0IHdlbm4gbWFuIGlobSBkYXMgZWluZmFjaCBzbyBhdXNiYXV0LiBPZGVyIHdpcmQgaGllciB3aWVkZXIgbWFsCm1pdCAyIFNpZWJlbiBnZXNpZWJ0PyBSb2NodXMgaXN0IEVNLCBkYXJmIGFsc28gYWxsZXMgdW5kIGJlaSBkZW4gYW5kZXJlbiB3aXJkcwpzb2ZvcnQgZ2VrdWVyenQgb2RlciBnZWxvZXNjaHQuIEtvbW10IG1pciBpcmdlbmR3aWUgYmVrYW5udCB2b3IuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogcnRvZXRlIChHcmltbWJvcm4sIDI2LiBOb3YgMjAwMSwgMTU6MDg6MjgpOgp+IyEgcm49TW9yZ290aCBydD0xMDA2NzgzNDg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjc3MDI4OQoibmFjaCA1IG9kZXIgNyBKYWhyZW4iICE9IHNvZm9ydCwgb2RlciB1ZWJlcnNlaGUgaWNoIGRhIHdhcz8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogcnRvZXRlIChHbG9pbnNvbiwgMjYuIE5vdiAyMDAxLCAxNToxMDozNCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwMDY3ODM0ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NzcwMjg5ClVtIG1hbCBhdWZ6dWtsYWVyZW46IEhpZXIgZ2luZyBlcyBkYXJ1bSBkYXNzIGVpbiBTcGllbGVyIGFuZGVyZSBTcGllbGVyCnJ0b2V0ZW4ga29ubnRlLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogcnRvZXRlIChBcmssIDI2LiBOb3YgMjAwMSwgMTU6MjI6MDIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAwNjc4MzgzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY3NzAyODkKSGFiIGljaCBlaWdlbnRsaWNoIGF1Y2ggZ2VkYWNodC4gQmVpIE1vbnN0ZXJuIGlzIHNvd2FzIHNpY2hlciBsZWdpdGltLCB3ZW5uCmRpZSBTcGllbGVyIGRlbiBBdXNiYXUgZGVzIEZlYXR1cmVzIGJlamFtbWVybiA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHYW1lZHJpdmVyIGJlc29mZmVuPyAoT3JrdG9ldGVyLCAyNi4gTm92IDIwMDEsIDE1OjMwOjUwKToKV2llc28gc2VoIGljaCBoaWVyIGFsbGVzIGRvcHBlbHQ/Cgpad2lyaW9uIGtvbW10IGFuLgpad2lyaW9uIHN0b2xwZXJ0Lgpad2lyaW9uIGtvbW10IGFuLgpad2lyaW9uIHN0b2xwZXJ0LgpNZXJsaW4gcnVmdDogSGlzQXN1bCwgaWNoIGJpbiBpbiBkZXIgRWJlbmUuCk1lcmxpbiBydWZ0OiBIaXNBc3VsLCBpY2ggYmluIGluIGRlciBFYmVuZS4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2FtZWRyaXZlciBiZXNvZmZlbj8gKERlZXBibHVlLCAyNi4gTm92IDIwMDEsIDE1OjMzOjAzKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDA2Nzg1MDUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjc4NTA1MApzaWVodCBlaGVyIGF1cyBuYWNoIG9ya3RvZXRlciBiZXNvZmZlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVudG5lci4uIChBcG9waGlzLCAyNi4gTm92IDIwMDEsIDE1OjQ1OjIzKToKR25vbWUgc2NocmVpdDogJ1BsYXR6IGRhISEhJy4KR25vbWUgZHVlc3QgYXVmIHNlaW5lbSBSb2xsc3R1aGwgYXVmIGRpZSBUb2lsZXR0ZS4KCm5hamEuLiBiZXZvciBlcnMgbmltbWVyIHp1cnVlY2toYWx0ZW4ga2FubiwgbGllYmVyIHNvIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiAuLi5tYW5jaGUgc2luZCBnbGVpY2hlciAoSXNpLCAyNi4gTm92IDIwMDEsIDE3OjQ1OjQ3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDA2NzkzMTAzIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDA2NzgyMTQ5CmlociBsYXNzdCBhdWNoIGtlaW5lIEdlbGVnZW5oYWl0IGF1cyBldWNoIGFuIGRpZSBHdXJnZWwgenUgZ2VoZW4gbWhtPwppc2kgKGtpbmRlcmdhcnRlbndlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiAuLi5tYW5jaGUgc2luZCBnbGVpY2hlciAoRGVlcGJsdWUsIDI2LiBOb3YgMjAwMSwgMTg6MDY6MzMpOgp+IyEgb249RGVlcGJsdWUgb3Q9MTAwNjc5NDMyNyBvZz1kaXNrdXNzaW9uCn4jISBybj1BbmF0b2wgcnQ9MTAwNjc5MzgzOSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAwNjc4MjE0OQpOaWNodCBkZXIgT21hLCBEaXIgc2VsYmVyLiBEYW5uIGlzc2VzIGFiZXIga2VpbiBrbGF1ZW4gbWVocgpIbSwgYmxvZWRlcyBCZWlzcGllbCwgaGllciBpc3NlcyB3YXMgYW5kZXJlcwpEZWVwKiwgQWx0a2x1ZyB1bmQgYXJyb2dhbnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IC4uLm1hbmNoZSBzaW5kIGdsZWljaGVyIChFbGJlcmV0LCAyNi4gTm92IDIwMDEsIDE4OjE2OjIzKToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAwNjc5NDk3NSBvZz1kaXNrdXNzaW9uCn4jISBybj1BcmsgcnQ9MTAwNjc5NDkyMiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAwNjc4MjE0OQo6Z3JpbnN0IEFyayBhbi4gCkFsc28gSGUsIGR1IFNhY2sgd3VlcmQgaWNoIHp1IGtlaW5lbSBNYWdpZXIgc2FnZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiAuLi5tYW5jaGUgc2luZCBnbGVpY2hlciAoQXJrLCAyNi4gTm92IDIwMDEsIDE4OjE4OjI5KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAwNjc5NDk4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY3ODIxNDkKTmFqYSwgbWVpbmUgSW50ZXJwcmV0YXRpb24gdm9uICJmcmVjaCIgOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IC4uLm1hbmNoZSBzaW5kIGdsZWljaGVyIChFbGJlcmV0LCAyNi4gTm92IDIwMDEsIDE4OjE4OjUxKToKfiMhIHJuPUFyayBydD0xMDA2Nzk1MTA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjc4MjE0OQpJY2ggYmluIGZyZWNoPwoKRWxiaSAobGllYiB1bmQgbmV0dCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR2VtdWVzZSAtIEN1cnJ5IC0gUGZhbm5lIChHcmltbWJvcm4sIDI2LiBOb3YgMjAwMSwgMTg6MTk6MjUpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwMDY3OTUxNTUgb2c9a29jaHJlemVwdGUKfiMhIHJuPUJhbWJpIHJ0PTEwMDY3OTUwODUgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMDA2Nzk1MDI1ClVuZCBiaXMgaWNoIGRpZSBnYW56ZW4gS2lkbmV5Ym9obmVuIHVuZCBkZW4gTWFpcyBrbGVpbmdlc2NobmlwcGVsdCBoYWJlIGlzdApkZXIgUmVpcyBqYSBQYW1wZS4uLiA7LSkKCkdkQSwgdmVybGVndCBkYXMgc2Nob25tIHNlbGJlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR2VtdWVzZSAtIEN1cnJ5IC0gUGZhbm5lIChHcmltbWJvcm4sIDI2LiBOb3YgMjAwMSwgMTg6MjQ6MzQpOgp+IyEgb249R2xvaW5zb24gb3Q9MTAwNjc5NTI5MCBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49RWxpemFiZXRoIHJ0PTEwMDY3OTUxMzcgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMDA2Nzk1MDI1CkFjaCwgZGEgZXNzIGljaCBkYW5uIGRvY2ggbGllYmVyIG5vY2ggZWluZSBCYW5hbmUuCgpHbG9pbihzb24pIGtyYXR6dCBzaWNoIHVudGVyIGRlbiBBcm1lbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR2VtdWVzZSAtIEN1cnJ5IC0gUGZhbm5lIChHcmltbWJvcm4sIDI2LiBOb3YgMjAwMSwgMTg6MjQ6MzYpOgp+IyEgb249RWxpemFiZXRoIG90PTEwMDY3OTUzNDAgb2c9a29jaHJlemVwdGUKfiMhIHJuPUdsb2luc29uIHJ0PTEwMDY3OTUyOTAgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMDA2Nzk1MDI1CkRhenUga2FubiBpY2ggbnVyIGVpbnMgc2FnZW4sIEJBTkFVU0UgISEhISAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhlaGUgOykgKEdvciwgMjYuIE5vdiAyMDAxLCAxODozMzo1Mik6CkdyaW1tYm9ybi4uLi4uLi53bQoKT2IgZGFzIGZ1ZXIgV3Vyc3RtYWdpZXIgc3RlaHQ/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGVoZSA7KSAoR3JpbW1ib3JuLCAyNi4gTm92IDIwMDEsIDE4OjM1OjAwKToKfiMhIHJuPUdvciBydD0xMDA2Nzk2MDMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjc5NjAzMgpOb3BlLCBkYXNzIGljaCBXdXJzdG1hZ2llciBiaW4gaXN0IGdlaGVpbSB1bmQgbmllbWFuZCBzb2xsIGRhcyB3aXNzXllOZWluLCB0dXQKZXMgbmljaHQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiAuLi5tYW5jaGUgc2luZCBnbGVpY2hlciAoRGVlcGJsdWUsIDI2LiBOb3YgMjAwMSwgMTg6Mzc6MDkpOgp+IyEgcm49RWxpemFiZXRoIHJ0PTEwMDY3OTU5NTQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMDY3ODIxNDkKRGFzIGlzdCBqYSBhdWNoIGVyZnVlbGx0LgpSZWdlbCAxOiBHcmltbWJvcm4gaGF0IGltbWVyIHJlY2h0LgpSZWdlbCAyLiBTb2xsdGUgR3JpbW1ib3JuIGVpbm1hbCBuaWNodCByZWNodCBoYWJlbiwgc28gdHJpdHQgYXV0b21hdGlzY2ggUmVnZWwKMSBpbiBrcmFmdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIZWhlIDspIChBbmF0b2wsIDI2LiBOb3YgMjAwMSwgMTg6Mzg6MjcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDY3OTYxMDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2Nzk2MDMyCkdvci4uLi4uLi4uLi4uLmkuTQoKU3RlaHQgZGFzIGRhbm4gZnVlciAiaW5rb21wZXRlbnRlciBNYWdpZXIiPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEhlaGUgOykgKEdvciwgMjYuIE5vdiAyMDAxLCAxODo0MTo0MSk6Cn4jISBybj1BbmF0b2wgcnQ9MTAwNjc5NjMwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY3OTYwMzIKTmUsIHdvIGRlbmtzdCBkdSBoaW4uIERhcyBzdGVodCBmdWVyICJpbXBvc3NpYmxlIG1pc3Npb24iLiBBYmVyIGRlciBBdWZ0cmFnCmlzdCBzdHJyZW5nIGdlaGVpbS4KCkdvciBpbiBnZWhlaW1lciBNaXNzaW9uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IC4uLm1hbmNoZSBzaW5kIGdsZWljaGVyIChCYW1iaSwgMjYuIE5vdiAyMDAxLCAxODo0MzozNSk6Cn4jISBvbj1CYW1iaSBvdD0xMDA2Nzk2NjAxIG9nPWRpc2t1c3Npb24KfiMhIHJuPUdyaW1tYm9ybiBydD0xMDA2Nzk2NTExIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDA2NzgyMTQ5Ck5laW4sIGJsZWliIHN0YW5kaGFmdC4gU29uc3QgcmVpc3N0IGRhcyBlaW4gdW5kIGljaCBrcmllZyBBZXJnZXIsIHdlaWwgaWNoCmR1cmNoIGRhcyBydG9ldGUtQXVzYmF1ZW4gaW5zIFNwaWVsZ2VzY2hlaGVuIGVpbmdlZ3JpZmZlbiBoYWJlISA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IC4uLm1hbmNoZSBzaW5kIGdsZWljaGVyIChHcmltbWJvcm4sIDI2LiBOb3YgMjAwMSwgMTg6NDQ6MjEpOgp+IyEgcm49QmFtYmkgcnQ9MTAwNjc5NjYxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY3ODIxNDkKTmEgdW5kPyBEdSBrYW5uc3QgZGFubiBqYSBlaW5lbiBEZWluZXIgWndlaXRpZXMvVGVzdGllcyBzcGllbHBhdXNlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogR2VtdWVzZSAtIEN1cnJ5IC0gUGZhbm5lIChHcmltbWJvcm4sIDI2LiBOb3YgMjAwMSwgMTg6NDk6MTMpOgp+IyEgb249RWxiZXJldCBvdD0xMDA2Nzk2NzQ4IG9nPWtvY2hyZXplcHRlCn4jISBybj1IdW1uaSBydD0xMDA2Nzk2NzIyIHJnPWtvY2hyZXplcHRlCn4jISB0aWQ9MTAwNjc5NTAyNQp3ZW5uIGRhcyBuZW4gZmVhdHVyZSBpc3QsIG5pY2h0IGF1c2JhdWVuLCB3ZW5uIG1hbiBkYW1pdCBhdWNoIG1vbnN0ZXIgYmVpbQppZGxlbiBlcndpc2NodCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IC4uLm1hbmNoZSBzaW5kIGdsZWljaGVyIChHcnVtbWJvaG5lLCAyNi4gTm92IDIwMDEsIDE4OjUwOjQwKToKfiMhIHJuPUxpYXJhIHJ0PTEwMDY3OTY4NzQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMDY3ODIxNDkKSmEsIEdyaW1tYm9pciwgdmVybGVnIExpYXJhIG5hY2ggU2NobWFycm4uIFNpZSBoYXQgZGFzIHNvIGdld29sbHQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogLi4ubWFuY2hlIHNpbmQgZ2xlaWNoZXIgKExpYXJhLCAyNi4gTm92IDIwMDEsIDE4OjUyOjI3KToKfiMhIHJuPUdydW1tYm9obmUgcnQ9MTAwNjc5NzA0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY3ODIxNDkKQXJ0aWtlbCBzY2hyZWliZW4gdW5kIGRhbm4gc2VsYnN0bG9lc2NoZW4/IDstKSBXaWUgbXV0aWcuCgpaWkwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthbm4gZXIgR2VkYW5rZW4gbGVzZW4/IChUaWFtYWssIDI2LiBOb3YgMjAwMSwgMTk6NDk6MzQpOgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogYnR3OiBpY2ggd3VlcmRlIGpldHp0IGphIGFudHdvcnRlbiBpbgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogZGlza3Vzc2lvbi4gQWJlciBkaWUgbGV0enRlbiAyMCBBcnRpa2VsIHdhcmVuCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBqYSBudXIgbm9jaCBzY2htYXJybiwgbnVyIGluIGRlciBmYWxzY2hlbgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogUnVicmlrLiBEYXMgbG9obnQgamEgZ2FyIG5pY2h0LgpHcmltbWJvcm4gdGVpbHQgRGlyIG1pdDogU3BpZWx2ZXJkZXJiZXIuCgoKVGlhbWFrLiBCYWZmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthbm4gZXIgR2VkYW5rZW4gbGVzZW4/IChNYXJjdXMsIDI2LiBOb3YgMjAwMSwgMTk6NTQ6MjUpOgp+IyEgcm49VGlhbWFrIHJ0PTEwMDY4MDA1NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2ODAwNTc0CkljaCB3dWVyZGUgbWFsIGF1ZiBkZW4gZmJhbmQgc2NoYXVlbi4uLiA6KQoKVmllbGxlaWNodCBzdGVodCBlciBqYSBkcmF1ZiA7KQoKQ2lhbywgTWFyY3VzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2FubiBlciBHZWRhbmtlbiBsZXNlbj8gKEdyaW1tYm9ybiwgMjYuIE5vdiAyMDAxLCAxOTo1NjozMik6Cn4jISBybj1UaWFtYWsgcnQ9MTAwNjgwMDU3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY4MDA1NzQKSWNoIGxlZ2Ugd2VydCBhdWYgZGllIEZlc3RzdGVsbHVuZyBkYXNzIHNpY2ggbWVpbiBLb21tZW50YXIgYXVmIFRpYW1ha3MKQXJ0aWtlbCBpbiBkLmdlYmlyZ2UgYmV6b2cgdW5kIGljaCBrZWluZXNmYWxscyB6dSBzZWluZW4gRnJldW5kZW4gZ2Vob2VyZS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLYW5uIGVyIEdlZGFua2VuIGxlc2VuPyAoR3JpbW1ib3JuLCAyNi4gTm92IDIwMDEsIDE5OjU3OjU0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDA2ODAwOTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjgwMDU3NApOb2UsIHNlaXQgamVtYW5kIHZvciBodW5kZXJ0IEphaHJlbiBvZGVyIHNvIGRhcyBmYmFuZCB1bWdlem9nZW4gaGF0IGthbm4gaWNoCm1pY2ggZGEgbmljaHQgbWVociBkcmF1Zm1vZ2Vsbi4gCkFjaCBqYSwgdW5kIGF1Y2ggd2VubiBkYXMgYXVzIGRlbSBadXNhbW1lbmhhbmcgZ2V6b2dlbiB3YXI6IEljaCBzdGVoZQpuYXR1ZXJsaWNoIHp1IG1laW5lciBBdXNzYWdlIFRpYW1hayBnZWdlbnVlYmVyLCBhdWNoIGluIGRlbSBadXNhbW1lbmhhbmcuIDotKQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBydG9ldGUgKE11cGZlbCwgMjYuIE5vdiAyMDAxLCAyMTozODozMSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwMDY3ODM0ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NzcwMjg5Ck5hIGRhIG1hdWx0IGRlciBSaWNodGlnZS4uLgoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1ldGhvZGVuIHNpbmQgZGFzLi4uIChNdXBmZWwsIDI2LiBOb3YgMjAwMSwgMjI6MTg6MTEpOgpbU2VoZXI6VmFybGFyaW9uIGtpcHB0IGVpbmUgU2NodWVzc2VsIFVucmF0IGF1cyBkZW0gRmVuc3RlciB1bSBkaWUgZ2FuemVuCiAgICAgICBNYWdpZXIgenUgdmVydHJlaWJlbi5dCltTZWhlcjpab29rIHZlcnNjaHdpbmRldCBtaXQgZWluZW0gKlBGTE9QUCpdCgoKKGFiZXIgc2llIHNjaGVpbmVuIHp1IHdpcmtlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogWmFwZm1laXN0ZXIgZ2VzdWNodCEgKFZhcmxhcmlvbiwgMjcuIE5vdiAyMDAxLCAwNDozODoxMSk6Cn4jISBybj1IdW1uaSBydD0xMDA2ODI5MTczIHJnPXBhcnR5Cn4jISB0aWQ9MTAwNjgxNDc2MwpHaWJ0cyBkYW5uIGF1Y2ggd2llZGVyIGd1dCBnZXNjaHVldHRlbHRlIENvbGE/IDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogWmFwZm1laXN0ZXIgZ2VzdWNodCEgKEh1bW5pLCAyNy4gTm92IDIwMDEsIDExOjQ4OjMzKToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDA2ODMyMjkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjgxNDc2MwpLbGFyLiBHZXNjaHVldHRlbHQgaXN0IGdlc2NodWV0dGVsdC4gVW5kIENvbGEgbXVzcyBnZXNjaHVldHRlbHQgd2VyZGVuLCBzb25zdAppc3QgZGFzIGphIGtlaW5lIFNjaHVldHRlbGNvbGEuCgpSb2NodXMgd2lyZCBiZWkgR2VsZWdlbmhlaXQgYmVzdGltbXQgZ2VybmUgZGllIENvbGFzY2h1ZXR0bGVyLUdpbGRlCnByb2dyYW1taWVyZW4uLi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBaYXBmbWVpc3RlciBnZXN1Y2h0ISAoR3JpbW1ib3JuLCAyNy4gTm92IDIwMDEsIDExOjU5OjM3KToKfiMhIHJuPUh1bW5pIHJ0PTEwMDY4NTgxMTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2ODE0NzYzCkR1IG1laW5zdCBlaW5lIEdpbGRlIG1pdCAKd2VubiAoTWl0Z2xpZWQgZGVyIEdpbGRlKQogIHN0aXJiCndlbm4gKGltbWVyIG5vY2ggbmljaHQgdG90KQogIHN0aXJiIChqZXR6dCBlcnN0IHJlY2h0KQpTb3dhcyBpbiBkZXIgQXJ0PyBTb2xsdGUgZG9jaCBzY2huZWxsIGltcGxlbWVudGllcmJhciBzZWluLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1Y2ggbWFsIE5ldGRpZ2VzdCAoV29vZHksIDI3LiBOb3YgMjAwMSwgMTg6MzU6MjMpOgpGcm9tOiBSaWNoYXJkIFN0ZWZlayA8cnNAc3RlZmVrLmF0PgpOZXdzZ3JvdXBzOiBhdC5nZXNlbGxzY2hhZnQuaHVtb3IgW25pY2h0IGRhc3MgaWNoIGRpZSBsZXNlbiB3dWVyZGUgOyldClN1YmplY3Q6IFJlOiAocGlsb3RlbiB1bmQgc28uLi4pCkRhdGU6IDIwMDEtMTAtMjMgMTU6MTY6MzUgUFNUCk1lc3NhZ2UtSUQ6IDwzQkQ1RUI1MC5GQzA5RkQwNUBzdGVmZWsuYXQ+CgpBbmRyZWFzIFQgc2NocmllYjoKICAgICAgICBeCiJEaWUgQW5nYWJlIGRlcyB2b2xsc3RhZW5kaWdlbiBSZWFsbmFtZW5zIGVybGVpY2h0ZXJ0IGRpZSBLb21tdW5pa2F0aW9uCmltIFVzZW5ldCB1bmdlbWVpbiwgbWFuIGthbm4gc2ljaCBkYW5uIG5hZW1saWNoIGF1ZiBkaWUgSW5oYWx0ZSBkZXIKUG9zdGluZ3Mga29uemVudHJpZXJlbiB1bmQgbXVzcyBuaWNodCB1ZWJlciBTaW5uL1Vuc2lubiB2b24gUHNldWRvbnltZW4Kby5hZS4gZGlza3V0aWVyZW4uIiAoSW5nbyBMaWVzc2VnYW5nLCBkZS5uZXd1c2Vycy5xdWVzdGlvbnMsIDYuMTAuMTk5OSkKCj4gSGFsbG8gYWxsZXJzZWl0cyEKPiBJY2ggYmluIG5ldSBoaWVyLiBVbmQgZGFjaHRlIG1pciwgaWNoIHNjaGF1IG1hbCByZWluLiBLbGluZ3QsIGFscyBrb2VubnRlCj4gbWFuIGhpZXIgZWluIHdlbmlnIHJlbGF4ZW4gaW5kZW0gbWFuIGVpbiBwYWFyIFdpdHplIGxpZXN0Lgo+IFdhcyBpc3QgamVkb2NoIGdlZnVuZGVuIGhhYmUsIHdhciB3ZWRlciBrb21pc2NoIG5vY2ggenVtIEF1c3NwYW5uZW4uCgoiVmllbGUgTmV1ZWluc3RlaWdlciBrcmllZ2VuIGRlbiBpbSBVc2VuZXQgdWVibGljaGVuIFRvbmZhbGwgaW4gZGVuCmZhbHNjaGVuIEhhbHMsIG9id29obCBlciBuaWNodCB1bmZyZXVuZGxpY2ggZ2VtZWludCBpc3QuIFdlbm4gc2llIGRhbm4KZWluZSB6ZWl0bGFuZyBzZWxic3QgYWt0aXYgZGFiZWkgc2luZCwgaGFiZW4gc2llIHNpY2ggZGVuIGdsZWljaGVuClNjaHJlaWJzdGlsIGFuZ2V3b2VobnQuIiAoQ2hyaXN0aWFuIFRyZWZmbGVyIGluIGRlLnNvYy5uZXR6a3VsdHVyKQoKPiBFcyBpc3QgamEgc2VociB6dXZvcmtvbW1lbmQsIGdsZWljaCBtaXQgZWluZW0gc29sY2hlbiBIYW1tZXIgYW56dWZhaHJlbgo+IHVuZCBzaWNoIGF1ZiBpcmdlbmR3ZWxjaGUgdG9sbGVuIFF1ZWxsZW4genUgYmVydWZlbiwgd2FzIGFsbGVzIGVybGF1YnQKPiBpc3QgdW5kIHdhcyBuaWNodC4gCgoiLi4uZGllIFVzZW5ldC1FdGhpay1Lb21taXNzaW9uIGlzdCBzZWx0c2FtZXJ3ZWlzZSBpbW1lciBudXIgZGFubiB6dXIKU3RlbGxlLCB3ZW5uIHNpY2ggamVtYW5kIGVyZHJlaXN0ZXQsIGVpbmUgdW51bWZhc3NlbmRlCm5pY2h0a3VzY2hlbHdlaWNoZSBBbnR3b3J0IHp1IGdlYmVuLCBkaWUgZWluZSBnZXJpbmdmdWVnaWdlIChnZWlzdGlnZSkKTWl0YXJiZWl0IGRlcyBsZXNlcnMgZXJmb3JkZXJ0Li4uIiBnaHcvMTkuMi4wMC9hdC51c2VuZXQuc29uc3RpZ2VzCgoKPiBBdWNoIGRlciBIaW53ZWlzIGF1ZiBkaWUgRXRpa2V0dGUgaXN0IHNpY2hlciBudXIgZ3V0Cj4gZ2VtZWludCAoVE9GVSkuCgoiV2VyIHNpY2ggZGllIE5ldGlxdWV0dGUgYW5zaWVodCwgd2lyZCBmZXN0c3RlbGxlbiwgZGFzcyBzaWUga2VpbmUKWmFlaG5lIGhhdCwgbmljaHQgd2llIGVpbiBKb2NoIGF1c3NpZWh0IHVuZCBzaWNoIGF1Y2ggbmljaHQgd2llIGVpbmUKS251dGUgYW5mdWVobHQuIiAoQ2hyaXN0b3BoIHZvbiBOYXRodXNpdXMgaW4gZGUuc29jLm5ldHprdWx0dXIpCgoKPiBBYmVyIGRlciBUb24gc3BpZWx0IGRpZSBNdXNpay4gRXMgaGFldHRlIHNpY2hlciBlaW5lbiBuZXR0ZXJlbiBXZWcKPiBnZWdlYmVuLCBBbmRyZWEgU292aWMgPGFuZHJlYS5zb3ZpY0BrZnVuaWdyYXouYWMuYXQ+IGRhcmF1ZiBhdWZtZXJrc2FtCj4genUgbWFjaGVuLCBkYXNzIHNpZSBkYSB3YXMgdWViZXJzZWhlbiBoYXQuIFZpZWxsZWljaHQgaGFldHRlIG1hbiBlcyBhdWNoCj4gbWl0IEh1bW9yIHZlcnN1Y2hlbiBrb2VubmVuLgoKIkRlciBUb24gaW0gVXNlbmV0IGlzdCBoYWV1ZmlnIGt1ZXJ6ZXIgYW5nZWJ1bmRlbiBhbHMgaW0gdGFlZ2xpY2hlbiBMZWJlbiwKZGVubiBUaXBwZW4gZ2VodCBsYW5nc2FtZXIgYWxzIFJlZGVuLiBEYWhlciBmYWxsZW4gSG9lZmxpY2hrZWl0c2Zsb3MtCmtlbG4gbGVpY2h0ZXIgdW50ZXIgZGVuIFRpc2NoIGFscyBhbmRlcnN3by4gRGVzaGFsYiBzaW5kIGRpZSBBdXNzYWdlbgphYmVyIHdlZGVyIG9iZXJsZWhyZXJoYWZ0IG5vY2ggYm9lc2UgZ2VtZWludC4iIChUaG9tYXMgSG9jaHN0ZWluKQoKIAo+IE5hIGd1dCwgd2FzIHNvbGxzLiBJbW1lcmhpbiBoYWIgaWNoIGF1Y2ggZXR3YXMgbmV1ZXMgZ2VsZXJudCwgbmFlbWxpY2gKPiBkYXMgT0otUHJpbnppcC4gQW5zaWNoIGVpbmUgZ3V0ZSBJZGVlLgoKIkRpZXNlciBIdWVobmVyaGF1ZmVuIGRyZWh0IGxhbmdzYW0gZHVyY2ggaW4gc2VpbmVuIFNjaGVyemVuLiIKIk1lcmxpbiIgaW4gZGUuc29jLm5ldHprdWx0dXIpCgogCj4gQWxzbywgbmljaHQgYmVsZWlkaWd0IHNlaW4hCj4gVW5kIEZyaWVkZSAtIGRlY2t0IG1pY2ggbmljaHQgYXVjaCBtaXQgZWluZW0gc29sY2hlbiBRdWVsbGVudmVyemVpY2huaXMKPiB1bmQgVmVyaGFsdGVuc3JlZ2VsbiB1bmQgZGVyIGdsZWljaGVuIGVpbi4gRmVobGVyIG1hY2h0IGplZGVyLi4uCj4gCj4gQW5kcmVhcy4KCiJFcyBnaWJ0IGluIGRpZXNlbSBOZXR6IEd1dGUgdW5kIEJvZXNlLiBXZXIgZGllIEJvZXNlbiBzaW5kLAplbnRzY2hlaWRlbiBkaWUgR3V0ZW4uIiAoTWljaGFlbCBPdHRlbmJydWNoIGluIGRlLmFkbWluLm5ld3MucmVnZWxuKQoKCj4gT0o6IChwaWxvdGVuIHVuZCBzby4uLikKIk51ciBXaXR6ZSBtaXQgTml2ZWEgcG9zdGVuLCBkYW1pdCB3aXIgYXVjaCBpbiAyMCBKYWhyZW4gbm9jaCBvaG5lCkZhZWx0Y2hlbiBsYWNoZW4ga29lbm5lbiEiIChOaWNvIEhvZmZtYW5uIGluIGRlLnRhbGsuam9rZXMpCgoKTyh1bmQgbm9jaCBlaW4gbGV0enRlcyBaaXRhdClKOgoiS2F1bSB3aXJkIGRhcyBXZXR0ZXIgc2NobGVjaHRlciB1bmQgZGllIFRhZ2Uga3VlcnplciwgZmFsbGVuIGRpZQpOZXdiaWVzIHVlYmVyIGRhcyBOZXR6IGhlciB3aWUgZGllIEJsYWV0dGVyIHZvbiBkZW4gQmFldW1lbi4iCiAgICAgICAgICAgICAoVWxmIFNjaGFlZmVyIGluIGRlLnRhbGsuam9rZXMpCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEhleGVuIChEZWVwYmx1ZSwgMjcuIE5vdiAyMDAxLCAyMjowNzo1MSk6Cn4jISBybj1XdXJ6ZWwgcnQ9MTAwNjg5NTA1NyByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTEwMDY4NTY5MDIKRHUgbWVpbnN0LCBTaWx2YW5hIGlzdCBqZXR6dCBpbSBCdW5kZSBkaWUgVmllcnRlLCBzbyBkYXNzIHNpZSBuaWNodCBtZWhyCmJlc3VjaHQgd2VyZGVuIGJyYXVjaHQ/CjxkdWNrPgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llIGdyb3NzIGlzdCBGcmFua2Z1cnQ/IChPcmt0b2V0ZXIsIDI3LiBOb3YgMjAwMSwgMjM6MDA6MTUpOgpNYW4gYmVhY2h0ZSBIb3AgNiB1bmQgSG9wIDE2IC4uLgoKcm9vdEBoZWxsc2dhdGU6L2hvbWUvYmVybmQgPiB0cmFjZXJvdXRlIDE5NC45NS4xNzAuMjA1CnRyYWNlcm91dGUgdG8gMTk0Ljk1LjE3MC4yMDUgKDE5NC45NS4xNzAuMjA1KSwgMzAgaG9wcyBtYXgsIDQwIGJ5dGUgcGFja2V0cwogMSAgV05FVUNSMDMuaGlnaHdheS50ZWxla29tLmF0ICgxNzIuMTguOTUuNTYpICAyNyBtcyAgMzMgbXMgIDMwIG1zCiAyICAxNzIuMTkuOTUuNDkgKDE3Mi4xOS45NS40OSkgIDIyIG1zICAyMyBtcyAgMjUgbXMKIDMgIEFVWDEtV05FVVJPMDEuaGlnaHdheS50ZWxla29tLmF0ICgxOTUuMy42OC41KSAgMjggbXMgIDMxIG1zICAyMyBtcwogNCAgSUlYLmhpZ2h3YXkudGVsZWtvbS5hdCAoMTk1LjMuNjguMjI1KSAgMjMgbXMgIDIyIG1zICAyNiBtcwogNSAgdDNhMS1wOS0wLTAuYXQtdmllLmNvbmNlcnQubmV0ICgxNjYuNDkuMjIyLjE0OSkgIDI4IG1zICAyNyBtcyAgMjcgbXMKIDYgIHQyYzItcDItMy5kZS1mcmEuY29uY2VydC5uZXQgKDE2Ni40OS4yMDguNDEpICAzNiBtcyAgNDAgbXMgIDM4IG1zCiA3ICB0MmMyLXA5LTAubmwtYW1zMi5jb25jZXJ0Lm5ldCAoMTY2LjQ5LjIwOC4zMCkgIDQ0IG1zICA0NSBtcyAgNDUgbXMKIDggIHQyYTEtZ2U2LTAubmwtYW1zMi5jb25jZXJ0Lm5ldCAoMTY2LjQ5LjIwMC4xNykgIDQ1IG1zICA0MSBtcyAgNDUgbXMKIDkgICogdDJjMi1wOC0wLnVrLWxvbjIuY29uY2VydC5uZXQgKDE2Ni40OS4xNjQuMjQyKSAgNzIgbXMgIDc2IG1zCjEwICB0MmMyLXAyLTAuc2Utc3RvLmNvbmNlcnQubmV0ICgxNjYuNDkuMjA4Ljg2KSAgMTI5IG1zICAxMjYgbXMgIDEyNSBtcwoxMSAgdDJhMS1nZTUtMC0wLnNlLXN0by5jb25jZXJ0Lm5ldCAoMTY2LjQ5LjE5NC4xNykgIDI3NiBtcyAgMzIxIG1zICAxOTMgbXMKMTIgIHN0b2NraG9sbTUuc2UuZXFpcC5uZXQgKDE5NC42OC4xMjguMTgpICA5OSBtcyAgMTAxIG1zICA5OSBtcwoxMyAgaW5mb25ldC5zZTEuc2UuZ2VhbnQubmV0ICg2Mi40MC4xMDMuMTI5KSAgOTcgbXMgIDEwMCBtcyAgOTkgbXMKMTQgIHNlLmRlMi5kZS5nZWFudC5uZXQgKDYyLjQwLjk2LjY1KSAgMTIwIG1zICAxMTkgbXMgIDExOCBtcwoxNSAgZGUyLTEuZGUxLmRlLmdlYW50Lm5ldCAoNjIuNDAuOTYuMTI5KSAgMTE5IG1zICAxMjEgbXMgIDEyOSBtcwoxNiAgaXItZnJhbmtmdXJ0Mi5nLXdpbi5kZm4uZGUgKDYyLjQwLjEwMy4zNCkgIDEyMiBtcyAgMTIzIG1zICAxMjQgbXMKMTcgIGNyLWZyYW5rZnVydDEuZy13aW4uZGZuLmRlICgxODguMS44MC4zNykgIDEyNCBtcyAgMTIzIG1zICAxMTkgbXMKMTggIGNyLWJlcmxpbjEuZy13aW4uZGZuLmRlICgxODguMS4xOC4yMikgIDEyNiBtcyAgMTMwIG1zICAxMzIgbXMKMTkgIGFyLWZ1YmVybGluMS5nLXdpbi5kZm4uZGUgKDE4OC4xLjIwLjYpICAxMzAgbXMgIDEyOSBtcyAgMTMyIG1zCjIwICBnbWRhZ2F0ZS5maXJzdC5nbWQuZGUgKDE5NC45NS4xNjguMSkgIDEzMiBtcyAgMTI3IG1zICAxMzIgbXMKMjEgIG1nLmZpcnN0LmdtZC5kZSAoMTk0Ljk1LjE3MC4yMDUpICAxMzAgbXMgIDEzMCBtcyAgMTMzIG1zIAoKT3JrVCBzdGF1bnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2llIGdyb3NzIGlzdCBGcmFua2Z1cnQ/IChXdXJ6ZWwsIDI3LiBOb3YgMjAwMSwgMjM6MDI6MTgpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMDY4OTg0MTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2ODk4NDE1CmZyYW5rZnVydCBpc3QgemllbWxpY2ggZ3Jvc3MsIHN0aW1tdC4gd2VubiBtYW4gYmVkZW5rdCwgZGFzcyBzdG9ja2hvbG0gZWluZXIKZGVyIHZvcm9ydGUgb2ZmZW5zaWNodGxpY2ggaXN0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdpZSBncm9zcyBpc3QgRnJhbmtmdXJ0PyAoRGVlcGJsdWUsIDI3LiBOb3YgMjAwMSwgMjM6MDM6MTIpOgp+IyEgcm49V3VyemVsIHJ0PTEwMDY4OTg1Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2ODk4NDE1CnJlaWNodCB2b24gZGVyIE9kZXIgYmlzIGFuIGRlbiBNYWluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdGVyYmVuIHZvciBkZW0gZGFzZWluLi4uIChPcmt0b2V0ZXIsIDI4LiBOb3YgMjAwMSwgMDA6MDA6NTcpOgpbVG9kOkxhcnNdIEVpbiBXaW50ZXJ3b2xmIGhhdCBnZXJhZGUgSGV0dGFyIHVtZ2VicmFjaHQuCltUb2Q6RWluIFdpbnRlcndvbGZdIFdhcm0gZGFzIEJsdXQsIGRhcyBtZWluZSBMZWZ6ZW4gYmVuZXR6dCwga2FsdCBkZXIgS29lcnBlcgpbVG9kOkVpbiBXaW50ZXJ3b2xmXSB2b3IgbWlyIGltIFNjaG5lZSwgemVyZmV0enQuIFdhcm0gZGFzIEJsdXQsIGRhcyBtZWluZW4KW1RvZDpFaW4gV2ludGVyd29sZl0gSHVuZ2VyIGhhdCBiZXNpZWd0LCBrYWx0IGRlciBXaW50ZXIsIGRlciBudW4gdm9yIHVucwpbVG9kOkVpbiBXaW50ZXJ3b2xmXSBhbGxlbiBsaWVndCAuLi4KSGV0dGFyICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhIAoKRXJzdCBzdGVyYmVuLCBkYW5uIGRhIHNlaW4sIGF1Y2ggbmljaHQgc2NobGVjaHQuLi4KCk9ya1Qgd3VlbnNjaHQgYmVpbGVpZCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdGVyYmVuIHZvciBkZW0gZGFzZWluLi4uIChIZXR0YXIsIDI4LiBOb3YgMjAwMSwgMDA6NTY6MDIpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMDY5MDIwNTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2OTAyMDU3CnVuZCB2b3IgYWxsZW0gb2huZSBXb2xmIHN0ZXJiZW4hIDoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3RlcmJlbiB2b3IgZGVtIGRhc2Vpbi4uLiAoR3JpbW1ib3JuLCAyOC4gTm92IDIwMDEsIDAwOjU5OjE2KToKfiMhIHJuPUhldHRhciBydD0xMDA2OTA1MzYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjkwMjA1NwpEZXIgaGF0IGphIHNlaW5lIFN0cmFmZSBzY2hvbiB3ZWcsIHNlaW4gUmVpbi1SaHl0aG11c2FsZ29yaXRobXVzIGlzdAphdXNnZWtsaW5rdC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdGVyYmVuIHZvciBkZW0gZGFzZWluLi4uIChIZXR0YXIsIDI4LiBOb3YgMjAwMSwgMDE6MDE6MjEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDY5MDU1NTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2OTAyMDU3Cm11c3MgaWNoIGRhcyBqZXR6dCB2ZXJzdGVoZW4gPz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTdGVyYmVuIHZvciBkZW0gZGFzZWluLi4uIChHcmltbWJvcm4sIDI4LiBOb3YgMjAwMSwgMDE6MDI6MjEpOgp+IyEgcm49SGV0dGFyIHJ0PTEwMDY5MDU2ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2OTAyMDU3Cldhcm0gZGFzIEJsdXQsIGRhcyBtZWluZSBMZWZ6ZW4gYmVuZXR6dCwKa2FsdCBkZXIgS29lcnBlciB2b3IgbWlyIGltIFNjaG5lZSwgemVyZmV0enQuCldhcm0gZGFzIEJsdXQsIGRhcyBtZWluZW4gSHVuZ2VyIGhhdCBiZXNpZWd0LAprYWx0IGRlciBXaW50ZXIsIGRlciBudW4gdm9yIHVucyBhbGxlbiBsaWVndCAuLi4KCkZhZWxsdCBEaXIgd2FzIGF1Zj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3RlcmJlbiB2b3IgZGVtIGRhc2Vpbi4uLiAoSGV0dGFyLCAyOC4gTm92IDIwMDEsIDAxOjA1OjAxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDA2OTA1NzQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjkwMjA1Nwp3YXMgc29sbCBtaXIgYXVmZmFsbGVuPyAqd3VuZGVyKgplaW5nZWxvZ2d0IC0tPiBPaG5tYWVjaHRpZyBnZXdvcmRlbiAtLT4gVG9kIGdld2VzZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTdGVyYmVuIHZvciBkZW0gZGFzZWluLi4uIChHcmltbWJvcm4sIDI4LiBOb3YgMjAwMSwgMDE6MDU6NDcpOgp+IyEgcm49SGV0dGFyIHJ0PTEwMDY5MDU5MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2OTAyMDU3CmVpbmdlbG9nZ3QgLS0+IE9obm1hZWNodGlnIGdld29yZGVuIC0tPiBUb2QgZ2V3ZXNlbiAtLT4gV2ludGVyd29sZiBrYW5uIG51cgpub2NoIHNjaHVldHRlbHJlaW1lbiEKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogWmFwZm1laXN0ZXIgZ2VzdWNodCEgKEF6enVybywgMjguIE5vdiAyMDAxLCAwNToxMzozMyk6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTAwNjgzMjI5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY4MTQ3NjMKWmFwZm1laXN0ZXIgZ2VzdWNodD8KTmltbSBkb2NoIEdyaW1tYm9ybiwgZGVuIFphcG1laXN0ZXIgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXaWUgZ3Jvc3MgaXN0IEZyYW5rZnVydD8gKENhdHdlYXpsZSwgMjguIE5vdiAyMDAxLCAwODoxODo0Mik6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAwNjg5ODQxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY4OTg0MTUKRWluZmFjaC4KRGVyIERGTiBoYXQga2VpbmVuIFZlcnRyYWcgYW0gREUtQ0lYIG1pdCBkZW1qZW5pZ2VuIHdlbSBhdWNoIGltbWVyICdjb25jZXJ0JwpnZWhvZXJ0LiAKCllUQyAoc2Nob2VuZXIgU2F0emJhdSwgb2Rlcj8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYWgsIEJpZWxlZmFrZSEgKERlZXBibHVlLCAyOC4gTm92IDIwMDEsIDA5OjA5OjA1KToKRHUgc3B1ZXJzdCwgd2llIHNpY2ggRGVpbiBTY2h1dHpnZWlzdCB1bnRlciBTY2htZXJ6ZW4gYXVmYmFldW10LgpCaWVsZWZlbGQgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2llIGdyb3NzIGlzdCBGcmFua2Z1cnQ/IChPcmt0b2V0ZXIsIDI4LiBOb3YgMjAwMSwgMTA6MzM6MjApOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMDY5MzE5MjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2ODk4NDE1CkphLCBpc3QgamEgc2Nob24ga2xhciwgYWJlciB3ZW5uIG1hbiBuYWNoIDYgSG9wcyBiZXJlaXRzIGluIEZyYW5rZnVydCBpc3QgdW5kCmRpZSBMZWl0dW5nIGRhbm4gZXJzdCBtYWwgdWViZXIgSG9sbGFuZCwgR3Jvc3Nicml0YW5pZW4gdW5kIFNrYW5kaW5hdmllbiBnZWh0LApiZXZvciBkYXMgREZOLUdhdGV3YXkgaW4gRnJhbmtmdXJ0IGVycmVpY2h0IHdpcmQsIGZpbmRlIGljaCBkYXMgc2Nob24KaXJnZW5kd2llIGx1c3RpZy4KCk9ya1QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiB2b3J3YXJudW5nLCBsZXJuZW4gSSAodm9uIElJSSkgKEdsb2luc29uLCAyOC4gTm92IDIwMDEsIDExOjA3OjQ0KToKfiMhIHJuPVBhdHJ5biBydD0xMDA2OTQyMDE0IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTEwMDY0Mjk1NzEKVm9uIGRlbiBLYWVtcGZlcm4gbGVybmVuIGhlaXNzdCBQYXR6ZW4gbGVybmVuIQoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IHZvcndhcm51bmcsIGxlcm5lbiBJICh2b24gSUlJKSAoQW5hdG9sLCAyOC4gTm92IDIwMDEsIDExOjA4OjQ5KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMDY5NDIwNjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NDI5NTcxCkRhenUgYnJhdWNoIGljaCBrZWluZSBLYWVtcGZlci4gRGEgemllaCBpY2ggbWlyICduZW4gVGVlIG1pdCBSdW0gaW4gZGllCkJpcm5lIHVuZCBndXQuICpoaWNrKgoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogdm9yd2FybnVuZywgbGVybmVuIEkgKHZvbiBJSUkpIChCb2luZywgMjguIE5vdiAyMDAxLCAxMToxNDozOCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDA2OTQyMzg3IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTEwMDY0Mjk1NzEKUGF0emVuIG9kZXIgUGxhdHplbj8KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IHZvcndhcm51bmcsIGxlcm5lbiBJICh2b24gSUlJKSAoR2xvaW5zb24sIDI4LiBOb3YgMjAwMSwgMTE6MTY6NTYpOgp+IyEgcm49Qm9pbmcgcnQ9MTAwNjk0MjQ3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY0Mjk1NzEKUGxhdHplbiBkdWVyZmVuIG51ciBaYXViZXJlciBkaWUgYXVjaCBkaWNrIGdlbnVnIGRhZnVlciBzaW5kLiBJY2ggaGFiIGdlaG9lcnQKUGF0cnluIGlzdCBpbiBsZXR6dGVyIFplaXQgZ2VmYWVocmxpY2ggaW4gZGllIE5BZWhlIGRlcyBQbGF0emVucyBnZWtvbW1lbi4KCkdsb2luIlNjaG1hcnJuLUhvb28iKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiB2b3J3YXJudW5nLCBsZXJuZW4gSSAodm9uIElJSSkgKFBhdHJ5biwgMjguIE5vdiAyMDAxLCAxMToxOTowMyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDA2OTQyNjE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjQyOTU3MQpkZW4ga2FwaWVyIGljaCBuaWNoLCBpY2ggd2llZ2UgbmljaHQgbWVociBvZGVyIHdlbmlnZXIgYWxzIHNvbnN0IDopCgotLSAKcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBPcHRpY2FsLU1vdXNlIChJc2ksIDI4LiBOb3YgMjAwMSwgMTE6MjE6NDQpOgp+IyEgcm49Wm9vayBydD0xMDA2OTM2Nzc3IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwMDY5MzUwNTUKRGVpbmUgT3B0aXNjaGUgTWF1cyBmdW5rdGlvbmllcnQgYXVmIFBpenphPwppc2kgKG1vdXNzd2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE9wdGljYWwtTW91c2UgKENhdHdlYXpsZSwgMjguIE5vdiAyMDAxLCAxMToyMjoyMik6Cn4jISBybj1Jc2kgcnQ9MTAwNjk0MjkwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY5MzUwNTUKS3VyeiwgamEgLi4uCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IHZvcndhcm51bmcsIGxlcm5lbiBJICh2b24gSUlJKSAoR2xvaW5zb24sIDI4LiBOb3YgMjAwMSwgMTE6MjM6MTgpOgp+IyEgcm49UGF0cnluIHJ0PTEwMDY5NDI3NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NDI5NTcxCkRhcyBiZWhhdXB0ZXN0IER1IGltbWVyIHdlbm4gRHUgbWl0IGRlbSBTY2hyYXViZW5kcmVoZXIgYXVzIGRlbSBaaW1tZXIgbWl0IGRlcgpXYWFnZSB6dXJ1ZWNra29tbXN0LgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogLi4ubWFuY2hlIHNpbmQgZ2xlaWNoZXIgKEdsb2luc29uLCAyOC4gTm92IDIwMDEsIDExOjI4OjQ0KToKfiMhIHJuPVphcm5peWEgcnQ9MTAwNjk0Mjk5NCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAwNjc4MjE0OQo+IC4uLiBiZXNjaHdlcmUgaWNoIG1pY2ggLi4uIGlzdCBlaW4gUmVnZWx2ZXJzdG9zcy4uLi4KRHUga2VubnN0IHNjaG9uIGRlbiBVbnRlcnNjaGllZCB6d2lzY2hlbiBkZXIgV2FmZmUgdW5kIGRlbSBNb2VyZGVyPwoKR2xvaW4iZnVlciBmcmVpZW4gV2lsbGVuIihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogdm9yd2FybnVuZywgbGVybmVuIEkgKHZvbiBJSUkpIChJc2ksIDI4LiBOb3YgMjAwMSwgMTI6MDY6MTgpOgp+IyEgcm49U2lsdmFuYSBydD0xMDA2OTQ0MzQ1IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTEwMDY0Mjk1NzEKQXVqYSBpY2ggbmVobSByZSAxMDAgdW5kIGd1Y2sgbWlyIGRhcyBhbiB3aWUgRHUgbWlyIGVpbmVuCk1hZ2llcmxldmVsIGFiemllaHN0IDopCmlzaSAobW91c3Nld2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiB2b3J3YXJudW5nLCBsZXJuZW4gSSAodm9uIElJSSkgKFpvb2ssIDI4LiBOb3YgMjAwMSwgMTI6MDc6NDIpOgp+IyEgcm49SXNpIHJ0PTEwMDY5NDU1Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NDI5NTcxCklzaSwgZGFzIGdlaHQuLi4gOi0pKSkKClpvb2sgZ3JpbnN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IHZvcndhcm51bmcsIGxlcm5lbiBJICh2b24gSUlJKSAoU2lsdmFuYSwgMjguIE5vdiAyMDAxLCAxMjoxMjo1Nyk6Cn4jISBybj1Jc2kgcnQ9MTAwNjk0NTU3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY0Mjk1NzEKR2FueiBlaW5mYWNoLiBEYW5hY2ggYmlzdCBEdSBuaWNodCBtZWhyIFNlaGVyaW4uCgogIFNpbHZhbmEgKHdpcmYgbWl0IE9yYW5nZW50cnVlZmZlbG4genVydWVjaykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiB2b3J3YXJudW5nLCBsZXJuZW4gSSAodm9uIElJSSkgKEdsb2luc29uLCAyOC4gTm92IDIwMDEsIDEyOjE0OjI1KToKfiMhIHJuPVNpbHZhbmEgcnQ9MTAwNjk0NTk3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY0Mjk1NzEKRGFubiBtdWVzc3QgaWhyIGFiZXIgaWhyZSBBbmZvcmRlcnVuZ2VuIGFucGFzc2VuIHNvbnN0IGxvaG50IHNpY2ggZGFzIGphIGdhcgpuaWNodC4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiB2b3J3YXJudW5nLCBsZXJuZW4gSSAodm9uIElJSSkgKElzaSwgMjguIE5vdiAyMDAxLCAxMjoxNDoyOSk6Cn4jISBybj1TaWx2YW5hIHJ0PTEwMDY5NDU5Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NDI5NTcxCkFoLiBzb24gbWlzdC4gaWNoIGdsYXViIGRhbm4gbXVzcyBpY2ggYmVpIDk5IHdhcyBwb3N0ZW4sCndhcyBkdSBkaWNoIHp1IGJlYW50d29ydGVuIGdlbm9ldGlndCBzaWVoc3QgOykpKQoqc2NobWF0eiogbGVja2VyIG9yYW5nZW50cnVlZmZlbCAKaXNpIChzY2hva29zdHJldXNzZWx3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6IHZvcndhcm51bmcsIGxlcm5lbiBJICh2b24gSUlJKSAoQmlyZHksIDI4LiBOb3YgMjAwMSwgMTI6MTc6MTkpOgp+IyEgcm49SXNpIHJ0PTEwMDY5NDYwNjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NDI5NTcxCklociB3ZXJmdCBoaWVyIG1pdCBOYWhydW5nc21pdHRlbG4gdW0gZXVjaCE/IEtvZW5udCBpaHIgZGFzIG5pY2h0CmlyZ2VuZHdlbGNoZW4gaHVuZ3JpZ2VuIE5QQ3Mgc3BlbmRlbj8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiB2b3J3YXJudW5nLCBsZXJuZW4gSSAodm9uIElJSSkgKElzaSwgMjguIE5vdiAyMDAxLCAxMjoxNzo1NSk6Cn4jISBybj1CaXJkeSBydD0xMDA2OTQ2MjM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjQyOTU3MQpTZWl0IHdhbm4gYmlzdCBEdSBlaW4gTlBDPwppc2kgKG1vdXNzZXdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogdm9yd2FybnVuZywgbGVybmVuIEkgKHZvbiBJSUkpIChIb2JvLCAyOC4gTm92IDIwMDEsIDEyOjUyOjI3KToKfiMhIHJuPVNpbHZhbmEgcnQ9MTAwNjk0NTk3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY0Mjk1NzEKS2xlaW5lcywgd2VubiBEdSBiZWltIEFibGV2ZWxuIG1pdCBPcmFuZ2VudHJ1ZWZmZWxuIHdpcmZzdCAtIGljaCBoYWIgZWluIHBhYXIKTWFnaWVybGV2ZWwgenUgdmllbC4KCiAgIEhvYm8gbWFjaHQgZGVuIE11bmQgYXVmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogdm9yd2FybnVuZywgbGVybmVuIEkgKHZvbiBJSUkpIChTaWx2YW5hLCAyOC4gTm92IDIwMDEsIDEyOjU0OjU2KToKfiMhIHJuPUhvYm8gcnQ9MTAwNjk0ODM0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY0Mjk1NzEKRFUga3JpZWdzdCBhdWNoIG9obmUgTGV2ZWx2ZXJsdXN0IERlaW5lIFRydWVmZmVscG9ydGlvbiBhYiwgTWFtYS4gOikKCiAgU2lsdmFuYSAoaWhyZSBGYW1pbGllIG1pdCBLYWxvcmllbiBlaW5kZWNrZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IHZvcndhcm51bmcsIGxlcm5lbiBJICh2b24gSUlJKSAoSG9ibywgMjguIE5vdiAyMDAxLCAxMjo1NjozNSk6Cn4jISBybj1TaWx2YW5hIHJ0PTEwMDY5NDg0OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NDI5NTcxCkt1cnogbmFjaCBXZWlobmFjaHRlbiwgSG9ibyBoYXQgZWluIFNjaGlsZCB2b3IgZGVtIEJhdWNoIGhhZW5nZW46IE5FSU4sIGljaApiaW4gbmljaHQgc2Nod2FuZ2VyLiBNZWluZSBUb2NodGVyIG1hY2h0IHNvIGxlY2tlcmUgUHJhbGluZW4uCgogICBIb2JvIC0gZ2VodCBzY2hvbm1hbCB3ZWl0ZXJlIEhvc2VuIGthdWZlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IHZvcndhcm51bmcsIGxlcm5lbiBJICh2b24gSUlJKSAoU2lsdmFuYSwgMjguIE5vdiAyMDAxLCAxMjo1OTozMCk6Cn4jISBybj1Ib2JvIHJ0PTEwMDY5NDg1OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NDI5NTcxCkljaCBmcmFnIG1pY2ggZ3JhZCwgbWl0IHdpZSB2aWVsZW4gUHJhbGluZW4gaWNoIChEZWluZXIgTG9naWsgbmFjaCkgQm9pbmcKZWluZGVja2VuIG11ZXNzdGUuIERlciBoYXR0ZSBkb2NoIGxldHp0bGljaCA2NiBNYWdpZXJsZXZlbCBhYmdlZ2ViZW4uLi4KKnNjaGx1Y2sqIE9LLCBkcmluZ2VuZCB6dXJ1ZWNrIGluIGRpZSBLdWVjaGUuLi4gOy0pCgogIFNpbHZhbmEgKGJlZWlsdCBzaWNoLCBXZWlobmFjaHRlbiBpc3QgYmFsZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiB2b3J3YXJudW5nLCBsZXJuZW4gSSAodm9uIElJSSkgKFphcm5peWEsIDI4LiBOb3YgMjAwMSwgMTM6MDE6NTApOgp+IyEgcm49U2lsdmFuYSBydD0xMDA2OTQ4NzcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjQyOTU3MQpEYXMgZWluemlnZSB3YXMgbWljaCBiZXJ1aGlndCBpc3QsIGRhc3MgaWNoIG1pY2ggZW50c3ByZWNoZW5kIGJlaSBTaWx2YW5hCnJhZWNoZW4ga2Fubi4uLiBpY2gga3JpZWcgbmljaHQgbnVyIGltbWVyIFByYWxpbmVuLCBzb25kZXJuIGljaCB2ZXJzY2hpY2sgYXVjaAphbiBzaWUgdW5kIHNvIHdhY2hzZW4gd2lyIGRhbm4gYmVpZGUgdW0gZGllIEh1ZWZ0ZS4KCk1hcmMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IC4uLm1hbmNoZSBzaW5kIGdsZWljaGVyIChaYXJuaXlhLCAyOC4gTm92IDIwMDEsIDEzOjEwOjA1KToKfiMhIHJuPUhvYm8gcnQ9MTAwNjk0Nzg1MiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAwNjc4MjE0OQppcmdlbmR3aWUgZXJpbm5lcnQgbWljaCBkaWVzZSBnYW56ZSBEaXNrdXNzaW9uIGFuIE1pY3Jvc29mdCBNZW50aGFsaXRhZXQuIFNvbGwKR3JpbW1ib3JuIGRhcyBuYWVjaHN0ZSBtYWwgbmFjaGZyYWdlbiAiV29sbGVuIFNpZSB3aXJrbGljaCBnZXphcHB0IHdlcmRlbj8KKEovTikiIHVuZCBkYW5uICJTaW5kIFNpZSBzaWNoZXI/IChKL04pIgoKQWxzbyBpY2ggYWxzIFVuaXhmYW4gZmluZCwgZGFzcyBkYXMgbmljaHQgc2VpbiBtdXNzLi4uIDopCgpNYXJjClAuUy46IGljaCB3ZWlzcywgZGEgaXN0IGlyZ2VuZHdvIGVpbiBoIHp1dmllbC4uLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IC4uLm1hbmNoZSBzaW5kIGdsZWljaGVyIChEZWVwYmx1ZSwgMjguIE5vdiAyMDAxLCAxNDozOToyOSk6Cn4jISBybj1aYXJuaXlhIHJ0PTEwMDY5NDk0MDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NzgyMTQ5CkVzIHd1ZXJkZSByZWljaGVuLCB3ZW5uIGVyIGFudHdvcnRldCAiSWNoIGRhcmYgZGFzcyBuaWNodCwgZGFzcyBzdGVodCBzbyBpbgpkZW4gcmVnZWxuIgpPZGVyIGEgbGEgVW5peDogQWNjZXNzIGRlbmllZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogLi4ubWFuY2hlIHNpbmQgZ2xlaWNoZXIgKEdyaW1tYm9ybiwgMjguIE5vdiAyMDAxLCAxNDo0OToxMik6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDA2OTU0NzY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjc4MjE0OQpCZWkgcm9vdCBnaWJ0cyBzbyBndXQgd2llIGtlaW4gYWNjZXNzIGRlbmllZC4gV2lyIHNpbmQgZG9jaCBuaWNodCBiZWkgTlQvMmsuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogLi4ubWFuY2hlIHNpbmQgZ2xlaWNoZXIgKEFuYXRvbCwgMjguIE5vdiAyMDAxLCAxNTowMToyNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwNjk1NTM1MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY3ODIxNDkKWyBdIER1IGJpc3QgUm9vdC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiAuLi5tYW5jaGUgc2luZCBnbGVpY2hlciAoR3JpbW1ib3JuLCAyOC4gTm92IDIwMDEsIDE1OjA0OjE4KToKfiMhIHJuPUFuYXRvbCBydD0xMDA2OTU2MDg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjc4MjE0OQpEdSBoYXN0IGRhIHdhcyB2ZXJnZXNzZW4sIGljaCBsaWVmZXJlIGVzIG5hY2g6ClgKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IHZvcndhcm51bmcsIGxlcm5lbiBJICh2b24gSUlJKSAoSGlnaHQsIDI4LiBOb3YgMjAwMSwgMTU6MTI6MjApOgp+IyEgcm49SXNpIHJ0PTEwMDY5NDU1Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2NDI5NTcxCm9laG0gaXNpIGRhcyBnZWh0ICEgZGFubiBiaXN0IGR1IHdpZWRlciBzcGllbGVyICplZyoKd2VubiBkdSBub2NobWFsIHNlaGVyIG1hY2hlbiB3aWxsc3QKCmhpZ2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTdGVyYmVuIHZvciBkZW0gZGFzZWluLi4uIChBcmssIDI4LiBOb3YgMjAwMSwgMTU6NDY6MTIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDY5MDU5NDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2OTAyMDU3CkhtLCBkYWJlaSBoYWJlIGljaCBkZW4gV2ludGVyd29lbGZlbiBkaWUgImJlc3NlciIgcGFzc2VuZGVuIFJlaW1lIGdlZ2ViZW4sIHdhcwptZWNrZXJzdCBEdSBlcnN0IGJlaW0gU2NocmVja2Vucy0gdW5kIFZhbXBpcndvbGY/IDteKQpMZXN0IGVzIGxhbmdzYW0sIGRhbm4gaG9lcnQgZXMgc2ljaCB2aWVsbGVpY2h0IGJlc3NlciBhbiAqZyoKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIb2VjaHN0ZSBaZWl0OiAoTGluZmxhcywgMjguIE5vdiAyMDAxLCAxNjozOTozOSk6Cnd3dy5zcGllZ2VsLmRlL3Bhbm9yYW1hLzAsMTUxOCwxNzAwNDksMDAuaHRtbAoKTC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBTY2h3YWNoc2lubiBoYXQgTWV0aG9kZTogKExpbmZsYXMsIDI4LiBOb3YgMjAwMSwgMTY6NDQ6NTcpOgpXZWlzaGVpdCBkZXMgVGFnZXM6CgpUaXRlbDogQXJtdXQgbWFjaHQgS2luZGVyIGtyYW5rCgoxIFNhdHo6IEFybXV0IG1hY2h0IGtyYW5rIHVuZCB3aXJrdCBzaWNoIG5hY2ggRGFyc3RlbGx1bmcgdm9uIEV4cGVydGVuCmJlbGFzdGVuZCBhdWYgZGllIGdlc2FtdGUgTGViZW5zc2l0dWF0aW9uIHZvbiBLaW5kZXJuIHVuZCBKdWdlbmRsaWNoZW4gYXVzLgoKVmllbGVuIERhbmssIEFQLCBkYXMgaGFldHRlbiB3aXIgbmljaHQgZ2VkYWNodC4gQWxzbyBlaW4gSG9jaCBhdWYgZGVuCkthcGl0YWxpc211cyEgOykKCkwuCgpQLlMuIE5hY2h6dWxlc2VuIHVudGVyIGRlLm5ld3MueWFob28uY29tLzAxMTEyOC8xMi8yZGcycy5odG1sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBPcHRpY2FsLU1vdXNlIChNdXBmZWwsIDI4LiBOb3YgMjAwMSwgMTc6NTc6MzQpOgp+IyEgcm49SXNpIHJ0PTEwMDY5NDI5MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2OTM1MDU1CktlaW5lIEFobnVuZywgZGVyIGd1dGUgd2FyIDIwODUgVGFnZSBuaWNodCBkYS4uLiA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHBhc3N3b3J0OiBzd29yZGZpc2ggKElzaSwgMjguIE5vdiAyMDAxLCAyMjo1MDo1NSk6Cn4jISBybj1QYXRyeW4gcnQ9MTAwNjk4NDE5MSByZz1rdWx0dXIKfiMhIHRpZD0xMDA2OTgzNTYyCmFjaCBkZXN3ZWdlbiBtYWNoIGljaCBrZWluIGZrayAtIGRhcyB3dWVyZCBwYXRybnkgd2lkZXJsZWdlbi4uLi4gOykKaXNpICg3NUJ3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogcGFzc3dvcnQ6IHN3b3JkZmlzaCAoSXNpLCAyOC4gTm92IDIwMDEsIDIyOjUyOjM5KToKfiMhIHJuPUlzaSBydD0xMDA2OTg0MjU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjk4MzU2MgpkYSBoYXQgZGllIG1pZXBpdGlzIHp1Z2VzY2hsYWdlbjogNzVBIHNvbGx0ZSBkYXMgd2VyZGVuLgp1bmQgUGF0cnluLgppc2kgKG1vdXNzZXdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBwYXNzd29ydDogc3dvcmRmaXNoIChNYW5kcmFnb24sIDI4LiBOb3YgMjAwMSwgMjI6NTQ6MjcpOgp+IyEgcm49SXNpIHJ0PTEwMDY5ODQzNTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2OTgzNTYyCldpZSBsYW5nZSBlcyBkYXVlcnQsIGJpcyBzaWUgYmVpIDcwREQgYW5nZWtvbW1lbiBpc3QgPyA6bykKCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogcGFzc3dvcnQ6IHN3b3JkZmlzaCAoV3VyemVsLCAyOC4gTm92IDIwMDEsIDIzOjQxOjI3KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDA2OTg0NDY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjk4MzU2Mgo3MGRkIGdlaHQgZWggbnVyIG1pdCBjaGlydXJnaXNjaGVtIGVpbmdyaWZmLiB1bmQgbnVyIGJlaSBzb2xjaGVuIGNoaXJ1cmdlbiwKZGllIF9zZWhyXyBkcmluZ2VuZCBnZWxkIGJyYXVjaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogcGFzc3dvcnQ6IHN3b3JkZmlzaCAoR2xvaW5zb24sIDI5LiBOb3YgMjAwMSwgMDA6MDY6MzApOgp+IyEgcm49V3VyemVsIHJ0PTEwMDY5ODcyODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2OTgzNTYyCk9kZXIgYmVpIEt1ZWhlbi4gU2NobGFua2VuIEt1ZWhlbi4gVXBzLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRmlybWVuLWVtYWlscyAoR3JpbW1ib3JuLCAyOS4gTm92IDIwMDEsIDA5OjEzOjU1KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDA3MDIxNjI5IG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49VHJveSBydD0xMDA3MDIxNDEzIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwMDY5ODAzMjAKSG1tLCBzbyB3aWUgaWNoIGRhcyBzYWVoZSB0YWV0ZSBlcyBlaW5lIGFuc3RhZW5kaWdlIGZpcmV3YWxsLCBkaWUgcG9ydCAyNQpzcGVycnQsIGViZW5zby4gQWx0ZXJuYXRpdiBlaW5lIGVudHNwcmVjaGVuZGUgc2VuZG1haWwgS29uZmlndXJhdGlvbiwgYWJlciBkYXMKbWl0IGRlciBmaXJld2FsbCBpc3QgZWluZmFjaGVyLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHdXRlIFNhZW5nZXJpbiAoR3JpbW1ib3JuLCAyOS4gTm92IDIwMDEsIDA5OjE1OjI0KToKfiMhIHJuPVphcm5peWEgcnQ9MTAwNzAyMTY3MSByZz1rdWx0dXIKfiMhIHRpZD0xMDA3MDIxNjcxCk1hY2h0IGtlaW5lIGJpbGxpZ2UgUG9wbXVzaWsgc29uZGVybiBiaWxsaWdlbiBDb3VudHJ5PyA7LSkKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV0ZGlnZXN0IChHcmltbWJvcm4sICAxLiBEZXogMjAwMSwgMTI6NDk6NTYpOgpEZW4gbXVzcyBtYW4gZWluZmFjaCBudXIgYXVmIHNpY2ggd2lya2VuIGxhc3NlbjoKCkZyb206ICJUaG9tYXMgRmlua2UiIDx0aG9tYXMuZmlua2VAZ214LmRlPgpOZXdzZ3JvdXBzOiBkZS5jb21tLmludGVybmV0Lm1pc2MKU3ViamVjdDogRE5TCkRhdGU6IFdlZCwgMjggTm92IDIwMDEgMjE6MzU6MzEgKzAxMDAKCgpIYWxsbywKCmdpYnQgZXMgaXJnZW5kd28gZWluZSBMaXN0ZSB2b24gU2VydmVybiBtaXQgZGF6dWdlaG9lcmlnZXIgSVAgPwpJY2ggbW9lY2h0ZSBtaXIgZWluZW4gRE5TIGVpbnJpY2h0ZW4gdW5kIGJyYWV1Y2h0ZSBkYXp1IG5vY2ggZWluIGhvc3QtZmlsZS4KCkRhbmtlCgpUaG9tYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiB2b3J3YXJudW5nLCBsZXJuZW4gSSAodm9uIElJSSkgKExpYXJhLCAgMi4gRGV6IDIwMDEsIDE1OjM5OjU1KToKfiMhIHJuPUFuYXRvbCBydD0xMDA3MjE0MTMzIHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTEwMDY0Mjk1NzEKV2llLCBEdSBuZXJ2c3QgRGVpbmVuIGVpZ2VuZW4gR2lsZGVubWFnaWVyIG5pY2h0IC4uLgpaWkwsIHNjaHJlaXQgbmFjaCBQYXRyeW4gdW5kIHd1bmRlcnQgc2ljaCAuLi4gKEV2dGwuIGlnbm9yaWVydCBlciBEaWNoIGphIHVuZAplcyBsaWVndCBkYXJhbj8gOy0pKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCbG9ja2VuIHVuZCBGYWx0ZW4gKEdyaW1tYm9ybiwgIDIuIERleiAyMDAxLCAyMzowNjo1OCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTAwNzMzMDgxMSBvZz13aXR6ZQp+IyEgcm49TGluZmxhcyBydD0xMDA3MzMwNzM3IHJnPXdpdHplCn4jISB0aWQ9MTAwNzMzMDczNwpCZXNvbmRlcnMgc2Nob2VuIGlzdCBkYSBkZXIgbGV0enRlIFNhdHouIDotKQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNYWlsLUFsaWFzZSAoR3JpbW1ib3JuLCAgMy4gRGV6IDIwMDEsIDE0OjI4OjU3KToKfiMhIHJuPVpvb2sgcnQ9MTAwNzM4NjEwNiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMDcxMTQ3MTIKTmVpbiwgZ2VodCBkb2NoIG5pY2h0LCBpbiBkZXIgUnVicmlrIGhhdCBlciBkb2NoIGRpZSBaZWl0dW5nIHZlcmJyYW5udC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogR2VtdWVzZSAtIEN1cnJ5IC0gUGZhbm5lIChHcmltbWJvcm4sICAzLiBEZXogMjAwMSwgMjE6MzM6MDcpOgp+IyEgb249RWxpemFiZXRoIG90PTEwMDc0MDg0Njcgb2c9a29jaHJlemVwdGUKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwMDY3OTY4OTYgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMDA2Nzk1MDI1Ck1hbmNoZSBMZXV0ZSBzaW5kIGVpbmZhY2ggYXVmIGRlciBHQU5aRU4gbGluaWUgc28gc3ltcGF0aGlzY2ggZGFzcyBzaWUgZG9jaApnbGF0dCBhdWYgbWVpbmVyIGlnbm9yZSBsaXN0ZSBsYW5kZXQuLi4gCnRhdGEgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogR2VtdWVzZSAtIEN1cnJ5IC0gUGZhbm5lIChHcmltbWJvcm4sICAzLiBEZXogMjAwMSwgMjE6MzM6MDgpOgp+IyEgb249TXVwZmVsIG90PTEwMDc0MTExMjEgb2c9a29jaHJlemVwdGUKfiMhIHJuPUVsaXphYmV0aCBydD0xMDA3NDA4NDY3IHJnPWtvY2hyZXplcHRlCn4jISB0aWQ9MTAwNjc5NTAyNQpIZWhlLi4uIGlociBzZWlkIGVjaHQgZWluIFRyYXVtcGFhciA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBTVEFUSSBSYXVtIERBP0ZGTT9NWiAoSXNpLCAgMy4gRGV6IDIwMDEsIDIxOjM0OjU1KToKfiMhIHJuPVd1cnplbCBydD0xMDA3NDExNjE5IHJnPXRyZWZmZW4KfiMhIHRpZD0xMDA2OTY3OTg0Cm5pbW0gaW1kYWAKKmR1Y2sqCmlzaSAobW91c3Nld2VyZnJuZCkKLi0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOiBTVEFUSSBSYXVtIERBP0ZGTT9NWiAoSHVtbmksICAzLiBEZXogMjAwMSwgMjE6MzU6MjkpOgp+IyEgcm49SXNpIHJ0PTEwMDc0MTE2OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2OTY3OTg0CkltZGEgYWxsZWluIHdpcmQgRGlyIG5peCBudWV0emVuLi4uYWxsZWluZSBmaW5kZXQgZGVyIGFsbGVzLgoKTnVyIHdlbm4gaWNoIGRhYmVpIGJpbiwgb2RlciB1bWdla2VocnQuLi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTogU1RBVEkgUmF1bSBEQT9GRk0/TVogKEVsYmVyZXQsICAzLiBEZXogMjAwMSwgMjE6MzY6MDcpOgp+IyEgcm49SHVtbmkgcnQ9MTAwNzQxMTcyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY5Njc5ODQKbmltbSBkYW5uIHp1ciBTaWNoZXJoZWl0IEJhbWJpIGFscyBmYWhyZXIgbWl0LiBEZXIgaXN0IGRhbm4genVtaW5kZXN0Cm51ZWNodGVybiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IFNUQVRJIFJhdW0gREE/RkZNP01aIChNdXBmZWwsICAzLiBEZXogMjAwMSwgMjE6MzY6MTcpOgp+IyEgcm49SHVtbmkgcnQ9MTAwNzQxMTcyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY5Njc5ODQKTWVpbiBOYXZpZ2F0aW9uc3N5c3RlbSBoZWlzc3QgVmFybGFyaW9uIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IFNUQVRJIFJhdW0gREE/RkZNP01aIChBbWFyeWxsaXMsICAzLiBEZXogMjAwMSwgMjE6MzY6NTUpOgp+IyEgcm49SXNpIHJ0PTEwMDc0MTE2OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2OTY3OTg0Cm5pbW0gaW1kYSwgZGFubiBoYXN0ZSBOaW1kYT8KCmphamEsIHNjaGxlY2h0ZXIgS2FsYXVlciwgc2Nob24ga2xhci4uLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IFNUQVRJIFJhdW0gREE/RkZNP01aIChXdXJ6ZWwsICAzLiBEZXogMjAwMSwgMjE6Mzc6MDApOgp+IyEgcm49TXVwZmVsIHJ0PTEwMDc0MTE3Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2OTY3OTg0CnZlcmxlaWhzdCBkdSBkZWluIG5hdmktc3lzdGVtPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzQ6IFNUQVRJIFJhdW0gREE/RkZNP01aIChWYXJsYXJpb24sICAzLiBEZXogMjAwMSwgMjE6Mzg6NTApOgp+IyEgcm49TXVwZmVsIHJ0PTEwMDc0MTE4NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2OTY3OTg0ClNDUklQVEVSISEhCgpWYXJsKiwgaW4gZGVyIHJpY2h0aWdlbiBSdWJyaWsgOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNTogU1RBVEkgUmF1bSBEQT9GRk0/TVogKE11cGZlbCwgIDMuIERleiAyMDAxLCAyMTozOToxNyk6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTAwNzQxMTkzMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY5Njc5ODQKSGV5IGljaCBrb25udGUgbnVyIGVpbmhhZW5kaWcgdGlwcGVuIHVuZCBoYWIgenVzY2huZWxsIHp1IGdlbWFjaHQKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNjogU1RBVEkgUmF1bSBEQT9GRk0/TVogKEh1bW5pLCAgMy4gRGV6IDIwMDEsIDIxOjM5OjQxKToKfiMhIHJuPU11cGZlbCBydD0xMDA3NDExOTU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNjk2Nzk4NApNaXQgd2VsY2hlbSBUb29sIGZ1bnp0IGRlciBCZWZlaGwgZGVubj8KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNjogU1RBVEkgUmF1bSBEQT9GRk0/TVogKFZhcmxhcmlvbiwgIDMuIERleiAyMDAxLCAyMTozOTo1Myk6Cn4jISBybj1NdXBmZWwgcnQ9MTAwNzQxMTk1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDY5Njc5ODQKU29sbCBpY2ggbWVpbmVuIFphdWJpZSBlaW5sb2dnZW4sIGRhbWl0IHNpZSBkaXIgbmUgRXh0cmFoYW5kIG1hY2h0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzc6IFNUQVRJIFJhdW0gREE/RkZNP01aIChNdXBmZWwsICAzLiBEZXogMjAwMSwgMjE6NDE6NTApOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMDc0MTE5OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA2OTY3OTg0Ck5laW4gaWNoIHdvbGx0ZSBkYXMgbmljaHQgcG9zdGVuIHd1cmRlIGFiZXIgYWJnZWxlbmt0IHVuZCBoYXR0ZSBudXIgZWluZSBoYW5kCmZyZWkgdW5kIHVlYmVyaGF1cHQuIGFjaCBlZ2FsCgotbQogIHUKICAgcAogICAgZgogICAgIGUKICAgICAgbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnEuZS5kLiAoRG90eiwgIDQuIERleiAyMDAxLCAwMDowNjoyMyk6Cj5zY2hhZXR6Ci4uLgpEdSBiaXN0IGFic29sdXQgbnVlY2h0ZXJuLgo8SGljaz4hIE9oLCBUc2NodWxkaWd1bmcuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHEuZS5kLiAoVmFuaW9uLCAgNC4gRGV6IDIwMDEsIDAwOjA4OjAyKToKfiMhIHJuPURvdHogcnQ9MTAwNzQyMDc4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDc0MjA3ODMKV2FzIGVyd2FydGVzdCBkdSwgd2VubiBkdSBiZXNvZmZlbiBzY2hhZXR6dC4KCiJTY2hhdHosIFNjaHdhY2hzaW5uLiBLbGFyIGthbm4gaWNoIG5vY2ggZmFocmVuLiBOYWNoIDUgSGFsYmVuLiBNYWNoIGRpY2ggbmljaApsYWVjaGVybGljaC4iCgpWKiwgc2NoYWV0enQsIGVyIGhvbHQgbm9jaCAnbmVuIEJpZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHEuZS5kLiAoRm9vYmFyLCAgNC4gRGV6IDIwMDEsIDAwOjM5OjE2KToKfiMhIHJuPVZhbmlvbiBydD0xMDA3NDIwODgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNzQyMDc4MwpGWUk6IEVpbmUgYWVobmxpY2hlIE1lbGR1bmcga29tbXQgdGF0c2FlY2hsaWNoLCB3ZW5uIG1hbiBzaWNoIGFic29sdXQgYmVzb2ZmZW4Kc2VsYmVyIGVpbnNjaGFldHp0IDtvKQoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaW5rIG1pdCBkZW0gWmF1bnBmYWhsPyBXYXMgaGFiZSBpY2ggZ2V0YW4/IChIdW1uaSwgIDQuIERleiAyMDAxLCAxNDoyMzo0NCk6ClNlbGJzdG1vcmQgc2NobGVpY2h0IGxlaXNlIGhlcmVpbi4KU2VsYnN0bW9yZCB3ZWlsdCB3aWVkZXIgdW50ZXIgZGVuIExlYmVuZGVuLgpTZWxic3Rsb2VzY2h1bmcgdGlwcGVsdCBoZXJlaW4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBDVE0gZnVlciBhbGxlIChWYW5pb24sICA0LiBEZXogMjAwMSwgMTY6NDI6MjIpOgp+IyEgcm49UGlsZ3JpbSBydD0xMDA3NDgwMzQzIHJnPW11ZGNsaWVudHMKfiMhIHRpZD0xMDA3NDI3NDgzClNvbGNoZSBQcm9ibGVtZSBsb2VzdCBtYW4gZWluZmFjaCwgaW5kZW0gbWFuIFRlbG5ldGVyIGF1c2dyZW56dC4KClYqIGlnbm9yaWVydCBjbGllbnQudGVsbmV0ICpnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQ1RNIGZ1ZXIgYWxsZSAoUGF0cnluLCAgNC4gRGV6IDIwMDEsIDE4OjUxOjM0KToKfiMhIHJuPVZhbmlvbiBydD0xMDA3NDgwNTQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNzQyNzQ4Mwp3aWVzbywgc2llIGtvZW5uZW4gamEgcGVyIGhhbmQgYXVzcmVjaG5lbiwgd2FzIGRlciB0Zi1sZXIgc2FndCwgd2VubgpzaWUga2V5IHVuZCBtZXNhZ2UgaGFiZW4gOikKCi0tIApwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbGJzdGtyaXRpayBpc3QuLi4gKERlZXBibHVlLCAgNC4gRGV6IDIwMDEsIDE4OjU1OjIwKToKW01vZXJkZXI6R2Vpc3QgSnVsaXVzIEhhbW1lcmJyYW5kdHNdIEhhdWtlLCBEdSA8emVuc2llcnQ+IQpbTW9lcmRlcjpIYXVrZV0gbHVzY2hlIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTZWxic3Rrcml0aWsgaXN0Li4uIChJc2ksICA0LiBEZXogMjAwMSwgMTk6MDQ6MTIpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMDc0ODg5OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA3NDg4NTIwCm1pc3NsdW5nZW4uCmRlZmluaXRpdi4KZWdhbCB3YXMuCmlzaSAoYmFja3dhcmVud2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhYiBpY2ggd2FzIGZhbHNjaGVzIGdlc2FndD8gKE1vcmdvdGgsICA0LiBEZXogMjAwMSwgMjE6MjU6MDkpOgpbU2VoZXI6TW9yZ290aF0gc3BpZWx0IHNjaG9uIGplbWFuZCB3aXogOD8KW1NlaGVyOkRhcmt3aW5nIHd1ZXJkZSBqYSBnZXJuXQpMaWFyYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKRGVpbiBGcmV1bmQgUm9jaHVzIHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1LgpSb2NodXMgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCk1heGltdW0gICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpNKiBncnVlYmVsdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0ZGlnZXN0IChNYWFyZywgIDQuIERleiAyMDAxLCAyMjoxMDoxMCk6CkZyb206IE1hcnRpbiBCYWhtYW5uIDxtYXJ0aW5fdXNlbmV0QGJhaG1hbm4uY29tPgpTdWJqZWN0OiBNYWwgZXR3YXMgenVtIGxhY2hlbiB6d2lzY2hlbmR1cmNoCk5ld3Nncm91cHM6IGRlLmFsdC5yZWMuZmFudGFzeQpEYXRlOiBNb24sIDA1IE5vdiAyMDAxIDEzOjE2OjIzICswMTAwCk1lc3NhZ2UtSUQ6IDwzQkU2ODMxNy5DQTgyNzJBQUBiYWhtYW5uLmNvbT4KCkhpIGFsbCEKCkthbSBnZXJhZGUgdm9uIGVpbmVtIEtvbGxlZ2VuIDotKQoKR3J1c3MKCk1hcnRpbgoKICAgICJNZXJsaW4sIEluYy4gdGVjaG5pY2FsIHN1cHBvcnQuIEhvdyBjYW4gSSBoZWxwIHlvdT8iCiAgICAgIlllc3RlcmRheSBJJ3ZlIGJvdWdodCB5b3VyIHN3b3JkLi4uIgogICAgICJDb25ncmF0dWxhdGlvbnMsIHNpciwgeW91J3ZlIG1hZGUgdGhlIHJpZ2h0IGNob2ljZSEiCiAgICAgIkl0IGRvZXNuJ3Qgd29yay4iCiAgICAgIldoYXQgZG9lcyBpdCBtZWFuIC0gZG9lc24ndCB3b3JrPyIKICAgICAiSXQgZG9lc24ndCBjdXQgdGhlIGRyYWdvbidzIGhlYWQuIgogICAgICJIYXZlIHlvdSByZWFkIHRoZSBtYW51YWwsIHNpcj8iCiAgICAgIkEgbm9ibGUga25pZ2h0IGhhdmUgbm90IHRvIGtub3cgaG93IHRvIHJlYWQhIEJ1dCBteSBhcm1vdXItCiAgICAgYmVhcmVyIGhhdmUgcmVhZCBpdCBmb3IgbWUgYWxvdWQgdHdpY2UuIgogICAgICJXZWxsLCBzaXIuIEhhdmUgeW91IHRha2VuIHRoZSBzd29yZCBvdXQgb2YgdGhlIHNoZWF0aD8iCiAgICAgIlllcy4iCiAgICAgIklzIHRoYXQgcmVhbGx5IHNvPyBDaGVjayBpdCBhZ2FpbiwgcGxlYXNlLiIKICAgICAiSSd2ZSBkb25lIGl0LCBJIHNheSB0byB5b3UhIgogICAgICJPa2F5LCBzaXIuIE5vdyBjaGVjayB0aGUgZWRnZSBzaGFycG5lc3MuIgogICAgICJPdWdoISIKICAgICAiWW91IHNob3VsZG4ndCBkbyBpdCB3aXRoIHlvdXIgZmluZ2VyLCBzaXIuIgogICAgICJXaGF0IHRoZSBmaW5nZXI/IEkndmUgZG9uZSBpdCB3aXRoIG15IHRvbmd1ZSEgSSBhbHdheXMgY2hlY2sgYQogICAgIHNoYXJwIGZsYXZvdXIgb2YgbXkgZGlzaGVzIGxpa2UgdGhhdC4iCiAgICAgIllvdSBzZWUsIHNpciwgYSBzd29yZCBoYXMgYSBiaXQgZGlmZmVyZW50IGNvbnN0cnVjdGlvbiB0aGFuCiAgICAgeW91ciBkaW5uZXIgZGlzaGVzLiBUaGUgdGVybSAnc2hhcnAnIG1lYW5zIGhlcmUuLi4iCiAgICAgIkknbSBub3Qgb2JsaWdlZCB0byBrbm93IHlvdSB0ZWNobmljYWwgdGVybXMhIEknbSBhIHVzZXIsIG5vdCBhCiAgICAgaGFyZHdhcmUgc3BlY2lhbGlzdC4gWW91J2QgYmV0dGVyIGFuc3dlciB3aHkgZG9lc24ndCBpdCB3b3JrISIKICAgICAiRGlkIGl0IHdvcmsgYmVmb3JlPyIKICAgICAiSSBkb24ndCBrbm93LCBJJ3ZlIGJvdWdodCBpdCBvbmx5IHllc3RlcmRheSEiCiAgICAgIk9rYXksIHNpci4gSGF2ZSB5b3UgZG9uZSBhbnl0aGluZyB3aXRoIGl0PyIKICAgICAiTm8hIgogICAgICJBcmUgeW91IHN1cmU/IgogICAgICJXZWxsLCBJIG9ubHkgdG9vayBpdCBvdXQgb2YgdGhlIHNoZWF0aC4iCiAgICAgIkRpZCB5b3UgdHJ5IHRvIGdyaW5kIGl0IHlvdXJzZWxmPyIKICAgICAiV2hhdCBmb3I/IgogICAgICJZb3Uga25vdyBiZXR0ZXIsIHNpci4gTWF5YmUgeW91IHRyaWVkIHRvIGluc3RhbGwgbmV3IHNwZWxscyBvbgogICAgIGl0PyIKICAgICAiTm8sIEkgdXNlIHRoZSBkZWZhdWx0IG9uZXMsIHdoaWNoIGFyZSBzdXBwbGllZCB3aXRoIHRoZQogICAgIHN3b3JkISIKICAgICAiTWF5YmUgaXQncyB0aGUgc3BvaWxpbmcsIHNpcj8gSG93IGxvbmcgYWdvIGhhdmUgeW91IHVwZGF0ZWQKICAgICB5b3VyIGhvbHkgd2F0ZXI/IgogICAgICJJJ3ZlIGRvd25sb2FkZWQgdGhlIGZyZXNoIHZlcnNpb24gb25seSB0d28gZGF5cyBhZ28hIgogICAgICJJIHNlZSwgc2lyLiBUaGVuIGxvb2sgaWYgdGhlcmUgYXJlIHVuc2NyZWVuZWQgc291cmNlcyBvZiBibGFjawogICAgIG1hZ2ljIG5lYXJieS4gVGhleSBtYXkgY3JlYXRlIGhpbmRyYW5jZXMgZm9yIHRoZSBzd29yZC4iCiAgICAgIldoYXQgc291cmNlcz8hIEknbSBpbiB0aGUgZGVzZXJ0ISIKICAgICAiRG9uJ3QgYmUgc28gbmVydm91cywgc2lyLiIKICAgICAiSSdtIG5vdCBuZXJ2b3VzISIKICAgICAiVGhlbiB3aHkgZG8geW91IHBhbnQ/IgogICAgICJCZWNhdXNlIHRoZSBkcmFnb24gaXMgY2hhc2luZyBtZSEiCiAgICAgIk9oLCBzbyB0aGUgZHJhZ29uIGlzIG5lYXIgeW91PyIKICAgICAiWWVzLCBoZSBpcyBhbHJlYWR5IFFVSVRFIG5lYXIhIgogICAgICJFeGNlbGxlbnQsIHNpciEgR2l2ZSBoaW0gdGhlIHJlY2VpdmVyLiIKICAgICAiQW5kIHdoYXQgaWYgaGUgYml0ZXMgbXkgYXJtIG9mZj8iCiAgICAgIlNvcnJ5LCBzaXIsIGJ1dCBtZWRpY2FsIHByb2JsZW1zIGFyZSBiZXlvbmQgb3VyIGNvbXBldGVuY2UuIgogICAgICJOZXh0IHRpbWUgSSdsbCBidXkgYSBzd29yZCBvZiBNb3JnYW5hLCBMdGQuISIKICAgICAiV2VsbC4uLiBva2F5LCBzaXIuIERlc2NyaWJlIGF0IGxlYXN0IGhvdyB0aGUgZHJhZ29uIGxvb2tzLiIKICAgICAiV2VsbCwgaGUgaXMgc3VjaC4uLiB5ZWxsb3cuLi4gd2l0aCBtb3VzdGFjaGVzLi4uIgogICAgICJJdCdzIGNsZWFyIG5vdy4gWW91IHNob3VsZCBiZWdpbiB3aXRoIGl0LiBJdCdzIGEgbm9uLWxpY2Vuc2VkCiAgICAgZHJhZ29uLCBhIENoaW5lc2UgY291bnRlcmZlaXQuIgogICAgICJBbmQ/IgogICAgICJSZWFkIHRoZSBsaWNlbnNlIGFncmVlbWVudCwgc2lyLiBNZXJsaW4sIEluYy4gZG9lc24ndAogICAgIGd1YXJhbnRlZSBhbnkgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1jZXJ0aWZpZWQgZGV2aWNlcy4iCiAgICAgIkFuZCB3aGF0IHNoYWxsIEkgZG8/IgogICAgICJEb24ndCB1c2UgY2hlYXAgbm8tbmFtZSBkcmFnb25zIGFueW1vcmUsIHNpci4iCiAgICAgIkxvb2tzIGxpa2UgSEUgaXMgZ29pbmcgdG8gdXNlIG1lIHJpZ2h0IG5vdyEgQWFhZ2ghIE5vIQogICAgIEFhYWFhLi4uIgogICAgICJTaXI/IFNpciwgYXJlIHlvdSBva2F5Py4uLiBXZWxsLCBpbiBhbnkgY2FzZSwgTWVybGluLCBJbmMuCiAgICAgdGhhbmtzIHlvdSBmb3IgY29vcGVyYXRpb24hIgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYW5rZSBNdXBmZWwuLi4gOykgKEFuYXRvbCwgIDUuIERleiAyMDAxLCAwMDozNzozNSk6CipQbGFmZmYqIEFuYXRvbCB3aXJmdCBEaXIgZWluIEhhbmR0dWNoIGFuIGRlbiBLb3BmLgpSb2FkcnVubmVyIG11c3RlcnQgRGljaCBhdXMgZGVyIEZlcm5lLgpLYWRhYnJhIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uClZhcmRpb24gdGVpbHQgRGlyIG1pdDogc293YXMgOikKWmVwaHlyIHRlaWx0IERpciBtaXQ6ICo/KgpaYXViZXJtYXVzIFBhdHJ5biB0ZWlsdCBEaXIgbWl0OiBob2VoIDopCkthZGFicmEgdGVpbHQgRGlyIG1pdDogd2VuaWdzdGVucyBuIG5hc3Nlcz8gOi0pClJvYWRydW5uZXIga2lwcHQgZWluZW4gZ2FuemVuIEVpbWVyIGVpc2thbHRlcyBTYXVuYS1UYXVjaGJlY2tlbndhc3NlciB6dXJ1ZWNrLgogICBhdXMgZGVyIEZlcm5lLgpBaGFiIHRlaWx0IERpciBtaXQ6IGhleSEgOikKCkRhYmVpIGtvbW0gaWNoIGRvY2ggbnVyIG5pY2h0IG1pdCBkZW0gcHBwZCBrbGFyIHVuZCBmd2FyZiBlaW4gSGFuZHR1Y2guLi4KQW5hdG9sIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhbmtlIE11cGZlbC4uLiA7KSAoVmFybGFyaW9uLCAgNS4gRGV6IDIwMDEsIDAwOjM4OjQ1KToKfiMhIHJuPUFuYXRvbCBydD0xMDA3NTA5MDU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNzUwOTA1NQpLdXJ6IHZvciBEZWluZW0gQXJ0aWtlbDoKCk11cGZlbCBmcmFndDogR2FicyB1ZWJlcmhhdXB0IGtlaW5lIFJlYWt0aW9uPyBOaWNobWFsIHZvbiBBbmF0b2w/CgpWYXJsKiwga2FubiBzaWNoIGVpbiBHcmluc2VuIG5pY2h0IHZlcmtuZWlmZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGFua2UgTXVwZmVsLi4uIDspIChNdXBmZWwsICA1LiBEZXogMjAwMSwgMDA6NDA6MjkpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMDc1MDkxMjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA3NTA5MDU1Ck5vY2ggZGF2b3I6IGljaCB0aXBwZTogZWNob2FsbCAqUGxhZmZmKiAuLi4uIHVuaG51bmQgaGViZSBmcmFnZW5kIGRlbgpaZWlnZWZpbmdlci4gVmFybGFyaW9uIG5pY2t0IG1pciB6dSwgdW5kIGRhcyBVbmhlaWwgbmltbXQgc2VpbmVuIExhdWYuLi4KCi1tdXBmZWwtIChtYWNodCBzaWNoIG1hbG4gYWxpIHdvIGFsbGUgZGFzIHNlaGVuIGJpcyBhdWYgZWluZW4uLi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERhbmtlIE11cGZlbC4uLiA7KSAoQW5hdG9sLCAgNS4gRGV6IDIwMDEsIDAwOjQxOjAxKToKfiMhIHJuPU11cGZlbCBydD0xMDA3NTA5MjI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNzUwOTA1NQpWb3JzaWNodCwgSG9lcmlna2VpdCBrYW5uIERpY2ggZGVuIEtvcGYga29zdGVuLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGFua2UgTXVwZmVsLi4uIDspIChNdXBmZWwsICA1LiBEZXogMjAwMSwgMDA6NDE6NTEpOgp+IyEgcm49QW5hdG9sIHJ0PTEwMDc1MDkyNjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA3NTA5MDU1CkR1IHNwcmljaHN0IGF1cyBFcmZhaHJ1bmc/IDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRGFua2UgTXVwZmVsLi4uIDspIChHcmltbWJvcm4sICA1LiBEZXogMjAwMSwgMDA6NDM6MjEpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMDc1MDkzMTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA3NTA5MDU1CklociBzZWlkIGluIGRlciBmYWxzY2hlbiBSdWJyaWssIGt1c2NoLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgKE1hYXJnLCAgNS4gRGV6IDIwMDEsIDIxOjE4OjI1KToKRnJvbTogQWxiZXJ0IFJpY2hoZWltZXIgPHJpY2hoZWltZXJERUxFVEVfVEhJU0BhY2Nlc3MuY2g+Ck5ld3Nncm91cHM6IGRlLnRhbGsuam9rZXMKU3ViamVjdDogUmU6IFN1Y2hlIFZvcnVydGVpbGUgZ2VnZW4gUGh5c2lrZXIKRGF0ZTogTW9uLCAwMyBEZWMgMjAwMSAyMToxMjowMCBHTVQKTWVzc2FnZS1JRDogPDFEMDlBNUJBMDlDMkQ1RjgucmljaGhlaW1lcmRlbGV0ZV90aGlzQGFjY2Vzcy5jaD4KCiAgICBKYWtvYiBLcmllZ2VyIHNjaHJpZWIgYW0gMDMuMTIuMDEsIDAxOjAwCgpKSz4gQmlzIHZvciB3ZW5pZ2VuIEphaHJlbiB3YXIgcGkgenVyIEJlcmVjaG51bmcgZGVzIEh1YnJhdW1zCkpLPiBlaW5lcyBLZnotTW90b3JzIGluIERldXRzY2hsYW5kIHBlciBHZXNldHogYXVmIDMsMTIgZmVzdGdlbGVndC4KCiAgICBVbmQgZGF6dSBmYWVsbHQgbWlyIGZvbGdlbmRlcyBaaXRhdCBpbiBkaWUgSGFlbmRlOgoKICAgICJUaGUgcHJpbWFyeSBwdXJwb3NlIG9mIHRoZSBEQVRBIHN0YXRlbWVudCBpcyB0byBnaXZlIG5hbWVzIHRvCiAgICBjb25zdGFudHM7IGluc3RlYWQgb2YgcmVmZXJyaW5nIHRvIHBpIGFzIDMuMTQxNTkyNjUzNTg5NzkzIGF0CiAgICBldmVyeSBhcHBlYXJhbmNlLCB0aGUgdmFyaWFibGUgUEkgY2FuIGJlIGdpdmVuIHRoYXQgdmFsdWUgd2l0aCBhCiAgICBEQVRBIHN0YXRlbWVudCBhbmQgdXNlZCBpbnN0ZWFkIG9mIHRoZSBsb25nZXIgZm9ybSBvZiB0aGUKICAgIGNvbnN0YW50LiBUaGlzIGFsc28gc2ltcGxpZmllcyBtb2RpZnlpbmcgdGhlIHByb2dyYW0sIHNob3VsZCB0aGUKICAgIHZhbHVlIG9mIHBpIGNoYW5nZS4iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0gRk9SVFJBTiBtYW51YWwgZm9yIFhlcm94IENvbXB1dGVycwogICAgR3J1c3MgQWxiZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcm9oZSBXZWlobmFjaHRlbiAoVGFuZ2FsdXIsICA2LiBEZXogMjAwMSwgMTA6MTY6MzMpOgpGcmlzY2ggYXVzIG1laW5lbSBQb3N0ZWluZ2FuZwoKTmEgZGFubiBmcm9oZSBXZWlobmFjaHRlbiAhCgotLS0tLSBTY2huaXBwIC0tLS0tCgoxNDg4IGFtIE1vbnRhZyAsIGRlbSA0LiBEZXplbWJlciAyMDAxIDExOjI0OjI0IHVlYmVycHJ1ZWZ0ZQpFaXNlbmJhaG52ZXJiaW5kdW5nZW4oRWlzZW5iYWhuYmFuZGUpIDAyLjAwIEVpc2VuYmFobnBvcnRhbCBkaWUgU2Nod2VpegoKWnVlcnN0IGVpbiBHcm9zc3JlaW5lbWFjaGVuIGF1ZiBkZW0gTml2ZWF1IGRlciBWZXJiaW5kdW5nZW4oQmFuZGUpIGlzdCBkaWUKT3BlcmF0aW9uIGJlZW5kZXQgRWluIGF1c2dlbGFnZXJ0ZXIgU2VydmVyKEtlbGxuZXIpLCBhYmVyIGltbWVyIFN0ZXBoYW5lClNjaHdhcnogaW4gZGVuIEJlc3RlbGx1bmdlbihBdWZ0cmFlZ2VuKS4gTWFuIGFlbmRlcnQga2VpbmUgTWFubnNjaGFmdCwgZGllCmdld2lubnQhIEVpbiBHcm9zc2VzIGRhbmtlIGZ1ZXIgVVBDIEZyYW5rcmVpY2ggZnVlciBkaWUgR2VzY2h3aW5kaWdrZWl0IGlocmVyClZlcmJpbmR1bmcgKDk1IFN0dW5kZW4sIHVtIDMzNCBNQiB6dSBsYWRlbihiZWF1ZnRyYWdlbikhISEpLiBBa3R1YWxpc2llcnVuZwpkZXIgU2VrdGlvbmVuIEVpc2VuYmFobmVyIChtaXQgZWluZW0gR3Jvc3NlbiBkYW5rZSwgd2VpbCBkYXMgR2xlaXMgb2huZSBzaWUKbmljaHQgbWVociBleGlzdGllcnRlKSwgR3J1ZW5kdW5nc29yZ2FuaXNhdGlvbmVuLCBQcmVzc2UgdW5kIEF1c2dhYmUgbWl0IG5ldWVuClZlcmJpbmR1bmdlbihCYW5kZW4pIHVuZCBlaW5lciBuZXVlbiBBa3RlIFNhbW1sdW5nIHZvbiBFaXNlbmJhaG5nZXNldHplbi4KU293aWUgZWluIERla29yIEZlc3RlcyAgCgpBbmxhZXNzbGljaCBkZXIgRmVzdGUgdm9uIEVuZGUgdm9uIEphaHIgd29sbHRlIGlociBEaWVuZXIgc2ljaCBhbGxlIGJlaQpkZW5qZW5pZ2VuIGJlZGFua2VuLCBkaWUgbWlyIGRpZSBFaHJlIHZvbiBpaHJlbSBCZXN1Y2gsIGRlciBGcmV1bmRsaWNoa2VpdAppaHJlcyBCZWl0cmFnZXMgc29nYXIgWnVzYW1tZW5hcmJlaXQsIGFiZXIgYXVjaCBhdXMgaWhyZW4gTmFjaHJpY2h0ZW4gZ2VtYWNodApoYWJlbi4gSWNoIHd1ZW5zY2hlIElobmVuLCBzb3dpZSBpaHJlbiBBbmdlaG9lcmlnZW4sIGF1c2dlemVpY2huZXRlIEZlc3RlIHZvbgpFbmRlIHZvbiBKYWhyIHp1IHZlcmJyaW5nZW4uICBJY2ggYmlsZGUgZGllIFd1ZW5zY2hlLCBkYXNzIHNpY2ggYWxsZSBpaHJlCkhvZmZudW5nZW4sIDIwMDIga29ua3JldGlzaWVyZW4gdW5kIGhvZmZlIGJhbGQsIHNpY2ggU2llIGhpZXIgYXVmIGRlbSBndXRlbgpXZWcgenUgYmVmaW5kZW4uIAoKKHRyYWR1aXQgcGFzIFNvZnRpc2ltbW8pCgpEaWVzZXIgbWFpbCBpc3QgbmljaHQgU3BhbS4uLiBXZW5uIFNpZSBlcyBiZWtvbW1lbihlbXBmYW5nZW4pLCBpc3QgZXMKZGVzd2VnZW4sIGRhc3Mgd2lyIGVpbmVuIEJyaWVmd2VjaHNlbCh1ZWJlcmVpbnN0aW1tdW5nKSBvZGVyIG5vY2gKYXVmcmVjaHRlcmhhbHRlbiBoYWJlbiwgZGFzcyBTaWUgbWlyIGdlc2NocmllYmVuIGhhYmVuLi4uIFdlbm4gU2llIHd1ZW5zY2hlbiwKbmljaHQgbWVociB2b20gbWFpbCBtZWluZXIgU2VpdGUoQW50ZWlsZXMpIGVpbiBrbGVpbmVzIFdvcnQgenUKYmVrb21tZW4oZW1wZmFuZ2VuKSB1bmQgd2VyZGVuIFNpZSBhdXMgZGVyIExpc3RlIGdlbm9tbWVuIHNlaW4gCgotLS0tLSBTY2huYXBwIC0tLS0tLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNdXNzICJXaXR6ZSIgZWlnZW50bGljaCBqdWdlbmRmcmVpIHNlaW4/IChHcmltbWJvcm4sICA2LiBEZXogMjAwMSwgMTc6NTI6NTApOgp+IyEgb249UGF0cnluIG90PTEwMDc2NTc1MzYgb2c9d2l0emUKfiMhIHJuPUFudGhlYSBydD0xMDA3NjUwMTQ5IHJnPXdpdHplCn4jISB0aWQ9MTAwNzY1MDE0OQpqdWdlbmRmcmVpIG5pY2h0IGdlcmFkZSwgYWJlciB6dW1pbmRlc3Qgd2l0emUgc29sbHRlbiBlcyBzZWluLi4uCgoKLS0gCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNdXNzICJXaXR6ZSIgZWlnZW50bGljaCBqdWdlbmRmcmVpIHNlaW4/IChHcmltbWJvcm4sICA2LiBEZXogMjAwMSwgMTc6NTM6MTQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDc2NTc1NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA3NjUwMTQ5Ck5laW4sIHNpZSBzb2xsdGVuIHp1bWluZGVzdCB3aXR6aWcgZ2VtZWludCBzZWluLCBzb25zdCBsYW5kZW4gc2llIHVlYmVyIGt1cnoKb2RlciBsYW5nIGhpZXIuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmx1ZW1jaGVucGZsdWVja2VyLi4uIChEYXJrd2luZywgIDYuIERleiAyMDAxLCAxOToyNzo1NSk6CkVsYWluZSBzY2hsYWVndCBtaXQgZGVtIFZvbGxzdHJlY2tlciBhdWYgZGFzIEdlc3RlaW4gZWluLgpEZXIgVm9sbHN0cmVja2VyIGJyaWNodCBhdXNlaW5hbmRlci4KRWxhaW5lIGFyZ2x0IGVpbiB3ZW5pZyB2b3Igc2ljaCBoaW4uCkVsYWluZSBzYWd0OiBibG9lZGUgZiplcmVpCkR1IGRlbmtzdCAgIC4gbyBPIChGb3JzY2hlcikKRWxhaW5lIHNldWZ6dC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgKEZvb2JhciwgIDYuIERleiAyMDAxLCAyMzoyNzo1OSk6ClsgU3VibWl0dGVycyBOb3RlOiBEYXMga2FubiBwYXNzaWVyZW4sIHdlbm4gbWFuIGluIGVpbmUgZmFsc2NoZSBORwpwb3N0ZXQuLi5dCgpGcm9tOiAiVm9sa2VyIEdyaW5nbXV0aCIgPG5ld3MtZnVwc0B2b2xrZXItZ3JpbmdtdXRoLmRlPgpOZXdzZ3JvdXBzOiBkZS5ldGMuc3ByYWNoZS5kZXV0c2NoClNlbnQ6IE1vbmRheSwgRGVjZW1iZXIgMDMsIDIwMDEgMTE6NDUgUE0KU3ViamVjdDogUmU6IHdlbmlnIExlaXN0dW5nIGJlaW0gR29sZjIKCgpUaG9tYXMgTHVlYmJla2UgKHRvbUBsdWViYmVrZS5kZSkgd3JvdGU6Cgo+IEhleS4KCkRlciBBdXRvciBmZXNzZWx0IGRpZSBBdWZtZXJrc2Fta2VpdCBkZXMgTGVzZXJzIGF1ZiBkZW4gZXJzdGVuIEJsaWNrCmR1cmNoIGRpZXNlIGJlbWVya2Vuc3dlcnQgdW5vcnRob2RveGUgQmVncnVlc3N1bmcuIE1hbiB3dWVyZGUgZWhlciBlaW4KS29tbWEgb2RlciBlaW4gQXVzcnVmemVpY2hlbiBkYWhpbnRlciBlcndhcnRlbiAoYWJlciBiaXR0ZSBudXIKZWluZXMpLgpEb2NoIHNjaG9uIGhpZXIgbGFlc3N0IHVucyBkZXIgQXV0b3IgYWhuZW4sIHdlbGNoIHJldm9sdXRpb25hZXJlcwpHZWRhbmtlbmd1dCB1bnMgaW0gd2VpdGVyZW4gVmVybGF1ZiBkZXMgUG9zdGluZ3MgZXJ3YXJ0ZXQuIFdlcmRlbiB3aXIKd2VpdGVybGVzZW4/IEljaCBkZW5rZSwgd2lyIHNvbGx0ZW4gZXMgd2FnZW4uCgo+IHNlaXQgZWluaWdlciBaZWl0IGhhYiBpY2ggZGFzIEdlZnVlaGwsIGRhc3MgbWVpbiBHb2xmIHNlaHIgc2NobGVjaHQKPiB6aWVodCAoaGF0IHVlLjcwIHBzKSAuLi4uYXVjaCBicmF1Y2h0IGVyIGF1ZmZlciBBdXRvYmFobiBtZWhyIGFscwo+IDEwTC8xMDBrbS4uLnNjaGVpbnQgbWlyIGlyZ2VuZHdpZSBuaWNoIG5vcm1hbCB6dSBzZWluLi4uLgoKRGVyIHZvbiBTZWl0ZW4gZGVyIFJlY2h0c2NocmVpYmZ1ZXJzdGVuIHByb2tsYW1pZXJ0ZSBLdXJzLCBkaWUKU2NocmlmdHNwcmFjaGUgbW9lZ2UgZGVyIGdlc3Byb2NoZW5lbiBTcHJhY2hlIG5hY2ggTW9lZ2xpY2hrZWl0CmdsZWljaGVuLAp3aXJkIGhpZXIgenUgZWluZXIgZ2FueiBuZXVlbiBWb2xsa29tbWVuaGVpdCBnZWZ1ZWhydC4gRGllCnp1a3VuZnRzd2Vpc2VuZGVuIFNjaHJlaWJ3ZWlzZW4gImF1ZmZlciIgdW5kICJuaWNoIiBzb2xsdGVuCmFsbGVyZGluZ3MKa29uc2VxdWVudGVyd2Vpc2UgZHVyY2ggImlybmt3aWUiIHVuZCAiaGEoYiliaWNoIiBlcmdhZW56dCB3ZXJkZW4sIHVtCmRhcyBHZXNhbXRiaWxkIGFienVydW5kZW4uIFRyb3R6IGRpZXNlcyAoZ2V3b2xsdGVuPykgc3RpbGlzdGlzY2hlbgpTY2huaXR6ZXJzIHN0ZWh0IGVzIGF1c3NlciBad2VpZmVsLCBkYXMgaGllciBlaW5lIG5ldWUgQWVyYSBhbmJyaWNodDsKZGllc2VzIFdlcmsgd2Vpc3Qgd2VpdCB1ZWJlciB1bnNlcmUgbm9jaCB2b20gTXVmZiBtaXR0ZWxhbHRlcmxpY2hlbgpSZWdlbGRlbmtlbnMgYmV0YWV1YnRlbiBLb2VwZmUgaGlud2VnIGluIGVpbmUgWnVrdW5mdCwgZGllIHVlYmVyCkluc3RpdHV0aW9uZW4gd2llIGRpZSBEVURFTi1SZWRha3Rpb24gbnVyIGlociB3ZWlzZXMgSGF1cHQgc2NodWV0dGVsbgprYW5uLgoKPiBrYW5uIG1pciBkYSBqZW1hbmQgc2FnZW4sIHdvcmFuIGRhcyBsaWVnZW4ga2Fubj8gaWNoIGdsYXViZSBuaWNodCwKCkRpZSBrb25zZXF1ZW50ZSBLbGVpbnNjaHJlaWJ1bmcgYW0gU2F0emFuZmFuZyB1ZWJlcnpldWd0IHVtIHNvIG1laHIsIGFscwpzaWUgc2ljaCBpbSB3ZWl0ZXJlbiBWZXJsYXVmIGRlcyBTYXR6ZXMgbmljaHQgZm9ydHNldHp0LiBXaWVkZXJ1bSBhbHNvCmtvbmZyb250aWVydCBkZXIgQXV0b3IgdW5zIG1pdCBlaW5lciBBcnQgdm9uIFJlYWxpdGFldCwgZGVyIHdpciBiaXNsYW5nCnNjaHdlcmxpY2ggamVtYWxzIGF1c2dlc2V0enQgd2FyZW4sIHVuZCB6d2luZ3QgdW5zZXJlIEdlZGFua2VuIGRhbWl0IGluCmRpZSBCYWhuZW4sIGRpZSBkYXMgS29tbWVuIGRlcyBhbmJyZWNoZW5kZW4gWmVpdGFsdGVycyB2ZXJrdWVuZGVuIHdpZQpkaWUgU3RpbW1lIGRlcyBSdWZlbmRlbiBpbiBkZXIgV3Vlc3RlLgoKPiBkYXNzIGVyIHp1IGZldHQgZWluZ2VzdGVsbHQgaXN0LCB2aWVsbWVociBoYWIgaWNoIGJlaW0gRmFocmVuIGRhcwo+IEdlZnVlaGwgbmUgTGFkdW5nIEJhY2tzdGVpbmUgaW0gS29mZmVycmF1bSB6dSBoYWJlbiwgdW5kIEJvZGVuYmxlY2gKPiB6dW0gTEtXIHVlYmVyaG9sZW4uLi5pY2ggd2Vpc3MgbmljaHQgOikKCkF1Y2ggZGVyIHVlYmVyZHVyY2hzY2huaXR0bGljaCBsaXRlcmFyaXNjaCBnZWJpbGRldGUgTGVzZXIgd2Vpc3MgbmljaHQsCndvIGVyIGRlbiBzZW1hbnRpc2NoZW4gR2VoYWx0IGRlcyBCZWdyaWZmcyAiQm9kZW5ibGVjaCB6dW0gTEtXCnVlYmVyaG9sZW4iIHN1Y2hlbiBzb2xsLiBEb2NoIHRyaXR0IGRlcmxlaSBFcmJzZW56YWVobGVyZWkgYmVpCmFuZ2VtZXNzZW5lciBCZXRyYWNodHVuZyBzY2hvbiBiYWxkIGhpbnRlciBkaWUgQmV3dW5kZXJ1bmcgZGFydWViZXIKenVydWVjaywgd2VsY2hlIHVuZXJzY2hvZXBmbGljaGUgUGhhbnRhc2llIGRlbiBBdXRvciB6dSBzb2xjaGVyYXJ0CnNpbm5mYWVsbGlnZW4gTWV0YXBoZXJuIGZ1ZWhydC4gSGllciBnaWx0IGVzLCBkYXMgR2VzYW10d2VyayBpbSBCbGljayB6dQpiZWhhbHRlbiwgc3RhdHQgYW4gRGV0YWlscyBoZXJ1bXp1a3JpdHRlbG4sIGRpZSBkb2NoIG51ciBpbSBzaXR1YXRpdmVuCktvbnRleHQgaWhyZSB3YWhyZSBXaXJrdW5nIGVudGZhbHRlbiB1bmQgbmllbWFscyBpc29saWVydCBiZXRyYWNodGV0CndlcmRlbiBkdWVyZmVuLgoKPiBzY2h1ZWZmLCBqbWQgbmUgSWRlZT8KCkRpZXNlcyBsYXV0bWFsZXJpc2NoZSBFbGVtZW50IGluIGJldm9yenVndGVyIFNhdHpzdGVsbHVuZywgZGVzc2VuIGhlcmJlCldpcmt1bmcgZHVyY2ggZGllIEVsbGlwc2UgZGVzICJuIiBub2NoIGdlc2NoaWNrdCBnZXN0ZWlnZXJ0IHdpcmQsCnVudGVyc3RyZWljaHQgbWl0IGt1ZWhuZW0gU2Nod3VuZyBkYXMgQW5saWVnZW4gZGVzIEF1dG9ycy4gRGVyIExlc2VyCm5laWd0IGJlcmVpdHMgZGF6dSwgZGllc2UgS2xpbWF4IGZ1ZXIgdW51ZWJlcmJpZXRiYXIgenUgaGFsdGVuLCBiaXMgZXIKZGlyZWt0IG5hY2ggZGVtIEtvbW1hIGF1ZiBlaW5lIHVuZXJob2VydCBtdXRpZ2UgV2VpdGVyZW50d2lja2x1bmcgZGVyCmJlcmVpdHMgZXhwb25pZXJ0ZW4gRWxsaXBzZSB0cmlmZnQgLSBlaW4gImUiLCBlaW4gImEiIHVuZCBlaW4gIm4iIGluCmVpbiB1bmQgZGVtc2VsYmVuIFdvcnQgaGF1Y2hlbiBhdWYgZGVtIEJyYW5kYWx0YXIgZGVyIHJoZXRvcmlzY2hlbgpXaXJrdW5nIGlociBudW5tZWhyIHNpbm5sb3NlcyBEYXNlaW4gYXVzLgoKRGllIFNwYW5udW5nIHN0ZWlndCBpbnMgc2NoaWVyIFVuZXJtZXNzbGljaGUsIHVuZCBkZXIgQXV0b3IgYmV3ZWlzdCBlaW4KdW5uYWNoYWhtbGljaCBncm9zc2VzIEVpbmZ1ZWhsdW5nc3Zlcm1vZWdlbiwgaW5kZW0gZXIgZGVuIFNwYW5udW5nc2JvZ2VuCm51biB6dSBlaW5lciByYXNjaGVuIEVudHNwYW5udW5nIGZ1ZWhydC4gRWluIG1lZGl0ZXJyYW4tbGFlc3NpZ2VyIEdydXNzLApnZWtvbm50IG1pdCBkZW0gTmFtZW4gZGVzIFVyaGViZXJzIHZlcmtudWVwZnQsIGJpbGRldCBkaWUgVWViZXJsZWl0dW5nCnp1ciBmYWxzY2ggYWJnZXRyZW5udGVuIFNpZ25hdHVyLCBkaWUgZGVuIExlc2VyIGF1cyBkZW4gaGltbWxpc2NoZW4KU3BoYWVyZW4gYmVodXRzYW0gaW4gZGllIFJlYWxpdGFldCBkZXMgVXNlbmV0IHp1cnVlY2tmdWVocnQuCgo+IGNpYW8gVG9tCgpOb2NoIGltbWVyIGJlYmVuZCwKdkcKCnNjbnIsIGpldHp0IGFiZXIgZ2FueiBzY2huZWxsIGlucyBCZXR0Li4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmF1Y2hlbiBzY2hhZGV0IGRlciBHZXN1bmRoZWl0Li4uLiAoWmVwaHlyLCAgNy4gRGV6IDIwMDEsIDAwOjA4OjE2KToKW1RvZDpMYXJzXSBFaW4gU3R1cnogdm9uIGVpbmVyIFRyZXBwZSBoYXQgZ2VyYWRlIEJyb3RuYWVsIHVtZ2VicmFjaHQuCltUb2Q6RWluIFN0dXJ6IHZvbiBlaW5lciBUcmVwcGVdIERhIGZyYXNjaCBpc2NoIG1pc2NoOiAnSm8gbmVlLCB3aWUga3VtbXMnPwpbVG9kOkVpbiBTdHVyeiB2b24gZWluZXIgVHJlcHBlXSBCcm90bmFlbCBzY2hsYWVndCB1ZmYgbWl0IGxhdWRtIFJVTU1TISAoYykKW1RvZDpFaW4gU3R1cnogdm9uIGVpbmVyIFRyZXBwZV0gd2l0emlzY2hyIEFoc2NoCkR1IHRlaWxzdCBCcm90bmFlbCBtaXQ6IHVmZnoKQnJvdG5hZWwgaXN0IGdlcmFkZSBuaWNodCBkYTogemlnYXJldHRlIHVtbXVoZW4KCkM0LCBOaWNodHJhdWNoZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvbiBtdWVsbCAoSW1kYSwgIDcuIERleiAyMDAxLCAxOTo0MDowNyk6CldhcnVtIGlzIG51IG1lZ2FzY2htYXJybiB2b2xsbCA/CkVnb2wsIGRhbm4gZ2VoaWNoIGhhbHQgc2F1ZmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpRdWVzdGVyIDstKSAoTGlhcmEsICA3LiBEZXogMjAwMSwgMjA6MTY6MjUpOgpbQWJlbnRldWVyOkx1eGF0b3JdIGh1ZGRsZXM6IGhhdCBuaWNodCBqZW1hbmQgZWluZW4gdGlwcCB3byBpY2ggZGllIG11cm1lbG4KW0FiZW50ZXVlcjpMdXhhdG9yXSBmaW5kZT8KW0FiZW50ZXVlcjpCYW1iaV0gW1hdIER1IGhhc3QgZGVuIFNpbm4gZGVyIFF1ZXN0IG5vY2ggbmljaHQgdmVyc3RhbmRlbi4KW0FiZW50ZXVlcjpMaWFyYV0gb2RlciBlciBoYXQgbmUgc2NobGVjaHRlIGtsIDotKQpMdXhhdG9yIHRlaWx0IERpciBtaXQ6IHdhcyBpc3QgZWluZSBrbD8KClpaTCwgc3RvZWhudCB1bmQgZnJhZ3Qgc2ljaDogV2lyZCBkZW5uIGRlbiBMZXV0ZW4gZ2FyIG5peCBtZWhyIGJlaWdlYnJhY2h0LAp3ZW5uIHNpZSBhbmZhbmdlbj8gOy0pKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFF1ZXN0ZXIgOy0pIChBbWFyeWxsaXMsICA3LiBEZXogMjAwMSwgMjA6MTc6NTUpOgp+IyEgcm49TGlhcmEgcnQ9MTAwNzc1MjU4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDc3NTI1ODUKd2FzIGlzbiBaWkw/CgpBbWEqLCBpcyBsZXJuZmFlaGlnIHVuZCBrZW5udCBudXIgWFhMLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFF1ZXN0ZXIgOy0pIChMaWFyYSwgIDcuIERleiAyMDAxLCAyMDoyMDoyMyk6Cn4jISBybj1MaWFyYSBydD0xMDA3NzUyNTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNzc1MjU4NQpBcmsgdGVpbHQgRGlyIG1pdDogd2llIGthbm5zdCBkdSB2b25uZW0ga2FlbXBmZXIgbnVyIGVyd2FydGVuLCBzZWxic3RhZW5kaWcgenUKQXJrIHRlaWx0IERpciBtaXQ6IGRlbmtlbj8gZGFzIHdpcmQgaWhuZW4gZG9jaCBzY2hvbiBmcnVlaCBhYmdld29laG50IDopCgpIYWNoamFhYWEsIGRhcyBpc3QgQmFsc2FtIGF1ZiBtZWluZXIgU2VlbGUgLi4uIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBRdWVzdGVyIDstKSAoQmFtYmksICA3LiBEZXogMjAwMSwgMjA6MjE6MjkpOgp+IyEgcm49TGlhcmEgcnQ9MTAwNzc1MjgyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDc3NTI1ODUKSWNoIHd1ZXJkIGphIHNhZ2VuLGQgYXNzIGRpZXNlciBzcGV6aWVsbGUgS2FlbXBmZXIgdmVyc3VjaHQsIGVpZ2Vuc3RhZW5kaWcgenUKZGVua2VuLCBhYmVyIGljaCB3ZWlzcyBqYSBuaWNodCwgb2IgZXIgbmljaHQgZG9jaCBuZSBLTCBoYXQgdW5kIG51ciBuaWNodAp3ZWlzcywgZGFzcyBtYW4gZGFzICJLTCIgbmVubnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBRdWVzdGVyIDstKSAoTGlhcmEsICA3LiBEZXogMjAwMSwgMjA6MjI6MTkpOgp+IyEgcm49QmFtYmkgcnQ9MTAwNzc1Mjg4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDc3NTI1ODUKQ29vbGVyIEFydGlrZWwuCgpXb2xsdGVzdCBEdSBkYW1pdCBhdWNoIGlyZ2VuZHdhcyBhdXNzYWdlbj8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdGlsYmx1ZXRlbjogKEdsb2luc29uLCAgOC4gRGV6IDIwMDEsIDA2OjEyOjA4KToKUGl0ZmFsbCB0cmlua3QgZWluIExvZXdlbmJyYWV1IChhbGtvaG9sZnJlaSkuCkdsb2luKHNvbik6IEthbm5zdCBEdSBtaXIgc2FnZW4gd2FydW0gRHUgTG9ld2VuYnJhZXUgdHJpbmtzdCB3ZW5uIGRhaGludGVuCnNlY2hzIFJhZGkgc3RlaGVuPQpQaXRmYWxsOiBPaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1vbnN0ZXIgKFZhcmRpb24sICA4LiBEZXogMjAwMSwgMTI6Mzc6MzQpOgpbLW1vbj9dCk1vbnN0ZXIsIEthdHplbiB1bmQgc29uc3RpZ2UgTW9uc3Rlci4KRHUgc2llaHN0IGVpbiBHZXNpY2h0IGF1ZiBkZXIgRWJlbmUgJ01vbnN0ZXInOgpPcmt0b2V0ZXIKClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNb25zdGVyIChPcmt0b2V0ZXIsICA4LiBEZXogMjAwMSwgMTI6NDI6MzcpOgp+IyEgcm49VmFyZGlvbiBydD0xMDA3ODExNDU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNzgxMTQ1NApNaWF1PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTXVoIChDYWtleSwgIDkuIERleiAyMDAxLCAwMDo0MDozNCk6CgoKRWluIEhhdWZlbiBTY2hlaXNzZS4gKDY1KQogIERlciBCYWxyb2cgd2VpY2h0IGRlbSBCdW1lcmFuZyBnZXJhZGUgbm9jaCByZWNodHplaXRpZyBhdXMuCkRlciBCYWxyb2cgcmVmbGVrdGllcnQgRGVpbmVuIEFuZ3JpZmYuCiAgRGVpbiBoZWlsaWdlcyBLcmV1eiBmYWVuZ3QgZGVuIEFuZ3JpZmYgYWIuCiAgRGVyIEJ1bWVyYW5nIHRyaWZmdCBEaWNoIGhhcnQgYW0gS29wZi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpDYWtleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ3Jvc3NlcyB1ZWJlbCBhdWZtIHBvdHQuLi4gKEdub21lLCAgOS4gRGV6IDIwMDEsIDAxOjUzOjQ2KToKKGVpbiBncm9zc2VzIHVlYmVsIHZlcmZvbGd0IGVsYWluZS4uLikKZWxhaW5lIChSTCk6IGRhcyB1ZWJlbCB2ZXJmb2xndCBtaWNoLCBpY2ggYmluIGpldHp0IGF1Zm0ga2xvLgpwaXRmYWxsICh0cm9ja2VuKTogYWJlciBkYXMgaXN0IGRhbm4gYXVmbSBmcmF1ZW5rbG8sIG9kZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPYiBkYXMgbm9jaCB3YXMgd2lyZD8gKENha2V5LCAgOS4gRGV6IDIwMDEsIDA0OjI3OjU5KToKICMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSMKIHwgICAgUCBBIFIgQSAtIEQgVSBFIFMgVCBFIFIgVyBBIEwgRCAgICAgIEUgTiBEIEsgQSBNIFAgRiAgIFMgVCBBIFQgVSBTICAgIHwKIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKIHwgS2FlbXBmZXI6IEJyb3RuYWVsICgwJSw3NiUpICAgICAgICBIZWxmZXI6IEdub21lICAgICAgICAoMTAwJSw5OSUpICBbMl0gIHwKIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERhcmt3aW5nICAgICAoMTAwJSw5NyUpICBbMl0gIHwKIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpZ2h0bmluZyAgICAoMTAwJSw5MiUpICBbM10gIHwKIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBpdGZhbGwgICAgICAoMTAwJSwxMDAlKSBbNl0gIHwKIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsYWluZSAgICAgICAoMTAwJSwzOSUpICBbMl0gIHwKIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVwcGkgICAgICAgICAoMTAwJSwxMDAlKSBbMV0gIHwKIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIHwKIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZlcmJsZWliZW5kZSBTcGlubmVuOiAwICAgICAgIHwKIHwgTm9zZnJldDogICAgICAgICAgKDM3JSwxMDAlKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKIHwgYmlzaGVyaWdlIERhdWVyOiAgMjQgTWludXRlbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKICMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSMKCkNha2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT2IgZGFzIG5vY2ggd2FzIHdpcmQ/IChHbm9tZSwgIDkuIERleiAyMDAxLCAwNDoyODo0Myk6Cn4jISBybj1DYWtleSBydD0xMDA3ODY4NDc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNzg2ODQ3OQpuYWphLi4uIHphdWJlcmVyIGhhbHQuLi4gPjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE9iIGRhcyBub2NoIHdhcyB3aXJkPyAoTWFuZHJhZ29uLCAgOS4gRGV6IDIwMDEsIDA0OjI5OjA5KToKfiMhIHJuPUdub21lIHJ0PTEwMDc4Njg1MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA3ODY4NDc5Ck5lLiBCdWcuCgpNYSogLSBuaWNodCBsZXNlYmVyZWNodGlndC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE9iIGRhcyBub2NoIHdhcyB3aXJkPyAoQnJvdG5hZWwsICA5LiBEZXogMjAwMSwgMDQ6Mjk6NDMpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwMDc4Njg1NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA3ODY4NDc5CnZlcmdpc3MgbmljaCwgZGFzIGljaCBub2NoIG5lbiBzY2hudXBmZW4gaGFiIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprbGVyaWtlci4uLiAoUGl0ZmFsbCwgIDkuIERleiAyMDAxLCAwNDo1Nzo1MSk6CmxpZ2h0bmluZzogaWNoIGtyaWVnIG51ciBuZW4gZGlja2VuCmJyb3RuYWVsOiBhbHNvIGRpY2sgaXN0IG5pY2h0IGd1dAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9iIGRhcyBub2NoIHdhcyB3aXJkPyAoRGFya3dpbmcsICA5LiBEZXogMjAwMSwgMDU6MDM6MzUpOgp+IyEgcm49Q2FrZXkgcnQ9MTAwNzg2ODQ3OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDc4Njg0NzkKW0FiZW50ZXVlcjo8UXVlc3Q+XSBCcm90bmFlbCBoYXQgZ2VyYWRlIGVpbmUgUXVlc3QgZ2Vsb2VzdDogVmVyaGFlbmduaXMgZGVzCltBYmVudGV1ZXI6PFF1ZXN0Pl0gRHVlc3RlcndhbGRzISBFciBiZXNpZWd0ZSBOJ29zJ0ZyZXQgaW4gZGVyIFBhcmF3ZWx0LiBEYWJlaQpbQWJlbnRldWVyOjxRdWVzdD5dIGhhbGZlbiAgaWhtIEdub21lICgyKSwgRGFya3dpbmcgKDIpLCBMaWdodG5pbmcgKDMpLApbQWJlbnRldWVyOjxRdWVzdD5dIFBpdGZhbGwgKDYpLCBFbGFpbmUgKDIpIHVuZCBFcHBpICgxKS4gIFNpZSBiZW5vZXRpZ3RlbgpbQWJlbnRldWVyOjxRdWVzdD5dIGRhenUgMSBTdHVuZGUsIDE1IFNla3VuZGVuLiBEYW1pdCBzaW5kIHNpZSB3ZWl0IGhpbnRlbgpbQWJlbnRldWVyOjxRdWVzdD5dIGFiZ2VzY2hsYWdlbi4KCjotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogT2IgZGFzIG5vY2ggd2FzIHdpcmQ/IChFbGFpbmUsICA5LiBEZXogMjAwMSwgMDU6MDM6MzkpOgp+IyEgcm49QnJvdG5hZWwgcnQ9MTAwNzg2ODU4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDc4Njg0NzkKSGF0IGphIGRhbm4gZG9jaCBub2NoIGdla2xhcHB0Li4uCgpbTW9lcmRlcjpHZWlzdCBOJ29zJ0ZyZXRzXSBPaCBuZWluLCBCcm90bmFlbCBoYXQgbWljaCBzY2hvbiB3aWVkZXIKW01vZXJkZXI6R2Vpc3QgTidvcydGcmV0c10ga2FsdGdlbWFjaHQhCiAjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0jCiB8ICAgIFAgQSBSIEEgLSBEIFUgRSBTIFQgRSBSIFcgQSBMIEQgICAgICBFIE4gRCBLIEEgTSBQIEYgICBTIFQgQSBUIFUgUyAgICB8CiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CiB8IEthZW1wZmVyOiBCcm90bmFlbCAoMjAlLDI2JSkgICAgICAgSGVsZmVyOiBHbm9tZSAgICAgICAgKDEwMCUsMTAwJSkgWzJdICB8CiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEYXJrd2luZyAgICAgKDEwMCUsMTAwJSkgWzJdICB8CiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaWdodG5pbmcgICAgKDk2JSwxMDAlKSAgWzNdICB8CiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQaXRmYWxsICAgICAgKDEwMCUsMTAwJSkgWzZdICB8CiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGFpbmUgICAgICAgKDEwMCUsMTAwJSkgWzJdICB8CiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFcHBpICAgICAgICAgKDEwMCUsMTAwJSkgWzFdICB8CiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSB8CiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWZXJibGVpYmVuZGUgU3Bpbm5lbjogMCAgICAgICB8CiB8IGJpc2hlcmlnZSBEYXVlcjogIDU5IE1pbnV0ZW4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CiAjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0jCltNb2VyZGVyOkJyb3RuYWVsXSBsdXNjaGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldGRpZ2VzdCAoR3JpbW1ib3JuLCAgOS4gRGV6IDIwMDEsIDE3OjM2OjQ1KToKRnJvbTogVWxyaWNoIEJvY2sgPHVic3lzdGVtQHdlYi5kZT4KTmV3c2dyb3VwczogZGUuY29tcC5oYXJkd2FyZS5sYXVmd2Vya2UuYnJlbm5lcgpTdWJqZWN0OiBSZTogaXNvCkRhdGU6IEZyaSwgMDcgRGVjIDIwMDEgMjA6Mjk6MjMgKzAxMDAKTWVzc2FnZS1JRDogPG8yNjIxdTRvZ3BlN2JkcDc3MjdrY3BhMnRlOWVyNXBiMjJANGF4LmNvbT4KCk9uIEZyaSwgNyBEZWMgMjAwMSAyMDoxMTo0NyArMDEwMCwgIlZpbmNlbnQgUGxlZGVyZXIiCjxUZWRkeXBvb2hAdW5pLmRlPiB3cm90ZToKCj5oYWJlIG1pciBlaW4gU3BpZWwgZ2VzYXVndCwgaXMgYWJlciBuZSAqLmlzbyBEYXRlaSwgd2FzIG1hY2ggaWNoIG1pdCBkZXI/Cj4KV2llZGVyIHVwbG9hZGVuLCB3ZWlsIGlsbGVnYWwhCgpVbGkKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRUxGRU4hIChHbm9tZSwgIDkuIERleiAyMDAxLCAyMzoyNDoyMSk6CnVudCB0dWVyCkRpZSBUdWVyIHNpZWh0IHNlaHIgc3RhYmlsIGF1cy4gQXVmIEtvcGZob2VoZSBlaW5lcyBNZW5zY2hlbiBpc3QgZWluIFNjaGllYmVyCmFuZ2VicmFjaHQuCnVudCBrb3BmaG9laGUKMTgwIGNtLgoKaG1wZiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVMRkVOISAoQW1hcnlsbGlzLCAgOS4gRGV6IDIwMDEsIDIzOjI1OjQ3KToKfiMhIHJuPUdub21lIHJ0PTEwMDc5MzY2NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA3OTM2NjYxCkVzIGhpZXNzICJNZW5zY2giLi4uIG5pY2h0ICJFbGYiIDotKQoKQW1hLCB3ZWlzZSBuaWNrZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFTEZFTiEgKEdub21lLCAgOS4gRGV6IDIwMDEsIDIzOjI2OjEzKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDA3OTM2NzQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNzkzNjY2MQppc3QgZG9jaCBhbGxlcyBlaW4gcGFjay4gamF3b2xsISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRUxGRU4hIChBbWFyeWxsaXMsICA5LiBEZXogMjAwMSwgMjM6MjY6NDcpOgp+IyEgcm49R25vbWUgcnQ9MTAwNzkzNjc3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDc5MzY2NjEKbm9jaCBqZW1hbmQgYXVzc2VyIG1pciBMdXN0IGF1ZiBad2VyZ2Vud2VpdHd1cmY/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFTEZFTiEgKENyb2Z0LCAgOS4gRGV6IDIwMDEsIDIzOjI3OjM5KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDA3OTM2ODA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNzkzNjY2MQpBdSBqYSA6LSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFTEZFTiEgKEdyaW1tYm9ybiwgIDkuIERleiAyMDAxLCAyMzoyODowMyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTAwNzkzNjgwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDc5MzY2NjEKW1hdIERhcyB3aWxsc3QgRHUgbmljaHRtYWwgaW0gVHJhdW0gdmVyc3VjaGVuLgoKR2RBLCBad2VyZyBhdXMgTGVpZGVuc2NoYWZ0ICh1bmQgbWl0IGFiYmVzdGVsbHRlciBwb2xpemVpLmJla2FubnRtYWNodW5nZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBFTEZFTiEgKEFtYXJ5bGxpcywgIDkuIERleiAyMDAxLCAyMzoyODo1OSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwNzkzNjg4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDc5MzY2NjEKT2gsIGVpbiB6d2VpdGVzIE9wZmVyLi4uCgpBbWEqLCB1bmJlZWluZHJ1Y2t0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRUxGRU4hIChHb3IsICA5LiBEZXogMjAwMSwgMjM6MzA6MTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDc5MzY4ODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA3OTM2NjYxCkRhcyBtaXQgcG9saXplaSBpcyB3dW5kZXJiYXIgQW1hLCBkZXIgd2Vpc3MgZGFzIG1pdCBkZW0gWmFwcGVuIG5vY2ggbmljaHQuCkxlZ3N0IGR1IGlobiB1bT8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEVMRkVOISAoR3JpbW1ib3JuLCAgOS4gRGV6IDIwMDEsIDIzOjMxOjMzKToKfiMhIHJuPUdvciBydD0xMDA3OTM3MDExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNzkzNjY2MQpXaWUgYXVjaCBpbW1lciwgc293ZWl0IGljaCBtYWwgZGllIFJlZ2VsbiB1ZWJlcmZsb2dlbiBoYWJlIGthbm4gaWNoIG1pdApNYWdpZXJuIG1hY2hlbiB3YXMgaWNoIHdpbGwuIE1pdCBTcGllbGVybiBhdWNoLCBudXIgaXN0IGRhIGRhcwpHZXNjaHJeV1VudGVyaGFsdHVuZ3NlbGVtZW50IGdyb2Vzc2VyLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRUxGRU4hIChHb3IsICA5LiBEZXogMjAwMSwgMjM6MzI6NTMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDc5MzcwOTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA3OTM2NjYxCkRhbm4gaGFzdCBkdSBhYmVyIG51ciBiaXMgIlJlZ2VsOi4uLiIgZ2VsZXNlbi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEVMRkVOISAoR3JpbW1ib3JuLCAgOS4gRGV6IDIwMDEsIDIzOjM0OjQ2KToKfiMhIHJuPUdvciBydD0xMDA3OTM3MTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNzkzNjY2MQpJc3QgZG9jaCBhdXNyZWljaGVuZC4gU1dJVyBzaW5kIE1hdGhlbWF0aWtlciBhdWNoIG1pdCBlaW5lbSBFeGlzdGVuemJld2Vpcwp6dWZyaWVkZW4gKCJlcyBnaWJ0IFJlZ2VsbiIpLCBkaWUgRGV0YWlscyBzaW5kIGVoZXIgdW5pbnRlcmVzc2FudC4KV2ljaHRpZyBpc3QgYWJlciBkYXNzIGRpZSBSZWdlbG4gZnVlciBhbGxlIGdlbHRlbi4gRGllIFJlZ2VsbiBmdWVyIFNwaWVsZXIKZ2VsdGVuIGZ1ZXIgYWxsZSBTcGllbGVyLCBkaWUgUmVnZWxuIGZ1ZXIgTWFnaWVyIGdlbHRlbiBmdWVyIGFsbGUgTWFnaWVyLCBkaWUKUmVnZWxuIGRpZSBpY2ggZnVlciBtaWNoIG1hY2hlIGdlbHRlbiBmdWVyIGFsbGUgR3JpbW1ib3Jucy4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0aWxibHVldGVuOiAoQ2F0d2VhemxlLCAxMC4gRGV6IDIwMDEsIDA4OjQ2OjEyKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMDc3ODgzMjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDA3Nzg4MzI4CkljaCBoYWIgYmVpbSBMZXNlbiBkZXIgVWViZXJzY2hyaWZ0IHRhdHNhZWNobGljaCBlcnN0bWFsICJzdGlsbGJsdXRlbiIgZ2VsZXNlbgp1bmQgbWljaCBnZWZyYWd0IHdhcyBkYXMgaXN0LgoKWVRDICpLcnVlbWVsIGF1cyBkZW4gQXVnZW4ga3JhdHplbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFN0aWxibHVldGVuOiAoR3JpbW1ib3JuLCAxMC4gRGV6IDIwMDEsIDA5OjI4OjExKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDA3OTcwMzcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwNzc4ODMyOApEYXMgaXN0IHdlbm4gbWFuIHN0aWxsIHZvciBzaWNoIGhpbmJsdXRldCwgd2FzIHNvbnN0PwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgd2FycyBqZWRlbmZhbGxzIG5pY2h0Li4uIChSYXZlbnRocm9uZSwgMTAuIERleiAyMDAxLCAxMToyOTowOCk6CltaVDpKYXZhXSB3aWUga29tbWUgaWNoIGFuIGRlbiB6dCBpbiBkZXIgc2F1bmE/Pz8KW01vZXJkZXI6R2Vpc3QgZWluZXMgU2NobGFtbWRyYWNoZW5dIFR1ZmhpciEgV2llc28gaW1tZXIgaWNoPwpbWlQ6SW5lc2hhXSB3aWUgbGF1dGV0IGRlbm4gZGVyIHNwcnVjaD8KW1RvZDpMYXJzXSBFaW4gTWFzc2V1ciBoYXQgZ2VyYWRlIEphdmEgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFBhcnR5IHNjaG9uIHdpZWRlciEgKEFuYXRvbCwgMTAuIERleiAyMDAxLCAyMjo0MjoxMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwODAyMDQ5MCByZz1wYXJ0eQp+IyEgdGlkPTEwMDgwMTY5NDYKSmF1Y2h6ZXQhIEZyb2hsb2NrZXQhIChiYW1tIGJhbW0gYmFtbSBiYW1tIGJhbW0gYnVtbSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBQYXJ0eSBzY2hvbiB3aWVkZXIhIChHcmltbWJvcm4sIDEwLiBEZXogMjAwMSwgMjI6NDM6MTQpOgp+IyEgcm49QW5hdG9sIHJ0PTEwMDgwMjA1MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4MDE2OTQ2CkxvYnByZWlzZWhldCBkZWhlbiBIZXJyZW4hIChkaWRlbGRpZGVsZGlkZWxkaWRlbGRpZGVsZGlkZWwpCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFBhcnR5IHNjaG9uIHdpZWRlciEgKERlZXBibHVlLCAxMC4gRGV6IDIwMDEsIDIyOjQzOjQyKToKfiMhIG9uPURlZXBibHVlIG90PTEwMDgwMjA2MTAgb2c9cGFydHkKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDA4MDIwNDkwIHJnPXBhcnR5Cn4jISB0aWQ9MTAwODAxNjk0NgpOYSBndXQsIGRhbm4gYnJpbmcgaWNocyBoYWx0IG1pdC4gQWJlciBpaHIgbXVlc3N0IGRpZSBDaG9ydGVpbGUgYWxsZSBtaXRzaW5nZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFBhcnR5IHNjaG9uIHdpZWRlciEgKEdyaW1tYm9ybiwgMTAuIERleiAyMDAxLCAyMjo0NjoyNik6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDA4MDIwNjIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODAxNjk0NgpXZW5uIGljaCBlaW5lbiBLbGF2aWVyYXVzenVnIGF1ZnRyZWliZW4ga2FubiBzaW5nZSBpY2ggZGVuIEJhc3MsIHdlbm4gaWhyIG1pY2gKcGVyIFRlbGVmb24gcmVpbmtvbmZlcmVuemllcnQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFBhcnR5IHNjaG9uIHdpZWRlciEgKERlZXBibHVlLCAxMC4gRGV6IDIwMDEsIDIyOjU5OjI5KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwMDgwMjEzNTUgcmc9cGFydHkKfiMhIHRpZD0xMDA4MDE2OTQ2CklzdCBkb2NoIGVnYWwgd2VyIFNhbGx5IGlzdC4gS2xpbmd0IHp1bWluZGVzdCB3ZWlibGljaCwgdW5kIGRhcyByZWljaHQgZG9jaAo6LT4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbHRzYW0gKENhdHdlYXpsZSwgMTEuIERleiAyMDAxLCAxNDo1ODo1MSk6CkhtLCBpcmdlbmR3YXMgaXN0IHNlbHRzYW0uCgotLS0tLQpubgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0LgotLS0tLQoKRGFzIGdlaHQgc2Nob24gZGVuIGdhbnplbiBOYWNobWl0dGFnIHNvLiBGdWVobHQgc2ljaCBpcmdlbmR3aWUga29taXNjaCBhbi4uLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2VsdHNhbSAoSXNpLCAxMS4gRGV6IDIwMDEsIDE0OjU5OjQ1KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDA4MDc5MTMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODA3OTEzMQpTZWxic3QgU2NodWxkCmlzaSAobW91c3Nld2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTZWx0c2FtIChHbG9pbnNvbiwgMTEuIERleiAyMDAxLCAxNTowMjozNyk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTAwODA3OTEzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgwNzkxMzEKRGFzIG5lbm50IHNpY2ggSGVyemluZmFya3QuIER1IHNvbGx0ZXN0IGRhbWl0IHp1bSBBcnp0IGdlaGVuLgoKR2xvaW4oc29uKSBzZXVmenQ6IFdlbm4gIlNoZXJpZmYgdG8gYmUicyBhbHQgd2VyZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOSBNaWxsaWFyZGVuISAoTGluZmxhcywgMTEuIERleiAyMDAxLCAxNTowNDo1OSk6Ck9oLCBqZS4gSGF0dGUgZXIgZXMgYWxzbyBkb2NoIGdlc2NoYWZmdCBtaXQgZGVyIFdlbHRtYWNodD8KVGl0ZWwgYmVpIHlhaG9vLW5ld3M6ClJla29yZHphaGwgdm9uIG5ldW4gTWlsbGlhcmRlbiBNZURldXRzY2hlbiBudXR6dCBCdXNzZSB1bmQgQmFobmVuCgpkZS5uZXdzLnlhaG9vLmNvbS8wMTEyMTEvNzEvMmZoN3IuaHRtbAoKTC4sIHphZWhsdCBtYWwgZHVyY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2Nob2VuZXMsIHNhdWJlcmVzIERldXRzY2hsYW5kIChNYW5kcmFnb24sIDExLiBEZXogMjAwMSwgMjA6Mjc6MjEpOgp+IyEgcm49TGluZmxhcyBydD0xMDA4MDgwNDE5IHJnPXd3dwp+IyEgdGlkPTEwMDgwODA0MTkKQWxzbyBkaWUgUnVicmlrIGlzdCB2Ym9sbCwgZGFoZXIgaGllcjoKCkRpZSBCcmVjaG1pdHRlbGVpbnNhZXR6ZSBnYWIgZXMgc2Nob24gdm9yIFNjaGlsbC4gRGFzIGpldHp0IGRlbSBTY2hpbGwKYW56dWhhZW5nZW4gaXN0IGphIHdvaGwgc2Nod2FjaHNpbm4uCgpNYSogLSBrZWluIHNjaGlsbHN5bXBhdGhpc2FudAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdpciBoZWlzc2VuIGFsbGUgVmFuaW9uIHdpbGxrb21tZW4gKERlZXBibHVlLCAxMS4gRGV6IDIwMDEsIDIwOjQ3OjQ4KToKfiMhIHJuPVRzdW5hbWkgcnQ9MTAwODA5OTk4MiByZz1kLnBvbGFyCn4jISB0aWQ9MTAwODA5OTk4MgpXb2hlciB3aWxsc3QgRHUgd2lzc2VuLCBkYXNzIGFsbGUgVmFuaW9uIHdpbGxrb21tZW4gaGVpc3Nlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG9uIGtsYXIhIChHbm9tZSwgMTEuIERleiAyMDAxLCAyMjo1MjoxMCk6ClBpdGZhbGwgdGVpbHQgRGlyIG1pdDogZGEgaGF1IGljaCBhbGxlcyBkcmF1ZiB3YXMgaWNoIGhhYmUKUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiBnbmFhIHRtIGVycgpQaXRmYWxsIHRlaWx0IERpciBtaXQ6IGRhIGlzIGZva3VzIGVpbiByZWNodCBoZWZ0aWdlciB2b3J0ZWlsClBpdGZhbGwgdGVpbHQgRGlyIG1pdDogZ25hYSBpY2ggaGFzc2UgdGYKUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiBhYmVyIGRpZSBzdGVsbGVuIHNpY2ggYXVjaCBkcmF1ZiBlaW4KUGl0ZmFsbC0+R25vbWUgdGFldHNjaGVsdCBEaXIgYXVzIGRlciBGZXJuZSBkZW4gS29wZi4KUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiBocm1wZiBqZXR6dCByZWljaHRzIDpvKSBzY2hlaXNzIHRmCgoqd2FlbHoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2Nob24ga2xhciEgKEdsb2luc29uLCAxMS4gRGV6IDIwMDEsIDIyOjU3OjQ4KToKfiMhIHJuPUdub21lIHJ0PTEwMDgxMDc1MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4MTA3NTMwClNlaSBmcm9oIGRhc3MgZXMgbmljaHQgdmVyc2NobHVlc3NlbHQgd2FyIDspCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHNjaG9uIGtsYXIhIChQaXRmYWxsLCAxMS4gRGV6IDIwMDEsIDIyOjU4OjEwKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMDgxMDc4Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4MTA3NTMwCmRhcyB3YXIgdmVyc2NobHVlc3NlbHQgbnVyIGJlZ3JlaWZ0IGRhcyBoaWVyIGtlaW5lci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWV4dGUgc2luZCBkb2NoIG5peC4uIChFbGFpbmUsIDEyLiBEZXogMjAwMSwgMjA6Mjk6MDApOgpHbm9tZSBzYWd0OiBtZWluIG5hY2h0ZWlsIGlzdCwgZGFzcyBpY2gga2VpbiBWUyBudXR6ZW4ga2FubgoKLSBvaG5lIHdvcnRlIDpvKSAtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogUGFydHkgc2Nob24gd2llZGVyISAoR25vbWUsIDEyLiBEZXogMjAwMSwgMjA6NDI6MjUpOgp+IyEgcm49QW5hdG9sIHJ0PTEwMDgxMTc2MjMgcmc9cGFydHkKfiMhIHRpZD0xMDA4MDE2OTQ2CnNvcnJ5LCB3aXIgaGF0dGVuIGF1ZiBncmltbWkgZ2Vob2ZmdC4KCmduT21lIGRlbmt0IC4gbyAwICh3ZW5uIG1hbiBpaG4gbWFsIGJyYXVjaHQsIHR1dCBlciBuaXguLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogUGFydHkgc2Nob24gd2llZGVyISAoR2xvaW5zb24sIDEzLiBEZXogMjAwMSwgMDA6Mjc6NTUpOgp+IyEgcm49R25vbWUgcnQ9MTAwODE4NjE0NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgwMTY5NDYKLi4uIGthbm4gZXIgbml4PwpNdXNzIG1hbiBzaWNoIGVyc3QgZHJhbiBnZXdvZWhuZW4gOikKCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEV0bGljaGUgVHlwb3MgYXVzZ2VtZXJ6dCAuLi4gKEJvaW5nLCAxMy4gRGV6IDIwMDEsIDEwOjU2OjU5KToKfiMhIG9uPU5vbm5lIG90PTEwMDgyMzE0MDQgb2c9ZC5nZWJpcmdlCn4jISBybj1Hbm9tZSBydD0xMDA4MjAwNDQyIHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwMDgxNzM3MDcKT2NoLCBzbyBlaW4gRXJsZWJuaXNiZXJpY2h0IHZvbiBMaWFyYXMgS2xvZ2FuZyBmYWVuZGUgaWNoIG1hbCBpbnRlcmVzc2FudC4gTnVyCmJpdHRlIG5pY2h0LCB3ZW5uIHNpZSBnZXJhZGUgaWhyZSBUYWdlIGhhdCwgZGFzIGZhZW5kZSBpY2ggZGFubiBla2VsaWcsIGdsYXViJwppY2guIChjOwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRXRsaWNoZSBUeXBvcyBhdXNnZW1lcnp0IC4uLiAoQm9pbmcsIDEzLiBEZXogMjAwMSwgMTA6NTc6MDApOgp+IyEgb249SGlnaHQgb3Q9MTAwODIzMzM4OSBvZz1kLmdlYmlyZ2UKfiMhIHJuPU5vbm5lIHJ0PTEwMDgyMzE0MDQgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTAwODE3MzcwNwoqZ3J1ZW5hbmxhdWYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBFdGxpY2hlIFR5cG9zIGF1c2dlbWVyenQgLi4uIChCb2luZywgMTMuIERleiAyMDAxLCAxMDo1NzowMSk6Cn4jISBvbj1Nb3Jnb3RoIG90PTEwMDgyMzU1OTIgb2c9ZC5nZWJpcmdlCn4jISBybj1Ob25uZSBydD0xMDA4MjMxNDA0IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwMDgxNzM3MDcKSGFiZW4gWndlcmdlIG5pY2h0IGltbWVyIGlocmUgVGFnZSBvZGVyIHdhcnVtIGhhYmVuIHNpZSBhbGxlIHJvdGUgQmFlcnRlPyAKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBFdGxpY2hlIFR5cG9zIGF1c2dlbWVyenQgLi4uIChCb2luZywgMTMuIERleiAyMDAxLCAxMDo1NzowMik6Cn4jISBvbj1BbWFyeWxsaXMgb3Q9MTAwODIzNTY0MyBvZz1kLmdlYmlyZ2UKfiMhIHJuPU1vcmdvdGggcnQ9MTAwODIzNTU5MiByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDA4MTczNzA3Ck5laW4sIGluIGRlciBSZWdlbCBoYXR0ZW4gbnVyIFdpa2luZ2VyIHJvdGUgQmFlcnRlIDotKQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRXRsaWNoZSBUeXBvcyBhdXNnZW1lcnp0IC4uLiAoQW5hdG9sLCAxMy4gRGV6IDIwMDEsIDEyOjEwOjMyKToKfiMhIHJuPUJvaW5nIHJ0PTEwMDgyMzc0MjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4MTczNzA3Clp3ZXJnaW5uZW4gaGFiZW4gaWhyZSBUYWdlIGF1Y2ggbnVyIGVpbiBwYWFyIFRhZ2UvTW9uYXQuIEFiZXIgZGEgZGllCktvZXJwZXJwZmxlZ2UgamEgZGVuIEluc2VrdGVuIHVlYmVybGFzc2VuIHdpcmQuLi4gd2VsbCwgbWFuIGhhdCBkYW5uCmxhZW5nZXIgd2FzIGRhdm9uLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGFwcGVyc3RvcmNoIGJlaSBMYXJpc3NhIHVuZCBKb2YgKEFwb2xsb25pYSwgMTMuIERleiAyMDAxLCAxNjo1NDo1NCk6Cn4jISBybj1Kb2YgcnQ9MTAwODI1Nzc3NyByZz1hbnplaWdlbgp+IyEgdGlkPTEwMDgyNTc3NzcKTmEgaGVyemxpY2hlbiBHbHVlaHN0cnVtcGYsIGhlcnpsaWNoIHdpbGxrb21tZW4gR2FzdDQgO28pClVuZCBkYXMgbWl0IGRlbSBzdWVzc2VzdGVuIEJhYnkga2FubiB1ZWJlcmhhdXB0IG5pY2h0IHNlaW4sIGRhcyBzdWVzc2VzdGUgQmFieQpkZXIgV2VsdCBpc3QgZGFzIGVpbmVyIE5vbm5lIG1pdCBCcnVzdGJlaGFhcnVuZyA7bykKClhlbmFkYSwgdWViZXJuZWhtZW4gU2llIDtvKQoKQXBvKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLbGFwcGVyc3RvcmNoIGJlaSBMYXJpc3NhIHVuZCBKb2YgKEdyaW1tYm9ybiwgMTMuIERleiAyMDAxLCAxNjo1NjozNik6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTAwODI1ODg5NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgyNTc3NzcKU2FndCB3YXMgaWhyIHdvbGx0LCBhYmVyIG5ldWdlYm9yZW5lIEtpbmRlciBzaW5kIGltbWVyIGhhZXNzbGljaCwgbWFjaHQgZXVjaAphbHNvIGtlaW5lIFNvcmdlbiwgZGFzIHdpcmQgc2Nob24uIFVuZCBuYXR1ZXJsaWNoIEdsdWVja3d1bnNjaCB1bmQgc28uIDotKQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEtsYXBwZXJzdG9yY2ggYmVpIExhcmlzc2EgdW5kIEpvZiAoUGVyZGl0YSwgMTMuIERleiAyMDAxLCAxNjo1Njo1Nik6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTAwODI1ODg5NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgyNTc3NzcKdGphLCB3ZW5uIGpldHp0IEpvZiBtaXQgRmFtaWx5IGF1Y2ggenVyIFBhcnR5IGthZW1lLCBrb2VubnRlbiB3aXIgZG9ydCBkZW4KRGlyZWt0dmVyZ2xlaWNoIGFudHJldGVuLi4uIEFiZXIgZGFyYXVzIHdpcmQgamEgd29obCBuaXgKUGVyZGl0YSBpc3Qgc2Nob24gZ2VzcGFubnQgYXVmIGRpZSBBdXRvZmFocnQgbWl0IEJhYnkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEtsYXBwZXJzdG9yY2ggYmVpIExhcmlzc2EgdW5kIEpvZiAoSXNpLCAxMy4gRGV6IDIwMDEsIDE2OjU3OjI0KToKfiMhIHJuPVBlcmRpdGEgcnQ9MTAwODI1OTAxNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgyNTc3NzcKbmV1Z2Vib3JlbmUgc2luZCBwZXIgc2Ugc3Vlc3MuCnVuZCBHcmF0cy4KaXNpIChtb3Vzc2V3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS2xhcHBlcnN0b3JjaCBiZWkgTGFyaXNzYSB1bmQgSm9mIChQZXJkaXRhLCAxMy4gRGV6IDIwMDEsIDE2OjU4OjQ4KToKfiMhIHJuPUlzaSBydD0xMDA4MjU5MDQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODI1Nzc3NwpnZW5hdSwgZGFzIGdyYXRzIGhhdHRlIGljaCBudW4gZG9jaCBnbGF0dCB2ZXJnZXNzZW4uClVuZCBvYiB3aXIgQW5hdG9sIGpldHp0IHp1bSBXYWhuc2lubiB0cmVpYmVuLCBkYXNzIHdpciBkaWVzZSBSdWJyaWsgc28Kdm9sbG1vZWhsZW4sIHdvIGVyIHNpZSBkb2NoIGV4dHJhIGZ1ZXIgc2VpbmUgbGV0enRlIFBhcnR5YW56ZWlnZSBhdXNnZXdhZWhsdApoYXR0ZSwgd2VpbCBoaWVyIGltbWVyIHNvIHdlbmlnIGxvcyBpc3Q/IT8hCnBlcmRpdGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2xhcHBlcnN0b3JjaCBiZWkgTGFyaXNzYSB1bmQgSm9mIChEZWVwYmx1ZSwgMTMuIERleiAyMDAxLCAxNjo1OTowMik6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTAwODI1ODg5NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgyNTc3NzcKc3RpbW10LCBNZXNpcyBrbGVpbmUga2FubiBtYW4gamEgbmljaHQgbWVociBhbHMgQmFieSBiZXplaWNobmVuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogS2xhcHBlcnN0b3JjaCBiZWkgTGFyaXNzYSB1bmQgSm9mIChQZXJkaXRhLCAxMy4gRGV6IDIwMDEsIDE2OjU5OjQ2KToKfiMhIHJuPVBlcmRpdGEgcnQ9MTAwODI1OTEyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgyNTc3NzcKYWNoLCBpY2ggd2VyZCBhbHQuCndpciBzaW5kIGphIGdhciBuaWNodCBtZWhyIGluIGFuemVpZ2VuLCBzb25kZXJuIGluIHNjaG1hcnJuClBlcmRpdGEgbGFlc3N0IGVzIGpldHp0IHVuZCBnZWh0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBLbGFwcGVyc3RvcmNoIGJlaSBMYXJpc3NhIHVuZCBKb2YgKEdsb2luc29uLCAxMy4gRGV6IDIwMDEsIDIwOjEzOjI0KToKfiMhIHJuPUlzaSBydD0xMDA4MjU5MDQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODI1Nzc3NwpHdXQgenUgd2lzc2VuLgoKR2xvaW4iaWNoIG1hZyBLaW5kZXIsIGljaCBrb2VubnRlIG51ciBrZWluIGdhbnplcyBlc3NlbiIoc29uKSwgc2FiYmVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFBhcnR5d2V0dGVyIChJc2ksIDEzLiBEZXogMjAwMSwgMjA6Mjk6MTIpOgp+IyEgcm49QW5hdG9sIHJ0PTEwMDgyNzE1Nzcgcmc9cGFydHkKfiMhIHRpZD0xMDA4MjYyNTI4Ck9oIHRvbGwuCkJla29tbXN0IER1IGF1Y2ggdW5zZXJlbiBPZmVuIHdpZWRlciBoaW4sIGRlciByYWV1Y2hlcnQgZGFzIFdvaG56aW1tZXIKKmxpZWJndWNrKgppc2kgKHdlc3Blbm5lc3RlcndlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBQYXJ0eXdldHRlciAoQW5hdG9sLCAxMy4gRGV6IDIwMDEsIDIwOjMxOjExKToKfiMhIHJuPUlzaSBydD0xMDA4MjcxNzUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODI2MjUyOApXZW5uIGljaCBkYXMgcmljaHRpZyBkZXV0ZSwgd2Vpc3N0IGR1IGphIGJlcmVpdHMsIHdhcnVtIGV1ZXIgT2ZlbgpkYXMgV29obnppbW1lciBlaW5yYWV1Y2hlcnQuIAoKQW5hdG9sIChXZXNwZW5uZXN0ZXJrYW5ubWFuaW13aW50ZXJlbnRmZXJuZW53ZXJmZW5kKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFBhcnR5d2V0dGVyIChBbmF0b2wsIDEzLiBEZXogMjAwMSwgMjA6NDI6MTApOgp+IyEgb249QW5hdG9sIG90PTEwMDgyNzI1MjIgb2c9cGFydHkKfiMhIHJuPUdsb2luc29uIHJ0PTEwMDgyNzE5MTUgcmc9cGFydHkKfiMhIHRpZD0xMDA4MjYyNTI4Ck5laW4sIGljaCB3b2xsdGUgbnVyIGRldXRsaWNoIG1hY2hlbiwgZGFzcyBpY2gsIGZhbGxzIGlociBkaWUgQnVkZQplaW5yYWV1Y2hlcnQsIG1pdCBLcml0aWsgc2ljaGVyIG5pY2h0IHNwYXJlbiB3ZXJkZS4gXTpePgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBQYXJ0eXdldHRlciAoQW5hdG9sLCAxMy4gRGV6IDIwMDEsIDIwOjQzOjA2KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwMDgyNzI1NTYgcmc9cGFydHkKfiMhIHRpZD0xMDA4MjYyNTI4CkR1IHdhcnN0IG1pdCBTY2hyZWliZW4gbmljaHQgc28gc2NobmVsbCB3aWUgaWNoIG1pdCB2ZXJsZWdlbi4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogUGFydHl3ZXR0ZXIgKEdyaW1tYm9ybiwgMTMuIERleiAyMDAxLCAyMToyMDowOSk6Cn4jISBybj1BbmF0b2wgcnQ9MTAwODI3MjU4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgyNjI1MjgKQWxzbywgaWNoIGhhbHRlIFdlc3Blbm5lc3RlciBuaWNodCBmdWVyIGVpbiBQcm9ibGVtLiBEcmVpLSwgdmllcmh1bmRlcnQKTWlsaWxpdGVyIEJlbnppbiBkcnVlYmVya2lwcGVuIHVuZCBhbnp1ZW5kZW4uIFNvIGVpbmZhY2ggaXN0IGRhcy4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFBhcnR5d2V0dGVyIChHbG9pbnNvbiwgMTMuIERleiAyMDAxLCAyMTo1Mzo0NSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwODI3NDgwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgyNjI1MjgKVW5kIHdpZSBvZnQgaGFzdCBEdSBkYXMgc2Nob24gZ2V0YW4/CgpHbG9pbihzb24pLCBza2VwdGlzY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBQYXJ0eXdldHRlciAoR3JpbW1ib3JuLCAxMy4gRGV6IDIwMDEsIDIxOjU2OjU3KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMDgyNzY4MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4MjYyNTI4Ck5vY2ggbmllLiBEaWUgV2VzcGVuIHNwdWVyZW4gc293YXMgdW5kIGxhc3NlbiBzaWNoIGVyc3QgZ2FyIG5pY2h0IGluIG1laW5lcgpOYWVoZSBuaWVkZXIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBQYXJ0eXdldHRlciAoSGV0dGFyLCAxMy4gRGV6IDIwMDEsIDIzOjM3OjMyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDA4Mjc3MDE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODI2MjUyOApOb2NoIG5pZSBldHdhcyB2b24gQ08yIGdlaG9lcnQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogUGFydHl3ZXR0ZXIgKEdyaW1tYm9ybiwgMTMuIERleiAyMDAxLCAyMzo0Mzo1Mik6Cn4jISBybj1IZXR0YXIgcnQ9MTAwODI4MzA1MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgyNjI1MjgKRmx1ZWNodGlnLiBEYXMgYnJlbm50IGFiZXIgc28gc2NobGVjaHQuIE5hdHVlcmxpY2gga29lbm50ZSBtYW4gRmx1b3IgbmVobWVuLAphYmVyIGRhIGtvbW10IG1hbiBhbHMgTm9ybWFsc3RlcmJsaWNoZXIgc28gc2NobGVjaHQgZHJhbiwgdW5kIGRhcyBpc3QgYXVjaApzY2hsZWNodCBmdWVyIGRpZSBHZXNpY2h0c2ZhcmJlIHdlbm4gbWFuIGRhcyBlaW5hdG1ldC4gCkFsbGVyZGluZ3Mga29lbm50ZSBtYW4gU2F1ZXJzdG9mZiBuZWhtZW4sIGRhbm4gcmVpY2h0IGVpbiBTdHJlaWNoaG9seiwgbWFuCmJyYXVjaHQga2VpbiBCZW56aW4uIElzdCBhdWNoIHZpZWwgdW13ZWx0ZnJldW5kbGljaGVyLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogUGFydHl3ZXR0ZXIgKEhldHRhciwgMTMuIERleiAyMDAxLCAyMzo0NToyMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwODI4MzQzMiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgyNjI1MjgKRmFsbHMgZXMgc2ljaCB1bSBFcmR3ZXNwZW4gaGFuZGVsdCwgZ3JhZWJ0IG1hbiBiaXMgZGllIFdlc3BlbiBzaWNoIHJ1ZWhyZW4uCkRhbmFjaCBiZXRhZXVidCBtYW4gc2llIG1pdCBDTzIuIEdyYWVidCBkYXMgTmVzdCB2b2xsIGF1cyB1bmQgdmVyYnJlbm50IGVzIG1pdApCZW56aW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogUGFydHl3ZXR0ZXIgKEdyaW1tYm9ybiwgMTMuIERleiAyMDAxLCAyMzo0Njo0OSk6Cn4jISBybj1IZXR0YXIgcnQ9MTAwODI4MzUyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgyNjI1MjgKSWNoIGJpbiBrZWluIEJpb2xvZ2UsIGFiZXIgd2VubiBzbyBlaW4gRXJkd2VzcGVubmVzdCB1ZWJlcnNjaGF1YmFyIHZpZWxlCkVpbmdhZW5nZSBoYXQgc29sbHRlIGVzIHJlaWNoZW4gZGllIEVpbmdhZW5nZSBtaXQgVHJvY2tlbmVpZXMgenUgdmVyc3RvcGZlbi4KRGEgd3VlcmRlIHNpY2ggZGFzIEZldWVyd2VyayBlcnVlYnJpZ2VuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogUGFydHl3ZXR0ZXIgKEhldHRhciwgMTMuIERleiAyMDAxLCAyMzo0ODo0OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwODI4MzYwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgyNjI1MjgKTWVpbmUgTWV0aG9kZSBpc3QgYXVmIGFsbGUgRmFlbGxlIGVmZmVrdGl2LiBDTzItRmxhc2NoZW4gdW5kIEJlbnppbiBnaWJ0IGVzCnVlYmVyYWxsLiBXbyBsaWVndCBkYXMgUHJvYmxlbT8gTG9zIHdpcmQgbWFuIHNpZSBhdWYgYWxsZSBGYWVsbGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogUGFydHl3ZXR0ZXIgKEdyaW1tYm9ybiwgMTMuIERleiAyMDAxLCAyMzo1MDozNik6Cn4jISBybj1IZXR0YXIgcnQ9MTAwODI4MzcyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgyNjI1MjgKTmFqYSwgd2VubnMgZGFydW0gZ2VodDogTG9zIHdpcmQgbWFuIHNpZSBhdWNoIG1pdCBlaW5lciBrbGVpbmVuIFRyZXRtaW5lLgpFcmhhZWx0bGljaCBhbHMgU291dmVuaWVyIGJlaW0gQWZnaGFuaXN0YW51cmxhdWIuIE9kZXIgYXVzIEFmcmlrYS4gRGllIGxpZWdlbgpqZWRlbmZhbGxzIGluIHdlaXRlbiBUZWlsZW4gZGVyIFdlbHQgZWluZmFjaCBzbyBydW0sIGRhcmYgamVkZXIgbWl0bmVobWVuIGRlcgp3aWxsLiBOZWJlbiBkZW0gTmVzdCB2ZXJncmFiZW4sIGF1c2xvZXNlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IFBhcnR5d2V0dGVyIChIZXR0YXIsIDEzLiBEZXogMjAwMSwgMjM6NTI6MzApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDgyODM4MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4MjYyNTI4CkFtIEJlc3RlbiBpbiBkZXIgTmFlaGUgYmxlaWJlbiB1bmQgc2NoYXVlbiwgb2IgZXMgYXVjaCB3aXJrbGljaCBmdW5rdGlvbmllcnQhCkFtIEJlc3RlbiBpbiBkZXIgTmFlaGUgYmxlaWJlbiB1bmQgc2NoYXVlbiwgb2IgZXMgYXVjaCB3aXJrbGljaCBmdW5rdGlvbmllcnQhCgpNYWNoZW4gd2lyIGpldHp0IG1lZ2FzY2htYXJybiBpbiBkZXIgc2NobWFycm4tUnVicmlrPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IFBhcnR5d2V0dGVyIChHcmltbWJvcm4sIDEzLiBEZXogMjAwMSwgMjM6NTQ6NDQpOgp+IyEgcm49SGV0dGFyIHJ0PTEwMDgyODM5NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4MjYyNTI4CkljaCBzZXR6ZSBlaW5lbiB2ZXJ0cm9ja25ldGVuIEhpcnNjaGthZWZlciBmdWVyIFJlXjUwMCBhdXMuIEVpbmUgZ2V0cm9ja25ldGUKV2VzcGUgd2FlcmUgbmF0dWVybGljaCBiZXNzZXIsIGFiZXIgc28gZWluZSBoYWIgaWNoIG5pY2h0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogUGFydHl3ZXR0ZXIgKEhldHRhciwgMTMuIERleiAyMDAxLCAyMzo1NzozNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwODI4NDA4NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgyNjI1MjgKdmVydHJvY2tuZXRlciBIaXJzY2hrYWVmZXI/CnZpZWxsZWljaHQga29tbXQgZGVtbmFlY2hzdCBlaW4gYXVzZ2VzdG9wZnRlcyBCYW1iaSBkYXp1PwoKRGEgbXVlc3N0ZW4gc2Nob24gZWluIHBhYXIgbWVociBtaXRzY2htYXJybiEKCldpbGxzdCBEdSBhdWNoIGluIGRpZXNlciBSdWJyaWsgZGVuIGVyc3RlbiBQbGF0eiBiZWxlZ2VuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IFBhcnR5d2V0dGVyIChHcmltbWJvcm4sIDE0LiBEZXogMjAwMSwgMDA6MTU6MDMpOgp+IyEgcm49SGV0dGFyIHJ0PTEwMDgyODQyNTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4MjYyNTI4CkNvbnRyYXJ5IHRvIGNvbW1vbiBiZWxpZWYgYmluIGljaCBuaWNodCB0b3BsaXN0ZW5nZWlsLiBTb3dhcyB3YXIgZnJ1ZWhlciBtYWwKbHVzdGlnLCBoZXV0enV0YWdlIGlzdCBtaXIgZGFzIGdsZWljaGd1ZWx0aWcuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBQYXJ0eXdldHRlciAoSGV0dGFyLCAxNC4gRGV6IDIwMDEsIDAwOjE4OjE5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDA4Mjg1MzAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODI2MjUyOApJY2ggaGFiIHNjaG9uIGdlZGFjaHQsIGRhc3MgRHUgZWluZ2VzY2hsYWZlbiBiaXN0LgpIZXV0ZSBpc3Qgd2lya2xpY2ggbmljaHQgdmllbCBsb3MgaGllciEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBQYXJ0eXdldHRlciAoR3JpbW1ib3JuLCAxNC4gRGV6IDIwMDEsIDAwOjI1OjQ5KToKfiMhIHJuPUhldHRhciBydD0xMDA4Mjg1NDk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODI2MjUyOApJY2ggYmluIG5pY2h0IGVpbmdlc2NobGFmZW4sIGFiZXIgaWNoIGhhYiBub2NoIG5lIE5lYmVuYmVzY2hhZWZ0aWd1bmcuIE5hY2hkZW0Kdm9yaGluICJEZXIgVG9kIHVuZCBkYXMgTWFlZGNoZW4iIGthbSAobWl0IGRlbSBRdWFydGV0dCBhbGxlcmRpbmdzLCBuaWNodCBkZW0KTGllZCkgaGFiZSBpY2ggZXJzdG1hbCBkaWUgV2ludGVycmVpc2UgYXVzZ2VncmFiZW4uIE1hbiBrYW5uIGphIG5pY2h0IGltbWVyCm51ciBCcml0bmV5IFNwZWFycyBob2VyZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBQYXJ0eXdldHRlciAoSGV0dGFyLCAxNC4gRGV6IDIwMDEsIDAwOjI5OjU4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDA4Mjg1OTQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODI2MjUyOApEYXMgd2FlcmUgbWlyIHp1IHNvIHNwYWV0ZXIgU3R1bmRlIHp1IHZpZWwgQWN0aW9uLgpTbyBiZWtvbW1lbiB3aXIgZGllIDUwMCBhYmVyIG5pY2h0IHZvbGwhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IFBhcnR5d2V0dGVyIChHcmltbWJvcm4sIDE0LiBEZXogMjAwMSwgMDA6MzI6MjQpOgp+IyEgcm49SGV0dGFyIHJ0PTEwMDgyODYxOTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4MjYyNTI4Ck5hamEsIHNvIHdpcmtsaWNoIHZlcmdyYWJlbiB3YXIgZGllIENEIG5pY2h0LiBVbmQgZGVyIEZpbG0gaXN0IGVpbmZhY2gKZ3Jvc3NhcnRpZy4gU2lnb3VybmV5IFdlYXZlci4gQmVuIEtpbmdzbGV5LiBSb21hbiBQb2xhbnNraS4gVW5kIGRpZQpXZXJiZXVudGVyYnJlY2h1bmdlbiB2b24gUlRMMiAqZmx1Y2gqLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogUGFydHl3ZXR0ZXIgKEhldHRhciwgMTQuIERleiAyMDAxLCAwMDozNzoxOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwODI4NjM0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgyNjI1MjgKRGFzIGhhdCBzaWNoIHJpY2h0aWcgaGVpbWVsaWcgYW5nZWhvZXJ0LCBiaXMgenUgZGVtIFB1bmt0IHdvIER1IHZvbgpXZXJiZXVudGVyYnJlY2h1bmdlbiBhbmdlZmFuZ2VuIGhhc3QuIERhIGhhc3QgRHUgRGlyIHNvd2llc28gZGVuIGJlc3RlbiBTZW5kZXIKcmF1c2dlc3VjaHQuIE1pbmltYWwgRmlsbSB1bmQgbWF4aW1hbCBXZXJidW5nIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IFBhcnR5d2V0dGVyIChHcmltbWJvcm4sIDE0LiBEZXogMjAwMSwgMDA6NDU6MjQpOgp+IyEgcm49SGV0dGFyIHJ0PTEwMDgyODY2Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4MjYyNTI4CkFoLCBEdSBrZW5uc3QgZGVuIEZpbG0gbmljaHQuICJIZWltZWxpZyIgYmVzY2hyZWlidCBpaG4gamV0enQgbmljaHQgd2lya2xpY2gKc28uIEVzIGdlaHQgdW0gZWluZSBGcmF1IGluIFN1ZWRhbWVyaWthLCBkaWUgbWl0IGlocmVtIE1hbm4sIGRlciBmdWVyIGVpbmVuCkF1c3NjaHVzcyB6d2Vja3MgVmVyZ2FuZ2VuaGVpdHNiZXdhZWx0aWd1bmcgdGFldGlnIGlzdCwgaW4gZWluZW0gZWluc2FtZW4gSGF1cwp6dXNhbW1lbmxlYnQgdW5kIGluIGVpbmVtIGVoZXIgenVmYWVsbGlnZW4gQmVzdWNoZXIgZGVuIE1hbm4gd2llZGVyZXJrZW5udCwKZGVyIHNpZSB2b3IgMTUgSmFocmVuIGdlZm9sdGVydCB1bmQgdmVyZ2V3YWx0aWd0IGhhdC4gTmVpbiwgImhlaW1lbGlnIiB0cmlmZnQKZXMgd2lya2xpY2ggbmljaHQuIEVpbiBwYWFyIERldGFpbHMgZ2lidCBlcyB1bnRlcgpodHRwOi8vdXMuaW1kYi5jb20vVGl0bGU/MDEwOTU3OSwgYWJlciB2aWVsIGdpYnQgZGFzIG5pY2h0IGhlci4KCkdkQSBnZWh0IGRhbm4gamV0enQgbWFsIHNjaGxhZmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IFBhcnR5d2V0dGVyIChIZXR0YXIsIDE0LiBEZXogMjAwMSwgMDA6NDc6MzYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMDgyODcxMjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4MjYyNTI4CkljaCBrZW5uZSBkZW4gRmlsbSBpbiBkZXIgVGF0IG5pY2h0LiBIZWltZWxpZyBrYW5uIG1hbiBkYXMgaW4gZGVyIFRhdCBuaWNodApuZW5uZW4uCgpTY2hsYWYgZ3V0ISBJY2ggd3VlbnNjaCBEaXIgd2FzIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IFBhcnR5d2V0dGVyIChHbG9pbnNvbiwgMTQuIERleiAyMDAxLCAwMTo0NzoxOSk6Cn4jISBybj1IZXR0YXIgcnQ9MTAwODI4NzI1NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgyNjI1MjgKRGFzIGVoZW0uIFRoZWF0ZXJzdHVlY2sgZ2lidCBlcy9nYWIgZXMgYXVjaCBmdWVyIGRpZSBTY2h1bGVuIHp1bWluZGVzdCBpbgpCdWNoZm9ybS4gWmllbWxpY2ggc3Bhbm5lbmQgenUgbGVzZW4gdW5kICpnYWVobiogenUgaW50ZXJwcmV0aWVyZW4gOykKCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGdWVyIFNhbW1sZXIhIChUcm95LCAxNC4gRGV6IDIwMDEsIDEwOjEzOjM5KToKfiMhIHJuPU5pcmRhdm8gcnQ9MTAwODMyMDk4MyByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwMDgzMjA5ODMKSWNoIGhhZXR0ZSBkYSBub2NoIDcga2cgbGVlcmUgQUEtIHVuZCBBQUEtIEJhdHRlcmllbiBhbnp1YmlldGVuLiBTYW1tZWx0CmRhcyBqZW1hbmQ/CgpUcm95CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZ1ZXIgU2FtbWxlciEgKENhdHdlYXpsZSwgMTQuIERleiAyMDAxLCAxMDoxNDozNyk6Cn4jISBybj1Ucm95IHJ0PTEwMDgzMjEyMTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4MzIwOTgzClNjaGljayBzaWUgR3JpbW1ib3JuLiBEZXIga2FubiBkYW1pdCB3ZWl0ZXJlCkVyZHdlc3Blbi1WZXJuaWNodHVuZ3MtRXhwZXJpbWVudGUgbWFjaGVuLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGdWVyIFNhbW1sZXIhIChBbnRoZWEsIDE0LiBEZXogMjAwMSwgMTA6MTY6MjYpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMDgzMjEyNzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4MzIwOTgzCkdlbmF1LiBXaWUgdmVyaGFsdGVuIHNpY2ggRXJkd2VzcGVuLCB3ZW5uIG1hbiBkaWUgRWluZ2FlbmdlIG1pdCBhdWZnZXNhZWd0ZW4KQmF0dGVyaWVuIHZlcnN0b3BmdC4KQW5zb25zdGVuIHd1ZXNzdGUgaWNoIGplbWFuZGVuLCBkZXIgc29sY2hlIEJhdHRlcmllbiBzYW1tZWx0OiBEYXMgbmFlY2hzdGUKR2VzY2hhZWZ0IGRlaW5lcyBWZXJ0cmF1ZW5zLCBkaWUgc293YXMgYXVjaCB2ZXJrYXVmZW4uIERpZSBmcmV1ZW4gc2ljaCBpbW1lcgp1bmJhZW5kaWd0IHdlbm4gamVtYW5kIG1pdCBlaW5lciBSaWVzZW5raXN0ZSBBbHRiYXR0ZXJpZW4gYW5rb21tdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp3ZWl0aWVzIHZvbGwgaW0gR3JpZmYgKERhcmt3aW5nLCAxNC4gRGV6IDIwMDEsIDEyOjE4OjUyKToKU2NobWVyeiBydWZ0OiBoaWxiZXJ0CjxFbGFpbmU+IHRlaWx0IERpciBtaXQ6IGFyZ2wgYXJnbCBhcmdsCjxFbGFpbmU+IHRlaWx0IERpciBtaXQ6IGRhcyB3YXIgamEgc2NobWVyeiEKPEVsYWluZT4gdGVpbHQgRGlyIG1pdDogKmhldWwqClsuLi5dCndlbmlnIHNwYWV0ZXI6ClRzdXJhbiBydWZ0OiBoaWxiZXJ0Cgo6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBad2VpdGllcyB2b2xsIGltIEdyaWZmIChNdXBmZWwsIDE0LiBEZXogMjAwMSwgMTQ6MjA6NDApOgp+IyEgcm49RGFya3dpbmcgcnQ9MTAwODMyODczMiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDgzMjg3MzIKSG0gYmVpZGUgdW5zaWNodGJhciBtYXJraWVydC4gQWJlciBqZXR6dCBqYSBpbSBncnVuZGUgbmljaHQgbWVociA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp3YXIga2VpbiBOZXRkaWdlc3QsIGFiZXIgdHJvdHpkZW0gc2Nob2VuIChGb29iYXIsIDE1LiBEZXogMjAwMSwgMTk6MDY6NTIpOgpBbm1lcmt1bmc6IEVpbiBQb3N0aW5nIGF1cyBkZS5hbHQubXVkLCBkZXIgQXV0b3IgZXJ3YWVobnRlIGluIGVpbmVtCkZvbGdlcG9zdGluZywgZGFzcyBlciBzeXN0cmFuc29mdC5jb20gdmVyd2VuZGV0IGhhdC4KCk1hbiBhY2h0ZSBpbnNiZXNvbmRlcmUgYXVmIGRlbiBsZXR6dGVuIFNhdHouCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkVpbiBhYmVybXVkIGFuZGVycyBhbHMgdmllbGUgYW5kZXJlLCBkYXMgdmVyc3Byb2NoZW5lIExhbmQgaXN0IGF1ZgpCZXR0ZXJib3ggYW4gdGVsbmV0Oi8vcHJvbWlzZWRsYW5kLmJldHRlcmJveC5uZXQ6NjcxNSBtaXQgdW5zZXJlbQp3ZWJwYWdlIGFuIGh0dHA6Ly9wcm9taXNlZGxhbmQuYmV0dGVyYm94Lm5ldAoKVm9yIGVpbiBMYW5kIHZpZWxlbiBKYWhyZW4gZGFzIGRlciBMb3JkIHZlcnNwcm9jaGVuIGRlbiBLaW5kZXJuIHZvbgpJc3JhZWwsIGRpZSB2b24gTW9zZXMgZ2VmdWVocnQgd3VyZGVuLiAgSW4gZWluZXIgYW5kZXJlbiBXaXJrbGljaGtlaXQgZGVyClBoYW50YXNpZSwgaXN0IGVpbiBhbmRlcmVzIHZlcnNwcm9jaGVuZXMgTGFuZCBhdWZnZXRhdWNodCwgd28gTW9zZXMgbm9jaApleGlzdGllcmVudCwgYWJlciBkYXMgTGFuZCBpc3Qgc3RyaWNrZW5lZCBkdXJjaCBNb25zdGVycywgRGFlbW9uZW4sClNvcmNlcmVycyB1bmQgRHJhY2hlbi4gIERpZXNlcyBMYW5kIHdpcmQgcnVlYmVyIGR1cmNoIHZpZXIgZGlldGllcwp1ZWJlcndhY2h0LCBhbGxlIGRpZSBiZXJlaXR3aWxsaWcgenVtIEdlYmVuIElobmVuIGlocmVyIEJsZXNzaW5ncyB1bmQgZGVyCkZhZWhpZ2tlaXQsIGRhcyBMYW5kIHp1IHNpY2hlcm4gc2luZC4KCkdlYmVuIFNpZSB1bnMgSWhyZW4gS3JhbmtlbiwgSWhyIG11ZWRlcywgSWhyIHdlaXJ5Li4uLCB3byBqZWRlciBzb25zdCBTaWUKdm9uIGlocmVuIExhZW5kZXJuIHZlcmJhbm50IG9kZXIgU2llIHp1cnVlY2tnZXNldHp0IGhhdCwgd2lyIGJlZ3J1ZXNzZW4gU2llCmhpZXIuLi4gZWluc2NobGllc3NsaWNoIGFsbGVyIFNpZSBBT2wgdW5kIGZpbm5pc2NoZSBCZW51dHplci4KClZlcnNwcm9jaGVuZSBMYW5kZWlnZW5zY2hhZnRlbi4uLiwKClZpZXIgdW50ZXJzY2hpZWRsaWNoZSBSZWxpZ2lvbmVuLCB3byBTaWUgSWhyZSBnZXNhbW1lbHRlbiBTZWVsZW4KYW5iaWV0ZW4ga29lbm5lbiwgb2RlciBpaHJlIGdld3VlbnNjaHRlbiBLdW5zdHByb2R1a3RlLCBnZWdlbiBrb2VycGVybGljaGUKR2VzY2hlbmtlLiAgTmljaHQgamVkZXIgR290dCBrYW5uIGRpZSBnbGVpY2hlbiBHZXNjaGVua2UgYmV3aWxsaWdlbiwKYWJlciBlaW5pZ2UgR2VzY2hlbmtlIHNpbmQgdW5zY2hhZXR6YmFyLiAgUGx1cyBtdWVzc2VuIFNpZSBuaWNodCBtaXQgZGVtCmdsZWljaGVuIGRhcyB2b2xsc3RhZW5kaWdlIFNwaWVsIGhhZnRlbiwgb2RlciB3YWVobGVuIFNpZSBlaW4gYW4gYWxsZW4KYXVzLgoKQW5zdGF0dCwgYWxsZSBJaHJlIHN0YXRzIGF1ZiBkZW0gTE9HT04tQmlsZHNjaGlybSBhdXN6dXdhZWhsZW4sIGtvZW5uZW4KU2llIFplaWNoZW5rcmVhdGlvbiBkdXJjaGZ1ZWhyZW4sIGltbWVyIHdlbm4gU2llIHd1ZW5zY2hlbiB6dSwgbmFjaGRlbSBTaWUKZGFzIFNwaWVsIHVlYmVyIG1laHJmYWNoZSBUcmFpbmluZ3NtaXR0ZW4gZWluZ2V0cmFnZW4gaGFiZW4sIGluIGRlbmVuIFNpZQpqZWRlIG1vZWdsaWNoZSBGYWVoaWdrZWl0IGVyaGFsdGVuLCBiZW5vZXRpZ2VuIFNpZSwgYnVjaHN0YWJpZXJlbiwKU3RhZXJrZW5nZWJhZXVkZSB1bmQgaGVpbGVuZGUgS2luZXRpay4gIFdhcyBTaWUgZXJsZXJuZW4sIGtvZW5uZW4KZmVzdHN0ZWxsZW4sIHdhcyBTaWUuLi4gZWluIFdhcnJpb3IsIGVpbiBEaWViLCBlaW4gbWFnZSBvZGVyIGVpbgpQcmllc3RlciB3ZXJkZW4uICBEaWUgd2ljaHRpZ3N0ZSBUcmFpbmluZ3NtaXR0ZS4uLiBkaWUKTGFnZWJlc3RpbW11bmdzdG91ciwgYnJpbmd0IElobmVuIGJlaSwgd2llIG1hbiBpbiBkZW4gZnJ1ZWhlbiBnb2luZ3MKYW5mYXNzdCB1bmQgZ2lidCBJaG5lbiBkZW4gbm90d2VuZGlnZW4gU3RhcnRlciBBdXNydWVzdHVuZy4gIFVuc2VyZQpmcmV1bmRsaWNoZSBFbXBmYW5nc2RhbWUgZ2lidCBJaG5lbiBlaW5pZ2UgZnJ1ZWhlIHdlcnR2b2xsZSBSYXRzY2hsYWVnZS4KCkVpbmUgR2VzYW10bWVuZ2Ugdm9uIDYzIGhhcmRjb2RlZCBTdWNoZW4sIGplZGUgbWl0IGVpbmVtIGRlZmluaWVydGVuClppZWwgLS0gZWluaWdlIHNpbmQgZWluZmFjaCwgc2luZCBlaW5pZ2Ugc2Nod2llcmlnLCBhYmVyIGVzIGdpYnQgZWluZQpTdWNoZSBuYWNoIFNwaWVsZXJuIGplZGVyIG1vZWdsaWNoZXIgU3R1ZmUuICBXYWVocmVuZCBJaHJlcyBnZXNhbXRlbgpEdXJjaGxhdWZlcyBtdWVzc2VuIFNpZSBkaWUgWndhbnppZyB2ZXJsb3JlbmVuIERhdGVudHJhZWdlciBkZXMgV2lzc2VucwpmaW5kZW4gLS0sIGRhcyB2b24gZGVuIHZlcnNjaGllZGVuZW4gRmVpbmRlbiBnZXNjaHVldHp0IHdpcmQuICBXaXIgaGFiZW4KYXVjaCBTcGFzcyB1LiBqYWd0IFNwaWVsZSwgaGlkZSZzZWVrLCBQcmFlbWllLCB0cml2aWEsIGVyZmFzc2VuIGRpZQpNYXJraWVydW5nc2ZhaG5lLCBQb2tlcnN1Y2hlbiAtLSBmaW5kZW4gU2llIGZ1ZW5mIEthcnRlbgoKQm9keXBhcnQsIGRhcywgd2VubiBTaWUgbmljaHQga2FlbXBmdCBhY2h0Z2ViZW4sIGtvbm50ZW4gU2llIElocmVuIEFybQplcmhhbHRlbiBnZWhhY2t0IHdlZyB2b24uLi4sIHdlbm4gU2llIGVudGhhdXB0ZXQgd2VyZGVuLCBTaWUgd2VyZGVuCmdlZ2FuZ2VuIGZ1ZXIgaW1tZXIhICAoYWJlciBkaWUgR29ldHRlciBrb2VubmVuIFNjaHV0eiB2b3IgZGllc2VtCmJld2lsbGlnZW4sIHdlbm4gU2llIGlobmVuIGVpbiBBbmdlYm90IHNpZSBnZWJlbiwga29lbm5lbiBuaWNodAphYmxlaG5lbi4pLCAgQmVzdWNoZW4gU2llIGRhcyBLcmFua2VuaGF1cyBmdWVyIElociBtZWRpemluaXNjaGVzCkJlaGFuZGx1bmchICBBYmVyIFNjaGxhbmdlbiwgRW5kbG9zc2NocmF1YmVuLCBUeXBlbnN0ZWluZSBoYWJlbiBuaWNodApBcm1lIG9kZXIgQmVpbmU7ICBHZWlzdGVyLCBHZWlzdCwgU2NobGFlbW1lIHVuZCBGb3JtZW4gaGFiZW4gbmljaHQgZWluZW4Ka29lcnBlcmxpY2hlbiBLb2VycGVyIHp1bSB3ZWcgWmVyaGFja2VuIGRlciBHbGllZGVyOyAgdW5kIGRlciBrb3BmbG9zZQpSZWl0ZXIgd2lya2xpY2ggaGF0IG5pY2h0IGVpbmVuIEtvcGYuICBWYW1waXJlcyBzaW5kIGF1Y2gsIFNpZSBrb2VubmVuCnN0YWIgZWluZW4gVmFtcGlyZSBkdXJjaCBkYXMgSW5uZXJlIG1pdCBJaHJlciBXYWZmZSwgdW0gc2llIHdlZyB6dQpiZWVuZGVuIGVpbmRldXRpZy4KCkFuZGVycyBhbHMgZGFzIG1laXN0ZSBEaWt1cyBzaW5kIGFsbGUgS2FlbXBmZSBtaXQgTW9iaWxlcy4uLiBrZWluZQpNb2JpbGVzIGV4aXN0aWVyZW5lbiBhbmdlbWVzc2VuLCBkaWUgQmVzY2hhZWRpZ3VuZyA1MDAgZWluZXMgVG9kIGF1ZgplaW5lbSBTY2hsYWcgaGllciB0dW4uICBEaWUsIGRpZSBuaWNodC4uLiBndXQgc2luZCwgc29sbGVuIFNpZSBuaWNodCBzaWUKaXJnZW5kd2llIGthZW1wZmVuIC0tIGFiZXIsIHdlbm4gU2llIGdlbnVnIGhhbHRiYXIgc2luZCwgZ2VoZW4gU2llCnZvcmFuISAgQWJlciBhbmRlcnMgYWxzIGRhcyBtZWlzdGUgQWJlcnMsIGdld2lubmVuIE1vYmlsZXMgU3RhZXJrZSB3aWVkZXIKdW5kIGVpbmlnZSBrb2VubmVuIHZvbiBJaG5lbiBsYXVmZW4hICBXZW5uIFNpZSBlaW5lbiBTcGllbGVyIGFuc3RhdHQKa2FlbXBmZW4gbW9lY2h0ZW4sIGtvZW5uZW4gU2llIHNpZSBoZXJhdXNmb3JkZXJuLCBvZGVyIGthZW1wZmVuIFNpZSBzaWUKaGVyYXVzIGlubmVyaGFsYiBkZXIgQXJlbmEuICBKZWRlcyBzbyBoYWV1ZmlnLCBoYWJlbiB3aXIgVHVybmllcmUgZWluZXMKcGxheWVya2lsbCAtLSBJaHIgR2VsZCBhdXN6dWdlYmVuIHVuZCBJaHJlIFNlZWxlbiBhbnp1YmlldGVuLCB1bSBlaW5lbgpHZXdpbm5lbnRvdXJuZXlrYWVtcGZlciBhdWZ6dWJhdWVuLi4uIG9kZXIsIHdlbm4gU2llIHNpZSB1ZWJlcndhY2hlbgptb2VjaHRlbiwgaWhuIGF1cyB6dSBrYWVtcGZlbi4uLiwgaGFiZW4gd2lyIGVpbmVuIGdyYW5kc3RhbmRiZXJlaWNoLCBkZXIKbWl0IGVpbmVyIFNwb3J0cnVuZGZ1bmtzcHJlY2hlciBrb21wbGV0dCBpc3QsIGRpZSBTcGllbCBkdXJjaCBTcGllbApiZW5lbm50LiAgVGVhbWRlYXRobWF0Y2ggaXN0IGF1Y2gKCkFuZGVycyBhbHMgZGFzIG1laXN0ZSBEaWt1cywgaW4gZGVtIFNpZSBNaWxsaWFyZGVuIFB1bmt0ZSBiZW5vZXRpZ2VuLCBpc3QKZGllIFphaGwgZGVuIFB1bmt0ZW4sIGRpZSBiZW5vZXRpZ3Qgd2VyZGVuLCBpbW1vcnRhbCB6dSB3ZXJkZW4sIDUwMC4wMDAuClVuZCBzb2dhciBuYWNoIElobmVuIGthbm4gaW1tb3J0LCBTaWUgZGFzIHJlbW9ydCwgbWVociBsYXVmZW4gbGFzc2VuIHVuZApmb3JkZXJ0IGRlbiBzY2hsZWNodGVuIHNjaHdhcnplbiBSaXR0ZXIgaGVyYXVzIQoKVW5kIHdlbm4gSWhyIGVyc3RlciBMYXVmIHp1bSBXaXphcmQgenUgZWluZmFjaCBpc3QsIGtvZW5uZW4gU2llIGlobgp3aWVkZXIgdW50ZXIgdHVuIGZhbWVkIE1vZHVzIChzdGFyaykgb2RlciBncm9zc2VuIE1vZHVzIChzdGFyaykgdW5kIHNvZ2FyCmVpbmVuIGxldmVsbGVzcyBNb2R1cyBtaXQgZWluZXIgS29tYmluYXRpb24gZGVyIFNjaHdpZXJpZ2tlaXRzbW9kaQooc3RhcmsgenUgbmFoZW0gdW5tb2VnbGljaGVtISkKCldhcyB1ZWJlciBkaWUgWm9uZW4/ICBXaXIgaGFiZW4gZWluZSBuZXR0ZSBNaXNjaHVuZyBkZXIga2xhc3Npc2NoZW4gWm9uZW4KQWJlcm11ZCwgenVzYW1tZW4gbWl0IG5ldWVuIHVyc3BydWVuZ2xpY2hlbiBab25lbiB1bmQgZXJob2VodGUgQW5wYXNzdW5nZW4KZWluaWdlciBab25lbiBEaWt1LWNpcmNsZW11ZCwgZGllIHVlYmVyIDEzMCBab25lbiwgNjMwMCBSYWV1bWVuLCAyNDAwCk1vYmlsZXMgdW5kIDQxMDAgTmFjaHJpY2h0ZW4gdWViZXJzcGFubmVuLgoKVmVybWlzc2VuIFNpZSBuaWNodCBoZXJhdXMgYXVmIGVpbmVyIGFuZGVyZW4gQXJ0IG11ZGRpbmcgRXJmYWhydW5nLCBMYW5kCmF1ZiB1bnNlcmVyIFNpdGUgYW4gaHR0cDovL3Byb21pc2VkbGFuZC5iZXR0ZXJib3gubmV0IGZ1ZXIgZGFzIHdlYnNpdGUKdW5kIGRhcyBKYXZhdGVsbmV0IG9kZXIgbWl0IGVpbmVtIHRlbG5ldC1LbGllbnRlbiBpbiBkZXIgRmFyYmUKdmVyc3Byb2NoZW46ICB0ZWxuZXQ6Ly9wcm9taXNlZGxhbmQuYmV0dGVyYm94OjY3MTUKCiJIZXkgZ2luZyBpY2ggZWlubWFsIHVuZCBlcyBnYWIgbmljaHQgbmllbWFuZCBkb3J0ISIsICBHdXQgdHJpdHQgZXMKbmljaHQgc2VociBoYWV1ZmlnIGRpZXNlIFRhZ2UgYXVmLCBhYmVyIGVzIGdpYnQgZWluZSBJTkZPLURhdGVpLCBhbHNvCmtvZW5uZW4gU2llIHNlaGVuLCBkYXNzIHdlbSBkb3J0IGt1ZXJ6bGljaCBkYXMgaXN0IHdhYWdlcmVjaHQgYXVzZ2VyaWNodGV0ZQpkcmVpIG9kZXIgZ3JvZXNzZXIgZ2V3ZXNlbiB3aXJkIC0tIElORk8gUExBWUVSUy4KCkRpZXNlciBTQ0hMQU1tIGlzdCBlaW4gZW5nbGlzY2hzcHJlY2hlbmRlcyBTcGllbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaW4gQmF1bS4gKEFuYXRvbCwgMTYuIERleiAyMDAxLCAxOTo1NDowNyk6Cn4jISBvbj1BbmF0b2wgb3Q9MTAwODUyODg0MSBvZz1wYXJ0eQp+IyEgcm49Q2FkcmFjaCBydD0xMDA4NTI3NzIxIHJnPXBhcnR5Cn4jISB0aWQ9MTAwODUyNzcyMQpOZWlubmVpbiwgQ2FkcmFjaCwgZGFzIGhhc3QgRHUgZmFsc2NoIG1pdGJla29tbWVuLiBEYXMgTG9jaCBpbSBIb2YKaXN0IGRhLCBkYW1pdCBlaW4gQmF1bSAqcmVpbmtvbW10Ki4gRGEgd2FyIHZvcmhlciBrZWluZXIsIGRhcyBtdWVzc3Rlc3QKRHUgZG9jaCB3aXNzZW4sIER1IGhhc3QgZG9jaCBkYSBzY2hvbm1hbCBnZWtlaHJ0LiA7KQoKQW5hdG9sIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTEggKGZhbW91cyBsYXN0IGhtcGYpIChBbmF0b2wsIDE2LiBEZXogMjAwMSwgMjI6NTk6MjMpOgpbQWJlbnRldWVyOlN3b3RsXSBITVBGLgpbVG9kOkxhcnNdIERlciB0b2RicmluZ2VuZGUgRmx1Y2ggZGVzIE1vb3Ntb25zdGVycyBoYXQgZ2VyYWRlIFN3b3RsCltUb2Q6TGFyc10gdW1nZWJyYWNodC4KCkpvLgpBbmF0b2wgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFBhcnR5IChBbmF0b2wsIDE2LiBEZXogMjAwMSwgMjM6NDE6MDQpOgp+IyEgb249QW5hdG9sIG90PTEwMDg1NDI0NDggb2c9cGFydHkKfiMhIHJuPUdsb2luc29uIHJ0PTEwMDg1NDE4NTUgcmc9cGFydHkKfiMhIHRpZD0xMDA4NTMwMDMzCldpciB3b2xsdGVuIERpY2ggdm9yIER1bW1oZWl0ZW4gYmV3YWhyZW4uIEVzIHdhcmVuIHNvIHZpZWxlIEVyc2F0em11ZXR0ZXIKYW53ZXNlbmQsIHNvIHNjaG5lbGwgaGFldHRlc3QgRHUgZ2FyIG5pY2h0IGxhdWZlbiBrb2VubmVuLi4uLgoKQW5hdG9sIC0gbGllYiB1bmQgbmV0dCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUGFydHkgKEdsb2luc29uLCAxNi4gRGV6IDIwMDEsIDIzOjQ4OjI4KToKfiMhIHJuPUFuYXRvbCBydD0xMDA4NTQyNDY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODUzMDAzMwpEdSBiaXN0IGVpbmZhY2ggenUgbmV0dCB6dSBtaXIuIERhcyBlcnRyYWcgaWNoIG5pY2h0IDspCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYSwgdmVyc3RlaHQgSWhyIGRlbj8gKEh1bW5pLCAxNy4gRGV6IDIwMDEsIDE1OjQ4OjM5KToKTW9yb24gbmltbXQgSHVtbmkuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCk1vcm9uIHdpbmt0IERpciB6dS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApNb3JvbiBsYWVzc3QgSHVtbmkgZmFsbGVuLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmEsIHZlcnN0ZWh0IElociBkZW4/IChab29rLCAxNy4gRGV6IDIwMDEsIDE1OjQ5OjA1KToKfiMhIHJuPUh1bW5pIHJ0PTEwMDg2MDA1MTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4NjAwNTE5Ck5vZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmEsIHZlcnN0ZWh0IElociBkZW4/IChJc2ksIDE3LiBEZXogMjAwMSwgMTU6NDk6MjEpOgp+IyEgcm49Wm9vayBydD0xMDA4NjAwNTQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODYwMDUxOQpKYQppc2kgKHphdWJpbW91c3Nld2VyZmVkKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbm90aXogKEdyaW1tYm9ybiwgMTcuIERleiAyMDAxLCAxNzoyOTowMCk6Cn4jISBvbj1TYW10a3JhbGxlIG90PTEwMDg1OTk3MDcgb2c9YW56ZWlnZW4KdGVzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChab29rLCAxNy4gRGV6IDIwMDEsIDE3OjU1OjM3KToKW0FsbGdlbWVpbjpJcm9ubWFzdGVyXSBKQUEgSUNIIFNURVJCRSBKRVRaVApbQWJlbnRldWVyOklyb25tYXN0ZXJdIFNURVJCRU4hCltBbGxnZW1laW46VmFyZGlvbiBkZW5rdCAuIG8gTyAoMyldCltBbGxnZW1laW46VmFyZGlvbiBkZW5rdCAuIG8gTyAoMildCltBbGxnZW1laW46VmFyZGlvbiBkZW5rdCAuIG8gTyAoMSldCltBbGxnZW1laW46VmFyZGlvbiBkZW5rdCAuIG8gTyAobGVidCBqYSBpbW1lciBub2NoKV0KW1RvZDpMYXJzXSBFaW5lIEZsZWRlcm1hdXMgaGF0IGdlcmFkZSBJcm9ubWFzdGVyIHVtZ2VicmFjaHQuCltBbGxnZW1laW46RWxiZXJldF0gYnV1dXV1dW1tCltBbGxnZW1laW46QmFtYmldIGplYWguIDopCltBbGxnZW1laW46R2F0byBodXN0ZXQuXQpbQWxsZ2VtZWluOlZhcmRpb25dIGFoIDopCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBcG9sbG9uaWEsIDE3LiBEZXogMjAwMSwgMjI6Mzk6MzIpOgpEdSB0ZWlsc3QgUGl0ZmFsbCBtaXQ6IGFiZXIgaWhyIGhhYnQgamEgYWxsZSBnZXNhZ3QsIFRha2hpIHdhZXIgbmUgV3Vyc3QuClBpdGZhbGwgdGVpbHQgRGlyIG1pdDogaXNzaWUgYXVjaCA6bykKUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiBhYmEgbWl0IDQ1ICUgcGFja2FnZSBsb3NzIG1hY2h0IG1ldHplbG4ga2VpbmVuIHNwYXNzCltUb2Q6TGFyc10gVGFraGlzaXMgaGF0IGdlcmFkZSBQaXRmYWxsIHVtZ2VicmFjaHQuCltUb2Q6UGl0ZmFsbF0gTVVIIWEKCk5vIGNvbW1lbnQgO28pCkFwbyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBSdWYgaXMgd29obCBpbSBFaW1lciA7KSAoSW1kYSwgMTguIERleiAyMDAxLCAwMDoyNjo1NSk6CltBYmVudGV1ZXI6TWNEZWVdIEhhdCBqZW1hbmQgdmllbGxlaWNodCBub2NoIGVpbmVuIFRpcCBmdWVyIG1pY2g/CltBYmVudGV1ZXI6RWljaGJhdW1dIG9raWRva2kKW0FiZW50ZXVlcjpJbWRhXSBrbG9yLiBmb3JzY2hlbi4KR2Fyb24gdGVpbHQgRGlyIG1pdDogYWhoIGVyIGlkZWx0IG1hbCBuaWNoIG1laHIgKmdnKgpLYWRhYnJhIHRlaWx0IERpciBtaXQ6IGR1IGJpc3QgTklDSFQgaWRsZSA/CgpJbWRhLiBrYW5uamF3b2hsbWF3aWVkZXJuaWNoc2Vpbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRWluZSBVbWZyYWdlIChHcmltbWJvcm4sIDE4LiBEZXogMjAwMSwgMTQ6MjM6NTYpOgp+IyEgcm49S3JlbGxqYSBydD0xMDA4NjgxNTE2IHJnPXd3dwp+IyEgdGlkPTEwMDg1MzU2MTEKV2VubiBpaHIgZXMgdW1iZW5lbm50IGluICIuLi46IFdlciBrYW5uIGRhcyB1bmQgd2VyIG5pY2h0PyIgZ2FlYnMgaGllciBkb2NoCnNjaG9ubWFsIGVpbmVuIEthbmRpZGF0ZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhbmtlIGF1Y2ggdm9uIGRpZXNlciBTZWl0ZSAoR25vbWUsIDE4LiBEZXogMjAwMSwgMTc6MDM6MDgpOgp+IyEgcm49QW5hdG9sIHJ0PTEwMDg2MTIwMjkgcmc9cGFydHkKfiMhIHRpZD0xMDA4NjEyMDI5CicuLi5pcmdlbmR3byBtaXQgYW56dXBhY2tlbiwgd2VubiBlcyB3YXMgYW56dXBhY2tlbiBnYWIuJwpbTmV1bGljaCBpbiBXaW50ZXJidXJnLl0KQW5hdG9sIHN0ZWh0IGFuIGVpbmVtIHNjaG11dHppZ2VuIFRpc2NoIG1pdCBMYXBwZW4gaW4gZGVyIFJlY2h0ZW4uCkFuYXRvbCBzYWd0OiAiV2VyIHdpc2NodCBkZW4gVGlzY2ggYWI/IgpbU3RpbGxlLl0KQW5hdG9sIHphZWhsdDogIjMuLi4yLi4uMS4uLiIKW0FuYXRvbCBsYWVzc3QgZGVuIExhcHBlbiBmYWxsZW4sIGRlciB2b3IgUm9jaHVzWzFdIGxpZWdlbiBibGVpYnQuXQpBbmF0b2wgc2FndDogIkFoLCBSb2NodXNbMV0gd2lzY2h0LiIKQW5hdG9sIGdlaHQuCgpnbk9tZSBiZXNpdHp0IGpldHp0IGVpbmUgZGVmaW5pdGlvbiB2b24gJ2ZyZWl3aWxsaWcnIG1laHIuIDopCgpbMV0gRXMga2FubiBhdWNoIGplbWFuZCBhbmRlcnMgZ2V3ZXNlbiBzZWluLi4uIGRhcyBCaWVyLi4uIGlociB3aXNzdCBzY2hvbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEYW5rZSBhdWNoIHZvbiBkaWVzZXIgU2VpdGUgKEVsYmVyZXQsIDE4LiBEZXogMjAwMSwgMTc6MDM6NDUpOgp+IyEgcm49R25vbWUgcnQ9MTAwODY5MTM4OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDg2MTIwMjkKb2RlciBkaWUgUnVta3VnZWxuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGFua2UgYXVjaCB2b24gZGllc2VyIFNlaXRlIChQaXRmYWxsLCAxOC4gRGV6IDIwMDEsIDE3OjA1OjQ3KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAwODY5MTQyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDg2MTIwMjkKZXMgZ2FiIHJ1bWt1Z2Vsbj8gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEYW5rZSBhdWNoIHZvbiBkaWVzZXIgU2VpdGUgKEVsYmVyZXQsIDE4LiBEZXogMjAwMSwgMTc6MDY6MTQpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDA4NjkxNTQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODYxMjAyOQpqYSwgbWl0IGJlc29uZGVyZXIgQmV0b251bmcgYXVmIFJ1bSA7KQpkaWUgd2FyZW4gbGVja2VyIDotKSkpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRGFua2UgYXVjaCB2b24gZGllc2VyIFNlaXRlIChHbG9pbnNvbiwgMTguIERleiAyMDAxLCAxODoyMjoxOSk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMDg2OTE1NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4NjEyMDI5CkljaCBoYWIgd2FzIHZvbiAxMDAgbWwgUzgwL0t1Z2VsIGdlaG9lcnQgdW5kIG51ciBkcmFuIGdlcm9jaGVuIDopCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEYW5rZSBhdWNoIHZvbiBkaWVzZXIgU2VpdGUgKEdyaW1tYm9ybiwgMTguIERleiAyMDAxLCAxODoyNDoyOSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDA4Njk2MTM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODYxMjAyOQpIbW0sIGRhcyBzY2hlaW5lbiBhYmVyIGdyb3NzZSBLdWdlbG4gZ2V3ZXNlbiB6dSBzZWluLCBkaWUgQmV6ZWljaG51bmcKIlJ1bWJhZWxsZSIgd2FlcmUgd29obCBwYXNzZW5kZXIuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRGFua2UgYXVjaCB2b24gZGllc2VyIFNlaXRlIChSb2NodXMsIDE4LiBEZXogMjAwMSwgMjA6MjM6MjYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAwODY5NjEzOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDg2MTIwMjkKRXMgd2FyIG51ciAxIGNsIHBybyBLdWdlbC4uLiB1bmQgd2FzIHNlaWQgSWhyIGFsbGVzCmZ1ZXIgd2luemlnZSBLdWdlbG4gZ2V3b2hudD8KCiAgUm9jaHVzCgpQUzoKTWVociBnaW5nIHdpcmtsaWNoIG5pY2h0IHJlaW4sIHNvbnN0IHdhZXJlbiBkaWUgS3VnZWxuIHplcmxhdWZlbgp1bmQgbWFuIGhhZXR0ZSBzaWUgbmljaHQgZm9ybWVuIGtvZW5uZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBEYW5rZSBhdWNoIHZvbiBkaWVzZXIgU2VpdGUgKEdsb2luc29uLCAxOS4gRGV6IDIwMDEsIDAwOjQ0OjMzKToKfiMhIHJuPVJvY2h1cyBydD0xMDA4NzAzNDA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODYxMjAyOQpEZXIgUGh5c2lrIHNlaXMgZ2V0cm9tbWVsdCB1bmQgZ2VwZmlmZmVuIGRhc3MgbWFuIEZsdWVzc2lna2VpdGVuIG5pY2h0IG1laHIKYWxsenUgZ3V0IGtvbXByaW1pZXJlbiBrYW5uLiBTb25zdCB3YWVyZW4gZGllIEt1Z2VsIGtsZWluZXIgZ2V3b3JkZW4uICJFaW5lClJ1bWt1Z2VsIGV4cGxvZGllcnQgbWl0IGVpbmVtIGhhbGJlbiBMaXRlciBSdW0gaW4gRGVpbmVtIE11bmQuIgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEYW5rZSBhdWNoIHZvbiBkaWVzZXIgU2VpdGUgKE1vcmdvdGgsIDE5LiBEZXogMjAwMSwgMDg6MTk6NTYpOgp+IyEgcm49R25vbWUgcnQ9MTAwODY5MTM4OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDg2MTIwMjkKV2llc28gaGF0IGVyIG5pY2h0IHNlbGJzdCBnZXdpc2NodD8KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEYW5rZSBhdWNoIHZvbiBkaWVzZXIgU2VpdGUgKEFuYXRvbCwgMTkuIERleiAyMDAxLCAxODoxNTowNik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwMDg3NDYzOTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4NjEyMDI5CkdlaCcgZGFzIG5hZWNoc3RlIG1hbCB6dXIgUGFydHksIGRhbm4gd2Vpc3N0IER1J3MuIF06bz4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogS3VyemtyaXRpazogSGVyciBkZXIgUmluZ2UgKFphbmFjLCAyMC4gRGV6IDIwMDEsIDE0OjE1OjQwKToKfiMhIG9uPVphbmFjIG90PTEwMDg4NTQxMDIgb2c9ZGlza3Vzc2lvbgp+IyEgcm49RWxiZXJldCBydD0xMDA4ODQ5NTI2IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDA4NzkyODQ5CkR1IHdhZXJzdCBqYSBpbiBkZXIgcmljaHRpZ2VuIERpa3UsIHdlbm4gRHUgRGVpbiBoIGhhZXR0ZXN0IDstKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBLdXJ6a3JpdGlrOiBIZXJyIGRlciBSaW5nZSAoRWxiZXJldCwgMjAuIERleiAyMDAxLCAxNDoxODo1OSk6Cn4jISBvbj1FbGJlcmV0IG90PTEwMDg4NTQxNTQgb2c9ZGlza3Vzc2lvbgp+IyEgcm49WmFuYWMgcnQ9MTAwODg1NDEwMiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAwODc5Mjg0OQp3byBpcyBlcyBkZW5uPyA6KQoKRWxiaSAoc2NoZWlzc3p3ZWl0aWVzZGlla2xhdWVuZWluZW1zb2dhcmVpbmh3ZXJmZW5kIChjKSBJc2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOYWNoZm9sZ2UgKFZhcmxhcmlvbiwgMjAuIERleiAyMDAxLCAxNDo1NjowOCk6Cn4jISBybj1Hb2xhcyBydD0xMDA4ODU2NDM3IHJnPXRyZWZmZW4KfiMhIHRpZD0xMDA4ODU2NDM3ClNvbGFuZ2UgZHUgZGljaCBuaWNodCB1ZWJlciBpaG0gdWViZXJnaWJzdCAqc2NodWV0dGVsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTW9uLi4uLiAoRm9vYmFyLCAyMS4gRGV6IDIwMDEsIDIxOjIzOjI0KToKPiByb2hyaG9lcmUga2FuaW5jaGVuCkVpbmUgU3RpbW1lIGZsdWVzdGVydDogRXMgd3VyZGUgdm9uIE1vbiBnZXNjaHJpZWJlbi4KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFNhdW5hIGFtIFBvbGFyd2VnIChWYXJsYXJpb24sIDIxLiBEZXogMjAwMSwgMjI6MTk6NDkpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTAwODk2OTUxNiByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDA4Njc2MjUzCkphLCBoYXQgZXIgOykgWnVtaW5kZXN0IGRpZSBoaWVzaWdlIEF1c2xlZ3VuZyA6bykKClZhcmwqLCBlaW56ZWlsZXJuZCB1bmQgaW4gZGVyIHJpY2h0aWdlbiBSdWJyaWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTYXVuYSBhbSBQb2xhcndlZyAoQmFtYmksIDIyLiBEZXogMjAwMSwgMTE6MTA6MzApOgp+IyEgb249R29yIG90PTEwMDg5NzA1MjAgb2c9ZC5nZWJpcmdlCn4jISBybj1EZWVwYmx1ZSBydD0xMDA4OTY5NTE2IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwMDg2NzYyNTMKRHUgaGFzdCB2ZXJnZXNzZW4gZWluZW4gSGFrZW4genVzZXR6ZW4uIEljaCB3aWxsIGRpciBqYSBuaWNodCB6dSBuYWhlIHRyZXRlbiwKYWJlciB3aXJzdCBkdSBuaWNodCBzY2hvbiBlaW4gYmlzc2NoZW4gc2VuaWw/IDspCgpHb3IgLT4gc2NobWFycm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFNhdW5hIGFtIFBvbGFyd2VnIChWYXJsYXJpb24sIDIyLiBEZXogMjAwMSwgMTY6MzI6MzUpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMDkwMzQyOTEgcmc9ZC53YWxkCn4jISB0aWQ9MTAwODY3NjI1MwpMb3MsIHZlcnNjaGllYnQgZGllIFNhdW5hIGluIGRpZSBXdWVzdGUgdW5kIGRhbm4gaXN0IGVuZGxpY2ggUnVoZSA6KQpBbHRlcm5hdGl2IHZpZWxsZWljaHQgU2NoYXR0ZW53ZWx0PyBdOikKClZhcmwqLCBpbiBkZXIgcmljaHRpZ2VuIFJ1YnJpawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVhbGF1cCA6KSAoVmFybGFyaW9uLCAyMy4gRGV6IDIwMDEsIDE3OjQyOjI3KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDA5MTA4MzExIHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xMDA5MTA4MzExCkR1IG1laW5zdCBiaXMgenVtIEZyaHloamFociwgYmlzIGRlciBTY2huZWUgc293ZWl0IGdlc2NobW9semVuIGlzdCwgZGFzcyBEdQphdXMgZGVtIEthZmYgd2llZGVyIHJhdXNrb21tc3Q/CgpWYXJsKiwgY25yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVhbGF1cCA6KSAoQW1hcnlsbGlzLCAyMy4gRGV6IDIwMDEsIDE4OjIxOjM3KToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDA5MTI1NzQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTEwODMxMQpWb24gd2FzIHJlZGVzdCBEdT8KCkljaCByZWRlIHZvbiBlaW5lciB3dW5kZXJzY2hvZW5lbiBTdGFkdCBpbiBCb2RlbnNlZW5hZWhlLCBpbiBkZXIgZXMgcXVhc2kga2F1bQpTY2huZWUgZ2lidCAtIHVuZCBuaWNodCB2b24gZWluZW0gUmF0dGVubG9jaCBpbSBIb2Noc2Nod2FyendhbGQuLi4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFVhbGF1cCA6KSAoR29yLCAyMy4gRGV6IDIwMDEsIDIyOjE0OjA3KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDA5MTI4MDk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTEwODMxMQpIb2Noc2NoYXJ6d2FsZD8gbG9sLCBkdSBzb2xsdGVzdCBsYW5nZSBnZW51ZyBkYSBnZXdvaG50IGhhYmVuLCB1bSB6dSB3aXNzZW4sCmRhcyBGVyBuaWNodCB6dW0gSE9jaHNjaHdhcnp3YWxkIGdlaG9lcnQuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBVYWxhdXAgOikgKFd1cnplbCwgMjMuIERleiAyMDAxLCAyMjo0NTowMSk6Cn4jISBybj1Hb3IgcnQ9MTAwOTE0MjA0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDkxMDgzMTEKZ2VnZW4gZGFzICJyYXR0ZW5sb2NoIiBnYWJzIGFiZXIga2VpbmVuIHdpZGVyc3BydWNoLi4uIGJlemVpY2huZW5kIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBVYWxhdXAgOikgKEdvciwgMjMuIERleiAyMDAxLCAyMjo0NzozMSk6Cn4jISBybj1XdXJ6ZWwgcnQ9MTAwOTE0MzkwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDkxMDgzMTEKV2llc28gYXVjaCwgaWNoIHdvaG5lIGphIG5pY2h0IGRvcnQuIDspCgpHb3Iga2ljaGVybmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbHQgYWJlciBpbW1lciBub2NoIGdlZnVlcmNodGV0IChTcGVsbGZpcmUsIDI1LiBEZXogMjAwMSwgMTQ6NDY6MjkpOgpJcmdlbmR3YXMgaHVzY2h0IGFuIGRlaW5lbiBBdWdlbiB2b3JiZWkuCkxldiAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEaWUgQW5nc3QgaXN0IHN0YWVya2VyIGFscyBEdSAuLiBEdSB3aWxsc3QgbnVyIG5vY2ggd2VnIGhpZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWx0IGFiZXIgaW1tZXIgbm9jaCBnZWZ1ZXJjaHRldCAoTGV2LCAyNS4gRGV6IDIwMDEsIDE0OjQ2OjQxKToKfiMhIHJuPVNwZWxsZmlyZSBydD0xMDA5Mjg3OTg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTI4Nzk4OQpIZWhlIDspCgpMZXYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFsdCBhYmVyIGltbWVyIG5vY2ggZ2VmdWVyY2h0ZXQgKE11cGZlbCwgMjUuIERleiAyMDAxLCAxODo0MTo1Myk6Cn4jISBybj1MZXYgcnQ9MTAwOTI4ODAwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDkyODc5ODkKSmFqYSBkZXIgYWx0ZSBPcHBhIExldi4uLiA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFsdCBhYmVyIGltbWVyIG5vY2ggZ2VmdWVyY2h0ZXQgKExldiwgMjUuIERleiAyMDAxLCAxODo0MjoxNSk6Cn4jISBybj1NdXBmZWwgcnQ9MTAwOTMwMjExMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDkyODc5ODkKV2llZGVyIGVya2FubnQ/IDspCgpMZXYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBbHQgYWJlciBpbW1lciBub2NoIGdlZnVlcmNodGV0IChNdXBmZWwsIDI1LiBEZXogMjAwMSwgMTg6NDQ6MDEpOgp+IyEgcm49TGV2IHJ0PTEwMDkzMDIxMzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA5Mjg3OTg5CkphIGtsYXIuIEljaCBrZW5uIGphIGFsbCBkaWUgT3BwYXMgYXVzIG1laW5lciBKdWdlbmQgaW0gTVVEIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQWx0IGFiZXIgaW1tZXIgbm9jaCBnZWZ1ZXJjaHRldCAoTGV2LCAyNS4gRGV6IDIwMDEsIDE4OjQ2OjUwKToKfiMhIHJuPU11cGZlbCBydD0xMDA5MzAyMjQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTI4Nzk4OQpWaWVsbGVpY2h0IHNvbGx0ZSBpY2ggbWljaCBkb2NoIG1hbCBtaXQgZGVtIG5ldW1vZGlzY2hlbiBLcmFtCnJ1bXNjaGxhZ2VuLiAiT3BhcyBSb2xsc3R1aGwiIG9kZXIgc28gaGllc3MgZGFzLiA6LSkKCkxldi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEFsdCBhYmVyIGltbWVyIG5vY2ggZ2VmdWVyY2h0ZXQgKFZhcmxhcmlvbiwgMjUuIERleiAyMDAxLCAxODo0Nzo0OCk6Cn4jISBybj1MZXYgcnQ9MTAwOTMwMjQxMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDkyODc5ODkKSmEsIG1hY2ggZGFzIG1hbCwgbG9obnQgc2ljaCB3aXJrbGljaCA6KQoKVmFybCosIGRlbiBSb2xsaSBuaWNodCBtZWhyIG1pc3NlbiB3b2xsZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBbHQgYWJlciBpbW1lciBub2NoIGdlZnVlcmNodGV0IChMZXYsIDI1LiBEZXogMjAwMSwgMTg6NDg6MzYpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMDkzMDI0Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDA5Mjg3OTg5CkdpYnRzIGF1Y2ggbmUgU2VsYnN0aGlsZmVncnVwcGUgZGF6dT8KCkxldi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEFsdCBhYmVyIGltbWVyIG5vY2ggZ2VmdWVyY2h0ZXQgKE11cGZlbCwgMjUuIERleiAyMDAxLCAxODo1MDowMik6Cn4jISBybj1MZXYgcnQ9MTAwOTMwMjUxNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDkyODc5ODkKVGF0dGVyIGUuVi4gPwoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEFsdCBhYmVyIGltbWVyIG5vY2ggZ2VmdWVyY2h0ZXQgKFZhcmxhcmlvbiwgMjUuIERleiAyMDAxLCAxODo1MDoyNCk6Cn4jISBybj1NdXBmZWwgcnQ9MTAwOTMwMjYwMiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDkyODc5ODkKRGllIENoYW9zZ2lsZGUgaGF0IGRvY2ggZWluIHNlaHIgc2Nob2VuZXMgQWx0ZXJzaGVpbS4uLgoKVmFybCosIGVpbmUgU3BlbmRlbmJ1ZWNoc2Ugc2NodWV0dGVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvbGxlIFJlc2V0cy4uLiAoTGV2LCAyNi4gRGV6IDIwMDEsIDAwOjMyOjM1KToKRGVyIEdsYXNnaWdhbnQgemVyc3BsaXR0ZXJ0LgpFaW4gR2xhc2dpZ2FudCBrb21tdCBhbi4KRWluIEdsYXNnaWdhbnQgaGVidCBlaW4gR2xhc3NjaHdlcnQgYXVmLgpFaW4gR2xhc2dpZ2FudCB6dWVja3QgZWluIEdsYXNzY2h3ZXJ0LgpFaW5lIGhlcnJsaWNoZSBXYWVybWUgZ2VodCB2b24gRGVpbmVtIEFtdWxldHQgYXVzLCB1bmQgRHUgZnVlaGxzdApEaWNoIHByaW1hLgoKR2FueiBwcmltYS4uLi4gZGFubiBlYmVuIGRhcyBnbGVpY2ggbm9jaG1hbCB2b24gdm9ybmUgOykKCkxldi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFcmxldWNodHVuZyAoRGVlcGJsdWUsIDI2LiBEZXogMjAwMSwgMTU6MTg6MDcpOgp+IyEgcm49Tm9ubmUgcnQ9MTAwOTM2NjcxNyByZz1naWxkZW4ua2xlcnVzCn4jISB0aWQ9MTAwOTM2NjcxNwpUb2xsLCB3aWVkZXIgbmVuIEdydW5kIFp3ZWl0aWVzIG5pY2h0IHp1IG1hcmtpZXJlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFcmxldWNodHVuZyAoWm9vaywgMjYuIERleiAyMDAxLCAxNToxOTo0NSk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDA5Mzc2Mjg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTM2NjcxNwpXZWxjaGVyIFp3ZWl0aWUgdm9uIERpciBpc3QgZGVubiBuaWNodCBtYXJraWVydD8KClpvb2ssIGhldXRlIGluIEdlYmVybGF1bmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbmZhZW5nZXIgc3VlY2h0aWcgbWFjaGVuIDopIChMZWlibml6LCAyNy4gRGV6IDIwMDEsIDAxOjE1OjU4KToKRHUgdGVpbHN0IERhdGFrZWtzIG1pdDogYWxsZXMgd2FzIGdyb3NzIGdlc2NocmllYmVuIGlzdCwga2FubiB1bnRlcnN1Y2h0IApEdSB0ZWlsc3QgRGF0YWtla3MgbWl0OiB3ZXJkZW4KCkRhdGFLRUtTIHRlaWx0IERpciBtaXQ6IGR1IG5pbW1zdCBtaWNoIGF1ZiBkZW4gYXJtISBpc3QgamEgbmVuIGZ1bGx0aW1lam9iCgoKbGVpYm5peiBraWNoZXJ0IG51ciBub2NoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYW5mYWVuZ2VyIHN1ZWNodGlnIG1hY2hlbiA6KSAoV3VyemVsLCAyNy4gRGV6IDIwMDEsIDAxOjM2OjM4KToKfiMhIHJuPUxlaWJuaXogcnQ9MTAwOTQxMjE1OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDk0MTIxNTgKbmljaHQgZGllIGFybWVuIGtsZWluZW4gYW5sdWVnZW4uIG1hbiBrYW5uIChtaXQgd2VjaHNlbG5kZW0gZXJmb2xnIG5hdHVlcmxpY2gpCmF1Y2gga2xlaW5nZXNjaHJpZWJlbmUgc2FjaGVuIHVudGVyc3VjaGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGFuZmFlbmdlciBzdWVjaHRpZyBtYWNoZW4gOikgKExlaWJuaXosIDI3LiBEZXogMjAwMSwgMDE6Mzc6MjQpOgp+IyEgcm49V3VyemVsIHJ0PTEwMDk0MTMzOTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDA5NDEyMTU4Cm1laW5zdGUgbmljaHQsIGRpZSBzaW5kIGRhbm4gZXJzdCBtYWwgZ2FueiB1ZWJlcmZvcmRlcnQ/CgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogYW5mYWVuZ2VyIHN1ZWNodGlnIG1hY2hlbiA6KSAoV3VyemVsLCAyNy4gRGV6IDIwMDEsIDAxOjM4OjAyKToKfiMhIHJuPUxlaWJuaXogcnQ9MTAwOTQxMzQ0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDk0MTIxNTgKZG9jaC4gYWJlciBkYXMgbGViZW4gaXN0IGhhcnQsIHVuZCBudXIgaW0gd2Fzc2VyIGxlcm50IG1hbiBzY2h3aW1tZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhbmZhZW5nZXIgc3VlY2h0aWcgbWFjaGVuIDopIChNdXBmZWwsIDI3LiBEZXogMjAwMSwgMDE6Mzk6NTcpOgp+IyEgcm49TGVpYm5peiBydD0xMDA5NDEyMTU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTQxMjE1OApSZWNodCBoYXQgZGVyIE1hbm4hIFNjaGF1dCBldWNoIG1hbCB1bTogbGF1dGVyIEZ1bGx0aW1lLU11ZGRlciBoaWVyLi4uCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhbmZhZW5nZXIgc3VlY2h0aWcgbWFjaGVuIDopIChMZWlibml6LCAyNy4gRGV6IDIwMDEsIDAxOjQwOjIzKToKfiMhIHJuPU11cGZlbCBydD0xMDA5NDEzNTk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTQxMjE1OApsYXV0ZXIgc3VjaHRpZXM/Pz8KCm5hamEgaWNoIGJpbiBuaWNodCBzdWVjaHRpZwoKbGVpYmkgLSBnZWhlaWx0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogYW5mYWVuZ2VyIHN1ZWNodGlnIG1hY2hlbiA6KSAoV3VyemVsLCAyNy4gRGV6IDIwMDEsIDAxOjQxOjM5KToKfiMhIHJuPUxlaWJuaXogcnQ9MTAwOTQxMzYyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDk0MTIxNTgKbXVkZGVuIG1hY2h0IG5pY2h0IHN1ZWNodGlnLiBkYXNzIGljaCBkYXMgamV0enQgc2VpdCAxMiBqYWhyZW4gbWFjaGUsIGlzdAplaGVyIHp1ZmFlbGxpZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGFuZmFlbmdlciBzdWVjaHRpZyBtYWNoZW4gOikgKFpvb2ssIDI3LiBEZXogMjAwMSwgMDE6NDk6NTMpOgp+IyEgcm49V3VyemVsIHJ0PTEwMDk0MTM2OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA5NDEyMTU4Clp1ZmFlbGxlIGdpYnRzLi4uIDotKSkpKQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGFuZmFlbmdlciBzdWVjaHRpZyBtYWNoZW4gOikgKENhdHdlYXpsZSwgMjcuIERleiAyMDAxLCAwOToxMToyMyk6Cn4jISBybj1XdXJ6ZWwgcnQ9MTAwOTQxMzY5OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDk0MTIxNTgKQWVoLCB6d29lbGY/CgpZVEMgKEF1Z2VuYnJhdWUgZnJhZ2VuZCBob2NoemllaGVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGFuZmFlbmdlciBzdWVjaHRpZyBtYWNoZW4gOikgKENyb2Z0LCAyNy4gRGV6IDIwMDEsIDEwOjM4OjQyKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDA5NDQwNjgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTQxMjE1OApFcyBnYWIgYXVjaCBzY2hvbiB2b3IgTW9yZ2VuZ3JhdWVuIE1VRHMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGFuZmFlbmdlciBzdWVjaHRpZyBtYWNoZW4gOikgKENhdHdlYXpsZSwgMjcuIERleiAyMDAxLCAxMDo1OTozNik6Cn4jISBybj1Dcm9mdCBydD0xMDA5NDQ1OTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTQxMjE1OApEYXMgaXN0IG1pciBiZWthbm50LiAKVHJvdHpkZW0gd3VyZGUgaWNoIGdlcm5lIHdpc3Nlbiwgd28gV3VyemVsIGhlcmtvbW10LgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBhbmZhZW5nZXIgc3VlY2h0aWcgbWFjaGVuIDopIChXdXJ6ZWwsIDI3LiBEZXogMjAwMSwgMTM6Mzk6MjEpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMDk0NDcxNzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA5NDEyMTU4CnZvciBhbGxlbSBuaWdodGZhbGwuIGdpYnQgZXMgaW1tZXJub2NoLCBpc3QgYWJlciBzZWl0IGphaHJlbiBzbyBndXQgd2llIHRvdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnN1ZXNzIChDYXR3ZWF6bGUsIDI3LiBEZXogMjAwMSwgMTU6MjY6MjgpOgpbQWJlbnRldWVyOktodWZ0XSBvZWguLi4gd28gYml0dGUgaXN0IGRlciB3ZWlobmFjaHRzbWFubj8KW0FiZW50ZXVlcjpUem9mZV0gRHUgZ2xhdWJzdCBhbiBkZW4gV2VpaG5hY2h0c21hbm4gPwpbQWJlbnRldWVyOktodWZ0XSBuZWluLCBhYmVyIGRlciBicmllZiBpbiBtZWluZXIgaGFuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCTEEgKEdyaW1tYm9ybiwgMjguIERleiAyMDAxLCAxNTo0MDozMyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTAwOTA1MjA2NSByZz1zZWhlci51cmxhdWIKfiMhIHRpZD0xMDA4OTg0ODUyCkphLCBkYXMgbXVzcyBmdWVyIERpY2ggaGFydCBzZWluLCBrYW5uIGljaCBzY2hvbiB2ZXJzdGVoZW4uIEtlaW5lIEZyZXVuZGUsIHVuZApkYXMgbXVkIGludGVyZXNzaWVydHMgYXVjaCBuaWNodC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFpvb2ssIDI4LiBEZXogMjAwMSwgMjM6NDQ6MDIpOgpPc3RlcmZyb3NjaCBydWZ0OiBob2JiaXR3YWVjaHRlcgoKKGVpbmlnZSBaZWl0IHNwYWV0ZXIpCgpbVG9kOkxhcnNdIEVpbiBIb2JiaXR3YWVjaHRlciBoYXQgZ2VyYWRlIE9zdGVyZnJvc2NoIHVtZ2VicmFjaHQuCltUb2Q6RWluIEhvYmJpdHdhZWNodGVyXSBKYSxqYSB3aXIgSG9iYml0cyBzaW5kIGRpZSBiZXN0ZW4gS2FlbXBmZXIgZGVyIFdlbHQhCltUb2Q6RWluIEhvYmJpdHdhZWNodGVyXSA6LSkKCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChMZXYsIDI5LiBEZXogMjAwMSwgMTc6NTQ6MzApOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBPcmtzXSBEdSB3YXJzdCBnYXIgbmljaHQgYW4gZGVyIFJlaWhlLCBFcHBpISA8MTc6NTI6MzM+CltNb2VyZGVyOkVwcGldIHJlIDopIDwxNzo1Mjo0Nz4KCihrdXJ6ZSBaZWl0IHNwYWV0ZXIpCgpbVG9kOkxhcnNdIEVpbiBPcmsgaGF0IGdlcmFkZSBFcHBpIHVtZ2VicmFjaHQuCltUb2Q6RWluIE9ya10gV2lyIHNpbmQgT3JrISBXaWRlcnN0YW5kIGlzdCB6d2Vja2xvcyEgRGVpbiBXaXNzZW4gdW5kIERlaW5lCltUb2Q6RWluIE9ya10gQXVzcnVlc3R1bmcgd3VyZGVuIGFzc2ltaWxpZXJ0LgoKTGV2LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWggamE/IChNb25kbGljaHQsIDMwLiBEZXogMjAwMSwgMTM6MTM6NDYpOgpWYWV0ZXJjaGVuIFplaXQgZnJhZ3Q6IE1vbmRsaWNodCwgV2FzIGlzdCBlaW4gR290dD8KRHUgYW50d29ydGVzdDogWm9vawpWYWV0ZXJjaGVuIFplaXQgc2FndDogRGFydWViZXIgbGFlc3N0IHNpY2ggc3RyZWl0ZW4uIFByb2JpZXJzIG5vY2htYWwuCgpNb25kbGljaHQKZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBaCBqYT8gKFpvb2ssIDMwLiBEZXogMjAwMSwgMTM6MTQ6MDQpOgp+IyEgcm49TW9uZGxpY2h0IHJ0PTEwMDk3MTQ0MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA5NzE0NDI2ClBmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmdAoKWm9vayBtZWludDogS2V0b3MsIGZpeCBkYXMgbWFsIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBaCBqYT8gKFpvb2ssIDMwLiBEZXogMjAwMSwgMTM6MjA6MzYpOgp+IyEgcm49Wm9vayBydD0xMDA5NzE0NDQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTcxNDQyNgpHZWZpeHQuIDotKQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFoIGphPyAoV3VyemVsLCAzMC4gRGV6IDIwMDEsIDEzOjI2OjMzKToKfiMhIHJuPVpvb2sgcnQ9MTAwOTcxNDgzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDk3MTQ0MjYKc2VsYnN0IGlzdCBkZXIgZ290dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjEwIGlzdCBzY2hlaW5iYXIgbmljaHQgZ2VudWcuLi4uIChab29rLCAzMC4gRGV6IDIwMDEsIDEzOjQ1OjMxKToKW0FiZW50ZXVlcjpBc2FuaWVsXSBHYXRvIGhhdCBzaWNoIHNvZWJlbiB6dW0gMTAuIE1hbCBhbHMgRHJhY2hlbnRvZXRlcgpbQWJlbnRldWVyOkFzYW5pZWxdIGJld2FlaHJ0ISA8MTM6MjY6MDk+CgooZXR3YXMgc3BhZXRlcikKCltUb2Q6TGFyc10gRWluIGZsYW1tZW5kZXIgRmV1ZXJkcmFjaGUgaGF0IGdlcmFkZSBHYXRvIHVtZ2VicmFjaHQuIDwxMzo0NDoxMD4KW1RvZDpFaW4gZmxhbW1lbmRlciBGZXVlcmRyYWNoZV0gQnJhdGUgaW4gZGVyIEhvZWxsZSwgRHUgV3VybSEgPDEzOjQ0OjEwPgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmxhZy1mb2xnZW4gKFN0cm9oYWxtLCAzMC4gRGV6IDIwMDEsIDE0OjIyOjIzKToKWzxNYXN0ZVI+OkVwcGldIHdpZSB3YWVycyBtaXQgbmVtIHJlYm9vdCA/IDopCls8TWFzdGVSPjpFcHBpIGFyZ2x0IC4uIGluIGRlciB6ZWl0IGlkZWx0IGphIGRlciBvcmsgd2llZGVyIGhvY2ggOihdCls8TWFzdGVSPjpFcHBpXSBsClZvbiBpcmdlbmR3byBkcmluZ3QgZGVyIFRvZGVzc2NocmVpIGVpbmVzIGFybWVuIEdlc2Nob2VwZmVzIHp1IERpci4KWzxNYXN0ZVI+OjxNYXN0ZVI+XSA2LjM5IGNtZHMvcywgMTUzLjQ5IGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogNi4yJS82MCwgMTcuMiUvMTUsIDIxLjklLzEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2VpaG5hY2h0c3VybGF1YiAoR25vbWUsIDMwLiBEZXogMjAwMSwgMTU6MjY6NTUpOgp+IyEgcm49RWxpemFiZXRoIHJ0PTEwMDk2NTYyNTggcmc9cGFydHkKfiMhIHRpZD0xMDA4NjA0Mjc4CjIgZGluZ2Ugc29sbHRlc3QgZHUgbGVybmVuOgotIGRpY2ggaW4gZ2VkdWxkIHp1IHVlYmVuLCBiZXNvbmRlcnMgd2FzIHBhcnR5Zm90b3MgYW5nZWh0LAotIG5pY2h0IHNvIHp1IHRpcHBlbiwgd2llIGR1IHNwcmljaHN0LiBiZXNvbmRlcnMgaW4gZGVyIG1wYS4gOikKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFoIGphPyAoVGlhbWFrLCAzMC4gRGV6IDIwMDEsIDE5OjIzOjU0KToKfiMhIHJuPVpvb2sgcnQ9MTAwOTcxNDQ0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDk3MTQ0MjYKVmFldGVyY2hlbiBaZWl0IGhhdCBqYSBkYW5hY2ggZ2VmcmFndCwgX3dhc18gZWluIEdvdHQgaXN0IHVuZCBuaWNodCBfd2VyXy4gClVuZCBpY2ggaGFiZSBkb2NoIGFyZ2UgWndlaWZlbCwgZGFzcyBkaWUgQmVzY2hyZWlidW5nICJab29rIiBqZWRlbSBHb3R0CmdlcmVjaHQgd2lyZC4gO14pCgoKVGlhbWFrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBaCBqYT8gKE1vbmRsaWNodCwgMzAuIERleiAyMDAxLCAxOToyNzoxMik6Cn4jISBybj1UaWFtYWsgcnQ9MTAwOTczNjYzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDk3MTQ0MjYKVGphLCBzYWVtdGxpY2hlIGFuZGVyZW4gQW50d29ydGVuIGdlbnVlZ3RlbiBpaG0gYWJlciBuaWNodC4gQWxzbyB2b24gd2VnZW4KU3BpZWxlcmxldmVsIDExMSBvZGVyIE1vcmdlbkdyYXVlbi1HcnVlbmRlciBvZGVyIGRlciByYW5naG9lY2hzdGUgTWFnaWVyIGltCk1HLi4uCgpGYWVsc2NobGljaGVyd2Vpc2Ugd2FyIEJvaW5nIGRhbm4gYWJlciBha3plcHRhYmVsIDstKQoKTW9uZGxpY2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBaCBqYT8gKFdpbGxvdywgMzAuIERleiAyMDAxLCAxOTozMDowNCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDA5NzM2OTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTcxNDQyNgpCbGFzcGhlbWllIC0gc3RlaW5pZ3QgaWhuISA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFoIGphPyAoR2xvaW5zb24sIDMwLiBEZXogMjAwMSwgMjA6MDk6NDApOgp+IyEgcm49VGlhbWFrIHJ0PTEwMDk3MzY2MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA5NzE0NDI2CkR1IHNvbGxzdCBrZWluZW4gWm9vayBoYWJlbiBuZWJlbiBtaXIuIFN0ZWh0IGVzIG5pY2h0IGlyZ2VuZHdvPwoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQWggamE/IChUaWFtYWssIDMwLiBEZXogMjAwMSwgMjA6MTA6MzIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAwOTczOTM4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDk3MTQ0MjYKTmljaHQgZGFzcyBpY2ggd3Vlc3N0ZS4KClRpYW1hay4gSGF0IFpvb2sgb2Z0IG5lYmVuIHNpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBaCBqYT8gKEdsb2luc29uLCAzMC4gRGV6IDIwMDEsIDIwOjEyOjA1KToKfiMhIHJuPVRpYW1hayBydD0xMDA5NzM5NDMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTcxNDQyNgpTb2xhbmdlIGVzIGJlaSBlaW5lbSBibGVpYnQgdW5kIER1IGtlaW5lbiBkYW5lYmVuc3RlbGxzdCBpc3QgZXMgbm9jaCBpLk8uCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBaCBqYT8gKFRpYW1haywgMzAuIERleiAyMDAxLCAyMDoxMzozMik6Cn4jISBybj1HbG9pbnNvbiBydD0xMDA5NzM5NTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTcxNDQyNgpXYXMgc29sbCBpY2ggbWl0IG1laHJlcmVuIFpvb2tzPwpJY2ggaGFiIGphIGd1dGUgTmVydmVuIC0gYWJlciB3YXMgenV2aWVsIGlzdCwgaXN0IHp1dmllbC4gO14pCgoKVGlhbWFrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBaCBqYT8gKEdsb2luc29uLCAzMC4gRGV6IDIwMDEsIDIwOjE3OjQyKToKfiMhIHJuPVRpYW1hayBydD0xMDA5NzM5NjEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTcxNDQyNgpHdXQsIGRhbm4ga29lbm5lbiB3aXIgZGFzIGphIGlyZ2VuZHdvIHBvc3R1bGllcmVuIG9obmUgRGljaCBpbiBHZWZhaHIgenUKYnJpbmdlbi4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEFoIGphPyAoVGlhbWFrLCAzMC4gRGV6IDIwMDEsIDIwOjIwOjA5KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMDk3Mzk4NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA5NzE0NDI2CkRlciBlaW56aWdlLCBkZXIgbWljaCBpbiBHZWZhaHIgYnJpbmd0LCBiaW4gaWNoIHNlbGJzdC4KQWxzbyBwb3N0dWxpZXIgRHUgbWFsIHNjaG9lbi4gOy0pCgoKVGlhbWFrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBaCBqYT8gKEFudGhlYSwgMzAuIERleiAyMDAxLCAyMDoyMTozMSk6Cn4jISBybj1UaWFtYWsgcnQ9MTAwOTc0MDAwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDk3MTQ0MjYKV2llIHdhZXJlIGVzIG1pdDoKRHUgc29sbHN0IGVpbmVuIFpvb2sgaGFiZW4gbmViZW4gSm9mPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEFoIGphPyAoT3JrdG9ldGVyLCAzMC4gRGV6IDIwMDEsIDIwOjMwOjA4KToKfiMhIHJuPUFudGhlYSBydD0xMDA5NzQwMDkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTcxNDQyNgpXaWU/IApKb2YgaGF0IGRlbiBab25rIGdlem9nZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBaCBqYT8gKFpvb2ssIDMwLiBEZXogMjAwMSwgMjE6MDg6MDcpOgp+IyEgcm49VGlhbWFrIHJ0PTEwMDk3Mzk0MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA5NzE0NDI2Clp1bSBCZWlzcGllbCBqZXR6dCBpbSBBdWdlbmJsaWNrLiA7KQoKWm9vayBodWVwZnQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQWggamE/IChHbG9pbnNvbiwgMzAuIERleiAyMDAxLCAyMTowOTo0NSk6Cn4jISBybj1ab29rIHJ0PTEwMDk3NDI4ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA5NzE0NDI2CkJpc3QgRHUgbmljaHQgc293aWVzbyBzY2hvbiBncm9lc3NlciBhbHMgVGlhbWFrPyBXYXJ1bSBtdXNzdCBEdSBkYW5uIG5vY2gKaHVlcGZlbj8KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFoIGphPyAoWm9vaywgMzAuIERleiAyMDAxLCAyMToxMDozMik6Cn4jISBybj1HbG9pbnNvbiBydD0xMDA5NzQyOTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTcxNDQyNgpWb24gZGVyIFBoeXNpcyBoZXIgYmluIGljaCA4MGNtIGtsZWluZXIgYWxzIFRpYW1hay4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBaCBqYT8gKEFudGhlYSwgMzAuIERleiAyMDAxLCAyMToxMToyMCk6Cn4jISBybj1ab29rIHJ0PTEwMDk3NDMwMzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA5NzE0NDI2Ck11ZXNzZW4gd2lyIGRpY2ggamV0enQgbWl0IGVpbmVyIEFuZWtkb3RlIHZvbiBkZW0ga2xlaW5lbiBOYXBwaSB0cm9lc3Rlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEFoIGphPyAoWm9vaywgMzAuIERleiAyMDAxLCAyMToxMjowNCk6Cn4jISBybj1BbnRoZWEgcnQ9MTAwOTc0MzA4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDk3MTQ0MjYKTWljaCBtdXNzIG1hbiB1ZWJlcmhhdXB0IG5pY2h0IHRyb2VzdGVuLCB3aWUga29tbXN0IER1IGRhcmF1Zj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQWggamE/IChBbnRoZWEsIDMwLiBEZXogMjAwMSwgMjE6MTI6NTQpOgp+IyEgcm49Wm9vayBydD0xMDA5NzQzMTI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTcxNDQyNgpBY2ggbnVyIHNvLiBOYXBwaSBoYXR0ZSBqYSBzbyBnZXdpc3NlIEtvbXBsZXhlIHdlZ2VuIHNlaW5lciBHcm9lc3NlLi4uCnNvcnJ5Li4uIGJlaSBpaG0gbXVzc3RlIG1hbiBqYSBzYWdlbiAiTGFlbmdlIi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEFoIGphPyAoR2xvaW5zb24sIDMwLiBEZXogMjAwMSwgMjE6MTM6MDgpOgp+IyEgcm49Wm9vayBydD0xMDA5NzQzMDMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTcxNDQyNgpXZW5uIGlociBhdWYgZGVtIFJ1ZWNrZW4gbGllZ3QgdW5kIGRlbiBCYXVjaCBhdXNzdHJlY2t0PwoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0ZGlnZXN0IChGb29iYXIsIDMwLiBEZXogMjAwMSwgMjE6NDk6MTcpOgpGcm9tOiBQZXRlciBgZycgQm91aWxsb24gPGJvdWlsbG9uQG5ld3Rvbi5yaGVpbi1uZWNrYXIuZGU+Ck5ld3Nncm91cHM6IGRlLmV0Yy5iZXJ1Zi5zZWxic3RhZW5kaWcKU3ViamVjdDogUmU6IEVuZ2xpc2NoZSBQb3NpdGlvbnNiZXplaWNobnVuZ2VuIGluIGVpbmVyIEZpcm1hCkRhdGU6IFR1ZSwgMTggRGVjIDIwMDEgMTk6MDQ6MDggKzAwMDAgKFVUQykKTWVzc2FnZS1JRDogPDl2bzN2NyRvbzEkMUBsYTNzZXJ2LnJuaW5ldC5kZT4KCgpDaHJpc3RpYW4gR3V0emVuIDxndXR6ZW5AYmlvYnNlcnZlLmNvbT4gd3JvdGU6Cj4gV2FzIGlzdCBtaXQgZGVuICJNYW5hZ2VyIiBCZXplaWNobnVuZ2VuPyBEaWUgc2llaHQgbWFuIGluIGRlbiBVU0EgamEKPiBzZWhyIGhhZXVmaWcuCgoiU28geW91IHdhbnQgdG8gY2FycnkgdGVuIGNhbnMgb2YgY29rZSBhbGwgYXQgb25jZSBpbiB5b3VyIGhhbmRzPyIKIk9oIHllcy4gSSB0aGluayBJIGNhbiBtYW5hZ2UgdGhhdCBhbGwgcmlnaHQuIgoKSW0gRW5nbGlzY2hlbiBiZWRldXRldCAidG8gbWFuYWdlIiwgZGFzcyBtYW4gbWl0IHNlaW5lciBBdWZnYWJlIChoYWxid2Vncwp1bmQgaXJnZW5kd2llKSB6dXJlY2h0IGtvbW10LiAgVW5kIGdlbmF1IGluIGRlbSBTaW5uIGlzdCBtZWlzdCBhdWNoIGRlcgpBdXNkcnVjayAiTWFuYWdlciIgenUgdmVyc3RlaGVuLiAgUGl6emEgZGVsaXZlcnkgbWFuYWdlciAoQnJpbmdkaWVuc3QpLApzYW5pdGl6aW5nIG1hbmFnZXIgKEtsby1QdXR6ZSksIGN1c3RvbWVyIHNhdGlzZmFjdGlvbiBtYW5hZ2VyCihCZXNjaHdlcmRlbmFid2ltbWVsZXIpLgoKQm9lc2UgWnVuZ2VuIGJlaGF1cHRlbiwgaW0gRGV1dHNjaGVuIGhhZXR0ZSAiTWFuYWdlciIgaW4gZXR3YSBkaWVzZWxiZQpCZWRldXR1bmcgd2llIGltIEVuZ2xpc2NoZW4sIG51ciBkYXNzIGhpZXJ6dWxhbmRlIG5pY2h0IGVpbm1hbCBkaWUKQW5uYWhtZSBnYXJhbnRpZXJ0IGlzdCwgZWluIE1hbmFnZXIga2FlbWUgenVyZWNodC4KClAuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV0ZGlnZXN0IChXdXJ6ZWwsIDMwLiBEZXogMjAwMSwgMjE6NTU6NTIpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwMDk3NDUzNTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA5NzQ1MzU3Cm5pY2h0IG51ciBib2VzZSB6dW5nZW4gYmVoYXVwdGVuIGRhcy4gc2VpdCBhdWNoIGluIGRldXRzY2hsYW5kIGRlciBoYXVzbWVpc3RlcgphbGxnZW1laW4gYWxzIGZhY2lsaXR5IG1hbmFnZXIgYmV6ZWljaG5ldCB3aXJkLCB3ZWlzcyBtYW4gYmVzY2hlaWQgOikKbGV1dGUsIGRpZSB3YXMgenUgc2FnZW4gaGFiZW4sIGVya2VubnQgbWFuIGFuICJkaXJlY3RvciIsICJoZWFkIG9mIGJsYWJsYSIsCiJ2aWNlIHByZXNpZGVudCIgb2RlciBhZWhubGljaGVuIGh1ZWxzZW4uIGV0d2FzIGFuZGVycyBhbHMgYmVpbSBtYW5hZ2VyCnZlcmhhZWx0IGVzIHNpY2ggbWl0IGRlciBiZXplaWNobnVuZyAibWFuYWdpbmciLiBkZXIgIm1hbmFnaW5nIGRpcmVjdG9yIiBpc3QKdHlwaXNjaGVyd2Vpc2UgZGVyIGNoZWYuIHdhcnVtIG1hbiBkYWZ1ZXIgYWJlciB6d2FuZ3N3ZWlzZSBlbmdsaXNjaGUgaHVlbHNlbgpicmF1Y2h0LCB3byB3aXIgZG9jaCBtYWwgZWluZSBlaWdlbmUgc3ByYWNoZSBoYXR0ZW4sIGlzdCBtaXIgYWJlciBuaWNodCBrbGFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXRkaWdlc3QgKFpvb2ssIDMwLiBEZXogMjAwMSwgMjI6NTg6MzkpOgp+IyEgcm49V3VyemVsIHJ0PTEwMDk3NDU3NTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA5NzQ1MzU3Ck1pdCBpc3QgZGllc2VzIERlbmdsaXNjaCBhdWNoIG5pY2h0IHNvIGdhbnoga2xhci4gSWNoIHZlcmJhbGxob3JuZSBlcwpoYWV1ZmlnIGR1cmNoIHVucGFzc2VuZGUgZGV1dHNjaGUgVWViZXJzZXR6dW5nZW4uIE1laW4gQ2hlZiBzcHJpY2h0IAphdWNoIGdlcm5lIHZvbSBCZXJncmFkIHVuZCBhZWhubGljaGVuIHRlY2huaXNjaGVuIEVycnVuZ2Vuc2NoYWZ0ZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmV0ZGlnZXN0IChHcmltbWJvcm4sIDMwLiBEZXogMjAwMSwgMjM6MTM6MzMpOgp+IyEgcm49Wm9vayBydD0xMDA5NzQ5NTE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTc0NTM1NwpFaW5lIG1laW5lciBqb2IgdGl0bGVzIGlzdCAiUHJvYmxlbSBNYW5hZ2VyIi4gSWNoIGxlZ2UgV2VydCBhdWYgZGllCkZlc3RzdGVsbHVuZyBkYXNzIGVzIG5pY2h0ICJQcm9ibGVtIFNvbHZlciIgaGVpc3N0LiBVbmQgamEsIGljaCBrb21tZSBtaXQgZGVuClByb2JsZW1lbiAoYW5kZXJlciBMZXV0ZSkgZ3V0IGtsYXIsIHVuZCBuZWluLCBpY2ggaGFiZSBuaWNodHMgenUgc2FnZW4uIEljaApzY2hhZmZzIGphIG5pY2h0bWFsIG1laW5lbSBlaWdlbmVuIFRlYW0gYmVpenVicmluZ2VuIG1pciBUZWUgenUga29jaGVuLCBkYXMKbWFjaGUgaWNoIG5hY2ggd2llIHZvciBzZWxiZXIgKGFsbGVyZGluZ3Mgc2NoYWV0emUgaWNoIGF1Y2ggZWluZW4gZ3V0Cmdla29jaHRlbiBUZWUgdW5kIHdpbGwgbWljaCBuaWNodCBlaW5lciBiZWxpZWJpZ2VuIFBsb2VycmUgYXVzc2V0emVuKS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmV0ZGlnZXN0IChCYW1iaSwgMzEuIERleiAyMDAxLCAxMjozODozMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwOTc1MDQxMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDk3NDUzNTcKSWNoIG11c3MgRGlyIHZvbGwgdW5kIGdhbnogenVzdGltbWVuOgpLb2NoIERpciBUZWUgbGllYmVyIHNlbGJzdCwgd2VubiBkaWUgQWx0ZXJuYXRpdmUgVGVlIHZvbiBlaW5lbSBLYWZmZWV0cmlua2VyCmdla29jaHQgenUgYmVrb21tZW4gaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2lsZGVuZGlza3JpbWluaWVydW5nICE/IChSb2xhbmQsIDMxLiBEZXogMjAwMSwgMTY6MTU6NDEpOgpJY2ggZmFuZHMgbHVzdGlnOgoKdW50IHdhbmQKQW4gZGVuIFdhZW5kZW4gaGFlbmdlbiBhdXNnZXN0b3BmdGUgWndlcmdlLCBQZWl0c2NoZW4gdW5kIE5hZ2Vsa2V0dGVuLgpBdXNzZXJkZW0gc2luZCBzaWUgbWl0IGRlbiBnbGVpY2hlbiBNb3RpdmVuIGJlbWFsdCB3aWUgZGllIERlY2tlLgoKdW50IG1vdGl2ZQpEaWUgTW90aXZlIGZpbmRlbiBpbiBlaW5lciBncm9zc2VuIEFyZW5hIHN0YXR0LiBNZWlzdGVucyBoYW5kZWx0IGVzIHNpY2ggdW0KaXJnZW5kd2VsY2hlIEtsZXJpa2VyIHVuZCBMb2V3ZW4uIFZpZWxlIExvZXdlbiEgQXVjaCBLcmV1emUsIGtvY2hlbmRlcyBQZWNoCnVuZCBTY2hlaXRlcmhhdWZlbiBrb21tZW4gZGFyaW4gdm9yLgoKdW50IGtsZXJpa2VyCkRpZSBLbGVyaWtlciBiZXRlbi4gU2NoZWludCBpaG5lbiBhYmVyIG5peCB6dSBudWV0emVuLgoKdW50IHBlY2gKRGFzIFBlY2ggd2lyZCBpbiBncm9zc2VuIEtlc3NlbG4gZXJoaXR6dC4KCnVudCBrZXNzZWwKTmFjaGRlbSBkYXMgUGVjaCBpbiBpaG5lbiBlcmhpdHp0IHd1cmRlLCBrb21tZW4gS2xlcmlrZXIgaGluZWluLgoKClJvbGFuZCBncmluc2VuZAoKSEFJTCBUUlZFUyAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoWm9vaywgIDEuIEphbiAyMDAyLCAyMzoyMDowNSk6CkhtbS4uLiBpbSBBbHRlciBzb2xsdGUgbWFuIG5pY2h0IHp1IHNjaG5lbGwgaGVydW1yZW5uZW4uLi4uCgpbWmF1YmVyZXI6U3BlbGxmaXJlXSBobW0gZ2liYmV0IGRlbiByaWVzaWdlbiBlaXNkYW1vbiBuaW1tZXI/CltaYXViZXJlcjpCcm90bmFlbF0gZG9jaCA6KQpbWmF1YmVyZXI6U3BlbGxmaXJlXSBvaGggdmVybGF1ZmVuIGJpbiBkb2NoIHdhcyBhbHQKW1phdWJlcmVyOkJyb3RuYWVsXSBsaWVnZXdpZXNlLCBzLHcsc3csbncsc3cscyBvZGVyIHNvIDopCltUb2Q6TGFyc10gVWViZXJtYWVzc2lnZSBFaWxlIGhhdCBnZXJhZGUgU3BlbGxmaXJlIHVtZ2VicmFjaHQuCltCZWlsZWlkOkJyb3RuYWVsXSBoZWhlLCBkYSBpc3NhIG5pY2ggOikKCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU2F1bmEgYW0gUG9sYXJ3ZWcgKEFwb2xsb25pYSwgIDIuIEphbiAyMDAyLCAxNTo1NjoyMCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAwOTk4MzE1MiByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDA4Njc2MjUzCkR1IG1laW5zdCBtaXQgSWRlZW4gS2FlbXBmZXJib25pIGltIFNNUz8/PyA7bykKCkFwbyoKZmllcyBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU2F1bmEgYW0gUG9sYXJ3ZWcgKEdyaW1tYm9ybiwgIDIuIEphbiAyMDAyLCAxNTo1OTo0Mik6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTAwOTk4MzM4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMDg2NzYyNTMKSG1tLi4uICJLYWVtcGZlcmJvbmkgaW0gU01TIi4uLiB3aWUgd2VpdCBzaW5kIGVpZ2VudGxpY2ggZGllIFBsYWVuZSBmdWVyIGVpbgpXQVAgaW50ZXJmYWNlIGZ1ZXJzIE1HPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU2F1bmEgYW0gUG9sYXJ3ZWcgKE9ya3RvZXRlciwgIDIuIEphbiAyMDAyLCAxNjowMjoyOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAwOTk4MzU4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDg2NzYyNTMKSmEsIHdlbGNoIGZ1ZXJjaHRlcmxpY2hlciBHZWRhbmtlIGFiZXIgYXVjaC4uIERhcyBTY2h3ZXJ0IGRlcyBTY2h3ZXJ0bWVpc3RlcnMKdW5kIGVzIGhhdCBCb25pIGZ1ZXIgS2FtcGZ0ZWNobmlrZW4hCkhvZXJ0IHNpY2ggZnVlciBtaWNoIGFlaG5saWNoIHNjaGxpbW0gYW4sIGFscyB3ZW5uIGVzIGVpbmVuIFphdWJlcnN0YWIgZ2FlYmUsCmRlciBaYWJlcmVyIGJlaW0gWmF1YmVybiB1bnRlcnN0dWV0emVuIHd1ZXJkZS4uLi4gSWggUGZ1aSBCb2VzZSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBTYXVuYSBhbSBQb2xhcndlZyAoUGF0cnluLCAgMi4gSmFuIDIwMDIsIDE2OjI2OjAyKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDA5OTgzNzQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODY3NjI1MwpuYSBqYSwgcGFzc2VuZGVyZXIgd2FlcmUgZGVyIHZlcmdsZWljaCBkYXNzIGVpbiB1bmJlc2llZ2JhcmVyIGhlbGQKenVzYWV0emxpY2ggZWluZW4gYW50aS1zdGVyYmV0cnVuayB6dSBzaWNoIG5pbW10LCB3ZWlsIGRvcHBlbHQgaGFlbHQgYmVzc2VyIDspCgotLSAKcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogU2F1bmEgYW0gUG9sYXJ3ZWcgKE9ya3RvZXRlciwgIDIuIEphbiAyMDAyLCAxNjoyODowNSk6Cn4jISBybj1QYXRyeW4gcnQ9MTAwOTk4NTE2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMDg2NzYyNTMKWyBdIER1IGhhc3Qga2VpbmUgQWhudW5nIHdvdm9uIGR1IHNwcmljaHN0PwoodW0gYXVjaCBpbSBuZXVlbiBKYWhyIGRpZSBndXRlbiBhbHRlbiBbIF0gbmljaHQgaW4gdmVyZ2Vzc2VuaGVpdCBnZXJhdGVuIHp1Cmxhc3Nlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBTYXVuYSBhbSBQb2xhcndlZyAoT3JrdG9ldGVyLCAgMi4gSmFuIDIwMDIsIDE2OjI4OjQzKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDA5OTg1Mjg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODY3NjI1MwpEYSEgRXMgZ2VodCBzY2hvbiBsb3MsIGRhcyAgZmVobHRlIGFtIEVuZGUgLi4uIGhhYnQgaWhyIGdlbWVya3Q/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFNhdW5hIGFtIFBvbGFyd2VnIChPcmt0b2V0ZXIsICAyLiBKYW4gMjAwMiwgMTY6Mjk6MzUpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMDk5ODUzMjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4Njc2MjUzClVmZiEgU2Nob24gd2llZGVyLi4gYWxzbyBkYXMgIC4uIG5hLCBpaHIgd2lzc3Qgc2Nob24sIGRhcyBHZWdlbnN0dWVjayB6dW0gKAouLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBTYXVuYSBhbSBQb2xhcndlZyAoUGF0cnluLCAgMi4gSmFuIDIwMDIsIDE2OjMwOjIzKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDA5OTg1Mjg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwODY3NjI1MwpndXQgZGFzcyBkdSBtaXIgc28gdmllbCBrb21wZXRlbnogZWlucmFldW1zdCA6KQptaXQga2Flc3RjaGVuIG11c3MgbWFuIHNjaG9uIHVtZ2VoZW4ga29lbm5lbiwgd2VubiBtYW4gZGVtIGFuZGVyZW4gdW5kIG5pY2h0CnNpY2ggc2VsYnN0IGVpbmUgZHJlaGVuIHdpbGwgKmcqCgotLSAKcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogU2F1bmEgYW0gUG9sYXJ3ZWcgKE9ya3RvZXRlciwgIDIuIEphbiAyMDAyLCAxNjozMjo1NCk6Cn4jISBybj1QYXRyeW4gcnQ9MTAwOTk4NTQyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDg2NzYyNTMKV3VhaCEgVW5kIGRpZSAgZ2VoZW4gYXVjaCBuaWNodCBtZWhyISBBbHNvIGRpZSwgZGllIG1hbiBlaW5lbSBmdWVyIGVpbiBVCnZvcm1hY2h0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogU2F1bmEgYW0gUG9sYXJ3ZWcgKFNpbHZhbmEsICAyLiBKYW4gMjAwMiwgMTY6MzQ6NDUpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMDk5ODU1NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDA4Njc2MjUzCkthdWYgRGlyIG5lIG5ldWUgVGFzdGF0dXIgLSB1bmQgbmVuIG5ldWVuIFRyZWliZXIgZGF6dS4gRGVpbmVyIHNjaGVpbnQgYXVzIG5lbQoneCcgbmFlbWxpY2ggTGVlcnplaWNoZW4genUgbWFjaGVuLiA7LSkKCiAgU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRXJsZXVjaHR1bmcgKFZhcmxhcmlvbiwgIDIuIEphbiAyMDAyLCAxODoxNjoxNik6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAwOTk5MDU4MyByZz1naWxkZW4ua2xlcnVzCn4jISB0aWQ9MTAwOTM2NjcxNwpTbyBlaW4gQXJ0aWtlbCB1bnRlciBkaWVzZW0gVGl0ZWwuLi4KClZhcmwqLCBpbiBkZXIgcmljaHRpZ2VuIFJ1YnJpayBzY2htdW56ZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFNhdW5hIGFtIFBvbGFyd2VnIChEYXJrd2luZywgIDIuIEphbiAyMDAyLCAxODo0NjowNCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAwOTk4NTI4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMDg2NzYyNTMKKnBydXN0KgoKRGEgZmVobHRlIHdvaGwgZGFzIEtyZXV6LCBkYXMgaXN0IG1hbCBlaW4gbmV0dGVzIEVpZ2VudG9yIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBFcmxldWNodHVuZyAoQW1hcnlsbGlzLCAgMi4gSmFuIDIwMDIsIDE4OjQ5OjQ2KToKfiMhIHJuPUFyayBydD0xMDA5OTkzNjk4IHJnPWdpbGRlbi5rbGVydXMKfiMhIHRpZD0xMDA5MzY2NzE3ClNvbGx0ZSB1bnMgZGFzIGpldHp0IHp1IGRlbmtlbiBnZWJlbj8gOi0pCgpBbWEqLCBncnVlYmVsbmQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEVybGV1Y2h0dW5nIChDdWNodWxsaW4sICAyLiBKYW4gMjAwMiwgMTg6NTM6MTQpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMDk5OTM1MjAgcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTEwMDkzNjY3MTcKTWFuIHNpZWh0IGltbWVyIG51ciBkaWUgcm9zYXJvdGVuIEJyaWxsZW4gYXVmIGRlbiBOYXNlbiBhbmRlcmVyIExldXRlLCAKT3JrdG9ldGVyLiBXb2JlaSBtYW4gbmF0dWVybGljaCBhdWNoIGtlaW5lIGJyYXVjaHQsIHdlbm4gZGFzIEJyZXR0IHZvcidtCktvcGYgbnVyIGdyb3NzIGdlbnVnIGlzdC4uLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBFcmxldWNodHVuZyAoT3JrdG9ldGVyLCAgMi4gSmFuIDIwMDIsIDE5OjI0OjMzKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDA5OTkzOTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTM2NjcxNwpTbyBrYW5uIG1hbiBkYXMgYXVjaCBzZWhlbiBDdWNodWxsaW4sIGFiZXIgd2VubiBuYWNoIDEwIEphaHJlbiBNRyBuaWNodCBlaW4KbWFsIGVpbiBNYWdpZXIgZGFmdWVyIGJlc3RyYWZ0IHd1cmRlLCBkYXMgZXIgZWluZW4gaWxsZWdhbGVuIFp3ZWl0aSBoYXQsIGRhbm4Ka2FubiBkYXMgYW4gdmVyc2NoaWVkZW5lbSBsaWVnZW46CgpFcyBrb2VubnRlIHNlaW4sIGRhcyBNYWdpZXIgaW0gTUcgYW5kZXJzIHNpbmQgYWxzIGRlciBEdXJjaHNjaG5pdHQgZGVyCkJldm9lbGtlcnVuZwpFcyBrb2VubnRlIHNlaW4sIGRhcyBNYWdpZXIgZXJ3aXNjaHQgd3VyZGVuLCBkYXMgYWJlciB1bnRlciBkZW4gVGVwcGljaApnZWtlaHJ0IHd1cmRlCk9kZXIgZXMgbGllZ3QgZGFyYW4sIGRhcyBzaWUgZWluZmFjaCBuaWNodCBlcndpc2NodCB3dXJkZW4vd2VyZGVuIHVuZCB6d2FyCnVuYWJoYWVuZ2lnIG9iIGF1ZmdydW5kIHRlY2huaXNjaGVyIERldGFpbHMgb2RlciBzcGllbHdlaXNlLgoKVW5kIHdlbm4gZHUgd2VpdGVyaGluIG1laW5zdCBkYXMgTUcgc2VpIE1hZ2llcnp3ZWl0aWZyZWkgKHVubWFya2llcnRlKSBkYW5uCihCcmV0dCBoaW4gQnJldHQgaGVyKSBoYXN0IGR1IGZ1ZXIgbWljaCBlaW5lIHJvc2Fyb3RlIEJyaWxsZSBhdWYuCgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBFcmxldWNodHVuZyAoU2lsdmFuYSwgIDIuIEphbiAyMDAyLCAyMDozMjowMyk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAwOTk5NTg3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMDkzNjY3MTcKT29vb2NoLCBlcyBoYXQgc2Nob24gTWFnaWVyIGdlZ2ViZW4sIGRpZSBlcndpc2NodCB3dXJkZW4uLi4gOy0pCklzdCB2aWVsbGVpY2h0IG51ciBuaWNodCBhbGx6dSBsYXV0IGR1cmNoIGRpZSBNUEEgZ2VnYW5nZW4uCgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBFcmxldWNodHVuZyAoR29yLCAgMy4gSmFuIDIwMDIsIDIzOjU5OjA4KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDA5OTk1ODczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAwOTM2NjcxNwpEYW5rZSBPVCwgTGVpZGVyIGluIGRlciBmYWxzY2hlbiBSdWJyaWsuCkdvciAtPiBnaWxkZW4ua2xlcnVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBGcmFnZSEgKFZhcmxhcmlvbiwgIDQuIEphbiAyMDAyLCAxMTo0MjowNik6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAxMDE0MDc3NCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMDEwMDkxMjUyClZvciBhbGxlbSwgd2VubiBtYW4gZGFzIEFsdGVyIGJlZGVua3QsIHdhcyBkaWUgbWVpc3RlbiBLYWVtcGZlciBiaXMgZGFoaW4KZXJyZWljaHQgaGFiZW4uLi4gRGllIGJyYXVjaGVuIGRhbm4gc2ljaGVyIGF1Y2ggc3BlemllbGxlIG5ldWUgS2FtcGZ0ZWNobmlrZW4Kd2llICJHZWJpc3N3ZWl0d3VyZiwgKEtydWVjay0pU3RvY2tmZWNodGVuIHVuZCBuYXR1ZXJsaWNoIGRhcyBVZWJlcnJvbGxlbgpnZWduZXJpc2NoZXIgRnVlc3NlIG1pdCBkZW0gUm9sbHN0dWhsIDopCgpWYXJsKiwgdGF0dGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZyYWdlISAoQ3VjaHVsbGluLCAgNC4gSmFuIDIwMDIsIDExOjU5OjI3KToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDEwMTQwOTI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDA5MTI1MgoKICAgICAiR3V0ZSBTY3JpcHRlIGhhbHRlbiBqdW5nLiIgW1ZvbGtzd2Vpc2hlaXRdCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRnJhZ2UhIChWYXJsYXJpb24sICA0LiBKYW4gMjAwMiwgMTI6MDA6MDMpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMTAxNDE5Njcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMDkxMjUyCkljaCBzcHJhY2ggdm9uIFNwaWVsZXJuLCBuaWNodCB2b24gQm90cyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0ZGlnZXN0IChWYW5pb24sICA0LiBKYW4gMjAwMiwgMTI6Mjg6MjApOgpIYWxsbyBGcmFuaywKCj4gSGFzdCBEdSBkaWUgQmVuemlucHJlaXNlIHNjaG9uIGdlc2VoZW4/IERhcyBlcmlubmVydCBtaWNoIGFuIGRpZSBaZWl0LAo+IGFscyBpY2ggbWVpbmVuIEZocmVyc2NoZWluIGdlbWFjaHQgaGFiZSA6LSkKCmhhc3QgRHUgc2Nob25tYWwgYXVmIGRlaW5lbiBHZWhhbHRzc3RyZWlmZW4gZ2VzZWhlbiA/CgpkYSBzaW5kIFphaGxlbiBkYXJ1ZiwgZGllIGRpY2ggd29tZ2xpY2ggYW4gZGllIFdlaW1hcmVyIFJlcHVibGlrIGVyaW5uZXJuIApkdWVyZnRlbiA6LSkpKQoKCkhhdmUgZnVuICEKQWxmcmVkCi0tClYqLCBoYXQgc2VpbmVuIG5vY2ggbmljaCBnZXNlaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldGRpZ2VzdCAoV3VyemVsLCAgNC4gSmFuIDIwMDIsIDEyOjQzOjA0KToKfiMhIHJuPVZhbmlvbiBydD0xMDEwMTQzNzAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDE0MzcwMAplbnRzcHJpY2h0IGV0d2EgZGVtIGdlaGFsdCB2b3Igc2llYmVuIGphaHJlbi4gd2VpbWFyIGlzdCBkZXV0bGljaCBsYWVuZ2VyIGhlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV0ZGlnZXN0IChHcmltbWJvcm4sICA0LiBKYW4gMjAwMiwgMTI6NTg6MjcpOgp+IyEgcm49V3VyemVsIHJ0PTEwMTAxNDQ1ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMTQzNzAwCkR1IG11c3N0IGRhcyB3aXNzZW4sIGhhc3QgZXMgamEgbWl0ZXJsZWJ0Li4uIDstKQoKR2RBLCBFaW5rb21tZW5zc3RlaWdlcnVuZyA+IDEwMDAlIGluIGRlbiBsZXR6dGVuIHNpZWJlbiBKYWhyZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldGRpZ2VzdCAoS2FyaXMsICA0LiBKYW4gMjAwMiwgMTM6MzE6MjQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTAxNDU1MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMTQzNzAwCk5hLCBkYW5uIGhvZmZlbiB3aXIgZG9jaCBtYWwsIGRhc3MgZHUgd2VuaWdzdGVucyA0LXN0ZWxsaWcKYW5nZWZhbmdlbiBoYXN0IDspCkthcmlzLCB0aXBwdCBoZXV0IGF1Y2ggbnVyIG1pdCByZWNodHMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXRkaWdlc3QgKFd1cnplbCwgIDQuIEphbiAyMDAyLCAxMzozMjoxOCk6Cn4jISBybj1LYXJpcyBydD0xMDEwMTQ3NDg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDE0MzcwMAp3YXMgc3ByaWNodCBnZWdlbiBsaW5rc3RpcHBlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5ldGRpZ2VzdCAoS2FyaXMsICA0LiBKYW4gMjAwMiwgMTM6MzI6NTQpOgp+IyEgcm49V3VyemVsIHJ0PTEwMTAxNDc1Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMTQzNzAwCjIgZGluZ2U6CjEpIGljaCBiaW4gcmVjaHRzaGFlbmRlcgoyKSBlaW4gbWFzc2l2ZXIgZ2lwcyBsaW5rcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11aCAoRGFya3dpbmcsICA0LiBKYW4gMjAwMiwgMTU6MDQ6MzkpOgpbVGVhbSA1OkVsYWluZV0gdGFiIGtsZXR0ZXIgaW4gb2VmZm51bmcKRGFya3dpbmcgbmlja3Qga2FtcGZiZXJlaXQuCkVsYWluZSBuaWNrdCBrYW1wZmJlcmVpdC4KUGl0ZmFsbCBuaWNrdCBrYW1wZmJlcmVpdC4KRWxhaW5lIGtsZXR0ZXJ0IHZvcnNpY2h0aWcgZHVyY2ggZWluZSBPZWZmbnVuZy4KRGFya3dpbmcga2xldHRlcnQgdm9yc2ljaHRpZyBkdXJjaCBlaW5lIE9lZmZudW5nLgpQaXRmYWxsIGtyaWVjaHQgaW0gU3RhdWIuClBpdGZhbGwgc3ByaWNodCBkaWUgV29ydGU6ICd0ZXJyYSBwZXN0ZW0gdGVuZXRvLCBzYWx1cyBoaWMgbWFuZXRvJy4KRWluIG1hZ2lzY2hlciBTdHVybSBicmljaHQgbG9zLiBGdW5rZWxuIHdpcmJlbG4gdm9uIFBpdGZhbGxzIEtyZXV6IGF1ZiB1bmQgCnp1Y2tlbiBkdXJjaCBkZW4gUmF1bS4gRWluIGhlbGxlciBMaWNodHN0cmFobCBzY2hpZXNzdCBhdXMgZGVyIE1pdHRlIFBpdGZhbGxzIApLcmV1emVzIHVuZCBodWVsbHQgZGVuIFJhdW0gaW4gZ2xlaXNzZW5kZXMgTGljaHQuClBpdGZhbGwgZmFlbmd0IGZ1ZXJjaHRlcmxpY2ggYW4genUgZmx1Y2hlbi4KUGl0ZmFsbCBnZWh0IG5hY2ggU3VlZGVuLgpQaXRmYWxsIGtvbW10IGFuLgpQaXRmYWxsIGtyaWVjaHQgaW0gU3RhdWIuClBpdGZhbGwga2xldHRlcnQgdm9yc2ljaHRpZyBkdXJjaCBlaW5lIE9lZmZudW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU3RhdGkgaW4gQm9ubiAoVmFybGFyaW9uLCAgNC4gSmFuIDIwMDIsIDE2OjE5OjA2KToKfiMhIHJuPVd1cnplbCBydD0xMDEwMTU3NDg4IHJnPXRyZWZmZW4KfiMhIHRpZD0xMDEwMDY5NjM4CkdyaW1tYm9ybiBtaXQgbmVtIExhc3Rlbmh1YnNjaHJhdWJlcj8gQWxzIFJvdG9yIHZpZWxsZWljaHQgOykKClZhcmwqLCBjbnIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFN0YXRpIGluIEJvbm4gKEdsb2luc29uLCAgNC4gSmFuIDIwMDIsIDE2OjIwOjIyKToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDEwMTU3NTQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDA2OTYzOApBbGxlbmZhbGxzIGFscyBUcmllYndlcmsuIERhIGtvbW10IGF1Y2ggamVkZSBNZW5nZSBoZWlzc2UgTHVmdCByYXVzLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFN0YXRpIGluIEJvbm4gKFZhcmxhcmlvbiwgIDQuIEphbiAyMDAyLCAxNjoyMDo0NCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDEwMTU3NjIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDA2OTYzOApEYXMgc2FndCBkZXIgUmljaHRpZ2UgOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogU3RhdGkgaW4gQm9ubiAoR2xvaW5zb24sICA0LiBKYW4gMjAwMiwgMTY6MjI6MTEpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMTAxNTc2NDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMDY5NjM4Ck5hIHNpY2hlci4gV2VyIG9obmUgRmVobGVyIGlzdCBkYXJmIFN0ZWluZSB3ZXJmZW4gLi4uCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogU3RhdGkgaW4gQm9ubiAoV3VyemVsLCAgNC4gSmFuIDIwMDIsIDE2OjIyOjUzKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMTAxNTc3MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMDY5NjM4CndlciBvaG5lIGZlcmtlbCBpc3QsIHdlcmZlIGRhcyBlcnN0ZSBzY2h3ZWluLiBvZGVyIHNvIGFlaG5saWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IC4uLiAoR3JpbW1ib3JuLCAgNC4gSmFuIDIwMDIsIDE2OjMxOjIxKToKfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDEwMTU4MjIxIG9nPXdpdHplCn4jISBybj1HbG9pbnNvbiBydD0xMDEwMTU3ODMxIHJnPXdpdHplCn4jISB0aWQ9MTAxMDE1NzgzMQpXZWRlciBuZXUgbm9jaCBmZWhsZXJmcmVpLi4uICp0YWRlbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogLi4uIChHbG9pbnNvbiwgIDQuIEphbiAyMDAyLCAxNjozNjo0NCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMDE1ODI4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAxNTc4MzEKSmFqYSwgaWNoIHN1Y2ggamEgYXVjaCBncmFkIHdvIGljaCBkaWVzZSB0b2xsZSBBbGxlZ29yaWUgbWl0IGRlbiBTdGVpbmVuIHVuZApkZW4gd2Vpc2VuIE1hZW5uZXJuIG5ldWxpY2ggbGFzIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbm9jaCBlaW5lIHdpdHogKEdyaW1tYm9ybiwgIDQuIEphbiAyMDAyLCAxNjo1Mjo1OCk6Cn4jISBvbj1BbGJvaW4gb3Q9MTAxMDE1ODgxMiBvZz13aXR6ZQpWZXJsZWd0IGVpbiBTY2h3ZWRlIEFydGlrZWwgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QuLi4gKE1hYXJnLCAgNC4gSmFuIDIwMDIsIDIwOjA3OjEwKToKRnJvbTogU3RlcGhhbiBKYXNjaGVrIDxtYW5pYWNAaWNoa29lbm50a290emVuLmRlPgpOZXdzZ3JvdXBzOiBkZS5ldGMuZmFocnpldWcuYXV0bwpTdWJqZWN0OiBXaWUga29tbWUgaWNoIGFuIGVpbiBGb3RvIHZvbiBlaW5lciBSYWRhcmZhbGxlID8hPwpEYXRlOiBNb24sIDMxIERlYyAyMDAxIDAwOjM5OjE3ICswMTAwCk1lc3NhZ2UtSUQ6IDxhMG83cTMkbWdlJDFAbmV3cy5uZXRjb2xvZ25lLmRlPiAKCkhpLAoKamV0enQgd28gaWNoIGVuZGxpY2ggbWVpbiBlcnN0ZXMgZWlnZW5lcyBBdXRvIGhhYmUsIHdpbGwgaWNoIG1pciBudW4gZGVuClRyYXVtIHZvbSBCZXdlaXNmb3RvIGVpbmVyIFJhZGFyZmFsbGUgKGVpbmdlcmFobXQgYW4gZGVyIFdhbmQpIGVyZnVlbGxlbi4KV2llCmtvbW1lIGljaCBkYSBkcmFuPyBSdWVja3QgZGllIFBvbGVudGUgc293YXMgdWViZXJoYXVwdCByYXVzPwoKU3RlcGhhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldGRpZ2VzdC4uLiAoV3VyemVsLCAgNC4gSmFuIDIwMDIsIDIxOjIxOjI0KToKfiMhIHJuPU1hYXJnIHJ0PTEwMTAxNzEyMzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMTcxMjMwCnR1dCBzaWUuIHNwcmVjaGUgZGEgYXVzIGVyZmFocnVuZyA6fAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXRkaWdlc3QuLi4gKEN1Y2h1bGxpbiwgIDQuIEphbiAyMDAyLCAyMToyMjowOCk6Cn4jISBybj1XdXJ6ZWwgcnQ9MTAxMDE3NTY4NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAxNzEyMzAKS2FubiBpY2ggYmVzdGFldGlnZW4uIEljaCBoYWJlIGFsbGVyZGluZ3MgbnVyIGRhcyBOdW1tZXJuc2NoaWxkIGVya2VubmVuCmtvZW5uZW4uIERlbiBGYWhyZXIgbmljaHQuIF06Xj4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldGRpZ2VzdC4uLiAoV2lsbG93LCAgNC4gSmFuIDIwMDIsIDIxOjIyOjE4KToKfiMhIHJuPVd1cnplbCBydD0xMDEwMTc1Njg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDE3MTIzMApOYWphLCBkYSBrYW5uIGljaCBudXIgenVzdGltbWVuZCBuaWNrZW4uLi4gCldlaWRjaGVuIFdpbGxvdyBoYXQgYXVjaCBuZW4gcGFhciBnZXN0b2NoZW4gc2NoYXJmZSBCaWxkZXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldGRpZ2VzdC4uLiAoT3JrdG9ldGVyLCAgNC4gSmFuIDIwMDIsIDIxOjQ2OjE5KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDEwMTc1NzI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDE3MTIzMApVZWJlbiwgQ3VjaHVsbGluLiBVZWJlbiEKCk9ya1QsIG1pdCBndXRlbiBSYXRzY2hsYWVnZW4genVyIEhhbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZW5zYXRpb24uLi4gKEltZGEsICA1LiBKYW4gMjAwMiwgMTA6NTg6MzYpOgouLi5hdWYgZGVtIFN0dXR0Z2FydGVyIFN0YXRpLiBGb2xnZW5kZXMgaXN0IHVudGVyIEFud2VzZW5oZWl0IGludGVybmF0aW9uYWxlcgpaZXVnZW4gdm9yZ2VmYWxsZW46CgowMToyNCBNRVouIDxMZWlibml6PiBXaWUgPyBXYXMgaXN0IGxvcyA/IElociB3b2xsdCBkb2NoIG5pY2h0IGV0d2Egc2Nob24gZ2VoZW4KPwoKSW1kYS4gS2FubnMgaW1tZXIgbm9jaCBuaWNodCBmYXNzZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2Vuc2F0aW9uLi4uIChHcmltbWJvcm4sICA1LiBKYW4gMjAwMiwgMTI6MjY6MDgpOgp+IyEgcm49SW1kYSBydD0xMDEwMjI0NzE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDIyNDcxNgpKYSwga2VpbmUgQXVzZGF1ZXIgbWVociwgZGllIGhldXRpZ2UgSnVnZW5kLi4uCkFiZXIgbWFjaHQgU3R1dHRnYXJ0IG5pY2h0IHVtIDEgVWhyIHNwYWV0ZXN0ZW5zIGRpY2h0PwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNlbnNhdGlvbi4uLiAoSW1kYSwgIDUuIEphbiAyMDAyLCAxMzoxMDoyNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMDIyOTk2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAyMjQ3MTYKTmVpbi4gYWJlciBMZWliaSBpbiBkZXIgUmVnZWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTZW5zYXRpb24uLi4gKEdyaW1tYm9ybiwgIDUuIEphbiAyMDAyLCAxNToyMTo0NCk6Cn4jISBybj1JbWRhIHJ0PTEwMTAyMzI2Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMjI0NzE2ClRqYSwgd2lyZCBoYWx0IGVpbmUgZGVyIGFuZGVyZW4gV29jaGVuIGdld2VzZW4gc2Vpbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTZW5zYXRpb24uLi4gKExlaWJuaXosICA1LiBKYW4gMjAwMiwgMTU6Mjg6MjcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTAyNDA1MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMjI0NzE2CmRhcyB3YXIgbGV0enRlcyBqYWhyIDopCgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU2Vuc2F0aW9uLi4uIChHcmltbWJvcm4sICA1LiBKYW4gMjAwMiwgMTU6NTg6MTMpOgp+IyEgcm49TGVpYm5peiBydD0xMDEwMjQwOTA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDIyNDcxNgpVbmQgbGV0enRlcyBKYWhyIGhhdHRlc3QgRHUga2VpbmUgUmVnZWw/IFdpZSBzb2xsIGRhcyBLbGVpbmUgZGVubiBoZWlzc2VuPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTZW5zYXRpb24uLi4gKEN1Y2h1bGxpbiwgIDUuIEphbiAyMDAyLCAxNjoxMDo0MSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMDI0MjY5MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAyMjQ3MTYKIk1pbmktS3JhZWNrZXIiLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNlbnNhdGlvbi4uLiAoT3JrdG9ldGVyLCAgNS4gSmFuIDIwMDIsIDE2OjI2OjMxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDEwMjQyNjkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDIyNDcxNgpXZW5uIHNpZSBpbSBnYW56ZW4gbGV0emVuIEphaHIga2VpbmUgUmVnZWwgaGF0dGUuLi4gTW9ieSBEaWNrPwoKT3JrVCwgd2FyIG5pZSBzdGFyayBpbiBCaW9sb2dpZSwgYWJlciBiZWkgc28gZGV1dGxpY2ggdWViZXIgOSBNb25hdGVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTZW5zYXRpb24uLi4gKExlaWJuaXosICA1LiBKYW4gMjAwMiwgMjA6MTE6MjcpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMTAyNDQzOTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMjI0NzE2Cndlbm4gbWljaCBuaWNodCBhbGxlcyB0YWV1c2NodCBnaWJ0cyBkb2NoIGF1Y2ggbGVpYm5peiBtaW5pcyBvZGVyPwoKbGVpYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFNlbnNhdGlvbi4uLiAoVmFybGFyaW9uLCAgNS4gSmFuIDIwMDIsIDIwOjE3OjU3KToKfiMhIHJuPUxlaWJuaXogcnQ9MTAxMDI1Nzg4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAyMjQ3MTYKSm9vLCBuYWNoIDkgTW9uYXRlbiBkYW5uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTZW5zYXRpb24uLi4gKEdyaW1tYm9ybiwgIDUuIEphbiAyMDAyLCAyMDozMDozMCk6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTAxMDI1ODI3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAyMjQ3MTYKSWNoIHNlaCBzY2hvbiwgd2lyIGJyYXVjaGVuIGVpbmUgUnVicmlrICJiaWVuY2hlbi5ibHVlbWNoZW4ua2Vrc2UiLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU2Vuc2F0aW9uLi4uIChWYXJsYXJpb24sICA1LiBKYW4gMjAwMiwgMjA6MzE6NDApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTAyNTkwMzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMjI0NzE2CldvZHVyY2ggdmVybWVocmVuIHNpY2ggZGVubiBLZWtzZT8gRHVyY2ggS3J1ZW1lbChuKT8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBTZW5zYXRpb24uLi4gKEdyaW1tYm9ybiwgIDUuIEphbiAyMDAyLCAyMDozMjo0MCk6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTAxMDI1OTEwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAyMjQ3MTYKSWNoIHdlaXNzIG51ciB3aWUgc2ljaCBNb2VuY2dlIHVuZCBOb25uZW4gdmVybWVocmVuOiBEdXJjaCBaZWxsdGVpbHVuZy4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFNlbnNhdGlvbi4uLiAoVmFybGFyaW9uLCAgNS4gSmFuIDIwMDIsIDIwOjMzOjIwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDEwMjU5MTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDIyNDcxNgpEZXIgaXN0IGFsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBTZW5zYXRpb24uLi4gKE9ya3RvZXRlciwgIDUuIEphbiAyMDAyLCAyMDozMzo0OCk6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTAxMDI1OTEwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAyMjQ3MTYKV2VuZGUgZGljaCB2ZXJ0cmF1ZW5zdm9sbCBhbiBrZWtzIG9kZXIgTGVpYm5pegoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFNlbnNhdGlvbi4uLiAoR3JpbW1ib3JuLCAgNS4gSmFuIDIwMDIsIDIwOjM0OjQ2KToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDEwMjU5MjAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDIyNDcxNgpEYWhlciBpc3QgZXIgamEgYXVjaCBoaWVyIHVuZCBuaWNodCBpbiB3aXR6ZS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbWVocmVyZSBtb25kdGFlbnplcj8gKFdoaXRldGlnZXIsICA2LiBKYW4gMjAwMiwgMTA6NTM6MjkpOgpmcmFnZSBtb25kdGFlbnplciBuYWNoIG1hY2h0OgonTW9uZHRhZW56ZXIgbWVpbnQ6IERhcnVlYmVyIHdlaXNzIE1vbmR0YWVuemVyIG1laHIgYWxzIGljaC4gRnJhZyBpaG4gZGFuYWNoLicKCldoaXRlVGlnZXIsIGdyaW5zZW5kLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogU2Vuc2F0aW9uLi4uIChSb2NodXMsICA2LiBKYW4gMjAwMiwgMjE6MTc6NDUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTAyNTkxNjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMjI0NzE2Ck5vbm5lIGhhdCBzaWNoIGRlZmluaXRpdiBOSUNIVCBkdXJjaCBaZWxsdGVpbHVuZyB2ZXJtZWhydC4KCiAgUm9jaHVzICh3ZWlzcyBkYXMgYXVzIHp1dmVybGFlc3NpZ2VyIFF1ZWxsZSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTWFhcmcsICA2LiBKYW4gMjAwMiwgMjE6Mjc6NTgpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBncm9zc2VuIEVpc3Ryb2xsd2FlY2h0ZXJzXSBLYW5uc3QgRHUgZGFzIG1pdCBEZWluZW0KW01vZXJkZXI6R2Vpc3QgZWluZXMgZ3Jvc3NlbiBFaXN0cm9sbHdhZWNodGVyc10gR2V3aXNzZW4gdmVyZWluYmFyZW4sCltNb2VyZGVyOkdlaXN0IGVpbmVzIGdyb3NzZW4gRWlzdHJvbGx3YWVjaHRlcnNdIEJyb3RuYWVsPwpbTW9lcmRlcjpCcm90bmFlbF0gbXVIIQpbVG9kOkxhcnNdIEVpbiBVbmZhbGwgaW0gSG9jaGdlYmlyZ2UgaGF0IGdlcmFkZSBCcm90bmFlbCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBVbmZhbGwgaW0gSG9jaGdlYmlyZ2VdIFdlciB2aWVsIHdhZ3QsIGthbm4gYXVjaCB2aWVsIHZlcmxpZXJlbi4uLiAgICAKCkJlaWxlaWQsIE1hYXJnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFNlbnNhdGlvbi4uLiAoR3JpbW1ib3JuLCAgNi4gSmFuIDIwMDIsIDIxOjMwOjM0KToKfiMhIHJuPVJvY2h1cyBydD0xMDEwMzQ4MjY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDIyNDcxNgpbIF0gU0VORCBQSVhYWCAxISExITEhISEKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKemF1YmlzIHVuZCB3YWZmZW4gKFBpdGZhbGwsICA2LiBKYW4gMjAwMiwgMjI6MTg6MjQpOgpCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBrYW5uc3QgZHUgamV0enQga28gc2NobGFnIHZvciBkZW0ga2FtcGYgYW5tYWNoZW4/IAoKcGl0KiAtZ3J1ZWJlbG5kLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEN1Y2h1bGxpbiwgIDYuIEphbiAyMDAyLCAyMjo0NTowNCk6Cn4jISBybj1ab29rIHJ0PTEwMTAzNTI1OTMgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwMTAzNTI1OTMKQWJlciBhdWYgIm11ZW56ZW4iIGhvZXJlbiBzaWUgbm9jaD8gT2RlciBtdWVzc2VuIHdpciBqZXR6dCBhbGxlIEFsaWFzZQphdWYgRXVybyB1bXN0ZWxsZW4uLi4gOikKCkN1Y2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYWVocnVuZ3NyZWZvcm0gKEdsb2luc29uLCAgNy4gSmFuIDIwMDIsIDAxOjI5OjM0KToKfiMhIHJuPUthZGFicmEgcnQ9MTAxMDM1ODc1NSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMTAzNTg3NTUKTWVpbiBKb2Igd2FyIG51ciBrdXJ6IGRpZSBQcmFlZ2VtYXNjaGluZW4gbmV1IHp1IGp1c3RpZXJlbi4gSWNoICh1bmQgc2ljaGVyCmF1Y2gga2VpbiBhbmRlcmVyIE1hZ2llcikgd2VyZGUgYXVjaCBmdWVyZGVyaGluIG5pY2h0IGZ1ZXIgZWluZW4gR2VnZW53ZXJ0CkV1cmVyIE11ZW56ZW4gZ2FyYW50aWVyZW4gOykKCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2FlaHJ1bmdzcmVmb3JtIChab29rLCAgNy4gSmFuIDIwMDIsIDExOjIyOjE1KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMTAzNjMzNzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzU4NzU1Clh4eCB0ZWlsdCBEaXIgbWl0OiBhYmVyIGRhcyBrb250ZXJmZWkgZXJrbGFlcnQgZGllIGtyYXR6LSB1bmQgYmlzc3NwdXJlbgpYeHggdGVpbHQgRGlyIG1pdDogOikpKSkpCgoKWm9vayBzY2huYXVidCBlbXBvZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFua2UgOikgKFB1aywgIDcuIEphbiAyMDAyLCAxNDowMDozNCk6CkRpZSBMZWljaGUgZWluZXMgTGV1Y2h0dHJvbGxzLiAoMykKCkRhbmtlIGFuIEJvaW5nLCBlciBkZW5rdCBhbiBkaWUgU3BpZWxlciB1bmQgbGFlc3N0IHNlaW5lIE1vbnN0ZXIgc2ljaAp2ZXJtZWhyZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYW5rZSA6KSAoQm9pbmcsICA3LiBKYW4gMjAwMiwgMTQ6MTU6MDIpOgp+IyEgcm49UHVrIHJ0PTEwMTA0MDg0MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwNDA4NDM0CkhhZXR0ZW4gNCBzZWluIGtvZW5uZW4gLi4uIER1IHdhcnN0IHdvaGwgenUgbGFuZ3NhbSA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERhbmtlIDopIChab29rLCAgNy4gSmFuIDIwMDIsIDE0OjE1OjU4KToKfiMhIHJuPUJvaW5nIHJ0PTEwMTA0MDkzMDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwNDA4NDM0ClB1ayBpc3QgZWJlbiBhdWNoIG5pY2h0IG1laHIgZGVyIGp1ZW5nc3RlLi4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGFua2UgOikgKEVsYmVyZXQsICA3LiBKYW4gMjAwMiwgMTQ6MTk6NDIpOgp+IyEgcm49Wm9vayBydD0xMDEwNDA5MzU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDQwODQzNAp3YXMgc29sbCBpY2ggZGVubiBkYSBlcnN0IHNhZ2VuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoR25vbWUsICA3LiBKYW4gMjAwMiwgMTQ6Mzk6NTEpOgp+IyEgcm49Wm9vayBydD0xMDEwMzUyNTkzIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDEwMzUyNTkzCmljaCB2ZXJzdGVoZSBlaHJsaWNoIGdlc2FndCBiaXMgaGV1dGUgbmljaHQsIHdhcnVtIG1hbiBzZWluIHJlc3RnZWxkCl91bmJlZGluZ3RfIGluIGRlbiBlcnN0ZW4gendlaSB0YWdlbiB6dXIgYmFuayBicmluZ2VuIG11c3N0ZSwgdW0gZXMKdW16dXRhdXNjaGVuLCB3ZWxjaGVzIDk5LDklIGFsbGVyIGxhZWRlbiBhdWNoIG5vY2ggc28gZ2Vub21tZW4KaGFldHRlbi4KdW0gYXVjaCBlaW5tYWwgMyBzdHVuZGVuIGluIGRlciBzY2hsYW5nZSB6dSBzdGVoZW4/CnVtIGhpbnRlcmhlciBzYWdlbiB6dSBrb2VubmVuLCAnaWNoIHdhciBkYWJlaSc/CnVtIG5pY2h0IHZvbSB2ZXJrYWV1ZmVyIGJlbGFlY2hlbHQgenUgd2VyZGVuLCB3aWUgcnVlY2tzdGFlbmRpZyBtYW4gaXN0PwoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoU2lsdmFuYSwgIDcuIEphbiAyMDAyLCAxNDo0Mzo1MSk6Cn4jISBybj1Hbm9tZSBydD0xMDEwNDEwNzkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpIaWVyIChCcmFja3dlZGUpIGdhYidzIGthdW0gbmVuIExhZGVuLCB3byBub2NoIERNIGdlbm9tbWVuIHd1cmRlbiAtIG5pY2h0IG1hbApkaWUgQmFobiBhbiBkZW4gU2NoYWx0ZXJuLCB0cm90eiBhbmRlcnNsYXV0ZW5kZXIgV2VyYnVuZyEgSWNoIGthbm4gZGFoZXIgamVkZW4KdmVyc3RlaGVuLCBkZXIgc2NobmVsbCBFdXJvIGhhYmVuIHdvbGx0ZS4gSWNoIGJlaXNwaWVsc3dlaXNlIGhhZXR0ZSBvaG5lIEV1cm8KYW0gMi4xLiBtZWluIEF1dG8gbmljaHQgbWVociBhdXMgZGVyIFBhcmtnYXJhZ2UgYmVrb21tZW4uIFdpZXNvIG1hbiBzaWNoCmRhZnVlciBhbGxlcmRpbmdzIGluIGRpZSBlbmRsb3NlbiBETS1SdWVja2dhYmVzY2hsYW5nZW4gZWlucmVpaGVuIG11c3MuLi4KS2VpbmUgQWhudW5nLiA7LSkKCiAgU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoR25vbWUsICA3LiBKYW4gMjAwMiwgMTQ6NDU6MjYpOgp+IyEgcm49U2lsdmFuYSBydD0xMDEwNDExMDMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpobW1tLCBkYW5uIHNjaHdpbmdlbiBkaWUgbGFkZW5iZXNpdHplciBpbiBiZXJsaW4gZXR3YXMgYW5kZXJzIGFscyBpbgpicmFja3dlZGUuLi4gKHdvIGxpZWd0IGRhcyBidHc/IDpvKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEh1bW5pLCAgNy4gSmFuIDIwMDIsIDE0OjQ4OjM5KToKfiMhIHJuPUdub21lIHJ0PTEwMTA0MTExMjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCkViZW4sIGRhcyBpc3QgamEgZGVyIFB1bmt0OiBXZW5uIGljaCBqZXR6dCBub2NoIDEwMDAgRE0gaW0gUG9ydGVtb25haWUgaGFiZQp1bmQgc29uc3QgcGxlaXRlIGJpbiBzdGVsbCBpY2ggbWljaCBhdWNoIGluIGRpZSBTY2hsYW5nZSwga2xhciwgYWJlciB3ZW5uIGljaApkb2NoIGFtIEF1dG9tYXRlbiBlaW5mYWNoIHNvIG1laW5lIEV1cm9zIGtyaWVnZSBrYW5uIGljaCBtZWluZSBsZXR6dGVuIERNIGRvY2gKYXVjaCBub2NoIGluIDMgV29jaGVuIHRhdXNjaGVuIHdlbm4gZGllIFNjaGxhbmdlbiBrdWVyemVyIHNpbmQsIG9kZXI/IERhc3MgZGllClVtc3RlbGx1bmcga29tbXQgdW5kIG1hbiBuaWNodCBVbm1lbmdlbiBhbiBETSBob3J0ZW4gc29sbHRlIHZvcmhlciBoYXQgZG9jaAp3b2hsIGplZGVyIG1pdGdla3JpZWd0Li4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoRm9vYmFyLCAgNy4gSmFuIDIwMDIsIDE0OjQ5OjU3KToKfiMhIHJuPUh1bW5pIHJ0PTEwMTA0MTEzMTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCkljaCBnbGF1YicgaWNoIGJld2FociAnbmUgTWFyayBhbHMgRWlua2F1ZnN3YWdlbi1DaGlwIGF1Zi4uLgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChTaWx2YW5hLCAgNy4gSmFuIDIwMDIsIDE0OjUzOjMxKToKfiMhIHJuPUZvb2JhciBydD0xMDEwNDExMzk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpMdXN0aWdlciBzaW5kIGVpZ2VudGxpY2ggZGllIFN0ZWxsZW4sIGRpZSBub2NoIG5pY2h0IHVtZ2VzdGVsbHQgc2luZC4gSW4gZGVyClRlbm5pc2FubGFnZSBoaWVyIHdpcmQgZGFzIExpY2h0IHZpYSBNdWVuemF1dG9tYXQgYW5nZXNjaGFsdGV0IC0gdW5kIGRlciBuaW1tdApudXIgMS1ETS1TdHVlY2tlLiBEYSBrYW5uIG1hbiBzaWNoIGRlcnplaXQgbmUgZ29sZGVuZSBOYXNlIHZlcmRpZW5lbiwgd2VubiBtYW4KZ2VudWcgRE0tU3R1ZWNrZSBoYXQuIDstKQoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChab29rLCAgNy4gSmFuIDIwMDIsIDE0OjUzOjM1KToKfiMhIHJuPUZvb2JhciBydD0xMDEwNDExMzk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpPaCwgaWNoIGhhYiBhbSAyLjEuIG1laW4gTXVlbnpnZWxkICgxMiw2IGtnKSB1bSAxNy4zMCBVaHIgenVyIEJhbmsgCmdlYnJhY2h0IHVuZCBtdXNzdGUgbmljaHQgd2FydGVuLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKFpvb2ssICA3LiBKYW4gMjAwMiwgMTQ6NTQ6MjEpOgp+IyEgcm49U2lsdmFuYSBydD0xMDEwNDExNjExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpJbSBIYXVzIHZvbiBuZW0gQmVrYW5udGVuIHZvbiBtaXIsIG11c3N0ZSBtYW4gYmVyZWl0cyBhbSAyOC4xMi4gc2VpbmUKd2FybWUgRHVzY2hlIG1pdCBFdXJvIGJlemFobGVuLiBFcyBsZWJlIGRhcyBTY2hudXBwZXJwYWVja2NoZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoU2lsdmFuYSwgIDcuIEphbiAyMDAyLCAxNDo1NDoyNSk6Cn4jISBybj1ab29rIHJ0PTEwMTA0MTE2MTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCktsYXIuLi4gR3Jvc3NrdW5kZW4uLi4gKnNpZ2gqCgogIFNpbHZhbmEgLiBvIE8gKEFuZ2ViZXIuIDstKSApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChab29rLCAgNy4gSmFuIDIwMDIsIDE0OjU0OjQ3KToKfiMhIHJuPVNpbHZhbmEgcnQ9MTAxMDQxMTY2NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKSGV5LCBkYXMgd2FyZW4gbWVpbmUgU3BhcmRvc2VuLCBkaWUgaWNoIG11ZWhldm9sbCB1bmQgaW4gamFocmVsYW5nZXIgQXJiZWl0CmdlZnVldHRlcnQgaGFiZS4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChDYXR3ZWF6bGUsICA3LiBKYW4gMjAwMiwgMTQ6NTc6NDEpOgp+IyEgcm49Wm9vayBydD0xMDEwNDExNjg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpJY2ggaGFiIGJlcmVpdHMgdm9yIFdlaWhuYWNodGVuIG1laW5lIE11ZW56ZW4genVyIEJhbmsgZ2VicmFjaHQgdW5kIGRpZSBzaW5kCmltbWVyIG5vY2ggbmljaHQgYXVmIGRlbSBLb250bywgZ2VzY2h3ZWlnZSB3ZWlzcyBpY2ggZGVubiB3aWV2aWVsIGVzIHdhci4KRGV1dHNjaGUgQmFuaywgcGZmZmZmLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChIaWdodCwgIDcuIEphbiAyMDAyLCAxNTowNToxMSk6Cn4jISBybj1TaWx2YW5hIHJ0PTEwMTA0MTEwMzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCmhlaGUgaWNoIGZhbmQgZGFzIHNjaG9uIGx1c3RpZyAuLi4gd2FyIGFtIDIuMS4gZ2V6d3VuZ2VuIG1pdCBkZXIgYmFobiB6dQpmYWhyZW4gdW5kIGhhdHRlIG51cm5vY2ggRE0gKHVlYmVyIGRpZSBibG9lZGhlaXQgZ2V3aXNzZXIgYmFua2VuIHNhZyBpY2gKbGllYmVyIG5peCkuLi4gbWFsIGFiZ2VzZWhlbiBkYXZvbiBkYXMgd29obCBnYW56IGtyZWZlbGQgYW0gMi4gaXJnZW5kd2FzIHZvbgpkZXIgYmFobiB3b2xsdGUgdW5kIGF1Y2ggZGEgZW5kbG9zZSBzY2hsYW5nZW4gc3RhbmRlbiBoYWIgaWNoIGVzIG5hY2ggNDUKbWludXRlbiBkb2NoIGdlc2NoYWZ0IGRlbSBuZXR0ZW4gaGVycm4gbWl0IG11ZXR6ZSBkZXIgbmViZW4gZGVuIG5pY2h0CmZ1bmt0aW9uaWVyZW5kZW4gYXV0b21hdGVuIGltIGJhaG5ob2Ygc3RhbmQgbWVpbmUgZmFocmthcnRlIGFienVrYXVmZW4gdW5kIGRhcwptaXQgRE0gLm8pIHNvbGwgaGVpc3NlIGRpZSBkYiBuaW1tdCBkYXMgc2Nob24gbnVyIGRhcyBkYXVlcnQgZXdpZyB3ZWlsIGRpZQpzY2hhZmZuZXIgZGFzIG1pdCBkZXIgZnJlbWR3YWVocnVuZyAod2FydW0gaXMgZG0gZnJlbWR3YWVocnVuZyA/KW5ldCBibGlja2VuCgpoaWdodCBuZXQgdmllbCB2b24gZGVtIG5ldWVuIHNwaWVsZ2VsZCBoYWx0ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChDYXR3ZWF6bGUsICA3LiBKYW4gMjAwMiwgMTU6MDc6MTUpOgp+IyEgcm49SGlnaHQgcnQ9MTAxMDQxMjMxMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKSWNoIHdhciBnYW56IGZyb2gsIGRhc3MgaWNoIGFtIDIuIG5vY2ggRE0gaGF0dGUsIERlciBBdXRvbWF0IGRlciBCYWhuIGluCkhhbHRlcm4gc3RhbmQgbm9jaCBhdWYgRE0sIHVuZCBhbSBLYXJ0ZW5hdXRvbWF0IGRhbmFiZW4gc3RhbmQgbmUgZ3V0ZSBTY2hsYW5nZQp2b24gTGV1dGVuLCBkaWUgbmljaHQgd3Vzc3RlbiB3aWUgbWFuIG5lIEJhaG5rYXJ0ZSBtaXQgRUMtS2FydGUgYmV6YWhsdC4gCkd1dCBkYXMgZGllIEJhaG4gbWFuY2htYWwgbGFuZ3NhbWVyIGlzdCA6LSkKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoQW50aGVhLCAgNy4gSmFuIDIwMDIsIDE1OjA5OjM4KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDEwNDEyNDM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpPb29jaCwgaGllciBpbiBOdWVybmJlcmcgaXN0IGRhcyBiZWkgZGVuIEJ1c3Nlbi9TdHJhc3NlbmJhaG5lbi9VYmFobmVuIGFuZGVycwpydW0uIFdlbm4gRHUgaGllciBlaW5lIEVpbnplbGZhaHJrYXJ0ZSBoYWJlbiB3aWxsc3QuLi4gRHUgZ2Voc3QgenVtIEF1dG9tYXRlbi4KRGVyIG5pbW10IG51ciBETS4gRHUgZ2Voc3QgenVtIFNjaGFsdGVyLi4uIERlciB2ZXJrYXVmdCBrZWluZQpFaW56ZWxmYWhyc2NoZWluZSwgZGllIGdpYnRzIGphIHNjaGxpZXNzbGljaCBhbiBkZW4gQXV0b21hdGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoSGlnaHQsICA3LiBKYW4gMjAwMiwgMTU6MTA6MDgpOgp+IyEgcm49SHVtbmkgcnQ9MTAxMDQxMTMxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKKmdyaW4qIHNhZ2VuIHdpciBsaWViZXIgZmFzdCBqZWRlciAuLi4gbWVpbmUgb21tYSB3YXIgZGllIGVyc3RlIGluIGRlciBmYW1pbGllCmRpZSBkaWVzZXMga29taXNjaGUgc3RhcnRlciBraXQgaGF0dGUgaGF0IGFiYmEgYmlzIGhldXRlIG5vY2ggZ3Jvc3NlIG1lbmdlbiBhbgpkbSBydW1saWVnZW4gLi4uIGFiYmEgaWNoIGZhbmQgZGFzIGx1c3RpZyAsbykga29tbXQgbWFuIGluIG5lIGJhbmsgYWxsZQphdXRvbWF0ZW4gbGVlciB1bmQgbiBuZXR0ZXIgYW5nZXN0ZWxsdGVyIGFuIGRlciB0dWVyICJHdXRlbiBUYWcuIFdlbm4gc2llIGFuCmRpZSBLYXNzZSB3b2xsZW4gbXVlc3NlbiBzaWUgbWl0IDEsNSAtIDIgc3R1bmRlbiB3YXJ0ZXplaXQgcmVjaG5lbiIgCmltIHVlYnJpZ2VuIHNvbGx0ZSBtYW4gZGllIGF1dG9tYXRlbiBhdWYgYmFobmhvZWZlbiBtZWlkZW4gLG8pIGRhcyBzY2hlaXNzZGluZwpoYXQgbWlyIGdlc3Rlcm4gZG0gd2llZGVyZ2VnZWJlbiB3byBpY2ggZG9jaCBzbyBmcm9oIHdhciBhbGxlcyBsb3NnZWJyYWNodCB6dQpoYWJlbgoKaGlnaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEFtYXJ5bGxpcywgIDcuIEphbiAyMDAyLCAxNToxMjoyMSk6Cn4jISBybj1TaWx2YW5hIHJ0PTEwMTA0MTEwMzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCldvIHp1bSBHZWllciBpc3QgQnJhY2t3ZWRlPz8KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEhpZ2h0LCAgNy4gSmFuIDIwMDIsIDE1OjEzOjI5KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDEwNDEyNDM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpoZWhlIGljaCBoYWV0dGUgYXVjaCBtaXQga2FydGUgZ2V6YWhsdCB3ZW5uIG1pciBkaWUgVlIgbmV0IHZvciAzIG1vbmF0ZW4gbmUKZWMta2FydGUgZ2VnZWJlbiBoYWV0dGUgZGllIG51ciBiaXMgMjAwMSBndWVsdGlnIHdhciAuLi4gZGFzIGRpZSBtaXIgbmUgbmV1ZQp6dWdlc2NoaWNrdCBoYWJlbiBoYWIgaWNoIGVyc3QgZ2VzdGVybiBnZXNlaGVuIGFscyBpY2ggd2llZGVyIGhlaW1nZWtvbW1lbiBiaW4KLG8pCgpoaWdodCBzaWNoIG5ldCB3dW5kZXJuZCB3YXJ1bSBkaWUgbGV1dGUgc28gbmUgc2NobGVjaHRlIG1laW51bmcgdm9uIGJhbmtlbgpoYWJlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoSGlnaHQsICA3LiBKYW4gMjAwMiwgMTU6MTQ6MjkpOgp+IyEgcm49QW50aGVhIHJ0PTEwMTA0MTI1Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCmRhcyBpcyBzY2hsaWNodHdlZyBmYWxzY2gKCmhpZ2h0IGRlciBnZXN0ZXJuIGxvY2tlciBtaXQgZXVybyBnZXphaGx0IGhhdCAoa3VyenN0cmVja2UgVkdOKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoQXJrLCAgNy4gSmFuIDIwMDIsIDE1OjE2OjMyKToKfiMhIHJuPUhpZ2h0IHJ0PTEwMTA0MTIzMTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCkhtLCBoaWVyIGluIERBIGxhc3NlbiBzaWUgZWluZW4sIHdlbm4gbWFuIGFuIGVpbmVyIEhhbHRlc3RlbGxlIHp1c3RlaWd0LCBkaWUKbm9jaCBrZWluZSB1bWdlc3RlbGx0ZW4gQXV0b21hdGVuIGhhdCAodW5kIG1hbiBpbiBkZXIgQmFobiBuaWNodCBtZWhyIGJlemFobGVuCmthbm4pLCB1bXNvbnN0IG1pdGZhaHJlbiA6LSkKSWNoIGJpbiBhbHNvIHNjaG9uIGVpbiBFdXJvIEdld2lubmVyLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEN1Y2h1bGxpbiwgIDcuIEphbiAyMDAyLCAxNToxNzowOCk6Cn4jISBybj1IaWdodCBydD0xMDEwNDEyODY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpEYXJmIGRlbm4gZGVyIEF1dG9tYXQgdWViZXJoYXVwdCBETSB6dXJ1ZWNrZ2ViZW4/CgpVZWJyaWdlbnMgdG9sbC4gQmFobiBuaW1tdCBudXIgRXVybyBhbi4gSWNoIHN0ZWhlIGhpZXIgbWl0IHZpZWxlbiBETSAKdW5kIHdpbGwgaW4gTVogZWluZSBCYWhuY2FyZCBrYXVmZW4gKGhhdCB2b3IgU2lsdmVzdGVyIHplaXRsaWNoIGRhbmsKbGFuZ2VuIFdhcnRlc2NobGFuZ2VuIGFtIEJhaG5zY2hhbHRlciBuaWNodCBnZXJlaWNodCkuIE11c3MgYWxzbyBhdXMgCkRNIEV1cm8gbWFjaGVuLiBXaWxsIGFiZXIgbmljaHQgNXggaW4gZGVuIFN1cGVybWFya3QgdW5kIEthdWd1bW1pcyAKbWl0IG5lbSAxMDBlciB6YWhsZW4uIEdlaGUgaW4gZGllIEJhbmsuIFN0ZWxsZSBtaWNoIGFuIGRhcyBFbmRlIGRlciAKU2NobGFuZ2UgYW4uIEt1cnogYmV2b3IgaWNoIGRyYW4gYmluIHNlaGUgaWNoIGVpbiBTY2hpbGQgYW0gR2xhcyBkZXIKS2Fzc2U6IEJhcmdlbGR1bXRhdXNjaCBudXIgZnVlciBLdW5kZW4gZGVyIFNwYXJrYXNzZSBNYWluei4KCkdSUlJSUlJSUlJSUlJSUlJSLiBGcmV1bmRsaWNoZXJ3ZWlzZSBoYXQgc2llIG1pY2ggbmljaHQgZ2VmcmFndCwgb2IKaWNoIEt1bmRlIGJpbiBvZGVyIG5pY2h0Li4uIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoQXJrLCAgNy4gSmFuIDIwMDIsIDE1OjE3OjU4KToKfiMhIHJuPUFyayBydD0xMDEwNDEyOTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpXYXIgdWVicmlnZW5zIGRpZSBTdHJhc3NlbmJhaG4sIG5pY2h0IGRpZSBCdW5kZXNiYWhuIDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEhpZ2h0LCAgNy4gSmFuIDIwMDIsIDE1OjIyOjUxKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDEwNDEzMDI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwoqZ3JpbnNlbCogZGEgaGFldHRlc3QgZGlyIGF1Y2ggdm9yIHNpbHZlc3RlciBkaWUgYmVpbmUgYmVpIGRlciBiYWhuIGluIGRlbgpiYXVjaCBzdGVoZW4ga29lbm5lbiAKCmhpZ2h0IHNjaG1hcnJlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEhpZ2h0LCAgNy4gSmFuIDIwMDIsIDE1OjI1OjI4KToKfiMhIHJuPUFyayBydD0xMDEwNDEzMDc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5Mwp3aWUgZHUgemFobHN0IGZ1ZXIgc3RyYXNzZW4gdW5kIHUtYmFobiA/IG51ciBndXQgZGFzIGluIG5iZyBkYSBzbyBndXQgd2llIG5pZQprb250cm9sbGllcnQgd2lyZAoKZGFmdWVyIHdlcmRlbiBtaXR0ZW4gaW4gZGVyIG5hY2h0IHUtYmFobmVuIGVudGZ1ZWhydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoU2lsdmFuYSwgIDcuIEphbiAyMDAyLCAxNTo0MzoxNik6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAxMDQxMzAyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKQmFobmNhcmQ/IEJpc3QgRHUgS3JvZXN1cz8gSWNoIHd1ZXJkIGVybnN0aGFmdCBuZW4gRmx1Z3pldWcgbmVobWVuLCBpc3MKYmlsbGlnZXIuCgpTaWx2YW5hIChoYXQgbGV0enRsaWNoIGRpZSBzb2dlbmFubnRlbiBQcmVpc3Nlbmt1bmdlbiBkZXIgQmFobiBiZWd1dGFjaHRldCwKdm9uIGRlbmVuIHNpZSBzaWNoIGV0dGxpY2hlIE1pbGxpb25lbiBNZWhyZWlubmFobWVuIHZlcnByZWNoZW4uLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChDdWNodWxsaW4sICA3LiBKYW4gMjAwMiwgMTU6NDc6NDApOgp+IyEgcm49U2lsdmFuYSBydD0xMDEwNDE0NTk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpFaW5lIFp1Z2ZhaHJ0IHZvbiAiRGFoZWltIiBuYWNoICJTdHVkaXVtIiBzaW5kIGtuYXBwIDkwLi0uIERhcyB6dSBoYWxiaWVyZW4KbG9obnQgc2ljaCBzZWxic3Qgd2VubiBtYW4gMTUwLi0gZGFmdWVyIHphaGxlbiBtdXNzLiBNYW4gbXVzcyBqYSAoYSkgYXVjaAp6dXJ1ZWNrIHVuZCAoYikgZGFzIGdhbnplIG5pY2h0IG51ciBlaW5tYWwgamFlaHJsaWNoIG1hY2hlbi4gWzFdIEF1c3NlcmRlbQpoYWJlIGljaCBnZXN0ZWlnZXJ0ZXMgSW50ZXJlc3NlIGRhcmFuLCBhYiB1bmQgYW4gYXVjaCBlaW5lbiBPcnQgYXVmenVzdWNoZW4sCmRlciBpbiBkZXIgTWl0dGUgbGllZ3QuIDspCgpDdWNoCgpbMV0gQWxsZSBBbmdhYmVuIGluIEV1cm8gdW5kIG9obmUgR2V3YWVociA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKE9ya3RvZXRlciwgIDcuIEphbiAyMDAyLCAxNTo1Mzo1OSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTAxMDQxMTg2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKRGV1dHNjaGUgQmFuaz8gSGEhIER1IG1laW5zdCB3b2hsIERldXRzY2hlIEJhbmsgMjQsIG9kZXI/CgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEdyaW1tYm9ybiwgIDcuIEphbiAyMDAyLCAxNTo1Njo0MCk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAxMDQxNDg2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKTmVpbm5laW4sIEZsdWd6ZXVnIGlzdCBiaWxsaWdlci4gV2VubiBtYW4genUgZ2FueiBiZXN0aW1tdGVuIFRlcm1pbmVuIGZ1ZXIKZWluZSBnYW56IGJlc3RpbW10ZSBaZWl0IHdlZyB3aWxsLiBVbmQgZGllIEZsdWdoYWZlbmdlYnVlaHJlbiB1bmQgLXN0ZXVlcm4KbmljaHQgcmVjaG5ldC4gVW5kIGdyYXRpcyB2b20venVtIEZsdWdoYWZlbiBrb21tdC4gQWJlciBkYW5uIGthbm4gbWFuIGRhCmdlZ2VudWViZXIgZGVtIFN0YWJkYXJkYmFobnRhcmlmIGdsYXR0IDEwJSBzcGFyZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChDdWNodWxsaW4sICA3LiBKYW4gMjAwMiwgMTY6MDU6MDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTA0MTU0MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCllvdSBnb3QgdGhlIHBvaW50LiBTbyBvZnQgd2llIGljaCByZWxhdGl2IHNwb250YW4gaW4gZGVuIFp1ZyBodWVwZmUuLi4Kc28gb2Z0IHdpZSBpY2ggZGVuIFp1ZywgZGVuIGljaCBoYWV0dGUgZXJyZWljaGVuIHdvbGxlbiwgTklDSFQgZXJyZWljaGUsCndlaWwgbWlyIGlyZ2VuZGVpbiBUZXJtaW4gb2RlciBpcmdlbmRlaW5lIFdhZXNjaGVsYWR1bmcgb2RlciBpcmdlbmRlaW5lCm5ldHRlIFZlcm1pZXRlcmluIGRhendpc2NoZW5rb21tdC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChFbGJlcmV0LCAgNy4gSmFuIDIwMDIsIDE2OjMzOjExKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDEwNDE1OTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwphdXNzZXJkZW0gaXN0IGRpZSBCZWluZnJlaWhlaXQgaW0gWnVnIDEwMDAgbWFsIGJlc3NlciBhbHMgaW0gRmxpZWdlci4KCkVsYmkgKEZsaWVnZXJiZXRyZW5lbm51cndlbm5zd2lya2xpY2hhYnNvbHV0bm90d2VuZGlnaXN3ZXJmZW5kIChjKSBJc2kgKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEdyaW1tYm9ybiwgIDcuIEphbiAyMDAyLCAxNjozNjoyNSk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMTA0MTc1OTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCk9oIGphLCBpY2gga29lbm50ZSBub2NoIGRpZSBGcmFnbWVudGUgbWVpbmVyIEF1c2JpbGR1bmcgaW4gYXRtb3NwaGFlcmlzY2hlcgpDaGVtaWUgcmF1c2tyYW1lbiB1bSBlaW4gd2VpdGVyZXMgQXJndW1lbnQgZ2VnZW4gZGllc2UgdW5zYWVnbGljaGUKS3VyenN0cmVja2VuZmxpZWdlcmVpIHp1IHp1ZWNrZW4uIEFiZXIgbWVpc3QgaW50ZXJlc3NpZXJ0IGdlcmFkZSBkYXMgQXJndW1lbnQKZ2VyYWRlIGRpZXNlICJpY2ggZmxpZWdlIGtvbW1lIHdhcyBkYSB3aWxsIiBLbGllbnRlbCB1ZWJlcmhhdXB0IG5pY2h0LiAKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKFpvb2ssICA3LiBKYW4gMjAwMiwgMTY6Mzc6MTMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTA0MTc3ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCldlaXNzIG5pY2h0LCBvYnMgamVtYW5kIHNjaHJpZWIsIGFiZXIgaW4gRGV1dHNjaGxhbmQgaXN0IHNlaXQgMS4xLiBuaWVtYW5kCnZlcnBmbGljaHRldCBkaWVzZSBidW50ZW4gRE0tU2NoZWluY2hlbiBvZGVyIGRpZXNlcyBlaGVtYWxpZ2UgRE0tTXVlbnpnZWxkCmFuenVuZWhtZW4uIEFsbGVpbmlnZXMgWmFobHVuZ3NtaXR0ZWwgaXN0IGRlciBFdXJvLiAoWnVtaW5kZXN0IG1laW4gU3RhbmQKZGVyIERpbmdlLikKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoRWxiZXJldCwgIDcuIEphbiAyMDAyLCAxNjozNzozMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMDQxNzc4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKYWxzbyBpY2ggZmluZCBmbGllZ2VuIGVpbmZhY2ggbnVyIHVuYmVxdWVtLCB1bmQgZG9vZi4gdW5kIGlubmVyZGV1dHNjaCBpcyBlcwpuY2lodCBtYWwgd2lya2xpY2ggc2NobmVsbGVyLCBoYWIgaWNoIGZlc3RnZXN0ZWxsdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEN1Y2h1bGxpbiwgIDcuIEphbiAyMDAyLCAxNjozODozMSk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMTA0MTc4NTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCiJIZXkgRHUgYmxvZWRlciBEQi1HZWxkYXV0b21hdCEgTmltbSBzb2ZvcnQgZGFzIERNLVdlY2hzZWxnZWxkIHp1cnVlY2sKdW5kIGdpYiBtaXIgRXVybyEiIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoR3JpbW1ib3JuLCAgNy4gSmFuIDIwMDIsIDE2OjM4OjU5KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDEwNDE3OTExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpOZWluLCBlaW5mYWNoIGVpbmUgQW56ZWlnZSB3ZWdlbiBVbnRlcnNjaGxhZ3VuZyBiZWltIG5hZWNoc3RlbiBQb2xpemlzdGVuCnN0ZWxsZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEVsYmVyZXQsICA3LiBKYW4gMjAwMiwgMTY6Mzk6MTUpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMTA0MTc5MTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCm1laW5lcyB3aXNzZW5zIHNpbmQgZGllIGdlc2NoYWVmdGUgZWlnZW50bGljaCBnZXp3dW5nZW4sIG5vY2ggRE0gYW56dW5laG1lbi4KWnVtaW5kZXN0IGRpZSBBc2VhZyBpbiBBYWNoZW4gd3VyZGUgZGF6dSBnZXp3dW5nZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChJc2ksICA3LiBKYW4gMjAwMiwgMTY6NDE6MzIpOgp+IyEgcm49RWxiZXJldCBydD0xMDEwNDE3OTU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpzY2hsYWd3b3J0OiBmcmVpd2lsbGlnZSBzZWxic3R2ZXJwZmxpY2h0dW5nLgpETSBpc3Qga2VpbiBnZXNldHpsaWNoZXMgemFobHVuZ3NtaXR0ZWwgbWVociwgZXMgbXVzcyBhbHNvIGtlaW5lcgpuZWhtZW4uIGFiZXIgd2VyIGt1bmRlbiB2ZXJncmFldHp0Li4uCmlzaSAoemVudHdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoRWxiZXJldCwgIDcuIEphbiAyMDAyLCAxNjo0MjoyMik6Cn4jISBybj1Jc2kgcnQ9MTAxMDQxODA5MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKbmVpbiwgaWNoIG1laW4gZGllIHNpbmQgdmVycGZsaWNodGV0LCBhbHNvIHdpZSBnZXNhZ3QsIGRhcyBvZXJ0bGljaGUKQnVzdW50ZXJuZWhtZW4gd29sbHRlIGRpZSBuaWNodCBhbm5laG1lbiB1bmQgaXN0IHBlciBWZXJmdWVndW5nIGRhenUgZ2V6d3VuZ2VuCndvcmRlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEFyaywgIDcuIEphbiAyMDAyLCAxNjo0NDoyNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMDQxNzc4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKR2lidCBkaWUgQmFobiBhdWNoIE1laWxlbiBmdWVyIE0mTT8gO14pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKERlbnRpLCAgNy4gSmFuIDIwMDIsIDE2OjQ0OjQ0KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAxMDQxODE0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKCgpTbyB3ZWl0IGljaCB3ZWlzcyBpc3QgZGllIFVlYmVyZ2FuZ3NmcmlzdCBnYW56IG9mZml6aWVsbCwgd2VubiBhbHNvCmplbWFuZCBrZWluZSBETSBtZWhyIG5pbW10IGthbm5zdCBkaWNoIGJlc2Nod2VyZW4gZ2VoZW4sIG51ciBiaXMgZGFzCmR1cmNoIGlzdCBpc3QgZGllIFVlYmVyZ2FuZ3NmcmlzdCB6dW0gMjguMDIuMDIuIHNjaG9uIHZvcmJlaS4KV2VyIG5ldCBmbGllZ2VuIHNvbGxzIGxhc3NlbiwgaWNoIGJpbiB6dWZyaWVkZW4gZnVlciA3N2RtIHF1ZXIKZHVyY2ggLmRlIHVuZCB6dXJ1ZWNrIHp1IGVpZXJuLCBjaGVja2luLXplaXQgdm9uIGRlciBoYXVzdHVlciBjYS4KNDAgbWluIDotKQoKRGVudGlzIDAuMDJFVVIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChab29rLCAgNy4gSmFuIDIwMDIsIDE2OjQ0OjQ4KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAxMDQxODE0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKV2FzIGlzdCBkZW5uIGVpbmUgVmVyZnVlZ3VuZz8gCgpBYmVyIGVzIGlzdCB3b2hsIHNvLCBkYXNzIG51ciBpbiBEIGVzIGtlaW5lIF9yZWNodGxpY2hlXyBSZWdlbHVuZyBlaW5lcgpETS1Bbm5haG1lcGZsaWNodCBnaWJ0LiBFcyBrYW5uIG5hdHVlcmxpY2ggc2VpbiwgZGFzcyBkaWUgcHJpdmF0cmVjaHRsaWNoCmRhenUgZ2V6d3VuZ2VuIHdlcmRlbiBrb2VubmVuIChic3AuIHdlaWwgc2llIG5lIFZlcnBmbGljaHR1bmcgdW50ZXJ6ZWljaG5ldApoYWJlbiBvZGVyIHNvIGluIGRlciBBcnQpLiBBYmVyIGVzIGdpYnQga2VpbmUgUmVjaHRzdmVyb3JkbnVuZyBvZGVyIHNvIGRhenUuCgpNZWluZXMgV2lzc2Vucy4gTmVobWUgYWJlciBnZXJuZSBCR0JsLUFuZ2FiZW4sIGRpZSBkYXMgR2VnZW50dW0gYmV3ZWlzZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEVsYmVyZXQsICA3LiBKYW4gMjAwMiwgMTY6NDY6MjYpOgp+IyEgcm49Wm9vayBydD0xMDEwNDE4Mjg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5Mwp1bmQgd2lldmllbCBrb3N0ZXQgRGljaCBjaGVja2luLXplaXQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoTmFkZGwsICA3LiBKYW4gMjAwMiwgMTY6NDk6NTIpOgp+IyEgcm49Wm9vayBydD0xMDEwNDE4Mjg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpEZXV0c2NobGFuZCBoYXQgaW0gR2VnZW5zYXR6IHp1IGFsbGVuICghKSBhbmRlcmVuIEV1cm8tTGFlbmRlcm4gdW5iZWRpbmd0CnZvcnJlaXRlbiB3b2xsZW4gdW5kIGRpZSBETSB6dSAxLjEuMjAwMiBhbHMgZ2VzZXR6bGljaGVzIFphaGx1bmdzbWl0dGVsCmFiZ2VzY2hhZmZ0LiBEYWhlciB2aWVsbGVpY2h0IGRhcyAiRGlsZW1tYSIuCkZyZWl3aWxsaWdlIFNlbGJzdHZlcnBmbGljaHR1bmc/IFBvZWguIFZlcmdyYWV0emVuIHZvbiBLdW5kZW4/IFBvZWguIE1laW5lClNjaHdlc3RlciBhcmJlaXRldCBiZWkgaW4gc28gZWluZW0gZ3JvZXNzZXJlbiBMYWRlbiB1bmQgamEsIGRpZSBuZWhtZSBETSB1bmQKRXVybyAtIGFiZXIgc2llIHdhcmVuIHNpY2ggc2VociBzaWNoZXIgd2VubiBkaWUgS3VuZGVuIG51ciBtaXQgRE0gemFobGVuCmtvbW1lbiBkYXNzIGlobmVuIFNhbXN0YWcgZGFzIEV1cm8tR2VsZCBhdXNnZWdhbmdlbiB3YWVyZSwgd2VpbCBkZXIgVHJlc29yCmVpbmZhY2ggbmljaHQgZ3Jvc3MgZ2VudWcgZnVlciB6d2VpIFdhZWhydW5nZW4gaXN0IChnYW56IHp1IHNjaHdlaWdlbiB2b20KUmlzaWtvIGRlciBlcmhvZWh0ZW4gR2VsZG1lbmdlKS4KQWJlciBlcyB3YXJzIHdlcnQuIFNjaG9lbmVzIEdlbGQuIEVuZGxpY2ggbWFsIGZyaXNjaGUgTXVlbnplbiBmdWVyIGFsbGUgOikKTmljaHQgc293YXMgZGFtYWxzIGFscyB3aXIgT3NzaXMgZGllIHNjaG9lbmUgQWx1bWFyayhlKSBhdWZnZWJlbiBtdXNzdGVuIHVuZAphYmdlZ3JhYmJlbHRlcyBHZWxkIGRhZnVlciBiZWthbWVuIDspCgppLkEuIEdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChab29rLCAgNy4gSmFuIDIwMDIsIDE2OjUxOjQ4KToKfiMhIHJuPU5hZGRsIHJ0PTEwMTA0MTg1OTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCk9iIGRpZSBPc3NpcyBhdWNoIGRpZXNtYWwgMTAwIERNIEJlZ3J1ZXNzdW5nc2dlbGQga2Fzc2llcnQgaGFiZW4/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKE1hdGlzLCAgNy4gSmFuIDIwMDIsIDE2OjUyOjIyKToKfiMhIHJuPVpvb2sgcnQ9MTAxMDQxODcwOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKSW4gQmF5ZXJuIGdhYnMgbm9jaCA2MERNIGV4dHJhLCBuaWNodCB2ZXJnZXNzZW4hCgpNYXRpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEdyaW1tYm9ybiwgIDcuIEphbiAyMDAyLCAxNjo1Mjo1MCk6Cn4jISBybj1OYWRkbCBydD0xMDEwNDE4NTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpKYSwgYWJlciBkYW1hbHMgaGFiZW4gZGllIE9zc2lzIG5vY2ggMTAwIEdsYXNwZXJsZW4gZ3JhdGlzIGdla3JpZWd0LCBkYXMgaXN0CmphIGRpZXNtYWwgbmljaHQgc28uClVuZCBqYSwgZGllIERNIGlzdCBrZWluIG9mZml6aWVsbGVzIFphaGx1bmdmc21pdHRlbCBtZWhyLiBEZXIgZWluemlnZSBMYWRlbiwKZGVyIF9nZXp3dW5nZW5fIGlzdCBzaWUgbm9jaCBhbnp1bmVobWVuIGlzdCBkaWUgQnVuZGVzYmFuayAodW5kCmRlbWVudHNwcmVjaGVuZCBhdWNoIGRpZSBMYW5kZXNiYW5rZW4pLiBBbGxlcyBhbmRlcmUgaXN0IHZvZWxsaWcgZnJlaXdpbGxpZy4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChHcmltbWJvcm4sICA3LiBKYW4gMjAwMiwgMTY6NTM6NTQpOgp+IyEgcm49TWF0aXMgcnQ9MTAxMDQxODc0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKNjAgRE0/IFdhcnVtIGhhYiBpY2ggZGllIG5pY2h0IGJla29tbWVuPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoTmFkZGwsICA3LiBKYW4gMjAwMiwgMTY6NTU6MTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTA0MTg4MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCkR1IGhhc3QgYmVzdGltbXQgbmljaHQgZnJvZWhsaWNoIGdlbnVnIGRyZWluZ2VzY2hhdXQuIEthbm4gaWNoIG1pciBiZWkgRGlyIGVoCm5pY2h0IHZvcnN0ZWxsZW4gOj0pCgppLkEuIEdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChNYXRpcywgIDcuIEphbiAyMDAyLCAxNjo1NToxNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMDQxODgzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKUGVjaCBnZWhhYnQgO28pLiBEaWUgU3RhZHQgTXVlbmNoZW4gcGFja3RlIHNvZ2FyIG5vY2ggbWFsIDEwIG9kZXIgMTUgRE0gZHJhdWYsCmhhdCBkYXMgYWJlciBzY2huZWxsIHdpZWRlciBlaW5nZXN0ZWxsdCAtIGFsbGVzIGZ1aHIgbmFlbWxpY2ggaGluIC4uLgoKTWF0aXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChFbGJlcmV0LCAgNy4gSmFuIDIwMDIsIDE2OjU1OjUxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDEwNDE4ODM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwppY2ggaGFiIGdlcmFkZSBuYWNoZ2VzY2hhdXQsIGpvLCB3YXIga2VpbmUgdmVyZnVlZ3VuZywgd2FyIG51ciBkZXIKSW50ZXJuZXRwcmFuZ2VyIGRlciBWZXJicmF1Y2hlcnplbnRyYWxlIE5SVywgd2FyIGRlciBBU0VBRyB3b2hsIHNvIHBlaW5saWNoLApkYXNzIHNpZSBqZXR6dCBhdWNoIERNIG5laG1lbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEFudGhlYSwgIDcuIEphbiAyMDAyLCAxNzoxNDo1NSk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMTA0MTg5NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCk9vb2NoLCBoaWVyIGluIE51ZXJuYmVyZyBoYXQgZGllIFZHTiBnbGVpY2ggc2Nob24gdm9yaGVyIGVya2xhZXJ0IGRhc3MgaW4gZGVuCkJ1c3NlbiBfbnVyXyBFdXJvIGFuZ2Vub21tZW4gd2lyZCwgZGFtaXQgZGVyIEZhaHJlciBub2NoIGVpbmUgQ2hhbmNlIGhhdCwgZGVuCkZhaHJwbGFuIGVpbnp1aGFsdGVuLiBBbnNvbnN0ZW4gd2FyZW4gdm9yaGVyIHNjaG9uIGRpZSBtZWlzdGVuIEF1dG9tYXRlbiBhbgpkZW4gSGFsdGVzdGVsbGVuICJhdXNzZXIgQmV0cmllYiIsIHNvIGRhc3MgTGV1dGUsIGRpZSB1ZWJlciBkaWUgRmVpZXJ0YWdlIG1pdApkZW4gT2VmZmVudGxpY2hlbiBWZXJrZWhyc21pdHRlbG4gZmFocmVuIHdvbGx0ZW4sIGF1Y2ggZ2FueiBiZXN0aW1tdCBrZWluZQpGYWhyc2NoZWluZSBrcmllZ2VuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoSGlnaHQsICA3LiBKYW4gMjAwMiwgMTc6Mzk6MDEpOgp+IyEgcm49QW50aGVhIHJ0PTEwMTA0MjAwOTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCmhlaGUgaXMgYmVpIGRlciB2YWcgZWggZnVlcm4gYXJzY2ggLG8pIGJ1cyB1LSB1bmQgc3RyYXNzZW4tYmFobiB6YWhsIGljaCBkYQplaWdlbnRsaWNoIG5pZSAuLi4gYmluIGluIGRlbiBsZXR6ZW4gNiBqYWhyZW4gMyBtYWwgaW5uZXIgdWJhaG4ga29udHJvbGxpZXJ0CndvcmRlbiAsbykgdW5kIGFiZW5kcyBhYiAyMCB1aHIgd25uIG1hbiBiZWltIGZhaHJlciBpbiBkZW4gYnVzIGVpbnN0ZWlnZW4gbXVzcwpzdGVja3QgbWFuIGhhbHQgbmVuIGJlcmVpdHMgZW50d2VydGV0dGVuIDEwbmVyc3RyZWlmZW4gbm9jaG1hbCBpbiBkZW4KYXV0b21hdGVuIC4uLiBkZXIgbGF1c2NodCBlaCBudXIgb2JzIHBsaW5nIG1hY2h0CgpoaWdodCBpbiBudWVybmJlcmcgaW1tZXIgc2Nod2FyemZhaHJlbmQgc29sYW5nZSBlcyBuZXQgdW0genVnIG9kZXIgc2JhaG4gZ2VodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEN1Y2h1bGxpbiwgIDcuIEphbiAyMDAyLCAxNzozOTozOSk6Cn4jISBybj1IaWdodCBydD0xMDEwNDIxNTQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpNYWwgYW4gZW50c3ByZWNoZW5kZXIgU3RlbGxlIGVpbmVuIFRpcCBhYmdlYmVuLi4uIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKE5hZGRsLCAgNy4gSmFuIDIwMDIsIDE4OjU4OjQ2KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDEwNDIxNTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpIZXJyIEhpZ2h0IGJpdHRlIGFucyBUZWxlZm9uPwoKaS5BLiBHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoSGlnaHQsICA3LiBKYW4gMjAwMiwgMjA6NTY6MDUpOgp+IyEgcm49TmFkZGwgcnQ9MTAxMDQyNjMyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKaWNoIGhhYmUgZ2V3b25uZW4gLi4uIG5lbiBmZXVjaHRlbiBoYWVuZGVkcnVjayB1bmQgMiByb2xsZW4ga2xvcGFwaWVyCihlaW5sYWdpZykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChWYXJkaW9uLCAgNy4gSmFuIDIwMDIsIDIzOjE5OjI2KToKfiMhIHJuPU1hdGlzIHJ0PTEwMTA0MTg3NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCklJUkMgd2FyZW4gZGFzIDQwRE0sIG5pY2h0IDYwLgoKVmFyZGlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEdyaW1tYm9ybiwgIDcuIEphbiAyMDAyLCAyMzoyMTo0Nyk6Cn4jISBybj1WYXJkaW9uIHJ0PTEwMTA0NDE5NjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCkFsc28sIGljaCB3b2huZSBpbiBCYXllcm4gdW5kIGhhYiBuaXggZ2VrcmllZ3QuIAoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoWm9vaywgIDcuIEphbiAyMDAyLCAyMzoyODowNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMDQ0MjEwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKSGFiIGljaCBkYXMgbmljaHQgc2Nob21hIGlyZ2VuZHdvIGdlbGVzZW4/IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKExpYXJhLCAgNy4gSmFuIDIwMDIsIDIzOjQ2OjEwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDEwNDQyMTA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpXaWVzbyBzb2xsdGUgRGljaCBkZW5uIGluIEJheWVybiBqZW1hbmQgbGVpZGVuIGtvZW5uZW4sIG51ciB3ZWlsIER1IGRhIHdvaG5zdD8KOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoR3JpbW1ib3JuLCAgNy4gSmFuIDIwMDIsIDIzOjU1OjU5KToKfiMhIHJuPUxpYXJhIHJ0PTEwMTA0NDM1NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCkRpZSBzb2xsZW4gbWljaCBuaWNodCBsZWlkZW4ga29lbm5lbiBzb25kZXJuIG1pciBtZWluZSA0MCBETSBnZWJlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKENhdHdlYXpsZSwgIDguIEphbiAyMDAyLCAwODozOTozNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMDQ0NDE1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKRGFzIGVzIGRhbWFscyAnQmVncnVlc3N1bmdzZ2VsZCcgZ2FiLCBoYWIgaWNoIGphIHZvbGwgdmVyZ2Vzc2VuLgpBbHNvIHdlbm4gaWNoIGRhIHNvIGltIE5hY2hoaW5laW4gZHJ1ZWJlciBuYWNoZGVua2UsIG11c3MgaWNoIHNhZ2VuLCBkYXMgZGFzCmVpZ2VudGxpY2ggbmUgRnJlY2hoZWl0IHdhciB1bmQgaWNoIGRhcyBob2VjaHN0IGRpc2tyaW1pbmllcmVuZCBmaW5kZS4gCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChHbm9tZSwgIDguIEphbiAyMDAyLCAxMjo0MDoxMik6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTAxMDQ3NTU3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKZ2VuYXUuIGVpZ2VudGxpY2ggaGFldHRlbiBkaWUgd2Vzc2lzIGRhcyBnZWxkIGtyaWVnZW4gbXVlc3Nlbi4KYWJlciBkYW5uIGhhZXR0ZSBlcyBhbmRlcnMgaGVpc3NlbiBtdWVzc2VuLiBlbnRzY2hhZWRpZ3VuZ3NnZWxkIG9kZXIgc28uLi4KCmduT21lIGdlaHQgaW4gZGVja3VuZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQjogU2NobGFmemltbWVyIChJc2ksICA4LiBKYW4gMjAwMiwgMTg6Mjk6NDIpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMTA1MTA4Nzkgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMDEwNTEwMzgyCndhZXJzIG5pY2h0IGVpbmZhY2hlciBlaW5lIGFuemVpZ2UgaW4gZWluZXIgd2llbmVyIHRhZ2VzemVpdHVuZwp6dSBtYWNoZW4/IG9kZXIgZ2lidHMgaGllciBkZXJhcnRpZ2UgbWFzc2VuIGFuIHdpZW5lcm4/CihQZXJzb25lbiwgbmljaHQgd3VlcnN0Y2hlbikKaXNpIChtb3Vzc2V3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSW50byB0aGUgZ3JlYXQgd2l0ZSBvcGVuIChMaWFyYSwgIDguIEphbiAyMDAyLCAxOToyNjoyOCk6Cn4jISBybj1FbGl6YWJldGggcnQ9MTAxMDUxNDM0OCByZz1rdWx0dXIKfiMhIHRpZD0xMDEwNTE0MjIzCkRhcyBoZWlzc3QgS29yaW50aGVua2Fja2VyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ2hyb25payBlaW5lcyBhbmdla3VlbmRpZ3RlbiBUb2RlcyAoRm9vYmFyLCAgOC4gSmFuIDIwMDIsIDE5OjU3OjM5KToKW0FiZW50ZXVlcjpNYXphbGFdIGhlbHAgLSBrYW5uIG1pciBtYWwgaXJnZW5kd2VyIHdhcyB6dSB0YW5rZW4gdm9yYmVpYnJpbmdlbj8KW0FiZW50ZXVlcjpCYW1iaV0gd2FzIHRhbmtzdCBkdT8KW0FiZW50ZXVlcjpBcG9sbG9uaWEgbGFjaHQuXQpbQWJlbnRldWVyOk1hemFsYV0gc3RlaGUgbWl0IDAgTFAgaW4gZGVyIGVpc3d1ZXN0ZSB1bmQgd2VyZGUgdm9uIGRlbSBVbnRpZXIKW0FiZW50ZXVlcjpNYXphbGFdIHVuZCBkZW0gRWlzYmFlcmVuIGFuZ2VncmlmZmVuCltBYmVudGV1ZXI6Rm9vYmFyXSAtVCsKW0FiZW50ZXVlcjpCYW1iaV0gb2gKW0FiZW50ZXVlcjpDcm9mdF0gZ3J1ZXNzIHNpZSB2b24gbWlyCltBYmVudGV1ZXI6QWhhYl0gZGFzIGhvZXJ0IHNpY2ggdW5nZXN1bmQgYW4uLi4KW0FiZW50ZXVlcjpCYW1iaV0gImVuZGUiCltBYmVudGV1ZXI6TmVkaW1lXSBIYXQgZWluZXIgdm9uIEV1Y2ggaW0gSG9iYml0ZG9yZiBnZXd1ZXRldCA/Pz8KW0FiZW50ZXVlcjpBc3VrYV0gc2VpIGRvY2ggbmljaCBzbyBoYXJ0IEZvb2JhcgpbQWJlbnRldWVyOkZvb2Jhcl0gQWJlciBkaWUgTHAgZ2VoZW4gZG9jaCB2b24gc2VsYnN0IHdpZWRlciBob2NoLiAgICAgICAgICAgICAKW0FiZW50ZXVlcjpNYXphbGFdIG5hamEgZGFubiBhdWYgenUgbGFycyA6LSkKW0FiZW50ZXVlcjpDcm9mdF0gZGFzIHVudGllciBiZXdlZ3Qgc2ljaCwgb2Rlcj8gOy0pCk1hemFsYSB0ZWlsdCBEaXIgbWl0OiBhYmVyIG5pY2h0IHdlbm4gaWNoIHdlaXRlciBydW1sYXVmZSA6LSkgWzE5OjUzXQpEdSB0ZWlsc3QgTWF6YWxhIG1pdDogRG9jaCwgbXVzc3QgbnVyIEdsdWVjayBoYWJlbiBkYXNzIGRhcyBVbnRpZXIgbmljaHQKRHUgdGVpbHN0IE1hemFsYSBtaXQ6IHZvcmJlaWtvbW10LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCk1hemFsYSB0ZWlsdCBEaXIgbWl0OiBqYSBqYSBqYSBvZGVyIGljaCBkb2NoIGlyZ2VuZHdhbm4gdm9yIGRlbSB1bnRpZXIgZGVuCk1hemFsYSB0ZWlsdCBEaXIgbWl0OiB3ZWlobmFjaHRzbWFubiBmaW5kZSBbMTk6NTRdCk1hemFsYSB0ZWlsdCBEaXIgbWl0OiBiaW4gc2hjb24gd2llZGVyIGJlaSA3IGxwcyBbMTk6NTRdCltBYmVudGV1ZXI6QmFtYmldIGljaCBrb2VubnQgd2VpYmVydCBmdWVyIGRpY2ggemFwcGVuIHVuZCBkaWNoIGRvcnQgYWJzdGVsbGVuLgpbQWJlbnRldWVyOkJhbWJpXSBWaWVsbGVpY2h0IGtvbW1zdCBkdSBqYSByYXVzLCBlaGUgc2llIHJlc2V0dGV0CkR1IHRlaWxzdCBNYXphbGEgbWl0OiBHcmF0cy4KW1RvZDpMYXJzXSBFaW4gRWlzYmFlciBoYXQgZ2VyYWRlIE1hemFsYSB1bWdlYnJhY2h0LiAgICAgICAgICAgICAgICAgICAgICAgICAgCgpIZXJ6bGljaGVzIEJlaWxlaWQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFNjcm9sbCAoWm9vaywgIDguIEphbiAyMDAyLCAyMToxMDozMCk6CltUb2Q6TGFyc10gUmFuZGFsbCBGbGFnZyBoYXQgZ2VyYWRlIFBpdGZhbGwgdW1nZWJyYWNodC4KW1RvZDpQaXRmYWxsXSBDaGFvdGVuIGFid2VydGVuClBpdGZhbGwgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgpbPE1hc3RlUj46UGl0ZmFsbCBsYWVzc3QgZGllIEViZW5lICdiZXJsaW4nIGVudHN0ZWhlbi5dCls8TWFzdGVSPjpQaXRmYWxsIGxhZXNzdCBkaWUgRWJlbmUgJ011aCEnIGVudHN0ZWhlbi5dCltBYmVudGV1ZXI6QWhhYl0gaG0uICprcmF0eioKWzxNYXN0ZVI+OlBpdGZhbGwgdmVybGFlc3N0IGFscyBMZXR6dGVyIGRpZSBFYmVuZSAnYmVybGluJywgd29yYXVmIGRpZXNlIHNpY2gKICAgICAgICAgIGluIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXQpbPE1hc3RlUj46UGl0ZmFsbCB2ZXJsYWVzc3QgYWxzIExldHp0ZXIgZGllIEViZW5lICdNdWghJywgd29yYXVmIGRpZXNlIHNpY2ggaW4KICAgICAgICAgIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXQpQaXRmYWxsIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKFphcm5peWEsICA5LiBKYW4gMjAwMiwgMTI6MjY6MzgpOgp+IyEgcm49Wm9vayBydD0xMDEwNDE3ODMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5Mwpkb2NoLi4uIExaQnMgc2luZCB2ZXJwZmxpY2h0ZXQuLi4uIHVuZCBkYXMgZnVlciBpbW1lciB1bmQgZXdpZywgYWxzbyB3ZW5uIGljaAppbSBLbGVpZGVyc2NocmFuayBpbiAzIEphaHJlbiBub2NoIG5lbiAxMCBETSBzY2hlaW4gZmluZGUsIGRhbm4gbXVzcyBpY2ggZGVuCm5pY2h0IHdlZ3dlcmZlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoQ3VjaHVsbGluLCAgOS4gSmFuIDIwMDIsIDEyOjI3OjEwKToKfiMhIHJuPVphcm5peWEgcnQ9MTAxMDU3NTU5OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKUExJTkcuCgpXaWNodGlnZXMgV29ydC4KCgoiIFNjaGVpbiIuCgpHZW5hdS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoWmFybml5YSwgIDkuIEphbiAyMDAyLCAxMjoyOTo0OSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMDQ0MjEwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKZ3JpbW0sIGJpc3QgZHUgc2ljaGVyLCBkYXNzIGR1IG5pY2h0IGluIEZyYW5rZW4gd29obnN0PyA6KSBEaWUgQmF5ZXJuIHNpbmQgZGEKcmVjaHQgZWlnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoR3JpbW1ib3JuLCAgOS4gSmFuIDIwMDIsIDEyOjMzOjI4KToKfiMhIHJuPVphcm5peWEgcnQ9MTAxMDU3NTc4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKRGFzIGlzdCBkYXMgUHJvYmxlbSBkZXIgbG9rYWxlbiBVcmVpbndvaG5lciwgbmljaHQgbWVpbnMuClVuZCBkaWUgQnVuZGVzYmFuay9MWkIgYWt6ZXB0aWVydCBqZWRlcyBqZSB2b24gZGVyIEJ1bmRlc2JhbmsgaGVyYXVzZ2VnZWJlbmUKb2ZmaXppZWxsZSBaYWhsdW5nc21pdHRlbCwgd2VubiBEdSBhbHNvIGVpbmVuIDUwIFBmIFNjaGVpbiB2b24gMTk0OCBvZGVyIGVpbmUKNSBETSBNdWVuemUgdm9uIDE5NjAgaGFzdCBpc3QgZWdhbC4gV29iZWkgbWFuIGJlaSBzb2xjaGVuIERpbmdlbgpsdWtyYXRpdmVyd2Vpc2UgenVtIG5hZWNoc3RlbiBNdWVuemhhZW5kbGVyIGdlaGVuIHNvbGx0ZS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKFphcm5peWEsICA5LiBKYW4gMjAwMiwgMTI6MzU6MDApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTA1NzYwMDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCm9iIGVzIGluIEl0YWxpZW4gZWlnZW50bGljaCBtYWwgMSBMaXJlIE11ZW56ZW4gZ2VnZWJlbiBoYXQ/IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKERlZXBibHVlLCAgOS4gSmFuIDIwMDIsIDEyOjUzOjMwKToKfiMhIHJuPVphcm5peWEgcnQ9MTAxMDU3NjEwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKZ2FiIGVzLCBlcyBnYWIgZ2FueiBmcnVlaGVyIHNvZ2FyIG5vY2ggbmUgVW50ZXJlaW5oZWl0IChDZW50aXNzaW1hIG9kZXIgc28pLgpBa3R1ZWxsIHNpbmQgYWJlciA1MExpcmUgZGllIGtsZWluc3RlIE11ZW56ZQoKRGVlcGJsdWUKCkRpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdGVycm9yaXN0ZW4gKERlZXBibHVlLCAgOS4gSmFuIDIwMDIsIDEzOjAyOjEzKToKRmlyZWhhd2sgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKS1JBQUFBQUFBQUFBQUFBQUFBQUFBQUFXVU1NTU1NTU1NTU1NTU1NTU1NTU0hCkplbWFuZCBoYXQgZGVuIFdvbHBlcnRpbmdlcmNsdWIgaW4gZGllIEx1ZnQgZ2VzcHJlbmd0IQpGaXJlaGF3ayAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCk5vY2ggRnJhZ2VuLCBLaWVuemxlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6IEdvbGRtdWVuemVuLUVVUk8tRE0tQmFyZ2VsZC1VbXRhdXNjaC4uLi4gKEhpZ2h0LCAgOS4gSmFuIDIwMDIsIDEzOjIwOjU4KToKfiMhIHJuPVphcm5peWEgcnQ9MTAxMDU3NTc4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTAzNTI1OTMKbWFnIHNlaW4gYWJlciBmcmFua2VuIHNpbmQga2VpbmUgYmF5ZXJuIAoKaGlnaHQgZmVzdHN0ZWxsZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoQ3VjaHVsbGluLCAgOS4gSmFuIDIwMDIsIDEzOjIxOjUyKToKfiMhIHJuPUhpZ2h0IHJ0PTEwMTA1Nzg4NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCk5hdHVlcmxpY2ggc2luZCBGcmFua2VuIEJheWVybi4gV2VubiB3aXIgQmF5ZXJuIG5hY2ggT2VzdGVycmVpY2ggCmFic2NoaWViZW4sIHNpbmQgd2lyIGRpZSBGcnJycnJhbmtlbiBhdWNoIGxvcy4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoQ3VjaHVsbGluLCAgOS4gSmFuIDIwMDIsIDEzOjIyOjMwKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDEwNTc4OTEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpTb2xsIG5hdHVlcmxpY2ggIkZycnJhbmdnbiIgaGVpc3Nlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvIGhhYiBpY2ggYmxvc3MgbWVpbmVuIEtvcGY/IChNYWdpcnVzLCAgOS4gSmFuIDIwMDIsIDE2OjU1OjA3KToKPiB1bnQgcGFrZXQKRWluIGdlbGJlcyBQb3N0cGFrZXQuIE1hbiBrYW5uIFNhY2hlbiBoaW5laW5zdGVja2VuIHVuZCBoZXJhdXNuZWhtZW4sCkVzIGlzdCBnZW9lZmZuZXQgdW5kIGVudGhhZWx0OgpFaW5lIEhhbHNrZXR0ZSAoYW5nZXpvZ2VuKS4KRGFzIFBha2V0IGlzdCBuaWNodCBmcmFua2llcnQuIER1IGthbm5zdCBCcmllZm1hcmtlbiBkcmF1ZmtsZWJlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvbGxlciBQcm92aWRlci4uLiAoRm9vYmFyLCAgOS4gSmFuIDIwMDIsIDE3OjE0OjQ1KToKdHJhY2Vyb3V0ZSB0byBtZy5tdWQuZGUgKDE5NC45NS4xNzAuMjA1KSwgMzAgaG9wcyBtYXgsIDQwIGJ5dGUgcGFja2V0cwogMSAgbXVlYXNjLmNpdHlrb20uZGUgKDE5NS4yMDIuMzIuMTIxKSAgMTQ4IG1zICAxNDAgbXMgIDE1MCBtcwogMiAgbXVlcnNtYi12MTYuY2l0eWtvbS5kZSAoMTk1LjIwMi4zMi42NykgIDE1OSBtcyAgMTM5IG1zICAxMzAgbXMKIDMgIG11ZWNpeC1lc3Nlbi5jaXR5a29tLmRlICgxOTUuMjAyLjMzLjgyKSAgMTI5IG1zICAxNDAgbXMgIDEyMCBtcwogNCAgbXVlcnNtYi12MTguY2l0eWtvbS5kZSAoMTk1LjIwMi4zMy42NykgIDEzOSBtcyAgMTMwIG1zICAxOTAgbXMKIDUgIG11ZWNpeC1lc3Nlbi5jaXR5a29tLmRlICgxOTUuMjAyLjMzLjgyKSAgMTM5IG1zICAxMzAgbXMgIDE0MCBtcwogNiAgbXVlcnNtYi12MTguY2l0eWtvbS5kZSAoMTk1LjIwMi4zMy42NykgIDE5OSBtcyAgMTQwIG1zICAyMDAgbXMKIDcgIG11ZWNpeC1lc3Nlbi5jaXR5a29tLmRlICgxOTUuMjAyLjMzLjgyKSAgMTM5IG1zICAxMzkgbXMgIDE0MCBtcwogOCAgbXVlcnNtYi12MTguY2l0eWtvbS5kZSAoMTk1LjIwMi4zMy42NykgIDE5OSBtcyAgMTQwIG1zICAxNDAgbXMKIDkgIG11ZWNpeC1lc3Nlbi5jaXR5a29tLmRlICgxOTUuMjAyLjMzLjgyKSAgMTM5IG1zICAxNDAgbXMgIDE0MCBtcwoxMCAgbXVlcnNtYi12MTguY2l0eWtvbS5kZSAoMTk1LjIwMi4zMy42NykgIDEzOSBtcyAgMTYwIG1zICAxMzAgbXMKMTEgIG11ZWNpeC1lc3Nlbi5jaXR5a29tLmRlICgxOTUuMjAyLjMzLjgyKSAgMTM5IG1zICAxNTAgbXMgIDE1MCBtcwoxMiAgbXVlcnNtYi12MTguY2l0eWtvbS5kZSAoMTk1LjIwMi4zMy42NykgIDE0OSBtcyAgMTUwIG1zICAxNjkgbXMKMTMgIG11ZWNpeC1lc3Nlbi5jaXR5a29tLmRlICgxOTUuMjAyLjMzLjgyKSAgMTM5IG1zICAxNDAgbXMgIDE1MCBtcwoxNCAgbXVlcnNtYi12MTguY2l0eWtvbS5kZSAoMTk1LjIwMi4zMy42NykgIDE1OSBtcyAgMTUwIG1zICAxNzAgbXMKMTUgIG11ZWNpeC1lc3Nlbi5jaXR5a29tLmRlICgxOTUuMjAyLjMzLjgyKSAgMTM5IG1zICAxMzAgbXMgIDE0MCBtcwoxNiAgbXVlcnNtYi12MTguY2l0eWtvbS5kZSAoMTk1LjIwMi4zMy42NykgIDE2MCBtcyAgMTYwIG1zICAxNjAgbXMKMTcgIG11ZWNpeC1lc3Nlbi5jaXR5a29tLmRlICgxOTUuMjAyLjMzLjgyKSAgMTM5IG1zICAxNTAgbXMgIDE2MCBtcwoxOCAgbXVlcnNtYi12MTguY2l0eWtvbS5kZSAoMTk1LjIwMi4zMy42NykgIDE3OSBtcyAgMTQwIG1zICAxNDAgbXMKMTkgIG11ZWNpeC1lc3Nlbi5jaXR5a29tLmRlICgxOTUuMjAyLjMzLjgyKSAgMTM5IG1zICAxOTAgbXMgIDIwMCBtcwoyMCAgbXVlcnNtYi12MTguY2l0eWtvbS5kZSAoMTk1LjIwMi4zMy42NykgIDE2OSBtcyAgMjEwIG1zICA0MTAgbXMKMjEgIG11ZWNpeC1lc3Nlbi5jaXR5a29tLmRlICgxOTUuMjAyLjMzLjgyKSAgMTQ5IG1zICAxNDAgbXMgIDE2MCBtcwoyMiAgbXVlcnNtYi12MTguY2l0eWtvbS5kZSAoMTk1LjIwMi4zMy42NykgIDE0OSBtcyAqICAxNTAgbXMKMjMgIG11ZWNpeC1lc3Nlbi5jaXR5a29tLmRlICgxOTUuMjAyLjMzLjgyKSAgMTI5IG1zICAxNTAgbXMgIDE3MCBtcwoyNCAgbXVlcnNtYi12MTguY2l0eWtvbS5kZSAoMTk1LjIwMi4zMy42NykgIDE2OSBtcyAgMTUwIG1zICAxNDAgbXMKMjUgIG11ZWNpeC1lc3Nlbi5jaXR5a29tLmRlICgxOTUuMjAyLjMzLjgyKSAgMTQ5IG1zICAxOTAgbXMgIDE3MCBtcwoyNiAgbXVlcnNtYi12MTguY2l0eWtvbS5kZSAoMTk1LjIwMi4zMy42NykgIDE3OSBtcyAgMjAwIG1zICAxODAgbXMKMjcgIG11ZWNpeC1lc3Nlbi5jaXR5a29tLmRlICgxOTUuMjAyLjMzLjgyKSAgMTc5IG1zICAxNjAgbXMgIDE1MCBtcwoyOCAgbXVlcnNtYi12MTguY2l0eWtvbS5kZSAoMTk1LjIwMi4zMy42NykgIDE2OSBtcyAqICA0MTAgbXMKMjkgIG11ZWNpeC1lc3Nlbi5jaXR5a29tLmRlICgxOTUuMjAyLjMzLjgyKSAgMTc5IG1zICAxOTAgbXMgIDE2MCBtcwozMCAgKiBtdWVyc21iLXYxOC5jaXR5a29tLmRlICgxOTUuMjAyLjMzLjY3KSAgNjgwIG1zICAzMTAgbXMKCkZvb2JhciBncnVtbWVsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbm4gTWFnaWVyIExhbmdld2VpbGUgaGFiZW4gLi4uIChMaWFyYSwgIDkuIEphbiAyMDAyLCAxNzoyMjozNCk6CgpYeHggdGVpbHQgRGlyIG1pdDogZXVjaCBpcyBsYW5nd2VpbGljaCBsb3MgZ2VodCBhYm5pYmJlbG4KClpaTCwgcG9laHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvbiBLd2FldHNjaCAoQXJrLCAgOS4gSmFuIDIwMDIsIDE3OjI5OjQwKToKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogYXJrIGZ1bW1lbCBuaWNoIGFuIG1laW5lbSB6bXVkIHJ1bQpMaWFyYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCk5pY2h0IGdld3Vzc3QsIGljaCBiaW4gZGFzIFpNdWQsIG1laW5lIE1hY2h0IGlzdCBtaXQgbWlyIHVuZCBrYW5uIERpciBzY2hhZGVuCjteKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUb2xsZXIgUHJvdmlkZXIuLi4gKE9ya3RvZXRlciwgIDkuIEphbiAyMDAyLCAxNzo0MzozNik6Cn4jISBybj1Gb29iYXIgcnQ9MTAxMDU5Mjg4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTA1OTI4ODUKV2llIG5ldHQsIEthcnVzc2VsZmFocmVuIGZ1ZXIgRGF0ZW4hIDopCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSW50byB0aGUgZ3JlYXQgd2l0ZSBvcGVuIChHcmltbWJvcm4sICA5LiBKYW4gMjAwMiwgMTg6MDE6NDQpOgp+IyEgcm49TW9udGFudXMgcnQ9MTAxMDU5NDYxMiByZz1rdWx0dXIKfiMhIHRpZD0xMDEwNTE0MjIzCkR1IHZlcndlY2hzZWxzdCB3YXM6IGRlciB0cmFldW10ZSBuaWNodCwgc29uZGVybiBnbGF1YnRlIGFuIGRlbgpXZWlobmFjaHRzbWFubi4gRGVyIG1pdCBkZW0gVHJhdW0sIGRhcyB3YXIgSm9oYW5uZXMgQ2FsdmluIEtvZW5pZy4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VubiBkZXIgVmF0ZXIgZGVyIFRvY2h0ZXIgZGFzIFNwcmVjaGVuIGJlaWJyaW5ndCAoTGFyaXNzYSwgIDkuIEphbiAyMDAyLCAxOTo0Nzo1OCk6CkFob2kgOikKCkdlcmFkZSBiZWkgdW5zIGltIFdvaG56aW1tZXI6CkpvZiBoYXQgc2VpbmUgS2xlaW5lICg0IFdvY2hlbikgYXVmIGRlbSBBcm0gdW5kIHNwcmljaHQgaWhyIHZvcjoKJ1NhZyBtYWwgTUFNQUFBQUFBQUFBQScKZGFubjoKCidTYWcgbWFsIFBBUEFBQUFBQUFBQUEnCgpkYW5uOgoKJ1NhZyBtYWwgTElOVVgnCgoqcm90ZmwqLCBkYXMga2FubiBqYSBub2NoIHdhcyBnZWJlbiA6KQoKTGllYmUgR3J1ZXNzZSwKTGFyaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdlbm4gZGVyIFZhdGVyIGRlciBUb2NodGVyIGRhcyBTcHJlY2hlbiBiZWlicmluZ3QgKEFwb2xsb25pYSwgIDkuIEphbiAyMDAyLCAxOTo1MDowNyk6Cn4jISBybj1MYXJpc3NhIHJ0PTEwMTA2MDIwNzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwNjAyMDc4CkRhcyBnZWh0IGRvY2ggYWxsZXMgbm9jaC4uLiBEZXIgSGVyciBQYXRlbm9ua2VsIHNhZ3RlIHp1IHNlaW5lbSBkYW1hbHMgNCBUYWdlCmFsdGVtIFBhdGVua2luZDogJ1NhZyBtYWwgVGVlZXF1aWlpaWxhJy4uLgoKQXBvKgp1bmQgbmVpbiwgc2llIGhhdCdzIG5vY2ggbmljaHQgZ2VzYWd0IDtvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZW5uIGRlciBWYXRlciBkZXIgVG9jaHRlciBkYXMgU3ByZWNoZW4gYmVpYnJpbmd0IChHcmltbWJvcm4sICA5LiBKYW4gMjAwMiwgMjA6MDY6MTIpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwMTA2MDIyMDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwNjAyMDc4CldhcyBoYXQgZGVubiBOZWVsZSBnZWFudHdvcnRldD8KVW5kIHNvbGNoZSBQaXBpZmF4d29ydGUuLi4gaWNoIGVtcGZlaGxlIGRhIGV0d2FzIHByYXhpc25hZWhlcmVzIHdpZQoiQXRvbWtyYWZ0d2Vya3NiZXRyaWVic2dlbmVobWlndW5nIi4gTWFuIGthbm4gZGllIEtsZWluZW4gbmljaHQgZnJ1ZWggZ2VudWcKYXVmcyBMZWJlbiB2b3JiZXJlaXRlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZW5uIGRlciBWYXRlciBkZXIgVG9jaHRlciBkYXMgU3ByZWNoZW4gYmVpYnJpbmd0IChIaWdodCwgIDkuIEphbiAyMDAyLCAyMDoxMjoxNyk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTAxMDYwMjIwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTA2MDIwNzgKKmxhY2gqIGljaCB3ZWlzcyB3YXJ1bSBpY2ggZGVuIG1hbm4gbWFnICxvKSAKCmhpZ2h0IGJyaW5ndCBpaHIgZGFubiB3aGl0ZSBydXNzaWFuIHVuZCBiaWVyIGJlaSAqZWcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBZWg/IChMaWFyYSwgIDkuIEphbiAyMDAyLCAyMTowNDowMyk6CkthZGFicmEgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IENvbXVuZG8uClBhc3NpdiBzZWl0OiAwMDowNToxNQpFaW5nZWxvZ2d0IHNlaXQ6IE1pdCwgIDkuIEphbiAyMDAyLCAyMDo0MjoxMApWb2xsZXIgTmFtZTogS2FkYWJyYSBpc3QgZWluIFRlaWwgdm9uIGplbmVyIEtyYWZ0ClJhc3NlOiBIb2JiaXQsICBHaWxkZTogQmllcnNjaHVldHRsZXIsICBHZXNjaGxlY2h0OiB3ZWlibGljaApBbHRlcjogODRkIDA4OjM1OjQyLCAgIFNwaWVsZXJsZXZlbDogNTEgKFNlaGVyaW4pLCAgIEdpbGRlbmxldmVsOiAyMgpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBNb24sIDI3LiBPa3QgMTk5NywgMTU6MTQ6NDYKSG9tZXBhZ2U6IGh0dHA6Ly93d3cub25saW5lLWNsdWIuZGUvfmthZGFicmFzLnRleHR3dWVzdGUKei5aLiBhYndlc2VuZCwgR3J1bmQgIDogLi4uIGxpZWJyZWl6ZW5kZSwgaGlsZnJlaWNoZSBtZW5zY2hlbiBzb2xsZW4gbWljaApiaXR0ZSB3ZWNrZW4gOi0pCkJpc2hlciBiZXJlaXRzIDI2IG1hbCBnZXN0b3JiZW4KCklzIGtsYXIuICpncnVlYmVsKgpMWloKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChXdXJ6ZWwsICA5LiBKYW4gMjAwMiwgMjM6NTY6MDcpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMTA1Nzg5NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCm5hdHVlcmxpY2ggc2luZCBmcmFua2VuIGF1Y2ggYmF5ZXJuLiB3ZW5uIG1hbiBuYWNoIGZyYW5rZW4gZmFlaHJ0LCBrb21tdCBtYW4KKHdlbmlnc3RlbnMgZGFubiwgd2VubiBtYW4gbmljaHQgZ2VyYWRlIHZvbiBzdWVkZW4ga29tbXQpIGltbWVyIGFuIGVpbmVtCmdyb3NzZW4gc2NoaWxkIHZvcmJlaSwgYXVmIGRlbSAiYmF5ZXJuIiBzdGVodC4gdW5kLCB3aWUgc2Nob24gZ29ldGhlIHNlaW5lbgptZXBoaXN0byBzYWdlbiBsYWVzc3QsIHdhcyBkdSBzY2h3YXJ6IGF1ZiB3ZWlzcyBiZXNpdHp0LCBrYW5uc3QgZHUgZ2V0cm9zdApuYWNoIGhhdXNlIHRyYWdlbi4Kd2VubiBkaWUgZnJhbmtlbiBrZWluZSBiYXllcm4gc2VpbiB3b2xsZW4sIHNvbGx0ZW4gc2llIHZpZWxsZWljaHQgbWFsIGRlbgpoZXJybiBnb2V0aGUgYmVpbSB3b3J0IG5laG1lbiwgamVkZW5mYWxscyB3YXMgZGFzIHRyYWdlbiBhbmdlaHQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdlbm4gZGVyIFZhdGVyIGRlciBUb2NodGVyIGRhcyBTcHJlY2hlbiBiZWlicmluZ3QgKENhdHdlYXpsZSwgMTAuIEphbiAyMDAyLCAwOTo1MzozMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMDYwMzE3MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTA2MDIwNzgKU2Nob2VuZXMgV29ydC4KV2VyIHNpY2ggbWFsIG1pdCBlaW5lbSBhdXNnZXdhY2hzZW5lbiBNZW5zY2hlbiB2ZXJnbnVlZ2VuIHdpbGwsIGVtcGZlaGxlIGljaApmb2xnZW5kZXMuIFdlbm4gZGVpbiBLb2xsZWdlIG1hbCB2b20gWmFobmFyenQga29tbXQgdW5kIGRpZSBCZXRhZXVidW5nIG5vY2ggaW4KZGVyIEJhY2tlIGhhdCwgYml0dGV0IGlobiBkb2NoIG1hbCAnU3RyZWljaGhvbHpzY2hhZWNodGVsY2hlbicgenUgc2FnZW4uIEVpbmUKaGVycmxpY2hlIFNhdWVyZWkgZ2lidCBkYXMuIEVrbGlnLCB3aWUgZGFzIHRyb3BmdCA6KQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRoZSBTdG9yeSBvZiBGb29iYXIgKEdyaW1tYm9ybiwgMTAuIEphbiAyMDAyLCAxMDo0NjoyMyk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTAxMDY1NTk3OSBvZz13d3cKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDEwNjU1NzMwIHJnPXd3dwp+IyEgdGlkPTEwMTA1OTg2MDMKT2NoLCBpY2ggaGFiIGRpZSBCaWxkZXIgRWRnYXIgZ2V6ZWlndCwgZGVyIGd1Y2t0ZSBnYW56IGludGVyZXNzaWVydC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVG9sbGVyIFByb3ZpZGVyLi4uIChHb3IsIDEwLiBKYW4gMjAwMiwgMTQ6MTk6MzYpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwMTA1OTI4ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwNTkyODg1CkRhcyBrYW5uIERGTiBhYmVyIGF1Y2guIDspIEFsc28gbWFjaCBkaXIga2VpbmVuIEtvcC4gVGVsZWtvdHogYWxsZW4gdm9ycmFuCmthbm5zIG5vY2ggdmllbCBiZXNzZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBmYXJiZW5mcm9oZXMgTXVkIChMaWFyYSwgMTAuIEphbiAyMDAyLCAyMDoxNzozMik6Cn4jISBvbj1MaWFyYSBvdD0xMDEwNjkwMTk2IG9nPWQuZWJlbmUKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDEwNjkwMTI3IHJnPWQuZWJlbmUKfiMhIHRpZD0xMDEwNjkwMDExCk9jaCwgbm9lIGRpZSBhcm1lbiBTdGVpbmUgLi4uCgpaWkwsIHBhY2t0IHdpZWRlciBlaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGZhcmJlbmZyb2hlcyBNdWQgKEN1Y2h1bGxpbiwgMTAuIEphbiAyMDAyLCAyMTowODoyOSk6Cn4jISBybj1MaWFyYSBydD0xMDEwNjkwMjUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDY5MDAxMQpTY2hhZGUsIGljaCBrYW5uIG5hZW1saWNoIGZhbmdlbi4gVW5kIGRhIFJhZ25hcm9layB6dW0gU2NocmVpYmVuIHNlaW5lcwpBcnRpa2VscyAtIHZpZWxsZWljaHQgc29nYXIgc2Nob24gYWxsZWluIHp1bSBBYmhhZW5nZW4gZGVzIFRyaWNodGVycyAtIAp3YWhyc2NoZWlubGljaCBtZWhyIFplaXQgYnJhdWNodGUgYWxzIGVyIGZ1ZXIgZGVuIEJ1Z2ZpeCBnZWJyYXVjaHQgaGFldHRlLAp3ZWlzcyBpY2ggYXVjaCBzY2hvbiwgd29oaW4gaWNoIHNpZSB3ZWl0ZXJnZXdvcmZlbiBoYWV0dGUuLi4uIF06Xj4KCkN1Y2gicGZsYXN0ZXJzdGVpbiJ1bGxpbgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGZhcmJlbmZyb2hlcyBNdWQgKEdub21lLCAxMC4gSmFuIDIwMDIsIDIxOjEwOjIxKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDEwNjkzMzA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDY5MDAxMQpoZXkhIGRhIG11c3MgbWFuIG5lbiBlZGl0b3Igb2VmZm5lbiwgZGFzIGZpbGUgbGFkZW4sIGZ0cCB1bmQgc28gYXVjaCBub2NoLgppc3QgZG9jaCBuZSBtZW5nZSBhcmJlaXQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBmYXJiZW5mcm9oZXMgTXVkIChSYWduYXJvZWssIDEwLiBKYW4gMjAwMiwgMjE6MTE6MDQpOgp+IyEgcm49R25vbWUgcnQ9MTAxMDY5MzQyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTA2OTAwMTEKVW5kIHVtIG5lbiBCdWcgZml4ZW4genUga29lbm5lbiwgaGFldHRlIGljaCBhdWNoIGVyc3RtYWwgZWluZW4gZWluYmF1ZW4KbXVlc3Nlbi4uLi4gdW5kIHNvd2FzIGRhdWVydCA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGZhcmJlbmZyb2hlcyBNdWQgKFRpYW1haywgMTAuIEphbiAyMDAyLCAyMToxMToxMCk6Cn4jISBybj1Hbm9tZSBydD0xMDEwNjkzNDIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDY5MDAxMQpLbGFyLCB1bmQgYWJoYWVuZ2VuIGdlaHQsIGluZGVtIG1hbiBkYXMgT2JqZWt0IGJvZXNlIGFuc3RhcnJ0LiA6LSkKCgpUaWFtYWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGZhcmJlbmZyb2hlcyBNdWQgKEN1Y2h1bGxpbiwgMTAuIEphbiAyMDAyLCAyMToxNzowMCk6Cn4jISBybj1SYWduYXJvZWsgcnQ9MTAxMDY5MzQ2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTA2OTAwMTEKVGphLCBpY2ggc2NoYWV0emUsIER1IGlycnN0LiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2VubiBkZXIgVmF0ZXIgZGVyIFRvY2h0ZXIgZGFzIFNwcmVjaGVuIGJlaWJyaW5ndCAoUm9jaHVzLCAxMC4gSmFuIDIwMDIsIDIyOjExOjI1KToKfiMhIHJuPUFwb2xsb25pYSBydD0xMDEwNjAyMjA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDYwMjA3OApOYSBiZXNzZXIgZmFuZCBpY2ggbm9jaCwgZGFzcyBzaWUgYXVmIGRlciBUYXN0YXR1ciBydW1nZXRpcHB0CmhhdCB1bmQgInRmIiBkYWJlaSBoZXJhdXNrYW0gOikKCiAgUm9jaHVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2VubiBkZXIgVmF0ZXIgZGVyIFRvY2h0ZXIgZGFzIFNwcmVjaGVuIGJlaWJyaW5ndCAoQW50aGVhLCAxMC4gSmFuIDIwMDIsIDIyOjEyOjM3KToKfiMhIHJuPVJvY2h1cyBydD0xMDEwNjk3MDg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDYwMjA3OApIbS4uLiBEYXMgZXJpbm5lcnQgbWljaCBhbiBkaWVzZW4gZWluZW4gIlVuaXgtS3VycyIKQW5sZWl0dW5nOiBLb25zb2xlIG5laG1lbiwgendlaSBCdWNoc3RhYmVuIHRpcHBlbiwgcmV0dXJuIGRydWVja2VuLCBzY2hhdW4gd2FzCnBhc3NpZXJ0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGltIEVpc3BhbGFzdCAuLi4gKExpYXJhLCAxMS4gSmFuIDIwMDIsIDAwOjM0OjE2KToKCkVpbiBoYWVzc2xpY2hlciBPcmsuCgoKWlpMLCBsYWNodCBpbW1lciBub2NoIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGludXgtV3VybSBpbSBVbWxhdWYgKEdyaW1tYm9ybiwgMTEuIEphbiAyMDAyLCAwMDo1NjoxOSk6Cn4jISBvbj1WYXJkaW9uIG90PTEwMTA3MDU0NTAgb2c9YWxsZ2VtZWluZXMKSGkuCgpNb21lbnRhbiAgaXN0ICBlaW4gIGJvZXNhcnRpZ2VyICBMaW51eC1XdXJtICBpbSAgVW1sYXVmLiAgRXIgIHZlcmJyZWl0ZXQgIHNpY2gKU2ljaGVyaGVpdHNsdWVja2VuIGluICBTU0gsICBETlMgKGJpbmQpLCAgTFBSICB1bmQgRlRQICAodmVybXV0bGljaCAgd3UtZnRwZCkuCkVpbm1hbCBlaW5nZWRydW5nZW4gZW50c29yZ3QgZXIgIGRpZSBMb2dmaWxlcyB1bmQgdGF1c2NodCBhdWYgIGRlbSBTeXN0ZW0gZXR3YQoxMDAgICBCaW5hcmllcyAgYXVzLiAgRWluICBJbmRpeiAgZnVlciAgZWluZSAgSW5mZWt0aW9uICBpc3QgIGRhcyAgZmVobGVuICBkZXIKU3lzdGVtbG9nZmlsZXMgdW5kICBkYXMgIFZvcmhhbmRlbnNlaW4gIGVpbmVzICBCaW5hcmllcyAgL3Vzci9iaW4vYWhhLiAgRGllc2VzCkJpbmFyeSBpc3QgYXVmIGRlbSBpbmZpemllcnRlbiBTeXN0ZW0gbmljaHQgc2ljaHRiYXIgIC0gbWFuIHNpZWh0IGVzLCB3ZW5uIG1hbgpkaWUgUGxhdHRlICB2b24gIGVpbmVtICBzYXViZXJlbiAgc3lzdGVtICAoei5CLiAgRGlza2V0dGVubGludXggIHdpZSAgdG9tc3J0YikKbW9udGllcnQuICAgRnVlciAgIGRhcyAgIEJldHJvZmZlbmUgICBTeXN0ZW0gIGJsZWlidCAgIGVpZ2VudGxpY2ggICBudXIgICBlaW5lCk5ldWluc3RhbGxhdGlvbi4KQW5ncmlmZnN2ZXJzdWNoZSBhdWYgIGV1cmVuIFJlY2huZXIgIGVya2VubnQgIGlociBiZWkgIHNpY2hlcmVtIHNzaGQgIHouQi4gIGFuCkxvZ2ZpbGV6ZWlsZW4gd2llOgpKYW4gIDkgMDE6MDA6NDEgcHlyb3Mgc3NoZFsyNjM1OF06IERpZCBub3QgcmVjZWl2ZSBpZGVudGlmaWNhdGlvbiBzdHJpbmcgZnJvbQp4LngueC54CgpXaWUgaW1tZXIgIGlzdCBkZXIgIGJlc3RlIFNjaHV0eiwgYWxsZSAgbWl0IFJvb3RyZWNodGVuICBsYXVmZW5kZW4gU2VydmVyICBhdWYKYWt0dWVsbGVtIFN0YW5kIHp1IGhhbHRlbiB1bmQgbmFjaCBhdXNzZW4gbnVyIGRhcyBhbGxlcm5vZXRpZ3N0ZSBmcmVpenVnZWJlbi4KClZhcmRpb24sIGhvZmZ0IGRhc3MgZGllc2UgV2FybnVuZyBmdWVyIG5pZW1hbmRlbiB6dSBzcGFldCBrb21tdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExpbnV4LVd1cm0gaW0gVW1sYXVmIChHcmltbWJvcm4sIDExLiBKYW4gMjAwMiwgMDA6NTY6MjMpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwMTA3MDU5Njcgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVZhcmRpb24gcnQ9MTAxMDcwNTQ1MCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMTA3MDU0NTAKVW5kIER1IGhhc3Qgc2ljaGVyIGRhZnVlciBhdWNoIGVpbmUgZ2xhdWJ3dWVyZGlnZSBRdWVsbGU/CgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTGludXgtV3VybSBpbSBVbWxhdWYgKEdyaW1tYm9ybiwgMTEuIEphbiAyMDAyLCAwMDo1Nzo1Mik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMDcwNjk4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTA3MDU0NTAKS2VpbmUgUXVlbGxlbmFuZ2FiZSwgZ29vZ2xlIHdlaXNzIG5pY2h0cywgQ0VSVCB3ZWlzcyBuaWNodHMuCgpOaWNodHMgZnVlciB1bmd1dCwgbmF0dWVybGljaCBpc3Qgc28gZWluIFd1cm0gZ2VuZXJlbGwgZGVua2Jhci4gQWJlciBiaXMgZGFzCm5pY2h0IGhhbGJ3ZWdzIGdsYXVid3VlcmRpZyB1bnRlcm1hdWVydCBpc3QgbmVobWUgaWNoIHNvIGVpbmVuICJGZXVlciEiIFJ1ZgphdXMgYWxsZ2VtZWluIHJhdXMgdW5kIHNldHplIGRlbiBoaWVyIGhpbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGVsbHNlaGVyPyAoVmFybGFyaW9uLCAxMS4gSmFuIDIwMDIsIDE5OjM3OjI3KToKW0JlaWxlaWQ6U3R1cm1rcmFlaGVdIDooIGJlaWxlaWQKW1RvZDpMYXJzXSBWb2VsbGlnZSBFcnNjaG9lcGZ1bmcgaGF0IGdlcmFkZSBTbGF5ZXIgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk93ZW4gZGVua3QgYW4gYWxsZXMuLi4gKEZvb2JhciwgMTEuIEphbiAyMDAyLCAyMDoxNTo0NCk6Cj5rYXVmZSBhdXNydWVzdHVuZwpLb3N0ZW52b3JhbnNjaGxhZzoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gRWluZSBEYWVtb25lbnBlaXRzY2hlICAgICAgICAgICAgICAgICAgICAgIDE1MDAgTXVlbnplbgotIFpvbWJpZSBTdGllZmVsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNTAwIE11ZW56ZW4KLSBFaW4gS29uZG9tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMyBNdWVuemVuCi0gRWluIEdvYmxpbmhlbG0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE1MDAgTXVlbnplbgotIEJlcmF0dW5nc2dlYnVlaHIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDk5IE11ZW56ZW4KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tClN1bW1lOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQ2MDIgTXVlbnplbgogCk1vZWNodGVzdCBEdSBkaWVzZSBBdXNydWVzdHVuZyBrYXVmZW4/ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoQW5jYWxhZ29uLCAxMS4gSmFuIDIwMDIsIDIyOjEyOjMyKToKfiMhIHJuPUdub21lIHJ0PTEwMTA0MTExMjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCkhhbGxvZWxjaGVua251ZGRlbHMhCkJyYWNrd2VkZSwgb2RlciBhdWNoICJRdWlya2VuZG9ycCIgaXN0IGVpbiB0ZWlsIHZvbiBCaWVsZWZlbGQuLi4gOikKCkdydWVzc2VrbnVkZGVscywKCkFuY2FsYWdvbiAoZW5kbGljaGF1Y2htYWx3YXN3aXNzZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFp1ciBXYWVocnVuZ3NyZWZvcm0gKEN1Y2h1bGxpbiwgMTEuIEphbiAyMDAyLCAyMjoxMjo0OCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTAxMDc4Mjk2OSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxMDQ5ODY3MwpHaWJ0IG1pciBqYSB6dSBkZW5rZW4sIHdlbm4gZWluIFRocmVhZCB1ZWJlciAiZ2xhZXNlcm5lIEt1bmRlbiIgYXVzIAptYWdpZXIuZW50d2lja2x1bmcgaGVyYXVzaHVlcGZ0Li4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHb2xkbXVlbnplbi1FVVJPLURNLUJhcmdlbGQtVW10YXVzY2guLi4uIChTaWx2YW5hLCAxMS4gSmFuIDIwMDIsIDIyOjQyOjM5KToKfiMhIHJuPUFuY2FsYWdvbiBydD0xMDEwNzgzNTUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMDM1MjU5MwpLRVRaRVIhCkFsc28gZXJzdCBtYWw6IFF1aXJrZW5kb3JwICE9IEJyYWNrd2VkZS4KVW5kIHp1bSB6d2VpdGVuOiBBbHMgZ2VidWVydGlnZSBCcmFja3dlZGVyaW4gYmVzdGVoZSBpY2ggZGFyYXVmLCBkYXNzCkJyYWNrd2VkZSB2aWVsbGVpY2h0IGluIGRlciBOYWVoZSBkaWVzZXIgYW5nZWJsaWNoZW4gU3RhZHQgQmllbGVmZWxkIGxpZWd0LApkaWUgYmVrYW5udGxpY2hlcndlaXNlIG5pY2h0IGV4aXN0aWVydCwgYWJlciBnYW56IGJlc3RpbW10IG5pY2h0IFRlaWwgZGVyCnNlbGJpZ2VuIGlzdCEgRGFzIGJlaGF1cHRlbiBibG9zcyBkaWVzZSBLb25zcGlyYXRvcmVuLCBkaWUgYXVjaCBiZWhhdXB0ZW4sCmRhc3MgZXMgQmllbGVmZWxkIGdhZWJlLiBLZXR6ZXIsIGRpZXNlIQoKQWJnZXNlaGVuIGRhdm9uIGlzdCBCaWVsZWZlbGQgZWluIE1hZ2llciwga2VpbmUgU3RhZHQuIDopCgogIFNpbHZhbmEgKEJyYWNrd2VkZXJpbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkltbWVyIGljaCA6LSggKEdydW1wZiwgMTEuIEphbiAyMDAyLCAyMzozMzoyMik6ClBpY2h1IGZyYWd0IGRhcyBHZWxic2Nob3BmcGluZ3Vpbi1LaW5kIG5hY2ggS2Vrcy4gIApEYXMgR2VsYnNjaG9wZnBpbmd1aW4tS2luZCBzY2hhdXQgRGljaCB2ZXJhZW5nc3RpZ3QgYW4uCgpHcnVtcGYgZ3J1bXBmdCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldGRpZ2VzdC4uLiAoRm9vYmFyLCAxMi4gSmFuIDIwMDIsIDAxOjQ5OjI4KToKRnJvbTogZG8ubm90LlJFTU9WRVRIQVRAdHJ1bGxhbGEuZGUgKE1hdHRoaWFzIFAuIFd1ZXJmbCkKTmV3c2dyb3VwczogZGUuY29tbS5pbmZvc3lzdGVtcy53d3cuYXV0aG9yaW5nLm1pc2MKU3ViamVjdDogUmU6IFdpZSB2aWVsZSBLYnMgc2luZCBmdWVyIGRlbiBTdGFuZGFydC1Vc2VyIHp1bXV0YmFyPwpEYXRlOiBTYXQsIDI5IERlYyAyMDAxIDE0OjU4OjI1ICswMTAwCk1lc3NhZ2UtSUQ6IDxhMGtqbzYuOGMuMUB0cnVsbGFsYS5kZT4KCi0tPltGcmFueiBCaWVyaG9mIGluIGRlLmNvbW0uaW5mb3N5c3RlbXMud3d3LmF1dGhvcmluZy5taXNjXTwtLQoKPiBEaWUgZnJhbWUgVmVyc2lvbiBoYXQgaW5zZ2VzYW10IHVtIGRpZSAyNSBLYiAKClsuLi5dCgo+IFdpZSBnZXNhZ3QsIGRhc3MgZ2FuemUgb2huZSBJbmhhbHQgKGRlciBzaWNoIGFsbGVyZGluZ3MgaW4KPiBHcmVuemVuIGhhZWx0Li4uaWNoIHNjaGFldHptYWwgZGVyIHdpcmQga2VpbmUgMTBrYiBtZWhyIHdlcmRlbikKCjEvNCBkZXIgRGF0ZW5tZW5nZSBpc3QgZGFubiBJbmZvcm1hdGlvbi4gSW0gaGV1dGlnZW4gV2ViIHd1ZXJkZSBpY2ggCmRhcyBlaGVyIGFscyB1ZWJlcmR1cmNoc2Nobml0dGxpY2ggZ3V0ZW4gV2VydCBiZXplaWNobmVuLiBFaW56aWdlcyAKUHJvYmxlbTogRHVyY2ggZGllIFZlcndlbmR1bmcgdm9uIEZyYW1lcyB3aXJkIHRlbmRlbnppZWxsIGRlciBJbmhhbHQgCnNwYWV0ZXIgZ2VsYWRlbi4KCnwgQnJvd3NlcjogSGUsIFNlcnZlciEgZ2liJyBtaXIgbWFsIGRpZSBTdGFydHNlaXRlIQp8IFNlcnZlcjogIEhpZXIsIG1laW4gQnViJzogZGEgaGFzdGUgZWluIHNjaG9lbmVzIEZyYW1lc2V0CnwgQnJvd3NlcjogKCp1ZWJlcmxlZyopCnwgQnJvd3NlcjogSGUgU2VydmVyLCBpY2ggYnJhdWNoIG5vY2ggZGFzIE1lbnVlLgp8IFNlcnZlcjogIEhpZXIgbWVpbiBCdWInIC0gYml0dGVzZWhyIC0gZGFzIE1lbnVlLgp8IEJyb3dzZXI6IERhIG11ZXNzZW4gYWJlciBub2NoIEJpbGRlcmNoZW4gcmVpbiAtIHN0ZWh0IGRhIGltIAp8ICAgICAgICAgIFF1ZWxsdGV4dC4KfCBTZXJ2ZXI6ICBCaWxkZXJjaGVuPyBPSy4gRGEgaGFzdGUgc2llLgp8IEJyb3dzZXI6IFNvLCB1bmQgamV0enQgYnJhdWNoIGljaCBub2NoIGRpZSBIVE1MLVNlaXRlIGZ1ZXIgZGVuIAp8ICAgICAgICAgIEluaGFsdHNmcmFtZS4KfCBTZXJ2ZXI6ICBIbSwgbWFsIHNlaGVuLiBBaCBkYSBpc3Qgc2llIGphLgoKKktBV1VNTSogdW5kIERhIGtvbW10IGRlciBJbmhhbHQuIEltIEdlZ2Vuc2F0eiB6dSBlaW5lbSBlaW5mYWNoZW4KCnwgQnJvd3NlcjogSGUsIFNlcnZlciEgZ2liJyBtaXIgbWFsIGRpZSBTdGFydHNlaXRlIQp8IFNlcnZlcjogIEhpZXIsIG1laW4gQnViJzogZGEgaXN0IGRlciBJbmhhbHQKCi4uLmRhdWVydCBkYXMgbmF0dWVybGljaCBsYWVuZ2VyLiBJc3Mga2xhci4gRnVlciBlaW4gZ3V0IApmdW5rdGlvbmllcmVuZGVzIHNjaG5lbGxlcyBNb2RlbSBzb2xsdGVuIDI1S0IgcmVjaHQgenVlZ2lnIHp1IApzY2hhZmZlbiBzZWluLiBQcm9ibGVtIGlzdCBudXIsIGRhc3MgZGllIERhdGVudWViZXJ0cmFndW5nc3JhdGUgCmtsZWluZXIgc2VpbiB3aXJkIHVuZCBhbGxlcyBsYWVuZ2VyIGRhdWVybiB3aXJkLCB3ZWlsIEJyb3dzZXIgdW5kIApTZXJ2ZXIgU2Nod2FldHpjaGVuIGhhbHRlbiB3YWVocmVuZCBkZXIgVXNlciBhdWYgZGVuIEluaGFsdCB3YXJ0ZXQuCgpHcnVlc3NlLCBNYXR0aGlhcwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNYWdpc3RlcnBydWVmdW5nIChHbm9tZSwgMTIuIEphbiAyMDAyLCAxNTowNjo0Nik6Cn4jISBybj1TaWx2YW5hIHJ0PTEwMTA4MzE4NTEgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTAxMDgzMTg1MQpicm90bmFlbCBtZWxkZXQgc2ljaCBiZXN0aW1tdCBmcmVpd2lsbGlnLi4uICpkdWNrKiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNYWdpc3RlcnBydWVmdW5nIChab29rLCAxMi4gSmFuIDIwMDIsIDE1OjU2OjUwKToKfiMhIHJuPUdub21lIHJ0PTEwMTA4NDQ0MDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwODMxODUxCldhcnVuIGxhZyBtaXIgZ2VuYXUgZGllc2VyIFNhdHogYXVjaCBhdWYgZGVyIFp1bmdlPyA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnd1bmRlciBpc3Qgc2Nob24gc3VwZXIgOikgKExhcmFyLCAxMi4gSmFuIDIwMDIsIDE2OjIyOjU4KToKRHUgd2lya3N0IGVpbiBXdW5kZXIuCllpYmItVHNzdGwgZ2lidCBEaXIgZWluZW4gZGlja2VuIEt1c3MgbWl0dGVuIGF1ZiBkZW4gTXVuZC4KCgpiYWFhaGhoaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVlIEJpbGRlciEgKFpvb2ssIDEzLiBKYW4gMjAwMiwgMTQ6Mzg6MTQpOgp+IyEgcm49Wm9vayBydD0xMDEwODk1Mzg5IHJnPXBhcnR5Cn4jISB0aWQ9MTAxMDg2NDc4NwpNYW4gYmVhY2h0ZSBkaWUgVWhyemVpdCB1bmQgZGFzIGlzdCBkYW5uIGF1Y2ggZGllIEVya2xhZXJ1bmcsIHdhcnVtIGVzCmZ1ZXIgZWluZW4gZ2FuemVuIGRldXRzY2hlbiBTYXR6IG5pY2h0IG1laHIgZ2VyZWljaHQgaGF0LgoKWm9vayBlaW5lbiBzY2hvZW5lbiBiaWVycmVpY2hlbiBBYmVuZCBoaW50ZXIgc2ljaCBoYWJlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgKFZhbmlvbiwgMTMuIEphbiAyMDAyLCAxODowNDozNik6CkljaCBhcmJlaXRlIGdyYWQgYWVsdGVyZSBOZXRkaWdlc3QncyBkdXJjaCB1bmQgd2lsbCBldWNoIGRlbiBoaWVyIG5pY2gKdm9yZW50aGFsdGVuOgoKLS0KTmV3c2dyb3VwczogZGUucmVjLnR2Lm1pc2MKU3ViamVjdDogUmU6IFNhZyBSVEwgSUkgZGVpbmUgTWVpbnVuZwoKUlRMIElJIFdlYiBSZXNlYXJjaCBzY2hyaWViOgoKPiBEZXNoYWxiCj4gaGFiZW4gd2lyIHVucyBlbnRzY2hpZWRlbiwgYXVjaCBpbiBkZXIgTWVkaWVuZm9yc2NodW5nIG5ldWUKPiBNZ2xpY2hrZWl0ZW4genUgZXJrdW5kZW4gLSB1bmQgd29sbGVuIGV1Y2ggZGVzaGFsYiBoaWVyIHp1IGV1cmVuCj4gVm9yc3RlbGx1bmdlbiBiZWZyYWdlbi4KPiAKTmVpbiwgZGFzIHdvbGx0IGlociBuaWNodCB3aXJrbGljaC4gRm9sZ2VuZGVyIFppZWxrb25mbGlrdDogSWhyIHdvbGx0IGRpZSAKVm9yc3RlbGx1bmdlbiBlaW5lciBHcnVwcGUgUGVyc29uZW4gKGhpZXI6IFVzZW5ldHRlaWxuZWhtZXIpIGVpbmhvbGVuLCAKZGVyZW4gSVEgZGV1dGxpY2ggdWViZXIgZGVtIGVpbmVzIEdsYXNlcyB3YXJtZXIgTWlsY2ggbGllZ3QgLSBzb21pdCBzaW5kIAp3aXIgZ2FyIG5pY2h0IGRhcyB2b24gUlRMendvIGFuZ2VwZWlsdGUgWmllbHB1Ymxpa3VtLiBCbG9lZCwgb2Rlcj8KClNjaGF1dDogd2VubidzIHp1bSBCZWlzcGllbCBuYWNoIG1pciBnaW5nZSwgd3VlcmRlIGV1cmUgRnJlcXVlbnogYW4gZWluZW4gCmp1bmdlbiwgYXVmc3RyZWJlbmRlbiBSZWdpb25hbHNlbmRlciBuYWNoIElzbGFuZCB2ZXJnZWJlbiB1bmQgZXVyZSAKTW9kZXJhdG9yZW4tSW1pdGF0aW9uZW4gZW4gZ3JvcyBiZWltIG5hZWNoc3RlbiBDYWxsLUNlbnRlciBmdWVyIApTdGV1ZXJzcGFybW9kZWxsZSBhYmdlbGFkZW4uIEFsc28gdHV0IGV1Y2ggc2VsYnN0IGVpbmVuIEdlZmFsbGVuIHVuZCAKc3RlbGx0IGRlcmFydGlnZSBGcmFnZW4gbGllYmVyIGltIFBva2Vtb24tIG9kZXIgQ2xlYXJhc2lsLVdlYmZvcnVtOyBkaWUgCktpZGRpZXMgZG9ydCBzaW5kIGtvb3BlcmF0aXZlciB1bmQgaGFiZW4gYmVzdGltbXQgYXVjaCBzY2hvbiBlaW5lIE5vLQpBbmdlbHMtQ0QgZ2VrYXVmdC4KCkFlaCwgdW5kIGFjaCBqYSwgd28gaWhyIE1hcmtldGluZ2tvcnlwaGFlZW4gZ3JhZCcgZGEgc2VpZDogTmFlY2hzdGVzIE1hbCAKbGFzc3QgaWhyIGJpdHRlIG5pY2h0IGRpZSBNZWRpemluIHN0dWRpZXJlbmRlIFNlbWVzdGVyZmVyaWVuYXVzaGlsZnNrcmFmdCAKdWViZXIgQmFuZG5hbWVuIGVudHNjaGVpZGVuLCBvaz8gIkJyb1NpcyIga2xpbmd0IGVpbmZhY2ggaXJnZW5kd2llIApwc2NoeXJlbWJlbHZlcmRhZWNodGlnIG5hY2ggQnJvbmNoaWFsa2Fyemlub20uIEVjaHQgamV0enQuCgpOaXggZnVlciB1bmd1dCwKU3RlcGhhbgotLQpWKiwgaGFlbHQgc2ljaCBkZW4gQmF1Y2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogR29sZG11ZW56ZW4tRVVSTy1ETS1CYXJnZWxkLVVtdGF1c2NoLi4uLiAoUWl0ZXNzLCAxMy4gSmFuIDIwMDIsIDE4OjU3OjA2KToKfiMhIHJuPURlZXBibHVlIHJ0PTEwMTA1NzcyMTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEwMzUyNTkzCmRpZSBrbGVpbnN0ZSBtdWVuemUgaXRhbGllbnMgaXN0eiBtZWluZXIgc3BhcmJ1ZWNoc2UgenVmb2xnZSAxMCBsaXJlLgpRSSoqClAuUy46IGthbm4gYWJlciBhdWNoIHNjaG9uIHNlaW4sIGRhc3Mgc2llIGVudHdlcnRldCB3dXJkZSwgd2FzIGljaCBtaXIgYWJlcgphdWNoIG5pY2h0IHZvcnN0ZWxsZW4ga2Fubi4gaXN0IGF1ZiBhbGxlIGZhZWxsZSB2b24gbGFuZ2UgbmFjaCBkZW0ga3J1aWVnLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogWnVyIFdhZWhydW5nc3JlZm9ybSAoUm9uZGEsIDEzLiBKYW4gMjAwMiwgMTg6NTk6MTIpOgp+IyEgcm49TGluZmxhcyBydD0xMDEwODQ2OTk3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDEwNDk4NjczCkhtLiBTdGF0aXN0aWtlbiB1ZWJlciBkYXMgS2F1ZnZlcmhhbHRlbi4gQnJhdWNoZW4gd2lyIGRpZSBuaWNodCBhdWNoIGltIE1HPyEKV2FlcmUgZGFzIG5pY2h0IG9wdGltYWwsIHVtIGRpZSBLdW5kZW5iaW5kdW5nIHp1IGVyaG9laGVuPyBEaWUKU2xhc2gtQmFjay1DYXJkOiBXZXIgemVobm1hbCBSb2JpbiBraWxsdCwgYmVrb21tdCBkZW4gbmFlY2hzdGVuIGdyYXRpcyBkYXp1PwpEZXIgS25laXBlbndpcnQgaW4gZGVyIFp3ZXJnZW5rbmVpcGUgd2Vpc3Mgc2Nob24sIHdhcyBEdSBpbW1lciBiZXN0ZWxsc3Q/IERhc3MKRHUgaW1tZXIgd2VubiBEdSBtaXQgUm9iaW4gcnVtcHJ1ZWdlbHN0IHdhcyBhbmRlcmVzIGJlc3RlbGxzdCBhbHMgc29uc3QgLSB1bmQKZGFuYWNoIGltbWVyIHp1bSBIYWVuZGxlciBpbiBkZXIgWndlcmdlbnN0YWR0IGxhZXVmc3QsIHVtIFJvYmlucyBLcmFtIHp1CnZlcmthdWZlbj8KClJvbmRhICpmdWVyIGdhbnogc3BlemllbGxlIFN0YXRzIGltIE1HIDstKSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGZhcmJlbmZyb2hlcyBNdWQgKE5hZGRsLCAxNC4gSmFuIDIwMDIsIDE1OjE5OjI2KToKfiMhIHJuPVphcm5peWEgcnQ9MTAxMDk5NzY1MCByZz1kLmViZW5lCn4jISB0aWQ9MTAxMDY5MDAxMQpUeXBvLiBCaXR0ZSBub2NobWFsIHJpY2h0aWcgaW4gZHJlaWZhY2hlciBBdXNmdWVocnVuZy4gQXVzc2VyZGVtIHZlcnN1Y2h0ZQpJcm9uaWUga2VubnplaWNobmVuLCB3ZW5uIGJlYWJzaWNodGlndC4KCmkuQS4gR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BpZWxlciEgOykgKE11cGZlbCwgMTQuIEphbiAyMDAyLCAyMjozODowNyk6CkRlaW4gRnJldW5kIFpvb2sgdGVpbHQgRGlyIG1pdDogSmEsIFNwaWVsZXIgd29sbGVuIGRhcy4gTmV1ZSBOUENzLgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogbmVpbiBuaWNodCBkaXJla3QuIHNwaWVsZXIgd29sbGVuIG5ldWUsCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiAqa2lsbGJhcmUqIG5wY3MgbWl0IGd1dGVuIHNhY2hlbiBkYWJlaSBvZGVyCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiB3ZW5pZ3N0ZW4gc3R1cHNlbgpEZWluIEZyZXVuZCBXb29keSB0ZWlsdCBEaXIgbWl0OiBNdXBmZWw/IFdhbm4gd2Fyc3QgRHUgenVsZXR6dCBTcGllbGVyPyA7bykKVmFyZGlvbiB0ZWlsdCBEaXIgbWl0OiBkYXMgaGFzdCBkdSBndXQgZXJrYW5udCA6LSkgd2VtIGF1Y2ggaW1tZXIgZHUKVmFyZGlvbiB0ZWlsdCBEaXIgbWl0OiBnZWFudHdvcnRldCBoYXN0IDspCgouLi5zaW5kIGRvY2ggaW1tZXIgd2llZGVyIGFuZGVycyA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlaWEuIChWYW5pb24sIDE0LiBKYW4gMjAwMiwgMjM6Mjg6MDEpOgpHcmFkIGluIGVpbmVtIERldmVsb3Blci1Gb3J1bSB2b24gUmVkSGF0IGdlZnVuZGVuOgoKc29ycnkgaWYgaHRpcyBpcyBhIHJlcG9zdCAKCmlzIHRoZXJlIGFueSBDIGNvbXBpbGVyIG91dCB0aGVyZSBmb3IgbGludXg/IGFtIHNwb2lsZWQgYnkgdGhlIG1pY3Jvc29mdAp2aXN1YWwgYyBzdHVkaW8gd2hpY2ggaGFkIHRoZW0gYWxsIChlZGl0b3IsIGNvbXBpbGVyLCBkZWJ1Z2dlciwgZWN0KSByb2xsZWQgdXAKaW50byBvbmUgbmVhdGx5IGludGVyZ3JhdGVkIEdVSSBwYWNrYWdlLiAKLS0KViosIHNjaHVldHRlbHQgc2ljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWlhLiAoR3JpbW1ib3JuLCAxNC4gSmFuIDIwMDIsIDIzOjM2OjEzKToKfiMhIHJuPVZhbmlvbiBydD0xMDExMDQ3MjgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMTA0NzI4MQpUamEsIGRpZSBEQVUtV2VsbGUgaXN0IG5pY2h0IGF1Znp1aGFsdGVuLiBBYmVyIGRhcyBpc3Qgd2lya2xpY2ggZWluIHNjaG5pZWtlcwpCZWlzcGllbCBkYWZ1ZXIuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZWlhLiAoUGF0cnluLCAxNC4gSmFuIDIwMDIsIDIzOjM3OjE1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDExMDQ3NzczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMTA0NzI4MQp3b2JlaSB2aXN1YWwgYyBlaWdlbnRsaWNoIGVpbiBiZXNzZXJlciB3dXJmIHZvbiBtcyB3YXIgOikKCi0tIApwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2VpYS4gKE11cGZlbCwgMTQuIEphbiAyMDAyLCAyMzozODowMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMTA0Nzc3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTEwNDcyODEKTnVuamEgd2VubiBtYW4gYmVkZW5rdCBkYXMgbWFuIGZydWVoZXIgKHdlaXNzIG5pY2h0IG9iYmVzIGltbWVyIG5vY2ggc28gaXN0KSAKenUga29tbWVyemllbGxlbiB1bml4ZW4gamVkZXMga2xlaW50ZWlsIGV4dHJhIGthdWZlbiBtdXNzdGUsIGNvbXBpbGVyIGV0YyAuLi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZWlhLiAoR3JpbW1ib3JuLCAxNC4gSmFuIDIwMDIsIDIzOjQ0OjQ3KToKfiMhIHJuPU11cGZlbCBydD0xMDExMDQ3ODgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMTA0NzI4MQpEaWUgR05VLXRvb2xzIGdpYnRzIGVpZ2VudGxpY2ggZnVlciBqZWRlcyBrb21tZXJ6aWVsbGUgVW5peC4gR3JhdGlzLiBXZW5uCmVpbmVtIGRlciBnY2Mgei5CLiBuaWNodCBwYXNzdCBrYW5uIGRhcyBuYXR1ZXJsaWNoIHRldWVyIHdlcmRlbiwgamEuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdlaWEuIChIdW1uaSwgMTUuIEphbiAyMDAyLCAxMjozMTozMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMTA0ODI4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTEwNDcyODEKQWxzbyBkaWUgRnJhZ2UgZmFuZCBpY2ggdHJvdHpkZW0gdG9sbC4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1QQT8gKERlZXBibHVlLCAxNi4gSmFuIDIwMDIsIDEyOjU2OjIzKToKfiMhIHJuPUJhbWJpIHJ0PTEwMTExNzkyMjkgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTExMDI1NTQKQmVzb25kZXJlIFJ1YnJpa2VuIGZ1ZXIgTGV1dGUsIGRpZSBlaW5lbiAibnVyIGR1cmNoIGhlcmF1c3JhZ2VuZGUgTGVpc3R1bmdlbgplcmJyaW5nYmFyZW4gTGV2ZWwiIGhhYmVuPwpEaWUgUnVicmlrIGdpYnQgZXMgZG9jaCwgbmVubnQgc2ljaCAiZXJ6bWFnaWVyIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2VpYS4gKE11YWRpYiwgMTYuIEphbiAyMDAyLCAxNjozOTowNik6Cn4jISBybj1IdW1uaSBydD0xMDExMDk0MjkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMTA0NzI4MQphbHNvIGljaCBtYWcgbmVhdCBpbnRlZ3JhdGVkIEdVSXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWFsIHdpZWRlciB3YXMgbmV1ZXMgLi4uIGFiZXIgbmljaHQgdm9uIG1pciAoQ3JvZnQsIDE3LiBKYW4gMjAwMiwgMTg6NDQ6MDkpOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDExMjg5MTk0IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwMTEyODg5MzEKR2FueiBlaW5mYWNoOiBBbmF0b2wgaGF0IEJvaW5nIGdlc3Rlcm4gYW5nZXJ1ZmVuIHVuZCBpaG0gZGFzIE9iamVrdCBaZWlsZQpmdWVyIFplaWxlIGRpa3RpZXJ0LiAgQm9pbmcgaGF0IGRhcyBkYW5uIHNvcmdmYWVsdGlnIGhpZXIgZWluZ2V0aXBzZWx0CnVuZCBkYW5uIGhpZXIgYW5nZXNjaGxvc3Nlbiwgd2VpbCBBbmF0b2wgZGFzIGphIG5pY2h0IGthbm4uICBTbyBlaW5mYWNoCmlzdCBkYXMuCkdydXNzIENyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNYWwgd2llZGVyIHdhcyBuZXVlcyAuLi4gYWJlciBuaWNodCB2b24gbWlyIChXaGl0ZXRpZ2VyLCAxNy4gSmFuIDIwMDIsIDE4OjQ1OjI1KToKfiMhIHJuPUNyb2Z0IHJ0PTEwMTEyODk0NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExMjg4OTMxCnVuZCB3b2hlciBoYXQgYW5hdG9sIGRpZSBscGMta2VubnRuaXNzZT8KV1QgKG5ldWdpZXJpZykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1hbCB3aWVkZXIgd2FzIG5ldWVzIC4uLiBhYmVyIG5pY2h0IHZvbiBtaXIgKENyb2Z0LCAxNy4gSmFuIDIwMDIsIDE4OjQ1OjQ1KToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTAxMTI4OTUyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTEyODg5MzEKRXMgZ2lidCBub2NoIGFuZGVyZSBNdWRzIGRhIGRyYXVzc2VuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTWFsIHdpZWRlciB3YXMgbmV1ZXMgLi4uIGFiZXIgbmljaHQgdm9uIG1pciAoQm9pbmcsIDE3LiBKYW4gMjAwMiwgMTg6NDU6NTUpOgp+IyEgcm49Q3JvZnQgcnQ9MTAxMTI4OTU0NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTEyODg5MzEKRWNodD8KV293IQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNYWwgd2llZGVyIHdhcyBuZXVlcyAuLi4gYWJlciBuaWNodCB2b24gbWlyIChFbGJlcmV0LCAxNy4gSmFuIDIwMDIsIDE4OjQ2OjEzKToKfiMhIHJuPUJvaW5nIHJ0PTEwMTEyODk1NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExMjg4OTMxCmljaCBrYW5uIGF1Y2ggbmVuIGJpc3NlbCBscGMgb2huZSBqZSBpcmdlbmR3byBtYWdpZXIgZ2V3ZXNlbiB6dSBzZWluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBNYWwgd2llZGVyIHdhcyBuZXVlcyAuLi4gYWJlciBuaWNodCB2b24gbWlyIChWYXJsYXJpb24sIDE3LiBKYW4gMjAwMiwgMTg6NDk6MjMpOgp+IyEgcm49RWxiZXJldCBydD0xMDExMjg5NTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMTI4ODkzMQpVaSwgREFTIGhhdCBlciBkaXIgZGlrdGllcnQsIEJvaW5nPyA6bykKClZhcmwqLCBzY2h1ZXR0ZWx0IEFuYXRvbCBncmF0dWxpZXJlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1hbCB3aWVkZXIgd2FzIG5ldWVzIC4uLiBhYmVyIG5pY2h0IHZvbiBtaXIgKEdvciwgMTcuIEphbiAyMDAyLCAyMToyNjo1Nyk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwMTEyODk1MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExMjg4OTMxCk11c3MgbWFuIHp1bSBQcm9ncmFtbWllcmVuIEtlbnRuaXNzZSBiZXNpdHplbj8gfTstKQoKR29yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNYWwgd2llZGVyIHdhcyBuZXVlcyAuLi4gYWJlciBuaWNodCB2b24gbWlyIChDdWNodWxsaW4sIDE3LiBKYW4gMjAwMiwgMjI6Mzk6MjEpOgp+IyEgcm49R29yIHJ0PTEwMTEyOTkyMTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExMjg4OTMxCkR1IGhhc3QgdW5zIGphIGdlemVpZ3QsIGRhc3MgbmljaHQuLi4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgKEdyaW1tYm9ybiwgMTcuIEphbiAyMDAyLCAyMzo0MjoyOSk6CkZyb206IFJvbGYgQm9tYmFjaCA8cm9sZi5ib21iYWNoQHBzaS5jaD4KTmV3c2dyb3VwczogZGUuc2NpLmNoZW1pZQpTdWJqZWN0OiBSZTogUHI/ZXJ2YXRpdmUKRGF0ZTogVHVlLCAxNSBKYW4gMjAwMiAwOToxNDoxOSArMDEwMAoKUGV0ZXIgUHJ1Y2tlciB3cm90ZToKPiAKPiBOYWNoIGRlbSBhbHRlbiBTY2h3ZWl6ZWVyIFdpdHogYXVzIGRlciBHdW1taXdhcmVuZmFicmlrOgoKKEJ1dXVoISBBdXNzZXJkZW0gaGVpc3N0IGRhcyBzY2h3ZWl6ZXJpc2NoLCB1bmQgV2l0emUKbWFjaGVuIHdpciBvaG5laGluIG5pY2h0LikKIAo+IFVuZCB3YXMgbWFjaGV0IFNpZSBoaW50ZXIgZGllc2VyIEdlaGVpbXR1ZXI/Cj4gUHNzdCwgZGEgbWFjaGV0IHdpciBMb2VjaGxpIGluIGRpZSBWZXJodWV0ZXJsaSwgZGFtaXQgZGVyIEFic2F0eiB2b24KPiBkaWUgU2NobnVsbGVybGkgbmljaHQgenVydWVja2dlaHQgLi4uCiAKRXMgZ2lidCBzcGV6aWVsbGUgTGFzZXJhbmxhZ2VuLCB3ZWxjaGUgbWlrcm9za29waXNjaGUKTG9lY2hlciBpbiBiZXNhZ3RlcyBEaW5nc2J1bXMgKGdlbmF1ZXIgZWlnZW50bGljaCBCdW1zZGluZ3MgOi0pKQpzY2hpZXNzZW4uIFNwZXJtaWVuIGdlaGVuIGRhIG5pY2h0IGR1cmNoLCBhYmVyIGVzIGlzdAoocmVsaWdpb25zLSlwb2xpdGlzY2gga29ycmVrdC4gRGFzIGlzdCBkZXIganVlZGlzY2hlIFNpbm4KZnVlciBSZWFscG9saXRpaywgZGVyIG5pZSBiaXMgUm9tIGR1cmNoZHJpbmdlbiB3aXJkLgoKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTWFsIHdpZWRlciB3YXMgbmV1ZXMgLi4uIGFiZXIgbmljaHQgdm9uIG1pciAoUHVrLCAxOC4gSmFuIDIwMDIsIDAwOjM1OjE4KToKfiMhIHJuPUJvaW5nIHJ0PTEwMTEyODk1NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExMjg4OTMxCkJMQVNQSEVNSUUgISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTUEFNIChHcmltbWJvcm4sIDE4LiBKYW4gMjAwMiwgMDk6MjM6MTEpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDExMzQxODU5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTAxMTMzODM0NQpJbnRlcmVzc2FudGUgZGV2aWNlcyBoYXN0IER1IGF1ZiBEZWluZW0gUmVjaG5lci4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNYWwgd2llZGVyIHdhcyBuZXVlcyAuLi4gYWJlciBuaWNodCB2b24gbWlyIChBcmssIDE4LiBKYW4gMjAwMiwgMTA6NTY6MTIpOgp+IyEgcm49R29yIHJ0PTEwMTEyOTkyMTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExMjg4OTMxCkpvLCBiaW4gYXVjaCBlaW4gTFBDIE1vZGVzdCBNdXNzb3Jnc2tpai4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBNYWwgd2llZGVyIHdhcyBuZXVlcyAuLi4gYWJlciBuaWNodCB2b24gbWlyIChXb29keSwgMTguIEphbiAyMDAyLCAxMzoyMjozNCk6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTAxMTI4OTc2MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTEyODg5MzEKV2VubiBBbmF0b2wgQm9pbmcgZGFzIGRpa3RpZXJ0IGhhdCwgd2VyIGlzdCBkYW5uIGRlciBJbmZvcm1hdGlrZXIKdW5kIHdlciBkZXIgUHJvZ3JhbW1pZXJza2xhdmU/IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOikgKFNjaG5hcHMsIDE4LiBKYW4gMjAwMiwgMTM6Mzg6MTgpOgpEdSBvZWZmbmVzdCBkZW4gU2FyZywgdW5kIGVpbiBzZWx0c2FtIGF1c3NlaGVuZGVzIFdlc2VuIHNwcmluZ3QgaGVyYXVzIQoKSW1kYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKU2NobmFwcyBkZW5rdCAuIG8gTyAoIEFBQUFIIGphISkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnphdWJlcmVyZ2lsZGUgYXVmIGFid2VnZW4gKE11YWRpYiwgMTguIEphbiAyMDAyLCAxMzo1MjowNCk6CnppdGF0IGNyb2Z0OiB3ZW5uIGR1IHdhcyB1ZWJlciBkaWUgemF1YmVyZXJnaWxkZSB3aXNzZW4gd2lsbHN0IGRhbm4gZmluZ2VyIGFyawpnYW56IHVudGVuLgoKaGF0IHNpY2ggZGVyIGZva3VzIGRlciBnaWxkZSBzb29vIHN0YXJrIHZlcnNjaG9iZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogemF1YmVyZXJnaWxkZSBhdWYgYWJ3ZWdlbiAoR3JpbW1ib3JuLCAxOC4gSmFuIDIwMDIsIDEzOjUzOjQzKToKfiMhIHJuPU11YWRpYiBydD0xMDExMzU4MzI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMTM1ODMyNApXaWVzbywgSmFtbWVyZ2lsZGUgd2FycyBkb2NoIGltbWVyc2Nob24uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHphdWJlcmVyZ2lsZGUgYXVmIGFid2VnZW4gKEFyaywgMTguIEphbiAyMDAyLCAxMzo1OTozOCk6Cn4jISBybj1NdWFkaWIgcnQ9MTAxMTM1ODMyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTEzNTgzMjQKQWVlZWhoaGhoLCBhYmVyIGljaCBoYWJlIGRhcyBTTyBuaWUgZ2VzYWd0LCBqYXdvbGwuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB6YXViZXJlcmdpbGRlIGF1ZiBhYndlZ2VuIChDcm9mdCwgMTguIEphbiAyMDAyLCAxNDowMToxOCk6Cn4jISBybj1BcmsgcnQ9MTAxMTM1ODc3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTEzNTgzMjQKSWNoIGF1Y2ggbmljaHQuICBEdSBoYXN0IGRhIGRlZmluaXRpdiBkYXMgS29tbWEgdmVyZ2Vzc2VuLiAgVW5kIGF1c3NlcmRlbQpnaW5ncyB1bSBkaWUgbmV1ZSBHaWxkZSA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHphdWJlcmVyZ2lsZGUgYXVmIGFid2VnZW4gKEJvaW5nLCAxOC4gSmFuIDIwMDIsIDE0OjAyOjMyKToKfiMhIHJuPUNyb2Z0IHJ0PTEwMTEzNTg4Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDExMzU4MzI0ClN0aW1tdCwgaGludGVyICd3aWxsc3QnIGZlaGx0IGVpbiBLb21tYS4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogemF1YmVyZXJnaWxkZSBhdWYgYWJ3ZWdlbiAoQXJrLCAxOC4gSmFuIDIwMDIsIDE0OjA4OjM2KToKfiMhIHJuPUJvaW5nIHJ0PTEwMTEzNTg5NTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExMzU4MzI0Ck1vZWNodGUgbWFsIHdpc3Nlbiwgd2FzIElociBkZW5rdCwgd2FzIGRhYmVpIHJ1bWtvbW10IDteKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHphdWJlcmVyZ2lsZGUgYXVmIGFid2VnZW4gKE11YWRpYiwgMTguIEphbiAyMDAyLCAxNDozOToxMik6Cn4jISBybj1Dcm9mdCBydD0xMDExMzU4ODc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMTM1ODMyNApva29rIGhpZXIgYml0dGU6ICwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHphdWJlcmVyZ2lsZGUgYXVmIGFid2VnZW4gKEdyaW1tYm9ybiwgMTguIEphbiAyMDAyLCAxNDozOTo0OCk6Cn4jISBybj1NdWFkaWIgcnQ9MTAxMTM2MTE1MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTEzNTgzMjQKRGFzIHdhciBtYWwgd2llZGVyIHR5cGlzY2ggbWFlbm5saWNoLiBXZWlzc3QgRHUsIGVzIGtvbW10IGViZW4gYXVjaCBuaWNodAp1bmVyaGVibGljaCBhdWYgZGFzIHRpbWluZyBhbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBaaXRhdDogJ3ZvcmF1c3NpY2h0bGljaGUgRmVydGlnc3RlbGx1bmc6IEp1bmkgMTk5OScgKEJhbWJpLCAxOC4gSmFuIDIwMDIsIDE1OjQxOjIxKToKfiMhIHJuPVNoYWtlZGJlZXIgcnQ9MTAxMTM2NDc3NCByZz1kLmViZW5lCn4jISB0aWQ9MTAxMTM2MzczNQpHaWJzIHp1LCBkYXMgc29sbCBlaW4gQW5zY2hsYWcgYXVmIGRpZSBBYmVudGV1cmVyZ2lsZGUgd2VyZGVuLCBkYW1pdCBkaWUKQmllcnNjaHVldHRsZXIgbWVociBadWxhdWYgYmVrb21tZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBaaXRhdDogJ3ZvcmF1c3NpY2h0bGljaGUgRmVydGlnc3RlbGx1bmc6IEp1bmkgMTk5OScgKExlaWJuaXosIDE4LiBKYW4gMjAwMiwgMTY6MjI6NDIpOgp+IyEgcm49QmFtYmkgcnQ9MTAxMTM2NDg4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTEzNjM3MzUKZmluZGUgaWNoIG5lIGd1dGUgaWRlZQpkYW5uIGdpYnRzIGVuZGxpY2ggbWVociBhbmhhZW5nZXIgZGVzICdSVUVMUFNFIFNQUlVDSCBGVUVSIFNDSFVFVFRMRVInCmZhZWhuY2hlbnMKCnVuZCB2aWVsbGVpY2h0IHBhc3NpZXJ0IGRhbm4gYXVjaCBtYWwgd2FzLi4uLgoKCmxlaWJpIC0gZWluc2FtZSBiaWVyc2NodWV0dGxlcmluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBaaXRhdDogJ3ZvcmF1c3NpY2h0bGljaGUgRmVydGlnc3RlbGx1bmc6IEp1bmkgMTk5OScgKERhcmlhLCAxOC4gSmFuIDIwMDIsIDE3OjEzOjU5KToKfiMhIHJuPUxlaWJuaXogcnQ9MTAxMTM2NzM2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTEzNjM3MzUKQWVobS4uLiB3byBnaWJ0cyBkYXMgRmFlaG5jaGVuPwpEYXJpYSB3aWxsIGF1Y2ggd2VkZWxuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VubiBtYW4gc2Nob24gbWFsIGdyYW1tYXRpa2FsaXNjaCBrb3JyZWt0IHNlaW4gd2lsbC4uLiAoRGFyaWEsIDE4LiBKYW4gMjAwMiwgMjE6MDI6MzgpOgpTdGVpbmViZW5lLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogc3VlZGVuLgpFaW4gVHJvbGwuCkVpbiBUcm9sbC4KPnRvZXRlIHRyb2xsZQpEdSBzaWVoc3QgaGllciBrZWluIGRlcmFydGlnZXMgV2VzZW4hCgoqZ3JpbnMqCkRhcmlhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3dhcyA6bykgKEZvb2JhciwgMTguIEphbiAyMDAyLCAyMjo1MzowOSk6CltUb2Q6TGFyc10gRWluIEh5ZHJhd29scGVydGluZ2VyIGhhdCBnZXJhZGUgR3J1bXBmIHVtZ2VicmFjaHQuCltUb2Q6RWluIEh5ZHJhd29scGVydGluZ2VyXSBXZXIgd2FycyBkZW5uIG51bj8gRGVyIFdpZGRlci0sIERhY2hzLSwgR2FlbnNlLC0KW1RvZDpFaW4gSHlkcmF3b2xwZXJ0aW5nZXJdIEZsZWRlcm1hdXMtLCBSdWVzc2VsdGllci0sIEx1Y2hzLSwgTGliZWxsZW4tLApbVG9kOkVpbiBIeWRyYXdvbHBlcnRpbmdlcl0gRmlzY2hvdHRlci0sIFdhc2NoYmFlci0sIFJlaWhlci0sIEVpY2hob2VybmNoZW4tCltUb2Q6RWluIEh5ZHJhd29scGVydGluZ2VyXSBvZGVyIFBvbGFyZnVjaHNrb3BmPyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApEdSBlcnN0YXJyc3Qgdm9yIEVocmZ1cmNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldGRpZ2VzdCAoRm9vYmFyLCAxOS4gSmFuIDIwMDIsIDAxOjMxOjI1KToKRnJvbTogbWlrZUBmaXJld2lyZS1nZWhhZXVzZS5kZSAoTWlrZSBOb2x0ZSkKTmV3c2dyb3VwczogZGUuY29tcC5zeXMubWFjLnNvYwpTdWJqZWN0OiBSZTogRGllIExlaWRlbiBkZXMuLi4uIGVpbiBVbXN0aWVnc2JlcmVpY2h0IFRlaWwgMQpEYXRlOiBNb24sIDE0IEphbiAyMDAyIDE0OjMyOjMyICswMTAwCk1lc3NhZ2UtSUQ6IDwxZjYwNzZuLnMyOWV1MzE0ZWp3M3BOQHd3dy5maXJld2lyZS1nZWhhZXVzZS5kZT4KClJhbHBoIEEuIFNjaG1pZCwgREc1TUVDIDxub3NwYW1AZGc1bWVjLmRlPiB3cm90ZToKCj4gV2VubiBpY2ggei5CLiBlaW5lIFByb2dyYW1taWVyLURva3UgZnVlciBlaW4gRnVua2dlcmFldCBhbmZvcmRlcmUsIHVuZCBkaWUKPiBrb21tdCBpbiAuZG9jLCBkYW5uIGthbm4gaWNoIGRhIG5peCBnZWdlbiBtYWNoZW4gLSBhdXNzZXIsIGljaCBsYXNzZSBtaXIKPiBkaWUgZ2VkcnVja3RlIFZlcnNpb24gYXVmIFBhcGllciBzY2hpY2tlbiwKCkR1IGthbm5zdCBBYnNlbmRlciB2b24gV29yZC1Eb2t1bWVudGVuIF9pbW1lcl8gYXVmCjxodHRwOi8vd3d3LnN1Ym90bmlrLm5ldC9taXNjL2RvYy5odG1sPiBoaW53ZWlzZW4uCgpVbmVpbnNpY2h0aWdlIGxhc3NlIGljaCByZWdlbG1hZXNzaWcgaW4gZWluZSBGYWxsZSBsYXVmZW4uIGhpZXIgZGllCkt1cnpmb3JtIGRlcyB0eXBpc2NoZW4gQWJsYXVmczoKCldpbkRBVTogSWNoIHNjaGlja2UgZXMgSWhuZW4gYWxzIFdvcmQtLkRPQy4KSWNoOiBJY2ggYWt6ZXB0aWVyZSBhdXMgU2ljaGVyaGVpdHNncnVlbmRlbiBrZWluZSBXb3JkLURva3VtZW50ZS4gQml0dGUKc2VuZGVuIFNpZSBSVEYsIFBERiwgPGlyZ2VuZHdhcyBhbmRlcmVzIHBhc3NlbmRlcz4uCldpbkRBVTogSWNoIGthbm4gbnVyIFdvcmQtLkRPQyBzZW5kZW4/CkljaDogSGFsdGVuIFNpZSBXb3JkLURva3VtZW50ZSBmdWVyIHZvZWxsaWcgc2ljaGVyIHVuZCBwcm9ibGVtbG9zPwpXaW5EQVU6IEphLgpJY2g6IERhbm4gaGFiZW4gU2llIHNpY2hlciBrZWluIFByb2JsZW0gZGFtaXQsIGVpbmUgU2ljaGVyaGVpdHNlcmtsYWVydW5nCnp1IHVudGVyemVpY2huZW4sIGRpZSBtaXIgZ2FyYW50aWVydCwgZGFzcyBpY2ggYXVmZ3J1bmQgZWluZXMgdm9uIElobmVuCmVtcGZhbmdlbmVuIFdvcmQtRG9rdW1lbnRzIGtlaW5lcmxlaSBTY2hhZWRlbiBlcmxlaWRlbiBrYW5uLCB1bmQgZGllCnZvcnNpZWh0LCBkYXNzIFNpZSBpbSBTY2hhZGVuc2ZhbGwgbmVic3QgU2NoYWRlbmVyc2F0enphaGx1bmcgZWluZQpLb252ZW50aW9uYWxzdHJhZmUgaW4gSG9laGUgdm9uIERNIDEwMDAwLC0gWzFdIHp1IHphaGxlbiBoYWJlbi4KV2luREFVOiBXZWxjaGUgYW5kZXJlbiBGb3JtYXRlIHdhcmVuIGRhcyBnbGVpY2gsIGRpZSBpY2ggSWhuZW4gc2NoaWNrZW4Ka2Fubj8KCktvbWlzY2hlcndlaXNlIGhhdCBkYW5hY2ggbm9jaCBuaWUgamVtYW5kIGRhcmF1ZiBiZXN0YW5kZW4gZWluIFdvcmQtLkRPQwp6dSBzZW5kZW4uCgpHcnVzcywKTWlrZSBOb2x0ZQoKWzFdIEluendpc2NoZW4gd3VlcmRlIGljaCBhbHMgV2FlaHJ1bmcgbmF0dWVybGljaCBFdXJvIGFuZ2ViZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0ZGlnZXN0IHp1bSBad2VpdGVuIChGb29iYXIsIDE5LiBKYW4gMjAwMiwgMDE6Mzc6MDApOgpGcm9tOiBSYWxmIFJhbWdlIDxyYWxmQGh1bXB0eS5pbmthLmRlPgpOZXdzZ3JvdXBzOiBkZS5hbHQuc3lzYWRtaW4ucmVjb3ZlcnkKU3ViamVjdDogUmU6IFB1dHpmcmF1ZW4gdW5kIGFuZGVyZSBVbmdlaGV1ZXIKRGF0ZTogTW9uLCAxNCBKYW4gMjAwMiAxNjowNjo0MSArMDEwMApNZXNzYWdlLUlEOiA8c2xybmE0NXN2di5iY3IucmFsZkBhbGNhdHJhei5odW1wdHkuaW5rYS5kZT4KCk1hdHRoaWFzIEp1Y2hlbSA8c28zQGFyY2hpbWVkLm1hdGgudW5pLW1hbm5oZWltLmRlPiBzY2hyaWViOgoKPiAgV2FzIG1hY2h0IG1hbiwgd2VubiBSYXVtcGZsZWdlcmlubmVuIGFsaWFzIFB1dHpmcmF1ZW4gZWluZmFjaCBuaWNodCBkYXMgCj4gIG1hY2h0LCB3YXMgbWFuIGlobmVuIHNhZ3Q/CgpWb3IgZWluaWdlciBaZWl0IGlzdCBtYWwgZWluIFB1dHptZW5zY2gga3JlaWRlYmxhc3MgYXVzIG1laW5lbSBCdWVybwpyYXVzZ2V3ZXR6dCB1bmQgaGF0ICJJY2ggd2FyJ3MgbmljaHQsIGljaCBoYWInIG5pY2h0cyBnZW1hY2h0IgpnZXN0YW1tZWx0LiBXaWUgZGVyIFp1ZmFsbCBlcyBzbyB3aWxsIHdhciBpY2ggYXVmJ3MgS2xvIHZlcnNjaHd1bmRlbgp1bmQganVzdCBpbiBkZW0gQXVnZW5ibGljaywgYWxzIGVyIGRhcyAoYXVmIGRlbSBUaXNjaCBzdGVoZW5kZSkgUmVjaG5lci0KZ2VoYWV1c2UgYWJ3aXNjaHRlLCBsaWVmIGF1ZiBkZW0gZGlyZWt0IGRhbmViZW4gYmVmaW5kbGljaGVuIE1vbml0b3IKZGVyIFNjcmVlbnNhdmVyIGxvcywgTWF0cml4IHN0eWxlLCBkZXIgbWl0IGRlbiBwdXJ6ZWxuZGVuIEJ1Y2hzdGFiZW4uCgpJY2ggaGFiJ3MgZGFubiAibXVlaGV2b2xsIHJlcGFyaWVydCIsIGlobSBlcnN0IG5hY2ggZWluZXIgd2VpdGVyZW4gWmlnYXJldHRlbi0KcGF1c2UgbWl0Z2V0ZWlsdCwgZGFzcyBlciBub2NobWFsIEdsdWVjayBnZWhhYnQgaGF0IHVuZCBzZWl0IGRpZXNlbQpaZWl0cHVua3QgaGF0IGVyIHVtIG1laW5lbSBUaXNjaCBlaW5lbiBncm9zc2VuIEJvZ2VuIGdlc2NobGFnZW4uIE51cgpTdGF1YnNhdWdlbiB0cmF1dGUgZXIgc2ljaCBub2NoLCB3ZWlsIGRlciBSZWNobmVyIGphIGF1ZiBkZW0gVGlzY2gKc3RhbmQgdW5kIG5pY2h0IGRydW50ZXIuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG1tbW0gKmdydWViZWwqIChSb2xhbmQsIDE5LiBKYW4gMjAwMiwgMTk6NTA6NDQpOgoKCmJlc2NoaW1wZmUgZWNoc2UKCkR1IHNjaGltcGZzdDogTWl0IERlaW5lciBGcmVzc2UgZ2Vob2Vyc3QgRHUgaW4gZGllIFNjaHJlY2tlbnNzcGl0emUhCgo+IE1vZXJkZXI6RmxhdXJvcyBTY2huYXV6ZQoKRHUgZ3JpbnN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1QQSAoTGlhcmEsIDE5LiBKYW4gMjAwMiwgMjE6MDI6MDApOgp+IyEgcm49TGlhcmEgcnQ9MTAxMTQ3MDI0MyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxMTQ3MDI0MwpOb2Nod2FzIC4uLgpEZWluIEZyZXVuZCBWYXJsYXJpb24gdGVpbHQgRGlyIG1pdDogendlcmdpbm5lbiBzb2xsbiBhdXNzZWhlbiwgd2llIHNjaHd1bGUsCkRlaW4gRnJldW5kIFZhcmxhcmlvbiB0ZWlsdCBEaXIgbWl0OiBrbGVpbmUgaXRhbGllbmVyIG1pdCBiYXJ0PyBkYW5uIGhhYiBpY2gKRGVpbiBGcmV1bmQgVmFybGFyaW9uIHRlaWx0IERpciBtaXQ6IG5vY2ggbmllIGluIG1laW5lbSBsZWJlbiBlaW5lIHp3ZXJnaW4KRGVpbiBGcmV1bmQgVmFybGFyaW9uIHRlaWx0IERpciBtaXQ6IGdlc2VoZW4KCipkdW1kaWR1bSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTVBBIChBbWFyeWxsaXMsIDE5LiBKYW4gMjAwMiwgMjE6MDk6MTEpOgp+IyEgcm49TGlhcmEgcnQ9MTAxMTQ3MDUyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTE0NzAyNDMKZGllIHNpZWh0IG1hbiBqYSBhdWNoIG5pY2h0LCBkaWUgbGF1ZmVuIGphIHVudGVyIGRlciBHcmFzbmFyYmUuIEhvZWNoc3RlbnMKcmllY2hlbiBrYW5uIG1hbiBzaWUgLSBkYXMgYWJlciBsYW5nIHVuZCB3ZWl0LgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llIHdhciBkYXMgbWl0IGRlbiBMb2dpa3dvZWxrY2hlbj8gOykgKFpvb2ssIDE5LiBKYW4gMjAwMiwgMjE6NDE6MDIpOgoKPiBmcmFnIHpvb2sgbmFjaCB6b29rCkR1IGZhZW5nc3QgenUgZ3J1ZWJlbG4gYW4uLi4KCgpab29rIGRlbmt0IHdlaXRlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvbiB3ZWdlbi4uLiAoRm9vYmFyLCAxOS4gSmFuIDIwMDIsIDIyOjU3OjMwKToKRGlyIGtudXJydCBkZXIgTWFnZW4uCkR1IGhvZXJzdCBlaW4gR3JvbGxlbi4gRGVyIFZ1bGthbiBpc3QgbWFsIHdpZWRlciBha3Rpdi4gICAgICAgICAgICAgICAgICAgICAgIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgaW0gRWlzbWVlci4uLiAoRWxhaW5lLCAyMC4gSmFuIDIwMDIsIDE1OjIzOjM1KToKRGFya3dpbmcgbmltbXQgc2VpbmUgQXVnZW4gYXVzIGRlbiBIb2VobGVuIHVuZCBsYWVzc3QgZGllc2UgZGFubiBhdWNoIG5vY2ggaW5zCk1lZXIgZmFsbGVuLiBNZWluZSBHdWV0ZSwgd2llIGJlc2NoZXVlcnQga2FubiBtYW4gZWlnZW50bGljaCBzZWluPwpEYXJrd2luZyB6dWVja3QgZWluZSBiaWVnc2FtZSBBbmdlbC4KRGFya3dpbmcgd2lyZnQgYmxpbmRsaW5ncyBlaW5lIEFuZ2VsIGF1cy4KRGFya3dpbmcgaG9sdCBob2NoZXJmcmV1dCBlaW5lIEFuZ2VsIGVpbiwgbmltbXQgZGVuIEZhbmcgdm9tIEhha2VuIHVuZCAKc2V0enQgc2ljaCBkaWVzZW4ga29taXNjaHdlaXNlIGluIGRpZSBBdWdlbmhvZWhsZW4uIApHcnVzZWxuZCB3ZW5kZXN0IER1IERpY2ggYWIuCgpEYXJrd2luZyBzYWd0OiBoYWJzZSB3aWVkZXIgOikKCkVsYWluZSwgc2NoYXVkZXJuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNb3JnZW5ncmF1ZW4tSG9tZXBhZ2UgKEN1Y2h1bGxpbiwgMjAuIEphbiAyMDAyLCAxNzowNjo0Nyk6Cn4jISBybj1CaXJkeSBydD0xMDExNTE4OTk3IHJnPXd3dwp+IyEgdGlkPTEwMTE1MTg5OTcKSGF1cHRzYWNoZSBEVSBsYWVzc3QgZGllIEZpbmdlciB2b24gZGVyIE1HLUhvbWVwYWdlLi4uIGRlbm4gbm9jaCBsZWd0CnNpZSBXZXJ0IGF1ZiBJbmhhbHRlIHVuZCBuaWNodCBhdWYgc2NobGVjaHRlcyBEZXNpZ24uLi4gO28pCgpzY25yLApDdWNoIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaCBHb3R0IC4uLiAoVmFuaW9uLCAyMC4gSmFuIDIwMDIsIDE4OjA2OjI2KToKW0FsbGdlbWVpbjpab29rIGdhZWhudCBkaWUgTVBBIGFuLl0KClYqIG1laW50LCBudSBrYW5uIGVyIHdhcyBsZXNlbiAqZWcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT2ggR290dCAuLi4gKEN1Y2h1bGxpbiwgMjAuIEphbiAyMDAyLCAxODowNjo1Nik6Cn4jISBybj1WYW5pb24gcnQ9MTAxMTU0NjM4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTE1NDYzODYKV0FILCBzbyBmaW5nIGVzIG1pdCBNZWdhc2NobWFycm4gYXVjaCBhbi4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBPaCBHb3R0IC4uLiAoQW5hY3Jpb24sIDIwLiBKYW4gMjAwMiwgMTg6MDg6MDIpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMTE1NDY0MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExNTQ2Mzg2CkljaCBzZXR6ZSBuZSBGbGFzY2hlIGd1dGVuIFdlaW4gYXVzLCBmdWVyIGRlbiBkZXIgZGVuIEFydGlrZWwgc2NocmVpYnQsIG1pdApkZW0gZGVyIFRocmVhZCBpbiBtZWdhc2NobWFycm4gdWViZXJob2x0IHdpcmQgLi4uLiAKCkFuYWMqIC0gc3BlbmRhYmVsIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjAxODA6IE9oIEdvdHQgLi4uIChDdWNodWxsaW4sIDIwLiBKYW4gMjAwMiwgMTg6MDg6NDApOgp+IyEgcm49QW5hY3Jpb24gcnQ9MTAxMTU0NjQ4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTE1NDYzODYKCkhlciBkYW1pdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjAxODE6IE9oIEdvdHQgLi4uIChOYWRkbCwgMjAuIEphbiAyMDAyLCAxODozMTowNSk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAxMTU0NjUyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTE1NDYzODYKQmVzY2hpc3MgLi4uIGFiZXIgZXIgaGF0IG5peCB2b24gUmVnZWxuIGdlc2FndCA6KSBXYXJ1bSBoYWV0dGUgZXIgbmljaHQgbm9jaAoiZnVlciBkaWVqZW5pZ2VuIGRpZSIgc2NocmVpYmVuIGtvZW5uZW4gKmphbW1lciogOykKCmkuQS4gR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWlzZ2lnYW50IG1pdCBIYW1tZXI/IChEZWVwYmx1ZSwgMjAuIEphbiAyMDAyLCAyMTo1MDozOCk6ClVuZ2VzY2huaXR0ZW46CltNb2VyZGVyOkdlaXN0IGVpbmVzIEVpc2dpZ2FudGVuXSBOQUVDSFNURVMgTUFMIE5FSE0gSUNIIERJQ0ggQVVDSCBNSVQsIEFyZXMhIApbVG9kOkxhcnNdIEVpbiBIYW1tZXIgaGF0IGdlcmFkZSBBcmVzIHVtZ2VicmFjaHQuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCkRlZXAqLCBzZWluIHRpZWZzdGVzIE1pdGdlZnVlaGwgYXVzc3ByZWNoZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpdlggKFZhcmxhcmlvbiwgMjAuIEphbiAyMDAyLCAyMzozNTo0OCk6Cn4jISBybj1EYW50ZSBydD0xMDExNTY1MDQxIHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTAxMTU2NTA0MQpXbyBEdSB3b2xsZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiBXYWxkbGFldWZlci4uIChIZWluaSwgMjEuIEphbiAyMDAyLCAwMDozMTo0Mik6CiBEdSBzY2hsYWVnc3QgZWluZW4gV2FsZGxhZXVmZXIgbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KRWluIFdhbGRsYWV1ZmVyIHdpcmQgbnVuIG5pZSBtZWhyIGR1cmNoIGRlbiBXYWxkIGxhdWZlbi4KRWluIFdhbGRsYWV1ZmVyIGxhZXVmdCBoZXJlaW4uCgpBaCBqYS4uIHNvdmllbCBkYXp1IDspCkhlaW5pIGtvbW10IHNpY2ggbGVpY2h0IHZlcmEuLiB2b3IuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBLbGVpbmVyZSBVbXN0ZWxsdW5nZW4uIChWYXJkaW9uLCAyMS4gSmFuIDIwMDIsIDEwOjE5OjI0KToKfiMhIHJuPVBhdHJ5biBydD0xMDExNTkyNzU2IHJnPXBhcnR5Cn4jISB0aWQ9MTAxMTAyNDQyNwpWaWVsbGVpY2h0IGthbm4gbWFuIGphIGJlaSBkZW4gYmV0cmVmZmVuZGVuIEZvdG9zIGRlbiBMZXV0ZW4gZWluZSBTa2ltYXNrZQpkcmF1ZnJldHVzY2hpZXJlbiwgYW5zdGF0dCBzaWUgenUgbG9lc2NoZW4gOi0pCgpWYXJkaW9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGFydHlnYWVzdGUgZ2VzdWNodCEgKENhdHdlYXpsZSwgMjEuIEphbiAyMDAyLCAxNDozMzowMyk6Cn4jISBvbj1LZXkgb3Q9MTAxMTYxOTgwNCBvZz1wYXJ0eQp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMTE2MTU2NjQgcmc9cGFydHkKfiMhIHRpZD0xMDExNjE1NjY0CkFTTU9ESVMhCgpDdQoKS2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBhcnR5Z2Flc3RlIGdlc3VjaHQhIChDYXR3ZWF6bGUsIDIxLiBKYW4gMjAwMiwgMTQ6MzM6MDUpOgp+IyEgb249WmFybml5YSBvdD0xMDExNjE5ODM1IG9nPXBhcnR5Cn4jISBybj1LZXkgcnQ9MTAxMTYxOTgwNCByZz1wYXJ0eQp+IyEgdGlkPTEwMTE2MTU2NjQKQU5EWSA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFBhcnR5Z2Flc3RlIGdlc3VjaHQhIChNdWFkaWIsIDIxLiBKYW4gMjAwMiwgMTQ6Mzk6MDUpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMTE2MTk5ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExNjE1NjY0CndpbGxzdCBkdSBkYXMgd2lya2xpY2ggPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUGFydHlnYWVzdGUgZ2VzdWNodCEgKEtleSwgMjEuIEphbiAyMDAyLCAxNDo0MTozMSk6Cn4jISBybj1NdWFkaWIgcnQ9MTAxMTYyMDM0NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTE2MTU2NjQKKmh1c3QqIFdpZSBaYXJuaXlhIGtvbW10IGF1Y2g/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBQYXJ0eWdhZXN0ZSBnZXN1Y2h0ISAoWmFybml5YSwgMjEuIEphbiAyMDAyLCAxNDo0NDo1NCk6Cn4jISBybj1LZXkgcnQ9MTAxMTYyMDQ5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTE2MTU2NjQKc2ljaGVyIG5pY2h0Li4uLi4gd3VlcmQgamEgZ2VybiwgYWJlciBnZWh0IG5pY2h0LCBlaHJsaWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1QQSAoTGlhcmEsIDIxLiBKYW4gMjAwMiwgMTU6NTE6MzgpOgp+IyEgcm49S2V5IHJ0PTEwMTE2MTg0OTYgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTE0NzAyNDMKSmVkZW5mYWxscyBoYWJlIGljaCAnbmVuIEVsZmVuendlaXRpZS4gOy0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTVBBIChFbGJlcmV0LCAyMS4gSmFuIDIwMDIsIDE1OjUzOjAyKToKfiMhIHJuPUxpYXJhIHJ0PTEwMTE2MjQ2OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDExNDcwMjQzCndlciBuZW4gRWxmZW56d2VpdGllIGhhdCBrYW5uIGtlaW4gZWNodGVyIFp3ZXJnIHNlaW4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNUEEgKE1vbnRhbnVzLCAyMS4gSmFuIDIwMDIsIDE4OjA3OjA3KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAxMTYyNDc4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTE0NzAyNDMKUXVhdHNjaC4KV2VubiBad2VyZ2UgbmVuIEVsZmVuendlaXRpZSBoYWJlbiwgbmVubnQgbWFuIGRhcyAiYXVmIGRlbSBXZWcgenVyIEJlc3NlcnVuZyIuCgpXa0VhLgoKLU1vbnRhbnVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBQYXJ0eWdhZXN0ZSBnZXN1Y2h0ISAoUm9jaHVzLCAyMS4gSmFuIDIwMDIsIDE5OjM4OjA0KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDExNjE5OTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMTYxNTY2NApBbmR5IHdvaG50IGpldHp0IGluIEJlcmxpbiwgYWxzbyB3ZW5uIER1IHdpbGxzdCBsaWVzc2Ugc2ljaApkYXMgYXJyYW5naWVyZW4uLi4gKGJpdHRlIHNhZyBuZWluIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBQYXJ0eWdhZXN0ZSBnZXN1Y2h0ISAoTW9udGFudXMsIDIxLiBKYW4gMjAwMiwgMTk6NDM6MTUpOgp+IyEgcm49Um9jaHVzIHJ0PTEwMTE2MzgyODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExNjE1NjY0CkRvY2gsIEFuZHkgd2FlcmUga3VsdC4gOi0pCkRhbmNlciBtdXNzIGF1Y2gga29tbWVuIHVkbiBzZWluZSBQeXJhbWlkZW4gbWl0YnJpbmdlbi4KVW5kIE9ldHRpLgpVbmQgRHVyaWFuLCBkZXIgYWx0ZSBTYW5kdGlnZXIuIFdlaXNzIGplbWFuZCwgd28gZGVyIGdlcmFkZSBzdGVja3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBQYXJ0eWdhZXN0ZSBnZXN1Y2h0ISAoTmFkZGwsIDIxLiBKYW4gMjAwMiwgMjA6MTc6NTcpOgp+IyEgcm49TW9udGFudXMgcnQ9MTAxMTYzODU5NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTE2MTU2NjQKUnpuZSB1bmQgUnVkaXJhdHRlciBtdWVzc2VuIGF1ZmdldHJpZWJlbiB3ZXJkZW4gOikKCmkuQS4gR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUGFydHlnYWVzdGUgZ2VzdWNodCEgKFR3aW5naSwgMjEuIEphbiAyMDAyLCAyMDozMTozMik6Cn4jISBybj1OYWRkbCBydD0xMDExNjQwNjc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMTYxNTY2NApUb2V0ZXIgd2FlciBhdWNoIG5pY2h0IHNjaGxlY2h0LgpFciBrYW5uIGRlbiBQYXJ0eWJlaXRyYWcgamEgZGFubiBpbiBTeW1ib2xlbiBkZXIgTWFjaHQgYmV6YWhsZW4gOy0pCgpUd2luZ2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFBhcnR5Z2Flc3RlIGdlc3VjaHQhIChXaWxsb3csIDIxLiBKYW4gMjAwMiwgMjA6MzQ6MjcpOgp+IyEgcm49TmFkZGwgcnQ9MTAxMTY0MDY3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTE2MTU2NjQKamF3b2xsamEhIHVuZCBjaGFyb24gdW5kIGNoYW9zIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFBhcnR5Z2Flc3RlIGdlc3VjaHQhIChNb250YW51cywgMjEuIEphbiAyMDAyLCAyMDo1NDoxOSk6Cn4jISBybj1XaWxsb3cgcnQ9MTAxMTY0MTY2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTE2MTU2NjQKSWNoIHdpbGwgUGhhcmFvLCBkZW4gd2ljaHRpZ3N0ZW4gS2FuZGlkYXRlbiBkZXIgZXJzdGVuIGZyZWllbiBTaGVyaWZmd2FobCwKc2VoZW4uIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYmx1ZW1jaGVucGZsdWVja2VyIChQaXRmYWxsLCAyMS4gSmFuIDIwMDIsIDIxOjE0OjIyKToKRXBwaSB6ZXJzY2hsYWVndCBtaXQgc2VpbmVtIDQyMCBXdXJmc3Rlcm5lIGRpZSBHbGFzdml0cmluZW4gdW5kIG1hY2h0IGRhYmVpCmVpbmVuIEhlaWRlbmxhZXJtLgoKCmFoIGphCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBQYXJ0eWdhZXN0ZSBnZXN1Y2h0ISAoUm9uZGEsIDIxLiBKYW4gMjAwMiwgMjM6Mjg6NTIpOgp+IyEgcm49TW9udGFudXMgcnQ9MTAxMTY0Mjg1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTE2MTU2NjQKU28gbmVuIFF1YXRzY2ghIERpZSBlaW56aWcgc3Vlc3NlIE11ZGRlcmluIC0gU0NIUlVNUEZJISBPaG5lIHNpZSBnZWh0IGdhciBuaXghClVuZCBHYXRzYnkgc29sbCBkb2NoIGlyZ2VuZHdvIGltIFJhdW0gQm9lYmxpbmdlbiBzdGVja2VuIDstKQoKUm9uZGEgKndhciBkYW1hbHMgYWJzb2x1dGVzIEdyZWVuaG9ybi4uLioKCkJPSU5HLCBzYWcgbml4IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llIHBhc3NlbmQuLi4gKFZhcmxhcmlvbiwgMjIuIEphbiAyMDAyLCAwMDowMjo1Myk6CltUb2Q6TGFyc10gRWluIEhlaXJhdHNhbnRyYWcgYW4gTGVlbG9vIGhhdCBnZXJhZGUgVmFybGFyaW9uIHVtZ2VicmFjaHQuCgpFaW4gc2VsdHNhbWVzIEdlZnVlaGwgdWViZXJrb21tdCBEaWNoLi4uCkR1IHN0ZWhzdCBpbiBlaW5lbSBrbGVpbmVuIGFiZXIgcHJ1bmt2b2xsZW4gU3BlaXNlc2FhbC4gRWluZSBUYWZlbCwgCmdlZGVja3QgbWl0IGFsbGVybGVpIEtvZXN0bGljaGtlaXRlbiB1bmQgZnVlbmYgR2VkZWNrZW4gKGVpbmVzIGFuIGRlciAKU3Rpcm5zZWl0ZSwgamV3ZWlscyB6d2VpIGxpbmtzIHVuZCByZWNodHMgZGVyIFRhZmVsKSwgc3RlbGx0IHdvaGwgZGVuIFB1bmt0CmRlcyB6ZW50cmFsZW4gR2VzY2hlaGVucyBkYXIuCkR1IHNpZWhzdCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG5vcmRlbi4KTGFycy4KSm9mLgpSb2NodXMgZGllIGxpbmtlIHVuZCBkaWUgcmVjaHRlIEhhbmQgZGVzIFRvZGVzLgpDYXR3ZWF6bC5leGUuCgpKb2YgZ3JhdHVsaWVydCBEaXIuClJvY2h1cyBncmF0dWxpZXJ0IERpci4KQ2F0d2VhemxlIGdyYXR1bGllcnQgRGlyIGhlcnpsaWNoLgpMYXJzIHNhZ3Q6IEljaCBncmF0dWxpZXJlIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTVBBIChHbm9tZSwgMjIuIEphbiAyMDAyLCAxMjozNzoyMCk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMTE2MjQ3ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExNDcwMjQzCndpZXNvPyBlbGZlbiBzaW5kIHRvbGwhCmplZGVyIHp3ZXJnIHNvbGx0ZSBlaW5lbiBiZXNpdHplbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyBtYWwgd2llZGVyLiAoQWhhYiwgMjIuIEphbiAyMDAyLCAxNjoyMDowMyk6CnVuZ2VzY2huaXR0ZW46CgpHYXN0MyB0ZWlsdCBEaXIgbWl0OiBkdSwgaWNoIHN0ZXJiZSBnbGVpY2gKW1RvZDpMYXJzXSBFaW4gR29ibGluIGhhdCBnZXJhZGUgR2FzdDMgdW1nZWJyYWNodC4KCm9mZmVuc2ljaHRsaWNoLi4uCgpBaGFiLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVmcnVmIHp1ciBGbHVjaHQ/IChab29rLCAyMy4gSmFuIDIwMDIsIDEyOjA2OjIxKToKW0thcmxzcnVoZTpNdWFkaWJdIHNvbGwgaWNoIGF1Y2ggbWFsIHNpbmdlbiA/CltCaWVyc2NodWV0dGxlcjpCcnVub10gTUVOU0EhCgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldGRpZ2VzdCAoRm9vYmFyLCAyMy4gSmFuIDIwMDIsIDIzOjE1OjQxKToKQmV0cmlmZnQ6IAogICAgICAgICAgICAgIFtkZS5yZWMuc3BpZWxlLmNvbXB1dGVyLnJwZ10gUmU6IFN1Y2hlLi4uCiAgICAgICBEYXR1bTogCiAgICAgICAgICAgICAgV2VkLCAyMyBKYW4gMjAwMiAxNzowMDowMyArMDAwMCAoVVRDKQogICAgICAgICBWb246IAogICAgICAgICAgICAgIE1pY2hhZWwgSG9mZm1hbm4gPG1oQHNrdWxsYnl0ZS5kZT4KIE9yZ2FuaXNhdGlvbjogCiAgICAgICAgICAgICAgT3JkZW4gZGVyIFRyYW5zemVuZGVueiBbdG1dCiBOZXdzZ3J1cHBlbjogCiAgICAgICAgICAgICAgZGUuYWx0Lm5ldGRpZ2VzdAogRm9sbG93dXAtVG86IAogICAgICAgICAgICAgIGRlLnRhbGsuam9rZXMuZAoKCgoKW0FubWVya3VuZyBkZXMgU3VibWl0dGVyczogUXVvdGluZyBlcndlaXRlcnRdCgpGcm9tOiAiU3RlZmFuIFNhbGNoZW5lZ2dlciIgPHN0ZWZhbi5zYWxjaGVuZWdnZXJAdW5pbGVvYmVuLmFjLmF0PgpOZXdzZ3JvdXBzOiBkZS5yZWMuc3BpZWxlLmNvbXB1dGVyLnJwZwpTdWJqZWN0OiBSZTogU3VjaGUuLi4KRGF0ZTogVHVlLCAyMiBKYW4gMjAwMiAxMjo1MjoyNyArMDEwMApNZXNzYWdlLUlEOiA8YTJqanBwJDVxaCQxQGZzdGdzczAyLnR1LWdyYXouYWMuYXQ+CgoKIlV3ZSBNYXR0bmVyInNjaHJpZWI6Cj4KPiBTdGVmYW4gU2FsY2hlbmVnZ2VyIHdyb3RlOgo+Cj4+ICJCZXJuaGFyZCBCZXllciIgc2NocmllYjoKPgo+Pj4gSWNoIGJpbiBhdWYgZGVyIFN1Y2hlIG5hY2ggZWluZW0gU3BpZWwgZGFzcyBtYW4ga29vcGVyYXRpdiBpbSBMQU4gZ2VnZW4KPj4+IGRlbiBDb21wdXRlciBzcGllbGVuIGthbm4sIGtvZW5udGUgYXVjaCBlaW4gbmV0dGVzIFJQRyBzZWluLCBpY2ggaGFiZQpiaXNoZXIKPj4+IG1pdCBtZWluZXIgRnJldW5kaW4gRGlhYmxvMiBnZXNwaWVsdCwgYWJlciBzbyBsYW5nc2FtIGZldHp0IGVzIG5pY2h0IG1laHIKc28KPj4+IHJpY2h0aWcsIHdlbm4gbWFuIGVyc3QgbWFsIGR1cmNoIGlzdC4uLndhcyBrb2VubnQgaWhyIGFsc28gZW1wZmVobGVuLCBtdXNzCj4+PiBuaWNodCB1bmJlZGluZ3QgZWluIFJQRyBzZWluLCBrYW5uIGF1Y2ggZ2VybmUgUlRTIHNlaW4sIG51ciBhdWYgYmFsbGVybgo+Pj4gc3RlaHQgbWVpbmUgRnJldW5kaW4gbmljaHQgc28gc2Voci4uLgo+Pgo+PiBXaWUgd2FlcmUgZXMgbWl0IEthc3RsIGF1cyB1bmQgaW5zIEJldHQ/Pz8/Pz8KPgo+IERhcyBrb2VubnRlIG1hbiBkb2NoIHByaW1hIG1pdCBycGcga29tYmluaWVyZW4uLi4KCmFiZXIgZGFyYXVmIGFjaHRlbiwgZGFzcyBtYW4gbmljaHQgZGllIGd1bW1pcnVlc3R1bmcgKzEgYnp3LiBkaWUKInRhYmxldHRlCmRlciB2ZXJodWV0dW5nIiB2ZXJnaXNzdCwgc29uc3Qgd2lyZCBkaWUgcGFydHkgc2NobGFnYXJ0aWcgZ3JvZXNzZXIgOy0pCgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprb21pc2NoLi4uLi4gKFphcm5peWEsIDI0LiBKYW4gMjAwMiwgMDk6MzA6MDQpOgpCb2luZyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpTaWx2YW5hIHZlcnd1c2NoZWx0IERlaW5lIEhhYXJlIGF1cyBkZXIgRmVybmUuCgoKTXVzcyBtYW4gZGFzIHZlcnN0ZWhlbj8KTWFyYwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGtvbWlzY2guLi4uLiAoQm9pbmcsIDI0LiBKYW4gMjAwMiwgMDk6MzE6MDkpOgp+IyEgcm49WmFybml5YSBydD0xMDExODYxMDA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMTg2MTAwNApOZWluLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGtvbWlzY2guLi4uLiAoR3JpbW1ib3JuLCAyNC4gSmFuIDIwMDIsIDA5OjMyOjMwKToKfiMhIHJuPUJvaW5nIHJ0PTEwMTE4NjEwNjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExODYxMDA0CkFiZXIgRHUgc29sbHRlc3QgZHJhdWYgdm9yYmVyZWl0ZXQgc2VpbiB1bmQgRGlyIGRhcyBuYWVjaHN0ZSBtYWwgbW9yZ2VucyBkaWUKSGFhcmUgd2FzY2hlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzoga29taXNjaC4uLi4uIChTaWx2YW5hLCAyNC4gSmFuIDIwMDIsIDA5OjQxOjQ3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDExODYxMTUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMTg2MTAwNApEYW5rZSwgc2VociBmdWVyc29yZ2xpY2gsIEdyaW1tYm9ybi4gOikKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBrb21pc2NoLi4uLi4gKEdyaW1tYm9ybiwgMjQuIEphbiAyMDAyLCAwOTo0Mjo1Nyk6Cn4jISBybj1TaWx2YW5hIHJ0PTEwMTE4NjE3MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExODYxMDA0CkphLCBGZXR0IGlzdCBlaW4gZ3V0ZXMgTG9lc2VtaXR0ZWwsIHVuZSB3ZW5uIG1pciBqZW1hbmQgbWl0IGRlbiBGaW5nZXJuIGR1cmNoCm1laW5lIGZldHRpZ2VuIEhhYXJlIGdlaHQgYmVmdWVyY2h0ZSBpY2ggaW1tZXIgZGFzcyBpY2ggZGFubiBkZW4gRHJlY2sgdm9uCnNlaW5lbiBGaW5nZXJuIGltIEhhYXIgaGFiZS4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBrb21pc2NoLi4uLi4gKFNpbHZhbmEsIDI0LiBKYW4gMjAwMiwgMDk6NDU6MjYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTE4NjE3Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExODYxMDA0Ck9jaCwgd2VubiBtZWluZSBGaW5nZXIgZHJlY2tpZyBzaW5kLCBkYW5uIG1laXN0IHZvbiBTY2hva29sYWRlLi4uIERpZSBibGVpYnQKYXVjaCBpbiBmcmlzY2ggZ2V3YXNjaGVuZW4gSGFhcmVuIGdlcm4gaGFlbmdlbi4uLiB9Oy0pCiAgU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjoga29taXNjaC4uLi4uIChOb25uZSwgMjQuIEphbiAyMDAyLCAwOTo0NjoyMSk6Cn4jISBybj1TaWx2YW5hIHJ0PTEwMTE4NjE5MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExODYxMDA0CkRhbm4gbW9lY2h0ZSBpY2ggbmljaHQgc2VoZW4sIHdpZSBEZWluZSBUYXN0YXR1ciBhdXNzaWVodC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BvcnQgaXMgTW9yZCAoT3JrdG9ldGVyLCAyNC4gSmFuIDIwMDIsIDA5OjQ2OjUzKToKCkNodXJjaGlsbCBoYXR0ZSByZWNodC4gV2VyIGVzIG5pY2h0IGdsYXVidDoKCmh0dHA6Ly9uZXdzLmJiYy5jby51ay9zcG9ydC9oaS9lbmdsaXNoL3Rlbm5pcy9hdXN0cmFsaWFuX29wZW4vbmV3c2lkXzE3NzkwMDAvMQo3NzkxMzYuc3RtCgpVbmQgQkJDLW5ld3MgaXN0IGphIG51biB3aXJrbGljaCBzZXJpb2VzICpnKgoKT3JrVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNwb3J0IGlzIE1vcmQgKFphcm5peWEsIDI0LiBKYW4gMjAwMiwgMDk6NTI6MTUpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMTE4NjIwMTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExODYyMDEzCmljaCBoYWIgZGVuIFZvcmZhbGwgaW0gVFYgZ2VzZWhlbi4uLi4gd2FyIHdpdHppZywgdm9yIGFsbGVtIGRpZSBTbG9NbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gd2lsbCBpY2ggZGFzIGhhYmVuLi4uIChBbWFyeWxsaXMsIDI0LiBKYW4gMjAwMiwgMTI6MjY6MzEpOgpEdSB0ZWlsc3QgR29yIG1pdDogaGF1IGFwcApHb3IgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KR29yICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKQW1hKiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWJheSBzcGllbHQgUGluZ3BvbmcuIChWYW5pb24sIDI0LiBKYW4gMjAwMiwgMTk6MjM6NDcpOgp0cmFjZXJvdXRlIHRvIHd3dy5lYmF5LmRlICgyMTYuMzIuMTE0LjI4KSwgMzAgaG9wcyBtYXgsIDM4IGJ5dGUgcGFja2V0cwogMSAgNjIuMjI1LjI0NS40MSAoNjIuMjI1LjI0NS40MSkgIDMzLjgwMiBtcyAgMjguMDM4IG1zICAyOC45NDkgbXMKIDIgIDYyLjIyNS4yNDUuNDIgKDYyLjIyNS4yNDUuNDIpICAyOS41MjEgbXMgIDI3LjY4OSBtcyAgMjYuMzc3IG1zCiAzICA2Mi4xNTQuMTQuMTQ2ICg2Mi4xNTQuMTQuMTQ2KSAgNDA5LjIyOSBtcyAgNDUxLjMxNSBtcyAgMzgwLjcwNyBtcwogNCAgNjIuMTU0LjE0LjE0NSAoNjIuMTU0LjE0LjE0NSkgIDQyOS4yOTggbXMgIDQwNS4xNTUgbXMgIDM5OS4zNzUgbXMKIDUgIDYyLjE1NC4xNC4xNDYgKDYyLjE1NC4xNC4xNDYpICAxMTA3Ljk2NSBtcyAgMTA2My4xNTcgbXMgIDExMjEuNzM4IG1zCiA2ICA2Mi4xNTQuMTQuMTQ1ICg2Mi4xNTQuMTQuMTQ1KSAgMTA5NS4yMzIgbXMgIDEwOTMuNTEyIG1zICoKIDcgIDYyLjE1NC4xNC4xNDYgKDYyLjE1NC4xNC4xNDYpICAxODIzLjQ2OSBtcyAgMTc3OS42MzEgbXMgIDE4MTEuMjY0IG1zCiA4ICA2Mi4xNTQuMTQuMTQ1ICg2Mi4xNTQuMTQuMTQ1KSAgMTgwMC45MTMgbXMgIDE3OTYuMzU2IG1zICoKIDkgICogKiA2Mi4xNTQuMTQuMTQ2ICg2Mi4xNTQuMTQuMTQ2KSAgMjQ3OC41MjIgbXMKMTAgIDYyLjE1NC4xNC4xNDUgKDYyLjE1NC4xNC4xNDUpICAyNTI2LjA1MyBtcyAgMjUyNi4wNjEgbXMgIDI1NDEuOTQzIG1zCjExICA2Mi4xNTQuMTQuMTQ2ICg2Mi4xNTQuMTQuMTQ2KSAgMzI0NS42OTYgbXMgIDMyODguNzA2IG1zICAzMjE5LjcwMyBtcwoxMiAgNjIuMTU0LjE0LjE0NSAoNjIuMTU0LjE0LjE0NSkgIDMzNTEuNjUzIG1zICAzMjQ0LjAzNyBtcyAgMzIyOC4wMzcgbXMKMTMgIDYyLjE1NC4xNC4xNDYgKDYyLjE1NC4xNC4xNDYpICAzOTY0LjEzNSBtcyAgMzk1MS44MDMgbXMgIDQwNjguMTIwIG1zCgpWKiwgZ2xhdWJ0IG5pY2gsIGRhc3MgZGVyIFNlcnZlciBkYXMgbm9jaCBsYW5nZSBtYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB1bnRlcnN0dWV0enVuZ2VuIChOaXp6bCwgMjQuIEphbiAyMDAyLCAyMToyMDo1NSk6Cn4jISBybj1QYXRyeW4gcnQ9MTAxMTg3OTEyNiByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMDExODc5MTI2CmhvZWhvZSBkZXIgZ2VsYmUgWmF1YmVyaHV0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBQYXJ0eWdhZXN0ZSBnZXN1Y2h0ISAoQ3VjaHVsbGluLCAyNS4gSmFuIDIwMDIsIDA4OjM1OjA5KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDExOTQ0MDA5IHJnPXBhcnR5Cn4jISB0aWQ9MTAxMTYxNTY2NAoiVW51ZWJlcnNpY2h0bGljaCIgaXN0IGRpZSBSdWJyaWssIHdlbm4gMjAwKyBBcnRpa2VsIGRyaW5zdGVoZW4uIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU1BBTSAoR3JpbW1ib3JuLCAyNS4gSmFuIDIwMDIsIDEwOjA5OjA1KToKfiMhIHJuPUJvaW5nIHJ0PTEwMTE5NDk2OTMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDExMzM4MzQ1CiJNZWluZSBCYW5kYnJlaXRlIGlzdCBhYmVyIHZpZWwgZGlja2VyIHVuZCBsYWVuZ2VyIGFscyBEZWluZSIKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRXVyby1CaWxsLVRyYWNrZXIgKEdyaW1tYm9ybiwgMjUuIEphbiAyMDAyLCAxMzo1NzoyNSk6Cn4jISBybj1CYW1idWxrbyBydD0xMDExOTYzMzcyIHJnPXd3dwp+IyEgdGlkPTEwMTE5NjE4MzMKV2FzIGhlaXNzdCBkYSB2ZXJtdXRlbj8gRGllIHZlcmZvbGdlbiBlaW5lbiBkb2NoIHNvZ2FyIGltIFJhZGlvLiBOZXVsaWNoIGhhYgppY2ggUmFkaW8gZ2Vob2VydCB1bmQgZGVyIE1vZGVyYXRvciBzYWd0ZSAiU2llIGhvZXJlbiBBbnRlbm5lIEJheWVybiIgLSBpY2gKZnJhZ2UgbWljaDogV29oZXIgd3Vzc3RlIGRlciBkYXM/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEV1cm8tQmlsbC1UcmFja2VyIChCYW1idWxrbywgMjUuIEphbiAyMDAyLCAxMzo1ODoyOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMTk2MzQ0NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTE5NjE4MzMKSmV0enQgd28gRHUgZXMgc2Fnc3QuLi4uLi4uLndpcmQgbWlyIHNvIHZpZWxlcyBrbGFyLgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHN0YXRpIGluIHN0dXR0Z2FydCAoRGVlcGJsdWUsIDI1LiBKYW4gMjAwMiwgMTU6NTk6MjkpOgp+IyEgcm49TGVpYm5peiBydD0xMDExOTcwNjA1IHJnPXRyZWZmZW4KfiMhIHRpZD0xMDExNjQ5OTY0CldhcyBrb2VubmVuIHdpciBkYWZ1ZXIsIGRhc3MgRHUgbmFjaCBuZXIgZHVyY2h6ZWNodGVuIE5hY2h0IG5pY2h0IGF1cyBkZW4KZmVkZXJuIGtvbW1zdD8gQXVzc2VyZGVtIGlzdCBkb2NoIHVtIDExIHNvd2llc28gU2NobHVzcywgZGEgd2VyZGVuIGluIFMgZG9jaApkaWUgQnVlcmdlcnN0ZWlnZSBlaW5nZWZhaHJlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogc3RhdGkgaW4gc3R1dHRnYXJ0IChMZWlibml6LCAyNS4gSmFuIDIwMDIsIDE2OjA0OjA0KToKfiMhIHJuPURlZXBibHVlIHJ0PTEwMTE5NzA3Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExNjQ5OTY0CmpvLCBzb25udGFncyB2aWVsbGVpY2h0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBzdGF0aSBpbiBzdHV0dGdhcnQgKEdyaW1tYm9ybiwgMjUuIEphbiAyMDAyLCAxNjoxODozNyk6Cn4jISBybj1MZWlibml6IHJ0PTEwMTE5NzEwNDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDExNjQ5OTY0ClN0aW1tdCwgaW4gZGVyIFdvY2hlIHdlcmRlbiBkaWUgQnVlcmdlcnN0ZWlnZSBlcnN0IHVtIDE4IFVociBob2NoZ2VrbGFwcHQuIERhCmthbm5zdCBEdSBkaWUgVWhyIG5hY2ggc3RlbGxlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEV1cm8tQmlsbC1UcmFja2VyIChPcmt0b2V0ZXIsIDI1LiBKYW4gMjAwMiwgMTc6MTI6NDYpOgp+IyEgcm49QmFtYnVsa28gcnQ9MTAxMTk2MTgzMyByZz13d3cKfiMhIHRpZD0xMDExOTYxODMzCldhcz8gRWluIEJld2VndW5nc3Byb2ZpbCB2b24gQmFua25vdGVuIGFuZmVydGlnZW4/IFdlciB3ZWlzcyB3aWUgc2ljaCBkaWVzZQpkYXRlbiBkYW5uIHdpZWRlciBtaXNzYnJhdWNoZW4gbGFzc2U/ISBVbmQgdWViZXJoYXVwdCwgZ2lidCBlcyBkYXp1IGVpZ2VudGxpY2gKZWluZSByZWNodGxpY2hlIEdydW5kbGFnZT8gV2llIGF1Y2ggaW1tZXIsIGljaCBmb3JkZXJlOiBGcmVpaGVpdCBmdWVyIGRpZQpFdXJvbm90ZW4gKHNwZXppZWxsIHp1IG1pciB6dSBrb21tZW4pIQoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZlcnN1Y2gsIGRlbiBsYWVuZ3N0ZW4gVGhyZWFkIGFsbGVyIFplaXRlbiB6dSBwcm92b3ppZXJlbjogKE5vbm5lLCAyNi4gSmFuIDIwMDIsIDEzOjIyOjQ5KToKWmF1YmVyZXIgc2luZCBhbGxlcyBMdXNjaGVuLgpLYWVtcGZlciBzaW5kIG1pdCBBYnN0YW5kIGRpZSBzdGFlcmtzdGUgR2lsZGUgaGllci4KVGFuamlhbiBzaW5kIG1pdCBBYnN0YW5kIGRpZSBzdGFlcmtzdGUgR2lsZGUgaGllci4KS2xlcmlrZXIgd2VyZGVuIGJhbGQgRXJzdGllIG9obmUgWndlaXRpZXMgc2VpbiBtdWVzc2VuLgpEaWUgS2FyYXRlZ2lsZGUgaXN0IGd1dCwgd2llIHNpZSBpc3QuCkJpZXJzY2h1ZXR0bGVyIGlzdCBlaW5lIFNwYXNzZ2lsZGUuCld1cmZzdGVybmUga29zdGVuIGRlbW5hZWNoc3QgMTAgS1AgcHJvIFd1cmYuCkRhcyBWbGFuZCBpc3Qgc2Nob2VuIGJlc2NocmllYmVuLgpXdXJ6ZWxzIE5QQyBzaW5kIGZhaXIuClBhZHJlaWMgaXN0IGRlciBiZXN0ZSBNYWdpZXIgYWxsZXIgWmVpdGVuLgpFcmZhaHJ1bmdzcHVua3RlIHRyYWdlbiBuaWNodCBtZWhyIHp1bSBMZXZlbCBiZWkuCkJlaW0gVG9kIHdlcmRlbiAxMCBBdHRyaWJ1dGVwdW5rdGUgYWJnZXpvZ2VuLgoKZmVobHQgbm9jaCB3YXM/ICpncnVlYmVsKiBOYWphLCBzb2xsdGUgZXJzdG1hbCByZWljaGVuIChjOwoKTm9ubmUuCgpQLlM6IE5pbW0gREFTLCBIdW1uaSAqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWZXJzdWNoLCBkZW4gbGFlbmdzdGVuIFRocmVhZCBhbGxlciBaZWl0ZW4genUgcHJvdm96aWVyZW46IChWYW5pb24sIDI2LiBKYW4gMjAwMiwgMTM6NTU6MDcpOgp+IyEgcm49Tm9ubmUgcnQ9MTAxMjA0Nzc2OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIwNDc3NjkKUmVjaHQgaGF0IE5vbm5lLgoKViosIHdlZGVsdCBtaXQgZWluZW0gJ05vbm5lIGZvciBQcl5IXkhNdWRHb3R0Jy1GYWVobmNoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTYWNoZW4gZ2lidHMgKENyb2Z0LCAyNi4gSmFuIDIwMDIsIDE2OjI1OjQzKToKUmFuZ29ybiBmaXhpZXJ0IDQxNCB3ZWxrZSBCbGFldHRlciB1bmQgbWFjaHQgc2Nod3VuZ3ZvbGxlIEJld2VndW5nZW4uCjQxNCB3ZWxrZSBCbGFldHRlciB0YW56dCB3aWUgaW4gVHJhbmNlIGR1cmNoIGRpZSBHZWdlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2FjaGVuIGdpYnRzIChHcmltbWJvcm4sIDI2LiBKYW4gMjAwMiwgMTY6MzA6MTIpOgp+IyEgcm49Q3JvZnQgcnQ9MTAxMjA1ODc0MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIwNTg3NDMKT2gtRHUtYWJlci16YWVobGVuLXNjaG5lbGwuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFJlbm92aWVydW5nIGRlciBHaWxkZSAoRGVlcGJsdWUsIDI2LiBKYW4gMjAwMiwgMjA6Mjg6MDIpOgp+IyEgcm49VGlhbWFrIHJ0PTEwMTIwNjM3ODQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTE5ODkxNDgKT2ggR290dCwgd2llIHRpZWYgaXN0IGRhcyBNRyBnZXN1bmtlbi4gSmV0enQgd2lyZCBtYW4gc2Nob24gZHVyY2ggTWVnYXNjaG1hcnJuCk11ZGdvdHQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNoYW9zIChNdXBmZWwsIDI2LiBKYW4gMjAwMiwgMjE6MTM6MTYpOgpEdSB0ZWlsc3QgRGFya3dpbmcgbWl0OiBoYXN0IGR1IGVpZ2VudGxpY2ggbmVuIGNoYW9zIDJ0aT8KRGFya3dpbmcgdGVpbHQgRGlyIG1pdDogbmVpbgpEdSB0ZWlsc3QgRGFya3dpbmcgbWl0OiBvawpbVG9kOkxhcnNdIERhcyBDaGFvcyBoYXQgZ2VzaWVndCEgRGFzIHZlcnd1bmRlcnQgbWljaCBpcmdlbmR3aWUgYWJlciBuaWNodC4KW1RvZDpMYXJzXSBEZW5uIGRhcyBDaGFvcyBtb3JkZXQsIHRvZXRldCB1bmQgZGllcyBoZW1tdW5nc2xvcy4gVW5zLVV3ZSBpc3QgZWluCltUb2Q6TGFyc10gd2FocmVyIEhlbGQsIGVpbiBDaGFvdCwgd2llIGVyIGltIEJ1Y2hlIHN0ZWh0LiBEZW5uIFVucy1Vd2UgIGhhdApbVG9kOkxhcnNdIGdlcmFkZSBEYXJrd2luZyB1bWdlYnJhY2h0LgoKLW11cGZlbC0gKHdpZSBpbW1lciB2b2VsbGlnIHVuc2NodWxkaWcgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDaGFvcyAoRGVlcGJsdWUsIDI2LiBKYW4gMjAwMiwgMjE6NDA6MjIpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMTIwNzU5OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMDc1OTk2CkR1IGhhc3QgMiBaZWlsZW4gdmVyZ2Vzc2VuLCBkaWUgWmVpdGdsZWljaCBrYW1lbjoKW01vZXJkZXI6R2Vpc3QgVW5zLVV3ZXNdIE5hIHdhcnRlIERhcmt3aW5nLCBiZWltIG5hZWNoc3RlbiBNYWwgdHJldGUgaWNoIERpcgpbTW9lcmRlcjpHZWlzdCBVbnMtVXdlc10ga3JhZWZ0aWcgaW4gZGVuIEdlZGFuLUJlcmVpY2ghIDwyMToxMDoxMz4KCkVocmUgd2VtIEVocmUgZ2VidWVocnQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNSEsgKERlZXBibHVlLCAyNy4gSmFuIDIwMDIsIDE5OjU1OjU4KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDEyMTUxODAxIHJnPWQucG9sYXIKfiMhIHRpZD0xMDEyMTUxODAxClNlaXQgd2FubiBpc3QgaW4gUGFyYSB3YXMgenUgc3Rhcms/IFNpbmQgd2lyIGhpZXIgaW0gS2luZGVyZ2FydGVuPyA6LT4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTUhLIChBbmFjcmlvbiwgMjcuIEphbiAyMDAyLCAyMDoyNToxMCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDEyMTU3NzU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjE1MTgwMQpHZW5hdSAuLi4gbWFjaHMgd2llIE1vcmdvdGggLi4uIGdpYiBtZWhyIFN0dXBzZSA6bykKCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNSEsgKERlZXBibHVlLCAyNy4gSmFuIDIwMDIsIDIwOjQ4OjM3KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTEwMTIxNTk1MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMTUxODAxCk9kZXIgd2llIGJlaSBGdW5ha29zaGksIG1hY2ggaWhuIHVuYW5ncmVpZmJhciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG1tbSAoUm9sYW5kLCAyNy4gSmFuIDIwMDIsIDIzOjMzOjAzKToKCkNhdHdlYXpsZSBpc3QgZGEuIER1IGZ1ZWhsc3QgRGljaCBzaWNoZXIuCgpWYXJsYXJpb24gcnVmdDogR2FyIG5pY2ghCgpDYXR3ZWF6bGUgcnVmdDogQWJlciBqYSA6LSkKCgoKUm9sYW5kIGRlbmt0IC4gbyBPICh3YXMgbnUpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNSEsgKFBpdGZhbGwsIDI4LiBKYW4gMjAwMiwgMDA6MTI6NDgpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTAxMjE2MDkxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIxNTE4MDEKd2llc28/IGxlaWNodCBhYmdlc2Nod2FlY2h0IHRyaWZmdCBlcyBkb2NoIGdhbnogZ3V0IHdlbm4gZGVyIGluIGVpbmVyIHJ1bmRlCm1hbCBzbyBlYmVuIDI2MCBscHMgemllaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFN1Y2hlIEJ1ZWNoZXIgKFZhbmlvbiwgMjguIEphbiAyMDAyLCAwODoyODozMik6Cn4jISBybj1Sb25kYSBydD0xMDEyMTc1OTgzIHJnPWFuemVpZ2VuCn4jISB0aWQ9MTAxMTk0Njg2NApSb25kYSwgZHUgYmlzdCB2aWVsZXMsIGFiZXIgbmljaHQgJ3Vuc2NodWxkaWcnLgoKViosIHNjaG1hcnJudC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1ISyAoRGVlcGJsdWUsIDI4LiBKYW4gMjAwMiwgMDk6MDI6MjApOgp+IyEgcm49UGl0ZmFsbCBydD0xMDEyMTczMTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjE1MTgwMQpOYSB1bmQ/IERlciBzdGVodCBzY2hsaWVzc2xpY2ggbmljaHQgdW1zb25zdCBpbiBkZXIgUGFyYWxsZWx3ZWx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTUhLIChTaWx2YW5hLCAyOC4gSmFuIDIwMDIsIDExOjI2OjA3KToKfiMhIHJuPURlZXBibHVlIHJ0PTEwMTIyMDQ5NDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMTUxODAxCldlbm4gbWFuIGJlZGVua3QsIGRhc3MgZGVyIGR1cmNoc2Nobml0dGxpY2hlIFNlaGVyIG1pdCBjYSAzMDAgTFAgdW5kIGZhc3Qgc28KdmllbGVuIFNQIHJ1bWxhZXVmdC4uLiBLbGFyLCB3aWVzbyBlaWdlbnRsaWNoIG5pY2h0IG1hbCBlYmVuIDI2MCBMUCBhYnppZWhlbj8KOy0pIE9kZXIgZWluZmFjaCBkaWUgTFAgaW0gQmVncnVlc3N1bmdzc2NobGFnIGF1ZiAxMCBzZXR6ZW4gdW5kIGRhbm4gZXR3YXMKZ2VtYWVzc2lndGVyIGhhdWVuLCBkYW1pdCBhbGxlIGRpZSBnbGVpY2hlIENoYW5jZSBoYWJlbj8KCiAgU2lsdmFuYSAoZ2VodCBpaHJlIFRpZ29uZW4gdWViZXJhcmJlaXRlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmlkbGVwYWNrIChWYXJkaW9uLCAyOC4gSmFuIDIwMDIsIDExOjQ5OjAwKToKW3p3ZXJdCi0tLSBGb2xnZW5kZSBaYXViZXJlciBzaW5kIGFud2VzZW5kOiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQooaSkgU2lsdmFuYSBkaWUgR2lsZGVubWFnaWVyaW4gICAgICAgICAgICAgKFdlaXNzbWFnaWUsIFNjaHdhcnptYWdpZSkKKGkpIFBhdHJ5biBkZXIgRXJ6bWFnaXN0ZXIgICAgICAgICAgICAgICAgIAooaSkgQW5hY3Jpb24gZGVyIE1hZ2lzdGVyICAgICAgICAgICAgICAgICAgKEFid2VocikKICAgIFZhcmRpb24gZGVyIE1hZ2lzdGVyICAgICAgICAgICAgICAgICAgIChBYndlaHIpCihpKSBUaHVmaGlyIGRlciBNYWdpc3RlciAgICAgICAgICAgICAgICAgICAoQmVoZXJyc2NodW5nKQooaSkgSGV4ZW5iZXNlbiBkZXIgTWFnaXN0ZXIgICAgICAgICAgICAgICAgCihKKSBMYWNyaSBkaWUgTWFnaXN0cmEgICAgICAgICAgICAgICAgICAgICAoQW5ncmlmZikKKGopIFNuZXJ0IGRlciBNYWdpc3RlciAgICAgICAgICAgICAgICAgICAgIAooaSkgS2F2YWxpZXIgZGVyIE1hZ2lzdGVyICAgICAgICAgICAgICAgICAgCihJKSBDdWNodWxsaW4gZGVyIE1hZ2lzdGVyICAgICAgICAgICAgICAgICAKKEkpIEJlbmd1bm4gZGVyIE1hZ2lzdGVyICAgICAgICAgICAgICAgICAgIAooSSkgRmFiaWFuYSBkaWUgTWVpc3RlcmFud2FlcnRlcmluICAgICAgICAgCihqKSBEYXlsaWdodCBkZXIgTWVpc3RlcmFud2FlcnRlciAgICAgICAgICAKKGkpIFR1cm9jayBkZXIgTWVpc3RlcmFud2FlcnRlciAgICAgICAgICAgIAooSSkgSXNpIGRpZSBNZWlzdGVyYW53YWVydGVyaW4gICAgICAgICAgICAgCihpKSBFbWlsIGRlciBNZWlzdGVyYW53YWVydGVyICAgICAgICAgICAgICAKKGkpIFZpbmNlbnQgZGVyIE1laXN0ZXJhbndhZXJ0ZXIgICAgICAgICAgIAogICAgUmFuZ29ybiBkaWUgU2Nob2xhcmluICAgICAgICAgICAgICAgICAgCgpWYXJkaW9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQldaLUZvcnVtIChDdWNodWxsaW4sIDI4LiBKYW4gMjAwMiwgMTE6NTA6MjYpOgp+IyEgb249Q3VjaHVsbGluIG90PTEwMTIyMTUwMTYgb2c9YW56ZWlnZW4KfiMhIHJuPVBzeSBydD0xMDEyMjE0NDc0IHJnPWFuemVpZ2VuCn4jISB0aWQ9MTAxMjIxNDQ3NApEYXMgQm9hcmQgaGF0IFpvb2sgaW0gTW9yZ2VuZ3JhdWVuIHNjaG9uIGVyb2VmZm5ldC4gIk1lZ2FzY2htYXJybiIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTUhLIChFbGJlcmV0LCAyOC4gSmFuIDIwMDIsIDEyOjMyOjQ4KToKfiMhIHJuPVNpbHZhbmEgcnQ9MTAxMjIxMzU2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIxNTE4MDEKb2NoIGVjaHQgZGVyIGR1cmNoc2Nobml0dGxpY2hlciBTZWhlcj8gSG1tLCBndXQgZGFzcyBpY2ggbmUgV3Vyc3QgYmluIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBNSEsgKEFtYXJ5bGxpcywgMjguIEphbiAyMDAyLCAxMjozNjozNyk6Cn4jISBybj1TaWx2YW5hIHJ0PTEwMTIyMTM1Njcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMTUxODAxCmRyaXR0ZSBBbHRlcm5hdGl2ZTogTFAgYXVmIDEwIHNldHplbiB1bmQgZGFubiAyNjAgYWJ6aWVoZW4/IGRhbm4gaGFldHRlbiBhbGxlCmdhcmFudGllcnQgZGllIGdsZWljaGUgQ2hhbmNlLi4uCgpBbWEqIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTUhLIChDdWNodWxsaW4sIDI4LiBKYW4gMjAwMiwgMTI6NDY6NTEpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMTIyMTc3OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMTUxODAxCktlbm5lbiB3aXIgamEgYXVjaC4gV2llIHdhciBkYXMgbm9jaG1hbCwgbWl0IGRpZXNlciBad2lzY2hlbnZhcmlhbnRlIHZvbgpTY2h0dWxsdWg/IDopIEF1ZiBwZXIgU3BlbGwgYXVmIDMgTFBzIHNldHplbiwgdW5kIGRhbm4gbm9jaCBlaW4gQW5ncmlmZi4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVmVyc3VjaCwgZGVuIGxhZW5nc3RlbiBUaHJlYWQgYWxsZXIgWmVpdGVuIHp1IHByb3ZvemllcmVuOiAoSHVtbmksIDI4LiBKYW4gMjAwMiwgMTM6Mjc6NDcpOgp+IyEgcm49VmFuaW9uIHJ0PTEwMTIwNDk3MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMDQ3NzY5CkRhcyBrbGFwcHQgbmljaHQuIE5pZSB1bmQgbmltbWVyLiAKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBNSEsgKEJhbWJpLCAyOC4gSmFuIDIwMDIsIDE2OjE3OjEwKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDEyMjE3Nzk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjE1MTgwMQpEYXMgZXJpbm5lcnQgbWljaCBhbiB3YXMsIGRhcyBpY2ggbWFsIGdldGVzdGV0IGhhYmUuLi4gQW5zdGF0dCA2MCUgZGVyIG1heC1MUAp3dXJkZW4gd2VnZW4gZWluZXMgS29tbWFmZWhsZXJzIGltbWVyIDYwMCUgYWJnZXpvZ2VuLiBVbmQgd2lyIHd1bmRlcnRlbiB1bnMKaW1tZXIsIHdpZXNvIGRlciBTcGllbGVyIG1pdCB2b2xsZW4gTFBzIHRyb3R6ZGVtIHN0aXJidC4KKEVzIGdlaHQgdW0gbmljaHRzLCBkYXMgaW0gTUcgYW5nZXNjaGxvc3NlbiBpc3QuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTUhLIChab29rLCAyOC4gSmFuIDIwMDIsIDE2OjE4OjQxKToKfiMhIHJuPUJhbWJpIHJ0PTEwMTIyMzEwMzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMTUxODAxCi4uLiBhYmVyIG5vY2ggYW5nZXNjaGxvc3NlbiB3aXJkPyA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZvb3RlciBlaW5lciBTcGFtLU1haWwuIChWYW5pb24sIDI4LiBKYW4gMjAwMiwgMjA6MTM6NTQpOgpOQi4gVGhpcyBtZXNzYWdlIGlzIHNlbnQgaW4gY29tcGxpYW5jZSBvZiB0aGUgbmV3IGVtYWlsIGJpbGwgc2VjdGlvbiAzMDEuClVuZGVyCkJpbGwgUy4gMTYxOCBUSVRMRSBJSUkgcGFzc2VkIGJ5IHRoZSAxMDV0aCBVUyBDb25ncmVzcy4gVGhpcyBtZXNzYWdlIGNhbm5vdApiZSBjb25zaWRlcmVkIFNwYW0gYXMgbG9uZyBhcyB3ZSBpbmNsdWRlIHRoZSB3YXkgdG8gYmUgUmVtb3ZlZCwgUGFyYWdyYXBoCihhKShjKSBvZiBTLiAxNjE4LgoKVE8gUkVNT1ZFOiBqdXN0IGRvIG5vdCByZXNwb25kIHRvIHRoaXMgbWVzc2FnZS4KClYqIGxhY2h0IHNpY2gga2FwdXR0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNoYWt5LXJhc3NlPyAoR3JpbW1ib3JuLCAyOC4gSmFuIDIwMDIsIDIwOjQ0OjU5KToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTAxMjI0Njk3NCByZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHRpZD0xMDEyMjQ2OTc0CkFlaCwgd2llIER1IG1laW5lbj8gSWNoIGRhY2h0ZSBkaWUgRmVsaW5lbiBzaW5kIGRvY2ggZWggc2Nob24gYW5kZXJzcnVtPyAKQWNoIG5laW4sIGRhcyB2ZXJ3ZWNoc2VsIGljaCB3aWVkZXIgbWl0IGRlbiBFbGZlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHNoYWt5LXJhc3NlPyAoV2hpdGV0aWdlciwgMjguIEphbiAyMDAyLCAyMDo0NzowMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMjI0NzA5OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIyNDY5NzQKbmFqYSBmdWVyIGZlbGluZW4gZ2lidHMgbmUgZXh0cmEgZ2lsZGUgKGthdHplbmtyaWVnZXIpLi4uCnVuZCB2aWVsbGVpY2h0IGtvZW5udGUgZXMgZnVlciBkaWUgZ2lsZGUgYmllcnNjaHVldHRsZXIgZWluZSBleHRyYSByYXNzZQooc2hha3lzKSBnZWJlbj8KV1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3dW5zY2guLi4gKEdub21lLCAyOS4gSmFuIDIwMDIsIDAwOjQ3OjEzKToKUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiBpY2ggd2lsbCBlaW4gc2luZ2VuZGVzIHZvbGxzdHJlY2tlcm5kZXMKUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiBzY2h3ZXJ0bWVpc3RlcmhhbXN0ZXJtZW5zY2hlbmJyb3QKCndlciBmdWVobHQgc2ljaCBhbmdlc3Byb2NoZW4/IGJvaW5nPyByb2NodXM/IHphcmRvej8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3dW5zY2guLi4gKFRpYW1haywgMjkuIEphbiAyMDAyLCAwMDo0ODoxMSk6Cn4jISBybj1Hbm9tZSBydD0xMDEyMjYxNjMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjI2MTYzMwpEaWUgQmFsYW5jZS4KClRpYW1hay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogd3Vuc2NoLi4uIChHbm9tZSwgMjkuIEphbiAyMDAyLCAwMDo0OTowNyk6Cn4jISBybj1UaWFtYWsgcnQ9MTAxMjI2MTY5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIyNjE2MzMKYWNoLi4uIGRpZSBtYWNodCB1bnMgZGEgYmVzdGltbXQgd2llZGVyIGVpbiBzdHJpY2ggZHVyY2ggZGllIHJlY2hudW5nLgpkaWUgbmltbXQgZGEgbWluZGVzdGVucyBlaW5lIGtvbXBvbmVudGUgcmF1cy4gbWluZGVzdGVucy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHd1bnNjaC4uLiAoUGl0ZmFsbCwgMjkuIEphbiAyMDAyLCAwMDo0OToyNyk6Cn4jISBybj1Hbm9tZSBydD0xMDEyMjYxNzQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjI2MTYzMwpvayBkYW5uIG5laG0gaWNoIGFlaGhoaCBzaW5nZW5kIHJhdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHd1bnNjaC4uLiAoVmFybGFyaW9uLCAyOS4gSmFuIDIwMDIsIDAwOjUwOjE5KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAxMjI2MTc2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIyNjE2MzMKV2llc2UgbXVzcyBlaW5lIEtvbXBvbmVudGUgcmF1cz8gRGllIEJhbGFuY2UgaGluZGVydCBzaWNoZXIgbmllbWFuZGVuIGRhcmFuLAplaW4gT2JqZWt0IG1pdCBkZW0gTmFtZW4genUgcHJvZ2dlbiA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHd1bnNjaC4uLiAoR3JpbW1ib3JuLCAyOS4gSmFuIDIwMDIsIDAwOjUwOjUxKToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAxMjI2MTc2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIyNjE2MzMKT2NoLCBzb3dhcyBiYXN0ZWwgaWNoIERpciBnZXJuZS4gS2VpbiBUaGVtYS4KSWNoIGRlbmtlIHp3YXIgbmljaHQgZGFzcyBEdSBiZWdlaXN0ZXJ0IHNlaW4gd2lyc3QgdWViZXIgZGllIE1ldGhvZGUgdm9uIGRlbQpUZWlsLCBLcmFmdCBmdWVyIHNlaW5lIEZhZWhpZ2tlaXRlbiB2b20gVHJhZWdlciB6dSB6aWVoZW4sIGFiZXIgbWFuIGthbm4gaGFsdApuaWNodCBhbGxlcyBoYWJlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB3dW5zY2guLi4gKFRzdW5hbWksIDI5LiBKYW4gMjAwMiwgMDM6MTg6NTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTIyNjE4NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMjYxNjMzCkdhbnogc2ljaGVyIHd1ZXJkZSBkaWUgQmFsYW5jZSBlaW4gc2luZ2VuZGVzIHZvbGxzdHJlY2tlcm5kZXMgClNjaHdlcnRtZWlzdGVyaGFtc3Rlcm1lbnNjaGVuYnJvdCBzbyB6dXNhbW1lbnN0cmVpY2hlbiwgZGFzcyBhbSBFbmRlIG51ciBub2NoCmVpbiBrbGVpbmVyIFNjaGVyemtla3MgdWVicmlnYmxlaWJ0LiBPaG5lIEFyb21hLgoKVHN1bmFtaS4gSGF0IGRhIEVyZmFocnVuZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHd1bnNjaC4uLiAoQ3VjaHVsbGluLCAyOS4gSmFuIDIwMDIsIDA0OjM3OjI5KToKfiMhIHJuPVRzdW5hbWkgcnQ9MTAxMjI3MDczNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIyNjE2MzMKV29iZWkgZXMgbmljaHQgdW5iZWRpbmd0IGZ1ZXIgZGVuIE1hZ2llciBzcHJpY2h0LCB3ZW5uIGVyIGVpbiAKc2luZ2VuZGVzIHZvbGxzdHJlY2tlbmRlcyBTY2h3ZXJ0bWVpc3RlcmhhbXN0ZXJtZW5zY2hlbmJyb3QsIGRhcyBzZWluZW0KTmFtZW4gZ2VyZWNodCB3aXJkLCBqZSBiZWkgZGVyIEJhbGFuY2UgYmVhbnRyYWd0LgoKQ3VjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHd1bnNjaC4uLiAoQXJrLCAyOS4gSmFuIDIwMDIsIDExOjA5OjU0KToKfiMhIHJuPUdub21lIHJ0PTEwMTIyNjE2MzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMjYxNjMzCkRlciBQc3ljaGlhdGVyIHZvbiBQaXRmYWxsPwoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHd1bnNjaC4uLiAoR29yLCAyOS4gSmFuIDIwMDIsIDEzOjE5OjM4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDEyMjYxODUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjI2MTYzMwpEdSBrYW5uc3QgcHJvZ2dlbj8gfTstKQoKR29yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiB3dW5zY2guLi4gKEdyaW1tYm9ybiwgMjkuIEphbiAyMDAyLCAxMzoyNTozNyk6Cn4jISBybj1Hb3IgcnQ9MTAxMjMwNjc3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIyNjE2MzMKSGFiIGljaCBkYXMgZ2VzYWd0PyBBYmVyIHVtIGNvZGUtRnJhZ21lbnRlIHp1c2FtbWVuenVsZWltZW4sIGRhZnVlciByZWljaHRzIHNvCmdlcmFkZSBub2NoLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogd3Vuc2NoLi4uIChHb3IsIDI5LiBKYW4gMjAwMiwgMTM6MjY6MTIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTIzMDcxMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMjYxNjMzCk51ciBrZWluZSBmYWxzY2hlIEJlc2NoZWlkZW5oZWl0LCBkYW5uIGthbm5zdGUgcHJvZ2dlbi4gOykKCkdvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogd3Vuc2NoLi4uIChHcmltbWJvcm4sIDI5LiBKYW4gMjAwMiwgMTM6NDI6MzQpOgp+IyEgcm49R29yIHJ0PTEwMTIzMDcxNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMjYxNjMzCkljaCBiaW4gaGllciBpbiBlaW5lciBGaXJtYSBtaXQgTGV1dGVuIHp1c2FtbWVuIGRpZSBwcm9ncmFtbWllcmVuIF9rb2VubmVuXy4KR2xhdWIgbWlyLCBpY2gga2FubiBuaWNodCBwcm9ncmFtbWllcmVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGZXJud2VzdGxpY2hlIEhlaWxrdWVuc3RlIChWYXJsYXJpb24sIDI5LiBKYW4gMjAwMiwgMjE6MDQ6MjIpOgogICAgUHJlaXNlIGZ1ZXIgQmVoYW5kbHVuZ2VuCjEuKSBWb2xsc3RhZW5kaWdlIEJlaGFuZGx1bmcgLi4uLi4uLi4uLiA3Njg5NQoyLikgVGVpbHdlaXNlIEJlaGFuZGx1bmcgLi4uLi4uLi4uLi4uLi4gMzg0NDcKMy4pIEVudGdpZnR1bmcgLi4uLi4uLi4uLi4uLi4uLi4uLiAuLi4uIDQwMAo0LikgRmx1Y2ggIGJlc2VpdGlnZW4gLi4uLi4uLi4uLi4uLi4uLi4gNTAwCjUuKSBGZW5nIFNodSBBbiAoRnJvc2NoLT4gSG9iYml0KS4uLi4uLiAyMDAKNi4pIEhhbmQgd2llZGVyIGFubmFlaGVuIC4uLi4uLi4uLi4uLi4uIDEwMAo3LikgU2NobnVwZmVuIGF1c3Ryb2NrbmVuIC4uLi4uLi4uLi4uLi4gMTAwCjguKSBLcmFua2hlaXQgaGVpbGVuLi4uLi4uLi4uLi4uLi4uLi4uLiA0MDAKOS4pIFZlcmthdWYgdm9uOgogICAgICAgICAgICAgICAgIFRpZ2VyYmFsc2FtICAgICAgICAgICAgMTIxMgoxMC4pIEVudGJsaW5kZW4gLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gIDYwMAoKV2FzIGJla29tbSBpY2ggZnVlciBkZW4gUHJlaXMgZGVyIHZvbGxzdGFlbmRpZ2VuIEJlaGFuZGx1bmc/IEVpbmVuIDYtd29lY2hpZ2VuCkt1cnVybGF1YiBtaXQgZWluZW0gaGFsYmVuIER1dHplbmQgZWxmaXNjaGVyIFBmbGVnZXJpbm5lbiwgZGllIHNpY2ggbnVyIHVtCm1pY2gga3VlbW1lcm4/ClVuZCBFbnRmcm9zY2hlbiBsYXNzZW4gd3VlcmQgaWNoIG1pY2ggYmVpIGRlbSBRdWFja3NhbGJlciBhdWNoIG5pY2h0LApzY2hsaWVzc2xpY2ggbW9lY2h0IGljaCBuaWNodCBhbSBFbmRlIGFscyBIb2JiaXQgaGVyYXVza29tbWVuLi4uCgpWYXJsKiwgZ2VodCBhbHMgS2Fzc2VucGF0aWVudCBsaWViZXIgenUgYW5lcmthbm50ZW4gSGVpbGVybgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTUhLIChNdXBmZWwsIDI5LiBKYW4gMjAwMiwgMjE6NDE6MTQpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMTIyMTg0MTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMTUxODAxCkRhcyB3YXJlbiAxMCBMUC4gTmljaHQgdWViZXJ0cmVpYmVuLCBqYT8gOykKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNSEsgKFZhcmxhcmlvbiwgMjkuIEphbiAyMDAyLCAyMTo0MjowNik6Cn4jISBybj1NdXBmZWwgcnQ9MTAxMjMzNjg3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIxNTE4MDEKTUFHSUVSUEFDSyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNSEsgKFRpYW1haywgMjkuIEphbiAyMDAyLCAyMTo0MzozNCk6Cn4jISBybj1NdXBmZWwgcnQ9MTAxMjMzNjg3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIxNTE4MDEKSWNoIHNldHplIDUgTXVlbnplbiBhdWYgQ3VjaHVsbGluLiBEYXMgd2FyZW4gM0xQLiA6LSkKCgpUaWFtYWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBNSEsgKFZhcmxhcmlvbiwgMjkuIEphbiAyMDAyLCAyMTo0NDowNik6Cn4jISBybj1UaWFtYWsgcnQ9MTAxMjMzNzAxNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIxNTE4MDEKSWNoIGdlaGUgbWl0LCBpY2ggS0VOTkUgTXVwZmVscyBHZWRhZWNodG5pcyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE1ISyAoR3JpbW1ib3JuLCAyOS4gSmFuIDIwMDIsIDIxOjUzOjA1KToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDEyMzM3MDQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjE1MTgwMQpOdXIgd2VpbCBlciBEaWNoIGdlbGVnZW50bGljaCAiU2FiaW5lIiBuZW5udCBpc3QgZGFzIGtlaW4gR3J1bmQgZGVzd2VnZW4KZ2xlaWNoIGFuIHNlaW5lbSBHZWRhZWNodG5pcyB6dSB6d2VpZmVsbi4uLgoKR2RBLCBnZCZyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTUhLIChNdXBmZWwsIDI5LiBKYW4gMjAwMiwgMjE6NTQ6NDcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTIzMzc1ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMTUxODAxCkdlbmF1LCByZWNodCBoYXN0ZS4KCkFsc28uLi4gZXJyLi4uLiBDb3JkdWxhPyBQZXRyYT8gQ2hyaXN0aW5lPyAuLi4gYWVoLi4uIE1pY2hhZWxhPyAKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogTUhLIChWYXJsYXJpb24sIDI5LiBKYW4gMjAwMiwgMjE6NTU6NTkpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMTIzMzc2ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMTUxODAxCkljaCB6d2VpZmxlIG5pY2h0IGFuIHNlaW5lbSBHZWRhZWNodG5pcywgaWNoIFdFSVNTLCB3aWUgc2NobGVjaHQgZXMgaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWmFobGVucmF0ZW4/IChNdXBmZWwsIDI5LiBKYW4gMjAwMiwgMjE6NTY6NDUpOgpEZWluZSBGcmV1bmRpbiBUYXNzcmFtIHRlaWx0IERpciBtaXQ6IDM3IDopCkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IDExMgoKQVNlaC4uLiA0Mj8KCi1tdXBlZmwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFZJUkVOV0FSTlVORyAoR3JpbW1ib3JuLCAyOS4gSmFuIDIwMDIsIDIyOjM4OjM2KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDEyMzQwMzEwIG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49U2lsdmFuYSBydD0xMDEyMzM3NTczIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwMTIzMjU3OTMKTWFuIGthbm5zIGF1Y2ggbm9jaCB3ZWl0ZXIgenVzYW1tZW5mYXNzZW46IFdlciBzaWNoIGR1bW0gdmVyaGFlbHQgYnJhdWNodCBzaWNoCnVlYmVyIFNjaG1lcnplbiBuaWNodCB6dSB3dW5kZXJuLgpPZGVyIG5vY2gga3VlcnplcjogRGFyd2luIGhhdHRlIHJlY2h0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBWSVJFTldBUk5VTkcgKFJvbmRhLCAyOS4gSmFuIDIwMDIsIDIyOjQwOjQwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDEyMzQwMzE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjMyNTc5MwpEYXJ3aW4gaGF0dGUgUmVjaHQ/IFNpY2hlcj8KClJvbmRhICpkZW5rdCBhbiBNJCoKCk9rLCBvaywgRGlub3NhdXJpZXIgc2luZCBhdWNoIG1pdCBuZXIgZ2V3aXNzZW4gVmVyem9lZ2VydW5nIGF1c2dlc3RvcmJlbi4uLgprYW5uIG1hbiBqYSBub2NoIGhvZmZlbiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFZJUkVOV0FSTlVORyAoR3JpbW1ib3JuLCAyOS4gSmFuIDIwMDIsIDIyOjQxOjQ4KToKfiMhIHJuPVJvbmRhIHJ0PTEwMTIzNDA0NDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMzI1NzkzCnd3dy5kYXJ3aW5hd2FyZHMuY29tCkVzIHdpcmQgbWl0IEhvY2hkcnVjayBkYXJhbiBnZWFyYmVpdGV0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFZJUkVOV0FSTlVORyAoUm9uZGEsIDI5LiBKYW4gMjAwMiwgMjI6NDU6MjUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTIzNDA1MDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMzI1NzkzCk5hamEuIERpZSBTaXRlIGlzdCBzbyB6aWVtbGljaCBkaWUgRklOQUxFIFdlYnNpdGUuIEVuZGd1ZWx0aWcuIEhhYmVuIGRpZQplaWdlbnRsaWNoIEJhbm5lciB2b24gQmVzdGF0dHVuZ3N1bnRlcm5laG1lbiBkcmF1Zj8gV2VnZW4gZGVyIEt1bmRlbmJpbmR1bmcKdW5kIHNvLi4uCgpSb25kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVklSRU5XQVJOVU5HIChHcmltbWJvcm4sIDI5LiBKYW4gMjAwMiwgMjI6NDc6NDUpOgp+IyEgcm49Um9uZGEgcnQ9MTAxMjM0MDcyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIzMjU3OTMKRmFsc2NoLCBkaWUgZmluYWxlIFdlYnNlaXRlIGlzdDoKaHR0cDovL3d3dy5zaGlidW1pLm9yZy9lb3RpLmh0bQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGV0aXRpb246IExpbnV4IGluIGRlbiBCdW5kZXN0YWcgKEdyaW1tYm9ybiwgMjkuIEphbiAyMDAyLCAyMjo1MzowMik6Cn4jISBybj1WYW5pb24gcnQ9MTAxMjM0MDc0NyByZz13d3cKfiMhIHRpZD0xMDEyMzQwNzQ3CldvIHdpciBnZXJhZGUgdm9uIERhcndpbiByZWRlbi4uLiBlaWdlbnRsaWNoIGZpbmRlIGljaCBkYXNzIGRpZSBWb3JzdGVsbHVuZwp3YXMgaGF0LCBkYXNzIGVpbiBwcmltaXRpdiB6dXNhbW1lbmdla2xpY2t0ZXIgVmlydXMgZGllIGdhbnplbiBQb2xpdGlrZXIKbGFobWxlZ3QuIEFlaG5saWNoIHdpZSBtaXIgZGFtYWxzIGluIEJlcmxpbiBkZXIgUmVpY2hzdGFnIGdlZmFsbGVuIGhhdHRlOgpWb2xsc3RhZW5kaWcgZW50a2VybnQsIG51ciBub2NoIEZhc3NhZGUsIGRhaGludGVyIG51ciBMdWZ0LiBLZWluZSBBaG51bmcgd2FydW0Kc2llIGRhcyBnZWFlbmRlcnQgaGFiZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU2Nob2VuZXIgV29obmVuIC4uLiAoQ2F0d2VhemxlLCAzMC4gSmFuIDIwMDIsIDE0OjA4OjM1KToKfiMhIG9uPUJvaW5nIG90PTEwMTIzOTM3NTkgb2c9cHVpegp+IyEgcm49TWF0aXMgcnQ9MTAxMjM5MzYyOSByZz1wdWl6Cn4jISB0aWQ9MTAxMjM4NjI2MApXYXMgbWFjaHQgaWhyIGFsbGUgaW4gbWVpbmVtIFRocmVhZD8gSGllciBnZWh0J3MgdW0gc2Nob2VuZXIgV29obmVuIQpSYXVzIGhpZXIhIDspCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFNjaG9lbmVyIFdvaG5lbiAuLi4gKENhdHdlYXpsZSwgMzAuIEphbiAyMDAyLCAxNDowODozOSk6Cn4jISBvbj1NYXRpcyBvdD0xMDEyMzkzODI4IG9nPXB1aXoKfiMhIHJuPUJvaW5nIHJ0PTEwMTIzOTM3NTkgcmc9cHVpegp+IyEgdGlkPTEwMTIzODYyNjAKRy4gQXJiZWl0IGJlc2NoYWZmZW4/IDpvKQoKTWF0aXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFNjaG9lbmVyIFdvaG5lbiAuLi4gKENhdHdlYXpsZSwgMzAuIEphbiAyMDAyLCAxNDowODo0NSk6Cn4jISBvbj1BbWFyeWxsaXMgb3Q9MTAxMjM5Mzk1OCBvZz1wdWl6Cn4jISBybj1Cb2luZyBydD0xMDEyMzkzNzU5IHJnPXB1aXoKfiMhIHRpZD0xMDEyMzg2MjYwCkthdWYgRGlyIGRhcyBCbGF0dCB1bmQgc2VpIHp1ZnJpZWRlbiA6KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU2Nob2VuZXIgV29obmVuIC4uLiAoQ2F0d2VhemxlLCAzMC4gSmFuIDIwMDIsIDE0OjA4OjQ3KToKfiMhIG9uPUJvaW5nIG90PTEwMTIzOTQwMzMgb2c9cHVpegp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMTIzOTM5NTggcmc9cHVpegp+IyEgdGlkPTEwMTIzODYyNjAKQmxhdHQ/IE11c3MgaWNoIGRhcyB2ZXJzdGVoZW4/CiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFNjaG9lbmVyIFdvaG5lbiAuLi4gKENhdHdlYXpsZSwgMzAuIEphbiAyMDAyLCAxNDowODo1Nyk6Cn4jISBvbj1BbWFyeWxsaXMgb3Q9MTAxMjM5NTI0NiBvZz1wdWl6Cn4jISBybj1Cb2luZyBydD0xMDEyMzk0MDMzIHJnPXB1aXoKfiMhIHRpZD0xMDEyMzg2MjYwClsgXSBEdSBrZW5uc3QgZGllIFplaXRzY2hyaWZ0ICJTY2hvZW5lciBXb2huZW4iLgoKQm9haCwgZW5kbGljaCBkdXJmdGUgaWNoIGF1Y2ggbWFsIFsgXSdlbi4uLiA6LSkKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTY2hvZW5lciBXb2huZW4gLi4uIChDYXR3ZWF6bGUsIDMwLiBKYW4gMjAwMiwgMTQ6MDk6MDEpOgp+IyEgb249QW50aGVhIG90PTEwMTIzOTU3MjAgb2c9cHVpegp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMTIzOTUyNDYgcmc9cHVpegp+IyEgdGlkPTEwMTIzODYyNjAKSG0uLi4gaWNoIGtlbm4gZGllIG51ciBhdXMgZGllc2VtIEF1cy1kZW0tRmVuc3Rlci1zY2htZWlzcy1XaXR6IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogU2Nob2VuZXIgV29obmVuIC4uLiAoQ2F0d2VhemxlLCAzMC4gSmFuIDIwMDIsIDE0OjA5OjExKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDEyMzk2MTQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjM4NjI2MApIZSBIZS4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFNjaG9lbmVyIFdvaG5lbiAuLi4gKEFudGhlYSwgMzAuIEphbiAyMDAyLCAxNDoxOToyNSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTAxMjM5NjE1MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIzODYyNjAKU293YXMsIGVpbmZhY2ggZGllc2VuIHNjaG9lbmVuIFRocmVhZCB6dSB2ZXJzY2hpZWJlbi4uLiBVbmQgZGFzIHZvbiBDYXQqIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFNjaG9lbmVyIFdvaG5lbiAuLi4gKEVsYmVyZXQsIDMwLiBKYW4gMjAwMiwgMTQ6MjY6NTgpOgp+IyEgcm49Qm9pbmcgcnQ9MTAxMjM5NzE3MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIzODYyNjAKR3JpbW1ib3JuIGtvZW5udCBqYSBqZXR6dCBuYWNoIGRpc2t1c3Npb24gdmVybGVnZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBTY2hvZW5lciBXb2huZW4gLi4uIChFbGJlcmV0LCAzMC4gSmFuIDIwMDIsIDE0OjI3OjU0KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAxMjM5NzIxOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIzODYyNjAKYWJlciBpY2ggZmluZGUgZXMgbmNpaHQgZ3V0LCBkYXNzIEt1Z2VsIHNpY2ggaGllciBhdWYgMyBEaW1lbnNpb25lbgpiZXNjaHJhZW5rZW4gbXVlc3Nlbi4gRGllIGFybWVuIEt1Z2VsbiwgbWFuIG5pbW10IGlobmVuIGVjaHQgdmllbCB3ZWcuCgpLdWdlbG4gYWxsZXIgRGltZW5zaW9uZW4sIHZlcmVpbmlndCBFdWNoICEhISEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFNjaG9lbmVyIFdvaG5lbiAuLi4gKFphcm5peWEsIDMwLiBKYW4gMjAwMiwgMTQ6Mjg6NTYpOgp+IyEgcm49RWxiZXJldCBydD0xMDEyMzk3Mjc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjM4NjI2MAprYW5uc3QgZGllIEt1Z2VsIGphIGFuc3Rvc3Nlbi4uLiB3ZW5uIHNpZSByb2xsdCwgZGFubiBzaW5kIGVzIHNjaG9uIDQKRGltZW5zaW9uZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogU2Nob2VuZXIgV29obmVuIC4uLiAoRWxiZXJldCwgMzAuIEphbiAyMDAyLCAxNDozMDoxMCk6Cn4jISBybj1aYXJuaXlhIHJ0PTEwMTIzOTczMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMzg2MjYwCndpZXNvIGF1ZiA0IGJlc2NocmFlbmtlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBTY2hvZW5lciBXb2huZW4gLi4uIChHcmltbWJvcm4sIDMwLiBKYW4gMjAwMiwgMTQ6NDA6NDIpOgp+IyEgcm49RWxiZXJldCBydD0xMDEyMzk3NDEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjM4NjI2MApFaW4gcGFhciBkZXIgaW50ZXJlc3NhbnRlcmVuIEFzcGVrdGUgZGVyIGFrdHVlbGxlbiBwaHlzaWthbGlzY2hlbiBNb2RlbGxlCmdvZW5uZW4gc2Nob24gamVkZW0gRWxlbWVudGFydGVpbGNoZW4gZWluZSBndXQgendlaXN0ZWxsaWdlIEFuemFobCB2b24KRGltZW5zaW9uZW4uCgpOYWphLCB1bmQgd2VubiBtYW4gamV0enQgbWFsIERpbWVuc2lvbmVuIGFscyBGcmVpaGVpdHNncmFkZSBzaWVodCAoZGVubgpsZXR6dGxpY2ggYmVzdGltbWVuIGRpZSBqYSBkaWUgRGltZW5zaW9uIGRlciBlbnRzcHJlY2hlbmRlbgpadXN0YW5kc2dsZWljaHVuZ2VuKSBzaW5kIHdpciwgbWlrcm9za29waXNjaCwgYXVmIHJpY2h0aWcgc2NobnVja2VsaWcgdmllbGVuCkRpbWVuc2lvbmVuIGFuZ2VsYW5ndC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFNjaG9lbmVyIFdvaG5lbiAuLi4gKEVsYmVyZXQsIDMwLiBKYW4gMjAwMiwgMTQ6NDI6NTUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTIzOTgwNDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyMzg2MjYwCnNjaG9uIGRpZSBlaW5mYWNoc3RlbiBPcGVyYXRvcmVuIGRlciBRdWFudGVuZHluYW1payBzaW5kIGRvY2gKdW5lbmRsaWNoZGltZW5zaW9uYWwsIG9kZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogU2Nob2VuZXIgV29obmVuIC4uLiAoQ2F0d2VhemxlLCAzMC4gSmFuIDIwMDIsIDE0OjU3OjA1KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAxMjM5ODE3NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTIzODYyNjAKQWVoLCBub2UuCgpZVEMgKGtlaW4gTWF0aGVtYXRpa2VyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2hhcmlhIHdhciBlaW4gQXVnZW5ibGljayBkYS4uLiAoQ3VjaHVsbGluLCAzMC4gSmFuIDIwMDIsIDE1OjQ2OjEzKToKU2hhcmlhICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCltUb2Q6TGFyc10gRWluIEF1Z2VuYmxpY2sgaGF0IGdlcmFkZSBTY29ycGlvbiB1bWdlYnJhY2h0LgpbVG9kOkVpbiBBdWdlbmJsaWNrIHdhciBzY2huZWxsIHZvcmJlaS5dClNoYXJpYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCgoqPz8qIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadXNhbW1lbmhhbmc/IChEZWVwYmx1ZSwgMzAuIEphbiAyMDAyLCAyMzozOTo0OSk6CkRlciBPcmsgamFndCBEaWNoIG5pY2h0IG1laHIuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApPcmt0b2V0ZXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhICAgICAgICAgICAgICAgICAKSG0uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGxlYXJuY2FjaGUgKFNpbHZhbmEsIDMxLiBKYW4gMjAwMiwgMTA6Mjc6NTEpOgp+IyEgb249U2lsdmFuYSBvdD0xMDEyNDY5MjU4IG9nPWdpbGRlbi56YXViZXJlcgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMTI0MDk5ODQgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTAxMjI2MjIwNwpDYWRyYWNoPyBLb21pc2NoPyBWaWVsbGVpY2h0LiBBYmVyIGJlc3RpbW10IG5pY2h0IGx1c3RpZy4uLgoKICBTaWx2YW5hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogU2Nob2VuZXIgV29obmVuIC4uLiAoWm9vaywgMzEuIEphbiAyMDAyLCAxNDozNzo1MCk6Cn4jISBvbj1ab29rIG90PTEwMTI0ODQyNTEgb2c9cHVpegp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTI0ODQxOTggcmc9cHVpegp+IyEgdGlkPTEwMTIzODYyNjAKTWltb3NlIQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBTY2hvZW5lciBXb2huZW4gLi4uIChHcmltbWJvcm4sIDMxLiBKYW4gMjAwMiwgMTQ6Mzk6MTIpOgp+IyEgcm49Wm9vayBydD0xMDEyNDg0MjcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjM4NjI2MApKZXBwLCBkYXMgaXN0IG1laW4gZXJzdGVyIFZvcm5hbWUuIE1laW4gendlaXRlciBWb3JuYW1lIGlzdCB1ZWJyaWdlbnMKIkVzcGVubGF1YiIuCgpNLkUuR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTEsgOikgKEFtYXJ5bGxpcywgMzEuIEphbiAyMDAyLCAxOTozNzoyNik6CltNb2VyZGVyOkdlaXN0IGVpbmVyIFJhdHRlXSBWb24gRWxhaW5lIGJlc2llZ3QgLSB3aWUgcGVpbmxpY2guCltUb2Q6TGFyc10gRWluZSBMZWljaGUgaGF0IGdlcmFkZSBFbGFpbmUgdW1nZWJyYWNodC4KCkFtYSogZGVua3QgLiBvIE8gKEthZW1wZmVyLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogWndlaSBadWVuZHNjaG51ZXJlIChDYXR3ZWF6bGUsICAxLiBGZWIgMjAwMiwgMTA6NTQ6NDgpOgp+IyEgb249TXVhZGliIG90PTEwMTI1NTcxNTIgb2c9cHVpegp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTI0NzQzODQgcmc9cHVpegp+IyEgdGlkPTEwMTI0NzI4ODkKZGllIHB1bHNzY2hsYWVnZSB6YWVobHN0IGR1IGFuaGFuZCBkZXIgZm9udGFlbmUgYXVzIGRlaW5lbSBhYmdlYmlzc2VuZW4gYXJtPwpvYiBkdSBkYSA1IHZpZXJ0ZWxzdHVuZGVuIHVlYmVybGVic3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERlciBtYWdpc2NoZSBIaWxiZXJ0IHVuZCBkZXIgaGVpc3NlIFByZWlzIChHcmltbWJvcm4sICAxLiBGZWIgMjAwMiwgMTI6MjI6MTkpOgp+IyEgcm49QW5hY3Jpb24gcnQ9MTAxMjU2MjQ3MyByZz1wdWl6Cn4jISB0aWQ9MTAxMjU2MDc2MgpJbW1lciBkaWVzZSB6dC1nZWlsZW4gU3BpZWxlci4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEZXIgbWFnaXNjaGUgSGlsYmVydCB1bmQgZGVyIGhlaXNzZSBQcmVpcyAoQ3VjaHVsbGluLCAgMS4gRmViIDIwMDIsIDEyOjIzOjI1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDEyNTYyNTM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjU2MDc2MgpFciB3aXJkIGRhcyBmYWxzY2hlIG1hY2hlbi4gRXIgaXN0IFpXRVJHLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9obmUga29udGV4dCA6LSkgKFZhcmRpb24sICAxLiBGZWIgMjAwMiwgMTM6MTE6NDEpOgpbQWxsZ2VtZWluOkJvaW5nXSB3aW5kb3dzIFhQPwpbQWxsZ2VtZWluOkdhc3Q1XSBqYQpbQWxsZ2VtZWluOkJvaW5nXSBkYXMgaXN0IHNjaGxlY2h0CgpWYXJkaW9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogb2huZSBrb250ZXh0IDotKSAoQW50aGVhLCAgMS4gRmViIDIwMDIsIDEzOjEzOjEzKToKfiMhIHJuPVZhcmRpb24gcnQ9MTAxMjU2NTUwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTI1NjU1MDEKSmFqYS4KV2VubiBtYW4gZWluZSBXaW5kb3dzWFAtQ0QgcnVlY2t3YWVydHMgYWJzcGllbHQsIGthbm4gbWFuIGVpbmUgTmFjaHJpY2h0IHZvbQpUZXVmZWwgaG9lcmVuLgpXZW5uIG1hbiBlaW5lIFdpbmRvd3NYUC1DRCB2b3J3YWVydHMgYWJzcGllbHQsIGlzdCBlcyBub2NoIHNjaGxpbW1lciEgRGFubgppbnN0YWxsaWVydCBzaWNoIFdpbmRvd3NYUCEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVnYXNjaG1hcnJuLi4uIChab29rLCAgMS4gRmViIDIwMDIsIDEzOjIxOjA0KToKLi4uIGhhdCBSZSAyMTAwMyBlcnJlaWNodC4gSXN0IGRhcyBuaWNodCB0b2xsPyA6LSkKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWVnYXNjaG1hcnJuLi4uIChTaWx2YW5hLCAgMS4gRmViIDIwMDIsIDEzOjIyOjI4KToKfiMhIHJuPVpvb2sgcnQ9MTAxMjU2NjA2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTI1NjYwNjQKSWNoIGZhZW5kJ3MgdmllbCB0b2xsZXIsIHdlbm4gZGVyIE11ZWxsIGRhIGJsZWliZW4gd3VlcmRlLCB3byBlciBoaW5nZWhvZXJ0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBvaG5lIGtvbnRleHQgOi0pIChBbWFyeWxsaXMsICAxLiBGZWIgMjAwMiwgMTM6MjU6MTUpOgp+IyEgcm49VmFyZGlvbiBydD0xMDEyNTY1NTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjU2NTUwMQpXYXMgaGF0IGRhcyBtaXQgU2NobWFycm4genUgdHVuPwpXbyBlciBSZWNodCBoYXQsIGhhdCBlciBSZWNodC4uLiA6KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRldWVyIChHcmltbWJvcm4sICAxLiBGZWIgMjAwMiwgMTc6MDY6NDIpOgp+IyEgcm49QW50aGVhIHJ0PTEwMTI1NzE2NjAgcmc9d2l0emUKfiMhIHRpZD0xMDEyNTcxNjYwCkRlbiBoYWIgaWNoIG5pY2h0IHZlcnN0YW5kZW4sIHdhcyBoYXQgZGVubiBkaWUgVHVlciBkYW1pdCB6dSB0dW4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHZWlzdGVza3JhbmsgKE5hZGRsLCAgMS4gRmViIDIwMDIsIDE5OjIyOjQwKToKfiMhIHJuPUFudGhlYSBydD0xMDEyNTczNTkwIHJnPXd3dwp+IyEgdGlkPTEwMTI1NzM1OTAKR2lsdCAqYWVyZ2VybiB1ZWJlciAid29sbGVuIFNpZSBYWFggYWxzIFN0YXJ0c2VpdGUgZmVzdGxlZ2VuIiogYWxzIHdpdHppZz8KCmkuQS4gR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHZWlzdGVza3JhbmsgKEN1Y2h1bGxpbiwgIDEuIEZlYiAyMDAyLCAxOTo0MzowOSk6Cn4jISBybj1WYW5pb24gcnQ9MTAxMjU3NzI4MSByZz13d3cKfiMhIHRpZD0xMDEyNTczNTkwCmh0dHA6Ly93d3cua2F0dW5rLmNvbS93aW5kb3dzLyBmYW5kIGljaCBqYSB2aWVsIGJlc3Nlci4uLiA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBkZW5uIG51bj8gKE9ya3RvZXRlciwgIDIuIEZlYiAyMDAyLCAwMDo0ODoyMCk6CiBTb2ViZW4gZ2VzY2hlaGVuLCB1bmdla3Vlcnp0OgoKQ2F0d2VhemxlIGlzdCBkYS4gRHUgZnVlaGxzdCBEaWNoIHNpY2hlci4KW0dyYXRzOlJvbGFuZF0gR3Jhelp6CltHcmF0czpEcmFjb10gZ3JhdHMKRHUgZGVua3N0IG5vY2ggbWFsIG5hY2ggdW5kIGZhZW5nc3QgYW4gYWVuZ3N0bGljaCB6dSB6aXR0ZXJuLi4uCltUb2Q6TGFyc10gRWluIEZsdWdkYWVtb24gaGF0IGdlcmFkZSBOdW1lbm9yZXIgdW1nZWJyYWNodC4gCgoKT3JrVCwgc2ljaCBuaWNodCB3aXJrbGljaCBzaWNoZXIgZnVlaGxlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZW5hdSBkYXMgKFJvbGFuZCwgIDIuIEZlYiAyMDAyLCAwMToyNDozOCk6CgpTb3dhcyBzb2xsIGZhc3QgamVkZW4gVGFnIGdlc2NoZW4hCgpSb2xhbmQgelp6enp0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgKEZvb2JhciwgIDIuIEZlYiAyMDAyLCAwMzozOTowOCk6CkZyb206IHIua2Vyc3RlbkBCSUxLSU5GTy5kZSAoUmFpbmVyIEtlcnN0ZW4pCk5ld3Nncm91cHM6IGRlLmFsdC5zeXNhZG1pbi5yZWNvdmVyeQpNZXNzYWdlLUlEOiA8YzE3ZjAxYmUuYmFjMC5jMTBiQFJBSU5FUi5CSUxLSU5GTy5kZT4KU3ViamVjdDogUmU6IERBUApEYXRlOiBUaHUsIDMxIEphbiAyMDAyIDAzOjM0OjA4ICswMjAwCgpyZWdpbmFrYXBwZXMgbWVpbnRlIGFtIDMwLjAxLjIwMDI6CgpbVG9hc3RlciBicmVubnRdCj4gVmllbGxlaWNodCB3YWVyZSBlcyBiZXNzZXIsIHN0YXR0IGRlcgo+IFdlYmNhbSBlaW5lIGF1dG9tYXRpc2NoZSBMb2VzY2h2b3JyaWNodHVuZyB6dSBpbnN0YWxsaWVyZW4/CgpEYXMgaGFiZW4gd2lyIGhpZXIgbWFsIGdldGVzdGV0LiBHaW5nIG5pY2guCgpXZWlsOiBBbHMgZGVyIFRvYXN0ZXIgbWVya3RlLCBkYXNzIGRlciBUb2FzdCBuaWNodCB0b2FzdGV0LCBzb25kZXJuIAprb2tlbHQsIGhhdCBlciBuZSBNYWlsIGFuIGRpZSBTcHJpbmtsZXJhbmxhZ2UgZ2VzY2hpY2t0LiBIYXQgZGllIGF1Y2ggCmJlc3RhZXRpZ3QuCgpEaWUgaGF0IHNpY2ggYWJlciBuaWNodCBlaW5nZXNjaGFsdGV0LCBzb25kZXJuIGVyc3RtYWwgZWluZSBNYWlsIGFuIApkZW4gTmFlc3Nlc2Vuc29yIGltIEJvZGVuIGdlc2NoaWNrdCB1bmQgZGllIEZldWNodGlna2VpdCBhYmdlZnJhZ3QuIERpZSAKd2FyIGxhdXQgQW50d29ydG1haWwgdm9tIFNlbnNvciBob2NoIGdlbnVnLiBBbHNvIHN0ZWxsdGUgZGllIApTcHJpbmtsZXJhbmxhZ2UgZGVuIGRlZmF1bHQtWnVzdGFuZCBmZXN0IHVuZCBkaWUgVmVudGlsZSB6dS4KCkRhcyBsYWcgd2llZGVydW0gZGFyYW4sIGRhc3MgZGVyIEt1ZWhsc2NocmFuayBzdGFlbmRpZyBNYWlscyB2b24gYmVpZGVuIApXYWVybWVzZW5zb3JlbiAoaW50ZXJuIHVuZCBleHRlcm4pIGtyaWVndGUsIGRhc3MgYmVpZGUgVGVtcGVyYXR1cmVuIAprb250dW5pZXJsaWNoIHN0ZWlnZW5bMV0uIEFscyBlciBkaWUgVGVtcGVyYXR1ciB0cm90eiBWb2xsbGFzdCBuaWNodCAKcnVudGVyZ2VkcnVlY2t0IGtyaWVndGUsIG5haG0gZXIgZ2VtYWVzcyBLb25maWd1cmF0aW9uIFZlcmVpc3VuZyBhbiB1bmQgCnNjaGFsdGV0ZSBhdWYgQWJ0YXVlbi4KCldlaWwgYWJlciBtZWluIGtsZWluZXIgQnJ1ZGVyLCBkZXIgdm9tIEludGVybmV0IHNvdmllbCBBaG51bmcgaGF0IHdpZSAKV2luZG9vZiB2b24gU2ljaGVyaGVpdCwgYmVpIGRlciBNaWxjaGVudG5haG1lIChvaG5lIFZvcmJlc3RlbGx1bmcgcGVyIApNYWlsLCBkZXIgU2NodWZ0ISkgZGllIFR1ZXIgbmljaHQgcmljaHRpZyB6dSBtYWNodGUsIGZsb3NzIGRpZSBTdXBwZSAKYXVmIGRlbiBLdWVjaGVuYm9kZW5bMl0uCgpLbGFyIGhhbXdlciBhdWNoIG5lIFdlYmNhbSBhbHMgRmFsbGJhY2stVWViZXJ3YWNodW5nLiBBYmVyIGVyc3RlbnMgCmxhZXVmdCBkYXMgQmlsZCBhdWYgZGVtIFJlY2huZXIgbWVpbmVyIGdyb3NzZW4gU2Nod2VzdGVyLCB1bmQgZGllIGhhdCAKc3RhZW5kaWcgZWluIEJyb3dzZXJmZW5zdGVyIGF1ZiBWb2xsYmlsZCBtaXQgJGFrdHVlbGxlbV90ZWVuaWVzdGFyIApkYXJ1ZWJlciBsaWVnZW4uCgpBdXNzZXJkZW0gaGFldHRlIGRhcyBhdWNoIG5peCBnZWhvbGZlbiwgd2VpbCBhbHMgZGVyIFRvYXN0ZXIgaW0gCmxldHp0ZW4gVG9kZXN6dWNrZW4gZG9jaCBub2NoIGRhcyBLb2hsZXN0dWVjayBhdXN3YXJmLCBkYW5uIG1pdCBkZXJtYXNzZW4gClNjaHd1bmcsIGRhc3MgZXIgaW0gYmFsbGlzdGlzY2ggcGVyZmVrdGVuIEJvZ2VuIGRpZSBXZWJjYW0gdHJhZiB1bmQgCnNjaHJlZGRlcnRlWzVdLgoKUmljaHRpZyBpbnRlcmVzc2FudFszXSB3dXJkZSBlcyBlcnN0LCBhbHMgZGVyIEt1ZWhsc2NocmFuayBtaXQgZGVtIApBYnRhdWVuIGZlcnRpZyB3YXIsIHVuZCB3aWVkZXIgYW5mYW5nZW4gd29sbHRlIHp1IGt1ZWhsZW4uIERlciBoYXQgCm5hZW1saWNoIGdlbWVya3QsIGRhc3MgZGVyIEFidGF1dm9yZ2FuZyB2ZXJibHVlZmZlbmQgc2NobmVsbCBnaW5nWzRdLCAKdW5kIGhhdCBzZWluZW4gU2Vuc29yZW4gZGllIGVpZ2VuZW4gV2VydGUgbmljaHQgbWVociBnZWdsYXVidC4gVm9yIAphbGxlbSBuaWNodCBkZW0gQXVzc2Vuc2Vuc29yLiBEYSBoYXQgZXIgYWxzbyBuZSBNYWlsIGFuIGRpZSAKS2xpbWFhbmxhZ2UgZ2VzY2hpY2t0IG1pdCBkZXIgQml0dGUgdW0gQmVzdGFldGlndW5nIGRlciAKVGVtcGVyYXR1cndlcnRlLgoKRGllIHdhciBhYmVyIGd1dCBkYW1pdCBhdXNnZWxhc3RldCwgZGVuIFF1YWxtIGluIGRlciBLdWVjaGUgaW4gc293YXMgCndpZSAiYXRlbWJhcmUgTHVmdCIgdW16dXdhbmRlbG4sIHVuZCBzY2hpY2t0ZSBzdGFlbmRpZyBNYWlscyBhbiBkaWUgClNwcmlua2xlcmFubGFnZSwgd2llc28gc2llIG5pY2h0IHNwcmlua2VsdC4KCkRpZSBzY2hyaWViIGltbWVyIHp1cnVlY2s6ICJJY2ggaGFiIGFsbGVzIGltIEdyaWZmLiBFcyBpc3QgbmFzcyBnZW51ZyEiCktsaW1hYW5sYWdlOiAiSWNoIHJlZGUgdm9uIFF1YWxtISIKU3ByaW5rbGVyYW5sYWdlOiAiQmluIGljaCBuaWNodCB6dXN0YWVuZGlnLiBTY2htZWlzcyBEZWluZW4gVmVudGlsYXRvciAKYW4uIgpLbGltYWFubGFnZTogIlVuZCB3YXMgc2Fnc3QgRHUgenUgZGVuIDgwIEdyYWQgVGVtcGVyYXR1cj8iClNwcmlua2xlcmFubGFnZTogIkxhdXQgS29uZmlndXJhdGlvbiBoYWJlIGljaCBiZWkgQnJhbmQgZnVlciBOYWVzc2UgenUgCnNvcmdlbi4gRG9uZS4gRnVlciBkaWUgVGVtcGVyYXR1ciBiaXN0IER1IHp1c3RhZW5kaWchIgoKRGFubiBoYWJlbiBkaWUgZHJlaSAoS3VlaGxzY2hyYW5rLCBLbGltYWFubGFnZSB1bmQgU3ByaW5rbGVyYW5sYWdlKSAKbm9jaCBlaW5lIE1haWxpbmdsaXN0ZSBlaW5nZXJpY2h0ZXQgdW5kIG5lbiBvcmRlbnRsaWNoZW4gRmxhbWV3YXIgCmdlc3RhcnRldC4gSWNoIGZyYWcgbWljaCBudXIsIHdhcnVtIGRpZSBkZW4gVG9hc3RlciBuaWNodCB2ZXJtaXNzdCAKaGFiZW4uIERlciBtaXNjaHQgYmVpIHNvd2FzIGltbWVyIGdlcm5lIG1pdC4KCkJldm9yIGRhcyBOZXR6d2VyayBpbiBkZXIgTWFpbC1GbHV0IGVyc3RpY2t0ZSwgcmV0dGV0ZSBkaWUgS2F0emUgc2ljaCAKc2VsYnN0IHVuZCBkaWUgS3VlY2hlIG1pdCBlaW5lbSBiZWhlcnp0ZW4gU3BydW5nIGluIGRpZSAKV2FzY2htYXNjaGluZW4tVHJvbW1lbC4KCkRlciBHZXdpY2h0c3NlbnNvciBpbiBkZXIgVHJvbW1lbCBtZWxkZXRlIGFuIGRpZSBNYXNjaGluZTogCiJGdWVsbHVuZyBpc3QgZXJmb2xndCIuIExhdXQgS29uZmlndXJhdGlvbiBzb2xsdGUgamV0enQgZWlnZW50bGljaCBkZXIgCldhZXNjaGV0cm9tbWVsdHVlcnNlbnNvciBhYmdlZnJhZ3Qgd2VyZGVuLCBiZXZvciBpcmdlbmR3YXMgYW5kZXJlcyAKZ2VzdGFydGV0IHdpcmQuIFd1cmRlIGFiZXIgbmljaHQuIERhcyB3YXIgaW4gZGVtIEZhbGwgYXVjaCBndXQgc28uCgpEaWUgTWFzY2hpbmUgbWFjaHRlIGVpbmUgV2Flc2NoZWZ1ZWxsdW5nc2FuYWx5c2UgdW5kIHN0ZWxsdGUgZmVzdDogCiJLYXR6ZW5mZWxsIiBBTEFSTSEhISBEYXMgaXN0IG5hZW1saWNoIHNvIHppZW1saWNoIGRlciBlaW56aWdlIEZhbGwsIApkZW4gZGFzIGludGVsbGlnZW50ZSBOZXR6IG5pY2h0IGFsbGVpbmUgcmVnZWxuIGRhcmYuIEFsc28gc2NoaWNrdGUgZGllIApXYXNjaG1hc2NoaW5lIGVpbmUgTWFpbCBhbiBkaWUgQWxhcm1hbmxhZ2UgdW5kIHNldHp0ZSBkZW4gClJ1ZXR0ZWwtTWVjaGFuaXNtdXMgaW4gR2FuZywgdW0gZGllIEthdHplIHp1IHZlcnNjaGV1Y2hlbi4KCkRhcyBnYWIgZWluZW4gbmV0dGVuIEdlcmFldXNjaGUtTWl4IGF1cyBLYXR6ZW5nZXNjaHJlaSwgQWxhcm1hbmxhZ2UgdW5kIApXYXNjaG1hc2NoaW5lbnJ1ZXR0ZWxuLiBHZWlsZXIgU291bmQhIERlciBFcmRiZWJlbnNlbnNvciBoYXQgcHJvbXB0IAptZWluZSBBYmhvZXJhbmxhZ2UgcGVyIE1haWwgZ2ViZXRlbiwgZGFzIGF1Znp1emVpY2huZW4uCgpKZWRlbmZhbGxzIGhvZXJ0ZSBtZWluZSBTY2h3ZXN0ZXIgZGFzIGltIEhpbnRlcmdydW5kIGJpcyBpbiBpaHJlIApLb3BmaG9lcmVyLCBzdHVlcm10ZSB6dXIgS3VlY2hlLCByaXNzIGRpZSBUdWVyIGF1ZiAtIHVuZCBtYWNodGUgc2llIApzY2huZWxsIHdpZWRlciB6dS4KCkRhbm4gc2NoaWNrdGUgc2llIG1pciBuZSBNYWlsLCB1bmQgaWNoIGJpbiBkYW5uIHJlbW90ZSBpbnMgS29udHJvbGxzeXN0ZW0gCnVuZCBoYWIgZGFzIHZvbiBIYW5kIHdpZWRlciBnZXJlZ2VsdFs2XS4gTnVyIGRlciBUb2FzdGVyIHdhciBTY2hyb3R0LiAKU2NoYWRlIGVpZ2VudGxpY2guCgpTbywgdW5kIGpldHp0IGdlaCBpY2ggd2llZGVyIHp1cnVlY2sgaW5zIEphaHIgMjAwMi4KCkd1dCB2ZXJuZXR6dGUgR3J1ZXNzZQpSYWluZXIgS2Vyc3RlbgoKWzFdIEtlaW4gV3VuZGVyLCB3ZW5ucyBicmVubnQuClsyXSBCZWkgR2VsZWdlbmhlaXQgbXVzcyBpY2ggZGEgbWFsIG5lbiBUdWVyc2Vuc29yIGludGVncmllcmVuLiAKWzNdIG5ldHp0ZWNobmlzY2ggZ2VzZWhlbgpbNF0gLT4gWzFdCls1XSBJY2ggaGFiIG1pciBkaWUgQXVmemVpY2hudW5nIGFuZ2VzZWhlbi4gS29tbXQgaG9sbHl3b29kaXNjaCBndXQsIAp3ZW5uIGluIGVpbmVyIGJyZW5uZW5kZW4gS3VlY2hlIGVpbiBicmVubmVuZGVzIFN0dWVjayBUb2FzdCBhdWYgRGljaCAKenVnZWZsb2dlbiBrb21tdCEKWzZdIERhcyB3YXIgZGFzIGtyYXNzZXN0ZSBMb2dmaWxlLCB3YXMgaWNoIGplIGdlc2VoZW4gaGFiZS4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcmljaHRpZyB3YXMgbG9zIGhpZXIgLi4uIChLb2JheWFzaGksICAyLiBGZWIgMjAwMiwgMTA6NDQ6NDcpOgo+IGt3ZXIgbmljaHQgaWRsZQogICAgICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gU2FtLCAgMi4gRmViIDIwMDIsIDEwOjQzOjQzICgwIFRlaWxuZWhtZXIpCgpLb2JheWFzaGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiByaWNodGlnIHdhcyBsb3MgaGllciAuLi4gKEVsYmVyZXQsICAyLiBGZWIgMjAwMiwgMTA6NDU6NTgpOgp+IyEgcm49S29iYXlhc2hpIHJ0PTEwMTI2NDMwODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyNjQzMDg3CmRhbm4gbWFjaCBtYWwga3dlciBhbGxlIGF1c3NlciBpZGxlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHJpY2h0aWcgd2FzIGxvcyBoaWVyIC4uLiAoTWFhcmcsICAyLiBGZWIgMjAwMiwgMTA6NDc6MTgpOgp+IyEgcm49RWxiZXJldCBydD0xMDEyNjQzMTU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjY0MzA4NwpVZWJyaWdlbnMgemVpZ2VuICJrd2VyIGFsbGUgYXVzc2VyIGlkbGUiIHVuZCAia3dlciBhbGxlIGF1c3NlciBuaWNodCBpZGxlIiBkYXMKZ2xlaWNoIGFuLiA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHJpY2h0aWcgd2FzIGxvcyBoaWVyIC4uLiAoTWFhcmcsICAyLiBGZWIgMjAwMiwgMTA6NDk6MjkpOgp+IyEgcm49TWFhcmcgcnQ9MTAxMjY0MzIzOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTI2NDMwODcKV293LCBlcyBnZWh0IHNvZ2FyICJrd2VyIGFsbGUgbnVyIG5pY2h0IGRpZSwgZGllIGlkbGUgc2luZCIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNPIGVpbiBCYXJ0Li4uIChWYW5pb24sICAyLiBGZWIgMjAwMiwgMTg6MjI6NDIpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMTI2NzA1MDAgcmc9d2l0emUKfiMhIHRpZD0xMDEyNjMzNjQ5CkhtbSwgd2VsY2hlcyBkZXIgdm9yZ2VzY2hsYWdlbmVuIERpc2t1c3Npb25zdGhlbWVuIGdyZWlmIGljaCBkZW5uIG51IGF1Zj8KClYqLCBzY2htYXJybiwgbmF0dWVybGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNPIGVpbiBCYXJ0Li4uIChWYW5pb24sICAyLiBGZWIgMjAwMiwgMTg6Mjk6NTApOgp+IyEgcm49VmFuaW9uIHJ0PTEwMTI2NzA1NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyNjMzNjQ5Ck9rLCBpY2ggaGFiIG1pY2ggZnVlciBHaWxkZW5iYWxhbmNlIGVudHNjaGllZGVuOiAKQXVmIFd1bnNjaCBlaW5lciBlaW56ZWxuZW4gRXJ6bWFnaWVyaW4gaGV1dGUgbWFsIGVpbmUgR2lsZGUsIGRpZSBuaWNoIHNvIG9mdApGZXVlciBiZWtvbW10IQoKRGllIEFiZW50ZXVyZXIgc2luZCB6dSBzdGFyayEKCkJlaXNwaWVsZTogCjEuIEltZGE6IEhhdCBnZXJ1ZWNodGV3ZWlzZSBkaWUgR2lsZGUgbm9jaCBuaWUgdmVybGFzc2VuIC0gaG9lY2hzdGVucyBtYWwgdW0KTGFycyB6dSBiZXN1Y2hlbi4gVW5kIHNjaGF1dCBldWNoIHNlaW4gTGV2ZWwgYW4uIAoyLiBab29rOiBJc3QgenVnZWdlYmVuZXJtYXNzZW4gZGVyIG1hZWNodGlnc3RlIEFiZW50ZXVyZXIgLSBhYmVyIGRhcyBkaWVzZW4KUG9zdGVuIG51ciBlaW5lciBoYWJlbiBrYW5uIHdhciBiZWkgZGVuIEVyem1hZ2lzdGVybiAob2RlciB3aWUgZGllIGhpZXNzZW4pCmF1Y2gga2VpbiBHcnVuZCBkaWUgZHJhbnp1bGFzc2VuLgoKQWxzbzogQWJlbnRldXJlciBhYndlcnRlbiEhIQoKVioKUFM6IE1hbiBiZWFjaHRlIGRpZSBncm9zc3p1ZWdpZ2UgQW53ZW5kdW5nIHZvbiBBdXNydWZlemVpY2hlbiwgZGllIGF1ZiBkaWUKYmVzb25kZXJlIERyaW5nbGljaGtlaXQgZGVyIFByb2JsZW1hdGlrIGtsYXIgaGlud2Vpc2VuLgoKUFBTOiBEaWUgUnVicmlrIGlzdCByaWNodGlnIGdld2FlaGx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU08gZWluIEJhcnQuLi4gKEN1Y2h1bGxpbiwgIDIuIEZlYiAyMDAyLCAxODo1NDo1Nik6Cn4jISBybj1WYW5pb24gcnQ9MTAxMjY3MDk5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTI2MzM2NDkKWnUgd2VuaWcgR3Jvc3NidWNoc3RhYmVuLiBTb3JyeS4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTTyBlaW4gQmFydC4uLiAoVmFuaW9uLCAgMi4gRmViIDIwMDIsIDE4OjU1OjI1KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDEyNjcyNDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjYzMzY0OQpNSVNUOyBJQ0ggTEVSTkUgREFTIE5JRSEhIQoKViosIGdyaW5zdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFNPIGVpbiBCYXJ0Li4uIChUd2luc2VuLCAgMy4gRmViIDIwMDIsIDEwOjA5OjAwKToKfiMhIHJuPVZhbmlvbiBydD0xMDEyNjcwOTkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMjYzMzY0OQpHZW5hdSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmphamEgKFBpdGZhbGwsICA0LiBGZWIgMjAwMiwgMTE6Mjc6NTIpOgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgpEZWluZSBGcmV1bmRpbiBOb25uZSB0ZWlsdCBEaXIgbWl0OiBtZW5zYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNYWtsZXIgaW4gRCAoR3JpbW1ib3JuLCAgNC4gRmViIDIwMDIsIDIwOjA1OjU0KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDEyODQ5NTQ4IG9nPXN1Y2hlLWJpZXRlCn4jISBybj1BbWFyeWxsaXMgcnQ9MTAxMjg0OTQ2NiByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwMTI4NDkyMjAKVGphLCBkYXNzIFVuZ2V6aWVmZXIgdmVyZWluemVsdCBhdWZ0cml0dCBpc3QgamEgYXVjaCBuaWNodCB6dSBlcndhcnRlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFMgKGZhbW91cyBsYXN0IHNlbGJzdGVya2VubnRuaXMpIChDdWNodWxsaW4sICA1LiBGZWIgMjAwMiwgMDg6MTM6MzgpOgpLZXNhaHIgcnVmdDogSWNoIElkaW90IQpbVG9kOkxhcnNdIFNpYW1pbCBoYXQgZ2VyYWRlIEtlc2FociB1bWdlYnJhY2h0LgpbVG9kOlNpYW1pbF0gU2VsYnN0IHNjaHVsZCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG5lbGxlIEFudHdvcnQgKERyYWNvLCAgNS4gRmViIDIwMDIsIDEyOjI3OjA2KToKRHUgdGVpbHN0IFBhcnJhIG1pdDogbmEgZ2Voc3QgZHUgenVyIHBhcnR5ID8KUGFycmEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpBbHNvIGljaCBtdXNzIHNhZ2VuIC0gcHJvbXB0ZSBhbnR3b3J0IC0gd2llc28gZXJpbm5lcnQgbWljaCBkYXMgbnVyIGFuOiAiSWNoCm11c3Mgd2VnIiA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBYWFoamEhIChWYXJsYXJpb24sICA1LiBGZWIgMjAwMiwgMTk6NDE6NDkpOgpBcm1pdGFnZSB0ZWlsdCBEaXIgbWl0OiBzb2dhciB6bXVkIGxhZXVmdCAuLi4gOykKQXJtaXRhZ2UgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpWYXJsKiwgc2NobXVuemVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmljaCBnZWJzIGF1Zi4uLiAoSW1kYSwgIDUuIEZlYiAyMDAyLCAyMzo1MjoxMik6CltBYmVudGV1ZXI6QmFtYmldIGRhIGdpYnRzIG5lIFp1c2F0enF1ZXN0OiAiS29tbSBsZWJlbmQgd2llZGVyIGluIGRpZQpbQWJlbnRldWVyOkJhbWJpXSBBYmVudGV1cmVyZ2lsZGUgenVydWVjay4iCltBYmVudGV1ZXI6SW1kYV0gZGllIGZlaGx0IG1pciBub2NoCk5vY2hvaSB0ZWlsdCBEaXIgbWl0OiBtYWNoIGRpciBuaWNodHMgZHJhdXMsIGdpbmcgbWlyIGFtIGFuZmFuZyBhdWNoIGltbWVyIHNvLApOb2Nob2kgdGVpbHQgRGlyIG1pdDogaW56d2lzY2hlbiBnZWh0IGVzIChmYXN0KQpOb2Nob2kgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IFRlbGVrb20tUmVzZWxsZXIuCkVpbmdlbG9nZ3Qgc2VpdDogRGllLCAgNS4gRmViIDIwMDIsIDIzOjE0OjQ1ClZvbGxlciBOYW1lOiBOb2Nob2kgZGllIFN0cmV1bmVyaW4KUmFzc2U6IE1lbnNjaCwgIEdpbGRlOiBBYmVudGV1cmVyLCAgR2VzY2hsZWNodDogd2VpYmxpY2gKQWx0ZXI6IDFkIDAzOjI3OjI0LCAgIFNwaWVsZXJsZXZlbDogMywgICBHaWxkZW5sZXZlbDogMwpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBTb24sIDI3LiBKYW4gMjAwMiwgMjE6Mjc6MzEKQmlzaGVyIGJlcmVpdHMgNCBtYWwgZ2VzdG9yYmVuCgpJbWRhLiBTb2xsdGUgaW4gcmVudGUgZ2Vobi4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldGRpZ2VzdCAoRm9vYmFyLCAgNi4gRmViIDIwMDIsIDAwOjU0OjM1KToKRnJvbTogTWF0dGhpYXMgS2FiZWwgPG1hdHRoaWFzQHR5Y2hlLmRlPiAKTmV3c2dyb3VwczogZGUuYWx0LnN5c2FkbWluLnJlY292ZXJ5IApTdWJqZWN0OiBSZTogS3JlYXRpdmVyIEVpbnNhdHogdm9uIG1vZGVybmVyIFRlY2huaWsgCkRhdGU6IDA0IEZlYiAyMDAyIDEzOjM5OjQ3ICswMTAwIAoKTWFyYyBIYWJlciA8bWgrdXNlbmV0MDExM0B6dWdzY2hsdXMuZGU+IHdyaXRlczoKCj4gTWF0dGhpYXMgS2FiZWwgPG1hdHRoaWFzQHR5Y2hlLmRlPiB3cm90ZToKPiA+TWVpbiBCcnVkZXIgaGF0IG1hbCB6d2VpIFNlbWVzdGVyIEUtVGVjaG5payBpbiBLYXJsc3J1aGUgZ2VtYWNodCwgZXIKPiA+bWVpbnRlLCBlcyBnYWViZSBudXIgd2VuaWdlIEZyYXVlbiB1bmQgZGllIHNhZWhlbiBhdWNoIHNvIGF1cy4KPiAKPiBEaWUgYmVpZGVuIGF0dHJha3RpdnN0ZW4gRnJhdWVuLCBkaWUgbWlyIGluIDI2IFNlbWVzdGVybiBVbmkgS2FybHNydWhlCj4gdWViZXIgZGVuIFdlZyBnZWxhdWZlbiBzaW5kLCB3YXJlbiBJbmZvcm1hdGlrZXJpbiB1bmQgRS1UZWNobmlrZXJpbi4KCk5hY2ggMjYgU2VtZXN0ZXJuIEUtVGVjaG5payBrb21tdCBlaW5lbSB3YWhyc2NoZWlubGljaCBqZWRlIEZyYXUKYXR0cmFrdGl2IHZvci4KCk1hdHRoaWFzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZW5hdSBkYXMgOikgKFJvbGFuZCwgIDYuIEZlYiAyMDAyLCAwMjo0MzozNik6CgpBYmVudGV1ZXI6UGFycmEgbmlsczogaWNoIGthbm4gbWl0IGRlbSBwZmVyZCB1bmQgZGVyIGt1aCBzcHJlY2hlbiwgbmljaHQKQWJlbnRldWVyOlBhcnJhIGFiZXIgbWl0IGRlbiBnYWVuc2VuIC4uLgpBYmVudGV1ZXI6UGFycmEgaGFiIGljaCB3YXMgdmVyZ2Vzc2VuID8gCkFiZW50ZXVlcjpKb3NodWEgc3ByaWNoIG1hbCBtaXQgZGVuIHdpbGRnYWVuc2VuCgpvZWhtIGphIDopCgpSb2xhbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2VtaW5hcnRoZW1lbiAoQ2F0d2VhemxlLCAgNi4gRmViIDIwMDIsIDA5OjQ5OjM0KToKfiMhIG9uPURlZXBibHVlIG90PTEwMTI5NTM1MzYgb2c9cGFydHkKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwMTI5NTIyNjEgcmc9cGFydHkKfiMhIHRpZD0xMDEyOTUxOTgxCkFlaG0sIG1hbiBzb2xsdGUgZGllIEF1dG9yZW4gZWlubGFkZW4gdW5kIGRhenUgYmV3ZWdlbiwgZGllIGVudHNwcmVjaGVuZGVuCkdlZ2VuZGVuIHdpZWRlciBhbnp1a2xhbW1lbi4KRGVlcCwgZGllIGZhbHNjaGUgUnVicmlrIGVyd2lzY2h0IGhhYmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2VtaW5hcnRoZW1lbiAoQ2F0d2VhemxlLCAgNi4gRmViIDIwMDIsIDA5OjQ5OjM4KToKfiMhIG9uPUZvb2JhciBvdD0xMDEyOTUzNTY3IG9nPXBhcnR5Cn4jISBybj1EZWVwYmx1ZSBydD0xMDEyOTUzNTM2IHJnPXBhcnR5Cn4jISB0aWQ9MTAxMjk1MTk4MQpHZW5hdSwgU2tlbGV0dGUgYW5oYWVuZ2VuIQoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTZW1pbmFydGhlbWVuIChDYXR3ZWF6bGUsICA2LiBGZWIgMjAwMiwgMDk6NDk6NDIpOgp+IyEgb249SGlnaHQgb3Q9MTAxMjk1NDc1NiBvZz1wYXJ0eQp+IyEgcm49Rm9vYmFyIHJ0PTEwMTI5NTM1Njcgcmc9cGFydHkKfiMhIHRpZD0xMDEyOTUxOTgxCnNrb3ZlIGhhdXMgZGVyIGZhcmJlbiB1bmQgZGllIG1hZ2llaW5zZWwgaGFldHQgaWNoIGdlcm4gd2llZGVyICxvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2VtaW5hcnRoZW1lbiAoQ2F0d2VhemxlLCAgNi4gRmViIDIwMDIsIDA5OjQ5OjQ0KToKfiMhIG9uPVBhdHJ5biBvdD0xMDEyOTc1MDI5IG9nPXBhcnR5Cn4jISBybj1Gb29iYXIgcnQ9MTAxMjk1MzU2NyByZz1wYXJ0eQp+IyEgdGlkPTEwMTI5NTE5ODEKdHNqYSwgYmVzY2h3ZXIgZGljaCBiZWkgZGVuIGphbW1lcmxhcHBlbiBkaWUgcnVtZ2VoZXVsdCBoYWJlbiA6KQoKLS0gCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2VtaW5hcnRoZW1lbiAoQ2F0d2VhemxlLCAgNi4gRmViIDIwMDIsIDA5OjQ5OjQ2KToKfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDEyOTc5Nzk5IG9nPXBhcnR5Cn4jISBybj1EZWVwYmx1ZSBydD0xMDEyOTUzNTM2IHJnPXBhcnR5Cn4jISB0aWQ9MTAxMjk1MTk4MQpEdSBoYXN0IHdpZSBpbW1lciBrZWluZSBBaG51bmcsIERlZXBwYmx1ZS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTZW1pbmFydGhlbWVuIChDYXR3ZWF6bGUsICA2LiBGZWIgMjAwMiwgMDk6NDk6NTApOgp+IyEgb249SHVtbmkgb3Q9MTAxMjk4NTI4NCBvZz1wYXJ0eQp+IyEgcm49UGF0cnluIHJ0PTEwMTI5NzUwMjkgcmc9cGFydHkKfiMhIHRpZD0xMDEyOTUxOTgxCldvIGRhcyBFbGZlbmRvcmYgd2FyIHdlaXNzIHNvZ2FyIGVpbiBKdW5nc3B1bmQgd2llIGljaC4gRGFmdWVyIHJlaWNodCBlaW4Kd2VuaWcgZm9yc2NoZW4uCgpBZXRzY2guCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTZW1pbmFydGhlbWVuIChCb2luZywgIDYuIEZlYiAyMDAyLCAwOTo1Mjo0MCk6Cn4jISBybj1Nb250YW51cyBydD0xMDEyOTUyMjYxIHJnPXBhcnR5Cn4jISB0aWQ9MTAxMjk1MTk4MQpCb3NjaGFudGUgaGFzdCBEdSBkb2NoIHNlbGJzdCBuaWNodCBtYWwgbWVociBlcmxlYnQsIHVuZCBEdSByZWRlc3Qgdm9uCidLaW5uZXJzJyAuLi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTZW1pbmFydGhlbWVuIChDYXR3ZWF6bGUsICA2LiBGZWIgMjAwMiwgMTA6NTI6MTUpOgp+IyEgb249TXVhZGliIG90PTEwMTI5ODc3ODcgb2c9cGFydHkKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwMTI5NTIyNjEgcmc9cGFydHkKfiMhIHRpZD0xMDEyOTUxOTgxCm9oIGJvc2NoYW50ZSwgZGFzIGtvZW5udGUgc2Nod2VyIHdlcmRlbiBoYWIgaWNoIGRhcyBnZWZ1ZWhsIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTZW1pbmFydGhlbWVuIChDYXR3ZWF6bGUsICA2LiBGZWIgMjAwMiwgMTA6NTI6MTcpOgp+IyEgb249Qm9pbmcgb3Q9MTAxMjk4NzgyMiBvZz1wYXJ0eQp+IyEgcm49TXVhZGliIHJ0PTEwMTI5ODc3ODcgcmc9cGFydHkKfiMhIHRpZD0xMDEyOTUxOTgxCk11c3MgbWFuIGhhbHQgSm9zZSBlaW5sYWRlbiAuLi4gaWNoIGhhYiBkaWUgZW1haWwtQWRyZXNzZSAuLi4gKmcqCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNlbWluYXJ0aGVtZW4gKENhdHdlYXpsZSwgIDYuIEZlYiAyMDAyLCAxMDo1MjoyNSk6Cn4jISBvbj1DdWNodWxsaW4gb3Q9MTAxMjk4ODIwNCBvZz1wYXJ0eQp+IyEgcm49Qm9pbmcgcnQ9MTAxMjk4NzgyMiByZz1wYXJ0eQp+IyEgdGlkPTEwMTI5NTE5ODEKRGllIGhhc3QgRHUgbmljaHQgYWxsZWluZS4gQWJlciBCb3NjaGFudGUgc3RlaHQgZGFtaXQgYXVjaCBuaWNodCB3aWVkZXIgYXVmLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXRkaWdlc3QgKEhvYm8sICA2LiBGZWIgMjAwMiwgMTA6NTU6MzQpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwMTI5NTMyNzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyOTUzMjc1Ck1hbiBiZWFjaHRlIGRlbiBUaXRlbCBkZXMgVGhyZWFkcy4uLi4KCiAgIEhvYm8gLSBGcmF1IGluIEthcmxzcnVoZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXRkaWdlc3QgKEJvaW5nLCAgNi4gRmViIDIwMDIsIDEwOjU2OjI2KToKfiMhIHJuPUhvYm8gcnQ9MTAxMjk4OTMzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTI5NTMyNzUKRGVyIFdpdHogaXN0IC4uLiBpY2gga2VubiBkZW4gTWFyY28gSGFiZXIgc29nYXIgLi4uIGlzdCBlaW4gemllbWxpY2hlcgpQZW5uZXIgLi4uIDspCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldGRpZ2VzdCAoQ3VjaHVsbGluLCAgNi4gRmViIDIwMDIsIDEwOjU3OjM2KToKfiMhIHJuPUJvaW5nIHJ0PTEwMTI5ODkzODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyOTUzMjc1CkRpZSBXZWx0IGlzdCBlaW4gRG9yZi4gKCJHbG9iYWwgVmlsbGFnZSIpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmV0ZGlnZXN0IChHcmltbWJvcm4sICA2LiBGZWIgMjAwMiwgMTE6MjY6NTEpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMTI5ODk0NTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyOTUzMjc1CkhtbSwgaXJnZW5kd2llIGJpbiBpY2ggZGEgZWluIGJpc2NoZW4gdmVyd2lycnQuIEhhdCBCb2luZyBqZXR6dCBhdWNoIDI2ClNlbWVzdGVyIEUtVGVjaG5payBzdHVkaWVydCBvZGVyIHdhcz8KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCAoZ2QmcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5ldGRpZ2VzdCAoQm9pbmcsICA2LiBGZWIgMjAwMiwgMTE6Mjc6MjMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTI5OTEyMTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyOTUzMjc1Ck5laW4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5ldGRpZ2VzdCAoQW1hcnlsbGlzLCAgNi4gRmViIDIwMDIsIDExOjMwOjE1KToKfiMhIHJuPUJvaW5nIHJ0PTEwMTI5OTEyNDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyOTUzMjc1CjI2IFNlbWVzdGVyIEluZm9ybWF0aWs/IDopCgpzY25yLApBbWEqIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTmV0ZGlnZXN0IChHcmltbWJvcm4sICA2LiBGZWIgMjAwMiwgMTE6MzQ6MDMpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMTI5OTE0MTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyOTUzMjc1ClVuZCBkYWR1cmNoIGtvbW10IGVpbmVtIGRhbm4gamVkZSBGcmF1IGF0dHJha3RpdiB2b3I/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5ldGRpZ2VzdCAoQm9pbmcsICA2LiBGZWIgMjAwMiwgMTE6MzQ6MzEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTI5OTE2NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyOTUzMjc1Ckxhc3N0IHVucyBkYXMgZG9jaCBpbiBtZWdhc2NobWFycm4ga2xhZXJlbiAuLi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTmV0ZGlnZXN0IChBbWFyeWxsaXMsICA2LiBGZWIgMjAwMiwgMTE6NTE6MzkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTI5OTE2NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyOTUzMjc1Cmthbm4gaWNoIG5pY2h0IGJldXJ0ZWlsZW4sIGljaCBrYW0gbWl0IHdlbmlnZXIgYXVzIDotKQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTmV0ZGlnZXN0IChHcmltbWJvcm4sICA2LiBGZWIgMjAwMiwgMTI6Mjg6NDApOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMTI5OTI2OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEyOTUzMjc1Ck1pdCB3ZW5pZ2VyIEF0dHJha3Rpdml0YWV0PyBLb2VubnRlIHN0aW1tZW4sIGphLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTZW1pbmFydGhlbWVuIChHcmltbWJvcm4sICA2LiBGZWIgMjAwMiwgMjE6Mzg6NTkpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMTMwMjc3NzUgcmc9cGFydHkKfiMhIHRpZD0xMDEyOTUxOTgxCktlaW5lIFNvcmdlLCBlcyBnaWJ0IHNpY2hlciBnZW51ZyBMZXV0ZSBkaWUgZGVua2VuIGRhcyBNRyB3YXIgc2Nob24gaW1tZXIgaW4KQmVybGluLCBkaWUgaGFzdCBEdSBqZXR6dCBtYWVjaHRpZyBlcnN0YXVudC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUnVtbXMgKERvdHosICA3LiBGZWIgMjAwMiwgMDI6MTY6MDcpOgpFaW4gV2FuZGxlciB3YWJlcnQgaGVyZWluLgpEdSBob2Vyc3QgZWluIFJ1bXBlbG4gdW5kIFBvbHRlcm4gdm9uIHVudGVuLiBXYWhyc2NoZWlubGljaCBpc3QgZGVyIFdhbmRsZXIKZ2VyYWRlIGRpZSBUcmVwcGUgaGVydW50ZXJnZWZhbGxlbi4gRHUga2FubnN0IERpciBlaW4gR3JpbnNlbiBuaWNodAp2ZXJrbmVpZmVuLgpEdSBob2Vyc3QgZWluZW4ga3VyemVuIFNjaHJlaS4gQlVNTU0uIFBPTFRFUi4gV1VTQ0guIFVBQUhISC4uLgpEZXIgV2FuZGxlciBrb21tdCBkaWUgVHJlcHBlIHJ1bnRlciB1bmQgbmltbXQgZGFiZWkgaW1tZXIgbWVocmVyZSBTdHVmZW4gYXVmCmVpbm1hbC4gRGEgZXIgZGllcyBhYmVyIG5pY2h0IGF1ZiBkZW4gRnVlc3NlbiB0dXQsIGlzdCBkaWVzIGJlc3RpbW10IGtlaW5lCmZyZWl3aWxsaWdlIEVpbmxhZ2UgdW5kIHNjaG1lcnpoYWZ0IG9iZW5kcmVpbiEKRGVyIFdhbmRsZXIgbGFlY2hlbHQgRGllIER1bmtlbGhlaXQgbWlsZGUgYW4gdW5kIHNhZ3Q6IFdlbm4gRHUgbWFsIGdyb3NzIGJpc3QsCkRlciBXYW5kbGVyIGxhZWNoZWx0IERpZSBEdW5rZWxoZWl0IG1pbGRlIGFuIHVuZCBzYWd0OiBldmVudHVlbGwuLi4KCkRvdHosIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEaWFibG8gMiAoQ3VjaHVsbGluLCAgNy4gRmViIDIwMDIsIDEwOjI0OjAwKToKfiMhIHJuPU5hZGRsIHJ0PTEwMTMwNzE3MTcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDEzMDM4MTE0CkFsc28gRGlyLCBOYWRkbCwgR2xvaW4gdW5kIEdsb2luc29uPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNlbWluYXJ0aGVtZW4gKFZhcmxhcmlvbiwgIDcuIEZlYiAyMDAyLCAxMjowODo0Nyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMzAyNzkzOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTI5NTE5ODEKSG1tLCBkZW4gVW16dWcgdm9uIE11ZW5zdGVyIG5hY2ggQmVybGluIGhhYiBpY2ggamEgc29nYXIgbm9jaCBtaXRiZWtvbW1lbi4uLgoKVmFybCosIHdhciB6dSBkZXIgWmVpdCBlaW5lIFdvY2hlIGltIFNpbGJlckxhbmQgdW50ZXJ3ZWdzIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTZW1pbmFydGhlbWVuIChCYW1idWxrbywgIDcuIEZlYiAyMDAyLCAxMjo0NDo1Nyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMzAyNzkzOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTI5NTE5ODEKRGFzIE1HIGlzdCBqZXR6dCBpbiBCZXJsaW4/IEpldHp0IGJpbiBpY2ggd2lya2xpY2ggZXJzdGF1bnQuCgpCYW1idWxrbyA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERpYWJsbyAyIChOYWRkbCwgIDcuIEZlYiAyMDAyLCAxNToxMTo0MSk6Cn4jISBybj1CYW1iaSBydD0xMDEzMDg4Mjc4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTAxMzAzODExNApJY2ggdWViZXJzZXR6IGFtIGJlc3RlbiBtYWwgaW5zIE1VRCwgd2llIGRlciBBcnRpa2VsIGZ1ZXIgbWljaCBrbGluZ3QuIFdhcyBkaWUKRDJlciBkYXZvbiBoYWx0ZW4gaXN0IG1pciB3aWVkZXJ1bSBzbyB3dXJzY2h0IHdpZSBpY2ggaWhuZW46CkdvcjogTWFtbWksIE1hbW1pLCBlaW4gYm9lc2VzIEV0d2FzIGhhdCBtZWluZSBCYW5rendlaXRpZXMgbGVlcmdlcmFldW10IQpHb3I6IFp1IEh1ZWxmZSEgWnUgSHVlbGZlIQoKaS5BLiBHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEaWFibG8gMiAoQmllbGVmZWxkLCAgNy4gRmViIDIwMDIsIDE1OjI5OjM1KToKfiMhIHJuPU5hZGRsIHJ0PTEwMTMwOTExMDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzMDM4MTE0Ck5hLCBkaWUgQXJ0IHZvbiBKYW1tZXJlaSBpc3QgZG9jaCBoaWVyIGdlbmF1IHJpY2h0aWcgYXVmZ2Vob2JlbiA7LSkKCi1CaWVsZWZlbGQgKHNjbnIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEaWFibG8gMiAoQ3VjaHVsbGluLCAgNy4gRmViIDIwMDIsIDE1OjMwOjE1KToKfiMhIHJuPU5hZGRsIHJ0PTEwMTMwOTExMDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzMDM4MTE0CkZ1ZXIgbWljaCBrbGluZ3QgZGVyIEFydGlrZWwgd2llOiAiT29vcHMsIG1laW5lIEJhbmt6d2VpdGllcyB3dXJkZW4gCmdlbG9lc2NodC4gV2Vpc3MgamVtYW5kIHdhcyBkYXp1IG9kZXIgbXVzcyBpY2ggYXVmIFVyc2FjaGVuZm9yc2NodW5nCmdlaGVuPyIgVW5kIGRhIGRpZSBCZXZvZWxrZXJ1bmcgZGVzIE1vcmdlbmdyYXVlbnMgbmljaHQgbnVyIGF1cwpoYWxiZ2VzdG9lcnRlbiBUZXh0ZmV0aXNjaGlzdGVuIHVuZCBCZXNzZXJ3aXNzZXJuIChzdWNoIERpciBhdXMsIHdvenUKRHUgZ2Vob2VyZW4gbW9lY2h0ZXN0LCBHbG9pbikgYmVzdGVodCwgaXN0IGRpZSBBbmZyYWdlLCBmaW5kZSBpY2gsCmhpZXIgZ2FyIG5pY2h0IHNvb28gZmFsc2NoLgoKQ3VjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRGlhYmxvIDIgKFBhdHJ5biwgIDcuIEZlYiAyMDAyLCAxNTo0NDozOCk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAxMzA5MjIxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTMwMzgxMTQKaG1wZiwgamV0enQgaGFzdCBkdSBkYXMgZ2xhc2hhdXMga2VwdXR0IGdlbWFjaHQgOikKCi0tIApwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IERpYWJsbyAyIChOYWRkbCwgIDcuIEZlYiAyMDAyLCAxNzowMzoxOCk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAxMzA5MjIxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTMwMzgxMTQKRGFyZiBpY2ggbmljaHQgYmVpZGVzIHNlaW4/IFVuZCB3YXMga3JpZWcgaWNoIGRhbm4gZGFmdWVyPwoKaS5BLiBHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgKE1hYXJnLCAgNy4gRmViIDIwMDIsIDIyOjE4OjI5KToKIFNOOiBaZWlsZW51bWJydWNoIGtvcnJpZ2llcnQKCiBGcm9tOiBLbGF1cyBXYWduZXIgPGsud2FnbmVyLm1tQHQtb25saW5lLmRlPgogU3ViamVjdDogUmU6IE9UIENvbnRyb2xsaW5nCiBOZXdzZ3JvdXBzOiBkZS5ldGMuYmVydWYubWlzYwogRGF0ZTogU2F0IEZlYiAgMiAwOTo0NzoyOCAyMDAyICswMTAwCgogWnUgZGllc2VtIFRoZW1hIGZhbmQgaWNoIGRpZSBmb2xnZW5kZSBHZXNjaGljaHRlCiAoZmFsc2NoZW4gWmVpbGVudW1icnVjaCBiaXR0ZSBpY2ggenUgZW50c2NodWxkaWdlbikKCiBFcyB3YXJlbiBlaW5tYWwgc2llYmVuIFp3ZXJnZSwgZGllIGxlYnRlbiBoaW50ZXIgZGVuIHNpZWJlbgogQmVyZ2VuLiBUYWcgZnVlciBUYWcgc3VjaHRlbiBzaWUgaW0gQmVyZ3dlcmsgbmFjaCBHb2xkLiBKZWRlciBkZXIKIFp3ZXJnZSB3YXIgcmVjaHRzY2hhZmZlbiwgZmxlaXNzaWcgdW5kIGFjaHRldGUgZGVuIEFuZGVyZW4uIFdlbm4gZWluZXIKIHZvbiBpaG5lbiBtdWVkZSB3dXJkZSwgc28gcnVodGUgZXIgc2ljaCBhdXMsIG9obmUgZGFzcyBkaWUgQW5kZXJlbgogZXJ6dWVybnRlbi4gV2VubiBlcyBlaW5lbSB2b24gaWhuZW4gYW4gZXR3YXMgbWFuZ2VsdGUsIHNvIGdhYmVuIGRpZQogQW5kZXJlbiBiZXJlaXR3aWxsaWcgdW5kIGdlcm5lLiBBYmVuZHMsIHdlbm4gZGFzIFRhZ2V3ZXJrIGdlc2NoYWZmdAogd2FyLCBhc3NlbiBzaWUgZWludHJhZWNodGlnIGlociBCcm90IHVuZCBnaW5nZW4genUgQmV0dC4gIEFtIHNpZWJ0ZW4KIFRhZ2UgamVkb2NoIHJ1aHRlbiBzaWUuCgogRG9jaCBlaW5lcyBUYWdlcyBtZWludGUgZWluZXIgdm9uIGlobmVuLCBkYXNzIHNpZSBzbyByZWNodCBuaWNodAogd3Vlc3N0ZW4sIHdpZXZpZWwgZGVubiBnZXNjaGFmZnQgc2VpIHVuZCBiZWdhbm4sIGRpZSBHb2xka2x1bXBlbiB6dQogemFlaGxlbiwgZGllIHNpZSBUYWcgZnVlciBUYWcgYXVzIGRlbSBCZXJnd2VyayBzY2hsZXBwdGVuLiBVbmQgd2VpbCBlcgogc28gbWl0IFphZWhsZW4gYmVzY2hhZWZ0aWd0IHdhciwgc2NodWZ0ZXRlbiBkaWUgQW5kZXJlbiBmdWVyIGlobgogbWl0LiBCYWxkIG5haG0gaWhuIHNlaW5lIG5ldWUgQXJiZWl0IGRlcmFydCBpbiBBbnNwcnVjaCwgZGFzcyBlciBudXIKIG5vY2ggemFlaGx0ZSB1bmQgZGllIEhhY2tlIGZ1ZXIgaW1tZXIgYmVpc2VpdGUgbGVndGUuIE5hY2ggZWluZXIgWmVpdAogaG9iIGVpbiBNdXJyZW4gYW4gdW50ZXIgZGVuIEZyZXVuZGVuLCBkaWUgbWl0IEFyZ3dvaG4gYXVmIGRhcyBUcmVpYmVuCiBkZXMgU2llYnRlbiBzY2hhdXRlbi4gRGllc2VyIGVyc2NocmFrIHVuZCB2ZXJ0ZWlkaWd0ZSBzaWNoLCBkYXMgWmFlaGxlbgogc2VpIHVuZXJsYWVzc2xpY2gsIHNvIHNpZSBkZW5uIHdpc3NlbiB3b2xsdGVuLCB3ZWxjaGUgTGVpc3R1bmcgc2llCiB2b2xsYnJhY2h0IGhhdHRlbiB1bmQgYmVnYW5uLCBkZW4gQW5kZXJlbiBpbiBhbGxlbiBFaW56ZWxoZWl0ZW4gZGF2b24KIHp1IGVyemFlaGxlbi4gVW5kIHdlaWwgZXIgbmljaHQgZXJ6YWVobGVuIGtvbm50ZSwgd2FlaHJlbmQgZGllIEFuZGVyZW4KIGhhY2t0ZW4gdW5kIGhhZW1tZXJ0ZW4sIHNvIGxlZ3RlbiBzaWUgYWxsZSBpaHJlIFNjaGF1ZmVsbiBiZWlzZWl0ZSB1bmQKIHNhc3NlbiBhbSBUaXNjaCB6dXNhbW1lbi4gU28gZW50c3RhbmQgZGFzIGVyc3RlIE1lZXRpbmcuIERpZSBhbmRlcmVuCiBad2VyZ2Ugc2FoZW4gZGFzIGZlaW5lIFBhcGllciB1bmQgZGllIFN5bWJvbGUsIGFiZXIgc2NodWV0dGVsdGVuIGRpZQogS29lcGZlLCB3ZWlsIHNpZSBlcyBuaWNodCB2ZXJzdGFuZGVuLiAgRXMgZGF1ZXJ0ZSBuaWNodCBsYW5nZSB1bmQgZGVyCiBDb250cm9sbGVyIChkZW5uIHNvIG5hbm50ZSBlciBzaWNoIGZvcnRhbiEpICBmb3JkZXJ0ZSwgZGllIFp3ZXJnZSwgZGllCiBkYSBUYWdlaW4sIFRhZ2F1cyBzY2h1ZnRldGVuLCBtb2VnZW4gaWhtIGlocmUgQXJiZWl0IGJld2Vpc2VuLCBpbiBkZW0KIHNpZSBpaG0gWmV1Z25pcyBhdWYgUGFwaWVyIGFibGVndGVuIHVlYmVyIGRpZSBNZW5nZSBHb2xkZXMsIGRpZSBzaWUgbWl0CiBkZW4gTG9yZW4gYXVzIGRlbSBCZXJnIGhvbHRlbi4gVW5kIHdlaWwgZXIgbmljaHQgdmVyc3RlaGVuIGtvbm50ZSwKIHdhcnVtIGRpZSBNZW5nZSBzY2h3YW5rdGUsIHNvIGJlcmllZiBlciBlaW5lbiB1bnRlciBpaG5lbiwgZGllIEFuZGVyZW4KIHp1IGZ1ZWhyZW4sIGRhbWl0IGRlciBMb2huIHJlY2h0IGdsZWljaG1hZXNzaWcgYXVzZmllbGUuRGVyIEZ1ZWhyZXIgbmFubnRlCiBzaWNoIE1hbmFnZXIgdW5kIGxlZ3RlIHNlaW5lIFNjaGF1ZmVsIG5pZWRlci4gIE5hY2gga3VyemVyIFplaXQKIGFyYmVpdGV0ZW4gYWxzbyBudXIgbm9jaCBGdWVuZiB2b24gaWhuZW4sIGFsbGVyZGluZ3MgbWl0IGRlciBBdWZsYWdlLAogZGllIEFyYmVpdCBhbGxlciBTaWViZW4genUgZXJicmluZ2VuLiBEaWUgU3RpbW11bmcgdW50ZXIgZGVuIFp3ZXJnZW4KIHNhbmssIGFiZXIgd2FzIHNvbGx0ZW4gc2llIHR1bj8gQWxzIGRlciBNYW5hZ2VyIHZvbiBpaHJlbSBXZWhrbGFnZW4KIGhvZXJ0ZSwgZGFjaHRlIGVyIGxhbmdlIHVuZCBhbmdlc3RyZW5ndCBuYWNoIHVuZCBlcmZhbmQgZGllIFRlYW1hcmJlaXQuCiBTbyBzb2xsdGUgamVkZXIgdm9uIGlobmVuIGdlbWFlc3Mgc2VpbmVyIFRhbGVudGUgbnVyIGVpbmVuIFRlaWwgZGVyCiBBcmJlaXQgZXJsZWRpZ2VuIHVuZCBzaWNoIHNwZXppYWxpc2llcmVuLiBBYmVyIGFjaCEgRGFzIFRhZ2V3ZXJrIHd1cmRlCiBuaWNodCBsZWljaHRlciB1bmQgd2VubiBlaW5lciB2b24gaWhuZW4ga3Jhbmsgd3VyZGUsIHd1c3N0ZW4gZGllCiBBbmRlcmVuIHdlZGVyIGVpbiBub2NoIGF1cywgd2VpbCBzaWUgZGllIEFyYmVpdCBpaHJlcyBOYWVjaHN0ZW4gbmljaHQKIGthbm50ZW4uIFNvIGVudHN0YW5kIGRlciBUYXlsb3Jpc211cy4gIEFscyBkZXIgTWFuYWdlciBzYWgsIGRhc3MgZXMKIHNjaGxlY2h0IGJlc3RlbGx0IHdhciB1bSBzZWluZSBLb2xsZWdlbiwgYmVzdGVsbHRlIGVyIGVpbmVuIHVudGVyCiBpaG5lbiB6dW0gR3J1cHBlbmZ1ZWhyZXIsIGRhbWl0IGVyIGRpZSBBbmRlcmVuIGVybXV0aWd0ZS4gU28gbXVzc3RlIGRlcgogTWFuYWdlciBuaWNodCBtZWhyIHNlaW4gd2FybWVzIEthbWluZmV1ZXIgdmVybGFzc2VuLiAgTGVpZGVyIGxlZ3RlCiBhdWNoIGRlciBHcnVwcGVuZnVlaHJlciwgZGVyIG51bm1laHIgZGVuIFRha3QgYW5nYWIsIGRpZSBTY2hhdWZlbAogbmllZGVyIHVuZCB0cmFmIHNpY2ggbWl0IGRlbSBNYW5hZ2VyIG9lZnRlciB1bmQgb2VmdGVyIHp1IE1lZXRpbmdzLiBTbwogYXJiZWl0ZXRlbiBudXIgbm9jaCBWaWVyLgoKIERpZSBTdGltbXVuZyBzYW5rIHVuZCBkYW1pdCBhbHNiYWxkIGRpZSBGb2VyZGVybWVuZ2UgZGVzIEdvbGRlcy4gIEFscwogZGllIFp3ZXJnZSB3dWV0ZW5kIGFuIHNlaW5lIEJ1ZXJvdHVlciB0cmF0ZW4sIHZlcnNwcmFjaCBkZXIgTWFuYWdlcgogQWJoaWxmZSB1bmQgb3JnYW5pc2llcnRlIGVpbmUga2xlaW5lIEZhaHJ0IG1pdCBkZW0gS2FycmVuLCBkYW1pdCBzaWNoCiBkaWUgWndlcmdlIHplcnN0cmV1dGVuLiBEYW1pdCBhYmVyIGRpZSBNZW5nZSBHb2xkZXMgbmljaHQgbmFjaGxpZXNzLAogZmFuZCBkaWUgRmFocnQgYW0gV29jaGVuZW5kZSBzdGF0dC4gIFVuZCBkYW1pdCBkaWUgRmFocnQgYWxzCiBHZXNjaGFlZnRzcmVpc2UgYWJnZXNldHp0IHdlcmRlbiBrb25udGUsIGhpZWx0IGRlciBNYW5hZ2VyIGVpbmVuIGxhbmdlbgogVm9ydHJhZywgZGVuIGVyIGluIGZyZW1kYXJ0aWdlIFdvcnRlIGtsZWlkZXRlLCBkaWUgZXIgdm9uIGVpbmVtCiBhbmRlcmVuIE1hbmFnZXIgZ2Vob2VydCBoYXR0ZSwgZGVyIGFuZGVyZSBad2VyZ2UgaW4gZWluZXIgYW5kZXJlbiBNaW5lCiBiZWZlaGxpZ3RlLiBTbyB3dXJkZW4gZGllIGVyc3RlbiBBbmdsaXppc21lbiB2ZXJ3ZW5kZXQuCgogRWluZXMgVGFnZXMga2FtIGVyIHp1bSBvZmZlbmVuIFN0cmVpdC4gRGllIFp3ZXJnZSB3YXJmZW4gaWhyZSBrbGVpbmVuCiBTY2hhdWZlbG4gaGluIHVuZCBzdGFtcGZ0ZW4gbWl0IGlocmVuIGtsZWluZW4gRnVlc3NlbiB1bmQgYmFsbHRlbiBpaHJlCiBrbGVpbmVuIEZhZXVzdGUuICBEZXIgTWFuYWdlciBlcnNjaHJhayB1bmQgdmVyc3ByYWNoIGRlbiBad2VyZ2VuLCBuZXVlCiBLb2xsZWdlbiBhbnp1d2VyYmVuLCBkaWUgaWhuZW4gaGVsZmVuIHNvbGx0ZW4uIERlciBNYW5hZ2VyIG5hbm50ZSBkYXMKIE91dHNvdXJjaW5nLiAgQWxzbyBrYW1lbiBuZXVlIFp3ZXJnZSxkaWUgZnJlbWQgd2FyZW4gdW5kIG5pY2h0IHJlY2h0CiBpbiBkaWUga2xlaW5lIEdlbWVpbmRlIHBhc3N0ZW4uICBVbmQgd2VpbCBzaWUgYW5kZXJzIHdhcmVuLCBtdXNzdGUgYXVjaAogZnVlciBkaWVzZSBlaW4gbmV1ZXIgRnVlaHJlciBoZXIsIGRlciBhbiBkZW4gTWFuYWdlciBiZXJpY2h0ZXRlLiBTbwogYXJiZWl0ZXRlbiBudXIgbm9jaCBEcmVpIHZvbiBpaG5lbi4KCiBXZWlsIGplZGVyIHZvbiBpaG5lbiBhdWYgZWluZSBhbmRlcmUgQXJ0IGFuZGVyZSBBcmJlaXQgZXJsZWRpZ3RlIHVuZAogd2VpbCB6d2VpIHZlcnNjaGllZGVuZSBHcnVwcGVuIHZvbiBBcmJlaXRlcm4gendlaSB2ZXJzY2hpZWRlbmUKIEFidGVpbHVuZ2VuIG5vZXRpZyB3ZXJkZW4gbGllc3NlbiwgZGllIHNpY2ggdW50ZXJlaW5hbmRlciBuaWNodHMgbWVocgogc2NoZW5rdGVuLCBiZWdhbm4sIHVudGVyIGRlbiBzdHJlbmdlbiBBdWdlbiBkZXMgQ29udHJvbGxlcnMsIGJhbGQgZWluCiByZWdlciBIYW5kZWwgdW50ZXIgaWhuZW4uIFNvIHd1cmRlbiBkaWUgS29zdGVuc3RlbGxlbiBnZWJvcmVuLiAgSmVkZXIKIHNhaCB2b2xsZXIgTWlzc3RyYXVlbiBhdWYgZGllIExlaXN0dW5nZW4gZGVzIEFuZGVyZW4gdW5kIGhpZWx0IGZlc3QsCiB3YXMgZXIgYmVzYXNzLlNvIHdhciBlaW4gS251cnJlbiB1bnRlciBpaG5lbiwgZGFzcyBzdGFlcmtlciB1bmQgc3RhZXJrZXIKIHd1cmRlLgoKIERpZSB6d2VpIFp3ZXJnZSwgZGllIG5vY2ggYXJiZWl0ZXRlbiwgZXJicmFjaHRlbiBpaHIgVGFnZXdlcmsgbWVocgogc2NobGVjaHQgYWxzIHJlY2h0LiBBbHMgc2ljaCBkaWUgTWFuYWdlciB1bmQgZGVyIENvbnRyb2xsZXIgcmF0bG9zCiB6ZWlndGVuLCBiZWF1ZnRyYWd0ZW4gc2llIHNjaGxpZXNzbGljaCBlaW5lbiBVbnRlcm5laG1lbnNiZXJhdGVyLiBEZXIKIHN0cmljaCBvaG5lIGRpZSBnZXJpbmdzdGUgQWhudW5nIGhvY2huYWVzaWcgZHVyY2ggZGFzIEJlcmd3ZXJrIHVuZAogZXJrbGFlcnRlIGRlbiB2ZXJkdXR6dGVuIE1hbmFnZXJuLCBkaWUgR3J1ZW5kZSBmdWVyIGRpZSBzY2hsZWNodGUKIExlaXN0dW5nIHNlaSBkYXJpbiB6dSBzdWNoZW4sIGRhcyBkaWUgbGV0enRlbiBCZWlkZW4gaW0gQmVyZ3dlcmsKIHZlcmJsaWViZW5lbiBad2VyZ2UgaWhyZSBTY2hhdWZlbG4gZmFsc2NoIGhpZWx0ZW4uIERhbm4ga2Fzc2llcnRlIGVpbmUKIGdhbnplIExvcmUgR29sZCB1bmQgdmVyc2Nod2FuZCBzbyBzY2huZWxsLCB3aWUgZXIgZXJzY2hpZW5lbiB3YXIuCgogV2FlaHJlbmQgZGVzc2VuIHN0ZWxsdGUgZGVyIENvbnRyb2xsZXIgZmVzdCwgZGFzcyBkaWUgZXh0ZXJuZW4KIE1pdGFyYmVpdGVyIG1laHIgS29zdGVuIHZlcnVyc2FjaHRlbiBhbHMgR2V3aW5uIGVyYnJhY2h0ZW4gdW5kCiB1ZWJlcmRpZXMgZGllIEF1c2xhc3R1bmcgZGVyIGludGVybmVuIFp3ZXJnZSBzZW5rdGUuIFNjaGxpZXNzbGljaAogZW50bGllc3MgZXIgc2llLiBEZXIgRnVlaHJlciwgZGVyIGRpZSBleHRlcm5lbiBNaXRhcmJlaXRlciBnZWZ1ZWhydAogaGF0dGUsIHd1cmRlIHp3ZWl0ZXIgQ29udHJvbGxlci4KCiBTbyBhcmJlaXRldGUgbnVyIG5vY2ggZWluIGxldHplciBad2VyZyBpbiBkZW4gTWluZW4uIFRqYSwgdW5kIGRlcgogbGVybnRlIGluIHNlaW5lciBrYXJnZW4gRnJlaXplaXQsIGRpZSBudXIgbm9jaCBhdXMgbXVlaHNhbSBlcnJ1bmdlbmVuCiBhYmdlYnVtbWVsdGVuIFVlYmVyc3R1bmRlbiBiZXN0YW5kLCBTY2huZWV3aXR0Y2hlbiBrZW5uZW4sIGRpZSBnYW56IGluCiBkZXIgTmFlaGUgZGVyIE1pbmUgaWhyZSBEaWVuc3RlIGFuYm90LiBEYW5uIGhvbHRlIGVyIHNpY2ggYmVpIGlociBkZW4KIFNpZmYgdW5kIHZlcnJlY2t0ZSBlbGVuZGlnLgoKIERpZSBGaXJtYSBnaW5nIHBsZWl0ZSwgZGllIE1hbmFnZXIgdW5kIEdydXBwZW5mdWVocmVyIHVuZCBDb250cm9sbGVyCiBhYmVyIGZhbmRlbiBzaWNoIG1pdCBncm9zc3p1ZWdpZ2VuIFN1bW1lbiBnZWdlbnNlaXRpZyBhYiB1bmQgdmVycGlzc3Rlbgogc2ljaCwgdW0gZGVyIEFua2xhZ2Ugd2VnZW4gVW50cmV1ZSB6dSBlbnRnZWhlbiwgaW5zIEF1c2xhbmQgdW5kIGRpZXNlCiBkZXByaW1pZXJlbmRlLCBhYmVyIHdhaHJoZWl0c2dldHJldWUgTWFlciBpc3QgYXVzLgoKCiBHcnVzcwogS2xhdXMKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEN1Y2h1bGxpbiwgIDcuIEZlYiAyMDAyLCAyMzozMToxMik6CltBbGxnZW1laW46VG9lXSBibG9lZGUgYnJ1ZWNrZQpbVG9kOkxhcnNdIERpZSB1bmhlaW1saWNoZSBIYWVuZ2VicnVlY2tlIGhhdCBnZXJhZGUgVG9lIHVtZ2VicmFjaHQuCltUb2Q6RGllIHVuaGVpbWxpY2hlIEhhZW5nZWJydWVja2VdIERhcyBBZWNoemVuIGRlciBQbGFua2VuIGhvZXJ0IHNpY2gKW1RvZDpEaWUgdW5oZWltbGljaGUgSGFlbmdlYnJ1ZWNrZV0gaGFlbWlzY2ggYW4uCgpKby4KQ3VjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoWm9vaywgIDcuIEZlYiAyMDAyLCAyMzozMTozNik6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAxMzEyMTA3MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTMxMjEwNzIKVW5kIGRpZSBpc3QgbmljaHQgd2lya2xpY2ggbmV1LCBUb2UgOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMVyAoV29vZHksICA4LiBGZWIgMjAwMiwgMDA6MzE6MzEpOgp+IyEgcm49Wm9vayBydD0xMDEzMTIxMDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMzEyMTA3MgpNYWNodCBqYSBuaXguIFRvZSBpc3QgYXVjaCBuaWNodCBuZXUgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpibGFmYXNlbCAoQWxleGFuZGVyLCAgOC4gRmViIDIwMDIsIDAwOjM1OjMwKToKW0FsbGdlbWVpbjpQYXJyYV0gb2IgZXIgd2lya2xpY2ggc2Nob24gYWxsZSBhbGxlIHRvZGVzc2VxdWVuemVuIGdlc2VoZW4gaGF0CltBbGxnZW1laW46UGFycmFdID8/PwonUGFzcyBtYWwgYXVmLCBUb2UsIGRhIGlzdCBldHdhcywgd2FzIER1IERpciBhbnNlaGVuIHNvbGx0ZXN0LApiZXZvciB3aXIgd2VpdGVycmVkZW4uJwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGTFcgKEFsZXhhbmRlciwgIDguIEZlYiAyMDAyLCAwMDozODoxMCk6Cn4jISBybj1ab29rIHJ0PTEwMTMxMjEwOTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzMTIxMDcyCndpcmtsaWNoPyEKOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMVyAoTXVwZmVsLCAgOC4gRmViIDIwMDIsIDIxOjQyOjAyKToKfiMhIHJuPVpvb2sgcnQ9MTAxMzEyMTA5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTMxMjEwNzIKTmV1ZXIgYWxzIFRvZSwgd3VlcmQgaWNoIHNhZ2VuIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBrdXJ6IHZvcm0gS2FybHNydWhlciBTdGFtbXRpc2NoLi4uIChQZXJkaXRhLCAxMS4gRmViIDIwMDIsIDA5OjQzOjUyKToKUGVyZGl0YSB6dSBLZWtzOiBHZWggZG9jaCBiYXVjaGZyZWkhCktla3M6IFp1IGZldHQhCgpQZXJkaXRhIGhhZXR0ZSB2aWVsbGVpY2h0IGxpZWJlciBpbiAiV2l0emUiIHBvc3RlbiBzb2xsZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgc3RhbmQgYWJlciBuaWNodCBpbiBtZWluZXIgS0wgOm8pIChWYXJsYXJpb24sIDEyLiBGZWIgMjAwMiwgMDU6MDM6MTMpOgo+IGlkIGhhdXQKS3J1ZnR1cnMgQXVnZW4gdmVyZmluc3Rlcm4gc2ljaCB1bmQgZml4aWVyZW4gZWluZSBjaGFvdGlzY2ggbXV0aWVydGUgSGF1dC4KS3J1ZnR1ciB0ZWlsdCBEaXIgbWl0OgogIEljaCBoYWJlIGZvbGdlbmRlIEluZm9ybWF0aW9uIHVlYmVyIGVpbmUgY2hhb3Rpc2NoIG11dGllcnRlIEhhdXQgZXJoYWx0ZW46CiAgRHUgYnJhdWNoc3QgZWluZSBjaGFvdGlzY2ggbXV0aWVydGUgSGF1dCBmdWVyIGRpZSBGcmFjaHRndXQtUXVlc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiByZWlzZSAoWm9vaywgMTIuIEZlYiAyMDAyLCAwOTowMDozNik6Cn4jISBvbj1ab29rIG90PTEwMTM1MDA4MzAgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDEzNTAwNzk4IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTAxMzQ2ODM2NwpXb3chIENhdHR5ISBXZWxjaCBrcmFmdHZvbGxlciBBdWZ0cml0dCEgOi0pCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogcmVpc2UgKENhdHdlYXpsZSwgMTIuIEZlYiAyMDAyLCAwOTowMTo1NCk6Cn4jISBybj1ab29rIHJ0PTEwMTM1MDA4MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNDY4MzY3Ckphd29sbCEKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogcmVpc2UgKFNpbHZhbmEsIDEyLiBGZWIgMjAwMiwgMTE6MDc6NDgpOgp+IyEgcm49VmFyZGlvbiBydD0xMDEzNTA3ODMzIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTAxMzQ2ODM2NwpXYXMgZ2VuYXUgaXN0IGVpbiB0ZWFtLi4uPyBVbmQgd2FzIGlzdCB0ZWFtLWF1dG9mb2xnZT8gOy0pCgogIFNpbHZhbmEgKGtlbm50IGRpZXNlbiBuZXVtb2Rpc2NoZW4gS3JhbSBuaWNodCkKClBTOiBKYSwgZGFzIGlzdCBpbiBkZXIgcmljaHRpZ2VuIFJ1YnJpay4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IHJlaXNlIChDcm9mdCwgMTIuIEZlYiAyMDAyLCAxMToxMDoxMSk6Cn4jISBybj1TaWx2YW5hIHJ0PTEwMTM1MDg0Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNDY4MzY3CkVpbmUgZWluZmFjaGUgTW9lZ2xpY2hrZWl0IGFuIG1hbmNoZW4gRmFsbGVuIHVuZCBNb25zdGVybiBnbGVpY2ggaW0gRHV0emVuZAp6dSBzdGVyYmVuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogcmVpc2UgKEJpZWxlZmVsZCwgMTIuIEZlYiAyMDAyLCAxMToxMzozOSk6Cn4jISBybj1Dcm9mdCBydD0xMDEzNTA4NjExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMzQ2ODM2NwpFaW4gRmVhdHVyZSB6dW0gU3luY2hyb250YWxrZXNzZWxodWVwZmVuLiBEYSBmZWhsdCBzb3dpZXNvIG5vY2ggZWluCk5QQywgZGVyIGF1ZiAtVG9kIG9kZXIgLUJlaWxlaWQgSGFsdHVuZ3Nub3RlbiB2ZXJ0ZWlsdCA6LSkKCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiByZWlzZSAoQ3JvZnQsIDEyLiBGZWIgMjAwMiwgMTE6MTY6NTEpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTEwMTM1MDg4MTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNDY4MzY3CkFiZXIgYml0dGUga2VpbmVuIFNraWxsIGRhZnVlciBlaW5iYXVlbi4gCkdydXNzIENyb2Z0IChzaWVodCBzY2hvbiBkaWUgTGV1dGUgcmVpaGVud2Vpc2UgcnVudGVyc3ByaW5nZW4gdW0genUgdWViZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogcmVpc2UgKERlZXBibHVlLCAxMi4gRmViIDIwMDIsIDExOjE3OjA5KToKfiMhIHJuPUJpZWxlZmVsZCBydD0xMDEzNTA4ODE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMzQ2ODM2NwpIbSwgdW5kIGRhbWl0IGRpZSBIYWx0dW5nc25vdGVuIGF1Y2ggdmVyZXdpZ3Qgd2VyZGVuIG11c3MgbmF0dWVybGljaCBhdWNoIG5lClRvcGxpc3RlIGhlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IHJlaXNlIChCaWVsZWZlbGQsIDEyLiBGZWIgMjAwMiwgMTE6MTc6MjcpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTAxMzUwOTAyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTM0NjgzNjcKV2llc28sIGVzIHJlaWNodCBkb2NoLCB3ZW5uIG1hbiBkYXMgR2VydWVjaHQgc3RyZXV0LCBlcyBnZWJlbiBlaW5lbiBTa2lsbC4KCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiByZWlzZSAoTWFhcmcsIDEyLiBGZWIgMjAwMiwgMTE6MTg6MzUpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTEwMTM1MDkwNDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNDY4MzY3CkdpYnQgZXMgamEgYXVjaCwgamUgb2VmdGVyIG1hbiBkYSBydW50ZXJmYWVsbHQgZGVzdG8gZ2VyaW5nZXIgaXN0IGRpZSBDaGFuY2UsCmRhc3MgbWFuIHVlYmVyaGF1cHQgcnVudGVyZmFlbGx0LgoKU2FndCBibG9zcyBkYXMgaXN0IGF1c3NlciBtaXIgbm9jaCBrZWluZW0gYXVmZ2VmYWxsZW4/CgpNYWFyZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExhb3RzZTogVGFvIHRlIGtpbmcgKEN1Y2h1bGxpbiwgMTIuIEZlYiAyMDAyLCAxNzoyMjo0NCk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTAxMzUyOTQxOCByZz1rdWx0dXIKfiMhIHRpZD0xMDEzNTI5NDE4Ck1hbiBtdXNzIGluendpc2NoZW4gd2Vpc2Ugc2VpbiwgdW0gcG90ZW50aWVsbCB3ZWlzZSBXb3J0ZSBhYnNjaHJlaWJlbiB6dQprb2VubmVuPyBBY2ggRHUgU2NocmVjay4uLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXJudW5nLi4uIChBbWFyeWxsaXMsIDEyLiBGZWIgMjAwMiwgMTg6Mjk6MDMpOgp+IyEgcm49Wm9vayBydD0xMDEzNTM0Nzg3IHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDEzNTM0Nzg3CkhtLCBpY2ggZGFjaHRlLCBkYXMgd2FlcmUgYW5kZXJzcnVtLi4uCgpXZW5uIFpvb2sgYW4gZWluZXIgUHJvYmxlbWJlaGVidW5nIGFyYmVpdGV0LCBpc3QgZGFzIE11ZC4uLiBhZWguLi4gamEuLi4gOikKCkFtYSosIGluIERlY2t1bmcgZ2VoZW5kIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhcm51bmcuLi4gKFpvb2ssIDEyLiBGZWIgMjAwMiwgMTg6NTg6MzYpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMTM1MzQ5NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNTM0Nzg3Ck9oamEsIGRhcyBtdXNzIG5lIGdyb3NzZSBEZWNrdW5nIHNlaW4uIFdhcnRlIG51ciwgYmlzIGljaCBtaXQgZGVtIE11ZApmZXJ0aWcgYmluIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0ZGlnZXN0IG1hbCB3aWVkZXIgKE1hYXJnLCAxMi4gRmViIDIwMDIsIDIwOjUwOjE4KToKRnJvbTogSmVucyBMaW5rIDx1c2VuZXQwMkBxdXV4LmRlPgpOZXdzZ3JvdXBzOiBkZS5hbHQuc3lzYWRtaW4ucmVjb3ZlcnkKU3ViamVjdDogUmU6IEluIGVpZ2VuZXIgU2FjaGU6IFdlbGNoZW4gVmlydXMgdHJhZWd0IG1hbiBkaWVzZSBTYWlzb24gPwpEYXRlOiAwMyBGZWIgMjAwMiAxMTowMToyNSAtMDcwMApNZXNzYWdlLUlEOiA8ODdpdDlldjQwYS5mc2ZAcXV1eC5kZT4KClN0ZWZhbiBTY2hvbGwgPHN0ZXNjaEBuby1zcG9vbi5kZT4gd3JpdGVzOgoKPiBQYXNzZW5kIGxpZWZlcnQgVGhpbmtnZWVrIG5vY2ggZWluIFQtU2hpcnQgZnVlciBkZW4gYmV0cm9mZmVuZW4gJEFETUlOOgo+IAo+IGh0dHA6Ly93d3cudGhpbmtnZWVrLmNvbS9zdHVmZi9hcHBhcmVsLzM4OGIuc2h0bWwKCkRpZXNlcyBULVNoaXJ0IG5pZW1hbHMgbmljaHQgaW4gZGVyIE9lZmZlbnRsaWNoa2VpdCB0cmFnZW4uIERhIGtvbW1lbiBudXIKRnJhZ2VuIG9iIG1hbiBuaWNodCBkb2NoIG1hbCBlYmVuIG5hY2ggZGVtIENvbXB1dGVyIHNjaGF1ZW4ga29lbm50ZS4gTWlyCnBhc3NpZXJ0LCBhbSBGbHVnaGFmZW4uIERlciBGcmFnZXN0ZWxsZXIgd2FyIGJld2FmZm5ldCAoTmF0aW9uYWwgR3VhcmQpLgoKSmVucwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmxpdHplaW5zY2hsYWc/IChab29rLCAxMi4gRmViIDIwMDIsIDIwOjU0OjM0KToKW0FsbGdlbWVpbjpSb2NodXNdICp3YWVseiogLSBhbHNvIGhpZXIgSVNUIGVzIGVpbiBnZXdpdHRlciA6KQpSb2NodXMgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KUm9jaHVzICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCbGl0emVpbnNjaGxhZz8gKFZhcmxhcmlvbiwgMTIuIEZlYiAyMDAyLCAyMDo1NTo1OCk6Cn4jISBybj1ab29rIHJ0PTEwMTM1NDM2NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNTQzNjc0CkdpYnMgZG9jaCB6dSwgZGFzcyBkdSBkZW0gYXJtZW4gUm9jaHVzIGVpbnMgbWl0IGRlaW5lbSBLYW1wZmJsZWNoCnVlYmVyZ2VicmF0ZW4gaGFzdC4uLiBEYWZ1ZXIgaGF0IEJvaW5nIGRpZSBhbHNvIGdlcHJvZ2d0Li4uCgpWYXJsKiwgYXVjaCBhbmdlc2ljaHRzIGRlcyBXZWx0dW50ZXJnYW5nZXMgbm9jaCBmcmVjaCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUGFydHktRWlubGFkdW5nIChHcmltbWJvcm4sIDEyLiBGZWIgMjAwMiwgMjM6NDI6MTcpOgp+IyEgcm49TW9udGFudXMgcnQ9MTAxMzU1MzY1NyByZz1wYXJ0eQp+IyEgdGlkPTEwMTM0NzIwODAKRGVyIE5laWQgZGVyIGR1ZXJyZW4gQmFldW1lZmlja2VyIGlzdCBoaWVyIGJla2FubnQsIGRhbmtlc2Nob2VuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBQYXJ0eS1FaW5sYWR1bmcgKE1vbnRhbnVzLCAxMi4gRmViIDIwMDIsIDIzOjQ1OjAzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDEzNTUzNzM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMzQ3MjA4MApXZW5uIGFsbGVzLCB3YXMgZ3JvZXNzZXIgaXN0IGFscyBlaW4gSG9iYml0IHNjaG9uIGZ1ZXIgZGljaCBhbHMgQmF1bSBnaWx0Li4uCk5hamEsIHZvbiBldWNoIEhlaW56ZWxtYWVubmNoZW4gZGFyZiBtYW4gZWgga2VpbmUgR2Vpc3Rlc2xlaXN0dW5nZW4gZXJ3YXJ0ZW4sCmF1Y2ggZGEgc2VpZCBpaHIga2VpbmUgUmllc2VuLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hbmdlbG5kZSBNdW5kaHlnaWVuZT8gKFNsaXJwZXIsIDEzLiBGZWIgMjAwMiwgMDM6NDQ6MTIpOgpFaW4gV2FuZGxlciB3YWJlcnQgaGVyZWluLgpSb2xhbmQgYnJ1ZWxsdDogV0FORExFUiBIQVVOICEKRHUgZGV1dGVzdCBhdWYgZGVuIFdhbmRsZXIuCkR1IHNhZ3N0OiBtYWNoIG1hIDspClJvbGFuZCBncmVpZnQgZWluZW4gV2FuZGxlciBtaXQgc2VpbmVtIHNjaGxlY2h0ZW4gQXRlbSBhbi4KRGVyIFdhbmRsZXIgd2FiZXJ0IG5hY2ggTm9yZGVuLgoKV2VubiBkYXMgYmVpIEhpcHBlIG51ciBzbyBlaW5mYWNoIHdhZXJlLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBhcnR5LUVpbmxhZHVuZyAoQ2F0d2VhemxlLCAxMy4gRmViIDIwMDIsIDA4OjExOjMyKToKfiMhIG9uPVZhcmxhcmlvbiBvdD0xMDEzNTM2NzQyIG9nPXBhcnR5Cn4jISBybj1Nb250YW51cyBydD0xMDEzNTM1Njg2IHJnPXBhcnR5Cn4jISB0aWQ9MTAxMzQ3MjA4MApJbiBtZWluZW0gSGF1cyBzdGVodCBhdWNoIGtlaW5zLCBzbyBuZSBTYXVlcmVpIDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQYXJ0eS1FaW5sYWR1bmcgKENhdHdlYXpsZSwgMTMuIEZlYiAyMDAyLCAwODoxMTo0NCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTAxMzU1MzU1OSBvZz1wYXJ0eQp+IyEgcm49TW9udGFudXMgcnQ9MTAxMzUzNTY4NiByZz1wYXJ0eQp+IyEgdGlkPTEwMTM0NzIwODAKRHUgbWVpbnN0IGFsc28sIENhdCogc29sbHRlIGRhcyBhZW5kZXJuIGluICI+UGFydHlicmV0dCwgZGFzIGR1IGFuIGFsbGVuCnJlbGV2YW50ZW4gU3RhcnRwdW5rdGVuIGltIE1vcmdlbkdyYXVlbiBmaW5kZW4ga2FubnN0Ij8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUGFydHktRWlubGFkdW5nIChDYXR3ZWF6bGUsIDEzLiBGZWIgMjAwMiwgMDg6MTE6NDgpOgp+IyEgb249TW9udGFudXMgb3Q9MTAxMzU1MzY1NyBvZz1wYXJ0eQp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTM1NTM1NTkgcmc9cGFydHkKfiMhIHRpZD0xMDEzNDcyMDgwCldhcyBoZWlzc3Qgc2Nob24gcmVsZXZhbnQuIE5pY2h0IGplZGVyIGlzdCBiZWltIExhZW5nZW53YWNoc3R1bQpzaXR6ZW5nZWJsaWViZW4gdW5kIHNpY2ggc3RhdHRkZXNzZW4gaW4gZGllIEJyZWl0ZSBhdXNnZWRlaG50Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYW11bGV0dGUgdW5kIGh1ZXRlIDspIChCYW1iaSwgMTMuIEZlYiAyMDAyLCAxMDoxNjoxNyk6Cn4jISBybj1QYXRyeW4gcnQ9MTAxMzQ2ODE2MCByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMDEzNDY4MTYwCiJJY2ggaGFldHRlIGdlcm5lIGVpbiBBbXVsZXR0LCBtaXQgYWxsZW4gTWF4LVVudGVyc3R1ZXR6dW5nZW4gZnVlciBtZWluZW4KWndlaWcgdW5kIGdlc3VuZGVtIE1lbnNjaGVudmVyc3RhbmQuCkRhbWl0cyBuZWQgc28gZWluc2VpdGlnIHdpcmQsIGhhZXR0IGljaCBkYXMgYXVjaCBnZXJuZSBub2NoIG1pdCBnZXN1bmRlbQpFbGZlbi9Ib2JiaXQvWndlcmdlbi9GZWxpbmVuLVZlcnN0YW5kLgouLi4gTGFzc2VtZXIgZGVuIFp3ZXJnZW52ZXJzdGFuZCB3ZWcuCgo7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IHJlaXNlIChCYW1iaSwgMTMuIEZlYiAyMDAyLCAxMDoxODowMSk6Cn4jISBybj1CaWVsZWZlbGQgcnQ9MTAxMzUwOTA0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTM0NjgzNjcKRHUgd3Vzc3Rlc3QgbmljaHQsIGRhc3MgZXMgZWluZW4gU2tpbGwgZnVlcnMgcnVudGVyc3ByaW5nZW4uLi4/CihXYXJudW5nOiBSdWJyaWsgYmVhY2h0ZW4hKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdGltaW5nIChNdWFkZGliLCAxMy4gRmViIDIwMDIsIDIyOjAwOjM4KToKRHUgaG9lcnN0IGRpZSBVaHIgc2NobGFnZW46IEVzIGlzdCBqZXR6dCAyMiBVaHIuCltNb2VyZGVyOkdlaXN0IGVpbmVzIEJhdWFyYmVpdGVyb3Jrc10gRmVpZXJhYmVuZCEgRGFua2UsIEVwcGkhCgoqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB0aW1pbmcgKEFtYXJ5bGxpcywgMTMuIEZlYiAyMDAyLCAyMjowMToyMCk6Cn4jISBybj1NdWFkZGliIHJ0PTEwMTM2MzQwMzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNjM0MDM4CkRlciBpc3QgZGFubiBhYmVyIG5pY2h0IGluIGRlciBHZXdlcmtzY2hhZnQsIHdlbm4gZGVyIHNvIHNwYWV0IGVyc3QgZGVuIEhhbW1lcgpmYWxsZW4gbGFlc3N0Li4uCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHRpbWluZyAoTW9yZ290aCwgMTQuIEZlYiAyMDAyLCAwMDoxNjoyNyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTAxMzYzNDA4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTM2MzQwMzgKTWVpbmUgTlBDcyBtYWNoZW4gbmllIFBhdXNlLCBzY2hsaWVzc2xpY2ggaXN0IGRhcyBNVUQgamEgYXVjaCBuaWUgbGVlciA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHRpbWluZyAoWm9vaywgMTQuIEZlYiAyMDAyLCAwMDoxNzoyMik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwMTM2NDIxODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNjM0MDM4CkFsc28gZ2VzdGVybiBBYmVuZCB3YXJzIG1hbCBzY2hvZW4gbGVlci4gRGEgd2FyIGljaCBnYW56IGFsbGVpbmUuLi4gCmhpbW1saXNjaGUgUnVoZS4uLiA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHRpbWluZyAoUGl0ZmFsbCwgMTQuIEZlYiAyMDAyLCAwMDoxNzozOCk6Cn4jISBybj1ab29rIHJ0PTEwMTM2NDIyNDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNjM0MDM4CmRhcyBoYXR0ZSBpY2ggbGV0enRlbnMgYXVjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogdGltaW5nIChab29rLCAxNC4gRmViIDIwMDIsIDAwOjE3OjUyKToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAxMzY0MjI1OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTM2MzQwMzgKSGltbWxpc2NoZSBSdWhlIGluIGRlciBUb2Rlc3NlcXVlbno/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogdGltaW5nIChQaXRmYWxsLCAxNC4gRmViIDIwMDIsIDAwOjE4OjE0KToKfiMhIHJuPVpvb2sgcnQ9MTAxMzY0MjI3MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTM2MzQwMzgKcnVoZSwgbXVkIGZ1ZXIgbWljaCBhbGxlaW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IHRpbWluZyAoVmFybGFyaW9uLCAxNC4gRmViIDIwMDIsIDAwOjE4OjM2KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAxMzY0MjI5NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTM2MzQwMzgKQXVzIFZlcnNlaGVuIGltIEhvbWVNVUQgZWluZ2Vsb2dndCwgUGl0Kj8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IHRpbWluZyAoWm9vaywgMTQuIEZlYiAyMDAyLCAwMDoxODo1MCk6Cn4jISBybj1QaXRmYWxsIHJ0PTEwMTM2NDIyOTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNjM0MDM4CkljaCBnbGF1YiwgZWluIFJhdW0gdW5kIGVpbiBwYWFyIFJhdHRlbiByZWljaGVuIERpciBkb2NoIGJlcmVpdHMuIFdhcwp3aWxsc3QgRHUgbWl0IGRlbSBnYW56ZW4gTXVkPyA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBXVVcgbWFsIHdpZWRlci4uLiAoVmFybGFyaW9uLCAxNC4gRmViIDIwMDIsIDAzOjQ0OjE1KToKRGFzIFdhc3NlcnVud2VzZW4gbGVua3QgRGVpbmVuIEFuZ3JpZmYgYWIuCkR1IGZ1ZXJjaHRlc3QgRGljaCB2b3IgZGVyIE1hY2h0IHZvbiBWYXJsYXJpb24gdW5kIGZhZW5nc3QgYW4genUgeml0dGVybiEKVmFybGFyaW9uIGZ1ZXJjaHRldCBzaWNoIHZvciBEZWluZXIgTWFjaHQgdW5kIHppdHRlcnQgdm9yIEFuZ3N0IQpNYXRyaXg6IFZhcmxhcmlvbiBmdWVobHRlIHNpY2ggaGV1dGUgYXVjaCBzY2hvbiBiZXNzZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFzIFdVVyBtYWwgd2llZGVyLi4uIChDdWNodWxsaW4sIDE0LiBGZWIgMjAwMiwgMDM6NDU6MTEpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMTM2NTQ2NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNjU0NjU1CldpZSB3YXIgZGVyIFNwcnVjaCBkYXp1PwoqbGlua2VmYXVzdHZvcnplaWcqIERpZSBoaWVyIGlzdCByaWNodGlnIGZpZXMhCipyZWNodGVmYXVzdHZvcnplaWcqIFVuZCB2b3IgZGVyIGhhYiBpY2ggc2VsYmVyIEFuZ3N0IQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1lbnNhcGxhbiAhIChNb3Jnb3RoLCAxNC4gRmViIDIwMDIsIDA5OjI2OjI4KToKCiAgICAgICAgICAgICAgICAgIERlciBTcGVpc2VwbGFuIGZ1ZXIgRG9ubmVyc3RhZywgMTQuMDIuMDIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKRWludG9wZiAvIFRhZ2VzZ2VyaWNodAoKICAgQXNpYXRpc2NoZXIgSHVlaG5lcnN1cHBlbmVpbnRvcGYgbWl0IHJlaWNoZXIgRWlubGFnZSwgQnJvZXRjaGVuLCBEZXNzZXJ0CiAgIApXYWhsZXNzZW4gMQoKICAgQmFtaSBHb3JlbmcgKEdlZmx1ZWdlbCwgR2VtdWVzZSwgTnVkZWxuIHVuZCBQaWx6ZSkKICAgCkJlaWxhZ2VuCgogICBFaWVybXVzY2hlbHN1cHBlCiAgIFBvbW1lcyBmcml0ZXMKICAgQnV0dGVya2FydG9mZmVsbgogICBQcmluemVzc2JvaG5lbgogICBLb3BmLVRvbWF0ZW5zYWxhdAogICBTY2hva29sYWRlbmNyZW1lCiAgIApXYWhsZXNzZW4gMgoKICAgWmlnZXVuZXJzY2huaXR6ZWwgMSwyLDkKICAgCldhaGxlc3NlbiB2ZWdldGFyaXNjaAoKICAgR2ViLiBLYWVzZW51ZGVsbiBtaXQgVG9tYXRlbnNhdWNlCiAgIApCZWlsYWdlbgoKICAgR2VtdWVzZXN1cHBlIG1pdCBOdWRlbG4KICAgS3JhZXV0ZXJzcGF0emVuCiAgIEJhbGthbmdlbXVlc2UKICAgR2ViYWVjawoKLSByZWljaGUgRWlubGFnZT8gSGFiZW4gZGllIG5lbiBNaWxsaW9uYWVyIGdlc2NobGFjaHRldD8KLSBaaWdldW5lcnNjaG5pdHplbCBtaXQgMSwyLDkgPz8/IFBvbW1lcywgcm90ZSBTYXVjZSwgUGFuYWRlID8/CgpNKiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdlc3VjaHQ6IFVodXJhIDspIChHcmltbWJvcm4sIDE0LiBGZWIgMjAwMiwgMDk6MzM6NTkpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMTM2NzQ0Nzggcmc9YW56ZWlnZW4KfiMhIHRpZD0xMDEzMjEzNDE5CkhlZSwgcHNzdDogY2F0d2VhemxlQG1nLm11ZC5kZSEgCgpnZCZyLAogICAgICBHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNZW5zYXBsYW4gISAoQmllbGVmZWxkLCAxNC4gRmViIDIwMDIsIDA5OjU0OjM2KToKfiMhIHJuPU1vcmdvdGggcnQ9MTAxMzY3NTE4OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTM2NzUxODgKLi4udW5kIHdhcyBzaW5kIEtyYWV1dGVyc3BhdHplbj8hCgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWVuc2FwbGFuICEgKEdvciwgMTQuIEZlYiAyMDAyLCAxMTo1NjozMik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwMTM2NzUxODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNjc1MTg4Ck5hamEgYW4gZGVpbmVyIEFTdGVsbGUgd3VlcmRlIGljaCBsaWViZXIgc2NoYXVlbiwgZGFzcyBkdSwgd2VubiBkdSBkaXIgZGFzCkJhbGthbmdlbXVlc2UgYmVzdGVsbHN0IG5pY2h0IGF1ZiBlaW5lbiBCb21iZW5zcGxpdHRlciBiZWlzc3QuIH07LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWVuc2FwbGFuICEgKFNpbHZhbmEsIDE0LiBGZWIgMjAwMiwgMTE6NTg6MzApOgp+IyEgcm49R29yIHJ0PTEwMTM2ODQxOTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNjc1MTg4CkR1IGdsYXVic3QgZG9jaCBuaWNodCBlcm5zdGhhZnQsIGRhc3MgZWluIE1lbnNhLUJhbGthbi1HZW11ZXNlIHdpcmtsaWNoIGF1cwpkZW0gQmFsa2FuIGtvbW10LiBEYXMga29tbXQgYXVzIGRlciBDaGVtaWVmYWJyaWsgd2llIGFsbCBkZXIgYW5kZXJlIEZyYXNzIGRhCmF1Y2guLi4KCiAgU2lsdmFuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWVuc2FwbGFuICEgKEdvciwgMTQuIEZlYiAyMDAyLCAxMjowMDo0Nik6Cn4jISBybj1TaWx2YW5hIHJ0PTEwMTM2ODQzMTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNjc1MTg4ClNvdmllbCBpY2ggd2Vpc3Mgd3VyZGVuIGF1Y2ggQ2hlbWllZmFicmlrZW4gYm9tYmFyZGllcnQuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNZW5zYXBsYW4gISAoR3JpbW1ib3JuLCAxNC4gRmViIDIwMDIsIDEyOjA1OjUxKToKfiMhIHJuPVNpbHZhbmEgcnQ9MTAxMzY4NDMxMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTM2NzUxODgKQWxzbywgZW50d2VkZXIgaGFzdCBEdSBrZWluZSBBaG51bmcgdm9uIEVzc2VuIG9kZXIga2VpbmUgQWhudW5nIHZvbgoiQ2hlbWllZmFicmlrZW4iLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNZW5zYXBsYW4gISAoTW9yZ290aCwgMTQuIEZlYiAyMDAyLCAxMjoxNDowMSk6Cn4jISBybj1Hb3IgcnQ9MTAxMzY4NDE5MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTM2NzUxODgKQWxzbyBkYXMgWmlnZXVuZXJzY2huaXR6ZWwgMSwyLDkgd2FyIGVpbiBTY2h3ZWluZW5hY2tlbnN0ZWFrIG1pdCBkdW5rbGVyClBpbHpzYXVjZSA6KQpXaWUgaGVpc3NlbiBub2NobWFsIGRpZXNlIEJpbGRycmFldHNlbCwgYmVpIGRlbmVuIG1hbiBCdWNoc3RhYmVuIHN0cmVpY2hlbgpvZGVyIHRhdXNjaGVuIG11c3M/CgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWVuc2FwbGFuICEgKEdvciwgMTQuIEZlYiAyMDAyLCAxMjoxNjo1NSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwMTM2ODUyNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNjc1MTg4CkR1IG1laW5zdCBtYWxlbiBuYWNoIFphaGxlbj8gfTotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWVuc2FwbGFuICEgKENhdHdlYXpsZSwgMTQuIEZlYiAyMDAyLCAxMjozMzozNSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwMTM2ODUyNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNjc1MTg4CkJpbGRlcnJhZXRzZWw/CgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1lbnNhcGxhbiAhIChaYXJuaXlhLCAxNC4gRmViIDIwMDIsIDEyOjM4OjU3KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDEzNjg2NDE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMzY3NTE4OApSZWJ1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWVuc2FwbGFuICEgKEJvaW5nLCAxNC4gRmViIDIwMDIsIDEyOjUwOjA0KToKfiMhIHJuPU1vcmdvdGggcnQ9MTAxMzY4NTI0MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTM2NzUxODgKMSwyLDkgc3RlaHQgZnVlciBQaG9zcGhhdGUgdW5kIHNvIEtyYW0gLi4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1lbnNhcGxhbiAhIChHbG9pbnNvbiwgMTQuIEZlYiAyMDAyLCAxMzoxNDo1NCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxMzY4NDc1MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTM2NzUxODgKU2lsdmFuYSBoYXQgenV2aWVsICJCcnVzdCBvZGVyIEtldWxlIiBnZXNlaGVuIDopCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNZW5zYXBsYW4gISAoU2lsdmFuYSwgMTQuIEZlYiAyMDAyLCAxMzoyMzoyMyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDEzNjg4ODk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMzY3NTE4OApOb2UuIEFiZXIgaWNoIGthbm4gTWVuc2EtRnJhc3Mgdm9uIEVzc2VuIHVudGVyc2NoZWlkZW4uIDopCgogIFNpbHZhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUGFydHlnYWVzdGUgZ2VzdWNodCEgKEJvaW5nLCAxNC4gRmViIDIwMDIsIDE0OjQxOjE1KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDEzNjk0MDIzIHJnPXBhcnR5Cn4jISB0aWQ9MTAxMTYxNTY2NApEdSBtZWluc3QgendlaWZlbGxvcyAnU3RhdHVzc2lzJy4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUGFydHlnYWVzdGUgZ2VzdWNodCEgKE11cGZlbCwgMTQuIEZlYiAyMDAyLCAxODoyODoxNCk6Cn4jISBybj1Cb2luZyBydD0xMDEzNjk0MDc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMTYxNTY2NApTdGF0dWV0ZW4gbmF0dWVybGljaCA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvc28gKFBpdGZhbGwsIDE0LiBGZWIgMjAwMiwgMTg6Mjg6MjApOgpEaXIgZmFlbGx0IGVpbmUgZmF0YWxlIFNjaHdhZWNoZSBpbiBEZWluZW0gRmV1ZXJiYWxsemF1YmVyIGF1ZiEKRHUgbGVybnN0IGV0d2FzIGF1cyBEZWluZW0gRXJmb2xnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5kIHNvd2FzIGlzdCBaYXViaSAuLi4gIT8gKExpYXJhLCAxNC4gRmViIDIwMDIsIDIwOjI3OjAxKToKQnJvdG5hZWwgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkJyb3RuYWVsICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkJyb3RuYWVsICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpCcm90bmFlbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKRGVpbiBGcmV1bmQgQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogaWNoIHdvbGx0IG51ciBtYWwgZGllIGJldHRlbiBpbSBzdHJ1dgpEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiB0ZXN0ZW4gOikKCkFoamEuIE1pdCBSZWluIC0gUmF1cz8gOy0pClVuZCB3aWVzbyB1ZWJlcmhhdXB0PwoKWlpMLCBmZWhsZW4gZGllIFdvcnRlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3J1ZXNzZSEgKEdyaW1tYm9ybiwgMTUuIEZlYiAyMDAyLCAwMjowMTowNyk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTAxMzczNDg2MSBvZz1hbGxnZW1laW5lcwp+IyEgcm49TWFyaXRhIHJ0PTEwMTM3MzQ2NzMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDEzNzM0NjczCkhhaC4gSnVuZ3NwdW5kLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNZW5zYXBsYW4gISAoVHJveSwgMTUuIEZlYiAyMDAyLCAwODoyMjo0Nik6Cn4jISBybj1TaWx2YW5hIHJ0PTEwMTM2ODk0MDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzNjc1MTg4CldlciB3ZWlzcywgdmllbGxlaWNoIHN0ZWh0IGF1ZiBkZW4gRWlud2VncGFja3VuZ2VuLCBkaWUgZGllIE1lbnNhIHp1cgprdWxpbmFyZW4gV2llZGVyYXVmYmVyZWl0dW5nIGZ1ZXIgZGllIFN0dWRlbnRlbiBlcmhhZWx0IGF1Y2ggc293YXMgd2llCiJKYWNxdWVzIFRyaWNhdGVsIiBhdWYgZGVyIFJ1ZWNrc2VpdGUgOi0pCgpUcm95CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBQYXJ0eS1FaW5sYWR1bmcgKENhdHdlYXpsZSwgMTUuIEZlYiAyMDAyLCAxMDozMDoyNik6Cn4jISBvbj1Hb3JvZyBvdD0xMDEzNzA0OTY3IG9nPXBhcnR5Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTAxMzU4NDM3MCByZz1wYXJ0eQp+IyEgdGlkPTEwMTM0NzIwODAKRGlwbG9taWVydCwgaG0gd2VubiBkYXMgbiBHcnVuZCBpcywgaGFiIGljaCBqYSBub2ggbWFsIEdsdWVjayBnZWhhYnQuIAoKbWZHb3JvZyBoYXQgYWxsIHNlaW5lIElkZWVuIGluIHNvbm5lIGxhbmd3ZWlsaWdlIEFyYmVpdCBnZXBhY2t0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQYXJ0eWdhZXN0ZSBnZXN1Y2h0ISAoQ2F0d2VhemxlLCAxNS4gRmViIDIwMDIsIDEwOjMwOjU0KToKfiMhIG9uPUNhZHJhY2ggb3Q9MTAxMzcwNzcwNiBvZz1wYXJ0eQp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMTM2OTQxMzMgcmc9cGFydHkKfiMhIHRpZD0xMDExNjE1NjY0Cldlbm4gRHUgRGFuY2VyIGVycmVpY2h0IGhhc3QsIGJyYXVjaHN0ZSBkb2NoIER1cmlhbiBrZWluZSBtYWlsIG1laHIgenUKc2NoaWNrZW4gLG8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBQYXJ0eWdhZXN0ZSBnZXN1Y2h0ISAoQ2F0d2VhemxlLCAxNS4gRmViIDIwMDIsIDEwOjMxOjAyKToKfiMhIG9uPU1vcmdvdGggb3Q9MTAxMzc1NzY2NCBvZz1wYXJ0eQp+IyEgcm49VHJveSBydD0xMDEzNzU3NTYyIHJnPXBhcnR5Cn4jISB0aWQ9MTAxMTYxNTY2NApIZWlzc3QgZGllIG5pY2h0IEdpbmFXaWxkPyA6KQoKTSogaGF0IGdlc3Rlcm4gZWx0b24udHYgZ2VzY2hhdXQgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBQYXJ0eWdhZXN0ZSBnZXN1Y2h0ISAoQ2F0d2VhemxlLCAxNS4gRmViIDIwMDIsIDEwOjMxOjA2KToKfiMhIG9uPVRyb3kgb3Q9MTAxMzc1ODA4MSBvZz1wYXJ0eQp+IyEgcm49TW9yZ290aCBydD0xMDEzNzU3NjY0IHJnPXBhcnR5Cn4jISB0aWQ9MTAxMTYxNTY2NApTY2hvbiBtb2VnbGljaC4gSWNoIHdlaXNzIG5pY2h0LCB3aWUgZGllIHNpY2ggaGV1dGUgbmVubnQuIFZpZWxsZWljaHQgYXVjaApHaW4tQS1Ub25pYyBvZGVyIHNvLi4uCgpUcm95CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBhcnR5Z2Flc3RlIGdlc3VjaHQhIChDYXR3ZWF6bGUsIDE1LiBGZWIgMjAwMiwgMTI6NTg6NDEpOgp+IyEgb249QXJrIG90PTEwMTM3Njk3MDggb2c9cGFydHkKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDEzNjk0MTMzIHJnPXBhcnR5Cn4jISB0aWQ9MTAxMTYxNTY2NApTdGF0aSA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBQYXJ0eWdhZXN0ZSBnZXN1Y2h0ISAoQW50aGVhLCAxNS4gRmViIDIwMDIsIDEyOjU5OjI5KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDEzNzc0MzIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxMTYxNTY2NApXaWUgd2FlcmUgZXMgbWl0ICJTdGF0dXNzaWVzIj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlaXNoZWl0IChKYWRhd2luLCAxNS4gRmViIDIwMDIsIDE3OjQxOjM1KToKIltDaGFvczpLcnV1b2xxXSBUZWt0dWtvIGthZW1wZnQgbnVuIG1pdCB1bnMgenVzYW1tZW4gYXVmIGRlciBkdW5rbGVuIFNlaXRlCmRlcgoiW0NoYW9zOktydXVvbHFdIE1hY2h0ISBFaW5lIHdlaXNlIEVudHNjaGVpZHVuZy4gR3JhdHVsYXRpb24hCiJbVG9kOkxhcnNdIEtydXVvbHEgaGF0IGdlcmFkZSBUZWt0dWtvIHVtZ2VicmFjaHQuCiJbVG9kOktydXVvbHFzIENoYW9zLVJpdHVhbCBicmFjaHRlIGRlbiBUb2RdCgpXZWlzZSBFbnRzY2hlaWR1bmdlbiBkZXIgQ2hhb3Rlbi4uLgpKYWQqIChncmluc2VuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmViZW4gaW4gZGVyIFVudGVyd2VsdC4uLiAoUmFnbmFyb2VrLCAxNS4gRmViIDIwMDIsIDIzOjA0OjIxKToKCkRvdHogZGVua3QgICAuIG8gTyAobGFhYWFhYWFhbmdlKQpEb3R6IGRydWVja3QgbWFsIGF1ZiBkZW4gS25vcGYgZnVlciBkZW4gUmF1bXJlc2V0LgpFaW4gRHVua2VsZWxmZW5tYWdpZXIga29tbXQgYW4uCkVpbiBEdW5rZWxlbGZlbm1hZ2llciB6aWVodCBlaW5lbiBzY2h3YXJ6IHNjaGltbWVybmRlbiBSaW5nIGFuLgpVbSBkZW4gRHVua2VsZWxmZW5tYWdpZXIgZW5zdGVodCBlaW5lIHNjaHdhcnogc2NoaW1tZXJuZGUgQXVyYS4KICBEZXIgRHVua2VsZWxmZW5tYWdpZXIgZ3JlaWZ0IERvdHogbWl0IHNlaW5lbiBIYWVuZGVuIGFuLgoKCk1hbiBtdXNzIG51ciBkaWUgdmVyYm9yZ2VuZW4gS25vZXBmZSBmaW5kZW4gOykKOjpyYWduYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGViZW4gaW4gZGVyIFVudGVyd2VsdC4uLiAoTm9ubmUsIDE2LiBGZWIgMjAwMiwgMDk6MzM6NTcpOgp+IyEgcm49UmFnbmFyb2VrIHJ0PTEwMTM4MTA2NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDEzODEwNjYxCkRhbm4gaGFzdGUgc2ljaGVyIGF1Y2ggZ2xlaWNoIGRlbiBUeXBvIGdlZml4ZWQgKGM7CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3J1ZXNzZSEgKEdub21lLCAxNi4gRmViIDIwMDIsIDEyOjUyOjE3KToKfiMhIHJuPU1hcml0YSBydD0xMDEzNzM0NjczIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTAxMzczNDY3MwppY2ggYmVmdWVyY2h0ZSwgZGFzcyBkaWNoIGF1ZiBkZXIgcGFydHkgZGFubiBhdWNoIGtlaW5lciBiZW1lcmt0LCB3ZW5uCjEzNjEgZGVpbiBsZXR6dGVyIGxvZ2luIHdhci4uLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSXN0IGtsYXIgLi4uIChMaWFyYSwgMTcuIEZlYiAyMDAyLCAwMDo0ODowMyk6CkRlaW4gRnJldW5kIEZvb2JhciB0ZWlsdCBEaXIgbWl0OiBXaWVzbyBrcmllZyBpY2ggbmVuIFJaRywgd2VubiBpY2ggQW5keSBuYWNoCkRlaW4gRnJldW5kIEZvb2JhciB0ZWlsdCBEaXIgbWl0OiBBbWFuZGEgZnJhZ2U/IDpvKQpEZWluIEZyZXVuZCBNdWFkZGliIHRlaWx0IERpciBtaXQ6IHN5bmFwc2VuLiA6KQoKWlpMCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgbWFsIHdpZWRlciAoRm9vYmFyLCAxNy4gRmViIDIwMDIsIDAyOjIwOjU2KToKRnJvbTogSG9sZ2VyIEhhZXJpbmcgPG1haWxAaGhhZXJpbmcuZGU+Ck5ld3Nncm91cHM6IGRlLnNvYy5yZWNodC5taXNjClN1YmplY3Q6IElzdCBkYXMgR2VzY2hhZWZ0c3NjaGFlZGlndW5nPwpNZXNzYWdlLUlEOiA8YTRpOGg5JG1mYiQxQG5ld3NyZWFkMS5hcmNvci1vbmxpbmUubmV0PgoKSGFsbG8gYWxsZSB6dXNhbW1lbi4KCkljaCBiaW4gV2ViZGVzaWduZXIgdW5kIFByb2dyYW1taWVyZXIgdW5kIGluIGRpZXNlbSBCZXJlaWNoIHNlbGJzdHN0YWVuZGlnIAp0YWV0aWcuIExhZXVmdCBhbGxlcyBtZWhyIG9kZXIgd2VuaWdlciBndXQgKFdpZSBkYXMgYW0gQW5mYW5nIGViZW4gc28gaXN0KS4gCgpKZXR6dCBoYWIgaWNoIGhpZXIgZnVlciBlaW5lIEltbW9iaWxpZW5maXJtYSBlaW5lIFdlYnNlaXRlIG1pdCAKSW1tb2JpbGllbmRhdGVuYmFuayBlcnN0ZWxsdCB1bmQgZGllIExldXRlIHdhcmVuIGF1Y2ggenVmcmllZGVuIHVuZCBkYXMgdm9yIAphbGxlbSB3ZWlsIGljaCBkZW5lbiBkaWUgU2FjaGUgenUgYmlsbGlnIHZlcmthdWZ0IGhhYmUgd2FzIGFiZXIgbmljaHQgZGFzIApQcm9ibGVtIGlzdCAobWVpbiBQcm9ibGVtKS4KCkpldHp0IGJla29tbWVuIGRpZSBwZXIgTWFpbCBlaW4gQmVzY2h3ZXJkZXNjaHJlaWJlbiB1ZWJlciBkYXMgZWluZ2VzZXR6dGUgCkphdmEtQXBwbGV0IG1pdCB3ZWxjaGVtIGljaCBkYXMgTWVudSByZWFsaXNpZXJ0IGhhYmUuIAoKSGllciBkYXMgU2NocmVpYmVuIDoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmluZm8KS09OU1RSVUtUSVZFICghKSBLcml0aWsgYW4gSWhyZW0gSW50ZXJuZXQtQXVmdHJpdHQgdWViZW46CgpEZXIgV2ViZGVzaWduZXIsIGRlciBJaHJlbiBBdWZ0cml0dCBrb256aXBpZXJ0IGhhdCwgc2V0enQgZWluZSBzb2dlbmFubnRlIAoiQXBwbGV0Ii1UZWNobm9sb2dpZSBlaW4uCgpELmguIGZ1ZXIgZGVuIEludGVybmV0LVN1cmZlcjoKV2VyIElocmUgU2VpdGVuIGFuc2NoYXVlbiB3aWxsLCBtdXNzIGVybGF1YmVuLCBkYXNzIGZyZW1kZSwgaWhtIHVuYmVrYW5udGUgClByb2dyYW1tZSAoZGllIERpbmdlciBoZWlzc2VuICJhcHBsZXRzIikgYXVmIHNlaW5lbSBSZWNobmVyIHJ1bnRlcmdlbGRhZW4gCndlcmRlbi4gIERhcyBtYWNoZW4gbnVyIExldXRlLCBkaWUga2VpbmUgQWhudW5nIGhhYmVuLCB3YXMgc2llIGRhIHR1bgooTGVpZGVyIG5vY2ggZGllIE1laHJoZWl0IGRlciBJbnRlcm5ldGdlbWVpbmRlKS4KRGFzIFNpY2hlcmhlaXRzcmlzaWtvLCBkYXNzIGRhcyBpY2ggbWlyIHZvbiBpaG5lbiBlaW5lIGRlc3RydWt0aXZlIEFud2VuZHVuZwoiZG93bmxvYWRlIiwgaXN0IHJlYWwuCihJY2ggbGFzc2Ugc28gZXR3YXMgbnVyIGJlaW0gSG9tZWJhbmtpbmcgenUgRGllIGhhYmVuIGFiZXIgZWluZSAKdW5hYmhhZW5naWdlLCBpbnRlcm5hdGlvbmFsZSBPcmdhbmlzYXRpb24gbWl0IGRlciBaZXJ0aWZpemllcnVuZyBkZXMgQXBwbGV0cyAKYmVhdWZ0cmFndC4gU29taXQgaGFiZSBpY2ggZG9ydCBlaW5lIGdld2lzc2UgUmVjaHRzc2ljaGVyaGdlaXQpLgoKRnVlciBTaWUgYmVkZXV0ZXQgZGFzIGtvbmtyZXQsIGRhc3MgTGV1dGUgbWl0IHRlY2huaXNjaGVuIFNhY2h2ZXJzdGFuZAooRGFzIHNpbmQgaW4gZGVyIFJlZ2VsIGRpZSBtaXQgZGVtIGhvZWhlcmVuIEVpbmtvbW1lbiEpCm51ciBzZWhyIHVuZ2VybiBJaHJlIFNlaXRlIGJlc3VjaGVuLgoKTG9lc3VuZyBkZXMgUHJvYmxlbXM6CjEuIFNldHplbiBTaWUgZWluZSBTZXJ2bGV0LVRlY2hub2xvZ2llIGVpbiAoSWNoIGdlaCBtYWwgZGF2b24gYXVzLCBkYXNzIElocgpXZWJkZXNpZ25lciBkYXp1IHRlY2huaXNjaCBuaWNodCBpbiBkZXIgTGFnZSBpc3QpLgoKMi4gU2V0emVuIFNpZSBlaW5mYWNoIHdpZWRlciBIVE1MIGVpbi4gTmljaHRzIGF1ZiBJaHJlciBTZWl0ZSBpc3Qgc28gCiJzb2Zpc3RpY2F0ZWQiLCBkYXNzIFNpZSBkYWZ1ZXIgZWluIEphdmEtYmVzaWVydGUgUHJvZ3JhbW1pZXJ1bmcgYnJhZXVjaHRlbiEgCk5pY2h0IGVpbm1hbCBkYXMgQXVzc2VoZW4gSWhyZXIgSG9tZXBhZ2Ugd3VlcmRlIGR1cmNoIGtvbnNlcXVlbnRlbiBFaW5zYXR6IAp2b24gSFRNTCBnZWFlbmRlcnQuCgozLiBXZW5uIFNpZSBhdWYgZGllIEFwcGxldC1UZWNobm9sb2dpZSBuaWNodCB2ZXJ6aWNodGVuIG1vZWNodGVuLCBlcmxhdWJlbiAKU2llIGRlbSBtdWVuZGlnZW4gSW50ZXJuZXQtQmVudXR6ZXIgenVtaW5kZXN0IGVpbmVuIGFsdGVybmF0aXZlbiBadWdhbmcgb2huZQpBcHBsZXRzIChEYXMgd3VlcmRlIGRpZSBTZXJpb2VzaXRhZXQgSWhyZXMgSW50ZXJuZXRhdWZ0cml0dHMgc2VociBzdGVpZ2VybikuCgpadSBJaHJlbSBXZWItRGVzaWduZXI6CkRhIGhhdCBlcyBqZW1hbmQgZ2VzY2hhZmZ0IC1zb3JyeS0gSWhuZW5lIGV0d2FzIGFic29sdXQgVW5ub2V0aWdlcyB0ZXVlciB6dSAKdmVya2F1ZmVuIHVuZCBoYXQgZGFtaXQgZGVuIE51dHp3ZXJ0IElocmVyIFdlYi1TZWl0ZSBtYXNzaXYgZ2VtaW5kZXJ0LgpBbmRlcmUgZWxlbWVudGFyZSBEZXRhaWxzIElocmVyIFdlYnNlaXRlIGZ1bmt0aW9uaWVyZW4gZGFnZWdlbiBnYXIgbmljaHQ6CnouYi4gZGVyIGVNYWlsLUxpbmsgbmFjaCBpbmZvQEJyb2RtZXJrZWwuZGUgaGF0IGVpbmUgZmFsc2NoZSBTeW50YXgsIApwcm9iaWVyZW4gU2llIGVzIGF1cyEKKERpcmVrdGVyIGF1c2dlZHJ1ZWNrdDogRGVyamVuaWdlIHNvbGx0ZSBlcnN0bWFsIHNlaW5lIEhhdXNhdWZnYWJlbiBtYWNoZW4sIApiZXZvciBlciBzaWNoIGFuIGZvcnRzY2hyaXR0bGljaGUgVGVjaG5vbG9naWVuIHJhbndhZ3QhKQoKVmVyc3RlaGVuIFNpZSBkYXMgYml0dGUgbmljaHQgYWxzIEFuZ3JpZmYsIHNvbmRlcm4gYWxzIEhpbGZlIHVuZCAKR2VmYWVsbGlna2VpdCEgTm9ybWFsZXJ3ZWlzZSBtdWVzc3RlbiBTaWUgZnVlciBkaWVzZSAiTWluaS1BbmFseXNlIiBiZWkgZWluZW0gCnVuYWJoYWVuZ2lnZW4gSVQtQmVyYXRlciBlaW5lbiB2aWVzdGVsbGlnZW4gRXVyby1CZXRyYWcgemFobGVuOyBJY2ggc2NobmVrZSAKSWhuZW4gbWVpbmUgSW5mb3MuCgooU29sbHRlbiBTaWUgc2VsYnN0IGRpZXNlbiBBdWZ0cml0dCByZWFsaXNpZXJ0IGhhYmVuLCBzbyBlbnRzY2h1bGRpZ2UgaWNoIAptaWNoIHNlbGJzdHZlcnN0YWVuZGxpY2ggZnVlciBtZWluZSBEaXJla3RoZWl0LiBOdXR6ZW4gU2llIHRyb3R6ZGVtIG1laW5lIApBdXNmdWVocnVuZ2VuIHVuZCB1ZWJlcmRlbmtlbiBTaWUgbm9jaG1hbHMgSWhyZW4gSW50ZXJuZXRhdWZ0cml0dC4KSWNoIGhvZmZlLCBTaWUgc2VuZGVuIG1pciB0cm90emRlbSBkYXMgRXhwb3NlIHp1IDstKSAKCi0tLS0tLS0tLS0tLS0tLQoKQWxzbyBtaWNoIHN0b2VydCBkaWVzZXMgR2VzY2htYXJyIGdld2FsdGlnLCB2b3JhbGxlbSB3ZWlsIGRpZSBGaXJtYSB1ZWJlciBkaWUgClJlYWxpZGllcnVuZyBlaW5lcyBLdW5kZW5pbmZvcm1hdGlvbnNzeXN0ZW1zIG5hY2hkZW5rdCB1bmQgaWNoIGRpZXNlcyAKUHJvamVrdCB1bXNldHplbiBzb2xsdGUuIEpldHp0IGtvbW10IHNvIGVpbiBTY2hsYXVtZWllciBkYWhlciwgZGVyIG1laW50LCAKZXJzY2hvZXBmdW5nCgpKZXR6dCBtZWluZSBGcmFnZTogSXN0IGRhcyBHZXNjaGFlZnRzc2NoYWVkaWdlbmRlciBSdWZtb3JkLCBvZGVyIGhhYiBpY2ggZGEgCmVpbmUgZmFsc2NoZSBBbnNpY2h0PwoKU29ycnkgZnVlciBkYXMgTWVnYS1Qb3N0aW5nLgoKQWNoIGphOiBFcyBnZWh0IHVtIGh0dHA6Ly93d3cuYnJvZG1lcmtlbC5kZQoKbWZnCkhvbGdlciBIYWVyaW5nCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5kIG5vY2ggbWFsIE5ldGRpZ2VzdCAoRm9vYmFyLCAxNy4gRmViIDIwMDIsIDAyOjI3OjIzKToKRnJvbTogU3RlZmFuIFdvbGZmIDx1c2VuZXQwMjAyQGVudGl0eS5zdHctYm9ubi5kZT4KTmV3c2dyb3VwczogZGUuc29jLnN1Ymt1bHR1ci5nb3RoaWMKU3ViamVjdDogUmU6IFtUViBUaXBdIDIzOjAwIEFydGUgSGV1dGUgTUlDIEFVU1NFUiBTSUNIIChSZXB0aWxlIFpvbmUpCkRhdGU6IEZyaSwgMTUgRmViIDIwMDIgMjE6NTA6MzMgKzAxMDAKTWVzc2FnZS1JRDogPHFhc2o0YS5hNzMubG5AZW50aXR5LnN0dy1ib25uLmRlPgoKQ2VjaWxlIE5ldSB3cm90ZToKCj4gaW5zdGFudCBtZXNzYWdpbmcgZHVlcmZ0ZSBkaXIgamEgYmVrYW5udCBzZWluIC0gZGFtaXQgc2luZCBzbyBzYWNoZW4KPiB3aWUgSUNRLCB5YWhvbyBtZXNzZW5nZXIgZXRjLiBnZW1laW50LiBtaXQgY29udGV4dCBlbmhhbmNlZCBoZWlzc3QsCj4gZGFzcyBkYXMgSU0gaW4gZWluZW0gbW9iaWxlbiBnZXJhZXQgbGF1ZmVuIHNvbGwsIHdlbGNoZXMgc2ljaCBzZWluZXIKPiBha3R1ZWxsZW4gZ2VvZ3JhcGhpc2NoZW4gcG9zaXRpb24gYmV3dXNzdCBpc3QuIGRpZXNlIGluZm9ybWF0aW9uIGthbm4KPiBkYW5uIGFuIGFuZGVyZSBiZW51dHplciB3ZWl0ZXJnZWxlaXRldCB3ZXJkZW4sIHNvIGRhc3MgamVkZXIgc2llaHQgd28KPiBzaWNoIHNlaW5lIGZyZXVuZGUgYXVzIGRlciAiYnVkZHktbGlzdCIgZ2VvZ3JhcGhpc2NoIGJlZmluZGVuLiBkYW1pdAo+IGlzdCBlcyBkYW5uIG1vZWdsaWNoLCBmcmV1bmRlIGdlemllbHQgd2VnZW4gaWhyZXIgbmFlaGUgdW5kCj4gYXZhaWxhYmlsaXR5IGFuenVzcHJlY2hlbi4KCm5pbW0gc3VwZXIuIGF1cyAKCiJIZXksIGRlciBzaXR6dCBnZXJhZGUgYXVmIGRlbSBLbG8sIGRlbiBydWZlbiB3aXIgbWFsIGFuLiIKCk9kZXIgZGllIE11dHRlcjogIkpldHp0IGlzdCBkZXIgSnVuZ2Ugc2Nob24gd2llZGVyIGluIGRlciBLbmVpcGUvRGlzY28sIApkYWJlaSB3YXIgZGVyIGhldXRlIG1vcmdlbiBnYXIgbmljaHQgaW4gZGVyIFZvcmxlc3VuZy4iCgpPZGVyIGRlciBDaGVmOiAiV2FydW0gaXN0IGRpZSBNdWVsbGVyIGluIGRlciBFaW5rYXVmc3Bhc3NhZ2UsIGRpZSBpc3QgCmRvY2gga3JhbmtnZXNjaHJpZWJlbj8iCgpPZGVyIGRpZSBGcmV1bmRpbjogIldvIGlzdCBkZXIgZGVubj8gRG9jaCBuaWNodCBldHdhIHdpZWRlciBiZWkgZGllc2VyIApTY2hsYW1wZT8hIgoKU2Nob2VuZSBuZXVlIFdlbHQuCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktlaW4gS29tbWVudGFyIChUZWt0dWtvLCAxNy4gRmViIDIwMDIsIDE2OjAzOjA4KToKW1RydmVzOlRla3R1a29dIF9hYndlcnRlbj8gPDE1OjU1OjI5PgpbVHJ2ZXM6U3Rvdm9rb3JdIGRhbmtlLCB1bmQgYmVzb25kZXJzIGtlbGRvciB1bmQgY3Jvd2xleSBmdWVyIGRpZSBoaWxmZQpbVHJ2ZXM6U3Rvdm9rb3JdIDwxNTo1NTozMz4KW1RydmVzOlRla3R1a29dIGhtIGRpZSBhbmRlcmUgdHJ2ZXMgZWJlbmUgaXMgZWNodCBrb21pc2NoIDopIDwxNTo1NTo0OT4KW1RydmVzOkFsY2luYV0gZGEgc2luZCB3b2hsIG51ciBaYXViaXMgZHJhdWYgdW5kIGphbW1lcm4gdW0gZGllIFdldHRlPwpbVHJ2ZXM6QWxjaW5hXSA8MTU6NTY6MTM+CltUcnZlczpNdWFkZGliXSBkaWUgYW5kZXJlIHRydmVzIGViZW5lPyA8MTU6NTY6NTM+CltUcnZlczpLZWxyaXNdIGRpZSBzdG9lcnQgLXRydiBpc3QgbmltbWVyIG1vZWdsaWNoIDwxNTo1NzowNT4KW1RydmVzOkplaG92YV0gbGVndCBldWNoIGRvY2ggbmVuIGFuZGVyZW4gbmFtZW4genUgOi0pIDwxNTo1Nzo0Mz4KW1RydmVzOk1lbGNob3JdIF9hYmVydGVuKjEwIDwxNTo1Nzo1MT4KW1RydmVzOk11YWRkaWJdIGViZW5lIHQ9dHJ2ZXMgPDE1OjU3OjU5PgpbVHJ2ZXM6TWVsY2hvciBncmluc3QgPDE1OjU4OjAxPl0KW1RydmVzOkplaG92YV0gX2Fid2VydGVuKjEyIDwxNTo1ODowMT4KW1RydmVzOkFsY2luYSAgbmltbXQgaW1tZXIgLXRyIDtvKSA8MTU6NTg6MTk+XQpbVHJ2ZXM6Q3JvZnRdIF9hYndlcnRlbiogPDE1OjU4OjIxPgpbVHJ2ZXM6TXVhZGRpYl0gZGEgbXVzcyBtYW4gc292aWVsIHRpcHBlbiA6KSA8MTU6NTg6MzE+CltUcnZlczpBbGNpbmFdIGhlaGUgO28pIDwxNTo1ODo0MT4KW1RydmVzOk11YWRkaWJdIGphLCAyMDAlIDopIDwxNTo1ODo1MT4KW1RydmVzOktlbHJpc10gcGZmZmZ0IFNwYWx0ZXIuLi4gPDE1OjU5OjAzPgpbVHJ2ZXM6U2Fya29uXSBfYWJ3ZXJ0ZW4/IDwxNTo1OToyMz4KW1RydmVzOkFsY2luYSBtdXNzIGhhbHQgbm9jaCBzY2hyZWliZW4gdWViZW4gO28pIDwxNTo1OToyNz5dCltUcnZlczpSb2xhbmRdIGpvIGJyb3RuYWVscyBzY2hlcnogPDE1OjU5OjM1PgpbVHJ2ZXM6VGVrdHVrbyBraWNoZXJ0IDwxNTo1OTozNz5dCltUcnZlczpNdWFkZGliXSBfYWJ3ZXJ0ZW4/IDwxNTo1OTo0Mz4KW1RydmVzOkNyb2Z0XSBpc3QgbnVyIGJyb3RuYWVsIGRyYXVmIDwxNTo1OTo0OT4KW1RydmVzOk11YWRkaWJdIHdpZSBrYW5uIG1hbiBzb3dhcyB1ZWJlcmhhdXB0IGFubGVnZW4/IDopIHJlc3AuIHdpZXNvPwpbVHJ2ZXM6TXVhZGRpYl0gPDE1OjU5OjU5PgpbVHJ2ZXM6Q3JvZnRdIGhhdGUgemFlaGx0IG5pY2h0IDstKSA8MTY6MDA6MDE+CltUcnZlczpTYXJrb25dIF9hYndlcnRlbiBkb3duIDwxNjowMDowMz4KW1RydmVzOlNhcmtvbiBsYWNodC4gPDE2OjAwOjE1Pl0KW1RydmVzOlRla3R1a29dIF9hYndlcnRlbisgPDE2OjAwOjE1PgpbVHJ2ZXM6VGVrdHVrb10gbWhtaCA6KSA8MTY6MDA6MjU+CltUcnZlczpLZWxyaXNdIF9hYndlcnRlbj8gPDE2OjAwOjI5PgpbVHJ2ZXM6U2Fya29uXSBfYWJ3ZXJ0ZW4rIDwxNjowMDoyOT4KW1RydmVzOkNyb2Z0IGtpY2hlcnQgPDE2OjAwOjI5Pl0KW1RydmVzOlRla3R1a29dIGlyZ2VuZHdpZSBuZSBndXRlIGlkZWUgOikgPDE2OjAwOjQzPgpbVHJ2ZXM6U2Fya29uIHdhZWx6dCBzaWNoIGxhY2hlbmQgYXVmIGRlbSBCb2Rlbi4gPDE2OjAwOjQ1Pl0KW1RydmVzOk11YWRkaWJdIFxfYWJ3ZXJ0ZW4/IDwxNjowMDo0Nz4KW1RydmVzOk11YWRkaWJdIGhtcGYgPDE2OjAwOjUzPgpbVHJ2ZXM6U2Fya29uXSBfYWJ3ZXJ0ZW4rIDwxNjowMToxMT4KW1RydmVzOkNyb2Z0XSBlYmVuZW4gYmVudXR6ZW4gc2NoZWludCBnbHVlY2tzc2FjaGUgenUgc2VpbiA8MTY6MDE6MTc+CltUcnZlczpLZWxyaXNdIF9hYndlcnQ/IDwxNjowMToyMj4KW1RydmVzOlNhcmtvbl0gc29uZSByaWVzZW4gc2NoZWlzc2UgKndpZWhlciogPDE2OjAxOjI4PgpbVHJ2ZXM6S2VscmlzXSB3YXMgZGFzPyBkYXMgZ2VodCBuaWNodCA8MTY6MDE6MzA+CltUcnZlczpUZWt0dWtvIGdybXBmdCBDcm9mdCBhbiA8MTY6MDE6MzY+XQpbVHJ2ZXM6U2Fya29uIHNjaG1laXNzdCBzaWNoIHdlZy4gPDE2OjAxOjQwPl0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlaCBhdWYgQmVzdGVsbHVuZz8gKEJpZWxlZmVsZCwgMTcuIEZlYiAyMDAyLCAxODo0ODo0Mik6ClVuZ2VzY2huaXR0ZW46CgpbQWxsZ2VtZWluOlJvbmRhIGJla29tbXQgSHVuZ2VyIGF1ZiBSZWhicmF0ZW5dCkJhbWJpICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgotQmllbGVmZWxkICh3dWVuc2NodCBndXRlbiBBcHBldGl0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGEgYmVzdGltbXQgbmljaHQsIG9kZXI/IChEZWVwYmx1ZSwgMTcuIEZlYiAyMDAyLCAyMDo0NTo0MSk6ClVuZ2VrdWVyenQ6Ck11ZWNrZSBkZW5rdCAgIC4gbyBPICh3byBiZWtvbW0gaWNoIGpldHp0IGV0d2FzIHp1IGZ1dHRlcm4gaGVyPz8gOikpICAgICAgICAgIApNdWVja2UgaHVlcGYgYXVmIGRpZSBUb2lsZXR0ZSBkYXZvbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBlaW4gZ2VoYWV1bGUgKFJvbGFuZCwgMTkuIEZlYiAyMDAyLCAxNTo1ODoyMyk6CkR1IHRyaWZmc3QgZGllIEh5YWVuZSBzZWhyIGhhcnQuCkRpZSBIeWFlbmUgdmVyZmVobHQgRGljaC4KRGllIEh5YWVuZSB2ZXJmZWhsdCBEaWNoLgpEaWUgSHlhZW5lIHZlcmZlaGx0IERpY2guCkRpZSBIeWFlbmUgdmVyZmVobHQgRGljaC4KRGllIEh5YWVuZSB2ZXJmZWhsdCBEaWNoLgpEaWUgSHlhZW5lIHZlcmZlaGx0IERpY2guCkRpZSBIeWFlbmUgdmVyZmVobHQgRGljaC4KRGllIEh5YWVuZSB2ZXJmZWhsdCBEaWNoLgpEaWUgSHlhZW5lIHZlcmZlaGx0IERpY2guCkRpZSBIeWFlbmUgdmVyZmVobHQgRGljaC4KRGllIEh5YWVuZSB2ZXJmZWhsdCBEaWNoLgpEaWUgSHlhZW5lIHZlcmZlaGx0IERpY2guCkRpZSBIeWFlbmUgdmVyZmVobHQgRGljaC4KRGllIEh5YWVuZSB2ZXJmZWhsdCBEaWNoLgpEaWUgSHlhZW5lIHZlcmZlaGx0IERpY2guCkRpZSBIeWFlbmUgdmVyZmVobHQgRGljaC4KRGllIEh5YWVuZSB2ZXJmZWhsdCBEaWNoLgpEaWUgSHlhZW5lIHZlcmZlaGx0IERpY2guCkRpZSBIeWFlbmUgdmVyZmVobHQgRGljaC4KRGllIEh5YWVuZSB2ZXJmZWhsdCBEaWNoLgpEaWUgSHlhZW5lIHZlcmZlaGx0IERpY2guCkRpZSBIeWFlbmUgdmVyZmVobHQgRGljaC4KRHUga2l0emVsc3QgZGllIEh5YWVuZSBhbSBCYXVjaC4KCjopClJvbGFuZCB0dW4gZGllIE9ocmVuIHdlaC4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndlciBudW4gPyAoUm9sYW5kLCAxOS4gRmViIDIwMDIsIDE2OjU5OjE5KToKVG9kOkxhcnMgRGFzIENoYW9zIGhhdCBnZXNpZWd0ISBEYXMgdmVyd3VuZGVydCBtaWNoIGlyZ2VuZHdpZSBhYmVyIG5pY2h0LgpUb2Q6TGFycyBEZW5uIGRhcyBDaGFvcyBtb3JkZXQsIHRvZXRldCB1bmQgZGllcyBoZW1tdW5nc2xvcy4gVW5zLVV3ZSBpc3QgZWluClRvZDpMYXJzIHdhaHJlciBIZWxkLCBlaW4gQ2hhb3QsIHdpZSBlciBpbSBCdWNoZSBzdGVodC4gRGVubiBVbnMtVXdlICBoYXQKVG9kOkxhcnMgZ2VyYWRlIFp3aXJpb24gdW1nZWJyYWNodC4KTW9lcmRlcjpHZWlzdCAwIEhhbGxvPyBIYXQgamVtYW5kIG1laW5lbiBLb2VycGVyIGdlc2VoZW4/IE11ZXNzdGUKTW9lcmRlcjpHZWlzdCAwIGlyZ2VuZHdvIGJlaSBad2lyaW9uIGxpZWdlbiEKCmJlaXRlIHRvdCBkYXMgaXMgamEgbHVzdGlnIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgb2RlciBzby4uIChGb29iYXIsIDE5LiBGZWIgMjAwMiwgMTg6Mjg6MzkpOgpEZWluIEZyZXVuZCBPaGFtIHRlaWx0IERpciBtaXQ6IE1hbCBzY2hhdWVuIG9iIGljaCBkYXMgbnVuIHVlYmVybGViZS4uLgpEZWluIEZyZXVuZCBPaGFtIGlzdCBhYmVyIGtlaW4gRmVpZ2xpbmcsIGF1Y2ggbmljaHQgaW4gZGVyIEZlcm5lLCB1bmQgd2lyZCBudW4KdmVyc3VjaGVuCm9iIGVyIDMgbWFsIGR1cmNocyBXYXJvayBsYXVmZW4ga2FubiBhbnN0YXR0IDIgbWFsLi4uLgpEZWluIEZyZXVuZCBFbGJlcmV0IHRlaWx0IERpciBtaXQ6IG1hY2ggbWFsIDQgbWFsIDspCkRlaW4gRnJldW5kIE9oYW0gdGVpbHQgRGlyIG1pdDogSmFhYSBub2NoIDcgTFBzIDstKQpEZWluIEZyZXVuZCBFbGJlcmV0IHRlaWx0IERpciBtaXQ6IHVuZCBiZWkgNCBtYWw/IDspCkRlaW4gRnJldW5kIE9oYW0gdGVpbHQgRGlyIG1pdDogSGFoYQpEZWluIEZyZXVuZCBFbGJlcmV0IHRlaWx0IERpciBtaXQ6IDQgbWFsIGR1cmNocyB3YXJvayA7KQpEZWluIEZyZXVuZCBPaGFtIHRlaWx0IERpciBtaXQ6IERhbm4gd2FlciBpY2ggdG90LgpEZWluIEZyZXVuZCBFbGJlcmV0IHRlaWx0IERpciBtaXQ6IG9jaCBtZWluc3QgZHU/IDopCkRlaW4gRnJldW5kIE9oYW0gdGVpbHQgRGlyIG1pdDogS2FubiBqYSBuaWNodCBqZWRlciB2b2xsZW4gV2Fyb2tza2lsbCBoYWJlbi4uLgpEZWluIEZyZXVuZCBFbGJlcmV0IHRlaWx0IERpciBtaXQ6IGFiZXIgYmVpbSBzdGVyYmVuIGxlcm5zdCBkZW4gYmVzdGltbXQKRGVpbiBGcmV1bmQgRWxiZXJldCB0ZWlsdCBEaXIgbWl0OiBzY2huZWxsZXIgOykKRGVpbiBGcmV1bmQgT2hhbSB0ZWlsdCBEaXIgbWl0OiBXYWFhaCBkaWVzbWFsIG51ciA0IExwcyAuLi4gaXN0IGRhcyByYW5kb20/PyAgCltUb2Q6TGFyc10gVm9lbGxpZ2UgRXJzY2hvZXBmdW5nIGhhdCBnZXJhZGUgT2hhbSB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IHJlaXNlIChDcm9mdCwgMTkuIEZlYiAyMDAyLCAyMTo1Nzo1Mik6Cn4jISBybj1XYXJnb24gcnQ9MTAxNDE1MjAzMSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMTM0NjgzNjcKRnVlciAxMDAgRG9rdS1QdW5rdGUgZ2lidHMgZGFubiBlaW5lbiBNYWdpZXJsZXZlbCBvZGVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFsbGVzIG5ldSwgbWFjaHQgZGVyIEZlYnJ1YXIuLi5hZWgsIG9kZXIgc28gKE5penpsLCAxOS4gRmViIDIwMDIsIDIyOjQ1OjQ4KToKfiMhIHJuPU1vcmdvdGggcnQ9MTAxNDEwMzI5MSByZz1kLnZsYW5kCn4jISB0aWQ9MTAxNDEwMzI5MQpNYW4ga2FubiBzaWUgbnVuIHVtZHJlaGVuIHVuZCBzaWUgc2NodWV0emVuIHZvciBoZWlsaWdlbSBTY2hhZGVuPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbGxlcyBuZXUsIG1hY2h0IGRlciBGZWJydWFyLi4uYWVoLCBvZGVyIHNvIChNb3Jnb3RoLCAyMC4gRmViIDIwMDIsIDAwOjU3OjE2KToKfiMhIHJuPU5penpsIHJ0PTEwMTQxNTUxNDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0MTAzMjkxCkdlaWxlIGlkZWUgISEhIEJBTEFBQUFBQU5DRQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IER1cmNoc2Nobml0dHNnZXNjaHdpbmRpZ2tlaXQgKENyb2Z0LCAyMC4gRmViIDIwMDIsIDEzOjQxOjQ5KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDE0MjA4NzUxIHJnPXB1aXoKfiMhIHRpZD0xMDE0MjA4MzM0CkJyZW1tc3QgZGVyIGRhbm4gYXVjaCB2b24gNjAga20vaCBhdWYgMCBpbiAwc2VrIGFiPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRHVyY2hzY2huaXR0c2dlc2Nod2luZGlna2VpdCAoSHVtbmksIDIwLiBGZWIgMjAwMiwgMTM6NDI6MTkpOgp+IyEgcm49Q3JvZnQgcnQ9MTAxNDIwODkwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQyMDgzMzQKTmF0dWVybGljaCwgZGVyIGhhdCBlaW5lIHNvZ2Vhbm50ZSBNYXVlcmJyZW1zZS4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEdXJjaHNjaG5pdHRzZ2VzY2h3aW5kaWdrZWl0IChPcmt0b2V0ZXIsIDIwLiBGZWIgMjAwMiwgMTM6NDI6MjEpOgp+IyEgcm49Q3JvZnQgcnQ9MTAxNDIwODkwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQyMDgzMzQKS29tbXQgYXVmIGRpZSBzdGFiaWxpdGFldCBkZXIgTWF1ZXIgYW4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEdXJjaHNjaG5pdHRzZ2VzY2h3aW5kaWdrZWl0IChCb2luZywgMjAuIEZlYiAyMDAyLCAxMzo0MjoyMik6Cn4jISBybj1Dcm9mdCBydD0xMDE0MjA4OTA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDIwODMzNApKYSwgYWJlciBlciBzY2hhZmZ0IGRhbm4gZGVuIFJ1ZWNrd2VnIG5pY2h0IG1laHIgd2VnZW4gYWt1dGVyIFZlcmZvcm11bmcKZGVzIEZhaHJlcnMgLi4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IER1cmNoc2Nobml0dHNnZXNjaHdpbmRpZ2tlaXQgKEh1bW5pLCAyMC4gRmViIDIwMDIsIDEzOjQyOjM3KToKfiMhIHJuPUJvaW5nIHJ0PTEwMTQyMDg5NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0MjA4MzM0CjMgZG9vZmUsIGVpbiBHZWRhbmtlLiBJY2ggd2FyIGFiZXIgZXJzdGVyLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IER1cmNoc2Nobml0dHNnZXNjaHdpbmRpZ2tlaXQgKEJvaW5nLCAyMC4gRmViIDIwMDIsIDEzOjQyOjU1KToKfiMhIHJuPUh1bW5pIHJ0PTEwMTQyMDg5NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0MjA4MzM0CkljaCBoYWIgbmljaHQgdm9uIGVpbmVyIE1hdWVyIGdlcmVkZXQsIG51ciB2b24gZ3V0ZW4gQnJlbXNlbi4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRHVyY2hzY2huaXR0c2dlc2Nod2luZGlna2VpdCAoSHVtbmksIDIwLiBGZWIgMjAwMiwgMTM6NDM6MTMpOgp+IyEgcm49Qm9pbmcgcnQ9MTAxNDIwODk3NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQyMDgzMzQKSG1wZi4gTmEgZ3V0LiBXYXMgZ2lidHMgZnVlciBSZWggMTAwPwoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IER1cmNoc2Nobml0dHNnZXNjaHdpbmRpZ2tlaXQgKEdvciwgMjAuIEZlYiAyMDAyLCAxMzo0MzoxNSk6Cn4jISBybj1IdW1uaSBydD0xMDE0MjA4OTU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDIwODMzNApNYW4gc29sbCBuaWUgdm9uIHNpY2ggYXVmIGFuZGVyZSBzY2hsaWVzc2VuIEh1bW5pLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRHVyY2hzY2huaXR0c2dlc2Nod2luZGlna2VpdCAoR3JpbW1ib3JuLCAyMC4gRmViIDIwMDIsIDEzOjQzOjI1KToKfiMhIHJuPUNyb2Z0IHJ0PTEwMTQyMDg5MDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0MjA4MzM0Ck1pdGhpbGZlIGVpbmVyIEJldG9ubWF1ZXIgaXN0IGRhcyBrZWluZSBncm9lc3NlcmUgS3Vuc3QuIFdpZWRlcm1hbCBlaW4KQmVpc3BpZWwgZnVlciBlaW5lIFZlcmxldHp1bmcgZGVyIHQtSW52YXJpYW56Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IER1cmNoc2Nobml0dHNnZXNjaHdpbmRpZ2tlaXQgKE9ya3RvZXRlciwgMjAuIEZlYiAyMDAyLCAxMzo0MzozNyk6Cn4jISBybj1IdW1uaSBydD0xMDE0MjA4OTU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDIwODMzNApzdGltbXQgbmljaHQsIGljaCB3YXIgZGVyIEVyc3RlLCBoYWJlIG51ciB6dSBsYW5nc2FtIGdldGlwcHQhCgpncmluc2VuZCwgT3JrdG9ldGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRHVyY2hzY2huaXR0c2dlc2Nod2luZGlna2VpdCAoSHVtbmksIDIwLiBGZWIgMjAwMiwgMTM6NDQ6MTEpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMTQyMDkwMTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0MjA4MzM0ClRqYS4gS2FubiBuaWNodCBqZWRlciBNZWdhc2NobWFycm4tZ2VzdGFlaGx0ZW4gRmluZ2Vya3VwcGVuIGhhYmVuLi4uLgoKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHb2V0dGlubmVuIHNpbmQgYXVjaCBuaWNodCBtZWhyIGRhcy4uLi4gKFN3b3RsLCAyMS4gRmViIDIwMDIsIDExOjM0OjEwKToKLi4ud2FzIHNpZSBtYWwgd2FyZW46CgpIVUNILCBmYXN0IHdhZXJzdCBEdSBhdWYgU2FwaGluYSBnZXRyZXRlbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKClNlbHRzYW0uLi4KClN3b3RsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGphIChUaGFub3MsIDIyLiBGZWIgMjAwMiwgMTA6NTM6NDApOgoKRHUgZmluZGVzdCA0NTM0MyBNdWVuemVuLCBkaWUgRHUgYmVpbSBsZXR6dGVuIE1hbCB2ZXJsb3JlbiBoYXN0LgpXZWlsIER1IG5pY2h0IG1laHIgc292aWVsIHRyYWdlbiBrYW5uc3QsIHNwZW5kZXN0IER1IGRlbiBSZXN0IGRlciBaZW50cmFsYmFuay4KCnByaW1hIDopClpvb2ssIGR1IHNjaHVsZGVzdCBtaXIgR2VsZC4KClRoYW5vcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFoamEgKFpvb2ssIDIyLiBGZWIgMjAwMiwgMTE6MTI6MTMpOgp+IyEgcm49VGhhbm9zIHJ0PTEwMTQzNzE2MjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0MzcxNjIwCkljaD8gV2llc28gaWNoPyBEdSBoYXN0IGVzIGRvY2ggZGVyIFplbnRyYWxiYW5rIGdlc3BlbmRldC4gRGVyZW4gClVuYWJoYWVuZ2lna2VpdCBtb2VjaHRlIGljaCBuaWNodCBlaW5zY2hyYWVua2VuLiA6LSkKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGFoamEgKEFudGhlYSwgMjIuIEZlYiAyMDAyLCAxMzozMzo0MSk6Cn4jISBybj1ab29rIHJ0PTEwMTQzNzI3MzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0MzcxNjIwCldhcnVtIHNjaHJlaWJ0IGVpZ2VudGxpY2ggQm9pbmcgMSBNaW51dGUgYmV2b3IgaWNoIE1lZ2FTY2htYXJybiBkdXJjaGhhYmUgZGFzCmxldHp0ZSBkb3J0IG1vZWdsaWNoZSBQb3N0aW5nPyBEYXMgaXN0IGlyZ2Vud2llIHVuZmFpciA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogYWhqYSAoR3JpbW1ib3JuLCAyMi4gRmViIDIwMDIsIDEzOjQyOjM5KToKfiMhIHJuPUFudGhlYSBydD0xMDE0MzgxMjIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDM3MTYyMApXZW5ucyBuaWNodCBzbyBhYmdlZHJvc2NoZW4gd2FlcmUgd3VlcmRlIGljaCBqYSBzYWdlbiAiZGFzIGlzdCBoYWx0IE11cnBoeSIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGFoamEgKEFudGhlYSwgMjIuIEZlYiAyMDAyLCAxMzo0NDoxMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxNDM4MTc1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQzNzE2MjAKTmVlLCBNdXJwaHkgd2FlcmUsIHdlbm4gaWNoIGRlbiBBcnRpa2VsIGdlc2NocmllYmVuIGhhZXR0ZSwgdW5kIHp3aXNjaGVuICoqCnVudCBNdWQtUmVha3Rpb24gZGVyIEVpbnRyYWcgdm9uIEJvaW5nIGdla29tbWVuIHdhZXJlIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGphLi4uIChHcnVtcGYsIDIyLiBGZWIgMjAwMiwgMTQ6Mjk6NDMpOgpEZWluIEJsaXR6IHZlcmJyZW5udCBkZXMgU2tlbGV0dHMgSGF1dCBydXNzaWcgc2Nod2Fyei4gCgpHcnVtcGYgZ3J1bXBmdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBaGphLi4uIChPcmt0b2V0ZXIsIDIyLiBGZWIgMjAwMiwgMTQ6MzI6NTgpOgp+IyEgcm49R3J1bXBmIHJ0PTEwMTQzODQ1ODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0Mzg0NTgzCkRhcyBtdXNzIGRpZSBLbm9jaGVuaGF1dCBzZWluLCBkaWUgZGEgZ2VtZWludCBpc3QuLi4gCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBaGphLi4uIChHbG9pbnNvbiwgMjIuIEZlYiAyMDAyLCAxNDo0Njo0Nyk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAxNDM4NDc3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQzODQ1ODMKYXVhLCBkaWUgaXN0IGF1Y2ggZ2FueiBzY2hvZW4gZW1wZmluZGxpY2guIERhcyBtdXNzIG9yZGVudGxpY2ggU2NoYWRlbiBnZW1hY2h0CmhhYmVuLiBTb2ZvcnQgR3J1bXBmIGFid2VyZmVuLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQWhqYS4uLiAoWm9vaywgMjIuIEZlYiAyMDAyLCAxNTowMDozMCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDE0Mzg1NjA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDM4NDU4MwphYndlcmZlbiBvZGVyIGFid2VydGVuPwoKem9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFoamEuLi4gKEFudGhlYSwgMjIuIEZlYiAyMDAyLCAxNToxNToxMyk6Cn4jISBybj1ab29rIHJ0PTEwMTQzODY0MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0Mzg0NTgzCkJlaWRlcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyMjQyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChCb2luZywgMjIuIEZlYiAyMDAyLCAxNTo1NToyMCk6Cn4jISBvbj1BbnRoZWEgb3Q9MTAxNDM4ODMyMiBvZz13b2xwZXJ0aW5nZXIuZmFuY2x1Ygp+IyEgcm49Qm9pbmcgcnQ9MTAxNDM4MDg5NCByZz1tZWdhc2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRXMgaXN0IGltbWVyIHNvIHN0aWxsLCB3ZW5uIE1lZ2EqIG1hbCB3aWVkZXIgdm9sbCBpc3QuIERhcyBpc3Qgc29uc3QgaW1tZXIgc28KZWluZSBuZXR0ZSBBYmxlbmt1bmcgd2FlaHJlbmQgZGVyIEFyYmVpdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVzd2FuZGVybiBnaWJ0cyBuaWNodCAoQm9pbmcsIDIyLiBGZWIgMjAwMiwgMTU6NTU6MjEpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwMTQzODg2NjQgb2c9d29scGVydGluZ2VyLmZhbmNsdWIKfiMhIHJuPUFudGhlYSBydD0xMDE0Mzg4MzIyIHJnPXdvbHBlcnRpbmdlci5mYW5jbHViCn4jISB0aWQ9OTgyMzI4Mjc4CkF1Y2ggd2VubiBkZXIgdGhyZWFkIGhpZXIgZ2VuZXJlbGwgcmljaHRpZyBhdWZnZWhvYmVuIHdhZXJlLCBlY2h0ZQpNZWdhc2NobWFycm5yZWhlIGdpYnRzIG51ciBpbiBlaW5lciBSdWJyaWsuIEluaGFsdGxpY2gga2FubiAodW5kIHR1dCkgZGFzCm5hdHVlcmxpY2ggcHJha3Rpc2NoIHVlYmVyYWxsaGluIGF1c3dhbmRlcm4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdXN3YW5kZXJuIGdpYnRzIG5pY2h0IChCb2luZywgMjIuIEZlYiAyMDAyLCAxNTo1NToyMik6Cn4jISBvbj1BbnRoZWEgb3Q9MTAxNDM4OTM5OCBvZz13b2xwZXJ0aW5nZXIuZmFuY2x1Ygp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTQzODg2NjQgcmc9d29scGVydGluZ2VyLmZhbmNsdWIKfiMhIHRpZD05ODIzMjgyNzgKQWJlciBkYXMgd2FlcmUgamEgbmljaHQgZGllIGVyc3RlIEF1c3dhbmRlcnVuZy4gRGVyIFdvbHBpZS1DbHViIGlzdCBqYSBzY2hvbgptYWwgbWlzc2JyYXVjaHQgd29yZGVuLiBBYmVyIGRhcyAiUnVlY2tmdWVocmVuIiB3YXIgZGFubiBldHdhcyBrb21wbGl6aWVydCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjIyNDI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJvaW5nLCAyMi4gRmViIDIwMDIsIDE1OjU1OjIzKToKfiMhIG9uPU5pYmVsIG90PTEwMTQzODk0NzYgb2c9d29scGVydGluZ2VyLmZhbmNsdWIKfiMhIHJuPUJvaW5nIHJ0PTEwMTQzODA4OTQgcmc9bWVnYXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck5hIHdlbm4gZGFubiBtaXQgZGVtIHJpY2h0aWdlbiBSZWguCiAgLSBOaWJlbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjIyNDM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJvaW5nLCAyMi4gRmViIDIwMDIsIDE1OjU1OjI0KToKfiMhIG9uPUFudGhlYSBvdD0xMDE0Mzg5NTY0IG9nPXdvbHBlcnRpbmdlci5mYW5jbHViCn4jISBybj1OaWJlbCBydD0xMDE0Mzg5NDc2IHJnPXdvbHBlcnRpbmdlci5mYW5jbHViCn4jISB0aWQ9OTgyMzI4Mjc4CkRhbm4gc2NoYXUgZG9jaCBhdWYgbWVpbmVuIEFydGlrZWwsIGRhbm4gc2llaHN0IER1LCBkYXNzIGRhcyBlaW4gZWNodGVzIEJhbWJpCndhci4gRHUgaGFzdCBqZXR6dCBhbHNvIGVpbiBmZWhscGxhemllcnRlcyBCYW1iaSB2ZXJicmF0ZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5laW4sIChHcmltbWJvcm4sIDIyLiBGZWIgMjAwMiwgMTY6MDA6NDgpOgp+IyEgcm49Qm9pbmcgcnQ9MTAxNDM4OTcyNCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAprZWluZSBNZWdhc2NobWFycm5yZWhlIGluIGFuZGVyZW4gUnVicmlrZW4uIFphZWhsdCBuaWNodC4gUGZ1aSBiYWguIFJlcGxpZXMKc2luZCBqYSBvayAoc28gd2llIGRpZXNlcyBoZXIpLCBhYmVyIGRhbm4gaGFsdCBtaXQgYW5kZXJlbSBUaXRlbC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKIFJlXjIyMjQ0IElzdCBqYSBvZWRlIChBbnRoZWEsIDIyLiBGZWIgMjAwMiwgMTY6Mjk6MDcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTQzOTAwNDggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGFubiBtdXNzIG1hbiBzaWNoIGphIHN0YWVuZGlnIG5ldWUgVGl0ZWwgYXVzZGVua2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVjaCBvaG5lIG5ldWVuIFRpdGVsIChHcmltbWJvcm4sIDIyLiBGZWIgMjAwMiwgMTY6Mzc6MDEpOgp+IyEgcm49QW50aGVhIHJ0PTEwMTQzOTE3NDcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKa2FubiBtYW4gZGFubiBlaW5mYWNoIGF1ZiBkZW4gbGV0enRlbiwgZGVyIHNvIGtyZWF0aXYgd2FyIHNpY2ggZWluZW4KYXVzenVkZW5rZW4sIGFudHdvcnRlbi4gR2VodCBnYW56IGVpbmZhY2guCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFiZXIgd2FzIGlzdCBiZXNzZXIgYWxzIGRhcyBIdWNoPyAoQW50aGVhLCAyMi4gRmViIDIwMDIsIDE2OjM5OjQ3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDE0MzkyMjIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkRhcyAiSHVjaCIgaXN0IGhhbHQgbnVuIG1hbCBkYXMgdWx0aW1hdGl2ZSBTY2htYXJybi1UaGVtYS4gQXVzc2VyZGVtIGxhZXVmdApiZWkgbWlyIGdlcmFkZSBkaWUgS3JlYXRpdml0YWV0IGF1cywgbmFjaGRlbSBpY2ggZXJmYWhyZW4gaGFiZSwgZGFzcyBpY2gKbW9yZ2VuIGFyYmVpdGVuICJkYXJmIi4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBYmVyIHdhcyBpc3QgYmVzc2VyIGFscyBkYXMgSHVjaD8gKEdyaW1tYm9ybiwgMjIuIEZlYiAyMDAyLCAxNjo0OToyNyk6Cn4jISBybj1BbnRoZWEgcnQ9MTAxNDM5MjM4NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOYWphLCBzY2hhdSBkb2NoIG1hbCBhdXMgZGVtIEZlbnN0ZXIuIFdhcyBoYXR0ZXN0IER1IGRlbm4gc29uc3Qgdm9yPwpTb25uZW5iYWRlbj8gRGEgaXN0IGRvY2ggYXJiZWl0ZW4gZGllIHJlaW5zdGUgRXJob2x1bmcuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyMjQ0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjIuIEZlYiAyMDAyLCAxNzoyNjo1OSk6Cn4jISBybj1Cb2luZyBydD0xMDE0Mzg5NzI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkljaCBtb2VjaHRlIEdkQSB3aWRlcnNwcmVjaGVuLgpEZXIgVGhyZWFkIGhhdCBpbiBkaWVzZXIgUnVicmlrIHNlaW5lbiBVcnNwcnVuZyBnZWhhYnQsIHVuZCBpc3QgZXJzdAppcmdlbmR3YW5uIHNwYWV0ZXIgaW4gZGllIG5ldSBnZXNjaGFmZmVuZSBSdWJyaWsgYXVzZ2V3aWNoZW4uIFdlaWwgZGllIExldXRlCmFsbGUgZ2VqYW1tZXJ0IGhhYmVuLgpVbmQgQmFtYmlzIGJyYXRlbiBoYWx0ZSBpY2ggZWggZnVlciBuZSBndXRlIElkZWUuCkJvaW5nIHNvbGwgc2ljaCBqYSBuaWNodCBsYW5nd2VpbGVuIGF1ZiBkZXIgQXJiZWl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVG9wbGlzdGUgKEdyaW1tYm9ybiwgMjIuIEZlYiAyMDAyLCAxODowNjoxNik6Cn4jISBybj1Nb250YW51cyBydD0xMDE0Mzk1MjE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck5hIHNjaG9lbiwgZWluIHdlaXRlcmVzIEFyZ3VtZW50OiBEaWUgU2FjaGVuIGhpZXJoaW4genUgc2NocmVpYmVuIG1hY2h0IGRpZQpUb3BsaXN0ZSBrYXB1dHQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUb3BsaXN0ZSAoSHVtbmksIDIyLiBGZWIgMjAwMiwgMTg6MDc6MTkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTQzOTc1NzYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGFzIGlzdCBlaW4gQXJndW1lbnQuIEFsc28gc29sbHRlbiB3aXIgaGllciBuaWNodCBtZWhyIHBvc3Rlbi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRvcGxpc3RlIChHcmltbWJvcm4sIDIyLiBGZWIgMjAwMiwgMTg6MTA6NTkpOgp+IyEgcm49SHVtbmkgcnQ9MTAxNDM5NzYzOSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApadW1pbmRlc3QgbmljaHQgbWl0IGRlbSBvZmZpemllbGxlbiB0aHJlYWQuIFVtIGRhbm4gaGludGVyaGVyIHp1IHdlaW5lbiBkYXNzCm5hY2ggZGVtIGV4cGlyZSBkb2NoIHdpZWRlciBkb3J0IHdlaXRlcmdlbWFjaHQgd2lyZCB3byBkaWUgTWVuZ2VuYmVncmVuenVuZwp6dWdlc2NobGFnZW4gaGF0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUb3BsaXN0ZSAoTW9udGFudXMsIDIyLiBGZWIgMjAwMiwgMTg6MTU6MTcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTQzOTc4NTkgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKYWNoIHF1YXRzY2ggd2VpbmVuLiBEdSB3aWxsc3QgbnVyIGRlbiBUSHJlYWQgIlRvcGxpc3RlIiBtb2VnbGljaHN0IHNjaG5lbGwgYXVmCjEwMCBwdXNoZW4uIFBmdWkhCklzdCBlaWdlbnRsaWNoIGF1ZmdlZmFsbGVuLCBkYXNzIGRpZSBnYW56ZW4gQXJ0aWtlbCBudXIgZGVzd2VnZW4gc28gImJvZXNlIgpzaW5kLCB3ZWlsIHNpZSBkZW4gTWVnYXNjaG1hcnJuLVRpdGVsIGhhYmVuIHVuZCBpbiBkZXIgcmljaHRpZ2VuIFJ1YnJpawpzdGVoZW4/IEluaGFsdGxpY2ggc2luZCBzaWUgamEgZWhlciBiZXNzZXIgYWxzIGRlciBSZXN0IGluIGRlbiBkaXZlcnNlbgpSdWJyaWtlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0ZGlnZXN0IChGb29iYXIsIDIyLiBGZWIgMjAwMiwgMjE6MzE6MzApOgpGcm9tOiBrcmlzQGtvZWhudG9wcC5kZSAoS3Jpc3RpYW4gS29laG50b3BwKQpOZXdzZ3JvdXBzOiBkZS5hbHQuc3lzYWRtaW4ucmVjb3ZlcnkKU3ViamVjdDogUmU6IEFuZWtkb3RlbiB6dW0gRGVidWdnaW5nIGdlc3VjaHQKRGF0ZTogMTkgRmViIDIwMDIgMTM6MzM6MDggKzAxMDAKCnV3ZUBvaHNlLmRlIChVd2UgT2hzZSkgd3JpdGVzOgo+VW5kIGRhcyBsaWVndCB6dSBlaW5lbSBncm9zc2VuIFRlaWwgZGFyYW4gZGFzcyBQSFAgSWRpb3RlbiBhbnppZWh0IHdpZQo+dG90ZXMgRmxlaXNjaCBkaWUgR2VpZXIKCj4qIG1pdCB2aXN1YWwgYmFzaWMga2VpbmVuIHNjaGxpbW1lcmVuIERyZWNrIGVyemV1Z3QsCgpQSFAgX2lzdF8gZGFzIFZCIGRlcyBXZWIgdW5kIGZ1ZXIgZWluZSBnYW56ZSBNZW5nZSBMZXV0ZSBtaXQKR2VidXJ0c2RhdGVuLCBkaWUgdW5zZXJlaW5zIGRpZSBGdXNzbmFlZ2VsIGtyYWV1c2VsbiBpc3QsIGVzIGRpZQplcnN0ZSBlcmxlcm50ZSBQcm9ncmFtbWllcnNwcmFjaGUgdWViZXJoYXVwdC4gRGVyIFVudGVyc2NoaWVkCmlzdCBudXIsIGRhc3MgbWVpbmUgQzY0LUJhc2ljLVVlYnVuZ2VuIG5pZW1hbHMgamVtYW5kIHp1IEdlc2ljaHQKYmVrb21tZW4gaGF0LCB3YWVocmVuZCBkZXJlbiBMYXVmc3RhbGwtVmVydW5mYWxsdW5nZW4gaW0gV2ViCndlbHR3ZWl0IHJ1bXBlc3RlbiB1bmQgd29tb2VnbGljaCB2b24gU2NobGlwc3RyYWVnZXItRGVwcGVuIGFscwplLUNvbW1lcmNlLUxvZXN1bmcgZ2VrYXVmdCB3b3JkZW4gc2luZC4KCktyaXN0aWFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OTogVG9wbGlzdGUgKE11cGZlbCwgMjIuIEZlYiAyMDAyLCAyMjo1Njo0NCk6Cnd1ZXJkIGVyIGRvY2ggbmllIG1hY2hlbiA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwMDogVG9wbGlzdGUgKFZhcmxhcmlvbiwgMjIuIEZlYiAyMDAyLCAyMjo1NzozMSk6Cn4jISBybj1NdXBmZWwgcnQ9MTAxNDQxNTAwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQ0MTUwMDQKVHNzLCB0c3NzLCB3ZXIgc2NodW1tZWx0IGRlbm4gZGE/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3RhdGkgaW4gRnJhbmtmdXJ0IGFuIGRlciBVbmkgb2RlciBhbiBkZXIgT2Rlcj8gKEdyaW1tYm9ybiwgMjMuIEZlYiAyMDAyLCAxMjozNDo1OSk6Cn4jISBybj1DaXNvdSBydD0xMDE0NDU2MzYwIHJnPXRyZWZmZW4KfiMhIHRpZD0xMDE0NDU2MzYwCkRhcyBoYWIgaWNoIGpldHp0IG5pY2h0IHdpcmtsaWNoIHZlcnN0YW5kZW4uIFNpY2hlciBtb2VjaHRlIHdvaGwgamVkZXIgbWFsIGluCmVpbmUgR3Jvc3NzdGFkdCwgYWJlciB3ZWRlciBLb2VsbiBub2NoIEJlcmxpbiBsaWVnZW4gYW0gTWFpbj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdGF0aSBpbiBGcmFua2Z1cnQgYW4gZGVyIFVuaSBvZGVyIGFuIGRlciBPZGVyPyAoRWxiZXJldCwgMjMuIEZlYiAyMDAyLCAxMjozNTo0Myk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxNDQ2NDA5OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQ0NTYzNjAKa29lbG4gaXMgZG9jaCBwcm92aW56IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdGF0aSBpbiBGcmFua2Z1cnQgYW4gZGVyIFVuaSBvZGVyIGFuIGRlciBPZGVyPyAoR3JpbW1ib3JuLCAyMy4gRmViIDIwMDIsIDEyOjM2OjQ1KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAxNDQ2NDE0MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQ0NTYzNjAKTmVpbiwgd2FzIER1IG1laW5zdCBpc3Qgc2ljaGVyIER1ZXNzZWxkb3JmLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3RhdGkgaW4gRnJhbmtmdXJ0IGFuIGRlciBVbmkgb2RlciBhbiBkZXIgT2Rlcj8gKEVsYmVyZXQsIDIzLiBGZWIgMjAwMiwgMTI6Mzg6NTIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTQ0NjQyMDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0NDU2MzYwCm5laW4sIGljaCBtZWluZSBjb2xvbmlhIGNsYXVkaWEgYXJhIGFncmlwcGluZW5zaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFN0YXRpIGluIEZyYW5rZnVydCBhbiBkZXIgVW5pIG9kZXIgYW4gZGVyIE9kZXI/IChQaXRmYWxsLCAyMy4gRmViIDIwMDIsIDEyOjM5OjQyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDE0NDY0MjA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDQ1NjM2MAp3YXMgaXN0IGRlbm4gaW4gZGVyIG5hZWhlIHZvbiBrb2VsbiBmdWVyIG5lIHN0YWR0PyBvZGVyIG1laW5zdCBkdSBjb2VsbG4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTdGF0aSBpbiBGcmFua2Z1cnQgYW4gZGVyIFVuaSBvZGVyIGFuIGRlciBPZGVyPyAoR3JpbW1ib3JuLCAyMy4gRmViIDIwMDIsIDEyOjU2OjI1KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAxNDQ2NDM4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQ0NTYzNjAKRXVyZSBQcm92b2thdGlvbnN2ZXJzdWNoZSBzaW5kIGphIG5pZWRsaWNoLCBhYmVyIHRhdHNhZWNobGljaCBnaWJ0cyBpbgpEZXV0c2NobGFuZCBudXIgendlaSBTdGFlZHRlLCBtb2VnbGljaGVyd2Vpc2UgZHJlaSAoaWNoIGtlbm5lIEhhbWJ1cmcgbmljaHQgc28KZ3V0KS4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFN0YXRpIGluIEZyYW5rZnVydCBhbiBkZXIgVW5pIG9kZXIgYW4gZGVyIE9kZXI/IChFbGJlcmV0LCAyMy4gRmViIDIwMDIsIDEyOjU3OjAzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDE0NDY1Mzg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDQ1NjM2MApvaywgQWFjaGVuIHVuZCB3ZWxjaGUgc3RhZHQgbm9jaD8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFN0YXRpIGluIEZyYW5rZnVydCBhbiBkZXIgVW5pIG9kZXIgYW4gZGVyIE9kZXI/IChHcmltbWJvcm4sIDIzLiBGZWIgMjAwMiwgMTM6MDI6MTApOgp+IyEgcm49RWxiZXJldCBydD0xMDE0NDY1NDIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDQ1NjM2MApJY2gga2VubmUgQWFjaGVuLiBOZXR0ZXMgU3RhZWR0Y2hlbiwgZ2FueiByZWl6ZW5kLCB3aXJrbGljaC4gQWJlciBfd2lya2xpY2hlXwpTdGFlZHRlIHNpbmQgQmVybGluIHVuZCBLb2Vsbi4gRGFzIFJ1aHJnZWJpZXQsIHdlbm4gZXMgZGVubiBtYWwKenVzYW1tZW5nZXdhY2hzZW4gaXN0LCBpc3QgZGFubiB1ZWJyaWdlbnMgZWluIE1vbG9jaCwga2VpbmUgR3Jvc3NzdGFkdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU3RhdGkgaW4gRnJhbmtmdXJ0IGFuIGRlciBVbmkgb2RlciBhbiBkZXIgT2Rlcj8gKEVsYmVyZXQsIDIzLiBGZWIgMjAwMiwgMTM6MDI6NDIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTQ0NjU3MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0NDU2MzYwCndpZXNvIHNvbGx0ZSBnZXJhZGUgS29lbG4gZWluZSB3aXJrbGljaGUgU3RhZHQgc2Vpbj8gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTdGF0aSBpbiBGcmFua2Z1cnQgYW4gZGVyIFVuaSBvZGVyIGFuIGRlciBPZGVyPyAoR3JpbW1ib3JuLCAyMy4gRmViIDIwMDIsIDEzOjE2OjU3KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAxNDQ2NTc2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQ0NTYzNjAKR3Jvc3MsIHdlbHRvZmZlbiwgdmllbGZhZWx0aWcsIGJlZGV1dGVuZCwgbGViZW5kaWcuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTdGF0aSBpbiBGcmFua2Z1cnQgYW4gZGVyIFVuaSBvZGVyIGFuIGRlciBPZGVyPyAoRWxiZXJldCwgMjMuIEZlYiAyMDAyLCAxMzoxNzoxOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxNDQ2NjYxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQ0NTYzNjAKYWJlciBkZXIgRG9tIGlzdCBuaWNodCBlY2h0LCBzb25kZXJuIG51ciB2b24gZGVuIFByZXVzc2VuIHZvbGxlbmRldCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU3RhdGkgaW4gRnJhbmtmdXJ0IGFuIGRlciBVbmkgb2RlciBhbiBkZXIgT2Rlcj8gKE11cGZlbCwgMjMuIEZlYiAyMDAyLCAxMzoxODoyMyk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMTQ0NjU3NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0NDU2MzYwCkluIERldXRzY2hsYW5kIGdpYnRzIGRvY2ggbnVyIGVpbmUgcmljaHRpZ2UgU3RhZHQuIEZyYW5rZnVydCBhbSBNYWluLiBBbGxlcwphbmRlcmUgbWVociBvZGVyIHdlbmlnZXIgZ3Jvc3NlIEFuc2FtbWx1bmdlbiB2b24gSGFldXNlcm4uIFNvcnJ5LCBHcmltbWJvcm4sCmFiZXIgS29lbG4gaXN0IHdpcmtsaWNoIFByb3ZpbnogOykgCgotbXVwZmVsLSAoc2FndCBtYWwgdm9yc2ljaHRzaGFsYmVyIG5peCB6dSBELURvcmYgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTdGF0aSBpbiBGcmFua2Z1cnQgYW4gZGVyIFVuaSBvZGVyIGFuIGRlciBPZGVyPyAoRWxiZXJldCwgMjMuIEZlYiAyMDAyLCAxMzoxOToxOSk6Cn4jISBybj1NdXBmZWwgcnQ9MTAxNDQ2NjcwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQ0NTYzNjAKam8sIHZvciBhbGxlbSBkYXMgYmVkZXV0ZW5kIHd1ZXJkIGljaCBhbnp3ZWlmZWxuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU3RhdGkgaW4gRnJhbmtmdXJ0IGFuIGRlciBVbmkgb2RlciBhbiBkZXIgT2Rlcj8gKFZhcmxhcmlvbiwgMjMuIEZlYiAyMDAyLCAxMzoxOToyMCk6Cn4jISBybj1NdXBmZWwgcnQ9MTAxNDQ2NjcwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQ0NTYzNjAKU3RpbW10LCBkYSBrb2VubnRlIHNpY2ggamEgd2VyIGJlbGVpZGlndCBmdWVobGVuLi4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogU3RhdGkgaW4gRnJhbmtmdXJ0IGFuIGRlciBVbmkgb2RlciBhbiBkZXIgT2Rlcj8gKFZhcmxhcmlvbiwgMjMuIEZlYiAyMDAyLCAxMzoyMDo0Myk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMTQ0NjY3NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0NDU2MzYwCkphamEuLi4gS29lbG5lciB1bmQgRHVlc3NlbGRvcmZlci4uLiBCZWlkZSB2ZXJrYXVmZW4gUGZlcmRlcGlzc2UgYWxzIEJpZXIgdW5kCmRhbm4gc3RyZWl0ZW4gc2llIHNpY2ggYXVjaCBub2NoLCB3ZWxjaGVzIGRhcyBiZXNzZXJlIGRhdm9uIGlzdC4uLgoKVmFybCosIGdsdWVja2xpY2hlcndlaXNlIF9rZWluXyBCaWVydHJpbmtlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFN0YXRpIGluIEZyYW5rZnVydCBhbiBkZXIgVW5pIG9kZXIgYW4gZGVyIE9kZXI/IChHcmltbWJvcm4sIDIzLiBGZWIgMjAwMiwgMTM6MjU6MjgpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMTQ0NjY4NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0NDU2MzYwCkhtbSwgRnJhbmtmdXJ0IGlzdCBlaWdlbnRsaWNoIHNjaG9uIHppZW1saWNoIHRvdCwgZGFzIGlzdCBmdWVyIG1pY2gga2VpbmUKU3RhZHQsIGRhcyBpc3QgZWluIEFyYmVpdHNvcnQuIE5ldHRlIEhvY2hoYWV1c2VyIGhhYmVuIGRpZSBkYSwgYWJlciBEdSBzb2xsc3QKbmljaHQgaW1tZXIgc28gaW4gUGhhbGx1c3N5bWJvbGVuIGRlbmtlbiwgTXVwZmVsLiBEYXNzIGRpZSBQcmV1c3NlbiBkaWUKVm9sbGVuZHVuZyBkZXMgRG9tZXMgdmVyYW5sYXNzdCBoYWJlbiBpc3QgZG9jaCBuaWNodHMgc2NobGVjaHRlcywgYXVjaCBkaWVzZQpPZmZlbmhlaXQgZ2VnZW51ZWJlciBGcmVtZGVtICh3ZW5ucyBuaWNodCBhdXMgRHVlc3NlbGRvcmYga29tbXQsIG5hdHVlcmxpY2gpCnplaWNobmV0IEtvZWxuIGF1cy4gVW5kIHdhcyBkYXMgQmllciBhbmdlaHQgaXN0IG1pciBkZXIgZmxhbWViYWl0IG51biB3aXJrbGljaAp6dSBwcmltaXRpdi4gSWNoIGJpbiBqYSBnZW5lcmVsbCBmcm9oIHVtIGplZGVuIGRlcnMgbmljaHQgdHJpbmt0LCBkYW5uIGJsZWlidAp0aGVvcmV0aXNjaCBqYSBtZWhyIGZ1ZXIgbWljaCB1ZWJyaWcuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBTdGF0aSBpbiBGcmFua2Z1cnQgYW4gZGVyIFVuaSBvZGVyIGFuIGRlciBPZGVyPyAoRWxiZXJldCwgMjMuIEZlYiAyMDAyLCAxMzoyNjo0Nik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxNDQ2NzEyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQ0NTYzNjAKYWJlciBiZWRldXRlbmQgaXN0IEtvZWxuIGRlc3dlZ2VuIGxhbmdlIG5vY2ggbmNpaHQuIEVzIGlzdCBsYW5nd2VpbGlnCnByb3ZpbnppZWxsIHVuZCBnYW56IG5ldHQsIGFiZXIgbmljaHQgYmVkZXV0ZW5kLgpXZW4gaW50ZXJlc3NpZXJ0IEtvZWxuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFN0YXRpIGluIEZyYW5rZnVydCBhbiBkZXIgVW5pIG9kZXIgYW4gZGVyIE9kZXI/IChHcmltbWJvcm4sIDIzLiBGZWIgMjAwMiwgMTM6Mzg6MjYpOgp+IyEgcm49RWxiZXJldCBydD0xMDE0NDY3MjA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDQ1NjM2MApEaWUgVW5lc2NvIChtaXQgaWhyZXIgV2VsdGt1bHR1cmVyYmVuc2xpc3RlKSwgZGllIERpZUJhaG4gKFZlcmtlaHJza3JldXogaW0KV2VzdGVuKSwgc29uIGJpc2NoZW4gSW5kdXN0cmllIGdpYnRzIGF1Y2guIEt1bHR1cmVsbCwgdm9yIGFsbGVtIGluIGRlciBNdXNpaywKc2VociB2aWVsc2NoaWNodGlnLiBBdXNzZXJkZW0gaXN0IEtvZWxuIGRpZSBIYXVwdHN0YWR0IGRlcyBLbHVlbmdlbHMuCkFiZXIgZGVyIEZ1c3NiYWxsdmVyZWluIGlzdCBiZXN0ZW5mYWxscyB1bmQgbWl0IEdsdWVjayB6d2VpdGtsYXNzaWcuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBTdGF0aSBpbiBGcmFua2Z1cnQgYW4gZGVyIFVuaSBvZGVyIGFuIGRlciBPZGVyPyAoRWxiZXJldCwgMjMuIEZlYiAyMDAyLCAxMzozOTo0Nik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxNDQ2NzkwNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQ0NTYzNjAKTXVzaWsgaXN0IGluIEtvZWxuIG5pY2h0IHNvIHNjaGxlY2h0LCBkYXMgc3RpbW10IHNjaG9uLCBhYmVyIHdlbm4gZHUgZGEgbWFsIG5lCmVjaHRlIFN0YWR0IHNlaGVuIHdpbGxzdCwgZGFubiBnZWggbWFsIG5hY2ggQ2hpY2Fnby4gRGFnZWdlbiBpc3QgS29lbG4gYXVjaCBpbgpkZXIgTXVzaWsgYWxsZW5mYWxscyAzLmtsYXNzaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogU3RhdGkgaW4gRnJhbmtmdXJ0IGFuIGRlciBVbmkgb2RlciBhbiBkZXIgT2Rlcj8gKEdyaW1tYm9ybiwgMjMuIEZlYiAyMDAyLCAxMzo0MDozMik6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMTQ0Njc5ODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0NDU2MzYwCkRhc3MgQ2hpY2FnbyBpbiBEZXV0c2NobGFuZCBsaWVnZW4gd3VlcmRlIHdhZXJlIG1pciBuZXUsIGFiZXIgaWNoIGhhYiBFcmRrdW5kZQphdWNoIHNjaG9uIGluIGRlciAxMSBhYmdld2FlaGx0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogU3RhdGkgaW4gRnJhbmtmdXJ0IGFuIGRlciBVbmkgb2RlciBhbiBkZXIgT2Rlcj8gKEVsYmVyZXQsIDIzLiBGZWIgMjAwMiwgMTM6NDE6MzYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTQ0NjgwMzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0NDU2MzYwCmljaCB3aW9sbHQgRGlyIG51ciBzYWdlbiwgZGFzcyBlcyBzbyBiZWRldXRlbmQgbmV0IGlzdC4gSWNoIGhhZXR0IGphIGF1Y2gKTXVlbmNoZW4gc2FnZW4ga29lbm5lbiwgYWJlciBzbyBnZW5hdSBrZW5uIGljaCBkYXMgZGEgbmNpaHQsIGRlc3dlZ2VuIHNkYWcKaWNocyBsaWViZXIgbmNpaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBTdGF0aSBpbiBGcmFua2Z1cnQgYW4gZGVyIFVuaSBvZGVyIGFuIGRlciBPZGVyPyAoR3JpbW1ib3JuLCAyMy4gRmViIDIwMDIsIDEzOjQyOjQ4KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAxNDQ2ODA5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQ0NTYzNjAKQWgsIEFiZXIgRmZtIGlzdCBiZWRldXRlbmQ/IERhbm4gZ3VjayBEaXIgbWFsIE1hbmhhdHRhbiBhbiwgZGFnZWdlbiBpc3QKRnJhbmtmdXJ0IGFsbGVuZmFsbHMgMy5rbGFzc2lnLgoKR2RBIGhpZWx0IGRhcyBUaGVtYSBlaWdlbnRsaWNoIGZ1ZXIgImRldXRzY2hlIFN0YWVkdGUiCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogU3RhdGkgaW4gRnJhbmtmdXJ0IGFuIGRlciBVbmkgb2RlciBhbiBkZXIgT2Rlcj8gKEVsYmVyZXQsIDIzLiBGZWIgMjAwMiwgMTM6NDM6NDEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTQ0NjgxNjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0NDU2MzYwCmljaCBoYWIgbmllIGdlc2FndCwgRnJhbmtmdXJ0IHNlaSBiZWRldXRlbmQuIEljaCBoYWIgamEgYXVjaCBnZXNhZ3QsIHZlcmdpc3MKQ2hpY2FnbywgbmltbSBNdWVuY2hlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFN0YXRpIGluIEZyYW5rZnVydCBhbiBkZXIgVW5pIG9kZXIgYW4gZGVyIE9kZXI/IChHbG9pbnNvbiwgMjMuIEZlYiAyMDAyLCAxMzo0Mzo1OSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxNDQ2NTczMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQ0NTYzNjAKV2VubiBEdSBCZXJsaW4gZnVlciBlaW5lIHJpY2h0aWdlIFN0YWR0IGhhZWx0c3QsIGhhc3QgRHUgRGljaCB6dSBsYW5nZSBpbQpabmV0cnVtIHVuZCBuYWggZGFiZWkgaGVydW1nZXRyaWViZW4uIERhcyBCZXJsaW4gYXVzIGVsZiBEb2VyZmVybiBlbnRzdGFuZGVuCmlzdCBzaWVodCBtYW4gaGV1dGUgbm9jaCBhbiBkZW0gZWluZW4gb2RlciBhbmRlcmVuIGt1aHN0YWxsYWVobmxpY2hlbgpBYnJpc3NoYXVzIG5haCBhbSBSYW5kLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU3RhdGkgaW4gRnJhbmtmdXJ0IGFuIGRlciBVbmkgb2RlciBhbiBkZXIgT2Rlcj8gKEdyaW1tYm9ybiwgMjMuIEZlYiAyMDAyLCAxMzo0ODo1Nik6Cn4jISBybj1HbG9pbnNvbiBydD0xMDE0NDY4MjM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDQ1NjM2MApOaWNodCB6dXZpZWxlIGF1ZiBlaW5tYWwsIGF1c3NlcmRlbSB3b2xsdGUgaWNoIGtvY2hlbiBnZWhlbi4KLSBNdWVuY2hlbiBpc3QgYWxzIE11c2lrc3RhZHQgc2ljaGVyIG5pY2h0IGdhbnogdmVya2VocnQgKHdlbm4gaWNoIGF1Y2gKICBiZXp3ZWlmZWwgZGFzcyBlcyBkaWUgVmllbGZhbHQgaGF0LCBkaWUgbWFuIGluIEtvZWxuIGZpbmRldCkuIExlaWRlciBpc3QKICBNdWVuY2hlbiBhbnNvbnN0ZW4gc2VociBrbGVpbmthcmllcnQgdW5kIHByb3ZpbnppZWxsLiBBYmVyIHNvIHJpY2h0aWcuCi0gUHJha3Rpc2NoIGplZGUgU3RhZHQgaGF0IFZvcm9ydGUgdW5kIGVpbmdlbWVpbmRldGUgRG9lcmZlci4gRXMgZ2VodCB1bSBkaWUKICBTdW1tZSBkZXMgZ2FuemVuLCBuaWNodCB1bSBkaWUgU2Nobml0dG1lbmdlIGRlciBUZWlsZS4gRGFzIHR1dCBkZXIgCiAgR2VzY2hpY2h0ZSBrZWluZW4gQWJicnVjaC4KClNvLCB1bmQgamV0enQgc3RyZWl0ZXQgZXVjaCBhbGxlaW5lIHdlaXRlciwgaWNoIG1hY2hlIG1pciBqZXR6dCBnbGVpY2ggZXJzdG1hbAplaW4gQ3VycnkuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTdGF0aSBpbiBGcmFua2Z1cnQgYW4gZGVyIFVuaSBvZGVyIGFuIGRlciBPZGVyPyAoR2xvaW5zb24sIDIzLiBGZWIgMjAwMiwgMTM6NTA6MjgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTQ0Njg1MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0NDU2MzYwCk5hY2ggRWxpemFiZXRocyBSZXplcHQgb2RlciBuYWNoIERlaW5lbT8KRGllIFN1bW1lIGRlcyBHYW56ZW4gc2llaHQgaW4gQmVybGluIG51ciBpbSBaZW50cnVtIGd1dCBhdXMuIEZpbi4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBTdGF0aSBpbiBGcmFua2Z1cnQgYW4gZGVyIFVuaSBvZGVyIGFuIGRlciBPZGVyPyAoR3JpbW1ib3JuLCAyMy4gRmViIDIwMDIsIDEzOjUyOjI0KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMTQ0Njg2Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0NDU2MzYwCkljaCBrZW5uZSBFbGlzYWJldGhzIFJlemVwdCBuaWNodCBhbHNvIG11c3MgZXMgd29obCBtZWlucyBzZWluLgpVbmQgaWNoIGhhYmUgaW4gU3RlZ2xpdHogbWFsIGVpbmUgaGVydm9ycmFnZW5kZSBPcGVuIEFpciBXaWxoZWxtIFRlbGwKQXVmZnVlaHJ1bmcgZ2VzZWhlbi4gT0ssIHMvaGVydm9ycmFnZW5kL3ZlcmdudWVnbGljaC8uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBTdGF0aSBpbiBGcmFua2Z1cnQgYW4gZGVyIFVuaSBvZGVyIGFuIGRlciBPZGVyPyAoRWxiZXJldCwgMjMuIEZlYiAyMDAyLCAxMzo1MzozNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxNDQ2ODc0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQ0NTYzNjAKYWxzbyBudXIgd2VpbCBkdSBFbGl6YWJldGhzIFJlemVwdCBuaWNodCBrZW5uc3QsIG11c3MgZGFzIG5vY2ggbGFuZ2UgbmljaHQKZGVpbiBSZXplcHQgc2VpbiA6KQpEaWVzZSBmYWxzY2hlIFNjaGx1c3N3ZWlzZSBpc3QgYWxsZXJkaW5ncyB3ZWl0IHZlcmJyZWl0ZXQsIERpciB6dW0gVHJvc3RlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFN0YXRpIGluIEZyYW5rZnVydCBhbiBkZXIgVW5pIG9kZXIgYW4gZGVyIE9kZXI/IChHcmltbWJvcm4sIDIzLiBGZWIgMjAwMiwgMTM6NTQ6MjApOgp+IyEgcm49RWxiZXJldCBydD0xMDE0NDY4ODE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDQ1NjM2MApEYSBpY2gga2VpbmVybGVpIFJlemVwdHZvcmxhZ2UgdmVyd2VuZGUgX2lzdF8gZXMgbWVpbiBSZXplcHQuIERhcyBQcmluemlwdCBkZXIKa29udmVyZ2VudGVuIEVudHdpY2tsdW5nIGlzdCBEaXIgYWJlciBiZWthbm50LCBqYT8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFN0YXRpIGluIEZyYW5rZnVydCBhbiBkZXIgVW5pIG9kZXIgYW4gZGVyIE9kZXI/IChFbGJlcmV0LCAyMy4gRmViIDIwMDIsIDEzOjU1OjQwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDE0NDY4ODYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDQ1NjM2MApkdSBoYXN0IGdlc2NocmllYmVuLCBkdSBrYWVubnRlc3QgZGFzIFJlemVwdCBuY2lodCAiYWxzbyIgbXVlc3NlIGVzIGRlaW5zCnNlaW4uIERpZXNlcyBhbHNvIG1laW4gaWNoLgpEYXMgaGF0IG5peCBtaXQga29udmVyZ2VudGVyIEVudHdpY2tsdW5nIHp1IHR1bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFN0YXRpIGluIEZyYW5rZnVydCBhbiBkZXIgVW5pIG9kZXIgYW4gZGVyIE9kZXI/IChWYXJsYXJpb24sIDIzLiBGZWIgMjAwMiwgMTM6NTY6NDgpOgp+IyEgcm49RWxiZXJldCBydD0xMDE0NDY4OTQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDQ1NjM2MApHaW5nIGVzIG5pY2h0IHVtIGRpZSBGcmFnZSwgbmFjaCB3ZXNzZW4gUmV6ZXB0LCBHcmltbWJvcm4gZGFzIEN1cnJ5IG1hY2h0PwpXZW5uIGVyIEVsaXphYmV0aHMgbmljaHQga2VubnQsIF9tdXNzXyBlcyB3b2hsIHNlaW5zIHNlaW4uLi4KCkJ0dzogaXMgTWVnYXNjaG1hcnJuIHZvbGwgb2RlciB3YXJ1bSBibHViYmVydCBpaHIgaGllciBoZXJ1bT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBTdGF0aSBpbiBGcmFua2Z1cnQgYW4gZGVyIFVuaSBvZGVyIGFuIGRlciBPZGVyPyAoR3JpbW1ib3JuLCAyMy4gRmViIDIwMDIsIDEzOjU5OjE1KToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDE0NDY5MDA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDQ1NjM2MApXb2NoZW5lbmRhdXNmbHVnLCBTb25udGFnc3NwYXppZXJnYW5nLCBzb3p1c2FnZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklzdCBkYXMgZGllIGdlcmVjaHRlIFN0cmFmZT8gKERlbnRpLCAyMy4gRmViIDIwMDIsIDE3OjI5OjQ4KToKCls8TWFzdGVSPjpEZWVwQmx1ZSBsYWVzc3QgZGllIEViZW5lICdLb21wbGV0dGxvZXN1bmdlbicgZW50c3RlaGVuLl0KW1RvZDpMYXJzXSBFaW4gV2Fzc2VydW53ZXNlbiBoYXQgZ2VyYWRlIERlZXBibHVlIHVtZ2VicmFjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BpZWxlcnBhY2suLi4gKEFtYXJ5bGxpcywgMjMuIEZlYiAyMDAyLCAyMjo0Mzo0Myk6Cnh4eCB0ZWlsdCBEaXIgbWl0OiBIYXN0IGR1IG1hbCBrdXJ6IFplaXQ/PwpEdSB0ZWlsc3QgeHh4IG1pdDogd2FzIGdpYnRzIGRlbm4/Cnh4eCBob2VydCBnYXIgbmljaHQgenUsIHdhcyBEdSBzYWdzdC4KCkFtYSosIGRlbmt0IC4gbyBPIChBcnNjaGxvY2gpLgoKUFM6IFN6ZW5lIHNwaWVsdGUgc2ljaCBzY2hvbiB2b3IgZXRsaWNoZW4gU3R1bmRlbi9UYWdlbiBhYiwgYmV2b3IgaGllcgpNdXRtYXNzdW5nZW4gZ2VtYWNodCB3ZXJkZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBTdGF0aSBpbiBGcmFua2Z1cnQgYW4gZGVyIFVuaSBvZGVyIGFuIGRlciBPZGVyPyAoQ2lzb3UsIDIzLiBGZWIgMjAwMiwgMjM6MTg6MzYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTQ0NjkxNTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0NDU2MzYwCgpFcmxhdWJ0IG1pciBhbiBkaWVzZXIgU3RlbGxlIGVpbmlnZSAtIHp1Z2VnZWJlbmVybWFzc2VuIGdhZW56bGljaAp1bndlc2VudGxpY2hlIC0gQmVtZXJrdW5nZW46CgpNZXRyb3BvbGUgPSBsYXQ6IE1ldHJvL21hdGVyIGYuIE11dHRlciwgZ3JpZTogUG9saXMgZi4gU3RhZHQsIGFsc28KTXV0dGVyc3RhZHQsIEhhdXB0c3RhZHQgbWl0IHdlc2x0c3RhZWR0aXNjaGVtIENoYXJha3RlciwgV2VsdHN0YWR0LiAKCkhlc3NlbjogRWluIGRldXRzY2hlcyBCdW5kZXNsYW5kCgpOdXIgZnVlciBkZW4gRmFsbCwgZGFzcyBJaHIgYXVjaCBhbGxlIGJyYXYgYmVpICJXZXIgd2lyZCBNaWxpb25hZXIiIG1pdHNwaWVsdC4KT2RlciBhdWNoIHdpZSBCYWRlc2FseiBzYWdlbiB3dWVyZGVuOiAiRGVuZ2UgYnJpbmd0IG5peC4gRGVzIERlbmdlIHVlYmVybGFzcwpkZSBIYXNlLCBkZSBoYW1tIGxhZW5nZXJlIFphZWhuLiIgLSAiRWksIGRlcyB2ZXJzdGVoIGlzY2ggamV0enRldCBuZXQiIC0KIlNpZWhzdCwgRGVuZ2UgYnJpbmd0IG5peC4iCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogU3RhdGkgaW4gRnJhbmtmdXJ0IGFuIGRlciBVbmkgb2RlciBhbiBkZXIgT2Rlcj8gKE1vbnRhbnVzLCAyNC4gRmViIDIwMDIsIDA0OjE0OjIzKToKfiMhIHJuPUNpc291IHJ0PTEwMTQ1MDI3MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0NDU2MzYwCk51biwgd2VubiBLb2VsbiBuZSBXZWx0c3RhZHQgaXN0LCBkYW5uIGlzdCBhdWNoIEhvbWJ1cmcvU2FhciBuZSBXZWx0c3RhZHQuCk9kZXIgTHVlZGVuc2NoZWlkLgpLb2VsbiBzdGlua3QuIE1hbiBtdXNzIG51ciBhdXMgZGVtIEJhaG5ob2YgcmF1cyB1bmQgZHVyY2ggZGllIFN0YWR0ICh6dSBGdXNzKSwKdW5kIG1hbiBtZXJrdCwgd2llIGVzIGF1cyBhbGxlbiBFY2tlbiB1ZG4gRW5kZW4gbXVlZmZlbHQuIERhcyBpc3QgbWlyIGluCmtlaW5lciBhbmRlcmVuIFN0YWR0IGplIHNvIGF1ZmdlZmFsbGVuLCBlcnN0IHJlY2h0IG5pY2h0IHdpZWRlcmhvbHQuClVuZCB6d2FyIG5pY2h0IGRlciBub3JtYWxlIEdlcnVjaCBuYWNoIERvZW5lcmZldHQsIEF1dG9hYmdhc2VuIHVuZApSaW5uc3RlaW5pc3NlLCBzb25kZXJuIG5vY2ggbWl0IGdhbnogYW5kZXJlbiBadXRhdGVuLCBkaWUgaWNoIGdhciBuaWNodCBuYWVoZXIKd2lzc2VuIHdpbGwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BpZWxlcnBhY2suLi4gKEJhbWJpLCAyNC4gRmViIDIwMDIsIDE0OjU5OjMxKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDE0NTAwNjIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDUwMDYyMwpXZW5pZ3N0ZW5zIHNpbmQgZGllIFNwaWVsZXIsIGRpZSBtaWNoIGlnbm9yaWVyZW4gKHVuZCB2b24gZGVuZW4gaWNoIGRhcyBhdWNoCmdyYWQgd2Vpc3MpIHNjaGxhdSBnZW51ZywgbWljaCBuaWNodCB3ZWdlbiBldHdhcyBhbnp1cXVhdHNjaGVuLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5vY2ggbGFuZ2UgaGluLCBpY2ggaGFiIGFiZXIgZ3JhZCBMdXN0LCBlcyBzY2hvbiBtYWwgYW56dWt1bmVkaWdlbi4uLiAoR2xvaW5zb24sIDI0LiBGZWIgMjAwMiwgMTY6MDc6MjEpOgp+IyEgcm49Wm9vayBydD0xMDE0NTU4MTQzIHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xMDE0NTU4MTQzCk5vY2ggc28gZWluZSBQRmVpZmUgOikKCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBTdGF0aSBpbiBGcmFua2Z1cnQgYW4gZGVyIFVuaSBvZGVyIGFuIGRlciBPZGVyPyAoUm9uZGEsIDI0LiBGZWIgMjAwMiwgMTk6MzA6MzIpOgp+IyEgcm49TW9udGFudXMgcnQ9MTAxNDUyMDQ2MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQ0NTYzNjAKTW9udGFudXMsIER1IGJpc3QgZ3JhZCBkYWJlaSwgZGllIEtvZWxuZXIgZmllcyB6dSBiZWxlaWRpZ2VuLiBEYXMgd2FzIER1Cmdlcm9jaGVuIGhhc3Qgd2FyIGRlcmVuIExpZWJsaW5nc2dldHJhZW5rIChuZWluLCBpY2ggbmVubiBkaWUgQnJ1ZWhlIG5pY2h0CiJCaWVyIiEpLgoKUm9uZGEgKndpbGwgYXVjaCBuZW4gYmlzc2NoZW4gZmxhbWVuKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbXVoZ2llciAoUGl0ZmFsbCwgMjQuIEZlYiAyMDAyLCAyMTozNToyNik6Ckdsb2luc29uICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRhcyBHZWZ1ZWhsLCBqZW1hbmRlbiB0b2V0ZW4genUgbXVlc3NlbiwgdmVyc3RhZXJrdCBzaWNoLiBWZXJ6d2VpZmVsdCBlcmtlbm5zdApEdSwgZGFzcyBlaW5lIHVuZ2xhdWJsaWNoZSBCbHV0bHVzdCBEaWNoIGVyZ3JpZmZlbiBoYXQuIERlaW4gVmVyc3RhbmQKc2Nod2luZGV0LAp1bmQgZXMgZ2lidCBudXIgbm9jaCBlaW5lczogVCBPIEUgVCBFIE4gISEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG11aGdpZXIgKEdsb2luc29uLCAyNC4gRmViIDIwMDIsIDIxOjQzOjQ4KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAxNDU4MjkyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQ1ODI5MjYKSWNoIGRpc3RhbnppZXJlIG1pY2ggdm9uIGRpZXNlbSB2ZXJtZWludGxpY2hlbiBFZmZla3QuIEljaCBsb2VzZSBhbGxlbmZhbGxzClRvcnRlbndlcmYtIHVuZCBIZXJ1bXBlaXRzY2hhdHRhY2tlbiBhdXMuCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBWZXJzYW1tbHVuZ3Nhbmt1ZW5kaWd1bmcgKEdyaW1tYm9ybiwgMjUuIEZlYiAyMDAyLCAyMDo1MzoyNyk6Cn4jISBybj1ab29rIHJ0PTEwMTQ2NjY1MzQgcmc9d29scGVydGluZ2VyLmZhbmNsdWIKfiMhIHRpZD0xMDE0NjY1NzcyCkFlaCwgRHUsIHdlaXNzdCBEdSwgdmVybXV0bGljaCBoYWJlbiBzaWUgbWl0dGxlcndlaWxlIHNvZ2FyIGluIEZyYW5rZnVydCBhbgpkZXIgT2RlciBJbnRlcm5ldGFuYmluZHVuZy4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpyZXNvbHZlX3BsYXllciBvZGVyIHdhcyBhdWNoIGltbWVyIGRhZnVlciB2ZXJhbnR3b3J0bGljaCBpc3QuLi4gOikgKEFtYXJ5bGxpcywgMjYuIEZlYiAyMDAyLCAxOTowNzo0Mik6CkFyayB0ZWlsdCBEaXIgbWl0OiBzZWxic3QgcGFwcHNhY2sKdG0gYXJrIG5lIHJlYWt0aW9uIHdpZSAyMCBtZXRlciBrdXBmZXJkcmFodCBvZGVyIGVpbmUgc2NobGFmdGFibGV0dGUuLi4KQXJrIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkFyayAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKRHUgdGVpbHN0IEFya3NoYXQgbWl0OiBuZSByZWFrdGlvbiB3aWUgMjAgbWV0ZXIga3VwZmVyZHJhaHQgb2RlciBlaW5lCkR1IHRlaWxzdCBBcmtzaGF0IG1pdDogc2NobGFmdGFibGV0dGUuLi4KQXJrc2hhdCB0ZWlsdCBEaXIgbWl0OiBEYXMgaXN0IGphIGhvY2ggaW50ZXJlc3NhbnQhCgpBbWEqLCBmbHVjaGVuZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHJlc29sdmVfcGxheWVyIG9kZXIgd2FzIGF1Y2ggaW1tZXIgZGFmdWVyIHZlcmFudHdvcnRsaWNoIGlzdC4uLiA6KSAoQXJrLCAyNi4gRmViIDIwMDIsIDE5OjIyOjUxKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDE0NzQ2ODYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDc0Njg2MgpUc2NoYSwgbWFuIHNpZWh0IG5pY2h0IGltbWVyIGJlaSBkaWVzZW0gQXBwbGV0LCB3YW5uIGRpZSBWZXJiaW5kdW5nIHdlY2ggaXN0CjotKSBBYmVyIHdpcmtsaWNoLCBkZXIgQmVpdHJhZyB3YXIgaG9jaGludGVyZXNzYW50LgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdmVuIEJvbXdvbGxlbiAoQW5hY3Jpb24sIDI3LiBGZWIgMjAwMiwgMTA6NDk6MDIpOgp+IyEgb249QW5hY3Jpb24gb3Q9MTAxNDgwMzMyNCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49S2FyaXMgcnQ9MTAxNDgwMzI1OCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMTQ4MDMyNTgKRHUgd2lsbHN0IFNjaGFmZSBwb3BwZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3ZlbiBCb213b2xsZW4gKERlZXBibHVlLCAyNy4gRmViIDIwMDIsIDEwOjQ5OjUwKToKfiMhIG9uPURlZXBibHVlIG90PTEwMTQ4MDMzNTAgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUthcmlzIHJ0PTEwMTQ4MDMyNTggcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDE0ODAzMjU4CkR1PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdmVuIEJvbXdvbGxlbiAoS2FyaXMsIDI3LiBGZWIgMjAwMiwgMTA6NTI6NTIpOgp+IyEgcm49QW5hY3Jpb24gcnQ9MTAxNDgwMzM0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTQ4MDMyNTgKSWNoIGZpbmQgcG9wcGVuIGJlc3NlciBhbHMgcnVtbXVoZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3ZlbiBCb213b2xsZW4gKEthcmlzLCAyNy4gRmViIDIwMDIsIDEwOjUzOjIwKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwMTQ4MDMzOTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0ODAzMjU4Ck5laW4sIGljaCBuaWNoLCB3ZWlsIGljaCBuaWNoIE1hZ2llciB1bmQga2VpbmUgQWhudW5nIHZvbiBMUEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFN2ZW4gQm9td29sbGVuIChCb2luZywgMjcuIEZlYiAyMDAyLCAxMDo1NDo1Nyk6Cn4jISBybj1LYXJpcyBydD0xMDE0ODAzNjAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNDgwMzI1OApMYWVzc3Qgc2ljaCBiZWlkZXMgYWVuZGVybiAuLi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3ZlbiBCb213b2xsZW4gKEthcmlzLCAyNy4gRmViIDIwMDIsIDEwOjU2OjIyKToKfiMhIHJuPUJvaW5nIHJ0PTEwMTQ4MDM2OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE0ODAzMjU4ClVlYmVyIExQQyBsYWVzc3Qgc2ljaCByZWRlbiAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB2b3J0cmFnIChEZWVwYmx1ZSwgMjcuIEZlYiAyMDAyLCAxNjoxMDo0MSk6Cn4jISBybj1BbGJvaW4gcnQ9MTAxNDgyMTQyMSByZz1wYXJ0eQp+IyEgdGlkPTEwMTQ4MjE0MjEKRXMgd2FyIGVpbm1hbCB2b3IgbGFuZ2VyIGxhbmdlciBaZWl0LCBkYSBsZWJ0ZSBpbiBlaW5lbSBtb3JnZW5ncmF1ZW4gTGFuZC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKemF1YmVyZXIuLi4gKEJyb3RuYWVsLCAyNy4gRmViIDIwMDIsIDIxOjAyOjA3KToKRHUgd2lyc3QgYWxsbWFlaGxpY2ggd2llZGVyIGxhbmdzYW1lci4KRGllIFZlcnphdWJlcnVuZyBEZWluZXIgSGFlbmRlIGxhZXNzdCBsYW5nc2FtIG5hY2guCkRlaW5lIEJlaW5lIGxvZXNlbiBzaWNoIGF1Zi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11ZGRlcnBhY2suLi4gKEFtYXJ5bGxpcywgIDEuIE1hciAyMDAyLCAyMToxNzoxNSk6CkRlaW4gRnJldW5kIHh4eCB0ZWlsdCBEaXIgbWl0OiBoZWhlLCBsZWd0IHNpY2ggZGVyIHBpenphbWFubiBlcnNtdGFsCkRlaW4gRnJldW5kIHh4eCB0ZWlsdCBEaXIgbWl0OiBhdWZmZXIgdHJlcHBlIGF1ZnMgbWF1bCAqZ2VoYWVzc2lnZ3JpbnMqCgpBbWEqIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXVkZGVycGFjay4uLiAoSW1kYSwgIDIuIE1hciAyMDAyLCAwMTozMTo0MCk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTAxNTAxMzgzNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTUwMTM4MzUKRGFzIGlzIGphIG5vY2ggZnVlciBLaW5kYS4gTWlyIGhhdCBtYWwgZGVyIFNlY3VyaXR5aGVpbmUsIGRlciBnZWtvbW1lbiB3YXIsIHVtCmRpZSBQYXJ0eSBhdWZ6dWxvZXNlbiwgdm9yIGRpZSBUdWVyIGdla290enQuIChVbmQgc2ljaCBkYW5uIGtsZWlubGF1dAp2ZXJ6b2dlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthZmZlZSBmdWVyIE1hZW5uZXIgKFJvbGFuZCwgIDIuIE1hciAyMDAyLCAxNzo1ODo1NCk6CgpFY2h0ZXIgS2FmZmVlIGZ1ZXIgZWNodGUgTWFlbm5lcjogMSBub3JtYWxlIEp1bWJvLVRhc3NlIHp1IDIvMyBtaXQgc2Nod2FyemVuCkthZmZlZWJvaG5lbiAoaW0gQmFja29mZW4gYXVmIDE4MCB2b3JnZWhlaXp0KSBiZXN0dWVja2VuLCBtaXQga29jaGVuZCBoZWlzc2VtCldhc3NlciBhdWZmdWVsbGVuLCBlaW4gSHVmZWlzZW4gcmVpbmxlZ2VuLCB1bmQgd2VubiBkaWVzZXMgdW50ZXJnZWh0LCBpc3QgZGVyCkthZmZlZSBuaWNodCBzdGFyayBnZW51Zy4gQW5kZXJuZmFsbHM6IFVtZ2VoZW5kIGhlaXNzIGF1ZiBFeCBydW50ZXJraXBwZW4sCmJldm9yIGVyIGthbHQgd2lyZC4KClJvbGFuZCAtIHdlbidzIHNjaG1lY2t0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2FmZmVlIGZ1ZXIgTWFlbm5lciAoR3JpbW1ib3JuLCAgMi4gTWFyIDIwMDIsIDE4OjA1OjAyKToKfiMhIHJuPVJvbGFuZCBydD0xMDE1MDg4MzM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNTA4ODMzNApEYXMgUmV6ZXB0IGlzdCB2b24gTHVja3kgTHVrZXMgV2VzdGVybmthZmZlZSBnZWtsYXV0OiBFaW4gUGZ1bmQgS2FmZmVlCmFuZmV1Y2h0ZW4sIHVlYmVyIGRlbSBvZmZlbmVuIEZldWVyIGVpbm5lIGhhbGJlIFN0dW5kZSBrb2VjaGVsbiBsYXNzZW4uIERhbm4KbWFjaHQgbWFuIGRpZSBIdWZlaXNlbnByb2JlOiBHZWh0IGRhcyBFaXNlbiB1bnRlciB3YXJzIHp1d2VuaWcgS2FmZmVlLgoKR2RBLCBUZWV0cmlua2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEthZmZlZSBmdWVyIE1hZW5uZXIgKFJvbGFuZCwgIDIuIE1hciAyMDAyLCAxODo0MDo1Mik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxNTA4ODcwMiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTUwODgzMzQKCkthIHdvIGhlciBoYWJzIHBlciBlbWFpbCB2b24gbmVtIGZyZXVuZCBiZWtvbW1lbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthZmZlZSBmdWVyIE1hZW5uZXIgKEhpZ2h0LCAgMy4gTWFyIDIwMDIsIDA4OjQ2OjA2KToKfiMhIHJuPVJvbGFuZCBydD0xMDE1MDg4MzM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNTA4ODMzNApsdWNreSBsdWtlIC4uLiBkYXMgd2FyZW4gbm9jaCB6ZWl0ZW4gYWJiYSB3ZW5uIGRlciBkZXIgbmV1IHdhciBiaXN0IGR1IGRvY2gKZGV1dGxpY2ggdW50ZXJtIGFsdGVyc2R1cmNoc2Nobml0dCAsbykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvZCBpbiBPSGF1c2VuIC4uLiBrb21pc2NoIGRpbmcgKFJvbGFuZCwgIDQuIE1hciAyMDAyLCAwMDoxNToyMik6CltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIFJvbGFuZCB1bWdlYnJhY2h0LgoKLSBldHdhcyBzcGFldGVyCi0gb2VobSB3byBzaW4gbWVpbmUgc2FjaGVuIC4uLiAKCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBLZWluZXIgZGVyIFNhZWNrZSBoYXQgZGVuIGtyYW0gYmVpIHNpY2ggPz8hCkZsYXVyb3MgdGVpbHQgRGlyIG1pdDogU2NoYXUgbWFsIGltIExhbmRlbgoKKipIYW5nZWwqKgoKLT4gaW0gTGFkZW4gLT4gemVpZ2UKCjM1LiBFaW5lIFRyb2xsamFja2UgICAgICAgICAgICAgIDE1MCB8ICAzNi4gRWluZSBUcm9sbGtldWxlICAgICAgICAgICAgIDMwMDAKMzcuIDUzMjQgTXVlbnplbiAgICAgICAgICAgICAgIDE1OTcyIHwgIDM4LiBFaW5lIG1hZ2lzY2hlIFNvbm5lbnVociAgICAgICAgMAoKLSBncnVlYmVsIC4uIGthdWYgaWNoIG51biBtZWluZSBtdWVuemVuIG9kZXIgbmljaHQgPyEKClJvbGFuZCwgZGVtIFRvZCB2b24gZGVyIFNjaGlwcGUgZ2VzcHJ1bmdlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hbiBzY2hhZXJmdCB1bmQgc2NoYWVyZnQsIGFiZXIgbmljaHQgZGFzIHdhcyBtYW4gd2lsbC4uLi4gKEdhcm9uLCAgNS4gTWFyIDIwMDIsIDA0OjA0OjUxKToKaXN0IHNjaG9uIGx1c3RpZywgZGFzIHdpbGwgbWFuIG5lIGZldWVyYXh0IHNjaGFlcmZlbiwgdW5kIHdhcyBwYXNzaWVydC4uLi4uLjoKCj4genVlY2tlIGF4dApEdSBzdGVja3N0IGRpZSBEYWVtb25lbmF4dCB6dXJ1ZWNrLgpEdSB6dWVja3N0IGRpZSBGZXVlcmF4dC4KPiB3YWZmZW5zY2hhZXJmZW4gYXh0CkR1IHNjaGFlcmZzdCB1bmQgc2NoYWVyZnN0LCBkb2NoIGRpZSBEYWVtb25lbmF4dCB3aXJkIGVpbmZhY2ggbmljaHQKc2NoYWVyZmVyLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE11ZGRlcnBhY2suLi4gKEFoYWIsICA1LiBNYXIgMjAwMiwgMTM6MjA6NTMpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMTUwMTM4MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE1MDEzODM1CkRhIGZhbmQgaWNoIGRlbiBQaXp6YWZhaHJlciBhdWYgZGVyIGxldHp0ZW4gUGFydHkgaW4gTXVlbnN0ZXIgYXVjaCBuaWNodApzY2hsZWNodCwgZGVyIG1pdCBzZWluZW0gRmxpdHplciBpbSBSdWVja3dhZXJ0c2dhbmcgbmVuIEJhdW0gZ2VrbnVkZGVsdCBoYXQuCipCYWRhYnVtbSogKmVnKgoKQWhvaSwKQWhhYi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBtYW4gc2NoYWVyZnQgdW5kIHNjaGFlcmZ0LCBhYmVyIG5pY2h0IGRhcyB3YXMgbWFuIHdpbGwuLi4uIChHb3IsICA1LiBNYXIgMjAwMiwgMTk6MzQ6MzcpOgp+IyEgcm49R2Fyb24gcnQ9MTAxNTI5NzQ5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTUyOTc0OTEKU2Nob2VuLCBkYXNzIG1laW4gV2FmZmVudHJpZ2dlciBqZXR6dCBhbmdlc2NobGFnZW4gaGF0LiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2VrcyBpc3QgU2NodWxkISAoUm9uZGEsICA2LiBNYXIgMjAwMiwgMjI6MDI6MDEpOgpHcmFkIHBhc3NpZXJ0Li4uCgpLZWtzIHdpcmZ0IGlocmVuIFdlY2tlciBncmluc2VuZCBuYWNoIFBlcmRpdGEuClBlcmRpdGEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCi4uLgpLZWtzIGdydW1tZWx0LgpQZXJkaXRhICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCi4uLgpEdSBzYWdzdDoga2F1bSB3aXJmc3RlIGRlbiBXZWNrZXIgZmxpZWd0IHNpZSByYXVzPyEKRGVpbmUgRnJldW5kaW4gUGVyZGl0YSB0ZWlsdCBEaXIgbWl0OiBkYSB3YXIgaXJnZW5kd2FzIGtvbWlzY2guLi4KClBlcmRpdGEsIG5laG0gRGljaCBiZXNzZXIgdm9yIEtla3NjaGVucyBXZWNrZXIgaW4gQWNodCEKClJvbmRhICpkYW1hbHMgaGFiZW4gV2Vja2VyIG5vY2gga2VpbmVuIFNjaGFkZW4gZ2VtYWNodCEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2VrcyBpc3QgU2NodWxkISAoTXVwZmVsLCAgNi4gTWFyIDIwMDIsIDIyOjM1OjQ2KToKfiMhIHJuPVJvbmRhIHJ0PTEwMTU0NDg1MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE1NDQ4NTIxCkphIGRhbWFscy4uLiBpc3QgZGllc2VyIFdlY2tlciBuaWNodCBuZSBRdWVzdGJlbG9obnVuZyBiZWkgQmFtYmkgb2RlciBzbz8gOykKCi1tdXBmZWwtCnBzOiBhbHNvIGRlciBLaWNrLVdlY2tlciA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmVzcHJlY2h1bmcgaGVpc3N0IGRhcyBhbHNvIGpldHp0Li4uIChIb2JvLCAgNy4gTWFyIDIwMDIsIDE0OjU0OjU0KToKWCB0ZWlsdCBEaXIgbWl0OiBzYWdlbiB3aXIgZXMgbWFsIHNvOiBpY2ggdHVlIHdhcyBmdWVyIG1laW5lIGZpZ3VyIGluIGRlcgp6ZWl0ISA6LSkKWCB0ZWlsdCBEaXIgbWl0OiBiZXNwcmVjaHVuZwoKCiAgIEhvYm8gLSB3aWxsIGF1Y2ggc29sY2hlIEJlc3ByZWNodW5nZW4gaGFiZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCZXNwcmVjaHVuZyBoZWlzc3QgZGFzIGFsc28gamV0enQuLi4gKFpvb2ssICA3LiBNYXIgMjAwMiwgMTQ6NTU6MjYpOgp+IyEgcm49SG9ibyBydD0xMDE1NTA5Mjk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNTUwOTI5NApXYXMgc2luZCBkZW5uIGRhcyBmdWVyIEJlc3ByZWNodW5nZW4uLi4/Cgpab29rIGhvcmNodCBhdWYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLb21pc2NoZXIgVmllY2hlciBnaWJ0J3MgKERvdHosICA3LiBNYXIgMjAwMiwgMTk6MTc6NDMpOgoKRGllIEthdGFrb21iZW4tTmFja3RiYXIuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiByYXVzLgpFaW5lIEhhbmQgdm9uIGVpbiBFaW5ob3JuLgpEaWUgVG9wLUxpc3RlLCBUb3AtU3BpZWxlcmxpc3RlIHVuZCBUb3AtU2VoZXJsaXN0ZS4KCkljaCBkYWNodGUgaW1tZXIsIGRpZSBoYWJlbiBIdWZlLiBXaWVkZXIgd2FzIGdlbGVybnQuCkRvdHosIFdHCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHdlZ2Utc3VjaC1hbGdvcml0aG11cyAoVmFuaW9uLCAgNy4gTWFyIDIwMDIsIDIxOjEyOjUxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDE1NTI5MjA0IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwMTU1MjgwMTAKTWVpbnN0IGR1IHdpcmtsaWNoLCBkYXNzIGVyIHNpY2ggbnUgdm9yIExhY2hlbiB2b3JtIE1vbml0b3Iga3J1ZW1tdD8KCgpWKiwgZ3JpbnN0IGJlaSBkZXIgVm9yc3RlbGx1bmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJlc3ByZWNodW5nIGhlaXNzdCBkYXMgYWxzbyBqZXR6dC4uLiAoR29yLCAgNy4gTWFyIDIwMDIsIDIxOjE0OjA1KToKfiMhIHJuPVpvb2sgcnQ9MTAxNTUwOTMyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTU1MDkyOTQKS2xpbmcgc2Nod2VyIG5hY2ggUmluZ2VscGl6IG1pdCBBbmZhc3Nlbi4KCkdvciBTY2hhdXQgd2VnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU2VtaW5hcnZvcnRyYWcgKEdyaW1tYm9ybiwgIDcuIE1hciAyMDAyLCAyMTozNTo0NCk6Cn4jISBybj1IdW1uaSBydD0xMDE1NTMzMjQ4IHJnPXBhcnR5Cn4jISB0aWQ9MTAxNDgyMDgxMQpVbmQgdmVyZ2lzcyBkaWUgbXAzcyBuaWNodC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB3ZWdlLXN1Y2gtYWxnb3JpdGhtdXMgKFRlZGR5LCAgNy4gTWFyIDIwMDIsIDIyOjI2OjAwKToKfiMhIHJuPU5penpsIHJ0PTEwMTU1MzYyNDkgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTAxNTUyODAxMApBbHNvIFNPT08gd2VpdCBpc3QgTGFycyBnYXJuaWNodCB3ZWcgdm9tIEhvc3BpdGFsIDs5Cgp0ZWRkeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogd2VnZS1zdWNoLWFsZ29yaXRobXVzIChOaXp6bCwgIDcuIE1hciAyMDAyLCAyMjoyNjozMCk6Cn4jISBybj1UZWRkeSBydD0xMDE1NTM2MzYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNTUyODAxMAphYmVyIGRhIGdpYnRzIGJlc3RpbW10IG5vY2ggbmUga3VlcnplcmVuIHdlZyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogd2VnZS1zdWNoLWFsZ29yaXRobXVzIChUZWRkeSwgIDcuIE1hciAyMDAyLCAyMjoyNzoxMik6Cn4jISBybj1OaXp6bCBydD0xMDE1NTM2MzkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNTUyODAxMApXb21pdCBzaWNoIGRhbm4gZG9jaCB3aWVkZXIgZGllIEZyYWdlIHN0ZWxsdCwgd2llICJrdXJ6IiBkZWZpbmllcnQgaXN0LgpHZXNjaHdpbmRpZ2tlaXQgb2RlciBBbnphaGwgUmFldW1lLgoKVGVkZHkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhvY2ggaW0gTm9yZGVuIChIb2JvLCAgOC4gTWFyIDIwMDIsIDA5OjE3OjAyKToKR2VzdGVybiBhdWYgZGVtIFN0YXRpIGdpbmcgZXMgZGFydW0sIHdvIEV4LVN0YXRpLUJlc3VjaGVyIGhpbmdlem9nZW4gc2luZC4KTSBzYWd0OiBEZXIgaXN0IGpldHp0IGlyZ2VuZHdvIG9iZW4gaW0gTm9yZGVuLgpWIHNhZ3Q6IEFtIEJvZGVuc2VlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhvY2ggaW0gTm9yZGVuIChHcmltbWJvcm4sICA4LiBNYXIgMjAwMiwgMDk6Mjk6MTkpOgp+IyEgcm49SG9ibyBydD0xMDE1NTc1NDIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNTU3NTQyMgpEYXMga29tbXQgdm9uIGRlbiBnYW56ZW4gV2VnZXNjcmlwdGVuIC0gZGllIExldXRlIGhldXR6dXRhZ2Uga2VubmVuIGRpZQpIaW1tZWxzcmljaHR1bmdlbiBuaWNodCBtZWhyLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIb2NoIGltIE5vcmRlbiAoQm9pbmcsICA4LiBNYXIgMjAwMiwgMDk6NTk6MjApOgp+IyEgcm49SG9ibyBydD0xMDE1NTc1NDIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNTU3NTQyMgpEYXJ1ZWJlciBoYWJlbiB3aXIgZ2VzcHJvY2hlbj8gV2FyIGljaCBhdWYgbmVtIGFuZGVyZW4gU3RhbW10aXNjaD8gOykKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIb2NoIGltIE5vcmRlbiAoR3JpbW1ib3JuLCAgOC4gTWFyIDIwMDIsIDEwOjA2OjExKToKfiMhIHJuPUJvaW5nIHJ0PTEwMTU1Nzc5NjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE1NTc1NDIyCk5laW4sIHZlcm11dGxpY2ggbnVyIGF1ZiBlaW5lbSBhbmRlcmVuIERyb2dlbmxldmVsLCBzY2hhZXR6ZSBpY2guCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFQtc2hpcnQtTW90aXYgKFZhcmRpb24sICA4LiBNYXIgMjAwMiwgMTU6Mzc6MzEpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMTU1OTgwODkgcmc9cGFydHkKfiMhIHRpZD0xMDE1NTk2NjcyCj4gRGFzIGxhdWVmdCBuaWNodCBzbyB3aWUgaWNoIG1pciBkYXMgdm9yZ2VzdGVsbHQgaGFiZSA6KAoKV2lsbGtvbW1lbiBpbSBMZWJlbiA7LSkKClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRGVlcGJsdWUsICA4LiBNYXIgMjAwMiwgMTY6MzY6MTQpOgpbQ2hhb3M6TXl0aG9zXSBzY2hlaXNzCltUb2Q6TGFyc10gWXJpbnRyaSBoYXQgZ2VyYWRlIE15dGhvcyB1bWdlYnJhY2h0LgpbVG9kOllyaW50cmldIE5hLCBkYXMgdWViZW4gd2lyIGFiZXIgbm9jaG1hbCAuLi4KCkRlZXAiRGFzIGthbm4gbWFuIHdvaGwgbGF1dCBzYWdlbiJibHVlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBULXNoaXJ0LU1vdGl2IChHcmltbWJvcm4sICA4LiBNYXIgMjAwMiwgMTc6MDY6MTEpOgp+IyEgcm49TW9yZ290aCBydD0xMDE1NTk5OTExIHJnPXBhcnR5Cn4jISB0aWQ9MTAxNTU5NjY3MgpOYWphLCBkYXMgbWl0IGRlbSBRdWVyZm9ybWF0IHBhc3N0IG5pY2h0IGF1ZiBqZWRlcm1hbm5zIE9iZXJrb2VycGVyLiBBbnNvbnN0ZW4KZ2VmaWVobCBtaXIKaHR0cDovL21lbWJyZXMubHljb3MuZnIvc2thbmxvbi9waWN0dXJlcy9MdWlzX1JPWU8vUm95b0RyYWdvbnNsYXllci5qcGcgZ2FuegpndXQgLSBzb24gYmlzY2hlbiB3YXMgbWl0IG5hY2t0ZXIgRnJhdWVuaGF1dCB1bmQgQnJ1c3R3YXJ6ZW4gaGF0IGRvY2ggd2FzLCBpc3QKbWFsIHdhcyBhbmRlcmVzLi4uCkVzIGdpYnQgZGEgdW50ZXIgd3d3LnBsYXlib3kuY29tIGF1Y2ggZWluIGJpc2NoZW4gQXVzd2FobCwgYWxsZXJkaW5ncyBmZWhsZW4KZGEgaS5hLiBkaWUgRHJhY2hlbiwgU2Nod2VydGVyIHVuZCBkYXMgQmx1dC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVC1zaGlydC1Nb3RpdiAoR3JpbW1ib3JuLCAgOC4gTWFyIDIwMDIsIDE3OjI1OjUyKToKfiMhIHJuPUFyayBydD0xMDE1NjA0NDkzIHJnPXBhcnR5Cn4jISB0aWQ9MTAxNTU5NjY3Mgo+IE9LLCBiaW4gZWJlbiBQYXJraW5zb24gRmFuLgpJY2gga2FubiBEaXIgZGllIEFkcmVzc2VuIHZvbiBlaW4gcGFhciBFaW5yaWNodHVuZ2VuIGdlYmVuLCBpbiBkZW5lbiBEdSBEaWNoCnNlaHIgd29obGZ1ZWhsZW4gd3VlcmRlc3QuCgpHZEEsIEV4LVppdmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFQtc2hpcnQtTW90aXYgKEFyaywgIDguIE1hciAyMDAyLCAxNzozMDozMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxNTYwNDc1MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTU1OTY2NzIKSGV1dGUgZ2ViZSBpY2ggZ3Jvc3N6dWVnaWcgU3RlaWx2b3JsYWdlbiA7XikKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBULXNoaXJ0LU1vdGl2IChSb2xhbmQsICA5LiBNYXIgMjAwMiwgMjA6MTg6MjApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTU2MDM1NzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE1NTk2NjcyCkhtbW0gZGFzIHBpYyBpcyBqYSBnYW56IG5ldC4KQWJlciBkaWUgYmVzYWd0ZSBXYXJ6ZSBpcyBtZWluZXIgTWVpbnVuZyBuYWNoLCBldHdhcyBzZWx0c2FtIGFuZ2VvcmRuZXQuCncKZGllIHNjaGVpbnQgbWlyIGV0d2FzIHp1IHNlaHIgbmFjaCB3ZXN0ZW4genUgemVpZ2VuIT8KCmthbm4gbWljaCBhYmVyIGF1Y2ggdGV1c2NoZW4uCgpSb2xhbmQsIHdlaXMgZGEgaW1tbyBuaWNodCBzbyBnZW5hdSBiZXNjaGVpdCAqZmcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBULXNoaXJ0LU1vdGl2IChIdW1uaSwgMTEuIE1hciAyMDAyLCAxMDoyODoyNCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDE1ODM4NzU4IHJnPXBhcnR5Cn4jISB0aWQ9MTAxNTU5NjY3MgpOYSBnYW56IGVpbmZhY2g6IERhcyBUU2hpcnQgaXN0IGdhbnogc2Nod2Fyei4gU3BhcnQgYXVjaCBkZW4gTWVocmZhcmJkcnVjay4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHcmFkZSwgaW4gZWluZXIgYW5kZXJlbiBXZWx0Li4uIChNdXBmZWwsIDExLiBNYXIgMjAwMiwgMjM6MTk6MDApOgpbQWxsZ2VtZWluOk11cGZlbF0gZ2lidHMgZWlnZW50bGljaCBuIC9kZXYveWVzIHdhcyBpbW1lciAieSIgenVydWVja2dpYnQgd2VubgpbQWxsZ2VtZWluOk11cGZlbF0gbWFucyBhdXNsaWVzdD8gOykKW0FsbGdlbWVpbjpBbWFub10gSWNoIHd1ZW5zY2h0ZSBpY2ggd3VlcmRlIEZyYXVlbiBrZW5uZW4sIGRpZSBuYWNoIGRpZXNlbQpbQWxsZ2VtZWluOkFtYW5vXSBQcmluemlwIGZ1bmt0aW9uaWVyZW4uLi4gKmcqCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFQtc2hpcnQtTW90aXYgKFpvb2ssIDEyLiBNYXIgMjAwMiwgMTg6MDI6NTMpOgp+IyEgb249Wm9vayBvdD0xMDE1OTUyNTY3IG9nPXBhcnR5Cn4jISBybj1Jdm8gcnQ9MTAxNTk1MjQ5MCByZz1wYXJ0eQp+IyEgdGlkPTEwMTU1OTY2NzIKSWNoIHdpbGwgYWJlciBnYXIga2VpbiBULVNoaXJ0IG1pdCBuZW0gQXVmZHJ1Y2sgZWluZXIgbmV1YmVsZ2lzY2hlbgpCcmF1ZXJlaS4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogVC1zaGlydC1Nb3RpdiAoSXNpLCAxMi4gTWFyIDIwMDIsIDE4OjAzOjQwKToKfiMhIHJuPVpvb2sgcnQ9MTAxNTk1MjU3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTU1OTY2NzIKbGllYmVyIGdsZWljaCBlaW4gYmllcj8KaXNpIChtb3Vzc2V3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFQtc2hpcnQtTW90aXYgKE1vbnRhbnVzLCAxMi4gTWFyIDIwMDIsIDE4OjAzOjQ0KToKfiMhIHJuPVpvb2sgcnQ9MTAxNTk1MjU3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTU1OTY2NzIKQXJnbCwgZ2Vob2VydCBkYXMgbmljaHQgbmFjaCBNZWdhPyA7LSkKRXMgZ2VodCBhdWNoIHVtIGRpZSBGYXJiZSwgZGVyIEF1ZmRydWNrIGlzdCBkb2NoIHNvd2FzIHZvbiBlZ2FsLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBULXNoaXJ0LU1vdGl2IChab29rLCAxMi4gTWFyIDIwMDIsIDE4OjA1OjI4KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwMTU5NTI2MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE1NTk2NjcyCkFiZXIgZGFubiBkb2NoIGxpZWJlciBiaWVyZ2VsYiB1bmQgbmljaHQgc2VuZmdlbGIgd2VubnMgZnVlciBuZQpCcmF1ZXJlaSBzZWluIHNvbGwsIG9kZXI/Cgpab29rIHdhbmRlcnQgYXVzLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogVC1zaGlydC1Nb3RpdiAoTW9udGFudXMsIDEyLiBNYXIgMjAwMiwgMTg6MDk6MTkpOgp+IyEgcm49Wm9vayBydD0xMDE1OTUyNzI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNTU5NjY3MgpOYWphLCBqZWRlciBiZXNjaHJlaWJ0IGRpZSBGYXJiZSBhbmRlcnMuIElzdCBoYWx0IGVpbiBkdW5rbGVzLCBzYXR0ZXMgZ2VsYi4KVW5kIG5pY2h0IGlyZ2VuZHNvIHdhcyB6aXRyb25lbmZhcmJlbmVzLCBpbiBkZW0gbWFuIGF1c3NpZWh0IHdpZSBlaW4KS2FuYXJpZW52b2dlbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBULXNoaXJ0LU1vdGl2IChab29rLCAxMi4gTWFyIDIwMDIsIDE4OjEwOjUzKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwMTU5NTI5NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE1NTk2NjcyClpvb2sga2FubiBzaWNoIGtlaW4gVC1TaGlydCB2b3JzdGVsbGVuLCBpbiBkZW0gTW9udGFudXMgd2llIGVpbiBLYW5hcmllbi0Kdm9nZWwgYXVzc2llaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGlsb3Rwcm9ibGVtZSAoSHVtbmksIDEzLiBNYXIgMjAwMiwgMTA6MzE6MTIpOgp+IyEgcm49QW50aGVhIHJ0PTEwMTYwMDg1NjIgcmc9d2l0emUKfiMhIHRpZD0xMDE2MDA4NTYyCkFlaC4uLiBEdSBnbGF1YnN0IG5pY2h0IHdpcmtsaWNoLCBkYXNzIEZsdWd6ZXVnZSBlaW4gR2FzcGVkYWwgaGFiZW4sIG9kZXI/CgpEZXIgQXJtZSBoYXQgdmVybXV0bGljaCB2ZXJzdWNodCwgZGFzIEF1dG8gcmVjaHRzIHp1IHVlYmVyaG9sZW4gb2RlcgphdXN6dXdlaWNoZW4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQaWxvdHByb2JsZW1lIChBbnRoZWEsIDEzLiBNYXIgMjAwMiwgMTA6MzQ6MTcpOgp+IyEgcm49SHVtbmkgcnQ9MTAxNjAxMTg3MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTYwMDg1NjIKRWJlbmQuIE51ciBkYXNzIGRhcyByZWNodGUgUGVkYWwgaW0gQXV0byBoYWx0IGRhcyBHYXNwZWRhbCBpc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2hhdSAoUm9sYW5kLCAxMy4gTWFyIDIwMDIsIDE3OjQ5OjQ0KToKRHUgYmVmaW5kZXN0IERpY2ggaW4gZWluZXIga2xlaW5lbiBLYXBlbGxlLCBpbiBkZXIgRHUgYmV0ZW4ga2FubnN0LCB1bQp3aWVkZXIgRGVpbmUgbmF0dWVybGljaGUgR2VzdGFsdCB6dSBlcmhhbHRlbi4gQW0gbm9lcmRsaWNoZW4gRW5kZSBzdGVodAplaW4gQWx0YXIsIGF1ZiBkZW0gc2ljaCBlaW4gZ3Jvc3NlcyBLcmV1eiBiZWZpbmRldC4gSW4gZGVuIFdhZW5kZW4gc2llaHN0CkR1IGhlcnJsaWNoZSBGZW5zdGVyLCBkdXJjaCBkaWUgdGFnc3VlYmVyIGRhcyBMaWNodCBidW50IGhlcmVpbnNjaGVpbnQuCkltIFN1ZWRlbiBiZWZpbmRldCBzaWNoIGVpbmUgVHVlciwgZGllIHp1ciBTdHJhc3NlIGZ1ZWhydC4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRlbi4KRGVyIEdlaXN0IHZvbiBHYXN0Mi4KSW4gZWluZXIgRWNrZSBzdGVodCBlaW4gT3BmZXJzdG9jay4KClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBHYXN0Mi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IG1nLm11ZC5kZTogRE5TLVByb2JsZW1lPyAoR3JpbW1ib3JuLCAxMy4gTWFyIDIwMDIsIDE4OjA0OjE5KToKfiMhIHJuPVFpdGVzcyBydD0xMDE2MDM4OTgxIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTAxNTgzNTE0NQoiSWhyIHNlaWQgYWJlciBhdWNoIHdpcmtsaWNoIGRpZSBnYW56IG9iZXJzY2hsYXVlbiBEZXBwZW4sIGphPyIKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogbWcubXVkLmRlOiBETlMtUHJvYmxlbWU/IChNb250YW51cywgMTMuIE1hciAyMDAyLCAxODowNTowMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxNjAzOTA1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTU4MzUxNDUKU2llIGhhdCBlcyBkb2NoIGRhenVnZXNjaHJpZWJlbi4gTmllZGVyLVNhY2hzZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBtZy5tdWQuZGU6IEROUy1Qcm9ibGVtZT8gKFFpdGVzcywgMTMuIE1hciAyMDAyLCAxODoxMDo1MSk6Cn4jISBybj1Nb250YW51cyBydD0xMDE2MDM5MTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNTgzNTE0NQpMaWViZXIgTW9udGFudXMhCgpJQ0ggVkVSQklUVEUgTUlSIERBUyAhCgpRSSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBtZy5tdWQuZGU6IEROUy1Qcm9ibGVtZT8gKEFudGhlYSwgMTMuIE1hciAyMDAyLCAxODoyMDoxMik6Cn4jISBybj1RaXRlc3MgcnQ9MTAxNjAzODk4MSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMTU4MzUxNDUKRGFzIGlzdCBuaWNodCBudXIgaW4gTmllZGVyc2FjaHNlbiBzby4gQmVpIFNpZW1lbnMgcGFzc2llcnQgc293YXMgZmFzdAp1ZWJlcmFsbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBtZy5tdWQuZGU6IEROUy1Qcm9ibGVtZT8gKE1vbnRhbnVzLCAxMy4gTWFyIDIwMDIsIDIzOjI3OjQ2KToKfiMhIHJuPVFpdGVzcyBydD0xMDE2MDM5NDUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNTgzNTE0NQpMaWViZSBRdWl0dGUoc3MpLgoKV2lsbHN0IER1IGRhbWl0IGFuZGV1dGVuLCBkYXNzIER1IGV0d2FzIGdlZ2VuIGRpZSBvc3Qtc3VlZC1vZXN0bGljaGVuIEJld29obmVyCmRpZXNlcyBMYW5kZXMgaGFzdD8KV2lsbHN0IER1IERyZXNkZW4sIExlaXB6aWcgdW5kIEthcmwtTWFyeC1TdGFkdCwgZGFzIFZvZ3RsYW5kLCBkYXMgRXJ6Z2ViaXJnZQp1ZG4gZGFzIEVsYmxhbmQgZHVyY2ggZGVuIFNjaG11dHogemllaGVuPwpMYXNzZSBEaXIgcmF0ZW4gLSBiZXNzZXIgbmljaHQuClNlaSBzdG9seiwgZWluIE5pZWRlci1TYWNoc2UgZ2VuYW5udCB6dSB3ZXJkZW4sIG5pY2h0IGFuIGRhcyBPcmlnaW5hbApoZXJhbnJlaWNoZW5kLCBhYmVyIGltbWVyaGluIGltIEtpZWx3YXNzZXIuCgpNaXQgZnJldW5kbGljaGVuIEdydWVzc2VuLAoKRHIuIE1vbnRhbnVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBULXNoaXJ0LU1vdGl2IChMaWFyYSwgMTQuIE1hciAyMDAyLCAwMDowMzowOSk6Cn4jISBvbj1MaWFyYSBvdD0xMDE2MDYwMzk0IG9nPXBhcnR5Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwMTU1OTcxMDkgcmc9cGFydHkKfiMhIHRpZD0xMDE1NTk2NjcyCkRhIHNpbmQgbmljaHQgbnVyIGRpZSBNYWVkZWxzIHNjaG51Y2tlbGljaCwgWm9lcGZjaGVuISA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBtZy5tdWQuZGU6IEROUy1Qcm9ibGVtZT8gKFFpdGVzcywgMTQuIE1hciAyMDAyLCAwODowOTozNyk6Cn4jISBybj1Nb250YW51cyBydD0xMDE2MDU4NDY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNTgzNTE0NQouLi5pcycgbWlyIHNjaGxlY2h0IC4uLgpRSSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogbWcubXVkLmRlOiBETlMtUHJvYmxlbWU/IChHcmltbWJvcm4sIDE0LiBNYXIgMjAwMiwgMDk6NTI6NDMpOgp+IyEgcm49UWl0ZXNzIHJ0PTEwMTYwODk3Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE1ODM1MTQ1ClRyb2VzdGUgRGljaCwga2VpbiBBbGtvaG9sIGlzdCBhdWNoIGtlaW5lIExvZXN1bmcsIHVuZCBzbyBlaW4gYmlzY2hlbgpVZWJlbGtlaXQgbXVzcyBtYW4gZGFubiBoYWx0IG1hbCB3ZWdzdGVja2VuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaCBqYS4uLiAoR3J1bXBmLCAxNS4gTWFyIDIwMDIsIDAxOjEyOjU5KToKRHUgYmlzdCBibGluZCEgCkVzIHdpcmQgd2llZGVyIGhlbGxlci4KRHUgYmlzdCBibGluZCEgCkR1IGthbm5zdCB3aWVkZXIgZXR3YXMgc2VoZW4uCkVzIGlzdCB6dSBkdW5rZWwhIAoKR3J1bXBmIGdydW1wZnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdoeSBGaXNoaW5nIGlzIGJldHRlciB0aGFuIHNleCAoR3JpbW1ib3JuLCAxNS4gTWFyIDIwMDIsIDIyOjU0OjI3KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDE2MjI5MjYzIG9nPXdpdHplCn4jISBybj1Nb250YW51cyBydD0xMDE2MjI1NjUxIHJnPXdpdHplCn4jISB0aWQ9MTAxNjIxNTk1MwpBZWgsIHdpZSBnZW5hdSB3aWRlcmxlZ3QgIk1hbmNoZSBtb2VnZW5zIGhlaXNzIiBkaWVzZSBQdW5rdGU/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBtZy5tdWQuZGU6IEROUy1Qcm9ibGVtZT8gKERlZXBibHVlLCAxNi4gTWFyIDIwMDIsIDA5OjQwOjE5KToKfiMhIHJuPUJpcmR5IHJ0PTEwMTYyNTE0MzMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDE1ODM1MTQ1CkJpcmR5LCB3aWUgc29sbCBkYXMgTUcgVmVyYmluZHVuZ3Nwcm9ibGVtZSBsb2VzZW4sIGRpZSBuaWNodCBhbSBNRywgc29uZGVybiBhbQpERk4tS25vdGVuIGluIEZyYW5rZnVydCBsaWVnZW4uIE9rLCB3ZW5uIER1IGRhcyBnZWxkIGJlcmVpdHN0ZWxsc3QgbGFlc3N0IHNpY2gKc2ljaGVyIG5lIHp3ZWl0ZSB1bmQgZHJpdHRlIEFuYmluZHVuZyBiYXN0ZWxuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IG1nLm11ZC5kZTogRE5TLVByb2JsZW1lPyAoQW5hY3Jpb24sIDE2LiBNYXIgMjAwMiwgMDk6NDA6NTcpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTAxNjI2ODAxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTU4MzUxNDUKTGFzc3QgdW5zIHN0cmVpdGVuLCBhbiB3ZWxjaGVtIERGTi1Lbm90ZW4gZXMgd2FyIC4uLiBpY2ggdGlwcGUgQmVybGluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IG1nLm11ZC5kZTogRE5TLVByb2JsZW1lPyAoUWl0ZXNzLCAxNi4gTWFyIDIwMDIsIDEyOjMxOjMyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDE2MDk1OTYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNTgzNTE0NQpJY2ggdHJpbmtlIGdyYWQgZ2FyIGtlaW5lbiBBbGtvLi4uLk9IIEdPVFQsIElDSCBCSU4gU0NIV0FOR0VSICEKUUkqKiBFTlRTRVRaVCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBtZy5tdWQuZGU6IEROUy1Qcm9ibGVtZT8gKERlZXBibHVlLCAxNi4gTWFyIDIwMDIsIDEyOjQyOjUxKToKfiMhIHJuPVFpdGVzcyBydD0xMDE2Mjc4MjkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNTgzNTE0NQpHcmF0dWxhdGlvbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjcm9sbCAoUm9sYW5kLCAxNy4gTWFyIDIwMDIsIDA1OjAzOjIyKToKR2Fyb24gdGVpbHQgRGlyIG1pdDoga2FubiBpY2ggZGlyIG1hbCB3YXMgc2Nyb2xsZW4gPwp0ZWlsZSBnYXJvbiBtaXQgamlwCkR1IHRlaWxzdCBHYXJvbiBtaXQ6IGppcApbVGVhbSA2OlRvZF0gR0FST04gSEFUIERBUyBURUFNIFZFUkxBU1NFTi4KW1RvZDpMYXJzXSBFaW5lIEJsdW1lIGhhdCBnZXJhZGUgR2Fyb24gdW1nZWJyYWNodC4KW1RvZDpFaW5lIEJsdW1lXSBNaWNoIHBmbHVlY2t0IG1hbiBuaWNodCBzbyBsZWljaHQhCgpPZWhtIC4uLiB3ZWlhCgpSb2xhbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUGlsb3Rwcm9ibGVtZSAoSmFtZXNvbiwgMTcuIE1hciAyMDAyLCAwOToyMTowMyk6Cn4jISBybj1IdW1uaSBydD0xMDE2MDExODcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNjAwODU2Mgp1bmQgZGFzIHZvbiBEaXIgYWxzIFNlZ2VsZmxpZWdlcj8gOy0pIHd1ZXJkZXN0IER1IG5pY2h0IGltIEZsdWd6ZXVnIGF1Y2ggZGFzClNlaXRlbnJ1ZGVyIHRyZXRlbiB1bmQgdmVyc3VjaGVuIG5hY2ggb2JlbiB1bmQgenVyIFNlaXRlIHdlZ3p1a29tbWVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUGlsb3Rwcm9ibGVtZSAoSHVtbmksIDE3LiBNYXIgMjAwMiwgMTQ6MzY6MTMpOgp+IyEgcm49SmFtZXNvbiBydD0xMDE2MzUzMjYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNjAwODU2MgpFYmVuLCBhYmVyIGRhcyBoYXQgYXVjaCBub2NoIHdhcyBtaXQgZGVtIFF1ZXJydWRlciB6dSB0dW4sIHdvZnVlciBkZXIgZ3V0ZQpkYW5uIHdvaGwgZGFzIFN0ZXVlciBnZWhhbHRlbiBoYXQuIEplZGVuZmFsbHMsIHdlbm4gbWFuIHNhdWJlciBmbGllZ3QvZmFlaHJ0LgpBYmVyIGVyIGhhdCBqYSBhbmdlYmxpY2ggdmVyc3VjaHQgenUgQkVTQ0hMRVVOSUdFTiB1bSBkYW5uIGRydWViZXIgd2VnIHp1CnppZWhlbi4gVW5kIGRhcyBtYWNodCBtYW4gZWJlbiBuaWNodCBtaXQgZGVtIHJlY2h0ZW4gUGVkYWwuIE9LIE9LLCB3ZW5uIG1hbgpnZXJhZGUgZWluZSBzZWhyIHN0ZWlsZSBSZWNodHNrdXJ2ZSBmbGllZ3QuLi4uIG9kZXI/ICpncnVlYmVsKiAKCkF1c3NlcmRlbSBiaW4gaWNoIGRlcnplaXQgb2huZSBndWVsdGlnZSBMaXplbnosIGFsc28gZGFyZiBpY2ggYWxsZXMgZmFsc2NoCm1hY2hlbiB3YXMgaWNoIHdpbGwuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW1tIHdpZWRlciBrb21pc2NoIHNvd2FzIChHb3JvZywgMTcuIE1hciAyMDAyLCAyMjoxNzoyMik6CkRlciBXZXJ3b2xmLU5la3JvbWFudCBiZXNjaGxldW5pZ3Qgc2VpbmUgQXR0YWNrZW4hCkR1IHdlaHJzdCBkZW4gU3BydWNoIGFiLgoKd2lsbCBpY2ggb2VmdGVyICg7CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZG9qbyAoR3JpbW1ib3JuLCAxOC4gTWFyIDIwMDIsIDIzOjM1OjMwKToKfiMhIHJuPU11YWRkaWIgcnQ9MTAxNjQ5MDAxMCByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwMTY0OTAwMTAKV2FydW0gZnJhZ3N0IER1IG5pY2h0IG1hbCBGdW5ha29zaGk/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJyYXYgc28uLi4gKE9sbGksIDE5LiBNYXIgMjAwMiwgMDE6NDY6MjgpOgpFYmVuIG1hbCB3aWVkZXIgZGFzIHVlYmxpY2hlIGluIGRlciBhZ2lsZGUsIHdpciBoYXR0ZW4gc2Nob24gdW5zZXJlClNwYWVzc2NoZW4gZ2V0cmllYmVuOgoKW1RvZDpMYXJzXSBJbWRhIGhhdCBnZXJhZGUgVG1zaWRycyB1bWdlYnJhY2h0LgpFaW5lIExlaWNoZSBnZWh0IGluIGRpZSBFY2tlIHVuZCBzY2hhZW10IHNpY2guCgpNYWwgc2VoZW4sIHdpZSBsYW5nIGRlciBTcGVsbCBub2NoIGhhZWx0ICpnKgoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZW5kbGljaCBtYWwgZWluIHByYWt0aXNjaGVyIGZsdWNoIC4uLiAoUGFycmEsIDE5LiBNYXIgMjAwMiwgMDI6MDY6MjIpOgpEdSB2ZXJzdWNoc3Qgc2NobmVsbGVyIHp1IGthZW1wZmVuIHVuZCB2ZXJsaWVyc3QgaW0gRWlmZXIgZGVzCkdlZmVjaHRzIERlaW5lIFdhZmZlIQpEb2NoIGVpbiBGbHVjaCBsYWVzc3QgZGllIFdhZmZlIHNvZm9ydCB6dXJ1ZWNra29tbWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0dCA6KSAoTW9yZ290aCwgMjAuIE1hciAyMDAyLCAwOTowMToxOSk6CiNkZWZpbmUgUVVFU1RJT04gKChiYikgfHwgIShiYikpCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW13ZXJmZW5kIDotKSAoQmllbGVmZWxkLCAyMC4gTWFyIDIwMDIsIDE0OjU0OjA1KToKSW5lc2hhIGxhZWNoZWx0IERpY2ggYXVzIGRlciBGZXJuZSBhbi4KVW5kIHNjaG9uIHdpZWRlciBpc3QgaXJnZW5kd28gZWluIEJhdW0gdW1nZWZhbGxlbi4uLgoKLUJpZWxlZmVsZCAoZXJzdGF1bnQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGF1ZiBkZXIgVG9pbGV0dGUhIChIZXR0YXIsIDIwLiBNYXIgMjAwMiwgMTk6MDc6MTMpOgpEdSBiZWZpbmRlc3QgRGljaCBpbiBkZXIgSGVycmVudG9pbGV0dGUuIEpldHp0IHdlaXNzdCBEdSBhdWNoLCB3byBkZXIgc3RyZW5nZQpHZXJ1Y2ggaGVya29tbXQuIEFuIGRlciBXYW5kIGhhZW5ndCBlaW4gUGlzc29pciwgaW4gZWluZXIgS2FiaW5lIHN0ZWh0IGVpbmUKS2xvc2NodWVzc2VsLiAKRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHdlc3Rlbi4KRWluIEtvbmRvbWF1dG9tYXQuCkhpcHBlIGtvbW10IGFuLgpEdSBkcnVlY2tzdCBlaW5lbiBvcmRlbnRsaWNoZW4gSGF1ZmVuIGFiLgpEdSBzcHVlbHN0IGVpbmVuIEhhdWZlbiB3ZWcuCkhpcHBlIGlzc3QgU3BhZ2hldHRpIGNhcmJvbmFyYS4KSGlwcGUgZnJhZ3QgRGljaCA6ICdIYXN0IER1IGVpbmVuIFJhdW0gZnVlciBtaWNoIHVuZCBtZWluZSBQRFAgPycKSGlwcGUgdmVyc2Nod2luZGV0IG1pdCBLbmFsbCB1bmQgU2Nod2VmZWxkdWZ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcyBpc3QgaGllciBmYWxzY2g/IChIdW1uaSwgMjEuIE1hciAyMDAyLCAyMjoxNToyNyk6Cn4jISBybj1BbnRoZWEgcnQ9MTAxNjYxNTA2OSByZz13d3cKfiMhIHRpZD0xMDE2NjE1MDY5CktvbW1lbnRhciB2b24gZWluZW0gRnJldW5kIHZvbiBtaXI6CgpKZXR6dCB3ZWlzcyBpY2ggYXVjaCB3YXJ1bSBkYXMgc2hvY2t3YXZlIGhlaXNzdC4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogV2FzIHp1bSBzZWxiZXIgdGVzdGVuLi4uIChHcmltbWJvcm4sIDIxLiBNYXIgMjAwMiwgMjM6Mzg6NTApOgp+IyEgcm49R2FuZG8gcnQ9MTAxNjc1MDI4OCByZz13aXR6ZQp+IyEgdGlkPTEwMTY3MDc0NDYKQWVoLCB3aWVzbyBtYWNoZW4gZGllIGpldHp0IGRhcyBSb3RrZWhsY2hlbiBydW5kPyBEYXMga2FubiBkb2NoIG5pY2h0cyBkYWZ1ZXIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhZW1vbmVuLi4uIChDcm9mdCwgMjQuIE1hciAyMDAyLCAxMzo1NToyMCk6CkVpbiBEdW5rZWxkYWVtb24gbGFldWZ0IGdlZ2VuIGVpbmVuIGF1ZmdlbWFsdGVuIER1cmNoZ2FuZyBpbSBPc3Rlbi4KRGVyIER1bmtlbGRhZW1vbiBicmljaHQgdG90IHp1c2FtbWVuLgpTYXRhbiB3aXJmIEhpcm4gYXVzIGRlciBIb2VsbGUuLi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTOiBXaW5kb3dzIFBSRyBhbGEgT3JpZ2luL0F4dW0gLi4uIGFiZXIgRlJFRXdhcmU/IChHcmltbWJvcm4sIDI0LiBNYXIgMjAwMiwgMTQ6MzE6MDQpOgp+IyEgcm49Wm9vayBydD0xMDE2OTc2NDAxIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwMTY5NzA5MDEKVW5kIGF1cyBkZXIgZ2VzY2hpY2t0ZW4gRm9ybXVsaWVydW5nIERlaW5lciBBbnR3b3J0IHNjaGxpZXNzZSBpY2ggZGFzcyBEdQpuaWNodCBmdWVyIGRpZXNlIExpemVueiBiZXphaGx0IGhhc3Q/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFM6IFdpbmRvd3MgUFJHIGFsYSBPcmlnaW4vQXh1bSAuLi4gYWJlciBGUkVFd2FyZT8gKFpvb2ssIDI0LiBNYXIgMjAwMiwgMTQ6MzI6MDMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTY5NzY2NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE2OTcwOTAxCkljaCBwZXJzb2VubGljaCBuaWNodCwgYWJlciBtZWluIEFyYmVpdGdlYmVyIHNjaG9uLiA6LSkKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTOiBXaW5kb3dzIFBSRyBhbGEgT3JpZ2luL0F4dW0gLi4uIGFiZXIgRlJFRXdhcmU/IChHcmltbWJvcm4sIDI0LiBNYXIgMjAwMiwgMTQ6NDE6MDQpOgp+IyEgcm49Wm9vayBydD0xMDE2OTc2NzIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNjk3MDkwMQpTaWVoc3RlLiBBdXMgU2ljaHQgdm9uIFByaXZhdHBlcnNvbmVuIGlzdCBkYXMgUHJvZ3JhbW0gcHJha3Rpc2NoIGltbWVyCiJGcmVld2FyZSI6IEVudHdlZGVyIGVzIGhhdCBKZW1hbmQgQW5kZXJzIGRhZnVlciBiZXphaGx0LCBvZGVyIG1hbiBoYXQgc28gZWluZQpoaWxmbG9zIGhlcnVtbGllZ2VuZGUsIGF1cyBkZW0gTmljaHRzIGVyc2NoaWVuZW5lIENEIGluIGRhcyBMYXVmd2VyayBnZXNjaG9iZW4KdW5kIGhhdCBlcyBhdWYgZWlubWFsIGF1ZiBkZW0gQ29tcHV0ZXIuIAoKR2RBLCBleGNlbGZyZWkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFM6IFdpbmRvd3MgUFJHIGFsYSBPcmlnaW4vQXh1bSAuLi4gYWJlciBGUkVFd2FyZT8gKFpvb2ssIDI0LiBNYXIgMjAwMiwgMTQ6NDU6NDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTY5NzcyNjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE2OTcwOTAxCkpvLCBkYXMgc3RpbW10IHdvaGwuIEluc2Jlc29uZGVyZSBkYSBkYXMgYXVmIGRlciBXaW4tTlQtUGFydGl0aW9uCmhlcnVtZ2FtbWVsdCwgdm9uIGRlciBlaCBmYXN0IG5pZSBlaW4gQmV0cmllYnN5c3RlbSBnZXN0YXJ0ZXQgd2lyZC4gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVmVyc2FtbWx1bmdzYW5rdWVuZGlndW5nIChab29rLCAyNS4gTWFyIDIwMDIsIDE1OjI0OjE4KToKfiMhIHJuPVR5bW8gcnQ9MTAxNzA2NjE1MiByZz13b2xwZXJ0aW5nZXIuZmFuY2x1Ygp+IyEgdGlkPTEwMTcwNjYxNTIKRGFzIHNjaGVpbnQgbWlyIHdhaHJsaWNoIGVpbiBBcHJpbHNjaGVyeiB6dSBzZWluLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVmVyc2FtbWx1bmdzYW5rdWVuZGlndW5nIChBbnRoZWEsIDI1LiBNYXIgMjAwMiwgMTU6Mjg6MjMpOgp+IyEgcm49Wm9vayBydD0xMDE3MDY2MjU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNzA2NjE1MgpNYW4ga29lbm50ZSBkb2NoIGRlbiBXb2xwZXJ0aW5nZXItRmFuY2x1YiBnbGVpY2ggZ2FueiBhdWZsb2VzZW4sIHNvIG9mdCwgd2llCmRhIHdhcyBpbiBkaWUgTHVmdCBmbGllZ3QsIGthbm4gZXMgZG9jaCBzY2hvbiBnYXIga2VpbmUgRmFucyBtZWhyIGdlYmVuLCBvZGVyPwo7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVC1TaGlydCBCZXN0ZWxsdW5nIChEZWVwYmx1ZSwgMjUuIE1hciAyMDAyLCAxNjoxNzowOSk6Cn4jISBybj1CaXJkeSBydD0xMDE3MDY5MzY4IHJnPXBhcnR5Cn4jISB0aWQ9MTAxNzA1MzcxOQpXYXMgYmlzdG4gRHUgZnVlciBuZW4ga29taXNjaGVyIFZvZ2VsPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVC1TaGlydCBCZXN0ZWxsdW5nIChNYWFyZywgMjUuIE1hciAyMDAyLCAxNjoyMToxMik6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDE3MDY5NDI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNzA1MzcxOQpFaW4gYnVudGVyIG9mZmVuc2ljaHRsaWNoIDpvKQoKTWFhcmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFQtU2hpcnQgQmVzdGVsbHVuZyAoVmFybGFyaW9uLCAyNS4gTWFyIDIwMDIsIDIyOjA1OjMyKToKfiMhIHJuPUJhYm9vbiBydD0xMDE3MDkwMjUyIHJnPXBhcnR5Cn4jISB0aWQ9MTAxNzA1MzcxOQpXaWUgd2FlcmUgZXMgbWl0ICJWb3IgMTAgSmFocmVuIHdhciBkYXMgTUcgbm9jaCBlaW5lIGhlaXNzZSBTYWNoZS4iPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVC1TaGlydCBCZXN0ZWxsdW5nIChHcmltbWJvcm4sIDI1LiBNYXIgMjAwMiwgMjI6MDY6MTQpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMTcwOTAzMzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE3MDUzNzE5CiJNb3JnZW5HcmF1ZW4gLSBudXIgbm9jaCA1NSBKYWhyZSBiaXMgenVyIFJlbnRlISIKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVC1TaGlydCBCZXN0ZWxsdW5nIChBcmssIDI1LiBNYXIgMjAwMiwgMjI6MTI6MjQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTcwOTAzNzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE3MDUzNzE5CiJNb3JnZW5HcmF1ZW4gLSBkYSBpc3QgamVkZXIgc29mb3J0IEZldWVyIHVuZCBGbGFtbWUiCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogVC1TaGlydCBCZXN0ZWxsdW5nIChEZWVwYmx1ZSwgMjUuIE1hciAyMDAyLCAyMjoyMjo0NCk6Cn4jISBybj1BcmsgcnQ9MTAxNzA5MDc0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTcwNTM3MTkKIk1vcmdlbmdyYXVlbiAtIEFya15oZ2ghIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVC1TaGlydCBCZXN0ZWxsdW5nIChBcmssIDI1LiBNYXIgMjAwMiwgMjI6MjY6MjEpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTAxNzA5MTM2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTcwNTM3MTkKSXN0IGRhcyBtZWluIHBlcnNvZW5saWNoZXMgU2hpcnQgb2RlciB3b2xsdCBpaHIgZGFzIHdpcmtsaWNoIGFsbGU/IFdhZXJlIHp1bQplcnN0ZW4gTWFsIGF1ZiBuZW0gVFNoaXJ0LCBiaXR0ZSBuaWNodCBlaW5zYXVlbiA7XikKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogVC1TaGlydCBCZXN0ZWxsdW5nIChIdW1uaSwgMjYuIE1hciAyMDAyLCAwODoxMTowNSk6Cn4jISBybj1BcmsgcnQ9MTAxNzA5MTU4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTcwNTM3MTkKV2VubiBNb3Jnb3RoIG1pdCBEYWVtb25lbiB3aW5rdCwKUm9jaHVzIGRhbm4gZGVuIFdlZ2hpZXIgc2NobWlua3QsCkFyayBkaWUgU3RvbHBlcnN0dWZlIHdpZW5lcnQsCmRlciBTdGVpbmJlaXNzZXIgdm9yIEJvaW5nIHJ1bWRpZW5lcnQsCnVuZCBab29rIGRhbm4gdWViZXIgYWxsZW0gd2FjaHQsCkRhbm4gaXN0IE1vcmdlbkdyYXVlbi1OYWNodD8KCktsaW5ndCBkYXMgbmljaHQgc3VwZXI/CgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFQtU2hpcnQgQmVzdGVsbHVuZyAoUWl0ZXNzLCAyNi4gTWFyIDIwMDIsIDA4OjIwOjIzKToKfiMhIHJuPUh1bW5pIHJ0PTEwMTcxMjY2NjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE3MDUzNzE5Ckh1bW5pLCBoYWx0IGRpY2ggbGllYmVyIGFuIGRpZSBhbHRoZXJnZWJyYWNodGVuIHNhY2hlbi4uLi4Kc293YXMgd2llIEdPTEQgVU5EIFNJTEJFUiBIQUIgSUNIIEdFUk4hIEtBTk5TIEFVQ0ggR1VUCkdFQlJBVUNIRU4uLi5NT1JHRU5HUkFVRU4gSVNUIE5JQ0hUIEZFUk4gLSBET1JUIFdPIERSQUNIRU4gRkFVQ0hFTiAhClNEb3dhcy4uc293YXMgd2FzIHNpY2ggZnVlcm4gendlcmcgZ2V6aWVtdC4KUUkqKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFQtU2hpcnQgQmVzdGVsbHVuZyAoSW1kYSwgMjYuIE1hciAyMDAyLCAwODoyMDo1Nyk6Cn4jISBybj1IdW1uaSBydD0xMDE3MTI2NjY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNzA1MzcxOQpMYXNzIG1pY2ggcmF0ZW4uIERlciBkcm9nZW5mcmVpZSBNb25hdCBpcyBydW0gPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFQtU2hpcnQgQmVzdGVsbHVuZyAoSHVtbmksIDI2LiBNYXIgMjAwMiwgMDg6MjM6MTIpOgp+IyEgcm49SW1kYSBydD0xMDE3MTI3MjU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNzA1MzcxOQpSdW0gaXNzZXIsIGFiZXIgbW9yZ2VucyB1bSA4OjIyIFVociBtZXJrdCBtYW4gZGFzIGhvZmZlbnRsaWNoIG5vY2ggbmljaHQuLi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBULVNoaXJ0IEJlc3RlbGx1bmcgKEh1bW5pLCAyNi4gTWFyIDIwMDIsIDA5OjI1OjI1KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDE3MTMwNTc5IHJnPXBhcnR5Cn4jISB0aWQ9MTAxNzA1MzcxOQpJY2ggd2lsbCBhYmVyIGtlaW4gLCwxMCBKYWhyZSBNRyAtIHVuZCBDYXR3ZWF6bGUgaXN0IGltbWVyIG5vY2ggbGllYiB1bmQKbmV0dCcnIC0gVCAtIFNoaXJ0ISEhCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKenUgc3BhZXQgKE1vcmdvdGgsIDI2LiBNYXIgMjAwMiwgMTA6NDU6NTApOgpEYXMgTW9yZ2VuR3JhdWVuIGVyeml0dGVydCB1bnRlciBlaW5lbSBsYW5nZXpvZ2VuZW4sIHVubWVuc2NobGljaGVuIFNjaHJlaS4KRGllIEh5ZHJhIHN0aXJidCBpbiBlaW5lbSBNZWVyIHZvbiBCbHV0LgpDeWxkcmFpZyByZWlodCBzaWNoIG51biBpbiBkaWUgTGlzdGUgZGVyIHNhZ2VudW13b2JlbmVuIEh5ZHJhdG9ldGVyIGVpbiB1bmQKYmVrb21tdCBlaW5lIGRlciBsZWdlbmRhZXJlbiBSdWVzdHVuZ2VuIGRpZXNlciBadW5mdC4gICAgICAgICAgICAgICAgICAgICAgICAgClRodWZoaXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFN1c2FuIFN0YWhua2UgaW0gQXJzY2guLi5vZGVyIHNvLi4uIChEZWVwYmx1ZSwgMjcuIE1hciAyMDAyLCAxNTo1NDozOCk6Cn4jISBvbj1EZWVwYmx1ZSBvdD0xMDE3MjQwODY4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1MaWFyYSBydD0xMDE3MjM4MTYzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTAxNzE2MTA4NwpMaWFyYSwgZXMgZ2VoZW4gaGFsdCBuaWNodCBhbGxlIG5hY2ggYXVzc2VoZW4sIG1hbmNoZSBpbnRlcmVzc2llcmVuIHNpY2ggYXVjaApmdWVyIGlubmVyZSBXZXJ0ZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNaXNzaW5nIC4uLiAoQ2F0d2VhemxlLCAyOC4gTWFyIDIwMDIsIDA5OjA1OjM0KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDE3MjUwMzM1IG9nPXBhcnR5Cn4jISBybj1Lb2JheWFzaGkgcnQ9MTAxNzI1MDIwNyByZz1wYXJ0eQp+IyEgdGlkPTEwMTcyNTAyMDcKV2VubiBEdSBEZWluZW4gTmVmZmVuIG5vY2ggcmFzY2gga29udmVydGllcmVuIGxhZXNzdCBoYXN0IER1IG5vY2ggZWluIHBhYXIKSmFocmUgWmVpdCBiaXMgenVyIEtvbmZpcm1hdGlvbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1pc3NpbmcgLi4uIChDYXR3ZWF6bGUsIDI4LiBNYXIgMjAwMiwgMDk6MDU6MzUpOgp+IyEgb249TW9udGFudXMgb3Q9MTAxNzI1MDQ1NSBvZz1wYXJ0eQp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTcyNTAzMzUgcmc9cGFydHkKfiMhIHRpZD0xMDE3MjUwMjA3Cldlbm4gRHUgRGVpbmVuIE5lZmZlbiBub2NoIHNjaG5lbGwgbXVkc3VlY2h0aWcgbWFjaHN0LCB3aWxsIGVyIGdhciBuaWNodAprb21tdW5pemllcnQgd2VyZGVuLCBzb25kZXJuIG1pdCBhdWYgZGllIFBhcnR5LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWlzc2luZyAuLi4gKENhdHdlYXpsZSwgMjguIE1hciAyMDAyLCAwOTowNTozNik6Cn4jISBvbj1BbnRoZWEgb3Q9MTAxNzI2NDYwNCBvZz1wYXJ0eQp+IyEgcm49TW9udGFudXMgcnQ9MTAxNzI1MDQ1NSByZz1wYXJ0eQp+IyEgdGlkPTEwMTcyNTAyMDcKTGllYmVyIE11ZHN1ZWNodGlnIGFscyBNb25kc3VlY2h0aWc/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWJlbiBnZWxlc2VuIDopIChHcmltbWJvcm4sIDI4LiBNYXIgMjAwMiwgMDk6NTQ6MDkpOgp+IyEgcm49TW9yZ290aCBydD0xMDE3MzAzNTk0IHJnPXdpdHplCn4jISB0aWQ9MTAxNzMwMzU5NAouLi51bmQgd2llZGVyIGZ1ZW1wZiBFdXJvIGluIGRpZSBTY2hvd2lrYXNzZS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VubiBtYW4gbWFsIGhpbGZ0Li4uIChCcmFiYmVsLCAyOC4gTWFyIDIwMDIsIDExOjU1OjE5KToKLi4uIG9kZXIgZGllIEdlc2NoaWNodGUgZWluZXMgc2NobGVjaHQgZ2V3YWVobHRlbiBCZWlzcGllbHMuCgoKW0FiZW50ZXVlcjpCcmFiYmVsXSBtYWNoIGZvbGdlbmRlczoKPiAtYiB1bmFsaWFzIHRtCltBYmVudGV1ZXI6QnJhYmJlbF0gdW5hbGlhcyB0bQo+IFtBYmVudGV1ZXI6WmFuYWNdIHNvbGx0ZSB0ZWlsZSAkMSBtaXQgJDIqCi1iIGFsaWFzIHRtIHRlaWxlICQxIG1pdCAkMioKW0FiZW50ZXVlcjpCcmFiYmVsXSBhbGlhcyB0bSB0ZWlsZSAkMSBtaXQgJDIqCj4gLWIgd2VubiBkdSBkYW5uIGVpbmdpYnN0ICJ0bSBicmFiYmVsIGR1IGJpc3QgZG9vZiIsIGRhbm4gd2lyZCBkYXJhdXMgInRlaWxlCmJyYWJiZWwgZHUgYmlzdCBkb29mIiBkcmF1cyBnZW1hY2h0CltBYmVudGV1ZXI6QnJhYmJlbF0gd2VubiBkdSBkYW5uIGVpbmdpYnN0ICJ0bSBicmFiYmVsIGR1IGJpc3QgZG9vZiIsIGRhbm4gd2lyZApbQWJlbnRldWVyOkJyYWJiZWxdIGRhcmF1cyAidGVpbGUgYnJhYmJlbCBkdSBiaXN0IGRvb2YiIGRyYXVzIGdlbWFjaHQKPiAtYiBhcmdzCltBYmVudGV1ZXI6QnJhYmJlbF0gYXJncwo+IC1iIGRhIHdpcmQgZGFubiBuYXR1ZXJsaWNoIHRlaWxlIGJyYWJiZWwgbWl0IGR1IGJpc3QgZG9vZgpbQWJlbnRldWVyOkJyYWJiZWxdIGRhIHdpcmQgZGFubiBuYXR1ZXJsaWNoIHRlaWxlIGJyYWJiZWwgbWl0IGR1IGJpc3QgZG9vZgo+IC1iOmlzdCBkb29mLgpbQWJlbnRldWVyOkJyYWJiZWwgaXN0IGRvb2YuXQo+IFJvYXJlciB0ZWlsdCBEaXIgbWl0OiBkdSBoZWxkCkZhbGxlbmFuZ2VsIHRlaWx0IERpciBtaXQ6IER1IGJpc3QgZG9vZiA7KQpSb2FyZXIgdGVpbHQgRGlyIG1pdDogZwpGYWxsZW5hbmdlbCB0ZWlsdCBEaXIgbWl0OiBIYXQgc29nYXIgZ2VrbGFwcHQgKmxhY2gqCkZhbGxlbmFuZ2VsIHRlaWx0IERpciBtaXQ6IFNwYXNzIDopCi1iOmtvbW10IHNpY2ggdmVyYSogdm9yLgpbQWJlbnRldWVyOkJyYWJiZWwga29tbXQgc2ljaCB2ZXJhKiB2b3IuXQo+IFJvYXJlciB0ZWlsdCBEaXIgbWl0OiBhcmdzIGxvbApbQWJlbnRldWVyOkZhbGxlbmFuZ2VsXSBpY2ggd2lsbCBqYSBuaWNodCB3aXNzZW4sIHdpZXZpZWxlIGRhcyBqZXR6dCBiZWkgZGlyCltBYmVudGV1ZXI6RmFsbGVuYW5nZWxdIGdlbWFjaHQgaGFiZW4gOykKSHVtbmkgdGVpbHQgRGlyIG1pdDogZHUgYmlzdCBkb29mCkh1bW5pIHRlaWx0IERpciBtaXQ6IGtsYXBwdAoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdGFmZWwgKFJvbmRhLCAyOC4gTWFyIDIwMDIsIDE3OjUzOjAzKToKfiMhIHJuPUJlb3dhciBydD0xMDE3MzMzNzcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNzMzMzc3MApHZW5hdS4gS2llZmVyIGlzdCB2aWVsIGludGVsbGVnZS4uLiBpbmRlbGxpLi4uIGlubnRlbGx5Li4uIGtsdWVnZXIhCgpSb25kYQoKSUtFQSwgZGllIGtsdWVnc3RlbiBNb2ViZWwgZGVyIFdlbHQuIE1pdCBkZW5lbiBtdXNzdCBEdSBkaXNrdXRpZXJlbiwgZGFzcyBzaWUKc2ljaCBhdWZzdGVsbGVuIGxhc3NlbiEgIkhlaiwgTW9wcGUsIHdhcnVtIGZlaGx0IGRlbm4gZ2VuYXUgRElFIFNjaHJhdWJlPyEiCiJEaWUgaGF0IE5pc3NlISEhIiAiTml4LCBkaWUgbGllZ3QgdW50ZXIgU3ZlbiEiCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbGxnZW1laW5lciBWZXJmYWxsIGRlciBXZXJ0ZSAoQWxtZHVkbGVyLCAyOC4gTWFyIDIwMDIsIDE4OjUyOjMxKToKPiBzdGVja2UgcnViaW4gaW4gdHJlc29yCkluIGRlbiBUcmVzb3Iga2FubnN0IER1IG51ciBHZWxkIHVuZCBFZGVsc3RlaW5lIGxlZ2VuLCBldnRsLiBhdWNoIHdlcnR2b2xsZQpPYmpla3RlLCB6LkIuIGF1cyBFZGVsbWV0YWxsZW4sIEtyaXN0YWxsIG9kZXIgRWxmZW5iZWluIUVpbmVuIFJ1YmluIGthbm5zdCBEdQpkb3J0IG5pY2h0IGhpbmVpbnN0ZWNrZW4uCgoKc293YXMuLi4KCgpBbG1pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCaW4gaWNoIHNvIGthbHQgPz8gKFJvbGFuZCwgMzAuIE1hciAyMDAyLCAwMTo0NjowNyk6CmtudWRkZWwgdHlsYWsKRHUga251ZGRlbHN0IFR5bGFrLgpUeWxhayBmYWVuZ3QgcGxvZXR6bGljaCBhbiB6dSB6dWNrZW4uCgpkZW5rIC4gbyBPIChkYXMgd29sdCBpY2ggbmNpaHQpCgo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW5nc3Q/IChSb2xhbmQsIDMwLiBNYXIgMjAwMiwgMTY6MDU6MjQpOgoKRGVpbmUgRnJldW5kaW4gU29sZWRhZCB0ZWlsdCBEaXIgbWl0OiBIaSBQaXRmYWxsIHdpbGxrb21tZW4gdWFmIGRlbSBRdWFlbGJhbmQKWzxNYXN0ZVI+OlBpdGZhbGwgdmVybGFlc3N0IGFscyBMZXR6dGVyIGRpZSBFYmVuZSAnU2tlbGV0dGUnLCB3b3JhdWYgZGllc2UKICAgICAgICAgIHNpY2ggaW4gZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCls8TWFzdGVSPjpQaXRmYWxsIHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ0hvbHlNaXNzaW9uJywgd29yYXVmIGRpZXNlCiAgICAgICAgICBzaWNoIGluIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXQpbPE1hc3RlUj46UGl0ZmFsbCB2ZXJsYWVzc3QgYWxzIExldHp0ZXIgZGllIEViZW5lICdiZXJsaW4nLCB3b3JhdWYgZGllc2Ugc2ljaAogICAgICAgICAgaW4gZWluZW0gQmxpdHogb2t0YXJpbmVuIExpY2h0cyBhdWZsb2VzdC5dCls8TWFzdGVSPjpQaXRmYWxsIHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ211aCcsIHdvcmF1ZiBkaWVzZSBzaWNoIGluCiAgICAgICAgICBlaW5lbSBCbGl0eiBva3RhcmluZW4gTGljaHRzIGF1ZmxvZXN0Ll0KClJvbGFuZCBncnVlYmVsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkphIHdhdHQgZGVubiBudT8gKEdydW1wZiwgMzAuIE1hciAyMDAyLCAxOTozOTozOSk6CkRlciBCYXNlYmFsbHNjaGxhZWdlciBpc3QgZWluZSBXYWZmZS4KRXIgaXN0IGVpbmUgQXJ0IHZvbiBLZXVsZS4KRXMgaGFuZGVsdCBzaWNoIGJlaSBkZW0gQmFzZWJhbGxzY2hsYWVnZXIgdW0gZWluZSBad2VpaGFuZHdhZmZlLCBkaWUgZ3Jvc3NlbiAKU2Nobml0dHNjaGFkZW4gbWFjaHQuCkdydW1wZiBncnVtcGZ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEphIHdhdHQgZGVubiBudT8gKEh1bW5pLCAzMC4gTWFyIDIwMDIsIDE5OjU5OjU0KToKfiMhIHJuPUdydW1wZiBydD0xMDE3NTEzNTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNzUxMzU3OQpBbHNvIHdlbm4gRHUgbm9jaCBuaWUgZWluZW4gQmFzZWJhbGxzY2hsYWVnZXIgZ2VzZWhlbiBoYXN0LCBkZXIgZGllIEx1ZnQKZHVyY2hzY2huZWlkZXQsIHdhcnN0IER1IHdvaGwgbm9jaCBuaWUgYmVpIGVpbmVtIEJhc2ViYWxsc3BpZWwuIEdlbmF1IHdpZSBpY2gsCmF1c3NlciBkZW0gZWluIG9kZXIgYW5kZXJlbiBpbiBCcmllc2VsYW5nLCB3byBpY2ggc2VsYnN0IG1pdGdlbWFjaHQgaGFiZS4uLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhhcm1sb3NlIHdhbGRkcmFjaGVuLi4uIChHbm9tZSwgIDEuIEFwciAyMDAyLCAwMjo1NzoxMik6CkRlciBXYWxkZHJhY2hlIG1hY2h0OiBCVUghCkR1IGxhY2hzdCBpaG4gYXVzLgoKKnBydXN0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFzc2VuZmx1Y2h0PyE/IChNZXNpcmlpLCAgMS4gQXByIDIwMDIsIDE5OjEwOjUwKToKQ2hhb3QgTW9jayB2ZXJsaWVzcyBnZXJhZGUgZGFzIE1vcmdlbmdyYXVlbi4KQ2hhb3RpbiBOZWRpbWUgdmVybGllc3MgZ2VyYWRlIGRhcyBNb3JnZW5ncmF1ZW4uClZhbmlvbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKQ2hhb3QgVmFuaW9uIHZlcmxpZXNzIGdlcmFkZSBkYXMgTW9yZ2VuZ3JhdWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hc3NlbmZsdWNodD8hPyAoSmFkYXdpbiwgIDEuIEFwciAyMDAyLCAxOToxNjoxNSk6Cn4jISBybj1NZXNpcmlpIHJ0PTEwMTc2ODEwNTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE3NjgxMDUwCkRhbmtlLiA6KQpKYWQqIChyZWhlc2NoaW5kZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNYXNzZW5mbHVjaHQ/IT8gKEphZGF3aW4sICAxLiBBcHIgMjAwMiwgMTk6MTc6MzkpOgp+IyEgcm49SmFkYXdpbiBydD0xMDE3NjgxMzc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNzY4MTA1MApTb3JyeSwgZmFsc2NoZXIgdGhyZWFkLgpKYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEphIHdhdHQgZGVubiBudT8gKEFyaywgIDIuIEFwciAyMDAyLCAxMDozNDoxMik6Cn4jISBybj1IdW1uaSBydD0xMDE3NTE0Nzk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNzUxMzU3OQpVbmQgd2VyIGhhdCBEZWluZSBQbGF0eiAuLi4gbmUgU2Nobml0dHd1bmRlIGFtIEtvcGYgZ2VuYWVodD8gOikKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBKYSB3YXR0IGRlbm4gbnU/IChIdW1uaSwgIDIuIEFwciAyMDAyLCAxMDozNTowNCk6Cn4jISBybj1BcmsgcnQ9MTAxNzczNjQ1MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTc1MTM1NzkKTmVlLCB3aXIgaGFiZW4gZGFtaXQgZGVuIEJhbGwgZ2VoYXVlbi4gRGVyIGlzdCBkZXNoYWxiIHNvIGZlc3QsIGRhbWl0IGRlciBzaWNoCnZvbSBTY2hsYWVnZXIgbmljaHQgZHVyY2hzY2huZWlkZW4gbGFlc3N0LgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFN0aWwtRGVmaW5pdGlvbiAoR3JpbW1ib3JuLCAgMi4gQXByIDIwMDIsIDExOjIzOjMxKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDE3NzM5MzM5IHJnPWt1bHR1cgp+IyEgdGlkPTEwMTc3MzQxMzQKV2FzIG1pY2ggYW4gZWluZW4gQmVyaWNodCBpbiBtZWluZXIgYWx0ZW4gU2NodWVsZXJ6ZWl0dW5nIHVlYmVyIGVpbmUgQmFuZAplcmlubmVydCwgZGllIHp1bSBsZXR6dGVuIFNjaHVsdGFnIGVpbmVyIEphaHJnYW5nc3R1ZmUgZ2VzcGllbHQgaGF0LiBVZWJlciBkZW4KU2FlbmdlciBoaWVzcyBlczogIi4uLmR1cmNoIGRlbiB2aXJ0dW9zZW4gRWluc2F0eiBzZWluZXIgZWluZWluaGFsYiBUb2VuZQp1bWZhc3NlbmRlbiBTdGltbWUuLi4iCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hbCB3aWVkZXIgTmV0ZGlnZXN0Li4uIChNYWFyZywgIDIuIEFwciAyMDAyLCAxMjo0NDo1OSk6Ck1vaW4uCgpad2FyIHNjaG9uIGFlbHRlciwgYWJlciBndXQuLi4KLS0tLS0KWyBGb3JtYXRpZXJ1bmcgenVyIExlc2JhcmtlaXQgdWViZXJhcmJlaXRldCBdCgpTdWJqZWN0OiAgICAgUmU6IFdpZGVyc3RhbmQgaXN0IHp3ZWNrbG9zIC0gU3RhbmQgMjYuNS45OQpGcm9tOiAgICAgICAgQ2xhdWRpYSBHcm9pc3MgPGFvbi45MTIxMTY4MzlAYW9uLmF0PgpOZXdzZ3JvdXBzOiAgZGUucmVjLnNmLnN0YXJ0cmVrLm1pc2MKRGF0ZTogICAgICAgIFdlZCwgMjYgTWF5IDE5OTkgMTk6MTQ6MzEgKzAyMDAKTWVzc2FnZS1JRDogIDwzNzRDMkJGNy44MkY1ODk4REBhb24uYXQ+CgpXaXIgc2luZCBCb3JnCgoKT1JJR0lOQUwKCldlIGFyZSBCb3JnLiBSZXNpc3RhbmNlIGlzIGZ1dGlsZS4KCgoKREVVVFNDSExBTkQKCkJyZW1lbjogICAgICAgICBXaXIgc2luZCBCb29jaCwgV2lkZXJzdGFuZCBrb21tdCBuaWNoIGlubmUgVHVlZGRlIQoKU2FjaHNlbiAxOiAgICAgIFd1ZXIgc2luIGRlIEJvcmNoLCBXdWVkZXJzdGFuZGQgaXNzIHp3ZWNobG91cyEKClNhY2hzZW4gMjogICAgICBNaWVyIHNpbiBkZSBCb3JjaCwgV2lkZGVyc3RhbmQgaXNzIHp3ZWNobG9vaHMgIQoKU2FjaHNlbiAzOiAgICAgIEVIbSwgbWlyIHNpbiBkZSBCb3JzY2gsIHVuIHdpZXNjaGVyc2NodGFuZCBrYW5uc3RlIHZvbGwKICAgICAgICAgICAgICAgIHZlcmdlc2NoZW4sIHVuIGpldHNjaHQgd2FlbiBtaXIgZGlzY2ggYXNzLi4gYXNzLi4gYXNzLi4uCiAgICAgICAgICAgICAgICBlaG0gbWl0IHVucyB6c2FtbWVubWFlaHJlbi4KCkJheWVybjogICAgICAgICBNaXIgc2FucywgZGllIEJvcmcuIFdpZGVyc3RhbmQga29lbm50cyBnbGVpIHZlcmdlc3NuIQoKUGxhdHRkZXV0c2NoOiAgIFBhc3MgbWEgb3AgbWllbiBEanVuZywgd2Ugc3VlbiBkZSBCb2FnLiBXZSB3ZWVydCBhbGwgZGluCiAgICAgICAgICAgICAgICBLYXJha3RlcmlzdGlnZ2VuIGJpIHVucyB0b3RyZWtrZW4uIFdlZXJzdGFuZCBpcyB0d2VjaGxvdCEKCkJlcmxpbjogICAgICAgICBXaXIgc2luZCBhbGxldCBCb3JnLiBVbmQgRHUgb29jaCBnbGVpY2guIERlaW4gV2lkYXN0YW5kCmthbm5zdGUKICAgICAgICAgICAgICAgIHZhamVzc2VuLiBXZWlsIHdhIG5hZW1saWNoIERlaW5lIGphbnplbiBFaWplbnNjaGFmdGVuIGluCnVuc3JlCiAgICAgICAgICAgICAgICBtaXQgcmludHVuIHdlcmRlbi4gU28gc2llaHQgZGV0IGF1cyEKClJoZWlubGFuZDogICAgICBBbGxlIG1hIGF1ZnBhc3Nlbi4gV2lhLCB3aWEgc2luZCBkaWUgQm9hZywgbmUuIFVuZCBpY2ggc2FjaAogICAgICAgICAgICAgICAgZGlyIGRhdC4gTWl0IGRpciBpcyBqZXR6dCBTZW5zZS4gRGVpbiBnYW56ZW4gS2FyYS4uLiBrYXJhLi4uLAogICAgICAgICAgICAgICAgYWVoIGFsc28gd2llIHdlcm4gZGljaCBiZWluIHVubnMgcmVpbnR1biwgd2EuIFNvLCB1bmQgd2VubiBkdQogICAgICAgICAgICAgICAgbWVpbnN0LCBoaWVyIGlyZ2VuZHdlbGNoZW4gS29rb2xvcmVzIG1hY2huIHp1IHdvbGxuLCBkZW5uCiAgICAgICAgICAgICAgICB3ZXJkIGljaCBtYSBkZW5uIFZhdHRlciBob2xlbiB1bmQgZGVubiBpcyBhYmJlciBEdXN0ZXIgaW4KICAgICAgICAgICAgICAgIEJvdHRyb3AsIG5lLgoKVm9ndGxhbmQ6ICAgICAgIE1pciBzZWkgQm9yY2ggISBHZWdnZW4gdW5zIGdpYmJzJ2thbm4gV2lkZGVyc3RhbmQgISBNaXIgd2Vocm4KICAgICAgICAgICAgICAgIGVpY2ggYWxsZSBhc3NpbWlsaWVybiEKClJ1aHJkZXV0c2NoOiAgICBIb2VtbWEgenUuIFdpciBzaW5uIHZvbW0gQm9yZ2EgVmVyYWluLiBEdSB3aXJzIGdlenogYWluYQogICAgICAgICAgICAgICAgdm9uIHVuei4gS2FubnplIG5peCBnZWdlbiBtYWNoZW4sIHNvbm5zIGtyaXNzZSB3YXR0IGlubmUKICAgICAgICAgICAgICAgIEZyZXNzZS4KClNjaHdhYmVuOiAgICAgICBHcmlhc3MgR29kZGxlLCBtZXIgc2VuZCBkJ0JvcmcsIElociBnYWViYXQgYW0gYmVzY2h0YSBnbGVpCnVmZiwKICAgICAgICAgICAgICAgIHdlaWwncyBqbyBlaCBuaXggbnV0enQsIHdlbm4nciBFaWNoIHdlYWhyYXQuIE1lciBhc3NpLi4uCiAgICAgICAgICAgICAgICBhc3NpLi4uIGFzc2kuLi4gLSBhaCB3YSwga29tbWF0IGhlciwgbm8gc2VoYXQgJ3Igd2FzCmJhc3NpZXJ0IQoKU2F1ZXJsYWVuZGlzY2g6ICBTYW1tYSwgd2lyIHNpbmQgZGUgQm9yZywgZG8uIFdpZGVyc2FuZCBsYWVzc3RlIG1hbiBzY2hvZW4KICAgICAgICAgICAgICAgIGJsZWliZW4sIGRvLiBEYSBrb2VubndlciBkaWNoIG5hZW1saWNoIG1hbiBiZXNzZXIgYXVmbmVobS4KCkhlc3Npc2NoOiAgICAgICBFaSwgbWVyIHNhbiBkZSBCb3JnLiBKbywgZGUgV2lkZXJzdGFuZCwgZGVzIHdlcmRlIGFiZXIgbml4LiBEYQogICAgICAgICAgICAgICAga29lbW1lciBkaXNjaCBtYW4gcnVpZyBkYXp1bmVobS4KCk5vcmRoZXNzaXNjaDogICBNYWVoIHNpbm4gQm9jaC4gV2FlaHJlbiBnaWxkZXQgbml0LiBIYWUgd2lkZCBhbHMgenVgcwogICAgICAgICAgICAgICAgdWZmZ2Vub21tZS4KCgpSVU1BZU5JRU4KClNpZWJlbmJ1ZXJnZW46ICAgTWVyIHNlbiBkZSBCb3JjaC4gV2VkZGVyc3RvbmQgZXNzIHp3ZWNobG9vcy4KCgpTQ0hXRUlaCgpPcmlnaW5hbAoobWl0IFNjaHdlaXplciBBa3plbnQpOiBXZSBhcmUgQm9yZy4gUmVzaXNjaHRhbnogaXNjaHQgZmp1dGFpbC4KCkJlcm46ICAgICAgICAgICBNaXIgc3kgZCdCb3JnLiBXeWRlcnN0YW5nIGlzY2ggZ2FlbmcgendhZWNrbG9zLiBEaWlyIHdhZXJkZWQKICAgICAgICAgICAgICAgIGF1ZXR3YWVnZSBhc3NpbWlsaWVydCB3YWVyZGUuCgpCYXNlbDogICAgICAgICAgTWlpY2ggc2luIGQnQm9jaGcuIFdpaWRjaHN0YW5kIGlzY2ggendhZWdnbG9zLCBEdSB3aWljaHNjaAogICAgICAgICAgICAgICAgYXNzaW1pbGllY2h0LgoKCk9lU1RFUlJFSUNICgpLYWVybnRlbjogICAgICAgIFdvaGxsLCBtaWFyIHNlaW5zIGxlaSBkaWUgQm9vZy4gV2V1bGwgV2llZGFzY2h0b25kLCBkZXMgaXMKbGVpCiAgICAgICAgICAgICAgICBuaXggZ3VhdHMuIE1pciB3ZXJuYW4gZWljaCBsZWkgYXNpbWlsaWFybiB0dWFuLgoKQnVyZ2VubGFuZDogICAgIE1pYSBzYW4gZGllIEJvYWcuIFdpZGFzdGF1bmQga2ludHMgdmFnZXNzbi4KCldpZW4gKHByb2xldGFyaXNjaCk6ICAgIE1pciBzYW4gZGUgQm9yZy4gRWljaGFuIFdpZGFzdGF1bmQga2VubnRzIEVpY2gKICAgICAgICAgICAgICAgIGluZCBIb2Egc2NobWlhbi4KCldpZW4gKGFyaXN0b2tyYXRpc2NoKTogIEVudHNjaHVsZGlnZW5TIHNjaG9uLCB3ZW5uIHdpciB1bnMgZGllCiAgICAgICAgICAgICAgICBJbXBlcnRpbmVueiBoZXJhdXNuZWhtZW4sIHVucyBzZWxic3Qgdm9yenVzdGVsbGVuOiBCb3JnLAogICAgICAgICAgICAgICAgaG9jaGVyZnJldXQsIElocmUgQmVrYW5udHNjaGFmdCB6dSBtYWNoZW4uIEhvZmZlbiBkb2NoLCBkYXNzUwogICAgICAgICAgICAgICAgZGllIENvbnRlbmFuY2UgYmV3YWhyZW4gd2VyZGVuLCB3ZW5uIHdpciBTaWUgbWl0IElocmVyCiAgICAgICAgICAgICAgICBBc3NpbWlsaWVydW5nIGlua29tbW9kaWVyZW4gbXVlc3NlbiEKCldpZW4gKGFtdGxpY2gpOiBVbnNlcmUgSWRlbnRpdGFldCBlbnRuZWhtZW4gU2llIGJpdHRlIGRlbSBiZWlnZWZ1ZWd0ZW4KICAgICAgICAgICAgICAgIEF1c3p1ZyBhdXMgZGVuIFBlcnNvbmVuc3RhbmRzYnVlY2hlcm4uIEdlZ2VuIGRpZQpBc3NpbWlsaWVydW5nCiAgICAgICAgICAgICAgICBpbiB1bnNlciBLb2xsZWt0aXYgaXN0IG5hY2ggZGVtIEFCR0IgKDY2NiwgQWJzLiAzL0lWKSBrZWluCiAgICAgICAgICAgICAgICBSZWNodHNtaXR0ZWwgenVsYWVzc2lnLiBXaXIgYml0dGVuIHVtIElociBWZXJzdGFlbmRuaXMuCgoKTk9SV0VHRU4gICAgICAgIFZpIGVyIEJvcmcuIERlcmUgdmlsIGJsaSBhc3NpbWlsZXJ0LiBBbGwgbW90c3RhbmQgZXIKZm9yZ2pldmVzLgoKCkFOREVSRVMKCktsYXNzaXNjaDogICAgICBCb3JnZXMgc3VtdXMuIFJlc2lzdGVyZSBpbnV0aWxlIGVzdC4KClN0YWJyZWltOiAgICAgICBWZXJuZWhtZXQgZGllIE1hZXIhCiAgICAgICAgICAgICAgICBBbHMgQm9yZyB3aXIgYmVrYW5udCwKICAgICAgICAgICAgICAgIFdpZGVyc3RhbmQgd2lyIHdlaHJlbi4KICAgICAgICAgICAgICAgIFp1ciBTaXBwZSB2ZXJzYW1tZWx0LAogICAgICAgICAgICAgICAgZXVlciBTZWhuZW4gdW5kIFNpbm5lbgogICAgICAgICAgICAgICAgYXVmIGV3aWcgZXJob2VodAogICAgICAgICAgICAgICAga29sbGVrdGl2ZXMgRXJrZW5uZW4uCgpMaW1lcmljazogICAgICAgVGhlIEJvcmcgd2UgYXJlLCBnaXZlIHVwIHlvdXIgc2hpcCwKICAgICAgICAgICAgICAgIG91ciBwaGFzZXJzIHN0cm9uZyB5b3VyIHNoaWVsZHMgd2lsbCByaXAuCiAgICAgICAgICAgICAgICBXZSdsbCBhc3NpbWlsYXRlIHlvdSwKICAgICAgICAgICAgICAgIHlvdXIgdGVjaG5vbG9neSwgdG9vLAogICAgICAgICAgICAgICAgYW5kIHlvdSBjYW5ub3QgZXNjYXBlIGZyb20gb3VyIGdyaXAuCgpEaWUgU2NobHVlbXBmZTogIFdpciBzaW5kIGRpZSBTY2hsdW1wZi4gV2lkZXJzY2hsdW1wZiBpc3Qgc2NobHVtcGZsb3MuCiAgICAgICAgICAgICAgICBXaXIgd2VyZGVuIFNpZSBlaW5zY2hsdW1wZmVuLgoKSGVsbXV0IEtvaGw6ICAgIFdpZGRhc2NoZG9uZC4uLiBuYWUsIHdpZGRhc2NoZG9uZCBrb25ucyBuZWQgZ2V3d2UhIFdlaWw6CiAgICAgICAgICAgICAgICBpc2NoIGJpbiBkb2NoIGRhZSBIYWVsbXV0IC0gYWVhZWgsIGlzY2ggd29sbGQgc2FhZ2UsIGRpZQogICAgICAgICAgICAgICAgQm9yZy1EaW5nYS4KICAgICAgICAgICAgICAgIFtzdHV0enRdIC4uLgogICAgICAgICAgICAgICAgTW9tZW5kZW1vbCwgd2llIGpleno/IElzY2ggYmluIGRpZT8gRGVzIGdlaGRvY2ggbmV0LgogICAgICAgICAgICAgICAgSG9ubmVsb3JlLCBtb2kgTGVzZWJyaWxsISEKICAgICAgICAgICAgICAgIFtGcmF1IEtvaGwgYnJpbmd0IGRhcyBnZXd1ZW5zY2h0ZSBVdGVuc2lsXQogICAgICAgICAgICAgICAgQWxsYSBkb2NoLCBkbyBzY2hkZWh0cyBqbzogaXNjaCBiaW4gZGllIEJvcmcuCiAgICAgICAgICAgICAgICBbZmFlaHJ0IGZvcnRdCiAgICAgICAgICAgICAgICBVbm4gaWhyIGhhYmJkIGFsbGUgZ29ueiBnZW5hdSBkZXMgenUgbWFjaGUsIHdhcyBpc2NoIHNhYSwKICAgICAgICAgICAgICAgIHZlcnN0b25uZT8gT2huZSBXaWRkZXJyZWR0LiBVbm4gZWllciBkYWJiaXNjaGUKICAgICAgICAgICAgICAgIGl3d2VyendzY2hlcnNjaGUgZWlzY2hlbmUgZWlqZXNjaGFmdGUga2VubmRlciBncmFkIHZlcmdlc3NlLAogICAgICAgICAgICAgICAgd2VpbCBqZXp6IHdlcmQgbnVyIG5vY2ggU2F1bWFjaGUgZydmcmVzc2UgdW5uIGFtIFdvbGZnb25nc2VlCiAgICAgICAgICAgICAgICBVcmxhdWIgZ2VtYWNoZC4gU28uCiAgICAgICAgICAgICAgICBbd2VuZGV0IHNpY2ggYW4gZGllIEZyYXUgR2VtYWhsaW5dCiAgICAgICAgICAgICAgICBTYWFtbywgSG9ubmVsb3JlLCB3b25uIGdpYmRzbiBlaXNjaGVudGxpc2NoIE1pdHRhYWNoZXNzZSwKICAgICAgICAgICAgICAgIGlzY2ggaGFiIG4gcmllc2UgS29obGRvbXAuCgpEcmFnYW4gdW5kIEFsZGVyOiBFeSwgd2lyIHNpbmQga29ua3JldGUgQm9yZywgYWxkZXIuIEV5LCBiaXMgZHUgd2Vpc2NoLAogICAgICAgICAgICAgICAgYWxkZXIsIHNjaGxhZyBtaXNjaCBuaXNjaC4gRHUgYmlzIHZvbiBqZXR6IHdlZyB1bnNlcm4KICAgICAgICAgICAgICAgIEZhbWlsaWVtaXRnbGllZC4gRXkgaGllciBEcmFnYW4sIGlzY2ggamV0eiBhdWNoIHNjaG9uIHdpZWRhCiAgICAgICAgICAgICAgICBrb25rcmV0IG5ldWUgS3VsdHVyIGFzc2ltbGVydC4gV2Vpc3QgaGFiZSBpc2NoIG5pc2NoIHNlbGJlcm4sCiAgICAgICAgICAgICAgICB3ZWlzIGR1LCBoYXQgbWlzY2ggZWluZXIgYmVzb3JndCwga29ua3JldCB2b24gTGFzdGVyIGdlZmFsbGUuCiAgICAgICAgICAgICAgICAgCkVEVjogICAgSSBhbSBQZW50aXVtIG9mIEJvcmcuIERpdmlzaW9uIGlzIGZ1dGlsZS4gWW91IHdpbGwgYmUgYXBwcm94aW1hdGVkLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNYXNzZW5mbHVjaHQ/IT8gKEJhbWJpLCAgMi4gQXByIDIwMDIsIDEyOjU0OjM2KToKfiMhIHJuPUphZGF3aW4gcnQ9MTAxNzY4MTM3NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTc2ODEwNTAKSWNoIHNjaGluZCBkaWNoIGF1Y2ggZ2xlaWNoISA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU3RpbC1EZWZpbml0aW9uIChSb25kYSwgIDIuIEFwciAyMDAyLCAyMzo0MTowOSk6Cn4jISBybj1TZXJhcGhpbmEgcnQ9MTAxNzc1OTE2NCByZz1rdWx0dXIKfiMhIHRpZD0xMDE3NzM0MTM0Ci4uLiBMZXV0ZS4gV2FydW0gZGlza3V0aWVydCBJaHIgZWlnZW50bGljaCBpbiAnS3VsdHVyJz8gRGFzIFRoZW1hIGtsYW5nIGVoZXIKbmFjaCBCbGVjaGJlYXJiZWl0dW5nIChVbWZvcm12ZXJmYWhyZW4gdW5kIENvLCBNYXNjaGluZW5iYXUgdmllcnRlcyBTZW1lc3RlcikuClVuZCBkYW1pdCBnZWhvZXJ0IGRhcyBkb2NoIG5hY2ggV2lzc2Vuc2NoYWZ0LCBvZGVyPwoKUm9uZGEgKnNjaG1hcnJudCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFN0aWwtRGVmaW5pdGlvbiAoR3JpbW1ib3JuLCAgMi4gQXByIDIwMDIsIDIzOjQyOjQzKToKfiMhIHJuPVJvbmRhIHJ0PTEwMTc3ODM2Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE3NzM0MTM0CkR1IG1laW5zdCAiSWNoIHdhciBtYWwgZWluZSBXZWlzc2JsZWNoZG9zZSI/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFN0aWwtRGVmaW5pdGlvbiAoUm9uZGEsICAyLiBBcHIgMjAwMiwgMjM6NDU6MzIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTc3ODM3NjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE3NzM0MTM0Ck5laW4sIGVoZXI6IEtsaW5ndCBkaWVzZSBTY2hyb3R0cHJlc3NlIGVoZXIgbmFjaCBIaW5kZW1pdCBvZGVyIG5hY2gKU2Nob2VuYmVyZz8KClJvbmRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU3RpbC1EZWZpbml0aW9uIChHcmltbWJvcm4sICAyLiBBcHIgMjAwMiwgMjM6NDY6MTApOgp+IyEgcm49Um9uZGEgcnQ9MTAxNzc4MzkzMiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTc3MzQxMzQKU2Nob2VuYmVyZyBrbGluZ3QgbmljaHQgbmFjaCBTY2hyb3R0cHJlc3NlLiBEYXMgaXN0IGVpbmRldXRpZyBIaW5kZW1pdGggKHNvCnNjaHJlaWJ0IGRlciBzaWNoIG5hZW1saWNoKS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFN0aWwtRGVmaW5pdGlvbiAoUm9uZGEsICAyLiBBcHIgMjAwMiwgMjM6NDg6MzMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTc3ODM5NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE3NzM0MTM0CkRhbmtlLCBkYXMgbWl0IGRlbSBIaW5kZW1pdGggd3Vzc3RlIGljaCBuYWVobWxpY2ggbmljaHQuIFJlaWNodHMgbWl0IGRlbQpleHRyYS1oIGRhdm9yIGRhaD8KClJvbmRhICpzaW1tZXIgZWlnZW50bGljaCBpbiBNZWdhc2NobWFycm4gb2RlciB3aWU/KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFN0aWwtRGVmaW5pdGlvbiAoTW9udGFudXMsICAyLiBBcHIgMjAwMiwgMjM6NTM6NDcpOgp+IyEgcm49Um9uZGEgcnQ9MTAxNzc4NDExMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTc3MzQxMzQKTmVpbiwgTWVnYXNjaG1hcnJuIGlzdCBlaW5pZ2UgUnVicmlrZW4gZnJ1ZWhlci4gRGFzIGthbm5zdCBEdSBhdWNoIGluIGRlcgplcnN0ZW4gWmVpbGUgZWluZXMgQXJ0aWtlbHMgZXJrZW5uZW4sIGluIHdlbGNoZXIgUnVicmlrIER1IERpY2ggZ2VyYWRlCmJlZmluZGVzdC4KVW5kIGVzIGZlaGxlbiAyNC42NjAgUmVoZS4uLiBkYXMgaXN0IGVpbiB6d2VpdGVzIEluZGl6LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFN0aWwtRGVmaW5pdGlvbiAoUm9uZGEsICAyLiBBcHIgMjAwMiwgMjM6NTY6NTApOgp+IyEgcm49TW9udGFudXMgcnQ9MTAxNzc4NDQyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTc3MzQxMzQKU28gbmVuIE1pc3QuIER1IG1laW5zdCBhbHNvLCBkYXNzIGRpZXNlciBTdGlsLVNjaG1hcnJuIHNjaG9uIG5hY2ggZGVtIDEzLiBSZWgKZWluZ2VoZW4gbXVzcz8gQXJtZXMgQmFtYmkhCgpSb25kYSAqaGF0IG5vY2ggd2VyIFByZWlzZWxiZWVyZW4/ISoKCi0+IEdyaW1tYm9ybjogU2NocmVpYnQgbWFuIGRpZSBQLUJhZXJlbiBhdWNoIHNvPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFN0aWwtRGVmaW5pdGlvbiAoR3JpbW1ib3JuLCAgMi4gQXByIDIwMDIsIDIzOjU3OjQ0KToKfiMhIHJuPVJvbmRhIHJ0PTEwMTc3ODQ2MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE3NzM0MTM0ClZpZWxsZWljaHQgc2V0enQgaGllciBqYSBhdWNoIGVpbmVyIHdhcyBmdWVyIFJlXjEwMCBhdXM/IFVuZCBpY2ggc2NocmVpYmUKUHJlaXNlbGJlZXJlbiBtZWlzdCAiTGluZ29uIi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFN0aWwtRGVmaW5pdGlvbiAoQmFtYmksICAzLiBBcHIgMjAwMiwgMDk6MTI6MDgpOgp+IyEgcm49Um9uZGEgcnQ9MTAxNzc4NDYxMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTc3MzQxMzQKIkFybWVzIEJhbWJpISIKSmEsIER1IGhhc3QgUmVjaHQuCkRhcyB1ZWJlcmdlaCBpY2ggbmFlbWxpY2ggbmljaHQgYXV0b21hdGlzY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogU3RpbC1EZWZpbml0aW9uIChIdW1uaSwgIDMuIEFwciAyMDAyLCAxMzozMjozNCk6Cn4jISBybj1CYW1iaSBydD0xMDE3ODE3OTI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNzczNDEzNApTdGlsIGlzdCBTdGlsIGlzdCBTdGlsLgoKVW5kIGVpbiBSZWggdm9uIEh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTbyBTb3JyeS4gKExpYXJhLCAgMy4gQXByIDIwMDIsIDE5OjMxOjMwKToKfiMhIHJuPUFoYWIgcnQ9MTAxNzc4MzI4MCByZz1wYXJ0eQp+IyEgdGlkPTEwMTc3NjExNDkKRGFzIGhlaXNzdCBnZXR6IEV1cm8gb2RlciBDZW50LiA7LSkKClpaTCwgYmVzc2Vyd2lzc2VyaXNjaHN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTG93IEZvb2QgV2FybmluZyAoQ2F0d2VhemxlLCAgMy4gQXByIDIwMDIsIDIwOjUzOjA5KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDE3ODU5ODQ0IHJnPXBhcnR5Cn4jISB0aWQ9MTAxNzg1OTg0NApVbmQgamEsIGF1Y2ggbWl0IGRlbSBCdXJnZXJLaW5nIGhhYmUgaWNoIGdlbmF1c28gd2llIG1pdCBkZXIgYmxhdWVuIExhZ3VuZQplaW5lIFByb3Zpc2lvbiBhYmdlbWFjaHQuIElyZ2VuZHdpZSBtdXNzIGljaCBqYSBub2NoIGVpbiBiaXNzY2hlbiBHZWxkCnJlaW5rcmllZ2VuLi4uCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTG93IEZvb2QgV2FybmluZyAoR3JpbW1ib3JuLCAgMy4gQXByIDIwMDIsIDIxOjExOjMzKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDE3ODU5OTg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNzg1OTg0NApXYXNzZW4gQmxhdWUgTGFndW5lPyBEYXMga2xpbmd0IGlyZ2VuZHdpZSBuYWNoLi4uIHJvdGVyIEtsaW5nZWwuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTG93IEZvb2QgV2FybmluZyAoQ2F0d2VhemxlLCAgMy4gQXByIDIwMDIsIDIxOjE0OjAyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDE3ODYxMDkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNzg1OTg0NApJbiBNdWVuc3RlciBoYXQgZXMgc2ljaCBlaW5nZWJ1ZXJnZXJ0IGRpZSBibGF1ZSBBcmFsLVRhbmtlIGFtIEthbGttYXJrdCAnQmxhdWUKTGFndW5lJyB6dSBuZW5uZW4uIERlciBOYW1lIGlzdCB1bnRlciBNdWVuc3RlcmFuZXIgcmVsYXRpdiB3ZWl0IHZlcmJyZWl0ZXQuCidCbGF1Jywgd2VpbCBzaWUgbmFjaHRzIHNvIHNjaG9lbiBibGF1IGxldWNodGV0LCAnTGFndW5lJyB3ZWlsIGVzIGRhIGF1Y2gKbWl0dGVuIGluIGRlciBOYWNodCBkdXJjaGdlaGVuZCBub2NoIHJlaWNoaGFsdGlnZSBTY2hhZXR6ZSAoQmllcikgZ2lidC4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTG93IEZvb2QgV2FybmluZyAoTGlhcmEsICAzLiBBcHIgMjAwMiwgMjE6MTU6MDgpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMTc4NjEyNDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE3ODU5ODQ0CkRpZSByb21hbnRpc2NoZSBWb3JzdGVsbHVuZyBlaW5lcyBNdWVuc3RlcmFuZXJzIHVudGVyICdMYWd1bmUnIGlzdCBlaW4KR2V0cmFlbmtlbWFya3Q/IDstKQoKWlpMCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBMb3cgRm9vZCBXYXJuaW5nIChHcmltbWJvcm4sICAzLiBBcHIgMjAwMiwgMjE6MTU6MjQpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMTc4NjEyNDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE3ODU5ODQ0CkFoLiBEaWUgQXJhbHRhbmtzdGVsbGUgaGllciBpbiBFcmxhbmdlbiBoYXQgbWljaCBiZWVpbmRydWNrdCBtaXQgZGVtIFBsYWthdAoiRmxpZXNzZW5kIEZyYW56b2VzaXNjaCBmdWVyIDUsOTkgRE0iLCB1bmQgZGVyIEFiYmlsZHVuZyBlaW5lciBXZWluZmxhc2NoZS4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBMb3cgRm9vZCBXYXJuaW5nIChRaXRlc3MsICAzLiBBcHIgMjAwMiwgMjI6MDA6MDUpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMTc4NjEyNDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE3ODU5ODQ0CmFyYWxzIGhlaXNzZW4gZG9jaCB1ZWJlcmFsbCBibGF1ZSBsYWd1bmU/Cmt1cnogbmViZW4gdW5zZXJlbSB3ZXJrIGluIHdvYiBpcyBhdWNoIHNvIGVpbiBkaW5nLCBkYSBoYXQgc2Nob24gbWVpbgpncm9zc3ZhdGVyIGZyZWl0YWdzIHNlaW5lbiBlcnN0ZW4gendpc2NoZW5zdG9wcCBtaXQgZGVyIGxvaG50dWV0ZSBnZW1hY2h0Li4uClFJKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IExvdyBGb29kIFdhcm5pbmcgKFZhcmxhcmlvbiwgIDMuIEFwciAyMDAyLCAyMjo1OToyMik6Cn4jISBybj1RaXRlc3MgcnQ9MTAxNzg2NDAwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTc4NTk4NDQKT2gsIGljaCBkYWNodGUgZHUgbWVpbnN0IGRpZSBnbGVpY2huYW1pZ2UsIGhlcnZvcnJhZ2VuZGUgUGl6emVyaWEsIGRpZQp1ZWJyaWdlbnMgdm9tIEJ1cmdlciBLaW5nIGF1cyBnZXNlaGVuIGVpbiBrbGVpbmVzIFN0dWVjayAodmllbGxlaWNodCA1MDBtPykKc3RhZHRlaW53YWVydHMgdW5kIGF1ZiBkZXIgYW5kZXJlbiBTdHJhc3NlbnNlaXRlIGlzdCAoZGEgd28gZnJ1ZWhlciBkZXIKQUJDLVNjaHVldHplbmhvZiB3YXIpIGlzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IExvdyBGb29kIFdhcm5pbmcgKE1hYXJnLCAgNC4gQXByIDIwMDIsIDAwOjUxOjUzKToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDE3ODY3NTYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNzg1OTg0NApNb2luLgoKQWxzbywgaWNoIHdvaG5lIHp3aXNjaGVuIEJLIHVuZCBkaWVzZXIgbmV1ZW4gUGl6emVyaWEgdW5kIGtvbm50ZSBiZWltIEVpbnp1ZwpkZXIgbGV0enRlcmVuIGVpbmVuIGt1cnplbiBCbGljayBhdWYgZGFzIEt1ZWNoZW5lcXVpcG1lbnQgd2VyZmVuLCB3ZWxjaGVzIGRpZQpkYSByZWluZ2VzY2hsZXBwdCBoYWJlbi4KCkZyZWl3aWxsaWcgZ2VoZSBpY2ggZGEgbmllIGVzc2VuIDpvKQoKR3J1c3MsCgogICBNYWFyZwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvcnNpY2h0LCBvcHRpc2NoZSBNYWV1c2UhIChOb25uZSwgIDQuIEFwciAyMDAyLCAxMzozMDowMSk6CkluIGRlbiBsZXR6dGVuIE1vbmF0ZW4gbmltbXQgZGllIFZlcmJyZWl0dW5nIHZvbiBvcHRpc2NoZW4gTWFldXNlbgpuZXVlcmVuIFR5cHMgc3RhZW5kaWcgenUuIEltIEdlZ2Vuc2F0eiB6dSBkZW4gYWx0ZW4gTWFldXNlbiwgZnVlciBkaWUKbWFuIGVpbmUgc3BlemllbGxlIFVudGVybGFnZSBtaXQgYmVzb25kZXJzIHN0cnVrdHVyaWVydGVyIE9iZXJmbGFlY2hlCmJyYXVjaHRlLCBuaW1tdCBiZWkgZGllc2VuIGVpbmUga2xlaW5lIENDRC1LYW1lcmEgc3RhZW5kaWcgZGVuClVudGVyZ3J1bmQgYXVmIHVuZCBlcmtlbm50IGR1cmNoIGRpZSBWZXJhZW5kZXJ1bmcgZGVyIEJpbGRlciBlaW5lCkJld2VndW5nIGRlciBNYXVzLgpEYXMga2xpbmd0IHp1bmFlY2hzdCBub2NoIGhhcm1sb3MuIEFiZXIgZGVyIFZvcnRlaWwgZGllc2VyCk1hZXVzZSBpc3QgamEgZ2VyYWRlLCBkYXNzIHNpZSBrZWluIE1hdXNwYWQgenVyIEZ1bmt0aW9uIGJyYXVjaGVuLgpTaWUgZnVua3Rpb25pZXJlbiB6LkIuIGF1Y2ggYXVmIGRlbiBQYXBpZXJzdGFwZWxuLCBkaWUgZmFzdCBqZWRlbgpTY2hyZWlidGlzY2ggemllcmVuLiBXYXMgaXN0LCB3ZW5uIG1hbiBlaW5tYWwgZ2VuYXUgYmVvYmFjaHRldCwKd2FzIGRpZXNlIEthbWVyYSBlaWdlbnRsaWNoIGF1Zm5pbW10PyBWb24gZ2VoZWltZW4gRmlybWVudW50ZXJsYWdlbgpiaXMgaGluIHp1IFBhc3N3b2VydGVybiBpc3QgaW0gUGFwaWVyd3VzdCBhbGxlcyB6dSBmaW5kZW4uIFVuZCBtYW4KZnVlaHJ0IGRpZSBLYW1lcmEgYXVjaCBub2NoIG1pdCBlaWdlbmVyIEhhbmQgZGFydWViZXIhClNpbmQgZGllc2UgQmlsZGVyIGVyc3QgcGVyIFVTQiBpbSBSZWNobmVyIGdlbGFuZGV0LCBzdGVodCBlaW5lcgp3ZWl0ZXJlbiBWZXJhcmJlaXR1bmcgbmljaHRzIG1laHIgaW0gV2VnZS4gRGEgZGVyIE1hdXN0cmVpYmVyIFRlaWwKZGVzIFN5c3RlbXMgaXN0LCBzdGVoZW4gaWhtIGFsbGUgRnVua3Rpb25lbiBvZmZlbiwgb2huZSBkYXNzIGRlcgpOdXR6ZXIgZXR3YXMgZGF2b24gYmVtZXJrdC4gRWluZSBPQ1IgaW4gVmVyYmluZHVuZyBtaXQgYmVzdGltbXRlbgpTY2hsdWVzc2Vsd29ydGVuIGthbm4gc29taXQgdW5iZW1lcmt0IHp1bSBCZWlzcGllbCBkZW4gU2NocmVpYnRpc2NoCm5hY2ggUm9vdC1QYXNzd29ydGVuIHVudGVyc3VjaGVuLgpJbiBkaWVzZW0gTGljaHQgZXJzY2hlaW50IGVzIGF1Y2ggbmljaHQgbGFlbmdlciB2ZXJ3dW5kZXJsaWNoLCBkYXNzCmRpZXNlIE1hZXVzZSBlcnN0YXVubGljaCBiaWxsaWcgc2luZCAtIENDRC1LYW1lcmFzIHNpbmQgYW5zb25zdGVuCm5vY2ggcmVjaHQgdGV1ZXIgLSB1bmQgZGFzcyBhdXNnZXJlY2huZXQgTWljcm9zb2Z0IHNvbGNoZSBHZXJhZXRlCnZlcmthdWZ0LiBJbW1lcmhpbiBoYXQgTWljcm9zb2Z0IGFscyBCZXRyaWVic3N5c3RlbWhlcnN0ZWxsZXIgc2VsYnN0CmRpZSBiZXN0ZW4gTW9lZ2xpY2hrZWl0ZW4sIGRpZSBTcGlvbmFnZW1hdXMgaW5zIFN5c3RlbSB6dSBpbnRlZ3JpZXJlbiwKdW5kIGRlbiBBbndlbmRlciB2ZXJ3dW5kZXJ0IGVzIGJlaSBkaWVzZW0gU29mdHdhcmVoZXJzdGVsbGVyIGF1ZmdydW5kCnZvcmFuZ2VnYW5nZW5lciBFcmZhaHJ1bmdlbiBtaXQgVXBkYXRlcyBhdWNoIG5pY2h0LCBkYXNzIGJlaSBkZXIgClRyZWliZXJpbnN0YWxsYXRpb24gbWFzc2l2IGluIGRhcyBTeXN0ZW0gZWluZ2VncmlmZmVuIHdpcmQuCgoKQXVzIGRlLmFsdC5uZXRkaWdlc3QgKGE4YWljNyQzM20kMUBoeWRyb2dlbi55YXRoby5kZSkKCk5vbm5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVFRCIG1hbCB3aWVkZXIgKFBpdGZhbGwsICA0LiBBcHIgMjAwMiwgMTU6MjI6MDApOgoyOTcuIE1vbiwgIDEuIEFwciAyMDAyLCAyMzozMTo1MDoKVGphLCBpcmdlbmR3aWUgaGF0IGVzIGRlciBab29rIGdlc2NoYWZmdC4KCnBpdCogLWZyYWd0IHNpY2ggbnVyIHdpZS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdvZXR0ZXIgLi4uIChMZWxsZG9yaW4sICA0LiBBcHIgMjAwMiwgMTU6Mjc6NTMpOgpab29rIHRlaWx0IERpciBtaXQ6IHdlbm4gaWNoIG51biBldHdhcyB6ZWl0IGJyYXVjaGUsIGJlc3RlaHQgZGllIGdlbGVnZW5oZWl0LApab29rIHRlaWx0IERpciBtaXQ6IGRhc3MgZHUgZGFiZWkgc3RpcmJzdD8gOykKRHUgdGVpbHN0IFpvb2sgbWl0OiBuZWluClpvb2sgdGVpbHQgRGlyIG1pdDogc2NoYWRlIDspCgpQZmZmIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVm9yc2ljaHQsIG9wdGlzY2hlIE1hZXVzZSEgKERlZXBibHVlLCAgNC4gQXByIDIwMDIsIDE2OjA0OjIwKToKfiMhIHJuPU5vbm5lIHJ0PTEwMTc5MTk4MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE3OTE5ODAxClN0YW1tdCBkaWUgTmFjaHJpY2h0IHp1ZmFlbGxpZyB2b20gMS4gQXByaWw/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpab21iaWUtU2VoZXIgKFBhbmljLCAgNC4gQXByIDIwMDIsIDE4OjU1OjA3KToKSGF1ZXIgdmVybGFlc3N0IGRpZXNlIFdlbHQuCkhhdWVyIHNpZWh0IGpldHp0IHdpZSBlaW4gVW50b3RlciBhdXMuCk1lcmxpbiBydWZ0OiBIYXVlciBpc3QgamV0enQgZWluIFNlaGVyIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBWb3JzaWNodCwgb3B0aXNjaGUgTWFldXNlISAoTml6emwsICA0LiBBcHIgMjAwMiwgMTg6NTg6NDUpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTAxNzkyOTA2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTc5MTk4MDEKCmdlbmF1IGRhcyB3b2xsdCBpY2ggYXVjaCBmcmFnZW4gOikKYWxzbyB3ZXIgZGVuIHN1ZWx6IGdsYXVidCBpcyBzZWxiZXIgc2NodWxkLgouLi53dWFoYWggYmVudXR6dCBqYSBrZWluZSBzY2FubmVyIGRpZSBmYXhlbiBuYWVtbGljaCBnbGVpY2gga29waWVuIHp1cgprb25rdXJlbnouCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2Nob2dnaSAoTGlhcmEsICA0LiBBcHIgMjAwMiwgMjA6MDM6MDgpOgp+IyEgcm49QW5vcmlzIHJ0PTEwMTc5NDMwOTIgcmc9cGFydHkKfiMhIHRpZD0xMDE3OTQzMDkyCkljaCBkYWNodGUsIE1pbGthIGdpcCdzIGF1Y2ggaW4gRCBpbSBMYWRlbi4gOy0pID8hPwoKWlpMCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNjaG9nZ2kgKE1vbnRhbnVzLCAgNC4gQXByIDIwMDIsIDIxOjIxOjIxKToKfiMhIHJuPUxpYXJhIHJ0PTEwMTc5NDMzODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDE3OTQzMDkyCkljaCBnbGF1YiBlciBzcHJpY2h0IHZvbiB3aXJrbGljaCBsZWNrZXJlbiBEcm9nZW4sIHp1bSBCZWlzcGllbCB2b24gR2lhbmRvci4uLgpobW1tbS4uLiB6dW0gR2x1ZWNrIGhhYiBpY2ggZGF2b24gbm9jaCBmYXN0IGVpbiBLaWxvIGRhaGVpbSBydW1saWVnZW4uIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZvcnNpY2h0LCBvcHRpc2NoZSBNYWV1c2UhIChWYW5pb24sICA0LiBBcHIgMjAwMiwgMjE6Mzg6MDQpOgp+IyEgcm49Tm9ubmUgcnQ9MTAxNzkxOTgwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTc5MTk4MDEKTm9ubmUsIHR1IHNvd2FzIG5pY2h0ISBEdSBzZXR6dCBkZWluZW4gKGd1dGVuPykgUnVmIGhpZXIgYXVmcyBTcGllbC4gTmFjaGRlbQppY2ggZGllIGVyc3RlIEJpbGRzY2hpcm1zZWl0ZSBkdXJjaGdlbGVzZW4gaGFiLCBoYWIgaWNoIGVyc3QgdmVyd3VuZGVydCBhdWYKZGFzIGhldXRpZ2UgRGF0dW0sIGRhbm4gYXVmIGRlbiBQb3N0ZXIgZ2VzY2hhdXQuIAoKRGFzcyBkdSBlaW5lbiBBcnRpa2VsIHZvbiBOZXRkaWdlc3QgcG9zdGVzdCwgc29sbHRlc3QgZHUgb2JlbiBzY2hvbiBrZW5udGxpY2gKbWFjaGVuIC4uLgoKVioKUFM6IGphamEsIGljaCBoYWV0dGUgYXVjaCBkZW4gTmFtZW4gZGVyIFJ1YnJpayBsZXNlbiBrb2VubmVuIC0gYWJlciB2b24gTm9ubmUKZXJ3YXJ0ZSBpY2ggc2NobGltbXN0ZXMgLi4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFZvcnNpY2h0LCBvcHRpc2NoZSBNYWV1c2UhIChMaW5mbGFzLCAgNS4gQXByIDIwMDIsIDEyOjI3OjI1KToKfiMhIHJuPVZhbmlvbiBydD0xMDE3OTQ5MDg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxNzkxOTgwMQpOYSwgZGFzIGlzdCBqYSBmYXN0IHNvIGd1dCB3aWUgZGllc2VyIEtsZWJlLUZyZXNzZW4tUXVhdHNjaCB2b24gUHJvNyB2b3IKZWluaWdlbiBNb25hdGVuLiBEYSBtZWludGVuIGRvY2ggZWluaWdlLCBkb3J0IHdhZXJlbiBLYW1lcmFzIGluc3RhbGxpZXJ0Li4uCgpoZWlzZSBoYXQgYWJlciBhdWNoIHp1bSAxLkFwcmlsIG5ldHRlcyB6dSBiaWV0ZW4gZ2VoYWJ0OgpodHRwOi8vd3d3LmhlaXNlLmRlL25ld3N0aWNrZXIvZGF0YS9ocHMtMDEuMDQuMDItMDAwLwoKTC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsZWluZXIgdmVydGlwcGVyLCBncm9zc2UgbGFjaGVyIChSb2xhbmQsICA1LiBBcHIgMjAwMiwgMTg6Mzk6MDIpOgpnaWIgbWFudGVsIGFuIHNjaG1pZWQKRHUgZ2lic3QgZGVuIE1vcmdlbm1hbnRlbCBhbiBCYWl5J1NhZ2FyLgpCYWl5J1NhZ2FyIG5pbW10IGRlbiBNb3JnZW5tYW50ZWwgdW5kIGhhZW1tZXJ0IGZlc3RlIGRyYXVmIHJ1bSBiaXMgZXIgcmljaHRpZwprYXB1dHQgaXN0LgpCYWl5J1NhZ2FyIGdpYnQgRGlyIGRlbiBNb3JnZW5tYW50ZWwuCkJhaXknU2FnYXIgc2FndDogU28sIGRhcyBrYW5uc3QgRHUgamV0enQgbWFsIGluIGFsbGVyIFJ1aGUgd2llZGVyIHJlcGFyaWVyZW4sCkJhaXknU2FnYXIgc2FndDogc293YXMgdWVidCBuYWVtbGljaCB1bmdlbWVpbiBtdXNzdCBEdSB3aXNzZW4uCj4gcmVwYXJpZXJlIHNjaG1pZWQKRHUga2FubnN0IGJpc2hlciBudXIgUnVlc3R1bmdlbiByZXBhcmllcmVuLgoKUm9sYW5kIGRlbmt0OiAuIG8gTyAobmFqYSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdGVzdGFtZW50IChHcmltbWJvcm4sICA2LiBBcHIgMjAwMiwgMTU6NDI6NDApOgp+IyEgb249RmVsaWEgb3Q9MTAxODEwMDE4OCBvZz1zY2htYXJybgpxCnNjaGF1CnEKdW50IE5pc2NoZQpzY2hhdQpxCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZWVpc2tsYXIuLi4gKEdydW1wZiwgIDcuIEFwciAyMDAyLCAyMDo0OToyOCk6CidQaWNodSB0cml0dCBkaWUgS3JhZWhlLgpGZXVlcmJhbGwgS3JhZWhlCkRpZSBLcmFlaGUgc2l0enQgYXVmIGRlciBGZXN0dW5nc21hdWVyLiBEdSBrb21tc3QgbGVpZGVyIG5pY2h0IGFuIHNpZSBoZXJhbi4KR3J1bXBmIGdydW1wZnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdGVzdGFtZW50IChSb25kYSwgIDcuIEFwciAyMDAyLCAyMjoxNDoxOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxODEwMDU2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTgxMDA1NjAKUHJvdGVzdCBHcmltbWJvcm4sIGRpZXNlciBBcnRpa2VsIGlzdCBkZWZpbml0aXYgaW4gZGVyIFJ1YnJpayBTY2htYXJybgpkZXBsYXppZXJ0ISBTZWluZSBnYW56ZSBUcmFnd2VpdGUgd2lyZCBudXIgaW4gIkt1bHR1ciIgYXVzcmVpY2hlbmQKYmVydWVja3NpY2h0aWd0LgpJY2ggdmVyc3VjaGUgZWluZSBrdXJ6ZSBXZXJra3JpdGlrLCBiaXR0ZSBlbnRzY2h1bGRpZ3QgbWVpbmUgaW0gVmVyZ2xlaWNoIHp1CmRpZXNlbSBXZXJrIGtsZWluZ2Vpc3RpZ2UgQmV0cmFjaHR1bmc6CkFsbGVpbiBkZXIgVGl0ZWwgInRlc3RhbWVudCIgZGV1dGV0IGF1ZiBkaWUgVG9kZXNzZWhuc3VjaHQgZGVyIEF1dG9yaW4gaGluLAp3ZWxjaGUgaWhyZW4gRmVobGVyLCBpbiBlaW5lciBkdW5rbGVuICg/KSBOaXNjaGUgenVzYWV0emxpY2ggbm9jaG1hbHMgZ2VuYXVlcgpuYWNoenVzZWhlbiwgc2VociBkZXV0bGljaCBoZXJhdXNsZXNiYXIgbWl0IGRlbSBUb2QgYmV6YWhsZW4gbXVzc3RlLgpCZXNvbmRlcnMgaXN0IGF1Y2ggYXVmIGRhcyBmYXN6aW5pZXJlbmRlIFZlcnNtYXNzIGhpbnp1d2Vpc2VuLCB3ZWxjaGVzIHdlaXQKdWViZXIgZGFzIHVlYmxpY2hlIFF1YWxpdGFldHNuaXZlYXUgZWluZmFjaGVyIFBvZXNpZWFsYnVtc3BydWVjaGUKaGluYXVzcmVpY2h0LgpGYXN0IHNjaG9uIExpdGVyYXR1ci1Ob2JlbHByZWlzdmVyZGFlY2h0aWcgaXN0IGRhcyBlcnN0YXVubGljaGUgUmVpbXNjaGVtYQoicS1hLXEtYi1hLXEiLCB3ZWxjaGVzIGluIGRlciBha3R1ZWxsZW4gTGl0ZXJhdHVyIHNlaW5lc2dsZWljaGVuIHN1Y2h0LgoKR3JpbW1ib3JuLCBpY2ggc2NoYWV0emUsIER1IGthbm5zdCBkaWVzZSBkb2NoIHNlaHIgbGFpZW5oYWZ0ZSBLcml0aWsgbm9jaAp3ZXNlbnRsaWNoIHF1YWxpZml6aWVydGVyIHVudGVybWF1ZXJuLCB1bSBkaWVzZXMgV2VyayBhbnNjaGxpZXNzZW5kIGluIGRlcgpSdWJyaWsgIkt1bHR1ciIgZW50c3ByZWNoZW5kIHp1IHd1ZXJkaWdlbi4KClJvbmRhICppY2ggZ2xhdWIgZGllIFBhcnR5IGhhdCBtaXIgZWNodCBnZXNjaGFkZXQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEdW5rZWxoZWl0IGFid2VydGVuIChEb3R6LCAgOC4gQXByIDIwMDIsIDE2OjM5OjAzKToKOmxhdXNjaGUKRXMgaXN0IHp1IGR1bmtlbCBkYWZ1ZXIuCjpydWJyaWsgc2NobWFycm4KRXMgaXN0IHp1IGR1bmtlbCBkYWZ1ZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRHVua2VsaGVpdCBhYndlcnRlbiAoUGl0ZmFsbCwgIDguIEFwciAyMDAyLCAxNjozOTozMik6Cn4jISBybj1Eb3R6IHJ0PTEwMTgyNzY3NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Mjc2NzQzCmdlaHQgImlzcyBhbGxlcyBpbiByYXVtIiA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBtYWlsaW5nbGlzdGUgS29ycmVrdHVyIChSb25kYSwgIDguIEFwciAyMDAyLCAyMzo1ODowOCk6Cn4jISBybj1BbmFjcmlvbiBydD0xMDE4MzAyOTcwIHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD0xMDE4MjgxMjIwCkxpZWJlciBBbmFjcmlvbiwKCkR1IG1lcmtzdCBhYmVyIGlyZ2VuZHdpZSBmYWxzY2ggOy0pCgpSb25kYSAqaGF0IE5JRSBFLVRlY2huaWsgZ2VtYWNodC4gTnVyIG1pdCBFLVRlY2huaWtlcm4gZ2Vzb2ZmLi4uIGRpc2t1dGllcnQhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogbWFpbGluZ2xpc3RlIEtvcnJla3R1ciAoQW5hY3Jpb24sICA4LiBBcHIgMjAwMiwgMjM6NTk6MDkpOgp+IyEgcm49Um9uZGEgcnQ9MTAxODMwMzA4OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTgyODEyMjAKRXMga29tbXQgYXVjaCBuaWNodCBhdWYgZGFzIEVsZWt0cm8sIHNvbmRlciBhdWYgZGFzIEluZ2VuaWV1ciBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IG1haWxpbmdsaXN0ZSBLb3JyZWt0dXIgKFJvbmRhLCAgOS4gQXByIDIwMDIsIDAwOjAyOjUzKToKfiMhIHJuPUFuYWNyaW9uIHJ0PTEwMTgzMDMxNDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4MjgxMjIwCkF1IE1hbm4uIFdhcyBiaXN0IER1IHVucHJhZXppc2UgOy0pIFNwYWV0ZXN0ZW5zIHdlbm4gRGlyIG5lbgpNYXNjaGluZW5iYXUtSW5nZW5pZXVyIGVpbmVuIE9lbGt1ZWhsZXIgYW4gZGVuIFBDIHNjaHJhdWJ0IHVuZCBkaWUgU3Ryb20tCmR1cmNoIGVpbmUgRHJ1Y2tsdWZ0bGVpdHVuZyBlcnNldHp0IHNvbGx0ZSBzZWxic3QgRGlyIGtsYXIgc2VpbiwgZGFzcyBFbGVrdHJvLQp1bmQgTWFzY2hpbmVuYmF1LUluZ2VuaWV1cmUgbmljaHQgZGFzIGdsZWljaGUgc2luZC4KClJvbmRhCgpHZW5hdTogVW5kIGJlaWRlIGtvZW5uZW4gc2llIGJlc3NlciBwcm9nZ2VuIGFscyBtYW5jaGUgSW5mb3MuIE9rLCBvaywgaWNoIGdlaCcKaW4gRGVja3VuZyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IG1haWxpbmdsaXN0ZSBLb3JyZWt0dXIgKEFuYWNyaW9uLCAgOS4gQXByIDIwMDIsIDAwOjA0OjE4KToKfiMhIG9uPUFuYWNyaW9uIG90PTEwMTgzMDI5NzAgb2c9bW9yZ2VuZ3JhdWVuLnZlcmVpbgp+IyEgcm49Um9uZGEgcnQ9MTAxODMwMjg2MiByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTAxODI4MTIyMApNZWluIFNvaG5eV15oZSBsaWViZSBSb25kYSwKCkR1IGJpc3QgendhciBub2NoIGtlaW5lIDQyIEphaHInIGFsZCwgCmFiYmEgRWxlZ3Ryb2luc2NoZW5qb2VyLgpEZXMgbWVyZ2d0IG1lci4KCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBUZWFta2FtcGYgKEdsb2luc29uLCAgOS4gQXByIDIwMDIsIDAxOjI3OjA5KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDE4MzA3NzgxIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CkZydWVoZXIgd2FyIGFsbGVzIGJlc3Nlci4gRGEgd2FyZW4gZXMgYWxsZSBoYXJ0ZSBNdWRkZXIsIGFsbGUga2FtZW4gbWl0IHBsYWluCnRlbG5ldCByZWluLCBDbGllbnRzIHdhcmVuIGFsbGVuZmFsbHMgd2VnZW4gZGVyIFRyZW5udW5nIHZvbiBHZXRpcHB0ZW0gdW5kCkVtcGZhbmdlbmVuIGVybGF1YnQsIGRhcyBJbnZlbnRvcnkgaGF0dGUgZ2VmYWVsbGlnc3QgamVkZXIgaW0gS29wZiB6dQpzb3J0aWVyZW4sIGVpZ2VuZSBSYWV1bWxpY2hrZWl0ZW4gd2FyZW4gdW50ZXIgaGFydGdlc290dGVuZW4gV2FuZGVyZXJuCnZlcnBvZW50LCBhdWYgU2NoaWZmZSBpc3QgbWFuIG5vY2ggc2VsYmVyIGdlc3RpZWdlbiwgS29ib2xkZSB1bmQgTWFldXNlIHVuZApnZXJhZGUgRnJldW5kc2NoYWZ0c2JhZW5kZXIgd2FyZW4gd2FzIGZ1ZXIgTHVzY2hlbi4gSmEgZGFtYWxzIHdhciBub2NoIGtlaW5lcgpiZXF1ZW0gLi4uIHdhcyBoYWV0dGVuIHdpciBvaG5lIGRlbiBnYW56ZW4gU2NoZWlzcyBudXIgZnVlciBjb29sZSBBYmVudGV1cmVyCndlcmRlbiBrb2VubmVuLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVGVhbWthbXBmIChHcmltbWJvcm4sICA5LiBBcHIgMjAwMiwgMDE6Mjg6MjMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAxODMwODQyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTgyNzg5NjYKTmEga29tbSwgZGFzcyBEdSBlaW4gVmVyZmVjaHRlciBkZXMgQmVmZWhscyAid2VyZGUgc2VoZXIiIGJpc3QgaXN0IGphIG51bgp3aXJrbGljaCBuaWNodCBuZXUuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBUZWFta2FtcGYgKEdsb2luc29uLCAgOS4gQXByIDIwMDIsIDAxOjMxOjQ3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDE4MzA4NTAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODI3ODk2NgpTdGltbXQuIERhcyBURi1TY3JpcHQgZGFmdWVyIGlzdCBtaXIgZWluZmFjaCB6dSBsYW5nc2FtLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTlBDcyB1bmQgc28uLi4gKEdyaW1tYm9ybiwgIDkuIEFwciAyMDAyLCAwODozMjowMCk6Cn4jISBybj1IdW1uaSBydD0xMDE4MzMzNTI2IHJnPXBhcnR5Cn4jISB0aWQ9MTAxODI3MTI0NQpTYWdlbiB3aXIgc286IE1pdCBkZW0gRXJyZWljaGVuIHNvIGVpbmVyIEtvbXByZXNzaW9uc3JhdGUga2FubnN0IER1IFZJRUwgR2VsZAp2ZXJkaWVuZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTlBDcyB1bmQgc28uLi4gKEh1bW5pLCAgOS4gQXByIDIwMDIsIDA4OjMyOjQ0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDE4MzMzOTIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODI3MTI0NQpEdW1wZmVyIFZlcmRhY2h0OiBJY2ggaGFiIGZ0cCBuaWNodCBhdWYgYmluIHVtZ2VzY2hhbHRldC4gS2FubiBkYXMgc2Vpbj8gRGFzCndhZXJlIGluIGRlciBUYXQgZXR3YXMsIGRhcyBkZXV0bGljaCB1bnRlciBkZXIgSW5mby1UaGVvLVNjaHJhbmtlIGxpZWd0Li4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAgOS4gQXByIDIwMDIsIDA5OjQzOjQ5KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDE4MzM3OTg3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2ClVuZCB3YXJ1bSB3aWxsc3QgRHUgZGVuIFphdWJpcyBkYW5uIGRlbiBUZWxlcG9ydCB3ZWduZWhtZW4/IFBhc3N0IGRvY2guCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5QQ3MgdW5kIHNvLi4uIChHbG9pbnNvbiwgIDkuIEFwciAyMDAyLCAxMTowODowMyk6Cn4jISBybj1IdW1uaSBydD0xMDE4MzMzOTY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODI3MTI0NQpGcmFnIERpY2ggbGllYmVyIHdvIGRlciBSZXN0IGhpbmdlc3BlaWNoZXJ0IHd1cmRlIHdlbm4gRHUgZGllIERhdGVpIG1pdCA4IEJ5dGUKR3JvZXNzZSBub2NoIHdpZWRlciBzbyBvZWZmbmVuIGthbm5zdC4gTmljaHQgZGFzcyBEdSBoaWVyIEZlc3RwbGF0dGVuIGZyZW1kZXIKRGltZW5zaW9uZW4gdm9sbG11ZWxsc3QgOikgU296dXNhZ2VuIFJhdW0tWmVpdC1HZWZ1ZWdlLVZlcnNjaG11dHp1bmcgOikKCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5QQ3MgdW5kIHNvLi4uIChBbnRoZWEsICA5LiBBcHIgMjAwMiwgMTE6MTA6MDEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAxODM0MzI4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTgyNzEyNDUKQmFsZCBncnVlbmRlIGljaCBub2NoIGRlbiAiSGFsdGV0LWV1cmUtVk9JRC11bmQtZGFzLS9kZXYvbnVsLXNhdWJlciItQ2x1YgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTlBDcyB1bmQgc28uLi4gKEdyaW1tYm9ybiwgIDkuIEFwciAyMDAyLCAxMTozMToyOCk6Cn4jISBybj1BbnRoZWEgcnQ9MTAxODM0MzQwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTgyNzEyNDUKRGFzIHNhZ3N0IER1IHNvIGVpbmZhY2guIEljaCBoYWIgbWlyIGphIG1hbCB1ZWJlcmxlZ3QgZGFzcyBpY2ggZGVuIHNwYW0sIGRlbgppY2gga3JpZWdlLCBwZXIgcHJvY21haWwgZGlyZWt0IG5hY2ggL2Rldi9udWxsIChzbyBzY2hyZWlidCBtYW4gZGFzIG5hZW1saWNoISkKc2NoaWNrZSwgYWJlciBpY2ggaGFiZSBBbmdzdCBkYXNzIG1pciBkYXMgTnVsbGRldmljZSB2b2xsbGFldWZ0LCB1bmQgYW5nZWJsaWNoCmJyYXVjaHQgZGVyIFJlY2huZXIgZGFzIGRyaW5nZW5kLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5QQ3MgdW5kIHNvLi4uIChBbnRoZWEsICA5LiBBcHIgMjAwMiwgMTE6MzY6NTQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTgzNDQ2ODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4MjcxMjQ1CkljaCB3ZWlzcywgZGFzIG1hbiBkZW4gc28gc2NocmVpYnQuIERhIGljaCBtaWNoIGFiZXIga2xhc3Npc2NoZXIgV2Vpc2UgZGEKaW1tZXIgdmVydGlwcGUsIGhhYmUgaWNoIGFscyBlcnN0ZSBBa3Rpb24gbmFjaCBlaW4gbG4gLXMgL2Rldi9udWxsIC9kZXYvbnVsIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2lsZGVuIC4uLiAoTGlhcmEsICA5LiBBcHIgMjAwMiwgMjI6MDQ6NDkpOgoKW1phdWJlcmVyOkJyb3RuYWVsIHNlZ25ldCBNYWdpcnVzLl0KW1phdWJlcmVyOk1hZ2lydXNdIER1IGJpc3QgamEgbnVyIFphdWJpIGdld29yZGVuLCB3ZWlsIER1IGdsYXVic3QsIGRhc3MgbWFuCltaYXViZXJlcjpNYWdpcnVzXSBtaXQgZHJlaSBIYWVuZGVuIGJlc3NlciBiZXRlbiBrYW5uc3QuIDpeKQoKClpaTCwgbXVzcyBkaWVzZSBXb3J0ZSBmdWVyIGRpZSBOYWNod2VsdCBkb2t1bWVudGllcmVuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVmVyd2lycmVuZCAuLi4gKE1hZ2lydXMsICA5LiBBcHIgMjAwMiwgMjM6MDc6NDkpOgo+Z2VmYWVocnRlIG0gRmVobHNjaGxhZwpFaW4gRmVobHNjaGxhZyBrb21tdCBhbi4KRHUgbGVybnN0IGV0d2FzIGF1cyBEZWluZW0gRXJmb2xnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTI6IFRlYW1rYW1wZiAoVmFybGFyaW9uLCAxMC4gQXByIDIwMDIsIDE1OjU3OjA4KToKfiMhIHJuPUNpY2VybyBydD0xMDE4NDQ2OTY2IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2ClRqYSwgR3JpbW1ib3JuLCBpcmdlbmR3aWUga29tbXQgZGEgZGVyIGdsZWljaGUgQXNwZWt0IHdpZSBiZWkgZGVuIFRvcC1MaXN0ZW4KenUgdHJhZ2VuLiBIYWV0dGVzdGUgbml4IGF1c2dlc2V0enQsIHdhZXIgZGVyIFRocmVhZCBzY2hvbiB2b3IgemlnIEFydGlrZWxuCmdlc3RvcmJlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NobWFycm4gKFdvb2R5LCAxMC4gQXByIDIwMDIsIDE1OjU4OjUwKToKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIENpY2VybyBpbiBSdWJyaWsgImRpc2t1c3Npb24iLgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayAiZGlza3Vzc2lvbiIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBDaWNlcm8gaW4gUnVicmlrICJkaXNrdXNzaW9uIi4KKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEVsYmVyZXQgaW4gUnVicmlrICJkaXNrdXNzaW9uIi4KKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgImRpc2t1c3Npb24iLgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gRWxiZXJldCBpbiBSdWJyaWsgImRpc2t1c3Npb24iLgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayAiZGlza3Vzc2lvbiIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBWYXJsYXJpb24gaW4gUnVicmlrICJkaXNrdXNzaW9uIi4KKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEVsYmVyZXQgaW4gUnVicmlrICJkaXNrdXNzaW9uIi4KKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEFudGhlYSBpbiBSdWJyaWsgImRpc2t1c3Npb24iLgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gQ3VjaHVsbGluIGluIFJ1YnJpayAiZGlza3Vzc2lvbiIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBBbmFjcmlvbiBpbiBSdWJyaWsgImRpc2t1c3Npb24iLgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gRWxiZXJldCBpbiBSdWJyaWsgImRpc2t1c3Npb24iLgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gQW50aGVhIGluIFJ1YnJpayAiZGlza3Vzc2lvbiIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBFbGJlcmV0IGluIFJ1YnJpayAiZGlza3Vzc2lvbiIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBBbmFjcmlvbiBpbiBSdWJyaWsgImRpc2t1c3Npb24iLgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gQ3VjaHVsbGluIGluIFJ1YnJpayAiZGlza3Vzc2lvbiIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBDaWNlcm8gaW4gUnVicmlrICJkaXNrdXNzaW9uIi4KKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgImRpc2t1c3Npb24iLgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gQ2ljZXJvIGluIFJ1YnJpayAiZGlza3Vzc2lvbiIuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBHcmltbWJvcm4gaW4gUnVicmlrICJkaXNrdXNzaW9uIi4KKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEVsYmVyZXQgaW4gUnVicmlrICJkaXNrdXNzaW9uIi4KKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIFZhcmxhcmlvbiBpbiBSdWJyaWsgInNjaG1hcnJuIi4KKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIENpY2VybyBpbiBSdWJyaWsgImRpc2t1c3Npb24iLgoKV2FzIGZvbGdlcm4gd2lyIGRhcmF1cz8gRWluemlnIFZhcmxhcmlvbiBoYXQgZGVuIFNpbm4gZXJrYW5udC4gOykKCgpXb29keS4tCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjEzOjQ3KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDE4MzY4ODY5IG9nPWRpc2t1c3Npb24KfiMhIHJuPUdub21lIHJ0PTEwMTgzNjg4MjUgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKSWNoIHNldHplIGVpbiBVZWJlcnJhc2NodW5nc2VpIGZ1ZXIgUmVeNTAgYXVzLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6MDkpOgp+IyEgb249SHVtbmkgb3Q9MTAxODM2ODg4MSBvZz1kaXNrdXNzaW9uCn4jISBybj1HcmltbWJvcm4gcnQ9MTAxODM2ODg2OSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpIYWxiemVpdC4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6MTEpOgp+IyEgb249RWxiZXJldCBvdD0xMDE4MzY4ODgzIG9nPWRpc2t1c3Npb24KfiMhIHJuPUNpY2VybyBydD0xMDE4MzY4NzUyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2Cm9rLCBhYmVyIHdhcyBzdG9lcnQgZXMgZGljaCwgd2VubiBhbmRlcmUgTGV1dGUgV3VlcnN0ZSBibGVpYmVuIHdvbGxlbi4gRGFzCkhhdXB0YXJndW1lbnQgZ2VnZW4gZGllIEF1dG9mb2xnZSB3YXIgZG9jaCBiaXNoZXIsIGRhc3MgZGllIExldXRlIHNpY2ggd2VuaWdlcgphdXNrZW5uZW4gdW5kIGVpbmZhY2ggV3VlcnN0ZSB3ZXJkZW4sIHdlbm4gc2llIGRpZXNlIG51dHplbi4gCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6MTIpOgp+IyEgb249QW5hY3Jpb24gb3Q9MTAxODM2ODg4NyBvZz1kaXNrdXNzaW9uCn4jISBybj1HcmltbWJvcm4gcnQ9MTAxODM2ODg2OSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpGYWxzY2hlIFJ1YnJpayB1bmQgMyBOdWxsZW4gZmVobGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6MTMpOgp+IyEgb249QXJrIG90PTEwMTgzNjkwOTcgb2c9ZGlza3Vzc2lvbgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMTgzNjM0NDYgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKSWNoIGFkcmVzc2llcnRlIGF1Y2ggZWhlciBkYXMgYXRtb3NwaGFlcmlzY2hlICJNb25zdGVyIGFicmVpc3NlbiIgdW5kICJLaWxscwphYmtsYXBwZXJuIiBhbHMgZGFzIFRhbmtlbiwgbmF0dWVybGljaCBpc3QgQXV0b2ZvbGdlIG9rLCB3ZW5uIG1hbiBkYXMgR2ViaWV0Cmtlbm50IHVuZCBvZWZ0ZXIgZG9ydCB3YXIsIGFiZXIgb2ZmZW5iYXIgaXN0IGRlbSBuaWNodCBzZWhyIG9mdCBzbywgd2VubiBtYW4KZWluaWdlbiBBcnRpa2VsbiBoaWVyIEdsYXViZW4gc2NoZW5rZW4gZGFyZi4gVW5kIGJpdHRlIGtlaW5lIHdlaXRlcmVuCktvbW1lbnRhcmUgYW4gZWluZW4gYWx0bW9kaXNjaGVuIFRlbG5ldHRlciB3Zy4gImFidGlwcGVuIiA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6MTQpOgp+IyEgb249T3JrdG9ldGVyIG90PTEwMTgzNjkxMzYgb2c9ZGlza3Vzc2lvbgp+IyEgcm49QW5hY3Jpb24gcnQ9MTAxODM2ODg4NyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpJY2ggYW50d29ydGUgbWFsIGF1ZiBkZW4gTGV0emVuIEFydGlrZWwuLgpadSBMdXJjaGk6CkRlciBBenViaSBkYXJmIGRlbiBXZWcgZ2VybmUgc28gb2Z0IHZvbiBIYW5kIGxhdWZlbiB3aWUgZXIgbWFnIHVuZCBpaG4gc2ljaApkYWJlaSBlaW5wcmFlZ2VuLCBudXIgbXVzcyBlciBkYXMgbWFjaGVuIHdhZWhyZW5kIGVyIGluIGRlciBBdXNiaWxkdW5nIGlzdCB1bmQKZGFiZWkgMS4gc2VpbmVuIEF1c2JpbGRlciB1bm5vZXRpZyB3YXJ0ZW4gbGFzc2VuIHVuZCAyLiBlaW4gdWViZXJ0YW5rZW4gaW5zCmxlZXJlIGxhdWZlbiBsYXNzZW4/CgpXZW5uIGVyIGRlbiBXZWcgYmVpbSBlcnN0ZW4gbWFsIGdlemVpZ3QgYmVrb21tZW4gaGF0LCBzbyBrYW5uIGVyIHNpY2ggZGFzCmplZGVyemVpdCBzcGFldGVyIG5vY2ggbWFsIGFuc2NoYXVlbiwgd2VubiBlciBtZWludCBkYXMgZXIgZGFzIGFsbGVpbmUgc2NoYWZmdAp1bmQgZGFiZWkgZGVuIFdlZyBsZXJuZW4uCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjE1KToKfiMhIG9uPUFyayBvdD0xMDE4MzY5MjA2IG9nPWRpc2t1c3Npb24KfiMhIHJuPUxlbGxkb3JpbiBydD0xMDE4MzY4MjUwIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2Cj4gQmxlaWJ0IGJlaW0gVG9waWMsIERhbmtlIDopCgpXaWUgc29sbGVuIHdpciBkYSBqZSBkaWUgMTAwIHZvbGxrcmllZ2VuPwoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNDoxNik6Cn4jISBvbj1XdXJ6ZWwgb3Q9MTAxODM3MjUyNSBvZz1kaXNrdXNzaW9uCn4jISBybj1BcmsgcnQ9MTAxODM2OTIwNiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2Ngp3YXJ1bSAxMDA/IDUwIHJlaWNoZW4gZG9jaCwgd2VubiBpY2ggZGFzIHJpY2h0aWcgZ2VsZXNlbiBoYWJlLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6MTcpOgp+IyEgb249V29vZHkgb3Q9MTAxODM3NTc0NyBvZz1kaXNrdXNzaW9uCn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAxODM2OTEzNiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpKYSwgZ2Vob2VydCBtZWluZXIgTWVpbnVuZyBuYWNoIGF1Y2ggenVtIExlcm5wcm96ZXNzLiBFcyBpc3QgaGFsdAppbW1lciBkaWUgRnJhZ2UsIHdpZSB3ZWl0IGRpZSBMaWIgZGVuIFNwaWVsZXIgZW50bXVlbmRpZ2VuIGRhcmYKdW5kIHdvIGRpZSBHcmVuemUgaXN0LiBVbmQgZGllIGlzdCBpbWhvIG1pdCBkZW0gYXV0b2ZvbGdlIGRvY2gKemllbWxpY2ggdWViZXJzY2hyaXR0ZW4gd29yZGVuLi4uIGRpZSBBcmd1bWVudGF0aW9uICJ3ZXJzIG5pY2h0CndpbGwgc29sbHMgbmljaHQgdmVyd2VuZGVuIiBnZWh0IGplZGVuZmFsbHMgYW4gZGVyIERpc2t1c3Npb24Kdm9yYmVpLi4uCgoKY29udHJhLApXb29keS4tCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjE4KToKfiMhIG9uPVpvb2sgb3Q9MTAxODM4MDE3OCBvZz1kaXNrdXNzaW9uCn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAxODM2OTEzNiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpJY2ggaGFiIFdhcnRlbiBhdWYgZGVuIEF6dWJpIG5pZSBhbHMgInVubm9ldGlnIiBlbXBmdW5kZW4gdW5kIGphLCBpY2ggaGFiZQpBdXRvZm9sZ2UgaW4gZGVyIFJlZ2VsIGltbWVyIGF1cy4gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6MTkpOgp+IyEgb249V3VyemVsIG90PTEwMTgzODQyNzQgb2c9ZGlza3Vzc2lvbgp+IyEgcm49Wm9vayBydD0xMDE4MzgwMTc4IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CmljaCBoYWIgYXV0b2ZvbGdlIGF1Y2ggaW1tZXIgYXVzLiBpbiBtZWluZW4gd29ya3Jvb20gd29sbHQgaWhyIGVoIG5pY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjIwKToKfiMhIG9uPUFuYWNyaW9uIG90PTEwMTgzODQ0MDkgb2c9ZGlza3Vzc2lvbgp+IyEgcm49V3VyemVsIHJ0PTEwMTgzODQyNzQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKSWNoIG1hY2hlIGF1dG9mb2xnZSBnZXJuZSBhbiwgd2VubiB3ZXIgZHJpbmdlbmQgaW4gZGVuIFRhbGtlc3NlbCBtdXNzIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjIxKToKfiMhIG9uPVd1cnplbCBvdD0xMDE4Mzg0NDc4IG9nPWRpc2t1c3Npb24KfiMhIHJuPUFuYWNyaW9uIHJ0PTEwMTgzODQ0MDkgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKaW0gdWVicmlnZW46IGF1ZiBhenViaXMgd2FydGVuIGthbm4gc2Nob24gbmVydmlnIHNlaW4uIGF1ZiBtYW5jaGUgd2FydGUgaWNoCnNjaG9uIHNlaXQgamFocmVuLCBhYmVyIHNpZSBiZWtvbW1lbiBpaHIgZ2VzZWxsZW5zdHVlY2sgZWluZmFjaCBuaWNodCBmZXJ0aWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6MjIpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwMTgzODQ1NTggb2c9ZGlza3Vzc2lvbgp+IyEgcm49V3VyemVsIHJ0PTEwMTgzODQ0Nzggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKQWxzbywgbWVpbiBBenViaSBpc3Qgdm9lbGxpZyBvay4gV2VubiBlciBuaWNodCBnZXJhZGUgaW4gVXJsYXViLCBpbiBkZXIKQmVydWZzc2NodWxlLCByYXVjaGVuLCBlc3NlbiBvZGVyIHNvbnN0d2llIGFid2VzZW5kIGlzdC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMjogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6MjMpOgp+IyEgb249QW5hY3Jpb24gb3Q9MTAxODM4NDU5MCBvZz1kaXNrdXNzaW9uCn4jISBybj1HcmltbWJvcm4gcnQ9MTAxODM4NDU1OCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpOb2NoIDE5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6MjQpOgp+IyEgb249Um9jaHVzIG90PTEwMTgzODQ2MDAgb2c9ZGlza3Vzc2lvbgp+IyEgcm49V3VyemVsIHJ0PTEwMTgzODQ0Nzggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKQWVobSwgV3VyemVsLCBmYWxscyBlcyBEaXIgbm9jaCBrZWluZXIgZ2VzYWd0IGhhdDoKTWl0IEF1dG9mb2xnZSBrYW5uIG1hbiBuaWNodCBNYWdpZXIgZm9sZ2VuIGxhc3NlbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMzOiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNDoyNSk6Cn4jISBvbj1XdXJ6ZWwgb3Q9MTAxODM4NDYwNiBvZz1kaXNrdXNzaW9uCn4jISBybj1BbmFjcmlvbiBydD0xMDE4Mzg0NTkwIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CnNjaGFmZmVuIHdpciBhdWNoIG5vY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNDogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6MjYpOgp+IyEgb249QW5hY3Jpb24gb3Q9MTAxODM4NDY0NiBvZz1kaXNrdXNzaW9uCn4jISBybj1XdXJ6ZWwgcnQ9MTAxODM4NDYwNiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpOaWNodCB3ZW5uIFJvY2h1cyB3ZWl0ZXIgUmUncyB2ZXJzY2hlbmt0IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzU6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjI3KToKfiMhIG9uPVd1cnplbCBvdD0xMDE4Mzg0NjcyIG9nPWRpc2t1c3Npb24KfiMhIHJuPUFuYWNyaW9uIHJ0PTEwMTgzODQ2NDYgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKcm9jaHVzIG5pbW10IGRhcyBlaW5mYWNoIHp1IGVybnN0LiBlYmVuIGtlaW4ga2VubmVyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNTogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6MjgpOgp+IyEgb249QW50aGVhIG90PTEwMTgzODQ3MDggb2c9ZGlza3Vzc2lvbgp+IyEgcm49QW5hY3Jpb24gcnQ9MTAxODM4NDY0NiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpXaXIga29lbm50ZW4gamEgbWFsIGFsbGUgYWt0aXZlbiB1bmQgaWRlbG5kZW4gTWFnaWVyIGRhenUgYnJpbmdlbiwgQW5hY3Jpb24genUKZm9sZ2VuLiBVbmQgZGFiZWkgZHVtbWVzIFpldWNoIHp1IGxhYmVybiAoZmFlbGx0IGRlbiBtZWlzdGVuIGphIG5pY2h0IHNjaHdlcgo7KSApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNjogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6MjkpOgp+IyEgb249QW5hY3Jpb24gb3Q9MTAxODM4NDczNyBvZz1kaXNrdXNzaW9uCn4jISBybj1BbnRoZWEgcnQ9MTAxODM4NDcwOCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpHbmFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhZGUhISEhISEhISEgKmF1ZiBrbmllbiBydW1ydXRzY2gqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNjogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6MzApOgp+IyEgb249R3JpbW1ib3JuIG90PTEwMTgzODQ3NDcgb2c9ZGlza3Vzc2lvbgp+IyEgcm49QW50aGVhIHJ0PTEwMTgzODQ3MDggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKSWVoLCBuZWluLCBkYW5uIGZhbmdlIGljaCBtaXIgYW0gRW5kZSBub2NoIGVpbmVuIEZQIGVpbi4KCkdkQSBibGVpYnQgbGllYmVyIGluIGRlciBTaWNoZXJoZWl0IHNlaW5lcyBSYXVtZXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM3OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNDozMSk6Cn4jISBvbj1TcGVsbGZpcmUgb3Q9MTAxODM5MDIzMSBvZz1kaXNrdXNzaW9uCn4jISBybj1HcmltbWJvcm4gcnQ9MTAxODM4NDc0NyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpJY2ggYmluIGZ1ZXJzIEF1dG9mb2xnZSBhYmhhZW5nZW4sIHdlbm5zIGRlbiBLYWVtcGZlcm4gc2NoYWRldCEKSXN0IGVoIHp1IGxhbmdzYW0gOz4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNDozMik6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMDE4MzkyNzI5IG9nPWRpc2t1c3Npb24KfiMhIHJuPVpvb2sgcnQ9MTAxODM4MDE3OCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpJY2ggZmFuZCBlcyBpbW1lciByZWNodCBuZXJ2aWcgd2VubiBtYW4gc2ljaCBtYWwgd2llZGVyIGdlZ2Vuc2VpdGlnIHZlcmxvcmVuCmhhdHRlIHVuZCBqZXR6dCBiZWlkZSBhbGxlaW4genVyIEtuZWlwZSBzdGllZmVsdGVuLiBVbiBkYW5uIGZhbmQgaWNoIGVzIHNlaHIKbmV0dCwgd2VubiBkZXIgQXVzYmlsZGVyIHZvcmJlaWdlemlzY2h0IGthbSB1bmQgbWljaCBkYW5rIGVpbmdlc2NoYWx0ZXRlbSBBRgptaXRuYWhtLiBBdXMgcmVpbmVyIEJlcXVlbWxpY2hrZWl0IC4uLiBpY2ggaGF0dGUga2VpbmUgV2VnZXNjcmlwdGUgZnVlcgpkaXZlcnNlIEdlZ2VuZGVuLiBVbmQgaWNoIGhhYmUga2VpbmUgVGFzdGUgbWl0ICJvYmVuIiBiZWxlZ3QsIHdlc2hhbGIgbWljaApXZWdlIG1pdCAoeHh4KW9iZW4vKHh4eCl1bnRlbiBhdWYgRGF1ZXIgenUgV2VnZXNjcmlwdGVuIHZlcmxlaXRlbiAuLi4KClp1cnVlY2sgenVtIFRoZW1hIC0gZGVyIEhhdXB0Z3J1bmQgZ2VnZW4gQUYgaXN0IG1laW5lcyBMZXNlbnMgbmFjaCBkZXIgRHJ1Y2sKYXVmIGRpZSBBenViaXMgLSBkZW4genUgbWlsZGVybiBsaWVndCBtZWluZXIgTWVpbnVuZyBuYWNoIGJlaSBkZXIgR2lsZGUgKG1laHIKQWt0aXZpdGFldCBzZWl0ZW5zIGJlaWRlciBQYXJ0ZWllbiB3YWVocmVuZCBkZXIgQXVzYmlsZHVuZyB6LkIuKS4gRGVyIHp3ZWl0ZQpBbGliaWdydW5kIC0gV3Vyc3RzZWhlciBtaXQgaWhuZW4gdW5iZWthbm50ZW4gS2lsbHMgLSBpc3QgbmljaHQgZHVyY2ggQUYKYXVzZ2Vsb2VzdCBub2NoIGR1cmNocyBBYnNjaGFmZmVuIGJlaGViYmFyLCBkYW5uIHZlcmxlaWhlbiBkaWUgTGV1dGUgaGFsdCBpaHJlCkNoYXJha3RlcmUgd2llZGVyLCBkZW5uIGRpZSBuZXR0ZW4gU2VlbGVuIGRpZSBpaG5lbiBkaWUgS2lsbHMgenVzY2hhbnplbiBoYWJlbgphdWNoIHdlbmlnIE11ZWhlIHNpZSBpaG5lbiB6dSBtYWNoZW4uCgpHbG9pbihzb24pCgpQUzogRWluIGdyb2Vzc2VyZXMgVWViZWwgbGllZ3QgSU1ITyBkYXJpbiB2b24gZGVyIEZlcm53ZXN0a2FyYXdhbmUgdWViZXIgZGllCld1ZXN0ZSB1bmQgZGVuIERzY2h1bmdlbCBuZWJzdCBXYXJva2dlYmlyZ2UgKGZ1ZXIgR2V1ZWJ0ZSkgaW4gZWluZW0gSGVyenNjaGxhZwpuYWNoIFBWIHNrcmlwdGVuIHp1IGtvZW5uZW4uIFRhbmtzdGVsbGVudG91cmlzbXVzLCBLbmVpcGVudG91cmlzbXVzLApTY2huZWxsYXVzYmlsZHVuZyBpbSBEdXJjaHJlaXNzbW9kdXMgaGFiZW4gZXZlbnR1ZWxsIGlocmUgV3VyemVsbiBkYXJpbi4gQWNoCndhcyByZWQgaWNoLCBuaWNodCBudXIgV3VyemVsbiwgV3VyemVsIGlzdCBhbiBhbGxlbSBzY2h1bGQgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6MzMpOgp+IyEgb249QW5ha2luIG90PTEwMTg0MTg1MTQgb2c9ZGlza3Vzc2lvbgp+IyEgcm49QXJrIHJ0PTEwMTgzNjkwOTcgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKSWNoIGJpbiBmdWVyIEF1dG9mb2xnZSwgZGVuIHNvIGtvZW5uZW4gYXVjaCB2aWVyIGFsdGUgUmVudG5lciB6dSBTdGVsbGVuCklocmVyIEp1Z2VuZCBhdWZicmVjaGVuIHVuZCBudXIgZWluZXIgbXVzcyBzaWNoIGFibXVlaGVuIHVuZCBkZW4gV2VnCmZpbmRlbi4gSWNoIGJpbiBqYSBmcm9oIHdlbm4gbWljaCBkYW1pdCBlaW5lciB3aWVkZXIgbWFsIGR1cmNoIGRpZSBTU1AKZnVlaHJ0IDopCgpBLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjM0KToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAxODQyMTU4NyBvZz1kaXNrdXNzaW9uCn4jISBybj1Xb29keSBydD0xMDE4Mzc1NzQ3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CmFsc28gaWNoIGhhYiBuaWNodCBzbyBnYW56IHZlcnN0YW5kZW4sIHdpZXNvIGRpZSBBRiBtaWNoIGVudG11ZW5kaWdlbiBrYW5uPyBPYgppY2ggc2llIGVpbnNjaGFsdGUgb2RlciBuaWNodCBibGVpYnQgZWluemlnIHVuZCBhbGxlaW5lIG1laW5lIEVudHNjaGVpZHVuZyB1bmQKbmljaHQgZGllIEVudHNjaGVpZHVuZyBkZXIgTGliLiBJY2ggbXVzcyBlaHJsaWNoIHp1Z2ViZW4sIGRhc3MgaWNoIGJpc2hlciBrZWluCkFyZ3VtZW50IGRhZnVlciBnZWxlc2VuIGhhYmUsIGRpZSBBRiBhYnp1c2NoYWZmZW4uIAoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjM1KToKfiMhIG9uPVdvb2R5IG90PTEwMTg0MzE5MjUgb2c9ZGlza3Vzc2lvbgp+IyEgcm49RWxiZXJldCBydD0xMDE4NDIxNTg3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2ClNjaGFkZSwgZGFzcyBEdSBlcyB3aWUgRHUgc2Fnc3QgbmljaHQgdmVyc3RhbmRlbiBoYXN0LiBEZWluZXIgQXJndW1lbnRhdGlvbgp6dSBmb2xnZW4gaXN0IGplZGVuZmFsbHMgcmVjaHQgc2Nod2VyIC0gd2FlcmUgbmljaHQgYXVjaCBlaW4gInphcCBnZWduZXIiCmxlZ2l0aW0sIHNvbGFuZ2Ugc2ljaCBqZWRlciBzZWxic3QgYXVzc3VjaGVuIGthbm4sIG9iIGVycyB2ZXJ3ZW5kZXQ/CkFsbGVpbiBkaWUgTW9lZ2xpY2hrZWl0LCBuaWNodCBtYWwgbWVociBzZWxiZXIgV2VnZSBsYXVmZW4genUgbXVlc3NlbiwKaGFsdGUgaWNoIGZ1ZXIgemllbWxpY2ggZW50bXVlbmRpZ2VuZC4gQWJlciBkYXMgS2luZCBsaWVndCBkb2NoIGVoIHNjaG9uCmxhZW5nc3QgaW0gQnJ1bm5lbi4uLiB1bXNvIGxvZ2lzY2hlciwgZGFzcyBlcyBtYW5jaGUgbmljaHQgcmF1c2hvbGVuCndvbGxlbiA7LSkKCgpXb29keS4tCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjM2KToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAxODQzMjYxNCBvZz1kaXNrdXNzaW9uCn4jISBybj1Xb29keSBydD0xMDE4NDMxOTI1IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2Ck5laW4sIGljaCB3dWVyZGUgbmljaHQgc2FnZW4sIGRhc3MgZWluIHphcCBHZWduZXIgbWl0IGRlciBBRiB6dSB2ZXJnbGVpY2hlbgppc3QuIEluIGtlaW5lciBXZWlzZS4gU2luZCBkZWluZXIgQXJndW1lbnRhdGlvbiBuYWNoIG5pY2h0IGF1Y2ggUG9ydGFsZSB6dW0KYmVpc3BpZWwgenUgdmVyZGFtbWVuPyBBbGxlaW4gZGllIE1vZWdsaWNoa2VpdCwgUG9ydGFsZSB6dSBiZW51dHplbiB1bmQgbmljaHQKZGVuIFdlZyB2b24gaGFuZCB6dSBnZWhlbiBpc3QgemllbWxpY2ggZW50bXVlbmRpZ2VuZCAuLi4gPwoKSWNoIHdlaXNzIGphIG5pY2h0LiBJY2ggYmVudXR6ZSBQb3J0YWxlIHRyb3R6ZGVtLgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjM3KToKfiMhIG9uPVdvb2R5IG90PTEwMTg0MzMyMDEgb2c9ZGlza3Vzc2lvbgp+IyEgcm49RWxiZXJldCBydD0xMDE4NDMyNjE0IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CkdlbmF1IGRhcyBpc3QgZGVyIFB1bmt0IC0gaXJnZW5kd28gbXVzcyBlaW5lIEdyZW56ZSBnZXpvZ2VuIHdlcmRlbiwgdW5kCmRpZSB6aWVoZW4gdmVyc2NoaWVkZW5lIExldXRlIGhhbHQgYW4gdmVyc2NoaWVkZW5lbiBTdGVsbGVuLiBJY2ggd29sbHRlCmVpZ3RsLiBudXIgZGFyYXVmIGhpbmF1cywgZGFzcyBlaW4gc2ltcGxlcyAiV2VubiBEdSBlcyBuaWNodCB3aWxsc3QsCnZlcndlbmRlIGVzIG5pY2h0IiBrZWluZW4ga29uc3RydWt0aXZlbiBEaXNrdXNzaW9uc2JlaXRyYWcgZGFyc3RlbGx0LgpVbmQgaW5zb2Zlcm4gd2FyIGRlciBWZXJnbGVpY2ggZ2VyZWNodGZlcnRpZ3QuCgpJY2ggd2Vpc3MgamEgbmljaHQuIFBvcnRhbGUgc2luZCBpbiBkZXIgRm9ybSBlaCBkb29mLiA7KQoKCldvb2R5Li0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMjogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6MzgpOgp+IyEgb249RWxiZXJldCBvdD0xMDE4NDM1NzQyIG9nPWRpc2t1c3Npb24KfiMhIHJuPVdvb2R5IHJ0PTEwMTg0MzMyMDEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKbmFqYSBhYmVyIGljaCBzZWggZGllIGdyZW56ZSBiZWkgZGVyIGFmIGVpbmZhY2ggbmljaHQuIFdlbm4gaWNoIGVpbiB6YXAKbW9uc3RlciBoYWV0dGUsIGRhbm4gZ3JpZmZlIGljaCBlcmhlYmxpY2ggaW4gZGFzIHNwaWVsZ2VzY2hlaGVuIGVpIHdhcyBhdWNoCmFuZGVyZSBzcGllbGVyIGludm9sdmllcnQuIEFiZXIgZGllIGFmIGdyZWlmdCBtZWluZXIgTWVpbnVuZyBoYWx0IG5pY2h0CmRlcmFydGlnIGlucyBTcGllbGdlc2NoZWhlbiBlaW4uIERhIG1hZyBpY2ggbWljaCB0YWV1c2NoZW4sIGFiZXIgaWNoIGthbm4Kd2lya2xpY2ggbmljaHQgc2VoZW4sIHdhcnVtIGljaCBlaW5lbiBhbmRlcmVuIFNwaWVsZXIgYmVoaW5kZXJlLCB3ZWlsIGljaCBwZXIKYXV0b2ZvbGdlIGplbWFuZGVtIEZvbGdlLgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzM6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjM5KToKfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDE4NDQyNzM4IG9nPWRpc2t1c3Npb24KfiMhIHJuPUVsYmVyZXQgcnQ9MTAxODQzNTc0MiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpCZWkgQUYgbXVzcyBudXIgbm9jaCBkZXIgVGVhbWxlaXRlciAiZGVua2VuIiwgd2VubiBlcyB1bSBkYXMgJ3RhbmtlbmxhdWZlbicKZ2VodCwgb2huZSBBRiBtdWVzc2VuIGRpZSBUZWFtbWl0Z2xpZWRlciBzZWxic3QgYXVmIHNpY2ggYWNodCBnZWJlbi4gRGFzCnZlcmxhbmd0IGRldXRsaWNoIG1laHIgS29vcmRpbmF0aW9uc2ZhZWhpZ2tlaXRlbi4gRGllIEFyZ3VtZW50YXRpb24sIGRhc3MKZXMgbWl0IFRGLUVuZ2luZWVyaW5nIGRvY2ggYXVjaCBtYWNoYmFyIGlzdCwgZ3JlaWZ0IG51ciBiZWRpbmd0OiBUYXVzZW5kCmFuZGVyZSBEaW5nZSAoUXVlc3Rsb2VzZW4sIEF1dG9tZXR6ZWxuLCAuLi4pIGthbm4gVEYgbWl0IGVpbmVtIGJpc3NjaGVuCmd1dC16dXJlZGVuIGF1Y2ggdW5kIGtlaW5lciBrb21tdCBhdWYgZGllIElkZWUsIGluIGRlciBHaWxkZSBlaW4gImVyZnVlbGxlCm5hcnJlbmJhbGwiIGVpbnp1YmF1ZW4uLi4KCkFsbGVzIGluIGFsbGVtIGxhZXVmdCBlcyBhdWYgZGFzIGFsdGUgTGllZCBhdWY6IERlbiBlaWdlbmVuIExlYmVuc3N0YW5kYXJkCnNldHp0IGZyZWl3aWxsaWcga2F1bSBlaW5lciBtZWhyIGhlcnVudGVyLiBEYXJhbiB3aXJkIGF1Y2ggdW5zZXIgbGllYmVzClZhdGVybGFuZCBub2NoIG1hZWNodGlnIHp1IGtuYWJiZXJuIGhhYmVuLiA7KQoKQ3VjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzQ6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjQwKToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAxODQ0Mjk4MCBvZz1kaXNrdXNzaW9uCn4jISBybj1DdWNodWxsaW4gcnQ9MTAxODQ0MjczOCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpzY2hvbiBrbGFyLiBFcyBnaWJ0IHNlaHIgZ3V0ZSBHcnVlbmRlLCB3aWVzbyBtYW4gb2Z0IGF1ZiBhdXRvZm9sZ2UgdmVyemljaHRlbgp3aWxsLiBBYmVyIGRlc3dlZ2VuIHdpcmt0IGVzIHNpY2ggbWVpbmVyIE1laW51bmcgbmFjaCBuaWNodCB1bmJlZGluZ3QgbmVnYXRpdgphdWYgZGFzIFNwaWVsZ2VzY2hlaGVuIGF1cy4gV2VyIG51ciBwZXIgYXV0b2ZvbGdlIG1pdGdlc2NobGVwcHQgd2lyZCwgYmxlaWJ0Cld1cnN0LCBhYmVyIGRhcyBibGllYmUgZXIgYXVjaCBvaG5lLiBXZXIgZWhpZXIgd2lya2xpY2ggZXJuc3RoYWZ0IHdhcyB3ZXJkZW4Kd2lsbCwgd2lyZCBmcnVlaCBnZW51ZyBzZWxiZXIgbWVya2VuLCB3YXMgZXIgYWxsZXMgc2VsYmVyIGF1c3Byb2JpZXJlbiBiencKZXJmb3JzY2hlbiBtdXNzLiBOaWNodCBkZXN0byBUcm90eiBnaWJ0IGVzIHZpZWxsZWljaHQgYWJlciBGYWVsbGUsIGluIGRlbmVuCm1hbiBkaWUgQXV0b2ZvbGdlIHZpZWxsZWljaHQgcmVjaHQgc2lubnZvbGwgZWluc2V0emVuIGthbm4uIFdpZXNvIGFsc28KYWJoYWVuZ2VuIHdhcyB2aWVsbGVpY2h0IG51ZXR6dCBhYmVyIG5pY2h0IHNjaGFkZXQuIFVuZCB3ZW5uIGVzIHNjaGFkZXQgbnVyCmRlbSwgZGVyIGVzIHVlYmVybWFlc3NpZyBiZXppZWh1bmdzd2Vpc2UgZmFsc2NoIHZlcndlbmRldD8KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM1OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNDo0MSk6Cn4jISBvbj1DaWNlcm8gb3Q9MTAxODQ0MzA4OCBvZz1kaXNrdXNzaW9uCn4jISBybj1FbGJlcmV0IHJ0PTEwMTg0NDI5ODAgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKSWNoIG11c3MgRWxiZXJldCBkYSB6dXN0aW1tZW4uLi4gTmUgYW5kZXJlIERpc2t1c3Npb24gd2FlcmUgdmllbGxlaWNodCB1ZWJlcgpkYXMgQXVzYmlsZHVuc3N5c3RlbSBkZXIgdHJ2ZXMgYW5nZWJyYWNodCwgYWJlciBhdXRvZm9sZ2UgaGF0IHNpY2ggZGFtaXQKZXJzY2hvZXBmZW5kIGF1c2Rpc2t1dGllcnQhIDopCgpTaGFkb1cKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM2OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNDo0Mik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTAxODQ0MzIzMiBvZz1kaXNrdXNzaW9uCn4jISBybj1DaWNlcm8gcnQ9MTAxODQ0MzA4OCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpTb3dlaXQgaWNoIGRpZSBBcmd1bWVudGUgdWViZXJmbG9nZW4gdW5kIHZlcnN0YW5kZW4gaGFiZSB3YWVyZSBlcyBhbHNvCndlaXRnZWhlbmQgS29uc2VucyB6dSBzYWdlbiAiYXV0b2ZvbGdlIGdlaHQgbnVyIGJlaSBsZXZlbCBwbHVzbWludXMgNSI/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM3OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNDo0Myk6Cn4jISBvbj1FbGJlcmV0IG90PTEwMTg0NDMyOTAgb2c9ZGlza3Vzc2lvbgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTg0NDMyMzIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKbm9lLCBrb25zZW5zIGlzdCBkYXMgbmljaHQuIEljaCBiaW4gaW1tZXIgbm9jaCBkZXIgTWVpbnVuZzogc28gbGFzc2VuIHdpZSBlcwppc3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM3OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNDo0NCk6Cn4jISBvbj1DaWNlcm8gb3Q9MTAxODQ0MzMwMyBvZz1kaXNrdXNzaW9uCn4jISBybj1HcmltbWJvcm4gcnQ9MTAxODQ0MzIzMiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpBZWhtLi4uIERhbWl0IHdhZXJlbiB3aXIgd2llZGVyIGJlaSBkZW4gVHJ2ZXMuLi4gRGEgc2luZCBBdXNiaWxkZXIgdW5kIEF6dWJpCm5pZSBudXIgNSBTdHVmZW4gYXVzZWluYW5kZXIuLi4KQWxzbyBiZWZ1ZXJjaHRlIGljaCBoaWVyIG4gQXVmc2NocmVpIGRlciBLYWVtcGZlciAqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM4OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNDo0NSk6Cn4jISBvbj1Xb29keSBvdD0xMDE4NDQzMzM1IG9nPWRpc2t1c3Npb24KfiMhIHJuPUNpY2VybyBydD0xMDE4NDQzMzAzIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CldvbWl0IGphIFNpbm4gdW5kIFp3ZWNrIGVyZnVlbGx0IHdhZXIuIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzk6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjQ2KToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAxODQ0MzQxMCBvZz1kaXNrdXNzaW9uCn4jISBybj1Xb29keSBydD0xMDE4NDQzMzM1IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CmljaCBoYWIga2VpbiBwcm9ibGVtIGRhbWl0LCBhZiBmdWVyIGF1c2JpbGR1bmcgYWJ6dWtsZW1tZW4uIEFiZXIgYW4gc2ljaApzb2xsdGUgZXMgZXJoYWx0ZW4gYmxlaWJlbiwgZmluZGUgaWNoLiBEYXMgaGF0IG1pdCBLYWVtcGZlcm4gbmljaHRzIHp1IHR1bi4KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQwOiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNDo0Nyk6Cn4jISBvbj1Xb29keSBvdD0xMDE4NDQzNzQzIG9nPWRpc2t1c3Npb24KfiMhIHJuPUVsYmVyZXQgcnQ9MTAxODQ0MzQxMCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpJY2ggZmluZHMgbmFjaCB3aWUgdm9yIHZvbGxrb21tZW4gZmVobCBhbSBQbGF0ei4gR2FueiBlZ2FsIHdvZnVlci4KTWFuIG11c3MgV3VlcnN0ZSAob2huZSBtaWNoIGF1c3p1a2xhbW1lcm4pIG5pY2h0IGF1Y2ggbm9jaCBmb2VyZGVybiA7KQoKV29vZHkuLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQxOiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNDo0OCk6Cn4jISBvbj1FbGJlcmV0IG90PTEwMTg0NDM4Mzkgb2c9ZGlza3Vzc2lvbgp+IyEgcm49V29vZHkgcnQ9MTAxODQ0Mzc0MyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgphYmVyIGVzIGJsZWlidCBkaWUgZW50c2NoZWlkdW5nIGVpbmVyIGplZGVuIFd1cnN0LCBvYiBzaWVzIGJsZWliZW4gd2lsbCBvZGVyCm5pY2h0LiB1bmQgZnVlciBuaWNodCB3dWVyc3RlIGthbm5zIHdpcmtsaWNoIHByYWt0aXNjaCBzZWlpbi4KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNDo0OSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTAxODQ0NDQxNiBvZz1kaXNrdXNzaW9uCn4jISBybj1FbGJlcmV0IHJ0PTEwMTgzNjg4ODMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKTWl0IGRlcnNlbGJlbiBCZWdydWVuZHVuZyBmaW5kZXN0IER1IGF1Y2ggS0wgaW4gT3JkbnVuZz8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjUwKToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAxODQ0NDQ3MCBvZz1kaXNrdXNzaW9uCn4jISBybj1HcmltbWJvcm4gcnQ9MTAxODQ0NDQxNiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgppcmdlbmR3aWUgdmVyc3RlaCBpY2ggbmljaHQsIHdhcyBrbCB1bmQgYWYgbWl0ZWlubmFuZGVyIHp1IHR1biBoYWJlbiwgYWJlcgprbGFlcnQgbWljaCBhdWYsIGljaCBiaW4gZG9vZgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjUxKToKfiMhIG9uPUthcmlzIG90PTEwMTg0NDQ1MzQgb2c9ZGlza3Vzc2lvbgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTg0NDQ0MTYgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKTWl0IGRlcnNlbGJlbiBCZWdydWVuZHVuZyBpc3QgamVnbGljaGUgRXJsZWljaHRlcnVuZyB6dW0gQWJoYWVuZ2VuIHZlcmRhbW10LgpBbHNvIHdlZyBtaXQgZGVuIFdhZmZlbiwgRmV1ZXJiYWVsbGVuIHVuZCB3YXMgd2Vpc3MgaWNoIG5vY2ggYWxsZXMuCldlZyBtaXQgQ2xpZW50cywgYW0gYmVzdGVuIHdlZyBtaXQgZGVtIGdhbnplbiBNRy4KV2VpbCBkYXMgTUcgaGFlbHQgamEgdm9tIGFyYmVpdGVuIGFiLiBPZGVyIHZvbSBzdHVkaWVyZW4uIFVOZCB3aXIgV3VlcnN0ZQp3aXNzZW4gamEgYWxsZSBuaWNodCwgd2llIHdpciBoaWVyIGF1ZmhvZXJlbiBzb2xsZW4uCgpLYXJpcywgYmxlaWJ0IGF1ZiBkZW0gVGVwcGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNDo1Mik6Cn4jISBvbj1FbGJlcmV0IG90PTEwMTg0NDQ1Nzkgb2c9ZGlza3Vzc2lvbgp+IyEgcm49S2FyaXMgcnQ9MTAxODQ0NDUzNCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgplbmRsaWNoIGVpbmVyLCBkZXIgbWljaCB2ZXJzdGVodCA6KQoKRWxiaSAoZ2VodCBqZXR6dCBhcmJlaXRlbiA6KSApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6NTMpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwMTg0NDQ2MDEgb2c9ZGlza3Vzc2lvbgp+IyEgcm49S2FyaXMgcnQ9MTAxODQ0NDUzNCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpXZW5uIGRpZSBCZWdydWVuZHVuZyBsYXV0ZXQgIndlcnMgbmljaHQgd2lsbCBtdXNzIGVzIG5pY2h0IHR1biwgZnVlciBkaWUKYW5kZXJlbiwgZGllIFd1cnN0IHNlaW4gdW5kIGJsZWliZW4gd29sbGVuLCBpc3RzIHByYWt0aXNjaCIga2FubiBtYW4gZGFtaXQKYXVjaCBLTCB2ZXJ0ZWlkaWdlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjU0KToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAxODQ0NDY2NSBvZz1kaXNrdXNzaW9uCn4jISBybj1HcmltbWJvcm4gcnQ9MTAxODQ0NDYwMSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2Ngp0dSBpY2ggYWJlciBuaWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjU1KToKfiMhIG9uPUthcmlzIG90PTEwMTg0NDQ2ODMgb2c9ZGlza3Vzc2lvbgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTg0NDQ2MDEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKTkFjaGRlbSBkYXMgTUcgamEgZGFubiBzY2hvbiBhYmdlaGFlbmd0IGlzdCwgYnJhdWNoc3RlIGRpZSBLTCBuaWNoIG1laHIKdmVydGVpZGlnZW4KCkthcmlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTQ6NTYpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwMTg0NDQ3MTMgb2c9ZGlza3Vzc2lvbgp+IyEgcm49RWxiZXJldCBydD0xMDE4NDQ0NjY1IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2Ck5laW4uIEFiZXIgZGFubiBzb2xsdGVzdCBEdSBEaXIsIGZpbmRlIGljaCwgZWluZSBiZXNzZXJlIEFyZ3VtZW50YXRpb24KZWluZmFsbGVuIGxhc3NlbiBhbHMgZWluZSwgbWl0IGRlciBtYW4gZ2VuZXJlbGwgamVkZW4gQmxvZWRzaW5uIHJlY2h0ZmVydGlnZW4Ka2Fubi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjU3KToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAxODQ0NDgxMCBvZz1kaXNrdXNzaW9uCn4jISBybj1HcmltbWJvcm4gcnQ9MTAxODQ0NDcxMyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2Ngoqc2V1ZnosIGxhc3N0IGlociBldWNoIGRvY2ggbWFsIGVpbmZhbGxlbiwgd2llc28gbWFucyBhYmhhZW5nZW4gc29sbHRlLiBBbHNvCm51ciB6dSBzYWdlbjogd2VycyBudXR6dCBibGVpYnQgd3Vyc3QgdW5kIHdpciB3aW9sbGVuIGtlaW5lIFd1ZXJzdGUsIGljaCB3ZWlzcwpqYSBuaWNodC4KZGFubiBzb2xsdGUgbWFuIGF1Y2ggZWluaWdlciBsdmwtMjAgTWFnaWVyIHVuZCBhdWNoIGVpbmlnZSBzZWhlciBhYmhhZW5nZW4KCkVsYmkgKHpCIG1pY2gsIGljaCBiaW4gdW5kIGJsZWliZSB3dXJzdCB1bmQgZGFzIG5pY2h0IHdlZ2VuIGFmKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjU4KToKfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDE4NDQ0ODQyIG9nPWRpc2t1c3Npb24KfiMhIHJuPUVsYmVyZXQgcnQ9MTAxODQ0NDgxMCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpBbHNvIGRhIGdpYnQgZXMgc2ljaGVyIGVpbmlnZSBMZXZlbC0yMC1NYWdpZXIsIGRpZSBtYW4gZ2V0cm9zdC4uLiA7KQoKQ3VjaCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzM6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE0OjU5KToKfiMhIG9uPUFtYXJ5bGxpcyBvdD0xMDE4NDQ1Mjc4IG9nPWRpc2t1c3Npb24KfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDE4NDQ0ODQyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CkFsc28gZGEgZ2lidCBlcyBzaWNoZXIgZWluaWdlIExldmVsIDVeSDIwLVNwaWVsZXIsIGRpZSBrYW5uIG1hbiBhdWNoCmdldHJvc3QuLi4gOykKCkFtYSogOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNTowMCk6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMDE4NDQ1NDE1IG9nPWRpc2t1c3Npb24KfiMhIHJuPUdyaW1tYm9ybiBydD0xMDE4NDQ0NzEzIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CkRpZSBBcmd1bWVudGF0aW9uIGlzdCBqYSBlcnN0IGR1cmNoIGRpZSBCZWdydWVuZHVuZyAiZW50bXVlbmRpZ3QsIG1hY2h0IGJsb2VkLApuaW1tdCBhbGxlcyBhYiIgYXVmZ2Vrb21tZW4uIEFGIG5pbW10IGtlaW5lc3dlZ3MgZGFzIERlbmtlbiBhYiAtIGFscyBBenViaQptdXNzIGljaCBkZW4gUmF1bSBpbW1yIG5vY2ggYWxsZWluIHZlcmxhc3Nlbi4gRXMgaXN0IGVpbiB6aWVtbGljaCBncm9zc2VyClVudGVyc2NoaWVkIHp3aXNjaGVuIGRlbSBzdHVwaWRlbiAoISkgQWJyZW5uZW4gZWluZXMgV2VnZXNjcmlwdGVzIChlcmxhdWJ0KQpvZGVyIGRlbSBzdHVwaWRlbiBCZWZvbGdlbiBlaW5lciBLTCAodnJib3RlbikgLSBkYXMgbWFuIHNpY2ggaW0gendlaXRlbiBGYWxsCnRhdHNhZWNobGljaCBlaW5lbiBEZW5rYXVmd2FuZCBzcGFydC4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM0OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNTowMSk6Cn4jISBvbj1Pcmt0b2V0ZXIgb3Q9MTAxODQ0NTQ0MSBvZz1kaXNrdXNzaW9uCn4jISBybj1BbWFyeWxsaXMgcnQ9MTAxODQ0NTI3OCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpBaC4uIGVzIGdpYnQgaGllciBMZXV0ZSBkaWUgbmljaHQgZ2FueiBzbyB0b2xsIHNpbmQgd2llIGljaCB1bmQgZGllIHNjaG1laXNzZW4Kd2lyIGFtIGJlc3RlbiBSYXVzPyBQcmltYSEKSWNoIGRhY2h0ZSBkYXMgZGFzIGhpZXIgbW9lZ2xpY2hzdCB2aWVsZW4gTGV1dGVuIFNwYXNzIGJpZXRlbiBzb2xsIHVuZAptb2VnbGljaHN0IHZpZWxzZWl0aWcgc2VpbiBzb2xsLCBhYmVyIGljaCBoYWJlIGRlbiBFaW5kcnVjayBkYXMgZXMgZWluaWdlCmxldXRlIGdpYnQgZGllIGRhcyBkb2NoIGVoZXIgZ2FueiBhbmRlcnMgc2VoZW4uLi4gaWNoIHdlaXMgc2Nob24gd2FydW0gaWNoCmhpZXIgbnVyIG5vY2ggY2hhdHRlLi4uCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzU6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE1OjAyKToKfiMhIG9uPUFtYXJ5bGxpcyBvdD0xMDE4NDQ1NTM5IG9nPWRpc2t1c3Npb24KfiMhIHJuPU9ya3RvZXRlciBydD0xMDE4NDQ1NDQxIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2ClsgXSBEdSBoYXN0IGRpZSBJcm9uaWUgYnp3LiBkaWUgU21pbGV5cyBpbiBtZWluZW0gQXJ0aWtlbCBrb3JyZWt0CmludGVycHJldGllcnQuCgpBbWEqClt4XSBtYWcgZGFzIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNjogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTU6MDMpOgp+IyEgb249Q3VjaHVsbGluIG90PTEwMTg0NDU1ODMgb2c9ZGlza3Vzc2lvbgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMTg0NDU1Mzkgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKWyBdIEFtYXJ5bGxpcyBrYW5uIG1pdCBPcmt0cm9ldGVzIElRIHVtZ2VoZW4uIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzc6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE1OjA0KToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAxODQ0NTYyNyBvZz1kaXNrdXNzaW9uCn4jISBybj1DdWNodWxsaW4gcnQ9MTAxODQ0NTU4MyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpbeF0gaWNoIHd1c3N0ZSBkYXNzIGRpZXNlciBhcnRpa2VsIGtvbW10IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNzogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTU6MDUpOgp+IyEgb249T3JrdG9ldGVyIG90PTEwMTg0NDU3MzIgb2c9ZGlza3Vzc2lvbgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMTg0NDU1ODMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKSGV5ISBVbnMgZ2VoZW4gZGllIEFyZ3VtZW50ZSBhdXMsIGpldHp0IHdpcmRzIHdpZWRlciBwZXJzb2VubGljaC4uIHdlaXRlciBzbwoqZyoKCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zODogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTU6MDYpOgp+IyEgb249Q2ljZXJvIG90PTEwMTg0NDU4MzYgb2c9ZGlza3Vzc2lvbgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMTg0NDU3MzIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKRXMgbGViZSBkYXMgSW50ZXJuZXQhIEluIFJMIHdhZXJlbiBqZXR6IGdld2lzc2UgUGVyc29uZW4gZGFiZWkgYmVsZWlkaWd0IHp1CmdlaGVuIG9kZXIgc2ljaCBhdWYgcHJpbWl0aXZlbSBOaXZlYXUgYW56dW1vdHplbi4uLiBIaWVyIGtvZW5udGUgbWFuCndlbmlnc3RlbnMgbm9jaCBzZWluZSBBcmd1bWVudGUgZWluYnJpbmdlbi4uLiBOaWNodCBkYXMgbWlyIG5vY2ggd2VsY2hlCmVpbmZhbGxlbiB3dWVyZGVuICpnKgoKU2hhZG9XCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zODogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTU6MDcpOgp+IyEgb249Q3VjaHVsbGluIG90PTEwMTg0NDU4NTAgb2c9ZGlza3Vzc2lvbgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMTg0NDU3MzIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKRGllc2UgUnVicmlrIGhlaXNzdCAiZGlza3Vzc2lvbiIuIFZvbiBEaXIgYWxzIG11dG1hc3NsaWNoZXIgVGVpbG5laG1lcgooaW1tZXJoaW4gbWFjaHN0IER1IGRpZSBLbGFwcGUgYXVmKSBlcndhcnRlIGljaCBwZXJzb2VubGljaCBlaW4gTWluZGVzdC0KbWFzcyBhbiBTb3ppYWxrb21wZXRlbnosIHNvIGRhc3MgRHUgenVtaW5kZXN0IG1pdCBnYW56IG9mZmVuc2ljaHRsaWNoIApzY2hlcnpoYWZ0IGdlbWVpbnRlbiBBcnRpa2VsbiB1bXp1Z2VoZW4gdmVybWFnc3QuCgpFYmVuc28gb2ZmZW5zaWNodGxpY2ggc2NoZWludCBhYmVyLCBkYXNzIGRlbSBuaWNodCBzbyBpc3QuIERhcyBpc3QgbnVubWFsCmVpbmUgZ2FueiBwZXJzb2VubGljaGUgRWlnZW5zY2hhZnQuIFdpZSBzb2xsIGljaCBEaXIgc2FnZW4sIGRhc3MgRHUgaGFsdAotNSBQZWlsdW5nIGhhc3QsIG9obmUgcGVyc29lbmxpY2ggenUgd2VyZGVuPyA7KQoKQ3VjaCwgaW1tZXIgb2ZmZW4gdW5kIGVocmxpY2ggOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOTogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTU6MDgpOgp+IyEgb249UGl0ZmFsbCBvdD0xMDE4NDQ1OTE4IG9nPWRpc2t1c3Npb24KfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDE4NDQ1ODUwIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CmRhcyBoaWVyIGlzdCBuaWNodCBkYXMgUkw/ICpzdGF1dXV1dXV1dXV1dXV1dW4qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MDogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTU6MDkpOgp+IyEgb249Q2ljZXJvIG90PTEwMTg0NDU5NjUgb2c9ZGlza3Vzc2lvbgp+IyEgcm49UGl0ZmFsbCBydD0xMDE4NDQ1OTE4IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CkRlciB1bnZlcm1laWRsaWNoZSBLb21tZW50YXIgd2VubiBtYW4gUkwgZXJ3YWVobnQhCipzZXVmeioKClNoYWRvVwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzk6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE1OjEwKToKfiMhIG9uPU9ya3RvZXRlciBvdD0xMDE4NDQ2MDMzIG9nPWRpc2t1c3Npb24KfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDE4NDQ1ODUwIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CkFjaCBqYS4uIGtlaW5lIEFyZ3VtZW50ZSB1bmQgbm9jaCBtZWhyIEJlbGVpZGlndW5nZW4uLiB3ZW5uIGljaCBuaWNodCB3dWVzc3RlCnZvbiB3ZW0gZXMga29tbXQga29lbm50ZSBpY2ggamV0enQgdGF0c2FlY2hsaWNoIGJlbGVpZGlndCBzZWluLi4gIGFiZXIgZGEgZXMKbWljaCBuaWNodCBtYWwgYW11ZXNpZXJ0IHdlcmRlIGljaCBhdWYgZGVpbmUgd2VpdGVyZW4gUmVwbHlzIChkaWUgZGEgc2ljaGVyCmtvbW1lbiB3ZXJkZW4pIG5pY2h0IG1laHIgZWluZ2VoZW4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MTogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTU6MTEpOgp+IyEgb249RWxiZXJldCBvdD0xMDE4NDQ2MTU1IG9nPWRpc2t1c3Npb24KfiMhIHJuPUNpY2VybyBydD0xMDE4NDQ1OTY1IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CmdpbHQgZGFzIG5pY2h0IGZ1ZXIgZGllc2UgZ2FuemUgZGlza3Vzc2lvbj8KYWxsZSAyIG1vbmF0ZSBrb21tdCBkb2NoIGRhcyBnbGVpY2hlIHdpZWRlcjogYXV0b2ZvbGdlIGRpZXNtYWwsIGthbm4gYWJlciBhdWNoCmlyZ2VuZHdhcyBhYndlcnRlbiwgdG9kZXNmb2xnZW4gb2RlciB3ZXIgd2Vpc3Mgd2FzIHNlaW4KCmlyZ2VuZHdpZSBpc3QgZXMgZG9jaCBpbW1lciBkYXMgZ2xlaWNoZSBuYWVtbGljaCBmcnVlaGVyIGdhYnMgZGFzIG5pY2h0IHVuZCBkYQp3YXIgZWggYWxsZXMgYmVzc2VyICggb2IgZGVyIHRoZW1hd2VjaHNlbCBrbGFwcHQ/IDopICkKd2llc28gc3BpZWxlbiB3aXIgbmljaHQgZGFzIG1nIHZvbiA5NiBkcmF1ZiB1bmQgc3BpZWxlbiBkYS4gQ2F0dHkgaGF0IG5vY2gKZWlucy4gRXIgd2FyIHNpY2ggYWJlciBuaWNodCBnYW56IHNpY2hlciBvYiA5NiBvZGVyIDk1IG9kZXIgOTcsIGFiZXIgZGFzCnNvbGx0ZSBlZ2FsIHNlaW4uIFNvbGFuZ2UgZXMgZGEgbm9jaCBrZWluZSBhdXRvZm9sZ2UgZ2FiIGlzdCBqYSBhbGxlcyBvayA6KQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDI6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE1OjEyKToKfiMhIG9uPVR6dWlvcCBvdD0xMDE4NDQ2Mjk1IG9nPWRpc2t1c3Npb24KfiMhIHJuPUVsYmVyZXQgcnQ9MTAxODQ0NjE1NSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpHdXRlIElkZWUuIE51ciB3aWUgc29sbCBHcmltbWJvcm4gbm9jaG1hbCBNYWdpZXIgd2VyZGVuID8KT2huZSBLTCAuLi4gPwpKdXN0IHdvbmRlcmluZyAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQyOiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNToxMyk6Cn4jISBvbj1BbWFyeWxsaXMgb3Q9MTAxODQ0NjMzNiBvZz1kaXNrdXNzaW9uCn4jISBybj1FbGJlcmV0IHJ0PTEwMTg0NDYxNTUgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKZGFzIHdhZXIgZG9jaCBtYWwgbmUgbmV0dGUgSWRlZS4uLiAKZWlubWFsIFZvbGxzaWNoZXJ1bmcgTUcsIHVuZCBkYW5uIGVpbiAoaG9mZmVudGxpY2ggdm9yaGFuZGVuZXMpIFZvbGxiYWNrdXAgdm9uCjE5OTUgZWluc3BpZWxlbi4uLiA6KQoKSWNoIHd1ZXJkIG1hbCBnZXJuIGZ1ZXIgbmUgV29jaGUgb2RlciBzbyBpbiBkaWVzZW0gTW9kdXMgc3BpZWxlbiA6KQoKQW1hKiwgbm9zdGFsZ2lzY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQzOiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNToxNCk6Cn4jISBvbj1DaWNlcm8gb3Q9MTAxODQ0NjM2OCBvZz1kaXNrdXNzaW9uCn4jISBybj1UenVpb3AgcnQ9MTAxODQ0NjI5NSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpOdW4gamEuLi4gUHJvZ3JhbW1pZXJlbiB3aXIgZG9jaCBlaW4gbmV1ZXMgTUcuLi4gT2huZSBhbGxlcy4uLiBLZWluZSBHaWxkZW4sCm51ciBlaW5lIFJhc3NlIHVuZCBlaW5lbiBSYXVtIG1pdCBlaW5lbSBhYnNvbHV0IGVhc3kgTW9uc3Rlci4uLiBQcm9ibGVtZQpnZWxvZXN0ISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDM6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE1OjE1KToKfiMhIG9uPUFudGhlYSBvdD0xMDE4NDQ2NDAzIG9nPWRpc2t1c3Npb24KfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDE4NDQ2MzM2IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CkF1IGphLCBkYW5uIGtlbm4gaWNoIG1pY2ggZW5kbGljaCBhdWNoIHdpZWRlciBhdXMgOykKSmV0enQgZ2lidCBlcyBoaWVyIHNvIHZpZWxlIHVuYmVrYW5udGUgcmFldW1lIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40NDogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTU6MTYpOgp+IyEgb249VHp1aW9wIG90PTEwMTg0NDY0MjEgb2c9ZGlza3Vzc2lvbgp+IyEgcm49Q2ljZXJvIHJ0PTEwMTg0NDYzNjggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKQW0gYmVzdGVuIGJlaSBkZXIgQW5tZWxkdW5nIGZyYWdlbiwgb2IgbWFuIFNlaGVyIG9kZXIgTWFnaWVyIHdlcmRlbiB3aWxsIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40NTogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTU6MTcpOgp+IyEgb249Q2ljZXJvIG90PTEwMTg0NDY0NTcgb2c9ZGlza3Vzc2lvbgp+IyEgcm49VHp1aW9wIHJ0PTEwMTg0NDY0MjEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKRGFzIGdpYnQgZG9jaCBhdWNoIGJsb3NzIHdpZWRlciB1bmdlcmVjaHQgVm9ydGVpbGUKVW5kIGRhbm4gbWVja2VybiB3aWVkZXIgYWxsZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE1OjE4KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDE4NDQ2NTM1IG9nPWRpc2t1c3Npb24KfiMhIHJuPUNpY2VybyBydD0xMDE4MzYzNzk0IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2Ck5hamEsIGRhc3MgYWxsZSBtZWNrZXJuIHdpcnN0IER1IG5pZSB2ZXJtZWlkZW4ga29lbm5lbi4gQWxzbyBrYW5uIG1hbiBkYXMgYWYKYXVjaCBnbGVpY2ggYWJzY2hhZmZlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTU6MTkpOgp+IyEgb249Q2ljZXJvIG90PTEwMTg0NDY1ODMgb2c9ZGlza3Vzc2lvbgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTg0NDY1MzUgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKTWFjaHN0IGR1IGVpZ2VudGxpY2ggbWl0IEFic2ljaHQgZGllIFJlaGUga2FwdXR0PyAqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNToyMCk6Cn4jISBvbj1FbGJlcmV0IG90PTEwMTg0NDY2MDggb2c9ZGlza3Vzc2lvbgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTg0NDY1MzUgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKZGFubiBtYWNoIGVzIGRvY2gsIGVzIHdpcmQgendhciBuaWNodHMgYWVuZGVybiwgYWJlciB3YXMgc29sbHMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNToyMSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTAxODQ0NjY3MCBvZz1kaXNrdXNzaW9uCn4jISBybj1FbGJlcmV0IHJ0PTEwMTg0NDY2MDggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKS2xhciB3aXJkIGRhcyB3YXMgYWVuZGVybjogZXMgZ2lidCBrZWluIGF1dG9mb2xnZSBtZWhyLiBEYXMgaXN0IGRvY2ggZWluZQpBZW5kZXJ1bmc/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNToyMik6Cn4jISBvbj1FbGJlcmV0IG90PTEwMTg0NDY3MzQgb2c9ZGlza3Vzc2lvbgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTg0NDY2NzAgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKd2VubiBkdSBuZSBhZW5kZXJ1bmcgd2lsbHN0OiBsb2VzY2ggZGljaCwgZGFzIGlzdCBhdWNoIGVpbmUgdW5kIG1pdCBtZWhyCmVmZmVrdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE1OjIzKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDE4NDQ2NzgyIG9nPWRpc2t1c3Npb24KfiMhIHJuPUVsYmVyZXQgcnQ9MTAxODQ0NjczNCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpCaW4gaWNoIGVpbiBzY2h3dWxlciBaYXViZXJlciwgZGFzcyBpY2ggc29mb3J0IGVpbmdlc2NobmFwcHQgYmluIHVuZCBtaXQKU2VsYnN0bG9lc2NodW5nIGRyb2hlIHdlbm4gbWlyIHdhcyBuaWNodCBwYXNzdD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE1OjI0KToKfiMhIG9uPVZhcmxhcmlvbiBvdD0xMDE4NDQ2Nzk4IG9nPWRpc2t1c3Npb24KfiMhIHJuPUdyaW1tYm9ybiBydD0xMDE4NDQ2NjcwIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CkdpYnQgZXMgbmljaHQgZGllc2Ugc2Nob2VuZSBUaGVyb2llOgpNYW4gZXJvZWZmbmV0IGVpbiBNVUQgbWl0IGdlbmF1IGVpbmVtIFJhdW0gdW5kIHN0ZWxsdCBnZW5hdSBlaW5lbiBOUEMgaGluZWluLgpEYW5uIGhhZW5ndCBtYW4gZWluZSBUb3AtTGlzdGUgZGFuZWJlbiB1bmQgamVkZW4gUmVzZXQgd2lyZCBlaW4gU3BpZWxlcgplaW5sb2dnZW4gdW5kIGRlbiBOUEMgdW1uaWV0ZW4uClVwcywgaGllciBnZWh0cyBnYXIgbmljaHQgdW0gVG9wLUxpc3Rlbj8gTWlyIGRvY2ggZWdhbCwgcmVkZW4gZWggYWxsZQphbmVpbmFuZGVyIHZvcmJlaS4KClZhcmwqLCBtaXQgZWluZW0gJ0F1dG9mb2xnZSBhYmhhZW5nZW4nLUZhZWhuY2hlbiB3ZWRlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTU6MjUpOgp+IyEgb249RWxiZXJldCBvdD0xMDE4NDQ2ODA2IG9nPWRpc2t1c3Npb24KfiMhIHJuPUdyaW1tYm9ybiBydD0xMDE4NDQ2NzgyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CmR1IHNvbGxzdCBqYSBuaWNodCBkcm9oZW4sIGR1IHNvbGxzdCBlcyBtYWNoZW4gCgpFbGJpIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTU6MjYpOgp+IyEgb249QW50aGVhIG90PTEwMTg0NDY4MjAgb2c9ZGlza3Vzc2lvbgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTg0NDY3ODIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKRHUga29lbm50ZXN0IGphIGFsdGVybmF0aXYgYXVjaCBzbyBlaW5lbiBzZWx0c2FtZW4gTWFnaWVyIG1pdCBHIGZyYWdlbiwgb2IgZXIKRGljaCB6YXBwdCwgd2VubiBEdSBlaW5lIEFlbmRlcnVuZyB3aWxsc3QgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ2OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNToyNyk6Cn4jISBvbj1DdWNodWxsaW4gb3Q9MTAxODQ0Njg0OCBvZz1kaXNrdXNzaW9uCn4jISBybj1DaWNlcm8gcnQ9MTAxODQ0NjQ1NyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpJaHIgdmVyc2NoZW5rdCBSZSdzLiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ3OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNToyOCk6Cn4jISBvbj1BbmFjcmlvbiBvdD0xMDE4NDQ2ODYwIG9nPWRpc2t1c3Npb24KfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDE4NDQ2ODQ4IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CkFsbGVyZGluZ3MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40NzogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTU6MjkpOgp+IyEgb249RWxiZXJldCBvdD0xMDE4NDQ2ODY0IG9nPWRpc2t1c3Npb24KfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDE4NDQ2ODQ4IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CmhlaXNzdCBlcyByZSdzIG9kZXIgcmVoZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ4OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNTozMCk6Cn4jISBvbj1BbnRoZWEgb3Q9MTAxODQ0Njg3MiBvZz1kaXNrdXNzaW9uCn4jISBybj1FbGJlcmV0IHJ0PTEwMTg0NDY4NjQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKQmFtYmlzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDk6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE1OjMxKToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAxODQ0Njg4MCBvZz1kaXNrdXNzaW9uCn4jISBybj1BbnRoZWEgcnQ9MTAxODQ0Njg3MiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpzdGltbXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ5OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNTozMik6Cn4jISBvbj1BbmFjcmlvbiBvdD0xMDE4NDQ2ODg0IG9nPWRpc2t1c3Npb24KfiMhIHJuPUFudGhlYSBydD0xMDE4NDQ2ODcyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CmdvdGNoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTA6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE1OjMzKToKfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDE4NDQ2ODg4IG9nPWRpc2t1c3Npb24KfiMhIHJuPUVsYmVyZXQgcnQ9MTAxODQ0Njg4MCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpVZS1laSA6KSA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OTogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTU6MzQpOgp+IyEgb249Q2ljZXJvIG90PTEwMTg0NDY4OTQgb2c9ZGlza3Vzc2lvbgp+IyEgcm49QW50aGVhIHJ0PTEwMTg0NDY4NzIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKSWNoIGFyZ2hsIG51ciBub2NoIGxlaXNlIHZvciBtaWNoIGhpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTA6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE1OjM1KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDE4NDQ2OTQwIG9nPWRpc2t1c3Npb24KfiMhIHJuPUNpY2VybyBydD0xMDE4NDQ2ODk0IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CkdybWJsZi4gVW5kIGljaCBkYWNodGUgYmlzIDUwIGtvbW10IGRlciB0aHJlYWQgbmllLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUxOiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNTozNik6Cn4jISBvbj1DaWNlcm8gb3Q9MTAxODQ0Njk2NiBvZz1kaXNrdXNzaW9uCn4jISBybj1HcmltbWJvcm4gcnQ9MTAxODQ0Njk0MCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpEYXMgVWUtRWkgd2lyZCBmYWVsbGlnCiphcmdobCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUyOiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoxNTozNyk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTAxODQ0Njk5MiBvZz1kaXNrdXNzaW9uCn4jISBybj1DaWNlcm8gcnQ9MTAxODQ0Njk2NiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpBbWF0ZXVyLiBEYXMgaGF0IHNpY2ggQ3VjaHVsbGluIGxhZW5nc3QgZ2VzY2huYXBwdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTI6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjE1OjM4KToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAxODQ0NzAwMiBvZz1kaXNrdXNzaW9uCn4jISBybj1DaWNlcm8gcnQ9MTAxODQ0Njk2NiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2Ngp3YXIgZGFzIGdlbnVnIHdlcmJ1bmcgZnVlciBtZWdhc2NobWFycm4/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41MzogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MTU6MzkpOgp+IyEgb249Q2ljZXJvIG90PTEwMTg0NDcwNDYgb2c9ZGlza3Vzc2lvbgp+IyEgcm49RWxiZXJldCBydD0xMDE4NDQ3MDAyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE4Mjc4OTY2CldlaXNzIGVoIG5pY2h0IHdhcyBvZGVyIHdvZnVlciBzbyBlaW4gVWUtRWkgaGllciBpbSBNRyBzZWluIHNvbGwKKmFyZ2hsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjIwOjA5KToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAxODQ0ODM1MyBvZz1kaXNrdXNzaW9uCn4jISBybj1HcmltbWJvcm4gcnQ9MTAxODQ0ODE2NSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgppY2ggaGFldHRlIGdlcm5lIG1laW5lIGFydGlrZWwgd2llZGVyIHp1cnVlY2t2ZXJsZWd0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6MjA6MTEpOgp+IyEgb249V29vZHkgb3Q9MTAxODQ0ODM5NyBvZz1kaXNrdXNzaW9uCn4jISBybj1FbGJlcmV0IHJ0PTEwMTg0NDgzNTMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMTgyNzg5NjYKV29oaW4sIG5hY2ggTXVlbGw/IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6IFRlYW1rYW1wZiAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDIsIDE2OjIwOjEzKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDE4NDQ4Mzk4IG9nPWRpc2t1c3Npb24KfiMhIHJuPUVsYmVyZXQgcnQ9MTAxODQ0ODM1MyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAxODI3ODk2NgpTY2hvZW4sIHp1ciBLZW5udG5pcyBnZW5vbW1lbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IFRlYW1rYW1wZiAoRWxiZXJldCwgMTAuIEFwciAyMDAyLCAxNjoyMDo0MSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxODQ0ODQxMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTgyNzg5NjYKZGFubiB0dSB3YXMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoyMzowMyk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMTg0NDg0NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Mjc4OTY2Ck5laW4uIEljaCBsZWJlIG1laW5lIEZyZWloZWl0IGFscyBJbmRpdmlkdXVtIGF1cyB1bmQgc2FnZSBlaW5mYWNoOiBuZWluLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogVGVhbWthbXBmIChFbGJlcmV0LCAxMC4gQXByIDIwMDIsIDE2OjIzOjQ1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDE4NDQ4NTgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODI3ODk2NgpoZXVsLCBtYWdpZXJ3aWxsa3VlciAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOiBUZWFta2FtcGYgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAxNjoyNDowOSk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMTg0NDg2MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Mjc4OTY2CjpuaWNrdCB3aWxsa3VlcmxpY2guCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBUZWFta2FtcGYgKEVsYmVyZXQsIDEwLiBBcHIgMjAwMiwgMTY6MjQ6MjkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTg0NDg2NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Mjc4OTY2CmVpbiB1ZS1laSBmdWVyIHJlIDMyIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMjogVGVhbWthbXBmIChBbnRoZWEsIDEwLiBBcHIgMjAwMiwgMTY6MjQ6NDEpOgp+IyEgcm49RWxiZXJldCBydD0xMDE4NDQ4NjY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODI3ODk2NgpPSy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMyOiBUZWFta2FtcGYgKElzaSwgMTAuIEFwciAyMDAyLCAxNjoyNDo0NSk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMTg0NDg2Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Mjc4OTY2CmhpZXIuCmlzaSAobW91c3Nld2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMzOiBUZWFta2FtcGYgKEFudGhlYSwgMTAuIEFwciAyMDAyLCAxNjoyNDo1NSk6Cn4jISBybj1Jc2kgcnQ9MTAxODQ0ODY4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTgyNzg5NjYKWnUgc3BhZXQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU0OiBUZWFta2FtcGYgKEphZGF3aW4sIDEwLiBBcHIgMjAwMiwgMTY6MzE6MTUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTg0NDgxMzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Mjc4OTY2CkdpYnQncyBzY2hvbiB3YXMgZnVlciBSZV4xMDA/IDspCkphZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU1OiBUZWFta2FtcGYgKEVsYmVyZXQsIDEwLiBBcHIgMjAwMiwgMTY6MzE6NDMpOgp+IyEgcm49SmFkYXdpbiBydD0xMDE4NDQ5MDc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODI3ODk2Ngpqbywga29tbSBuYWNoIG1lZ2FzY2htYXJybiwgZGEgZ2lidHMgYmVzdGltbXQgd2FzIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41NjogVGVhbWthbXBmIChHcmltbWJvcm4sIDEwLiBBcHIgMjAwMiwgMTY6Mzk6MDkpOgp+IyEgcm49RWxiZXJldCBydD0xMDE4NDQ5MTAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODI3ODk2NgpOb3BlLCBkYSBpc3QgUmVeMTAwIHNjaG9uIGV3aWcgR2VzY2hpY2h0ZS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTc6IFRlYW1rYW1wZiAoV29vZHksIDEwLiBBcHIgMjAwMiwgMTc6MDE6MDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTg0NDk1NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Mjc4OTY2Ck5vY2ggc2NobmVsbCBlaW4gVGlwIGZ1ZXIgTGV1dGUsIGRpZSBuaWNodCBudXIgZGFzIEZvcnRiZXdlZ2VuIGlocmVzCkNoYXJha3RlcnMsIHNvbmRlcm4gQUxMRVMgdm9sbGF1dG9tYXRpc2NoIGFibGF1ZmVuIGxhc3NlbiB3b2xsZW46CgpodHRwOi8vcHJvZ3Jlc3NxdWVzdC5jb20KClppdGF0OiBUaGUgZ2FtZSB3aWxsIHN0YXJ0IGltbWVkaWF0ZWx5IGFuZCB5b3UgY2FuIHNhZmVseSBmYW1pbGlhcml6ZSB5b3Vyc2VsZgp3aXRoIHRoZSBnYW1lJ3Mgc2luZ2xlIGludGVyZmFjZSBzY3JlZW4gYXMgdGhlIGdhbWUgcHJvZ3Jlc3NlcyBvbiBpdHMgb3duLgoKVW5kIEtleWJvYXJkIHF1aWNrIHJlZmVyZW5jZToKS2V5ICAgIERlc2NyaXB0aW9uCkFsdC1GNCBFeGl0IFByb2dyZXNzIFF1ZXN0CgpEYW5rIGdlYnVlaHJ0IENyZWEoQFNMKSBmdWVyIGRpZSBFbnRkZWNrdW5nIGRpZXNlcyBKdXdlbHMuIDstKQoKCldvb2R5Li0KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoaW1tZWwgISAoSGlnaHQsIDEwLiBBcHIgMjAwMiwgMTg6MjE6MjIpOgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAyNSB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMjYgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDI3IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAyOCB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMjkgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDMwIHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAzMSB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMzIgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDMzIHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAzNCB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMzUgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDM2IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAzNyB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMzggdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDM5IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA0MCB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNDEgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDQyIHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA0MyB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNDQgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDQ1IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA0NiB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNDcgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDQ4IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA0OSB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNTAgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDUxIHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA1MiB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNTMgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDU0IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA1NSB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNTYgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDU3IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA1OCB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNTkgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDYwIHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA2MSB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNjIgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDYzIHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA2NCB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNjUgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDY2IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA2NyB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNjggdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDY5IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA3MCB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNzEgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDcyIHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA3MyB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNzQgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDc1IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA3NiB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgNzcgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDc4IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA3OSB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgODAgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDgxIHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA4MiB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgODMgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDg0IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA4NSB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgODYgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDg3IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA4OCB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgODkgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDkwIHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA5MSB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgOTIgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDkzIHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA5NCB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgOTUgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDk2IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCA5NyB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgOTggdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDk5IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxMDAgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDEwMSB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMTAyIHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxMDMgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDEwNCB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMTA1IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxMDYgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDEwNyB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMTA4IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxMDkgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDExMCB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMTExIHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxMTIgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDExMyB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMTE0IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxMTUgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDExNiB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIGlnbm9yaWVydGVuIEFydGlrZWwgMTE3IHZvbiBHcmltbWJvcm4gaW4gUnVicmlrIHNjaG1hcnJuLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxMTggdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBBcnRpa2VsIDExOSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxMjAgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBBcnRpa2VsIDEyMSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgaWdub3JpZXJ0ZW4gQXJ0aWtlbCAxMjIgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgc2NobWFycm4uClVlYmVyZ2VoZSBBcnRpa2VsIDEyMyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxMjQgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTI1IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBBcnRpa2VsIDEyNiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCAxMjcgYXVzIGlnbm9yaWVydGVtIFRocmVhZC4KVWViZXJnZWhlIEFydGlrZWwgMTI4IGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuClVlYmVyZ2VoZSBpZ25vcmllcnRlbiBBcnRpa2VsIDEyOSB2b24gR3JpbW1ib3JuIGluIFJ1YnJpayBzY2htYXJybi4KVWViZXJnZWhlIEFydGlrZWwgMTMwIGF1cyBpZ25vcmllcnRlbSBUaHJlYWQuCgoKaWNoIGZyYWcgbWljaCBlY2h0IHdvenUgaWNoIGRhcyBpZ25vcmllciAuLi4gZHVyY2hsZXNlbiBoYWV0dGUgYXVjaCBuZXQgbWVocgpnZXNjcm9sbHQKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaGltbWVsICEgKFZhcmxhcmlvbiwgMTAuIEFwciAyMDAyLCAxOToxNToyMCk6Cn4jISBybj1IaWdodCBydD0xMDE4NDU1NjgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODQ1NTY4MgpHYWdncyBoYWx0IHdlZyB1bmQgZXJzZXR6IGRlbiBnYW56ZW4gU2Nyb2xsIGR1cmNoIG5lIGh1ZWJzY2hlIE1lbGR1bmcgd2llCiJTY2hvbiB3aWVkZXIgMTMwIEFydGlrZWwgTXVlbGwgdWViZXJnYW5nZW4uIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBoaW1tZWwgISAoVmFuaW9uLCAxMC4gQXByIDIwMDIsIDIxOjI0OjQwKToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDE4NDU4OTIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODQ1NTY4MgpWb3IgYWxsZW0sIHNjaHJlaWIgZGVuIFNjaCoqKiBuaWNoIGluIGRpZSBNUEEhCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBoaW1tZWwgISAoRGVlcGJsdWUsIDEwLiBBcHIgMjAwMiwgMjM6MTE6MzMpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMTg0NTg5MjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4NDU1NjgyCkthbm4gZGFzIG5pY2h0IGRpZSBMaWIgZnVlciBtaWNoIG1hY2hlbj8gSW1tZXIgbnVyIGFuIGRpZSB0ZmxlciBkZW5rZW4KRGVlcCogLSBzY2hvbiBpbiBkZXIgcmljaHRpZ2VuIFJ1YnJpawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogaGltbWVsICEgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDAyLCAyMzoxMjo0Nyk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDE4NDczMDkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODQ1NTY4MgpEdSBiaXN0IGhlcnpsaWNoIGVpbmdlbGFkZW4gZGFzIGRpZmYgenUgc2NoaWNrZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCBaYXViZXJlciBhYndlcnRlbiA6KSAoRWxiZXJldCwgMTEuIEFwciAyMDAyLCAxNTo1NDo1Nyk6CkFuYWNyaW9uIHNjaG5pcHB0IG1pdCBkZW4gRmluZ2Vybi4KRHUgc3RpbmtzdC4KCkFsc28gd2lya2xpY2ggLi4uOikKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVzIHNjaHVldHRlbHQgbWljaC4uLiBvZGVyIGF1Y2ggbmljaHQuIChUYWxsYSwgMTEuIEFwciAyMDAyLCAxNzoxNTo1Nik6CkR1IG5pbW1zdCBzY2hvbiBhbSBTcGllbCB0ZWlsIQpWZXJ3ZW5kZSBEZWluZSBhbHRlIHN0ZXJibGljaGUgSHVlbGxlIC4uLgpWZXJnaXNzIG5pY2h0LCBEZWluZSBTY2h1ZXR0ZWxydWVzdHVuZyB3aWVkZXIgYW56dXppZWhlbi4KPiB6aWVoZSBydWVzdHVuZyBhbgpEdSB0cmFlZ3N0IGRpZSBTY2h1ZXR0ZWxydWVzdHVuZyBiZXJlaXRzLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlbGF0aXZpdGFldHN0aGVvcmllIChGbGVja3R5cGh1cywgMTEuIEFwciAyMDAyLCAxNzo0Nzo1Nik6CkFtYW5kYSBrb21tdCBpbiBlaW5lciBXb2xrZSB2b24gUGFyZnVlbSBhbi4KU2lsYmVyaGVpbSB3YW5kZWx0IGhlcmVpbi4KICAuLi4uS2FyYXRlL1VrdS4uKCspLi4uLiBTaWxiZXJoZWltLi4uIDogQW1hbmRhLi4uLi4uLiAqKioqKioqKiAtLSBoYXJ0CiAgLi4uLm5vcm1hbC8/Pz8uLi4uLi4uLi4gQW1hbmRhLi4uLi4uLiA6IFNpbGJlcmhlaW0uLi4gKioqKioqKiogLS0gdmVyZmVobHQKQW1hbmRhIHNjaHdlYnQgaW4gZWluZXIgV29sa2Ugdm9uIFBhcmZ1ZW0gbmFjaCBPc3Rlbi4KQW1hbmRhIHRlaWx0IERpciBtaXQ6IFdvaGluIHNvIHNjaG5lbGwsIEZsZWNrdHlwaHVzPwpBbWFuZGEgdGVpbHQgRGlyIG1pdDogSW1tZXIgc2luZCBzaWUgc28gZWlsaWcsIGRpZSBNYWVubmVyLi4uCgpPaywgYXVzIGlocmVyIHNpY2h0IGhhYiBpY2ggbWljaCBiZXdlZ3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmJsb2VkZSBkaW1lbnNpb25zYmViZW4gKE1lc2lyaWksIDExLiBBcHIgMjAwMiwgMjA6MzQ6NDApOgpFaW4gZnVlcmNodGVybGljaGVzIEJlYmVuIGVyc2NodWV0dGVydCBkaWUgRGltZW5zaW9uZW4gaW4gaWhyZW4gR3J1bmRmZXN0ZW4uCkVpbiBUZWRkeSBwdXJ6ZWx0IHZvciBsYXV0ZXIgVWViZXJtdXQgdm9tIFJlZ2FsLiBLaWNoZXJuZCByYXBwZWx0IGVyIHNpY2gKd2llZGVyIGF1ZiB1bmQgaHVlcGZ0IGF1ZiBkYXMgUmVnYWwgenVydWVjay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNpY2hlcmhlaXQgaXN0IHJlbGF0aXYuIChXb29keSwgMTEuIEFwciAyMDAyLCAyMjozNDo1NSk6CkNhdHdlYXpsZSBpc3QgZGEuIER1IGZ1ZWhsc3QgRGljaCBzaWNoZXIuCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogVmllbCBTcGFzcyBub2NoIQpEYXMgUGFydHltb25zdGVyIHJhZXVtdCBhdWYgdW5kIGVpbHQgenVyIG5hZWNoc3RlbiBQYXJ0eS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmQgd2llZGVyIEt1ZWhlLi4uIChUcm95LCAxMi4gQXByIDIwMDIsIDEwOjQ3OjU5KToKVFJBRElUSU9OQUwgQ0FQSVRBTElTTToKWW91IGhhdmUgdHdvIGNvd3MuCllvdSBzZWxsIG9uZSBhbmQgYnV5IGEgYnVsbC4KWW91ciBoZXJkIG11bHRpcGxpZXMsIGFuZCB0aGUgZWNvbm9teSBncm93cy4KWW91IHNlbGwgdGhlbSBhbmQgcmV0aXJlIG9uIHRoZSBpbmNvbWUuCgpFTlJPTiBWRU5UVVJFIENBUElUQUxJU006CllvdSBoYXZlIHR3byBjb3dzLgpZb3Ugc2VsbCB0aHJlZSBvZiB0aGVtIHRvIHlvdXIgcHVibGljbHkgbGlzdGVkIGNvbXBhbnksIHVzaW5nIGxldHRlcnMgb2YKY3JlZGl0IG9wZW5lZCBieSB5b3VyIGJyb3RoZXItaW4tbGF3IGF0IHRoZSBiYW5rLCB0aGVuIGV4ZWN1dGUgYSBkZWJ0L2VxdWl0eQpzd2FwIHdpdGggYW4gYXNzb2NpYXRlZCBnZW5lcmFsIG9mZmVyIHNvIHRoYXQgeW91IGdldCBhbGwgZm91ciBjb3dzIGJhY2ssCndpdGggYSB0YXggZXhlbXB0aW9uIGZvciBmaXZlIGNvd3MuIFRoZSBtaWxrIHJpZ2h0cyBvZiB0aGUgc2l4IGNvd3MgYXJlCnRyYW5zZmVycmVkIHZpYSBhbiBpbnRlcm1lZGlhcnkgdG8gYSBDYXltYW4gSXNsYW5kIGNvbXBhbnkgc2VjcmV0bHkgb3duZWQgYnkKdGhlIG1ham9yaXR5IHNoYXJlaG9sZGVyIHdobyBzZWxscyB0aGUgcmlnaHRzIHRvIGFsbCBzZXZlbiBjb3dzIGJhY2sgdG8geW91cgpsaXN0ZWQgY29tcGFueS4gVGhlIGFubnVhbCByZXBvcnQgc2F5cyB0aGUgY29tcGFueSBvd25zIGVpZ2h0IGNvd3MsIHdpdGgKYW4gb3B0aW9uIG9uIG9uZSBtb3JlLiBTZWxsIG9uZSBjb3cgdG8gYnV5IGEgbmV3IHByZXNpZGVudCBvZiB0aGUgVW5pdGVkClN0YXRlcywgbGVhdmluZyB5b3Ugd2l0aCBuaW5lIGNvd3MuIE5vIGJhbGFuY2Ugc2hlZXQgcHJvdmlkZWQgd2l0aCB0aGUKcmVsZWFzZS4gVGhlIHB1YmxpYyBidXlzIHlvdXIgYnVsbC4KCkFOIEFNRVJJQ0FOIENPUlBPUkFUSU9OOgpZb3UgaGF2ZSB0d28gY293cy4KWW91IHNlbGwgb25lLCBhbmQgZm9yY2UgdGhlIG90aGVyIHRvIHByb2R1Y2UgdGhlIG1pbGsgb2YgZm91ciBjb3dzLiBZb3UKYXJlIHN1cnByaXNlZCB3aGVuIHRoZSBjb3cgZHJvcHMgZGVhZC4KCkEgRlJFTkNIIENPUlBPUkFUSU9OOgpZb3UgaGF2ZSB0d28gY293cy4KWW91IGdvIG9uIHN0cmlrZSBiZWNhdXNlIHlvdSB3YW50IHRocmVlIGNvd3MuCgpBIEpBUEFORVNFIENPUlBPUkFUSU9OOgpZb3UgaGF2ZSB0d28gY293cy4KWW91IHJlZGVzaWduIHRoZW0gc28gdGhleSBhcmUgb25lLXRlbnRoIHRoZSBzaXplIG9mIGFuIG9yZGluYXJ5IGNvdyBhbmQKcHJvZHVjZSB0d2VudHkgdGltZXMgdGhlIG1pbGsuIFlvdSB0aGVuIGNyZWF0ZSBjbGV2ZXIgY293IGNhcnRvb24gaW1hZ2VzCmNhbGxlZCBDb3draW1vbiBhbmQgbWFya2V0IHRoZW0gd29ybGR3aWRlLgoKQSBHRVJNQU4gQ09SUE9SQVRJT046CllvdSBoYXZlIHR3byBjb3dzLgpZb3UgcmVlbmdpbmVlciB0aGVtIHNvIHRoZXkgbGl2ZSBmb3IgMTAwIHllYXJzLCBlYXQgb25jZSBhIG1vbnRoLCBhbmQKbWlsayB0aGVtc2VsdmVzLgoKQSBCUklUSVNIIENPUlBPUkFUSU9OOgpZb3UgaGF2ZSB0d28gY293cy4KQm90aCBhcmUgbWFkLgoKQU4gSVRBTElBTiBDT1JQT1JBVElPTjoKWW91IGhhdmUgdHdvIGNvd3MsIGJ1dCB5b3UgZG9uJ3Qga25vdyB3aGVyZSB0aGV5IGFyZS4KWW91IGJyZWFrIGZvciBsdW5jaC4KCkEgUlVTU0lBTiBDT1JQT1JBVElPTjoKWW91IGhhdmUgdHdvIGNvd3MuCllvdSBjb3VudCB0aGVtIGFuZCBsZWFybiB5b3UgaGF2ZSBmaXZlIGNvd3MuCllvdSBjb3VudCB0aGVtIGFnYWluIGFuZCBsZWFybiB5b3UgaGF2ZSA0MiBjb3dzLgpZb3UgY291bnQgdGhlbSBhZ2FpbiBhbmQgbGVhcm4geW91IGhhdmUgMTIgY293cy4KWW91IHN0b3AgY291bnRpbmcgY293cyBhbmQgb3BlbiBhbm90aGVyIGJvdHRsZSBvZiB2b2RrYS4KCkEgU1dJU1MgQ09SUE9SQVRJT046CllvdSBoYXZlIDUwMDAgY293cywgbm9uZSBvZiB3aGljaCBiZWxvbmcgdG8geW91LgpZb3UgY2hhcmdlIG90aGVycyBmb3Igc3RvcmluZyB0aGVtLgoKQSBDSElORVNFIENPUlBPUkFUSU9OOgpZb3UgaGF2ZSB0d28gY293cy4KWW91IGhhdmUgMzAwIHBlb3BsZSBtaWxraW5nIHRoZW0uCllvdSBjbGFpbSBmdWxsIGVtcGxveW1lbnQsIGhpZ2ggYm92aW5lIHByb2R1Y3Rpdml0eSwgYW5kIGFycmVzdCB0aGUKbmV3c21hbiB3aG8gcmVwb3J0ZWQgdGhlIG51bWJlcnMuCgpBTiBJU1JBRUxJIENPUlBPUkFUSU9OOgpTbywgdGhlcmUgYXJlIHRoZXNlIHR3byBKZXdpc2ggY293cywgcmlnaHQ/ClRoZXkgb3BlbiBhIG1pbGsgZmFjdG9yeSwgYW4gaWNlIGNyZWFtIHN0b3JlLCBhbmQgdGhlbiBzZWxsIHRoZSBtb3ZpZQpyaWdodHMuIFRoZXkgc2VuZCB0aGVpciBjYWx2ZXMgdG8gSGFydmFyZCB0byBiZWNvbWUgZG9jdG9ycy4gU28sIHdobwpuZWVkcyBwZW9wbGU/CgpBIE5FVyBaRUFMQU5EIENPUlBPUkFUSU9OOgpZb3UgaGF2ZSB0d28gY293cy4KVGhhdCBvbmUgb24gdGhlIGxlZnQgaXMga2luZGEgY3V0ZS4uLgoKOi0+IFRyb3kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBaYWhsZW5zcGllbGUgKElzaSwgMTIuIEFwciAyMDAyLCAxNjo0MDowMSk6Cn4jISBybj1BbmFjcmlvbiBydD0xMDE4NjIyMzI0IHJnPXBhcnR5Cn4jISB0aWQ9MTAxODI4MDM0NApTdHJlaXRldCBldWNoIGhpZXIgd2VpdGVyLCBoaWVyIHBhc3N0cyBiZXNzZXIgaGluLgppc2kgKE1vdXNzZXdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogWmFobGVuc3BpZWxlIChHcmltbWJvcm4sIDEyLiBBcHIgMjAwMiwgMTY6NDI6MTIpOgp+IyEgcm49SXNpIHJ0PTEwMTg2MjI0MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4MjgwMzQ0ClNwaWVsdmVyZGVyYmVySW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlaWJjaGVuIChhdXM6IEJlc3Qgb2YgSW50ZXJuZXQpIChNdXBmZWwsIDEyLiBBcHIgMjAwMiwgMjM6NDE6NTYpOgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpGcm9tOiBTdXNhbm5lIFNjaG1pZHQgPGJhbnNoZWVAemVkYXQuZnUtYmVybGluLmRlPgpOZXdzZ3JvdXBzOiBkZS5vcmcuY2NjClN1YmplY3Q6IFJlOiBXZWliY2hlbiAoV2FyOiBHZWtsYXV0ZSBQYXNzd29lcnRlciB1bmQgZGFiZWkgZXJ3aXNjaHQgd2VyZGVuLi4uKQpEYXRlOiA5IFNlcCAxOTk5IDA4OjE1OjMwIEdNVApNZXNzYWdlLUlEOiA8N3I3cWIyJGV2ZiQxQGZ1LWJlcmxpbi5kZT4KCjogLi4uIG1laHIgYWxzIGdlbnVnLiBFaW4gV2VpYmNoZW4gaXN0IHNjaGxpbW1lciB6dSBhZG1pbmlzdHJpZXJlbiBhbHMKOiBlaW5lIHJpZXNpZ2UsIGhldGVyb2dlbmUgRURWLUxhbmRzY2hhZnQKCk1laW5lIEd1ZXRlLCBmcmF1IGtvZW5udGUgbWVpbmVuLCBkdSBzZWlzdCBXaW5kb3dzLUFkbWluLi4uIFN0ZWxsIGRpY2gKbmljaHQgc28gZG9vZiBhbjogSGllciBnZWx0ZW4gZGllIGdsZWljaGVuIFJlZ2VsbiB3aWUgaW1tZXI6CgpSVEZNOiBLYXVmIGRpciBlaW4gZ3V0ZXMgQnVjaCB1ZWJlciBGcmF1ZW4uIFdlbm4gZHUgZXMgbmljaHQKdmVyc3RhbmRlbiBoYXN0LCBsaWVzIGVzIG5vY2htYWwuIERhbm4gc3VjaHN0IGR1IGRpciBlaW5lIGVpbmZhY2hlCkZyYXUgdW5kIHVlYnN0IGRpZSBQcmF4aXMuIEVzIGtsYXBwdCBpbW1lciBub2NoIG5pY2h0ID8gTnVuIC0gZGFubgpoYXN0IGR1IG5pY2h0IGdlbnVnIGdlbGVzZW4sIGxpZXMgd2VpdGVyLiBEdSB3ZWlzc3QgZG9jaCwgd2llIG1hbgplaW4gZ3V0ZXIgSGFja2VyIHdpcmQgPwoKRHUgd2Vpc3N0IG5pY2h0LCB3YXMgUlRGTSBoZWlzc3QgPyBSZWFkIHRoYXQgZmVtYWxlIG1hbnVhbCEKCkFuc29uc3RlbjogV2FzIGFudHdvcnRlc3QgZHUsIHdlbm4gamVtYW5kIHJ1bWxlbWVudGllcnQsIGVpbiBVTklYCnNlaSBzY2h3ZXIgPyBFcyBpc3QgbmljaHQgc2Nod2VyIC0gbnVyIHdhZWhsZXJpc2NoIG1pdCBkZW5lbiwgZGllIGVzCmJlbnV0emVuIGR1ZXJmZW4uIE5hIGFsc28uIERhbWl0IGtvbW1lbiB3aXIgd2VpdGVyLiBMYW1lbnRpZXIgYWxzbwpuaWNodCBydW0sIGRhcyBGcmF1ZW4gc2Nod2VyIHp1IGFkbWluaXN0cmllcmVuIHNlaWVuIC0gc2llIHNpbmQgbnVyCndhZWhsZXJpc2NoIG1pdCBpaHJlbiBBZG1pbnMuIFVuZCB3ZW5uIGRpciBkYXMgaW1tZXIgbm9jaCB6dSBzY2h3ZXIKaXN0LCBrb21tZW4gd2lyIHdpZWRlciB6dSBQdW5rdCAxOiBSVEZNLiBFcyBnaWJ0IGdlbnVlZ2VuZCBNYW5wYWdlcwood2FzIG1laW5zdCBkdSwgd2llc28gZGFzIE1BTi1wYWdlIGhlaXNzdD8pIHVlYmVyIEZyYXVlbiB1bmQgd2llIG1hbgpzaWUgYmVoYW5kZWx0LgoKIkFiZXIgYmVpIG1laW5lbSBXZWliY2hlbiB3YXIga2VpbmUgRG9rdW1lbnRhdGlvbiBkYWJlaSIgLSBOdW4sCnNpY2hlciBrYW5uc3QgZHUgbWl0IGVpbmVtIEJ1Y2hsYWRlbiAoZXMgZ2lidCBhdWNoIG1hZW5ubGljaGUKQnVjaGhhZW5kbGVyIHVuZCBCdWNobGFlZGVuLCBkaWUgYXVmIE1hZW5uY2hlbiBzcGV6aWFsaXNpZXJ0IHNpbmQpCnVtZ2VoZW4uIEFsdGVybmF0aXYgZmluZGVzdCBkdSBhdWNoIGltIFdXVyB1bmVuZGxpY2ggdmllbApEb2t1bWVudGF0aW9uLgoKQW5zb25zdGVuIHN0ZWhlbiBkaXIgdW50ZXJzY2hpZWRsaWNoc3RlIERpc3RyaWJ1dGlvbmVuIGFuIFdlaWJjaGVuCnp1ciBWZXJmdWVndW5nIC0gdmllbGxlaWNodCB1ZWJzdCBkdSBlcnN0bWFsIG1pdCBlaW5lbSBlaW5mYWNoZW4KV2VpYmNoZW4sIGRhcyBkZWluZW0gU2Nod2llcmlna2VpdHNncmFkIGVudHNwcmljaHQuIElyZ2VuZHdhbm4Ka2FubnN0IGR1IC1nZW5hdSB3aWUgaW4gZGVyIFVOSVgtV2VsdCAtIHZvbiBQaWNvIGF1ZiB2aSB1bXN0ZWlnZW4uCklyZ2VuZHdhbm4gLSBuYWNoIGVpbmlnZW4gRWluc3RpZWdzaHVlcmRlbiAtIGFiZXIgaGllciBnaWx0IFJURk0gLQprYW5uc3QgZHUgc2ljaGVyIGF1Y2ggbWl0IGVpbmVtIHNjaHdpZXJpZ2VuIFdlaWJjaGVuIGdlbmF1c28gZ3V0CnVtZ2VoZW4gd2llIG1pdCBkZWluZW0gUGlsbGVybWFubiB1bmQgd2lyc3QgZGllIExlaXN0dW5nc2ZhZWhpZ2tlaXQKdW5kIEZsZXhpYmlsaXRhZXQgZWluZXMga29tcGxleGVuIFdlaWJjaGVucyB6dSBzY2hhZXR6ZW4gd2lzc2VuLgoKIkFiZXIgbWVpbiBXZWliY2hlbiBzcHJpY2h0IGVpbmUgbWlyIGZyZW1kZSBTcHJhY2hlIiAtIE51biBkdSB3aWxsc3QKV2VpYmNoZW4gLSBkdSBrcmllZ3N0IFdlaWJjaGVuISBMZXJuIGlocmUgU3ByYWNoZSAtIG9kZXIgd2FydGVzdCBkdQphdWNoLCBiaXMgamVkZXMgVU5JWC1CdWNoIGF1ZiBkZXV0c2NoIGFscyBDb21pYyBlcnNjaGllbmVuIGlzdCA/CkF1Y2ggaGllciBnaWx0OiBSVEZNLgoKIkdpYnQgZXMgV2VpYmNoZW4gYXVjaCBmdWVyIEVpbnN0ZWlnZXIgbWl0IEdVST8iIERvY2ggbmF0dWVybGljaCwgZXMKZ2lidCBhdWNoIGdhbnogZWluZmFjaGUgV2VpYmNoZW4sIGFiZXIgd2lsbHN0IGR1IHZlcmRhbW10IG5vY2htYWwKd2FzIGxlcm5lbiBvZGVyIHdpbGxzdCBkdSwgZGFzIGFsbGUgZGVpbmUgRnJldW5kZSB1ZWJlciBkaWNoIHVuZApkZWluIFdlaWJjaGVuIGxhY2hlbiwgd2VpbCBkdSBuaWNodCBtYWwgaW4gZGVyIExhZ2Ugd2Fyc3QsIGRpciBlaW4KV2VpYmNoZW4genUgYmVzb3JnZW4sIGRhcyBlcyBhdWNoIGdlcm5lIGJlaSBkaXIgYmxlaWJ0ID8KCiJBYmVyIGVzIGdpYnQgZG9jaCBrZWluZSBTdXBwb3J0IGZ1ZXIgV2VpYmNoZW4hIiBEb2NoLApadWNrZXJzY2huZWNrZSwgZGVuIGdpYnQgZXMuIER1IGhhc3QgVGF1c2VuZGUgdm9uIGVuZ2FnaWVydGVuCmFuZGVyZW4gTWFlbm5lcm4sIGRpZSBkaWVzZSBIdWVyZGUgc2Nob24gZ2Vub21tZW4gaGFiZW4sIGRpZSBkaXIKZ2VybmUgd2VpdGVyaGVsZmVuLCBuYWNoZGVtIGR1IGRpZSBET2t1bWVudGF0aW9uIGdydWVuZGxpY2ggZ2VsZXNlbgpoYXN0IHVuZCBkYW5uIG5vY2ggRnJhZ2VuIGhhc3QsIHdlaXRlcmhlbGZlbi4gRHUgd2lyc3QgZGljaCBhYmVyCnp1bmFlY2h0IHNlbGJzdCBkYW1pdCBhdXNlaW5hbmRlcnNldHplbiBtdWVzc2VuLiBGdWVyIEVpbnN0ZWlnZXIKZ2lidCBlcyB0b3RhbCBndXRlIFdlaWJjaGVuLVVzZXJncm91cHMgaW4gamVkZXIgZ3JvZXNzZXJlbiBTdGFkdCwgd28KZHUgZGljaCBlaW5tYWwgZGllIFdvY2hlIG1pdCBhbmRlcmVuIE1hZW5uY2hlbiB0cmVmZmVuIGthbm5zdCB1bmQKdWViZXIgZGllIGVyc3RlbiBTY2h3aWVyaWdrZWl0ZW4gaW0gVW1nYW5nIG1pdCBkZWluZW0gV2VpYmNoZW4Kc3ByZWNoZW4ga2FubnN0LgoKIkFuZGVyZSBoYWJlbiB2aWVsIGJlc3NlcmUgSGFyZHdhcmUgYW4gaWhyZW0gV2VpYmNoZW4hIiBEaWUKQWRtaW5pc3RyYXRpb24gZGVzIFdlaWJjaGVucyBpc3QgZW50c2NoZWlkZW5kLCBuaWNodCBpaHJlCkF1c2JhdXN0dWZlLiBNYW4ga2FubiBtaXQgc2VociB1bmF1ZmZhZWxsaWdlbiBXZWliY2hlbiBlaW5lIHRvbGxlCkJlemllaHVuZyBoYWJlbiwgd2VubiBtYW4gcmljaHRpZyB1bmQgdmVyc2llcnQgZGFtaXQgdW1nZWh0LgoKIkFiZXIgZWluIFdlaWJjaGVuIGJlbm9ldGlndCBzb3ZpZWwgUGZsZWdlISIgTnVuIC0gd2FzIGVyd2FydGVzdCBkdQp2b24gbW9kZXJuZXIsIGtvbXBsZXhlciBIYXJkd2FyZSB1bmQgZWluZW0gaW50ZWxsaWdlbnRlbgpCZXRyaWVic3N5c3RlbSA/IERhcyBlcyAicXVpZWNrIiBtYWNodCB1bmQgaW4gZGVyIEVja2Ugc3RlaHQgPyBOZWluLgpEdSB3aWxsc3QgU3Bhc3MgaGFiZW4sIEhlcmF1c2ZvcmRlcnVuZywgcmljaHRpZyB3YXMgenUgdHVuLCB1bmQgZGljaAphbnN0cmVuZ2VuIHVuZCBkZWluZW4gVmVyc3RhbmQgaGVyYXVzZ2Vmb3JkZXJ0IHdpc3Nlbi4gTmEgYWxzby4gV2FzCmJla2xhZ3N0IGR1IGRpY2ggZGFubiA/CgoiRWlubWFsIGltIE1vbmF0IGlzdCBtZWluIFdlaWJjaGVuIHNvIGtvbWlzY2ghIiBPaywgZGFzIGlzdCBlaW4KUHJvYmxlbSwgYWJlciBhdWNoIGRhbWl0IGthbm4gbWFuIGFscyB2ZXJzaWVydGVyIEFkbWluIHVtZ2VoZW4sIHdlbm4KbWFuIHNpY2ggdm9yaGVyIGVpbiB3ZW5pZyBpbmZvcm1pZXJ0IGhhdCB1bmQgZWluZW0gc2VpbiBXZWliY2hlbiBlaW4KYmlzc2NoZW4gTVVlaGUgd2VydCBpc3QgLSBkZWluIFdlaWJjaGVuIHdpcmQgZXMgZGlyIG1pdCB1bXNvCmJlc3NlcmVyIExlaXN0dW5nc2ZhZWhpZ2tlaXQgZGFua2VuIHVuZCBiZXNvbmRlcnMgYW5zY2htaWVnc2FtIHVuZApmcmV1bmRsaWNoIHNlaW4uIFNpY2hlciBzdGltbXN0IGR1IG1pciB6dSwgZGFzIGF1Y2ggZWluZQplcnN0a2xhc3NpZ2UgV29ya3N0YXRpb24gZWluZmFjaCBQZmxlZ2UgYnJhdWNodC4KClNjaG9lbmVuIFRhZyBhdWNoIQoKRGFzIFdlaWJjaGVuIHZvbiBBc2guCgpTdXNhbm5lICJTY2hhdHosIGRlaW4gUGVybCBzaWVodCBuaWNodCBncmFkIHVtd2VyZmVuZCBhdXMiIFNjaG1pZHQKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEh1bW5pLCAxNC4gQXByIDIwMDIsIDE0OjQyOjIwKToKaGF0IG1laW5lbiBUZXBwaWNoIHZvbGxnZWtvdHp0LgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaW4gbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKExlaWJuaXosIDE0LiBBcHIgMjAwMiwgMTQ6NDI6NTApOgp+IyEgcm49SHVtbmkgcnQ9MTAxODc4ODE0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg3ODgxNDAKd2VyIHdhcnMgZGVubj8KaW1kYT8KKmtpY2hlcioKCgpsZWliaSAtIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFaW4gbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEh1bW5pLCAxNC4gQXByIDIwMDIsIDE0OjQzOjEyKToKfiMhIHJuPUxlaWJuaXogcnQ9MTAxODc4ODE3MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg3ODgxNDAKTmljaHQgbmFlaGVyIGdlbmFubnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFaW4gbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEltZGEsIDE0LiBBcHIgMjAwMiwgMTQ6NDQ6MTQpOgp+IyEgcm49SHVtbmkgcnQ9MTAxODc4ODE5MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg3ODgxNDAKWnUgZGllc2VyIFRoZW1hdGlrIHNpbmQga2VpbmUgbmFlaGVyZW4gRGV0YWlscyBiZWthbm50IGdld29yZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRWluIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChIdW1uaSwgMTQuIEFwciAyMDAyLCAxNDo0NDozOCk6Cn4jISBybj1JbWRhIHJ0PTEwMTg3ODgyNTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Nzg4MTQwCkViZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBFaW4gbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKExlaWJuaXosIDE0LiBBcHIgMjAwMiwgMTQ6NDQ6NTApOgp+IyEgcm49SHVtbmkgcnQ9MTAxODc4ODI3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg3ODgxNDAKZGFzIGlzdCBhYmVyIGxhbmd3ZWlsaWcgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEVpbiBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSmFtZXNvbiwgMTQuIEFwciAyMDAyLCAxNDo0NToyMSk6Cn4jISBybj1MZWlibml6IHJ0PTEwMTg3ODgyOTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Nzg4MTQwCmtvZW5udCBpaHIgZGFzIGluIGRlciByaWNodGlnZW4gUnVicmlrIGJlc3ByZWNoZW4/IDopIGRhbWl0IHdpciB3YXMgZGF2b24KaGFiZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEVpbiBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgMTQuIEFwciAyMDAyLCAxNDo0NTozOSk6Cn4jISBybj1KYW1lc29uIHJ0PTEwMTg3ODgzMjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Nzg4MTQwCkRJRSBsZXMgaWNoIGFiZXIgbmljaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEVpbiBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgMTQuIEFwciAyMDAyLCAxNDo0NTo1Myk6Cn4jISBybj1MZWlibml6IHJ0PTEwMTg3ODgzMzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Nzg4MTQwCndpciBrb2VubmVuIGphIGFiZXIgbWFsIHdpbGQgc3Bla3VsaWVyZW4sIHdlcnMgd2FyLCB1bmQgd29yYW4gZGFzIGxhZy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRWluIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChIdW1uaSwgMTQuIEFwciAyMDAyLCAxNDo0NTo1OSk6Cn4jISBybj1JbWRhIHJ0PTEwMTg3ODgzNTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Nzg4MTQwCk5laW4uIERlciBUaHJlYWQgaXN0IG5pY2h0IG1lZ2FzY2htYXJybi10YXVnbGljaC4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBFaW4gbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEphbWVzb24sIDE0LiBBcHIgMjAwMiwgMTQ6NDY6MTcpOgp+IyEgcm49TGVpYm5peiBydD0xMDE4Nzg4MzM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODc4ODE0MApyZWljaHQgamEgd2VubiBkdSBkcmluIHNjaHJlaWJzdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRWluIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChMZWlibml6LCAxNC4gQXByIDIwMDIsIDE0OjQ2OjE5KToKfiMhIHJuPUltZGEgcnQ9MTAxODc4ODM1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg3ODgxNDAKaWNoIHRpcHBlIG5vY2ggaW1tZXIgYXVmIGRpY2ggOikKYXVjaCB3ZW5uIGR1IHNjaHdhYmUgYmlzdCAqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBFaW4gbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEltZGEsIDE0LiBBcHIgMjAwMiwgMTQ6NDg6MjcpOgp+IyEgcm49TGVpYm5peiBydD0xMDE4Nzg4Mzc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODc4ODE0MApEYXMgaXN0IHZvZWxsaWcgdW5tb2VnbGljaC4gU293YXMgd2FlcmUgZWluZSB2ZXJzY2h3ZW5kdW5nIHZvbiBob2Nod2VydGlnZW0KQWxrb2hvbCwgZGllIHdpciB1bnMgbmljaHQgbGVpc3RlbiBrb2VubmVuLCB1bmQgbmljaHQgbGVpc3RlbiBkdWVyZmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEVpbiBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgMTQuIEFwciAyMDAyLCAxNDo0OToxNCk6Cn4jISBybj1JbWRhIHJ0PTEwMTg3ODg1MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Nzg4MTQwCmhhdCBodW1uaSBnZXNhZ3QsIGRhc3MgZXMgd2VnZW4gZGVzIGFsa29ob2xzIHdhcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBFaW4gbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEFtYXJ5bGxpcywgMTQuIEFwciAyMDAyLCAxNDo1MDowNSk6Cn4jISBybj1IdW1uaSBydD0xMDE4Nzg4MzU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODc4ODE0MApJbWhvIGRvY2guCgpBbHNvIGJpdHRlIG5hY2ggbWVnYXNjaG1hcnJuIHZlcmxlZ2VuIChsZXNlIGljaCBuaWNodCkuCgpBbWEqLCBmaW5kZXQ6IGVpbmUgUnVicmlrLCBkaWUga2FwdXR0IGlzdCwgcmVpY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEVpbiBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgMTQuIEFwciAyMDAyLCAxNDo1MDo1OSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTAxODc4ODYwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg3ODgxNDAKTnVqYSwgYWxrIHd1ZXJkZSBuYWhlbGllZ2VuLiBVbmQgZ3V0ZXMgc2Nob2VuZXMgdGV1cmVzIEVzc2VuIHdpcmQgc293aWVzbwpuaWNodCBzaW5ubG9zIGF1ZiBUZXBwaWNoZW4gdmVydGVpbHQuIERhIGJpbiBpY2ggZWlnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogRWluIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChHcmltbWJvcm4sIDE0LiBBcHIgMjAwMiwgMTQ6NTE6MTkpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMTg3ODg2MDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Nzg4MTQwClVtIERlaW5lIHBlcnNvZW5saWNoZW4gVm9ybGllYmVuIHp1IGJlZnJpZWRpZ2VuIGdpYnRzICJ1ZWJlcmdlaGUgdGhyZWFkIi4gSWNoCmthbm4gbmljaHQgZXJrZW5uZW4gd2llc28gZGFzIGhpZXIgYWxsZ2VtZWluIGZlaGwgYW0gUGxhdHogc2VpbiBzb2xsLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogRWluIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChDdWNodWxsaW4sIDE0LiBBcHIgMjAwMiwgMTQ6NTE6MzQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTg3ODg2Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Nzg4MTQwCkdyaW1tYm9ybiwgc2V0enQgRHUgZWluIFVlLUVpIGZ1ZXIgUmVeNTAgYXVzPyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBFaW4gbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKExlaWJuaXosIDE0LiBBcHIgMjAwMiwgMTQ6NTE6NTIpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMTg3ODg2OTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Nzg4MTQwCmRhcyBzY2hhZmZlbiB3aXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBFaW4gbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEdyaW1tYm9ybiwgMTQuIEFwciAyMDAyLCAxNDo1MjoyMik6Cn4jISBybj1MZWlibml6IHJ0PTEwMTg3ODg3MTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Nzg4MTQwCkViZW4uIERlc3dlZ2VuIG1hY2ggaWNoIGRhcyBuaWNodCBtZWhyLCBkYXMgZ2luZyBzY2hvbiBlaW5tYWwgc2NoaWVmLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogRWluIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChBbWFyeWxsaXMsIDE0LiBBcHIgMjAwMiwgMTQ6NTM6MTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTg3ODg2Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Nzg4MTQwCkljaCBkYWNodGUgZWlnZW50bGljaCAsZGFzcyBmdWVyIHNvbGNoZW4gTXVlbGwgZGllIFJ1YnJpa2VuIG1lZ2FzY2htYXJybiBvZGVyCnNvZ2FyIG11ZWxsIGRhIHdhcmVuLgoKIlVlYmVyZ2VoZSB0aHJlYWQiIGlzdCBtaXIgdWVicmlnZW5zIGR1cmNoYXVzIGJla2FubnQuCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogRWluIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAxNC4gQXByIDIwMDIsIDE0OjUzOjQwKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDE4Nzg4Nzk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODc4ODE0MApKZXR6dCB3aXNzZW4gd2lyIG5vY2ggaW1tZXJuaWNodCwgd2VycyB3YXIsIGFiZXIgdmllbGVpY2h0IHZlcnJhZXQgSHVtbmkgbWFsLApXQVMgZXMgd2FyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogRWluIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChMZWlibml6LCAxNC4gQXByIDIwMDIsIDE0OjU1OjE5KToKfiMhIHJuPUltZGEgcnQ9MTAxODc4ODgyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg3ODgxNDAKd29sbGVuIHdpciBkYXMgd2lya2xpY2ggc28gZ2VuYXUgd2lzc2VuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEVpbiBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgMTQuIEFwciAyMDAyLCAxNDo1Njo1Myk6Cn4jISBybj1MZWlibml6IHJ0PTEwMTg3ODg5MTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Nzg4MTQwCkRhcmF1cyBrb2VubnRlbiB3aXIgamEgdS5VLiBhdWYgZGVuIFVlYmVsdGFldGVyIHNjaGxpZXNzZW4uIApWZWdldGFyaWVyLCBvZGVyIEZsZWlzY2hmcmVzc2VyID8KQ29sYXN1ZWNodGlnZXIgb2RlciBCZXJ1ZnNhbGtpLgpNYXJpdGltc3BlaXNlciBvZGVyIFdob3BwZXJmcmVzc2VyLgoKSHVtbmksIHJ1ZWNrIHJhdXMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBFaW4gbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKExlaWJuaXosIDE0LiBBcHIgMjAwMiwgMTU6MDE6MDMpOgp+IyEgcm49SW1kYSBydD0xMDE4Nzg5MDEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODc4ODE0MAphaGhoaCB3aG9wcGVyICpzY2htYXR6KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IEVpbiBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgMTQuIEFwciAyMDAyLCAxNTowMToyNSk6Cn4jISBybj1MZWlibml6IHJ0PTEwMTg3ODkyNjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Nzg4MTQwCmF1ZiBkZWluZW0gVGVwcGljaCA/IGRhcyBsYWVzc3Qgc2ljaCBtYWNoZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBFaW4gbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKExlaWJuaXosIDE0LiBBcHIgMjAwMiwgMTU6MDM6MTApOgp+IyEgcm49SW1kYSBydD0xMDE4Nzg5Mjg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODc4ODE0MAphZWhtbW1tbW1tLi4uCm5hamEsIGFiZXIgaWNoIGdsYXViZSBkdSB3aXJzdCBlcyBuZXQgc2Vpbi4uLiBzY2h3YWJlIGhhbHQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVocm0/IChDdWNodWxsaW4sIDE0LiBBcHIgMjAwMiwgMTc6NDY6NTIpOgpUdWZmaSBydWZ0OiBnZXNlbGxlbgpIYWRyYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKKj8qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYXJ0eW5hY2h0cmFnIChWYXJkaW9uLCAxNC4gQXByIDIwMDIsIDE5OjQ0OjQ0KToKUGVyaWdpbiBzYWd0OiA8SGljaz4hCgpWYXJkaW9uLCBnZWh0IHNjaG9uIG1hbCBpbiBEZWNrdW5nIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbiBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoRGVlcGJsdWUsIDE0LiBBcHIgMjAwMiwgMjE6MjQ6MzQpOgp+IyEgcm49SHVtbmkgcnQ9MTAxODc4ODE0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg3ODgxNDAKU3dvdGwgd2FycywgU3dvdGwgd2FycyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFaW4gbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKExlaWJuaXosIDE0LiBBcHIgMjAwMiwgMjE6MjQ6NTQpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTAxODgxMjI3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg3ODgxNDAKd29oZXIgd2Vpc3N0ZSBkYXM/Pz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaW4gbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKFJvY2h1cywgMTUuIEFwciAyMDAyLCAwMTo1NTo1OSk6Cn4jISBybj1IdW1uaSBydD0xMDE4Nzg4MTQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODc4ODE0MApIbW0sIGljaCB3YXJ0ZSBub2NoIGF1ZiBkaWUgQW50d29ydCBlaW5lcyBNdWRnb3R0czoKRWluIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgS2F0ZXIuLi4KaGF0IG1laW5lIElzb21hdHRlIHZvbGxnZWtvdHp0LgoKICBSb2NodXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWluIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChBcG9sbG9uaWEsIDE1LiBBcHIgMjAwMiwgMDg6MzU6MTIpOgp+IyEgcm49Um9jaHVzIHJ0PTEwMTg4Mjg1NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4Nzg4MTQwCkF1d2VoLCBkYXJhbiBrYW5uIGljaCBtaWNoIGVyaW5uZXJuLi4uIDpvKSAKCkFwbyoKcGVpbmxpY2ggYmVydWVocnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVpbiBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoWm9vaywgMTUuIEFwciAyMDAyLCAwOTo1NDowMyk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTAxODg1MjUxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg3ODgxNDAKSWNoIHdhciBqYSBrdXJ6IGRhdm9yLCBkZW4gQXJ0aWtlbCB6dSBzY2hyZWliZW4sIGFiZXIgd29sbHRlIGRhcyBpbSAKU2lubmUgZGVyIEJldGVpbGlndGVuIGVoZXIgdW50ZXIgZGVuIFRlcHBpY2gga2VocmVuLi4uIEF1c3NlcmRlbSB3YXIgaWNoCnNjaG5lbGxlciBhbHMgZGVyIEthdGVyIDspCgpHcnVzcywgWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJyaXRuZXkgU3BlYXJzIG91dGV0IHNpY2ggYWxzIHdhaHJlIEJsb25kaW5lOiAoQW50aGVhLCAxNS4gQXByIDIwMDIsIDEwOjM0OjQ5KToKCkluIGtlaW5lbSB3ZXN0bGljaGVuIExhbmQgYmVrb21tdCBkaWUgVG9kZXNzdHJhZmUgc28gdmllbCBVbnRlcnN0dWV0enVuZyB3aWUKaW4gQW1lcmlrYS4gQXVjaCBCcml0bmV5IFNwZWFycyBvdXRldCBzaWNoIGFscyBCZWZ1ZXJ3b3J0ZXJpbi4KRGllIEJsb25kaW5lIGJlZ3J1ZW5kZXQgaWhyZSBIYWx0dW5nIHdpZSBmb2xndDogIkplbWFuZCwgZGVyIHNjaHJlY2tsaWNoZQpEaW5nZSBnZXRhbiBoYXQsIG11c3MgZWluZSBwYXNzZW5kZSBTdHJhZmUgYmVrb21tZW4uIFNvIGxlcm50IGVyIGZ1ZXIgZGFzCm5hZWNoc3RlIE1hbCBzZWluZSBMZWt0aW9uLiIKCjEwLjA0LjIwMDIgaW4gZGVyICJadWVyY2hlciBaZWl0dW5nIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJyaXRuZXkgU3BlYXJzIG91dGV0IHNpY2ggYWxzIHdhaHJlIEJsb25kaW5lOiAoR2xvaW5zb24sIDE1LiBBcHIgMjAwMiwgMTA6MzY6NDEpOgp+IyEgcm49QW50aGVhIHJ0PTEwMTg4NTk2ODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4ODU5Njg5ClZpZWxsZWljaHQgaXN0IGFiZXIgYXVjaCBzaWUgcm9tYW50aXNpZXJ0ZSBCdWRkaGlzdGluIG9kZXIgUHJhdGNoZXR0LUZhbi4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCcml0bmV5IFNwZWFycyBvdXRldCBzaWNoIGFscyB3YWhyZSBCbG9uZGluZTogKEdyaW1tYm9ybiwgMTUuIEFwciAyMDAyLCAxMDozNzowNyk6Cn4jISBybj1BbnRoZWEgcnQ9MTAxODg1OTY4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg4NTk2ODkKRGFzIGVyaW5uZXJ0IGFuIFZvbGtlciBQaXNwZXJzIGdlc3Rlcm4gaW4gZGVuIE1pdHRlcm5hY2h0c3NwaXR6ZW46ClZvbGtzYWJzdGltbXVuZ2VuIGluIC5kZSBuaWNodCBmdWVyIHdpY2h0aWdlIFNhY2hlbiB3aWUgKDEpIFRvZGVzc3RyYWZlLCAoMikKQXVmZ2FiZW4gdW5kIEVudGxvaG51bmcgdm9uIFBvbGl0aWtlcm4sICgzKSBCZWFtdGVudmVyc29yZ3VuZy4gRGFzIHNlaQppbmtvbnNlcXVlbnQsIGRhICgyKSB1bmQgKDMpIG51ciB1bnRlciBadWhpbGZlbmFobWUgdm9uICgxKSBnZWxvZXN0IHdlcmRlbgprb2VubmUuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXV0b2ZvbGdlIG1hbCB3aWVkZXIgKFBpdGZhbGwsIDE1LiBBcHIgMjAwMiwgMTY6MDk6MzgpOgplcyBnZWh0IHdvaGwgZG9jaCBuaWNodCBvaG5lOgoKR2xvaW5zb24gcnVmdDogdGVhbSBhdXRvZm9sZ2UgYXVzCkdsb2luc29uICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGF1dG9mb2xnZSBtYWwgd2llZGVyIChFbGJlcmV0LCAxNS4gQXByIDIwMDIsIDE2OjEwOjI0KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAxODg3OTc3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg4Nzk3NzgKd2lyIHdhcnRlbiBudXIgYXVmIHNlaW5lIGNoZW1pZSB1bmQgd29sbGVuIGlobSB6ZWl0IGdlYmVuIHNpY2hzIHp1IHVlYmVybGVnZW4sCmRhbWl0cyBrZWluIHNjaG5lbGxzY2h1c3Mgd2lyZAoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJyaXRuZXkgU3BlYXJzIG91dGV0IHNpY2ggYWxzIHdhaHJlIEJsb25kaW5lOiAoQW5jYWxhZ29uLCAxNS4gQXByIDIwMDIsIDIwOjI3OjI1KToKfiMhIHJuPUFudGhlYSBydD0xMDE4ODU5Njg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODg1OTY4OQpUYWdjaGVua251ZGRlbHMhClZpZWxsZWljaHQgZ2xhdWJ0IGRpZSBndXRlIGJyaXRuZXkgamEgYW4gV2llZGVyZ2VidXJ0Li4uLiAqZ3JpbnMqCgpBbmNhbGFnb24KKGFudGl0b2Rlc3N0cmFmZW5iZWZ1ZXJ3b3J0ZXJrbnVkZGVsbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc29tbWVyIGluIG9lc2lsYW5kIChMaWFyYSwgMTUuIEFwciAyMDAyLCAyMToyMzowOCk6Cn4jISBybj1LZWtzIHJ0PTEwMTg4OTEwNjIgcmc9cGFydHkKfiMhIHRpZD0xMDE4ODkxMDYyCm1haWwgZnJldW5kZT8gOy0pCgpaWkwsIG11c3MgYXVjaCBtYWwgc2VuZmVuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE11ZHBhcnR5IGluIE9lc3RlcmVpY2g/PyAoRGVlcGJsdWUsIDE2LiBBcHIgMjAwMiwgMTA6NTQ6NTIpOgp+IyEgcm49QXJrIHJ0PTEwMTg5NDY5NzAgcmc9cGFydHkKfiMhIHRpZD0xMDE4ODg5NDA4Ckthbm4gbWFuIGluIE9lc2lsYW5kIGVpZ2VudGxpY2ggc2Nob24gaW4gRXVybyB6YWhsZW4/IDotKSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTXVkcGFydHkgaW4gT2VzdGVyZWljaD8/IChHcmltbWJvcm4sIDE2LiBBcHIgMjAwMiwgMTA6NTU6MzUpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTAxODk0NzI5MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg4ODk0MDgKSmEsIGFiZXIgbnVyIGluIG9lc3RlcnJlaWNoaXNjaGVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogTXVkcGFydHkgaW4gT2VzdGVyZWljaD8/IChPcmt0b2V0ZXIsIDE2LiBBcHIgMjAwMiwgMTE6MTA6MDcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTg5NDczMzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4ODg5NDA4CkR1IGhhc3QgamEga2VpbmUgQWhudW5nIEdyaW0qIQpEaWUgbmVobWVuIGhpZXIgbnVyIGVjaHRlIFNjaHdlaXplciBFdXJvIQoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBNdWRwYXJ0eSBpbiBPZXN0ZXJlaWNoPz8gKE9ya3RvZXRlciwgMTYuIEFwciAyMDAyLCAxMToxMDo1OSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAxODk0ODIwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg4ODk0MDgKc29ycnkgZnVlciBkZW4gc2VsYnN0cmVwbHkKCk5hY2h0cmFnOgoKSGFuZGdlbWFsdCB1bmQgTXVuZGdlcHJhZWd0CgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IE11ZHBhcnR5IGluIE9lc3RlcmVpY2g/PyAoV29vZHksIDE2LiBBcHIgMjAwMiwgMTE6MTU6NTIpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMTg5NDgyNTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4ODg5NDA4CkRpZSBkZXV0c2NoZW4gbmVobWVuIHdpciBqZWRlbmZhbGxzIG5pY2h0LCB3ZWdlbiBmYW50YXNpZWxvc2VyIFJ1ZWNrc2VpdGVuLgoKKmJ1YWVoKgpXb29keS4tCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IE11ZHBhcnR5IGluIE9lc3RlcmVpY2g/PyAoWm9vaywgMTYuIEFwciAyMDAyLCAxMToxODo0OSk6Cn4jISBybj1Xb29keSBydD0xMDE4OTQ4NTUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODg4OTQwOAp1bmQgZGllIGlyaXNjaGVuPyA7KQoKem9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBNdWRwYXJ0eSBpbiBPZXN0ZXJlaWNoPz8gKFdvb2R5LCAxNi4gQXByIDIwMDIsIDExOjMxOjQwKToKfiMhIHJuPVpvb2sgcnQ9MTAxODk0ODcyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg4ODk0MDgKTGllYmVyIGlyaXNjaGVzIEJpZXIuIDspCldlbm5zIGVpbiBUcm9zdCBpc3Q6IEJlbGdpZW4gdW5kIEx1eGVtYnVyZyBoYWJlbiBub2NoIGZhbnRhc2llbG9zZXJlClJ1ZWNrc2VpdGVuLi4uIG5hamEsIEhhdXB0c2FjaGUgbWFuIGthbm5zIGVpbnRhdXNjaGVuLCBnZWdlbiBBbGtvaG9sLAp6d2Vja3Mgdm9lbGtlcnZlcmJpbmRlbmRlbSBHZW51c3MuIDspCgoKV29vZHkuLQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBNdWRwYXJ0eSBpbiBPZXN0ZXJlaWNoPz8gKE9ya3RvZXRlciwgMTYuIEFwciAyMDAyLCAxMTozMjoxNSk6Cn4jISBybj1Xb29keSBydD0xMDE4OTQ5NTAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODg4OTQwOApQcm9zdCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBNdWRwYXJ0eSBpbiBPZXN0ZXJlaWNoPz8gKE9ya3RvZXRlciwgMTYuIEFwciAyMDAyLCAxODo1ODo0Nyk6Cn4jISBybj1Nb250YW51cyBydD0xMDE4OTc1NDUzIHJnPXBhcnR5Cn4jISB0aWQ9MTAxODg4OTQwOApJY2gga29lbm50ZSBqYSBtYWwgYmVpIGRlbiBDaGluZXNlbiBhbmZyYWdlbiwgZGllIHdvbGxlbiBkb2NoIGVoIGluIGRlbgpuYWVjaHN0ZW4gSmFocmVuIGVpbmUgUmFrZXRlIHp1bSBNb25kIHNjaGllc3Nlbiwgd2VubiBzY2hvbiBleGNsdXNpdiBkYW5uIGF1Y2gKcmljaHRnaSEKCk9ya1QsIGRlciBNYW5uIGltIE1vbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTXVkcGFydHkgaW4gT2VzdGVyZWljaD8/IChKYW1lc29uLCAxNi4gQXByIDIwMDIsIDE5OjAwOjExKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDE4OTc2MzI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODg4OTQwOAp3b2xsdGVuIGRpZSBkYW5uIG5pY2h0IGRlbiBNb25kIHJvdCBhbm1hbGVuLCB6dW0gUnVobWUgZGVzIEtvbW11bmlzbXVzPyB1bmQKd29sbHRlbiBkaWUgQW1pcyBuaWNodCBoaW50ZXJoZXJmbGllZ2VuIHVuZCAiQ29jYSBDb2xhJyBkcnVlYmVycGluc2Vsbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBNdWRwYXJ0eSBpbiBPZXN0ZXJlaWNoPz8gKEFtYXJ5bGxpcywgMTYuIEFwciAyMDAyLCAxOTowNjo0OSk6Cn4jISBybj1KYW1lc29uIHJ0PTEwMTg5NzY0MTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4ODg5NDA4CmxpZWJlciB3YWVycyBtaXIgamEsIHdlbm4gc2llIG1pdCBkZXIgUmFrZXRlIGF1Y2ggYWxsZSBPZXN0ZXJyZWljaGVyIHp1bQpNb25kLi4uIGFlaC4uLiAqaHVzdCogOikKCkFtYSosIGhldXRlIG1hbCBmaWVzIDopCgpQUzogZmxhbWVzIG9mZiwgd2FyIG5pY2h0IHNvIGVybnN0IGdlbWVpbnQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBNdWRwYXJ0eSBpbiBPZXN0ZXJlaWNoPz8gKEdyaW1tYm9ybiwgMTYuIEFwciAyMDAyLCAxOTowODozNSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTAxODk3NjgwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg4ODk0MDgKTmFqYSwgZGVyIFdpdHogbWl0IGRlbSBDb2NhIENvbGEgU2NocmlmdHp1ZyBhdWYgZGVtIE1vbmQgaGF0IGphIHNjaG9uCnByYWVoaXN0b3Jpc2NoZW4gV2VydC4gQXVzIGRlcnNlbGJlbiBaZWl0IGtlbm5lIGljaCBub2NoIGVpbmVuOiAiU2NoaWVzc3QKU3RyYXVzcyB1bmQgQWxicmVjaHQgYXVmIGRlbiBNb25kLCBkYW1pdCBzaWNoIFJhdW1mYWhydCB3aWVkZXIgbG9obnQhIgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogTXVkcGFydHkgaW4gT2VzdGVyZWljaD8/IChKYW1lc29uLCAxNi4gQXByIDIwMDIsIDE5OjA5OjExKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDE4OTc2OTE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODg4OTQwOApqYSwgaWNoIGthbm50ZSBkZW4gYXVjaCBlaGVyIG1pdCBSdXNzZW4gdW5kIEFtaXMsIGFiZXIgZXIgcGFzc3RlIGdhbnogbmV0dCBkYQpoaW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBNdWRwYXJ0eSBpbiBPZXN0ZXJlaWNoPz8gKEFudGhlYSwgMTYuIEFwciAyMDAyLCAyMDowMzoyMSk6Cn4jISBybj1Dcm9mdCBydD0xMDE4OTc2OTg3IHJnPXBhcnR5Cn4jISB0aWQ9MTAxODg4OTQwOApXYXJ1bSBuaWNodCBnbGVpY2ggYXVmIEhhd2FpaT8gRGlzbmV5bGFuZCBGbG9yaWRhPyBPZGVyIHp1ciBBYndlY2hzbHVuZyBtYWwKZWluZSBQYXJ0eSBhbSBOb3JkcG9sPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVuay0gdW5kIE1lcmt3dWVyZGlnZXMgKFJvbGFuZCwgMTYuIEFwciAyMDAyLCAyMjozMDo0NSk6CgpXZW5uIGR1IDggSmFocmUsIDcgTW9uYXRlIHVuZCA2IFRhZ2Ugc2NocmVpZW4gd3VlcmRlc3QsIGhhZXR0ZXN0IGR1IGdlbnVnCkVuZXJnaWUgcHJvZHV6aWVydCB1bSBlaW5lIFRhc3NlIEthZmZlZSB6dSBlcndhZXJtZW4uCiAoT2Igc2ljaCBkYXMgbG9obnQ/KQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIERlciBPcmdhc211cyBlaW5lcyBTY2h3ZWlucyBkYXVlcnQgMzAgTWludXRlbiEKKEluIG1laW5lbSBuYWVjaHN0ZW4gTGViZW4gd2FlcmUgaWNoIGdlcm5lIGVpbiBTY2h3ZWluKQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KV2VubiBkdSBEZWluZW4gS29wZiBnZWdlbiBlaW5lIFdhbmQgc2NobGFlZ3N0LCB2ZXJicmF1Y2hzdCBkdSAxNTAgS2Fsb3JpZW4uCihJY2ggbXVzcyBpbW1lciBub2NoIGFuIGRhcyBTY2h3ZWluIGRlbmtlbiEpCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpFaW5lIEtha2VybGFrZSBrYW5uIDkgVGFnZSBvaG5lIEtvcGYgdWViZXJsZWJlbiBiZXZvciBzaWUgdmVyaHVuZ2VydC4KKEJ1YWVhZWFlYWVhZWFlYWVhZWFlYWVhZWFlISEhKQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRWluaWdlIExvZXdlbiBwYWFyZW4gc2ljaCBiaXMgenUgNTAtbWFsIGFtIFRhZy4gKEljaCB3YWVyZSB0cm90emRlbSBsaWViZXIKZWluIFNjaHdlaW4uIFF1YWxpdGFldCBnZWh0IHVlYmVyIFF1YW50aXRhZXQhKQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KU2NobWV0dGVybGluZ2UgbGVja2VuIGFuIGlocmVuIGVpZ2VuZW4gRnVlc3Nlbi4gKERhcyBtdXNzdGUgbWFsIGdlc2FndCB3ZXJkZW4pCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpFbGVmYW50ZW4gc2luZCBkaWUgZWluemlnZW4gVGllcmUgZGllIG5pY2h0IHNwcmluZ2VuIGtvZW5uZW4uIChJc3Qgd29obCBhdWNoCmJlc3NlciBzbyA6LSkpCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpEZXIgVXJpbiBlaW5lciBLYXR6ZSBwaG9zcGhvcmlzaWVydCBpbSBEdW5rZWxuLiAoV2VuIGJlemFobHQgbWFuCmVpZ2VudGxpY2gsIHVtIHNvIGV0d2FzIHp1IGVyZm9yc2NoZW4/KQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRGFzIEF1Z2UgZWluZXMgU3RyYXVzc2VzIGlzdCBncm9lc3NlciBhbHMgc2VpbiBHZWhpcm4uIChJY2gga2VubmUgTWVuc2NoZW4sCmJlaSBkZW5lbiBpc3QgZGFzIG5pY2h0IGFuZGVycyEpCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpTZWVzdGVybmUgaGFiZW4ga2VpbiBHZWhpcm4uIChBdWNoIHNvbGNoZSBUeXBlbiBrZW5uZSBpY2gpCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpQb2xhcmJhZXJlbiBzaW5kIExpbmtzaGFlbmRlci4gKE5hIHVuZD8/KQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KTWVuc2NoZW4gdW5kIERlbHBoaW5lIHNpbmQgZGllIGVpbnppZ2VuIExlYmV3ZXNlbiwgZGllIHdlZ2VuIGRlciBGcmV1ZGUgU2V4CmhhYmVuLiAoSGV5ISBXYXMgaXN0IG1pdCBkZW0gU2Nod2Vpbj8/PykKClVuZCBub2NoIGV0d2FzOiA7LSkKCldhcyBpc3QgZGVyIFVudGVyc2NoaWVkIHp3aXNjaGVuLgotIGVpbmVyIDYtSmFlaHJpZ2VuLAotIGVpbmVyIDE2LUphZWhyaWdlbiwKLSBlaW5lciAyNi1KYWVocmlnZW4gdW5kCi0gZWluZXIgMzYtSmFlaHJpZ2VuPwo+ID4KPiA+IC0gRGllIDYtSmFlaHJpZ2UgYnJpbmd0IG1hbiBpbnMgQmV0dCB1bmQgZXJ6YWVobHQgaWhyIGVpbiBNYWVyY2hlbiwKPiA+IC0gZGVyIDE2LUphZWhyaWdlbiBlcnphZWhsdCBtYW4gZWluIE1hZXJjaGVuLCB1bSBzaWUgaW5zIEJldHQgenUga3JpZWdlbiwKPiA+IC0gZGllIDI2LUphaHJpZ2UgaXN0IGVpbiBNYWVyY2hlbiBpbSBCZXR0IHVuZAo+ID4gLSBkaWUgMzYtSmFlaHJpZ2Ugc2FndCAiRXJ6YWVobCBrZWluZSBNYWVyY2hlbiB1bmQga29tbSBpbnMgQmV0dCEKClVudGVyc2NoaWVkIHp3aXNjaGVuIC4gZWluZW0gSGFzZW4sIGVpbmVyIFdvbGxqYWNrZSwgZWluZW0gRnVzc2JhbGwgdW5kCmVpbmVyIDE4amFlaHJpZ2VuPwo+ID4gCj4gPi0gZGVyIEhhc2Ugd2lyZCBnZXNwaWNrdCwKPiA+IC0gZGllIFdvbGxqYWNrZSB3aXJkIGdlc3RyaWNrdCwKPiA+IC0gZGVyIEZ1c3NiYWxsIHdpcmQgZ2VraWNrdCB1bmQuCj4gPiAtIGRpZSAxOGphZWhyaWdlIHdpcmQgMTkuCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpJbW1lciBub2NoIG5pY2h0IGdlbnVnPz8/CgpXYXMgaG9lcnQgbWFuLCB3ZW5uIG1hbiBzaWNoIGVpbmVuIERvZW5lciBhbnMgT2hyIGhhZWx0PwpEYXMgU2Nod2VpZ2VuIGRlciBMYWVtbWVyLgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KV2VsY2hlIGdyYW1tYXRpa2FsaXNjaGUgWmVpdCBpc3Q6CiJEdSBoYWV0dGVzdCBuaWNodCBnZWJvcmVuIHdlcmRlbiBzb2xsZW4/Ci0gUHJhZXNlcnZhdGl2IERlZmVrdCEKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCldhcyBiZWtvbW10IG1hbiwgd2VubiBtYW4gZWluZW4gUGl0YnVsbCB1bmQgZWluZW4gQ29sbGllIGtyZXV6dD8KRWluZW4gSHVuZCwgZGVyIGRpciBlaW4gQmVpbiBhYmJlaXNzdCB1bmQgZGFubiBIaWxmZSBob2x0LgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KVU5EIERFUiBMRVRaVEUgV0VHOyBMRVVURU4gQVVGIERJRSBORVJWRU4gWlUgR0VIRU46CgpLb3BpZXJlIGRpZXNlbiBUZXh0LCB1bmQgZXJzdGVsbGUgZWluIG5ldWVuIGFydGlrZWwgaW4gc2VsYmlnZXIgUnViaWsgbWl0CmdsZWljaGVtIEluaGFsdCAKCkxhY2htdXNrZWxyZWl6ZXIgUm9sYW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1ZXIgRXJ6bWFnaWVyLi4uIChNaW5nbywgMTYuIEFwciAyMDAyLCAyMzo0NzoyMyk6Cn4jISBybj1ab29rIHJ0PTEwMTg5OTA4Nzkgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwMTg5OTA4NzkKS2F1bSBrdWxsZXJ0IG9iZW4gZWluZXIgcmF1cyBydXRzY2h0IGFsbGVzIG5hY2guIElzdCBqYSB3aWUgYmVpIGVpbmVtCiJUb2Rlc2ZhbGwiIGluIGRlciBVbnNpY2h0YmFyZW4gVW5pdmVyc2l0YWV0LgoKTWluZ28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV1ZXIgRXJ6bWFnaWVyLi4uIChPcmt0b2V0ZXIsIDE2LiBBcHIgMjAwMiwgMjM6NDk6MDEpOgp+IyEgcm49TWluZ28gcnQ9MTAxODk5MzY0MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg5OTA4NzkKaW4gVVUgaXN0IGRhcyBkb2NoIHNjaG9uIGxhbmdlIG5pY2h0IG1laHIgZGVyIFJlZ2VsZmFsbC4uLiBuYWphLCB6dW1pbmRlc3QgaXN0CmVzIG5pY2h0IG1laHIgc28gaGFldWZpZyB3aWUgZnJ1ZWhyZS4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUb3VjaGRvd24gKEdyaW1tYm9ybiwgMTcuIEFwciAyMDAyLCAwMDoxNTo1MSk6Cn4jISBvbj1ab29rIG90PTEwMTg5OTUxNDAgb2c9c3VjaGUtYmlldGUKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwMTg5OTQzNjUgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMDE4OTk0MzY1CkFsc28gZnVlciBzb3dhcyBoYWIgaWNoIHNlaXQgUHJvZ3Jlc3NRdWVzdCBrZWluZSBaZWl0IG1laHIuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUb3VjaGRvd24gKEdyaW1tYm9ybiwgMTcuIEFwciAyMDAyLCAwMDoxNTo1Mik6Cn4jISBvbj1KYWRhd2luIG90PTEwMTg5OTUxOTIgb2c9c3VjaGUtYmlldGUKfiMhIHJuPVpvb2sgcnQ9MTAxODk5NTE0MCByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwMTg5OTQzNjUKSmVwcC4gSGFiIGpldHp0IGF1Y2ggZW5kbGljaCBlaW4gbG9uZ3N3b3JkLiBXZW5uIGF1Y2ggdW5iYWxhbmNlZC4gOykKSmFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVG91Y2hkb3duIChHcmltbWJvcm4sIDE3LiBBcHIgMjAwMiwgMDA6MTU6NTMpOgp+IyEgb249Wm9vayBvdD0xMDE4OTk1MjMwIG9nPXN1Y2hlLWJpZXRlCn4jISBybj1KYWRhd2luIHJ0PTEwMTg5OTUxOTIgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMDE4OTk0MzY1CkhhZXNzbGljaCwgaGFlc3NsaWNoLi4uIHdhcnQgbWFsLCBiaXMgRHUgTWFnZW50aWMgT3JiIElYIGthbm5zdCA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRvdWNoZG93biAoR3JpbW1ib3JuLCAxNy4gQXByIDIwMDIsIDAwOjE1OjU0KToKfiMhIG9uPVpvb2sgb3Q9MTAxODk5NTI0MiBvZz1zdWNoZS1iaWV0ZQp+IyEgcm49Wm9vayBydD0xMDE4OTk1MjMwIHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTAxODk5NDM2NQpNYWduZXRpYyBtdXNzIGRhcyBoZWlzc2VuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFRvdWNoZG93biAoR3JpbW1ib3JuLCAxNy4gQXByIDIwMDIsIDAwOjE1OjU1KToKfiMhIG9uPUphZGF3aW4gb3Q9MTAxODk5NTI4MiBvZz1zdWNoZS1iaWV0ZQp+IyEgcm49Wm9vayBydD0xMDE4OTk1MjQyIHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTAxODk5NDM2NQpVaSwgZGEgYmluIGljaCBqYSBtYWwgZ2VzcGFubnQuIDopCkphZCogKGF1ZiBkaWUgV2FzLXNvbGwtZGFzLVJlaGUgd2FydGVuZCkgIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWluIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChIaWdodCwgMTcuIEFwciAyMDAyLCAwMTozNTo0OCk6Cn4jISBybj1IdW1uaSBydD0xMDE4Nzg4MTQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODc4ODE0MAppY2ggcmF0dGU6IGltZGEgLi4uIGF1ZmxvZXN1bmcgZmluZCBpY2ggYmVzdGltbXQgd2VpdGVyIGhpbnRlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbiBuZXVlciBXZWlzZXIuLi4uIChDdWNodWxsaW4sIDE3LiBBcHIgMjAwMiwgMTI6MTc6MTcpOgp+IyEgcm49Wm9vayBydD0xMDE4ODk4NjI0IHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDE4ODk4NjI0CldvIGVzIGpldHp0IChlbmRsaWNoKSB3aWVkZXIgZWluZW4gV2Vpc2VuIGdpYnQsIGRlciBkZW4gU3RhdHVzIG5pY2h0CmFscyBwb3N0ZXJ6bWFnaWVybGljaGVzIFJ1aGVraXNzZW4gaW5uZWhhdCwga29lbm50ZSBtYW4gamEgbWFsIGRhcnVlYmVyCm5hY2hkZW5rZW4sIGRpZSAnV2Vpc2VuIGguYy4nIHZvbiBpaHJlciBCdWVyZGUgenUgYmVmcmVpZW4gdW5kIGlobmVuCm1laW5ldHdlZ2VuIGVpbmUgWmVpbGUgaW0gJ2ZpbmdlcicgenUgZ29lbm5lbiAoIi4uLiB0YXQgdm9tIC4uLiBiaXMgLi4uIApEaWVuc3QgYWxzIC4uLiIpLCBkYW1pdCBkZXIgRWhyZSBHZW51ZWdlIGdldGFuIGlzdC4KCkN1Y2gKClBTOiBXYXJ1bSBTY2htYXJybj8gV2VpbCBkaWUgR2VnbmVyIHp1IHZpZWwgTG9iYnkgaGFiZW4uIDtvKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWluIG5ldWVyIFdlaXNlci4uLi4gKEFudGhlYSwgMTcuIEFwciAyMDAyLCAxMjoyNDozMik6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAxOTAzODYzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg4OTg2MjQKQWJlciBkYXMgZGFubiBhdWNoIGZ1ZXIgSGlsZnNtYWdpZXIsIGRlbm4gZGFubiB3aWxsIGljaCBhdWNoIHNlaGVuLCBkYXNzIGljaAptYWwgUmVnaW9uc21hZ2llciBkZXIgSW5zZWxuIHdhciA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRWluIG5ldWVyIFdlaXNlci4uLi4gKEJvaW5nLCAxNy4gQXByIDIwMDIsIDEyOjI0OjU2KToKfiMhIHJuPUFudGhlYSBydD0xMDE5MDM5MDcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODg5ODYyNApEdSB3YXJzdCBtYWwgUmVnaW9uc21hZ2llciBkZXIgSW5zZWxuPyBFY2h0PyA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFaW4gbmV1ZXIgV2Vpc2VyLi4uLiAoQW50aGVhLCAxNy4gQXByIDIwMDIsIDEyOjI1OjQwKToKfiMhIHJuPUJvaW5nIHJ0PTEwMTkwMzkwOTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4ODk4NjI0CkJhZWghCkF1c3NlcmRlbSBrbGluZ3QgIkhpbGZzbWFnaWVyIiBzbyBzZWx0c2FtLi4uLiBBbHMgd2FlcmVuIHdpciB3YXMgdW50ZXJoYWxiIGRlcgpBenViaXMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEVpbiBuZXVlciBXZWlzZXIuLi4uIChDdWNodWxsaW4sIDE3LiBBcHIgMjAwMiwgMTI6MjY6NDMpOgp+IyEgcm49QW50aGVhIHJ0PTEwMTkwMzkxNDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4ODk4NjI0CkZ1ZWhyZW4gd2lyIG5lbiBuZXVlbiBCdWNoc3RhYmVuIGltICJ3ZXIiIGVpbjogW1ZdIGZ1ZXIgTWFnaWVyIF9tX2l0Cl9iX2Vzb25kZXJlciBfVl9lcmdhbmdlbmhlaXQuIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRWluIG5ldWVyIFdlaXNlci4uLi4gKEJhbWJpLCAxNy4gQXByIDIwMDIsIDEyOjI3OjQ1KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDE5MDM5MjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODg5ODYyNApBdSBqYS4gVW5kIG5lbiBWZXJtZXJrICJXYXIgbWFsIFNwaWVsZXIiLCAid2FyIGxhZW5nZXIgYWxzIHggT25saW5lLVRhZ2UKU3BpZWxlciIsICJXYXIgbGFlbmdlciBTcGllbGVyIGFscyBTZWhlciwgYWJlciBuaWNodCBNYWdpZXIuIiAuLi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEVpbiBuZXVlciBXZWlzZXIuLi4uIChCb2luZywgMTcuIEFwciAyMDAyLCAxMjoyODowMyk6Cn4jISBybj1CYW1iaSBydD0xMDE5MDM5MjY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODg5ODYyNApHaWJ0IGphIG5vY2ggZ2VudWcgQnVjaHN0YWJlbiAuLi4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRWluIG5ldWVyIFdlaXNlci4uLi4gKE9ya3RvZXRlciwgMTcuIEFwciAyMDAyLCAxMjoyODowNyk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAxOTAzOTIwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg4OTg2MjQKRSBpc3QgamEgbGVpZGVyIHNjaG9uIHZlcmdlYmVuLCBoYWV0dGUgc29uc3QgenUgW0VdaXRlbCBnZXBhc3N0IChvZGVyIGF1Y2gKW0VdaWRsZSAqYXV0c2NoKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRWluIG5ldWVyIFdlaXNlci4uLi4gKEN1Y2h1bGxpbiwgMTcuIEFwciAyMDAyLCAxMjoyOTowMyk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAxOTAzOTI4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg4OTg2MjQKTmFqYSwgRHUgd2lsbHN0IGRvY2ggQXJrIG5pY2h0IGJlbGVpZGlnZW4/IFVuZCBkYXMgW09dIGZ1ZXIgIk9ya3RvZXRlciIKZXJpbm5lcnQgYXVjaCBzY2hvbiBhcmcgYW4gZWluZSBiZXN0aW1tdGUgWmFobCAqZHVjayouIDopCgpHdXQgZGFzcyBpY2ggZ3JhZCBhbHMgQ3VjaHVsbGluLi4uLiA7bykKCkN1Y2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEVpbiBuZXVlciBXZWlzZXIuLi4uIChHcnVtcGYsIDE3LiBBcHIgMjAwMiwgMTI6Mjk6MDcpOgp+IyEgcm49QmFtYmkgcnQ9MTAxOTAzOTI2NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg4OTg2MjQKV2FydW0gbmljaHQgZ2xlaWNoIEthcnRlaWthcnRlbiBmdWVyIGplZGVuIE1hZyBhZWhubGljaCBkZW5lbiBkZXIgVHJ2ZXM/IFdvCmRhbm4gZXhwbGl6aXQgZHJhdWZzdGVodCB3YXMgZGFzIEdTIHdhciwgd2llIG9mdCB1bmQgd2llbGFuZ2UgU3BpZWxwYXVzZSBldGMuCkdydW1wZiBncnVtcGZ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRWluIG5ldWVyIFdlaXNlci4uLi4gKERlZXBibHVlLCAxNy4gQXByIDIwMDIsIDEyOjMwOjE1KToKfiMhIHJuPUJvaW5nIHJ0PTEwMTkwMzkyODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4ODk4NjI0Ck1pc3QsIFcgaXN0IHNjaG9uIGJlbGVndCwgd2VsY2hlbiBuZWhtZW4gd2lyIGRlbm4gZGFubiBmdWVyIFd1ZXJzdGU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBFaW4gbmV1ZXIgV2Vpc2VyLi4uLiAoQm9pbmcsIDE3LiBBcHIgMjAwMiwgMTI6MzE6MTgpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTAxOTAzOTQxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg4OTg2MjQKW0RdIHZpZWxsZWljaHQ/CiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBFaW4gbmV1ZXIgV2Vpc2VyLi4uLiAoQ3VjaHVsbGluLCAxNy4gQXByIDIwMDIsIDEyOjMxOjM4KToKfiMhIHJuPUJvaW5nIHJ0PTEwMTkwMzk0Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4ODk4NjI0Ckd1dGUgSWRlZSwgYWJlciBkcyBbU10gdHV0IGRlbiBKb2IgamEgYmVyZWl0cyBoZXJ2b3JyYWdlbmQuLi4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogRWluIG5ldWVyIFdlaXNlci4uLi4gKEFudGhlYSwgMTcuIEFwciAyMDAyLCAxMjozMzowOCk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAxOTAzOTQ5OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg4OTg2MjQKV29mdWVyIHN0ZWh0IGRhcyBkZW5uPyBbU111cGVyd3VlcnN0ZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBNdWRwYXJ0eSBpbiBPZXN0ZXJlaWNoPz8gKFZlY3RvciwgMTcuIEFwciAyMDAyLCAxMjozMzo0OCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDE4OTQ3MjkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODg4OTQwOApUIGZ1ZXIgVGVld3Vyc3Q/OikKZnVlciByZSAxMDAgZ2lidHMgbiB1ZS1laQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE11ZHBhcnR5IGluIE9lc3RlcmVpY2g/PyAoVHpvZmUsIDE3LiBBcHIgMjAwMiwgMTM6MTc6MTgpOgp+IyEgcm49VmVjdG9yIHJ0PTEwMTkwMzk2Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4ODg5NDA4Ck5hdHVlcmxpY2ggZWluIGtsZWluZXMgW3ddICEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2MzQzOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbnRoZWEsIDE3LiBBcHIgMjAwMiwgMTU6MDE6NTEpOgp+IyEgcm49RWxiZXJldCBydD0xMDE5MDM1OTEzIHJnPW1lZ2FzY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOaWJlbCAgICAgPT0gUmF2ZW50aHJvbmUgICAoMTM3MTApCkJvaW5nICAgICA9PSBIdW56ZWwgICAgICAgICgxMzc3MSkKTXVhZGliICAgID09IEdydW56d2FuemxpbmcgKDE0NzU3KQpWaW5jZW50ICAgPT0gRHJhZ29uaXggICAgICAoMTU3MTEpClpvb2sgICAgICA9PSBOZ2cgICAgICAgICAgICgyNzEyMCkKSHVtbmkgICAgID09IFN3b3RsICAgICAgICAgKDI4MzY0KQpJc2kgICAgICAgPT0gSXNpZGlsYSAgICAgICAoMjgzNjcpCk1vbnRhbnVzICA9PSBNb250YW51cyAgICAgICgyODk2MykKR3JpbW1ib3JuID09IEdyaW1tYm9ybiAgICAgKDI4OTY0KQpTY29ycGlvbiAgPT0gR3J1ZmZpICAgICAgICAoMjg5NjkpCkFudGhlYSAgICA9PSBBbnRoZWEgICAgICAgICgyODk5OCkKQ2F0d2VhemxlID09IFRvdWNod29vZCAgICAgKDI5NTU0KQpKYWRhd2luICAgPT0gQmxvb2R5QmFzdGFyZCAoMzIxODEpCk11cGZlbCAgICA9PSBIcnJybXBmICAgICAgICgzMjE4MykKVmFybGFyaW9uID09IFZhcmxhcmlvbiAgICAgKDMyNTg1KQpCaWVsZWZlbGQgPT0gVm9sbHNjcmlwdCAgICAoMzQxMjUpCk1hcmN1cyAgICA9PSBLcm9obGFyICAgICAgICgzODUwNykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBNYWdpZXJrYXJ0ZWlrYXJ0ZW4gKEdub21lLCAxNy4gQXByIDIwMDIsIDE1OjE3OjQ1KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDE5MDQyOTMzIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDE5MDM5OTEyCmRpZSB6dSBkZW4gVVNBIGdlaG9lcmVuZGUgaW5zZWwgaW0gcGF6aWZpayB3aXJkIG1pdCB6d2VpICdpJyBnZXNjaHJpZWJlbi4Kd2VubiBzY2hvbiBkZWthZGVueiwgZGFubiByaWNodGlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRWluIG5ldWVyIFdlaXNlci4uLi4gKEFyaywgMTcuIEFwciAyMDAyLCAxNjoxOToyNyk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAxOTAzOTIwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg4OTg2MjQKQWxsZXMgUG9lc3RjaGVuaG9wcGVyLCBQb2VzdGNoZW5zY2hpZWJlciwgS29lbG5lciBMb2thbHBvbGl0aWtlciwgQmVhbXRlIGhpZXI/CjopCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRWluIG5ldWVyIFdlaXNlci4uLi4gKE11cGZlbCwgMTcuIEFwciAyMDAyLCAxODoxNDozNik6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAxOTAzOTIwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg4OTg2MjQKSW0gQW5kZXJsYW5kIGhhYmVud2VyIGRhZnVlciBkZW4gTWFnaWVybGV2ZWwgNTEsIGluIGRlciBXZXJsaXN0ZSBtaXQgZWluZW0gW2VdCnZlcnRyZXRlbi4gUmVjaHRlIHNpbmQgZGllIHNlbGJlbiB3aWUgYmVpIFdlaXNlbiwgaXN0IGhhbHQgbnVyIGVpbiBhbmRlcmVyClN0YXR1cy4KCi1tdXBmZWwtClAuUy46IGZpbmdlciBjdWNodWxsaW5AYW5kZXJsYW5kIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIHBhc3NlbmRlIGFudHdvcnQ/PyAoRWxiZXJldCwgMTcuIEFwciAyMDAyLCAxODo0MzoxMyk6CkdlcmFkZSBnZXNjaGVoZW46CgpWb24gRnJldW5kaW4gSXNpOiBpY2ggbWVvY2hodGUgbWFsIHp1IGdlcm4gd2lzc2VuIHdhdHVtIGRpZQpWb24gRnJldW5kaW4gSXNpOiBzeXNhZG1pbiBiZWkgbWlyIGltbWVyIHp1IHp3ZWl0ClZvbiBGcmV1bmRpbiBJc2k6IGF1ZnRhdWNoZW4uLi4KVm9uIEZyZXVuZCBWYXJkaW9uOiB3ZWlsIGRpZSBmZXVlcmF4dCB6dSBzY2h3ZXIgaXN0LCB1bSB2b24KVm9uIEZyZXVuZCBWYXJkaW9uOiBlaW5lbSBnZXRyYWdlbiB6dSB3ZXJkZW4gOykKCkljaCB3ZWlzcyBqYSBuaWNodCwgYWJlciB1ZWJlcnpldWdlbmRlIEFudHdvcnQgOikKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhcnRpa2VsIHBhc3NlbmRlIGFudHdvcnQ/PyAoVmFyZGlvbiwgMTcuIEFwciAyMDAyLCAxOTowNTo0Mik6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMTkwNjE3OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE5MDYxNzkzCkphLCBkaWUgYW50d29ydCB3YXIgYXVmIElzaXMgRnJhZ2UuIEZldWVyYWV4dGUgZmluZGUgbWFuIGluIFJMIGJlaSBkZW4KQnJhbmRzY2h1dHotVXRlbnNpbGllbiwgYWJlciBzaWUgbGFzc2VuIHNpY2ggYXVjaCBwcmltYSBhbHMgTEFSVCBlaW5zZXR6ZW4gOikKClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE11ZHBhcnR5IGluIE9lc3RlcmVpY2g/PyAoTGlhcmEsIDE3LiBBcHIgMjAwMiwgMjA6NDg6MjYpOgp+IyEgcm49TW9udGFudXMgcnQ9MTAxODkwOTIzMiByZz1wYXJ0eQp+IyEgdGlkPTEwMTg4ODk0MDgKU29zbywgSGVyciBNb250YW51cywgd2VuIGludGVyZXNzaWVydCBhbHNvIEJvbm4gLi4uID8KClpaTCwgbXVzdGVydCBIZXJybiBNb250YW51cyBwaWtpZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogTXVkcGFydHkgaW4gT2VzdGVyZWljaD8/IChMaWFyYSwgMTcuIEFwciAyMDAyLCAyMDo1MzoxMSk6Cn4jISBybj1Xb29keSBydD0xMDE4OTQ4NTUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODg4OTQwOApKbywgV29vZHkgZGEgaGFzdGUgbnUnIHdpcmtsaWNoIG1hbCBSZWNodCwgYXVjaCB3ZW5uIGR1IE9lc2kgYmlzdC4gOy0pKQoKWlpMLCBoYXQgc2ljaCBnbGVpY2ggZGFzIE9lc2lrdXBmZXIgZ2VzaWNoZXJ0LCBzYW10IEVuemlhbiwgRWRlbHdlaXNzIHVuZApBbHBlbnByaW1lbCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBNdWRwYXJ0eSBpbiBPZXN0ZXJlaWNoPz8gKEdyaW1tYm9ybiwgMTcuIEFwciAyMDAyLCAyMDo1NDoxMyk6Cn4jISBybj1MaWFyYSBydD0xMDE5MDY5NTkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxODg4OTQwOApEYXMgaXN0IGRvY2ggbWFsIGVpbiBBbnNhdHouCkdpYnRzIHp1ZmFlbGxpZyBlaW4gTGFuZCBkYXNzIEhhbmYsIE1vaG4gdW5kIEZsaWVnZW5waWx6IGFiZ2ViaWxkZXQgaGF0PwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogTXVkcGFydHkgaW4gT2VzdGVyZWljaD8/IChNb250YW51cywgMTguIEFwciAyMDAyLCAwMDoxMDoyNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxOTA2OTY1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg4ODk0MDgKSmV0enQgd2Vpc3N0IGR1LCB3YXMgZHUgenUgdHVuIGhhdCwgYmV2b3IgU2Nod2VkZW4gZGVyIFdhZWhydW5nc3VuaW9uCmJlaXRyaXR0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IE11ZHBhcnR5IGluIE9lc3RlcmVpY2g/PyAoR3JpbW1ib3JuLCAxOC4gQXByIDIwMDIsIDAwOjU5OjM0KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwMTkwODE0MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE4ODg5NDA4ClNjaHdlZGVuPyBIYWguIEljaCBtZWluZSwgaWNoIHNjaGFldHplIGRhcyBMYW5kIHdpcmtsaWNoIHNlaHIgdW5kIHNvLCBhYmVyIHdhcwpkaWUgYW4gRHJvZ2VucG9saXRpayBmYWhyZW4gaXN0IGVpbmUgYWJzb2x1dGUgS2F0YXN0cm9waGUuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVocmVucmVoLiAoQm9pbmcsIDE4LiBBcHIgMjAwMiwgMTE6NTA6MzEpOgp+IyEgb249QmFtYmkgb3Q9MTAxOTEyMzAyMyBvZz1lbnR3aWNrbHVuZwpJY2ggbW9lY2h0ZSBldWNoIGhpZXIgKGRhIGljaCBpbiBiZWthbm50bWFjaHVuZ2VuIGtlaW5lIFNjaHJlaWJyZWNodGUgaGFiZSkKYmVrYW5udGdlYmVuLCBkYXNzIE11YWRpYiBhdWYgQmVzY2hsdXNzIGVpbmlnZXIgS2FybHNydWhlciBNdWRkZXIgenVtCkVocmVuLVJlaCBlcm5hbm50IHdpcmQuCkRpZSBGZWllcmxpY2hrZWl0ZW4gZmluZGVuIGxlaWRlciBuaWNodCBoZXV0ZSBhYmVuZCBhbSBTdGF0aSBzdGF0dCAoc293ZWl0IGljaAp3ZWlzcyksIHNvbmRlcm4gZXJzdCBhbSBuYWVjaHN0ZW4gRmVpZXJ0YWdzLURvbm5lcnN0YWcsIHdvIGRhbm4gYXVjaAoodmVybXV0bGljaCkgaW0gR3J1ZW5lbiBEcmFjaGVuIHplbGVicmllcnQgd2lyZC4KU3RvZmZ0aWVyLVNwZW5kZW4gbmVobWUgaWNoIGltIFZvcmZlbGQgZ2VybmUgenVyIGdlbWVpbnNhbWVuIFVlYmVyZ2FiZSBhbi4KCk1mRywgQmFtYmkuCgpQUy4KRGllIFN5bnRheCAidGVpbGUgbXVhZGliIG1pdCBhdWZnYWJlbiBkZXIgcmVoZSIgZnVua3Rpb25pZXJ0IG5vY2ggbmljaHQsIHdpZQpnZXd1ZW5zY2h0LiBFcyB3aXJkIGFiZXIgZGFydW0gZ2ViZXRlbiwga2VpbmUgQnVnLVJlcG9ydHMgZGF6dSBhYnp1c2V0emVuLCBkYQpkYXMgUHJvYmxlbSBiZXJlaXRzIGJla2FubnQgaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVocmVucmVoLiAoQm9pbmcsIDE4LiBBcHIgMjAwMiwgMTE6NTA6MzIpOgp+IyEgb249QmFtYmkgb3Q9MTAxOTEyMzM2OSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49QmFtYmkgcnQ9MTAxOTEyMzAyMyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMTkxMjMwMjMKVXBzLCBkYSBpc3QgbWlyIGVpbiBrbGVpbmVyIEZlaGxlciB1bnRlcmxhdWZlbi4uLgpBbiBkZW4gRWhyZW50aXRlbCBzaW5kIG5hdHVlcmxpY2ggX2tlaW5lXyBBdWZnYWJlbiBnZWJ1bmRlbi4gRGFzIGVya2xhZXJ0IGF1Y2gKZGFzIG5pY2h0LUZ1bmt0aW9uaWVyZW4gZGVyIFN5bnRheC4gSWNoIGJpdHRlIHZpZWxtYWxzIHVtIEVudHNjaHVsZGlndW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2FzIGxlY2tlcmVzIGZ1ZXIgZGllIE1pdHRhZ3NwYXVzZSAoSXNpLCAxOC4gQXByIDIwMDIsIDEzOjIwOjEzKToKfiMhIHJuPU1vcmdvdGggcnQ9MTAxOTEyODczOSByZz13d3cKfiMhIHRpZD0xMDE5MTI4MzExCmdpYnRzIGRhIGF1Y2ggZGFzIGZ1ZXIgZGllIGFuZGVyZSA1MSUgZGVyIGJldm9lbGtlcnVuZz8KaXNpIChtb3Vzc2V3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2FzIGxlY2tlcmVzIGZ1ZXIgZGllIE1pdHRhZ3NwYXVzZSAoR3JpbW1ib3JuLCAxOC4gQXByIDIwMDIsIDEzOjI2OjE1KToKfiMhIHJuPUlzaSBydD0xMDE5MTI4ODEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxOTEyODMxMQpBYmVyIHNpY2hlciBkb2NoOiBodHRwOi8vd3d3LmFlZy1oYXVzZ2VyYWV0ZS5kZS8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3VjaGUgUGFydGl0dXJhbmZhbmcgKFZhcmxhcmlvbiwgMTguIEFwciAyMDAyLCAxMzo1Mzo0MSk6Cn4jISBybj1EYXJpYSBydD0xMDE5MTMwNzYwIHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTAxOTEyOTkwNgpIZXksIGVpbiBCZXN1Y2ggaW4gbWVpbmVyIHNjaG9lbmVuIEhlaW1hdHN0YWR0IGlzdCBkb2NoIGtlaW4gQXVmd2FuZCwgc29uZGVybgpsb2hudCBzaWNoIGltbWVyIHVuZCBqZWRlcnplaXQgOykKClZhcmwqLCBFeC1NdWVuc3RlcmFuZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFN1Y2hlIFBhcnRpdHVyYW5mYW5nIChEYXJpYSwgMTguIEFwciAyMDAyLCAxMzo1NToyMSk6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTAxOTEzMDgyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTkxMjk5MDYKQmVzb25kZXJzIGZ1ZXIgTGV1dGUgYXVzIFBhZGVyYm9ybi4gRGllIFN0ZWlnZXJ1bmcgdm9uIFNjaHdhcnogaXN0IG5pY2h0CnVtc29uc3QgTXVlbnN0ZXIsIFBhZGVyYm9ybiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFN1Y2hlIFBhcnRpdHVyYW5mYW5nIChHcmltbWJvcm4sIDE4LiBBcHIgMjAwMiwgMTM6NTY6MjUpOgp+IyEgcm49RGFyaWEgcnQ9MTAxOTEzMDkyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTkxMjk5MDYKTnVuIGxhZXN0ZXIgbmljaHQsIGluIE11ZW5zdGVyIGhhdHMgaW1tZXIgZ2FueiB2aWVsIGZyaXNjaGVuLCBzYXViZXJlbgpSZWdlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTdWNoZSBQYXJ0aXR1cmFuZmFuZyAoRGFyaWEsIDE4LiBBcHIgMjAwMiwgMTM6NTc6MDUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMTkxMzA5ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE5MTI5OTA2CkljaCB3aWxsIGphIG5pY2h0IGFuZ2ViZW4sIGFiZXIgaWNoIGdsYXViZSwgd2lyIGhhYmVuIG1laHIgZGF2b24uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTdWNoZSBQYXJ0aXR1cmFuZmFuZyAoRWxiZXJldCwgMTguIEFwciAyMDAyLCAxMzo1Nzo0MSk6Cn4jISBybj1EYXJpYSBydD0xMDE5MTMxMDI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxOTEyOTkwNgp3aXIgaGFiZW4gbm9jaCBtZWhyIGhpZXIgOikKCmdhbnogYmVzdGltbXQsIGZyYWcgSHVtbmkgCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU3VjaGUgUGFydGl0dXJhbmZhbmcgKE1hcmN1cywgMTguIEFwciAyMDAyLCAxMzo1ODoxNSk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMTkxMzEwNjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE5MTI5OTA2CkhtcGYsIGJlaSBHb29nbGUgZmluZGVuIHNpY2ggbnVyIEFuYmlldGVyIHZvbiBCdWVjaGVybi4gU2V1ZnouCgpDaWFvLCBNYXJjdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTdWNoZSBQYXJ0aXR1cmFuZmFuZyAoSXNpLCAxOC4gQXByIDIwMDIsIDEzOjU4OjE2KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAxOTEzMTA2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTkxMjk5MDYKZGFmdWVyIGdpYnRzIGhpZXIgbWVociBOZWJlbC4KaXNpIChib2RlbnNlZXdlcmZlbmQpClAuUy4gZXJiYXJtIHNpY2ggZG9jaCBlaW5lciB1bmQgc2NhbiBpaHIgZGllIFBhcnRpdHVyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTdWNoZSBQYXJ0aXR1cmFuZmFuZyAoQXBvbGxvbmlhLCAxOC4gQXByIDIwMDIsIDE2OjA2OjAzKToKfiMhIHJuPVRyb3kgcnQ9MTAxOTEzODY4MyByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwMTkxMjk5MDYKRGVidWcgbGllYmVyIGRpZSBRdWVzdCwgZGEgaGFiZW4gd2lyIGFsbGUgd2FzIHZvbiA7bykKCkFwbyoKZGVyZW4gMnRpZXMgZGEgaW1tZXIgc3RlcmJlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV0ZGlnZXN0IChHcmltbWJvcm4sIDE5LiBBcHIgMjAwMiwgMDE6NTY6MTkpOgpNZXNzYWdlLUlEOiA8c2xybmFicjg0cS5oZGMuYmVybmRAZnJvZG8uZ2Ftcy5jby5hdD4gCkZyb206IGJlcm5kQGZyb2RvLmdhbXMuY28uYXQgKEJlcm5kIFBldHJvdml0c2NoKSAKTmV3c2dyb3VwczogZGUuY29tcC5vcy51bml4LmxpbnV4Lm1pc2MgClN1YmplY3Q6IFJlOiBTZXJ2ZXIgbWl0IExpbnV4IG1vZWdsaWNoc3Qgc3RhcmsgYXVzbGFzdGVuIAogClNlYmFzdGlhbiBIZXVlciA8c2ViQGJlbGFudXIuZGU+IHdyb3RlOiAKPmljaCBtb2VjaHRlIG1laHJlcmUgV2ViLSB1bmQgRS1NYWlsIFNlcnZlciB1bnRlciBMaW51eCBlaW5lbSBtb2VnbGljaHN0ICAKPiBncm9zc2VuIEJlbGFzdHVuZ3N0ZXN0IHVudGVyemllaGVuLCB3aWNodGlnIHNpbmQgaGllcmJlaSBTcGVpY2hlciwgIAo+IENQVSB1bmQgSEREIApbLi4uXSAKPmhhdCBkYSBqZW1hbmQgbmUgSWRlZSB3aWUgaWNoIGRpZSBLaXN0ZW4gYW0gQmVzdGVuIHN0cmVzc2VuIGthbm4/IAogClN0ZWxsIE1QMyAob2RlciBuZXR0ZSBCaWxkY2hlbikgYXVmIGRlbiBXZWJzZXJ2ZXIgdW5kIGFrdGl2aWVyIApNYWlscmVsYXlpbmcgYmVpbSBNYWlsc2VydmVyLiAKIAogICAgICAgIEJlcm5kIAoKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRWluIG5ldWVyIFdlaXNlci4uLi4gKFdhcmdvbiwgMjAuIEFwciAyMDAyLCAxNDozMTo1NCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAxOTAzOTI4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMTg4OTg2MjQKW2VdIHdpZSBFTSBpLiBSLgogIEVNaVIgV2FyZ29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmbGVpc3NpZ2UgTWFnaWVyLi4uIChXaWxsb3csIDIwLiBBcHIgMjAwMiwgMTU6MDc6MDIpOgpobW1tLi4uIGlyZ2VuZHdpZSBrb21pc2NoIDstKQpEdXN0eS4uLi4uLi4uLi5JLm0gSGlydWRvLi4uLi4uLi4uSi5tIE5pYmVsLi4uLi4uLi4uLkoubSBHcmltbWJvcm4uLi4uLi5Jd20KTWFyY3VzLi4uLi4uLi4uai5tIFNuaXBlci4uLi4uLi4uLmouTSBCYW1idWxrby4uLi4uLi5KLk0gVHdpbmdpLi4uLi4uLi4uSS5NCldpbGxvdy4uLi4uLi4uLi53TSBNdXBmZWwuLi4uLi4uLi5qd00gKEtvYmF5YXNoaS4uLikuSi5NIEJhbWJpLi4uLi4uLi4uLmkuUgpXYXJnb24uLi4uLi4uLi5Jd1cgVmFuaW9uLi4uLi4uLi4uSXdXIEtpcmsuLi4uLi4uLi4uLkouVwpEYXMgV2VpZGVybCAobWFsIG5pY2h0IGlkbGUuLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW1hem9uIENEIC8gRFZELUd1dHNjaGVpbiAoTXVwZmVsLCAyMS4gQXByIDIwMDIsIDE0OjI0OjU5KToKfiMhIHJuPVJvbmRhIHJ0PTEwMTkzNDU5NTggcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMDE5MzQ1OTU4CkhtLi4uIGRhcyBCQiBLZW5uemVpY2hlbiBicmluZ3QgRGlyIHp1c2FldHpsaWNoIGVpbiBwYWFyIFRyb3BmZW4gQmx1dD8Kc293YXMuLi4gOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp6aXRhdCB2b24gZXBwaSAoQnJvdG5hZWwsIDIxLiBBcHIgMjAwMiwgMTc6MzM6MDYpOgpFcHBpIHNhZ3Q6IEthZW1wZmVyIGJyYXVjaGVuIHVuYmVkaW5ndCBub2NoIGVpbmVuIFNjaGxhZywgd29taXQgc2llIFNjaGFkZW4KbWFjaGVuLgoKc29zby4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHppdGF0IHZvbiBlcHBpIChQaXRmYWxsLCAyMS4gQXByIDIwMDIsIDE3OjMzOjM2KToKfiMhIHJuPUJyb3RuYWVsIHJ0PTEwMTk0MDMxODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE5NDAzMTg2Cip3aXJiZWwgbmFjaCBvc3RlbioKa2FtcGZzcHJ1bmcgc29sbHRlIHNjaGFkZW4gbWFjaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdGFya2VyIEF1ZnRyaXR0ISAoR3J1bXBmLCAyMS4gQXByIDIwMDIsIDIzOjMxOjQwKToKUGljaHUgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuClBpY2h1ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCltNb2VyZGVyOkdlaXN0IGVpbmVzIEdhcmRld2FlY2h0ZXJzXSBBbHNvIFBpY2h1ISBLb21tc3QgaGllciByZWluLCBoYXVzdCBtaWNoCltNb2VyZGVyOkdlaXN0IGVpbmVzIEdhcmRld2FlY2h0ZXJzXSB1bSB1bmQgdHVzdCBkYW5uIHNvLCBhbHMgc2VpIG5pY2h0cwpbTW9lcmRlcjpHZWlzdCBlaW5lcyBHYXJkZXdhZWNodGVyc10gZ2V3ZXNlbiAuLi4KRGVpbiBIZXJ6IHNjaGxhZWd0IGF1ZiBlaW5tYWwgc2NobmVsbGVyLCBkZW5uIFBpY2h1IGhhdCBnZXJhZGUgZGFzCk1vcmdlbkdyYXVlbiBiZXRyZXRlbiEKCiBEZW0gaGFiZSBpY2ggbmljaHRzIG1laHIgaGluenV6dWZ1ZWdlbiwgbmF0dWVybGljaCB1bmdlc2Nobml0dGVuLi4uCkdydW1wZiBncnVtcGZ0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2VobS4uLiAoVmFybGFyaW9uLCAyMi4gQXByIDIwMDIsIDAxOjE4OjI2KToKRGVpbiBGcmV1bmQgUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiBzbyBiZXR0emVpdApEZWluIEZyZXVuZCBQaXRmYWxsIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4KRGVpbiBGcmV1bmQgUGl0ZmFsbCB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4KUm9uZGEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiByaW5nZSAoSXNpLCAyMi4gQXByIDIwMDIsIDE0OjAwOjAxKToKfiMhIHJuPUFyayBydD0xMDE5NDc2NzY1IHJnPXB1aXoKfiMhIHRpZD0xMDE5MjMxODc0CnphZWhsIGxpZWJlciBGZWhsZXIgOykKaXNpIChtb3Vzc2V3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR3JvZXNzZW4gKEFub3JpcywgMjIuIEFwciAyMDAyLCAxNTozNzowMSk6CkJlbGllYnQgaXN0IGJlaSBkZXIgTW5uZXJ3ZWx0CmVpbiBzY2huZXIgQnVzZW4sIGRlciBnZWZsbHQsCmRlciB1bnNyZSBGcmF1ZW4gaGVycmxpY2ggemllcnQsCnVuZCBpbW1lciB3aWVkZXIgbmV1IHZlcmZ8aHJ0LgoKRGVuIFJlaXplbiwgZGVuZW4gd2lyIGVybGllZ2VuLApzb2JhbGQgd2lyIHNpZSB6dSBmYXNzZW4ga3JpZWdlbiwKc29sbCBkaWVzIEdlZGljaHQgZ2V3aWRtZXQgc2VpbiwKZ2FueiBnbGVpY2gsIG9iIGRpZXNlIGdyb3NlaW4sLCBvYiBrbGVpbi4KCldpZSBsYXVuaXNjaCB6ZWlndCBzaWNoIGRpZSBOYXR1ciwKd2VubiBzaWUgZ2VzdGFsdGV0IGRpZSBGaWd1cjoKRGEgLSBsRmlndXI6dCBzaWUgdG9sbGUgRm9ybWVuIHdpcHBlbiwKZG9ydCAtIHNpZWh0IG1hbiBuaWNodHMsIHdpZSBIYXV0IHVuZCBSaXBwZW4uCgpXZWlscyB1bnRlcnNjaGllZGxpY2ggZ3JvUmlwcGVuLiBnZWZvcm10LApkcnVtIGlzdCBhdWNoIGRlciBCSCBnZW5vcm10OgpWb24gMS0xMiBnYW56IGt1cnogdW5kIHNjaGxpY2h0CnNvIHN0ZWlnZW4gR3JzY2hsaWNodGUgdW5kIEdld2ljaHQuCgpHYW56IHVuZ2VlaWduZXQgaXN0IHp1bSBTY2htdXNlbgpkaWUgR3JTY2htdXNlbmUgMSBkZXIgTWluaS1CdXNlbi4KS2VpbiBXdW5kZXIsIGRhc3Mgc28gc2NobmVsbCBlcm18ZGV0LAp3ZXIgc28gZWluIGZsYWNoZXMgV2VpYiBiZWh8dGV0LgoKQmVzY2hlaWRlbiBpc3QgYXVjaCBkYXMgVmVyZ258Z2VuLAppbiBCdXNlbmdyVmVyZ258Z2VuLGUgMiB6dSBsaWVnZW4uCkltbWVyaGluIGlzdCB3YXMgenUgZmluZGVuLAptYW4gd2VpZmluZGVuLCwgd2FzIHZvcm5lIGlzdCB1bmQgaGludGVuLgoKQmVpIEdyaGludGVuLmUgMyB3aXJkcyBzY2hvbiBlcnRyZ2xpY2gsCmRhIGhhdCBtYW4gd2FzLCBkYSB3aXJkcyBiZXdlZ2xpY2guClVuZCB3ZW5uIGRhbm4gZWluIEJpa2luaSBkaWVzIHVtaHxsbHQsCmVyZ2lidCBzaWNoIHNjaG9uIGVpbiByZWl6ZW5kIEJpbGQuCgpCZWkgR3JCaWxkLmUgNCB1bmQgc2NobGFua2VuIEh8ZnRlbiwKa2FubiBkaWNoIGVpbiBXZWliIHNlaHIgc2NobmVsbCB2ZXJnaWZ0ZW4uCkR1IHphcHBlbHN0IG1pdCB2ZXJ3aXJydGVtIFNpbm5lCndpZSBlaW4gSW5zZWt0IGltIE5ldHogZGVyIFNwaW5uZS4KCldlbGNoIFdlaWIgd2VpU3Bpbm5lLiBuaWNodCB1bSBpaHJlIFRyfG1wZmUsCnN0ZWh0IGltIEJIIGJlaSBpaHIgZGllIGZ8bmZlLgpEYSBiZWJ0IHZvciBMdXN0IGRpZSBNbm5lcmhhbmQsCnNvIGVpbiBQcmFjaHRzdHxjayBobHQgdW1zcGFubnQuCgpFaW4gTWFubiwgZGVyIG5pZSBpbiBzZWluZW0gTGViZW4KZHVyZnQnIGRpZSBHckxlYmVuZSA2IGJld2VnZW4sCmRlciB3dXJkIHZvbSBTY2hpY2tzYWwgYXJnIGJldHJvZ2VuLAp1bSBkZW4gZ2luZydzIEdsfGNrIGltIGdyb2JldHJvZ2VuLGVuIEJvZ2VuLgoKRWluIHNjaG5lciBCdXNlbiBHckJvZ2VuLmUgNwpnaWJ0IEFuc3RvNyB6dSBiZXNvbmRlcmVuIFRyaWViZW4sCmphZ3QgTW5uZXIgaW4gZGllIGt8aG5zdGVuIFRydW1lCndpZSBBZmZlbiBpbiBkaWUgaGNoc3RlbiBCdW1lLgoKVW5iZXNjaHJlaWJsaWNoIGlzdCBkaWUgUHJhY2h0CmJlaSBlaW5lbSBCdXNlbiBHclByYWNodGUgOC4KV2VyIHNvbGNoZW4gV2VpYmVzIEd1bnN0IGVycnVuZ2VuCmRlbSBpc3QgZGVyIGdyb2VycnVuZ2VuZSBXdXJmIGdlbHVuZ2VuLgoKRGllIEdyZ2VsdW5nZW4uZSA5IHRhdWd0IG51ciBmfHJzIEJldHQKZnxyIGRlbiwgZGVyIEt1bW1lciBoYXQgaXN0cyBuZXR0CkhpZXIga2FubiBlciBzZWluIEdlc2ljaHQgdmVyZ3JhYmVuCnVuZCBzdHVuZGVubGFuZyBkZXIgV2VsdCBlbnRzYWdlbi4KCkJlaSBHcmVudHNhZ2VuLmUgMTAgZGEgd2lyZHMgYmVzY2h3ZXJsaWNoCmF1Y2ggaXN0IGVzIG5pY2h0IG1laHIgdW5nZWZocmxpY2gsCmJldWd0IHNpY2ggbmUgRnJhdSBtaXQgc29sY2hlbSBCdXNlbgp8YmVyIGRlbiBNYW5uIGJlcmVpdCB6dW0gU2NobXVzZW4uCgpEYXMgU3BpZWwgbWl0IEhrY2hlbiB1bmQgbWl0IFZzZW4Kc28gc2NobiBlcyBiZWkgR3JWc2VuZSA2IGdld2VzZW4sCmx1c3R2b2xsIHNwaWVsZW5kIHZvbGxlciBGZXVlciwKaGllciB3aXJkcyB6dW0gZWNodGVuIEFiZW50ZXVlci4KCklzdCdzIGxldHp0ZSBIa2NoZW4gZW5kbGljaCBhdWYsCmRhIG5pbW10IGRhcyBTY2hpY2tzYWwgc2VpbmVuIExhdWYuCkF1cyBkZW0gdm9sbGVuLCBwcmFsbGVuIE1pZWRlcgpzdHxyenQgZXMgd2llIExhd2luZW4gbmllZGVyLgoKVW1ofGxsdCBkZXMgTWFubmVzIEhhdXB0IGltIG51LApkZWNrdCBOYXNlLCBBdWdlbiwgT2hyZW4genUuClNvIGZ8aGx0IGVyIHNpY2ggZ2FueiBzY2huZWxsIGJlZHJvaHQKdm9tIHBsdHpsaWNoZW4gRXJzdGlja3VuZ3N0b2QuCgpEb2NoIGtlaW5lciBpc3QgYmlzbGFuZyB2ZXJkb3JiZW4KdW5kIHVudGVyIHNvIHZpZWwgRmxlaXNjaCBnZXN0b3JiZW4uCkplZGVtIGlzdCBlcyBub2NoIGdlZ2x8Y2t0LApkYXNzIGVyIGRhcyBMaWNodCBkZXIgV2VsdCBlcmJsaWNrdC4KCk1pdCBHcmVyYmxpY2t0LmUgMTEgYmVmcmVpdCB2b24gSHxsbGVuCmxIfGxsZW50IHNpY2ggJ25lIGdhbnplIEJldHRzdGFkdCBmfGxsZW4tCldpZSBIZWZldGVpZyBiZWkgSGl0emV3ZWxsZW4Kc28gc2llaHQgbWFubidzIGluIGRpZSBLaXNzZW4gcXVlbGxlbi4KCkJla3xtbWVydCBzaWVodCBkZXIgTWFubiBoaWVyIGVpbgpEYXNzIHNlaW5lIEhuZGUgdmllbCB6dSBrbGVpbiwKenUgaGluZGVybiBkaWUgYmVmcmVpdGVuIFJpZXNlbgpuaWNodCB8YmVyIGRlbiBCZXR0cmFuZCB3ZWd6dWZsaWVSaWVzZW5lbi4KCkJlaSAxMiBkYSB3aXJkIGVzIGtvbG9zc2FsLXVsdHJhLCBzdXBlci1tYXhpbWFsLgpEb2NoIGhydCBpaHIgQ2FtcGluZyBGcmV1bmRlIGhlcjoKSXN0IGRpZXNlcyBEaW5nIGF1Y2ggc3VwZXJzY2h3ZXIsCnNwYXJ0IG1hbiBpbSBVcmxhdWIgZG9jaCB2aWVsIEdlbGQKZGVubiBkZXIgQkggZXJzZXR6dCBkYXMgWmVsdC4KCkRpZSBHclplbHQuZSAxMyBnaWJ0IGVzIG5pY2h0LSwKZHJ1bSBlbmRldCBoaWVyIGF1Y2ggZGFzIEdlZGljaHQKbWl0IGVpbmVtIFdvcnQgYW4gZXVjaCBpaHIgRnJhdWVuLAppaHIgd2lzc3Qgd29yYXVmIGRpZSBNbm5lciBzY2hhdWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdyb2Vzc2VuIChDYXR3ZWF6bGUsIDIyLiBBcHIgMjAwMiwgMTU6NDQ6NTMpOgp+IyEgcm49QW5vcmlzIHJ0PTEwMTk0ODI2MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE5NDgyNjIxClVuZCBqZXR6dCBub2NoIG1hbCBsZXNlcmxpY2ggLi4uLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdyb2Vzc2VuIChBbm9yaXMsIDIyLiBBcHIgMjAwMiwgMTU6NDk6MTUpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMTk0ODMwOTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE5NDgyNjIxCmh0dHA6Ly93d3cucGVycnNjaHkuZGUvb2xkL2J1c2VuLmh0bWwKCkJhdXQgVW1sYXV0ZSBlaW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdyb2Vzc2VuIChDdWNodWxsaW4sIDIyLiBBcHIgMjAwMiwgMTY6MzM6MDApOgp+IyEgcm49QW5vcmlzIHJ0PTEwMTk0ODMzNTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE5NDgyNjIxCkRhcyAib2xkIiB0cmlmZnQgZXMgd2lya2xpY2guIEF1c3NlcmRlbSBmZWhsdCBkaWUgbGV0enRlIFN0cm9waGUuIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR3JvZXNzZW4gKE11cGZlbCwgMjIuIEFwciAyMDAyLCAxNzo0ODo1Myk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAxOTQ4NTk4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTk0ODI2MjEKRGFzIGdpYnRzIGF1Y2ggYWxzIFdvcmQtRG9rdW1lbnQgLSBtaXQgQmlsZGVybiA7KQoKLW11cGZlbC0gKGR1ZWRlbGR1ZXdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHcm9lc3NlbiAoTXVwZmVsLCAyMi4gQXByIDIwMDIsIDE3OjQ5OjQyKToKfiMhIHJuPU11cGZlbCBydD0xMDE5NDkwNTMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxOTQ4MjYyMQp1bmQgZ2xlaWNoIGRyYXVmOgoKJCBBbm9yaXMgdGVpbHQgRGlyIG1pdDogd28/IDopCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV3Ymllcy4uLiAoSXNpLCAyMi4gQXByIDIwMDIsIDIzOjQ2OjIwKToKWFhYIGZyYWd0IERpY2ggOiBoaWxmdCBFaW5lIFNwcnVjaHJvbGxlIChLcmFua2hlaXRzaGVpbHNwcnVjaCkuCmxlc2VuIGF1Y2ggYmVpIEJsaW5kaGVpdD8KaXNpIChicmlsbGV3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ld2JpZXMuLi4gKEdsb2luc29uLCAyMi4gQXByIDIwMDIsIDIzOjU2OjU4KToKfiMhIHJuPUlzaSBydD0xMDE5NTExOTgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxOTUxMTk4MApLbGFyZSBBbnR3b3J0OiBKYS4KTmFlY2hzdGUgRnJhZ2U/CgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmFldHNlbCAoQ3VjaHVsbGluLCAyMy4gQXByIDIwMDIsIDE1OjA1OjUwKToKfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDE5NTY3MTQ0IG9nPXB1aXoKfiMhIHJuPUJyb3RuYWVsIHJ0PTEwMTk1NjcwODYgcmc9cHVpegp+IyEgdGlkPTEwMTk1NjcwODYKV2VyIGVyIGhvZmZ0LCBpcmdlbmR3YW5uIGRvY2ggbm9jaCAuLi4gWzFdIHZlcm5hc2NoZW4genUgZHVlcmZlbi4KClsxXSBITS1TcGllbGVyIHdpc3Nlbiwgd2VuIHNpZSBlaW5mdWVnZW4gbXVlc3Nlbi4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJhZXRzZWwgKEN1Y2h1bGxpbiwgMjMuIEFwciAyMDAyLCAxNTowNzo1Nyk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAxOTU2NzE1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMTk1NjcwODYKTmFjaHRyYWc6IEdpbHQgb2ZmZW5iYXIgbmljaHQgZnVlciAqYWxsZSogSE0tU3BpZWxlci4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFJhZXRzZWwgKEh1bW5pLCAyMy4gQXByIDIwMDIsIDE1OjA5OjI4KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDE5NTY3Mjc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxOTU2NzA4NgpBbHNvIGRpZSB2aWVsIGludGVyZXNzYW50ZXJlIEZyYWdlIGxhdXRldCBkYSBkb2NoIGVoZXIsIHdpZSBlciwgd2VubiBlcgp3aXJrbGljaCBzbyB2ZXJmcmVzc2VuIGlzdCwgc28gYXVzc2llaHQuLi4KCkh1bW5pLCBzZWl0IGt1cnplbSBsYXV0IFdITy1NYXNzIG51ciBub2NoIHVlYmVyZ2V3aWNodGlnIHVuZCBuaWNodCBtZWhyCmZldHRsZWliaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBSYWV0c2VsIChNb250YW51cywgMjMuIEFwciAyMDAyLCAxNzozMTozMik6Cn4jISBybj1IdW1uaSBydD0xMDE5NTY3MzY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxOTU2NzA4NgpXZXIgb2RlciB3YXMgaXN0IGJpdHRlc2Nob2VuICJITSI/IElzdCBkYXMgbmljaHQgc28gbmUgc2Nod2VkaXNjaGUKQmVrbGVpZHVuZ3NrZXR0ZT8gT2RlciBzdGVodCBkYXMgZnVlciBISWxmc21hZ2llcj8KQmVpIFZlcmZyZXNzZW5oZWl0IHd1ZXJkZSBpY2ggamEgc293aWVzbyBlcnN0bWFsIGdhbnogdHJvY2tlbiBhdWYgInNjaHdhbmdlciIKdGlwcGVuLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBMaXN0ZSB2b24gZ2VzcGVycnRlbiBLbmVpcGVuIChab29rLCAyNS4gQXByIDIwMDIsIDE3OjI3OjA4KToKfiMhIHJuPVZhcmRpb24gcnQ9MTAxOTc0ODE5MSByZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHRpZD0xMDE5NTk4Mjk0Ck1hbiBrYW5uIExhZWRlbiBtaXQgRmFlc3Nlcm4gYmVsaWVmZXJuPyAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogTGlzdGUgdm9uIGdlc3BlcnJ0ZW4gS25laXBlbiAoQm9pbmcsIDI1LiBBcHIgMjAwMiwgMTc6Mjc6NTEpOgp+IyEgcm49Wm9vayBydD0xMDE5NzQ4NDI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxOTU5ODI5NApNYW5jaGUgLi4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBMaXN0ZSB2b24gZ2VzcGVycnRlbiBLbmVpcGVuIChLZXksIDI1LiBBcHIgMjAwMiwgMTc6MzE6MzkpOgp+IyEgcm49Qm9pbmcgcnQ9MTAxOTc0ODQ3MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTk1OTgyOTQKU3BpZWxlcmhpbGZlPyA9OykKClVuZCB3YXMga29uc3RydWt0aXZlcyBkYW1pdHMgbmljaHQgZ2Vsb2VzY2h0IHdpcmQ6IFBsYXR6IE9ya3RvZXRlciEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1cnpnZXNjaGljaHRlIChBbm9yaXMsIDI2LiBBcHIgMjAwMiwgMTY6NDY6MTIpOgpEbmlzY2hlciBQYXRpZW50IGZ1cnp0IGtyZnRpZyB1bmQgdmVyYnJlbm50IHNpY2ggc2VpbmVuIFBlbmlzPQoyMDAyLTA0LTE5IDA0OjUyIChOZXcgWW9yaykKClp8cmljaCAoYXdwIDE3KSAtIEVpbiB1bmdsYXVibGljaGVzIE1pc3NnZXNjaGljayBpc3QgZWluZW0KUGF0aWVudGVuIGluIERuZW1hcmsgd2lkZXJmYWhyZW4sIGRlbSBkaWUgQ2hpcnVyZ2VuIGF1ZiBzZWluZW0KSGludGVydGVpbCB1bnRlciBOYXJrb3NlIGVpbmVuIExlYmVyZmxlY2sgZW50ZmVybmVuIHdvbGx0ZW4uCldocmVuZCBkZXIgT3BlcmF0aW9uIG1pdCBlaW5lbSBlbGVrdHJpc2NoZW4gTWVzc2VyIGxpZXNzIGRlcgozMC1qaHJpZ2UgRG5lIGVpbmVuIEZ1cnogZmFocmVuLiBFaW4gRnVua2UgZGVzCk9wZXJhdGlvbnNnZXJ0ZXMgZW50enxuZGV0ZSBkYXMgR2FzIGF1cyBkZW0gVmVyZGF1dW5nc3RyYWt0LAp3b3JhdWYgc2VpbiBrdXJ6IHp1dm9yIG1pdCBBbGtvaG9sIGRlc2luZml6aWVydGVyIFBlbmlzIGluCkZsYW1tZW4gc3RhbmQuCgoKPDxhbHMgaWNoIGF1cyBkZXIgTmFya29zZSBhdWZ3YWNodGUsIGJyYW5udGVuIG1laW4gUGVuaXMgdW5kCm1laW4gSG9kZW5zYWNrIHdpZSBkaWUgSGxsZT4+LCB6aXRpZXJ0IDw8YW5hbm92YT4+IGRlbgpVbmdsfGNrc3JhYmVuLiBEaWVzZXIgfGJlcmxlZ3Qgc2ljaCBqZXR6dCwgZGFzIEtyYW5rZW5oYXVzIGF1ZgpTY2htZXJ6ZW5zZ2VsZCB1bmQgU2NoYWRlbmVyc2F0eiB3ZWdlbiBlbnRnYW5nZW5lbSBMb2huIHVuZApmZWhsZW5kZW0gU2V4IG1pdCBkZXIgR2F0dGluIHp1IHZlcmtsYWdlbi4gICAKCgpEYXMgS3JhbmtlbmhhdXMgc2llaHQgZGFzIGFuZGVycyB1bmQgc3RlbGx0IHNpY2ggYXVmIGRlbgpTdGFuZHB1bmt0LCBkYXNzIGVzIHNpY2ggc2NobGljaHQgdW0gZWluZW4gdW5nbHxja2xpY2hlbiBVbmZhbGwKaGFuZGVsdC4gRGVyIEFyenQsIEpvcm4gS3Jpc3RlbnNlbjogPDxOaWVtYW5kIHpvZyBkaWUKTWdsaWNoa2VpdCBpbiBCZXRyYWNodCwgZGFzcyBkZXIgUGF0aWVudCB3aHJlbmQgZGVyIE9wZXJhdGlvbgpXaW5kZSBibHN0LCBnZXNjaHdlaWdlIGRlbm4sIGRhc3MgZGFkdXJjaCBzZWluIFBlbmlzIEZldWVyCmZuZ3QuPj4KCi0gQW5vcmlzIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVyemdlc2NoaWNodGUgKEdyaW1tYm9ybiwgMjYuIEFwciAyMDAyLCAxNjo1NDowOSk6Cn4jISBybj1Bbm9yaXMgcnQ9MTAxOTgzMjM3MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTk4MzIzNzIKRHUgbGVybnN0IGRhcyBpbiBkaWVzZW0gTGViZW4gbmljaHQgbWVociBtaXQgZGVuIFVtbGF1dGVuLCBuZWluPyBOYWphLAp2aWVsbGVpY2h0IGRhbm4gaW0gbmFlY2hzdGVuLi4uCgpHZEEgbWFjaHQgc2VpbmUgWmFwLU8tTWF0aWMgYmVyZWl0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZ1cnpnZXNjaGljaHRlIChDcm9mdCwgMjYuIEFwciAyMDAyLCAxNjo1NjozNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxOTgzMjg0OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTk4MzIzNzIKQmF1IGhhbHQgbmVuIEZpbHRlciBpbiBkaWUgTVBBIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRnVyemdlc2NoaWNodGUgKEdyaW1tYm9ybiwgMjYuIEFwciAyMDAyLCAxNjo1NzoyNSk6Cn4jISBybj1Dcm9mdCBydD0xMDE5ODMyOTk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxOTgzMjM3MgpEdSBtZWluc3Qgc293YXMgd2llICJpZ25vcmllcmUgYW5vcmlzLm1wYSI/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZ1cnpnZXNjaGljaHRlIChDcm9mdCwgMjYuIEFwciAyMDAyLCAxNzoxOTo1MCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAxOTgzMzA0NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTk4MzIzNzIKRGFzIG11ZXNzdGUgbWFuIG5pY2h0IG1laHIgaW4gZGllIE1QQSBlaW5iYXVlbi4gIEljaCBkYWNodGUgZWhlciBhbiBldHdhcwpkYXMgZGllIFVtbGF1dGUgYXV0b21hdGlzY2gga29udmVydGllcnQgdW5kIGRpciBzbyBkZXIgQW5ibGljayBlcnNwYXJ0CmJsZWlidC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCipraWNoZXIqIChMZXlsYXRoLCAyNi4gQXByIDIwMDIsIDIyOjEwOjMyKToKICAuLi4ubm9ybWFsL0ZldWVyaGFuZC4uLiBEdS4uLi4uLi4uLi4uIDogRHJha29uaWVyLi4uLiAqKioqKioqKiAtPgpTY2htZXR0ZXJuCiAgLi4uLm5vcm1hbC9GZXVlcmhhbmQuLi4gRHUuLi4uLi4uLi4uLiA6IERyYWtvbmllci4uLi4gKioqKioqKiogLT4gS3JhY2hlbgpEZXIgZHVlcnJlIERyYWtvbmllciBmYWVsbHQgdG90IHp1IEJvZGVuLgpBbWFuZGEgendpbmtlcnQuCkFtYW5kYSBzYWd0OiBEaWUgTWFlbm5lciBzaW5kIGF1Y2ggbmljaHQgbWVociBkYXMsIHdhcyBzaWUgbWFsIHdhcmVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLZWtzZSAgKEVsYmVyZXQsIDI3LiBBcHIgMjAwMiwgMTI6NTI6MDYpOgpFbGJlcmV0IHJ1ZnQ6IGljaCB3aWxsIEtla3NlIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEcm9sbGkgaXMgd2llZGVyIGRhIDopIChPbGxpLCAyNy4gQXByIDIwMDIsIDE0OjIzOjA3KToKRWJlbjoKCkR1IG9lZmZuZXN0IGRpZSBUcnVoZS4KRHUgbmltbXN0IGRlbiBLYXV0c2NodWtoYW1tZXIuCkR1IHNjaGxpZXNzdCBkaWUgVHJ1aGUuCnh4eCBzYWd0OiB3YWcgZXMgbmljaHQKCk9sbGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBOZXVlcy4uLiAoR3JpbW1ib3JuLCAyOC4gQXByIDIwMDIsIDA5OjIyOjQ4KToKfiMhIG9uPUZlbmRlciBvdD0xMDE5OTU5MDk0IG9nPWFsbGdlbWVpbmVzCi4uLmluIFB1aXouCgpTY2hhdXQgbWFsIGJpdHRlIG5hY2ggOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogTGlzdGUgdm9uIGdlc3BlcnJ0ZW4gS25laXBlbiAoWm9vaywgMjkuIEFwciAyMDAyLCAxMzozNzoyOSk6Cn4jISBvbj1ab29rIG90PTEwMjAwODAwMzggb2c9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISBybj1HbG9pbnNvbiBydD0xMDIwMDc5Nzk3IHJnPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgdGlkPTEwMTk1OTgyOTQKSWNoIGhhZXR0IGRhIG5vY2ggbmVuIFRpcHA6IHd3d3cucHJvZ3Jlc3NxdWVzdC5jb20KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogTGlzdGUgdm9uIGdlc3BlcnJ0ZW4gS25laXBlbiAoR2xvaW5zb24sIDI5LiBBcHIgMjAwMiwgMTM6Mzc6NTkpOgp+IyEgb249R2xvaW5zb24gb3Q9MTAyMDA4MDE2OCBvZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHJuPVpvb2sgcnQ9MTAyMDA4MDAzOCByZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHRpZD0xMDE5NTk4Mjk0CkRhIHNvbGx0ZW4gd2lyIGF1Y2ggbWFsIExpc3RlbiBlcnN0ZWxsZW4gbGFzc2VuIC0gZWluaWdlIGRlciBOUENzIGJyaW5nZW4ga2F1bQpHZWxkIHVuZCBrb3N0ZW4gZXdpZyBaZWl0IHNpZSB6dSBlcmxlZ2VuLiBXaWUgd2lsbCBtYW4gZGVubiB6dSBlaW5lcgpvcmRlbnRsaWNoZW4gV2FmZmUga29tbWVuIHdlbm4gbWFuIHNpY2ggbWl0IGRlbmVuIGltbWVyIGFiZ2ViZW4gbXVzcy4gR2VyYWRlCmRpZSBwYXNzaWVyZW5kZW4gTlBDcyBzaW5kIGltbWVyIGJldHRlbGFybS4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBMaXN0ZSB2b24gZ2VzcGVycnRlbiBLbmVpcGVuIChab29rLCAyOS4gQXByIDIwMDIsIDEzOjU0OjQ3KToKfiMhIG9uPVpvb2sgb3Q9MTAyMDA4MTI4MSBvZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHJuPUJpZWxlZmVsZCBydD0xMDIwMDgxMjAyIHJnPWdpbGRlbi5iaWVyc2NodWV0dGxlcgp+IyEgdGlkPTEwMTk1OTgyOTQKWm9vayB2ZXJsZWlodCBCaWVsZWZlbGQgZGVuICJHZXJoYXJkLUJhc3RhIi1PcmRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVsZmVucGFjayAoUGl0ZmFsbCwgMjkuIEFwciAyMDAyLCAxNDoyMTo0Nyk6CkFuYWNyaW9uIHRlaWx0IERpciBtaXQ6IGljaCBydXRzY2hlIGRhIGltbWVyIHJ1bnRlciAuLiB0cm90eiBHRTI1IDpvKQpEdSB0ZWlsc3QgQW5hY3Jpb24gbWl0OiBoaWhpCkFuYWNyaW9uIHRlaWx0IERpciBtaXQ6IGRhYmVpIG1hZyBpY2ggYmFldW1lIC4uIDtvKQoKa2VpbiBrb21tZW50YXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCaWVyc2NodWV0dGxlciwgS25laXBlbnByb2JsZW0gKENyb2Z0LCAyOS4gQXByIDIwMDIsIDE0OjIzOjAwKToKfiMhIG9uPUNyb2Z0IG90PTEwMjAwODI5NTcgb2c9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCn4jISBybj1LYXRlcmNoZW4gcnQ9MTAyMDA4Mjg4NSByZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHRpZD0xMDIwMDgyODg1CkhhdHRlIGRpZXNlIERpc2t1c3Npb24gbm9jaCBlaW5lbiB0aWVmZXJlbiBTaW5uPyAgSWNoIGhhdHRlIGRhcwpHZWZ1ZWhsIGRhcyBqZW5pZ2xpY2h3ZWxjaGVyIHZvciBlaW5pZ2VuIFJlaGVuIGFiaGFuZGVuIGdla29tbWVuIGlzdCA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBMaXN0ZSB2b24gZ2VzcGVycnRlbiBLbmVpcGVuIChWYXJsYXJpb24sIDI5LiBBcHIgMjAwMiwgMTQ6Mjg6MTUpOgp+IyEgcm49QmFtYmkgcnQ9MTAyMDA4MzE2NCByZz1naWxkZW4uYmllcnNjaHVldHRsZXIKfiMhIHRpZD0xMDE5NTk4Mjk0Ck5laW4sIGZ1ZXJzIHBhc3NpdmUgTXVkZGVuIGJyYXVjaHQgbWFuIFZvbGxzY3JpcHRlLCBkZW5lbiBtYW4gZGFubiBtaXQgbmVyClRhc3NlIEthZmZlZSBvZGVyIG5lciBGbGFzY2hlIEJpZXIgaW4gZGVyIEhhbmQgenVndWNrdC4uLgoKVmFybCosIGVtcGZpZWhsdCBodHRwOi8vd3d3LnByb2dyZXNzcXVlc3QuY29tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogTGlzdGUgdm9uIGdlc3BlcnJ0ZW4gS25laXBlbiAoSHVtbmksIDI5LiBBcHIgMjAwMiwgMTQ6Mjg6MzkpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMjAwODMyOTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE5NTk4Mjk0CkhlLiB3d3cuYmlzdC1kdS1uZXVnaWVyaWcuY29tIGlzdCBkb3duLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBMaXN0ZSB2b24gZ2VzcGVycnRlbiBLbmVpcGVuIChBbmFjcmlvbiwgMjkuIEFwciAyMDAyLCAxODoyNDoxNik6Cn4jISBybj1IdW1uaSBydD0xMDIwMDgzMzE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxOTU5ODI5NApEdSB3ZWlzc3QgbnVyIGRhcyBQVyBuaWNodCA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBMaXN0ZSB2b24gZ2VzcGVycnRlbiBLbmVpcGVuIChNdXBmZWwsIDI5LiBBcHIgMjAwMiwgMjE6NDc6NTcpOgp+IyEgcm49SHVtbmkgcnQ9MTAyMDA4MzMxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTk1OTgyOTQKRGllIEFkcmVzc2UgaXN0IGphIGF1Y2ggImJpc3QtZHUtbmV1Z2llcmlnLmRlIiA7KQoKLW11cGZlbC0KKG9kZXIgd2FycyAub3JnPyBvZGVyIC5uZXQ/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogTGlzdGUgdm9uIGdlc3BlcnJ0ZW4gS25laXBlbiAoTXVwZmVsLCAyOS4gQXByIDIwMDIsIDIxOjQ5OjAzKToKfiMhIHJuPU11cGZlbCBydD0xMDIwMTA5Njc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxOTU5ODI5NApPaCBpY2ggc2VoIGdyYWQgZGFzIGlzdCBuZSBBZHJlc3NlIGluIEZyZWlidXJnLi4uIGRhcyBpc3QgSFVNTkkgISA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOiBMaXN0ZSB2b24gZ2VzcGVycnRlbiBLbmVpcGVuIChWYXJsYXJpb24sIDI5LiBBcHIgMjAwMiwgMjE6NDk6NTcpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMjAxMDk3NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE5NTk4Mjk0Cldhcz8gSHVtbmkgdmVyYnJlaXRldCBLTHMgdW5kIEZQLUxpc3Rlbj8hIERhcyBpc3QgamEuLi4gU3BpZWxlcmhpbGZlIQoKVmFybCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBMaXN0ZSB2b24gZ2VzcGVycnRlbiBLbmVpcGVuIChNdXBmZWwsIDI5LiBBcHIgMjAwMiwgMjE6NTE6MzIpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMjAxMDk3OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE5NTk4Mjk0CkphamEuLi4gc28gZW50c3RlaGVuIGF1cyBlaW4gcGFhciB6dXNhbW1lbmhhbmdsb3NlbiBTYWV0emVuIGdhbnplClRhZXRlcnByb2ZpbGUuLi4gOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogTGlzdGUgdm9uIGdlc3BlcnJ0ZW4gS25laXBlbiAoQW1hcnlsbGlzLCAyOS4gQXByIDIwMDIsIDIxOjUzOjAyKToKfiMhIHJuPU11cGZlbCBydD0xMDIwMTA5NzQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxOTU5ODI5NApXZW5ucyBIdW1uaSB3YWVyZSwgbXVlc3N0ZSBlcyBlaW5lIEJsYWNrbGlzdCBzZWluIDotKQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IExpc3RlIHZvbiBnZXNwZXJydGVuIEtuZWlwZW4gKElzaSwgMjkuIEFwciAyMDAyLCAyMTo1MzozMCk6Cn4jISBybj1NdXBmZWwgcnQ9MTAyMDEwOTg5MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMTk1OTgyOTQKaWNoIHdpbGwgYXVjaCBlaW4gdGFldGVyIHByb2ZpbCA6KAppc2kgKG1vdXNzZXdlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMzogTGlzdGUgdm9uIGdlc3BlcnJ0ZW4gS25laXBlbiAoTXVwZmVsLCAyOS4gQXByIDIwMDIsIDIxOjU0OjM2KToKfiMhIHJuPUlzaSBydD0xMDIwMTEwMDEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAxOTU5ODI5NAoiTm90b3Jpc2NoZSBNb3Vlc3Nld2VyZmVyaW4iID8gOykKCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzQ6IExpc3RlIHZvbiBnZXNwZXJydGVuIEtuZWlwZW4gKEphZGF3aW4sIDI5LiBBcHIgMjAwMiwgMjE6NTc6NDQpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMjAxMTAwNzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE5NTk4Mjk0CkhlZSwgbmljaHQgYXVzd2FuZGVybiEKSmFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzU6IExpc3RlIHZvbiBnZXNwZXJydGVuIEtuZWlwZW4gKEFudGhlYSwgMzAuIEFwciAyMDAyLCAwMDoxODoxMSk6Cn4jISBybj1KYWRhd2luIHJ0PTEwMjAxMTAyNjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDE5NTk4Mjk0Ckh1bW5pIHVuZCBlaW5lIFNlaXRlLCB3byBqZW1hbmQgZWlnZW5lIEZpc2NoZSB2b3JzdGVsbHQ/IERhcyBwYXNzdCBpcmdlbmR3aWUKbmljaHQgc28gcmVjaHQgenVzYW1tZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM2OiBMaXN0ZSB2b24gZ2VzcGVycnRlbiBLbmVpcGVuIChIdW1uaSwgMzAuIEFwciAyMDAyLCAwODowMjoxMCk6Cn4jISBybj1BbnRoZWEgcnQ9MTAyMDExODY5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMTk1OTgyOTQKQWxzbywgRmlzY2hlIGhhYiBpY2ggbmljaHQgYWxzIE1pdGJld29obmVyLiBHQU5aIEJFU1RJTU1UIE5JQ0hULgoKVW5kIGluIGRlciBLSkcgYmluIGljaCBhdWNoIGVoZXIgaW5ha3Rpdi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWluZXN3ZWVwZXIgKEdyaW1tYm9ybiwgMzAuIEFwciAyMDAyLCAwOTowMDozMik6Cn4jISBvbj1Ucm95IG90PTEwMjAxNDc5NDQgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUNhZHJhY2ggcnQ9MTAyMDE0NjU0MiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMjAxNDY1NDIKRGFubiBzb2xsdGVzdCBEdSBtYWwgZGVtIEF1dG9yIGRlciBNYXRoZW1hdGlzY2hlbiBVbnRlcmhhbHR1bmdlbiBpbiBkZXIKU3Bla3RydW0gZGVyIFdpc3NlbnNjaGFmdCBuZSBNYWlsIHNjaGlja2VuLiBEZXIgaGF0IE1pbmVzd2VlcGVyIG5hZW1saWNoCmdlcmFkZSBhbHMgTWl0dGVsIHp1ciBCZXdlaXNmdWVocnVuZyBQPU5QIHZvcmdlc3RlbGx0IChTcGVrdHJ1bSA1LzIwMDIpLgoKVHJveQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNaW5lc3dlZXBlciAoR3JpbW1ib3JuLCAzMC4gQXByIDIwMDIsIDA5OjAwOjMzKToKfiMhIG9uPUNhdHdlYXpsZSBvdD0xMDIwMTQ4NjAzIG9nPWFsbGdlbWVpbmVzCn4jISBybj1Ucm95IHJ0PTEwMjAxNDc5NDQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDIwMTQ2NTQyCkFoamEsIFA9TlAuIApEZW4gVGhyZWFkIGhhdHRlbiB3aXIgYmVzdGltbXQgdWViZXIgZWluIEphaHIgbmljaHQgbWVoci4gCkFiZXIgZWluZSBoZXJ2b3JyYWdlbmRlIEF1c3dhaGwsIG5pY2h0IGRpZXNlcyB1ZWJsaWNoZSAiWmF1YmVyZXIgQWJ3ZXJ0ZW4iLQpvZGVyICJGcmF1ZW4gaW4gZGllIEtsZXJpa2VyZ2lsZGUiLUdlamFtbWVyLiAKCk5hIGRhbm4gd29sbGVuIHdpciBtYWw6CgpXYXMgenVyIEhvZWxsZSBpc3QgUD1OUD8/PwoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNaW5lc3dlZXBlciAoR3JpbW1ib3JuLCAzMC4gQXByIDIwMDIsIDA5OjAwOjM0KToKfiMhIG9uPVpvb2sgb3Q9MTAyMDE0OTk3NyBvZz1hbGxnZW1laW5lcwp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMjAxNDg2MDMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDIwMTQ2NTQyCk1pc3QsIHVuZCBpY2ggaGFiIGdlc3Rlcm4gQWJlbmQgbm9jaCB1ZWJlcmxlZ3QsIG9iIGljaCBkaWUgYWt0dWVsbGUKU3Bla3RydW0tQXVzZ2FiZSBub2NoIGxlc2VuIHNvbGwgb2RlciBuaWNodC4gVW5kIG51IGthbm4gaWNoIG5pY2h0Cm1pdHJlZGVuLCBpY2ggc2NobGllc3MgbWljaCBkYWhlciBDYXR0eSBhbjoKCldhcyBpc3QgUD1OUD8/Pz8/Cgpab29rLiA7KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1pbmVzd2VlcGVyIChHcmltbWJvcm4sIDMwLiBBcHIgMjAwMiwgMDk6MDE6MzEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjAxNTAwMzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwMTQ2NTQyClA9TlAgaXN0IG5hdHVlcmxpY2ggZnVlciBQIHVuZ2xhaWNoIDAgZmFsc2NoLiBEYXMgbGVybnQgbWFuIGRvY2ggc2Nob24gaW4gZGVyCkdydW5kc2NodWxlLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1pbmVzd2VlcGVyIChWYW5pb24sIDMwLiBBcHIgMjAwMiwgMDk6MDQ6MTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjAxNTAwOTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwMTQ2NTQyCkRlaW5lIEF1c3NhZ2UgaXN0IGZ1ZXIgTj0xIGZhbHNjaC4gUHJhZXppZXNlIEF1c3NhZ2VuIGZvcm11bGllcmVuIGxlcm50IG1hbgpvZmZlbnNpY2h0bGljaCBlcnN0IHNwYWV0ZXIgOikKClYqLCBoYXQgZGVuIFNjaGFsayBpbSBOYWNrZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNaW5lc3dlZXBlciAoR3JpbW1ib3JuLCAzMC4gQXByIDIwMDIsIDA5OjA1OjQyKToKfiMhIHJuPVZhbmlvbiBydD0xMDIwMTUwMjU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDE0NjU0MgpOYSBrb21tLCBmdWVyIHZvciAxMCBVaHIgd2FyIGRhcyBkb2NoIHNjaG9ubWFsIG5pY2h0IHNjaGxlY2h0LiBBdXNzZXJkZW0gaXN0CmRpZSBHcnVuZHNjaHVsZSBkb2NoIHNjaG9uIHNvIGxhbmdlIGhlci4uLgpBbHNvIGVpbmlnZW4gd2lyIHVucyBkcmF1ZjogV2VubiBQIG5pY2h0IG51bGwgaXN0LCBtdXNzIE4gZWlucyBzZWluLiBVbmQgd2FzCmhhdCBkYXMgamV0enQgbWl0IFNwZWt0cnVtIGRlciBXaXNzZW5zY2hhZnQgenUgdHVuPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNaW5lc3dlZXBlciAoSm9zaHVhLCAzMC4gQXByIDIwMDIsIDA5OjA5OjU2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDIwMTUwMDMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDE0NjU0MgpIbSAuLi4gS29tcGxleGl0YWV0IGlpcmMuIEljaCBnbGF1YmUgZGlyIEZyYWdlIGlzdCBvYiBlcyBzaWNoIGJld2Vpc2VuIGxhZXNzdApkYXMgZXMgZWluZSBlZmZpemllbnRlIExvZXN1bmcgZnVlciBOUC1rb21wbGV4ZSBQcm9ibGVtZSBnaWJ0IChvZGVyIGRlbiBCZXdlaXMKenUgZnVlaHJlbiwgZGFzcyBlcyBlaW5lIHNvbGNoZSBuaWNodCBnaWJ0KS4gRGEgZ2FiJ3Mgc29nYXIgbmVuIFByZWlzIHZvbiBuZXIKTWlsbGlvbiAkJCQgZnVlciBkZW4gZGVyIGRhcyBwYWNrdC4gQWxzbywgbWFjaHQgbWFsICpnKgoKSm9zaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTWluZXN3ZWVwZXIgKFZhbmlvbiwgMzAuIEFwciAyMDAyLCAwOToxMTowMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyMDE1MDM0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjAxNDY1NDIKSG1tbSwgU3Bla3J0dW0gaXMgZG9jaCBkaWUgZGV1dHNjaGUgQXVzZ2FiZSBkZXMgIkFtZXJpY2FuIFNjaWVudGlmaWMiIG9kZXI/IERhCmlzdCBkaWVzZXMgTml2ZWF1IGRvY2ggZHVyY2hhdXMgd2FzIGZ1ZXIgZGllIGJyZWl0ZSB3aXNzZW5zY2hhZnRsaWNoCmludGVyZXNzaWVydGUgTWFzc2UuCgpWKiwgc3RlaWd0IGF1cyBkaWVzZW0gVGhyZWFkIGF1cywgYmV2b3IgUG9zdGluZ3Mgdm9uIGlobSBuYWNoIE1lZ2FzY2htYXJybgp2ZXJzY2hvYmVuIHdlcmRlbi4KClBTOiBNYWwgenVyIEtsYXJzdGVsbHVuZzogSWNoIHdpbGwgZGllIFNwZWt0cnVtIGhpZXIgbmljaCB2ZXJyZWlzc2VuLCBzb25kZXJuCmxlc2Ugc2llIHNlbGJzdCBnZWxlZ2VudGxpY2ggZ2FueiBnZXJuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTWluZXN3ZWVwZXIgKEdyaW1tYm9ybiwgMzAuIEFwciAyMDAyLCAwOToxMzoyOCk6Cn4jISBybj1WYW5pb24gcnQ9MTAyMDE1MDY2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjAxNDY1NDIKRGFzIE5pdmVhdSBkaWVzZXIgWmVpdHNjaHJpZnQgaXN0IGluIGRlbiB2ZXJnYW5nZW5lbiBndXQgMTUgSmFocmVuIChzZWl0IGljaApzaWUgbGVzZSwgYWxzbykgc2lnbmlmaWthbnQgZ2VzdW5rZW4uIFVuZCBkYXMgbGllZ3QgYXVzbmFobXN3ZWlzZSBuaWNodCBkcmFuCmRhc3MgbWVpbiBOaXZlYXUgZ2VzdGllZ2VuIGlzdCwgZGFzIGJlbGVnZW4gc2Nob24gZGlyZWt0ZSBWZXJnbGVpY2hlLgpJc3QgYWJlciBpbW1lciBub2NoIHVtIEtsYXNzZW4gYmVzc2VyIGFscyBkaWUgZ2FuemUgIktvbmt1cnJlbnoiIHZvbiBQLk0uIGJpcwpCaWxkIGRlciBXaXNzZW5zY2hhZnQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTWluZXN3ZWVwZXIgKEpvc2h1YSwgMzAuIEFwciAyMDAyLCAwOToxNjo1Nik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyMDE1MDgwOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjAxNDY1NDIKRGFzIGhhZW5ndCB2b20gTGVzZXIgYWIgd3VlcmRlIGljaCBzYWdlbi4gUC5NLiB3YXIgenVtaW5kZXN0IGZydWVoZXIgZnVlcgpMZXV0ZSBkaWUgbmljaHQgdm9tIEZhY2ggc2luZCB3aXJrbGljaCBndXQgdW5kIGhhdCBhdWNoIGtvbXBsZXhlClp1c2FtbWVuaGFlbmdlICJlaW5mYWNoIiwgZC5oLiBuYXR1ZXJsaWNoIGF1Y2ggbmljaHQgdm9sbHN0YWVuZGlnLApuYWVoZXJnZWJyYWNodC4gSGFiIGFsbGVyZGluZ3Mgc2VpdCBldHdhIDUgSmFocmVuIGtlaW5lIEF1c2dhYmUgaW4gZGVyIEhhbmQKZ2VoYWJ0LCBhbHNvIGtlaW5lIEFobnVuZyB3aWUgZGllIGpldHp0IGlzdC4KCkpvc2ggLSBsaWVzdCBudXIgbm9jaCBkaWUgIkludGVybmV0IiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE1pbmVzd2VlcGVyIChHcmltbWJvcm4sIDMwLiBBcHIgMjAwMiwgMDk6MTk6MTcpOgp+IyEgcm49Sm9zaHVhIHJ0PTEwMjAxNTEwMTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwMTQ2NTQyCkljaCBrZW5uZSBQLk0uIHZvbiBldHdhIE1pdHRlIGRlciA4MGVyIChoYWIgbWlyIGRhIG1hbCBlaW5lbiBTdGFwZWwgaW4gZGVyClN0YWR0YmlibGlvdGhlayBhdXNnZWxpZWhlbikuIERhcyAibmF0dWVybGljaCBhdWNoIG5pY2h0IHZvbGxzdGFlbmRpZyIgbGllZgptZWhyIGF1ZiAicmVpc3NlcmlzY2ggdW5kIGRhenUgc2FjaGxpY2ggbmljaHRtYWwgaW4gR3J1bmR6dWVnZW4ga29ycmVrdCkKaGluYXVzLiBVbmQgd2VubiBpY2ggbWlyIGRpZSBUaXRlbCBzbyBhbmd1Y2tlIGhhdCBzaWNoIGRhcyBuaWNodCBnZWFlbmRlcnQuCkRpZSBBbmFsb2dpZSB6dXIgQmlsZHplaXR1bmcgaXN0IGVoZXIgdW50ZXItIGFscyB1ZWJlcnRyaWViZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBNaW5lc3dlZXBlciAoSm9zaHVhLCAzMC4gQXByIDIwMDIsIDA5OjI2OjU2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDIwMTUxMTU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDE0NjU0MgpIYXJ0ZSBXb3J0ZS4gSWNoIGZhbmQgei5CLiBkaWUgRXJrbGFlcnVuZyBkZXIgRnVua3Rpb25zd2Vpc2UgZWluZXMKQXRvbXJlYWt0b3JzIHNjaG9uIGd1dC4gV2llIGF1Y2ggZWluaWdlIGFuZGVyZSBBcnRpa2VsLiBFdHdhcyBrb25rcmV0IEZhbHNjaGVzCmtvbm50ZSBpY2ggZGVyIFBNIHp1bWluZGVzdCBuaWNodCBuYWNod2Vpc2VuLiBIYXN0IER1IGRhIGVpbiBCZWlzcGllbCwgZGFzcwp1bnMgYWxsZW4gYmVsZWd0LCBkYXNzIGRpZSBQTSB0YXRzYWVjaGxpY2ggX2ZhbHNjaGVzXyBzY2hyZWlidD8gSWNoIG1laW5lCiJzYWNobGljaCBuaWNodCBtYWwgaW4gR3J1bmR6dWVnZW4ga29ycmVrdCIgbXVlc3N0ZSBqYSBlaW5mYWNoIHp1IGJlbGVnZW4gc2VpbgouLi4KCkhhYiBnZXJhZGUgbWFsIGF1ZiBkaWUgV2VicGFnZSBnZXNjaGF1dC4gSXN0IHRhdHNhZWNobGljaCBub2NoIGJ1bnRlciBnZXdvcmRlbgphbHMgZXMgZWggc2Nob24gd2FyIChkYWhpbmdlaGVuZCBpc3QgZGllIEFuYWxvZ2llIHp1ciBCaWxkIHZlcm11dGxpY2gKa29ycmVrdCkuCkpvc2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBNaW5lc3dlZXBlciAoWm9vaywgMzAuIEFwciAyMDAyLCAwOToyNzowNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyMDE1MTE1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjAxNDY1NDIKQWJlciBzdGltbXQgc2Nob24sIGljaCBoYWIgYXVjaCBzbyBkZW4gRWluZHJ1Y2ssIGRpZSBTcGVrdHJ1bS1kLVdpc3NlbnNjaGFmdAppc3QgaW0gTml2ZWF1IGV0d2FzIGdlc3Vua2VuLCBzb3dlaXQgaWNoIGRhcyBhbHMgYWJzb2x1dGUgTmF0dXJ3aXNzZW5zY2hhZnRzLQpGbGFzY2hlIGZlc3RzdGVsbGVuIGthbm4uIAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBNaW5lc3dlZXBlciAoR3JpbW1ib3JuLCAzMC4gQXByIDIwMDIsIDA5OjM3OjI3KToKfiMhIHJuPVpvb2sgcnQ9MTAyMDE1MTYyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjAxNDY1NDIKS29ua3JldGUgQmVpc3BpZWxlIHZvbiB2b3IgMTUgSmFocmVuPyBQdWguIEljaCBlcmlubmVyZSBtaWNoIER1bmtlbCBkYXNzIGljaApuYWNoIGVpbmVtIEFydGlrZWwgIkRpZSBsZXR6dGVuIEdlaGVpbW5pc3NlIGRlciBSZWxhdGl2aXRhZXRzdGhlb3JpZSEiIGdhcgpuaWNodCBzbyBzY2huZWxsIGVzc2VuIGtvbm50ZSB3aWUgaWNoIGtvdHplbiB3b2xsdGUuIFVuZCBkaWUgaGFiZW4gYW4gYW5kZXJlcgpTdGVsbGUgQXVzc2FnZW4gdWViZXIgZGFzIFNvemlhbHZlcmhhbHRlbiBkZXIgZnJ1ZWhlbiBIb21pbmlkZW4gZ2VtYWNodCBkaWUKZHVyY2ggbmljaHRzIGdlcmVjaHRmZXJ0aWd0IHdhcmVuLiBOYWphLCBkZXIgSGlud2VpcywgZGFzcyBlcyBzaWNoIHVtIHJlaW5lClNwZWt1bGF0aW9uIGhhbmRlbHRlLCBzdGFuZCBqYSBhdWYgZGVtIFVtc2NobGFnICgiUC5NLiIpLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTWluZXN3ZWVwZXIgKEhvb2QsIDMwLiBBcHIgMjAwMiwgMTA6MTU6MDkpOgp+IyEgcm49Sm9zaHVhIHJ0PTEwMjAxNTEwMTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwMTQ2NTQyCmFsc28gZGEgYmVmdWVyd29ydGUgaWNoIGxpZWJlciBnYXIga2VpbmUgYmlsZHVuZyBzdGF0dCBkaWVzZSBmZWhsYmlsZHVuZyA6KQpmcnVlaGVyIHdhciBlcyBzaWNoZXIgYXVjaCBlaW4gZXJrbGFlcnVuZ3Ntb2RlbGwgZnVlciBub3JtYWxzdGVyYmxpY2hlLApkYXNzIGRpZSBzdGVybmUgYW0gaGltbWVsIGtlcnplbiB3YWVyZW4gb2RlciB3YXMgd2Vpc3MgaWNoLApkZXNoYWxiIGhhdCBkYXMgbm9jaCBsYW5nZSBuaXggbWl0IHdpc3NlbiB6dSB0dW4sIGF1Y2ggd2VubgpkaWUgbGV1dGNoZW5zIGRhbm4gZGFjaHRlbiwgc2llIHd1ZXNzdGVuIGpldHp0IGVuZGxpY2ggYWxsZXMuClBNIGlzdCBqYSB3b2hsIGRpZSBiaWxkemVpdHVuZyB1bnRlciBkZW4gc2VsYnN0ZXJuYW5udGVuCndpc3NlbnNjaGFmdHNibGFldHRlcm4uIGhhYXJzdHJhZXViZW5kZXIgdW5zaW5uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBNaW5lc3dlZXBlciAoSHVtbmksIDMwLiBBcHIgMjAwMiwgMTA6MTc6NTYpOgp+IyEgcm49SG9vZCBydD0xMDIwMTU0NTA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDE0NjU0MgpXYXMgaWNoIGFiZXIgZGVubm9jaCBtYWwgd2lzc2VuIHdvbGx0ZToKClNwZWt0cnVtIGhhdCBiZWkgLCxNYXRoZW1hdGlzY2hlciBVbnRlcmhhbHR1bmcnJyBlaW5lbiBQPU5QLUJld2Vpcz8gCgpJY2ggd2lsbCBqYSBuaWNodCBzYWdlbiBkYXNzIHNvIGVpbiBCZXdlaXMgdW5tb2VnbGljaCBpc3QuLiBhYmVyIGdsYXViZW4gdHUKaWNoIGRhcyBlcnN0bWFsIHNvIG5pY2h0LiBJY2gga2VubiBTcGVrdHJ1bSBnYXIgbmljaHQuLiBvZGVyIGlzdCBkYXMgZWluZQpBdWZnYWJlLCB3byBtYW4gcmF1c2ZpbmRlbiBtdXNzLCB3YXMgZGFyYW4gZmFsc2NoIGlzdD8KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTWluZXN3ZWVwZXIgKEFuYWNyaW9uLCAzMC4gQXByIDIwMDIsIDEwOjQ5OjAzKToKfiMhIHJuPUh1bW5pIHJ0PTEwMjAxNTQ2NzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwMTQ2NTQyCldhcyBpc3QgZWlnZW50bGljaCBhdXMgZGVtIFA9TlAtQmV3ZWlzIHZvbiBkZW0gUnVzc2VuIGxldHp0ZXMgSmFociBnZXdvcmRlbj8KCmFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTWluZXN3ZWVwZXIgKFpvb2ssIDMwLiBBcHIgMjAwMiwgMTA6NTU6MTEpOgp+IyEgcm49QW5hY3Jpb24gcnQ9MTAyMDE1NjU0MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjAxNDY1NDIKQWxzbyBkYXMgU3Bla3RydW0gZGVyIFdpc3NlbnNjaGFmdCBpc3QgZ2FueiBuZXR0LiBEaWUgQXJ0aWtlbCBzaW5kIGF1Y2ggZnVlcgpGYWNoZnJlbWRlIGJ6dy4gVG90YWxlLUZsYXNjaGVuIHdpZSBtaWNoIGdhbnogaW50ZXJlc3NhbnQsIGF1Y2ggd2VubiBkYXMKTml2ZWF1IGV0d2FzIGdlc3Vua2VuIGlzdCBpbiBkZW4gbGV0enRlbiBKYWhyZW4uIFVuZCBtYW4gbGllc3QgdW5kIHZlcnN0ZWh0CmRldXRsaWNoIG1laHIgYWxzIGJlaSBOYXR1cmUsIGJlaSBkZXIgZXJzY2hsYWdlbiBtaWNoIHp1bWVpc3Qgc2Nob24gZGllCkFic3RyYWN0cyA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoRGVlcGJsdWUsIDMwLiBBcHIgMjAwMiwgMTA6NTc6NDgpOgpEZWluIEZyZXVuZCBBaGFiIHRlaWx0IERpciBtaXQ6IHd1c3N0ZXQgaWhyLCBkYXNzIGRyLiBxdWFjayBzYWxiZXIgbmVuIHN0dXBzCkRlaW4gRnJldW5kIEFoYWIgdGVpbHQgRGlyIG1pdDogaXN0PyA7KQpbVG9kOkxhcnNdIEVpbiBPcmsgaGF0IGdlcmFkZSBBaGFiIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogTWluZXN3ZWVwZXIgKENhdHdlYXpsZSwgMzAuIEFwciAyMDAyLCAxMTowNjo0NSk6Cn4jISBybj1ab29rIHJ0PTEwMjAxNTY5MTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwMTQ2NTQyCk9rLCB2ZXJzdGFuZGxpY2gsIGd1dCB1bmQgc2Nob2VuLgpEYXMgUHJvYmxlbSBiZWkgU3Bla3RydW0gdW5kIFAuTS4gaXN0IGFiZXIsIGRhcyBkYSBtaXRoaW4gYWJzb2x1dGVyIFNjaHJvdHQKZHJpbnN0ZWh0LiAKSWNoIGVyaW5uZXIgbWljaCBtYWwgZWluZW4gQXJ0aWtlbCBpbiBkZXIgU3Bla3RydW0gZ2VsZXNlbiB6dSBoYWJlbiB6dSBlaW5lbQpQaHlzaWstVGhlbWEgenUgZGVtIGljaCBtaWNoIGluIGRlbSBBdWdlbmJsaWNrIHdpcmtsaWNoIHJpY2h0aWcgZ3V0IGF1c2thbm50ZSwKdW5kIGRlciBBcnRpa2VsIHdhciB2b2xsZXIgTXVlbGwgdW5kIEZhbHNjaGF1c3NhZ2VuLiBEYXJhdXMgaGFiIGljaCBkYW5uIGRpZQpRdWFsaXRhZXQgYW5kZXJlciwgZmFjaGZyZW1kZXJlciBBcnRpa2VsIGFiZ2VsZWl0ZXQgdW5kIGRpZSBaZWl0dW5nIG5pZSB3aWVkZXIKYW5nZWZhc3N0LgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogTWluZXN3ZWVwZXIgKEdyaW1tYm9ybiwgMzAuIEFwciAyMDAyLCAxMTowNzo0OSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTAyMDE1NzYwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjAxNDY1NDIKRXMga2FubiBlaW4gYmlzY2hlbiBnZXdhZ3Qgc2VpbiwgZWluZSBaZWl0dW5nIGFuaGFuZCBlaW56ZWxuZXIgQmVpdHJhZWdlIGRlcgpBcHJpbGF1c2dhYmUgenUgYmV1cnRlaWxlbi4gQW5zb25zdGVuIGxvaG5lbiBzaWNoIGluIHNvbGNoZW4gRmFlbGxlbiBkaWUKTGVzZXJicmllZmUgendlaSBNb25hdGUgc3BhZXRlci4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IE1pbmVzd2VlcGVyIChDYXR3ZWF6bGUsIDMwLiBBcHIgMjAwMiwgMTE6MTA6NDEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjAxNTc2Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwMTQ2NTQyCkRlciBBcnRpa2VsIGhhdCBtaWNoIGdlbnVnIGFiZ2VzY2hyZWNrdCwgZGFzIGljaCBudXIgdm9sbGVyIEVrZWwgdW5kCldpZGVyd2lsbGVuIG5vY2ggbWFsIGVpbmUgU3Bla3RydW0gaGFldHRlIGFuZmFzc2VuIHdvbGxlbi4gVW5kIGRlcgooTmljaHQtQXByaWwpLUFydGlrZWwgd2FyIHNvIGRlcm1hc3NlbiB1bnRlciBhbGxlciBTYXUsIGRhIGhhdCBkaWUgUmVkYWt0aW9uCmhvZWNoc3RncmFkaWcgdmVyc2FndCwgZGFzIGljaCBuaWNodCBtYWwgdmVyc3VjaGVuIHdvbGx0ZSBWZXJnbGVpY2hlIHp1CnppZWhlbi4gV2lyIGhhYmVuIGRhbWFscyBhdWYgamVkZW4gRmFsbCBoZXJ6bGljaCBnZWxhY2h0IDopCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBNaW5lc3dlZXBlciAoSG9vZCwgMzAuIEFwciAyMDAyLCAxMjoyNjoxMCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTAyMDE1NzYwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjAxNDY1NDIKZGFzIHByb2JsZW0gYmVpIHplaXR1bmdlbiB3aWUgUE0gdW5kIHNvIGlzdCBkYW5uIGVpZ2VudGxpY2gsCmRhc3MgbWFuIHZvbiBzZWxic3Rlcm5hbm50ZW4gImZhY2hsZXV0ZW4iLCBhbHNvCnVlYmVyZWlmcmlnZW4gUE0tbGVzZXJuIG9mdG1hbHMgYmVsYWVjaGVsdCB3aXJkLAp3ZWlsIG1hbiBlcyBqYSAibmljaHQgcmljaHRpZyB3ZWlzcyIuCnNjaGxpZXNzbGljaCBzdGFuZHMgamEgaW4gZGVyIFBNLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IE1pbmVzd2VlcGVyIChJc2ksIDMwLiBBcHIgMjAwMiwgMTI6NTk6MTYpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMjAxNTc4NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwMTQ2NTQyCk1vbWVudCwgUD1OUD8gaWhyIHJlZGV0IHdpcmtsaWNoIHZvbiBBdWZnYWJlbiBtaXQgcG9seW5vbWlzY2hlbQpBdWZ3YW5kIChQKSB1bmQgc29jaGVsbiBtaXQgbmljaHQtcG9seW5vbWlzY2htZSB3YXVmd2FiZCAoTlApCmtsYXNzaXNjaGVzIGJlaXNwaWVsIGhhbmRsdW5nc3Jlc2llbmVkZW4gcHJvYmxlbj8KaWNoIGdsYXViIGljaCBtdXNzIGRhcyBoZWZ0IGxlc2VuLi4uCmlzaSAoTW91c3Nld2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBNaW5lc3dlZXBlciAoSHVtbmksIDMwLiBBcHIgMjAwMiwgMTM6Mjg6MTcpOgp+IyEgcm49SXNpIHJ0PTEwMjAxNjQzNTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwMTQ2NTQyClNvbGwgaWNocyB3aXJrbGljaCBlcmtsYWVyZW4/IDstKQoKTmVpbiwgZGFzIE4gc3RlaHQgbmljaHQgZnVlciBOaWNodHBvbHlub21pYWwgc29uZGVybiBmdWVyCk5pY2h0ZGV0ZXJtaW5pc3Rpc2NoLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBNaW5lc3dlZXBlciAoRWxiZXJldCwgMzAuIEFwciAyMDAyLCAxMzozMjowNik6Cn4jISBybj1IdW1uaSBydD0xMDIwMTY2MDk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDE0NjU0MgphdSBqYSwgSHVtbmksIGVya2xhZXIgbWFsIDopCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogTWluZXN3ZWVwZXIgKEJvaW5nLCAzMC4gQXByIDIwMDIsIDEzOjM2OjU2KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMDE2NjMyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjAxNDY1NDIKRXJrbGFlcnMgYml0dGUgaW4gTWVnYXNjaG1hcnJuIC4uLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogTWluZXN3ZWVwZXIgKEVsYmVyZXQsIDMwLiBBcHIgMjAwMiwgMTM6Mzk6MjEpOgp+IyEgcm49Qm9pbmcgcnQ9MTAyMDE2NjYxNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjAxNDY1NDIKam8gTWVnYXNjaG1hcnJuIGlzIGd1dCA6KQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IE1pbmVzd2VlcGVyIChab29rLCAzMC4gQXByIDIwMDIsIDEzOjQxOjI4KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMDE2Njc2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjAxNDY1NDIKWm9vayBuaWNrdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBNaW5lc3dlZXBlciAoRWxiZXJldCwgMzAuIEFwciAyMDAyLCAxMzo0MjowMik6Cn4jISBybj1ab29rIHJ0PTEwMjAxNjY4ODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwMTQ2NTQyCmpldHp0IGlkbGV0IEh1bW5pIC4uLgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWluZXN3ZWVwZXIgKFpvb2ssIDMwLiBBcHIgMjAwMiwgMTM6NDQ6MDMpOgp+IyEgb249Wm9vayBvdD0xMDIwMTY3MDMxIG9nPWFsbGdlbWVpbmVzCn4jISBybj1HcmltbWJvcm4gcnQ9MTAyMDE2Njk5MyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMjAxNjA4NzAKWm9vayBrYW5uIHNpY2ggZGF6dSBudXIgZWluZSBSZWdpb24gdm9yc3RlbGxlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1pbmVzd2VlcGVyIChNb250YW51cywgMzAuIEFwciAyMDAyLCAxNTo1MDoyOCk6Cn4jISBybj1ab29rIHJ0PTEwMjAxNjcwNDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwMTYwODcwCkljaCBsZXMgYXVjaCBncmFkIGVpbiBCdWNoIHVlYmVyIGVpbmUgaW50ZXJlc3NhbnRlIEdsZWljaHVuZywgYWxsZXJkaW5ncwpoYW5kZWx0IGVzc2ljaCBkYWJlaSB1bSBZOFM9KyEKR3V0ZXMgQmJ1Y2ggdWVicmlnZW5zLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1pbmVzd2VlcGVyIChWYW5pb24sIDMwLiBBcHIgMjAwMiwgMTY6Mjk6MzApOgp+IyEgcm49TW9udGFudXMgcnQ9MTAyMDE3NDYyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjAxNjA4NzAKRW50c2NodWxkaWdlLCBhYmVyIGRlciBLZXJuIGRlaW5lciBBdXNzYWdlIGltIGxldHp0ZW4gQXJ0aWtlbCBtdXNzIG1pcgplbnRnYW5nZW4gc2Vpbi4KClYqLCBpcnJpdGllcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTWluZXN3ZWVwZXIgKENyb2Z0LCAzMC4gQXByIDIwMDIsIDE2OjMzOjE0KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMjAxNzU1OTggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDIwMTYwODcwCkZyZWkgbmFjaCBMb3Jpb3Q6ICBEYSBkZXIgR3Jvc3N0ZWlsIGRlciBVbmZhZWxsZSBpbSBIYXVzaGFsdCBpbiBLdWVjaGUsIEJhZAp1bmQgV0MgcGFzc2llcmVuIHNjaGVpbnQgZXMgcmF0c2FtIHp1IHNlaW4sIGRpZXNlIFJhZXVtZSBuaWNodCBtZWhyIHp1CmJldHJldGVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTWluZXN3ZWVwZXIgKEdyaW1tYm9ybiwgMzAuIEFwciAyMDAyLCAxNjozNDozMyk6Cn4jISBybj1Dcm9mdCBydD0xMDIwMTc3MTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDE2MDg3MApEZXIgZ2VmYWVocmxpY2hzdGUgT3J0IHVlYmVyaGF1cHQgaXN0IGRhcyBCZXR0LiBEaWUgbWVpc3RlbiBMZXV0ZSBzdGVyYmVuIGluCnNvIGVpbmVtLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTWluZXN3ZWVwZXIgKEdsb2luc29uLCAzMC4gQXByIDIwMDIsIDE2OjM5OjAyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDIwMTc3MjczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDE2MDg3MApTb2xsdGUgbWFuIHNpZSB2ZXJiaWV0ZW4/IFNpZWhlIERpc2t1c3Npb24sIEJlaXRyYWcgQXJrLgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IE1pbmVzd2VlcGVyIChWYW5pb24sIDMwLiBBcHIgMjAwMiwgMTc6MTQ6NTIpOgp+IyEgcm49QmFtYnVsa28gcnQ9MTAyMDE3OTUyNiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAyMDE2MDg3MApTdGltbXQgZ2FybmljaHQuIE1hZ2llciBzaW5kIGFsbGUgZ2FueiBsaWViLiAKCkRhdWVybmQgdGF1c2NoZW4gZGllIE1hYXRlLVRlZS1SZXplcHRlIGF1cyB1bmQgdWViZXJsZWdlbiBzaWNoLCB3aWUgc2llClNwaWVsZXIgYmVpbSBLYW1wZiBnZWdlbiBmaWVzZSBOUEMgdW50ZXJzdHVldHplbiBrb2VubmVuLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBNaW5lc3dlZXBlciAoR2xvaW5zb24sIDMwLiBBcHIgMjAwMiwgMTc6MTY6MTkpOgp+IyEgcm49VmFuaW9uIHJ0PTEwMjAxNzk2OTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwMTYwODcwCk1hYXRlLVRlZT8gV2llIGRla2FkZW50LiBJY2ggd3Vzc3RlIHNjaG9uIGltbWVyIGRhc3MgaW4gZGVuIGhvZWhyZW4gUmFlbmdlbgpkZXIgTWFnaWVyIGluIE1HIFdvbGx1c3QgdW5kIG9yZ2lhc3Rpc2NoZSBTdGltbXVuZyBoZXJyc2NodC4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBNaW5lc3dlZXBlciAoVmFuaW9uLCAzMC4gQXByIDIwMDIsIDE3OjI1OjM0KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMjAxNzk3Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwMTYwODcwCkthbm4gc2ljaCBqYSBuaWNoIGplZGVyIG1pdCBsZWljaHQgYW5nZXdhZXJtdGVtIFdhc3NlciBiZWdudWVnZW4uCgpWKiwgaXN0IG51ciB3ZWdlbiBkZW0gVGVlIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWmF1YmllcyBBdWZ3ZXJ0ZW4hIChDYXR3ZWF6bGUsICAzLiBNYWkgMjAwMiwgMDg6MTc6MTApOgp+IyEgb249QnJvdG5hZWwgb3Q9MTAyMDM2NDc3MCBvZz1kaXNrdXNzaW9uCkFiZXIgZHJhc3Rpc2NoICpncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBaYXViaWVzIEF1ZndlcnRlbiEgKENhdHdlYXpsZSwgIDMuIE1haSAyMDAyLCAwODoxNzoxMSk6Cn4jISBvbj1FbGJlcmV0IG90PTEwMjAzNjQ3OTQgb2c9ZGlza3Vzc2lvbgp+IyEgcm49QnJvdG5hZWwgcnQ9MTAyMDM2NDc3MCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAyMDM2NDc3MApkZXIgd2FyIHp1IHBsdW1wIDopCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFphdWJpZXMgQXVmd2VydGVuISAoQ2F0d2VhemxlLCAgMy4gTWFpIDIwMDIsIDA4OjE3OjEyKToKfiMhIG9uPUJyb3RuYWVsIG90PTEwMjAzNjQ4MjAgb2c9ZGlza3Vzc2lvbgp+IyEgcm49RWxiZXJldCBydD0xMDIwMzY0Nzk0IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDIwMzY0NzcwCm5hZ3V0Li4uIEthZW1wZmVyIGFid2VydGVuLCB6YXViaWVzIGF1ZndlcnRlbiwgZ2x1ZWNrbGljaCBzZWluLiAKYmVzc2VyID8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFphdWJpZXMgQXVmd2VydGVuISAoQ2F0d2VhemxlLCAgMy4gTWFpIDIwMDIsIDA4OjE3OjEzKToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAyMDM2NDg2MSBvZz1kaXNrdXNzaW9uCn4jISBybj1Ccm90bmFlbCBydD0xMDIwMzY0ODIwIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDIwMzY0NzcwCmJlc3NlcmVyIGFiZXIgc3RyZW5nIGRpY2ggbWFsIG1laHIgYW4uIHNvIHdpcmQgZGEgbmllIHdhcyByYXVzIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBaYXViaWVzIEF1ZndlcnRlbiEgKENhdHdlYXpsZSwgIDMuIE1haSAyMDAyLCAwODoxNzoxNCk6Cn4jISBvbj1Ccm90bmFlbCBvdD0xMDIwMzY0OTI5IG9nPWRpc2t1c3Npb24KfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMDM2NDg2MSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAyMDM2NDc3MApobW0uLi4gS2xlcmlzIGF1ZndlcnRlbj8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFphdWJpZXMgQXVmd2VydGVuISAoQ2F0d2VhemxlLCAgMy4gTWFpIDIwMDIsIDA4OjE3OjE1KToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAyMDM2NDk2MyBvZz1kaXNrdXNzaW9uCn4jISBybj1Ccm90bmFlbCBydD0xMDIwMzY0OTI5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDIwMzY0NzcwCkdyaW1tYm9ybiB0dSB3YXMgOikKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFphdWJpZXMgQXVmd2VydGVuISAoQ2F0d2VhemxlLCAgMy4gTWFpIDIwMDIsIDA4OjE3OjE2KToKfiMhIG9uPUJyb3RuYWVsIG90PTEwMjAzNjQ5OTAgb2c9ZGlza3Vzc2lvbgp+IyEgcm49RWxiZXJldCBydD0xMDIwMzY0OTYzIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDIwMzY0NzcwCmljaCBnbGF1YiBnbGVpY2ggYWJib25pZXJlIGljaCBkb2NoIHdpZWRlciBtZWdhc2NobWFycm4uLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogWmF1YmllcyBBdWZ3ZXJ0ZW4hIChDYXR3ZWF6bGUsICAzLiBNYWkgMjAwMiwgMDg6MTc6MTcpOgp+IyEgb249RWxiZXJldCBvdD0xMDIwMzY1MDIxIG9nPWRpc2t1c3Npb24KfiMhIHJuPUJyb3RuYWVsIHJ0PTEwMjAzNjQ5OTAgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMjAzNjQ3NzAKdHUgZGFzLCBsb2hudCBzaWNoIDopCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBaYXViaWVzIEF1ZndlcnRlbiEgKENhdHdlYXpsZSwgIDMuIE1haSAyMDAyLCAwODoxNzoxOCk6Cn4jISBvbj1CaWVsZWZlbGQgb3Q9MTAyMDM2NTA0OSBvZz1kaXNrdXNzaW9uCn4jISBybj1FbGJlcmV0IHJ0PTEwMjAzNjUwMjEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMjAzNjQ3NzAKOnN0ZWxsdCBCcml0bmV5IGZ1ZXIgUmVeMTAwIGVpbmUgVGFmZWwgTWlsa2EgS3VoZmxlY2tlbgppbiBBdXNzaWNodC4KCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFphdWJpZXMgQXVmd2VydGVuISAoQ2F0d2VhemxlLCAgMy4gTWFpIDIwMDIsIDA4OjE3OjE5KToKfiMhIG9uPUFyayBvdD0xMDIwMzY1MjY0IG9nPWRpc2t1c3Npb24KfiMhIHJuPUJpZWxlZmVsZCBydD0xMDIwMzY1MDQ5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDIwMzY0NzcwCk1vbnN0ZXIgYXVmd2VydGVuIQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBaYXViaWVzIEF1ZndlcnRlbiEgKENhdHdlYXpsZSwgIDMuIE1haSAyMDAyLCAwODoxNzoyMCk6Cn4jISBvbj1FbGJlcmV0IG90PTEwMjAzNjUyOTIgb2c9ZGlza3Vzc2lvbgp+IyEgcm49QXJrIHJ0PTEwMjAzNjUyNjQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMjAzNjQ3NzAKdW5laW5nZXNjaHJhZW5rdCBkYWZ1ZXIKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBaYXViaWVzIEF1ZndlcnRlbiEgKENhdHdlYXpsZSwgIDMuIE1haSAyMDAyLCAwODoxNzoyMSk6Cn4jISBvbj1BbWFyeWxsaXMgb3Q9MTAyMDM2NTM5MCBvZz1kaXNrdXNzaW9uCn4jISBybj1FbGJlcmV0IHJ0PTEwMjAzNjUyOTIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMjAzNjQ3NzAKR3V0LCBpY2ggZmFuZyBkYW5uIG1hbCBhbi4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBaYXViaWVzIEF1ZndlcnRlbiEgKENhdHdlYXpsZSwgIDMuIE1haSAyMDAyLCAwODoxNzoyMik6Cn4jISBvbj1FbGJlcmV0IG90PTEwMjAzNjU0MTkgb2c9ZGlza3Vzc2lvbgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMjAzNjUzOTAgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMjAzNjQ3NzAKc2Nob2VuLCBhYmVyIG1hY2ggYXVjaCB3YXMgYW4gZGVuIHN5bnRheGVuIGluIGRlciBGZXN0dW5nCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogWmF1YmllcyBBdWZ3ZXJ0ZW4hIChDYXR3ZWF6bGUsICAzLiBNYWkgMjAwMiwgMDg6MTc6MjMpOgp+IyEgb249QW1hcnlsbGlzIG90PTEwMjAzNjU0NDMgb2c9ZGlza3Vzc2lvbgp+IyEgcm49RWxiZXJldCBydD0xMDIwMzY1NDE5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDIwMzY0NzcwCmRhcyBpc3QgR29ycyBCYXVzdGVsbGUuCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogWmF1YmllcyBBdWZ3ZXJ0ZW4hIChDYXR3ZWF6bGUsICAzLiBNYWkgMjAwMiwgMDg6MTc6MjQpOgp+IyEgb249Wm9vayBvdD0xMDIwMzY3NjEzIG9nPWRpc2t1c3Npb24KfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDIwMzY1NDQzIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDIwMzY0NzcwClNjaG5lbGwgZXJzdG9yYmVuIGRlciBUaHJlYWQuIEFsc28gTGV1dGUsIGxlc3QgZGFzIE9yaWdpbmFsIHVuZCBkYXMgaXN0CmluIGRlciBSdWJyaWsgIm1lZ2FzY2htYXJybiIuIEdsYXViIGtlaW5lbiBQbGFnaWF0ZW4sIG5laG10IG51ciBkYXMgCk9yaWdpbmFsIQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERpZWJzdGFlaGxlIChHbG9pbnNvbiwgIDMuIE1haSAyMDAyLCAxMjo0NToyOCk6Cn4jISBybj1WZWN0b3IgcnQ9MTAyMDQyMjM5NCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMjA0MTQ5NTcKTmFqYSwgc292aWVsIEFuc3RhbmQgd2FlaHJlbmQgZGVzIFRvZGVzIG5pY2h0IHp1IGtsYXVlbiBoYWJlbiBtZWluZXMgV2lzc2Vucwpzb2dhciBkaWUgc2NobWllcmlnZW4sIGFlaCBnaWVyaWdlbiBFbGZlbi4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERpZWJzdGFlaGxlIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDEyOjQ2OjA4KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMjA0MjI3Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDE0OTU3Cmh1Y2ggaXN0IHdpZWRlciA4LiBNYWk/IFdpcmQgZWlnZW50bGljaCBhbSAxMS4gTm92ZW1iZXIgYXVjaCBnZWZsYWd0PyAKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERpZWJzdGFlaGxlIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDEzOjA3OjA5KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMDQyMjc2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0MTQ5NTcKR3JpbW1ib3JuIHZlcnNjaGllYiBkZW4gbmFjaCBtZWdhc2NobWFycm4gOikKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IERpZWJzdGFlaGxlIChIdW1uaSwgIDMuIE1haSAyMDAyLCAxMzowNzoyOSk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjA0MjQwMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDE0OTU3Ck5laW4gbmVpbi4gTmFjaCBNZWdhc2NobWFycm4gd2lyZCBuaWNodCB2ZXJzY2hvYmVuLiBEYXMgbWFjaHQgZG9jaCBkZW4gVGhyZWFkCmthcHV0dCEKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllYnN0YWVobGUgKEJpZWxlZmVsZCwgIDMuIE1haSAyMDAyLCAxMzoyNDoxNCk6Cn4jISBybj1TY2hsZWljaGVyIHJ0PTEwMjA0MTQ5NTcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDIwNDE0OTU3CldhcyBtaWNoIGRhYmVpIGFtIG1laXN0ZW4gZmFzemluaWVydDogRWluIE1hZ2llciByZWd0IHNpY2ggaW4gZGVyIE1QQQpkcnVlYmVyIGF1ZiwgZGFzcyBzZWluZSBTcGllbGVyendlaXRpZXMgYmVrbGF1dCB3ZXJkZW4gdW5kIGRyb2h0IG1pdApkZW4gU2hlcmlmZi4uLgoKLUJpZWxlZmVsZCAoc3ByYWNobG9zIHVlYmVyIHNvIHNjaGxlY2h0ZW4gU3RpbCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGllYnN0YWVobGUgKFNjaGxlaWNoZXIsICAzLiBNYWkgMjAwMiwgMTQ6MjA6NDIpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTEwMjA0MjUwNTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDE0OTU3CkludGVyZXNzYW50IHdhcyBkdSBhbGxlcyBsaWVzdD8gSWNoIHd1cmRlIGhldXRlIG1vcmdlbiwgbWFsIHdpZWRlciwgdm9uIGVpbmVtClNwaWVsZXJlcnN0aWUgKE5pY2h0IFNlaGVyKSBhbmdlc3Byb2NoZW4gZGVtIGVpbiBtaXQgTmFtZW4gYmVzY2hyaWZ0ZXRlcgpSdWNrc2FjayBhdXMgZGVyIEthcmF0ZWdpbGRlIGdlc3RvaGxlbiB3dXJkZS4gRGllc2VyIFNwaWVsZXIgaGF0IG51biBtYWwgTklYCndlaXRlciBtaXQgbWlyIHp1IHR1bi4gTWVpbmUgU3BpZWxlciBsYWdlcm4gSWhyZSBTYWNoZW4gZGEgd28ga2VpbiBhbmRlcmVyCnJhbmtvbW10LiBBYmVyICd0c2NodWxkaWd1bmcsIGhhYiBsYW5nc2FtIGVoIGRpZSBTY2huYXV6ZSAgdm9sbCBtaWNoIGhpZXIgdm9uCmlyZ2VuZHdlbGNoZW4gRGVwcGVuIHZvbiBkZXIgU2VpdGUgYW5tYXVsZW4genUgbGFzc2VuIHdlaWwgaWNoIG1pY2ggZHJ1bQprdWVtbWVyIHdlbm4gc2ljaCBTcGllbGVyIG1pdCBQcm9ibGVtZW4gYW4gbWljaCB3ZW5kZW4uIERhY2h0ZSBudXIgYmlzIGdyYWRlCmRhcyBhdWNoIHNvd2FzIEF1ZmdhYmUgZWluZXMgTWFnaWVycyBpc3QsIGFiZXIgc2llaHQgc28gYXVzIGFscyBzZWkgbnVyIGR1bW1lcwpSdW1nZXN1ZWx6ZSBlcnd1ZW5zY2h0IG5pY2h0IGRhcyBzaWNoIEt1ZW1tZXJuIHVtIFNwaWVsZXJiZWxhbmdlLiBBYmVyIGVnYWwsCm1hY2h0IHdhcyBJaHIgd29sbHQgbWlyIGlzc2VzIGFiIHNvZm9ydCBTQ0hFSVNTRUdBTCEKU2NobGVpY2hlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWVic3RhZWhsZSAoTXVwZmVsLCAgMy4gTWFpIDIwMDIsIDE0OjIxOjQyKToKfiMhIHJuPUJpZWxlZmVsZCBydD0xMDIwNDI1MDU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQxNDk1NwpKYSBudW4sIGlyZ2VuZHdvIHp1IG11c3MgZXMgamEgZ3V0IHNlaW4sIG5lbiBNYWdpZXIydGkgenUgaGFiZW4uIFVuZCB3ZW5ucwpkYWZ1ZXIgaXN0Li4uCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGllYnN0YWVobGUgKEltZGEsICAzLiBNYWkgMjAwMiwgMTQ6MjQ6MDEpOgp+IyEgcm49U2NobGVpY2hlciBydD0xMDIwNDI4NDQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQxNDk1NwpJY2ggdHUgZGFzIGphIG51ciB1bmdlcm4sIGFiZXI6CgpIZXVsIGRvY2ggISAodG0pCgppbWRhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGllYnN0YWVobGUgKFZhcmxhcmlvbiwgIDMuIE1haSAyMDAyLCAxNDoyODowNyk6Cn4jISBybj1JbWRhIHJ0PTEwMjA0Mjg2NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDE0OTU3CkJpc3QgZHUgbmljaHQgZ2VyYWRlIGRhYmVpLCBkaWUgR2lsZGVucmFldW1lIHp1IHVlYmVyYXJiZWl0ZW4/IERhbm4gYmF1IGRlbgpLYXJhdGVrYSBkb2NoIFNjaGxpZXNzZmFlY2hlciwgd28gc2llIGlocmVuIEtyYW0gZHJpbiBsYXNzZW4ga29lbm5lbiB1bmQgd28KYXVzc2VyIGlobmVuIGtlaW5lciByYW5rb21tdC4KV0VOTiBkaWNoIGRpZSBQcm9ibGVtYXRpayBpbnRlcmVzc2llcnQgaGFzdCBkdSBhbHMgTWFnaWVyIGRvY2ggYWxsZSBNaXR0ZWwgaW4KZGVyIEhhbmQsIGV0d2FzIGRhZ2VnZW4genUgdHVuLi4uCgpWYXJsKiwgMiBNdWVuemVuIGluIGRpZSBSdW5kZSB3ZXJmZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEaWVic3RhZWhsZSAoU2NobGVpY2hlciwgIDMuIE1haSAyMDAyLCAxNDoyOToyMyk6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTAyMDQyODg4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0MTQ5NTcKRHUgbWVpbnN0IGRpZSBSYWV1bWUgZGllIHNlaXQgMyBNb25hdGVuIGF1ZiBBYm5haG1lIHdhcnRlbiBpbmNsLgpTY2hsaWVzc2ZhZWNoZXI/IEhBUiBIQVIhISEKU2NobGVpY2hlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGllYnN0YWVobGUgKE11cGZlbCwgIDMuIE1haSAyMDAyLCAxNDozNTozNik6Cn4jISBybj1TY2hsZWljaGVyIHJ0PTEwMjA0Mjg0NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDE0OTU3ClNvLCBEVSBsYWdlcnN0IGFsc28gRGVpbiBaZXVnIHdvIGtlaW4gYW5kZXJlciByZWlua29tbXQ/IEFsc28gZG9jaCB2ZXJtdXRsaWNoCmltIEhvdGVsPyBOZWluPyBEb2NoIG5pY2h0IGV0d2EgaW4gZGVuIHZvbiBEaXIgZ2VzY2hyaWViZW5lbiBHZWJpZXRlbiBtaXQKRWluZ2FlbmdlbiBkaWUgIm5vcm1hbGUiIFNwaWVsZXIgbmljaHQgZmluZGVuICh3ZWlsIGtlaW4gRGV0YWlsIHVuZCBzb25zdCBuaXgKZHJhdWYgaGlud2Vpc3QpPyBXbyBkYXMgU2VoZXJoYXVzIHZvbiBEZWluZW0gU3BpZWxlcjJ0aSB1bmQgZGllIEhhZXVzZXIKZWluaWdlciAiYXVzZXJ3YWVobHRlciIgU2VoZXIgc3RlaGVuPyBXbyBEdSBtaXRsb2dnc3Qgd2VyIGRhIHJlaW5rb21tdCB1bmQKbmljaHQgYXVzZXJ3YWVobHQgaXN0PyBOZWluLCBuYXR1ZXJsaWNoIG5pY2h0IDspIER1IGxhZXNzdCBEZWluZSBTYWNoZW4gaW0KSG90ZWwgOykKRHUgYmlzdCBkb2NoIE1hZ2llciwgZGFyZnQgRmVybndlc3QgdmVyc2Nob2VuZXJuLiBXYXJ1bSBtYWNoc3QgRHUgbmljaHQgYXVjaApzbyduIEhvdGVsIGhpbiwgZGFtaXQgYWxsIGRpZSBrbGVpbmVuIFNwaWVsZXIgbmljaHQgaW1tZXIgZGllIGxhbmdlIFJlaXNlIG1pdApkZXIgS2FyYXdhbmUgbWFjaGVuIG11ZXNzZW4gdW0gaWhyZSBTYWNoZW4gYW4gc2ljaGVyZW4gT3J0ZW4genUgbGFnZXJuPwoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGllYnN0YWVobGUgKERlZXBibHVlLCAgMy4gTWFpIDIwMDIsIDE2OjUxOjIyKToKfiMhIHJuPVZhcmRpb24gcnQ9MTAyMDQyOTAzNiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMjA0MTQ5NTcKV2VyIHNldHp0IG5lbiBIb3RlbCBuYWNoIFhpYW4uIERhbWl0IGRpZSBrbGVpbmVuIEthcmF0ZWthLCBkaWUgbmllIGRhcwpGZXN0bGFuZCBnZXNlaGVuIGhhYmVubSBhdWNoIGluIGRlbiBHZW51c3Mga29tbWVuPwoKRGVlcCosIHNpY2ggYXVmIGRpZSB6dWdlaG9lcmlnZW4gR2Vpc2hhcyBmcmV1ZW5kIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGllYnN0YWVobGUgKE55eCwgIDMuIE1haSAyMDAyLCAxNzo1MDozNik6Cn4jISBybj1NdXBmZWwgcnQ9MTAyMDQyOTMzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0MTQ5NTcKSGFidCBpaHIgc29uc3Qgbml4IHp1IHR1biwgYWxzIEV1Y2ggZ2VnZW5zZWl0aWcgZGFzIExlYmVuIHNjaHdlciB6dSBtYWNoZW4/CkRhcyBpc3QgbGFjaGhhZnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEaWVic3RhZWhsZSAoTW9udGFudXMsICAzLiBNYWkgMjAwMiwgMTc6NTE6MjYpOgp+IyEgcm49Tnl4IHJ0PTEwMjA0NDEwMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDE0OTU3CldpZXNvIHNjaHdlciBtYWNoZW4/IERpZSwgZGllIFNhY2hlbiBpcmdlbmR3byB3ZWd3ZXJmZW4sIG1hY2hlbiBhbmRlcmVuIGRhcwpMZWJlbiBsZWljaHQuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRGllYnN0YWVobGUgKE9sbGksICAzLiBNYWkgMjAwMiwgMTc6NTE6NTUpOgp+IyEgcm49TW9udGFudXMgcnQ9MTAyMDQ0MTA4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0MTQ5NTcKRGEgZmFlbGx0IG1pciBlaW4sIGljaCBoYXR0ZSBzY2hvbiBpbW1lciBlaW5lbiBPcnQgZ2VzdWNodCwgd28gaWNoCidlbnRzb3JnZScgdWViZW4ga2Fubi4uLi4KCk9sbGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERpZWJzdGFlaGxlIChQdWssICAzLiBNYWkgMjAwMiwgMTg6MzM6NTMpOgp+IyEgcm49Tnl4IHJ0PTEwMjA0NDEwMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDE0OTU3CkhuZ2wsIE55eCBsYXNzIG1pciBtZWluZSB1bnRlcmhhbHR1bmcgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IERpZWJzdGFlaGxlIChSYWduYXJvZWssICAzLiBNYWkgMjAwMiwgMTg6NDE6MTcpOgp+IyEgcm49UHVrIHJ0PTEwMjA0NDM2MzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDE0OTU3CgpBbHNvIGljaCBmaW5kZSBMZWljaGVuLUZsYWVkZGVybiByb2xsZW5zcGllbHRlY2huaXNjaCBhYnNvbHV0Cm9rLCB3ZW5ucyB6dW0gQ2hhcmFrdGVyIHBhc3N0LiBXZW5uIGljaCBTcGllbGVyIHdhZXJlIHd1ZXJkZSAKaWNoIGRhcyBzaWNoZXIgYXVjaCBtaXQgQmVnZWlzdGVydW5nIHR1bi4gV2VubiBlaW4gU3BpZWxlciAKc3RpcmJ0IGlzc2VyIHNlbGJzdCBzY2h1bGQgdW5kIGVyIHNvbGx0ZSBmcm9oIHNlaW4sIGRhc3MgaWhtCm1pdCBuZW0gVG9kIG5pY2h0IG1laHIgcGFzc2llcnQuCktsYXVlbiBmaW5kIGljaCBhdWNoIG9rLCBzY2hsaWVzc2xpY2ggaXN0IGplZGVyIFNwaWVsZXIgZnVlcgpzZWluIFpldWcgc2VsYnN0IHZlcmFudHdvcnRsaWNoLiBXbyBpc3QgZGFzIFByb2JsZW0/IFdpciBzaW5kCmVpbiBNVUQsIHVuZCBkYSBnaWJ0cyBuaWNodCBudXIgJ2RpZSBHdXRlbicgOykKCkVyZ2ViZW5zdCwKOnJhZ25hOgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRGllYnN0YWVobGUgKE9ya3RvZXRlciwgIDMuIE1haSAyMDAyLCAxODo0MzoxMyk6Cn4jISBybj1SYWduYXJvZWsgcnQ9MTAyMDQ0NDA3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0MTQ5NTcKVGphLi4gaW0gUHJpbnppcCBoYXN0IGR1IG5pY2h0IHVucmVjaHQsIG51ciB3byB6aWVoc3QgZHUgZGllIEdyZW56ZT8KV2VubiBkdSB3aXJrbGljaCBtaXQgUm9sbGVuc3BpZWwgYXJndW1lbnRpZXJzdCwgbXVlc3N0ZW4gaGllciBhdWNoIFBLIGVybGF1YnQKc2Vpbi4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBEaWVic3RhZWhsZSAoRWxiZXJldCwgIDMuIE1haSAyMDAyLCAxODo0NToxMik6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAyMDQ0NDE5MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0MTQ5NTcKaWNoIGZpbmQgamEsIGRhc3MgZXMgbmVuIHVudGVyc2NoaWVkIGlzdCwgbmUgbGVpY2hlIHp1IGZsZWRkZXJuIG9kZXIgbmVuIHBha2V0CndhcyBydW1saWVndC4gQWxzIGtsZWluZXIgc3BpZWxlciBoYWIgaWNoIGphIGF1Y2ggbGVpY2hlbiBnZWZsZWRkZXJ0LCBpY2gKZGFjaHRlLCBkYXMgbGllZ3QgZGEgc28gcnVtLiBCaXMgbWljaCBlaW5lciB0aWVyaXNjaCBhbmdlc2NobmF1dHp0IGhhdC4gSGFiCm1pY2ggZGFubiB6d2FyIG5pY2h0IG1laHIgZ2V0cmF1dCwgaXJnZW5kd2FzIGFuenVmYXNzZW4gZnVlciBtZWhyZXJlIFdvY2hlbiwKYWJlciBzbyBpc3QgZGFzIG51biBtYWwgOykKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgMy4gTWFpIDIwMDIsIDE5OjA4OjIwKToKaGF0IHNpY2ggZGllIEhhYXJlIGJsb25kIGdlZmFlcmJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDE5OjA4OjQ4KToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ0NTcwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKbW9tZW50LCB3ZXIgc29sbCBkYXMgc2VpbiA6KQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgIDMuIE1haSAyMDAyLCAxOTowOTo1Mik6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjA0NDU3Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCkljaCBzYWcgZGEgbml4IGRhenUsIGdlbGwgRWxiaSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDMuIE1haSAyMDAyLCAxOToxMDowOCk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjA0NDU3Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCmRpZSBmcmFnZSBpc3Qgd29obCBlaGVyIFdBUlVNIHNvbGx0ZSBkYXMgZWluIG5pY2h0IG5hZWhlciBnZWFubnRlciBtdWRkZXIgdHVuCjopKSkKCmxlaWJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoRWxiZXJldCwgIDMuIE1haSAyMDAyLCAxOToxMDozNik6Cn4jISBybj1MZWlibml6IHJ0PTEwMjA0NDU4MDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCmlzdCBkaWUgZnJhZ2UgbmljaHQsIHdhcnVtIGVyIGVpZ2VudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnQgd2lyZD8gOikKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgMy4gTWFpIDIwMDIsIDE5OjEwOjUwKToKfiMhIHJuPUxlaWJuaXogcnQ9MTAyMDQ0NTgwOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKVW0gZWluZXIgbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVuIE11ZGRlcmluIC0gd2VsY2hlIGF1cwp1bmVyZmluZGxpY2hlbiBncnVlbmRlbiBhdWYgYmxvbmQgc3RlaHQgLSB6dSBnZWZhbGxlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDE5OjExOjMyKToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ0NTg1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKYWJlciBkaWUgc3RlaHQgYXVmIHNvb29vb29vb29vb29vb29vb29vb29vb29vIHN1ZXNzZSwgZGFzcyBpc3QgZGVyIG5hbWVudGxpY2gKbmljaHQgZ2VuYW5udGUgbXVkZGVyIGFiZXIgbmljaHQgOykKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChMZWlibml6LCAgMy4gTWFpIDIwMDIsIDE5OjExOjM2KToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ0NTg1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKZ2lidHMgaGllciBtdWRkZXJpbmVuPz8/PwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDE5OjEyOjMxKToKfiMhIHJuPUxlaWJuaXogcnQ9MTAyMDQ0NTg5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKam8sIHdlbGNoZSBkaWUgc29vb29vb29vb29vb29vb29vb29vIHN1ZXNzZSBzb29vb29vb29vb29vb29vb29vb28gc3Vlc3MgZmluZGVuCgpFbGJpIChub2NoIG5lbiBwYWFyIG9vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb28nc3NwZW5kaWVyZW5kICkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgMy4gTWFpIDIwMDIsIDE5OjEzOjIxKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMDQ0NTk1MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKU3RlbGx0IHNpY2ggZGllIGZyYWdlLCBhYmVyIGJldHJlZmZlbmRlciBNdWRkZXIgaGlucmVpY2hlbmQgc3Vlc3MgaXN0LCB1bSBtaXQKYmxvbmRlbiBIYWFyZW4gc29vb29vb29vb29vb29vb29vb28gc3Vlc3MgenUgZXJzY2hlaW5lbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEVsYmVyZXQsICAzLiBNYWkgMjAwMiwgMTk6MTM6MzgpOgp+IyEgcm49SW1kYSBydD0xMDIwNDQ2MDAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApkaWUgYW50d29ydCBsYXV0ZXQgbmVpbgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEltZGEsICAzLiBNYWkgMjAwMiwgMTk6MTU6MzIpOgp+IyEgcm49RWxiZXJldCBydD0xMDIwNDQ2MDE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApJbW1lcmhpbiBoYXQgc2llIGlobiBhdWYgZWluZW4gU3RhbW10aXNjaCBlaW5nZWxhZGVuLiBIYXQgc2llIG5pZSBnZW1hY2h0LCBhbHMKZXIgbm9jaCBkaWUgYWx0ZSBoYWFyZmFyYmUgaGF0dGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDMuIE1haSAyMDAyLCAxOToxNTozNCk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjA0NDYwMTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCm1laW5lcyB3aXNzZW5zLCBrb21tdCBkaWVzZXIgbmljaHQgbmFlaGVyIGdlbmFubnRlIG11ZGRlciB6dW0gbmFlY2hzdGVuIHN0YXRpCihwZmluZ2Vuc3Rlbj8/PykgbmFjaCBzCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEVsYmVyZXQsICAzLiBNYWkgMjAwMiwgMTk6MTY6MzMpOgp+IyEgcm49TGVpYm5peiBydD0xMDIwNDQ2MTM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMAp1bmQgd2VubiBkaWVzZXIgbmljaHQgbmFlaGVyIGdlbmFubnRlIG11ZGRlciBkYW5uIGRvY2gga2VpbmUgYmxvbmRlbiBoYWFyZQpoYXQsIG11c3MgZXIgZGFubiB3aWVkZXIgZmFocmVuPwoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgMy4gTWFpIDIwMDIsIDE5OjE2OjU3KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMDQ0NjE5MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKRGFubiBpc3QgZGllIG5pY2h0IG5hZWhlciBnZW5hbm50ZSBtdWRkZXJpbiBnYW56IHNjaG9lbiB0cmF1cmlnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEVsYmVyZXQsICAzLiBNYWkgMjAwMiwgMTk6MTc6MjkpOgp+IyEgcm49SW1kYSBydD0xMDIwNDQ2MjE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApkYW5uIGZhZWhydCBkZXIgaGFsdCBuYWNoIEx5b24KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgIDMuIE1haSAyMDAyLCAxOToxNzo1NSk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjA0NDYyNDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCkRhIGdpYmJlZCBNdWRkZXJpbm5lbiwgZGllIGF1ZiBCcnVlbmV0dGUgc3RlaGVuID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDMuIE1haSAyMDAyLCAxOToxODoyOSk6Cn4jISBybj1JbWRhIHJ0PTEwMjA0NDYyNzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCmxhZXNzdCBzaWNoIGJlc3RpbW10IGVpbmUgZmluZGVuIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgMy4gTWFpIDIwMDIsIDE5OjE5OjE5KToKfiMhIHJuPUxlaWJuaXogcnQ9MTAyMDQ0NjMwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKOnNwZW5kaWVydCBuZSBQYWNrdW5nIEgyTzIgZnVlciBSZV41MAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChMZWlibml6LCAgMy4gTWFpIDIwMDIsIDE5OjE5OjQzKToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ0NjM1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKZWluIHdob3BwZXIgd2FlciBtaXIgbGllYmVyCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDE5OjE5OjQ3KToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ0NjM1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKaG1tLCBzcGVuZGllciBkaWUgbGllYmVyIGRlbSBuaWNodCBuYWVoZXIgZ2VuYW5udGVuIG11ZGRlcgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDE5OjIwOjEzKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMDQ0NjM4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKaG1tLCBpbWRhIGRpZSA2IGRvcHBlbHdob3BwZXIsIHdlbm4gbWVyIGRhcyBtYWNoZW4ga29tbSBpY2ggYXVjaCBuYWNoIFMKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDMuIE1haSAyMDAyLCAxOToyMDoxNSk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjA0NDYzODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCndlciBhdWNoIGltbWVyIGRhcyBpc3QgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEltZGEsICAzLiBNYWkgMjAwMiwgMTk6MjA6MzEpOgp+IyEgcm49RWxiZXJldCBydD0xMDIwNDQ2Mzg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApBbHNvLCBpY2ggc3BlbmRpZXIgZGVyIG11ZGRlcmluIGRlbiB3aG9wcGVyLCB1bmQgZGVtIG11ZGRlciBkYXMKaDJvMithbndlbmR1bmcuIERhcyBpc3QgYWJlciB1bnRyZW5uYmFyIG1pdG5hbmRlciB2ZXJidW5kZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDMuIE1haSAyMDAyLCAxOToyMTowMSk6Cn4jISBybj1JbWRhIHJ0PTEwMjA0NDY0MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCmdpYnQgamEgYmFsZCBlaW5lbiBidXJnZXIga2luZyBpbiBkZXIgaW5uZW5zdGFkdCAqZnJldSoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEltZGEsICAzLiBNYWkgMjAwMiwgMTk6MjE6MTcpOgp+IyEgcm49TGVpYm5peiBydD0xMDIwNDQ2NDYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApVbmQgZGVyIGhhdCBibG9uZGUgQmVkaWVudW5nZW4gPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDE5OjIxOjM1KToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ0NjQ3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKZGllIHNvb29vb29vb29vb29vb29vb29vb28gc3Vlc3Mgc2luZD8gCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEltZGEsICAzLiBNYWkgMjAwMiwgMTk6MjE6NTkpOgp+IyEgcm49RWxiZXJldCBydD0xMDIwNDQ2NDk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApWaWVsZWljaHQgc29sbHRlIHNpY2ggZGVyIG5pY2h0IGdlbmFubnRlIE11ZGRlciBhbHMgQmVkaWVudW5nIGJlaSBCSyBiZXdlcmJlbgo/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKExlaWJuaXosICAzLiBNYWkgMjAwMiwgMTk6MjI6MDEpOgp+IyEgcm49SW1kYSBydD0xMDIwNDQ2NDc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMAphcmJlaXRldCBldHdhIGRlciBuaWNodCBuYWVoZXIgZ2VuYW5udGUgbXVkZGVyIGJlaSBidXJnZXIga2luZz8KZGFzIHdhZXIgbWlyIG5ldQoKYWJlciB2aWVsbGVpY2h0IGFyYmVpdGV0IGRhIGphIERJRSBiZWRpZW51bmcgKmcqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgMy4gTWFpIDIwMDIsIDE5OjIyOjM5KToKfiMhIHJuPUxlaWJuaXogcnQ9MTAyMDQ0NjUyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKRGllIG1peHQgamV0enQgbWlsY2hza2FlcyBpbSBCSyA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKExlaWJuaXosICAzLiBNYWkgMjAwMiwgMTk6MjM6MTkpOgp+IyEgcm49SW1kYSBydD0xMDIwNDQ2NTU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApkYSB3YWVyIGVyIGFiZXIgZW5vcm0gdW50ZXJmb3JkZXJ0IHNjaGFldHogaWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEltZGEsICAzLiBNYWkgMjAwMiwgMTk6MjM6NTMpOgp+IyEgcm49TGVpYm5peiBydD0xMDIwNDQ2NTk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApNYWcgc2Vpbi4gYWJlciBuYWNoIHdpZSB2b3IgYmxvbmQsIG9kZXIgPyBTZWlkIHdhbm4gaW50ZXJlc3NpZXJuIHNpY2gKbXVkZGVyaW5uZW4gZnVlciBpbm5lcmUgV2VydGUgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDE5OjI0OjA5KToKfiMhIHJuPUxlaWJuaXogcnQ9MTAyMDQ0NjU5OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKd2VyIGpldHp0IGRlciBuaWNodCBuYWVoZXIgZ2VuYW5udGUgbmljaHQgc29vb29vb29vb29vb29vbyBzdWVzc2UgbXVkZGVyIG9kZXIKZGVyIG5hZWhlciBnZW5hbm50ZSBuaWNodCBnZW5hdWVyIGJla2FubnRlIGFiZXIgc29vb29vb29vb29vbyBzdWVzc2Uga2VybD8KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDMuIE1haSAyMDAyLCAxOToyNDoxMCk6Cn4jISBybj1JbWRhIHJ0PTEwMjA0NDY2MzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCmloaGggaW5uZXJlIHdlcnRlIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgMy4gTWFpIDIwMDIsIDE5OjI0OjQzKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMDQ0NjY0OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKRGllc2VyIHNhdHoga2VpbiB2ZXJiID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoUm9uZGEsICAzLiBNYWkgMjAwMiwgMTk6MjQ6NTcpOgp+IyEgcm49TGVpYm5peiBydD0xMDIwNDQ2NjUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApHZW5hdS4gV2llIGJlaW0gV2hvcHBlci4gRGEga29tbXRzIGF1Y2ggYXVmIGRpZSBpbm5lcmVuIFdlcnRlIGFuLCBMZWliaS4uLgoKUm9uZGEgKmltbWVyIG5vY2gga2VpbmUgQWhudW5nIGhhYmVuZCwgdW0gd2VucyBnZWh0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDE5OjI1OjAxKToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ0NjY4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKZHUgcmVjaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgIDMuIE1haSAyMDAyLCAxOToyNTozNyk6Cn4jISBybj1Sb25kYSBydD0xMDIwNDQ2Njk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApBYmVyIGRlbiBXaG9wcGVyIGthbW1hIHNpY2ggc28genVzYW1tZW5iYXVuIGxhc3Nlbiwgd2llIG1hIHdpbGwuIGRlbiBNdWRkZXIKbmljaHQsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChMZWlibml6LCAgMy4gTWFpIDIwMDIsIDE5OjI1OjU1KToKfiMhIHJuPVJvbmRhIHJ0PTEwMjA0NDY2OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCmdlbmF1LCBvaG5lIGd1cmtlIGxhZXVmdCBuaXgKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEltZGEsICAzLiBNYWkgMjAwMiwgMTk6MjY6MDcpOgp+IyEgcm49TGVpYm5peiBydD0xMDIwNDQ2NzU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApCZWltIE11ZGRlciA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKExlaWJuaXosICAzLiBNYWkgMjAwMiwgMTk6MjY6MjEpOgp+IyEgcm49SW1kYSBydD0xMDIwNDQ2NzY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApkYXMgaGFzdCBkdSBnZXNhZ3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgIDMuIE1haSAyMDAyLCAxOToyNzoxMCk6Cn4jISBybj1MZWlibml6IHJ0PTEwMjA0NDY3ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCldlaXNzIG5lZC4gaWNoIGhhYiBkaWUgV2hvcHBlciB1bmQgTXVkZGVyIGltbWVyIGxpZWJlciBvaG5lIGd1cmtlLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEVsYmVyZXQsICAzLiBNYWkgMjAwMiwgMTk6Mjc6MzQpOgp+IyEgcm49SW1kYSBydD0xMDIwNDQ2ODMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMAp3YXMgaXN0IG51biBtaXQgZGVuIDYgRG9wcGVsd2hvcHBlciwgYWx0ZXJuYXRpdiBkaWUgc2NoZWliZSBUb2FzdGJyb3QgOykKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDMuIE1haSAyMDAyLCAxOToyNzozOCk6Cn4jISBybj1JbWRhIHJ0PTEwMjA0NDY4MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCmljaCBzdGVoIGF1Y2ggZWhlciBhdWYgZGllIHRvbWF0ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgMy4gTWFpIDIwMDIsIDE5OjI4OjE3KToKfiMhIHJuPUxlaWJuaXogcnQ9MTAyMDQ0Njg1OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKJiBkb3BwZWx3aG9wcGVyIG1pdCBHdXJrZSBmdWVyIE11ZGRlciB1bmQgTXVkZGVyaW4sIHVuZCBmdWVyIHNpZSBuZSBleHRyYQp0b21hdGUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDMuIE1haSAyMDAyLCAxOToyODo0MSk6Cn4jISBybj1JbWRhIHJ0PTEwMjA0NDY4OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCmRpZSBpc3QgYXVmIGRlbSB3aG9wcGVyIGRvY2ggc2Nob24gZHJhdWYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMyOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoRWxiZXJldCwgIDMuIE1haSAyMDAyLCAxOToyOTowMSk6Cn4jISBybj1MZWlibml6IHJ0PTEwMjA0NDY5MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCnVuZCBkaWUgZ3Vya2U/CgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMzogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKExlaWJuaXosICAzLiBNYWkgMjAwMiwgMTk6Mjk6MTApOgp+IyEgcm49RWxiZXJldCBydD0xMDIwNDQ2OTQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApkaWUgYXVjaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzQ6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDE5OjI5OjIxKToKfiMhIHJuPUxlaWJuaXogcnQ9MTAyMDQ0Njk1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKZ3Jvc3M/CgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNTogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEltZGEsICAzLiBNYWkgMjAwMiwgMTk6Mjk6NTgpOgp+IyEgcm49RWxiZXJldCBydD0xMDIwNDQ2OTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApEaWUgaXN0IHVudHJlbm5iYXJlciBCZXN0YW5kdGVpbCB2b24gYmVpZGVtLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzU6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChMZWlibml6LCAgMy4gTWFpIDIwMDIsIDE5OjMwOjA2KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMDQ0Njk2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKdmllbGxlaWNodCBpc3Qgb2xsaSAoZGVyIHNpY2ggamEgc2Nob24gYWxzIGRyb2xsaSBnZW91dGV0IGhhdCkgZGVyIG5pY2h0Cm5hZWhlciBnZW5hbm50ZSBtdWRkZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNjogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEltZGEsICAzLiBNYWkgMjAwMiwgMTk6MzA6MjkpOgp+IyEgcm49TGVpYm5peiBydD0xMDIwNDQ3MDA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMAppcyBkZXIgYmxvbmQgdW5kIG1pdCB0b21hdGUgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzY6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDE5OjMwOjQwKToKfiMhIHJuPUxlaWJuaXogcnQ9MTAyMDQ0NzAwNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKT2xsaSBpc3QgYWJlciBuaWNodCBibG9uZCwgb2Rlcj8gYXVzc2VyZGVtIGlzdCBlciBqYSBqZXR6dCBuYWVoZXIgZ2VuYW5udCB1bmQKa2FubiBkYW1pdCBkb2NoIG5jaWh0IGRlciBuaWNodCBuYWVoZXIgZ2VuYW5udGUgbXVkZGVyIHNlaW4sIG9kZXI/CgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNzogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEltZGEsICAzLiBNYWkgMjAwMiwgMTk6MzE6MDYpOgp+IyEgcm49RWxiZXJldCBydD0xMDIwNDQ3MDQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApEYXMgZW50YmVocnQgbmljaHQgZWluZXIgZ2V3aXNzZW4gbG9naWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM3OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDMuIE1haSAyMDAyLCAxOTozMTowOCk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjA0NDcwNDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCmFiZXIgYmxvbmQgaXNzZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM4OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgIDMuIE1haSAyMDAyLCAxOTozMToyOCk6Cn4jISBybj1MZWlibml6IHJ0PTEwMjA0NDcwNjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCkZlaGx0IG5vY2ggZGllIGd1cmtlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzg6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDE5OjMxOjMwKToKfiMhIHJuPUxlaWJuaXogcnQ9MTAyMDQ0NzA2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKYWJlciBzbyBibG9uZCBiaW4gaWNoIGF1Y2gKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM5OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgIDMuIE1haSAyMDAyLCAxOTozMTo1Nik6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjA0NDcwOTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCnZvcmhlciBvZGVyIG5hY2hoZXIgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDA6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDE5OjMyOjA4KToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ0NzExNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKZGF6d2lzY2hlbgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDE6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgMy4gTWFpIDIwMDIsIDE5OjMyOjM4KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMDQ0NzEyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKU3RyYWVobmNoZW4gYWxzbyA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MjogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKExlaWJuaXosICAzLiBNYWkgMjAwMiwgMTk6MzM6MTgpOgp+IyEgcm49SW1kYSBydD0xMDIwNDQ3MTU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApoYWIgaWNoIGF1Y2ggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQyOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoQXN0YXJ0ZSwgIDMuIE1haSAyMDAyLCAxOTozMzoyMCk6Cn4jISBybj1JbWRhIHJ0PTEwMjA0NDcxNTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCndhZWggc3RyYWVuY2hlbiBzYW4gZG9jaCBhYnNvbHV0IGVrbGlnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MzogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKExlaWJuaXosICAzLiBNYWkgMjAwMiwgMTk6MzM6MzkpOgp+IyEgcm49QXN0YXJ0ZSBydD0xMDIwNDQ3MjAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApwZmZmZmYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQzOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgIDMuIE1haSAyMDAyLCAxOTozMzo0Myk6Cn4jISBybj1Bc3RhcnRlIHJ0PTEwMjA0NDcyMDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCndpbGxzdCBkdSBoaWVyIGVpbmUgbmljaHQgbmFoZXIgZ2VuYW5udGUgbXVkZGVyaW4gYmVsZWlkaWdlbiA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MzogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEVsYmVyZXQsICAzLiBNYWkgMjAwMiwgMTk6MzM6NDUpOgp+IyEgcm49QXN0YXJ0ZSBydD0xMDIwNDQ3MjAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApndXQgZGFzcyBpY2ggbmNpaHQgYmxvbmQgYmluIDspCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MzogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKE9sbGksICAzLiBNYWkgMjAwMiwgMTk6MzM6NTcpOgp+IyEgcm49QXN0YXJ0ZSBydD0xMDIwNDQ3MjAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApEYSBpY2ggbnVuIG5hZWhlciBnZW5hbm50IGJpbiwga2FubiBpY2hzIGphIG5pY2ggc2Vpbi4gQWJlciBlaW5zIG11c3MKaWNoIG5vY2ggc2FnZW46IElDSCBCSU4gTklDSFQgRFJPTExJISA6KQoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDQ6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgMy4gTWFpIDIwMDIsIDE5OjM0OjE1KToKfiMhIHJuPU9sbGkgcnQ9MTAyMDQ0NzIzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKR3JldWVscHJvcGFnYW5kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDU6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDE5OjM0OjI3KToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ0NzI1NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKZ2xlaWNoIGdpYnRzIHdob3BwZXIgOykKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ0OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgIDMuIE1haSAyMDAyLCAxOTozNDozMyk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjA0NDcyMjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCm5vY2ggbmljaHQgZWxiaSwgbm9jaCBuaWNodC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDU6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChMZWlibml6LCAgMy4gTWFpIDIwMDIsIDE5OjM0OjQ5KToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ0NzI3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKenUgd2VsY2hlbSBiayBmYWhyZW4gd2lyID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ2OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgIDMuIE1haSAyMDAyLCAxOTozNDo1MSk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjA0NDcyNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCm5lZWUgSDJvMgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDU6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDE5OjM0OjUzKToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ0NzI3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKc28gd2llIGR1IHJlaGUgc2NoYWVuZGVzdCBkYXVlcnQgZGFzIGF1Y2ggbm9jaCA7KQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDY6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDE5OjM1OjE3KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMDQ0NzI5MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKaG0sIGluIG1lZ2FzY2htYXJybiBnZWh0IGRhcyBiZXNzZXIKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ2OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoT2xsaSwgIDMuIE1haSAyMDAyLCAxOTozNToxOSk6Cn4jISBybj1MZWlibml6IHJ0PTEwMjA0NDcyODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCkRhIHdvIGljaCBhdWNoIG1hbCBmaXggaGluZmFocmVuIGthbm4uIEljaCBrb2VubnQgaGllciBlaW5lbgplbXBmZWhsZW4gOikKCk9sbGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ3OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgIDMuIE1haSAyMDAyLCAxOTozNTozNSk6Cn4jISBybj1PbGxpIHJ0PTEwMjA0NDczMTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCmljaCBibG9uZGllciBob2VjaHN0ZW5zIHJlaGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ4OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoRWxiZXJldCwgIDMuIE1haSAyMDAyLCAxOTozNTo0NSk6Cn4jISBybj1JbWRhIHJ0PTEwMjA0NDczMzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCmFybWVyIGJhbWJpCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40NzogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKFJvbmRhLCAgMy4gTWFpIDIwMDIsIDE5OjM1OjU3KToKfiMhIHJuPU9sbGkgcnQ9MTAyMDQ0NzMxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKSG1tLi4uIFNhZ3QgQmVzY2hlaWQgd2FubiBJaHIgZGFzIG1hY2h0Li4uIGljaCBrZW5uIHNlaXQgbGV0enRlbSBXb2NoZW5lbmRlCm5lbiBwYWFyIG5ldHRlIEtuZWlwZW4gaW4gU3R1dHRnYXJ0IDstKQoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ5OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoRWxiZXJldCwgIDMuIE1haSAyMDAyLCAxOTozNjowMSk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjA0NDczNDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCndob3BwZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OTogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKExlaWJuaXosICAzLiBNYWkgMjAwMiwgMTk6MzY6MDMpOgp+IyEgcm49RWxiZXJldCBydD0xMDIwNDQ3MzQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMAptZWluIHdob3BwZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ5OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoT2xsaSwgIDMuIE1haSAyMDAyLCAxOTozNjowNSk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjA0NDczNDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCk51ciBtYWwgYWxzIFp3aXNjaGVucnVmOiBNdXV1dXV1dXV1dXVoLiBOaWNoIGRhc3MgaGllciBkaWUgUmVoZQp1ZWJlcmhhbmQgbmVobWVuLgoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTA6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChSb25kYSwgIDMuIE1haSAyMDAyLCAxOTozNjoxMyk6Cn4jISBybj1PbGxpIHJ0PTEwMjA0NDczNjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCldob3BwZXIhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41MTogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEltZGEsICAzLiBNYWkgMjAwMiwgMTk6MzY6MzcpOgp+IyEgcm49Um9uZGEgcnQ9MTAyMDQ0NzM3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKR3JhdHVsaWVyZSwgcm9uZGEsIGVpbmUgUGFja3VuZyBIMk8yK0Fud2VuZHVuZyBmdWVyIERpY2guLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUyOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoUm9uZGEsICAzLiBNYWkgMjAwMiwgMTk6Mzk6MjApOgp+IyEgcm49SW1kYSBydD0xMDIwNDQ3Mzk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApJY2ggd2lsbCBhYmVyIGRlbiBXaG9wcGVyISEhIERhcyBIMk8yIGthbm4gc2ljaCBuZW4gbWFlbm5saWNoZXIgTXVkZGVyIGluIGRpZQpIYWFyZSBzY2htaWVyZW4uIFZhcmxhcmlvbiwgd2llIHdhZXJzIG1pdCBEaXI/CgpSb25kYSAqaHVuZ3JpZyEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41MzogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKE11cGZlbCwgIDMuIE1haSAyMDAyLCAxOTozOTo1MCk6Cn4jISBybj1Sb25kYSBydD0xMDIwNDQ3NTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMAp3YXMgZ2lidHMgZnVlciBSZV4xMDAgPwoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUzOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgIDMuIE1haSAyMDAyLCAxOTozOTo1OCk6Cn4jISBybj1Sb25kYSBydD0xMDIwNDQ3NTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApBdWYgcmVeNTAgd2FyIGRhcyBoMm8yIGF1c2dlc2V0enQuIGFiZXIgZHUga2FubnN0IGVzIGphIGZ1ZXIgcmVeMTAwIG5ldQphdXNzZXR6ZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU0OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoT2xsaSwgIDMuIE1haSAyMDAyLCAxOTo0MDoxOSk6Cn4jISBybj1JbWRhIHJ0PTEwMjA0NDc1OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCkljaCBiaW4gaGV1dCBzcGVuZGFiZWw6IGdpYnQgZWluIEd1bW1pYmFlcmNoZW4uCgpPbGxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41NTogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEltZGEsICAzLiBNYWkgMjAwMiwgMTk6NDA6NDkpOgp+IyEgcm49T2xsaSBydD0xMDIwNDQ3NjE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApFaW4gZ3VtbWliYWVyY2hlbiA/IElzIGRhcyBibG9uZCA/IG5hIGRhbm4gbG9zLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41NDogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKFJvbmRhLCAgMy4gTWFpIDIwMDIsIDE5OjQwOjU5KToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ0NzU5OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKLi4uIHVuZCBpY2ggZGFjaHRlLCBkYXMgUmVeNTAgd2FlcmUgdW0gbmVuIFdob3BwZXIgdW5kIG5lIG5pZWRsaWNoZSBNdWRkZXJpbgplcndlaXRlcnQgd29yZGVuPwoKUm9uZGEgKkJhZWgsIGljaCBoYXNzZSBlcyB3ZW5uIGRpZSBTcGllbHJlZ2VsbiBnZWFlbmRlcnQgd2VyZGVuIHVuZCBpY2hzIG5pY2h0Cm1pdGtyaWVnZSEgOy0pICoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU2OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoT2xsaSwgIDMuIE1haSAyMDAyLCAxOTo0MTowMSk6Cn4jISBybj1JbWRhIHJ0PTEwMjA0NDc2NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCk5laW4sIGRhcyBpcyBuaWNodCBuYWVoZXIgZ2VuYW5udC4KCk9sbGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU3OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoRWxiZXJldCwgIDMuIE1haSAyMDAyLCAxOTo0MTozOSk6Cn4jISBybj1PbGxpIHJ0PTEwMjA0NDc2NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCndpciBoYWJlbiBuaWUgdm9uIG5pZWRsaWNoIGdlcmVkZXQsIG51ciB2b24Kc29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vbyBzdWVzcyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTg6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgMy4gTWFpIDIwMDIsIDE5OjQxOjQ5KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMDQ0NzY5OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKSmFqYSwgZGllIExldXRlIGRpZSBkZW4gdGhyZWFkIG5lZCBsZXNlbiwgdW5kIHNpY2ggZGFubiBzcGFldGVyIGVpbm1pc2NoZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU3OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDMuIE1haSAyMDAyLCAxOTo0MTo1Myk6Cn4jISBybj1PbGxpIHJ0PTEwMjA0NDc2NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCmljaCBmaW5kZSBtYWwgc29sbHRlIGRpZSBuaWNodCBuYWVoZXIgZ2VuYW5udGUgYmVkaWVudW5nIGF1c3NldHplbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTg6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChPbGxpLCAgMy4gTWFpIDIwMDIsIDE5OjQxOjU5KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMDQ0NzY5OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKRGFzIEd1bW1pYmFlcmNoZW4gaXN0IGJlaWRlcy4gTmllZGxpY2ggdW5kIHZlcmRhbW10IHN1ZXNzLgoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTk6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChMZWlibml6LCAgMy4gTWFpIDIwMDIsIDE5OjQyOjI3KToKfiMhIHJuPU9sbGkgcnQ9MTAyMDQ0NzcxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKZXMgZ2luZyB1bSBzb29vb29vb29vb29vb29vb29vbyBzdWVzcyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTk6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDE5OjQyOjMxKToKfiMhIHJuPU9sbGkgcnQ9MTAyMDQ0NzcxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKdW5kIHdlbm4gc2llIGRhbm4gZGVyIG5pY2h0IG5hZWhlciBnZW5hbm50ZSBtdWRkZXIgYmVrb21tdCB1bmQgbmljaHQgZGllIG5pY2h0Cm5hZWhlciBnZW5hbm50ZSBtdWRkZXJpbj8KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjYwOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDMuIE1haSAyMDAyLCAxOTo0Mjo1OSk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjA0NDc3NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCndhcyBzb2xsIGRlciBuaWNodCBuYWVoZXIgZ2VuYW5udGUgbXVkZGVyIGRhbWl0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjA6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgMy4gTWFpIDIwMDIsIDE5OjQzOjAzKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMDQ0Nzc1MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKTWFjaHQgZG9jaCBuaXguIHNvIHN1dXV1ZWVlZWVlcyB3aWUgZGVyIGlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42MTogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEVsYmVyZXQsICAzLiBNYWkgMjAwMiwgMTk6NDM6MjEpOgp+IyEgcm49SW1kYSBydD0xMDIwNDQ3NzgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMAp2aWVsbGVpY2h0IHN0ZWh0IGRzZXIgZGFyYXVmLCBlciBzb2xsIGphIGF1Y2ggYmxvbmQgc2VpbiA7KQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjE6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChMZWlibml6LCAgMy4gTWFpIDIwMDIsIDE5OjQzOjMxKToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ0Nzc4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKZGVyIHd1ZXJkZSBpaG4gZGFubiB2aWVsbGVpY2h0IHN1ZWNodGlnIG1hY2hlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjI6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgMy4gTWFpIDIwMDIsIDE5OjQzOjU1KToKfiMhIHJuPUxlaWJuaXogcnQ9MTAyMDQ0NzgxMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKRXIga29lbm50ZSBzaWUgbmV1IGF1c3NldHplbiBmdWVyIFJlXjE1MAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjM6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChMZWlibml6LCAgMy4gTWFpIDIwMDIsIDE5OjQ0OjI4KToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ0NzgzNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKd2VyIGVyPwp1bmQgd2VyIHNpZT8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42NDogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKE9sbGksICAzLiBNYWkgMjAwMiwgMTk6NDQ6NDgpOgp+IyEgcm49TGVpYm5peiBydD0xMDIwNDQ3ODY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApEYXMgc29sbHRlc3QgRFUgZG9jaCB3aXNzZW4sIG9kZXI/IDopCgpPbGxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42NDogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEVsYmVyZXQsICAzLiBNYWkgMjAwMiwgMTk6NDU6MDQpOgp+IyEgcm49TGVpYm5peiBydD0xMDIwNDQ3ODY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApsYXV0ZXIgZnJhZ2VuLCBhYmVyIGhhdXB0c2FjaGUgc29vb29vb29vb29vb29vb29vb29vb29vIHN1ZXNzIDopCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42NTogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEltZGEsICAzLiBNYWkgMjAwMiwgMTk6NDU6MzgpOgp+IyEgcm49RWxiZXJldCBydD0xMDIwNDQ3OTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApJcyBkb2NoIGtsYXIuIHdlbm4gZGVyIG5pY2h0IG5hZWhlciBnZW5hbm50ZSBtdWRkZXIgZGllIG5hbWVubG9zZSBiZWRpZW51bmcKZ2V3aW5udCwgc2V0enQgZXIgc2llIHNvbGFuZyBuZXUgYXVzLCBiaXMgZGllIG5pY2h0IG5hZWhlciBnZW5hbm50ZSBtdWRkZXJpbgpzaWUgaGF0LiBhbGxlcyBrbGFyID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY1OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDMuIE1haSAyMDAyLCAxOTo0NjowMCk6Cn4jISBybj1PbGxpIHJ0PTEwMjA0NDc4ODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCmljaCBoYWIgZG9jaCBzdHJhZW5jaGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42NjogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEVsYmVyZXQsICAzLiBNYWkgMjAwMiwgMTk6NDY6MzApOgp+IyEgcm49TGVpYm5peiBydD0xMDIwNDQ3OTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMAp3aWVzbyBzb2xsdGUgZXIgZGFzIHR1bj8KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY3OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDMuIE1haSAyMDAyLCAxOTo0Njo0NCk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjA0NDc5OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCndlaWwgZXIgYmxvbmQgaXN0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjg6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChFbGJlcmV0LCAgMy4gTWFpIDIwMDIsIDIyOjU4OjMzKToKfiMhIHJuPUxlaWJuaXogcnQ9MTAyMDQ0ODAwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKYWNoIHVlYmVyaGF1cHQsIG1wYSB2ZXJicmVubmVuLCBkYW5uIGdpYnRzIGF1Y2gga2VpbmVuIHNjaG1hcnJuIG1laHIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OTogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEltZGEsICA0LiBNYWkgMjAwMiwgMDA6NDc6NTcpOgp+IyEgcm49RWxiZXJldCBydD0xMDIwNDU5NTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApvaGgsIHNjaG1hcnJuIHR1dCBqYSB3aWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjcwOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoT2xsaSwgIDQuIE1haSAyMDAyLCAwMDo0ODowOSk6Cn4jISBybj1JbWRhIHJ0PTEwMjA0NjYwNzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCk5pY2h0IG1laHIgbGFuZ2UgOikKCk9sbGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjcwOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoQXN0YXJ0ZSwgIDQuIE1haSAyMDAyLCAwMDo0ODoxMCk6Cn4jISBybj1JbWRhIHJ0PTEwMjA0NjYwNzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCmp1Y2h1IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43MDogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKExlaWJuaXosICA0LiBNYWkgMjAwMiwgMDA6NDg6MTEpOgp+IyEgcm49SW1kYSBydD0xMDIwNDY2MDc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApkYXMgaXN0IGphIHRvbGwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjcxOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgIDQuIE1haSAyMDAyLCAwMDo0ODo0Myk6Cn4jISBybj1MZWlibml6IHJ0PTEwMjA0NjYwOTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCmVsZW5kaWdlIHJlaGV2ZXJzY2h3ZW5kZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjcxOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDQuIE1haSAyMDAyLCAwMDo0ODo0OSk6Cn4jISBybj1MZWlibml6IHJ0PTEwMjA0NjYwOTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCndpZSB3YXIgZGFzIG1pdCByZV4xMDA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43MjogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKE9sbGksICA0LiBNYWkgMjAwMiwgMDA6NDk6MDUpOgp+IyEgcm49TGVpYm5peiBydD0xMDIwNDY2MTI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApEYSBnYWJzIHZvbiBtaXIgZWluIEd1bW1pYmFlcmNoZW4gOikKCk9sbGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjczOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDQuIE1haSAyMDAyLCAwMDo0OToyOSk6Cn4jISBybj1PbGxpIHJ0PTEwMjA0NjYxNDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCmFjaCBub2NoIGltbWVyIG5pY2h0IGRpZSBzb29vbyBzdWVzc2UgYmVkaWVudW5nPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzQ6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgNC4gTWFpIDIwMDIsIDAwOjQ5OjU1KToKfiMhIHJuPUxlaWJuaXogcnQ9MTAyMDQ2NjE2OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKZnVlciB3ZWxjaGVzIHJlaCBnYWJzIGRlbm4gZGVuIE5ubmJTayA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43NTogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKE9sbGksICA0LiBNYWkgMjAwMiwgMDA6NTA6MDcpOgp+IyEgcm49SW1kYSBydD0xMDIwNDY2MTk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApCYWhuaG9mPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzU6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChMZWlibml6LCAgNC4gTWFpIDIwMDIsIDAwOjUwOjIwKToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ2NjE5NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKd2VyIHdhciBkYXMgbm9jaG1hbD8KZWluIG1laGxmcmVzc2VyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzY6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgNC4gTWFpIDIwMDIsIDAwOjUxOjA3KToKfiMhIHJuPUxlaWJuaXogcnQ9MTAyMDQ2NjIyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKRGVyIGJhaG5ob2YgPyBkYXMgaXN0IGVpbiBncm9zc2VzIGdlYmFldWRlLCB3byB6dWVnZSBoYWx0ZW4gdW5kIHBlbm5lciB3b2huZW4uCmFiZXIgd2FzIGhhdCBkYXMgamV0enQgbWl0IGRlbSB0aGVtYSB6dSB0dW4gPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzc6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChPbGxpLCAgNC4gTWFpIDIwMDIsIDAwOjUxOjQxKToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ2NjI2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKQWx0ZXJuYXRpdiBoYWV0dCBpY2ggYXVjaCBzY2hyZWliZW4ga29lbm5lbiAiQm9laG1pc2NoZSBEb2VyZmVyPyIgOikKV2FzIHp1bSBUZXVmZWwgaXN0IE5ubmJTaz8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43NzogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKExlaWJuaXosICA0LiBNYWkgMjAwMiwgMDA6NTE6NDcpOgp+IyEgcm49SW1kYSBydD0xMDIwNDY2MjY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApzdHV0dGdhcnQgMjAxMD8gb2RlciB3aWUgd2FyIGRhcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc4OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgIDQuIE1haSAyMDAyLCAwMDo1MjoyMSk6Cn4jISBybj1MZWlibml6IHJ0PTEwMjA0NjYzMDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCkRhcyBpcyBkb2NoIGtsYXIKRGFzIHdhciBkZXIgIk5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGJla2FubnRlIFN0ZWlmZWxrbmVjaHQiCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OTogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKE9sbGksICA0LiBNYWkgMjAwMiwgMDA6NTI6NDEpOgp+IyEgcm49SW1kYSBydD0xMDIwNDY2MzQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApIdWNoLCBoYWIgaWNoIHdhcyB2ZXJwYXNzdD8gRGFzIG11c3MgaW4gbWVnYXNjaG1hcnJuIGdld2VzZW4gc2VpbiwgZGFzCmxlcyBpY2ggbmljaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODA6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgNC4gTWFpIDIwMDIsIDAwOjUzOjIzKToKfiMhIHJuPU9sbGkgcnQ9MTAyMDQ2NjM2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKVW5kIGRlciBpc3QgYmxvbmQsIHVuZCBkaWUgTm5uZ00ga3JpZWd0IGRlbiBmdWVyIHJlaCAxNTAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjgwOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDQuIE1haSAyMDAyLCAwMDo1MzoyNSk6Cn4jISBybj1PbGxpIHJ0PTEwMjA0NjYzNjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCm5vZSBkYXMgc3RlaHQgYmVpIHRyZWZmZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjgxOiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoT2xsaSwgIDQuIE1haSAyMDAyLCAwMDo1Mzo0OSk6Cn4jISBybj1JbWRhIHJ0PTEwMjA0NjY0MDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCk9rLCBkYXMgaGFiIGljaCBqZXR6dCB3aWVkZXJ1bSB2ZXJzdGFuZGVuICh1bmQgZGFzIHVtIGRpZXNlIFplaXQ/IEJvYWgpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODI6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgNC4gTWFpIDIwMDIsIDAwOjU0OjM3KToKfiMhIHJuPU9sbGkgcnQ9MTAyMDQ2NjQyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKcHJvYmxlbWF0aXNjaCBpc3QgYmxvc3MsIHdlbm4gZWluIE5uYk0gZGFzIFJlaCBtYWNodCwgd2FzIHNvbGwgZGVyIGRhbm4gbWl0CmRlbSBObm5iU2sgYW5mYW5nZW4gPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODM6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChPbGxpLCAgNC4gTWFpIDIwMDIsIDAwOjU1OjIxKToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ2NjQ3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKV2llZGVyIGF1c3NldHplbj8gKEFsc28gbmljaCBkYXMgUmVoLi4uLiBuYWphLCBpaHIgd2lzc3Qgc2Nob24gKmcqKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODM6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChMZWlibml6LCAgNC4gTWFpIDIwMDIsIDAwOjU1OjMxKToKfiMhIHJuPUltZGEgcnQ9MTAyMDQ2NjQ3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKbmEgZGVyIG5Obm5nTSBzY2hlbmtlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODQ6IEVpbiBuYW1lbnRsaWNoIG5pY2h0IG5hZWhlciBnZW5hbm50ZXIgTXVkZGVyLi4uIChJbWRhLCAgNC4gTWFpIDIwMDIsIDAwOjU2OjAzKToKfiMhIHJuPUxlaWJuaXogcnQ9MTAyMDQ2NjUzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA0NDU3MDAKZXJrbGFlciBtYWwgZGFzIHZpZXJ0ZSBuIGJpdHRlLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44NTogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKE9sbGksICA0LiBNYWkgMjAwMiwgMDA6NTY6NDEpOgp+IyEgcm49SW1kYSBydD0xMDIwNDY2NTYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMAoibmFlaGVyIi4gTWljaCB3dWVyZCBlaGVyIGRhcyBlcnN0ZSBuIGludGVyZXNzaWVyZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg1OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoTGVpYm5peiwgIDQuIE1haSAyMDAyLCAwMDo1Njo1Myk6Cn4jISBybj1JbWRhIHJ0PTEwMjA0NjY1NjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCm5vcm1hbD8KCm5ldT8KbmFtZW5sb3M/Cm51dHpsb3M/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44NjogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKEltZGEsICA0LiBNYWkgMjAwMiwgMDA6NTc6MzMpOgp+IyEgcm49T2xsaSBydD0xMDIwNDY2NjAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMApvZGVyIGFiZXIgZGFzIHp3ZWl0ZSBOIGlzdCBhbHMgQmlubmVuLU4genUgYmV0cmFjaGV0ZW4uIEhhbSBzaWNoIGRpZSBFbWFuemVuCmJlc3RpbW10IHdhcyBuZXVlcyBlaW5mYWxsZW4gbGFzc2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44NzogRWluIG5hbWVudGxpY2ggbmljaHQgbmFlaGVyIGdlbmFubnRlciBNdWRkZXIuLi4gKExlaWJuaXosICA0LiBNYWkgMjAwMiwgMDA6NTg6MTUpOgp+IyEgcm49SW1kYSBydD0xMDIwNDY2NjUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDQ0NTcwMAppbW1lcmhpbiBzY2hyZWlidCBtYW4gaW56d2lzY2hlbiBzbyBqYSBhdWNoIG1pdCBtZWhyZXJlbiBvJ3MgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg4OiBFaW4gbmFtZW50bGljaCBuaWNodCBuYWVoZXIgZ2VuYW5udGVyIE11ZGRlci4uLiAoSW1kYSwgIDQuIE1haSAyMDAyLCAwMDo1ODo1NSk6Cn4jISBybj1MZWlibml6IHJ0PTEwMjA0NjY2OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNDQ1NzAwCkFiZXIgbnVyIGltIFp1c2FtbWVuaGFuZyBtaXQgYmxvbmRlbiBiZWRpZW51bmdlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW4gYWxsZSB1bmQgdWViZXJoYXVwdCA6KSAoR3JpbW1ib3JuLCAgNC4gTWFpIDIwMDIsIDAyOjIwOjM0KToKfiMhIG9uPUFzdGFydGUgb3Q9MTAyMDQ2OTUzMiBvZz1hbnplaWdlbgpCaXJkeSBpcyBlaW4gVmVycmFldGVyISEhISEhISEhISEhISEhISEhISEhIQpEdSBTYWNrIER1IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFuIGFsbGUgdW5kIHVlYmVyaGF1cHQgOikgKEdyaW1tYm9ybiwgIDQuIE1haSAyMDAyLCAwMjoyMDo0MCk6Cn4jISBvbj1Ccm90bmFlbCBvdD0xMDIwNDY5NjU4IG9nPWFuemVpZ2VuCn4jISBybj1Bc3RhcnRlIHJ0PTEwMjA0Njk1MzIgcmc9YW56ZWlnZW4KfiMhIHRpZD0xMDIwNDY5NTMyCkljaCBoYWJzIHNjaG9uIGltbWVyIGdld3Vzc3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNyYXNoIChWYXJsYXJpb24sICA0LiBNYWkgMjAwMiwgMjE6NTk6NDUpOgpEZWluZSBGcmV1bmRpbiBMaWFyYSB0ZWlsdCBEaXIgbWl0OiBobSBudSBoYWIgaWNoIHJpZXNpZ2UgYWRhc2NobGFwcGVuIG1vcmdlbgpEZWluZSBGcmV1bmRpbiBMaWFyYSB0ZWlsdCBEaXIgbWl0OiBpcyByZWJvb3QKWndpbGxpbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKQ2hhb3QgRmxpZG9taXIgKExldmVsIDksIFNlaGVyKSBiZXRyYXQgZ2VyYWRlIGRhcyBNb3JnZW5ncmF1ZW4uCkNoYW90IEZsaWRvbWlyIHZlcmxpZXNzIGdlcmFkZSBkYXMgTW9yZ2VuZ3JhdWVuLgpEZWluIEZyZXVuZCBNdXBmZWwgdGVpbHQgRGlyIG1pdDogbWVpbnN0ZT8KRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogaHVodQpEZWluZSBGcmV1bmRpbiBMaWFyYSBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCkRlaW5lIEZyZXVuZGluIEFtYXJ5bGxpcyB0ZWlsdCBEaXIgbWl0OiBkYXMgY3Jhc2hlbiBrYW5uIGljaCBlaW5yaWNodGVuClsuLi5dCkRlaW4gRnJldW5kIFZhbmlvbiB0ZWlsdCBEaXIgbWl0OiBhdWphLCBtYWNobWFsIDopCkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6ID8KRGVpbmUgRnJldW5kaW4gTGVpYm5peiB0ZWlsdCBEaXIgbWl0OiB3ZWhlCkRlaW4gRnJldW5kIFZhbmlvbiB0ZWlsdCBEaXIgbWl0OiBNdWRjcmFzaCwgTXVkY3Jhc2gsIE11ZGNyYXNoIQolIENvbm5lY3Rpb24gdG8gbWcudmFybCBjbG9zZWQ6IHJlY3Y6IENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgotLS0tIE5vIHdvcmxkIC0tLS0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDcmFzaCAoVmFuaW9uLCAgNC4gTWFpIDIwMDIsIDIyOjAwOjIwKToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDIwNTQyMzg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDU0MjM4NQpIZXksIHp1IG1laW5lciBWZXJ0ZWlkaWd1bmcuIERhcyBmcnVmZSB3YXIgZGFzIGxldHp0ZSwgd2FzIGljaCBnZW1hY2h0IGhhYmUgOi8KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IENyYXNoIChMZWlibml6LCAgNC4gTWFpIDIwMDIsIDIyOjAwOjQ5KToKfiMhIHJuPVZhbmlvbiBydD0xMDIwNTQyNDIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDU0MjM4NQpqYWphLCBkYXMgd3VlcmQgaWNoIGpldHp0IGF1Y2ggc2FnZW4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDcmFzaCAoTGlhcmEsICA0LiBNYWkgMjAwMiwgMjI6MDM6MTcpOgoyMTo1MDoKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGhtIG51IGhhYiBpY2ggcmllc2lnZSBhZGFzY2hsYXBwZW4gbW9yZ2VuIGlzCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiByZWJvb3QKCjUgTWludXRlbiBzcGFldGVyOgpEZWluIEZyZXVuZCBWYW5pb24gdGVpbHQgRGlyIG1pdDogYXVqYSwgbWFjaG1hbCA6KQpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogPwpEZWluIEZyZXVuZCBWYW5pb24gdGVpbHQgRGlyIG1pdDogTXVkY3Jhc2gsIE11ZGNyYXNoLCBNdWRjcmFzaCEKLi4uCihsZXR6dGUgWmVpbGUgdm9yIENyYXNoKQoKWlpMLCB3dW5kZXJ0IHNpY2ggdWViZXIgZ2FyIG5peCBtZWhyIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBDcmFzaCAoTGlhcmEsICA0LiBNYWkgMjAwMiwgMjI6MTg6MjgpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMjA1NDM0NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNTQyNTk3ClB1dHplbiBoYWJlIGljaCBuaWNodCBpbSBBbmdlYm90LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIE1VRCBHZWJldCAoQ29icmF4LCAgNS4gTWFpIDIwMDIsIDEyOjAxOjI4KToKIFZhdGVyIHVuc2VyLAogRGVyIER1IGJpc3QgaW0gTW9yZ2VuR3JhdWVuLAogR2VoZWlsaWd0IHdlcmRlIERlaW4gTVVELAogRGVpbiBOUEMga29tbWUsCiBEZWluIEpvZiBnZXNjaGVoZSwKIFdpZSBpbSBIaW1tZWwKIFNvIGF1Y2ggYXVmIEVyZGVuLgoKIFVuc2VyIHRhZWdsaWNoZXMgUmVib290IGdpYiB1bnMgaGV1dGUsCiBVbmQgdmVyZ2liIHVucyB1bnNlcmUgRWsncywKIFdpZSBhdWNoIHdpciB2ZXJnZWJlbiBMYXJzLAogVW5kIGZ1ZWhyZSB1bnMgbmljaHQgaW4gVmVyc3VjaHVuZwogU29uZGVybiBlcmxvZXNlIHVucyB2b24gZGVtIEJvZXNlbiwKIERlbm4gRGVpbiBpc3QgZGFzIFJlaWNoCiBVbmQgZGllIEtyYWZ0IHVuZCBkaWUgSGVycmxpY2hrZWl0CiBJbiBFd2lna2VpdC4KCiBBbWVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgImNjOiItRmFsbGUgd2llZGVyLi4uLiA6KSAoTmljaHRzLCAgNi4gTWFpIDIwMDIsIDA5OjQxOjEyKToKCkNjOiBEYW5uLCBBYmVuZCwgQmlzLCBBbHNvLCBBcmJlaXQsIERpZSwgSW4sIEdsZWljaCwgRXR6dCwgKlVOR1VFTFRJR0VSIE5BTUU6IAogICBtdXNzICosIFdlaXRlciwgVmVyc3VjaHMsIEljaCwgQWJlciwgR2VzY2hhZnQsIE5pY2h0cywgTm9jaCwgSWNoLCBIYWJlLCAKICAgSmV0enQsIEJpcywgQWxzbwoKT2RlciBzb2xsdGUgZGFzIG5hY2ggcHVpej8gOykKIiIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDcmFzaC4uLiAoQ2F0d2VhemxlLCAgNi4gTWFpIDIwMDIsIDEzOjI0OjU3KToKfiMhIHJuPVpvb2sgcnQ9MTAyMDY4Mzk5OSByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTAyMDY4Mzk5OQpBY2hqYT8gR2VjcmFzaHQ/IApJc3QgbWlyIGdhciBuaWNodCBhdWZnZWZhbGxlbiAuLi4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBDcmFzaC4uLiAoWm9vaywgIDYuIE1haSAyMDAyLCAxMzoyODozOSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTAyMDY4NDI5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA2ODM5OTkKTWlyIGF1Y2ggbnVyLCB3ZWlsIGJlc3RpbXRlIEthbmFsLUdlc2NoaWNodGVuIGxlZXIgd2FyZW4uLi4gOi0pCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uIChEYXJrd2luZywgIDYuIE1haSAyMDAyLCAxNDoyMDozNCk6CkN1Y2h1bGxpbiBydWZ0OiBTY2huZWxsLCBTYXRhbiBpc3QgZ2VyYWRlIHRvZXRiYXIgOykKQnJvdG5hZWwgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnptdWQgcm9ja3QgKERhcmt3aW5nLCAgNi4gTWFpIDIwMDIsIDE1OjA4OjQwKToKRGVpbiBGcmV1bmQgR2FsYnJhaXRoIHRlaWx0IERpciBtaXQ6IHdlciBkYSwgZGVyIHNpY2ggX2d1dF8gbWl0IHptdWQgYXVza2VubnQ/CkRlaW4gRnJldW5kIEdhbGJyYWl0aCB0ZWlsdCBEaXIgbWl0OiBqYWphLi4uIDopKQpEZWluIEZyZXVuZCBHYWxicmFpdGggdGVpbHQgRGlyIG1pdDogZ3JhdHMsIEVwcGkgOykKRGVpbiBGcmV1bmQgR2FsYnJhaXRoIHRlaWx0IERpciBtaXQ6IGdyYXRzLCBFcHBpIDspCkRlaW4gRnJldW5kIEdhbGJyYWl0aCB0ZWlsdCBEaXIgbWl0OiBncmF0cywgRXBwaSA7KQpEZWluIEZyZXVuZCBHYWxicmFpdGggdGVpbHQgRGlyIG1pdDogZ3JhdHMsIEVwcGkgOykKRGVpbiBGcmV1bmQgR2FsYnJhaXRoIHRlaWx0IERpciBtaXQ6IGdyYXRzLCBFcHBpIDspCkRlaW4gRnJldW5kIEdhbGJyYWl0aCB0ZWlsdCBEaXIgbWl0OiBncmF0cywgRXBwaSA7KQpEZWluIEZyZXVuZCBHYWxicmFpdGggdGVpbHQgRGlyIG1pdDogc29ycnkuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoUGl0ZmFsbCwgIDYuIE1haSAyMDAyLCAxNzowNDoyOSk6CltUb2Q6TGFyc10gRWluIFpvbWJpZXNrZWxldHQgaGF0IGdlcmFkZSBSb2xhbmQgdW1nZWJyYWNodC4KW1RvZDpFaW4gWm9tYmllc2tlbGV0dF0gV2VubiBEdSBlcnN0IG1hbCB2ZXJmYXVsdCBiaXN0LCBkYW5uIGtvZW5uZW4gd2lyCltUb2Q6RWluIFpvbWJpZXNrZWxldHRdIHp1c2FtbWVuIFNwaWVsZXIgdW1icmluZ2VuIQoKCndlbmlnIHNwYWV0ZXIKCltCZWlsZWlkOlJvbGFuZF0gZG9vZmUgdHJlcHBlIC4uIGRhcyBtYW4gZGEgbmV0IHJhdWYga29tbXQgOikKW1RvZDpMYXJzXSBFaW4gWm9tYmllc2tlbGV0dCBoYXQgZ2VyYWRlIFJvbGFuZCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBab21iaWVza2VsZXR0XSBXZW5uIER1IGVyc3QgbWFsIHZlcmZhdWx0IGJpc3QsIGRhbm4ga29lbm5lbiB3aXIKW1RvZDpFaW4gWm9tYmllc2tlbGV0dF0genVzYW1tZW4gU3BpZWxlciB1bWJyaW5nZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBDcmFzaC4uLiAoR25vbWUsICA2LiBNYWkgMjAwMiwgMTk6MDU6NDEpOgp+IyEgcm49Wm9vayBydD0xMDIwNjg0NTE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDY4Mzk5OQpuYW1lbiEgaWNoIHdpbGwgbmFtZW4hCgpnbk9tZSBhZXVndCB6dSBnbG9pbnNvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc3BpZWxlcmhpbGZlIDopIChMZWlibml6LCAgNi4gTWFpIDIwMDIsIDIxOjA0OjMwKToKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IG11cGZlbCBsYWQgZG9jaCBtYWwgZGVuIHJhdW0gdm9uIGxhcmFyIG5ldSA6KQpFaW4gRmV1ZXJyaWVzZSBrb21tdCBhbi4KCgogKioqKiBEaWVzZXIgUmF1bSB3aXJkIGdlcmFkZSBuZXUgZ2VsYWRlbiAqKioqCgpsZWliaSBncmluc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzcGllbGVyaGlsZmUgOikgKE11cGZlbCwgIDYuIE1haSAyMDAyLCAyMTowNTo0MSk6Cn4jISBybj1MZWlibml6IHJ0PTEwMjA3MTE4NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNzExODcwClN0ZWh0cyB6dSBEaWVuc3RlbiA7KQoKLW11cGZlbC0KUC5TLjogc2VpdCB3YW5uIHdlcmRlbiByYWV1bWUgZHVyIGVjaG90b3MgZ2VsYWRlbj8gWm9vaz8gVGlhbWFrPyBIYWxsbz8KSGFsbG8/Pz8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc3BpZWxlcmhpbGZlIDopIChXb29keSwgIDYuIE1haSAyMDAyLCAyMTowNjowOCk6Cn4jISBybj1NdXBmZWwgcnQ9MTAyMDcxMTk0MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA3MTE4NzAKU2VpdCBEZWluZW0gYWxpIGVjaG90byBhdCAkMSBoZXJlIG1ha2UgPyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHNwaWVsZXJoaWxmZSA6KSAoTXVwZmVsLCAgNi4gTWFpIDIwMDIsIDIxOjA3OjA4KToKfiMhIHJuPVdvb2R5IHJ0PTEwMjA3MTE5Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNzExODcwCkhhYiBncmFkIG5hY2hnZXNlaGVuLi4uIGFlaCBuZWluICpwdWhoKiA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9laG0/IChBaGFiLCAgNy4gTWFpIDIwMDIsIDEzOjE4OjUxKToKS3VlcnpsaWNoIGluIGRlciBTYXVuYToKRWxiZXJldCBydWZ0OiBqbywgQm9pbmcsIG1hY2ggbWljaCB6dW0gTWFnaWVyIDspCgpFcyBtYWNodCAqUFVGRiogdW5kIEJvaW5nIGVyc2NoZWludCBhdXMgZWluZW0gTG9naWt3b2Vsa2NoZW4uCkVpbiBTdGVpbmJlaXNzZXIga29tbXQgaGVyZWluZ2VkdWVzdC4KRWxiZXJldCBncmluc3QuCkJvaW5nIGdpYnQgZGVuIFZlcnRyYWcgYW4gRWxiZXJldC4KQm9pbmcgaHVlcGZ0IG5hY2ggSGF1c2UuCkRlciBTdGVpbmJlaXNzZXIgZHVlc3QgZGF2b24uCgpBaG9pLApBaGFiLCBncmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPZWhtPyAoR3JpbW1ib3JuLCAgNy4gTWFpIDIwMDIsIDEzOjIwOjEzKToKfiMhIHJuPUFoYWIgcnQ9MTAyMDc3MDMzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA3NzAzMzEKV2FyIGRlciBTdGVpbmJlaXNzZXIgd2VuaWdzdGVucyBuYWNraWNodD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBPZWhtPyAoRWxiZXJldCwgIDcuIE1haSAyMDAyLCAxMzoyNjoxMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyMDc3MDQxMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA3NzAzMzEKTWVybGluIG5vZWx0IERpciB6dTogRHUgaGFzdCBudXIgZWluIGhhbGJlcyBPaHIhIAoKSU9jaCBkYXJmIHdvaGwgbmljaHQgOykKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE9laG0/IChHcmltbWJvcm4sICA3LiBNYWkgMjAwMiwgMTM6MzA6MDYpOgp+IyEgcm49RWxiZXJldCBydD0xMDIwNzcwNzcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDc3MDMzMQpUamEsIE1hZ2llciB3ZXJkZW4gZGFyZiBoYWx0IG5pY2h0IGplZGVyLCBlaW4gcGFhciBNaW5kZXN0c3RhbmRhcmRzIGdpbHQgZXMKc2Nob24gZWluenVoYWx0ZW4uIEdyZW56ZSBpc3QgaW4gZXR3YSBkYSB3byBpY2ggYmluLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE9laG0/IChDdWNodWxsaW4sICA3LiBNYWkgMjAwMiwgMTM6MzE6MDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjA3NzEwMDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNzcwMzMxCk1hbiBrb2VubnRlIGZhc3QgbWVpbmVuLCBHcmltbWkgd2lyZCBtaXQgenVuZWhtZW5kZW0gQWx0ZXIgc2VsYnN0a3JpdGlzY2guCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogT2VobT8gKEVsYmVyZXQsICA3LiBNYWkgMjAwMiwgMTM6MzE6NDkpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMjA3NzEwNjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwNzcwMzMxCmhtbSwgZGFubiB3ZXJkIGljaCBuaWUgTWFnaWVyLCBkZW4gc3RhbmRhcmQgc2NoYWZmIGljaCBuaWVtYWxzCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBPZWhtPyAoQmllbGVmZWxkLCAgNy4gTWFpIDIwMDIsIDEzOjM1OjQ3KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMDc3MTEwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA3NzAzMzEKRXMgZ2luZyBuaWNodCBkYXJ1bSwgR3JpbW1pIHp1IF91bnRlcl9iaWV0ZW4gOy0pCgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBPZWhtPyAoR3JpbW1ib3JuLCAgNy4gTWFpIDIwMDIsIDEzOjM3OjQ3KToKfiMhIHJuPUJpZWxlZmVsZCBydD0xMDIwNzcxMzQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDc3MDMzMQpTZWxic3Rrcml0aXNjaD8gSXN0IERlaW4gSXJvbmllZGV0ZWt0b3Iga2FwdXR0IG9kZXIgbXVzcyBkZXIgbGVkaWdsaWNoIG5ldQpqdXN0aWVydCB3ZXJkZW4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbnNhdGlvbnNnZWlsaGVpdCAoQnVkZGhhLCAgNy4gTWFpIDIwMDIsIDE0OjM1OjEzKToKTnVyIHVtIEdlc3RhbmsgZ2VrdWVyenQ6CkVpbiBrbGVpbmVzIFppbW1lciwgZGFzIGFscyBBdWZlbnRoYWx0cy0gdW5kIFdhcnRlcmF1bSBmdWVyIEJlc3VjaGVyIHVuZApCZXdvaG5lciBkZXMgSGF1c2VzIGRpZW50LiBEaWUgRWlucmljaHR1bmcgaXN0IGVoZXIgemllbWxpY2ggc3BhcnNhbSBnZWhhbHRlbi4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHN1ZWRlbi4KW1RlYW06U2Nod2lpel0gU2NvcnBpb24sIE1laXN0ZXIgZGVzIFRhdS1UYXUuCkR1IHNhZ3N0OiAgV28gaXNzbiBkZXIgS2FzdGVuIGhpbj8KU2NvcnBpb24genVja3QgcmF0bG9zIG1pdCBkZW4gU2NodWx0ZXJuLgpbU2VoZXI6QnVkZGhhXSBXZXIgaGF0dG4gZGVuIEZlcm5zZWhlciBpbiBXaWxsaWJ1cmcgZ2VrbGF1dD8gSHVlbGZlISBCb2xpZHNlaSEKRmxhdXJvcyBrb21tdCB0cmFldW1lbmQgaGVyZWluLgpQaXRmYWxsIGtvbW10IGFuLgpGbGF1cm9zIHRyYWV1bXQgc2ljaCBuYWNoIFN1ZWRlbiB3ZWl0ZXIuClR5bGFrIGZsaWVndCBoZXJlaW4uClBpdGZhbGwgZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KVHlsYWsgZ2lidCBlaW4gYWxiZXJuZXMgS2ljaGVybiB2b24gc2ljaC4KW1NlaGVyOkdhbGJyYWl0aF0ga2F1bSBnZXN0b2hsZW4sIHNjaG9uIGluIFBvbGVuLi4uIDopKQpKb3NodWEgZmxpZWd0IGhlcmVpbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmdzdGhhc2UuLi4gKEh1bW5pLCAgNy4gTWFpIDIwMDIsIDE4OjM0OjE0KToKW1dlcndvZWxmZTpTdG9ya2VsdGltbWVyXSBIdW1uaSB3aWxsIHVucyBtaXQgZGVyIEdlc2NoaWNodGUgLCxWb24gZWluZW0sIGRlcgpbV2Vyd29lbGZlOlN0b3JrZWx0aW1tZXJdIGF1c3pvZywgQXJrIGRhcyBGdWVyY2h0ZW4genUgbGVocmVuLicnIHVudGVyaGFsdGVuLgpbV2Vyd29lbGZlOlN0b3JrZWx0aW1tZXJdIEluIDEwIE1pbnV0ZW4gZ2VodCBlcyBsb3MuIEljaCBiaXR0ZSBhbGxlIFdlcndvZWxmZQpbV2Vyd29lbGZlOlN0b3JrZWx0aW1tZXJdIGRhenUgaW0gR2VzY2hpY2h0c3JhdW0genUgZXJzY2hlaW5lbi4KKEFyaykgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhICAgICAgICAgICAgICAgICAgICAgCgpUamEuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFuZ3N0aGFzZS4uLiAoRWxiZXJldCwgIDcuIE1haSAyMDAyLCAxODo1MDoxNik6Cn4jISBybj1IdW1uaSBydD0xMDIwNzg5MjU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMDc4OTI1NAppY2ggc2FnIG51cjogLi4uCltXZXJ3b2VsZmU6U3RvcmtlbHRpbW1lcl0gSHVtbmkgd2lsbCB1bnMgbWl0IGRlciBHZXNjaGljaHRlCltXZXJ3b2VsZmU6U3RvcmtlbHRpbW1lcl0gLCxmaW5kX2NhbGxfb3V0KCJhbm1lbGRlbl8yIik7JycgdW50ZXJoYWx0ZW4uIEluIDEwCltXZXJ3b2VsZmU6U3RvcmtlbHRpbW1lcl0gTWludXRlbiBnZWh0IGVzIGxvcy4gSWNoIGJpdHRlIGFsbGUgV2Vyd29lbGZlIGRhenUKW1dlcndvZWxmZTpTdG9ya2VsdGltbWVyXSBpbSBHZXNjaGljaHRzcmF1bSB6dSBlcnNjaGVpbmVuLgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChWYXJsYXJpb24sICA5LiBNYWkgMjAwMiwgMTU6NDk6MzgpOgpEZWluIEZyZXVuZCBQaXRmYWxsIHRlaWx0IERpciBtaXQ6IHdlciBoYXQgZGVuIHdlZ2hpZXIgYXVmIGRyb2dlbiBnZXNldHp0PyA6KQpbVG9kOkxhcnNdIEVpbiBXZWdoaWVyIGhhdCBnZXJhZGUgUGl0ZmFsbCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBXZWdoaWVyXSBHb3RjaGEhCltUb2Q6UGl0ZmFsbF0gTVVVVVVVVVVVVVVVVUgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKFZhbmlvbiwgIDkuIE1haSAyMDAyLCAxNTo1MToxMik6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTAyMDk1MjE3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjA5NTIxNzgKVmVybXV0bGljaCBBdWZwdXRzY2htaXR0ZWwgLi4uCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGTFcgKFBpdGZhbGwsICA5LiBNYWkgMjAwMiwgMTY6MDY6MDUpOgp+IyEgcm49VmFuaW9uIHJ0PTEwMjA5NTIyNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIwOTUyMTc4CmpvIHRhdCBtYWwgd2llZGVyIGd1dCBzbyB2aWVsIHNjaGFkZW4genUgc2VoZW4gLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhtbW1tbSAoUGl0ZmFsbCwgMTAuIE1haSAyMDAyLCAxNDowMTo0OCk6CkRlaW5lIEZyZXVuZGluIExlaWJuaXogdGVpbHQgRGlyIG1pdDogdW5kIGRhbm4gZ2VoIGljaCBoZWltCkRlaW5lIEZyZXVuZGluIExlaWJuaXogdGVpbHQgRGlyIG1pdDogYmlzIG5hY2hoZXIKRWluIGVudHNldHpsaWNoZXIgU2NocmVpIGhhbGx0IHZvbSBGcmllZGhvZiBoZXJ1ZWJlci4KRGVpbmUgRnJldW5kaW4gTGVpYm5peiB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxlY2tlciAuLi4gKEdsb2luc29uLCAxMS4gTWFpIDIwMDIsIDEyOjU1OjE4KToKW1RvZDpMYXJzXSBFaW4gV2VnaGllciBoYXQgZ2VyYWRlIEZsYXVyb3MgdW1nZWJyYWNodC4KW1RvZDpFaW4gV2VnaGllcl0gR290Y2hhIQouLi4KW0JlaWxlaWQ6R2xvaW5zb24ga2F1dCBhbiBlaW5lbSB0b3RlbiBGdXNzLl0KW1RvZDpMYXJzXSBEaWUgc2Nod2FyemUgTGVwcmEgaGF0IGdlcmFkZSBKb3NodWEgdW1nZWJyYWNodC4KW0JlaWxlaWQ6TmVkaW1lXSBvY2ggOi0oKCgKW0QtY2hhdDpLYXJtQE5pZ2h0ZmFsbF0gTWFobHplaXQgYnkgdGhlIHdheSA7bykKCkRhbmtlLCBuZWluIDspCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZ1bmFrb3NoaSAoR2xvaW5zb24sIDExLiBNYWkgMjAwMiwgMTY6MDM6MzUpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMjExMjM2NzYgcmc9Z2lsZGVuLmthcmF0ZQp+IyEgdGlkPTEwMjEwMjM2NjIKTWFsIGVocmxpY2ggLSB3ZXIga29lbm50ZSBEaXIgYWx0ZW0gTWFubiBEZWluZSBHcnVuZGhhbHR1bmcgZ2VnZW51ZWJlciBhbGxlbgphbmRlcmVuIGRlbm4gd2lya2xpY2ggdWViZWwgbmVobWVuPyA6KQoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRnVuYWtvc2hpIChNdXBmZWwsIDExLiBNYWkgMjAwMiwgMTY6NDM6MDQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAyMTEyNTgxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjEwMjM2NjIKRHUgbWVpbnN0ICJ3ZXIgbmltbXQgQ3VzY2hpIGRlbm4gbm9jaCBlcm5zdD8iIC0gbmVtZW5nZSBMZXV0ZSBkZW5rIGljaCA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEZ1bmFrb3NoaSAoQ3VjaHVsbGluLCAxMS4gTWFpIDIwMDIsIDE2OjQ3OjEyKToKfiMhIHJuPU11cGZlbCBydD0xMDIxMTI4MTg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMTAyMzY2MgpJY2ggYmVrYW0gZXJrbGFlcnQsIGRhc3MgaWNoIGtlaW5lIEZyZXVuZGUgaGFiZSAob2ghKSwgdm9uIERpbmdlbiBqZWRlIHVlYmVyCmRpZSBpY2ggbmljaHRzIHdlaXNzIChhY2g/IDspKSB1bmQgbmljaHRzIGZ1ZXJzIE1HIGdldGFuIGhhYmUgKG5hamEpLiAKCldhcnVtIHNvbGx0ZSBtaWNoIGlyZ2VuZHdlciBlcm5zdCBuZWhtZW4/IDspIEJpdHRlIGtlaW5lIEFudHdvcnRlbi4gOikKCkN1Y2ggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEZ1bmFrb3NoaSAoQ3VjaHVsbGluLCAxMS4gTWFpIDIwMDIsIDE3OjUzOjQzKToKfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDIxMTMyNDE5IG9nPWdpbGRlbi5rYXJhdGUKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDIxMTMyMjA1IHJnPWdpbGRlbi5rYXJhdGUKfiMhIHRpZD0xMDIxMDIzNjYyCk5laW5uZWluLCBkYXMgd3VyZGUgYWJzaWNodGxpY2ggd2VnZ2VsYXNzZW4gLSBtYW4gZHVlcmZlIGtlaW5lCkJlbGVpZGlndW5nZW4gJ3JlaW5zZXR6ZW4uIDopCgpDdWNoLCB3ZWlzcyBnYXIgbmljaHQsIHdhcyBkaWUgbWVpbmVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBGdW5ha29zaGkgKExpYXJhLCAxMS4gTWFpIDIwMDIsIDE4OjQ3OjM5KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDIxMTI4NDMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMTAyMzY2MgpDdXNjaGkgKGMpIE11cGZlbCBmb3IgUHJlc2lkZW50IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdpZWRlcmhvbHVuZyB1bmQgTmV1YW5tYWh1bmcgOy0pIChMaWFyYSwgMTEuIE1haSAyMDAyLCAyMjo0MzoyMik6Cn4jISBybj1IdW1uaSBydD0xMDIxMTQ5NzMyIHJnPWQuaW5zZWxuCn4jISB0aWQ9MTAyMTE0OTczMgpEdSBoYWVsc3QgU3BpZWxlciBCRUkgTEFVTkU/IER1cmNoIEFVRldFUlRFTj8KClpaTCwgc3RhdW50CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB0aHJ1aGUgKExpYXJhLCAxMi4gTWFpIDIwMDIsIDIwOjA2OjQzKToKfiMhIHJuPVNvdSBydD0xMDIxMjEyODc2IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTAyMTIxMTQwNgpEdSBqYW1tZXJzdCB3aWUgZWluIFphdWJpLgoKR3J1ZXNzZSwgWlpMCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphdWYgemV0dGVsIChHcmltbWJvcm4sIDEzLiBNYWkgMjAwMiwgMTE6MTM6MDQpOgp+IyEgb249Q2FsZHJpbiBvdD0xMDIxMjgwOTc4IG9nPWFsbGdlbWVpbmVzCmhhbGxvIGt1aAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGF1ZiB6ZXR0ZWwgKEdyaW1tYm9ybiwgMTMuIE1haSAyMDAyLCAxMToxMzowNik6Cn4jISBvbj1DaWNlcm8gb3Q9MTAyMTI4MTE0OCBvZz1hbGxnZW1laW5lcwp+IyEgcm49Q2FsZHJpbiBydD0xMDIxMjgwOTc4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTAyMTI4MDk3OApJY2ggZGlhZ25vc3RpemllcmUgZWluZSBVZWJlcmRvc2lzIG11ZC4uLgpVcnRlaWw6IE1pbi4gNSBNaW51dGVuIGZyaXNjaGUgTHVmdCB1bmQgU29ubmVuc2NoZWluCktlaW5lIEJld2FlaHJ1bmcsIGtlaW5lIEthdXRpb24gbW9lZ2xpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRlLmFsdC5uZXRkaWdlc3QgKEdyaW1tYm9ybiwgMTMuIE1haSAyMDAyLCAxMToxNjoxMSk6CkhpZXIgbnVyIGVpbiBBdXNzY2huaXR0OgoKRGFzIEludGVybmV0IHd1cmRlIGdlc2NoYWZmZW4gdW0gYXVjaCBuYWNoIGVpbmVtIEF0b21zY2hsYWcgZGllICAgICAgICAgICAgICAgCndlbHR3ZWl0ZSBWZXJzb3JndW5nIG1pdCBGaWNrZWxiaWxkY2hlbiwgV2FyZXogdW5kIE1QMy1EYXRlaWVuICAgICAgICAgICAgICAgIApzaWNoZXJ6dXN0ZWxsZW4uIEJpbGwgR2F0ZXMgaGF0IGVzIGVyZnVuZGVuIHVuZCBoZXV0ZSB3aXJkIGVzIHZvbiAgICAgICAgICAgICAKQU9MIGV4a2x1c2l2IHZlcnRyaWViZW4uIERhcyB6dWdydW5kZWxpZWdlbmRlIHRlY2huaXNjaGUgUHJpbnppcCAgICAgICAgICAgICAgCmhlaXNzdCBGaWRvLCBiZW5hbm50IG5hY2ggQm9yaXMgQmVja2VycyBIdW5kLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZGUuYWx0Lm5ldGRpZ2VzdCAoQmFtYmksIDEzLiBNYWkgMjAwMiwgMTM6MTU6MjMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjEyODEzNzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIxMjgxMzcxCkx1dGlnZSBTYWNoZS4gVm9uIHdvIGdlbmF1IGhhc3QgRHUgZGFzIGhlcj8gVW5kIHdhcyBpc3QgZWluIEF0b21zY2hsYWc/IEthbQpzb3dhcyBuaWNodCB6d2lzY2hlbiB6ZXJzdGFldWJlbiB1bmQgcHVsdmVyaXNpZXJlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hbCBudXIgc28gKEVsYmVyZXQsIDEzLiBNYWkgMjAwMiwgMTQ6MzU6MzUpOgpFcHBpICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClNvdSBydWZ0OiBHUkFBQUFBQUFBQUFUUywgRU5ETElDSCwgUwoKQWxzbyBFcHBpIGhhdCBkYXMgc2Nob24gb2VmdGVyIGdlc2NoYWZmdCwgd2llIG1pciBzY2hlaW50IDopCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLdWVoZSAoR3JpbW1ib3JuLCAxMy4gTWFpIDIwMDIsIDIxOjA1OjEyKToKRWluIHNlaHIgYmVlaW5kcnVja2VuZGVzIEt1aGxpZWQgc2FtdCBWaWRlbzoKaHR0cDovL3d3dy5yaWRkbGVtZS5jb20vaW1hZ2UvQ293MW1hc2tlZC5zd2YKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IGF1ZiB6ZXR0ZWwgKEN1Y2h1bGxpbiwgMTQuIE1haSAyMDAyLCAxMzozMjoyNSk6Cn4jISBybj1QdWsgcnQ9MTAyMTM3NTg2OSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAyMTI4MDk3OApJY2ggaGFiIHNjaG9uIGNvdW50IGRvd24gZ2V6YWVobHQgdW5kIGdld2FydGV0LCBiaXMgaXJnZW5kd2VyIGRlciBCYWxhbmNlCmRhcyBzYWdlbiB3aXJkLi4uICpnbHVja3MqIElociBzZWlkIGJlcmVjaGVuYmFyIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IGF1ZiB6ZXR0ZWwgKFB1aywgMTQuIE1haSAyMDAyLCAxMzozNjowNCk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAyMTM3NTk0NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjEyODA5NzgKKmh1ZXN0ZWwqIGRhcyBpY2ggQmFsYW5jZSBiaW4gaGF0IGRhbWl0IHVlZWVlZWVlZWVlZWVlYmVyaGF1cHQgbml4IHp1IHR1biwgd2FyCmVpbiBnYW56IHByaXZhdGVyLCB2b2VsbGlnIGF1cyBkZXIgTHVmdCBnZWdyaWZmZW5lciwgdWViZXJoYXVwdCBuaWNodAp2b3JzdGVsbGJhcmVyIEtvbW1lbnRhci4uLi4uLi4uLi4uLi4gCihmdWVyIGRpZSBuYWVjaHN0ZW4gMiBXb2NoZW47KQoKUHVrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBhdWYgemV0dGVsIChMaWFyYSwgMTQuIE1haSAyMDAyLCAxOToyNTo1Nyk6Cn4jISBybj1DYWRyYWNoIHJ0PTEwMjEzOTA5NDggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMjEyODA5NzgKRGFzIGVyaW5uZXJ0IG1pY2ggaXJnZW5kd2llIGFuIFAqcyBQdXQgYW5kIEdldC4gOy0pCgpaWkwsIGtvbm50ZSBuaWNodCB3aWRlcnN0ZWhlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbWFyeWxsaXMsIDE0LiBNYWkgMjAwMiwgMjA6MTI6NDkpOgpCcm90bmFlbCBydWZ0OiBkYXMgd2FyIGt1ZW1tZXJsaWNoLiBnbGVpY2ggbm9jaG1hbCA6KQpbVG9kOkxhcnNdIEFzYW5pZWxzIEZldWVyLUVsZW1lbnRhciBoYXQgZ2VyYWRlIEJyb3RuYWVsIHVtZ2VicmFjaHQuCltUb2Q6QXNhbmllbHMgRmV1ZXItRWxlbWVudGFyXSBCcmVubmUsIGJpcyBEdSBudXIgbm9jaCBBc2NoZSBiaXN0IQoKZGFzIHdhciBiZXNzZXIuLi4KQW1hKiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2Nod29icyAoUGl0ZmFsbCwgMTUuIE1haSAyMDAyLCAwOTozOTozNSk6CgpodHRwOi8vdW5pbXV0Mi5mc2sudW5pLWhlaWRlbGJlcmcuZGUvc2Nod29iP3NjaHdvYl91cmw9M0RodHRwJTNBJTJGJTJGd3d3LnRlbGUKa29tLmRlJTJGCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIGphamEgZGVyIFRyb3kgKEVsYmVyZXQsIDE1LiBNYWkgMjAwMiwgMTc6NTM6NDkpOgpEdSBzYWdzdDogUGFydHltb25zdGVyLCBnaWIgYWxsZW4gVHJveQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFRyb3kgbGllZ3QgZG9jaCBhbSBCb2RlbiBydW0uCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogVHJveSBsaWVndCBkb2NoIGFtIEJvZGVuIHJ1bS4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBUcm95IGxpZWd0IGRvY2ggYW0gQm9kZW4gcnVtLgpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFRyb3kgbGllZ3QgZG9jaCBhbSBCb2RlbiBydW0uCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogVHJveSBsaWVndCBkb2NoIGFtIEJvZGVuIHJ1bS4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBUcm95IGxpZWd0IGRvY2ggYW0gQm9kZW4gcnVtLgpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFRyb3kgbGllZ3QgZG9jaCBhbSBCb2RlbiBydW0uCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogVHJveSBsaWVndCBkb2NoIGFtIEJvZGVuIHJ1bS4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBUcm95IGxpZWd0IGRvY2ggYW0gQm9kZW4gcnVtLgpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IFRyb3kgbGllZ3QgZG9jaCBhbSBCb2RlbiBydW0uCgo6KSkKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFydGlrZWwgamFqYSBkZXIgVHJveSAoR3JpbW1ib3JuLCAxNS4gTWFpIDIwMDIsIDE3OjU0OjQxKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMTQ3ODAyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjE0NzgwMjkKVGphLCB3YXMgc28gZWluZSByaWNodGlnZSBQYXJ0eSBpc3QuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVzIGQuYS5uIChBbWFyeWxsaXMsIDE1LiBNYWkgMjAwMiwgMTk6Mjc6NDUpOgpPbiBUdWUsIDE0IE1heSAyMDAyIDE2OjQ3OjM0IEdNVCwgbW9ua2V5Lm1hZ2ljQGdteC5hdCAoZGF2aWQgZS5nLgptZWlqZXIpIHdyb3RlOgoKPj4+PldhcyBGcmF1ZW4gc2Nob24gbGFuZ2Ugd2lzc2VuOiBEaWUgYmVzdGVuIFR5cGVuIHNpbmQgaW1tZXIgc2Nod3VsLgo+Pj5XYXMgU2Nod3VsZSBzY2hvbiBpbW1lciB3aXNzZW46IGRhcyBzdGltbXQgbnVyIHNlaHIgYmVkaW5ndC4KPj5KYSwgdmllbGVuIGZlaGx0IGVzIGxlaWRlciBhbiBTZWxic3R2ZXJ0cmF1ZW4uCj5EYXMgZXJrbGFlcnN0IER1IGpldHp0IGFiZXIgYml0dGUuCgpEYXMgaXN0IGRlciBzb2cuIHNjaGxpY2hlIG9kZXIgbmV1dHJhbGUgQXJ0aWtlbC4gRXIgYmV6ZWljaG5ldCBpbQpEZXV0c2NoZW4gZGFzIGdyYW1tYXRpc2NoZSwgbmljaHQgamVkb2NoIGRhcyBuYXR8cmxpY2hlIEdlc2NobGVjaHQgZWluZXIKUGVyc29uIFsxXSwgSWRlZSBbMl0gb2RlciBTYWNoZSBbM10uIEh1ZmlnIHdpcmQgZGVyIEFydGlrZWwgYXVjaCBhbHMKRXJzYXR6IGZ8ciBkYXMgRGVtb25zdHJhdGl2cHJvbm9tZW4gWzRdLCBtaXQgZGVtIGVzIHNwcmFjaGhpc3RvcmlzY2gKYXVjaCB2ZXJ3YW5kdCBpc3QsIHZlcndlbmRldCBbNV0uIERhcyBkZWtsaW5pZXJ0IHdpZSBmb2xndDogZGFzLCBkZXMsCmRlbSwgZGFzLgoKSERILApTdGVmYW4KClsxXSBkYXMgTWRjaGVuClsyXSBlaW5lcyBhYnN0cmFrdGVuIEJlZ3JpZmZlcywgenVtIEJlaXNwaWVsIGRhcyBXb3J0ClszXSBkYXMgQmxhdHQKWzRdIGluIGRpZXNlbSBGYWxsOiBkaWVzZXMKWzVdIFdlbGNoZXM/IERhcyEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOb2NobWFsIGQuYS5uIChBbWFyeWxsaXMsIDE1LiBNYWkgMjAwMiwgMjA6MzY6NDQpOgpTdGVmYW4gS2Fwc2VyIHdyb3RlOgo+IDQuIEljaCBtdXNzIGpldHp0IGVyc3RtYWwgZWluZW4gbmV1ZW4gTmV3c3JlYWRlciBpbnN0YWxsaWVyZW4sCj4gT3V0bG9va0V4cHJlc3MgYmVlbmRldCBzaWNoIGJlaW0gRHJ8Y2tlbiBkZXMgQW50d29ydGJ1dHRvbnMgaW1tZXIgdm9uCj4gc2VsYnN0LgoKQW5kZXJlIGhhYmVuIG5pY2h0IHNvdmllbCBHbHVlY2suLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdHJhZmUgbXVzcyBzZWluIChBbWFyeWxsaXMsIDE1LiBNYWkgMjAwMiwgMjA6NTY6MjApOgpbU3BvcnQ6RWxkYXJvbiB2ZXJidWRkZWx0IGVpbmUgVW5rZSBpbiBkZXIgV3Vlc3RlIDopXQpbU3BvcnQ6QW1hcnlsbGlzIG11c3RlcnQgRWxkYXJvbiBlbXBvZXJ0Ll0KW1RvZDpMYXJzXSBFaW4gU2VlYmFlciBoYXQgZ2VyYWRlIEVsZGFyb24gdW1nZWJyYWNodC4KW1RvZDpFaW4gU2VlYmFlcl0gV2VyIHN0b2VydCBtZWluZW4gU2NobGFmPwpbVG9kOkVpbiBBbGNoZW1pc3RdIEpldHp0IG11c3MgaWNoIHdpZWRlciBkaWUgUmVzdGUgd2VncmFldW1lbiEKW1RvZDpFaW4gU2VlYmFlcl0gSmEsIHNvcnJ5Li4uYWJlciBpY2ggd2FyIG5pY2h0IGFsbGVpbiBTY2h1bGQhCgpBbWEqLCB3ZWlzZSBuaWNrZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0cmFmZSBtdXNzIHNlaW4gKEVsZGFyb24sIDE1LiBNYWkgMjAwMiwgMjE6MTU6MzIpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMjE0ODg5ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIxNDg4OTgwCkJlc3RpbW10IGhhdHRlIGRpZSBVbmtlIGRhIGRpZSBGaW5nZXIgaW0gU3BpZWwgOy0+CgpFbGRhcm9uIGRlbmt0IC4gbyBPIChXZXIgZGVuIFNjaGFkZW4gaGF0Li4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdHJhZmUgbXVzcyBzZWluIChBbWFyeWxsaXMsIDE1LiBNYWkgMjAwMiwgMjE6MTY6MTYpOgp+IyEgcm49RWxkYXJvbiBydD0xMDIxNDkwMTMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMTQ4ODk4MApJY2ggaGF0dGUgZGVuIEZ1c3MgYW4gZGVyIFR1ZXIgOikKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOb2NobWFsIGQuYS5uIChHcmltbWJvcm4sIDE2LiBNYWkgMjAwMiwgMDA6Mzk6NDgpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMjE0ODc4MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIxNDg3ODA0CkRlciBoaWVyIGhhdCBhdWNoIFZlcnN0YW5kZW4gKGF1cyBkZS5zY2kuY2hlbWllOiAiUmU6IFN0cnVrdHVyYW5hbHlzZSB2b24KZWluZXIgR3VtbWktUHJvYmUiKToKCj4gTWVpbiBTY2h3YWdlciBoYXQgbWlyIGF1cyBkZXIgVHVlcmtlaSBlaW4gU3R1ZWNrIEd1bW1pIHp1Z2VzY2hpY2t0LCAKPiBkaWUgaWNoIGZ1ZXIgaWhuIG51biBhbmFseXNpZXJlbiBzb2xsLCBibG9zcyBpY2ggd2Vpc3MgbmljaHQgd2llLi4uIAogCkFud2Flcm1lbiwgemVyYnJvZXNlbG4sIHVuZCBtaXQgZXR3YXMgVGFiYWsgaW4gWmlnYXJldHRlbnBhcGllciAKd2lja2VsbiAuLi4gCiAKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXV0b2xvYWRlciAoR25vbWUsIDE2LiBNYWkgMjAwMiwgMTI6MTU6MTEpOgp+IyEgcm49VGlhbWFrIHJ0PTEwMjE0OTQ1NTggcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDIxNDk0NTU4CmR1IHdlaXNzdCBqZXR6dCBhdWNoLCB3YXJ1bSBlcyAyNSBtaW4gc3BhZXRlciBuZW4gY3Jhc2ggZ2FiPyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkplbWFuZGUuLi4gKEJpZWxlZmVsZCwgMTYuIE1haSAyMDAyLCAxNDoxNDo1NSk6CltBbGxnZW1laW46SmVtYW5kIHNhZ3QgbnVyOiAiYnVtbXMgYXVzIGZlcnRpZyIuXQpbVG9kOkxhcnNdIEVpbmUgc3RhcmsgYWV0emVuZGUgRmx1ZXNzaWdrZWl0IGhhdCBnZXJhZGUgTHVnaWEgdW1nZWJyYWNodC4KCk5laXNrbGFyLi4uCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTW9yZ290aCwgMTYuIE1haSAyMDAyLCAxNToyNToxMCk6CkRlaW4gRnJldW5kIEhpc2FzdWwgdGVpbHQgRGlyIG1pdDogaGlsZnQgd2VyIGJlaW0gckZEPyAgICAgICAgICAgICAgICAgICAgICAgIApbVG9kOkxhcnNdIEVpbiBGZXVlcmRhZW1vbiBoYXQgZ2VyYWRlIEhpc2FzdWwgdW1nZWJyYWNodC4KW1RvZDpFaW4gRmV1ZXJkYWVtb25dIEVzIHJpZWNodCBzbyB2ZXJicmFubnQgaGllci4gQmlzdCBEdSBkYXM/ICAgICAgICAgICAgICAgCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZWNodGUgaG9iYml0cyA6KSAoTGVpYm5peiwgMTYuIE1haSAyMDAyLCAyMTo1Mjo1NCk6CiBNaWthZ2UgdGVpbHQgRGlyIG1pdDogZ3V0LCBkYW5uIGthbm4gaWNoIG1pciBqYSBzY2hvbiB1ZWJlcmxlZ2VuLCB3YXMgaWNoCk1pa2FnZSB0ZWlsdCBEaXIgbWl0OiBlc3NlbiB3ZXJkZSA6bykKTWlrYWdlIHRlaWx0IERpciBtaXQ6IGljaCBoYWJlIGZ1ZXIgbW9yZ2VuIHNvb29vb29vb29vb29vb29vb29vb28gbmUgbGlzdGUgOm8pCk1pa2FnZSB0ZWlsdCBEaXIgbWl0OiAqd2FlbHoqIGdlbmF1ISBuZW5uIG1pY2ggaG9iYml0IDpvKQoKbGVpYmkgd3Vzc3RlIGVzIGphIHNjaG9uIGltbWVyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERhcmlhLCAxNy4gTWFpIDIwMDIsIDEyOjQ5OjExKToKW3p0Okdva3VdICdEaWUgR2Fzc2UgaGF0IGhpZXIgd29obCBlaW4gRW5kLCBVbmQgd2VubiBtYW4gc28gaW0gRHNjaHVuZWwgcmVubnQsClt6dDpHb2t1XSBEYW5uIHNvbGx0ZSBtYW4gc2ljaCB1bSBudXIgc2NoYXVuLCBEYW5uIGZhZWxsdCBEaXIgYXVmIGF1Y2ggaGllcgpbenQ6R29rdV0gZWluIEJhdW0uJyBXZWxjaGUgU2Fja2dhc3NlIGlzdCBkZW5uIGdlbWVpbnQsIGhpZXIgc2luZCBodW5kZXJ0ZS4uLgpbenQ6R29rdV0gPDEyOjQ2OjI3PgpbenQ6R29rdV0ga2VubnQgZGVuIGtlaW5lcj8/IDwxMjo0ODowMz4KW3p0OkNyb2Z0XSBzb3ZpZWxlIHNhY2tnYXNzZW4gaGF0IGVzIGltIGRzY2h1bmdlbCBuaWNodCA7LSkgPDEyOjQ4OjE3PgpbVG9kOkxhcnNdIEVpbmUgU2NobGFuZ2UgaGF0IGdlcmFkZSBHb2t1IHVtZ2VicmFjaHQuCgoKRGFyaWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAxNCBUYWdlIEF1c3Bhbm5lbiAoQ3VjaHVsbGluLCAxNy4gTWFpIDIwMDIsIDIxOjI2OjAzKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTAyMTY2MzQ4NCByZz1zZWhlci51cmxhdWIKfiMhIHRpZD0xMDIxNjYzNDg0Cj4gLi4uICB3ZW5uIGRhcyBURiBuZXQgZ2VodCB3ZW5kZXQgRXVjaCBhbiBlaW5lbiBkZXIgYmVrYW5udGVuIFVlYmVsdGFldGVyIDopCgpNbW1tbW1tbW1oLiBNci4gIlRGIHY1LjAga2FubiBkYXMgYmVyZWl0cyIgS2VuIEtleXM/IDpvKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoIHNvIChKYW1lc29uLCAxNy4gTWFpIDIwMDIsIDIyOjQwOjMwKToKW1RvZDpMYXJzXSBHYXRvcmlsZ2FyIGhhdCBnZXJhZGUgRG90eiB1bWdlYnJhY2h0LgpbVG9kOkdhdG9yaWxnYXJdIER1IGJpc3QgamEgbmljaHRtYWwgbmUgS2VyYmUgd2VydCEgCltUb2Q6RG90eiB0ZWlsdCBzaWNoIG1pdCBMYXJzIGVpbmUgZ2FuemUgVGFmZWwgU2Nob2tvbGFkZS5dCkRlaW5lIEZyZXVuZGluIFplcGh5ciB0ZWlsdCBEaXIgbWl0OiBuYSBlbmRsaWNoIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogMTQgVGFnZSBBdXNwYW5uZW4gKEdsb2luc29uLCAxOC4gTWFpIDIwMDIsIDExOjE5OjExKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTAyMTY2MzQ4NCByZz1zZWhlci51cmxhdWIKfiMhIHRpZD0xMDIxNjYzNDg0CjpkZW5rdCAuIG8gTyAoIGhtbW0sIGJyYXVuZ2VicmFubnRlcyBLaW5kLCB2b3JnZXBvZWtlbHQgKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2lyZiBtdWVuemVuIChWYW5pb24sIDE4LiBNYWkgMjAwMiwgMjA6Mzg6MTQpOgpEdSBuaW1tc3QgMTAwMDAwMDAwMCBNdWVuemVuLCB3aXJmc3Qgc2llIGhvY2gsIGxhZXNzdCBzaWUgenUgQm9kZW4gcHJhc3NlbG4KdW5kIGJldHJhY2h0ZXN0IGRhcyBFcmdlYm5pczoKICAgLTMwMjQ4NTYweCBLb3BmIHVuZCAxMDMwMjQ4NTYweCBaYWhsLgpTY2huZWxsIHNhbW1lbHN0IER1IERlaW5lIE11ZW56ZW4gd2llZGVyIGVpbi4KCldlbm4gd2VuaWdzdGVucyBkaWUgU3VtbWUgc3RpbW1lbiB3dWVyZGUgOikKViosIHNhbW1lbHQgX3NjaG5lbGxfIG1hbCBlaW5lIE1pbGxpYXJkZSBNdWVuemVuIGF1ZiA6KQooQmV2b3IgZGllIGVpbmVyIGtsYXV0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUnVkZWxuIG9kZXIgc29uc3R3YXMgLi4uIChHbG9pbnNvbiwgMTkuIE1haSAyMDAyLCAwMjoxODozOCk6Cn4jISBybj1MaWFyYSBydD0xMDIxNzI5MjY5IHJnPXRyZWZmZW4KfiMhIHRpZD0xMDIxNTUwNjIyCk5vZSwgZGFzIGlzdCBlaW5lIEdydXBwZSB1ZWJlciAzMiBQZXJzb25lbiwgZWluZSBDUy1HcnVwcGUgaXN0IEFGQUlLIG1heGltYWwKMTYgUGVyc29uZW4gZ3Jvc3MsIGQuaC4gd2VubiBhbGxlIGVzIG1hbCBlYmVuIHNwaWVsZW4gd2VyZGVuIGRyZWkgR3J1cHBlbgplbnRzdGVoZW4uCgpHbG9pbihzb24pIHNhZ3Q6IG1hbiBmaW5kZXQgdWViZXJhbGwgZWluIHN5c3RlbSB3ZW5uIG1hbiBlcyBzdWNodCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3aXJmIG11ZW56ZW4gKEJvaW5nLCAxOS4gTWFpIDIwMDIsIDEzOjQyOjM5KToKfiMhIHJuPVZhbmlvbiBydD0xMDIxNzQ3MDk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMTc0NzA5NApEaWUgU3VtbWUgc3RpbW10IGRvY2ggLi4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogd2lyZiBtdWVuemVuIChWYW5pb24sIDE5LiBNYWkgMjAwMiwgMTU6MDM6MjEpOgp+IyEgcm49Qm9pbmcgcnQ9MTAyMTgwODU1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjE3NDcwOTQKV2VpYSwgZGFzIG1pdCBkZW0gUmVjaG5lbiBtdXNzIGljaCB3b2hsIG5vY2ggdWViZW4gLi4uCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUnVkZWxuIG9kZXIgc29uc3R3YXMgLi4uIChDYWRyYWNoLCAxOS4gTWFpIDIwMDIsIDE4OjE3OjUyKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMjE3Njc1MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDIxNTUwNjIyCldpZSBrb21tc3QgRHUgYXVmIGRpZSBaYWhsIDE2PyBJY2gga2VubmUgbWVocmVyZSBTZXJ2ZXIgd28gZGVmaW5pdGl2IG1pbmQuIDI0CkxldXRlIHNwaWVsbiBrb2VubmVuLgpCZWlzcGllbDogRXhjYWxpYnVyIDEzNC42MC4xMDAuMjY6MjcwMTUKCkNhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFJ1ZGVsbiBvZGVyIHNvbnN0d2FzIC4uLiAoR2xvaW5zb24sIDE5LiBNYWkgMjAwMiwgMjE6MzI6MDApOgp+IyEgcm49Q2FkcmFjaCBydD0xMDIxODI1MDcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMTU1MDYyMgooYSkgd2VpbCBtaXIgZWluIENTbGVyIGRhcyBhdWYgQW5mcmFnZSBzbyBtaXR0ZWlsdGUKKGIpIHdlaWwgd2lyIGtlaW5lIGV4dGVybmVuIFNlcnZlciBiZW51dHplbiwgc29uc3Qgd3VlcmRlIGljaCBrZWluCiAgICBSdWRlbG11ZGRlbiBhbmVtcGZlaGxlbgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2llIHdhaHIgKmcqIChDb2JyYXgsIDIxLiBNYWkgMjAwMiwgMDA6MTE6MDApOgpEZWluIEZyZXVuZCBIaXNhc3VsIHRlaWx0IERpciBtaXQ6IGljaCBiaW4gbWFsIHdpZWRlciBzcG9ydG1hY2hlbiEKW1RvZDpMYXJzXSBTcG9ydCBoYXQgZ2VyYWRlIEhpc2FzdWwgdW1nZWJyYWNodC4KW1RvZDpTcG9ydF0gU3BvcnQgaXN0IE1vcmQuLi4KCi4uLiBubyBjb21tZW50IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FlbXBmZXIgLi4uIChMaWFyYSwgMjIuIE1haSAyMDAyLCAwMDo1OTowMik6CgpbVHJ2ZXM6QWxtZHVkbGVyXSBpY2ggbWFjaCBkYXMgaW1tZXIgc28gbWl0IGRlbSB3YWZmZW53ZWNoc2VsOiBvc3RlbgpbVHJ2ZXM6QWxtZHVkbGVyXSBpbnYuLi5haGhoIHdhcnVtIGhhYiBpY2ggZWluIG1lc3NlciBnZXp1ZWNrdD8gdQpbVHJ2ZXM6QWxtZHVkbGVyXSBwYWtldC4uLmtvbWlzY2gsIGRhIHdhciBkb2NoIHZvcmhlci4uLnUgYmV1dGVsICh3YXJ1bSBoYWIKW1RydmVzOkFsbWR1ZGxlcl0gaWNoIHNvZnRlaXMgaW0gYmV1dGVsLi4uIG5pbW0gc29mdGVpcyBhdXMgYmV1dGVsLCB6dWVja2UKW1RydmVzOkFsbWR1ZGxlcl0gc29mdGVpc2UgLi4uIGdlaHQgbmljaHQsIGtvbWlzY2guIGlzcyBlaXMsIHUgc2FjayAoZHUKW1RydmVzOkFsbWR1ZGxlcl0gZmluZGVzdCBzYWNrcmF0dGVuLi4udSBydWNrc2Fjay4uLmFoaGgsIGVpbmUgZWlzYXh0IC4uLgpbVHJ2ZXM6QWxtZHVkbGVyXSB6dWVja2UgZWlzYXh0IHdlc3RlbiAuLi50YWt0aWsgaGFzZW5mdXNzLCB1bnRlcmxhdWZlCltUcnZlczpBbG1kdWRsZXJdIG1hdWx3dXJmLCBncmFiZSBtaXQgc2NoYXVmZWwgdW0genUgdW50ZXJsYXVmZW4uLi4tYSBrYW5uIG1pcgpbVHJ2ZXM6QWxtZHVkbGVyXSBiaXR0ZSBtYWwgamVtYW5kIHNjaG5lbGwgaGVsZmVuLi4uCltUcnZlczpMaWFyYSBmYWVsbHQgdm9yIExhY2hlbiB2b20gc3R1aGwuXQpbQWxsZ2VtZWluOkVsZGFyb24gbGFjaHQgc2ljaCBzY2hsYXBwLl0KW1RydmVzOk1hbmRyYWdvbiBsb2x0Ll0KW1RydmVzOlNjaG9rb10gQWVoaCAuLi4uIHdhcyBhdWNoIGltbWVyIGVzIHdhciBBbG1pIC4uLiBOSU1NIFdFTklHRVIgOikKW0FsbGdlbWVpbjpFbGRhcm9uXSAtPiAtdHIKW1RydmVzOkxpYXJhIGtyaWVndCBrZWluZSBMdWZ0IG1laHIuXQpbVHJ2ZXM6U2Nob2tvIGRlbmt0IC4gbyBPIChvZGVyIG1laHI/KV0KRHUgZ3JpbnN0IFNjaG9rbyBhdXMgZGVyIEZlcm5lIGFuLgpbVHJ2ZXM6TWVsY2hvcl0gbmVpbiEgZ2liIGFiIDopCltUcnZlczpFbGVuZG9yXSBhbgpbVHJ2ZXM6RWxkYXJvbl0gd2VyIHBvc3RldCBkYXM/IDspCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1cyBkLmEubiAoQW1hcnlsbGlzLCAyMi4gTWFpIDIwMDIsIDE4OjM5OjMwKToKPj4gTmFjaGRlbSBpY2ggdm9yIG5vY2ggbmljaHQgYWxsIHp1IGxhbmdlciBaZWl0IHZvbgo+PiBPZXN0ZXJyZWljaCBuYWNoIE11ZW5jaGVuIGdla29tbWVuIGJpbiwgCj4gCj4gQWhhLCBlaW4gVXBncmFkZSBpbiBMZWJlbnNxdWFsaXR0LgoKRnxyIHdlbGNoZSBTZWl0ZT8KCiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRpbWluZyAhIDopIChNb3Jnb3RoLCAyMy4gTWFpIDIwMDIsIDExOjEzOjA5KToKRHUgdGVpbHN0IE5vbm5lIG1pdDogd2FubiBnZWh0IGlociBlc3NlbiwgemVjaz8KTm9ubmUgaXN0IHNlaXQgMSBTdHVuZGUgdW5kIDAgTWludXRlbiB2b2VsbGlnIHVudGFldGlnLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUaW1pbmcgISA6KSAoTm9ubmUsIDIzLiBNYWkgMjAwMiwgMTE6MjE6MjkpOgp+IyEgcm49TW9yZ290aCBydD0xMDIyMTQ1MTg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMjE0NTE4OQpEYSBzaWVoc3RlIG1hbCwgZ2lidCBhdWNoIExldXRlLCBkaWUgYXJiZWl0ZW4gKGM6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE5pYmVsLCAyMy4gTWFpIDIwMDIsIDEyOjI2OjMzKToKW1NlaGVyOkJyb3RuYWVsXSB3ZXIga2VubnQgZGVuIHdlZyBhdXMgbmVza2F5YXMgZWlzd3Vlc3RlPz8KW1NlaGVyOk1hbmRyYWdvbl0gdGVsZXBvcnQKW0FsbGdlbWVpbjpTYW5nb10gR2lidCBkb2NoIHZpZWwgZ2VxdWFzc2VsIGF1ZiAtbW9lcmRlcgpbU2VoZXI6T3JrdG9ldGVyXSBCZW5kZWlnaWQgdW5kIGRpZSBIYXJweWllCltTZWhlcjpNYW5kcmFnb25dIGJhbnNoZWUgLi4uCltTZWhlcjpCcm90bmFlbF0gdGVsZXBvcnQgZ2VodCBoaWVyIG5pY2guLi4KW1NlaGVyOlNhbmdvIGtlbm50IGRlbiB3ZWcgZHVyY2gsIGFiZXIgcmF1cyA/XQpbU2VoZXI6T3JrdG9ldGVyXSB1cHMuLiBzdGltbXQuLiBsYW5nZSBuaWNodCBtZWhyIGRhIGdld2VzZW4gOikKW1NlaGVyOk1hbmRyYWdvbl0gZGFubiBtdXNzdGUgd29obCBmKgpbU2VoZXI6TWFuZHJhZ29uIGhhdCBuZSBLYXJ0ZSB2b24gZGVyIEVpc3d1ZXN0ZV0KW1NlaGVyOkJyb3RuYWVsXSBoaWVyIGthbm4gbWFuIF9uaWNodF8gZm9yc2NoZW4uLi4gZ3J1bW1lbApbU2VoZXI6U2FuZ29dIEltbWVyIG5hY2ggV2VzdGVuLCB3ZW5ucyBuaWNodCB3ZWl0ZXIgZ2VodCBuYWNoIHN1ZWRlbiB1bmQgd2VubgpbU2VoZXI6U2FuZ29dIGRpZSBCYW5zaGVlIGtvbW10LCBncnVlc3MgTGFyc2kgdm9uIG1pciA6OQpbU2VoZXI6QnJvdG5hZWxdIGlzIHdlc3RlbiBsaW5rcz8KW1RvZDpMYXJzXSBFaW5lIEJhbnNoZWUgaGF0IGdlcmFkZSBCcm90bmFlbCB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgQmFuc2hlZV0gWUlJSWlpaWlpYWstWWFrLUlJaWlpaWlBQUtLWVlpaWFhYWFLS0sgISEhIQogIC0gTmliZWwKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEF1Z2Vua2VicyBnYXJhbnRpZXJ0ISAoTGlhcmEsIDIzLiBNYWkgMjAwMiwgMTk6MzU6MjEpOgp+IyEgcm49QmFtYnVsa28gcnQ9MTAyMjEzOTIyNiByZz13d3cKfiMhIHRpZD0xMDIyMTM5MjI2Ck1hY2hzdCBkdSBkYXMgZ2V0eiBtaXQgUm9uZGEgenVzYW1tZW4gaXJnZW5kd2llIHN5c3RlbWF0aXNjaCBpbSBBdWZ0cmFnIGRlcgpBdWdlbmFlcnp0ZT8gOy0pCgpaWkwsIHd1bmRlcnQgZ2FyIG5peCBtZWhyIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdyYWQgZWJlbiAuLi4gKEl2bywgMjMuIE1haSAyMDAyLCAxOTo1MjoyNik6Cn4jISBybj1WYW5pb24gcnQ9MTAyMjE3NjE4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjIxNzYxODUKaGFzdCB3YXMgdmVyZ2Vzc2VuOgpCcm90bmFlbCBydWZ0OiB1bmQgTm9ubmUgaXN0IG5lIFplY2tlLCBOb25uZSBpc3QgbmUgWmVja2UhCkJyb3RuYWVsICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhCj4gTW9lcmRlcjpMYXJzIEljaCBoYWIgZ3JhZCBCcm90bmFlbCB1bWdlYnJhY2h0LgoKLi4uCn51CgpQUzogamEgaWNoIGJpbiBlaW4gem11ZCBudXR6ZW5kZXIgVHJvbGwgOykKR3J1c3MsIEl2bwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0ZGlnZXN0IChWYW5pb24sIDIzLiBNYWkgMjAwMiwgMjA6MTA6MTUpOgpOZXdzZ3JvdXBzOiBkZS5yZWMuZmlsbS5oZWlta2lubwpTdWJqZWN0OiBSZTogU2Nvb3RlciAtIEVuY29yZSAoVGhlIFdob2xlIFN0b3J5KSwgMiBEVkRzCk1lc3NhZ2UtSUQ6CgpbU046IEVzIGdpbmcgdW0gZGllIFp1dmVybHNzaWdrZWl0IHZvbiBhbWF6b24uZGVdCgpNYXJ0aW4gd3JvdGU6Cgo+IGFsc28gbWVpbnQgaWhyIGljaCBrYW5uIG9obmUgYmVkZW5rZW4gZG9ydCBiZXN0ZWxsZW4/CgpTYWdlbiB3aXIgZXMgbWFsIHNvLCB3YXMgbWljaCB2b24gZGVyIEJlc3RlbGx1bmcgZWluZXIgU2Nvb3RlciBEVkQKYmVpIGFtYXpvbi5kZSBhYmhhZWx0LCBzaW5kIG1pdCBTaWNoZXJoZWl0IGtlaW5lIFZvcmJlaGFsdGUgZ2VnZW51ZWJlcgphbWF6b24uCgoKClYqIGdyaW5zdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR3JhZCBlYmVuIC4uLiAoTGlhcmEsIDIzLiBNYWkgMjAwMiwgMjA6MTM6NTcpOgp+IyEgcm49SXZvIHJ0PTEwMjIxNzYzNDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIyMTc2MTg1CktsaWNrZXIgdm9yIGRlbSBHZXNjaHJlaWJzZWwgZG9jaCBtYWwgYXVmIGRhcyBrbGVpbmUgQ29tcGlzeW1ib2wgKFBhcnNpbmcpCnVudGVuIHJlY2h0cyBpbSBGZW5zdGVyLiBEYW5uIGtvbW10IGVpbiBvcmRlbnRsaWNoZXIgQXJ0aWtlbCBoZXJhdXMuIDotKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXRkaWdlc3QgKExpYXJhLCAyMy4gTWFpIDIwMDIsIDIwOjE1OjA4KToKfiMhIHJuPVZhbmlvbiBydD0xMDIyMTc3NDE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMjE3NzQxNQpTb3dhcyBsaWVzdCBkdT8KClpaTCwgendlaWZlbHQgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHcmFkIGViZW4gLi4uIChOb25uZSwgMjMuIE1haSAyMDAyLCAyMDoxNTo0NCk6Cn4jISBybj1MaWFyYSBydD0xMDIyMTc3NjM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMjE3NjE4NQpLbGlja2VuIGJlaW0gTXVkZGVuPyBNYWNoZW4gd2lyIGhpZXIgZGVtbmFlY2hzdCBhdWNoIGtsZWluZSBTY2hhbHRmYWVsY2hlbgpmdWVyICdub3JkZW4nLCAnb3N0ZW4nLCAndG9ldGUgPG5wYzwnPwoKTm9ubmUsIGdydWViZWxuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV0ZGlnZXN0IChWYW5pb24sIDIzLiBNYWkgMjAwMiwgMjA6MTU6NTIpOgp+IyEgcm49TGlhcmEgcnQ9MTAyMjE3NzcwOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjIxNzc0MTUKRGVuIE5ldGRpZ2VzdD8gS2xhci4gRGVyIGlzIHZpZWwgQmVzc2VyIGFscyBNb1BvIHVuZCBCaWxkIHp1c2FtbWVuIDopCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR3JhZCBlYmVuIC4uLiAoTGlhcmEsIDIzLiBNYWkgMjAwMiwgMjA6MTc6MTkpOgp+IyEgcm49Tm9ubmUgcnQ9MTAyMjE3Nzc0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjIxNzYxODUKQW4gbWVpbmVtIEVya2xhZXJ1bmdzdmVyc3VjaCBtZXJrc3QgZHUsIGRhc3MgaWNoIHZvbiB6TVVEIG51ciBzZWhyIGJlZGluZ3QKQWhudW5nIGhhYmUuIDstKQoKWlpMLCBURi1sZXJ0IGxpZWJlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR3JhZCBlYmVuIC4uLiAoVmFuaW9uLCAyMy4gTWFpIDIwMDIsIDIwOjE3OjM3KToKfiMhIHJuPU5vbm5lIHJ0PTEwMjIxNzc3NDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIyMTc2MTg1CkRhbm4gZ2lidHMgc2ljaGVyIGF1Y2ggZGVuIDxCZWNvbWUgU2Vlcj4tQnV0dG9uIGZ1ZXIgek11ZCA6KQoKViosIHNvbGx0ZSBtYWwgbmFjaCBNZWdhc2NobWFycm4gdmVybGVnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHcmFkIGViZW4gLi4uIChMaWFyYSwgMjMuIE1haSAyMDAyLCAyMDoxODo1Myk6Cn4jISBybj1WYW5pb24gcnQ9MTAyMjE3Nzg1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjIxNzYxODUKQXJtZXIgWnVnZy4gOy0pCldpcmQgZXIgbmFjaGhlciBub2NoIHdlZ2VuIEtMLVZlcmJyZWl0dW5nIHZvbiBkZW4gRXJ6aWVzIGVpbmdla2Vya2VydCA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBpc3QgendhciBldHdhcyBhZWx0ZXIgLi4uIChWYW5pb24sIDIzLiBNYWkgMjAwMiwgMjA6MzM6MTEpOgouLi4gYWJlciBuZXR0OgoKU3ViamVjdDogUmU6IEY6IEJhY2twdWx2ZXJwaWxsZW4gYWxzIEVjc3Rhc3kgdmVya2F1ZmVuIC0tIAoKSnJnIFdhZ25lciBzY2hyaWViOgoKPiBOYWNoZnJhZ2VyIE4gd2lyZnQgc2ljaCBlaW5lIGRpZXNlciBQaWxsZW4gZWluIHVuZCBpc3Qgb2IgZGVyIGZlaGxlbmRlbgo+IFdpcmt1bmcgZW50dHVzY2h0LiBadWZsbGlnIGJlc2l0enQgTiBhYmVyIGVpbmVuIE1lZ2EtQ2hlbWllYmF1a2F1c3Rlbgo+ICh3YXJ1bSBlciBuaWNodCBzZWluZSBlaWdlbmVuIFBpbGxlbiBkcmVodCwgc29sbCBqZXR6dCBuaWNodAo+IGludGVyZXNzaWVyZW4pIHVuZCBzdGVsbHQsIG1pc3N0cmF1aXNjaCBnZXdvcmRlbiwgYmVpIGVpbmVyIEFuYWx5c2UKPiBmZXN0LCBkYXNzIGRpZSBpaG0gdmVya2F1ZnRlbiBQaWxsZW4genUgMTAwJSBhdXMgQmFja3B1bHZlciBiZXN0ZWhlbi4KCgpEYXp1IGJyYXVjaHQgZXIga2VpbmVuIENoZW1pZWJhdWthc3Rlbi4gRXMgcmVpY2h0LCB3ZW5uIGVyIGVpbmUgUGlsbGUKZWlud2lyZnQgdW5kIG5pY2h0IGF1ZmdlZHJlaHQgd2lyZCwgc3RhdHQgZGVzc2VuIGFiZXIgc3R1bmRlbmxhbmcgcnxscHN0CndpZSBlaW5lIFJvYmJlIChuYXNzZXMgQmFja3B1bHZlciBlbnR3aWNrZWx0IGxpdGVyd2Vpc2UgS29obGVuc3VyZSkuCgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEZXIgaXN0IHp3YXIgZXR3YXMgYWVsdGVyIC4uLiAoSmFtZXNvbiwgMjMuIE1haSAyMDAyLCAyMDozNTowMSk6Cn4jISBybj1WYW5pb24gcnQ9MTAyMjE3ODc5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjIxNzg3OTEKV2FobnNpbm4uIFdhcnVtIGthdWZlbiBkaWUgTGV1dGUgZGFubiBuaWNodCBCYWNrcHVsdmVyLVBpbGxlbiBzdGF0dApTb2RhLUF1dG9tYXRlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNoYW90ZW4gLi4uIDstKSAoTGlhcmEsIDI0LiBNYWkgMjAwMiwgMDE6NDQ6MTkpOgpQdWsgaXN0IGFud2VzZW5kLAp1bmQgendhciB2b246IE11ZW5zdGVyLgpQYXNzaXYgc2VpdDogMDI6MzY6NTQKRWluZ2Vsb2dndCBzZWl0OiBEb24sIDIzLiBNYWkgMjAwMiwgMjM6MDY6MTYKVm9sbGVyIE5hbWU6IFRlYW06Q2hhb3NrYWV0emNoZW4gUHVrIHdhcnRldCBhdWYgZGllIEZpbnN0ZXJuaXMKUmFzc2U6IEZlbGluZSwgIEdpbGRlOiBDaGFvcywgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogMTk0ZCAxMDo0NzoyMiwgICBTcGllbGVybGV2ZWw6IDc2IChTZWhlciksICAgR2lsZGVubGV2ZWw6IDExCkRhdHVtIGRlcyBlcnN0ZW4gTG9naW46IERvbiwgMjMuIEFwciAxOTk4LCAxMzo1MToyOAp6LlouIGFid2VzZW5kLCBHcnVuZCAgOiBlaW5rYXVmZW4KQmlzaGVyIGJlcmVpdHMgMTYwIG1hbCBnZXN0b3JiZW4KCldpcmQgZGFzIG5pY2h0IGlyZ2VuZHdhbm4genUgdGV1ZXIgYW4gZGVyIFRhbmtlPyA7LSkKClpaTCwgZ3JpbnN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERlciBpc3QgendhciBldHdhcyBhZWx0ZXIgLi4uIChDYXR3ZWF6bGUsIDI0LiBNYWkgMjAwMiwgMDc6MTk6NTQpOgp+IyEgcm49SmFtZXNvbiBydD0xMDIyMTc4OTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMjE3ODc5MQpXZWlsIEJhY2twdWx2ZXItUGlsbGVuIHZpZWwgenUgdGV1ZXIgc2luZCwgZGllIGdpYnRzIG51ciBhdWYgZGVtCkVjc3Rhc3ktTWFya3QuLi4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGVyIGlzdCB6d2FyIGV0d2FzIGFlbHRlciAuLi4gKEJhbWJpLCAyNC4gTWFpIDIwMDIsIDA5OjMxOjAxKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDIyMjE3NTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMjE3ODc5MQpHZW5hdS4KRGllIHNpbmQgc29nYXIgc28gdGV1ZXIsIGRhc3MgbWFuIGFiIHVuZCB6dSBYVEMtUGlsbGVuIGFuZ2VkcmVodCBiZWtvbW10CmFuc3RhdHQgZGVyIEJhY2twdWx2ZXItUGlsbGVuLiBVbmQgd2llIGRhcyAiU29kYSItV2Fzc2VyIGRhbm4gc2NobWVja3Qgd2lsbAppY2ggZ2FyIG5pY2h0IHdpc3Nlbi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRBUyBzb2xsIG1hbihuKSBnbGF1YmVuID8gKE1vcmdvdGgsIDI0LiBNYWkgMjAwMiwgMTI6NDc6MjIpOgpEZWluZSBGcmV1bmRpbiBMZWlibml6IHRlaWx0IERpciBtaXQ6IG5vZSBtZWluIG11bmQgaXN0IHp1IGtsZWluIGZ1ZXIgOikgICAgICAKCk0qIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0YW50ZW4gKFBpdGZhbGwsIDI0LiBNYWkgMjAwMiwgMTM6Mjc6NDUpOgpEZWluIEZyZXVuZCBBaGFiIHRlaWx0IERpciBtaXQ6IHdvIGJsZWlidCBkaWUgdGFudGUhCkdsb2luc29uICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRlaW4gRnJldW5kIEJyb3RuYWVsIHRlaWx0IERpciBtaXQ6IHJlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpjaGFvcyBydWxleiEhIDotKSAoRGllZGVyLCAyNC4gTWFpIDIwMDIsIDIzOjE5OjEwKToKCkRlciBtYWdpc2NoZSBTY2h1dHogRGVpbmVyIENoYW9zaGF1dCB3aXJkIGdsZWljaCB2ZXJzY2h3aW5kZW4hCkR1IGZldWVyc3QgZWluZSBsb2Rlcm5kZSBGbGFtbWVua3VnZWwgYXVmIEtobyduaWdoIGFiLgpLaG8nbmlnaCBzYWd0OiBTbywgRGllZGVyLCBqZXR6dCBpc3QgbWFsIGdlbnVnIGRlcyBTcGFzc2VzLgpLaG8nbmlnaCBzYWd0OiBMYXNzIGxpZWJlciBtYWwgRGVpbmUgR2VzaW5udW5nIHVlYmVycHJ1ZWZlbiwgRHUgbmFlaGVyc3QgRGljaApLaG8nbmlnaCBzYWd0OiBqYSBzY2hvbiBkZW4gS2xlcmlrZXJuIGFuIQogIER1IHB1bHZlcmlzaWVyc3QgS2hvJ25pZ2guCktobyduaWdoIHNpbmt0IHRvZWRsaWNoIGdldHJvZmZlbiB6dSBCb2Rlbi4KW01vZXJkZXI6R2Vpc3QgS2hvJ25pZ2hzXSBXYXMsIERpZWRlciBoYXQgbWlyIFdJRSBWSUVMRSBMZWJlbnNwdW5rdGUKW01vZXJkZXI6R2Vpc3QgS2hvJ25pZ2hzXSBhYmdlem9nZW4/Pz8KClVuZ2VzY2huaXR0ZW4sCkRpZWRlciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGNoYW9zIHJ1bGV6ISEgOi0pIChMaWFyYSwgMjYuIE1haSAyMDAyLCAxNTowMDo0Nyk6Cn4jISBybj1EaWVkZXIgcnQ9MTAyMjI3NTE1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjIyNzUxNTAKTmFqYSwgZXR3YXMgaGFzdGUgdm9yaGVyIGFiZXIgZG9jaCB1bnRlcnNjaGxhZ2VuOiA7LSkpCgpbVG9kOkxhcnNdIERpZSBGbGFtbWVuc2FldWxlIGRlcyBLaG8nbmlnaCBoYXQgZ2VyYWRlIERpZWRlciB1bWdlYnJhY2h0LgpbVG9kOkxhcnNdIDwyMjozMzo0Mj4KCgpaWkwsIGdyaW5zdCB1ZWJlcmhlYmxpY2ggYW5nZXNpY2h0cyAnQ2hhb3MgcnVsZXMnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpmb3JtZWwgMSAoS2VrcywgMjYuIE1haSAyMDAyLCAxNTozODo0OCk6CmhlaW56IHBydWVsbGVyIChvZXN0ZXJyZWljaGlzY2hlciBrb21tZW50YXIgYXVmIE9SRik6ICJzY2huZWxsc3RlIFJ1bmRlIGZ1ZXIKRGF2aWQgQ291bHRoYXJkIG1pdCAxOjE5IEtvbW1hIDchIERhcyBpc3QgdW0gMyBaZWhudGVsIHNjaG5lbGxlciBhbHMgaW0KbGV0enRlbiBKYWhyIC0gbWl0IDE6MTkgS29tbWEgLSBhZWggKFBhdXNlKSAtIDghIiAoaWNoIHJlY2huZSBqZXR6dCBOSUNIVCBuYWNoCipncmlucyopIC0+IERpZSBBdXNzYWdlIHd1cmRlIGF1Y2ggbmljaHQgcmV2aWRpZXJ0ISEgKmxhY2gqICh3aWV2aWVsZQpPZXN0ZXJyZWljaGVyIHdvaGwgbWl0cmVjaG5lbj8/KSAqS0VLUyAtIHRyb3R6IE1vdG9yc2NoYWRlbiBkaWUgTW9udG95YS1GbGFnZ2UKc2Nod2luZ2VuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBmb3JtZWwgMSAoRWxiZXJldCwgMjYuIE1haSAyMDAyLCAxNTozOTo1Mik6Cn4jISBybj1LZWtzIHJ0PTEwMjI0MjAzMjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDIyNDIwMzI4CmVpZ2VudGxpY2ggaGFiIGljaCBnYXIgbml4IGFuZGVyZXMgZXJ3YXRldCAqZmcKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZm9ybWVsIDEgKEtla3MsIDI2LiBNYWkgMjAwMiwgMTU6NDg6MjQpOgp+IyEgcm49RWxiZXJldCBydD0xMDIyNDIwMzkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMjQyMDMyOAogQW5tZXJrdW5nOiBkaWUgc2NobmVsbHN0ZSBSdW5kZSBmdWhyIDIwMDEgTklDSFQgRGF2aWQgQ291bHRoYXJ0IC0gc29uZGVybgpNaWthIEhha2tpbmVuIC0gbWl0IDE6MjE6NTcuLi4gOy0pKSkgQWxzIEZvcm1lbCAxLUZhbiBoYXQgbWFucyBzY2hvbiBzY2h3ZXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGZvcm1lbCAxIChEYXJpYSwgMjYuIE1haSAyMDAyLCAxNjo0ODo1Nik6Cn4jISBybj1LZWtzIHJ0PTEwMjI0MjA5MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIyNDIwMzI4CkRlciBiZXN0ZSBTcHJ1Y2ggYXVmIFBSZW1pZXJlIGhldXRlOgpEaWUgZ2FuemUgR0VyYWRlIGlzdCBlaW5lIGxlaWNodGUgQmllZ3VuZy4KCkRhcmlhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBmb3JtZWwgMSAoVGlhbWFrLCAyNi4gTWFpIDIwMDIsIDE2OjUwOjE3KToKfiMhIHJuPURhcmlhIHJ0PTEwMjI0MjQ1MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIyNDIwMzI4CkVyaW5uZXJ0IG1pY2ggaXJnZW5kd2llIGFuIG1laW5lbiBDaGVtaWVsZWhyZXI6CgoiVWx0cmF2aW9sZXR0ZXMgTGljaHQgaXN0IGphIGJla2FubnRsaWNoIGJsYXUgLi4uIgoKClRpYW1hawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZm9ybWVsIDEgKERlZXBibHVlLCAyNi4gTWFpIDIwMDIsIDE2OjUwOjIzKToKfiMhIHJuPURhcmlhIHJ0PTEwMjI0MjQ1MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIyNDIwMzI4ClVuZCB3ZW5uIEVpbnN0ZWluIEFsYmVydCBrcnVlbW10IHNpY2ggZGVyIHJhdW0gdm9yIExhY2hlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGZvcm1lbCAxIChPcmt0b2V0ZXIsIDI3LiBNYWkgMjAwMiwgMDg6NTg6MDYpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTAyMjQyNDYyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjI0MjAzMjgKT2VzdGVycmVpY2hpc2NoZXMgUmFkaW8gaXN0IGFiZXIgYXVjaCBuaWNodCBiZXNzZXI6ICJEZXIgZXJzdGUgU2llZyBzZWl0IHVlYmVyCmVpbmVtIEphaHIsIGdlbmF1ZXIgc2VpdCBTZXB0ZW1iZXIgMjAwMSIKCk9ya1QsIHNjaG11bnplbG5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR290aGljIGluIExlaWJuaXo/IChHb3IsIDI3LiBNYWkgMjAwMiwgMTA6MjA6MDQpOgpTcGllbGVyIEEgc2FndDogU2FnbWEgd2Fyc3RlIGF1Y2ggaW4gTGVpYm5peiBiZWltIEdvdGhpYy1GZXN0aXZhbD8KU3BpZWxlciBCOiBJbiBMZWlibml6PwpTUGllbGVyIEE6IEphamEgaW4gTGVpYm5peiEhIQoKR29yIHNpY2ggd2Vnc2NobWVpc3NlbmQgdm9yIGxMYWNoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFc/IChTYW5nbywgMjcuIE1haSAyMDAyLCAyMDoyOTo0OCk6CltBbGxnZW1laW46QWxtZHVkbGVyIGlzdCBrb2VuaWdzdHJldSAhISFdCkRyb2xsaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm9obmUgV29ydGUgKE9ya3RvZXRlciwgMjguIE1haSAyMDAyLCAwODo1MTowNSk6Cls8TWFzdGVSPjpMZWlibml6IGxhZXNzdCBkaWUgRWJlbmUgJ0h1bW5pJyBlbnRzdGVoZW4uXQpbPE1hc3RlUj46TGVpYm5peiBsYWVzc3QgZGllIEViZW5lICdSZW50bmVyJyBlbnRzdGVoZW4uXQpbPE1hc3RlUj46TGVpYm5peiBsYWVzc3QgZGllIEViZW5lICdBbGtvaG9sJyBlbnRzdGVoZW4uXQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11ZGRlciBoaW50ZXJtIE1vbmQgKE5vbm5lLCAyOC4gTWFpIDIwMDIsIDEwOjA3OjE5KToKWFhYIHRlaWx0IERpciBtaXQ6IGVjaHQ/IGlzIGphIGtyYXNzISBoZXV0enV0YWdlIGlzIHdvaGwgbml4IG1laHIgbWl0ClhYWCB0ZWlsdCBEaXIgbWl0OiAianVuZ2ZyYWV1bGljaCBpbiBkaWUgZWhlIiBvZGVyPwoKTm9ubmUsIGZyYWd0IHNpY2gsIHdvIHNpZSBoaWVyIGlzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvIGFlaG5saWNoLi4uIChLYXZhbGllciwgMjkuIE1haSAyMDAyLCAxMDoyODoxMCk6Cmh0dHA6Ly93d3cuaW5rdGFuay5jb20vQVQvaW5kZXguY2ZtP3Rvb249MTEtMTUtMDAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsZXJpa2VyLi4uIChFbGRhcm9uLCAyOS4gTWFpIDIwMDIsIDIxOjI4OjMyKToKQnJvdG5hZWwgdHJpdHQgZGllIEtyYWVoZS4KQnJvdG5hZWwgZnJhZ3QgZGllIEtyYWVoZSBuYWNoIE11aC4KRGllIEtyYWVoZSBtYWNodDogS3JhYWghCkJyb3RuYWVsIGZyYWd0IGRpZSBLcmFlaGUgbmFjaCBNdWghLgpEaWUgS3JhZWhlIG1hY2h0OiBLcmFhaCEKQnJvdG5hZWwgZnJhZ3QgZGllIEtyYWVoZSBuYWNoIE11aCEhISEhLgpEaWUgS3JhZWhlIG1hY2h0OiBLcmFhaCEKCkVsZGFyb24sIHN0YXVuZW5kLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcndpc2NodCEgKE1pcmphbSwgMzAuIE1haSAyMDAyLCAxMzowMjoxNCk6Cldvb2R5IGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBXaWVuICh1ZWJlciBWaWVubmEpLgpQYXNzaXYgc2VpdDogMDA6MzA6MDkKRWluZ2Vsb2dndCBzZWl0OiBEb24sIDMwLiBNYWkgMjAwMiwgMTE6MTU6MzcKVm9sbGVyIE5hbWU6IFphdWJlcnp3ZXJnIFdvb2R5IHNhZ3Q6IEkgaGFiIGFuIEt5bGUgaW4gbWluIEF1ZyEKUmFzc2U6IFp3ZXJnLCAgR2lsZGU6IFphdWJlcmVyLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAyMDJkIDA1OjI3OjU0LCAgIFNwaWVsZXJsZXZlbDogNTMgKFNlaGVyKSwgICBHaWxkZW5sZXZlbDogOQpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiB2b3IgZGVtIDEwLiBOb3YgMTk5NQpIb21lcGFnZTogaHR0cDovL2ZvcmVzdC5jaGVsbG8uYXQvfmFjLwp6LlouIGFid2VzZW5kLCBHcnVuZCAgOiAtZHVzY2hlbiB1bmQgc28tCkJpc2hlciBiZXJlaXRzIDE1IG1hbCBnZXN0b3JiZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFcndpc2NodCEgKEN1Y2h1bGxpbiwgMzAuIE1haSAyMDAyLCAxMzowNDowMik6Cn4jISBybj1NaXJqYW0gcnQ9MTAyMjc1NjUzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjI3NTY1MzQKRHUgaGFzdCBzaWNoZXIgIlNocmVrIiwgZGVuIEZpbG0sIGdlc2VoZW4uIFNvIGluIGV0d2EgbXVzc3QgRHUgRGlyIGVpbmUKRHVzY2hlIGZ1ZXIgWndlcmdlIHZvcnN0ZWxsZW4uLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVyd2lzY2h0ISAoTGlhcmEsIDMwLiBNYWkgMjAwMiwgMTM6MDY6MTUpOgp+IyEgcm49TWlyamFtIHJ0PTEwMjI3NTY1MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIyNzU2NTM0ClBmdC4gV2FocnNjaGVpbmxpY2ggR29sZHN0YXViZHVzY2hlIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFcndpc2NodCEgKEN1Y2h1bGxpbiwgMzAuIE1haSAyMDAyLCAxMzowNjo0NSk6Cn4jISBybj1MaWFyYSBydD0xMDIyNzU2Nzc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMjc1NjUzNApOZWluLiBFaHIuICJHb2xkc3RhdWIiIHd1ZXJkZSBpY2ggZGFzIG51biBuaWNodCBuZW5uZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRXJ3aXNjaHQhIChXb29keSwgMzAuIE1haSAyMDAyLCAxMzo0MDoyNyk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAyMjc1NjgwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjI3NTY1MzQKTmEgbmEuIEtlaW5lIFZlcmdsZWljaGUgbWl0IE9nZXJuIGJpdHRlLiBXaXIgWndlcmdlIGhhYmVuIGF1Y2ggRWhyZ2VmdWVobC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVXJ3YWxkcmV0dHVuZ3Nha3Rpb24gKFRydWcsIDMxLiBNYWkgMjAwMiwgMDA6MDM6MjQpOgp+IyEgcm49RmVuZGVyIHJ0PTEwMjI3NzIyNTYgcmc9d2l0emUKfiMhIHRpZD0xMDIyNzcyMjU2CkhtLCBkYXMgVGVpbCBzY2hlaW50IGphIGdhbnogZWNodCB6dSBrdXJzaWVyZW4sIGhhYiBpY2ggZXJzdCBndXQgZWluIER1dHplbmQKbWFsIGdlbGVzZW4sIGVpbiB3ZW5pZyBvZWZ0ZXIgYWxzIGRpZSBDaHJpc3RlbiBhdWYgcmFzcHV0aW4uZGUgKGRpZSBtaXQgZGVuCnNwcmljaHdvZXJ0bGljaGVuIGxhbmdlbiBCYXJ0KS4KClRydWcsIG1hbCB3YXMgaW4gZGllIFplaXR1bmcgc2NocmVpYmVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFZlcnZvbGxzdGFlbmRpZ2UgZGllIFJlaWhlIChudXIgZnVlciBNYWdpZXIpIChCYW1iaSwgIDEuIEp1biAyMDAyLCAyMTowMDo1MCk6Cn4jISBvbj1CYW1iaSBvdD0xMDIyOTU4MDQ0IG9nPXB1aXoKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyMjk1NzE4MCByZz1wdWl6Cn4jISB0aWQ9MTAyMjk1NTc0OApXQVMgaGFzdCBEdSBnZW5vbW1lbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaGxlY2h0ZSBFcmZhaHJ1bmdlbiBnZW1hY2h0PyAoVHJ1ZywgIDIuIEp1biAyMDAyLCAyMzowNzo1NSk6CltBbGxnZW1laW46QmlyZHkgc2llaHQgZ3JhZCBtYWwgd2llZGVyLCB3aWUgU2NobWlua2UgZWluZSBGcmF1IHZlcmFlbmRlcm4KICAgICAgICAgICBrYW5uLiAqZypdCkVpbiBlbnRzZXR6bGljaGVyIFNjaHJlaSBoYWxsdCB2b20gRnJpZWRob2YgaGVydWViZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2NobGVjaHRlIEVyZmFocnVuZ2VuIGdlbWFjaHQ/IChJbWRhLCAgMi4gSnVuIDIwMDIsIDIzOjMyOjI2KToKfiMhIHJuPVRydWcgcnQ9MTAyMzA1MjA3NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjMwNTIwNzUKV2FzIG1hbmNoZSBGcmF1ZW4gbWl0IFNjaG1pbmtlIG1hY2hlbiB3dWVyZGUgamVkZW4gR2VicmF1Y2h0d2FnZW5oYWVuZGxlcgpoaW50ZXIgR2l0dGVyIGJyaW5nZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgRGluZyBuaW1tdCdzIHdvaGwgcGVyc29lbmxpY2guLi4gKEFwb2xsb25pYSwgIDMuIEp1biAyMDAyLCAwOTowNjozMik6CltUb2Q6TGFyc10gRWluIGdyb3NzZXIgUHlyb3JhbmhhIGhhdCBnZXJhZGUgTGlhcmEgdW1nZWJyYWNodC4gPDIzOjA5OjM1PgpbVG9kOkVpbiBncm9zc2VyIFB5cm9yYW5oYV0gQnJlbm5lLCBMaWFyYSwgYnJlbm5lISA8MjM6MDk6MzU+CgouLi4KCltUb2Q6TGFyc10gRWluIGdyb3NzZXIgUHlyb3JhbmhhIGhhdCBnZXJhZGUgVmFybGFyaW9uIHVtZ2VicmFjaHQuIDwyMzoyNjo1Nz4KW1RvZDpFaW4gZ3Jvc3NlciBQeXJvcmFuaGFdIEJyZW5uZSwgTGlhcmEsIGJyZW5uZSEgPDIzOjI2OjU3PgoKT2IgZGVyIFp3ZXJnZW56YXViZXJpbmVuIG5pY2h0IG1hZz8KCkFwbyoKZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoIGphLi4uIEdhbnoga2xhciAoQ2ljZXJvLCAgMy4gSnVuIDIwMDIsIDEyOjI1OjAyKToKZnJhZ2Ugc2lhbWlsIG5hY2gga29uemVudHJhdGlvbgo+IFNpYW1pbCB0ZWlsdCBEaXIgbWl0OiBLb256ZW50cmF0aW9uIGlzdCBzZWhyIHdpY2h0aWchCmZyYWdlIHNpYW1pbCBuYWNoIGtvbnplbnRyaWVyZW4KPiBTaWFtaWwgdGVpbHQgRGlyIG1pdDogRGFzIGlzdCB1bndpY2h0aWcuCgpEZXIga2FubiBzaWNoIGF1Y2ggbmV0IGVudHNjaGVpZGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNaG0gLi4uIChMaWFyYSwgIDQuIEp1biAyMDAyLCAwMDoyODo1Nyk6CkRlaW4gRnJldW5kIE11cGZlbCB0ZWlsdCBEaXIgbWl0OiB3ZXIgaGVpcmF0ZXQ/IHVuZCBnZWdlbiB3ZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBVcndhbGRyZXR0dW5nc2FrdGlvbiAoQm9pbmcsICA0LiBKdW4gMjAwMiwgMDk6MTc6MTcpOgp+IyEgcm49RmVuZGVyIHJ0PTEwMjMxMjYzMTUgcmc9d2l0emUKfiMhIHRpZD0xMDIyNzcyMjU2CkRlaW5lciwgbGllYmVyIEZlbmRlciwgYXVjaCBuaWNodCAuLi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa2xlcmlrZXIgb2RlciBzby4uLiAoS2F2YWxpZXIsICA0LiBKdW4gMjAwMiwgMTY6NDQ6MjUpOgpCaXJkeSBzYWd0OiBuYWphLCBkZXIgc2VlIGJlaW0gZ3J1bmRzdHVlY2sgbWVpbmVyIG9tYQpCcm90bmFlbCBzYWd0OiBJY2ggaGFiZSBBbmdzdC4gSWNoIGZsdWVjaHRlLgpCcm90bmFlbCBzY2h3aW5ndCBzZWluZW4gU3RvY2sgdW5kIHdhbmRlcnQgbmFjaCBPc3Rlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmltbWVyIHdpZWRlciBzY2hvZW4gOikgKEdub21lLCAgNC4gSnVuIDIwMDIsIDE3OjQwOjU1KToKQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDoga2FubnNjaHQgZHUgbWlzY2ggJ29hZW4/IDopCkR1IHRlaWxzdCBCcm90bmFlbCBtaXQ6IHdhcyBrYW5uIGljaCBkaWNoPyBkdSBoYXN0IG5lbiBzcHJhY2hmbHVjaApCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiB3aWVzY2hvIHNjaGFqdCBtaXIgbGxsbGxsbGx5c2NoIGRpZSBzY2hsbGxsYW1wZSBuaXNjaApCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBtZWluZSBmYWVoaWprZWl0ZW4gYW4KQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDoganV0CgpvZGVyIGdlaG9lcnQgZGFzIG5hY2ggd2l0emU/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBVcndhbGRyZXR0dW5nc2FrdGlvbiAoRmVuZGVyLCAgNC4gSnVuIDIwMDIsIDE3OjQzOjQ2KToKfiMhIHJuPUJvaW5nIHJ0PTEwMjMxNzUwMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIyNzcyMjU2Cm5hamEsIGljaCBoYWIgc2Nob24gZ2VzY2htdW56ZWx0LCBhbHMgaWNoIGRhcyBnZXNjaHJpZWJlbiBoYWJlIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR3V0ZS1OYWNodC1HZXNjaGljaHRlIEkgKERvdHosICA0LiBKdW4gMjAwMiwgMjI6MTE6NTcpOgpEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBuYWd1dCwgaWNoIGhhdXQgYWIgOikgbmFhYWNodGkgOikKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogb2NoIG5vZQpEZWluZSBGcmV1bmRpbiBMaWFyYSB0ZWlsdCBEaXIgbWl0OiBibGVpYiBkb2NoIHVuZCBlcnphZWhsIG1pciBuZSBndXRlIG5hY2h0CkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IGdlc2NoaWNodGUKRGVpbiBGcmV1bmQgQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogaG1tLi4uIGRpZSBnZXNjaGljaHRlIG1pdCBkZW0ga2xlaW5lbgpEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBncnVlbmVuIGhvYmJpdCwgZGVyIGFzdWthIGdlZnJlc3NlbiBoYXQ/CkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IGF1amEKRGVpbmUgRnJldW5kaW4gQXN1a2EgdGVpbHQgRGlyIG1pdDogbWljaCBmcmlzc3Qga2VpbmVyCkRlaW4gRnJldW5kIEJyb3RuYWVsIHRlaWx0IERpciBtaXQ6ICpyYWV1c3BlciogYWFhYWFhaGxzbwpEb3R6IHdpbGwgZGllIGF1Y2ggaW4gZGVyIEZlcm5lIGhvZXJlbi4KRGVpbmUgRnJldW5kaW4gQXN1a2EgdGVpbHQgRGlyIG1pdDoga2xhcHBlIEJyb3RuYWVsCkRlaW4gRnJldW5kIEJyb3RuYWVsIHRlaWx0IERpciBtaXQ6IGVzIHdhciBlaW5tYWwgZWluIGtsZWluZXIgZ3J1ZW5lciBIb2JiaXQuCkRlaW4gRnJldW5kIEJyb3RuYWVsIHRlaWx0IERpciBtaXQ6IGRlciBoaWVzIGdhYWFueiB6dWZhZWxsaWcgZWxkYXJvbiA6KQpEZWluIEZyZXVuZCBFbGRhcm9uIHRlaWx0IERpciBtaXQ6IGVpbmUgZ2VzY2hpY2h0ZT8gd28/CkRlaW4gRnJldW5kIEVsZGFyb24gdGVpbHQgRGlyIG1pdDogaWNoIGJpbiBuaWNodCBncnVlbgpEZWluZSBGcmV1bmRpbiBMaWFyYSB0ZWlsdCBEaXIgbWl0OiBuZXR0ZXIgenVmYWxsIDotKQpEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBkZXIga2xlaW5lIGdydWVuZSBob2JiaXQgd2FuZGVydGUgdWViZXIKRGVpbiBGcmV1bmQgQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogZWluZSBncnVlbmUgZ3Jvc3NlIHdpZXNlCkRlaW4gRnJldW5kIEVsZGFyb24gdGVpbHQgRGlyIG1pdDogaWNoIGhhYiB6d2FyIGdydWVuZSBoYWFyZSwgYWJlciBpY2ggYmluCkRlaW4gRnJldW5kIEVsZGFyb24gdGVpbHQgRGlyIG1pdDogX25pY2h0XyBncnVlbgpEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBhdWYgZWlubWFsIGh1c2NodGUgYXVzIGRlbSB2ZXJzdGVjayBkaWUKRGVpbiBGcmV1bmQgQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogZmllc2UgZ3Jvc3NlIGFzdWthIGhlcnZvciB1bmQgc3RpZXJ0ZSBkZW4KRGVpbiBGcmV1bmQgQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogYXJtZW4gZmxhdXNjaGlnZW4gaG9iYml0IGJvZXNlIGFuCkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IGhlaGUgOi0pCkRlaW4gRnJldW5kIEVsZGFyb24geml0dGVydCBhdXMgZGVyIEZlcm5lLgpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiBoZSwgaWNoIGJpbiBuaWNodCBmaWVzLCB1bmQgYXJyb2dhbnQgdW5kCkRlaW5lIEZyZXVuZGluIEFzdWthIHRlaWx0IERpciBtaXQ6IHVlYmVyaGVibGljaApEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBhbHMgZGllIGJvZXNlIGFzdWthIGlocmVuIHphdWJlcnN0YWIgaG9iCkRlaW4gRnJldW5kIEJyb3RuYWVsIHRlaWx0IERpciBtaXQ6IGZpbmcgZGVyIGtsZWluZSBob2JiaSBhbiBsYXV0IHp1IGphbW1lcm46CkRlaW4gRnJldW5kIEVsZGFyb24gdGVpbHQgRGlyIG1pdDogQnJvdG5hZWwgaGF0IGRpciBtaXIgZ2VmYWVyYnQgOigKRGVpbiBGcmV1bmQgRWxkYXJvbiB0ZWlsdCBEaXIgbWl0OiBob2JiaXRzIGphbW1lciBuaWNodApEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiAiYnVlZGRlIGJ1ZWRkZSwgb2ggZHUgZ3Jvb3NlIGFzdWthLiBpY2gKRGVpbiBGcmV1bmQgQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogd2VyZGUgYWxsZXMgdHVuIHdhcyBkdSB2b24gbWlyIGJlZmllaHN0IgpEZWluIEZyZXVuZCBFbGRhcm9uIHRlaWx0IERpciBtaXQ6IE5FRUVJTgpEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBkYSBzY2htdW56ZWx0ZSBkaWUgQXN1a2EgbnVyIHVlYmVyaGVibGljaApEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiB1bmQgZmluZyBhbiBuYWNoenVkZW5rZW4KRGVpbmUgRnJldW5kaW4gQXN1a2EgbXVzdGVydCBCcm90bmFlbCBhdXMgZGVyIEZlcm5lLgpEZWluIEZyZXVuZCBFbGRhcm9uIHRlaWx0IERpciBtaXQ6IGljaCB3aWxsIG5pY2h0IGJlZmllaHQgd2VyZGVuLCBkYXMgaXN0CkRlaW4gRnJldW5kIEVsZGFyb24gdGVpbHQgRGlyIG1pdDogYmVzdGltbXQgaXJnZW5kd2FzIGVrbGlnZXMKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogbmVlIG1hY2ggZHUgbWEgZG90egpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiBob2ZmZW50bGljaCBuaWVtYW5kLi4uCkRlaW4gRnJldW5kIEJyb3RuYWVsIGJsYWV0dGVydCB1bSBhdXMgZGVyIEZlcm5lLgpWb24gRnJldW5kaW4gQXN1a2E6IGhhaCwgamV0enQgZmFlbGx0IGltIG5peCBtZWhyIGVpbgpWb24gRnJldW5kIEJyb3RuYWVsOiAqcmFldXNwZXIqIGFiZXIgZGVyIGtsZWluZSBob2JiaXQgd2FyClZvbiBGcmV1bmQgQnJvdG5hZWw6IG5hdHVlcmxpY2ggbmljaHQgYWxsZWluZS4gZXIgaGF0dGUgZWluZQpWb24gRnJldW5kIEJyb3RuYWVsOiBrbGVpbmUgbmllZGxpY2hlIGZlZSwgZGllIGlobSBpbW1lciB6dXIKVm9uIEZyZXVuZCBCcm90bmFlbDogc2VpdGUgc3RhbmQgYXVmIHNlaW5lbiBpcnJmYWhydGVuClZvbiBGcmV1bmRpbiBBc3VrYTogbmUgZmV0dGUgRmVlPwpWb24gRnJldW5kaW4gTGlhcmE6IGNvb2wga29jaHQgd2VyIGtha2FvPyA7LSkKVm9uIEZyZXVuZGluIExpYXJhOiBkYXMgd2lyZCBlaW4gbmV0dGVyIGFiZW5kIDstOQpWb24gRnJldW5kIEVsZGFyb246IFdhcyBoZWlzc3QgaGllciBJcnJmYWhydGVuPyAqZ3J1bW1lbCoKVm9uIEZyZXVuZCBCcm90bmFlbDogZGFzIGZlZWxlaW4gc2Nod2lycnRlIHVuYmVtZXJrdCB2b24gZGVuClZvbiBGcmV1bmQgQnJvdG5hZWw6IHVlYmVyaGVibGljaGVuIGF1Z2VuIGRlciBib2VzZW4gYXN1a2EKVm9uIEZyZXVuZCBCcm90bmFlbDogaGludGVyIGlociByZWNodGVzIG9ociB1bmQgZmx1ZXN0ZXJ0ZSBpaHIKVm9uIEZyZXVuZCBCcm90bmFlbDogZXR3YXMgaW4gZGllc2VzClZvbiBGcmV1bmQgRWxkYXJvbjogdW5kIHdhcz8KVm9uIEZyZXVuZCBCcm90bmFlbDogdXJncy4gbW9tLCBtdXNzIG1hbCBrdXJ6IHdlZy4uICpqYW1tZXIqCkVyd2FydGV0IChvZmZsaW5lKTogQnJvdG5hZWwKVm9uIEZyZXVuZGluIExpYXJhOiBhcmdlbCBkYXMgbWFjaHQgZXIgbWl0IGFic2ljaHQKQW4gRnJldW5kZTogT2NoIG1lbm5vLCBncmFkIHdvJ3Mgc28gc3Bhbm5lbmQgaXN0LgpWb24gRnJldW5kaW4gTGlhcmE6IGdyYWRlIHdvcyBzcGFubmVuZCB3YXIKRGVpbiBGcmV1bmQgRWxkYXJvbiBqYW1tZXJ0IG1pdCBEb3R6IGluIGRlciBGZXJuZSBtaXQuCgpUbyBiZSBjb250aW51ZWQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHdXRlLU5hY2h0LUdlc2NoaWNodGUgSUkgKERvdHosICA0LiBKdW4gMjAwMiwgMjI6MTc6NDEpOgpFcndhcnRldCAgKG9ubGluZSk6IEJyb3RuYWVsCkFuIEZyZXVuZGU6IEFhYWgsIHdlaXRlciBnZWh0J3MuClZvbiBGcmV1bmQgRWxkYXJvbjogQWgsIEZvcnRzZXR6dW5nIGRlciBHZXNjaGljaHRlPwpEZWluIEZyZXVuZCBCcm90bmFlbCBydWVja3Qgc2VpbmUgTGVzZWJyaWxsZSB3aWVkZXIgenVyZWNrdCBhdXMgZGVyIEZlcm5lLgpWb24gRnJldW5kIEJyb3RuYWVsOiBvZWhtLCB3byB3YXJlbiB3aXI/ClZvbiBGcmV1bmRpbiBMaWFyYTogYnJvdGkgaGFzdGUgbmUgc2Nod2FjaGUgYmxhc2U/ClZvbiBGcmV1bmQgQnJvdG5hZWw6IG5lLCBzdHJlc3MgOykKVm9uIEZyZXVuZGluIExpYXJhOiBiZWkgZGVyIGZlZSBkaWUgYXN1a2Egd2FzIGlucyBvaHIKVm9uIEZyZXVuZGluIExpYXJhOiBmbHVlc3RlcnQgbmF0dWVybGljaApWb24gRnJldW5kaW4gQXN1a2E6IGR1IHdvbGx0ZXN0IGdlcmFkZSBlbmRlIHNhZ2VuClZvbiBGcmV1bmQgQnJvdG5hZWw6IGFoamEKVm9uIEZyZXVuZCBFbGRhcm9uOiBNZWluZSBGZWUgZmx1ZXN0ZXJ0IGRlciBib2VzZW4gQXN1a2Egd2FzClZvbiBGcmV1bmQgRWxkYXJvbjogaW5zIE9oci4KVm9uIEZyZXVuZCBCcm90bmFlbDogYWFhYWFhYWhsbyAqcmFldXNwZXIqClZvbiBGcmV1bmQgQnJvdG5hZWw6IGRpZXNlcyBrbGVpbmUgRmVlY2hlbiBoaWVzcyBpbSB1ZWJyaWdlbiAsClZvbiBGcmV1bmQgQnJvdG5hZWw6IHZsbCBuaWNodCBnYW56IHp1ZmFlbGxpZyAsIExpYXJhIDopClZvbiBGcmV1bmRpbiBMaWFyYTogdmxsPyA7LSkKVm9uIEZyZXVuZCBFbGRhcm9uOiBPaCB3ZWkuClZvbiBGcmV1bmRpbiBMaWFyYTogb2NoIGJpcyBlYmVuIHdhcnMgc3Bhbm5lbmQgOy0pKSkKQW4gRnJldW5kZTogRmVlY2hlbiBtaXQgQmFydD8KVm9uIEZyZXVuZCBCcm90bmFlbDogQXN1a2FzIGF1Z2VuIHdlaXRldGVuIHNpY2ggZnVlcmNodGVybGljaApWb24gRnJldW5kIEJyb3RuYWVsOiBhbHMgc2llIGRpZSB3b3J0ZSBkZXIgZmVlIHZlcm5haG0gdW5kIGRlbQpWb24gRnJldW5kIEJyb3RuYWVsOiBob2JiaXQgd3VyZGUgZ2FueiBiYW5nClZvbiBGcmV1bmQgRWxkYXJvbjogSWNoIHdpbGwgbmUgcmljaHRpZ2UgRmVlLCBrZWluZW4KVm9uIEZyZXVuZCBFbGRhcm9uOiBTY2hydW1wZWx6d2VyZy4gKmphbW1lcioKRGVpbmUgRnJldW5kaW4gQXN1a2EgZW50c29yZ3Qgc2NobmVsbCBkYXMgQnVjaCBpbiBkZXIgRmVybmUuClZvbiBGcmV1bmQgQnJvdG5hZWw6IGF1ZiBlaW5tYWwgdmVyd2FuZGVsdCBzaWNoIGRpZSBib2VzZSBib2VzZQpWb24gRnJldW5kIEJyb3RuYWVsOiBhc3VrYSBpbiBlaW4ga2xlaW5lcyBsaWViZXMgdW5zY2hpbGRpZ2VzClZvbiBGcmV1bmQgQnJvdG5hZWw6IG1hZWRjaGVuIHZvbSBsYW5kZQpWb24gRnJldW5kIEJyb3RuYWVsOiB1bmQgcGxvZXR6bGljaCB3dXJkZSBkZXIgaG9iYml0IGdhbnoKVm9uIEZyZXVuZCBCcm90bmFlbDogbmFycmlzY2gKVm9uIEZyZXVuZGluIExpYXJhOiBib2FoIGljaCBob2ZmZSBpY2ggcmVkZSBuaWNodCBpbSBzY2hsYWYKVm9uIEZyZXVuZGluIExpYXJhOiA7LSkKVm9uIEZyZXVuZCBCcm90bmFlbDogdXVwcywgZGllIGZhbHNjaGUgc2VpdGUgOykKVm9uIEZyZXVuZCBFbGRhcm9uOiBnaWJzIHp1LCBBc3VrYSB3aXJkIHp1IGVpbmVyClZvbiBGcmV1bmQgRWxkYXJvbjogU2NocnVtcGVsa3JvZXRlLCBvZGVyPwpWb24gRnJldW5kIEJyb3RuYWVsOiAqcmFldXNwZXIqIGFhaGxzbywgbmFjaGRlbSBkYXMgZmVlbGVpbgpWb24gRnJldW5kIEJyb3RuYWVsOiBpaHJlIHphdWJlcndvcnRlIGluIGFzdWthcyBvaHIgZ2VmbHVlc3RlcnQKVm9uIEZyZXVuZCBCcm90bmFlbDogaGF0dGUgc2Vua3RlIHNpZSBpaHJlbiBzdGFiIHVuZCBtZWludGUgenVtClZvbiBGcmV1bmQgQnJvdG5hZWw6IGtsZWluZW4gZ3J1ZW5lbiBob2JiaXQ6ClZvbiBGcmV1bmQgQnJvdG5hZWw6ICJnZWggaGluYXVzIGluIGRpZSB3ZWx0IHVuZCBicmluZyBtaXIgZWluClZvbiBGcmV1bmQgQnJvdG5hZWw6IG9wZmVyLCBhdWYgZGFzIGljaCBkZWluIGxlYmVuIHZlcnNjaG9uZW4KVm9uIEZyZXVuZCBCcm90bmFlbDogbW9lZ2UhIgpWb24gRnJldW5kaW4gTGlhcmE6IGhhbHQgYnJvdGkKVm9uIEZyZXVuZGluIExpYXJhOiBpY2gga29tbSBuaWNoIG1laHIgbWl0IDstKQpWb24gRnJldW5kIEVsZGFyb246IHVuZCB3YXMgaGF0IGRpZSBmZWUgamV0enQgZ2VzYWd0PwpWb24gRnJldW5kaW4gTGlhcmE6IGFjaCBzbyBhc3VrYSBzZW5rdGUgZGVuIHN0YWIgYWxsZXMga2xhcgpWb24gRnJldW5kaW4gTGlhcmE6IDotKQpWb24gRnJldW5kaW4gTGlhcmE6IGJpdHRlIHdlaXRlciA6LSkKVm9uIEZyZXVuZCBCcm90bmFlbDogZ2Vob3JzYW0gdW5kIGVocmZ1ZXJjaHRpZyB3aWUgZWluIGhvYmJpdApWb24gRnJldW5kIEJyb3RuYWVsOiBudW4gbWFsIGlzdCwgbmFobSBlciBzZWluZW4ga2xlaW5lbgpWb24gRnJldW5kIEJyb3RuYWVsOiB3YW5kZXJzdG9jayB1bmQgd2FuZGVydGUgaGluYXVzIGluIGRpZQpWb24gRnJldW5kIEJyb3RuYWVsOiBncm9zc2Ugd2VsdApWb24gRnJldW5kaW4gTGlhcmE6IHdpZSBzdWVzcwpEZWluZSBGcmV1bmRpbiBMaWFyYSBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCkRlaW4gRnJldW5kIEVsZGFyb24gaHVzdGV0IGF1cyBkZXIgRmVybmUuClZvbiBGcmV1bmQgQnJvdG5hZWw6IGF1ZiBzZWluZXIgd2FuZGVyc2NoYWZ0IGVudGRlY2t0ZSBlciBhbQpWb24gRnJldW5kIEJyb3RuYWVsOiBob3Jpem9udCBlaW5lIGR1bmtsZSBzdGFkdCBpbiBkZXIKVm9uIEZyZXVuZCBCcm90bmFlbDogcmljaHR1bmcsIGluIGRpZSBhc3VrYSBpaG4gZ2VzY2hpY2t0IGhhdHRlClZvbiBGcmV1bmRpbiBBc3VrYTogZXJ6YWVobCBzY2huZWxsZXIKVm9uIEZyZXVuZCBCcm90bmFlbDogYXVmIGVpbm1hbCB3dXJkZSBpaG4gZ2FueiBiYW5nZSBiZWkgZGVyClZvbiBGcmV1bmQgQnJvdG5hZWw6IHZvcnN0ZWxsdW5nIGRhcyBpbiBkaWVzZXIgc3RhZHQgd2VzZW4KVm9uIEZyZXVuZCBCcm90bmFlbDogaGF1c2VuIGtvZW5udGVuLCBkaWUgc2NobGltbWVyIGFscyAxMApWb24gRnJldW5kIEJyb3RuYWVsOiBhc3VrYXMgYXVmIGVpbmVuIGhhdWZlbiB3YWVyZW4uLgpWb24gRnJldW5kaW4gTGlhcmE6IHVpICp6aXR0ZXIqCkRlaW4gRnJldW5kIEVsZGFyb24gaWVrc3QgaW4gZGVyIEZlcm5lLgpWb24gRnJldW5kIEJyb3RuYWVsOiBhYmVyIGFscyBlciBkZW4gZHVmdCBlaW5lcyBwaWthbnRlbiBlc3NlbnMKVm9uIEZyZXVuZCBCcm90bmFlbDogcm9jaCwgd3VjaHMgaW4gaWhtIGRlciBtdXQgZGVzIGhvYmJpdHMKVm9uIEZyZXVuZCBVZ2k6IGtyaWVnZW4gd2lyIGVpbiBEZyB0ZWFtIHp1c2FtbWVuID8KVm9uIEZyZXVuZCBCcm90bmFlbDogc28gc3RpZWZlbHRlIGVyIGZyb2hlbiBtdXRlcyBhdWYgZXNzZW4gaW4KVm9uIEZyZXVuZCBCcm90bmFlbDogZGllIHJpY2h0dW5nIGRlciBzdGFkdCB1bmQgYmV0cmF0IGRpZXNlClZvbiBGcmV1bmQgQnJvdG5hZWw6IGRvY2ggYW0gc3RhZHRlaW5nYW5nIHN0ZWxsdGUgc2ljaCBlaW4gZ2FyClZvbiBGcmV1bmQgQnJvdG5hZWw6IGZ1cmNodGJhcmVyIGxlZ2lvbmFlciBpaG0gaW4gZGVuIHdlZwpWb24gRnJldW5kIEVsZGFyb246IHNhZyBibG9zcywgZGVyIGhlaXNzdCBwaXRtdWgKRGVpbmUgRnJldW5kaW4gQXNyYWkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpWb24gRnJldW5kIEJyb3RuYWVsOiAid2VyIGRhPyIgc2NocmllIGRpZXNlci4gZGVyIGtsZWluZSBob2JiaXQKVm9uIEZyZXVuZCBCcm90bmFlbDogd3VyZGUgZ2FueiBibGF1IHZvciBhbmdzdApWb24gRnJldW5kaW4gTGlhcmE6IGFsc28gaXNzZXIgbnUgdHVlcmtpcz8gOy0pCkFuIEZyZXVuZGU6IGNoYW1hZWxkYXJvbj8KVm9uIEZyZXVuZCBCcm90bmFlbDogInNhZyBtaXIgZGFzIFBhc3N3b3JkIHVuZCBpY2ggbGFzcyBkaWNoClZvbiBGcmV1bmQgQnJvdG5hZWw6IHBhc3NpZXJlbiIKVm9uIEZyZXVuZCBFbGRhcm9uOiBkYXMgaGVpc3N0IGxvc3VuZywgbmljaHQgcGFzc3dvclQKVm9uIEZyZXVuZCBCcm90bmFlbDogZGVyIGtsZWluZSBob2JiaXQgZmluZyBhbiB6dSBncnVlYmVsbiB1bmQKVm9uIEZyZXVuZCBCcm90bmFlbDogaGF0dGUga2VpbmUgc28gcmVjaHRlIGFobnVuZy4gYWJlciBhbHMgZXIKVm9uIEZyZXVuZCBCcm90bmFlbDogZGVuIHdhZWNodGVyIGdlbmF1ZXIgYW5zY2hhdXRlLCBlbnRkZWNrdGUKVm9uIEZyZXVuZCBCcm90bmFlbDogZXIgZWluIGtsZWluZXMgc2NoaWxkY2hlbiBhbiBzZWluZXIKVm9uIEZyZXVuZCBCcm90bmFlbDogcnVlc3R1bmcKVm9uIEZyZXVuZGluIEFzdWthOiBhbHNvIGpldHp0IHdpcmRzIGFsYmVybgpWb24gRnJldW5kIEJyb3RuYWVsOiBtaXQgeml0dHJpZ2VyIHN0aW1tZSBuYW5udGUgZXIgZGFzIGF1ZgpWb24gRnJldW5kIEJyb3RuYWVsOiBkaWVzZW0gc2NoaWxkc2NoZW4gc3RlaGVuZGUgd29ydDoKVm9uIEZyZXVuZCBCcm90bmFlbDogIk1VSCEiCkRlaW5lIEZyZXVuZGluIExpYXJhIHZlcnN0ZWNrdCBzaWNoIGhpbnRlciBEb3R6IGF1cyBkZXIgRmVybmUuCkRlaW4gRnJldW5kIEVsZGFyb24gc2V1Znp0IGF1cyBkZXIgRmVybmUuClZvbiBGcmV1bmRpbiBBc3VrYTogd2llc28gd3Vzc3RlIGljaCBkYXMgZXMgYWxiZXJuIHdpcmQ/CkRvdHogdmVyc3RlY2t0IHNpY2ggdm9yIExpYXJhIGF1cyBkZXIgRmVybmUuClZvbiBGcmV1bmQgQnJvdG5hZWw6IGhtcGYsIHdlaXNvIGJpbW1lbHQgZGF1ZXJudCBtZWluIGhhbmR5CkFuIEZyZXVuZGU6IGRhcyBpc3QgYWJlciBuZSBrb21pc2NoZSBsb3N1bmcKVm9uIEZyZXVuZGluIEFzdWthOiBpY2ggd2lsbCBkaWNoIHZvbiBkZXIgVGFzdGF0dXIgd2Vna3JpZWdlbiwKVm9uIEZyZXVuZGluIEFzdWthOiBnYW56IGVpbmZhY2gKVm9uIEZyZXVuZCBCcm90bmFlbDogZGFzIGRhY2h0ZSBzaWNoIGRlciB3YWVjaHRlciBhdWNoIHVuZCBuYW0KVm9uIEZyZXVuZCBCcm90bmFlbDogZGVuIGhvYmJpdCBzZWluIHByb3ZpYW50IHdlZwpWb24gRnJldW5kaW4gTGlhcmE6IGJvYWggZGllIHNhdQpWb24gRnJldW5kIEJyb3RuYWVsOiBkYSBmaW5nIGRlciBrbGVpbmUgaG9iYml0IGFuIGtsYWVnbGljaCB6dQpWb24gRnJldW5kIEJyb3RuYWVsOiBqYW1tZXJuClZvbiBGcmV1bmQgQnJvdG5hZWw6IGRhIGRlciB3YWVjaHRlciBtaXRsZWlkIG1pdCBkaWVzZW0ga2xlaW5lbgpWb24gRnJldW5kIEJyb3RuYWVsOiBmZWxsdmllaCB3YXIsIGxpZXMgZXIgbm9jaG1hbCBnbmFkZSB3YWx0ZW4KVm9uIEZyZXVuZCBCcm90bmFlbDogYWVoLCBoYXR0ZS4uCkRlaW4gRnJldW5kIEJyb3RuYWVsIHJ1ZWNrdCBkaWUgYnJpbGxlIHp1cmVja3QgYXVzIGRlciBGZXJuZS4KVm9uIEZyZXVuZGluIExpYXJhOiBzY2hvbiBndXQgYnJvdGkgOy0pClZvbiBGcmV1bmQgQnJvdG5hZWw6IGFscyBkZXIgaG9iYml0IHNlaW5lIHNvcmdlbiB2b24gZGVyIGJvZXNlbgpWb24gRnJldW5kIEJyb3RuYWVsOiBhc3VrYSBkZW0gd2FlY2h0ZXIgZXJ6YWVobHRlIG11c3N0ZSBkaWVzZXIKVm9uIEZyZXVuZCBCcm90bmFlbDogc2NobXVuemVsbiB1bmQgdmVyc3RhZW5kbmlzdm9sbCBuaWNrZW4KVm9uIEZyZXVuZCBFbGRhcm9uOiBhaApWb24gRnJldW5kIEJyb3RuYWVsOiBlciB1ZWJlcnJlaWNodGUgaWhuIGVpbiBncm9zc2VuIHNjaHdhcnplbgpWb24gRnJldW5kIEJyb3RuYWVsOiBvbnl4LCBkZW4gZGllIGJvZXNlIGFzdWthIGhhYmVuIHdvbGx0ZSwKVm9uIEZyZXVuZCBCcm90bmFlbDogZG9jaCBkZXIgd2FyLCBvaG5lIGRhcyBhc3VrYSBlcyB3aWxsc2VuClZvbiBGcmV1bmQgQnJvdG5hZWw6IGtvbm50ZSwgbWl0IGVpbmVtIGJvZXNlbiBmbHVjaCBiZWxlZ3QKVm9uIEZyZXVuZGluIEFzdWthOiBzdHVwc3QgZGVyIHdhZWNodGVyIGVpZ2VudGxpY2ggYnJvdGk/ClZvbiBGcmV1bmQgQnJvdG5hZWw6IG5laW4KRGVpbmUgRnJldW5kaW4gTGlhcmEgZ2lidCBCcm90aSBtZWhyIGRyb2dlbiBhdXMgZGVyIEZlcm5lLgpWb24gRnJldW5kaW4gQXN1a2E6IG1pc3QsIHNvbnN0IHd1ZXJkIGljaCBkZW4gamV0enQgaGF1ZW4KVm9uIEZyZXVuZGluIEFzdWthOiBnZWhlbiB3ZWlsIGRlciBuZW0gZWxlbmRlbiBGcmVzc3NhY2sgaGlsZnQKVm9uIEZyZXVuZCBCcm90bmFlbDogc2NobmVsbCBsaWVzcyBkZXIgaG9iYml0IGRpZXNlbiBpbiBzZWluZW4KVm9uIEZyZXVuZCBCcm90bmFlbDogcnVja3NhY2sgdmVyc2Nod2luZGVuIHVuZCB3YW5kZXJ0ZSB3aWVkZXIKVm9uIEZyZXVuZCBCcm90bmFlbDogenVydWVjayB6dXIgZ3Jvc3NlbiB3aWVzZSBtaXQgaWhyZW4gdmllbGVuClZvbiBGcmV1bmQgQnJvdG5hZWw6IGJ1bnRlbiBzY2htZXR0ZXJsaW5nZW4KVm9uIEZyZXVuZCBCcm90bmFlbDogaW4gZGVyIGZlcm5lIGtvbm50ZSBkaWVzZXIgc2Nob24gZGllIGJvZXNlClZvbiBGcmV1bmQgQnJvdG5hZWw6IG1hZWNodGlnZSBhc3VrYSBzZWhlbiB1bmQgaWhtIHd1cmRlIHdpZWRlcgpWb24gRnJldW5kIEJyb3RuYWVsOiBnYW56IHRhdHRlcmljaCBpbiBkZW4ga25pZW4KVm9uIEZyZXVuZGluIExpYXJhOiB0YXR0ZXJpY2ggaXMgZ3V0IGRhcyBrZW5uIGljaCAtKQpWb24gRnJldW5kIEJyb3RuYWVsOiAibmEgbWVpbiBrbGVpbmVyIHdvbGxrbmFldWw/IGhhc3QgZHUgYXVjaApWb24gRnJldW5kIEJyb3RuYWVsOiBtZWluZW4gYmVmZWhsIGF1c2dlZnVlaHJ0IHdpZSBpY2ggaWhuIGRpcgpWb24gRnJldW5kIEJyb3RuYWVsOiBhdWZ0cnVnPyIgZnJhZ3RlIGFzdWthIGRlbiBob2JiaXQgbWl0ClZvbiBGcmV1bmQgQnJvdG5hZWw6IGRvbm5lcm5kZXIgc3RpbW1lClZvbiBGcmV1bmQgQnJvdG5hZWw6IHZvcnNpY2h0aWcgbmlja3RlIGRlciBob2JiaXQgZGVyIGFzdWthIHp1ClZvbiBGcmV1bmQgQnJvdG5hZWw6IGltIHdpc3NlbiBkZXMgZmx1Y2hlcyBhdWYgZGVuIG9ueXgKRGVpbiBGcmV1bmQgRWxkYXJvbiB3YXJ0ZXQgYXVmIGRhcyBIYXBweS1FbmQgaW4gZGVyIEZlcm5lLgpWb24gRnJldW5kIEJyb3RuYWVsOiB1ZWJlcmhlYmxpY2ggZ2xhZW56dGUgZWluIGxhZWNoZWxuIGF1ZgpWb24gRnJldW5kIEJyb3RuYWVsOiBhc3VrYXMgZ2VzaWNodCBhbHMgZGVyIHdpZWRlciBncnVlbgpWb24gRnJldW5kIEJyb3RuYWVsOiBnZXdvcmRlbmUgaG9iYml0IGlociBkZW4gZ3Jvc3NlbiBvbnl4ClZvbiBGcmV1bmQgQnJvdG5hZWw6IHVlYmVycmVpY2h0ZQpWb24gRnJldW5kIEVsZGFyb246IGljaCBiaW4gTklDSFQgZ3J1ZW4hClZvbiBGcmV1bmQgQnJvdG5hZWw6IGRvY2ggaW4gZGVtIG1vbWVudCB3byBhc3VrYSBkaWVzZW4gbWl0ClZvbiBGcmV1bmQgQnJvdG5hZWw6IGlocmVuIGdpZXJpZ2VuIGZsb3NzZW4gZXJncmlmZiwgemVycGxhdHp0ZQpWb24gRnJldW5kIEJyb3RuYWVsOiBkaWVzZSBtaXQgZWluZW0gbGF1dGVuICpTQ0hNQVRaKgpWb24gRnJldW5kIEJyb3RuYWVsOiB1bmQgZGllIGZlcm5lIGR1ZXN0ZXJlIHN0YWR0IGZpbmcgYXVmClZvbiBGcmV1bmQgQnJvdG5hZWw6IGVpbm1hbCBhbiB6dSBzdHJhaGxlbiB1bmQgZGVyIGhvYmJpdApWb24gRnJldW5kIEJyb3RuYWVsOiBob2VydGUgdHJvbXBldGVuZ2VzYWVuZ2UgZGFzIGlobiBnYW56ClZvbiBGcmV1bmQgQnJvdG5hZWw6IGdsdWVja2xpY2ggdW5zIGhlcnogd3VyZGUKVm9uIEZyZXVuZCBCcm90bmFlbDogc3RvbHogZGVzIHNpZWdlcyB3YW5kZXJ0ZSBlciB3aWVkZXIKVm9uIEZyZXVuZCBCcm90bmFlbDogenVydWVjayB1bmQgd3VyZGUgbWl0IGVpbmVtIGdyb3NzZW4KVm9uIEZyZXVuZCBCcm90bmFlbDogZmVzdGVzc2VuIGJlbG9obnQgYmlzIGRlciBob2JiaXQgcGxhdHp0ZQpWb24gRnJldW5kIEJyb3RuYWVsOiA6KQpWb24gRnJldW5kIEJyb3RuYWVsOiBlbmRlCkRlaW5lIEZyZXVuZGluIExpYXJhIGFwcGxhdWRpZXJ0IGF1cyBkZXIgRmVybmUuCkRlaW4gRnJldW5kIEJyb3RuYWVsIHZlcm5laWd0IHNpY2ggYXVzIGRlciBGZXJuZS4KVm9uIEZyZXVuZGluIEFzdWthOiB3ZW5pc3RlbnMgaXN0IGRlciBmcmVzc3NhY2sgYW0gZW5kZSBub2NoClZvbiBGcmV1bmRpbiBBc3VrYTogdmVycmVja3QKQW4gRnJldW5kZTogd3VubmViYXIgOl4pClZvbiBGcmV1bmQgRWxkYXJvbjogZGFzIHdhciBhYmVyIGJpbGRsaWNoIGdlbWVpbnQsIG9kZXI/CkRlaW4gRnJldW5kIEJyb3RuYWVsIHNjaGxpZXNzdCBkYXMgYnVjaCB1bmQgdmVyYnJlbm50IGVzIGF1cyBkZXIgRmVybmUuClZvbiBGcmV1bmRpbiBMaWFyYTogZGFua2UgYnJvdGkgZHUgYmlzdCB0b2xsIDotKQpWb24gRnJldW5kIEVsZGFyb246IGhvYmJpdHMga29lbm5lbiBuaWNodCBwbGF0emVuClZvbiBGcmV1bmRpbiBMaWFyYTogbmVlIHNvd2FzIHR1dCBtYW4gZG9jaCBuaWNodApBbiBGcmV1bmRlOiBzbywgbnVuIG1hbCBkZW4gZ2FuemVuIGViZW5lLWtyYW0KQW4gRnJldW5kZTogcmF1c3NjaG1laXNzZW4gdW5kIGRhbm4gbWFsIHBvc3RlbiA6XikKVm9uIEZyZXVuZGluIExpYXJhOiA6LSkKVm9uIEZyZXVuZCBCcm90bmFlbDogc28gbWVpbiBsaXJpLCBkYW5uIHd1ZW5zY2ggaWNoIGRpciBlaW5lClZvbiBGcmV1bmQgQnJvdG5hZWw6IGd1dGUgbmFjaHQgdW5kIGxhc3MgZGljaCBuaWNoIHZvbiBhc3VrYXMKVm9uIEZyZXVuZCBCcm90bmFlbDogaW0gdHJhdW0gdmVyamFnZW4gOikKVm9uIEZyZXVuZCBCcm90bmFlbDogdHNjaG9paSA6KQoKRGllIHNwaW5uZW4sIGRpZSBNdWRkZXIuIDpeKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IHNvbW1lcnBhcnR5PyAoQ2F0d2VhemxlLCAgNS4gSnVuIDIwMDIsIDEyOjIzOjA2KToKfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDIzMjY4MjkwIG9nPXBhcnR5Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTAyMzI1NTY4NiByZz1wYXJ0eQp+IyEgdGlkPTEwMjE4MTg5NjYKRGV0IGlzIGtlaW4gWmV0dGVsLCBkZXMgaXMgZWluIEJyZXR0LiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IHNvbW1lcnBhcnR5PyAoQ2F0d2VhemxlLCAgNS4gSnVuIDIwMDIsIDEyOjIzOjA3KToKfiMhIG9uPUNhdHdlYXpsZSBvdD0xMDIzMjcyNTc2IG9nPXBhcnR5Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAyMzI2ODI5MCByZz1wYXJ0eQp+IyEgdGlkPTEwMjE4MTg5NjYKTmVpbmVpbiwgZGFzIEJyZXR0IGlzdCBuaWNodCBnZWxiIC4uLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTXVkIHZlcm1hcmt0ZW4/IChHbG9pbnNvbiwgIDUuIEp1biAyMDAyLCAxMzoxMDowNCk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAyMzI3NDE1NCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMjMyMjM1MjgKTXVzcyBpY2ggZnVlciBEaWNoIGJldG9uZW4sIGRhc3MgZGEga2VpbiAiZGFzIGFsbGVpbiBtYWNodCBkZW4gRXJmb2xnIGF1cyIKc3RhbmQ/IEFiZXIgc2llaGUgLSBEdSB3aXJzdCBzY2hlaW5iYXIgZ2x1ZWNrbGljaCBkYW1pdCBhdXMgbWVpbmVyIEFuc2ljaHQKZWluZSBEaXNrdXNzaW9uIHp1IHphdWJlcm4uCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTXVkIHZlcm1hcmt0ZW4/IChDdWNodWxsaW4sICA1LiBKdW4gMjAwMiwgMTM6MTU6MzApOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAyMzI3NTQwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjMyMjM1MjgKSWNoIHppdGllcmU6ICJVbmQgZGFzIG1hY2h0IE1HIHNvIGVyZm9sZ3JlaWNoLiIuIFdlbm4gRHUgaW4gWnVrdW5mdAppbW1lciByZWxhdGl2aWVyZW4gbW9lY2h0ZXN0ICgiRGFzIGlzdCBtZWluZSBGcmV1bmRpbi4gLS0tIFVuZCBkYXMgYXVjaC4KVW5kIGRpZSBkYSBhdWNoLiIuLi4gb2RlciAiRGllIFVuZmFsbHVyc2FjaGUgd2FyIFRydW5rZW5oZWl0IGFtIFN0ZXVlci4gCi0tLSBVbmQgZWluZSBrYXB1dHRlIExlbmtzdGFuZ2UuIFVuZCBhYmdlZmFocmVuZSBSZWlmZW4uIikgLi4uIEJpdHRlLCAKZGFubiBpc3QgZGFzIGFiZXIgaW4gWnVrdW5mdCBERUlOIFByb2JsZW0uIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE11ZCB2ZXJtYXJrdGVuPyAoR2xvaW5zb24sICA1LiBKdW4gMjAwMiwgMTM6Mzc6MDgpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMjMyNzU3MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIzMjIzNTI4Ckxhc3MgRGlyIGRlbiBTYXR6ICJEYXMgaXN0IG1laW5lIEZyZXVuZGluLiIgbm9jaCBlaW5tYWwgZWJlbnNvIGd1dCBhdWYgZGVyClp1bmdlIHplcmdlaGVuIHdpZSAiVW5kIGRhcyBtYWNodCBkZW4gRXJmb2xnIGF1cy4iCkJlaWRlIFRoZW1lbmtvbXBsZXhlIHplaWNobmVuIHNpY2ggZGFkdXJjaCBhdXMgaW1tZXIgcmVsYXRpdmllcnQgd2VyZGVuIHp1Cm11ZXNzZW4uIFZpZWxsZWljaHQgd2VyZGUgaWNoIGluIFp1a3VuZnQgYWJlciBmdWVyIGRpY2ggZGFyYXVmIGFjaHRlbiwgbWVpbmUKQXVzc2FnZSB2b24gdm9ybmVoZXJlaW4genUgcmVsYXRpdmllcmVuLCBkYW1pdCBEZWluIHNjaG9lbmVzIFdlbHRiaWxkIGRlcgpld2lnbGljaCBhYnNvbHV0ZW4gQXVzc2FnZW4gbmljaHQgemVyc3RvZXJ0IHdpcmQuIEhpZXJtaXQgZnVlZ2UgaWNoIGFsc28gZGFzCmtsZWluZSBXb2VydGNoZW4gIm1pdCIgYW4gYmVsaWViaWdlciBTdGVsbGUgaW4gZGVuIFRleHQgZWluLiBVbmQgc3RlbGxlIGZlc3QsCmRhc3MgbWVpbmUgU3ByYWNoZXJrZW5udW5nc3NvZnR3YXJlIHd1bmRlcmJhciBmdW5rdGlvbmllcnQuCgpHbG9pbihzb24pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTXVkIHZlcm1hcmt0ZW4/IChDdWNodWxsaW4sICA1LiBKdW4gMjAwMiwgMTQ6NDg6MjYpOgp+IyEgcm49R25vbWUgcnQ9MTAyMzI4MTE3MiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMjMyMjM1MjgKS29tbXQgamV0enQgd2llZGVyIGRpZSAiU29sbCBkb2NoIEJ1Z3MgbnV0emVuIHdlciB3aWxsLCBzdG9lcnQgbWljaCBuaWNodC4iLQpEaXNrdXNzaW9uLCBqYT8gQml0dGUgbmlpaWNodCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBNdWQgdmVybWFya3Rlbj8gKEdub21lLCAgNS4gSnVuIDIwMDIsIDE0OjUwOjE4KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDIzMjgxMzA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMzIyMzUyOAp3ZW5pZ3N0ZW5zIGFudHdvcnRlc3QgRFUgaW4gZGVyIHJpY2h0aWdlbiBydWJyaWsuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogTXVkIHZlcm1hcmt0ZW4/IChDdWNodWxsaW4sICA1LiBKdW4gMjAwMiwgMTQ6NTQ6MDEpOgp+IyEgcm49R25vbWUgcnQ9MTAyMzI4MTQxOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjMyMjM1MjgKTmF0dWVybGljaC4gV2FyIGRpZSBiZXN0ZSBNb2VnbGljaGtlaXQsIGRlbiBRdWFyaywgZGVyIGFuc29uc3RlbiBoYWV0dGUKa29tbWVuIG11ZXNzZW4gKHdvIGlzdCBlaWdlbnRsaWNoIFRhcmluYT8pLCBhYnp1d3Vlcmdlbi4gOikKCkljaCBoYWV0dGUgZXMgYXVjaCBtaXQgIkhpdGxlciEiIHZlcnN1Y2hlbiBrb2VubmVuLCBhYmVyIEdvZHdpbiBrYW5uCm1hbiBhbmdlYmxpY2ggbmljaHQgbXV0d2lsbGlnIGlnbml0ZW4uIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IE11ZCB2ZXJtYXJrdGVuPyAoU2FuZ28sICA1LiBKdW4gMjAwMiwgMTQ6NTU6MzApOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMjMyODE2NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIzMjIzNTI4CktvbWlzY2gsIGRhIHN0ZWh0IG5pZSBtYWwgd2FzIGluIGRlciBNUEEgKGF1c3NlciBpbiBTY2htYXJybikgYWJlciB3ZW5uIGRhbm4KbWFsIHdhcyBrb21tdCBiZXNjaHdlcnQgc2ljaCB3ZXIsIHNvd2FzIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogTXVkIHZlcm1hcmt0ZW4/IChWYXJsYXJpb24sICA1LiBKdW4gMjAwMiwgMTQ6NTY6MjApOgp+IyEgcm49U2FuZ28gcnQ9MTAyMzI4MTczMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjMyMjM1MjgKRWdhbCB3YXMgZHUgdHVzdCBvZGVyIG5pY2h0IHR1c3QsIGVzIHdpcmQgc2ljaCBpbW1lciB3ZXIgYmVzY2h3ZXJlbi4gVGhhdCdzCmxpZmUgOikKClZhcmwqLCBDdWNodWxsaW4gbmFjaCBNZWdhc2NobWFycm4gemVycmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IE11ZCB2ZXJtYXJrdGVuPyAoU2FuZ28sICA1LiBKdW4gMjAwMiwgMTQ6NTg6MDQpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMjMyODE3ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIzMjIzNTI4ClZlcmRhbW10LCBqZXR6dCBoYXN0IGR1IG1laW5lIFNjaG9lbmUgSWxsdXNpb24gdm9uIGVpbmVyIEhlaWxlbiBXZWx0IHplcnN0b2VydAo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEd1dGUtTmFjaHQtR2VzY2hpY2h0ZSBJSSAoSHVtbmksICA1LiBKdW4gMjAwMiwgMTY6Mjg6MDYpOgp+IyEgcm49RG90eiBydD0xMDIzMjIxODYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMzIyMTg2MQpJY2ggZW1wZmVobGUgZGF6dSBkZW4gR2VzY2hpY2h0ZW5lcnphZWhsZXIgYXVmIGVpbmVyIGdld2lzc2VuIEluc2VsLiBXZW5uIGljaAptYWwgd2llZGVyIHdhcyBtZWhyIFplaXQgZmluZGUgKHZpZWxsZWljaHQgYW0gV29jaGVuZW5kZSkga3JpZWd0IGVyIG5vY2ggZWluCkludGVyZmFjZSwgZGFtaXQgbWFuIGRpZSBlcnphZWhsdGVuIEdlc2NoaWNodGVuIGF1Y2ggd2llZGVyIGFiaG9lcmVuIGthbm4uLi4uCnVuZCBkaWUgR2VzY2hpY2h0ZSB3YXIgYmVzdGltbXQgbWluZGVzdGVucyBmdWVyIExldmVsIDcgb2RlciA4IGd1dCA7LSkKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTXVkIHZlcm1hcmt0ZW4/IChMaWFyYSwgIDUuIEp1biAyMDAyLCAxODo1MToyNyk6Cn4jISBybj1Hbm9tZSBydD0xMDIzMjgxMTcyIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTAyMzIyMzUyOApEdSBsaWVic3QgZGFzIE1HPyA7LSkKRGFzIGVya2xhZXJ0IG1pciBlbmRsaWNoIGRpZSBTYWNoZSBtaXQgZGVuIFBvcnRhbGVuLiA7LSkpCgpaWkwsIHdlbmRldCBzaWNoIGVudHNldHp0IGFiCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogTXVkIHZlcm1hcmt0ZW4/IChHbG9pbnNvbiwgIDUuIEp1biAyMDAyLCAxOTozNDo1OSk6Cn4jISBybj1Nb250YW51cyBydD0xMDIzMjg3NzQyIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTAyMzIyMzUyOAo0LiBNYWdpZXIsIFNwaWVsZXIsIE1hZ2llciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVpIDpvKSAoQXBvbGxvbmlhLCAgNS4gSnVuIDIwMDIsIDIzOjMyOjI0KToKVHdpbmdpIGtsb3BmdCBtaXQgZGVtIFN0YWIgYXVmIGRlbiBCb2Rlbi4gRXMgZ2V3aXR0ZXJ0LgoKS2VpbmUgU2VrdW5kZSBzcGFldGVyOgoKW1RvZDpMYXJzXSBFaW4gQmxpdHogaGF0IHNvZWJlbiBXYWxkaSBlcnNjaGxhZ2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogcGFydHkgPz8/IChSb25kYSwgIDUuIEp1biAyMDAyLCAyMzo1MToyNCk6Cn4jISBybj1QZXJkaXRhIHJ0PTEwMjMzMDYxMDMgcmc9cGFydHkKfiMhIHRpZD0xMDIzMjgwODE0ClNjaG5lbGwhIE1hY2ggYml0dGUgZ2FueiBzY2huZWxsIGplbWFuZCBuZW4gVGVybWluIGZ1ZXIgZGllIFBhcnR5IGluIEhhbGxlCmZlc3QhIEVnYWwgd2Fubi4gSXJnZW5kd2VyIGthbm4gaW1tZXIgbmljaHQuIEFiZXIgc29uc3QgZGlza3V0aWVyZW4gc2llIHdpZWRlcgpiaXMgendlaSBXb2NoZW4gbmFjaCBkZXIgUGFydHkgZGFzcyBkZXIgVGVybWluIG5pY2h0IG9rIHdhciwgd2VpbCBkZXIgSGFtc3RlcgpncmFkIEp1bmdlIGJla29tbXQsIGRpZSBPbWEgaW4gZGllIFB1YmVydGFldCBrb21tdCBvZGVyIGdyYWQgZWluIE1pbGNoemFobgp3YWNrZWx0IQoKUm9uZGEgKnRyb3R6ZGVtIGhvZmYgaWNoLCBkYXNzIGljaCBaZWl0IGhhYiA7LSkqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogTXVkIHZlcm1hcmt0ZW4/IChIdW1uaSwgIDYuIEp1biAyMDAyLCAxMzowOTozMCk6Cn4jISBvbj1IdW1uaSBvdD0xMDIzMzYxNzYwIG9nPWRpc2t1c3Npb24KfiMhIHJuPUdub21lIHJ0PTEwMjMzNjE1OTggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMjMyMjM1MjgKQWxzbywgLHVudGVyc3VjaGUgYmVlcmUnIGlzdCBmdWVyIG1pY2ggbmljaHQgYmVydWVocmVuLiBBYmVyIHZpZWxsZWljaHQgemllaHQKZGljaCBkaWUgSHlwbm90aXNjaGUgV2lya3VuZyBkZXIgQmVlcmUgc28gaW4gSWhyZW4gQmFubiwgZGFzcyBzaWUgYW5mYWVuZ3QgRGlyCmxhbmdzYW0gRGVpbmUgU2VlbGUgYXVzenVzYXVnZW4gdW5kIERpciBtaXQgZWluZW0gU2NobGFnIERlaW5lIExQcyBlbnR6aWVodC4KCltUb2Q6TGFyc10gRWluZSBTZWVsZW5mcmVzc2VyYmVlcmUgaGF0IGdlcmFkZSBIdW1uaSB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgU2VlbGVuZnJlc3NlcmJlZXJlXSBEZWluZSBTZWVsLCBpY2ggbGFiIG1pY2ggYW4gaWhyLCBuaWVtYWxzIHdpZWRlcgpbVG9kOkVpbmUgU2VlbGVuZnJlc3NlcmJlZXJlXSB0cmlua3N0IER1IG51biBCaWVyLi4uLgoKT2RlciBzb3dhcy4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogTXVkIHZlcm1hcmt0ZW4/IChKb3NodWEsICA2LiBKdW4gMjAwMiwgMTM6NTQ6MDYpOgp+IyEgcm49SHVtbmkgcnQ9MTAyMzM2MTc3MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjMyMjM1MjgKQWxzbyBnZW5hdSBzb3dhcyBrb2VubnRlbiBqYSBHcnVuZGxlZ2VuZGUgTmV1ZXJ1bmdlbiBzZWluOgotIERpZmZlcmVuemllcnVuZyB6d2lzY2hlbiBCZXJ1ZWhyZW4gdW5kIEhhdXRrb250YWt0IHVuZAotIHp3aXNjaGVuIEFuZ3Vja2VuIHVuZCBCZXJ1ZWhyZW4gKGdnZi4gdmVyc2NoaWVkZW5lIHVudC1iZWZlaGxlPyksCi0gQmVydWVja3NpY2h0aWd1bmcgdm9uIExpY2h0dmVyaGFlbHRuaXNzZW4sCi0gVGF1YmhlaXQgdW5kCi0gQmV0cnVua2VuaGVpdCBiZWkgZGVyIEthbXBzdGFlcmtlCi0gLi4uCgpFcyBnaWJ0IGRhIHNpY2hlciB2aWVsZSBTYWNoZW4gdW5kIGljaCBkZW5rZSBkaWUgbWVpc3RlbiBsaWVzc2VuIHNpY2ggbnVyCnVtc2V0emVuIHdlbm4gZGFzIGJlcmVpdHMgaW4gZGVyIEtvbnplcHRpb24gYmVydWVja3NpY2h0aWd0IHd1cmRlCih2ZXJzY2hpZWRlbmUgQWt0aXZpdGFldGVuL0JlZmVobGUgZGEgc2luZCBkaWUgZGllIE1hZ2llciBkYW5uIGF1Y2ggbnV0emVuKSE/IQoKV2VpbCBkYXMgaW50ZXJlc3NhbnRlIEtvbnplcHRlIHNpbmQsIHd1ZXJkZSBpY2ggbmUgTmV3c2dyb3VwIGRhenUgaW50ZXJlc3NhbnQKZmluZGVuLiBEYSBrb2VubnRlIG1hbiAoYXVjaCB3ZW5uIGVzIG5pY2h0IGltIE1HIGVpbmdlYmF1dC9yZWFsaXNpZXJ0IHdpcmQpCnNvd2FzIG1hbCBpbiBSdWhlIGRpc2t1dGllcmVuIHVuZCBoaW50ZW5kcmFuIHd1ZXJkZSBldnRsLiBlaW4gbW9kZXJuaXNpZXJ0ZXMKa29uemVwdCByYXVza29tbWVuLiBWaWVsbGVpY2h0IHdhcyBmdWVyIG5lbiBOYWNoZm9sZ2VyLCBuZSBuZXVlIFZlcnNpb24gb2RlcgphdWNoIG51ciB6dW0gc2ljaCB2b3JzdGVsbGVuLiAKCkFjaCBqYTogaWNoIGZpbmRlIEJlZXJlIHVudGVyc3VjaGVuIGRhcmYgbmljaHQgdG9ldGVuIHVuZCBpbiBkaWUgU29ubmUgZ3Vja2VuCmRhcmYgbmljaHQgYmxpbmQgbWFjaGVuLiBEYXMgaXN0IGZ1ZXIgbWljaCAoZ2FueiBwZXJzb2VubGljaCkgZGFubiBkaWUKS2F0ZWdvcmllICJnZW1laW5lIEZhbGxlIiwgd2VpbCBlcyBrZWluZXIgKD8pIExvZ2lrIGVudHNwcmljaHQuIFVuZCBkaWUgc29sbHRlCmdlcmFkZSB3ZW5uIG1hbiBkYXMgR2ViaWV0IG5pY2h0IGtlbm50IGRhbm4gZG9jaCB3ZWl0ZXJoZWxmZW4uIEhhbHQgaW0gUmFobWVuLAphYmVyIGdlcmFkZSBiZWkgc28gZ3J1bmRsZWdlbmRlbiBTYWNoZW4uIERhcyAnbmVuIEtub3BmIGRydWVja2VuIHVtYnJpbmdlbgprYW5uIGlzdCBoYWx0IHNvLiBBYmVyIG9iZW5nZW5hbm50ZXMgZmluZGUgaWNoIHVubm9ldGlnLiBVbmQgZGFzIGxpZXNzZSBzaWNoCnNpY2hlciBhdWNoIHVtc2V0emVuIG9obmUgX3p1XyByZXN0cmlrdGl2IHp1IHNlaW4uIFdlciBnZW1laW4gc2VpbiB3aWxsIGthbm4KaW1tZXIgbm9jaCBkZW4gRHUtYmlzdC1qZXR6dC10b3QtS25vcGYgZWluYmF1ZW4gOykKCkpvc2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBNdWQgdmVybWFya3Rlbj8gKEVsYmVyZXQsICA2LiBKdW4gMjAwMiwgMTQ6MTE6MDgpOgp+IyEgcm49Sm9zaHVhIHJ0PTEwMjMzNjQ0NDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIzMjIzNTI4CmJlaSBzb25uZSBnZWJlIGljaCBtb3Jnb3RoIHJlY2h0OgoKc2NoYXUgbWFsIHNvIHVuZ2VzY2h1ZXR6dCBpbiBkaWUgU29ubmUgLi4uLgp1bmQgbmV3c2dyb3VwIGlzdCBzY2h3YWNoc2lubiwgZGEgbGFiZXJuIGRhbm4gdmllbCB6dXZpZWxlIGRpZSBkYW1pdCBnYXIgbml4Cnp1IHR1biBoYWJlbgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IE11ZCB2ZXJtYXJrdGVuPyAoQ2FkcmFjaCwgIDYuIEp1biAyMDAyLCAxNDo0MjozMik6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjMzNjU0Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDIzMjIzNTI4Ck51ciBkYW1pdCBkYXMgbWFsIGdlc2FndCB3dXJkZSwgaWNoIGZpbmRlIGVyYmxpbmRlbiBiZWkgaW4gZGllIFNvbm5lIGd1Y2tlbgp2b2xsIGluIE9yZG51bmcgO28pCgpDYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogTXVkIHZlcm1hcmt0ZW4/IChFbGJlcmV0LCAgNi4gSnVuIDIwMDIsIDE0OjQ0OjUyKToKfiMhIHJuPUNhZHJhY2ggcnQ9MTAyMzM2NzM1MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjMyMjM1MjgKaWNoIGF1Y2ggOikKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBNdWQgdmVybWFya3Rlbj8gKFRla3R1a28sICA2LiBKdW4gMjAwMiwgMTU6MDY6MDQpOgp+IyEgcm49Sm9zaHVhIHJ0PTEwMjMzNjQ0NDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIzMjIzNTI4Ck1oLCB1bmQgd2VyIHNvbGwgamVkZXMgZWluemVsbmUgRGV0YWlsIHVtc2NocmVpYmVuIHdlbm4gendpc2NoZW4gdW50ZXJzdWNoZW4KdW5kIGFuc2NoYXVuIHVudGVyc2NoaWVkZW4gd2lyZD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBNdWQgdmVybWFya3Rlbj8gKFRla3R1a28sICA2LiBKdW4gMjAwMiwgMTU6MDY6NDIpOgp+IyEgcm49RWxiZXJldCBydD0xMDIzMzY1NDY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMzIyMzUyOApXZXIgc2FndCBkZW4gd2llIGhlbGwgZGllIFNvbm5lIGltIE1nIHNjaGVpbnQ/IEthbm4gamEgZHJlaW1hbCBzbyBzdGFyayB3aWUgaW4KZGVyIFJlYWxpdGFldCBzZWluLCB1bmQgZGFubiBpc3QgbWFuIGJsaW5kIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogTXVkIHZlcm1hcmt0ZW4/IChFbGJlcmV0LCAgNi4gSnVuIDIwMDIsIDE1OjA3OjMwKToKfiMhIHJuPVRla3R1a28gcnQ9MTAyMzM2ODc2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjMyMjM1MjgKd2VubiBpY2ggZGFzIHJpY2h0aWcgdmVyc3RhbmRlbiBoYWJlLCBzb2xsIGRhcyBpbiBuZW0gbmFjaGZvbGdlciBkZXMgbWdzIHNvCnNlaW4sIHdlbm4gbWlyIGF1Y2ggc2NobGVpZXJoYWZ0IGlzdCwgd2FzIG5hY2hmb2xnZXIgaGVpc3N0IGluIGRpZXNlbSBmYWxsLgpOZXVlcyBtdWQ/IHNvbGxlbiBkaWUgYWx0ZW4gZ2ViaWV0ZSBkYSB1bWdlYXJiZWl0ZXQgd2VyZGVuIHVuZCBhbmdlaGFlbmd0CndlcmRlbiBvZGVyIGVoZXIgbmljaHQgKCB3ZXIgc29sbCBkYXMgZGFubiBtYWNoZW4/ICkKCkFsc28gaWNoIHNhZyBtYWw6IGRhcyBoYXQgZWgga2VpbmUgQ2hhbmNlIGF1ZiBFcmZvbGcuCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogTXVkIHZlcm1hcmt0ZW4/IChJc2ksICA2LiBKdW4gMjAwMiwgMTU6MDc6MzYpOgp+IyEgcm49VGVrdHVrbyBydD0xMDIzMzY4ODAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMzIyMzUyOAphbHNvIHdlbm4gRHUgbGFuZ2UgZ2VudWcgaW4gZGllIFJsIHNvbm5lIGd1Y2tzdCAob2huZSBzb25uZWJyaWxsZSBvZGVyIHNvKQptYWNodCBzaWNoIGRhcyBhdWNoIG5pY2h0IGd1dCA7KQppc2kgKG1vdXNzd2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBNdWQgdmVybWFya3Rlbj8gKEpvc2h1YSwgIDYuIEp1biAyMDAyLCAxNToxMzozNik6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjMzNjg4NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIzMjIzNTI4CkFsc28gaWNoIG1hZyBkYXMgTUcgdW5kIHdpbGwga2VpbiBhbmRlcmVzIE1VRCA6KSBOdXIgZGFkdXJjaCBrYW0gaWNoIGRvY2ggYXVmCmRpZSBJZGVlLCBtYW4ga29lbm50ZSBkZW4gbmV1ZW4gdGVjaG5pc2NoZW4gVW50ZXJiYXUgIm5lYmVuYmVpIiBlcmFyYmVpdGVuLgpEb3J0IGFsbCBkYXMgZWluYmF1biwgd2FzIE1hZ2llciAodW5kIGdnZi4gU3BpZWxlcikgdmVybWlzc2VuLiBEYW5uIG11ZXNzdGVuCmRpZSBHZWJpZXRlIGltcG9ydGllcnQgdW5kIGVudHNwcmVjaGVuZCB1bWdlYmF1dCB3ZXJkZW4uIEhhbHQgdWViZXJhbGwgZWluCiJyaWVjaGUiIHVuZCAibGF1c2NoZSIgaGluIHdvIGtlaW5zIGlzdC4gVWViZXJhbGwgd28gInVudCBzb25uZSIgdm9ya29tbXQKZW50d2VkZXIgYmxpbmRlbiwgb2RlciBoYWx0IGF1Y2ggbmljaHQsIG9kZXIgamUgbmFjaCBkZW0uIEljaCBrYW5uIG5pY2h0IHNhZ2VuCndhcyBkYXMgc2VpbiBtdXNzLiBJY2gga2FubiBlcnN0IHJlY2h0IG5pY2h0IGJldXJ0ZWlsZW4gd2llL29iIHNvd2FzIG1hY2hiYXIKaXN0LiBJY2gga29lbm50ZSBtaXIgYWJlciB2b3JzdGVsbGVuLCBkYXNzIGRhdm9uIGxldHplbmRsaWNoIGFsbGUgcHJvZml0aWVyZW4Kd3VlcmRlbi4gVW5kIG1pciBzY2hlaW50IGF1Y2ggYmVpIE1hZ2llcm4gZ2lidCBlcyBXdWVuc2NoZSBkaWUgZ3JvZXNzZXJlcgpBZW5kZXJ1bmdlbiBiZWR1ZXJmZW4gd3VlcmRlbiAodW5kIGRlc2hhbGIgc28gdW5kIGRlcnplaXQgbmljaHQgbWFjaGJhciBzaW5kKS4KClVtIGRhcyBhdWNoIG5vY2htYWwgZ2FueiBrbGFyIHp1IHNhZ2VuIC0gaWNoIHdpbGwgbmllbWFuZGVtIGF1ZiBkZW4gU2NobGlwcwp0cmV0ZW4gb2RlciB2b3JzY2hyZWliZW4gd2llIGVzIHp1IG1hY2hlbiBpc3QuIFVuZCBpY2ggaGFiIGF1Y2ggdmllbCB6dSB3ZW5pZwpQbGFuIHVtIG1pY2ggZGEgcXVhbGlmaXppZXJ0IHp1IHp1IGFldXNzZXJuLiBJY2ggYWV1c3NlcmUgbnVyIG1hbCBtZWluZQpHZWRhbmtlbiAuLi4KCkpvc2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBNdWQgdmVybWFya3Rlbj8gKEVsYmVyZXQsICA2LiBKdW4gMjAwMiwgMTU6MTU6MzgpOgp+IyEgcm49Sm9zaHVhIHJ0PTEwMjMzNjkyMTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIzMjIzNTI4CnVuZCBnZW5hdXNvIGlzdHMgZG9jaCBnZXJhZGUgaW0gbWcsIGVpZ2VudGxpY2gga2FubiBqZWRlciBtYWdpZXIgZG9jaCBkYXMKcmVhbGlzaWVyZW4sIHdvenUgZXIgc3Bhc3MgdW5kIGx1c3QgaGF0LCBvZGVyPyBVbmQgaWNoIGZpbmRlLCBkYXNzIHNvbGwgc28KYmxlaWJlbi4KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBNdWQgdmVybWFya3Rlbj8gKEJvaW5nLCAgNi4gSnVuIDIwMDIsIDE1OjIwOjUxKToKfiMhIHJuPUpvc2h1YSBydD0xMDIzMzY5MjE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMzIyMzUyOApTaWNoZXJsaWNoIGtvZW5uZW4gYXVjaCBoaWVyIGltIE1vcmdlbkdyYXVlbiBub2NoIEFlbmRlcnVuZ2VuIGRpZXNlcgpHcm9lc3Nlbm9yZG51bmcgdm9yZ2Vub21tZW4gd2VyZGVuLiBBYmVyIGRhenUgYmVub2V0aWdzdCBEdSBlaW5zOgpFaW5lbiBNYWdpZXIgZGVyIGVyc3RlbnMgZGllIG5vdHdlbmRpZ2VuIEZhZWhpZ2tlaXRlbiwgendlaXRlbnMgZGllCm5vdHdlbmRpZ2UgWmVpdCB1bmQgZHJpdHRlbnMgZGFzIG5vdHdlbmRpZ2UgSW50ZXJlc3NlIGRhcmFuIGhhdC4KSWNoIGRlbmtlIER1IHVudGVyc2NoYWV0enQgZXR3YXMgZGVuIEF1ZndhbmQsIGRlciBkYWhpbnRlciBzdGVja3QKaW4gZWluZW0gTXVkIGRpZXNlciBHcm9lc3NlIGRlbiB0ZWNobmlzY2hlbiBVbnRlcmJhdSBuZXUgenUgZ2VzdGFsdGVuLgpOZWJlbiBkZXIgR2VzdGFsdHVuZyBkZXMgVW50ZXJiYXVzIGZvbGd0IGRhbm4gbmFlbWxpY2ggZGllIFVlYmVyYXJiZWl0dW5nCnZvbiBaaWctVGF1c2VuZCBSYWV1bWVuLCBNb25zdGVybiB1bmQgT2JqZWt0ZW4gaW0gTXVkLiBJY2ggbW9lY2h0ZSBoaWVyCmtlaW5lc3dlZ3Mgc2FnZW4gZGFzcyBkYXMgbmljaHQgbWFjaGJhciBpc3QsIGFiZXIgZnVlciBzb3dhcyBtdXNzdCBEdQpzY2hvbiBlaW4gZ2V3YWx0aWdlcyBFbmdhZ2VtZW50IGF1ZmJyaW5nZW4uCgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogTXVkIHZlcm1hcmt0ZW4/IChFbGJlcmV0LCAgNi4gSnVuIDIwMDIsIDE1OjIyOjQ5KToKfiMhIHJuPUJvaW5nIHJ0PTEwMjMzNjk2NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIzMjIzNTI4CmlzdCBkYXMgbmljaHQgbWFsIG1pdCBsaWNodCB2ZXJzdWNodCB3b3JkZW4gLi4uLiA6KSkpKSkKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBNdWQgdmVybWFya3Rlbj8gKEN1Y2h1bGxpbiwgIDYuIEp1biAyMDAyLCAxODozOTozMyk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjMzNjk3Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIzMjIzNTI4CmFkIFNvbm5lOiBJaHIga29lbm50IG1pciBuaWNodCBlcnphZWhsZW4sIGRhc3MgaWhyIFJMIG5vY2ggbmllIGdlc2NoYXV0CmhhYnQsIHdpZSBkaWUgU29ubmUgYW0gSGltbWVsIHN0ZWh0LiBXaWxsIGhlaXNzZW46IFdvbGtlbiBkYWJlaSwgd2llIGhvY2gKc3RlaHQgc2llIHVzdy4gV2VubiBtaXIgZWluIE11ZGRlciAtIGluc2Jlc29uZGVyZSBlaW4gbm90b3Jpc2NoZXIgSGFuc3d1cnN0Ci0gdW50ZXJzdGVsbGVuIHdpbGwsIGRhc3MgaWNoIGJlaSAidW50IHNvbm5lIiBiZWFic2ljaHRpZ2UsIHNvIGdlbmF1IHdpZQptb2VnbGljaCBhbGxlIFNvbm5lbmZsZWNrZW4genUgemFlaGxlbiwgd2VubiBtb2VnbGljaCBub2NoIG1pdCBGZXJucm9ociwKZnVlaGxlIGljaCBtaWNoIGFscyBpbnRlbGxpZ2VudGVyIEVsZiBiZWxlaWRpZ3QuCgpXZXIgc2ljaCB6dSBlaW5lbSAic2NoYXVlIGR1cmNoIHRlbGVza29wIGluIHNvbm5lIiBoaW5yZWlzc2VuIGxhZXNzdCwgbWFnCmphIGVudHNwcmVjaGVuZGUgU3RyYWZlIHZlcmRpZW50IGhhYmVuLi4uCgpTbywgd2lyIHNlaGVuIGFsc28sIGRhc3Mgd2lyIHVucyBzY2hvbiBiZWkgc28gZWluZW0gZWluZmFjaGVuIFByb2JsZW0gd2llCmRlciBTb25uZSB1ZWJlcmhhdXB0IG5pY2h0IGVpbmlnIHNpbmQuIFdpZSBzb2xsIGRhcyBlcnN0IHNlaW4sIHdlbm4gTWFnaWVyCmRhcyB1bnRlciBzaWNoIGF1c21hY2hlbiBtdWVzc2VuIHVuZCBzaWNoIGFuIEVJTkUgTGluaWUgaGFsdGVuIG11ZXNzZW4/CgpJY2ggaGFsdGUgZGFyYW4gZmVzdDogRXMgZ2lidCBpbSBNb3JnZW5ncmF1ZW4gKGZhc3QpIGtlaW5lIG11ZHdlaXRlbiAKS29uemVwdGUuIFVuZCB3ZW5uIGRvY2ggLSB6LkIuIGRhcywgd29ydW0gc2ljaCBkYXMgQmFsYW5jZXRlYW0ga3VlbW1lcm4KImRhcmYiIC0gZ2lidCBlcyBpbW1lciBNYWdpZXIsIGRpZSBzaWNoIGZyYW5rIHVuZCBmcmVpIGRhcnVlYmVyIGhpbndlZy0Kc2V0emVuIHVuZCBzaWNoIHNjaGxpY2h0IFdFSUdFUk4sIGRlciB2ZXJiaW5kbGljaGVuIFdlaXN1bmcgZGVzIFRlYW1zCkZvbGdlIHp1IGxlaXN0ZW4uCgoKU2luZCB3aXIgaGllciBpbiBTY2htYXJybj8gTWlzdCwgZGFubiBoYWV0dGUgaWNoIGRvY2ggTmFtZW4gbmVubmVuIGtvZW5uZW4uLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogTXVkIHZlcm1hcmt0ZW4/IChFbGJlcmV0LCAgNi4gSnVuIDIwMDIsIDE4OjQyOjIwKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDIzMzgxNTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMzIyMzUyOAppY2ggd2lsbCBuYW1lbiBob2VyZW4gOikpCgp1bmQgamEgaWNoIGhhYiBzY2hvbiBpbiBkaWUgc29ubmUgZ2VzY2hhdXQsIHVuZCBoYWIgZGFuYWNoIGxhZW5nZXJlIHplaXQgbmljaHQKc28gcmljaHRpZyBndXQgc2VoZW4ga29lbm5lbi4gQWxzbyBtYW4gc2llaHQgZGFubiBqYSBpbW1lciBzbyBuZW4gZmxlY2sKd2VpdGVyLiB1bmQgaWNoIGhhYiBudXIga3VyeiBnZXNjaGF1dC4gYWJlciBpY2ggZmluZCBkYXMgbmljaHQgdWViZXJ0cmllYmVuCndlbm4gbWFuIGJsaW5kIHdpcmQgCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogTXVkIHZlcm1hcmt0ZW4/IChHcmltbWJvcm4sICA2LiBKdW4gMjAwMiwgMTg6NDQ6NTUpOgp+IyEgcm49RWxiZXJldCBydD0xMDIzMzgxNzQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMzIyMzUyOApJY2ggaG9lcmUgaW1tZXIgU29ubmUuIFdhcyBpc3QgZGFzIGVpZ2VudGxpY2g/IEhhbmRlbHQgZXMgc2ljaCBkYWJlaSB1bSBkaWVzZXMKRGluZywgd2FzIGltbWVyIGRpZXNlIHN0b2VyZW5kZW4gUmVmbGV4ZSBhdWYgZGVtIE1vbml0b3IgdmVydXJzYWNodD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6IE11ZCB2ZXJtYXJrdGVuPyAoRWxiZXJldCwgIDYuIEp1biAyMDAyLCAxODo0NTo0OSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyMzM4MTg5NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjMyMjM1MjgKZ2VoIG1hbCBhdWYgbW9yZ290aHMgZmVsZCwga2VpbmUgYW5nc3QgZGEgZ2lidHMgYmVzdGltbXQga2VpbmUgZnBzIHVuZCBzY2hhdQpkYSBtYWwgaW4gZGllIHNvbm5lIDspCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogTXVkIHZlcm1hcmt0ZW4/IChHcmltbWJvcm4sICA2LiBKdW4gMjAwMiwgMTg6NTU6MDQpOgp+IyEgcm49RWxiZXJldCBydD0xMDIzMzgxOTQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMzIyMzUyOApMYXNzIG1hbCwgaWNoIGJpbiB6dSBzZWhyIE5hdHVyd2lzc2Vuc2NoYWZ0bGVyLCBzb3dhcyB3dWVyZGUgbWljaCBudXIKYXVmcmVnZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBNdWQgdmVybWFya3Rlbj8gKEdyaW1tYm9ybiwgIDYuIEp1biAyMDAyLCAxOTowMDoyMik6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjMzODI3ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIzMjIzNTI4Ck5laW4sIGljaCBtdXNzIG1pciBzY2hsaWNodCBhdWYgbWVpbmUgYWx0ZW4gVGFnZSBuaWNodCBqZWRlbiBEcmVjawpyZWlucGZlaWZlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IE11ZCB2ZXJtYXJrdGVuPyAoTXVwZmVsLCAgNi4gSnVuIDIwMDIsIDIwOjE3OjUyKToKfiMhIHJuPUh1bW5pIHJ0PTEwMjMzNjE3NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIzMjIzNTI4CkphLCBtYWNobWFsIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFBhcnR5IC0gSGFsbGUgKFNhYWxlKSAoR3JpbW1ib3JuLCAgNi4gSnVuIDIwMDIsIDIwOjIzOjI2KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDIzMzg3NzQzIHJnPXBhcnR5Cn4jISB0aWQ9MTAyMzM1ODk3MApFciBtZWludCBzaWNoZXIgIlUiLCBWYXJsYXJpb24uIExhc3MgRGlyIGRvY2ggdm9uIGRlbSBrZWluIFggZnVlciBlaW4gVQp2b3JtYWNoZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFBhcnR5IC0gSGFsbGUgKFNhYWxlKSAoSXNpLCAgNi4gSnVuIDIwMDIsIDIwOjIzOjU0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDIzMzg3ODA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMzM1ODk3MAp3ZW5uIGVyIFggc3RhdHQgVSB6YWhsdCBpcyBkb2NoIG9rIDspCmlzaSAoVndlcmZlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogUGFydHkgLSBIYWxsZSAoU2FhbGUpIChHcmltbWJvcm4sICA2LiBKdW4gMjAwMiwgMjA6MjQ6MTgpOgp+IyEgcm49SXNpIHJ0PTEwMjMzODc4MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIzMzU4OTcwCk1laW5lIEd1ZXRlLCBiaXN0IER1IGJpbGxpZy4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogUGFydHkgLSBIYWxsZSAoU2FhbGUpIChWYXJsYXJpb24sICA2LiBKdW4gMjAwMiwgMjA6MjQ6MjYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjMzODc4MDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDIzMzU4OTcwCkljaCB3ZWlzcyBzY2hvbiwgd2FzIGVyIG1laW50LCBrZWluZSBTb3JnZSA6KSBJY2ggaGFiZSBudXIgZWluZSBFcmtsYWVydW5nCmZ1ZXIgZGFzIElnbm9yaWVyZSBtaXQgQCBnZXN1Y2h0IHVuZCB2ZXJtdXRsaWNoIGdlZnVuZGVuLiBCVFc6IGd1dGUgSWRlZSwKQ3VjaCogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBQYXJ0eSAtIEhhbGxlIChTYWFsZSkgKE1vbnRhbnVzLCAgNi4gSnVuIDIwMDIsIDIwOjM4OjA4KToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDIzMzg3ODY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMzM1ODk3MApbIF0gSWhyIHNlaWQgaW4gZGVyIGZhbHNjaGVuIFJ1YnJpayB1bmQgc2NodWxkIGRhcmFuLCB3ZW5uIENhdCogbmllIHNlaW5lbgpXaGlza3kgZWlubG9lc2VuIG11c3MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogUGFydHkgLSBIYWxsZSAoU2FhbGUpIChHcmltbWJvcm4sICA2LiBKdW4gMjAwMiwgMjA6Mzg6NTApOgp+IyEgcm49TW9udGFudXMgcnQ9MTAyMzM4ODY4OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjMzNTg5NzAKRGFzIHdlaXNzIGljaCwgZGFzIGlzdCBsZWljaHQ6ClUKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSGVpcmF0IExhcmluYSB1LiBLYXJpYyAyMzowMCBBa2hhciBOdGgndGFyIChLYWxsaW9wZSwgIDYuIEp1biAyMDAyLCAyMjoyMDo1Mik6Cn4jISBybj1Nb250YW51cyBydD0xMDIzMzk0NzI4IHJnPWFuemVpZ2VuCn4jISB0aWQ9MTAyMzM5MzYzNwpSb2NodXMgb2huZSBDb2xhIGlzdCB0cmFnaXNjaCwgQW50aGVhIG9obmUgU2NodXBwZW4gaXN0IHp1bSBUcmFnZW4Kc2Nod2FyemVyIEtsZWlkdW5nIGZhZWhpZywgT2V0dGkgb2huZSBLYW1lbGhlcmRlIGlzdCBtaXQgQXJpZW4genVzYW1tZW4sCkdyaW1tYm9ybiBhbHMgRWxmIGlzdCBlaW5lIFRvdGdlYnVydCwgT3JrdG9ldGVyIG9obmUgT3JrcyBpc3QgLi4uCgpXZWlhLi4uIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IE11ZCB2ZXJtYXJrdGVuPyAoUm9uZGEsICA2LiBKdW4gMjAwMiwgMjI6MzM6MDgpOgp+IyEgcm49RWxiZXJldCBydD0xMDIzMzgxNzQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMzIyMzUyOApBbHNvIGljaCB3ZWlzcyBuaWNodCB3YXMgSWhyIGhhYnQuIFdpZSBFbGJpIHNjaG9uIHNhZ3Qgd2lyZCBtYW4gemllbWxpY2gKZ2VibGVuZGV0LCB3ZW5uIG1hbiBpbiBkaWUgU29ubmUgc2NoYXV0LiBBbHNvIHdhcnVtIGJlc2Nod2VyZW4gc2ljaCBTcGllbGVyCmRydWViZXIgd2VubiBzaWUgZGFiZWkgYmxpbmQgd2VyZGVuPyBEYXMgaXN0IGRvY2ggbmV0dC4gREFTIG1lcmt0IG1hbgp3ZW5pZ3N0ZW5zLiBQZXJmaWRlIC0gdW5kIGRhbWl0IGZ1ZXIgTWFnaWVyIG9wdGltYWwhIC0gd2FlcmUgZXMsIHdlbm4gbWFuIGRhbm4KbnVyIGVpbiBiaXNzY2hlbiBzY2hsZWNodGVyIHNpZWh0IGZ1ZXIgbmVuIHBhYXIgTWludXRlbi4gTmljaHQgc28gZGFzcyBtYW5zCm1lcmt0LiBBYmVyIHNvLCBkYXNzIG1hbiB3ZXNlbnRsaWNoIGhhZXVmaWdlciBkYW5lYmVuaGF1dC4gREFTIG5lbm5lIGljaCBmaWVzClVORCByZWFsaXN0aXNjaC4gQWxzbyBzZWlkIGZyb2gsIGRhc3MgZGFzIG5vY2gga2VpbmVyIHByb2dyYW1taWVydCBoYXQuLi4uCgpSb25kYSAqUm9jaHVzLCB1ZWJlcm5laG1lbiBTaWUhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV1bGljaCBpbSB0b2Rlc3JhdW0uLi4gKEthdmFsaWVyLCAgNi4gSnVuIDIwMDIsIDIyOjQwOjM5KToKUGlwcyB0aXBwZWx0IGhlcmVpbi4KTWlrYWdlIHdlaWx0IHdpZWRlciB1bnRlciBkZW4gTGViZW5kZW4uCgoKQUFBQUFBSEhISEhISEhISEhISEghIQoKRHUgc2NocmVpc3QgZGVuIFRvZCBhbjogREFTIFRVVCBKQSBET0NIIFdFSC4KCltCZWlsZWlkOlNvbm5lbmtpbmRdIEJlaWxlaWQgOigoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbmV1bGljaCBpbSB0b2Rlc3JhdW0uLi4gKEN1Y2h1bGxpbiwgIDcuIEp1biAyMDAyLCAwMDozNzozOCk6Cn4jISBybj1LYXZhbGllciBydD0xMDIzMzk2MDM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMzM5NjAzOQpBbHMgZGllIFByaWVzdGVyaW4gZHVyY2ggZWluZW4gKEZha2UpLVphcCBkaWUgSG9jaHplaXRzZ2VzZWxsc2NoYWZ0IHZlcmxpZXNzLApmaW5nIGRpZSBUb2Rlc3NlcXVlbnogYXVjaCBzZWhyIGx1c3RpZyBhbjogCgpBVUEhIERhcyB0YXQgd2VoLgoKVmVyd2lycnQgc2NoYXVzdCBEdSBEaWNoIHVtLiBTY2hhZGUsIGRhc3MgRHUgdG90IGJpc3QsIGRlbm4KaGllciBmaW5kZXQgb2ZmZW5zaWNodGxpY2ggYmFsZCBlaW5lIFBhcnR5IHN0YXR0LgoKQnVudGUgR2lybGFuZGVuIGhhZW5nZW4gdWViZXJhbGwgYW4gZGVuIFdhZW5kZW4gdW5kIGxhbmdlIFN0dWhscmVpaGVuCmJlZmluZGVuIHNpY2ggcmVjaHRzIHVuZCBsaW5rcyB2b24gRGlyLgoKSG9wcGxhLCBkYSBiaXN0IER1IHdvaGwgbWl0dGVuIGluIGVpbmUgSG9jaHplaXQgZ2Vwb2x0ZXJ0Li4uCgotLS0tLS0tLS0tLS0KSkEuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogTXVkIHZlcm1hcmt0ZW4/IChEYXJpYSwgMTEuIEp1biAyMDAyLCAxNToxNDowOCk6Cn4jISBybj1Sb25kYSBydD0xMDIzMzk1NTg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyMzIyMzUyOApXbyBpc3QgZGFzIFByb2JsZW0sIGF1ZiB1bnQgc29ubmUgYXVzenVnZWJlbjoKCkR1IHNjaGF1c3QgbGllYmVyIG5pY2h0IGRpcmVrdCBpbiBkaWUgU29ubmUuIERhcyBoYXN0IGR1IHZvbiBkZWluZXIgTWFtYQpnZWxlcm50LgoKQmVpICJzY2hhdSBkaXJla3QgaW4gc29ubmUiIGthbm4gbWFuIGphIGltbWVyIG5vY2ggZGVuIFNwaWVsZXIgZXJibGluZGVuCmxhc3Nlbi4uLgoKSWNoIGZpbmRlIHNvIEdlbWVpbmhlaXRlbiBlaWdlbnRsaWNoIHVubm9ldGlnLiBTa3JpcHRmYWxsZW4ga2FubiBtYW4gYXVjaAphbmRlcnMgbWFjaGVuLgoKRGFyaWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IHNwYW5rIHRoZSBtb25rZXkgKEdyaW1tYm9ybiwgMTIuIEp1biAyMDAyLCAxMDo1OTozMSk6Cn4jISBybj1NdWFkaWIgcnQ9MTAyMzg3MTgyMSByZz13d3cKfiMhIHRpZD0xMDIzODAyNDM2Ck9jaCwgbGFzcyBtYWwsIGRpZSBQaG90b25lbiAoYWthIFJvZW50Z2VuLSB1bmQgR2FtbWFzdHJhaGxlbikgZXJ3aXNjaGVuIGlobgpzY2hvbiBsYW5nZSB2b3JoZXIuIERvcHBsZXJlZmZla3QgbWFjaHQgTGF1bmUuCgpHZEEgZW1wZmllaGx0IGZ1ZXIgd2lya2xpY2ggaG9oZSBHZXNjaHdpbmRpZ2tlaXRlbiBlaW4gZWNodGVzIChoYWhhKSBWYWt1dW0gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTVUdJIEhBVFRFIERVUlNUICEhISAoR3JpbW1ib3JuLCAxMi4gSnVuIDIwMDIsIDIzOjM5OjM0KToKfiMhIG9uPVN1Z2FhbiBvdD0xMDIzOTE2OTU4IG9nPXRyZWZmZW4KIHVuZCBmcmFndCBzaWNoIG9iIGVzIHdpcmtsaWNoIGtlaW5lIE11ZGRlciBtZWhyIGltIEdyb3NzcmF1bSBLb2VsbiwKRHVlc3NlbGRvcmYgZ2lidCBkaWUgbWFsIG5lbiBsZWNrZXIgR3VpbmVzcyB0cmlua2VuIG1vZWNodGVuLiAoZ2VtZWludCBpc3QKbmF0dWVybGljaCAgR3Vpbm5lc3MgIC0gc29ycnkgZm9yIHRoYXQgYWJlciBlcyBpc3Qgc2Nob24gc3BhZXQgYW0gYWJlbmQpCgpncnVlc3NlICAgIGNoYW9zICBTVUdJCioqKioKCgoKCgoKCgowMDIsIDExOjE0OjQ2XQoKVGVpbHMgZG9jaCBiaXR0ZSBTaXN0YW5jZSBtaXQuCkFsc28gZGFzIG1pdCBkZW0ga29tbWVuIHdvbGxlbiwgbmljaHQgZGFzIG1pdG0gRGF0dW0uIDopCj4gRWxlZGlsIGVyc2NocmVja3QgZGllIEFud2VzZW5kZW4uCiBzY2hydWVpRWxlZGlsIGRyZWh0IHNpY2ggZWluIHBhYXJtYWwgaW0gS3JlaXMuCk5ldWVyIEFydGlrZWwgaW4gUnVicmlrIHRyZWZmZW46ClRpdGVsIGlzdDogU1VHSSBIQVRURSBEVVJTVCAhISEuVVJTVCAhISEKR2liIGpldHp0IERlaW5lbiBUZXh0IGVpbiwKKiogb2RlciAuIHdlbm4gRHUgZmVydGlnIGJpc3QsIH5xIHp1bSBBYmJyZWNoZW4sIH5oIGZ1ZXIgZWluZSBIaWxmc3NlaXRlLgpdIHVuZCBmcmFndCBzaWNoIG9iIGVzIHdpcmtsaWNoIGtlaW5lIE11ZGRlciBtZWhyIGltIEdyb3NzcmF1bSBLb0VsZWRpbCBrbmVpZnQKZAplbiBVbXN0ZWhlbmRlbiBpbiBkaWUgSGFja2VuIHVuZCBxdWlla3QgZGFiZWkuCmVsbiwgRHVlc3NlbGRvcmYgZ2lidCBkaWUgbWFsIG5lbiBsZWNrZXIgR3VpbmVzcyB0cmlua2VuIG1vZWNodGVuLkVsZWRpbAprbmVpZnQKZGVuIFVtc3RlaGVuZGVuIGluIGRpZSBIYWNrZW4gdW5kIHF1aWVrdCBkYWJlaS4KIChnZW1laW50IGlzdCBuYXR1ZXJsaWNoICBHdWlubmVzcyAgLSBzb3JyeSBmb3IgdGhhdCBhYmVyIGVzIGlzdCBzY2hvbiBzcGFldAphbQpdXVtaYXViZXJlcjpHcmVsbGdlbl0gaXN0IGRhcyBuaWNodCBpbW1lciBzbz8gbmFqYSBtYW5jaGUgYnJhdWNoZQpbWmF1YmVyZXI6R3JlbGxnZW5dIEF1Zm1lcmtzYW1rZWl0Li4uc2ljaCBhdWYgZGllIEhpbnRlcmJlaW5lIHVuZCBwdXR6dCBzaWNoCmluIGFsbGVyIFJ1aGUgaWhyZQprbGVpbmUgTmFzZS4KRWluZSBSdWJyaWsgJ3RyZWZlbicgZ2lidCBlcyBoaWVyIGxlaWRlciBuaWNodC4KUnVicmlrIDUxOiB0cmVmZmVuCgpSdWJyaWsgNTE6IHRyZWZmZW4sIEFydGlrZWw6IDE0IHZvbiAxNQpSZTogS2FybHNydWhlICgxMC43LikgKEtla3MsIDEyLiBKdW4gMjAwMiwgMTE6MTQ6NDYpOgpbQmV6dWc6IEFydGlrZWwgMTIgdm9uIEtla3Mgdm9tICA5LiBKdW4gMjAwMiwgMTg6MTM6MjFdCgpibG9zcyBkZXIgb3JkbnVuZyBoYWxiZXIgOy0pKSBlcyBtdXNzICIxMS4wNy4iIGhlaXNzZW4gKGRhbmtlIGphbWVzb24gKmdyaW5zKikKPiBubgpSdWJyaWsgNTE6IHRyZWZmZW4sIEFydGlrZWw6IDE1IHZvbiAxNQpSZTogUmU6IEthcmxzcnVoZSAoMTAuNy4pIChCYW1iaSwgMTIuIEp1biAyMDAyLCAxMzo0NDo1Nik6CltCZXp1ZzogQXJ0aWtlbCAxNCB2b24gS2VrcyB2b20gMTIuIEp1biAyMDAyLCAxMToxNDo0Nl0KClRlaWxzIGRvY2ggYml0dGUgU2lzdGFuY2UgbWl0LgpBbHNvIGRhcyBtaXQgZGVtIGtvbW1lbiB3b2xsZW4sIG5pY2h0IGRhcyBtaXRtIERhdHVtLiA6KQo+IEVsZWRpbCBlcnNjaHJlY2t0IGRpZSBBSG91c2Vob2xkZXIuLi4uandTIEltZGEuLi4uLi4uLi4uLkouUwpSb2xhbmQuLi4uLi4uLi4uLlMgR2Fyb24uLi4uLi4uLi4uLi5TClphcmt1Li4uLi4uLi4uLi4uUyBWYW1waXJlLi4uLi4uLi5Kd1MgU2Fya29uLi4uLi4uLi4uLi5TIEthcm9sLi4uLi4uLi4uLi4uUwpIZWx2ZXRpYS4uLi4uLi4ud1MgR3JlbGxnZW4uLi4uLi4uaS5TIExhY3JpLi4uLi4uLi4uLmkuUyBDb3Jhay4uLi4uLi4uLi5pLlMKTGFyaW5hLi4uLi4uLi4uaS5TIFJhdmVudGhyb25lLi4uLkp3UyBWYXJsYXJpb24uLi4uLi5pd1MgSXZvLi4uLi4uLi4uLi4uaS5TClplcGh5ci4uLi4uLi4uLkkuUyBTY2hva28uLi4uLi4uLi4uLlMgR2FsYnJhaXRoLi4uLi4uLi5TIFR5bGFrLi4uLi4uLi4uLmkuUwpMdXJjaGkuLi4uLi4uLi5JLlMgQnJvdG5hZWwuLi4uLi4uLndTICpCaXJkeS4uLi4uLi4uLmkuUyBWYXJkaW9uLi4uLi4uLi4uLlMKRGllZGVyLi4uLi4uLi4uSndTIEZvb2Jhci4uLi4uLi4uLml3UyBBcG9sbG9uaWEuLi4uLi5qd20gR3JpbW1ib3JuLi4uLi4uSXdtCk1hbmRyYWdvbi4uLi4uLkoubSBNYXJjdXMuLi4uLi4uLi5JLm0gQmFtYnVsa28uLi4uLi4uSi5NIEFybWl0YWdlLi4uLi4uLi4uTQpXaWxsb3cuLi4uLi4uLi4uLk0gTXVwZmVsLi4uLi4uLi4uSS5NICpTY2hsZWljaGVyLi4uLmkuTSBWaXBlci4uLi4uLi4uLi5pLkgKSHVtbmkuLi4uLi4uLi4uLi5SIEhhdGUuLi4uLi4uLi4uLkouRQoKPiBFbGVkaWwgc3RlbGx0IHNpY2ggYXVmIGRpZSBIaW50ZXJiZWluZSB1bmQgcHV0enQgc2ljaCBpbiBhbGxlciBSdWhlIGlocmUKa2xlaW5lIE5hc2UuCkVpbmUgUnVicmlrICd0cmVmZW4nIGdpYnQgZXMgaGllciBsZWlkZXIgbmljaHQuClJ1YnJpayA1MTogdHJlZmZlbgoKUnVicmkqKgp+CgoKbm4KCgoKCgoKCgoKbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTUVHQSBTQ0hNQVJSTiAhISEgKEdyaW1tYm9ybiwgMTMuIEp1biAyMDAyLCAwOTo1NjoxNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTAyMzk1NDY3NCByZz10cmVmZmVuCn4jISB0aWQ9MTAyMzkxNzMyMQpXaGVuIFRpbSBhbmQgSSB0byBCcmlzYmFuZSB3ZW50CndlIG1ldCB0aHJlZSBsYWRpZXMgaW4gYSB0ZW50ClRoZXkgd2VyZSB0aHJlZSwgYW5kIHdlIHdlcmUgdHdvCnNvIEkgYm9va2VkIG9uZSBhbmQgVGltIGJvb2tlZCB0d28uCgpEYXMgbXVzc3RlIHp1bSBUaGVtYSBUaW1idWt0dSBtYWwgZ2VzYWd0IHdlcmRlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXVzIGFrdHVlbGxlbSBBbmxhc3MgKEdyaW1tYm9ybiwgMTMuIEp1biAyMDAyLCAxNzowNzozMCk6Cn4jISBvbj1NYW5kcmFnb24gb3Q9MTAyMzk4MDI0NCBvZz13aXR6ZQp+IyEgcm49QW50aGVhIHJ0PTEwMjM5Nzg2NTIgcmc9d2l0emUKfiMhIHRpZD0xMDIzOTc4NjUyCipyb3RmbCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbGJzdCBFbmdlbCB3aXNzZW4gZXMgOykgKEJyb3RuYWVsLCAxMy4gSnVuIDIwMDIsIDE5OjU5OjEzKToKW1phdWJlcmVyOkxpYXJhXSBUVVVVVVVVRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRVNTCkRlciBFbmdlbCBzY2hsaWVzc3QgZGllIEF1Z2VuIHVuZCBiZXRldC4KCmJyb3RpLCBmYWVsbHQgYXVjaCBpbiB0aWVmZSBBbmRhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1pdHRlbGdyb3NzZXMgWmFobGVucHJvYmxlbSAoR3JpbW1ib3JuLCAxMy4gSnVuIDIwMDIsIDIzOjMyOjMwKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDI0MDAzOTM4IG9nPXB1aXoKfiMhIHJuPVZpbmNlbnQgcnQ9MTAyNDAwMzQyOCByZz1wdWl6Cn4jISB0aWQ9MTAyNDAwMzQyOAoxIDIgMiAwIDAgMCAwIDAgMCA2CgpXYXMgaGFiIGljaCBnZXdvbm5lbj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWl0dGVsZ3Jvc3NlcyBaYWhsZW5wcm9ibGVtIChJc2ksIDEzLiBKdW4gMjAwMiwgMjM6MzM6MzIpOgp+IyEgcm49Q3JvZnQgcnQ9MTAyNDAwMzk4NCByZz1wdWl6Cn4jISB0aWQ9MTAyNDAwMzQyOApuYSBkYXMgaXN0IGphIGF1Y2gga2VpbmUgTG9lc3VuZz8KaXNpIChtb3Vzc2V3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNaXR0ZWxncm9zc2VzIFphaGxlbnByb2JsZW0gKEdyaW1tYm9ybiwgMTMuIEp1biAyMDAyLCAyMzozMzo1OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNDAwMzk1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQwMDM0MjgKS2xhciBpc3QgZGFzIHJpY2h0aWcuIGVyc3RlIFphaGwgZGllIFphaGwgZGVyIGVpbnNlbiwgendlaXRlIGRpZSBkZXIgendlaWVuLAp6ZWhudGUgZGllIGRlciBOdWxsZW4uIElzdCBuYXR1ZXJsaWNoIG5pY2h0IGRpZSBlaW56aWdlIExvZXN1bmcuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1pdHRlbGdyb3NzZXMgWmFobGVucHJvYmxlbSAoQ3JvZnQsIDEzLiBKdW4gMjAwMiwgMjM6MzQ6MDYpOgp+IyEgcm49SXNpIHJ0PTEwMjQwMDQwMTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0MDAzNDI4CktvcnJpZ2llcmU6IExvZXN1bmdzdmVyc3VjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWl0dGVsZ3Jvc3NlcyBaYWhsZW5wcm9ibGVtIChDcm9mdCwgMTMuIEp1biAyMDAyLCAyMzozNToyMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNDAwNDAzOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQwMDM0MjgKTWlyIGR1ZW5rdCBkdSB3b2xsdGVzdCBkaWUgIi4uLi4uIiB2b24gVmluY2VudCBuaWNodCBzbyBpbnRlcnByZXRpZXJlbgp3aWUgVmluY2VudC4uLiAgVW5mYWlyIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTWl0dGVsZ3Jvc3NlcyBaYWhsZW5wcm9ibGVtIChHcmltbWJvcm4sIDEzLiBKdW4gMjAwMiwgMjM6MzU6NTApOgp+IyEgcm49Q3JvZnQgcnQ9MTAyNDAwNDEyMiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQwMDM0MjgKTmFzb3dhc2FiZXJhdWNoLiBTb2xsdGUgVmluY2VudCBkaWUgQXVmZ2FiZSBhbmRlcnMgZ2VzdGVsbHQgaGFiZW4gYWxzIGVyIHNpZQpnZW1laW50IGhhdD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTWl0dGVsZ3Jvc3NlcyBaYWhsZW5wcm9ibGVtIChHcmltbWJvcm4sIDEzLiBKdW4gMjAwMiwgMjM6NDk6MzkpOgp+IyEgcm49VmluY2VudCBydD0xMDI0MDA0ODc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDAwMzQyOApXaWUgbWVpbmVuPyBaZWhuIEthZXN0Y2hlbiwgaW4gamVkZXMgZWluZSBaaWZmZXIsIHdvYmVpIGRhcyBlcnN0ZSwgendlaXRlIHVuZAp6ZWhudGUgS2Flc3RjaGVuIGRlZmluaWVydCBzaW5kLiBXYXMgaGFzdCBEdSBhbiBkZW4gc2llYmVuIGFuZGVyZW4gS2Flc3RjaGVuCmF1c3p1c2V0emVuPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNaXR0ZWxncm9zc2VzIFphaGxlbnByb2JsZW0gKFZpbmNlbnQsIDEzLiBKdW4gMjAwMiwgMjM6NTI6MDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjQwMDQ5Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0MDAzNDI4Cldlbm4gZHUgZGllIGFuZGVyZW4gS2Flc3RjaGVuIGF1c3NlciBkZW4gZXJzdGVuIGJlaWRlbiB1bmQgZW0gbGV0enRlbgpLYWVzdGNoZW4gZnVlciB1bmRlZmluaWVydCBoYWxlc3QsIHdpZXNvIGdsYXVic3QgZHUsIGVpbmUgMiBpbnMgZHJpdHRlCkthZXN0Y2hlbiBzaHJlaWJlbiB6dSBkdWVyZmVuL3p1IGtvZW5uZW4venUgbXVlc3Nlbj8KCkFsc28gd2VubiBkdSBzY2hvbiBzcGl0emZpbmRpZyBiaXN0LCBkYW5uIHNlaSBiaXR0ZSBleGFrdCBzcGl0emZpbmRpZy4gOy0pCgpHcnVzcwpWaW5jZW50CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNaXR0ZWxncm9zc2VzIFphaGxlbnByb2JsZW0gKEdyaW1tYm9ybiwgMTMuIEp1biAyMDAyLCAyMzo1MzozOCk6Cn4jISBybj1WaW5jZW50IHJ0PTEwMjQwMDUxMjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0MDAzNDI4CkRhcyBnbGF1YmUgaWNoLCBkYW1pdCBkYXMgYmVpIGRlbiBkcmVpIGFuZGVyZW4gS2Flc3RjaGVuIGhpbmtvbW10LiBJcmdlbmR3YXMKbXVzcyBpY2ggamEgcmVpbnNjaHJlaWJlbiwgZGllIEthZXN0Y2hlbiBkdWVyZmVuIGphIG5pY2h0IGxlZXIgYmxlaWJlbi4gCkljaCB2ZXJzdGVoZSBEZWluIFByb2JsZW0gaW1tZXIgbm9jaCBuaWNodC4gTWVpbmUgTG9lc3VuZyB3aWRlcnNwcmljaHQgaW4Ka2VpbmVtIFB1bmt0IERlaW5lciBBdWZnYWJlbnN0ZWxsdW5nLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBNaXR0ZWxncm9zc2VzIFphaGxlbnByb2JsZW0gKFZpbmNlbnQsIDE0LiBKdW4gMjAwMiwgMDA6MDE6MjApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjQwMDUyMTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0MDAzNDI4Ck9rLiBXZW5uIER1IERlaW5lIHVuZXhha3RlbiBTcGl0emZpbmRpZ2tlaXRlbiBhdXNsZWJlbiBtb2VjaHRlc3QsIGJpdHRlOgoKRGVpbmUgTG9lc3VuZyBpc3QgZmxhc2NoIHVuZCB3aWRlcnNwcmljaHQgZGVyIEF1ZmdhYmVuc3RlbGx1bmc6CgpEdSBoYXN0IGtlaW5lIEthZXN0Y2hlbiBnZW1hbHQuCgpWaW5jZW50CipzZWhyIHRpZWYgc2V1ZnplbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTWl0dGVsZ3Jvc3NlcyBaYWhsZW5wcm9ibGVtIChHcmltbWJvcm4sIDE0LiBKdW4gMjAwMiwgMDA6MTg6NTEpOgp+IyEgcm49VmluY2VudCBydD0xMDI0MDA2NjY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDAwMzQyOApEYXMgaXN0IGFiZXIgbnVyIGRpZSBLdXJ6Zm9ybS4gRGllIGxldHp0ZW4gZHJlaSBQdW5rdGUgaW0gTG9nbyBzdGVoZW4gZnVlcgoiZXJyb3IiLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTWl0dGVsZ3Jvc3NlcyBaYWhsZW5wcm9ibGVtIChWaW5jZW50LCAxNC4gSnVuIDIwMDIsIDAwOjMwOjI2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI0MDA2NzMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDAwMzQyOApXaWUgYXVjaCBpbW1lciwgRGVpbmUgWmlmZmVybiBpbiBkZXIgZ2Vwb3N0ZXRlbiBMb2VzdW5nIHN0ZWhlbiBpbiBrZWluZW4KS2Flc3RjZWhuLiBXZW5uIER1IHNjaG9uIGVpbmUgYXVzZ2VzcHJvY2hlbiBTcGl0emZpbmRpZ2tlaXQgYW4gZGVuIFRhZyBsZWdzdCwKZGFubiBiaXR0ZSBrb25zZXF1ZW50IHVuZCBleGFrdCB1ZWJlciBkaWUgZ2VzYW10ZSBBdWZnYWJlbnN0ZWxsdW5nCmR1cmNoemllaGVuIHVuZCBuaWNodCBudXIgZGEsIHdvIERpY2ggZGllIGRyZWkgUHVua3RlIGVoZXIgYW4gZGFzIExvZ28gCmRlciBncm9zc2VuIGRldXRzY2hlbiBUZWxlZm9uZ2VzbGxzY2hhZnQgZXJpbm5lcm4sIGFscyBhbiBlaW4gU3ltYm9sIGZ1ZXIKZGFzIEZvcnRzZXR6ZW4gZWluZXIgZWluZmFjaGVuIHVuZCBuYWhlbGllZ2VuZGVuIFJlaWhlLgoKR3J1c3MKVmluY2VudAoKUC5TLjogSmEsIGRhcyBMb2dvIGJlc3RlaHQgYXVzIGVpbmVtIGdyb3NzZW4gVCB1bmQgZWluaWdlbiBQdW5rdGVuLi4uIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE1pdHRlbGdyb3NzZXMgWmFobGVucHJvYmxlbSAoR3JpbW1ib3JuLCAxNC4gSnVuIDIwMDIsIDAwOjMwOjM2KToKfiMhIHJuPVZpbmNlbnQgcnQ9MTAyNDAwNzQyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQwMDM0MjgKRGFzIGlzdCBhYmVyIG51ciBkaWUgS3VyemZvcm0uIERpZSBsZXR6dGVuIGRyZWkgUHVua3RlIGltIExvZ28gc3RlaGVuIGZ1ZXIKImVycm9yIi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbWFnaWVyIC4uLiAoSXNpLCAxNC4gSnVuIDIwMDIsIDAyOjE4OjE0KToKW1phdWJlcmVyOklzaV0gKmdhZWhuKiBuYWNodCB6YXViaXMKW1phdWJlcmVyOk1hbmRyYWdvbl0gbmFjaHQgaXNpCltBbGxnZW1laW46TWFuZHJhZ29uXSBuYWphLiBlbmRsaWNoIGluIHJ1aGUgd2VpdGVycHJvZ2dlbgoKcGZmZmZmZmYgOykKaXNpIChtb3Vzc2V3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYmFlaCAoS2F2YWxpZXIsIDE0LiBKdW4gMjAwMiwgMTU6MDE6MDQpOgpEdSB0ZWlsc3QgQnJvdG5hZWwgbWl0OiBpY2ggbWFjaCBqZXR6dCBmZWllcmFiZW5kIDopCkJyb3RuYWVsIHRlaWx0IERpciBtaXQ6IG11aCAhOiA6KSBJY2ggYmluIFNhaWxvciBCcm90bmFlbCB1bmQgaW0gTmFtZW4gZGVzCkJyb3RuYWVsIHRlaWx0IERpciBtaXQ6IE1vbmRlcyB3ZXJkZSBpY2ggRGljaCBiZXN0cmFmZW4hIFsxNTowMF0KCmRhIHdpbGwgbWFuIG51ciBpbiBydWhlIGlucyB3ZSBnZWhlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJvYmluIChHcmltbWJvcm4sIDE0LiBKdW4gMjAwMiwgMTU6MzM6MzkpOgp+IyEgcm49Qm9pbmcgcnQ9MTAyNDA2MTQ3OSByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDI0MDYxNDc5CkljaCB6aXRpZXJlIGF1cyBTaG9ndW4sIHZvbiBKLiBDbGF2ZWxsOgoiLi4ubXVzcyBhbSBTY2h3YW56IGF1ZmdlaGFlbmd0IHdlcmRlbiBiaXMgZXIgdm9uIGFsbGVpbmUgcnVudGVyZmFlbGx0LCBkYW5uCmlzdCBlciBndXQuIgpJc3QgUm9iaW4gYXVjaCBlaW4gRmFzYW4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUm9iaW4gKEJvaW5nLCAxNC4gSnVuIDIwMDIsIDE1OjM2OjExKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI0MDYxNjE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDA2MTQ3OQpBQmdlaGFlbmd0LCBHcmltbWJvcm4gLi4uIG5pY2h0IGF1ZmdlaGFlbmd0LiA6KSBVbmQgYXVjaCBuaWNodCBhYmdlaGFuZ2VuIQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBSb2JpbiAoR3JpbW1ib3JuLCAxNC4gSnVuIDIwMDIsIDE1OjM3OjExKToKfiMhIHJuPUJvaW5nIHJ0PTEwMjQwNjE3NzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0MDYxNDc5CkhtbSwgc29sbCBpY2ggZGFzIGluIEJlenVnIGF1ZiBkaWUgRnJhZ2UgYWxzIGVpbiAibmVpbiwgZXIgaXN0IGtlaW4gRmFzYW4iCmF1ZmZhc3Nlbj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUm9iaW4gKEJvaW5nLCAxNC4gSnVuIDIwMDIsIDE1OjM3OjU3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI0MDYxODMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDA2MTQ3OQpTdGltbXQsIGljaCB2ZXJnYXNzIGRpZXNlIEZyYWdlIHp1IGJlYW50d29ydGVuIHVuZCBtYWNoIGRhcyBoaWVybWl0OgpOZWluLCBlciBpc3Qga2VpbiBGYXNhbi4gRGllIEFudHdvcnQgYXVmIERlaW5lIGxldHp0ZSBGcmFnZSBsYXV0ZXQgYWxzbwpkYW5uICdqYScuCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFJvYmluIChDdWNodWxsaW4sIDE0LiBKdW4gMjAwMiwgMTk6MDg6NTkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjQwNjE4MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0MDYxNDc5CmFiZ2VoYWVuZ3QgIT0gYWJnZWhhbmdlbi4gCgpEYXMgc29sbHRlc3QgRFUgZG9jaCBqZXR6dCB3aXNzZW4sIEdyaW1taSA6KQoKQ3VjaCAqbXVybWVsdCB3YXMgdm9uICd0cmFuc2l0aXYnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUm9iaW4gKEdyaW1tYm9ybiwgMTQuIEp1biAyMDAyLCAxOToxOTo1Mik6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAyNDA3NDUzOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQwNjE0NzkKS2xhciB3ZWlzcyBpY2ggZGFzLiBBYmVyIGRhbm4gaGFldHRlIGRhcyBaaXRhdCBuaWNodCBtZWhyIGdlcGFzc3QsIGRhcyBtdXNzdApEdSBzY2hvbiBlaW5zZWhlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjkyODk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKENhdHdlYXpsZSwgMTQuIEp1biAyMDAyLCAxOTo1ODoxNSk6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTAyNDA3NzM2NyByZz1tZWdhc2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSmEsIHVuZCBkdSBiaXN0IHNjaHVsZCwgZGFzIGljaCBtZWluZW4gbGV0enRlbiBLb21tZW50YXIgbmljaHQgbG9zd2VyZGVuCmtvbm50ZS4gUGZmZmZmZmZmZmZmZmZmZmYuIChjKSAxOTk3IGJ5IExhcmlzc2EKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjkyODk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJvaW5nLCAxNC4gSnVuIDIwMDIsIDIxOjMzOjI0KToKfiMhIG9uPU1vbnRhbnVzIG90PTEwMjQwNzgxMzUgb2c9ZC5zY2hhdHRlbndlbHQKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDI0MDc3MzY3IHJnPW1lZ2FzY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApEZXIgenVrdWVuZnRpZ2UgUk0gU2NoYXR0ZW53ZWx0IGhhdCB2b3JoaW4gZG9jaCBnZXNhZ3QsIHdpciBzb2xsZW4gc2hjb25tYWwKZGllIFJ1YnJpayBhdWZ3YWVybWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjkyOTA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJvaW5nLCAxNC4gSnVuIDIwMDIsIDIxOjMzOjI1KToKfiMhIG9uPVZhcmxhcmlvbiBvdD0xMDI0MDc4MTYzIG9nPWQuc2NoYXR0ZW53ZWx0Cn4jISBybj1Nb250YW51cyBydD0xMDI0MDc4MTM1IHJnPWQuc2NoYXR0ZW53ZWx0Cn4jISB0aWQ9OTgyMzI4Mjc4CldpZXZpZWwgUGxhdHogaXNuIGhpZXI/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTI5MTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQm9pbmcsIDE0LiBKdW4gMjAwMiwgMjE6MzM6MjYpOgp+IyEgb249TW9udGFudXMgb3Q9MTAyNDA3ODcxMCBvZz1kLnNjaGF0dGVud2VsdAp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMjQwNzgxNjMgcmc9ZC5zY2hhdHRlbndlbHQKfiMhIHRpZD05ODIzMjgyNzgKS2FubiBtYW4gamEgbWFsIGF1c3Rlc3Rlbi4KTGFzcyB1bnMgYWJlciB1ZWJlciBkaWUgU2NoYXR0ZW53ZWx0IHJlZGVuLCB1bmQgdWViZXIgZGVuIG5ldWVuIFJNLCBkYW1pdCBzaWNoCmRpZSBMZXV0ZSBuaWNodCB1bm5vZXRpZyBtb2VsbGVtYW5uaXNpZXJlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5MjkyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChCb2luZywgMTQuIEp1biAyMDAyLCAyMTozMzoyNyk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTAyNDA3ODc1NCBvZz1kLnNjaGF0dGVud2VsdAp+IyEgcm49TW9udGFudXMgcnQ9MTAyNDA3ODcxMCByZz1kLnNjaGF0dGVud2VsdAp+IyEgdGlkPTk4MjMyODI3OApOdSBsYXNzIHNpZSBkb2NoLiBKZWRlciBrYW5uIGQuc2NoYXR0ZW53ZWx0IGFiYmVzdGVsbGVuIG9obmUgQW5nc3QgaGFiZW4genUKbXVlc3NlbiB3ZWx0YmV3ZWdlbmRlIE5ldWlna2VpdGVuIHp1IHZlcnBhc3Nlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjkyOTM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJvaW5nLCAxNC4gSnVuIDIwMDIsIDIxOjMzOjI4KToKfiMhIG9uPVZhcmxhcmlvbiBvdD0xMDI0MDc4Nzc4IG9nPWQuc2NoYXR0ZW53ZWx0Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNDA3ODc1NCByZz1kLnNjaGF0dGVud2VsdAp+IyEgdGlkPTk4MjMyODI3OApXYW5uIHdpcnN0IER1IGRlbm4gUk0gU2NoYXR0ZW53ZWx0LCBHcmltbWJvcm4/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTI5NDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQm9pbmcsIDE0LiBKdW4gMjAwMiwgMjE6MzM6MjkpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwMjQwNzg4MjYgb2c9ZC5zY2hhdHRlbndlbHQKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDI0MDc4Nzc4IHJnPWQuc2NoYXR0ZW53ZWx0Cn4jISB0aWQ9OTgyMzI4Mjc4CkRhIGZyYWcgbWFsIHVuc2VyZW4gRGlybmRsZ290dCB3ZW5uIGVyIHdpZWRlciB6dXJ1ZWNrIGlzdC4gRmFsbHMgc2llIGlobiBuYWNoCnNlaW5lciBWb3JzdGVsbHVuZyB3aWVkZXIgZ2VoZW5sYXNzZW4gdW5kIG5pY2h0IGVpbmJ1Y2h0ZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjkyOTM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJvaW5nLCAxNC4gSnVuIDIwMDIsIDIxOjMzOjMwKToKfiMhIG9uPU1vbnRhbnVzIG90PTEwMjQwNzg4NDIgb2c9ZC5zY2hhdHRlbndlbHQKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI0MDc4NzU0IHJnPWQuc2NoYXR0ZW53ZWx0Cn4jISB0aWQ9OTgyMzI4Mjc4Cm5vY2gsIEdyaW1tYm9ybiwgbm9jaC4KV2lyc3QgZHUgdmVyc3ByZWNoZW4sIGRpZSBTY2hhdHRlbndlbHQgenVyIEZQLWZyZWllbiBaT25lIHp1IG1hY2hlbj8gU29uc3QKa29tbWVuIG1vZWdsaWNoZXJ3ZWlzZSBub2NoIExldmVsZ2VpbGUgU1BpZWxlciB2b3JiZWkgdW5kIHdvbGxlbiBtZXR6ZWxuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjkyOTU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJvaW5nLCAxNC4gSnVuIDIwMDIsIDIxOjMzOjMxKToKfiMhIG9uPU1vbnRhbnVzIG90PTEwMjQwNzg5Mjggb2c9ZC5zY2hhdHRlbndlbHQKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI0MDc4ODI2IHJnPWQuc2NoYXR0ZW53ZWx0Cn4jISB0aWQ9OTgyMzI4Mjc4CkFyZ2wsIGljaCBoYWIgZ3JhZCBSZWhlIHZlcnNjaGVua3QuCklociBzY2hyZWlidCB6dSBzY2huZWxsLCB1bmQgbGVua3QgbWljaCBtaXQgdGVpbGUtbWl0cyBhYi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTI5NDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQm9pbmcsIDE0LiBKdW4gMjAwMiwgMjE6MzM6MzIpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwMjQwNzg5Mzggb2c9ZC5zY2hhdHRlbndlbHQKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwMjQwNzg4NDIgcmc9ZC5zY2hhdHRlbndlbHQKfiMhIHRpZD05ODIzMjgyNzgKQWJlciBuYXR1ZXJsaWNoLCBrZWluZSBzdGlua2lnZW4gRlAgaW4gbWVpbmVyIFJlZ2lvbiwgZGFzIGlzdCBkb2NoCnNlbGJzdHZlcnN0YWVuZGxpY2guIFdlbmlnc3RlbnMgZG9ydCB3aWxsIGljaCBpbiBSdWhlIHJ1bWxhdWZlbiBrb2VubmVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTI5NTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQm9pbmcsIDE0LiBKdW4gMjAwMiwgMjE6MzM6MzMpOgp+IyEgb249TW9udGFudXMgb3Q9MTAyNDA3OTA1NiBvZz1kLnNjaGF0dGVud2VsdAp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjQwNzg5Mzggcmc9ZC5zY2hhdHRlbndlbHQKfiMhIHRpZD05ODIzMjgyNzgKT2gsIGljaCBkYWNodGUsIGZ1ZXIgRlBzIG11c3MgbWFuIGRlbiBCZWZlaGwgInVudGVyc3VjaGUiIHZlcndlbmRlbi4gR2VodCBkYXMKZWNodCBhdWNoIGR1cmNoIGJsb3NzZXMgIEhlcnVtbGF1ZmVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjkyOTY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJvaW5nLCAxNC4gSnVuIDIwMDIsIDIxOjMzOjM0KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDI0MDc5MTE1IG9nPWQuc2NoYXR0ZW53ZWx0Cn4jISBybj1Nb250YW51cyBydD0xMDI0MDc5MDU2IHJnPWQuc2NoYXR0ZW53ZWx0Cn4jISB0aWQ9OTgyMzI4Mjc4CkljaCB3ZXJkIG1pY2ggaHVldGVuIGRhIHdhcyB6dSByaXNraWVyZW4uIERpZSBUZWlsZSBibGVpYmVuIGRyYXVzc2VuIHVuZCBndXQKaXN0LiBXZW1zIG5pY2h0IHBhc3N0IGRhcmYgZ2VybmUgaW4gYW5kZXJlbiBSZWdpb25lbiBydW1zcGF6aWVyZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5Mjk3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChCb2luZywgMTQuIEp1biAyMDAyLCAyMTozMzozNSk6Cn4jISBvbj1Nb250YW51cyBvdD0xMDI0MDgxMjE5IG9nPWQuc2NoYXR0ZW53ZWx0Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNDA3OTExNSByZz1kLnNjaGF0dGVud2VsdAp+IyEgdGlkPTk4MjMyODI3OApIZXJyIEdyZWxsZ2VuIGhhdCBzaWNoIGdyYWQgYmVpIG1pciBiZXNjaHdlcnQsIHdpciB3dWVyZGVuIGRpZXNlClplaXR1bmdzcnVicmlrIGthcHV0dG1hY2hlbi4KRXJzdGVucyBzdGltbXQgZXMgbmljaHQsIHdlaWwgd2lyIGRhcnVlYmVyIGRpc2t1dGllcmVuLCBvYiBlcyBGUHMgaW4gZGVyClNjaGF0dGVud2VsdCBnZWJlbiB3aXJkIG9kZXIgbmljaHQsIHVuZCB6d2VpdGVucyBkdXJmdGUgZXIgc2ljaCBkaWUKU3RhbmRhcmRhbnR3b3J0IGFiaG9sZW4sIGRhc3MgZGVyIFJNIGluIHNwZSBnZXNnYXQgaGF0LCBtYW4ga29lbm5lIGlkZSBSdWJyaWsKamEgYWJiZXN0ZWxsZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTI5ODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoR3JpbW1ib3JuLCAxNC4gSnVuIDIwMDIsIDIyOjIxOjI0KToKfiMhIHJuPUJvaW5nIHJ0PTEwMjQwODMyMTUgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSGVlLCB3ZXIgdmVybGVndCBkZW5uIGRhIGRpZSBnYW56ZW4gQXJ0aWtlbCBhdXMgbWVpbmVyIGJhZWxkaWdlbgpSZWdpb25zcnVicmlrPyBTbyBnZWh0IGRhcyBudW4gYWJlciBuaWNodC4uLgoKR2RBIGdydW1tZWx0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTI5OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQ3JvZnQsIDE0LiBKdW4gMjAwMiwgMjI6MjE6NTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjQwODYwODQgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKVmVybGVnIHNpZSBoYWx0IHdpZWRlciB6dXJ1ZWNrLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjkzMDA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdyaW1tYm9ybiwgMTQuIEp1biAyMDAyLCAyMjoyMzoyNCk6Cn4jISBybj1Dcm9mdCBydD0xMDI0MDg2MTE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CktvZW5udGUgaWNoIG1hY2hlbiwgYWJlciBnYW56IHNvIHZlcnp3ZWlmZWx0IGJpbiBpY2ggYXVjaCB3aWVkZXIgbm9jaCBuaWNodC4KVmllbGxlaWNodCBzbyBnZWdlbiA1IFVociBydW0gZGFubi4KVWVicmlnZW5zLCB3dXNzdGV0IGlociBkYXNzIGF1Y2ggTENEIGRpc3BsYXlzIHVuc2NoYXJmIHNlaW4ga29lbm5lbj8gTWVpbnMgaXN0CmluIGRlciBNaXR0ZSBnYW56IHZlcnNjaHdvbW1lbiwgZGFzIHNpZWh0IGVrbGljaCBhdXMuIEthbm4gYWJlciBhdWNoIGFuIGRpZXNlbQpXaW5kb3dzIE5FIGxpZWdlbiwga2VpbmUgQWhudW5nLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11aCAoVGVrdHVrbywgMTUuIEp1biAyMDAyLCAxNzoyNjoxMSk6CkRlaW4gRnJldW5kIENvcmFrIHRlaWx0IERpciBtaXQ6IGhtLCB3YXMgbWFjaCBpY2ggbnU/Pz8KQ29yYWsgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkNvcmFrICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpDb3JhayBoYXQgaW1tZXIgc28ga29taXNjaGUgSWRlZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBkaWUgQ29tcHV0ZXJiaWxkIHNvIGFsbGVzIHdlaXNzLi4uIChBbnRoZWEsIDE3LiBKdW4gMjAwMiwgMTA6MTA6NDcpOgoiUEMgaXN0IGRpZSBBYmt1ZXJ6dW5nIHZvbiAnUGVyc29uYWwgQ29tcHV0ZXInICgoc3ByaWNoOiAiUG9lcnJzc2VuZWxsCiBLb21tcGp1aHRlcicpKS4gRGFzIHdhciBkaWUgUHJvZHVrdGJlemVpY2hudW5nIGZ1ZXIgZGllIGVyc3RlbiB2b20KIGFtZXJpa2FuaXNjaGVuIEhlcnN0ZWxsZXIgSUJNIHp1IEJlZ2lubiBkZXIgODBlciBKYWhyZSBlbnR3aWNrZWx0ZW4KIFNjaHJlaWJ0aXNjaC1Db21wdXRlci4gSGV1dGUgd2lyZCBkaWVzZSBCZXplaWNobnVuZyBmdWVyIGFsbGUgQ29tcHV0ZXIKIGJlbnV0enQsIGF1ZiBkZW5lbiBXaW5kb3dzIGxhZXVmdC4iCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FzIGRpZSBDb21wdXRlcmJpbGQgc28gYWxsZXMgd2Vpc3MuLi4gKEdyaW1tYm9ybiwgMTcuIEp1biAyMDAyLCAxMDoxMjo1MSk6Cn4jISBybj1BbnRoZWEgcnQ9MTAyNDMwMTQ0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQzMDE0NDcKVGphLCB1bmQgc29iYWxkIGljaCBlaW5lbiA4IENQVSBXMmstc2VydmVyIGFscyAiUEMiIHRpdHVsaWVyZSB3aXJkIG1pcgpBcnJvZ2FueiB2b3JnZXdvcmZlbi4gU28gdW5nZXJlY2h0IGthbm4gZGllIFdlbHQgc2Vpbi4uLgoKR2RBLCBIZXJyIGRlciA4IENQVSBOaWNodC1QQ3MKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9laG0gKEFub3JpcywgMTcuIEp1biAyMDAyLCAxMDo0Mzo0Nik6CkxhY3JpICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpMYWNyaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpMYWNyaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKQ3Jvd2xleSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKQ3Jvd2xleSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpMYWNyaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpMYWNyaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKQ3Jvd2xleSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKQ3Jvd2xleSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpMYWNyaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKaXN0IGJhbGQgZ3V0PyAqZ3JpbnMqIDspCi0gQW5vcmlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhcyBkaWUgQ29tcHV0ZXJiaWxkIHNvIGFsbGVzIHdlaXNzLi4uIChBcmssIDE3LiBKdW4gMjAwMiwgMTA6NDQ6NTkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjQzMDE1NzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0MzAxNDQ3ClNlcnZlciE9IlBlcnNvbmFsIiA/IDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdhcyBkaWUgQ29tcHV0ZXJiaWxkIHNvIGFsbGVzIHdlaXNzLi4uIChHcmltbWJvcm4sIDE3LiBKdW4gMjAwMiwgMTA6NTU6MzQpOgp+IyEgcm49QXJrIHJ0PTEwMjQzMDM0OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0MzAxNDQ3ClsgXSBEdSB3ZWlzc3Qgd2FzIGVpbiBzZXJ2ZXIgaXN0LgpTZWxic3Qgd2VubiBzZXJ2ZXIgbmljaHQgYWxzIFNvZnR3YXJlcHJvemVzcyBnZW1laW50IGlzdCBpc3QgZXIgZ2VsZWdlbnRsaWNoCmltbWVyIG5vY2ggInBlcnNvbmFsIi4gTmljaHQgc2VociBoYWV1ZmlnLCBhbGxlcmRpbmdzLCB1bmQgZXJzdCByZWNodCBuaWNodCBpbgpkZXIgR3JvZXNzZW5vcmRudW5nIGRpZSB3aXIgaGllciBydW1saWVnZW4gaGFiZW4uIEFtIERvbm5lcnN0YWcgd2Vpc3MgaWNoIGRhbm4KYXVjaCB3byB3aXIgc3RlaGVuLCBtaXIgc2FndCBoaWVyIGphIGtlaW5lciB3YXMuIEJsb2VkZSBIZWltbGljaHR1ZXJlaSB1bSBkaWUKdG9wNTAwLUxpc3RlLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdhcyBkaWUgQ29tcHV0ZXJiaWxkIHNvIGFsbGVzIHdlaXNzLi4uIChBbnRoZWEsIDE3LiBKdW4gMjAwMiwgMTA6NTc6MjApOgp+IyEgcm49QXJrIHJ0PTEwMjQzMDM0OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0MzAxNDQ3CkFlaC4uLiBkaWUgWmVpbGUgZ2lidCBhYmVyIGhhcnRlIENvbXBpbGVyZmVobGVyIGF1cy4gU2VydmVyIT0iUGVyc29uYWwiIGdlaHQKamEgbm9jaCwgYWJlciB6d2lzY2hlbiA/IHVuZCA6IGZlaGx0IGVpbiBlcnN0ZXMgUmVzdWx0YXQtQXJndW1lbnQsIHVuZCBlaW5lCktsYW1tZXIgYXVmIGZlaGx0IGF1Y2guIFVuZCBlaW4gZWluemVsbmVzIC0gaXN0IGF1Y2ggdW5nZXJuIGdlc2VoZW4uIFVuZApzY2hsaWVzc2xpY2ggc29sbHRlIG1hbiBub2NoIHdpc3NlbiwgYXVmIHdlbGNoZSBWYXJpYWJsZSBkYXMgUmVzdWx0YXQKenVnZXdpZXNlbiB3aXJkLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2FzIGRpZSBDb21wdXRlcmJpbGQgc28gYWxsZXMgd2Vpc3MuLi4gKEFyaywgMTcuIEp1biAyMDAyLCAxMToyOTo0OSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNDMwNDEzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQzMDE0NDcKRG9jaCwgaWNoIHdlaXNzLCB3YXMgZWluIFNlcnZlciBpc3QuIFVuZCAiRGVpbmVyIiB3b2hsIGF1Y2gsIG9kZXIgd2FydW0gaGVpc3N0CmVzICJ3aXIiPyA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXYXMgZGllIENvbXB1dGVyYmlsZCBzbyBhbGxlcyB3ZWlzcy4uLiAoR3JpbW1ib3JuLCAxNy4gSnVuIDIwMDIsIDExOjM0OjI4KToKfiMhIHJuPUFyayBydD0xMDI0MzA2MTg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDMwMTQ0NwpJY2ggd2Vpc3MgbmljaHQgZ2VuYXUgd2FzIER1IGVpZ2VudGxpY2ggc2FnZW4gd2lsbHN0LCBhYmVyIGljaCBhbnR3b3J0ZQp0cm90emRlbSBtYWwuLi4KTmViZW4gZWluZXIgSGFuZHZvbGwgU29mdHdhcmVzZXJ2ZXJwcm96ZXNzZW4sIGRpZSBmdWVyIG1pY2ggcGVyc29lbmxpY2ggZGEKc2luZCAoei5CLiBYIHVuZCBkZXIgZWluZSBvZGVyIGFuZGVyZSBzc2hkKSBzdGVodCBoaWVyIHRhdHNhZWNobGljaCBlaW4gOCBDUFUKRWlzZW4gcnVtLCBkYXNzLCB3ZW5uIGljaCBlcyBudXR6ZW4gd2lsbCwgbWVociBvZGVyIHdlbmlnZXIgIm1laW5lciIgaXN0LiBEYQppc3Qgc29uc3QgbmljaHRzIGRyYXVmIHdhcyBtaWNoIHN0b2VyZW4gd3VlcmRlLCBkZW4ga2FubiBpY2ggc29nYXIgYWJzY2hhbHRlbgp1bmQgYXVzZWluYW5kZXJuZWhtZW4sIHdlbm4gaWNoIEx1c3QgZHJhdWYgaGFiZSAodW5kIGlobiB3aWVkZXIgenVzYW1tZW5nZWJhdXQKa3JpZWdlKS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2FzIGRpZSBDb21wdXRlcmJpbGQgc28gYWxsZXMgd2Vpc3MuLi4gKFRyb3ksIDE3LiBKdW4gMjAwMiwgMTE6MzQ6MzkpOgp+IyEgcm49QXJrIHJ0PTEwMjQzMDYxODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0MzAxNDQ3Ck9laG0sIHdhcyBpc3QgZGFubiAtIGJpdHRlIC0gIk1pY3Jvc29mdCBQZXJzb25hbCBXZWJTZXJ2ZXIiPyBJc3QgZGFzIG51bgpTZXJ2ZXIgb2RlciBQZXJzb25hbD8KClRyb3kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdhcyBkaWUgQ29tcHV0ZXJiaWxkIHNvIGFsbGVzIHdlaXNzLi4uIChHcmltbWJvcm4sIDE3LiBKdW4gMjAwMiwgMTE6MzY6MzgpOgp+IyEgcm49VHJveSBydD0xMDI0MzA2NDc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDMwMTQ0NwpEYXMgaXN0IHF1YXNpIHdlZGVyIG5vY2gsIGRhcyBpc3QgRHJlY2suIDstKQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXYXMgZGllIENvbXB1dGVyYmlsZCBzbyBhbGxlcyB3ZWlzcy4uLiAoQmllbGVmZWxkLCAxNy4gSnVuIDIwMDIsIDExOjQyOjM5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI0MzA2NTk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDMwMTQ0NwpNYW4ga29lbm50ZSBlcyBTY2hldW5lbnRvciBuZW5uZW4uCgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBXYXMgZGllIENvbXB1dGVyYmlsZCBzbyBhbGxlcyB3ZWlzcy4uLiAoS2F2YWxpZXIsIDE3LiBKdW4gMjAwMiwgMTE6NDQ6MzgpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTEwMjQzMDY5NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0MzAxNDQ3CmRhcyBpc3QgZGFuIGVpbiBhYmdlc3BlY2t0ZXIgSUVTIGRlciBnYXIgbml4IG1laHIga2FubiBmdWVyIDk4IG9kZXIgc28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdhcyBkaWUgQ29tcHV0ZXJiaWxkIHNvIGFsbGVzIHdlaXNzLi4uIChHcmltbWJvcm4sIDE3LiBKdW4gMjAwMiwgMTE6NDU6NDApOgp+IyEgcm49S2F2YWxpZXIgcnQ9MTAyNDMwNzA3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQzMDE0NDcKV2FzIGlzdCBlaW4gSUVTPwoKR2RBIGlzdCBzaWNoIG5pY2h0IHNvIHNpY2hlciBvYiBlcnMgd2lzc2VuIHdpbGwuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBXYXMgZGllIENvbXB1dGVyYmlsZCBzbyBhbGxlcyB3ZWlzcy4uLiAoTWFuZHJhZ29uLCAxNy4gSnVuIDIwMDIsIDEyOjA2OjIzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI0MzA3MTQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDMwMTQ0NwpJSVMgPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdhcyBkaWUgQ29tcHV0ZXJiaWxkIHNvIGFsbGVzIHdlaXNzLi4uIChBcmssIDE3LiBKdW4gMjAwMiwgMTM6MDk6MjcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjQzMDY0Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0MzAxNDQ3CkRhbm4gaXN0IGRhcyBrZWluIFNlcnZlciwgZGVubiBlciBzdGVsbHQgamEgbmljaHQgYW5kZXJlbiBCZW51dHplcm4gUmVzc291cmNlbgp6dXIgVmVyZnVlZ3VuZywgb2RlciBhcmJlaXRlc3QgRHUgbmljaHQgZGlyZWt0IGF1ZiBpaG0/ICJQZXJzb25hbCBDb21wdXRlciIKc2luZCBlYmVuIGtlaW5lIGZ1ZXIgYW5kZXJlIFVzZXIgenVnYWVuZ2xpY2hlIFJlc291cmNlbiwgZGllIGVpbiBTZXJ2ZXIgenVyClZlcmZ1ZWd1bmcgc3RlbGx0LCBqZWRlbmZhbGxzIG5pY2h0LCBzb2xhbmdlIG1hbiBzaWUgbmljaHQgYWxzIHNvbGNoZQplaW5yaWNodGV0LiBJbSB1bWdhbmdzc3ByYWNobGljaGVuIFNpbm5lIGhhdCBzaWNoIGFsbGVyZGluZ3MgaW0gTGF1ZmUgZGVyIFplaXQKZGVyIFBDIHNpY2hlciBhdWNoIGhpZXIgb2RlciBkb3J0IGVpbm1hbCBhbHMgTWluaXNlcnZlciBlaW5lbiBOYW1lbiBnZW1hY2h0LAphYmVyIHRyb3R6ZGVtIHd1ZXJkZSBpY2ggZGFzLCB3b3JhdWYgRHUgRGljaCBiZXppZWhzdCwgbmljaHQgYWxzIFBDIGFidHVuIDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFdhcyBkaWUgQ29tcHV0ZXJiaWxkIHNvIGFsbGVzIHdlaXNzLi4uIChHcmltbWJvcm4sIDE3LiBKdW4gMjAwMiwgMTM6MTQ6MzIpOgp+IyEgcm49QXJrIHJ0PTEwMjQzMTIxNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0MzAxNDQ3CkxhdXQgZGllc2VtIGtvbXBldGVudGVuIEZhY2hibGF0dCBpc3QgZXMgZWluIFBDLCB3ZW5uIFdpbmRvd3MgZHJhdWYgbGFldWZ0LgpGdWVyIG1pY2ggaXN0IGlyZ2VuZHdpZSBhbGxlcyBlaW4gUEMsIHdhcyBhdWYgSW50ZWxiYXNpcyBsYWV1ZnQgKGluY2wuIElBNjQsCnVuZCBuYXR1ZXJsaWNoIGF1Y2ggQU1EIHVuZCBWZXJ3YW5kdGUpLiBEYXMgaXN0IGphIG5pY2h0bWFsIGVpbmUKbGVpc3R1bmdzbWFlc3NpZ2UgQWJxdWFsaWZpemllcnVuZywgYXVjaCB3ZW5uIG1hbiBpbiBkZW0gQmVyZWljaCBuYXR1ZXJsaWNoCmVoZXIgbmljaHQgIlJlYWwgQ29tcHV0ZXIgRm9yIFJlYWwgTWVuIiAodG0pIGZpbmRldC4gVW5kIGxldHp0bGljaCBpc3QgYXVjaApkZXIgUGhhZXRvbiAiZWluIFZXIi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogV2FzIGRpZSBDb21wdXRlcmJpbGQgc28gYWxsZXMgd2Vpc3MuLi4gKEFudGhlYSwgMTcuIEp1biAyMDAyLCAxMzoxNzoxNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNDMxMjQ3MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQzMDE0NDcKU29zbywgYWxsZXMgd2FzIGF1ZiBJbnRlbC1CYXNpcyBsYWV1ZnQ/IEVzIGdpYnQgYWJlciBhdWNoIHouQi4KUzUvUzctU3RlY2trYXJ0ZW4sIGRpZSBlaW5lbiB4ODYtUHJvemVzc29yIGhhYmVuLCB1bmQgZGllIHd1ZXJkZSBpY2ggbnVuCmJlc3RpbW10IG5pY2h0IGluIGRlbiBCZXJlaWNoICJQQyIgc3RlbGxlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdhcyBkaWUgQ29tcHV0ZXJiaWxkIHNvIGFsbGVzIHdlaXNzLi4uIChHcmltbWJvcm4sIDE3LiBKdW4gMjAwMiwgMTM6MjE6MzcpOgp+IyEgcm49QW50aGVhIHJ0PTEwMjQzMTI2MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0MzAxNDQ3CkphamEsIHVuZCBkaXZlcnNlIFN0ZXVlcmdlcmFldGUgbGF1ZmVuIGhldXRlIG5vY2ggbWl0IGlyZ2VuZHdlbGNoZW4KODA4NigtY2xvbmVzKS4gSWNoIHdvbGx0ZSBtaXRuaWNodGVuIGVpbmUgdW1mYXNzZW5kZSwgYWxsZSBTcGV6aWFsZmFlbGxlCnVtZmFzc2VuZGUgRGVmaW5pdGlvbiBpbiBlaW5lbiBoYWxiZW4gTmViZW5zYXR6IHBhY2tlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdhcyBkaWUgQ29tcHV0ZXJiaWxkIHNvIGFsbGVzIHdlaXNzLi4uIChCb2luZywgMTcuIEp1biAyMDAyLCAxMzozOTo1NCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNDMxMjg5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQzMDE0NDcKQmVpIERlaW5lbSBzb25zdGlnZW4gR2VuYXVpZ2tlaXRzd2FobiBmaW5kZSBpY2ggZGFzIGpldHp0IGFiZXIgc2Vocgp2ZXJ3dW5kZXJsaWNoIGRhc3MgRHUgaGllciBzbyBzY2hsdWRlcnN0IC4uLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogV2FzIGRpZSBDb21wdXRlcmJpbGQgc28gYWxsZXMgd2Vpc3MuLi4gKEVsYmVyZXRoLCAxNy4gSnVuIDIwMDIsIDEzOjQ0OjIzKToKfiMhIHJuPUJvaW5nIHJ0PTEwMjQzMTM5OTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0MzAxNDQ3CmljaCBtdXNzIG1hbCBlaW53ZXJmZW4sIGRhc3MgaWNoIG1pciBlaW5lbiBQaGFldG9uIG5pZW1hbCBhbnNjaGFmZmVuIHd1ZXJkZSwKZGFzIGlzdCBzY2hvbiB2b20gTmFtZW4gaGVyIHp1bSBTY2hlaXRlcm4gdmVydXJ0ZWlsdC4gV2llIG1hbiBlaW4gQXV0byBzbwpuZW5uZW4ga2FubiBpc3QgbWlyIHdpcmtsaWNoIHNjaGxlaWVyaGFmdC4KCkVsYmloCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogV2FzIGRpZSBDb21wdXRlcmJpbGQgc28gYWxsZXMgd2Vpc3MuLi4gKEdyaW1tYm9ybiwgMTcuIEp1biAyMDAyLCAxNDoyNjowMyk6Cn4jISBybj1FbGJlcmV0aCBydD0xMDI0MzE0MjYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDMwMTQ0NwpCZXNwcmljaCBkYXMgZG9jaCBtaXQgSGVycm4gUGktZWNoLCBkZW4gaW50ZXJlc3NpZXJ0IGRhcyBiZXN0aW1tdC4gQmVzc2VyIGFscwoiN2VyIiBpc3QgZGFzIGFsbGVtYWwuClVuZCBtZWluZSBHZW5hdWlna2VpdCBzY2hydW1wZnQgaW4gZGVtIE1hc3NlIHdpZSBtaXIgbWVpbmUgQ2hlZnMgdWViZXIgZGllClNjaHVsdGVyIGd1Y2tlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFdhcyBkaWUgQ29tcHV0ZXJiaWxkIHNvIGFsbGVzIHdlaXNzLi4uIChSb25kYSwgMTguIEp1biAyMDAyLCAwMDo0Nzo0Mik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNDMxNjc2MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQzMDE0NDcKSG0uIERBUyBoYWV0dGUgaWNoIG5pY2h0IHZvbiBEaXIgZ2VkYWNodCwgR3JpbW1ib3JuLiBEYXMgYmVkZXV0ZXQgYWxzbyBkYXNzIER1Cm51ciBub2NoIE1pc3QgYmF1c3Qgd2VubiBEZWluIENoZWYgRGlyIHVlYmVyIGRpZSBTY2h1bHRlciBzY2hhdXQ/CgpSb25kYSAqd3VlcmQgc28gbmVuIGRpY2tlbiBWVyBzY2hvbiBuZWhtZW4uIFdlbm4gYSkgamVtYW5kIGRlbiBTcHJpdCB6YWhsdCwgYikKZGFzIERpbmcgYmV6YWhsLCBlbnR3ZWRlciBjKSBmdWVyIG1pY2ggZWlucGFya3Qgb2RlciBkKSBkaWUgQmV1bGVuIGJlemFobHQgLQphbHNvIHdlcmQgaWNoIHNvIHdhcyB3b2hsIG5pZSBoYWJlbioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBXYXMgZGllIENvbXB1dGVyYmlsZCBzbyBhbGxlcyB3ZWlzcy4uLiAoTWFuZHJhZ29uLCAxOC4gSnVuIDIwMDIsIDA2OjIwOjQ2KToKfiMhIHJuPVJvbmRhIHJ0PTEwMjQzNTQwNjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0MzAxNDQ3CkFsc28gRGVpbiBqZXR6aWdlciBEaWNrZWdyYWQgaXN0IGphIGF1Y2ggbmljaHQgenUgdmVyYWNodGVuIC4uLiBhbGxlcmRpbmdzCnd1cmRlbiBkYSBhdWNoIHNjaG9uIGEpIHVuZCBiKSBlcmxlZGlndCwgZ2VsbD8gO28pCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBXYXMgZGllIENvbXB1dGVyYmlsZCBzbyBhbGxlcyB3ZWlzcy4uLiAoSW1kYSwgMTguIEp1biAyMDAyLCAwOTo0NDo1OCk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTAyNDM3NDA0NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQzMDE0NDcKSG1tbSwgd2FzIGJhdXQgZGVubiB2dywgd2FzIGJldWxlbiBiZWltIGVpbnBhcmtlbiBtYWNodCA/IExUIGxhbmcsIGhvY2ggPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbmltYXRlZC1HaWYgZ2VzdWNodCAoVmFybGFyaW9uLCAxOS4gSnVuIDIwMDIsIDE1OjQ0OjI5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI0NDk0MTg5IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTAyNDQ5NDAzNwpOZWUsIHNvIHRpZWYgc2luZCBkaWUsIGRpZSBpY2gga2VubmUgbm9jaCBuaWNodCBnZXN1bmtlbiwgZGllIHZlcmxhbmdlbiBhbGxlCm1pbmRlc3RlbnMgZWluZSB3YXJtZSBNYWhsemVpdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQW5pbWF0ZWQtR2lmIGdlc3VjaHQgKEdyaW1tYm9ybiwgMTkuIEp1biAyMDAyLCAxNTo0NzozOCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTAyNDQ5NDIyOSByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwMjQ0OTQwMzcKVmVyZGlyYiBoaWVyIG5pY2h0IGRpZSBQcmVpc2UgZnVlciBXZWJkZXNpZ25lciEKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0YXRpIGluIEdvZXBwaW5nZW4gKFJlZ2lvbiBTdHV0dGdhcnQpIChHcmltbWJvcm4sIDE5LiBKdW4gMjAwMiwgMTY6MTA6MDUpOgp+IyEgcm49SGlzYXN1bCBydD0xMDI0NDk1NjUwIHJnPXRyZWZmZW4KfiMhIHRpZD0xMDI0NDk1NjUwCkphLCB2ZXJzY2hpZWRlbmUgQmF5ZXJuIHp1c2FtbWVuenVicmluZ2VuIGZ1ZWhydCBzaWNoZXIgenUgZWluZW0gTW9yZHMtYWJlbmQuCkRhcyBoYWIgaWNoIGluIEVybGFuZ2VuIHNjaG9uIGZlc3RnZXN0ZWxsdCwgZGllIGhhdHRlbiBkYSB6dSBhbmRlcmVuIEJheWVybgppaHJlIHNlaHIgZmVzdGUgTWVpbnVuZy4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBIUCBXZWIgSmV0QWRtaW4gdW5kIENhc2lvIFRhc2NoZW5yZWNobmVyIGdlc3VjaHQgKFZhcmxhcmlvbiwgMjAuIEp1biAyMDAyLCAxMTozNTo1Nyk6Cn4jISBybj1BaGFiIHJ0PTEwMjQ1NjU1NTQgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMDI0NTY0MTYyCldhcyBiZXNjaHdlcnN0IGR1IGRpY2g/IERhcyAibmljaHQgdHVuIiBnZWhvZXJ0IGJlaSBkZW0gTWlzdCBkb2NoIHp1bSBub3JtYWxlbgpGdW5rdGlvbnN1bWZhbmcsIGlzdCBzb3p1c2FnZW4gZWluIEZlYXR1cmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBIUCBXZWIgSmV0QWRtaW4gdW5kIENhc2lvIFRhc2NoZW5yZWNobmVyIGdlc3VjaHQgKEFoYWIsIDIwLiBKdW4gMjAwMiwgMTE6NDA6MTMpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMjQ1NjU3NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0NTY0MTYyCkxlaWRlciBnZWh0IGRhcyBudXIgdW50ZXIgTlQgYXVjaCBvaG5lLiBVbnRlciA5OCBiaXN0ZSBhdWYgZGVyZW4gS3JlbXBlbAphbmdld2llc2VuLi4uICpzY2h1bHRlcnp1Y2sqCgpBaG9pLApBaGFiLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSFAgV2ViIEpldEFkbWluIHVuZCBDYXNpbyBUYXNjaGVucmVjaG5lciBnZXN1Y2h0IChHcmltbWJvcm4sIDIwLiBKdW4gMjAwMiwgMTE6NDU6MzQpOgp+IyEgcm49QWhhYiBydD0xMDI0NTY2MDEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDU2NDE2MgpOaWNodCBkYXNzIGljaCB3dWVzc3RlIHdvdm9uIGRpZSBSZWRlIGlzdCwgYWJlciBpY2gga2VubmUgSFAgRHJ1Y2tlciBkaWUgc2ljaApwZXIgdGVsbmV0IGFkbWluaXN0cmllcmVuIGxhc3Nlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogSFAgV2ViIEpldEFkbWluIHVuZCBDYXNpbyBUYXNjaGVucmVjaG5lciBnZXN1Y2h0IChWYXJsYXJpb24sIDIwLiBKdW4gMjAwMiwgMTE6NDY6MDMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjQ1NjYzMzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0NTY0MTYyClllcCwgZGFzIGZ1bmt0aW9uaWVydGUgd2VuaWdzdGVucyBhdWNoLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpaYXViZXJlciAoVGVrdHVrbywgMjAuIEp1biAyMDAyLCAxNzo0Njo0Nyk6Ckh1cHBzLCBEdSB2ZXJsaWVyc3QgZGllIEtvbnRyb2xsZSEKSW4gZGVyIFNjaGVpc3NlLgpFaW4gSGF1ZmVuIFNjaGVpc3NlLiAoNzMpCkVpbmUgWmF1YmVyZXItRkFRLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyIC4uLiAoTGlhcmEsIDIzLiBKdW4gMjAwMiwgMDA6MzE6MTApOgoKTXVwZmVsIHJ1ZnQ6IGhpZXIgaXN0LCB3byBkZXIgcm90d2VpbiBzdGVodAoKWlpMCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZWJvb3QtTG9nIChUaWFtYWssIDIzLiBKdW4gMjAwMiwgMjA6MTA6MzApOgpEYSB3aXIgZ2VyYWRlIHZvbiBSZWJvb3RzIHJlZGVuIC0gaGllciBpc3QgbWVpbiBhbGwtdGltZS1mYXZvdXJpdGUgYXVzIGRlbQpSZWJvb3QtTG9nZmlsZToKCk1vbiBGZWIgIDggMTY6NDA6NDggMTk5OTogUGFkcmVpYyBmYWVocnQgZGFzIFNwaWVsIGhlcnVudGVyLgogICAgR3J1bmQ6IGhvZmZlbnRsaWNoIGlzdCBkcml2ZXJidWcgbnVuIGJlaG9iZW4KTW9uIEZlYiAgOCAyMzoxMDoxMiAxOTk5OiBQYXJhY2Vsc3VzIGZhZWhydCBkYXMgU3BpZWwgaGVydW50ZXIuCiAgICBHcnVuZDogRXMgYnVnZ3QhCgoKVGlhbWFrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmVib290LUxvZyAoTXVwZmVsLCAyMy4gSnVuIDIwMDIsIDIwOjE3OjM0KToKfiMhIHJuPVRpYW1hayBydD0xMDI0ODU1ODMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDg1NTgzMApNZWluZXIgaXN0IGRlcjoKClR1ZSBTZXAgMjAgMTY6NDc6NTcgMTk5NDogSGF0ZSBmYWVocnQgZGFzIFNwaWVsIGhlcnVudGVyLgogICAgR3J1bmQ6IElDSCBCUkFVQ0ggRVMgTUFMISAKCi1tdXBmZWwtCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSZWJvb3QtTG9nIChHcmltbWJvcm4sIDIzLiBKdW4gMjAwMiwgMjA6MjI6NTIpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMjQ4NTYyNTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0ODU1ODMwCktsYXIgTXVwZmVsLCBhYmVyIHNvIGFsdCBpc3QgZGVyIFN1bXBmZnJvc2NoIGRvY2ggbmljaHQsIGRhc3MgZXIgZGFzIG5vY2gKa2VubnRldGUuLi4gOy0pCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFJlYm9vdC1Mb2cgKFRpYW1haywgMjMuIEp1biAyMDAyLCAyMDoyNDo0Nik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNDg1NjU3MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQ4NTU4MzAKQWJlciBsZXNlbiBrYW5uIGljaCBzY2hvbi4gQXVjaCwgd2VubiBtYW4gZXMgbWlyIG5pY2h0IHp1dHJhdXQuIDstKQoKClRpYW1hay4gRmFuZCBkaWUgYW5kZXJlIFN0ZWxsZSB0cm90emRlbSB3aXR6aWdlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFJlYm9vdC1Mb2cgKE11cGZlbCwgMjMuIEp1biAyMDAyLCAyMDoyNzoyNSk6Cn4jISBybj1UaWFtYWsgcnQ9MTAyNDg1NjY4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQ4NTU4MzAKSmVkZXIgaGF0IGhhbHQgc2VpbmUgRmF2b3JpdGVuLi4uIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUmVib290LUxvZyAoR3JpbW1ib3JuLCAyMy4gSnVuIDIwMDIsIDIwOjI5OjAyKToKfiMhIHJuPU11cGZlbCBydD0xMDI0ODU2ODQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDg1NTgzMApOYWphLCB3ZW5uIGljaCB6d2lzY2hlbiBIYXRlIHVuZCBQYWRyZWljIHdhZWhsZW4gc29sbC4uLiB3YXMgc29sbHMsIGplZGVyIGhhdApzZWluZSBlaWdlbmVuIEZhdm91cml0ZW4sIGphLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIZWxsc2VoZXIuIChBaGFiLCAyNC4gSnVuIDIwMDIsIDEyOjEyOjQxKToKUmF2ZW50aHJvbmUgbGFuZGV0IHppZWxzaWNoZXIuClJhdmVudGhyb25lIGZhZWxsdCB0b3QgenUgQm9kZW4uCgpFaW5lIFdpbnppZ2tlaXQgc3BhZXRlcjoKCltUb2Q6TGFyc10gRWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWwgaGF0IGdlcmFkZSBSYXZlbnRocm9uZSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsXSBQZmZmZmZmZmZmZmZ0Li4uLi4uLlBMVU1QUyEKCkFob2ksCkFoYWIsIHNpY2ggYW4gcHJhZWFubnVlbGxlbiBXZWluIGVyaW5uZXJ0IGZ1ZWhsZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhlbGxzZWhlci4gKEFwb2xsb25pYSwgMjQuIEp1biAyMDAyLCAxMjoxNTo1Myk6Cn4jISBybj1BaGFiIHJ0PTEwMjQ5MTM1NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0OTEzNTYxCk9vb29vb29vb2VlZWVlZWVlaCwgd2FyIGRhcyBuaWNodCAncmVhbm51ZWxsZXInIFdlaW4/CgpBcG8qCmdydWViZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIZWxsc2VoZXIuIChBaGFiLCAyNC4gSnVuIDIwMDIsIDEyOjIzOjU5KToKfiMhIHJuPUFwb2xsb25pYSBydD0xMDI0OTEzNzUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDkxMzU2MQpLb3JyaWdpZXJlOiBlcyBoZWlzc3QgbmF0dWVybGljaCByZWFubnVlbGxlciBXZWluLgoKQWhhYi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1c3NiYWxsLVdNIHVuZCBTdWVka29yZWEgKFZpbmNlbnQsIDI0LiBKdW4gMjAwMiwgMTM6NDQ6MjcpOgpBbSBEaWVuc3RhZyBzdGVodCBqYSBiZWthbm50ZXJtYXNzZW4gZGFzIEhhbGJmaW5hbHNwaWVsIERldXRzY2hsYW5kLVN1ZWRrb3JlYQphbi4gWndhciBuZWhtZW4gZGllIEhvbGxhZW5kZXIgKGFuZ2VibGljaCkgbmljaHQgYW4gZGVyIFdNIFRlaWwsIGRlbm5vY2gKd2FlcmUgZXMgbW9lZ2xpY2gsIGRhc3MgdW5zIChkZW4gRGV1dHNjaGVuKSBtb3JnZW4gZGFubiBkb2NoIG5vY2ggZGllCnZlcnNwYWV0ZXRlIFJhY2hlIEhvbGxhbmRzIHRyaWZmdDogU3VlZGtvcmVhcyBUcmFpbmVyIGlzdCBIb2xsYWVuZGVyLCB1bmQgaW0KRmFsbGUgZWluZXIgTmllZGVybGFnZSBEZXV0c2NobGFuZHMuLi5kZW5rZW4gd2lyIGxpZWJlciBuaWNodCBkYXJhbi4KRmFrdCBpc3QsIGRhc3MgU3VlZGtvcmVhIFBvcnR1Z2FsLCBTcGFuaWVuLCBJdGFsaWVuIGF1cyBkZXIgV00gZ2V3b3JmZW4gaGF0LgpBYmVyIHdhciBkYXMgd2lya2xpY2ggU3VlZGtvcmVhPyBLYW5uIGRpZXNlIE1hbm5zY2hhZnQgd2lya2xpY2ggYWxsZWluZQpkcmVpIHNvICdncm9zc2UnIE1hbm5zY2hhZnRlbiBhdXMgZGVtIFJlbm5lbiB3ZXJmZW4/IEVpZ2VudGxpY2ggZWhlcgp1bndhaHJzY2hlaW5saWNoLCBvZGVyPyBVbmQgZGFzIGJyaW5ndCB1bnMgenVtIG5hZWNoc3RlbiBHZWRhbmtlbi4KRGFzIHdhciBnYXIgbmljaHQgU3VlZGtvcmVhLiBTb25kZXJuIEhvbGxhbmQhIEhvbGxhbmQgc3BpZWx0IGRvY2ggbWl0LiBVbmQKendhciB2ZXJrbGVpZGV0IGFscyBTdWVka29yZWFuZXIuIERhcyBpc3QgZGllIEVya2xhZXJ1bmcuIERpZSBoYWJlbiBlaW5mYWNoCmRpZSBnZXNhbXRlIE5hdGlvbmFsbWFubnNjaGFmdCBnZWthdWZ0LiBVbmQgZGVzd2VnZW4gYXVjaCBkaWUKc2NobWFsZW4gQXVnZW46IERpZSBNYXNrZW4gZGVyIEhvbGxhZW5kZXIgc2l0emVuIG5pY2h0IHJpY2h0aWcsIHdlaWwgc2llIGVpbmUKTnVtbWVyIHp1IGtsZWluIGJlc3RlbGx0IHd1cmRlbi4gOy0pCgpPa2F5LiBTbyB2aWVsIHp1IGRlbSBUaGVtYSwgd2FzIGVpbmVtIGFsbGVzIGJlaSBzdGFya2VyIEhpdHplIHNvIGR1cmNoCmRlbiBLb3BmIGdlaHQuCgpHcnVzcwpWaW5jZW50CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVzc2JhbGwtV00gdW5kIFN1ZWRrb3JlYSAoSmFkYXdpbiwgMjQuIEp1biAyMDAyLCAxMzo0ODowOCk6Cn4jISBybj1WaW5jZW50IHJ0PTEwMjQ5MTkwNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0OTE5MDY3Cjp3aWxsIHVuYmVkaW5ndCBhdWNoIHdhcyB2b24gZGVtIFN0b2ZmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGdXNzYmFsbC1XTSB1bmQgU3VlZGtvcmVhIChWYXJsYXJpb24sIDI0LiBKdW4gMjAwMiwgMTM6NTE6MDMpOgp+IyEgcm49SmFkYXdpbiBydD0xMDI0OTE5Mjg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDkxOTA2NwpEYW5uIGZhaHIgbmFjaCBIb2xsYW5kIHVuZCBrYXVmIGRpciB3ZWxjaGVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGdXNzYmFsbC1XTSB1bmQgU3VlZGtvcmVhIChEZWVwYmx1ZSwgMjQuIEp1biAyMDAyLCAxMzo1MTozMyk6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTAyNDkxOTQ2MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQ5MTkwNjcKSWNoIHZlcm11dGUsIGRhenUgbXVzcyBlciBuYWNoIEtvcmVhIGZhaHJlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRnVzc2JhbGwtV00gdW5kIFN1ZWRrb3JlYSAoSmFkYXdpbiwgMjQuIEp1biAyMDAyLCAxMzo1MTo0OCk6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTAyNDkxOTQ2MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQ5MTkwNjcKRGEgbXVlc3N0IGljaCBhYmVyIGVyc3RtYWwgd2lzc2VuLCB3YXMgVmluY2VudCBpbnR1cyBoYXR0LCBhbHMgaWhtIGRpZXNlClRoZW9yaWUgZWluZmllbC4KSmFkKgpKYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVzc2JhbGwtV00gdW5kIFN1ZWRrb3JlYSAoQmFtYnVsa28sIDI0LiBKdW4gMjAwMiwgMTc6MDM6MjMpOgp+IyEgcm49VmluY2VudCBydD0xMDI0OTE5MDY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDkxOTA2NwpLYW5uIG5pY2h0IHNlaW4uIFdlbm4gZGFzIEhvbGxhbmQgd2FlcmUsIHdhcmVuIHNpZSBzY2hvbiBpbiBkZXIgVm9ycnVuZGUKYXVzZ2VzY2hpZWRlbi4gOi0pCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzAwNTM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJvaW5nLCAyNC4gSnVuIDIwMDIsIDE4OjA0OjA3KToKfiMhIG9uPUphZGF3aW4gb3Q9MTAyNDkzNDU3NSBvZz1kLnNjaGF0dGVud2VsdAp+IyEgcm49RWxiZXJldCBydD0xMDI0OTM0NTIwIHJnPW1lZ2FzY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJc3QgamEgZG9vZi4KSmFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzAwNTQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJvaW5nLCAyNC4gSnVuIDIwMDIsIDE4OjA0OjA4KToKfiMhIG9uPUphbWVzb24gb3Q9MTAyNDkzNDYxMyBvZz1kLnNjaGF0dGVud2VsdAp+IyEgcm49SmFkYXdpbiBydD0xMDI0OTM0NTc1IHJnPWQuc2NoYXR0ZW53ZWx0Cn4jISB0aWQ9OTgyMzI4Mjc4CmZpbmQgaWNoIGtvbWlzY2ggLSBQZXJkaXRhIGhhdCBkYXMgZ2xlaWNoZSBQcm9ibGVtLiBJY2ggbWVpbmUgbmljaHQgZWluZSBkZXIKQW5nZWJvdHNzZWl0ZW4sIHNvbmRlcm4gZGllIEJlZ3J1ZXNzdW5nc3NlaXRlLiBCZWkgZWluaWdlbiBzY2hlaW50IGRpZQpBbmdlYm90c3NlaXRlIHp1IGtvbW1lbi4uLiBoaWVyIGZ1bmt0aW9uaWVydCBkaWUgVGl0ZWxzZWl0ZSEgS29lbm50IGlociBtaXQKIkhvbWUiIChvYmVuKSBkYSBoaW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDA1NTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQm9pbmcsIDI0LiBKdW4gMjAwMiwgMTg6MDc6MzYpOgp+IyEgb249UGVyZGl0YSBvdD0xMDI0OTM0NzUwIG9nPWQuc2NoYXR0ZW53ZWx0Cn4jISBybj1KYW1lc29uIHJ0PTEwMjQ5MzQ2MTMgcmc9ZC5zY2hhdHRlbndlbHQKfiMhIHRpZD05ODIzMjgyNzgKaWNoIHNvbGwgbWFsIHJlcGx5ZW4sIGRhbWl0IGphbWVzb24gd2llZGVyIHJlaGVuIGthbm4uIEhpZXIgYml0dGUgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDA1NjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQm9pbmcsIDI0LiBKdW4gMjAwMiwgMTg6MDc6MzcpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwMjQ5MzQ4MzIgb2c9ZC5zY2hhdHRlbndlbHQKfiMhIHJuPVBlcmRpdGEgcnQ9MTAyNDkzNDc1MCByZz1kLnNjaGF0dGVud2VsdAp+IyEgdGlkPTk4MjMyODI3OApXdWVyZGV0IGlociBtaWNoIGJpdHRlIGZyYWdlbiBiZXZvciBpaHIgbWVpbmUga3VlbmZ0aWdlIFJlZ2lvbnNydWJyaWsKdm9sbG11ZWxsdD8gVmllbGVuZGFuay4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzAwNTc6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJvaW5nLCAyNC4gSnVuIDIwMDIsIDE4OjA3OjUyKToKfiMhIG9uPUphZGF3aW4gb3Q9MTAyNDkzNDg2NCBvZz1kLnNjaGF0dGVud2VsdAp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjQ5MzQ4MzIgcmc9ZC5zY2hhdHRlbndlbHQKfiMhIHRpZD05ODIzMjgyNzgKJ1RzY2h1bGRpZ2UuCkphZCogKHplcmtuaXJzY2h0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzAwNTg6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEphbWVzb24sIDI0LiBKdW4gMjAwMiwgMTg6MDg6MTYpOgp+IyEgcm49Qm9pbmcgcnQ9MTAyNDkzNDg3MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApEZXMgUmFldHNlbHMgTG9lc3VuZyBzY2hlaW50IHp1IHNlaW4sIGRhc3MgZGllIFNlaXRlbiB3b2hsIGdlcmFkZSBhdWYgZGFzIG5ldWUKQW5nZWJvdCBha3R1YWxpc2llcnQgd29yZGVuIHNpbmQuIEljaCBoYXR0ZSBkaWUgU2VpdGUgdm9yIGV0d2EgZWluZXIgaGFsYmVuClN0dW5kZSBnZWxhZGVuLCBkYSB3YXIgbm9jaCBlaW4gcmljaHRpZyBrbnVmZmlnZXIgUjJEMi1hZWhubGljaGVyCk5hc3MtU3RhdWJzYXVnZXIgZHJhdWYuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVzc2JhbGwtV00gdW5kIFN1ZWRrb3JlYSAoQW5vcmlzLCAyNC4gSnVuIDIwMDIsIDIwOjE1OjI4KToKfiMhIHJuPVZpbmNlbnQgcnQ9MTAyNDkxOTA2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQ5MTkwNjcKSWhyIHdlcmRldCBhbHNvIGdlZ2VuIEhvbGxhbmQgdmVybGllcmVuPwoKLSBBbm9yaXMgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hbWVuIG1pdCBMLi4uIChMaWFyYSwgMjQuIEp1biAyMDAyLCAyMjozODozOSk6CgpYeHh4eHggdGVpbHQgRGlyIG1pdDogaGV5IGR1IGJpc2NoIGRvY2ggZGllIHNjaHdlc3RlciB2b24gZHIgbGlyYW5hIGdlbGwKClpaTCwgdmVyendlaWZlbHQgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmFtZW4gbWl0IEwuLi4gKFBhcmRhdXosIDI0LiBKdW4gMjAwMiwgMjM6MDU6MzcpOgp+IyEgcm49TGlhcmEgcnQ9MTAyNDk1MTExOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjQ5NTExMTkKTGlyYW5hLCBMaWFyYSwgTGFyaW5hLCBMYXJhbmlzLCBMYXJpbmFyaXMsIC4uLgppcyBkb2NoIGVoIGFsbGVzIGRhcyBnbGVpY2hlIDoqKQoKUGFyZGF1eiwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmFtZW4gbWl0IEwuLi4gKEdyaW1tYm9ybiwgMjQuIEp1biAyMDAyLCAyMzowNjozNyk6Cn4jISBybj1QYXJkYXV6IHJ0PTEwMjQ5NTI3Mzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0OTUxMTE5CkFjaCB3YXMsIGFsbGVzIExhcmlmYXJpLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOYW1lbiBtaXQgTC4uLiAoTW9udGFudXMsIDI0LiBKdW4gMjAwMiwgMjM6MDk6MjEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjQ5NTI3OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0OTUxMTE5CmZpbmdlciBsYXJpZmFyaQpIbW0uLi4gZGllc2VuIE5hbWVuIGdpYnQgZXMgaW4gTW9yZ2VuZ3JhdWVuIG5pY2h0LgoKR2RBLCBzaWUgc2luZCByYXVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmFtZW4gbWl0IEwuLi4gKEdyaW1tYm9ybiwgMjQuIEp1biAyMDAyLCAyMzoxMDoyOSk6Cn4jISBybj1Nb250YW51cyBydD0xMDI0OTUyOTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDk1MTExOQpXaWVzbyBkZW5uPyBEZXIgTmFtZSBmaW5nIG1pdCAiTCIgYW4sIGRhcyBzZWhlIGljaCBuaWNodCBlaW4uIEd1dCwgaWNoIGhhYgpub2NoIGVpbmVuOiBMaWxsZWxhbGxlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOYW1lbiBtaXQgTC4uLiAoSHVtbmksIDI0LiBKdW4gMjAwMiwgMjM6MTE6MDMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjQ5NTMwMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0OTUxMTE5CkdkQSwgZGFzIGhlaXNzdCAsLFdpZXNvIERBUyBkZW5uJycuIE5pY2h0IHdpZXNvIGRlbm4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTmFtZW4gbWl0IEwuLi4gKEdyaW1tYm9ybiwgMjQuIEp1biAyMDAyLCAyMzoxMzowMyk6Cn4jISBybj1IdW1uaSBydD0xMDI0OTUzMDYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDk1MTExOQpHbmEuIEljaCBiaW4gYWJnZWxlbmt0OiBFc3RoZXIgU2Nod2VpbnMgaW0gRmVybnNlaGVuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE5hbWVuIG1pdCBMLi4uIChDdWNodWxsaW4sIDI0LiBKdW4gMjAwMiwgMjM6MTM6NTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjQ5NTMxODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0OTUxMTE5CldhcyB3YXIgZWlnZW50bGljaCBkYXMgRW5kJyB2b20gTGllZD8gSGF0IExpYXJhIGdlc2FndCwgZGFzcyBzaWUgZGllClNjaHdlc3RlciB2b24gTGFyaW5hIGlzdCwgTGlyYW5hIG1pdCBKb2YgdmVyaGVpcmF0ZXQgaXN0IHVuZCBMYXJpc3NhCmluIEJvbm4gd29obnQ/IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTmFtZW4gbWl0IEwuLi4gKE1vbnRhbnVzLCAyNC4gSnVuIDIwMDIsIDIzOjEzOjU3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI0OTUzMTgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNDk1MTExOQpMZXN0aGVyIFNjaHdlaW5zPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzAwNTk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1hbmRyYWdvbiwgMjQuIEp1biAyMDAyLCAyMzoyMDozOCk6Cn4jISBybj1KYW1lc29uIHJ0PTEwMjQ5MzQ4OTYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKTWFsIHdpZWRlciB3YXMgYWt0dWVsbGVzOgoKCkRpZXMgaXN0IGVpbiBmb2VybWxpY2hlciBBdWZydWYgYW4gSHVtbmksIGltIFdldHRidWVybyB3ZXR0ZW4genUgbGFzc2VuLCBvYgpkaWUgVm9yc2NobGFlZ2UgZGVyIEhhcnR6LUtvbW1pc3Npb24gdHJvdHogc2NoZWluYmFyIHBvc2l0aXZlciBSZWFrdGlvbiBuYWNoCkxvYmJ5YXJiZWl0IGluIGRlciBTY2h1YmxhZGUgdmVyc2Nod2luZGVuIC0gd2llIHouQi4gYXVjaCBkZXIgS2FybHNydWhlcgpFbnR3dXJmIC4uLi4uLiAKCjEwMDAwMDAgTXVlbnplbiBhdWYgZGllIE5pY2h0LUdlc2V0endlcmR1bmcuCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwMDYwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMjQuIEp1biAyMDAyLCAyMzoyNDo0NCk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTAyNDk1MzYzOCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAppY2gga2Fubiwgc2FnZW4gd2lyIG1hbCAyNTAwIE11ZW56ZW4gZGFnZWdlbnNldHplbi4gTmUgYmVzc2VyZSBRdW90ZSB3aXJzdGUKbnVyIHZvbiBuZW0gTWFnaWVyIGJla29tbWVuLCB1bmQgZGFzIGlzdCBkYW5uIFNwaWVsZXJoaWxmZS4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBOYW1lbiBtaXQgTC4uLiAoTW9udGFudXMsIDI0LiBKdW4gMjAwMiwgMjM6NDA6MjYpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMjQ5NTMyMzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI0OTUxMTE5CkdlcmFkIGlzdCBlaW5lICJMYXJpc2llbGxlIiBlaW5nZWxvZ2d0LCBkaWUgYW5zY2hlaW5lbmQgbm9jaCBzbyBuZXUgaXN0LCBkYXNzCnNpZSBub2NoIGZyYWd0LCB3byBkZW5uIFRhcmFtaXMgbGllZ2UuCldvIGRvY2ggZGFzIGluendpc2NoZW4gamVkZXIgd2Vpc3MsIGRhc3MgZGFzIG51ciBlaW5lIE1hZXIgdm9uIFNJbHZhbmEgaXN0IHVuZApzZWl0IDUgSmFocmVuICJ6dTkzJSBmZXJ0aWciIGlzdC4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2Nob2VuZXIgRnVzc2JhbGxhcnRpa2VsIChDdWNodWxsaW4sIDI1LiBKdW4gMjAwMiwgMTg6NTg6MDUpOgp+IyEgcm49QmlyZHkgcnQ9MTAyNTAyMjEyMyByZz13d3cKfiMhIHRpZD0xMDI1MDIyMTIzCkRhcyBzaW5kIGFsc28gZGllIFJlc291cmNlbiBkZXJlciwgZGllIGZyYWdlbiwgb2IgZXMgYmVpIFdNLUhhbGJmaW5hbGVuClJ1ZWNrcnVuZGVuc3BpZWxlIGdpYnQuLi4gKnNtaXJrKiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2Nob2VuZXIgRnVzc2JhbGxhcnRpa2VsIChCaXJkeSwgMjUuIEp1biAyMDAyLCAxOTowODoxMSk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAyNTAyNDI4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjUwMjIxMjMKZGFzIHNpbmQgYWxzbyBkaWUga29tbWVudGFyZSBkZXJlciwgZGllIG5pY2h0IHdpc3Nlbiwgd29ydW0gZXMgZ2luZyAqZyoKaGFzdCBkdSB3YXMgZ2VnZW4gZGVuIHN0ZXJuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2Nob2VuZXIgRnVzc2JhbGxhcnRpa2VsIChHcmltbWJvcm4sIDI1LiBKdW4gMjAwMiwgMTk6MDk6NDQpOgp+IyEgcm49QmlyZHkgcnQ9MTAyNTAyNDg5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjUwMjIxMjMKV2Vzd2VnZW4gc29sbHRlIG1hbiB3YXMgZ2VnZW4gZGVuIFN0ZXJuIGhhYmVuPyBEZXIgaGF0IHNpY2ggZG9jaCBzZWxic3QgYWxsZXIKUmVsZXZhbnogYmVyYXVidCB1bmQgcmFuZ2llcnQgaXJnZW5kd28gendpc2NoZW4gZGVtIElzZXJsb2huZXIgSGF1c2hhbHRzYm90ZW4KdW5kIGRlbiBFcmxhbmdlciBOYWNocmljaHRlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2Nob2VuZXIgRnVzc2JhbGxhcnRpa2VsIChCYW1iaSwgMjUuIEp1biAyMDAyLCAxOTo0ODozMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNTAyNDk4NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjUwMjIxMjMKTml4IGdlZ2VuIGRlbiBIYXVzaGFsdHNib3RlbiEgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFNjaG9lbmVyIEZ1c3NiYWxsYXJ0aWtlbCAoQW50aGVhLCAyNi4gSnVuIDIwMDIsIDExOjIzOjM0KToKfiMhIHJuPUJhbWJpIHJ0PTEwMjUwMjczMTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI1MDIyMTIzCkhtLi4uIGljaCBrZW5uIGRlbiBIYXVzaGFsdHNib3RlbiBuaWNodC4gTWVpbnRlc3QgRHUgZGllIEVOIGFscyBvYmVyZXMgb2Rlcgp1bnRlcmVzIExpbWl0PyBXZWlsLCB3ZW5uIER1IGVzIGFscyB1bnRlcmVzIExpbWl0IG1laW5zdCwga2FubnN0IER1IG1pdCBkZW4KIk5vcmRiYXlyaXNjaGVuIE5hY2hyaWNodGVuIiBub2NoIHRpZWZlciBnZWhlbiwgZGVubiBnZWdlbiBkaWUgSW5mb3MsIHdlbGNoZXIKQmF1ZXIgaGV1dGUgd2VsY2hlIEt1aCBtZWxrZW4gd2lsbCwgaXN0IGRlciBFcmxhbmdlciBSZWdpb25hbHRlaWwgbm9jaCByaWNodGlnCnNwYW5uZW5kIHVuZCBpbmZvcm1hdGl2LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU2Nob2VuZXIgRnVzc2JhbGxhcnRpa2VsIChCYW1iaSwgMjYuIEp1biAyMDAyLCAxMToyOTo1NSk6Cn4jISBybj1BbnRoZWEgcnQ9MTAyNTA4MzQxNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjUwMjIxMjMKRHUgd2lyc3QgbGFjaGVuLCBpY2gga2VubiBkZW4gSGF1c2hhbHRzYm90ZW4gYXVjaCBuaWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFNjaG9lbmVyIEZ1c3NiYWxsYXJ0aWtlbCAoR3JpbW1ib3JuLCAyNi4gSnVuIDIwMDIsIDEyOjExOjM1KToKfiMhIHJuPUJhbWJpIHJ0PTEwMjUwODM3OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI1MDIyMTIzCkRpZSBFTiB3YXJlbiBvYmVyZXMgTGltaXQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFNjaG9lbmVyIEZ1c3NiYWxsYXJ0aWtlbCAoQW50aGVhLCAyNi4gSnVuIDIwMDIsIDEyOjE2OjU0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI1MDg2Mjk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNTAyMjEyMwpEYW5uIF93aWxsXyBpY2ggZGFzIGFuZGVyZSBCbGFldHRjaGVuIGdhciBuaWNodCBrZW5uZW5sZXJuZW4uIERhcyBmYWVsbHQgZGFubgpqYSBpbiBkaWUgUnVicmlrIEdlZGFua2VuZm9sdGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVuZ2VyPyAoQmllbGVmZWxkLCAyNi4gSnVuIDIwMDIsIDE5OjQ5OjU5KToKVW5nZXNjaG5pdHRlbjoKCkRlaW5lIEZyZXVuZGluIE11ZWNrZSBzdHVlcnp0IHNpY2ggaW4gZGVyIEZlcm5lIGh1bmdyaWcgYXVmIGVpbmUgV2FmZmVsLgpLZWtzICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKR3V0LCBkYSB3YWVyIGljaCBhdWNoIGFiZ2VoYXVlbi4uLgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBKYWphLi4uIChHcmltbWJvcm4sIDI2LiBKdW4gMjAwMiwgMjE6MDY6MzUpOgp+IyEgcm49R29yIHJ0PTEwMjUxMTMzMTEgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDI0OTMxODI2Ck5lZSwgZGFzIGlzdCBqZXR6dCBlY2h0IG5pY2h0IHdhaHIsIGRhc3MgRHUgZGFzIG5pY2h0IHdlaXNzdCwgbmVpbj8gSWNoIG1laW5lLAppY2ggd2FyIGphICc1NCBhdWNoIG5vY2ggbmljaHQgZ2Vib3JlbiwgZGVubm9jaCB3ZWlzcyBpY2ggZ2VnZW4gd2VuIGRhcwpFbmRzcGllbCBkYW1hbHMgd2FyLiBLbGVpbmVyIFRpcDogJzc0IHdhcnMgZWluIGFuZGVyZXIgR2VnbmVyLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCZXdlaXM6IChab29rLCAyNy4gSnVuIDIwMDIsIDIyOjEzOjA2KToKICAgICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRG9uLCAyNy4gSnVuIDIwMDIsIDIyOjExOjU0ICgxNCBUZWlsbmVobWVyKSAgICAKCk5pYmVsLi4uLi4uLi4uLkoubSBHcmltbWJvcm4uLi4uLi5pd20gTWFyY3VzLi4uLi4uLi4uSi5tIEJhbWJ1bGtvLi4uLi4uLkouTQpBcm1pdGFnZS4uLi4uLi5pLk0gU2NobGVpY2hlci4uLi4uLi5NIFR3aW5naS4uLi4uLi4uLi4uTSBNaXJpbC4uLi4uLi4uLi5pLkgKQW1hcnlsbGlzLi4uLi4uSndSIFZhbmlvbi4uLi4uLi4uLkkuVyBDYXR3ZWF6bGUuLi4uLi5KLlcgS2lyay4uLi4uLi4uLi4uSi5XClRpbGx5Li4uLi4uLi4uLkouRSBab29rLi4uLi4uLi4uLi4uLkcKCgpEb2NoLCB3YXIgZXMhCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJld2VpczogKFRpbGx5LCAyNy4gSnVuIDIwMDIsIDIyOjE0OjIwKToKfiMhIHJuPVpvb2sgcnQ9MTAyNTIwODc4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjUyMDg3ODYKT29vcHMgPjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJld2VpczogKEdyaW1tYm9ybiwgMjcuIEp1biAyMDAyLCAyMjoxNToxOSk6Cn4jISBybj1UaWxseSBydD0xMDI1MjA4ODYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNTIwODc4NgpUamEsIG1pdCBFZGl0b3JlbiB1bWdlaGVuIHp1IGtvZW5uZW4gcmVudGllcnQgc2ljaCBoYWx0IGltbWVyIHdpZWRlci4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGFzIG1vb3cgKFBpdGZhbGwsIDI5LiBKdW4gMjAwMiwgMjA6NDM6NDMpOgpEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBUIE8gRSBUIEUgTiAsIFQgTyBFIFQgRSBOICwgVCBPIEUgVCBFIE4gIQpbVGVhbSBPY2h1dHpraWFuOl0gQnJvdG5hZWwtPjIKCgprbGVyaWtlci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmEgc293YXMgYWJlciBhdWNoIChNaXJpbCwgMjkuIEp1biAyMDAyLCAyMDo0Njo1NSk6CkJyb3RuYWVsIGFuIGFsbGUgTWFnaWVyOiB3ZXIgcmVzZXRldCBtYWwgZGVuIHNjaHdlaW5laHVuZCwgd2lyIHZlcnJhdGVuIGVzCkJyb3RuYWVsIGFuIGFsbGUgTWFnaWVyOiBhdWNoIG5pZW1hbmRlbQpbTW9lcmRlcjpHZWlzdCBlaW5lcyByaWVzaWdlbiBTY2h3ZWluZWh1bmRzXSBJY2ggZ2VoIGphIHNjaG9uLCBQaXRmYWxsLgpbTW9lcmRlcjpQaXRmYWxsXSBibGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnd1cnN0IC4pIChQaXRmYWxsLCAyOS4gSnVuIDIwMDIsIDIwOjQ3OjU1KToKQmlyZHkgdGVpbHQgRGlyIG1pdDogd2VyIGlzbiBvb2NodXR6a2lhbj8gWzIwOjQ3XQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2NoaWxkZXIgKEJpcmR5LCAzMC4gSnVuIDIwMDIsIDAwOjUxOjA5KToKRWluIFNjaGlsZCBzYWd0OiBMaWVzIG1pY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd3Vyc3QgLikgKEJhbWJpLCAzMC4gSnVuIDIwMDIsIDE4OjQ3OjEzKToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAyNTM3NjQ3NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjUzNzY0NzUKSWNoIHd1ZXJkIGphIGdlcm4gbmVuIEZsYW1ld2FyIGFuZmFuZ2VuLCB3YXMgbWFuIHdpc3NlbiBtdXNzIHVuZCB3YXMgbmljaHQgdW5kCmlud2lld2VpdCBkYXMgd2FzIG1pdCBEaXIgenUgdHVuIGhhdCwgYWJlciBkYSBEdSBlcyBuaWNodCBlaW5tYWwgZnVlcgpub3R3ZW5kaWcgZXJhY2h0ZXN0LCBpaG0gKGJ6dywgdW5zKSBkaWUgQW50d29ydCB6dSBsaWVmZXJuLCB3YWdlIGljaCBlaW5mYWNoCm1hbCBkaWUgVGhlc2UsIGRhc3MgRHUgc2VsYnN0IG51ciBkZXNoYWxiIHdlaXNzdCwgd28gZXIgaXN0LCB3ZWlsIER1IGVpbgpXZWdlc2NyaXB0IGRhaGluIGJla29tbWVuIG9kZXIgcGVyIHRlYW0gZm9sZ2UgZG9ydCBhbmdlbGFuZGV0IGJpc3QuCi4uLiBJY2ggd2Vpc3MsIGRhcyB3YXIgZWluIGdlbWVpbmVyIFRpZWZzY2hsYWcsIGFiZXIgaWNoIGhhZXR0IGF1Y2ggZ2VybiBuZQpBbnR3b3J0IGdlaGFidC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogd3Vyc3QgLikgKE11cGZlbCwgMzAuIEp1biAyMDAyLCAxOToyNzo1MCk6Cn4jISBybj1CYW1iaSBydD0xMDI1NDU1NjMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNTM3NjQ3NQpCb2FoLCBCYW1iaSwgZGFzIGR1IHp1IFNPV0FTIGZhZWhpZyBiaXN0LCBhbHNvIG5lZSwgZGFzIGhhZXR0IGljaCBqZXR6dCBhYmVyCndpcmtsaWNoIG5pY2h0IHZvbiBEaXIgZ2VkYWNodCwgZGllc2UgVGllZnNjaGxhZWdlLi4uIHRzIQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogd3Vyc3QgLikgKEVsZGFyb24sIDMwLiBKdW4gMjAwMiwgMTk6Mjk6MzQpOgp+IyEgcm49QmFtYmkgcnQ9MTAyNTQ1NTYzMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjUzNzY0NzUKU29ycnkgQmFtYmksIGFiZXIgZHUgc2NoZWluc3QgYXVmIGRlbSBmYWxzY2hlbiBEYW1wZmVyIHp1IHNpdHplbiwgaGllciBnaW5nIGVzCmtlaW5lc3dlZ3MgdW0gZGllIE9lcnRsaWNoa2VpdCBkZXMgYmVzYWd0ZW4gTlBDcywgc29uZGVybiB2aWVsIG1laHIgZGFydW0KJ3dlcicgZXIgc2VpLiBXaWUgZHUgc28gc2Nob2VuIHNhZ3Rlc3QsIHd1ZXJkZXN0IGR1IGVpbmVuIEZsYW1ld2FyIGFuZmFuZ2VuLApkb2NoIGR1IHVlYmVybGFlc3N0IGVzIGRlbSBnZW5laWd0ZW4gTGVzZXIsIHdhcnVtIGR1IGVzIG5pY2h0IHR1c3QuIExpZWd0IGVzCmFtIG1hbmdlbGRlbiBWZXJtb2VnZW4sIG9kZXIgZG9jaCB2aWVsIGVoZXIgZGFyYW4sIGRhc3MgZGlyIGtsZWluZQpwZXJzb2VubGljaGUgQmVsZWlkdW5nZW4gKGFrYSBTY2hsYW1tc2NobGFjaHQpIHdlaXQgYmVzc2VyIGJlaGFnZW4/IEljaCBrYW5uCih1bmQgd2lsbCBlcyBlaWdlbnRsaWNoIGF1Y2ggbmljaHQpIG5hY2h2b2xsemllaGVuLCB3YXMgZHUgbWl0IGRpZXNlbSBkZWluaWdlbgpBcnRpa2VsIGludGVuZGllcnN0OyBzb2Zlcm4gZGlyIHdpcmtsaWNoIG51ciBhbiBlaW5lciBBbnR3b3J0IGF1ZiBkaWUKZ2VzdGVsbHRlIEZyYWdlIGdlbGVnZW4gaXN0LCBzdGVoZW4gZGlyIHdvaGwgd2VpdCBiZXNzZXJlIE1ldGhvZGVuIHp1cgpWZXJmdWVndW5nIGRlcmFydGlnZSBJbmZvcm1hdGlvbmVuIHVlYmVyIGViZW4gZGllc2VuIHp1IGJlc2NoYWZmZW4uIERpZQpLYXVzYWxpdGFldCB6d2lzY2hlbiBkZXIgRnJhZ2UgbmFjaCBkZW0gJ3dlcicgdW5kIGRlciBEaXNrdXNzaW9uIHVtIFdlZ2VzY3JpcHQKdnMuIEF1dG9mb2xnZSBlbnR6aWVodCBzaWNoIG1laW5lbSBIb2JiaXRob3Jpem9udC4KU28gdW5kIHdlaXRlciBnZWh0J3MgbWl0IGRlbiBUaWVmc2NobGFlZ2VuIDstPgoKRWxkYXJvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogd3Vyc3QgLikgKEdyaW1tYm9ybiwgMzAuIEp1biAyMDAyLCAxOTo0OTozOCk6Cn4jISBybj1QaXRmYWxsIHJ0PTEwMjU0NTg4NjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI1Mzc2NDc1CkhtbXBmLiBJY2ggZ2xhdWJlIGpldHp0IGRhc3Mgc29sY2hlIFdlZ2UgaGllciBpbiBkZXIgbXBhIG5pY2h0IGVyd3VlbnNjaHQKc2luZC4gSWNoIHNjaGllYiBkYXMgbWFsIGluIGVpbmUgTWFnaWVycnVicmlrLCB1bmQgd2VubiBkb3J0IGplbWFuZCBmaW5kZXQKZGFzcyBkYXMgZG9jaCBpbiBTcGllbGVycnVicmlrZW4gZ2Vob2VydCBrYW5uIGVycyBqYSB3aWVkZXIgenVydWVja3ZlcnNjaGllYmVuCi0gYWJlciBnZW5lcmVsbCBrYW5uIEJhbWJpIGRhcyBqYSBhdWNoIGRvcnQgbGVzZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogd3Vyc3QgLikgKFBpdGZhbGwsIDMwLiBKdW4gMjAwMiwgMTk6NTA6NDUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjU0NTkzNzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDI1Mzc2NDc1Cm9oLCB3YXIgZGFzIG1hZ2llcmhpbGZlPwoKKnBpdCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHd1cnN0IC4pIChFbGJlcmV0LCAzMC4gSnVuIDIwMDIsIDE5OjUxOjI2KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAyNTQ1OTQ0NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjUzNzY0NzUKaWNoIGdsYXViZSBpbiBkZW0gZmFsbGUgaXN0cyBlZ2FsLiBEZXIgV2VnIGlzdCBoaWVyIG5pY2h0IGRhcyBaaWVsIDspCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiB3dXJzdCAuKSAoR3JpbW1ib3JuLCAzMC4gSnVuIDIwMDIsIDE5OjUxOjI3KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAyNTQ1OTQ0NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjUzNzY0NzUKTmVpbiwga29sbGF0ZXJhbGUgU3BpZWxlcmhpbGZlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiB3dXJzdCAuKSAoRWxiZXJldCwgMzAuIEp1biAyMDAyLCAyMDo1NjoyMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNTQ1OTQ4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjUzNzY0NzUKQmFtYmkgYW50d29ydGUgZW5kbGljaCBtYWwsIG1laW4gRmJhbmQgaXN0IHNvbnN0IGdhbnogdHJhdXJpZyB1bmQgaWNoIG11c3MgbWlyCmRpZXNlcyBHZWphbW1lciBhbmhvZXJlbiA7KQoKVHUgd2FzIGZ1ZXIgbWVpbmUgTmVydmVuCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiB3dXJzdCAuKSAoQmFtYmksIDMwLiBKdW4gMjAwMiwgMjE6MjE6MTQpOgp+IyEgcm49RWxiZXJldCBydD0xMDI1NDYzMzgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNTM3NjQ3NQpGdWVyIEVsYmVyZXQuIC4uLgpXYXMgc29sbCBpY2ggZGVubiBhbnR3b3J0ZW4/CkF1ZiB3ZWxjaGUgRnJhZ2U/ClVuZCBoYWIgaWNoIHdhcyBnZXdvbm5lbiwgd2VpbCBpY2ggamV0enQgZG9jaCBuZSBTY2hsYW1tc2NobGFjaHQgaW4uLi4gaW5zLi4uCmludHUuLi4gYW5nZXpldHRlbHQgaGFiZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFNjaG5pdHRwdW5rdCBnZXN1Y2h0IChab29rLCAgMi4gSnVsIDIwMDIsIDE0OjAwOjI4KToKfiMhIG9uPVpvb2sgb3Q9MTAyNTYxMTIyMCBvZz1wdWl6Cn4jISBybj1Cb2luZyBydD0xMDI1NjEwMTUwIHJnPXB1aXoKfiMhIHRpZD0xMDI1NjA2NjE1CipQcnV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1c3QqCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBhcnR5IEhhbGxlIChHcmltbWJvcm4sICAyLiBKdWwgMjAwMiwgMTQ6NDU6NDApOgp+IyEgcm49Q2Fzc2FuZHJhIHJ0PTEwMjU2MTM4MDMgcmc9cGFydHkKfiMhIHRpZD0xMDI1NjEzODAzClNjaGxhZmZ6aW1tZXIgLSBqZXR6dCB3aXJkIG1pciBlaW5pZ2VzIGtsYXIuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEludGVsbGlnZW50ZSBLYW1wZiBOUENzIChHcmltbWJvcm4sICAyLiBKdWwgMjAwMiwgMTY6NDM6MzQpOgp+IyEgcm49QXJrIHJ0PTEwMjU2MjA2ODMgcmc9cGFydHkKfiMhIHRpZD0xMDI1NjIwNjgzCkthZW1wZmUgb2huZSBzY3JvbGxlbiBzaW5kIHJlbGF0aXYgbGVpY2h0IHp1IGVycmVpY2hlbjogSW4gZGVyIFZlcnRlaWRpZ3VuZwpkZXMgTlBDIGVpbmZhY2ggZGVuIEdlZ25lciBkaXJla3QgdG9ldGVuIChoYWgsIHVuZCBnYW56IG9obmUgTWFnaWVyc3ByYWNoZSEpLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEludGVsbGlnZW50ZSBLYW1wZiBOUENzIChBcmssICAyLiBKdWwgMjAwMiwgMTY6NTA6MDEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjU2MjEwMTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI1NjIwNjgzCkhtLCBoYWJpY2ggc2Nob25tYWwgZ2VtYWNodCwga2FtIGVpZ2VudGxpY2ggZ3V0IGFuIDotKQpXZWl0ZXJlIFZvcnNjaGxhZWdlPwoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEludGVsbGlnZW50ZSBLYW1wZiBOUENzIChab29rLCAgMi4gSnVsIDIwMDIsIDE2OjUwOjQ2KToKfiMhIHJuPUFyayBydD0xMDI1NjIxNDAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNTYyMDY4MwpJY2ggZXJpbm5lcmUgbWljaC4gRXMgZ2FiIEZhbi1GYWVobmNoZW4sIEZhbi1QcmVzYXlzIGV0Yy4uLiAKClNwaWVscyBub2NobWFsLCBBcmshCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSW50ZWxsaWdlbnRlIEthbXBmIE5QQ3MgKEFyaywgIDIuIEp1bCAyMDAyLCAxNzowOToxMyk6Cn4jISBybj1ab29rIHJ0PTEwMjU2MjE0NDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI1NjIwNjgzCkRpZSBndXRlIGFsdGUgWmVpdCwgd28gaXN0IHNpZSBnZWJsaWViZW4/IEljaCB3ZXJkZSBlYmVuIHdlaWNoLiBNZWluZSBhbHRlbgpLbm9jaGVuIGVydHJhZ2VuIGRhcyBuaWNodCBtZWhyOgpUWi0+RGVmZW5kKDUwMCpUWi0+UXVlcnlBdHRyaWJ1dGUoQV9IRVVMKSwgRFRfSkFNTUVSLAooW1NQX1NIT1dfREFNQUdFX1RPX1dFSU5FUkxFOjFdKSwgdGhpc19oYXJtbG9zZV9tb25zdGVyKCkpOwpUWiA9IHRoaXNfemF1YmVyZXIoKQpEYSB3aXJkIGVpbiB6dSBob2hlciBXZXJ0IHp1cnVlY2tnZWdlYmVuLCBkZXNoYWxiIGhhYiBpY2ggZGFzIGdlbGFzc2VuIDopCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWx0ZSBtYWdpZXIuLi4gKFBpdGZhbGwsICAzLiBKdWwgMjAwMiwgMjM6Mjg6MjEpOgpIaXJ1ZG8gdGVpbHQgRGlyIG1pdDogaWNoIGhhYiBkaWUgbWVsZHVuZ2VuIG51ciBmdWVyIGZha2V6YXBzIGdlc2V0enQgLi4uIGhhYgpIaXJ1ZG8gdGVpbHQgRGlyIG1pdDogaWNoIGhhbHQgbGFuZ2UgbmltbWVyIGdlbWFjaHQgCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKJ0FsdCdzZWhlciA7LSkgKExpYXJhLCAgNC4gSnVsIDIwMDIsIDIwOjE3OjExKToKWHh4eHh4eHggc2FndDogb2hhClh4eHh4eHh4IHNhZ3Q6IG1laHIgdGFnZSB2ZXJoZWlyYXRldCBhbHMgS2lsbHMKClh4eHh4eHh4IHNhZ3Q6IGljaCBtdXNzIGluIFJlbnRlIGdlaG4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEludGVsbGlnZW50ZSBLYW1wZiBOUENzIChHb3IsICA1LiBKdWwgMjAwMiwgMTI6MTU6NDYpOgp+IyEgcm49QXJrIHJ0PTEwMjU2MjI1NTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI1NjIwNjgzCldlbm4gZGFzIHdpZWRlciBidWd0IGJlc2Nod2VyIGRpY2ggamEgbmljaHQhISB9Oy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJc3QgQm9pbmcgd2llZGVyIEdvdHQ/IChBbnRoZWEsICA1LiBKdWwgMjAwMiwgMTM6NDY6MDYpOgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gQm9pbmcgaW4gUnVicmlrICJhbGxnZW1laW5lcyIuClBpdGZhbGwgZXJ3ZWNrdCBkZW4gRHJhY2hlbmdvdHQgZGVyIFNjaHJlY2tlbnNzcGl0emUuCkVpbHQgaGVyYmVpIHVuZCBoZWxmdCBpaG0uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogUmFuZmFobj8gKEJhbWJpLCAgNS4gSnVsIDIwMDIsIDE1OjM0OjQ0KToKfiMhIG9uPUJhbWJpIG90PTEwMjU4NzYwNzIgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDI1ODc2MDEwIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTAyNTg2ODkxNApoYWJ0IGlociBrZWluZSBCYXpvb2thIGhpbnRlciBkZW4gRnJvbnRzY2hlaW53ZXJmZXJuPyAuLi4gQWNoc28sIGlociByZWRldCB2b24KRmFocnJhZGZhaHJlcm4uIElociB6YWVobHQgZXVjaCBhbHNvIHp1bSBLYW5vbmVuZnV0dGVyLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaHVuZ2VyLi4uIGFoamEgKExlaWJuaXosICA2LiBKdWwgMjAwMiwgMTU6MDI6MTQpOgpGbGF1cm9zIHRlaWx0IERpciBtaXQ6IFdlaWwgZGFubiBnZWhlIGljaCBzY2huZWxsIGt1cnogd2FzIGVzc2VuIDopIApGbGF1cm9zIGhhdCBodW5nZXIgOikgYXVzIGRlciBGZXJuZS4KIFtNb2VyZGVyOkdlaXN0IGVpbmVzIEVpc2dpZ2FudGVuXSBNb3JnZW4gZnJ1ZWggdW0gaGFsYiBzZWNocyBpbiBkZXIgQXJlbmEsCiBbTW9lcmRlcjpHZWlzdCBlaW5lcyBFaXNnaWdhbnRlbl0gRmxhdXJvcyEgSWNoIGhhYiBkaWUgV2FobCBkZXIgV2FmZmVuLgoKYWxsZXMga2xhciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWhlbWFlbm5lciAuLi4gOy0pIChMaWFyYSwgIDYuIEp1bCAyMDAyLCAyMzozNDoyMSk6CkZpcmVoYXdrIHNjaGxpZXNzdCBlaW4gSGF1cyBhdWYuCkZpcmVoYXdrIG9lZmZuZXQgZWluIEhhdXMuCkZpcmVoYXdrIGtvbW10IGhlcmVpbi4KRmlyZWhhd2sgc2NobGllc3N0IGVpbiBIYXVzIGFiLgpEdSBrdXNjaGVsc3QgRGljaCBhbiBGaXJlaGF3ayBhbi4KRmlyZWhhd2sgc2FndDogTmFhYWFhYWFhYmVuZCA6KQpGaXJlaGF3ayBkcnVlY2t0IERpY2ggemFlcnRsaWNoIGFuIHNpY2guCkR1IHNhZ3N0OiB3aWUgZ2VodCBlcyB2b3Jhbj8KRmlyZWhhd2sgc2FndDogSGljayEKCk5lZSwgaXMga2xhLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhIGlzdCBuZSBNZW5nZSBmYXVsIChHcmltbWJvcm4sICA4LiBKdWwgMjAwMiwgMTk6MzE6MTIpOgp+IyEgb249TmVkaW1lIG90PTEwMjYxNDkwNTMgb2c9cHVpegpJY2ggZ2xhdWJlIG5pY2h0LCBkYXNzIGplbWFuZCBiZXN0cmVpdGV0IGRhc3MgZGEgd2FzIGZhdWwgaXN0LiBNYWwgZWluIHBhYXIKQmVpc3BpZWxlIGF1cyBkZW0gQWxsdGFnOgpFcyBnZWhlbiBpbW1lciBtZWhyIFNjaHVlbGVyIGF1ZiBHeW1uYXNpdW0sIGRpZSB3b2hsbW9lZ2xpY2ggYXVmIApkZXIgUmVhbHNjaHVsZSBlaW5lIHByaW1hIFNjaHVsbGF1ZmJhaG4gaGludGVyIHNpY2ggYnJpbmdlbiB3dWVyZGVuLAphbSBHeW1uYXNpdW0gYWJlciB1ZWJlcmZvcmRlcnQgc2luZC4KSW4gTlJXIGdpYnRzIGRpZXNlbiBuZXR0ZW4gRHJpdHRlbCBFcmxhc3MsIGRlciBiZXNhZ3QsIGRhc3MgZWluZSAKS2xhdXN1ciB3aWVkZXJob2x0IHdlcmRlbiBtdXNzIChvZGVyIHZvbSBTY2h1bGxlaXRlciBpbiBBdXNuYWhtZWZhZWxsZW4KZ2VuZWhtaWd0IHdlcmRlbiBtdXNzKSB3ZW5uIGVpbiBEcml0dGVsIG9kZXIgbWVociBkZXIgU2NodWVsZXIKc2NobGVjaHRlciBhbHMgYXVzcmVpY2hlbmQgYWJzY2huZWlkZW4uIApSZXN1bHRhdDogRXMgd2VyZGVuIFNjaHVlbGVyIHZlcnNldHp0LCBkaWUgZWlnbmV0bGljaCBkZW4gU3RvZmYKbmljaHQgaW4gZGVtIE1hc3NlIGJlaGVycnNjaGVuLCB3aWUgZXMgZnVlciBkaWUgbmFjaGZvbGdlbmRlIEtsYXNzZW5zdHVmZQpub3R3ZW5kaWcgd2FlcmUuIEZvbGdlOiBFcyBzYW1tZWxuIHNpY2ggTHVlY2tlbiBhbiwgZGllIG5pY2h0IG1hbAplYmVuIGR1cmNoIE5hY2hoaWxmZSB6dSBzdG9wZmVuIHNpbmQuIEZ1ZXIgYWxsZSBCZXRlaWxpZ3RlbiBlaW4KbWlzZXJhYmxlciBadXN0YW5kLiAKTmV1ZXJkaW5ncyAodHJvdHogUGlzYSB1bmQgQ28pIGlzdCBzb2dhciBhdWZncnVuZCBkZXMgYWt1dGVuIExlaHJlcm1hbmdlbHMKaW4gZWluaWdlbiBGYWVjaGVybiB3aWUgTWF0aGUsIFBoeXNpaywgSW5mb3JtYXRpayAuLi4gZ2VwbGFudCwgCmtvbnRyb2xsZQpOZXVlaW5zdGVsbHVuZ2VuIHVudGVyIGRlciBWZXJwZmxpY2h0dW5nIHZvcnp1bmVobWVuLCBkYXNzIGRpZSBQZXJzb24Ka29udHJvbGxlCnNpY2ggaW4gZWluZXIgOCBtb25hdGlnZW4gRm9ydGJpbGR1bmcgbWFsIGViZW4genVtIE1hdGhlbGVocmVyIAphdXNiaWxkZW4gbGFlc3N0LiBELmguIGRlbW5hZWNoc3Qgd2VyZGVuIHdpZWRlciBLdW5zdGxlaHJlciBldGMuIG1pdCBlaW4KYmlzc2NoZW4gQXVzYmlsZHVuZyBpbiBkZXIgU2VrIDEgdW50ZXJyaWNodGVuLgpiaXNzY2hlbiBBdXNiaWxkdW5nIGluIGRlciBTZWsgMSB1bnRlcnJpY2h0ZW4uCk1hbCBzY2hhdWVuIHdhcyBkaWUgbmFlY2hzdGVuIFBpc2FzdHVkaWVuIGJyaW5nZW4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGEgaXN0IG5lIE1lbmdlIGZhdWwgKEdyaW1tYm9ybiwgIDguIEp1bCAyMDAyLCAxOTozMToxMyk6Cn4jISBvbj1OZWRpbWUgb3Q9MTAyNjE0OTI2MiBvZz1wdWl6Cn4jISBybj1OZWRpbWUgcnQ9MTAyNjE0OTA1MyByZz1wdWl6Cn4jISB0aWQ9MTAyNjE0OTA1MwpCbG9lZGUgQ2hhb3NoYXV0IDstKSAKRGFzICJrb250cm9sbGUiIGltIEFydGlrZWwgZGF2b3Iga29lbm50IGlociBuZXR0ZXJ3ZWlzZSBpZ25vcmllcmVuLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEYSBpc3QgbmUgTWVuZ2UgZmF1bCAoR3JpbW1ib3JuLCAgOC4gSnVsIDIwMDIsIDE5OjMxOjQ2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI2MTQ5NDczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNjE0OTA1MwpJY2ggaGFiIGRhcyBtYWwgbmFjaCBzY2htYXJybiBnZWxlZ3QuIERhIHdhcmVuIHNvIGtvbWlzY2hlIFdvcnRlIHVuZApEb3BwZWx6ZWlsZW4gZHJpbi4gVW5kIG5hY2ggcHVpeiBnZWhvZXJ0cyBzY2hvbm1hbCBnYXIgbmljaHQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdyYXR1bGllcmUgTW9jayAoRWxpemFiZXRoLCAgOC4gSnVsIDIwMDIsIDIyOjMxOjQ2KToKRGVpbiBGcmV1bmQgTW9jayB0ZWlsdCBEaXIgbWl0OiBvZmZpemllbGw6IG1vY2sgaXN0IGRvb2YhCk9rLgpbR3JhdHM6TWFkbmVzc10gR3JhdHMhCltHcmF0czpPbGxpXSBncmF0cyEKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IExPTCEhCltHcmF0czpUaGFudGFsYXNdIEdyYXRzIQpbR3JhdHM6Q3JvZnRdIGdyYXRzIDotKQpbR3JhdHM6VHVmaGlyXSBkYW5rZQoKRWxpemFiZXRoLCBuaWNodHMgZGF6dSBzYWdlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTA5NjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTWFuZHJhZ29uLCAgOS4gSnVsIDIwMDIsIDE1OjUzOjIzKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyNjIyMjY4MSByZz1tZWdhc2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSGllciBnZWh0cyB3ZWl0ZXIgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTA5NzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSmFtZXNvbiwgIDkuIEp1bCAyMDAyLCAxNTo1NDoyMyk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTAyNjIyMjgwMyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp3aWV2aWVsIFBsYXR6IGlzdCBoaWVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzEwOTg6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1hbmRyYWdvbiwgIDkuIEp1bCAyMDAyLCAxNTo1Njo0Nyk6Cn4jISBybj1KYW1lc29uIHJ0PTEwMjYyMjI4NjMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKVGVzdCB0aGUgV2VzdCEKCkljaCBzZWhlIHdhcywgd2FzIElociBuaWNodCBzZWh0IHVuZCBkYXMgaXN0IHJvdCB1bmQgZmFlbmd0IG1pdCBHIGFuLgoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTA5OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSmFtZXNvbiwgIDkuIEp1bCAyMDAyLCAxNTo1NzowNyk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTAyNjIyMzAwNyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAptb21lbnQgZGFzIFJhZXRzZWwgdm9uIEJvaW5nIHdhciBkb2NoIG5vY2ggbmljaHQgZmVydGlnLCBvZGVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzExMDA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1hbmRyYWdvbiwgIDkuIEp1bCAyMDAyLCAxNTo1NzoxNSk6Cn4jISBybj1KYW1lc29uIHJ0PTEwMjYyMjMwMjcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKV2VsY2hlcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxMTAxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChKYW1lc29uLCAgOS4gSnVsIDIwMDIsIDE1OjU3OjM3KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDI2MjIzMDM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmxpZXMgZGllIGxldHp0ZW4gNCA1IEFydGlrZWwgaW4gbSogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxMTAyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChFbGJlcmV0LCAgOS4gSnVsIDIwMDIsIDE2OjExOjEyKToKfiMhIHJuPUphbWVzb24gcnQ9MTAyNjIyMzA1NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAp3aWUgbGF1dGV0IGRlbm4gZGFzIGFrdHVlbGxlIHJhZXRzZWw/CgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTEwMzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW50aGVhLCAgOS4gSnVsIDIwMDIsIDE2OjQzOjU2KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyNjIyMzg3MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApWb24gQm9pbmcsIFJlMzEwODk6CkVnYWwgLi4uIGljaCBoYWIgd2FzLCBlYmVuIGZyaXNjaCByZWluZ2Vrb21tZW46IEZhZW5ndCBtaXQgUiBhbiB1bmQKaXN0IGR1cmNoc2ljaHRpZy4KCkljaCBoYWIgZGllIEFudHdvcnQgYXVmIGRpZSBsZXR6dGUgRnJhZ2UgcmljaHRpZywgYmluIGljaCBqZXR6dCBkYW5uIGRyYW4/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTEwNDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSmFtZXNvbiwgIDkuIEp1bCAyMDAyLCAxNjo1OToyOCk6Cn4jISBybj1BbnRoZWEgcnQ9MTAyNjIyNTgzNiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApKZXR6dCBiaXN0IER1IGRyYW4hISEgKmZpZXNncmlucyoKSGF0dGVuIHdpciBuaWNodCBhdWNoIHNjaG9uIG1hbCBpbiBtdWVsbCBnZXNjaHJpZWJlbj8gYWJlciBkYSB3aXJkJ3MgbmljaHQgaW5zCkJhY2t1cCBnZXBhY2t0LCBvZGVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzExMDU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFudGhlYSwgIDkuIEp1bCAyMDAyLCAxNzowMTo1MCk6Cn4jISBybj1KYW1lc29uIHJ0PTEwMjYyMjY3Njggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKV2lyIGhhdHRlbiBhdWNoIHNjaG9uIG1hbCBkaWUgV29scGllcyBiZWxlZ3QuCkFiZXIgZGFzIER1cmNoc2ljaHRpZ2Ugdm9uIEJvaW5nIGtvZW5udGUgZWluIFN0cnVueiBzZWluLiBXaWUgRmxhc2NoZSBMZWVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzExMDY6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEphbWVzb24sICA5LiBKdWwgMjAwMiwgMTc6MjY6MDIpOgp+IyEgcm49QW50aGVhIHJ0PTEwMjYyMjY5MTAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKYWhhLi4uIGdlbmF1IHdpZSBpY2gncyBtaXIgZGFjaHRlLi4uIGluIE11ZW5zdGVyIGdlaHQncyBsb3MgbWl0IEdld2l0dGVyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTEwNzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoR3JpbW1ib3JuLCAgOS4gSnVsIDIwMDIsIDE3OjI3OjQ2KToKfiMhIHJuPUphbWVzb24gcnQ9MTAyNjIyODM2MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApIaWVyIGF1Y2guIEFiZXIgbm9jaCBkb25uZXJncm9sbHQgZXMgbnVyIC0gZGVyIFJlZ2VuIHdhcnRldCB3b2hsIG5vY2ggYmlzIGljaApGZWllcmFiZW5kIG1hY2hlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTEwODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSmFtZXNvbiwgIDkuIEp1bCAyMDAyLCAxNzoyODoxOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNjIyODQ2NiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJY2ggaGFiIHNjaG9uIGtlaW5lIENoYW5jZSBtZWhyLCB0cm9ja2VuIGhlaW16dWtvbW1lbi4gSG9mZmVudGxpY2ggaXN0IGVzIGJpcwpoYWxiIHNpZWJlbiBvZGVyIHNvIHZvcmJlaS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxMTA5OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgIDkuIEp1bCAyMDAyLCAxODozMDoxMyk6Cn4jISBybj1KYW1lc29uIHJ0PTEwMjYyMjg0OTggcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKRGFzIGR1cmNoc2ljaHRpZ2Ugdm9uIEJvaW5nIG1pdCBSIGlzdCBzaWNoZXIgZWluIFJlZ2Vuc2NoaXJtLCB1ZG4gZXMgZ3Jlbnp0IGFuCktvZXJwZXJ2ZXJsZXR6dW5nLCB3ZWlsIE11YWRpYiBmdWVyY2h0ZXQsIGRhcyBESW5nIHVlYmVyZ2VicmF0ZW4genUgYmVrb21tZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERhIGlzdCBuZSBNZW5nZSBmYXVsIChSb25kYSwgMTAuIEp1bCAyMDAyLCAwMToxMzo1MCk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjYxOTU2NDggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMjYxNDk0NzIKSG0gRWxiaS4gSmVwLiBFcyBnaWJ0IGRpZSBFaW5zdHVmdW5nICJCZWRpbmd0IGdlZWlnbmV0IGZ1ZXJzIEd5bW5hc2l1bS4iIEhhYgppY2ggZGFtYWxzIGJla29tbWVuLiBVbmQgZGVyIFRlc3QgaGF0dGUgdm9lbGxpZyBSZWNodC4gSWNoIHR1IG1pY2ggamV0enQgbWl0CmRlciBEaXNzZXJ0YXRpb24gZWluZmFjaCB2ZXJkYW1tdCBzY2h3ZXIuLi4KClJvbmRhICppbiBkZXIgcmljaHRpZ2VuIFJ1YnJpayoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERhIGlzdCBuZSBNZW5nZSBmYXVsIChab29rLCAxMC4gSnVsIDIwMDIsIDA5OjMwOjA2KToKfiMhIHJuPVJvbmRhIHJ0PTEwMjYyNTY0MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI2MTQ5NDcyCklzdCBkaWUgaW1tZXIgbm9jaCBuaWNodCBmZXJ0aWc/IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGEgaXN0IG5lIE1lbmdlIGZhdWwgKEVsYmVyZXQsIDEwLiBKdWwgMjAwMiwgMDk6MzE6MzMpOgp+IyEgcm49Wm9vayBydD0xMDI2Mjg2MjA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNjE0OTQ3MgpobW0sIG1laW5lIHppZWh0IHNpY2ggYXVjaCAuLi4uLgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRGEgaXN0IG5lIE1lbmdlIGZhdWwgKFpvb2ssIDEwLiBKdWwgMjAwMiwgMDk6MzE6NTcpOgp+IyEgcm49RWxiZXJldCBydD0xMDI2Mjg2MjkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNjE0OTQ3MgpTZWl0IHdhbm4/Cgpab29rLgoKUFM6IEtvZW5uZW4gd2lyIGluIG1lZ2FzY2htYXJybiB3ZWl0ZXJtYWNoZW4/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEYSBpc3QgbmUgTWVuZ2UgZmF1bCAoRWxiZXJldCwgMTAuIEp1bCAyMDAyLCAwOTozMzoxMyk6Cn4jISBybj1ab29rIHJ0PTEwMjYyODYzMTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI2MTQ5NDcyCnNlaXQgMi41IEphaHJlbgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRGEgaXN0IG5lIE1lbmdlIGZhdWwgKFpvb2ssIDEwLiBKdWwgMjAwMiwgMDk6MzU6MTQpOgp+IyEgcm49RWxiZXJldCBydD0xMDI2Mjg2MzkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNjE0OTQ3MgpPaCwgZGFzIGdlaHQgZG9jaCBub2NoLiA6LSkpCgpab29rIGVyc3Qgc2VpdCBlaW5lbSBKYWhyIGJhc3RlbG5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRGEgaXN0IG5lIE1lbmdlIGZhdWwgKEdyaW1tYm9ybiwgMTAuIEp1bCAyMDAyLCAwOTo0Mjo1Myk6Cn4jISBybj1ab29rIHJ0PTEwMjYyODY1MTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI2MTQ5NDcyCkp1bmdzcHVuZC4KCkdyaW1tYm9ybiBkZXIgQW1hdGV1cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRGEgaXN0IG5lIE1lbmdlIGZhdWwgKEdvcm9nLCAxMC4gSnVsIDIwMDIsIDIwOjM0OjM1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI2Mjg2OTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNjE0OTQ3MgpXaWUgamV0enQgMi41IC4uLi4gbWVpbiBDaGVmIG1hY2h0IG1pciBqZXR6dCBzY2hvbiBCZWluZSAoOwoKR29yb2cgMC41CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbnR6dWcgKE5lZGltZSwgMTAuIEp1bCAyMDAyLCAyMTozMDowMCk6Ck1vY2sgd2lsbCBhdWNoIHNwaWVsZW4uCkR1IGxhZWNoZWxzdCBNb2NrIGxpZWJldm9sbCBhbi4KPiBNb2NrIHppdHRlcnQgdW5kIGxlaWRldCB1bnRlciBFbnR6dWcuCk1vY2sgZnVjaHRlbHQgbWl0IGRlbiBIYWVuZGVuIGhlcnVtLCB1bmQgc3ByaWNodCBzZWx0c2FtZSBXb3J0ZS4gUGxvZXR6bGljaApzY2hlaW5lbiBzZWluZSBzZWx0c2FtZW4gQW5mYWVsbGUgd2VnIHp1IHNlaW4uCk1vY2sgYnJpY2h0IHZvciBMYWNoZW4genVzYW1tZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRW50enVnIChKb3NodWEsIDExLiBKdWwgMjAwMiwgMDk6MTM6NDYpOgp+IyEgcm49TmVkaW1lIHJ0PTEwMjYzMjk0MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI2MzI5NDAwCmRlciBpcyBndXQgOikgY2hhb3MgcnVsZXohCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGt3ZXIgKENyb2Z0LCAxMS4gSnVsIDIwMDIsIDEyOjM5OjEwKToKfiMhIHJuPU5vbm5lIHJ0PTEwMjYzODM3Nzkgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDI2MzgxMjY5CkJlc3NlcjogRnJvc2NoZSBzaWUgYWxsZSA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxMTgyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChKYW1lc29uLCAxMS4gSnVsIDIwMDIsIDE1OjEzOjE5KToKfiMhIHJuPVpvb2sgcnQ9MTAyNjM3Njg5MiByZz1tZWdhc2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSWNoIGdsYXViIHNvIGVpbiB6d2VpIGtsZWluZSBBcnRpa2VsY2hlbiBrb2VubmVuIG5pY2h0IHNjaGFkZW4uIDopCgpqQW1lc29uIGhhdCBBcHBldGl0IGF1ZiBTY2hva29sYWRlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTE4MzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQW50aGVhLCAxMS4gSnVsIDIwMDIsIDE1OjEzOjU1KToKfiMhIHJuPUphbWVzb24gcnQ9MTAyNjM5MzE5OSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApTbywgZmluZGVzdCBEdT8KCkFudGhlYSBoYXQgZWluZSBUYWZlbCBTY2hva29sYWRlIGltIFNjaHJlaWJ0aXNjaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxMTg0OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChKYWRhd2luLCAxMS4gSnVsIDIwMDIsIDE1OjE1OjA5KToKfiMhIHJuPUFudGhlYSBydD0xMDI2MzkzMjM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkBNYXJjdXM6IE11c3N0ZXN0IER1IGRpZSBzY2hvbiBpbiBBbnNwcnVjaCBuZWhtZW4sIG9kZXIgd2llc28gd2Vpc3N0IER1IGRhcyBzbwpnZW5hdT8KSmFkKiAoYmVzb3JndCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxMTg1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChHcmltbWJvcm4sIDExLiBKdWwgMjAwMiwgMTU6MTU6NDUpOgp+IyEgcm49SmFkYXdpbiBydD0xMDI2MzkzMzA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Cktpbm5lcnMsIGxhc3MgZGFzIGRvY2gsIGRhcyBnaWJ0IG51ciB3aWVkZXIgdW5ub2V0aWdlbiBBZXJnZXIuIFZlcmdlc3N0IG5pY2h0OgpEaWUgZ3Jvc3NlIE1laHJoZWl0IGlzdCBuaWNodCB6dW0gVmVyZ251ZWdlbiBoaWVyLCBkYXMgaXN0IGVybnN0IQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTE4NjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRWxiZXJldCwgMTEuIEp1bCAyMDAyLCAxNToyNToyMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNjM5MzM0NSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAphYmVyIHdlbm4gc2llIGRlbiB0aHJlYWQgaWdub3JpZXJlbiBiZWtvbW1lbiBzaWUgZG9jaCBuaXggenUgc2VoZW4sIG9kZXI/CgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTE4NzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoR3JpbW1ib3JuLCAxMS4gSnVsIDIwMDIsIDE1OjI2OjAzKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyNjM5MzkyMyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApEYXMgbmljaHQsIGFiZXIgd2VubiBzaWUgbnVyIGRpZSBSdWJyaWsgYWJiZXN0ZWxsdCBoYWJlbiBlYmVuIHNjaG9uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTE4ODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRWxiZXJldCwgMTEuIEp1bCAyMDAyLCAxNToyNjozMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNjM5Mzk2MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApzZWxic3Qgc2NodWxkIGthbm4gaWNoIGRhIG51ciBzYWdlbiA6KQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzExODk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEphbWVzb24sIDExLiBKdWwgMjAwMiwgMTU6Mjg6NDApOgp+IyEgcm49RWxiZXJldCBydD0xMDI2MzkzOTkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CnRqYS4uLiBkYW5uIHZlcmRvbm5lcnQgaGFsdCBlaW5lbiBNYWdpZXIgZXVyZXIgV2FobCBkYXp1LCBkaWUgbXBhIG1hbCBlYmVuIG5ldQp6dSBzY2hyZWliZW4gOikKZGFubiBrYW5uIG1hbiBhdWNoIGVuZGxpY2ggbXNnLUlEcyBlaW5iYXVlbiB1bmQgc28gd2VpdGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzExOTA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE1hcmN1cywgMTEuIEp1bCAyMDAyLCAxNTo0OToyNSk6Cn4jISBybj1KYW1lc29uIHJ0PTEwMjYzOTQxMjAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKc2FnZW4gd2lyIGVzIHNvLCBpY2gga2VubmUgZWluZSBLcmFua2Vuc2Nod2VzdGVyIGRpZSBkYSBhcmJlaXRldC4KCkNpYW8sIE1hcmN1cyAodW5kIGphLCBzaWUgaXN0IHN1ZXNzIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTE5MTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoSmFkYXdpbiwgMTEuIEp1bCAyMDAyLCAxNTo1MDoxNSk6Cn4jISBybj1NYXJjdXMgcnQ9MTAyNjM5NTM2NSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAo6ZnVlaGx0IHNpY2ggcGxvZXR6bGljaCBrcmFuay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxMTkyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChQYXJkYXV6LCAxMS4gSnVsIDIwMDIsIDE1OjU5OjAzKToKfiMhIHJuPUphZGF3aW4gcnQ9MTAyNjM5NTQxNSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApPY2ggYmxlaWJ0IGRvY2ggYml0dGUgaW4gZXVyZXIgUnVicmlrIQppbW1lciBkaWVzZXMKICogTVBBOiBuZXVlciBBcnRpa2VsIC4uLgpbbm5dCiBVZWJlcmdlaGUgQXJ0aWtlbCAuLi4gYXVzIGlnbm9yaWVydGVtIFRocmVhZAogTml4IG5ldWVzIGF1ZiBkZXIgV2VsdC4KCkRhcyBuZXJ2dCBkb2NoISBadW1hbCBpaHIgd2VubiBkYW5uIGphIG5pY2ggbnVyIDEtMiBBcnRpa2VsIHNjaHJlaWJ0IC4uLgoKRGFua2UKICBQYXJkYXV6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTE5MzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTW9udGFudXMsIDExLiBKdWwgMjAwMiwgMTY6NDE6NTIpOgp+IyEgcm49UGFyZGF1eiBydD0xMDI2Mzk1OTQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkRhcyBnZWh0IG5pY2h0LCBQYXJkYXV6LCBkaWUgaXN0IHZvbGwuClVuZCBkYW1pdCBuaWNodCBMZXV0ZSBpbiBhbmRlcmVuIFplaXR6b25lbiB1bnRlcmRydWVja3Qgd2VyZGVuIHVuZCBhdWNoIG1hbAp3YXMgc2NocmVpYmVuIGR1ZXJmZW4sIHdpcmQgaGFsdCBpbiBLcmVhdGl2cGhhc2VuIG1hbCBhdXNnZWxhZ2VydC4KQWJlciBrZWluZSBQYW5paywgZGllc2UgS3JlYXRpdnBoYXNlbiBzaW5kIGFlaG5saWNoIHdpZSBHZXplaXRlbiAtIGF1ZiBlaW5lCkZsdXQgZm9sZ3QgbWVpc3RlbnMgZWluZSBsYW5nZSB0cm9ja2VuZSBFYmJlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzExOTQ6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKE11YWRpYiwgMTEuIEp1bCAyMDAyLCAxNjo1NToxMik6Cn4jISBybj1Nb250YW51cyBydD0xMDI2Mzk4NTEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkRpZSBGbHV0IGlzdCBmdWVyIG1hbmNoZSBMZXV0ZSBhYmVyIHJlY2h0IG5lcnZpZywgdm9yIGFsbGVtIHdlaWwgYXVjaCBkaWVzZQpGbHV0IGRpZSBzY2htYXJybmlnZW4gR2V3YWVzc2VyIGJpcyBhbiBkaWUgR3JlbnplIGZ1ZWxsZW4ga2Fubi4gQXVzIGRpZXNlbQpHcnVuZCB3dXJkZSBqYSBkZXIgbWVnYXNjaG1hcnJuaWdlIFBvbGRlciBnZXNjaGFmZmVuLiBCaXR0ZSB0dXQgaGFsdCBkZW4Kc2NobWFycmlnZW4gRGVpY2hiZXdvaG5lcm4gZGVuIEdlZmFsbGVuIHVuZCByZWduZXQgZXVjaCBudXIgdWViZXIgZGVtIFBvbGRlcgphdXMuCgpOYXNzZSBHcnVlc3NlCgpNdWFkaWIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxMTk1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMTEuIEp1bCAyMDAyLCAxNjo1OToyNik6Cn4jISBybj1NdWFkaWIgcnQ9MTAyNjM5OTMxMiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApOdW4sIGRhIGdpYnQgZXMgZWluIG5ldHRlcyBXb3J0IG5hbWVucyAiU29saWRhcml0YWV0Ii4gV2lyZCBtYW5jaGVuIExldXRlbgppbW1lciBlcnN0IGluIEhvY2h3YXNzZXJ6ZWl0ZW4gYmV3dXNzdCwgd2FzIGRhcyBpc3QuClVuZCBtYW5jaGVuIG5pZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxMTk2OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChKYW1lc29uLCAxMS4gSnVsIDIwMDIsIDE3OjA5OjQ2KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwMjYzOTk1NjYgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKSWNoIGhhYiBlcnN0IG1hbCBkaWUgRWJlbmUgLW1lZ2FzY2htYXJybiBnZW1hY2h0LCB2aWVsbGVpY2h0IGRpc2t1dGllcmVuIHdpcgpkYXMgZGEgYXVzLCBiaXMgd2llZGVyIGVpbiBleHBpcmUga29tbXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTE5NjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRWxiZXJldCwgMTEuIEp1bCAyMDAyLCAxNzowOTo0OCk6Cn4jISBybj1Nb250YW51cyBydD0xMDI2Mzk5NTY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CmFsc28gd2VyIGRpZSBNZWxkdW5nICJVZWJlcmdlaGUgQXJ0aWtlbCBhdXMgaWdub3JpZXJ0ZW0gdGhyZWFkIG5pY2h0IGdhZ3QgLi4uLgpkZW0gaXN0IG5pY2h0IHp1IGhlbGZlbiwgb2Rlcj8gCldlbm4gaWNoIG1pciBzbyBtYW5jaGUgRXJndWVzc2UgaW4gc2NobWFycm4gZGlza3Vzc2lvbiBvZGVyIHdlciB3ZWlzcyB3YXMKZHVyY2hsZXNlLCBkYW5uIHNlaCBpY2ggbmljaHQsIHdpZXNvIGRhcyB3YXMgaW4gZGllc2VtIHRocmVhZCBoaWVyIHBhc3NpZXJ0Cm5pY2h0IHBhc3N0LiBFcyBnaWJ0IGRpZSBNb2VnbGljaGtlaXRlbiB0aHJlYWRzIHp1IGlnbm9yaWVyZW4sIHdlciBkYXMgbmljaHQKbnV0enQsIGhpbGZlIG1wYSBrYW5uIGRhIGhlbGZlbi4gQWxzbyByZWd0IGV1Y2ggYWIuCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTE5NzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTXVhZGliLCAxMS4gSnVsIDIwMDIsIDE3OjI3OjQ4KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyNjQwMDE4OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApIbW0gYWxzbyBpY2ggZ2FnIGRpZSBNZWxkdW5nIG5pY2h0LCBhYmVyIG1pciBpc3QgaW4gZGVyIFRhdCBuaWNodCB6dSBoZWxmZW4uCldpZSBpY2ggdmVyc3VjaHRlIGFuenVkZXV0ZW4gaXN0IGVpbiBQcm9ibGVtIG5pY2h0IGRpZSBRdWFsaXRhZXQgZGVyIEVyZ3Vlc3NlCnNvbmRlcm4gZGllIFF1YW50aXRhZXQuIERpZSBBcnRpa2VsIGluIE1lZ2FzY2htYXJybiBmdWVocmVuIGVpbmVuIGVpbnppZ2VuClRocmVhZCBmb3J0LCBkYXMgaXN0IGlociBTaW5uLCBuaWNodCB1bmJlZGluZ3QgZGVyIEluaGFsdC4gRGFtaXQgaXN0IGFiZXIKYWJ1bmR6dSBkaWUgUnVicmlrIHZvbGwuIApOdW4gaW4gZWluZSBhbmRlcmUgUnVicmlrIHVtenV6aWVoZW4gdW5kIGRpZSBhdWNoIHp1IGZ1ZWxsZW4sIGVyc2NoZWludCBtaXIKZGVuIE51dHplcm4gZGllc2VyIGFuZGVyZW4gUnVicmlrIGdlZ2VudWViZXIgbmljaHQgdW5iZWRpbmd0IHNlaHIKcnVlY2tzaWNodHN2b2xsLgpXYXMgZGFzIG1pdCBTb2xpZGFyaXRhZXQgenUgdHVuIGhhdCwgaGFiIGljaCBhbGxlcmRpbmdzIG5pY2h0IHZlcnN0YW5kZW4uClZpZWxsZWljaHQgbGllZ3RzIGphIGFuIGVpbmVtIGFsbGdlbWVpbmVuIFZlcnN0YWVuZG5pc3Byb2JsZW0uCgpHcnVzcwoKTXVhZGliCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTE5ODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoRWxiZXJldCwgMTEuIEp1bCAyMDAyLCAxNzozMDozNyk6Cn4jISBybj1NdWFkaWIgcnQ9MTAyNjQwMTI2OCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApobW0sIHNvd2VpdCBpY2ggZGFzIHNlaGUsIHdlcmRlbiBoaWVyIGdlcmFkZSBpbiBkaWVzZW0gdGhyZWFkIG5pY2h0IHNvIGFyZwp2aWVsZSBhcnRpa2VsIGdlc2NyaWViZW4sIHdlaWwgdW5zIGphIHZpZWxsZWljaHQgYmV3dXNzdCBpc3QsIGRhc3Mgd2lyIGFuZGVyZQpydWJyaWtlbiBuaWNodCBhbGx6dXZvbGxtdWVsbGVuIHNvbGx0ZW4uIEVzIGdpYnQgaGllciBkZW4gZWluZW4gb2RlciBhbmRlcmVuCnRocmVhZCwgZGVyIGluIHNjaG1hcnJuIGRpc2t1c3Npb24gb2RlciBhZWhubGljaGVtIG1laHIgYXJ0aWtlbCBwcm9kdXppZXJ0LgpBYmVyIHdhcyBzb2xscywgd2FydGVuIHdpciBlaW5mYWNoIGRhcyBleHBpcmUgYWIuIE9kZXIgdmVyYnJlbm5lbiB1bnNlcmUgbXBhCi4uLgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzExOTk6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKENyb2Z0LCAxMS4gSnVsIDIwMDIsIDE3OjM0OjI2KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyNjQwMTQzNyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJaHIga29lbm50ZSBqYSBub2NoIGVpbmUgKG9kZXIgbWVocikgTWVnYXNjaG1hcnJuLVJ1YnJpayBhdWZtYWNoZW4uICBVbmQKendpc2NoZW4gZGllc2VuIGRhbm4gYWx0ZXJuaWVyZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxMjAwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChHcmltbWJvcm4sIDExLiBKdWwgMjAwMiwgMjE6MDk6NTMpOgp+IyEgcm49Q3JvZnQgcnQ9MTAyNjQwMTY2NiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApJY2ggaGFiZSBnZWxlZ2VudGxpY2ggc2Nob24gcHJvcGh5bGFrdGlzY2ggbWVpbmUgenVrdWVuZnRpZ2UgUmVnaW9uc3J1YnJpawpkYWZ1ZXIgZnJlaWdlZ2ViZW4sIGFiZXIgYWxzIGRlZmF1bHQgaXN0IGRhcyBqYSBhdWNoIGRvb2YuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxMjAxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNb250YW51cywgMTEuIEp1bCAyMDAyLCAyMzoxMjozMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNjQxNDU5MyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApVbmQgZ2VyYWRlIExldXRlLCBkaWUgYmVpbSBiZWxpZWJ0ZW4gU1BpZWwgIkljaCBzZWggZXR3YXMsIHdhcyBCb2luZyBuaWNodApzaWVodCIgbWl0c2NobWFycmVuLCBzb2xsdGVuIG5pY2h0ICBnYW56IHNvIGdyb3NzZSBCcm9ldGNoZW4gYmFja2VuLiA7LSkKU09saWRhcml0YWV0IGJlZGV1dGV0OiB3aXIgc2luZCBzb2xpZGFyaXNjaCBtaXQgZGVuIG5pY2h0LUxlc2VybiB1bmQgYmxlaWJlbgpub3JtYWxlcndlaXNlIGluIGVpbmVyIGFiYmVzdGVsbGJhcmVuIFJ1YnJpaywgdW5kIGRpZSBhbmRlcmVuIHNpbmQgc29saWRhcmlzY2gKdW5kIHRpcHBlbiBlaW4gcGFhciBtYWwgenVzYWV0emxpY2ggIm5uIiwgd2VubiB3aXIgbWFsIGF1cyBWZXJzZWhlbgp1ZWJlcnNjaHdhcHBlbi4KV2VpbmVybGljaGtlaXQgaXN0IHVlYnJpZ2VucyBvdXQuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzEyMDI6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEJvaW5nLCAxMi4gSnVsIDIwMDIsIDA5OjA2OjIwKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwMjY0MjE5NTMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKUG9sZW1payBpc3QgYXVjaCBvdXQsIE1vbnRhbnVzIC4uLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTIwMzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQ3VjaHVsbGluLCAxMi4gSnVsIDIwMDIsIDA5OjE3OjIxKToKfiMhIHJuPUJvaW5nIHJ0PTEwMjY0NTc1ODAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKTW9udGFudXMgaXN0IGltIEJldHQuIEZpbmFsbHkuIDspCgpXaXIga29lbm5lbiwgYmlzIGluIGRlciBSdWJyaWstYWxsZXItUnVicmlrZW4gd2llZGVyIFBsYXR6IGlzdCwgaW4gYWxsZXIKU3RpbGxlIG1lZGl0aWVyZW4sIHdvcnVlYmVyIHdpciB1bnMgYWxzIG5hZWNoc3RlcyBzdHJlaXRlbi4gRGllIG5ldWVuIApUYXJpZmUgZGVyIEJhaG4gc2luZCBzY2hvbiBlcnNjaG9lcGZlbmQgZGlza3V0aWVydD8gV2llIGlzdCdzIG1pdCBCdXNoLQpMYW5kIHVuZCBkZXIgaW50ZXJuYXRpb25hbGUgU3RyYWZnZXJpY2h0c2hvZj8gQXJiZWl0c21hcmt0cHJvZ25vc2VuIGZ1ZXIKZGVuIElULUJlcmVpY2g/IFN0aWNod29ydCAiSW50ZXJuZXQtQXBvdGhla2VuIj8gIlRlbXBlbCBkZXIgRWxlbWVudGUgPQpUYXJhbWlzIDIiPyBCYWt0ZXJpZW52ZXJtZWhydW5nIGluIEhhY2tmbGVpc2NoPyBCdXRvbGludXMgVG94aW4gQSBnZWdlbgpGYWx0ZW4gKHdvIHdpciBzY2hvbiBiZWltIFRoZW1hIHdhcmVuIDspKSA/CgpbTGV0enRlciBBcnRpa2VsIGltIGF1c2dlbGFnZXJ0ZW4gVGhyZWFkIDspXQoKQ3VjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RyYWZlIChWYW5pb24sIDEyLiBKdWwgMjAwMiwgMTU6MDY6MDQpOgpQaWZhbGwgdW5kIEJyb3RuYWVsIHdhcmVuIHNlaHIsIHNlaHIsIGJvZXNlLiBEYSBzaWUgc2ljaCBhdXNzZXJkZW0gd2llIGtsZWluZQpLaW5kZXIgYmVuZWhtZW4gbXVlc3NlbiBzaWUgc2ljaCB6dXIgU3RyYWZlIGFuIGVpbmUgRWNrZSBpaHJlciBXYWhsIHN0ZWxsZW4KdW5kIDEwIE1pbnV0ZW4genVzYW1tZW4gaWRsZW4uIFVuZCB6d2FyIG5vY2ggZGllc2UgVXB0aW1lLiBXYW5uIGdlbmF1IGlzIG1pcgplZ2FsIQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdHJhZmUgKFBpdGZhbGwsIDEyLiBKdWwgMjAwMiwgMTU6MDY6MjgpOgp+IyEgcm49VmFuaW9uIHJ0PTEwMjY0NzkxNjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI2NDc5MTY0Cm1pdCBERU0gaW4gZWluZXIgZWNrZSBpZGxlbj8/PwpOSUUhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFN0cmFmZSAoR2xvaW5zb24sIDEyLiBKdWwgMjAwMiwgMTU6MTI6NTgpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDI2NDc5MTg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNjQ3OTE2NApOdXIgd2VubiBEdSBoaW50ZXIgaWhtIHN0ZWhlbiBrYW5uc3QsIGhtPyBXYXMgYW5kZXJlcyB3YWVyZSBCcm90bmFlbCBhdWNoCm5pY2h0IHp1enVtdXRlbi4KCmxvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCZXJsaW4gKFBpdGZhbGwsIDEzLiBKdWwgMjAwMiwgMTA6NDg6MzMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjY1MDczMjYgcmc9dHJlZmZlbgp+IyEgdGlkPTEwMjY1MDcyNTAKR2RBLCBkZXIgYmVybGluZXhwZXJ0ZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJlcmxpbiAoR3JpbW1ib3JuLCAxMy4gSnVsIDIwMDIsIDEwOjU2OjA2KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAyNjU1MDExMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjY1MDcyNTAKR2VsbCwgZGEgc3RhdW5zdGU/IEljaCB3YXIgc2Nob24gaW4gQmVybGluLCBkYSB3YXJzdCBEdSBub2NoIG5pY2h0bWFsIGVpbgpGdW5rZWxuIGltIEF1Z2UgRGVpbmVzIFZhdGVycy4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCZXJsaW4gKFBpdGZhbGwsIDEzLiBKdWwgMjAwMiwgMTI6MDE6MDkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjY1NTA1NjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI2NTA3MjUwCjprbmVlbHMgZG93biB0byB3b3JzaGlwIEdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQmVybGluIChHbG9pbnNvbiwgMTMuIEp1bCAyMDAyLCAxMjoyMzozNCk6Cn4jISBybj1QaXRmYWxsIHJ0PTEwMjY1NTQ0Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI2NTA3MjUwCkhhaWwgdG8gdGhlIG5ldyBzaGVyaWZmISBHcmltbWJvcm4gdGhlIHVuY29uZmlybWVkIEdyZWF0LgoKR2xvaW4oc29uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQmVybGluIChHcmltbWJvcm4sIDEzLiBKdWwgMjAwMiwgMTM6NTU6MjEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAyNjU1NTgxNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjY1MDcyNTAKSG1tPyBOdXIga2VpbmVuIE5laWQuCkFiZXIgQmVybGluIGlzdCBudW5tYWwgZWluZSBTdGFkdCBpbiBkZXIgaWNoIGltbWVyIHdpZWRlciBnZXJuZSBnZXdlc2VuIGJpbiwKdW5kIHdvIGljaCBlaW4sIHp3ZWkgRGluZ2Ugdm9uIGtlbm5lLiBCZXJsaW4gaXN0IHNpY2ggZ3Jvc3NlcyBIYXVwdHN0YWR0LCBkYXMKc29sbHRlIG5pY2h0IGFsbHp1c2VociB2ZXJ3dW5kZXJuIGRhc3MgZG9ydCBuaWNodCB3b2huZW5kZSBNZW5zY2hlbiBzaWNoIGRvcnQKZWluIHdlbmlnIGF1c2tlbm5lbi4KQW4gc28gV29jaGVuZW5kZW4gd2llIGRlbSBha3R1ZWxsZW4gYmluIGljaCBhbGxlcmRpbmdzIGZyb2ggbmljaHQgaW4gQmVybGluIHp1CnNlaW4uIEthcm5ldmFsIGthbm4gZGVyIFByZXVzc2UgZWluZmFjaCBuaWNodC4gSW0gR2VnZW5zYXR6IHp1bSBLb2VsbmVyLCBkYQpoYXQgbWFuIGVyc3QgbGV0enRlcyBXRSB3aWVkZXIgc2VoZW4ga29lbm5lbiBkYXNzIGRvcnQgYWxsZXMsIHdhcyBzaWNoIGF1Y2gKbnVyIGhhbGJ3ZWdzIGVpZ25ldCwgc29mb3J0IHp1bSBLYXJuZXZhbCB3aXJkLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCZXJsaW4gKEdsb2luc29uLCAxMy4gSnVsIDIwMDIsIDEzOjU3OjE1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI2NTYxMzIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNjUwNzI1MApXaXIgaW1wb3J0aWVyZW4gZGllIEF1ZGlvLVVtd2VsdHZlcnNjaG11dHplciBudXIgYXVzIGZpbmFuemllbGxlbiBHcnVlbmRlbi4KCkdsb2luKHNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEJlcmxpbiAoR3JpbW1ib3JuLCAxMy4gSnVsIDIwMDIsIDEzOjU5OjI1KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMjY1NjE0MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI2NTA3MjUwClNpZWhzdGUuIEluIGFuZGVyZW4gR2VnZW5kZW4gZ2lidHMgaGFsdCBEaW5nZSwgZGllIG1hbiBhdWNoIGZ1ZXIgR2VsZCBuaWNodAptYWNoZW4gd3VlcmRlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmQgZGFzIG1pdHRhZ3MgdW0gaGFsYiAzIChCYW1iaSwgMTMuIEp1bCAyMDAyLCAxNDozMjozOSk6ClhYWCBzYWd0OiBnaWIgbWlyIGVpbmUgUm9zZSBEdSBhbGtpCllZWSBzYWd0OiBobW0gcm9zZSBpcyBhdXNnYW5nID8/ClhYWCBzYWd0OiBqYSwgYWJlciB2b24gZGVtIGJlc29mZmVuZW4uCllZWSBndWNrdCBkaWUgcm9zZSBtYWwgZ2VuYXVlciBhbgpYWFggc2FndDogbmVpbiwgYWJlciBvYmVuIGxpZWd0IGVpbmUgRnJhdSBHKioKWVlZIHNhZ3Q6IGhtbSBvYmVuIC4uICh0cmVwcGUgc3VjaCkKWVlZIHNjaHdlYnQgbmFjaCBTdWVkZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmZ3IChLZXksIDEzLiBKdWwgMjAwMiwgMjE6NDM6MDApOgoKRHUga2FlbXBmc3QgRGljaCB0aWVmZXIgaW4gZGFzIFJlaWNoIGRlciBHcnVtbWVsYmVpc3NlciBoaW5laW4sIHNvIGdhbnoKYWxsbWFlaGxpY2ggYmVrb21tc3QgRHUgYXVjaCBlaW4gbXVsbWlnZXMgR2VmdWVobCBpbiBkZXIgTWFnZW5nZWdlbmQsCndhcyBEaWNoIHdlaXRlciBpbSBTdWVkZW4gd29obCBlcndhcnRlbiB3aXJkPyBIaWVyIGVyd2FydGV0IERpY2ggZnVlcnMKZXJzdGUgZGFzIHVlYmxpY2hlIENoYW9zIGF1cyBLbm9jaGVuLCB6ZXJmZXR6dGVuIEF1c3J1ZXN0dW5nc3RlaWxlbiB1bmQKQmx1dCwgZGllIEJlaXNzZXJjaGVuIHNjaGVpbmVuIG1hbCB3aWVkZXIgZ2V3dWV0ZXQgenUgaGFiZW4uCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4gdW5kIG5vcmRlbi4KTmVzYWphIGJyYWV1Y2h0ZSBkcmluZ2VuZCBEZWluZSBIaWxmZS4KCkFuIE5lc2FqYTogaG1tbW1tbQpWb24gTmVzYWphOiBncnVtbWVsYmVpc3NlciBhbGxlcyBva2F5IC4pCkFuIE5lc2FqYTogamFqYSA6KQpWb24gTmVzYWphOiBlcHBpIGlzdCBiZWkgbWlyIDopCkFuIE5lc2FqYTogaXN0IGRhcyBqZXR6dCBwb3NpdGl2aT8gKnp3ZWlmZWwqIDopCltUb2Q6TGFyc10gRWluIGdlZnJhZXNzaWdlciBzY2h3YXJ6ZXIgR3J1bW1lbGJlaXNzZXIgaGF0IGdlcmFkZSBOZXNhamEKW1RvZDpMYXJzXSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBnZWZyYWVzc2lnZXIgc2Nod2FyemVyIEdydW1tZWxiZWlzc2VyXSBLbmlyc2NoIEtuaXJzY2ggQnJvZXNlbApbVG9kOkVpbiBnZWZyYWVzc2lnZXIgc2Nod2FyemVyIEdydW1tZWxiZWlzc2VyXSBaZXJmZXR6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGZWF0dXJlIHJlcXVlc3QgKEdyaW1tYm9ybiwgMTQuIEp1bCAyMDAyLCAxMzo0NzowNik6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjY2NDU2OTUgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDI2NjA2NjQ1CkFtaSBnbyBob21lLCBzYWcgaWNoIGRhIG51ci4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEZlYXR1cmUgcmVxdWVzdCAoRWxiZXJldCwgMTQuIEp1bCAyMDAyLCAxMzo0NzoyNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNjY0NzIyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjY2MDY2NDUKYWxzbyBlenMgd2FyIGVpZ2VudGxpY2ggZ2VuYXUgYW5kZXJzaGVydW0gOikKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEZlYXR1cmUgcmVxdWVzdCAoR3JpbW1ib3JuLCAxNC4gSnVsIDIwMDIsIDEzOjUwOjAxKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyNjY0NzI0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjY2MDY2NDUKV2llc28sIGdpYnRzIGhpZXIgQXNpYXRlbiBvZGVyIEF1c3RyYWxpZXI/IE9kZXIgd2FzIG1laW5zdCBEdSBtaXQgImdlbmF1CmFuZGVyc3J1bSI/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEZlYXR1cmUgcmVxdWVzdCAoRWxiZXJldCwgMTQuIEp1bCAyMDAyLCAxMzo1MToxNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNjY0NzQwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjY2MDY2NDUKbmFqYSBlcyBtdXNzdGUgbmljaHQgZGVyIGFtaSBob21lIGdlaGVuLCBkZXIgd2FyIGRhIHNjaG9uLCBzb25kZXJuIGRlcgpldXJvcGFlZXIgaGF0IHNlaW4gaG9tZSB2ZXJsYXNzZW4gdW0gZGFzIGhvbWUgZGVyIGFtaXMgenUgc2VoZW4sIGFiZXIKZWlnZW50bGljaCBmaW5kZXQgZGVyIGV1cm9wYWVlciBzZWluIGhvbWUgc2Nob2VuZXIgYWxzIGRhcyBob21lIGRlciBhbWlzCmRlc3dlZ2VuIGlzdCBlciB3aWVkZXIgZGEgOikKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEZlYXR1cmUgcmVxdWVzdCAoR3JpbW1ib3JuLCAxNC4gSnVsIDIwMDIsIDEzOjUyOjQ3KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAyNjY0NzQ3NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjY2MDY2NDUKQWNoIHNvLiBOYWphLCAiQW1pLCB0eXBlIGVuZGUiIGlzdCBoYWx0IGhpc3RvcmlzY2ggbmljaHQgc28ga2xhc3Npc2NoLiAKSWNoIGhhYiBqYSBuaWNodHMgZGFnZWdlbiB3ZW5uIGFuZGVyZSBaZWl0em9uZW4gaGllciBtYWwgcmVpbnNjaG51cHBlcm4sIGFiZXIKc2llIHNvbGxlbiBkYW5uIGJpdHRlc2Nob2VuIGF1Y2ggbmljaHQgbWVja2Vybi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEZlYXR1cmUgcmVxdWVzdCAoRWxiZXJldCwgMTQuIEp1bCAyMDAyLCAxMzo1MzoyMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNjY0NzU2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjY2MDY2NDUKZGFzIHdhciBrZWluIG1lY2tlcm4gc29uZGVybiBlaW9uIGtvbnN0cnVrdGl2ZXIgVm9yc2NobGFnIDspCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogRmVhdHVyZSByZXF1ZXN0IChDdWNodWxsaW4sIDE0LiBKdWwgMjAwMiwgMTM6NTY6MDgpOgp+IyEgcm49RWxiZXJldCBydD0xMDI2NjQ3NjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNjYwNjY0NQphdXNzZXJkZW0ga2FtIGRlciBmZWF0dXJlIHJlcXVlc3Qgdm9uIG1pci4gVW5kIGljaCBoYWJlIG1pdCBBbWVyaWthbmVybgpudW4gd2lya2xpY2ggbmljaHRzIGFtIEh1dC4gQXVzc2VyIGRhc3MgaWNoIE1vbnRhbnVzIG5ldHQgdW5kIEJ1c2ggZnVlcgpkZW4gV2VsdGZlaW5kIE5vLiAxIGJlZmluZGUuIEFiZXIgZGFzIGdlaG9lcnQgbmljaHQgendpbmdlbmQgaW4gZGllc2UKUnVicmlrLgoKSXMgbnUgZ3V0IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEZlYXR1cmUgcmVxdWVzdCAoTGlhcmEsIDE0LiBKdWwgMjAwMiwgMTQ6NTE6MDMpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMjY2NDc3Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDI2NjA2NjQ1Ck1vbnRhbnVzIGlzdCBfa2Vpbl8gQW1pLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEZlYXR1cmUgcmVxdWVzdCAoR3JpbW1ib3JuLCAxNC4gSnVsIDIwMDIsIDE2OjA4OjI5KToKfiMhIHJuPUxpYXJhIHJ0PTEwMjY2NTEwNjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI2NjA2NjQ1CkplcHAsIEF1ZmVudGhhbHRzb3J0IGlzdCBuaWNodCBkYXMgYWxsZWluIGJlc3RpbW1lbmRlLiBTb25zdCB3YWVyZSBpY2ggamEgZGllCmxldHp0ZW4gYmVpZGVuIEphaHJlIEJheWVyIGdld2VzZW4uLi4gKnNodWRkZXIqCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBGZWF0dXJlIHJlcXVlc3QgKEN1Y2h1bGxpbiwgMTQuIEp1bCAyMDAyLCAxNzoyNToxMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNjY1NTcwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjY2MDY2NDUKQWJlciBlciBhcmJlaXRldCBmcmVpd2lsbGlnIGZ1ZXIgZWluZW4gYW1lcmlrYW5pc2NoZW4gR2VsZHNjaGVmZmxlci4gVW5kCmRhcyB2ZXJtdXRsaWNoIHNvZ2FyIG5vY2ggdW50ZXJiZXphaGx0LiA7KSAqZ3Jvd2wqIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEZlYXR1cmUgcmVxdWVzdCAoR3JpbW1ib3JuLCAxNC4gSnVsIDIwMDIsIDE3OjM3OjAxKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDI2NjYwMzEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNjYwNjY0NQpvZWhoaG1tbS4uLgoKR2RBLCBpbiBEaWVuc3RlbiBlaW5lcyBqYXBhbmlzY2hlbiBHZWxkc2NoZWZmbGVycy4gTmF0dWVybGljaCB1bnRlcmJlemFobHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTVAzcyAoR3JpbW1ib3JuLCAxNS4gSnVsIDIwMDIsIDA5OjM2OjE3KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDI2NzE4NTcxIG9nPWt1bHR1cgp+IyEgcm49QmVlbHplYnViIHJ0PTEwMjY3MTYzNzQgcmc9a3VsdHVyCn4jISB0aWQ9MTAyNjcxNjM3NApEYXJhbiBtZXJrdCBtYW4gZGFzcyBkYXMga2VpbiBQdW5rIGlzdCAtIGRvcnQgaXN0IGVpbiBTb25nIG5hY2ggMiBNaW51dGVuIHUuVS4Kc2Nob24gbGFlbmdzdCB6dSBFbmRlLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhlaGUgKFBpdGZhbGwsIDE2LiBKdWwgMjAwMiwgMTU6MzQ6MzkpOgpEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBwaXQsIHdpciB3ZXJkZW4gZG9jaCBzY2hvbiBnaWxkZW5tYWdpZXIuCkRlaW4gRnJldW5kIEJyb3RuYWVsIHRlaWx0IERpciBtaXQ6IGR1IHphdWJpZXMsIGljaCB0cnZlcyA6bykKRGVpbiBGcmV1bmQgR25vbWUgd2lua3QgRGlyIGF1cyBkZXIgRmVybmUgenUuCkdub21lICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhlaGUgKEJyb3RuYWVsLCAxNi4gSnVsIDIwMDIsIDE1OjM1OjQzKToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAyNjgyNjQ3OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjY4MjY0NzkKamEgd2FzIGhhdHRhIGRlbm4gZGVyIGtsZWluZT8gKmtpY2hlcioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBoZWhlIChHbm9tZSwgMTYuIEp1bCAyMDAyLCAyMToxNDowMCk6Cn4jISBybj1QaXRmYWxsIHJ0PTEwMjY4MjY0Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI2ODI2NDc5Ck5PQ0ggc2NobGltbWVyIHdhZXIgamEgYW5kZXJzcnVtLi4uIDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU29zby4uLiAoWm9vaywgMTguIEp1bCAyMDAyLCAxMTo0OTozNyk6Cn4jISBvbj1ab29rIG90PTEwMjY5ODU3NjEgb2c9Z2lsZGVuLmthZW1wZmVyCltLYXJsc3J1aGU6THVyY2hpXSB2b24gd2VtIGlzdCBkZW5uIHp6cnJya2wgU28gaGVpc3N0IHNjaG9uIGVpbiBOUEMgaGllcj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU29zby4uLiAoV29vZHksIDE4LiBKdWwgMjAwMiwgMTQ6NTY6MjYpOgp+IyEgcm49Wm9vayBydD0xMDI2OTg1Nzc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNjk4NTc3NwpBdXMgS2FybHNydWhlIGtvbW1lbiBvZWZ0ZXIgc28gc2VsdHNhbWUgTmFtZW4uIFdpZSB6LkIuIEtyemh1Z25nciA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU29zby4uLiAoTWFuZHJhZ29uLCAxOC4gSnVsIDIwMDIsIDE4OjU2OjUxKToKfiMhIHJuPVdvb2R5IHJ0PTEwMjY5OTY5ODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI2OTg1Nzc3CkRhcyBhdXNnZXJlY2huZXQgZWluIEthZW1wZmVyIFp6cnJya2wgbmljaHQga2VubnQgLi4uLgoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTb3NvLi4uIChMaWFyYSwgMTguIEp1bCAyMDAyLCAxOTo0NjowMik6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTAyNzAxMTQxMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjY5ODU3NzcKSWNoIG11c3MgTWFuZHJhZ29uIGRhIGxlaWRlciB6dXN0aW1tZW4uIDstKQpGaWVyIGRlbiBBcnRpa2VsIHNvbGx0ZSBtYW4gTHVyY2hpIGVjaHQgYWJ3ZXJ0ZW4hCgpHcnVlc3NlLCBMaWFyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZSA7LSkgKExpYXJhLCAxOC4gSnVsIDIwMDIsIDIwOjU2OjI0KToKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IHdvdyBmaXJlKiBoYXQgbWlyIHNlaW5lIGdlbGRib2Vyc2UgZ2VnZWJlbgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogKmhhZW5kZSByZWliKgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogc2NoYXR6IGljaCBiaW4gbWEgZWJlbiBlaW5rYXVmZW4gOy0pCkRlaW4gRnJldW5kIENvcm5ob2xpbyB0ZWlsdCBEaXIgbWl0OiBvaCBnb3R0LCBkZXIgaG9ycm9yLXNhdHoKRGVpbiBGcmV1bmQgRmlyZWhhd2sgdGVpbHQgRGlyIG1pdDogV2llIGd1dCwgZGFzcyBlcyBpbSBNdWQga2VpbmUgZ2VtZWluc2FtZW4KRGVpbiBGcmV1bmQgRmlyZWhhd2sgdGVpbHQgRGlyIG1pdDogS29udGVuIGdpYnQgOykKRGVpbiBGcmV1bmQgQ29ybmhvbGlvIHRlaWx0IERpciBtaXQ6ICJzY2hhdHosIGljaCBiaW4gbWFsIHNob3BwZW4sLCwgZGFua2UKRGVpbiBGcmV1bmQgQ29ybmhvbGlvIHRlaWx0IERpciBtaXQ6IGZ1ZXIgZGllIHBsYXRpbnVtIGthcnRlIgpEZWluIEZyZXVuZCBDb3JuaG9saW8gdGVpbHQgRGlyIG1pdDogb2RlciAibmVpbiwgc2NoYXR6LCBlcyB3YXIga2VpbmUgbGllYmUsCkRlaW4gRnJldW5kIENvcm5ob2xpbyB0ZWlsdCBEaXIgbWl0OiBudXIgc2V4IgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogZ2VnZW4gc2V4IGlzIG5peCBlaW56dXdlbmRlbgpEZWluIEZyZXVuZCBQaXRmYWxsIHRlaWx0IERpciBtaXQ6IGpldHp0PwpEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBzb2ZvcnQ/CgpMaWFyYSwgZ3JpbnN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBhaW50YmFsbCBTdHUqIChDdWNodWxsaW4sIDE5LiBKdWwgMjAwMiwgMTE6MDE6NDUpOgp+IyEgcm49Tm9ubmUgcnQ9MTAyNzA2NzkxMiByZz10cmVmZmVuCn4jISB0aWQ9MTAyNzA2NDg5NQpCbHV0IHVuZCBSZWggZXJpbm5lcnQgbWljaCBzbyBhbiBkZW4gQWJzY2hsdXNzLVNjcmVlbiB2b24gRG9vb29vb29vb29vbS4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFBhcnR5dWViZXJzY2h1c3MgKFpvb2ssIDE5LiBKdWwgMjAwMiwgMTg6NDE6MjMpOgp+IyEgb249Wm9vayBvdD0xMDI3MDk1NjgxIG9nPXBhcnR5Cn4jISBybj1Nb250YW51cyBydD0xMDI3MDk1NjU1IHJnPXBhcnR5Cn4jISB0aWQ9MTAyNzA4MDg0OQpBY2hzby4gOi0pCgpVbmQgd2FzIG1hY2h0IGRpZSBTdGlmdHVuZyBtaXQgYW5nZW51Y2tlbHRlbiBDb2xhLUZsYXNjaGVuPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFBhcnR5dWViZXJzY2h1c3MgKE1vbnRhbnVzLCAxOS4gSnVsIDIwMDIsIDE4OjQ0OjQ3KToKfiMhIHJuPVpvb2sgcnQ9MTAyNzA5Njg4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjcwODA4NDkKQWxsZXMgYW4gWml2aXMgdmVyZnVldHRlcm4uIERpZSB2ZXJodW5nZXJuIHNvbnN0LgpVbmQgaWNoIGhhYiBkYXMgZ2FuemUgZG9jaCBncmFkIHNjaG9uIGluIGRlciBQYXJ0eXJ1YnJpayBiZWFudHdvcnRldCwgaGFzdGUKZGllIEFydGlrZWwgZG9ydCBpbSBTdWZmIGdyYWQgYWxsZSBnZWxvZXNjaHQgb2RlciB3YXM/CldhaC4gSGVzc2VuIGFscyBHb2V0dGVyLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBQYXJ0eXVlYmVyc2NodXNzIChSb25kYSwgMTkuIEp1bCAyMDAyLCAyMTo1OTo0OCk6Cn4jISBybj1Nb250YW51cyBydD0xMDI3MDk3MDg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNzA4MDg0OQpLZWluZSBCZWxlaWRpZ3VuZ2VuIGdlZ2VuIEhlc3NlbiEgRGVyIGdld2lzc2UgR290dCBpc3QgSGludGVyd2FlbGRsZXIgb2RlciBzbwp3YXMgYWVobmxpY2hlcyEKClJvbmRhICppbiBIZXNzZW4gaW0gQXN5bCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFBhcnR5dWViZXJzY2h1c3MgKFdpbGxvdywgMTkuIEp1bCAyMDAyLCAyMjowMDo1NCk6Cn4jISBybj1Sb25kYSBydD0xMDI3MTA4Nzg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNzA4MDg0OQpFcmJhcm1lbiwgZGllIEhlc3NlIGtvbW1lLi4uCldlaWRjaGVuIFdpbGxvdyB6aXRpZXJ0IG51ci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExpbmtzIHVuZCBEaXNjbGFpbWVyIChHbG9pbnNvbiwgMjAuIEp1bCAyMDAyLCAxMDowNjowMik6Cn4jISBybj1WYW5pb24gcnQ9MTAyNzE0OTU4NCByZz13d3cKfiMhIHRpZD0xMDI3MTQ5NTg0CkhpZXJtaXQgZGlzdGFuemllcmUgaWNoIG1pY2ggcGF1c2NoYWwgdm9uIGRlbSBMaW5rIGF1ZiBkZW4gdm9yaGVyaWdlbiBBcnRpa2VsPwoKR2xvaW5zb24gendpbmtlcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTGlua3MgdW5kIERpc2NsYWltZXIgKFZhbmlvbiwgMjAuIEp1bCAyMDAyLCAxMDowNzoxNik6Cn4jISBybj1HbG9pbnNvbiBydD0xMDI3MTUyMzYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNzE0OTU4NApEdSBoYXN0IHNjaG9uIHNvb28gb2Z0IHZlcmdlYmxpY2ggdmVyc3VjaHQsIG1pY2ggenUgYmVsZWlkaWdlbi4gV2FydW0gc29sbHRlCmVzIERpciBhbHNvIGRpZXNtYWwgZ2VsaW5nZW4/CgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBhcnR5IEhhbGxlIChEZWVwYmx1ZSwgMjAuIEp1bCAyMDAyLCAxNToxNDowMik6Cn4jISBybj1DYXNzYW5kcmEgcnQ9MTAyNzE2ODg4OCByZz1wYXJ0eQp+IyEgdGlkPTEwMjcxNjg4ODgKSHVjaCwga29tbWVuIGRlbm4gYXVjaCBMZXV0ZSBhdXMgSG9sbGFuZCB6dXIgUGFydHk/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERlZXBibHVlLCAyMC4gSnVsIDIwMDIsIDIyOjQ0OjUxKToKW0NoYW9zOkRhcmttYW5dIHdpZSBvZnQgZmxpcHQgZGVyIGRhZW1vbiBkZXIgY2hhb3NydWVzdHVuZyBhdXMgPz8gbnVyIGVpbm1hbApbQ2hhb3M6RGFya21hbl0gPz8gPDIyOjI4OjE5PgpbQ2hhb3M6U3RpbmddIG5laW4sIGthbm4gc2Nob24gb2VmdGVyIHZvcmtvbW1lbiA8MjI6Mjk6Mjc+CltDaGFvczpEYXJrbWFuXSBobW0gaGFiIGljaCB3b2hsIGdsdWVjayA6KSBkZXIgaXMgc2Nob24gc28gbGFuZ2UgcnVoaWcgLi4uCltDaGFvczpEYXJrbWFuXSA8MjI6MzE6NTY+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKd2VuaWcgc3BhZXRlcjoKW1RvZDpMYXJzXSBFaW4gQ2hhb3NkYWVtb24gaGF0IGdlcmFkZSBEYXJrbWFuIHVtZ2VicmFjaHQuIDwyMjozOTo1Mj4gICAgICAgICAgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXNzIGRlciBkYXMgc28gcGVyc29lbmxpY2ggbmltbXQuLi4uIChIdW1uaSwgMjEuIEp1bCAyMDAyLCAxNjoxNToyNCk6CkRlaW5lIEZyZXVuZGluIEFzdWthIHRlaWx0IERpciBtaXQ6IGR1IGtvZW5udGVzdCBkaWUga2xlaW5lbmUgUFVua3RlIGRlcgpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiBUb2RvbGlzdGUgYWJhcmJlaXRlbi4gWi5CLiBkaWUKRGVpbmUgRnJldW5kaW4gQXN1a2EgdGVpbHQgRGlyIG1pdDogR2lsZGVucXVlc3RwdW5rdGUgZGVyIFdlcndvZWxmZSBhZW5kZXJuLApEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiBLYWVtcGZlciBhYndlcnRlbiB1bmQgc28uIDopICAgICAgICAgICAgICAKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IEthZW1wZmVyIGFid2VydGVuLiBEYXMgd2FyJ3MsIHdhcyBpY2ggd29sbHRlLiAgClBpdGZhbGwgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhICAgICAgICAgICAgICAgICAgIAoKVXVwcy4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQZXJsZSBhdXMgZGUuYWx0Lm5hdHVyaGVpbGt1bmRlIChOb25uZSwgMjIuIEp1bCAyMDAyLCAwOTowOToxNCk6Ck1hdHRoaWFzIERydXggPE1hdHRoaWFzLkRydXhAdC1vbmxpbmUuZGU+IHdyb3RlLi4uLi4uLgoKPiBGb2xnZW5kZW4gQXJ0aWtlbCBoYWJlIGljaCBnZXJhZGUgYmVpIFlhaG9vISBnZWZ1bmRlbjoKPiAKPiBodHRwOi8vZGUubmV3cy55YWhvby5jb20vMDIwNzIxLzMvMnY5a2guaHRtbAo+IAo+IFNvbm50YWcgMjEuIEp1bGkgMjAwMiwgMTI6NTEgVWhyCj4gCj4gRm9yc2NoZXI6IEtvY2hlbiBrb2VubnRlIEhpcm5lbnR3aWNrbHVuZyBnZWZvZXJkZXJ0IGhhYmVuIFN0dXR0Z2FydCAoZHBhKQo+IAo+IERpZSBFcmZpbmR1bmcgZGVzIEtvY2hlbnMgdW5kIGRhcyBGbGVpc2NoZXNzZW4ga29lbm50ZW4gZGllIEVudHdpY2tsdW5nIGRlcwo+IE1lbnNjaGVuIG5hY2ggQW5zaWNodCBicml0aXNjaGVyIEZvcnNjaGVyIGVudHNjaGVpZGVuZCB2b3JhbmdlYnJhY2h0Cj4gaGFiZW4uIElocmUgVGhlc2U6IERhIGVuZXJnaWVyZWljaGUgRmxlaXNjaC1OYWhydW5nIHVuZCBnZWtvY2h0ZXMgRXNzZW4KPiBiZWkgZGVyIFZlcmRhdXVuZyBuaWNodCBzbyB2aWVsIFBsYXR6IGJlbm9ldGlndGVuIHdpZSBQZmxhbnplbmtvc3QsIGhhYmUKPiBzaWNoIGRlciBEYXJtIGRlcyBNZW5zY2hlbiB2ZXJrbGVpbmVybiB1bmQgRW5lcmdpZSBlaW5zcGFyZW4ga29lbm5lbi4uLi4KCkRlciBNZW5zY2ggd3VyZGUgdm9yIHdlbmlnZW4gdGF1c2VuZCBKYWhyZW4gaW0gamV0emlnZW4gU3RhZGl1bQpnZXNjaGFmZmVuLiBFciBpc3QgZWluIGdlbmV0aXNjaGVyIEtsb24sIGRlciBpbiBtZWhyZXJlbiBTdHVmZW4gdm9uCmhvbWluaWRlbiBGb3JtZW4gZHVyY2ggZWluZSBhdXNzZXJpcmRpc2NoZSBJbnRlbGxpZ2VueiBlcnNjaGFmZmVuIHVuZAp2ZXJiZXNzZXJ0IHd1cmRlLiBEaWVzZSBBbGllbnMgaGFiZW4gaWhuIGFscyBBcmJlaXRzcmFzc2UgZnVlciBkaWUgRXJkZQpnZWJyYXVjaHQuIERhcyBQcm9ibGVtIGlzdCwgZGFzIHdpciBkZW5lbiBhdXNnZWxpZWZlcnQgc2luZCwgc29sYW5nZQp3aXIgdW5zIG5pY2h0IHNwaXJpdHVlbGwgd2VpdGVyZW50d2lja2Vsbi4gU2llIGhhYmVuIG5hZW1saWNoIHVuc2VyZQpETlMgc28gZ2ViYXV0LCBkYXNzIHdpciB1bnMgZ2VnZW4gZGVyZW4gR2VkYW5rZW5rcmFlZnRlIG5pY2h0IHdlaHJlbgprb2VubmVuLiBad2FyIHNpbmQgc2llIHZvciA1MDAwIEphaHJlbiBhYmdlcmVpc3QsIGRvY2ggaGFiZW4KbWl0dGxlcndlaWxlIGFuZGVyZSBBbGllbnJhc3NlbiBkaWUgRXJkZSBiZXNpZWRlbHQgdW5kIG51dHplbiBkaWVzZQpLb25zdHJ1a3Rpb25zc2Nod2FlY2hlIGRlcyBtZW5zY2hsaWNoZW4gR2Vpc3RlcyBhdXMgekIgdW0gc2ljaCB6dQp0YXJuZW4uCgpKYW5hCgpOb25uZSwgc2ljaCBkaWUgVHJhZW5lbiBhdXMgZGVuIEF1Z2VuIHdpc2NoZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBlcmxlIGF1cyBkZS5hbHQubmF0dXJoZWlsa3VuZGUgKEdyaW1tYm9ybiwgMjIuIEp1bCAyMDAyLCAwOTozNToxMCk6Cn4jISBybj1Ob25uZSBydD0xMDI3MzIxNzU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNzMyMTc1NApEYSBoYXQgamVtYW5kIHp1dmllbCBNSUIgSUkgZ2VzZWhlbiwgc2NoYWV0emUgaWNoLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGdldHJhZW5rZXZlcmJyYXVjaCBhdWYgUGFydHlzIChBcG9sbG9uaWEsIDIyLiBKdWwgMjAwMiwgMTA6NDE6NTApOgp+IyEgcm49Q2Fzc2FuZHJhIHJ0PTEwMjczMjcyNDQgcmc9cGFydHkKfiMhIHRpZD0xMDI3MTY5NTE3CkFsc28sIENhc3NpZS1TY2hhdHosIGljaCBnbGF1YmUsIHdlbm4ncyBkYSBrZWluIEJpZXIgZ2FlYmUsIHd1ZXJkZXN0IER1CnN0YW5kZXNyZWNodGxpY2ggZXJzY2hvc3NlbiA7bykgCgpBcG8qCmdyaW5zZW5kIHVuZCBmdWVyIGlocmVuIGVpZ2VuZW4gQWxrb2hvbHZvcnJhdCBzb3JnZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBlcmxlIGF1cyBkZS5hbHQubmF0dXJoZWlsa3VuZGUgKEthc3BhciwgMjIuIEp1bCAyMDAyLCAxMjozNDoyOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyNzMyMzMxMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjczMjE3NTQKLi4ub2RlciB6dSB3ZW5pZyA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQZXJsZSBhdXMgZGUuYWx0Lm5hdHVyaGVpbGt1bmRlIChWYW5pb24sIDIyLiBKdWwgMjAwMiwgMTY6NDU6MTEpOgp+IyEgcm49Tm9ubmUgcnQ9MTAyNzMyMTc1NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjczMjE3NTQKRGFzIGVpZ2VudGxpY2ggdG9sbGUgaXN0LCBkYXNzIHNvbGNoZSBMZXV0ZSBkYXMgbWVpc3Qgc29nYXIgZXJuc3QgbWVpbmVuLiBNYW4Ka2FubiBzaWNoIGluIHN0dW5kZW5sYW5nZW4gRGlza3Vzc2lvbmVuIGtvZXN0bGljaCBhbXVlc2llcmVuIDopCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQZXJsZSBhdXMgZGUuYWx0Lm5hdHVyaGVpbGt1bmRlIChBaGFiLCAyMi4gSnVsIDIwMDIsIDE2OjUwOjEwKToKfiMhIHJuPVZhbmlvbiBydD0xMDI3MzQ5MTExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNzMyMTc1NApHbmEsIGhvZXIgYmxvc3MgYXVmLi4uIEljaCBiZXd1bmRlcmUgZGVuIGVpbmVuIGVpbnplbG5lbiwgZGVyIHNpY2ggZGllIE11ZWhlCmdlbWFjaHQgaGF0LCBkaWUvZGVuIGt1ZXJ6bGljaCBpbiBkZS5zY2kuY2hlbWllIGF1ZmdldHJldGVuZW4gTWVtaWstRnJpdHplbgphdXNlaW5hbmRlcnp1bmVobWVuLiBUYWdlbGFuZyA3MDAtOTAwIFplaWxlbiBNdWVsbCBpbiBkZXIgR3J1cHBlIHNpbmQgZWNodAprZWluZSBFcmhvbHVuZy4gVW5kIGFtdWVzYW50IHdhciBfZGFzXyBkYW5uIG5pY2h0IG1laHIuCgpBaG9pLApBaGFiLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUGVybGUgYXVzIGRlLmFsdC5uYXR1cmhlaWxrdW5kZSAoVmFuaW9uLCAyMi4gSnVsIDIwMDIsIDE2OjUzOjM3KToKfiMhIHJuPUFoYWIgcnQ9MTAyNzM0OTQxMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjczMjE3NTQKT2gsIGVzIGdhYiBtYWwgamVtYW5kZW4gaW4gZWluZXIgZGUuc2NpLmFzdHJvbm9taWUgKG9kZXIgc28pIGRlciBlaW5lIGdhbnoKZWlnZW5lIFRoZW9yaWUgenVtIFRoZW1hIEdyYXZpdGF0aW9uIGhhdHRlLiBOZWJlbmJlaSBoYXQgZXIgYXVjaCBub2NoIGVpbmUKaW50ZXJlc3NhbnRlIExvZXN1bmcgenVyIEJlcmVjaG51bmcgdm9uIFBJIGltIEtvcGYgZ2VsaWVmZXJ0LiAKClYqIGhhdCBkYW1hbHMgc2VociBnZWxhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR3VydSBNZWRpdGF0aW9uICMwMTAwMDAwQy4wMDBGRTgwMCAtIFByZXNzIGxlZnQgbW91c2UgYnV0dG9uIHRvIGNvbnRpbnVlLiAoVmFuaW9uLCAyMi4gSnVsIDIwMDIsIDIzOjI5OjU2KToKSGllciBkZXIgR3J1bmQsIHdhcnVtIGRlciBHdXJ1IG1lZGl0aWVydCB1bmQga2VpbmUgbGFuZ3dlaWxpZ2UgRmVobGVybWVsZHVuZwprYW06CiAgaHR0cDovL3d3dy5hbWlnYWZldmVyLmRlL29ubGluZS9ndXJ1Lmh0bWwKClYqIChlbnRzY2h1bGRpZ3Qgc2ljaCBub2NobWFsIGZ1ZXIgZGFzIEVjaG9hbGwpIHVuZCBmcmFndCBzaWNoLCB3ZXIgaGllciBkZW4KR3VydSBub2NoIHBlcnNvZW5saWNoIGthbm50ZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklDSCBrYW5udGUgaWhuIChzY2htb2xsKSAoU2Nod3ViYmVsLCAyMi4gSnVsIDIwMDIsIDIzOjM4OjIwKToKfiMhIHJuPVZhbmlvbiBydD0xMDI3MzczMzk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNzM3MzM5NgpXaWUgZGVyIFRpdGVsIHNjaG9uIHNhZ3QsIEljaCBoYXR0ZSBhdWNoIG1hbCBuZSBUYWJlbGxlLCB3byBkaWUgWmFobGVud2VydGUKc3RhbmRlbiwgd2FzIGRhcyBhbGxlcyB6dSBiZWRldXRlbiBoYXQuIHVuZHVuZHVuZC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IElDSCBrYW5udGUgaWhuIChzY2htb2xsKSAoTXVwZmVsLCAyMy4gSnVsIDIwMDIsIDAwOjI2OjA5KToKfiMhIHJuPVNjaHd1YmJlbCBydD0xMDI3MzczOTAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNzM3MzM5NgpJY2gga2FubnQgaWhuIG5pY2h0IC0gdW5kIGRhcyBpc3QgYXVjaCBndXQgc28gOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3VydSBNZWRpdGF0aW9uICMwMTAwMDAwQy4wMDBGRTgwMCAtIFByZXNzIGxlZnQgbW91c2UgYnV0dG9uIHRvIGNvbnRpbnVlLiAoTXVhZGliLCAyMy4gSnVsIDIwMDIsIDA5OjQzOjM0KToKfiMhIHJuPVZhbmlvbiBydD0xMDI3MzczMzk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNzM3MzM5NgppY2gga2FubnRlIGlobiwgbGVpZGVyIHp1IG9mdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdGFtbXRpc2NoIGluIEJvY2h1bSA/Pz8gKFZhcmRpb24sIDIzLiBKdWwgMjAwMiwgMTY6MDM6MzMpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwMjc0MjY0Njggcmc9dHJlZmZlbgp+IyEgdGlkPTEwMjc0MjUzOTUKSXN0IGV1ZXIgS2luZCBzbyBzY2hsaW1tLCBkYXNzIGRpZSBhbmRlcmVuIGFsbGUgbmljaCBtZWhyIHdvbGxlbj8KClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFN0YW1tdGlzY2ggaW4gQm9jaHVtID8/PyAoUGl0ZmFsbCwgMjMuIEp1bCAyMDAyLCAxNjowNTo0OSk6Cn4jISBybj1WYXJkaW9uIHJ0PTEwMjc0MzMwMTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI3NDI1Mzk1Cm9jaCBnZWdyaWxsdCBnZWh0cyBiZXN0aW1tdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3RhbW10aXNjaCBpbiBCb2NodW0gPz8/IChHcmltbWJvcm4sIDIzLiBKdWwgMjAwMiwgMTY6MTQ6MjUpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDI3NDMzMTQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNzQyNTM5NQpNaXQgbGVja2VyIEhvbmlna3J1c3RlIGdsYXNpZXJ0IGlzdHMgc29nYXIgcmljaHRpZyBzdWVzcy4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3RhbW10aXNjaCBpbiBCb2NodW0gPz8/IChBcG9sbG9uaWEsIDIzLiBKdWwgMjAwMiwgMTY6MjI6MDIpOgp+IyEgcm49VmFyZGlvbiBydD0xMDI3NDMzMDEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNzQyNTM5NQpEYXMgUHJvYmxlbSBpc3QgZWhlciwgZGFzcyBlcyBhdXNzZXIgZGllc2VtIGVpbmVuIGtlaW5lciBhdXNzZXIgTWFtYSBvZGVyIFBhcGEKenVtIFBlbm5lbiBrcmllZ3QsIHdlbm4gc2llIG5hY2h0cyB3YWNoIHdpcmQuIFVuZCBpY2ggbW9lY2h0ZSBlaHJsaWNoIGdlc2FndApuaWVtYW5kZW0gZWluIHVlYmVyIFN0dW5kZW4gbGF1dGhhbHMgYnJ1ZWxsZW5kZXMgQmFsZyBhbmRyZWhlbi4KCkFwbyoKaGF0IHNpY2ggc2Nob24gZGFtaXQgYWJnZWZ1bmRlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3RhbW10aXNjaCBpbiBCb2NodW0gPz8/IChHcmltbWJvcm4sIDIzLiBKdWwgMjAwMiwgMTc6NDQ6MTApOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwMjc0MzQxMjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI3NDI1Mzk1CkhtbT8gQXVmIGVpbmVyIFBhcnR5IHdpcmQgamEgd29obCBub2NoIEtsZWJlYmFuZCBhdWZ6dXRyZWliZW4gc2Vpbi4uLgoKR2RBLCBNZWlzdGVyIGRlciBLaW5kZXJlcnppZWh1bmcgKHNjaHdhcnplciBHdWVydGVsIGluIGtsZWluZSBTY2h3ZXN0ZXIgdW50ZXIKS29udHJvbGxlIGhhbHRlbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFN0YW1tdGlzY2ggaW4gQm9jaHVtID8/PyAoTWFyY3VzLCAyMy4gSnVsIDIwMDIsIDE5OjI4OjU2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI3NDM5MDUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNzQyNTM5NQpEYXMgd2FyIGRhcyBsZXR6dGUgTWFsLCB3byBpY2ggZXVjaCBiZWlkZSBnZXNlaGVuIGhhYmUsIG5pY2h0IHNvIGVyZm9sZ3JlaWNoLgoKQ2lhbywgTWFyY3VzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTdGFtbXRpc2NoIGluIEJvY2h1bSA/Pz8gKEdyaW1tYm9ybiwgMjMuIEp1bCAyMDAyLCAyMDoyOTo1OCk6Cn4jISBybj1NYXJjdXMgcnQ9MTAyNzQ0NTMzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjc0MjUzOTUKRGEgaGF0dGUgc2llIGphIGF1Y2ggSGlsZmUgdm9uIGlocmVtIE1hbm4gdW5kIGhhdCBhdXNzZXJkZW0gRWRnYXIgYmVkcm9odCwgZGFzCmdpbHQgbmljaHQuClNlaXQgc2llIG5pY2h0bWVociBpbiBtZWluZW0gRWluZmx1c3NiZXJlaWNoIGlzdCBsYWV1ZnQgZGllIEZyYXUgZWggYXVzIGRlbQpSdWRlciwgZGFzIGlzdCBzY2hvbiBlcnNjaHJlY2tlbmQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIHd1ZXJkZSBkYXMgYXVjaCBhbm5laG1lbi4uLiAoSHVtbmksIDIzLiBKdWwgMjAwMiwgMjE6MTY6MTQpOgphYmVyIHdpZSBpbW1lciBpcnJ0IG1hbiBzaWNoLi4uCgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBTdGVpbnNdIE1pZnQgaWYgaGFiZSBnZWRhZnQsIGRhZmYgaWYgZnRhZXJrZXIgYmluIGFsZiB3aWUKW01vZXJkZXI6R2Vpc3QgZWluZXMgU3RlaW5zXSBkdSBTdGVpbmNoZW4hICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgoKSHVtbmkgZGVua3QgLiBvIE8gKEdyb2Vzc2VudmVyaGFlbHRuaXNzZSBvcmRuZW4hKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2Vpc3QtcmVpY2ggKE1vcmdvdGgsIDI0LiBKdWwgMjAwMiwgMTI6MDQ6MjgpOgpbU2VoZXI6Tmljb2xhaV0ga29tbXQgd2VyIHp1IGhlbGl4IHBvbWF0YSBnaWdhbnRpY3VzIG1pdD86KSAgICAgICAgICAgICAgICAgICAKW1NlaGVyOlpvb2tdIHdlciBpc24gZGFzPyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltTZWhlcjpad2lyaW9uXSB3aXJkIGRhcyBuZSBhcnQgc2VsYnN0bW9yZGtvbW1hbmRvPyA6KSAgICAgICAgICAgICAgICAgICAgICAgIApbU2VoZXI6Tmljb2xhaV0gam8gYmluIHNjaG9uIGxhbmcgbmltbWVyIHZlcnJlY2t0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKW1NlaGVyOlBpdGZhbGxdIHdhZWggbmNpaHQgc2Nob24gd2llZGVyLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltTZWhlcjpad2lyaW9uXSBobW0sIGtvbW10IG1hbiBuYWNoIGRlbSB0b2Qgd2llZGVyIGFuIGRpZSBhdXNydWVzdHVuZyByYW4gb2RlcgpbU2VoZXI6Wndpcmlvbl0gc3RpcmJ0IG1hbiBzY2hvbiBiZWltIHJlaW5rb21tZW4/IDopICAgICAgICAgICAgICAgICAgICAgICAgICAKW1NlaGVyOk5pY29sYWldIGtlaW4gcGxhbiA6KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltTZWhlcjpad2lyaW9uXSBnZWggbWFsIHZvciwgd2VubiBkdSBsZWJlbmRpZyB3aWVkZXIgcmF1c2tvbW1zdCBrb21tIGljaCBtaXQKW1NlaGVyOlp3aXJpb25dIDstKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkVzIHNpbmQgbnVyIG5vY2ggMTIgU3R1bmRlbiBiaXMgenVyIEV3aWdrZWl0LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApbU2VoZXI6Tmljb2xhaV0gZ2Vpc3QgaXN0IGF1Y2ggbGViZW5kaWcgb2Rlcj86KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKW1NlaGVyOlp3aXJpb25dIGljaCBkYWNodGUgaW1tZXIgZ2Vpc3RlciB3YWVyZW4gdG90PyAgICAgICAgICAgICAgICAgICAgICAgICAgCltTZWhlcjpOaWNvbGFpIHNjaGF1dCBad2lyaW9uIGVudGdlaXN0ZXJ0IGFuXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApbU2VoZXI6Wndpcmlvbl0gZGFzIHdhciBhYmVyIGpldHp0IG5lIGdlaXN0cmVpY2hlIGJlbWVya3VuZyAgICAgICAgICAgICAgICAgICAKW1NlaGVyOk5pY29sYWldIGxhc3MgdW5zIGRvY2ggZGVuIHdlaW5nZWlzdCBmcmFnZW4gOikgICAgICAgICAgICAgICAgICAgICAgICAgCltTZWhlcjpad2lyaW9uXSBpY2ggYmluIGJlZ2Vpc3RlcnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApbU2VoZXI6Tmljb2xhaV0gZ2Vpc3RpZ2UgdmVyd2lycnVuZyBzY2h1ZXR6dCB2b3IgbGFycyAgICAgICAgICAgICAgICAgICAgICAgICAKW1NlaGVyOlp3aXJpb25dIGR1IGdlaHN0IG1pciBhdWYgZGVuIGdlaXN0IDopICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltTZWhlcjpOaWNvbGFpXSBrYXVtIHNjaGxhZWZ0IG1hbiBsYW4tZ2UtaXN0IG1hbiBuaWNodCBtZWhyIG11ZWRlICAgICAgICAgICAgIApbU2VoZXI6Wndpcmlvbl0gYXVhICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCk0qIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTdGFtbXRpc2NoIGluIEJvY2h1bSA/Pz8gKEdyaW1tYm9ybiwgMjUuIEp1bCAyMDAyLCAwODowMDozNik6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTAyNzU3NjY5NCByZz10cmVmZmVuCn4jISB0aWQ9MTAyNzQyNTM5NQouLi4gRnJhdWVudGFnIC4uLiBBbWVyaWNhIC4uLiBDYWlwaXMgLi4uCkVpbiBHbHVlY2sgZGFzcyBpY2ggc2Nob2VuIHdlaXQgd2VnIGJpbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU3RhbW10aXNjaCBpbiBCb2NodW0gPz8/IChBcG9sbG9uaWEsIDI1LiBKdWwgMjAwMiwgMDg6MDc6MjEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjc1NzY4MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI3NDI1Mzk1Ck5hIHVuZCBvYi4gRHUgbXVlc3N0ZXN0IHNjaGxpZXNzbGljaCBkYW1pdCByZWNobmVuLCB2b24gdmVyc2FtbWVsdGVyCkZyYXVlbnNjaGFmdCBuZW4gVHJpdHQgaW4gZGVuIEhpbnRlcm4genUga3JpZWdlbiA7bykKCkFwbyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFN0YW1tdGlzY2ggaW4gQm9jaHVtID8/PyAoR3JpbW1ib3JuLCAyNS4gSnVsIDIwMDIsIDA4OjA5OjQ4KToKfiMhIHJuPUFwb2xsb25pYSBydD0xMDI3NTc3MjQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNzQyNTM5NQpEYSBrcmllZyBpY2ggamEgbmFjaGdlcmFkZSBBbmdzdC4gSWNoIGJpYmJlcmUgc2Nob24uIEFiZXIgZGllc2UgRGVtb25zdHJhdGlvbgp3ZWlibGljaGVyIEZhZWhpZ2tlaXQgenUgbG9naXNjaGVuIERpc2t1c3Npb24gaXN0IG5pY2h0IHdpcmtsaWNoCnVlYmVycmFzY2hlbmQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFN0YW1tdGlzY2ggaW4gQm9jaHVtID8/PyAoQXBvbGxvbmlhLCAyNS4gSnVsIDIwMDIsIDA4OjMyOjI1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI3NTc3Mzg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNzQyNTM5NQpXYXMgd2lsbHN0ZSBkZW5uIGJpdHRlIHVlYmVyIHNvICduZW4gQXJ0aWtlbCBsb2dpc2NoIGRpc2t1dGllcmVuPz8hISBEdSBiaXN0CmZyb2gsIGRhc3MgRHUgd2VpdCB3ZWcgdm9uIERvcnRtdW5kIGJpc3QgdW5kIHdpciBhdWNoIHVuZCBndXQgaXN0IDpvKQoKQXBvKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTWFnaXN0ZXIgKExpYXJhLCAyNS4gSnVsIDIwMDIsIDE3OjA3OjE3KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDI3NjA5NTAwIHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTEwMjc2MDgxOTgKV29taXQgbnVuIGF1Y2gga2xhciB3dXJkZSwgdm9uIHdlbSBkdSBkaWNoICdkdW1tIGFuZ2VtYWNodCcgZnVlaGx0ZXN0LiA7LSkKTnVyIHNvbGx0ZXN0IGR1IG5pY2h0IEFrdGl2L1Bhc3NpdiB2ZXJ3ZWNoc2Vsbi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNYWdpc3RlciAoTGlhcmEsIDI1LiBKdWwgMjAwMiwgMTc6Mjc6MjMpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDI3NjEwNzM1IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTEwMjc2MDgxOTgKRGEgbXVzcyBpY2ggamEgYXVzIG1laW5lbSBIYXVzIHJhdXMsIHVtIHp1IHdpc3NlbiB3YXMgbG9zIGlzdC4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBNYWdpc3RlciAoTGlhcmEsIDI1LiBKdWwgMjAwMiwgMTc6NTg6MjIpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMjc2MTI1ODUgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTAyNzYwODE5OApIYXVzdGUgbWlyIGdsZWljaCBtaXQgJ25lbSBMZWlzdGVuIGF1ZiBkaWUgRmluZ2VyPyA7LSkKSWNoIGRhY2h0ZSwgZGllIFBydWVnZWxzdHJhZmUgc2VpIHZlcmJvdGVuLCBIZXJyIExlaHJlciEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IERlciBSQVVNIChWYW5pb24sIDI1LiBKdWwgMjAwMiwgMTg6MTk6NDQpOgp+IyEgcm49VHJveSBydD0xMDI3NTgyNDcwIHJnPXB1aXoKfiMhIHRpZD0xMDI3NTMxNTM3CkhlaGUsIG5hamEsIHdlbm4gc2llIG5hY2t0IHNpbmQsIGtvZW5uZW4gc2llIGltbWVyIG5vY2ggWmVpY2hlbiBhbiBlaW5lIFdhbmQKbWFjaGVuLiBHZWxiZSB6dW0gQmVpc3BpZWwuCgpWKiwgc2NobGFlZ3Qgdm9yLCBkYXMgYWJlciBuaWNodCB3ZWl0ZXJ6dXZlcmZvbGdlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE1hZ2lzdGVyIChBcmssIDI1LiBKdWwgMjAwMiwgMTg6MzI6NTcpOgp+IyEgcm49TGlhcmEgcnQ9MTAyNzYxMDg0MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjc2MDgxOTgKVGphLCBtdXNzIG1hbiBpbiBSTCBhdWNoLCB6dW1pbmRlc3Qgd2VubiBkZXIgQnJpZWZrYXN0ZW4gbmljaHQgbnVyIGVpbgpIYXVzdHVlcnNjaGxpdHogaXN0LiBBYmVyIGRhZnVlciBzaW5kIGRpZSBJbmZvcyAibGl2ZSIsIHVuZ2VmaWx0ZXJ0IChuYWphKSB1bmQKdWViZXJoYXVwdC4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXR0ZSBTaWcgKE1vcmdvdGgsIDI2LiBKdWwgMjAwMiwgMTA6Mjg6NDkpOgpMaWViZXIgUmF0dGVuIGltIEhhdXMsIGFscyBWZXJ3YW5kdHNjaGFmdAoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdXNzY2hyZWlidW5nLi4uIChMaWFyYSwgMjYuIEp1bCAyMDAyLCAxMTo0MzoxNik6Cn4jISBybj1ab29rIHJ0PTEwMjc2NzY1NDYgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDI3Njc2NTQ2CjpsaWVndCBhdWYgZGVtIEJvZGVuIHZvciBMYWNoZW4uIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBdXNzY2hyZWlidW5nLi4uIChab29rLCAyNi4gSnVsIDIwMDIsIDExOjQ0OjQzKToKfiMhIHJuPUxpYXJhIHJ0PTEwMjc2NzY1OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI3Njc2NTQ2CktsYXIsIG1pdCBMZXZlbCA4MSBiaXN0IER1IGRhIHJlbGF0aXYgZ2VzZWhlbiBhdWNoIHJlY2h0IGFiZ2VzY2hsYWdlbi4gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBdXNzY2hyZWlidW5nLi4uIChQYW5pYywgMjYuIEp1bCAyMDAyLCAxMTo0NjozNyk6Cn4jISBybj1ab29rIHJ0PTEwMjc2NzY2ODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI3Njc2NTQ2CkhtIExldmVsIDIwMCBmdWVyIG5lbiBLYXN0ZW4gQmllci4uLiAqZ3J1ZWJlbCouClp1IHN0cmVzc2lnLCBHbm9tZSBsaWVmZXJ0IGRhcyBCaWVyIGVoIHdlaWwgZXIgZGllIDkwIFNla3VuZGVuIG5pZW1hbHMgcGFja2VuCndpcmQgdW5kIHNvIHN0YWVuZGlnIFdldHRlbiB2ZXJsaWVydCA6KQoqZHVjayoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEF1c3NjaHJlaWJ1bmcuLi4gKFp3aXJpb24sIDI2LiBKdWwgMjAwMiwgMTM6MDc6MjEpOgp+IyEgcm49UGFuaWMgcnQ9MTAyNzY3Njc5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjc2NzY1NDYKR3JvYiB1ZWJlcnNjaGxhZ2VuIGZlaGxlbiBtaXIgd2VuaWdlciBhbHMgMiBCaWxsaW9uZW4gWFAgZnVlciBMZXZlbCAyMDAsIGthbm4KYWxzbyBuaW1tZXIgYWxsenVsYW5nIGRhdWVybiA6KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB6d2lyaW9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBdXNzY2hyZWlidW5nLi4uIChab29rLCAyNi4gSnVsIDIwMDIsIDEzOjA5OjM4KToKfiMhIHJuPVp3aXJpb24gcnQ9MTAyNzY4MTY0MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjc2NzY1NDYKQXVmIFhQcyB3dWVyZGUgaWNoIG5pY2h0IGhvZmZlbi4uLi4gOi0pKQoKWm9vayBncmluc3QgUmlrdXMgYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBdXNzY2hyZWlidW5nLi4uIChDdWNodWxsaW4sIDI2LiBKdWwgMjAwMiwgMTM6MTI6MTYpOgp+IyEgcm49Wm9vayBydD0xMDI3NjgxNzc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNzY3NjU0NgpHbm9tZSBmaW5kZXQgc2Nob24gbmVuIGVudHNwcmVjaGVuZGVuIEJ1Zywga2VpbmUgU29yZ2UuIAoKQ3VjaCA6KSAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEF1c3NjaHJlaWJ1bmcuLi4gKEFyaywgMjYuIEp1bCAyMDAyLCAxMzoyNzowNCk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAyNzY4MTkzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjc2NzY1NDYKV2lyIE1hZ2llciBrb2VubnRlbiBhdWNoIGlubmVuIHVuYmVmcmlzdGV0ZW4gQW5zY2hsdXNzc3RyZWlrIHRyZXRlbiwgZGFubgptdXNzZXIgZGllIFhQIG5laG1lbiA7KQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEF1c3NjaHJlaWJ1bmcuLi4gKEJhbWJpLCAyNi4gSnVsIDIwMDIsIDEzOjI5OjA3KToKfiMhIHJuPUFyayBydD0xMDI3NjgyODI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNzY3NjU0NgpNaXN0LCBpY2ggd2FlciBkYW5uIGphIGRhdm9uIGFhYmhhZW5naWcsIHdlaWwgRHUgc28gdW0gZGllIDkwJSBtZWluZXIgU2FjaGVuCmdlbmVobWlnZW4gbXVzc3QuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBdXNzY2hyZWlidW5nLi4uIChDdWNodWxsaW4sIDI2LiBKdWwgMjAwMiwgMTM6MzA6MzkpOgp+IyEgcm49QmFtYmkgcnQ9MTAyNzY4Mjk0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjc2NzY1NDYKU2NocmVpYiBoYWx0IGVpbiBwYWFyIGhhcnRlIEtpbGxlci1OUENzLCBlaW5lIEdpbGRlIHVuZCBlaW5lIEhlaWxzdGVsbGUuCkRhbm4gYmlzdCBEdSBiaXMgMjAwNCBhdXMgZGVtIFNjaG5laWRlci4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBdXNzY2hyZWlidW5nLi4uIChBcmssIDI2LiBKdWwgMjAwMiwgMTM6NTM6MjApOgp+IyEgcm49QmFtYmkgcnQ9MTAyNzY4Mjk0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjc2NzY1NDYKSG0sICJnZW5laG1pZ2VuIG11c3N0Iiwgc2VociBzdWJ0aWwgOy0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEF1c3NjaHJlaWJ1bmcuLi4gKENyb2Z0LCAyNi4gSnVsIDIwMDIsIDE0OjI5OjE1KToKfiMhIHJuPVJpa3VzIHJ0PTEwMjc2ODY1MjAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDI3Njc2NTQ2ClRyaW5rdCBHb3IgQmllcj8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1ZXMgYXVzIGRlciBGcmF1ZW5mb3JzY2h1bmcgKEFudGhlYSwgMjYuIEp1bCAyMDAyLCAxNDo0MDowNCk6Cn4jISBybj1Ob25uZSBydD0xMDI3Njg2NzI4IHJnPXdpdHplCn4jISB0aWQ9MTAyNzY4NjcyOApIbS4uLiBkYSB3aXJkIHNpY2ggZG9jaCBiZXN0aW1tdCBnbGVpY2ggd2llZGVyIGplbWFuZCBiZXRyb2ZmZW4gZnVlaGxlbiwgb2Rlcj8KQnJhdWNoZW4gd2lyIGVpZ2VudGxpY2ggaGllciBlaW5lbiBCZXRyb2ZmZW5oZWl0c2JlYXVmdHJhZ3Rlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldWVzIGF1cyBkZXIgRnJhdWVuZm9yc2NodW5nIChab29rLCAyNi4gSnVsIDIwMDIsIDE0OjQxOjMwKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwMjc2ODcyNjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI3Njg2NzI4CkJldHJvZmZlbmhlaXRzYmFsYW5jZSwgQW50aGVhLi4uLgoKWm9vayBmcmFndDogV2VyIGJld2lyYnQgc2ljaD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5ldWVzIGF1cyBkZXIgRnJhdWVuZm9yc2NodW5nIChKYWRhd2luLCAyNi4gSnVsIDIwMDIsIDE0OjQyOjE4KToKfiMhIHJuPVpvb2sgcnQ9MTAyNzY4NzI5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjc2ODY3MjgKSWNoIHNjaGxhZ2Ugdm9yLCBkYXMgQW10IG1pdCBkZW0gZGVzIFJNIFNjaGF0dGVud2VsdCB6c2FtbWVuenVsZWdlbi4KSmFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmV1ZXMgYXVzIGRlciBGcmF1ZW5mb3JzY2h1bmcgKEFudGhlYSwgMjYuIEp1bCAyMDAyLCAxNDo0MjoyOCk6Cn4jISBybj1ab29rIHJ0PTEwMjc2ODcyOTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI3Njg2NzI4CkljaCBuaWNodCwgaWNoIGJpbiBkYXp1IHZpZWwgenUgb2Z0IHZvbiBkZXIgQmV0cm9mZmVuaGVpdCBCZXRyb2ZmZW5lcgpiZXRyb2ZmZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpyZXJlIHJvYmluIChCYW1iaSwgMjcuIEp1bCAyMDAyLCAwOTo0MDo0MCk6Cn4jISBvbj1CcmFuIG90PTEwMjc3NTQyMTggb2c9ZC5nZWJpcmdlClZpZWxsZWljaHQgaGFiIGljaCBhdWNoIG51ciBuaWNodCByaWNodGlnIG5hY2hnZXNlaGVuIHVuZCBpbiBXaXJrbGljaGtlaXQgd2FyIEtlaW4gVGVlIGRyaW4/Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5ldWVzIGF1cyBkZXIgRnJhdWVuZm9yc2NodW5nIChIdW1uaSwgMjcuIEp1bCAyMDAyLCAxMToxMDowMik6Cn4jISBybj1BbnRoZWEgcnQ9MTAyNzY4NzM0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjc2ODY3MjgKSWNoIHBsYWVkaWVyZSBlaGVyIGZ1ZXIgZWluZW4gQmVzb2ZmZW5oZWl0c2JlYXVmdHJhZ3Rlbi4gSWNoIHd1ZXJkZSBtaWNoIG5hY2gKZ2VzdGVybiBhYmVuZCBhdWNoIHNlbGJzdCB6dXIgVmVyZnVlZ3VuZyBzdGVsbGVuLi4KCkh1bW5pCihlcmlubmVydW5nc2xvcykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5ldWVzIGF1cyBkZXIgRnJhdWVuZm9yc2NodW5nIChWYW5pb24sIDI3LiBKdWwgMjAwMiwgMTE6NDI6MjMpOgp+IyEgcm49SHVtbmkgcnQ9MTAyNzc2MTAwMiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjc2ODY3MjgKSHVtbmksIER1IG1hY2hzdCBlaW5lbiBEZW5rZmVobGVyLgoKQmVzb2ZmZW5lbmJlYXVmdHJhZ3RlciBtdXNzIGplbWFuZCBzZWluLCBkZXIgbW9lZ2xpY2hzdCBzY2huZWxsIGhpbiB1bmQgd2VnCmlzdCwgbmljaHQgZWluIGJlc29uZGVycyBTdGFuZGhhZnRlci4gU2NobGllc3NsaWNoIG11c3MgZXIgYXVjaCBpbgpOb3RzaXR1YXRpb25lbiBzY2huZWxsIGF1ZiBlaW5lbiBoaW5yZWljaGVuZGVuIFBlZ2VsIGtvbW1lbiwgdW0gRW50c2NoZWlkdW5nZW4KbGFsbGVuIHp1IGtvZW5uZW4uIAoKViosIG5hY2ggZWluZXIgaGFsYmVuIEZsYXNjaGUgV2VpbiBoaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBOZXVlcyBhdXMgZGVyIEZyYXVlbmZvcnNjaHVuZyAoQ2FkcmFjaCwgMjcuIEp1bCAyMDAyLCAxNzoxMTo0OSk6Cn4jISBybj1WYW5pb24gcnQ9MTAyNzc2Mjk0MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjc2ODY3MjgKV2llc28gRGVua2ZlaGxlcj8gSWNoIGZpbmRlIEh1bW5pIGlzIHBlcmZla3QgZ2VlaWduZXQgKmdiCgpDYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBObyBicmFpbiwgbm8gZ2Fpbi4gKExpYXJhLCAyOC4gSnVsIDIwMDIsIDIwOjE4OjQ2KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMjc4ODAyNzggcmc9d3d3Cn4jISB0aWQ9MTAyNzg3NTQxMgpGdWVobHN0IGR1IGRpY2ggaXJnZW5kd2llIGJlc3Nlciwgd2VubiBkdSBzdGFlbmRpZyBtaXQgYW5kZXJlbiBOYW1lbgp1bnRlcnNjaHJlaWJzdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IDAxMDgyMDAyMjAwMEtBUEYgKEdyaW1tYm9ybiwgMjkuIEp1bCAyMDAyLCAxNzozNzoxOSk6Cn4jISBybj1WaW5jZW50IHJ0PTEwMjc5NTY4MzEgcmc9dHJlZmZlbgp+IyEgdGlkPTEwMjc5NDg4MTIKWnVtaW5kZXN0IGluIGVpbmVtIFRlaWxhc3Bla3Qga2FubiBpY2ggaGVsZmVuOiBEZXIgUGZhbm5lbnN0aWVsIGJlZmluZGV0IHNpY2gKbWVpc3QgYW0gUmFuZCBkZXIgUGZhbm5lLCB1bmQgemVpZ3QgdWVibGljaGVyd2Vpc2Ugdm9tIE1pdHRlbHB1bmt0IGRlciBQZmFubmUKd2VnLgoKR2RBLCBIb2JieWtvY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBObyBicmFpbiwgbm8gZ2Fpbi4gKEdsb2luc29uLCAyOS4gSnVsIDIwMDIsIDE5OjEyOjEzKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMjc5NjI2MzEgcmc9d3d3Cn4jISB0aWQ9MTAyNzg3NTQxMgpPaCwgamV0enQgZmFlbGx0IG1pciB3YXMgZWluLiBXaWxsb3cga29lbm50ZSBTY2h1cHBlbmZsZWNodGUgZ2VmYWxsZW4sCnNjaHVldHp0IGRpZSBCb3JrZSB2b3IgV2l0dGVydW5nc2VpbmZsdWVzc2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWtlbCBob2NoIDMgKFNldmVuLCAyOS4gSnVsIDIwMDIsIDIyOjM0OjU1KToKVW5nZWt1ZXJ6dDoKCk9sbGkgcmllY2h0IG5hY2ggS2xvYWtlLgpFaW4gWndlcmcgbGFsbHQ6IFdhZGRlLWhhZGRlLWR1ZGRlLWRhPwpEaWUgcGluZ2VsaWdlIFB1dHpmcmF1IGdlaHQgc2NobmVsbCB3ZWl0ZXIgbmFjaCBOb3JkZW4uCgo3IC0gZ3JpbnN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmdydW56KiAoQ3VjaHVsbGluLCAzMC4gSnVsIDIwMDIsIDA3OjQ5OjQzKToKPiBrd2VyIGFsbGUgYXVzc2VyIGlkbGUKICAgICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERpZSwgMzAuIEp1bCAyMDAyLCAwNzo0OToyOSAoMiBUZWlsbmVobWVyKSAgICAKCkxvZ29uLi4uLi4uLi4uLi4ucyBDdWNodWxsaW4uLi4uLi4uLlMKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEthdHplbndhaGwgKFJvbmRhLCAzMC4gSnVsIDIwMDIsIDIyOjQxOjU1KToKfiMhIHJuPUltZGEgcnQ9MTAyNzk4MTM1MCByZz1hbnplaWdlbgp+IyEgdGlkPTEwMjc5NTk3NDgKRGllc2Vsc2NocmVkZGVyLCBJbWRhPyBJY2ggaGFiIGphIHNjaG9uIGlycmUgU2FjaGVuIHZvbiBEZWluZW0gQXV0by4uLiBhZWhtLi4uCkZhaHJ6ZXVnIGdlaG9lcnQuIEFiZXIgRGllc2Vsc2NocmVkZGVyLi4uLi4gdGllZmVyIGdlbGVndD8KClJvbmRhICpzdGF1bnQgaW1tZXIgd2llZGVyIHVlYmVyIFNjaHdhYmVuIHVuZCBpaHJlIEJyYWV1Y2hlLi4uKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS2F0emVud2FobCAoSW1kYSwgMzEuIEp1bCAyMDAyLCAwMDo0MjoxMyk6Cn4jISBybj1Sb25kYSBydD0xMDI4MDYxNzE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyNzk1OTc0OApUamEgbWVpbiBBdXRvIGthbm4gemF1YmVybi4gRXMgbWFjaHQgYXVzIHN1ZXNzZW4gTWllemVrYXR6ZW4gdW50ZXIgRXJ6ZXVndW5nCmx1c3RpZ2VyIEdlcmFldXNjaGUga2xlYnJpZ2VuIFNjaG1vZGRlciBpbSBSYWRrYXN0ZW4uIEljaCBoYWIgZGFzIHZvciBwYWFyCldvY2hlbiBtYWwgZXZhbHVpZXJ0IChBODEgbWl0bSBLaWVzbGFzdGVyKSwgdW5kIGJpbiBtaXQgZGVtIEVyZ2VibmlzIGluIEJlenVnCmF1ZiBLb25zaXN0ZW56IHVuZCBIb21vZ2VuaXRhZXQgZHVyY2hhdXMgbmljaHQgdW56dWZyaWVkZW4uIAoKQmVzYWd0ZXIgRGllc2Vsc2NocmVkZGVyIGlzdCBqZWRvY2ggYXVzc2NobGllc3NsaWNoIHp1ciBFcnpldWd1bmcgdm9uCnNjaG1hY2toYWZ0ZXIgSHVuZGVmZXJ0aWduYWhydW5nLCBzb3dpZSBLcmFmdC0gdW5kIFNjaG1pZXJzdG9mZmVuIGF1cyBLYXR6ZW4Kdm9uIGJlbGllYmlnZW0gQWx0ZXIgdW5kIEFic3RhbW11bmcga29uemlwaWVydCB3b3JkZW4sIHVuZCBpc3QgdW5zY2hsYWdiYXIgaW4KRHVyY2hzYXR6IHVuZCBQcm9kdWt0cXVhbGl0YWV0LiBEZXIgVmVyYnJhdWNoIGxpZWd0IGJlaSB1bnRlciAxMG1sCkRpZXNlbGtyYWZ0c3RvZmYgcHJvIG1pdHRlbHNjaHdlcmVyIEthdHplLgoKSW1kYS4gR2VodCBkaWUgS2F0emUgenVncnVuZCwgZnJldXQgc2ljaCBkZXIgTWVuc2NoLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVsZmVucGFjay4uIChQaXRmYWxsLCAzMS4gSnVsIDIwMDIsIDEwOjU4OjIwKToKU291IHRlaWx0IERpciBtaXQ6IG9rLCBpY2ggdWViZXJsZWcgbWlyIGhhbHQgZ3JhZCB3aWUgaWNoIG5vY2ggZ2VzY2hpY2t0ZXIKU291IHRlaWx0IERpciBtaXQ6IHVlYmVuIGthbm4gOikKCi4uLgoKW1RvZDpMYXJzXSBFaW5lIERyYWNoZW5zY2hpbGRrcm9ldGUgaGF0IGdlcmFkZSBTb3UgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV1ZXIgTmV3c3RpY2tlciBDaGFubmVsOiBOYWNocmljaHRlbiAoQ3VjaHVsbGluLCAzMS4gSnVsIDIwMDIsIDEwOjU5OjIwKToKfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDI4MTA1MjAwIG9nPWFuemVpZ2VuCn4jISBybj1EZWVwYmx1ZSBydD0xMDI4MTA0OTQyIHJnPWFuemVpZ2VuCn4jISB0aWQ9MTAyODEwMTMyMwpGdWVyIGRlbiBTY2hlaXNzIGhhYmVuIHdpciBqYSBEaWNoLiA7KQoKQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogMDEwODIwMDIyMDAwS0FQRiAoQ3VjaHVsbGluLCAzMS4gSnVsIDIwMDIsIDE0OjAxOjU4KToKfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDI4MTE2OTEyIG9nPXRyZWZmZW4KfiMhIHJuPUJvaW5nIHJ0PTEwMjgxMTY4OTAgcmc9dHJlZmZlbgp+IyEgdGlkPTEwMjc5NDg4MTIKVW5kIHdlbm4gRHUgZGllIE1haWVyaG9mdHVlciBhbGxlaW5lIHdpZWRlciBlaW5oYWVuZ2VuIGthbm5zdC4uLiA7KSAKCkMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFFEU0wgKFpvb2ssIDMxLiBKdWwgMjAwMiwgMTc6MDc6MjQpOgp+IyEgcm49TXVhZGRpYiBydD0xMDI4MTI3OTkxIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwMjgwOTc2NDAKU2Nob24gd2llZGVyIHVtemllaGVuPyBWaWVsbGVpY2h0IGF1Y2ggbnVyIGt1cnpmcmlzdGlnIGFuZ2VvcmRuZXQ/IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xhciBrYW5uIGljaC4gKERvdHosIDMxLiBKdWwgMjAwMiwgMTg6MjI6NDcpOgo6dW50IGdlcmFldXNjaGUgaW0gcmF1bQpLYW5uc3QgRHUgaGllciBlaW4gR2VyYWV1c2NoIGVybGF1c2NoZW4gPwpFaW4gZW50c2V0emxpY2hlciBTY2hyZWkgaGFsbHQgdm9tIEZyaWVkaG9mIGhlcnVlYmVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtsYXIga2FubiBpY2guIChPcmt0b2V0ZXIsIDMxLiBKdWwgMjAwMiwgMTg6MjQ6NTYpOgp+IyEgcm49RG90eiBydD0xMDI4MTMyNTY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyODEzMjU2Nwo6c2NoaWNrdCBEb3R6IHp1bSBPaHJlbmFyenQuCgpXZWlsOiBXZW5uIERvdHogYmVpIGVpbmVtIGVudHNldHpsaWNoZW4gU2NocmVpIG5vY2ggbGF1c2NoZW4gbXVzcyB1bSBkZW4genUKaG9lcmVuLCBkYW5uIGlzdCBkYXMgbm90d2VuZGlnLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJZ25vcmllcmVuLi4uIChHcmltbWJvcm4sIDMxLiBKdWwgMjAwMiwgMTk6MjI6MzMpOgp+IyEgcm49Wm9vayBydD0xMDI4MTMzNDg4IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTAyODEzMzQ4OApXaXJkIGRhbWl0IGF1Y2ggInJsIiBpZ25vcmllcnQ/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSWdub3JpZXJlbi4uLiAoTWFuZHJhZ29uLCAzMS4gSnVsIDIwMDIsIDIwOjAwOjE5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI4MTM2MTUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyODEzMzQ4OAonaWdub3JpZXJlIHJsJyBpc3QgZWluIGdlZmFlaHJsaWNoZXIgYmVmZWhsIC4uLi4gaGludGVyaGVyIHN0ZWNrc3QgZHUgaW4gbmVyCnRvZGVzc2VxdWVueiB1bmQgbWVya3N0IGVzIG5pY2h0IC4uLi4uCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldGRpZ2VzdCAoQ2F0d2VhemxlLCAgMS4gQXVnIDIwMDIsIDA4OjQwOjIzKToKQXVzIGFsdC5zeXNhZG1pbi5yZWNvdmVyeToKCkJlc3Qgdmlld2VkIHdpdGggTmV0c2NhcGUgNC43IGZvciBVTklYL1ggb24gYSAxMjgweDEwMjQgcmVzb2x1dGlvbiB3aXRoIAoyNC1iaXQgY29sb3IgZGVwdGgsIG1heGltdW0gY29udHJhc3QsIG1pbmltdW0gYnJpZ2h0bmVzcywgaW4gYSAxMDAweDk2MCAKd2luZG93IHBsYWNlZCBpbiB0aGUgZXhhY3QgY2VudGVyIG9mIHlvdXIgZGlzcGxheSB3aXRoIHRoaXMgd2luZG93IG1hbmFnZXIgCmNvbmZpZ3VyYXRpb24gW2V0Yy5dIC0tIFVuay4gCgoiLi4ud2l0aCBhIGNvbG91ciB0ZW1wZXJhdHVyZSBvZiA5MzAwSyB1c2luZyBiYXJjbyBwaG9zcGhvcnMgYW5kIGNvbm5lY3RlZCAKdG8gYW4gQUdQIE1hdHJveCBHMjAwIHZpYSA1IGluZGl2aWR1YWwgUkcxNzlCL1UgY29heCBjYWJsZXMgd2l0aCBhIGNvbnRhY3QgCnJlc2lzdGFuY2UgbGVzcyB0aGFuIDAuMSBtT2htLi4uIiAtLSBEYXZpZCBKb3JkYW4gCgpPbiBhbiA8aW5zZXJ0IGltcG9zc2libGUgdG8gZmluZCBtYWtlIG9mIG1vbml0b3I+IGhlcmUuIC0tIFBldGVyIENvcmxldHQgCgpNb25pdG9yPyBJIHdhcyB0aGlua2luZyBhbG9uZyB0aGUgbGluZXMgb2YgYSBVS1AgMTBrIGRhdGEgcHJvamVjdG9yIHBsYWNlZCAKMzE0Mm1tIGZyb20gYSAybSBkaWFnb25hbCBzY3JlZW4gaW4gYSBzZW1pY29uZHVjdG9yIGNsZWFuIHJvb20gd2l0aCBubyAKbW9yZSB0aGFuIDUgMTB1bSBwYXJ0aWNsZXMgcGVyIGN1YmljIG1ldHJlIG9mIGFpci4uLiAKCk5haC4uLiBUaGF0J3MgZ29pbmcgdG9vIGZhci4uLiBXaGF0IHlvdSB3YW50IHRvIHNheSBpcywgIkRvbid0IGxvb2sgYXQgCnRoaXMgcGFnZSwgaXQncyBjcmFwLiIgLS0gRGF2aWQgSm9yZGFuCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IHN0YXRpIGluIEIgKFpvb2ssICAxLiBBdWcgMjAwMiwgMTY6MTU6NTgpOgp+IyEgb249Wm9vayBvdD0xMDI4MjExMzUyIG9nPXRyZWZmZW4KfiMhIHJuPUJyb3RuYWVsIHJ0PTEwMjgyMTEwNjQgcmc9dHJlZmZlbgp+IyEgdGlkPTEwMjgxMTQ2MzIKV2lsbHN0IER1IG5lbiBLbGVydXMtWndlcmcgd2VyZGVuPyA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNvbXB1dGVyLi4uIChNdXBmZWwsICAxLiBBdWcgMjAwMiwgMTg6MjU6NTQpOgpEZXIgUmVjaG5lciBtYWNodCBMYWVybS4gSXN0IGthdW0gYXVzenVoYWx0ZW4uIEljaCBzY2hhdXMgbWlyIGdlbmF1IGFuLCBlcyBpc3QKZGFzIE5ldHp0ZWlsLiBBbHNvIGZsdWdzIGRhcyBEaW5nIGF1c2dldGF1c2NodCBnZWdlbiBlaW4gbGVpc2VzLiBSZWNobmVyIGFuLAppbW1lciBub2NoIGxhdXQuIERlciBDUFUgTHVlZnRlciBicnVtbXQuIE5hamEga2VpbiBQcm9ibGVtLCBkYSBhdWNoIG4gbmV1ZXIKZHJhdWYuIEpldHp0IGFiZXIuLi4gZWluc2NoYWx0ZW4uIERlciBSZWNobmVyIGlzdCBpbW1lciBub2NoIGxhdXQuIERpZQpGZXN0cGxhdHRlLi4uICBpbW1lciB3ZW5uIER1IGRlbmtzdCwgamV0enQgaXNzZXIgbGVpc2UsIGtvbW10IHdhcyBhbmRlcmVzIHVtCmRpZSBFY2tlIGdlbGFlcm10LiAqZ3J1bW1lbCogOykKTW9yZ2VuIGlzdCBkaWUgRmVzdHBsYXR0ZSBkcmFuLiBXb2xsbndlciBkb2NoIG1hbCBzZWhuLi4uCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IENvbXB1dGVyLi4uIChNdWFkaWIsICAxLiBBdWcgMjAwMiwgMTg6Mjk6MTYpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMjgyMTkxNTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI4MjE5MTU0CmthdWYgZGlyIGhhbHQgbmVuIGdlc2NoZWl0ZW4gcmVjaG5lcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa3dlciAoVmFuaW9uLCAgMi4gQXVnIDIwMDIsIDA5OjI1OjI3KToKSWNoIGhhYiBub2NoIGVpbiBCdWcgaW4ga3dlciBnZWZ1bmRlbjoKCiAga3dlciBuaWNodCBzdWVjaHRpZwoKViosIGdhZWhudCBub2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGt3ZXIgKE11cGZlbCwgIDIuIEF1ZyAyMDAyLCAxNDozNTowMSk6Cn4jISBybj1WYW5pb24gcnQ9MTAyODI3MzEyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjgyNzMxMjcKU3RpbW10LiBEYXMgRXJnZWJuaXMgbXVlc3N0ZSB1bWdla2VocnQgc2Vpbi4gImt3ZXIgc3VlY2h0aWciIGdpYnQgbmllbWFuZGVuLAoia3dlciBuaWNodCBzdWVjaHRpZyIgZXJnaWJ0IGFsbGUuLi4KCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBrd2VyIChDdWNodWxsaW4sICAyLiBBdWcgMjAwMiwgMTQ6NDY6MTgpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMjgyOTE3MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI4MjczMTI3CkljaCBiaW4gbmljaHQgc3VlY2h0aWcuIEljaCB1bnRlcmhhbHRlIG1pY2ggbnVyIGdlcm4uIDspCgpDdWNoIC0gc2NoYXV0IGphIG51ciBrdXJ6IG5hY2ggTWFpbCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRvY2gsIExpYXJhLCBoaWVyISAoWm9vaywgIDIuIEF1ZyAyMDAyLCAxOTozNToxNCk6Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBDb21wdXRlci4uLiAoV2lsbG93LCAgMy4gQXVnIDIwMDIsIDE0OjIzOjM0KToKfiMhIHJuPU11YWRpYiBydD0xMDI4MjE5MzU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyODIxOTE1NApvZGVyIG5lbiBsYWVybWdlZGFlbW10ZXMgR2VoYWV1c2UuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IENvbXB1dGVyLi4uIChBbWFyeWxsaXMsICAzLiBBdWcgMjAwMiwgMTQ6MjQ6MDApOgp+IyEgcm49V2lsbG93IHJ0PTEwMjgzNzc0MTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI4MjE5MTU0CmlhIEtsdWdzY2hlaXNzYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IENvbXB1dGVyLi4uIChWYW5pb24sICAzLiBBdWcgMjAwMiwgMTQ6MjY6NTMpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMjgzNzc0NDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI4MjE5MTU0CkR1IEJsb2Nrd2FydCwgRHUhCgpWKgpQUzogSWhyIGhhYnQgZGllIE1lZ2FzY2htYXJybi1TY2h3ZWxsZSB1ZWJlcnNjaHJpdHRlbiAuLi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IENvbXB1dGVyLi4uIChXaWxsb3csICAzLiBBdWcgMjAwMiwgMTQ6Mjc6MjcpOgp+IyEgcm49VmFuaW9uIHJ0PTEwMjgzNzc2MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI4MjE5MTU0CkFlaCwgd2llIGpldHp0PyAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoT2xsaSwgIDUuIEF1ZyAyMDAyLCAxMzo1MTo1Nik6ClZvbiBCcm90bmFlbDogcGVpbmxpY2ggd2lyZHMgd2VubiBpY2ggZ2xlaWNoIHN0ZXJiZSA6KQpbVG9kOkxhcnNdIFNoYWktSHVsdWQgaGF0IGdlcmFkZSBCcm90bmFlbCB1bWdlYnJhY2h0LgoKT2xsaSBncmluc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE1hYXJnLCAgNS4gQXVnIDIwMDIsIDE1OjU1OjQ2KToKRGVpbiBGcmV1bmQgUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiB3YXMgd2FyIHZvcnNpY2h0IGJlaSBzaGFpPyAyMD8gOikKRGVpbiBGcmV1bmQgUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiBvayBwYXNzdCBpY2ggaGFiIGphIG1hZ2llIGF1c3dlaWNoZW4gOikKCldlbmlnIHNwYWV0ZXI6CltUb2Q6TGFyc10gU2hhaS1IdWx1ZCBoYXQgZ2VyYWRlIFBpdGZhbGwgdW1nZWJyYWNodC4KW1RvZDpQaXRmYWxsXSBtdWgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKE1hbmRyYWdvbiwgIDUuIEF1ZyAyMDAyLCAxNTo1NjoyNik6Cn4jISBybj1NYWFyZyBydD0xMDI4NTU1NzQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyODU1NTc0NgpKYS4gQWxzIEthZW1wZmVyIG9obmUgTWFnLiBEcmFwYSBzb2xsdGUgbWFuIHNjaG9uIDMwIG5laG1lbiAuLi4KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCBGTFcgKEJyb3RuYWVsLCAgNS4gQXVnIDIwMDIsIDE2OjA3OjIxKToKRGVpbiBGcmV1bmQgUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiAtdG9kKyBmdWVyIGRpZSBkaWUgZXMgbm9jaCBuaWNodCBoYWJlbiA6KQpbVG9kOkxhcnNdIEVpbiBGZXVlcnNjaHdlaW4gaGF0IGdlcmFkZSBUeWxhayB1bWdlYnJhY2h0LgpbVG9kOkVpbiBGZXVlcnNjaHdlaW5dIFpJU0NILCBTY2hvbiBiaXN0IER1IHZlcmJyYW5udC4uLgoKanVodSwgbGFzc3QgdW5zIHN0ZXJiZW4gOikKYnJvdGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFN0ZWluYmVpc3NlcmFtdWxldHQgKERlZXBibHVlLCAgNS4gQXVnIDIwMDIsIDE4OjAzOjI3KToKfiMhIG9uPURlZXBibHVlIG90PTEwMjg1NjMzOTUgb2c9ZC5nZWJpcmdlCn4jISBybj1ab29rIHJ0PTEwMjg1NjMzMzggcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTAyODU2MTU0NQpEaWVzZSBaZWl0ZW4gd2VyZGVuIHdpZWRlcmtvbW1lbiwgd2VubiBIdW1uaSBlbmRsaWNoIG1pdCBzZWluZW0gLnBsYW4gZHVyY2gKaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV3VyemVscyBCcnVjaHN0dWVjayAoQW1hcnlsbGlzLCAgNS4gQXVnIDIwMDIsIDE4OjA0OjU1KToKfiMhIHJuPUdvciBydD0xMDI4NTYzNDQ5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDI4NDU5NDMzCkZ1ZXIgZGFzIFdvcnQgIlJvbGxlbnNwaWxjaGFyYWNrdGVyIiBzb2xsIERpY2ggZWluIER1ZGVuIGVyc2NobGFnZW4sIEdvciA6KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogV3VyemVscyBCcnVjaHN0dWVjayAoR29yLCAgNS4gQXVnIDIwMDIsIDE4OjA2OjQ3KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDI4NTYzNDk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyODQ1OTQzMwpIYXQgZXIgc2Nob24sIGRydW1tIHNpbmQgbWVpbmUgVWViZXJhdWdlbnd1ZWxzdGUgYXVjaCBzbyBtb25zdHJvZXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdGVpbmJlaXNzZXJhbXVsZXR0IChCYW1iaSwgIDUuIEF1ZyAyMDAyLCAxODozMDoxMyk6Cn4jISBvbj1ab29rIG90PTEwMjg1NjMzMzggb2c9ZC5nZWJpcmdlCn4jISBybj1Cb2luZyBydD0xMDI4NTYzMjE2IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwMjg1NjE1NDUKV2FzIHdhcmVuIGRhcyBmcnVlaGVyIG5vY2ggZnVlciBaZWl0ZW4gYWxzIGRvcnQgcmVpaGVud2Vpc2UgTGV1dGUKZ2VzdG9yYmVuIHNpbmQ/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3RlaW5iZWlzc2VyYW11bGV0dCAoQmFtYmksICA1LiBBdWcgMjAwMiwgMTg6MzA6MTcpOgp+IyEgb249U291IG90PTEwMjg1NjM0MDMgb2c9ZC5nZWJpcmdlCn4jISBybj1Cb2luZyBydD0xMDI4NTYzMjE2IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwMjg1NjE1NDUKT2sgc28ga3Jhc3Mgd29sbHRlIGljaHMgYXVjaCBuaWNodCwgYWJlciBlaW5mYWNoIHJlaW5sYXVmZW4sIGhvbGVuLCByYXVzbGF1ZmVuCmFuZCBpY2ggdWViZXJ0cmllYmVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTdGVpbmJlaXNzZXJhbXVsZXR0IChCYW1iaSwgIDUuIEF1ZyAyMDAyLCAxODozMDoxOCk6Cn4jISBvbj1NYW5kcmFnb24gb3Q9MTAyODU2MzQyNSBvZz1kLmdlYmlyZ2UKfiMhIHJuPVpvb2sgcnQ9MTAyODU2MzMzOCByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDI4NTYxNTQ1CkphLiBIYWVuZyBkYXMgQW11IGluIGRpZSBQYXJhLUhvZWhsZSB3byBkaWUgQmVpc3NlciBzdGFlcmtlciBzaW5kIHVuZCBtYWNoIGluCmRpZSBOb3JtYWx3ZWx0IG5lbiBzY2h3YWVjaGVyZXMgQW11LiBVbmQgc2Nob24gd2lyZCB3aWVkZXIgZ2Vib3VuY2VkIC4uLiBldnRsLgo7bykKCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFN0ZWluYmVpc3NlcmFtdWxldHQgKEJhbWJpLCAgNS4gQXVnIDIwMDIsIDE4OjMwOjE5KToKfiMhIG9uPU9ya3RvZXRlciBvdD0xMDI4NTYzNDM5IG9nPWQuZ2ViaXJnZQp+IyEgcm49Wm9vayBydD0xMDI4NTYzMzM4IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwMjg1NjE1NDUKTGV1dGU/IERhIHNpbmQgbmljaHQgbnVyIFJlaWhlbndlaXNlIExldXRlIGdlc3RvcmJlbiwgZGEgc2luZCBkYW1hbHMgZGllCmJlc3RlbiBkZXIgYmVzdGVuIFJlaWhlbndlaXNlIGdlc3RvcmJlbi4uLgoKRGFtYWxzLi4uIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3RlaW5iZWlzc2VyYW11bGV0dCAoQmFtYmksICA1LiBBdWcgMjAwMiwgMTg6MzA6MjApOgp+IyEgb249Wm9vayBvdD0xMDI4NTYzNDgzIG9nPWQuZ2ViaXJnZQp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMjg1NjM0Mzkgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTAyODU2MTU0NQpEdSBhdWNoPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFN0ZWluYmVpc3NlcmFtdWxldHQgKEJhbWJpLCAgNS4gQXVnIDIwMDIsIDE4OjMwOjIxKToKfiMhIG9uPU11cGZlbCBvdD0xMDI4NTY0Njg1IG9nPWQuZ2ViaXJnZQp+IyEgcm49Wm9vayBydD0xMDI4NTYzNDgzIHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwMjg1NjE1NDUKTmUsIG51ciBkaWUgYmVzdGVuIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU3RlaW5iZWlzc2VyYW11bGV0dCAoQmFtYmksICA1LiBBdWcgMjAwMiwgMTg6MzA6MjIpOgp+IyEgb249T3JrdG9ldGVyIG90PTEwMjg1NjQ3Njggb2c9ZC5nZWJpcmdlCn4jISBybj1NdXBmZWwgcnQ9MTAyODU2NDY4NSByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDI4NTYxNTQ1CkljaCBtdXNzIE11cGZlbCBkYSB6dXN0aW1tZW4sIGRhcyB3YXIgenUgZWluZXIgWmVpdCwgZGEgd2FyIGljaCBub2NoIFNwaWVsZXIsCm5pY2h0IGVpbm1hbCBTZWhlci4uLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFhYWFhYWhqYS4gKE9sbGksICA1LiBBdWcgMjAwMiwgMjA6NDA6MzgpOgpbQWxsZ2VtZWluOktlbm55XSB3aWUgaGVpc3N0IGVpZ2VudGxpY2ggZGllIHdlaWJsaWNoZSBrcmFua2Vuc2Nod2VzdGVyPyA6KQpbTW9lcmRlcjpHZWlzdCBKaW1teXNdIEhhdWtlPwoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUeXBvLVphdWJlcnRyYW5rIChCb2luZywgIDYuIEF1ZyAyMDAyLCAxMTowMToxMyk6Cn4jISBvbj1WYXJkaW9uIG90PTEwMjg2MjQ0NTUgb2c9ZC5nZWJpcmdlCn4jISBybj1CYW1iaSBydD0xMDI4NjI0MzQ3IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwMjg2MjQwNDEKS2xhcmVyIEZhbGwsICJ0eXBvIiBnZWhvZXJ0IGFiZ2V3ZXJ0ZXQuIE51ciBub2NoIGVpbiAidHlwbyIgYWxsZXIgMTUgbWluIDotKQoKVmFyZGlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVHlwby1aYXViZXJ0cmFuayAoQmFtYmksICA2LiBBdWcgMjAwMiwgMTE6MTI6NDEpOgp+IyEgb249UGl0ZmFsbCBvdD0xMDI4NjI1MTIxIG9nPWQuZ2ViaXJnZQp+IyEgcm49Q2FkcmFjaCBydD0xMDI4NjI0NzUwIHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwMjg2MjQwNDEKb2RlciBtaXQgdGVhbSBhdWZsb2VzZW4gb2RlciBleHAgYWJ6aWVoZW4gb2RlciBmcHMgbG9lc2NoZW4gb2RlciBla3MgYXVzdHJhZ2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUeXBvLVphdWJlcnRyYW5rIChCYW1iaSwgIDYuIEF1ZyAyMDAyLCAxMTozNzowOSk6Cn4jISBvbj1aYXJuaXlhIG90PTEwMjg2MjYyODAgb2c9ZC5nZWJpcmdlCn4jISBybj1DYWRyYWNoIHJ0PTEwMjg2MjQ3NTAgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTAyODYyNDA0MQp1bmQgZGVyIHJhdW0gc29sbHRlIHJhbmRvbW1hZXNzaWcgaW1tZXIgd29hbmRlcnMgc2Vpbi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogV3VyemVscyBCcnVjaHN0dWVjayAoUGl0ZmFsbCwgIDYuIEF1ZyAyMDAyLCAxNDoxMzo1OCk6Cn4jISBybj1NdWFkaWIgcnQ9MTAyODYzNTk4OCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAyODQ1OTQzMwp3aWUgd2FyIGRhcyBmcnVlaGVyPwplaW4gcmVoIGtvbW10IGFuIDopCi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogV3VyemVscyBCcnVjaHN0dWVjayAoQmFtYmksICA2LiBBdWcgMjAwMiwgMTk6NTA6MDApOgp+IyEgcm49UGl0ZmFsbCBydD0xMDI4NjM2MDM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyODQ1OTQzMwpXYXM/CldpZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFybXNjaGllbmVuIChQYXJhY2Vsc3VzKSAoQ3VjaHVsbGluLCAgNi4gQXVnIDIwMDIsIDIzOjMxOjU3KToKfiMhIHJuPUFybWl0YWdlIHJ0PTEwMjg2Njg2OTkgcmc9ZC53YWxkCn4jISB0aWQ9MTAyODU4NDczMApJY2ggZ2xhdWJlLCBkYXNzIFBhZHJlaWMgZGEgaW56d2lzY2hlbiBkcnVlYmVyIHN0ZWh0LiBXZW5uIGVyIGVzIG1pcgp3aXJrbGljaCBub2NoIHVlYmVsIG5hZWhtZSwgZGFzcyBpY2ggaWhuIG5pY2h0IG1hZyB1bmQgZnVlciB1bmZhZWhpZwpoYWx0ZSwgd3VlcmRlIGVyIG1pY2ggZGllcyB3aXNzZW4gbGFzc2VuLiBNYW4ga2FubiB2aWVsZXMgdWViZXIgaWhuCnNhZ2VuLCBhYmVyIHNlaW5lIE1laW51bmcgdGFldGUgZXIgbmljaHQgenVydWVja2hhbHRlbi4gVW5kIGRhc3MgaWNoCnZpZWxsZWljaHQgbmljaHQgZGVyIGVpbnppZ2UgYmluLCBkZXIgc28gdWViZXIgaWhuIGRlbmt0LCBhYmVyIGdld2lzcwpuaWNodCBBTExFIGRhc3NlbGJlIGRlbmtlbiwgaXN0IGluendpc2NoZW4gZG9jaCBhdWNoIGtsYXIsIGViZW5zbyB3aWUKYXVjaCBtaWNoIGVpbiBnZXdpc3NlciBUZWlsIGRlcyBNdWRzIGZ1ZXIgYXJyb2dhbnRlbiB2ZXJncmVpc3RlbiBTcGlubmVyCmhhZWx0LiBVbmQgYXVjaCBkYXMgbmljaHQgb2huZSBHcnVuZCwgc2NoYWV0emUgaWNoLgoKSWNoIGhhYmUgZWluZW4gcGFzc2VuZGVuIE5hbWVuIGZ1ZXIgZGVuIEdhZyBnZWJyYXVjaHQsIGljaCBoYXR0ZSBlaW5lbgpnZWZ1bmRlbi4gRWluZW4sIGRlciBLRUlORU4gbmV1ZW4gS3JpZWcgYW5nZWZhbmdlbiBoYWV0dGUgd2llIHouQi4gZGllCktsYW1tZXJ1bmcgaW4gZy56IFNjaGxlaWNoZXIgYmV0cmVmZmVuZC4gRnVlciBkaWUgaWNoIHRhdHNhZWNobGljaCAKZ2VydWVndCB3b3JkZW4gYmluIHVuZCB3byBpY2ggYXVjaCB0YXRzYWVjaGxpY2ggZWluc2VoZSwgZGFzcyBlcyBuaWNodAphbmdlYnJhY2h0IHdhci4gV2FzIG5hdHVlcmxpY2ggbmljaHQgaGVpc3N0LCBkYXNzIGljaCBiZXRyZWZmZW5kZW4gCk1hZ2llciBuaWNodCBmdWVyIFtwYXNzZW5kZXMgQWRqZWt0aXYgZWluZnVlZ2VuXSBoYWx0ZS4KClJpY2h0aWdlIFJ1YnJpaz8gV2Vpc3MgbmljaHQuIEVnYWwuCgpDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBcm1zY2hpZW5lbiAoUGFyYWNlbHN1cykgKExpYXJhLCAgNi4gQXVnIDIwMDIsIDIzOjMzOjU5KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDI4NjY5NTE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyODU4NDczMApEdSBoYXN0IGF1Y2ggc2Nob25tYWwgd2VzZW50bGljaCB3ZW5pZ2VyIHdlaXRzY2h3ZWlmaWdlClNlbGJzdGdlc3ByYWVjaHNhcnRpa2VsIGdlc2NocmllYmVuIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQXJtc2NoaWVuZW4gKFBhcmFjZWxzdXMpIChNdXBmZWwsICA2LiBBdWcgMjAwMiwgMjM6Mzg6NDkpOgp+IyEgcm49TGlhcmEgcnQ9MTAyODY2OTYzOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjg1ODQ3MzAKR2VuYXUsIExpYXJhLiBVbmQgaWNoIHZlcm1pc3NlIGRpZSBnZXdvaG50ZSBUaWVmZSBkZXIgQXJ0aWtlbC4gRGllc2VyIGhpZXIKbWFjaHQgZG9jaGogZWluZW4gZ2V3aXNzZW4sIGFiZ2VoZXR6dGVuIEVpbmRydWNrLiBUcyA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBBcm1zY2hpZW5lbiAoUGFyYWNlbHN1cykgKEFtYXJ5bGxpcywgIDYuIEF1ZyAyMDAyLCAyMzo1ODo0NSk6Cn4jISBybj1NdXBmZWwgcnQ9MTAyODY2OTkyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjg1ODQ3MzAKSW4gdW5zZXJlciBzY2huZWxsZWJpZ2VuIFplaXQgbXVzcyBsZWlkZXIgaW1tZXIgbWVociBkaWUgSGVrdGlrIHVuZCBFaWxlIGRlcgpHcnVlbmRsaWNoa2VpdCB1bmQgVGllZmUgd2VpY2hlbi4KCkFtYSosIHdlaXNlIG5pY2tlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYWVtcGZlci1FbGZlbiAoR29yLCAgNy4gQXVnIDIwMDIsIDExOjI3OjU1KToKWFhYIHRlaWx0IERpciBtaXQ6IGltIG1vbSBzb2xsdGUgaWNoIG5vY2ggYmVmb2VyZGVydW5nc3NwZWVyZSBoYWJlbgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFd1cnplbHMgQnJ1Y2hzdHVlY2sgKFZhbmlvbiwgIDcuIEF1ZyAyMDAyLCAyMDoyNTo1NSk6Cn4jISBybj1UYWJpdGhhIHJ0PTEwMjg3NDQ0NzMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMjg0NTk0MzMKRXMgaXN0IGVtcGlyaXNjaCBlcndpZXNlbiwgZGFzcyBuaWNobWFsIGRpZSBIYWVsZnRlIGRlciBMZXV0ZSBBcnRpa2VsLCBkaWUKbGFlbmdlciBhbHMgZWluZSBCaWxkc2NoaXJtc2VpdGUgc2luZCwgbGllc3N0LgoKRWJlbiBncmFkZSBoYWIgaWNoIHZvciBtZWluZW0gZWlnZW5lbiBNb25pdG9yIGplbWFuZGVuIGVudGRlY2t0LCBkZXIgc2ljaCBpbgpkZXIgUmVnZWwgc28gdmVyaGFlbHQuCgpWKiwgc2NobWFycm50LgoKUFM6IE5hdHVlcmxpY2ggbGllZmVyIGljaCBrZWluZSBRdWVsbGUuIEljaCBmYW5nIGRvY2ggbmljaHQgYW4gbWl0IEZha3RlbiB6dQphcmd1bWVudGllcmVuIC0gd28ga29tbWVuIHdpciBkZW5uIGRhIGhpbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBXdXJ6ZWxzIEJydWNoc3R1ZWNrIChWYW5pb24sICA3LiBBdWcgMjAwMiwgMjA6MzA6MDYpOgp+IyEgcm49VmFuaW9uIHJ0PTEwMjg3NDQ3NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI4NDU5NDMzCldvIG1hbiBtaXIgZ2VzYWd0IGhhdCwgZGFzcyBpY2ggcGVyc29lbmxpY2ggaW4gZGllc2VtIEFydGlrZWwgZXJ3YWVobnQgd2VyZGUsCmhhYiBpY2ggenVtaW5kZXN0IGRpZXNlIFN0ZWxsZSBnZWxlc2VuIDopCgpWKgpQUzogSWNoIGxpZWJlIFBTIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogV3VyemVscyBCcnVjaHN0dWVjayAoQW1hcnlsbGlzLCAgNy4gQXVnIDIwMDIsIDIyOjEwOjQ1KToKfiMhIHJuPUJvaW5nIHJ0PTEwMjg3NTA0MDMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMjg0NTk0MzMKVW5kIHdpZXNvIGlzdCBkYXMga2VpbmUgQXVmd2VydHVuZz8KCkRhcyBLbnVkZGVsbiBtYWNodCBkZW4gS2FlbXBmZXIgd29obCBnbHVlY2tsaWNoIHVuZCBzdGFlcmt0IHNlaW5lIFBzeWNoZSwKd2VsY2hlIGRhbm4gc29mb3J0IGRlbiBLYW1wZndpbGxlbiBzdGFlcmt0LCBkaWUgZXMgaWhtIGVybW9lZ2xpY2h0LCBkZW4gR2VnbmVyCnNvZm9ydCBuaWVkZXJ6dXJpbmdlbi4uLiBvZGVyIG5pY2g/CgpBbWEqLCB3dXNzdGUgaW1tZXIsIGRhc3MgZGllIEthZW1wZmVyIG5lIEthbXBma251ZGRsZXJ0cnVwcGUgc2luZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFd1cnplbHMgQnJ1Y2hzdHVlY2sgKEJvaW5nLCAgNy4gQXVnIDIwMDIsIDIyOjE2OjI1KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDI4NzUxMDQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyODQ1OTQzMwpJY2ggb3V0ZSBtaWNoIGhpZXIgb2VmZmVudGxpY2ggLi4uIGljaCBoYWIgZGllc2UgQXVmd2VydHVuZyBzb2dhciBoaW50ZXIKZGVtIFJ1ZWNrZW4gZGVzIEJhbGFuY2UtVGVhbXMgdmVyd3VyemVsdCEgR2Vpc3NlbHQgbWljaCEgR2VidCBtaXIgbWVpbmUKZ2VyZWNodGUgU3RyYWZlIQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogV3VyemVscyBCcnVjaHN0dWVjayAoVmFuaW9uLCAgNy4gQXVnIDIwMDIsIDIyOjE3OjQ5KToKfiMhIHJuPUJvaW5nIHJ0PTEwMjg3NTEzODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI4NDU5NDMzClp1ciBTdHJhZmUgbXVzc3QgZHUgZnVlciBlaW4gSmFociBkaWUgQmFsYW5jZS1BcnRpa2VsIHBvc3Rlbj8KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogV3VyemVscyBCcnVjaHN0dWVjayAoVGVrdHVrbywgIDcuIEF1ZyAyMDAyLCAyMjoxODoxNSk6Cn4jISBybj1WYW5pb24gcnQ9MTAyODc1MTQ2OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjg0NTk0MzMKVW5kIGRpZSBQcnVlZ2VsIGVpbnN0ZWNrZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBXdXJ6ZWxzIEJydWNoc3R1ZWNrIChWYW5pb24sICA3LiBBdWcgMjAwMiwgMjI6MTg6NDUpOgp+IyEgcm49VGVrdHVrbyBydD0xMDI4NzUxNDk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyODQ1OTQzMwpEYXMgcGFzc2llcnQgZG9jaCBhdXRvbWF0aXNjaC4gRGFzIGJyYXVjaHQgbmljaHQgaW5zIFVydGVpbC4gCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFd1cnplbHMgQnJ1Y2hzdHVlY2sgKEJvaW5nLCAgNy4gQXVnIDIwMDIsIDIyOjQ4OjU4KToKfiMhIHJuPVZhbmlvbiBydD0xMDI4NzUxNTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyODQ1OTQzMwpJY2ggZ2xhdWIgZGFzIGhhYiBpY2ggbGFuZyBnZW51ZyBnZW1hY2h0IC4uLiA7KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOb2NobWFsIEFsdC5TeXNhZG1pbi5SZWNvdmVyeSAoQ2F0d2VhemxlLCAgOC4gQXVnIDIwMDIsIDE1OjAxOjI1KToKCkFuIEVtYWNzIHJlZmVyZW5jZSBtdWcgaXMgd2hhdCBJIHdhbnQuIEl0IHdvdWxkIGhvbGQgdGVuIGdhbGxvbnMgb2YgY29mZmVlLiAKLS0gU3RldmUgVmFuRGV2ZW5kZXIgCgpBbmQsIG5vIGRvdWJ0LCBoYXZlIGEgbGlkIHRoYXQgY291bGQgb25seSBiZSByZW1vdmVkIHdpdGggYW4gb2JzY3VyZSBmaW5nZXIgCmNvbWJpbmF0aW9uIHJlcXVpcmluZyBib3RoIGhhbmRzLiAoQ3RybC1BbHQtTWV0YS1YIGdpbW1lLXRoZS1kYW1uLWNvZmZlZSkgCi0tIFdpbGxpYW0gQmVlZ2xlIAoKTm8sIGFuIEVtYWNzIHJlZmVyZW5jZSBtdWcgd291bGQgbm90IGp1c3QgaG9sZCAxMCBnYWxsb25zLCBub3QgZXZlbiBqdXN0IApicmV3IHRoZSBjb2ZmZWUgZm9yIHlvdSwgaXQgd291bGQgZ3JpbmQgaXQsIHJvYXN0IGl0IGFuZCBncm93IGl0IChub3QgCm5lY2Vzc2FyaWx5IGluIHRoYXQgb3JkZXIpLiBJdCB3b3VsZCBhbHNvIHNpbmcgdGhlIG5hdGlvbmFsIGFudGhlbSAod2hpY2ggCm9uZT8gQWxsIG9mIHRoZW0gLSBidXQgaXQgd291bGQgY2hlY2sgd2hlcmUgaXQgd2FzIGZpcnN0KSwgcGxheSBiYWdwaXBlcyAKYW5kIGRvIHRoZSBkaXNoZXMuIApPZiBjb3Vyc2UsIG5vLW9uZSB3b3VsZCBldmVyIGhhdmUgYSBiaWcgZW5vdWdoIHRhYmxlIHRvIHB1dCBpdCBvbiBhbmQgaXQgCndvdWxkIHRha2UgZm9yZXZlciB0byBkbyBhbnl0aGluZywgYnV0IHRob3NlIGFyZSBtaW5vciBidWdzIC0geW91IGp1c3QgCm5lZWQgdG8gdXBncmFkZSB5b3VyIGhvdXNlLiAKLS0gQ2hyaXMgUm92ZXJzCgotLS0tLQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogV3VyemVscyBCcnVjaHN0dWVjayAoUGl0ZmFsbCwgIDguIEF1ZyAyMDAyLCAxODoxMDozNik6Cn4jISBvbj1QaXRmYWxsIG90PTEwMjg4MjMwMjcgb2c9ZGlza3Vzc2lvbgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMjg4MjI0OTEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMjg0NTk0MzMKd2FzIGlzdCBlaW4gdGVhbT8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBXdXJ6ZWxzIEJydWNoc3R1ZWNrIChQaXRmYWxsLCAgOC4gQXVnIDIwMDIsIDE4OjQ0OjU0KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDI4ODI1MDU0IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDI4NDU5NDMzCmRhcmYgaWNoIGRhbm4gbW9uc3RlciBhdWZ3ZXJ0ZW4/CmluIGRlbSBmYWxsIGJld2VyYiBpY2ggbWljaCBoaWVybWl0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogV3VyemVscyBCcnVjaHN0dWVjayAoTWFuZHJhZ29uLCAgOC4gQXVnIDIwMDIsIDE4OjQ1OjI2KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAyODgyNTA5NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjg0NTk0MzMKRWluZmFjaCBkaWUgQXVzcnVlc3R1bmcgYWJ3ZXJ0ZW4uIEhhdCBkZW4gZ2xlaWNoZW4gRWZmZWt0LgoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogV3VyemVscyBCcnVjaHN0dWVjayAoQ3JvZnQsICA4LiBBdWcgMjAwMiwgMTg6NDY6MDcpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDI4ODI1MDk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyODQ1OTQzMwpIbS4gIEJlc3NlciBkaWNoIGFid2VydGVuLiAgRGFzIGhhdCBkYW5uIGF1cyBkZWluZXIgUGVyc3Bla3RpdmUgZGVuIGdsZWljaGVuCkVmZmVrdCA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBXdXJ6ZWxzIEJydWNoc3R1ZWNrIChQaXRmYWxsLCAgOC4gQXVnIDIwMDIsIDE4OjQ2OjI3KToKfiMhIHJuPUNyb2Z0IHJ0PTEwMjg4MjUxNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI4NDU5NDMzCnBmZmZmZmZmZmZ0IGljaCByZWQgZGF2b24gZGllIGZ1ZXIgbWVpbmVuIHphdWJlcmVyIHNjaHdlcmVyIHp1IG1hY2hlbiA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBXdXJ6ZWxzIEJydWNoc3R1ZWNrIChDcm9mdCwgIDguIEF1ZyAyMDAyLCAxODo0NzowNSk6Cn4jISBybj1QaXRmYWxsIHJ0PTEwMjg4MjUxODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI4NDU5NDMzCk9rLiBEaWNoIHVuZCBkZWluZSBad2VpdGllcyA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBXdXJ6ZWxzIEJydWNoc3R1ZWNrIChEZWVwYmx1ZSwgIDguIEF1ZyAyMDAyLCAxOToxNDozOCk6Cn4jISBybj1Hbm9tZSBydD0xMDI4ODI0Mjc3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDI4NDU5NDMzCkFjaCwgYWxzIFp3ZXJnIGhhc3QgRHUgbmUgZGlja2UgS3J1c3RlLCBEdSBzY2hhZmZzdCBkYXMgc2Nob24gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGVpbmVyIEJ1Z2ZpeCAoWm9vaywgIDkuIEF1ZyAyMDAyLCAxMDoxMToyMik6Cn4jISBybj1BcmsgcnQ9MTAyODg0MzU4NyByZz1kLnd1ZXN0ZQp+IyEgdGlkPTEwMjg4NDM1ODcKRXJrYWVsdGV0PyA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEFybXNjaGllbmVuIChQYXJhY2Vsc3VzKSAoRGVlcGJsdWUsICA5LiBBdWcgMjAwMiwgMTA6NTQ6MDApOgp+IyEgb249RGVlcGJsdWUgb3Q9MTAyODg4MzA4MyBvZz1kLndhbGQKfiMhIHJuPVBpbGdyaW0gcnQ9MTAyODg4Mjk0MiByZz1kLndhbGQKfiMhIHRpZD0xMDI4NTg0NzMwCkdlbmF1LCByZWljaHQgZG9jaCwgd2VubiBzaWUgZnVlciBLYWVtcGZlciBndXQgc2luZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQmVmZWhsZSB2b24gb2JlbiBhdXNnZWZ1ZWhydCAoRGVlcGJsdWUsICA5LiBBdWcgMjAwMiwgMTI6MDI6MjgpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDI4ODgzOTc1IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTEwMjg4NzgxNDIKTm9lLCBkZXIgd2lyZCB6dSBuZW0gdmVybmljaHRldAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogMDgwODIwMDIyMDAwS0FCTSAoUm9uZGEsICA5LiBBdWcgMjAwMiwgMjM6Mjc6MzcpOgp+IyEgcm49TXVhZGliIHJ0PTEwMjg3MDkzOTYgcmc9dHJlZmZlbgp+IyEgdGlkPTEwMjgzODQxNTMKSG1wZi4gQWxzbyBNdWFkaWIsIGljaCBzb2xsdCBEaXIgbmFjaGZhaHJlbiB6dXIgS25laXBlIC0gamE/IEVyaW5uZXIgaWNoIG1pY2gKcmljaHRpZywgb2RlciB3YXJzdCBEdSBuaWNodCBiZWltIFN0YW1tdGlzY2gsIGphPyBTYWcgYml0dGUgbmljaHQgRHUgaGFzdCBEaWNoCnZlcmZhaHJlbiA7LSkKClJvbmRhICpoYXR0ZSBkcmVpIEJlaWZhaHJlcihpbillbi4gVW5kIGhhdHMgdHJvdHogd3VzZWxuZGVyIFNrYXRlciBnZWZ1bmRlbi4KQWVobS4gT2suIEZpbmRlbiBsYXNzZW4uKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFd1cnplbHMgQnJ1Y2hzdHVlY2sgKFdpbGxvdywgMTAuIEF1ZyAyMDAyLCAwMjowMTo1Myk6Cn4jISBybj1QaXRmYWxsIHJ0PTEwMjg4MjMwMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI4NDU5NDMzCmdhbnogZWluZmFjaDogVG9sbCBFaW4gQW5kZXJlciBNYWNodHMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRvZ2dlbiBzaW5kIGFsc28gZG9jaCBLYW1wZmh1bmRlLi4uIChTb2xteXIsIDExLiBBdWcgMjAwMiwgMTE6MDc6MDApOgogW0FiZW50ZXVlcjpCcmV3ZXJdIHdpZSBrb21tZSBpY2ggYW4gZGVuIGRvZ2dlbiBkZXMgbXVlbGxlcnMgdm9yYmVpPwogW1RvZDpMYXJzXSBFaW5lIERvZ2dlIGhhdCBnZXJhZGUgQnJld2VyIHVtZ2VicmFjaHQuCgpTb2wqLCBzY2htdW56ZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbGFsYSAoUGFuaWMsIDExLiBBdWcgMjAwMiwgMTQ6Mzk6MDIpOgpbU2VoZXI6RGF5bGlnaHRdIGplbWFuZCBsdXN0IGltIHNjaGFjaHQgbmVuIHNtcyB6dWhvbGVuIGt1cnogOikKW1NlaGVyOkthdmFsaWVyXSBlaW4gbWFnaXN0ZXIgZnJhZ3Qgb2Igd2VyIGRlbiBzY2hhY2h0IGxlZXJtYWNoZW4ga2Fubj8KW1NlaGVyOkthdmFsaWVyIGdydWViZWx0XQouLi4KW1RvZDpMYXJzXSBTY2hyZWluZW1ha2VycyBpaHJlIFNjaHdlc3RlciBoYXQgZ2VyYWRlIEthdmFsaWVyIHVtZ2VicmFjaHQuCltUb2Q6U2NocmVpbmVtYWtlcnMgaWhyZSBTY2h3ZXN0ZXJdIFNjaGljaHQgaW0gU2NoYWNodCEKW1RvZDpLYXZhbGllcl0gbXVoCgouLi4gbmljaHQgenUgdmVyZ2Vzc2VuOgpbPE1hc3RlUj46UGl0ZmFsbF0gbAoKKmcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiAwODA4MjAwMjIwMDBLQUJNIChNdWFkaWIsIDExLiBBdWcgMjAwMiwgMjA6NTA6MjIpOgp+IyEgcm49Um9uZGEgcnQ9MTAyODkyODQ1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjgzODQxNTMKaWNoIHdhciBrcmFuayA6KAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbWljcm9zb2Z0IChEZWVwYmx1ZSwgMTIuIEF1ZyAyMDAyLCAxMzoxMToxMCk6CkRlYWN0aXZhdGluZyBtaWNyb3NvZnQgbW9kZSAuLi4uIHBsZWFzZSB3YWl0IC4uLi4gb3BlcmF0aW9uIGNvbXBsZXRlZC4gCkl0IGlzIG5vdyBwb3NzaWJsZSB0byBzYWZlbHkgdHVybiBvbiB0aGUgYnJhaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTY2h1dHpoYW5kIGV0Yy4gKEdyaW1tYm9ybiwgMTIuIEF1ZyAyMDAyLCAxNToxNzozMSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTAyOTE1ODI0MyBvZz1naWxkZW4ua2xlcnVzCn4jISBybj1BcmsgcnQ9MTAyOTE1Nzk0OSByZz1naWxkZW4ua2xlcnVzCn4jISB0aWQ9MTAyODg4Mzc4MgpHdXRlIElkZWU6IFdlbm4gamVtYW5kIGdlc3RvcmJlbiBpc3QgbGFldWZ0IGRpZSBUb2Rlc3NlcXVlbnogYXVmIGRlbQpHaWxkZW5rYW5hbC4gVW50ZXIgZGVtIE5hbWVuIGRlcyBCZXRyb2ZmZW5lbiwgbmF0dWVybGljaCwgZGFtaXQgZGFzIG5pY2h0IHNvCmVpbmZhY2ggcmF1c3p1ZmlsdGVybiBpc3QuICJTb3ppYWxlIFRvZGVzZm9sZ2VudmVyc2NoYWVyZnVuZyIsIGRhcyBpc3QgZXMKZG9jaDogV2VyIHN0aXJidCBtYWNodCBzaWNoIGJlaSBzZWluZXIgR2lsZGUgdW5iZWxpZWJ0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGFhYWEgOikgKExlaWJuaXosIDEyLiBBdWcgMjAwMiwgMjI6MDg6MjcpOgoKSW1kYSB0ZWlsdCBEaXIgbWl0OiBpY2ggbWFnIGRvY2ggYmxvbmRlIGtlcmxlCgpsZWliaSAtIGVyc3RhdW50CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWhhYWFhIDopIChCYW1iaSwgMTMuIEF1ZyAyMDAyLCAxMDowOToyMyk6Cn4jISBybj1MZWlibml6IHJ0PTEwMjkxODI5MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5MTgyOTA3CkhhYiBpY2ggZWluIEdsdWVjaywgZGFzcyB3aXIgbnVyIFBhaW50YmFsbCBtaXRlaW5hbmRlciBzcGllbGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhaGFhYWEgOikgKExlaWJuaXosIDEzLiBBdWcgMjAwMiwgMTk6NDE6MzQpOgp+IyEgcm49QmFtYmkgcnQ9MTAyOTIyNjE2MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjkxODI5MDcKYmlzdCBqYSBhdWNoIG5pY2h0IGJsb25kLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWwgd2llZGVyIE5ldGRpZ2VzdC4uLiAoRm9vYmFyLCAxMy4gQXVnIDIwMDIsIDIzOjU5OjM0KToKIE1lc3NhZ2UtSUQ6IDw0SXQwOS4xOTc2JE01LjE5OTQ5OUBuYXNhbC5wYWNpZmljLm5ldC5hdT4KIEZyb206IENTQUJBICBIQVJBTkdPWk8gICA8Y3NhYmFoQHppcHdvcmxkLmNvbS5hdT4KIE5ld3Nncm91cHM6IGNvbXAub3Mudm1zCiBTdWJqZWN0OiBbT1RdIFRoZSBLdXJzayBEaXNhc3RlciBhbmQgTVMgV2luZG93cyA6LSkKIERhdGU6IFNhdCwgMjcgSnVsIDIwMDIgMDk6Mjc6MjggR01UCgogVGhlIEt1cnNrIERpc2FzdGVyCgogU29tZSBuZXcgaW5mb3JtYXRpb24gaGFzIGNvbWUgdG8gbGlnaHQgb3ZlciB0aGUgS3Vyc2sgZGlzYXN0ZXIuIEZvcgogdGhvc2Ugd2l0aCBzaG9ydCBhdHRlbnRpb24gc3BhbnMsIHRoZSBLdXJzayB3YXMgdGhlIHN1Ym1hcmluZSB0aGF0CiBibGV3IHVwIGFuZCBzYW5rIGluIHRoZSBBcmN0aWMgT2NlYW4ga2lsbGluZyBhbGwgMTE4IG9uIGJvYXJkLiBUaGUKIFJ1c3NpYW5zIHRyaWVkIHRvIGJsYW1lIHRoZSBpbmNpZGVudCBvbiBhIGNvbGxpc2lvbiB3aXRoIGFuCiB1bmlkZW50aWZpZWQgb2JqZWN0LgoKIEhvd2V2ZXIsIHNvbmFyIHRhcGVzIHdoaWNoIHJlY29yZGVkIHRoZSBibGFzdHMgKGEgc21hbGwgb25lIGF0IGZpcnN0LAogdGhlbiBhIG11Y2ggbGFyZ2VyIG9uZSB0d28gbWludXRlcyBsYXRlcikgY2FzdCBkb3VidCBvbiB0aGVzZSBjbGFpbXMuCiBBIHdoaXN0bGUgYmxvd2VyIHdpdGhpbiB0aGUgUnVzc2lhbiBtaWxpdGFyeSBoYXMgbGVha2VkIHRoYXQgdGhlIGNyZXcKIG9mIHRoZSBLdXJzayB3YXMgdGVzdGluZyBhIG5ldyB0eXBlIG9mIHRvcnBlZG8gd2hlbiB0aGUgYWNjaWRlbnQKIG9jY3VycmVkLiBJdCBzZWVtZWQgdmVyeSBsaWtlbHkgdGhhdCB0aGUgdGVzdCBkaWRuJ3QgZ28gcXVpdGUgYXMKIHBsYW5uZWQuCgogV2hpbGUgcmVzY3VlIGVmZm9ydHMgdG8gc2F2ZSB0aGUgc3Vydml2b3JzIG9mIHRoZSBLdXJzayBmYWlsZWQsCiBzYWx2YWdlIGNyZXdzIHdlcmUgYWJsZSB0byByZWNvdmVyIGEgJ0JsYWNrIEJveCcgZnJvbSB0aGUgc3VibWFyaW5lCiB3aGljaCBjb250YWluZWQgZGV0YWlsZWQgYWNjb3VudHMgb2YgdGhlIGV2ZW50cyBsZWFkaW5nIHVwIHRvIHRoZQogZXhwbG9zaW9uLiBBcyBsdWNrIHdvdWxkIGhhdmUgaXQsIHdlIGdvdCBhIGNvcHkgb2YgdGhvc2UgdGFwZXMuIEl0CiB0dXJucyBvdXQgdGhhdCB0aGUgc3VibWFyaW5lIGNyZXcgd2FzIHRyeWluZyB0byBsb2FkIE1pY3Jvc29mdCBXaW5kb3dzCiBvbiB0aGVpciBmaXJlIGNvbnRyb2wgY29tcHV0ZXIuIFRoZWlyIGludGVudCB3YXMgdG8gcmVwbGFjZSB0aGUgYWdpbmcKIENQL00gb3BlcmF0aW5nIHN5c3RlbSB3aXRoIHRoZSBmbGFzaGllciBXaW5kb3dzIE9TLiBBcHBhcmVudGx5LCB0aGUKIFJ1c3NpYW5zIGRpZG4ndCBrbm93IGFib3V0IHRoZSBsZWdlbmRhcnkgc3RhYmlsaXR5IHByb2JsZW1zIGV4aGliaXRlZAogYnkgV2luZG93cy4gVGhlIGxvZyB0YXBlcyBtYWtlIHRoaXMgcGFpbmZ1bGx5IG9idmlvdXM6CgogQ2FwdGFpbjogSXMgdGhlIG5ldyBmaXJlIGNvbnRyb2wgV2luZG93cyBPUyBpbnN0YWxsZWQgeWV0IENvbXJhZGU/CgogU2VhbWFuOiBBbG1vc3QgU2lyLiBXZSBqdXN0IG5lZWQgdG8gZmluaXNoIGZpbGxpbmcgb3V0IHRoZQogcmVnaXN0cmF0aW9uIGNhcmQuCgogQ2FwdGFpbjogRXhjZWxsZW50LiBTb29uIHdlIHdpbGwgYmUgYWJsZSB0byBwb2ludCBhbmQgY2xpY2sgb3VyCiBlbmVtaWVzIGludG8gb2JsaXZpb24uCgogW2V2aWwgbGF1Z2h0ZXIgaW4gYmFja2dyb3VuZF0KCiBTZWFtYW46IENvbXJhZGUgQ2FwdGFpbiEgSXQgaXMgYm9vdGluZyEgTG9vaywgaXQgc2F5cyAiUHJlcGFyaW5nIHRvCiBydW4gV2luZG93cyBmb3IgdGhlIGZpcnN0IHRpbWUiLgoKIFtsb25nIHBhdXNlXQoKIFNlYW1hbjogQXJyZ2ghIFNpciwgaXQgd2FudHMgbWUgdG8gcmVib290IGFnYWluLiBUaGF0IG1ha2VzIHRoZSAyN3RoCiB0aW1lLgoKIENhcHRhaW46IEhtbW0uIFRoaXMgaXMgbm90IGVuY291cmFnaW5nLiBHbyBhaGVhZCBhbmQgcmVib290IGFnYWluLgoKIFNlYW1hbjogQXllIFNpci4KCiBbYW5vdGhlciBsb25nIHBhdXNlXQoKIFNlYW1hbjogQ2FwdGFpbiwgaXQgaXMgdXAgYWdhaW4uIEl0IHNheXMgaXQgZm91bmQgbmV3IGhhcmR3YXJlIC4uLiBBCiBDRC1ST00gZHJpdmUgYW5kIHRoYXQgaXQgbmVlZHMgZHJpdmVycy4KCiBDYXB0YWluOiBXaGVyZSBhcmUgdGhlIGRyaXZlcnM/CgogU2VhbWFuOiBPbiB0aGUgQ0QtUk9NLgoKIENhcHRhaW46IFlvdSBhcmUgam9raW5nLCByaWdodD8KCiBTZWFtYW46IE5vIFNpci4KCiBDYXB0YWluOiBSZWJvb3QgdGhlIGRhbW4gdGhpbmcgYWdhaW4uIEkgYW0gc3RhcnRpbmcgbm90IHRvIGxpa2UgdGhpcwogV2luZG93cy4KCiBbYW5vdGhlciBsb25nIHBhdXNlXQoKIFNlYW1hbjogU2lyISBJdCBpcyBiYWNrISBJdCBzYXlzIGl0IGZvdW5kIHRoZSBHb3JieTIwMDAgVG9ycGVkbyBhbmQgaXMKIGxvb2tpbmcgZm9yIHRoZSBkZXZpY2UgZHJpdmVycy4gRG8gd2UgaGF2ZSBhIGRyaXZlciBkaXNrPwoKIENhcHRhaW46IEkgZG8gbm90IHRoaW5rIHNvLgoKIFNlYW1hbjogSSB3aWxsIHRlbGwgaXQgdG8gdXNlIHRoZSBkZWZhdWx0IGRyaXZlcnMuCgogW2Fub3RoZXIgbG9uZyBwYXVzZV0KCiBTZWFtYW46IENyYXAuIEl0IHdhbnRzIHRvIHJlYm9vdCBhZ2Fpbi4KCiBDYXB0YWluOiBIb3cgbWFueSB0aW1lcyBhcmUgd2UgZ29pbmcgdG8gcmVib290IHRvZGF5PyBUaGlzIGlzIHRha2luZwogZm9yZXZlci4gT3VyIGh1bGwgaXMgZ29pbmcgdG8gcnVzdCBvdXQgYmVmb3JlIHRoaXMgd29ya3MuCgogW2Fub3RoZXIgbG9uZyBwYXVzZV0KCiBTZWFtYW46IFNpciEgSXQgaXMgdXAgYW5kIHRoaXMgdGltZSBpdCBpcyBub3QgYXNraW5nIGZvciBhbnl0aGluZyEKCiBDYXB0YWluOiBSZWFsbHk/IE5vIGRldmljZSBkcml2ZXJzPyBObyByZWdpc3RyYXRpb24gY2FyZHM/IE5vIHVzZXIKIHByb2ZpbGVzPwoKIFNlYW1hbjogTm8gU2lyLiBJIHRoaW5rIGl0IGlzIHJlYWR5LgoKIENhcHRhaW46IEdvb2Qgd29yayBjb21yYWRlLiBOb3cgY2xpY2sgb24gdGhlIGZpcmUgY29udHJvbCBpY29uIGFuZCBsZXQKIHVzIHNlZSBob3cgdGhpcyB3b3Jrcy4KCiBTZWFtYW46IENsaWNraW5nIG5vdywgU2lyLgoKIFthbm90aGVyIGxvbmcgcGF1c2VdCgogQ2FwdGFpbjogV2h5IGRvZXMgdGhlIGZpcmUgY29udHJvbCBzY3JlZW4gaGF2ZSBhIGRhbmNpbmcgcGFwZXIgY2xpcCBvbgogaXQ/CgogU2VhbWFuOiBJIGhhdmUgbm8gaWRlYSBTaXIuCgogQ2FwdGFpbjogSG1tbSwgd2VsbCB0cnkgY2xpY2tpbmcgb24gdGhlIG1lbnUuCgogU2VhbWFuOiBBeWUgU2lyLiBMZXQgdXMgc2VlOyBPcGVuIEUtbWFpbCwgU3BhbSBhIGZyaWVuZCwgTWFpbCBhIFZpcnVzLAogRmlyZSBhIFRvcnBlZG8uCgogQ2FwdGFpbjogV2Ugd2lsbCBzcGFtIGEgZnJpZW5kIGxhdGVyLiBMZXQgdXMgZmlyZSBhIHRvcnBlZG8uCgogU2VhbWFuOiBBeWUgU2lyLgoKIFthbm90aGVyIGxvbmcgcGF1c2VdCgogU2VhbWFuOiBJdCBpcyBhc2tpbmcgdXMgdG8gbG9hZCB0aGUgdG9ycGVkbyBhbmQgdG8gY2xpY2sgd2hlbiByZWFkeS4KCiBDYXB0YWluOiBUb3JwZWRvIHJvb20sIGxvYWQgYSB0b3JwZWRvIGluIHR1YmUgbnVtYmVyIDEhCgogW2ludGVyY29tOl0gVGhpcyBpcyB0aGUgVG9ycGVkbyByb29tLiBUaGUgdG9ycGVkbyBpcyBsb2FkZWQgU2lyLgoKIENhcHRhaW46IENsaWNrIG9uIHRoZSBjb250aW51ZSBidXR0b24uCgogU2VhbWFuOiBBeWUgU2lyLgoKIFthbm90aGVyIGxvbmcgcGF1c2VdCgogU2VhbWFuOiBJdCBpcyBhc2tpbmcgZm9yIGEgdGFyZ2V0IFNpci4KCiBDYXB0YWluOiBIbW1tLCB0YXJnZXQgdGhlIFJhaW5ib3cgV2Fycmlvci4KCiBTZWFtYW46IEF5ZSBTaXIuIERhbW4hIEl0IHNheXMgdGhlIHRvcnBlZG8gaXMgbG93IG9uIGluay4KCiBDYXB0YWluOiBDbGljayBpZ25vcmUuIFdlIHdpbGwgZ2V0IHNvbWUgaW5rIHdoZW4gd2UgcmV0dXJuIHRvIGJhc2UuCgogU2VhbWFuOiBBeWUgU2lyLiBXZSBhcmUgcmVhZHkgdG8gZmlyZS4KCiBDYXB0YWluOiBWZXJ5IGdvb2QuIFlvdSBtYXkgZmlyZSB3aGVuIHJlYWR5IGNvbXJhZGUuCgogU2VhbWFuOiBGaXJpbmcgdG9ycGVkbyBTaXIuCgogW2Fub3RoZXIgcmVhbGx5IGxvbmcgcGF1c2VdCgogQ2FwdGFpbjogV2VsbD8KCiBTZWFtYW46IEkgYW0gdHJ5aW5nIFNpci4gTm90aGluZyBpcyBoYXBwZW5pbmcuIFdhaXQgYSBtaW51dGUuLi4uCgogW2EgbG91ZCBleHBsb3Npb24gaXMgaGVhcmQgaW4gdGhlIGJhY2tncm91bmQgZm9sbG93ZWQgYnkgc2NyZWFtaW5nIG9uCiBpbnRlcmNvbV0KCiBDYXB0YWluOiB3aGF0IHdhcyB0aGF0PyE/IT8KCiBTZWFtYW46IENhcHRhaW4hIEEgbmV3IHNjcmVlbiBoYXMgYXBwZWFyZWQhCgogT3V0bG9vayBFeHByZXNzIEZpcmUgQ29udHJvbCBoYXMgcGVyZm9ybWVkIGFuIGlsbGVnYWwgb3BlcmF0aW9uIGFuZAogd2lsbCBiZSBzaHV0IGRvd24uIENsaWNrICdPSycgdG8gY29udGludWUuCgogU2VhbWFuOiBPaCBteSBHb2QhIFRoZSBwYXBlciBjbGlwIGhhcyBkaWVkISBXaGF0IHNob3VsZCBJIGRvPwoKIENhcHRhaW46IFNodXQgaXQgZG93biEgU2h1dCBpdCBkb3duIQoKIFNlYW1hbjogSXQgaXMgbm90IHJlc3BvbmRpbmcgU2lyIQoKIENhcHRhaW46IFRyeSAnQ1RSTC1BTFQtREVMRVRFJyEKCiBTZWFtYW46IEF5ZSBTaXIuIFdlIGFyZSBpbiBsdWNrISBUaGUgdGFzayBtYW5hZ2VyIGlzIHN0aWxsIG9wZXJhdGluZy4KIEkgYW0gaW5zdHJ1Y3RpbmcgdGhlIHRhc2sgbWFuYWdlciB0byBzaHV0IGRvd24gT3V0bG9vayBGaXJlIENvbnRyb2wuCgogW2Fub3RoZXIgbG9uZyBwYXVzZV0KCiBTZWFtYW46IFRoZSB0YXNrIG1hbmFnZXIgc2F5cyB0aGF0IE91dGxvb2sgRmlyZSBDb250cm9sIGlzIG5vdAogcmVzcG9uZGluZy4KCiBDYXB0YWluOiBXZWxsIG5vIHNoaXQuIFRlbGwgaXQgdG8gJ2VuZCB0YXNrJy4KCiBTZWFtYW46IE5vdGhpbmcgaXMgaGFwcGVuaW5nIFNpci4KCiBDYXB0YWluOiBUcnkgJ0NUUkwtQUxULURFTEVURScgYWdhaW4uCgogU2VhbWFuOiBBeWUgU2lyLgoKIFtzb3VuZHMgb2YgZnJhbnRpYyBwZWNraW5nIG9uIGtleWJvYXJkLl0KCiBTZWFtYW46IE9vb2ghIFdoYXQgYSBwcmV0dHkgYmx1ZSBzY3JlZW4hCgogQ2FwdGFpbjogSG9seSBTaGl0ISBOb3QgdGhlIGJsdWUgc2NyZWVuIG9mIGRlYS4uLi4KCiBbS0FCTEFNISBBIHJlYWxseSBiaWcgZXhwbG9zaW9uLiBNb3JlIHNjcmVhbWluZyBhbmQgdGhlIHNvdW5kIG9mCiBydXNoaW5nIHdhdGVyLl0KIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiBUaGUgdGFwZSBlbmRzIGF0IHRoaXMgcG9pbnQuCgogRHVyaW5nIHRoZSB3ZWVrIGxvbmcgcmVzY3VlIGVmZm9ydCwgZGl2ZXJzIHJlcG9ydGVkIGhlYXJpbmcgdGFwcGluZyBpbgogdGhlIGZvcm0gb2YgbW9yc2UgY29kZSBjb21pbmcgZnJvbSBzdXJ2aXZvcnMgaW5zaWRlIHRoZSBkYW1hZ2VkCiBzdWIuVGhlIHJlc2N1ZXJzIGNvdWxkbid0IHVuZGVyc3RhbmQgd2h5IGEgZ3JvdXAgb2YgbWVuIHdvdWxkIHNwZW5kCiB0aGUgbGFzdCBvZiB0aGVpciBzdHJlbmd0aCB0YXBwaW5nIG91dCAiVy1JLU4tRC1PLVctUyBTLVUtQy1LLVMiIGluCiBtb3JzZSBjb2RlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNYWwgd2llZGVyIE5ldGRpZ2VzdC4uLiAoQ2F0d2VhemxlLCAxNC4gQXVnIDIwMDIsIDA3OjQ1OjIxKToKfiMhIHJuPUZvb2JhciBydD0xMDI5Mjc1OTc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTI3NTk3NApEYSBkYXMgVGhlbWEgJ1dpbmRvd3MgaXN0IHNjaGVpc3NlJyBtaXR0bGVyd2VpbGUgYXVzcmVpY2hlbmQgYXVmIGFuZGVyZQpBcmJlaXRzdW1nZWJ1bmdlbiAoQXV0bywgU3RhclRyZWssIGV0Yy4gZXRjLikgcHJvamV6aWVydCB3dXJkZSwgZmluZGUgaWNoCmRpZXNlcyBpbiBrZWluc3RlciBXZWlzZSBrb21pc2NoLCBzb25kZXJuIGFsbGVuZmFsbHMgZ2VzY2htYWNrbG9zIDotKAoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hbCB3aWVkZXIgTmV0ZGlnZXN0Li4uIChJbWRhLCAxNC4gQXVnIDIwMDIsIDE1OjI3OjM1KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDI5MzAzOTIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTI3NTk3NApXZWlscyBzY2hvbiBzbyBvZnQgd2FyIGlzc2VzIG51IGdlc2NobWFja2xvcyA/IFNlbHRzYW1lciBnZWRhbmtlbmdhbmcuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNYWwgd2llZGVyIE5ldGRpZ2VzdC4uLiAoVmFyZGlvbiwgMTQuIEF1ZyAyMDAyLCAxNjo1MTo1OSk6Cn4jISBybj1JbWRhIHJ0PTEwMjkzMzE2NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5Mjc1OTc0CkVzIGlzdCB3b2hsIGVoZXIgZ2VzY2htYWNrbG9zLCB1ZWJlciBkZW4gVG9kIHZvbiAxMTggTWVuc2NoZW4gV2l0emUgenUgbWFjaGVuLgoKVmFyZGlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTWFsIHdpZWRlciBOZXRkaWdlc3QuLi4gKEdyaW1tYm9ybiwgMTQuIEF1ZyAyMDAyLCAxNjo1MzoyNSk6Cn4jISBybj1WYXJkaW9uIHJ0PTEwMjkzMzY3MTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5Mjc1OTc0CkJpdHRlIG5pY2h0IHNjaG9uIHdpZWRlci4gRGFzIGhhdHRlbiB3aXIgZG9jaCB2b3IgZWluZW0ga25hcHBlbiBKYWhyIHNjaG9uLAphdWNoIHdlbm4gZXMgZGEga25hcHAgNTAwMCBNZW5zY2hlbiB3YXJlbi4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1hbCB3aWVkZXIgTmV0ZGlnZXN0Li4uIChNdXBmZWwsIDE0LiBBdWcgMjAwMiwgMTk6MDQ6NTApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjkzMzY4MDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5Mjc1OTc0CkF1Y2gga2VpbiBTY2htYXJybjoKaHR0cDovL3d3dy5zcGllZ2VsLmRlL3Bhbm9yYW1hLzAsMTUxOCwyMDk0NjYsMDAuaHRtbAoKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3VjaGUgTGVocmJ1Y2ggKFZhcmxhcmlvbiwgMTQuIEF1ZyAyMDAyLCAxOToxMTo0Mik6Cn4jISBybj1WYW5pb24gcnQ9MTAyOTM0NDgxNCByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwMjkzNDQ4MTQKU2NobmFwcCBkaXIgbmUgbmV0dGUgUnVzc2luIHVuZCB1ZWIgImxpdmUiIDspCgpWYXJsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdWNoZSBMZWhyYnVjaCAoVmFuaW9uLCAxNC4gQXVnIDIwMDIsIDE5OjE1OjM2KToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDI5MzQ1MTAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTM0NDgxNApIbW0sCnVuZCB3aWUgc29yZyBpY2ggZGFmdWVyLCBkYXNzIGRpZSBKYXBhbmVyaW4gdW5kIGRpZSBSdXNzaW4gc2ljaCBuaWNoIHRyZWZmZW4/CgpWKiwgc2NobWFycm50LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3VjaGUgTGVocmJ1Y2ggKFZhcmxhcmlvbiwgMTQuIEF1ZyAyMDAyLCAxOToyMDo0NCk6Cn4jISBybj1WYW5pb24gcnQ9MTAyOTM0NTMzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjkzNDQ4MTQKR2FueiBlaW5mYWNoOiBNb250YWdzLCBNaXR0d29jaHMgdW5kIEZyZWl0YWdzIHRyaWZmc3RlIGRpY2ggbWl0IGRlciBlaW5lbiwKRGllbnN0YWdzLCBEb25uZXJzdGFncyB1bmQgU2Ftc3RhZ3MgbWl0IGRlciBhbmRlcmVuLiBVbmQgU29ubnRhZ3MgZXJob2xzdGUKZGljaCBkYW5uIGRhdm9uIDspCi4gbyBPIChNYWVubmVyIGhhYmVuIGVjaHQga2VpbmUgUGhhbnRhc2llLi4uKQoKVmFybCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFN1Y2hlIExlaHJidWNoIChWYW5pb24sIDE0LiBBdWcgMjAwMiwgMjA6MDc6NTUpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMjkzNDU2NDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5MzQ0ODE0CkhtbSwKCkFuIHdlbGNoZW4gV29jaGVudGFnZW4sIHRyaWZmc3QgRHUgZGljaCBlaWdlbnRsaWNoIG1pdCBWYXJsYXJpb24sIE11cGZlbD8KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNYWwgd2llZGVyIE5ldGRpZ2VzdC4uLiAoSW1kYSwgMTQuIEF1ZyAyMDAyLCAyMDo1MzowOSk6Cn4jISBybj1WYXJkaW9uIHJ0PTEwMjkzMzY3MTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5Mjc1OTc0CkFjaHNvLiBKZXR6dCB2ZXJzdGVoIGljaC4gV2FzIHZlcmRpZW50IG1hbiBkZW5uIHNvIGFscyBCZXJ1ZnNiZXRyb2ZmZW5lciA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNYWwgd2llZGVyIE5ldGRpZ2VzdC4uLiAoR3JpbW1ib3JuLCAxNC4gQXVnIDIwMDIsIDIxOjAwOjIxKToKfiMhIHJuPUltZGEgcnQ9MTAyOTM1MTE4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjkyNzU5NzQKUHJ1ZWdlbC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0ZGlnZXN0Li4uIChGb29iYXIsIDE0LiBBdWcgMjAwMiwgMjM6Mjg6MzYpOgpGcm9tOiBDYXJzdGVuIEZhbHRpbiA8ZGV2bnVsQGNhcnN0ZW5mYWx0aW4uY29tPgpOZXdzZ3JvdXBzOiBkZS5yZWMuZmlsbS5oZWlta2lubwpTdWJqZWN0OiBSZTogQW1hem9uIEd1dHNjaGVpbgpEYXRlOiBUdWUsIDEzIEF1ZyAyMDAyIDEwOjIxOjMyICswMjAwCk1lc3NhZ2UtSUQ6IDxhamFmaWQkMTl0dnU4JDFASUQtNjQwNi5uZXdzLmRmbmNpcy5kZT4KCltTTjogUXVvdGluZyBlcmdhZW56dF0KClRoZSB3aGlzcGVyIG9mIEd1bnRoZXIgU2NobWlkdCByZXNvdW5kcyB0aHJvdWdoIHRoZSB1bml2ZXJzZToKCj4+TWljaGFlbCAnVGFuaycgTGVociBzY2hyaWViOgoKPj5OZWluLiBXYXMgbWlyIGVpbmZhY2ggbmljaHQgaW4gZGVuIEtvcGYgd2lsbCwgZGFzIGtsZWluc3QgRmlybWVuIG1pdAo+PmVpbmVtIG9kZXIgendlaSBMZXV0ZW4gYmVzc2VyZW4gU2VydmljZSB1bmQgS3VuZGVubmFlaGUgYmlldGVuIGFscyBkaWVzZQo+PlJpZXNlbiBGaXJtZW4uIFNvYmFsZCBlaW5lIEZpcm1hIGVyc3QgZ3JvZXNzZXIgd2lyZCwgbmltbXQgYXV0b21hdGlzY2gKPj5hbGxlIGRpZXNlIFNhY2hlbiBkaWUgc2llIGd1dCBnZW1hY2h0IGhhYmVuLCBhYi4KCj5EaWVzIGdlc2NoaWVodCwgc29iYWxkIGVpbmUgTWFya2V0aW5nLUFidGVpbHVuZyBnZWdydWVuZGV0IHdpcmQuCgpBbHNvIHNvIGFlaG5saWNoOgoKTWFya2V0aW5nZHJvbmU6ICJTYWdlbiBzaWUgbWFsIG1hbCwga2FubiBkZXIgR2VsYWVuZGV3YXJlbi1Qcm90b3R5cCwKICAgICAgICAgICAgICAgIGRlbiB3aXIgYW0gRnJlaXRhZyB2b3JzdGVsbGVuLCBlaWdlbnRsaWNoIGZsaWVnZW4/IgpJbmdlbmlldXI6ICAgICAgIk5laW4sIHdpZXNvIEZyYWdlbiBzaWUgc293YXM/IgpNYXJrZXRpbmdkcm9uZTogIkVjaHQgbmljaHQ/IE5hLCBkYW5uIGJlZWlsZW4gc2llIHNpY2ggbWFsLCBhbSAKICAgICAgICAgICAgICAgIEZyZWl0YWcgX211c3NfIGRlciBmbGllZ2VuIGtvZW5uZW4uIEdlcmFkZSB3YXIgZG9jaCBkaWUKICAgICAgICAgICAgICAgIFByZXNzZWtvbmZlcmVueiwgdW5kIGRhIGhhYmUgaWNoIGRlbiBMZXV0ZW4gdm9uIGRlcgogICAgICAgICAgICAgICAgUHJlc3NlIHZlcnNwcm9jaGVuLCBkYXNzIHNpZSBiZWkgZGVyIFZvcnN0ZWxsdW5nIGFtCiAgICAgICAgICAgICAgICBGcmVpdGFnIGVpbmVuIGZsaWVnZW5kZW4gR2VsYWVuZGV3YWdlbiBzZWhlbi4gQWJlciBlcwogICAgICAgICAgICAgICAgc2luZCBqYSBub2NoIDMgVGFnZSBiaXMgRnJlaXRhZywgc2llIGxhc3NlbiBzaWNoIGRhIAogICAgICAgICAgICAgICAgYmVzdGltbXQgd2FzIGVpbmZhbGxlbi4gVmllbCBTcGFzcy4gSWNoIG11c3Mgd2VnISIKSW5nZW5pZXVyOiAgICAgICJHbmFhIgoKYnkgQ2Fyc3RlbgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE1hbCB3aWVkZXIgTmV0ZGlnZXN0Li4uIChaYXJuaXlhLCAxNS4gQXVnIDIwMDIsIDA4OjQxOjAwKToKfiMhIHJuPU11cGZlbCBydD0xMDI5MzQ0NjkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTI3NTk3NApOYWFhYWEuLi4gYWxzbyBpY2ggbXVzcyBlaHJsaWNoIHNhZ2VuLCBkYXNzIG1pY2ggZGllc2UgTWl0bGVpZHN0b3VyIGFua290enQhCklOIGRlbiBNZWRpZW4gc2llaHQgbWFuIGF1Y2ggbnVyIGRpZSBzY2hsaW1tc3RlbiBCaWxkZXIsIGFiZXIgc28gc2NobGltbSBpc3QKZXMgbnVuIHdpcmtsaWNoIG5pY2h0Li4uIAoKQXVzc2VyZGVtOiBJY2gga2FubiBtaWNoIGVyaW5uZXJuLCBhbHMgaW4gZGVyIEtvZWxuZXIgQWx0c3RhZHQgZGFzIFJoZWlud2Fzc2VyCnVlYmVyIGRpZSAxMCwzMCBNZXRlciBzY2h3YWJidGUsIGRhIHN0YW5kZW4gMTAwdGUgVG91cmlzdGVuLCBhdWNoIGF1cwpTdWVkZGV1dHNjaGxhbmQgYXVmIGRlbiBCcnVlY2tlbiB1bmQgYXBwbGF1ZGllcmVuLiBJY2gga29ubnRlIGRlbiBXaXJ0IGVpbmVyCktuZWlwZSB2ZXJzdGVoZW4sIGRlciBpbiBkZW0gTW9tZW50IG1pdCBzZWluZW0gQmFzZWJhbGxzY2hsYWVnZXIgbWFsIGVpbiB3ZW5pZwphdWZyYWV1bWVuIHdvbGx0ZS4gCgpBbGxlcyBpbiBhbGxlbSBpc3QgZGFzIGRhIHVudGVuIG1pdCBkZW0gV2Fzc2VyIHNpY2hlciBuaWNodCBzY2hvZW4sIGFiZXIgZGllCnNvbGxlbiBzaWNoIG1hbCBuaWNodCBzbyBhbnN0ZWxsZW4uIFdlciBpbiBkZXIgTmFlaGUgZWluZXMgRmx1c3NlcyBsZWJ0LCBkZXIKbXVzcyBkYW1pdCByZWNobmVuLCBvZGVyIGVyIGhhdCBlaW5lbiBLb3Bmc2NoYWRlbi4gVW5kIGljaCBiaW4gZWhybGljaCBmcm9oLApkYXNzIGVzIG1hbCBhbmRlcmUgdHJpZmZ0LgoKTWFyYyAoVm9sbGJsdXRrb2VsbmVyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTWFsIHdpZWRlciBOZXRkaWdlc3QuLi4gKENhdHdlYXpsZSwgMTUuIEF1ZyAyMDAyLCAwOTo0MDowOCk6Cn4jISBybj1aYXJuaXlhIHJ0PTEwMjkzOTM2NjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5Mjc1OTc0Ck51ciBkYW1pdCBuaWNodCBkZXIgZmFsc2NoZSBFaW5kcnVjayBlbnRzdGVodDogSWNoIHNhZ3RlIGxlZGlnbGljaCwgZGFzIFdpdHplCihkaWUgaWNoIGluIGRpZXNlbSBGb3JtYXQgenVyIEdlbnVlZ2Uga2VubmUpIHVlYmVyICdLYXRhc3Ryb3BoZW4ndG90ZSBuaWNodApiZXNvbmRlcnMgYW11ZXNhbnQgc2luZCwgc29uZGVybiBmZWhsIGFtIFBsYXR6LiBWb24gJ01pdGxlaWRzdG91cicgaGFiIGljaApuaWNodHMgZ2VzYWd0IHVuZCBpY2ggYmluIGF1Y2ggZ2FueiBiZXN0aW1tdCBrZWluIEJlcnVmc2JldHJvZmZlbmVyLCBkYXMKa29lbm5lbiBQb2xpdGlrZXIgYmVzc2VyLgoKPiBVbmQgaWNoIGJpbiBlaHJsaWNoIGZyb2gsICBkYXNzIGVzIG1hbCBhbmRlcmUgdHJpZmZ0LiAKClZpZWxsZWljaHQgdWViZXJsZWdzdCBkdSBkaXIgbm9jaG1hbCwgd2FzIGR1IGRhIGdlcmFkZSBnZXNhZ3QgaGFzdCA6LSgKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTWFsIHdpZWRlciBOZXRkaWdlc3QuLi4gKE1hcmN1cywgMTUuIEF1ZyAyMDAyLCAwOTo0MjoxNik6Cn4jISBybj1aYXJuaXlhIHJ0PTEwMjkzOTM2NjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5Mjc1OTc0ClVtIGVzIG1hbCB2b3JzaWNodGlnIGF1c3p1ZHJ1ZWNrZW4sIGtlaW5lciBoYXQgbWl0IHNvIGVpbmVtIEhvY2h3YXNzZXIKZ2VyZWNobmV0LgoKRGFzIGxldHp0ZSBNYWwsIGRhcyBlcyBiZWkgbWVpbmVuIEVsdGVybiBpbSBEb3JmIGRhcyBXYXNzZXIgZ2VzdGFuZGVuIGhhdCwKd2FyIGt1cnogbmFjaCBkZW0gS3JpZWcgdW5kIGVzIGdhYiBub2NoIGtlaW5lbiBFbGJkYW1tLiAKCkRpZXNtYWwgaXN0IGVzIG5vY2ggbmljaHQgZ2FueiBzbyB3ZWl0LCBhYmVyIGVzIHdpcmQgd29obCBzbyB3ZWl0IGtvbW1lbi4KVHJvdHogRWxiZGFtbS4KCktlaW5lciBoYXRzIHZvcmF1c2dlc2VoZW4gdW5kIHdlciBTY2h1bGQgaXN0IC4uLiBOYWphLiAKCkNpYW8sIE1hcmN1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTWFsIHdpZWRlciBOZXRkaWdlc3QuLi4gKEdyaW1tYm9ybiwgMTUuIEF1ZyAyMDAyLCAwOTo0Mjo1MCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTAyOTM5NzIwOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjkyNzU5NzQKTnUgdHUgbWFuIG5pY2h0IHNvIHNjaGVpbmhlaWxpZy4gQXVjaCB3ZW5ucyBwb2xpdGlzY2ggbmF0dWVybGljaCBuaWNodCBzbwprb3JyZWt0IGlzdCwgYWJlciBTY2hhZGVuZnJldWRlIGlzdCBpbW1lciBub2NoIGRpZSBiZXN0ZSBGcmV1ZGUuIE1pcgpwZXJzb2VubGljaCBoYXQgei5CLiBkaWUgUmllc2VudWViZXJzY2h3ZW1tdW5nIGRlcyBNaXNzaXNzaXBwaS1NaXNzb3VyaSwga3VyegpuYWNoZGVtIGRpZSBBbWlzIG1pdCBkZW0gS3lvdG8tUHJvdG9rb2xsIHNvIHJ1bWdla2FzcGVydCBoYWJlbiwgZHVyY2hhdXMgaW4KZGVyIFNlZWxlIHdvaGxnZXRhbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3VjaGUgTGVocmJ1Y2ggKE11cGZlbCwgMTUuIEF1ZyAyMDAyLCAxMzowNDowMik6Cn4jISBybj1WYW5pb24gcnQ9MTAyOTM0ODQ3NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjkzNDQ4MTQKSG1tbS4uLi4gKmdydWViZWwqLi4uIGFsc28gYW0gV29jaGVuZW5kZSBhdWYgamVkZW4gRmFsbCA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE1hbCB3aWVkZXIgTmV0ZGlnZXN0Li4uIChMaW5mbGFzLCAxNS4gQXVnIDIwMDIsIDE1OjA2OjUzKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDI5Mzk3MjA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTI3NTk3NApFaW5lcnNlaXRzIGtvbW10IGRhcyBIb2Nod2Fzc2VyIGRlbSBTb21tZXJsb2NoIGphIG1laHIgYWxzIG51ciBnZWxlZ2VuLiBVbmQKd2VubiBtZW5zY2ggc2ljaCBkaWUgQmVyaWNodGUgdW5kIEFydGlrZWwgenVtIFRoZW1hIGFuc2NoYXV0LCBkYW5uIGxhZXNzdCBzaWNoCmRpZSBNZW5nZSBkZXIgZ2VoYWx0dm9sbGVuIEluZm9ybWF0aW9uZW4gYW4gZWluZW0gRmluZ2VyIGFiemFlaGxlbiAob2RlcgppbnRlcmVzc2llcnQgZXMgZXVjaCB3aXJrbGljaCwgZGFzcyBkZXIgQm9senBsYXR6IGluIGlyZ2VuZGVpbmVtIEt1aGthZmYsIGRlcgpkYXp1IG5vY2ggZGlyZWt0IGFtIFdhc3NlciBsaWVndCwgYWJzYWV1ZnQ/KS4KCkFuZGVyZXJzZWl0cywgYmxvZWRlIGlzdCBkYXMgc2Nob24sIHdlbm4gZGllIFNlbXBlcm9wZXIgYWJzYWV1ZnQuIFdvIHNvbGwKbWVuc2NoIHNpY2ggZGVubiBzb25zdCAiSWxsdXNpb25lbiAtIFdpZSBTY2h3YW5lbnNlZSAoQmFsbGV0dCkiIChOZWluLCBkYXMgaXN0CndpcmtsaWNoIGtlaW4gV2l0eikgYW5ndWNrZW4/CgpMLiwgZ3JpbnN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmFlbmd0IGphIGd1dCBhbiAuLi4uIDotKSAoTGlsbGVicm9yLCAxNS4gQXVnIDIwMDIsIDIxOjQyOjM4KToKWnUgQW5mYW5nIGVpbmVyIHVuZ2VuYW5udGVuIFF1ZXN0OgoKTW9lY2h0ZXN0IER1IGRpZXNlIFF1ZXN0IGRlbm5vY2ggc3BpZWxlbj8gVW5kIGJpc3QgRHUgRGlyIHdpcmtsaWNoIGtsYXIKZGFydWViZXIsIGRhcyBzaWUgc2Nod2VyLCBuZXJ2aWcgdW5kIG5vY2ggdmllbGVzIGFuZGVyZSBzZWluIGthbm4/IERhcwpBdWZnYWJlbiB2b3Jrb21tZW4ga29lbm5lbiwgZGllIGVpbmZhY2ggbmljaHQgenUgbG9lc2VuIHNpbmQ/IERhbm4gdGlwcGUgamV0enQKZWluZmFjaCA8amE+LiBXZW5uIER1IGxpZWJlciBhdWYgZGVyIEhvY2hlYmVuZSBzcGllbGVuIG1vZWNodGVzdCB1bmQgR2VmYWxsZW4KYW4gc28gYmVyZWNoZW5iYXJlbiBRdWVzdHMgd2llICdTaWVnZWxyaW5nJyBmaW5kZXN0LCB0aXBwIDxuZWluPi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWZXJtaXNzdGVuYW56ZWlnZSAoR3JpbW1ib3JuLCAxNS4gQXVnIDIwMDIsIDIyOjMxOjIzKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDI5NDQzMzc2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1MaWFyYSBydD0xMDI5NDQzMDA3IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTAyOTQ0MzAwNwpEdSB3aWxzdCB3YXMgdWViZXIgc2VsYnN0bG9lc2NodW5nIHdpc3Nlbj8gImhpbGZlIHNlbGJzdGxvZXNjaHVuZyIgemVpZ3Qgd2llcwpnZWh0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFZlcm1pc3N0ZW5hbnplaWdlIChHcmltbWJvcm4sIDE1LiBBdWcgMjAwMiwgMjI6MzE6MjUpOgp+IyEgb249TGlhcmEgb3Q9MTAyOTQ0MzQwMiBvZz1hbGxnZW1laW5lcwp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjk0NDMzNzYgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDI5NDQzMDA3Ck5laW4sIGVpbmUgUkwtTWFpbGFkcmVzc2Ugd3VlcmRlIG1pciB2b2VsbGlnIGdlbnVlZ2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVmVybWlzc3RlbmFuemVpZ2UgKEdyaW1tYm9ybiwgMTUuIEF1ZyAyMDAyLCAyMjozMToyNik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTAyOTQ0MzQ1NiBvZz1hbGxnZW1laW5lcwp+IyEgcm49TGlhcmEgcnQ9MTAyOTQ0MzQwMiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMjk0NDMwMDcKSWNoIGthbm4gRGlyIDEwIE1pbyBSTC1NYWlsYWRyZXNzZW4gZ3VlbnN0aWcgdmVya2F1ZmVuLCBoYWIgZGEgbmV1bGljaCBlcnN0CmVpbiBBbmdlYm90IGJla29tbWVuLiBEYSBrYW5uc3QgRHUgRGlyIGRhbm4gZWluZSBhdXNzdWNoZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGYWVuZ3QgamEgZ3V0IGFuIC4uLi4gOi0pIChCYW1iaSwgMTYuIEF1ZyAyMDAyLCAwOTo0MTo0OSk6Cn4jISBybj1MaWxsZWJyb3IgcnQ9MTAyOTQ0MDU1OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjk0NDA1NTgKRGEgaXN0IGVpbiBUeXBvLiBEYXMgImRhcyIgaW4gWndpbGUgendlaSBtdWVzc3RlIGVpbiAiZGFzcyIgc2Vpbi4gTGVpdGUgZGFzCmRvY2ggYml0dGUgZGVtIE1hZ2llciB6dSwgZGVyIGRpZXNlIHVuZ2VuYW5udGUgUXVlc3QgcHJvZ3JhbW1pZXJ0IGhhdC4gVW5kCnNjaG9lbmVuIEdydXNzIHZvbiBkZXIgSG9jaGViZW5lOiAiaG9jaGViZW5lIHJ1bGV6ISIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE1hbCB3aWVkZXIgTmV0ZGlnZXN0Li4uIChQYXRyeW4sIDE2LiBBdWcgMjAwMiwgMTI6Mjg6MTYpOgp+IyEgcm49TGluZmxhcyBydD0xMDI5NDE2ODEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTI3NTk3NAppY2ggZ2xhdWIgZHUgdW50ZXJzY2hhZXR6IGRhcyBnYW56ZSBldHdhcywgZWluaWdlIGtsZWluc3RhZWR0ZSBrYW5uIG1hbgplaWdlbnRsaWNoIGtvbXBsZXR0IHdlZ3NjaGllYmVuZHJlc2RlbiBuaW1tdCBsZWlkZXIgZXR3YXMKenUgdmllbCBhdWZtZXJrc2Fta2VpdCBmdWVyIHNpY2ggZWluLgpkb3J0IGdlaHQgYWxsZXMgdmVyZ2xlaWNoc3dlaXNlIHJ1aGlnIHZvbnN0YXR0ZW4sCmF1Y2ggd2VubiBpY2ggbnVubWVociBhdXMgZGVyIHN0YWR0IGdlZmx1ZWNodGV0IGJpbiwgZGEgbWFuIG1pY2gKc2Nob24gYXVzIG1laW5lbSAyIGRvbWl6aWVsIGV2YWt1aWVyZW4gd29sbHRlLgoKLS0gCnBhdHJ5biwgbWl0IGVpbmVyIHdvaG51bmcgX2ltXyBmbHVzcwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IDIyMDgyMDAyMjAwMEtBUEggKEJhbWJpLCAxNy4gQXVnIDIwMDIsIDAwOjAxOjAyKToKfiMhIG9uPUJhbWJpIG90PTEwMjk1MzUyNTIgb2c9dHJlZmZlbgp+IyEgcm49Q3JvZnQgcnQ9MTAyOTUzMTAzNCByZz10cmVmZmVuCn4jISB0aWQ9MTAyOTUzMDIwMQpXZXIgaXN0IFNpc3RhbmNlIGVpZ2VudGxpY2g/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiAyMjA4MjAwMjIwMDBLQVBIIChGb29iYXIsIDE3LiBBdWcgMjAwMiwgMDA6MzM6MTApOgp+IyEgcm49QmFtYmkgcnQ9MTAyOTUzNTI2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjk1MzAyMDEKPnRtIHNpc3RhbmNlIFdlciBiaXN0IER1IGVpZ2VudGxpY2g/ClNpc3RhbmNlIHRlaWx0IERpciBtaXQ6IFRoZW1lbi1VZWJlcnNpY2h0OgpTaXN0YW5jZSB0ZWlsdCBEaXIgbWl0OiAnc3RhdGloaWxmZScKU2lzdGFuY2UgdGVpbHQgRGlyIG1pdDogClNpc3RhbmNlIHRlaWx0IERpciBtaXQ6IFRlaWxlIG1pciBlaW5lcyBkZXIgVGhlbWVuIG1pdCB1bmQgaWNoIGdlYmUgRGlyIGVpbmUKU2lzdGFuY2UgdGVpbHQgRGlyIG1pdDogSGlsZmUgZGF6dS4KU2lzdGFuY2UgdGVpbHQgRGlyIG1pdDogClNpc3RhbmNlIHRlaWx0IERpciBtaXQ6IERhcyBJbnRlcmZhY2Ugd2lyZCBub2NoIGVyd2VpdGVydC4uLgoKQWxsZXMga2xhcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE1hbCB3aWVkZXIgTmV0ZGlnZXN0Li4uIChBcHN1LCAxNy4gQXVnIDIwMDIsIDIyOjI2OjA1KToKfiMhIHJuPUxpbmZsYXMgcnQ9MTAyOTQxNjgxMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjkyNzU5NzQKVGphYWFhIGRhIGhhZXR0ZSBtYW4gZGllIEF1ZmJhdWhpbGZlIE9zdCBkb2NoIHZpZWxsZWljaHQgbGllYmVyIGluCnN0cnVrdHVyc2Nod2FjaGUgUmVnaW9uZW4gd2llIFdlc3RuaWVkZXJzYWNoc2VuIChFbXNsYW5kLCBPc3Rmcmllc2xhbmQsCk9sZGVuYnVyZykgdXN3IGludmVzdGllcmVuIHNvbGxlbi4gVW0gZGllc2UgUmVnaW9uZW4ga3VlbW1lcnQgc2ljaCBrZWluZSBTYXUuCgpBcHN1LCBrYW5uIGVpbiBnYWFhYW56IGtsZWluIHdlbmlnIFNjaGFkZW5mcmV1ZGUzIG5pY2h0IHZlcmhlaGxlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNYWwgd2llZGVyIE5ldGRpZ2VzdC4uLiAoVmFuaW9uLCAxNy4gQXVnIDIwMDIsIDIyOjM0OjU5KToKfiMhIHJuPUFwc3UgcnQ9MTAyOTYxNTk2NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjkyNzU5NzQKU2NoYWRlbmZyZXVkZSBrYW5uIG1hbiBlbXBmaW5kZW4sIHdlbm4gamVtYW5kIG1pdCB3ZWlzc2VtIEhlbWQgU3BhZ2V0dGkgaXNzdCwKdW5kIGRhbmFjaCBlaW4gZ2VwdW5rdGV0ZXMgaGF0LCBhYmVyIG5pY2h0IHdlbm4gVGF1c2VuZGUgdm9uIExldXRlbiBIZWltIHVuZApMZWJlbnNncnVuZGxhZ2UgdmVybGllcmVuLgoKRGFzIGlzdCBhYmVyIG51ciBtZWluZSBwZXJzb2VubGljaGUgTW9yYWx2b3JzdGVsbHVuZy4gTGFzcyBkaWNoIGRhZHVyY2ggbmljaHQKdm9uIERlaW5lbSBXZWcgYWJicmluZ2VuLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNYWwgd2llZGVyIE5ldGRpZ2VzdC4uLiAoR3JpbW1ib3JuLCAxNy4gQXVnIDIwMDIsIDIyOjM1OjM1KToKfiMhIHJuPUFwc3UgcnQ9MTAyOTYxNTk2NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjkyNzU5NzQKQmVpIGRlciBBdWZiYXVoaWxmZSBPc3QgZ2luZyBlcyB1bSBSZWdpb25lbiwgZGllIG9obmUgZWlnZW5lcyBWZXJzY2h1bGRlbgp6dXJ1ZWNrZ2VibGllYmVuIHNpbmQsIG5pY2h0IHVtIEdlZ2VuZGVuLCBkaWUgc2VpdCA1MCBKYWhyZW4gYWxsZQpNb2VnbGljaGtlaXRlbiBhdXMgZWlnZW5lbSBBbnRyaWViIHZlcnNjaGxhZmVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgb2ZmaXppZWxsZSBIeW1uZSBmdWVyJ3MgVGVhbSBLYW1wZm11aCEgKFNvbG15ciwgMTguIEF1ZyAyMDAyLCAyMzo1MDoyOCk6CkV0IHZvaWxhLAoKIGh0dHA6Ly93d3cuYW50cmEuZGsvY293LnN3ZgoKRmFyZSB3ZWxsLApTb2xteXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE1hZ2lldGV4dC1VcGRhdGUuIChCYW1iaSwgMTkuIEF1ZyAyMDAyLCAwOToxNjo0Nik6Cn4jISBybj1Dcm9mdCBydD0xMDI5NzA4OTU4IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwMjg5MTkzOTUKPiBTdHJlbmcgZGVpbmUgRmFudGFzaWUgYW4gOi0pCkljaCBnbGF1YiwgamV0enQgdWViZXJmb3JkZXJzdCBEdSBoaWVyIGRvY2ggZWluaWdlLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IHBhcnRleSAuLi4gKEdyaW1tYm9ybiwgMTkuIEF1ZyAyMDAyLCAxMDo0MToyNyk6Cn4jISBybj1Tb2xteXIgcnQ9MTAyOTc0NjE4MyByZz1wYXJ0eQp+IyEgdGlkPTEwMjk3MDE2MjYKU3VwZXIsIGpldHp0IGlzdCBtaXIgd2llZGVyIGRlbiBnYW56ZW4gVGFnIHNjaGxlY2h0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBwYXJ0ZXkgLi4uIChHbG9pbnNvbiwgMTkuIEF1ZyAyMDAyLCAxMzowNzo0MCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAyOTc0NjQ4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjk3MDE2MjYKWmF1YmVydHJhbmsgZ2VzdWNodD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBwYXJ0ZXkgLi4uIChHcmltbWJvcm4sIDE5LiBBdWcgMjAwMiwgMTM6MjE6NDcpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAyOTc1NTI2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjk3MDE2MjYKTmVpbiwgRGV0YWlscyB6dSBTb2xteXJzIExpZWJlc2xlYmVuIGVyZmFocmVuLCBkaWUgaWNoIG5pZSBoYXR0ZSB3aXNzZW4Kd29sbGVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMZXV0ZSBnaWJ0J3MgLi4uIChMaWFyYSwgMTkuIEF1ZyAyMDAyLCAyMDo0MDo0Myk6CgpEZWluZSBGcmV1bmRpbiBYeHh4eHh4eHggdGVpbHQgRGlyIG1pdDogR2VzZWduZXQgc2VpIE1vcmdvdGggOi0pCgpaWkwsIHN1Y2h0IG5hY2ggZGVyIFp3YW5nc2phY2tlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogcGFydGV5IC4uLiAoQXBvbGxvbmlhLCAxOS4gQXVnIDIwMDIsIDIyOjQ5OjEzKToKfiMhIHJuPUd1YXJkIHJ0PTEwMjk3OTAwNjEgcmc9cGFydHkKfiMhIHRpZD0xMDI5NzAxNjI2Ck51IGRhbmsgZ2VmYWVsbGlnc3QgYXVjaCBDaW5kZXJlbGxhIHVuZCBtaXIsIHNvbnN0IGhhZXR0ZXN0ZSBkaWUgZ2FuemUgV29jaGUKRWllcnJhdmlvbGkgZnV0dGVybiBtdWVzc2VuIDpvKSkpKSkpCgpBcG8qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogcGFydGV5IC4uLiAoUm9jaHVzLCAxOS4gQXVnIDIwMDIsIDIyOjUxOjA2KToKfiMhIHJuPUFwb2xsb25pYSBydD0xMDI5NzkwMTUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTcwMTYyNgpVbmQgTnVkZWxuIG1pdCBsZWNrZXJlciBTYXVjZSwgdW5kIENoaWxpIGNvbiBDYXJuZSwKdW5kIGxlY2tlcmVzIEdyaWxsZmxlaXNjaC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IHBhcnRleSAuLi4gKEdsb2luc29uLCAxOS4gQXVnIDIwMDIsIDIyOjUxOjM4KToKfiMhIHJuPUFwb2xsb25pYSBydD0xMDI5NzkwMTUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTcwMTYyNgouLi4gdW5kIGRhcyB3byBlcyBiZWkgQWxkaSBnYXIga2VpbmUgRG9zZW5yYXZpb2xpIGdhYiB1bmQgd2lyIGRpZSBlcnN0CmZyZW1kaW1wb3J0aWVyZW4gbXVzc3Rlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBwYXJ0ZXkgLi4uIChBcG9sbG9uaWEsIDE5LiBBdWcgMjAwMiwgMjI6NTU6MDgpOgp+IyEgcm49Um9jaHVzIHJ0PTEwMjk3OTAyNjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5NzAxNjI2CkFsc28gd2VubiBtYW4gRGlyIGF1Y2ggbm9jaCBBbndlaXN1bmdlbiBnZWJlbiBtdXNzLCB3aWUgbWFuIGVpbiBDaGlsaSBtYWNodCwKZGFubiBpc3QgZGFzIG5pY2h0IGVpZ2VuaGFlbmRpZyBnZWtvY2h0LCBSb2NodXMhIE9rYXksIGRpZSBTcGFnaGV0dGkgaGFidCBJaHIKSnVuZ3MgaGluZ2VrcmllZ3QsIGFiZXIgZGFzIHNvbGx0ZSBqYSBudSB3aXJrbGljaCBrZWluIFByb2JsZW0gc2Vpbi4gVW5kCmVyemFlaGwgbWlyIGpldHp0IG5pY2h0LCBEVSBoYWV0dGVzdCBkYXMgR3JpbGxmbGVpc2NoIGdlamFndCA6bykpKSkpCgpBcG8qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogcGFydGV5IC4uLiAoUm9uZGEsIDE5LiBBdWcgMjAwMiwgMjI6NTg6NDkpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwMjk3OTA1MDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5NzAxNjI2CkFlaG0uIEFsc28uIE51ciBmdWVycyBQcm90b2tvbGwsIEFwb2xsb25pYS4uLiBDaGlsaS4gRGFzIG1hY2h0IG1hbiBERUZJTklUSVYKb2huZSBTcGFnaGV0dGkuIFVuZCBzY2hvbiBnYXIgb2huZSBHcmlsbGZsZWlzY2guIEdBTlogc2ljaGVyLgoKUm9uZGEgKnd1bmRlcnQgc2ljaCBiZWkgREVSIFBhcnR5IHVlYmVyIG5peCBtZWhyKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IHBhcnRleSAuLi4gKFJvY2h1cywgMTkuIEF1ZyAyMDAyLCAyMjo1OToxNSk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTAyOTc5MDUwOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMjk3MDE2MjYKSGFldHRlc3QgRHUgZXMgb2huZSBSZXplcHQgZ2Vrb25udCwgb2huZSBlcyBqZSB2b3JoZXIKZ2VtYWNodCB6dSBoYWJlbj8gQXVzc2VyZGVtIHdhciBkYXMgendlaXRlIG1hbCBvaG5lCkFud2Vpc3VuZ2VuIDopClVuZCB3ZXIgZGFzIEdyaWxsZmxlaXNjaCBnZWphZ3QgaGF0LCB3aXJzdCBEdSBiZWltCkVudHdpY2tlbG4gRGVpbmVyIEZvdG9zIHNlaGVuIDotKQoKICBSb2NodXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBwYXJ0ZXkgLi4uIChBcG9sbG9uaWEsIDE5LiBBdWcgMjAwMiwgMjI6NTk6MjkpOgp+IyEgcm49Um9uZGEgcnQ9MTAyOTc5MDcyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjk3MDE2MjYKSWNoIGhhYiBuaWNodCBnZXNhZ3QsIGRhc3MgZGFzIGFsbGVzIHp1bSBnbGVpY2hlbiBaZWl0cHVua3QgaW4gZWluZW0gVG9wZiB3YXIKOm8pCgpBcG8qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogcGFydGV5IC4uLiAoQXBvbGxvbmlhLCAxOS4gQXVnIDIwMDIsIDIzOjAwOjEzKToKfiMhIHJuPVJvY2h1cyBydD0xMDI5NzkwNzU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTcwMTYyNgpJY2ggZ2ViIGphIHp1LCBEdSBiaXN0IGtvY2h0ZWNobmlzY2ggZHVyY2hhdXMgbGVybmZhZWhpZyA6bykKCkFwbyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvc28gKFBpdGZhbGwsIDIwLiBBdWcgMjAwMiwgMTQ6NDI6MzEpOgpEZWluIEZyZXVuZCBHdWFyZCB0ZWlsdCBEaXIgbWl0OiBicm90aSwgd2FzIGdpYnMgZGVubiBpbiBkZWluZXIgaG9zZSB6dQpEZWluIEZyZXVuZCBHdWFyZCB0ZWlsdCBEaXIgbWl0OiBmb3RvZ3JhZmllcmVuPwpEZWluIEZyZXVuZCBHbm9tZSB0ZWlsdCBEaXIgbWl0OiAtPiBhcmJlaXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh1ZWxmZSEgKFdvb2R5LCAyMC4gQXVnIDIwMDIsIDE1OjEzOjM2KToKUmlrdXMgdGVpbHQgRGlyIG1pdDogdGphLCBlaW5lciBtdXNzIGVzIGphIG1hbCBtYWNoZW4gOikKRGljaCBncnVzZWx0IGVpbiBiaXNzY2hlbi4KWy4uLl0KUmlrdXMgdGVpbHQgRGlyIG1pdDogZ25hIDopClZpZWxsZWljaHQgc29sbHRlc3QgRHUgc2NobmVsbCB2b24gaGllciB2ZXJzY2h3aW5kZW4uCgoqYW5nc3QqCldvb2R5Li0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNsZXZlcj8gTmljaHQgd2lya2xpY2guIChEb3R6LCAyMC4gQXVnIDIwMDIsIDE2OjA2OjE1KToKVm9uIFhYWDogaG0uLmhhc3QgZHUgemVpdCBmdWVyIGF1c2JpbGR1bmc/CkFuIFhYWDogaWNoIHN1Y2ggZ3JhZCBtYWwgd2llZGVyIG5lbiBmZWhsZXIgaW4gbWVpbmVtCkFuIFhYWDogdGYta3JhbXMKWFhYIGthbm4gbmljaHRzIGhvZXJlbiwgZGEgc2llIFBldGVyc2lsaWUgaW4gZGVuIE9ocmVuIGhhdC4gCkRpZSBNaXR0ZWlsdW5nIHd1cmRlIHZvbiBlaW5lbSBrbGVpbmVuIEtvYm9sZCBpbiBFbXBmYW5nIGdlbm9tbWVuLgpFciB3aXJkIHNpZSBzcGFldGVyIHdlaXRlcmxlaXRlbiEKCk9obmUgV29ydGUgKHdvenUgYXVjaCkKRG90eiwgV0cKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDbGV2ZXI/IE5pY2h0IHdpcmtsaWNoLiAoTXVwZmVsLCAyMC4gQXVnIDIwMDIsIDE2OjA3OjE5KToKfiMhIHJuPURvdHogcnQ9MTAyOTg1MjM3NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjk4NTIzNzUKWFhYIHdvbGx0ZSBoYWx0IEF1c2JpbGR1bmcsIGtlaW4gdWViZXJmbHVlc3NpZ2VzIEdlbGFiZXIgOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IENsZXZlcj8gTmljaHQgd2lya2xpY2guIChBcG9sbG9uaWEsIDIwLiBBdWcgMjAwMiwgMTY6MTY6MDEpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMjk4NTI0Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5ODUyMzc1CkVzIHdpcmQgd2lya2xpY2ggWmVpdCBmdWVyIG5lbiBEcmlsbCBJbnN0cnVjdG9yIDpvKQoKQXBvKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQ2xldmVyPyBOaWNodCB3aXJrbGljaC4gKEVsaXphYmV0aCwgMjAuIEF1ZyAyMDAyLCAxNjoyMzoxNSk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTAyOTg1Mjk2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjk4NTIzNzUKdmxsIHdvbGx0ZSBkaWVzZXIgZ2V3aXNzZSBzcGllbGVyIGphIG5pY2h0cyBob2VyZW4sIHVuZCBkYXMgc2Nob24gdm9yIGVpbiBwYWFyCnN0dW5kZW4gd2VpbCBqZW1hbmQgbWl0Z2VzbmlmZnQgaGF0IGFsc28gaGF0IGRpZXNlciBzcGllbGVyIHNpY2ggcGV0ZXJzaWxpZSBpbgpkaWUgb2hyZW4gZ2VzdG9wZnQgZGFtaXQgZGVyIG1pdHNuaWZmZXIga2VpbmUgdG1zIGFiZmFlbmd0IHVuZCBkYW5uIGhhdCBzaWUKZGFzIGJlc3RpbW10IHZlcmdlc3Nlbi4KS2FubiBhYmVyIGF1Y2ggZ2FueiBhbmRlcnMgZ2V3ZXNlbiBzZWluLgpFbGl6YWJldGguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBDbGV2ZXI/IE5pY2h0IHdpcmtsaWNoLiAoQm9pbmcsIDIwLiBBdWcgMjAwMiwgMTY6MzY6NTIpOgp+IyEgcm49RWxpemFiZXRoIHJ0PTEwMjk4NTMzOTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5ODUyMzc1CkRhcyBtdXNzIG1hbiBqZXR6dCBuaWNodCB3aXJrbGljaCB2ZXJzdGVoZW4sIG9kZXI/IDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IENsZXZlcj8gTmljaHQgd2lya2xpY2guIChHbG9pbnNvbiwgMjAuIEF1ZyAyMDAyLCAxNjozODoyMyk6Cn4jISBybj1Cb2luZyBydD0xMDI5ODU0MjEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTg1MjM3NQpOYWphLCBkYSBrb21tdCBkYXZvbiwgd2VubiBtYW4gbnVyIGplZGUgendlaXRlIFplaWxlIGRlciBMaWIgbGllc3QgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hY2hyaWNodGVuPz8/IChMaWFyYSwgMjAuIEF1ZyAyMDAyLCAxNjo0Mzo1Mik6CltOYWNocmljaHRlbjpSUE9dIEpvdXJuYWw6IEplYW5ldHRlIEJpZWRlcm1hbm4ga2lmZnRlIHVuZCBrbGF1dGUgYWxzIFRlZW5hZ2VyOwpbTmFjaHJpY2h0ZW46UlBPXSBTY2hvbiBhbHMgMTMtSmFlaHJpZ2UgaGVpbWxpY2ggZ2VyYXVjaHQKW05hY2hyaWNodGVuOlJQT10gcnAtb25saW5lLmRlL25ld3Mvam91cm5hbC8yMDAyLTA4MjAvamVhbmV0dGUuaHRtbAoKQWVoLCBoYXR0ZSBIYXRlIG5pY2h0IGlyZ2VuZHdhcyB2b24gTmFjaHJpY2h0ZW4gZ2VzYWd0PyBPZGVyIGlzdCBkYXMgZWhlciBlaW5lCmF1ZmdydW5kIGRlciBmZWhsZW5kZW4gQmViaWxkZXJ1bmcgZ3V0IGdldGFybnRlIEtsYXRzY2hlYmVuZT8KClpaTCwgYmVrb21tdCBzb3dhcyBpbnp3aXNjaGVuIG5pY2h0IG1hbCBtZWhyIHZvbiBpaHJlciBGcmlzZXVyaW4gdm9yZ2VzZXR6dAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQ2xldmVyPyBOaWNodCB3aXJrbGljaC4gKEJhbWJpLCAyMC4gQXVnIDIwMDIsIDE4OjAwOjU1KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMjk4NTQzMDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5ODUyMzc1CldhcyBtZWludGUgc2llIG51biBtaXQgc25pZmZlbj8KU25vb3Blbj8gVW5nZWZyYWd0ZXMgU25vb3Blbj8gVm9yaGVyIGFuZ2VrdWVuZGlndGVzIFNub29wZW4/IFdhcyBnYW56IGFuZGVyZXM/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBDbGV2ZXI/IE5pY2h0IHdpcmtsaWNoLiAoR3JpbW1ib3JuLCAyMC4gQXVnIDIwMDIsIDE4OjAzOjA5KToKfiMhIHJuPUJhbWJpIHJ0PTEwMjk4NTkyNTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5ODUyMzc1CkRhIG11c3N0IER1IEtvbnN0YW50aW4gV2Vja2VyIGZyYWdlbiwgZGVyIGtlbm50IHNpY2ggZGEgYXVzLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBDbGV2ZXI/IE5pY2h0IHdpcmtsaWNoLiAoRWxpemFiZXRoLCAyMC4gQXVnIDIwMDIsIDE4OjE0OjIzKToKfiMhIHJuPUJhbWJpIHJ0PTEwMjk4NTkyNTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5ODUyMzc1CmljaCBtZWluZSBzbmlmZmVuLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IENsZXZlcj8gTmljaHQgd2lya2xpY2guIChHbG9pbnNvbiwgMjAuIEF1ZyAyMDAyLCAxODoxOTozMik6Cn4jISBybj1FbGl6YWJldGggcnQ9MTAyOTg2MDA2MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjk4NTIzNzUKRHUgZXJ3YXJ0ZXN0IG5pY2h0IGVybnN0aGFmdCwgZGFzcyBlaW4gTWFnaWVyIGFuIERlaW5lciBMZWl0dW5nIGhhZW5ndCwgb2Rlcj8KT2RlciB3b2xsdGVzdCBEdSBudXIgbWFsIHByb3R6ZW4gdW5kIGhhc3QgZGVzaGFsYiBWb2thYnVsYXJlIHZlcm1pc2NodD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IENsZXZlcj8gTmljaHQgd2lya2xpY2guIChFbGl6YWJldGgsIDIwLiBBdWcgMjAwMiwgMTg6MjA6MzUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAyOTg2MDM3MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMjk4NTIzNzUKbm9lCmRhcyBoYXQgdWViZXJoYXVwdCBuaWNodHMgbWl0IG1hZ2llcm4gdW5kIG11ZCB1bmQgc29uc3R3YXMgenUgdHVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IENsZXZlcj8gTmljaHQgd2lya2xpY2guIChHbG9pbnNvbiwgMjAuIEF1ZyAyMDAyLCAxODoyMTowNyk6Cn4jISBybj1FbGl6YWJldGggcnQ9MTAyOTg2MDQzNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjk4NTIzNzUKcS5lLmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQ2xldmVyPyBOaWNodCB3aXJrbGljaC4gKEVsYmVyZXQsIDIwLiBBdWcgMjAwMiwgMTg6MjE6MTEpOgp+IyEgcm49RWxpemFiZXRoIHJ0PTEwMjk4NjA0MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5ODUyMzc1Cm5pbW0gY3RtCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGFydHluYWNobGVzZTogU3VjaGUgVWhyIChMaWFyYSwgMjAuIEF1ZyAyMDAyLCAxOToyNDoxMik6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAyOTg1NTM2OSByZz1wYXJ0eQp+IyEgdGlkPTEwMjk4NTUzNjkKR2VuYXUuIEFsbGVzIHdhcyB0ZXVyZXIgaXN0LCBoYWJlIGljaCBkYSB2ZXJsb3Jlbi4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYXVjaCB2b24gbWlyIGRhbmtlIDopIChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMiwgMTY6MDY6NDcpOgp+IyEgb249RWxiZXJldCBvdD0xMDI5OTM3Nzg0IG9nPXBhcnR5Cn4jISBybj1DYXJlbiBydD0xMDI5OTM3NzIwIHJnPXBhcnR5Cn4jISB0aWQ9MTAyOTkzNzcyMApkZXIgYXJtZSBLYWVwdG4gOikKCkVsYmkgKHd1ZXJkZSBkZW4gS2FlcHRuIGF1Y2ggZGFubiB3aWVkZXIgcmV0dGVuKSAKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogYXVjaCB2b24gbWlyIGRhbmtlIDopIChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMiwgMTY6MDY6NDgpOgp+IyEgb249RWxiZXJldCBvdD0xMDI5OTM4Mjg3IG9nPXBhcnR5Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjk5Mzc3ODQgcmc9cGFydHkKfiMhIHRpZD0xMDI5OTM3NzIwCnN0ZWNrZSBhbGxlIEh5YWVuZW4gaW4gR2VsZGJvZXJzZQoKa2t3ZXIgCmtrd2VyCgooZnVlciBab29rIHp1bmdlcmF1c3N0cmVjazopICkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGF1Y2ggdm9uIG1pciBkYW5rZSA6KSAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDIsIDE2OjA2OjQ5KToKfiMhIG9uPU1hbmRyYWdvbiBvdD0xMDI5OTM4NjY0IG9nPXBhcnR5Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjk5MzgyODcgcmc9cGFydHkKfiMhIHRpZD0xMDI5OTM3NzIwCgpJbnRlcmVzc2FudGVyIEFydGlrZWwgLi4uIEltcHJlc3Npb25pc211cz8KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogYXVjaCB2b24gbWlyIGRhbmtlIDopIChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMiwgMTY6MDY6NTApOgp+IyEgb249RWxiZXJldCBvdD0xMDI5OTM4Nzg1IG9nPXBhcnR5Cn4jISBybj1NYW5kcmFnb24gcnQ9MTAyOTkzODY2NCByZz1wYXJ0eQp+IyEgdGlkPTEwMjk5Mzc3MjAKZGVyIHdhciBzcGV6aWVsbCBmdWVyIFpvb2sgOikKCkdyaW1tYm9ybiB2ZXJsZWdlbiBzaWUKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGF1Y2ggdm9uIG1pciBkYW5rZSA6KSAoR3JpbW1ib3JuLCAyMS4gQXVnIDIwMDIsIDE2OjA3OjIxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI5OTM4ODEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTkzNzcyMApWZXJzdWNodCBkb2NoIG1hbCBzZWxiZXIgZHJhdWYgenUgYWNodGVuIHdvIGlociBsYW5kZXQsIGRhbm4gYmxlaWJ0IGF1Y2ggZGVyCkJlenVnIGRlciBBcnRpa2VsIGluIE9yZG51bmcuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGF1Y2ggdm9uIG1pciBkYW5rZSA6KSAoRm9vYmFyLCAyMS4gQXVnIDIwMDIsIDE2OjA3OjQzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDI5OTM4ODQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTkzNzcyMApBbXRzbXVlZGUsIEdyaW1tYm9ybj8gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBhdWNoIHZvbiBtaXIgZGFua2UgOikgKEVsYmVyZXQsIDIxLiBBdWcgMjAwMiwgMTY6MDg6MzgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMjk5Mzg4NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5OTM3NzIwCmFsc28gZGVyIGVyc3RlIGFydGlrZWwgYmV6b2cgc2ljaCB0YXRzYWVjaGxpY2ggYXVmIGRlbiByaWNodGlnZW4gYXJ0aWtlbCBpbgpkZXIgcmljaHRpZ2VuIHJ1YnJpay4gd2VubiBkdSBhdWYgZGVyIHBhcnR5IGdld2VzZW4gd2FlcnN0LCBkYW5uIGhhZXR0ZXN0IGR1CmRhcyB2aWVsZWljaHQgd2lzc2VuIGtvZW5uZW4sIGFuc29uc3RlbiBmcmFnIEF1Z2VuemV1Z2VuIHdpZSB6QiBDYXJlbiA6KSAoZGllCmlzdCBlaCBhbiBhbGxlbSBzY2h1bGQgOykgCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBhdWNoIHZvbiBtaXIgZGFua2UgOikgKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAyLCAxNjoxOTozMCk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMjk5Mzg5MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5OTM3NzIwCk5pY2h0IGFtdHNtdWVkZSwgYWJlciBkYXMgQXJiZWl0cy9UZW1wZXJhdHVydmVyaGFlbHRuaXMgZ2VodCBtaXIgYXVmIGRlbiBLZWtzCigyNy41IEdyYWQgYWt0dWVsbCkuIFVuZCB3ZW5uIGljaCBlaW5lbiBnYW56ZW4gU2Nod3VuZyB2ZXJsZWdlIGthbm4gZXMKc2Nob25tYWwgenUgS29sbGF0ZXJhbHNjaGFlZGVuIGtvbW1lbiwgZGFzIGdlaG9lcnQgZGF6dS4gQnJpY2h0IG1pciBkYXMgSGVyeiwKYWJlciBlY2h0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnJ1ZmUgLi4uIChWYW5pb24sIDIxLiBBdWcgMjAwMiwgMTg6MDg6MDApOgp+IyEgb249VmFuaW9uIG90PTEwMjk5NDYwNjAgb2c9ZW50d2lja2x1bmcKSWNoIGJpbiBkYWZ1ZXIsIGRhc3MgZGVyIEJlZmVobCAncnVmZScgaW4gJ2JydWVsbGUnIHVtYmVuYW5udCB3aXJkLiBJY2ggaGFiZQpkYXMgR2VmdWVobCwgZGllc2VyIEF1c2RydWNrIHRyaWZmdCBlaGVyIGRhcywgd2FzIGRpZSBtZWlzdGVuIFNwaWVsZXIgYmVpCmVpbmVtIFJ1ZmUtRGlhbG9nIGZ1ZWhsZW4uIDo9KQoKVioKUFM6IGZicnVlbGxlIG11c3MgbnVyIGJlaSBBdXNuYWhtZXNwaWVsZXJuIGVpbmdlZnVlaHJ0IHdlcmRlbiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBydWZlIC4uLiAoR2xvaW5zb24sIDIxLiBBdWcgMjAwMiwgMTg6MTg6MDcpOgp+IyEgcm49VmFuaW9uIHJ0PTEwMjk5NDYwODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5OTQ2MDgwCkF1c3NlcmRlbSBzb2xsdGUgZXMgenVzYWV0emxpY2ggenVyIEtvbnplbnRyYXRpb24gTGViZW5zcHVua3RlIGtvc3RlbiB1bmQKdm9ydWViZXJnZWhlbmQgenUgSGVpc2Vya2VpdCB1bmQgU3RpbW1iYW5kcHJvYmxlbWVuIGZ1ZWhyZW4uCgpbVG9kOlZlcmtub3RldGUgU3RpbW1iYWVuZGVyIGhhYmVuIGdlcmFkZSBYWVogZXJ3dWVyZ3QuXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBydWZlIC4uLiAoRWxpemFiZXRoLCAyMS4gQXVnIDIwMDIsIDE4OjE5OjEzKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMjk5NDY2ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5OTQ2MDgwCmhhdCBhbWFyeWxsaXMgbmljaHRtYWwgaGVpc2Vya2VpdCBwcm9ncmFtbWllcnQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEdsb2luc29uLCAyMS4gQXVnIDIwMDIsIDE4OjE5OjIzKToKCltBYmVudGV1ZXI6TW9vbnNoaW5lXSBCaXMgZ2xlaWNoIDspCltBYmVudGV1ZXI6Q3JvZnRdIHVuZCBzb2xhbmcgZXIgZGljaCB2ZXJmZWhsdCBpc3QgZGFubiBhbGxlcyBpbiBidXR0ZXIgOi0pCltUb2Q6TGFyc10gVnVsY2FuIGhhdCBnZXJhZGUgTW9vbnNoaW5lIHVtZ2VicmFjaHQuCltUb2Q6TW9vbnNoaW5lXSBIQSEgSWNoIGJpbiB0b3QuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHJ1ZmUgLi4uIChMaWFyYSwgMjEuIEF1ZyAyMDAyLCAxODoyMDo0MSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDI5OTQ2Njg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTk0NjA4MApNZWluIEJydWVsbGUtU2tpbGwgaXN0IHNvIGhvY2gsIGRhIHZlcmtub3RldCBzaWNoIG5peC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHJ1ZmUgLi4uIChHcmltbWJvcm4sIDIxLiBBdWcgMjAwMiwgMTk6NDU6NTcpOgp+IyEgcm49TGlhcmEgcnQ9MTAyOTk0Njg0MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjk5NDYwODAKaWdub3JpZXJlIHJ1ZmUsIGlnbm9yaWVyZSBydWYKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQbHVtcHMgaW5zIEtsbz8gKEdyaW1tYm9ybiwgMjEuIEF1ZyAyMDAyLCAyMTo1ODowOCk6Cn4jISBybj1Sb2xhbmQgcnQ9MTAyOTk1OTcxMCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMjk4NTkzNzkKVW5kIHdvaGluIGdlaHQgZGFzIFdlZ3NjcmlwdCBmdWVyIGRpZSBMZXV0ZSwgZGllIGRhcyBpbnRlcmVzc2llcnQ/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFBsdW1wcyBpbnMgS2xvPyAoQmFtYmksIDIxLiBBdWcgMjAwMiwgMjM6NTk6MjgpOgp+IyEgb249QmFtYmkgb3Q9MTAyOTk2NzE2MiBvZz1hbGxnZW1laW5lcwp+IyEgcm49R2xvaW5zb24gcnQ9MTAyOTk2NjkwNSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMjk4NTkzNzkKV2VubiBEdSBtaXIgZWluZSBQZXRpdGlvbiBvZGVyIHNvIHNjaGlja3N0LCBtYWNoIGljaCBkYXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogUGx1bXBzIGlucyBLbG8/IChFbGJlcmV0LCAyMi4gQXVnIDIwMDIsIDAwOjAwOjA1KToKfiMhIG9uPUVsYmVyZXQgb3Q9MTAyOTk2NzE4NSBvZz1hbGxnZW1laW5lcwp+IyEgcm49QmFtYmkgcnQ9MTAyOTk2NzE2MiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMjk4NTkzNzkKYmVpc3MgV3VyemVsIGVpbmZhY2ggZWluIE9ociBhYiAuLi4KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFVuZCBub2NoIGVpbiBCZWZlaGwgdm9uIG9iZW4gYXVzZ2VmdWVocnQuLi4gKENhdHdlYXpsZSwgMjIuIEF1ZyAyMDAyLCAwOToyNDowNSk6Cn4jISBybj1WYW5pb24gcnQ9MTAyOTk0MzU1NSByZz1kLnZsYW5kCn4jISB0aWQ9MTAyOTc2NjU0NgpIZWggaGVoIDotKQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogcGFydHkgb2RlciBzbyB3YXMgKFpvb2ssIDIyLiBBdWcgMjAwMiwgMTQ6MDM6NDApOgp+IyEgcm49UGl0ZmFsbCBydD0xMDMwMDEyNjQxIHJnPXRyZWZmZW4KfiMhIHRpZD0xMDMwMDEyNjQxCkdpYnRzIGRhIG51biBlbmRsaWNoIGF1Y2ggQmllcj8gCgpab29rLCBnYWd3aWVkZXJob2xlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHBhcnR5IG9kZXIgc28gd2FzIChQaXRmYWxsLCAyMi4gQXVnIDIwMDIsIDE0OjUxOjEzKToKfiMhIHJuPVpvb2sgcnQ9MTAzMDAxNzgyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzAwMTI2NDEKbGVpZGVyIG5laW4gOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHBhcnR5IG9kZXIgc28gd2FzIChHbG9pbnNvbiwgMjIuIEF1ZyAyMDAyLCAxNDo1MjowMyk6Cn4jISBybj1QaXRmYWxsIHJ0PTEwMzAwMjA2NzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMwMDEyNjQxCkRhIG11c3MgWm9vayB3b2hsIHNlaW4gS2lsbGVyYmllciB2b3JiZWlicmluZ2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogcGFydHkgb2RlciBzbyB3YXMgKFBpdGZhbGwsIDIyLiBBdWcgMjAwMiwgMTQ6NTI6NDMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAzMDAyMDcyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzAwMTI2NDEKKmR1IHdpbGxzdCBtaXIga2VpbiBraWxsZXJiaWVyIHZlcmthdWZlbioKKmR1IHdpbGxzdCBuYWNoIGhhdXNlIGdlaGVuIHVuZCBtdWggcnVmZW4qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBwYXJ0eSBvZGVyIHNvIHdhcyAoR2xvaW5zb24sIDIyLiBBdWcgMjAwMiwgMTQ6NTM6NDYpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDMwMDIwNzYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDAxMjY0MQpLbGFwcGUgaGFsdGVuLCBzb25zdCBrcmllZ3N0ZSBudXIgQmVsbGZydWVzdGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQnVlY2hlciBnZXN1Y2h0IChNb250YW51cywgMjIuIEF1ZyAyMDAyLCAxNzoxMTo0NCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzMDAxODk1MiByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwMzAwMTg5NTIKTW9yZ2kgLQpkYXMgZ2xhdWJ0IGRpciBkb2NoIGtlaW5lciwgZGFzcyBkdSBuZSBNYSBoYXN0LiA6LSkKR2licyB6dSwgZGllIEJ1ZWNoZXIgc2luZCBmdWVyIGRpY2ggc2VsYnN0LiBGdWVyIGRlaW5lIHdlaWNoZSwgbmllZGxpY2hlClNlaXRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUEMgKFZhbmlvbiwgMjIuIEF1ZyAyMDAyLCAxODoxODowMCk6CkFiIHNvZm9ydCBzaW5kIFp3ZXJnZSBuaWNodCBtZWhyIGFscyBzb2xjaGUgenUgYmV6ZWljaG5lbiwgc29uZGVybgoKICAiSG9yaXpvbnRhbCBiZW5hY2h0ZWlsaWd0ZXIgTWl0c3BpZWxlciBuZWJzdCBHZXJ1Y2giCgpCaXR0ZSBoYWx0ZXQgZXVjaCBkYXJhbiwgZGFtaXQgc2ljaCBrZWluIFp3ZXJnIGJlbmFjaHRlaWxpZ3QgZnVlaGx0LCB3ZWlsIGVyCmFscyBad2VyZyBiZXNjaGltcGZ0IHdpcmQuCgpEYW5rZQpEaWUgRGlyZWt0aW9uLCBBYnRlaWx1bmcgUEMKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQQyAoR3JpbW1ib3JuLCAyMi4gQXVnIDIwMDIsIDIxOjI0OjQxKToKfiMhIHJuPVZhbmlvbiBydD0xMDMwMDMzMDgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDAzMzA4MApJY2ggZmluZGUgZGFzIG5pY2h0IG9rLCBkYXNzIER1IGRhbWl0IGRpZSBhcm9tYWxvc2VuLCBmYWRlbiB1ZWJyaWdlbiBSYXNzZW4gc28KZGlza3JpbWluaWVyc3QuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUEMgKE1vbnRhbnVzLCAyMi4gQXVnIDIwMDIsIDIyOjM3OjUzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDMwMDQ0MjgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDAzMzA4MApOaW1tIGRhcyBXb3J0ICJSYXNzZSIgbmljaHQgaW4gZGVuIE11bmQsIGR1Li4uIFJhc3Npc3QuIEdlbmF1LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUEMgKEdyaW1tYm9ybiwgMjIuIEF1ZyAyMDAyLCAyMjo1MTo0OCk6Cn4jISBybj1Nb250YW51cyBydD0xMDMwMDQ4NjczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDAzMzA4MApJY2ggYmluIGRvY2ggbmljaHQgZGVzd2VnZW4gZ2xlaWNoIFJhc3Npc3QsIHdlaWwgaWNoIGRpZXNlIHNjaHd1bGVuCkJhZXVtZWZpY2tlciBhbHMgZGFzIGJlemVpY2huZSB3YXMgc2llIHNpbmQsIG9kZXI/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFBDIChNb250YW51cywgMjIuIEF1ZyAyMDAyLCAyMjo1Mjo0Nik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzMDA0OTUwOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzAwMzMwODAKTmVpbiwgZHUgZGFyZnN0IE1ham9yaXRhZXRlbiBkdXJjaCBkZW4gU2NobXV0eiB6aWVoZW4sIHNvbGFuZ2UgZHUgd2lsbHN0LiBBYmVyCmRhcyBXb3J0ICJSYXNzZSIgaW4gZGVuIE11bmQgbmVobWVuLCBkYXMgZ2Vob2VydCBzaWNoIGVpbmZhY2ggbmljaHQuClBmdWkuIEdlaCBpbiBkaWUgRWNrZSB1bmQgc2NoYWVtIGRpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogUGx1bXBzIGlucyBLbG8/IChTY2hva28sIDIyLiBBdWcgMjAwMiwgMjM6MDY6MTYpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwMzAwNTAzMjIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDI5ODU5Mzc5CgpJY2ggaGFiIGVpZ2VudGxpY2ggZ3J1bmRzYWV0emxpY2ggd2FzIGRhZ2VnZW4gYmVpIEJhbWJpIHNjaGVpc3NlbiB6dSBnZWhlbiAuLi4KOikKClNjaG9rbyAoc2NoZWkgLi4gYWVoaCBibGVpYnQgenUgSGF1c2UpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogUGx1bXBzIGlucyBLbG8/IChNdXBmZWwsIDIyLiBBdWcgMjAwMiwgMjM6MDk6NTYpOgp+IyEgcm49U2Nob2tvIHJ0PTEwMzAwNTAzNzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5ODU5Mzc5CkRhIGdpYnRzIGRhbm4gc29uIHdlaWNoZXMgRmVsbCB6dW0gYWJ3aXNjaGVuLi4uCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTXVzcyB1bnMgZGFzIEFuZ3N0IG1hY2hlbj8gOikgKEVsYmVyZXQsIDIyLiBBdWcgMjAwMiwgMjM6MjA6NTYpOgoKVm9uIEZyZXVuZCBab29rOiBab29rIGlzdCB3aXJyLgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFBsdW1wcyBpbnMgS2xvPyAoR3JpbW1ib3JuLCAyMi4gQXVnIDIwMDIsIDIzOjI3OjI1KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAzMDA1MTU2OSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMjk4NTkzNzkKUHJpbWEsIGRhbm4gc2NyaXB0ZSBtaXIgZG9jaCBiaXR0ZSBtYWwgZWluIHBhYXIgbmV1ZSBIYXVzc2NodWhlLCBpY2ggaGFiCmdlcmFkZSBmZXN0Z2VzdGVsbHQgZGFzcyBkYSBkaWUgU29obGUgZHVyY2hnZWJyb2NoZW4gaXN0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogUGx1bXBzIGlucyBLbG8/IChHbG9pbnNvbiwgMjIuIEF1ZyAyMDAyLCAyMzozMDo1Nik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzMDA1MTY0NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjk4NTkzNzkKRGF6dSBtdXNzdCBEdSB1bnMgZGFzIFBXIERlaW5lcyBDaGFycyBnZWJlbi4gQWxzbyBLYXJ0ZSB1bmQgR2VoZWltbnVtbWVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFBsdW1wcyBpbnMgS2xvPyAoQmFtYmksIDIyLiBBdWcgMjAwMiwgMjM6MzA6NTcpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMzAwNTA1OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5ODU5Mzc5CkV1Y2ggaXN0IHNjaG9uIGtsYXIsIGRhc3MgaWNoIGRhcyBsZXNlLCBqYT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBQbHVtcHMgaW5zIEtsbz8gKEdsb2luc29uLCAyMi4gQXVnIDIwMDIsIDIzOjMxOjI3KToKfiMhIHJuPUJhbWJpIHJ0PTEwMzAwNTE4NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5ODU5Mzc5CldpbGxzdCBEdSBkYXMgbWl0IGRlbSB3ZWljaGVuIEZlbGwgYmVzdHJlaXRlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBQbHVtcHMgaW5zIEtsbz8gKEdyaW1tYm9ybiwgMjIuIEF1ZyAyMDAyLCAyMzo0NjowMyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDMwMDUxODg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTg1OTM3OQpOZWluLCBlciB3b2xsdGUgZGFtaXQgYW5nZWJlbiBkYXNzIGVyIGxlc2VuIGthbm4sIG9mZmVuYmFyIGJlZnVlcmNodGV0IGVyIGRhCmJlcmVjaHRpZ3RlIFp3ZWlmZWwgZHJhbi4gQWJlciBrZWluZSBTb3JnZSwgbGF1dCBha3R1ZWxsZXIgV2VyYnVuZyBpc3QgZXMgZG9jaApnZXJhZGV6dSBpbiwgd2VubiBtYW4gbmljaHQgbGVzZW4ga2Fubi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFBsdW1wcyBpbnMgS2xvPyAoR2xvaW5zb24sIDIyLiBBdWcgMjAwMiwgMjM6NDg6MDMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzAwNTI3NjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDI5ODU5Mzc5CkFiZXIgbnVyIHdlbm4gbWFuIHZpZWxlIE1hZW5uZXIgaW5zIEJldHQgYmVrb21tdC4gT2Rlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldGRpZ2VzdCBtYWwgd2llZGVyLi4uIChGb29iYXIsIDIyLiBBdWcgMjAwMiwgMjM6NTk6MTApOgogRnJvbTogSnVlcmdlbiBOaWV2ZWxlciA8anVlcmdlbi5uaWV2ZWxlci5ub3NwYW1AYXJjb3IuZGU+CiBOZXdzZ3JvdXBzOiBkZS5hbHQuc3lzYWRtaW4ucmVjb3ZlcnkKIFN1YmplY3Q6IFJlOiBUb2xsZSBTb2Z0d2FyZS4uLgogRGF0ZTogMjEgQXVnIDIwMDIgMTA6NDA6MTMgR01UCgoga3JhdXNlQHNkYmsuZGUgKFNlYmFzdGlhbiBELkIuIEtyYXVzZSkgd3JvdGU6CgogPiBOYWNoIGRlciBMb2dpayBkZXIgIk9mZml6aWVsbGVuIiBrb2VubmVuIGlocmUgU3RhcmVua2Flc3RlbiBqYSBhdWNoCiA+IGdhciBuaWNodCB2ZXJrZWhyc2dlZmFlaHJkZW5kIHNlaW4uIAoKIEtvZWxuLCBTZXZlcmluc2JydWVja2U6IERvcnQgc29sbHRlIGVpbiBVbmZhbGxzY2h3ZXJwdW5rdCBzZWluLCBkZXNoYWxiIAogaGF0IG1hbiBlaW5lbiBTdGFyZW5rYXN0ZW4gYXVmZ2ViYXV0LiBKZXR6dCBzdGVsbHQgbWFuIGZlc3Q6IERlciAKIFVuZmFsbHNjaHdlcnB1bmt0IGhhdCBzaWNoIHZlcmxhZ2VydCAtIGF1ZiBjYS4gNTBtIHZvciBkZW4gU3RhcmVua2FzdGVuLgoKIExvZ2lzY2hlIFNjaGx1c3Nmb2xnZXJ1bmc6IERlciBTdGFyZW5rYXN0ZW4gbXVzcyB2ZXJzZXR6dCB3ZXJkZW4uCgogVW5sb2dpc2NoZSBBdXNmdWVocnVuZzogV2VpbCBub2NoIHNvIHZpZWxlIFN0YXJlbmthZXN0ZW4gYW0gTGFnZXIgc2luZCAKIChkZXIgT2JlcmJ1ZXJnZXJtZWlzdGVyIGhhdHRlIGV0bGljaGUgYWJtb250aWVyZW4gbGFzc2VuLCB1bSBzZWluIAogV2FobHZlcnNwcmVjaGVuIGVpbnp1bG9lc2VuKSBsYWVzc3QgZWluIFNhY2hiZWFyYmVpdGVyIGVpbmZhY2ggZWluZW4gbmV1ZW4gCiBTdGFyZW5rYXN0ZW4gNTBtIHZvciBkZW0gYWx0ZW4gYXVmYmF1ZW4gLSBkZXIgYWx0ZSBzb2xsIGRhbm4gCiAiaXJnZW5kd2FubiBtYWwgYWJnZWJhdXQgd2VyZGVuIi4KCiBTZWxic3QgZGVyIEtvZWxuZXIgT0IgaGF0IGVpbmUgR2VzY2htYWNrc3Byb2JlIHNlaW5lciBUaXNjaGthbnRlIAogZ2Vub21tZW4sIGFscyBkaWUgUHJlc3NlYW5mcmFnZW4ga2FtZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogUGx1bXBzIGlucyBLbG8/IChHcmltbWJvcm4sIDIzLiBBdWcgMjAwMiwgMDY6Mzg6MzApOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAzMDA1Mjg4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjk4NTkzNzkKT2RlciBHYWJlbHN0YXBsZXIgZmFocmVuIGthbm4sIGphLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogUGx1bXBzIGlucyBLbG8/IChWYW5pb24sIDIzLiBBdWcgMjAwMiwgMDY6NTE6MTUpOgp+IyEgcm49QmFtYmkgcnQ9MTAzMDA1MTg1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMjk4NTkzNzkKRGFzcyBpY2ggYXVmIGRpZXNlbiBBcnRpa2VsIGFudHdvcnRlIGlzdCBlaGVyIHp1ZmFlbGxpZzoKCklociBoYWJ0IGFiZXIgbmljaHQgZGVuIEVpbmRydWNrLCBkYXNzIGlociBNZWdhc2NobWFycm4tQXJ0aWtlbCB2ZXJzY2h3ZW5kZXQsCm9kZXI/CgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUEMgKFRyb3ksIDIzLiBBdWcgMjAwMiwgMDk6MjU6MjcpOgp+IyEgcm49TW9udGFudXMgcnQ9MTAzMDA0OTU2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzAwMzMwODAKbWVpbmVzIEVyYWNodGVucyBzaW5kIFp3ZXJnZSBuaWNodCBob3Jpem9udGFsIHNvbmRlcm4gdmVydGlrYWwgYmVuYWNodGVpbGlndC4KCkRpZSBwb2xpdGlzY2gga29ycmVrdGUgVWViZXJzZXR6dW5nIHZvbiAidmVydGljYWxseSBjaGFsbGVuZ2VuZCIgaGVpc3N0CnVlYnJpZ2VucyAidmVydGlrYWwgaGVyYXVzZ2Vmb3JkZXJ0Iiwgc2NobGllc3NsaWNoIHNvbGwgaGllciBuaWVtYW5kIGFscwoiYmVuYWNodGVpbGlndCIgYmV6ZWljaG5ldCB3ZXJkZW4uCgpUcm95CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBQQyAoR3JpbW1ib3JuLCAyMy4gQXVnIDIwMDIsIDA5OjMzOjE2KToKfiMhIHJuPVRyb3kgcnQ9MTAzMDA4NzUyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzAwMzMwODAKRWJlbiwgdW5kIGRpZXNlIGV4cGxvZGllcnRlIFJhdW1mYWVocmUgaGllc3MgYXVjaCAiSGVyYXVzZm9yZGVyZXIiLCBuaWNodAoiQmVuYWNodGVpbGlnZXIiLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBQQyAoTWFuZHJhZ29uLCAyMy4gQXVnIDIwMDIsIDA5OjM0OjEwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDMwMDg3OTk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDAzMzA4MApEaWUgaGF0cyBhYmVyIGF1Y2ggZWNodCBoZXJhdXNnZWZvcmRlcnQgLi4uCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFBDIChUcm95LCAyMy4gQXVnIDIwMDIsIDA5OjM0OjQ4KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDMwMDg4MDUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDAzMzA4MAp0amEuIEVpbmUgZWNodCBIZXJhdXNmb3JkZXJ1bmcgYW4gTWF0ZXJpYWwgdW5kIE1hc2NoaW5lICh1bmQgTWVuc2NoZW4pLi4uCgpUcm95CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogUGx1bXBzIGlucyBLbG8/IChFbGJlcmV0LCAyMy4gQXVnIDIwMDIsIDA5OjQ5OjEzKToKfiMhIHJuPVZhbmlvbiBydD0xMDMwMDc4Mjc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTg1OTM3OQpkb2NoIGdlbmF1IGRhcyB0dSBpY2gKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk8tVG9uIHZvbSBCZXJsaW5lciBTb25kZXJzdGF0aSAoQmlyZHksIDI0LiBBdWcgMjAwMiwgMjA6MDE6NDUpOgpDYWtleSB6dSBQaXRmYWxsOiAiSmEsIHNwcml0eiBpbiBtZWluZW4gTXVuZCEiCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTy1Ub24gdm9tIEJlcmxpbmVyIFNvbmRlcnN0YXRpIChFbGl6YWJldGgsIDI0LiBBdWcgMjAwMiwgMjA6MDI6MTUpOgp+IyEgcm49QmlyZHkgcnQ9MTAzMDIxMjEwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzAyMTIxMDUKKmxhY2gqIGdlc3Rlcm4gU3RhdGk/CkljaCBiaW4gZnVlciBSbGxvZ2dzIGRhIGthbWVuIG5vY2ggbWVociB2b24gZGVuIERpbmdlcm4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBQbHVtcHMgaW5zIEtsbz8gKE11cGZlbCwgMjQuIEF1ZyAyMDAyLCAyMDowMzozMSk6Cn4jISBybj1CYW1iaSBydD0xMDMwMDUxODU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTg1OTM3OQpKYS4gVW5kPyA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBQbHVtcHMgaW5zIEtsbz8gKEVsaXphYmV0aCwgMjQuIEF1ZyAyMDAyLCAyMDowMzo0MSk6Cn4jISBybj1NdXBmZWwgcnQ9MTAzMDIxMjIxMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMjk4NTkzNzkKYmFuYXVzZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE8tVG9uIHZvbSBCZXJsaW5lciBTb25kZXJzdGF0aSAoQ2FrZXksIDI1LiBBdWcgMjAwMiwgMTQ6MTg6MjcpOgp+IyEgcm49QmlyZHkgcnQ9MTAzMDIxMjEwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzAyMTIxMDUKSWNoIHNwcmVjaGUgQmlyZHkgaGllcm1pdCBqZWdsaWNoZSBadXJlY2hudW5nc2ZhZWhpZ2tlaXQgYWIuIEljaCBrYW5uIGRhcyBnYXIKbmljaHQgZ2VzYWd0IGhhYmVuLCB3ZWlsIGljaCBtaWNoIGdhciBuaWNodCBkcmFuIGVyaW5uZXJuIGthbm4uCgpDYWtleQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEp1bGktU3RhbW10aXNjaCBpbiBNdWVuY2hlbiAoR3JpbW1ib3JuLCAyNS4gQXVnIDIwMDIsIDIwOjE2OjA3KToKfiMhIHJuPU1pZXplIHJ0PTEwMzAyOTc1NzAgcmc9dHJlZmZlbgp+IyEgdGlkPTEwMzAyOTc1NzAKRGVuIEp1bGktU3RhbW10aXNjaCBFbmRlIEF1Z3VzdCBhYmhhbHRlbiAtIGljaCB3dXNzdGUgZG9jaCBkYXNzIGRpZSBCYXllcm4KaG9mZm51bmdzbG9zIHJ1ZWNrc3RhZW5kaWcgc2luZC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEp1bGktU3RhbW10aXNjaCBpbiBNdWVuY2hlbiAoT3JrdG9ldGVyLCAyNS4gQXVnIDIwMDIsIDIwOjE3OjI1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDMwMjk5MzY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDI5NzU3MApkYWZ1ZXIgZmFuZ2VuIGRpZSBkb2NoIElociBPa3RvYmVyZmVzdCBpbSBTZXB0ZW1iZXIgYW4sZCBhcyBnbGVpY2ggZGFzIHdpZWRlcgphdXMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFBDIChNdWFkaWIsIDI2LiBBdWcgMjAwMiwgMTQ6MDk6MjEpOgp+IyEgcm49VHJveSBydD0xMDMwMDg3NTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDAzMzA4MAp6d2VyZ2Ugc2luZCBlaCB3dWVyZmVsZm9lcm1pZywgZXMgaXN0IGFsc28gZWdhbCBvYiBzaWUgdmVydGlrYWwgb2Rlcgpob3Jpem9udGFsIGhlcmF1c2dlZm9yZGVydCBzaW5kLiBvZGVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFBsdW1wcyBpbnMgS2xvPyAoRWxiZXJldCwgMjYuIEF1ZyAyMDAyLCAxNDo1Mjo1Nik6Cn4jISBvbj1FbGJlcmV0IG90PTEwMzAzNjYzNTQgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU11YWRkaWIgcnQ9MTAzMDM2NjE4NyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMjk4NTkzNzkKaWNoIGhhYiBtZWluZSBGb2VybWNoZW4gZ2VyYWRlIHdpZWRlcmdlZnVuZGVuIDopCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpndWFyZGluZW4gKFBpdGZhbGwsIDI3LiBBdWcgMjAwMiwgMTU6Mjc6MDUpOgpHdWFyZCB0ZWlsdCBEaXIgbWl0OiBhbHNvIGljaCBtdXNzdGUgbWlyIG1laW5lIGJlbGxmcnVlc3RlIHp1c2FtbWVuYm9yZ2VuLCBkYQpHdWFyZCB0ZWlsdCBEaXIgbWl0OiB3YXIgbml4IHBhYXJ3ZWlzZSAuLSkKCgpQaXRmYWxsIHNjaHVldHRlbHQgc2ljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBndWFyZGluZW4gKEh1bW5pLCAyNy4gQXVnIDIwMDIsIDIwOjA1OjI5KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAzMDQ1NDgyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA0NTQ4MjUKV3VmZi4KCkh1bW5pIChiZWxsZnJ1c3RyaWVydCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRlNLIChHbG9pbnNvbiwgMjguIEF1ZyAyMDAyLCAxNTowMDowMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzMDUzOTQyNSByZz13aXR6ZQp+IyEgdGlkPTEwMzA1Mzc3MDQKSGFoLiBEaWUgVkJsZXIuIERpZSBQb3dlcnVzZXIsIGRpZSBtaXQgaWhyZW4gUHJvZ3JhbW1pZXJrZW5udG5pc3NlbiB1bmQKLXJlc3VsdGF0ZW4gZGFzIEltYWdlIHZvbiBXaW5kb3dzIGF1ZmdlYmF1dCBoYWJlbiB1bmQgYXVmcmVjaHRlcmhhbHRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFiZW50dWVyZXItVG9wbGlzdGU/IChFbGJlcmV0LCAyOC4gQXVnIDIwMDIsIDE2OjI0OjE1KToKfiMhIHJuPU11YWRkaWIgcnQ9MTAzMDU0NDYwMSByZz1naWxkZW4uYWJlbnRldXJlcgp+IyEgdGlkPTEwMzA1NDM5MDIKaWNoIHdpbGwgbmUgaWRsZXRvcGxpc3RlIDopKSkKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFBDIChQaXRmYWxsLCAyOC4gQXVnIDIwMDIsIDE2OjI3OjU5KToKfiMhIHJuPU1hdGlzIHJ0PTEwMzA1NDQ4NTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMwMDMzMDgwCmljaCB3aWxsIG5lIHRvcCBtdWhsaXN0ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQWJlbnR1ZXJlci1Ub3BsaXN0ZT8gKE9ya3RvZXRlciwgMjguIEF1ZyAyMDAyLCAxODo0OTo1MCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDMwNTUyOTkyIHJnPWdpbGRlbi5hYmVudGV1cmVyCn4jISB0aWQ9MTAzMDU0MzkwMgpBbHNvIGVpZ2VudGxpY2ggc29sbHRlIGVpbmUgQWJlbnRldXJlcnRvcGxpc3RlCgoxLiBudXIgc29sY2hlIFNwaWVsZXIgZXJmYXNzZW4gZGllIGluIGRlciBBRyBzaW5kICh1bmQgZGFtaXQgbWVpbmUgaWNoIG5pY2h0CmRhcyBHZWJhZXVkZSkKCjIuIE51ciBkaWUgZ2VzcGllbHRlbiBBYmVudGV1ZXIgYmVydWVja3NpY2h0aWdlbgoKWnUgMi4gZW50Z2VnZW4gbWVpbmVtIGVyc3RlbiBWb3JzY2hsYWcgZGFzIGRpZSBaYWhsIGRlciBBUCBnZWx0ZW4gc29sbHRlLApzb2xsdGUgbWFuIHdvaGwgZWhlciBkZW4gUXVvdGllbnRlbiBhdXMgQVAgdW5kIGdlc3BpZWx0ZW4gUXVlc3RzIG5laG1lbiwgc29uc3QKcmVpY2h0IGphIHN0dXBpZGVzIHJ1bnRlcnNwaWVsZW4gYWxsZXIgUXVlc3RzIHVtIGluIGRlciBMaXN0ZSBuYWNoIG9iZW4genUKa29tbWVuICpnKgpTbyBpc3QgZGFubiBMZWlzdHVuZyBnZWZvcmRlcnQgKkcqCgpPcmtUIGJpdHRlcmVybnN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQWJlbnR1ZXJlci1Ub3BsaXN0ZT8gKEVsYmVyZXQsIDI4LiBBdWcgMjAwMiwgMTk6Mzg6NTQpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMzA1NTYwODIgcmc9Z2lsZGVuLmFiZW50ZXVyZXIKfiMhIHRpZD0xMDMwNTQzOTAyCmFsc28gbWVpbiB2b3JzY2hsYWc6CmplZGVyIHNwaWVsZXIga3JpZWd0IHp1IGJlZ2lubiBlaW5lbiBQdW5rdC4KYWIgZGFubiB3ZXJkZW4gZGllIGFiZW50ZXVlcnB1bmt0ZSBkaWUgbWFuIGJla29tbWVuIGhhdCBkYXp1Z2V6YWVobHQgdW5kIGR1cmNoCmRpZSBhbnphaGwgZGVyIGFiZW50ZXVlciBnZXRlaWx0LCBkaWUgbWFuIGdlbWFjaHQgaGF0LgpTbyB3aWUgZHUgZXMgdm9yZ2VzY2hsYWdlbiBoYXN0LCBPcmt0b2V0ZXIuIFdlc3NlbiBRdW90aWVudCBob2VoZXIgaXN0LCBkZXIKbGllZ3Qgd2VpdGVyIHZvcm5lLiBGZWluZSB0b3BsaXN0ZSA6KQoKRWxiaQoKUFMgYWNoIGphIGRlbiBlaW5lbiBwdW5rdCB6dSBiZWdpbm4gYnJhdWNodCBtYW4gZGFtaXQgZGllIGxpc3RlIG5pY2h0IGJ1Z3QgOykKCkVsYmkKKGphamEgendlaSB1bnRlcnNjaHJpZnRlbiBzaW5kIG1pbmRlc3RlbnMgendlaSB6dXZpZWwpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBYmVudHVlcmVyLVRvcGxpc3RlPyAoR3JpbW1ib3JuLCAyOC4gQXVnIDIwMDIsIDE5OjQzOjQ2KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAzMDU1NjMzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA1NDM5MDIKTmVpbiwgZGllIERpdmlzaW9uIGR1cmNoIE51bGwgKGRpZSBtYW4gbmF0dWVybGljaCBhdWNoIHNvIGFiZmFuZ2VuIGthbm4pIGhhc3QKRHUgdHJvdHpkZW0uICgxK0FiZW50ZXVlcnB1bmt0ZSkvKDAgQWJlbnRldWVyKSBpc3QgaW1tZXIgbm9jaCBuaWNodCBkZWZpbmllcnQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEFiZW50dWVyZXItVG9wbGlzdGU/IChPcmt0b2V0ZXIsIDI4LiBBdWcgMjAwMiwgMTk6NDU6NDcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzA1NTY2MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMwNTQzOTAyCk5lZWUuLi4gZHUgc2llaHN0IGRpZSBhdWYgZGVyIEhhbmQgbGllZ2VuZGUgTG9lc3VuZyBuaWNodDogRXJzdCB3aXJkIGFiZ2VmcmFndApvYiBkZXIgU3BpZWxlciBzY2hvbiBlaW4gQWJlbnRldWVyIGdlbG9lc3QgaGF0LCB3ZW5uIG5pY2h0IHdpcmQgZXIgZnVlciBkaWUKVG9wbGlzdGUgZ2FyIG5pY2h0IGJlcnVlY2tzaWNodGlndC4gRGFzIGhhdCBhdWNoIG5vY2ggZGVuIFZvcnRlaWwsIGRhc3MsIGRhCmRpZSBqYSBuaWNodCBiZXJ1ZWNrc2ljaHRpZ3Qgd2VyZGVuLCBkYXMgYXVjaCB2aWVsIHdlbmlnZXIgUmVjaGVuYXVmd2FuZAptYWNodCwgZGFzIHp1IGJlcmVjaG5lbi4KCk9ya1QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBQYXJ0eWJpbGRlci4uLiAoWm9vaywgMjguIEF1ZyAyMDAyLCAxOTo0NjoyMyk6Cn4jISBvbj1ab29rIG90PTEwMzA1NTY3Nzcgb2c9cGFydHkKfiMhIHJuPVBlcmRpdGEgcnQ9MTAzMDU1Njc0NSByZz1wYXJ0eQp+IyEgdGlkPTEwMjk3NDExNTcKSGF0IERpciBzY2hvbiBtYWwgamVtYW5kIG1laW5lIEFydCBkZXIgVG9kby1MaXN0ZW4tU29ydGllcnVuZyBlcmtsYWVydD8gCkRhLCB3byBlcyBhbSBtZWlzdGVuIG5lcnZ0LCBkYXMgd2lyZCB3aWVkZXIgbmFjaCBnYW56IHVudGVuIGltIFN0YXBlbApzb3J0aWVydCA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEFiZW50dWVyZXItVG9wbGlzdGU/IChFbGJlcmV0LCAyOC4gQXVnIDIwMDIsIDE5OjQ4OjE5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDMwNTU2NjI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDU0MzkwMgpkaXZpc29uIGR1cmNoIG51bGwgaXN0IGFuZXJrYW5udGVybWFzc2VuIGtlaW4gcHJvYmxlbSwgZGEga29tbXQgdW5lbmRsaWNoCnJhdXMsIG51bGwgcHJvYmxlbW8sIGZ1ZXIgZWluZmFjaCBlaW4gc3ltYm9sIGVpbiAoc28gbmVuIGhvY2hnZWJvZ2VuZXIKS29uc2VydmVuZGVja2VsICB0dXQgZGFzIHByb2JsZW1sb3MgKSBuaW1tIGRpZSBhbm5lcmthbm50ZW4gcmVjaGVucmVnZWxuIHVuZApiaW5nby4KRGFzcyBkaWUgQ29tcHV0ZXIgYmVoYXVwdGVuIHNpZSBrb2VubnRlbiBkYXMgbmljaHQgaXN0IG51ciBlaW4gWndlaWNoZW4KZGFmdWVyLCBkYXNzIHNpZSBzY2hsZWNodCBwcm9ncmFtbWllcnQgc2luZC4KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBBYmVudHVlcmVyLVRvcGxpc3RlPyAoUm9jaHVzLCAyOC4gQXVnIDIwMDIsIDE5OjUyOjAyKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAzMDU1Njg5OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA1NDM5MDIKRGl2aXNpb24gZHVyY2ggbnVsbCBpc3Qgc29sYW5nZSBrZWluIFByb2JsZW0sIHdpZQptYW4gbmljaHQgbnVsbCBkdXJjaCBudWxsIGRpdmlkaWVydC4KRGEga2FubiBuYWVtbGljaCBhbGxlcyBtb2VnbGljaGUgYmVpIHJhdXNrb21tZW4gOi0pCgogIFJvY2h1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEFiZW50dWVyZXItVG9wbGlzdGU/IChab29rLCAyOC4gQXVnIDIwMDIsIDE5OjUzOjUzKToKfiMhIHJuPVJvY2h1cyBydD0xMDMwNTU3MTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDU0MzkwMgpVbmQgZGFubiBpc3QgbWFuIGFuIGRlciBTcGl0emUgZGVyIFRvcGxpc3RlPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBBYmVudHVlcmVyLVRvcGxpc3RlPyAoR2xvaW5zb24sIDI4LiBBdWcgMjAwMiwgMTk6NTU6MzYpOgp+IyEgcm49Wm9vayBydD0xMDMwNTU3MjMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDU0MzkwMgpJbiBWZXJiaW5kdW5nIG1pdCBlaW5lbSBSZV41MDAwMCB3aXJkIG1hbiBFcnNhdHpnb3R0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEFiZW50dWVyZXItVG9wbGlzdGU/IChab29rLCAyOC4gQXVnIDIwMDIsIDE5OjU1OjQ4KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMzA1NTczMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMwNTQzOTAyClNjaHJlY2sgb2ggR3JhdXMhCgpab29rLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEFiZW50dWVyZXItVG9wbGlzdGU/IChXaWxsb3csIDI4LiBBdWcgMjAwMiwgMjE6MDU6NTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzA1NTY2MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMwNTQzOTAyCjpkZW5rdCAuIG8gTyAoSGFhcnNwYWx0ZXIuLi4pIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogQWJlbnR1ZXJlci1Ub3BsaXN0ZT8gKFdpbGxvdywgMjguIEF1ZyAyMDAyLCAyMTowODoyNyk6Cn4jISBybj1ab29rIHJ0PTEwMzA1NTcyMzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMwNTQzOTAyCm5hamEsIG9kZXIgYW0gZW5kZSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQWJlbnR1ZXJlci1Ub3BsaXN0ZT8gKEJhbWJpLCAyOC4gQXVnIDIwMDIsIDIxOjIzOjA4KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDMwNTUzMzkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDU0MzkwMgpXaWVzbyBzb2xsdGUgbWFuIFNwaWVsZXJ6dWVjaHR1bmdlbiBwcm92b3ppZXJlbiwgZGllIGRhenUgYW5nZWxlZ3Qgd3VyZGVuLApkcmVpIEthcnRlbnRlaWxlIGFienVnZWJlbiB1bmQgZGFubiB6dSBpZGxlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldGRpZ2VzdCBtYWwgd2llZGVyIChNYWFyZywgMjguIEF1ZyAyMDAyLCAyMjowOToxMik6CkFjaHR1bmcsIEJpbGQgaXN0ID4gNzAwawotLS0tLQp1YmplY3Q6IEF1Z2VuIGF1ZiBiZWltIE1vZWJlbGthdWYhCkRhdGU6IFRodSwgMjIgQXVnIDIwMDIgMjA6MjQ6MDQgKzAyMDAKRnJvbTogTWF0dGhpYXMgS2lsaWFuIDxraWxpQG91dGJhY2suZXNjYXBlLmRlPgpUbzogbHVnLWJzQGxpc3RzLmx1Zy1icy5kZQoKTW9pbiEKCkpldHp0IG11c3MgbWFuIGF1Y2ggc2Nob24gYmVpbSBLYXVmIGVpbmVzIGVpbmZhY2hlbiBTY2hyZWlidGlzY2hlcyBhdWYKS29tcGF0aWJpbGl0YWV0IGFjaHRlbjoKCmh0dHA6Ly93d3cuZXNjYXBlLmRlL3VzZXJzL291dGJhY2svbWlzYy9tb2ViZWwuanBnCgpJY2ggZnJhZ2UgbWljaCwgd28gbWFuIExpbnV4LWtvbXBhdGlibGUgVGlzY2hlIGZpbmRldCB1bmQgd2FzIHBhc3NpZXJ0LAp3ZW5uIG1hbiBlaW5lbiBpbmtvbXBhdGlibGVuIFRpc2NoIHZlcndlbmRldC4gU3R1ZXJ6dCBkZXIgUmVjaG5lciBkYW5uIGFiPwoKQ2lhbywKICAgICAgICAgICAgICAgICBLaWxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmQgbm9jaG1hIE5ldGRpZ2VzdCAoTWFhcmcsIDI4LiBBdWcgMjAwMiwgMjI6MTM6NDEpOgpOZXdzZ3JvdXBzOiBjb21wLmxhbmcuYWRhCkZyb206IFJvYmVydCBBIER1ZmYgPGJvYmR1ZmZAc2hlbGwwMS5UaGVXb3JsZC5jb20+ClN1YmplY3Q6IFJlOiBQT0xMOiBXb3VsZCB5b3UgdXNlIEFkYSBtb3JlIGlmLi4uCk1lc3NhZ2UtSUQ6IDx3Y2NhZG45eHp4bi5mc2ZAc2hlbGwwMS5UaGVXb3JsZC5jb20+CkRhdGU6IE1vbiwgMjYgQXVnIDIwMDIgMTg6MDA6NTIgR01UCgpqb2huLm5vc3BhbUBub3NwYW1hc3Nlbi5ub3NwYW1kZW1vbi5jby51ayAoSm9obiBNY0NhYmUpIHdyaXRlczoKCj4gQWgsIGJ1dCB0aGVuIHRoZSBtYW5hZ2VyIHdpdGggc29tZSB2YWd1ZSBbb2RkXSBpZGVhIG9mIHNvZnR3YXJlIGNvbWVzCj4gaW4gYW5kIHNheXMgIklmIGl0IGRvZXNuJ3QgY29zdCBhbnl0aGluZywgaXQgY2FuJ3QgYmUgYW55IGdvb2QiIDotKQoKVGhhdCByZW1pbmRzIG1lIG9mIGEgdGFsayBJIGhlYXJkIHNvbWUgeWVhcnMgYWdvLCBnaXZlbiBieSBhIGd1eSBmcm9tCk5BU0EuICBIZSB3YXMgdGFsa2luZyBhYm91dCB0aGUgc29mdHdhcmUgZm9yIHRoZSBBcG9sbG8gcHJvZ3JhbS4gIFRoZXkKaGFkIHdlaWdodCBidWRnZXRzIGZvciBhbGwgdGhlIHBpZWNlcyBvZiB0aGUgcm9ja2V0IC0tIG9idmlvdXNseSB5b3UKd2FudCB0byBtYWtlIHRoZSB0aGluZyBhcyBsaWdodCBhcyBwb3NzaWJsZSBpZiB5b3UncmUgbGF1bmNoaW5nIGl0IGludG8Kc3BhY2UuICBTbyB0aGUgbWFuYWdlciBhc2tlZCB0aGUgc29mdHdhcmUgZ3V5IGhvdyBtdWNoIHRoZSBzb2Z0d2FyZQp3b3VsZCB3ZWlnaC4gIEhlIHNhaWQgc29mdHdhcmUgZG9lc24ndCB3ZWlnaCBhbnl0aGluZy4gIFRoZSBtYW5hZ2VyIHNhaWQKY29tZSBvbiwgdGhlc2Ugd2VpZ2h0IGJ1ZGdldHMgYXJlIHZlcnkgaW1wb3J0YW50LCBldmVuIGlmIGl0J3Mgbm90IG11Y2gsCmV2ZXJ5IG91bmNlIGNvdW50cy4gIFRoZSBzb2Z0d2FyZSBndXkgdHJpZWQgaW4gdmFpbiB0byBjb252aW5jZSB0aGUKbWFuYWdlciB0aGF0IHRoZSB3ZWlnaHQgb2Ygc29mdHdhcmUgcmVhbGx5IGlzIHplcm8uICBFdmVudHVhbGx5IHRoZQpzb2Z0d2FyZSBndXkgc2hvd2VkIHRoZSBtYW5hZ2VyIGEgZGVjayBvZiBwdW5jaCBjYXJkcywgYW5kIHNhaWQsIFNlZSB0aGUKaG9sZXM/ICBUaGF0J3MgdGhlIHNvZnR3YXJlLiAgVGhlbiB0aGUgbWFuYWdlciB1bmRlcnN0b29kLgoKLSBCb2IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdhZXN0ZSBhYndlcnRlbiEgRHJpbmdlbmQhIDotKSAoQWhhYiwgMjguIEF1ZyAyMDAyLCAyMzozMjozNyk6CltNb2VyZGVyOkdlaXN0IEFuYW5oJ3RhbmFtdW5oc10gSW0gSmFociAyMDAyIG5hY2ggVHlwaG9uLCBhbQpbTW9lcmRlcjpHZWlzdCBBbmFuaCd0YW5hbXVuaHNdIGFjaHR1bmR6d2Fuemlnc3RlbiBUYWcgZGVzIE1vbmF0cyBkZXIgRXJudGUsCltNb2VyZGVyOkdlaXN0IEFuYW5oJ3RhbmFtdW5oc10genVyIHp3ZWl1bmR6d2Fuemlnc3RlbiBTdHVuZGUsIGFscyAzMCBaeWtsZW4KW01vZXJkZXI6R2Vpc3QgQW5hbmgndGFuYW11bmhzXSB1bmQgNTIgSGVyenNjaGxhZWdlIHZlcmdhbmdlbiB3YXJlbiwgd3VyZGUgaWNoCltNb2VyZGVyOkdlaXN0IEFuYW5oJ3RhbmFtdW5oc10gZHVyY2ggR2FzdDEgYmVzaWVndC4gRWluIGtsZWluZXIgU2llZyBmdWVyCltNb2VyZGVyOkdlaXN0IEFuYW5oJ3RhbmFtdW5oc10gRGljaCwgbWVpbiBrbGVpbmVyIEZyZXVuZCwgZGVubiBpY2ggYmluCltNb2VyZGVyOkdlaXN0IEFuYW5oJ3RhbmFtdW5oc10gdW5zdGVyYmxpY2gsIHd1c3N0ZXN0IER1IGRhcyBuaWNodCA/CgpbTW9lcmRlcjpHYXN0MV0gRHUgTHVzY2hlIQoKQWhvaSwKQWhhYi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBBYmVudHVlcmVyLVRvcGxpc3RlPyAoWmFybml5YSwgMjkuIEF1ZyAyMDAyLCAwOTo1MTowOCk6Cn4jISBybj1Sb2NodXMgcnQ9MTAzMDU1NzEyMiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA1NDM5MDIKSG1tIGljaCBiaW4gS0VJTiBNYXRoZW1hdGlrZXIsIGFiZXIgaXN0IDA6MCBuaWNodCAxPyBHaWx0IG5pY2h0LCB3ZW5uIFphZWhsZXIKdW5kIE5lbm5lciBnbGVpY2ggc2luZCwgRUdBTCBXQVMsIGRhc3MgbWFuIGRhcyBkYW5uIGt1ZXJ6ZW4ga2Fubj8gCgpNYXJjCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogQWJlbnR1ZXJlci1Ub3BsaXN0ZT8gKEh1bW5pLCAyOS4gQXVnIDIwMDIsIDA5OjUzOjIzKToKfiMhIHJuPVphcm5peWEgcnQ9MTAzMDYwNzQ2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA1NDM5MDIKTmVpbi4gRHUga2FubnN0IGViZW4gbmljaHQgZHVyY2ggMCBrdWVyemVuLgoKVW5kIDA6MCBrYW5uIGFsbGVzIHNlaW4uIERlbm4gMDowIGlzdCBlaW4gQXVzZHJ1Y2sgZnVlciBkaWUgWmFobCwgZGllIG1pdCAwCm11dGxpcGxpemllcnQgMCBlcmdpYnQuIFNvIGlzdCBhdWNoIDE6MiBlaW4gQXVzZHJ1Y2sgZnVlciBkaWUgWmFobCwgZGllIG1pdCAyCm11bHRpcGxpemllcnQgMSBlcmdpYnQuIE51biBnaWJ0IGFiZXIgSkVERSBaYWhsIG1pdCAwIG11bHRpcGxpemllcnQgMC4gQWxzbwprYW5uIGF1Y2ggamVkZSBaYWhsIGRlbSAsLEJydWNoJycgMDowIGVudHNwcmVjaGVuLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBBYmVudHVlcmVyLVRvcGxpc3RlPyAoRWxiZXJldCwgMjkuIEF1ZyAyMDAyLCAxMDo0OTowOSk6Cn4jISBybj1IdW1uaSBydD0xMDMwNjA3NjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDU0MzkwMgpzb2xjaGUgYXVzZHJ1ZWNrZSB3aWUgMDowIGhhYmVuIGluIGFsZ2VicmFpc2NoZW4gUmVjaG51bmdlbiBrZWluZW4gU2lubi4gSW4KZGVyIEFuYWx5c2lzIGthbm4gc293YXMgZHVyY2hhdXMgU2lubiBtYWNoZW4sIGFiZXIgZG9ydCBoZWlzc3QgZGFzIG5vY2ggbGFuZ2UKbmljaHQsIGRhc3MgZGFzIDEgc2VpbiBtdXNzLiBEYXMgaGFlbmd0IHN0YXJrIHZvbiBkZW4gc3BlemllbGxlbiBVbXN0YWVuZGVuCmFiLgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEFiZW50dWVyZXItVG9wbGlzdGU/IChPcmt0b2V0ZXIsIDI5LiBBdWcgMjAwMiwgMTE6MTg6NDApOgp+IyEgcm49RWxiZXJldCBydD0xMDMwNjEwOTQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDU0MzkwMgpTZWkgRXBzaWxvbiBzbyBrbGVpbiwgZGFzIEVwc2lsb24vMiBrbGVpbmVyIE51bGwuCgpPcmtULCBtaXRsZWlkIG1pdCBNYXRoZW1hdGlrZXJuIGhhYmVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndlbm4gbWFnaWVyIHZlcnN1Y2hlbiB6dSBlcmtsYWVyZW4uLi4gKFBpdGZhbGwsIDI5LiBBdWcgMjAwMiwgMTI6MjM6NTgpOgpnbG9pbnNvbjoKCmxhbWRhcyBzaW5kIHNvIGtsZWluZSBmcmVpIGluIGRlciBsdWZ0IHNjaHdpcnJlbmRlIHN0dWVja2UsIGRpZSBtYW4gaXJnZW5kd28KcmFua2xhdHNjaGVuIGthbm4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2VubiBtYWdpZXIgdmVyc3VjaGVuIHp1IGVya2xhZXJlbi4uLiAoR3JpbW1ib3JuLCAyOS4gQXVnIDIwMDIsIDEyOjI1OjEzKToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAzMDYxNjYzOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA2MTY2MzgKTm9wZSwgZGFzIGlzdCBmYWxzY2guIERhcyBzaW5kIGRpZXNlIFRpZXJlIGluIFN1ZWRhbWVyaWthLCBkaWUgZWluZW4gYW5zcHVja2VuCndlbm4gbWFuIHNpZSBhZXJnZXJ0LiBCZWthbm50IGF1cyBUaW0gdW5kIFN0cnVwcGkgYmVpIGRlbiBJbmthcy4KCkdkQSBtaXQgYXV0b21hdGlzY2hlbSBUeXBvYXVzZ2xlaWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2VubiBtYWdpZXIgdmVyc3VjaGVuIHp1IGVya2xhZXJlbi4uLiAoR2xvaW5zb24sIDI5LiBBdWcgMjAwMiwgMTI6MzQ6NTUpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDMwNjE2NjM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDYxNjYzOApHbmEsIHdhZWhyZW5kIER1IERpY2ggdm9yIExhY2hlbiB3ZWdnZWtyaW5nZWx0IGhhc3QsIGhhYiBpY2ggd2VuaWdzdGVucwp2ZXJzdWNodCBlaW5lbSBhYnNvbHV0ZW4gUHJvZ3JhbW1pZXJsYWllbiB6dSBlcmtsYWVyZW4gd29ydWViZXIgd2lyIGZhc2Vsbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogd2VubiBtYWdpZXIgdmVyc3VjaGVuIHp1IGVya2xhZXJlbi4uLiAoUGl0ZmFsbCwgMjkuIEF1ZyAyMDAyLCAxMjozNjoyOCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDMwNjE3Mjk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDYxNjYzOAphY2ggamEgamVkZXIgZGVyIGVpbmVuIHR5cG8gZmluZGV0IGRhcmYgaWhuIG5hdHVlcmxpY2ggYmVoYWx0ZW4gdW5kIGdydWVuCmFuc3RyZWljaGVuIG9kZXIgc28KCnBpdGZhbGwsIHdhcyB2b24ga3J1ZW1lbGthY2tlcm4gbXVybWVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBQYXJ0eWJpbGRlci4uLiAoWm9vaywgMjkuIEF1ZyAyMDAyLCAxMjo0NDowNCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDMwNjE1Mzk1IHJnPXBhcnR5Cn4jISB0aWQ9MTAyOTc0MTE1NwpJY2ggZ2xhdWIsIGljaCB3YXIgYXVjaCBtYWwgRGFya3dpbmcgb2RlciB1bWdla2VyaHQsIG9kZXI/IDspCgpab29rIGdyaW5zdCBHbG9pbnNvbiBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBQYXJ0eWJpbGRlci4uLiAoR2xvaW5zb24sIDI5LiBBdWcgMjAwMiwgMTI6NTI6MTEpOgp+IyEgcm49Wm9vayBydD0xMDMwNjE3ODQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAyOTc0MTE1NwpKZXBwLiBCaXN0IGdlbmF1c28gZHVlcnIuIFNlaSBmcm9oLCBkYXNzIGljaCBEaWNoIG5pY2h0IG1pdCBLaGlkYXIgdmVyd2VjaHNlbHQKaGFiZSwgZGFubiB3dWVyZGUgaWNoIERpY2ggbm9jaCBoZXV0ZSBzbyBuZW5uZW4gLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIChGb29iYXIsIDI5LiBBdWcgMjAwMiwgMTc6MTQ6MzMpOgpEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBuZWluLCBpY2ggd2lsbCBwaXRzIHN0ZWluaGFydGVzIGRpbmcKRGVpbiBGcmV1bmQgQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogX25pY2h0XyBzZWhlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPaG5lIFdvcnRlIChFbGJlcmV0LCAyOS4gQXVnIDIwMDIsIDE3OjE1OjA5KToKfiMhIHJuPUZvb2JhciBydD0xMDMwNjM0MDczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDYzNDA3MwpkYXMgZ2VodCBkb2NoIG5vY2ggd2VpdGVyIDopCgpWb24gRnJldW5kIEJyb3RuYWVsOiBnZW5hdSBkYXMsIHVuZCBpY2ggd2lsbCBkYXZvbiBuaXggbWVocgpWb24gRnJldW5kIEJyb3RuYWVsOiB3aXNzZW4gKmphbW1lcioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogT2huZSBXb3J0ZSAoRm9vYmFyLCAyOS4gQXVnIDIwMDIsIDE3OjE3OjAyKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAzMDYzNDEwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA2MzQwNzMKRGVpbiBGcmV1bmQgQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogMzUgamFocmUgc3RlaW5oYXJ0ZXMgZGluZz8/PyBjYWtleSBkdSBiaXN0CkRlaW4gRnJldW5kIEJyb3RuYWVsIHRlaWx0IERpciBtaXQ6IGtyYW5rLi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE9obmUgV29ydGUgKE9ya3RvZXRlciwgMjkuIEF1ZyAyMDAyLCAxNzozMDoyNCk6Cn4jISBybj1Gb29iYXIgcnQ9MTAzMDYzNDIyMiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA2MzQwNzMKSG0uLiBtZWhyIGFscyA0IFN0dW5kZW4gZ2VsdGVuIGFscyBha3V0ZXIgbWVkaXppbmlzY2hlciBOb3RmYWxsLi4uICpnKgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE9obmUgV29ydGUgKFphcm5peWEsIDMwLiBBdWcgMjAwMiwgMDg6NDM6MDQpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMzA2MzUwMjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMwNjM0MDczCi4uLiBhYmVyIG51ciBiZWkgR2VoaXJuZW4sIGRpZSBlaCBuaWNodCBzY2hvbiB1bnRlciBTYXVlcnN0b2ZmbWFuZ2VsIGxlaWRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHZXNjaGljaHRsaWNoZXMgKExpbmZsYXMsIDMwLiBBdWcgMjAwMiwgMTg6NTk6NTEpOgp+IyEgcm49TWlyaWwgcnQ9MTAzMDcwMTkwMiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMzA3MDE5MDIKIiA2LikgUGxheWVya2lsbGluZzogc29sbCB3ZWl0ZXJoaW4gbW9lZ2xpY2ggYWJlciB2ZXJib3RlbiBzZWluLCB3ZWlsOiAqIE1hbgprYW5uIHNvIGFzb3ppYWxlIENoYXJha3RlcmUgbGVpY2h0ZXIgc2Nob24gaW0gUGxheWVyc3RhZGl1bSBlcmtlbm5lbi4iCgpLYW5uIG1hbiBkYXM/CgpMLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdlc2NoaWNodGxpY2hlcyAoTGlhcmEsIDMwLiBBdWcgMjAwMiwgMjA6MzQ6MTgpOgp+IyEgcm49TWlyaWwgcnQ9MTAzMDcwMTkwMiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMzA3MDE5MDIKSG0sIGZ1ZXIgd2lldmllbGUgU3BpZWxlciB3dXJkZW4gZGllc2UgUmVnZWxuIGRhbWFscyBhdWZnZXN0ZWxsdD8gOy0pCgpLcmF1dE11ZD8/PwoKWlpMLCBzdGF1bnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR2VzY2hpY2h0bGljaGVzIChHcmltbWJvcm4sIDMwLiBBdWcgMjAwMiwgMjA6NDU6NDkpOgp+IyEgcm49TGlhcmEgcnQ9MTAzMDczMjQ1OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA3MDE5MDIKS2xhciBrYW5uIG1hbiBkYXMgZXJrZW5uZW4sIExpbmZsYXMuIERhc3MgRHUgZGFzIGFuendlaWZlbHN0IHd1bmRlcnQKbmF0dWVybGljaCBuaWNodC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR2VzY2hpY2h0bGljaGVzIChCb2luZywgMzAuIEF1ZyAyMDAyLCAyMDo0NzowMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzMDczMzE0OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA3MDE5MDIKQWFhYWFoIC4uLlB1bmt0IDEgLi4uIGpldHp0IHdlaXNzIGljaCBlbmRsaWNoIHdpZWRlciB3aWVzbyBpbiBtZWluZW0Kd29ya3Jvb20gJ0Vyem1hZ2llciBkZXMgR2ViaXJnZXMnIHN0ZWh0IHVuZCBuaWNodCBSZWdpb25zbWFnaWVyLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHZXNjaGljaHRsaWNoZXMgKEVsYmVyZXQsIDMwLiBBdWcgMjAwMiwgMjA6NDk6MDUpOgp+IyEgcm49Qm9pbmcgcnQ9MTAzMDczMzIyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA3MDE5MDIKaW50ZXJlc3NhbnQgaXN0IGphLCBkYXNzIGRhbWFscyBkaWUgdmVyc2NoaWVkZW5lbiBlcnptYWdpZXIgdmVyc2NoaWVkZW5lCm1hZ2llcmxldmVsIGhhdHRlbi4gOikKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEdlc2NoaWNodGxpY2hlcyAoQXJrLCAzMC4gQXVnIDIwMDIsIDIwOjUwOjI1KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAzMDczMzM0NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA3MDE5MDIKRGFtYWxzIHdhciBlYmVuIG5pY2h0IGplZGVyIGdsZWljaCB3aWNodGlnIDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEdlc2NoaWNodGxpY2hlcyAoRWxiZXJldCwgMzAuIEF1ZyAyMDAyLCAyMDo1MToyMSk6Cn4jISBybj1BcmsgcnQ9MTAzMDczMzQyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA3MDE5MDIKaXN0IGRhcyBuaWNodCBoZXV0ZSBhdWNoIHNvPyBudXIgZGFzcyBkYXMgbmNpaHQgYXVjaCBub2NoIG9lZmZlbnRsaWNoIGluIGRlbgpMZXZlbG4genVyIFNjaGF1IGdldHJhZ2VuIHdpcmQ/IDopKQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogR2VzY2hpY2h0bGljaGVzIChBcmssIDMwLiBBdWcgMjAwMiwgMjE6MDA6MzgpOgp+IyEgcm49RWxiZXJldCBydD0xMDMwNzMzNDgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDcwMTkwMgpBbHNvIER1LCBpY2ggd2FyIG1pdCBtZWluZW0gNDVlciBlY2h0IHVuenVmcmllZGVuLCB3aXJrbGljaC4gSWNoIGJyYXVjaHRlIG5lbgpuZXVlbiBTY2h1c3MgZnVlcnMgU2VsYnN0dmVydHJhdWVuLCBEdWVuZ2VyIGZ1ZXJzIEVnbywgU2FtZW4gZnVlciBkaWUgZWlnZW5lClZlcndpcmtsaWNodW5nIGhpZXIuIE5lLCBkYSBoYWIgaWNoIG1pY2ggbWl0IG5lbSAxMTFlciBhdWYgZWluIFNjaHVlc3NjaGVuClByb3NlY2NvIGdldHJvZmZlbi4gRGFuYWNoIGZ1ZWhsdGUgaWNoIG1pY2ggdG90YWhobCB2aWVsIGJlc3NlciAuLi4gYWxzIDY2ZXIuClNvd2FzIGlzdCBtYW5jaG1hbCB0b3RhaGhsIGhlaWxzYW0uCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogR2VzY2hpY2h0bGljaGVzIChHcmltbWJvcm4sIDMwLiBBdWcgMjAwMiwgMjE6MzM6NTgpOgp+IyEgcm49QXJrIHJ0PTEwMzA3MzQwMzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDMwNzAxOTAyCktsaW5ndCBsdXN0aWcsIGVya2xhZXJ0IGFiZXIgc28gZWluaWdlcy4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgaGVpc3NlbiB3ZWlibGljaGUgRHJhY2hlbj8gOy0pIChMaWFyYSwgMzAuIEF1ZyAyMDAyLCAyMjo1OTozMik6CkRlaW4gRnJldW5kIEZvb2JhciB0ZWlsdCBEaXIgbWl0OiBOb2UsIGthbm4gYWJlci4gSXJnZW5kd2VyIHNvbGwgVGhha2lzaXMKRGVpbiBGcmV1bmQgRm9vYmFyIHRlaWx0IERpciBtaXQ6IGdlaGFidCBoYWJlbiBiZWkgZGllc2VtIEJyaWVmLgpEZWluZSBGcmV1bmRpbiBTaGFlZW5hIHRlaWx0IERpciBtaXQ6IGduYWEuLgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogYWhhIGtlbm5pY2huaWNoCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBpcyBkYXMgc2NobGltbT8KRGVpbiBGcmV1bmQgRm9vYmFyIHRlaWx0IERpciBtaXQ6IE5vZSwgaWNoIGhhYiBkaWUgamEgYXVjaCBub2NoIG5pZSBnZXNlaGVuLgpEZWluIEZyZXVuZCBHb3JvZyB0ZWlsdCBEaXIgbWl0OiBkaWUgaXMgZ2FueiBuaWVkbGljaApEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogYWhqYSBkYXMgaXMgbmUgZHJhZWNoaW4/IDstKQpEZWluIEZyZXVuZCBGb29iYXIgdGVpbHQgRGlyIG1pdDogRGFzIHNvbGwgZGllIERyYWNoZW5nb2V0dGluIHNlaW4uCkRlaW4gRnJldW5kIEZpcmVoYXdrIHRlaWx0IERpciBtaXQ6IFdlbm4gc2Nob24sIGRhbm4gRHJhY2hpbmUgOykKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IG9kZXIgd2llIGhlaXNzZW4gZGllPyA7LSkgZHJhY2hlbnNjaGxhbXBlPwpEZWluIEZyZXVuZCBHb3JvZyB0ZWlsdCBEaXIgbWl0OiBtYWwgaXMgZXMgbmUgZHJhY2hpbiBtYWwgbmUgZnJhdSBpbW1lciBuZQpEZWluIEZyZXVuZCBHb3JvZyB0ZWlsdCBEaXIgbWl0OiBnb2V0dGluCkRlaW4gRnJldW5kIEZpcmVoYXdrIHRlaWx0IERpciBtaXQ6IE9kZXIgRHJhY2hlbmluZSA7KQpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDoga2xpbmd0IGtvbXBsaXppZXJ0CkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBtdXNzIG5lIGZyYXUgc2VpbiAuLi4KRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGRyYWNobmluZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxhYnlyaW50aGUgKExpYXJhLCAzMC4gQXVnIDIwMDIsIDIzOjE0OjM5KToKRGVpbiBGcmV1bmQgRmlyZWhhd2sgdGVpbHQgRGlyIG1pdDogTGFicyBzaW5kIGVoIHJvbGxlbnNwaWVsdGVjaG5pc2NoIFVuc2lubgpEZWluIEZyZXVuZCBGaXJlaGF3ayB0ZWlsdCBEaXIgbWl0OiA6KSBFaW4gS2FlbXBmZXIgcmVubnQgZ2VyYWRlYXVzIGR1cmNoIGRpZQpEZWluIEZyZXVuZCBGaXJlaGF3ayB0ZWlsdCBEaXIgbWl0OiBXYWVuZGUsIGVpbiBaYXViaSBwdXN0ZXQgc2ljaCBuZW4gV2VnIHF1ZXIKRGVpbiBGcmV1bmQgRmlyZWhhd2sgdGVpbHQgRGlyIG1pdDogZHVyY2ggbWl0IG5lciBGZXVlcndhbHplIGZyZWksIGVpbiBDaGFvdApEZWluIEZyZXVuZCBGaXJlaGF3ayB0ZWlsdCBEaXIgbWl0OiBtdWVzc3RlIHRoZW9yZXRpc2NoIG5hY2ggZGVyIGVyc3RlbiBFY2tlCkRlaW4gRnJldW5kIEZpcmVoYXdrIHRlaWx0IERpciBtaXQ6IGFtIFppZWwgc2VpbiB1bmQgZWluIEtsZXJpIHdpcmQgdm9uIHNlaW5lbQpEZWluIEZyZXVuZCBGaXJlaGF3ayB0ZWlsdCBEaXIgbWl0OiBHb3R0IHp1bSBBVXNnYW5nIGdlbGVpdGV0IDspIFVuZApEZWluIEZyZXVuZCBGaXJlaGF3ayB0ZWlsdCBEaXIgbWl0OiBCaWVyc2NodWV0dGxlciBzaW5kIHNvIGJlc29mZmVuLCBkaWUKRGVpbiBGcmV1bmQgRmlyZWhhd2sgdGVpbHQgRGlyIG1pdDogbWVya2VuIGVoIG5ldCwgZGFzcyBzaWUgaW4gbmVtIExhYiB3YXJlbgpEZWluIEZyZXVuZCBGaXJlaGF3ayB0ZWlsdCBEaXIgbWl0OiBiZXZvciBzaWUgd2llZGVyIGRyYXVzc2VuIHNpbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5QQy4uLiAoRm9vYmFyLCAzMC4gQXVnIDIwMDIsIDIzOjIwOjQ4KToKQW5keSBzYWd0OiBGb29iYXIsIHdpZXNvIHZlcnN1Y2h0IER1IG1pY2ggbWl0IHNlbHRzYW1lbiBCZXdlZ3VuZ2VuIHNlaW5lIFdhZmZlCmFienVsZW5rZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBHZXNjaGljaHRsaWNoZXMgKFZhbmlvbiwgMzAuIEF1ZyAyMDAyLCAyMzo1ODo0MCk6Cn4jISBybj1BcmsgcnQ9MTAzMDczNDAzOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA3MDE5MDIKQmVpIHNvb28gdmllbCBQcm9zZWNjbyBrYW5uc3RlIGphIGZyb2ggc2VpbiwgZGFzcyBlcyBrZWluZSA2OSBnZXdvcmRlbiBpcyA6KQoKViosIHNjaG1hcnJuZW5kLCBuaWNodCBqdWdlbmRmcmVpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIGtsaW5ndCBnbGF1YmhhZnQuLi4gKEdydW1wZiwgMzEuIEF1ZyAyMDAyLCAxODoxNzowNCk6CkRlciBGb3JzY2hlcnB1bmt0c2FtbWxlciBicnVlbGx0OiBCbHVlbWNoZW5wZmx1ZWNrZXIgc2luZCBkaWUgYmVzdGVuIQpFaW4gRm9yc2NoZXJwdW5rdHNhbW1sZXIga3JpZWd0IGVpbmVuIGh5c3RlcmlzY2hlbiBMYWNoYW5mYWxsLgoKR3J1bXBmIGdydW1wZnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogUGFydHliaWxkZXIuLi4gKEdsb2luc29uLCAgMS4gU2VwIDIwMDIsIDE4OjEyOjM3KToKfiMhIHJuPUd1YXJkIHJ0PTEwMzA4OTU0NDYgcmc9cGFydHkKfiMhIHRpZD0xMDI5NzQxMTU3ClRqYSwgZGEgaGFzdCBEdSB3b2hsIHp1IGxhbmdlIGdlcGFja3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXaWUgaGVpc3NlbiB3ZWlibGljaGUgRHJhY2hlbj8gOy0pIChNb3Jnb3RoLCAgMS4gU2VwIDIwMDIsIDIzOjQxOjE0KToKfiMhIHJuPUxpYXJhIHJ0PTEwMzA3NDExNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMwNzQxMTcyCldpZSB3YWVycyBtaXQgRGFjaHJpbm5lPwoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2llIGhlaXNzZW4gd2VpYmxpY2hlIERyYWNoZW4/IDstKSAoTXVwZmVsLCAgMS4gU2VwIDIwMDIsIDIzOjQ0OjM1KToKfiMhIHJuPU1vcmdvdGggcnQ9MTAzMDkxNjQ3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA3NDExNzIKV2VpYmxpY2hlIERyYWNoZW4gaGVpc3NlbiBnYW56IGVpbmZhY2ggIkZyYXVlbiIgOykKCipLb3BmZWluemllaCogOykKCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2llIGhlaXNzZW4gd2VpYmxpY2hlIERyYWNoZW4/IDstKSAoR3J1bXBmLCAgMS4gU2VwIDIwMDIsIDIzOjQ2OjE1KToKfiMhIHJuPU11cGZlbCBydD0xMDMwOTE2Njc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDc0MTE3MgpJY2ggZGFjaHRlIGRhcyB3YWVyIGdhbnoga2xhciBkZWZpbmllcnQ/IFdlaWJsaWNoZXIgRHJhY2hlID0gU2Nod2llZ2VybXV0dGVyPwoqYXVjaGRlbktvcGZlaW56aWVoKgpHcnVtcGYgZ3J1bXBmdCB1bmQgaG9mZnQgZGFzIHNlaW5lIFNjaHdpZWdlcm11dHRlciBoaWVyIG5pY2h0IG1pdGxpZXN0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXaWUgaGVpc3NlbiB3ZWlibGljaGUgRHJhY2hlbj8gOy0pIChNdXBmZWwsICAxLiBTZXAgMjAwMiwgMjM6NDc6NDMpOgp+IyEgcm49R3J1bXBmIHJ0PTEwMzA5MTY3NzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMwNzQxMTcyCk5laW4sIGRhcyBzaW5kICphdWNoKiBEcmFjaGVuLCB3ZWdlbiBGcmF1IGhhbHQuIERhcyBpc3QgZ2FueiBrbGFyIGF1cyBkZXIKT2JqZWt0b3JpZW50aWVydGVuIFNpY2h0IDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2llIGhlaXNzZW4gd2VpYmxpY2hlIERyYWNoZW4/IDstKSAoTmljb2xhaSwgIDIuIFNlcCAyMDAyLCAwNDoyNjoxNik6Cn4jISBybj1NdXBmZWwgcnQ9MTAzMDkxNjY3NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA3NDExNzIKT2RlciBhdWNoIFNjaHdpZWdlcm11dHRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2llIGhlaXNzZW4gd2VpYmxpY2hlIERyYWNoZW4/IDstKSAoQ2F0d2VhemxlLCAgMi4gU2VwIDIwMDIsIDA4OjA4OjAwKToKfiMhIHJuPU11cGZlbCBydD0xMDMwOTE2ODYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDc0MTE3MgonYWxsIGluY2x1c2l2ZScsIHNvenVzYWdlbiAuLi4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIGlzdCBlaW4gc2Nod2VydD8gKFRoYXJnb3IsICAyLiBTZXAgMjAwMiwgMjE6NDc6MjIpOgpEdSBnaWJzdCBkYXMgS2FtcGZzY2h3ZXJ0IGFuIGVpbmVuIFNjaHdlcnRzY2hsZWlmZXIuCkRlciBTY2h3ZXJ0c2NobGVpZmVyIHNhZ3Q6IEhtbSwgZGFyYXVzIGthbm4gaWNoIGtlaW4gU2Nod2VydCBtYWNoZW4uCkVpbiBTY2h3ZXJ0c2NobGVpZmVyIGxhZXNzdCBkYXMgS2FtcGZzY2h3ZXJ0IGZhbGxlbi4KCkFsc28gbmFjaCBGYWNoa3VuZGlnZXIgUHJ1ZWZ1bmcgcmVubmUgaWNoIG1pdCBlaW5lbSBTYWFsYmVzZW4gZHVyY2ggZGFzCk1vcmdlbkdyYXVlbj8gT2RlciBtdXNzIGljaCBkYXMgc28gaW50ZXJwcmV0aWVyZW4gZGFzIGVpbiBOZWFuZGVydGFsZXIgbnVyCktldWxlbiBrZW5udCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdhcyBpc3QgZWluIHNjaHdlcnQ/IChHbG9pbnNvbiwgIDIuIFNlcCAyMDAyLCAyMTo1MToxOCk6Cn4jISBybj1UaGFyZ29yIHJ0PTEwMzA5OTYwNDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMwOTk2MDQyCkRlciBTY2h3ZXJ0c2NobGVpZmVyIHNhZ3Q6IF9IbW0sIGRhcmF1cyBrYW5uIGljaCBrZWluIFNjaHdlcnQgbWFjaGVuLl8KCldhcyBpc3QgYW4gc2VpbmVyIEF1c3NhZ2Ugc28gbWlzc3ZlcnN0YWVuZGxpY2ggZm9ybXVsaWVydD8gV2VubiBEdSBtaXIgZWluZQpLZXVsZSBnaWJzdCwga2FubiBpY2ggZGFyYXVzIGF1Y2ggbmljaHQgbWVociBLZXVsZSBtYWNoZW4gYWxzIHNpZSBiZXJlaXRzIGlzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hbCBlaW4gYW5kZXJlcyBwaW5nIChNb3Jnb3RoLCAgMy4gU2VwIDIwMDIsIDEzOjQ2OjEzKToKRGVpbiBGcmV1bmQgVGh1ZmhpciB0ZWlsdCBEaXIgbWl0OiBub2NobWFsIHBpbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgClRodWZoaXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhICAgICAgICAgICAgICAgICAgIApbVG9kOkxhcnNdIEVsaG9sZHJpb24gaGF0IGdlcmFkZSBTZW5hdG9yIHVtZ2VicmFjaHQuICAgICAgICAgICAgICAgICAgICAgICAgICAKVGh1ZmhpciAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhISAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLYXJhd2FuZSAoRWxiZXJldCwgIDMuIFNlcCAyMDAyLCAxNzozODowNyk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDMxMDY3MDY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMTA2NjEzOQpkaWUga2FyYXdhbmUgd2FyIG1laW4gZXJzdGVyIHRyaWdnZXIgOykKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9ob2ggKE5vbm5lLCAgNC4gU2VwIDIwMDIsIDA5OjAxOjQ5KToKW2Z3ZXIgaWRsZV0KClR3aW5naSAgICAgICAgIC0gIDA6IDA6IDE6IDYKWm9vayAgICAgICAgICAgLSAgMDogMDogMTogNiAKClR3aW5naSB1bmQgWm9vay4uLiB3ZXIgaGFldHRlIGRhcyBnZWRhY2h0ICpnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9ob2ggKFpvb2ssICA0LiBTZXAgMjAwMiwgMDk6MDI6MzUpOgp+IyEgcm49Tm9ubmUgcnQ9MTAzMTEyMjkwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzExMjI5MDkKSGFldHRlc3QgRHUgbWFsICJrd2VyIGJlaSB0d2luZ2kiIGdlbWFjaHQsIHd1ZXNzdGVzdCBEdSBzb2dhciBub2NoIG1laHIuIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBPaG9oIChBbnRoZWEsICA0LiBTZXAgMjAwMiwgMDk6MTc6MzMpOgp+IyEgcm49Wm9vayBydD0xMDMxMTIyOTU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMTEyMjkwOQpTdGltbXQuCgo+IGt3ZXIgYmVpIHR3aW5naQogICAgICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTWl0LCAgNC4gU2VwIDIwMDIsIDA5OjE2OjM1ICgyIFRlaWxuZWhtZXIpCgpUd2luZ2kuLi4uLi4uLi4ud0ggWm9vay4uLi4uLi4uLi4uLi5HCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogR2FtaW5nIFByb2hpYml0aW9uIChIdW1uaSwgIDQuIFNlcCAyMDAyLCAyMDo0MDoxMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzMTE2NDYwNiByZz13d3cKfiMhIHRpZD0xMDMxMTM1NzU4CkphLCByaWNodGlnLCBpY2ggc3BlcnIgbWFsIGViZW4gZ2FueiBHcmllY2hlbmxhbmQgYXVzLi4uICgqcHVoKiBndXQgZGFzcyBpY2gKZGFzIG1pdHRsZXJ3ZWlsZSBkYXJmLi4uKSA7LSkKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogR2FtaW5nIFByb2hpYml0aW9uIChHcmltbWJvcm4sICA0LiBTZXAgMjAwMiwgMjA6NDU6MDApOgp+IyEgcm49SHVtbmkgcnQ9MTAzMTE2NDgxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzExMzU3NTgKVW5kIHZlcmdpc3MgZGFiZWkgd2VkZXIgQU9MIG5vY2ggZGllIGdhbnplbiAoYXVjaCBkZXV0c2NoZW4gKSBkaWFsLWluCkFkcmVzc2VuLCBkaWUgbWFuIHZvbiBHcmllY2hlbmxhbmQgYXVzIG51dHplbiBrYW5uLiBTb25zdCBmaW5kZXN0IER1IERpY2gsIGVoZQpEdSBEaWNoIHZlcnNpZWhzdCwgYWxzIEhlbG90ZSB3aWVkZXIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBHYW1pbmcgUHJvaGliaXRpb24gKEh1bW5pLCAgNC4gU2VwIDIwMDIsIDIwOjQ4OjM3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDMxMTY1MTAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMTEzNTc1OApPSy4gQWxsZSBnZXNwZXJydC4gSmV0enQga29tbXQgZ2FyIGtlaW5lciBtZWhyIHJlaW4sIG51ciBub2NoIGRpZSwgZGllIHNjaG9uCmRyaW4gc2luZC4KClB1aC4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogR2FtaW5nIFByb2hpYml0aW9uIChHcmltbWJvcm4sICA0LiBTZXAgMjAwMiwgMjA6NTQ6NDkpOgp+IyEgcm49SHVtbmkgcnQ9MTAzMTE2NTMxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzExMzU3NTgKR3V0IGdlbWFjaHQuIFNvbGx0ZSBpY2ggbWl0IGxlYmVuIGtvZW5uZW4uClNjaGFkZSB1bSBkaWUgYWt0dWVsbCBBYndlc2VuZGVuLCBhYmVyIHdhcyBzb2xsIG1hbiBtYWNoZW4/IFNpY2hlcmhlaXQgZ2VodApudW5tYWwgdm9yLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogR2FtaW5nIFByb2hpYml0aW9uIChIdW1uaSwgIDQuIFNlcCAyMDAyLCAyMDo1NTo0Nik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzMTE2NTY4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzExMzU3NTgKRWJlbiwgYmV2b3IgaWNoIGF1Y2ggbnVyIGluIGRpZSBnZXJpbmdzdGUgR2VmYWhyIGxhdWZlIGltIEtuYXN0IHp1IGxhbmRlCnNiYW5pc2hlIGljaCBtYWwgcGF1c2NoYWwgKi4qLiouKiAKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogR2FtaW5nIFByb2hpYml0aW9uIChBbnRoZWEsICA1LiBTZXAgMjAwMiwgMDk6MjM6NDQpOgp+IyEgcm49SHVtbmkgcnQ9MTAzMTE2NTc0NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzExMzU3NTgKaHR0cDovL3d3dy53YXJidWNrZXQuY29tL2NvbWljcy83NC5naWYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVsZmVuLi4uLiAoS2FyaW1hLCAgNS4gU2VwIDIwMDIsIDEzOjU5OjQzKToKRGllIGdvbGRlbmVuIEZhZWRlbiBkZXIgVG9nYSBsZXVjaHRlbiBhdWYgdW5kIHNjaGlja2VuIERlaW5lbSBHZWduZXIgZWluZW4KQmxpdHogZW50Z2VnZW4uCkRpZSBsYW5nZSBUb2dhIHNjaGxhZWd0IGRlbiBXYWVjaHRlciB6dSBCcmVpLgpEZXIgVHVybXdhZWNodGVyIHJ1ZnQ6IERpZSBsYW5nZSBUb2dhIGdyZWlmdCB1bnMgYW4uCgpLYXJpbWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBHYW1pbmcgUHJvaGliaXRpb24gKEtyZWxsamEsICA1LiBTZXAgMjAwMiwgMTU6MTI6MzApOgp+IyEgcm49SHVtbmkgcnQ9MTAzMTIzMTQxMCByZz13d3cKfiMhIHRpZD0xMDMxMTM1NzU4Ck1laW5lIFNjaHdpZWdlcm11dHRlciBpc3QgZ2VyYWRlIGluIEdSIChrZWluIFdpdHosIHRhdHNhZWNobGljaCkuCldlbm4gc2llIGVpbmUgImJvZXNlIFNDaHdpZWdlcm11dHRlciIgd2Flciwga29lbm50ZSBtYW4gc2llIHNvIGFsc28gbGVpY2h0Cmxvc3dlcmRlbiA6KQoKS3JlbGxqYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IEdhbWluZyBQcm9oaWJpdGlvbiAoS3JlbGxqYSwgIDUuIFNlcCAyMDAyLCAxNToxNTozNCk6Cn4jISBybj1LcmVsbGphIHJ0PTEwMzEyMzE1NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMxMTM1NzU4Ck5vY2ggZWluIFNlbGJzdHJlcGx5LgoKTGFuZGVuIHVuc2VyZSBHb2V0dGVyIG51biBpbSBLbmFzdD8gSW1tZXJoaW4ga2FubiBtYW4gamEgYXVjaCB2b24gR3JpZWNoZW5sYW5kCmF1cyBtdWRkZW4gdW5kIGlyZ2VuZHdhcyB3YXIgZGEgaW4gZGVyIEVVIGRvY2ggbWl0IEdyZW56dWViZXJzY2hyZWl0ZW5kZXIKU3RyYWZ2ZXJmb2xndW5nLgoKS3JlbGxqYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IEdhbWluZyBQcm9oaWJpdGlvbiAoSHVtbmksICA1LiBTZXAgMjAwMiwgMTU6Mjk6MzApOgp+IyEgcm49S3JlbGxqYSBydD0xMDMxMjMxNzM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMTEzNTc1OApJY2ggaG9mZmUgamEgaW1tZXIgbm9jaCBkcmF1ZiwgZGFzcyBtdWRkZW4gdm9uIGVpbmVtIGdyaWVjaGljaGVuIEludGVybmV0Y2FmZQphdXMgenUgbGFuZ3NhbSBpc3QgdW5kIGF1Y2ggbmljaHQgYWxzIHNwaWVsZW4gZXJrYW5udCB3aXJkLi4uCgpBdXNzZXJkZW0gZ2VodCBkYXMgZG9jaCBudXIsIHdlbm4gZGFzIGhpZXIgYXVjaCBlaW4gVmVyYnJlY2hlbiB3YWVyZSwgb2Rlcj8KQmluIGljaCBuYWl2PwoKSHVtbmkgKGhhdCBuaWNodCB3aXJrbGljaCBBbmdzdCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBHYW1pbmcgUHJvaGliaXRpb24gKEFudGhlYSwgIDUuIFNlcCAyMDAyLCAxNTo1NDowMyk6Cn4jISBybj1IdW1uaSBydD0xMDMxMjMyNTcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMTEzNTc1OApTZWl0IHdhbm4gZmFlbGx0IGRlbm4gYXVjaCBpZGxlbiB1bmQgcnVtbGFiZXJuIGFscyBTcGllbGVuPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6IEdhbWluZyBQcm9oaWJpdGlvbiAoS3JlbGxqYSwgIDUuIFNlcCAyMDAyLCAxNzoxMTo0NSk6Cn4jISBybj1IdW1uaSBydD0xMDMxMjMyNTcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMTEzNTc1OApJY2ggYmluIGtlaW4gSnVyaXN0LCBhYmVyIGRhIHdhciBzbyBldHdhcywgd2llIGRhc3MgZGFzIGViZW4gZ2VyYWRlIG5pY2h0IGF1Y2gKaGllciBzdHJhZmJhciBzZWluIG11c3MsIHNvbGFuZ2UgZXMgc2ljaCB1bSBlaW4gRVUgTGFuZCBoYW5kZWx0LCBnbGF1YmUgaWNoCnp1bWluZGVzdC4gRGllIFRhdCBtdXNzdGUgbnVyIGluIGRlbSBFVS1MYW5kIGdlc2NoZWhlbiwgaW4gZGVtIGVzIHN0cmFmYmFyCmlzdC4KCkRhIGljaCBtYWwgZ2FueiBuYWl2IGRhdm9uIGF1c2dlaGUsIGRhcyBkaWUgVGF0IGRhcyBCZXJlaXRzdGVsbGVuIGRlcyBNVUQgaXN0LAprb21tdCBJaHIgYWxzbyBub2NobWFsIGRhdm9uIDopKQoKS3JlbGxqYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IEdhbWluZyBQcm9oaWJpdGlvbiAoWm9vaywgIDUuIFNlcCAyMDAyLCAxNzo0ODozMyk6Cn4jISBybj1LcmVsbGphIHJ0PTEwMzEyMzg3MDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMxMTM1NzU4CkljaCBlbnRzY2h3aW5kZSBzb25zdCBlaCBpbnMgU2Nod2VpemVyIFJ1ZWNrenVnc2dlYmlldCA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZpcmVoYXdrcyBIdW1vciBpc3QgaW1tZXIgd2llZGVyIGVyc3RhdW5saWNoIDspIChFbGl6YWJldGgsICA1LiBTZXAgMjAwMiwgMjE6NDU6MDkpOgpGaXJlaGF3ayBydWZ0IGluIGRpZSBBcmVuYSA6CkhhdSBpaG4genUgQnJlaSwgR29ldHRlcnNwZWlzZSBzb3p1c2FnZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCcm90aSB1bmQgZGllIEtvc2VuYW1lbiA7LSkgKExpYXJhLCAgNi4gU2VwIDIwMDIsIDAwOjQ0OjM0KToKW1phdWJlcmVyOkxpYXJhXSBCcm90aSBpY2ggYmluIG11ZWRlIDwwMDo0MDozMz4KW1phdWJlcmVyOkJyb3RuYWVsXSB1ZXNjaCBudWVzY2ggOikgPDAwOjQwOjM5PgpbWmF1YmVyZXI6TGlhcmFdIHVuZCBkdSBiaXN0IHVucm9tYW50aXNjaCA7LSkpIDwwMDo0MDo0OT4KW1phdWJlcmVyOkVsZGFyb25dIEljaCBkYWNodGUsIGRpZSBGcmF1ZW4gc2VpZW4gaW1tZXIgdW5lcm11ZWRsaWNoLi4uCltaYXViZXJlcjpFbGRhcm9uXSA8MDA6NDE6MDE+CltaYXViZXJlcjpCcm90bmFlbF0gYWxzbyB3ZW5uIG1hbiBpbSBiZXR0IHNhZ3QgaWNoIGJpbiBtdWVkZSwgZGFubiBmaW5kIGljaApbWmF1YmVyZXI6QnJvdG5hZWxdIGRhcyB2aWVsIHVucm9tYW50aXNjaGVyIDopIDwwMDo0MToxNz4KW1phdWJlcmVyOkxpYXJhXSBobXBmIHJ1aGUgPDAwOjQxOjE5PgpbWmF1YmVyZXI6TGlhcmFdIGljaCBnZWggZWluZmFjaCBoYXQgamEgZG9jaCBrZWluZW4gc2lubiA7LSkgPDAwOjQxOjMxPgpbWmF1YmVyZXI6RWxkYXJvbl0gZGFzIGhlaXNzdDogIkljaCBoYWIgTWlncmFlbmUiIDopIDwwMDo0MTozMz4KW1phdWJlcmVyOkJyb3RuYWVsXSBhdXNzZXJkZW0gOikgPDAwOjQxOjQzPgpbWmF1YmVyZXI6TGlhcmFdIG9oIHdlbm4gZHUgZGFzIG9lZnRlciB6dSBob2VyZW4gYmVrb21tc3QgbXVzcyBkYXMgYW4gZGlyCltaYXViZXJlcjpMaWFyYV0gbGllZ2VuIGVsZGFyb25oYXNpIDwwMDo0MTo1MT4KW1phdWJlcmVyOkVsZGFyb25dIEhBU0k/IDwwMDo0MTo1Nz4KW1phdWJlcmVyOkxpYXJhXSBoYXNpLiA8MDA6NDI6MDU+CltaYXViZXJlcjpCcm90bmFlbF0gSGFzaWlpIDpvKSBlbGRhIGtudWRkZWxmbGF1c2NoaWdydWVuaGFzaWhvYmJpdCA6KQpbWmF1YmVyZXI6QnJvdG5hZWxdIDwwMDo0MjoxMT4KW1phdWJlcmVyOkxpYXJhXSBzY2hudWNrZWxtYXVzZXphaG4uIDwwMDo0MjoxMz4KW1phdWJlcmVyOkxpYXJhIG5pY2t0IEJyb3RpIHp1LiA8MDA6NDI6MjM+XQpbWmF1YmVyZXI6QnJvdG5hZWxdIGdydWVua3VzY2hlbHd1c2NoZWx3aW56bGlob2JiaXR0aWkgOikgPDAwOjQyOjIzPgpbWmF1YmVyZXI6QnJvdG5hZWwgZnJvaXQgc2ljaC4gPDAwOjQyOjM0Pl0KW1phdWJlcmVyOkVsZGFyb24gc2NobW9sbHQuIDwwMDo0Mjo0MD5dCltaYXViZXJlcjpCcm90bmFlbCBraWNoZXJ0IGZyb2VobGljaC4gPDAwOjQyOjUyPl0KClpaTCwgZ3JpbnN0IEVsZGFyb25oYXNpaG9iYml0IGFuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTm9jaCBtYWwgU2VnZW4gKEVsYmVyZXQsICA2LiBTZXAgMjAwMiwgMTA6MjE6MTApOgp+IyEgb249RWxiZXJldCBvdD0xMDMxMzAwNDYwIG9nPWdpbGRlbi5rbGVydXMKfiMhIHJuPU9ya3RvZXRlciBydD0xMDMxMzAwMzk4IHJnPWdpbGRlbi5rbGVydXMKfiMhIHRpZD0xMDMxMzAwMDIzCm5lZSwgYmF1IGRvY2ggbGllYmVyIGVpbiwgZGFzcyBtYW4gd2VubiBtYW4gbmNpaHQgbXVodCwgYWxsZSAzIG1pbiBuZW4gbmV1ZW4Kc2VnZW4gYnJhdWNodCwgc29uc3Qgc3RpcmJ0IG1hbiA7KQoKRWxiaQpubgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGlzaXIgYWJ3ZXJ0ZW4gKE1hZ2lydXMsICA2LiBTZXAgMjAwMiwgMTc6NTc6MDMpOgouLi4KRGVyIERpc2lyIGJlaXNzdCBEaWNoLgpEaWUgYmxhZXVsaWNoIHNjaGltbWVybmRlIFNjaHV0emF1cmEgdW0gRGljaCBsb2VzdCBzaWNoIGxhbmdzYW0gYXVmLgouLi4KMiBLYW1wZnJ1bmRlbiBzcGFldGVyOgpEZXIgRGlzaXIgYmVpc3N0IERpY2guCkRpZSBWZXJ6YXViZXJ1bmcgRGVpbmVyIEhhZW5kZSBsYWVzc3QgbGFuZ3NhbSBuYWNoLgouLi4KCk1hZ2lydXMsIGRlbW5hZWNoc3QgenVydWVja2JlaXNzZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zODogR2FtaW5nIFByb2hpYml0aW9uIChHcmltbWJvcm4sICA4LiBTZXAgMjAwMiwgMTc6MDY6MzcpOgp+IyEgcm49UGlsZ3JpbSBydD0xMDMxNDk3MTU3IHJnPXd3dwp+IyEgdGlkPTEwMzExMzU3NTgKSmEsIGludGVyZXNzYW50IGlzdCBhdWNoIGRpZSBXZXJidW5nIGF1ZiBkZXIgU2VpdGUgbWl0IGRlcgpTZWN1cml0eWFsZXJ0c2ltdWxhdGlvbiAiWW91ciBDb21wdXRlciBJcyBDdXJyZW50bHkgQnJvYWRjYXN0aW5nIEFuIEludGVybmV0CklQIEFkZHJlc3MuIFdpdGggVGhpcyBBZGRyZXNzLCBTb21lb25lIENhbiBCZWdpbiBBdHRhY2tpbmcgWW91ciBDb21wdXRlciEiIE1hbAphYmdlc2VoZW4gZGF2b24gZGFzcyBkYXMgYmVpIG1pciBzbyBuaWNodCBzdGltbXQgKE5BVCwgYWxzbyB6dW1pbmRlc3QgZGVyClJlY2huZXIgYW4gZGVtIGljaCB0aXBwZSBicm9hZGNhc3RlZCBnYXIgbmljaHRzKSBpc3QgZGFzIGVpbiBzY2hvZW5lcyBCZWlzcGllbApmdWVyIFBhbmlrbWFjaGUgYXVmZ3J1bmQgdGVjaG5pc2NoZW4gVW52ZXJzdGFlbmRuaXNzZXMuIEVzIGlzdCBqYSBuaWNodAp3aXJrbGljaCBmYWxzY2gsIGFiZXIgc28gcmljaHRpZyBzZXJpb2VzIGF1Y2ggd2llZGVyIG5pY2h0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQwOiBHYW1pbmcgUHJvaGliaXRpb24gKEdyaW1tYm9ybiwgIDguIFNlcCAyMDAyLCAxNzowODoxOSk6Cn4jISBybj1IdW1uaSBydD0xMDMxNDk3NTk1IHJnPXd3dwp+IyEgdGlkPTEwMzExMzU3NTgKTmFqYSwgcGkgaXN0IHNjaG9uIGVpbiBiaXNjaGVuIHVuaGFuZGxpY2gsIHdlbm4gbWFuIGtlaW5lbiBUYXNjaGVucmVjaG5lciBoYXQuCkFiZXIgMy4yPyBFcnN0ZW5zIHdhZXJlIDMuMSBrb3JyZWt0IGdlcnVuZGV0LCB1bmQgendlaXRlbnMgd2FzIGlzdCBhbiAyMi83IHNvCmZhbHNjaD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDA6IEdhbWluZyBQcm9oaWJpdGlvbiAoR3JpbW1ib3JuLCAgOC4gU2VwIDIwMDIsIDE3OjQ3OjI3KToKfiMhIHJuPVBpbGdyaW0gcnQ9MTAzMTQ5ODAyMCByZz13d3cKfiMhIHRpZD0xMDMxMTM1NzU4CkludGVyZXNzYW50IHNpbmQgYXVjaCBkaWUgYW5kZXJlbiBMYWVuZGVyLCB3ZW5uIG1hbiBzaWVodCB3YXMgZGllc2UgQW1pcyBhbHMKc2VsdHNhbSBhbnNlaGVuLiBCZWlzcGllbCBTY2hvdHRsYW5kOiBFcyBpc3QgbGVnYWwgZGFzIExhbmQgYW5kZXJlciB6dQp1ZWJlcnF1ZXJlbi4gTWlyIGFscyBTY2h3ZWRlbiBpc3QgZGFzIG5hdHVlcmxpY2ggc2VsYnN0dmVyc3RhZW5kbGljaC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MTogR2FtaW5nIFByb2hpYml0aW9uIChMaWFyYSwgIDguIFNlcCAyMDAyLCAxOTozNzo1Myk6Cn4jISBybj1Sb2NodXMgcnQ9MTAzMTUwMTYwOSByZz13d3cKfiMhIHRpZD0xMDMxMTM1NzU4CkFlaCwgd2llIGR1c2NoZW4gZGllIGRlbm4gaW4gRmxvcmlkYT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERhdGVuYmFlbmtjaGVuIChSb25kYSwgIDguIFNlcCAyMDAyLCAyMjozODo0Nyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzMTUxNzM4MCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDMxNTE1NzE5CkdyaW1tYm9ybiwgZGFzIGxpZWd0IGFuIGVpbmVtIGdydW5kc2FldHpsaWNoZW4gRmVobGVyOiBIYWV0dGVzdCBEdSBEQVMgZ2VzYWd0LApoYWV0dGVuIERpciBzaWNoZXIgbWVocmVyZSBNdWRkZXIgKG1pY2ggZWluZ2VzY2hsb3NzZW4hKSBzb2ZvcnQgZ2Vob2xmZW4sIGRhcwpQcm9ibGVtIHp1IGxvZXNlbiAoc3ByaWNoOiBhdXN6dXRyaW5rZW4pLiBTbyBoYWV0dGVuIHdpciBudXIgbm9jaCBsZWVyZQpXZWlua2FydG9ucyBlbnRzb3JnZW4gbXVlc3Nlbi4KClJvbmRhICp0cmlua3QgZ3JhZCBsZWNrZXJlbiwgbmljaHQgZXRpa2V0dGllcnRlbiBNdWVsbGVyLVRodXJnYXUqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEYXRlbmJhZW5rY2hlbiAoR3JpbW1ib3JuLCAgOC4gU2VwIDIwMDIsIDIyOjM5OjQ1KToKfiMhIHJuPVJvbmRhIHJ0PTEwMzE1MTc1Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMxNTE1NzE5CkRhIGtvZW5uZW4gZWluaWdlIE11ZGRlciBlaW5pZ2UgWmVpdCBkcmFuIHRyaW5rZW4uIFdpciByZWRlbiB2b24gZGVyCkdyb2Vzc2Vub3JkbnVnbiAyNTAgRmxhc2NoZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERhdGVuYmFlbmtjaGVuIChSb2NodXMsICA4LiBTZXAgMjAwMiwgMjI6NDA6NDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzE1MTc1ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMxNTE1NzE5ClNpZWggZXMgbWFsIHNvOiBXaXIgcmVkZW4gdm9uIE11ZGRlcm4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERhdGVuYmFlbmtjaGVuIChSb25kYSwgIDguIFNlcCAyMDAyLCAyMjo0MTowMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzMTUxNzU4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzE1MTU3MTkKV28gaXN0IGRhcyBQcm9ibGVtPyBEYXMgc2NoYWZmdCBlaW5lIGR1cmNoc2Nobml0dGxpY2hlIE11ZHBhcnR5IGFuIGVpbmVtCkFiZW5kPwoKUm9uZGEgKnd1ZXJkZSBkaWUgMjUwIEZsYWVzY2hjaGVuIGFiZXIgYXVjaCBnZXJuIGhpZXIgZWlubGFnZXJuKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRGF0ZW5iYWVua2NoZW4gKEdyaW1tYm9ybiwgIDguIFNlcCAyMDAyLCAyMjo0MTo1NCk6Cn4jISBybj1Sb2NodXMgcnQ9MTAzMTUxNzY0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzE1MTU3MTkKSmEsIGRhIGhpbGZ0IGF1Y2ggZGVyIEhpbndlaXMsIGRhc3MgbWFuIHNvIGd1dGUgU2FjaGVuIG5pY2h0IGVpbmZhY2gKcnVudGVya2lwcGVuIHNvbGx0ZSwgbmljaHQgbWVociB2aWVsLiBTbyB3aWUgQioqKiogZGFtYWxzIGluIEJlcmxpbiBkaWUgZ2FuemUKRmxhc2NoZSBKLiBXYWxrZXIgYXVzZ2V0cnVua2VuIGhhdC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBEYXRlbmJhZW5rY2hlbiAoQm9pbmcsICA4LiBTZXAgMjAwMiwgMjI6NDI6MjgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzE1MTc3MTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMxNTE1NzE5CkR1IHdpcnN0IEouIFdhbGtlciBuaWNodCBhbHMgZ3V0ZSBTYWNoZSBiZXplaWNobmVuIHdvbGxlbiwgb2Rlcj8KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRGF0ZW5iYWVua2NoZW4gKFdpbGxvdywgIDguIFNlcCAyMDAyLCAyMjo0Mjo1OCk6Cn4jISBybj1Cb2luZyBydD0xMDMxNTE3NzQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMTUxNTcxOQprb21pc2NoLCBkYXMgd29sbHRlIGljaCBhdWNoIGdlcmFkZSBmcmFnZW4uLi4KV2VpZGNoZW4gV2lsbG93IGdvZW5udCBzaWNoIG1hbCBuZW4gVGFsaXNrZXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IERhdGVuYmFlbmtjaGVuIChPcmt0b2V0ZXIsICA4LiBTZXAgMjAwMiwgMjI6NDM6MTYpOgp+IyEgcm49Qm9pbmcgcnQ9MTAzMTUxNzc0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzE1MTU3MTkKMS4gSWNoIGRhY2h0ZSBlcyBnaW5nIHVtIFdlaW4/CjIuIEZ1ZXIgd2FubiBsYWVkc3QgZHUgdW5zIGRlbm4gbnVuIGVpbiBHcmltbWk/CgpPcmtULCBkdXJzdGlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRGF0ZW5iYWVua2NoZW4gKFJvbmRhLCAgOC4gU2VwIDIwMDIsIDIyOjQzOjMyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDMxNTE3NzE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMTUxNTcxOQpHUklNTUJPUk4/IER1IGhhc3QgZ3JhZGUgbmljaHQgd2lya2xpY2ggIkd1dGUgU2FjaGVuIiAod2llIERlaW5lbiBXZWluKSB1bmQKIkouIFdhbGtlciIgaW4gZWluZW0gU2F0eiBlcndhZWhudCwgb2Rlcj8gRGEgYnJpY2h0IGVpbiBXZWx0YmlsZCB6dXNhbW1lbi4uLgoKUm9uZGEgKmdlc2Nob2NrdC4gT2suIFdhciBpbiB6d2VpIFNhZXR6ZW4uIEFiZXIgbmVlZWUuLi4uIGJhZWghKgoKLi4uIGFsbGVzIHVudGVyIG1pbmRlc3RlbnMgMTAgSmFocmVuIGhhdCBkZW4gTmFtZW4gIldoaXNrKGUpeSIgbmljaHQgdmVyZGllbnQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBEYXRlbmJhZW5rY2hlbiAoQm9pbmcsICA4LiBTZXAgMjAwMiwgMjI6NDQ6NTYpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMzE1MTc3OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMxNTE1NzE5ClRqYSwgZmFsc2NoIGdlZGFjaHQgLi4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IERhdGVuYmFlbmtjaGVuIChHcmltbWJvcm4sICA4LiBTZXAgMjAwMiwgMjI6NDU6MjQpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMzE1MTc3OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMxNTE1NzE5CkRhcyBtaXQgZGVtIEhlcnJuIFdhbGtlciB3YXIgbGVkaWdsaWNoIGVpbmUgU3RpY2hlbGVpIGluIFJpY2h0dW5nIE11ZGRlciB1bmQKTWFzc2xvc2lna2VpdC4KVW5kIGljaCBsYWRlIGRvY2ggbmljaHQgZGFzIGdhbnplIE1HIGhpZXIgenUgbWlyIGVpbiwgc2VoZSBpY2ggc28gZGFlbWxpY2gKYXVzPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRGF0ZW5iYWVua2NoZW4gKEJvaW5nLCAgOC4gU2VwIDIwMDIsIDIyOjQ2OjEwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDMxNTE3OTI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMTUxNTcxOQpBdWNoIHdlbm4gZGllIEZyYWdlIHByb3Zva2FudCBnZXN0ZWxsdCBpc3Q6IE5laW4gLi4uIDspCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERhdGVuYmFlbmtjaGVuIChWYW5pb24sICA4LiBTZXAgMjAwMiwgMjI6NDY6MjIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzE1MTc1ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMxNTE1NzE5CjEwIE11ZGRlciAqIDI1IFRhZ2UgPSB2aWVsIFBsYXR6IGltIEtlbGxlci4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEYXRlbmJhZW5rY2hlbiAoR3JpbW1ib3JuLCAgOC4gU2VwIDIwMDIsIDIyOjQ3OjQwKToKfiMhIHJuPVZhbmlvbiBydD0xMDMxNTE3OTgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMTUxNTcxOQpFaW5lbiBNb25hdCBsYW5nIDEwIERlcHBlbiBhbSBTZXQ/IERhIG11ZXNzZW4gamEgbWVpbmUgZ2VzYW1tZWx0ZW4KV2hpc2tleXZvcnJhZXRlIGhlcmhhbHRlbiBkYW1pdCBpY2ggZGFzIGF1c2hpZWx0ZS4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBEYXRlbmJhZW5rY2hlbiAoUm9uZGEsICA4LiBTZXAgMjAwMiwgMjI6NDg6MTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzE1MTgwNjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMxNTE1NzE5CkFsc28gYmVpIGRlbiBXaGlza2V5dm9ycmFldGVuIGhlbGZlbiB3aXIgYXVjaCBnZXJuLiBLZWluIFByb2JsZW0uCgpSb25kYSAqaGlja3MqLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IERhdGVuYmFlbmtjaGVuIChHcmltbWJvcm4sICA4LiBTZXAgMjAwMiwgMjI6NDg6NDgpOgp+IyEgcm49Um9uZGEgcnQ9MTAzMTUxODA5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzE1MTU3MTkKRmluZ2VyIHdlY2guIE5peCBnaWJ0cywgaWhyIEJhbmF1c2VuLiBBbGxlcyBtZWlucy4gTWVpbiBTY2hhdHouLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRGF0ZW5iYWVua2NoZW4gKFJvY2h1cywgIDguIFNlcCAyMDAyLCAyMjo0OToyMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzMTUxODEyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzE1MTU3MTkKcHJlY2lvdXM/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRGF0ZW5iYWVua2NoZW4gKEdyaW1tYm9ybiwgIDguIFNlcCAyMDAyLCAyMjo1MjowNik6Cn4jISBybj1Sb2NodXMgcnQ9MTAzMTUxODE2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzE1MTU3MTkKT25lIGdsYXNzIHRvIGRyaW5rIHRoZW0gYWxsLCBvbmUgZ2xhc3MgdG8gY2Fyb3VzZS4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIGRlLmFsdC5uZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoUm9uZGEsICA4LiBTZXAgMjAwMiwgMjI6NTk6NTQpOgpGcm9tOiBhLnpvcm5Ab3NyYW0uZGUgKEFuZHJlYXMgWm9ybikKTmV3c2dyb3VwczogZGUuZXRjLmJlcnVmLnNlbGJzdGFlbmRpZwpTdWJqZWN0OiBSZTogU3RhdHVzIGFscyBQaG90Z3JhcGgvSm91cm5hbGlzdApEYXRlOiA1IFNlcCAyMDAyIDAwOjMxOjI0IC0wNzAwCk1lc3NhZ2UtSUQ6IDw4ZjE3Zjc5Ny4wMjA5MDQyMzMxLjIzYjI2NDRAcG9zdGluZy5nb29nbGUuY29tPgoKPiBBY2ggc28sIHVuZCBkYW1pdCBuaWVtYW5kIGVudHRhZXVzY2h0IGlzdCwgaGllciBub2NoIGRlciB1ZWJsaWNoZSBadXNhdHoKbmFjaAo+IGRlbSBFcmtsaW5nZW4gZGVzIFdvcnRlcyAiU2Nod2VzdGVyIjoKPiAKPiBbeF0gU2VuZCBwaWdzISAgOi0pKQo+IApIaSBNYXR0aGlhcywKCkRlaW4gV3Vuc2NoIGlzdCBtaXIgQmVmZWhsIQoKICAgJiwtLS0tLixfICAgICAgICYsLS0tLS4sXyAgICAgICAmLC0tLS0uLF8gICAgICAgICAgICAgICAgICAgICAgICAgIAogIC8gICAgICAnICJfICAgICAvICAgICAgJyAiXyAgICAgLyAgICAgICcgIl8gICAgICAgICAgICAgICAgICAgICAgICAgCjosXyApX19fKCYsLS09LS4sXyggIClfXyYsLS0tPS4sXyAoICApXyYsLS0tLTosXyAgICAgICAgICAgICAgICAgICAgICAKICcgIl9gYGB9LyAgICAgICcgIl8vIGBgLyAgICAgICcgIl99LyBgLyAgICAgICcgIl8gICAgICAgICAgICAgICAgICAgIApfKCAsX0AgICIoICApX19fKCAsX0AgICAoICApX19fKCAsX0AiICAoICApX19fKCAsX0AiICAgICAgICAgICAgICAgICAgCmAgJiwtLS0tLix9L2BgYGAmLC0tLS0uLF99L2BgYCYsLS0tLS4sXyB9L2BgJiwtLS0tLixfICAgICAgICAgICAgICAgICAKICAvICAgICAgJyAiXyAgIC8gICAgICAnICJfICAgLyAgICAgICcgIl8iICAvICAgICAgJyAiXyAgICAgICAgICAgICAgIAogKCAgKV9fXyggLl9AICAoICApX19fKCAuX0AgICggIClfX18oIC5fQCAgKCAgKV9fXyggLl9AICAgICAgICAgICAgICAgCiAgfS8gICAgfXsgICAgICB9LyAgICB9eyAgICAgIH0vICAgIH17ICAgICAgfS8gICAgfXsgICAgICAgICAgICAgICAgICAKICAiIiAgICAmLC0tLS0uLCIiICAgJiwtLS0tLixfIiIgICYsLS0tLS4sXyAiIiAmLC0tLS0uLF8gICAgICAgICAgICAgIAogICcgIl8gIC8gICAgICAnICJfICAvICAgICAgJyAiXyAgLyAgICAgICcgIl8gIC8gICAgICAnICJfICAgICAgICAgICAgCl8oICxfQCAoICApX19fKCAsX0AgKCAgKV9fXyggLF9AICggIClfX18oICxfQCAoICApX19fKCAgLF9AICAgICAgICAgICAKYH17ICAgICB9L2BgYGB9eyAgICAgfS9gYGBgfXsgICAgIH0vYGBgYH17ICAgICB9L2BgYGB9eyAgICAgICAgICAgICAgIAogIiIgICAgICIiICAgICIiICAgICAiIiAgICAiIiAgICAgIiIgICAgIiIgICAgICIiICAgICIiIAoKQW5kcmVhcyAoU0NOUikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hbCB3YXMgYW5kZXJlczogZGUuYWx0LmZvbGtsb3JlLnVyYmFuLWxlZ2VuZHMgKFJvbmRhLCAgOC4gU2VwIDIwMDIsIDIzOjE4OjQwKToKTHVrYXMgSGVpbnNlciA8aGVpbnNlckBnbXguZGU+IHRhdCBzY2hyZWliZW4gdHVuOgo+IAo+PiBEdSBnbGF1YnN0IGVybnN0aGFmdCwgd2VubiBqZW1hbmQgc292aWVsIEdlbGQgZmluZGV0LCB3dWVyZGUgZXIgZXMKPj4gZXJzdG1hbCBpbiBSdWhlIHphZWhsZW4sIGJldm9yIGVyIGVzIGFuIHNpY2ggbmltbXQ/IChvYiBudW4genVtIGFiZ2ViZW4KPj4gb2RlciBtaXRuZWhtZW4pCj4gCj4gTmFqYSwgdmllciBQYWVja2NoZW4gYSB6ZWhuIDEuMDAwPy1TY2hlaW5lbiBzaW5kIGRvY2ggaGFsYndlZ3MgCj4gdWViZXJzaWNodGxpY2gsIG9kZXI/IDstKQoKV2VubiBlcyB3aXJrbGljaCAxMDAwIEZyYWdlemVpY2hlbi1TY2hlaW5lIHdhZXJlbiwgaGFldHRlIGljaApzaWUgYmVoYWx0ZW4uIFNvbGNoZSBGZWhsZHJ1Y2tlIGhhdCBtYW4gamEgdmllbCB6dSBzZWx0ZW4gaW4KZGVyIEhhbmQuIFdhcyBoYWJlbiBkaWUgZGVubiBmdWVyIE1vdGl2ZT8gR2l0dGVyIHZvciBkZW4KRmVuc3Rlcm4/CgoKQ29CaQotLSAKICBQZXJsIGlzdCBkZXIgZ2VnbHVlY2t0ZSBWZXJzdWNoLCBlaW5lbiBicmFpbmR1bXAgZGlyZWt0IGF1c2Z1ZWhyYmFyIHp1Cm1hY2hlbi4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKEx1dHoKRG9ubmVyaGFja2UpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBEYXRlbmJhZW5rY2hlbiAoQ2F0d2VhemxlLCAgOS4gU2VwIDIwMDIsIDA5OjI1OjQyKToKfiMhIHJuPVJvbmRhIHJ0PTEwMzE1MTc4MTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMxNTE1NzE5Ck9oIG9oLCB2b3JzaWNodCBtaXQgc29sY2hlbiBBdXNzYWdlbi4gRWluIFdoaXNreSBtdXNzIG5pY2h0IHp3aW5nZW5kIGVyc3QgMTAKd2VyZGVuLiAKQWxzbyBzb24gQk5KIGlzdCBoZXJ2b3JyYWdlbmQgZGF6dSBnZWVpZ25ldCwgdW0gc2ljaCBkZW4genVncnVuZGVsZWdlbmRlbgpHZXNjaG1hY2sgdm9uIFdoaXNreSBtYWwgd2llZGVyIGF1ZiBkaWUgWnVuZ2UvaW5zIEdlZGFlY2huaXMgenUgcnVmZW4uIFVuZCBkZXIKSXNsYXkgVmludGFnZSAoZ3VlbnN0aWcsIGlzdCByZWFsIG5lbiBMYWdhdnVsaW4pIGlzdCBhbHMga2xlaW5lcwpad2lzY2hlbnNjaGx1ZWNrY2hlbiBzZWhyIHNjaG1hY2toYWZ0LgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBEYXRlbmJhZW5rY2hlbiAoQ2F0d2VhemxlLCAgOS4gU2VwIDIwMDIsIDA5OjQzOjU1KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDMxNTU2MzQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMTUxNTcxOQpOYWNoIGt1cnplbSBOYWNoZnJhZ2VuIHVuZCBOYWNoZm9yc2NoZW4gbXVzcyBpY2ggbWVpbmUgQXVzc2FnZSByZXZpZGllcmVuLCBkZXIKQi5OLkouIGlzdCB6d2FyIG51ciBuZW4gQmxlbmRlZCBXaGlza2V5LCBhYmVyIHRyb3R6ZGVtIDEyIEphaHJlIGFsdC4gQWJlcgppbW1lciBub2NoIGxlY2tlciA6LSkKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERlciBtYXRoZW1hdGlzY2hlIEJld2Vpcywgd2FydW0gRGV1dHNjaGxhbmQgbmljaHQgV2VsdG1laXN0ZXIgd2VyZGVuIGtvbm50ZSAoQm9pbmcsICA5LiBTZXAgMjAwMiwgMTA6MDY6MjcpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTAzMTU1ODUxOCByZz13aXR6ZQp+IyEgdGlkPTEwMzE1NTg1MTgKT2ggbWFubiwgZGFzIGthbSBzY2hvbiB2b3IgZGVtIEVuZHNwaWVsIGF1ZiBqZWRlbSBGZXJuc2Voa2FuYWwsIGF1ZiBhbGxlbgpJbnRlcm5ldC1TZWl0ZW4gdW5kIGltIFJhZGlvIC4uLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTdWNoZSBMaW5rL0luZm8genUgT25saW5lLUF1a3Rpb25lbiAoR3JpbW1ib3JuLCAgOS4gU2VwIDIwMDIsIDE4OjQxOjI2KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDMxNTg5NTUyIHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTAzMTE2ODI0MQpTbyBnZW5hdSB3b2xsdGVuIHdpciBkaWUgWnVzdGFlbmRlIGluIERlaW5lbSBFbHRlcm5oYXVzIGVpZ2VudGxpY2ggZ2FyIG5pY2h0Cndpc3Nlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTdWNoZSBMaW5rL0luZm8genUgT25saW5lLUF1a3Rpb25lbiAoTWFuZHJhZ29uLCAgOS4gU2VwIDIwMDIsIDE4OjQxOjU2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDMxNTg5Njg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMTE2ODI0MQpWZXJ3YW5kdHNjaGFmdCE9RWx0ZXJuaGF1cyAuLi4KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc3BhZXRlIEVpbnNpY2h0IChEZWVwYmx1ZSwgIDkuIFNlcCAyMDAyLCAyMToxMzo1Mik6CltUb2Q6TGFyc10gRWluIGFia2xpbmdlbmRlciBTZWdlbiBoYXQgZ2VyYWRlIFBpdGZhbGwgdW1nZWJyYWNodC4KW1RvZDpQaXRmYWxsXSBDSEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFPUyBSVUxFWiAgICAgICAgICAgICAgICAgICAgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc3BhZXRlIEVpbnNpY2h0IChNb3Jnb3RoLCAgOS4gU2VwIDIwMDIsIDIxOjE1OjA4KToKfiMhIHJuPURlZXBibHVlIHJ0PTEwMzE1OTg4MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMxNTk4ODMyCkt1cnogdm9yaGVyLi4uCkRlaW4gRnJldW5kIFBpdGZhbGwgZ2VodCBqZXR6dCB3aWVkZXIgc3RlcmJlbiBhdXMgZGVyIEZlcm5lLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE9oIHd1bmRlciwgb2ggd3VuZGVyIChHcmltbWJvcm4sIDEyLiBTZXAgMjAwMiwgMTA6NTg6MTQpOgp+IyEgcm49U291IHJ0PTEwMzE4MjA4Mzggcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTEwMzE4MTE2MTgKRWluIFNjaGxhZywgZGFubiBmYWVsbHQgcHJha3Rpc2NoIGFsbGVzIHdhcyBkZXIgR3Jhdml0YXRpb24gdW50ZXJ3b3JmZW4gaXN0LgpTcGllbGVyLiBTY2h3YWVjaGxpY2ggc2llIHNpbmQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE9oIHd1bmRlciwgb2ggd3VuZGVyIChCYW1iaSwgMTIuIFNlcCAyMDAyLCAxMTo0NDozMik6Cn4jISBvbj1CYW1iaSBvdD0xMDMxODIzODY0IG9nPWdpbGRlbi5rbGVydXMKfiMhIHJuPUNyb2Z0IHJ0PTEwMzE4MjE4MTYgcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTEwMzE4MTE2MTgKS2FlbXBmZXIgc2luZCBoYWx0IFdlaWNoZWllci4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBPaCB3dW5kZXIsIG9oIHd1bmRlciAoRm9vYmFyLCAxMi4gU2VwIDIwMDIsIDEzOjI3OjAxKToKfiMhIHJuPUJhbWJpIHJ0PTEwMzE4MjM4NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMxODExNjE4Ck5vZSwgU2NodWV0dGxlciB6dSBzdGFyay4gOm8pCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBPaCB3dW5kZXIsIG9oIHd1bmRlciAoRGVlcGJsdWUsIDEyLiBTZXAgMjAwMiwgMTM6NDU6MTkpOgp+IyEgb249RGVlcGJsdWUgb3Q9MTAzMTgzMTEwNyBvZz1kLndhbGQKfiMhIHJuPU9ya3RvZXRlciBydD0xMDMxODMxMDM4IHJnPWQud2FsZAp+IyEgdGlkPTEwMzE4MTE2MTgKUm9jaHVzIGJhc3RlbHQgd2llZGVyPwpPaCB3dW5kZXIsIG9oIHd1bmRlciEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5lc2FqYSB6YWVobHQgbmljaHQgOikgKE1vcmdvdGgsIDEzLiBTZXAgMjAwMiwgMjA6NDY6MjMpOgpDb3VudCBqZXR6dDogMTMKTmVzYWphICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkNvdW50IGpldHp0OiAxMwoKTSogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgVW5kIHdpZWRlciBkZS5hbHQubmV0ZGlnZXN0IChSb25kYSwgMTQuIFNlcCAyMDAyLCAwMDowMTowNSk6CkRpZXNtYWwgc29nYXIgbWl0IGFrdHVlbGxlbSBCZXp1ZyB6dW0gTW9yZ2VuZ3JhdWVuIChzb3JyeSBNb3Jnb3RoLi4uKQoKLS1zY2huaXBwZWwtLS0KRnJvbTogIkpvZXJnIFJ1ZWRlbmF1ZXIiIDxub3NwYW1AcnVlZGVuYXVlci5uZXQ+Ck5ld3Nncm91cHM6IGRlLmFsdC5mYW4udG9sa2llbgpTdWJqZWN0OiBSZTogUGFydGVpZW4genVyIEJ1bmRlc3RhZ3N3YWhsCkRhdGU6IFdlZCwgMTEgU2VwIDIwMDIgMTk6NTg6MjcgKzAyMDAKTWVzc2FnZS1JRDogPGFsbzA4MCQxcXBtb2ckMUBJRC0xNDA0ODgubmV3cy5kZm5jaXMuZGU+CgpBbmRyZWFzIEMuIExhemFyIHdyb3RlOgoKPGc+IEtsYXNzZSEKV28gd2lyIHNjaG9uIGRhYmVpIHNpbmQsIHp1bSBBdXNnbGVpY2g6Cgo+IFtOYWNoIGRlciBUYWdlc3NjaGF1LiBFaW4gaG9jaGdld2FjaHNlbmVyIE1hbm4gaW4gZWluZXIgZHVua2xlbiBLdXR0ZQo+IHNwcmljaHQgaW4gZGllIEthbWVyYS4gU2VpbmUgU3RpbW1lIGlzdCBlaGVyIHNjaHdhY2gsIGFiZXIgc2Vocgo+IGR1cmNoZHJpbmdlbmQuXQo+IAo+ICJHdXRlbiBBYmVuZCwgbWVpbmUgRGFtZW4gdW5kIEhlcnJlbiwgbGllYmUgRWxiZW4uIEtlbm5lbiBTaWUgZGllc2VzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeXl5eXl5eXl5eXl4KKGRlbiBmYW5kIGljaCBiZXNvbmRlcnMgZ3V0IDstKSApCj4gc2Nob2VuZSBMYW5kIGltIEhlcnplbiBNaXR0ZWxlcmRlcz8KPiAKLSBEaWUgZGVyemVpdCBob2hlIEFyYmVpdHNsb3NpZ2tlaXQgaXN0IGFsbGVpbiBkdXJjaCBkaWUKV2VsdHdpcnRzY2hhZnRza3Jpc2UgenUgYmVncnVlbmRlbi4gV2FlaHJlbmQgd2lyIG5vY2ggdm9yIHdlbmlnZW4gSmFocmVuCmVpbmVuIGZsb3JpZXJlbmRlbiBFeHBvcnQgdW5zZXJlciBIb2NodGVjaG5vbG9naWUgaW4gZGllIExhZW5kZXIgaW0gV2VzdGVuCmhhdHRlbiwgaXN0IGVyIGluIGxldHp0ZXIgWmVpdCBleHRyZW0genVydWVjayBnZWdhbmdlbi4KCi0gRGVyIEdydW5kIGRhZnVlciBpc3QgZGllIGtyaWVnc3RyZWliZXJpc2NoZSBQb2xpdGlrIGRlciB3ZXN0bGljaGVuCkhlZ2Vtb25pYWxtYWNodCBpbiBkZXIgRm9sZ2UgZGVyIEVyZWlnbmlzc2UgZGVzIGxldHp0ZW4gSGVyYnN0ZXMuCkluc2Jlc29uZGVyZSBlaW4gU3RhYXQgaW0gU3VlZGVuIHZvbiB1bnMgd2lyZCB0aGVhdHJhbGlzY2ggYWxzICd2b20gQm9lc2VuCnJlZ2llcnQnIGJlemVpY2huZXQgdW5kIHNvbGwgd29obCBzY2hvbiBiYWxkIGFuZ2VncmlmZmVuIHdlcmRlbi4KCi0gSGF1cHRzYWVjaGxpY2hlIEJlZ3J1ZW5kdW5nIGlzdCBkaWUgdW5iZXdpZXNlbmUgQmVoYXVwdHVuZywgZGFzcyBkZXIKSGVycnNjaGVyIHNjaG9uIHNlaXQgbWVocmVyZW4gSmFocmVuIHZlcnN1Y2hlLCBlaW5lIG1hZWNodGlnZSBXYWZmZSBhbgpzaWNoIHp1IGJyaW5nZW4uIEljaCBiaXR0ZSBTaWU6IGVzIGlzdCB1bnMgYWxsZW4gYmVrYW5udCwgZGFzcyBkaWUKZ3Jvc3NlbiBMYWVuZGVyIGltIFdlc3RlbiB2b24gdW5zIGRpZXNlIG9kZXIgYWVobmxpY2hlIERpbmdlIHNjaG9uIHNlaXQKbGFuZ2VtIGJlc2l0emVuLgoKLSBCaXMgamV0enQgaXN0IGRhZ2VnZW4gbm9jaCBrZWluIFBsYW4gYmVrYW5udCwgd2FzIG5hY2ggZWluZW0gZXZlbnR1ZWxsZW4KU2llZyBtaXQgZGVtIExhbmQgaW0gU3VlZG9zdGVuIGVpZ2VudGxpY2ggcGFzc2llcmVuIHNvbGwuIFdpciBiZWZ1ZXJjaHRlbiwKZGFzcyBkaWUgUmFzc2UsIGRpZSBkb3J0IGRlcnplaXQgZGVuIEhhdXB0YW50ZWlsIGRlciBCZXZvZWxrZXJ1bmcgc3RlbGx0LApzY2h3ZXJzdGVucyBiZW5hY2h0ZWlsaWd0IHdlcmRlbiBzb2xsLiAKCi0gSW0gU3VlZG9zdGVuIHZvbiB1bnMgZ2lidCBlcyBncm9zc2UgU3ltcGF0aGllbiBmdWVyIGRlbiBTdGFhdC4gRGllCkZvbGdlbiBlaW5lcyBLcmllZ2VzIHNpbmQgbmljaHQgYWJ6dXNjaGFldHplbi4KCkRhaGVyIHNhZ2VuIHdpcjogbWl0IHVucyBuaWNodCEgS2VpbiBLcmllZyBnZWdlbiBNb3Jkb3IgbWl0IHVuc2VyZXIKQmV0ZWlsaWd1bmchIFNhdXJvbiBIdXNzZWluIGlzdCBhbGxlcyBhbmRlcmUgYWxzIGVpbiBNb3Jnb3RoIEhpdGxlciwgd2llCnVucyBkaWUgd2VzdGxpY2hlIFByb3BhZ2FuZGEgdm9uIEdhbmRhbGYgQnVzaCBnbGF1YmVuIG1hY2hlbiBzb2xsISBBbHNvCndhZWhsZW4gc2llIGVybmV1dCBEYWluICdSdWhpZ2VoYW5kJywgdW5kIG1hY2hlbiBzaWUgYmVpZGUgS3JldXplIGJlaSBkZXIKU1BEIChTYXVyb25zIFBvbGl0aWNpYW5zIGluIERhbGUpIQoKSm9lcmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM4OiBHYW1pbmcgUHJvaGliaXRpb24gKEdyaW1tYm9ybiwgMTUuIFNlcCAyMDAyLCAxMDo0ODo0Nyk6Cn4jISBybj1EYXJpYSBydD0xMDMyMDc5NTg2IHJnPXd3dwp+IyEgdGlkPTEwMzExMzU3NTgKVmVyZWluaWd1bmcgdm9uIEJpZW5lbnNjaHdhZXJtZW4/IFNjaHdlaW5za3JhbSEKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtBLVN0YXRpIHZvbSAyMDAyLTA5LTEyIChHcmltbWJvcm4sIDE2LiBTZXAgMjAwMiwgMTA6NDQ6MzApOgp+IyEgb249T3JrdG9ldGVyIG90PTEwMzIxNjUzNzMgb2c9bWVnYXNjaG1hcnJuCn4jISBybj1ab29rIHJ0PTEwMzIxNjUyODcgcmc9dHJlZmZlbgp+IyEgdGlkPTEwMzIxNjUyODcKUG9laCEgRHUgd2lsbHN0IGRvY2ggbnVyIExldXRlIG5hY2ggTWVnYXNjaG1hcnJuIGxvY2tlbiEKCk5pY2h0IG1pdCBtaXIhCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llZGVyIG1hbDogZGUuYWx0Lm5ldGRpZ2VzdCAoUm9uZGEsIDE2LiBTZXAgMjAwMiwgMTk6MjQ6MzEpOgpGcm9tOiAiQW5kcmVhcyBIaXJzY2hiZXJnIiA8dXNlbmV0LmFuZGlAZ214LmRlPgpOZXdzZ3JvdXBzOiB0LW9ubGluZS50YWxrLmFsbGdlbWVpbgpTdWJqZWN0OiBNYWhsemVpdCEgOi0pCkRhdGU6IEZyaSwgMTMgU2VwIDIwMDIgMTU6NDg6MDEgKzAyMDAKTWVzc2FnZS1JRDogPGFsc3FhZiRlNGMkMDYkMUBuZXdzLnQtb25saW5lLmNvbT4KCgpBdXRvZmFocmVuIG1hY2h0IFNwYXNzLiBFc3NlbiBtYWNodCBTcGFzcy4gQW0gbWVpc3RlbiBTcGFzcyBtYWNodCBFc3NlbgppbSBBdXRvLiBEZXN3ZWdlbiBiZXNpdHplIGljaCBkaWVzZSBlcmhvZWh0ZSBBZmZpbml0YWV0IHp1CkRyaXZlLWluLVNjaGFsdGVybiwgc3BlemllbGwgaW4gbWVpbmVtIExpZWJsaW5ncy1GYXN0LUZvb2QtUmVzdGF1cmFudC4KRGFzIFZlcmdudWVnZW4gYW4gZGVyIFNlbGYtU2VydmljZS1WZXJzaW9uIGRlcyBFc3NlbnMgYXVmIFJhZWRlcm4gd2lyZAphbGxlcmRpbmdzIGVyaGVibGljaCBkdXJjaCBkaWUgUXVhbGl0YWV0IGRlciBHZWdlbnNwcmVjaGFubGFnZQpnZW1pbmRlcnQuCkljaCBiaW4gZGVyIFVlYmVyemV1Z3VuZywgZGFzcyBzaWUgaWhyZW4gTmFtZW4gZGVzaGFsYiBiZWtvbW1lbiBoYXQsCndlaWwgc2llIHZvZWxsaWcgZ2VnZW4gZGFzIFNwcmVjaGVuIGF1c2dlbGVndCBpc3QuCiJIaWVyZSBCZWNoZWx1biBoaXBwZSwiIGtuYXJ6dCBlcyBtaXIgYXVzIGRlbSBMYXV0c3ByZWNoZXIgZW50Z2VnZW4KLWRlciB1ZWJyaWdlbnMgZWluIGxlYmVuZGVyIEJld2VpcyBmdWVyIGRpZSBIYWx0YmFya2VpdCB2b24KVm9ya3JpZWdzd2FyZSBpc3QuCkhlaWxpZ2VyIE1jRG9uYWxkICEgSW52ZXN0bWVudCB3YWVyZSBoaWVyIGFuZ2VicmFjaHQuIEFscyBlcmZhaHJlbmVyCkRyaXZlLUluJ2VyIHdlaXNzIGljaCBhbGxlcmRpbmdzLCBkYXNzIGRlciBIZXJyIGFtIGFuZGVyZW4gRW5kZSBkZXMKRG9zZW50ZWxlZm9ucyBzaWNoIGdlcmFkZSBuYWNoIG1laW5lciBCZXN0ZWxsdW5nIGVya3VuZGlndCBoYXQuIEljaAplcm9lZmZuZSBkYXMgU3BpZWwga2xhc3Npc2NoIG1pdCBlaW5lciBHZWdlbmZyYWdlOgoiSGFiZW4gU2llIGV0d2FzIHZvbSBIdWhuID8iCkF1cyBkZXIgR2VnZW5zcHJlY2hhbmxhZ2UgdG9lbnQgZWluIHNjaHdlciB2ZXJzdGFlbmRsaWNoZXMgV29ydCwgZGFzcwphbGxlcmRpbmdzIGVpbmRldXRpZyBtaXQgIi4uLmlja2VuIiBlbmRldC4gRGVzaGFsYiBhbnR3b3J0ZSBpY2g6CiJHdXRlIElkZWUsIGp1bmdlciBGcmV1bmQsIGFiZXIgenVuYWVjaHN0IG1vZWNodGUgaWNoIGV0d2FzIGVzc2VuLiIKRXR3YXMgbGF1dGVyIHRvZW50IGVzIHp1cnVlY2s6CiJUU0NISUtLRU4gISIKIkFjaCBzbywgU2llIG1laW5lbiBDaGlja2VuLiBOb2UsIGxpZWJlciBkb2NoIG5pY2h0LiBIYWJlbiBTaWUKdmllbGxlaWNodCBQcmVzc2t1aCBtaXQgVG9tYXRlbnR1bmtlIGluIFJvZXN0YnJvZXRjaGVuID8iCiJIYW1idXJnZXIgPyIsIGZyYWd0IG1laW4gdW5zaWNodGJhcmVyIEdlZ2VudWViZXIgenVydWVjay4KV2FocmhlaXRzZ2VtYWVzcyBlcndpZGVyZSBpY2g6CiJOZWluLCBpY2ggYmluIEVpbmhlaW1pc2NoZXIuIEFiZXIgd2llc28gaXN0IGRhcyBzbyB3aWNodGlnIGZ1ZXIKbWVpbmUgQmVzdGVsbHVuZyA/IgoiV09MTEVOIFNJRSBFSU5FTiBILUEtTS1CLVUtUi1HLUUtUiAhPyIKIkpldHp0IGJlcnVoaWdlbiBTaWUgc2ljaCBtYWwuIEphIGljaCBuZWhtZSBlaW5lbi4iCiJTY2hpZXNzIgpTdGltbXQsIGhhdHRlIGljaCBuYWNoIGRlciBsZXR6dGVuIE1haGx6ZWl0IGhpZXIuIE1pdHRsZXJ3ZWlsZSBpc3QKbWVpbmUgRGFybWZsb3JhIGFsbGVyZGluZ3Mgd2llZGVyIHdvaGxhdWYsIHNvIGRhc3MgaWNoIGRlbmtlLCBpY2gga2FubgplcyBlcm5ldXQgcmlza2llcmVuLiIKIk9CIFNJRSBLQWVBZVNFIFpVTSBIQU1CVVJHRVIgTU9lQ0hURU4hPyIKIk5ldHRlciBWb3JzY2hsYWcuIEphLCBpY2ggZ2xhdWJlIGljaCBuZWhtZSBlaW5lbiBtaXR0ZWxhbHRlbgpQeXJlbmFlZW4tQmVyZ2thZXNlLCBuaWNodCB6dSBkaWNrIGdlc2Nobml0dGVuLCB2b24gZWluZXIgU2VpdGUgbGVpY2h0CmFuZ2Vyb2VzdGV0LiIKT2IgZGllIG5hZWNoc3RlIHZlcmtuYXJ6dGUgTWVsZHVuZyBhdXMgZGVtIExhdXRzcHJlY2hlciBudW4gIkFiZXIKc2ljaGVyIGRvY2giIG9kZXIgIkR1ICpQSUVQKiAiIGxhdXRldCwga2FubiBpY2ggbmljaHQgZXhha3QgaGVyYXVzCmhvZXJlbi4KRGV1dGxpY2ggdmVyc3RlaGUgaWNoIGhpbmdlZ2VuOiAid2FzIGRhenUgPyIuCiJEb2NoIGphLiBJY2ggaGFldHRlIGdlcm5lIGRpZXNlIGdlc2FsemVuZW4gZnJpdHRpZXJ0ZW4KS2FydG9mZmVsc3RhZWJjaGVuLiIKIkFsc28gUG9tbWVzID8iCiJWb24gbWlyIGF1cyBhdWNoIGRpZS4iCiJHcm9zcywgbWl0dGVsLCBrbGVpbiA/IgoiR2VtaXNjaHQuIFVuZCB6d2FyIGdlbmF1IHp1IGVpbmVtIERyaXR0ZWwgZ3Jvc3NlLCBtaXR0bGVyZSB1bmQKa2xlaW5lLiIKIldPTExFTiBTSUUgTUlDSCBFSUdFTlRMSUNIIFZFUkFSU0NIRU4gPz8hPyIgRGllc2UsIHdpZWRlcnVtIHNlaHIKbGF1dCBmb3JtdWxpZXJ0ZSwgRnJhZ2UgdmVyc3RlaGUgaWNoIGtsYXIgdW5kIGRldXRsaWNoLiBTaWUgdmVybGFuZ3QKZWluZSBlaHJsaWNoZSBBbnR3b3J0OgoiRmFsbHMgZGFzIEJlZGluZ3VuZyBpc3QsIGhpZXIgZXR3YXMgenUgZXNzZW4genUga3JpZWdlbjogSmEuIEFsc28sCm1hY2hlbiB3aXIgd2VpdGVyPyIKIkd1dCwgZ3V0LiBFdHdhcyB6dSBkZW4gUG9tbWVzPyIKIkVpbiBzY2hvZW5lcyBFbnRyZWNvdGUsIGJsdXRpZywgdW5kIGVpbiBHbGFzIDE5OTdlciBDaGlhbnRpLiIKIklDSCBLT01NJyBESVIgR0xFSUNIIFJBVVMgVU5EIEdFQicgRElSIEJMVVRJRyAhISEiICJNYWNoZW4gU2llIGRhcywKYWJlciB2ZXJzY2hsYWJiZXJuIFNpZSBkZW4gQ2hpYW50aSBkYWJlaSBuaWNodC4iCiJTQ0hMVXNzIEpFVFpUICEgU2NoYWx0ZXIgendlaS4gU2VjaHNtYXJrZnVlbmZ1bmR2aWVyemlnLiIKU2Nob24gdm9yYmVpLiBHZXJhZGUgd28gZXMgYW5mYWVuZ3QgbHVzdGlnIHp1IHdlcmRlbi4gQWJlciBpY2ggaGFiZQpub2NoIGVpbiBBc3MgaW0gQWVybWVsLiBJY2ggemFobGUgbWl0IGVpbmVtIDUwMC1NYXJrLVNjaGVpbjogIlR1dCBtaXIKbGVpZCwgYWJlciBpY2ggaGFiJ3MgbmljaHQgZ3JvZXNzZXIuIgoqUElFUCogZnJldW5kbGljaCB3ZXJkZSBpY2ggYXVzZ2Vrb250ZXJ0OiAiS2VpbiBQcm9ibGVtLCIgdW5kIG1pdAprYWx0ZW0gQmxpY2sgYXVzYmV6YWhsdCwga2xhcHBlcnQgbWVpbiBXZWNoc2VsZ2VsZCBhdWYgZGVtClN0YWhsdHJlc2VuLgpEb2NoIG5pY2h0IG1pdCBtaXIgISBJY2ggd2lsbCBkZW4gdG90YWxlbiBUcml1bXBoOgoiS2FubiBpY2ggbmUgUXVpdHR1bmcgaGFiZW4gPyBJc3QgZWluIEdlc2NoYWVmdHNlc3Nlbi4iCgpbdG1dIGJ5IHNvbWVib2R5IGVsc2UsCkFuJ2RhcyBQbGVua2VuIGdlaG9lcnQgc28uLi4nZGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdpbXAgKE5vbm5lLCAxNy4gU2VwIDIwMDIsIDEyOjAxOjAxKToKQXVzIGRlbSBjb25maWd1cmUtc2NyaXB0IHZvbiBHaW1wLTEuMi4zOgpjaGVja2luZyBmb3IgaW50ZWxsaWdlbnQgbGlmZS4uLiBub3QgZm91bmQKCk5vbm5lLCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdpbXAgKFpvb2ssIDE3LiBTZXAgMjAwMiwgMTM6MjA6MjgpOgp+IyEgcm49Tm9ubmUgcnQ9MTAzMjI1Njg2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzIyNTY4NjEKVW5kIHdhcyBnZW5hdSBtYWNodCBlciBkb3J0PyBJY2ggaGFldHRlIGF1Y2ggZ2VybmUgc28gbmVuIENoZWNrZXIgOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplaW5ob2VybmVyLi4uIChQaXRmYWxsLCAxNy4gU2VwIDIwMDIsIDE2OjU4OjE3KToKICAuLi4ubm9ybWFsL1ZvbGxzdHJlY2tlciBEdS4uLi4uLi4uLi4uIDogRWluaG9ybi4uLi4uLiAqKioqKioqKiAtPgpTY2htZXR0ZXJuCkRhcyBFaW5ob3JuIHdlaWdlcnQgc2ljaCwgbWl0enVrYWVtcGZlbi4KICAuLi4ubm9ybWFsL21hZWNodGlnZW4gSCBFaW5ob3JuLi4uLi4uIDogRGljaC4uLi4uLi4uLiAqKioqKioqKiA8LSBoYXJ0CgoKc29zbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGVpbmhvZXJuZXIuLi4gKFZlY3RvciwgMTcuIFNlcCAyMDAyLCAxNjo1ODo0Myk6Cn4jISBybj1QaXRmYWxsIHJ0PTEwMzIyNzQ2OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMyMjc0Njk3CmthZW1wZmVyIG1pdCBlaW5ob2VybmVyLi4uLgpuYSB3ZW5pZ3N0ZW5zIHN0aW1tdCBkaWUgcnVicmlrIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgd2FocmVuIElkbGVyIC4uLiAoTWFuZHJhZ29uLCAxOC4gU2VwIDIwMDIsIDA5OjAzOjI0KToKCnVuZ2VzY2huaXR0ZW46CgpFbGJlcmV0ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRlaW4gRnJldW5kIEVsYmVyZXQgdGVpbHQgRGlyIG1pdDogaWRsZSBoZXV0ZSBzdHJlc3MKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEVsYmVyZXQgaW4gUnVicmlrICJhbGxnZW1laW5lcyIuCgpBcmJlaXRlbiBzb2xsc3RlLCBFbGJpIDstKQoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBsaW5ndWlzdGlzY2hlIFF1ZXJlbGVuIChHcmltbWJvcm4sIDE4LiBTZXAgMjAwMiwgMTY6MjE6MzcpOgp+IyEgcm49VmVjdG9yIHJ0PTEwMzIzNTg3NjAgcmc9cHVpegp+IyEgdGlkPTEwMzIzNTc0NDkKRHUgdmVyd2VjaHNlbHN0IGRhcyBtaXQgRWxmZW4sIHVuZCBkaWUgaGFiZW5zIGF1c3NlcmRlbSBtaXQgQmFldW1lbiwgbmljaHQgbWl0ClZvZWdlbG4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VkYW5rZW5zdHVldHplIChSb2xhbmQsIDE4LiBTZXAgMjAwMiwgMjE6MDk6MDgpOgoKQXJhbmthcyBrbGVpbmVyIEVsY2ggTGFzc2Uga29tbXQgYW4sIHN0dXBzdCBEaWNoIGFuLgpEdSBkZW5rc3QgLiBvIDAgKE9iIER1IHdvaGwgd2FzIHZlcmdlc3NlbiBoYXN0ID8/KQpEdSBkcnVlY2tzdCBlaW5lbiBvcmRlbnRsaWNoZW4gSGF1ZmVuIGFiLgoKUm9sYW5kIC4gbyBPIChhaCBqYSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRlLmFsdC5uZXRkaWdlc3QgLSBvZGVyOiBTdGVmZmkgQWJlbCBoYXQgd2llIGltbWVyIFJlY2h0IDstKSAoUm9uZGEsIDE4LiBTZXAgMjAwMiwgMjM6NDA6MjkpOgpGcm9tOiAiU3RlZmZpIEFiZWwiIDxhYmVsQHMubmV0aWMuZGU+ClN1YmplY3Q6IFJlOiBbUHJlc3Nlc2NoYXVdIEhhbmR3ZXJrZXIgc29sbGVuIGlucyBJbnRlcm5ldApOZXdzZ3JvdXBzOiBkZS5hbHQucmVjb3Zlcnkud2ViYXV0aG9yCkRhdGU6IFNhdCwgMTQgU2VwIDIwMDIgMTY6MDU6NDcgKzAyMDAKTWVzc2FnZS1JRDogPGFsdmZzMyQxZGU2MiQxQElELTE0MzAyNS5uZXdzLmRmbmNpcy5kZT4KCiJMYXJzIEthc3BlciIgPG1haWxATGFyc0thc3Blci5kZT4gc2NocmllYjoKCj4gSGFuZHdlcmtlciBzb2xsZW4gaW5zIEludGVybmV0Cj4KPiBbLi4uXQo+Cj4gRGllIHJ1bmQgMTIuMDAwIEF1c3p1YmlsZGVuZGVuIGRlcyBIYW5kd2Vya3MgaW4gT1dMIGJla29tbWVuIGluCj4gZGllc2VuIFRhZ2VuIGViZW5mYWxscyBQb3N0IHZvbiBkZXIgSGFuZHdlcmtza2FtbWVyOiBTaWUgc29sbGVuCj4gaWhyZW4gQ2hlZnMgZWluZSBIb21lcGFnZSBiYXVlbi4gU29sbHRlIGlobmVuIGRhcyBub2V0aWdlIFdpc3Nlbgo+IGZlaGxlbiwga29lbm5lbiBhdWNoIHNpZSBzaWNoIGZ1ZXIgc3BlemllbGxlIFdvcmtzaG9wcyBhbm1lbGRlbgo+IHVuZCBpbiBydW5kIHp3ZWkgU3R1bmRlbiBsZXJuZW4sIHdpZSBtYW4gbWl0IGRlbSBQcm9ncmFtbQo+ICJNaWNyb3NvZnQgRnJvbnRwYWdlIiBJbnRlcm5ldHNlaXRlbiBoZXJzdGVsbHQuIEJpcyB6dW0gMTMuCj4gRGV6ZW1iZXIgc29sbHRlbiBkaWUgRXJnZWJuaXNzZSBhdWYgQ0QgZ2VicmFubnQgd2VyZGVuIG9kZXIKPiBEaXNrZXR0ZSBnZXNwZWljaGVydCBpbiBkZXIgUHJlc3Nlc3RlbGxlIGRlciBIYW5kd2Vya3NrYW1tZXIKPiBhYmdlZ2ViZW4gd2VyZGVuLiBFaW5lIEp1cnkgd2lyZCBkaWUgQmVzdGVuIGRhbm4gaW0gSmFudWFyIHByYWVtaWVyZW4KPiB1bmQgYWxzIEhhdXB0cHJlaXMgd2lua3QgZWluIG5ldWVyIENvbXB1dGVyLgo+Cj4gWy4uLl0KCkRpZSBydW5kIDEuMjAwIFdlYmRlc2lnbmVyIGluIE9XTCBiZWtvbW1lbiBpbiBkaWVzZW4gVGFnZW4gZWJlbmZhbGxzClBvc3Qgdm9uIGRlciBORyBkZS5hbHQucmVjb3Zlcnkud2ViYXV0aG9yOiBTaWUgc29sbGVuIGlocmVuCkVsZWt0cmlrZXJuIGVpbmVuIFNjaGFsdHNjaHJhbmsgYmF1ZW4uIFNvbGx0ZSBpaG5lbiBkYXMgbm9ldGlnZSBXaXNzZW4KZmVobGVuLCBrb2VubmVuIGF1Y2ggc2llIHNpY2ggZnVlciBzcGV6aWVsbGUgV29ya3Nob3BzIGFubWVsZGVuIHVuZCBpbgpydW5kIHp3ZWkgU3R1bmRlbiBsZXJuZW4sIHdpZSBtYW4gbWl0IGRlbSBXZXJremV1ZyAiQm9zY2gKQWtrdXNjaHJhdWJlciIgU2NoYWx0c2NocmFlbmtlIGhlcnN0ZWxsdC4gQmlzIHp1bSAxMy4gRGV6ZW1iZXIgc29sbHRlbgpkaWUgU2NoYWx0c2NocmFlbmtlIGF1Zmdlc3RlbGx0IHVuZCBhbnMgRWxla3Ryb25ldHogZGVyIEhhbmR3ZXJrc2thbW1lcgphbmdlc2NobG9zc2VuIHdlcmRlbi4gRWluZSBKdXJ5IHdpcmQgZGllIFVlYmVybGViZW5kZW4gcHJhZW1pZXJlbiB1bmQKYWxzIEhhdXB0cmVpcyB3aW5rdCBlaW5lIDQtZmFjaC1TdGVja2Rvc2UuCgo+IFF1ZWxsZTogTmV1ZSBXZXN0ZmFlbGlzY2hlLCBOci4gMjE0LAo+ICAgICAgICAgU2Ftc3RhZy9Tb25udGFnLCAxNC4vMTUuIFNlcHRlbWJlciAyMDAyCgpRdWVsbGU6IGRhcncsIE5yLiA8bWlkPgogICAgICAgIFNhbXN0YWcgMTQuIFNlcHRlbWJlciAyMDAyCgpHcnVzcyBTdGVmZmkKCldlbm4gZXMgZWluZW4gUHJlaXMgZnVlciBEZXV0c2NobGFuZHMgZHVlbW1zdGUgSGFuZHdlcmtza2FtbWVyIGdhZWJlLApoYWV0dGUgZGllIGF1cyBPV0wgZ2FueiBndXRlIEthcnRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvIGljaCBzY2hvbiBkYWJlaSBiaW46IGRlLmFsdC5uZXRkaWdlc3QgLSBvZGVyOiBIYXN0ZSBtYWwgbmVuIFRlcHBpY2htZXNzZXI/IChSb25kYSwgMTguIFNlcCAyMDAyLCAyMzo0NDoyOSk6CkRhdGU6IFN1biwgMTUgU2VwIDIwMDIgMjE6NDM6MDkgKzAyMDAKRnJvbTogSnVlcmdlbiBCb2VkZWNrZXIgPGotYm9lZGVja2VyQGdteC5kZT4KTmV3c2dyb3VwczogZGUucmVjLm11c2lrLmhpZmkKU3ViamVjdDogUmU6IHN0ZXJlbyB2ZXJzdGFlcmtlciBzZWxiZXIgYmF1ZW4KCiJGYWJpYW4gS2xlaW4iIDxkZW1pbmVtQGdteC5kZT4gc2Nocm9iOgoKPiBJY2ggYmluIGVpbiB3aXJrbGljaGVyIE5ldWxpbmcgaW4gZGVyIGhpZmkgV2VsdCwgd3VlcmRlIG1pciBhYmVyIHRyb3R6ZGVtCj4gZ2VybmUgc2VsYmVyIGVpbmVuIHN0ZXJlbyB2ZXJzdGFlcmtlciB6dXNhbW1lbiBsb2V0ZW4uIERhcyBXZXJremV1ZyBoYWVhZXRlCmljaAo+IHdvaGwsIGFsbGVzIGFuZGVyZSBhYmVyIGxlaWRlciBuaWNodCA6KC4KPiBLb2VubnRldCBpaHIgbWlyIGFsc28gaXJnbmRldHdhcyBlbXBmZWhsZW4/IFByaXJpdGFldGVuIHdhZXJlbiBtb2VnbGljaHN0Cj4gZ2VyaW5nZXIgUHJlaXMgdW5kIGZ1ZXIgZGVuIEFuZmFuZyBtb2VnbGljaHN0IGxlaWNodGUgVW1zZXR6dW5nLgoKSGFsbG8gTkcsCgppY2ggYmluIGVpbiB3aXJrbGljaGVyIE5ldWxpbmcgaW4gZGVyIE1lZGl6aW4sIHd1ZXJkZSBhYmVyIHRyb3R6ZGVtCmdlcm5lIHNlbGJlciBtZWluZXIgTWFtYSBkZW4gQmxpbmRkYXJtIHJhdXNvcGVyaWVyZW4uIERhcyBNZXNzZXIgaGFiCmljaCBzY2hvbi4gSWNoIGhvZmZlLCBlcyBpc3Qgc2NoYXJmIGdlbnVnLiBBbGxlcyBhbmRlcmUgaXN0IG1pcgpzY2hsZWllcmhhZnQuIEljaCBoYWIgbWVpbmUgTWFtYSByaWNodGljaCBsaWViLiBVbmQgZGFtaXQgaGFwcGljaAptZWluZSBQcmlyaXRhZXRlbiBhdWNoIHNjaG9uIGdlc2V0enQuIFdhcyBtdXNzIGljaCBtYWNoZW4sIGRhbWl0IG1laW5lCk1hbWEgZGFzIHVlYmVybGVidD8gV2llIHNpZWh0IGRlciBCbGluZGRhcm0gdWViZXJoYXVwdCBhdXMuIEthbm4gZXIKbmljaHQgZ3Vja2VuLCBvZGVyIHdhcnVtIGhlaXNzdCBlciBzbz8gTXVzcyBpY2ggdm9ybmUgb2RlciBoaW50ZW4Kc2NobmVpZGVuPyBGcmFnZW4gdWViZXIgRnJhZ2VuLiBSRVRURVQgTUVJTkUgTUFNQSAhISEhITEKCkljaCBob2ZmZSwgZHUgaGFzdCBqZWRlbmZhbHogZGllIExpemVueiB6dW0gTG9ldGVuLiA6LSkKCkdydXNzCkp1ZXJnZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXbyBpY2ggc2Nob24gZGFiZWkgYmluOiBkZS5hbHQubmV0ZGlnZXN0IC0gb2RlcjogSGFzdGUgbWFsIG5lbiBUZXBwaWNobWVzc2VyPyAoR3JpbW1ib3JuLCAxOS4gU2VwIDIwMDIsIDAwOjA3OjM4KToKfiMhIHJuPVJvbmRhIHJ0PTEwMzIzODU0Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMyMzg1NDY5Ck1pY2ggaGF0IGRpZXNlciBoaWVyIHVtZ2V3b3JmZW46CgpGcm9tOiBUaG9yc3RlbiBOaXR6IDx0bkBpdnUtYWMuZGU+Ck5ld3Nncm91cHM6IGRlLnNjaS5waHlzaWsKU3ViamVjdDogUmU6IFBoeXNpa2VybmFtZW4gZ2VzdWNodApEYXRlOiBXZWQsIDI0IEp1bCAyMDAyIDEzOjU0OjE2ICswMjAwCk1lc3NhZ2UtSUQ6IDwzRDNFOTU2OC42MDYwMTAyQGl2dS1hYy5kZT4KClV3ZSBIZXJja3NlbiBzY2hyaWViOgo+IEhpZXIgaGFlbmd0IGFuIGVpbmVtIGRlciBTdHJhc3NlbnNjaGlsZGVyIGVpbmVyIFN0cmFzc2UgaW1tZXIKPiBub2NoIGVpbmUga3VyemUgRXJrbGFlcnVuZyB3b21pdCBzaWNoIGRlciBOYW1lbnNnZWJlciBiZXJ1ZWhtdAo+IGdlbWFjaHQgaGF0Lgo+IEVpZ2VudGxpY2ggc2VociBuZXR0LCBudXIgc2NoZWlkZW4gZGFubiBhbGxlIE5hbWVuc2dlYmVyIGF1cwo+IGRlcmVuIFZlcmRpZW5zdGUgbWFuIG5pY2h0IG1pdCBlaW5lbSBoYW5kbGljaGVuIFNhdHoKPiBiZXNjaHJlaWJlbiBrYW5uLgo+IERlciBTYXR6IHp1bSBCb3NlLUVpbnN0ZWluIEtvbmRlbnNhdCB3dWVyZGUgbWljaAo+IGludGVyZXNzaWVyZW4uIDstKSBLdXJ6LCBhbGxnZW1laW4gdmVyc3RhZW5kbGljaCB1bmQKPiBwaHlzaWthbGlzY2ggcmljaHRpZy4KCkVpbnN0ZWluOiBFcmZpbmRlciwgZXJoaWVsdCBQYXRlbnQgYXVmIGVpbmVuIEt1ZWhsc2NocmFuay4KQm9zZTogU3RhdGlzdGlrZXIsIGtvbm50ZSBUZWlsY2hlbiBuaWNodCB1bnRlcnNjaGVpZGVuLgoKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGRlLmFsdC5uZXRkaWdlc3QgLSBvZGVyOiBTdGVmZmkgQWJlbCBoYXQgd2llIGltbWVyIFJlY2h0IDstKSAoR2xvaW5zb24sIDE5LiBTZXAgMjAwMiwgMDA6NDg6MTMpOgp+IyEgcm49Um9uZGEgcnQ9MTAzMjM4NTIyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzIzODUyMjkKSWNoIGZpbmQgZGllIFJlYWt0aW9uIHZvbiBTdGVmZmkgdWViZXJ0cmllYmVuIHVuZCBkdW1tLiBNZWluZXIgTWVpbnVuZyBuYWNoCnNvbHRsZSBtYW4gYXVmIFN0YW5kYXJkLVdlYnNlaXRlbiBlaCBudXIgaW4gendlaSBTdHVuZGVuIGFuZ2VsZXJudGUgTGV1dGUKbG9zbGFzc2VuLiBEaWUgaGFiZW4gbmFlbWxpY2ggbm9jaCBrZWluZSBBaG51bmcgdm9uIFBIUCwgRmxhc2gsIEphdmFzY3JpcHQsCkFTUCwgSlNQLCBldGMuIHBwLiBCZWkgZGVuZW4ga29tbWVuIGdhbnogbm9ybWFsZSBXZWJzZWl0ZW4gcmF1cy4KV2llLCBiZWkgZGVuZW4ga29tbWVuIGJ1bnRlLCBibGl0emVuZGUsIGtydWVtZWxuZGUgV2Vic2VpdGVuIHJhdXM/IFdvcmFuIG1hZwpkYXMgd29obCBsaWVnZW4/IFdlbm4gdWViZXJoYXVwdCwgZGFubiB3b2hsIGFuIGRlbiBIVE1MLUVkaXRvcmVuLiBVbmQgZGFtaXQKc2luZCB3aXIgYmVpIGRlbiBQcm9ncmFtbWllcmVybiBkaWVzZXIgVG9vbHMuCkFiZXIgZGVyIFVudGVyc2NoaWVkIHp3aXNjaGVuICJMYXlvdXQgdmlhIFBzZXVkby1XWVNJV1lHIiAob2huZSBkZW4gQXp1YmlzCnVlYmVydHJpZWJlbmUgRXJ3YXJ0dW5nZW4gYW4gZGFzIHJlYWxlIEVyZ2VibmlzIHZvcnp1Z2F1a2VsbikgdW5kIFJlZ2VsdW5nZW4KdW5kIFNjaHV0em1hc3NuYWhtZW4gZnVlciBTY2hhbHRzY2hyYWVua2UgZHVlcmZ0ZSBkZXIgIlN0ZWZmaSIgc2ljaGVyIG5pY2h0Cm1hbCBrbGFyIHNlaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGRlLmFsdC5uZXRkaWdlc3QgLSBvZGVyOiBTdGVmZmkgQWJlbCBoYXQgd2llIGltbWVyIFJlY2h0IDstKSAoQ3VjaHVsbGluLCAxOS4gU2VwIDIwMDIsIDAwOjQ5OjAzKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMzIzODkyOTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMyMzg1MjI5CkRlaW5lIE1laW51bmcgYWxzIEVsZWt0cmlrZXIgenVtIFRoZW1hICJodG1sIj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV28gaWNoIHNjaG9uIGRhYmVpIGJpbjogZGUuYWx0Lm5ldGRpZ2VzdCAtIG9kZXI6IEhhc3RlIG1hbCBuZW4gVGVwcGljaG1lc3Nlcj8gKEdsb2luc29uLCAxOS4gU2VwIDIwMDIsIDAwOjUwOjQ5KToKfiMhIHJuPVJvbmRhIHJ0PTEwMzIzODU0Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMyMzg1NDY5CkRpdG8gZWluIEtsdWdzY2hlaXNzZXIuIERhIGZyYWd0IGVpbiBqdW5nZXIgTWFubiBsZXR6dGxpY2ggaW4gdW1zdGFlbmRsaWNoZW4KU2FldHplbiBuYWNoIGVpbmVtIFNjaGFsdGF1ZnJpc3MgZWluZXMgYmlsbGlnZW4gVmVyc3RhZXJrZXJzICh3ZW5uIGVyIGRhcwpXZXJremV1ZyBoYXQsIGhhdCBlciBzaWNoZXIgYXVjaCBzY2hvbiBtYWwgZ2Vsb2V0ZXQgb2RlciBnYXIgZ2VhZXR6dCwgaW0KR2VnZW5zYXR6IHp1bSBCZXNpdHplciBlaW5lcyBTa2FscGVsbHMpIHVuZCBrcmllZ3QgZWluZSAiV293LCBpY2ggYmluIGphIHNvCnRvbGwiLUFudHdvcnQuCk1pdCBlaW5lbSBNYWwgZmFlbGx0IG1pciB3aWVkZXIgZWluLCB3YXJ1bSBpY2ggdW5nZXJuIE5Fd3MgbGVzZS4gTWFuIG11c3Mgc28KbGFuZ2Ugc2VpbmUgIkhlaCwgaWNoIGludGVycHJldGllciBkYXMgamV0enQgbWFsIHNvIGR1bW0gd2llIG1vZWdsaWNoIHVuZCBrYW5uCmVpbmUgQW50d29ydCBzY2hyZWliZW4gZGllIG1pY2ggZ2FueiB0b2xsIGRhc3RlaGVuIGxhZXNzdC4iLUZpbHRlciBhbnBhc3Nlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGRlLmFsdC5uZXRkaWdlc3QgLSBvZGVyOiBTdGVmZmkgQWJlbCBoYXQgd2llIGltbWVyIFJlY2h0IDstKSAoR2xvaW5zb24sIDE5LiBTZXAgMjAwMiwgMDA6NTI6NTkpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzIzODkzNDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMyMzg1MjI5Ck1laW5lIE1laW51bmcgYWxzIFBzZXVkby1XMy1BZG1pbiB6dW0gVGhlbWEgSFRNTC4gSWNoIG11ZXNzdGUgbWljaCBoaWVyIG5pY2h0Cm1pdCBBbHRhc3RlbiBwZXIgSGFuZCBydW1wbGFnZW4sIHdlbm4gZGVyIGVoZW1hbGlnZSBBZG1pbiBmdWVyIGRpZSBwYWFyCmVpbmZhY2hlbiBTZWl0ZW4gbmljaHQgZHJlaXplaG4gdG9sbGUgSWRlZW4gZnVlciBGZWF0dXJlcyB1bmQgZWluZW4Kc3VwZXJ0b2xsZW4gRWRpdG9yIGdlaGFidCBoYWV0dGUuIEFjaCwgdW5kIGF1c3NlcmRlbSBoYWJlIGljaCBzY2hvbiBTZWl0ZW4KZ2VzZWhlbiBkaWUgdm9uIEFmbmFlbmdlcm4gb2huZSBGbGFzaGktQnVudGktRXJmYWhydW5nIGdlYmF1dCB3dXJkZW4gLSBzZWhyCnVlYmVyc2ljaHRsaWNoLiBVZWJlcnNpY2h0bGljaGVyIGFscyBlcyBtZWluZSBWZXJzdWNoZSBtaXQgTG9ldGtvbGJlbiB1bmQKU2NoYWx0cGxhbiBqZSB3YXJlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGRlLmFsdC5uZXRkaWdlc3QgLSBvZGVyOiBTdGVmZmkgQWJlbCBoYXQgd2llIGltbWVyIFJlY2h0IDstKSAoQ3VjaHVsbGluLCAxOS4gU2VwIDIwMDIsIDAwOjU1OjI5KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMzIzODk1Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMyMzg1MjI5ClVudGVyc2NoYWV0emUgbmljaHQsIHdhcyBlaW4gQW5mYWVuZ2VyIGZ1ZXIgIkhUTUwiIGVyemV1Z2VuIGthbm4uIEdpYgppaG0gc2VsZmh0bWwgdW5kIGVpbmUgV29jaGUgWmVpdCAtIG9rYXkuIEFiZXIgbmljaHQgaW4gZWluZW0gMi1UYWdlLQpDcmFzaGt1cnMgdm9uIGlyZ2VuZHdlbS4KCkljaCBsZWl0ZSBkaWUgRXJmYWhydW5nIGF1Y2ggdm9uIG1pciBzZWxic3QgYWIuIE51ciB3ZWlsIGRpZSBTZWl0ZW4KZWluZmFjaCBzaW5kLCBtdWVzc2VuIHNpZSBuaWNodCByaWNodGlnIC0gZC5oLiB2b24gYWx0ZW58YWt0dWVsbGVuCkJyb3dzZXJuIGtvcnJla3QgZGFyc3RlbGxiYXIgLSBzZWluLiAKCiBDdWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBkZS5hbHQubmV0ZGlnZXN0IC0gb2RlcjogU3RlZmZpIEFiZWwgaGF0IHdpZSBpbW1lciBSZWNodCA7LSkgKEdsb2luc29uLCAxOS4gU2VwIDIwMDIsIDAxOjAwOjMwKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDMyMzg5NzI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjM4NTIyOQpEYWhlciB2ZXJ3ZWlzZSBpY2ggamEgZ2VybiBhdWYgZWluZW4gb3JkZW50bGljaGVuIEhUTUwtRWRpdG9yLCBkZXIgZnVlciBpaG4KZWluIHdlbmlnIFdZU0lXWUcgbWFjaGVuIHNvbGwuIE9obmUgZWJlbiBkaWUgRXJ3YXJ0dW5nIGdsZWljaCBhdWYgZGFzIE1hc3MKZWluZXMgbWlyIGJla2FubnRlbiBJbmZvcm1hdGlrLVByb2Zlc3NvciBob2NoenVzY2hyYXViZW4sIFppdGF0OiAiS29lbm5lbiBzaWUKZGVuIFRleHQgdmllbGxlaWNodCBub2NoIHp3ZWkgTWlsbGltZXRlciBob2VoZXIgbWFjaGVuLiIgVW5kIGRhbm4gc2luZCB3aXIKZ2FueiBzY2huZWxsIGJlaSBUb29scyAoZGVyIEFyYmVpdCBkZXIgSW5mb3JtYXRpa2VyIGFsc28pIHVuZCBsZXR6dGxpY2ggZGFyYXVmCnp1cnVlY2tnZWZ1ZWhydCwgZGFzcyBlaW5pZ2UgVG9vbHMgc28gc3R1cGlkZSBVc2VycyBTZXNzaW9uIG5hY2h2b2xsemllaGVuLApkYXNzIGVpbmUgNGsgZ3Jvc3NlIERhdGVpIG1pdCBlaW5lciBlaW56aWdlbiBUYWJlbGxlIGF1ZmdydW5kIHZvbiBmdWVuZnppZwpVc2VyYWVuZGVydW5nZW4gYW4gVGV4dC1BdHRyaWJ1dGVuIChGYXJiZSBpbiBkZW0gRmFsbCkgenUgNjBrIGFud2FlY2hzdC4KTWVpbiBGYXppdDogUHJpbnppcGllbGwgaXN0IGRhcyBuaWNodCBkdW1tLCBBbmZhZW5nZXIgYW4gZWluZmFjaGUgU2VpdGVuIHp1CnNldHplbi4gRGFzIHJpY2h0aWdlIFRvb2wgKGdpYnQgZXMgc2ljaGVyLCB3ZW5uIGF1Y2ggZnVlciBHZWxkKSB1bmQgZWluZQphbmdlbWVzc2VuZSBFcndhcnR1bmdzaGFsdHVuZyBkZXMgTUFjaGVycyB1bmQgQ2hlZnMgdm9yYXVzZ2VzZXR6dC4gU2V0eiBpY2gKenV2aWVsIHZvcmF1cz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGRlLmFsdC5uZXRkaWdlc3QgLSBvZGVyOiBTdGVmZmkgQWJlbCBoYXQgd2llIGltbWVyIFJlY2h0IDstKSAoQ3VjaHVsbGluLCAxOS4gU2VwIDIwMDIsIDAxOjA0OjM1KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMzIzOTAwMzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMyMzg1MjI5CkphLCB2aWVsbGVpY2h0LiBXZWlsIER1IGRlbSBBcm1lbiBrbGFybWFjaGVuIG11c3N0LCB3YXMgaHRtbCBmcnVlaGVyCndhciB1bmQgd2FzIG1hbiBuaWNodCBkYW1pdCBtYWNoZW4gc29sbHRlLiBEYXMgdmVybGFuZ3QgenVtaW5kZXN0CnJ1ZGltZW50YWVyZSBLZW5udG5pcyB2b24gaHRtbC1TdHJ1a3R1ci4gSmVtYW5kLCBkZXIgbm9jaCBuaWNodG1hbApwcm9ncmFtbWllcmVuIGthbm4sIG5pZSB1ZWJlciBXb3JkIHJhdXNrYW0uLi4gd2lyZCBkYXMgbmljaHQgZ2Fuegp0cml2aWFsIGZpbmRlbi4KCk9kZXI/CkN1Y2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGRlLmFsdC5uZXRkaWdlc3QgLSBvZGVyOiBTdGVmZmkgQWJlbCBoYXQgd2llIGltbWVyIFJlY2h0IDstKSAoR2xvaW5zb24sIDE5LiBTZXAgMjAwMiwgMDE6MjU6NTYpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzIzOTAyNzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMyMzg1MjI5CkRlciBzb2xsIHNjaGxpY2h0d2VnIG5pY2h0cyBwcm9ncmFtbWllcmVuIHVuZCBpY2ggd2VyZGUgbWljaCBodWV0ZW4gaWhtCmlyZ2VuZHdhcyB1ZWJlciBTdHJ1a3R1cnNwcmFjaGUgYW5zIE9ociB6dSBuYWdlbG4uIERlciBuaW1tdCBzZWluICJXb3JkIgooSFRNTC1FZGl0b3IpLCBtYWx0IGVpbmUgb2RlciB6d2VpIFNlaXRlbiBoaW4gdW5kIHN0ZWxsdCBkaWUgaW4gZGFzIE5ldHouClNvYmFsZCBkZXIgYW5mYWVuZ3QgYXVjaCBudXIgaW4gUmljaHR1bmcgInByb2dyYW1taWVyZW4gd2lyIG1pdCBIVE1MIiAoKmFyZ2gqKQpvZGVyICJwcm9ncmFtbWllcmVuIHdpciBpbiBIVE1MLURva3VtZW50ZW4iIHp1IGRlbmtlbiBsYW5kZW4gd2lyIGJlaSBTZWl0ZW4KZGllIGtlaW5lciBnZXJuIGFuc2NoYXV0LCBlcyBzZWkgc2llIHNpbmQgdm9uIGVpbmVtIE1lbnNjaGVuIGRlciBzaWNoCnp1c2FtbWVucmVpc3NlbiBrYW5uLgpNYWwgZWhscmljaCAtIHdlbm4gaWNoIGplbWFuZGVuIHNhZ2U6IEJhc3RlbCBtYWwgZWluZSBQYXBpZXJzZWl0ZSwgYXVmIGRlciBkYXMKV2VzZW50bGljaGUgRGVpbmVyIEZpcm1hIGF1ZmdlZnVlaHJ0IGlzdCAuLi4gdW5kIGRhcyBhbSBSZWNobmVyIC0gd2FzIGthbm4gbWFuCmRhIG5vY2ggZmFsc2NoIG1hY2hlbj8gS2xhciwga2VubmUgaWNoIExldXRlLCBkaWUgZGFubiBhbmZhbmdlbiBhbGxlIEZhcmJlbgphdXN6dXNjaG9lcGZlbiwgYWJlciBpY2gga2VubmUgYXVjaCBNZW5zY2hlbiBkaWUgdm9yaGVyIG5vY2ggbmllIHdhcyBtaXQgZGVtCkNvbXB1dGVyIHp1IHR1biBoYXR0ZW4gKHouQi4gbWVpbmUgTXV0dGVyIGRpZSBmdWVyIGRpZSBHcnVuZHNjaHVsZSBVcmt1bmRlbgp1bmQgVW50ZXJyaWNodHNtYXRlcmlhbCBhbSBSZWNobmVyIGdlYmFzdGVsdCBoYXQpLCBkaWUgZGFubiBlaW5mYWNoIG51ciBkYXMKd2FzIHNpZSBhdWYgZGVtIFBhcGllciBtYWNoZW4ga29lbm5lbiBhdWYgZGVtIFJlY2huZXIgbWFjaGVuLiBCaWxkZXIsIFRleHQsCnNhdWJlciBzdHJ1a3R1cmllcnQsIEVuZGUuIFdhcyBrYW5uIG1hbiBkYXJhbiBub2NoIGZhbHNjaCBtYWNoZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBkZS5hbHQubmV0ZGlnZXN0IC0gb2RlcjogU3RlZmZpIEFiZWwgaGF0IHdpZSBpbW1lciBSZWNodCA7LSkgKEdyaW1tYm9ybiwgMTkuIFNlcCAyMDAyLCAwNzowNToyMSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDMyMzkxNTU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjM4NTIyOQpBaCwgRHUgaGFzdCBuaWUgZWluZSByZXByYWVzZW50YXRpdmUgQXVzd2FobCB2b24gV29yZC1Eb2t1bWVudGVuIHZvbgpBbmZhZW5nZXJuIGdlc2VoZW4sIHN0aW1tdHM/IERpZSwgdWViZXJ3YWVsdGlndCB2b24gZGVuIE1vZWdsaWNoa2VpdGVuIHVuZAp2b2xsc3RhZW5kaWcgdW5iZWxlY2t0IHZvbiBhZXN0aGV0aXNjaGVtIEVtcGZpbmRlbiB1bmQgc2NocmlmdHNldHplcmlzY2hlbgpHcnVuZGJlZ3JpZmZlbiBhdXNzY2hvZXBmZW4sIHdhcyBkYXMgUHJvZ3JhbW0gaGVyZ2lidC4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGRlLmFsdC5uZXRkaWdlc3QgLSBvZGVyOiBTdGVmZmkgQWJlbCBoYXQgd2llIGltbWVyIFJlY2h0IDstKSAoQW50aGVhLCAxOS4gU2VwIDIwMDIsIDEwOjI5OjIxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDMyNDExOTIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjM4NTIyOQpJY2ggaGFiIGF1Y2ggbm9jaCBpbSBBcmNoaXYgZGllIGVyc3RlIE1haWwgdm9uIG1laW5lciBNdXR0ZXIsIG1pdCBNUyBPdXRsb29rCmltIFJURi1Gb3JtYXQgZ2VzY2hyaWViZW4uIEplZGVzIFdvcnQgaW4gZWluZXIgYW5kZXJlbiBHcm9lc3NlLCBTY2hyaWZ0YXJ0LApGYXJiZS4uLiB3ZW5uIHNpY2ggZGFzIG5pY2h0IHNvZ2FyIHNjaG9uIGltIFdvcnQgZ2VhZW5kZXJ0IGhhdC4gQWJlcgppbnp3aXNjaGVuIGhhdCBzaWNoIGRhcyBhdWNoIGdlbGVndC4KVW5kIGRhbm4ga2FtIGRlciBaZWl0cHVua3QsIGFscyB2b24gaWhyZW0gUmVrdG9yIChqYWphLCBzaWUgaXN0YXVjaCBMZWhyZXJpbikKZGllIEF1ZmZvcmRlcnVuZyBrYW0sIGFuIGVpbmVtIENvbXB1dGVya3VycyB0ZWlsenVuZWhtZW4sIHVuZCBzaWUgZG9ydCBtaXQKUG93ZXJQb2ludCBlaW5lIHNjaG9lbmUga2xlaW5lIERva3VtZW50YXRpb24gbWFjaGVuIHNvbGx0ZW4uIERlciBMZWl0ZXIgZGVyCkZvcnRiaWxkdW5nIGhhdHRlIHNpY2ggZGFubiBzZWhyIHNjaG5lbGwgZ2V3dW5kZXJ0LCB3YXJ1bSBkZW5uIGRpZSBlcnN0ZW4gNQpTZWl0ZW4gbmljaHQgbWVociBhdWYgZWluZSBEaXNrZXR0ZSBkcmF1ZnBhc3Nlbi4uLiBzY2hsaWVzc2xpY2ggd2FyIGRpZSBEYXRlaQpqYSBudXIgNTQgTUIgZ3Jvc3MuIEtsYXIsIHdlbm4gbWFuIEZhcmJmb3RvcyBtaXQgMTIwMCBkcGkgZWluc2Nhbm50ICh3b2JlaSBkZXIKU2Nhbm5lciB1ZWJlciA2MDBkcGkgamEgZWggbnVyIGludGVycG9saWVydCkgdW5kIGRpZSBkYW5uIGRpcmVrdCBpbiBQUAplaW5iaW5kZXQgdW5kIGF1ZiBkaWUgcGFzc2VuZGUgR3JvZXNzZSB6dXNhbW1lbnNjaGllYnQsIGRhbm4ga3JpZWd0IG1hbgpzY2huZWxsIHNlaHIgZ3Jvc3NlIERhdGVpZW4uCkFiZXIgYXVjaCBkYSB3YXIgZGllIG5hZWNoc3RlIFZlcnNpb24gd2llZGVyIHNvLCBkYXNzIHNpZSBoYW5kaGFiYmFyIHdhciwgd2FzCmFiZXIgbmljaHQgYW4gZGVtIEt1cnNsZWl0ZXIgbGFnLiBNYW4gbXVzcyBudXIgd2lzc2VuLCB3YXMgbWFuIHdlbSB3aWUKZXJrbGFlcnQsIGRhc3MgZGVyL2RpZWplbmlnZSBkYXMgYXVjaCB2ZXJzdGVodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBNdWVsbGhhbGRlbi4uLiAoR2xvaW5zb24sIDE5LiBTZXAgMjAwMiwgMTU6NTQ6MjcpOgp+IyEgcm49Qm9pbmcgcnQ9MTAzMjQ0MzU2OSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMzA5NzkzODYKQm9pbmcsIHdpZSBrYW5uc3QgRHUgbnVyLiBEYXMga29lbm50ZSBlaW4gc28gc2Nob2VuZXIgRmxhbWUtVGhyZWFkIHdlcmRlbi4gV2llCmltbWVyIHNpbmQgZGllIE1laW51bmdlbiBnZXdlY2hzZWx0IHVuZCBtYW4ga2FubiBtaXQgZGVyIEhpbnRlcmdydW5kZXJ3YXJ0dW5nCiJkYXMgZGllIE1hZ2llciBkYSBzY2hvbiB3YXMgbWFjaGVuIHdlcmRlbiIgYXVmIHNpY2ggZWluc2NobGFnZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBNdWVsbGhhbGRlbi4uLiAoQ3JvZnQsIDE5LiBTZXAgMjAwMiwgMTU6NTU6NDEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAzMjQ0MzY2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA5NzkzODYKR2VuYXUuICBEYWJlaSBiZWdhbm4gZXMgZG9jaCBzbyB2aWVsdmVyc3ByZWNoZW5kIHVuZCB1bnRlcmhhbHRzYW0gKnNjaG51ZWZmKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IE11ZWxsaGFsZGVuLi4uIChBbnRoZWEsIDE5LiBTZXAgMjAwMiwgMTU6NTY6MjApOgp+IyEgcm49Q3JvZnQgcnQ9MTAzMjQ0Mzc0MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA5NzkzODYKLi4uIGFiZXIgZGFubiBrb21tdCB3aWVkZXIgZGllc2VyIE11c2NoZWxzY2h1YmJzZXIgdW5kLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogTXVlbGxoYWxkZW4uLi4gKEdsb2luc29uLCAxOS4gU2VwIDIwMDIsIDE1OjU3OjExKToKfiMhIHJuPUFudGhlYSBydD0xMDMyNDQzNzgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDk3OTM4NgpCb2luZyBpc3QgZWluIE11c2NoZWxzY2h1YnNlciB1bmQgU2Vlcm9iYmVua3JhdWxlcj8gRWluIFF1YWxsZW53ZW5kZXI/IEljaApkYWNodGUgVmFuaW9uIGhhdCBkaWVzZSBKb2JzIGhpZXIgZ2VwYWNodGV0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IE11ZWxsaGFsZGVuLi4uIChNdWFkaWIsIDE5LiBTZXAgMjAwMiwgMTU6NTc6MjkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAzMjQ0MzY2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA5NzkzODYKdWkgb2IgYm9pbmcgc2ljaCBzbyBlaW5lbiBkaXJla3RlbiBhbmdyaWZmIGdlZmFsbGVuIGxhZXNzdD8KCnNpbmQgd2lyIGluIGRlciByaWNodGlnZW4gcnVicmlrIGluendpc2NoZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogTXVlbGxoYWxkZW4uLi4gKEFudGhlYSwgMTkuIFNlcCAyMDAyLCAxNTo1ODoyNyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDMyNDQzODMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDk3OTM4NgpCb2luZyB3aWxsIGVzIG51ciBuaWNodCB6dWdlYmVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogTXVlbGxoYWxkZW4uLi4gKEdsb2luc29uLCAxOS4gU2VwIDIwMDIsIDE1OjU4OjQ1KToKfiMhIHJuPU11YWRpYiBydD0xMDMyNDQzODQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDk3OTM4NgpFaWdlbnRsaWNoIGhhYmUgaWNoIGRlbiBsZWlzZW4gRWluZHJ1Y2sgQmFtYmkgenUgc2NoaW5kZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogTXVlbGxoYWxkZW4uLi4gKEJvaW5nLCAxOS4gU2VwIDIwMDIsIDE2OjAwOjEyKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMzI0NDM5MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMwOTc5Mzg2CkF1ZiBkaWVzZSBpbmZhbWUgTHVlZ2UgdW5kIGRlbiBBbmdyaWZmIGRlciBlYmVuc28gYWx0IHdpZSBmYWxzY2ggaXN0Cm11c3MgaWNoIG51biB3aXJrbGljaCBuaWNodCBlaW5nZWhlbiAuLi4gOikKICBCb2luZwpQUzogV2FubiBzY2hyZWlidCBPcmt0b2V0ZXIgZGVuIG5hZWNoc3RlbiBBcnRpa2VsPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6IE11ZWxsaGFsZGVuLi4uIChHbG9pbnNvbiwgMTkuIFNlcCAyMDAyLCAxNjowMjoyMCk6Cn4jISBybj1Cb2luZyBydD0xMDMyNDQ0MDEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMDk3OTM4NgpJY2ggaGFiIHNvd2FzIGFiZXIgYXVjaCBpbW1lciBpbSBTdGlsbGVuIFN0dWViY2hlbiBhbmdlbm9tbWVuLiBFaWdlbnRsaWNoCnNpZWhzdCBEdSBhdXMgd2llIGVpbiBQZWVyLCBlaW5lIE9sZSBvZGVyIGVpbiBXYXR0aGFubmUscyBuaWNodCB3aWUgZWluIGt1cnplcwp1bmQgcHJhZWduYW50ZXMgIkJvaW5nIi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBNdWVsbGhhbGRlbi4uLiAoQW50aGVhLCAxOS4gU2VwIDIwMDIsIDE2OjA1OjE1KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMzI0NDQxNDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMwOTc5Mzg2Ck9jaCwgRHUga2FubnN0ICJCb2luZyIgZG9jaCBhdWNoIGdhbnogbGFuZyBhdXNzcHJlY2hlbiwgc28gd2llCkJvb29vb29vZWVpaWlpaWluZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6IE11ZWxsaGFsZGVuLi4uIChWYW5pb24sIDE5LiBTZXAgMjAwMiwgMTg6MjY6MTIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAzMjQ0MzgzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzA5NzkzODYKViogZGVsZWdpZXJ0IGdlcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUG9ydGFsZSBnZWFlbmRlcnQ/IChBbWFyeWxsaXMsIDIwLiBTZXAgMjAwMiwgMTI6Mjg6MDkpOgp+IyEgcm49S3JlbGxqYSBydD0xMDMyNTE3NDQzIHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTAzMjUxNzQ0MwogRHUgc29sbHRlc3QgInRlbGVwb3J0aWVyZSIgc3RhdHQgInRlbGVwb3J0aWV0ZSIgdGlwcGVuLgoKQW1hKiwgaGlsZnJlaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFuY2hlbiBtdXNzIG1hbiBhYmVyIGF1Y2ggYWxsZXMgZXJrbGFlcmVuIC4uLiA7LSkgKExpYXJhLCAyMC4gU2VwIDIwMDIsIDEzOjAwOjAwKToKW1RydmVzOkJvaW5nIHBmbHVlY2t0IGVpbmVuIEFwZmVsLCBtYWNodCBkaWUgS2VybmUgcmF1cyB1bmQgcGZsYW56dCBkYW1pdAogICAgICAgZWluZW4gbmV1ZW4gQXBmZWxiYXVtLiA8MTI6NTY6NTI+XQpbVHJ2ZXM6SXNpIGRlbmt0OiBtaXQgZWllbm0gYXBmZWwgb2huZSBrZXJuZT8gPDEyOjU3OjE4Pl0KW1RydmVzOkJvaW5nXSBvaCwgaGFiIGljaCB3YXMgZmFsc2NoIGdlbWFjaHQ/IDspIDwxMjo1NzozMD4KW1RydmVzOkJvaW5nIGdyYWVidCBkZW4gQXBmZWwgd2llZGVyIGF1cy4gPDEyOjU3OjM0Pl0KCkxpZWd0IGRhcyBqZXR6dCBkYXJhbiwgZGFzcyBlciBLYWVtcGZlciBpc3Qgb2RlciBtYWNodCBHb3R0LXNlaW4gc2VuaWw/IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hbmNoZW4gbXVzcyBtYW4gYWJlciBhdWNoIGFsbGVzIGVya2xhZXJlbiAuLi4gOy0pIChNYW5kcmFnb24sIDIwLiBTZXAgMjAwMiwgMTM6MDA6NDQpOgp+IyEgcm49TGlhcmEgcnQ9MTAzMjUxOTYwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzI1MTk2MDAKQm9pbmcgaXN0IGRvY2ggRXJ6Z290dC4KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSW0gRnJ1ZWh0YXUgKERlZXBibHVlLCAyMC4gU2VwIDIwMDIsIDE1OjI4OjMwKToKfiMhIHJuPUFyayBydD0xMDMyNTI4NDI3IHJnPXdpdHplCn4jISB0aWQ9MTAzMjQ0NjY5NApzaXR1YXRpb25zYmV6b2dlbiB2ZXJzdGFlbmRsaWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdpbXAgKFdoaXRldGlnZXIsIDIxLiBTZXAgMjAwMiwgMTI6NDA6MTYpOgp+IyEgcm49Wm9vayBydD0xMDMyMjYxNjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjI1Njg2MQpjb25maWd1cmUgemVpbGUgMTIzMTIgYmlzIDEyMzE0Li4uCmVjaG8gJGFjX24gImNoZWNraW5nIGZvciBpbnRlbGxpZ2VudCBsaWZlIiIuLi4gJGFjX2MiIDE+JjYKZWNobyAiY29uZmlndXJlOjEyMzE0OiBjaGVja2luZyBmb3IgaW50ZWxsaWdlbnQgbGlmZSIgPiY1CmVjaG8gIiRhY190IiJub3QgZm91bmQiIDE+JjYKCldULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2FobCAyMDAyIChWYXJsYXJpb24sIDIxLiBTZXAgMjAwMiwgMTM6Mzk6NDUpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzI2MDgyMTIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDMyNjA3Mzg3ClN0ZWFrcz8gV28ga2FubiBtYW4gYmVpdHJldGVuPyA6KQoKVmFybCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNwYW0gKERlZXBibHVlLCAyMS4gU2VwIDIwMDIsIDE4OjM4OjIzKToKR3JhZCBuZSBNYWlsIGJla29tbWVuLCBCZXRyZWZmICJSZWFkIFRoaXMhIVlvdSBXb24ndCBSZWdyZXQgSXQiIHVuZCBkYW5uIGFscwp0ZXh0OgpVa1ZCUkNCVVNFbFRJRVV0VFVGSlRDQkJURXdnVkVoRklGZEJXU0JVVHlCVVNFVWdSVTVFSUVGT1JDQloKVDFVZ0lDQlhUMDRuVkNCQ1JTQlRUMUpTV1M0Z1NTQlFVazlOU1ZORkxra2daRzl1SjNRZ2EyNXZkeUIzCmFHRjBJRzFoWkdVZ2JXVWdjbVZoWkEwS2RHaGxJR1Z1ZEdseVpTQjBhR2x1Wnl3Z1luVjBJRWtuYlNCMgouLi4KU29sbCBpY2ggZGFzIHdpcmtsaWNoIGxlc2VuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNwYW0gKFR3aW5naSwgMjEuIFNlcCAyMDAyLCAxOToxOTowOCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDMyNjI2MzAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjYyNjMwMwpBYmVyIHZvbiB1bnMgZXJ3YXJ0ZXN0ZSBkYXMgamV0enQsIG9kZXIgd2llPwoKTWFnaWVoZXhjaGVuIFR3aW5naQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogV2FobCAyMDAyIChGcmVpYmllciwgMjEuIFNlcCAyMDAyLCAxOToyOTo1NSk6Cn4jISBybj1DYWRyYWNoIHJ0PTEwMzI2Mjc3NTcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDMyNjA3Mzg3ClBhaCEgSWNoIGxhc3MgbWljaCBkb2NoIG5pY2h0IGVpbmZhY2ggc28gYW4gV2FlaGxlciBhdXNzY2h1ZXR0ZW4uIERpZSBkYW5rZW4KZXMgZG9jaCBnYXJuaWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdhaGwgMjAwMiAoRWxiZXJldCwgMjEuIFNlcCAyMDAyLCAxOTozMToyMyk6Cn4jISBybj1GcmVpYmllciBydD0xMDMyNjI5Mzk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjYwNzM4NwpudW4gc3B1Y2tzIGF1cywgd2FzIGlzdCBCaWVyIGZ1ZXIgRGljaD8KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBXYWhsIDIwMDIgKEVsYmVyZXQsIDIxLiBTZXAgMjAwMiwgMTk6MzQ6MTEpOgp+IyEgcm49RnJlaWJpZXIgcnQ9MTAzMjYyOTYwMyByZz1wYXJ0eQp+IyEgdGlkPTEwMzI2MDczODcKbm9lLCBpY2ggdHJpbmtlIGRhcyBndXRlIHNhdWVybGFlbmRlciBCaWVyCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogV2FobCAyMDAyIChEZWVwYmx1ZSwgMjEuIFNlcCAyMDAyLCAxOTozNjozNik6Cn4jISBybj1FbGJlcmV0IHJ0PTEwMzI2Mjk2NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMyNjA3Mzg3CmlzdCBkYXMgc293YXMgd2llIFBhcmlzZXIgQmllcj8KTm9lLCBkYSBpc3QgZGllIFdhcm51bmcgdm9uIEouQi5PLiBzY2hvbiBhdXNyZWljaGVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGxpbmd1aXN0aXNjaGUgUXVlcmVsZW4gKEFwc3UsIDIxLiBTZXAgMjAwMiwgMjE6MTg6MTApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzIzNTg4OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMyMzU3NDQ5ClNjaG1hcnJuISBXZW5uIGRpZSBuaWNodCB2b2VnZWxuIHd1ZXJkZW4sIHd1ZXJkZSBlcyBkaWUgRWxmZW4gZ2FyIG5pY2h0IGdlYmVuIQoKQXBzdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9TTkEtU3RhdGkgNC4xMC4gKEN1Y2h1bGxpbiwgMjIuIFNlcCAyMDAyLCAwMToyNzoyNCk6Cn4jISBybj1NdXBmZWwgcnQ9MTAzMjY0ODQ5NiByZz10cmVmZmVuCn4jISB0aWQ9MTAzMjY0ODQ5NgpEdSB3aXJic3QgbWl0IEJpZXJjaGVuIHVuZCBnbGF1YnN0LCBkYXNzIERBTk4gbm9jaCBhbmRlcmUgTGV1dGUga29tbWVuPyA6KQoKU3RhbW10aXNjaCBNdWVuc3RlciBlcnN0ZXIgRG9ubmVyc3RhZyBpbSBPa3RvYmVyLCAyMDowNz8gCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0ZGlnZXN0Li4uIChNYWFyZywgMjIuIFNlcCAyMDAyLCAwMjozMDozNik6CiBGcm9tOiBKdWVyZ2VuIEZhaG5lbnNjaHJlaWJlciA8ZmFobmVuanVAeWFob28uZGU+CiBOZXdzZ3JvdXBzOiBkZS5jb21tLmluZm9zeXN0ZW1zLnd3dy5hdXRob3JpbmcubWlzYwogU3ViamVjdDogUmU6IFRleHQgZnV0c2NoLi4uCiBEYXRlOiBTYXQsIDE0IFNlcCAyMDAyIDIxOjIwOjE3ICswMjAwCiBNZXNzYWdlLUlEOiA8YW0wMjFvJDFoYjRwJDFASUQtMTM4MzQ2Lm5ld3MuZGZuY2lzLmRlPgoKIFN0ZWZmaSBBYmVsIHdyb3RlOgoKID4gIkp1ZXJnZW4gRmFobmVuc2NocmVpYmVyIiA8ZmFobmVuanVAeWFob28uZGU+IHNjaHJpZWI6CiA+IAogPj4gSWNoIGhhYmUgYmVpIGVpbmVyIG1laW5lciBTZWl0ZW4gZGVuIFF1ZWxsY29kZSB2b24gZWluZW0gQ29va2llCiA+PiAoQmVzdWNoc3phZWhsZXIpIGVudGZlcm50LCB1bmQgamV0enQgc2VoZSBpY2ggbnVyIG5vY2ggZWluZSBsZWVyZQogPj4gU2VpdGUhIERlciBRdWVsbHRleHQgaXN0IGFiZXIgdm9yaGFuZGVuLCBlcyB3aXJkIG1pciBibG9zcyBuaXgKID4+IGFuZ2V6ZWlndC4gT0suIE1vemlsbGEgemVpZ3QgbWlyIHdhcyBhbiwgYWJlciBuZXQgZGVyIEtvbnF1ZXJvci4KID4+IERvcnQgaGFiJyBpY2ggbnVyICduZSB3ZWlzc2UgU2VpdGUhCiA+PiBXZWlzIGplbWFuZCB3b3JhbiBkYXMgbGllZ3Q/CiA+IAogPiBOYSBrbGFyLiBEZXIgRmVobGVyIGxpZWd0IGluIFplaWxlIDQyLgogPiAKID4gR3J1c3MgU3RlZmZpCiBXaWUgc29sbCBpY2ggZGFzIHZlcnN0ZWhlbj8KIEluIFplaWxlIDQyIHN0ZWh0IGJlaSBtaXIgZm9sZ2VuZGVzOgoKICB0ZXh0PSIjMDAwMDAwIiBsaW5rPSIjZmY2NjMzIiB2bGluaz0iIzk5OTkzMyIgYWxpbms9IiNmZjMzMDAiPgoKIFdhcyBtdXNzIGljaCBkYSBhZW5kZXJuPyBJY2ggdmVybXV0ZSBtYWwsIGRhcyBiZWkgdGV4dCBpcmdlbmR3YXMgYW5zdGF0dCBkZXIKIG51bGxlbiBzdGVoZW4gbXVzcywgYWJlciB3YXM/CiBHcnVzcywKCiBKdWVyZ2VuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFdhaGwgMjAwMiAoRGVlcGJsdWUsIDIyLiBTZXAgMjAwMiwgMTY6NTc6MDgpOgp+IyEgcm49Q3JvZnQgcnQ9MTAzMjcwNDAyNyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMzI2MDczODcKTGFlc3N0IHNpY2ggZG9jaCBnYW56IGVpbmZhY2ggcmF1c2ZpbmRlbiwgZWluZmFjaCBkaWUgTWVsZHVuZ2VuIHZvbiBnaW1wcwpjb25maWd1cmUgYXVzd2VydGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE9TTkEtU3RhdGkgNC4xMC4gKExpYXJhLCAyMi4gU2VwIDIwMDIsIDIyOjI0OjI4KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDMyNjUwODQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjY0ODQ5NgpadW0gR2x1ZWNrIGhhc3QgZHUgZGllc2VuIEFydGlrZWwgaW4gU2NobWFycm4gZ2VzY2hyaWViZW4uIER1IHNjaGVpbnN0IGxhbmdzYW0KenUgdmVyZ2Vzc2VuLCBkYXNzIGVzIGF1c3NlciBkaXIgbm9jaCBhbmRlcmUgTGV1dGUgdW5kIGRhbWl0IGF1Y2ggYW5kZXJlCk1laW51bmdlbiBnaWJ0LgpJY2ggZmluZGUgZXMgdHJvdHogZGllc2VyIFJ1YnJpayB2b2VsbGlnIHVucGFzc2VuZCwgJ1NjaGVyemUnIChvZGVyIHdpZSBhdWNoCmltbWVyIG1hbiBkYXMgbmVubmVuIHdpbGwpIHVlYmVyIExldXRlIHp1IG1hY2hlbiwgZGllIHNpY2ggaGllciBuaWNodCBtZWhyCmF1ZmhhbHRlbiAuLi4KWnVtYWwgQmllcmNoZW4gc2Nob24gZWluZSBnYW56ZSBXZWlsZSBuaWNodCBtZWhyIGltIE1HIGFrdGl2IGlzdC4KCkdydWVzc2UsIExpYXJhIC4uLiB2ZXJtaXNzdCBCaWVyY2hlbnMgR2ViaWV0ZSBkZWZpbml0aXYgLi4uIHVuZCBhdWNoIGVpbmVuCkZyZXVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE9TTkEtU3RhdGkgNC4xMC4gKEdyaW1tYm9ybiwgMjIuIFNlcCAyMDAyLCAyMjoyNjo0Nyk6Cn4jISBybj1MaWFyYSBydD0xMDMyNzI2MjY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjY0ODQ5NgpPaGEsIGlzdCBEaXIgZGFzIFdhaGxlcmdlYm5pcyB1ZWJlciBkaWUgTGViZXIgZ2VsYXVmZW4/IEF1cyB3ZWxjaGVyIFJpY2h0dW5nCmRlbm4/CgpVbmQgd2VubiBqZW1hbmQsIGVnYWwgd2llICJuZXR0IiBlciBzZWluIG1hZywgZGllIGJlbGVpZGlndGUgTGViZXJ3dXJzdCBzcGllbHQKdW5kIHNlaW5lIEdlYmlldGUgbG9lc2NodCBkYW5uIGhhZWx0IHNpY2ggbWVpbmUgUGlldGFldCBpbiBub2NoIGVuZ2VyZW4KR3JlbnplbiBhbHMgc29uc3QuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkR1IHdlaXNzdCwgZGFzcyBkdSBOYWNodHNjaGljaHQgaGFzdCwgd2VubiAoQ3JpdHRlciwgMjMuIFNlcCAyMDAyLCAwNjowNzoxOSk6CkNoaWxsendlcmcuLi4uLkp3cyBHYXN0My4uLi4uLi4uLi5KLnMgU25vb3BpZS4uLi4uLi4uSi5zIFphcm5peWEuLi4uLi4uLkp3cwpCcmlsbHp3ZXJnLi4uLi5Kd3MgSWRsZWQuLi4uLi4uLi4uSi56IE1vZWVwLi4uLi4uLi4uLkoucyBXZWx0ZnJpZWRlbi4uLi5Kd3MKWW5nLi4uLi4uLi4uLi4uSi5zIE5vc3Ryb21vLi4uLi4uLmkucyBDbGFyaXNzYS4uLi4uLi5qd3ogR3dlbmlsaS4uLi4uLi4uSi5zCkRheW1vb24uLi4uLi4uLkp3WiBTY3JlYW1lci4uLi4uLi5KLlMgTHlhLi4uLi4uLi4uLi4uSi5UIENyaXR0ZXIuLi4uLi4uLi4uUwpNZWxjaG9yLi4uLi4uLi5KLlMgQWxwaGEuLi4uLi4uLi4uSndTIEhvdXNlaG9sZGVyLi4uLkp3UyBJbWRhLi4uLi4uLi4uLi5KLlMKRGF5bGlnaHQuLi4uLi4uaXdTIExhY3JpLi4uLi4uLi4uLkp3UyBFbGJlcmV0Li4uLi4uLi5Kd1MgTWFhcmcuLi4uLi4uLi4uaS5tCkdyaW1tYm9ybi4uLi4uLkp3bSBSYWduYXJvZWsuLi4uLi5Kd1IgQW1hcnlsbGlzLi4uLi4uSi5SIFZhbmlvbi4uLi4uLi4uLkouVwpLaXJrLi4uLi4uLi4uLi5KLlcKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRHUgd2Vpc3N0LCBkYXNzIGR1IE5hY2h0c2NoaWNodCBoYXN0LCB3ZW5uIChHcmltbWJvcm4sIDIzLiBTZXAgMjAwMiwgMDY6MjM6MDApOgp+IyEgcm49Q3JpdHRlciBydD0xMDMyNzU0MDM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjc1NDAzOQpKYSB1bmQ/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEdSB3ZWlzc3QsIGRhc3MgZHUgTmFjaHRzY2hpY2h0IGhhc3QsIHdlbm4gKFZhbmlvbiwgMjMuIFNlcCAyMDAyLCAwNzozMTo0NCk6Cn4jISBybj1Dcml0dGVyIHJ0PTEwMzI3NTQwMzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMyNzU0MDM5Ci4gKiBPIEdBRUhOIE8gKiAuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgYmVzdGUgZGVzIFdhaGxhYmVuZHMgKENhZHJhY2gsIDIzLiBTZXAgMjAwMiwgMTA6Mzg6MTIpOgpEaWUgYmVzdGUgRnJhZ2UgZGVzIGdlc3RyaWdlbiBBYmVuZHMgYW4gZGVuIEZyYWt0aW9uc3ZvcnNpdHplbmRlbiBkZXIgUERTOgoiWmllaGVuIFNpZSBkaWUgS29uc2VxdWVuemVuIHVuZCB0cmV0ZW4gU2llIHZvbiBJaHJlbSBGcmFrdGlvbnN2b3JzaXR6Cnp1cnVlY2ssIHdlbm4gZGllIFBEUyBhbiBkZXIgNSUgSHVlcmRlIHNjaGVpdGVydCB1bmQga2VpbmUgMyBEaXJla3RtYW5kYXRlCmJla29tbXQ/IgoKQ2FkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhcyBiZXN0ZSBkZXMgV2FobGFiZW5kcyAoQmFtYmksIDIzLiBTZXAgMjAwMiwgMTI6MDE6MzgpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDMyNzcwMjkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjc3MDI5MgpEYXMgd2lya2xpY2ggTHVzdGlnZSBkYWJlaSBpc3QsIGRhc3MgZXMgaW4gZWluaWdlbiBHcmVtaWVuIHVzdXMgaXN0LCBkYXNzIG1hbgptaXQgbWluZGVzdGVucyAyIHVuZCBuaWNodCBlcnN0IG1pdCAzIFBlcnNvbmVuIGVpbmUgRnJha3Rpb24gYmlsZGVuIGthbm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXaW50ZXJidXJnIChIdW1uaSwgMjMuIFNlcCAyMDAyLCAxMzozNjo0NSk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAzMjc3MTk4NSByZz1wYXJ0eQp+IyEgdGlkPTEwMzI2MjU5MjUKYSkgSmEsIGRhcyBoYWJlIGljaCB2ZXJzdWNodC4uLgpiKSBJY2ggd2VocmUgbWljaCBnZWdlbiBkZW4gVm9yd3VyZiwgZGFzcyBtZWluZSBHZXNjaG1hY2tzbmVydmVuIHNjaHVsZCBzaW5kLgpEaWUgc2luZCBvcHRpbWFsIGp1c3RpZXJ0LCB0cmlua2VuIG51ciByaWNodGlnZXMgQmllci4KYykgRGFzIFByb2JsZW0gdGF1Y2h0IGJlaSBtaXIgbmljaHQgbWVociBhdWYsIGRhIG1pdCAxMCBrZyBHZXdpY2h0IGJlaSBtaXIKbGVpZGVyIGF1Y2ggamVkZSBNZW5nZSBUcmlua2ZhZWhpZ2tlaXQgdmVyc2Nod3VuZGVuIHNpbmQuIEljaCBmaW5kJ3MgdHJvdHpkZW0KYmVzc2VyIHNvLi4uCmQpIFZlcnRyYWd0IEV1Y2ghCgpPSywgenVtaW5kZXN0IFB1bmt0IGQpIHN0ZWh0IGluIGRlciByaWNodGlnZW4gUnVicmlrLi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogV2ludGVyYnVyZyAoUm9uZGEsIDIzLiBTZXAgMjAwMiwgMjA6Mjk6NTApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzI4MDU0NTcgcmc9cGFydHkKfiMhIHRpZD0xMDMyNjI1OTI1CkdlbmF1IEdyaW1tYm9ybi4gVW5kIHVtIGRhcyBnYW56ZSBiaXR0ZSBhYnp1cnVuZGVuIG5vY2ggRGlhZXQtUGVwc2ksCmthbG9yaWVuYXJtZSBDb2tlIC0gdW5kIENoZXJyeS1Db2xhLgpXZWluLiBHZW5hdS4gRGVuIGJpdHRlIGF1Y2ggaW0gZ3V0ZW4gU29ydGltZW50LgoKUm9uZGEgKldlaW4vQmllci9Db2xhLXRyaW5rZW5kKgoKRmFsc2NoIGluIGRpZXNlciBSdWJyaWssIHZpZWxsZWljaHQgZG9jaCBrZWluIFNjaG1hcnJuOiBLb2VubnRlbiBkaWUgTGV1dGUsCmRpZSBoaWVyIEFuc3BydWVjaGUgYXVmIHNwZXppZWxsZSBXdWVuc2NoZSBlcmhlYmVuLCBiaXR0ZSBkcmFuIGRlbmtlbiwgZGFzcwpkaWUgT3JnYW5pc2F0b3JlbiBkZXIgUGFydGllcyBkYXMgYSkgZnJlaXdpbGxpZyB1bmQgYikgb2huZSBCZXphaGx1bmcgbWFjaGVuPwpBbHNvOiBNYWNodCB2aWVsbGVpY2h0IG5lbiBQYXJ0eS1CaWVydGhyZWFkIGF1Ziwgc3RpbW10IGRyaW4gYWIsIHdlbGNoZXMgQmllcgpkYSBpbiBkZXIgUmVnaW9uIGhhbGJ3ZWdzIGd1ZW5zdGlnLCBvaG5lIGdyb3NzZW4gQXVmd2FuZCBiZXN0ZWxsdCB3ZXJkZW4ga2Fubi4KVW5kIGZyZXV0IEV1Y2gsIGRhc3MgZGllIFdlbmlnLUFsay1Ucmlua2VyIEV1cmVuIEJpZXJrb25zdW0gYmlzaGVyIGJlaSBqZWRlcgpQYXJ0eSBtaXRiZXphaGx0IGhhYmVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogV2ludGVyYnVyZyAoUm9uZGEsIDIzLiBTZXAgMjAwMiwgMjA6Mzc6MzYpOgp+IyEgcm49Um9uZGEgcnQ9MTAzMjgwNTc5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzI2MjU5MjUKTWFsIG5lbiBTZWxic3RyZXBseSwgYWJlciBkZXIgcGFzc3RlIGdyYWQgc28gc2Nob2VuIDstKQoKWFhYIHRlaWx0IERpciBtaXQ6IGRhIGRhcyBCaWVyIGVoIGJlc3RlbGx0IHdpcmQgc29sbHRlIGVzIGtlaW4gUHJvYmxlbQpYWFggdGVpbHQgRGlyIG1pdDogc2VpbiwgMiBvZGVyIDMgU29ydGVuIHp1IGJlc3RlbGxlbi4gV2VubiBkYXMgZWluZSBuZWQKWFhYIHRlaWx0IERpciBtaXQ6IHJlaWNodCB1bmQgbmVuIGFuZGVyZXMgenV2aWVsIGlzdCBpc3NlcyBkYW5uIGhhbHQgcGVjaApbMjA6MzNdCnRtIFhYWCBXaWUgZ2VzYWd0OiBtYWNodCBuZW4gVGhyZWFkIGF1Zi4uLiA7LSkKRHUgdGVpbHN0IFhYWCBtaXQ6IFdpZSBnZXNhZ3Q6IG1hY2h0IG5lbiBUaHJlYWQgYXVmLi4uIDstKQpYWFggaXN0IGdlcmFkZSBuaWNodCBkYTogRnVlciBXaXJ0c2NoYWZ0c3dhY2hzdHVtIHNvcmdlbgpYWFggdGVpbHQgRGlyIG1pdDogZXJzdG1hbCBtdXNzIG1hbiB3aXNzZW4sIHdhcyBkZXIgZGVhbGVyIHVtIGRpZSBFY2tlClhYWCB0ZWlsdCBEaXIgbWl0OiBhbmJpZXRldCBbMjA6MzRdCgpSb25kYSAqdGlwcHQgYmVpIFhYWCBhdWYgZWluZW4gQW5nZWhvZXJpZ2VuIGRlciBiaWVyZXJhcmJlaXRlbmRlbiBJbmR1c3RyaWUgLQpvZGVyIGRlciBiaWVydmVybmljaHRlbmRlbiBNdWRkZXIgLSBXaXJ0c2NoYWZ0c3dhY2hzdHVtIGR1cmNoIEJpZXJrb25zdW0/KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFdpbnRlcmJ1cmcgKFJvbmRhLCAyMy4gU2VwIDIwMDIsIDIwOjU2OjIzKToKfiMhIHJuPUxlaWJuaXogcnQ9MTAzMjgwNzIwNyByZz1wYXJ0eQp+IyEgdGlkPTEwMzI2MjU5MjUKSXJnZW5kd2llIHNlaWQgSWhyIGFsbGUgaW4gZGVyIGZsYXNjaGVuIFJ1YnJpay4uLiBBdXNzZXJkZW0gc29sbHRlbiB3aXIgbm9jaAphdXNkaXNrdXRpZXJlbiwgd2VsY2hlIEtla3Nzb3J0ZW4gZ2V3dWVuc2NodCB3ZXJkZW4uIExlaWJuaXogdW5kIGVpbgp1bnNwZXppZmllcnRlciBLZWtzIGtvZW5udGVuIGphIGRhIHNlaW4sIGFiZXIgd2llIHNpZWh0cyBzb25zdCBhdXM/IEthbm4gamEKZWNodCBuaWNodCBzZWluLCBkYXNzIEZyZWl0YWcgYWJlbmQgZWluZmFjaCBrZWluZSBQcmluemVucm9sbGVuLUtla3NlIGRhIHNpbmQhCgpSb25kYSAqaHVuZ3JpZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBXaW50ZXJidXJnIChSb2NodXMsIDIzLiBTZXAgMjAwMiwgMjE6NDA6MTMpOgp+IyEgcm49Um9uZGEgcnQ9MTAzMjgwNzM4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzI2MjU5MjUKV2lyZCBaZWl0LCBkYXNzIGljaCB3aWVkZXIgYmFja2UgOi0pCk1hbCBzY2hhdWVuIHdpZXZpZWwgQWxrb2hvbCBpbiBlaW5lbiBLZWtzIHBhc3N0Li4uCgogIFJvY2h1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IFdpbnRlcmJ1cmcgKFJvbmRhLCAyMy4gU2VwIDIwMDIsIDIxOjQyOjE2KToKfiMhIHJuPVJvY2h1cyBydD0xMDMyODEwMDEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjYyNTkyNQpIbS4gQWxzbyBpY2ggaGFiIHNjaG9uIHZlcmZsaXh0IHZpZWwgQ29ja3RhaWwgIlN3aW1taW5ncG9vbCIgaW4gZGVuIGVpbmVuIEtla3MKdW5kIEtpcnNjaHJ1bSBpbiBkZW4gYW5kZXJlbiBLZWtzIGZsaWVzc2VuIHNlaGVuLi4uIE51ciB3YXMgYmV6d2Vja3N0IER1CmRhbWl0LCBSb2NodXM/IDstKQoKU2NuciwKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBXaW50ZXJidXJnIChXaWxsb3csIDIzLiBTZXAgMjAwMiwgMjE6NDM6MDYpOgp+IyEgcm49Um9uZGEgcnQ9MTAzMjgxMDEzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzI2MjU5MjUKT2hhLCBSb2NodXMsIGljaCBtdXNzIGRhIGdlcmFkZSBhbiBEZWluZSBSdW1rdWdlbG4gaW4gV2lCdSBkZW5rZW4gLSBkaWUgd2FyZW4KendhciBzYXUtbGVja2VyLCBhYmVyIGhhbHQgbmNpaHQgb2huZSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IFdpbnRlcmJ1cmcgKExlaWJuaXosIDIzLiBTZXAgMjAwMiwgMjE6NDk6NDYpOgp+IyEgcm49V2lsbG93IHJ0PTEwMzI4MTAxODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMyNjI1OTI1CmFoaGggbGVja2VyIHJ1bWt1Z2Vsbi4uLgoKbGVpYmkgc2NobWF0enQgc2Nob24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBXaW50ZXJidXJnIChSb2NodXMsIDIzLiBTZXAgMjAwMiwgMjE6NTE6MDgpOgp+IyEgcm49TGVpYm5peiBydD0xMDMyODEwNTg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjYyNTkyNQpPaywgRHUgd29sbHRlc3QgZXMgbmljaHQgYW5kZXJzIDopCgogIFJvY2h1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IFdpbnRlcmJ1cmcgKFBpdGZhbGwsIDIzLiBTZXAgMjAwMiwgMjI6NDM6MjUpOgp+IyEgcm49Um9jaHVzIHJ0PTEwMzI4MTA2Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDMyNjI1OTI1Cm5laG10IHJvY2h1cyBkZW4gcnVtIHdlZyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBXaW50ZXJidXJnIChEYXJrd2luZywgMjMuIFNlcCAyMDAyLCAyMjo1Mzo1NSk6Cn4jISBybj1QaXRmYWxsIHJ0PTEwMzI4MTM4MDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMyNjI1OTI1Cm5pY2h0IGRlbiBSdW0gd2VnbmVobWVuLi4uIGxpZWJlciBhdWNoIGRpZSBhbmRlcmVuIFp1dGF0ZW4gZ2ViZW4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogV2ludGVyYnVyZyAoRGVlcGJsdWUsIDI0LiBTZXAgMjAwMiwgMDg6NDg6MTYpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDMyODEzODA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjYyNTkyNQpzY2hvbiBwYXNzaWVydCA8SGljayE+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogV2ludGVyYnVyZyAoRWxiZXJldCwgMjQuIFNlcCAyMDAyLCAwOToyMjo0MCk6Cn4jISBybj1XaWxsb3cgcnQ9MTAzMjgxMDE4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzI2MjU5MjUKb2hoaCBqYWFhLCBkaWUgd2FyZW4gc293YXMgdm9uIGxlY2tlciA6KQpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW50ZXJzY2hpZWQgKEJhbWJpLCAyNC4gU2VwIDIwMDIsIDExOjI0OjM3KToKfiMhIHJuPUFudGhlYSBydD0xMDMyODU4NDU5IHJnPXdpdHplCn4jISB0aWQ9MTAzMjg1ODQ1OQpMYXNzIGRvY2ggYml0dGUgZGllc2VzIFp3ZXJnZW5zdGF0ZW1lbnQgYW0gU2NobHVzcyB3ZWcuIEljaCBmcmFnIG1pY2gKamVkZXNtYWwsIHdhcyBkYXMgbWl0IGRlbSBXaXR6IHp1IHR1biBoYXQsIGJpcyBtaXIgYXVmZmFlbGx0LCBkYXNzIGljaCBkYXMKc2Nob25tYWwgd29hbmRlcnMgZ2VsZXNlbiBoYWJlIHVuZCBlcyB2b20gZ2xlaWNoZW4gQXV0b3Iga29tbXQuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVudGVyc2NoaWVkIChBbnRoZWEsIDI0LiBTZXAgMjAwMiwgMTE6Mzc6MjQpOgp+IyEgcm49QmFtYmkgcnQ9MTAzMjg1OTQ3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzI4NTg0NTkKRGFiZWkgaGFiZSBpY2ggZXMgZG9jaCBnYW56IGtsYXIgbWl0IC0tIGFiZ2VzZXR6dCB1bmQgZGFkdXJjaCBhbHMgU2lnbmF0dXIKZ2VrZW5uemVpY2huZXQuIEFiZXIgd2VubiBEdSBtZWluc3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdpbnRlcmJ1cmcgKEJhbWJpLCAyNC4gU2VwIDIwMDIsIDExOjU0OjE0KToKfiMhIHJuPUFudGhlYSBydD0xMDMyODYxMjEzIHJnPXBhcnR5Cn4jISB0aWQ9MTAzMjc5OTY0OApHZWxsPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2ludGVyYnVyZyAoQW50aGVhLCAyNC4gU2VwIDIwMDIsIDExOjU2OjA0KToKfiMhIG9uPUFudGhlYSBvdD0xMDMyODYxMjEzIG9nPXBhcnR5Cn4jISBybj1CYW1iaSBydD0xMDMyODYxMDIyIHJnPXBhcnR5Cn4jISB0aWQ9MTAzMjc5OTY0OAo+MjkuMDktIDEuMTIuIFdvY2hlbmVuZGUgd2FlciBmcmVpIHVuZCBpY2ggaGFiIGRhIGJpc2hlciBzb25zdCBuaWNodHMgYW5kZXJzCj52b3IuCgpEdSBoYXN0IGFiZXIgbGFuZ2UgV29jaGVuZW5kZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBXYWhsIDIwMDIgKEh1bW5pLCAyNC4gU2VwIDIwMDIsIDE3OjI0OjExKToKfiMhIG9uPUh1bW5pIG90PTEwMzI4ODEwNDMgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPURlZXBibHVlIHJ0PTEwMzI4ODA5ODEgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDMyNjA3Mzg3CkhlLCBpY2ggYWxzIGFic29sdXRlciBOaWNodC1Cb2Vyc2lhbmVyIGVyaW5uZXJlIGRhIG51ciBhbiBkaWUKVGl0YW5pYy1Cb2Vyc2Vuc2ltdWxhdGlvbjogRmVuc3RlciBhdWYsIEdlbGQgcmF1c3dlcmZlbiwgZmVydGlnLi4uCgpIdW1uaSwgdmVybGVndCBqYSBzY2hvbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFBvcnRhbGUgZ2VhZW5kZXJ0PyAoQ3JvZnQsIDI0LiBTZXAgMjAwMiwgMjM6MDg6NDgpOgp+IyEgcm49U3RpbmcgcnQ9MTAzMjkwMTUxOSByZz1wYXJ0eQp+IyEgdGlkPTEwMzI1MTc0NDMKUG9ydGFsLVBhcnR5PyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBQb3J0YWxlIGdlYWVuZGVydD8gKFBpdGZhbGwsIDI0LiBTZXAgMjAwMiwgMjM6MTA6MDcpOgp+IyEgcm49Q3JvZnQgcnQ9MTAzMjkwMTcyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzI1MTc0NDMKc2VoZXIgcG9ydGFsIG9kZXIgemF1YmkgcG9ydGFsPwppY2ggZmluZGUgZGFzIG11c3MgYW4gZGllc2VyIHN0ZWxsZSBlaW5mYWNoIG1hbCBnZWtsYWVydCB3ZXJkZW4uCgpzY25yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERhcyBiZXN0ZSBkZXMgV2FobGFiZW5kcyAoWm9vaywgMjUuIFNlcCAyMDAyLCAwMjoyOTozMCk6Cn4jISBybj1CYW1iaSBydD0xMDMyNzc1Mjk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjc3MDI5MgpFcyBzb2xsIHNvZ2FyIFBhcmxhbWVudGUgZ2ViZW4sIGRhIHJlaWNoZW4gbm9jaCBuaWNodCBlaW5tYWwgZHJlaSBEaXJla3QtCm1hbmRhdGUgZnVlciBuZSBGcmFrdGlvbi4uLgoKWm9vayBmYXNlbHQgd2FzIHZvbiBHcnVwcGUgdW5kIEZyYWt0aW9uIHVuZCBkYXNzIGVzIGRhIG5lbiBVbnRlcnNjaGllZCBnaWJ0LApkZXIgYWJlciBCYW1iaSBzaWNoZXIgYmVrYW5udCBpc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYSBzdXBlci4uLi5hbHMgaGFldHRlIGljaCBuaWNoIHNjaG9uIGdlbnVnIChNb3Jnb3RoLCAyNS4gU2VwIDIwMDIsIDExOjE3OjAwKToKQXJiZWl0ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmEgc3VwZXIuLi4uYWxzIGhhZXR0ZSBpY2ggbmljaCBzY2hvbiBnZW51ZyAoRGVlcGJsdWUsIDI1LiBTZXAgMjAwMiwgMTE6MTc6NDApOgp+IyEgcm49TW9yZ290aCBydD0xMDMyOTQ1NDIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjk0NTQyMApOYSwgd2VubiBEdSBhdWYgQXJiZWl0IHdhcnRlc3QgYnJhdWNoc3QgRGljaCBuaWNodCB6dSBiZXNjaHdlcmVuIHdlbm4gd2VsY2hlCmtvbW10LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOYSBzdXBlci4uLi5hbHMgaGFldHRlIGljaCBuaWNoIHNjaG9uIGdlbnVnIChaYXJuaXlhLCAyNS4gU2VwIDIwMDIsIDEzOjAxOjUzKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwMzI5NDU0NjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMyOTQ1NDIwCk0qIGVyd2FydGV0IGFsbGUgd2VpYmxpY2ggdW5kdmVyaGVpcmF0ZXQuLi4uIG9kZXIgd2FzIGRhcyBEYW5jZXIgZGFtYWxzPyA6LSkKCk1hcmMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhcnR5dm9yYmVyZWl0dW5nZW4uLi4gKEJhbWJpLCAyNS4gU2VwIDIwMDIsIDEzOjA5OjA0KToKW0thcmxzcnVoZTpCYW1iaV0ga2FubiB3ZXIgdm9uIGV1Y2ggYmVzc2VyIG1hbGVuLCBhbHMgbnVyCltLYXJsc3J1aGU6QmFtYmldIHN0cmljaG1hZW5uY2hlbnF1YWxpdGFldD8gSWNoIHN1Y2ggd2VuLCBkZXIgZGFzCltLYXJsc3J1aGU6QmFtYmldIHQtc2hpcnQtbW90aXYgemVpY2huZXQKVmluY2VudCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3RhbW10aXNjaCBpbiBLYXJsc3J1aGUgKE5pYmVsLCAyNS4gU2VwIDIwMDIsIDE1OjAxOjMwKToKfiMhIHJuPUJvaW5nIHJ0PTEwMzI5NDE5MDEgcmc9dHJlZmZlbgp+IyEgdGlkPTEwMzI0NjU3MzIKMSAxLzIgWmVpbGVuIEVya2xhZXJ1bmcgZGF6dSBzY2hyZWliZW4gaXN0IGF1Y2ggdmllbCB3ZW5pZ2VyIGF1ZndlbmRpZyA7LSkKICAtIE5pYmVsCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFN0YW1tdGlzY2ggaW4gS2FybHNydWhlIChCb2luZywgMjUuIFNlcCAyMDAyLCAxNToxMDozMik6Cn4jISBybj1OaWJlbCBydD0xMDMyOTU4ODkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjQ2NTczMgpJY2ggaGFiIG1pciBzY2hvbiBiZWltIFNjaHJlaWJlbiB1ZWJlcmxlZ3QsIG9iIGljaCBkYXMgbm9jaCB6dXNhZXR6bGljaAp6dSBkZW4gMSAxLzIgWmVpbGVuIGVyd2FlaG5lbiBzb2xsdGUgLi4uIDspCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBXaW50ZXJidXJnIChDYWtleSwgMjUuIFNlcCAyMDAyLCAyMjoxNTowNCk6Cn4jISBybj1Hbm9tZSBydD0xMDMyOTg0MzQxIHJnPXBhcnR5Cn4jISB0aWQ9MTAzMjc5OTY0OAoyNTAwIGtjYWw/IFdvdywgZGFzIGlzIG5lIE1lbmdlIEJpZXIsIHNvdmllbCB0cmlua2UgbmljaHRtYWwgaWNoIChtZWlzdGVucwpqZWRlbmZhbGxzKS4KCkNha2V5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogV2ludGVyYnVyZyAoSHVtbmksIDI1LiBTZXAgMjAwMiwgMjI6MTY6MTgpOgp+IyEgcm49Q2FrZXkgcnQ9MTAzMjk4NDkwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzI3OTk2NDgKSmEsIGRhcyB3aXJkIGhhcnQgYW4gZWluZW0gQWJlbmQuLi4gV293Li4uLgoKRGFzIGlzdCBpbiBldHdhIGRhcywgd2FzIGljaCBhbSBUYWcgdmVyYnJhdWNoZSwgd2VubiBpY2ggZWluIHdlbmlnIFNwb3J0CnRyZWliZSwgbmFjaCBtZWluZW4gU2tyaXB0ZW4uLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBXaW50ZXJidXJnIChHbm9tZSwgMjUuIFNlcCAyMDAyLCAyMjoxOTowNSk6Cn4jISBybj1IdW1uaSBydD0xMDMyOTg0OTc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjc5OTY0OAphcmdsLgppY2ggbWVpbnRlIEZFU1RFIG5haHJ1bmcuIGFsa29ob2wgaGF0dGUgaWNoIG5pY2h0IG1pdCBkYXp1Z2VyZWNobmV0LiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTVEFUSSBEQSwgIChWYXJsYXJpb24sIDI1LiBTZXAgMjAwMiwgMjM6MDg6MzMpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMzI5ODgwNjYgcmc9dHJlZmZlbgp+IyEgdGlkPTEwMzI5ODc0ODQKU2NoZWludCBkaWUgb2VmdGVyIHp1IHR1bi4gU2VpbmUgTlBDcyByZWRlbiBhdWNoIG1laXN0ZW5zIHNvLi4uCgpWYXJsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU1RBVEkgREEsICAoTXVwZmVsLCAyNS4gU2VwIDIwMDIsIDIzOjA5OjExKToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMDMyOTg4MTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjk4NzQ4NApTZWluZSBOUENzPyBBcmsgaGF0IFRPRCBnZXNjaHJpZWJlbj8gV2FlciBtaXIgbmV1Li4uCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU1RBVEkgREEsICAoVmFybGFyaW9uLCAyNS4gU2VwIDIwMDIsIDIzOjExOjI3KToKfiMhIHJuPU11cGZlbCBydD0xMDMyOTg4MTUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjk4NzQ4NApEYXMgaGFiIGljaCBuaWNodCBnZXNhZ3QgOikKClZhcmwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcnptYWdpZXIgLi4uIChMaWFyYSwgMjUuIFNlcCAyMDAyLCAyMzoyNToyOSk6CkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiB0aWxseSBkdSBtdXNzdCBhdWYgYXJrIGF1ZnBhc3NlbiBzb25zdCBtYWNodApEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogZGVyIGJsb2Vkc2lubiA6LSkKRGVpbiBGcmV1bmQgVGlsbHkgdGVpbHQgRGlyIG1pdDogRGFzIGdsYXViIGljaCBuaWNodCwgc29uc3QgZ2lidHMgd2FzIGF1ZiBkaWUKRGVpbiBGcmV1bmQgVGlsbHkgdGVpbHQgRGlyIG1pdDogRmluZ2VyIG5hZW1saWNoIDspCkFyayBydWZ0OiBSdWhhZWggPEhpZ2dzIT4gSXNjaCBiaW4gZGVyIEhhZW1taW5nd2VoIGRlcyBNb2lua3JhdXRucy4KCk5lZSwgaXMga2xhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFsIHdpZWRlciBOZXRkaWdlc3QgKE1hYXJnLCAyNi4gU2VwIDIwMDIsIDA0OjEyOjE1KToKRnJvbTogSGF1a2UgUmVkZG1hbm4gPGZjM2E1MDFAdW5pLWhhbWJ1cmcuZGU+Ck5ld3Nncm91cHM6IGRlLnJlYy5zZi5taXNjClN1YmplY3Q6IFtUVi1IdW1vcl0gTmFjaCBIYXVzZSB0ZWxlZm9uaWVyZW4hCkRhdGU6IDI0IFNlcCAyMDAyIDA5OjIyOjA4IEdNVApNZXNzYWdlLUlEOiA8YW1wYXMwJGhxMSQxQHJ6c3VuMDMucnJ6LnVuaS1oYW1idXJnLmRlPgoKRGllcyBpc3QgZGVyIGF1dG9tYXRpc2NoZSBBbnJ1ZmJlYW50d29ydGVyIHZvbiBTdGFyZmxlZXQsCkFidGVpbHVuZyBGaW5hbnplbiwgVW50ZXJhYnRlaWx1bmcgRW50ZXJwcmlzZS4KV2VubiBTaWUgUmVkc2hpcnQtV2l0d2VucmVudGUgYmVhbnRyYWdlbiB3b2xsZW4sIGRydWVja2VuClNpZSBUYXN0ZSAxLgpXZW5uIFNpZSBBbGltZW50ZSB2b24gQ2FwdGFpbiBLaXJrIGVpbnRyZWliZW4gd29sbGVuLApkcnVlY2tlbiBTaWUgVGFzdGUgMi4KQmVpIGtsaW5nb25lbmJlZGluZ3RlbiBLb2xsYXRlcmFsc2NoYWVkZW4gYWxsZXIgQXJ0CmRydWVja2VuIFNpZSBUYXN0ZSAzLgoKRGllcyBpc3QgZGVyIGF1dG9tYXRpc2NoZSBBbnJ1ZmJlYW50d29ydGVyIGRlciAKVm95YWdlci4gU2llIHNpbmQgdmVyYnVuZGVuIG1pdCBkZXIgU2VrdGlvbiAiVW50ZXJoYWx0dW5nIi4KV2VubiBTaWUgZGFzIDIzLiBMZXZlbCB2b24gIkNhcHRhaW4gUHJvdG9uIiBkb3dubG9hZGVuCndvbGxlbiwgZHJ1ZWNrZW4gU2llIFRhc3RlIDEuCldlbm4gU2llIGRpZSB1bnZlcmdsZWljaGxpY2hlbiBLb2NocmV6ZXB0ZSB2b24gTmVlbGl4CmhhYmVuIHdvbGxlbiwgZHJ1ZWNrZW4gU2llIFRhc3RlIDIgdW5kIHJlcGxpemllcmVuIFNpZSBlaW4KQWxrYS1TZWx0emVyLgpXZW5uIFNpZSBkaWUgQXJpZW4gZGVuIGFic29sdXQgc2Vuc2F0aW9uZWxsZW4gSG9sb2RvYwpob2VyZW4gd29sbGVuLCBkcnVlY2tlbiBTaWUgVGFzdGUgMyB1bmQgcmVwbGl6aWVyZW4gU2llCmVpbiBPaHJvcGF4LgpXZW5uIFNpZSBkaWUgTkVLS0lEIEdJRlMgdm9uIDcgb2YgOSBzZWhlbiB3b2xsZW4sIGRydWVja2VuClNpZSBkaWUgVGFzdGVuIDAxOTAgdW5kIHdhcnRlbiwgYmlzIHNpY2ggZGVyIERpYWxlcgppbnN0YWxsaWVydCBoYXQuCgpEaWVzIGlzdCBkZXIgYXV0b21hdGlzY2hlIEFucnVmYmVhbnR3b3J0ZXIgdm9uIEJhYnlsb24gNS4KTWVuc2NoZW4gZHJ1ZWNrZW4gYml0dGUgZGllIFRhc3RlIDEuCkNlbnRhdXJpIGRydWVja2VuIDIsMyw1IHVuZCA3IGdsZWljaHplaXRpZy4KUGFjbWFyYW4gZnJlc3NlbiBiaXR0ZSBkYXMgVGVsZWZvbiBhdWYsIHdpciBicmF1Y2hlbiBlaAplaW4gbmV1ZXMuClZvcmxvbmVuOiBKYS4KWnVyIFNlbGJzdHplcnN0b2VydW5nIHVzZXI6am1zIHVuZCBQYXNzd29ydCBlaW5nZWJlbi4KCkRpZXMgaXN0IGRlciBhdXRvbWF0aXNjaGUgQW5ydWZiZWFudHdvcnRlciBkZXIgTEVYWC4KV2VubiBTaWUgZWluZW4gYmVsaWViaWdlbiBQbGFuZXRlbiBob2NoamFnZW4gd29sbGVuLApkcnVlY2tlbiBTaWUgVGFzdGUgMS4KV2VubiBTaWUgZGllIGdhbnplIE5hY2h0IGJlaSBaZXYgWmV2IHNlaW4gd29sbGVuLApkcnVlY2tlbiBTaWUgVGFzdGUgMi4KV2VubiBTaWUgbnVyIEdhc3Qgc2luZCwgZHJ1ZWNrZW4gU2llIFRhc3RlIDMgdW5kCndhcnRlbiBhdWYgZGVuIFRvZC4KCkRpZXMgaXN0IGRlciBhdXRvbWF0aXNjaGUgQW5ydWZiZWFudHdvcnRlciB2b20gU3RhcmdhdGUtCktvbW1hbmRvLiBXZXIgenVtIEhlbmtlciBoYXQgSWhuZW4gZGllIFRlbGVmb25udW1tZXIKZ2VnZWJlbj8gRGllIGlzdCBuYWVtbGljaCBnZWhlaW0hIEJpdHRlIGJsZWliZW4gU2llCmluZm8KaGFiZW4uCgpEaWVzIGlzdCBkZXIgYXV0b21hdGlzY2hlIEFucnVmYmVhbnR3b3J0ZXIgZGVyIE1veWEuCldpciBzaW5kIG1hbCB3aWVkZXIgbWl0IHVucyBzZWxic3QgYmVzY2hhZWZ0aWd0LgpEcnVlY2tlbiBTaWUgaXJnZW5kd2FzIHVuZCB2ZXJmcmVsbGVuIFNpZSBzaWNoIQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmQgbm9jaG1hbCBOZXRkaWdlc3QuLi4gKE1hYXJnLCAyNi4gU2VwIDIwMDIsIDA0OjE3OjAwKToKIEZyb206IG1hcmNlbEBkdW5rZWxiZXJnLm5ldCAoTWFyY2VsIER1bmtlbGJlcmcpCiBTdWJqZWN0OiBFaW4gR2VkaWNodCBmdWVyIG1laW5lIEtvbnN1bXRlcnJvcnMKIE5ld3Nncm91cHM6IGRlLmFsdC5mYW4ua29uc3VtdGVycm9yCiBEYXRlOiAyMCBTZXAgMjAwMiAwNjo1Mzo1NiAtMDcwMAogTWVzc2FnZS1JRDogPDRlYzE3ZjMwLjAyMDkyMDA1NTMuNTQ1OGNmN2RAcG9zdGluZy5nb29nbGUuY29tPgoKIFNjaG5lZWtvcHBld2l0dGNoZW4gdW5kIGRpZSBzaWViZW4gRnJ1Y2h0endlcmdlIAoKIEVzIHdhciBQaWVtb250a2lyc2NoZW56ZWl0IHVuZCBkZXIgVGFnIGJlZ2FubiBtaXQgS3JvZW51bmcgTGlnaHQuIEF1Y2gKIGltIEhhdXNlIHZvbiBLYWlzZXIsIHdvIHNpY2ggZGllIGJvZXNlIFN0aWVmbXV0dGVyIG1hbCB3aWVkZXIgaW4gaWhyZW0KIENob2xlc3Rlcmluc3BpZWdlbCB1ZWJlcnBydWVmdGUuIERpZXNlciBzcHJhY2ggenUgaWhyOiAiRHUgYmVzaXR6dCB6d2FyCiBpbW1lciBub2NoIGRpZSBLcmFmdCBkZXIgendlaSBIZXJ6ZW4sIGFiZXIgU2NobmVla29wcGV3aXR0Y2hlbiBoYXQKIGRhZnVlciBkYXMgdm9sbGUgVmVyd29laG5hcm9tYSEiCgogRGFzIGFlcmdlcnRlIGRpZSBTdGllZm11dHRlciBnYW56IGdld2FsdGlnIHVuZCBzaWUgYmVzY2hsb3NzLCBlaW5lbgogSmFlZ2VybWVpc3RlciBhdXN6dXNlbmRlbiwgdW0gU2NobmVla29wcGV3aXR0Y2hlbiB6dSBiZXNlaXRpZ2VuLgoKIERpZXNlciBnaW5nIG1pdCBTY2huZWVrb3BwZXdpdHRjaGVuIGluIGRlbiBXYWxkLCBkYW1pdCBpaG4gZGllCiBLcmFldXRlcnBvbGl6ZWkgbmljaHQgZXJ0YXBwZW4ga29ubnRlLiBEb3J0IHJpY2h0ZXRlIGVyIHNlaW5lbiBEYW5vbmUKIGF1ZiBTY2huZWVrb3BwZXdpdHRjaGVuLCB1bSBpaHIgZGllIEt1Z2VsIHp1IGdlYmVuLiBBbGxlcmRpbmdzIGVyd2llcwogc2ljaCBkZXIgSmFlZ2VybWVpc3RlciBhbHMga2xlaW5lciBGZWlnbGluZy4gRGVubiBlciBoYXR0ZSBuaWNodCBkZW4KIG5vZXRpZ2VuIE11bW0gdW0gc2llIHp1IGVyc2NoaWVzc2VuLiBEYXMgd2FyIGphIHNjaGxpZXNzbGljaCBhdWNoIG5pY2h0CiBkaWUgZmVpbmUgRW5nbGlzY2hlIEFydC4gQWxzbyBzYWd0ZSBTY2huZWVrb3BwZXdpdHRjaGVuOiAiTWVyY2khIiB1bmQKIHJhbm50ZSB6dSBkZW4gc2llYmVuIEJlcmdlbiBpbiBkYXMgSGF1cyBkZXIgc2llYmVuIEZydWNodHp3ZXJnZS4gRGllCiBGcnVjaHR6d2VyZ2Ugd2FyZW4gYWJlciBnZXJhZGUgaW4gaWhyZW0gQmVyZ3dlcmsgaW4gVmlsbGFiYWpvLCB1bQogR29sZGJhZXJlbiB1bmQgTWVnYXBlcmxzIGFienViYXVlbi4KCiBTY2huZWVrb3BwZXdpdHRjaGVuIGRhY2h0ZTogIkRpZSBGcmVpaGVpdCBuZWhtIGljaCBtaXIhIiB1bmQgbWFjaHRlCiBzaWNoIHNvZm9ydCB1ZWJlciBkZW4gTXVlbGxlci1NaWxjaHJlaXMgdW5kIGRpZSBQZXBzaSBoZXIuIERhbmFjaCBmdWVobHRlCiBzaWUgc2ljaCBzbyBCbHVuYSwgZGFzcyBzaWUgc2ljaCBlcnN0IGVpbm1hbCBpbnMgQmV0dCBsZWd0ZS4KCiBFcyB3YXIgQWZ0ZXIgRWlnaHQsIGFscyBkaWUgc2llYmVuIEZydWNodHp3ZXJnZSB6dXJ1ZWNrIGluIGRpZQogU2Nod2FlYmlzY2ggSGFsbCB0cmF0ZW4uIFNpZSBzY2hyaWVuIHNvZm9ydCB0YXVzZW5kIHZvbiBGcmFnZW4sIHdpZTogIgogV2VyIGhhdCB2b24gbWVpbmVtIE51dGVsbGFjaGVuIGdlZ2Vzc2VuPyIgdW5kOiAiV28gaXN0IGRlciBEZWluaGFyZD8iCiBEYW5uIGVudGRlY2t0ZW4gc2llIFNjaG5lZWtvcHBld2l0dGNoZW4uCgogU2llIGVudHNjaHVsZGlndGUgc2ljaCBiZWkgZGVuIHNpZWJlbiBGcnVjaHR6d2VyZ2VuIHVuZCBmcmFnZSBzaWUsIG9iCiBzaWUgYmVpIGlobmVuIHdvaG5lbiBkdWVyZmUuICJEdSBkYXJmc3QhIiwgc2FndGVuIGRpZSBzaWViZW4KIEZydWNodHp3ZXJnZS4gRGVubiBzaWUgc3VjaHRlbiBzY2hvbiBzZWl0IGxhbmdlbSBlaW5lIEhhdXNoYWVsdGVyaW4gdW5kCiBTY2huZWVrb3BwZXdpdHRjaGVuIGhhdHRlIG9obmUgWndlaWZlbCBkaWUgc2NobGF1ZSBBcnQgenUgd2FzY2hlbi4KCiBTbyB2ZXJnaW5nIGRpZSBaZWl0LCB1bmQgYWxzIGRlciBCZXJnZnJ1ZWhsaW5nIGthbSwgc2NoYXV0ZSBkaWUKIFN0aWVmbXV0dGVyIHdpZWRlciBpbiBpaHJlbiBDaG9sZXN0ZXJpbnNwaWVnZWwuIERlciBzYWd0ZSB3aWVkZXI6ICJEdQogYmVzaXR6dCB6d2FyIGltbWVyIG5vY2ggZGllIEtyYWZ0IGRlciB6d2VpIEhlcnplbiwgYWJlciBhdXMKIFNjaG5lZWtvcHBld2l0dGNoZW5zIEFyb21hcG9yZW4gZHJpbmd0IGltbWVyIG5vY2ggZGFzIHZvbGxlCiBWZXJ3b2VobmFyb21hISIKCiBBbHNvIGZhc3N0ZSBzaWNoIGRpZSBTdGllZm11dHRlciBlaW4gTWlsa2FoZXJ6IHVuZCB2ZXJ1ZWJ0ZSBkcmVpCiBBbnNjaGxhZWdlLiBEZXIgZHJpdHRlIHRyYWYgbWl0dGVuIGluIFNjaG5lZWtvcHBld2l0dGNoZW5zCiBLYXJhbWVsbGtlcm4uCgogRGllIFN0aWVmbXV0dGVyIGhhdHRlIGlociBuYWVtbGljaCBlaW5lbiB2ZXJnaWZ0ZXRlbiBCcmF0YXBmZWxrdWNoZW4KIHZvbiBLb3BwZW5yYXRoIHVuZCBXaWVzZSBnZWdlYmVuIHVuZCBTY2huZWVrb3BwZXdpdHRjaGVuIGZpZWwgc29mb3J0CiBpbiBlaW5lbiBGcnVlY2h0ZXRyYXVtIHZvbiBFaHJtYW5uLiBBbHMgZGllIHNpZWJlbiBGcnVjaHR6d2VyZ2UgYXVzCiBWaWxsYWJham8genVydWVja2thbWVuLCBsZWd0ZW4gc2llIFNjaG5lZWtvcHBld2l0dGNoZW4gaW4gZWluZQogRnJpc2NoZWJveC4KCiBEYSBrYW0gcGxvZXR6bGljaCBlaW4gU2Nob2tvcHJpbnosIGRlciBnb2xkZW5lIEVyZG51c3Nsb2NrZW4gaGF0dGUgdW5kCiBkZW0gZGllIFByaW56ZW5yb2xsZSB3aWUgYXVmIGRlbiBMZWlibml0eiBnZXNjaHJpZWJlbiB3YXIuIEVyIGJldWd0ZQogc2ljaCB1ZWJlciBTY2huZWVrb3BwZXdpdHRjaGVuIHVuZCBnYWIgaWhyIG1pdCBCbGlzdGV4bGlwcGVuIGVpbmVuCiBOZWdlcmt1c3MuCgogU2NobmVla29wcGV3aXR0Y2hlbiBlcndhY2h0ZSBkdXJjaCBkYXMgRmVycmVybyBLdWVzc2NoZW4gc29mb3J0IGF1cwogaWhyZW0gRnJ1ZWNodGV0cmF1bSB2b24gRWhybWFubiB1bmQgZGFjaHRlIHNpY2g6ICJLZWluZXIgbWFjaHQgbWljaAogbWVociBhbiEiCgoKIEdydXNzCiBNYXJjZWwKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogQnVlY2hlciAoR3JpbW1ib3JuLCAyNi4gU2VwIDIwMDIsIDE0OjAwOjUwKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDMzMDQxNjQ2IG9nPXd3dwp+IyEgcm49TXVhZGliIHJ0PTEwMzMwNDEzNjYgcmc9d3d3Cn4jISB0aWQ9MTAzMjk3Nzg5MQpKYSwgaGFiIGljaCB2b24gZ2Vob2VydCwgZGFzcyBVbndpc3NlbmhlaXQgc2VociBiZXJ1aGlnZW5kIHNlaW4ga2Fubi4gSWNoCmthbm5zIG5pY2h0IGJldXJ0ZWlsZW4sIGljaCB3ZWlzcyBkYXMgamEgbmljaHQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IEJ1ZWNoZXIgKEdub21lLCAyNy4gU2VwIDIwMDIsIDAwOjAzOjIyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDMzMDQxNjUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjk3Nzg5MQppbW1lcmhpbiB3ZWlzc3QgZHUsIHdhbm4gdW5kIHdvaGluIGR1IGRpY2ggc2VsYmVyIHp1IHZlcmxlZ2VuIGhhc3QuCmtvbXBsaW1lbnQuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogQnVlY2hlciAoR3JpbW1ib3JuLCAyNy4gU2VwIDIwMDIsIDAwOjA0OjIyKToKfiMhIHJuPUdub21lIHJ0PTEwMzMwNzc4MDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMyOTc3ODkxCkljaCB3ZWlzcy4gSWNoIGdlaG9lcmUgdGF0c2FlY2hsaWNoIHp1IGRlbiAwLjAxJSBkZXIgTUctU3BpZWxlciBkaWUgd2lzc2VuIHdhcwpkZXIgWndlY2sgZGVyIFJ1YnJpa25hbWVuIGlzdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IEJ1ZWNoZXIgKE9ya3RvZXRlciwgMjcuIFNlcCAyMDAyLCAwMDowNTozOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzMzA3Nzg2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzI5Nzc4OTEKRGllIGhhYmVuIGVpbmVuIFp3ZWNrPyEKCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogUG9ydGFsZSBnZWFlbmRlcnQ/IChNYW5kcmFnb24sIDI3LiBTZXAgMjAwMiwgMTM6MjI6NDIpOgp+IyEgb249TWFuZHJhZ29uIG90PTEwMzMxMjU3NDggb2c9c2VoZXIuZW50d2lja2x1bmcKfiMhIHJuPVZhbmlvbiBydD0xMDMzMTI1NjkyIHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTAzMjUxNzQ0MwpIZXkuIGljaCBoYWIgZGllIEthZXN0Y2hlbiBudXIgdm9uIEFoYWIgdWViZXJub21tZW4gLi4uIGhhYiBtaXIgZ2VkYWNodCwgd28Kc2llIHNjaG9uIG1hbCBkYSBzaW5kIC4uLi4KCgpIbW1qYS4gSWNoIHZlcmxlZ2Ugc2VsYmVyCgpHaWJ0cyBlaWdlbnRsaWNoIHNlaGVyLnNjaG1hcnJuID8KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFBvcnRhbGUgZ2VhZW5kZXJ0PyAoR2xvaW5zb24sIDI3LiBTZXAgMjAwMiwgMTM6MjI6NTYpOgp+IyEgcm49QWhhYiBydD0xMDMzMTI0NDc0IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTAzMjUxNzQ0MwooKikgRGFzIGlzdCBtaXIgc293YXMgdm9uIGVnYWwuIERhcyBnZW5hdSBmaW5kZSBpY2ggbmFlbWxpY2ggYWxiZXJuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFBvcnRhbGUgZ2VhZW5kZXJ0PyAoUGF0cnluLCAyNy4gU2VwIDIwMDIsIDEzOjIzOjU2KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDMzMTI1NzYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMjUxNzQ0MwphdWYgc2NobWFycm4ga29tbXQgaWhyIGVyc3QgamV0enQ/IDopCmljaCBnbGF1YiBhbGxlIHdvbGxlbiwgZGFzcyBkYXMgdGhlbWEgZWluZmFjaCBiZWVuZGV0IGlzdCB1bmQgbWFuIGF1ZiByaWt1cwp3YXJ0ZXQuCgotLSAKcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogUG9ydGFsZSBnZWFlbmRlcnQ/IChBbWFyeWxsaXMsIDI3LiBTZXAgMjAwMiwgMTg6NDU6MDgpOgp+IyEgcm49R25vbWUgcnQ9MTAzMzE0MjI1MyByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMzI1MTc0NDMKSWNoIGZpbmRlICJ2b3JzaWNodCAxMjAiIGF1Y2ggbmljaHQgYWxiZXJuIChob2VjaHN0ZW5zIHZpZWxsZWljaHQgYXVmIGRlciBIRSksCmFiZXIgd2FzIGhhdCBkYXMgbWl0IGRlbSB1cnNwcnVlbmdsaWNoZW4gVGhlbWEgenUgdHVuPwoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhaGwgdWViZXIgUGFydHlvcnQgKEdsb2luc29uLCAyOS4gU2VwIDIwMDIsIDAwOjU2OjE3KToKfiMhIHJuPVRpbGx5IHJ0PTEwMzMyNDU4MDAgcmc9cGFydHkKfiMhIHRpZD0xMDMzMjQ1ODAwCjEuIERhbmtlLgoyLiBFaW4gSGlud2VpcyBmdWVyIGFsbGUgR2Vybi1PZnQtVmllbHdhZWhsZXI6CiAgID4gWFhYIHRlaWx0IERpciBtaXQ6IGthbm4gbWFuIHdpcmtsaWNoIG1laHJtYWxzIHdhZWhsZW4/CiAgIEthbm4gbWFuLiBNYW4ga2FubiBfc2VpbmUgV2FobF8gamVkZXJ6ZWl0IHdpZWRlciBhZW5kZXJuIDo9KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4gKFJvbGFuZCwgMjkuIFNlcCAyMDAyLCAxMTowODo1Nik6CgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0LiAgICAgICA6KQoKUm9sYW5kIC0gV29ydGxvcy4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4gKEFscGhhLCAyOS4gU2VwIDIwMDIsIDE1OjI0OjA1KToKfiMhIHJuPVJvbGFuZCBydD0xMDMzMjkwNTM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMzI5MDUzNgpJY2ggZW1wZmVobGUgUnVicmlrIE1lZ2FzY2htYXJybiA6KQpHbHVlaGVuZXIgRmFuIEFscGhhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VyIGhhdCBpaG4gbnVyIGdla2lsbHQ/IChBbHBoYSwgMjkuIFNlcCAyMDAyLCAxNToyODowOCk6CgpEdSB2ZXJ0aWVmc3QgRGVpbmUgR2VkYW5rZW4gaW4gZGVuIFJlZ2Vud3VybSB1bmQgdmVyZ2lzc3QgZnVlciBrdXJ6ZSBaZWl0CmFsbGVzIHVtIERpY2ggaGVydW0uLi4KRGVyIFJlZ2Vud3VybSBpc3QgZWluIGxlYmxvc2VzIERpbmcuClNvbnN0IGthbm5zdCBEdSBuaWNodHMgYmVzb25kZXJlcyBhbiBkZW0gUmVnZW53dXJtIGVya2VubmVuLgoKSSB3b2FycyBuZXQuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IEJ1ZWNoZXIgKFdpbGxvdywgMjkuIFNlcCAyMDAyLCAxOToxOTo0Nyk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAzMzA3NzkzOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzI5Nzc4OTEKYWVobSwgaGFiIGljaCBpcmdlbmR3YXMgdmVycGFzc3Q/Pz8gV2FzIHNpbmQgZGVubiBSdWJyaWtlbj8/PyAKU0NOUiBXaWxsb3cKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTml4IE5ldWVzIGF1ZiBkZXIgV2VsdC4gKFNoYWVlbmEsIDMwLiBTZXAgMjAwMiwgMDI6MTA6MzApOgp+IyEgcm49QWxwaGEgcnQ9MTAzMzMwNTg0NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzMyOTA1MzYKQXVjaCBtaXQgUnVicmlrIE1lZ2FzY2htYXJybiBiZWtvbW10IG1hbiBkZXMgb2VmdGVyZW4gZWluICJOaXggTmV1ZXMgYXVmIGRlcgpXZWx0LiIgenUgaG9lcmVuLiAoU28gd2llIGljaCBncmFkZSwgd2FzIGF1Y2ggZGVyIGVpbnppZ3N0ZSBHcnVuZCBpc3QsIHdhcnVtCmljaCBoaWVyIHVlYmVyaGF1cHQgd2FzIHNjaHJlaWJlIGdyYWRlLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXRkaWdlc3QgKEdyaW1tYm9ybiwgMzAuIFNlcCAyMDAyLCAxMToxNTo0OCk6CkZyb206IEZsdXBzIEJhdW1hbm4gPG5vc3BhbUBmbHVwcy5kZT4KTmV3c2dyb3VwczogZGUucmVjLnR2Lm1pc2MKU3ViamVjdDogUmU6IFRWLVRpcHA6IERhcyBNaWxsaW9uZW5zcGllbApEYXRlOiAwOSBKdWwgMjAwMiAxNzozNjowMCArMDEwMApNZXNzYWdlLUlEOiA8OFNXcmJpQ0NFY0IuZmx1cHNAZmx1cHMuZGU+Cgp1c2VuZXRAZXBoaWxpYXMuZGUgKFJlbiBGdWNocykgc2NocmllYjoKCj4gU28gd2llIHZvciBKYWhyZW4gbWFsIGJlaW0gMkRGOiBLb256ZXJ0IHZvbiAkU0FFTkdFUklOIG1pdCBVZWJlcmxhZW5nZQo+IHVuZCB1bnRlbiBsaWVmIGR1cmNoOiBEYXMgQmllc3QgbXVzcyBzdGVyYmVuIHVtIDA6MjAuCgpCZWkgaXJnZW5kIGVpbmVyIFN0YXItVHJlay1BdXNzdHJhaGx1bmcgaW4gU0FULjEgd3VyZGUgZWluZ2VibGVuZGV0OgoiRXJpY2ggSG9uZWNrZXIgaW4gQ2hpbGUgZ2VzdG9yYmVuLiIgR2VuYXUgenUgZGVtIFplaXRwdW5rdCBzYWd0ZSBqZW1hbmQKaW4gZGVyIFNlcmllOiAiSWNoIGhhYmUgc28gbGFuZ2UgYXVmIGRpZXNlbSBNb21lbnQgZ2V3YXJ0ZXQuIgoKRmx1cHMKCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVGhhbGUgc3RhdHQgV2ludGVyYnVyZz8gKE1hbmRyYWdvbiwgMzAuIFNlcCAyMDAyLCAxODoxMzoyMyk6Cn4jISBvbj1NYW5kcmFnb24gb3Q9MTAzMzQwMjM5MyBvZz1wYXJ0eQp+IyEgcm49R2xvaW5zb24gcnQ9MTAzMzQwMjE0OCByZz1wYXJ0eQp+IyEgdGlkPTEwMzMwNTMzOTkKVW5kIHdvIHNvbGwgaWNoIGRpZSBnYW56ZW4gRXVsZW4gZmFuZ2VuPyBVbmQgc3RlaGVuIGRpY2ggbmljaHQgdW50ZXIKTmF0dXJzY2h1dHo/CgpGcmFnZW4gdWViZXIgRnJhZ2VuLgoKTWEqICh2ZXJsZWd0IHNlbGJlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFRoYWxlIHN0YXR0IFdpbnRlcmJ1cmc/IChBbHBoYSwgMzAuIFNlcCAyMDAyLCAxODoxNDoxNyk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTAzMzQwMjQwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzMwNTMzOTkKTmEgZ2VydXBmdCB1bmQgZ2VncmlsbHQgd2VyZGVuIGRpZSAtIFdpZSB3aWxsc3Qgc29ubnN0IHNhdHQgd2VyZGVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVGhhbGUgc3RhdHQgV2ludGVyYnVyZz8gKEdsb2luc29uLCAzMC4gU2VwIDIwMDIsIDE4OjE0OjM5KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDMzNDAyNDAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMzA1MzM5OQpFaW5mYWNoIGluIEdyaWVjaGVubGFuZCBIYXJ0Z2VsZCBzYW1tZWxuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVGhhbGUgc3RhdHQgV2ludGVyYnVyZz8gKE1hbmRyYWdvbiwgMzAuIFNlcCAyMDAyLCAxODoxNDo1MSk6Cn4jISBybj1BbHBoYSBydD0xMDMzNDAyNDU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMzA1MzM5OQpXaWUgYXVzICdkaWUnICdkaWNoJyB3dXJkZSwgaXN0IG1pciBqYSBub2NoIHJhZXRzZWxoYWZ0IC4uLgoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBMYWcgKFRvcmZrb3BwLCAzMC4gU2VwIDIwMDIsIDIxOjIxOjIyKToKfiMhIG9uPVRvcmZrb3BwIG90PTEwMzM0MTM2NzYgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUdsb2luc29uIHJ0PTEwMzM0MTM1MTUgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDMzNDEwOTkwCk9oIGphLCBkYW5uIGtvbW10IGVyIGF1Y2ggbWljaCBtYWwgYmVzdGFldWJlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFsbGVzIGtsYXIgOikgKFBhcmRhdXosICAxLiBPa3QgMjAwMiwgMTU6MDA6MDYpOgpbPE1hc3RlUj46PE1hc3RlUj5dIDEyLjA1IGNtZHMvcywgNDE0LjMzIGNvbXAgbGluZXMvcwpbPE1hc3RlUj46PE1hc3RlUj5dIExhZzogMi45JS82MCwgNi4yJS8xNSwgNDIuNiUvMQoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gTWFuZHJhZ29uIGluIFJ1YnJpayAid2l0emUiLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXYXMgaXN0IHN1ZXNzPyAoRGVlcGJsdWUsICAxLiBPa3QgMjAwMiwgMTU6MDE6MzIpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwMzM0NzcxMzcgcmc9d2l0emUKfiMhIHRpZD0xMDMzNDc0OTU1CkR1IHN1Y2hzdCBkb2NoIG51ciBuZW4gSm9iIHp1bSBTcGV6aWFsenVja2VydmVydHJldGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2gqKioqIGZ0cC1zZXJ2ZXIgKEFtYXJ5bGxpcywgIDEuIE9rdCAyMDAyLCAyMDo0NToxMCk6ClNvd2FzIG11c3MgbWFuIHNpY2ggbWl0dGxlcndlaWxlIHZvbiBmdHAtc2VydmVybiBzYWdlbiBsYXNzZW46Cgo0MjEgWmVpdHVlYmVyc2NocmVpdHVuZyAtIFZlcnN1Y2hlbiBTaWUsIGRhcyBuYWVjaHN0ZSBtYWwgZXR3YXMgc2NobmVsbGVyIHp1CnNjaHJlaWJlbi4KClNvIHdlaXQgaXNzZXMgc2Nob24gZ2Vrb21tZW4uCkFtYSosIHNvaWZ6bmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2NoKioqKiBmdHAtc2VydmVyIChHcmltbWJvcm4sICAxLiBPa3QgMjAwMiwgMjA6NTI6MjkpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMzM0OTc5MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMzNDk3OTEwCkphLCBkaWVzZSAibG9rYWxpc2llcnRlbiIgU3lzdGVtbWVsZHVuZ2VuIHNpbmQgd2lya2xpY2ggZWluZSBTZXVjaGUuIAoKR2RBLCBtaXRmdWVobGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTY2gqKioqIGZ0cC1zZXJ2ZXIgKEFtYXJ5bGxpcywgIDEuIE9rdCAyMDAyLCAyMDo1NDoyOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzMzQ5ODM0OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzM0OTc5MTAKbm9jaCBzY2hsaW1tZXIuLi4gZGFzIGlzdCBuZW4gImVpbmdlZGV1dHNjaHRlciIgRlRQLVNlcnZlciA6KApEaWUgTWVsZHVuZyBrb21tdCBzZWxic3QgZGFubiwgd2VubiBEdSB2b24gbmVyIGVudHNwcmVjaGVuZGVuIFVOSVgtS29uc29sZQprb21tc3QgLSB1bmQgZGFubiBub2NoIG1pdCBVbWxhdXRlbiwgZGllIG5pY2h0IG1hbCBkYXJnZXN0ZWxsdCB3ZXJkZW4gOigKCk1vcmdlbiBtdXNzIGljaCBkYSB3ZW4genVzYW1tZW5zY2gqKioqKiogOikKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldGRpZ2VzdCAoR3JpbW1ib3JuLCAgMS4gT2t0IDIwMDIsIDIzOjI4OjM0KToKVWViZXIgZGVuIGhpZXIgYmluIGljaCB3aWVkZXIgZ2VzdG9scGVydDoKCkZyb206IHNwYW1ncnViZUBub2x0ZS1idWVyb3RlY2huaWsuZGUgKE1pa2UgTm9sdGUpIApOZXdzZ3JvdXBzOiBkZS5jb21tLmluZm9zeXN0ZW1zLnd3dy5hdXRob3JpbmcubWlzYyAKU3ViamVjdDogUmU6IGVudHdpY2tsdW5nc3VtZ2VidW5nIApEYXRlOiBXZWQsIDI5IE1heSAyMDAyIDE5OjMzOjU4ICswMjAwIApNZXNzYWdlLUlEOiA8MWZjeW1hai5ueTNyeTZwd282ZGtOQHd3dy5maXJld2lyZS1nZWhhZXVzZS5kZT4gCiAKIAphYmEgPGFiYUB2aWVsZmFsdC5kZT4gd3JvdGU6IAogCj4gbW9lZ2xpY2hlcndlaXNlIGhpZXIgb3QsIGFiZXIgdmllbGxlaWNodCBkb2NoIG5pY2h0OiBpY2ggYmluIGF1ZiBkZXIgc3VjaGUgCj4gbmFjaCBlaW5lciBlbnR3aWNrbHVuZ3N1bWdlYnVuZywgZGllIGVzIGVpbmVtIHRlYW0gZXJsYXVidCwgZWZmZWt0aXYgdW5kIAo+IGd1dCB6dSBhcmJlaXRlbi4gCj4gc3ByaWNoOiBpY2ggd2lsbCBjaGVjay1pbiBjaGVjay1vdXQgbWVjaGFuaXNtZW4gaGFiZW4gdW5kIGljaCB3aWxsIAo+IHZlcnNpb25pZXJ1bmcgaGFiZW4gLT4gZGFzIHNpbmQgZGllIGtpbGxlcmtyaXRlcmllbi4gd2VubiBlcyBkYW5uIG5vY2ggCj4gbWVyZ2UgZXRjLiBnaWJ0LCBpc3QgZXMgc2Nob2VuLCBhYmVyIG5pY2h0IHp3aW5nZW5kLiAKIApTb3JyeSwgYWJlciBhbGxlIExvZXN1bmdlbiwgZGllIGljaCBEaXIgbmVubmVuIGtvZW5udGUsIHNldHplbiBlaW5lIApmdW5rdGlvbmllcmVuZGUgU2hpZnQtVGFzdGUgdm9yYXVzLiAKIApHcnVzcywgIApNaWtlIE5vbHRlIAoKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ldGRpZ2VzdCAoQ2FkcmFjaCwgIDEuIE9rdCAyMDAyLCAyMzo1Nzo1MCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzMzUwNzcxNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzM1MDc3MTQKVGphLi4gZGEgaGF0IGRlciBsaWViZSBNYW5uIGtlaW5lIEFobnVuZy4gSWNoIGtlbm4gZGEgTG9lc3VuZ2VuIGZ1ZXIgZGllIGVzCmxlZGlnbGljaCBlaW5lIGZ1bmt0aW9uaWVyZW5kZSBNYXVzIGJlZGFyZiA6bykKCkNhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBuZXRkaWdlc3QgKFBhdHJ5biwgIDIuIE9rdCAyMDAyLCAwMDo0MDowOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzMzUwNzcxNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzM1MDc3MTQKc2FnIGJsb3NzIGR1IGh1bGRpZ3N0IGRpZXNlbiBzZWxic3Rlcm5hbm50ZW4gbmV0ei1nYXJ0ZW56d2VyZ2Jlc2NodWV0emVybgphdWNoIG5vY2ggOikKCi0tIApwYXRyeW5zIHNoaWZ0LXRhc3RlIGlzdCBhdWNoIG5pY2h0IHNlaHIgYmVsYXN0ZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbmV0ZGlnZXN0IChHcmltbWJvcm4sICAyLiBPa3QgMjAwMiwgMDA6NDU6NDgpOgp+IyEgcm49UGF0cnluIHJ0PTEwMzM1MTIwMDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMzNTA3NzE0CkFsbGVzIGVpbmUgRnJhZ2UgZGVyIEhvZWZsaWNoa2VpdCAodW0gbmljaHQgenUgc2FnZW46IGRlcyBTdGlscykuIFZlcm51ZW5mdGlnZQpTY2hyZWlid2Vpc2UgaXN0LCB3ZWlsIGRhcyBBdWdlIHNpZSBkdXJjaCBaZWl0dW5nZW4gdW5kIEJ1ZWNoZXIgZ2V3b2hudCBpc3QsCmxlc2JhcmVyIGFscyBkaXZlcnNlIGljaC1iaW4tc28tY29vbCBFaWdlbnZhcmlhbnRlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbmV0ZGlnZXN0IChaZXBoeXIsICAyLiBPa3QgMjAwMiwgMDE6MDc6MDgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzM1MTIzNDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDMzNTA3NzE0CkR1cmNoIFplaXR1bmdlbj8gRGFzIHdhciBlaW4gV2l0eiwgb2Rlcj8KQzQsIGtyaWVndCBkZXMgb2VmdGVyZW4gU2NocmVpa3JhZW1wZmUgYmVpbSBaZWl0dW5nbGVzZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IG5ldGRpZ2VzdCAoR3JpbW1ib3JuLCAgMi4gT2t0IDIwMDIsIDAxOjE0OjQ5KToKfiMhIHJuPVplcGh5ciBydD0xMDMzNTEzNjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMzUwNzcxNApLbGVpbmVyIFRpcDogU2NobWVpc3MgQmlsZCB1bmQgRXhwcmVzcyB3ZWcsIHVuZCBuaW1tIHN0YXR0IGRlc3NlbiBkZW4gS29lbG5lcgpTdGFkdGFuemVpZ2VyLiBWb3J6dWdzd2Vpc2UgZGllIFNwb3J0c2VpdGVuLCBkb3J0IGRpZSBLb21tZW50YXJlLgpVZWJlcmlyZGlzY2guIEVpbmUgU3BvcnRyZWRha3Rpb24gdm9sbGVyIFNwb3J0aGFzc2VyLiBVbmQgc3ByYWNobGljaC9mb3JtYWwKYWxsZW1hbCBiZWdhYnRlciBhbHMgUGF0cnluLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBuZXRkaWdlc3QgKFBhdHJ5biwgIDIuIE9rdCAyMDAyLCAxMToyNTo0Myk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzMzUxMjM0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzM1MDc3MTQKbmEgamEsIGljaCBkZW5rZSBtaXIgZGF6dSBpbW1lciwgd2VyIHNjaHdpZXJpZ2tlaXRlbiBtaXQgZGVtIGxlc2VuIHNvbGNoZXIKa2t3ZXIKdGV4dGUgaGF0LCB2b24gZGVtIHNpbmQgZWgga2VpbmUgc29uZGVybGljaCBpbnRlbGxpZ2VudGVuIGFudHdvcnRlbiB6dQplcndhcnRlbiA7KQoKLS0gCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogbmV0ZGlnZXN0IChQYXRyeW4sICAyLiBPa3QgMjAwMiwgMTE6Mjc6MTUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzM1MTQwODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMzNTA3NzE0CnplaWcgbWlyIGRpZSB0ZXBwaWNoa2FudGUsIHZvbiBkZXIgaWNoIG1pY2ggc3R1ZXJ6ZW4ga2Fubi4uLgppY2ggYmluIGdldHJvZmZlbi4gdWFoYWhhaGEKCi0tIApwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IG5ldGRpZ2VzdCAoR3JpbW1ib3JuLCAgMi4gT2t0IDIwMDIsIDExOjQxOjU5KToKfiMhIHJuPVBhdHJ5biBydD0xMDMzNTUwODM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMzUwNzcxNApUamEsIG1pY2ggZXJzdGF1bnQgaW1tZXIgd2llZGVyIGRlciBadXNhbW1lbmhhbmcgdm9uIEZvcm0gdW5kIEluaGFsdC4gT2J3b2hsCmVpZ2VudGxpY2ggdW5hYmhhZW5naWcgdm9uZWluYW5kZXIgc2NoZWludCBlcyBnZXJhZGUgaW0gZWxla3Ryb25pc2NoZW4gQmVyZWljaApyZWxhdGl2IHp1dmVybGFlc3NpZ2UgWnVzYW1tZW5oYWVuZ2UgenUgZ2ViZW4uIFVzZW5ldCBpc3QgZGEgbnVyIGVpbiBiZXNvbmRlcnMKZXh0cmVtZXMgQmVpc3BpZWwuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IG5ldGRpZ2VzdCAoUGF0cnluLCAgMi4gT2t0IDIwMDIsIDExOjQzOjQyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDMzNTUxNzE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMzUwNzcxNAphY2gsIGljaCBiaW4gbWlyIHNpY2hlciBiZWRldXRlbmQgbWVociBpbmhhbHQgenUgYmlldGVuIGFscyBkdSwgYWJlciBkdQpkYXJmc3QgZGllIGdyb3NzLSBrbGVpbnNjaHJlaWJ1bmcgZ2VybmUgZnVlciBkaWNoIHZlcmJ1Y2hlbiAqZyoKCi0tIApwYXRyeW4gdGVpbHQgYnJ1ZWRlcmxpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IG5ldGRpZ2VzdCAoR3JpbW1ib3JuLCAgMi4gT2t0IDIwMDIsIDExOjQ1OjA5KToKfiMhIHJuPVBhdHJ5biBydD0xMDMzNTUxODIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMzUwNzcxNApIbW0sIHVuZCBEZWluIHN0YWVuZGlnZXMga2luZGlzY2hlcyAidWFoYWhhaGEiIG9kZXIgIipnKiIgc29sbCBtaWNoIGpldHp0IHZvbgptZWluZXIgTWVpbnVuZyBhYmJyaW5nZW4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IG5ldGRpZ2VzdCAoUGF0cnluLCAgMi4gT2t0IDIwMDIsIDExOjQ2OjQzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDMzNTUxOTA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMzUwNzcxNAphY2ggaWNoIGhhYiB2ZXJnZXNzZW4sIGR1IGJpbGRlc3QgZGlyIGphIGVpbiBoaWVyIGltICBtdWQgYWxsZXMgdm9uIGRlcgpob2hlbiB0ZXBwaWNoa2FudGUgenUgYmV1cnRlaWxlbiB1bmQgZ2Vob2Vyc3QgZnVlciBtaWNoIHp1IGRlbgpvYmVyc3RlbiBnYXJ0ZW56d2VyZ3ZlcmZlY2h0ZXJuLCB3ZW5uIGljaCBhdWNoIGhvZmZlLCBudXIgaW0gZ2Vpc3RlLgoKLS0gCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IG5ldGRpZ2VzdCAoQ3VjaHVsbGluLCAgMi4gT2t0IDIwMDIsIDExOjUwOjU1KToKfiMhIHJuPVBhdHJ5biBydD0xMDMzNTUyMDAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMzUwNzcxNApOaXZlYXUgc2llaHQgbnVyIHZvbiB1bnRlbiB3aWUgQXJyb2dhbnogYXVzLgoKKmcqIHVhaGFoYWhhdWhhdWhhICEhISEhISEhITExISEhMSEgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogbmV0ZGlnZXN0IChQYXRyeW4sICAyLiBPa3QgMjAwMiwgMTE6NTQ6MzIpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzM1NTIyNTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMzNTA3NzE0CmdhcnRlbnp3ZXJndmVyZmVjaHRlciB2ZXJiaW5kZSBpY2ggZ2FyIG5pY2h0IG1pdCBhcnJvZ2Fuei4uLm9kZXIgd2FzIHNpZWhzdApkdSBpbiB6ZXRlcm5kZW4gc2VuaWxlbiBvcGFzPwpkYXMgInZvbiBkZXIgdGVwcGljaGthbnRlIHNwcmVjaGVuIiBzdGVodCB6dW0gZWluZW4gZGVuIG1laXN0ZW4gbmljaHQsIHVuZAp3aXJkIGFuZGVyZXJzZWl0cyBpbiBkZXIgaGV1dGlnZW4gZ2VzZWxsc2NoYWZ0IGF1Y2ggbmljaHQgc29uZGVybGljaApwb3NpdGl2IGJld2VydGV0LiBudXIgZGllIHBpY2tlbGdlc2ljaHRlciBpbSB1c2VuZXQgYmV3dW5kZXJuIHNpY2ggZGFmdWVyCmdlZ2Vuc2VpdGlnLi4udW5kIG1hZyBzZWluLCBhdWNoIGVpbiBwYWFyIHp1cnVlY2tnZWJsaWViZW5lIG1wYS1oZXJyZW4uCgotLSAKcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogbmV0ZGlnZXN0IChHcmltbWJvcm4sICAyLiBPa3QgMjAwMiwgMTI6MDE6NTYpOgp+IyEgcm49UGF0cnluIHJ0PTEwMzM1NTI0NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMzNTA3NzE0CldpZSBnZXNhZ3QsIGljaCBoYWIgbmljaHRzIGdlZ2VuIEtsZWluc2NocmVpYmVyZWksIHNvbmRlcm4gZ2VnZW4gZGFzLCB3YXMgbWFuCnVlYmVycHJvcG9ydGlvbmFsIGhhZXVmaWcgaW4gZGVyYXJ0IHVuc29yZ2ZhZWx0aWcgZ2VzY2hyaWViZW5lbiBUZXh0ZW4gZmluZGV0LgpBdXNuYWhtZW4gZ2lidCBlcyBuYXR1ZXJsaWNoIGltbWVyLCB6dSBiZWlkZW4gU2VpdGVuICh3ZW5uIGljaCBoaWVyCmJlaXNwaWVsc3dlaXNlIGFuIHd1cnplbCBkZW5rZSkuIApVbmQgd2FydW0gc2NocmVpYnN0IER1IG5pY2h0IGdsZWljaCAibmV0Y29wIiwgZGFzIGlzdCBrdWVyemVyIGFscwoiZ2FydGVuendlcmd2ZXJmZWNodGVyIiB1bmQgZXMgd2lzc2VuIG5pY2h0IG51ciBFaW5nZXdlaWh0ZSB3YXMgRHUgbWVpbnN0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogbmV0ZGlnZXN0IChDdWNodWxsaW4sICAyLiBPa3QgMjAwMiwgMTI6MDQ6MTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzM1NTI5MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMzNTA3NzE0CiJHYXJ0ZW56d2VyZ3ZlcmZlY2h0ZXIiIGtsaW5ndCBsYWVjaGVybGljaGVyLiBLbGluZ3Qgc28gbmFjaCAiWndlcmciLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBuZXRkaWdlc3QgKFBhdHJ5biwgIDIuIE9rdCAyMDAyLCAxMjowNDoxMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzMzU1MjkxNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzM1MDc3MTQKaG9lY2hzdGVucyAic2VsYnN0ZXJuYW5udGUgbmV0Y29wIGRlciBzb25zdCB6dW0gdGhlbWEgbmljaHRzIGJlaXp1dHJhZ2VuIGhhdCIsCm51ciAibmV0Y29wIiBrbGluZ3QgaXJnZW5kd2llIHBvc2l0aXYgdW5kIHRyaWZmdCBlcyBuaWNodCB3aXJrbGljaC4KCi0tIApwYXRyeW4sIHNjaHJlaWJ0IGltIHVzZW5ldCB1ZWJyaWdlbnMgYXVjaCBncm9zcywgbWFnIG51ciBkaWUgICAgICAgICAgICAgICAgICAKbmV0Y29wcyBuaWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZHVoIChEYXJrd2luZywgIDIuIE9rdCAyMDAyLCAyMDowNjoxMCk6CkRlaW4gRnJldW5kIFN0aW5nIHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1LiAKRGVpbiBGcmV1bmQgU3RpbmcgdGVpbHQgRGlyIG1pdDogYmlzIHNwYWV0ZXIKU3RpbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkRpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiBoZWhlLCB1bmQgamV0enQgaXN0IHN0aW5nIG5pY2h0IG1laHIgZGEgOikKU3RpbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCmhtLi4gamV0enQgc29sbHRlIHdvaGwgZGVyIEFiZmx1Zy1UZXh0IGtvbW1lbiwgbWFsIHNlaG4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsYXIgZG9jaDogZGUuYWx0Lm5ldGRpZ2VzdC4uLiAgKFJvbmRhLCAgMy4gT2t0IDIwMDIsIDAxOjUxOjIzKToKLi4uIG9kZXI6IG1laW4ga2xlaW5lciBncnVlbmVyIEtha3R1cy4uLgoKLS0tIHNuaXAgLS0tCgpbU046IGF1ZnMgd2VzZW50bGljaGUgZ2VrdWVyenRdCgpNZXNzYWdlLUlEOiA8YW1rYTV1JG9wNyQxQG5ld3MudW5pLXN0dXR0Z2FydC5kZT4KTmV3c2dyb3VwczogZGUuY29tcC5zeXMubWFjLm1pc2MKRnJvbTogSGFubmVzIEduYWQgPHJ1c2FtaWdhQGhlbHBkZXNrLnJ1cy51bmktc3R1dHRnYXJ0LmRlPgoKWy4uLl0KUC5TLgoKTWVpbiBrbGVpbmVzIHdlaXNzZXMgaUJvb2sgbGllc3Qga2V5MmF1ZGlvLAogaG9sbGFyaSwgaG9sbGFyaSwgaG9sbGFyby4KV2FzIGJyYXVjaGUgaWNoIGRlbm4gV2luZG93cywgd2FzIGJyYXVjaCBpY2ggQ2xvbmUgQ0QsCiBob2xsYXJpLCBob2xsYXJpLCBob2xsYXJvLgpVbmQgd2VubiAnbmUgYm9lc2UgRGlzYyB3YXMgVW5nZXpvZ25lcyBpc3QsCmRhbm4gaG9sZSBpY2ggbWVpbiBpQm9vaywgdW5kIGRhcyBsaWVzdCwgbGllc3QsIGxpZXN0LgpNZWluIGtsZWluZXMgd2Vpc3NlcyBpQm9vayBsaWVzdCBrZXkyYXVkaW8sCiBob2xsYXJpLCBob2xsYXJpLCBob2xsYXJvLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IChEZWVwYmx1ZSwgIDMuIE9rdCAyMDAyLCAyMDoxMDoyMCk6CltNb2VyZGVyOkFzdWthXSBHZXdhbHQgaXN0IGRpZSBlaW56aWdlIExvZXN1bmcKW1RvZDpMYXJzXSBTY2hyZWluZW1ha2VycyBpaHJlIFNjaHdlc3RlciBoYXQgZ2VyYWRlIEFzdWthIHVtZ2VicmFjaHQuCltUb2Q6U2NocmVpbmVtYWtlcnMgaWhyZSBTY2h3ZXN0ZXJdIFNjaGljaHQgaW0gU2NoYWNodCEKCi4uLiB3aWUgcmVjaHQgZXIgaGF0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZmx3IChNdXBmZWwsICAzLiBPa3QgMjAwMiwgMjA6MTU6MjYpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTAzMzY2ODYyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzM2Njg2MjAKV2VyICJlciI/IERlciBTY2h3ZXN0ZXIgb2RlciBkZXIgQXN1a2E/IDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBmbHcgKEFscGhhLCAgMy4gT2t0IDIwMDIsIDIwOjI0OjEyKToKfiMhIHJuPU11cGZlbCBydD0xMDMzNjY4OTI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMzY2ODYyMApTaWNoZXJsaWNoICJkZXIiIE11cnBoeSwgd2VpbCBkZXIgaGF0IGltbWVyIHJlY2h0IC0gYmVzb25kZXIgaGllciB3aWUgbWFuCnNpZWh0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xlcmlrZXIuLi4gKFpvb2ssICAzLiBPa3QgMjAwMiwgMjA6Mjk6MzUpOgpEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBzbywgZXJzdG1hbCB0YWxpIHZvbGxzY2hlaXNzZW4gdW5kCkRlaW4gRnJldW5kIEJyb3RuYWVsIHRlaWx0IERpciBtaXQ6IHdlaXRlcnVlYmVuICpzZXVmeioKRGVpbiBGcmV1bmQgR25vbWUgdGVpbHQgRGlyIG1pdDogZHUgYmlzdCBla2xpZywgYnJvdGkKRGVpbiBGcmV1bmQgQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogZGFzIGlzIGdlaWwgOm8pCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGVyaWtlci4uLiAoUGl0ZmFsbCwgIDMuIE9rdCAyMDAyLCAyMDozMDo0NSk6Cn4jISBybj1ab29rIHJ0PTEwMzM2Njk3NzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMzNjY5Nzc1CmRhdm9yIGZlaGx0IG5vY2g6CgpEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBub2UsIGljaCBob2NrIGpldHogaW5uYSB1bmkgbWl0IG5lbSBidXJnZXIKRGVpbiBGcmV1bmQgQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogaW4gZGVyIGhhbmQgdW5kIGhhYiBrb3Bmc2NobXplcnplbiA7KQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTdGFtbXRpc2NoIEVybGFuZ2VuIChBbnRoZWEsICA0LiBPa3QgMjAwMiwgMTE6MTA6MDQpOgp+IyEgcm49Wm9vayBydD0xMDMzNzIxNTA3IHJnPXRyZWZmZW4KfiMhIHRpZD0xMDMzNjY0ODQ0ClBhaCEgQWJlciBpY2ggYmluIGhhbHQgbmljaHQgMjQgU3R1bmRlbiBhbSBUYWcgaW0gTXVkIG51ciB1bSBtYWwgenUgc2NoYXVlbiwKb2Igd2FzIHNlaW4ga29lbm50ZS4gQXVzc2VyZGVtIGhhYmUgaWNoIG5vY2ggZWluZSBldHdhcyBsYWVuZ2VyZSBBbmZhaHJ0IGF1cwpOdWVybmJlcmcsIHVuZCB3aWUgamVtYW5kIGFuZGVyZXMgc2Nob24gc28gdHJlZmZlbmQgc2NocmllYjogRXMgZ2lidCBpbW1lciAyClp1ZWdlIHBybyBTdHVuZGUsIHVuZCBkaWUgZmFocmVuIGltIEFic3RhbmQgdm9uIDEwIE1pbnV0ZW4sIG1hbiBkYXJmIGFsc28KbWVpc3RlbnMgcmVjaHQgbGFuZyB3YXJ0ZW4uIE9kZXIgbWFuIGZhZWhydCBtaXQgZGVtIEJ1cywgaXN0IGRhbm4gYWJlciBhdWNoCm5pY2h0IHNjaG5lbGxlci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU3RhbW10aXNjaCBFcmxhbmdlbiAoTWFuZHJhZ29uLCAgNC4gT2t0IDIwMDIsIDExOjEwOjQ2KToKfiMhIHJuPUFudGhlYSBydD0xMDMzNzIyNjA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMzY2NDg0NApSb2FuYSB1bmQgaWNoIGZhaHJlbiBoZXV0ZSBhdWNoIG5hY2ggTnVlcm5iZXJnLiBNaXQgbGFlbmdlcmVyIFZvcndhcm56ZWl0CndhZXJlbiB3aXIgZXZ0bC4gYXVjaCBnZXN0ZXJuIHNjaG9uIGdlZmFocmVuLgoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTdGFtbXRpc2NoIEVybGFuZ2VuIChHcmltbWJvcm4sICA0LiBPa3QgMjAwMiwgMTE6MzQ6MzApOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwMzM3MjI2NDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMzNjY0ODQ0CkR1IGJpc3QgYXVmIGRlciByaWNodGlnZW4gRmFlaHJ0ZS4gR2V0eiBkZW5rIG1hbCBuYWNoOiBXYXJ1bSB3YXIgZGllClZvcndhcm56ZWl0IHdvaGwgc28ga3Vyej8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU3RhbW10aXNjaCBFcmxhbmdlbiAoR3JpbW1ib3JuLCAgNC4gT2t0IDIwMDIsIDEyOjI3OjEzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDMzNzI0MDcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzMzY2NDg0NApOYSBzY2hvZW4sIG5hZWNoc3RlIENoYW5jZTogTGVja2VyIGluZGlzY2ggZXNzZW4sIDEzOjAwLCBTdXIgTWFuZGlyLCBFcmxhbmdlbi4KRXMgd2VyZGVuIHp3ZWkgTXVkZGVyIChkYXZvbiBlaW4gRXh0ZXJuZXIpIGFud2VzZW5kIHNlaW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTdGFtbXRpc2NoIEVybGFuZ2VuIChNYW5kcmFnb24sICA0LiBPa3QgMjAwMiwgMTI6NTc6MDgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzM3MjcyMzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDMzNjY0ODQ0CkhleS4gRGllc21hbCBzb2dhciA4IE1pbnV0ZW4gVm9yd2FybnplaXQgOi0pIE9iIGljaCBub2NoIG5lIEVpbmxhZHVuZyB6dQptZWluZW0gZ2VzdHJpZ2VuIEFiZW5kZXNzZW4gcG9zdGVuIHNvbGx0ZT8KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQXN1cy1Cb2FyZCArIFBJSSArIFJBTSAoT3JrdG9ldGVyLCAgNC4gT2t0IDIwMDIsIDE0OjUwOjI5KToKfiMhIHJuPUdub21lIHJ0PTEwMzM3MzU2MTggcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTAzMzY2NjIwNwpEaWUgZ2lidCBlcyBuZXUgbmljaHQgbWVocj8gQWxzbyB2ZXJhbHRldC4gRC5oLiBkdSB3aWxsc3QgYXVjaCBub2NoIEdlbGQKZGFmdWVyLCBkYXMgYW5kZXJlIGRlaW5lbiBDb21wdXRlcm11ZWxsIGVudHNvcmdlbj8KRHUgYXJiZWl0ZXN0IG5pY2h0IHp1ZmFlbGxpZyBpbiBkZXIgRW50c29yZ3VuZ3NpbmR1c3RyaWU/IE11ZWxsIC0+IFdlcnRzdG9mZgoKT3JrVCwgZW50c2V0enQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpubyBmdXJ0aGVyIGNvbW1lbnQuLi4gKENyaXR0ZXIsICA0LiBPa3QgMjAwMiwgMTc6Mzc6NDApOgpNdXJnZWxtYW5uIEkgUyBUICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgIE0gRSBIIFIgIEQgQSAhCk11cmdlbG1hbm4gZ2VodCBhdWYgZGVyIFNjaHdlbGxlIGRlcyBUb2RlcyBuYWNoIFN1ZWRlbi4KTXVyZ2VsbWFubiBrb21tdCBhdWYgZGVyIFNjaHdlbGxlIGRlcyBUb2RlcyBoZXJlaW4uCk11cmdlbG1hbm4gSSBTIFQgIEogRSBUIFogVCAgRCBBICEuCkRhamluIHJ1ZnQ6IFcgQSBIIE4gUyBJIE4gTiBJIEcgISEhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2Vpc3MgTGlzdCB3YXMgZXIgdHV0PyAgKEVsYmVyZXQsICA2LiBPa3QgMjAwMiwgMDA6NDQ6MjUpOgoKTXVwZmVsIHdpcmQgYW4gZGllIFdhbmQgZ2VuYWdlbHQuCkhpbnRlciBMaXN0IHNhZ3Q6IFBmdWkgRGVpYmVsLCBzbyBtaWVzZSwgc3RpbmtpZ2UgQ2hhb3RlbiEgRGVyIHJlaW5zdGUKQWJzY2hhdW0hCkhpbnRlciBMaXN0IGhhZW5ndCBlaW4gYW5kZXJlcyBQbGFrYXQgYXVmLgoKRWxiaSBraWNoZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChDdWNodWxsaW4sICA2LiBPa3QgMjAwMiwgMDE6MTE6NDEpOgpbQWJlbnRldWVyOkFscGhhXSAzNSBMUCAtIGVzIHdpcmQgc3Bhbm5lbmQgOikKW1RvZDpMYXJzXSBFaW5lIEtyYW5raGVpdCBoYXQgZ2VyYWRlIEFscGhhIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hZXhjaGVuIChDdWNodWxsaW4sICA4LiBPa3QgMjAwMiwgMTE6NTk6NDEpOgp+IyEgcm49UmlrdXMgcnQ9MTAzNDA3MTE2MSByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTAzNDA3MDk1MApHaWJ0IGVzIHNjaG9uLiBTY2hvbiBMQU5HRS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNYWV4Y2hlbiAoR2xvaW5zb24sICA4LiBPa3QgMjAwMiwgMjA6MzY6MTIpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzQwNzExODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0MDcwOTUwCklzdCBtaXIgcmVjaHQuIFNvbnN0IGhhZXR0ZSBpY2ggZWggZGVuIGJ1Z2dlbmRlbiBibG9zcyB1bWdlYmF1dC4gQmluIGRvY2gga2VpbgpNYWdpZXIgZnVlciBzaW5udm9sbGUgU2FjaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5vdi4xOC4gTWFubmhlaW0gLSBDYXBpdG9sIChHZXJtYW55KSAoQ3VjaHVsbGluLCAxMC4gT2t0IDIwMDIsIDEyOjUxOjI2KToKfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDM0MjQ3MDgwIG9nPWt1bHR1cgp+IyEgcm49U3Ryb2hhbG0gcnQ9MTAzNDI0Njk5NCByZz1rdWx0dXIKfiMhIHRpZD0xMDM0MjQ2OTk0CktsaW5ndCBuYWNoIFByb3BhZ2FuZGEgZnVlciBHLlcuIEJ1c2guLi4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5vdi4xOC4gTWFubmhlaW0gLSBDYXBpdG9sIChHZXJtYW55KSAoU3Ryb2hhbG0sIDEwLiBPa3QgMjAwMiwgMTM6MDc6MzYpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzQyNDcwODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0MjQ2OTk0Cnp1IHdlbmlnICpCVU1NKiwgVGVjaG5vLUdldHJ1ZGVsIHNwaWVsZW4gZGllIG5ldCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFsbGVzIG5ldT8gKE1hbmRyYWdvbiwgMTAuIE9rdCAyMDAyLCAxNzo1MToyOCk6Cn4jISBybj1QYXRyeW4gcnQ9MTAzNDI2MjE5NyByZz1kLndhbGQKfiMhIHRpZD0xMDM0MjYyMTk3CkRhcyBpY2ggZGFzIG5vY2ggKG9kZXIgZWhlciB3aWVkZXIpIGVybGViZW4gZGFyZiAuLi4uLgoKTWEqICh3YXJ0ZXQgc2Nob24gc2VobnN1ZWNodGlnIGF1ZiBCb3NjaGFudGUgdW5kIGRpZSBNYWdpZWluc2VsIC4uLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogYWxsZXMgbmV1PyAoQ2FkcmFjaCwgMTAuIE9rdCAyMDAyLCAxODoxMToyNSk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTAzNDI2NTA4OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzQyNjIxOTcKRGEgZmFsbGVuIG1pciBhdWNoIG5vY2ggZWluIHBhYXIgYW5kZXJlIEdlYmlldGUgZWluLiBBYmVyIGljaCBkZW5rZSBiZWkgc28KbWFuY2hlbSBlaGVtYWxpZ2VtIEdlYmlldCBpc3QgZXMgYmVzc2VyIGVzIGFscyBlaGVtYWxpZ2VzIEdlYmlldCB6dQp1bXNjaHdhZXJtZW4sIGFscyBhdWYgZGVuIEJvZGVuIGRlciBUYXRzYWNoZW4genVydWVja2dlaG9sdCB6dSB3ZXJkZW4sIHNvbGx0ZW4Kc2llIGplbWFscyB3aWVkZXJrb21tZW4gOm8pCgpDYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGFsbGVzIG5ldT8gKEdsb2luc29uLCAxMC4gT2t0IDIwMDIsIDIxOjMzOjA4KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwMzQyNzcyMzAgcmc9ZC53YWxkCn4jISB0aWQ9MTAzNDI2MjE5NwpVbnRlciAiYWx0IiBmYXNzZW4gZGllIG1laXN0ZW4gImFsdCB1bmQgc3BpZWxlcmZhaHJlbiIgenVzYW1tZW4uIFdlbm4gaWNoIG1pY2gKcmVjaHQgZXJpbm5lcmUsIGdpbmcgZGFzIGdhbnogdXJzcHJ1ZW5nbGljaGUgU3BpZWxzeXN0ZW0gaW4gZXR3YSBiaXMgTGV2ZWwgMjMKYmV2b3IgbWFuIGVzIGdlbGFzc2VuIGhhdC4gRGFtaXQgZmFlbGxzdCBEdSBudXIgbm9jaCBpbiBkaWUgS2F0ZWdvcmllICJhbHQiLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogYWxsZXMgbmV1PyAoTXVwZmVsLCAxMC4gT2t0IDIwMDIsIDIzOjE1OjAwKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMzQyNzgzODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0MjYyMTk3CkxldmVsIDIzID8gTGV2ZWwgMzIgd2Fycy4uLgoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGFsbGVzIG5ldT8gKEdsb2luc29uLCAxMC4gT2t0IDIwMDIsIDIzOjMzOjM2KToKfiMhIHJuPU11cGZlbCBydD0xMDM0Mjg0NTAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDI2MjE5NwpGdWVyIDMyIG11c3N0ZSBtYW4gYWJlciBzY2hvbiB1bmdsYXVibGljaGUgQXVzZGF1ZXIgbWl0YnJpbmdlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGFsbGVzIG5ldT8gKE11cGZlbCwgMTAuIE9rdCAyMDAyLCAyMzozNjowNSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDM0Mjg1NjE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDI2MjE5NwpMZXZlbCAzMiB3YXJlbiAxMDAuMDAwLjAwMCBzb3dlaXQgaWNoIG1pY2ggZXJpbm5lci4gRGllIGVyc3RlbiBiZWlkZW4gU3BpZWxlciwKZGllIGRhcyBlcnJlaWNodGVuLCB3YXJlbiBUb2V0ZXIgdW5kIFJ5bmUgKGlyZ2VuZHdhbm4gRW5kZSA5NCBtZWluZSBpY2gpLgoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGFsbGVzIG5ldT8gKEdsb2luc29uLCAxMC4gT2t0IDIwMDIsIDIzOjQ0OjU0KToKfiMhIHJuPU11cGZlbCBydD0xMDM0Mjg1NzY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDI2MjE5NwpIYWNoamEuIFJ5bmUsIGRlciB6dSBtZWluZXIgWmVpdCBuYWNoIGRlbSBSZWlua29tbWVuIGltbWVyIHNlaW4gbnVyIG5vY2gKU3RhbmRhcmQtSWNoLWhhYmUtQW5nc3Qtdm9yLWRlbS1TdGVyYmVuLU1ldHplbHNjcmlwdCBhbndhcmYgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGFsbGVzIG5ldT8gKEdyaW1tYm9ybiwgMTEuIE9rdCAyMDAyLCAwMDozNzowOCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDM0Mjg2Mjk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDI2MjE5NwpEaWUgMTAwIE1FUCBoYWJlbiBUb2V0ZXIgdW5kIFJ5bmUgQW5mYW5nIDE5OTUgZXJyZWljaHQsIHdlbm4gaWNoIG1pY2ggbmljaHQKaXJyZS4gWmVpdGdsZWljaCB1bmQgcHVua3RnZW5hdS4gRWluZSBkYW1hbHMgc2NoaWVyIHVuZ2xhdWJsaWNoZSBMZWlzdHVuZy4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogYWxsZXMgbmV1PyAoTW9udGFudXMsIDExLiBPa3QgMjAwMiwgMTY6NTE6MDIpOgp+IyEgcm49WmFybml5YSBydD0xMDM0MzM2NDkxIHJnPWQud2FsZAp+IyEgdGlkPTEwMzQyNjIxOTcKWWFudHJvLAp3ZW5uIGR1IHNjaG9uIGFsbGUgZGVpbmUgTmFtZW4gYXVmemFlaGxzdCwgc29sbHRlc3QgZHUgYXVjaCBuaWNodCAiQmxhY2t5Igp2ZXJnZXNzZW4uClVuZCB3ZW5uIGR1IHNjaG9uIGFsbCBkZWluZW4gRm9lcmRlcmVybiBkYW5rc3QsIGRhbm4gc29sbHRlc3QgZHUgYXVjaCBQdW1hCm5pY2h0IHZlcmdlc3Nlbiwgdm9uIGRlbSBkYXMgdW52ZXJnbGVpY2hsaWNoZSBaaXRhdCBzdGFtbXQ6ICJNZWluIGdyb2Vzc3RlcgpGZWhsZXIgaW0gTXVkIHdhciBlcywgWWFudHJvIHp1bSBNYWdpZXIgenUgbWFjaGVuLiIKVW5kIGRpZSByZXN0bGljaGUgR2VmdWVobHNkdXNlbGVpIGlzdCwgdW0gZXMgbWFsIG1pdCBQYW1wZXJzJyBXb3J0ZW4genUgc2FnZW4sCmVpbmZhY2ggbnVyLi4uIGxhbmd3ZWlsaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBhbGxlcyBuZXU/IChHbG9pbnNvbiwgMTEuIE9rdCAyMDAyLCAxNzo0NToyMik6Cn4jISBybj1Nb250YW51cyBydD0xMDM0MzQ3ODYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDI2MjE5NwpJY2ggaGFiZSBzYWNodCBkZW4gRWluZHJ1Y2ssIHdpciBicmF1Y2hlbiB0YXRzYWVjaGxpY2ggZWluZSBSdWJyaWsgImZsYW1lIi4KRGFzIG5vcm1hbGUgQWV0emxldmVsIHZvbiBNRyB3aXJkIGJlaSB3ZWl0ZW0gdWViZXJzY2hyaXR0ZW4uCkljaCBmaW5kIGVzIHByaW1hIGRhc3MgWWFudHJvIHNpY2ggbmljaHQgbWVociBpbiBkZXIgR2VzZWxsc2NoYWZ0IGFuZGVyZXIgImljaApiaW4gamV0enQgc2F1ZXIgdW5kIGxvZXNjaCBqZXR6dCBhbGxlcyItTWFnaWVyIGJlZmluZGVuIG1vZWNodGUgdW5kIHdpciBkaWVzZQp0b2xsZW4gR2ViaWV0ZSB3aWVkZXJoYWJlbi4gRGEgaGFlbmdlbiBiZWkgbWlyIGF1Y2ggZWluaWdlIEVyaW5uZXJ1bmdlbiBkcmFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZSA6LSkgKExpYXJhLCAxMS4gT2t0IDIwMDIsIDIyOjA4OjU5KToKW0JlaWxlaWQ6VGh1Zmhpcl0gdmVyZGFtbXRlIGJpYmVycGlzc2UgPDIyOjA2OjQ5PgpbQmVpbGVpZDpMaWFyYV0gc28gZHJ1ZWNrdCBzaWNoIGtlaW4gemF1YmkgYXVzIDwyMjowNzoxNz4KW0JlaWxlaWQ6VGh1Zmhpcl0gaWNoIGJpbiBwcmltYWVyIHp3ZXJnIDwyMjowNzoyOD4KW0JlaWxlaWQ6QXN1a2EgcmVpY2h0IFRodWZoaXIgZWluZW4ga2xlaW5lbiB0cmFnYmFyZW4gU3RvbGxlbiBmdWVyCiAgICAgICAgIFp3aXNjaGVuZHVyY2guIDwyMjowNzo0ND5dCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT2huZSBXb3J0ZSA6LSkgKEdyaW1tYm9ybiwgMTEuIE9rdCAyMDAyLCAyMjoxMDoxMSk6Cn4jISBybj1MaWFyYSBydD0xMDM0MzY2OTM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDM2NjkzOQpKYSBpcyBkZW5uIGhlaXQgc2NobyBXZWlobmFjaHRlbj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBPaG5lIFdvcnRlIDotKSAoUm9jaHVzLCAxMi4gT2t0IDIwMDIsIDEwOjQ4OjQ0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDM0MzY3MDExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDM2NjkzOQoxLiBPa3RvYmVyLCB6LkIuIGJlaSBMSURMOgpEaWUgUmVnYWxlIHNpbmQgdm9sbGVyIFdlaWhuYWNodHNhcnRpa2VsIChTY2hva28tTmlrb2xhZXVzZSB1c3cuKQoKTm8gY29tbWVudC4KCiAgUm9jaHVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBPaG5lIFdvcnRlIDotKSAoUGVyZGl0YSwgMTIuIE9rdCAyMDAyLCAxMDo1MzowMSk6Cn4jISBybj1Sb2NodXMgcnQ9MTAzNDQxMjUyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzQzNjY5MzkKZGFzIHdhciBkb2NoIHNjaG9uIEFuZmFuZyAvIE1pdHRlIFNlcHRlbWJlciBzby4uLgpQZXJkaXRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBPaG5lIFdvcnRlIDotKSAoUm9jaHVzLCAxMi4gT2t0IDIwMDIsIDEwOjU0OjQxKToKfiMhIHJuPVBlcmRpdGEgcnQ9MTAzNDQxMjc4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzQzNjY5MzkKTmEgZGFubiBtYWwgc2NoYXVlbiwgd2llIGxhbmdlIGVzIG5vY2ggZGF1ZXJ0LCBiaXMgYW0KMjcuIERlemVtYmVyIGRpZSBWb3J3ZWlobmFjaHRzemVpdCBhbmZhZW5ndC4uLgoKICBSb2NodXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE9obmUgV29ydGUgOi0pIChNYW5kcmFnb24sIDEyLiBPa3QgMjAwMiwgMTA6NTY6MjQpOgp+IyEgcm49Um9jaHVzIHJ0PTEwMzQ0MTI4ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0MzY2OTM5ClNlaSBmcm9oLCB3ZW5uIER1IGltIERlemVtYmVyIG5vY2ggV2VpaG5hY2h0c21hZW5uZXIga3JpZWdzdCB1bmQgbmljaHQgbWl0Ck9zdGVyaGFzZW4gdm9ybGllYiBuZWhtZW4gbXVzc3QgLi4uCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE9obmUgV29ydGUgOi0pIChCYW1iaSwgMTIuIE9rdCAyMDAyLCAxMDo1NjozOCk6Cn4jISBybj1Sb2NodXMgcnQ9MTAzNDQxMjg4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzQzNjY5MzkKV2VubiBzaWNoICJWb3J3ZWlobmFjaHRzemVpdCIgZGFyYXVmIGJlc2NocmFlbmt0LCBTcGVrdWxhdGl1cyBldGMuIGthdWZlbiB6dQprb2VubmVuLCBoYWIgaWNoIGtlaW4gYWxsenVncm9zc2VzIFByb2JsZW0gZGFtaXQuIFdlbm4gaWNoIHp1bQpXZWlobmFjaHRzbWFubmFtb2tsYXVmYmVzY2hpZXNzZW4gZWluZ2VsYWRlbiB3ZXJkZSwgZGFubiBzb2xsdGVuIHNpY2ggZGllCkthdWZoYWV1c2VyIG1hbCB1ZWJlcmxlZ2VuLCBvYiBzaWUgaWhyZSBnZXNlbGxzY2hhZnRsaWNoZSBWZXJhbnR3b3J0dW5nCnZpZWxsZWljaHQgYmVzc2VyIHdhaHJuZWhtZW4gc29sbHRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE9obmUgV29ydGUgOi0pIChIdW1uaSwgMTIuIE9rdCAyMDAyLCAxNTozMTowMyk6Cn4jISBybj1CYW1iaSBydD0xMDM0NDEyOTk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDM2NjkzOQpHaWJ0cyBzb3dhcyBiZWkgRXVjaCB3aXJrbGljaD8KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBPaG5lIFdvcnRlIDotKSAoQWxwaGEsIDEyLiBPa3QgMjAwMiwgMTU6NTc6MTgpOgp+IyEgcm49QmFtYmkgcnQ9MTAzNDQxMjk5OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzQzNjY5MzkKS2F1ZmhhZXVzZXIgJiBnZXNlbGxzY2hhZnRsaWNoZSBWZXJhbnR3b3J0dW5nIGluIGVpbmVtIFNhdHo/IERhcyB3YXIgZG9jaCBlaGVyCndhcyBmdWVyIFJ1YnJpayBNZWdhc2NobWFycm4sIG9kZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBhbGxlcyBuZXU/IChab29rLCAxMi4gT2t0IDIwMDIsIDE3OjExOjE3KToKfiMhIG9uPVpvb2sgb3Q9MTAzNDQzNTQ3MSBvZz1kLndhbGQKfiMhIHJuPUdvciBydD0xMDM0NDM1NDE1IHJnPWQud2FsZAp+IyEgdGlkPTEwMzQyNjIxOTcKRnJhZyBEZWluZW4gWml2aS4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBhbGxlcyBuZXU/IChNdXBmZWwsIDEyLiBPa3QgMjAwMiwgMTg6NDk6NDcpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMzQ0MzU2Njkgcmc9ZC53YWxkCn4jISB0aWQ9MTAzNDI2MjE5NwpkLnNjaHdhcnp3YWxkPyA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLZWluLVRyZWZmZW4gKExpYXJhLCAxMi4gT2t0IDIwMDIsIDIzOjE1OjQzKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDM0NDU3MjgyIHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwMzQ0NTcyODIKRnVlciBkaWVzZW4gZGVpbmVuIEFydGlrZWwgbXVlc3N0ZSBtYW4gZWluZSBSdWJyaWsgQW50aS1TY2htYXJybiBlcmZpbmRlbiwgc28KdHJhdXJpZyBpc3QgZGVyLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2Vpbi1UcmVmZmVuIChNdXBmZWwsIDEyLiBPa3QgMjAwMiwgMjM6MTc6MTcpOgp+IyEgcm49TGlhcmEgcnQ9MTAzNDQ1NzM0MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzQ0NTcyODIKSGV5LCBkYXMgaXN0IE9ya3RvZXRlci4gV2FzIGVyd2FydGVzdCBEdT8gOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLZWluLVRyZWZmZW4gKE9ya3RvZXRlciwgMTIuIE9rdCAyMDAyLCAyMzoxODoyMSk6Cn4jISBvbj1Pcmt0b2V0ZXIgb3Q9MTAzNDQ1NzI4MiBvZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KR3V0ZSBJZGVlISBOZXR0ZSBSdWJyaWssIG51ciBob2ZmZW50bGljaCBoYWx0ZW4gc2ljaCBkaWUgTGV1dGUgYXVjaCBkcmFuIQoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBTVUdJIGhhdCBEdXJzdCAoQ3JvZnQsIDEzLiBPa3QgMjAwMiwgMjI6MTc6MDUpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMzQ1NDAwNzcgcmc9dHJlZmZlbgp+IyEgdGlkPTEwMzQ1MzcwMTQKU3RlbGx0IHNpY2ggbnVyIG5vY2ggZGllIEZyYWdlIHdpZSBtYW4gbm9jaCBnZXNjaGlja3QgZGFzIFRoZW1hIGF1ZiBkZW4KYmVzdGVuIEVkaXRvciBsZW5rdCA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBTVUdJIGhhdCBEdXJzdCAoQW1hcnlsbGlzLCAxMy4gT2t0IDIwMDIsIDIyOjE4OjI2KToKfiMhIHJuPUNyb2Z0IHJ0PTEwMzQ1NDAyMjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0NTM3MDE0CkVkaXRvcj8gR2lidHMgIGRhIHdhcyBhbmRlcmVzIGF1c3NlciBFbWFjcz8KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBTVUdJIGhhdCBEdXJzdCAoTXVwZmVsLCAxMy4gT2t0IDIwMDIsIDIyOjE5OjQ2KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDM0NTQwMzA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDUzNzAxNApUZXh0cGFkLiBVbnRlciBkZW0gZ3V0ZW4gV2luZG93cyA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBTVUdJIGhhdCBEdXJzdCAoQ3JvZnQsIDEzLiBPa3QgMjAwMiwgMjI6MTk6NDcpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMzQ1NDAzMDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0NTM3MDE0CkdlcnVlY2h0ZXdlaXNlIGphLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFNVR0kgaGF0IER1cnN0IChHcmltbWJvcm4sIDEzLiBPa3QgMjAwMiwgMjI6MjA6NDMpOgp+IyEgb249QW1hcnlsbGlzIG90PTEwMzQ1NDAwNzcgb2c9dHJlZmZlbgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzQ1Mzk5MTcgcmc9dHJlZmZlbgp+IyEgdGlkPTEwMzQ1MzcwMTQKSHVycmEhCgpFbmRsaWNoIGF1ZiBkZXIgT1MtRmxhbWV3YXItU2NoaWVuZSA6LSkpCgpBbWEqLCBvaG5lIFdpbmJsb2VkLCB3YXJ0ZW5kIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogU1VHSSBoYXQgRHVyc3QgKEdyaW1tYm9ybiwgMTMuIE9rdCAyMDAyLCAyMjoyMDo0NSk6Cn4jISBvbj1NdWFkZGliIG90PTEwMzQ1NDAyMDkgb2c9dHJlZmZlbgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMzQ1NDAwNzcgcmc9dHJlZmZlbgp+IyEgdGlkPTEwMzQ1MzcwMTQKTWluaXggcnVsZXouCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogU1VHSSBoYXQgRHVyc3QgKEdyaW1tYm9ybiwgMTMuIE9rdCAyMDAyLCAyMjoyMDo0Nik6Cn4jISBvbj1NdXBmZWwgb3Q9MTAzNDU0MDIyMSBvZz10cmVmZmVuCn4jISBybj1BbWFyeWxsaXMgcnQ9MTAzNDU0MDA3NyByZz10cmVmZmVuCn4jISB0aWQ9MTAzNDUzNzAxNApXaWVzbyBXaW5ibG9lZD8gSWNoIGtvbW0gZGFtaXQgc3VwZXIgYXVzIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFNVR0kgaGF0IER1cnN0IChHcmltbWJvcm4sIDEzLiBPa3QgMjAwMiwgMjI6MjA6NDcpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwMzQ1NDA0MzUgb2c9dHJlZmZlbgp+IyEgcm49TXVwZmVsIHJ0PTEwMzQ1NDAyMjEgcmc9dHJlZmZlbgp+IyEgdGlkPTEwMzQ1MzcwMTQKSWNoIGhhYiB0YXRzYWVjaGxpY2ggZWluIGluc3RhbGxpZXJ0ZXMgV2luZG93cyBYUCBhdWYgZGVtIExhcHRvcCAoYmVpIDMwIEdCCmthbm4gaWNoIG1pciBkYXMgbGVpc3RlbiksIGRhcyB3YXIgYXVjaCBydW5kIDEwIG1pbiBnZWJvb3RldC4gQWxzIGljaCBtZWluZW0KQ2hlZiBiZXNjaHJlaWJlbiBzb2xsdGUgd2llIG1hbiBhdWYgREhDUCB1bXN0ZWxsdC4uLgpBbnNvbnN0ZW4gaGFiZSBpY2ggbWl0bmljaHRlbiBlaW5lbiBmbGFtZXdhciBiZWdvbm5lbiwgaW0gR2VnZW50ZWlsLCBpY2ggaGFiCmphIGF1c2RydWVja2xpY2ggZ2VzY2hyaWViZW4gZGFzcyBpY2ggbmljaHRzIGRhZ2VnZW4gaGFiZSB3ZW5uIER1IHNvd2FzCmJlbnV0enQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBTVUdJIGhhdCBEdXJzdCAoRGVlcGJsdWUsIDE0LiBPa3QgMjAwMiwgMDA6MTg6NDgpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMzQ1NDAzMDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0NTM3MDE0CkVkaXRvciwgbmljaHQgYmV0cmllYnNzeXN0ZW0hCkRlZXAsIHNpY2ggbmVuIHZpIGFscyBNUEEtRWRpdG9yIHd1ZW5zY2hlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogU1VHSSBoYXQgRHVyc3QgKFJvbmRhLCAxNC4gT2t0IDIwMDIsIDAwOjI0OjI2KToKfiMhIHJuPURlZXBibHVlIHJ0PTEwMzQ1NDc3NDQgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDM0NTM3MDE0CkhtIERlZXAqLiBHaWJ0cyBkb2NoIHNjaG9uLiBadW1pbmRlc3QgZXh0ZXJuLiBOZWhtZSBOb3RlcGFkL3ZpL2VtYWNzL3doYXQKZXZlci4gU2NocmVpYmUgQXJ0aWtlbC9GbGFtZS9XaGF0IGV2ZXIuIENvcHkmUGFzdGUgaW4gTVBBLgoKUm9uZGEgKmxpZWJ0IHF1aWNrJmRpcnR5IExvZXN1bmdlbioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE9obmUgV29ydGUgOi0pIChCYW1idWxrbywgMTQuIE9rdCAyMDAyLCAxMToyMjozNik6Cn4jISBybj1Sb2NodXMgcnQ9MTAzNDQxMjUyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzQzNjY5MzkKSXN0IGRvY2ggZ2FyIG5pY2h0cy4gRWluIE5hY2hiYXIgdm9uIHVucyBoYXQgc2Nob24gMiBXZWlobmFjaHN0YmFldW1lIG1pdApMaWNodGVya2V0dGUgaW0gR2FydGVuIHN0ZWhlbi4uLgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBTVUdJIGhhdCBEdXJzdCAoV2lsbG93LCAxNS4gT2t0IDIwMDIsIDExOjEwOjI2KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDM0NTQwMzA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDUzNzAxNApobW1tLi4uIGVtYWNzPyB0b2xsZXMgYmV0cmllYnNzeXN0ZW0gYWJlciBpcmdlbmR3aWUgZmVobHQgZGVyIGVkaXRvciA7LSkKZGFzIFdlaWRlcmwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBTVUdJIGhhdCBEdXJzdCAoRGVlcGJsdWUsIDE1LiBPa3QgMjAwMiwgMTI6MjY6MzgpOgp+IyEgcm49V2lsbG93IHJ0PTEwMzQ2NzMwMjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0NTM3MDE0Ck5hamEsIHNvIHNjaGxpbW0gaXN0IGRhcyBuaWNodC4gRGEgRG9zRW11IHVudGVyIEVtYWNzIGxhZXVmdCBrYW5uIG1hbiBkb2NoCmVkbGluIG5laG1lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBTVUdJIGhhdCBEdXJzdCAoV29vZHksIDE1LiBPa3QgMjAwMiwgMTI6Mjc6MDYpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTAzNDY3NzU5OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzQ1MzcwMTQKV296dSBlZGxpbiB3ZW5uIG1hbiBlZCBoYWJlbiBrYW5uPyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBTVUdJIGhhdCBEdXJzdCAoR3JpbW1ib3JuLCAxNS4gT2t0IDIwMDIsIDEyOjQyOjQyKToKfiMhIHJuPVdvb2R5IHJ0PTEwMzQ2Nzc2MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0NTM3MDE0CkljaCBzZWhlIHNjaG9uLCB3aXIgYnJhdWNoZW4gZWluZSBSdWJyaWsgInNhZG9tYXNvY2hpc211cyIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLaW5kZXItVGVzdCAoR2xvaW5zb24sIDE1LiBPa3QgMjAwMiwgMTQ6NTA6MTgpOgp+IyEgcm49QW50aGVhIHJ0PTEwMzQ2ODU1MjUgcmc9d2l0emUKfiMhIHRpZD0xMDM0Njg1NTI1ClNQSUVMWkVVRy1URVNUOgogQWx0ZXJuYXRpdiBiZWtvbW10IGRhcyBLaW5kIGVpbiBlaWdlbmVzIFppbW1lciB1bmQgbXVlbGx0IGRhIGFsbGVzIHZvbGwuCiBIYXQgYmVpIG1pciBhdWNoIGlyZ2VuZHdpZSBnZWtsYXBwdC4gRGllIG5vZXRpZ2UgV29obnVuZyBtdXNzIG1hbiBkYW5uCiBzY2hvbiBtaWV0ZW4uCkVJTktBVUZTLVRFU1Q6CiBBbHRlcm5hdGl2IGVyemllaHQgbWFuIGRhcyBLaW5kIGluIGVpbmVtIExhbmQgbWl0IFBsYW53aXJ0c2NoYWZ0LCBkYXNzCiBrZWluZW4gV2VydCBhdWYgbWF4aW1hbGVuIEtvbnN1bSBsZWd0LiBEZXNoYWxiIGdpYnQgZXMgZG9ydCBlaW5lIGdhbnoKIGJlZ3Jlbnp0ZSBTdWVzc2lna2VpdGVuYWJ0ZWlsdW5nLCBkZXIgbWFuIGdlc2NoaWNrdCBhdXMgZGVtIFdlZyBnZWhlbgoga2Fubi4gRGVuIFVtenVnIG5hY2ggS3ViYSwgTm9yZGtvcmVhIG9kZXIgV2Vpc3NydXNzbGFuZCBtdXNzIG1hbiBzY2hvbgogc2VsYnN0IG9yZ2FuaXNpZXJlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc28gbG9ja3QgbWFuIGhldXRlIGRpZSBIeWRyYS4uLiAoRGFya3dpbmcsIDE1LiBPa3QgMjAwMiwgMjI6MDE6MjgpOgpSb2xhbmQgcnVmdDogU2NoYXR6aQpNYWhhcmV0IHJ1ZnQ6IExpZWJsaW5nIQpEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KCmR1aC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdGF0aSBPcnRzdmVybGFnZXJ1bmcgKFJvbmRhLCAxNi4gT2t0IDIwMDIsIDAwOjM5OjMxKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTAzNDY5ODM3MSByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDM0Njk4MzcxClVwcy4uLiBTY2hsaWVzc3VuZyBlaW5lciBNRy1TdGF0aWtuZWlwZT8gZmluZ2VyIE1lc2lyaWkuIEVzIGdlaHQgdW0gRHJlc2Rlbi4KQWhhLiBBbHNvIGtvZW5uZW4gbmljaHQgbnVyIE11ZW5zdGVyYW5lciBNdWRkZXIgS25laXBlbiB0b2V0ZW4uLi4gS2FubiBtaXIgbWFsCmJpdHRlIG5lbiBCV0wnbGVyIHBsYXVzaWJlbCAoPXZlcnN0YWVuZGxpY2gpIGVya2xhZXJlbiwgd2FydW0gcmVnZWxtYWVzc2lnCmF1ZnRhdWNoZW5kZSBNdWRkZXIgS25laXBlbiBydWluaWVyZW4ga29lbm5lbiwgb2J3b2hsIHNpZSBtZWlzdCBmdWVyIHZlcmZsaXh0CmhvaGVuIFVtc2F0eiBzb3JnZW4/IExpZWd0IGRhcyBhbiBkZXIgbWFuZ2VsbmRlbiBMaXF1aWRpdGFldCB3ZWdlbiBFaW5rYXVmCmhvaGVyIENvbGEtIHVuZCBCaWVybWVuZ2VuIGpld2VpbHMgYW4gZWluZW0gVGFnIGltIE1vbmF0PwoKUm9uZGEgKmhhdHRlIGVoZXIgZGFtaXQgZ2VyZWNobmV0LCBkYXNzIE11ZGRlciBnb2xkZW5lIFN0YW1tdGlzY2gtU2NoaWxkZXIKYmVrb21tZW4qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFN0YXRpIE9ydHN2ZXJsYWdlcnVuZyAoR2xvaW5zb24sIDE2LiBPa3QgMjAwMiwgMDA6NDI6MzkpOgp+IyEgcm49Um9uZGEgcnQ9MTAzNDcyMTU3MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzQ2OTgzNzEKRGVyIENEIGlzdCBlaW4gZ2VtZWlubnVldHppZ2VyIFZlcmVpbi4gRGVyIHJ1aW5pZXJ0IHNpY2ggaG9lY2hzdGVucyBzZWxic3QuCkRhenUgbXVzcyBlciBzY2hvbiBzZWhyIHBoYW50YXNpZXZvbGwgdm9yZ2VoZW4uIFNjaGFldHplIGRpZSBtYWNoZW4gaWhyZQphbGxqYWVocmxpY2hlIG5vZXRpZ2Ugd2VpbCBudXIgZWlubWFsIHN0YXR0ZmluZGVuZGUgUHV0emFrdGlvbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3RhdGkgT3J0c3ZlcmxhZ2VydW5nIChSb25kYSwgMTYuIE9rdCAyMDAyLCAwMDo0NDowMSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDM0NzIxNzU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDY5ODM3MQpEYXMgYmVkZXV0ZXQsIGRhc3MgYmVpIGRlbmVuIGRpZSBQb21tZXMgdW5kIGRlciBFaW50b3BmIHVlYmVyIGRpZSB6d29lbGYKTW9uYXRlIGltbWVyIGFyb21hdGlzY2hlciB3ZXJkZW4/CgpSb25kYSAqdWVyZ3NlbmQqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3RhdGkgT3J0c3ZlcmxhZ2VydW5nIChHbG9pbnNvbiwgMTYuIE9rdCAyMDAyLCAwMDo0NjowNyk6Cn4jISBybj1Sb25kYSBydD0xMDM0NzIxODQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDY5ODM3MQpOZSwgZGllIGhhYmVuIGtlaW5lIGVpZ2VuZSBHYXN0cm8sIGJyYXRlbiBudXIgZnVlciAnbmUgUGFydHkgbWFsIFNjaG5pdHplbApvZGVyIGdhciBMZWJlcmthZXNlLiBBYmVyIGltbWhlcmluIGhhdCBkYXMgZGVuIFZvcnRlaWwgZGFzcyBEaWNoIGtlaW5lciBib2VzZQphbnNjaGF1dCB3ZW5uIER1IGVpbmUgUGl6emEgaW4gUGFydHlncm9lc3NlIGluIGRlbiBDRCBiZXN0ZWxsc3QuClN0dWRlbnRlbmtsdWJzIHNpbmQgd2FzIGZlaW5lcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFN0YXRpIE9ydHN2ZXJsYWdlcnVuZyAoU25pcGVyLCAxNi4gT2t0IDIwMDIsIDAwOjQ3OjU2KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMzQ3MjE5Njcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0Njk4MzcxCkF1c3NlcmRlbSBpc3QgZXIgYXVjaCBnYXIgbmljaHQgZ2VzY2hsb3NzZW4sIGRpZSByZW5vdmllcmVuIG51ci4gSGF0dGVuIHdvaGwKYXVjaCBlaW4gcGFhciBQcm9ibGVtZSBtaXQgZGVtIEhvY2h3YXNzZXIsIGFmYWlrIGlzdCB3b2hsIGRhcyBQYXJrZXR0CmhvY2hnZWtvbW1lbi4gRGVyIG5hZWNoc3RlIFN0YXRpIHdpcmQgYWxzbyB3b2hsIHdpZWRlciBpbSBndXRlbiBhbHRlbiBDRApzdGF0dGZpbmRlbiBrb2VubmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU3RhdGkgT3J0c3ZlcmxhZ2VydW5nIChBbnRoZWEsIDE2LiBPa3QgMjAwMiwgMTE6MTk6MTApOgp+IyEgcm49U25pcGVyIHJ0PTEwMzQ3MjIwNzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0Njk4MzcxCkBSb25kYTogRGllIFNjaGxpZXNzdW5nIHNvbGNoZXIgS25laXBlbiBrb2VubnRlIGFiZXIgYXVjaCBtaXQgZGVtIHN0YXJrCmFuZ2VzY2hsYWdlbmVuIE5lcnZlbmtvc3R1ZW0gZGVyIEJldHJlaWJlciB6dXNhbW1lbmhhZW5nZW4uIE5pY2h0IGplZGVyCnZlcmtyYWZ0ZXQgbWVociBhbHMgMyBNdWRkZXIgZ2xlaWNoemVpdGlnIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTdGF0aSBPcnRzdmVybGFnZXJ1bmcgKEFtYXJ5bGxpcywgMTYuIE9rdCAyMDAyLCAxMjo1MzozOSk6Cn4jISBybj1BbnRoZWEgcnQ9MTAzNDc1OTk1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzQ2OTgzNzEKRWJlbi4gSWNoIGthbm4gbWljaCBhdWNoIGFuIFN0YXRpJ3MgZXJpbm5lcm4sIGFuIGRlbmVuIGRpZSBUaXNjaGUgdW0gdW5zIGhlcnVtCmxlZXIgYmxpZWJlbiwgd2VpbCBtYW4gdm9uIGRlciBkb3J0IHNpdHplbmRlbiBNZXV0ZSBudXIgVXJsYXV0ZSB3aWUgIm1ldHplbG4iCnUuYWUuIGdlaG9lcnQgaGF0IDotKQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU3RhdGkgT3J0c3ZlcmxhZ2VydW5nIChGb29iYXIsIDE2LiBPa3QgMjAwMiwgMTM6MTE6MjApOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwMzQ3NjU2MTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0Njk4MzcxCkVyd2FlaG50ZSBpY2ggZWlnZW50bGljaCBzY2hvbiBkYXNzIGRhcyAiQWxhYmFtYSIgYXVmIGRlciBBZWdpZGlpc3RyLiwgaW4gZGVtCndpciBhdWNoIGFiIHVuZCB6dSBtYWwgenUgR2FzdCB3YXJlbiwgaW0gRnJ1ZWhqYWhyIGdlc2NobG9zc2VuIHd1cmRlPwoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTdGF0aSBPcnRzdmVybGFnZXJ1bmcgKENhdHdlYXpsZSwgMTYuIE9rdCAyMDAyLCAxMzoyNTo1NCk6Cn4jISBybj1Gb29iYXIgcnQ9MTAzNDc2NjY4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzQ2OTgzNzEKV2FzIGphIG5pY2h0cyBoZWlzc3QuICJBbGFiYW1hIiBoZWlzc3QgamV0enQgIkRhIENhcG8iLCBkYSBnaWJ0cyBqZXR6dApzdWVkYW1lcmlrYW5pc2NoZSBLdWVjaGUuCgpZVEMgKG5vY2ggbmllIGRhIGdld2VzZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU3RhdGkgT3J0c3ZlcmxhZ2VydW5nIChNb3Jnb3RoLCAxNi4gT2t0IDIwMDIsIDEzOjI5OjIyKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDM0NzY3NTU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDY5ODM3MQpJbSBBbGFiYW1hIGdhYnMgZG9jaCBpbW1lciBzbyBodWVic2NoZSBTY2huZWNrZW4uLi5hZWggbGVja2VyZSBCZWRpZW51bmdlbiBvZWgKb2RlciBzbyA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyA6KSAoTW9yZ290aCwgMTcuIE9rdCAyMDAyLCAwNzozNDo1MCk6CltTZWhlcjpKZWhvdmFdIGthbm4gbWlyIHdlciBiZWkgZGVyIGh5ZHJhIGhlbGZlbj8gbmV0IGRhc3MgZGllIHdpZWRlciBhYmhlYnQKW1NlaGVyOkplaG92YV0gOiggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkVzIHNpbmQgbnVyIG5vY2ggNSBTdHVuZGVuIGJpcyB6dXIgRXdpZ2tlaXQuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApbVG9kOkxhcnNdIEVpbiBIeWRyYWtvcGYgaGF0IGdlcmFkZSBKZWhvdmEgdW1nZWJyYWNodC4KW1RvZDpFaW4gSHlkcmFrb3BmXSBoc3Nzc3NzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCkRpZSBIeWRyYSBlcmhlYnQgc2ljaCBhdXMgZGVtIFRhbCBkZXIgTHVwaW5lbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgOikgKEplaG92YSwgMTcuIE9rdCAyMDAyLCAxMzozODo1MCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwMzQ4MzI4OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0ODMyODkwCkJpc3QgamEgbnVyIG5laWRpc2NoLCB3ZWlsIERlaW5lIE9ya3MgbWljaCBsYW5nZSBuaWNodCBtZWhyIGVyd2lzY2h0IGhhYmVuIDopCgpKKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NocmVjayBiZWtvbW1lbj8gKERlZXBibHVlLCAxNy4gT2t0IDIwMDIsIDE3OjQyOjU0KToKVW5nZWt1ZXJ6dDoKW01vZXJkZXI6R2Vpc3QgZWluZXIgV2FjaGVdIENha2V5LCB3YWVyIGpldHp0IG5pY2h0IGVpZ2VudGxpY2ggVm9ybGVzdW5nPwpbTW9lcmRlcjpDYWtleV0gS2FubiBzZWluLCB3ZWlzcyBuaWNoCkVyd2FydGV0IChvZmZsaW5lKTogQ2FrZXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTZWhlcmhhZXVzZXIgKExpYXJhLCAxNy4gT2t0IDIwMDIsIDIwOjM4OjIwKToKfiMhIHJuPVpvb2sgcnQ9MTAzNDg2NDcwNCByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTAzNDg2NDcwNApXZXIgaGF0IGRhbWFscyBnZXdvbm5lbj8KCkljaCBnbGF1YmUsIGljaCBoYWJlIGFscyBpY2ggYW5maW5nIG1hbCBpbiBSeW5lcyBIYXVzIGVpbmVuICdadCcgZ2VmdW5kZW4uIDstKQpMaWFyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGUuYWx0Lm5ldGRpZ2VzdCAtIGFnYWluLiAoUm9uZGEsIDIwLiBPa3QgMjAwMiwgMDA6Mzk6NDYpOgpOZXdzZ3JvdXBzOiBkZS5hbHQucmVjb3Zlcnkud2ViYXV0aG9yCk1lc3NhZ2UtSUQ6IDwzNmYzZGY3OS45ZGMwLjNiNzRAUkFJTkVSLkJJTEtJTkZPLmRlPgpGcm9tOiByLmtlcnN0ZW5AQklMS0lORk8uZGUgKFJhaW5lciBLZXJzdGVuKQpTdWJqZWN0OiBCb21tZWwKRGF0ZTogV2VkLCAxNiBPY3QgMjAwMiAxNzo0NzoxNCArMDIwMAoKVGFjaCB6dXNhbW1lbiEKCkljaCBoYWJlIGdlcmFkZSBkZW4gb2Jza3Vyc3RlbiBBbnJ1ZiBhbGxlciBaZWl0ZW4gd2VnZW4gCm1laW5lciBXV1ctU2VpdGVuIGhpbnRlciBtaXIuIFdvbGx0ZSBpY2ggRXVjaCBhdWYga2VpbmVuIEZhbGwgCnZvcmVudGhhbHRlbi4gOi0pKSkKCi5hbnJ1ZmVyIHtzb3VuZDpmYWxzZXR0IHdlaW5lbmQ7IGRpYWxlY3Q6c2FjaHNvbmlhbiBicmlnaHQ7fT4KLmljaCB7ZGlhbGVjdDpyaGVpbmlzY2ggbGlnaHQ7IGNvbmRpdGlvbjp2ZXJibHVlZmZ0OyBhY3Rpb246cm90Zmw7fQoKPG1vZGUgaGFyZHdhcmU9InBob25lIiBwcm90b2NvbD0iZGlhbG9nIiBzcmM9ImdlZGFjaHRuaXMiIApxdWFudGl0eT0ic2hvcnRlciI+CgpBbnJ1ZmVyOiBHdXRlbiBUYWcsIG1laW4gTmFtZSBpc3QgQm9tbWVsLiBJY2ggcnVmZSBhbiB3ZWdlbiAKZGVyIE5lYmVud2lya3VuZ2VuLgoKSWNoOiA/Pz8KCkE6IEphLCB3ZWdlbiBkZW0gVGVlLgoKSTogVGVlPz8/CgpBOiBKYSwgZGVyIEZyYXVlbnRlZS4gV2FzIG1hY2ggaWNoIGRlbm4gamV0enQ/CgpJOiBEaWVzZXIgImF5dXJ2ZWRpc2NoZSBGcmF1ZW50ZWU/IgoKPCEtLSBodHRwOi8vd3d3LmdlbXVlc2VraXN0ZS1iaWxrLmRlL2thdGFsb2cvdGVlLmh0bWwgLS0+CgpBOiBKYS4gU2llIGtvZW5uZW4gZG9jaCBuaWNodCBlaW5mYWNoIHNvIGVpbmVuIFRlZSB2ZXJrYXVmZW4uIApGcnVlaGVyIG11c3N0ZSBtaWNoIG1laW5lIEZyYXUgenVtIEVpbmthdWZlbiBwcnVlZ2VsbiwgaGV1dGUgCmlzc2VzIHVtZ2VrZWhydCEKCkk6IE9LLCB3ZWxjaGVyIFJhZGlvc2VuZGVyIGlzIGRhdCBqZXR6PwoKQTogTWVpbiBOYW1lIGlzdCBCb21tZWwuIFVuZCBpY2ggaGFiZSB2b3IgdmllciBXb2NoZW4gYmVpIApJaG5lbiB6d2VpIFBhY2t1bmdlbiB2b24gZGllc2VtIFRlZSBnZWthdWZ0IG1pdCBtZWluZXIgRnJhdS4gVW5kIGRlbiAKdHJpbmsgaWNoIGpldHp0IG1pdC4gVW5kIHNlaXRkZW0gPHNjaGx1Y2h6IC8+IC4uLgoKSTogSmEuLi4/CgpBOiBJY2ggaGFiIGtlaW5lbiBVZWJlcmJsaWNrIHVlYmVyIG1laW5lIEVpbmthZXVmZSBtZWhyISAKR2VzdGVybiBzY2hvbiB3aWVkZXI6IDMgUGFhciBTY2h1aGUsIDYgVC1TaGlydHMgLi4uIEZydWVoZXIgCndhciBpY2ggZWluIEFzcyBpbSBFaW5rYXVmZW4uIEpldHp0IHNpdHogaWNoIG51ciBub2NoIHZvcm0gCktsZWlkZXJzY2hyYW5rIHVuZCBoZXVsISBOdXIgd2VnZW4gSWhyZW0gVGVlIQoKSTogV2VnZW4gZGVtIFRlZSBiZXN0aW1tdCBuaWNodC4KCkE6IFdhcyBpc3QgZGVubiBkYSBkcmluPwoKSTogRGF0IHN0ZWh0IGRyYXVmLgoKQTogSmEsIHNhZ2Vuc2UgZG9jaG1hIQoKSTogRGF0IHN0ZWh0IGRvY2ggZHJhdWYuIEd1Y2tlbnNlIGRvY2ggZWluZmFjaCBtYSBhdWYgZGllIApQYWNrdW5nIQoKQTogSWNoIGhhYiBncmFkIGtlaW5lIHp1ciBIYW5kLi4uCgpJOiBTY2hhZGUuIFVuZCBmdWVyIHdlbGNoZW4gUmFkaW9zZW5kZXIgbWFjaGVuIFNpZSBkYXM/CgpBOiA8c2NobHVjaHo+TmVpbiwgd2lya2xpY2ghIEljaCBiaW4gc2Nob24gZ2FueiAKbWVsYW5jaG9saXNjaCBnZXdvcmRlbi4gVW5kIHppY2tpZyEgUmljaHRpZyB6aWNraWchIEljaCAKYmVuZWhtZSBtaWNoIHdpZSBlaW5lIEZyYXUhPC9zY2hsdWNoej4gSGFiZW4gU2llIGRhcyBkZW5uIG5pY2h0PwoKSTogQmlzaGVyIG5pY2h0LgoKQTogVHJpbmtlbiBTaWUgZGVuIFRlZSBkZW5uIGF1Y2g/CgpJOiBJY2ggaGFiIGRlbiBhdWNoIHNjaG9uIGdldHJ1bmtlbi4gVW5kIG5peCBkZXJnbGVpY2hlbiAKZmVzdGdlc3RlbGx0LiBEZXIgd2FyIGVpbmZhY2ggbnVyIGxlY2tlci4KCkE6IEphLCBsZWNrZXIsIGFsc28gdm9tIEdlc2NobWFjaywgaXNzZXIgamEuIFVuZCBlcyBoYXQgc2ljaCAKbm9jaCBuaWVtYW5kIGRlc3dlZ2VuIGdlbWVsZGV0PwoKSTogTm9lLiBEYXZvbiBpc3QgbWlyIG5peCBiZWthbm50IHVuZCBpY2ggZ2xhdWJlIGRhcyBhdWNoIApuaWNodC4gSWNoIGdlaGUgaW1tZXIgbm9jaCB2b24gZWluZW0gVWxrLUFucnVmIGF1cy4gV2VyIHNpbmQgClNpZSBkZW5uIGpldHp0IHdpcmtsaWNoPwoKQTogTWVpbiBOYW1lIGlzdCBCb21tZWwuIFVuZCBpY2ggaGFiZSB2b3IgdmllciBXb2NoZW4gZGllc2VuIApUZWUgYmVpIElobmVuIGdla2F1ZnQsIHVuZCBzZWl0ZGVtIGdlaHRzIG1pciBkcmVja2lnISBXYXMgCnNvbGwgaWNoIGRlbm4gbWFjaGVuPwoKSTogR2VobnNlIHp1bSBBcnp0IQoKQTogV2FzIG1pc2NoZW4gU2llIGRlbm4gaW4gZGllc2VuIFRlZT8KCkk6IE5peC4gSWNoIHZlcmthdWYgZGVuIHNvLCB3aWUgaWNoIGRlbiBrYXVmZS4KCkE6IEFiZXIgZGEgbXVlc3NlbiBkb2NoIEhvcm1vbmUgZHJpbiBzZWluISBJY2ggaGFiIHNjaG9uIApLb2VyYmNoZW5ncm9lc3NlIDcwIQoKSTogR2xhdWJpY2huaWNoLiBVbmQgd2VubiBTaWUgc28gaW50ZXJlc3NhbnRlIFdpcmt1bmdlbiBiZWkgCnNpY2ggdmVyc3B1ZXJlbiwgZGFubiBnZWhvZXJlbiBTaWUgenVtIEFyenQuIE9kZXIgaW5zIFJhZGlvLiAKV2VsY2hlciBTZW5kZXIgd2FyIGRhcyBub2NoPwoKQTogTmVpbiwgd2lya2xpY2guIDxzY2hsdWNoej5JY2ggYmluIGdhbnogdmVyendlaWZlbHQuIEljaCAKaGF0dGUgc293YXMgdm9yaGVyIG5pZS48L3NjaGx1Y2h6PgoKSTogTWFjaGVuc2UsIGRhc3NlIHp1bSBBcnp0IGtvbW1lbiEgRWdhbCwgd29oZXIgZGFzIGtvbW10LCAKZGVyIFRlZSBpc3NlcyBzb3dpZXNvIG5pY2h0LiBHZWhuc2UgenVtIEFyenQhCgpBOiBTYWdlbnNlbWE6IEhhbW1zZSBkYXMgYXVjaCwgZGFzcyBTaWUgZGF1ZXJuZCBTY2h1aGUga2F1ZmVuIAptdWVzc2VuPwoKSTogTm9lLCBhYmVyIGljaCBzb2xsdGUgd29obCBvZWZ0ZXIgUmFkaW8gaG9lcmVuLgoKICA8bW9kZSBjbGFzcz0ibXVzaWsiIHNyYz0iamluZ2VsIiAvPgoKSTogV3Vzc3RpY2hzZG9jaC4gOi0pKSkKCiguLi4pCjwvbW9kZT4KCldpciBoYWJlbiB1bnMgZHJhdWYgZ2VlaW5pZ3QsIGRhc3MgZXIgbWVpbmUgRnJhZ2VuIG5hY2ggZGVtIApTZW5kZXIgcmF1c25pbW10LCB1bmQgZGFzIHNlbmRlbiBkYXJmLiA6LSkpKQoKR3J1c3MgUmFpbmVyLAppbW1lciBub2NoIGtpY2hlcm5kCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZHVoIChQaXRmYWxsLCAyMC4gT2t0IDIwMDIsIDAzOjI0OjQwKToKQnJvdG5hZWwgcnVmdDogQlJSUlJSUlJSUlJSUlJSUlIhISEgU0NITlVSUlNDSE5VUlJTQ0hOVVJSU0NITlVSUiEhIDopCkRhcyBHZWZ1ZWhsLCBqZW1hbmRlbiB1bWJyaW5nZW4genUgbXVlc3NlbiwgdmVyc3RhZXJrdCBzaWNoLiBWZXJ6d2VpZmVsdCB1bmQKcGFuaXNjaCBlcmtlbm5zdCBEdSwgZGFzcyBlaW5lIHVuZ2xhdWJsaWNoZSBCbHV0bHVzdCBEaWNoIGVyZ3JpZmZlbiBoYXQuCkRlaW4gVmVyc3RhbmQgc2Nod2luZGV0LCB1bmQgZXMgZ2lidCBudXIgbm9jaCBlaW5lczogVCBPIEUgVCBFIE4gISEhIQoKd2FzIHNvbGwgbWFuIGF1Y2ggYW5kZXJlcyBkZW5rZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldGRpZ2VzdCBtYWwgd2llZGVyIChHcmltbWJvcm4sIDIwLiBPa3QgMjAwMiwgMTk6MjE6NTQpOgpGcm9tOiAiUm9iZXJ0byBOZXVnZWJhdWVyIiA8Y2hyaXN0aW4ucm9iZXJ0b0B0LW9ubGluZS5kZT4gCk5ld3Nncm91cHM6IGRlLmNvbW0uaW50ZXJuZXQucm91dGluZyAKU3ViamVjdDogUmU6IFJvdXRlciBpbSBOZXR6d2VyayAKRGF0ZTogVHVlLCAxNSBPY3QgMjAwMiAxMDo1NzoxNSArMDIwMCAKTWVzc2FnZS1JRDogPGFvZ2w4cSQ2OGokMDAkMUBuZXdzLnQtb25saW5lLmNvbT4gCiAKSGFsbG8gTHV0eiwgCiAKRGFua2UgZnVlciBEZWluZW4gVGlwcHMuIEVzIGtsYXBwdCBqZXR6dCBhbGxlcyBiZXN0ZW5zLiAKIApHcnVzcyBSb2JlcnRvIAogCiJMdXR6IERvbm5lcmhhY2tlIiA8bHV0ekBpa3MtamVuYS5kZT4gc2NocmllYiBpbSBOZXdzYmVpdHJhZyAKbmV3czpzbHJuYXFicW9rLmNkci5sdXR6QGJlbGVudXMuaWtzLWplbmEuZGUuLi4gCj4gKiBSb2JlcnRvIE5ldWdlYmF1ZXIgd3JvdGU6IAo+ID5LYW5uc3QgRHUgbWlyIGVpbmVuIFRpcHAgZ2ViZW4sIHdpZSBpY2ggZGFzIG1hY2hlLiAKPiAKPiBSVEZNLiAKPiAKPiA+TXVzcyBpY2ggaW0gUm91dGVyIE1lbnVlIG5vY2ggRWluc3RlbGx1bmdlbiB2b3JuZWhtZW4/IAo+IAo+IEphLiAKIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFdmVudHVlbGwgc2Nob24gYWVsdGVyIC0gYWJlciBiZWkgQWxkaSBnaWJ0J3Mgc2Nob24gV2VpaG5hY2h0c2dlYmFlY2suLi4gKFJvbmRhLCAyMC4gT2t0IDIwMDIsIDIyOjI5OjA3KToKLi4uIGtsYXIsIGRlLmFsdC5uZXRkaWdlc3QuLi4KCkZyb206IERpZXRtYXIgSi4gSGFybXMgPGhhcm1zQHdlYi5kZT4KTmV3c2dyb3VwczogZGUuZXRjLmZpbmFuei5iYW5rZW4rYnJva2VyClN1YmplY3Q6IHdhcjogUHVyY2hhc2luZyBqZXR6dDogWC1NYXMKTWVzc2FnZS1JRDogPDA0NXJxdXNpdjFiNGpnMWh1ajM4dHEzamQ4YzUyOW0ydXBANGF4LmNvbT4KCk1vaW4gTW9pbiwKClN0YXR1czoKV2llIFdlaWhuYWNodGVuIDAxIGltIEludGVybmV0IGdlemVpZ3QgaGF0LCBoZWlzc3QgV2VpaG5hY2h0ZW4gbmljaHQKbWVociBXZWlobmFjaHRlbiwgc29uZGVybiBYLW1hcywgYWxzbyBtdXNzIGRlciBXZWlobmFjaHRzbWFubiBhdWNoClgtbWFuIHNlaW4hIERhIFgtbWFzIDIwMDIgcXVhc2kgc2Nob24gdm9yIGRlciBUdWVyIHN0ZWh0LCBpc3QgZXMKc3BhZXRlc3RlbnMgc2VpdCBTZXB0ZW1iZXIgaG9lY2hzdGUgWmVpdCBtaXQgZGVyIFdlaWhuYWNodHN2b3JiZXJlaXR1bmcKenUgYmVnaW5uZW4gLSBWZXJ6ZWlodW5nOiBkYXMgZGllc2phaHJpZ2UgV2VpaG5hY2h0cy1Sb2xsLU91dCB6dQpzdGFydGVuIHVuZCBkaWUgQ2hyaXN0bWFzLU1haWxpbmctQWt0aW9uIGp1c3QgaW4gdGltZSB2b3J6dWJlcmVpdGVuLgoKSGlud2VpczogCkRpZSBLaWNrLW9mZi1WZXJhbnN0YWx0dW5nIChmcnVlaGVyIDEuIEFkdmVudCkgZnVlciBkYXMgZGllc2phZWhyaWdlClNBTkNST1MgKFNBTnRhIENsYXVzIFJPYWQgU2hvdykgZmluZGV0IGVyc3QgYW0gMS4gRGV6ZW1iZXIgMjAwMiBzdGF0dC4KRGFoZXIgd3VyZGUgZGFzIG9mZml6aWVsbGUgQ29tZS1Ub2dldGhlciBkZXMgT3JnYW5pemluZyBDb21taXR0ZWVzCnVudGVyIFZvcnNpdHogZGVzIENJTyAoQ2hyaXN0bWFzIElsbHVtaW5hdGlvbiBPZmZpY2VyKSBzY2hvbiBhbSA2LgpKYW51YXIgYWJnZWhhbHRlbi4gRXJzdG1hbHMgaGFiZW4gd2lyIGVpbiBQcm9qZWt0c3RhdHVzLU1lZXRpbmcKdm9yZ2VzY2hhbHRldCwgYmVpIGRlbSBlaW5lIGluIFdvcmtzaG9wcyBlbnR3aWNrZWx0ZSAiVG8tRG8tTGlzdGUiIHVuZAplaW5oZWl0bGljaGUgSm9iIERlc2NyaXB0aW9ucyBlcnN0ZWxsdCB3dXJkZW4uIERhZHVyY2ggc29sbGVuIGtsYXJlClZlcmFudHdvcnR1bmdzYmVyZWljaGUsIGVpbmUgcG93ZXJ2b2xsZSBQZXJmb3JtYW5jZSBkZXMgRXZlbnRzIHVuZApvcHRpbWllcnRlIEdpdmUtQXdheS1BbGxvY2F0aW9uIGdlc2NoYWZmZW4gd2VyZGVuLCB3YXMgd2llZGVydW0gZGVuClNlcnZpY2UtTGV2ZWwgZXJob2VodCB1bmQgYXVzc2VyZGVtIGhpbGZ0LCAiWC1tYXMiIGFscyBCcmFuZG5hbWUgZ2xvYmFsCnp1IGltcGxlbWVudGllcmVuLgoKRGllc2VzIE1lZXRpbmcgZGllbnQgenVnbGVpY2ggZGF6dSwgbWl0IGRlbSBDby1IZWFkIEdsb2JhbCBDaHJpc3RtYXMKTWFya2V0cyAoS25lY2h0IFJ1cHJlY2h0KSBkaWUgQWJsYXVmLU9yZ2FuaXNhdGlvbiBhYnp1c3RpbW1lbiwgZGllCkdpdmUtQXdheS1EaXN0cmlidXRpb24gYW4gZGllIHp1c3RhZW5kaWdlbiBQcml2YXRlLVNjaGVua2luZy1DZW50ZXJzCnNpY2hlcnp1c3RlbGxlbiB1bmQgZGllIFppZWxncnVwcGVuIGtsYXIgenUgZGVmaW5pZXJlbi4KRXJzdG1hbHMgc29sbGVuIGF1Y2ggc29nZW5hbm50ZSBHZXNjaGVuay1Vbml0cyB1ZWJlciBkYXMgSW50ZXJuZXQKYW5nZWJvdGVuIHdlcmRlbi4gVmlhIFRydXN0ZWQgVGhpcmQgUGFydGllcyBiZWkgZWluZW0gVGhpcmQtClBhcnR5LVByb2Nlc3NvciBkYXJmIG1hbiBkYW5uIG1pdCBlaW5lciBQdXJjaGFzaW5nIENhcmQgZGllCkdlc2NoZW5rLVVuaXRzIGJlemFobGVuLgpEaWUgU2VydmljZS1Qcm92aWRlciAoRW5nZWwsIEVsZmVuIHVuZCBSZW50aWVyZSkgd3VyZGVuIGJlcmVpdHMgdmlhCkNvbmZlcmVuY2UgQ2FsbCB2aXJ0dWVsbCBpbmZvcm1pZXJ0IHVuZCBkaWUgQ29yZS1Db21wZXRlbmNlcyB2ZXJnZWJlbi4KRWluIEJ1ZW5kZWwgdm9uIEluY2VudGl2ZXMgdW5kIGVpbiBzZXBhcmF0ZXIgVGVhbS1CdWlsZGluZy1FdmVudCBhbgpnZWVpZ25ldGVyIExvY2F0aW9uIHNvbGxlbiBkZW4gTW90aXZhdGlvbnNsZXZlbCBlcmhvZWhlbiB1bmQKZ2xlaWNoemVpdGlnIGhlbGZlbiwgZWluZSBlaW5oZWl0bGljaGUgQ29ycG9yYXRlIEN1bHR1cmUgc2FtdCBJZGVudGl0eQp6dSBlbnR3aWNrZWxuLgoKRGVyIFZvcnNjaGxhZywgamVkZW0gRW5nZWwgZWluZW4gQ29hY2ggenVyIFNlaXRlIHp1IHN0ZWxsZW4sIHd1cmRlIGF1cwpCdWRnZXRncnVlbmRlbiB6dW5hZWNoc3QgZ2VjYW5jZWx0LiBTdGF0dCBkZXNzZW4gd3VyZGUgYXVmIGVpbmVyCnp1c2FldHpsaWNoZW4gQ2xpZW50IE1hbmFnZW1lbnQgQ29uZmVyZW5jZSBiZXNjaGxvc3NlbiwgaW4gZWluZW0KVGVzdGJlemlyayBhbHMgUGlsb3Rwcm9qZWt0IGVpbmUgSG90bGluZSAoMCwzIGMgLyBNaW51dGUgVGFsa2xpbmUpIGZ1ZXIKa3VyemZyaXN0aWdlIFdlaWhuYWNodHN3dWVuc2NoZSwgc29ycnkgWC1tYXMgUmVxdWlyZW1lbnRzLAplaW56dXJpY2h0ZW4sIHVtIGRlbiBBZGRlZCBWYWx1ZSBmdWVyIGRpZSBCZXNjaGVua3RlbiB6dSBlcmhvZWhlbi4KCkR1cmNoIGVpbiBhdXNnZWtsdWVnZWx0ZXMgTWFuYWdlbWVudCBJbmZvcm1hdGlvbiBTeXN0ZW0gKE1JU3QpIGlzdCBhdWNoCkJlbmNobWFyay1vcmllbnRpZXJ0ZXMgQ29udHJvbGxpbmcgZnVlciBqZWRlcyBQcml2YXRlLVNjaGVua2luZy1DZW50ZXIKbW9lZ2xpY2guIE5hY2hkZW0gZWluIG5ldWVzIExpdGVyYXR1ci1Lb256ZXB0IHVuZCBkYXMgTGF5b3V0LUZvcm1hdCB2b24KZXh0ZXJuZW4gQ29uc3VsdGFudHMgZGVmaW5pZXJ0IHd1cmRlLCBrb25udGUgYXVjaCBzY2hvbiBkYXMKZGllc2phZWhyaWdlIEdvbGRlbmUgQnVjaCAoR29sZGVuIEJvb2sgUmVsZWFzZSAyLjEpIGVyc3RlbGx0IHdlcmRlbi4gRXMKZXJzY2hlaW50IGFscyBGbHllciwgZXJnYWVuenQgdW0gZWluIExlYWZsZXQgdW5kIGVpbmVuIE5ld3NsZXR0ZXIgZnVlcgpkYXMgbGF1ZmVuZGUgVXBkYXRpbmcuIEhvY2hhdWZsYWdpZ2UgTG93Y29zdC1HaXZlYXdheXMgZGllbmVuIHp1ZGVtCmFscyBUZWFzZXIgdW5kIGZsYW5raWVyZW5kZSBNYXJrZXRpbmdtYXNzbmFobWUuCgpGZXJuZXIgd3VyZGUgZHVyY2ggaW50ZW5zaXZlcyBCcmFpbiBTdG9ybWluZyBlaW4gS29uc2VucyB1ZWJlciBkYXMKTWlzc2lvbiBTdGF0ZW1lbnQgZ2VmdW5kZW4uIEVzIGxhdXRldCAiTGV0J3Mga2VlcCB0aGUgY2FuZGxlcyBidXJuaW5nIgp1bmQgZXJzZXR6dCBkYXMgYmlzaGVyaWdlICJGcm9oZSBXZWlobmFjaHRlbiIuIFNhbnRhIENsYXVzIGhhdHRlIHp3YXIKYW5mYW5ncyBCZWRlbmtlbiBhbmdlc2ljaHRzIGRlcyBDb3Jwb3JhdGUtUmVkZXNpZ25zLCBha3plcHRpZXJ0ZSBhYmVyCmxldHp0bGljaCBkZW4gcHJvZ3Jlc3NpdmVuIENvbnN1bHRpbmctQW5zYXR6IHVuZCB3dWVyZGlndGUgZGFzIEtub3ctaG93CnNlaW5lciBJbnZlc3Rvci1SZWxhdGlvbi1NYW5hZ2VyLgoKSW4gZGllc2VtIFNpbm5lCm5vY2ggZXJmb2xncmVpY2hlIFgtbWFzIFByZXBhcmF0aW9ucyBmdWVyIGRhcyBKYWhyIDIwMDIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkZS5hbHQubmV0ZGlnZXN0IC0ga2xhciwgb2Rlcj8gKFJvbmRhLCAyMC4gT2t0IDIwMDIsIDIyOjMyOjE1KToKSXJnZW5kd2llIGlycml0aWVydCBtaWNoIHNjaG9uLCB3ZW5uIGVpbiBEaXBsLi1JbmYuLUtvbGxlZ2UgKFVuaSkgdm9uIG1pcgpuaWNodCBwcm9ncmFtbWllcmVuIGthbm4sIHNvbmRlcm4gbnVyIHp3ZWkgUHJvZ3JhbW1pZXItU2NoZWluZSBoYXQuLi4uLi4KCkZyb206IGx1dHpAaWtzLWplbmEuZGUgKEx1dHogRG9ubmVyaGFja2UpCk5ld3Nncm91cHM6IGRlLmFsdC5zeXNhZG1pbi5yZWNvdmVyeQpTdWJqZWN0OiBSZTogRGVyIFdlZyB6dW0gRGlwbC5JbmYgaXN0IGhhcnQgLi4uCkRhdGU6IE1vbiwgMTQgT2N0IDIwMDIgMDg6NTI6MjkgKzAwMDAgKFVUQykKCiogSm9oYW5uIFVocm1hbm4gd3JvdGU6Cj5MdXR6IERvbm5lcmhhY2tlIHdyb3RlOgo+PiBOZWluLiBEaWUgUXVhbGl0YWV0IGRlciBGSHMgaXN0IGdlbmVyZWxsIGhvZWhlciBhbHMgZGllIGRlciBVbmlzLgo+Cj5XaWUga29tbXN0IER1IHp1IHNvIGVpbmVyIEVpbnNjaGFldHp1bmc/IEhhc3QgRHUgRXJmYWhydW5nc3dlcnRlIG9kZXIKPmJlc29uZGVyZSBFcmxlYm5pc3NlLCBkaWUgZGllc2UgQmVoYXVwdHVuZyB1bnRlcm1hdWVybj8KCkVyZmFocnVuZ2Vuc3dlcnRlIG1pdCBQcm9mcyB1bmQgU3R1ZGVudGVuLiBUeXBpc2NoZXIgRkgtS3JhbSBtdXNzCmZ1bmt0aW9uaWVyZW4sIHR5cGlzY2hlciBVbmktS3JhbSBtdXNzIGFiZ2VkcnVja3Qgd2VyZGVuIGtvZW5uZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWdvbiB1bmQgRWRlIChHcmltbWJvcm4sIDIxLiBPa3QgMjAwMiwgMjM6MjI6NDQpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwMzUyMzUzNTggb2c9d2l0emUKfiMhIHJuPVJvbGFuZCBydD0xMDM1MjM1MTM5IHJnPXdpdHplCn4jISB0aWQ9MTAzNTIzNTEzOQpPY2gga29tbSwgZGVyIHdhciBzY2hvbiBpbiBkZW4gZnJ1ZWhlbiBTaWViemlnZXJuLCBhbHMgRGlldGVyIEhhbGxlcnZvcmRlbiBkZW4KaW4gTm9uc3RvcCBOb25zZW5zZSBhbHMgZ2VzcGllbHRlbiBXaXR6IHZvcmdlZnVlaHJ0IGhhdCwgbmljaHQgd2lya2xpY2ggbmV1Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTHVnIGJyYXVjaHQgbmVuIFJlY2huZXIgKFpvb2ssIDIyLiBPa3QgMjAwMiwgMDg6MjA6MjgpOgp+IyEgb249Wm9vayBvdD0xMDM1MjY3NjEyIG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49VmFuaW9uIHJ0PTEwMzUyNjM0MDMgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTAzNTI0NjQ5OQpMdWcgd2lsbCBtdWRkZW4sIGRhaGVyIHJlaWNodCBpaG0gd29obCBuZW4gaXJnZW5kd28gcnVtc3RhdWJlbmRlciA0ODZlciAKdm9lbGxpZyBhdXMuIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogYWxsZXMgbmV1PyAoRGVlcGJsdWUsIDIyLiBPa3QgMjAwMiwgMTk6Mjc6NDUpOgp+IyEgcm49VGhhcmdvciBydD0xMDM1MzA3NTY2IHJnPWQud2FsZAp+IyEgdGlkPTEwMzQyNjIxOTcKWyBdIER1IGhhc3QgaW0gTVBBLUFyY2hpdiBnZXN0b2ViZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogYWxsZXMgbmV1PyAoVGhhcmdvciwgMjIuIE9rdCAyMDAyLCAxOTozMDoyNCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDM1MzA3NjY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDI2MjE5NwppY2ggaGFiZSBkYXMgYXJjaGl2IGltIG1vcmdlbmdyYXVlbiBub2NoIG5pY2h0IGdlZnVuZGVuIC4uLiB3byBtdXNzIGljaApzdWNoZW4sIGluIHBvcnQgdmFpbiBvZGVyIGluIHRhcmtvIHJldWI/CgpUaGFyZ29yLCBkZXIgRm9yc2NoZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGFsbGVzIG5ldT8gKFpvb2ssIDIyLiBPa3QgMjAwMiwgMTk6MzE6MjIpOgp+IyEgcm49VGhhcmdvciBydD0xMDM1MzA3ODI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDI2MjE5NwpEYXMgQXJjaGl2IGZpbmRlc3QgRHUgYXVmIGRlbiBXV1ctU2VpdGVuLiBEb3J0IGthbm4gbWFuIGFsdGUgQXJ0aWtlbAplaW5lc2VoZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogYWxsZXMgbmV1PyAoVmFuaW9uLCAyMi4gT2t0IDIwMDIsIDE5OjM0OjE2KToKfiMhIG9uPVZhbmlvbiBvdD0xMDM1MzA4MDQ4IG9nPWQud2FsZAp+IyEgcm49VGhhcmdvciBydD0xMDM1MzA3NTY2IHJnPWQud2FsZAp+IyEgdGlkPTEwMzQyNjIxOTcKSW4gZGllc2VtIGZhbGwgZWhlciBhbHRlciwgbGVpY2h0IGFuZ2V0cm9ja25ldGVyIFNlbmYuCgpWKiwgZnJhZ3Qgc2ljaCwgb2IgbWFuIGFsdCB3aXJkLCB3ZW5uIGVpbmVtIGRpZSBha3R1ZWxsZW4gVGhlbWVuIGltbWVyCmlyZ2VuZHdpZSBiZWthbm50IHZvcmtvbW1lbiwgdW5kIHdpZSBlcywgd2VubiBlcyBpaG0gc2Nob24gc28gZ2VodCwgZXJzdApBbmF0b2wgdW5kIGNvIGdlaGVuIG11c3MgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogYWxsZXMgbmV1PyAoVGhhcmdvciwgMjIuIE9rdCAyMDAyLCAxOTozNDo0MCk6Cn4jISBybj1ab29rIHJ0PTEwMzUzMDc4ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0MjYyMTk3Cnd3dyA9IHdpZT8gd28/IHdhcz8gCm9kZXIgYW5kZXJzIGF1c2dlZHJ1ZWNrdDogc28gbmV1bW9kaXNjaGVuIGtyYW0gbWVpZGUgaWNoIHdvIGljaCBrYW5uIC4uLgppbW1lcmhpbiBrb2VubnRlIGljaCBqYSBtYWwgbWVpbiBseW54IGFubGVpZXJuCgpUaGFyZ29yLCBkZXIgU3RlaW56ZWl0IGtuYXBwIGVudGtvbW1lbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IGFsbGVzIG5ldT8gKFZhbmlvbiwgMjIuIE9rdCAyMDAyLCAxOTozNToyNyk6Cn4jISBybj1UaGFyZ29yIHJ0PTEwMzUzMDgwODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0MjYyMTk3Cmh0dHA6Ly9tZy5tdWQuZGUvQXJjaGl2LwoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBhbGxlcyBuZXU/IChUaGFyZ29yLCAyMi4gT2t0IDIwMDIsIDE5OjM4OjE0KToKfiMhIHJuPVZhbmlvbiBydD0xMDM1MzA4MTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDI2MjE5NwouLiB3YXMgZWluIHNlcnZpY2UgLi4uCnVuZCBtZWluZW4ga2FmZmVlIGhhZXR0ZSBpY2ggZ2VybmUgbWl0IG1pbGNoIHVuZCAyIGxvZWZmZWwgenVja2VyCgpUaGFyZ29yLCBzaWNoIGdlcm5lIGJlZGllbmVuIGxhc3NlbmQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldGRpZ2VzdCAoR3JpbW1ib3JuLCAyMy4gT2t0IDIwMDIsIDEzOjQ4OjM3KToKRnJvbTogIlN0ZWZmaSBBYmVsIiA8YWJlbEBzLm5ldGljLmRlPiAKTmV3c2dyb3VwczogZGUuY29tbS5pbmZvc3lzdGVtcy53d3cuYXV0aG9yaW5nLm1pc2MgClN1YmplY3Q6IFJlOiBDU1MgdW5kIFN1Y2htYXNjaGluZW4gCkRhdGU6IFN1biwgMjAgT2N0IDIwMDIgMTU6MzI6MTcgKzAyMDAgCk1lc3NhZ2UtSUQ6IDxhb3ViajckcGlsZjMkM0BJRC0xNDMwMjUubmV3cy5kZm5jaXMuZGU+IAogCiJNYXJpbyBNdWVsbGVyIiA8bnVsbGRldmljZUBnbXgubmV0PiBzY2hyaWViOiAKIAo+IERpZSBCZXRyZWliZXIgdm9uIFNFcyBrb2VubnRlbiBkaWVzIGV2dGwuIGFscyBLcml0ZXJpdW0gbmVobWVuLCAKPiB3b25hY2ggU2VpdGVuIG1pdCBob2hlbSBSYW5raW5nIG9lZnRlcnMgbWFsIHZvbiBlaW5lbSBNaXRhcmJlaXRlciAKPiBiZXN1Y2h0IHVuZCBnZW5hdWVyIHVudGVyc3VjaHQgd2VyZGVuLiAKIAoiVW5kIHdhcyBzaW5kIFNpZSB2b24gQmVydWY/IiAtICJSYW5raW5nLUtvbnRyb2xsZXVyIGJlaSBBbHRhdmlzdGE7IAp6dXN0YWVuZGlnIGZ1ZXIgZGllIEJlZ3JpZmZlICdGaWNrZW4nLCAnV2FyZXonIHVuZCAnSGFuZHlsb2dvcyciLiAKIApHcnVzcyBTdGVmZmkgCiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFZ29uIHVuZCBFZGUgKFJvbGFuZCwgMjMuIE9rdCAyMDAyLCAyMjozNDozMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzNTIzNTM2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzUyMzUxMzkKUHVoaGhoYWEKCkRhdCBzb2xsIG5ldCB1bmJlZGluZ3QgbmV1IHNlaW4gLi4gbiB3aXR6IGlzIGx1c3RpZyB3ZW5uIG1hbiBpaG4gbGFjaHQgOikKCgpQYWxpbSBQYWxpbSEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvc28gKE5lZGltZSwgMjQuIE9rdCAyMDAyLCAxODo1MTo0Nyk6CkR1IGdpYnN0IEFuZ3VzIE8nR3l2ZXIgZWluZW4gUklDSFRJR0VOIEt1c3MuCk8nR3l2ZXIgemVpZ3Qgc3RvbHogYXVmIHNlaW4gJ1plbHQnLgoKSG0uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU29zbyAoRGVlcGJsdWUsIDI0LiBPa3QgMjAwMiwgMTk6NDc6MTApOgp+IyEgcm49TmVkaW1lIHJ0PTEwMzU0NzgzMDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM1NDc4MzA3ClRqYSwgYW5kZXJlIFZvZWxrZXIsIGFuZGVyZSBTaXR0ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNvc28gKE1vbnRhbnVzLCAyNC4gT2t0IDIwMDIsIDIxOjIzOjA5KToKfiMhIHJuPURlZXBibHVlIHJ0PTEwMzU0ODE2MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM1NDc4MzA3CkdpYnQgZXMgZWlnZW50bGljaCBpcmdlbmRlaW4gbXBhLUtvbW1hbmRvLCBiZWkgZGVtIG1hbiBhbGxlIEFydGlrZWwKYXV0b21hdGlzY2ggdWViZXJnZWhlbiBrYW5uLCBpbiBkZW5lbiBkYXMgV29ydCAibmV0ZGlnZXN0IiB2b3Jrb21tdD8KSWNoIGhhYiBub2NoIHVlYmVyIGtlaW5lIGRlciBTdG9yaWVzIHdpcmtsaWNoIGxhY2hlbiBrb2VubmVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHYW56IE9lc3RlcnJlaWNoIHBlbm50IDopIChDcml0dGVyLCAyNS4gT2t0IDIwMDIsIDAzOjQwOjQ3KToKCiAgICAgX19fICAgICAgICAgICBfICAgICAgIF8gXyAgICAgICAgICAgICAgXyAgICAgICAgKFwsLykKICAgIHwgXyApIF9fXyBfICBffCB8XyBfX198IHwgfF9fIF8gXyBfICBfX3wgfCAgICAgICBvbyAgXCAgXyBfICAgICAgICAgXwogICAgfCBfIFwvIC1fKSB8fCB8ICBfLyAtXykgfCAvIF9gIHwgJyBcLyBfYCB8ICAgICAsL187flwgIiIgIiAiXiwgICAgIC8gJwogICAgfF9fXy9cX19ffFxfLF98XF9fXF9fX3xffF9cX18sX3xffHxfXF9fLF98ICAgICAiJyAgICBcICAgICAgXyBcLCAgICEKICAgIFJvbGVNVUQgTXVkLUxpYiB2Mi4xIC8gTERNdWQgMy4yLjktZGV2LjMyMyAgICAgICAgICAgLyAvICAgKCAgIHxfXy4nCiAgICBBZHJlc3NlOiB0ZWxuZXQgYmwubXVkLmF0IDU2NzggICAgICAgICAgICAgICAgICAgICAnfiBgfi0tLS0nJ34KICAgICAgICAgICAgIHRlbG5ldCBibC5yYXQuYXQgNTY3OAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKwp8IExpc3RlIGRlciBTcGllbGVyIHZvbSBGciAyNSBPa3QgMjAwMiAwMzozODo1OSAoMTEgU3BpZWxlcikgICAgICAgICAgICAgICAgIAp8CistUmFuZy1OYW1lLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tT3J0LQorCnwgW2JdIEFsaWVuYnJlZWRlciBOb3N0cm9tbyAtIHN0YXR1czogb2Jzb2xldGUgICAgICAgICAgICAoMTVtaW4gaWRsZSkgW1dpZW5dCnwKfCBbYV0gTm9jaCBzb24gU2VyaWkgZ2VodCBkaXIgYXVmIGRpZSBOZXJ2ZW4uICAgICAgICAgICAgICAgICg0aCBpZGxlKSBbV2llbl0KfAp8IFthXSBTaW11bGFjcm9uIHN1Y2h0IGVpbmUgU2NoYWYoISl3ZWlkZSAgICAgICAgICAgICAgICg1aCBpZGxlKSBbVW5iZWthbm50XQp8CnwgW21dIEtha2xha2FyaWFkYSBTdWJzb25pYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoOWggaWRsZSkgW1dpZW5dCnwKfCBbbV0gSGVsbHNwYXduIGRpZW50IFppdmlsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgyZCBpZGxlKSBbV2llbl0KfAp8IFttXSBTY2hva28gLSBKdXBwbm9wZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDRoIGlkbGUpIFtXaWVuXQp8CnwgW21dIEdsb2Vja2NoZW4gaXN0IFVsZmluZ3MgTW90aXZhdGlvbnN0cmFpbmVyaW4uICAgICAgICAgICAoM2ggaWRsZSkgW1dpZW5dCnwKfCBbTV0gU25vb3BpZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICg1aCBpZGxlKSBbV2llbl0KfAp8IFtNXSBWZXJydWVja3RlIFV0eCBtaXQgQmxhdWxpY2h0IGFtIEtvcGYgICAgICAgICAgICAgICAgICAgKDNoIGlkbGUpIFtXaWVuXQp8CnwgW0ddIEdlbmVyYWwgRWQgZ3J1ZXNzdCBkaWNoIHVlYmVycyBJbnRlcm11ZCAgICAgICAgICAgICAgICAoMWQgaWRsZSkgW1dpZW5dCnwKfCBbR10gTmluamEgU2t1bmsgZGVyIEdvdHQgZGVyIFpldWdlbiBKb2Vod2FzICAgICAgICAgICAgICAgICg4aCBpZGxlKSBbV2llbl0KfAorLVN0YXRpc3Rpay0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKwp8IE1heGltdW0gaGV1dGU6IDIwLCBSZWtvcmQ6IDMyIGFtIDE3LjEwLjIwMDIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAp8CnwgSGV1dGUgd2FyZW4gc2Nob24gMjAgdmVyc2NoaWVkZW5lIFNwaWVsZXIgZWluZ2Vsb2dndCAoTW9uYXQ6IDEwNSkgICAgICAgICAgCnwKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHYW56IE9lc3RlcnJlaWNoIHBlbm50IDopIChKZWhvdmEsIDI1LiBPa3QgMjAwMiwgMDM6NDE6NDkpOgp+IyEgcm49Q3JpdHRlciBydD0xMDM1NTEwMDQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNTUxMDA0NwpadW1pbmRlc3QgZGllIFJhdHRlIGhhdCBkaWUgQXVnZW4gb2ZmZW4gOi0pCgpKKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHYW56IE9lc3RlcnJlaWNoIHBlbm50IDopIChDcml0dGVyLCAyNS4gT2t0IDIwMDIsIDA0OjI0OjMwKToKfiMhIHJuPUplaG92YSBydD0xMDM1NTEwMTA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNTUxMDA0NwpkaWUgUmF0dGUgaGF0IGtlaW5lIFB1cGlsbGVuLi4uIGlzdCBhbHMgYmxpbmQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdhbnogT2VzdGVycmVpY2ggcGVubnQgOikgKEFscGhhLCAyNS4gT2t0IDIwMDIsIDE3OjMwOjU0KToKfiMhIHJuPUNyaXR0ZXIgcnQ9MTAzNTUxMjY3MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzU1MTAwNDcKRGllIFJhdHRlIGd1Z2d0LCBhbHNvIG9iIGlociB3ZXIgd2FzIHJlaW5nZXNjaG9iZW4gaGF0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZXNjaG1hY2sgaGFiZW4gbWFuY2hlIExldXRlLi4uIChOZWRpbWUsIDI1LiBPa3QgMjAwMiwgMjM6NDQ6MTQpOgpBbWFuZGEgc2FndDogSGFsbG8gS3J1ZnR1ciEKQW1hbmRhIGdyYWJiZWx0IGFuIEtydWZ0dXIgaGVydW0uCkFtYW5kYSBzYWd0OiBXaWUgd2FlcnMgZGVubiBtaXQgdW5zLCBLbGVpbmVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xhciwgd2llZGVyIGRlLmFsdC5uZXRkaWdlc3QuLi4gKFJvbmRhLCAyNy4gT2t0IDIwMDIsIDAzOjIzOjQ3KToKLi4uIGF1Y2ggd2VubiBNb250YW51cyBkaWUgbmljaHQgbWFnLiBBYmVyIGltIE1vbWVudCBzaW5kIG5vY2ggc28gdmllbGUgTGV1dGUKaW0gTUcgd2FjaCwgZGEgcGFzc3QgZGFzLiBBbHNvIGNvcHkmcGFzdGUuLi4KCk5ld3Nncm91cHM6IGRlLmV0Yy5iYWhuLm1pc2MKU3ViamVjdDogUmU6IEhhcnRtdXQgTS4gbGFuZ2UgQmFobmZhaHJ0ZW4gc2luZCBlaW5lIFRvcnR1ciEgQXVzIGRlbgpGcm9tOiB3ZWJtYXN0ZXJAa2QtaG9mZm1hbm4uY29tIChLbGF1cy1EaWV0ZXIgSG9mZm1hbm4pCkRhdGU6IDIyIE9jdCAyMDAyIDE1OjAzOjIzIC0wNzAwCk1lc3NhZ2UtSUQ6IDw0NWI3ZTY1OC4wMjEwMjIxNDAzLjEzNjBkZDU2QHBvc3RpbmcuZ29vZ2xlLmNvbT4KCiJIZWlrbyBGaXNjaGVyIiA8ZW1haWxvZm5ld3Nncm91cEBhcmNvci5kZT4gd3JvdGUgaW4gbWVzc2FnZQpuZXdzOjxhcDFuOTgkZTUwJDFAbmV3c3JlYWQxLmFyY29yLW9ubGluZS5uZXQ+Li4uCj4gV2VubiBIZXJyIE0uIGxhbmdlIEJhaG5mYWhydGVuIGhhc3N0LCBoYXQgZXIgZGVuIGZhbHNjaGVuIEpvYi4gU29mb3J0Cj4gZW50bGFzc2VuLiBEaWVzZSBBZXVzc2VydW5nIGlzdCBmaXJtZW5zY2hhZWRsaWNoLgoKRG9jaCBuaWNodCBzbyBkcmFzdGlzY2guLi4KRGllIER0LiBUZWxla29tIHN1Y2h0IGltbWVyIG5vY2ggbmFjaCBlaW5lbSBWb3JzdGFuZHN2b3JzaXR6ZW5kZW4uCldhZXJlIGRhcyBkZW5uIG5peCBmdWVyIEhNPz8gCkRhbm4gbXVlc3N0ZSBtYW4gendhciBiYWxkIHNlaW5lIEZlcm5nZXNwcmFlY2hlIHp3ZWkgKG9kZXIgdmllcj8pCldvY2hlbiBpbSBWb3JhdXMgYW5tZWxkZW4gLSBhYmVyIGRhIGljaCBWSUVMIG1laHIgQmFobiBmYWhyZSBhbHMgdmllbAp6dSB0ZWxlZm9uaWVyZW4sIGJpbiBpY2ggZGFmdWVyIDstKQoKS2xhdXMKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZW5uIHNvZ2FyIEJpbGQgaWRlbHQgLi4uIChMaWFyYSwgMjcuIE9rdCAyMDAyLCAwODowODo1Nik6Cj4gICAgICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gU29uLCAyNy4gT2t0IDIwMDIsIDA4OjA4OjA4ICgxNiBUZWlsbmVobWVyKSAgIAoKQmlsZC4uLi4uLi4uLi4uSi5zIEdhc3QyLi4uLi4uLi4uLkoucyBaYXJuaXlhLi4uLi4uLi5KLnMgWW5nLi4uLi4uLi4uLi4uSi5zCkFybi4uLi4uLi4uLi4uLkkucyBJbXRpeWF6Li4uLi4uLi5qLnMgQWxrb2hvbC4uLi4uLi4uaS5zIFNoYWVlbmEuLi4uLi4uLmouUwpBbHBoYS4uLi4uLi4uLi5KLlMgSW1kYS4uLi4uLi4uLi4uSi5TIEplaG92YS4uLi4uLi4uLkp3UyBFbGJlcmV0Li4uLi4uLi5KLlMKTGlhcmEuLi4uLi4uLi4uLi5TIE5pYmVsLi4uLi4uLi4uLkoubSBMd2F4YW5hLi4uLi4uLi5Kd20gVmFuaW9uLi4uLi4uLi4uSndXCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGphIC4uLiAoTGlhcmEsIDI3LiBPa3QgMjAwMiwgMTU6NDE6NTkpOgpEZWluIEZyZXVuZCBYIHRlaWx0IERpciBtaXQ6IEFuZmFuZ3MgZmllbCBlciBkYWR1cmNoIGF1ZiwgZGFzcyBlcgpEZWluIEZyZXVuZCBYIHRlaWx0IERpciBtaXQ6IFVubWVuZ2VuIGhhYXJzdHJhZXViZW5kIGRhZW1pY2hsZXIgRnJhZ2VuCkRlaW4gRnJldW5kIFggdGVpbHQgRGlyIG1pdDogYXVmIC1iIGdlc3RlbGx0IGhhdCwgZGFubiB3dXJkZSBlciBydWhpZ2VyLgpEZWluIEZyZXVuZCBYIHRlaWx0IERpciBtaXQ6IE5hamEsIHVuZCBqZXR6dCBpc3NlciBaYXViaSA6bykKRGVpbiBGcmV1bmQgWSB0ZWlsdCBEaXIgbWl0OiBOYSBpc3QgZG9jaCBrb25zZXF1ZW50Li4uIDpvKQpEZWluIEZyZXVuZCBYIHRlaWx0IERpciBtaXQ6IFdvYmVpIGVyIGFiZXIgSU1ITyBuaWVtYWxzIHJpY2h0aWcgZ2VuZXJ2dApEZWluIEZyZXVuZCBYIHRlaWx0IERpciBtaXQ6IGhhdCwgZGFzIG11c3MgaWNoIGRhenUgc2FnZW4uCkRlaW4gRnJldW5kIFkgdGVpbHQgRGlyIG1pdDogV2VubiBlciBudXIgZGFlbWxpY2hlIEZyYWdlbiBzdGVsbHQgdW5kCkRlaW4gRnJldW5kIFkgdGVpbHQgRGlyIG1pdDogbmljaHQgbmVydnQsIGhhZXR0ZSBlciBlaGVyIHp1IGRlbgpEZWluIEZyZXVuZCBZIHRlaWx0IERpciBtaXQ6IEthZW1wZmVybiBnZWhlbiBzb2xsZW4/CkRlaW4gRnJldW5kIFggdGVpbHQgRGlyIG1pdDogTmVpbiwgZGFubiB3YWVyIGVyIFRhbmppYW4gZ2V3b3JkZW4gOm8pCgpQcmVpc2ZyYWdlOiBXZWxjaGUgR2lsZGVuenVnZWhvZXJpZ2tlaXQgaGFiZW4gWCB1bmQgWT8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaXJrdW5nc3ZvbGwgKElzaSwgMjguIE9rdCAyMDAyLCAxNDozMTo0Mik6ClhYWCBmaXhpZXJ0IGRhcyBad2VpaGF1cHQgdW5kIG1hY2h0IHNjaHd1bmd2b2xsZSBCZXdlZ3VuZ2VuLgouLi4KRGFzIFp3ZWloYXVwdCBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW5lIExlaWNoZSB0YW56dCB3aWUgaW4gVHJhbmNlIGR1cmNoIGRpZSBHZWdlbmQuCgpEQXMgaXN0IGRvY2ggbWFsIGVpbiB3aXJrdW5nc3ZvbGxlciBaYXViZXIgOikKaXNpIChtb3Vzc2V3ZXJmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyc2ljaHQgKExpYXJhLCAyOC4gT2t0IDIwMDIsIDIwOjMyOjM5KToKW1NlaGVyOkFya10gbnVyIGF1c3J1ZXN0dW5ncy0gdW5kIHF1ZXN0c3RlcmJlbiBoaWVyLCBkaWUgc3BpZWxlciB3ZXJkZW4gaW1tZXIKW1NlaGVyOkFya10gbGFuZ3NhbWVyLCBiaXMgc2llIHZvbGwgc3RlcmJlZmVydGlnIHNpbmQgOikKW1NlaGVyOk1zYXJdIHdhcyB3aWxsc3RlIHVucyBzYWdlbj8KW1NlaGVyOkFya10gbWFjaHQgaGlubmU/IDopCltTZWhlcjpNc2FyXSB3byBzb2xsZW4gd2lyIGRlbm4ga3JlcGllcmVuCltTZWhlcjpBcmtdIG1pY2ggaXMgbGFuZ3dlaWxpc2NoCltTZWhlcjpDcm9mdF0gc3VjaHN0IGR1IGFuYW5hcy1zdGVyYmV3aWxsaWdlLCBkZW5lbiBkdSBhbXVlc2llcnQgenVzY2hhdWVuCltTZWhlcjpDcm9mdF0ga2FubnN0PwpbU2VoZXI6RG90el0gbmV1ZSBaYXViaWdpbGRlIGlzdCBmZXJ0aWc/CltTZWhlcjpBcmtdIGFsbGVzIGVnYWwsIHN0ZXJiZXQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmF1cyBkZW0genVzYW1tZW5oYW5nIChQaXRmYWxsLCAyOS4gT2t0IDIwMDIsIDE1OjA3OjUxKToKW1NlaGVyOkZvb2JhciBtdWh0XQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhdXMgZGVtIHp1c2FtbWVuaGFuZyAoRm9vYmFyLCAyOS4gT2t0IDIwMDIsIDE1OjA4OjIzKToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAzNTkwMDQ3MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzU5MDA0NzEKQm9haCwgd2llIGRyZWlzdCEgOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBGUCBjb250cmEgRUsgKFZhbmlvbiwgMzAuIE9rdCAyMDAyLCAxNzoxMjoyOCk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAzNTk4MDc5MCByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMzU5MDg5NDQKRXMgZ2lidCBGUC1MaXN0ZW4/CgpWKiwgZW50c2V0enQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGUCBjb250cmEgRUsgKEN1Y2h1bGxpbiwgMzAuIE9rdCAyMDAyLCAxNzoxNzozNyk6Cn4jISBybj1WYW5pb24gcnQ9MTAzNTk5NDM0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzU5MDg5NDQKS2VpbmUgU29yZ2UsIHRyZXRlbiBuaWNodCBpbiBFcnNjaGVpbnVuZy4gU2luZCBpbiAvbWFrZV9zZWVyIGludGVncmllcnQuCkltIENWUyB1bnRlciAuL2RvdWJ0ZnVsL21vZHVsZXMvbWFrZV9zZWVyLnRneiBlcnJlaWNoYmFyLgoKWVRDdSAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEZQIGNvbnRyYSBFSyAoVmFuaW9uLCAzMC4gT2t0IDIwMDIsIDE3OjIzOjMyKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDM1OTk0NjU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNTkwODk0NApBY2gsIGRhcyBpcyBhdWYgZGVtIHNvdXJjZWZvcmdlLXNlcnZlciB3b2hsIGRpZSBFY2tlLCB3byBtYW4gYXVmIGRpZSBGcmFnZQonQmlzdCBEdSBNYWdpZXIgaW0gTW9yZ2VuR3JhdWVuPycgYW50d29ydGVuIG11c3MsIHVuZCB3byBkZXIgSmEtQnV0dG9uIGF1ZiBkaWUKRGlzbmV5LVNlaXRlIGdlbGlua3QgaXN0IC4uLgoKViogLSBWb3IgQW50d29ydGVuIC0gUnVicmlrIGxlc2VuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBGUCBjb250cmEgRUsgKEN1Y2h1bGxpbiwgMzAuIE9rdCAyMDAyLCAxNzoyNDo1MCk6Cn4jISBybj1WYW5pb24gcnQ9MTAzNTk5NTAxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzU5MDg5NDQKRGlzbmV5PyBGcnVlaGVyIHdhciBkZXIgYXVmIFRveXMnUid1cy4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEZQIGNvbnRyYSBFSyAoR3JpbW1ib3JuLCAzMC4gT2t0IDIwMDIsIDE3OjI3OjIxKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDM1OTk1MDkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNTkwODk0NApBaCwgdW5kIGRlbiAiTmVpbiIgQnV0dGVuIGdpYnRzIG5pY2h0LCB3ZWlsIG1hbiBqYSBlaCBlcnN0IGluIGRlciBHcnVuZHNjaHVsZQpsZXNlbiBsZXJudD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRlAgY29udHJhIEVLIChDdWNodWxsaW4sIDMwLiBPa3QgMjAwMiwgMTc6Mjg6MzUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzU5OTUyNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM1OTA4OTQ0CkRvY2gsIGRlbiBOZWluLUJ1dHRvbiBnaWJ0IGVzLiBTY2hsaWVzc2xpY2ggZ2lidCBlcyBhdWNoIE5pY2h0LU1hZ2llci4gRGllCnNpbmQgdWViZXIgZGllIEdydW5kc2NodWxlIHNjaG9uIHJhdXMuIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEZQIGNvbnRyYSBFSyAoR3JpbW1ib3JuLCAzMC4gT2t0IDIwMDIsIDE3OjI5OjUzKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDM1OTk1MzE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNTkwODk0NApNYWcgc2VpbiwgZGEgZmFlbGx0IG1pciBoYWx0IHNvIHNwb250YW4ga2VpbiBCZWlzcGllbCBmdWVyIGVpbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGUCBjb250cmEgRUsgKFNjaG9rbywgMzAuIE9rdCAyMDAyLCAyMTozODo1Mik6Cn4jISBybj1BcmsgcnQ9MTAzNjAwNzU0NCByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMzU5MDg5NDQKTWV0emVsbiBtaXQgZGVtIFRhc2NoZW5yZWNobmVyPyAuLi4gS25pZ2h0IFJpZGVyPyA6KQoKU2Nob2tvIChhbiBkZW0gZGVyIERpc2t1c3Npb25zcHVua3Qgdm9sbCB2b3JiZWlnZWh0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEZQIGNvbnRyYSBFSyAoRGVlcGJsdWUsIDMwLiBPa3QgMjAwMiwgMjM6NDI6MTYpOgp+IyEgcm49UGF0cnluIHJ0PTEwMzYwMTc1ODggcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD0xMDM1OTA4OTQ0ClNwaWVsPyBJY2gga2VubiBoaWVyIHp3YXIga2xlaW5lIFNwaWVsZSAoTWFleGNoZW4sIFJhZ2UsIC4uLiksIGFiZXIgd2FzIHNvbGwKZXMgYnJpbmdlbiwgd2VubiBtYW4gZGllIGFic2NoYWZmdD8gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFsaW5lLCAzMS4gT2t0IDIwMDIsIDA5OjMyOjUyKToKCltBYmVudGV1ZXI6WWFubmlzXSBoYXQgamVtYW5kIGx1c3QsIG1pciBiZWltIHNvZXJlbi10b2V0ZW4genUgaGVsZmVuPyBhbGxlaW4KW0FiZW50ZXVlcjpZYW5uaXNdIHNjaGFmZiBpY2ggZGFzIGFuc2NoZWluZW5kIG5pY2h0CltUb2Q6TGFyc10gRGVyIFNwZWVybWVpc3RlciBoYXQgZ2VyYWRlIFlhbm5pcyB1bWdlYnJhY2h0LgoKQW5zY2hlaW5lbmQgd2lya2xpY2ggbmljaHQuLi4gOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IDEwU1AtQWJ6dWcgYWxzIFRvZGVzZm9sZ2UgKEdyaW1tYm9ybiwgMzEuIE9rdCAyMDAyLCAxMDoyOTozMyk6Cn4jISBvbj1WZWN0b3Igb3Q9MTAzNjA1NjAzMCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMzYwNTU4ODIgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDM2MDU0ODM1CmljaCBnbGF1YmUgc28gd3VyZGUgZGFzIGJpcyB2b3IgZWluIHBhYXIgamFocmVuCm5vY2ggcHJha3RpemllcnQgaG9laG9laCA6KQoKb2sgZGFzIHd1ZXJkIGljaCBzZWxiZXIgdmVybGVnZW4gd2VubiBpY2gga29lbm50ZSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogMTBTUC1BYnp1ZyBhbHMgVG9kZXNmb2xnZSAoR3JpbW1ib3JuLCAzMS4gT2t0IDIwMDIsIDEwOjI5OjUzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDM2MDU2NTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNjA1NDgzNQpUamEsIGVpbiAiaGlsZmUgbXBhIiBpc3QgaGFsdCBuaWNodCBqZWRlbSBnZWdlYmVuLiBTY2hvZW5lbiBHcnVzcyBhdXMgUGlzYS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogMTBTUC1BYnp1ZyBhbHMgVG9kZXNmb2xnZSAoQ2F0d2VhemxlLCAzMS4gT2t0IDIwMDIsIDEwOjQxOjQyKToKfiMhIG9uPUJhbWJ1bGtvIG90PTEwMzYwNTcyMDUgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDM2MDU3MTE3IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTAzNjA1NDgzNQpIZXkuLi5pY2ggZGFjaHRlIGR1IHdvbGx0ZXN0IERpY2ggenVydWVja2xlaG5lbiB1bmQgenVzZWhlbiB3aWUgc2ljaCBhbmRlcmUKZ2VnZW5zZWl0aWcgenVmbGFtZW4uLi5KZXR6dCBkaXNrdXRpZXJzdCBEdSBzZWxiZXIgbWl0IDotKQoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IDEwU1AtQWJ6dWcgYWxzIFRvZGVzZm9sZ2UgKENhdHdlYXpsZSwgMzEuIE9rdCAyMDAyLCAxMDo0MTo0Myk6Cn4jISBvbj1DYXR3ZWF6bGUgb3Q9MTAzNjA1NzI4MyBvZz1lbnR3aWNrbHVuZwp+IyEgcm49QmFtYnVsa28gcnQ9MTAzNjA1NzIwNSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMzYwNTQ4MzUKQWNoamEsIGRhbmtlIGZ1ZXIgZGVuIEhpbndlaXMgOi0pCk5lbm5lbiB3aXIgZXMgZGVuIFZlcnN1Y2gsIGRpZSBEaXNrdXNzaW9uIGFuZmFlbmdsaWNoIG1pdCBlaW5lciBnZXdpc3NlbgpFcm5zdGhhZnRpZ2tlaXQgenUgdmVyc2VoZW4gOi0pCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IDEwU1AtQWJ6dWcgYWxzIFRvZGVzZm9sZ2UgKENyb2Z0LCAzMS4gT2t0IDIwMDIsIDEzOjExOjIzKToKfiMhIHJuPUJvaW5nIHJ0PTEwMzYwNjU4ODggcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDM2MDU0ODM1Ck9oIG9oLiAgSWNoIHNlaCBzY2hvbiB3aWVkZXIgZ3JvZXNzZXJlIFNlaGVydGVhbXMgdm9yIGRlciBIZWxpeCBQb21hdGEKc3RlaGVuOiAiR2liIHVuc2VyZSBBdXNydWVzdHVuZyB3aWVkZXIgaGVyISIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IDEwU1AtQWJ6dWcgYWxzIFRvZGVzZm9sZ2UgKFpvb2ssIDMxLiBPa3QgMjAwMiwgMTU6NDQ6NTYpOgp+IyEgcm49QXJrIHJ0PTEwMzYwNzQ2NTkgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDM2MDU0ODM1CiJ6YXBwZWxuIGxhc3NlbiIgZ2VmYWVsbHQgbWlyIGluIGRlbSB6dXNhbW1lbmhhbmcgc2VociBndXQuIDspCgp6b29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogMTBTUC1BYnp1ZyBhbHMgVG9kZXNmb2xnZSAoTXVwZmVsLCAzMS4gT2t0IDIwMDIsIDIwOjU5OjA2KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDM2MDU3MzAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNjA1NDgzNQpCb2FoIGRlciBlcnN0ZSBBcnRpa2VsIHZvbiBCYW1idWxrbyBzZWl0IG1pbmQuIDcgSmFocmVuIChnZXNjaGFldHp0KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IDEwU1AtQWJ6dWcgYWxzIFRvZGVzZm9sZ2UgKEdyaW1tYm9ybiwgMzEuIE9rdCAyMDAyLCAyMTo1NDo0Nyk6Cn4jISBybj1NdXBmZWwgcnQ9MTAzNjA5NDM0NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzYwNTQ4MzUKTGVpZGVyIG5laW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoQ3VjaHVsbGluLCAgMS4gTm92IDIwMDIsIDAwOjE4OjE0KToKW1RlYW0gRHVoOlBpdGZhbGxdIGR1aCBkYXMgd2FyZW4gMSwxTSBleHAKW1RlYW0gRHVoOlRvZF0gUElURkFMTCBIQVQgREFTIFRFQU0gVkVSTEFTU0VOLgpbVGVhbSBEdWg6XSBEYXMgVGVhbSBsb2VzdCBzaWNoIGF1Zi4gCkR1IHZlcmxhZXNzdCBkYXMgVGVhbS4KW1RvZDpMYXJzXSBFaW5lIFdhbmQgYXVzIEZldWVyIGhhdCBnZXJhZGUgUGl0ZmFsbCB1bWdlYnJhY2h0LgoKKmdydW56KiBQbHVzIG9kZXIgTWludXM/IAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogMTBTUC1BYnp1ZyBhbHMgVG9kZXNmb2xnZSAoQW1hcnlsbGlzLCAgMS4gTm92IDIwMDIsIDEzOjEwOjQ2KToKfiMhIHJuPVRhcmFuaXMgcnQ9MTAzNjE1MTkyOSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMzYwNTQ4MzUKTmFlY2hzdGVzIE1hbCBkaWUgU2tyaXB0ZSBhdXNzY2hhbHRlbiwgYmV2b3IgbWFuIHBvc3RldCA6LSkKCkFtYSosIGVpbmVuIFphdWJpaHV0IGtuaWdnbmQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IDEwU1AtQWJ6dWcgYWxzIFRvZGVzZm9sZ2UgKENyb2Z0LCAgMS4gTm92IDIwMDIsIDEzOjQzOjM4KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDM2MTUyNjQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNjA1NDgzNQpXYWhsd2Vpc2UgZWluICEgZGF2b3IgcGFja2VuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IDEwU1AtQWJ6dWcgYWxzIFRvZGVzZm9sZ2UgKEN1Y2h1bGxpbiwgIDEuIE5vdiAyMDAyLCAxMzo0NjozOCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAzNjE0OTA5MyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMzYwNTQ4MzUKPiBXYXJ1bSBqZXR6dCBzY2hvbiB3aWVkZXIgZXR3YXMgbmV1ZXM/CgoqaHVzdCogQWxzbyBlbnR3ZWRlciBiZXNpdHp0IE9ya3RvZXRlciBnZXJhZGV6dSBlbGZpc2NoZSBXZWl0c2ljaHQKb2RlciBlciBpc3QgZWluIGZ1ZXJjaHRlcmxpY2gtZ3JhdWVuaGFmdCBsYW5nc2FtZXIgRGVua2VyLgoKU3BpdHplIE9ocmVuIGhhdCBlciBrZWluZS4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogMTBTUC1BYnp1ZyBhbHMgVG9kZXNmb2xnZSAoQ3VjaHVsbGluLCAgMS4gTm92IDIwMDIsIDE0OjEwOjQxKToKfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDM2MTU2MjM1IG9nPWVudHdpY2tsdW5nCn4jISBybj1BcmsgcnQ9MTAzNjE1NTYwNiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMzYwNTQ4MzUKTWl0IGRlciBBcmd1bWVudGF0aW9uIHd1ZXJkZW4gamEgZW5kbGljaCBhdWNoIGRpZSBnYW56ZW4gSWRsZS1TYWVja2UgbmFjaHRzCmluIGVpbmVuIEF1dG9sb2dvdXQgcnV0c2NoZW4uIERpZSBBcmd1bWVudGF0aW9uIGxhZXVmdCBsZWlkZXIgaW5zIExlZXJlLApvZGVyIG1vZWNodGVzdCBEVSBhbGwgZGllIExldXRlIGF1ZiBlaW5lbiAiVGlja3RpbWVyIiAoYWxsZSA1IG1pbnV0ZW4gZWluIApSZXR1cm4gaW5zIE11ZCBzY2hpY2tlbj8pIHVlYmVycHJ1ZWZlbj8gOykKCllUQ3UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiAxMFNQLUFienVnIGFscyBUb2Rlc2ZvbGdlIChBbWFyeWxsaXMsICAxLiBOb3YgMjAwMiwgMTQ6MTI6MTEpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzYxNTYyNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM2MDU0ODM1CnVuZCBzZWxic3Qgd2Vubiwgd2FzIHd1ZXJkZSBkYXMgYnJpbmdlbj8gTWFuIHNldHp0IHNpY2ggbmVuICJ3ZWciIHVuZCBzY2hpY2t0CmhhbHQgcmVnZWxtYWVzc2lnIGVpbiAiRW50ZXIiIG8uYWUuIGlucyBNdWQuLi4gc28gd2hhdD8gSWNoIGhhbHRlIGRhcyBmdWVyCmtvbXBsZXR0IHVlYmVyZmx1ZXNzaWcsIHdlaWwgZXMgbnVyIHVubm9ldGlnZSBSZWNoZW56ZWl0IGtvc3RldCB1bmQgZWggdm9uCmplZGVtICJoaW50ZXJnYW5nZW4iIHdpcmQuCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogMTBTUC1BYnp1ZyBhbHMgVG9kZXNmb2xnZSAoQ3VjaHVsbGluLCAgMS4gTm92IDIwMDIsIDE0OjE5OjA4KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDM2MTU2MzMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNjA1NDgzNQpFcyB3dWVyZGUgenVtaW5kZXN0IGJlaSBkZW4gU3VjaHRpZXMsIGRpZSBkaWUgTmFjaHRzY2hpY2h0IHN0ZWxsZW4sIG5pY2h0CmRlbiBFaW5kcnVjayBzY2hhZmZlbiwgZGFzcyBzaWUgdWViZXJ3YWNodCB3ZXJkZW4sIGFiZXIgdHJvdHpkZW0gYWxsZWluCnNpbmQuIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IDEwU1AtQWJ6dWcgYWxzIFRvZGVzZm9sZ2UgKEFyaywgIDEuIE5vdiAyMDAyLCAxNDoyNjowOSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTAzNjE1NjMzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzYwNTQ4MzUKT2ssIGlociBzZWlkIGhhcnRuYWVja2lnLiBEYXMgQm9lc2UgaW0gU3BpZWxlciAuLi4gZ3V0LiBTbyBsYXNzZW4gc2ljaApuYXR1ZXJsaWNoIHZpZWxlLCB3ZW5uIG5pY2h0IGFsbGUgSWRlZW4gdG90c2NobGFnZW4uIEFsc28sIGJhY2sgdG8gcm91dGluZSA/CgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IDEwU1AtQWJ6dWcgYWxzIFRvZGVzZm9sZ2UgKEFtYXJ5bGxpcywgIDEuIE5vdiAyMDAyLCAxNDoyNzoyNyk6Cn4jISBybj1BcmsgcnQ9MTAzNjE1NzE2OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzYwNTQ4MzUKT2J3b2hsIG1laW4gQXJ0aWtlbCBpbWhvIGVpbmVuIHdhaHJlbiBLZXJuIGVudGhhZWx0LCBiZWFjaHRlIG1hbiBkb2NoIGRpZQpSdWJyaWssIGluIGRlciBlciBzdGVodCA6LSkKCkFtYSosIHdlaXNlIG5pZ2duZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiAxMFNQLUFienVnIGFscyBUb2Rlc2ZvbGdlIChDdWNodWxsaW4sICAxLiBOb3YgMjAwMiwgMTg6MDU6MTApOgp+IyEgcm49TWlyaWwgcnQ9MTAzNjE3MDI3OCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMzYwNTQ4MzUKV2lyIGJyYXVjaGVuIExvZXN1bmdlbiwgZGllIG5pY2h0IGF1ZiBlaW5lIEYtVGFzdGUgZ2VsZWd0IHdlcmRlbiBrb2VubmVuLiA6KQoKWVRDdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogc3RhdGkgc3R1dHRnYXJ0IChCYW1iaSwgIDIuIE5vdiAyMDAyLCAxNToyMjoxOSk6Cn4jISBybj1MZWliaSBydD0xMDM2MjQ2Nzc1IHJnPXRyZWZmZW4KfiMhIHRpZD0xMDM2MjM0MDY1CkhhYiBpY2ggZWlnZW50bGljaCBzY2hvbiBkaWUgR2VzY2hpY2h0ZSB2b24gUGFyZGF1eiB1bmQgbWlyIGltIFN0dXR0Z2FydGVyCk1jU2NocmVpTWljaE5pY2h0QW4gZXJ6YWVobHQ/IE5laW4/CkRhcyB3YXIgZWluZSBkZXIgVGFnZSwgd28gd2llZGVyIGRlbW9uc3RyaWVydCB3dXJkZSwgd2llIGZyaWVkbGllYmVuZApibHV0cnVlbnN0aWdlIE11ZGRlciBkb2NoIHNpbmQuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBzdGF0aSBzdHV0dGdhcnQgKExlaWJpLCAgMi4gTm92IDIwMDIsIDE1OjIyOjQ5KToKfiMhIHJuPUJhbWJpIHJ0PTEwMzYyNDY5Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM2MjM0MDY1CmVyemFlaGwgbWFsIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBzdGF0aSBzdHV0dGdhcnQgKEJhbWJpLCAgMi4gTm92IDIwMDIsIDE1OjMyOjM2KToKfiMhIHJuPUxlaWJpIHJ0PTEwMzYyNDY5Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM2MjM0MDY1CmRvbmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBzdGF0aSBzdHV0dGdhcnQgKExlaWJpLCAgMi4gTm92IDIwMDIsIDE1OjMzOjEyKToKfiMhIHJuPUJhbWJpIHJ0PTEwMzYyNDc1NTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM2MjM0MDY1CipncmlucyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTXVwZmVsLCAgMi4gTm92IDIwMDIsIDIyOjI3OjI5KToKRWxkYXJvbiB0ZWlsdCBEaXIgbWl0OiBTZWt1bmRlLCBtdXNzIG5vY2ggbWVkaSA6KQpbVG9kOkxhcnNdIEVpbiBzY2h3YXJ6ZXMgU2tlbGV0dCBoYXQgZ2VyYWRlIEVsZGFyb24gdW1nZWJyYWNodC4KW1RvZDpFaW4gc2Nod2FyemVzIFNrZWxldHRdIFdpbGxrb21tZW4gaW0gQ2x1YiwgRWxkYXJvbiEKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChFbGRhcm9uLCAgMi4gTm92IDIwMDIsIDIyOjQ2OjEzKToKfiMhIHJuPU11cGZlbCBydD0xMDM2MjcyNDQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNjI3MjQ0OQpXYXJ1bSBvZGVyIHdlZ2VuIHdlc3NlbiB3YXIgaWNoIHdvaGwgaW4gUGFyYTQ/CgpFbGRhcm9uLCBncnVuemVuZCAoYykgQ3VjaCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRkxXIChQaXRmYWxsLCAgMi4gTm92IDIwMDIsIDIyOjQ2OjQ1KToKfiMhIHJuPUVsZGFyb24gcnQ9MTAzNjI3MzU3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzYyNzI0NDkKd2VnZW4gZGVzIHBvcnRhbHMgYmVpIG1vcmdvdGg/CgpQaXQqIG51ciBzbyB2ZXJtdWh0ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogc3RhdGkgc3R1dHRnYXJ0IChWYW5pb24sICAzLiBOb3YgMjAwMiwgMTI6MDI6MjcpOgp+IyEgb249VmFuaW9uIG90PTEwMzYzMjEzMzMgb2c9dHJlZmZlbgp+IyEgcm49TGVpYmkgcnQ9MTAzNjMyMTIzOSByZz10cmVmZmVuCn4jISB0aWQ9MTAzNjIzNDA2NQpSYW1tbGVyISAKClYqLCBzY2htYXJybnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogc3RhdGkgc3R1dHRnYXJ0IChMZWliaSwgIDMuIE5vdiAyMDAyLCAxMjowMzo1OSk6Cn4jISBvbj1MZWliaSBvdD0xMDM2MzIxMzczIG9nPXRyZWZmZW4KfiMhIHJuPVZhbmlvbiBydD0xMDM2MzIxMzMzIHJnPXRyZWZmZW4KfiMhIHRpZD0xMDM2MjM0MDY1Cm5lZWUgdHJlZmZlbi5yYW1tbGVyIGlzdCBrZWluZSBndXRlIHJ1YnJpayA6KSAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEMuWS5CLk8uUi5HLiAoQ3VjaHVsbGluLCAgMy4gTm92IDIwMDIsIDE3OjAwOjQwKToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTAzNjMzMjkzMCByZz13d3cKfiMhIHRpZD0xMDM2MzI0MDIzCldpcmVsZXNzIEludGVsbGlnZW50IE5lb2h1bWFuIERlc2lnbmVkIGZvciBPYnNlcnZhdGlvbiBhbmQgV29ybGR3aWRlIFNhYm90YWdlCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQy5ZLkIuTy5SLkcuIChWYW5pb24sICAzLiBOb3YgMjAwMiwgMTc6MDI6MDYpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzYzMzkyNDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM2MzI0MDIzClZlcm11dGxpY2ggbmljaCBkZXIgR2VuZXJhdG9yLCBzb25kZXJuIGhhcnQgdmVyZHJhdGV0IDopCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQy5ZLkIuTy5SLkcuIChXaGl0ZXRpZ2VyLCAgMy4gTm92IDIwMDIsIDE3OjEzOjE0KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDM2MzM5MjQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNjMyNDAyMwpMaWZlZm9ybSBJbnRlbmRlZCBmb3IgTnVsbGlmaWNhdGlvbiBhbmQgVWx0aW1hdGUgWGVub2NpZGUKKHdhcyBpc3QgeGVub2NpZGU/Pz8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBDLlkuQi5PLlIuRy4gKEN1Y2h1bGxpbiwgIDMuIE5vdiAyMDAyLCAxNzoxOTowMyk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwMzYzMzk5OTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM2MzI0MDIzClhlbm8uLi4gZnJlbWQsIGZyZW1kYXJ0aWcgKHdpZSBpbiAiWGVub21vcnBoIikKLi4uemlkICB0b2V0ZW5kLCBhYnRvZXRlbmQgKHdpZSBpbiAiRnVuZ2l6aWQiKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEMuWS5CLk8uUi5HLiAoSmFkYXdpbiwgIDMuIE5vdiAyMDAyLCAxNzoyNzo1NCk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwMzYzMzk5OTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM2MzI0MDIzCkF1c2xvZXNjaHVuZyBlaW5lciBmcmVtZGVuIFJhc3NlLgpKYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBDLlkuQi5PLlIuRy4gKFdoaXRldGlnZXIsICAzLiBOb3YgMjAwMiwgMTc6Mzc6MjApOgp+IyEgcm49SmFkYXdpbiBydD0xMDM2MzQwODc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNjMyNDAyMwppbiBkZW0gZmFsbCB3aW5kb29mIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdGFtbXRpc2NoIEJvbm4gOykgKExpYXJhLCAgMy4gTm92IDIwMDIsIDIyOjI1OjM3KToKWHh4eHggdGVpbHQgRGlyIG1pdDogQkVJIFBBRFJFSUM/IQpYeHh4eCB0ZWlsdCBEaXIgbWl0OiBiZWkgZGVtIGR1ZXJmdGUgc2VsYnN0IGRpZSBXb2hudW5nIGJ1Z2dlbiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5laW4sIGRhIHdvaG5lIGljaCBuaWNodCEgKFdhcmssICAzLiBOb3YgMjAwMiwgMjI6Mjc6NDUpOgpEdSBzZXR6dCBlaW5lbiBtb2VyZGVyaXNjaGVuIFRvZGVzc3Rvc3MgZ2VnZW4gZGVuIEtsaXR6ZWxkcm9tIGFuLgogIER1IHZlcm5pY2h0ZXN0IGRlbiBLbGl0emVsZHJvbS4KRGVyIEtsaXR6ZWxkcm9tIGZhZWxsdCB0b3QgenUgQm9kZW4uCltNb2VyZGVyOkdlaXN0IGVpbmVzIEtsaXR6ZWxkcm9tc10gV2FyayBldW50IGRvbXVtIQpEdSBoYXN0IGpldHp0IDE0MSBMZWJlbnNwdW5rdGUgdW5kIDQ5IEtvbnplbnRyYXRpb25zcHVua3RlLgo+IER1IGhhc3QgamV0enQgMTQyIExlYmVuc3B1bmt0ZSB1bmQgNDkgS29uemVudHJhdGlvbnNwdW5rdGUuCldhYWFhYWghIER1IHJ1dHNjaHQgcGxvZXR6bGljaCBhdXMgdW5kIHNjaGxpdHRlcnN0IG5hY2ggTm9yZGVuLgpFaXNlYmVuZS4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9iZW4sIHN1ZWRlbiB1bmQgbm9yZGVuLgpFaW4gRWlzemFwZmVuLgpFaW4gUmluZyBkZXIgR2VzY2hpY2tsaWNoa2VpdCAoLTIpLgpFaXNlYmVuZS4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCkJlaW0gRWlzdGl0YW4uCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBzdWVkZW4uCkJyYW4gc2FtbWVsdCBmdWVyIGRpZSBDb3NhIE5vc3RyYS4KRWluIFRpdGFuIGF1cyBFaXMuCiAgRGVyIFRpdGFuIGF1cyBFaXMgZ3JlaWZ0IERpY2ggbWl0IGRlbSBFaXNzdGFiIGFuLgogIERlciBUaXRhbiBhdXMgRWlzIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KRHUgaGFzdCBqZXR6dCAxMjUgTGViZW5zcHVua3RlIHVuZCA0OSBLb256ZW50cmF0aW9uc3B1bmt0ZS4KRGllIEFuZ3N0IGlzdCBzdGFlcmtlciBhbHMgRHUgLi4uIER1IHdpbGxzdCBudXIgbm9jaCB3ZWcgaGllci4KCldhcmsgKGZ1ZWhsdCBzaWNoIGJlaSBkZW0gVGl0YW5lbiBnYXIgbmljaHQgenUgSGF1c2UpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNb250YW51cywgYml0dGUgdWViZXJnZWhlbjogZGUuYWx0Lm5ldGRpZ2VzdC4uLiAoUm9uZGEsICAzLiBOb3YgMjAwMiwgMjI6MzA6MjkpOgpGcm9tOiBTdGVmZmVuIEJ1ZWhsZXIgPHN0ZWZmZW4uYnVlaGxlckBmcmVlbmV0LmRlPgpOZXdzZ3JvdXBzOiBkZS5yZWMubXVzaWsubWlzYwpTdWJqZWN0OiBSZTogc29mdHdhcmUgenVtIHZlcnplcnJlbgpEYXRlOiBXZWQsIDMwIE9jdCAyMDAyIDEwOjE3OjA3Ck1lc3NhZ2UtSUQ6IDwzZGJmYTM5NyQwJDE3MCQ5YjYyMmQ5ZUBuZXdzLmZyZWVuZXQuZGU+CgpMdXR6IEJvamFzY2ggc2NocmllYjoKPiBCZW5ueSBHYXRleiBzY2hyaWViOgo+Pgo+PiB3ZWlzcyBqZW1hbmQgbWl0IHdlbGVjaHIgc29mdHdhcmUgaWNoIGluCj4+IGVjaHR6ZWl0IGF1ZGkgdmVyYWVuZGVybiBrYW5uPz8KPgo+IFVtIGVpbmVuIEF1ZGkgenUgdmVyYWVuZGVybiwgZmFlaHJ0IG1hbiBpbiBlY2h0emVpdCBnZWdlbiBlaW5lbgo+IEJydWVja2VucGZlaWxlciEKCkZzaGNhbGUgQW50d29ydC4gQnJ1ZWNrZW5wZmVpbGVyIHNpbmQgSGFyZHdhcmUuCgpWaWVsZSBHcnVlc3NlClN0ZWZmZW4sIEF1ZGktRmFocmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmVpbiwgZGEgd29obmUgaWNoIG5pY2h0ISAoRWxkYXJvbiwgIDMuIE5vdiAyMDAyLCAyMjozMDozNyk6Cn4jISBybj1XYXJrIHJ0PTEwMzYzNTg4NjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM2MzU4ODY1CkFsbGVzIGFid2VydGVuLCBhbGxlIG1pdGVpbmFuZGVyIQoKRWxkYXJvbiwga29wZnNjaHVldHRlbG5kIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTW9udGFudXMsIGJpdHRlIHVlYmVyZ2VoZW46IGRlLmFsdC5uZXRkaWdlc3QuLi4gKFJvbmRhLCAgMy4gTm92IDIwMDIsIDIyOjQwOjQ5KToKfiMhIHJuPVJvbmRhIHJ0PTEwMzYzNTkwMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM2MzU5MDI5CkRhbWl0IE1vbnRhbnVzIGRlLmFsdC5uZXRkaWdlc3QgZWluZmFjaGVyIHVlYmVyZ2VoZW4ga2Fubiwga29lbm5lbiB3aXIgZGFzIGphCmluIGRpZXNlbSBUaHJlYWQgbWVnYXNjaG1hcnJubWFlc3NpZyBwb3N0ZW4gOy0pCgpGcm9tOiBuaWVnc2NoQHdlYi5kZSAoSGFucyBOaWVnc2NoKQpOZXdzZ3JvdXBzOiBkZS5ldGMuaGF1c2hhbHQKU3ViamVjdDogUmU6IExpY2h0IGF1cyBpbSBLdWVobHNjaHJhbms/CkRhdGU6IDI1IE9jdCAyMDAyIDIzOjUxOjAwICswMjAwCk1lc3NhZ2UtSUQ6IDw4WllqdTNUN2hmQkBuaWVnc2NoLndlYi5kZT4KCkhhbGxvIENocmlzIEhlbGxiZXJnIQoKRHUgaGF0dGVzdCBhbSAyNS4xMC4wMiBlaW5lIE5ld3MgdWViZXIKIkxpY2h0IGF1cyBpbSBLdWVobHNjaHJhbms/IiBnZXNjaHJpZWJlbi4KCj5BYmVyIHdpZSBrcmllZyBpY2ggcmF1cywgb2IgZGFzIGxpY2h0IGF1cyBpc3QsIHdlbm4gaWNoIGRpZSBUdWVyICAKPmdlc2NobG9zc2VuIGhhYj8KCjEuIEVpbmUgTWF1cyBpbSBLdWVobHNjaHJhbmsgdmVyc3RlY2tlbi4KMi4gRWxlZmFudCBhdXMgZGVtIFpvbyBhdXNib3JnZW4KMy4gVHVlciBhdWYsIEVsZWZhbnQgcmVpbiwgVHVlciB6dS4KNC4gV2VubiBkZXIgRWxmZWFudCBpbiBQYW5payBsYXV0ICJUcm9lcm9lIiBydWZ0IGlzdCBkYXMgTGljaHQgYW5nZWJsaWViZW4gIAp1bmQgZXIgaGF0IHNpY2ggaGFsdCB2b3IgZGVyIE1hdXMgZXJzY2hyZWNrdC4KCj5IYXQgamVtYW5kIHZpZWxsZWljaHQgZWluZW4gVGlwcD8KClByb2JsZW1hdGlzY2ggd2lyZCBlcyB3ZW5uIER1IGhlcmF1c2ZpbmRlbiBtb2VjaHRlc3Qgb2IgZGFzIExpY2h0IGltICAKSGFuZHNjaHVoZmFjaCBhdWNoIGF1c2dlaHQuLi4uLmRlciBFbGVmYW50IGthbSBpbW1lciB3aWVkZXIgYXVzIGRlbSAgCkFzY2hlbmJlY2hlciBiZXZvciBpY2ggZGFzIEhhbmRzY2h1aGZhY2ggenVtYWNoZW4ga29ubnRlLgoKbWZnLCBIYW5zIE5pZWdzY2gKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiAxMFNQLUFienVnIGFscyBUb2Rlc2ZvbGdlIChCYW1idWxrbywgIDQuIE5vdiAyMDAyLCAxMzo1NDowOSk6Cn4jISBybj1NdXBmZWwgcnQ9MTAzNjA5NDM0NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzYwNTQ4MzUKU3RpbW10IG5pY2h0LiBBbGxlcyBsdWVnZS4gSWNoIGhhdHRlIGJlc3RpbW10IHp3ZWkgb2RlciBkcmVpIGFuZGVyZSBpbiBkZW4KbGV0enRlbiA3IEphaHJlbiA6LSkKCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiAxMFNQLUFienVnIGFscyBUb2Rlc2ZvbGdlIChCb2luZywgIDQuIE5vdiAyMDAyLCAxMzo1Nzo0OSk6Cn4jISBybj1CYW1idWxrbyBydD0xMDM2NDE0NDQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNjA1NDgzNQpNYWNoIGxpZWJlciBEZWluIEdlYmlldCBmZXJ0aWcsIGFuc3RhdHQgaGllciBBcnRpa2VsIHp1IHNjaHJlaWJlbiAuLi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IDEwU1AtQWJ6dWcgYWxzIFRvZGVzZm9sZ2UgKEJhbWJ1bGtvLCAgNC4gTm92IDIwMDIsIDEzOjU4OjQ1KToKfiMhIHJuPUJvaW5nIHJ0PTEwMzY0MTQ2Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM2MDU0ODM1CkFlaG0uLi5vayBpc3QgbW9yZ2VuIGZlcnRpZy4gOi0pCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IDEwU1AtQWJ6dWcgYWxzIFRvZGVzZm9sZ2UgKEJhbWJpLCAgNC4gTm92IDIwMDIsIDIzOjUwOjExKToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEwMzY0MTQ3MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM2MDU0ODM1Ck9oLiBEYXMgd2FlciBlaW4gUHJvYmxlbS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RpbGxlIE5hY2h0IChaYXJuaXlhLCAgNS4gTm92IDIwMDIsIDA3OjA0OjI5KToKRHUgaG9lcnN0IGRpZSBVaHIgc2NobGFnZW46IEVzIGlzdCBqZXR6dCA0IFVoci4KRHUgaG9lcnN0IGRpZSBVaHIgc2NobGFnZW46IEVzIGlzdCBqZXR6dCA1IFVoci4KRHUgaG9lcnN0IGRpZSBVaHIgc2NobGFnZW46IEVzIGlzdCBqZXR6dCA2IFVoci4KRHUgaG9lcnN0IGRpZSBVaHIgc2NobGFnZW46IEVzIGlzdCBqZXR6dCA3IFVoci4KCkRhIHdhciBuaWNodCB3aXJrbGljaCB3YXMgbG9zLi4uLiAKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPYiBlciBkYXMgZXJuc3QgbWVpbnQ/IChNb3Jnb3RoLCAgNS4gTm92IDIwMDIsIDA5OjMwOjQ1KToKRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuICAgICAgICAgICAgICAgICAgICAgICAgCltTZWhlcjpNb3Jnb3RoXSB0YW50ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApbU2VoZXI6U2F1bF0gbWFjaHQgZGllIGplbWFuZD8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKRHUgYmlzdCBqZXR6dCB1bnNpY2h0YmFyLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltTZWhlcjooTW9yZ290aCldIGljaD8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApEdSBiaXN0IGpldHp0IHNpY2h0YmFyLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKW1NlaGVyOlNhdWxdIG9rLCBkYW5uIGxhcyBpY2ggZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgClNhdWwgdGVpbHQgRGlyIG1pdDogYmlzdCBkdSBqZXR6dCBhbiBkZXIgaHlkcmEgZHJhbm4gb2RlciBuaWNodD8gWzA5OjI4XSAgICAgIApEdSB0ZWlsc3QgU2F1bCBtaXQ6IGFlaG0uIGljaCBiaW4gTWFnaWVyICEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9laD8gKExpYXJhLCAgNS4gTm92IDIwMDIsIDE5OjU2OjA4KToKW0FiZW50ZXVlcjo8UXVlc3Q+XSBWZXNwaW5vIGhhdCBnZXJhZGUgZWluIEFiZW50ZXVlciBiZXN0YW5kZW46IERpZSBRdWVzdCBtaXQKW0FiZW50ZXVlcjo8UXVlc3Q+XSBkZXIgTWF1cyAgPDE5OjUzOjA3PgpbQWJlbnRldWVyOkVpbiBCdWVyb2tyYXRdIEdyYXR1bGllcmUgRGlyLCBWZXNwaW5vLCB6dXIgUXVlc3QgbWl0IGRlciBNYXVzIQpbQWJlbnRldWVyOkVpbiBCdWVyb2tyYXRdIFsxNzU3XSAgPDE5OjUzOjA3PgpbQWJlbnRldWVyOjxRdWVzdD5dIFphdWJlcmh1dCBoYXQgZ2VyYWRlIGVpbiBBYmVudGV1ZXIgYmVzdGFuZGVuOiBEaWUgUXVlc3QKW0FiZW50ZXVlcjo8UXVlc3Q+XSBtaXQgZGVyIE1hdXMgIDwxOTo1NDoxND4KW0FiZW50ZXVlcjpFaW4gQnVlcm9rcmF0XSBHcmF0dWxpZXJlIERpciwgWmF1YmVyaHV0LCB6dXIgUXVlc3QgbWl0IGRlciBNYXVzIQpbQWJlbnRldWVyOkVpbiBCdWVyb2tyYXRdIFsxNzU5XSAgPDE5OjU0OjE0PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFiZWkgaGF0IGVycyBub2NoIGdhciBuaWNoIHByb2JpZXJ0IC4uLiAoS2FkYWJyYSwgIDUuIE5vdiAyMDAyLCAyMDoyOTo0OSk6CkR1IHRlaWxzdCBBcmsgbWl0OiBzbyBSZXplcHRlIGF1c2RydWNrZW4sIGRlbSBuYWVjaHN0ZW4gTlBDIGluIGRpZSBIYW5kCkR1IHRlaWxzdCBBcmsgbWl0OiBkcnVlY2tlbiB1bmQgQmpvZXJuIFN0YXJraW1hcm0gaXN0IERlaW4gT25rZWwgOi0pCj4gQXJrICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQprYWRhYnJhIChpbiBpaHJlciBoYWV1c2xpY2hlbiBFaHJlIGdla3JhZW5rdCA6LSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmQgbm9jaCBlaW4gRnJldmVsIDopIChCb2luZywgIDYuIE5vdiAyMDAyLCAxMDoyMzoxNik6Cn4jISBvbj1UaGFyZ29yIG90PTEwMzY1MjYxNTAgb2c9bWVnYXNjaG1hcnJuCkphIGljaCB3ZXJkZSBkZW4gVGhyZWFkIG51biB1bmJlaGVsbGlndCBsYXNzZW4gOikKVGhhcmdvcgpxdWVydHJlaWJlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IDEyIEt1Z2VsbiBzb2xsc3QgRHUgd2llZ2VuLi4uIChDdWNodWxsaW4sICA2LiBOb3YgMjAwMiwgMTc6MjY6MTYpOgp+IyEgcm49SHVtbmkgcnQ9MTAzNjU5OTg5NiByZz1wdWl6Cn4jISB0aWQ9MTAzNjU5MTQ4MApEYSBzcHJpY2h0IGRlciBLcnlwdG9hbmFseXRpa2VyIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdWNoISBXbyBpc3QgbWVpbiBBcnRpa2VsIGhpbiAoR3JpbW1ib3JuLCAgNi4gTm92IDIwMDIsIDIwOjI0OjEzKToKfiMhIG9uPVRoYXJnb3Igb3Q9MTAzNjYwNjQyNyBvZz1tZWdhc2NobWFycm4KLi4gZ2FyIG5pY2h0IHZlcmxlZ2VuIHdlZ2VuIGRlcyB2ZXJsZWdlbnMKVGhhcmdvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hdGhlIChHcmltbWJvcm4sICA2LiBOb3YgMjAwMiwgMjI6MTk6MjQpOgp+IyEgcm49QW5vcmlzIHJ0PTEwMzY2MTc0MTkgcmc9cHVpegp+IyEgdGlkPTEwMzY2MTc0MTkKRWxlbWVudGFyOiBub2NoIGxhaG1lciBhbHMgaWNoLgpIYWIgaWNoIHdhcyBnZXdvbm5lbj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNYXRoZSAoR3JpbW1ib3JuLCAgNi4gTm92IDIwMDIsIDIyOjIwOjA0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDM2NjE3NTY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNjYxNzQxOQpPaCwgaWNoIGhhYiBtaWNoIHZlcnRhbiwgaWNoIGJlemllaGUgbWljaCBuYXR1ZXJsaWNoIGF1ZiBkaWUgR2VzY2h3aW5kaWdrZWl0CnZvbiBCLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBWZXJsZWdlciBnZXN1Y2h0IChKYWRhd2luLCAgNy4gTm92IDIwMDIsIDAyOjA2OjU1KToKfiMhIG9uPUphZGF3aW4gb3Q9MTAzNjYxNzgzMSBvZz1ldGlrZXR0ZQp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzY2MTIzMzMgcmc9ZXRpa2V0dGUKfiMhIHRpZD0xMDM2NjExNzAwCkdlbmF1LCBrZWluZSBCYW1iaXMgYnJhdGVuLCBvZGVyIGRhcyB3aXJkIG5peCBtaXQgZGVuIDEwMC4KSmFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFZlcmxlZ2VyIGdlc3VjaHQgKEdyaW1tYm9ybiwgIDcuIE5vdiAyMDAyLCAxMDo0MDoyNCk6Cn4jISBybj1Cb2luZyBydD0xMDM2NjYxNDkzIHJnPWV0aWtldHRlCn4jISB0aWQ9MTAzNjYxMTcwMApXZW5uIER1IGpldHp0IGdsYXVic3QgZGFtaXQgYmVpIG1pciBlaW5lbiBQYXJhbm9pYS1TY2h1YiBhdXN6dWxvZXNlbiBtdXNzIGljaApEaWNoIGxlaWRlciBlbnR0YWV1c2NoZW4gLSBpY2ggd2Vpc3Mgc2Nob24gbGFlbmdlciBkYXNzIHNpZSBoaW50ZXIgbWlyIGhlcgpzaW4qI3t7XStAXiVefX19Tk8gQ0FSUklFUgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFic29sdXQgU2lubmxvcyAoQ2F0d2VhemxlLCAgNy4gTm92IDIwMDIsIDEyOjQzOjM5KToKfiMhIG9uPU1hdGlzIG90PTEwMzY2Njg5NTkgb2c9bWVnYXNjaG1hcnJuCkRpZSBpc3QgYWJzb2x1dCBzaW5ubG9zIHVuZCBudXIgMSBaZWlsZSwgcGFzc3QgYWxzbyBndXQgaW4gZGllc2UgUnVicmlrIDpvKS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBYnNvbHV0IFNpbm5sb3MgKENhdHdlYXpsZSwgIDcuIE5vdiAyMDAyLCAxMjo0Mzo0MCk6Cn4jISBvbj1BbGtvaG9sIG90PTEwMzY2NjkxMDIgb2c9bWVnYXNjaG1hcnJuCn4jISBybj1NYXRpcyBydD0xMDM2NjY4OTU5IHJnPW1lZ2FzY2htYXJybgp+IyEgdGlkPTEwMzY2Njg5NTkKZ2VuYXUgOikpCgpNb2VnZSBpY2ggZXVjaCBuaWUgYXVzZ2VoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWJzb2x1dCBTaW5ubG9zIChDYXR3ZWF6bGUsICA3LiBOb3YgMjAwMiwgMTI6NDM6NDEpOgp+IyEgb249Q2F0d2VhemxlIG90PTEwMzY2Njk0MTEgb2c9bWVnYXNjaG1hcnJuCn4jISBybj1NYXRpcyBydD0xMDM2NjY4OTU5IHJnPW1lZ2FzY2htYXJybgp+IyEgdGlkPTEwMzY2Njg5NTkKQWJzb2x1dCBzaW5ubG9zZSBFaW56ZWlsZXIgZ2Vob2VyZW4gaW4gZGllIFJ1YnJpayBzY2htYXJybiB1bmQgbmljaHQgbmFjaAptZWdhc2NobWFycm4uIE1lZ2FzY2htYXJybiBoYXQgZWluIGV0d2FzIGFuZGVyZXMgVG9waWMsIGRhcyBkaXIgc2ljaGVyIGplbWFuZApiZXJlaXQgaXN0IHp1IGVya2xhZXJlbi4KCkljaCB3YXIgYWxzbyBwcm92b2thbnQgZ2VudWcsIGphPyA6LSkgTmEgbWFjaHQgbmljaHRzLCBBdXNkYXVlciBoYWIgaWNoIGF1Y2guCgpZb3VycyB0cnVseSwKICAgICBDYXQtInVuZCBjby4iLXdlYXpsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBYnNvbHV0IFNpbm5sb3MgKENhdHdlYXpsZSwgIDcuIE5vdiAyMDAyLCAxMzowMDoxNSk6Cn4jISBvbj1BbGtvaG9sIG90PTEwMzY2Njk1Mjcgb2c9bWVnYXNjaG1hcnJuCn4jISBybj1DYXR3ZWF6bGUgcnQ9MTAzNjY2OTQyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzY2Njg5NTkKdWViZXJuZWhtZW4gc2llIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZWl0ZXJoaW4gYWJzb2x1dCBzaW5ubG9zIChCb2luZywgIDcuIE5vdiAyMDAyLCAxMzowOTo1MCk6Cn4jISBvbj1NYXRpcyBvdD0xMDM2NjcwODU0IG9nPW1lZ2FzY2htYXJybgpJY2ggbW9lY2h0ZSBhdWNoIHdlaXRlcmhpbiBhYnNvbHV0IHNpbm5sb3MgbWVnYXNjaG1hcnJuIGR1ZXJmZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VpdGVyaGluIGFic29sdXQgc2lubmxvcyAoQm9pbmcsICA3LiBOb3YgMjAwMiwgMTM6MDk6NTgpOgp+IyEgb249QWxrb2hvbCBvdD0xMDM2NjcwOTg0IG9nPW1lZ2FzY2htYXJybgp+IyEgcm49TWF0aXMgcnQ9MTAzNjY3MDg1NCByZz1tZWdhc2NobWFycm4KfiMhIHRpZD0xMDM2NjcwODU0CmRpZSB3ZXJkZW4gamV0enQgZWggZ2Vsb2VzY2h0LCBuaWNodCBtYWwgdmVyc2Nob2JlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQWJzb2x1dCBTaW5ubG9zIChDYXR3ZWF6bGUsICA3LiBOb3YgMjAwMiwgMTM6MTI6NTkpOgp+IyEgb249QWxrb2hvbCBvdD0xMDM2NjcwNjM3IG9nPW1lZ2FzY2htYXJybgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMzY2NzA0MTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM2NjY4OTU5CmljaCBzb2xsdGUgbWlyIG5lbiBza3JpcHQgc2NocmVpYmVuIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQWJzb2x1dCBTaW5ubG9zIChDYXR3ZWF6bGUsICA3LiBOb3YgMjAwMiwgMTM6MTM6MTMpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwMzY2NzExNzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM2NjY4OTU5Ck5pY2h0IG5vZXRpZyA6LSkKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjM0NTY6IFRvdGFsIHNpbm5sb3MsIGFiZXIgZGllc21hbCBnZXRhcm50ISAoR3JpbW1ib3JuLCAgNy4gTm92IDIwMDIsIDEzOjI1OjMyKToKfiMhIG9uPU1hdGlzIG90PTEwMzY2NzE5MDggb2c9bWVnYXNjaG1hcnJuClNpbm5sb3MgYmxlaWJ0IHNpbm5sb3MsIHVuZCAuLi4gYWVoIC4uLiBhZWggLi4uIHNvcnJ5LCB2ZXJnZXNzZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjM0NTc6IFRvdGFsIHNpbm5sb3MsIGFiZXIgZGllc21hbCBnZXRhcm50ISAoR3JpbW1ib3JuLCAgNy4gTm92IDIwMDIsIDEzOjI3OjAzKToKfiMhIG9uPUFsa29ob2wgb3Q9MTAzNjY3MjAwOCBvZz1tZWdhc2NobWFycm4KfiMhIHJuPUdyaW1tYm9ybiBydD0xMDM2NjcxOTMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNjY3MTkzMgo6anViZWx0IE1hdGlzIHp1LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTIzNDU2OiBUb3RhbCBzaW5ubG9zLCBhYmVyIGRpZXNtYWwgZ2V0YXJudCEgKENhdHdlYXpsZSwgIDcuIE5vdiAyMDAyLCAxMzozMzo0NCk6Cn4jISBvbj1WZWN0b3Igb3Q9MTAzNjY3MjAzNiBvZz1tZWdhc2NobWFycm4KU2lubmxvcyBibGVpYnQgc2lubmxvcywgdW5kIC4uLiBhZWggLi4uIGFlaCAuLi4gc29ycnksIHZlcmdlc3Nlbi4KKnNpY2gtbWF0aXMtYW5zY2hsaWVzcyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyMzQ1ODogVG90YWwgc2lubmxvcywgYWJlciBkaWVzbWFsIGdldGFybnQhIChDYXR3ZWF6bGUsICA3LiBOb3YgMjAwMiwgMTM6MzM6NTYpOgp+IyEgb249QWxrb2hvbCBvdD0xMDM2NjcyMDc1IG9nPW1lZ2FzY2htYXJybgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzY2NzIwMjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM2NjcxOTMyCm5hIHphcCBtaWNoIGRvY2ggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyMzQ1NiAoQ2F0d2VhemxlLCAgNy4gTm92IDIwMDIsIDEzOjM0OjMwKToKfiMhIG9uPVZlY3RvciBvdD0xMDM2NjcyNDU2IG9nPW1lZ2FzY2htYXJybgpTaW5ubG9zIGJsZWlidCBzaW5ubG9zLCB1bmQgLi4uIGFlaCAuLi4gYWVoIC4uLiBzb3JyeSwgdmVyZ2Vzc2VuLgoqc2ljaC1tYXRpcy1hbnNjaGxpZXNzKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGFjaC4uLiBudSBpcyB3YXMgZHJpbm4sIGlubmVyIE1QQSAtIFNlcXVlbCBJSSAoR3JpbW1ib3JuLCAgNy4gTm92IDIwMDIsIDEzOjM2OjUxKToKfiMhIG9uPU1hdGlzIG90PTEwMzY2NzI1NzQgb2c9bWVnYXNjaG1hcnJuCkhpZXJtaXQgYmlldGUgaWNoIGVpbmUgdG90YWwgc2lubmxvc2UgQWx0ZXJuYXRpdmUgZ2VnZW4gZGFzIEVzdGFibGlzaG1lbnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjM0NTc6IFRvdGFsIHNpbm5sb3MsIGFiZXIgZGllc21hbCBnZXRhcm50ISAoR3JpbW1ib3JuLCAgNy4gTm92IDIwMDIsIDEzOjM3OjE5KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDM2NjcyNDI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNjY3MjQyNApNYWNocyB3aWUgYW5kZXJlIGF1Y2g6IGJsZWliIHNvbGFuZ2Ugd28gZGFzIGhpbmdlaG9lcnQgYmlzIER1IGVudG5lcnZ0IGluIGVpbmUKZWlnZW5lIFJ1YnJpayBhdXNnZWxhZ2VydCB3aXJzdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW5uLCBpbm5lciBNUEEgLSBTZXF1ZWwgSUkgKEdyaW1tYm9ybiwgIDcuIE5vdiAyMDAyLCAxMzozNzo0MSk6Cn4jISBvbj1WZWN0b3Igb3Q9MTAzNjY3MjY0MCBvZz1tZWdhc2NobWFycm4KfiMhIHJuPU1hdGlzIHJ0PTEwMzY2NzI1NzQgcmc9bWVnYXNjaG1hcnJuCn4jISB0aWQ9MTAzNjY3MjU3NAppY2ggYmlldGUgbmUgdHVldGUgaGFyaWJvIGZ1ZXIgcmVeMTIzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW5uLCBpbm5lciBNUEEgLSBTZXF1ZWwgSUkgKEdyaW1tYm9ybiwgIDcuIE5vdiAyMDAyLCAxMzozODo0Myk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzNjY3MjY2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzY2NzI1NzQKV2llIGljaCBpbiBtZWluZW0gZmVobHJlcGxpZXRlbiBBcnRpa2VsIHZvcmhpbiBzY2hyaWViIC0gaGllciBiaXN0IER1IGljaHRpZy4KSW4gbWVnYXNjaG1hcnJuIG5pY2h0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIYWNoLi4uIG51IGlzIHdhcyBkcmlubiwgaW5uZXIgTVBBIC0gU2VxdWVsIElJIChHcmltbWJvcm4sICA3LiBOb3YgMjAwMiwgMTM6NDE6NDUpOgp+IyEgb249QWxrb2hvbCBvdD0xMDM2NjcyODQ5IG9nPW1lZ2FzY2htYXJybgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzY2NzI3MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM2NjcyNTc0Cm51biBwYWNrdCBtaWNoIGRvY2ggZW5kbGljaCBpbnMgamFpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNwYXNzYnJlbXNlIChDYXR3ZWF6bGUsICA3LiBOb3YgMjAwMiwgMTM6NTc6MTQpOgp+IyEgb249Q2F0d2VhemxlIG90PTEwMzY2NzM4MjAgb2c9ZXRpa2V0dGUKfiMhIHJuPUJvaW5nIHJ0PTEwMzY2NzM3MzYgcmc9ZXRpa2V0dGUKfiMhIHRpZD0xMDM2NjczNzM2Ck1pc3QsIEJvaW5nIHdhciBzY2huZWxsZXIgOi0pCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzcGFzc2JyZW1zZSAoQ2F0d2VhemxlLCAgNy4gTm92IDIwMDIsIDEzOjU5OjIzKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDM2NjczODg2IG9nPWV0aWtldHRlCn4jISBybj1DYXR3ZWF6bGUgcnQ9MTAzNjY3MzgyMCByZz1ldGlrZXR0ZQp+IyEgdGlkPTEwMzY2NzM3MzYKSG1tLCBhdWYgZGllIElkZWUsIGRpZSBtcGEgd2VnenVuZWhtZW4gYmluIGljaCBqYSBnYXIgbmljaHQgZ2Vrb21tZW4uIEdsZWljaAptYWwgZWluIG5ldWVzIGFsaWFzIHNjaG1pZWRlbiwgZGFua2UgZnVlciBkZW4gVGlwLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW50cmFnIChHcmltbWJvcm4sICA3LiBOb3YgMjAwMiwgMTQ6MDk6MDkpOgp+IyEgb249Q2F0d2VhemxlIG90PTEwMzY2NzQ1NDEgb2c9bWVnYXNjaG1hcnJuCn4jISBybj1NYXRpcyBydD0xMDM2Njc0NDU1IHJnPW1lZ2FzY2htYXJybgp+IyEgdGlkPTEwMzY2NzQ0NTUKU28gZWluIFNjaG1hcnJuIC4uLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBicmVha19zdHJpbmcgdXN3IChKYWRhd2luLCAgNy4gTm92IDIwMDIsIDIxOjU3OjMxKToKfiMhIG9uPUphZGF3aW4gb3Q9MTAzNjcwMjU3NSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49S2V5IHJ0PTEwMzY2NjgxNzkgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDM2MTUwNzQ3CkFiZXIgYXVjaCBkYW1hbHMgd2FyIG1hbiBkb2NoIHdvaGwgbWl0IExldmVsIDEwIG5pY2h0IFNlaGVyLCBvZGVyPwpKYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogVmVybGVnZXIgZ2VzdWNodCAoR3JpbW1ib3JuLCAgOC4gTm92IDIwMDIsIDEyOjEyOjA0KToKfiMhIHJuPUNhZHJhY2ggcnQ9MTAzNjc1MzgwMyByZz1ldGlrZXR0ZQp+IyEgdGlkPTEwMzY2MTE3MDAKV2FzIG1laW5zdCBEdSBtaXQgIldhcyBpc3QgZWlnZW50bGljaCB3ZW5uIGRlciBUaHJlYWQgZG9jaCBtYWwgZW5kZXQiPyAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeUmVeUmVeU2lubmxvcyAoR3JpbW1ib3JuLCAgOC4gTm92IDIwMDIsIDEzOjA2OjQ2KToKfiMhIG9uPU1hdGlzIG90PTEwMzY3NTU1NzYgb2c9bWVnYXNjaG1hcnJuCk1laHIgU2lubmxvc2lna2VpdC4gVW5kIGF1cyBQcmluemlwIGhpZXIuIEluIG1lbW9yeSBvZiBSLiBBLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlXlJlXlJlXlNpbm5sb3MgKEJvaW5nLCAgOC4gTm92IDIwMDIsIDEzOjU1OjI3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDM2NzU3MjA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNjc1NzIwNgpXZXIgaXN0IFIuQS4/CiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhYnRhdWNoZW4gdW5kIHNvbnN0aWdlcyAoR3JpbW1ib3JuLCAgOC4gTm92IDIwMDIsIDE1OjQ4OjA3KToKfiMhIHJuPU11YWRpYiBydD0xMDM2NzY2Nzk4IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xMDM2NzY2Nzk4CkhlaGVoZS4uLiAqaGFlbmRlcmVpYioKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogYnJlYWtfc3RyaW5nIHVzdyAoUm9sYW5kLCAgOC4gTm92IDIwMDIsIDE4OjAyOjQ1KToKfiMhIHJuPUphZGF3aW4gcnQ9MTAzNjcwMjY1MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzYxNTA3NDcKaG1tbSAxMCBuaWNodCBhYmVyIG1pY2ggZHVlbmt0IGljaCBob2V0dCBzY2hvbiBsdmwgMjAgc2VoZXIgcnVtc3ByaW5nZW4gc2VoZW4KOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBKdWdlbmQuLi4gKEVsZGFyb24sICA4LiBOb3YgMjAwMiwgMTg6MTI6MjUpOgpUaGFudGFsYXMgcnVmdDogMSwgMiwgMywgQWxsZXMsIHdhcyBuaWNodCBiZWkgRHJlaSBhdWYgZGllIEJhdW0gaXN0Li4uCkVyaWEgcnVmdDogKmZyZXUqCgpFbGRhcm9uLCBrb3Bmc2NodWV0dGVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWUgSnVnZW5kLi4uIChSb2xhbmQsICA5LiBOb3YgMjAwMiwgMDM6MDA6MjUpOgp+IyEgcm49RWxkYXJvbiBydD0xMDM2Nzc1NTQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNjc3NTU0NQoKOnNjaG11bnplbHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEVyaW5uZXJ1bmcgdW5kIEhpbndlaXMgKEFwb2xsb25pYSwgIDkuIE5vdiAyMDAyLCAwODoxNjoxOSk6Cn4jISBybj1Ccm90bmFlbCBydD0xMDM2NzczNDQ2IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDM2Njc1Nzg1Ckxlcm4gZG9jaCBlcnN0bWFsLCBkZW4gTmFtZW4gRGVpbmVyIGdvZXR0bGljaGVuIFNjaGxhbXBlIHJpY2h0aWcgenUgc2NocmVpYmVuLApEdSBLYXJvdHRlbm5hc2UuCgpTY2hhbmRlIHVlYmVyIERpY2ggO28pCgpBcG8qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXRkaWdlc3QgKEdyaW1tYm9ybiwgIDkuIE5vdiAyMDAyLCAxOToyNzoxNyk6CkZyb206ICJUaWxvIFJvZWRlciIgPHRpbG8ucm9lZGVyQGVwb3N0LmRlPgpOZXdzZ3JvdXBzOiBkZS5hbHQucmVjLmdldHJhZW5rZQpTdWJqZWN0OiBSZTogQ09DS1RBSUxTCkRhdGU6IFR1ZSwgNSBOb3YgMjAwMiAxOToyMjo0NSArMDEwMApNZXNzYWdlLUlEOiA8YXE5MjhoJHFuNCQwMCQxQG5ld3MudC1vbmxpbmUuY29tPgoKIkhlaWtvIEplbnNlbiIgPGhpZ2hob2hAZnJlZW5ldC5kZT4gc2NocmllYiBpbSBOZXdzYmVpdHJhZwpuZXdzOmFxODJocSQ3Zml1MyQxQElELTE2NzUwMS5uZXdzLmRmbmNpcy5kZS4uLgo+IFdlciB3ZWlzIHdhcyB1ZWJlciBzZXh1ZWxzdGltdWxpZXJlbmRlIENvY2t0YWlscz8KPiBTb2xsIGluIEJlcmxpbiBHZXJhZGUgZGVyIHJlbm5lciBzZWluLgo+CkVpbiBQYWVyY2hlbiBzaXR6dCBpbiBkZXIgS25laXBlLCBhbHMgc2llIGlyZ2VuZHdhbm4gbWVpbnQ6ICJTY2hhdHosIGljaAprZW5uZSBlaW5lbiB0b2xsZW4gQ29ja3RhaWwsIHdpbGxzdGUgZGVuIG5pY2h0IG1hbCBhdXNwcm9iaWVyZW4/Ii4KRXIgd2lsbGlndCBlaW4gdW5kIHNpZSBiZXN0ZWxsdCBlaW4gUGlubmNoZW4gQmFpbGV5J3MgdW5kIGVpbiBQaW5uY2hlbgpMaW1ldHRlbnNhZnQuICJFcyBpc3QgZXR3YXMgc2Nod2llcmlnLCBkdSBtdXNzdCBlcnN0IGRlbiBCYWlsZXkncyBpbiBkZW4KTXVuZCBzY2h1ZXR0ZW4sIGRhbm4gZXJzdCBkZW4gTGltZXR0ZW5zYWZ0IGhpbnRlciIuIEVyIG1hY2h0J3MgZ2VuYXVzbyB3aWUKc2llJ3MgaWhtIHZvcmdlc2NobGFnZW4gaGF0LgoKVCArMCwzIFNla3VuZGVuOiBFaW4gYW5nZW5laG0gd2FybWVzLCB3ZWljaGVzIEdlZnVlaGwgaW0gTXVuZC4KVCArMCw2IFNla3VuZGVuOiBEdXJjaCBkaWUgU2FldXJlIGltIExpbWV0dGVuc2FmdCBnZXJpbm50IGRpZSBTYWhuZSBpbQpCYWlsZXkncyB1bmQga2x1bXB0IHp1c2FtbWVuLgpUICswLDkgU2VrdW5kZW46IFNlaW5lIEdlc2ljaHRzZmFyYmUgbmltbXQgZGllIEZhcmJlIHZvbiBMaW1ldHRlbiBhbiwgZXIKc2NobHVja3QgZGFzIFpldWcgcnVudGVyClQgKzEsMiBTZWt1bmRlbjogU2VpbiBNYWdlbiB2ZXJrcmFtcGZ0IHVuZCBlciB2ZXJzcHVlcnQgZWluZW4gaGVmdGlnZW4gUmVpeiwKc2ljaCB6dSB1ZWJlcmdlYmVuClQgKzMsMCBTZWt1bmRlbjogU2llIGZsdWVzdGVydCBpaG0gaW4ncyBPaHI6ICJEZXIgRHJpbmsgaGVpc3N0ICdCbG93am9iJ3MKUmV2ZW5nZScKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGludXggaXMgYmVzc2VyIGFscyBXaW5kb3dzLiAoR3JpbW1ib3JuLCAxMS4gTm92IDIwMDIsIDA5OjQxOjIxKToKfiMhIG9uPVZhbmlvbiBvdD0xMDM2OTQ4NjAwIG9nPWRpc2t1c3Npb24KfiMhIG9uPVZhbmlvbiBvdD0xMDM2OTQ1NTQyIG9nPWFsbGdlbWVpbmVzCkxvcyBnZWh0cyEKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGludXggaXMgYmVzc2VyIGFscyBXaW5kb3dzLiAoR3JpbW1ib3JuLCAxMS4gTm92IDIwMDIsIDA5OjQxOjIzKToKfiMhIG9uPVZhbmlvbiBvdD0xMDM2OTQ4NjAxIG9nPWRpc2t1c3Npb24KfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDM2OTQ1NTU4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1WYW5pb24gcnQ9MTAzNjk0NTU0MiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMzY5NDU1NDIKSGl0bGVyCgooYXVzIGlzKSAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTGludXggaXMgYmVzc2VyIGFscyBXaW5kb3dzLiAoR3JpbW1ib3JuLCAxMS4gTm92IDIwMDIsIDA5OjQxOjI0KToKfiMhIG9uPVZhbmlvbiBvdD0xMDM2OTQ4NjAyIG9nPWRpc2t1c3Npb24KfiMhIG9uPUphZGF3aW4gb3Q9MTAzNjk0NTU3OCBvZz1hbGxnZW1laW5lcwp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzY5NDU1NTggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDM2OTQ1NTQyCkdvZHdpbiBrYW5uIG1hbiBuaWNodCBhYnNpY2h0bGljaCBoZXJiZWlmdWVocmVuLgpKYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBMaW51eCBpcyBiZXNzZXIgYWxzIFdpbmRvd3MuIChHcmltbWJvcm4sIDExLiBOb3YgMjAwMiwgMDk6NDE6MjUpOgp+IyEgb249VmFuaW9uIG90PTEwMzY5NDg2MDYgb2c9ZGlza3Vzc2lvbgp+IyEgb249Q3VjaHVsbGluIG90PTEwMzY5NDU1ODYgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUphZGF3aW4gcnQ9MTAzNjk0NTU3OCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMzY5NDU1NDIKTWlzdCwgZGEgd2FyIHdhcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMaW51eCBpcyBiZXNzZXIgYWxzIFdpbmRvd3MuIChHcmltbWJvcm4sIDExLiBOb3YgMjAwMiwgMDk6NDE6MjYpOgp+IyEgb249VmFuaW9uIG90PTEwMzY5NDg2MDcgb2c9ZGlza3Vzc2lvbgp+IyEgb249TGVpYmkgb3Q9MTAzNjk0NTg4OSBvZz1hbGxnZW1laW5lcwp+IyEgcm49VmFuaW9uIHJ0PTEwMzY5NDU1NDIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDM2OTQ1NTQyCmljaCBnbGF1YiBnZWdlbiBsYW5nZXdlaWxlIG11c3N0ZSBkaXIgd2FzIGJlc3NlcmVzIGVpbmZhbGxlbiBsYXNzZW4gOykKCmxlaWJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExpbnV4IGlzIGJlc3NlciBhbHMgV2luZG93cy4gKEdyaW1tYm9ybiwgMTEuIE5vdiAyMDAyLCAwOTo0MToyNyk6Cn4jISBvbj1WYW5pb24gb3Q9MTAzNjk0ODYwOCBvZz1kaXNrdXNzaW9uCn4jISBvbj1NaXJpbCBvdD0xMDM2OTQ2MTA2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1MZWliaSBydD0xMDM2OTQ1ODg5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTAzNjk0NTU0MgpHZW5hdS4gQnVncyByZXBhcmllcmVuLCBEb2t1IHVlYmVyYXJiZWl0ZW4uLi4gOy0pCk1pcmlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBMaW51eCBpcyBiZXNzZXIgYWxzIFdpbmRvd3MuIChHcmltbWJvcm4sIDExLiBOb3YgMjAwMiwgMDk6NDE6MjgpOgp+IyEgb249VmFuaW9uIG90PTEwMzY5NDg2MDkgb2c9ZGlza3Vzc2lvbgp+IyEgb249R2xvaW5zb24gb3Q9MTAzNjk0ODA5OCBvZz1hbGxnZW1laW5lcwp+IyEgcm49TWlyaWwgcnQ9MTAzNjk0NjEwNiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMzY5NDU1NDIKRGFzIGlzdCBqYSByZXByZXNzaXYuIER1IG51dHp0IERlaW5lbiBTdGF0dXMgYWxzIEdydWVuZGVyaW4gYXVzLiBTaW5kIHdpciBoaWVyCmltIE5hemlvbmFsc296aWFsaXNtdXM/CgpXYXIgZGFzIGdlc2NoaWNrdGVyPyBFbmRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTGludXggaXMgYmVzc2VyIGFscyBXaW5kb3dzLiAoR3JpbW1ib3JuLCAxMS4gTm92IDIwMDIsIDA5OjQxOjI5KToKfiMhIG9uPVZhbmlvbiBvdD0xMDM2OTQ4NjEwIG9nPWRpc2t1c3Npb24KfiMhIG9uPUVsYmVyZXQgb3Q9MTAzNjk0ODMxNCBvZz1hbGxnZW1laW5lcwp+IyEgcm49R2xvaW5zb24gcnQ9MTAzNjk0ODA5OCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMzY5NDU1NDIKZGFzIGthcGllciBpY2ggbmNpaHQgc28gZ2Fueiwgd2llc28gbXVzcyBkYXMgc2VuZG1haWwgZGFzIHdpc3Nlbj8KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IExpbnV4IGlzIGJlc3NlciBhbHMgV2luZG93cy4gKFZhbmlvbiwgMTEuIE5vdiAyMDAyLCAxMToyMToxNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzNzAwNDA4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzY5NDU1NDIKR25hYWEsIHVuZCBpY2ggYmluIGFuIGRlciBnYW56ZW4gVmVyc2NoaWViZXJlaSBhdWNoIG5vY2ggc2NodWxkIC4uLgoKViosIGdla25pY2t0LCBhYmVyIG5pY2h0IHNlaHIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOaWNodHMgTmV1ZXMgYXVmIGRlciBXZWx0LiAoVmFuaW9uLCAxMi4gTm92IDIwMDIsIDE2OjExOjU3KToKU28gZ2VodCBkYXMgc2Nob24gc2VpdCBUYWdlbi4gTWFsIGFiZ2VzZWhlbiB2b24gZWluZXIgQW5rdWVuZGlndW5nIGRhc3Mgc2ljaAplaW4gcGFhciBNdWRkZXIgdm9ybmVobSBiZXNhdWZlbiB3b2xsZW4uCgpTaW5kIEN1Y2gqIHVuZCBjby4gWyhjKSBJY2hdIGltIFVybGF1Yj8KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmljaHRzIE5ldWVzIGF1ZiBkZXIgV2VsdC4gKEdyaW1tYm9ybiwgMTIuIE5vdiAyMDAyLCAxNjoyNToxMSk6Cn4jISBybj1WYW5pb24gcnQ9MTAzNzExMzkxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxMTM5MTcKVGphLCBnZXd1c3N0IHdvLiBLbGVpbmVyIFRpcDogTmljaHQgaW4gYWxsZW4gUnVicmlrZW4gaXN0IGdsZWljaHZpZWwgdHJhZmZpYy4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOaWNodHMgTmV1ZXMgYXVmIGRlciBXZWx0LiAoQW50aGVhLCAxMi4gTm92IDIwMDIsIDE2OjQ2OjAwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDM3MTE0NzExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzExMzkxNwpFcyBrYW5uIGFiZXIgdWViZXJhbGwgc2lubmxvcyBUcmFmZmljIGVyemV1Z3Qgd2VyZGVuLCB3ZW5uIGVzIHVuYmVkaW5ndCBzZWluCm11c3MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdGFtbXRpc2NoLUxvZyAoQWxjaW5hLCAxMi4gTm92IDIwMDIsIDE4OjMxOjQ5KToKSGFsbG8genVzYW1tZW4sCgpnZXN0ZXJuIGJlaW0gU3RhbW10aXNjaCBhdWZnZWdhYmVsdDoKCkNhcmVuIHVuZCBBbGNpbmEgdW50ZXJoYWx0ZW4gc2ljaCB1ZWJlciBBbGNpbmFzIFJMLUFsdGVyOgoKQzogdW5kIGR1PyBEdSB3aXJzdCBkb2NoIGVyc3QgLi4uCkE6IChzY2h1ZXR0ZWx0IGRlbiBLb3BmKSBuZWluLCBpY2ggd2VyZGUgLi4uCkM6IER1IHdpcnN0IHNjaG9uIC4uLgpBOiAobmlja3QpIGphLCBpY2ggd2VyZGUgc2Nob24gLi4uCkM6IC4uLiB1cHM/CkE6IEphLCBpY2ggd2VyZGUgdXBzLiAoQWxsZ2VtZWluZXMgR2VsYWVjaHRlcikKCkV0d2FzIHNwYWV0ZXIgYXVmIGRpZSBDYXJlbnMgRnJhZ2UsIHdvIGVzIGRpZSBGbGFtbWVucGFuemVyIGdhZWJlOgoKJy4uLiBEYSBnZWh0IG1hbiB6dW0gRmV1ZXJkYWVtb25lbiB1bmQgc2FndDoiSGV5LCBkZXIgc3RlaHQgbWlyIGJlc3NlciInCgpOb2NoIGV0d2FzIHNwYWV0ZXIgLSBlcyBnaW5nIGdyYWQgdW0gZGFzIGVyc3RlIEVpbmxvZ2dlbiBpbSBNRzoKQTogLi4uIG1laW4gRXJzdGxvZ2luIG1pdCBNaWV6ZSB3YXIgYW0gNy4gRmVicnVhciAgKFBhdXNlKSAxOTg1LgoKQWxjaW5hIC0gd2FydGV0IHdpZSBDYXJlbiB3aWVkZXIgYXVmIDIgd2VpYmxpY2hlIERhbWVuIDpvKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOaWNodHMgTmV1ZXMgYXVmIGRlciBXZWx0LiAoTGVpYmksIDEyLiBOb3YgMjAwMiwgMTk6MTk6NDMpOgp+IyEgcm49VmFuaW9uIHJ0PTEwMzcxMTM5MTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTEzOTE3CmphLCBlY2h0IGxhbmd3ZWlsaWcuLi4Kc2NocmVpYiBtYWwgd2FzICA7KQoKbGVpYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmljaHRzIE5ldWVzIGF1ZiBkZXIgV2VsdC4gKFZlY3RvciwgMTIuIE5vdiAyMDAyLCAxOToyMDo0NCk6Cn4jISBybj1MZWliaSBydD0xMDM3MTI1MTgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzExMzkxNwogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAKZnVlciByZV4xMDAgZ2lidHMgdm9uIG1pciBuIFVlLUVpIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOaWNodHMgTmV1ZXMgYXVmIGRlciBXZWx0LiAoTGVpYmksIDEyLiBOb3YgMjAwMiwgMTk6MjE6MTQpOgp+IyEgcm49VmVjdG9yIHJ0PTEwMzcxMjUyNDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTEzOTE3CmdpYnRzIGRhcyBhbSBzYW1zdGFnPwoKbGVpYmkgLSBiZW11ZWh0IHNpY2ggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5pY2h0cyBOZXVlcyBhdWYgZGVyIFdlbHQuIChWZWN0b3IsIDEyLiBOb3YgMjAwMiwgMTk6MjE6NDYpOgp+IyEgcm49TGVpYmkgcnQ9MTAzNzEyNTI3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxMTM5MTcKc2Ftc3RhZz8gd293YXM/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOaWNodHMgTmV1ZXMgYXVmIGRlciBXZWx0LiAoTGVpYmksIDEyLiBOb3YgMjAwMiwgMTk6MjI6MDgpOgp+IyEgcm49VmVjdG9yIHJ0PTEwMzcxMjUzMDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTEzOTE3CmF1ZiBkZW0gc3RhdGkgOikKCmljaCB3aWxsIGFiZXIgZWlucyBtaXQgZmlndXIgZHJpbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTmljaHRzIE5ldWVzIGF1ZiBkZXIgV2VsdC4gKFZlY3RvciwgMTIuIE5vdiAyMDAyLCAxOToyMzowMCk6Cn4jISBybj1MZWliaSBydD0xMDM3MTI1MzI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzExMzkxNwp3ZXIgc2FjaHQgZGVubiBkYXNzIGR1IHJlXjEwMCBoYXN0Pwpzb2JhbGRzIHdhcyB6dSBmdXR0ZXJuIGdpYnQgbWFjaGVuIGRvY2ggdW5zZXJlIGFlaAp2ZXJlaHJ0ZW4gbWVnYXNjaG1hcnJuZXIgbWl0IGlocmVyIHJvdGluZSBkZW4gc2FjayB6dSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTmljaHRzIE5ldWVzIGF1ZiBkZXIgV2VsdC4gKEdyaW1tYm9ybiwgMTIuIE5vdiAyMDAyLCAxOToyMzoyNCk6Cn4jISBybj1WZWN0b3IgcnQ9MTAzNzEyNTM4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxMTM5MTcKQWxzbywgZGFzcyBGcmF1ZW4gaW1tZXIgbnVyIGFuIGRpZSBGaWd1ciBkZW5rZW4sIGRhcyBpc3QgamEga3JhbmtoYWZ0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE5pY2h0cyBOZXVlcyBhdWYgZGVyIFdlbHQuIChMZWliaSwgMTIuIE5vdiAyMDAyLCAxOToyMzozMCk6Cn4jISBybj1WZWN0b3IgcnQ9MTAzNzEyNTM4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxMTM5MTcKZGFydW0gbWVpbnRlIGljaCBqYSBhdWNoLCBkYXNzIGljaCBtaWNoIGJlbXVlaGUgOikKCmxlaWJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFic29sdXQgU2lubmxvcyAoR3JpbW1ib3JuLCAxMi4gTm92IDIwMDIsIDE5OjIzOjU4KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDM2NjY5NDIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNjY2ODk1OQpVbmQgc2Nob24gendlaSBSZWhlIHZlcnNjaGVua3QsIEFtYXR1ZXJpbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTmljaHRzIE5ldWVzIGF1ZiBkZXIgV2VsdC4gKExlaWJpLCAxMi4gTm92IDIwMDIsIDE5OjI0OjA0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDM3MTI1NDA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzExMzkxNwpmcmF1ZW4/IApnaWJ0cyBkb2NoIGltIG11ZCBnYXIgbmljaCA6KQoKbGVpYmkgLSBrZWtzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBOaWNodHMgTmV1ZXMgYXVmIGRlciBXZWx0LiAoVmVjdG9yLCAxMi4gTm92IDIwMDIsIDE5OjI0OjIxKToKfiMhIHJuPUxlaWJpIHJ0PTEwMzcxMjU0MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTEzOTE3CmRlcnplaXQgaGFiIGFiZXIgaWNoIG5vY2ggZGllIGdlcmFkZW4gcmVoZS4KOTYuLi45OC4uLiBobSBqYW0gamFtIGxlY2tlciB1ZS1laS12ZXJwdXR6IAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTmljaHRzIE5ldWVzIGF1ZiBkZXIgV2VsdC4gKExlaWJpLCAxMi4gTm92IDIwMDIsIDE5OjI1OjA1KToKfiMhIHJuPVZlY3RvciBydD0xMDM3MTI1NDYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzExMzkxNwptYW4gbXVzcyBhdWNoIHNjaGVua2VuIGtvZW5uZW4gLi4uCm9kZXIgc28KCmxlaWJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTmljaHRzIE5ldWVzIGF1ZiBkZXIgV2VsdC4gKFZlY3RvciwgMTIuIE5vdiAyMDAyLCAxOToyNTozNSk6Cn4jISBybj1MZWliaSBydD0xMDM3MTI1NTA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzExMzkxNwp1bmQgd2VubiBlaW4gbXVlbnN0ZXJhbmRlciByZV4xMDAgaGF0IGRhcmYgaWNoIGRhIG9iZW4KenVtIHN0YXRpIGFudGFuemVuIG9kZXIgd2F0PzopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTmljaHRzIE5ldWVzIGF1ZiBkZXIgV2VsdC4gKExlaWJpLCAxMi4gTm92IDIwMDIsIDE5OjI1OjU5KToKfiMhIHJuPVZlY3RvciBydD0xMDM3MTI1NTM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzExMzkxNwptdWVuc3RlciBpc3QgYXVjaCBnYW56IGh1ZWJzY2ggOikKCmxlaWJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTmljaHRzIE5ldWVzIGF1ZiBkZXIgV2VsdC4gKFZlY3RvciwgMTIuIE5vdiAyMDAyLCAxOToyNjoxMik6Cn4jISBybj1MZWliaSBydD0xMDM3MTI1NTU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzExMzkxNwp3YXJ1bSBudXIgZ2xhdWIgaWNoIGRhcyBuaWNodD86KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IE5pY2h0cyBOZXVlcyBhdWYgZGVyIFdlbHQuIChHcmltbWJvcm4sIDEyLiBOb3YgMjAwMiwgMTk6Mjc6MDYpOgp+IyEgcm49VmVjdG9yIHJ0PTEwMzcxMjU1NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTEzOTE3CldlaWwgRHUgbmljaHRzIGZ1ZXIgYW5zdGFlbmRpZ2VuLCBlaHJsaWNoZW4gUmVnZW4gdWVicmlnIGhhc3Q/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBOaWNodHMgTmV1ZXMgYXVmIGRlciBXZWx0LiAoVmVjdG9yLCAxMi4gTm92IDIwMDIsIDE5OjI3OjIyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDM3MTI1NjI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzExMzkxNwppY2ggc29sbHRlIG5ldCBzbyB2aWVsIHJlLWVuLCBpY2ggcmVkZSBtaWNoIGphIHVtIGtvcGYKdW5kIGtyYWdlbiwgYnp3IHVtIGVpbiB1ZS1laSAuLi4uIG1pciBmaWd1cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IE5pY2h0cyBOZXVlcyBhdWYgZGVyIFdlbHQuIChMZWliaSwgMTIuIE5vdiAyMDAyLCAxOToyNzo1Mik6Cn4jISBybj1WZWN0b3IgcnQ9MTAzNzEyNTY0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxMTM5MTcKd2VubiBrZWluZSBmaWd1ciBkcmluIGlzdCwgdGF1c2NoIGljaCBlcyB1bSA6KQoKbGVpYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBOaWNodHMgTmV1ZXMgYXVmIGRlciBXZWx0LiAoVmVjdG9yLCAxMi4gTm92IDIwMDIsIDE5OjI4OjEyKToKfiMhIHJuPUxlaWJpIHJ0PTEwMzcxMjU2NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTEzOTE3CmphPyB3byBkZW5uPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IE5pY2h0cyBOZXVlcyBhdWYgZGVyIFdlbHQuIChWYW5pb24sIDEyLiBOb3YgMjAwMiwgMTk6Mjk6MTYpOgp+IyEgcm49VmVjdG9yIHJ0PTEwMzcxMjU2OTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTEzOTE3CkduYWEsIGRhcyBoYWIgaWNoIG5pY2ggZ2V3b2xsdC4gSWNoIGRhY2h0ZSBhbiBlaW5lbiAnQWJlbnRldXJlcgphdWZ3ZXJ0ZW4nLW9kZWVyLXNvLVRocmVhZCA6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBOaWNodHMgTmV1ZXMgYXVmIGRlciBXZWx0LiAoTGVpYmksIDEyLiBOb3YgMjAwMiwgMTk6MzA6MzcpOgp+IyEgcm49VmFuaW9uIHJ0PTEwMzcxMjU3NTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTEzOTE3CnZpZWxsZWljaHQKc2NodWV0dGxlciBhdWZ3ZXJ0ZW4hISEhCnVuZCBhdXNzZXJkZW0gbm9jaCBlaW5lbiBydWVscHNlIHNwcnVjaCBmdWVyIHNjaHVldHRsZXIKCmRpZSBzaW5kIGVjaHQgenUgc2Nod2FjaAp1bmQgdWViZXJoYXVwdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IE5pY2h0cyBOZXVlcyBhdWYgZGVyIFdlbHQuIChWYW5pb24sIDEyLiBOb3YgMjAwMiwgMTk6MzQ6MjkpOgp+IyEgcm49TGVpYmkgcnQ9MTAzNzEyNTgzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxMTM5MTcKT2ssIHdlcmRlbiB3aXIgbWFsIGVybnN0aGFmdDoKCiBJY2ggYmluIGZ1ZXIgZWluZW4gJ2xvZXNjaGUnLVNwcnVjaCBmdWVyIE1hZ2llciAtIGRlciBTcHJ1Y2ggZ2VodCBtaXQKKDEwMC0oNCpNYWdpZXJsZXZlbC0yMCkpJWlnZXIgQ2hhbmNlIHNjaGllZi4gV2VubiBkZXIgU3BydWNoIHNjaGllZiBnZWh0LApnaWJ0cyA1MCUgZGFzcyBkZXIgTWFnaWVyIGdlbG9lc2NodCB3aXJkLiBLbGFwcHQgZGVyIFNwcnVjaCwgd2lyZCBkYXMgT3BmZXIKZ2Vsb2VzY2h0LgoKViosIGtvbnN0cnVrdGl2LgpQUzogRGllIEFud2VuZHVuZyBkZXMgU3BlbGxzIGhhZXR0ZSBkYW5uIGF1Y2ggd2llZGVyIGxlYmhhZnRlIERpc2t1c3Npb25lbiBpbgpkZXIgTVBBIHp1ciBGb2xnZSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IE5pY2h0cyBOZXVlcyBhdWYgZGVyIFdlbHQuIChMZWliaSwgMTIuIE5vdiAyMDAyLCAxOTozNToyMSk6Cn4jISBybj1WYW5pb24gcnQ9MTAzNzEyNjA2OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxMTM5MTcKd2FzIHNvbGwgZGFzIGJyaW5nZW4/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IE5pY2h0cyBOZXVlcyBhdWYgZGVyIFdlbHQuIChWZWN0b3IsIDEyLiBOb3YgMjAwMiwgMTk6MzU6MzUpOgp+IyEgcm49TGVpYmkgcnQ9MTAzNzEyNjEyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxMTM5MTcKMiByZWhlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IE5pY2h0cyBOZXVlcyBhdWYgZGVyIFdlbHQuIChWYW5pb24sIDEyLiBOb3YgMjAwMiwgMTk6MzU6NDEpOgp+IyEgcm49VmFuaW9uIHJ0PTEwMzcxMjYwNjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTEzOTE3CjEwMCAtICg0ICogKCBNYWdpZXJsZXZlbCAtIDIwKSkgJSAgKEljaCBzYWVnZSBkb2NoIG5pY2ggbWVpbmVuIGVpZ2VuZW4gQXN0IGFiCjopIApWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IE5pY2h0cyBOZXVlcyBhdWYgZGVyIFdlbHQuIChMZWliaSwgMTIuIE5vdiAyMDAyLCAxOTozNzoxMCk6Cn4jISBybj1WYW5pb24gcnQ9MTAzNzEyNjE0MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxMTM5MTcKZGF2b24gd2FyIGF1c3p1Z2Vobi4uLgp3YXIgZWlnZW50bGljaCBkaWUgaGV4ZSBzY2hvbiBiZWkgZGlyIG9kZXIgd2FydW0gYmlzdCBkdSBpbSBtdWQ/CmxlaWJpIGZpZXMgZ3JpbnNlbmQgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogTmljaHRzIE5ldWVzIGF1ZiBkZXIgV2VsdC4gKEdyaW1tYm9ybiwgMTIuIE5vdiAyMDAyLCAxOTozNzoyMik6Cn4jISBybj1WYW5pb24gcnQ9MTAzNzEyNjE0MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxMTM5MTcKT2NoLCBkYSBmaW5kZXQgc2ljaCBzY2hvbiBlaW4gRU0gZGVuIG1hbiBiZXN0ZWNoZW4ga2FubiBEaWNoIHp1IGxvZXNjaGVuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBOaWNodHMgTmV1ZXMgYXVmIGRlciBXZWx0LiAoVmFuaW9uLCAxMi4gTm92IDIwMDIsIDE5OjM3OjUyKToKfiMhIHJuPUxlaWJpIHJ0PTEwMzcxMjYxMjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTEzOTE3CkljaCBrb2VubnRlIGVuZGxpY2ggZWluZmFjaCBMZXV0ZSBsb2VzY2hlbiwgZ2VnZW4gZGVyZW4gQXJndW1lbnRhdGlvbiBpY2ggbmljaAphbmtvbW1lLCBzdGF0dCBtaWNoIG1pdCBkYXVlcm5kZW4gRGlza3Vzc2lvbmVuIHp1IHF1YWVsZW4uIEljaCBkZW5rZSBkZXIgZWluZQpvZGVyIGFuZGVyZSB3dWVyZGUgc2Nob25tYWwgZ2VybiBzZWluZW4gJ0Rpc2t1c3Npb25wYXJ0bmVyJyBsb2VzY2hlbiA6KQoKViosIHNjaG1hcnJudCBuYXR1ZXJsaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IE5pY2h0cyBOZXVlcyBhdWYgZGVyIFdlbHQuIChHcmltbWJvcm4sIDEyLiBOb3YgMjAwMiwgMTk6Mzg6MjgpOgp+IyEgcm49VmFuaW9uIHJ0PTEwMzcxMjYyNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTEzOTE3ClZlcm11dGxpY2ggbnVyIHdlbm4gbWFuIGhvZmZudW5nc2xvcyB1bnRlcmxlZ2VuIGlzdC4gTWlyIGplZGVuZmFsbHMgaXN0IGRpZXNlcwpWZXJsYW5nZW4gdW5iZWthbm50LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogTmljaHRzIE5ldWVzIGF1ZiBkZXIgV2VsdC4gKFZhbmlvbiwgMTIuIE5vdiAyMDAyLCAxOTozODozNCk6Cn4jISBybj1MZWliaSBydD0xMDM3MTI2MjMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzExMzkxNwpTaW5kIG51ciBub2NoIDcwMCBWb2thYmVsbiA6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBOaWNodHMgTmV1ZXMgYXVmIGRlciBXZWx0LiAoTGVpYmksIDEyLiBOb3YgMjAwMiwgMTk6Mzk6MDYpOgp+IyEgcm49VmFuaW9uIHJ0PTEwMzcxMjYzMTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTEzOTE3CmRhbm4gdmVyc2NoZW5rIHdlbmlnc3RlbnMga2VpbmUgcmVoZSA6KQppY2ggd2lsbCBkb2NoIGFtIHNhbXN0YWcgZWluIHVlaSBfKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmljaHRzIE5ldWVzIGF1ZiBkZXIgV2VsdC4gKEJhbWJpLCAxMi4gTm92IDIwMDIsIDIwOjA1OjQwKToKfiMhIHJuPUFudGhlYSBydD0xMDM3MTE1OTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzExMzkxNwpJY2ggdWViZXJnZWhlIGRpZXNlbiBUaHJlYWQgendhciBpbnp3aXNjaGVuIHVuZCBiaW4gYXVjaCBudXIgYmlzIHp1IGRpZXNlbQpBcnRpa2VsIGltIFRocmVhZCBnZWtvbW1lbiAoYXVzc2VyIGRlbiBhbmRlcmVuIDUwIHVlYmVyZ2FuZ2VuZW4pLiBBYmVyIGtvZW5udAppaHIgZGllc2VuIE11ZWxsIG5pY2h0IGluIG1lZ2FzY2htYXJybiBwb3N0ZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOaWNodHMgTmV1ZXMgYXVmIGRlciBXZWx0LiAoVmVjdG9yLCAxMi4gTm92IDIwMDIsIDIwOjA2OjMwKToKfiMhIHJuPUJhbWJpIHJ0PTEwMzcxMjc5NDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTEzOTE3CmtvZW5uZW4gamEgYWJlciB3aXIgZHVlcmZlbiBuaWNodCwgc29uc3Qgd2VyZGVuIHdpciB3aWVkZXIKYXVzZ2Vsb2dndCB1bmQgZGllIGFydGlrZWwgdmVyc2Nob2Jlbi4uLiBoYXR0ZW4gd2lyIGFsbGVzIHNjaG9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOaWNodHMgTmV1ZXMgYXVmIGRlciBXZWx0LiAoTGVpYmksIDEyLiBOb3YgMjAwMiwgMjA6MDc6MTIpOgp+IyEgcm49VmVjdG9yIHJ0PTEwMzcxMjc5OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTEzOTE3Cm9kZXIgdmllbGxlaWNodCBnZWxvZXNjaHQgOykKCmxlaWJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogTmljaHRzIE5ldWVzIGF1ZiBkZXIgV2VsdC4gKEh1bW5pLCAxMi4gTm92IDIwMDIsIDIwOjM1OjA3KToKfiMhIHJuPUxlaWJpIHJ0PTEwMzcxMjYzNDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTEzOTE3Ckxlcm50IGRvY2ggZW5kbGljaCBtYWwgYXVmIGRlbiByaWNodGlnZW4gQXJ0aWtlbCB6dSBhbnR3b3J0ZW4uCgpBbmZhZW5nZXIuIEljaCBsb2VzY2ggRXVjaCBnbGVpY2guCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IE5pY2h0cyBOZXVlcyBhdWYgZGVyIFdlbHQuIChNb250YW51cywgMTIuIE5vdiAyMDAyLCAyMTo1NjoyNCk6Cn4jISBybj1IdW1uaSBydD0xMDM3MTI5NzA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzExMzkxNwpIYWgsIFJlaCAyNS4gRWluIFZpZXJ0ZWwgaXN0IGdlc2NoYWZmdC4gQmVrb21tIGljaCBqZXR6dCBlaW4gVmllcnRlbC1VZS1FaT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBOaWNodHMgTmV1ZXMgYXVmIGRlciBXZWx0LiAoTGVpYmksIDEyLiBOb3YgMjAwMiwgMjM6MDM6MjEpOgp+IyEgcm49TW9udGFudXMgcnQ9MTAzNzEzNDU4NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxMTM5MTcKamEsIGthbm5zdCBkaWUgc2Nob2dnaSB2b24gbWVpbmVtIGhhYmVuLi4uCgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IE5pY2h0cyBOZXVlcyBhdWYgZGVyIFdlbHQuIChWZWN0b3IsIDEyLiBOb3YgMjAwMiwgMjM6MDM6NDUpOgp+IyEgcm49TGVpYmkgcnQ9MTAzNzEzODYwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxMTM5MTcKd3V6LCBiZWkgMjcgd2lyZCBzY2hvbiBkaWUgMTAwZXItYmVsb2h1bmcgdmVydGVpbHQgdHMgdHMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcmVpdGFnc3N0YW1tdGlzY2ggRHJlc2RlbiAxNS4xMS4yMDAyIChHbG9pbnNvbiwgMTIuIE5vdiAyMDAyLCAyMzowNjo1Myk6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMDM3MTM4NzkxIG9nPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgcm49TWVzaXJpaSBydD0xMDM3MTM4NzQ3IHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwMzcxMzg3NDcKTmljaHQgdW50ZXJnZWhlbi4gQWVoLiBPZGVyIGRvY2g/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWdpZXIgLi4uIChMaWFyYSwgMTIuIE5vdiAyMDAyLCAyMzoxODoyMik6CkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBpY2ggbWFobmUgenVyIHJ1aGUgdW5kIHNhY2hsaWNoa2VpdApEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogZ2VodCBzdGVyYmVuIG9kZXIgc28KRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IHdpZSBsYW5nd2VpbGlnIGFyawpEZWluZSBGcmV1bmRpbiBaZXBoeXIgdGVpbHQgRGlyIG1pdDogKnBydXN0KgpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogbmUgaWNoIGJyYXVjaGUgenVyIHRyYW4uLi4gaW5zcGlyYXRpb24KRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IHNwaWVsZXJmcmVpZW4gbW9uaXRvciwgZGFzIHByb2ZhbmUgZmxpbW1lcm4KRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IGxlbmt0IGVjaHQgYWIsIGV5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOaWNodCBmdWVyIE1vbnRhbnVzOiBkZS5hbHQubmV0ZGlnZXN0IChSb25kYSwgMTIuIE5vdiAyMDAyLCAyMzo0MDo0NCk6CkRhbWl0IE1vbnRhbnVzIGRlLmFsdC5uZXRkaWdlc3QgYmVzc2VyIHVlYmVyZ2VoZW4ga2Fubi4uLgoKUm9uZGEKCkZyb206IFNhYmluZSAnU2FuaScgU2NodWx6IDxzYW5mbG9yaW1hbEBnbXgubmV0PgpOZXdzZ3JvdXBzOiBkZS5zb2MubmV0emt1bHR1ci5taXNjClN1YmplY3Q6IFJlOiBGcmVtZGNhbmNlbApEYXRlOiAxMiBOb3YgMjAwMiAxNTo0NjowNyArMDEwMApNZXNzYWdlLUlEOiA8c215NmRleGMuZnNmQGdudXMubmV3cy5zYW5mbG9yaW1hbC5kZT4KCk9saXZlciBEaW5nIHNjaHJpZWIgYW0gMTIuMTEuMjAwMjoKPiAiU2FiaW5lICdTYW5pJyBTY2h1bHoiIDxzYW5mbG9yaW1hbEBnbXgubmV0PiBzY2hyaWViOgo+Pgo+fCAgSW1tZXIgd2llZGVyIGdyZWlmZW4gTmV0emJld29obmVyIGlubmVyaGFsYiBkZXIgZGUuKi1IaWVyYXJjaGllIGF1Y2gKPnwgIGF1cyBpbmhhbHRsaWNoZW4gR3J1ZW5kZW4genVtIEluc3RydW1lbnQgZGVzIEZyZW1kY2FuY2Vscy4gIERhaGVyIHNvbGwKPnwgIHZlcnN1Y2h0IHdlcmRlbiwgaW4gZGllc2VtIEZBUSB6dSBrbGFlcmVuLCB1bnRlciB3ZWxjaGVuIEJlZGluZ3VuZ2VuCj58ICBkaWUgTmV0emdlbWVpbmRlIEZyZW1kY2FuY2VsIG5vcm1hbGVyd2Vpc2UgbWl0dHJhZ2VuIHdpcmQsIHVuZCB1bnRlcgo+fCAgd2VsY2hlbiBCZWRpbmd1bmdlbiBtYW4gYXVjaCBpbSBlaWdlbmVuIEludGVyZXNzZSBsaWViZXIgbmljaHQKPnwgIGZyZW1kY2FuY2VsbiBzb2xsdGUuCgoiR3JhdHVsYXRpb24genVtIEthdWYgZGllc2VyIEhvY2hsZWlzdHVuZ3NrZXR0ZW5zYWVnZS4gRGFtaXQga29lbm5lbiBTaWUKSG9seiBzYWVnZW4uIEFjaHRlbiBTaWUgZGFyYXVmLCBkYXNzIGVzIHNpY2ggdW0gSWhyIEhvbHogaGFuZGVsdCB1bmQgbmljaHQKdW0gZGVuIEhvbHp6YXVuIGlocmVzIE5hY2hiYXJuIG9kZXIgdW0gQmFldW1lIGluIG9lZmZlbnRsaWNoZW4KUGFya3MuIEltbWVyIHdpZWRlciBrb21tdCBlcyB2b3IsIGRhc3MgTWVuc2NoZW4gYXVzIGluaGFsdGljaGVuIEdydWVuZGVuCnp1ciBLZXR0ZW5zYWVnZSBncmVpZmVuIHVuZCBoZWltbGljaCBoaW50ZXJydWVja3MgTmFjaGJhcnMgQmF1bSB1bWdlc2FlZ3QKd2lyZCwgd2VpbCBkaWVzZXIgdmllbCBTY2hhdHRlbiB3aXJmdC4gRGFoZXIgc29sbHRlIHZlcnN1Y2h0IHdlcmRlbiwKSWhuZW4gaW4gZGllc2VyIEdlYnJhdWNoc2Fud2Vpc3VuZyB6dSBlcmtsYWVyZW4sIHVudGVyIHdlbGNoZW4KQmVkaW5ndW5nZW4gZGVyIEdlc2V0emdlYmVyIGRhcyBaZXJzYWVnZW4gZnJlbWRlbiBFaWdlbnR1bXMgZHVsZGV0IHVuZAp1bnRlciB3YW5uIG1hbiBpbSBlaWdlbmVuIEludGVyZXNzZSBsaWViZXIgZGFyYXVmIHZlcnppY2h0ZW4gc29sbHRlLgoKV2VubiBTaWUgc2NocmlmdGxpY2ggbmFjaHdlaXNlbiwgZGFzcyBzaWUgZGVuIFVudGVyc2NoaWVkIHp3aXNjaGVuIElocmVtCkVpZ2VudHVtIHVuZCBkZW0gYW5kZXJlciBNZW5zY2hlbiBiZWdyaWZmZW4gaGFiZW4sIHNjaGlja2VuIHdpciBJaG5lbgpkaWUgQW5sZWl0dW5nLCB3aWUgU2llIElocmUgSG9jaGxlaXN0dW5nc2tldHRlbnNhZWdlIGluIEJldHJpZWIgbmVobWVuCmtvZW5uZW4uIEFuc29uc3RlbiBlbXBmZWhsZW4gd2lyLCBkYXMgU2FlZ2VuIGVyZmFocmVuZW4gTnV0emVybiB6dQp1ZWJlcmxhc3NlbgoKRXMgYmVzdGVodCBkaWUgTm90d2VuZGlna2VpdCwgSWhuZW4gZGFzIHp1IGVya2xhZXJlbiwgd2VpbCBlcyBpbW1lcgp3aWVkZXIgdW5iZWRhcmZ0ZSBNZW5zY2hlbiBnaWJ0LCBkaWUgc2ljaCBhbiBmcmVtZGVtIEVpZ2VudHVtIHZlcmdyZWlmZW4Kb2RlciBnYXIgdW5zZXIgSG9jaGxlaXN0dW5nc3Byb2R1a3QgZGF6dSBtaXNzYnJhdWNoZW4sIGVpbmVuIHVubGllYnNhbWVuCk1pdGJ1ZXJnZXIgaW4gbWVocmVyZSBUZWlsZSB6dSB6ZXJsZWdlbiwgdW0gaWhuIGRhbm4gaW4gZWluZW0gUGxhc2lrc2FjawppbiBkZXIgR2VmcmllcnRydWhlIGVuZHp1bGFnZXJuLiBEYWhlciB3ZXJkZW4gUGxhc3Rpa3NhZWNrZSBhdWNoIG1pdCBkZW0KV2FybmhpbndlaXMgdmVyc2VoZW4sIGtlaW5lIHZvcmhlciB6ZXJzYWVndGVuIE1pdGJ1ZXJnZXIgZGFtaXQgenUKZW50c29yZ2VuOyBhYmdlc2VoZW4gZGF2b24sIGRhc3MgbWFuIHNpZSB3ZWRlciBzaWNoIG5vY2ggYW5kZXJlbiB1ZWJlciBkZW4KS29wZiB6aWVoZW4gc29sbHRlLiBBdXNkcnVlY2tsaWNoIGdlc3RhdHRldCB3aXJkIGhpZXJtaXQsIGRhc3Mgc2llIElocmUKSG9jaGxlaXN0dW5nc2tldHRlbnNhZWdlIGluIGRlbiBQbGFzdGlrc2FjayBzdGVja2VuOyB3aXIgZXJrbGFlcmVuIElobmVuCmRlbiBVbnRlcnNjaGllZCwgd2VpbCBlcyBpbW1lciB1bndpc3NlbmRlIE1lbnNjaGVuIGdpYnQsIGRpZSBuYWNoIGRlbQpQcmluemlwICJtYWwtZ3Vja2VuLXdhcy1pY2gta2FwdXR0LW1hY2hlbi1rYW5uIiBoYW5kZWxuIi4KCkdydWVzc2UKIFNhYmluZSA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOaWNodCBmdWVyIE1vbnRhbnVzOiBkZS5hbHQubmV0ZGlnZXN0IChSb25kYSwgMTIuIE5vdiAyMDAyLCAyMzo0ODoyMSk6Cn4jISBybj1Sb25kYSBydD0xMDM3MTQwODQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzE0MDg0NApOT0NIIG5pY2h0IGluIGRlLmFsdC5uZXRkaWdlc3QsIGFiZXIgdmllbGxlaWNodCBiYWxkLi4uIFF1b3RpbmcgZXR3YXMKZXJnYWVuenQuLi4KCkp1ZXJnZW4gTmlldmVsZXIgd3JvdGU6Cgo+Pj5JbiBkZXIgQmVkaWVudW5nc2FubGVpdHVuZyBtZWluZXMgYWx0ZW4gUG9zdHRlbGVmb25zIHN0YW5kIHp1bSBUaGVtYSAKPj4+V2llIGZ1ZWhyZSBpY2ggZWluIFRlbGVmb25nZXNwcmFlY2g6ICJOZWhtZW4gU2llIGRlbiBIb2VyZXIgYWIhIi4gU2VpdGhlcgo+Pj53dW5kZXJ0IG1pY2ggZ2FyIG5pY2h0cyBtZWhyLgo+PiAKPj4gCj4+IEJlZGVua2xpY2ggd2lyZCBlcyBlcnN0LCB3ZW5uIGJlaSBaYWhuc3RvY2hlcm4gZWluZSAKPj4gQmVkaWVudW5nc2FubGVpdHVuZyBtaXRnZWxpZWZlcnQgd2lyZC4uLgoKCj4uLi53b2hpbmdlZ2VuIGJlaSBGcmF1ZW4gZWluZSBtaXRnZWxpZWZlcnRlIEJlZGllbnVuZ3NhbmxlaXR1bmcgb2Z0IAo+cmVjaHQgaGlsZnJlaWNoIHdhZXJlLgoKRHUgZ2xhdWJzdCB0YXRzYWVjaGxpY2gsIGRhcyBlcyBTT1ZJRUwgUGFwaWVyIGF1ZiBkaWVzZW0gUGxhbmV0ZW4gZ2lidD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5pY2h0IGZ1ZXIgTW9udGFudXM6IGRlLmFsdC5uZXRkaWdlc3QgKEN1Y2h1bGxpbiwgMTMuIE5vdiAyMDAyLCAwMToyMjo0Nyk6Cn4jISBybj1Sb25kYSBydD0xMDM3MTQxMzAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzE0MDg0NApEYXMgbWl0IGRlbiBaYWhuc3RvY2hlcm4uLi4gTWFjaCdzIGd1dCwgdW5kIGRhbmtlIGZ1ZXIgZGVuIEZpc2NoLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnBvc3RxdWVzdCAoVmFyZGlvbiwgMTMuIE5vdiAyMDAyLCAwMTozMToyMCk6CltnaWIgcGFrZXQgYW4gdmFyZGlvbl0KRHUgdWViZXJyZWljaHN0IGRhcyBQYWtldCBhbiBWYXJkaW9uLgpWYXJkaW9uIHVlYmVycmVpY2h0IERpciBlaW4gUGFrZXQuIEVzIGxvZXN0IHNpY2ggbGVpZGVyIHNvZm9ydCBhdWYsIGFiZXIgRHUKaGFzdCBpaG0gZHVyY2ggRGVpbmUgcHVyZSBBbndlc2VuaGVpdCB3aXJrbGljaCBnZWhvbGZlbi4gOi0pCgpWYXJkaW9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5pY2h0IGZ1ZXIgTW9udGFudXM6IGRlLmFsdC5uZXRkaWdlc3QgKE9ya3RvZXRlciwgMTMuIE5vdiAyMDAyLCAwODo1ODo0NCk6Cn4jISBybj1Sb25kYSBydD0xMDM3MTQxMzAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzE0MDg0NApBY2ggUm9uZGEsIGRhcyBzaW5kIGdlbmVyYWxpc2llcnRlIEdlYnJhdWNoc2Fud2Vpc3VuZ2VuLCBhbHNvIGluIGRlcgpVZWJlcnNldHp1bmcgZGFubiBzb2dhciBVUy10YXVnbGljaC4gT2RlciB3dWVyZGVzdCBkdSBnZXJuZSBhdWYgbXVsdGltaWxsaW9uZW4KRG9sbGFyIHZlcmtsYWd0IHdlcmRlbiwgd2VpbCBlaW4gVXNlciBiZWltIFZlcnN1Y2ggenUgdGVsZWZvbmllcmVuIHNpY2ggbWl0CmRlciBTY2hudXIgZXJ3dWVyZ3QgaGF0IHN0YXR0IGRlbiBIb2VocmVyIGFienVuZWhtZW4/IAoKVWVicmlnZW5zLi4gbWl0IEJsaWNrIGF1ZiBkaWUgUGlzYXN0dWRpZSBzY2hhZGVuIHNvbGNoIHVtZmFuZ3JlaWNoZQpHZWJyYXVjaHNhbndlaXN1bmdlbiBhdWNoIGluIC5kZSBuaWNodC4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOaWNodCBmdWVyIE1vbnRhbnVzOiBkZS5hbHQubmV0ZGlnZXN0IChHcmltbWJvcm4sIDEzLiBOb3YgMjAwMiwgMDk6MDE6MzcpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMzcxNzQzMjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTQwODQ0Cj4gVWVicmlnZW5zLi4gbWl0IEJsaWNrIGF1ZiBkaWUgUGlzYXN0dWRpZSBzY2hhZGVuIHNvbGNoIHVtZmFuZ3JlaWNoZQo+IEdlYnJhdWNoc2Fud2Vpc3VuZ2VuIGF1Y2ggaW4gLmRlIG5pY2h0LgoKQWVoLCB1bmQgd2llIHNvbGwgZGEgRGVpbmVyIE1laW51bmcgbmFjaCBkaWUgSW5mb3JtYXRpb24gdm9tIFBhcGllciBpbnMKQmV3dXNzdHNlaW4gZGVyIExlXkheSEFud2VuZGVyIGdlbGFuZ2VuPyBJY2ggZGFjaHRlIGdlcmFkZSBfZGllXyBQcm9ibGVtYXRpawpoYWV0dGUgUGlzYSBhdWZnZXplaWd0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZGlnaXRhbGthbWVyYSAoR3JpbW1ib3JuLCAxMy4gTm92IDIwMDIsIDA5OjAyOjEzKToKfiMhIHJuPUdub21lIHJ0PTEwMzcxMzU2NjEgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMDM3MTM1NjYxCktsYXIsIGhpZXIgaXN0IGRlciBUaXA6IEJlaGFuZGVsIHNpZSBzb3JnZmFlbHRpZywgZGFubiBoYXN0IER1IGxhbmdlIEZyZXVkZQpkcmFuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOaWNodCBmdWVyIE1vbnRhbnVzOiBkZS5hbHQubmV0ZGlnZXN0IChPcmt0b2V0ZXIsIDEzLiBOb3YgMjAwMiwgMDk6MDg6MjYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzcxNzQ0OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTQwODQ0CkltbWVyaGluIHNjaHVldHp0IGR1IGRpY2ggZGFtaXQgdm9yIFZlcnN1Y2hlbiBhdWNoIGluIC5kZSB3ZWdlbiB1bnp1cmVpY2hlbmRlcgpHZWJyYXVjaHNhbndlaXN1bmdlbiB2ZXJrbGFndCB6dSB3ZXJkZW4uIERlbm4gUGlzYSBoaW4sIFBpc2EgaGVyIHVtIGRpY2ggenUKdmVya2xhZ2VuIHJlaWNodHMgaW1tZXIuCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmljaHQgZnVlciBNb250YW51czogZGUuYWx0Lm5ldGRpZ2VzdCAoQW50aGVhLCAxMy4gTm92IDIwMDIsIDEwOjI1OjA4KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDM3MTc0OTA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzE0MDg0NApVbmQgd2FzIG1hY2hlIGljaCBtaXQgR2VicmF1Y2hzYW5sZWl0dW5nZW4sIGRpZSBpY2ggZXJzdCB2ZXJzdGVoZSwgd2VubiBpY2gKc2llIHdvcnQtd29lcnRsaWNoIChqYSBuaWNodCBzaW5uZ2VtYWVzcykgaW5zIGVuZ2xpc2NoZSB1ZWJlcnNldHplIHVuZCBzaWUgbWlyCmRhbm4gbm9jaCBtYWwgZHVyY2hsZXNlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmljaHQgZnVlciBNb250YW51czogZGUuYWx0Lm5ldGRpZ2VzdCAoQ3VjaHVsbGluLCAxMy4gTm92IDIwMDIsIDEwOjI1OjE2KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDM3MTc0OTA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzE0MDg0NApEZWZpbmllcmUgInZlcmtsYWdlbiIuIEljaCBrYW5uIGF1Y2ggS2xhZ2Ugd2VnZW4gZ2VtZWluZ2VmYWVocmxpY2hlcgpCbG9lZGhlaXQgZ2VnZW4gRGljaCBlaW5yZWljaGVuLiBFcmZvbGcgaGFldHRlIGljaCBkYW1pdCBuYXR1ZXJsaWNoIAprZWluZW4gWzFdLCBhYmVyIGljaCBoYWV0dGUgRGljaCB2ZXJrbGFndCEgOikKCllUQ3UKClsxXSBPcmt0b2V0ZXIgbGVidCBpbiBPZXN0ZXJyZWljaCwgZGEgaXN0IGRhcyBfbm9ybWFsXy4gO28pIFsyXQpbMl0gU0NOUiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRvZSBPZXNpcyBtYWwgd2llZGVyLi4uIChOb25uZSwgMTMuIE5vdiAyMDAyLCAxMjowMjowNyk6CkluIE9lc3RlcnJlaWNoIHRhdWNoZW4gaW1tZXIgd2llZGVyIGVyc3RhdW5saWNoZSBGcmVpemVpdGJlc2NoYWVmdGlndW5nZW4KYXVmLCBoaWVyIG1laW4gQmVyaWNodCB2b24gU0FHRU4uYXQsIGh0dHA6Ly93d3cuc2FnZW4uYXQ6CgpFaW5lIG5ldXplaXRsaWNoZSBWYXJpYXRpb24gZGVzIE1hZXJjaGVucyAiRGVyIEZyb3NjaGtvZW5pZyIgZGVyIEJydWVkZXIKR3JpbW0gMTgxNiB3aXJkIGluIGRlciBUYWdlc3plaXR1bmcgIkRlciBTdGFuZGFyZCIgdm9tIDEyLiBOb3ZlbWJlciAyMDAyCmJlc2NocmllYmVuOgoKRWluZSBiZXNvbmRlcnMgbWFrYWJyZSBBcnQgZGVyICJEcm9nZW5iZXNjaGFmZnVuZyIgd3VyZGUgaW4ganVlbmdzdGVyClplaXQgZmVzdGdlc3RlbGx0OiBEYSBlcyBzaWNoIHVudGVyIGRlbiBKdWdlbmRsaWNoZW4gaGVydW1nZXNwcm9jaGVuCmhhdCwgZGFzcyBtYW5jaGUgS3JvZXRlbiB1ZWJlciBkaWUgSGF1dCBkcm9nZW5hZWhubGljaGUgU3Vic3RhbnplbgphYnNvbmRlcm4sIHdlcmRlbiBkaWVzZSBuaWNodCBnZXJhZGUgYXBwZXRpdGxpY2hlbiBUaWVyZSBnZWZhbmdlbiB1bmQKc3lzdGVtYXRpc2NoICJhYmdlc2NobGVja3QiLiBEaWUgU2FjaGUgZW5kZXQgb2Z0IG1pdCBWZXJhZXR6dW5nZW4gaW0KU3BpdGFsLgoKRGFyYXVmaGluIGhhdCBtYW4gaW4gZGVyIGdhbnplbiBMb2JhdSAoPSBrbGVpbmVzIE5hdHVyZ2ViaWV0IGJlaSBXaWVuKQprZWluZSBLcmllY2h0aWVyZSBtZWhyIGdlc2VoZW4uIERpZSBLaWRzIGhhYmVuIGFsbGVzLCB3YXMgaGVydW1nZWtyb2NoZW4KaXN0LCBlaW5nZWZhbmdlbiB1bmQgYWJnZXNjaGxlY2t0LgoKQXVmIFNBR0VOLmF0IGdpYnQncyBkYW5uIG5vY2ggZGllIExpdGVyYXR1cnZlcndlaXNlIHVuZCBldmVudHVlbGxlCk5ldWVudHdpY2tsdW5nZW4gaW4gZGllc2VtIEZyZWl6ZWl0dmVyaGFsdGVuLgoKTWVpbmUgRnJhZ2U6IHNjaGxlY2tlbiBkaWUgS2lkcyBhbmRlcm5vcnRzIGF1Y2ggS3JvZXRlbiBvZGVyIGlzdCBkYXMgZWluZQpXaWVuZXIgU3BlemlhbGl0YWV0ID8KCiAgIHZpZWxlIEdydWVzc2UKCiAgICAgICAgICAgICAgV29sZmdhbmcKCmF1cyBkZS5hbHQuZm9sa2xvcmUudXJiYW4tbGVnZW5kcwoKTm9ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOaWNodCBmdWVyIE1vbnRhbnVzOiBkZS5hbHQubmV0ZGlnZXN0IChHbG9pbnNvbiwgMTMuIE5vdiAyMDAyLCAxNDowMDowNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzNzE3NDQ5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxNDA4NDQKV2VubiBtYW4gZWluIFNvbm50YWdza2luZCBpc3QsIGthbm4gbWFuIHNpY2ggZGllIEdlYnJhdWNoc2Fud2Vpc3VuZyBqYSBuYWNodHMKdW50ZXIgZGFzIEtvcGZraXNzZW4gbGVnZW4gdW5kIHNvIGxlcm5lbi4gVm9yc2ljaHQgYmVpIG1laHJzcHJhY2hpZ2VuCkdlYnJhdWNoc2Fud2Vpc3VuZ2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERvZSBPZXNpcyBtYWwgd2llZGVyLi4uIChHbG9pbnNvbiwgMTMuIE5vdiAyMDAyLCAxNDowMToyNSk6Cn4jISBybj1Ob25uZSBydD0xMDM3MTg1MzI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzE4NTMyNwpXZWxjaGVyIEJ1bmRlc3N0YWF0IHdhciBkYXMgaW4gZGVtIEtyb2V0ZW5zY2hsZWNrZW4gZ2VzZXR6bGljaCB2ZXJib3RlbiBpc3Q/CkVpbmlnZSBLcm9ldGVuIHNvbmRlcm4gamEgdGF0c2FlY2hsaWNoIFN1YnN0YW56ZW4gbWl0IG9waWF0YWVobmxpY2hlciBXaXJrdW5nCmFiLiBWaWVsbGVpY2h0IHNvbGx0ZW4gZGllIEtpbmRlcmxlaW4gdm9yaGVyIGRhcyBUaWVyYnVjaCBpbiBkaWUgSGFuZCBuZWhtZW4KLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERvZSBPZXNpcyBtYWwgd2llZGVyLi4uIChFbGJlcmV0LCAxMy4gTm92IDIwMDIsIDE0OjAzOjM2KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMzcxOTI0ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTg1MzI3CmljaCBnbGF1YiBBcml6b25hLCBiaW4gbWlyIGFiZXIgd2llIHVlYmxpY2ggbmNpaHQgc2ljaGVyCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEb2UgT2VzaXMgbWFsIHdpZWRlci4uLiAoT3JrdG9ldGVyLCAxMy4gTm92IDIwMDIsIDE0OjA4OjM0KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAzNzE5MjYxNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxODUzMjcKQXJpem9uYSBpbiAuYXQ/PyBJY2ggYmluIGphIGVyc3QgY2EuIDIgMS8yIEphaHJlIGluIC5hdCwgYWJlciBpY2ggZ2xhdWJlIG1pcgpkb2NoIGhhbGJ3ZWdzIHNpY2hlciBzZWluIHp1IGtvZW5uZW4sIGRhcyBkaWUgaGllciBrZWluIHNvbGNoZXMgQnVuZGVzbGFuZApoYWJlbi4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEb2UgT2VzaXMgbWFsIHdpZWRlci4uLiAoR2xvaW5zb24sIDEzLiBOb3YgMjAwMiwgMTQ6MTA6NTgpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMzcxOTI5MTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTg1MzI3CkVjaHQ/IE5pY2h0IG1vZWdsaWNoLiBVbmQgRHUgbWVpbnN0IGVzIGdhZWJlIG51ciBpbiBPZXNpbGFuZCBCdW5kZXNzdGFhdGVuIHVuZApLcm9ldGVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRG9lIE9lc2lzIG1hbCB3aWVkZXIuLi4gKE5vbm5lLCAxMy4gTm92IDIwMDIsIDE1OjE5OjMxKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMzcxOTMwNTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTg1MzI3Cldlbm4gamVtYW5kIG5hZWhlcmVzIGRhenUgd2lzc2VuIHdpbGw6Cmh0dHA6Ly93d3cubS13dy5kZS9waGFybWFrb2xvZ2llL2Ryb2dlbi9hZ2Frcm9ldGUuaHRtbAoKTm9ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUYW5qYW4uLi4gKEZvb2JhciwgMTMuIE5vdiAyMDAyLCAxNTo1NzoxNSk6CkVpbiBGcm9zY2ggdGVpbHQgRGlyIG1pdDogam8sIHZhZ25hcmQga2FubiBzY2hvbiBuZXJ2aWcgc2VpbiBJY2ggYmluIFNhaWxvcgpFaW4gRnJvc2NoIHRlaWx0IERpciBtaXQ6IEZyb3NjaCBUaGFub3MgdW5kIGltIE5hbWVuIGRlcyBRdWFhYWsgd2VyZGUgaWNoIERpY2gKRWluIEZyb3NjaCB0ZWlsdCBEaXIgbWl0OiBiZXN0cmFmZW4hIFsxNTo1Nl0KCkFjaCBqYSwgdGF1YiB3YXIgZXIgYXVjaCBub2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRhbmphbi4uLiAoR2xvaW5zb24sIDEzLiBOb3YgMjAwMiwgMTY6MTQ6MzcpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwMzcxOTk0MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTk5NDM1Ckhhc3RlIER1IG1hbCB2ZXJzdWNodCBhbiBpaG0genUgbGVja2VuPyBWaWVsbGVpY2h0IHdhciBlciBqYSAnbmUgQWdha3JvZXRlIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFudHdvcnQgYW46IChEZWVwYmx1ZSwgMTQuIE5vdiAyMDAyLCAxMjowMjo1MSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzNzI3MTU0NCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMzcyNjk0NjMKV2FzLCBEdSBzdGVoc3QgYXVmIGRlciBUb0RvLUxpc3RlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQW50d29ydCBhbjogKEdyaW1tYm9ybiwgMTQuIE5vdiAyMDAyLCAxMjoyMDozOCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDM3MjcxNzcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzI2OTQ2MwpbIF0gRHUgbW9lY2h0ZXN0IGRhc3MgaWNoIERpciBkZW4gSGludGVybiBhYndpc2NoZS4KWyBdIER1IHd1ZXJkZXN0IGRhdm9uIHByb2ZpdGllcmVuIHdlbm4gaWNoIERpciBkZW4gSGludGVybiBhYndvZXNjaGUuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFudHdvcnQgYW46IChWZWN0b3IsIDE0LiBOb3YgMjAwMiwgMTI6MzQ6MDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzcyNzI4Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MjY5NDYzCmlyZ2VuZHdpZSBtdXNzIGljaCBqZXR6dCBhbiBkaWUganVnZW5kbGljaGVuIG1pdApkZXIga3JvZXRlbi1hYnNjaGxlY2stbnVtbWVyIGRlbmtlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQW50d29ydCBhbjogKFBhdHJ5biwgMTQuIE5vdiAyMDAyLCAxMjozNTo1MCk6Cn4jISBybj1WZWN0b3IgcnQ9MTAzNzI3MzY0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcyNjk0NjMKYXVmIHdhcyBmdWVyIGlkZWVuIG1hbmNoZSBzbyB2ZXJmYWxsZW4uLi5lcyBnaWJ0IGR1dHplbmRlIHdlbmlnZXIgZWtsaWdlCm1ldGhvZGVuLCBzaWNoIHRlbXBvcmFlciBpbnMgZ2VoaXJubmlyd2FuYSE9ZnJvc2Nobmlyd2FuYSB6dSBiZWdlYmVuLgoKLS0gCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQW50d29ydCBhbjogKEdyaW1tYm9ybiwgMTQuIE5vdiAyMDAyLCAxMjozOTo0NCk6Cn4jISBybj1QYXRyeW4gcnQ9MTAzNzI3Mzc1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcyNjk0NjMKQWNoLCBsZWNrdCBtaWNoIGRvY2guLi4KCkdkSwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQW50d29ydCBhbjogKEh1bW5pLCAxNC4gTm92IDIwMDIsIDEyOjQ0OjUyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDM3MjczOTg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzI2OTQ2MwpLcm9ldGUhIEtyb2V0ZSEKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFudHdvcnQgYW46IChCYW1iaSwgMTQuIE5vdiAyMDAyLCAxODowMzowNik6Cn4jISBvbj1CYW1iaSBvdD0xMDM3MjkzMzgwIG9nPWVudHdpY2tsdW5nCn4jISBybj1HcmltbWJvcm4gcnQ9MTAzNzI3MTU0NCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMzcyNjk0NjMKV2VsY2hlIFRvaWxldHRlIGJlbnV0enQgRHUgdWVibGljaGVyd2Vpc2UsIGRhc3MgRHUgZGFzIG5vY2ggbmljaHQga2VubnN0PyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEVyaW5uZXJ1bmcgdW5kIEhpbndlaXMgKFBpdGZhbGwsIDE1LiBOb3YgMjAwMiwgMDA6MzQ6NTcpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzczMDI0Nzcgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMzY2NzU3ODUKZWluZW4gZGVuIGR1IHNlbGJzdCB3YWVobHN0IHVuZCBlaW5lbiBkZW4gZGVpbiBhcmJlaXRnZWJlciB3YWVobHQ/IC4+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOaWNodCBmdWVyIE1vbnRhbnVzOiBkZS5hbHQubmV0ZGlnZXN0IChSb25kYSwgMTUuIE5vdiAyMDAyLCAwMToyODo1NCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAzNzE3NDMyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxNDA4NDQKSG0uIE9ya3RvZXRlci4gTWFuIGxlc2UgbWVpbmVuIEFydGlrZWwuIE1hbiBsZXNlbiBEZWluZW4gQXJ0aWtlbC4gTWFuIGRlbmtlLgpNYW4gdmVyc3RlaGUuIE1hbiBmYXNzZSBzaWNoIGFuIGt1cnouIFVuZCBhbiBkZW4gS29wZi4gVW5kIGxhY2hlIFNFSFIgbGF1dC4KClJvbmRhICpXaG8gdGhlIGYqKiogaXMgUGlzYT8qCgpOZWluLiBBbHNvLiBJcm9uaWVmbGFnPWFuLiAqV2hvIHRoZSBmKioqIGlzIFBpc2E/KiBJcm9uaWVmbGFnPWF1cy4gTnVyIHdlaWwKc29uc3Qgd2llZGVyIGlyZ2VuZHdlcj09T3JrVCBnZXNjaHJpZWJlbiBoYWV0dGUgIldpZT8gRHUga2VubnN0IGRlbiBFaWZlbHR1cm0KbmljaHQ/ISIKCgpPay4gQWxzbyBmdWVyIE9ya1QuIEphLiBEZXIgRWlmZWx0dXJtIHN0ZWh0IGluIFBhcmlzLiBEZXIgc2NoaWVmZSBUdXJtIGluClBpc2EuIEljaCBzaXR6IGluIEJpZWxlZmVsZC4gVW5kIGRpZSBQaXNhc3R1ZGllIGhhbmRlbHQgbmljaHQgdm9uIERyLgpPZXRrZXItUHVkZGluZy4gRGFua2UgZnVlciBkaWUgQXVmbWVya3NhbWtlaXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOaWNodCBmdWVyIE1vbnRhbnVzOiBkZS5hbHQubmV0ZGlnZXN0IChDdWNodWxsaW4sIDE1LiBOb3YgMjAwMiwgMDE6MzU6MjApOgp+IyEgcm49Um9uZGEgcnQ9MTAzNzMyMDEzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxNDA4NDQKTGFzcyBtaWNoIHJhdGVuOiBEYXMgImYiIGZpZWwgZGVyIFJlY2h0c2NocmVpYnJlZm9ybSB6dW0gT3BmZXI/CipzZXVmeiogSWNoIHZlcmxpZXIgbWVpbiBTcHJhY2hnZWZ1ZWhsLCBtZWhyIHVuZCBtZWhyLi4uCgpZVEN1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOaWNodCBmdWVyIE1vbnRhbnVzOiBkZS5hbHQubmV0ZGlnZXN0IChHbG9pbnNvbiwgMTUuIE5vdiAyMDAyLCAwOTowNDo1Nyk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAzNzMyMDUyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxNDA4NDQKTmVpbiwgZGVyIFR1cm0gd3VyZGUgbmF0dWVybGljaCBudXIgYXVmZ2VrYXVmdCB1bmQgaW4gZGVtIFp1Z2UgdW1iZW5hbm50LiBEdQptdXNzdCBuaWNodCBpbW1lciBnbGVpY2ggZGFzIFNjaGxpbW1zdGUgYW5uZWhtZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOaWNodCBmdWVyIE1vbnRhbnVzOiBkZS5hbHQubmV0ZGlnZXN0IChBcmssIDE1LiBOb3YgMjAwMiwgMDk6NDQ6MTQpOgp+IyEgcm49Um9uZGEgcnQ9MTAzNzMyMDEzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzcxNDA4NDQKSXN0IGRlciAiRWlmZWx0dXJtIiBqZXR6dCB1bWJlbmFubnQgdW5kIHZlcnNldHp0IHdvcmRlbj8gO14pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmljaHQgZnVlciBNb250YW51czogZGUuYWx0Lm5ldGRpZ2VzdCAoT3JrdG9ldGVyLCAxNS4gTm92IDIwMDIsIDA5OjQ2OjU3KToKfiMhIHJuPUFyayBydD0xMDM3MzQ5ODU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzE0MDg0NApKYSwgbmFjaCBQaXNhLCBpc3QgYWJlciBiZWltIFRyYW5zcG9ydCB1bmQgYmVpbSBhdWZzdGVsbGVuIG5pY2h0IGdhbnogb3B0aW1hbApnZWxhdWZlbiwgZGVzd2VnZW4gc3RlaHQgZGVyIGpldHp0IGV0d2FzIHNjaGllZi4KCk9ya1QsIGltbWVyIGdlcm5lIGJlcmVpdCBzZWluIGltbWVuc2VzIFdpc3NlbiB6dSB0ZWlsZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBOaWNodCBmdWVyIE1vbnRhbnVzOiBkZS5hbHQubmV0ZGlnZXN0IChBcmssIDE1LiBOb3YgMjAwMiwgMDk6NDg6MzEpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMzczNTAwMTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTQwODQ0Ck5pY2h0IGluIGRpZSBFaWZlbD8gV2VubiBkYXMgTW9uc2lldXIgRWlmZmVsIGdld3Vzc3QgaGFldHRlLCBtb24gZGlldSAuLi4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBOaWNodCBmdWVyIE1vbnRhbnVzOiBkZS5hbHQubmV0ZGlnZXN0IChPcmt0b2V0ZXIsIDE1LiBOb3YgMjAwMiwgMTA6MDQ6NTIpOgp+IyEgcm49QXJrIHJ0PTEwMzczNTAxMTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3MTQwODQ0CnRqYS4uIGNgZXN0IGxhIHZpZSwgY2UgbmUgcGFzIGRyb2xlIGxhIHZpZS4uLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2VicGFnZSBzZXhpc3Rpc2NoIChDYXR3ZWF6bGUsIDE1LiBOb3YgMjAwMiwgMTI6MzE6NTYpOgp+IyEgcm49Qm9pbmcgcnQ9MTAzNzM1OTI1NSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAzNzM1OTE0MwpIZWlzc2VuIGRpZSBkYW5uIG5pY2h0IE1hZ2llcmVuZGU/CgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoamEgOykgKExpYXJhLCAxNS4gTm92IDIwMDIsIDE5OjM0OjExKToKTWlrYWdlIHRlaWx0IERpciBtaXQ6IGVzIGlzdCBqYSB2ZXJ3dW5kZXJsaWNoIHdhcyBtYW4gaW4gZGVyIHNzcCBzbyBmaW5kZXQuLi4KTWlrYWdlIHRlaWx0IERpciBtaXQ6IGVpbiBtaXQgYmllciBnZWZ1ZWxsdGVyIGt1ZXJiaXMKRHUgdGVpbHN0IE1pa2FnZSBtaXQ6IGVjaHQ/IDopCk1pa2FnZSB0ZWlsdCBEaXIgbWl0OiBqbywgdW5kIHNwZWxsaSB3YXIgdm9yaGVyIGhpZXIgOm8pCkR1IGdyaW5zdCBNaWthZ2UgYXVzIGRlciBGZXJuZSBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBXZWJwYWdlIHNleGlzdGlzY2ggKExpYXJhLCAxNS4gTm92IDIwMDIsIDIwOjQ3OjMxKToKfiMhIG9uPUxpYXJhIG90PTEwMzczODk2MjAgb2c9ZGlza3Vzc2lvbgp+IyEgcm49Rm9vYmFyIHJ0PTEwMzczODk1MDAgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMzczNTkxNDMKQWxzbyBkYXMgaGVpc3N0IFphdWJlcmluZSAuLi4gdW5kIGljaCBiaW4gc293aWVzbyBuaWNodCBzY2h3YXJ6LiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2VicGFnZSBzZXhpc3Rpc2NoIChWYW5pb24sIDE3LiBOb3YgMjAwMiwgMDA6MzM6MzApOgp+IyEgb249VmFuaW9uIG90PTEwMzc0ODk2MDAgb2c9ZGlza3Vzc2lvbgp+IyEgcm49QXBzdSBydD0xMDM3NDc1Nzk0IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDM3MzU5MTQzCkpvZiBzZWkgRGFuayBpcyBub2NoIGtlaW5lciBkcmF1ZiBnZWtvbW1lbiwgYmVpIEVNIGVpbmUgRnJhdWVucXVvdGUKZWluenVmdWVocmVuLiAKCkFlaCwgVXBzLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRlciBrbG8tc2tpbGwgKEVsaXphYmV0aCwgMTcuIE5vdiAyMDAyLCAxNTozMDo1OSk6CkRlaW4gRnJldW5kIFggdGVpbHQgRGlyIG1pdDogc28gb2Z0IHdpZSBpY2ggaW5zIGtsbyBmYWxsZSBtdWVzc3RlCkRlaW4gRnJldW5kIFggdGVpbHQgRGlyIG1pdDogbWVpbiBrbG8tc2tpbGwgc2Nob24gcmVjaHQgaG9jaCBzZWluLi4uCkRlaW4gRnJldW5kIFggdGVpbHQgRGlyIG1pdDogbnVyIHdhcnVtIGZhbGwgaWNoIGRhbm4gc28gb2Z0IGlucwpEZWluIEZyZXVuZCBYIHRlaWx0IERpciBtaXQ6IGtsbz8hPwoKbG9vbCBnZW5hdSAuLmVpbiBrbG9za2lsbCA7KSB3YXMgZWluZSBpZGVlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBhbnNpLW11ZD8gKEJhbWJpLCAxNy4gTm92IDIwMDIsIDE3OjUzOjQyKToKfiMhIG9uPUJhbWJpIG90PTEwMzc1NTIwMTIgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDM3NTUxOTE2IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTAzNzUyNDgyMApXYXIgZGFzIG1laW4gU3RpY2h3b3J0PyBJc3QgZGFzIGRpZSBTdGVsbGUsIGFuIGRlciBpY2ggZGVuIEZhcmJlbi1FTSBmb3JkZXJuCnNvbGx0ZT8gTmVpbi4gSG9wcGxhLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBhbnNpLW11ZD8gKFpvb2ssIDE3LiBOb3YgMjAwMiwgMTc6NTQ6MzIpOgp+IyEgcm49QmFtYmkgcnQ9MTAzNzU1MjAyMiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzc1MjQ4MjAKV2FydW0gdmVybGVnc3QgRHUgZGFzIG51biBuYWNoIFNjaG1hcnJuPyA7KSBab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogYW5zaS1tdWQ/IChWYW5pb24sIDE3LiBOb3YgMjAwMiwgMTc6NTQ6NTgpOgp+IyEgcm49Wm9vayBydD0xMDM3NTUyMDcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzUyNDgyMApXZWlsIGVyIHdlaXNzLCBkYXNzIGljaCBqZXR6dCBzY2hyZWliZTogQmFtYmkgZm9yIEFuc2ktQmFsYW5jZS1FTSEKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBhbnNpLW11ZD8gKEJhbWJpLCAxNy4gTm92IDIwMDIsIDE3OjU1OjMyKToKfiMhIHJuPVZhbmlvbiBydD0xMDM3NTUyMDk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzUyNDgyMApVbmQgd2lyIHdpc3NlbiBqYSBhbGxlLCB3YXMgcGFzc2llcmVuIHd1ZXJkZSwgd2VubiBqZW1hbmQgYmxvZWQgZ2VudWcgd2FlcmUsCm1pY2ggenVtIEVNIHp1IG1hY2hlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGFuc2ktbXVkPyAoWm9vaywgMTcuIE5vdiAyMDAyLCAxNzo1NTo0NCk6Cn4jISBybj1CYW1iaSBydD0xMDM3NTUyMTMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzUyNDgyMApOZWluLCBlcnphZWhsLiBab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogYW5zaS1tdWQ/IChCb2luZywgMTcuIE5vdiAyMDAyLCAxODowNTowNCk6Cn4jISBybj1FbGRhcm9uIHJ0PTEwMzc1NTI1NjQgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDM3NTI0ODIwCkFjaCBEdSBTY2hhbmRlIC4uLiBkYSBoYXQgZWluZXIgdmllbCBaZWl0IGdlaGFidC4KICBCb2luZwpQUzogV2lyIGhhYmVuIEtvZWNoZXIgaW0gTXVkPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogYW5zaS1tdWQ/IChFbGRhcm9uLCAxNy4gTm92IDIwMDIsIDE4OjA1OjQ0KToKfiMhIHJuPUJvaW5nIHJ0PTEwMzc1NTI3MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3NTI0ODIwCktsYXIsIFlvcnUgaGF0IHp1bWluZGVzdCBlaW5lbi4gOikKCkVsZGFyb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGFuc2ktbXVkPyAoQXBzdSwgMTcuIE5vdiAyMDAyLCAxODo0MDoyMSk6Cn4jISBybj1CYW1iaSBydD0xMDM3NTUyMTMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzUyNDgyMApNYWNodCBFaW5mYWNoIEthcmwgRnJpdHNjaCB6dW0gQU5TSS1CYWxhbmNlLUVNLCBkZXIgbWFjaHQgZGFzIHNpY2hlciBnZXJuZS4KCkFwc3UsIGF1ZiBkaWUgS2xhZ2VuIHZlcnVuZ2x1ZWNrdGVyIGVwaWxlcHRpc2NoZXIgTXVkZGVyIHdhcnRlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBhbnNpLW11ZD8gKEJvaW5nLCAxNy4gTm92IDIwMDIsIDE4OjQzOjA3KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDM3NTU0ODY3IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTAzNzUyNDgyMApJbiBlaW5lbSBEZWluZXIgU2VoZXJoYXVzcmFldW1lIGdlaHQgbWFuIGphIGpldHp0IHNjaG9uIGR1cmNoIHRhdXNlbmQKSG9lbGxlbiAuLi4gOykgKFVuZCBtYW4gbXVzcyBkYXp1IG5vY2ggbmljaHRtYWwgcmVpbikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2VoZXJ2b3JhdXNzZXR6dW5nIGluIEJlenVnIGF1ZiBBUCAoR2xvaW5zb24sIDE3LiBOb3YgMjAwMiwgMTk6MTE6MDYpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzc1NTEwNjUgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD0xMDM3NTQwMDg0CkFjaCBtdXNzIG1hbiBkYXMgZGFzIGJlYW50cmFnZW4/IE1pc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHRoYWxlLS0gPyAoUGl0ZmFsbCwgMTcuIE5vdiAyMDAyLCAyMTozNjozNSk6Cn4jISBybj1Dcm9mdCBydD0xMDM3NTY1MTcxIHJnPXBhcnR5Cn4jISB0aWQ9MTAzNzU2NTAxMwoyNgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhbnNpLW11ZD8gKE9ya3RvZXRlciwgMTguIE5vdiAyMDAyLCAxMDoxNzowNyk6Cn4jISBybj1BcmsgcnQ9MTAzNzYxMDgyOCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMzc1MjQ4MjAKQXVzZ2VyZWNobmV0IERVIGJpdHRlc3QgdW0gR25hZGU/IEljaCBzdGF1bmUgZGFzIGR1IGRhcyBXb3J0IHVlYmVyaGF1cHQKa2VubnN0IQpTY2hhZW0gRGljaCB1bmQgcHJvZ2dlIHp1ciBCdXNzZSBtaW5kc3RlbnMgMiBuZXVlIFRvZGVzZmFsbGVuIQoKT3JrVCwgdGllZiBlcnNjaHVldHRlcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBhbnNpLW11ZD8gKFphcm5peWEsIDE4LiBOb3YgMjAwMiwgMTA6MjI6MDIpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwMzc2MTEwMjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3NTI0ODIwCkhtbW0gbXVzcyBkYXMgbmljaHQgIi4uLiBwcm9nZ2UgenUgQnVzc2VuIG1pbmRlc3RlbnMgMiBuZXVlIFRvZGVzZmFsbGVuISIKaGVpc3Nlbj8gVW5kIHdhcyBmdWVyIEJ1c3NlPyAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGFuc2ktbXVkPyAoSHVtbmksIDE4LiBOb3YgMjAwMiwgMTA6MjU6NTQpOgp+IyEgcm49WmFybml5YSBydD0xMDM3NjExMzIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzUyNDgyMApJbiBlcnN0ZW4gQnVzIGdpYnQgZXMgMjAgUmFldW1lLiBEZXIgZXJzdGUgUmF1bSBoZWlzc3QgLCxBbiBkZXIgZXJzdGVuIFJlaWhlJycKd2VubiBtYW4gbmFjaCAsLG4nJyBnZWh0IGtvbW10ICwsRHUgc3RvZXJzdCBkZW4gRmFocmVyLCBkZXIgZmFlaHJ0IHZvciBlaW5lbgpCYXVtLCB1bmQgZHUgYmlzdCB0b3QnJy4gV2VubiBEdSBuYWNoIG9zdGVuIGdlaHN0IHN0ZWh0IGRhICwsRHUgZ2Voc3QgbmFjaApvc3RlbiwgZGVyIEJ1cyBrcmllZ3QgU2NobGFnc2VpdGUgdW5kIGtpcHB0IHVtLCBydXRzY2h0IGVpbmUgQm9lc2NodW5nIHJ1bnRlcgp1bmQgRHUgYmlzdCB0b3QuJycgV2VubiBtYW4gbmFjaCBXZXN0ZW4gZ2VodCAsLER1IGdlaHN0IG5hY2ggV2VzdGVuLCBkZXIgQnVzCmtyaWVndCBTY2hsYWdzZWl0ZSwga2lwcHQgdW0sIGZsaWVndCBnZWdlbiBlaW5lbiBCb2VzY2h1bmcgdW5kIER1IGZsaWVnc3QgYXVzCmRlciBXaW5kc2NodXR6enNjaGVpYmUsIGRhcyBsZXR6dGUgd2FzIER1IHNpZWhzdCBpc3QgZWluIEZlbHNlbiB2b3IgRGVpbmVuCkF1Z2VuLicnIHVuZCB3ZW5uIG1hbiBuYWNoIFN1ZWRlbiBnZWh0IGtvbW10IG1hbiBpbiBkZW4gUmF1bSAsLEFuIGRlciB6d2VpdGVuClJlaWhlJycuCgpIdW1uaSBpc3QgZGFnZWdlbiwgZGFzcyBBcmsgQnVzc2UgcHJvZ2d0LiA7LSkKClBTOiBFaW4gZWluZmFjaGVzICwsdW50IGZhaHJlcicnIHVuZCAsLHVudCBiYWVua2UnJyBoYWV0dGUgdm9yIGFsbGVuIEZhbGxlbgpnZXdhcm50LCBhYmVyIG5laW4sIG1hbiB3aWxsIGphIGVyc3RtYWwgbmUgS2FydGUgbWFsZW4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBhbnNpLW11ZD8gKE9ya3RvZXRlciwgMTguIE5vdiAyMDAyLCAxMDoyODoyOSk6Cn4jISBybj1IdW1uaSBydD0xMDM3NjExNTU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzUyNDgyMApXZW5uIGVpbiBlaW5mYWNoZSAidW50IGZhaHJlciIgb2RlciAidW50IGJhZW5rZSIgZGljaCBiZXJlaXRzIHZvciBkZW4gRmFsbGVuCmdld2FybnQgaGFldHRlLCB3YWVyZW4gZXMga2VpbmUgQXJrYHNjaGVuIEZhbGxlbi4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBhbnNpLW11ZD8gKEFyaywgMTguIE5vdiAyMDAyLCAxMToyNDo0Mik6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTAzNzYxMTcwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzc1MjQ4MjAKU29sbCBkYXMgbmUgUGFyb2RpZSBhdWYgZGVuIFB1cHBlbnNwaWVsZXIgd2VyZGVuID8gKmdydWViZWwqCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogYW5zaS1tdWQ/IChCYW1iaSwgMTguIE5vdiAyMDAyLCAxMTo0NzoyNik6Cn4jISBybj1BcmsgcnQ9MTAzNzYxNTA4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzc1MjQ4MjAKT2gsIGtvbm50ZSBtYW4gZGEgZWNodCBLYXJ0ZW4gemVpY2huZW4/IERhbm4gbXVzcyBpY2ggZGEgbm9jaG1hbCBmb3JzY2hlbgpnZWhlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFdlYnBhZ2Ugc2V4aXN0aXNjaCAoQ2F0d2VhemxlLCAxOC4gTm92IDIwMDIsIDEyOjM3OjEwKToKfiMhIG9uPUZvb2JhciBvdD0xMDM3Mzc5NjQzIG9nPWRpc2t1c3Npb24KfiMhIHJuPUdyaW1tYm9ybiBydD0xMDM3MzY0OTEwIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDM3MzU5MTQzCkJhZXVtZWZpY2tlcmlubmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogV2VicGFnZSBzZXhpc3Rpc2NoIChDYXR3ZWF6bGUsIDE4LiBOb3YgMjAwMiwgMTI6Mzc6MTIpOgp+IyEgb249Rm9vYmFyIG90PTEwMzczNzk2NjMgb2c9ZGlza3Vzc2lvbgp+IyEgcm49VmFybGFyaW9uIHJ0PTEwMzczNzQyODMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMzczNTkxNDMKR2VoIHNwaWVsaW5uZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBXZWJwYWdlIHNleGlzdGlzY2ggKENhdHdlYXpsZSwgMTguIE5vdiAyMDAyLCAxMjozNzoxNik6Cn4jISBvbj1Gb29iYXIgb3Q9MTAzNzM4OTUwMCBvZz1kaXNrdXNzaW9uCn4jISBybj1Gb29iYXIgcnQ9MTAzNzM3OTY2MyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAzNzM1OTE0MwpVZWJyaWdlbnMgYmluIGljaCBkYWZ1ZXIsIGRpZSBzY2h3YXJ6ZW4gU2tlbGV0dGUgaW4gYWZyb2FtZXJpa2FuaXNjaGUgU2tlbGV0dGUKdW16dWJlbmVubmVuLgoKQWVobmxpY2gga29lbm50ZSBkYW5uIG1pdCBzY2h3YXJ6ZW4gRHJhY2hlbiwgc2Nod2FyemVuIFd1ZXJtZXJuIHVuZCBzY2h3YXJ6ZW4KWmF1YmVySU5ORU4gdmVyZmFocmVuIHdlcmRlbi4KClVuZCBkZXIgYmxhdWUgRHJhY2hlIGhlaXNzdCBpbiBadWt1bmZ0IFNjaGx1bXBmaW5lLgoKR3J1c3MsCgogICBGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBXZWJwYWdlIHNleGlzdGlzY2ggKENhdHdlYXpsZSwgMTguIE5vdiAyMDAyLCAxMjozNzoyMCk6Cn4jISBvbj1DdWNodWxsaW4gb3Q9MTAzNzM4OTgyNCBvZz1kaXNrdXNzaW9uCn4jISBybj1Gb29iYXIgcnQ9MTAzNzM4OTUwMCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAzNzM1OTE0MwpJc3QgZGFzIG5pY2h0IHJlZHVuZGFudD8gU2luZCBuaWNodCBhbGxlIGJvZXNlbiBEcmFjaGVuIHRpZWYgaW4gaWhyZW0KSW5uZXJlbiAuLi4gd2VpYmxpY2g/IEljaCBtZWluLCB3YXMgU08gYm9lc2UgaXN0Li4uICpkdWNrKiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBXZWJwYWdlIHNleGlzdGlzY2ggKENhdHdlYXpsZSwgMTguIE5vdiAyMDAyLCAxMjozNzoyMik6Cn4jISBvbj1NdXBmZWwgb3Q9MTAzNzM5MDQ2MyBvZz1kaXNrdXNzaW9uCn4jISBybj1DdWNodWxsaW4gcnQ9MTAzNzM4OTgyNCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAzNzM1OTE0MwpEYSBoYXN0IER1IGdhbnogcmVjaHQgOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VicGFnZSBzZXhpc3Rpc2NoIChDYXR3ZWF6bGUsIDE4LiBOb3YgMjAwMiwgMTI6Mzc6MjQpOgp+IyEgb249TWlyaWwgb3Q9MTAzNzQzNjAwNCBvZz1kaXNrdXNzaW9uCn4jISBybj1HbG9pbnNvbiBydD0xMDM3MzU5MTQzIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDM3MzU5MTQzCkR1IGhhc3QgZGVmaW5pdGl2IExhbmdld2VpbGUgb2RlciBpc3QgZGFzIG1hbCB3aWVkZXIgZWluIGFsdGVyIFRocmVhZApkZW4gaWhyIGhpZXIgYXVmbWFjaHQ/Ck1pcmlsLCBrb3Bmc2NodWV0dGVsbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogV2VicGFnZSBzZXhpc3Rpc2NoIChDYXR3ZWF6bGUsIDE4LiBOb3YgMjAwMiwgMTI6Mzc6NDQpOgp+IyEgb249UWl0ZXNzIG90PTEwMzc0MzcyMjAgb2c9ZGlza3Vzc2lvbgp+IyEgcm49Rm9vYmFyIHJ0PTEwMzczODk1MDAgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMzczNTkxNDMKYWVobSwgaWNoIHd1ZXJkZSBlaGVyIGF1ZiBhZnJvbmF0aXZlIChvZGVyIHNvKSBTa2VsZXR0ZSBwbGFlZGllcmVuLCBkYSBuaWNodApqZWRlciBTY2h3YXJ6ZSwgamVkZXMgU2Nod2FyemUsIGplZGUgU2Nod2FyemUgaW4gQW1lcmlrYSBsZWJ0IDstKQpvaCAtIGljaCBoYWV0dGUgdmllbGxlaWNodCBqZWRlIHNjaHdhcnplIGFscyBlcnN0ZXMgbmVubmUgbXVlc3NlbiAtIHdlZ2VuIGRlcgpob2VmbGljaGtlaXQgZ2VnZW51ZWJlciBkZXIgZnJhdSBhbiBzaWNoLiBhY2huZWluLCBldGlrZXR0ZSBmYWxsZW4gamEgd2VnIG1pdApkZXIgZW1hbnppcGF0aW9uIC4uLgo7LSkKCm5peCBmdWVyIHVuZ3V0CgpRSSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogV2VicGFnZSBzZXhpc3Rpc2NoIChDYXR3ZWF6bGUsIDE4LiBOb3YgMjAwMiwgMTI6Mzc6NTQpOgp+IyEgb249V2FyZ29uIG90PTEwMzc0NTM4MDMgb2c9ZGlza3Vzc2lvbgp+IyEgcm49UWl0ZXNzIHJ0PTEwMzc0MzcyMjAgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwMzczNTkxNDMKPiBhZWhtLCBpY2ggd3VlcmRlIGVoZXIgYXVmIGFmcm9uYXRpdmUgKG9kZXIgc28pIFNrZWxldHRlIHBsYWVkaWVyZW4sIGRhIG5pY2h0Cj4gamVkZXIgU2Nod2FyemUsIGplZGVzIFNjaHdhcnplLCBqZWRlIFNjaHdhcnplIGluIEFtZXJpa2EgbGVidCA7LSkKCkhtLCB0cmFlZ3QgZnJhdSBkYW5uIGhldXR6dXRhZ2UgenUgZ2VnZWJlbmVtIEFubGFzcyBkYXMga2xlaW5lIEFmcm9uYXRpdmU/IDopCgogIFdhcmdvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2VicGFnZSBzZXhpc3Rpc2NoIChDYXR3ZWF6bGUsIDE4LiBOb3YgMjAwMiwgMTI6Mzg6MDcpOgp+IyEgb249QXBzdSBvdD0xMDM3NDc1Nzk0IG9nPWRpc2t1c3Npb24KfiMhIHJuPVBhdHJ5biBydD0xMDM3MzU5MzM2IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDM3MzU5MTQzCkhpZXJtaXQgZm9yZGVyZSBpY2ggZGllIEdydWVuZHVuZyBlaW5lcyBBc3RhLVJlZmVyYXRlcyBmdWVyIGRpZSBFbWFuemlwYXRpb24KbWFlbm5saWNoZXIgR2Vpc2VsbiEKCkFiZXIgd2llIGlzc24gbnUgZGllIG1hZW5ubGljaGUgRm9ybT8gR2Vpc2xlcj8gR2Vpc2VyaWNoPyBHZWlzYm9jaz8gOy0pCgpBcHN1LCBzY2htYXJybmVuZCwgYWJlciBudXIgZWluIGtsZWluIHdlbmlnIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZWJwYWdlIHNleGlzdGlzY2ggKENhdHdlYXpsZSwgMTguIE5vdiAyMDAyLCAxMjozODowOSk6Cn4jISBvbj1NdXBmZWwgb3Q9MTAzNzQ5Njg1NCBvZz1kaXNrdXNzaW9uCn4jISBybj1WYW5pb24gcnQ9MTAzNzQ0MDQ2OCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAzNzM1OTE0MwphZCBMaWFyYTogZGllIEZlcm5mYWhyZXJzYWNoZT8gOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGluIGRlciBBRy4uLiAoRm9vYmFyLCAxOC4gTm92IDIwMDIsIDE5OjUxOjA2KToKPiB6ZWlnZSBlbGpvIGJyaWVmCkR1IHplaWdzdCBFbGpvIGRlaW4gRGluZy4KCkhtamEgOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCBpbiBkZXIgQUcuLi4gKEN1Y2h1bGxpbiwgMTguIE5vdiAyMDAyLCAyMDoxMTozNCk6Cn4jISBybj1Gb29iYXIgcnQ9MTAzNzY0NTQ2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzc2NDU0NjYKRGFoZXIgZGVyIEJlZ3JpZmYgIkZsYWNobWFubiI/IEljaCBkYWNodGUsIGRhcyB3YWVyIHdhcyBhbmRlcmVzLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHVtbWUgU2tlbGV0dGUgKEZvb2JhciwgMTguIE5vdiAyMDAyLCAyMDo0NTo0MSk6CltUb2Q6TGFyc10gRWluIHNjaHdhcnplcyBTa2VsZXR0IGhhdCBnZXJhZGUgRm9vYmFyIHVtZ2VicmFjaHQuIDwyMDoyNzo1MT4KW1RvZDpFaW4gc2Nod2FyemVzIFNrZWxldHRdIFdpbGxrb21tZW4gaW0gQ2x1YiwgQnJvdG5hZWwhIDwyMDoyNzo1MT4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogYW5zaS1tdWQ/IChDdWNodWxsaW4sIDE5LiBOb3YgMjAwMiwgMTA6MTI6MDUpOgp+IyEgcm49TW9yZ290aCBydD0xMDM3Njk3MDczIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTAzNzUyNDgyMApXb2JlaSBtYW4gc2ljaCBkb2NoIGluIGRlbiBoZXV0aWdlbiBhbnRpLWFtZXJpa2FuaXNjaGVuIFplaXRlbiBzY2hvbgpzY2hhZW10LCB3ZW5uIG1hbiBudXIgbmUgQ29rZSB0cmlua3QuLi4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogYW5zaS1tdWQ/IChDdWNodWxsaW4sIDE5LiBOb3YgMjAwMiwgMTA6MTM6MzkpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDM3Njk3MTQxIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTAzNzUyNDgyMAouLi4uCgoobXVlaHNhbSB1bSBGYXNzdW5nIHJpbmdlbmQpCllUQ3UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBhbnNpLW11ZD8gKEdsb2luc29uLCAxOS4gTm92IDIwMDIsIDEzOjQ1OjQyKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDM3Njk3MTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzUyNDgyMApJY2ggYmVrZW5uZSBtaWNoIFBlcHNpIHp1IHRyaW5rZW4gKGRpZSB3dXJkZSBpbW1lcmhpbiB2b24gZWluZW0gd2Vpc3NlbiwKYnJlbm5lbmRlIFNjaHdhcnplbiB1bXdvcmJlbikuIFVuZCB1ZWJlcmhhdXB0IGJla2VubmUgaWNoIG1pY2ggYXVjaCBkZXMKb2VmdGVyZW4gYW4gbm9uLURFLVJlY2huZXIgenUgc2l0emVuLiBJY2ggbXVkZGUgamVkb2NoIG5pY2h0IG1laHIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogYW5zaS1tdWQ/IChDcm9mdCwgMTkuIE5vdiAyMDAyLCAxODozNToyMik6Cn4jISBybj1NaXJpbCBydD0xMDM3NzI3MTUwIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTAzNzUyNDgyMApEYXMgd2FlciBqYSBwcm9kdWt0aXYuICBWZXJsYW5nIGRvY2ggc293YXMgbmljaHQuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQnJldHRlciwgZGllIGRpZSBXZWx0IGJlZGV1dGVuIChMaWFyYSwgMTkuIE5vdiAyMDAyLCAyMjo1NTowMyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDM3NzQyNzc3IHJnPXBhcnR5Cn4jISB0aWQ9MTAzNDcwNDAzMQpNZW1tZS4KCkxpYXJhLCBuaWNodCB3aXJrbGljaCBzY2htYXJybmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQnJldHRlciwgZGllIGRpZSBXZWx0IGJlZGV1dGVuIChHcmltbWJvcm4sIDE5LiBOb3YgMjAwMiwgMjM6MzM6NDMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTAzNzc0NDg1OCByZz1wYXJ0eQp+IyEgdGlkPTEwMzQ3MDQwMzEKSWNoIGhhYiBkYXMgamEsIG1hbmdlbHMgQmV0cm9mZmVuc2VpbiwgbnVyIGFtIFJhbmRlIG1pdGJla29tbWVuLiBIYWIgaWNoIGRhcwpyaWNodGlnIHZlcnN0YW5kZW4gZGFzcyBkaWUgVmVyYW5zdGFsdGVyIGVpbmVyIEdlZ2VucGFydHkgKGFrYSAiYWx0ZXJuYXRpdmVyClBhcnR5b3J0Iikgc2ljaCB1ZWJlciBhbHRlcm5hdGl2ZSBTdGFtbXRpc2NoZSAoYWthICJwYXJhbGxlbGUgU3RhbW10aXNjaGUiKQptb2tpZXJlbj8gU2NoYWRlLCBkYXNzIGljaCB2ZXJoaW5kZXJ0IGJpbiwgc29uc3Qgd3VlcmRlIGljaCBnbGF0dCBub2NoIGVpbmVuCmdlbWVpbnNhbWVuIEhhbWJ1cmdlciBEb21iZXN1Y2ggYW5yZWdlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBCcmV0dGVyLCBkaWUgZGllIFdlbHQgYmVkZXV0ZW4gKEdsb2luc29uLCAxOS4gTm92IDIwMDIsIDIzOjQyOjU1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDM3NzQ1MjIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNDcwNDAzMQpOZWluLCBkYXMgaGFzdCBEdSBmYWxzY2ggdmVyc3RhbmRlbi4gSWNoIG1va2llcmUgbWljaCBudXIgZGFydWViZXIsIGRhc3MgZGllCkdlZ2VuLVN0YVRpLVZlcmFuc3RhbHRlciBzaWNoIGFscyBOaWNodC1HZWdlbi1TdGFUaS1WZXJhbnN0YWx0ZXIgdmVya2F1ZmVuCm1vZWNodGVuLiBEaW5nZSBiZWltIE5hbWVuIG5lbm5lbiBpc3QgZG9jaCBzb25zdCBhdWNoIERlaW5lIFZvcmxpZWJlLCBvZGVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEJyZXR0ZXIsIGRpZSBkaWUgV2VsdCBiZWRldXRlbiAoR3JpbW1ib3JuLCAxOS4gTm92IDIwMDIsIDIzOjU1OjAxKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMzc3NDU3NzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0NzA0MDMxCkdlaHQgc28uIEVzIGhhdCB6dSBhbGxlbiBaZWl0ZW4genUgU3RhbW10aXNjaGVuLCBQYXJ0aWVzLCBSdWRlbG11ZGRlbiB1bmQKd2Fzd2Vpc3NpY2huaWNodGFsbGVzIFBhcmFsbGVsdmVyYW5zdGFsdHVuZ2VuIHZvbiBMZXV0ZW4gZ2VnZWJlbiwgZGllIHp1cgoib2ZmaXppZWxsZW4iIFZlcmFuc3RhbHR1bmcgKHdoaWNoZXZlciB0aGF0IG1heSBiZSkgbmljaHQgZ2VoZW4ga29ubnRlbiBvZGVyCndvbGx0ZW4uIEpldHp0IGRlc3dlZ2VuIGRhcyBKYW1tZXJuIGFuenVmYW5nZW4gaXN0IGViZW5zbyBwZWlubGljaCB3aWUgZWluaWdlCkphaHJlIHp1IHNwYWV0LgpEYXNzIGFsbGVyZGluZ3MgU3Rvcm5pZXJ1bmdlbiB1bmQgUGhhbnRvbWFubWVsZHVuZ2VuIHppZW1saWNoIHVuZmFpcgpnZWdlbnVlYmVyIGRlbiBWZXJhbnN0YWx0ZXJuIGlzdCBpc3QgdW5iZXN0cml0dGVuLiBEYXMgaXN0LCBzbyBiZWdydWVuZGV0IGltCkVpbnplbGZhbGwgZXMgYXVjaCBzZWluIG1hZywgbmljaHQgZGllIGZlaW5lIEFydC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2FybWR1c2NoZXIgc2luZCBvdXQgKEdsb2luc29uLCAyMC4gTm92IDIwMDIsIDAwOjMyOjI2KToKfiMhIHJuPUVsZGFyb24gcnQ9MTAzNzc0NzcyMyByZz13d3cKfiMhIHRpZD0xMDM3NzQ3MzgxCktvbW0gbW9yZ2VuIGluIGRlbiBDbHViLCBkYW5uIGVyd3VlcmdlbiB3aXIgRGljaCBkYSBtaXQgRGVpbmVyIFppZ2FyZXR0ZS4gVW5zCmZhZWxsdCBzY2hvbiB3YXMgZWluIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXR0ZSBTaWduYXR1cmUgZ2VzZWhlbiAoTW9yZ290aCwgMjAuIE5vdiAyMDAyLCAwODo1MzoxMik6CkVzIGdpYnQgMTAgU29ydGVuIHZvbiBNZW5zY2hlbjogRGllLCBkaWUgZGFzIEJpbnJzeXN0ZW0gdmVyc3RlaGVuLCB1bmQgZGllLApkaWUgZXMgbmljaHQgdHVuLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXR0ZSBTaWduYXR1cmUgZ2VzZWhlbiAoWmFybml5YSwgMjAuIE5vdiAyMDAyLCAwOTowMzo0NCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwMzc3Nzg3OTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3Nzc4NzkyCnVuZCBkYSB3YXIgZXMgd2llZGVyLCBkYXMgUHJvYmxlbSBtaXQgZGVuIFVtbGF1dGVuLi4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldHRlIFNpZ25hdHVyZSBnZXNlaGVuIChBbnRoZWEsIDIwLiBOb3YgMjAwMiwgMDk6MDg6MDgpOgp+IyEgcm49WmFybml5YSBydD0xMDM3Nzc5NDI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzc3ODc5MgpFcyBnaWJ0IGhhbHQgZWluIHBhYXIgdmVyc2NoaWVkZW5lIExldXRlLiBEaWUsIGRpZSBtaXQgQ29weSZQYXN0ZSB1bWdlaGVuCmtvZW5uZW4sIHVuZCBkaWUsIGRpZSBlcyBuaWNodCBrb2VubmVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXR0ZSBTaWduYXR1cmUgZ2VzZWhlbiAoQmV0dHksIDIwLiBOb3YgMjAwMiwgMDk6Mjc6MDkpOgp+IyEgcm49QmV0dHkgcnQ9MTAzNzc4MDc4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzc3Nzg3OTIKRXMgZ2lidCBnZW5hdSAyIEdydXBwZW4gdm9uIE1lbnNjaGVuOgpEaWUsIGRpZSBNZW5zY2hlbiBpbiAyIEdydXBwZW4gZWludGVpbGVuLCB1bmQgZGllLCBkaWUgZXMgbmljaHQgdHVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmV0dGUgU2lnbmF0dXJlIGdlc2VoZW4gKE1vcmdvdGgsIDIwLiBOb3YgMjAwMiwgMDk6Mjc6NDUpOgp+IyEgcm49QW50aGVhIHJ0PTEwMzc3Nzk2ODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3Nzc4NzkyCkRhbm4gZXJrbGFlciBtaXIgZG9jaCBtYWwgZGVuIFVudGVyc2NoaWVkLCB3YXJ1bSBkZXIgUGFyc2VyIGJlaSBkZXIgRWluZ2FiZQpkYXMgKGFlKSBpbiBlaW4gYWUgd2FuZGVsdCB1bmQgd2FydW0gYmVpIENvcHkmUGFzdGUgbmljaHQuIApNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmV0dGUgU2lnbmF0dXJlIGdlc2VoZW4gKEFudGhlYSwgMjAuIE5vdiAyMDAyLCAwOTozMzo0Nyk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwMzc3ODA4NjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3Nzc4NzkyCk1hbiBrb2VubnRlIGpldHp0IHNhZ2VuOiBhZSAhPSBhZQoKSmUgbmFjaCBDaGFyYWN0ZXItU2V0IGhhbHQuIFNjaHJlaWIgbWFsIHVudGVyIERPUyBlaW5lIFRleHRkYXRlaSBtaXQgVW1sYXV0ZW4KdW5kIG9lZmZuZSBkaWUgZGFubiBpbSBXaW5kb3dzLUVkaXRvci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEJyZXR0ZXIsIGRpZSBkaWUgV2VsdCBiZWRldXRlbiAoTXVhZGliLCAyMC4gTm92IDIwMDIsIDEwOjQ2OjIwKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwMzc3NDU3NzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM0NzA0MDMxCmRpZSBrYXJsc3J1aGVyIGZsYW1ta3VjaGVuZXNzZXIgd2FyZW4gbmljaHQgenUgZGVyIHRoYWxlcGFydHkgYW5nZW1lbGRldC4gZGllCmthcmxzcnVoZXIgcGFydHkgaXN0IGR1cmNoIGRlaW5lbiBnZWdlbnZvcnNjaGxhZyB1bmQgZWluZSBrdXJ6ZnJpc3RpZ2UKYWJzdGltbXVuZywgaWNoIGtvbm50ZSBtaXQgbnVyIHp3ZWkgd29jaGVuIHVybGF1YiB6YiBuaWNodCB0ZWlsbmVobWVuLAphYmdlc2Nob3NzZW4gd29yZGVuLiBudW4gYXVjaCBub2NoIHp1IHZlcmxhbmdlbiwgZGFzcyBtYW4gc2ljaCBpbiBzdGlsbGVyCnRyYXVlciBpbiBlaW4ga2FlbW1lcmxlaW4gZWluc2NobGllc3N0IGlzdCBkcmVpc3QuIHdlbm4gbWFuIGRpZXMgbmljaHQgbWFjaGVuCm1vZWNodGUsIHNvbmRlcm4gc2ljaCBoYWx0IGFuZGVyd2VpdGlnIHRyaWZmdCBhdWNoIG5vY2ggYWxzIGdlZ2VudmVyYW5zdGFsdHVuZwp6dSB2ZXJrYXVmZW4gaXN0IG5pY2h0IG51ciBkcmVpc3Qgc29uZGVybiBpbWhvIHVudmVyc2NoYWVtdC4KbnVyIHVtIG1hbCBsdWZ0IGFienVsYXNzZW4gZGllIHNpY2ggYmVpbSBsZXNlbiBkZXMgdm9yaGVyaWdlbiBhcnRpa2VscwphdWZzdGF1dGUuCgptdWFkaWIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCaXMgMjAwMyBvZmYgRHV0eSA6KSAoR3JpbW1ib3JuLCAyMC4gTm92IDIwMDIsIDE0OjEwOjU1KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDM3Nzg0MjUwIHJnPXNlaGVyLnVybGF1Ygp+IyEgdGlkPTEwMzc3ODQyNTAKQWxzbywgQW5hdG9sIGlzdCB3ZWcsIEN1Y2h1bGxpbiBpc3QgamV0enQgYXVjaCB3ZWcgLSB3ZXIga29tbXQgd29obCBhbHMKbmFlY2hzdGVzPyBCYXV0IGRvY2ggbWFsIGJpdHRlIGplbWFuZCBkYXMgV2V0dGJ1ZXJvIGRhZnVlciB1bS4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJpcyAyMDAzIG9mZiBEdXR5IDopIChWZWN0b3IsIDIwLiBOb3YgMjAwMiwgMTQ6MTE6MzcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzc3OTc4NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3Nzg0MjUwCjEwIE11ZW56ZW4gYXVmIGRpZSBLbmF0dGVya2lzdGUgOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYWVtcGZlciAuLi4gKExpYXJhLCAyMC4gTm92IDIwMDIsIDE0OjUxOjM0KToKRGVpbiBGcmV1bmQgRG90eiB0ZWlsdCBEaXIgbWl0OiB3YWFhYSwgZGFzIHRlbnRha2VsbW9uc3RlciBoYXQgbWljaCBnZWtyYXR6dCEKRGVpbiBGcmV1bmQgRG90eiB0ZWlsdCBEaXIgbWl0OiAqaGV1bCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBhbnNpLW11ZD8gKEdyaW1tYm9ybiwgMjAuIE5vdiAyMDAyLCAxNjo1MDo0MCk6Cn4jISBvbj1Gb29iYXIgb3Q9MTAzNzgwNjM5OCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49V2hpdGV0aWdlciBydD0xMDM3NzkwNzc4IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTAzNzUyNDgyMApVZWJyaWdlbnMgZmFlbmRlIGljaCBhdWNoIFNvdW5kLUF1c2dhYmUgZ2FueiB0b2xsLgoKS25hcnJlbmRlIFR1ZXJlbiBkaWUgd2lya2xpY2gga25hcnJlbiwgZWNodGUgU2NocmVpZSBpbiBkZXIgRHVua2VsaGVpdCwgZGFzCndhZXIgZG9jaCB3YXMuCgpHcnVzcywKCiAgIEZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IGFuc2ktbXVkPyAoR3JpbW1ib3JuLCAyMC4gTm92IDIwMDIsIDE2OjUwOjQxKToKfiMhIG9uPUVsZGFyb24gb3Q9MTAzNzgwNjUwMSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49Rm9vYmFyIHJ0PTEwMzc4MDYzOTggcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDM3NTI0ODIwClVuZCBkYXMgR2VydWNoc21vZHVsLCBkYW1pdCBzdGlua2VuZGUgWndlcmdlIHVuZCBkdWZ0ZW5kZXMgRXNzZW4gcmVhbGlzdGlzY2hlcgp3ZXJkZW4uLi4KCkVsZGFyb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBhbnNpLW11ZD8gKEdyaW1tYm9ybiwgMjAuIE5vdiAyMDAyLCAxNjo1MDo0Mik6Cn4jISBvbj1LYXJpcyBvdD0xMDM3ODA2NTI1IG9nPWVudHdpY2tsdW5nCn4jISBybj1Gb29iYXIgcnQ9MTAzNzgwNjM5OCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwMzc1MjQ4MjAKR2VuYXUuIFVuZCBlaW4gQmFuc2hlZS1TY2hyZWksIGRhc3MgRGVpbmUgTEF1dHNwcmVjaGVyCmluIEVuZHN0ZWxsdW5nIHZlcnJpZWdlbG4uCk9id29obC4uLiBvcHRpb25hbCB3YWVyIGRhcyBuZXR0IDopCkthcmlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogYW5zaS1tdWQ/IChHcmltbWJvcm4sIDIwLiBOb3YgMjAwMiwgMTY6NTA6NDMpOgp+IyEgb249Rm9vYmFyIG90PTEwMzc4MDY4NDMgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUthcmlzIHJ0PTEwMzc4MDY1MjUgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDM3NTI0ODIwClNwcmFjaGF1c2dhYmUgZnVlciBzYWcsIGZyYWcsIHJ1ZmUgZXRjLiBzb3dpZXNvLiBJc3QgZG9jaCBrbGFyLgoKVW5kIGV4dHJhIGZ1ZXIgRWxkYXJvbiBmYWVuZ3QgZGFzIE11ZCBkYW5uIG5vY2ggYW4genUgaGFhcmVuLiA6bykKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IGFuc2ktbXVkPyAoR3JpbW1ib3JuLCAyMC4gTm92IDIwMDIsIDE2OjUwOjQ0KToKfiMhIG9uPUdsb2luc29uIG90PTEwMzc4MDczNjIgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUZvb2JhciBydD0xMDM3ODA2ODQzIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTAzNzUyNDgyMApEdSB3aWxsc3QgZWluIFR4dDJTcGVlY2g/IFVhZWggOykgRGFubiBtdWVzc2VuIGFiZXIgZGllIFNwaWVsZXIgZXJzdG1hbApTdGltbXByb2JlbiBhYmdlYmVuLiBJY2ggc2NobGFnZSB2b3IsIGRhc3MgamVkZXIgZGVyIGltIEJlc2l0eiBlaW5lcyBIZWFkc2V0cwppc3Qgd2FobGxvcyBnZXphcHB0IHdpcmQsIGJpcyBlciBzZWluIFNjaG1lcnplbnNzY2hyZWlzb2xsIGVyZnVlbGx0IGhhdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5ldHRlIFNpZ25hdHVyZSBnZXNlaGVuIChWYW5pb24sIDIwLiBOb3YgMjAwMiwgMTc6MDk6MTQpOgp+IyEgcm49TW9yZ290aCBydD0xMDM3NzgwODY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzc3ODc5MgpmCi9zdGQvcGxheWVyL2NvbW1hbmQuYzo6bW9kaWZ5X2NvbW1hbmQoKQoKQmVpIGFsbGVtIHdhcyBkYSBkdXJjaCBnZWh0LCB3ZXJkZW4gVW1sYXV0ZSB1bWdlc2V0enQuIERlciBFZGl0b3IgZ2VodCBhZmFpawpuaWNoIGR1cmNoLiBEYWhlciBrZWluIFVtbGF1dC1Lb3JyZWt0dXItU2VydmljZS4KClYqLCBtZWludCB6d2FyIGRhcyBnZWhvZXJ0IG5pY2ggaGllciBoZXIsIGFiZXIgYml0dGUgLi4uLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IGFuc2ktbXVkPyAoQm9pbmcsIDIwLiBOb3YgMjAwMiwgMTc6NDU6MDcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzc4MDc0NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3NTI0ODIwClNvdW5kYXVzZ2FiZSBnYWIncyB6LmIuIGJlaSBQTUYgKFBhZHJvbmVzIE11ZCBGcm9udGVuZCBmdWVyIGRpZSBuZXVlcmVuClNwaWVsZXIgdW50ZXIgdW5zKS4gSm9mIGhhdHRlIGRhbWl0IG5lIE1lbmdlIFNwYXNzIC4uLiA7KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJpcyAyMDAzIG9mZiBEdXR5IDopIChDdWNodWxsaW4sIDIwLiBOb3YgMjAwMiwgMTg6NDY6NDcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzc3OTc4NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3Nzg0MjUwCk5hIGtlaW5lIFNvcmdlLCBlaW5lICpTcGllbHBhdXNlKiBtdXRlIGljaCBEaXIgbmljaHQgenUsIEdyaW1taSA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBhbnNpLW11ZD8gKFdoaXRldGlnZXIsIDIwLiBOb3YgMjAwMiwgMTg6NDc6NDMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzc4MDc0NDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM3NTI0ODIwCmFsc28gbWl0IGVpbiBiaXNzY2hlbiAobmFqYSBlaGVyIHZpZWwpIHplaXQga29lbm50ZSBpY2ggZGlyIGVpbiB0Zi10b29sCnNjaHJlaWJlbiBkYXNzIGRpciBzb3dhcyBtYWNodC4uLiA6KQpXVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBhbnNpLW11ZD8gKE11cGZlbCwgMjEuIE5vdiAyMDAyLCAwMDo1NjowMCk6Cn4jISBybj1Cb2luZyBydD0xMDM3ODEwNzA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzUyNDgyMApJY2ggZXJpbm5lciBtaWNoIGR1bmtlbCwgZGFzcyBIYXRlIHVuZCBBbmFraW4gbWFsIG5lIFNvdW5kYXVzZ2FiZSBmdWVyIHRmCmdlc3RyaWNrdCBoYXR0ZW4gLSB6LkIuIHVtIEthZW1wZmUgbWl0IHBhc3NlbnNlbiBHZXJhZXVzY2hlbiAqdW1wZiogKnBhZmYqCiphYWFyZ3MqIHp1IHVudGVybGVnZW4uIE11c3Mgc2NocmVja2xpY2ggZ2V3ZXNlbiBzZWluIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKenVtIGtpY2hlcm4gKFBhdHJ5biwgMjEuIE5vdiAyMDAyLCAyMTo1Njo1MCk6Cmh0dHA6Ly93d3cuc3BpZWdlbC5kZS9uZXR6d2VsdC9uZXR6a3VsdHVyLzAsMTUxOCwyMjM4MzgsMDAuaHRtbAoKLS0gCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHp1bSBraWNoZXJuIChZZW5kaSwgMjIuIE5vdiAyMDAyLCAxMTo0ODo0Nyk6Cn4jISBybj1QYXRyeW4gcnQ9MTAzNzkxMjIxMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzc5MTIyMTAKRGEgZmFlbGx0IG1pciB3aWVkZXIgZGVyIFdpdHogbWl0IGRlbSBCYXllcm4gZWluLCBkZXIgc2FndDoKIkRpZSBzYW4gZGVwcGVydCwgZGllIEVuZ2xhZW5kZXI6IEZ1ZXIgJ0knIHNvZ25zICdFaScsIGZ1ZXIgJ0VpJyBzb2ducyAnRWNrJywKZnVlciAnRWNrJyBzb2ducyAnS29hbmEnLCB1bmQgZnVlciAnS29hbmEnIHNvZ25zICdOb2JvZHknLgpKbywgYmluIEkgTm9ib2R5Pz8iCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IGFuc2ktbXVkPyAoV2FyZ29uLCAyMi4gTm92IDIwMDIsIDIwOjA3OjA5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDM3ODA3NDQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzNzUyNDgyMAo+IEtuYXJyZW5kZSBUdWVyZW4gZGllIHdpcmtsaWNoIGtuYXJyZW4sIGVjaHRlIFNjaHJlaWUgaW4gZGVyIER1bmtlbGhlaXQsIGRhcwo+IHdhZXIgZG9jaCB3YXMuCgpKYXUhIFVuZCBuYXR1ZXJsaWNoIGRhcyBrb25zdGFudGUgSGludGVyZ3J1bmRnZWJyYWJiZWwgYXVmIGRlbiBFYmVuZW4hIDopCiAgV2FyZ29uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHcm9lc3NlIGlzdCByZWxhdGl2Li4uIChFbGRhcm9uLCAyMy4gTm92IDIwMDIsIDEyOjI2OjIyKToKRHUga2xldHRlcnN0IGF1ZiBQaXRmYWxsIHVuZCBiaXN0IG51biBpbiBBdWdlbmhvZWhlIG1pdCBkZXIgS2xhcHBlIGltIFRvci4KRHUga2xvcGZzdCBhbiBkYXMgVG9yLgpOaWNodHMgcGFzc2llcnQuCkR1IHRpcHBzdCBtaXQgZGVtIEZ1c3MgYXVmIGRlbiBCb2Rlbi4KRHUga2xldHRlcnN0IHdpZWRlciBoZXJ1bnRlci4KCkVsZGFyb24sIGxhbmdlIEJlaW5lIGhhYmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdyb2Vzc2UgaXN0IHJlbGF0aXYuLi4gKFBpdGZhbGwsIDIzLiBOb3YgMjAwMiwgMTI6Mjc6MTApOgp+IyEgcm49RWxkYXJvbiBydD0xMDM4MDUwNzgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzODA1MDc4MgpFbGRhcm9uIHN0aW5rdCB3aWRlcmxpY2guCkVsZGFyb24gc3Rpbmt0IHVlYmVsLgpFbGRhcm9uIHN0aW5rdCB3aWRlcmxpY2guCgoKUGl0KiBlcnNjaGF1ZGVydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdyb2Vzc2UgaXN0IHJlbGF0aXYuLi4gKFZhbmlvbiwgMjMuIE5vdiAyMDAyLCAxMjoyNzo0OCk6Cn4jISBybj1FbGRhcm9uIHJ0PTEwMzgwNTA3ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM4MDUwNzgyCi4uIApEdSB0aXBwc3QgbWl0IGRlbSBGdXNzIC4uLiBhZWhtIC4uLiB3b3JhdWYgaW1tZXIgRHUgc3RlaHN0LgpQaXRmYWxsIGphbW1lcnQuCi4uCgpTbyBiZXNzZXI/ClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqc2NobmllZiogKEtleSwgMjQuIE5vdiAyMDAyLCAwMTo1MzozNik6CkR1IHNhZ3N0OiBEYW5uIGt1c2NoZWxuIGhhbHQgd2lyIDopClBpdGZhbGwgZ2VodCBuYWNoIFN1ZWRlbi4KCkhtcGYgOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqc2NobmllZiogKFBpdGZhbGwsIDI0LiBOb3YgMjAwMiwgMDI6MzU6MzEpOgp+IyEgcm49S2V5IHJ0PTEwMzgwOTkyMTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM4MDk5MjE2CmR1IHdlaXNzdCBqYToga2VpbmUgbmV1ZW4gZnJldW5kZSAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoWm9vaywgMjQuIE5vdiAyMDAyLCAxNDoyNDo0Nik6CkRlaW4gRnJldW5kIERheWxpZ2h0IHRlaWx0IERpciBtaXQ6IGlyZ2VuZHdhcyBidWd0IGhpZXIgYWJlciBnYW56IGhlZnRpZwolIENvbm5lY3Rpb24gdG8gTUcgY2xvc2VkIGJ5IGZvcmVpZ24gaG9zdC4KCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2lsbCBhdSBtYWwgKEltZGEsIDI0LiBOb3YgMjAwMiwgMTQ6MzQ6MjApOgpEZWluZSBGcmV1bmRpbiBMZWliaSB0ZWlsdCBEaXIgbWl0OiBicmluZyBtYWwgd2VyIGltZGEgbmUgbWF1cyBpbiBkaWUgZ2lsZGUgOikKClsuLi5dCgpDYXJtZW4gc3RlbGx0IHNpY2ggYXVmIGRpZSBIaW50ZXJiZWluZSB1bmQgcHV0enQgc2ljaCBpbiBhbGxlciBSdWhlIGlocmUKa2xlaW5lIE5hc2UuIApBQUFBSEhIISBFaW5lIE1hdXMhIERpcmVrdCB2b3IgRGlyISAKCkltZGEuIEltbWVybm9jaCBNYXVzZnJlaS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlYm9vdCwgTGFnICYgRm9yc2NoZW4gKENyb2Z0LCAyNC4gTm92IDIwMDIsIDE1OjIzOjA5KToKWFhYIHNhZ3Q6IGFsc28gaWNoIGthbm4gZGFzIG5pY2h0LCBzb3JyeSwgdW5kIGljaCBoYWIgZGVybWFzc2VuIGxhZywgZGFzcyBpY2gKWFhYIHNhZ3Q6IGthdW0gbGF1ZmVuIGthbm4sIGZvcnNjaGVuIGlzdCBqZXR6dCBuaWNodApJbW1lciB3aWVkZXIgbmV0dCB3ZWxjaGUgWnVzYW1tZW5oYWVuZ2Ugc2ljaCBkYSBhdWZ0dW4uICBVbmQgdHJvdHpkZW0KaGluZGVydCBkYXMgbmljaHQgYW0gZmxlaXNzaWcgYXVzcnVlc3RlbiAsLSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGV0enRlciBDcmFzaC4uLiAoT3JrdG9ldGVyLCAyNC4gTm92IDIwMDIsIDE2OjIyOjM4KToKfiMhIHJuPVpvb2sgcnQ9MTAzODE1MTE5NiByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTAzODE1MTE5NgpXZXIgaGF0IGRpciBkZW5uIGRhIGRhcyBrb21tdW5pc3Rpc2NoZSBNYW5pZmVzdCBpbiBuLWZhY2hlciBhdXNmZXJ0Z3VuZwpnZXNjaGlja3QsIFpvb2s/IFVuZCB3YXJ1bSBoYXN0IGR1IGRpZSBrb3BpZW4gbmljaHQgZ2Vsb2VzY2h0PyAKCkVpbiBmcmVjaCBncmluc2VuZGVyIE9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqc2NobHVjayogKFNjb3BlLCAyNC4gTm92IDIwMDIsIDE3OjEzOjUwKToKVHdpbmdpIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgc3VwZXJzdWVzcyB1bmQgaGV4ZW5mcmVjaCBhbi4gCkR1IGhvZXJzdCBlaW5lIFN0aW1tZSBoaW50ZXIgRGlyOiBLT01NIE1JVCBNSVIsIFNURVJCTElDSEVTIERJTkchCgo6PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhhbmR5IGdla2xhdXQgKEdyaW1tYm9ybiwgMjQuIE5vdiAyMDAyLCAxOTozNjo1OCk6Cn4jISBybj1MaWFyYSBydD0xMDM4MTYyOTY4IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTAzODE2Mjk2OApVbmQgamV0enQgZ2xhdWJzdCBEdSB3aXIgd3VlcmRlbiBlaW5zIGZ1ZXIgRGljaCBrbGF1ZW4/IE5lbmUsIGtsYXUgRGlyIG1hbApzY2hvZW4gc2VsYmVyIGVpbnMuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIYW5keSBnZWtsYXV0IChMaWFyYSwgMjQuIE5vdiAyMDAyLCAxOTozODoxOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzODE2MzAxOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzgxNjI5NjgKRmFsbHMgZHUgZWluIGdlYnJhdWNodGVzIFNvbGNoZXMgaW0gS2VsbGVyIGxpZWdlbiBoYWV0dGVzdCwgdGFldGVzdCBkdSB2b24gbWlyCkJhcmVzIGRhZnVlciBiZWtvbW1lbi4KSGFzdGVzIGpldHp0IHZlcnN0YW5kZW4gR3JpbW1pPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSGFuZHkgZ2VrbGF1dCAoVmFuaW9uLCAyNC4gTm92IDIwMDIsIDE5OjQ1OjA3KToKfiMhIHJuPUxpYXJhIHJ0PTEwMzgxNjMwOTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDM4MTYyOTY4CkR1IG1laW5zdCwgR3JpbW1ib3JuIGhhdCBqZXR6dCBEZWluIGFsdGVzIHVuZCBicmF1Y2h0IGVzIG5pY2h0PwoKViosIHNjaG1hcnJudC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEhhbmR5IGdla2xhdXQgKEdyaW1tYm9ybiwgMjQuIE5vdiAyMDAyLCAxOTo0ODowOSk6Cn4jISBybj1WYW5pb24gcnQ9MTAzODE2MzUwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzgxNjI5NjgKRHVtbSBkaWR1bW0uLi4gKGMpIEhhbXBlbG1hbm4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZHVoIChEYXJrd2luZywgMjQuIE5vdiAyMDAyLCAyMTo0Njo0Mik6Ck11YWRpYiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCndhcyB3YXIgZGVubiBkYXMuLi4ga29sbGVrdGl2ZXMgQW5zcHJpbmdlbiBkZXIgV2V0dGVyd2FjaHMtU2tyaXB0ZSA/IEdsYXViIGRpZQpQYXVzZW4gc2luZCBncmFkIGFiZ2VzZXNzZW4gOj4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZlaWdsaW5nLi4uIChIdW1uaSwgMjUuIE5vdiAyMDAyLCAyMjoyODoxMik6CltTZWhlcjpIdW1uaV0gS2xhciBiaW4gaWNoIGZhdWwuIEljaCBoYWIgaGV1dGUgc2Nob24gZHJlaSBvZGVyIHZpZXIgQnVncwpbU2VoZXI6SHVtbmldIGdlc3VjaHQgdW5kIG5pY2h0IGdlZnVuZGVuLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKW1NlaGVyOkxpYXJhIHRyb2VzdGV0IEh1bW5pIGF1c2dpZWJpZ3N0XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltTZWhlcjpTY3JlYW1lciBncmluc3QuXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApbU2VoZXI6QXJrXSBuZW5udCBzaWNoIGRhcyBuaWNoIGlua29tcGV0ZW50PyA7KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKW1NlaGVyOkh1bW5pXSBEaWUgQnVncyB3YXJlbiB2b24gVHJveS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltTZWhlcjpBcmtdIHdoYXRldmVyLCBwYXNzdCBhdWNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApbU2VoZXI6SHVtbmldIEFjaCBqYTogRGllIEJ1Z3Mgd2FyZW4gaW4gZGVyIEVCRU5FLiBIYWIgaWNoIGRhcyBlcndhZWhudD8gICAgICAKW1NlaGVyOlNjcmVhbWVyIGlzdCBnZXNwYW5udCB3aWUgbWFuIGRhcyBkYW5uIG5lbm50IDstKV0gICAgICAgICAgICAgICAgICAgICAgCltTZWhlcjpMaWFyYV0gdWggb2ggZGFubiBpc3QgZXMgZWluIGd1dGVzIHplaWNoZW5kIGFzcyBkdSBzaWNoIG5pY2h0IGdlZnVuZGVuCltTZWhlcjpMaWFyYV0gaGFzdCA7KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApBcmsgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhICAgICAgICAgICAgICAgICAgICAgICAKCkhhaGEuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQnVnISAoWm9vaywgMjYuIE5vdiAyMDAyLCAxNjo1MjozOCk6Cn4jISBvbj1ab29rIG90PTEwMzgzMjU5MzYgb2c9Z2lsZGVuLmJpZXJzY2h1ZXR0bGVyCkJpZXJzY2h1ZXR0bGVyOkJydW5vXSBKb2YgaGF0IGdlcmFkZSBiZXNjaGxvc3NlbiwgZGVuIFJlY2huZXIgaW4gendlaSBNaW51dGVuCltCaWVyc2NodWV0dGxlcjpCcnVub10gcnVudGVyenVmYWhyZW4uCkR1IHRlaWxzdCBBcm1hZ2VkZG9uIG1pdDogaHU/CkFybWFnZWRkb24gdGVpbHQgRGlyIG1pdDogRXMgaXN0IG5vY2ggenUgZnJ1ZWghIFByb2JpZXIgZXMgMTAgTWludXRlbiB2b3IgZGVtCkFybWFnZWRkb24gdGVpbHQgRGlyIG1pdDogRW5kZSBub2NobWFsIQpBcm1hZ2VkZG9uIHRlaWx0IERpciBtaXQ6IEluIDEgU3R1bmRlLCAyMyBNaW51dGVuIHVuZCA0MCBTZWt1bmRlbiBpc3QgZXMKQXJtYWdlZGRvbiB0ZWlsdCBEaXIgbWl0OiBzb3dlaXQhCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJ1ZyEgKEFscGhhLCAyNi4gTm92IDIwMDIsIDE4OjA2OjA4KToKfiMhIHJuPVpvb2sgcnQ9MTAzODMyNTk1OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzgzMjU5NTgKQXJtYWdlZGRvbiB0ZWlsdCBEaXIgbWl0OiBFcyBpc3Qgbm9jaCB6dSBmcnVlaCEgUHJvYmllciBlcyAxMCBNaW51dGVuIHZvciBkZW0KQXJtYWdlZGRvbiB0ZWlsdCBEaXIgbWl0OiBFbmRlIG5vY2htYWwhCkFybWFnZWRkb24gdGVpbHQgRGlyIG1pdDogSW4gMTAgTWludXRlbiB1bmQgMCBTZWt1bmRlbiBpc3QgZXMgc293ZWl0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGF1c2hhbHRzdGlwcHMgOykgKExpYXJhLCAyNi4gTm92IDIwMDIsIDIxOjQ5OjA4KToKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IHdpZSBtYWNodCBtYW4gbWFyb25lbiBoZWlzcz8KLi4uCkRlaW4gRnJldW5kIEZvb2JhciB0ZWlsdCBEaXIgbWl0OiAiTmEsIER1IHN1ZXNzZSwga2xlaW5lLCBzY2hhcmZlIE1hcm9uZSwgRHUsCkRlaW4gRnJldW5kIEZvb2JhciB0ZWlsdCBEaXIgbWl0OiB3aWUgd2FlciBlcyBtaXQgdW5zIGJlaWRlbi4uLj8iCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgKEZvb2JhciwgMjYuIE5vdiAyMDAyLCAyMzoxNjowOSk6CkZyb206IEFybnVsZiBUcmlsbGVyIDxDU2NodWx6ZU1kTEB0LW9ubGluZS5kZT4KTmV3c2dyb3VwczogZGUuc29jLnJlY2h0LndvaG5lbgpTdWJqZWN0OiBSZTogV2FybXdhc3NlcmF1c2ZhbGwKRGF0ZTogVHVlLCAxMiBOb3YgMjAwMiAxMzoxMDoyMyArMDEwMApNZXNzYWdlLUlEOiA8YXFxcjVkJHNxZCQwMyQxQG5ld3MudC1vbmxpbmUuY29tPgoKCkplbnMgTXVlbGxlciBzY2hyaWViOgoKPiBXYXMgZnVlciBBbnNwcnVlY2hlIGhhdCBlaW4gTWlldGVyIGRhIGVpZ2VudGxpY2g/Cj4KPiBTY2h3aW1tYmFka2FydGUgYWxzIFNjaGFkZW5lcnNhdHo/CgpNaW5kZXN0ZW5zISBJY2ggeml0aWVyZSBtYWw6ICIuLi4gbmFjaCBkZW0gQXVzZmFsbCBkZXMgV2FybXdhc3NlcnMgd2FyCmRlciBLbGFlZ2VyIGdlend1bmdlbiwgc2ljaCBlaW5lIGFuZGVyZSBVbnRlcmt1bmZ0IHp1IHN1Y2hlbi4gRXIgaGF0CmdsYXVid3VlcmRpZyBkYXJnZWxlZ3QsIGRhc3Mga3VyemZyaXN0aWcga2VpbmUgYW5kZXJlbiBSYWV1bWUgenVyClZlcmZ1ZWd1bmcgc3RhbmRlbiBhbHMgZGllIFByYWVzaWRlbnRlbnN1aXRlIGltIEhvdGVsIEFkbG9uLiBJbnNvZmVybiBoYXQKZXJzY2hvZXBmdW5nCkV1cm8uIERlciBFaW53YW5kLCBlciBoYWV0dGUgc2ljaCB6dXIgU2NoYWRlbnNiZWdyZW56dW5nIG5pY2h0IDYgRmxhc2NoZW4KCkNoYW1wYWduZXIgYXVmIHNlaW4gWmltbWVyIGJlc3RlbGxlbiBkdWVyZmVuLCBncmVpZnQgbmljaHQgZHVyY2gsIGRlbm4KQ2hhbXBhZ25lcmtvbnN1bSBlbnRzcHJpY2h0IGluIGRpZXNlbSBIb3RlbCBkdXJjaGF1cyBkZXIgVmVya2VocnNzaXR0ZQp1bmQgaXN0IGFscyBzb3ppYWwgYWRhZXF1YXRlcyBWZXJoYWx0ZW4genUgYmlsbGlnZW4uIgoKCiAgLUFuZHJlYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXRkaWdlc3QgKEJvaW5nLCAyNy4gTm92IDIwMDIsIDEwOjMyOjI0KToKfiMhIHJuPUZvb2JhciBydD0xMDM4MzQ4OTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzODM0ODk2OQpEZW4gVGVpbCBtaXQgZGVyIGVyc2Nob2VwZnVuZyBoYWIgaWNoIG5pY2h0IGthcGllcnQsIGtvZW5udGVzdCBEdSBkZW4KdmllbGxlaWNodCBldHdhcyBnZW5hZXVlciBhdXNmdWVocmVuPwogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldGRpZ2VzdCAoRm9vYmFyLCAyNy4gTm92IDIwMDIsIDEwOjQzOjEyKToKfiMhIHJuPUJvaW5nIHJ0PTEwMzgzODk1NDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM4MzQ4OTY5CkR1bW1oZWl0LiA6bykKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRURWLU1pdHRlaWx1bmcgKEJvaW5nLCAyNy4gTm92IDIwMDIsIDE2OjQ0OjAzKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDM4NDExNzE5IHJnPXdpdHplCn4jISB0aWQ9MTAzODM5NjE2NwpOZWluLCBkaWUgU3RyYWZlIGJlc3RlaHQgZGFyaW4sIGVpbmVuIEFydGlrZWwgdm9uIERpciBsZXNlbiB6dSBtdWVzc2VuIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEVEVi1NaXR0ZWlsdW5nIChNYXJjdXMsIDI3LiBOb3YgMjAwMiwgMTY6NDQ6MjEpOgp+IyEgcm49Qm9pbmcgcnQ9MTAzODQxMTg0MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzgzOTYxNjcKRGFzIGxpZWd0IG51ciBhbiBtZWluZW0gOTAgemVpY2hlbiBicmVpdGVtIFRlcm0uCgpDaWFvLCBNCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpxIChHcmltbWJvcm4sIDI3LiBOb3YgMjAwMiwgMjM6MDE6NDEpOgp+IyEgb249QnJvY2FuZG8gb3Q9MTAzODQzNDQzMSBvZz1hbGxnZW1laW5lcwpzY2hhdQpxCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogcSAoQ3JvZnQsIDI4LiBOb3YgMjAwMiwgMDI6NTQ6MDApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzg0MzQ1MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM4NDM0NTAxCkdhYnMgZnVlciBzb3dhcyBuaWNodCBkaWUgUnVicmlrIE11ZWxsPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBxIChHcmltbWJvcm4sIDI4LiBOb3YgMjAwMiwgMDU6NDc6MTEpOgp+IyEgcm49Q3JvZnQgcnQ9MTAzODQ0ODQ0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzg0MzQ1MDEKQXVjaC4gVW5kIGVzIGdhIGZ1ZXIgc293YXMgc2Nob24gaW1tZXIgZWxsZW5sYW5nZSBEaXNrdXNzaW9uZW4gd29zIGhpbmdlaG9lcnQKKG1laW5lIHBlcnNvZW5saWNoZSBNZWludW5nIGlzdCBqYSAid2l0emUiKS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogcSAoQmFtYmksIDI4LiBOb3YgMjAwMiwgMTM6MTU6MjQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzg0NTg4MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM4NDM0NTAxCkljaCBiaW4gZnVlciBNdWVsbC4gU2VsYmlnZSBSdWJyaWsgaGFiIGljaCBuYWVtbGljaCB3ZWdlbiBnZW5hdSBzb2xjaGVyCkFydGlrZWwgYWJiZXN0ZWxsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdlcnVlY2h0ZWt1ZWNoZSA7KSAoTGVpYmksIDI4LiBOb3YgMjAwMiwgMjI6MTg6NDApOgp4eHggdGVpbHQgRGlyIG1pdDogb2xsaSA9PSBkcm9sbGk/Cnh4eCB0ZWlsdCBEaXIgbWl0OiBoYXR0ZSBlaW5lbiB6dSBndXRlbiBlaW5kcnVjayB2b24gb2xsaSAuLi4gaGFiJyBzY2hvbgp4eHggdGVpbHQgRGlyIG1pdDogYW4gbWlyIGdlendlaWZlbHQgOykKCmxlaWJpIGdyaW5zdCBudXIgbm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZHVoIChQaXRmYWxsLCAyOS4gTm92IDIwMDIsIDEwOjM1OjM1KToKRWluZSBNb29yaHVobnNjaGFyLCBiZXN0ZWhlbmQgYXVzIDQgTW9vcmh1ZWhuZXJuLgpEdSBsYW5kZXN0IHNpY2hlciBhdWYgRGVpbmVuIEZ1ZXNzZW4gdW5kIGJpc3Qgc29mb3J0IGthbXBmYmVyZWl0LgpFaW4gTW9vcmh1aG4gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZWd1bGFyIEV4cHJlc3Npb24/IChHcmltbWJvcm4sIDI5LiBOb3YgMjAwMiwgMTc6MjE6NTApOgp+IyEgcm49SGF0ZSBydD0xMDM4NTg2NTc5IHJnPXB1aXoKfiMhIHRpZD0xMDM4NTg2NTc5CkVpbnMgaXN0IG1hbiBrbGFyOiBJbSAib3duZXIiIEZlbGQgZGVyIERhdGVpYXR0cmlidXRlIGZpbmRldCBtYW4gYmVpIGRpZXNlbQpNYXRjaGVyIGVpbmVuIHppZW1saWNoIGtyYW5rZW4gR2Vpc3QuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVzZXJGcmllbmRseSAoR3JpbW1ib3JuLCAzMC4gTm92IDIwMDIsIDExOjQ5OjQ0KToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTAzODY0ODk4NyByZz13d3cKfiMhIHRpZD0xMDM4NjQ4OTg3CklzIG5pY2ggd2Fociwgd28ga29tbXQgZGVubiBkYXMgaGVyPyBJc3QgamEgZ2FueiB3YXMgbmV1ZXMsIHNlaXQgd2FubiBnaWJ0cwpkYXM/IERlciBpc3QgamEga2xhc3NlLCBzb2xsdGUgbWFuIHVuYmVkaW5ndCBtYWwgYmVrYW5udCBtYWNoZW4sIGtlbm50IGphCmtlaW5lci4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVzZXJGcmllbmRseSAoQ3JvZnQsIDMwLiBOb3YgMjAwMiwgMTE6NTQ6MDEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzg2NTMzODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM4NjQ4OTg3CkpvLiBJc3QgcmljaHRpZyBlcnN0YXVubGljaCB3aWUgc2ljaCBkYXMgZnVlbmYgZ2FuemUgSmFocmUgdm9yIHVucwp2ZXJzdGVja2VuIGtvbm50ZS4gIERhbmtlIGZ1ZXIgZGVuIHdlcnR2b2xsZW4gSGlud2VpcyEKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlZ3VsYXIgRXhwcmVzc2lvbj8gKFBhdHJ5biwgMzAuIE5vdiAyMDAyLCAxMTo1NToyOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzODU4NjkxMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzg1ODY1NzkKYXVzc2VyZGVtIGlzdCBkYXMgdGVpbCB1bWVpbmlnZXMgenUgbGFuZy4uLm5lbiBwYWFyIFtbOnNwYWNlOl1dKyBrYW5uIG1hbgp6dXNhbW1lbmZhc3Nlbi4KCi0tIApwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFJlZ3VsYXIgRXhwcmVzc2lvbj8gKEN1Y2h1bGxpbiwgMzAuIE5vdiAyMDAyLCAxMjowMzo1Nik6Cn4jISBybj1QYXRyeW4gcnQ9MTAzODY1MzcyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzg1ODY1NzkKLi4uIHVudGVyIHdlbGNoZXIgQW5uYWhtZSwgUGF0cnluPyA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFJlZ3VsYXIgRXhwcmVzc2lvbj8gKFBhdHJ5biwgMzAuIE5vdiAyMDAyLCAxMjoxMDo0Nyk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAzODY1NDIzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzg1ODY1NzkKYXJnbC4uLm1pdCB0ZiBrYW5uIGljaCBkYXNsZWlkZXIgbmljaCBlaW5nZWJlbi4uLnp1IGZhdWwgamV0enQgOikKYWxzbyB1bnRlciBrZWluZXIgYW5uYWhtZSwgaWNoIGhhYiBkZW4gc2lubiBkZXIgcmVnZXhwIG5pY2ZodCB3ZWl0ZXIKZ2VkZXV0ZXQsIGFiZXIgb2ZmZW5zaWNodGxpY2gga2FubiBtYW4gNCBtYWwgW1s6c3BlY2U6XV0rIGhpbnRlcgpkaWUgb3B0aW9uc2tsYW1tZXIgcmF1c3ppZWhlbiB1bmQgZXMgd2VyZGVuIDIsIG9obmUgd2FzIHp1YSBlbmRlcm4sCmF1c3NlciBkYXNzIGRpZSBtYXRjaGVzICR4IGtlaW5lIHdoaXRlc3BhY2VzbWVociBlbnRoYWx0ZW4uCnp1bWluZGVzdCB3ZW5uIGljaCBzY2huZWxsIGRydWViZXJzY2hhdS4KCi0tIApwYXRyeW4sIHdlbmlnIG1vdGl2aWVydCB6dSBwYXBpZXIgdW5kIGJsZWlzdGlmdCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUmVndWxhciBFeHByZXNzaW9uPyAoV2hpdGV0aWdlciwgMzAuIE5vdiAyMDAyLCAxMjoxNDo0NSk6Cn4jISBybj1QYXRyeW4gcnQ9MTAzODY1NDY0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzg1ODY1NzkKZGVyIG1hdGNodCBzYWNoZW4gd2llICcgIC0gaGV1dGUgZGllcycgb2RlciAnKm1vcmdlbiBkYXMnIC0tPgp0b2RvLWxpc3Rlbi1laW50cmFlZ2UgOikKV1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBSZWd1bGFyIEV4cHJlc3Npb24/IChQYXRyeW4sIDMwLiBOb3YgMjAwMiwgMTI6MTY6MDEpOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDM4NjU0ODg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzODU4NjU3OQptZWluZSB0b2RvLWxpc3RlbiBzZWhlbiBqZWRlbiB0YWcgYW5kZXJzIGF1cywgZGFyYW4gd3VlcmRlIHNpY2ggZGllCnJlZ2V4cCBkaWUgemFlaG5lIGF1c2JlaXNzZW4gOikKCi0tIApwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRWLVRpcCAoR3JpbW1ib3JuLCAzMC4gTm92IDIwMDIsIDEyOjQwOjQ1KToKSGV1dGUsIDIzOjE1IGF1ZiBXZXN0MzogIk1hc3Nha2VyIGltIE1vcmdlbmdyYXVlbiIgbWl0IEdlb3JnZSBIYW1pbHRvbiwKQ2hhcmxlcyBCcm9uc29uLCBSaWNoYXJkIENoYW1iZXJsYWluIHVuZCBzby4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRWLVRpcCAoTWFuZHJhZ29uLCAzMC4gTm92IDIwMDIsIDEyOjQyOjIyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDM4NjU2NDQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzODY1NjQ0NQpXZXIgaGF0IGRpZSBnZXByb2dndD8KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUVi1UaXAgKEdyaW1tYm9ybiwgMzAuIE5vdiAyMDAyLCAxMjo0Mjo1OCk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTAzODY1NjU0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzg2NTY0NDUKU29ycnksIGRpZXMgaGllciBpc3QgZWluZSBTcGllbGVycnVicmlrLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXZWJwYWdlIHNleGlzdGlzY2ggKE9ya3RvZXRlciwgIDEuIERleiAyMDAyLCAwMDoyNDozNSk6Cn4jISBybj1WZWN0b3IgcnQ9MTAzODY5ODAzMyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAzNzM1OTE0MwpEdSBoYXN0IGRpZSBnZW5kZXJzd2FwcGVySW5uZW4gdmVyZ2Vzc2VuLCBWYWN0b3IuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1vbnRhbnVzLCBiaXR0ZSBpZ25vcmllcmVuIFNpZS4uLiAoUm9uZGEsICAxLiBEZXogMjAwMiwgMDE6MTc6MzYpOgouLi4gZGUuYWx0Lm5ldGRpZ2VzdC4uLgoKRnJvbTogIkNocmlzdGlhbiBILiBLdWhuIiA8cW5vQHFuby5kZT4KTmV3c2dyb3VwczogZGUuYWx0LnN5c2FkbWluLnJlY292ZXJ5ClN1YmplY3Q6IFJlOiBFciBzcHJpY2h0IGF1cyBFcmZhaHJ1bmchCkRhdGU6IEZyaSwgMjkgTm92IDIwMDIgMjM6MDI6MTEgKzAxMDAKTWVzc2FnZS1JRDogPHNscm5hdWZvdjQubmF0LnFub0Bob21lLnFuby5kZT4KCiYgTWFydGluIEhlcm1hbm93c2tpIG9uIEZyaSwgMjkgTm92IDIwMDIgMjI6MTc6MDggKzAxMDA6Cj4gQWxleGFuZGVyIE1hcnF1YXJkdCBpbiBkZS5hbHQuc3lzYWRtaW4ucmVjb3Zlcnkgd3JvdGU6Cj4+IFdlbGNoZXMgd2llZGVydW0gZGVuIEZldWVybG9lc2NoZXIgcmVjaHRmZXJ0aWd0LiBNaXQgZWluZW0gZW50c3RlaGVuZGVuCj4+IFZlcndlcmZ1bmdzZ3JhYmVuIG1pdCA2MDAwIEdyYWQgWmVoIE1hZ21hYXVzc3Rvc3MgaXN0IG5pY2h0IGltbWVyIHp1Cj4+IHNwYXNzZW4uCj4gV2llIHNhZWhlIGRlbm4gZGEgZWluIGFuZ2VtZXNzZW5lciBGZXVlcmxvZXNjaGVyIGF1cz8KCnJvdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNb250YW51cywgYml0dGUgaWdub3JpZXJlbiBTaWUuLi4gKFJvbmRhLCAgMS4gRGV6IDIwMDIsIDAxOjIxOjE4KToKfiMhIHJuPVJvbmRhIHJ0PTEwMzg3MDE4NTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM4NzAxODU2Ci4uLiBkYW1pdCBNb250YW51cyBkZW4gZ2FuemVuIFRocmVhZCBlaW5mYWNoZXIgaWdub3JpZXJlbiBrYW5uLi4uCgpGcm9tOiBUaG9yc3RlbiBOaXR6IDx0bkBpdnUtYWMuZGU+Ck5ld3Nncm91cHM6IGRlLmV0Yy5zcHJhY2hlLmRldXRzY2gKU3ViamVjdDogUmU6IEdlYnJhdWNoc2Fud2Vpc3VuZyBmdWVyIERldXRzY2hsYW5kCkRhdGU6IFdlZCwgMjcgTm92IDIwMDIgMTM6MzQ6NTUgKzAxMDAKTWVzc2FnZS1JRDogPDNERTRCQkVGLjcwNjA4MDRAaXZ1LWFjLmRlPgoKTWF0dGhpYXMgV2Fya3VzIHNjaHJpZWI6Cgo+IEluIGRlbSBMYW5ka3JlaXMsIGF1cyBkZW0gaWNoIHN0YW1tZSwgaGVycnNjaHQga2VpbmVybGVpIFdhaG5zaW5uLgoKLi4uIHVtIHNpY2ggZGFubiBzZWxic3QgenUgd2lkZXJsZWdlbjoKCj4gRXMKPiBnaWJ0IGVpbmUgVG9ubmUgdW5kIGRyZWkgYnVudGUgU2FlY2tlLAogIFsuLi5dCj4gRnVlcgo+IFNvbmRlcm11ZWxsLCBFLVNjaHJvdHQgdW5kIFNwZXJybXVlbGwgZ2lidCBlcyBTYW1tZWxzdGVsbGVuIChzbyB3aWUgZnVlcgo+IEdydWVuc2Nobml0dCkgdW5kIHJlZ2VsbWFlc3NpZ2UgQWJob2x0ZXJtaW5lLCBkaWUgaW4gZWluZW0gZmFyYmVuZnJvaGVuCj4gTW9uYXRzd2FuZGthbGVuZGVyIHN0ZWhlbiwgZGVyIGtvc3RlbmxvcyB1ZWJlcmFsbCBlcmhhZWx0bGljaCBpc3QuIEZ1ZXIKPiBCaW9tdWVsbCwgZGVyIG5pY2h0IGFiZ2VmYWhyZW4gd2lyZCwga29lbm5lbiBiZWkgZGVyIEtyZWlzdmVyd2FsdHVuZwo+IFNjaG5lbGxrb21wb3N0aWVydG9ubmVuIHp1bSBTZWxic3Rrb3N0ZW5wcmVpcyBlcndvcmJlbiB3ZXJkZW4uCgpEaWUgbWVpc3RlIEFyYmVpdCBtYWNoZW4gVGVlYmV1dGVsLiBEYSBaZXR0ZWxjaGVuIGtvbW10IGluIGRpZSBibGF1ZSAKVG9ubmUsIGRpZSBUZWVibGFldHRlciBpbiBkaWUgZ3J1ZW5lIFRvbm5lLCBkaWUgbWFuY2hlcm9ydHMgYnJhdW4gaXN0LCAKb2RlciBpbiBkZW4genVtIFNlbGJzdGtvc3RlbnByZWlzIGVyd29yYmVuZW4gU2NobmVsbGtvbXBvc3RpZXJlciwgZGllIApIZWZ0a2xhbW1lciB3aXJkIG1pdCBkZW0gQXV0byB6dXIgQWx0bWV0YWxsLVNhbW1lbHN0ZWxsZSBnZWZhaHJlbiB1bmQgCmRhcyBGYWVkY2hlbiBrb21tdCBmcmlzY2ggZ2V3YXNjaGVuIGluIGRpZSBBbHRrbGVpZGVyc2FtbWx1bmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1vbnRhbnVzLCBiaXR0ZSBpZ25vcmllcmVuIFNpZS4uLiAoVmFybGFyaW9uLCAgMS4gRGV6IDIwMDIsIDAxOjI2OjUwKToKfiMhIHJuPVJvbmRhIHJ0PTEwMzg3MDIwNzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDM4NzAxODU2CkRhcnVtIGJlbnV0emVuIGF1Y2ggbnVyIEJhbmF1c2VuIFRlZWJldXRlbC4KClZhcmwqLCBzY2htdW56ZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2VicGFnZSBzZXhpc3Rpc2NoIChHcmltbWJvcm4sICAxLiBEZXogMjAwMiwgMTg6MTA6MzMpOgp+IyEgb249Q3JvZnQgb3Q9MTAzODc1NDY0NyBvZz1tZWdhc2NobWFycm4KfiMhIHJuPVBpbGdyaW0gcnQ9MTAzODc1NDU5MiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTAzNzM1OTE0MwpHdXQuICBEYW5uIGhvbCBpY2ggbWlyIGRhcyBtb3JnZW4gbm9jaCBtYWwgLC0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRnVlciBkaWUgRHJhZWNoZWxjaGVuLi4uIChDdWNodWxsaW4sICAyLiBEZXogMjAwMiwgMTQ6MTA6MjEpOgp+IyEgcm49TW9yZ290aCBydD0xMDM4ODM0NTcxIHJnPXd3dwp+IyEgdGlkPTEwMzg4MzE1NDEKSGloaSwgZWluIHJvdGVyIERyYWNoZSBtaXQgWm9lcGZjaGVuLi4uLiA6KQoKClMidS8zISA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEZ1ZXIgZGllIERyYWVjaGVsY2hlbi4uLiAoT3JrdG9ldGVyLCAgMi4gRGV6IDIwMDIsIDE0OjQxOjE1KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTAzODgzNjMyOSByZz13d3cKfiMhIHRpZD0xMDM4ODMxNTQxCjpoYXQgZGVuIGJsdWVzIGZ1ZXIgRWxiaS4uLgoKTmFqYSwgd2VubiBtYW4gc28gYW4gZGllIEZhcmJlbiBkZXIgYW5kZXJlbiBkZW5rdCBkdWVyZnRlIGRhcyBnZXJlY2h0ZmVydGlndApzZWluLi4uCgpPcmtULCBmdWVobHQgc2ljaCBldHdhcyBmYXJibG9zLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRnVlciBkaWUgRHJhZWNoZWxjaGVuLi4uIChIdW1uaSwgIDIuIERleiAyMDAyLCAxNDo0MTozNyk6Cn4jISBvbj1IdW1uaSBvdD0xMDM4ODM2NDg3IG9nPXd3dwp+IyEgcm49S2FyaXMgcnQ9MTAzODgzNjM5MSByZz13d3cKfiMhIHRpZD0xMDM4ODMxNTQxCkljaCBiaW4gZG9jaCBzY2hvbiBhdWYgU2Nod2FyemJpZXIgdW1nZXN0aWVnZW4gKmphbW1lciouIFdhcnVtIGdsYXVidCBtaXIKa2VpbmVyLCBkYXNzIGljaCBlaW4gYm9lc2VyLCBzY2hsaW1tZXIsIHNjaHdhcnplciBEcmFjaGUgYmluPyBLb2VzdHJpdHplciBpc3QKZG9jaCBhdXMgc2Nod2FyemVuIEZsYXNjaGVuLi4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRnVlciBkaWUgRHJhZWNoZWxjaGVuLi4uIChDdWNodWxsaW4sICAyLiBEZXogMjAwMiwgMTY6MTY6MjEpOgp+IyEgcm49SHVtbmkgcnQ9MTAzODgzNjQ5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzg4MzE1NDEKRHUgYmlzdCBzbyBzZWhyIGVpbiBzY2h3YXJ6ZXIgRHJhY2hlIHdpZSBUZWRkeSBlaW4gYm9lc2VyIGJvZXNlciBDaGFvdCBpc3QuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBGdWVyIGRpZSBEcmFlY2hlbGNoZW4uLi4gKE11YWRpYiwgIDIuIERleiAyMDAyLCAxNjoxOToyNSk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAzODg0MjE4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzg4MzE1NDEKZGFzIHdhciBhYmVyIGhhcnQuIGFybWVyIGh1bW5pLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEZ1ZXIgZGllIERyYWVjaGVsY2hlbi4uLiAoQ3VjaHVsbGluLCAgMi4gRGV6IDIwMDIsIDE2OjIwOjM4KToKfiMhIHJuPU11YWRpYiBydD0xMDM4ODQyMzY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzODgzMTU0MQpOYSB1bmQgRHUsIGt1Y2sgbWFsIGluIGRlbiBTcGllZ2VsLiBSb3RlciBEcmFjaGU/IEJ1YiwgRHUgaGFzdCBlaW5lbiAKd2Vpc3NlbiBGbGF1c2NoZWJhcnQsIGVpbmVuIGRpY2tlbiBCYXVjaC4uLiBEdSBoYXN0IHZlcmdlc3NlbiwgRGVpbgpXZWlobmFjaHRzbWFubmtvc3R1ZW0gYXVzenV6aWVoZW4uIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEZ1ZXIgZGllIERyYWVjaGVsY2hlbi4uLiAoQ2FkcmFjaCwgIDIuIERleiAyMDAyLCAxNjoyMTozMyk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAzODg0MjQzOCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzg4MzE1NDEKb2RlciB3aWUgQ3VjaHVsbGluIHNlaW5lIFN1Y2h0IGJlendpbmd0IHVuZCBzZWluZSBVcmxhdWJzYW5rdWVuZGlndW5nIHdpcmtsaWNoCmR1cmNoZ2V6b2dlbiBiZWtvbW10Li4uIDopCgpDYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogRnVlciBkaWUgRHJhZWNoZWxjaGVuLi4uIChDdWNodWxsaW4sICAyLiBEZXogMjAwMiwgMTY6MjI6MjcpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDM4ODQyNDkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzODgzMTU0MQpJY2ggbWFjaCBEaWNoIGRpZXNlcyBKYWhyIG5pY2h0IG1laHIgZnVlciBEZWluZSBncm9zc2UgS2xhcHBlIHVuZCBEZWluZQpVbndpc3NlbmhlaXQgcnVudGVyLiBEYXMgaXN0IGdlbnVnIFVybGF1YiwgZmluZGVzdCBEdSBuaWNodD8gOm8pCgpZVEN1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogRnVlciBkaWUgRHJhZWNoZWxjaGVuLi4uIChNdWFkaWIsICAyLiBEZXogMjAwMiwgMTY6Mjg6MzgpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzg4NDI1NDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM4ODMxNTQxCkhvSG9IbyB3YXMgd3VlbnNjaHN0IER1IGRpciBkZW5uIHp1IFdlaWhuYWNodGVuIHZvbSByb3RlbiBOaWtvbGF1c2lkcmFjaGVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEZ1ZXIgZGllIERyYWVjaGVsY2hlbi4uLiAoRm9vYmFyLCAgMi4gRGV6IDIwMDIsIDE2OjM1OjM5KToKfiMhIHJuPU11YWRpYiBydD0xMDM4ODQyOTE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzODgzMTU0MQpBbHNvLCBpY2ggd3VlbnNjaGUgbWlyIGRhc3MgZGllIExldXRlLCBkaWUgYSkgZGllIG1heC4gWmF1YmVyc3RhYnB1bmt0ZSBwZXIKQnVnIGVyaG9laHQgaGFiZW4gdW5kIGIpIHBlciAiZXJzY2hhZmZlIiBLb21wb25lbnRlbiBrb3BpZXJ0IGhhYmVuIGVuZGxpY2gKYmVzdHJhZnQgd2VyZGVuLgoKR3J1c3MsCgogICBGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEZ1ZXIgZGllIERyYWVjaGVsY2hlbi4uLiAoRGVlcGJsdWUsICAyLiBEZXogMjAwMiwgMjE6MDY6NDQpOgp+IyEgcm49SHVtbmkgcnQ9MTAzODgzNjQ5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzg4MzE1NDEKRGFzIGxpZWd0IGFuIGRlciBCbG9uZGVuIFNlZWxlIGRlcyBLb2VzdHJpdHplci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWlobmFjaHRzbWFya3R0cmVmZmVuIGluIE11ZW5zdGVyIChSb25kYSwgIDMuIERleiAyMDAyLCAxOTozMjoxNik6Cn4jISBybj1BcmVlbGFuaXIgcnQ9MTAzODkwODcwNiByZz10cmVmZmVuCn4jISB0aWQ9MTAzODkwODcwNgpJaHIgTXVlbnN0ZXJhbmVyIGtlbm50IGphIGVjaHQga2VpbmUgR25hZGUhIEVyc3QgZGFzIEpvaG4gRG9lJ3MgUGxlaXRlIG1hY2hlbiwKeCBhbmRlcmUgS25laXBlbiB6dXNhZXR6bGljaCAtIHVuZCBudW4gd29sbHQgSWhyIGRlbiBHbHVlaHdlaW5zdGFuZCB1bmQgZGFzCktpbmRlcmthcnVzc2VsIGF1Y2ggbm9jaCBpbiBkaWUgUGxlaXRlIHN0dWVyemVuPwoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJlc3Qgb2YgbWFpbGluZ2xpc3QgKEdyaW1tYm9ybiwgIDMuIERleiAyMDAyLCAyMjo0MzozMyk6CkRpZXMgaGllciBsaWVmIGF1ZiBlaW5lciBMaW51eC1NYWlsaW5nbGlzdGU6CgpIYWxsbyEgCkljaCBiaW4gZWluIHJpY2h0aWdlciBOZXdiaWUsIHRyb3R6ZGVtIGhhYmUgaWNoIGVzIGdlc2NoYWZmdCBlaW5lbiAKU2VydmVyIGJlaSBtaXIgYXVmenViYXVlbiwgZGVyIGFscyBJbnRlcm5ldC1Sb3V0ZXIgZGllbnQuIEF1Y2ggZGVyIApBcGFjaGUgbGFldWZ0IHd1bmRlcmJhci4gIApOdXIgamV0enQgaGFiZSBpY2ggZWluIFByb2JsZW0uIEljaCB3b2xsdGUsIHdlaWwgaWNoIGVpbmVtIEJlbnV0emVyIApXZWJzcGFjZSBnZWJlbiB3b2xsdGUsIGRpZSBSZWNodGUgc28gZ2VhZW5kZXJ0OiAgCiAKY2htb2Qgby1yd3ggLVIgLyAKIApEYXMgaGF0dGUgc2NobGltbWUgU2FjaGVuIHp1cmZvbGdlLiBFcyBnaW5nIG5pY2h0IG1laHIgdmllbCB1bmQgaWNoIApoYXR0ZSB1ZWJlcmFsbCBQcm9ibGVtZS4gRGEgaWNoIG5pY2h0IHd1c3N0ZSBiZWkgd2VsY2hlbiBEYXRlaWVuIGljaCAKZGllIERhdGVpZW5SZWNodGUgZ2VhZW5kZXJ0IGhhdHRlLCB2ZXJzdWNodGUgaWNoIGVpbjogIAogCmNobW9kIG8rcnd4IC1SIC8gCiAKRGFzIGdhYiBhdWNoIEZlaGxlci4gWnVtIEJlaXNwaWVsIFNTSCBsaWVmIG5pY2h0IG1laHIsIGRhIGJlc3RpbW10ZSAKRGF0ZWllbiBqYSBuaWNodCBhdXNnZWxlc2VuIHdlcmRlbiBkdWVyZmVuIHZvbiBtYW5jaGVuIEJlbnV0emVybi4gIApKZXR6dCB3ZWlzcyBpY2ggbmljaHQgd2llIGljaCBkaWUgUmVjaHRlIHdpZWRlciBhdWYgbm9ybWFsbWFzcyAKenVydWVja3NldHplbiAoZ2lidCBlcyBzb3dhcyB3aWUgZWluICJSZWNodGUtUmVzZXQiPykga2FubiBvZGVyIG9iIG1pciAKbWl0IGVpbmVtIGVpbmZhY2hlbiAiZm9ybWF0IGM6IiBnZWhvbGZlbiBpc3QuICAKIApJY2ggaG9mZmUsIGRhc3MgbWlyIGplbWFuZCBoZWxmZW4ga2Fubi4gCiAKTWl0IGZyZXVuZGxpY2hlbiBHcnVlc3NlbiBbLi4uXQoKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJlc3Qgb2YgbWFpbGluZ2xpc3QgKFBhdHJ5biwgIDMuIERleiAyMDAyLCAyMjo0NjozMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzODk1MTgxMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzg5NTE4MTMKbmF0dWVybGljaCBpc3QgZGFzIGVpbiBiZWRldWVybnN3ZXJ0ZXIgYW5mYWVuZ2VyZmVobGVyIGRlbiBtYW4gbnVyIGVpbm1hbAptYWNodCA7KQpoaW5nZWdlbiBpc3QgZXMgbmljaHQgZ2FueiBzbyBhYndlZ2lnIHdpZSBlcyBzY2hld2ludCwgc3VzZSBoYXQgc28gZWluZQphcnQgcmVjaHRlLXJlc2V0Li4uZWluIHNjcmlwdCwgd2VsY2hlcyBqZSBuYWNoIGFuZ2FiZSB2b24gZGVyIGdld3VlbnNjaHRlbgpzaWNoZXJoZWl0c3N0dWZlIGZ1ZXIgYWxsZSBmaWxlcyBpbSBzdGFuZGFyZC1zdXNlLXN5c3RlbSBkaWUgcmVjaHRlIHNldHp0LgplaWdlbmluc3RhbGxhdGlvbmVuIHNpbmQgbmF0dWVybGljaCBkYXZvbiB1bmFiaGFlbmdpZy4uLmFiZXIgaXJnZW5kd2FzIGlzdApqYSBpbW1lciA7KQoKLS0gCnBhdHJ5bgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQmVzdCBvZiBtYWlsaW5nbGlzdCAoR3JpbW1ib3JuLCAgMy4gRGV6IDIwMDIsIDIyOjQ4OjQ4KToKfiMhIHJuPVBhdHJ5biBydD0xMDM4OTUxOTkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzODk1MTgxMwpFcmlubmVyZSBtaWNoIG5pY2h0IGRhcmFuLCBkaWVzZXIgInJlY2h0ZS1yZXNldCIgaGF0IG1pY2ggbGV0enRlIFdvY2hlIHp3ZWkKU3R1bmRlbiBkZWJ1Z2dpbmcgZ2Vrb3N0ZXQsIHdlaWwgbmFjaCBlaW5lbSBzZWN1cml0eSB1cGRhdGUgKGphamEsIFlPVQplaW5zZXR6ZW4gb2huZSB6dSB3aXNzZW4gd2FzIG1hbiB0dXQuLi4pIHBsb2V0emxpY2ggZGFzIHMtYmluIHZvbiBzdWlkcGVybApmZWhsdGUuIFVuZCBlaW5lbiBUYWcgc3BhZXRlciwgbmFjaGRlbSBpY2ggYWxzbyBhbSBUYWcgdm9yaGVyIG1hc3NpdiBhbiBqZW5lbQpSZWNobmVyIGdlc2NocmF1YnQgaGF0dGUsIFNhY2hlbiBicmFjaGVuLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQmVzdCBvZiBtYWlsaW5nbGlzdCAoR3JpbW1ib3JuLCAgMy4gRGV6IDIwMDIsIDIyOjU0OjI0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDM4OTUyMTI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzODk1MTgxMwpVbmQgZGFzIG11c3MgbmF0dWVybGljaCBzLWJpdCwgbmljaHQgcy1iaW4gaGVpc3Nlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQmVzdCBvZiBtYWlsaW5nbGlzdCAoUGF0cnluLCAgMy4gRGV6IDIwMDIsIDIyOjU1OjIwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDM4OTUyNDY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzODk1MTgxMwpzY2hvbiBrbGFyLi4uYXVmIGplZGVuIGZhbGwgd2Vpc3MgbWFuIG5hY2ggZ2VmdW5kZW5lbSBmZWhsZXIgYmVpIHNvbGNoZW4KZGluZ2VuIGltbWVyIG5pY2h0IHNvIHJlY2h0LCBvYiBtYW4gc2ljaCBmcmV1ZW4gb2RlciBsb3N3ZWluZW4gc29sbC4KZ2VsZXJudCBoYXQgbWFuIGRhbm4gbmljaHQgaW1tZXIgZXR3YXMuLi4KCi0tIApwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwZWxsZmlyZSBpbiBBa3Rpb24gOikgKERhcmt3aW5nLCAgMy4gRGV6IDIwMDIsIDIzOjAxOjAyKToKRGVpbiBCbHV0IGZsaWVzc3Qgd2lsZCB1bmQgdW5ydWhpZyBkdXJjaCBEZWluZSBBZGVybi4KRHUgc3B1ZXJzdCwgRGVpbiBCbHV0c2JydWRlciBTcGVsbGZpcmUgaXN0IGluIE5vdCEgKDcwIExQKQpEZWluIEJsdXQgZmxpZXNzdCB3aWxkIHVuZCB1bnJ1aGlnIGR1cmNoIERlaW5lIEFkZXJuLgpEdSBzcHVlcnN0LCBEZWluIEJsdXRzYnJ1ZGVyIFNwZWxsZmlyZSBpc3QgaW4gTm90ISAoNjAgTFApCkRlaW4gQmx1dCBmbGllc3N0IHdpbGQgdW5kIHVucnVoaWcgZHVyY2ggRGVpbmUgQWRlcm4uCkR1IHNwdWVyc3QsIERlaW4gQmx1dHNicnVkZXIgU3BlbGxmaXJlIGlzdCBpbiBOb3QhICg1MSBMUCkKW01vZXJkZXI6R2Vpc3QgZWluZXMgT2JlcmF1ZnNlaGVyc10gU2Nob24gd2llZGVyIGVpbiBUYWcgdmVyc2F1dCB3ZWdlbgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBPYmVyYXVmc2VoZXJzXSBIYWNoaW1hbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTcGVsbGZpcmUgaW4gQWt0aW9uIDopIChQYXRyeW4sICAzLiBEZXogMjAwMiwgMjM6MDI6NTIpOgp+IyEgcm49RGFya3dpbmcgcnQ9MTAzODk1Mjg2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzg5NTI4NjIKc2Nob24gYmVpIDcwIExQPyBhbHNvIHZvciA1IGJyYXVjaHN0ZSBkb2NoIGdhciBuaWNoIGxvc2JvdHRlbiA6KQoKLS0gCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc28gc2NocmVpYnQgbWFuLi4uIChRaXRlc3MsICAzLiBEZXogMjAwMiwgMjM6MDQ6MjkpOgpubiAKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIFBhdHJ5biBpbiBSdWJyaWsgInNjaG1hcnJuIi4KCi4uLm9kZXIgX2xhZXNzdF8gbWFuIHNvIHNjaHJlaWJlbj8KCi4uLm9kZXIga2FubiBtYW4gUGF0cnluIGZlcm5zdGV1ZXJuPz8/CgpRSSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYWphIChQaXRmYWxsLCAgNC4gRGV6IDIwMDIsIDExOjAzOjA0KToKICBFaW4gRnJvc2NoIHRhZXVzY2h0IGVpbmVuIEFuZ3JpZmYgYW4uCgoKLi4uIGtsZXJpa2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogamFqYSAoQnJvdG5hZWwsICA0LiBEZXogMjAwMiwgMTE6MDM6NDgpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDM4OTk2MTg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzODk5NjE4NApMYXNzIHVucyBhdWNoIHVuc2VyZW4gU3Bhc3MuCgprbGVyaWtlciEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR2x1ZWh3ZWluQEJvbm4gKEN1Y2h1bGxpbiwgIDQuIERleiAyMDAyLCAyMTozMDoyOCk6Cn4jISBybj1DYWRyYWNoIHJ0PTEwMzg5OTgxMjggcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTAzODk1MzM4MQpLYW5uIG1hbiBlaWdlbnRsaWNoIGF1Y2ggR2x1ZWh3ZWluIHp1cnVlY2tnZWhlbiBsYXNzZW4sIHdlbm4gZWluZW0gZGllCkdld3VlcnptaXNjaHVuZyBuaWNodCBzbyAxMDAlaWcgYmVoYWd0PyA7KQoKKnBmZWlmKiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTW9udGFudXMsIGJpdHRlIGlnbm9yaWVyZW4gU2llLi4uIChSb25kYSwgIDUuIERleiAyMDAyLCAwMDowODoxOSk6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTAzODcwMjQxMCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzg3MDE4NTYKS2xhciwgYXVzIGRlciB2b24gTW9udGFudXMgaWdub3JpZXJ0ZW4gTmV3c2dyb3VwOgoKRnJvbTogSm9hY2hpbSBOZW50d2ljaCA8dXNlbmV0QGZlbGluZS5mcmFua2VuLmRlPgpOZXdzZ3JvdXBzOiBkZS5ldGMuZmFocnpldWcuYXV0bwpTdWJqZWN0OiBSZTogQmllcnRyaW5rZW4gYW0gU3RldWVyIHZlcmJvdGVuPwpNZXNzYWdlLUlEOiA8YXNpNTQ1LjNuYy4xQG5ld3MuZmVsaW5lLmZyYW5rZW4uZGU+CgpNb2lhbiBhdWNoLAoKPiBnZXN0ZXJuIGhhYmUgaWNoIGVpbmVuIEZhaHJlciBkZXIgU3RhZHRyZWluaWd1bmcgZ2VzZWhlbiwgZGVyIGJlaW0KPiBGYWhyZW4gYW5zY2hlaW5lbmQgc2Nob24gc2VpbiBGZWllcmFiZW5kYmllciBnZW5vc3NlbiBoYXQuIEVzIHdhcgo+IGJlc3RpbW10IHNlaW4gZXJzdGVyIFNjaGx1Y2sgdW5kIHNlaW4gUHJvbWlsbGdlaGFsdCB3YXIgc2ljaGVyIHVudGVyCj4gMCw1IFByb21pbGxlLiBBbHNvIGhhdCBlciBzaWNoLCB3YXMgZGllIFN0dm8gYmV0cmlmZnQgbmljaHQgc3RyYWZiYXIKPiBnZW1hY2h0LCBvZGVyPyAKCmljaCBmdWVyY2h0ZSBsZWlkZXIgZG9jaC4KCk9obmUgZW50c3ByZWNoZW5kZSBGcmVpdHJpbmtlaW5yaWNodHVuZyBpc3QgZGFzIHp1bWluZGVzdCBlaW4gQnVzc2dlbGQgCndlcnQsIGtvbW10IGVzIGRhYmVpIHp1IGVpbmVtIFVuZmFsbCwga29lbm50ZSBlcyBhdWNoIGVpbiBTdHJhZnRhdGJlc3RhbmQgCnNlaW4uCgpCZXNvbmRlcnMgZGFzIG1hbnVlbGxlIGFibmVobWVuIGRlcyBLcm9ua29ya2VucyBub2V0aWd0IGRlbiBGYWhyZXIgZGF6dSwgCmt1cnplaXRpZyBiZWlkZSBIYWVuZGUgdm9tIFN0ZXVlciB6dSBuZWhtZW4uIE5hdHVlcmxpY2ggdmVyZnVlZ2VuIG1hbmNoZSAKRmFocnpldWdlLCBhdWNoIGltIG9lZmZlbnRsaWNoZW4gRGllbnN0IHVlYmVyIGVpbmUgZW50c3ByZWNoZW5kZSAKRmFocnpldWdhdXN0YXR0dW5nLCBkaWUgZGFzIGdlZmFocmxvcyBlcm1vZWdsaWNodC4gV2FlaHJlbmQgaW4gZXJzdGVyZW4gCnVlYmVyd2llZ2VuZCBkYXMgTW9kZWxsICJLb2xsZWdlIDFhIiB6dW0gRWluc2F0eiBrb21tdCwgZ2lidCBlcyBmdWVyIApQcml2YXRrZnouIGVpbmUgZ2FuemUgUGFsZXR0ZSBuYW1oYWZ0ZXIgSGVyc3RlbGxlciwgZGVyZW4gTW9kZWxsZSB6LkIuIApkaWUgQmV6ZWljaG51bmdlbiAiS3VtcGVsIGJyZWl0IiwgIkZyZXVuZGluIEV4dHJhIiBvZGVyIGF1Y2ggIkVoZWZyYXUgCjEuMCIgdHJhZ2VuLgoKQXVzZ2VyZWlmdCBzaW5kIGRpZXNlIEZyZWl0cmlua3JpY2h0dW5nZW4gYWJlciBub2NoIGxhbmdlIG5pY2h0LCB3aWUgZGllIApTdGlmdHVuZyBXYXJlbnRlc3QgYmVyaWNodGV0ZS4gU28gZnVlaHJ0ZW4gYmVpIGRlbSBNb2RlbGwgIkt1bXBlbCBicmVpdCIgCmdlbGVnZW50bGljaGUgUHJvYmxlbWUgbWl0IGRlciBTcHJhY2hzdGV1ZXJ1bmcgenVyIEFid2VydHVuZywgd2FlaHJlbmQgCmF1c2dlcmVjaG5ldCBkYXMgdGV1ZXJzdGUgR2VyYWV0IGltIFRlc3QsICJFaGVmcmF1IDEuMCIsIG9lZnRlcnMgZ2FueiBkZW4gCkRpZW5zdCB2ZXJ3ZWlnZXJ0ZS4KCldpbGwgbWFuIGRhaGVyIGF1ZiBkZXIgc2ljaGVyZW4gU2VpdGUgc2Vpbiwgc28gcmFldCBkaWUgWmVpdHNjaHJpZnQsIAplbXBmaWVobHQgZXMgc2ljaCBkYXMgRmFocnpldWcgYXVmIGVpbmVuIFBhcmtwbGF0eiB6dSBmYWhyZW4gdW5kIGRhcyAKVHJpbmtnZXJhZXQgbWFudWVsbCB6dSBiZWRpZW5lbi4KClNjaG9lbmVuIERpZW5zdGFnIHdlaXRlcmhpbiwKSm9lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNb250YW51cywgYml0dGUgaWdub3JpZXJlbiBTaWUuLi4gKFJvbmRhLCAgNS4gRGV6IDIwMDIsIDAwOjU5OjM3KToKfiMhIHJuPVJvbmRhIHJ0PTEwMzkwNDMyOTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM4NzAxODU2Ck9rLCB1bmQgd2VpdGVyIGdlaHRzLi4uIE1vbnRhbnVzLCBiaXN0IER1IG5vY2ggZGE/CgpbU3VibWl0dGVyIG5vdGU6IEhMVyA9IEhlcnotTHVuZ2VuLVdpZWRlcmJlbGVidW5nIChSZWFuaW1hdGlvbildCgpTdWJqZWN0OiBSZTogQmVub2V0aWdlIERSSU5HRU5EU1QgTXVzaWsgZnVlciBHcnVwcGVuZHluYW1pc2NoIEhMVwpOZXdzZ3JvdXBzOiBkZS5ldGMubm90ZmFsbHJldHR1bmcKRGF0ZTogTW9uLCAwMiBEZWMgMjAwMiAyMTo0MjozNSArMDAwMApGcm9tOiBSb2xmIEt1ZW5uZSA8Y2VsZWJvcm5AZ214LmRlPgpNZXNzYWdlLUlkOiA8M2RlY2QzODUuNzU3MTY2NDNAYXJ3ZW4udHVydGxlLmRkbnMub3JnPgoKIkFuZHJlYXMgSG9lZmZlIiA8YWhvZWZmZUB0LW9ubGluZS5kZT4gd3JvdGU6Cgo+IGljaCBiZW5vZXRpZ2UgZHJpbmdlbmRzdCBNdXNpayBmdWVyIGRpZSBHcnVwcGVuZHluYW1pc2NoZSBITFcuIEhhYmUKPiBkdW1tZXJ3ZWlzZSBzb3dvaGwgbWVpbmUgQ0QgdmVybGVndCwgYWxzIGF1Y2ggbWVpbmUgTVAzcyBnZWxvZXNjaHQuCj4gTXVzcyBqZWRvY2gga3VyemZyaXN0aWcgbW9yZ2VuIGZ1ZXIgKFNvbm50YWcgMS8xMi8wMikgZnVlciBlaW5lbgo+IEtvbGxlZ2VuIGVpbnNwcmluZ2VuLiBLYW5uIG1pciBpcmdlbmQgamVtYW5kIGVpbiBvZGVyIG1laHJlcmUgU3R1ZWNrZQo+IHBlciBNYWlsLUFuaGFuZyB6dWtvbW1lbiBsYXNzZW4/CgpJY2ggd2Vpc3MsIGljaCBiaW4gZWluIHdlbmlnIHNwYWV0IGRyYW4gZnVlciBkZWluZSBWZXJhbnN0YWx0dW5nLCBhYmVyCmhhYmUgaWNoIGRpY2ggcmljaHRpZyB2ZXJzdGFuZGVuLCBkYXNzIGR1IG5pY2h0IHNvIGdlbmF1IHdlaXNzdCwgd2VsY2hlCk11c2lrIGR1IGRlbSBnZW5laWd0ZW4gUHVibGlrdW0gYW0gYmVzdGVuIHZvcnNwaWVsZW4gc29sbHN0PyBOYWNoCmt1cnplbSBVZWJlcmxlZ2VuIGhhZXR0ZSBpY2ggZGEgZWluIHBhYXIgSWRlZW4gZnVlciBlaW5lbiBuZXR0ZW4ga2xlaW5lbgpSZWFuaW1hdGlvbnMtU2FtcGxlciAoZnVlcidzIG5hZWNoc3RlbWFsKSwgYmVzb3JnZW4gbXVlc3N0ZXN0IGR1IGRpciBkaWUKU3R1ZWNrZSBhYmVyIHNlbGJzdC4KCkFscyBBdWZtdW50ZXJ1bmcgdW5kIEVybXV0aWd1bmcgZnVlciBkZW4gUGF0aWVudGVuOgoKRC5KLiBCb0JvIC0tICJLZWVwIG9uIERhbmNpbmciCktvb2wgJiBUaGUgR2FuZyAtLSAiU3RhbmQgdXAgYW5kIFNpbmciCkZlYXJnYWwgU2hhcmtleSAtLSAiQSBHb29kIEhlYXJ0IgpDb21tdW5hcmRzIC0tICJEb24ndCBMZWF2ZSBNZSBUaGlzIFdheSIKTWlkbmlnaHQgU3RhciAtLSAiQ2FuJ3QgR2l2ZSBZb3UgdXAiCkRvdWJsZSBZb3UgLS0gIlBsZWFzZSBEb24ndCBHbyIKWWF6b28gLS0gIkRvbid0IEdvIgoKQWxzIEhpbGZlc2NocmVpIGRlciBCZXRyb2ZmZW5lbjoKCkJvbGxhbmQgLS0gIkhlYXZlbiBDYW4gV2FpdCIKZnJvbSBDaGVzcyAtLSAiSGVhdmVuIEhlbHAgTXkgSGVhcnQiClNoYW5ub24gLS0gIkdpdmUgTWUgVG9uaWdodCIKUmVhbCBMaWZlIC0tICJTZW5kIE1lIGFuIEFuZ2VsIgpHbG9yaWEgR2F5bm9yIC0tICJOZXZlciBDYW4gU2F5IEdvb2RieWUiCk9uZSBXYXkgLS0gIkRvbid0IFN0b3AiCgpCZXp1ZyBuZWhtZW5kIGF1ZiBkaWUgcGh5c2lrYWxpc2NoZW4gQWJsYWV1ZmU6CgpTaGFrYXRhayAtLSAiRG93biBvbiB0aGUgU3RyZWV0IgpDbHViIE5vdXZlYXUgLS0gIkxlYW4gb24gTWUiCkNhcnRvdWNoZSAtLSAiRmVlbCB0aGUgR3Jvb3ZlIgpUZWNobm90cm9uaWMgLS0gIlB1bXAgdXAgdGhlIEphbSIKU2EtRmlyZSAtLSAiRG9uJ3QgQnJlYWsgTXkgSGVhcnQiClRoZSBQb3dlciBTdGF0aW9uIC0tICJTb21lIExpa2UgaXQgSG90IgoKQWxzIGtsZWluZW4gSGlud2VpcyBmdWVyIFBhdGllbnRlbiB1bmQgQW5nZWhvZXJpZ2UsIHdpZSBkaWUgU2FjaGUgd29obAphdXNnZWhlbiB3aXJkOgoKUXVlZW4gLS0gIldobyBXYW50cyB0byBMaXZlIEZvcmV2ZXI/IgpUYWxraW5nIEhlYWRzIC0tICJSb2FkIHRvIE5vd2hlcmUiCkxpdmluZyBpbiBhIEJveCAtLSAiTGl2aW5nIGluIGEgQm94IgpDZSBDZSBQZW5pc3RvbiAtLSAiRmluYWxseSIKVGhlIERvb3JzIC0tICJUaGUgRW5kIgoKRGVuIHJlbGlnaW9lc2VuIEFzcGVrdCBiZXRvbmVuZDoKCk1pa2kgTWlzc2lvbiAtLSAiT25lIFN0ZXAgdG8gSGVhdmVuIgpEci4gQWxiYW4gLS0gIlNpbmcgSGFsbGVsdWphaCEiCkFDL0RDIC0tICJIaWdod2F5IHRvIEhlbGwiClJ1biBETUMgLS0gIlJhaXNpbmcgSGVsbCIKCkd1dGVzIEdlbGluZ2VuLApSb2xmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbGFsYWxhIChDdWNodWxsaW4sICA1LiBEZXogMjAwMiwgMDI6MDQ6MDApOgp+IyEgcm49UGF0cnluIHJ0PTEwMzkwNTAxOTYgcmc9ZC52bGFuZAp+IyEgdGlkPTEwMzkwNTAxOTYKRGFzIFN1YmplY3QgaXN0IGZ1ZXIgZWluIFJlXjIwMDAwIHByYWVkZXN0aW5pZXJ0LiBXb2xsZW4gd2lyPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBsYWxhbGEgKFBhdHJ5biwgIDUuIERleiAyMDAyLCAwMjozMDowNyk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAzOTA1MDI0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzkwNTAxOTYKd2FydW0gc29sbHRlIGVzIDopCmljaCBoYWIgaWhuIGF1Zmdld2VydGV0IHVuZCBiYXN0YSBpc3QgZGFzLgp3ZXIgZGFtaXQgbmljaHQgenVyZWNodGtvbW10LCBkZXIgZ2VoZSB3b2FuZGVycyBoaW4uCmhhdXB0YW5sYXNzIHdhciBkZXIgc3RvcC10cmljaywgZGVyIGltbWVyIG1laHIgZGllIHJ1bmRlIG1hY2h0LApzZWt1bmRhZXJncnVuZCB3YXJlbiB0b2Rlc3N0b3NzZW5kZSB6d2VpdGllcy4KCi0tIApwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGxhbGFsYSAoQ3VjaHVsbGluLCAgNS4gRGV6IDIwMDIsIDAyOjMyOjE1KToKfiMhIHJuPVBhdHJ5biBydD0xMDM5MDUxODA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzOTA1MDE5NgpEYXMgU3ViamVjdC4gTmljaHQgZGVyIENvbnRlbnQuIE5pbW0gZG9jaCBuaWNodCBhbGxlcyBnbGVpY2gKcGVyc29lbmxpY2gsIE1hbm4uIFNjaGxpbW0gbWl0IERpciwgd2lya2xpY2guIEFsc28gS2xhcnRleHQ6CktlaW5lIFNlbGJzdHJlcGxpZXMsIGtlaW4gVmVyYWVuZGVybiBkZXMgU3ViamVjdHMsIGtlaW4gV2VjaHNlbG4KZGVyIFJ1YnJpaywga2VpbiBBbmhhbHRlbiB2b3IgUmVeMjAwMDAuIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogbGFsYWxhIChQYXRyeW4sICA1LiBEZXogMjAwMiwgMDI6MzM6NTMpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzkwNTE5MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MDUwMTk2CmljaCBoYWIgaGllciBnYXIgbml4IHBlcnNvZW5saWNoIGdlc2VoZW4gc29uZGVybiBnZXNhZ3Qgd2llIGVzIGlzdC4uLndlbm4KZXMgbmljaHQgYXVmcyBzdWJqZWN0IGJlem9nZW4gd2FlcmUuCmljaCBoYWIgamEgbmljaCB2ZXJzdWNodCBpcmdlbmR3YXMgaGVydW16ZXRlcm5kIHp1IGJlZ3J1ZW5kZW4sIHNvbmRlcm4KZWluZmFjaCBudXIgYXVmIHdpbGxrdWVyIHZlcndpZXNlbi4KCi0tIApwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGxhbGFsYSAoQ3VjaHVsbGluLCAgNS4gRGV6IDIwMDIsIDAyOjM0OjM5KToKfiMhIHJuPVBhdHJ5biBydD0xMDM5MDUyMDMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzOTA1MDE5NgpKZXR6dCB3byBEdSBlcyBzYWdzdDogQW50d29ydCBuYXR1ZXJsaWNoIGltbWVyIG51ciBhdWYgZGVuIGxldHp0ZW4KQXJ0aWtlbCBpbSBUaHJlYWQuIE5pY2h0IFdJTExLVUVSbGljaCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGxhbGFsYSAoRm9vYmFyLCAgNS4gRGV6IDIwMDIsIDE4OjI5OjIzKToKfiMhIHJuPVBhdHJ5biBydD0xMDM5MDUxODA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzOTA1MDE5NgpJY2ggZnJhZ2UgbWljaCBqYSwgd2FzIGVzIHVlYmVyIGRpZSBLYW1wZmtyYWZ0IGRlciBaYXViZXJlciBhdXNzYWd0LCB3ZW5uCnNlbGJzdCBkZXIgR2lsZGVubWFnaWVyIGRlciBNZWludW5nIGlzdCwgU2tpbGxzIHVuZCBTcGVsbHMgc2VpbmVyIGVpZ2VuZW4KR2lsZGUgYmVpIHNlaW5lbiBOUEMgc3BlcnJlbiB6dSBtdWVzc2VuLgoKR3J1c3MsCgogICBGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGxhbGFsYSAoUGF0cnluLCAgNS4gRGV6IDIwMDIsIDE4OjMzOjIwKToKfiMhIHJuPUZvb2JhciBydD0xMDM5MTA5MzYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzOTA1MDE5NgppY2ggZnJhZyBtaWNoIGVoZXIsIHdhcnVtIGR1IG1pciBhdWYgZGllIG51c3MgZ2VoZW4gbXVzc3QuCmRlciBucGMgZW50aGFlbHQga2VpbmVybGVpIGdpbGRlbnNwZXppZmlzY2hlbiBjb2RlLgoKLS0gCnBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogbGFsYWxhIChGb29iYXIsICA1LiBEZXogMjAwMiwgMTg6MzQ6MzgpOgp+IyEgcm49UGF0cnluIHJ0PTEwMzkxMDk2MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MDUwMTk2Ck9rLCBkYW5uIGZhZW5ndCBoYWx0IGRlciBSYXVtICJ0ZWxlcG9ydCIgYWIuCgpBYmVyIHdlciBpZ25vcmllcnQgZGVuIFNjaGF0dGVua2FlbXBmZXI/IDpvKQoKR3J1c3MsCgogICBGb29iYXIKClBTOiBVbmQgd2llZGVyIGVpbm1hbCB6ZWlndCBzaWNoIGRhc3MgRGVpbiBTcHJ1Y2ggbWl0IGRlbiBnZXRyb2ZmZW5lbiBIdW5kZW4sCndlbGNoZSBiZWxsZW4sIGF1ZiBEaWNoIHNlbGJzdCBhbSBiZXN0ZW4genV0cmlmZnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBsYWxhbGEgKFBhdHJ5biwgIDUuIERleiAyMDAyLCAxODozNjoxNik6Cn4jISBybj1Gb29iYXIgcnQ9MTAzOTEwOTY3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzkwNTAxOTYKYWggZG9jaCwgdGVsZXBvcnQgaXN0IGRyaW4sIHN0aW1tdC4uLnZvciB4IGphaHJlbiBtYWwgZWluZ2ViYXV0IGFscwpzcGV6aWVsbGVzIGdpbW1pY2sgZG9ydC4KaWNoIGJpbiBzbyBzY2hsZWNodC4KCi0tIApwYXRyeW4KClBTOiBzY2hhdHRlbmthZW1wZmVyIGplZG9jaCBpc3QgbmljaCBzcGV6aWZpc2NoLCBuaWNodC1pbnRlcmFjdGl2ZSBoYWx0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBsYWxhbGEgKEZvb2JhciwgIDUuIERleiAyMDAyLCAxODozODozMyk6Cn4jISBybj1QYXRyeW4gcnQ9MTAzOTEwOTc3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzkwNTAxOTYKQWxzbyBzaW5kIGRhIGpldHp0IGF1Y2ggZGllIERhZW1vbmVuIGRlciBDaGFvdGVuIHNvd2llIGRhcyBFaW5ob3JuIHVuZCBkaXYuCmFuZGVyZXMgWmV1Z3MgbnV0emxvcy4gOm8pCgpEYXMgaXN0IG51biBpbiBkZXIgVGF0IG5pY2h0IGdpbGRlbnNwZXppZmlzY2gsIGRhIG11c3MgaWNoIERpciByZWNodCBnZWJlbiA6bykKCkdydXNzLAoKICAgRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJZGxldm9sayA6KSAoTGlhcmEsICA2LiBEZXogMjAwMiwgMDA6MDY6MTYpOgpTdHJvaGFsbSBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogQmxpZXNlbiAoU2FhcmxhbmQpICh1ZWJlciBULU9ubGluZSkuClBhc3NpdiBzZWl0OiAwNjowODozMApFaW5nZWxvZ2d0IHNlaXQ6IERvbiwgIDUuIERleiAyMDAyLCAxNzo1NDoxNgpWb2xsZXIgTmFtZTogTG9yZCBIYWVsbWNoZW4gU3Ryb2hhbG0gbWFnIHZpYnJpZXJlbmRlIFBpbmd1aW5lClJhc3NlOiBFbGYsICBHaWxkZTogWmF1YmVyZXIgKFp3ZWlnIEhlbGxzaWNodCksICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKQWx0ZXI6IDI5MWQgMTc6Mjk6NDYsICAgU3BpZWxlcmxldmVsOiAxMDAgKFNlaGVyKSwgICBHaWxkZW5sZXZlbDogOQpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBEaWUsIDE1LiBEZXogMTk5OCwgMjA6MDU6NDEKRS1NYWlsLUFkcmVzc2U6IGtpbmdwaW5reUBnbXguZGUKSG9tZXBhZ2U6IGh0dHA6Ly93d3cuaW1hZ2luZXRpb24uZGUva2luZ3Bpbmt5LwpJQ1E6IDc2ODU4OTMKVmVyaGVpcmF0ZXQgbWl0OiBHaXRhcnJlCnouWi4gYWJ3ZXNlbmQsIEdydW5kICA6IGhhbGJpZGxlCkJpc2hlciBiZXJlaXRzIDEyMSBtYWwgZ2VzdG9yYmVuClByb2pla3Q6IFdlbmlnZXIgaWRsZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJZGxldm9sayA6KSAoQmFtYmksICA2LiBEZXogMjAwMiwgMTE6MDI6MDUpOgp+IyEgcm49TGlhcmEgcnQ9MTAzOTEyOTU3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzkxMjk1NzYKT2ggbWVpbiBKb2YhIEF1cyBkZW0gU0FBUkxBTkQ/Pz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqa3JlaXNjaCogKEFudGhlYSwgIDYuIERleiAyMDAyLCAxMjo0MDowOCk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTAzOTE3NDIyNyByZz13d3cKfiMhIHRpZD0xMDM5MTc0MjI3CkhtLi4uIGRhcyBpc3QgbmUgSWRlZS4uLiB2aWVsbGVpY2h0IGthbm4gaWNoIHNvIGF1Y2ggbm9jaCBlaW4gcGFhciBhbHRlIFNvY2tlbgpsb3N3ZXJkZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWRsZXZvbGsgOikgKExlaWJpLCAgNi4gRGV6IDIwMDIsIDE2OjA4OjQ4KToKfiMhIHJuPUxpYXJhIHJ0PTEwMzkxMjk1NzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MTI5NTc2CndhcyB3aWxsc3RlIHZvbiBlaW5lbSBzYWFybGFlbmRlciBtZWhyIGVyd2FydGVuICpnKgoKbGVpYmkgLSBwZmFlbHplcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BpZWxlcnZvcnNjaGxhZWdlIChNaXJpbCwgIDYuIERleiAyMDAyLCAxNzo1MjozNCk6CltNYWdpZXI6VmFuaW9uXSBBYmVyIG1hbCB3YXMgYW5kZXJlczogV2FzIGVzcyBpY2ggaGV1dCB6dW0gQWJlbmRicm90PwpDdXhlbCBydWZ0OiBNYWhhcmV0IQoKTWlyaWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUYWV0YWV0ZXJhZXRhZWVlZWVlZWUgKEN1Y2h1bGxpbiwgIDYuIERleiAyMDAyLCAxODowMjo1MCk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTAzOTE5MjU2NCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwMzkxOTI1NjQKTWljaCBoYXQgZGllc2VzIE9mZmVuc2l2cmVjcnVpdGluZyBzY2hvbiBSTCBzZWhyIGdlbmVydnQuLi4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptdWFoYWhhIChEYXJrd2luZywgIDYuIERleiAyMDAyLCAyMjowODo1NCk6CkRlaW5lIEZyZXVuZGluIEFzdWthIHRlaWx0IERpciBtaXQ6IGljaCBoYWIgYW5nZWZhbmdlbiBtaXIgZWluIGJvZXNlcyBJbWFnZQpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiBhdWZ6dWJhdWVuIDopCgouLi4KRGVpbmUgRnJldW5kaW4gQXN1a2EgdGVpbHQgRGlyIG1pdDogd2lsbCBuaWNodCBtYWwgd2VyIHdhcyB6dW0gZm9yc2NoZW4KRGVpbmUgRnJldW5kaW4gQXN1a2EgdGVpbHQgRGlyIG1pdDogYW5zY2hsaWVzc2VuPwoKaG0uLiBzbyB3aXJkIGRhcyBuaXggOj4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLaW5vIFN0dXR1dHV0dXRnYXJ0IChSb25kYSwgIDYuIERleiAyMDAyLCAyMzozODo0MSk6Cn4jISBybj1Bbm9yaXMgcnQ9MTAzOTIwMzIxMCByZz10cmVmZmVuCn4jISB0aWQ9MTAzOTIwMzIxMApBdSBNYW5uLiBNdWRkZXIgc2luZCB2ZXJydWVja3QgOy0pIElociBiZXNjaGxpZXNzdCBhbHNvIHVtIGhhbGIgbmV1biBBYmVuZHMgaW4KU3R1dHRnYXJ0IGlucyBLaW5vIHp1IGdlaGVuLiBVbmQgZ2VidCBkYWZ1ZXIgZWluZSBzY2h3ZWl6ZXIgTW9iaWxmdW5rbnVtbWVyCmFuLiBEYSB3dWVyZGVuIEVDSFRFIFN0dXR0Z2FydGVyIG5pZSBhbnJ1ZmVuLCB3ZWlscyB2aWVsIHp1IHRldWVyIGlzdC4gVW5kIGRpZQpOaWNodC1TY2h3YWJlbiBzaW5kIHp1IHdlaXQgdm9uIGRlbiBTdHV0dGdhcnRlciBLaW5vcyB3ZWcuCgpSb25kYSAqd2FyIGRlc3dlZ2VuIGluIEZyYW5rZnVydCBpbSBLaW5vLiAwMDcuIEdlaHQgc28uKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLaW5vIFN0dXR1dHV0dXRnYXJ0IChDdWNodWxsaW4sICA3LiBEZXogMjAwMiwgMDA6Mjk6NTApOgp+IyEgcm49Um9uZGEgcnQ9MTAzOTIxNDMyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzkyMDMyMTAKQW4gZWNoZHIgU2NoZHVhZ2FkYSBkYWVkIG5vIGRpZSBpbmRlcm5hZHNpb25hbGUgRm9taWRkbHVuZyBvaHJ1ZmEgb25kIGFuCkVyci1Hc2NoYnJhZWNoIG9obWVsZGEuIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS2lubyBTdHV0dXR1dHV0Z2FydCAoTXVwZmVsLCAgNy4gRGV6IDIwMDIsIDAwOjM5OjI3KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDM5MjE3MzkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzOTIwMzIxMAouLi51bmQgamV0enQgc3RlbGxlbiB3aXIgdW5zIGVpbiBHZWJpZXQgdm9yLCB3byBhbGxlIE5QQ3Mgc28gcmVkZW4uLi4gYmVzc2VyCm5pY2h0IDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS2lubyBTdHV0dXR1dHV0Z2FydCAoR3JpbW1ib3JuLCAgNy4gRGV6IDIwMDIsIDAwOjQxOjUzKToKfiMhIHJuPU11cGZlbCBydD0xMDM5MjE3OTY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzOTIwMzIxMApEdSBoYXN0IGd1dCBsYWNoZW4uIEljaCB3YXIgZGEuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEtpbm8gU3R1dHV0dXR1dGdhcnQgKFBpdGZhbGwsICA3LiBEZXogMjAwMiwgMDA6NDI6MzkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzkyMTgxMTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MjAzMjEwCnVuZCBzZWl0ZGVtIHJlZGVuIGRpZSBzbz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEtpbm8gU3R1dHV0dXR1dGdhcnQgKFJvbmRhLCAgNy4gRGV6IDIwMDIsIDAwOjQyOjUxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDM5MjE4MTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzOTIwMzIxMAouLi4gdW5kIHNlaXRkZW0gcmVkZW4gZGllIFNjaHdhYmVuIHNvIGtvbWlzY2gsIEdyaW1tYm9ybj8KClJvbmRhICp0cmF1dCBHcmltbWJvcm4gYWxsZXMgenUqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBLaW5vIFN0dXR1dHV0dXRnYXJ0IChNdXBmZWwsICA3LiBEZXogMjAwMiwgMDA6NDM6MTQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzkyMTgxMTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MjAzMjEwCkljaCB3YXIgYXVjaCBzY2hvbiBkYS4gVW5kIG1laW5lIEZyZXVuZGluIGhhdCBkYSBzb2dhciBnZWFyYmVpdGV0IC0gdW5kIGVzCnVlYmVyc3RhbmRlbiBvaG5lIGdyb2Vzc2VyZSBTY2hhZWRlbi4uLgoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEtpbm8gU3R1dHV0dXR1dGdhcnQgKEdyaW1tYm9ybiwgIDcuIERleiAyMDAyLCAwMDo0Mzo0MCk6Cn4jISBybj1NdXBmZWwgcnQ9MTAzOTIxODE5NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzkyMDMyMTAKSG1tLCBsYXNzIG1pY2ggbmFjaGRlbmtlbi4gRGVpbmUgRnJldW5kaW4gaXN0IGRpZSBtaXQgZGVuIEtydWVja2VuLCByaWNodGlnPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBLaW5vIFN0dXR1dHV0dXRnYXJ0IChNdXBmZWwsICA3LiBEZXogMjAwMiwgMDA6NDU6MjIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzkyMTgyMjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MjAzMjEwCkRyaWUgS3J1ZWNrZW4gaGF0IHNpZSBhYmVyIG5pY2h0IGFuIE9ocmVuIG9kZXIgS29wZi4uLi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBLaW5vIFN0dXR1dHV0dXRnYXJ0IChXaWxsb3csICA3LiBEZXogMjAwMiwgMDA6NDU6NDQpOgp+IyEgcm49TXVwZmVsIHJ0PTEwMzkyMTgzMjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MjAzMjEwCmFlaCwgdmVyc3RlaHN0IGR1IHNpZSBkZW5uIG5vY2g/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBLaW5vIFN0dXR1dHV0dXRnYXJ0IChNYWhhcmV0LCAgNy4gRGV6IDIwMDIsIDAwOjQ2OjEyKToKfiMhIHJuPVdpbGxvdyBydD0xMDM5MjE4MzQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzOTIwMzIxMApvZGVyIGplbWFscz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBLaW5vIFN0dXR1dHV0dXRnYXJ0IChXaWxsb3csICA3LiBEZXogMjAwMiwgMDA6NDY6NDIpOgp+IyEgcm49TWFoYXJldCBydD0xMDM5MjE4MzcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzOTIwMzIxMApXaWxsb3cgZGVua3Q6IC4gbyBPIChGcmF1ZW4uLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogS2lubyBTdHV0dXR1dHV0Z2FydCAoTWFoYXJldCwgIDcuIERleiAyMDAyLCAwMDo0NzowMCk6Cn4jISBybj1XaWxsb3cgcnQ9MTAzOTIxODQwMiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzkyMDMyMTAKRGVua3N0IGR1IGplbWFscyBhbiB3YXMgYW5kZXJlcz8gCm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogS2lubyBTdHV0dXR1dHV0Z2FydCAoUGl0ZmFsbCwgIDcuIERleiAyMDAyLCAwMDo0NzoyNik6Cn4jISBybj1NYWhhcmV0IHJ0PTEwMzkyMTg0MjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MjAzMjEwCmFuIGVzc2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogS2lubyBTdHV0dXR1dHV0Z2FydCAoV2lsbG93LCAgNy4gRGV6IDIwMDIsIDAwOjQ3OjQ0KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAzOTIxODQ0NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzkyMDMyMTAKb2RlciB0cmlua2VuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogS2lubyBTdHV0dXR1dHV0Z2FydCAoTXVwZmVsLCAgNy4gRGV6IDIwMDIsIDAwOjQ3OjU2KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTAzOTIxODQ0NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzkyMDMyMTAKb2RlciBib3R0cm9wCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEtpbm8gU3R1dHV0dXR1dGdhcnQgKFdpbGxvdywgIDcuIERleiAyMDAyLCAwMDo0ODowOCk6Cn4jISBybj1NdXBmZWwgcnQ9MTAzOTIxODQ3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzkyMDMyMTAKKnd1ZXJnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEtpbm8gU3R1dHV0dXR1dGdhcnQgKEN1Y2h1bGxpbiwgIDcuIERleiAyMDAyLCAwMDo0ODoxNCk6Cn4jISBybj1XaWxsb3cgcnQ9MTAzOTIxODQ4OCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzkyMDMyMTAKV2FzIGdpYnQgZXMgYmVpIFJlXjEwMD8gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogS2lubyBTdHV0dXR1dHV0Z2FydCAoTWFoYXJldCwgIDcuIERleiAyMDAyLCAwMDo0ODoxNik6Cn4jISBybj1NdXBmZWwgcnQ9MTAzOTIxODQ3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzkyMDMyMTAKb2RlciBLbGltYSBTY2h1dHoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBLaW5vIFN0dXR1dHV0dXRnYXJ0IChNdXBmZWwsICA3LiBEZXogMjAwMiwgMDA6NDk6MDApOgp+IyEgcm49TWFoYXJldCBydD0xMDM5MjE4NDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzOTIwMzIxMApGdWVyIFJlXjEwMCA/IG5lbiBmZXVjaHRlbiBoYWVuZGVkcnVjawoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBLaW5vIFN0dXR1dHV0dXRnYXJ0IChXaWxsb3csICA3LiBEZXogMjAwMiwgMDA6NDk6MTApOgp+IyEgcm49TXVwZmVsIHJ0PTEwMzkyMTg1NDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MjAzMjEwCmNvb2wuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmR1aCAoRGFya3dpbmcsICA3LiBEZXogMjAwMiwgMDI6NDY6MjQpOgpVbmFzYWkgc2FndDogd2FydGUKVW5hc2FpIHNwcmluZyBpbiBkZW4gVGFsa2Vzc2VsIGhpbmFiIQoKRGFya3dpbmcsIHdhcnRldCBkYW5uIG1hbCA6PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEtpbm8gU3R1dHV0dXR1dGdhcnQgKFJvY2h1cywgIDcuIERleiAyMDAyLCAxMzozNToyNSk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwMzkyMTg0OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MjAzMjEwCktsaW1hc2NodXR6IGlzdCBnZWlsIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEtpbm8gU3R1dHV0dXR1dGdhcnQgKExlaWJpLCAgNy4gRGV6IDIwMDIsIDE0OjM1OjIxKToKfiMhIHJuPVJvbmRhIHJ0PTEwMzkyMTQzMjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MjAzMjEwCmJpbiB6d2FyIGtlaW4gc2Nod2FiZSwgYWJlciBpY2ggZ2V3b2VobmUgbWljaCBhbiBkaWUgc2l0dGVuIGhpZXIgdW5kIHNjaHJlaWIKbmUgc21zLiBEYSBhbm9yaXMgZWNodGVyIHNjaHdlaXplciBpc3QsIHJ1ZnQgZXIgbWljaCBkYW5uIG5hdHVlcmxpY2ggenVydWVjay4KdWVicmlnZW5zIHdhciAwMDcgYmVzc2VyIGFscyA0IGZlZGVybiwgYWJlciBuaWNodCB2aWVsLgoKbGVpYmkgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZmx1ZXN0ZXJsZWlzZXJlY2huZXJzdWNoZSAoTGlhcmEsICA3LiBEZXogMjAwMiwgMTc6MzM6NTQpOgp+IyEgcm49R29yb2cgcnQ9MTAzOTIxMTczMCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDM5MjExNzMwCklzdCBlcyBkYSBzbyBydWhpZywgd28gZHUgamV0enQgd29obnN0PyA7KQoKR3J1ZXNzZSwgTGlhcmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZmx1ZXN0ZXJsZWlzZXJlY2huZXJzdWNoZSAoTXVwZmVsLCAgNy4gRGV6IDIwMDIsIDE3OjU5OjI4KToKfiMhIHJuPUxpYXJhIHJ0PTEwMzkyNzg4MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MjExNzMwCldlbm4gbWFuIHNlaW5lbiBSZWNobmVyIGFscyBNdXNpa2JveCBudXR6dCwga29tbXRzIG5pY2h0IHNvIGd1dCwgd2VubiBsZWlzZQpQYXNzYWdlbiBpbiBkZXIgTXVzaWsgdm9tIFJlY2huZXJsYWVybSB1ZWJlcnRvZW50IHdlcmRlbi4uLiAobnVyIG1hbCBzbyBhbHMKQmVzaXBlbCB3YXJ1bSBsZWlzZSBSZWNobmVyIGJlc3NlciBzaW5kIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa29uZG9tZSAoSHVtbmksICA3LiBEZXogMjAwMiwgMTk6Mzk6MTIpOgpzY2h1ZXR6ZW4gYW0gd29jaGVuZW5kZSBnYXIgbmljaHQhCgooSW5zaWRlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmh1bW5pIChWYW5pb24sICA3LiBEZXogMjAwMiwgMTk6NDA6MDApOgpzY2htYXJybnQgYW0gV29jaGVuZWRlIGdhciBuaWNodC4KCihMdWVnZSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBmbHVlc3RlcmxlaXNlcmVjaG5lcnN1Y2hlIChCb2luZywgIDguIERleiAyMDAyLCAxNDowNjo1Mik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTAzOTIxMTc4OCBvZz1oYXJkc29mdHdhcmUKfiMhIHJuPUdvcm9nIHJ0PTEwMzkyMTE3MzAgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTAzOTIxMTczMApFcyBnaWJ0IGJlaSBkZW4gbWVpc3RlbiBSZWNobmVyIHZvcm5lIGFtIEdlcmFldCBlaW5lbiBldHdhcyBncm9lc3NlcmVuIEtub3BmLAp3ZW5uIG1hbiBkYSBkcmF1ZmRydWVja3Qgd2lyZHMgbGVpc2UuIEFsdGVybmF0aXYga2FubiBtYW4gYXVjaCBkZW4gU3RlY2tlciBhdWYKZGVyIFJ1ZWNrc2VpdGUgemllaGVuLCBhYmVyIGRhcyBpc3QgdW1zdGFlbmRsaWNoZXIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZmx1ZXN0ZXJsZWlzZXJlY2huZXJzdWNoZSAoQm9pbmcsICA4LiBEZXogMjAwMiwgMTQ6MDY6NTQpOgp+IyEgb249Wm9vayBvdD0xMDM5MjExODE0IG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwMzkyMTE3ODggcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTAzOTIxMTczMApXYXJ1bSB3dXNzdGUgaWNoIGdlbmF1LCBkYXNzIGRlciBBcnRpa2VsIGtvbW10PwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGZsdWVzdGVybGVpc2VyZWNobmVyc3VjaGUgKEJvaW5nLCAgOC4gRGV6IDIwMDIsIDE0OjA2OjU1KToKfiMhIG9uPVBhdHJ5biBvdD0xMDM5MjExODYwIG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49Wm9vayBydD0xMDM5MjExODE0IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwMzkyMTE3MzAKem9vayBrYW5uIGhlbGxzZWhlbi4uLmhleGVyISB2ZXJicmVubnQgaWhuIDopCgotLSAKcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGZsdWVzdGVybGVpc2VyZWNobmVyc3VjaGUgKEJvaW5nLCAgOC4gRGV6IDIwMDIsIDE0OjA2OjU2KToKfiMhIG9uPUdvcm9nIG90PTEwMzkyMTE4Nzggb2c9aGFyZHNvZnR3YXJlCn4jISBybj1HcmltbWJvcm4gcnQ9MTAzOTIxMTc4OCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDM5MjExNzMwCkRhcyBoYWIgaWNoIHNjaG9uIHByb2JpZXJ0LCBkdW1tZXIgd2Vpc2UgemVpZ3RlIGRlciBNb25pdG9yIGRhbm4ga2VpbiBCaWxkCm1laHIuCgpLZWluZSBBaG51bmcgd29yYW4gZGFzIGxhZywgYWJlciBuYWphCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIEJpZXJzY2h1ZXR0bGVyIGFid2VydGVuIDopIChFbGJlcmV0LCAgOC4gRGV6IDIwMDIsIDIxOjU3OjM4KToKCkd1YXJkIHZlcnd1c2NoZWx0IERpciBhdXMgZGVyIEZlcm5lIERlaW5lIEhhYXJlLgpEdSBzcHVlcnN0LCB3aWUgc2ljaCBEZWluIFNjaHV0emdlaXN0IHVudGVyIFNjaG1lcnplbiBhdWZiYWV1bXQuCgpFbGJpIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBmbHVlc3RlcmxlaXNlcmVjaG5lcnN1Y2hlIChHcmltbWJvcm4sICA4LiBEZXogMjAwMiwgMjI6NTA6MDMpOgp+IyEgcm49RWxkYXJvbiBydD0xMDM5MzgyNzMwIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwMzkyMTE3MzAKRGFzIG1hZyBzbyBzZWluLCBhYmVyIGVzIGdpYnQgZHVyY2hhdXMgTGV1dGUsIGRpZSBlaW5lIGJld2VnbGljaGUgTWF1cyBvZGVyCnp1bWluZGVzdCBiZXdlZ2xpY2hlIFRhc3RhdHVya25vZXBmZSB6dSBzY2hhZXR6ZW4gd2lzc2VuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGZsdWVzdGVybGVpc2VyZWNobmVyc3VjaGUgKFBhdHJ5biwgIDguIERleiAyMDAyLCAyMjo1MTo1NSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTAzOTM4NDIwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzkyMTE3MzAKeW8sIHVuZCB2b3IgYWxsZW0gaGF0IGRhcyBnYW56ZSBkaWUgcmVjaGVucG93ZXIgbWVpbmVzIGFuYWxvZy10ZWxlZm9ucywKdW5kIGRhcyBpc3QgYXVjaCB6aWVtbGljaCBsZWlzZSB3ZW5uIGtlaW5lciBhbnJ1ZnQuLi4KCi0tIApwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGZsdWVzdGVybGVpc2VyZWNobmVyc3VjaGUgKEN1Y2h1bGxpbiwgIDguIERleiAyMDAyLCAyMzoyNjowOCk6Cn4jISBvbj1DdWNodWxsaW4gb3Q9MTAzOTM4NjM2MCBvZz1oYXJkc29mdHdhcmUKfiMhIHJuPUVsZGFyb24gcnQ9MTAzOTM4MjczMCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDM5MjExNzMwCldpZXZpZWxlIGJld2VnbGljaGUgVGVpbGUgLSBhYmdlc2VoZW4gdm9uIFJlbGFpcyAtIGhhdHRlbiB3b2hsIGRpZQplcnN0ZW4gZ3JvZXNzZXJlbiBSZWNoZW5rbmVjaHRlPyA7KQoKQ3VjaCBzcGVrdWxpZXJ0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBmbHVlc3RlcmxlaXNlcmVjaG5lcnN1Y2hlIChFbGRhcm9uLCAgOC4gRGV6IDIwMDIsIDIzOjI4OjI3KToKfiMhIG9uPUVsZGFyb24gb3Q9MTAzOTM4NjM5NCBvZz1oYXJkc29mdHdhcmUKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDM5Mzg2MzYwIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwMzkyMTE3MzAKMyA/CgpFbGRhcm9uIHNwZWt1bGllcnQgbWl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogZmx1ZXN0ZXJsZWlzZXJlY2huZXJzdWNoZSAoU2NyZWFtZXIsICA4LiBEZXogMjAwMiwgMjM6MzA6MjcpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzkzODYzNjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MjExNzMwCkRlciBNYXJrIEkgaGF0dGUgei5CLiAzMDAwIEt1Z2VsbGFnZXIgOy0pIFNvdmllbCB6dSBiZXdlZ2xpY2hlbgpUZWlsZW4gKmcqCgpTY3JlYW1lcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogZmx1ZXN0ZXJsZWlzZXJlY2huZXJzdWNoZSAoQ3VjaHVsbGluLCAgOC4gRGV6IDIwMDIsIDIzOjMxOjIxKToKfiMhIHJuPVNjcmVhbWVyIHJ0PTEwMzkzODY2Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MjExNzMwCk1pc3QsIHVuZCBMdWVmdGVyIGdhYiBlcyB3b2hsIGF1Y2ggc2Nob24genVyIFJvZWhyZW4tdW5kLVJlbGFpcy1aZWl0LgpNSVNULCB1bmQgZGVyIEFiYWt1cyBoYXQgYXVjaCBiZXdlZ2xpY2hlIFRlaWxlLCBrYW5uIG1pY2ggbmljaHRtYWwgZGFtaXQKcmF1c3JlZGVuLi4uIFZlcmRhbW10ISA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGZsdWVzdGVybGVpc2VyZWNobmVyc3VjaGUgKFdpbGxvdywgIDguIERleiAyMDAyLCAyMzozNzozNyk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAzOTM4NjY4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzkyMTE3MzAKdW5kIGFscyBtaXQgYm9obmVuIGdlcmVjaG5ldCB3dXJkZSwgd2FyZW4gZG9ydCBhdWNoIGJld2VnbGljaGUgdGVpbGUgLSBkaWUKYm9obmVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBmbHVlc3RlcmxlaXNlcmVjaG5lcnN1Y2hlIChDdWNodWxsaW4sICA4LiBEZXogMjAwMiwgMjM6Mzg6MTUpOgp+IyEgcm49V2lsbG93IHJ0PTEwMzkzODcwNTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MjExNzMwCkljaCByZWNobmUgamV0enQgbWl0IEJlcmdzcGl0emVuLiBVbmQgd2VoZSBpcmdlbmRlaW5lciByZWRldCB2b24gRXJvc2lvbgpvZGVyIFRla3RvbmlrLiAqa251cnJycnJycnJyciogOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogZmx1ZXN0ZXJsZWlzZXJlY2huZXJzdWNoZSAoRWxkYXJvbiwgIDguIERleiAyMDAyLCAyMzozODo1MSk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTAzOTM4NzA5NSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzkyMTE3MzAKV28gaXN0IGRhbm4gZGVpbiBNYXgtSW50PyA7PgoKRWxkYXJvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IGZsdWVzdGVybGVpc2VyZWNobmVyc3VjaGUgKEN1Y2h1bGxpbiwgIDguIERleiAyMDAyLCAyMzozOToyNCk6Cn4jISBybj1FbGRhcm9uIHJ0PTEwMzkzODcxMzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MjExNzMwCkd1dGUgRnJhZ2UuIEFsbGVzIGVpbmUgRnJhZ2UgZGVyIEt1ZWhsdW5nLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogZmx1ZXN0ZXJsZWlzZXJlY2huZXJzdWNoZSAoU2NyZWFtZXIsICA4LiBEZXogMjAwMiwgMjM6Mzk6NTQpOgp+IyEgcm49V2lsbG93IHJ0PTEwMzkzODcwNTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MjExNzMwCnVuZCB3ZW5uIG1hbiBkYW5uIGRpZSBCb2huZW4gZ2VnZXNzZW4gaGF0dGUuLi4uLi4KTGFzc2VuIHdpciBkYXMgOy0pCgpTY3JlYW1lcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogZmx1ZXN0ZXJsZWlzZXJlY2huZXJzdWNoZSAoRWxkYXJvbiwgIDguIERleiAyMDAyLCAyMzo0NjoyNSk6Cn4jISBybj1QYXRyeW4gcnQ9MTAzOTM4NDMxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzkyMTE3MzAKTmEgZ3V0LCBiZWkgVVQyMDAzIHN0ZWxsc3QgZHUga2VpbmUgRnJhbWUtUmVrb3JkZSBhdWYsIGFiZXIgZGllIFZhcmlhbnRlIG1pdAoxR0haIChXYXMgaW1tZXIgZGFzIGF1Y2ggaGVpc3NlbiBtYWcuKSByZWljaHQgZnVlciBhbGxlcyBtb2VnbGljaGUgYXVzLgpTY2huZWxsZXIgYWxzIGRlaW4gQW5hbG9ndGVsZWZvbiBpc3QgZGFzIGFsbGVtYWwuCgpodHRwOi8vd3d3Ni50b21zaGFyZHdhcmUuY29tL2NwdS8wMnEyLzAyMDYwNS9pbmRleC5odG1sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVWViZWxzdCAoTW9yZ290aCwgIDkuIERleiAyMDAyLCAxMDowOToyNyk6CkViZW4gaW0gSVJDOgooUXVvdGUgOCk6IHdpZSBpY2ggbWlyIGRpZSAxMTg4MCBtZXJrZT8gMTEuIHNlcHRlbWJlciwgODggc3RvY2t3ZXJrZSwgMCBjaGFuY2UKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBmbHVlc3RlcmxlaXNlcmVjaG5lcnN1Y2hlIChPcmt0b2V0ZXIsICA5LiBEZXogMjAwMiwgMTA6NDU6NTcpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzkzODYzNjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5MjExNzMwCk5hamEsIGJlaSBGZXJyaXRzcGVpY2hlcm4gc29sbHRlIG5pY2h0IGF1c3p1c2NobGllc3NlbiBzZWluLCBkYXMgZGllCk1hZ25ldGZlbGRlciBkaWUgRHJhZWh0ZSBkaWUgZGFkdXJjaCB2ZXJsYXVmZW4gbGVpY2h0IGJld2VnZW4sIGRhbm4gc2luZCBkYXMKc2Nob24gc28gZWluaWdlIGJld2VnbGljaGUgVGVpbGUuLiAoMyBEcmFlaHRlIHBybyBTcGVpY2hlcnplbGxlIHVuZCBiZWkKZ2VzY2hhZXR6ZW4gMSBiaXMgMiBrQiBzbyBjYSAzMDAwIGJpcyA2MDAwIGJld2VnbGljaGUgVGVpbGUgYWxsZWluZSBpbQpTcGVpY2hlci4uLgoKT3JrVC4KClBTIGRlciBMb2Noa2FydGVubGVzZXIgZ2lsdCBhbHMgRXh0ZXJuLCBvZGVyIHphZWhsdCBkZXIgbWl0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXh0cmVta251ZGRlbHRvY2h0ZXIgKEh1bW5pLCAgOS4gRGV6IDIwMDIsIDEwOjQ5OjAzKToKCkRlaW5lIEZyZXVuZGluIEFyd2luIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIApBcndpbiAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhISAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCkh1bW5pLCBiZWVpbmRydWNrdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFeHRyZW1rbnVkZGVsdG9jaHRlciAoQXJ3aW4sICA5LiBEZXogMjAwMiwgMTA6NTI6NTEpOgp+IyEgcm49SHVtbmkgcnQ9MTAzOTQyNzM0MyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzk0MjczNDMKSGFjaCwgc28gYmluIGljaCA6KQpTY2huZWxsZXIgYWxzIGRlciBQYXBpIGVybGF1YnQuCgpBcndpbiAtIEhleSwgZGFzIHdhciBtZWluIGVyc3RlciBBcnRpa2VsIGluIFNjaG1hcnJuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRXh0cmVta251ZGRlbHRvY2h0ZXIgKEJhbWJpLCAgOS4gRGV6IDIwMDIsIDEwOjU4OjAzKToKfiMhIHJuPUh1bW5pIHJ0PTEwMzk0MjczNDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5NDI3MzQzCkR1IGJpc3QgYmVlaW5kcnVja3Q/Cldlbm4gaWNoIGRhcyBtYWNoZSwgYmVzY2h3ZXJuIHNpY2ggaW1tZXIgYWxsZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRXh0cmVta251ZGRlbHRvY2h0ZXIgKEh1bW5pLCAgOS4gRGV6IDIwMDIsIDEwOjU4OjM5KToKfiMhIHJuPUJhbWJpIHJ0PTEwMzk0Mjc4ODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5NDI3MzQzCkR1IGJpc3QgamEgYXVjaCBuaWNodCBtZWluZSBUb2NodGVyLiBTby4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFeHRyZW1rbnVkZGVsdG9jaHRlciAoQXJ3aW4sICA5LiBEZXogMjAwMiwgMTE6NTc6NTkpOgp+IyEgcm49SHVtbmkgcnQ9MTAzOTQyNzkxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwMzk0MjczNDMKQXVzc2VyZGVtIGJpbiBpY2ggd2VpYmxpY2gsIGhhYmUgYWxzbyBkZW4gKi1Cb251cy4KU28hCgpBcndpbiBrdXNjaGVsdCBzaWNoIGFuIFBhcGkgYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEV4dHJlbWtudWRkZWx0b2NodGVyIChHbm9tZSwgIDkuIERleiAyMDAyLCAxMTo1ODo1NSk6Cn4jISBybj1BcndpbiBydD0xMDM5NDMxNDc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzOTQyNzM0Mwp3ZWlibGljaCAhPSB0aXR0ZW5ib251cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRXh0cmVta251ZGRlbHRvY2h0ZXIgKEFyd2luLCAgOS4gRGV6IDIwMDIsIDExOjU5OjUxKToKfiMhIHJuPUdub21lIHJ0PTEwMzk0MzE1MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5NDI3MzQzCkFyd2luIHdhY2tlbHQgbWl0IGRlbSBIaW50ZXJuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBFeHRyZW1rbnVkZGVsdG9jaHRlciAoT3JrdG9ldGVyLCAgOS4gRGV6IDIwMDIsIDEyOjA1OjIyKToKfiMhIHJuPUFyd2luIHJ0PTEwMzk0MzE1OTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5NDI3MzQzCkFlaC4uIHdvIHNpbmQgYmVpIGRpciBkaWUgKiA/CgpPcmtULCBzaWNoIGRhcyBnYXIgbmljaHQgdm9yc3RlbGxlbiB3b2xsZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRXh0cmVta251ZGRlbHRvY2h0ZXIgKEFyd2luLCAgOS4gRGV6IDIwMDIsIDEyOjExOjIzKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDM5NDMxOTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzOTQyNzM0MwpBbHNvIGVyc3RlbnMgaG9mZmUgaWNoIGVpbm1hbCBmdWVyIERpY2gsIGRhc3MgRHUgZGFzIHdlaXNzdCB1bmQgaGllciBudXIKdm9yZ2lic3QsIGJpc2hlciBuaWNodHMgYWhuZW5kIGR1cmNoIGRpZSBXZWx0IGdlc3RpZWZlbHQgenUgc2Vpbi4KVW5kIDIuIERhcyBnZWh0IERpY2ggcmVpbiBnYXIgbmljaHRzIGFuLCB3byBkaWUgYmVpIG1pciBzaW5kISA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW52b2xsc3RhZW5kaWcuIChCYW1iaSwgIDkuIERleiAyMDAyLCAxMzoyMzowNCk6CkRlaW4gRnJldW5kIEJvaW5nIHRlaWx0IERpciBtaXQ6IGRvY2g/IDspCkRlaW4gRnJldW5kIEJvaW5nIHRlaWx0IERpciBtaXQ6IGFoc28KRGVpbiBGcmV1bmQgQm9pbmcgdGVpbHQgRGlyIG1pdDogYWJzb2x1dCA7KQoKLSBIYWIgaWNoIHdhcyB2ZXJwYXNzdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbnZvbGxzdGFlbmRpZy4gKEJvaW5nLCAgOS4gRGV6IDIwMDIsIDEzOjI5OjUyKToKfiMhIHJuPUJhbWJpIHJ0PTEwMzk0MzY1ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5NDM2NTg0Ck5laW4uIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGZsdWVzdGVybGVpc2VyZWNobmVyc3VjaGUgKEN1Y2h1bGxpbiwgIDkuIERleiAyMDAyLCAxNDoxOToxNyk6Cn4jISBybj1PZ2FyIHJ0PTEwMzk0Mzg3MjMgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTAzOTIxMTczMApOZSBTZWFnYXRlIGtvbW10IG1pciBuaWNodCBtZWhyIGlucyBIYXVzLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEdlcmFldXNjaGUgKENhdHdlYXpsZSwgIDkuIERleiAyMDAyLCAyMTo0Mzo0Nik6Cn4jISBybj1LYXJpcyBydD0xMDM5NDM3ODM2IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwMzkzODg5MzkKRG9jaCwgdHVzdCBkdSA6LSkKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVjaCBtYWwgZHVoIChFbGRhcm9uLCAgOS4gRGV6IDIwMDIsIDIzOjQ1OjIzKToKVm9uIEZyZXVuZCBQaXRmYWxsOiBub2NoIGlyZ2VuZHdhcyB6dSBoYXVlbj8gOikKVm9uIEZyZXVuZCBTZWViYWVyOiBKYSEKCltUb2Q6TGFyc10gRWluIFNlZWJhZXIgaGF0IGdlcmFkZSBQaXRmYWxsIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNlZWJhZXJdIFdlciBzdG9lcnQgbWVpbmVuIFNjaGxhZj8KW1RvZDpFaW4gQWxjaGVtaXN0XSBKZXR6dCBtdXNzIGljaCB3aWVkZXIgZGllIFJlc3RlIHdlZ3JhZXVtZW4hCltUb2Q6RWluIFNlZWJhZXJdIEphLCBzb3JyeS4uLmFiZXIgaWNoIHdhciBuaWNodCBhbGxlaW4gU2NodWxkIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZSAoT3JrdG9ldGVyLCAxMC4gRGV6IDIwMDIsIDEwOjEyOjExKToKCkR1IHNpZWhzdCAyIEdlc2ljaHRlciBhdWYgZGVyIEViZW5lICdTZXgnOgpIYXRlLCBIdW1uaQpIdW1uaSBoYXQgZGFzIFNhZ2VuIGF1ZiBkaWVzZXIgRWJlbmUuCgpPcmtULCBlbnRzZXR6dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqUypUKkEqVCpJKiAoQ3VjaHVsbGluLCAxMS4gRGV6IDIwMDIsIDEyOjIxOjM0KToKfiMhIHJuPVFpdGVzcyBydD0xMDM5NTk5MTkxIHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwMzk1OTkxOTEKWC1TcGFtLUZsYWc6IFlFUwpYLVNwYW0tTGV2ZWw6ICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKWC1TcGFtLVN0YXR1czogWWVzLCBoaXRzPTMxLjggcmVxdWlyZWQ9NS4wCi4uLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICpTKlQqQSpUKkkqIChRaXRlc3MsIDExLiBEZXogMjAwMiwgMTM6MTA6MTUpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwMzk2MDU2OTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5NTk5MTkxCkFiZXIgZGFzIGlzdCBkb2NoIG5pY2h0cyBuZXVlcy4uLi4KUUkqKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdGllcndlbHQgKFBpdGZhbGwsIDExLiBEZXogMjAwMiwgMTY6NDU6MjkpOgpFaW4gRnJvc2NoIHp1ZWNrdCBlaW5lbiBWb2xsc3RyZWNrZXIuCkRpZSBSYXR0ZSB3ZWhydCBlaW5lcyBGcm9zY2hlcyBBbmdyaWZmIHZvbGxzdGFlbmRpZyBhYi4KRGllIFJhdHRlIHdlaHJ0IGVpbmVzIEZyb3NjaGVzIEFuZ3JpZmYgdm9sbHN0YWVuZGlnIGFiLgpFaW4gRnJvc2NoIGFlbmRlcnQgc2VpbmUgS2FtcGZ0ZWNobmlrLgpEaWUgUmF0dGUgd2VocnQgZWluZXMgRnJvc2NoZXMgQW5ncmlmZiB2b2xsc3RhZW5kaWcgYWIuCgpkdWgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogKlMqVCpBKlQqSSogKFdvb2R5LCAxMi4gRGV6IDIwMDIsIDAxOjI3OjM3KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDM5NjA1Njk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzOTU5OTE5MQpCVFcsIG1laW4gYmlzaGVyaWdlciBSZWtvcmQgbGllZ3QgYmVpIDM3LjQgKG1pdCBEZWZhdWx0IENvbmZpZykuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAqUypUKkEqVCpJKiAoR3JpbW1ib3JuLCAxMi4gRGV6IDIwMDIsIDAzOjE1OjUzKToKfiMhIHJuPVdvb2R5IHJ0PTEwMzk2NTI4NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5NTk5MTkxCkViZW5mYWxscyBkZWZhdWx0IGNvbmZpZzoKU1BBTTogQ29udGVudCBhbmFseXNpcyBkZXRhaWxzOiAgICg0NiBoaXRzLCA1IHJlcXVpcmVkKQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1VRCBOYWNod3VjaHMgZ2VsYW5kZXQhIChHcmltbWJvcm4sIDEyLiBEZXogMjAwMiwgMDc6NTI6NTYpOgp+IyEgcm49TW9yZ290aCBydD0xMDM5Njc1Nzc2IHJnPWFuemVpZ2VuCn4jISB0aWQ9MTAzOTYzMTA2MQpBY2ggd2FzLCBkYXMgd2FyIGRvY2ggc2ljaGVyIGdlc2NyaXB0ZXQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChLYXJpbWEsIDEyLiBEZXogMjAwMiwgMjA6MzE6MzMpOgo+IERlaW5lIEZyZXVuZGluIFNoYWVlbmEgdGVpbHQgRGlyIG1pdDogYm9haCEgKmVpc2RyYWNoZSB1bWJyaW5nKgpbVG9kOkxhcnNdIEVpbiBFaXNkcmFjaGUgaGF0IGdlcmFkZSBTaGFlZW5hIHVtZ2VicmFjaHQuCgpLYXJpbWEgZW1wZmllaGx0OiBFaW5mYWNoIGVpbiB3ZW5pZyBtZWRpdGllcmVuIHVuZCBkYXMgZ2FuemUgbWl0IFJ1aGUgYW5nZWhlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hbCB3aWVkZXIgbmV0ZGlnZXN0Li4gKE5vbm5lLCAxMy4gRGV6IDIwMDIsIDA5OjUyOjE3KToKV2VpbCBoaWVyIHNvIHZpZWwgTmFjaHd1Y2hzIGtvbW10IGluIGxldHp0ZXIgWmVpdCBtYWwgd2FzIGF1cyBuZXRkaWdlc3QgenVtCgoKVGhlbWE6CgpGcm9tOiAgIlN0ZWZmaSBBYmVsIiA8YWJlbEBzLm5ldGljLmRlPgpOZXdzZ3JvdXBzOiAgZGUuYWx0LnJlY292ZXJ5LndlYmF1dGhvcgpTdWJqZWN0OiBLaWQtRGVzaWduICh3YXM6IEdyYXRpcyBXZWJkZXNpZ24pCk1lc3NhZ2UtSUQ6IDxhdDVxcnEkMTBsZzhlJDFASUQtMTQzMDI1Lm5ld3MuZGZuY2lzLmRlPgpEYXRlOiBUdWUsIDEwIERlYyAyMDAyIDA5OjA2OjI1ICswMTAwCgoiS29ubmkgU2NoZWxsZXIiIDxlaW5fa29ubmlAZ214LmRlPiBzY2hyaWViOgoKPiBLb25uaQo+IChtaXQgZWluZXIgc2VsYnN0IGVyc3RlbGx0ZW4gVG9jaHRlciBpbSBBcm0pCgpHbHVlY2t3dW5zY2guCgpXaWUgbGFuZyB3YXIgZGllIERvd25sb2FkemVpdD8gVmFsaWRpZXJ0IGFsbGVzPwo8Ym9keSBzdHlsZT0id2VpZ2h0OiAuLi47IHNpemU6IC4uLiI+PyBGaWxlIHNpemU/CkZpbGUgbmFtZT8gU291bmRrYXJ0ZSBzY2hvbiBpbnN0YWxsaWVydD8KCgpHcnVzcyBTdGVmZmkKCgpOb25uZSwgZ3JpbnNlbmQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hbCB3aWVkZXIgbmV0ZGlnZXN0Li4gKEJvaW5nLCAxMy4gRGV6IDIwMDIsIDA5OjU2OjUyKToKfiMhIHJuPU5vbm5lIHJ0PTEwMzk3Njk1Mzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5NzY5NTM3CkRpZXNlIFN0ZWZmaSBBYmVsIHNjaGVpbnQgamEgbmUgZ2FueiB3aXR6aWdlIHp1IHNlaW4sIHNvIG9mdCB3aWUKZGllIGhpZXIgc2Nob24gaW0gbmV0ZGlnZXN0IGF1ZnRhdWNodGUgLi4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWFsIHdpZWRlciBuZXRkaWdlc3QuLiAoVmFuaW9uLCAxMy4gRGV6IDIwMDIsIDEwOjEzOjAyKToKfiMhIHJuPUJvaW5nIHJ0PTEwMzk3Njk4MTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5NzY5NTM3ClZlcm11dGxpY2ggaXMgZGllIEd1dGUgYXVzIGRlLmFsdC5ncnVwcGVua2FzcGVyIGdlZmxvaGVuIG9kZXIgZnVlaGx0IHNpY2ggenVtCiJFcmhlaXRlcmVyIGRlciBNYXNzZW4iIGJlcnVmZW4gLi4uIAoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1hbCB3aWVkZXIgbmV0ZGlnZXN0Li4gKEZvb2JhciwgMTMuIERleiAyMDAyLCAxMDo1MDozNCk6Cn4jISBybj1WYW5pb24gcnQ9MTAzOTc3MDc4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwMzk3Njk1MzcKVGl0dGVuYm9udXMuCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHdoeT8gKEN1Y2h1bGxpbiwgMTMuIERleiAyMDAyLCAxNDoyNDoyNCk6Cn4jISBvbj1DdWNodWxsaW4gb3Q9MTAzOTc4NTg2MCBvZz13aXR6ZQp+IyEgcm49Tm9ubmUgcnQ9MTAzOTc2NjMzOSByZz13aXR6ZQp+IyEgdGlkPTEwMzk3MjMyODAKVGFldCBtaXIgamEgc2Nob24gc3Rpbmtlbi4gQm9tYmVuZW50c2NoYWVyZnVuZywgYWxsZXMgd2lyZCBldmFrdWllcnQgdW5kCmljaCBrYW5uIG1laW5lbiAlIiUiJiQlJC1MYWRlbiBuaWNodCBhYnNjaGxpZXNzZW4uLi4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTZXh1ZWxsZSBCZWxhZXN0aWd1bmcgKEdyaW1tYm9ybiwgMTMuIERleiAyMDAyLCAxODozODowMSk6Cn4jISBvbj1GbGF1cm9zIG90PTEwMzk3OTc0NTkgb2c9ZXRpa2V0dGUKSHVodSBHcmltbWJvcm4sIG1pciBpc3QgbGFuZ3dlaWxpZy4gOykpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNYWwgd2llZGVyIG5ldGRpZ2VzdC4uIChSb25kYSwgMTQuIERleiAyMDAyLCAyMzo0MToyNCk6Cn4jISBybj1Gb29iYXIgcnQ9MTAzOTc3MzAzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzk3Njk1MzcKVW0gZnVlciBNb250YW51cyAtIGRlciBkaWVzZSBBcnRpa2VsIG5pY2h0IG1hZyAtIGltIFRocmVhZCB6dSBibGVpYmVuIDstKQoKRnJvbToga29ldHRpbmdAcmJnLmluZm9ybWF0aWsudHUtZGFybXN0YWR0LmRlIChIb2xnZXIgS29ldHRpbmcpCk5ld3Nncm91cHM6IGRlLmV0Yy5iYWhuLm1pc2MKU3ViamVjdDogUmU6IHdhcyBtYWNoZSBpY2ggbWl0IGRlbiBHdXRzY2hlaW5lbj8KRGF0ZTogVHVlLCAyOSBPY3QgMjAwMiAxMzo1NDoyMiArMDAwMCAoVVRDKQpNZXNzYWdlLUlEOiA8YXBtM3VlJGIybSQxQG5ld3MudHUtZGFybXN0YWR0LmRlPgoKSW4gYXJ0aWNsZSA8YXBqcGwxJDI5bjJpJDFASUQtODg3NDQubmV3cy5kZm5jaXMuZGU+LAogIldpbGwgQmVyZ2hvZmYiIDx3YmVyZ2hvZmZAZ214LmRlPiB3cml0ZXM6Cnw+IEFuZ2VzaWNodHMgZGF1ZXJuZGVyIGVyaGVibGljaGVyIFZlcnNwYWV0dW5nZW4gKG5pY2h0IG51ciBkZXMgT3JrYW5lcwp8PiB3ZWdlbikgaGF0IHNpY2ggbWl0dGxlcndlaWxlIGVpbmUgZ3JvZXNzZXJlIEFuemFobCBhbgp8PiBWZXJzcGFldHVuZ3NndXRzY2hlaW5lbiB1bmQgdW5nZW51dHp0ZW4gSUMtWnVzY2hsYWVnZW4gYW5nZXNhbW1lbHQuCgpWZXJzcGFldHVuZ3NndXRzY2hlaW5lLCBpZ2l0dC4gRHUgbWVpbnN0OgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KU2VociBnZWVocnRlciBIZXJyIEJlcmdob2ZmLAoKd2lyIGJlZGFua2VuIHVucyBmdWVyIElocmUgUmVpc2UsIGRpZSBTaWUgbWl0IHVuc2VyZW0gVW50ZXJuZWhtZW4gZ2UtCnRhZXRpZ3QgaGFiZW4gdW5kIGJlZGF1ZXJuLCBsZWlkZXIgSWhyZSBFcndhcnR1bmdlbiBuaWNodCBlcmZ1ZWxsdCB6dQpoYWJlbi4gVHJvdHogYWxsZXIgQmVtdWVodW5nZW4gaXN0IHVuc2VyIFp1ZyBhdXNuYWhtc3dlaXNlIHB1ZW5rdGxpY2gKYW4gc2VpbmVtIEJlc3RpbW11bmdzYmFobmhvZiBhbmdla29tbWVuLiBXaXIgYmVkYXVlcm4sIGRhc3Mgd2lyIGRhbWl0CmRhcyBpbiB1bnMgZ2VzZXR6dGUgVmVydHJhdWVuIGluIGVpbmUgc2F0dGUgVmVyc3BhZXR1bmcgbmljaHQgZXJmdWVsLQpsZW4ga29ubnRlbi4KCldpciBlcmxhdWJlbiB1bnMgZGFoZXIsIElobmVuIGF1cyBLdWxhbnpncnVlbmRlbiB1bmQgb2huZSBBbmVya2VubnVuZwplaW5lciBSZWNodHN2ZXJwZmxpY2h0dW5nLCBlaW5lbiBWZXJzcGFldHVuZ3NndXRzY2hlaW4gdWViZXIKCiAgICAgICAgICAgICAgICAgICAgICAgKiAxNSAqCgpNaW51dGVuIHp1IHVlYmVycmVpY2hlbi4KClNpZSBrb2VubmVuIGRpZXNlbiBHdXRzY2hlaW4gYmVpIGVpbmVyIGJlbGllYmlnZW4ga29tbWVuZGVuIFJlaXNlIG1pdAp1bnNlcmVtIFVudGVybmVobWVuIGVpbnNldHplbi4gU2VoZW4gU2llIGRpZSBHZWZhaHIsIGRhc3MgZGVyIFp1ZyB3aS0KZGVyIEVyd2FydGVuIG5pY2h0IHZlcnNwYWV0ZXQgc2VpbiB3aXJkLCB1ZWJlcnJlaWNoZW4gU2llIGJpdHRlIElocmVuClZlcnNwYWV0dW5nc2d1dHNjaGVpbiBhbiBlaW5lbiB1bnNlcmVyIFp1Z2JlZ2xlaXRlci4gVW5zZXIgZ2VzY2h1bHRlcwpQZXJzb25hbCB3aXJkIGRhbm4gYmVtdWVodCBzZWluLCBkaWUgSWhuZW4genVzdGVoZW5kZSBWZXJzcGFldHVuZyB1bi0KdmVyenVlZ2xpY2ggenUgcmVhbGlzaWVyZW4uCgpCaXR0ZSBiZWFjaHRlbiBTaWU6IGdlYmVuIG1laHJlcmUgUmVpc2VuZGUgaW0gZ2xlaWNoZW4gWnVnIGVpbmVuIFZlci0Kc3BhZXR1bmdzZ3V0c2NoZWluIG1pdCB1bnRlcnNjaGllZGxpY2hlbiBaZWl0YW5nYWJlbiBiZWkgdW5zZXJlbiBadWctCmJlZ2xlaXRlcm4gYWIsIHdlcmRlbiBkaWVzZSBhdXMgYWxsZW4gYWJnZWdlYmVuZW4gWmVpdGVuIGVpbmUgbWl0dGxlLQpyZSBWZXJzcGFldHVuZ3NkYXVlciBiZXJlY2huZW4uCgpXaXIgZW50c2NodWxkaWdlbiB1bnMgbm9jaCBlaW5tYWwgZGFmdWVyLCBkYXNzIElocmUgUmVpc2UgbGVpZGVyIG9obmUKVmVyc3BhZXR1bmcgdmVybGllZiB1bmQgaG9mZmVuLCBkYXNzIHdpciBJaHIgSG9mZm51bmdlbiBhdWYgZWluZXIgZXItCm5ldXRlbiBSZWlzZSBtaXQgdW5zZXJlbSBVbnRlcm5laG1lbiBlcmZ1ZWxsZW4ga29lbm5lbi4KCkhvY2hhY2h0dW5nc3ZvbGwsCgogKmtyaWNrZWwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKR3J1c3MsCgpIb2wgJ1NDTlInIGdlciBLLiBhdXMgRC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1hbCB3aWVkZXIgbmV0ZGlnZXN0Li4gKFJvbmRhLCAxNC4gRGV6IDIwMDIsIDIzOjQzOjAyKToKfiMhIHJuPVJvbmRhIHJ0PTEwMzk5MDU2ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5NzY5NTM3Ci4uLiBpbW1lciBub2NoIGltIFRocmVhZCwgTW9udGFudXMgc2VpIERhbmsuLi4KCkZyb206IEJlbmVkaWN0IE1hbmdlbHNkb3JmZiA8Ym1hbmdlbHNkb3JmZkBnbXguZGU+Ck5ld3Nncm91cHM6IGdlci5jdApTdWJqZWN0OiBSZTogRGV1dHNjaGxhbmQgIT0gQmF5ZXJuCkRhdGU6IFdlZCwgMTEgRGVjIDIwMDIgMTY6MDI6MjcgKzAxMDAKTWVzc2FnZS1JRDogPGF0N2s4NiQxMWRjZmUkMUBJRC0yNzE5Mi5uZXdzLmRmbmNpcy5kZT4KCgpDYXJzdGVuIEtldHRuZXIgc2NocmllYjoKCj4gT0ssIGRhcyBpc3QgZWluIGd1dGVyIEtvbXByb21pc3MuIEJheWVybiBpbnMgQXVzbGFuZC4gRGFyYW4gbGllc3NlIHNpY2gKPiBkaWUgbmFlY2hzdGUgRnJhZ2UgYW5rbnVlZnBnZW4gRVUtIG9kZXIgTm9uLUVVPwoKRWluZSBpbnRlcmVzc2FudGUgRnJhZ2UuIEljaCBwbGFlZGllcmUgZnVlciBOb24tRVUuCgpCZWdydWVuZHVuZzoKCjEuIFVudWViZXJ3aW5kYmFyZSBTcHJhY2hiYXJyaWVyZS4KMi4gVm9lbGxpZyBhbmRlcmUgS3VsdHVyLgozLiBNb2VnbGljaGVyd2Vpc2UgZWluZSBEaWt0YXR1ciwgZGllIFdhaGxlcmdlYm5pc3NlIGRlciBsZXR6dGVuCiAgIDQwIEphaHJlIGFlaG5lbG4gZGVuZW4gZGVyIFNFRC4KNC4gRHVyY2ggZGllIHNlbGJzdCBnZXdhZWhsdGUgQmV6ZWljaG51bmcgYWxzIEZyZWlzdGFhdCBiZWt1bmRlbiBkaWUKICAgQmV3b2huZXIsIGRhc3Mgc2llIGtlaW5lciBHZW1laW5zY2hhZnQgYW5nZWhvZXJlbiB3b2xsZW4uCjUuIFNvYmFsZCBHLlcuIEJ1c2ggaGVyYXVzYmVrb21tdCwgd29oZXIgZGllIEJyZXplbG4gc3RhbW1lbiwgemllaHQKICAgc2ljaCBkaWUgQWNoc2UgZGVzIEJvZXNlbiBkdXJjaCBCYXllcm4uCgoKdHR5bDhlciwgYm0uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNYWwgd2llZGVyIG5ldGRpZ2VzdC4uIChSb25kYSwgMTUuIERleiAyMDAyLCAwMDozNTo1OCk6Cn4jISBybj1Sb25kYSBydD0xMDM5OTA1NzgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzOTc2OTUzNwpBbHNvIGlyZ2VuZHdpZSB3YXJ0IElociBuaWNodCBzbyBmbGVpc3NpZyBpbiBkZXIgbGV0enRlbiBXb2NoZSAtIHBvc3RldCBhdXNzZXIKbWlyIGtlaW5lciBkZS5hbHQubmV0ZGlnZXN0PyA7LSkKClJvbmRhICptYWdzIGVpbmZhY2gqCgpGcm9tOiAiQ2hyaXN0aWFuIEguIEt1aG4iIDxxbm9AcW5vLmRlPgpOZXdzZ3JvdXBzOiBkZS5hbHQuc3lzYWRtaW4ucmVjb3ZlcnkKU3ViamVjdDogUmU6IFBvcm5vcyBmb3IgUHJlc2lkZW50IQpEYXRlOiBXZWQsIDExIERlYyAyMDAyIDIzOjAxOjIyICswMTAwCgomIGRpeGl0IEtvbm5pIFNjaGVsbGVyOgo+IEt1cno6IERpZSBTUEQga2FubnN0IGluIEJheWVybiBnbGF0dCB2ZXJnZXNzZW4uCgpXV00sIHZvciBlaW5pZ2VyIFplaXQuCkphdWNoOiBXaWUgbmFubnRlIG1hbiBkaWUgUGFydGVpemVudHJhbGUgZGVyIFNQRCBpbiBCb25uPwpLYW5kaWRhdGluOiBBZWguCkphdWNoOiBTaWUgc2luZCBhdXMgQmF5ZXJuLiBBYmVyIGRpZSBTUEQga2VubmVuIFNpZSBkb2NoPwpQdWJsaWt1bTogPEdlbGFlY2h0ZXI+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBNYWwgd2llZGVyIG5ldGRpZ2VzdC4uIChSb25kYSwgMTUuIERleiAyMDAyLCAwMToxNjowNyk6Cn4jISBybj1Sb25kYSBydD0xMDM5OTA4OTU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTAzOTc2OTUzNwpBbHNvLCBhbGxlIHVudGVyIDE4IHVuZCBNb250YW51cyBiaXR0ZSBpZ25vcmllcmVuLi4uCgpbU3VibWl0dGVyJ3Mgbm90ZTogV2VsY2ggZWluIFBTLiBuYWNoIHNvIHZpZWwgVGhlb3JpZSFdCgpGcm9tOiBEZXRsZWYgTWVpc3NuZXIgPGRlLm1laXNzbmVyQHdlYi5kZT4KTmV3c2dyb3VwczogZGUudGFsay5saWViZXNha3QKU3ViamVjdDogUmU6IEdlZnVlaGxzd2VsdCB2b24gRnJhdWVuCkRhdGU6IFdlZCwgMTEgRGVjIDIwMDIgMTU6MzQ6NTkgKzAxMDAKTWVzc2FnZS1JRDogPDNERjc0RDEzLjg4NURBRTBFQHdlYi5kZT4KClVscmljaCBHZWhhdWYgc2NocmllYjoKPiAKPiBEZXRsZWYgTWVpc3NuZXIgPGRlLm1laXNzbmVyQHdlYi5kZT4gbWVpbnRlIGFtIDExIERleiAyMDAyOgo+IAo+ID4+ID4KPiA+PiA+IFdhZXJlIGljaCBlaW5lIEFtYXpvbmUsIGhhZXR0ZSBpY2ggbnVyIGVpbmUgKkJydXN0Kgo+ID4+ID4gSGFldHRlIGljaCB6d2VpICpCdXNlbiosIHdhZXJlIGljaCBlaW4gNC1icnVlc3RpZ2VzIE1vbnN0ZXIKPiA+Pgo+ID4+IEdlbmF1ZXJnZXNhZ3QsIDMgQnJ1ZXN0ZSAobWluaW11bSkuCj4gPj4KPiA+PiBFaW4gQnVzZW4gaXN0IGRpZSBBdXNidWNodHVuZyB6d2lzY2hlbiAyIEJydWVzdGVuLgo+ID4+Cj4gPj4gRm9sZ2xpY2gga29lbm5lbiAyIEJ1c2VuIHZvbiAzIEJydWVzdGVuIGdlYmlsZGV0IHdlcmRlbgo+ID4KPiA+IFVuZCB1bSBkYXMgZ2FuemUgbm9jaCBhdXN6dXdlaXRlbjoKPiA+IDQgQnJ1ZXN0ZSBiZWhlcmJlcmdlbiAobWluZGVzdGVucykgNCBCdXNlbi4gRWluIGdlb3BoeXNpa2FsaXNjaGVyCj4gPiBRdWVyc2Nobml0dCBicmFlY2h0ZSA2IHp1dGFnZS4KPiAKPiBTb3JyeSwgbmVpbi4KPiAKPiA0IEJydWVzdGUgYmVoZXJiZXJnZW4gbWluLiAzIEJ1c2VuLCB3ZW5uIGRpZSBCcnVlc3RlICdpbiBSZWloZScKPiBhbmdlb3JkbmV0IHNpbmQuIEZ1ZXIgZGVuIEZhbGwsIGRhc3MgZGllIEJydWVzdGUga3JlaXNmb2VybWlnIGFuZ2VvcmRuZXQKPiB3YWVyZW4sIHd1ZXJkZW4gc2ljaCA0IEJ1c2VuIGVyZ2ViZW4sIC4uLi4KCkZvbGdlbmRlciBGYWxsOgoKMSwgMiwgMywgNCBzaW5kIGRpZSBCZXplaWNobnVuZ2VuIGRlciBCdXNlbi4gU2llIHNpbmQgYW5nZW9yZG5ldCB3aWUgZGllCjQgYXVmIGRlbSBXdWVyZmVsLiAKCiAoMSkgICAoMikKCiAoMykgICAoNCkKCkRhbm4gYmVmaW5kZXQgc2ljaCBqZXdlaWxzIGVpbiBCdXNlbiB6d2lzY2hlbiAxLzIsIDMvNCwgMS8zIHNvd2llIDIvNC4KQWxzbyB2aWVyLgoKQWJlciwgaWNoIHNjaHJpZWIgZXR3YXMgYmV3dXNzdCB2b24gZ2VvLXBoeXNpa2FsaXNjaC4gV2FzIGlzdCBtaXQgZGVuCkJ1c2VuIHp3aXNjaGVuIDEvNCB1bmQgMi8zID8gCklzdCBlcyBkb3J0IG5pY2h0IGFtIHNjaG9lbnN0ZW4/IDstKQoKRGV0bGVmCgpQUy4gRGllIHNjaG9lbnN0ZSBWZXJiaW5kdW5nIHp3aXNjaGVuIHp3ZWkgUHVua3RlbiBpc3QgZGllIEt1cnZlIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE1hbCB3aWVkZXIgbmV0ZGlnZXN0Li4gKEFscGhhLCAxNS4gRGV6IDIwMDIsIDAyOjA5OjI0KToKfiMhIHJuPVJvbmRhIHJ0PTEwMzk5MTEzNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5NzY5NTM3CkltbWVyIGRpZXNlIE1hdGhlbWF0aWtlciwgbWl0IGlocmVuIEt1cnZlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVoZXZlcm1pdHRsdW5nISAoVGhhcmdvciwgMTYuIERleiAyMDAyLCAyMTo0MjoyMyk6Cn4jISBvbj1UaGFyZ29yIG90PTEwNDAwNzEzMDUgb2c9YW56ZWlnZW4KfiMhIHJuPU5pbm8gcnQ9MTA0MDA3MTE3NSByZz1hbnplaWdlbgp+IyEgdGlkPTEwNDAwNzExNzUKd2llIGthbm4gbWFuIFNlaGVyIHNlaW4gaW4gdm9lbGxpZ2VyIE1HX1Vua2VubnRuaXM/Ci4uIGRpZSBBYmt1ZXJ6dW5nIHN1Y2ggaWNoIGF1Y2ggbm9jaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFaGV2ZXJtaXR0bHVuZyEgKFZhbmlvbiwgMTYuIERleiAyMDAyLCAyMjowODo1NSk6Cn4jISBybj1UaGFyZ29yIHJ0PTEwNDAwNzEzNDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQwMDcxMTc1Cj4gL21ha2Vfc2VlciBsZXZlbCA2MApXYWl0IGEgbWludXRlIC4uLgoKViosIE1hZ2llciBtaXQgdm9lbGxpZ2VyIE1HLVVua2VubnRuaXMuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplbnRzY2hlaWRlbmUgUGhhc2UgbmFjaCBkZW0gVG9kIDopIChEYXJrd2luZywgMTcuIERleiAyMDAyLCAwMTo0Mjo0Mik6CltUb2Q6TGFyc10gU29waGllIE1hcnNoYW4gaGF0IGdlcmFkZSBXdWVobGVyIHVtZ2VicmFjaHQuCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOiAKV3VlaGxlciBzaWVodCBldHdhcyBtaXRnZW5vbW1lbiBhdXMuCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOiAKV3VlaGxlciB3aXJkIHdpZWRlciB1bmQgd2llZGVyIHNjaHdlciBnZXRyb2ZmZW4gdW5kIHN0ZWh0IGtuYXBwIGFtIEFiZ3J1bmQhCklzdCBkYXMgZGFzIEVuZGU/PwpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDogClNvcGhpZSBNYXJzaGFuIHdpcmQgZ2V0cm9mZmVuLgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDogClNvcGhpZSBNYXJzaGFuIGlzdCBzY2hvbiBzZWhyIHNjaHdlciBhbmdlc2NobGFnZW4hIERlciBLYW1wZiBnZWh0IGluIGRpZQplbnRzY2hlaWRlbmRlIFBoYXNlISEKCmhtLi4gemFlaGVyIFp3ZXJnIDo+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFaGV2ZXJtaXR0bHVuZyEgKE1vcmdvdGgsIDE3LiBEZXogMjAwMiwgMDc6NDU6NTEpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNDAwNzI5MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQwMDcxMTc1CldvaGVyIGhhc3QgZHUgdW5zZXIgU2NyaXB0PwpVbmQgZGVyIHp3ZWl0ZSBQYXJhbWV0ZXIgaXN0IGRlciBOYW1lIDopCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogc3RhdGkgc3R1dHRnYXJ0IChDYXR3ZWF6bGUsIDE3LiBEZXogMjAwMiwgMTQ6MDM6NTYpOgp+IyEgb249Q2F0d2VhemxlIG90PTEwNDAxMzAyMjggb2c9aGFyZHNvZnR3YXJlCn4jISBybj1Cb2luZyBydD0xMDQwMTI3NTU1IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwMzg3MDA4MTEKSG0sIGRhcyBBbHRlci4KRWlnZW50bGljaCBoYWV0dGUgZGVyIGphIG5hY2ggTWVnYXNjaG1hcnJuIGdlc29sbHQuLi4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2Nod2VyZXMgRWljaGhvZXJuY2hlbiAoUmFuZ29ybiwgMTguIERleiAyMDAyLCAxMzoxMToxMik6Ci4uLgogIER1IHZlcmZlaGxzdCBkZW4gRGFjaHMuCkVpbiBFaWNoaG9lcm5jaGVuIGZsaXR6dCBlaW5lbiBCYXVtIGhvY2guCkltIHZlcmxvcmVuZW4gTGFuZCBmYWVsbHQgZWluIEJhdW0gdW0uCiAgRHUgdmVyZmVobHN0IGRlbiBEYWNocy4KLi4uCgpBbHNvIEVpY2hob3JuZSBnaWJ0cyAuLi4gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpqYSBqYS4uLmRhcyBoYXQgbWFuIHZvbiBzb3dhcy4uLiAoUGF0cnluLCAxOC4gRGV6IDIwMDIsIDE1OjUxOjEzKToKb2Igd2lyIGpldHp0IHBhdGVudGdlYnVlaHJlbiBhbiBBT0wgemFobGVuIG11ZXNzZW4/IDspCmh0dHA6Ly93d3cuaGVpc2UuZGUvbmV3c3RpY2tlci9kYXRhL2Fudy0xOC4xMi4wMi0wMDIvCgotLSAKcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBNYWwgd2llZGVyIG5ldGRpZ2VzdC4uIChHcmltbWJvcm4sIDE4LiBEZXogMjAwMiwgMTk6NDE6NDMpOgp+IyEgcm49QWxwaGEgcnQ9MTAzOTkxNDU2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwMzk3Njk1MzcKVW5kIHdpZWRlciBlaW5lcjoKCkZyb206IE1pY2hhZWwgJ01pdGhpJyBDb3JkZXMgPG5ld3MtMjAwMi0xMkBkdmQtd2VsdC5kZT4KTmV3c2dyb3VwczogZGUucmVjLmZpbG0ubWlzYwpTdWJqZWN0OiBSZTogV29vZHN0b2NrLUZpbG0/CkRhdGU6IFR1ZSwgMTcgRGVjIDIwMDIgMTU6MjU6NTggKzAxMDAKTWVzc2FnZS1JRDogPHFkY3V2dW9hMWNuMDNlMzdxcWNuamlnb3EycWpjcGFxMnNAbmV3cy5kdmQtd2VsdC5kZT4KCkpvc2VmIEhhaG4gZnVlbGx0ZSBpbnNnZXNhbXQgMTIgWmVpbGVuIHUuYS4gbWl0OgoKPkljaCBzb2xsIGZ1ZXIgUGhpbG9zb3BoaWUgZXR3YXMgdWViZXIgImRlbiBXb29kc3RvY2sgRmlsbSIgaGVyYXVzZmluZGVuLCBzbwo+ZGllIEFyYmVpdHNhbndlaXN1bmcuIE51biBmcmFnZSBpY2ggbWljaCBhYmVyLCBkYXMgd2FyL2lzdCBkb2NoIHNvJ24KPkZlc3RpdmFsLCBzb3dhcyB3aWUgUm9jayBhbSBSaW5nLCBvZGVyPwoKQnVodWh1IC4uLiA4KAoKIkljaCBzb2xsIHdhcyB1ZWJlciBMZW9uYXJkbyBEYVZpbmNpIHJhdXNmaW5kZW4sIGRhcyBpc3QgZG9jaCBzbyduClplaWNobmVyIHdpZSBCcm9lc2VsLCBvZGVyPyIKCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBOZXVlIFdlbHR3dW5kZXIgKExpYXJhLCAyMC4gRGV6IDIwMDIsIDIwOjIxOjI2KToKfiMhIHJuPUZvb2JhciBydD0xMDQwNDExNTA0IHJnPXd3dwp+IyEgdGlkPTEwNDAzNjkzNDkKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGZvb2JpIHZvciBub2NoIGVpbiBidW5ueSA7KQpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogYWVoIC4uLiBlZ2FsIDopCkRlaW4gRnJldW5kIEZvb2JhciB3YWNrZWx0IGluIGRlciBGZXJuZSBtaXQgc2VpbmVtIFB1c2NoZWxzY2h3YWVuemNoZW4uIApEZWluIEZyZXVuZCBEb3R6IHRlaWx0IERpciBtaXQ6IGZvb2JpIGxpZXNzdCBiZXN0aW1tdCBoZWltbGljaCBkZW4gcGxheWR3YXJmCkRlaW4gRnJldW5kIERvdHogdGVpbHQgRGlyIG1pdDogOl4pCkRlaW5lIEZyZXVuZGluIEFzdWthIHRlaWx0IERpciBtaXQ6IGVyIGd1Y2t0IHNpY2ggYmlsZGVyIHZvbiBzdGVpbmVuIGFuPwpMaWFyYSBtdXN0ZXJ0IEFzdWthIGF1cyBkZXIgRmVybmUuIApEZWluIEZyZXVuZCBGb29iYXIgdGVpbHQgRGlyIG1pdDogTmVlLCB2b24gbmFja3RlbiBad2VyZ2lubmVuIDpvKQpEZWluIEZyZXVuZCBEb3R6IHRlaWx0IERpciBtaXQ6IHZvbiBzdGVpbmVuIG1pdCBnb2xkYWRlcm4gZHJpbiA6XikKTGlhcmEgbXVzdGVydCBEb3R6IGF1cyBkZXIgRmVybmUuIApEZWluIEZyZXVuZCBGb29iYXIgdGVpbHQgRGlyIG1pdDogVW5kIEJpZXJmYWVzc2VyIDpvKQpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiBuYWNrdGUgQmllcmZhZXNzZXI/CkxpYXJhIG11c3RlcnQgRm9vYmkgYXVzIGRlciBGZXJuZS4gCkxpYXJhIG11c3RlcnQgQXN1a2EgZXh0cmVtIHZlcnd1bmRlcnQgYXVzIGRlciBGZXJuZS4gCkRlaW4gRnJldW5kIERvdHogaXN0IG5pY2h0IGdlbXVzdGVydCBpbiBkZXIgRmVybmUuIApEZWluIEZyZXVuZCBGb29iYXIgdGVpbHQgRGlyIG1pdDogSmVkZW5mYWxscyBoYWJlbiBad2VyZ2lubmVuIHVuZCBCaWVyZmFlc3NlcgpEZWluIEZyZXVuZCBGb29iYXIgdGVpbHQgRGlyIG1pdDogYWVobmxpY2hlIEZpZ3VyZW4gO28pCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBhZWggd2FzIGhhc3QgZHUgZ2VzYWd0PyA6KQpEZWluIEZyZXVuZCBGb29iYXIgdGVpbHQgRGlyIG1pdDogT2ggc2NoZWlzc2UsIExpYXJhIGlzdCBqYSBub2NoIGRhICEhISA7bykKRGVpbmUgRnJldW5kaW4gQXN1a2EgdGVpbHQgRGlyIG1pdDogYWxzbyBzaW5kIEJpZXJmYWVzc2VyIHNvIG5lIEFydCBHdW1taXB1cHBlCkRlaW5lIEZyZXVuZGluIEFzdWthIHRlaWx0IERpciBtaXQ6IGZ1ZXIgWndlcmdlPwpEZWluIEZyZXVuZCBEb3R6IGxlaG50IHNpY2ggamV0enQgbWFsIGdlbnVlc3NsaWNoIGluIGRlciBGZXJuZSB6dXJ1ZWNrLiAKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IHdpZWRlcmhvbGUgZGFzIGRvY2ggbm9jaG1hIGJpZGRlCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBmb29iYXJzY2huYWV1dHpjaGVsY2hlbgpEZWluIEZyZXVuZCBGb29iYXIgdGVpbHQgRGlyIG1pdDogV2FoIQpEZWluIEZyZXVuZCBGb29iYXIgdGVpbHQgRGlyIG1pdDogV2llIGtvbW1lIGljaCBibG9zcyBhdXMgZGllc2VyIE51bW1lciByYXVzPwpEZWluIEZyZXVuZCBGb29iYXIgdGVpbHQgRGlyIG1pdDogOm8pCkxpYXJhIHdhcnRldCBnZXNwYW5udCBhdXMgZGVyIEZlcm5lLiAKRGVpbiBGcmV1bmQgRG90eiB0ZWlsdCBEaXIgbWl0OiBzYWcgZWluZmFjaCwgZHUgaGFldHRlc3QgZ2FueiBiZXNvbmRlcmUKRGVpbiBGcmV1bmQgRG90eiB0ZWlsdCBEaXIgbWl0OiBiaWVyZmFlc3NlciA6XikKRGVpbiBGcmV1bmQgRm9vYmFyIHRlaWx0IERpciBtaXQ6IEFsc28sIHdlbm4gaWNoIG5lIG5hY2t0ZSBad2VyZ2luIHNlaGUgbGFldWZ0CkRlaW4gRnJldW5kIEZvb2JhciB0ZWlsdCBEaXIgbWl0OiBtaXIgZ2VuYXVzbyBkYXMgV2Fzc2VyIGltIE11bmQgenVzYW1tZW4gd2llCkRlaW4gRnJldW5kIEZvb2JhciB0ZWlsdCBEaXIgbWl0OiB3ZW5uIGljaCBlaW4gQmllcmZhc3Mgc2VoZSA6bykKRGVpbiBGcmV1bmQgRm9vYmFyIHRlaWx0IERpciBtaXQ6IEVpbiB2b2xsZXMuCgpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiB3ZXJkZW4ga2xlaW5lIFp3ZXJnZSBlaWdlbnRsaWNoIGF1cyBkZW0KRGVpbmUgRnJldW5kaW4gQXN1a2EgdGVpbHQgRGlyIG1pdDogRmVscyBnZWhhdWVuPwpEZWluIEZyZXVuZCBGb29iYXIgdGVpbHQgRGlyIG1pdDogSmEuCkRlaW4gRnJldW5kIEZvb2JhciB0ZWlsdCBEaXIgbWl0OiBBdXMgRXJ6LCB1bSBnZW5hdSB6dSBzZWluLgpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiB1bmQgd2llIGtvbW1lbiBkaWUgZGEgcmVpbj8gQWxzbyBpY2ggbWVpbgpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiBpaHIgc2NobmFwcHQgZXVjaCBkb2NoIHNpY2hlciBuaWNodApEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiBpcmdlbmRlaW5lbiBTcGFsdCBpbSBGZWxzIHNvIHdpZSBzaWNoCkRlaW5lIEZyZXVuZGluIEFzdWthIHRlaWx0IERpciBtaXQ6IEVsZmVuIGRpZSBBc3Rsb2VjaGVyIHNjaG5hcHBlbgpEZWluIEZyZXVuZCBGb29iYXIgdGVpbHQgRGlyIG1pdDogRGllIHNpbmQgZGEgc2Nob24gaW1tZXIgZHJpbiBnZXdlc2VuLCBBc3VrYS4KRGVpbmUgRnJldW5kaW4gQXN1a2EgdGVpbHQgRGlyIG1pdDogZGFubiBmcmFnIGljaCBtaWNoIGpldHp0LCB3ZXIgZGVuIGVyc3RlbgpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiBad2VyZyBkYSByYXVzZ2VzY2hsYWdlbiBoYXQKRGVpbmUgRnJldW5kaW4gQXN1a2EgdGVpbHQgRGlyIG1pdDogaWNoIG1laW4sIHdlciBrb21tdCBhdWYgc28gZWluZSB2ZXJydWVja3RlCkRlaW5lIEZyZXVuZGluIEFzdWthIHRlaWx0IERpciBtaXQ6IElkZWU/IDopCkRlaW4gRnJldW5kIEZvb2JhciB0ZWlsdCBEaXIgbWl0OiBIZW5uZS4gRWkuCgpMaWFyYSwgaGF0IHNvZ2FyIG5vY2h3YXMgdWViZXIgWndlcmdlIGdlbGVybnQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNYWwgd2llZGVyIG5ldGRpZ2VzdC4uIChNYWFyZywgMjEuIERleiAyMDAyLCAxOTozMzo0Mik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0MDIzNjkwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwMzk3Njk1MzcKIEZyb206IEpvaGFubmVzIFNjaHdhcnogPGhhbm5lcy5zY2h3YXJ6QGZyZWVuZXQuZGU+CiBTdWJqZWN0OiAwMDcgdnMuIEJpZyBHCiBOZXdzZ3JvdXBzOiBkZS5yZWMuZmlsbS5taXNjCiBEYXRlOiBUaHUsIDE5IERlYyAyMDAyIDA5OjIzOjM4ICswMTAwCiBNZXNzYWdlLUlEOiA8M0UwMTgyMEEuNzA0MDgwNEBmcmVlbmV0LmRlPgoKIEhhbGxvIGxpZWJlIEdlbWVpbmRlLAoKIGRlciBiZWxpZWJ0ZXN0ZSBBZ2VudCBkZXIgRmlsbXdlbHQgaGF0IGdlcmFkZSBzZWluZW4gMjAuIChqYSwgaWNoIHdlaXNzISkKIExlaW53YW5kYXVmdHJpdHQgaGludGVyIHNpY2ggZ2VicmFjaHQgLSBlaW5lIExlaXN0dW5nLCBkaWUgaW4gZGVyCiBrdXJ6bGViaWdlbiBNb2Rlcm5lIGRvY2ggQmVhY2h0dW5nIGZpbmRlbiBzb2xsdGUuIEdpYnQgZXMgdWViZXJoYXVwdAogZWluZW4gd2VpdGVyZW4gU2VyaWVuaGVsZGVuLCBkZXIgdWViZXIgSmFocmUgaGlud2VnIHp3YXIgQW5wYXNzdW5nZW4gYW4KIGRlbiBaZWl0Z2Vpc3QgZXJmdWhyLCBqZWRvY2ggZ3J1bmRzYWV0emxpY2hlIEVsZW1lbnRlIHNvd2llCiBDaGFyYWt0ZXJpc3Rpa2VuIGJlaWJlaGllbHQgdW5kIGVpbmVuIHZlcmdsZWljaGJhcmVuIEVyZm9sZyBiZWltCiBQdWJsaWt1bSBoYXQ/CiBBdXMgRmVybm9zdCBlcnRvZW50IGVpbiBkaWVzZSBGcmFnZSBlaW5kZXV0aWcgYmVqYWVuZGVzICpHUk9BUiouIERlcgogR3Jvc3NlIEdydWVuZSwgZGVyIGRlbiB3b2hsa2xpbmdlbmRlbiBOYW1lbiAiR29qaXJhIiAoaW4gZGVyIHdlc3RsaWNoZW4KIFdlbHQgIkdvZHppbGxhIikgdHJhZWd0LCBrYW5uIGF1ZiBlaW5lIGFlaG5saWNoIGJlZWluZHJ1Y2tlbmRlIEthcnJpZXJlCiB3aWUgQm9uZCB6dXJ1ZWNrYmxpY2tlbi4gWmVpdCBmdWVyIGRlbiB1bHRpbWF0aXZlbiBIZWxkZW4tVmVyZ2xlaWNoIQoKIExhbmdsZWJpZ2tlaXQKIFNlaXQgMTk2MiB2ZXJkaW5ndCBzaWNoIG51biBCb25kIGltIERpZW5zdGUgaWhyZXIgTWFqZXN0YWV0LiAyMAogb2ZmaXppZWxsZSBzb3dpZSAyIG5lYmVuc2FlY2hsaWNoZSAoIk5ldmVyIHNheSBuZXZlciBhZ2FpbiIgdW5kICJDYXNpbm8KIFJveWFsZSIpIEFiZW50ZXVlciBoYXQgZXIgaW4gZGllc2VuIEphaHJlbiBoaW50ZXIgc2ljaCBnZWJyYWNodC4gU2Vpbgogdm9uIG1lbnNjaGxpY2hlbiBJbnN0aXR1dGlvbmVuIChzaWVodCBtYW4gdm9uIHNlaW5lciBFaHJlbm1pdGdsaWVkc2NoYWZ0CiBpbiBkZXIgVmVyZWluaWd1bmcgZGVyIEJhdXVudGVybmVobWVuIEphcGFucyBhYikgdW5hYmhhZW5naWcgb3BlcmllcmVuZGVyCiBLb25rdXJyZW50IEdvamlyYSAgaXN0IGJlcmVpdHMgc2VpdCAxOTU3IGluIGluc2dlc2FtdCAyNiBqYXBhbmlzY2hlbgogRXBpc29kZW4gc293aWUgMSBhbWVyaWthbmlzY2hlbSBBYmxlZ2VyIGFrdGl2LiBCb25kIGhhdCBrbGFyIGRhcwogTmFjaHNlaGVuLgoKIFdhZmZlbgogV2ljaHRpZ2UgVXRlbnNpbGllbiBiZWkgamVkZW0gQm9uZCBzaW5kIGVpbmUgVmllbHphaGwgdm9uIFdhZmZlbiB3aWUKIFJha2V0ZW53ZXJmZXIgaW0gQXV0byBvZGVyIGV4cGxvZGllcmVuZGUgS3VnZWxzY2hyZWliZXIuIEdvamlyYSBoYXQKIHNvbGNoZSBNYWV0emNoZW4gbmljaHQgbm9ldGlnLiBTZWluIHJhZGlvYWt0aXZlciBGZXVlcnN0cmFobCBnZWhvZXJ0IHp1cgogU2VyaWVuYXVzc3RhdHR1bmc7IHN0YXR0IEZlcm5iZWthZW1wZnVuZyBkZXMgR2VnbmVycyB3YWVobHQgZXIgZGllCiBzdWJ0aWxlcmUgTWV0aG9kZSB1bmQgaGF1dCBpaG5lbiBkaXJla3QgYXVmIGRpZSBTY2huYXV6ZSwgYmlzIGRpZXNlIGRlbgogQWJzY2hpZWQgZWlucmVpY2hlbi4gQmlzIGF1ZiBSaWVzZW5tb3R0ZSBNb3RocmEsIGRlcmVuIERlc2lnbiBlaW5lbQogTFNELVRyaXAgZW50c3RhbW1lbiBtdXNzLCBoYXQgZXIgbWl0IGRpZXNlciBUYWt0aWsgYmlzaGVyIGplZGVuCiBXaWRlcnNhY2hlciB3ZWdnZXB1c3RldCAoYWJlciBlaHJsaWNoOiBNb3RocmEgaXN0IGFic29sdXQgdW5mYWlyLCBoYXQKIHNpZSBkb2NoIGltbWVyIGRpZXNlIGJlaWRlbiBzdGV0cyBnbGVpY2h6ZWl0aWcgYmFiYmVsbmRlbiBad2VyZ2VudHVzc2lzCiBpbiBpaHJlciBOYWVoZSwgZGllIGltbWVyIGRhbm4sIHdlbm4gZXMgZWlnZW50bGljaCBuaWNodCBtZWhyIGFic3VyZGVyCiB3ZXJkZW4ga2FubiwgYW5mYW5nZW4genUgc2luZ2VuLCBiaXMgbWFuIGdsYXVidCwgbWFuIGhhZXR0ZSBkaWUKIEVpbndlaXN1bmcgc2Nob24gaGludGVyIHNpY2guIERhcyBoYWVsdCBzZWxic3QgQmlnIEcgbmljaHQgYXVzIHVuZAogd2luc2VsdCB1bSBHbmFkZSkuCgogR2VnbmVyCiBEaWUgdHlwaXNjaGVuIEJvbmQtR2VnZW5zcGllbGVyIHNpbmQgZWluIHN0aW5rcmVpY2hlciBNZWdhbG9tYW5lIHNvd2llCiBkZXNzZW4gbWVpc3QgbmV1cm90aXNjaCBhZ2llcmVuZGUgTG9obmtyYWVmdGUgKGRpZSBsZWlkZXIga2VpbmUgdG90YWwKIGJlc2NoZXVlcnRlbiBMaWVkY2hlbiB0cmFlbGxlcm4pLiBJbSBHZWdlbnNhdHogenUgZXR3YSBLaW5nIEdoaWRvcmFoCiBoYWJlbiBzaWUgbnVyIGVpbmVuIEtvcGYgLCBiZXN0ZWhlbiBuaWNodCB3aWUgTWVjaGFnb2ppcmEgYXVzIE1ldGFsbAogb2RlciBoYWJlbiB3aWUgR2lnYW4gZWluZSBLcmVpc3NhZWdlIGltIEJhdWNoLiBTY2hpbGxlcm5kZSBHZXN0YWx0ZW4gd2llCiBkYXMgZ2lmdGdhc2ZsYXR1bGllcmVuZGUgVW13ZWx0bW9uc3RlciBIeWRyb3ggc3VjaHQgbWFuIHZlcmdlYmxpY2g7CiBnZW5hdXNvIGhhdCBlcyBCb25kIG5vY2ggbmllIG1pdCBlaW5lbSBtdXRpZXJ0ZW4gS2xvbiBzZWluZXIgc2VsYnN0ICB3aWUKIGV0d2EgU3BhY2Vnb2ppcmEgYXVmbmVobWVuIG11ZXNzZW4uIEJvbmRzIEdlZ25lciBrb2VubmVuIG5pY2h0IGVpbm1hbCBhdXMKIGVpZ2VuZXIgS3JhZnQgZmxpZWdlbiwgc2luZCB3ZW5pZ2VyIHdpZGVyc3RhbmRzZmFlaGlnIHVuZCB0ZWlsZW4gc2ljaAogYXVjaCBuaWNodCEgTGVkaWdsaWNoIEdlcmQgRnJvZWJlIGtvbm50ZSBhdWZncnVuZCBzZWluZXIgTWFzc2UgbWl0IGRlbQogdHlwaXNjaGVuIEdvamlyYS1Lb21iYXRhbnRlbiBtaXRoYWx0ZW4uCgogUGF0cmlvdGlzbXVzCiBCb25kIGlzdCBlaW4gYWx0ZXMgQ2hhdXZpbmlzdGVuc2Nod2VpbiwgZGVtIEVuZ2xhbmQgdWViZXIgYWxsZXMgZ2VodC4KIEdvamlyYXMgVHJldWUgenUgSmFwYW4gYmVzdGVodCBkYXJpbiwgZGFzcyBlciBiaXMgYXVmIGVpbmUgQXVzbmFobWUgc3RldHMKIGF1c2dld2FlaGx0ZSBTdGFlZHRlIHNlaW5lcyBIZWltYXRsYW5kZXMgenUgS2x1bXAgaGF1dC4gRXMgZ2FiIFplaXRlbiwgZGEKIGhpZWx0IGVyIHRhdHNhZWNobGljaCB6dSBkZW4gTWVuc2NoZW4gKHdhcyBpaG4gZ2x1ZWNrbGljaGVyd2Vpc2UgbmljaHQKIGRhdm9uIGFiaGllbHQsIHdlaXRlcmhpbiBhbHMgd2FuZGVsbmRlIEFicmlzc2Jpcm5lIHp1IGZ1bmdpZXJlbikgdW5kCiB2ZXJwcnVlZ2VsdGUgZGFzIGFuZ3JlaWZlbmRlIE1vbnN0ZXJnZXNvY2tzIG5pY2h0IG51ciB6dW0gU3Bhc3MuIE1pdAogZGllc2VyICc2OGVyLUF0dGl0dWRlIGhhdCBlciBtaXR0bGVyd2VpbGUgYWJnZXNjaGxvc3NlbjsgVW13ZWx0c2NodXR6CiB1bmQgUGVhY2UtTG92ZS1IYXJtb255IHNpbmQgbmljaHQgbWVociBzbyBzZWluIERpbmcuIEdlcnVlY2h0ZW4genVmb2xnZQogbGVobnRlIGVyIGF1Y2ggZGFzIEFuZ2Vib3Qgdm9uIEcuIFcuIEJ1c2gsIGlobiBpbSBBbnRpLVRlcnJvci1LcmllZyB6dQogdW50ZXJzdHVldHplbiwgYWJmYWVsbGlnIHNjaHdhbnp3ZWRlbG5kIGFiLgoKIE1hZW5ubGljaGtlaXQKIEJvbmQgaXN0IGRlciBzdGV0cyBwYXNzZW5kIHVuZCBlbGVnYW50IGdla2xlaWRldGUsIHdvaGxlcnpvZ2VuZSB1bmQKIHdlbHRnZXdhbmR0ZSBNYWNobywgZGVyIG1pdCBDaGFybWUgdW5kIGd1dGVtIEF1c3NlaGVuIGRpZSBEYW1lbndlbHQKIGRhaGluc2NobWVsemVuIGxhZXNzdCB1bmQgZGllIE1hZW5uZXIgbmVpZGlzY2ggbWFjaHQuIEdvamlyYSBoaW5nZWdlbiBpc3QKIGVzIHNjaGVpc3NlZ2FsLCB3aWUgZXIgYXVzc2llaHQgb2RlciB3aWUgZXIgYW5rb21tdC4gRXIgbGllYnQgc2VpbmUKIFVuYWJoYWVuZ2lna2VpdCwgc2NobGFlZnQgc2Nob24gbWFsIGphaHJlbGFuZyB1bmQga3VlbW1lcnQgc2ljaCBlaW5lbiBEcmVjawogdW0gc2VpbmVuIE11bmRnZXJ1Y2guIFZvbiB2ZXJsb2dlbmVuIE1hbmllcmlzbWVuIGhhZWx0IGVyIGdlbmF1IGdhcgogbmljaHRzOyBlciBsZWJ0IHNlaW5lIEVtb3Rpb25lbiB2b2xsIGF1cy4gRWluZW4gQm9uZCB3dWVyZGUgZXIgZ2VydWV0dGVsdAogKG5pY2h0IGdlc2NodWV0dGVsdCkgenVtIEZydWVoc3R1ZWNrIHZlcnNwZWlzZW4uIFNvdmllbCBNYWVubmxpY2hrZWl0IGJsZWlidAogbmF0dWVybGljaCBuaWNodCB1bmJlbWVya3QsIHVuZCBzbyB2ZXJzdWNodGVuIHNpY2ggaW4gZGVuIDgwZXJuIHZvcnJhbmdpZwogU3RhbGxvbmUsIFNjaHdhcnplbmVnZ2VyIHVuZCB2YW4gRGFtbWUgYW4gZWluZXIgSW1pdGF0aW9uLCBzY2hlaXRlcnRldGVuCiBhYmVyIGtsYWVnbGljaCwgd2VpbCBzaWUgd2VkZXIgR29qaXJhcyBtaW1pc2NoZSBBdXNkcnVja3N0YWVya2Ugbm9jaAogQXVzc2VoZW4gb2RlciBnYXIgc2VpbiBDaGFyaXNtYSBtaXRicmFjaHRlbiAtIGxlZGlnbGljaCBzZWluIFNwcmFjaHN0aWwKIHd1cmRlIG1laHIgb2RlciB3ZW5pZ2VyIGd1dCBnZXRyb2ZmZW4uCgogWmVyc3RvZXJ1bmcKIEJvbmQga2FubiBzaWNoIG5vY2ggc28gc2VociBiZW11ZWhlbjogU292aWVsIHdpZSBHb2ppcmEgYWNoc2VsenVja2VuZCBtaXQKIGVpbmVyIGJlaWxhZXVmaWdlbiBTY2h3YW56YmV3ZWd1bmcga2FwdXR0bWFjaHQsIGthbm4gZXIgaW4gd2VpdGVyZW4gMTAwCiBGaWxtZW4gbmljaHQgYXVmaG9sZW4uIFVlYmVyIFBhbnplcmZhaHJ0ZW4gd2llIGluICJUb21vcnJvdyBuZXZlciBkaWVzIgoga2FubiBkZXIgR3Jvc3NlIEdydWVuZSBudXIgbXVlZGUgbGFlY2hlbG4gdW5kIHdhZWx6dCBzaWNoIGFscyBBbnR3b3J0IGR1cmNoCiBkaWUgVG9reW9lciBJbm5lbnN0YWR0LCBkYXNzIGVzIG51ciBzbyBrcmFjaHQsIHdhZWhyZW5kIGVyIG5lYmVuYmVpCiBhbmdyZWlmZW5kZSBGbHVnemV1Z2UgZW50c29yZ3QgdW5kIGVpbiBwYWFyIFBhbnplciB6dSBBbHRtZXRhbGwKIHZlcmFyYmVpdGV0LiAqR1JPQVIqIQoKIFNleAogQm9uZCB2b2VnZWx0IHNpY2ggZHVyY2ggYWxsZSBOYXRpb25lbi4gRXIgYmVrb21tdCBzaWUgYWxsZSAtIHVuZCBlcndlaXN0CiBzaWNoIGFscyBuaWNodCBzb25kZXJsaWNoIHdhZWhsZXJpc2NoLiBOZWJlbiB3YWhyZW4gS2xhc3NlZnJhdWVuCiAoU29waGllISkgdW5kIE9zY2FycHJlaXN0cmFlZ2VyaW5uZW4gKEJlcnJ5KSBiYWVuZGVsdCBlciBvZnQgZ2VudWcgbWl0CiBTdGFybGV0cywgZGllIGZvcnRhbiBpaHIga2luZW1hdG9ncmFwaGlzY2hlcyBEYXNlaW4gaW4gYmlsbGlnZW4KIFNjaHVuZGZpbG1lbiBmcmlzdGVuIChBbmRyZXNzKSBvZGVyIFRWLVR1c3NpZXMgKFNleW1vdXIsIFJpZ2dzKSBhbi4KIEVpbm1hbCBsYW5kZXRlIGVyIGdhciBtaXQgZWluZXIgR3VtbWlwdXBwZSAoUmljaGFyZHMpIGltIEJldHQuIERlcgogSG9iYnlwc3ljaG9sb2dlIHdlaXNzIG5hdHVlcmxpY2ggc29mb3J0LCBkYXNzIEJvbmQgbWl0IHNlaW5lbiBlcm90aXNjaGVuCiBFc2thcGFkZW4gbGVkaWdsaWNoIHNlaW5lIEJpbmR1bmdzYW5nc3Qgc293aWUgTWluZGVyd2VydGlna2VpdHNrb21wbGV4ZQoga29tcGVuc2llcnQuCiBHb2ppcmEgaGF0IGtlaW5lbiBTZXguIFdlbm4gZXIgTHVzdCBhdWYgVmVybWVocnVuZyB2ZXJzcHVlcnQsIGthY2t0IGVyCiBlaW5mYWNoIGVpbiBFaSBhdXMgdW5kIGVyZnJldXQgc2ljaCBiYWxkIGFtIE5hY2h3dWNocy4gU29taXQgaXN0IGVyIGRlbQogdHJpZWJnZXN0ZXVlcnRlbiBCb25kIGtsYXIgdWViZXJsZWdlbiwgZGVyIHdpZWRlciBtYWwgZGVuIGt1ZXJ6ZXJlbiBoYXQuLi4KIGFlaC4uLiB6aWVodC4KCiBGYXppdDogRGFzIEVyZ2VibmlzIHZvbiA3OjAgZnVlciBHb2ppcmEgc3RlaHQgZnVlciBzaWNoLiBHZWdlbiBkaWVzZW4KIFVudGVyaGFsdHVuZ3NyaWVzZW4gaXN0IEJvbmQgbnVyIGVpbmUgc2NobGFwcGUgTGFjaG51bW1lci4gU3RhdHQgZWluZXIKICJKYW1lcy1Cb25kLU1vbnN0ZXItQm94IiAoZGVyIEF1c2RydWNrICJNb25zdGVyIiBzb2xsIHdvaGwgc3VnZ2VyaWVyZW4sCiBkYXNzIG1hbiBkZW0gR3Jvc3NlbiBHcnVlbmVuIG5haGVrb21tdCkgc29sbHRlIG1hbiBlaW5lIGRlbSBLbnVkZGVsLVZpZWNoCiB3dWVyZGlnZSBSZXRyb3NwZWt0aXZlIGF1ZiBkZW4gTWFya3Qgd2VyZmVuIC0gdmVyZGllbnQgaGFldHRlIGVyIGVzLiBJY2gKIGdlaGUgamV0enQgbWVpbmUgbXVlaHNhbSBhdWZnZWJhdXRlIE1pbmlhdHVyLVN0YWR0IHBsYXR0cmFtcGVsbiEKCiBHcnVlc3NlIGF1cyBkZW0gR3VtbWlhbnp1ZwogSGFubmVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTWFsIHdpZWRlciBuZXRkaWdlc3QuLiAoVmFuaW9uLCAyMS4gRGV6IDIwMDIsIDE5OjQxOjU4KToKfiMhIHJuPU1hYXJnIHJ0PTEwNDA0OTU2MjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDM5NzY5NTM3CkhlcnJsaWNoLiBIYW5uZXMgaGF0IGphIHNvb29vIHJlY2h0IDopCgpWKiwgR29qaXJhIHNhbWEsIGdhbWJhcmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIDspIChMaWFyYSwgMjEuIERleiAyMDAyLCAyMzo0MDo0Nik6CndlZ21lbGR1bmcgc3BlbGxmaXJlClNwZWxsZmlyZSBpc3QgYWxzIGFid2VzZW5kIGdla2VubnplaWNobmV0LgpHcnVuZDogdG9kZSBhbmlkZWxuCgpHcnVlc3NlLCBMaWFyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVm9yYWhudW5nIChEZWVwYmx1ZSwgMjIuIERleiAyMDAyLCAxMToyNToxOSk6ClZvbiBNaWthZ2U6IG1hY2ggbWFsIHRvZCBhbiA6bykgbWFuIHdlaXNzIGphIG5pY2h0CndlbmlnIHNwYWV0ZXI6CltUb2Q6TGFyc10gRWluIGdyaW1taWdlciBIb2VobGVudHJvbGwgaGF0IGdlcmFkZSBNaWthZ2UgdW1nZWJyYWNodC4KW1RvZDpFaW4gZ3JpbW1pZ2VyIEhvZWhsZW50cm9sbF0gTWF0c2NoZW4hIEhhciBIYXIhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXJ1bSBpY2ggV2VpaG5hY2h0ZW4gaGFzc2UgKFN1bmZsb3dlciwgMjMuIERleiAyMDAyLCAwOTo0OTo0NCk6Cn4jISBvbj1TdW5mbG93ZXIgb3Q9MTA0MDYzMjY0MCBvZz1tZWdhc2NobWFycm4KMS4gV2VpbCBlcyBkYXMgRmVzdCBkZXIgSGllYmUgaXN0LCB1bmQgaWNoIG1pciBzY2hvbiBzbyBvZnQgZ2VudWcgZGFzCktpbmRlcmdlcGxhZXJyZSB1bmQgc2NocmVpZW5kZSBFbHRlcm4gYW5ob2VyZW4gbXVzcy4KMi4gV2VpbCBlcyBtaWNoIG5pY2h0IGludGVyZXNzaWVydCBvYiBudW4gZGEgdm9yIDIwMDMgSmFocmVuIHNvIGVpbiBEZXBwCmdlYm9yZW4gaXN0LCBoYWV0dGVuIGRpZSBvcmRlbnRsaWNoIHZlcmh1ZXRldCB3YWVyZSBzb3dhcyBuaWNodCBwYXNzaWVydC4KMy4gRGllIFdlaWhuYWNodHNiYWV1bWUgaWhyZSBOYWRlbG4gaW1tZXIgc28gdG9sbCBpbiBkZXIgV29obnVuZyB2ZXJzdHJldWVuCmRhcyBpY2ggZGllIE5hZGVsbiBnYXJhbnRpZXJ0IG5vY2ggaW0gU29tbWVyIGZpbmRlbiB3ZXJkZS4KNC4gRGllIEdlc2NoZW5rZSBzbyBBcnNjaCB0ZXVlciBzaW5kCjUuIERpZSBMZXV0ZSBkZW5rZW4sIGRhcyBpbiBkZW4gMiBGZWllcnRhZ2VuIHNvdmllbCBwYXNzaWVyZW4gd2lyZCwgZGFzIHNpZQpIYW1zdGVyZWlua2FldWZlIG1hY2hlbiB1bmQgaWNoIHdlZ2VuIGVpbmVyIFNjaGFjaHRlbCBLaXBwZW4gc3R1bmRlbmxhbmcKYW5zdGVoZW4gbXVzcwo2LiBEaWUgS29uc3VtZ2VzZWxsc2NoYWZ0IGltbWVyIG1laHIgR2VsZCBhdXNnaWJ0ICh3YXJ1bSBqYW1tZXJuIGVpZ2VudGxpY2gKZGllIEhhZW5kbGVyIHVuZCBkaWUgV2Vya3RhZXRpZ2VuIGRhcyBzaWUga2VpbiBHZWxkIGhhYmVuPywgd2VubiBpY2ggc2VoZSB3YXMKZGllIExldXRlIGF1c2dlYmVuLi4uKQo3LiBEaWVzZXMgSmFociBkaWUgTGV1dGUgYXVjaCBub2NoIHJ1bWphbW1lcm4gd2VnZW4gZGVyIEZsdXQsIG1hbmNoIGVpbmVyCndlaXNzIGdhcm5pY2h0IHdpZSBrb3N0YmFyIGRhcyBlaWdlbmUgTGViZW4gaXN0LCBuZWluIGRhIHdpcmQgZ2VqYW1tZXJ0IHdlZ2VuCmRlciBzY2hvZW5lbiBNb2ViZWwgdW5kIGRlbiBzYXV0ZXVyZW4gS2xhbW90dGVuLi4udHN0c3RzCjguIEljaCBXZWlobmFjaHRzbXVzaWsgaGFzc2UuLi4odW5kIGRpZXNlcyAiRHJpdmluZyBob21lIGZvciBjaHJpc21hcycgdW5kCmtvbnNvcnRlbiBrYW5uIGljaCBuaWNodCBtZWhyIGhvZXJlbikKOS4gSW1tZXIgd2VubiBlcyBXZWlobmFjaHRlbiBpc3QsIG5pY2h0IHNjaG5laXQgc29uZGVybiByZWduZXQgdW5kIGVzIGFyc2NoCmdsYXR0IGRyYXVzc2VuIGlzdAoxMC4gRXMgaW1tZXIgZGllc2UgZ2VzcGllbHRlIChOYWVjaHN0ZW4pbGllYmUgZ2lidCB1bmQgbWFuIHNpY2ggbWl0IGRlcgonc2NoZWlzcyd2ZXJ3YW5kdHNjaGFmdCBhYmdlYmVuIG11c3MKMTEuIFVuZCBtaXIgaGV1dGUgc28gbmUgZHVtbWUgVHVzc2UgZnVlciBpaHIgS2luZCBkYXMgbGV0enRlICdIZXJyIGRlcgpSaW5nZS1zcGVjaWFsLXVlLWVpLXNvcnRpbWVudCAoZnVlciA1IGV1cm9zKSkgdm9yIGRlciBOYXNlIHdlZ2dlc2NobmFwcHQgaGF0LgoKMTIuIFVuZCBpY2ggZGVuIFNwcnVjaCBmcm9oZXMgRmVzdCBuaWNodCBtZWhyIGhvZXJlbiBrYW5uLgotLS0tCk1hbmNobWFsIGthbm4gaWNoIGluIGVpbmVtIHZlcnRyYXV0ZW4gR2VzaWNodCAKbmljaHRzIHdlaXRlciBlcmtlbm5lbiwgYWxzIGRpZSBTcHVyZW4KZGllIGRlciBUb2QgZGFyaW4gaGludGVybGFzc2VuIHdpcmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhcnVtIGljaCBXZWlobmFjaHRlbiBoYXNzZSAoU3VuZmxvd2VyLCAyMy4gRGV6IDIwMDIsIDA5OjUwOjA2KToKfiMhIG9uPVN1bmZsb3dlciBvdD0xMDQwNjMzMjI5IG9nPW1lZ2FzY2htYXJybgp+IyEgcm49VmFuaW9uIHJ0PTEwNDA2MzMxMDMgcmc9bWVnYXNjaG1hcnJuCn4jISB0aWQ9MTA0MDYzMjY0MApuaWNodCBzbyBlaW4gYmlsbGlnZXMgbWl0IHNjaG9rb2xhZGUsIHNvbmRlcm4gYWxsZSBmaWd1cmVuLCBkYXp1IG5vY2ggZWluCmJyZXR0c3BpZWwgdW5kIDIgdWViZXJyYXNjaHVuZ2VuIDspCi0tLS0KTWFuY2htYWwga2FubiBpY2ggaW4gZWluZW0gdmVydHJhdXRlbiBHZXNpY2h0IApuaWNodHMgd2VpdGVyIGVya2VubmVuLCBhbHMgZGllIFNwdXJlbgpkaWUgZGVyIFRvZCBkYXJpbiBoaW50ZXJsYXNzZW4gd2lyZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXJ1bSBpY2ggV2VpaG5hY2h0ZW4gaGFzc2UgKFZhbmlvbiwgMjMuIERleiAyMDAyLCAwOTo1MDozNik6Cn4jISBybj1TdW5mbG93ZXIgcnQ9MTA0MDYzMzM4NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDA2MzMzODQKVmllbCBadXN0aW1tdW5nLCBhdXNzZXI6CjUpIElpaWlpaCwgS2lwcGVuLiBLYXVmIGxpZWJlciBTY2huYXBzLgo3KSBJcyBsZWljaHQgZ2VzYWd0LCB3ZW5uIGRpZSBlaWdlbmVuIHNhdXRldXJlbiBNb2ViZWwgaW0gVHJvY2tlbmVuIHN0ZWhlbi4KICAgV2VubiBtZWluIFZhdGVyIHNlaW4gSGF1cyB2ZXJsaWVyZW4gd3VlcmRlLCBpbiBkYXMgZXIgc2VpdCBmYXN0IDIwIEphaHJlbgogICBzZWluIEhlcnpibHV0IHN0ZWNrdCAoZGFzIGlzIGJpbGRsaWNoIGdlbWVpbnQpLCB3YWVyIGRhcyB2ZXJtdXRsaWNoIHNlaW4KICAgRW5kZS4gRXMgbXVzcyBuaWNodCBXZWlobmFjaHRlbiBzZWluLCB1bSBNaXRnZWZ1ZWhsIHp1IGhhYmVuLgoxMSlXZW4ga2VocmVuIEhlcnItRGVyLVJpbmdlLVN1cnZpdmEtVWUtRWktU2V0cz8KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FydW0gaWNoIFdlaWhuYWNodGVuIGhhc3NlIChDYWRyYWNoLCAyMy4gRGV6IDIwMDIsIDEwOjU4OjA2KToKfiMhIHJuPVN1bmZsb3dlciBydD0xMDQwNjMzMzg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MDYzMzM4NApOYSBkYSBoYXN0IER1IGFiZXIgZnJ1ZWhlciBuaWNoIHNvIGdhbnogYXVmZ2VwYXNzdCwgYmVpIGVpbmVyIGdvZXR0bGljaGVuCkVtcGZhZW5nbmlzIHVuZCBlaW5lciBqdW5nZnJhZXVsaWNoZW4gR2VidXJ0LCBoaWxmdCBhdWNoIGtlaW5lIFZlcmh1ZXR1bmcgOikuCgpDYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FydW0gaWNoIFdlaWhuYWNodGVuIGhhc3NlIChRaXRlc3MsIDIzLiBEZXogMjAwMiwgMTE6MzQ6MDgpOgp+IyEgcm49U3VuZmxvd2VyIHJ0PTEwNDA2MzMzODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQwNjMzMzg0CkljaCBzdGltbWUgRGlyIC0gYXVzbmFobXN3ZWlzZSAtIGluIGFsbGVuIFB1bmt0ZW4genUuClFJKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2FydW0gaWNoIFdlaWhuYWNodGVuIGhhc3NlIChTdW5mbG93ZXIsIDIzLiBEZXogMjAwMiwgMTI6MzI6NTUpOgp+IyEgcm49UWl0ZXNzIHJ0PTEwNDA2Mzk2NDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQwNjMzMzg0ClFpKjogQmlzc3Uga3JhbmssIHdlbm4gamEgbGVnIGRpY2ggaW5zIEJldHQgdW5kIHJ1aCBkaWNoIGF1cywgdW5lcmhvZXJ0IG1pcgplaW5mYWNoIHp1enVzdGltbWVuLi5EQVMgR0VIVCBET0NIIE5JQ0hUIGFsbCBkaWUgZ2FuemVuIEphaHJlLCBlaW5mYWNoIHNvCnZvcmJlaSB1bmQgZGFzIG51ciB3ZWlsIGR1IG1pciB6dXN0aW1tc3QuICgqdmVyendlaWZlbCopCmNhZCo6IHdpZSB3aXIgYWxsZSB3aXNzZW46IFdhciBkZXIgQnJpZWZ0cmFlZ2VyIGRlciBkaWUgUG9zdCBpbW1lciB6dSBNYXJpYQp1bmQgU2VwcCBnZWJyYWNodCBoYXQsIGVpbiBHb3R0IChhbHNvIGVpbiBtYWlhPykgdW5kIGVyIHNhaCBhdXMgd2llIGdhbmRhbGYuClVuZCBkYW5uIGhhdCBHb3R0L2RlciBCcmllZnRyYWVnZXIvR2FuZGFsZiBtaXQgTWFyaWEgYWVoaCBzYWdlbiB3aXIKcnVtZ2VtYWNodC4gVW5kIGRhIGVzIGRhbWFscyB3ZWRlciBQaWxsZSBub2NoIEtvbmRvbSwgc29uZGVybiBudXIgdmlhZ3JhIGdhYiwKaGFiZW4gZGllIHppZW1saWNoIGxhbmdlIHJ1bWdlbWFjaHQuIFdhcyBuYXR1ZXJsaWNoIGF1Y2ggZXJrbGFlcnQgd2FydW0gTWFyaWEKZGFtYWxzIGltbWVyIHNvIExhdXQ6IE9oaGhoIG1laW4gR290dCBzY2hyaWUuIEplZGVuZmFsbHMgd2FyIE1hcmlhIGRhbm4Kc2Nod2FuZ2VyLCB1bmQgZGFzIGZhbmQgU2VwcCBnYXJuaWNodCBndXQgdW5kIHdvbGx0ZSBNYXJpYSB2ZXJsYXNzZW4uIERvY2gKTWFyaWEgaGF0dGUgZGVuICdlaW5lbicgUmluZyB1bmQgZHVyY2ggZGllIE1hY2h0IGRlcyBSaW5nZXMsIHNvd2llIHZvbQpXZWlocmF1Y2ggYmV0YWV1YnQgYmxpZWIgU2VwcCBiZWkgbWFyaWEgdW5kIHNhaCBudXIgbm9jaCBzdGVybmUsIGFiZXIKaXJnZW5kd2llIG11c3MgZGVyIFdlaWhyYXVjaCBub2NoIHp1IGFuZGVyZW4gR2VzdGFsdGVuIGdla29tbWVuIHNlaW4sIHVuZCBzbwpzYWhlbiAzIHdlaXRlcmUgQmVrbG9wcHRlIGRpZSBTdGVybmUgdW5kIHNpZSBmb2xndGVuIGRpZXNlbiB1bmQgdHJhZmVuIGF1ZgpTZXBwLCBtYXJpYSB1bmQgc28gbmVtIGtsZWluZW4gQmFsZyAoIHRoZSBmb2xsb3dzaGlwIG9mIGplc3VzPykgdW5kIG5hbm50ZW4KaWhuIEplc3VzLCB3YXJ1bSBhdWNoIGltbWVyLiBVbmQgZGFtaXQgZGFzIGFsbGVzIHBhc3N0ZSBuYW5udGVuIHNpZSBkZW4Kdm9yaGVyZ2VoZW5kZW4gVGFnIDI0LjEyIHVuZCBkZW4gbmV1ZW4gVGFnIDI1LjEyLiB1bmQgSmVzdXMgYmVrYW0gZGVuClNwaXR6bmFtZW4gV2VpaG5hY2h0c21hbm4uIFdvbWl0IGVuZGxpY2ggZGllc2UgR2VzY2hpY2h0ZSBlbmRldCBpbiBkZXIgaWNoCm1pdGxsZXJ3ZWlsZSBrZWluZW4gWnVzYW1tZW5oYW5nIG1laHIgc2VoZS4gOykKLS0tLQpNYW5jaG1hbCBrYW5uIGljaCBpbiBlaW5lbSB2ZXJ0cmF1dGVuIEdlc2ljaHQgCm5pY2h0cyB3ZWl0ZXIgZXJrZW5uZW4sIGFscyBkaWUgU3B1cmVuCmRpZSBkZXIgVG9kIGRhcmluIGhpbnRlcmxhc3NlbiB3aXJkLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQmVrYW5udG1hY2h1bmcgOikgKExlaWJpLCAyMy4gRGV6IDIwMDIsIDEyOjQxOjU0KToKfiMhIG9uPUxlaWJpIG90PTEwNDA2NDI0MzIgb2c9dHJlZmZlbgp+IyEgcm49SGlzYXN1bCBydD0xMDQwNjQyMTIwIHJnPXRyZWZmZW4KfiMhIHRpZD0xMDQwNjQxOTY1CmFsc28gZGVtIHNiYWhuIGZhaHJlciBpc3QgZGFzIHNpY2hlciBlZ2FsIDopCgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCZWthbm50bWFjaHVuZyA6KSAoTGVpYmksIDIzLiBEZXogMjAwMiwgMTI6NDI6MTQpOgp+IyEgb249TGVpYmkgb3Q9MTA0MDY0MjA4NiBvZz10cmVmZmVuCn4jISBybj1MZWliaSBydD0xMDQwNjQyMDI3IHJnPXRyZWZmZW4KfiMhIHRpZD0xMDQwNjQxOTY1CnVuZCBkaWUga29tbWVuIGRhbm4gd2llZGVyIGFsbGUgaW4gbWVpbmUgd29obnVuZywgZGFzcyBuYWNoYmFybiBlbmRsaWNoIG1hbAp3aWVkZXIgZWluZW4gZ3J1bmQgenVtIGJlc2Nod2VyZW4gZmluZGVuPwoKbGVpYmkgLSBmcmV1dCBzaWNoIHNjaG9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZW5uIGRhcyBNRyByZWFsIHdhZXJlIChTdW5mbG93ZXIsIDIzLiBEZXogMjAwMiwgMTM6NDE6NTYpOgpXZW5uIGRhcyBNRyBkaWUgcmVhbGUgV2VsdCBpc3QgdW5kIGFsbGVzIGFuZGVyZSB2aXJ0dWVsbCwgZGFzIHd1ZXJkZSBiZWRldXRlbjoKZGFzIGljaCBtZWhyIG9kZXIgd2VuaWdlciB1bnN0ZXJibGljaCBiaW4sCmRhcyBlcyBtZWhyIGFscyBudXIgZWluZW4gR290dCBnaWJ0LApkYXMgJ3NlbGJzdGxvZXNjaHVuZycgZWluIGZha2UgaXN0CmRhcyB3aXIgYWxsZSBhdWNoIG9obmUgenUgYXJiZWl0ZW4gdW5zZXIgYnJvdCB2ZXJkaWVuZW4sCmRhcyBDb21wdXRlciBudXIgZWluZSBFcmZpbmR1bmcgZWluZXIgdmlydHVlbGxlbiBXZWx0IHdhZXJlbiwKZGFzIG1hbiBzaWNoIHVlYmVyIGRpZSBlYmVuZW4gdWViZXIgcmVnaW9uZW4va29udGluZW50ZSB1bnRlcmhhbHRlbiBrYW5uLApkYXMgaWNoLCBlZ2FsIHdpZSBsZWlzZSBpY2ggcnVmZSwgbWljaCBkb2NoIGVpbiBqZWRlciBob2VydCwKZXMgZGVuIFdlaWhuYWNodHNtYW5uIHRhdHNhZWNobGljaCBnaWJ0LApkYXMgaWNoIGFscyBzb25uZW5ibHVtZSByZWRlbiBrYW5uLAp1bmQgYWxsZXMgaXJnZW5kd2llIGd1dCBpc3QsCgpEYXMgZHVtbWUgaXN0IG51ciBpY2ggYmluIG5hY2ggZGVtIHZpcnR1ZWxsZW4gTXVkIG5hbWVucyAnUmVhbGl0YWV0JyBnZW5hdXNvCnN1ZWNodGlnIChhdWNoIHdlbm5zIG1hbiBuaWNodCBnZXJuIHp1Z2lidCkgd2llIG5hY2ggZGVtIE1vcmdlbmdyYXVlbi4KClVuZCB3YXJ1bSBpY2ggZGFzIGpldHp0IGdlc2NocmllYmVuIGhhYmUsIHdlaXNzIGljaCBzZWxic3QgbmljaHQsIHZpZWxsZWljaHQKd2FyIG1pciBnZXJhZGUgTGFuZ3dlaWxpZywgb2RlciBzbwoKLS0tLQpNYW5jaG1hbCBrYW5uIGljaCBpbiBlaW5lbSB2ZXJ0cmF1dGVuIEdlc2ljaHQgCm5pY2h0cyB3ZWl0ZXIgZXJrZW5uZW4sIGFscyBkaWUgU3B1cmVuCmRpZSBkZXIgVG9kIGRhcmluIGhpbnRlcmxhc3NlbiB3aXJkLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VyIEthcmwgRnJpdHpzY2ggbWFnIChTdW5mbG93ZXIsIDIzLiBEZXogMjAwMiwgMTg6MDQ6MjcpOgpXaXJkIGRpZXNlIE1lZ2FHZWlsZUhvbXBhZ2UgbGllYmVuIDspCgpodHRwOi8vd3d3LmZybnouZGUvCi0tLS0KTWFuY2htYWwga2FubiBpY2ggaW4gZWluZW0gdmVydHJhdXRlbiBHZXNpY2h0IApuaWNodHMgd2VpdGVyIGVya2VubmVuLCBhbHMgZGllIFNwdXJlbgpkaWUgZGVyIFRvZCBkYXJpbiBoaW50ZXJsYXNzZW4gd2lyZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGhldXQgaGFiZSBpY2ggYWJlciB2aWVsIGdlc2NocmllYmVuIChDdWNodWxsaW4sIDIzLiBEZXogMjAwMiwgMjA6MzE6MDcpOgp+IyEgb249Q3VjaHVsbGluIG90PTEwNDA2NzE4NTkgb2c9d2l0emUKfiMhIHJuPVN1bmZsb3dlciBydD0xMDQwNjQyMTY4IHJnPXdpdHplCn4jISB0aWQ9MTA0MDYzNjk3MwpUYWV0IG1pY2ggYWJlciBzZWhyIHd1bmRlcm4sIHdlbm4gRGlyIG1laW4gR2VzaWNodCB2ZXJ0cmF1dCB2b3JrYWVtZS4KCkluIEt1enVuZnQgbnVyIG1pdCBHb3RzaHVuIGF1cyBkZW0gSGF1cyBnZWhlbmQsCkN1Y2ggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaGV1dCBoYWJlIGljaCBhYmVyIHZpZWwgZ2VzY2hyaWViZW4gKEFwb2xsb25pYSwgMjMuIERleiAyMDAyLCAyMzoyMzoyMCk6Cn4jISBybj1CYW1iaSBydD0xMDQwNjc4NjY3IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTA0MDYzNjk3MwpEYW5uIGtvZW5udGVzdCBEdSBtaXIgYWJlciBhdWNoIG5lbiBHZWZhbGxlbiB0dW46IEthdWYgRGlyIG5lIFR1ZXRlIEh1bW9yLgoKQXBvKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdlbm4gZGFzIE1HIHJlYWwgd2FlcmUgKFdvb2R5LCAyNC4gRGV6IDIwMDIsIDAyOjMyOjQ0KToKfiMhIHJuPVN1bmZsb3dlciBydD0xMDQwNjQ3MzE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MDY0NzMxNgpkYSBmZWhsdGUgbm9jaCB3YXM6Ci4uLmRhc3MgZXMgZW5kbGljaCBlaW4gYnJhdWNoYmFyZXMgImlnbm9yaWVyZSIgZ2lidC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpwaXRmYWxscyBtdWghIChHbm9tZSwgMjUuIERleiAyMDAyLCAyMjoyNzoyNCk6CltuZXVsaWNoIGJlaW0gcnVkZWxuXQpQaXRmYWxsIHNhZ3Q6IEdub21lLCBrYW5uIGljaCBhdWYgRGVpbmVuIFNjaG9zcz8KR25vbWUgc3R1dHp0LgpHbm9tZSBzYWd0OiBKYSwgdm9uIG1pciBhdXMuLi4KUGl0ZmFsbCBzZXR6dCBzaWNoIGRlbW9uc3RyYXRpdi4KR25vbWUgc2FndDogUGl0ZmFsbCwgZHUgaGFzdCBqYSB3aXJrbGljaCBuZW4gaGFydGVuIEFyc2NoLi4uCkJyb3RuYWVsIHNhZ3Q6IEpBISBJY2gga2VubiBkZW4hIERlbiBrZW5udCBqZWRlciwgZGVyIGluIEhhbGxlIHdhci4uLgoKa2VpbmUgd2VpdGVyZW4gZnJhZ2VuLi4uCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHBpdGZhbGxzIG11aCEgKFBpdGZhbGwsIDI1LiBEZXogMjAwMiwgMjI6Mjc6MjgpOgp+IyEgcm49R25vbWUgcnQ9MTA0MDg1MTY0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDA4NTE2NDQKVmVybGV1bWR1bmchCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOdXIgbWFsIHp1bSBhbmd1Y2tlbiwgbGVzZW4gdW5kIGtvcGZzY2h1ZXR0ZWxuIChTdW5mbG93ZXIsIDI2LiBEZXogMjAwMiwgMTc6NDA6NTApOgpIaWVyIGVpbiAiendhciBzY2hvbiBzZWhyIGFuZ2VzdGF1YnRlciIgQXJ0aWtlbCwKd28gamVkZXIgc2VoZW4ga2FubiB3YXMgZGllIEtpcmNoZSBzbyBkZW4gbGllYmVuIGxhbmdlbiBUYWcgbWFjaHQuCmh0dHA6Ly93d3cucHVuay5kZS9sYWRuYWsuaHRtbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGllYmxpbmdzYXVzc3BydWNoIHZvbSBXZWlobmFjaHRzZXNzZW4gKFN1bmZsb3dlciwgMjYuIERleiAyMDAyLCAxOToyNjoyNik6ClN1bmZsb3dlciwgSGVsbGZsZWNrLCBNdXRhbnR1cywgR2FzdCAxLDIsMyBzaXR6ZW4gYW0gVGlzY2ggdW5kIGVzc2VuIEZsZWlzY2guClhlbm9yYSBpc3QgRmlzY2guClhlbm9yYSBndWNrdCBlbnRzZXR6dCBhdWYgdW5kIHNhZ3Q6CkRlciBGaXNjaCBpc3Qgc2NobGVjaHQsIGRlbiBlciBzY2htZWNrdCBuYWNoIEZpc2NoLgoKQWxsZXMgKGJpcyBhdWYgWGVub3JhKSB3YWVsenQgc2ljaCB2b3IgTGFjaGVuIGFtIEJvZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExpZWJsaW5nc2F1c3NwcnVjaCB2b20gV2VpaG5hY2h0c2Vzc2VuIChDdWNodWxsaW4sIDI2LiBEZXogMjAwMiwgMjI6NTI6MTcpOgp+IyEgcm49U3VuZmxvd2VyIHJ0PTEwNDA5MjcxODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQwOTI3MTg2ClVuZCBmdWVyIGRpZSBSZWNodHNjaHJlaWJ1bmcgYml0dGUgbm9jaG1hbCwgd2VubiBEdSBhdXNnZW51ZWNodGVydCBiaXN0IDspCgoqZHVjayogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTGllYmxpbmdzYXVzc3BydWNoIHZvbSBXZWlobmFjaHRzZXNzZW4gKFN1bmZsb3dlciwgMjYuIERleiAyMDAyLCAyMjo1NDo1MSk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTA0MDkzOTUzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDA5MjcxODYKaWNoIG1laW50ZSBqYSBhdWNoIGlzc3QgOykKClN1bm55IGZpbmRldCBDdWNodWxsaW4gZG9vZiA7KikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh1Y2ggKE5lZGltZSwgMjcuIERleiAyMDAyLCAwMzoxMzo0Myk6CkR1IHN0cmVpY2hlbHN0IGRhcyBTY2hhZi4KRWluIGZ1ZXJjaHRlcmxpY2hlcyBCZWJlbiBlcnNjaHVldHRlcnQgZGllIERpbWVuc2lvbmVuIGluIGlocmVuIEdydW5kZmVzdGVuLgoKTmVkaW1lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBMaWVibGluZ3NhdXNzcHJ1Y2ggdm9tIFdlaWhuYWNodHNlc3NlbiAoSmFkYXdpbiwgMjcuIERleiAyMDAyLCAxNzoxMzo1NSk6Cn4jISBybj1TdW5mbG93ZXIgcnQ9MTA0MDkzOTY5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDA5MjcxODYKQWNoIHNvLCBpY2ggaGF0dGUgZ2VkYWNodCwgZGFzIHNlaSBkaWUgUG9pbnRlLiBXbyBpc3Qgc2llIGRlbm4gbnVuIGdlYmxpZWJlbj8KSmFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGVyciBkZXIgUmluZ2UgMiAtIERaVCAoU3VuZmxvd2VyLCAyOS4gRGV6IDIwMDIsIDIzOjAwOjAxKToKQWxzbyBlaW5zIHZvcndlZyBkZW4gMS4gVGVpbCBmYW5kIGljaCBiZXNzZXIgKGV4dC4gdmVyc2lvbiA6KSApCnVuZCBpY2ggaGFiZSBhdWNoIGV3aWcgbWVpbmUgMyBncnVlbmVuIG5pY2h0IG1laHIgZ2VsZXNlbiwgYWJlcgptaXIgaXN0IG5pY2h0IGdlbGFldWZpZyBkYXMgQXJ3ZW4gdW5kIEdhbGFkcmllbCBpbSAydGVuIEJhbmQgYXVmdGF1Y2hlbi4KQXVjaCB3dXNzdGUgaWNoIG5pY2h0IGRhcyBkaWUgRWxiZW4gbmFjaCBWYWxpbm9yIHNlZ2VsbiB3b2xsZW4uCldvaGVyIGF1ZiBlaW5tYWwgU2NoYXR0ZW5mZWxsIGtvbW10LCB3aXJkIGltIEZpbG0gYXVjaCBuaWNodCBnZWtsYWVydAoodmllbGxlaWNodCBpbiBkZXIgZXh0LiB2ZXJzaW9uPyApCkRlc3dlaXRlcmVuIGRhY2h0ZSBpY2ggaW1tZXIgZGFzIFRoZW9kZW4gdm9uIFNjaGxhbmdlbnp1bmdlIG1pdCBpcmdlbmR3ZWxjaGVuCkdlYnJhZXUKYWJnZWZ1ZWxsdCB3aXJkLCB1bmQgZXIgbmljaHQgdm9uIFNhcnVtYW4gYmVoZXJzY2h0IHdpcmQuIChuYWphKSBXZWl0ZXJoaW4gaXN0CkVvd3luIGRpZSByZWluc3RlIFBsYWdlLCBlcnN0CmRpZSBMaWViZXNnZXNjaGljaHRlIG1pdCBTY2hsYW5nZW56dW5nZSAod28gaXN0IGRlbiBkaWUgaW0gQnVjaCkgdW5kIGRhbm4gYXVjaApub2NoIEFyYWdvcm4uICh0c3RzdHMpIAp3YXJ1bSB1bSBIaW1tZWxzd2lsbGVuIHRhdWNodCBzbyBlaW4gQmxvZWRzaW5uIGltIEtpbm8gYXVmIChvZGVyIGdpYnRzIGluCm5ldXNlZWxhbmQgbmUgYW5kZXJlCmhlcnIgZGVyIHJpbmdlIGF1c2dhYmU/KQp3ZWl0ZXJoaW4gZmFuZCBpY2ggYXVjaCBHaW1saSB1bmQgTGVnb2xhcyB0ZWlsd2Vpc2UgIm5lcnZpZyIgdW5kIGRhcyBIZWxtcwpLbGFtbSBub2NoIG5lbiBnZWhlaW1hdXNnYW5nIHp1bSBUb3IgaGluIGhhdCB3dXNzdGUgaWNoIGF1Y2ggbmljaHQgOy0pCgpQb3NpdGl2OiBEaWUgU2NobGFjaHQsIGRlciBhbmJsaWNrIGRlcyAxMC4wMDAgb3JrIGhlZXJlcyBlaW5mYWNoIHNwaXR6ZSwgYXVjaApkaWUgQ2hhcmFrdGVyYXVzYXJiZWl0dW5nIHZvbiBHb2xsdW0sIHNlaGVuc3dlcnQgdW5kIHN1ZXNzIGlzc2VyIGF1Y2ggKHdpbGwKYXVjaCBlaW5lbiBoYWJlbikuIE11c3MgbnVyIGxlaWRlciBnZXN0ZWhlbiBkYXMgaWNoIG1pciBiZWltIGxlc2VuIGVyIGltbWVyCmFscyBzbyBlaW4gc2NobGVpbWlnZXMgc2Nod2FyemVzIHdlc2VuIHZvcmdla29tbWVuIGlzdCwgbnVuamEgYWJlciBzbyB3aWUgZXIKaW0gRmlsbSBhdXNzaWVodCBkYW1pdCBrYW5uIGljaCBhdWNoIGxlYmVuLiBEaWUgRW50cyB3YXJlbiBhdWNoIHNvLCB3aWUgaWNoCnNpZSBtaXIgdm9yZ2VzdGVsbHQgaGFiZSAoaGVsbGZsZWNrIG1laW50LCBkaWUgYmVpbmUgaGFldHRlbiBldHdhcyBrdWVyemVyCnNlaW4ga29lbm5lbiwgZGEgaGF0IHNpZSB3b2hsIGV0d2FzIHJlY2h0KQpEaWUgUGFub3JhbWEgYW5zaWNodGVuIGZhbmQgaWNoIGF1Y2ggZ2VuaWFsLCBnZXJhZGUgZGllIHZvbiBNb3Jkb3IsIGVpbiBlY2h0ZXIKQXVnZW5zY2htYXVzLgoKVW5kIEZhcmFtaXIsIGhtbSBhbHNvLCBkZXIgQ2hhcmFrdGVyIGlzdCB6aWVtbGljaCB1bmVudHNjaGxvc3NlbiwgZXJzdCBob2JiaXRzCmdlZmFuZ2VubmVobWVuLCBkaWUgZGFubiBub2NoIG1pdCBuYWNoIE9zc2dpbGl0aCBzY2hsZWlmZW4gdW5kIGRhbm4gc28gbWlyIG5peApkaXJuaXggd2llZGVyIGZyZWlsYXNzZW4uCgpadSBkZW0gRmlsbSB2b20gdGVjaG5pc2NoZW4gaGVyIG11c3MgaWNoIGxlaWRlciBkYXMgc2VsYmUgc2FnZW4gd2llIGltIGVyc3RlbiwKZnVlciBkYXMgR2VsZCB3YXMgenVyIFZlcmZ1ZWd1bmcgc3RhbmQgaGFldHRlIG1hbiBhdWNoIGVpbmlnZSBTemVuZW4gImJlc3NlciIKZHJlaGVuIGtvZW5uZW4sIHRlaWx3ZWlzZSBzaWVodCBtYW4gZGllIEJsdWVzY3JlZW4gdW5kIHZvciBMZWlud2FuZCBnZWRyZWh0ZW4Kc3plbmVuIHJhdXMsIGdlcmFkZSBkYW5uIHdlbm4gc2llIGluIGVpbiBzdHVlY2sgYW5kZXJlbiAiZmlsbSIgcmVpbmdlc2Nobml0dGVuCnd1cmRlbiAod2llIGRpZSBob2JiaXRzIGluIGZhcmFtaXJzLWhvZWhsZSkuIERhIGdpYnQgZXMgYWVsdGVyZSBGaWxtZSB3byBzb3dhcwpiZXNzZXIgZ2VtYWNodCB3dXJkZS4KVHJvdHogZGVyIEtyaXRpayBiZWtvbW10IGRlciBGaWxtIHZvbiBtaXIgZWluZSA5IHZvbiAxMCA7KSAobmljaHQgenVsZXR6dAp3ZWdlbiBkZXIgdHJvdHpkZW0gaGVydm9ycmFnZW5kZW4gU2NobGFjaHQgdW5kIGRlbiBQYW5vcmFtYWJpbGRlcm4pIHVuZAppY2ggaG9mZmUgZGFzIGRpZSBleHQuIHZlcnNpb24gZGllIGxpZWJlc2dlc2NoaWNodGUgd2VnbGFlc3N0IHVuZCBtZWhyIHZvbQpkcnVtaGVydW0gZXJ6YWVobHQsIHNvIHdpZSBkaWUgdm9tIGVyc3RlbiBUZWlsLgoKU3VuZmxvd2VyIChkaWUgWmVpbGVudW1icnVlY2hlIGJpdHRlIGljaCB6dSBlbnRzY2h1bGRpZ2VuIDopICkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIZXJyIGRlciBSaW5nZSAyIC0gRFpUIChHcmltbWJvcm4sIDI5LiBEZXogMjAwMiwgMjM6MTA6MzUpOgp+IyEgcm49U3VuZmxvd2VyIHJ0PTEwNDExOTkyMDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQxMTk5MjAxCkZheml0IGFsc286IER1IGhhc3QgbnVyIG5vY2ggZWluZSBkdW5rbGUsIG5lYmxpZ2UgRXJpbm5lcnVuZyBhbiBkYXMgQnVjaC4gRmFzdAphbGxlcyB3YXMgRHUgYWxzICJ3byBpc3QgZGFzIGltIEJ1Y2g/IiBrcml0aXNpZXJzdCBmaW5kZXQgc2ljaCBpbiBkZXIgZWluZW4Kb2RlciBhbmRlcmVuIEF1c3ByYWVndW5nIGViZW5kb3J0LgpWaWVsIFNwYXNzIGJlaW0gTGVzZW4hCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGVyciBkZXIgUmluZ2UgMiAtIERaVCAoU3VuZmxvd2VyLCAyOS4gRGV6IDIwMDIsIDIzOjE0OjE2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQxMTk5ODM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MTE5OTIwMQpJY2ggbGVzZSBncnVuZHNhZXR6bGljaCBqZWRlcyBCdWNoIG51ciBlaW5tYWwgOykKCkFiZXIgbWVpbmUgQXVzZ2FiZSB2b24gSGVyciBkZXIgUmluZ2Ugc2luZCA0LCBoZWlzc3QgZGFzIGpldHp0IGF1Y2ggZGFzIGRpZQpBbmhhZW5nZSBhdWNoIG5vY2ggdmVyZmlsbXQgd2VyZGVuPyA7KQoKU3VuZmxvd2VyClBTOiB1bmQga2FubiBlcyBzZWluIGRhcyBlcyBudXIgZWluYmlsZHVuZyB3YXIsIG9kZXIgd2FyIGljaCBkZXIgZWluemlnZSBiZWltCkxlc2VuIHZvbiBEWlQgKFRUVCksIGRlciBkYWNodGUgZGFzIGVzIGVoZXIKdW0gTWluYXMgTW9yZ3VsIHVuZCBNaW5hcyBUaXJpdGggZ2luZywgYWxzIHVtIGRlbiBSZXN0Pwp1bmQgaW0gQlVDSCBzdXJmdCBMZWdvbGFzIGJlc3RpbW10IG5pY2h0IDopICkgKG5hamEgdW5kIHp1bSBHbHVlY2sgaXN0IGpldHp0CmRlciBmZXR0ZSBzY2h3dWxlIGJsb25kZSBlbGYgdG90IDspIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSGVyciBkZXIgUmluZ2UgMiAtIERaVCAoR3JpbW1ib3JuLCAyOS4gRGV6IDIwMDIsIDIzOjE3OjQ4KToKfiMhIHJuPVN1bmZsb3dlciBydD0xMDQxMjAwMDU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MTE5OTIwMQpEYW5uIHNvbGx0ZXN0IER1IERpciBlaW5lIHdlaXRlcmUgQXVzZ2FiZSBkZXMgTG90UiBhbnNjaGFmZmVuLiBEaWUgQW5oYWVuZ2UKc2luZCB0ZWlsd2Vpc2Ugc2Nod2VyIHZlcmZpbG1iYXIsIG5vY2ggc2Nod2VyZXIgYWxzIGRhcyBlaWdlbnRsaWNoZSBXZXJrLiBVbmQKaW0gQnVjaCBnZWh0cyBlaGVyIGltIHVlYmVydHJhZ2VuZW4gU2lubmUgdW0gVGlyaXRoIHVuZCBNb3JndWwsIHRhdHNhZWNobGljaApnZWh0cyB1bSBkZW4gV2VnIHZvbiBGcm9kbywgU2FtIHVuZCBHb2xsdW0gbmFjaCBNb3Jkb3IgdW5kIGRpZSBFcmxlYm5pc3NlIGRlcgphbmRlcmVuIGluIHVuZCB1bSBSb2hhbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSGVyciBkZXIgUmluZ2UgMiAtIERaVCAoR3JpbW1ib3JuLCAyOS4gRGV6IDIwMDIsIDIzOjE4OjI2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQxMjAwMjY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MTE5OTIwMQpQLlMuIFdhcyBIYWxkaXIgYW5nZWh0IHN0aW1tZSBpY2ggRGlyIHZvZWxsaWcgenUuIEljaCBoYWIgbnVyIGF1ZiBlaW4gIkF1ZgpzaWUsIEp1bmdzISIgbWl0IEtuaWNraGFlbmRjaGVuIGdld2FydGV0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBIZXJyIGRlciBSaW5nZSAyIC0gRFpUIChIdW1uaSwgMjkuIERleiAyMDAyLCAyMzoyMzowMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0MTIwMDMwNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDExOTkyMDEKTmFjaCBsYW5nZXIgRGlza3Vzc2lvbiBpbSB3d3cuaGVyci1kZXItcmluZ2UtZmlsbS5kZSAtIEZvcnVtOiBEaWUgendlaSBUdWVybWUKaW0gQnVjaCBzaW5kIE1pbmFzIE1vcmd1bC9DaXJpdGggVW5nb2wgdW5kIE9ydGhhbmMgKGRhcyBpc3QgTWVocmhlaXRzbWVpbnVuZwp1bmQgd29obCB2b24gVG9sa2llbiBzZWxic3QgbWFsIHNvIGdlc2FndCB3b3JkZW4pLiBNaW5hcyBUaXJpdGggc3BpZWx0IGltIDIuClRlaWwga2VpbmUgUm9sbGUsIEJhcmFkLUR1ciBncnVuZHNhZXRsemxpY2ggYXVjaCBudXIgYWxzIGR1bmtsZSBCZWRyb2h1bmcuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhlcnIgZGVyIFJpbmdlIDIgLSBEWlQgKFZhbmlvbiwgMjkuIERleiAyMDAyLCAyMzozNjo1Myk6Cn4jISBybj1TdW5mbG93ZXIgcnQ9MTA0MTE5OTIwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDExOTkyMDEKRmluZGVzdCBEdSBlcyBMdXN0aWcgaGllciBvaG5lIFdhcm51bmcgcnVtenVzcG9pbGVybj8gRXMgZ2lidCBpbW1lciBub2NoIExldXRlCmRpZSBkZW4gRmlsbSBuaWNodCBnZXNlaGVuIGhhYmVuIHVuZCBpbSBLaW5vIHNlbGJzdCBiZXdlcnRlbiB3b2xsZW4uCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIZXJyIGRlciBSaW5nZSAyIC0gRFpUIChTdW5mbG93ZXIsIDI5LiBEZXogMjAwMiwgMjM6Mzg6MTkpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNDEyMDE0MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQxMTk5MjAxCmhtbSBoYWJlIGF1Y2ggb2huZSB2b3J3YXJudW5nIG1lZ2FzY2htYXJybiBnZWxlc2VuIHVuZCBkYW5uIGVyc3QgZGVuIGZpbG0KZ2VzZWhlbgoKU3VuZmxvd2VyClBTOiBpY2ggaGFiZSBhYmVyIG5pY2h0IHZlcnJhdGVuIGRhcyBBcmFnb3JuIHN0aXJidCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIZXJyIGRlciBSaW5nZSAyIC0gRFpUIChHcmltbWJvcm4sIDI5LiBEZXogMjAwMiwgMjM6Mzg6MjUpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNDEyMDE0MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQxMTk5MjAxCldlciBkZW4gRmlsbSBub2NoIG5pY2h0IGdlc2VoZW4gaGF0IGlzdCBzZWxiZXIgc2NodWxkLiBVbmQgbmFjaCBkZW4gZXJzdGVuCmJlaWRlbiBaZWlsZW4gZGllIEF1Z2VuIHp1enVtYWNoZW4gaXN0IGphIG51biB3aXJrbGljaCBhdWNoIG5pY2h0IHNvIHNjaHdlci4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0ZGlnZXN0IG1hbCB3aWVkZXIhISEgKE5vbm5lLCAgMi4gSmFuIDIwMDMsIDA5OjQ2OjMyKToKRnJvbTogbHV0eiBmZXVzdGVsIDxkYWZoc0BnbXguZGU+Ck5ld3Nncm91cHM6IGRlLmFsdC5mb2xrbG9yZS51cmJhbi1sZWdlbmRzClN1YmplY3Q6IFJlOiBtYXJpbHluIG1hbnNvbi4uLgpEYXRlOiBGcmksIDI3IERlYyAyMDAyIDIxOjE3OjQ0ICswMTAwCk1lc3NhZ2UtSUQ6IDxhdWljajUkN2N2dmokM0BJRC0xNTM5Ni5uZXdzLmRmbmNpcy5kZT4KCk9uIFNhdCwgMjEgRGVjIDIwMDIgMjI6NDc6MjMgKzAxMDAsIG1hcnZpbiBwcmV1c3MKPG1hcnZpbk5PU1BBTUB4c3RlYWRmYXN0eC5kZT4gd3JvdGU6Cgo+bWFyaWx5biBtYW5zb24gc2VpbmUgdW50ZXJlbiByaXBwZW4gcmF1c2dlbm9tbWVuIGhhdCB1bSBzaWNoIHNlbGJlciBvcmFsIAo+enUgYmVmcmllZGlnZW4uLi5nbGF1YnQgaWhyIGVzIGlzdCBudXIgZWluZSB1cmJhbiBsZWdlbmQsIGVpbiBnZXJ1ZWNodCAKCkljaCBrZW5uIGRpZSBHZXNjaGljaHRlIGV0d2FzIGFuZGVycywgQWRhbSB3dXJkZSBlaW5lIFJpcHBlIGVudG5vbW1lbiwKZGFtaXQgZXIgc2ljaCBuaWNodCBtZWhyIHNlbGJzdCBvcmFsIGJlZnJpZWRpZ2VuIG11c3N0ZQoKTHV0egoKTm9ubmUsIHNpY2gga3JpbmdlbG5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogWWV0IEFub3RoZXIgRGlzdHJpYnV0ZWQgQ29tcHV0aW5nIFByb2plY3QgKEdyaW1tYm9ybiwgIDQuIEphbiAyMDAzLCAxNzoxOTo1Myk6Cn4jISBybj1TY2hva28gcnQ9MTA0MTY5Njg1OCByZz13d3cKfiMhIHRpZD0xMDQxNjI3NDEzCk51bGxzdGVsbGVuIGZpbmRlbj8gSmEgaXMgZGVubiBoZWl0IHNjaG8gT3N0ZXJuPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBZZXQgQW5vdGhlciBEaXN0cmlidXRlZCBDb21wdXRpbmcgUHJvamVjdCAoR3JpbW1ib3JuLCAgNC4gSmFuIDIwMDMsIDIzOjU3OjQ3KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0MTcyMDgxNSByZz13d3cKfiMhIHRpZD0xMDQxNjI3NDEzCkFsc28sIHp1IFBob3NwaG9yIGtvZW5udGUgaWNoIERpciB3YXMgZXJ6YWVobGVuLCBhYmVyIGVpbiBQaG9zcGhvcm5pdHJpZCBpc3QKbWlyIHVuYmVrYW5udCAoYmluIHp1IGZhdWwgbmFjaHp1Z3Vja2VuKSwgdW5kIGRhcyB3dWVyZGUgaWNoIGF1Y2ggYW5kZXJzCnNjaHJlaWJlbi4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBZZXQgQW5vdGhlciBEaXN0cmlidXRlZCBDb21wdXRpbmcgUHJvamVjdCAoRWxiZXJldCwgIDQuIEphbiAyMDAzLCAyMzo1OToxOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0MTcyMTA2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDE2Mjc0MTMKOmxhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFlldCBBbm90aGVyIERpc3RyaWJ1dGVkIENvbXB1dGluZyBQcm9qZWN0IChGb29iYXIsICA1LiBKYW4gMjAwMywgMDA6MDA6MDcpOgp+IyEgcm49RWxiZXJldCBydD0xMDQxNzIxMTU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MTYyNzQxMwo6bmljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogREEwNzAxMDIxOTAwSFAgKENyb2Z0LCAgNi4gSmFuIDIwMDMsIDIwOjMxOjA1KToKfiMhIG9uPUNyb2Z0IG90PTEwNDE4ODE0MzUgb2c9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISBybj1NYW5kcmFnb24gcnQ9MTA0MTg4MTEzMCByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDQxODgxMTMwClRlcm1pbmUgbXVzcyBtYW4gbmFjaHRyYWVnbGljaCBuaWNodCBtZWhyIGFua3VlbmRpZ2VuICwtKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvdGUgSG9zZSAoT3JrdG9ldGVyLCAgNi4gSmFuIDIwMDMsIDIxOjA5OjU4KToKRm9sZ2VuZGVzIGlzdCBhdWYgJ1NleCcgcGFzc2llcnQ6CltTZXg6RWxpemFiZXRoIHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gUm9jaHVzLiA8MjE6MDE6MTc+XQoKT2IgbWFuIGRpZSBFYmVuZSBtYWwgdW1iZW5lbm5lbiBzb2xsdGU/CgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChIdW1uaSwgIDguIEphbiAyMDAzLCAxODoxNzo1Mik6CltUb2Q6TGFyc10gRGVyIE9iZXJwb3N0ZGlyZWt0b3IgaGF0IGdlcmFkZSBGbGF1cm9zIHVtZ2VicmFjaHQuCltUb2Q6RGVyIE9iZXJwb3N0ZGlyZWt0b3JdIE1pc3QsIGpldHp0IGhhYiBpY2ggbWljaCBEZWluZXR3ZWdlbiBhdWNoIG5vY2gKW1RvZDpEZXIgT2JlcnBvc3RkaXJla3Rvcl0gYmV3ZWd0LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltCZWlsZWlkOkJyYW5dIDooKCgoKCgoKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApbQmVpbGVpZDpDYXJlbl0gamV0enQgaXMgYWJlciBnZW51ZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKW0JlaWxlaWQ6RGF5bW9vbl0gbnUgYWJlciB3aWUgb2Z0IGRlbm4gbm9jaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltCZWlsZWlkOkJyYW5dIGRhYmVpIGhhZXR0ZSBkZXIga2VybCBkYXMgaW1tZXIgdmVyZGllbnQgICAgICAgICAgICAgICAgICAgICAgIApbQmVpbGVpZDpFbGJlcmV0XSBmbGF1c2NoaSA6KCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKW0JlaWxlaWQ6SGVsdmV0aWEgZmxhdXNjaHQgRGVpbmUgTGVpY2hlLl0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltCZWlsZWlkOkZhbGxlbmFuZ2VsXSBVaSwgZGllc21hbCB3YXJlbidzIG51ciAzIHNjaG1ldHRlcm4gKyBrYmsgKyBzZWhyIGhhcnQKW0JlaWxlaWQ6RmFsbGVuYW5nZWxdIDopICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltCZWlsZWlkOkRheW1vb25dIGlzIGRlciBlaWdlbnRsaWNoIHp1IHNjaGFmZmVuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApbQmVpbGVpZDpFbGJlcmV0XSBiZXN0aW1tdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKW0JlaWxlaWQ6RmFsbGVuYW5nZWxdIEphLCBkaWUgU2F1IHdpcmQgZmFsbGVuLiAgICAgICAgICAgICAgICAgICAgICAgICAgIApbQmVpbGVpZDpSYW1tc3RlaW5dIHZsbCBoYXQgZXIgZGVuIENoZWF0IHZvbSBTZWViYWVyIGJla29tbWVuIDpvKSAgICAgICAgICAgICAKW0JlaWxlaWQ6UmFtb25hXSBpc3QgaW4gYXJiZWl0IDopICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltUb2Q6TGFyc10gRGVyIE9iZXJwb3N0ZGlyZWt0b3IgaGF0IGdlcmFkZSBSYW1vbmEgdW1nZWJyYWNodC4KW1RvZDpEZXIgT2JlcnBvc3RkaXJla3Rvcl0gTWlzdCwgamV0enQgaGFiIGljaCBtaWNoIERlaW5ldHdlZ2VuIGF1Y2ggbm9jaApbVG9kOkRlciBPYmVycG9zdGRpcmVrdG9yXSBiZXdlZ3QuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogWWV0IEFub3RoZXIgRGlzdHJpYnV0ZWQgQ29tcHV0aW5nIFByb2plY3QgKEh1bW5pLCAgOS4gSmFuIDIwMDMsIDAxOjM4OjQ2KToKfiMhIHJuPVBhdHJ5biBydD0xMDQyMDY0ODc3IHJnPXd3dwp+IyEgdGlkPTEwNDE2Mjc0MTMKQWxzbyBpY2ggYWVyZ2VyIG1pY2ggamVkZXNtYWwgd2VubiBpY2ggdm9uIHNwb3JhZGlzY2ggZWluZmFjaGVuIEdydXBwZW4KZXJ6YWVobGUgZGFzcyBtaWNoIG5pZW1hbmQgZXJuc3QgbmltbXQuIFVuZCBpY2ggc2FnZSBlaW5mYWNoIG51cjogRGllIFN0cnVrdHVyCmRlcyBNb25zdGVycyBlbnRzcHJpY2h0IGRlbSBVbml2ZXJzdW0uIFVuZCBudW4gYmV3ZWlzdCBtaXIgZGFzIEdlZ2VudGVpbC4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQc3ljaG9sb2dlbiB2b3IhIChPcmt0b2V0ZXIsICA5LiBKYW4gMjAwMywgMTA6NTI6MzIpOgpFcyBnaWJ0IGRvY2ggaW1tZXIgd2llZGVyIExldXRlIGRpZSBBcmJlaXRlbiB6dSBNVURzIHNjaHJlaWJlbiwgaGF0IGVpZ2VudGxpY2gKc2Nob24gbWFsIGVpbmVyIHVudGVyc3VjaHQsIHdhcyBmdWVyIEF1c3NhZ2VuIG1hbiB1ZWJlciBlaW5lbiBNdWRkZXIgbWFjaGVuCmthbm4gYW5oYW5kIGRlciBFYmVuZW4gZGllIGVyL3NpZSBzbyBlbnRzdGVoZW4gbGFlc3N0PwoKV2llIGljaCBkYXJhdWYga29tbWU/IEFrdHVlbGxlcyBCZWlzcGllbDoKCls8TWFzdGVSPjpHcnVtcGYgbGFlc3N0IGRpZSBFYmVuZSAnU2V4JyBlbnRzdGVoZW4uXQpbPE1hc3RlUj46R3J1bXBmIGxhZXNzdCBkaWUgRWJlbmUgJ0Fsa29ob2wnIGVudHN0ZWhlbi5dCls8TWFzdGVSPjpHcnVtcGYgbGFlc3N0IGRpZSBFYmVuZSAnS2VrcycgZW50c3RlaGVuLl0KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUHN5Y2hvbG9nZW4gdm9yISAoQ3VjaHVsbGluLCAgOS4gSmFuIDIwMDMsIDEwOjU4OjExKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDQyMTA1OTUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MjEwNTk1MgpadW1pbmRlc3QgZXJ1ZWJyaWd0IHNpY2ggZGllIEZyYWdlLCB1bSB3YXMgZnVlciBlaW5lIEFydCBLZWtzZSBlcyBzaWNoCmRhIGhhbmRlbG4gc29sbC4uLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUHN5Y2hvbG9nZW4gdm9yISAoR3JpbW1ib3JuLCAgOS4gSmFuIDIwMDMsIDEyOjA5OjQzKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDQyMTA2MjkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MjEwNTk1MgoiZmluZ2VyIGtla3MiCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBGcnVlaGphaHJzcGFydHkgaW4gV2ludGVyYnVyZyAoWm9vaywgIDkuIEphbiAyMDAzLCAxMzoyODoyMCk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTA0MjA2MDk4MiByZz1wYXJ0eQp+IyEgdGlkPTEwNDIwMzcyOTIKTWl0IHdlbSBnZW5hdSBoYXN0IER1L3dpbGxzdCBEdSAic2NobGFnbWljaHRvdCIgc3BpZWxlbiB1bmQgd2llIHNpbmQgZGEKZGllIFJlZ2Vsbj8gCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IEZydWVoamFocnNwYXJ0eSBpbiBXaW50ZXJidXJnIChab29rLCAgOS4gSmFuIDIwMDMsIDEzOjQ0OjU1KToKfiMhIG9uPVpvb2sgb3Q9MTA0MjExNjI4OSBvZz1wYXJ0eQp+IyEgcm49U3Ryb2hhbG0gcnQ9MTA0MjExNjI0MSByZz1wYXJ0eQp+IyEgdGlkPTEwNDIwMzcyOTIKWm9vayBncmF0dWxpZXJ0IHp1bSBQb3N0ZW4gaW0gcmVjaHRlbiBUaHJlYWQuLi4uIDspKSkpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IEZydWVoamFocnNwYXJ0eSBpbiBXaW50ZXJidXJnIChTdHJvaGFsbSwgIDkuIEphbiAyMDAzLCAxMzo1MDowNCk6Cn4jISBybj1ab29rIHJ0PTEwNDIxMTYyOTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQyMDM3MjkyCjp3aXJkIGFsdC4KCkhhZWxtY2hlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBzeWNob2xvZ2VuIHZvciEgKEVsaXphYmV0aCwgIDkuIEphbiAyMDAzLCAxODoyMDozNSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA0MjEwNTk1MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDIxMDU5NTIKbWVpbmUgZ3VldGUsIHRyb2V0ZSwgZGFzIGlzdCBuaWNodCBtZWhyIGx1c3RpZy4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUHN5Y2hvbG9nZW4gdm9yISAoS2VrcywgIDkuIEphbiAyMDAzLCAxODoyNTowNSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA0MjEwNTk1MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDIxMDU5NTIKaG0uLi4gc2VsdHNhbWVyd2Vpc2Uga29tbXQgbWlyIGRpZSBhc3NvemlhdGlvbiBiZWthbm50IHZvciA7LSkgdWVicmlnZW5zIC0KZ3J1bXBmIGtlbm4gaWNoIG5pY2h0LCBvZGVyPz8gc29sbHQgaWNoPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhhcHB5IEJpcnRoZGF5IChNYW5kcmFnb24sIDEwLiBKYW4gMjAwMywgMDA6Mzg6MTIpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTA0MjE1Mzg0NyByZz1hbnplaWdlbgp+IyEgdGlkPTEwNDIxNTM4NDcKCkhhY2ggZGFtYWxzLCBhbHMgaWNoIG5vY2gganVuZyB3YXIgLi4uLgoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhhcHB5IEJpcnRoZGF5IChNYW5kcmFnb24sIDEwLiBKYW4gMjAwMywgMDA6Mzg6MzIpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNDIxNTU0OTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQyMTUzODQ3CkFiZXIgR3JhdHVsaWVyZSA6LSkKCk1hKiAod2lsZCBzZWxic3RyZXBseWVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBCQyhuZXUpIChSb25kYSwgMTAuIEphbiAyMDAzLCAxOTo1ODoyMik6Cn4jISBybj1ab29rIHJ0PTEwNDIyMDI4OTUgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNDIwNjIyMjgKPiBBaC4uLiBkLmguIG1hbiBrYW5uIEF1dG8gdW5kIEZlcm5zZWhlciBkdXJjaCBNdWRkZW4gc3Vic3RpdHVpZXJlbj8gCgpaT09PSyEgQml0dGUhIEJyaW5nIGRpZSBHRVogbmljaHQgYXVjaCBub2NoIGRyYXVmLCBkYXNzIG11ZGRlbiB3aWUgZmVybnNlaGVuCmlzdCEgU29uc3QgbXVlc3NlbiB3aXIgYXVjaCBub2NoIGRhZnVlciB6YWhsZW4sIGRhc3Mgd2lyIHZvbSBQQwpUZWxuZXQtVmVyYmluZHVuZ2VuIGF1Zm1hY2hlbiBtdWVzc2VuIDstKAoKUm9uZGEgKnRyYXV0IGRlciBHRVogYWxsZXMgenUqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogQkMobmV1KSAoUm9uZGEsIDEwLiBKYW4gMjAwMywgMjA6MDc6MDcpOgp+IyEgcm49SHVtbmkgcnQ9MTA0MjE5ODc5OSByZz1nZWphbW1lcgp+IyEgdGlkPTEwNDIwNjIyMjgKPiBJY2ggZ2xhdWJlIGRhc3MgdmllbGUgKGxhZW5nc3QgbmljaHQgYWxsZSEpIElkZWVuIGdhciBuaWNodCBzbyBzY2hsZWNodCAKPiBzaW5kLiBEb3NlbnBmYW5kIHdpcmQgZGF6dSBmdWVocmVuLCBkYXNzIGJhbGQgdmllbGUgR3Jvc3NicmF1ZXJlaWVuIGRpZSAKPiBQcm9kdWt0aW9uIGRhdm9uIGRyb3NzZWxuIG11ZXNzZW4gdW5kIGRhbm4gYXVjaCBrbGVpbmUgdW5kIG1pdHRsZXJlIAo+IEJyYXVlcmVpZW4gd2llZGVyIGFiZW5kcyBhbiBkZW4gVGFua2VuIHVuZCBEb2VuZXJidWRlbiBlcmhhZWx0bGljaCBzaW5kLgo+IEZvZXJkZXJ1bmcgZGVzIE1pdHRlbHN0YW5kZXMuCgpIdW1uaS4gQWxzbyBpY2ggdmVyc3RlaGUsIGRhc3MgRHUgZGllIElkZWUgZ3V0IGZpbmRlc3QuIEFiZXIgaWNoIGdsYXViIGljaAp3aWxsIGFiZW5kcyBhbiBuZXIgRG9lbmVyYnVkZSBuZW4gRG9lbmVyIHVuZCBuZW4gQmllciB1bmQga2VpbmUga29tcGxldHRlCkJyYXVlcmVpIGthdWZlbi4gSWNoIGZhZW5kIGRhcyB1bnByYWt0aXNjaCBmdWVyIG1laW5lbiBCaWVyYmVkYXJmLgoKSnVzdCBteSAyIHVtZHJlaHVuZ3MsCgpSb25kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIHNwaWVsZXIgaGV1dGUgc28gd2VnbGVnZW4uLi4gKFJhbW1zdGVpbiwgMTAuIEphbiAyMDAzLCAyMTowMzo1NCk6Ci0tLSBWZXJzdWNoZSBhbGxlcyB6dSBlbnRzb3JnZW46Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLTsgIERhcyBQb3J0YWwga2FubiBuaWNodCBlbnRzb3JndAp3ZXJkZW4uOyogRGllOyoKZnU4M3c0MDV1ZmM4bjM1dWI0OTVuYXY5YzU3OW5tZjQ4NW40M3c1bWN1NDg1OXBudnU4bzRtY2VzdTU4dThzdm5lbTV1bWNlc3ZtYzsqCjY1ODdzbW81N29jb2VtcnR1b3NlNXV0OXBjODU2dXZucGVzNjd1NXBuc3ZzY25iNTY4dnA0Y241NzY5c2NtNjc0OXBuY2VzcmlsNWw7Kgp1czRpbnZ0b2VvNHRiOTAzdm9lc2I0dG9lYnJzb3V2cmI0bzV2dWVuNXV3YXBmdXZiYTM0ODU3Ync0amg1d3ZyaGM0enI0cmJjNzQ4OyoKNXpiNDV2NGNiZXM1ODk0bmNibHZpbmxiZGZjeWRidmhzODU0dnA3NDM1YmNha3NqcmhiZjRlaHNsbmY0N2h2dGhibGVsYzRmaHY4ajsqCnY5ODVuNnB2ZWJjZnU0bjU4cHd4bXZic3R3bjM0Y3c1djdzc25jaWVzdTV2cm5jbnR2bG5mY3NidnNvZW1jYzU0dHZvbnN2Y3NwdmU7KgpuY3Z0b2Nnem40dno2NzU0Y2hyb3ZuZWlzdjU0d3p2MDd2Yzl3bjlwdjV1bjN3NTczNGNranJlc2J2NGMzODluY3dlYnZyNDkzd25jOyoKc2U1bnV2NG1jdTZ2cHNtdHZ1cGRzN3RibnNwdm51cDQ1NmJzZXZuc2NmdW01NDg0d3BtY2VzaXR1dzQ1Y3VwbnNlb2Z1dmIzOHc0NTsqCm1jNXBvdXdidnBzbmN0dTlwc3Y0aW9wdTVzcDQ1N3NmaHN1NGV6NTk4NGRzcHY1NDd3M3Zic2V0cndjaHRuNDg1OXd6dmJzbGV0ejQ7Kgp1b2ZucmVpdGI0MzhzdmJuc3V0bzg1NHdyaGZzbHJ1ZmdoNXQ5NDh3aHJnamtkZ25zaXBmb3U1ZThmOXBjZnJldXZuc2VtY3V0b2VuOyoKdnhjczg5dHhzdm50dmk1NHVzb2Ntc3Z1dHhtc2Nzcm92aTVidXM0Y25zZXJ2dWNzbnVyYW5zZmtkb2VzamJ1NWNuNXZiNHNjMzluNTsqCm1zOWJ2OHhvZWM0bTU3OHM0ZTdsY241ZWw0NWJ2b2VvY255czU0dTU3ZDU0b2V1dmJsNHNpb29lbnVmNTBmcG1jNXM0b3Y3ZWJub2U7Kgplb2ZjdW5yb29lYnZ1dDRwOG54NDNvdjV1YnNwb2NuNHU1czQ1b2J2b25jdWY0b3NoNTQ4czlwbmM0NW9zZ2U1c3A0bnVmZzVodWxvOyoKZWFoYWY0bzVsN25zcnVvYnJ1Zm40ODlzYnZ1cm5jaW9zcnRidjQzdXc1emJjYWxvZXN1cmNiZWFzb2V2b2NiZXd1cm9vZXduY2VydTsqCjQzODk1cGNueXNmdWJ2d2FzcnpvYmF3aXJ6ZWNiYXdyZWl1YXduY2V6bHhlaXJ6YnZibGFjenI0NzNpb3hiYXd6dmM0OThjYmFrc3o7KgplZmRjYXdzcnpidnVpbGJhY3pmb2EzNGJjcHJhMzQ3YTM4NXRiY3dlcmlmd29hczV6ZmF3ZnpoNXppb3NyZmhvaXlzZmN6NGl3cm9jOyoKYnppd3JhZXNidm9yemNid2U3cjQ4MzljYndzODQ2M3dsYmM0c2kzbHp2Ymwzd3ZjYjN3czg0OWJ2Y3NpNDN6Y2JhbHY0YXp3bGNyejsqCjNhOGNsdmV3bGFmY3phdnd1aWxlNHpjZnU4M3c0MDV1ZmM4bjM1dWI0OTVuYXY5YzU3OW5tZjQ4NW40M3c1bWN1NDg1OXBudnU4bzQ7KgptY2VzdTU4dThzdm5lbTV1bWNlc3ZtYzY1ODdzbW81N29jb2VtcnR1b3NlNXV0OXBjODU2dXZucGVzNjd1NXBuc3ZzY25iNTY4dnA0OyoKY241NzY5c2NtNjc0OXBuY2VzcmlsNWx1czRpbnZ0b2VvNHRiOTAzdm9lc2I0dG9lYnJzb3V2cmI0bzV2dWVuNXV3YXBmdXZiYTM0ODsqCjU3Ync0amg1d3ZyaGM0enI0cmJjNzQ4NXpiNDV2NGNiZXM1ODk0bmNibHZpbmxiZGZjeWRidmhzODU0dnA3NDM1YmNha3NqcmhiZjQ7KgplaHNsbmY0N2h2dGhibGVsYzRmaHY4anY5ODVuNnB2ZWJjZnU0bjU4cHd4bXZic3R3bjM0Y3c1djdzc25jaWVzdTV2cm5jbnR2bG5mOyoKY3NidnNvZW1jYzU0dHZvbnN2Y3NwdmVuY3Z0b2Nnem40dno2NzU0Y2hyb3ZuZWlzdjU0d3p2MDd2Yzl3bjlwdjV1bjN3NTczNGNrajsqCnJlc2J2NGMzODluY3dlYnZyNDkzd25jc2U1bnV2NG1jdTZ2cHNtdHZ1cGRzN3RibnNwdm51cDQ1NmJzZXZuc2NmdW01NDg0d3BtY2U7KgpzaXR1dzQ1Y3VwbnNlb2Z1dmIzOHc0NW1jNXBvdXdidnBzbmN0dTlwc3Y0aW9wdTVzcDQ1N3NmaHN1NGV6NTk4NGRzcHY1NDd3M3ZiOyoKc2V0cndjaHRuNDg1OXd6dmJzbGV0ejR1Cm9mbnJlaXRiNDM4c3ZibnN1dG84NTR3cmhmc2xydWZnaDV0OTQ4d2hyZ2prZGduc2lwZm87Kgp1NWU4ZjlwY2ZyZXV2bnNlbWN1dG9lbnZ4Y3M4OXR4c3ZudHZpNTR1c29jbXN2dXR4bXNjc3Jvdmk1YnVzNGNuc2VydnVjc251cmU7KgpMaWNodGt1Z2VsIHd1cmRlCmVudHNvcmd0LjstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotLS0tLS0tLS0tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpub2NobWFsIChSYW1tc3RlaW4sIDEwLiBKYW4gMjAwMywgMjE6MDY6MjMpOgpOZWluLCBkYXMgaXMgbmljaCB2b24gbWlyLCBkaWVzZSB0b2xsZSBLdWdlbCBoYXQgd2VyIGFuIHA0IGFiZ2VsZWd0LCBmaW5kIGljaApzdXBlcmR1cGVybHVzdGlnLCBpY2ggZGFjaHRlIG1laW4gUmVjaG5lciBzdHVlcnp0IGdyYWQgYWIgb2RlciBzby4uLgoKQXVma2xhZXJlbmQgUmFtbXN0ZWluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHYXJkZXdhZWNodGVyIG1pdCBNYWdpZXJyZWNodGVuIChTbGF4LCAxMi4gSmFuIDIwMDMsIDA4OjE2OjQ5KToKRWxmZW5iYXVtOgpuCkRhcyBTdHVkaW8gdm9uIFByaW5jZS4KRXMgZ2lidCB2aWVyIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG1reiwgcXVlc3QsIHN1ZWRlbiB1bmQgZ2lsZGUuCkVpbiBXYWVjaHRlciBkZXIgR2FyZGUuCkVpbiBTdGVpbndheSBLb256ZXJ0Zmx1ZWdlbC4KRWluIEdhcmRld2FlY2h0ZXIgc3RlaHQgYXVmIGRlciBTY2h3ZWxsZSBkZXMgVG9kZXMuCjEwCkRlciBHYXJkZXdhZWNodGVyIHJ1ZnQ6IEFMQVJNISEhIFpVIERFTiBXQUZGRU4hISEKICBEdSB0cmlmZnN0IGRlbiBHYXJkZXdhZWNodGVyLgo+ICAgRGVyIEdhcmRld2FlY2h0ZXIgZ3JlaWZ0IERpY2ggbWl0IGRlbSBMYW5nc2Nod2VydCBhbi4KRGVyIEdhcmRld2FlY2h0ZXIgZ2VodCB6dW0gS2FmZmVldHJpbmtlbi4KRHUgdmVyZm9sZ3N0IGpldHp0IGVpbmVuIEdhcmRld2FlY2h0ZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3RhbW10aXNjaCBpbiBNYWxtb2UgKEN1Y2h1bGxpbiwgMTQuIEphbiAyMDAzLCAyMTo0NDo1OSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0MjU3NzA3MSByZz10cmVmZmVuCn4jISB0aWQ9MTA0MjU3NzA3MQpaYWhsc3QgZHUgbWlyIGRpZSBBbmZhaHJ0PyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3RhbW10aXNjaCBpbiBNYWxtb2UgKEdyaW1tYm9ybiwgMTQuIEphbiAyMDAzLCAyMTo0NToyNSk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTA0MjU3NzA5OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI1NzcwNzEKTmVpbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3RhbW10aXNjaCBpbiBNYWxtb2UgKEN1Y2h1bGxpbiwgMTQuIEphbiAyMDAzLCAyMTo0NTo0Nyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0MjU3NzEyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI1NzcwNzEKKmdydW56KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3RhbW10aXNjaCBpbiBNYWxtb2UgKEdyaW1tYm9ybiwgMTQuIEphbiAyMDAzLCAyMTo0NjoxMSk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTA0MjU3NzE0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI1NzcwNzEKV2VubiBpY2ggImphIiBzYWdlIGhhYiBpY2ggZGFzIGhhbGJlIE1HIGFtIEhhbHMsIGRhcyB0dXQgbmljaHQgbm90LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTdGFtbXRpc2NoIGluIE1hbG1vZSAoUGl0ZmFsbCwgMTQuIEphbiAyMDAzLCAyMTo0NjozNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0MjU3NzE3MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI1NzcwNzEKZ2lidCBzaWNoZXIgdHJvdHpkZW0gbm9jaCBsZXV0ZSBkaWUgc2ljaCBiZXNzZXJlcyB2b3JzdGVsbGVuIGtvZW5udGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTdGFtbXRpc2NoIGluIE1hbG1vZSAoR3JpbW1ib3JuLCAxNC4gSmFuIDIwMDMsIDIxOjQ3OjA2KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTA0MjU3NzE5NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI1NzcwNzEKRGFzIGlzdCBkaWUgYW5kZXJlIEhhZWxmdGUsIGF1ZiBkaWUgenUgdmVyemljaHRlbiBzaWNoIHNvd2llc28gbG9obnQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFN0YW1tdGlzY2ggaW4gTWFsbW9lIChQaXRmYWxsLCAxNC4gSmFuIDIwMDMsIDIxOjQ4OjE0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQyNTc3MjI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MjU3NzA3MQptYXRoZW1hdGlzY2ggZ2VzZWhlbiBmZWhsc3QgZHUgc2VsYnN0IGRhbm4gYWJlciBpbiBkZXIgYmV0cmFjaHR1bmcKc3lzdGVtZmVobGVyIG9kZXIgc28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFN0YW1tdGlzY2ggaW4gTWFsbW9lIChHcmltbWJvcm4sIDE0LiBKYW4gMjAwMywgMjE6NTA6MDIpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDQyNTc3Mjk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MjU3NzA3MQpIbW0/IE5laW4sIGljaCBrYW5uIG1pciBhbSBTYW1zdGFnIHRhdHNhZWNobGljaCBuaWNodHMgYmVzc2VycyB2b3JzdGVsbGVuIGFscwptaXQgbWVpbmVyIEdyb3NzbXV0dGVyIGltIENhc2FibGFuY2EgenUgc2l0emVuLCBlaW4gQnVkYXBlc3QgenUgZXNzZW4gdW5kCmVpbmVuIEtha2FvIG1pdCBTYWhuZSB6dSB0cmlua2VuLiBJbnNvZmVybiBmZWhsZSBpY2ggYWJzb2x1dCBuaWNodC4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFN0YW1tdGlzY2ggaW4gTWFsbW9lIChNdXBmZWwsIDE0LiBKYW4gMjAwMywgMjI6NDA6MTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDI1Nzc0MDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQyNTc3MDcxCkVpbiBCdWRhcGVzdD8KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU3RhbW10aXNjaCBpbiBNYWxtb2UgKExlaWJpLCAxNC4gSmFuIDIwMDMsIDIyOjQwOjQ3KToKfiMhIHJuPU11cGZlbCBydD0xMDQyNTgwNDExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MjU3NzA3MQpqYSB3dWVyZGUgbWljaCBhdWNoIG1hbCBpbnRlcmVzc2llcmVuIHdhcyBkYXMgaXN0LiB2b3IgYWxsZW0gd2VubiBtYW4gZXMgenVtCmthYmEgaXNzdC4KCmxlaWJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogU3RhbW10aXNjaCBpbiBNYWxtb2UgKEdyaW1tYm9ybiwgMTQuIEphbiAyMDAzLCAyMjo0MjoyNSk6Cn4jISBybj1MZWliaSBydD0xMDQyNTgwNDQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MjU3NzA3MQpTbyBlaW5lIEFydCBHZWJhZWNrc3R1ZWNrLiBNaXQgU2FobmUgdW5kIE51ZXNzZW4gdW5kIHNvIGFscyBSb2xsZSB1bmQgc28uClNlbmlvcmVuLURvZW5lci4gTWFuIGlzc3QgZXMgenVtIEthZmZlZSwgYWJlciBpY2ggdHJpbmtlIGtlaW5lbiBLYWZmZWUsIFRlZSBpbgpTY2h3ZWRlbiBmYWVsbHQgdW50ZXIgZGFzIEtyaWVnc3dhZmZlbmtvbnRyb2xsZ2VzZXR6LCBhbHNvIHRyaW5rZSBpY2ggS2FrYW8uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBTdGFtbXRpc2NoIGluIE1hbG1vZSAoTXVwZmVsLCAxNC4gSmFuIDIwMDMsIDIyOjQ4OjQ1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQyNTgwNTQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MjU3NzA3MQpIbS4uLiB3aWUga2FlbWUgaWNoIGRlbm4gZGEgaGluPyBWb20gRmx1Z2hhZmVuIE9TL01TIGthbm4gaWNoIHp3YXIgbmFjaApTdG9ja2hvbG0gZmxpZWdlbiwgYWJlciBuaWNodCBuYWNoIE1hbG1vZS4uLiBpY2ggd2Vpc3MgbmljaHRtYWwgd2llIHdlaXQgZGllClN0YWVkdGUgYXVzZWluYW5kZXIgc2luZCAoa2VpbiBBdGxhcyBoaWVyIDspLiBJY2ggZ2xhdWJlIGFiZXIsIGVzIHd1ZXJkZSBlaW5lCmdyb2Vzc2VyZSBSZWlzZSBnZWJlbiwgYWxzbzoKCi0xIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFN0YW1tdGlzY2ggaW4gTWFsbW9lIChWYW5pb24sIDE0LiBKYW4gMjAwMywgMjI6NDk6MDYpOgp+IyEgcm49TXVwZmVsIHJ0PTEwNDI1ODA5MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQyNTc3MDcxCi0xCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFN0YW1tdGlzY2ggaW4gTWFsbW9lIChHcmltbWJvcm4sIDE0LiBKYW4gMjAwMywgMjI6NDk6MjYpOgp+IyEgcm49TXVwZmVsIHJ0PTEwNDI1ODA5MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQyNTc3MDcxCkFjaCB3YXMsIGRhIGdpYnRzIG5lIGRpcmVrdGUgWnVndmVyYmluZHVuZy4gT2huZSBGJlMsIG9obmUgQkMsIGdhbnoKc3RyYWlnaHRmb3J3YXJkLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogU3RhbW10aXNjaCBpbiBNYWxtb2UgKEJldHR5LCAxNS4gSmFuIDIwMDMsIDEwOjMxOjI4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQyNTgwOTY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MjU3NzA3MQpGbGllZyBuYWNoIEtvcGVuaGFnZW4uIERhcyBpc3QgZ2xlaWNoIG5lYmVuYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogU3RhbW10aXNjaCBpbiBNYWxtb2UgKEdyaW1tYm9ybiwgMTUuIEphbiAyMDAzLCAxMToxMjozMSk6Cn4jISBybj1CZXR0eSBydD0xMDQyNjIzMDg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MjU3NzA3MQpJY2ggZ2xhdWJlIG5pY2h0IGRhc3MgZXIgZWluZW4gRmx1ZyBTdG9ja2hvbG0gLSBLb3BlbmhhZ2VuIHNvIGd1ZW5zdGlnCmJla29tbXQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBTdGFtbXRpc2NoIGluIE1hbG1vZSAoQmV0dHksIDE1LiBKYW4gMjAwMywgMTE6Mjc6MzIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDI2MjU1NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQyNTc3MDcxCkdyZXZlbi1Lb3BlbmhhZ2VuLiBEYXMgbGV0enRlIFJMLUFiZW50ZXVlciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHJhdHRlbiAoQmFtYmksIDE1LiBKYW4gMjAwMywgMjI6NTY6MDQpOgp+IyEgcm49UGF0cnluIHJ0PTEwNDI2NjcyMzkgcmc9ZC51bnRlcndlbHQKfiMhIHRpZD0xMDQyNjY3MjM5CkdlZ2VuIGxlaWNoZW5mcmVzc2VuZGUgWndlaXRpZXMga2FubiBpY2ggRGlyIGVpbiBwYWFyIFRpcHMgZ2ViZW4sIGFiZXIgZGllCmJyYXVjaHN0IER1IHZlcm11dGxpY2ggbmljaHQuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHJhdHRlbiAoUGF0cnluLCAxNS4gSmFuIDIwMDMsIDIyOjU3OjI5KToKfiMhIHJuPUJhbWJpIHJ0PTEwNDI2Njc3NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQyNjY3MjM5CmRhIGRlciB0b2QgZGllIG1laXN0ZW4gbGV1dGUgZWgga2VpbiBzdHVlY2sgaW50ZXJlc3NpZXJ0LCBzaW5kIGRpZSBtZWlzdGVuCnRpcHMgbGVpZGVyIGF1Y2ggc2lubmxvcy4gendlaXRpZXMgZmljaHQgaGFsdCBuaXggYW4sIHVuZCBkaWUgb2Z0CmRpc2t1dGllcnRlbiB1bmQgaW1tZXIgZ2xlaWNoYmxlaWJlbmRlbiAidG9kZXNmb2xnZW4iIGhhbHQgYXVjaCBuaWNoLgoKLS0gCnBhdHJ5bgouLAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogcmF0dGVuIChNYW5kcmFnb24sIDE1LiBKYW4gMjAwMywgMjI6NTg6MDUpOgp+IyEgcm49UGF0cnluIHJ0PTEwNDI2Njc4NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQyNjY3MjM5CkZyaXNzIGhhbHQgZGllIEF1c3J1ZXN0dW5nIGdsZWljaCBtaXQgLi4uCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHJhdHRlbiAoUGF0cnluLCAxNS4gSmFuIDIwMDMsIDIyOjU4OjQ3KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDQyNjY3ODg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MjY2NzIzOQpzb3p1c2FnZW4gYXVjaCBub2NoIGVpZ2VuZSB0b2Rlc2ZvbGdlbiBwcm9ncmFtbWllcmVuLi4uc2V1ZnogOykKCi0tIApwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHEgKEN1Y2h1bGxpbiwgMTYuIEphbiAyMDAzLCAxMTo1MToyNSk6Cn4jISBvbj1DdWNodWxsaW4gb3Q9MTA0MjcxNDI3MyBvZz1kLnVudGVyd2VsdAp+IyEgcm49Tm9ubmUgcnQ9MTA0MjcxNDA3MiByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTEwNDI3MTM1MjcKRGFubiBrb21tdCB2ZXJzZWhlbnRsaWNoIGVpbmUga29taXNjaGUgVmVyc2lvbiB2b24gInd1bmRlciIgZHJhbiwgCm1pdCBkZXIgYWxsZSBSYXR0ZW4gdG90IHVtZmFsbGVuLi4uIHdhbm4gbm9jaG1hbCB3dXJkZSBkZXIgU3BydWNoIAplbmRsaWNoIGdlZGVja2VsdD8gOikKCkljaCBsaWViZSBiYXNoZW5kZSBSZWdpb25zbWFnaWVyLi4uICpncnVueiogOikKCllUQ3UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IHEgKFRodWZoaXIsIDE2LiBKYW4gMjAwMywgMTM6MzU6MjQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDI3MjA0MjAgcmc9ZC51bnRlcndlbHQKfiMhIHRpZD0xMDQyNzEzNTI3CnNhZyBtaXIgYml0dGUgZWluZW4gbWFnaWVyLCBkZXIgZWluZXMgc2VpbmVyIG1vbnN0ZXIgQUJnZXdlcnRldCBoYWV0dGUsIHdlaWwKZXIgZGVyIGFuc2ljaHQgaXN0LCBkYXNzIGVzIHp1ICJzY2h3ZXIiIHdhciEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IHEgKEdyaW1tYm9ybiwgMTYuIEphbiAyMDAzLCAxMzozNjozNCk6Cn4jISBybj1UaHVmaGlyIHJ0PTEwNDI3MjA1MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQyNzEzNTI3CktlaW5lciwgd2llIGtvbW1zdCBEdSBqZXR6dCBkYWRyYXVmPyBEaWUgU3BpZWxlciB3ZXJkZW4gaW1tZXIgc3RhZXJrZXIsIGFsc28Kd2VyZGVuIGRpZSBOUENzIGF1Y2ggaW1tZXIgc3RhZXJrZXIuIEZhaXIncyBmYWlyLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBxIChDdWNodWxsaW4sIDE2LiBKYW4gMjAwMywgMTM6Mzc6MDIpOgp+IyEgcm49VGh1ZmhpciBydD0xMDQyNzIwNTI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MjcxMzUyNwpOYWphLCBkYXNzIGVpbiBNYWdpZXIgc2VpbmUgTW9uc3RlciBhYmdld2VydGV0IGJla29tbWVuIGhhdCwgd2VpbCBlcgpkZXIgQW5zaWNodCBnZXdvcmRlbiBpc3QsIGRhc3MgZXMgenUgInNjaHdlciIgc2VpLCBpc3QgbmljaHQgR0FOWiBuZXUuIDopCgpBbnNvbnN0ZW4gaGF0IFBhcmFjZWxzdXMgaW4gZGVyIFRhdCBzY2hvbiBuYWNoIHVudGVuIGtvcnJpZ2llcnQsIHouQi4gd2FzCmRpZSBWaWVjaGVyIGluIGRlciBTZWhlci1hdHRyaWJ1dGllcnRlbiBUaG9ycy1IYW1tZXItUXVlc3QgYW5nZWh0LgoKQXVjaCB3ZW5ucyBuaWNodCBnYW56IGluIGRpZSBSdWJyaWsgcGFzc3QsCllUQ3UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IHEgKEZvb2JhciwgMTYuIEphbiAyMDAzLCAxMzozNzoyNik6Cn4jISBybj1UaHVmaGlyIHJ0PTEwNDI3MjA1MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQyNzEzNTI3ClBhdHJ5biBJSVJDLCB1bmQgendhciBuYWNoIGRlciB2b3JsZXR6ZW4gUmF0dGVuYWVuZGVydW5nIGFscyBkaWUgZWluIHBhYXIgVGFnZQpsYW5nIHVua2lsbGJhciB3YXJlbi4KCkdydXNzLAoKICAgRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBxIChNb3Jnb3RoLCAxNi4gSmFuIDIwMDMsIDEzOjQzOjM3KToKfiMhIHJuPVRodWZoaXIgcnQ9MTA0MjcyMDUyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI3MTM1MjcKTWVsZCAhCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVGVzdCBaYWJ1cnplIE9zb2Jvd29jaSAoQ3VjaHVsbGluLCAxNi4gSmFuIDIwMDMsIDE0OjIxOjM5KToKfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDQyNzIzMjkxIG9nPXd3dwp+IyEgcm49Tm9ubmUgcnQ9MTA0MjcyMzE2MCByZz13d3cKfiMhIHRpZD0xMDQyNzIxODQwCkRhcyBoZWlzc3Q6IER1IGJpc3Qgc2Nod2VyIHZlcmhhbHRlbnNnZXN0b2VydCwgTm9ubmUuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEJhbWJ1bGtvLCAxNi4gSmFuIDIwMDMsIDE0OjQ1OjU0KToKW0FsbGdlbWVpbjpCZWVyaGVhcnRdIGhtLCBoYWIgc29uIHRyb2xsIGFuZ2VncmlmZmVuIHVuZCBiaW4gamV0enQgdmVyd2lycnQgdW5kCltBbGxnZW1laW46QmVlcmhlYXJ0XSBrYW5uIG5peCBtZWhyIG1hY2hlbi4/CltUb2Q6TGFyc10gRWluZSBTcGlubmUgaGF0IGdlcmFkZSBCZWVyaGVhcnQgdW1nZWJyYWNodC4gICAgCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUmF0cyAoQ3VjaHVsbGluLCAxNi4gSmFuIDIwMDMsIDE2OjM4OjI3KToKfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDQyNzMxNTAzIG9nPWQudW50ZXJ3ZWx0Cn4jISBybj1FbGJlcmV0IHJ0PTEwNDI3MzE0Njkgcmc9ZC51bnRlcndlbHQKfiMhIHRpZD0xMDQyNzEyNDg4ClBhcmEgZGlzc3QgaW4gZGVuIGxldHp0ZW4gWnVlZ2VuLCBsYXNzdCBkZW4gZG9jaCBpbiBGcmllZGVuLiA7KQoKLT5TY2htYXJybgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IHEgKE5pYmVsLCAxNi4gSmFuIDIwMDMsIDE3OjA0OjQ2KToKfiMhIHJuPUZvb2JhciBydD0xMDQyNzMyNTE0IHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9MTA0MjcxMzUyNwo+IERpZXNlIGdhbnplbiBHaWxkZW5rcmllZ2Uga290emVuIG1pY2ggZGVybWFzc2VuIGFuLCBkYXMgZ2xhdWJ0IElociBuaWNodAoKRGFubiBzb2xsdGVzdCBEdSB2aWVsbGVpY2h0IG5pY2h0IG5vY2ggZGF6dSBiZWl0cmFnZW4uLi4KICAtIE5pYmVsCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBxIChDdWNodWxsaW4sIDE2LiBKYW4gMjAwMywgMTc6MTc6MzYpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwNDI3MzM4MDYgcmc9ZC51bnRlcndlbHQKfiMhIHRpZD0xMDQyNzEzNTI3CiJ1bnZvcmhlcmdlaGVuIiAuLi4uIGtsYXNzZS4gR2lsdCBkYXMgYWxzIEJ1c2hpc20/ICpzZXVmeioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogcSAoR3JpbW1ib3JuLCAxNi4gSmFuIDIwMDMsIDE3OjI0OjU3KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDQyNzMzODU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MjcxMzUyNwpEYXMga29tbXQgYXVmIGRhcyBVbnRlcnN1Y2h1bmdzZXJnZWJuaXMgZGVyIEluc3Bla3ReV0JhbGFuY2UgYW4sIHd1ZXJkZSBpY2gKc2FnZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBxIChGb29iYXIsIDE2LiBKYW4gMjAwMywgMTc6Mzg6MDApOgp+IyEgcm49TmliZWwgcnQ9MTA0MjczMzA4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI3MTM1MjcKQWJlciBpY2ggbXVzcyBtaWNoIGRvY2ggd2VocmVuLCBOaWJlbC4KCkdydXNzLAoKICAgRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogcSAoR3JpbW1ib3JuLCAxNy4gSmFuIDIwMDMsIDExOjEzOjAwKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDQyNzk4MzcwIG9nPWQudW50ZXJ3ZWx0Cn4jISBybj1Ob25uZSBydD0xMDQyNzk4MjQ5IHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9MTA0MjcxMzUyNwpXZW5uIER1LCBzY2hvbiBmbGFtZW4gd2lsbHN0IG1hY2gsIGRhcyBiZXNzZXIgbWl0IGtvcnJla3RlciBaZWljaGVuc2V0enVuZy4KRGFzIG1hY2h0IERpY2gsIHdlbmlnZXIgYW5ncmVpZmJhci4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldGRpZ2VzdCAoR3JpbW1ib3JuLCAxNy4gSmFuIDIwMDMsIDE1OjIwOjIzKToKSGllciBtYWwgd2llZGVyIGVpbiBIaWdobGlnaHQgZGVzIG5ldGRpZ2VzdDoKClJlOiBJY2gga2F1ZiBzZWl0IG5ldWVzdGVtIG51ciBub2NoIGltIEJ1Y2hsYWRlbgpGcm9tOiBXb21iYWVyICgxMy4gSmFudWFyIDIwMDMgOToxOSkKCj4gLi4uZGVyIEdydW5kPwo+Cj4KPiBDYS4gMTY1IGNtIGdyb3NzLCBCcmF1bmUgQXVnZW4sIHN1ZXNzZSBHcnVlYmNoZW4sIGVpbiBMYWVjaGVsbiwgZGFzcyBkaWUKPiBCdXR0ZXIgaW0gS3VlaGxzY2hyYW5rIHNjaG1lbHplbiBsYWVzc3QgdW5kIHVud2lkZXJzdGVobGljaGVuIENoYXJtZS4KPgo+IFdhcyBrYW5uIEFtYXpvbiBkYSBub2NoIGVudGdlZ2Vuc2V0emVuPwoKIkt1bmRlbiwgZGllIHNpY2ggZnVlciBkaWVzZSBGcmF1IGludGVyZXNzaWVyZW4sIGZpbmRlbiBhdWNoIGZvbGdlbmRlCkZyYXVlbiB0b2xsOiAuLi4uLi4iCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5haXZlIEZyZXVuZGUsIGRpZSBpY2ggaGFiIChWYW5pb24sIDE3LiBKYW4gMjAwMywgMTY6MjE6MzkpOgp+IyEgb249VmFuaW9uIG90PTEwNDI4MTY3MTQgb2c9ZGlza3Vzc2lvbgpYWFggdGVpbHQgRGlyIG1pdDogZHUgaGFzdCBkb2NoIGdhciBrZWluZSBhaG51bmcgdW0gd2FzIGVzIGRhIGdlaHQgOikpKSkpCgpTdGltbXQsIGFiZXIgZGFzIGhhdCBub2NoIG5pZSBqZW1hbmRlbiBhYmdlaGFsdGVuLCBpbiBkZXIgTVBBCm1pdHp1ZGlza3V0aWVyZW4uIFdhcnVtIHNvbGwgYXVzZ2VyZWNobmV0IGljaCBqZXR6dCBlaW5lIEF1c25haG1lIG1hY2hlbj8KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MTQ0MzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQ3VjaHVsbGluLCAxNy4gSmFuIDIwMDMsIDE2OjQwOjE2KToKfiMhIHJuPVB1ayBydD0xMDQyODE3OTY0IHJnPWRpc2t1c3Npb24KfiMhIHRpZD05ODIzMjgyNzgKTGVnIERpciBtYWwgd2llZGVyIGVpbmVuIGJlc3NlcmVuIFNjaHJlaWJzdGlsIHp1LiBEdSBoYXN0IHp1IGxhbmdlCmltIEhvbHlNaXNzaW9uIHJ1bWdlaGFuZ2VuLi4uIDspCgpZVEN1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MjogcSAoUm9uZGEsIDE3LiBKYW4gMjAwMywgMTc6NTA6MzQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDI4MTU5NzEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNDI3MTM1MjcKR3JpbW1ib3JuLCBlcyBpc3QgdmllbCBzY2hsaW1tZXI6IFBhZHJlaWMgaGF0IHF1YXNpIGJlaGF1cHRldCwgZGFzcyBDdWNodWxsaW4KdW5kIER1IHN1ZXNzIHdhZXJ0LiBEQVMgaXN0IGRlZmluaXRpdiBub2NoIGVpbiB2aWVsIHNjaGxpbW1lcmVzIFplaWNoZW4gZnVlcgplaW5lbiBrcmFua2VuIEdlaXN0LCBhbHMgZXMgMjMgQXVzcnVmdW5nc3plaWNoZW4gaW4gZWluZXIgWmVpbGUgc2Vpbgprb2VubnRlbi4uLgoKUm9uZGEgKk51ciBTY2hydW1wZmkgaXN0IHN1ZXNzISoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBxIChEZWVwYmx1ZSwgMTcuIEphbiAyMDAzLCAxODowOTo1Nyk6Cn4jISBybj1OaWJlbCBydD0xMDQyODExNzg4IHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9MTA0MjcxMzUyNwpXYXMsIGRpZSBrb2VubmVuIGRhcyBuaWNodD8gUGF0cnluLCBzb2ZvcnQgZWluYmF1ZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhtbW0uLi4uIChXaGl0ZXRpZ2VyLCAxNy4gSmFuIDIwMDMsIDE5OjE3OjE4KToKRGllIGdyb3NzZSBHbG9ja2Ugdm9uIFBvcnQgVmFpbiB2ZXJrdWVuZGV0IGRpZSBBbmt1bmZ0IHZvbiBEaWt0YXR1ciBpbQpNb3JnZW5ncmF1ZW4KLS0KV1QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBobW1tLi4uLiAoVmFuaW9uLCAxNy4gSmFuIDIwMDMsIDE5OjM4OjAxKToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA0MjgyNzQzOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI4Mjc0MzgKRGFiZWkgaXMgZGFzIE1HIGRvY2ggZWluZSBSYWV0ZS1SZXB1Ymxpay4gT2Rlcj8gUG9saXRvbG9nZW4gdm9yIQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaG1tbS4uLi4gKE1hbmRyYWdvbiwgMTcuIEphbiAyMDAzLCAyMzo0OToyNCk6Cn4jISBybj1WYW5pb24gcnQ9MTA0MjgyODY4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI4Mjc0MzgKRGFzIE1HIGlzdCBlaW4gVGhlb2tyYXRpZSBuYWNoIGRlbSBNb2RlbGwgZGVzIFZhdGlrYW5zIC4uLi4gRXJ6a2FyZGluYWVsZQp3YWVobGVuIGRlbiBHb3R0cGFwc3QsIGRlciB3aWVkZXJ1bSBFcnprYXJkaW5hZWxlIGVybmVubnQgLi4uCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGhtbW0uLi4uIChHcmltbWJvcm4sIDE3LiBKYW4gMjAwMywgMjM6NTA6MTIpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNDI4NDM3NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQyODI3NDM4ClVuZCBEdSBoYXN0IGpldHp0Li4uIHdpZXZpZWxlIEphaHJlIGdlYnJhdWNodCB1bSBkYXMgenUgbWVya2VuPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBobW1tLi4uLiAoTWFuZHJhZ29uLCAxNy4gSmFuIDIwMDMsIDIzOjUwOjQwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQyODQzODEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MjgyNzQzOApEYXMgd2Vpc3MgaWNoIHNjaG9uIGxhbmdlIC4uLiB3aWVzbyBmcmFnc3QgRHU/CgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGhtbW0uLi4uIChWYW5pb24sIDE3LiBKYW4gMjAwMywgMjM6NTA6NDYpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNDI4NDM3NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQyODI3NDM4CkljaCBoYWIgUmFldGVyZXB1YmxpayBlaWdlbnRsaWNoIG1pdHRsZXJ3ZWlsZSBhdWNoIGF1ZmdlZ2ViZW4gdW5kIG1pY2gKZW50c2NoaWVkZW4sIGRhc3MgZGFzIE1HIGVpbmUgVGVjaG5va3JhdGllIGlzdC4KClYqLCBtdXNzIHNpY2ggZGFzIG1pdCBkZW4gUmVnaWVydW5nc2Zvcm1lbiBub2NobWFsIGR1cmNobGVzZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBobW1tLi4uLiAoR3JpbW1ib3JuLCAxNy4gSmFuIDIwMDMsIDIzOjUxOjAyKToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDQyODQzODQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MjgyNzQzOApPY2gsIGRhcyBrbGFuZyBzbyBhbHMgc2VpIGRpZSBFcmtlbm50bmlzIG5ldSBmdWVyIERpY2guCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm11dWggKFBpdGZhbGwsIDE4LiBKYW4gMjAwMywgMDE6MDI6NTEpOgpuZXVsaWNoOgpkYXJrd2luZyBzYWd0OiBpY2ggYmluIG5pY2h0IGJlc29mZmVuCnBpdGZhbGwgc2FndDogYmlzdCBkdSB3b2hsLCBkdSBrYW5uc3QgbmljaHQgbWVociB0aXBwZW4KRGFya3dpbmcgc2FndDogZG9jaCwgbm9jaCBoYWIgaWNoIHRhYnVsYXRvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChGb29iYXIsIDE4LiBKYW4gMjAwMywgMDE6NDE6MTUpOgpbVG9kOkxhcnNdIEVpbmUgS2FrZXJsYWtlIGhhdCBnZXJhZGUgTG9vZ2F0IHVtZ2VicmFjaHQuCgp3ZW5pZyBzcGFldGVyOgpbQmVpbGVpZDpMb29nYXRdIGhtbW1wZiwgZGllIEFtZWlzZW4gaGFiIGljaCBqYSBub2NoIHRvdGJla29tbWVuIHVuZCBQaGx5YWtlbgpbQmVpbGVpZDpMb29nYXRdIHdhciBhdWNoIHNjaG9uIGhhYnRvdCBiaXMgaWhuIG5lbiBkb29mZXIgWmF1YmkgIGJlZnJpZWRldCBoYXQKW0JlaWxlaWQ6TG9vZ2F0XSA6KCAgYWJlciBkaWUgS2FrZXJsYWtlIHdhciBkYW5uIGRvY2ggenV2aWVsIGZ1ZXIgbWljaCA6KApbVG9kOkxhcnNdIEVpbmUgU3Bpbm5lIGhhdCBnZXJhZGUgTG9vZ2F0IHVtZ2VicmFjaHQuCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKFNoYWVlbmEsIDE4LiBKYW4gMjAwMywgMDk6MTM6NDEpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNDI4NTA0NzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQyODUwNDc1ClBobHlha2VuIGxhZXNzdCBzaWNoIG5pY2h0IHZvbiBuZW0gImRvb2ZlbiIgWmF1YmkgYmVmcmllZGVuLgoKbmVuIGRvb2ZlciBaYXViaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FtcGZtdWggKFNsYXgsIDE4LiBKYW4gMjAwMywgMTA6MzI6MzcpOgpzY2hhdQpIaWVyIG1hY2h0IGRlciBXYWxkd2VnIGVpbmVuIHNjaGFyZmVuIEtuaWNrLCBEdSBob2Vyc3QgbGVpc2VzIFBsYWV0c2NoZXJuIHVuZApkYXMgc2FuZnRlIEd1cmdlbG4gdm9uIFdhc3Nlci4gRGllIEJhZXVtZSB3ZWljaGVuIGV0d2FzIHp1cnVlY2sgdW5kIGdlYmVuIGltCk5vcmRvc3RlbiBlaW5lIGtsZWluZSBMaWNodHVuZyBmcmVpLiBJbSBOb3Jkd2VzdGVuIGlzdCBlaW5lIEtyZXV6dW5nLCBkb3J0CmxhdWZlbiB2aWVsZSBXZWdlIHp1c2FtbWVuIHVuZCB3aWVkZXIgYXVzZWluYW5kZXIuIER1cmNoIGRhcyBHZXdpcnIgZGVyCkJhdW1zdGFlbW1lIGVyaGFzY2hzdCBEdSBlaW5lbiBzZWx0ZW5lbiBCbGljayBhdWYgZGllIGhpZXIgbGViZW5kZW4sIHdpbGRlbgpLYWVtcGZlcmt1ZWhlLiBBbHNvIHNlaSBuaWNodCBhbGx6dSBsYXV0LCBzb25zdCB2ZXJzY2hldWNoc3QgRHUgc2llIG5vY2guCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBub3Jkd2VzdGVuIHVuZCBub3Jkb3N0ZW4uCkVpbmUgcmllc2lnZSBLYWVtcGZlcmt1aCB3ZWlkZXQgZ2VtdWV0bGljaCBhdWYgZGVtIFdlZy4KPiBEdSBoYXN0IGpldHp0IDIyNiBMZWJlbnNwdW5rdGUgdW5kIDcxIEtvbnplbnRyYXRpb25zcHVua3RlLgp1bnRlcnN1Y2hlIGt1aApEaWUgS2FtcGZrdWVoZSwgb2RlciB3aWUgZXMgcmljaHRpZyBoZWlzc3Q6IEthZW1wZmVya3VlaGUsIHNpbmQgZWluZQp1bmJla2FubnRlIFVudGVyYXJ0IGRlciBub3JtYWxlbiBzY2h3YXJ6YnVudGVuIEhhdXNrdWguIFNpZSB1bnRlcnNjaGVpZGVuIHNpY2gKbmljaHQgaW4gaWhyZW0gQXVzc2VoZW4sIHNvbmRlcm4gaW4gaWhyZW0gVmVyaGFsdGVuLiBXYWVocmVuZCBkaWUgbm9ybWFsZQpIYXVza3VoIE1pbGNoIGdpYnQsIHRyaW5rdCBkaWUgS2FtcGZrdWggc2llLiBVbmQgZGllIG5vcm1hbGUgSGF1c2t1aCBsYXVlcnQKYXVjaCBuaWNodCBmcmllZGZlcnRpZ2VuIFdhbmRlcmVybiBhdWYsIHVtIHNpZSBhdXN6dW5laG1lbi4KU2llIGlzdCBhYnNvbHV0IGZpdC4KMTAwClNpZSB0cmFlZ3QgYmVpIHNpY2g6CkVpbmUgU3Bhcmt1aC4KUGl0ZmFsbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQo+IER1IGhhc3QgamV0enQgMjI2IExlYmVuc3B1bmt0ZSB1bmQgNzIgS29uemVudHJhdGlvbnNwdW5rdGUuCkRlaW4gRnJldW5kIFBpdGZhbGwgdGVpbHQgRGlyIG1pdDogbXVoCkR1IGhhc3QgamV0enQgMjI2IExlYmVuc3B1bmt0ZSB1bmQgNzMgS29uemVudHJhdGlvbnNwdW5rdGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChNb3Jnb25hdGUsIDE4LiBKYW4gMjAwMywgMTA6NTI6MDkpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNDI4NTA0NzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQyODUwNDc1CnZpZWxsZWljaHQgc29sbHRlIHNjaGFldHogaW4gZGllIHNwaWVsZXItc2hlbGwgZWluZ2ViYXV0IHdlcmRlbiwgZGFtaXQgc2ljaApsZXZlbCAxIHNwaWVsZXIgbmljaHQgYW0gZHJhY2hlbmdvdHQgdmVyc3VjaGVuLCBmYWxscyBkZXIgd2VnIG1hbApmcmVpZ2VtZXR6ZWx0IGlzdC4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc2NodXR6em9uZSAoQ3VjaHVsbGluLCAxOS4gSmFuIDIwMDMsIDAzOjEzOjQwKToKfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDQyOTQyNDA4IG9nPWdpbGRlbi56YXViZXJlcgp+IyEgcm49Rm9vYmFyIHJ0PTEwNDI5NDIzNTAgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTA0Mjk0MDgxMQpOYSBkYW5uIG11c3MgZGllIE9iamVrdGJhbGFuY2UgamEgZGllIEJlbG9obnVuZyBhYndlcnRlbiEgXTpePgoKU0NOUiAtIFlUQ3UgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW1hcnlsbGlzLCAxOS4gSmFuIDIwMDMsIDA5OjI1OjQ3KToKW01vZXJkZXI6R2Vpc3QgZWluZXIgU2luZ3NjaGFyXSBJY2ggc2FndGUgZG9jaCAiSWNoIGVyZ2ViZSBtaWNoISIsIFNsYXguCkR1IHRlaWxzdCBTbGF4IG1pdDogYWhhLi4uIGFsdGUgRUtzIGF1c2dyYWJlbj8gOikKU2xheCB0ZWlsdCBEaXIgbWl0OiBnZW5hdSA7KQpTbGF4IHRlaWx0IERpciBtaXQ6IGRpZSBxdWVzdCBzdWNrdCBzbyBhYmVyIGVrcyBtdWVzc2VuIHNlaW4gOykKW1RvZDpMYXJzXSBEaWUgZ2VsYiBzY2hpbGxlcm5kZSBBeHQgaGF0IGdlcmFkZSBTbGF4IHVtZ2VicmFjaHQuCltUb2Q6RGllIGdlbGIgc2NoaWxsZXJuZGUgQXh0IHp1ZWNodGlndCBkZXMgc2NobGVjaHRlbiBTYWVuZ2VycycgWnVuZycuXQoKc2NuciwKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFcnNjaG9lcGZ1bmdzcHVua3RlIChDdWNodWxsaW4sIDE5LiBKYW4gMjAwMywgMTM6NDU6MDcpOgp+IyEgcm49U2VsZXZlbiBydD0xMDQyOTgwMjY1IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA0MjkxMTUxNwpXYXMgZXJ3YXJ0ZXN0IER1IHZvbiBlaW5lciBXZWx0LCBpbiBkZXIgZGVyIFRvZCBlaW5lbiB6d2VpdGVuIFZvcm5hbWVuCmhhdD8hIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRXJzY2hvZXBmdW5nc3B1bmt0ZSAoR25vbWUsIDE5LiBKYW4gMjAwMywgMTM6NDg6NDEpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwNDI5ODAzMDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQyOTExNTE3ClRPRCBMQVJTLCBUT0Q/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFcnNjaG9lcGZ1bmdzcHVua3RlIChNYW5kcmFnb24sIDE5LiBKYW4gMjAwMywgMTM6NDk6MzEpOgp+IyEgcm49R25vbWUgcnQ9MTA0Mjk4MDUyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI5MTE1MTcKTmVpbi4gTEFSUyBUT0QsIExBUlM/IDotKQoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogVGF1YiB1bmQgQmxpbmRoZWl0Li4uIChDdWNodWxsaW4sIDE5LiBKYW4gMjAwMywgMTc6MDY6MTIpOgp+IyEgb249Q3VjaHVsbGluIG90PTEwNDI5OTIzNjggb2c9c2VoZXIuZW50d2lja2x1bmcKfiMhIHJuPUdub21lIHJ0PTEwNDI5OTIyMjEgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD0xMDQyOTExNTE3CldlcmQnIER1IGRvY2ggTWFnaWVyLiBPZGVyIGZpbmRlc3QgRHUgZGFzIExpY2h0c3kuLi4gc3kuLi4gYXJnaCAuLi4KdG9sbD8gOikKCkphIGphLCBpY2ggc2NoaWViIGVzIHNjaG9uIG5hY2ggU2NobWFycm4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBUYXViIHVuZCBCbGluZGhlaXQuLi4gKE1hbmRyYWdvbiwgMTkuIEphbiAyMDAzLCAxNzoxMTowOSk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTA0Mjk5MjM3MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI5MTE1MTcKV2llIGthbm5zdCBEdSBzY2hyZWliZW4sIGVzIGdhZWJlIGtlaW4gTGljaHRzeXN0ZW0/PwoKQXVjaCBkaWUgZ2VuZXJlbGxlIEFic3RpbmVueiB2b24gTGljaHQgKFBfTElHSFQ9MCkgd2FlcmVuIGVpbiBTeXN0ZW0uIEtlaW4KZ3V0ZXMgLi4uIGFiZXIgZXMgZ2lidCBzY2hsaW1tZXJlIC4uLi4gKHEuZS5kLikKCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IFRhdWIgdW5kIEJsaW5kaGVpdC4uLiAoQ3VjaHVsbGluLCAxOS4gSmFuIDIwMDMsIDE3OjEyOjQ3KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDQyOTkyNjY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MjkxMTUxNwpBYiBlaW5lbSBnZXdpc3NlbiBCaWxkdW5nc2dyYWQgdmVyYmluZGV0IG1hbiBFaWdlbnNjaGFmdGVuIG1pdCBkZW0KU3lzdGVtLUJlZ3JpZmYsIGRpZSBkYXMgamV0emlnZSBMaWNodHN5Li4uc3kuLi4gYXJnaC4uLiBuaWNodCBoYXQuCgpZVEN1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogVGF1YiB1bmQgQmxpbmRoZWl0Li4uIChNYW5kcmFnb24sIDE5LiBKYW4gMjAwMywgMTc6MjM6MjMpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwNDI5OTI3Njcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQyOTExNTE3CkR1IG1laW5zdCwgd2VubiBtYW4gZHJ1bnRlciBsaWVndD8gOm8pCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFd1cmZzdGVybmUgKEVsYmVyZXQsIDE5LiBKYW4gMjAwMywgMjE6Mzc6NTApOgp+IyEgcm49R29ldGhlIHJ0PTEwNDMwMDgyNDkgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTA0MzAwNTcxOAo6aG9sdCBQb3Bjb3JuIHJhdXMgdW5kIG1hbXBmdCBlcy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQbG9ldHpsaWNoIGhhc3QgRHUgZWluZSBFaW5nZWJ1bmcuLi4uIChab29rLCAyMC4gSmFuIDIwMDMsIDExOjE4OjAwKToKVm9yIERlaW5lbSBnZWlzdGlnZW4gQXVnZSBzaWVoc3QgRHUgbWl0dGVuIGluIERldXRzY2hsYW5kIGFuIGVpbmVtClRpc2NoIGVpbmUgSG9yZGUgbWVya3d1ZXJkaWdlciBHZXN0YWx0ZW4gc2l0emVuLiBMZWlkZXIgc2luZCBkaWUKR2VzdGFsdGVuIHVuZCBkaWUgVW1nZWJ1bmcgc2VociB2ZXJzY2h3b21tZW4sIHNvIGRhc3MgZXMgRGlyIG5pY2h0Cm1vZWdsaWNoIGlzdCwgaWhyIEdlc2ljaHRlIHVuZCBpaHJlIEtvbnR1cmVuIHp1IGVya2VubmVuLiBBdWNoIGRpZQpHZXNwcmFlY2hlIGhvZXJzdCBEdSBtaXQgRGVpbmVtIGdlaXN0aWdlbiBPaHIgbnVyIHNlaHIgdmVyc2Nod29tbWVuCnVuZCBicnVjaHN0dWVja2hhZnQuIEVpbiBHZW11cm1lbCBkcmluZ3QgYW4gRGVpbiBPaHIgdW5kIER1IGthbm5zdApOSUNIVFMgaGVyYXVzaG9lcmVuLiBEdSBmYWVuZ3N0IGxhbmdzYW0gdW5kIHNpY2hlciBhbiwgRGljaCB1ZWJlcgpkaWVzZSBtZXJrd3VlcmRpZ2UgZ2Vpc3RpZ2UgRWluZ2VidW5nIHp1IGFlcmdlcm4sIGFscyBldHdhcwpwYXNzaWVydC4gV2VpdGVyZSBHZXN0YWx0ZW4ga29tbWVuIGhpbnp1LCBldHdhcywgd2FzIHdpZSBlaW5lCkt1Y2hlbnBsYXR0ZSBhdXNzaWVodCwgd2lyZCB2b20gVGlzY2ggZ2Vub21tZW4gdW5kIFNjaGFsZW4gdW5kIFBsYXR0ZW4KdW5kIHRlbGxlcmFlaG5saWNoZSBHZWJpbGRlIHdlcmRlbiBoZXJhbmdlaG9sdC4gRGVtIE11cm1lbG4gd2VpY2h0IGVpbgpTY2htYXR6ZW4gdW5kIEtsaXJyZW4sIGFscyB3dWVyZGVuIEdsYWVzZXIgYW5laW5hbmRlciBnZXN0b3NzZW4uIERhIQpEdSBrYW5uc3QgZGllIFN0aW1tZW4gZ2VuYXVlciBlcmtlbm5lbiwgbmFqYSwgenVtaW5kZXN0IGhvZXJzdCBEdSBtYWwKZWluZW4gZ2FuemVuIFNhdHosIGVzIGhvZXJ0IHNpY2ggbmFjaCAiQmFoISBEdSBiaXN0IGphIHdpZSBtZWluZQpNdXR0ZXIsIGdlaCB3ZWcuLi4iIGFuLiBLb21pc2NoLi4uIER1IGhhZXR0ZXN0IGdlZGFjaHQsIGRhc3MgZGEKaW50ZXJlc3NhbnRlcmUgVGhlbWVuIGJlc3Byb2NoZW4gd2VyZGVuLi4uIGRpZSBTdGltbWVuIHdlcmRlbiB3aWVkZXIKdW5kZXV0bGljaGVyIHVuZCBsYW5nc2FtIGZhZW5nc3QgRHUgYW4sIERpY2ggenUgbGFuZ3dlaWxlbi4gV2llIGRhcwp3b2hsIHdlaXRlcmdlaHQ/IER1IHZlcnN1Y2hzdCBkaWVzZSBFaW5nZWJ1bmcgenUgdmVyZHJlYWVuZ2VuIGFscywgamEKYWxzIER1IHdpZWRlciBlaW5lbiBTYXR6ZmV0emVuIGVya2VubmVuIGthbm5zdC4uLiAiLi4uIGRhcyBpc3QgZG9jaApkYW5uIG51ciBub2NoIGVpbiB3YXJtIGdsdWVoZW5kZXMgRmV1ZXJzY2h3ZXJ0Li4uIiBBdWNoIG5pY2h0CnNvbmRlcmxpY2ggaGlsZnJlaWNoLiBEdSB3YXJ0ZXN0Li4uIEVzIGZpbmRldCB3aWVkZXIgZWluIFVtcmFldW1lbgpzdGF0dCB1bmQgZGllIEtvZXBmZSBkZXIgR2VzdGFsdGVuIGJldWdlbiBzaWNoIHVlYmVyIEJsYWV0dGVyIFBhcGllcgp1bmQgZWluZW4ga2xlaW5lbiBzY2h3YXJ6ZW4gS2FzdGVuIGF1ZiBkZW0gZWluZSB2b2VsbGlnIG5hcnJpc2NoZQpHZXN0YWx0IHdpZSB3aWxkIG1pdCBzZWluZW4gRmluZ2VybiBoZXJ1bXRpcHBlcnQuIElyZ2VuZHdhbm4gd2lyZCBkYXMKR2VtdXJtZWwgbGF1dGVyLCBlcyB3ZWljaHQgbGF1dGVtIExhY2hlbiB1bmQgZ2VsbGVuZGVuIEZyZXVkZW5zY2hyZWllbgp1bmQgendpc2NoZW5kcmluIGVydG9lbnQgZWluIGZpZXNlcyBLaWNoZXJuLiBEdSBiZWtvbW1zdCBsYW5nc2FtIGVpbgp3ZW5pZyBBbmdzdCwgd2FzIERpciBkaWVzZSBFaW5nZWJ1bmcgd29obCBzYWdlbiBzb2xsLiBXYXIgaWNoIGJyYXYgaW4KZGVuIGxldHp0ZW4gV29jaGVuPyBIYXQgamVtYW5kIGdlc2VoZW4sIHdpZSBpY2ggZ2VzY2h1bW1lbHQgaGFiZT8KVWViZXJoYXVwdCwgd2FydW0gYmVuZWhtZW4gc2ljaCBkaWUgTGV1dGUgaW4gbWVpbmVtIFVtZmVsZCBzbyBrb21pc2NoPwpIYXQgZGVyIFdlZ2hpZXIgbmljaHQgZGFzIGxldHp0ZSBtYWwgc28ga29taXNjaCBnZWdyaW5zdCBhbHMgZXIgdG90CnVtZmllbD8gRGllIEVpbmdlYnVuZyB3aXJkIGxhbmdzYW0gZXR3YXMgc2Nod2FlY2hlciB1bmQgaXJnZW5kd2Fubgp2ZXJzdHVtbWVuIGRpZSBsZXR6dGVuIExhdXRlIHVuZCBlcyB3aXJkIGR1bmtlbC4gU3VwZXIgZGVua3N0IER1CkRpci4gRWluZ2VidW5nZW4gd2FyZW4gYXVjaCBtYWwgaGlsZnJlaWNoZXIuIER1IHdpbGxzdCBEaWNoIHdpZWRlcgpEZWluZXIgdmlydHVlbGxlbiBSZWFsaXRhZXQgenV3ZW5kZW4gYWxzIGVzIHZvciBEZWluZW0gZ2Vpc3RpZ2VuIEF1Z2UKc2VociBoZWxsIHdpcmQuIEVzIHNjaGVpbnQgZWluIG5ldWVyIE1vcmdlbiBhbmdlYnJvY2hlbiB6dSBzZWluIHVuZApkaWUgSG9yZGUgc2FtbWVsdCBzaWNoIGltIE1vcmdlbkdyYXVlbiB3aWVkZXIgdW0gZGVuIFRpc2NoLiBOYWNoCmFuZmFlbmdsaWNoZW0gU2NobWF0emVuIHN0ZWNrZW4gc2llIHdpZWRlciBpaHJlIEtvZXBmZSB6dXNhbW1lbiB1bmQKaGFlbW1lcm4gYXVmIGRlbSBrbGVpbmVuIHNjaHdhcnplbiBLYXN0ZW4gaGVydW0uIERpZSBuYXJyaXNjaGUgR2VzdGFsdAp2b3IgZGVtIEthc3RlbiBzY2hlaW50IGxhbmdzYW0gZWluIHdlbmlnIHdhaG5zaW5uaWcgenUgd2VyZGVuLCBzaWUKaGFlbW1lcnQgaW1tZXIgZmVzdGUgcnVuZCBEdSBob2Vyc3QgcGxvZXR6bGljaCBKdWJlbHNjaHJlaWUgdW5kIGxhdXRlcwpSdWZlbiwgZWluemVsbmUgV29ydGZldHplbiBkcmluZ2VuIGtsYXIgYW4gRGVpbiBPaHI6ICIuLi4gSmFqYWphamEhCi4uLiAgSWNoIG1hY2ggaWhuIGZlcnRpZywgZGVuIE9yayEgLi4uIFVuZCBkYSEgTmltbSBkaWVzISAuLi4gSGEhClNjaG9uIHdpZWRlciBlaW5lIHRvdCEgLi4uIFdpcmtsaWNoIGVpbmUgdG9sbGUgU2FjaGUuLi4gIiBTbyByZWNodApzY2hsYXUgd2lyc3QgRHUgZGFyYXVzIGF1Y2ggbmljaHQuIE5hY2ggZWluZXIgV2VpbGUgYmVydWhpZ2VuIHNpY2ggZGllCkdlc3RhbHRlbiB1bmQgZGllIFJ1bmRlIHVtIGRlbiBUaXNjaCBsb2VzdCBzaWNoIGF1Zi4gRGFzIEJpbGQKdmVyYmxhc3N0IHZvciBEZWluZW0gZ2Vpc3RpZ2VuIEF1Z2UgdW5kIER1IHVlYmVybGVnc3Qgbm9jaCBlaW5tYWwsIHdhcwpkYXMgd29obCBnZXdlc2VuIHNlaW4ga29lbm50ZS4uLiBEZXMgUmFldHNlbHMgTG9lc3VuZyB3aWxsIERpciBuaWNodAphdWZnZWhlbiwgYWJlciBEdSBoYXN0IGRhcyBHZWZ1ZWhsLCBkYXMgc2luZCBkaWUgVm9yYm90ZW4gYXVmCnp1a3VlbmZ0aWdlIEVudHdpY2tsdW5nZW4uIERpciBzY2hhdWRlcnQhIEhvZmZlbnRsaWNoIGdlcmFldCBkaWUgV2VsdAp1bSBEaWNoIGhlcnVtIG5pY2h0IGF1cyBkZW4gRnVnZW4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS05JUlNDSC4uLiAoQXJ3aW4sIDIwLiBKYW4gMjAwMywgMTE6NDA6MDYpOgp+IyEgcm49Wm9vayBydD0xMDQzMDU4OTI0IHJnPWJhbGFuY2UuYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwNDMwNTg5MjQKQlVNTVMhCgpbM35BcndpbiB3aWxsIG1pdHNjcm9sbGVuISA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFRhdWIgdW5kIEJsaW5kaGVpdC4uLiAoQ3VjaHVsbGluLCAyMC4gSmFuIDIwMDMsIDEzOjU4OjUzKToKfiMhIHJuPU11YWRpYiBydD0xMDQzMDY3NDgyIHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA0MjkxMTUxNwpNYWNodCBtYW4gRGljaCBudW4gbWl0IFNhbmQgdW5kIFdhc3NlciBvZGVyIFNhbmQgdW5kIFBpcGk/CgpGb2VybXNzZW4gc3VjaGVuZCwKQ3VjaCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFRhdWIgdW5kIEJsaW5kaGVpdC4uLiAoTXVhZGliLCAyMC4gSmFuIDIwMDMsIDE0OjAwOjI3KToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDQzMDY3NTMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MjkxMTUxNwpwaXNzIG1pY2ggYmxvc3MgbmljaHQgYW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBUYXViIHVuZCBCbGluZGhlaXQuLi4gKEN1Y2h1bGxpbiwgMjAuIEphbiAyMDAzLCAxNDowMToxMyk6Cn4jISBybj1NdWFkaWIgcnQ9MTA0MzA2NzYyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI5MTE1MTcKa2FubiBtYW4gZGljaCBhdWNoIGF1c3Bpc3Nlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBUYXViIHVuZCBCbGluZGhlaXQuLi4gKE11YWRpYiwgMjAuIEphbiAyMDAzLCAxNDowMjowOSk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTA0MzA2NzY3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI5MTE1MTcKYmVpIG1laW5lbSB1bWZhbmcgd2lsbHN0IGR1IGRhcyBuaWNodCB3aXJrbGljaCBvZGVyID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBUYXViIHVuZCBCbGluZGhlaXQuLi4gKE9ya3RvZXRlciwgMjAuIEphbiAyMDAzLCAxNDo0OTo1Nyk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTA0MzA3MDQxMSByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNDI5MTE1MTcKT3JrcyB1bmQgV2VsdHdpc3Nlbj8gRXJzdCB6aXZpbGlzaWVydGUgT3JrcyB1bmQgamV0enQgYXVjaCBub2NoIGRhcy4uLiB3aWUKZ2VodCBlcyB3ZWl0ZXI/CgpEZXIgT3JrIGdyZWlmdCBkaWNoIG1pdCBlaW5lbSBIZWluZXppdGF0IGFuLiBEZXIgT3JrIHplcnNjaG1ldHRlcnQgRGljaC4KClNvIGV0d2FzIGluIGRlciBBcnQ/CgpPcmtULCBzaWNoIGJlaSBkZW0gR2VkYW5rZW4gc2NodWV0dGVsbmQuCgpQUzogV2VtIEguSGVpbmUgZWhlciBnZWZhZWxsdCBzZXR6ZSB6LkIuIFdvZ29uZW5nZWRpY2h0ZSBlaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBUYXViIHVuZCBCbGluZGhlaXQuLi4gKEN1Y2h1bGxpbiwgMjAuIEphbiAyMDAzLCAxNDo1Mjo1NSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA0MzA3MDU5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI5MTE1MTcKQW5kZXJlIHNjaHVldHRlbG4gc2ljaCBqYSBhdWNoIGJlaW0gR2VkYW5rZW4gIk9ya3RvZXRlciB1bmQgV2VsdHdpc3NlbiIuCgpBYmdlc2VoZW4gZGF2b246IEtsZWluLU9ya3RvZXRlciB6dWVja3QgZWluIFhhbnRpLVNjaHdlcnQuIExlaWRlciBoYXQKS2xlaW4tT3JrdG9ldGVyIHp1IG1pZXNlIEludGVsbGlnZW56IHVuZCB3aXJkIGRhaGluZ2VyYWZmdC4gS2xlaW4tCk9ya3RvZXRlciBnZWh0IGJldGVuIHVuZCB2ZXJzdWNodCBlcyBnbGVpY2ggbm9jaCBlaW5tYWwuIFNjaG9uIHdpZWRlcgp3aXJkIEtsZWluLU9ya3RvZXRlciBkYWhpbmdlcmFmZnQuIFdpZGVyIEVyd2FydGVuIGxlcm50IEtsZWluLU9ya3RvZXRlcgpldHdhcyBhdXMgZGllc2VyIExla3Rpb246IERhcyBYYW50aS1TY2h3ZXJ0IGlzdCAtIGltIE1vbWVudCAtIHBmdWkuCgpEaWUgTW9lZ2xpY2hrZWl0LCBhdXMgVG9kZW4genUgbGVybmVuLCBoYWJlbiBkaWUgT3JrcyBuaWNodC4gRXMgc2VpCmRlbm4sIER1IHNjaGVua3N0IGlobmVuIGVpbiBTYXZlZmlsZS4gT2RlciBlaW4gTWFzdGVyLiBOdXI6IERBIGthbm5zdApEdSBkYW5uIGdsZWljaCBkaWUgc2Nod2FyemUgTGlzdGUgbmVobWVuLCB3ZWlzc3QgRHUuIDopCgpZVEN1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGhhbGJrcmVpc2UgKEdyaW1tYm9ybiwgMjEuIEphbiAyMDAzLCAwMToxNjozMik6Cn4jISBybj1QaG9ib3MgcnQ9MTA0MzA5NTQ5NyByZz1wdWl6Cn4jISB0aWQ9MTA0Mjk5ODkzNwpJY2ggc2FnZTogRGllIEF1ZmdhYmUgaXN0IG5pY2h0IGxvZXNiYXIuIFdhcnVtPyBXZW5uIG1hbiBkaWUgSGFsYmtyZWlzZQp6dXNhbW1lbnNldHp0IHNpbmRzIGtlaW5lICJwZXJmZWt0ZW4gSGFsYmtyZWlzZSIgbWVoci4gRGVubiBwZXJmZWt0ZQpIYWxia3JlaXNlIHNpbmQgbmljaHQgYW5nZXNjaG5pYmJlbHQuIFEuRS5ELgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoTm9ubmUsIDIxLiBKYW4gMjAwMywgMTA6MjM6MzEpOgo+IEhhbGxvCj4KPiBHZXJhZGUgaW4gZGVuIE5hY2hyaWNodGVuIGdlaG9lcnQ6IEVzIGhlaXNzdCBqZXR6dCBuaWNodCBtZWhyICJLcmllZwo+IGdlaGVuIElyYWsiIC0gc29uZGVybiwgIklyYWsgc29sbCBtaWxpdGFlcmlzY2ggYWJnZXJ1ZXN0ZXQgd2VyZGVuIi4KCmdlaHQgZGllIG1pbGl0YWVyaXNjaGUgYWJydWVzdHVuZyBtaXQgZWluZXIgdWViZXJiZXZvZWxrZXJ1bmdzcmVkdWt0aW9uIHVuZAplaW5lciBvcGVyYXRpdmVuIHBlcnNvbmFsc3RyYWZmdW5nIGJlaSBkZW4gaXJha2lzY2hlbiBzdHJlaXRrcmFlZnRlbiBlaW5oZXI/CnNvbGxlbiBkZW0gaXJha2lzY2hlbiBiYXVnZXdlcmJlIG5ldWUgaW1wdWxzZSBkdXJjaCBtb2VnbGljaGtlaXRlbiBkZXIKc3RhZHRiaWxkbmV1Z2VzdGFsdHVuZyBnZWdlYmVuIHdlcmRlbj8KaXN0IGF1Y2ggdm9yZ2VzZWhlbiBkaWUgaXJha2lzY2hlbiBvZWxpbmR1c3RyaWUgYXVzIGRlciB2ZXJzdGFhdGxpY2h1bmcgenUKbG9lc2VuIHVuZCBkdXJjaCBhbWVyaWthbmlzY2hlIHVuZCBicml0aXNjaGUgYmVyYXRlciBtYXJrdHdpcnRzY2hhZnRsaWNoZXIKYXVzcmljaHRlbiB6dSBsYXNzZW4/CgphbHNvIGRhbm4ga2FubiBtYW4gamEgd2lya2xpY2ggbmljaHQgdm9uIGtyaWVnIHJlZGVuLi4uLgoKCnVycwoKTm9ubmUsIGRhcyBlaWdlbnRsaWNoIG5pY2h0IGx1c3RpZyBmaW5kZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLi4uIChDYWRyYWNoLCAyMS4gSmFuIDIwMDMsIDExOjIwOjI5KToKfiMhIHJuPU5vbm5lIHJ0PTEwNDMxNDEwMTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTQxMDExCkljaCBmaW5kZSB3ZW5uIHdpciBCdXNoIHVuZCBzZWluZSBSZWdpZXJ1bmcgYWxsZSBudXIgYWxzIGdyb2JzY2hsYWVjaHRpZyB1bmQKZHVtbSBkYXJzdGVsbGVuLCB3aXJkIGRhcyBkZXIgU2FjaGUgYXVjaCBuaWNodCBnZXJlY2h0LiBXZW5uIGhpZXJiZWkgbnVyIHVtCk9lbCBnaW5nZSwgZGFubiB3dWVyZGVuIEFtaXMgdW5kIEJyaXRlbiBtaXQgZGVtIElyYWsgZWluZW4gRGVhbCBtYWNoZW4gdW5kCmZlcnRpZy4gRnVlciBlaW5lbiBCcnVjaHRlaWwgZGVzIEdlbGRlcyB3YXMgYWxsZWluIGRlciBBdWZtYXJzY2gga29zdGV0CmtvZW5udGUgbWFuIGxvY2tlciBhdWNoIGxhbmdmcmlzdGlnIEVpbmZsdXNzIGF1ZiBkZW4gT2VscHJlaXMgbmVobWVuLiBTYWRkYW0KaXMgbmFlbWxpY2ggemllbWxpY2ggbWFjaHRnZWlsLCBiZXJlY2huZW50IHVuZCBhdWNoIG5pY2h0IGR1bW0uCkljaCBnZWJlIHp1LCBkYXMgZGllIFRhdHNhY2hlIGRhcyBkaWUgYWNoc290b2xsZW4gR2VoZWltZGllbnN0aGlud2Vpc2UgZGllCkluc3Bla3RvcmVuIG5vY2ggbmljaHQgenUgaXJnZW5kd2VsY2hlbiBXYWZmZW4gZ2VmdWVocnQgaGFiZW4sIG1pY2ggc2Nob24gc2VocgptZXJrd3VlcmRpZyBzdGltbXQuIEljaCBtYXNzZSBtaXIgamVkb2NoIG5pY2h0IGFuIG1pciBkYSBlaW4gVXJ0ZWlsIGJpbGRlbiB6dQprb2VubmVuLCB3ZWlsIG1pciBkYWZ1ZXIgZWluZmFjaCB6dXZpZWxlIEluZm9ybWF0aW9uZW4gZmVobGVuLgpVTlNFUkVSIFJlZ2llcnVuZyBpc3QgYWJlciBnbGF1YiBpY2ggZWggYWxsZXMgZWdhbCwgSGF1cHRzYWNoZSBzaWUgZ2V3aW5udCBkaWUKbmFlY2hzdGUgV2FobC4gRGFzIGRpZXNlIHVucyB2b3IgZXZ0bC4gd2lya2xpY2hlbiBHZWZhaHJlbiBzY2h1ZXR6ZW4gd2lyZCwKZ2xhdWIgaWNoIG5pY2h0LiBJY2ggZnVlciBtZWluZW4gVGVpbCBmYWVuZGUgZXMgbmFlbWxpY2ggYXVjaCBuaWNoIGdlcmFkZQpvcHRpbWFsIHdlbm4gaW50ZXJuYXRpb25hbGUgVGVycm9yaXN0ZW4gaXJnZW5kd2FubiBtaXQgaXJha2lzY2hlbiBBQkMtV2FmZmVuCnJ1bWxhdWZlbiB3dWVyZGVuIC0gZGEgaGVpc3N0IGVzIHdlaHJldCBkZW4gQW5mYWVuZ2VuLgoKCkNhZCoKClAuUy46IFdlbm4gZXMgZWluZW4gd2lydHNjaGFmdGxpY2hlbiBad2FuZyBnaWJ0LCBkYW5uIGRlbiwgZGFzIGRlciBJcmFrIGltbWVyCmVyc3QgZWluenVsZW5rZW4gYmVnaW5udCB3ZW5uIGRpZSBBbWlzIGVpbmVuIFRydXBwZW5hdWZtYXJzY2ggYmVnaW5uZW4uIFNvYmFsZApkaWUgVHJ1cHBlbiB3aWVkZXIgd2VnIHNpbmQsIHNpbmQgZXMgYXVjaCBkaWUgWnVzYWdlbiBkZXMgSXJha3MuIElyZ2VuZHdhbm4Ka29tbXQgZGllIEFtaXMgZWluIEtyaWVnIHNvZ2FyIGJpbGxpZ2VyIGFscyBkYXMgc3RhZW5kaWdlIGF1ZiB1bmQKYWJtYXJzY2hpZXJlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKEdyaW1tYm9ybiwgMjEuIEphbiAyMDAzLCAxMTozNjoyNik6Cn4jISBybj1DYWRyYWNoIHJ0PTEwNDMxNDQ0Mjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTQxMDExCkphLCBkYXNzIER1IG1lcmt3dWVyZGlnIGdlc3RpbW10IGJpc3Qga2FubiBpY2ggbnVyIGJlc3RhZXRpZ2VuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKE5vbm5lLCAyMS4gSmFuIDIwMDMsIDExOjM2OjQ1KToKfiMhIHJuPUNhZHJhY2ggcnQ9MTA0MzE0NDQyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNDEwMTEKR2xhdWJzdCBEdSBuaWNodCwgZGFzcyBlcyBkaWVzZSBzdGFlbmRpZ2VuIEF1Zm1hZXJzY2hlLCBNYWNodGRlbW9uc3RhdGlvbmVuCnVuZCBFaW5mbHVzc25haG1lbiBzZWl0ZW5zIGRlciBVU0Egc2luZCwgZGllIHZpZWxlIE1lbnNjaGVuIGluIGRlbiBUZXJyb3Jpc211cwp0cmVpYnQ/IFp1bWluZGVzdCwgd2VubiBkZXIgVGVycm9yaXNtdXMgZ2VnZW4gZGllIHdlc3RsaWNoZW4gSW5kdXN0cmllbmF0aW9uZW4KZ2VyaWNodGV0IGlzdD8gV3VlcmRlbiBzaWNoIGRpZSBBbWlzIGRhIHJhdXNoYWx0ZW4gdW5kIGRhcyBnYW56ZSB1ZWJlciBkaWUgVU5PCmxhdWZlbiwgc28gZGFzcyBlcyBrZWluIExhbmQgYWxzIFppZWwgZnVlciBUZXJyb3Jpc3RlbiBnaWJ0LCBkYXMgbWFuCnZlcmFudHdvcnRsaWNoZW4gbWFjaGVuIGthbm4sIGRhbm4gd2FlcmUgZGllIFRlcnJvcmlzbXVzZ2VmYWhyIGRldXRsaWNoCmtsZWluZXIuIFVuZCBub2NoIHdhcy4gQnVzaCBpc3QgaW4gbWVpbmUgQXVnZW4gZHVtbSB1bmQgbWFjaHRnZWlsIHVuZCBrZWluZW4KRGV1dCBiZXNzZXIgYWxzIFNhZGRhbSBIdXNzZWluLiBXb2JlaSBpY2ggbmljaHQgbWFsIGJlaGF1cHRlbiB3dWVyZGUsIGRhc3MKU2FkZGFtIGR1bW0gaXN0LiBOYXR1ZXJsaWNoIGthbm4gaWNoIGRpZSBBcnQgdW5kIFdlaXNlLCB3aWUgU2FkZGFtIGFuIGRpZQpNYWNodCBnZWtvbW1lbiBpc3QgdW5kIHNlaW4gTGFuZCByZWdpZXJ0IG5pY2h0IGd1dGhlaXNzZW4sIGF1Y2ggd2FzIGVyIG1pdCBkZW4KS3VyZGVuIGdlbWFjaHQgaGF0LCBmaW5kZSBhYnNjaGV1bGljaC4gQWJlciBqZXR6dCBub2NoIGVpbiBwYWFyIElyYWtpcwphYnp1c2NobGFjaHRlbiwgbWFjaHQgZGllIFNhY2hlIG5pY2h0IGJlc3Nlci4gVW5kIGVpbiBBYmtvbW1lbiBtaXQgSHVzc2VpbgprcmllZ2VuIGRpZSB3b2hsIG5pY2h0IGhpbiwgd2VpbCBTYWRkYW0gc2ljaCBuaWNodCBkcmFuIGhhbHRlbiB3aXJkLCB3ZWlsIGRpZQpBbWlzIGRlciBGZWluZCBOci4xIGlzdCwgZGllIE9wdGlvbiBzY2hlaWRldCBhbHNvIGF1cy4gV2VubiBtYW4gZGFzIE9lbCBkZXMKSXJhayBoYWJlbiB3aWxsLCBtdXNzIG1hbiB3b2hsIGRydW0ga2FlbXBmZW4gdW5kIHVtIG5pY2h0cyBhbmRlcmVzIGdlaHQgaGllci4KTWVuc2NoZW5yZWNodHN2ZXJsZXR6dW5nZW4gZ2lidHMgZXMgc28gdmllbGUsIHdvIHNpY2ggZGllIEFtaXMgZWluZW4gU2NoZWlzcwpkcnVtIGt1ZW1tZXJuLCBudXIgZ2lidHMgZGEgaGFsdCBrZWluIE9lbC4uLgoKTm9ubmUsIG51ciBtZWluZSBNZWludW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKENhZHJhY2gsIDIxLiBKYW4gMjAwMywgMTE6NTQ6NDMpOgp+IyEgcm49Tm9ubmUgcnQ9MTA0MzE0NTQwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNDEwMTEKSWNoIGdsYXViZSBEdSBtYWNoc3QgZXMgRGlyIGVpbiB3ZW5pZyBzZWhyIGVpbmZhY2gsIHdlbm4gRHUgYmVoYXVwdGVzdCwgZXMKZ2FlYmUga2VpbmVuIFRlcnJvcmlzbXVzIG1laHIsIHdlbm4gZGllIEFtaXMgc2ljaCBhdXMgYWxsZW0gcmF1c2hhbHRlbgp3dWVyZGVuLgpWaWVsbGVpY2h0ICh1bmQgbnVyIHZpZWxsZWljaHQpIHdhZXJlbiBkaWUgQW1pcyBkYW5uIG5pY2h0IG1laHIgcHJpbWFlcmVzIFppZWwKZGVyIFRlcnJvcmlzdGVuLCBhYmVyIGdlYmVuIHd1ZXJkZSBlcyBzaWUgd2VpdGVyaGluLiBTZWxic3QgaW4gTGFlbmRlcm4gd2llCkFlZ3lwdGVuIGdpYnQgZXMgVGVycm9yaXNtdXMgKHVuZCBuaWNodCB3ZWdlbiBkZW4gZ3V0ZW4gQmV6aWVodW5nZW4genUgVVNBKQpzb25kZXJuIHdlaWwgaXJnZW5kd2VsY2hlbiBEZXBwZW4gZGllIERlbW9rcmF0aWUgZWluIERvcm4gaW0gQXVnZSBpc3QgdW5kIHNpZQpnZXJuZSBzdGVpbmlnZW4gdW5kIEhhZW5kZSBhYmhhY2tlbiB3b2xsZW4uCkluIE5vcmRpcmxhbmQgdW5kIGluIFNwYW5pZW4gdW5kIGZydWVoZXIgYXVjaCBiZWkgdW5zIGdhYiBlcyBhdWNoIFRlcnJvcmlzdGVuLgpJY2ggZ2xhdWJlIGVpbmlnZSBEZXBwZW4sIGRpZSBtZWluZW4sIHVtIGlocmUgTWVpbnVuZyBkdXJjaHp1ZHJ1ZWNrZW4sIHNlaQpqZWRlcyBNaXR0ZWwgcmVjaHQsIGdpYnQgZXMgaW1tZXIuCkJ1c2ggbWl0IFNhZGRhbSB6dSB2ZXJnbGVpY2hlbiBoYWx0ZSBpY2ggZnVlciBlaW5lbiBkZXIgKHdvaGwgaW4gTW9kZQprb21tZW5kZW4pIHppZW1saWNoIHVuc2VlbGlnZW4gVmVyZ2xlaWNoZS4KYSkgQnVzaCBpc3Qga2VpbiBEaWt0YXRvcgpiKSBCdXNoIGxlYnQgaW4gZWluZXIgRGVtb2tyYXRpZSB1bmQga2FubiBuaWNodCB0dW4gdW5kIGxhc3NlbiB3YXMgZXIgd2lsbApjKSBCdXNoIG11c3Mgc2ljaCBlaW5lciB1bmFiaGFlbmdpZ2VuIEp1c3RpeiB1bnRlcm9yZG5lbiAoc2llaGUgQ2xpbnRvbikKZCkgQnVzaCBoYXQgYmlzaGVyIG5vY2gga2VpbmUgQUJDLVdhZmZlbiB1ZWJlciBJbmRpYW5lcnJlc2VydmF0ZW4gYWJnZXdvcmZlbgouLi4gZGllIExpc3RlIGlzIGJlbGllYmlnIGZvcnR6dWZ1ZWhyZW4uCgpXaWUgaW50ZWxsaWdlbnQgQnVzaCBpc3Qgd2Vpc3MgaWNoIG5pY2h0IC0gdmVybXV0bGljaCBhYmVyIGtsdWVnZXIgYWxzIGRpZQptZWlzdGVuIGltIGhpZXIgdW50ZXJzdGVsbGVuLiBEYXMgd2ljaHRpZ3N0ZSBzaW5kIGVoIGd1dGUgQmVyYXRlciwgZGFzCndlbmlnc3RlIGVudHNjaGVpZGV0IGVyIG5hZW1saWNoIG5hY2hoZXIgc2VsYnN0LgoKQ2FkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKE5vbm5lLCAyMS4gSmFuIDIwMDMsIDEyOjAyOjM2KToKfiMhIHJuPUNhZHJhY2ggcnQ9MTA0MzE0NjQ4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNDEwMTEKTmF0dWVybGljaCBnYWIgdW5kIGdpYnRzIGVzIFRlcnJvcmlzdGVuLiBTdGVsbHQgc2ljaCBudXIgZGllIEZyYWdlLCBvYiBLcmllZwpkYXMgcmljaHRpZ2UgTWl0dGVsIGRhZ2VnZW4gaXN0LiBJY2ggbWVpbmUgbmVpbi4KCkljaCB2ZXJnbGVpY2ggbmljaHQgZGllIFNpdHVhdGlvbiB2b24gQnVzaCBtaXQgZGVyIHZvbiBTYWRkYW0sIHNvbmRlcm4gZWhlcgpzZWluZSBQZXJzb2VubGljaGtlaXQuIE5hdHVlcmxpY2ggaXN0IEJ1c2gga2VpbiBEaWt0YXRvciwgaWNoIHVudGVyc3RlbGxlIGlobQphYmVyIG1hbCwgZXIgd2FlcmUgZ2VybiBlaW5lci4gRGFubiBoYWV0dGUgZXIgZGEgYXVjaCBuaWNodCBsYWVzdGlnZW4gU2VuYXQKdW5kIGRpZSBEZW1vbnN0cmFudGVuIHVuZCBkZXIgTWFrZWwsIGRhc3MgZXIgZ2FyIG5pY2h0IGRlbW9rcmF0aXNjaCBnZXdhZWhsdAppc3QsIHdhZXJlIGF1Y2ggZWdhbC4KQUJDLVdhZmZlbiBoYXQgZXIgbmljaHQgdWViZXIgSW5kaWFuZXIgYWJnZXdvcmZlbiwgYWJlciBkaWUgVVNBIGhhdCBpbSBLb3Nvdm8KbWl0IGFiZ2VyZWljaGVydGVyIFVyYW4tTXVuaXRpb24gcnVtZ2VzY2hvc3Nlbiwgb2IgZGFzIHZpZWwgYmVzc2VyIGlzdD8/PyBVbmQKd2FzIGlzdCBtaXQgZGllc2VuIFNwcnVlaGJvbWJlbiBpbiBBZmdoYW5pc3Rhbiwgd292b24gMTAlIG5pY2h0IGV4cGxvZGllcnQKc2luZCwgdGF1c2VuZGUgdm9uIFppdmlsaXN0ZW4gZHJhbiB2ZXJyZWNrZW4gdW5kIGRpZSBpbiAxMCBKYWhyZW4gbm9jaCBuaWNodApnZXJhZXVtdCBzZWluIHdlcmRlbj8gSXN0IGRhcyBuaWNodCBhdWNoIGVpbmUgQXJ0IE1hc3NlbnZlcm5pY2h0dW5nc3dhZmZlPwoKTm9ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoQ2FkcmFjaCwgMjEuIEphbiAyMDAzLCAxMjoxMzo1Nik6Cn4jISBybj1Ob25uZSBydD0xMDQzMTQ2OTU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE0MTAxMQotIG9iIEJ1c2ggZ2VybmUgRGlrYXRvciB3YWVyZSwgZGFzIHVlYmVybGFzcyBpY2ggZGVuIFBzeWNob2xvZ2VuLgotIEljaCBiaW4ga2VpbiBNaWxpdGFlcmV4cGVydGUsIGFiZXIgd2VubiBpY2ggZGFzIHJpY2h0aWcgc2VoZSBpc3QgZGllIEdlZmFocgpkaWUgdm9uIGRpZXNlbSBVcmFuIGF1c2dlaHQsIGRldXRsaWNoIGdlcmluZ2VyLCBhbHMgZGllIEdlZmFociBkaWUgZHVyY2ggbmljaHQKZWluc2V0emVuIHZvbiBQYW56ZXJicmVjaGVuZGVuIFdhZmZlbiBlbnN0ZWh0LiBEYXMgd2FzIGljaCAobmFjaCBkZW0gS3JpZWcpCnZvbiBXaXNzZW5zY2hhZnRsZXJuIGltIEZlcm5zZWhuIGdlaG9lcnQgaGFiLCBob2VydGUgc2ljaCBuaWNodCBzbyBhbiBhbHMgc2VpCmRpZSBSZWdpb24gdW0gZGllIHN0aWxsZ2VsZWdlbnRlbiBQYW56ZXIgbnVuIHJlc3Rsb3MgdmVyc2V1Y2h0LgotIERhcyBkaWUgQm9tYmVuIGRlciBBbWlzIG5pY2h0IHp1IDEwMCUgZXhwbG9kaWVyZW4sIGRhcyBtYWNoZW4gc2llIGdhbnoKYmVzdGltbXQgbmljaHQgYWJzaWNodGxpY2ggLSBpY2gga29lbm50ZSB3ZXR0ZW4gZGllIE1pbGl0YWVycyB2ZXJzdWNoZW4gZGllCkV4cGxvc2lvbnNxdW90ZSBtb2VnbGljaHN0IG5haCBhbiAxMDAlIHp1IGJyaW5nZW4uIE9iIGRlciBLcmllZyBpbiBBZmdoYW5pc3RhbgpzaW5udm9sbCB3YXIgLSBkYXJ1ZWJlciBnaWJ0IGVzIHVudGVyc2NoaWVkbGljaGUgTWVpbnVuZ2VuLiBEaWUgZWluaGVsbGlnZQpNZWludW5nIGRlciBVTiAodW5kIGluendpc2NoZW4gc2VsYnN0IHphaGxyZWljaGVyIEdydWVuZXIpIGlzdCwgZXIgd2FyIGVzLgpOdW4gZXJ3YXJ0ZSBtYWwgYml0dGUgbmljaHQsIGRhcyBkaWUgQW1pcyBtaXQgU2Nod2VydGVybiBpbiBkZW4gS3JpZWcgemllaGVuLApkYW1pdCBtb2VnbGljaHN0IHdlbmlnIGtvbGxhdGVyYWwgU2NoYWRlbiBhdWZ0cml0dC4gQWJnZXNlaG4gZGF2b246IEljaCBnbGF1YmUKZGllIEFuemFobCBkZXIgTWluZW4gdW5kIEFsdHdhZmZlbiBkaWUgc2VpdGRlbSBLcmllZyBpbiBBZmdoYW5pc3RhbgplbnRzY2hhZXJmdCB3ZXJkZW4ga29ubnRlbiwgc2luZCBlaW4gVmllbGZhY2hlcyB2b24gZGVtLCB3YXMgZGEgbmV1CnJ1bnRlcmdla29tbWVuIGlzdC4KS3JpZWdlIGZvcmRlcm4gT3BmZXIgdW50ZXIgdW5zY2h1bGRpZ2VyIEJldm9lbGtlcnVuZywgZ2VuYXUgYXVzIGRpZXNlbSBHcnVuZAprYW5uIGVpbmUga3JpZWdlcmlzY2hlIEF1c2VpbmFuZGVyc2V0enVuZyBudXIgZGllIGxldHp0ZSBtb2VnbGljaGUgQWx0ZXJuYXRpdmUKc2Vpbi4gS0VJTiBLcmllZyB6dSBmdWVocmVuLCBmb3JkZXJ0IG1hbmNobWFsIGplZG9jaCBub2NoIG1laHIgT3BmZXIgdW50ZXIgZGVyClppdmlsYmV2b2Vsa2VydW5nLiBEYXMgZ2FsdCBpbiBCb3NuaWVuLCBpbSBLb3Nvdm8gdW5kIGF1Y2ggaW4gQWZnaGFuaXN0YW4uCgoKQ2FkKgoKUC5TLjogSWNoIGdsYXViIGRpZSBoZXV0aWdlIGFmZ2hhbmlzY2hlIEJldm9lbGtlcnVuZyBlcmxlYnQgenVyIFplaXQgZGFzIGVyc3RlCktyaWVnc2ZyZWllIEphaHIgaWhyZXMgTGViZW5zICh3ZW5uIG1hbiB2b24ga2xlaW5lcmVuIFNjaGFybXVldHplbG4gZGVyCldhcmxvcmRzIG1hbCBhYnNpZWh0KS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLi4uIChQYXRyeW4sIDIxLiBKYW4gMjAwMywgMTI6NTQ6MjQpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDQzMTQ3NjM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE0MTAxMQpIZXV0enV0YWdlIGdpbHQgZGFzIFByaW56aXAsIGF1ZiBqZWRlbiBGYWxsIGRhcyBMZWJlbiBqZWRlcyBlaW56ZWxuZW4KU29sZGF0ZW4gc2NodWV0emVuLCBkYWZ1ZXIgYWJlciBoYWx0IGpld2VpbHMgbmVuIHBhYXIgWml2aWxpc3RlbiBhdWYgZGVyCkdlZ2Vuc2VpdGUgZHJhdWZnZWhlbiBsYXNzZW4sIG5hY2ggZGVuZW4ga3JhZWh0IGVoIGtlaW4gSGFobiwgb2RlciBuaWNodApiZXNvbmRlcnMgbGF1dCwgZGEgSm91cm5hbGlzbXVzIHp1ciBaZWl0IGtsZWluIGdlc2NocmllYmVuIHdpcmQuClVuZCBkYXMgZmluZGUgaWNoIGluIGRlciBUYXQgc2VociBiZWZyZW1kbGljaC4gRGllIFN0aWxpc2llcnVuZyB2b24gS3JpZWcKYXVzIGFtZXJpa2FuaXNjaGVyIFNpY2h0IGhhdCBuaWNodCB6dWxldHp0IG5vY2ggYW5kZXJlIG5lZ2F0aXZlIEZvbGdlbiwKei5CLiBkYXMgTW90dG8gIktyaWVnIGlzdCBnZWlsIi4gU2NobGllc3NsaWNoIG1vZWdlbiB3aXIgYXVjaCBWaWRlb3NwaWVsZS4KClVuZCBmdWVyIGRpZSBhZmdoYW5pc2NoZSBCZXZvZWxrZXJ1bmcga2VocmVuIHp1ciBaZWl0IHdpZWRlciBhbHRlIFp1c3RhZW5kZQp6dXJ1ZWNrLCBEaWUgbG9rYWxlbiBXYXJsb3JkcyBzaW5kIG5pY2h0IHdpcmtsaWNoIGJlc3NlciBhbHMgZGllIFRhbGliYW4sCmxhdXRlciBsb2thbGUgRGlrdGF0b3Jlbi4gTGVkaWdsaWNoIEthYnVsIHNlbGJzdCBpc3QgaGFsYndlZ3Mgc2ljaGVyLApzaWNoZXIgYXVzIGFmZ2hhbmlzY2hlciBTaWNodC4KQXVmYmF1aGlsZmUgZG9ydCBsZWlzdGVuIHVlYnJpZ2VucyB3ZW5pZ2VyIGRpZSBBbWVyaWthbmVyLCBkaWUgcGF0cm9sbGllcmVuCmRhIG1pdCBSYW1iby1NYW5pciBkdXJjaCBkaWUgU3RyYXNzZW4sIHdlbm4gZGV1dHNjaGUgU29sZGF0ZW4KYmVpbSBBdWZiYXUgdm9uIFNjaHVsZW4gbWl0aGVsZmVuLgoKLS0gClBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKE1hdGlzLCAyMS4gSmFuIDIwMDMsIDEzOjA5OjE3KToKfiMhIHJuPVBhdHJ5biBydD0xMDQzMTUwMDY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE0MTAxMQpJbiBkZXIgRGlza3Vzc2lvbiBoaWVyIHdpcmQgc3RhZW5kaWcgZGllIFRlcnJvcmlzbXVzZ2VmYWhyIGFscyBIYXVwdGFyZ3VtZW50CmZ1ZXIgZWluZW4gS3JpZWcgZ2VnZW4gZGVuIElyYWsgYW5nZWZ1ZWhydC4gU293ZWl0IG1pciBiZWthbm50IGlzdCwgZ2lidCBlcwpiaXNoZXIga2VpbmVybGVpIEJld2Vpc2UgZnVlciBlaW5lIGdyb2Vzc2VyZSBWZXJiaW5kdW5nIGRlcyBJcmFrcyBtaXQgZGVtCmludGVybmF0aW9uYWxlbiBUZXJyb3Jpc211cy4gQmxlaWJlbiBhbHMgQXJndW1lbnQgbm9jaCBNYXNzZW52ZXJuaWNodHVuZ3MtCndhZmZlbi4gRGVtbmFlY2hzdCBnZWh0IGVzIGFsc28gYXVjaCBnZWdlbiBOb3Jka29yZWEsIFBha2lzdGFuLCBJbmRpZW4gdW5kCklzcmFlbCAtIGFsbGVzIFN0YWF0ZW4sIGRpZSBlaWdlbnRsaWNoIGtlaW5lIEF0b213YWZmZW4gYmVzaXR6ZW4gImR1ZXJmdGVuIi4KT2RlciBzaW5kIHZpZWxsZWljaHQgZG9jaCBlaGVyIGFsdGUgUmVjaG51bmdlbiBtaXQgZGVtIElyYWsgdW5kIE9lbCBkYXMKYXVzc2NobGFnZ2ViZW5kZSBBcmd1bWVudCAuLi4gPwoKTWF0aXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLi4uIChOb25uZSwgMjEuIEphbiAyMDAzLCAxMzo1NzozMCk6Cn4jISBybj1NYXRpcyBydD0xMDQzMTUwOTU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE0MTAxMQpMdXN0aWcgZmluZGUgaWNoIGphIGRpZSBTYWNoZSBtaXQgTm9yZGtvcmVhLiBFcnN0IHNwZXJyZW4gd2lyIGRpZQpPZWxsaWVmZXJ1bmdlbiwgc28gZGFzcyBkZW5lbiBuaWNodCB2aWVsIGFuZGVyZXMgYmxlaWJ0LCBhbHMgZGFzIEF0b21wcm9ncmFtbQp3aWVkZXIgYXVmenVuZWhtZW4gdW5kIGRhbm4gdmVyYmlldGVuIHdpciBpaG5lbiBhdWNoIGRhcyBtaXQgQW5kcm9odW5nIHZvbgpLcmllZy4gTmV0dCBMZXV0ZSwgZGllIFJlZ2llcnVuZyBkZXIgVVNBLgoKTm9ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGlza3Vzc2lvbiAoUGl0ZmFsbCwgMjEuIEphbiAyMDAzLCAxNDozNzoyOCk6Cn4jISBybj1QYXRyeW4gcnQ9MTA0MzE1NjEwNyByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMDQzMTU2MTA3CndhZmZlbgoKUGl0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRGlza3Vzc2lvbiAoQ3VjaHVsbGluLCAyMS4gSmFuIDIwMDMsIDE1OjE3OjE4KToKfiMhIG9uPUN1Y2h1bGxpbiBvdD0xMDQzMTU4NjM0IG9nPWdpbGRlbi56YXViZXJlcgp+IyEgcm49Rm9vYmFyIHJ0PTEwNDMxNTg1ODggcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTA0MzE1NjEwNwpPaCwgRHUgbWFnc3QgaHVuZGVydCB2ZXJzY2hpZWRlbmUgVGFrdGlrLVRlY2huaWtlbiBoYWJlbj8gRGFzIGxpZXNzZQpzaWNoIHNpY2hlcmxpY2ggZWlucmljaHRlbi4uLgoKKFNjaG1hcnJuKQpZVEN1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBEaXNrdXNzaW9uIChWYXJsYXJpb24sIDIxLiBKYW4gMjAwMywgMTU6MjQ6NTYpOgp+IyEgcm49VmFyZGlvbiBydD0xMDQzMTU5MDAyIHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTEwNDMxNTYxMDcKRGllIGdlaG9lcmVuIGVoZXIgaGllcmhlciAoYnp3LiB1ZWJlcmFyYmVpdGV0IDspCgpWYXJsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKEdub21lLCAyMS4gSmFuIDIwMDMsIDE3OjA1OjUyKToKfiMhIHJuPU1hdGlzIHJ0PTEwNDMxNTA5NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTQxMDExCnp1bWluZGVzdCBwYWtpc3RhbiwgaW5kaWVuIHVuZCBpc3JhZWwgaGFiZW4ga2VpbmUgcHN5Y2hpc2NoIGdlc3RvZXJ0ZW4Kdm9sbGlkaW90ZW4gYW4gaWhyZXIgc3BpdHplIHN0ZWhlbi4gZGFzIGlzdCB3b2hsIGRlciBzcHJpbmdlbmRlIHB1bmt0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKEN1Y2h1bGxpbiwgMjEuIEphbiAyMDAzLCAxNzowNjo0MCk6Cn4jISBybj1Hbm9tZSBydD0xMDQzMTY1MTUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE0MTAxMQo+IHp1bWluZGVzdCBwYWtpc3RhbiwgaW5kaWVuIHVuZCBpc3JhZWwgaGFiZW4ga2VpbmUgcHN5Y2hpc2NoIGdlc3RvZXJ0ZW4KPiB2b2xsaWRpb3RlbiBhbiBpaHJlciBzcGl0emUgc3RlaGVuIC4uLgoKRGFzIGJsaWViZSB6dSBiZWxlZ2VuLCBqdW5nZXIgTWFubi4uLiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoVmFuaW9uLCAyMS4gSmFuIDIwMDMsIDE3OjEyOjIzKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDQzMTY1MjAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE0MTAxMQo+IERhcyBibGllYmUgenUgYmVsZWdlbiwganVuZ2VyIE1hbm4uLi4gOikKCkZ1ZWhsc3QgRHUgRGljaCBuaWNoIGFsdCwgd2VubiBEdSBzb3dhcyBzYWdzdD8KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKEFudGhlYSwgMjEuIEphbiAyMDAzLCAxNzoxMzozOSk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTA0MzE2NTIwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNDEwMTEKUGFzcyBhdWYsIHdhcyBkdSBzYWdzdCwgc29uc3Qgd2lyc3QgRHUgc29mb3J0IGJlc2NodWxkaWd0LCBpbiBERSB3aWVkZXIKYW50aXNlbWl0aXNjaGUgU3RpbW11bmcgenUgc2NodWVyZW4gb2RlciBzby4gU2NobGllc3NsaWNoIGRhcmYgbWFuIGFscwpEZXV0c2NoZXIgamEgbmljaHRzIHp1bSBUaGVtYSBJc3JhZWwgc2FnZW4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKEdyaW1tYm9ybiwgMjEuIEphbiAyMDAzLCAxNzoxNTowMCk6Cn4jISBybj1BbnRoZWEgcnQ9MTA0MzE2NTYxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNDEwMTEKTWVpbmUgR3VldGUgZ2VodCBtaXIgZGllc2Ugd2VpbmVybGljaGUgQXR0aXR1ZWRlIGF1ZiBkZW4gU2FeV15XZGllIE5lcnZlbi4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBOZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoR25vbWUsIDIxLiBKYW4gMjAwMywgMTc6MTU6MjYpOgp+IyEgcm49QW50aGVhIHJ0PTEwNDMxNjU2MTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTQxMDExCmljaCBuYWhtIGlzcmFlbCB2b3JzaWNodHNoYWxiZXIgbWl0IHJlaW4uLi4gZGV1dHNjaGUgdmVycGZsaWNodHVuZyB1bmQgc28uLi4KZWNodGVyIGthZXNlLCB3ZW5uIGlociBtaWNoIGZyYWd0LiBhYmVyIGljaCBiaW4gamEgc2Nob24gcnVoaWcsIHNvbnN0CmJpbiBpY2ggZ2xlaWNoIGFscyBtb2VsbGVtYW5uIHZlcnNjaHJpZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKEN1Y2h1bGxpbiwgMjEuIEphbiAyMDAzLCAxNzoxNTo1MCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0MzE2NTcwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNDEwMTEKSG9lciBhdWYsIGhpZXIgaXJnZW5kd2VuIGVybnN0IHp1IG5laG1lbiwgc29uc3Qgc2NocmVpYnQgUGFkcmVpYwp3aWVkZXIgNDAgWmVpbGVuIFNjaG1hcnJuLiAKCk9id29obC4KClBhc3N0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBOZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoVmFuaW9uLCAyMS4gSmFuIDIwMDMsIDE3OjE1OjU4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQzMTY1NzAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE0MTAxMQpHYWJzIG5pY2ggbWFsIGVpbiBMaWVkIG1pdCBkZW0gV29ydCAnQXR0aXR1ZWRlJyBpbSBSZWZyYWluPyBJY2ggaGFiIG1pY2ggaW1tZXIKZ2VmcmFndCwgd2FzIGRhcyB3b2hsIGhlaXNzZW4gbWFnLCBkYXMgV29ydC4gOikKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKEJvaW5nLCAyMS4gSmFuIDIwMDMsIDE3OjE2OjE0KToKfiMhIHJuPUdub21lIHJ0PTEwNDMxNjU3MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTQxMDExCkR1IE1vZWxsZXp3ZXJnLCBEdSEgOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLi4uIChDdWNodWxsaW4sIDIxLiBKYW4gMjAwMywgMTc6MTY6MzApOgp+IyEgcm49VmFuaW9uIHJ0PTEwNDMxNjU3NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTQxMDExCipzaW5nKiBEZWluZSBHZXdhbHQgaXN0IG51ciBlaW4gc3R1bW1lciBTY2hyZWkgbmFjaCBMaWVoaWViZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKEp1c3Rhdml1cywgMjEuIEphbiAyMDAzLCAxNzoxNjozNCk6Cn4jISBybj1Hbm9tZSBydD0xMDQzMTY1MTUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE0MTAxMQpiZWkgaXNyZWFsIGlzIGRhcyBub2NoIG5pY2h0IHdpcmtsaWNoIGJld2llc2VuIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLi4uIChWYW5pb24sIDIxLiBKYW4gMjAwMywgMTc6MTc6MzApOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwNDMxNjU3OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTQxMDExClZhbmlvbiBzdW1tdDogVW5kIER1IHdlaXNzdCB2ZXJtdXRsaWNoIG5pY2h0bWFsIHdhcyBBdHRpdHVlZGUgaGVpc3N0IC4uLgoKV2FyIGRhcyBqZXR6dCBzbyByaWNodGlnPwoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBOZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoR25vbWUsIDIxLiBKYW4gMjAwMywgMTc6MTk6MDMpOgp+IyEgcm49Qm9pbmcgcnQ9MTA0MzE2NTc3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNDEwMTEKYXJncy4gc2VodCBpaHIhIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKEFudGhlYSwgMjEuIEphbiAyMDAzLCAxNzozMDoyMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0MzE2NTcwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNDEwMTEKU29ycnksIGhhdHRlIGljaCB6dSB3ZW5pZyBTYXJrYXNtdXMgZHJpbj8gVHV0IG1pciBsZWlkLCBzb2xsIG5pY2h0IHdpZWRlcgp2b3Jrb21tZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogIFJlOiBEaXNrdXNzaW9uIChPcmt0b2V0ZXIsIDIxLiBKYW4gMjAwMywgMTg6MDI6NTIpOgp+IyEgcm49R29ldGhlIHJ0PTEwNDMxNjgwNjYgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTA0MzE2ODA2NgpBbnR3b3J0IGF1ZiBkZW4gKGJpc2xhbmcpIGxldHplbiBBcnRpa2VsCgoiQmFjayB0byB0aGUgcm9vdHM/IiBXZWdoaWVyIHRvdGlkbGVuPwoKUGF0cnluIGdpYiBkb2NoIGVpbmZhY2ggamVkZW0gZGVyIGluIGRpZSB6LWdpbGRlIGVpbnRyaXR0IHZvbiBBbmZhbmcgYW4gZWluClRvb2wgZGFzIGlobi9zaWUgdW5zdGVyYmxpY2ggbWFjaHQgdW5kIGRlbiBaYXAtYmVmZWhsLiBCaW4gbWFsIGdlc3Bhbm50IHdpZQp2aWVsZW4gZGFzIGRhbm4gbm9jaCBTcGFzcyBtYWNodCBpbiBkZXIgZGFubiB3aXJrbGljaCB1bmJlc3RyaXR0ZW4gc3RhZXJrc3RlbgpHaWxkZSBkZXMgTUcgenUgc3BpZWxlbikKCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICBSZTogRGlza3Vzc2lvbiAoQ3VjaHVsbGluLCAyMS4gSmFuIDIwMDMsIDE4OjA0OjMyKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDQzMTY4NTcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE2ODA2NgpWaWVsZW4gRGFuayBmdWVyIGRlbiBuZXVlcmxpY2hlbiBCZXdlaXMgRGVpbmVyIGFsbGdlbWVpbmVuIFVuZmFlaGlna2VpdCwKWnVzYW1tZW5oYWVuZ2UsIGRlcmVuIEtvbXBsZXhpdGFldCB1ZWJlciAid2FzIGljaCBsb3NsYXNzZSwgZmFlbGx0IG5hY2gKdW50ZW4iIGhpbmF1c2dlaHQsIHp1IGVya2VubmVuIG9kZXIgZ2FyIHp1IGFuYWx5c2llcmVuLgoKWVRDdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogIFJlOiBEaXNrdXNzaW9uIChXb29keSwgMjEuIEphbiAyMDAzLCAxOTo0NDo1Myk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTA0MzE2ODY3MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNjgwNjYKTGFzcyB1bnMgZG9jaCBkZW4gZWluemlnIG5laWRpZ2VuIEthZW1wZmVyLiBEZW4gTHV4dXMgaGF0IG5pY2h0CmplZGUgR2lsZGUuIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogIFJlOiBEaXNrdXNzaW9uIChQYXRyeW4sIDIxLiBKYW4gMjAwMywgMjE6MTI6NTQpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwNDMxNjg2NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTY4MDY2ClNvIHZpZWwgQmxvZWRoZWl0IHR1dCB3aXJrbGljaCBlaW5mYWNoIG51ciB3ZWguCldhcyBzb2xsIG1hbiBkYXp1IG5vY2ggc2FnZW4uIDopCgotLSAKUGF0cnluLCBrb21wbGV0dCByYXRsb3MKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6ICBSZTogRGlza3Vzc2lvbiAoQm9pbmcsIDIxLiBKYW4gMjAwMywgMjE6MTU6NDIpOgp+IyEgcm49UGF0cnluIHJ0PTEwNDMxNzk5NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTY4MDY2CkJpdHRlIHNjaGxpZXNzdCBqZXR6dCBuaWNodCB2b24gT3JrdG9ldGVyIGF1ZiBhbGxlIFNwaWVsZXIsIGRpZSBuZW4KS2FlbXBmZXIgaGFiZW4gLi4uIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6ICBSZTogRGlza3Vzc2lvbiAoQmFtYmksIDIxLiBKYW4gMjAwMywgMjE6MTU6NTIpOgp+IyEgcm49UGF0cnluIHJ0PTEwNDMxNzk5NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTY4MDY2CktvZW5udGUgbWlyIG5vY2htYWwgd2VyICJXYXMgaWNoIGxvc2xhc3NlLCBmYWVsbHQgbmFjaCB1bnRlbiIgZXJrbGFlcmVuPwpCaXR0ZSEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogIFJlOiBEaXNrdXNzaW9uIChQYXRyeW4sIDIxLiBKYW4gMjAwMywgMjE6MTc6MDQpOgp+IyEgcm49Qm9pbmcgcnQ9MTA0MzE4MDE0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNjgwNjYKSGFiIGljaCBuaWNodCwgc29sY2ggZWluIFBoYWVub21lbiBpc3Qgc2NobGVjaHQgdmVyYWxsZ2VtZWluZXJiYXIuCgotLSAKUGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBOZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoQ2FkcmFjaCwgMjEuIEphbiAyMDAzLCAyMTo0NzowOSk6Cn4jISBybj1Ob25uZSBydD0xMDQzMTUzODUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE0MTAxMQpTb3JyeSwgYWJlciBkZXIgQXJ0aWtlbCBnZWh0IHdpcmtsaWNoIG1laWxlbndlaXQgZGFuZWJlbi4KYSkgRXMgd3VyZGVuIGtlaW5lIFdpcnRzY2hhZnRzc2Fua3Rpb24gdmVyaGFuZ2VuLCBzb25kZXJuIF9rb3N0ZW5sb3NlXwpPZWxsaWVmZXJ1bmdlbiBnZXN0b3BwdCwgZGllIGFscyBHZWdlbmxlaXN0dW5nIGZ1ZXIgZWluIGVpbnN0ZWxsZW4gZGVzCkF0b213YWZmZW5wcm9ncmFtbXMgZ2VsaWVmZXJ0IHd1cmRlbi4gRGllIE5vcmRrb3JlYW5lciBoYWJlbiAobmFjaGRlbSBkaWUKR2VoZWltZGllbnN0ZSBCZXdlaXNlIGhhdHRlbikgenVnZWdlYmVuIF9vYndvaGxfIGRpZSBBbWVyaWthbmVyIElocmVuIFRlaWwgZGVyCkFibWFjaHVuZyBlcmZ1ZWxsdCBoYWJlbiwgdHJvdHpkZW0gZWluZmFjaCB3ZWl0ZXIgYW4gQXRvbWJvbWJlbiBnZWFyYmVpdGV0IHp1CmhhYmVuLgpiKSBkZXIgQXRvbXJlYWt0b3IgZGVuIHNpZSBoYWJlbiwgaXN0IG5hY2ggQW5zaWNodCBkZXIgaW50ZXJuYXRpb25lbgpBdG9tZW5lcmdpZWF1ZnNpY2h0c2JlaG9lcmRlIHp1ciBTdHJvbWVyemV1Z3VuZyBhYnNvbHV0IHVuYnJhdWNoYmFyIHVuZCBuaWNodAplaW5zZXR6YmFyLiBEYXMgX2VpbnppZ2VfIHdhcyBtYW4gbWl0IGRpZXNlbSBSZWFrdG9yIGthbm4sIGlzdCBXYWZmZW5mYWVoaWdlcwpQbHV0b25pdW0gaGVyc3RlbGxlbi4KYykgRGllIE5vcmRrb3JlYW5lciBsYXNzZW4gaWhyIFZvbGsgaHVuZ2VybiAoamEgZXMgdmVyaHVuZ2VybiBqZWRlcyBKYWhyCnRhdXNlbmRlIGluIGRlbSBMYW5kISEhKSB1bmQgZXJmcmllcmVuLCB1bSBzaWNoIGRpZSBfZ3JvZXNzdGVfIEFybWVlIGRlciBXZWx0CmhhbHRlbiB6dSBrb2VubmVuLiBEaWUgTm9yZGtvcmVhbmVyIGhhYmVuIG1laHIgTWFubiB1bnRlciBXYWZmZW4gYWxzIENoaW5hCm9kZXIgZGllIEFtaXMuCgpDYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKFBhdHJ5biwgMjEuIEphbiAyMDAzLCAyMjoyMjoyOCk6Cn4jISBybj1DYWRyYWNoIHJ0PTEwNDMxODIwMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTQxMDExClNvd2VpdCBpY2ggd2Vpc3Mgd2lyZCBlaWZyaWcgdmVyc2Nod2llZ2VuLCBkYXNzIHNpZSBpaHJlbiBUZWlsIGRlcgpBYm1hY2h1bmcgbmljaHQgZWluaGllbHRlbiwgbmFlbWxpY2ggZGVuIFRlaWwgMiwgZGVyIEJhdSB6d2VpZXIKTGVpY2h0d2Fzc2VycmVha3RvcmVuIGR1cmNoIGRpZSBVU0EgaW4gTm9yZGtvcmVhIGxhZyB1bSBkZXJhcnQgdmllbGUgSmFocmUKaGludGVyIGRlbSBaZWl0cGxhbixkIGFzcyBtYW4gbnVyIGFubm5laG1lbiBrb25udGUsIHNpZSB3dWVyZGVuIG5pZW1hbHMKZ2ViYXV0IHdlcmRlbi4gVW5kIGRhenUgbm9jaCBkaWUgYmVydWVobXRlICJBY2hzZSBkZXMgQm9lc2VuIi4uLgoKLS0gClBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogIFJlOiBEaXNrdXNzaW9uIChDdWNodWxsaW4sIDIxLiBKYW4gMjAwMywgMjI6MjY6MjEpOgp+IyEgb249Q3VjaHVsbGluIG90PTEwNDMxODQzNjkgb2c9Z2lsZGVuLnphdWJlcmVyCn4jISBybj1DYWRyYWNoIHJ0PTEwNDMxODM1MTMgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTA0MzE2ODA2NgpGZXN0ZSBHcmVuendlcnRlIG51ZXR6ZW4gbmF0dWVybGljaCBuaWNodHMsIHNvbGFuZ2UgZXMgTWFnaWVyIGdpYnQsIGRpZQpzaWNoIHBhcnRvdXQgbmljaHQgZGFyYW4gaGFsdGVuIHdvbGxlbiwgd2VpbCBzaWUgZGllIFdlaXNoZWl0IG1pdCBkZW0KTG9lZmZlbCBnZWZyZXNzZW4gdW5kIHp1dmllbCBpbiBkZW4gZmFsc2NoZW4gSGFscyBiZWtvbW1lbiBoYWJlbi4gRGFzCnNpbmQgc28gZGllIHNlbGJlbiBMZXV0ZSwgZGllIHNpY2ggc3RpbmtpZyBhdXMgZGVyIEFrdGl2YSB6dXJ1ZWNremllaGVuLApzaWNoIGVzIGFiZXIgbmljaHQgbmVobWVuIGxhc3NlbiwgYWxsZXMgdW5kIGplZGVtIHdlaXNlIFJhdHNjaGxhZWdlIHp1CmdlYmVuLCBlZ2FsIG9iIGRhcyBnZXd1ZW5zY2h0IGlzdCBvZGVyIG5pY2h0LgoKVW5kIGljaCBkYWNodGUgc2Nob24sIGRpZSBzY2hsaW1tc3RlbiBzZWllbiBqZW5lLCBkaWUgdWViZXJhbGwgbWl0cmVkZW4Kd29sbGVuLCBhYmVyIGplZ2xpY2hlIFZlcmFudHdvcnR1bmcgb2RlciBBcmJlaXQgYWJsZWhuZW4uIC4uLgoKWVRDdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKFJvY2h1cywgMjIuIEphbiAyMDAzLCAwMDoyNzowNSk6Cn4jISBybj1Hbm9tZSBydD0xMDQzMTY1MTUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE0MTAxMQpIbW0sIGljaCB3dWVyZGUgamVtYW5kZW4sIGRlciBrZWluZW4gRnJpZWRlbiB3aWxsLCBzY2hvbiBhbHMKcHN5Y2hpc2NoIGdlc3RvZXJ0IGJlemVpY2huZW4sIGFiZXIgZWluIFZvbGxpZGlvdAppc3QgQXJpZWwgbGVpZGVyIG5pY2h0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiAgUmU6IERpc2t1c3Npb24gKE1vbnRhbnVzLCAyMi4gSmFuIDIwMDMsIDA0OjEzOjEyKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDQzMTg0MzgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE2ODA2NgpMaWViZXIgS3Vja3Vja3VsbGluLgpWaWVsbGVpY2h0IHNvbGx0ZSBhdWNoIGlyZ2VuZHdhbm4gZWluZW0gdmVyYmllc3RlcnRlbiBQZXNzaW1pc3RlbiB3aWUgRGlyCmtsYXJ3ZXJkZW4sIGRhc3MgZXMgaW4gZGVyIFdlbHQgZGVyIE9ya3RvZXRlcnMgbnVyIFNhY2hlbiB3aWUgTHVmdGJhbGxvbnMgdW5kClNlaWZlbmJsYXNlbiBnaWJ0LCBkaWUgYWxsZXMgYW5kZXJlIG1hY2hlbiBhbHMgbmFjaCB1bnRlbiBmYWxsZW4sIHdlbm4gc2llCmxvc2dlbGFzc2VuIHdlcmRlbi4KU0NSLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogIFJlOiBEaXNrdXNzaW9uIChWYW5pb24sIDIyLiBKYW4gMjAwMywgMDc6MDU6MjApOgp+IyEgcm49TW9udGFudXMgcnQ9MTA0MzIwNTE5MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNjgwNjYKVW0gbWFsIGluIGRpZXNlbiBzY2hvZW5lbiBCaWxkZXJuIHp1IGJsZWliZW46CklyZ2VuZHdhbm4gaXN0IGF1cyBqZWRlbSBMdWZ0YmFsbG9uIGRpZSBMdWZ0IHJhdXMuIElyZ2VuZHdhbm4gcGxhdHp0IGplZGUKU2VpZmVuYmxhc2UuIAoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6ICBSZTogRGlza3Vzc2lvbiAoQmFtYmksIDIyLiBKYW4gMjAwMywgMTE6MTA6NTEpOgp+IyEgcm49TW9udGFudXMgcnQ9MTA0MzIwNTE5MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNjgwNjYKRW5kbGljaCB2ZXJzdGVodCBtYWwgamVtYW5kIG1laW4gRGlsZW1tYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEdpYnRzIGRhcyBhdWNoIGZ1ZXIgTGFwdG9wcyA/PyAoSHVtbmksIDIyLiBKYW4gMjAwMywgMTE6MzI6MDIpOgp+IyEgb249SHVtbmkgb3Q9MTA0MzIzMTUxNCBvZz13d3cKfiMhIHJuPVZhcmRpb24gcnQ9MTA0MzIzMTMxMiByZz13d3cKfiMhIHRpZD0xMDQzMjI4Mzg4Ck5vZSwgaWNoIGRhY2h0ZSBudXIsIHdlbm5zIGRhcyBmdWVyIExhcHRvcHMgZ2FlYmUga29lbm50ZSBtYW4gZGFzIEdlcmFldCBkYW5uCnNlbGJzdCBhbiBkZW4gTGFwdG9wIGFuc2NobGllc3NlbiB1bmQgZGVuIHVlYmVyIGRhcyBHZXJhZXQgbWl0IFN0cm9tCnZlcnNvcmdlbi4gRWluIHBlcnBldHV1bSBMYXB0b3AsIHNvenVzYWdlbi4KCkphamEsIGljaCB2ZXJsZWcgamEgc2Nob24uLi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBHaWJ0cyBkYXMgYXVjaCBmdWVyIExhcHRvcHMgPz8gKFZhcmRpb24sIDIyLiBKYW4gMjAwMywgMTE6MzU6MzEpOgp+IyEgcm49SHVtbmkgcnQ9MTA0MzIzMTUyMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMyMjgzODgKQWxzbyBuZSBQZXJwZXR1dW0tU3Ryb212ZXJzb3JndW5nIGthbm5zdGUgZWluZmFjaGVyIGhhYmVuLiBLYXVmIGltIEJhdW1hcmt0IHNvCm5lIDMtZmFjaCBWZXJ0ZWlsZXJzdGVja2Rvc2UgdW5kIHN0ZWNrZSBkZXJlbiBTdGVja2VyIGluIGVpbmUgZGVyIDMgRG9zZW4uCkRhbm4gaGFzdGUgZGllIFN0cm9tenVmdWhyIGdlc2ljaGVydCB1bmQgbm9jaCAyIERvc2VuIHp1ciBOdXR6dW5nIDotKQoKVmFyZGlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogR2lidHMgZGFzIGF1Y2ggZnVlciBMYXB0b3BzID8/IChIdW1uaSwgMjIuIEphbiAyMDAzLCAxMTozNTo1NSk6Cn4jISBybj1WYXJkaW9uIHJ0PTEwNDMyMzE3MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMjI4Mzg4CkFjaCBqYSwgd2FydW0gYmluIGljaCBkYSBuaWNodCBnbGVpY2ggZHJhdWYgZ2Vrb21tZW4/CgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUlVNTU1TISEhISAoWm9vaywgMjIuIEphbiAyMDAzLCAxNDowMjo0OCk6Cn4jISBybj1ab29rIHJ0PTEwNDMyNDA1Mjggcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTA0MzA1ODgxNwpOYWNoZGVtIEdyaW1tYm9ybiBpbiBnaWxkZW4uKiBuaWNodCB2ZXJsZWd0LCBtdXNzIGhpZXIgd29obCBtYWwgaG9lY2hzdC0KbGV2ZWxpZyB6dWdlc2NobGFnZW4gd2VyZGVuLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktLUkFBQUFBQ0ghISEhIChCb2luZywgMjIuIEphbiAyMDAzLCAxNDowNDozMCk6Cn4jISBvbj1Cb2luZyBvdD0xMDQzMDU4OTAzIG9nPWdpbGRlbi5rYWVtcGZlcgoKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSVU1NTVMhISEhIChCb2luZywgMjIuIEphbiAyMDAzLCAxNDowNDozOCk6Cn4jISBvbj1ab29rIG90PTEwNDMyNDA1Mjggb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBvbj1Cb2luZyBvdD0xMDQzMjQwMTg2IG9nPWdpbGRlbi50YW5qaWFuCn4jISBybj1IdW1uaSBydD0xMDQzMjQwMDg3IHJnPWdpbGRlbi50YW5qaWFuCn4jISB0aWQ9MTA0MzA1ODgxNwpNdXNzIGljaCBqZXR6dCBhdWNoIG5vY2ggZGVtZW50aWVyZW4/ICpobXBmKgpOYSBndXQsIGljaCBkZW1lbnRpZXJlIGF1Y2ggYWxsZXMsIGFiZXIgd2VuaWdzdGVucyBtYWNoIGljaCBlcyBpbiAKZGVyIGZhbHNjaGVuIFJ1YnJpayEgOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS05JUlNDSC4uLiAoWm9vaywgMjIuIEphbiAyMDAzLCAxNDowOToxNCk6Cn4jISBvbj1ab29rIG90PTEwNDMwNTg5MjQgb2c9YmFsYW5jZS5iZWthbm50bWFjaHVuZ2VuCgpNdXNzdGUgc2Vpbi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS05JUlNDSC4uLiAoWm9vaywgMjIuIEphbiAyMDAzLCAxNDowOToyNik6Cn4jISBvbj1ab29rIG90PTEwNDMyNDAwMTIgb2c9YmFsYW5jZS5iZWthbm50bWFjaHVuZ2VuCn4jISBybj1ab29rIHJ0PTEwNDMwNTg5MjQgcmc9YmFsYW5jZS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA0MzA1ODkyNApOZWluLCBkaWVzZXIgQXJ0aWtlbCBiZXpvZyBzaWNoIGF1ZiBuaXguIFdpciBtYWNoZW4gaW4gZGVyIEJhbGFuY2UKZG9jaCBlaW5lIG9yZGVudGxpY2hlIEluZm9ybWF0aW9uc3BvbGl0aWsuCgpab29rIGdyaW5zdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6ICBSZTogRGlza3Vzc2lvbiAoQ3VjaHVsbGluLCAyMy4gSmFuIDIwMDMsIDE2OjI3OjEzKToKfiMhIHJuPVNlbGV2ZW4gcnQ9MTA0MzMzNTU4MSByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMDQzMTY4MDY2CkVpbmUgZ3V0ZSBTY2hsYW5nZSBpc3QgZWluZSBndXRlIFNjaGxhbmdlLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogIFJlOiBEaXNrdXNzaW9uIChHcmltbWJvcm4sIDIzLiBKYW4gMjAwMywgMTY6Mjc6MzkpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwNDMzMzU2MzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTY4MDY2CkRhIGthbm4gRWRnYXIgZWluIExpZWQgdm9uIHNpbmdlbiwgamEuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6ICBSZTogRGlza3Vzc2lvbiAoQ3JvZnQsIDIzLiBKYW4gMjAwMywgMTg6MDE6MTApOgp+IyEgb249Q3JvZnQgb3Q9MTA0MzM0MTI0NiBvZz1naWxkZW4uemF1YmVyZXIKfiMhIHJuPU1pcmlsIHJ0PTEwNDMzNDEwODIgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTA0MzE2ODA2NgpBdSBqYS4gIEJpdHRlIGF1Y2ggYmVpIGRlbiBLYWVtcGZlcm4gZWluYmF1ZW4gXTpeKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiAgUmU6IERpc2t1c3Npb24gKE9ya3RvZXRlciwgMjMuIEphbiAyMDAzLCAxODowNDo0OSk6Cn4jISBybj1Dcm9mdCBydD0xMDQzMzQxMjcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE2ODA2NgpXaWUgd2FlcmUgZXMgZGVubiwgd2VubiBtYW4gYWIgU2VoZXIgZ2VuYXUgZGFubiBlaW5lbiB6YXAgYmVrb21tdCwgd2VubiBtYW4KZWluZW4gRlAgZmluZGV0PyAibm9ybWFsZXMiIEthZW1wZmVuIGdpYnQgZXMgZGFubiBuYXR1ZXJsaWNoIG5pY2h0IG1laHIuLi4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogIFJlOiBEaXNrdXNzaW9uIChDcm9mdCwgMjMuIEphbiAyMDAzLCAxODowNTozMCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA0MzM0MTQ4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNjgwNjYKR3V0ZSBJZGVlLiAgRGFubiBrb2VubnRlIG1hbiBlbmRsaWNoIG1hbCB2ZXJsYWVzc2xpY2hlIEZQLUxpc3RlbgplcnN0ZWxsZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6ICBSZTogRGlza3Vzc2lvbiAoQ3VjaHVsbGluLCAyMy4gSmFuIDIwMDMsIDE4OjA2OjMyKToKfiMhIHJuPUNyb2Z0IHJ0PTEwNDMzNDE1MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTY4MDY2ClNjaGxlY2h0ZSBJZGVlLiBTbyBvZnQgd2llIE9ya3RvZXRlciBkYW5uIGluIGRlciBUb2Rlc3NlcXVlbnogd2FlcmUuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogIFJlOiBEaXNrdXNzaW9uIChDdWNodWxsaW4sIDIzLiBKYW4gMjAwMywgMTg6MDY6NTApOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwNDMzNDE1OTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTY4MDY2CkljaCBrb3JyaWdpZXJlIG1pY2g6IEdVVEUgSURFRSEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiAgUmU6IERpc2t1c3Npb24gKENyb2Z0LCAyMy4gSmFuIDIwMDMsIDE4OjA3OjAyKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDQzMzQxNTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE2ODA2NgpEdSBtZWluc3QgT3JrdCB3aXJkIGRhbm4genUgc2VsdGVuIGdlemFwcHQ/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6ICBSZTogRGlza3Vzc2lvbiAoQ3JvZnQsIDIzLiBKYW4gMjAwMywgMTg6MDg6NDApOgp+IyEgcm49TWlyaWwgcnQ9MTA0MzM0MTY2OCByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMDQzMTY4MDY2CkRhcyBzYWd0IGVpbmUgQ2hhb3Rpbi4gIFNjaGFlbSBkaWNoICwtKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiAgUmU6IERpc2t1c3Npb24gKE1pcmlsLCAyMy4gSmFuIDIwMDMsIDE4OjA5OjQ0KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNDMzNDE3MjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTY4MDY2CkljaCBzYWd0ZSBTcGllbGVyLCBuaWNodCBNaXJpbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiAgUmU6IERpc2t1c3Npb24gKEh1bW5pLCAyMy4gSmFuIDIwMDMsIDE4OjEwOjI0KToKfiMhIHJuPU1pcmlsIHJ0PTEwNDMzNDE3ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTY4MDY2ClphcCBmdWVyIHdlbj8gQWxzIGVpbnNldHpiYXJlIFdhZmZlIG9kZXIgZGlyZWt0IGZ1ZXIgZGVuIFNwaWVsZXI/CgpIdW1uaSBtZWludCBkYSBnaWJ0cyBuZW4gVW50ZXJzY2hpZWQgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogIFJlOiBEaXNrdXNzaW9uIChPcmt0b2V0ZXIsIDIzLiBKYW4gMjAwMywgMTg6MTA6NTgpOgp+IyEgcm49SHVtbmkgcnQ9MTA0MzM0MTgyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNjgwNjYKcGVyIE1HLVJhbmRvbS4uIGR1IHdlaXNzdCBqYSB3YXMgZGFzcyBoZWlzdC4uLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiAgUmU6IERpc2t1c3Npb24gKEh1bW5pLCAyMy4gSmFuIDIwMDMsIDE4OjExOjQ0KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDQzMzQxODU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE2ODA2NgpOZWluLCBpY2ggd29sbHRlIHdpc3Nlbiwgb2IgZGFzICwsemFwJycgc2ljaCBkYXJhdWYgYmV6aWVodCwgZGFzcyBkZXIgU3BpZWxlcgpnZXphcHB0IHdpcmQsIG9kZXIgb2IgZGVyIGluIHNlaW4gSW52IHF1YXNpIGVpbiBEaW5nIGdlbW92dCBiZWtvbW10LCBkYXMgc2ljaAosLEVpbiBaYXAnJyBuZW5udCwgZGFzIGVyIGRhbm4gei5CLiBwZXIgLCx6YXAgbmFnYWRyYWNoZScnIGVpbnNldHplbiBrYW5uLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiAgUmU6IERpc2t1c3Npb24gKE9ya3RvZXRlciwgMjMuIEphbiAyMDAzLCAxODoxMjoyMik6Cn4jISBybj1IdW1uaSBydD0xMDQzMzQxOTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE2ODA2NgpzY2hvbiBrbGFyIHVuZCBpY2ggbWVpbnRlIGRhcyBkYXMgYmVpIGplZGVtIEZQIHBlciBSYW5kb20gZW50c2NoaWVkZW4gd2lyZC4uLi4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogIFJlOiBEaXNrdXNzaW9uIChIdW1uaSwgMjMuIEphbiAyMDAzLCAxODoxMzoxMik6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA0MzM0MTk0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNjgwNjYKV293LCBndXRlIElkZWUuIEdlZmFlbGx0IG1pciB3aXJrbGljaCA7LSkgV2VubiBkZXIgQW50ZWlsIGZ1ZXIgZGVuIFNwaWVsZXItWmFwCnNlaHIsIHNlaHIsIHNlaHIga2xlaW4gdW5kIGRlciBmdWVyIGRlbiBaYXAgZGVzIFNwaWVsZXJzIHNlaHIgc2VociBzZWhyIGhvY2gKaXN0IDstKQoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiAgUmU6IERpc2t1c3Npb24gKEFtYXJ5bGxpcywgMjMuIEphbiAyMDAzLCAxODoxMzo1NCk6Cn4jISBybj1IdW1uaSBydD0xMDQzMzQxOTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE2ODA2NgpbeF0gZGFmdWVyLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6ICBSZTogRGlza3Vzc2lvbiAoR3JpbW1ib3JuLCAyMy4gSmFuIDIwMDMsIDE4OjQyOjQ5KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDQzMzQyMDM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzE2ODA2NgpbWF0gc2hvdWxkIGJlIGltcGxlbWVudGVkIGltbWVkaWF0ZWx5LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogIFJlOiBEaXNrdXNzaW9uIChDdWNodWxsaW4sIDIzLiBKYW4gMjAwMywgMjA6MjE6MjYpOgp+IyEgb249Q3VjaHVsbGluIG90PTEwNDMzNDk2ODAgb2c9ZGlza3Vzc2lvbgp+IyEgcm49SG91c2Vob2xkZXIgcnQ9MTA0MzM0OTY0NiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA0MzE2ODA2NgpTbyBlaW4gRHJhY2hlIGJyYXVjaHQgdmllbCBTY2hsYWYsIGRlbiBrcmllZ3QgZXIgYXVmIGRlciBIb2NoZWJlbmUKbmljaHQuLi4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJc3QgZGEgbmljaHQgd2VyIGltIGZhbHNjaGVuIEpvYj8gKE9sbGksIDIzLiBKYW4gMjAwMywgMjI6MjU6MDQpOgoKRHUgdWViZXJyZWljaHN0IGRlbiBCcmllZiBhbiBlaW5lbiBPYmVycG9zdGRpcmVrdG9yLgpFaW4gT2JlcnBvc3RkaXJla3RvciBkcmVodCBkZW4gQnJpZWYgaGluIHVuZCBoZXIuIFNjaGVpbmJhciBrYW5uIGhpZXIgamVtYW5kCm5pY2h0IGxlc2VuIC4uLiAKCgpPbGxpLCBnbGF1YnQgZXMgbm9jaCBuaWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiAgUmU6IERpc2t1c3Npb24gKEN1Y2h1bGxpbiwgMjQuIEphbiAyMDAzLCAwMDo0NToxOCk6Cn4jISBvbj1DdWNodWxsaW4gb3Q9MTA0MzM2NTUxNCBvZz1naWxkZW4uemF1YmVyZXIKfiMhIHJuPVZhcmRpb24gcnQ9MTA0MzM2NTM5OSByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMDQzMTY4MDY2CkRlciBOYWdhZHJhY2hlIHRyaXR0IGF1ZiBlaW5lIFN0ZWlucGxhdHRlLgpFaW4gRmFsbGdpdHRlciB2ZXJzY2hsaWVzc3QgZGVuIFdlZyBuYWNoIFN1ZWRvc3Rlbi4KRGVyIE5hZ2FkcmFjaGUgc3ByaWNodCBkaWUgV29ydGUgZGVyIFVta2Voci4KCkduaC4uLiAic2VpZCBkb2NoIG1hbCBrcmVhdGl2ISIgaXN0IGVpbiBBdWZydWYsIGRlbiBpY2ggbmlyZ2VuZHdvCnNlaGVuIHdpbGwsIHdvIEJhbWJpLCBQYXJhY2Vsc3VzLCBBcmsgb2RlciBQYXRyeW4gaWhuIGxlc2VuIGtvZW5udGVuLi4uIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhhbGJrcmVpc2UgKEdyaW1tYm9ybiwgMjQuIEphbiAyMDAzLCAxOToyNToyMSk6Cn4jISBybj1QaG9ib3MgcnQ9MTA0Mjk5ODkzNyByZz1wdWl6Cn4jISB0aWQ9MTA0Mjk5ODkzNwpBdWNoIHdlbm4gZGVyIEtyZWlzIGtydW1tIHVuZCBzY2hpZWYgaXN0OiBkYXMgWmVpY2huZW4gdm9uIG9ra3VsdGVuIFN5bWJvbGVuCmluIGRlciBNUEEgaXN0IGVpZ2VudGxpY2ggbmljaHQgc3RhdHRoYWZ0LiBEaWUgRGFlbW9uZW5kaW1lbnNpb24gcmVubnQgdW5zCnNvbnN0IHdpZWRlciBkaWUgQnVkZSBtaXQgaWhyZW4gQmVzY2h3ZXJkZW4gZWluLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGhhbGJrcmVpc2UgKE9ya3RvZXRlciwgMjQuIEphbiAyMDAzLCAxOTozMjo0OSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0MzQzMjcyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI5OTg5MzcKV28gc2llaHN0IGR1IGRhcyBQcm9ibGVtLCB3aXIgc2NoaWNrZW4gUmluY2V3aW5kIGR1cmNoIGJldm9yIGRpZSBtZXJrZW4gZGFzIGVzCmVpbmVuIFp1Z2FuZyBnaWJ0IHVuZCBkYXMgUHJvYmxlbSBpc3QgZ2Vsb2VzdC4uLgoKT3JrVCBrZW5udCBzaWNoIGRhIGF1cy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGhhbGJrcmVpc2UgKEN1Y2h1bGxpbiwgMjQuIEphbiAyMDAzLCAxOTozMzoyMCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA0MzQzMzE2OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI5OTg5MzcKPiBPcmtUIGtlbm50IHNpY2ggZGEgYXVzLgoKRGFzIGVya2xhZXJ0IGVpbmlnZXMuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogaGFsYmtyZWlzZSAoQW1hcnlsbGlzLCAyNC4gSmFuIDIwMDMsIDE5OjM1OjE0KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDQzNDMzMTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Mjk5ODkzNwpXYXMgbWFjaHQgRGljaCBzbyBzaWNoZXIsIGRhc3Mgc2ljaCBSaW5jZXdpbmQgbmFjaCA3MjQgVGFnZW4gQWJ3ZXNlbmhlaXQKZGVtbmFlY2hzdCBtYWwgd2llZGVyIGVpbmxvZ2dlbiB3aXJkPwoKRnJhZ3QKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogaGFsYmtyZWlzZSAoT3JrdG9ldGVyLCAyNC4gSmFuIDIwMDMsIDE5OjQ5OjM0KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDQzNDMzMzE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Mjk5ODkzNwo3MjQgVGFnZSBhYndlc2VuZD8gKnNjaGx1Y2sqIFZvcmJlcmVpdGVuIHp1ciBQYW5payEKCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBoYWxia3JlaXNlIChMaWFyYSwgMjQuIEphbiAyMDAzLCAyMDozMjoyNyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTA0MzQzMzMxNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDI5OTg5MzcKUmluY2V3aW5kIHdhciAoZW50bG9idCB3ZWdlbiBBYndlc2VuaGVpdCA7KSBtYWwgbWl0IGVpbmVtIG1laW5lciBad2VpdGllcwp2ZXJsb2J0IC4uLiBEZXIga29tbXQgd29obCBlaGVyIG5pY2h0IHdpZWRlci4gOyggRGVyIEVyc3RpZSBpc3QgamEgYXVjaCBzY2hvbgpld2lnIG5pY2h0IG1laHIgaW0gTUcgZ2V3ZXNlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBQYXJ0eSAoamV0enQgYWJlcikgKERlZXBibHVlLCAyNC4gSmFuIDIwMDMsIDIxOjU2OjQwKToKfiMhIHJuPVRoYW50YWxhcyBydD0xMDQzNDQxNTY5IHJnPXBhcnR5Cn4jISB0aWQ9MTA0MzIzMzAwOQpKYWphLCBzaWNoIHNlbGJzdCBkYXMgZ3V0ZSBSYWRlYmVyZ2VyIHp1ciBTZWl0ZSBzdGVsbGVuIHVuZCBkZW4gYW5kZXJlbiBCaXQKYW5iaWV0ZW4uLi4KLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYW5kbGVyIHdlaXNzIG5pY2h0IHdvJ3MgbGFuZyBnZWh0Li4uIChXaGl0ZXRpZ2VyLCAyNi4gSmFuIDIwMDMsIDEyOjAyOjA3KToKRWluIHdhYmVybmRlcyBHZWJpbGRlIGVyc2NoZWludCB1cnBsb2V0emxpY2ggdm9yIERpci4KRWluIFdhbmRsZXIgcmVubnQgbWl0IGRlbSBLb3BmIGdlZ2VuIGRpZSBXYW5kLgpEZXIgV2FuZGxlciB3YWJlcnQgbmFjaCBOb3JkZW4uCkVpbiBXYW5kbGVyIHdhYmVydCBoZXJlaW4uCkRlciBXYW5kbGVyIHdhYmVydCBuYWNoIFdlc3Rlbi4KRWluIFdhbmRsZXIgd2FiZXJ0IGhlcmVpbi4KRGVyIFdhbmRsZXIgd2FiZXJ0IG5hY2ggV2VzdGVuLgpFaW4gV2FuZGxlciB3YWJlcnQgaGVyZWluLgpEZXIgV2FuZGxlciB3YWJlcnQgbmFjaCBOb3JkZW4uCkVpbiBXYW5kbGVyIHdhYmVydCBoZXJlaW4uCkRlciBXYW5kbGVyIHdhYmVydCBuYWNoIE9zdGVuLgpFaW4gV2FuZGxlciB3YWJlcnQgaGVyZWluLgpEZXIgV2FuZGxlciB3YWJlcnQgbmFjaCBOb3JkZW4uCkVpbiBXYW5kbGVyIHdhYmVydCBoZXJlaW4uCkRlciBXYW5kbGVyIHdhYmVydCBuYWNoIFdlc3Rlbi4KRWluIFdhbmRsZXIgd2FiZXJ0IGhlcmVpbi4KRGVyIFdhbmRsZXIgdmVyc2Nod2luZGV0IHVycGxvZXR6bGljaC4KRWluIHdhYmVybmRlcyBHZWJpbGRlIGVyc2NoZWludCB1cnBsb2V0emxpY2ggdm9yIERpci4KRWluIFdhbmRsZXIgcmVubnQgbWl0IGRlbSBLb3BmIGdlZ2VuIGRpZSBXYW5kLgpEZXIgV2FuZGxlciB3YWJlcnQgbmFjaCBOb3JkZW4uCgotLSBXaGl0ZVRpZ2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXdXJmc3Rlcm5lIChFbGRhcm9uLCAyNi4gSmFuIDIwMDMsIDIxOjE5OjIxKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDQzNjEyMTc5IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTEwNDMwMDU3MTgKR2VuYXUsIFd1cmZzdGVybmUgbnVyIG5vY2ggYXVzIEthbXBmcmVpaGUgMi4gOz4KCkVsZGFyb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFd1cmZzdGVybmUgKEdyaW1tYm9ybiwgMjYuIEphbiAyMDAzLCAyMToyMTo1Myk6Cn4jISBybj1FbGRhcm9uIHJ0PTEwNDM2MTIzNjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMDA1NzE4CiJGcmllbmRseSBmaXJlIGlzbid0LiIKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IFRhdWIgdW5kIEJsaW5kaGVpdC4uLiAoRWxkYXJvbiwgMjYuIEphbiAyMDAzLCAyMTo1MzowNSk6Cn4jISBvbj1FbGRhcm9uIG90PTEwNDM2MTExOTMgb2c9c2VoZXIuZW50d2lja2x1bmcKfiMhIHJuPVJvbGFuZCBydD0xMDQzNjExMDQzIHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA0MjkxMTUxNwpbIF0gRHUgd2lsbHN0LCBkYXNzIG1hbiBkaWNoIHZlcnN0ZWh0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBXdXJmc3Rlcm5lIChab29rLCAyNi4gSmFuIDIwMDMsIDIzOjQ4OjQ2KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDQzNjE5NDMwIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTEwNDMwMDU3MTgKImltIEluZmloZ3QiIGZpbmRlIGljaCBqYSBlaW5lIGJlbWVya2Vuc3dlcnRlIEZvcm11bGllcnVuZy4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogV3VyZnN0ZXJuZSAoR3JpbW1ib3JuLCAyNi4gSmFuIDIwMDMsIDIzOjQ5OjI4KToKfiMhIHJuPVpvb2sgcnQ9MTA0MzYyMTMyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMwMDU3MTgKU293YXMgc29sbHRlIG1hbiBlaWdlbnRsaWNoIG1pbGl0YWVyaXNjaCBhYnJ1ZXN0ZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBXdXJmc3Rlcm5lIChWYXJsYXJpb24sIDI3LiBKYW4gMjAwMywgMDA6MjE6MjEpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDQzNjIzMjA1IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTEwNDMwMDU3MTgKRGFmdWVyIGhhYmVuIGRpZSBaYXViaWVzIGFsc28gZGllIEV4dHJhaGFuZC4KClZhcmwqLCBzY2htYXJybmVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFd1cmZzdGVybmUgKFpvb2ssIDI3LiBKYW4gMjAwMywgMDA6MjM6MzUpOgp+IyEgb249Wm9vayBvdD0xMDQzNjIzNDA3IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49Q2FkcmFjaCBydD0xMDQzNjIzMzQ5IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTEwNDMwMDU3MTgKV2lldmllbGUgV3Vyc3Rlcm5lIGhhc3QgZGVubiBEdSBzY2hvbiBnZXdvcmZlbj8gVW5kIGhhc3QgRHUgZGllIFdhdHRlIHVuZApkZW4gQnJhdGVuIGR1cmNoc2NobGFnZW4/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLi4uIChLYXJpcywgMjcuIEphbiAyMDAzLCAwMDoyNToxMyk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTA0MzE2NTIwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNDEwMTEKSmFqYWFhYWEuLi4gbWl0IFNjY2Nod2VydGVybiBrYW5uIG1hbiBkYXMgYmVzdGltbXQgbm9jaCBiZXNzZXIgbWFjaGVuLgpNYW4gc3RlbGwgc2ljaCB2b3I6IGF1ZmdydW5kIGJlc3NlcmVyIEZsdWdlaWdlbnNjaGFmdGVuIGhhdCBzbyBlaW4gU2hpcmt1bgpub2NoIGVpbiBMb2NoCmluIGRlciBNaXR0ZS4gRGEga2FubiBtYW4gaWhuIG5hZW1saWNoIG1pdCBkZW0gU2Nod2VydCBhdWZzcGllc3NlbiAob2RlcgpTcGVlcikuIE9kZXIgbWl0IG5lbSBNZXNzZXIgKGZ1ZXIgSG9iYml0cykKSmVkZW5mYWxscyBuaWNodCBtaXQgZWluZXIgQXh0LiBTb3JyeSBpaHJlIFp3ZXJnZS4gClVuZCBkYW1pdCBrYW5uIG1hbiBkYW5uIGdhbnogd2VpdCBhdXNob2xlbiAoSGViZWxhcm0gbmJlYWNodGVuICEpIHVuZCBnYWFhbnoKbGFuZyBiZXNjaGxldW5pZ2VuLgpEYSBoaWxmdCBkYW5uIGF1Y2ggZGVuIFp3ZXJnZW4gZGllIGdhbnplIEtyYWZ0IC4gV0VubiBzaWUgbWl0IFNwZWVyZW4gdW5kClNDaHdlcnRlcm4gYXJiZWl0ZW4gKGtvZW5uZW4gZGllIGRhcz8/PykKVW5kIHNvIGthbm4gbWFuIGRhbm4gYXVjaCBtaXQgendlaSBIYWVuZGVuIGVpbmVuIFd1cmYta2VuLi4gU2h1cmktc3Rlcm4uLi4uCmFjaCBlZ2FsLi4uCndlcmZlbgoKV2VyIHByb2dndCBqZXR6dCBkYXMgV1NCTVMgKFd1cmZzdGVybkJlc2NobGV1bmlndW5nc01laXN0ZXJTQ2h3ZXJ0KQoKS2FyaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBXdXJmc3Rlcm5lIChDYWRyYWNoLCAyNy4gSmFuIDIwMDMsIDAwOjI2OjA5KToKfiMhIHJuPVpvb2sgcnQ9MTA0MzYyMzQxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMwMDU3MTgKZHJlaSBab29rLCBhYmVyIGRhcyByZWdlbG1hZXNzaWcgdW5kIGR1cmNoc2NobGFnZW4gaGFiZW4gZGllIG1pdCBkZXIgWmVpdApuYWhlenUgYWxsZXMgd29yYXVmIG1hbiBnZXdvcmZlbiBoYXQuIERhIGhhdCBrZWluZSBaaWVsc2NoZWliZSBvZGVyIGFlaG5saWNoZXMKbGFuZ2UgZ2VoYWx0ZW4uLi4KCkNhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBOZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoR3JpbW1ib3JuLCAyNy4gSmFuIDIwMDMsIDAwOjI2OjIzKToKfiMhIHJuPUthcmlzIHJ0PTEwNDM2MjM1MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMTQxMDExClNvbGNoZSBBcm12ZXJsYWVuZ2VyZXIgenVtIFNwZWVyd2VyZmVuIGdhYnMgc2Nob24gaW4gZGVyIEFudGlrZS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE5ldGRpZ2VzdCBtYWwgd2llZGVyLi4uIChLYXJpcywgMjcuIEphbiAyMDAzLCAwMDoyNzowMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0MzYyMzU4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMxNDEwMTEKTWlzdC4gSGllciB3aXJkIG1hbiBub2NoIG5pY2h0bWFsIG1pdCBkZW0gZWluZW4gU2F0eiBmdWVyIGRpZSBQYXRlbnRhbm1lbGR1bmcKZmVydGlnLgoKS2FyaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBXdXJmc3Rlcm5lIChHcmltbWJvcm4sIDI3LiBKYW4gMjAwMywgMDA6Mjc6MDgpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDQzNjIzNTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzAwNTcxOApIbW0sIGJpbiBpY2ggZGVyIGVpbnppZ2UgZGVtIGRhcyAib2RlciBhZWhubGljaGVzIiBlaW4gcGFhciBTb3JnZW4gbWFjaHQ/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBXdXJmc3Rlcm5lIChLYXJpcywgMjcuIEphbiAyMDAzLCAwMDoyNzo0Mik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0MzYyMzYyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMwMDU3MTgKT2RlciBhZWhubGljaGVzID0gT3JrcyA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogV3VyZnN0ZXJuZSAoQ3VjaHVsbGluLCAyNy4gSmFuIDIwMDMsIDAwOjI3OjQ4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQzNjIzNjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzAwNTcxOApOZWluLCBlcyB3aXJkIGRpZSBIYXVzd2FuZCBnZXdlc2VuIHNlaW4uIER1IGplZGVzdCB2b24gamVtYW5kLCBmdWVyIGRlbgoiU2NobmVsbGUgQmVzY2hsZXVuaWd1bmciIG5pY2h0cyBtaXQgIktyYWZ0IiB6dSB0dW4gaGF0Li4uIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IFd1cmZzdGVybmUgKEJvaW5nLCAyNy4gSmFuIDIwMDMsIDA4OjI4OjA2KToKfiMhIG9uPUthcmlzIG90PTEwNDM2MjQ1NzEgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1Hbm9tZSBydD0xMDQzNjI0MzU1IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTEwNDMwMDU3MTgKSm8sIHZlcmRhbW1pY2guIERhIGhhYiBpY2ggZG9jaCBnbGF0dCB2ZXJnZXNzZW4sIGRhc3Mgc2ljaCBzbyBlaW4KLi4gRGluZy4uLiBEaW5nc3Rlcm4uLi4gU2h1cmlEaW5nZXNuc0tpcmNoZW5zLi4uICAgIGF1Y2ggbm9jaCBkcmVodC4KS2xhciwgREFTIG1hY2h0IGphIGVyc3QgZGllIEdlZmFlaHJsaWNoZWtpdCBhdXMuCldlbm4gc2ljaCBkYXMgRGluZ2Vuc0tpcmNoZW5zIGVyc3RtYWwgZHVyY2ggZGllIExlZGVyamFja2UsIGRhcyBIYW5kdHVjaCwgZGllCldhdHRlIHVuZCBkZW4gR2VsZGJldXRlbCAKKG9kZXIgd2FzIHdhciBkZGEgbm9jaCBnbGVpY2ggYWxsZXMpIG1hbCBkdXJjaGdyZWZyYWVzdCBoYXQuCk1hbiBzb2xsdGUgZGEgbm9jaCBuZW4gUy4uLmFjaCBiZXNzZXIgbmljaHQuCgpLYXJpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IFd1cmZzdGVybmUgKEJvaW5nLCAyNy4gSmFuIDIwMDMsIDA4OjI4OjA3KToKfiMhIG9uPU11YWRpYiBvdD0xMDQzNjI0NjM3IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49S2FyaXMgcnQ9MTA0MzYyNDU3MSByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMDQzMDA1NzE4CnVuZCB3YXMgcGFzc2llcnQgZXJzdCB3ZW5uIG1hbiBkYXMgdGVpbCB2b3JoZXIgYXVmZ2VoZWl6dCBoYXQuIGdpYnRzCmVpZ2VudGxpY2ggc293YXMgd2llIGdsdWVoZW5kZSBzaHVyaWtlbmhhbmR0YWVzY2hjaGVuID8KCmduYSBibG9lZGUgb3J0aG9ncmFwaGllCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogV3VyZnN0ZXJuZSAoQm9pbmcsIDI3LiBKYW4gMjAwMywgMDg6Mjg6MDgpOgp+IyEgb249VmFybGFyaW9uIG90PTEwNDM2MjQ2OTMgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1NdWFkaWIgcnQ9MTA0MzYyNDYzNyByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMDQzMDA1NzE4CkRhbm4gdmVyYnJlbm50IG1hbiBzaWNoIGRpZSBQZm90ZW4gYmVpbSBXZXJmZW4gdW5kIGxhZXNzdCBkZW4gV3VyZnN0ZXJuCmZhbGxlbi4KClZhcmwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogV3VyZnN0ZXJuZSAoQm9pbmcsIDI3LiBKYW4gMjAwMywgMDg6Mjg6MDkpOgp+IyEgb249S2FyaXMgb3Q9MTA0MzYyNDcwNyBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPU11YWRpYiBydD0xMDQzNjI0NjM3IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTEwNDMwMDU3MTgKSmEsIGdlbmF1LiBEZXIgRmV1ZXJEaW5nZW5zS2lyY2hlbnMuIE9kZXIgRWlzRGluZ2Vuc0tpcmNoZW5zIQpCZXNvbmRlcnMgZ2VmYWVocmxpY2g6IGRlciBTYWV1cmVEaW5nZW5zS2lyY2hlbnMuCkhhLiAgREFTIHdhZXIgZW5kbGljaCBtYWwgd2FzIGZ1ZXIgZWluZW4gQWJlbnRldXJlcmVyLgoKS2FyaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBXdXJmc3Rlcm5lIChCb2luZywgMjcuIEphbiAyMDAzLCAwODoyODoxMCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTA0MzYyNDcwOCBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPU11YWRpYiBydD0xMDQzNjI0NjM3IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTEwNDMwMDU3MTgKTmVpbiwgYWJlciB3ZW5uIGRpZSBXYWVybWVrYXBheml0YWV0IGdyb3NzIGdlbnVnIGlzdCBpc3QgZGVyIEJyYXRlbiB2b3IgT3JrVCdzCkdlc2ljaHQgYW5zY2hsaWVzc2VuZCBsZWNrZXIga3Jvc3MgZ2VicmF0ZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnRvIG5vcmUgMzMgKEJvaW5nLCAyNy4gSmFuIDIwMDMsIDA4OjI4OjExKToKfiMhIG9uPU11YWRpYiBvdD0xMDQzNjI0NzM3IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDM2MjQ3MDggcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTA0MzAwNTcxOApoYW5kc2NodWhlID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBXdXJmc3Rlcm5lIChCb2luZywgMjcuIEphbiAyMDAzLCAwODoyODoxMik6Cn4jISBvbj1LYXJpcyBvdD0xMDQzNjI0Nzc5IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDM2MjQ3MDggcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTA0MzAwNTcxOApXZW5uIGRlciBEaW5nZXNLaXJjaGVucyBhbHNvIGhlaXNzIGdlbnVnIGlzdCwgdmVyd2FuZGVsdCBlciBhbHNvIEJSYXRlbiBpbgplaW5lbgp3ZWl0ZXJlbiBEaW5nZW5zS2lyY2hlbnM/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogV3VyZnN0ZXJuZSAoUGF0cnluLCAyNy4gSmFuIDIwMDMsIDA5OjUwOjM2KToKfiMhIHJuPUJvaW5nIHJ0PTEwNDM2NTI0OTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMDA1NzE4CkljaCB3dW5kZXIgbWljaCBzb3dpZXNvLCB3YXJ1bSBlcyBhbmdlc2ljaHRzIGRlciBUcnZlcy1XYWZmZW5mbHV0IG5vY2gKa2VpbmUgRnVlci0gRWlzLSBNYWdpZS0gLi4uIGhlaWxpZy0gVGVycm9yLSB1bmhlaWxpZy1XdXJmc3Rlcm5lIGdpYnQsCm5hdHVlcmxpY2ggbWl0IEZpbnRlYm9udXMgdW5kIHZlcnNjaGllZGVuZW4gR2V3aWNodGVuIDspCgotLSAKUGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogV3VyZnN0ZXJuZSAoTXVhZGliLCAyNy4gSmFuIDIwMDMsIDA5OjUxOjM2KToKfiMhIHJuPVBhdHJ5biBydD0xMDQzNjU3NDM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzAwNTcxOApuaWNodCB6dSB2ZXJnZXNzZW4gZGVuIHdhbmRlbGJhcmVuIHZvbGxzdHJlY2tlcnNodXJpa2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogV3VyZnN0ZXJuZSAoUGF0cnluLCAyNy4gSmFuIDIwMDMsIDA5OjUyOjI0KToKfiMhIHJuPU11YWRpYiBydD0xMDQzNjU3NDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzAwNTcxOAouLi51bmQgZGVyIGVsZW1lbnRhcnNodXJpa2FuIDspCihiZXN0aW1tdCBtYWwgYmVhbnRyYWd0ICpnKikKCi0tIApQYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBXdXJmc3Rlcm5lIChNb3Jnb3RoLCAyNy4gSmFuIDIwMDMsIDEwOjA3OjQ5KToKfiMhIHJuPVBhdHJ5biBydD0xMDQzNjU3NDM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzAwNTcxOApXaWUgZGllIHZpZWwgenUgaGVmdGlnIHNpbmQgISA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBXdXJmc3Rlcm5lIChQaXRmYWxsLCAyNy4gSmFuIDIwMDMsIDEyOjI5OjQ2KToKfiMhIHJuPUdub21lIHJ0PTEwNDM2NjY3ODcgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTA0MzAwNTcxOAp1bmQgbWl0IHYtLT5jIC4uLiBBQ0sgZGFzIGxhc3NlbiB3aXIgamV0enQgZWNodCBiZXNzZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBiaWVyIChCb2luZywgMjcuIEphbiAyMDAzLCAxMjo0NToxMik6Cn4jISBvbj1Cb2luZyBvdD0xMDQzNjY3ODk0IG9nPXBhcnR5Cn4jISBybj1DYXNzYW5kcmEgcnQ9MTA0MzY2NjAzNyByZz1wYXJ0eQp+IyEgdGlkPTEwNDM2NjYwMzcKQml0dGUga2VpbiBBZnJpIENvbGEgLi4uIDspCiAgQm9pbmcKUFM6IE9rLCBpY2ggdmVyc2NoaWVicyBzY2hvbiBzZWxic3QgbmFjaCBzY2htYXJybiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBiaWVyIChQaXRmYWxsLCAyNy4gSmFuIDIwMDMsIDEyOjQ2OjEwKToKfiMhIHJuPUJvaW5nIHJ0PTEwNDM2Njc5MTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzNjY2MDM3CmVpbm1hbCBDbHViY29sYSBmdWVyIEJvaW5nCnVuZCBlaW5tYWwgTXVsdGl2aXRhbWluc2FmdCBmdWVyIFJvY2h1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhdWYgZWluIG5ldWVzIChNdWFkaWIsIDI3LiBKYW4gMjAwMywgMTM6MzI6MzMpOgp+IyEgcm49RWxkYXJvbiBydD0xMDQzNjcwNjQ2IHJnPXB1aXoKfiMhIHRpZD0xMDQzNjY2MTMzCmRhcyBrb25udGUgamEgYXVjaCBudXIgdm9uIGVpbmVtIHRhbmppYW4gc3RhbW1lbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IGF1ZiBlaW4gbmV1ZXMgKE9ya3RvZXRlciwgMjcuIEphbiAyMDAzLCAxNToxMDo0MCk6Cn4jISBybj1OaWNvbGFpIHJ0PTEwNDM2NzU4MjEgcmc9cHVpegp+IyEgdGlkPTEwNDM2NjYxMzMKQWxzbywgcmVrYXBpdHVsaWVyZW4gd2lyIG5vY2ggbWFsOiBEdSBzYWd0ZXN0IGV0d2FzIHZvbiAidmF0ZXIgbXV0dGVyIHVuZAp0b2NodGVyIG1hY2h0IHp1c2FtbWVuIHp3ZWkgbSB1bmQgZWluIHciIHdvZnVlciBpY2ggZGlyIGRhcyBVbmdlbnVlZ2VuZAp2ZXJwYXNzdCBoYWJlLgpJbiBkZW0gUmFldHNlbCBpc3QgZGllIEZyYWdlIG9iIGRpZXNlcyBNYWVkY2hlbiBlaW5lbiBCcnVkZXIgb2RlciBlaW5lClNjaHdlc3RlciBoYXQuIERhcyBHZXNjaGxlY2h0IGthbm4gZGllIGplZGVyIGRlciBlaW5lbiBBdXN3ZWlzIGhhdCBhbmhhbmQKc2VpbmVyIFBhcGllcmUgemVpZ2VuIHVuZCB3ZW5uIGRpZSBTY2h3ZXN0ZXIgYWxzIEJydWRlciBnZWJvcmVuIHd1cmRlLCBzbyBrYW5uCnNpZSBkb2NoIG5hY2ggUmVjaHQgdW5kIEdlc2V0eiBlaW5lIFNjaHdlc3RlciBzZWluLgoKT3JrVC4KClBTIFdhcyBpc3QgZWlnZW50bGljaCB3ZW5uIGRlciAyLiBLaW5kIGVpbiBOZXV0cnVtIGlzdD8gT2J3b2hsLi4gZGllIHdlcmRlbgpkb2NoIHdvaGwgZGFubiBtZWhyIG9kZXIgd2VuaWdlciBadWZhZWxsaWcgZWluZXIgR3J1cHBlIHp1Z2V0ZWlsdCwgb2Rlcj8KCgplaW4gImRpZSIgc29sbHRlIGVpbiAiZGlyIiBzZWluLCBzb3JyeQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IGF1ZiBlaW4gbmV1ZXMgKE5pY29sYWksIDI3LiBKYW4gMjAwMywgMTU6MTQ6MDQpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNDM2NzY2NDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzNjY2MTMzCmFhYWxzbyBpY2ggaGF0dGUgbWljaCBqYSBiZXJlaXRzIHZlcmJlc3NlcnQsIGxhbmdlIGJldm9yIGR1Cm1laW50ZXN0LCBlaW5lbiBsdXN0aWdlbiBiZWl0cmFnIGxlaXN0ZW4genUgbXVlc3Nlbi4KZGFzIGlzdCBzb3dpZXNvIGVpbmUgc2VociBuZXJ2aWdlIHVuYXJ0IHZvbiBkaXI6CmRpcmVrdCBhdWYgcG9zdHMgenUgYW50d29ydGVuLCBub2NoIGJldm9yIGR1IGRlbiB0aHJlYWQgenUgCmVuZGUgZ2VsZXNlbiBoYXN0Lgp2ZXJzdWNocyBtYWwgaW4gZGVyIG1wYSAtLXNvIGRlbm4gZHUgc2Nob24gZGEgcG9zdGVuIG11c3N0LS0KbWl0IGRpZXNlciByZWloZW5mb2xnZToKLWtvbXBsZXR0ZW4gdGhyZWFkIGxlc2VuCi11ZWJlcmxlZ2VuLCB3YXMgZGllIGxldXRlIHNjaG9uIGdlc2FndCBoYWJlbgotdWViZXJsZWdlbiwgb2IgbWFuIHdhcyB6dW0gdGhlbWEgYmVpenV0cmFnZW4gaGF0Ci11ZWJlcmxlZ2VuLCB3aWUgbWFuIGRhcyBpbiB3b3J0ZSBmYXNzZW4ga2FubgotYXJ0aWtlbCB2ZXJmYXNzZW4uCgpvayBpY2ggZ2ViZSB6dSAzbWFsIHVlYmVybGVnZW4gdWViZXJmb3JkZXJ0IGRpY2gsIGRhbm4gCmxlZyBkaWUgbXBhIGFtIGJlc3RlbiB6dXIgc2VpdGUuCnVuZCBkYSBkZWluIG5lcnZmYWt0b3Igc29lYmVuIGRlaW5lbiB1bnRlcmhhbHR1bmdzd2VydAp1ZWJlcmJvdGVuIGhhdCBlcmxhdWJlIGljaCBtaXIgZWluIGlnbm9yaWVyZUBtcGEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBLcmFmdC4uLiAoTXVhZGliLCAyNy4gSmFuIDIwMDMsIDE1OjE2OjAyKToKfiMhIHJuPUNhZHJhY2ggcnQ9MTA0MzY3Njg2MiByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMDQzNjcwMTMyCnNlaCBpY2ggZGFzIGFsc28gcmljaHRpZywgZGFzcyBlaWdlbnRsaWNoIGRlciB3YWZmZW53dXJmIGRlciBrYWVtcGZlciBiZW51dHp0CndlcmRlbiBzb2xsdGUsIHdlaWwgZGllIGRhIGphIGRhcyByaWNodGlnZSB3ZXJmZW4gZ2VsZXJudCBoYWJlbiA/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IGF1ZiBlaW4gbmV1ZXMgKE9ya3RvZXRlciwgMjcuIEphbiAyMDAzLCAxNToxNzo0MCk6Cn4jISBybj1OaWNvbGFpIHJ0PTEwNDM2NzY4NDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzNjY2MTMzCipnKiBJc3QgZGlyIHNjaG9uIG1hbCBkZXIgR2VkYW5rZSBnZWtvbW1lbiBkYXMgbWVpbiBBcnRpa2VsIGV0d2FzIGxhZW5nZXIgd2FyCmFscyBkZWluZXI/IEljaCBoYWJlIGRlbiBSZXBseSBhdWYgZGVuIGxldHplbiBBcnRpa2VsIGdlc2NocmllYmVuLCBudXIgd2Fyc3QKZHUgaGFsdCBldHdhcyBzY2huZWxsZXIuIG1lYSBjdWxwYSEKRHUgdmVybGFuZ3N0IHZvbiBtaXIgenUgRGVua2VuPyBTY2hhdSBtYWwgaW4gd2VsY2hlciBSdWJyaWsgd2lyIGhpZXIgc2luZCAqZmcqCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9ydGhvZ3JhcGhpZS1GbHVjaCAoQ3JvZnQsIDI3LiBKYW4gMjAwMywgMjE6Mzc6MjgpOgp+IyEgcm49QnJld2VyIHJ0PTEwNDM2OTk3NTAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDQzNjk5NzUwClRyZXRlIGJlaSBkZW4gWmF1YmlzIGF1cy4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogS3JhZnQuLi4gKExpYXJhLCAyNy4gSmFuIDIwMDMsIDIzOjUyOjMyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQzNzA3NzkxIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTEwNDM2NzAxMzIKV29taXQgZHUgZGFubiBQYXRyeW5zIEFydGlrZWwgd2lya2xpY2ggdG90Z2V0cmV0ZW4gaGFzdC4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXdXJmc3Rlcm5lIChEZWVwYmx1ZSwgMjguIEphbiAyMDAzLCAwOTo1MDoxMyk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNDM3MzgxOTUgcmc9ZC52bGFuZAp+IyEgdGlkPTEwNDM3MzgxOTUKV2FzLCBkaWUgV3VyZnN0ZXJuZSBzaW5kIGF1Zmdld2VydGV0PyAKS2FubiBtYW4gZGllIGpldHp0IEtudWRkZWxuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzU6IGF1ZiBlaW4gbmV1ZXMgKEphZGF3aW4sIDI4LiBKYW4gMjAwMywgMTQ6MTA6NTMpOgp+IyEgb249SmFkYXdpbiBvdD0xMDQzNzU5NDE2IG9nPXB1aXoKfiMhIHJuPUh1bW5pIHJ0PTEwNDM3NTc3NDQgcmc9cHVpegp+IyEgdGlkPTEwNDM2NjYxMzMKVW5kIER1IGJpc3QgRGlyIHNpY2hlciwgZGFzcyBkYXMgc3RpbW10IHVuZCBkYXNzIER1IG5pY2h0IGVpbmZhY2ggc2Nob24gaW0KS2luZGVyZ2FydGVuIGJlaSBkZW4gS2xvZXR6Y2hlbiB2ZXJzYWd0IGhhc3QsIHNvIHdpZSBOb25uZSwgTWlyaWwgdW5kIGljaD8KSmFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJyZXR0ZXIsIGRpZSBkaWUgV2VsdCBiZWRldXRlbiAoT3JrdG9ldGVyLCAyOC4gSmFuIDIwMDMsIDE0OjIwOjI2KToKfiMhIHJuPUh1bW5pIHJ0PTEwNDM3NTk2NDUgcmc9cGFydHkKfiMhIHRpZD0xMDQzNzU5NjQ1CkR1IGhhc3QgZWluIFRoZWF0ZXIgZ2Vwcm9nZ3Q/CgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV3VyZnN0ZXJuZSAoQ3VjaHVsbGluLCAyOC4gSmFuIDIwMDMsIDE5OjI4OjMxKToKfiMhIHJuPU1pcmlsIHJ0PTEwNDM3Nzg0NzEgcmc9cHVpegp+IyEgdGlkPTEwNDM3MzgxOTUKQWxzbywgbGllYmUgS2luZGVyLCBkaWUgaWhyIHNjaG9uIGltbWVyIG1hbCB3aXNzZW4gd29sbHRldCwgd2llIGRpZQpMZWhyZXIgenVyIE5vdGVuZmluZHVuZyBrb21tZW4uLi4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXdXJmc3Rlcm5lIChHcmltbWJvcm4sIDI4LiBKYW4gMjAwMywgMTk6Mjk6MjUpOgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwNDM3Nzg1MTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzNzM4MTk1CkRhcyBTY2hsaW1tZSBpc3Q6IG1hbiBoYXQgZ2VsZWdlbnRsaWNoIGRlbiBFaW5kcnVjayBkYXNzIGRhcyBldGxpY2hlIExldXRlCmhpZXIgdGF0c2FlY2hsaWNoIHBlcnNvZW5saWNoIGJldHJlZmZlbiBrb2VubnRlLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFd1cmZzdGVybmUgKENyb2Z0LCAyOC4gSmFuIDIwMDMsIDE5OjMyOjUzKToKfiMhIHJuPUN1Y2h1bGxpbiBydD0xMDQzNzc4NTExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzczODE5NQpJcmdlbmR3aWUgbXVzcyBtYW4gamEgYXVmIGRpZSBCaWxkdW5nc3Jlc2lzdGVueiByZWFnaWVyZW4gLC0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogV3VyZnN0ZXJuZSAoQ3VjaHVsbGluLCAyOC4gSmFuIDIwMDMsIDE5OjMzOjM3KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNDM3Nzg3NzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzNzM4MTk1CjFXNCsyID8gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXdXJmc3Rlcm5lIChNaXJpbCwgMjguIEphbiAyMDAzLCAxOTozOTo0MCk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTA0Mzc3ODgxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDM3MzgxOTUKR3V0ZSBJZGVlLCBrb2VubnRlIGljaCBtaXIgZGFzIEtvcnJpZ2llcmVuIGVyc3BhcmVuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQmxvZWRlIFppZWdlIChHcmltbWJvcm4sIDI4LiBKYW4gMjAwMywgMjE6MTM6MzcpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNDM3ODQ2MTcgcmc9cHVpegp+IyEgdGlkPTEwNDM3ODAzMTQKVW5kIHdlciB6aWVodCBkZXIgWmllZ2Ugdm9yaGVyIGRpZSBnYW56ZW4gQnJhdGVuLCBULVNoaXJ0cywgTGVkZXJqYWNrZSB1bmQKV2F0dGUgYW4/IE5vZSwgZGFzIGlzdCBtaXIgenUga29tcGxpemllcnQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFd1cmZzdGVybmUgKE9ya3RvZXRlciwgMjguIEphbiAyMDAzLCAyMToxNjowMCk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTA0Mzc3ODgxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDM3MzgxOTUKRGllIFc0IHJvbGxlbiBpbW1lciBzbyBzY2hsZWNodC4uLgoKT3JrVCBuaW1tdCB6dW0gU2NoYWRlbiBhdXN3dWVyZmVsbiBsaWViZXIgZWluZW4gVzEwMCB1bmQgb3Blbi1lbmRlZC1oaWdoCnN5c3RlbQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk51ciBfZWluZV8/IChFbHVkYSwgMjguIEphbiAyMDAzLCAyMjoyNjozOCk6CkVpc2ViZW5lLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHdlc3RlbiB1bmQgbm9yZGVuLgpFaW4gZmxpZWdlbmRlciBTY2huZWViYWxsLgpEZXIgemVyYnJvY2hlbmUgU2NobHVlc3NlbC4KICBEZXIgU2NobmVlYmFsbCBncmVpZnQgRGljaCBtaXR0ZW4gaW0gR2VzaWNodCBhbi4KRGlyIGZhZWxsdCBub2NoIGVpbmUgU2Nod2FlY2hlIGluIERlaW5lbSBSdWVzdGUtU3BydWNoIGF1Zi4KRGlyIGZhZWxsdCBub2NoIGVpbmUgU2Nod2FlY2hlIGluIERlaW5lbSBSdWVzdGUtU3BydWNoIGF1Zi4KRGlyIGZhZWxsdCBub2NoIGVpbmUgU2Nod2FlY2hlIGluIERlaW5lbSBSdWVzdGUtU3BydWNoIGF1Zi4KRGlyIGZhZWxsdCBub2NoIGVpbmUgU2Nod2FlY2hlIGluIERlaW5lbSBSdWVzdGUtU3BydWNoIGF1Zi4KRGlyIGZhZWxsdCBub2NoIGVpbmUgU2Nod2FlY2hlIGluIERlaW5lbSBSdWVzdGUtU3BydWNoIGF1Zi4KRGlyIGZhZWxsdCBub2NoIGVpbmUgU2Nod2FlY2hlIGluIERlaW5lbSBSdWVzdGUtU3BydWNoIGF1Zi4KRGlyIGZhZWxsdCBub2NoIGVpbmUgU2Nod2FlY2hlIGluIERlaW5lbSBSdWVzdGUtU3BydWNoIGF1Zi4KRGlyIGZhZWxsdCBub2NoIGVpbmUgU2Nod2FlY2hlIGluIERlaW5lbSBSdWVzdGUtU3BydWNoIGF1Zi4KICBEZXIgU2NobmVlYmFsbCB0cmlmZnQgRGljaC4KCkVsdWRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogS3JhZnQuLi4gKE11YWRpYiwgMjkuIEphbiAyMDAzLCAxMzo0NzoyMyk6Cn4jISBybj1WYW5pciBydD0xMDQzODQzOTAxIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTEwNDM2NzAxMzIKdW5kIHdlbm4gaWNoIGR1cmNoIGRlbW9uc3RyYXRpb24gbmFjaHdlaXNlbiBrYW5uLCBkYXNzIGljaCBtaXQgZGVuIGRpbmdlcm4gbnVyCm1laW5lbiBicmF0ZW4gaW0gd2FmZmVucm9jayB0cmFuY2hpZXJlPyBnZWhlbiBkaWUgZGFubiBhbHMgdHJhbmNoaWVybWVzc2VyCmFuc3RhdHQgYWxzIHdhZmZlIGR1cmNoPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IEtyYWZ0Li4uIChNb3Jnb3RoLCAyOS4gSmFuIDIwMDMsIDEzOjQ4OjM5KToKfiMhIHJuPU11YWRpYiBydD0xMDQzODQ0NDQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzY3MDEzMgpTaW5kIFRyYW5jaGllcm1lc3NlciBrZWluZSBXYWZmZW4/CgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IEtyYWZ0Li4uIChCYW1iaSwgMjkuIEphbiAyMDAzLCAxNDowMzoyMSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNDM4NDQ1MTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzNjcwMTMyCk51ciwgd2VubiBEdSBzaWUgYWxzIHNvbGNoZSBiZW51dHp0LgoKRGFzIGhlaXNzdCBuaWNodCwgZGFzcyBzaWUga2VpbmUgImdlZmFlaHJsaWNoZW4gZ2VnZW5zdGFlbmRlIiBzaW5kLCBkdSBzaWUKYWxzbyAiaWNoIHdpbGwgZG9jaCBudXIgZGVuIGdlZ25lciB0cmFuY2hpZXJlbiIgYXVmbSB2b2xrc2Zlc3QgbWl0CnJ1bXNjaGxlcHBlbiBkdWVyZnRlc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogS3JhZnQuLi4gKEN1Y2h1bGxpbiwgMjkuIEphbiAyMDAzLCAxNTozMDoxMyk6Cn4jISBybj1NdWFkaWIgcnQ9MTA0Mzg1MDUwMCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA0MzY3MDEzMgpEZW4gSGFhZyBpc3QgQnVzaCBlaW4gRG9ybiBpbSBBdWdlLgoKWVRDdQoKUFM6IFdlciBPYmpla3R0b3Bpa2FsaXNpZXJ1bmcgZmluZGV0LCBkYXJmIHNpZSBiZWhhbHRlbi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBLcmFmdC4uLiAoRWxpemFiZXRoLCAyOS4gSmFuIDIwMDMsIDE5OjA1OjQyKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA0Mzg0NDUxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDM2NzAxMzIKd2F0dCB1ZWJlcmhhdXB0IGZ1ZXIgYnJhdGVuICp3YWgqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW5vbnltZSBNYWlscy4uLiAoR3JpbW1ib3JuLCAyOS4gSmFuIDIwMDMsIDIzOjQ1OjA0KToKfiMhIHJuPUh1bW5pIHJ0PTEwNDM4NjIwMDUgcmc9ZXRpa2V0dGUKfiMhIHRpZD0xMDQzODYyMDA1CkR1IGZyYWdzdCwgYWJlciBEdSB3aWxsc3QgbmljaHQgd2lya2xpY2ggZWluZSBBbnR3b3J0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZSwgQXJiZWl0LCBrZWluIFVybGF1Yi4uLiAoV29vZHksIDMwLiBKYW4gMjAwMywgMDA6NTk6NDkpOgp+IyEgcm49QXJrIHJ0PTEwNDM4NzI0NjAgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTEwNDM4NzI0NjAKVm9yIGFsbGVtIEdsYXNnb3cuIERhcyBiZXN0ZWh0IGphIG51ciBhdXMgR2VzY2hhZWZ0ZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZSwgQXJiZWl0LCBrZWluIFVybGF1Yi4uLiAoR3JpbW1ib3JuLCAzMC4gSmFuIDIwMDMsIDAxOjAxOjUxKToKfiMhIHJuPVdvb2R5IHJ0PTEwNDM4ODQ3ODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzODcyNDYwCkR1IGhhc3Qgd2lya2xpY2gga2VpbmUgQWhudW5nIHZvbiBGdXNzYmFsbCwgbmljaHQgd2Focj8KSGludDogZGFzIGlzdCBkaWVzZSBTcG9ydGFydCBtaXQgVG9uaSBQb2xzdGVyLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZSwgQXJiZWl0LCBrZWluIFVybGF1Yi4uLiAoV29vZHksIDMwLiBKYW4gMjAwMywgMDE6MDc6MDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDM4ODQ5MTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzODcyNDYwCldvenU/IEltIEZlYnJ1YXIgc2luZCBhbmRyZSBTcG9ydGFydGVuIGludHJlc3NhbnQuIFNvbGNoZSwgdm9uIGRlbmVuCkR1IHdlbmlnZXIgQWhudW5nIGhhc3QuIEhhdCBtaXQgU2NobmVlIHp1IHR1biAobmVpbiwgbmljaHQgU09MQ0hFTSkuCk5hamEuIFJlZGVuIHdpciBuYWNoIFN0LiBNb3JpdHogd2VpdGVyLiA7KSAgKHVuZCBlcnNwYXIgdW5zIFBvbHN0ZXIsCmRlbiBoYWJlbiB3aXIgZG9jaCBzY2hvbiBzbyBlcmZvbGdyZWljaCBhYmdlc2Nob2JlbiB1bmQgdmVyZHJhZW5ndCkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZSwgQXJiZWl0LCBrZWluIFVybGF1Yi4uLiAoR3JpbW1ib3JuLCAzMC4gSmFuIDIwMDMsIDAxOjEyOjEwKToKfiMhIHJuPVdvb2R5IHJ0PTEwNDM4ODUyMjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzODcyNDYwCkFoLCB1bmQgaWNoIGhhYiBzY2hvbiBMdWZ0IGdlaG9sdCB1bSB6dSBzYWdlbiAiU2NobmVlPyBEYXMgaXN0IGRvY2ggRnVzc2JhbGwsCmluIExldmVya3VzZW4gaGFsdCIuIFVuZCBTdC4gTWF4IGtlbm5lIGljaCBuaWNodC4KV29oaW4gaGFidCBpaHIgZGVubiBQb2xzdGVyIGFiZ2VzY2hvYmVuPyBJY2ggZGFjaHRlIGRlciBpc3Qgd2llZGVyIG5hY2ggZGEKdW50ZW4genVydWVjay4gRGVyIHdhciBzY2hvbiB6aWVtbGljaCBnZW5pYWwsIEFrdGlvbnNyYWRpdXMgZWluZXMgQmllcmRlY2tlbHMuClNpY2hlciBkZXIgRnVzc2JhbGxzcGllbGVyIG1pdCBkZW4gYWJzb2x1dCBtZWlzdGVuIFRvcmVuIHBybyBnZWxhdWZlbmVuClNjaHJpdHRlbiwgbm9jaCB2b3IgSmVucyBMZWhtYW5uLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmUsIEFyYmVpdCwga2VpbiBVcmxhdWIuLi4gKFdvb2R5LCAzMC4gSmFuIDIwMDMsIDAxOjE3OjA2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQzODg1NTMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Mzg3MjQ2MApXYXMgaXN0IExldmVya3VzZW4/IElzdCBkYXMgc293YXMgd2llIEJpZWxlZmVsZD8KS2VpbmUgQWhudW5nIHdvIFBvbHN0ZXIgamV0enQgaXN0LiBXZW5uIGVyIHdpZWRlciBkYSBpc3QsIGlzdCBtZWluZQpJZ25vcmFueiB6dW0gR2x1ZWNrIGdyb3NzIGdlbnVnLiBJbnRlcmVzc2FudCBhYmVyLCBkYXNzIGVzIHVyYWx0ZQpIZWt0aWtlci1TY2htYWVocyBiaXMgbmFjaCAuZGUgZ2VzY2hhZmZ0IGhhYmVuIC0gYW5kZXJlcnNlaXRzIGFiZXIsCnZpZWxsZWljaHQgZHJhZW5ndCBzaWNoIGRhcyBtaXQgZGVtIEFrdGlvbnNyYWRpdXMgYXVjaCBlaW5mYWNoIG51cgphdWYuIEdydXNzIGFuIExlaG1hbm4uIERlbiBSYWRwcm9maS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBOZSwgQXJiZWl0LCBrZWluIFVybGF1Yi4uLiAoR3JpbW1ib3JuLCAzMC4gSmFuIDIwMDMsIDAxOjIzOjE4KToKfiMhIHJuPVdvb2R5IHJ0PTEwNDM4ODU4MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzODcyNDYwCkFsc28sIGhpZXIgZGVyIE5hY2hoaWxmZXVudGVycmljaHQ6Ci0gTGV2ZXJrdXNlbiBpc3QgZGllIFN0YWR0LCB3byBpbiBkZXIgUGVyc29uIGRlcyBUcmFpbmVycyBDaHIuIERhdW0gU2NobmVlIAogIHVuZCBGdXNzYmFsbCBpaHJlIFZlcmVpbmlndW5nIGdlZnVuZGVuIGhhYmVuLgotIFBvbHN0ZXIgaXN0IGF1cyBLb2VsbiBuYWNoIE0nZ2xhZGJhY2ggZ2VnYW5nZW4sIHZvbiBkb3J0IGF1cyB3ZWlzcyBpY2ggCiAgbmljaHQsIGdpbmcgYWJlciBkYXZvbiBhdXMgZGFzcyBlciBuYWNoIE9lc2lsYW5kIHp1cnVlY2sgc2VpLgotIEljaCBiaW4ga2VpbiBIZWt0aWtlci4gSWNoIGhhYmUgUG9sc3RlciBpbW1lciBiZXd1bmRlcnQ6IFppZWwgaXN0IGphIG5pY2h0CiAgc292aWVsIHdpZSBtb2VnbGljaCB6dSBsYXVmZW4sIHNvbmRlcm4gc292aWVsZSBUb3JlIHp1IHNjaGllc3NlbiB3aWUKICBtb2VnbGljaCAoYnp3LiBlaW5zIG1laHIgYWxzIGRlciBHZWduZXIpLiBVbmQgVG9uaSBoYXQgZWluZW4KYmVlaW5kcnVja2VuZGVuCiAgV2lya3VuZ3NncmFkIGdlaGFidC4gCi0gSmVucyBMZWhtYW5uIGlzdCBUb3J3YXJ0LiBEZXIgZWluemlnZSwgZGVyIGluIGRlciBCdW5kZXNsaWdhIGplIGVpbiBGZWxkLQogIHRvciBlcnppZWx0IGhhdC4gVW5kIGVyIGhhdCBlaW5lIFplaXRsYW5nIGplZGVuIEVsZm1ldGVyIGdlc2Nob3NzZW4sIHNvIAogIGRhc3MgZXIgYmVpIGRlbiBUb3JqYWVnZXJuIG9iZW4gbWl0bWlzY2h0ZS4KCkdkQSAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE5lLCBBcmJlaXQsIGtlaW4gVXJsYXViLi4uIChXb29keSwgMzAuIEphbiAyMDAzLCAwMToyNjowNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0Mzg4NjE5OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDM4NzI0NjAKRGFua2UgZnVlciBkaWUgdGVpbHdlaXNlIHNvZ2FyIG5ldWVuLCBvYmdsZWljaCB2b2xsa29tbWVuCmlycmVsZXZhbnRlbiBJbmZvcm1hdGlvbmVuLiBEZW5ub2NoIGdsYXViZSBpY2gsIGRhc3MgSmVucwpMZWhtYW5uIGluIFdpcmtsaWNoa2VpdCBSYWRwcm9maSBpc3QuIERlbm4gR29vZ2xlIHdlaXNzCmFsbGVzLCBXaXJrdW5nc2dyYWQgaGluIG9kZXIgaGVyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5lLCBBcmJlaXQsIGtlaW4gVXJsYXViLi4uIChHcmltbWJvcm4sIDMwLiBKYW4gMjAwMywgMDc6MzI6MjgpOgp+IyEgcm49V29vZHkgcnQ9MTA0Mzg4NjM2NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDM4NzI0NjAKTW9lZ2xpY2gsIGRhc3Mgc2ljaCBIZXJyIExlaG1hbm4gZWluIHp3ZWl0ZXMgYmVydWZsaWNoZXMgU3RhbmRiZWluIGF1ZmdlYmF1dApoYXQsIG1hbiBob2VydCBqYSBkYXNzIGRlciBBcmJlaXRzbWFya3QgZnVlciBGdXNzYmFsbGVyIGF1Y2ggaW1tZXIKcHJvYmxlbWF0aXNjaGVyIHdpcmQgKHdlaWwgd2VnZW4gZGVtIGJvZXNlbiBIZXJybiBLaXJjaCwgb2RlciBzbykuIEFuc29uc3RlbgpmcmV1dCBtaWNoLCBkYXNzIGljaCBEaXIgaW4gZGVyIEZyYWdlIGRlcyBaaWVscyBkZXMgRnVzc2JhbGxzcGllbHMgaGFiZQp3ZWl0ZXJoZWxmZW4ga29lbm5lbi4gSXMgbmljaHQgc28gdWViZXJzaWNodGxpY2ggd2llIHouQi4gQ3JpY2tldCwgZ2ViZSBpY2gKZ2VybmUgenUuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE5lLCBBcmJlaXQsIGtlaW4gVXJsYXViLi4uIChKYWRhd2luLCAzMC4gSmFuIDIwMDMsIDA5OjA4OjMzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQzOTA4MzQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Mzg3MjQ2MApXYXIgZGFzIG1pdCBkZW4gRWxmbWV0ZXJuIG5pY2h0IGVoZXIgSGFucy1Kb2VyZyBCdXR0PyAKSmFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0cm9tYWJzY2hhbHR1bmcgKE9ya3RvZXRlciwgMzAuIEphbiAyMDAzLCAwOToyMDozMyk6Cn4jISBybj1IYXRlIHJ0PTEwNDM5MTA1MjAgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwNDM5MTA1MjAKTWFsIHdpZWRlcj8gV2FzIGhhYnQgaWhyIGRhIGZ1ZXIgZWluIG1hcm9kZXMgU3Ryb21uZXR6IGRhc3MgZGllIGV1Y2ggYWxsZSBwYWFyCldvY2hlbiBkZW4gU3Ryb20gYWJrbGVtbWVuIG11ZXNzZW4/CklzdCBkYXMgZXR3YSBmcnVlaGVyZXMgT3N0YmVybGluPwoKT3JrVCwgZW50c2V0enQgdWViZXIgZGVuIG9mZmVuc2ljaHRsaWNoZSBzY2hsZWNodGVuIFp1c3RhbmQgZGVzIFN0cm9tbmV0emVzCmVpbmVzIGRlciBDb21wdXRlcnplbnRyZW4gRGV1dHNjaGxhbmRzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdHJvbWFic2NoYWx0dW5nIChHbm9tZSwgMzAuIEphbiAyMDAzLCAwOTo0MzoyOCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA0MzkxNDgzMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDM5MTA1MjAKZHUgYmlzdCBqYSBlaWdlbnRsaWNoIGVpbiBsaWViZXIga2VybCwgYWJlciBtdXNzdCBkdSBkaWNoIHp1IGplZGVtCnBvcGxpZ2VuIGFydGlrZWwsIGRlciBoaWVyIGdlc2NocmllYmVuIHdpcmQgaW4gc3plbmUgc2V0emVuPwpub2NoIGRhenUgbWVpc3RlbnMgbWl0IHVucXVhbGlmaXppZXJ0ZW0vdW5pbnRlcmVzc2FudGVtIGluaGFsdD8KCipzZXVmeioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFN0cm9tYWJzY2hhbHR1bmcgKE5vbm5lLCAzMC4gSmFuIDIwMDMsIDA5OjQ5OjQwKToKfiMhIHJuPUdub21lIHJ0PTEwNDM5MTYyMDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzOTEwNTIwCmlnbm9yaWVyZSBvcmt0b2V0ZXIubmV3cyBpc3QgRGVpbiBGcmV1bmQgKGM6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogT3V0bG9vayBFeHByZXNzIChMaWFyYSwgMzAuIEphbiAyMDAzLCAxMDozNDozOCk6Cn4jISBybj1Ob25uZSBydD0xMDQzOTE3MzgyIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwNDM4ODA1MDkKRnJhZ3Qgc2ljaCwgd2lldmllbCBNJCBkYWZ1ZXIgYmV6YWhsdCBoYXQuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogT3V0bG9vayBFeHByZXNzIChMaWFyYSwgMzAuIEphbiAyMDAzLCAxMTowODowNik6Cn4jISBybj1Cb2luZyBydD0xMDQzOTIxMDUxIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwNDM4ODA1MDkKVmllbGxlaWNodCB0YWV0ZSBkZW0gQk1XIGFiZXIgZWluIFZXLVZlcmdhc2VyIGdhbnogZ3V0LiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTmUsIEFyYmVpdCwga2VpbiBVcmxhdWIuLi4gKFdvb2R5LCAzMC4gSmFuIDIwMDMsIDEyOjE3OjU4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQzOTA4MzQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Mzg3MjQ2MApFaW4gRnVzc2JhbGxlciBtaXQgendlaSBTdGFuZGJlaW5lbj8gRGFzIG1hY2h0IGtsYXIsIHdhcnVtIER1IGlobgppbiBlaW5lbSBBdGVtenVnIG1pdCBUUCBuZW5uc3QuIFVuZCBkZXIgb2RlciBkaWUgS2lyY2ggaXN0IGFuCnZpZWxlbSBzY2h1bGQuIEFiZXIgYW0gRnVzc2JhbGw/CgpzY2htYXJybisrCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE5lLCBBcmJlaXQsIGtlaW4gVXJsYXViLi4uIChCYW1idWxrbywgMzAuIEphbiAyMDAzLCAxMzozMTo0OCk6Cn4jISBybj1KYWRhd2luIHJ0PTEwNDM5MTQxMTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzODcyNDYwCkphLCBkYXMgd2FyIG1laW5lcyBXaXNzZW5zIG5hY2ggQnV0dCBpbiBzZWluZXIgWmVpdCBpbiBIYW1idXJnLiBVbmQgemkgVG9uaQpQb2xzdGVyOiBBRkFJSyBsYWV1ZnQgc2VpbiBWZXJ0cmFnIGltIE1hbmFnZW1lbnQgdm9uIEdsYWRiYWNoIG5vY2ggYmlzIFNvbW1lcgoyMDAzLCB1bmQgZXMgZ2FiIEdlc3ByYWVjaGUgaWhuIGRhbmFjaCBuYWNoIEtvZWxuIHp1cnVlY2sgenUgaG9sZW4uIEFsbGVyZGluZ3MKZ2lidCBlcyBpbiBXaWVuIGF1Y2ggSW50ZXJlc3NlIGFuIGlobS4KCkJhbWJ1bGtvCgpQLlMuOiBVbmQgTGV2ZXJrdXNlbi4uLi4gaWNoIGVyaW5uZXJlIG1pY2ggbnVyIGFuIHdhcyBtaXQgbmVyIEFwb3RoZWtlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdvY2hlbmVuZC1TdGF0aSBpbiBNdWVuc3RlciEgKFpvb2ssIDMwLiBKYW4gMjAwMywgMTM6MzY6MjYpOgp+IyEgcm49QXJlZWxhbmlyIHJ0PTEwNDM4NjM0NTYgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA0Mzg2MzQ1NgpXZXJkZW4gZGFubiBkYSBkaWUgQmllcnNvcnRlbiBkaXNrdXRpZXJ0dD8KClpvb2sgZHVja3Qgc2ljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV29jaGVuZW5kLVN0YXRpIGluIE11ZW5zdGVyISAoRm9vYmFyLCAzMC4gSmFuIDIwMDMsIDEzOjM3OjUwKToKfiMhIHJuPVpvb2sgcnQ9MTA0MzkzMDE4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDM4NjM0NTYKR2VybmUsIHdpciBoYWJlbiBqYSB3ZW5pZ3N0ZW5zIEFobnVuZyBkYXZvbiA7bykKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhZmZlbmZlcnRpZ2tlaXRlbiAoQ3VjaHVsbGluLCAzMC4gSmFuIDIwMDMsIDE2OjQyOjUzKToKfiMhIHJuPVpvb2sgcnQ9MTA0Mzk0MDkwNSByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA0Mzk0MDkwNQpTY2hhZGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhZmZlbmZlcnRpZ2tlaXRlbiAoWm9vaywgMzAuIEphbiAyMDAzLCAxNjo0NDoxOSk6Cn4jISBybj1DdWNodWxsaW4gcnQ9MTA0Mzk0MTM3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDM5NDA5MDUKV2VubiBpY2ggbWVpbiBGYmFuZCBhbnNjaGF1ZSwgZnJhZ2UgaWNoIGRvY2ggbWFsIG5hY2g6IFdhcz8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBMaW51eC1EaXN0cm8gKEFtYXJ5bGxpcywgMzAuIEphbiAyMDAzLCAxODo1MTowOCk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwNDM5NDg4NTEgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTA0Mzk0NzM0MwpBbHNvIGRhIGdpYnRzIG5vY2ggZGllc2VzIFdpbmRvd3Mgb2RlciB3aWUgZGFzIGhlaXNzdC4gU29mdHdhcmUgaXN0CnZlcmZ1ZWdiYXIsICJpbnRlcmVzc2FudCIgaXN0IGVzIGluIGdld2lzc2VtIFNpbm5lIGF1Y2gsIG51ciBpc3QgImhhbGJ3ZWdzCmJlbnV0emJhciIgZWluZSBkZXV0bGljaGUgVWViZXJ0cmVpYnVuZy4uLgoKc2NuciwKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTGludXgtRGlzdHJvIChXaGl0ZXRpZ2VyLCAzMC4gSmFuIDIwMDMsIDE4OjUxOjQ1KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDQzOTQ5MDY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Mzk0NzM0MwpVbmQgZXMgaXN0IG5pY2h0IGZyZWkgdmVyZnVlZ2Jhci4uLgpXaGl0ZVRpZ2VyIGhhdCBrZWluZSBMdXN0LCBHZWxkIHp1bSBGZW5zdGVyIHJhdXN6dXNjaG1laXNzZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IExpbnV4LURpc3RybyAoV2hpdGV0aWdlciwgMzAuIEphbiAyMDAzLCAxODo1MjowOCk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwNDM5NDkxMDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzOTQ3MzQzCi4uLiBkdXJjaHMgd29ydHdvZXJ0bGljaGUgRmVuc3RlciAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBNUEEgKExpYXJhLCAzMC4gSmFuIDIwMDMsIDIzOjQwOjI5KToKfiMhIHJuPVZhbmlvbiBydD0xMDQzOTY1OTc2IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTA0MzY4NDQ4MgpJY2ggaGFldHRlIGF1Y2ggbmljaHQgYW5nZW5vbW1lbiwgZGFzcyBkdSB6dSBkaXIgJ1dpcicgc2Fnc3QuIDspCgpMaWFyYSwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhlbGRlbmhhZnRlciBTY2htaWVkIChPdGFrbywgMzEuIEphbiAyMDAzLCAwMTowOTowNSk6CnRvZXRlIGFsbGUKT2suCk9rLgo+IExQOiAyMTAgKDIxMCkgIEtQOiAxMzMgKDIxMCkgS086IChqYSkgQW5ncmlmZjogKE9NKSBIYXlhaTogKGphKSAKRGVyIE11ZWxsc2NobHVja2VyIGlzdCBhYnNvbHV0IGZpdC4KMTAwCiAgRHUgZ3JlaWZzdCBkZW4gTXVlbGxzY2hsdWNrZXIgbWl0IGRlbSBLYW1wZmJlaWwgYW4uCiAgRHUgdHJpZmZzdCBkZW4gTXVlbGxzY2hsdWNrZXIgaGFydC4KRWluIFNjaG1pZWQgc3RlY2t0IGVpbmVuIFNjaG1pZWRlaGFtbWVyIHp1cnVlY2suCkRlciBTY2htaWVkIGdyZWlmdCBoaW50ZXIgc2ljaCB1bmQgbmltbXQgZWluZW4gVm9yc2NobGFnaGFtbWVyLgpFaW4gU2NobWllZCB6dWVja3QgZWluZW4gVm9yc2NobGFnaGFtbWVyLgpFaW4gU2NobWllZCBnaWJ0IGVpbmVtIE11ZWxsc2NobHVja2VyIFJ1ZWNrZW5kZWNrdW5nLgpFaW4gU2NobWllZCBwYXJpZXJ0IGRlbiBBbmdyaWZmIG1pdCBkZW0gVm9yc2NobGFnaGFtbWVyLgpoYXlhaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IEtyYWZ0Li4uIChSb2NodXMsIDMxLiBKYW4gMjAwMywgMjM6MDk6NTkpOgp+IyEgb249Um9jaHVzIG90PTEwNDQwNTAyNjkgb2c9ZGlza3Vzc2lvbgp+IyEgcm49Q3VjaHVsbGluIHJ0PTEwNDM4NDY0Mjggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNDM2NzAxMzIKSG1tLCBkaWUgUGFydHkgaXN0IFZPUiBkZW0gMS40LiB1bmQgbWl0IFBhZHJlaWMgYW5zdGVsbGUgZGVzIEJyYXRlbnMKZHVlcmZ0ZSBlaW4gc2Nod2Vyd2llZ2VuZGVzIG9lZmZlbnRsaWNoZXMgSW50ZXJlc3NlIHZvcmxpZWdlbiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBNUEEgKE11cGZlbCwgIDEuIEZlYiAyMDAzLCAxNTowNDo0Myk6Cn4jISBybj1FbGRhcm9uIHJ0PTEwNDQxMDgwMTkgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDQzNjg0NDgyCkhvYmJpdCA9IGtsZWluID0gQWJsYWdlZmxhZWNoZT8KCiptaXRmbGFtZSoKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogTVBBIChFbGRhcm9uLCAgMS4gRmViIDIwMDMsIDE1OjEzOjI3KToKfiMhIHJuPU11cGZlbCBydD0xMDQ0MTA4MjgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzY4NDQ4MgpTY2h3ZXJtZXRhbGxlIHVuZCBBbGdlbmdpZnRlIGF1cyBkZW0gTWVlcjoKRGVyIGFuZGVyZSBHcnVuZCBmfHIgZGllIHRyYWRpdGlvbmVsbGUgTXVzY2hlbGFic3RpbmVueiBpbSBTb21tZXIgc2luZCBkaWUKQWxnZW50b3hpbmUuIERhcyBiZXJlaXRzIGVyd2FlaG50ZSBBbGdlbmdpZnQgd2lyZCBpbSBGYWxsZSBlaW5lciBBbGdlbmJsdWV0ZQppbiBkZW4gU29tbWVybW9uYXRlbiB2b24gZGVuIE11c2NoZWxuIGF1Zmdlbm9tbWVuIHVuZCBtYWNodCBkaWVzZQp1bmdlbmllc3NiYXIsIGphIHNvZ2FyIHJlZ2VscmVjaHQgZ2VmYWVocmxpY2guCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IE1QQSAoTXVhZGliLCAgMS4gRmViIDIwMDMsIDIwOjU3OjI2KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0NDExMDcxMiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNDM2ODQ0ODIKbmFuYSBuaWNodCBzYWNobGljaCB3ZXJkZW4sIGR1IGthbm5zdCBkb2NoIG5pY2h0IGVpbmZhY2ggZGF2b24gYXVzZ2VoZW4gZGFzcwp2b3JoYW5kZW5lIG1vZWdsaWNoa2VpdGVuIGdlbnV0enQgd2VyZGVuLgppY2ggYml0dGUgZGljaCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBNUEEgKFBpdGZhbGwsICAyLiBGZWIgMjAwMywgMDI6NTA6NTMpOgp+IyEgcm49U291IHJ0PTEwNDQxMDc3MjMgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDQzNjg0NDgyCiJST1RGTCwgeW91IG1hZGUgbXkgZGF5IgpzY25yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEluZm8gZnVlciBtaWNoIDopIChNdWFkaWIsICAyLiBGZWIgMjAwMywgMTE6MTc6MTcpOgp+IyEgcm49S2FyaXMgcnQ9MTA0NDE3OTY1NSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNDQxMzQ2ODgKdW5kIGR1IGJpc3QgZGlyIHNpY2hlcj8KYWxzbyBzbyBnYW56IG9obmUga2VubnRuaXNzZT8KCm11YWRpYiAqZ3JpbnNlbmQqCnBzOiBqZXR6dCBiZXNlaXRpZ2UgbWlyIGFiZXIga2VpbmVyIGdlcnVlY2h0ZSBtaXQgZmFrdGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkdWggKERhcmt3aW5nLCAgMi4gRmViIDIwMDMsIDEyOjI0OjAzKToKCkRlciBEcmFrb25pZXJ3YWVjaHRlciByYWV1bXQgYXVmLgpEZXIgV2FlY2h0ZXIgaGF0IGtlaW5lIEx1c3QgbWVoci4KCkhlaGUsIGRhcyBrZW5uIGljaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSW5mbyBmdWVyIG1pY2ggOikgKEthcmlzLCAgMi4gRmViIDIwMDMsIDEzOjE0OjI4KToKfiMhIHJuPU11YWRpYiBydD0xMDQ0MTgxMDM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDEzNDY4OApTaWNoZXI/IE5vZSA6KSBJY2ggc2V0eiBoaWVyIG51ciBHZXJ1ZWNodGUgaW4gZGllIFdlbHQgOikKCkthcmlzIGV4cGVjdGVkIHRoZSBzcGFuaXNoIGlucXVpc2l0aW9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIC4uLiAoTGlhcmEsICAyLiBGZWIgMjAwMywgMTM6NDc6MzYpOgoKKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIE9ya3RvZXRlciBpbiBSdWJyaWsgImVudHdpY2tsdW5nIi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QuLi4gKEZvb2JhciwgIDMuIEZlYiAyMDAzLCAwMDoyMjoyNCk6CiBOZXdzZ3JvdXBzOiBnZXIuY3QKIFN1YmplY3Q6IFJlOiBJQ0gtQUcgIC0gIFVud29ydCBkZXMgSmFocmVzCiBGcm9tOiBDaHJpc3RvcGhlciBFbHRzY2hrYSA8Y2VsdHNjaGtAd2ViLmRlPgogRGF0ZTogMjUgSmFuIDIwMDMgMTk6MDA6NDQgKzAxMDAKIE1lc3NhZ2UtSUQ6CgogIkNhcnN0ZW4gJ01hZCBBY21lJyBNdWVsbGVyIiA8Y21AY2Fyc3Rlbi1tdWVsbGVyLmRlPiB3cml0ZXM6CgogPiBNYXRoaWFzIEhhYmVsIHdyb3RlOgogPiAKID4gPiBKZWRlcyBHZXJhZXQgbXVzcyBoZXV0ZSBlaW5lIGxlaWNodCB6dSBiZWRpZW5lbmRlIHVuZAogPiA+IGludHVpdGl2ZSBCZW51dHplcnNjaG5pdHRzdGVsbGUgaGFiZW4uIE1pdCAiT2JlcmZsYWVjaGVuIiBhbGEgQzY0CiA+ID4ga29tbXQgbWFuIG5pY2h0IG1laHIgd2VpdC4KID4gCiA+IEVpbmUgS2FmZmVtYXNjaGluZSBtaXQgZWluZW0gUHJvbXB0LCB3YWVyZSBuaWNodCB1ZWJlbC4KCiBJbiBkZXIgSGF1c2hhbHRzd2FyZW5hYnRlaWx1bmcsIE90dG9ub3JtYWxrdW5kZSBoYXQgZXMgZ2VzY2hhZmZ0LCBkaWUKIEF1Zm1lcmtzYW1rZWl0IGVpbmVzIFZlcmthZXVmZXJzIHp1IGVycmVnZW4uIE51ciwgZGFzcyBkZXIgVmVya2FldWZlciBlaW4KIEluZm9ybWF0aWtzdHVkZW50IC0gVHlwIE5lcmQgLSBpc3QsIGRlciBzaWNoIGV0d2FzIGRhenV2ZXJkaWVudCAuLi4KCiBLdW5kZTogR3V0ZW4gVGFnLCBpY2ggYnJhZXVjaHRlIGVpbmUgS2FmZmVlbWFzY2hpbmUuCiBWZXJrYWV1ZmVyOiBBaCBqYSwgaGllciBoYWJlbiB3aXIgZGFzIG5ldWVzdGUgTW9kZWxsLiBNaXQgZWluZ2ViYXV0ZXIKICAgIEJvaG5lbm11ZWhsZSwgRGlyZWt0YW5zY2hsdXNzIGFuIGRlbiBXYXNzZXJoYWhuLCBhdXRvbWF0aXNjaGVyCiAgICBLYWZmZWV2b3JyYXRzdmVyd2FsdHVuZywgdm9sbCBwcm9ncmFtbWllcmJhci4KIEs6IEFoIGphLCBrbGluZ3QgaW50ZXJlc3NhbnQuIEFiZXIgaWNoIGhhYmUgZ2Vob2VydCwgZGFzcyBlaW5pZ2UgZGVyCiAgICBuZXVlcmVuIEthZmZlZW1hc2NoaW5lbiBuaWNodCBnZXJhZGUgbGVpY2h0IHp1IGJlZGllbmVuIHNlaWVuLgogVjogQWJlciBuZWluLCBkaWUgQmVkaWVudW5nIGlzdCBnYW56IGVpbmZhY2guIFNlaGVuIFNpZSwgc2llIGhhYmVuCiAgICBoaWVyIG51ciBlaW5lbiBFaW4vQXVzLVNjaGFsdGVyLCB2aWVyIGZyZWkgZGVmaW5pZXJiYXJlCiAgICBQcm9ncmFtbWtub2VwZmUgdW5kIGVpbmUgUlMtMjMyLgogSzogRWluZSAqd2FzKj8KIFY6IEVpbmUgUnMtMjMyLiBEYSBrb2VubmVuIFNpZSBJaHJlbiBDb21wdXRlciBoaW5zdGVja2VuLgogSzogQWVoLCBzb2xsIGRhcyBoZWlzc2VuLCBpY2ggYnJhdWNoZSBtZWluZW4gQ29tcHV0ZXIsIHVtIEthZmZlZSB6dQogICAgbWFjaGVuPwogVjogQWJlciBuZWluLCBudXIgenVyIEtvbmZpZ3VyYXRpb24gb2RlciB6dW0gRmlybXdhcmUtVXBkYXRlLiAKICAgIE5hdHVlcmxpY2gga29lbm5lbiBzaWUgZGllIEthZmZlZW1hc2NoaW5lIGF1Y2ggdm9sbHN0YWVuZGlnIHBlcgogICAgQ29tcHV0ZXIgc3RldWVybiwgd2VubiBTaWUgd29sbGVuLCBhYmVyIG5vcm1hbGVyd2Vpc2Ugc2NoYWx0ZW4KICAgIFNpZSBlaW5mYWNoIGRpZSBNYXNjaGluZSBhbiB1bmQgd2FlaGxlbiBlaW5lcyBkZXIgUHJvZ3JhbW1lIG1pdAogICAgZGVuIEtub2VwZmVuIGF1cy4KIEs6IEFoYSwgYWxzbyB3ZW5uIGljaCBLbm9wZiAxIGRydWVja2UsIGJla29tbWUgaWNoIGVpbmUgVGFzc2UsIG1pdAogICAgS25vcGYgMiB6d2VpIFRhc3NlbiB1c3cuLCBzZWhlIGljaCBkYXMgcmljaHRpZz8KIFY6IERhcyBrb2VubmVuIFNpZSBzbyBlaW5zdGVsbGVuLCB3ZW5uIFNpZSB3b2xsZW4uIFNpZSBrb2VubmVuIG5hdHVlcmxpY2gKICAgIGdlbmF1c29ndXQgZWluc3RlbGxlbiwgZGFzcyBLbm9wZiAxIGVpbmUgVGFzc2Ugc3RhcmtlbiBLYWZmZWUsCiAgICBLbm9wZiAyIGVpbmUgVGFzc2UgbmljaHQgZ2FueiBzbyBzdGFya2VuIEthZmZlZSwgdW5kIEtub3BmIDMgbnVyCiAgICBoZWlzc2VzIFdhc3NlciBsaWVmZXJ0LCB3ZW5uIFNpZSBkYXMgd29sbGVuLgogSzogSGVpc3NlcyBXYXNzZXI/CiBWOiBKYSwgaXN0IGdhbnogcHJha3Rpc2NoLCB3ZW5uIFNpZSBzaWNoIFRlZSBtYWNoZW4gd29sbGVuLgogSzogTnVuIGd1dCwgYWJlciB3aWUgc2FnZSBpY2ggZGVyIEthZmZlZW1hc2NoaW5lIG51biwgd2FzIGRlciBLbm9wZgogICAgbWFjaGVuIHNvbGwuCiBWOiBEYXMgaXN0IGVpZ2VudGxpY2ggZ2FueiBlaW5mYWNoOiBTaWUgc2NobGllc3NlbiBJaHJlbiBSZWNobmVyCiAgICBhbiBkaWUgUlMtMjMyIGFuIC4uLgogSzogQWVoLCB3aWUgbWFjaGUgaWNoIGRhcz8KIFY6IE51biwgc2llIG5laG1lbiBlaW4gc2VyaWVsbGVzIE51bGwtTW9kZW0tS2FiZWwgLi4uCiBLOiBFaW4gd2FzPwogVjogRWluIE51bGwtTW9kZW0tS2FiZWwuIEdpYnQncyBpbiBkZXIgQ29tcHV0ZXJhYnRlaWx1bmcuCiBLOiBOdW4gZ3V0LCB1bmQgd28gc3RlY2tlIGljaCBkYXMgYW0gQ29tcHV0ZXIgaGluPwogVjogTmF0dWVybGljaCBhbiBkaWUgUlMtMjMyLCBkYXMgaXN0IGRhLCB3byBTaWUgSWhyIE1vZGVtIGFuc3RlY2tlbi4KIEs6IEljaCBoYWJlIGtlaW4gTW9kZW0uCiBWOiBQcmltYSwgZGFubiBtdWVzc3RlIElocmUgUlMtMjMyIGphIGZyZWkgc2Vpbi4KIEs6IEljaCB3ZWlzcyBnYXIgbmljaHQsIG9iIGljaCBzbyB3YXMgdWViZXJoYXVwdCBhbSBDb21wdXRlciBoYWJlLgogVjogV2VubiBuaWNodCwga29lbm5lbiBzaWUgYXVjaCBlaW5lbiBBZGFwdGVyIFJTLTIzMiBuYWNoIFVTQiBiZWtvbW1lbiwKICAgIHNvZmVybiBJaHIgQmV0cmllYnNzeXN0ZW0gZWluZW4gcGFzc2VuZGVuIFRyZWliZXIgaGF0LgogSzogTWVpbiB3YXM/CiBWOiBJaHIgQmV0cmllYnNzeXN0ZW0uIEFsc28gZGFzLCB3YXMgc3RhcnRldCwgd2VubiBTaWUgZGVuIFJlY2huZXIKICAgIGFuc2NoYWx0ZW4uCiBLOiBTaWUgbWVpbmVuIGRpZSBUZXh0ZSwgZGllIGRhIHVlYmVyIGRlbiBCaWxkc2NoaXJtIGxhdWZlbj8KIFY6IE5laW4sIGRhcyBpc3QgZGFzIEJJT1MuIERhcyBCZXRyaWVic3N5c3RlbSBpc3QgZGFzLCB3YXMgZGFuYWNoCiAgICBrb21tdCwgYWxzbyB6dW0gQmVpc3BpZWwgTGludXgsIC4uLgogSzogQWxzbywgZGFtaXQga2VubmUgaWNoIG1pY2h0IG5pY2h0IGF1cywgYnJhdWNoZSBpY2ggZGFzPwogVjogQWJlciBuZWluLCBqZWRlcyBCZXRyaWVic3N5c3RlbSBnZWh0IGdsZWljaCBndXQsIHNvZ2FyIFdpbmRvd3MuCiBLOiBBY2ggc28sIFdpbmRvd3MsIHdhcnVtIHNhZ2VuIHNpZSBkYXMgbmljaHQgZ2xlaWNoLCBqYSwgZGFzIGhhYiBpY2guCiBWOiBEYW1pdCBnZWh0cyB3aWUgZ2VzYWd0IGF1Y2guCiBLOiBBYmVyIHdpZSBtYWNoZSBpY2ggZXMgZGVubiBudW4/CiBWOiBOdW4sIG5hY2hkZW0gc2llIGRpZSBLYWZmZWVtYXNjaGluZSBtaXQgZGVtIFJlY2huZXIgdmVyYnVuZGVuIHVuZAogICAgYW5nZXNjaGFsdGV0IHVuZCBkYW5uIGRlbiBSZWNobmVyIGhvY2hnZWZhaHJlbiBoYWJlbiwgLi4uCiBLOiBEZW4gUmVjaG5lciAqd2FzKiBoYWJlPwogVjogQW5nZXNjaGFsdGV0IHVuZCBnZXdhcnRldCwgYmlzIGVyIG5pY2h0cyBtZWhyIG1hY2h0LgogSzogSWNoIG11c3MgYXVmIGVpbmVuIEJsdWVzY3JlZW4gd2FydGVuPwogVjogQWVoLCBuZWluLCBhbHNvIFNpZSB3YXJ0ZW4gc29sYW5nZSwgYmlzIFNpZSBQcm9ncmFtbWUgc3RhcnRlbgogICAga29lbm5lbi4KIEs6IEFjaCBzby4KIFY6IEphLCB1bmQgZGFubiBzdGFydGVuIFNpZSBlaW4gVGVybWluYWxwcm9ncmFtbSAuLi4KIEs6IEVpbiB3YXM/CiBWOiBFaW4gVGVybWluYWxwcm9ncmFtbS4gRnJhZ2VuIFNpZSBkb2NoIGVpbmZhY2ggbmFjaGhlciBpbiBkZXIKICAgIENvbXB1dGVyYWJ0ZWlsdW5nLgogSzogTnVuIGd1dCwgdW5kIHdhcyBtYWNoZSBpY2ggZGFtaXQ/CiBWOiBTaWUgZ3JlaWZlbiBkYW1pdCBhdWYgZGllIFJTLTIzMiB6dSwgYW4gZGVyIGRpZSBLYWZmZWVtYXNjaGluZQogICAgc2l0enQuCiBLOiBBZWgsIHVuZCB3aWUgbWFjaGUgaWNoIGRhcz8KIFY6IERhcyBoYWVuZ3Qgdm9tIFRlcm1pbmFscHJvZ3JhbW0gYWIuIEplZGVuZmFsbHMsIGRpZSBLYWZmZWVtYXNjaGluZQogICAgc2VuZGV0IGVpbmVuIFByb21wdCAuLi4KIEs6IEVpbmVuIHdhcz8KIFY6IEVpbmVuIFByb21wdC4gRGFzIGlzdCBlaW5lIFplaWNoZW5rZXR0ZSwgZGllIElobmVuIHNhZ3QsIGRhc3MgZGllCiAgICBLYWZmZWVtYXNjaGluZSBJaHJlIEJlZmVobGUgZXJ3YXJ0ZXQuCiBLOiBNZWluZSBCZWZlaGxlPyBJc3QgZGFzIGVpbmUgTWlsaXRhZXItTWFzY2hpbmUsIG9kZXIgd2FzPwogVjogTnVuIGphLCBzaWUgd29sbGVuLCBkYXNzIGRpZSBLYWZmZWVtYXNjaGluZSB3YXMgbWFjaHQsIHVuZCBkYSBtdWVzc2VuCiAgICBTaWUgaWhyIGphIHNhZ2VuLCB3YXMgc2llIG1hY2hlbiBzb2xsLCB1bmQgZGFzIG5lbm50IG1hbiBCZWZlaGwuCiBLOiBOdW4gamEsIHdlbm4gU2llIG1laW5lbi4gVW5kIHdlbm4gZGllc2VyIFByb21wdCBkYW5uIGtvbW10LCBkYW5uCiAgICBrbGlja2UgaWNoIGRyYXVmPwogVjogTmVpbiwgZGFubiB0aXBwZW4gU2llIElocmUgQmVmZWhsZSBlaW4uCiBLOiAqVGlwcGVuKj8KIFY6IEphLCBpc3QgdmllbCBmbGV4aWJsZXIuIFN0ZWxsZW4gU2llIFNpY2ggdm9yLCBzaWUgbXVlc3N0ZW4gei5CLiBpbQogICAgTGFkZW4gZXJzdCBhdWYgZWluIGlyZ2VuZHdvIGF1ZmdlaGFlbmd0ZXMgRnJhZ2V6ZWljaGVuIHplaWdlbiwgdW5kCiAgICBkYW5uIGF1ZiBlaW4gR2VyYWV0LCB1bSB1ZWJlciBkYXMgR2VyYWV0IGV0d2FzIHp1IGVyZmFocmVuLCB1bmQgLi4uCiBLOiBJc3QgamEgc2Nob24gZ3V0LCBhbHNvIHdlbm4gaWNoIGRlbiBQcm9tcHQgc2VoZSwgZGFubiB0aXBwZSBpY2gKICAgIGVpbjogIldlbm4gaWNoIGRlbiBLbm9wZiAxIGRydWVja2UsIG1hY2ggbWlyIGVpbmUgVGFzc2Ugc3RhcmtlbgogICAgS2FmZmVlIiwgcmljaHRpZz8KIFY6IE51biBqYSwgbmljaHQgZ2Fuei4gVW0gZGllIEtvbmZpZ3VyYXRpb24genUgYWVuZGVybiwgbXVlc3NlbiBTaWUgZGllCiAgICAuY29mZmVlcmMgYWVuZGVybi4KIEs6IERpZSB3YXM/CiBWOiBEaWUgLmNvZmZlZXJjLiBEYXMgaXN0IGVpbmUgRGF0ZWksIGluIGRlciBkaWUgS29uZmlndXJhdGlvbgogICAgZ2VzcGVpY2hlcnQgd2lyZC4KIEs6IFVuZCB3ZW5uIGljaCBkaWUgb2VmZm5lLCBkYW5uIGthbm4gaWNoIGRhIGFsbGVzIGVpbnN0ZWxsZW4/CiBWOiBHZW5hdS4KIEs6IFdpcmQgZGllIG5vZXRpZ2UgU29mdHdhcmUgYXVjaCBtaXRnZWxpZWZlcnQ/CiBWOiBFaW4gdmkgaXN0IGluIGRlciBLYWZmZWVtYXNjaGluZSBmZXN0IGluc3RhbGxpZXJ0LgogSzogV2FzIGlzdCBiaXR0ZSBlaW4gdmk/CiBWOiB2aSBpc3QgZWluIEVkaXRvciwgbWl0IGRlbSBTaWUgZGllIC5jb2ZmZWVyYyBiZWFyYmVpdGVuIGtvZW5uZW4uCiBLOiBXYXMgaXN0IGpldHp0IHNjaG9uIHdpZWRlciBlaW4gRWRpdG9yPwogVjogTnVuLCBlaW4gUHJvZ3JhbW0genVtIEFlbmRlcm4gdm9uIFRleHRkYXRlaWVuLgogSzogU2llIG1laW5lbiBzb3dhcyB3aWUgV29yZD8KIFY6IE51biBqYSwgZmFzdC4gTnVyIGViZW4gZnVlciByZWluZSBUZXh0ZGF0ZWllbiAuLi4KIEs6IE1pdCBXb3JkIGJlYXJiZWl0ZSBpY2ggZG9jaCBhdWNoIFRleHRlLgogVjogSmEsIGFiZXIgZWluZSBLYWZmZWVtYXNjaGluZSBrYW5uIG1pdCBJbmhhbHRzdmVyemVpY2huaXNzZW4sCiAgICBLdXJzaXZzY2hyaWZ0IHVuZCBlaW5nZWJ1bmRlbmVuIEJpbGRlcm4gbmljaHRzIGFuZmFuZ2VuLCB1bmQKICAgIGVudHNwcmVjaGVuZCBnaWJ0IGVzIHNvd2FzIG5pY2h0IGluIHJlaW5lbiBUZXh0ZGF0ZWllbi4KIEs6IEFsc28sIHdlbm4gaWNoIGF1ZiBkaWVzZSAuY29mZmVlcmMgZG9wcGVsa2xpY2tlLCBkYW5uIG9lZmZuZXQKICAgIHNpY2ggZGVyIHZpIC4uLgogVjogTmVpbiwgc2llIG11ZXNzZW4gZWludGlwcGVuOiB2aSAuY29mZmVlcmMsIHVuZCBkYW5uIEVudGVyIGRydWVja2VuLgogSzogV2FydW0gc28ga29tcGxpemllcnQ/CiBWOiBBbHNvLCBpY2ggaGFsdGUgZXMgbmljaHQgZnVlciBrb21wbGl6aWVydC4KIEs6IE51biBqYSwgYWxzbyBpY2ggc3RhcnRlIGRhbm4gZGllc2VuIHZpIHVuZCBzY2hyZWliZSBkYW5uIHJlaW46CiAgICAiV2VubiBpY2ggZGVuIEtub3BmIDEgZHJ1ZWNrZSwgbWFjaCBtaXIgZWluZSBUYXNzZSBzdGFya2VuIEthZmZlZSIuCiBWOiBTbyB1bmdlZmFlaHIuIFNpZSBtdWVzc2VuIG5hdHVlcmxpY2ggZXJzdCBkZW4gdmkgaW4gZGVuIEluc2VydC1Nb2R1cwogICAgc2NoYWx0ZW4gLi4uCiBLOiBJbiBkZW4gd2FzPwogVjogSW4gZGVuIE1vZHVzLCBpbiBkZW0gc2llIG5ldWVuIFRleHQgZWluZnVlZ2VuIGtvZW5uZW4uCiBLOiBBZWgsIGFiZXIgZGFubiBrYW5uIGljaCBsb3N0aXBwZW4/CiBWOiBKYS4gU2llIG11ZXNzZW4gc2ljaCBuYXR1ZXJsaWNoIGFuIGRpZSBTeW50YXggZnVlciBkaWUKICAgIEtvbmZpZ3VyYXRpb25zZGF0ZWkgaGFsdGVuLgogSzogPz8/CiBWOiBOdW4gamEsIGRpZSBLYWZmZWVtYXNjaGluZSB2ZXJzdGVodCBlcyBuaWNodCwgd2VubiBTaWUgZWluZmFjaAogICAgZGV1dHNjaGUgU2FldHplIGVpbnRpcHBlbi4KIEs6IFNpZSBtZWluZW4sIGljaCBtdXNzIGF1ZiBFbmdsaXNjaCB0aXBwZW4/CiBWOiBOZWluLCBkYXMgZ2VodCBhdWNoIG5pY2h0IC4uLgogSzogQWxzbywgamFwYW5pc2NoIGthbm4gaWNoIGxlaWRlciBuaWNodC4KIFY6IEJyYXVjaGVuIFNpZSBhdWNoIG5pY2h0LiBFcyBoYW5iZGVsdCBzaWNoIHVtIGVpbmUgc3BlemllbGxlCiAgICBLYWZmZWVtYXNjaGluZW5rb25maWd1cmF0aW9uc3NwcmFjaGUuCiBLOiBBZWgsIHVuZCBkaWUgbXVzcyBpY2ggZGFubiBlcnN0IGxlcm5lbj8KIFY6IFNpZSBpc3QgbmljaHQga29tcGxpemllcnQsIHNjaGxpZXNzbGljaCBpc3QgZXMgamEgbnVyIGVpbmUKICAgIEthZmZlZW1hc2NoaW5lLiBJbSBWZXJ6ZWljaG5pcyBkb2MgaXN0IGF1c3NlcmRlbSBzdGFuZGFyZG1hZXNzaWcgZWluCiAgICBIb3d0byBpbnN0YWxsaWVydCAuLi4KIEs6IE51biBqYSwgaWNoIGdsYXViZSwgaWNoIHZlcnN1Y2hlIGVzIGRvY2ggbWl0IGVpbmVyIGFuZGVyZW4KICAgIE1hc2NoaW5lIC4uLiB3YXMgaXN0IG1pdCBkZXIgZG9ydCBoaW50ZW4/CiBWOiBEaWUgaXN0IG5vY2ggbmljaHQgbWFsIHByb2dyYW1taWVyYmFyLgogSzogUHJpbWEsIGljaCBnbGF1YmUsIGRpZSBuZWhtZSBpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQaXRmYWxsIGRlciBLaWxsZXIgOikgKERhcmt3aW5nLCAgMy4gRmViIDIwMDMsIDAwOjM0OjA5KToKUHVrIGdsYXVidCBQaXRmYWxsIG5pY2h0IHVuZCBoZWJ0IGF1Zi4KUGl0ZmFsbCBoYXR0ZSBhYmVyIHNvZ2FyIGVpbmVuIFNlY2hzZXJwYXNjaCBnZXdvcmZlbi4KUHVrIGhhdCBkaWVzZSBSdW5kZSB3b2hsIHZlcmxvcmVuLgpQaXRmYWxsIHN0aWVydCBpbiBkZXIgR2VnZW5kIGhlcnVtLgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0LgpbVG9kOkxhcnNdIEVpbiBTdGllciBoYXQgZ2VyYWRlIEhlaW5pIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvbGRpZSBidXQgZ29sZGllIChBbmF0b2wsICA0LiBGZWIgMjAwMywgMDk6NTE6MTApOgpEZXIgVG9kIGtvbW10IGFuLgpEZXIgVG9kIHdhcm50IFdhbmRsZXIgc2VociBlaW5kcmluZ2xpY2guCkRlciBUb2QgZ2VodC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEZXIgR2Vlay1TY2h3YW56dmVyZ2xlaWNoIChBbmF0b2wsICA0LiBGZWIgMjAwMywgMTg6MDk6MjYpOgp+IyEgb249QW5hdG9sIG90PTEwNDQzNzg1NjIgb2c9d2l0emUKfiMhIHJuPUVsZGFyb24gcnQ9MTA0NDM3ODUyMCByZz13aXR6ZQp+IyEgdGlkPTEwNDQzNzc5NDEKV2FubiBoYWJlIGljaCBlaWdlbnRsaWNoIHp1bGV0enQgdWViZXIgZGllIEJDKG5ldSkgZ2VqYW1tZXJ0PyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR3JhZCBnZWxlc2VuLi4uIChNdXBmZWwsICA0LiBGZWIgMjAwMywgMjE6MTA6MDkpOgpJZiB5b3UgY2Fubm90IGZpbmQgT3NhbWEsIGJvbWIgSXJhcS4KSWYgdGhlIG1hcmtldHMgYXJlIGEgZHJhbWEsIGJvbWIgSXJhcS4KSWYgdGhlIHRlcnJvcmlzdHMgYXJlIGZyaXNreSwKUGFraXN0YW4gaXMgbG9va2luZyBzaGlmdHksCk5vcnRoIEtvcmVhIGlzIHRvbyByaXNreSwKQm9tYiBJcmFxLgoKSWYgd2UgaGF2ZSBubyBhbGxpZXMgd2l0aCB1cywgYm9tYiBJcmFxLgpJZiB3ZSB0aGluayBzb21lb25lIGhhcyBkaXNzZWQgdXMsIGJvbWIgSXJhcS4KU28gdG8gaGVsbCB3aXRoIHRoZSBpbnNwZWN0aW9ucywKTGV0J3MgbG9vayB0b3VnaCBmb3IgdGhlIGVsZWN0aW9ucywKQ2xvc2UgeW91ciBtaW5kIGFuZCB0YWtlIGRpcmVjdGlvbnMsCkJvbWIgSXJhcS4KCkl0J3MgInByZS1lbXB0aXZlIG5vbi1hZ2dyZXNzaW9uIiwgYm9tYiBJcmFxLgpMZXQncyBwcmV2ZW50IHRoaXMgbWFzcyBkZXN0cnVjdGlvbiwgYm9tYiBJcmFxLgpUaGV5J3ZlIGdvdCB3ZWFwb25zIHdlIGNhbid0IHNlZSwKQW5kIHRoYXQncyBnb29kIGVub3VnaCBmb3IgbWUKJ0NvcyBpdCdzIGFsbCB0aGUgcHJvb2YgSSBuZWVkCkJvbWIgSXJhcS4KCklmIHlvdSBuZXZlciB3ZXJlIGVsZWN0ZWQsIGJvbWIgSXJhcS4KSWYgeW91ciBtb29kIGlzIHF1aXRlIGRlamVjdGVkLCBib21iIElyYXEuCklmIHlvdSB0aGluayBTYWRkYW0ncyBnb25lIG1hZCwKV2l0aCB0aGUgd2VhcG9ucyB0aGF0IGhlIGhhZCwKKEFuZCBoZSB0cmllZCB0byBraWxsIHlvdXIgZGFkKSwKQm9tYiBJcmFxLgoKSWYgeW91ciBjb3Jwb3JhdGUgZnJhdWQgaXMgZ3Jvd2luJywgYm9tYiBJcmFxLgpJZiB5b3VyIHRpZXMgdG8gaXQgYXJlIHNob3dpbicsIGJvbWIgSXJhcS4KSWYgeW91ciBwb2xpdGljcyBhcmUgc2xlYXp5LApBbmQgaGlkaW5nIHRoYXQgYWluJ3QgZWFzeSwKQW5kIHlvdXIgbWFuaG9vZCdzIGdldHRpbmcgcXVlYXN5LApCb21iIElyYXEuCgpGYWxsIGluIGxpbmUgYW5kIGZvbGxvdyBvcmRlcnMsIGJvbWIgSXJhcS4KRm9yIG91ciBtaWdodCBrbm93cyBub3Qgb3VyIGJvcmRlcnMsIGJvbWIgSXJhcS4KRGlzYWdyZWU/IFdlJ2xsIGNhbGwgaXQgdHJlYXNvbiwKTGV0J3MgbWFrZSB3YXIgbm90IGxvdmUgdGhpcyBzZWFzb24sCkV2ZW4gaWYgd2UgaGF2ZSBubyByZWFzb24sCkJvbWIgSXJhcSEKCgoKCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IE1QQSAoQW5hdG9sLCAgNC4gRmViIDIwMDMsIDIyOjE5OjMxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ0MzkyOTkyIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTA0MzY4NDQ4MgpFciBrYW5uIGVzLi4uIGVyIGhhdCBMaWNodHN5Li4uIGFyZ2guLi4gZXIgaGF0IGRhcyBXb3J0IGdlc2FndCEgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogTVBBIChNdXBmZWwsICA0LiBGZWIgMjAwMywgMjI6MzA6MTgpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNDQzOTM1NzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzNjg0NDgyCkRhcyBMaWNodHN5c3RlbSB3aXJkIGFsbG1hZWhsaWNoIHp1bSAicnVubmluZyBnYWciIDspIE5hLCBvYiBkZXIgRXJmaW5kZXIKZGVzc2VsYmlnZW4gZGFzICpzbyogZ2VtZWludCBoYXQ/CgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IE1QQSAoR3JpbW1ib3JuLCAgNC4gRmViIDIwMDMsIDIyOjMxOjM4KToKfiMhIHJuPU11cGZlbCBydD0xMDQ0Mzk0MjE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzY4NDQ4MgpKYSwgZGEgc2llaHQgbWFuIG1hbCB3aWVkZXIuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJhdWVuLi4gOikgKERhcmt3aW5nLCAgNS4gRmViIDIwMDMsIDAxOjE0OjQxKToKRGVpbmUgRnJldW5kaW4gTGlhcmEgdGVpbHQgRGlyIG1pdDogZm9vYmkgZHUgaGFldHRlc3QgamEgbnUgd2VuaWdzdGVucyBmYWdlbgpEZWluZSBGcmV1bmRpbiBMaWFyYSB0ZWlsdCBEaXIgbWl0OiBrb2VubmVuIG9iIGljaCBhdWNoIGtvbW1lIDopCkRlaW4gRnJldW5kIEZvb2JhciB0ZWlsdCBEaXIgbWl0OiBLb21tc3QgRHUgYXVjaD8gOm8pCkRlaW5lIEZyZXVuZGluIExpYXJhIHRlaWx0IERpciBtaXQ6IHNhZyBpY2ggbmljaHQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcmF1ZW4uLiA6KSAoTXVwZmVsLCAgNS4gRmViIDIwMDMsIDAxOjE1OjI5KToKfiMhIHJuPURhcmt3aW5nIHJ0PTEwNDQ0MDQwODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NDA0MDgxCkRhcyBtZXJrc3RlIGRhbm4gc2Nob24uLi4uIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGcmF1ZW4uLiA6KSAoR3JpbW1ib3JuLCAgNS4gRmViIDIwMDMsIDAxOjI4OjAwKToKfiMhIHJuPU11cGZlbCBydD0xMDQ0NDA0MTI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDQwNDA4MQpKYSwgZGFzIGdsYXViZW4gYWxsZSBNYWVubmVyLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnJhdWVuLi4gOikgKExpYXJhLCAgNS4gRmViIDIwMDMsIDAxOjMxOjE2KToKfiMhIHJuPURhcmt3aW5nIHJ0PTEwNDQ0MDQwODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NDA0MDgxCk1hZW5uZXIgLi4uCgpEdSBzYWdzdDogc28gaWNoIG11c3MgaW5zIGJldHRjaGVuIHVuZCBtaXQganVuZ3Mga2FubiBtYW4gZWggbmljaHQgcmVkZW4gOikpCkZvb2JhciBzYWd0OiBTY2hsYWYgZ3V0LCBpY2ggZmluZGUgYWJlciBzY2hvbiBkYXNzIG1hbiBtaXQgSnVuZ3MgcmVkZW4ga2FubgpGb29iYXIgc2FndDogOm8pCkZvb2JhciBzYWd0OiBLaXN0ZSBCaWVyIGRhYmVpLCBzY2hvbiBrYW5uIG1hbiBzdHVuZGVsbmFnIHJlZGVuIDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRnJhdWVuLi4gOikgKEZvb2JhciwgIDUuIEZlYiAyMDAzLCAwMTozMToxOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0NDQwNDg4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDQ0MDQwODEKRGVpbmUgQXVzc2FnZSBpc3QgZmFsc2NoLCBHcmltbWJvcm4uCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFN0aWwsIFN0eWxlLCBTdGljaGVsZWllbiAoR3JpbW1ib3JuLCAgNS4gRmViIDIwMDMsIDAxOjMxOjU3KToKfiMhIHJuPU55eCBydD0xMDQ0NDA0MDIzIHJnPWV0aWtldHRlCn4jISB0aWQ9MTA0MzY4NDQ4MgpCaXNoZXIgaWNoOiA0OC42Y20gKHVuZCBkYXMgaXN0IG5pY2h0IGlyZ2VuZGVpbiBSZWNobmVyIGFuIGRlbiBpY2ggaXJnZW5kd2llCnJhbmtvbW1lbiwgbmVpbm1laW5oZXJyLCBkYXMgaXN0IG1laW4gcHJpdmF0ZXIgUmVjaG5lciBkZXIgenVoYXVzZSB1bnRlcm0KU2NocmVpYnRpc2NoIHN0ZWh0KS4KVWVicmlnZW5zLCBhdWYgZWluZXIgZGllbnN0bGljaGVuIE1hc2NoaW5lOiAxODgxLjRjbQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBGcmF1ZW4uLiA6KSAoR3JpbW1ib3JuLCAgNS4gRmViIDIwMDMsIDAxOjMyOjM1KToKfiMhIHJuPUZvb2JhciBydD0xMDQ0NDA1MDc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDQwNDA4MQpNZWluZSBBdXNzYWdlbiBzaW5kIG5pZSBmYWxzY2guIEFiIHVuZCB6dSBpcnJ0IGRhcyBVbml2ZXJzdW0sIGRhcyBtYWcgd29obApzZWluLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZyYXVlbi4uIDopIChNdXBmZWwsICA1LiBGZWIgMjAwMywgMDE6NDI6NDEpOgp+IyEgcm49TGlhcmEgcnQ9MTA0NDQwNTA3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDQ0MDQwODEKaWNoIHNhY2hldCBtYSBzbzogZGllIGZyYXVuIG5lLCBkaWUgc2luIHNjaG9uIGV0d2F0IGtvbWlzY2guIGFiZXIgd2F0IHdpbGx6ZQptYWNoZW4/IG9obmUgd2FlcmV0IGphIGRvY2ggZXR3YXQgbGFuZ3dlaWxpY2guCgppbiBkaWVzZW0gc2lubmUuLi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGcmF1ZW4uLiA6KSAoR3JpbW1ib3JuLCAgNS4gRmViIDIwMDMsIDAxOjQ2OjAxKToKfiMhIHJuPU11cGZlbCBydD0xMDQ0NDA1NzYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDQwNDA4MQpKYSwgc28gcmVkZW4gc2llLCB3ZW5uIHNpZSBpaHIgTGViZW4gbGFuZyB2b24gTXV0dGkgdW5kIGFuZGVyZW4gRnJhdWVuCmhpcm5nZXdhc2NoZW4gd29yZGVuIHNpbmQuIFBhdGhldGlzY2gsIGlzbid0IGl0PwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBGcmF1ZW4uLiA6KSAoTGlhcmEsICA1LiBGZWIgMjAwMywgMDE6NDY6NTIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDQ0MDU5NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NDA0MDgxCkhtLCBtdXNzIHNpY2ggZWluIE1hbm4gZGllIEhpcm53YWVzY2hlIGdlZmFsbGVuIGxhc3Nlbj8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZyYXVlbi4uIDopIChHcmltbWJvcm4sICA1LiBGZWIgMjAwMywgMDE6NDk6MDYpOgp+IyEgcm49TGlhcmEgcnQ9MTA0NDQwNjAxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDQ0MDQwODEKV2VubiBtYW5uIGFiIGRlbSBNb21lbnQgZGVyIEdlYnVydCBkaWVzZW0gRWluZmx1c3MgdW50ZXJsaWVndCBpc3QgZXMgc2Nod2VyLApzaWNoIGRhdm9uIHp1IGxvZXNlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IE1QQSAoQ2F0d2VhemxlLCAgNS4gRmViIDIwMDMsIDEwOjAzOjU5KToKfiMhIHJuPU11cGZlbCBydD0xMDQ0Mzk0MjE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzY4NDQ4MgpXYXMgZGVubiBmdWVybiBMaWNodHN5c3RlbT8KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFcmxvZXN1bmdzc3RhbW10aXNjaCBPc25hYnJ1ZWNrIChEbywgNi4yLikgKEFuYXRvbCwgIDUuIEZlYiAyMDAzLCAxMzowMDo0OCk6Cn4jISBybj1WYXJsYXJpb24gcnQ9MTA0NDQ0NjQyMiByZz10cmVmZmVuCn4jISB0aWQ9MTA0NDQ0NjM3MApEUkVJPyBBY2gga29tbSwgc29vbyBmZXR0IGlzdCBNdXBmZWwgbnUgZG9jaCBuaWNoLCBvZGVyPyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklzdCBrbGFyIC4uLiAoTGlhcmEsICA1LiBGZWIgMjAwMywgMTM6MTc6NDcpOgpLYXJpbWEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbmUgRnJldW5kaW4gS2FyaW1hIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4gCkRlaW5lIEZyZXVuZGluIEthcmltYSB0ZWlsdCBEaXIgbWl0OiByZW11aApEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogd2FzIHNpbmQgZGVubiBkYXMgZnVlciBnZXJhZXVzY2hlIGthcmltYT8KRGVpbmUgRnJldW5kaW4gS2FyaW1hIHRlaWx0IERpciBtaXQ6IERhcyBzaW5kIGRpZSBHZXJhZXVzY2hlLCBkaWUgbXVoZW5kZSBSZWhlCkRlaW5lIEZyZXVuZGluIEthcmltYSB0ZWlsdCBEaXIgbWl0OiBhYmdlYmVuLCBiZXZvciBzaWUgZXJkYmVlcmpvZ2h1cnQgZXNzZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVybG9lc3VuZ3NzdGFtbXRpc2NoIE9zbmFicnVlY2sgKERvLCA2LjIuKSAoTXVwZmVsLCAgNS4gRmViIDIwMDMsIDE0OjM0OjI4KToKfiMhIHJuPUFuYXRvbCBydD0xMDQ0NDQ2NDQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDQ0NjM3MApFcyBrb21tdCBub2NoIGRpZXNlciB0eXAsIGRlciBpbW1lciBzbyBiZWVpbmRydWNrdCB3YXIgdm9uIERpciwgQW5hdG9sLgooQmV3YWhyZSBkZW4gaW4gRXJpbm5lcnVuZywgZGllc2UgTGV1dGUgd2VyZGVuIHJhciA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdhZmZlbmZlcnRpZ2tlaXRlbiAoTm9ubmUsICA1LiBGZWIgMjAwMywgMTU6MTY6MjUpOgp+IyEgcm49RWxkYXJvbiBydD0xMDQ0NDU0NDMzIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTEwNDM5NDA5MDUKV2llc28gbXVzc3QgRHUgaW1tZXIgYWxsZXMgbWl0IFphaGxlbiBtYWNoZW4/IERpZSBHaWxkZW4ga29lbm5lbiBudXIgZWluZW4KQnJ1Y2h0ZWlsIGRlciBGYWVoaWdrZWl0ZW4gdm9uIEthZW1wZmVybiBvZGVyIEtsZXJpa2VybiBlcnJlaWNoZW4uIFdlbm4gZWluCkthZW1wZmVyIGRpZSBlaW5zY2hhZXR6dCwga2FubiBlciBhdWNoIG51ciBlaW4gQnJ1Y2h0ZWlsIGF1ZmxvZXNlbi4gV2llIGRhcwptdWRsaWJpbnRlcm4gYWJnZWJpbGRldCB3aXJkLCB3ZWlzcyBkb2NoIGRlciBLYWVtcGZlciBuaWNodC4gR2VodCBpaG4gYXVjaCBuaXgKYW4sIG11c3MgZXIgbmljaHQgd2lzc2VuLiBEYXMgTUcgaXN0IGtlaW5lIFdpc3NlbnNjaGFmdCwgc29uZGVybiBlaW4gU3BpZWwuCkRhY2h0ZSBpY2ggenVtaW5kZXN0IG1hbC4gSGFiIG1pY2ggd29obCBnZWlycnQuCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFdhZmZlbmZlcnRpZ2tlaXRlbiAoRWxkYXJvbiwgIDUuIEZlYiAyMDAzLCAxNToxOTowOSk6Cn4jISBybj1Ob25uZSBydD0xMDQ0NDU0NTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Mzk0MDkwNQpEdSB3aXJzdCBkb2NoIG5pY2h0IHNhZ2VuIHdvbGxlbiwgZGFzcyBkYXMgaGllciBudXIgU3BpZWwgdW5kIFNwYXNzIGlzdD8gRGFzCmlzdCBiaXR0ZXJlciBFcm5zdCA7PgoKQWJlciB3byB3aXIgYmVpbSBhdWZsb2VzZW4gc2luZDogV2llc28gd2Vpc3MgZWluIEthZW1wZmVyIGJlc3NlciBhbHMgZGVyCktsZXJpa2VyIHNlbGJzdCwgd2llIGd1dCBsZXR6dGVyZXIgbWl0IEtldWxlbiB1bWdlaGVuIGthbm4/CgpFbGRhcm9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBXYWZmZW5mZXJ0aWdrZWl0ZW4gKEZvb2JhciwgIDUuIEZlYiAyMDAzLCAxNToyMToyOSk6Cn4jISBybj1FbGRhcm9uIHJ0PTEwNDQ0NTQ3NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzOTQwOTA1Ck1hZ2llLgoKR3J1c3MsCgogICBGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdhZmZlbmZlcnRpZ2tlaXRlbiAoRWxkYXJvbiwgIDUuIEZlYiAyMDAzLCAxNToyMjoxMSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA0NDQ1NDc3NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDM5NDA5MDUKSGV5LCBoaWVyIGdlaHQgZXMgbmljaHQgdW0gZGFzICJVbnRlcmdyYWJlbiIgZXR3YWlnZXIgQXV0b3JpdGFldDsgTWlyIHdpcmQKd2llZGVybWFsIG1laW4gVW52ZXJtb2VnZW4gdm9yIEF1Z2VuIGdlZnVlaHJ0LCBnZXdpc3NlbiBTYWNodmVyaGFsdGUgbG9naXNjaApuYWNodm9sbHppZWhlbiB6dSBrb2VubmVuLiAoSmFqYSwgYmluIGhhbHQgZWluIHRvbHBhdGlzY2hpZ2VyIEhvYmJpdC4pIERlbgpWZXJzdWNoIG1laW5lIFZlcnN0YWVuZG5pcy9XaXNzZW5zbHVlY2tlbiB6dSBtaW5pbWllcmVuLCBzb2xsdGVzdCBkdSBtaXIgaW1obwpuaWNodCB2b3J3ZXJmZW4uIDopCgpFbGRhcm9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBXYWZmZW5mZXJ0aWdrZWl0ZW4gKE5vbm5lLCAgNS4gRmViIDIwMDMsIDE1OjIyOjU3KToKfiMhIHJuPUVsZGFyb24gcnQ9MTA0NDQ1NDc0OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDM5NDA5MDUKS2xlcmlrZXIgd2Vpc3MgZGFzIGdhciBuaWNodCwgbnVyIEFya3NoYXQgd2Vpc3MgZGFzLiBPZGVyIGVpbiBLYWVtcGZlci4gRWluCktsZXJpa2VyIGlzdCBkYW1pdCBiZXNjaGFlZnRpZ3QsIGRpZSBXZWx0IHp1IGJla2VocmVuLiBTb2xjaGUgZWdvemVudHJpc2NoZW4KQW53YW5kbHVuZ2VuLCB3aWUgZGllIGVpZ2VuZW4gRmFlaGlna2VpdGVuIGVpbnNjaGFldHplbiwgaGF0IGVpbiBLbGVyaWtlcgpuaWNodC4KCk5vbm5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWluaS13YXM/IChBbmF0b2wsICA1LiBGZWIgMjAwMywgMTU6MjM6MDMpOgp+IyEgcm49RWxkYXJvbiBydD0xMDQ0NDU0OTMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Mzk0MDkwNQpEdSBtaW5pbWllcnN0IGFsc28gRGVpbiBWZXJzdGFlbmRuaXMuIE5hIEdVVC4KClRhbmppYW5zLi4uIGRpZXNlIFNjaHdpbmdlcmVpIG11c3Mgc2llIGlucyBUcnVkZWxuIGJyaW5nZW4uLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogV2FmZmVuZmVydGlna2VpdGVuIChCb2luZywgIDUuIEZlYiAyMDAzLCAxNToyMzowNSk6Cn4jISBybj1FbGRhcm9uIHJ0PTEwNDQ0NTQ5MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzOTQwOTA1ClVhYWFhaCAuLi4gaWNoIGdsYXViIGljaCBiYXUgZGFzIEVpbnNjaGFldHplbiBzb2ZvcnQgd2llZGVyIGF1cyAuLi4gOykKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdhZmZlbmZlcnRpZ2tlaXRlbiAoRWxkYXJvbiwgIDUuIEZlYiAyMDAzLCAxNToyMzowNik6Cn4jISBybj1FbGRhcm9uIHJ0PTEwNDQ0NTQ5MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzOTQwOTA1Cldlbm4gbWFuIGltIEtvcGYgc2Nob24gd2VpdGVyIGlzdCwgYWxzIG1pdCBkZW4gRmluZ2VybiBiZWltIFNjaHJlaWJlbiwga29tbWVuCnNvbGNoZSBNdXJrc3NhZXR6ZSB6dSBzdGFuZGUuIEFiZXIgaWhyIGhhYnQgbWljaCB2ZXJzdGFuZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogV2FmZmVuZmVydGlna2VpdGVuIChNdXBmZWwsICA1LiBGZWIgMjAwMywgMTU6Mjc6NTMpOgp+IyEgcm49RWxkYXJvbiBydD0xMDQ0NDU0NzQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Mzk0MDkwNQpOYXR1ZXJsaWNoIHdlaXNzIGRhcyBlaW4gS2FlbXBmZXIgYmVzc2VyLiBLYWVtcGZlciBzaW5kICpFWFBFUlRFTiogZnVlcgpXYWZmZW4sIGF1Y2ggZnVlciBLZXVsZW4uIFdvIGRlciBLbGVyaWtlciBzaWNoIGRhIG1pdCBlaW5lbSBTdHVlY2sgSG9segpoYW50aWVyZW4gc2llaHN0LCBiZW1lcmt0IGRlciBLYWVtcGZlciB3YWZmZW5zY2h3aW5nZXJpc2NoZSBGZWluaGVpdGVuLgoKKE5hdHVlcmxpY2ggYmVtZXJrdCBkZXIgS2FlbXBmZXIgZGllc2UgZmVpbmhlaXRlbiBhdWNoIGJlaSBkZW4gYW5kZXJlbiAtIGFiZXIKZXIgc2FndHMgbmljaHQuIFdpZXNlIGRpZXNlbiB0dW1iZW4gQWJlbnRldXJlcm4gc3RlY2tlbiwgd2llIHNjaGVpc3NlIHNpZSBtaXQKZGVtIFNjaHdlcnQgcnVtaGFudGllcmVuPyBHaWJ0IGVoIG51ciBBZWdlci4uLiA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdhZmZlbmZlcnRpZ2tlaXRlbiAoRWxkYXJvbiwgIDUuIEZlYiAyMDAzLCAxNToyOTo0MCk6Cn4jISBybj1NdXBmZWwgcnQ9MTA0NDQ1NTI3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDM5NDA5MDUKQWgsIGRlciBLYWVtcGZlciBzaWVodCBuaWNodCBudXIgYmVpIGRlciBLZXVsZSBkaWUgd2FmZmVuc2Nod2luZ2VyaXNjaGVuCkZlaW5oZWl0ZW4sIHNvbmRlcm4gYXVjaCBiZWltIEtsZXJpa2VyIHNlbGJzdD8gPHNjaGFldHoga2xlcmlrZXI+IEVyIGthbm4geHgKUHJvemVudCBtaXQgZGVyIEtldWxlIHVtZ2VoZW4uIAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdhZmZlbmZlcnRpZ2tlaXRlbiAoQm9pbmcsICA1LiBGZWIgMjAwMywgMTU6Mjk6NDIpOgp+IyEgcm49TXVwZmVsIHJ0PTEwNDQ0NTUyNzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzOTQwOTA1CkRpZSBBYmVudGV1cmVyIGtvZW5uZW4gbWl0IGRlbiBGZWluaGVpdGVuIGVoIG5peCBhbmZhbmdlbiwgZGEgcmVpY2h0IGVzCnp1IHNhZ2VuICdqYSwgaXN0IGdhbnogb2ssIGFiZXIgZWluIGJpc3NjaGVuIHNvbGx0ZXN0IGR1IG5vY2ggdWViZW4nIC4uLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogV2FmZmVuZmVydGlna2VpdGVuIChNdXBmZWwsICA1LiBGZWIgMjAwMywgMTU6MzA6MzYpOgp+IyEgcm49Qm9pbmcgcnQ9MTA0NDQ1NTM4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDM5NDA5MDUKRGFzIHdvbGx0ZSBpY2ggZGFtaXQgc2FnZW4sIEJvaW5nIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdhZmZlbmZlcnRpZ2tlaXRlbiAoQW5hdG9sLCAgNS4gRmViIDIwMDMsIDE1OjMwOjM4KToKfiMhIHJuPUJvaW5nIHJ0PTEwNDQ0NTUzODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzOTQwOTA1CiAgIFZlcnN0YW5kZXNrbGFyaGVpdCB1bmQgU2lubmVzc2NoYWVyZmUgbGVpdGUgdW5zZXIgRGVua2VuLiBOdXR6bG9zZXMgdW5kIAogICBFaXRsZXMgdHJvcGZlIGFiIGFuIHVucywgdmVyYWNodGVuc3dlcnQgc2VpZW4gRHVtbWhlaXQgdW5kIElnbm9yYW56LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBXYWZmZW5mZXJ0aWdrZWl0ZW4gKEVsZGFyb24sICA1LiBGZWIgMjAwMywgMTU6MzI6MTQpOgp+IyEgcm49Qm9pbmcgcnQ9MTA0NDQ1NTM4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDM5NDA5MDUKQXVjaCB3ZW5uIGRpZSBEaXNrdXNzaW9uIHdvaGwgZWhlciBtdWVzc2lnIGlzdDogSWNoIHZlcnN0ZWhlIF9uaWNodF8sIHdhcyBlaW4KS2xlcmlrZXIgbWl0IGRlbiBGZWluaGVpdGVuIG1laHIgYW5mYW5nZW4ga2FubiwgYWxzIGVpbiBBYmVudGV1cmVyLiBBYmVyIGljaAprYW5uIG1pY2ggdHJvZXN0ZW4sIGljaCBtdXNzIG5pY2h0IGFsbGVzIHZlcnN0ZWhlbi4KCkVsZGFyb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBXYWZmZW5mZXJ0aWdrZWl0ZW4gKEJvaW5nLCAgNS4gRmViIDIwMDMsIDE1OjMzOjE0KToKfiMhIHJuPUVsZGFyb24gcnQ9MTA0NDQ1NTUzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDM5NDA5MDUKRHUgaGFzdCBkZW4gU21pbGV5IGdlc2VoZW4sIGphPwogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogV2FmZmVuZmVydGlna2VpdGVuIChFbGRhcm9uLCAgNS4gRmViIDIwMDMsIDE1OjM1OjExKToKfiMhIHJuPUJvaW5nIHJ0PTEwNDQ0NTU1OTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzOTQwOTA1CldpZSB3YWVyZSBlcyBtaXQgJ3NjaGFldHogPGFiZW50ZXVyZXI+Jy4gRHUgbGFlY2hlbHN0IDxhYmVudGV1cmVyPiB3aXNzZW5kIGFuLApzYWdzdCBhYmVyIGtlaW4gV29ydCwgZGEgZXIgZWggbmljaHRzIGRhbWl0IGFuZmFuZ2VuIGtvZW5udGUuCgpFbGRhcm9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogV2FmZmVuZmVydGlna2VpdGVuIChIdW1uaSwgIDUuIEZlYiAyMDAzLCAxNTozNzozOSk6Cn4jISBybj1Cb2luZyBydD0xMDQ0NDU1NTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Mzk0MDkwNQpJY2ggZmluZGUgZGFzIGdhbnogbG9naXNjaC4KCkFuZ2Vub21tZW4gaWNoIHNlaGUgNiBUeXBlbiwgZGF2b24gc2luZCAzIEtsZXJpa2VyIHVuZCAzIEFiZW50ZXVyZXIuCgpFaW4gS2xlcmlrZXIgdW5kIGVpbiBBYmVudGV1cmVyIHRyYWdlbiBpaHJlIEtldWxlIGFtIGRpY2tlbiBFbmRlLiBEaWUgc2luZApiZWlkZSBkb29mLCBhbHNvIGhhYmVuIGRpZSBkaWUgRmFlaGlna2VpdCBhdWYgMCAlLgoKRWluIEtsZXJpa2VyIHVuZCBlaW4gQWJlbnRldXJlciB0cmFnZW4gZGllIEtldWxlIGFtIHJpY2h0aWdlbiBFbmRlLCBhYmVyCmxhc3NlbiBzaWUgZGF1ZXJuZCBmYWxsZW4uIERlciBBYmVudGV1cmVyIGhhdCBkYW1pdCBkaWUgRmFlaGlna2VpdCBhdWYgMTAwJSwKZGVyIEtsZXJpa2VyIGVyc3QgYXVmIDEwLiAoSmEsIGljaCB1ZWJlcnRyZWliZSkuCgpFaW4gS2xlcmlrZXIgdW5kIGVpbiBBYmVudGV1cmVyIGhhbHRlbiBpaHJlIEtldWxlIHJpY2h0aWcgdW5kIGRlciBLYWVtcGZlcgpiZWtvbW10IEFuZ3N0LiBEZXIgS2xlcmlrZXIgaGF0IGRlbiBTa2lsbCBhdWYgMTAwJSB1bmQgZGVyIEFiZW50ZXVyZXIgaXN0IGdhcgprZWluZXIsIHdlaWwgZGVyIGRhcyBzbyBuaWUgZ2VsZXJudCBoYXQgKHNvIGd1dCB3aXJkIGVyIGhhbHQgbmllKS4gRm9sZ2xpY2gKd2lyZCBlciBnZWxvZXNjaHQuCgpKZXR6dCBrbGFyLCBkYXNzIG1hbiBLbGVyaWtlciB2aWVsIGdlbmF1ZXIgZWluc2NoYWV0emVuIGthbm4/IElzdCBlaWdlbnRsaWNoCmRhc3NlbGJlLCB3YXMgTm9ubmUgc2Nob24gZ2VzYWd0IGhhdCwgbnVyIGF1ZmdlZHJvZXNlbHQuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFdhZmZlbmZlcnRpZ2tlaXRlbiAoRWxkYXJvbiwgIDUuIEZlYiAyMDAzLCAxNTo0MDo1MCk6Cn4jISBybj1IdW1uaSBydD0xMDQ0NDU1ODU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Mzk0MDkwNQpEYW5rZSBsaWViZXIgSHVtbmkKCkVsZGFyb24sIGdlcnVlaHJ0IHdpZXZpZWwgTXVlaGUgbWFuIHNpY2ggbWl0IGVpbmVtIGJlZ3JpZmZzc3R1dHppZ2VuIEhvYmJpdApnaWJ0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXYWZmZW5mZXJ0aWdrZWl0ZW4gKEJvaW5nLCAgNS4gRmViIDIwMDMsIDE1OjQzOjE2KToKfiMhIHJuPUJvaW5nIHJ0PTEwNDQ0NTYxNTQgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTA0Mzk0MDkwNQpBYndlcnR1bmcsIGljaCB3ZWlzcyAuLi4gOykKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2FmZmVuZmVydGlna2VpdGVuIChNdWFkaWIsICA1LiBGZWIgMjAwMywgMTU6NDM6MjIpOgp+IyEgcm49Qm9pbmcgcnQ9MTA0NDQ1NjE1NCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMDQzOTQwOTA1CmFid2VydHVuZyEhIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdhZmZlbmZlcnRpZ2tlaXRlbiAoRGVlcGJsdWUsICA1LiBGZWIgMjAwMywgMTY6MTM6MzkpOgp+IyEgcm49RWxkYXJvbiBydD0xMDQ0NDU1MzgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Mzk0MDkwNQpIbSwgc3RpbW10IGVpZ2VudGxpY2guCkFsc28gYWVuZGVydCBkYXMgbWFsIHNvLCBkYXNzIG5lbiBUcnZlcyBlcnN0IGRlbiBLbGVyaSBlaW5zY2hhZXR6ZW4ga2Fubiwgd2VubgplciAoZGVyIFRydmVzKSBuZSBCZXVsZSBoYXQuCkRlZXAsIGluIGRlciBwYXNzZW5kZW4gUnVicmlrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXYWZmZW5mZXJ0aWdrZWl0ZW4gKExpYXJhLCAgNS4gRmViIDIwMDMsIDE3OjIyOjI2KToKfiMhIHJuPU5vbm5lIHJ0PTEwNDQ0NTQ1ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzOTQwOTA1CkFsc28gdW5hYmhhZW5naWcgdm9uIG1laW5lciBNZWludW5nIHVlYmVyIGRpZSBiZXRyZWZmZW5kZSBSZWdlbHVuZyBtdXNzIGljaCB6dQpkZWluZW0gQXJ0aWtlbCBkb2NoIGVpbmUga3VyemUgQmVtZXJrdW5nIG1hY2hlbjoKClppdGF0OgpEaWUgR2lsZGVuIGtvZW5uZW4gbnVyIGVpbmVuIEJydWNodGVpbCBkZXIgRmFlaGlna2VpdGVuIHZvbiBLYWVtcGZlcm4gb2RlcgpLbGVyaWtlcm4gZXJyZWljaGVuLiBXZW5uIGVpbiBLYWVtcGZlciBkaWUgZWluc2NoYWV0enQsIGthbm4gZXIgYXVjaCBudXIgZWluCkJydWNodGVpbCBhdWZsb2VzZW4uClppdGF0ZW5kZS4KCldpZSBrb21tc3QgZHUgYXVmIGRlbiBHZWRhbmtlbiwgZGFzcyBlaW4gUHJvZmkgZWluZW4gYW5kZXJlbiBtaXQgZ2VyaW5nZXJlbgpGYWVoaWdrZWl0ZW4gc2NobGVjaHRlciBhdWZsb2VzZW4ga2Fubj8KRGVyIFByb2ZpIHdhZXJlIHNpY2hlcmxpY2ggaW4gZGVyIExhZ2UsIGRpZSBLZW5udG5pc3NlIGRlciBhbmRlcmVuIFBlcnNvbgpnZW5hdXNvIGd1dCB6dSBiZXNjaHJlaWJlbiB3aWUgc2VpbmUgZWlnZW5lbi4gRGllIEZyYWdlIGlzdCBkb2NoLCBvYiBkYXMgZGVtCkdlZ2VudWViZXIgZXR3YXMgbnVldHp0LCBkYSBkaWVzZXIgaW4gZGVyIFJlZ2VsIG1pdCBlaW5lciBkaWZmZXJlbnppZXJ0ZW4KRXJrbGFlcnVuZyBzZWluZXMgS2VubnRuaXNzdGFuZGVzIHVlYmVyZm9yZGVydCBzZWluIHdpcmQuIAoKSWNoIHdlaXNzIG5pY2h0LCBvYiBkdSBkYXMgc28gZ2VtZWludCBoYXN0LiBKZWRlbmZhbGxzIGZhbmQgaWNoIGVzIGV0d2FzCm1pc3N2ZXJzdGFlbmRsaWNoIGF1c2dlZHJ1ZWNrdC4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOeW1waGVuc2l0dGljaCAoR3JpbW1ib3JuLCAgNi4gRmViIDIwMDMsIDAwOjI1OjUzKToKfiMhIHJuPUFyYW5jaWEgcnQ9MTA0NDQ4NzMzMyByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwNDQ0ODczMzMKQmVpIEJlZGFyZiBsaWVmZXJlIGljaCBnZXJuZSBlaW4gcGFzc2VuZGVzIFJlemVwdCBkYXp1LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE55bXBoZW5zaXR0aWNoIChDcm9mdCwgIDYuIEZlYiAyMDAzLCAwMDoyOTo1NSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0NDQ4NzU1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDQ0ODczMzMKSG0uIEFuIGRlbiBEaW5nZXJuIGlzdCBkb2NoIGthdW0gd2FzIGRyYW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTnltcGhlbnNpdHRpY2ggKEdyaW1tYm9ybiwgIDYuIEZlYiAyMDAzLCAwMDozMDo1NSk6Cn4jISBybj1Dcm9mdCBydD0xMDQ0NDg3Nzk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDQ4NzMzMwpNYW4gZGFyZiBuaWNodCBzbyBlaW5zZWl0aWcgZGVua2VuLiBOZWJlbiBlaW5lbSBsZWNrZXJlbiBTbmFjayBnZXdpbm50IG1hbgphdWNoIG5vY2ggUnVoZSB1bmQgR2VydWNoc3JlZHV6aWVydW5nLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTnltcGhlbnNpdHRpY2ggKFJvbmRhLCAgNi4gRmViIDIwMDMsIDAwOjQ1OjIwKToKfiMhIHJuPUFyYW5jaWEgcnQ9MTA0NDQ4NzMzMyByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwNDQ0ODczMzMKSG0uIFVucyBzaW5kIGhpZXIgdm9yIGdlcmF1bWVyIFplaXQgendlaSBWb2VnZWwgenVnZWZsb2dlbiwgbmVubmVuIHdpciBzaWUgbWFsCkEqIHVuZCBQKi4gT2RlciBhdWNoIEMqIHVuZCBDKi4gRmFsbHMgYWxzbyBqZW1hbmQgYXVzIGRlbSBPc25hYnJ1ZWNrZXIgdW5kCkJvbm5lciBSYXVtICg/KSBJbnRlcmVzc2UgYW4gZWJlbiBkaWVzZW4gU3BpZS4uLiBWb2VnZWxuIGhhZXR0ZSwgd3VlcmRlbiB3aXIKZGllIGJlaWRlbiBnZXJuIGluIHRyZXVlIEhhZW5kZSB1ZWJlcmdlYmVuLiBEaWUgYmVpZGVuIHNpbmQgc2Nod2FyeiB1bmQgd2Vpc3MKLSB3ZWNoc2Vsd2Vpc2UgLSB1bmQgZXR3YXMgbGF1dC4gUGFzc2VuZGVuIEthZWZpZyBzdWNoZW4gd2lyIG5vY2guIEJlaQpJbnRlcmVzc2UgYml0dGUgbWFpbCBhbiAvZGV2L251bGwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEZXIgR2Vlay1TY2h3YW56dmVyZ2xlaWNoIChCYW1iaSwgIDYuIEZlYiAyMDAzLCAwOTozMDo1Nik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0NDUxODQxOSByZz13aXR6ZQp+IyEgdGlkPTEwNDQzNzc5NDEKSWNoIHdhcnRlIGphIG5vY2gsIGRhc3MgaW4gZGVtIFRocmVhZCBpcmdlbmRlaW4gYW5kZXJlcyBUaGVtYSBhbmdlc2Nobml0dGVuCnVuZCBkYW5uIGdlZmxhbWVkIHdpcmQgb2huZSBFbmRlLiBLb21tdCBkYXMgbm9jaCBvZGVyIGthbm4gaWNoIGRlbiBUaHJlYWQKdWViZXJnZWhlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IERlciBHZWVrLVNjaHdhbnp2ZXJnbGVpY2ggKE5vbm5lLCAgNi4gRmViIDIwMDMsIDA5OjMxOjQ0KToKfiMhIHJuPUJhbWJpIHJ0PTEwNDQ1MjAyNTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0Mzc3OTQxCk5laW4sIGhpZXIga29tbWVuIG51ciBTY2h3YW56bGFlbmdlbiB1bmQgd2lsZGUgTXV0bWFzc3VuZ2VuIHVlYmVyIGRpZSBMYWVuZ2UKYW5kZXJlLCBrYW5uc3RlIHVlYmVyZ2VoZW4uIChjOwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKJ0pvaW4gdGhlIExlZ2lvbiBCYWdkYWQgbm93JyAoRWxpemFiZXRoLCAgNi4gRmViIDIwMDMsIDE1OjA5OjU3KToKSWNoIHdlaXNzIG5pY2h0IHJlY2h0IG9iIGljaCBkYXMgaW4gc2NobWFycm4gZWludGVpbGVuIHNvbGwsIG9kZXIgZWhlciBpbgpXaXR6ZToKVm9yIGRlciBUVS1IYnVyZyB2ZXJ0ZWlsdCA6CgpTZWhyIGdlZWhydGUgRGV1dHNjaGUsIGxpZWJlIEhhcmJ1cmdlciEKU2FkZGFtIG11c3Mgd2VnLCB1bmQgZGllIFZlcmVpbmlndGVuIFN0dGF0ZW4gdm9uIEFtZXJpa2EsIGFsbGVuIHZvcmFuIHVuc2VyZXIKUHJhZXNpZGVudCBHZW9yZ2UgVy4gQnVzaCBzaW5kIGJlcmVpdCBkaWVzZW4gZ2VmYWVocmxpY2hlbiBKb2IgaW0gTmFtZW4gZGVyCkZyZWloZWl0LCBkZXIgRGVtb2tyYXRpZSB1bmQgZGVyIEdlcmVjaHRpZ2tlaXQgbW9lZ2xpY2hzdCBncnVlbmRsaWNoIHp1CmVybGVkaWdlbi4KRGllIFN0cmVpdGtyYWVmdGUgZGVyIFUuUy5Bcm15IHVuZCBlaW5pZ2VyIHZlcmJ1ZW5kZXRlciBBcm1lZW4gc3RlaGVuLCB3aWUgbWFuCmluIERldXRzY2hsYW5kIHNhZ3QsIEdld2VociBiZWkgRnVzcy4gVmllbCB6dSB2aWVsIHplaXQgd3VyZGUgYmVyZWl0cwp2ZXJnZXVkZXQuIERvY2ggc2FkZGFtLCBkZXIgbmFjaCB3aWUgdm9yIG5pY2h0IGtvb3BlcmllcnQsIG11c3Mgd2lzc2VuLCBkYXNzCmRpZXNlIHplaXQgbnVuIGVpbiBmdWVyIGFsbGUgbWFsIGZ1ZXIgaWhuIGFiZ2VsYXVmZW4gaXN0LgoKSWhyZSBSZWdpZXJ1bmcsIGxpZWJlIERldXRzY2hlLCBzaWVodCBkYXMgYW5kZXJzIHVuZCBrbmVpZnQgbm9jaCB2b3IgZGVtClRlcnJvci4KT2theSwgZGFzIGlzdCBpaHIgZ3V0ZXMgUmVjaHQuIERpZSBSZWdpZXJ1bmcgZGVyIFZlcmVpbmlndGVuIFN0YXR0ZW4gdm9uCkFtZXJpa2EgYWJlciBkYXJmIGRhcmF1ZiBuaWNodCBsYWVuZ2VyIFJ1ZWNrc2ljaHQgbmVobWVuLiBVbmQgd2lyIHNpbmQgZGF2b24KdWViZXJ6ZXVndCwgZGFzcyB2aWVsZSBEZXV0c2NoZSBkYXMgYWVobmxpY2ggc2VoZW4gdW5kIGViZW5mYWxscyBkYXMgYm9lc2UgdW5kCnNlaW5lIG1hc3NlbnZlcm5pY2h0dW5nc3dhZmZlbiBsaXF1aWRpZXJlbiB3b2xsZW4uCkRlc2hhbGIgd2lyZCBpbiBkZXIgVS5TLkFybXkgIGVpbmUgZGV1dHNjaGUgZnJlaXdpbGxpZ2VuLWVpbmhlaXQgZ2ViaWxkZXQ6CmRpZSBsZWdpb24gQmFnZGFkLgpXaXIgZm9yZGVybiBhbGxlIGZyZWloZWl0c2xpZWJlbmRlbiBEZXV0c2NoZW4gYXVmLCBpbiBkaWVzZSBMZWdpb24gZWluenV0cmV0ZW4KdW5kIFNlaXRlIGFuIFNlaXRlIG1pdCB1bnMgQW1lcmlrYW5lcm4gdW5kIGlocmVuIHphaGxyZWljaGVuIFdhZmZlbmJydWVkZXJuCmF1cyBFbmdsYW5kLCBkZXIgVHVlcmtlaSwgRGFlbmVtYXJrIHVuZCB2aWVsZW4gYW5kZXJlbiBMYWVuZGVybiBnZWdlbiBTYWRkYW0KenUga2FlbXBmZW4uIERlciBTb2xkIGJldHJhZWd0IDI1MCAkIHBybyBUYWcgcGx1cyBzcGVzZW4uIE5hY2ggZXJsZWRpZ3VuZyBkZXMKaXJhay1qb2JzIGVyaGFlbHQgamVkZXIgbGVnaW9uYWVyIGF1c3NlcmRlbSBiaXMgYW4gc2VpbiBsZWJlbnNlbmRlIGdyYXRpcwpCZW56aW4gKHdhaGx3ZWlzZSBoZWl6b2VsKS4gSW0gRmFsbCBzZWluZXMgYWJsZWJlbnMgZ2FyYW50aWVyZW4gd2lyIGlobSBlaW5lbgplaHJlbnBsYXR6IGF1ZiBkZW0gV2FzaGluZ3Rvbi1NZW1vcmllbCAoRm90byBkYXp1KQoKV2lyIHNldHplbiBpbnNiZXNvbmRlcmUgYXVmIGlocmUga29vcGVyYXRpb24sIGxpZWJlIEhhcmJ1cmdlci4gRGVubiBnZXJhZGUgU2llCnNpbmQgZGVtIGFtZXJpa2FuaXNjaGVuIFZvbGsgbm9jaCBldHdhcyBzY2h1bGRpZy4gSWhyZSBTdGFkdCBib3QgZGVuClZlcmJyZWNoZXJuIGRlcyAxMS4gU2VwdGVtYmVyIFVudGVyc2NobHVwZi4gV2lyIG5laG1lbiBldWNoIGRhcyBuaWNodCB1ZWJlbCwKd3VlcmRlbiB1bnMgYWJlciBhbmRlcmVyc2VpdHMgc2VociBmcmV1ZW4sIHdlbm4gaWhyIGRpZSBncm9zc2Ugc2NodWxkLCBkaWUgaWhyCmdlZ2VudWViZXIgZGVuIHRvdGVuIHZvbiBuZXcgeW9yayB1bmQgZGVyZW4gYW5nZWhvcmVuIGF1ZiBldWNoIGdlbGFkZW4gaGFidCwKZHVyY2ggZWluZW4gZ2FueiBwZXJzb2VubGljZW4gZWluc2F0eiB3aWVkZXIgZ3V0IG1hY2hlbiB3dWVyZGV0LiBMZXQncyBSb2xsIQpSZWFkeSBOb3chIEpvaW4gdGhlIGxlZ2lvbiBiYWdkYWQhIQooYXVmbmFobWUgYW50cmFnIGdlbnVlZ3QpCgooc29ycnkgZnVlciBkaWUgZmVobGVyY2hlbiwgYWJlciBpY2ggaGFiIG5pY2ggaGluZ2VndWNrdCBiZWltIGFic2NocmVpYmVuLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogJ0pvaW4gdGhlIExlZ2lvbiBCYWdkYWQgbm93JyAoQmFtYmksICA2LiBGZWIgMjAwMywgMTc6MDk6MzApOgp+IyEgcm49RWxpemFiZXRoIHJ0PTEwNDQ1NDA1OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NTQwNTk3ClN0YW5kIGRhIGF1Y2ggYmVpLCB3ZXIgZnVlciBkZW4gSW5oYWx0IGRlcyBQYXBpZXJzIHZlcmFudHdvcnRsaWNoIGlzdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogJ0pvaW4gdGhlIExlZ2lvbiBCYWdkYWQgbm93JyAoRWxpemFiZXRoLCAgNi4gRmViIDIwMDMsIDE3OjE4OjMzKToKfiMhIHJuPUJhbWJpIHJ0PTEwNDQ1NDc3NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NTQwNTk3Ck51ciB3YXMgdm9uIFUuUy5Bcm15IFByb3BhZ2FuZGEgRm9yY2UgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAnSm9pbiB0aGUgTGVnaW9uIEJhZ2RhZCBub3cnIChPcmt0b2V0ZXIsICA2LiBGZWIgMjAwMywgMTc6MjE6MTkpOgp+IyEgcm49RWxpemFiZXRoIHJ0PTEwNDQ1NDgzMTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NTQwNTk3CkhhZWhhZWguLiB3YXMgaXN0IGRlbm4gd2VuIGRlciBCaW4gTGFkZW4gb2RlciBzbyB6dSBkZW4gZnJhbnpvZXNpc2NoZW4KRnJlbWRlbmxlZ2lvbmFlcmVuIGdlaGVuPyBEaWUgc2NoYXVlbiBkb2NoIChhbmdlYmxpY2gpIG5pY2h0IHdvZWhlciBtYW4ga29tbXQKdW5kIHdlbm4gbWFuIHNlaW5lIFplaXQgZG9ydCBhYnNvbHZpZXJ0IGhhdCBiZWtvbW10IG1hbiBzb2dhciBlaW5lIG9mZml6aWVsbGUKKG5ldWUpIElkZW50aXRhZXQuLi4gZGEga29lbm5lbiBkaWUgQW1pcyBkYW5uIGxhbmdlIHN1Y2hlbi4uLgoKVG93ZXIsIGluIGRlciByaWNodGlnZW4gUnVicmlrLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogJ0pvaW4gdGhlIExlZ2lvbiBCYWdkYWQgbm93JyAoT3JrdG9ldGVyLCAgNi4gRmViIDIwMDMsIDE3OjIxOjM5KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDQ0NTQ4NDc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDU0MDU5NwpCaW4gc2Nob24gZ2FueiBkdXJjaGVpbmFuZGVyLCBPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV29jaGVuZW5kLVN0YXRpIGluIE11ZW5zdGVyISAoR3JpbW1ib3JuLCAgNi4gRmViIDIwMDMsIDE3OjU4OjE2KToKfiMhIHJuPUdvcm9nIHJ0PTEwNDQ1NTAzMjggcmc9dHJlZmZlbgp+IyEgdGlkPTEwNDM4NjM0NTYKRHUgYmlzdCBpbiBkZXIgZmFsc2NoZW4gR3J1cHBlLiBEaWUgRnJhZ2VuIG5hY2ggd2Fubndvd2llbGFuZyB3aXJkIG1vbWVudGFuCmdlcmFkZSBpbiB3aXR6ZSBkaXNrdXRpZXJ0ICh2b3IgYWxsZW0gZGVyIGxldHp0ZSBUZWlsKS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogc2V0bW91dCAoR3JpbW1ib3JuLCAgNi4gRmViIDIwMDMsIDIwOjIyOjM5KToKfiMhIHJuPUh1bW5pIHJ0PTEwNDQ1NTQ3NjAgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD0xMDQ0NTU0MTM1CkFjaCB3YXMsIGRhcyBtYWNodCBtYW4gbWFsIGViZW4gdWViZXIgTmFjaHQgbWl0IGVpbmVtIHNjcmlwdCwgdW5kIGRpZSBwYWFyClByb21pbGxlIGRpZSB1ZWJyaWcgYmxlaWJlbiBzaW5kIGRhbm4gYXVjaCBuaWNodCBzbyBkYXMgUHJvYmxlbS4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgKHNwZXppZWxsIGZ1ZXIgQW5hdG9sKSAoRm9vYmFyLCAgNi4gRmViIDIwMDMsIDIzOjQxOjM0KToKRnJvbTogVm9sa2VyIEJsZWVzIDxibGVlc0B2ZXJrZWhyLnR1LWRhcm1zdGFkdC5kZT4KTmV3c2dyb3VwczogZGUuZXRjLmJhaG4udGFyaWYrc2VydmljZQpTdWJqZWN0OiBSZTogQW50cmFnIGF1ZiBCQzUwIHZlcnNhdXQgLSBUb2xsZXIgU2VydmljZSBkZXIgQmFobgpEYXRlOiBXZWQsIDE1IEphbiAyMDAzIDExOjIyOjU1ICswMTAwCk1lc3NhZ2UtSUQ6IDwzRTI1MzY3Ri4xNjE3NDNCNkB2ZXJrZWhyLnR1LWRhcm1zdGFkdC5kZT4KCkFubmUgSGVycm1hbm4gc2NocmllYjoKPiAKPiBJY2ggbXVzcyBkYSBhdWNoIG5vY2htYWwgbmFjaGJvaHJlbiwgbXVzcyBpY2ggZGEgZGllICJ0b2xsZSIgSG90bGluZQo+IGFucnVmZW4/IAoKS2xlaW5lIEVwaXNvZGU6IGRpZXNlciBUYWdlIHJpZWYgaWNoIGRpZSBIb3RsaW5lIGFuIHVuZAplcmxhZXV0ZXJ0ZSwgZGFzcyBtaXIgbWVpbmUgQkMgZ2VzdG9obGVuIHdvcmRlbiBzZWkgdW5kIGljaAplaW5lIEVyc2F0emthcnRlIGJyYWV1Y2h0ZS4gRGFyYXVmaGluIGJyYWNoIGRlciBqdW5nZSBNYW5uIGFtCmFuZGVyZW4gRW5kZSBkZXIgTGVpdHVuZyBpbiBpcnJlcyBHZWxhZWNodGVyIGF1cywgZmluZyBzaWNoCm5hY2gga3VyemVyIFplaXQgd2llZGVyLCBlbnRzY2h1bGRpZ3RlIHNpY2gsIGltbWVyIG5vY2gKZ2lja2VsbmQsIHZpZWxtYWxzIHVuZCBlcmtsYWVydGUsIGVyIHNlaSBfc29vb29fIGZyb2gsIGRhc3MKaWNoIGVpbiBnYW56ICdub3JtYWxlcycgQW5saWVnZW4gaGFldHRlIHVuZCBrZWluCkJDMjUvNTAtUHJvYmxlbS4gCgpHcnVzcwpWb2xrZXIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRXJsb2VzdW5nc3N0YW1tdGlzY2ggT3NuYWJydWVjayAoRG8sIDYuMi4pIChMaWFyYSwgIDcuIEZlYiAyMDAzLCAwNDo0OToyNCk6Cn4jISBybj1BbmF0b2wgcnQ9MTA0NDQ0NjM3MCByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDQ0NDQ2MzcwCk5hY2hsZXNlOgoKMS4gU28gc2F1YmVyZSBUb2lsZXR0ZW4gaGFiZSBpY2ggaW4gZWluZXIgS25laXBlIG5vY2ggbmllIGVybGVidC4gOikKMi4gSmVkZXIgYW5kZXJlIExhZGVuIGhhZXR0ZSB6dWdlbWFjaHQsIHdlbm4gNiBMZXV0ZSBpbiBkZXIgbGV0enRlbiBTdHVuZGUgYmlzCiAgICBoYWxiIGVpbnMgMyBNaWxjaGthZmZlZSBiZXN0ZWxsZW4uCjMuIElyZ2VuZGplbWFuZCBtdXNzIGJpdHRlIGRlbiBIdW1tZXIgcmV0dGVuLgoKS2xlaW5lcyBMb2c6CihFcyBnaW5nIGRhcnVtLCBvYiBEZXNwZXJhZG9zIGVpbiBoZWZ0aWdlcyBHZXRyYWVuayBpc3QsIHdlaWwgTWlzY2h1bmcgYXVzCkJpZXIgbWl0IFRlcXVpbGEgLi4uKQpYeHggKGJlc3RpbW10ZXIsIGZhc3QgZ2VrcmFlbmt0ZXIgVG9uZmFsbCkgc2FndDogRGFzIGlzdCBkYXMgdG90YWxlCk1hZWRjaGVuZ2V0cmFlbmssIGRhcyB0cmlua3Qgc29nYXIgQnJhbmRpci4KCkxpYXJhLCBoYXQgZWluZSBNZW5nZSBTcGFzcyBnZWhhYnQgaW4gT1MgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlcmFkZSBhdWYgZGF1am9uZXMuY29tIGdlZnVuZGVuOiAoTm9ubmUsICA3LiBGZWIgMjAwMywgMTA6NDE6MjcpOgpJY2ggYmluIHVtc2NodWVsZXIgenVtIEZhY2hpbmZvcm1hdGlrZXIgdW5kIGZyYWdlIG1pY2ggd2llIGVpbmlnZSBMZXV0ZQp6dWdlbGFzc2VuIHdlcmRlbiBrb2VubmVuLCBhbiBzbyBlaW5lciBtYXNzbmFobWUgdGVpbHp1bmVobWVuLCBpY2ggbWVpbiBkYXMKbWVya3QgbWFuIGRvY2ggd2VubiBtYW4genUgYmxvZWQgaXN0ISAKIAogV2lyIGhhdHRlbiBkaWUgZXJzdGUgc3R1bmRlIFByb2dyYW1taWVyLVVudGVycmljaHQgdW5kIGJlaSBtZWluZW0gS29sbGVnZQpuZWJlbiBtaXIgKGVpbiBhYnNvbHV0ZXIgREFVKSwga2xhcHB0ZSBlaW5mYWNoIGdhcm5pY2h0cy4gCiBOYWNoZGVtIGVyIGJlbWVya3RlIGRhcyBpY2ggdm9yIG1pY2ggaGluIHNjaG11bnplbHRlLCB3dXJkZSBlciBzYXVlciB1bmQKYmVmYWhsIG1pcih3b3J0d29lcnRsaWNoKTogCiAiRHUgbWFya2llcnN0IGpldHp0IGRhIGJlaSBkaXIgbWl0IGRlciBtYXVzLCBkcnVlY2tzdCBkaWUgcmVjaHRlIG1hdXN0YXN0ZQp1bmQgZGFubiBnZWhzdGUgYXVmIGtvcGllcmVuLi4uKHdhcm4gZ3Jvc3NlciBLZXJsLCBhbHNvIG1hY2h0ZSBpY2ggZXMpIFVuZApqZXR6dCBnaWJzdCBkdSBtaXIgZGllIG1hdXMgcnVlYmVyLi4uIgoKTm9ubmUsIGdlcmFkZSB3aWVkZXIgdW50ZXJtIFRpc2NoIHZvcmdla2xldHRlcnQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNldG1pbi9tb3V0Ly4uLiBub2NobWFsIChFbGRhcm9uLCAgNy4gRmViIDIwMDMsIDE2OjU0OjAwKToKfiMhIG9uPUVsZGFyb24gb3Q9MTA0NDYzMzIyOCBvZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDQ2MzMxNDQgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD0xMDQ0NjMxMDcyCkRhcyBrYW5uc3QgZHUgYWJlciB3aXJrbGljaCBiZXNzZXIuIDs+CgpFbGRhcm9uLCBlbnR0YWV1c2NodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU2V0bWluL21vdXQvLi4uIG5vY2htYWwgKEdyaW1tYm9ybiwgIDcuIEZlYiAyMDAzLCAxNjo1ODo0MSk6Cn4jISBybj1FbGRhcm9uIHJ0PTEwNDQ2MzMyNDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NjMxMDcyCk5laW4uIEdsYXViIG1pciwgbWl0IGRlciBFbmRsaWNoa2VpdCB2b24gUGxhdHRlbnBsYXR6IGtlbm5lIGljaCBtaWNoIHNvCmhhbGJ3ZWdzIGF1cyBtaXR0bGVyd2VpbGUuLi4KCkdkQSwgSGVyciB1ZWJlciA1MCBUQiBQbGF0dGVucGxhdHogdW5kIGd1dCAxNDAwIFRCIEJhbmRzcGVpY2hlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKW1RlYW06IEthbXBmc2Nod2VpbmVdIChBbGNpbmEsICA3LiBGZWIgMjAwMywgMTg6MjI6MjIpOgoKZWJlbiBwYXNzaWVydDoKClRlbmFyICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkR1IG11c3N0IERpciBkaWUgTmFzZSB6dWhhbHRlbi4KCltUZWFtOkthbXBmc2Nod2VpbmVdIGthbm4gbWFuIGViZW4gYXVjaCByaWVjaGVuIDpvKQoKQWxjaW5hIC0gZ3JpbnN0IGltbWVybm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2llIG1hbiByaWNodGlnIGRlZnJhZ21lbnRpZXJ0Li4uIChNdXBmZWwsICA3LiBGZWIgMjAwMywgMTk6NDg6NDYpOgouLi5zdGVodCBoaWVyOgpodHRwOi8vZmFjaHNjaGFmdC5waHlzaWsucnVoci11bmktYm9jaHVtLmRlL2VudGRlY2t1bmdlbi9kZWZyYWcuc2h0bWwKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2llIG1hbiByaWNodGlnIGRlZnJhZ21lbnRpZXJ0Li4uIChBbWFyeWxsaXMsICA3LiBGZWIgMjAwMywgMTk6NTM6MDgpOgp+IyEgcm49TXVwZmVsIHJ0PTEwNDQ2NDM3MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NjQzNzI2CkFuYWxvZyBkYXp1LCBmdWVyIGRpZSBab2NrZXIgdW50ZXIgdW5zOgoKV2llIG1hbiBkaWUgbmV1ZSBTdXBlcmR1cGVyLUdyYWZpa2thcnRlIGVpbmJhdXQsIGZpbmRldCBtYW4gaGllcjoKaHR0cDovL3d3dy5zb2x1dGlvbnBhcmsuY2gvcGFnZXMvc2VydmljZXNfZ3JhZmlra2FydGUuaHRtbAoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWx0ZSBaZWl0ZW4uLi4gKEFtYXJ5bGxpcywgIDcuIEZlYiAyMDAzLCAyMDoyMjowMyk6CkhpLAoKaGV1dGUsIGJlaW0gTWl0dGFnZXNzZW4gbWl0IGVpbmVtIENvbnN1bHRhbnQgZWluZXIgYW5kZXJlbiBGaXJtYToKCkljaDogIkR1IGhhc3QgYWJlciBuZSBzY2hpY2tlIEJyaWxsZS4uLiBpc3QgbWlyIG5vY2ggZ2FyIG5pY2h0IGF1ZmdlZmFsbGVuLiIKRXI6ICJKYSwgaWNoIGthdWZlIHJlZ2VsbWFlc3NpZyBiZWkgbWVpbmVtIE9wdGlrZXIgdGV1cmUgQnJpbGxlbiAtIGF1cwpEYW5rYmFya2VpdC4iCkljaDogIj8/PyIKRXI6ICJPcHRpa2VyIHNpbmQga2xhc3NlLiBEZW5lbiBoYWJlbiB3aXIgYmlzIE1pdHRlIGRlciBOZXVuemlnZXIgbm9jaApHVy1CYXNpYy1Qcm9ncmFtbWUgdmVya2F1ZnQgLSBkYSB3YXJlbiBkaWUgYmVnZWlzdGVydCB2b24uIEJpcyB2b3IgendlaSBKYWhyZW4Kd2FyZW4gc2llIG5vY2ggbWl0IE1TLURPUyB1bmQgUXVpY2tCYXNpYy1Qcm9ncmFtbWVuIHp1ZnJpZWRlbnp1c3RlbGxlbi4gR3V0LApkaWUgVW1zdGVsbHVuZyAyMDAyIGF1ZiBXaW5kb3dzOTUgaGF0IGV0d2FzIEFyYmVpdCBnZWtvc3RldCwgYWJlciBtaXQgZGVuZW4KbGFlc3N0IHNpY2ggR2VsZCBtYWNoZW4uLi4iCgpBbWEqLCBwcnVzdGVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklkbGV3ZWx0bWVpc3RlciAoR3JpbW1ib3JuLCAgOC4gRmViIDIwMDMsIDA3OjI4OjIxKToKQXVzc2NobGllc3NsaWNoICJKIiwgbWl0IHp3ZWkgQXVzbmFobWVuLiBEYXMgbXVzcyBkb2NoIGRva3VtZW50aWVydCB3ZXJkZW4uLi4KCkdpbC4uLi4uLi4uLi4uLkoucyBaYXJuaXlhLi4uLi4uLi5KLnMgSWRsZWQuLi4uLi4uLi4uSi56IFluZy4uLi4uLi4uLi4uLkoucwpCYWJ5Ymx1ZS4uLi4uLi4uLnMgR3dlbmlsaS4uLi4uLi4uSi5zIFNhdWVya3JhdXQuLi4uLkp3WiBMZWdvbGFzLi4uLi4uLi5KLloKTHlhLi4uLi4uLi4uLi4uSi5UIEFscGhhLi4uLi4uLi4uLkouUyBIb3VzZWhvbGRlci4uLi5KLk4gVmFtcGlyZS4uLi4uLi4uSndTCkplaG92YS4uLi4uLi4uLkouUyBFbGJlcmV0Li4uLi4uLi5Kd1MgUmF2ZW50aHJvbmUuLi4uSi5OIExhY3JpLi4uLi4uLi4uLkouUwpMZWliaS4uLi4uLi4uLi5Kd20gR3JpbW1ib3JuLi4uLi4uLi5tIEx3YXhhbmEuLi4uLi4uLkoubSBCYW1idWxrby4uLi4uLi5KLk0KS29iYXlhc2hpLi4uLi4uSi5NIE1hbmRyYWdvbi4uLi4uLkouSCBNb3Jnb3RoLi4uLi4uLi5Kd1IgQW1hcnlsbGlzLi4uLi4uSndSCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJZGxld2VsdG1laXN0ZXIgKEFuYXRvbCwgIDguIEZlYiAyMDAzLCAwODo0NToyMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0NDY4NTcwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDQ2ODU3MDEKSGFjaCBqYS4uLiBmcnVlaGVyLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBJZGxld2VsdG1laXN0ZXIgKE1hbmRyYWdvbiwgIDguIEZlYiAyMDAzLCAwOToxMjo0NCk6Cn4jISBybj1BbmF0b2wgcnQ9MTA0NDY5MDMyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDQ2ODU3MDEKJ0ZydWVoZXInIHdhciBuYWNodHMgbmllbWFuZCBlaW5nZWxvZ2d0LCB3ZWlsIGtlaW5lciBuZSBGbGF0cmF0ZSBoYXR0ZSAuLi4uCmFscyBlaW56aWdlciBpbSBNdWQgenUgc2VpbiBwYXNzaWVydCBkb2NoIGhldXRlIGhvZWNoc3RlbnMgbWFsIFpvb2ssIHdlbm4gZXIKYWxsZSBhbmRlcmVuIGF1c3NwZXJydCA7LSkKCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSWRsZXdlbHRtZWlzdGVyIChNdXBmZWwsICA4LiBGZWIgMjAwMywgMTI6MjY6MTcpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNDQ2OTE5NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0Njg1NzAxCkJpdHRlPyAiZnJ1ZWhlciIgd2FyZW4gbmFjaHRzIGFsbCBkaWUgU3R1ZGVudGVuIGVpbmdlbG9nZ3QsIGRpZSBadWdhbmcgenUKQ0lQLVBvb2xzIHUuYWUuIGhhdHRlbi4gWi5iLiBpY2ggOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWRsZXdlbHRtZWlzdGVyIChPcmt0b2V0ZXIsICA4LiBGZWIgMjAwMywgMTI6Mjg6NTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDQ2ODU3MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0Njg1NzAxClRzdHN0cy4uIG11c3N0IGR1IGRlaW5lbiBad2VpdGkgc28gYmxvc3Mgc3RlbGxlbj8gCgpPcmtULCBncmluc2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSWRsZXdlbHRtZWlzdGVyIChHcmltbWJvcm4sICA4LiBGZWIgMjAwMywgMTI6MzY6NDQpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNDQ3MDM3MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0Njg1NzAxCk1laW5lbSBad2VpdGllIGhhYmUgaWNoIGF1cyBndXRlbSBHcnVuZCB2b3IgbGFuZ2VyIFplaXQgZGFzIFBhc3N3b3J0CndlZ2dlbm9tbWVuLiBVbmQgYWJnZXNlaGVuIGRhdm9uOiBtaXIgZmFsbGVuIG5vY2ggaW0gRGVsaXJpdW0gYmVzc2VyZSBOYW1lbgplaW4gYWxzIGVpbiBzY2h3dWxlcyAiQmFieWJsdWUiLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBJZGxld2VsdG1laXN0ZXIgKE11cGZlbCwgIDguIEZlYiAyMDAzLCAxMjozODoyNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0NDcwNDIwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDQ2ODU3MDEKLi4uaXQncyBhbGwgb3ZlciBub3csIGJhYnlibHVlLi4uCgpIZXksIGRhcyBpc3QgS1VMVFVSISA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IElkbGV3ZWx0bWVpc3RlciAoQmllbGVmZWxkLCAgOC4gRmViIDIwMDMsIDEyOjM5OjA2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ0NzA0MjA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDY4NTcwMQpEdSBtZWluc3QgTmFtZW4gd2llICJoYW5kam9iIj8gOikKCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IElkbGV3ZWx0bWVpc3RlciAoR3JpbW1ib3JuLCAgOC4gRmViIDIwMDMsIDEyOjQzOjIwKToKfiMhIHJuPUJpZWxlZmVsZCBydD0xMDQ0NzA0MzQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDY4NTcwMQpOZWluLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBJZGxld2VsdG1laXN0ZXIgKEFuYXRvbCwgIDguIEZlYiAyMDAzLCAxMzowMTowNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0NDcwNDYwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDQ2ODU3MDEKSXN0IEJhYnlibHVlIG5pY2h0IGVpbiBLYXJhdGVza3JpcHRraWRkaWU/IER1IHdhcnN0IHZlcm11dGxpY2ggYWxsZWluZSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTml4IExvcz8gKFJvbGFuZCwgIDkuIEZlYiAyMDAzLCAwMTo1NjoxNyk6CgpOaXggbG9zCkxhbmd3ZWlsCkFydGlrZWwgc2NocmVpYgoKc28gZmVkZGlzY2gKClJvKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5peCBMb3M/IChHcmltbWJvcm4sICA5LiBGZWIgMjAwMywgMTA6MDA6MDgpOgp+IyEgb249QmFtYmkgb3Q9MTA0NDc4MTEyOCBvZz1kaXNrdXNzaW9uCn4jISBybj1Sb2xhbmQgcnQ9MTA0NDc1MjE3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDQ3NTIxNzcKQWxzbyBuZWluLCBzbyBnZWh0IGRhcyBuaWNodC4gV2VubiBEdSBlaW5lbiBBcnRpa2VsIHNjaHJlaWJzdCwgZGFtaXQgd2FzIGluCmRlciBNUEEgc3RlaHQsIGRhbm4gbXVzc3QgRHUgYXVjaCBpcmdlbmR3aWUgYmV3aXJrZW4sIGRhc3MgTGV1dGUgYW50d29ydGVuLgpadW0gQmVpc3BpZWwgbXVzc3QgRHUgZWluIHByb3Zva2FudGVzIFRoZW1hIGFuc2NobmVpZGVuLgpUaGVtZW4gZ2lidCBlcyB6dXIgR2VudWVnZSB1bmQgZGllIG1laXN0ZW4gd3VyZGVuIHNjaG9uIHppZyBtYWwgb2huZSBFcmdlYm5pcwpkdXJjaGdla2F1dC4gTmljaHRzZGVzdG90cm90eiB3aXJkIGVzIGltbWVyIHdpZWRlciBEaXNrdXNzaW9uZW4gdW5kIHRvbGxlClBvcGNvcm5hcnRpa2VsIGdlYmVuLCB3ZW5uIER1IGVzIG51ciBnZXNjaGlja3QgYW5zdGVsbHN0LgoKTmVobWVuIHdpciBlaW5mYWNoIG1hbCBkYXMgVGhlbWEgKnd1ZXJmZWwqIC4uLiBTdXBlcnNlaGVyLgpTY2hyZWliIGVpbmZhY2gsIGRhc3MgRHUgZXMgdG9sbCBmYWVuZGVzdCwgd2VubiBlbmRsaWNoIG1hbCBlaW4KU3VwZXJzZWhlcnN0YXR1cyBlaW5nZWZ1ZWhydCB3dWVyZGUuClNjaHJlaWJlIGVpbmlnZSB2b2VsbGlnIGFic3RydXNlIEZvcmRlcnVuZ2VuIGhpbi4KTmVobWVuIHdpciBtYWwgZm9sZ2VuZGU6Ci0gU3VwZXJzZWhlciBzb2xsdGVuIGthbXBmc3RhZXJrZXIgc2Vpbi4gSWhyZSBXYWZmZW5za2lsbHMgc29sbHRlbiBkb3BwZWx0IHNvCmhvY2ggc2Vpbi4KLSBTdXBlcnNlaGVyIHNvbGx0ZW4gamVkZSBad2VpaGFuZHdhZmZlIHdpZSBlaW5lIEVpbmhhbmR3YWZmZSB6dWVja2VuIGtvZW5uZW4Kb2RlciBlaW5lIEVpbmhhbmR3YWZmZSB3aWUgZWluZSBad2VpaGFuZHdhZmZlIChtaXQgZ2VnZWJlbmVuZmFsbHMgZXJob2VodGVyCldDKS4KLSBTdXBlcnNlaGVyIHNvbGx0ZW4gc2ljaCB6dSBGcmV1bmRlbiB0ZWxlcG9ydGllcmVuIGtvZW5uZW4uCi0gU3VwZXJzZWhlciBzb2xsdGVuIEdpbGRlbmZhZWhpZ2tlaXRlbiByZW1vdGUgZWluc2V0emVuIGtvZW5udGVuLiBaLkIuIHJoZWlsZQpmdWVyIEtsZXJpa2VyIG9kZXIgcmNoYW9zYmFsbCBmdWVyIENoYW90ZW4uCi0gU3VwZXJzZWhlciBzb2xsdGVuIG1pdCBYJSBXYWhyc2NoZWlubGljaGtlaXQgYmVpIGVpbmVtIGRpZSgpIGFuc3RhdHQgZGVzClRvZGVzIGVpbmUgVm9sbGhlaWx1bmcgYmVrb21tZW4uCi0gLi4uCgpXZW5uIER1IGdsZWljaCBub2NoIG1pdCBNYXRzY2ggc2NobWVpc3NlbiB3aWxsc3QsIGRhbm4gc2NocmVpYnN0IER1IHZpZWxsZWljaHQKbm9jaCwgZGFzcyBkaWUgZG9vZmVuLCB2b2VsbGlnIHVlYmVyem9nZW5lbiBNb25zdGVyIHZvbiBNYWdpZXIgWCBkYXMgYWJlcgpuaWNodCB3aWVkZXIgZ2xlaWNoIGFsbGVzIGFiZmFuZ2VuIHNvbGx0ZW4gb2RlciBkYXNzIGRhcyBuaWNodCBmdWVyCkthZW1wZmVyL1phdWJlcmVyL1RhbmppYW4vS2F0emVua3JpZWdlciBnZWx0ZW4gc29sbCwgd2VpbCBkaWUgZWggdmllbCB6dQpzdGFyay9zY2h3YWNoL2Jla2lmZnQvaGFhcmVuZCBzaW5kLgoKTWl0IGVpbiBiaXNzbCBHbHVlY2sgYW50d29ydGV0IGplbWFuZCB3aWUgaWNoLCBBbmF0b2wsIENhZHJhY2ggb2RlciBzb25zdCBlaW4KRGVeaHdlaXNlciBNZW5zY2ggYXVmIERlaW5lbiBBcnRpa2VsIHVuZCBzY2hvbiBrYW5uc3QgRHUgUG9wY29ybiBob2xlbiB1bmQKRGljaCB1ZWJlciAiRGVpbiIgV2VyayBmcmV1ZW4uCgpNZkcsIEJhbWJpLgoKUFMuIEZ1ZXIgZmVobGVuZGUgUHVua3RlIHVuZCB1bmdlbmF1IHdpZWRlcmdlZ2ViZW5lIEZlaW5oZWl0ZW4sIHNvd2llIGZ1ZXIgZGllCkJlaXNwaWVsZSB3aXJkIGtlaW5lIEhhZnR1bmcgdWViZXJub21tZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5peCBMb3M/IChDcm9mdCwgIDkuIEZlYiAyMDAzLCAxMDo1Mzo0Myk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0NDc4MTIwOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDQ3NTIxNzcKTW9lbnNjaCBHcmltbWJvcm4uICBEdSBrYW5uc3QgZG9jaCBuaWNodCBlaW5mYWNoIHNvIGVpbmUgdG9sbGUgRGlza3Vzc2lvbnMtCmdydW5kbGFnZSBuYWNoIFNjaG1hcnJuIHZlcmxlZ2VuLiAgRGFzIGlzdCBkb2NoIGVpbiBwcmltYSBBbmZhbmcgdW0KcmVnZWxtYWVzc2lnZXIgUG9wY29ybmFydGlrZWwgenUgZXJ6ZXVnZW4uICBVbmQgZHUgdW50ZXJncmFlYnN0IGRhcyBnYW56ZQplZGxlIEFuc2lubmVuIHVuZCB2ZXJsZWdzdCBlaW5mYWNoLiAgU2NoYWRlLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTml4IExvcz8gKE5pYmVsLCAgOS4gRmViIDIwMDMsIDEyOjM4OjEyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ0NzgxMjA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDc1MjE3NwpEYXMgc3RpbW10IHNvIG5pY2h0LiBEZXIgZXJzdGUgTWVnYXNjaG1hcnJuYXJ0aWtlbCB3YXIgYXVjaCBuaWNodCBncmFkZQpnZWhhbHR2b2xsLCB0cm90eiBhbGxlbSBzaW5kIGRhcmF1cyBtaXR0bGVyd2VpbGUgdWViZXIgNDAwMDAgUmVzIAplbnRzdGFuZGVuIDotKQogIC0gTmliZWwKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOaXggTG9zPyAoVmVjdG9yLCAgOS4gRmViIDIwMDMsIDEzOjM3OjIyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ0NzgxMjA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDc1MjE3NwpBbHNvIEJhbWJpIGljaCBlcmtsYWVyIGRpciBkYXMgbm9jaG1hbDoKClNvd2VpdCBpY2ggbWljaCBlcmlubmVyLCBnYWIgZXMgbmllIGRpZSBGb3JkZXJ1bmdlbiwKZGFzcyAiU3VwZXJzZWhlciIgZWluIFBsdXMgYW4gS2FtcGZrcmFmdCBiZWtvbW1lbiwKb2RlciBiZXNvbmRlcmUgR2lsZGVuZmFlaGlna2VpdGVuIGJlaGVycnNjaGVuIHNvbGxlbi4KRXMgZ2luZyBlaW56aWcgdW5kIGFsbGVpbiB1bSBkaWUgU2NoYWZmdW5nIGVpbmVyIG5ldWVuCkViZW5lLCBhdWYgZGllIG51ciBTZWhlciBhYiBlaW5lciBnZXdpc3NlbiBMZXZlbAp6dWdyZWlmZW4ga29lbm5lbiAoYW5hbG9nIHp1IC1tYWdpZXIvLWVyem1hZ2llcikuCgpNYW4gdWViZXJsZWdlIHNpY2ggZWluZmFjaDogV2FydW0gZ2lidCBlcyBkaWUgRWJlbmUKLXNlaGVyID8gR2VuYXUsIHdlaWwgU2VoZXIgaW0gTm9ybWFsZmFsbCBhbmRlcmUgVGhlbWVuCnp1IGRpc2t1dGllcmVuIGhhYmVuIGFscyBBYmVudGV1cmVyIHVuZCBJbmZvcyB1ZWJlciAKc3BlemllbGxlIEl0ZW1zIG9kZXIgUGFyYWxsZWx3ZWx0ZW4gYXVzenV0YXVzY2hlbiBoYWJlbiwKZGllIG5pY2h0IHVuYmVkaW5ndCBuYWNoIC1hbGxnZW1laW4gZ2Vob2VyZW4uClp1IGVpbmVyIFplaXQsIGluIGRlciBkYXMgRWJlbmVuc3lzdGVtIGVyZGFjaHQgd3VyZGUsCndhciBlaW4gU2VoZXIgZWluIFNlaGVyLCBhbGxlIGhhdHRlbiBpbiBldHdhIGRlbiBzZWxiZW4KV2lzc2Vuc3N0YW5kLCBkaWUgaG9laGVybGV2ZWxpZ2VuIFNlaGVyIChsdmwyNykgd2FyZW4gCmViZW4gZGllLCBkaWUgZGFzIE1ldHplbG4gZXR3YXMgaW50ZW5zaXZlciBiZXRyaWViZW4gaGFiZW4sCmFscyBkaWUgYW5kZXJlbiAobHZsMjIpLgoKRHVyY2ggZGllIGdld2FjaHNlbmUgR2VzYW10Z3JvZXNzZSBkZXMgTXVkIGlzdCBkaWVzZQpHbGVpY2hoZWl0IG5pY2h0IG1laHIgZ2VnZWJlbiwgZXMgZ2lidCB2aWVsZSBXZWdlIFNlaGVyCnp1IHdlcmRlbiwgdW5kIGVpbmVtIG5ldWVuIFNlaGVyIHNpbmQgdmllbGUgR2ViaWV0ZSBkZXMgCk1vcmdlbmdyYXVlbiB1bmJla2FubnQsIGVyIHdlaXNzIHZpZWxlIFRyaWNrZSwgS25pZmZlIHVuZCAKVGVjaG5pa2VuIG5vY2ggbmljaHQuCgpFaW5lIHZlcm51ZW5mdGlnZSBHcmVuemUgd2FlcmUgbWVpbmVyIEFuc2ljaHQgbmFjaCB1bQpTcGllbGVybGV2ZWwgNzUtODAtODUsIG9iIGRlciBTdGF0dXMgZGFubiBTdXBlcnNlaGVyLCBFcnpzZWhlciwKV2VpdHNlaGVyIG9kZXIgRmVybnNlaGVyIGhlaXNzdCBpc3QgKG1pciBwZXJzb2VubGljaCkKc293YXMgdm9uIGVnYWwuIFdlbm4gbWFuIGF1ZiBkaWUgZW50c3ByZWNoZW5kZSBMZXZlbCBlcmhvZWh0Cnd1ZXJkZSBlaW4gdGVpbGUgbWl0IHZvbiBNZXJsaW4gcmVpY2hlbiwgZGVyIGVpbmVuIHVlYmVyIGRpZSAKbmV1ZSBFYmVuZSBpbmZvcm1pZXJ0LCB3ZWdlbiBtaXIgYXVjaCBlaW4gRWNob2FsbAoieHh4IHd1cmRlIGluIGRlbiBLcmVpcyBkZXIgRXJ6c2VoZXIgYXVmZ2Vub21tZW4iCgpBYmVyIGRhcyB3YWVyZSBkb2NoIG5vY2htYWwgZWluIHNjaG9lbmVzIFppZWwsIGRhc3MgZXMgc2ljaApsb2hudCB6dSBlcnJlaWNoZW4sIGRlbiB3ZWxjaGVzIEVyZm9sZ3NlcmxlYm5pcyBoYXQgbWFuIGRlbm4KYWxzIEVyc3RpZXNlaGVyIG5vY2ggYXVzc2VyIHZvbGxlbiBTdGF0cyB1bmQgdm9sbGVyIEZsdWNodC0KcmljaHR1bmcuIEZydWVoZXIgd2FyIGRhcyBTcGllbCBtaXQgZGVyIFNlaGVyd2VyZHVuZyB3aXJrbGljaAp6dSBlbmRlLCBlcyBnYWIgd2VuaWcgbmV1ZXMgenUgc2VoZW4sIGRhcyBTcGllbCB3YXIgYXVzZ2VyZWl6dC4KRGFzIGlzdCBqYSBudW4gaGV1dGUgbmljaHRtZWhyIHNvLCBlaWdlbnRsaWNoIGdlaHQgZGFzIFNwaWVsCmFscyBTZWhlciBlcnN0IGxvcyA6bykKCkFsc286IEhlciBtaXQgZGVyIC1lcnpzZWhlci1lYmVuZSwgZGFtaXQgbWFuIGRvcnQgZGFubiBNam9lbG5pciwKc2Nod2FyemUgU2NoZWliZW4gdW5kICBQYW56ZXJkcmFjaGVudGVpbGUgYW5iaWV0ZW4ga2FubiBvZGVyCmRvY2ggbWFsIGdhbnogdmVyc2NoYWVtdCBJbmZvcyB1ZWJlciBUSSBvZGVyIGRpZSBTZWVsZW5rdWx0ZS1RdWVzdAplcmZyYWd0LCBvZGVyIHNpY2ggZWluZmFjaCBhdWNoIG51ciB0b2xsIHZvcmtvbW10LCBkYXNzIG1hbiAKYXVmIGRpZSBFYmVuZSBkcmF1ZiBkYXJmIDopClVuZCBiZWkgZGVtIFNpbm4gdW5kIFp3ZWNrbWFlc3NpZ2tlaXQgZWluZXIgc29sY2hlbiBFYmVuZSwKZGllIGphIGltIFByaW56aXAgbm9jaG1hbCBkaWUgU3BpZWxlcnNjaGFmdCB0cmVubnQsIGFyZ3VtZW50aWVyZQppY2ggZWluZmFjaCBtaXQgZGVuIEViZW5lbnBhYXJlbiAoYWxsZ2VtZWluL3NlaGVyKSB1bmQgKG1hZ2llci8KZXJ6bWFnaWVyKSwgaGllciBzaWVodCBqYSBhdWNoIGplZGVyIGVpbiwgZGFzcyBkaWVzZSBFYmVuZW4KbWl0IGJlc2NocmFlbmt0ZW4gWnVncmlmZnNyZWNodGVuIG1laHIgYWxzIFNpbm52b2xsIGlzdC4KCi0tVmVjdG9yLS0KCgoKCgoKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTml4IExvcz8gKFpvb2ssICA5LiBGZWIgMjAwMywgMTM6NDE6MTgpOgp+IyEgcm49VmVjdG9yIHJ0PTEwNDQ3OTQyNDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NzUyMTc3CkR1IHZlcmdpc3N0ICItZ29ldHRlciIuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTml4IExvcz8gKE9ya3RvZXRlciwgIDkuIEZlYiAyMDAzLCAxNToyMzozOSk6Cn4jISBybj1ab29rIHJ0PTEwNDQ3OTQ0Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NzUyMTc3CkRpZSBoYXQgZG9jaCBub2NoIGRlbiBCZWluYW1lbiAiQWxsZWludW50ZXJoYWx0ZXIiIG9kZXI/CgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFtUZWFtOiBLYW1wZnNjaHdlaW5lXSAoVGVuYXIsICA5LiBGZWIgMjAwMywgMTc6MDg6NTYpOgp+IyEgcm49QWxjaW5hIHJ0PTEwNDQ2Mzg1NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NjM4NTQyCk1pc3QsIGljaCB3dXNzdGUgZG9jaCBkYXMgZGFzIFJhc2llcndhc3NlciBuaXggbWVociB0YXVndC4KCiBUZW5hciwgZmFsc2NoIGJlcmF0ZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5peCBMb3M/IChFbGRhcm9uLCAgOS4gRmViIDIwMDMsIDE3OjE1OjQ2KToKfiMhIHJuPVZlY3RvciBydD0xMDQ0Nzk0MjQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDc1MjE3NwpEdSBoYXN0IGRpZSBQbGF0aW4tR2VsZGthcnRlIHZlcmdlc3Nlbi4uLgoKRWxkYXJvbiwgaW4gZGVyIHJpY2h0aWdlbiBSdWJyaWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5peCBMb3M/IChPcmt0b2V0ZXIsICA5LiBGZWIgMjAwMywgMTc6MTg6MjYpOgp+IyEgcm49RWxkYXJvbiBydD0xMDQ0ODA3MzQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDc1MjE3NwpBdWNoIG5pY2h0IHVlYmVsIGZ1ZXIgZGllIEVyenNlaGVyIHdhZXJlIG5hdHVlcmxpY2gsIHdlbm4gc2llIGJlaSBibG9ja2VuZGVuCk5QQyBkYW5uIGxvY2tlciBkaWUgUGxhdGlua2FydGUgenVlY2tlbiB1bmQgc2FnZW46ICJCdWNoIGRpciBkaWUgMTAwMDBrCk11ZW56ZW4gYWIgZGllIGljaCB2ZXJ0YW5rZW4gZ2VoZW4gd3VlcmRlIHVtIGRpZSB1bXp1aGF1ZW4gdW5kIGxhc3MgbWljaApkdXJjaCwgaXN0IGdlc3VlbmRlciBmdWVyIGRpY2giIHVuZCBkZXIgTlBDIHNpZSBkYW5uIGF1Y2ggdGF0c2FlY2hsaWNoCmR1cmNobGFlc3N0Li4uLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5peCBMb3M/IChPcmt0b2V0ZXIsICA5LiBGZWIgMjAwMywgMTc6MTk6MDYpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNDQ4MDc1MDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NzUyMTc3CnNlbGJzdHJlcGx5cyBzaW5kIGRvb2YgYWJlciAxMDAwMGsgaXN0IGV0d2FzIHZpZWwuLi4gYWxzbyAxMGsgb2RlciAxMDAwMApzdWNodHMgZXVjaCBhdXMuLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5peCBMb3M/IChGb29iYXIsICA5LiBGZWIgMjAwMywgMTc6MjE6MTQpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNDQ4MDc1NDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NzUyMTc3Cldlbm4gRHUgZnVlciBlaW5lbiBkZXIgaGVya29lbW1saWNoZW4gQmxvY2tlciBoaWVyIHRhbmtlbiBnZWhzdCwgZmxpZWdzdCBEdQpob2ZmZW50bGljaCBzb2ZvcnQgd2llZGVyIHZvbiBkZXIgU3VwZXJTZWhlci1FYmVuZSBydW50ZXIuIDtvKQoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBOaXggTG9zPyAoR25vbWUsICA5LiBGZWIgMjAwMywgMTg6MjI6MzIpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNDQ4MDc1NDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NzUyMTc3CjEwSyBmdWVyIGVpbmVuIGJsb2NrZXI/Cndhbm4gaGFzdCBkdSBkYXMgbGV0enRlIG1hbCBnZW1ldHplbHQ/IG5vY2ggdm9yIG9kZXIgc2Nob24gbmFjaCBzY2hyb2VkZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBOaXggTG9zPyAoTWFuZHJhZ29uLCAgOS4gRmViIDIwMDMsIDE4OjQ2OjQxKToKfiMhIHJuPUdub21lIHJ0PTEwNDQ4MTEzNTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NzUyMTc3CkhvZmZlbnRsaWNoIG1vcmdlbiB1bmQgc2Nob24gbmFjaCBzY2hyb2VkZXIgLi4uLgoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOaXggTG9zPyAoQW5hdG9sLCAgOS4gRmViIDIwMDMsIDE5OjU4OjQ1KToKfiMhIHJuPVZlY3RvciBydD0xMDQ0Nzk0MjQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDc1MjE3NwoxLiBTY2hvbiAxOTk1IHd1cmRlIHVlYmVyIGVpbmUgd2VpdGVyZSBTcGllbGVyc3R1ZmUgdWViZXIgZGVtICJTZWhlciIKICAgZGlza3V0aWVydC4gVmllbGxlaWNodCBhdWNoIHNjaG9uIGZydWVoZXIsIGRhIGhhYmUgaWNoIGVzIG5vY2ggbmljaHQKICAgbWl0YmVrb21tZW4uIENvbnN1bHQgTVBBLgoKMi4gTmVubiBkYXMgS2luZCBuaWNodCAiRXJ6c2VoZXIiLiBOZW5uIGVzIGJpdHRlIG5pZSB3aWVkZXIgIkVyenNlaGVyIi4KICAgRWluIEVyem1hZ2llciBoYXQgdmllbGxlaWNodCBtZWhyIE1hY2h0IHVuZCBFeGtsdXNpdml0YWV0IGFscyBlaW4KICAgbm9ybWFsZXIgTWFnaWVyLCBlciBoYXQgYWJlciBhdWNoIG1laHIgUGZsaWNodGVuIHVuZCBWZXJhbnR3b3J0dW5nCiAgIGFscyBlaW4gTm9ybWFsbWFnaWVyLiBVbmQgRHUgd2lyc3QgbWlyIG5pY2h0IGVyemFlaGxlbiBrb2VubmVuLCBkYXNzCiAgIER1IGZ1ZXIgZGVuIFVlYmVyc2VoZXJzdGF0dXMgYmVzb25kZXJlIFBmbGljaHRlbiBoYWJlbiB3aWxsc3QuLi4gOikKCjMuIEZhZWhpZ2tlaXQgaXN0IG5pY2h0IGxldmVsYWJoYWVuZ2lnLiBNaXIgZmFsbGVuIHNwb250YW4gMi00IEZ1c3Nmb2VuZXIKICAgZWluLCBkaWUgdm9tIExldmVsIGhlciBiZXN0aW1tdCBTdXBlcmR1cGVyc2NoaW5rZW5rYWVzZXRvYXN0c2VoZXIgCiAgIHdhZXJlbiwgZGVuIER1cmNoYmxpY2sgYWJlciBuaWNodCB3aXJrbGljaCBoYWJlbi4gCgpEdSBoYXN0IERlaW5lIHBlcnNvZW5saWNoZSBFaW5zY2hhZXR6dW5nIHVlYmVyIGRpZSBRdWFsaXRhZXQgRGVpbmVyCktvbGxlZ2VuLiBOaW1tIHNpZSBhbHMgTWFzcyB3aWUgamVkZXIgYW5kZXJlIGRpZSBzZWluZSBhbHMgTWFzcyBuaW1tdC4KQWJlciB6d2luZydzIG5pY2h0IGluIGRpZSBNdWRsaWIuIERlbm4gZGFubiBoYXN0IER1IG5vY2ggcGVyZmVrdGVyZQpGUC1MaXN0ZW4sIEtpbGxzdHVwc2xpc3RlbiwgS29tcGxldHRsb2VzdW5nZW4gdW5kIEtvbXBlbmRpZW4uCgpBbmF0b2wgKG9oLCBkYXMgd2FyIGluIHNjaG1hcnJuPyBBY2ggZGFubiBpc3RzIGVoIGVnYWwuLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOaXggTG9zPyAoR3JpbW1ib3JuLCAgOS4gRmViIDIwMDMsIDIwOjAxOjIxKToKfiMhIHJuPUFuYXRvbCBydD0xMDQ0ODE3MTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDc1MjE3NwoxLiBOZWluLCB2b3IgOTUgd3VyZGUgdWViZXIgZWluZSB3ZWl0ZXJlIFNwaWVsZXJzdHVmZSB1ZWJlciBkZW0gIlNwaWVsZXIiIAogICBkaXNrdXRpZXJ0LiBCencuIHVlYmVyIE1lcmttYWxlIGRlcnNlbGJlbi4gCgoyLiAiT2JlcmRlcHAiIG9kZXIgIlN0cmViZXIiIHdhZXJlbiBkb2NoIGJyYXVjaGJhcmUgVm9yc2NobGFlZ2UuCgozLiBEaWUgR3VlbHRpZ2tlaXQgZGVzIFNwcnVjaGVzICJ3ZW0gR290dCBlaW4gQW10IGdpYnQsIGRlbSBnaWJ0IGVyIGF1Y2ggZGVuCiAgIFZlcnN0YW5kIGRhenUiIGlzdCBsYWVuZ3N0IHdpZGVybGVndC4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5peCBMb3M/IChWYW5pb24sICA5LiBGZWIgMjAwMywgMjA6MDg6NTMpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNDQ4MDc1NDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NzUyMTc3Ck5ldHQgd2FlciBkb2NoIGF1Y2gsIHdlbm4gbWFuIGRpcmVrdCB2b24gZGVyIEdvbGRrYXJ0ZSBydW50ZXJ0YW5rZW4ga2FubiwKb2Rlcj8gRnVlciBqZWRlbiBTY2hhZGVuc3B1bmt0IHdlcmRlbiAxMCBNdWVuemVuIHZvbiBkZXIgS2FydGUgYWJnZXpvZ2VuLiBFcnN0Cndlbm4gZGllIEthcnRlIGFsbGUgaXN0LCBnaWJ0IGVzIGVjaHRlbiBTY2hhZGVuIDopIAoKViosIHNjaG1hcnJudC4KUFM6IFBsYXRpbmthcnRlIHJlZmxla3RpZXJ0IG5hdHVlcmxpY2ggZHVfZGFtYWdlKCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE5peCBMb3M/IChCYW1iaSwgIDkuIEZlYiAyMDAzLCAyMDowOToyNSk6Cn4jISBybj1WYW5pb24gcnQ9MTA0NDgxNzczMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDQ3NTIxNzcKQXJnaC4gRGFzIGJyYXVjaCBpY2ggYXVjaC4gV2VsY2hlcyBMZXZlbCBtdXNzdGVuIG1laW5lIFNlaGVyIG5vY2htYWwgaGFiZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBOaXggTG9zPyAoVmFuaW9uLCAgOS4gRmViIDIwMDMsIDIwOjExOjMzKToKfiMhIHJuPUJhbWJpIHJ0PTEwNDQ4MTc3NjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0NzUyMTc3Ck1heGludCAtIDJXMjAgdmllbGxlaWNodC4gTWFsIHNlaGVuLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5peCBMb3M/IChPcmt0b2V0ZXIsICA5LiBGZWIgMjAwMywgMjA6MTM6NDcpOgp+IyEgcm49QmFtYmkgcnQ9MTA0NDgxNzc2NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDQ3NTIxNzcKQWxzbyBkYXMgaXN0IGRvY2ggZ2FueiBlaW5mYWNoIEJhbWJpOgpBbiB1bmdlcmFkZW4gVGFnZW4sIHdlbm4gZGVyIFRhZyBuaWNodCBnZXJhZGUgZHVyY2ggZWluIHZpZWxmYWNoZXMgdm9uIDMKVGVpbGJhciBpc3QsIG11c3N0IGR1IG51ciBkaWUgU3VtbWVyIGFsbGVyIGFud2VzZW5kZW4gU3BpZWxlcmxldmVsLyAoYW56YWhsCmFud2VzZW5kZXIgU3BpZWxlciAtIGRlbSBMZXZlbCBkZXMgaG9lY2hzdGVuIGFud2VzZW5kZW4gTWFnaWVyZXMpKm1hbCBkZXIKQW56YWhsIGRlaW5lciBGUCBoYWJlbi4gQW4gdW5nZXJhZGVuIFRhZ2VuIGRpZSBkdXJjaCBlaW4gdmllbGZhY2hlcyB2b24gZHJlaQp0ZWlsYmFyIHNpbmQuLi4gb2gsIGljaCBob2VyZSBlcyBnaWJ0IGVzc2VuLi4gc2NoYWRlLCBqZXR6dCB3aXJzdCBkdSBlcyB3b2hsCm5pZSBtZWhyIGVyZmFocmVuLi4uCgpPcmtULCBlc3NlbiBnZWhlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOaXggTG9zPyAoTXVwZmVsLCAxMC4gRmViIDIwMDMsIDAwOjE5OjU1KToKfiMhIHJuPVZlY3RvciBydD0xMDQ0Nzk0MjQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDc1MjE3NwpBdXMgZWluZW0gQXJ0aWtlbCB2b24gWWVuZGkgdm9tIDE4LjkuMTk5NSAoISk6Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KSWNoIGRhY2h0ZSBpbW1lciwgU2VoZXIgc29sbHRlbiB3YXMgZ2FueiBiZXNvbmRlcmVzIHNlaW4uIFNpbmQgZGllIG5pY2h0CmtvbnppcGllcnQgd29yZGVuIGFscyAiVGhlIHByb3VkLCB0aGUgZmV3LCB0aGUgU2VoZXIiPwoKSmVkZXNtYWwsIHdlbm4gaWNoIGR1cmNoIGRpZSBtcGEgYmxhZXR0ZXJlLCBzdGVoZW4gaW4gZGVyIFJ1YnJpayAic3R1ZmVuIgp3aWVkZXIgZWluIGhhbGJlcyBEdXR6ZW5kIE5ldXNlaGVyIGRyaW4uIERpZXNlcyBBdWZ0cmV0ZW4gdm9uCkhvY2hzdHVmZW5zcGllbGVybiBpc3QgaW5mbGF0aW9uYWVyLCB1bmQgSW5mbGF0aW9uIGVudHdlcnRldC4KCldlciBuaW1tdCBkZW5uIGhldXR6dXRhZ2UgZWluZW4gU2VoZXIgbm9jaCBlcm5zdD8gV2VubiBpY2ggU2VoZXIgcnVtbGF1ZmVuCnNlaGUsIGRpZSAyIFRhZ2UgYWx0IHNpbmQgdW5kIG5pY2h0IGFsbGVpbmUgdm9uIFBWIGF1ZiBkaWUgSG9jaGViZW5lIGZpbmRlbiwKZGFubiBrb2VubnRlIGljaCBzY2hyZWllbiEgV2FzIHNvbGwgZGFzIG5vY2g/CgpIaWVybWl0IHBsYWVkaWVyZSBpY2ggZnVlciBlaW5lIEFuaGVidW5nIGRlciBLcml0ZXJpYSB6dXIgRXJsYW5ndW5nIGRlcwpTZWhlcnN0YXR1czoKCiBvIEFsbGUgUXVlc3RzLCBkaWUgenV1bSBaZWl0cHVua3QgZGVyIENoYXJha3RlcmVyc2NoYWZmdW5nIGFuZ2VzY2hsb3NzZW4KICAgd2FyZW4sIHVuZCBkZXMgd2VpdGVyZW4KIG8gbWluZGVzdGVucyAxMG1pby4gRVAuCgooSWNoIHdlaXNzLCBNZXR6ZWxuIGlzdCBzdHVtcGYsIGFiZXIgd2VubiBtYW4gZGllIFF1ZXN0cyBoYXQsIHNvbGx0ZSBtYW4KIHNvd2llc28gc2Nob24gZGFzIGVpbmUgb2RlciBhbmRlcmUgTWlsbGlvZW5jaGVuIGVycnVuZ2VuIGhhYmVuLikKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgprbGluZ3QgZXJzdGF1bmxpY2ggYWt0dWVsbCwgb2Rlcj8gOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOaXggTG9zPyAoTXVhZGliLCAxMC4gRmViIDIwMDMsIDEwOjQ4OjA4KToKfiMhIHJuPU11cGZlbCBydD0xMDQ0ODMyNzk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDc1MjE3Nwp3YXMgaXN0IGFuIDEwIG1pbGxpb25lbiBlcHMgc28gYmVzb25kZXJzPyBkYXMgaXN0IGRvY2ggbnVyIGVpbiBtaW5pbWFsZXIsIGthdW0Kd2Focm5laG1iYXJlciB1bnRlcnNjaGllZCB6dSAxIG1pbGxpb24gZXBzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTnVjbGVvU1RPUCAoQmFtYnVsa28sIDEwLiBGZWIgMjAwMywgMTc6MjU6MjkpOgp+IyEgcm49QW50aGVhIHJ0PTEwNDQ4ODczOTYgcmc9d3d3Cn4jISB0aWQ9MTA0NDg4NzM5NgpHcm9lZWVlZWVlZWVobCEgOi0pCkthdWZ0IGplbWFuZCBzb3dhcz8KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgKEZvb2JhciwgMTAuIEZlYiAyMDAzLCAxNzozMjo0MSk6CiBGcm9tOiAiSm9lcmcgVyBNaXR0YWciIDxKb2VyZy5NaXR0YWdAV2ViLkRlPgogTmV3c2dyb3Vwczoga2EudmVya2VocgogU3ViamVjdDogPT9pc28tODg1OS0xP1E/UmU6X1N0PUY2cmZha3Rvcl9HZXNwcj1FNGNoX2luX1N0cmE9REZlbmJhaG5lbj89CiBEYXRlOiBUdWUsIDEyIE5vdiAyMDAyIDAwOjU0OjAwICswMTAwCiBNZXNzYWdlLUlEOiA8YXFwZzFmJDJtdiQwNSQxQG5ld3MudC1vbmxpbmUuY29tPgoKIE5vcmJlcnQgSHVldHRpc2NoIHdyb3RlOgogPj4gRGllc2VzIGV3aWdlIEdlcXVpZXRzY2hlLCBHZWtsaW5nZWwsIEdlaHVwZSwgR2Vtb3JzZSB1c3cuCiA+PiBnZWh0IHRpZXJpc2NoIGF1ZiBkZW4gU2Fjay4gSXJnZW5kd2FubiBuZWhtIGljaCBzbyBlaW5lbSBkYXMgRGluZyB3ZWcuCiA+PiBJY2ggbmVobSBlcyBpaG0gZWluZmFjaCB3ZWcuIFVuZCB6ZXJ0cmV0ZSBlcy4gSmF3b2hsLiBFaW5mYWNoIHNvLgogPiBUaXBwOiBiZWkgRWJheSBlaW4gZGVmZWt0ZXMgSGFuZHkga2F1ZmVuLCBkYW5uIGRlbSBQcm9iYW5kZW4gZGFzIEhhbmR5CiA+IHdlZ25laG1lbiwgdW5kIGFiZXIgZGFzIHNlbGJlciBnZWthdWZ0ZSB6ZXJ0cmV0ZW4uIEtvbW10IGd1dCBhbi4KID4gQWxsZXJkaW5ncyBhdWYgZGllIFVtc3RlaGVuZGVuIGFjaHRlbiwgZnVlciBlaW5nZXNjaGxhZ2VuZSBWb3JkZXJ6YWVobmUKID4gd2lyZCBuaWNodCBnZWhhZnRldC4KCiBFaW4gS29sbGVnZSwgZGVyIGhpZXIgQXJjaGl0ZWt0dXIgc3R1ZGllcnQoZSkgZXJ6YWVobHRlIG1pciwgd2llIGVpbgogUHJvZmVzc29yIG1pdCBkZXIgU2l0dWF0aW9uIHVtZ2luZy4gKE11c3Mgc28gZXR3YSB2b3IgendlaWVpbmhhbGIKIEphaHJlbiBnZXdlc2VuIHNlaW4uKQoKIE9ydDogZWluIGtsZWluZXIgU2VtaW5hcnJhdW0sIGFsc28gb2huZSBSZWRuZXJwdWx0IHVuZCBQb2Rlc3QuIEltCiBlcnN0ZW4gU3RvY2suIEZlbnN0ZXIgb2ZmZW4uCiBJbiBkZXIgZXJzdGVuIFJlaWhlIGtsaW5nZWx0IGVpbiBIYW5keSwgd2VsY2hlcyB1bmdsdWVja2xpY2hlcndlaXNlCiBhdWNoIG5vY2ggYXVmIGRlbSBUaXNjaCBsaWVndC4gRGVyIERvemVudCBncmVpZnQgLSBvaG5lIGRlbiBWb3J0cmFnIHp1CiB1bnRlcmJyZWNoZW4gLSB6dSwgd2lyZnQgbWl0IGVpbmVtIGxvY2tlcmVuIFNjaGxlbmtlciBkYXMgSGFuZHkgYXVzCiBkZW0gRmVuc3Rlciwgc2FndDogIlNjaGlja2VuIFNpZSBtaXIgZGllIFJlY2hudW5nIiB1bmQgbWFjaHQKIHVuZ2VydWVocnQgd2VpdGVyLgoKIFdhciB3b2hsIHNlaHIgZWZmZWt0aXYsIHp1bWluZGVzdCBoYXQgYmVpIGlobSBuaWUgd2llZGVyIGluIGRlcgogVm9ybGVzdW5nIGVpbiBIYW5keSBnZWtsaW5nZWx0LgoKIGp3bQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOdWNsZW9TVE9QIChCYW1idWxrbywgMTAuIEZlYiAyMDAzLCAxNzo0NToyNSk6Cn4jISBybj1CYW1idWxrbyBydD0xMDQ0ODk0MzI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDg4NzM5NgpIbW0uLi5pY2ggd29sbHRlIGRhcyBEaW5nIGthdWZlbiwgYWJlciBsZWlkZXIga29tbWVuIGRpZSBtaXQgZGVyIHByb2R1a3Rpb24KbmljaHQgbmFjaCA6LSkgCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTm9jaCBlaW4gTmV0ZGlnZXN0LCBhYmVyIGVpbiBHdXRlci4uLiAoTm9ubmUsIDEwLiBGZWIgMjAwMywgMjI6NTU6MDQpOgpWb3IgZWluaWdlbiBXb2NoZW4gaGFiIGljaCBiZWkgZWluZW0gb2VydGxpY2hlbiBQQy1GYWNoaGFuZGVsIGFuZ2VydWZlbiAKdW0gbWljaCB1ZWJlciBQcmVpc2UgZWluaWdlciBIYXJkd2FyZXRlaWxlIHp1IGluZm9ybWllcmVuLgoiSGllciBpc3QgZ2VyYWRlIHZpZWwgenUgdHVuLiBIYWJlbiBzaWUgenUgSGF1c2UgSW50ZXJuZXQ/IgooZGFzIGdhbnplPyBOdW4gR3V0LCBrb29wZXJhdGl2IGJsZWliZW4gdW5kIG1pdGRlbmtlbikgCiJBZWgsIGphPyIKIkRhbm4ga29lbm5lbiBzaWUgYXVjaCBhdWYgdW5zZXJlciA8ZW0gbGFuZz0iZW4tdXMiPndlYnNpdGU8L2VtPiBkaWUgClByZWlzZSBmaW5kZW4uIgoiQWVoLCBuZWluISBEYXJ1bSBydWZlIGljaCBhdWNoIGFuLiIKIldpZXNvLCAnbmVpbic/IgoiTWVpbiBCcm93c2VyIGxhZWR0IGlocmUgU2VpdGUgbmljaHQuIgoiRGFubiBtdWVzc2VuIHNpZSBpaHJlbiBCcm93c2VyIDxzdHJvbmcgbGFuZz0iZW4tdXMiPnVwZ3JhZGVuPC9zdHJvbmc+LiIKKGljaCBoYXR0ZSBlaWdlbnRsaWNoIHNjaG9uIEx1c3QgYXVmenVoYWVuZ2VuKQoiQWJlciBpY2ggaGFiZSBkaWUgbmV1ZXN0ZSBWZXJzaW9uIG1laW5lcyBCcm93c2Vycy4gQWxsZXIgbWVpbmVyIApCcm93c2VyIHVtIGdlbmF1IHp1IHNlaW4uIgoiLi4uPyBXaWVzbywgd2lldmllbGUgaGFiZW4gc2llIGRlbm4/IgoiQWVoLCB3ZWlzcyBuaWNodC4gSW5zZ2VzYW10IG9kZXIgbnVyIGF1ZiBkaWVzZW0gT1M/IgoiPG1pc3N0cmF1aXNjaD4uLi48L21pc3N0cmF1aXNjaD4iCiJOdW4gZ3V0LCB1bSBlaHJsaWNoIHp1IHNlaW4gaGFiIGljaCBkYW5uIGluIGVpbmVtIEphdmFzY3JpcHQgdW5kIApGbGFzaCBha3RpdmllcnQgdW5kIGRhcmFuIGxhZydzIHdvaGwuIgoiTmEgYWxzbyEiCiJOZWUsIGV1cmUgRmxhc2gtTmF2aWdhdGlvbiBpc3QgenV2aWVsIGZ1ZXIgbWVpbmVuIFByb3plc3NvciB1bmQgaWNoIAptdXNzdGUgPENUUi1BTFQtREVMPmVuIHVuZCBoYWIgenUgZGVuIGdlbGJlbiBTZWl0ZW4gZ2VncmlmZmVuLiIKIkRhbm4gc29sbHRlbiBzaWUgd2lya2xpY2ggZHJpbmdlbmQgbmV1ZXJlIEhhcmR3YXJlIGFuc2NoYWZmZW4uIgoiV3Vlc3N0ZW4gc2llIGVpbiBHZXNjaGFlZnQgaW4gZGVyIG5hZWhlcmVuIFVtZ2VidW5nIHdvIGljaCBtaWNoIHVlYmVyIApQcmVpc2UgaW5mb3JtaWVyZW4ga29lbm50ZT8iCiIuLi4iIDx0dXV0Pi4uLjx0dXV0Pi4uLjx0dXV0PgoKVW5kIHdpZWRlciBlaW4genVmcmllZGVuZXIgS3VuZGUuIDopCgpOb25uZSwga2ljaGVybmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmVzdWNoZXJpbiBpc3QgamV0enQgZWluZSBTZWhlcmluISAoQW50aGVhLCAxMS4gRmViIDIwMDMsIDEzOjE0OjM3KToKfiMhIHJuPU1lcmxpbiBydD0xMDQ0OTU5ODkxIHJnPXN0dWZlbgp+IyEgdGlkPTEwNDQ5NTk4OTEKSG0uLi4gQmVzdWNoZXJpbi4uLgpJcmdlbmR3aWUgdmVyd2FuZHQgbWl0IERhdWVyZ2FzdD8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQmFieWJsdWUsIDExLiBGZWIgMjAwMywgMTU6MzQ6MzIpOgp1ZWJlIFNodXRvLWp1amktdWtlCktlbm55IHRlaWx0IERpciBtaXQ6IGhlaGUKW1RvZDpMYXJzXSBFaW5lIHNjaHdlcmUgS3JhbmtoZWl0IGhhdCBnZXJhZGUgS2VubnkgdW1nZWJyYWNodC4KCnRzdHN0cwpCYWJ5Ymx1ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoR3JpbW1ib3JuLCAxMS4gRmViIDIwMDMsIDE1OjM1OjQ1KToKfiMhIHJuPUJhYnlibHVlIHJ0PTEwNDQ5NzQwNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ0OTc0MDcyClNjaGF1IGVpbmVyIGd1Y2ssIHVuc2VyIEthcmF0ZXNjcmlwdCBrYW5uIHNwcmVjaF5Ic2NocmVpYmVuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKFRodWZoaXIsIDExLiBGZWIgMjAwMywgMTU6MzU6NTEpOgp+IyEgcm49QmFieWJsdWUgcnQ9MTA0NDk3NDA3MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDQ5NzQwNzIKPiB1ZWJlIFNodXRvLWp1amktdWtlCgp3ZW5uIGRhIG1hbiBuaWNodCBkYXMgdWViZXNjcmlwdCB6dWdlc2NobGFnZW4gaGF0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMVyAoQW5hdG9sLCAxMS4gRmViIDIwMDMsIDE1OjM2OjI3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ0OTc0MTQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NDk3NDA3MgoidWViZSBTaHV0by1qdWppLXVraSIgLi4uIGRhcyBsYWVzc3QgUmF1bSBmdWVyIEludGVycHJldGF0aW9uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVsZmVuIHVuZCBzby4uLiAoR25vbWUsIDExLiBGZWIgMjAwMywgMTg6MDc6NTEpOgpEZWluIEZyZXVuZCBWZWN0b3IgdGVpbHQgRGlyIG1pdDogYWFoIGVzIGhhdCBnZXJlZ25ldCwgZGllIGFzdGxvZWNoZXIgc2luZApEZWluIEZyZXVuZCBWZWN0b3IgdGVpbHQgRGlyIG1pdDogZmV1Y2h0LCBtdXNzIG1hbCBlYmVuIHdlZyBeXgpEZWluIEZyZXVuZCBWZWN0b3Igd2lua3QgRGlyIGF1cyBkZXIgRmVybmUgenUuClZlY3RvciAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCltubyBtb3JlIHF1ZXN0aW9uc10KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBQYW50aGVyIGlzdCBjbGV2ZXIgKE1pcmlsLCAxMS4gRmViIDIwMDMsIDIxOjQ1OjE1KToKR2VyYWRlIGJlaW0gTVBBIExlc2VuOgpMb3RoYXIgTWF0dGhhZXVzIHVlYmVybmltbXQgZGVuIExvZXdlbmJyYWV1LUtlbGxlciBpbiBIYXNzZWxodWVubmUgKE9zdCkuCkRpZSBhbWVyaWthbmlzY2hlbiBUcnVwcGVuIGFuIGRlciBHcmVuemUgenVtIElyYWsgd2VyZGVuIHZvbiBlaW5lcgpnZWhlaW1uaXN2b2xsZW4gRHVlbm5zY2hpc3MtRXBpZGVtaWUgaGVpbWdlc3VjaHQuCkRlaW4gUGx1ZXNjaHBhbnRoZXIgc2NobGllc3N0IHNlaW5lIEF1Z2VuLCBzY2hudXJydCBub2NoIGVpbm1hbCB6dWZyaWVkZW4gdW5kCnNjaGxhZWZ0IGRhbm4gbGFuZ3NhbSBlaW4uCgpObyBDb21tZW50LgpNaXJpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcyBmdWVyIGVpbiBPUyBiaXN0IER1PyAoQW5hdG9sLCAxMi4gRmViIDIwMDMsIDEwOjU3OjI4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ1MDQwMDc5IHJnPXd3dwp+IyEgdGlkPTEwNDUwNDAwNzkKU2xhY2t3YXJlICphcmdoKiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXYXMgZnVlciBlaW4gT1MgYmlzdCBEdT8gKEVsZGFyb24sIDEyLiBGZWIgMjAwMywgMTE6NDc6MDYpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNDUwNDM4NDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDQwMDc5CkF1Y2ggU2xhY2t3YXJlLCB3b2JlaSBkYXMgaW1obyBkYXMgcG9zaXRpdnN0ZSBkZXIgbW9lZ2xpY2hlbiBFcmdlYm5pc3NlIGlzdC4KOi0pCgpFbGRhcm9uLCBpbW1lciBub2NoIGRlciBNZWludW5nOiBTaW1wbGljaXR5IGlzIGRpdmluZS4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhcyBmdWVyIGVpbiBPUyBiaXN0IER1PyAoRWxkYXJvbiwgMTIuIEZlYiAyMDAzLCAxMjowMjo0Nyk6Cn4jISBybj1BbmF0b2wgcnQ9MTA0NTA0Mzg0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNDAwNzkKU29sbHRlc3QgZHUgZG9jaCBhbGx6dSBmYXVsIHdlcmRlbjoKaHR0cDovL3d3dy50aGlua2dlZWsuY29tL2NhZmZlaW5lL2FjY2Vzc29yaWVzLzVhNjUvCgpFbGRhcm9uLCBraWNoZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2FzIGZ1ZXIgZWluIE9TIGJpc3QgRHU/IChBbmF0b2wsIDEyLiBGZWIgMjAwMywgMTI6MDU6NTUpOgp+IyEgcm49RWxkYXJvbiBydD0xMDQ1MDQ3NzY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA0MDA3OQpEaWUgendlaSBQaGFybWF6aWVzdHVkZW50aW5uZW4sIGRpZSBkYSBoaW50ZXIgbWlyIGF1ZiBkZW0gQmV0dCBzaXR6ZW4sCmhhbHRlbiBkZW4gRXJmb2xnIGZ1ZXIgInNlaHIgZnJhZ2xpY2giLgoKQW5hdG9sIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2FzIGZ1ZXIgZWluIE9TIGJpc3QgRHU/IChHcmltbWJvcm4sIDEyLiBGZWIgMjAwMywgMTI6MDc6MzcpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNDUwNDc5NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDQwMDc5CkFoYSwgc2VpdCB3YW5uIGhhYmVuIGRpZXNlIFBoYXJtYXppZXN0dWRlbnRpbm5lbiBBaG51bmcgZGF2b24sIHdpZSBtYW4gImdlZWtzIgptb3RpdmllcmVuIGthbm4gdW50ZXIgZGllIER1c2NoZSB6dSBodWVwZmVuPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXYXMgZnVlciBlaW4gT1MgYmlzdCBEdT8gKE5vbm5lLCAxMi4gRmViIDIwMDMsIDEyOjIwOjQ4KToKfiMhIHJuPUVsZGFyb24gcnQ9MTA0NTA0NjgyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNDAwNzkKV29iZWkgc2ljaCBkaWUgRnJhZ2Ugc3RlbGx0LCBvYiBtYW4gYW4gZGVuIENoYXJha3RlciBlaW5lcyBNZW5zY2hlbiBkaWUKZ2xlaWNoZW4gQW5zcHJ1ZWNoZSBzdGVsbHQsIHdpZSBhbiBlaW4gT1M6IFNpbXBlbCwgb2ZmZW4sIHN0YWJpbCwgdHV0IHdhcyBtYW4Kdm9uIGlobSB2ZXJsYW5ndC4KCkFiZXIgaWNoIG11c3Mgc29sY2hlIEZyYWdlbiBzdGVsbGUsIGJlaSBtaXIga2FtICpzY2hsdWNrKiBXaW5kb3dzIDk4CgpOb25uZSwgc2NoYWVtdCBzaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2FzIGZ1ZXIgZWluIE9TIGJpc3QgRHU/IChHcmltbWJvcm4sIDEyLiBGZWIgMjAwMywgMTI6Mjg6MzcpOgp+IyEgcm49Tm9ubmUgcnQ9MTA0NTA0ODg0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNDAwNzkKT2NoLCBpY2gga2FubiBEaXIgZGVuIGVpbmVuIG9kZXIgYW5kZXJlbiBNYW5hZ2VyIG5lbm5lbiBkZXIgaW0gd2VzZW50bGljaGVuCmRpZXNlIEFuc3BydWVjaGUgc3RlbGx0LCBqYS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2FzIGZ1ZXIgZWluIE9TIGJpc3QgRHU/IChFbGRhcm9uLCAxMi4gRmViIDIwMDMsIDEyOjMyOjIzKToKfiMhIHJuPU5vbm5lIHJ0PTEwNDUwNDg4NDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDQwMDc5CkVyc2V0enQgc2ltcGxlIGR1cmNoIHNjaGxpY2h0LCBkdXJjaGRhY2h0LCBlZmZpemllbnQgdW5kIG9mZmVuIGR1cmNoCmF1Zmdlc2NobG9zc2VuLCBvcGVubWluZGVkLiBTdGFiaWwga2FubiBtYW4gc28gc3RlaGVuIGxhc3Nlbi4gCgpTbGFja3dhcmUgaXN0IGltaG8gZGllIGVpbnppZ2UgRGlzdHJvLCBkaWUgVmFuaWxsYS1LZXJuZWwgYXVzbGllZmVydC4gCgpFbGRhcm9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXYXMgZnVlciBlaW4gT1MgYmlzdCBEdT8gKE5vbm5lLCAxMi4gRmViIDIwMDMsIDEyOjQ2OjMzKToKfiMhIHJuPUVsZGFyb24gcnQ9MTA0NTA0OTU0MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNDAwNzkKT2theSwgRHUgaGFzdCBhbHNvIGVpbmVuIHNjaGxpY2h0ZW4gQ2hhcmFrdGVyLCBrYW5uIGplZGVtIHBhc3NpZXJlbi4gRGFiZWkKYmlzdCBEdSBhdWNoIG5vY2ggYXVmZ2VzY2hsb3Nzc2VuLCBtbW1oLCBpY2ggZGVua2Ugc2NobGljaHQgKyBhdWZnZXNjaGxvc3NlbgpuZW5udCBtYW4gYmVpIGVpbmVtIE1lbnNjaGVuIG5haXYuIERhbm4gYmlzdCBEdSBhdWNoIG5vY2ggc3RhYmlsLiBNYW4ga2FubgpEaWNoIGFsc28gcnVoaWcgd2F0dGllcmVuIHVuZCBtaXQgV3VyZnN0ZXJuZW4gYmV3ZXJmZW4/IEVmZml6aWVudCBiaXN0IER1CmF1Y2g/IEFscyBDaGVmIGhhZXR0ZSBpY2ggRGljaCBnZXJuIGFscyBVbnRlcmdlYmVuZW4sIGFiZXIgcHJpdmF0IGthbm5zdCBEdQpydWhpZyBBYnN0YW5kIGhhbHRlbiAoYzsKCk5vbm5lLCBoYXQgZGFubiBkb2NoIGxpZWJlciBlaW4gcGFhciBNYWNrZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBXYXMgZnVlciBlaW4gT1MgYmlzdCBEdT8gKEVsZGFyb24sIDEyLiBGZWIgMjAwMywgMTI6NDk6MTkpOgp+IyEgcm49Tm9ubmUgcnQ9MTA0NTA1MDM5MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNDAwNzkKV2VubiBkdSBtaXIgamV0enQgbm9jaCBlcmtsYWVyc3QsIHdvIHN0ZWh0LCBkYXNzIG1hbiBkaWUgc2VsYmVuIENoYXJha3Rlcnp1ZWdlCndpZSBkYXMgT1MgYXVmd2Vpc3QuLi4KQXVmIGRlciBTZWl0ZSBzdGVodDogVGFrZSB0aGlzIHF1aXogdG8gZmluZCBvdXQgd2hpY2ggT1MgbW9zdCBtYXRjaGVzIHlvdXIKcGVyc29uYWxpdHkuCgpFbGRhcm9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXYXMgZnVlciBlaW4gT1MgYmlzdCBEdT8gKE5vbm5lLCAxMi4gRmViIDIwMDMsIDEyOjU0OjEzKToKfiMhIHJuPUVsZGFyb24gcnQ9MTA0NTA1MDU1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNDAwNzkKV2VubiBkZXIgU2F0eiBlaW5mYWNoZXIgZm9ybXVsaWVydCBpc3QsIHZlcnN0ZWhzdCBEdSBpaG4gZGFubj8gV2VubiBEdSBkZW4KVGVzdCBnZW1hY2h0IGhhc3QsIHN0ZWh0IGRvcnQgaW4gZ3Jvc3NlbiBMZXR0ZXJuOgoKV2hpY2ggT1MgQXJlIFlvdT8gQ09OR1JBVFVMQVRJT05TISBZb3UgYXJlIDxPUz4KCk5vbm5lLCBiZWltIDIuIG1hbCBhdWNoIFNsYWNrd2FyZSwgd2VpbCBlciBiZWkgZWluaWdlbiBBbnR3b3J0ZW4gendpc2NoZW4gMgpnZXNjaHdhbmt0IGhhdCB1bmQgbnVuIGRpZSBhbmRlcmUgQWx0ZXJuYXRpdmUgZ2Vub21tZW4gaGF0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogV2FzIGZ1ZXIgZWluIE9TIGJpc3QgRHU/IChPcmt0b2V0ZXIsIDEyLiBGZWIgMjAwMywgMTQ6MDk6MjkpOgp+IyEgcm49Tm9ubmUgcnQ9MTA0NTA1MDg1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNDAwNzkKSGVpc3N0IGRhcyBqZXR6dCBkYXMgZHUgZWluIGFsdGVybmF0aXZlcyBTbGFja3dhcmUgYmlzdD8KCk9ya1QsIG5ldWdpZXJpZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBkLWZydXN0IChBbmF0b2wsIDEyLiBGZWIgMjAwMywgMTQ6MTM6MTEpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwNDUwNTMwNzMgcmc9d3d3Cn4jISB0aWQ9MTA0NTA1MzA3MwpXZW5uIGFsbGUgU3lzdGVtYWRtaW5pc3RyYXRvcmVuIGRlcmFydCBzY2hsZWNodGVzIFNjaHJpZnRkZXV0c2NoCmF1ZndlaXNlbiwgYmluIGljaCBmcm9oLCBrZWluZXIgenUgc2Vpbi4uLiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdhcyBmdWVyIGVpbiBPUyBiaXN0IER1PyAoQW5hdG9sLCAxMi4gRmViIDIwMDMsIDE1OjQyOjQwKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDQ1MDU1MzY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA0MDA3OQpFbmRsaWNoLCBFTkRMSUNIIGthbm4gbWFuIHNvIGVpbmVuIEJldHJpZWJzc3lzdGVtLUZsYW1ld2FyIG1pdApSZWNodCBwZXJzb2VubGljaCBuZWhtZW4hIEhhISA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklyYWstUHJvYmxlbWF0aWsgJiBOQVRPLVZldG8gdm9uIEQrRi4uLiAoSGlzYXN1bCwgMTIuIEZlYiAyMDAzLCAxODozNjo1Myk6CkVpbmlnZSBNaXRnbGllZGVyIGRlcyBLb25ncmVzc2VzIGVyd2FlZ2VuIGluZGVzIFN0cmFmbWFzc25haG1lbiBnZWdlbiBkaWUKIklyYWstUmViZWxsZW4iIEZyYW5rcmVpY2ggdW5kIERldXRzY2hsYW5kLiBXaWUgZGllICJXYXNoaW5ndG9uIFBvc3QiCmJlcmljaHRldGUsIGlzdCBkZXIgWm9ybiB1ZWJlciBkZW4gV2lkZXJzdGFuZCBkZXIgYmVpZGVuIExhZW5kZXIgZ2VnZW4gZGVuCmFtZXJpa2FuaXNjaGVuIElyYWstS3VycyBzbyBncm9zcywgZGFzcyBkZXIgcmVwdWJsaWthbmlzY2hlIE1laHJoZWl0c2Z1ZWhyZXIKaW0gQWJnZW9yZG5ldGVuaGF1cywgRGVubmlzIEhhc3RlcnQsIGVpbiBHZXNldHogdWViZXIgRWluZnVocmJlc2NocmFlbmt1bmdlbgpmdWVyIFdlaW4gdW5kIE1pbmVyYWx3YXNzZXIgYXVzIEZyYW5rcmVpY2ggYW5zdHJlYnQuIFdhcyBEZXV0c2NobGFuZCBiZXRyaWZmdCwKaXN0IGRlbSBCbGF0dCB6dWZvbGdlIGRpZSBVbnRlcnN0dWV0enVuZyBpbSBBYmdlb3JkbmV0ZW5oYXVzIGZ1ZXIgZWluZQpVUy1UcnVwcGVucmVkdXppZXJ1bmcgZGV1dGxpY2ggZ2VzdGllZ2VuLgoKT2huZSBXb3J0ZS4uLgpIaXNBc3VsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChGb29iYXIsIDEyLiBGZWIgMjAwMywgMTg6Mzg6MzApOgp+IyEgcm49SGlzYXN1bCBydD0xMDQ1MDcxNDEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA3MTQxMwpUamEsIHNvIHNpbmQgc2llLCBkaWUgQW1pcy4KCk1lcmNlZGVzLCBCTVcgdW5kIFBvcnNjaGUgd2VyZGVuIG5hdHVlcmxpY2ggd2VpdGVyIGVpbmdlZnVlaHJ0IGJ6dy4gZG9ydApoZXJnZXN0ZWxsdCA7bykKCldhaHJzY2hlaW5saWNoIHdlaXNzIHZvbiBkZW5lbiBlaCBrZWluZXIsIGRhc3MgZGFzIGRldXRzY2hlIEF1dG9zIHNpbmQuLi4KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBJcmFrLVByb2JsZW1hdGlrICYgTkFUTy1WZXRvIHZvbiBEK0YuLi4gKEdyaW1tYm9ybiwgMTIuIEZlYiAyMDAzLCAxODozOTo1NCk6Cn4jISBybj1Gb29iYXIgcnQ9MTA0NTA3MTUxMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKU28gaXNzZXMuIFNlbGJzdCB3ZW5uIGRpZSBHcmllY2hlbiBlaW4gUGF0ZW50IGF1ZiBEZW1va3JhdGllIGFubWVsZGVuIHd1ZXJkZW4KdW5kIGRlbiBBbWlzIGRpZSBWZXJ3ZW5kdW5nIHVudGVyc2FnZW4gd3VlcmRlbiwgd3VlcmRlIGRhcyBkb3J0IG5pZW1hbmRlbgppbnRlcmVzc2llcmVuLiBTZWxic3Qgd2VubiBzaWUgdmVyc3R1ZW5kZW4gd292b24gZGllIFJlZGUgaXN0LgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBJcmFrLVByb2JsZW1hdGlrICYgTkFUTy1WZXRvIHZvbiBEK0YuLi4gKEVsYmVyZXQsIDEyLiBGZWIgMjAwMywgMTg6NTY6NDApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDUwNzE1OTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDcxNDEzCmR1IGJlemVpY2huZXN0IGRhcyB3YXMgZGllIEFtaXMgZGEgaGFiZW4gYWxzIERlbW9rcmF0aWU/IFdlbm4gZXMgZWluIFBhdGVudAphdWYgRGVtb2tyYXRpZSBnYWViZSwgd2FlcmUgZGllIGFtZXJpa2FuaXNjaGUgUmVnaWVydW5nc2Zvcm0gZGF2b24gbmljaHQKYmV0cm9mZmVuLiBBdXNzZXJkZW0ga29lbm50ZW4gZGllIEdyaWVjaGVuIG51ciBhdWYgQmFzaXNkZW1va3JhdGllIGVpbiBQYXRlbnQKYW5tZWxkZW4gdW5kIGRhIGZhbGxlbiBkaWUgd2VuaWdzdGVuIGhldXRpZ2VuIFJlZ2llcnVuZ3Nmb3JtZW4gZHJ1bnRlci4KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IElyYWstUHJvYmxlbWF0aWsgJiBOQVRPLVZldG8gdm9uIEQrRi4uLiAoR3JpbW1ib3JuLCAxMi4gRmViIDIwMDMsIDE5OjAxOjA3KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0NTA3MjYwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKYSkgSWNoIHNhZ3RlIGphLCBlcyB3dWVyZGUgZG9ydCBuaWVtYW5kZW4gaW50ZXJlc3NpZXJlbi4KYikgRGVyIGhldXRpZ2UgVW1nYW5nIG1pdCBQYXRlbnRpbnRlcnByZXRhdGlvbmVuIGlzdCBzZWhyLi4uIGtyZWF0aXYuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IElyYWstUHJvYmxlbWF0aWsgJiBOQVRPLVZldG8gdm9uIEQrRi4uLiAoQW5hdG9sLCAxMi4gRmViIDIwMDMsIDE5OjAzOjMyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ1MDcyODY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA3MTQxMwpPaCBqYSwgd2llIHdhciBkYXM/IEF1ZiBkZW4gQ2hpcCBpbiBkZW4gRHJ1Y2tlcnBhdHJvbmVuIGtvbW1lbiBtcDNzLCBkYW1pdApzaWUgdXJoZWJlcnJlY2h0bGljaCBnZXNjaHVldHp0IHNpbmQgdW5kIG5pY2h0IGtvcGllcnQgd2VyZGVuIGR1ZXJmZW4/IDopCgpBbmF0b2wgLSBmaW5kZXQgZGllIElkZWUga2xhc3NlLCB3YWVyZSBpbiBkZXIgUmVjaHRzcHJlY2h1bmcgYWJlciBlaWdlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChOb25uZSwgMTIuIEZlYiAyMDAzLCAyMTowNjoxOSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA0NTA3MzAxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKQW5nZW5vbW1lbiwgUGkgc2VpIHZvbGxzdGFlbmRpZy4gRGFubiBrb2VubnRlIG1hbiBkb2NoIGRpZSBWZXJ3ZW5kdW5nIHZvbiBQaQptaXQgamVkZW0gYmVsaWViaWdlbiBQYXRlbnQgdmVyYmlldGVuLCB3ZWlsIGRhcyBQYXRlbnQgaW4gZGVyIFphaGwgdm9ya29tbXQuClVtIGpldHp0IG1hbCBkYXMgUGF0cm9uZW4tTVAzLUJlaXNwaWVsIGFkIGFic3VyZHVtIHp1IGZ1ZWhyZW4uIERhIHd1ZXJkZSBkYXMKTXVzaWtzdHVlY2sgc2NobGllc3NsaWNoIGF1Y2ggbmljaHQgYWxzIHNvbGNoZXMgYmVudXR6dCwgc29uZGVybiBhbHMKUHJ1ZWZzdW1tZS4KCk5vbm5lLCBrcmllZ3QgbGFuZ3NhbSBBbmdzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IElyYWstUHJvYmxlbWF0aWsgJiBOQVRPLVZldG8gdm9uIEQrRi4uLiAoQ2FkcmFjaCwgMTMuIEZlYiAyMDAzLCAwOTo0Njo1Mik6Cn4jISBybj1FbGJlcmV0IHJ0PTEwNDUwNzI2MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDcxNDEzCldlbm4gRHUgZXMgbmljaHQgYWxzIERlbW9rcmF0aWUgYmV6ZWljaG5lc3QgRWxiaSwgYWxzIHdhcyBiZXplaWNobmVzdCBEdSBlcwpkYW5uPyB1bmQgYWxzIHdhcyBiZXplaWNobmVzdCBEdSB1bnNlciBSZWdpZXJ1bmdzc3lzdGVtPwpWb24gYWxsZW4gU3RhYXRlbiBkaWVzZXIgV2VsdCBkaWUgaWNoIGtlbm5lLCBrb21tdCBkYXMgU3lzdGVtIGRlciBVU0Egd28gZXMKbWVociB1bSBNZWludW5nc3VtZnJhZ2VuIGFscyB1bSBGdWVocnVuZyBnZWh0LCBkZXIgQmFzaXNkZW1va3JhdGllIGFtCm5hZWhlc3Rlbi4gTmljaHQgb2huZSBHcnVuZCwgaXN0IGVzIGRhcyBlaW56aWdlIGRlbW9rcmF0aXNjaGUgTGFuZCBpbmRlbQpUb2Rlc3N0cmFmZW4gdGFndGFlZ2xpY2ggdmVyaGFuZ2VuIHdlcmRlbi4uLgpVbmQgbnVyIG1hbCBzbyBhbHMga2xlaW5lbiBUaXA6IEluIERldXRzY2hsYW5kIGthbm4gZWluZSBQYXJ0aWUgYXVjaCA+NTAlIGRlcgpNYW5kYXRlIGltIEJ1bmRlc3RhZyBlcnJpbmdlbiwgbWl0IHdlbmlnZXIgYWxzIDUwJSBkZXIgU3RpbW1lbiAtIHNvZ2FyIGdhbnoKb2huZSBVZWJlcmhhbmdtYW5kYXRlLgpVZWJlciBkZW4gc2VsdHNhbWVuIFVtZ2FuZyBtaXQgIm1vZGVybmVyIiBUZWNobmlrIHp1bSBhdXN6YWVobGVuIHZvbiBTdGltbWVuCmthbm4gbWFuIHNpY2hlcmxpY2ggc3RyZWl0ZW4gLSBhYmVyIGJlaSBkZW4gc3BhZXRlciBlcmZvbGd0ZW4gTmFjaHphZWhsdW5nZW4KaGF0IHNpY2ggZ2V6ZWlndCBkYXMgQnVzaCB0cm90emRlbSBQcmFlc2lkZW50IGdld29yZGVuIHdhZXJlLgoKCkNhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IElyYWstUHJvYmxlbWF0aWsgJiBOQVRPLVZldG8gdm9uIEQrRi4uLiAoR3JpbW1ib3JuLCAxMy4gRmViIDIwMDMsIDA5OjU0OjM3KToKfiMhIHJuPUNhZHJhY2ggcnQ9MTA0NTEyNjAxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKRGVyIEV4cHJhZXNpZGVudCBKaW1teSBDYXJ0ZXIsIGRlciBzaWNoIGZ1ZXIgZGllIFVOIG1pdCBXYWhsYmVvYmFjaHR1bmdlbgpiZXNjaGFlZnRpZ3QsIHd1cmRlIHp1ciBsZXR6dGVuIGFtZXJpa2FuaXNjaGVuIFByYWVzaWRlbnRzY2hhZnRzd2FobAppbnRlcnZpZXdlZCwgd2FzIGVyIHZvbiBkZW0gSGlja2hhY2sgaGFsdGVuIHd1ZXJkZS4gU2VpbmUgQW50d29ydCB3YXI6IERhcyBpc3QKZWluZSBXYWhsLCBkaWUgd2lyIGluIGVpbmVtIGFuZGVyZW4gTGFuZCBuaWNodCBhbHMgZGVtb2tyYXRpc2NoZSBXYWhsCmJlemVpY2huZW4gdW5kIGJlb2JhY2h0ZW4gd3VlcmRlbi4gCgpEYXNzIERpciBuYXR1ZXJsaWNoIGRhcyBhdXNzZXJoYWxiIGRlciBVU0EgcHJha3RpemllcnRlIFByaW56aXAsIGRhc3MgamVkZQpTdGltbWUgaW4gZXR3YSBnbGVpY2h2aWVsIHphZWhsZW4gc29sbHRlLCBzdXNwZWt0IGlzdCwgaXN0IG5pY2h0IHdlaXRlcgp2ZXJ3dW5kZXJsaWNoLiBEZW0gc3RlaHQgamEgbmljaHQgZW50Z2VnZW4gZGFzcyBtYW4gbWl0IHVudGVyIDUwJSBkZXIgU3RpbW1lbgp1ZWJlciA1MCUgZGVyIFNpdHplIGJla29tbXQsIGRhIGphIFN0aW1tZW4gZnVlciBQYXJ0ZWllbiB1bnRlcmhhbGIgZGVyCjUlLUtsYXVzZWwgd2VnZmFsbGVuLiBBYmVyIGRhcyBVbmdsZWljaGdld2ljaHQgaW4gZGVuIFVTQSBkdXJjaCBkaWVzZXMKV2FobG1hZW5uZXJ2ZXJmYWhyZW4gaXN0IHNjaG9uIHZvbGwga3Jhc3MuIAoKTWVpbmVyIEluZm9ybWF0aW9uIG5hY2ggaGFiZW4gZGllIE5hY2h6YWVobHVuZ2VuIGdlZ2VuIEJ1c2ggYXVzZ2VzY2hsYWdlbi4gSXN0CmhhbHQgcHJha3Rpc2NoIHdlbm4gZGVyIGVpZ2VuZSBQYXBpIGRpZSBKdW5ncyBpbSBPYmVyc3RlbiBHZXJpY2h0IGVpbmdlc3RlbGx0CmhhdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChBbmF0b2wsIDEzLiBGZWIgMjAwMywgMTA6MDE6NTIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDUxMjY0Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDcxNDEzCkFiZ2VzZWhlbiBkYXZvbiBzcHJlY2hlbiB2aWVsbGVpY2h0IGRpZSBBbWVyaWthbmVyIHNlbGJzdCB2b24gZWluZXIKImdyZWF0IGRlbW9jcmFjeSIuIEljaCB0YWV0ZSBkaWUgYXVmIGRlbSBQYXBpZXIgZXhpc3RpZXJlbmRlIFN0YWF0c2Zvcm0KbmFpdiAiUmVwdWJsaWsiIG5lbm5lbi4gV2llIGF1Y2ggZGllIFN0YWF0c2Zvcm0gdW5zZXJlcyBlaWdlbmVuIExhbmRlcywKZGllIHZpZWxsZWljaHQgYWJzaWNodGxpY2ggbmFjaCBkZW0gTW9kZWxsIGRlciBWZXJlaW5pZ3RlbiBTdGFhdGVuCmdld2FlaGx0IHd1cmRlLgoKQW5hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChOb25uZSwgMTMuIEZlYiAyMDAzLCAxMDowNzowOSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA0NTEyNjkxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKTmEgd2VuaWdzdGVucyB3dXJkZW4gYmVpIHVucyBuaWNodCBkaWUgV2FobG1hZW5uZXIgZWluZ2VmdWVocnQuIFN0YW1tZW4gZGllCmVpZ2VudGxpY2ggbm9jaCBhdXMgZWluZXIgWmVpdCwgYWxzIGRpZSBkYW5uIG1pdCBLdXRzY2hlbiBuYWNoIFdhc2hpbmd0b24KZnVocmVuLCB1bSBpaHJlbiBTdGFhdCB6dSByZXByYWVzZW50aWVyZW4/IFdlbmlnc3RlbnMgaGF0IGluIERldXRzY2hsYW5kIG5vY2gKZWluZSBrbGVpbmUgUGFydGVpIGVpbmUgdGhlb3JldGlzY2hlIENoYW5jZSwgc2ljaCBuYWNoIE9iZW4genUga2FlbXBmZW4sIHdhcwppbiBkZW4gVVNBIHZvZWxsaWcgdW5tb2VnbGljaCBpc3QuIFVuZCB6dSBQYWRyZWljOiBEaWUgVmVyemVycnVuZyBkdXJjaApXYWhsbWFlbm5lciBpc3Qgd29obCB1bWdsZWljaCBncm9lc3NlciwgYWxzIGR1cmNoIGRpZSA1JS1LbGF1c2VsLiBVbmQgd2FzIGhhdApCYXNpc2RlbW9rcmF0aWUgbWl0IFRvZGVzc3RyYWZlbiB6dSB0dW4/IT8KCk5vbm5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChDYWRyYWNoLCAxMy4gRmViIDIwMDMsIDExOjA5OjU4KToKfiMhIHJuPU5vbm5lIHJ0PTEwNDUxMjcyMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDcxNDEzCjEuIERpZSBWZXJ6ZXJydW5nZW4gZGllIGljaCBtZWludGUgaGFiZW4gYXVjaCBuaXggbWl0IGRlciA1JSBLbGF1c2VsIHp1IHR1biwKc29uZGVybiBkYXMgZGllIFN0aW1tdmVydGVpbHVuZyBiZWkgdW5zIG5hY2ggQnVuZGVzbGFlbmRlcm4gZXJmb2xndCB1bmQgamVkZXMKQnVuZGVzbGFuZCBlaW56ZWxuIGFiZ2VyZWNobmV0IHdpcmQuIFRoZSBXaW5uZXIgVGFrZXMgaXQgdmVyc3RhZXJrdCBkaWVzZW4KRWZmZWt0IHZpZWxsZWljaHQgLSBhYmVyIGF1Y2ggYmVpIHVucyBrYW5uIGRhcyBiZWkgZWluZW0gS29wZiBhbiBLb3BmIHJlbm5lbgpzY2huZWxsIHBhc3NpZXJlbiwgZGFzIGRpZSBDRFUgbWVociBQcm96ZW50ZSBhbHMgZGllIFNQRCBvYndvaGwgc2llIHdlbmlnZXIKV2FlaGxlciBnZXdhZWhsdCBoYWJlbiAob2RlciB1bWdla2VocnQpLgoyLiBFaW5lIERlbW9rcmF0aWUgbXVzcyBuaWNodCB6d2FuZ3N3ZWlzZSBlaW5lIEtvbnNlbnNkZW1va3JhdGllIHNlaW4gLSB3b2hpbgpkYXMgZnVlaHJ0IHNlaG4gd2lyIGluIERldXRzY2hsYW5kIG5hZW1saWNoIGF1Y2guIEVzIGhhdCBhdWNoIFZvcnRlaWxlIGVpbmVuCmtsYXJlbiBWZXJhbnR3b3J0bGljaGVuIHp1IGhhYmVuLCBkZXIgZGFubiBuYWNoIDQgSmFocmVuIGRpZSBRdWl0dHVuZyBrcmllZ3QgLQpUaGUgV2lubmVyIHRha2VzIGl0IGFsbCBoYXQgYWxzbyBhdWNoIHNlaW5lIFZvcnRlaWxlLgozLiBPaGhoIGljaCB3ZXR0ZSB1ZWJlciA4MCUgZGVyIERldXRzY2hlbiBzaW5kIGF1Y2ggZnVlciBkaWUgVG9kZXNzdHJhZmUuCldhZXJlbiB3aXIgYXVjaCBudXIgYW5zYXR6d2Vpc2UgZWluZSBCYXNpc2RlbW9rcmF0aWUsIHd1ZXJkZSBkaWUgVG9kZXNzdHJhZmUKYmVpIHVucywgc3BhZXRlc3RlbnMgYmVpbSBuYWVjaHN0ZW4gc3Bla3Rha3VsYWVyZW4gS2luZGVzbWlzc2JyYXVjaCBvZGVyCk1hc3Nlbm1vZXJkZXIgZWluZ2VmdWVocnQuCgoKQ2FkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChNYXRpcywgMTMuIEZlYiAyMDAzLCAxMToxMjozMCk6Cn4jISBybj1Ob25uZSBydD0xMDQ1MTI3MjI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA3MTQxMwpXZXIgZGVyICJ3YWhyZSIgVVMgUHJhZXNpZGVudCBpc3QsIHdpcmQgc2ljaCB3b2hsIG5pZSBrbGFlcmVuIGxhc3Nlbi4gTmFjaC0KemFlaGx1bmdlbiB3dXJkZW4gbnVyIGluIGJlc3RpbW10ZW4gV2FobGJlemlya2VuIHZvcmdlbm9tbWVuLiBFcyBnaWJ0CnZlcnNjaGllZGVuZSBBbnNpY2h0ZW4sIHdpZSBtYW4gZGllIEludGVudGlvbiBlaW5lcyBXYWVobGVycyBoYWV0dGUKZmVzdHN0ZWxsZW4gc29sbGVuL211ZXNzZW4vZHVlcmZlbi4gRXJpbm5lcnQgc2VpIGhpZXIgbnVyIGFuIGRhcyBQcm9ibGVtCm1pdCB1bnZvbGxzdGFlbmRpZyBnZWxvY2h0ZW4gV2FobGthcnRlbi4gTWFuIGthbm4gc2NoYWV0emVuLCB3aWV2aWVsZQpXYWVobGVyIGR1cmNoIFByb2JsZW1lIGJlaSBkZW4gV2FobGVuIHZvbSBXYWVobGVuIGFiZ2VoYWx0ZW4gd3VyZGVuLCB1bmQgb2IKZGFzIG1laHIgZGVtb2tyYXRpc2NoZSBhbHMgcmVwdWJsaWthbmlzY2hlIFdhZWhsZXIgYmV0cm9mZmVuIGhhdC4KSmUgbmFjaCBBdXNsZWd1bmcga29tbXQgbWFuIGF1ZiBnYW56IHZlcnNjaGllZGVuZSBFcmdlYm5pc3NlLiAKCkRhc3MgZGFzIFdhaGxzeXN0ZW0gZGVyIFVTQSBuaWNodCBnZXJhZGUgZGFzIEdlbGJlIHZvbSBFaSBpc3QsIGlzdCBzaWNoZXIKYXVjaCBhbGxlbiBrbGFyIChHcm9zc2JyaXRhbm5pZW4gaXN0IHVlYnJpZ2VucyBhZWhubGljaDogc2VsYnN0IHdlbm4gZHUgbWl0Cm51ciAxMCUgZGVpbmVuIFdhaGxiZXppcmsgZ2V3aW5uc3QsIGR1IGFsbGVpbmUgdmVydHJpdHRzdCBpaG4pLiBBYmVyIGFsbGUKS2FuZGlkYXRlbiBrYW5udGVuIGRpZSBTcGllbHJlZ2VsbiB2b3JoZXIsIHVuZCB3YXJlbiBkYW1pdCBlaW52ZXJzdGFuZGVuLgpVbmQgZGllIEFtZXJpa2FuZXIgc2NoZWluZW4gbWl0IGlocmVtIFN5c3RlbSBhdWNoIGVpbmlnZXJtYXNzZW4gZ2x1ZWNrbGljaC4KCk1hdGlzCgpQUyBVbmQgamEsIGljaCBoYWV0dGUgYXVjaCB2aWVsIGxpZWJlciBHb3JlIGZvciBQcmVzaWRlbnQsIGRhbm4ga29lbm50ZQogICBGcmFua3JlaWNoIGF1Y2ggd2VpdGVyaGluIG9obmUgQW5nc3QgTWluZXJhbHdhc3NlciB1ZWJlciBkZW4gQXRsYW50aWsKICAgbGllZmVybiAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IElyYWstUHJvYmxlbWF0aWsgJiBOQVRPLVZldG8gdm9uIEQrRi4uLiAoTWF0aXMsIDEzLiBGZWIgMjAwMywgMTE6MTQ6NTcpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDQ1MTMwOTk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA3MTQxMwpNaXQgUHVua3QgMyBsaWVndCBEdSBzb3dhcyB2b24gZmFsc2NoLCB6dW1pbmRlc3Qgc293ZWl0IGljaCB3ZWlzcy4gRGllIApEZXV0c2NoZW4gc2luZCBuaWNodCBzbyBkdW1tIHdpZSBEdSBnbGF1YnN0LgoKTWF0aXMKClBTIChnbGF1YnN0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChFbGJlcmV0LCAxMy4gRmViIDIwMDMsIDExOjIyOjQ3KToKfiMhIHJuPUNhZHJhY2ggcnQ9MTA0NTEzMDk5OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKQWxzbyB3ZW5uIGljaCBtaWNoIHJlY2h0IGVyaW5uZXJlLCBoYXQgR29yZSBhdWYgamVkZW4gRmFsbCBtZWhyIFN0aW1tZW4KaW5zZ2VzYW1tdCBiZWtvbW1lbiBhbHMgQnVzaC4gVW5kIGphLCBkaWUgbWVpc3RlbiBBbWVyaWthbmVyIHNpbmQgc3RvbHogYXVmCmlociBXYWhsc3lzdGVtLiBTb3dlaXQgaWNoIG1pdCBBbWVyaWthbmVybiB1ZWJlciBpaHIgV2FobHN5c3RlbSBnZXNwcm9jaGVuCmhhYmUsIGhhZWx0IGthdW0gZWluZXIgZXMgZnVlciByZWZvcm1iZWR1ZXJmdGlnLiBJY2ggc2FnIGphIGF1Y2ggZ2FyIG5pY2h0LApkYXNzIGVzIHNjaGxlY2h0IHNlaW4gbXVzcywgaWNoIHNhZ2UgbnVyLCBkYXNzIGVzIHdlbmlnIG1pdCBkZXIgYXR0aXNjaGVuCkRlbW9rcmF0aWUgenUgdHVuIGhhdCB1bmQgZGVzd2VnZW4gZWluIFBhdGVudCBuaWNodCB6aWVoZW4gd3VlcmRlIDspCgpJY2ggd2FlciBqYSBlaCBkYWZ1ZXIsIHdpciB3dWVyZGVuIGRlbiBPc3RyYWtpc21vcyB3aWVkZXIgZWluZnVlaHJlbi4gSGFldHRlCmJlc3RpbW10IG5ldHRlIEtvbnNlcXVlbnplbiA6KSkpCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLb25zZXF1ZW56IC4uLiA6KSAoTGlhcmEsIDEzLiBGZWIgMjAwMywgMTI6MDY6MzApOgoKRGVyIFR1cm13YWVjaHRlciBydWZ0OiBBbmR5IGdyZWlmdCB1bnMgYW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIC0gQWhhLUVybGVibmlzPyAoQW5hdG9sLCAxMy4gRmViIDIwMDMsIDEyOjE1OjMxKToKW0FsbGdlbWVpbjpNdXJkZXJdIGFoYSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCltUb2Q6TGFyc10gRWluIEhvYmJpdCBoYXQgZ2VyYWRlIE11cmRlciB1bWdlYnJhY2h0LiAgICAgICAgICAgICAgICAgICAgICAgICAgIApbVG9kOkVpbiBIb2JiaXRdIEhtcGYuLi5hbHRlIGdyZWlzZSBIb2JiaXRzIGFuZ3JlaWZlbi4uLnNvd2FzLi4uIAoKSm8uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChEZWVwYmx1ZSwgMTMuIEZlYiAyMDAzLCAxNDoyODo1Mik6Cn4jISBybj1FbGJlcmV0IHJ0PTEwNDUxMzE3Njcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDcxNDEzCkludGVyZXNzYW50IGZpbmRlIGljaCBqYSBkaWUgZnJhbnpvZXNpc2NoZSBQb3NpdGlvbjoKQ2hpcmFjLCBkZXIgdm9yIHBhYXIgSmFocmVuIHZlaGVtZW50IGdlZ2VuIGRlbiBBdG9tdGVzdHN0b3BwIGdla2FlbXBmdCBoYXQKKCJGKmNrIENoaXJhYyIpLCB3aXJkIHBsb2V0emxpY2ggenVtIEZyaWVkZW5zZW5nZWwuCk9iIGRhIG5pY2h0IGRpZSBQb3NpdGlvbiAiS2VpbiBLcmllZyEgRnVlciAoRWxmLSlPZWwhIiByYXVzc3BpZWx0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IElyYWstUHJvYmxlbWF0aWsgJiBOQVRPLVZldG8gdm9uIEQrRi4uLiAoRWxkYXJvbiwgMTMuIEZlYiAyMDAzLCAxNTowMDowNCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDQ1MTQyOTMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA3MTQxMwpXZXIga2FubiBzaWNoIHNjaG9uIG5vY2ggYW4gTXVydXJvYSBlcmlubmVybj8gCgpFbGRhcm9uLCBzaWNoIGFuIDE5ODQgZXJpbm5lcm5kIChNaXQgd2VtIHdhcmVuIHdpciBkb2NoIGdsZWljaCBpbSBLcmllZz8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChPcmt0b2V0ZXIsIDEzLiBGZWIgMjAwMywgMTU6MDE6NTEpOgp+IyEgcm49RWxkYXJvbiBydD0xMDQ1MTQ0ODA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA3MTQxMwpEdSBtZWluc3QgZGVuIFJlcG9ydGVyIGRlciB1bXMgTGViZW4ga2FtIGFscyBkZXIgZnJhbnpvZXNpc2NoZSBHZWhlaW1kaWVuc3QKZWluIFNjaGlmZiB2b24gR3JlZW5wZWFjZSBnZXNwcmVuZ3QgaGF0IGludGVyZXNzaWVydCBoZXV0ZSBub2NoIGplbWFuZGVuPwoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBJcmFrLVByb2JsZW1hdGlrICYgTkFUTy1WZXRvIHZvbiBEK0YuLi4gKE9ya3RvZXRlciwgMTMuIEZlYiAyMDAzLCAxNTowNDoyMyk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA0NTE0NDkxMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKU2luZCBkYSBuaWNodCBzb2dhciB6d2VpIChuaWVkcmlncmFuZ2lnZSkgTWl0Z2xpZWRlciBkZXMgR2VoZWltZGllbnN0ZXMKdmVydXJ0ZWlsdCB1bmQgZWluZ2VzcGVycnQgd29yZGVuPyAoc2luZCBhYmVyIG1laW5lcyBXaXNzZW5zIG5hY2ggYXVjaCBzY2hvbgp3aWVkZXIgZnJlaSkKCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChLZWxseWJ1bmR5LCAxMy4gRmViIDIwMDMsIDE3OjIyOjM0KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0NTEzMTc2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKRGllIEFtZXJpa2FuZXIgc2luZCBhdWYgYWxsZXMgc3RvbHosIHdhcyBuaWNodCBzY2huZWxsIGdlbnVnIGF1ZiBkaWUgbmFlY2hzdGUKSGlja29yeS1GaWNodGUgcmF1ZmtvbW10IGJ6dyBkZW4gbmFlY2hzdGVuIFNhZ3Vhcm9rYWt0dXMuIERpZSBzaW5kIHNvZ2FyIHN0b2x6CmF1ZiBkaXZlcnNlIGFuZ2VibGljaCBhbWVyaWthbmlzY2hlIEVycnVuZ2Vuc2NoYWZ0ZW4sIGRpZSBhbGxlcyBhbmRlcmUgYWxzCmFtZXJpa2FuaXNjaCBzaW5kLiBEaWUgTmFjaHRlaWxlIGRlcyBTeXN0ZW1zIChTb3ppYWxlIFNjaGVyZSwgU296aWFsZQpBYnNpY2hlcnVuZyB1c3cpIHdlcmRlbiBnZWZsaXNzZW50bGljaHN0IHVlYmVyc2VoZW4uIEVpbiBzb2xjaCBkdW1wZmVyCnVucmVmbGVrdGllcnRlciBQYXRyaW90aXNtdXMsIGVpbmhlcmdlaGVuZCBtaXQgZWluZXIgQWxsZ2VtZWluYmxpZHVuZyB1bnRlcgphbGxlciBTYXUgKExhdXQgU3R1ZGllbiBkZXMgR2FsbHVwLUluc3RpdHV0ZXMgc2luZCBudXIgMzAgJSBhbGxlciBBbWlzCnp3aXNjaGVuIDIwIHVuZCAzMCBpbiBkZXIgTGFnZSwgaWhyIExhbmQgYXVmIGRlciBBbWVyaWtha2FydGUgenUgZmluZGVuKSBtYWNodAptaXIgQW5nc3QuCgpLZWxseS4ganVzdCBteSAyIGMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBJcmFrLVByb2JsZW1hdGlrICYgTkFUTy1WZXRvIHZvbiBEK0YuLi4gKENhZHJhY2gsIDEzLiBGZWIgMjAwMywgMTc6NDQ6MzQpOgp+IyEgcm49RWxiZXJldCBydD0xMDQ1MTMxNzY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA3MTQxMwpEYXMgR29yZSBtZWhyIFN0aW1tZW4gYmVrb21tZW4gaGF0IGJlc3RyZWl0ZXQgZ2xhdWIgaWNoIGtlaW5lciAoc2VsYnN0IEJ1c2gKbmljaHQpIGFiZXIgZGFzIGlzdCB2b2xsa29tbWVuIGlycmVsZXZhbnQgLSBkYXMgU3lzdGVtIGthbm4gdHJvdHpkZW0KRGVtb2tyYXRpc2NoIHNlaW4uIEluIERldXRzY2hsYW5kIGhhYmVuIHdpciBhdWNoIGVpbmUgRGVtb2tyYXRpZSB1bmQgamEsIGhpZXIKa2FubiBkaXIgZGFzIGJlaSBlaW5lbSBLb3BmIGFuIEtvcGYgcmVubmVuIGdlbmF1c28gcGFzc2llcmVuIChkdXJjaCBkaWUKVHJlbm51bmcgZGVyIEJ1bmRlc2xhZW5kZXIpLiBEaWVzZXMgUGhhZW5vbWVuIGxpZWd0IGFsc28gbmljaHQgYWxsZWluIGFtClN5c3RlbSBkZXIgV2FsbG1hZW5uZXIgLSBuaWNodHMgYW5kZXJlcyBoYWIgaWNoIGdlc2FndCAoSWNoIGJlaGF1cHRlIG51ciwgZGFzCjk5JSBkZXIgRGV1dHNjaGVuIGRpZSBiZWhhdXB0ZW4gQW1lcmlrYSBzZWkgZGVzd2VnZW4ga2VpbmUgRGVtb2tyYXRpZSwgbmljaHQKYmV3dXNzdCBpc3QsIGRhcyBkYXNzZWxiZSBhdWNoIGZ1ZXIgRGV1dHNjaGxhbmQgZ2lsdCkuCkxhdXQgcmVnZWxtYWVzc2lnZW4gVW1mcmFnZW4gbGllZ3N0IER1IGRhIGdsYXViIGljaCBmYWxzY2ggTWF0aXMgdW5kIHp3YXIgaW4KbmFoZXp1IGFsbGVuIHdlc3RsaWNoZW4gSW5kdXN0cmllbmF0aW9uZW4uIFNvYmFsZCBpY2ggd2llZGVyIG1hbCBlaW5lCmVudHNwcmVjaGVuZGUgVW1mcmFnZSBzZWhlL2ZpbmRlLCBwb3N0ZSBpY2ggc2llIGdlcm5lIGhpZXIuIEthbm4gYWJlciBhdWNoCmdlcm4gbWFsIG1laW5lbiBWYXRlciBmcmFnZW4sIGRpZSBLaXJjaGVuIHNpbmQgaW4gZGVtIFRoZW1hIHRoZW1hdGlzY2ggcmVjaHQKZ3V0IGJld2FuZGVydC4KCgpDYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChOb25uZSwgMTMuIEZlYiAyMDAzLCAxNzo1NTozMSk6Cn4jISBybj1DYWRyYWNoIHJ0PTEwNDUxNTQ2NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDcxNDEzCkhhbGxvIENhZHJhY2gsCgprYW5uc3QgRHUgbWlyIG1hbCBlcmxhZXV0ZXIsIHdhcyBnZW5hdSBEdSBtaXQgJ1RyZW5udW5nIGRlciBCdW5kZXNsYWVuZGVyJwptZWluc3QgaW4gQmV6dWcgYXVmIFN0aW1tZW5hdXN6YWVobHVuZyBiZWkgZGVyIEJ1bmRlc3RhZ3N3YWhsPyBWaWVsbGVpY2h0IGJpbgppY2ggZGEgbmljaHQgYXVjaCBkZW4gbmV1ZXN0ZW4gU3RhbmQsIGtsYWVyZSBtaWNoIGRvY2ggYml0dGUgYXVmLgoKTm9ubmUsIHdpbGwgd2FzIGxlcm5lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBJcmFrLVByb2JsZW1hdGlrICYgTkFUTy1WZXRvIHZvbiBEK0YuLi4gKEVsYmVyZXQsIDEzLiBGZWIgMjAwMywgMTg6MDQ6MjQpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDQ1MTU0Njc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA3MTQxMwppY2ggd3VlcmRlIG5pY2h0IGJlaGF1cHRlbiwgZGFzcyB3aXIgaW4gZGV1dHNjaGxhbmQgZWluZSBEZW1va3JhdGllIGhhYmVuLgpBYmVyIHZpZWxsZWljaHQgaGFiIGljaCBudXIgZWluZW4gYW5kZXJlbiBEZW1va3JhdGllYmVncmlmZiBhbHMgZHUuCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChBbmF0b2wsIDEzLiBGZWIgMjAwMywgMTg6MTY6NTkpOgp+IyEgcm49RWxiZXJldCBydD0xMDQ1MTU1ODY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA3MTQxMwpKZXR6dCBmYW5nIERVIG5pY2h0IGF1Y2ggbm9jaCBhbiwgQ2FkcmFjaCB6dSB3aWRlcnNwcmVjaGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBJcmFrLVByb2JsZW1hdGlrICYgTkFUTy1WZXRvIHZvbiBEK0YuLi4gKEVsYmVyZXQsIDEzLiBGZWIgMjAwMywgMTg6MjA6NDgpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNDUxNTY2MTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDcxNDEzCndpZXNvIGRhcmYgSUNIIGRhcyBuaWNodD8/PwoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IElyYWstUHJvYmxlbWF0aWsgJiBOQVRPLVZldG8gdm9uIEQrRi4uLiAoRm9vYmFyLCAxMy4gRmViIDIwMDMsIDE4OjIyOjEzKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0NTE1Njg0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKTWFnaWUuCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBJcmFrLVByb2JsZW1hdGlrICYgTkFUTy1WZXRvIHZvbiBEK0YuLi4gKEFuYXRvbCwgMTMuIEZlYiAyMDAzLCAxODozMDo1MSk6Cn4jISBybj1Gb29iYXIgcnQ9MTA0NTE1NjkzMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKKnNjaG5hdWIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChNYW5kcmFnb24sIDEzLiBGZWIgMjAwMywgMTg6NDI6MzQpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNDUxNTc0NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDcxNDEzCkR1cmNoIGRpZSBUcmVubnVuZyBkZXIgQnVuZGVzbGFlbmRlciB1bmQgZGVyIGRhbWl0IGF1ZnRyZXRlbmRlbgpVZWJlcmhhbmdtYW5kYXRlIGthbm4gZXMgc2VociB3b2hsIGRhenUga29tbWVuLCBkYXNzIGVpbmUgUGFydGVpIG1laHIgU2l0emUKaGF0IGFscyBlaW5lIGFuZGVyZSBtaXQgd2VuaWdlciBTdGltbWVuIGFscyBkaWVzZS4gSGFldHRlIGRpZSBTUEQgaW0gbGV0enRlbgpIZXJic3QgNzAwMCBTdGltbWVuIHdlbmlnZXIgZ2VoYWJ0LCB3YWVyZSBnZW5hdSBkYXMgcGFzc2llcnQuCgoKTWZHCgpNYSogCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChDYWRyYWNoLCAxMy4gRmViIDIwMDMsIDE5OjA2OjE4KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0NTE1NTg2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKMS4gU293ZWl0IGljaCB3ZWlzcywgZ2lidCBlcyBVZWJlcmhhbmdtYW5kYXRlIHdlbm4gZWluZSBQYXJ0ZWkgaW4gZWluZW0KQnVuZGVzbGFuZCBtZWhyIERpcmVrdG1hbmRhdGUgYmVrb21tdCwgYWxzIGlociBhdWZncnVuZCBpaHJlciBQcm96ZW50ZQp6dXN0ZWhlbi4gRGFubiBiZWtvbW1lbiBuYWVtbGljaCBkaWUgYW5kZXJlbiBQYXJ0ZWllbiBzb2dlbmFubnRlCkF1c2dsZWljaHNtYW5kYXRlLCBkYW1pdCBkaWUgUGFydGVpZW4gZWJlbiBnZW5hdXNvdmllbGUgTWFuZGF0ZSBoYWJlbiwgd2llCklobmVuIGF1ZmdydW5kIGRlcyBBYnN0aW1tdW5nc3ZlcmhhbHRlbnMgaW4gZGllc2VtIEJ1bmRlc2xhbmQgenVzdGVoZW4hIChMYXV0Ck1hbmRyYWdvbiBnaWJ0IGVzIGRpZSBBdXNnbGVpY2hzbWFuZGF0ZSBiZWkgQnVuZGVzdGFnc3dhaGxlbiBnYXIgbmljaHQgc29uZGVybgpudXIgYmVpIExhbmR0YWdzd2FobGVuLiBJcnJpdGllcnQgbWljaCB6d2FyLCBhYmVyIGFlbmRlcnQgYW4gbWVpbmVtIEhhdXB0cHVua3QKbmljaHRzKS4KR3J1bmRzYWV0emxpY2ggd2VyZGVuIGFsbGUgTWFuZGF0ZSBCdW5kZXNsYW5kIGJlem9nZW4gYWJnZXJlY2huZXQgdW5kIGVzIGdpYnQKX2tlaW5lXyBCdW5kZXN3ZWl0ZW4gQXVzZ2xlaWNoc21hbmRhdGUgZnVlciBkaWUgYW5kZXJlbiBQYXJ0ZWllbiwgd2VubiBlaW5lClBhcnRlaSBCdW5kZXN3ZWl0IG1laHIgTWFuZGF0ZSBiZWtvbW10LCBhbHMgaWhyIGF1ZmdydW5kIGlocmVyIFN0aW1tZW4KZWlnZW50bGljaCB6dXN0ZWhlbi4KTWFuIG1hZyBqZXR6dCBzYWdlbiwgTmFqYSBkYXMgc2luZCBkb2NoIG51ciAxLTIgTWFuZGF0ZSB1bmQgZGFzIGRhZHVyY2ggZGVyCkthbnpsZXIgZW50c2NoaWVkZW4gd2lyZCBpc3QgZG9jaCBzZWhyIHVud2FocnNjaGVpbmxpY2guIFNpY2hlciwgYWJlciBnZW5hdXNvCmVpbiBLb3BmIGFuIEtvcGYgcmVubmVuIHdhciBkYXMgaW4gQW1pbGFuZCBhdWNoICh1bmQgenVtaW5kZXN0IEtvYWxpdGlvbmVuIGhhdApkYXMgaW4gRGV1dHNjaGxhbmQgYXVjaCBzY2hvbiBlbnRzY2hpZWRlbikuCjIpIEluIGRlciBUYXQgaGFiZW4gd2lyIHp3ZWkgZGFubiBnYW56IG9mZmVuc2ljaHRsaWNoIGVpbmVuIGFuZGVyZW4KRGVtb2tyYXRpZWJlZ3JpZmYgRWxiZXJldCwgaWNoIGJpbGRlIG1pciB6dW1pbmRlc3QgZWluLCBpbiBlaW5lciBEZW1va3JhdGllIHp1CmxlYmVuLiBBYmVyIGRhcyBkaXNrdXRpZXJlbiB3aXIgYmVpIEdlbGVnZW5oZWl0IGdsYXViIGljaCBsaWViZXIgbWFsIGJlaSBuZW0KQmllciA6bykKCgpDYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChOb25uZSwgMTMuIEZlYiAyMDAzLCAxOTo1MTo0MSk6Cn4jISBybj1DYWRyYWNoIHJ0PTEwNDUxNTk1Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDcxNDEzCkFjaCBEdSBzcHJpY2h0IHZvbiBVZWJlcmhhbmdtYW5kYXRlbiB3ZWdlbiBkZXIgV2FobGtyZWlzZSEgRGFzIGdpYnQgZXMgaGFsdAp3ZWdlbiBkZXIgMS4gU3RpbW1lIG1pdCBkZXIgc2VpbmVuIEFiZ2VvcmRuZXRlbiBkaXJla3Qgd2FlaGx0LiBPYiBkYXMgbnVuCnVuZGVtb2tyYXRpc2NoIGlzdCwgZGFydWViZXIga2FubiBtYW4gc3RyZWl0ZW4sIGFiZXIgZGFmdWVyIGhhdCBtYW4gZGllCk1vZWdsaWNoa2VpdCBkaXJla3QgenUgd2FlaGxlbi4gRGFzIGhhdCBhYmVyIG5peCBtaXQgQXVzZ2xlaWNoc21hbmRhdGVuIHp1CnR1biwgZGllIGVzIGluIGRlciB0YXQgbnVyIGluIGVpbmlnZW4gQnVuZGVzbGFlbmRlcm4gYmVpIExhbmR0YWdzd2FobGVuIGdpYnQuCkFiZXIgQnVuZGVzbGFlbmRlciBnZXRyZW5udCB3ZXJkZW4gZGEgbmljaHQgYWJnZXJlY2huZXQuIFNvbGx0ZXN0IERpY2gKdmllbGxlaWNodCBlaW4gYmlzc2NoZW4gYmVzc2VyIHVlYmVyIERlaW5lIEFyZ3VtZW50ZSBpbmZvcm1pZXJlbiwgYmV2b3IgRHUKaGllciBsb3NsYWJlcnN0LCBQYWRyZWljLiAKCk5vbm5lLCBqZXR6dCBhdWZnZWtsYWVydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBJcmFrLVByb2JsZW1hdGlrICYgTkFUTy1WZXRvIHZvbiBEK0YuLi4gKEdyaW1tYm9ybiwgMTMuIEZlYiAyMDAzLCAxOTo1Mzo1Nik6Cn4jISBybj1Ob25uZSBydD0xMDQ1MTYyMzAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA3MTQxMwo+IE5vbm5lLCBqZXR6dCBhdWZnZWtsYWVydC4KCkp1bmdzLCBpaHIga29lbm50IGRlbiBTdG9yY2ggd2llZGVyIHdlZ3BhY2tlbiB1bmQgZGllIEJpZW5lbiBlaW5mYW5nZW4uIERpZQpCbHVtZW4gaGF0IGphIHNjaG9uIGVpbiB2b3JiZWlsYXVmZW5kZXIgQmx1ZW1jaGVucGZsdWVja2VyIGVpbmdlc2FtbWVsdCAodmllbApTcGFzcyBtaXQgZGVtIEZQISkuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktvZWxsZXMgRGFjaGRlY2tlci4uLiAoQW1hcnlsbGlzLCAxMy4gRmViIDIwMDMsIDIwOjEzOjI5KToKCldlciBhdWYgImRhZSBLb2Vsc2NoZSBTcHJvb2NoIiBzdGVodCB1bmQgbWFsIGhvZXJlbiB3aWxsLCB3aWUgZWluIERhY2hkZWNrZXIKZGllc2VyIFN0YWR0IHNvIGFiZ2VodCB1bmQgd2FzIGVyIGxpbmd1aXN0aXNjaCBhdWYgTGFnZXIgaGF0OgpodHRwOi8vd3d3LmltaS5teW5ldGNvbG9nbmUuZGUvdGVtcC9EYWNoZGVja2VyLm1wMwoKQW1hKiwga2ljaGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1cyBkZXIgUmVpaGUgIndpdHppZ2UgVGl0ZWwiIChBbWFyeWxsaXMsIDEzLiBGZWIgMjAwMywgMjA6NDQ6MzMpOgpmaW5nZXIga2xvbmsKZmluZ2VyIHZyYWkKClVuZCBkYSBzYWdlIG5vY2ggZWluZXIsIE1hZ2llciBzZWllbiBlaW5mYWxsc2xvcy4uLiA6KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChab29rLCAxMy4gRmViIDIwMDMsIDIwOjQ3OjEwKToKfiMhIHJuPUNhZHJhY2ggcnQ9MTA0NTEzMDk5OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKYWQuIDE6IFdpZXNvIGtvZW5uZW4gZGllc2UgVmVyemVycnVuZ2VuIGluIGRlbiBVU0EgbmljaHQgdm9ya29tbWVuPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBJcmFrLVByb2JsZW1hdGlrICYgTkFUTy1WZXRvIHZvbiBEK0YuLi4gKFpvb2ssIDEzLiBGZWIgMjAwMywgMjA6NTE6MjApOgp+IyEgcm49S2VsbHlidW5keSBydD0xMDQ1MTUzMzU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA3MTQxMwpXYXMgaGVpc3N0ICJ1ZWJlcnNlaGVuIj8gU293ZWl0IGljaCBkYXMgYmV1cnRlaWxlbiBrYW5uLCBnaWJ0IGVzIHdlbHR3ZWl0CnZvZWxsaWcgdW50ZXJzY2hpZWRsaWNoZSBQcmFlZmVyZW56ZW4sIHdhcyBkZW4gR3JhZCB2b24gc296aWFsZXIKVW5nbGVpY2hoZWl0IGFuZ2VodCwgZGVuIG1hbiBhbHMgR2VzZWxsc2NoYWZ0IHp1IGVydHJhZ2VuIGJlcmVpdCBpc3QuIE51cgp3ZWlsIGRpZSBBbWVyaWthbmVyIGRhIG1laHIgVW5nbGVpY2hoZWl0IGZ1ZXIgYWt6ZXB0YWJlbCBoYWx0ZW4sIHd1ZXJkZSBpY2gKbWljaCBuaWNodCBhdWZzY2h3aW5nZW4gdW5kIGRhcnVlYmVyIGVpbiBXZXJ0dXJ0ZWlsIGZhZWxsZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IElyYWstUHJvYmxlbWF0aWsgJiBOQVRPLVZldG8gdm9uIEQrRi4uLiAoWm9vaywgMTMuIEZlYiAyMDAzLCAyMDo1Mjo1Mik6Cn4jISBybj1DYWRyYWNoIHJ0PTEwNDUxNTQ2NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDcxNDEzCkljaCBtb2VjaHRlIGRhIGRhbm4genVtaW5kZXN0IGRpZSBTY2h3ZWl6IGF1c25laG1lbi4gRGllIEVpbmZ1ZWhydW5nIGRlcgpUb2Rlc3N0cmFmZSB3YWVyZSBtRSBtaXR0ZWxzIFZvbGtzaW5pdGlhdGl2ZSBhdWYgVGVpbHJldmlzaW9uIGRlcgpCdW5kZXN2ZXJmYXNzdW5nIG1vZWdsaWNoLiBJc3QgYWJlciBiaXNoZXIgbmljaHQgZ2VzY2hlaGVuLiAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBJcmFrLVByb2JsZW1hdGlrICYgTkFUTy1WZXRvIHZvbiBEK0YuLi4gKFpvb2ssIDEzLiBGZWIgMjAwMywgMjA6NTQ6MzcpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDQ1MTI2MDEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA3MTQxMwpEb29mZSBGcmFnZTogV2llc28gc2luZCBkaWUgVVNBIERlaW5lciBNZWludW5nIG5hY2ggZGVyIEJhc2lzZGVtb2tyYXRpZQphbSBuYWVjaHN0ZW4sIGFiZXIgYW5kZXJlIExhZW5kZXIsIGRpZSBlYmVuZmFsbHMgcGxlYmlzeml0YWVyZSBFbGVtZW50ZQpoYWJlbiAoc28gd2llIGRpZSBTY2h3ZWl6KSBuaWNodD8gR2lidCBlcyBkYWZ1ZXIgZWluZW4gaW5oYWx0bGljaGVuCkdydW5kIG9kZXIgbGllZ3QgZXMgYW4gInZvbiBhbGxlbiBTdGFhdGVuIGRpZXNlciBXZWx0IGRpZSBpY2gga2VubmUiPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBJcmFrLVByb2JsZW1hdGlrICYgTkFUTy1WZXRvIHZvbiBEK0YuLi4gKEVsYmVyZXQsIDEzLiBGZWIgMjAwMywgMjA6NTY6MDMpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMDQ1MTUzMzU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA3MTQxMwphbHNvIGdlcmFkZSB3YXMgYmlsZHVuZyBhbmdlaHQsIGtvZW5uZW4gd2lyIGluIGRldXRzY2hsYW5kIGphIG51biBuaWNodCBnZXJhZGUKZGllIGdyb3NzZSBMaXBwZSByaXNraWVyZW4uIFVuZCBuZWluIGljaCBtZWluIGRhcyBuaWNodCB3ZWdlbiBkZXIgUGlzYS1TdHVkaWUuCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChNdXBmZWwsIDEzLiBGZWIgMjAwMywgMjE6MTE6MTMpOgp+IyEgcm49RWxiZXJldCBydD0xMDQ1MTY2MTYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA3MTQxMwpnZW5hdSwgd2VubiBtYW4gbnVyIGFuIGFsbCBkaWUga2luZGVyIGRlbmt0LCBkaWUgc3RhdHQgenUgbGVybmVuIGltIG11ZApydW1oYWVuZ2VuLi4uIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChDYWRyYWNoLCAxMy4gRmViIDIwMDMsIDIzOjU3OjExKToKfiMhIHJuPVpvb2sgcnQ9MTA0NTE2NjA3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKenUgTm9ubmU6IG5laW4gaWNoIHNhZ3RlIGRvY2ggZWlnZW50bGljaCBkYXMgaWNoIGViZW4gX25pY2h0XyBudXIgZGllClVlYmVyaGFuZ21hbmRhdGUgbWVpbnRlLCBzZWxic3Qgb2huZSBkaWUga29lbm50ZSBkYXMgUHJvYmxlbSBub2NoIGF1ZnRyZXRlbgplaW5lciBWZXJ6ZXJydW5nIGJlaSBLb3BmIGFuIEtvcGYgUmVubmVuIG5hZW1saWNoIG5vY2ggYXVmdHJldGVuLgpVZWJlcmhhbmdtYW5kYXRlIHZlcmFlbmRlcm4gb2RlciB2ZXJzdGFlcmtlbiBkaWVzZW4gRWZmZWt0IG51ciBub2NoISEhCk1hbCBhbmdlbm9tbWVuLCBlcyBnYWViZSB1ZWJlcmhhdXB0IGtlaW5lIERpcmVrdG1hbmRhdGUuIERhbm4gd2lyZCBpbW1lciBub2NoCkJ1bmRlc2xhbmR3ZWlzZSBiZXN0aW1tdCB3ZWxjaGUgQWJnZW9yZG5ldGUgYXVzIGRpZXNlbSBCdW5kZXNsYW5kIGluIGRlbgpCdW5kZXN0YWcga29tbWVuIChhbiBIYW5kIGRlciBMaXN0ZW4gZGllc2VzIEJ1bmRlc2xhbmRlcykuIEJlaSBkaWVzZXIKVmVyZmFocmVuc3dlaXNlIGthbm4gZXMgcGFzc2llcmVuIGRhcyBEaXIgaW4gMTYgQnVuZGVzbGFlbmRlcm4sIGpld2VpbHMgbWl0CmVpbmVyIFN0aW1tZSBlaW4gTWFuZGF0IHZlcmxvcmVuIGdlaHQgdW5kIER1IG1pdCBlaW5lciBTdGltbWUgbWVociBlaW4gTWFuZGF0Cm1laHIgYmVrb21tZW4gaGFldHRlc3QgKG9kZXIgdm9uIG1pciBhdXMgYXVjaCBtaXQgendlaSBTdGltbWVuIG1laHIgdW0gZGVuClBhdHQgbWFsIGF1c3p1c2NobGllc3NlbikuCnp1IFpvb2s6IGVzIGdpYnQgaW4gZGVyIFNjaHdlaXogendhciBub2NoIGVpbmVuIEthbnRvbiBpbmRlbSBGcmF1ZW4gbmljaHQKYWJzdGltbWVuIGR1ZXJmZW4sIGFiZXIgb2sgZGFzIG11c3Mga2VpbiBIaW5kZXJ1bmdzZ3J1bmQgc2VpbiBlcyBEZW1va3JhdGllIHp1Cm5lbm5lbi4gRGllIFNjaHdlaXogZ2Vob2VydCB6d2FyIHp1ICJhbGwgZGVuIFN0YWF0ZW4gZGllIGljaCBrZW5uZSIsIGFiZXIgaW4KZGVtIFp1c2FtbWVuaGFuZywgaGFiZSBpY2ggc2llIGluIGRlciBUYXQgdWViZXJzZWhuIDpvKQoKCkNhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IElyYWstUHJvYmxlbWF0aWsgJiBOQVRPLVZldG8gdm9uIEQrRi4uLiAoR3JpbW1ib3JuLCAxNC4gRmViIDIwMDMsIDAwOjIyOjE0KToKfiMhIHJuPUNhZHJhY2ggcnQ9MTA0NTE3NzAzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKSXJnZW5kd2llIGlzdCBkaWVzZSBLb3JpbnRoZW5rYWNrZXJlaSB6aWVtbGljaCBmcnVjaHRsb3MuIEVzIGdpYnQga2Vpbgp3aXJrbGljaCBpbiBqZWRlbSBGYWxsIGZhaXJlcywgZnVua3Rpb25pZXJlbmRlcyBXYWhsdmVyZmFocmVuIGJlaSBkZW0gbWVociBhbHMKendlaSBNb2VnbGljaGtlaXRlbiB6dXIgQXVzd2FobCBzdGVoZW4sIGluc29mZXJuIGdlaHQgZXMgYmVpIGFsbGVuIFdhaGwtIHVuZApWZXJ0ZWlsdW5nc3ZlcmZhaHJlbiBudXIgdW0gU2NoYWRlbnNtaW5pbWllcnVuZywgbmljaHQgbWVoci4gRWluIGRlcm1hc3NlbgprcmFzcyBzY2hpZWZlcyBTeXN0ZW0gd2llIGluIGRlbiBVU0Egb2RlciBHQiBkYW1pdCB6dSB2ZXJ0ZWlkaWdlbiBkYXNzIGVzCnVudGVyIGV4b3Rpc2NoZW4gVW1zdGFlbmRlbiBhdWNoIGluIGFuZGVyZW4gTGFlbmRlcm4gdW5nZXJlY2h0IHdlcmRlbiBrYW5uIGlzdAplaW5mYWNoIG51ciBsYWVjaGVybGljaC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChPcmt0b2V0ZXIsIDE0LiBGZWIgMjAwMywgMDk6MzU6NDMpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNDUxNzg3MDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDcxNDEzCkR1IGlycnN0LCBNYW5kcmFnb24uIERlbiBGYWxsIGRlciBVZWJlcmhhbmdtYW5kYXRlIGhhdHRlIENhZHJhY2ggZG9jaCBleHBsaXppdAphdXNnZW5vbW1lbi4gRGllIEJ1bmRlc3RhZ3N3YWhsIGZpbmRldCB0YXRzYWVjaGxpY2ggd2VuaWdlciBCdW5kZXN3ZWl0IGFscwpqd2VpbHMgTGFuZGVzYmV6b2dlbiBzdGF0dCwgZGEgaGF0IGVyIHZvZWxsb2cgcmVjaHQuIEluIGVpbmVtIEZhbGwgd2llIHZvbgpDYWRyYWNoIGdlbmFubnQgd28gZWluZXIgUGFydGVpIG1laHJlcmVuIEJ1bmRlc2xhZW5kZXJuIE1hbmRhdGUga25hcHAKZW50Z2VoZW4sIGRhZnVlciBpbiBhbmRlcmVuIEJ1bmRlc2xhZW5kZXJuIE1hbmRhdGUgbWl0IGdyb3NzZXIgTWVocmhlaXQKZ2V3b25uZW4gd2VyZGVuIChlcyBnZWh0IGhpZXJiZWkgaW1tZXIgbnVyIHVtICJkYXMgbGV0enRlIiBNYW5kYXQgYXVzIGRlcgoiWndlaXRzdGltbWUiLCB3ZW5uIGRpZSByZXN0bGljaGVuIE1hbmRhdGUgc2Nob24gNTA6NTAgYXVmZ2V0ZWlsdCBzaW5kKSwga2FubgplcyBpbSBFbmRlZmZla3Qgc2VpbiBkYXMgQnVuZGVzd2VpdCBkZXV0bGljaCBtZWhyIFN0aW1tZW4gZnVlciBQYXJ0ZWkgQSBzaW5kCih6d2VpdHN0aW1tZW4pLCBQYXJ0ZWkgQiBhYmVyIHRyb3R6ZGVtIG1laHIgTWFuZGF0ZSBlcmhhZWx0LiBEYXMgbWl0IGRlbgpVZWJlcmhhbmdtYW5kYXRlbiBkaWUgKGF1Y2ggQnVuZGVzbGFuZGJlem9nZW4pIGVpbmVuIEF1c2dsZWljaCB6d2lzY2hlbgpEaWVrdG1hbmRhdGVuIHVuZCBad2VpdHN0aW1tZW5tYW5kYXRlbiBiZXdpcmtlbiBzb2xsZW4ga29tbXQgZGFubiB6dXNhZXR6bGljaApub2NoIGlucyBTcGllbC4KT2IgbWFuIGRpZXNlcyBWZXJmYWhyZW4gdW5kZW1va3JhdGlzY2ggbmVubmVuIHNvbGwgdWViZXJsYXNzZSBpY2ggZ2VybmUgamVkZW0Kc2VsYnN0LCBudXIga2FubiBlcyBXYWhsYXVzZ2FlbmdlIHdpZSBkZW4gaW4gZGVuIFVTQSBiZWkgdW5zIGF1Y2ggZ2ViZW4KKHNlbGJzdCBkYXMgTmFjaGdlemFlaGx0IHdlcmRlbiBtdXNzIGdpYnQgZXMgYXVjaCBiZWkgdW5zKS4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChOb25uZSwgMTQuIEZlYiAyMDAzLCAwOTo1MDoxNSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA0NTIxMTc0MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKTmFqYSwgZGllIEF1c3dpcmt1bmdlbiBzaW5kIGFiZXIgd2VpdGF1cyBnZXJpbmdlci4gRXMgZ2VodCBqYSwgd2llIER1IGJlcmVpdHMKc2FndGVzdCwgbnVyIHVtIGRlbiBsZXR6dGVuIFNpdHosIGluIGRlbiBVU0Ega3JpZWd0IGFiZXIgZGllIFBhcnR5LCBkaWUgbnVyCmVpbmUgU3RpbW1lIG1laHIgaGF0IGFsbGUgV2FobG1hZW5uZXIgZGVzIFN0YWF0ZXMuIERhYmVpIGthbm4gZGllIFZlcnNjaGllYnVuZwpkb2NoIGRldXRsaWNoIGdyb2Vzc2VyIHNlaW4gYWxzIGluIERldXRzY2hsYW5kLgoKTm9ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogSXJhay1Qcm9ibGVtYXRpayAmIE5BVE8tVmV0byB2b24gRCtGLi4uIChOb25uZSwgMTQuIEZlYiAyMDAzLCAxMDoxMjoxMCk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTA0NTIxMjc1NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKT2theSwgb2theS4gSmV0enQgd2lsbCBpY2ggQmV3ZWlzZS4gQmlzaGVyIHdhciBpY2ggZGVyIE1laW51bmcsIGVzIHdpcmQKYXVzZ2V6YWVobHQsIHdpZSB2b24gTWFuZHJhZ29uIGJlc2NocmllYmVuLiBOdW4gZmluZ2VuIGFiZXIgMiBMZXV0ZSBhbiwgdm9uCkJ1bmRlc2xhZW5kZXJuIHp1IHJlZGVuLCBhbHNvIGRhY2h0ZSBpY2gsIG9rYXksIGthbm4gamEgc2VpbiwgdHJvdHpkZW0gaXN0IGRpZQpWZXJzY2hpZWJ1bmcgbmljaHQgc28gZ3Jvc3MsIHdpZSBpbiBkZW4gVVNBLCB3ZXNoYWxiIGRpZXNlcyBBcmd1bWVudCBmdWVyIG9kZXIKd2lkZXIgZGFzIFN5c3RlbSAnRGVtb2tyYXRpZScgenUgbmVubmVuLCBldHdhcyB1bmdsdWVja2xpY2ggaXN0LiBBYmVyIHdlbm4KTWFuZHJhZ29uIHJlY2h0IGhhdCwgZ2lidHMgZGllIFZlcnNjaGllYnVuZyBqYSBzb3dpZXNvIG51ciBkdXJjaApVZWJlcmhhbmdtYW5kYXRlLiBEaWUgTGFuZGVzbGlzdGVuIHNpbmQgZG9jaCBlaWdlbnRsaWNoIHBhcnRlaWludGVybmUKTG9lc3VuZ2VuLCB3aWUgbWFuIGRpZSBTaXR6ZSBpbSBCdW5kZXN0YWcgYXVmZnVlbGx0IHVuZCBzaW5kIG5pY2h0IHBlciBHZXNldHoKaW0gV2FobG1vZHVzIHZlcmFua2VydCwgb2Rlcj8gCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBJcmFrLVByb2JsZW1hdGlrICYgTkFUTy1WZXRvIHZvbiBEK0YuLi4gKEJvaW5nLCAxNC4gRmViIDIwMDMsIDEwOjE1OjI4KToKfiMhIHJuPU5vbm5lIHJ0PTEwNDUyMTM5MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDcxNDEzCnd3dy53YWhscmVjaHQuZGUKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IElyYWstUHJvYmxlbWF0aWsgJiBOQVRPLVZldG8gdm9uIEQrRi4uLiAoR3JpbW1ib3JuLCAxNC4gRmViIDIwMDMsIDEwOjIwOjM1KToKfiMhIHJuPUJvaW5nIHJ0PTEwNDUyMTQxMjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDcxNDEzCld1ZXJkZXN0IER1IGJpdHRlIG1hbCBhdWZob2VyZW4gaW50ZXJlc3NhbnRlIERpc2t1c3Npb25lbiBkdXJjaCBkYXMgRWluYnJpbmdlbgp2b24gRmFrdGVuIHp1IHRvcnBlZGllcmVuPyAKSWNoIHNhY2ggbWFsOiBXZW5uIG1hbiBzaWNoIHNvbGNoZSBEaXNrdXNzaW9uZW4gYW5ndWNrdCBpc3QgZG9jaCBkaWUgQW50d29ydAphdWYgZGllIEZyYWdlICJXaWV2aWVsIERlbW9rcmF0aWUgaGFiZW4gd2lyIGRlbm4gbnVuIGVpZ2VudGxpY2g/IiBkb2NoCnNvbm5lbmtsYXI6IFp1dmllbC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IElyYWstUHJvYmxlbWF0aWsgJiBOQVRPLVZldG8gdm9uIEQrRi4uLiAoQm9pbmcsIDE0LiBGZWIgMjAwMywgMTA6MjE6MDUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDUyMTQ0MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1MDcxNDEzClRzY2h1bGRpZ3VuZyAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBJcmFrLVByb2JsZW1hdGlrICYgTkFUTy1WZXRvIHZvbiBEK0YuLi4gKE1hbmRyYWdvbiwgMTQuIEZlYiAyMDAzLCAxMDo1MDoxNyk6Cn4jISBybj1Cb2luZyBydD0xMDQ1MjE0NDY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA3MTQxMwoKQWxzbyAuLi4gbWFsIG1pdCBvZmZlbmVtIFdhaGxnZXNldHogYXJiZWl0ZW4gLi4uCgoxKSBFcyB3aXJkIHdlcmRlbiBkaWUgMjk5IERpcmVrdGthbmRpZGF0ZW4gZXJtaXR0ZWx0CjIpIEVzIHdpcmQgZXJtaXR0ZWx0LCB3ZWxjaGUgUGFydGVpZW4gdWViZXIgZGllIExhbmRlc2xpc3RlIGVpbnppZWhlbgogICBEYXMgc2luZCBzb2xjaGUsIGRpZSBtaW5kZXN0ZW5zIDMgRGlyZWt0bWFuZGF0ZSBvZGVyIGFiZXIgbWVociBhbHMgNSUgZGVyCiAgIFp3ZWl0c3RpbW1lbiBoYWJlbi4KMykgRGFuYWNoIHdlcmRlbiBad2VpdHN0aW1tZW4gYXVzc29ydGllcnQgdm9uIFdhZWhsZXJuIHZvbiBEaXJla3RrYW5kaWRhdGVuLAogICBkaWUgZWluZXIgUGFydGVpIGFuZ2Vob2VyZW4sIGRpZSBuaWNodCB1ZWJlciBkaWUgTGlzdGUgaW4gZGVuIEJ1bmRlc3RhZwogICBlaW56aWVoZW4uIChCc3AuOiBXZXIgaW4gQmVybGluIGluIGRlbiBQRFMtV2FobGtyZWlzZW4gbWl0IGRlciBFcnN0c3RpbW1lCiAgIFBEUyAoei5CLiBQZXRyYSBQYXUpIGdld2FlaGx0IGhhdCB1bmQgbWl0IGRlciBad2VpdHN0aW1tZSBTUEQsIGRlc3NlbgogICBad2VpdHN0aW1tZSB3dXJkZSBhdXNzb3J0aWVydCwgd2VpbCBkaWUgUERTIG5pY2h0IHVlYmVyIGVpbmUgTGFuZGVzbGlzdGUKICAgaW4gZGVuIEJ1bmRlc3RhZyBlaW56aWVodCAuLiBnZWlsZSBSZWdlbHVuZykKNCkgVWViZXIgZGllIExhbmRlc2xpc3RlbiB3ZXJkZW4gZm9sZ2VuZGUgTWFuZGF0ZSB2ZXJnZWJlbjogNTk5LUFuemFobCBkZXIKICAgRGlyZWt0bWFuZGF0ZSwgZGllIGF1ZiBCZXdlcmJlciBlbnRmYWxsZW4sIGRpZSBQYXJ0ZWllbiBhbmdlaG9lcmVuLCBkaWUKICAgbmljaHQgdWViZXIgZGllIExhbmRlc2xpc3RlIGVpbnppZWhlbi4gKEltIGpldHppZ2VuIEJ1bmRlc3RhZyB3YXJlbiBkYXMKICAgMiAoUERTKSAtPiA1OTcgdWViZXIgTGFuZGVzbGlzdGUKNSkgSmV0enQgd2lyZCBkaWUgQW56YWhsIGRlciBTaXR6ZSBwcm8gTGFuZCBlcm1pdHRlbHQuIFVuZCB6d2FyIG5hY2ggZGVyCiAgIFphaGwgZGVyIGFiZ2VnZWJlbmVuIFN0aW1tZW4gLi4uIEplZGVzIExhbmQgZXJoYWVsdCAoQW56YWhsIHZlcmJsZWliZW5kZXIKICAgU2l0emUpKihBbnphaGwgWndlaXRzdGltbWVuIGltIExhbmQpLyhBbnphaGwgZGVyIFp3ZWl0c3RpbW1lbiBCdW5kZXN3ZWl0KQogICBTaXR6ZS4gQnJ1Y2hzdHVlY2tlIHdlcmRlbiB2ZXJ0ZWlsdCAoc2llaGUgV2FobGdlc2V0eikuCjYpIEluIGplZGVtIExhbmQgd2VyZGVuIGRpZSBTaXR6ZSBkZXIgUGFydGVpZW4gYmVyZWNobmV0Lgo3KSBXZW5uIGVzIGluIGVpbmVtIExhbmQgbWVociBkaXJla3QgZ2V3YWVobHRlIEJld2VyYmVyIGVpbmVyIFBhcnRlaSBhbHMKICAgenVnZXRlaWx0ZSBTaXR6ZSBnaWJ0LCBkYW5uIHdpcmQgZGllIExhbmRlc2xpc3RlIGlnbm9yaWVydCB1bmQgZXMgZ2lidAogICBzb2cuIFVlYmVyaGFuZ21hbmRhdGUuIFdlbm4gZXMgd2VuaWdlciBzaW5kLCBkYW5uIHdlcmRlbiBkaWUgdmVyYmxpZWJlbmVuCiAgIFNpdHplIG5hY2ggZGVyIExhbmRlc2xpc3RlIGJlc2V0enQuCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBJcmFrLVByb2JsZW1hdGlrICYgTkFUTy1WZXRvIHZvbiBEK0YuLi4gKE1hbmRyYWdvbiwgMTQuIEZlYiAyMDAzLCAxMDo1MDo1NSk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTA0NTIxNjIxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDUwNzE0MTMKCktvcnJla3R1cjogaW4gNCkgbXVlc3N0ZSBlcyA1OTYgaGVpc3NlbiBzdGF0dCA1OTcKCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV0dGVyIFR5cG8gKEFsY2luYSwgMTQuIEZlYiAyMDAzLCAxNjoyODoyMSk6CmViZW4gYWxzIGljaCBzYWgsIGRhc3MgbWVpbmUgWndlaXRpZSBuaWNodCBhdXNnZXJ1ZXN0ZXQgaXN0OgoKRHUgc2Fnc3Q6IHZvbGwga2Fja2lnLCBkYXMgRmVsbHZpZWNoCkR1IHNhZ3N0OiBhZWhtIG5hY2tpZwoKQWxjaW5hIC0gZ3JpbnN0IGltbWVyIG5vY2gKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBJcmFrLVByb2JsZW1hdGlrICYgTkFUTy1WZXRvIHZvbiBEK0YuLi4gKFpvb2ssIDE1LiBGZWIgMjAwMywgMTI6MDU6MzUpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDQ1MTc3MDMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTA3MTQxMwpOYWphLCAia2VubmVuIiBzY2hlaW50IGRhbm4gYWJlciBhdWNoIGV0d2FzIHVlYmVydHJpZWJlbiB6dSBzZWluLiBTZWl0IDE5N3gKZHVlcmZlbiBGcmF1ZW4gaW4gYWxsZW4gS2FudG9uZW4genUgYWxsZW4gVm9ybGFnZW4gbWl0IGFic3RpbW1lbi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMjogV3VyZnN0ZXJuZSAoRWxiZXJldCwgMTUuIEZlYiAyMDAzLCAxMzoxNjo0Myk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0NTI2NzY0NCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMDQzMDA1NzE4CmludGVyZXNzYW50ZXJ3ZWlzZSBnbGF1YmUgaWNoIGthdW0sIGRhc3MgZXMgdW5lbmRsaWNoIHRyYWVnZSBvYmpla3RlIGdpYnQKTmFqYSwgQ2hlbWllIGlzdCBoYWx0IGRvY2ggbmljaHQgYWxsZXMgLi4uCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMzogV3VyZnN0ZXJuZSAoR3JpbW1ib3JuLCAxNS4gRmViIDIwMDMsIDE0OjAzOjQwKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0NTMxMTQwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMwMDU3MTgKRHUgZ2xhdWJzdCByaWNodGlnLiBXbyBpc3QgZGllIFJlbGV2YW56PyBFcyBnaWJ0IGF1Y2gga2VpbmUgdW5lbmRsaWNoIHNjaHdlcmVuCk9iamVrdGUuIEluIGRlciBXaXJrbGljaGVuIFdlbHQgKGFsc28gZGFzLCB3YXMgZGllIE1hdGhlbWF0aWtlciBudXIgdW5nZXJuIHp1cgpLZW5udG5pcyBuZWhtZW4pIGlzdCBhbGxlcywgd2FzICJ1bmVuZGxpY2giIGlzdCBuaWNodGV4aXN0ZW50IHVuZCBob2VjaHN0ZW5zCmdyZW56d2VydGlnIHp1IHBvc3R1bGllcmVuIChEaWNodGUgdm9uIHNjaHdhcnplbiBMb2VjaGVybiwgei5CLi4gVW5kIG5laW4sCm5pbW0gZGFzIG5pY2h0IGFscyBCZXdlaXMgZnVlciB1bmVuZGxpY2hlIERpY2h0ZSwgZGFmdWVyIGthbm4gbWFuIHVlYmVyIGRpZQpEaW5nZXIgenUgbGFuZ2UgZGlza3V0aWVyZW4uIEluIGRlciBQcmF4aXMga29lbm5lbiBzaWUgbmljaHQgdW5lbmRsaWNoIGRpY2h0CnNlaW4pLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNDogV3VyZnN0ZXJuZSAoS2VsbHlidW5keSwgMTUuIEZlYiAyMDAzLCAxNDowOToxNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0NTMxNDIyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMwMDU3MTgKTmFqYSBkYSBtdXNzIGljaCBkaWUgTWF0aGVtYXRpa2VyIG1hbCBpbiBTY2h1dHogbmVobWVuLCB3ZWlsIGRpZSBCZWdyaWZmZSB3aWUKJ3VuZW5kbGljaCcgc2Nob24gdm9uIHZvcm5oZXJlaW4gYWxzIHRoZW9yZXRpc2NoZW4gR3Jlbnp3ZXJ0IHZlcnN0ZWhlbiwKZXJzdGF1bmxpY2ggaXN0LCB3aWUgdmllbGUgKGF1Y2ggenV3ZWlsZW4gdGhlb3JldGlzY2hlKSBQaHlzaWtlciBzaWNoIGRlc3NlbgpuY2h0IGJld3Vzc3Qgc2luZC1pbSBHZWdlbnNhdHogenUgZGVuIE1hdGhlbWF0aWtlcm4uCgpCbG9uZGNoZW4uIFJMIG5ldCBnYXIgc28gYmxvbmQgdW5kIFBoeXNpa2VyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzU6IFd1cmZzdGVybmUgKEdyaW1tYm9ybiwgMTUuIEZlYiAyMDAzLCAxNDoxNzo1Nyk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTEwNDUzMTQ1NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMDA1NzE4CkljaCBnbGF1YmUgRHUgdW50ZXJzY2hhZXR6dCBkaWUgTmF0dXJ3aXNzZW5zY2hhZnRsZXIuIEVpZ2VudGxpY2ggc2luZCBzaWNoCmFsbGUgYmV3dXNzdCBkYXNzIGFsbGVzLCB3YXMgc2llIGJlc2NocmVpYmVuLCBudXIgTW9kZWxsZSBzaW5kLiBOaWVtYW5kIHdpcmQKZWluIEF0b21tb2RlbGwgbmVobWVuIHVuZCBzYWdlbiAiZGFzIGlzdCBkaWUgV2lya2xpY2hrZWl0Iiwgc29uZGVybiBudXIgInNvCnZlcmhhZWx0IHNpY2ggZGllIFdpcmtsaWNoa2VpdCBiZWkgZGVuIHVuZCBkZW4gQmVvYmFjaHR1bmdlbiIuIERhc3Mgc2ljaCBzb3dhcwppbiBkZXIgdGFlZ2xpY2hlbiBVbWdhbmdzc3ByYWNoZSBhYnNjaGxlaWZ0IHVuZCBuaWNodCBpbW1lciBrbGFyIGRpc2NsYWltZXJ0CndpcmQsIGlzdCBudXIgbmF0dWVybGljaC4gClVuZCB3byBlcyB1bSBHcmVuendlcnRpZ2tlaXQgZ2VodCwgZGFtaXQgYXVjaCBkaWUgTWF0aGVtYXRpa2VyIHdpc3NlbiB3b3ZvbgpkaWUgUmVkZSB3YXI6IERpZSAodHJhZWdlKSBNYXNzZSBlaW5lcyBLb2VycGVycyBnZWh0IGdlZ2VuIFVuZW5kbGljaCBiZWkKQW5uYWVoZXJ1bmcgYW4gZGllIExpY2h0Z2VzY2h3aW5kaWdrZWl0LiBMZXR6dGVyZSBpc3QgbmljaHQgZXJyZWljaGJhciBmdWVyCm1hc3NlYmVoYWZ0ZXRlIEtvZXJwZXIsIHNvIGVyc3BhcnQgbWFuIHNpY2ggZGllIFBlaW5saWNoa2VpdCBlaW5lciB3aXJrbGljaAp1bmVuZGxpY2hlbiBNYXNzZS4gV2FzIGRhcyBtaXQgQ2hlbWllIHp1IHR1biBoYWJlbiBzb2xsIGJsZWlidCBkZXJ3ZWlsIEVsYmlzCkdlaGVpbW5pcy4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNjogV3VyZnN0ZXJuZSAoR3JpbW1ib3JuLCAxNS4gRmViIDIwMDMsIDE0OjE4OjUyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ1MzE1MDc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzAwNTcxOApLb3JyZWt0dXI6ICIuLi5Bbm5hZWhlcnVuZyBhbiBkaWUgVmFrdXVtbGljaHRnZXNjaHdpbmRpZ2tlaXQuIiBtYW4KdHNjaGVyZW5rb3dzdHJhaGx1bmcuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM1OiBXdXJmc3Rlcm5lIChFbGJlcmV0LCAxNS4gRmViIDIwMDMsIDE0OjE5OjIwKToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTA0NTMxNDU1NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMwMDU3MTgKb2NoIGJyYXVjaHN0IG1pY2ggbmljaHQgaW4gU2NodXR6IHp1IG5laG1lbiBnZWdlbiBqZW1hbmRlbiwgZGVyIGltbWVyIHdlbm4gZXIKd2FzIGR1bW1lcyBnZXNhZ3QgaGF0IG1pdCB3byBpc3QgZGllIFJlbGV2YW56IGtvbW10LiBFaWdlbnRsaWNoIHNvbGx0ZSBtYW4Kc2VpbmUgTWFzY2hlIG1hbCBnZWdlbiBpaG4gc2VsYmVyIHZlcndlbmRlbi4KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM2OiBXdXJmc3Rlcm5lIChHcmltbWJvcm4sIDE1LiBGZWIgMjAwMywgMTQ6MjA6MTApOgp+IyEgcm49RWxiZXJldCBydD0xMDQ1MzE1MTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzAwNTcxOApJbiB3ZWxjaGVtIEFydGlrZWwgaGFiZSBpY2ggd2FzIGdlbmF1IGdlc2FndCwgd2FzIER1IGZ1ZXIgZHVtbSBoYWVsc3Q/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM2OiBXdXJmc3Rlcm5lIChab29rLCAxNS4gRmViIDIwMDMsIDE0OjIwOjI2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ1MzE1MDc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzAwNTcxOApXb3chIEFsc28gaWNoIGhhYmUgYmVpIHZpZWxlbiBEaXNrdXNzaW9uZW4gbWl0IE5hdHVyd2lzc2Vuc2NoYWZ0bGVybiBpbW1lcgpkZW4gRWluZHJ1Y2sgZ2VoYWJ0LCBzaWUgd2FlcmVuIHZvbiBkZXIgIm9iamVrdGl2ZW4gV2FocmhlaXQiIGlocmVyIApVZWJlcmxlZ3VuZ2VuIHJlY2h0IHVlYmVyemV1Z3QuIEFiZXIgdmllbGxlaWNodCBoYWJlbiBzaWUgc2ljaCBhdWNoIHp1IHNlaHIKYW4gZGVyIHZvbiBtaXIgYmV0cmllYmVuZW4gV2lzc2Vuc2NoYWZ0IGdlc3RvZXJ0IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzc6IFd1cmZzdGVybmUgKEdyaW1tYm9ybiwgMTUuIEZlYiAyMDAzLCAxNDoyMDo1OCk6Cn4jISBybj1ab29rIHJ0PTEwNDUzMTUyMjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMDA1NzE4CkR1IGJldHJlaWJzdCBXaXNzZW5zY2hhZnQ/IFdhcnVtIGhhc3QgRHUgdW5zIHZvbiBEZWluZW0gWndlaXRzdHVkaXVtIGRlbm4gbmllCmVyemFlaGx0PwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNzogV3VyZnN0ZXJuZSAoRWxiZXJldCwgMTUuIEZlYiAyMDAzLCAxNDoyMToxNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0NTMxNTIxMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMwMDU3MTgKd28gaXN0IGRhIGRpZSByZWxldmFuej8gYWJlciB3cWVubiBkdSBlcyBnZW5hdSB3aXNzZW4gd2lsbHN0LCBzdWNoIGRpciBlaW5lbgphdXMgOykKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM4OiBXdXJmc3Rlcm5lIChab29rLCAxNS4gRmViIDIwMDMsIDE0OjIxOjMyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ1MzE1MjU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzAwNTcxOApxLmUuZC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zODogV3VyZnN0ZXJuZSAoR3JpbW1ib3JuLCAxNS4gRmViIDIwMDMsIDE0OjIyOjE2KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0NTMxNTI3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMwMDU3MTgKT0ssIEVsYmVyZXQsIGljaCBuZWhtZSBEZWluZSBFbnRzY2h1bGRpZ3VuZyBkYWZ1ZXIsIGRhc3MgRHUgQmVoYXVwdHVuZ2VuCmF1ZnN0ZWxsc3QgZGllIER1IG5pY2h0IGJlbGVnZW4ga2FubnN0LCBhbi4gSWNoIGJpbiBqYSBuaWNodCBzby4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzk6IFd1cmZzdGVybmUgKEVsYmVyZXQsIDE1LiBGZWIgMjAwMywgMTQ6MjI6NTkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDUzMTUzMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMDA1NzE4CjpsYWNodC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MDogV3VyZnN0ZXJuZSAoS2VsbHlidW5keSwgMTUuIEZlYiAyMDAzLCAxNDoyNjo1Myk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwNDUzMTUzNzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMDA1NzE4CkF1amEsIGVpbiBGYWt1bHRhZXRzZmxhbWUgaXMgbWFsIHdhcyBuZXVlcywgZGllIE9zLWZsYW1lcyB3ZXJkZW4gbGFuZ3NhbQpsYW5nd2VpbGlnLiAqR09PT09PT09OTk5OTk5OR0dHRyogZXJzdGUgUnVuZGUKCkJsb25kY2hlbiwgc2FiYmVydCBibHV0cnVlbnN0aWcgYXVmIGlociBjaGFvdGlzY2ggbXV0aWVydGVzIERlY29sbGV0ZWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQwOiBXdXJmc3Rlcm5lIChFbGJlcmV0LCAxNS4gRmViIDIwMDMsIDE0OjI4OjQxKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0NTMxNTM3OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMwMDU3MTgKbWFuIGtvZW5udGUgamEgZWluIGFic29sdmVudGVuZmxhbWUgbWFsIHp1ciBBYndlY2hzbHVuZyBtYWNoZW4sIGljaCBnbGF1YiBkYXMKZ2FicyBub2NoIG5pY2h0IC4uLgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzk6IFd1cmZzdGVybmUgKEdyaW1tYm9ybiwgMTUuIEZlYiAyMDAzLCAxNDoyOTowOSk6Cn4jISBybj1ab29rIHJ0PTEwNDUzMTUyOTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMDA1NzE4Ck5hamEsIGlzdCBEaXIgbWFsIGF1ZmdlZmFsbGVuIGRhc3MgZGllIGdhbnplbiBCZXJlaWNoZSwgZGllIGRhcyBXb3J0CiJXaXNzZW5zY2hhZnQiIGltIE5hbWVuIGZ1ZWhyZW4gZXMgb2ZmZW5iYXIgbm9ldGlnIGhhYmVuLCBkYXJhdWYgaGluenV3ZWlzZW4/CldpcnRzY2hhZnRzd2lzc2Vuc2NoYWZ0LCBNdXNpa3dpc3NlbnNjaGFmdCwgUG9saXRpa3dpc3NlbnNjaGFmdCAtIGFiZXIgZXMgZ2lidAprZWluZSBDaGVtaWV3aXNzZW5zY2hhZnQsIGtlaW5lIE1hdGhlbWF0aWt3aXNzZW5zY2hhZnQsIGtlaW5lClBoaWxvc29waGlld2lzc2Vuc2NoYWZ0LiBHaWJ0IGVpbmVtIHp1IGRlbmtlbi4gTmF0dWVybGljaCBoYXQgZGFzIFN5c3RlbQpMdWVja2VuLCBpY2ggc2FnZSBudXI6IEp1cmEuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDA6IFd1cmZzdGVybmUgKEVsYmVyZXQsIDE1LiBGZWIgMjAwMywgMTQ6MzA6MTUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDUzMTU3NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMDA1NzE4CnVuZCB3aWUgaXN0IGRhcyBtaXQgTmF0dXJ3aXNzZW5zY2hhZnRlbj8KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQxOiBXdXJmc3Rlcm5lIChHcmltbWJvcm4sIDE1LiBGZWIgMjAwMywgMTQ6MzA6NDcpOgp+IyEgcm49RWxiZXJldCBydD0xMDQ1MzE1ODE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzAwNTcxOApIYXQgaGllciB3ZXIgdm9uIFNhbW1lbGJlZ3JpZmZlbiBnZXNwcm9jaGVuPyAiVW5kIHdpZSBpc3QgZXMgbWl0Cldpc3NlbnNjaGFmdGVuPyIKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDA6IFd1cmZzdGVybmUgKEtlbGx5YnVuZHksIDE1LiBGZWIgMjAwMywgMTQ6MzE6MDUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDUzMTU3NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMDA1NzE4Ckp1cmEgaXN0IGtlaW5lIFdpc3NlbnNjaGFmdCwgc29uZGVybiBlaW4gbm90d2VuZGlnZXMgVWViZWwuCldhcyBzaW5kIDEwMDAgSnVyaXN0ZW4sIHp1c2FtbWVuZ2VrZXR0ZXQgdW5kIGF1ZiBkZW0gdGllZnN0ZW4gR3J1bmQgZGVzIE96ZWFucwp2ZXJzZW5rdD8KZWluIGd1dGVyIEFuZmFuZy4KCkJsb25kY2hlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDA6IFd1cmZzdGVybmUgKFpvb2ssIDE1LiBGZWIgMjAwMywgMTQ6MzE6MzEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDUzMTU3NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMDA1NzE4CkljaCBtYWNoZSBPZWtvbm9taWUuCgpab29rLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDE6IFd1cmZzdGVybmUgKEdyaW1tYm9ybiwgMTUuIEZlYiAyMDAzLCAxNDozMTo0MSk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTEwNDUzMTU4NjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMDA1NzE4Ck1hY2ggZGFzIHVuZCBEdSBoYXN0IEdyZWVucGVhY2UgYW0gSGFscy4gTWl0IGd1dGVtIEdydW5kLiBEaWUgUHJlc3RpZ2Ugd2FyCnNjaGxpbW0gZ2VudWcsIGFiZXIgZXMgZ2lidCBHcmVuemVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MjogV3VyZnN0ZXJuZSAoRWxiZXJldCwgMTUuIEZlYiAyMDAzLCAxNDozMTo0Myk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0NTMxNTg0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMwMDU3MTgKb2ZmZW5zaWNodGxpY2ggaGFiZW4gZGllIGVzIHNvZ2FyIGdlc2FtbWVsdCBub2V0aWcgZGFyYXVmIGhpbnp1d2Vpc2VuIDspCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MzogV3VyZnN0ZXJuZSAoR3JpbW1ib3JuLCAxNS4gRmViIDIwMDMsIDE0OjMyOjExKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0NTMxNTkwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMwMDU3MTgKSmEsIGRpZSBNYXRoZW1hdGlrZXIgYXVjaDogIkdlaXN0ZXN3aXNzZW5zY2hhZnRlbiIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQzOiBXdXJmc3Rlcm5lIChBa2FzaGEsIDE1LiBGZWIgMjAwMywgMTQ6MzI6MTkpOgp+IyEgcm49RWxiZXJldCBydD0xMDQ1MzE1OTAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzAwNTcxOApVbmQgd2FzIGhhdCBkYXMgbWl0IFd1cmZzdGVybmVuIHp1IHR1bj8KCkFrYXNoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDQ6IFd1cmZzdGVybmUgKFpvb2ssIDE1LiBGZWIgMjAwMywgMTQ6MzI6NDcpOgp+IyEgcm49QWthc2hhIHJ0PTEwNDUzMTU5Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMDA1NzE4CldhcyBnaWJ0cyBmdWVyIFJlMTAwPyA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ0OiBXdXJmc3Rlcm5lIChFbGJlcmV0LCAxNS4gRmViIDIwMDMsIDE0OjM0OjQ1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ1MzE1OTMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0MzAwNTcxOApvY2ggaWNoIGhhYiBuaWNodHMgZGFnZWdlbiwgZWluIEZhY2ggenUgYmV0cmVpYmVuLCBkYXMgZXMgaW4gZGVpbmVuIEF1Z2VuCm5vdHdlbmRpZyBoYXQsIHNpY2ggYWxzIFdpc3NlbnNjaGFmdCB6dSBiZXplaWNobmVuLiBEdSBkYWdlZ2VuIHNjaGVpbnN0IGRhbWl0ClByb2JsZW1lIHp1IGhhYmVuLiBNaW5kZXJ3ZXJ0aWdrZWl0c2tvbXBsZXhlPwoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbiBOZWtyb21hbnQuLi4gKFpvb2ssIDE1LiBGZWIgMjAwMywgMTQ6NDU6MjUpOgp+IyEgb249TXVwZmVsIG90PTEwNDUzMTY3MDkgb2c9ZC51bnRlcndlbHQKfiMhIHJuPVpvb2sgcnQ9MTA0NTMxNjU3OCByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTEwNDUzMTY1NzgKSW4gQ2h1cj8KClNDTlIKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbiBOZWtyb21hbnQuLi4gKFpvb2ssIDE1LiBGZWIgMjAwMywgMTQ6NDU6NDEpOgp+IyEgcm49Wm9vayBydD0xMDQ1MzE2NzI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTMxNjU3OApOaWNodCBnYW56Li4uIEljaCBmaW5kZSwgZGFzIHdhZXJlIGZ1ZXIgZGllc2Ugc2Nob2VuZSBTdGFkdCBkb2NoIGVpbgp6aWVtbGljaCBTY2hvY2suCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDU6IFd1cmZzdGVybmUgKEdyaW1tYm9ybiwgMTUuIEZlYiAyMDAzLCAxNjoyODoxMik6Cn4jISBybj1FbGJlcmV0IHJ0PTEwNDUzMTYwODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQzMDA1NzE4ClNjaG9lbiwgRHUgc3R1ZGllcnN0IGFsc28gR2Vpc3Rlc3dpc3NlbnNjaGFmdC4gSWNoIGthbm4gRGVpbmVuClN0dWRlbnRlbmF1c3dlaXMgbmljaHQgc2VoZW4gdW5kIGdsYXViZSBEaXIgZGFzIGRhaGVyLCB3dWVuc2NoZSBEaXIgdmllbCBTcGFzcwp1bmQgRXJmb2xnIGRhYmVpLgpNZWluIFN0dWRpZW5nYW5nIGplZGVuZmFsbHMgaGllc3MgIkNoZW1pZSAoRGlwbC4pIiwgbmljaHQgIk5hdHVyd2lzc2Vuc2NoYWZ0Ii4KRGFzIGhhdCBtaXQgTWluZGVyd2VydGlna2VpdHNrb21wbGV4ZW4gbmljaHRzIHp1IHR1bi4gRHUga2FubnN0IGJlaGF1cHRlbiBpY2gKc2VpIEthaXNlciB2b24gQ2hpbmEsIHdhcyBzaWNoZXJsaWNoIGVpbmUgc2VociBlaHJlbndlcnRlIFBvc2l0aW9uIGlzdCwgYWJlcgppY2ggd2VyZGUgRGlyIHdpZGVyc3ByZWNoZW4gKHNvbGFuZ2UgaWNoIG5pY2h0IHRhdHNhZWNobGljaCBLYWlzZXIgdm9uIENoaW5hCmJpbiwgbmF0dWVybGljaCkuIEF1Y2ggd2VubiBEdSBkYW5uIHNhZ3N0ICJEdSBzY2hlaW5zdCBkYW1pdCBQcm9ibGVtZSB6dQpoYWJlbiwgbmljaHQgS2Fpc2VyIHZvbiBDaGluYSB6dSBzZWluLiBNaW5kZXJ3ZXJ0aWdrZWl0c2tvbXBsZXhlPyIgYmxlaWJlIGljaApiZWkgbWVpbmVyIERhcnN0ZWxsdW5nLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40NjogV3VyZnN0ZXJuZSAoRWxiZXJldCwgMTUuIEZlYiAyMDAzLCAxNjo0MTowNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0NTMyMjg5MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDMwMDU3MTgKYXJtZXIgR3JpbW1ib3JuLCBkdSBlbnRhZXVzY2hzdCBtaWNoLiBPYiBkYXMgd2FzIGljaCBzdHVkaWVydCBoYWJlIG51biBlaW5lCkdlaXN0ZXMtIG9kZXIgZWluZSBOYXR1cndpc3NlbnNjaGFmdCBpc3QsIGRhcnVlYmVyIHNjaGVpZGVuIHNpY2ggZGllIEdlaXN0ZXIuCklzdCBqYSBhdWNoIGVnYWwsIGFscyB3YXMgZXMgYmV6ZWljaG5ldCB3aXJkLiBOYW1lbiBzaW5kIGphIFNjaGFsbCB1bmQgUmF1Y2guCkZ1ZXIgRGljaCBzY2hlaW50IGRlciBOYW1lIGRlaW5lcyBBYnNjaGx1c3NlcyBqYSB3aWNodGlnIHp1IHNlaW4uIAoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIHVuZCBtZWluZSBWb29kb28tUHVwcGUuLi4gKE11cGZlbCwgMTUuIEZlYiAyMDAzLCAyMjo1OTozMik6CnBpZWtzZSBwdXBwZQpEdSBxdWFlbHN0IGVpbmVuIEZyb3NjaCBmYXN0IHp1IFRvZGUgdW5kIGhvZXJzdCBlaW5lbiBncmF1ZW5oYWZ0ZW4gU2NocmVpLgplaW4gRnJvc2NoIHF1YWVsdCBEaWNoIGZhc3QgenUgVG9kZS4KRHUgaGFzdCBncm9zc2UgU2NobWVyemVuLgpPZmZlbmJhciBoYXQgZWluIEZyb3NjaCBlaW5lIFZvb2Rvby1QdXBwZSB2b24gRGlyLgoKYWhoaHNvIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZm9ybXVsYXIgKEdyaW1tYm9ybiwgMTYuIEZlYiAyMDAzLCAxNTo0Njo0Mik6Cn4jISBvbj1LdXJnYW4gb3Q9MTA0NTQwMzcwOSBvZz1hbGxnZW1laW5lcwpBbnRyYWcgYmxpYmxhYmx1dHNjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWUgUmVnaW9uc21hZ2llciBhdWYgZGVuIEluc2VsbiAoT3JrdG9ldGVyLCAxNy4gRmViIDIwMDMsIDIwOjU5OjA5KToKfiMhIHJuPVpvb2sgcnQ9MTA0NTUxMTg4NiByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA0NTUxMTg4NgpXZXIgd2Vpcz8gRGllIEdlaGVpbW5pc3NlIGRlciBQbGF0dGVudGVrdG9uaWsuLi4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTYWNoZW4gZ2lidHMuLi4gKENhdHdlYXpsZSwgMjAuIEZlYiAyMDAzLCAxNTozNDo1MCk6Cn4jISBvbj1MYXJpc2llbGxlIG90PTEwNDU3NTEzMDYgb2c9bWVnYXNjaG1hcnJuCkRpZSBhZGR5IGhhYiBpY2ggZ3JhZCB2b24gZWluZW0gQmVrYW5udGVuIGJla29tbWVuLiBXaWUgc2Nob24gZXJ3YWVobnQsIFNhY2hlbgpnaWJ0cy4uLgpodHRwOi8vd3d3LmhlaW5yaWNoLXBvZmYuZGUvCgpMYXJpc2llbGxlLCBpbW1lciBub2NoIGRlbiBLb3BmIHNjaHVldHRlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2FjaGVuIGdpYnRzLi4uIChBbmF0b2wsIDIwLiBGZWIgMjAwMywgMTU6NDU6NTQpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNDU3NTE2OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1NzUxNjkwCipHUlVTRUwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2FjaGVuIGdpYnRzLi4uIChIb2JvLCAyMC4gRmViIDIwMDMsIDE2OjI0OjQ4KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDQ1NzUxNjkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTc1MTY5MApSaWNodGlnIHBhc3NlbmQgc2luZCBqYSBkaWUgQmFubmVyLCBkaWUgYXVmIGRlciBTZWl0ZSBzaW5kLgpMb3R0byBzcGllbGVuIHVuZCBzb2xjaGUgVW50YXRlbiEKCiAgICBIb2JvIC0gZ3JpbnN0IHNpY2ggZWlucwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTYWNoZW4gZ2lidHMuLi4gKEFuYXRvbCwgMjAuIEZlYiAyMDAzLCAxNjoyNzoyOCk6Cn4jISBybj1Ib2JvIHJ0PTEwNDU3NTQ2ODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1NzUxNjkwCkljaCBiaW4gbmFjaCB3aWUgdm9yIHppZW1saWNoIHNwcmFjaGxvcy4gRGFzcyBlcyBGdW5kaXMgYXVjaCBpbiBEZXV0c2NobGFuZApnaWJ0LCBkYXMgaXN0IG1pciBuaWNodCBnYW56IG5ldS4gRGFzcyBlcyBzY2hsaW1tZXJlIGdpYnQgYWxzIGRpZSwgZGllIGljaApwZXJzb2VubGljaCBrZW5uZSwgZGFzIGhhYmUgaWNoIGF1Y2ggc2Nob24gZ2VtZXJrdC4gQWJlci4uLiBpY2ggd3Vzc3RlIG5pY2h0LAp3aWV2aWVsIEx1ZnQgZGEgbmFjaCBvYmVuIHdpcmtsaWNoIGlzdC4gRGVyIE1hbm4gaXN0IHNpY2hlciBrZWluIEthdGhvbGlrLApkZXIgUGFwc3QgaGF0IGRvY2ggaW0gTmFtZW4gZGVyIEtpcmNoZSBmdWVyIGRpZSBLcmV1enp1ZWdlIHVtIFZlcmdlYnVuZwpnZWJldGVuLCBvZGVyIGdlaGUgaWNoIGRhIGltIFJhaG1lbiBtZWluZXIgY2hyaXN0bGljaGVuIFVuZ2ViaWxkZXRoZWl0IGFyZwpmZWhsPwoKKnNjaHVldHRlbCogSWNoIHNjaGljayBkZW4gTGluayBtYWwgdWViZXIgZWluIHBhYXIgRWNrZW4gYW4gdW5zZXJlbiBhbHRlbgpEb3JmcGZhcnJlci4gU29sbCBkZXIgbWlzc2lvbmllcmVuIGdlaGVuLi4uLiA6KQoKQW5hdG9sIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTYWNoZW4gZ2lidHMuLi4gKENhdHdlYXpsZSwgMjAuIEZlYiAyMDAzLCAxNjo0NDoxMyk6Cn4jISBybj1BbmF0b2wgcnQ9MTA0NTc1NDg0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDU3NTE2OTAKQWxzbyBpY2ggZmluZCBkaWUgbWl0IGFsbGVyIEdld2FsdCB2b3JnZW5vbW1lbmUgRW50LURlbmdsaXNjaHVuZyBob2VjaHN0CmFtdWVzYW50IDotKQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTYWNoZW4gZ2lidHMuLi4gKEFtYXJ5bGxpcywgMjAuIEZlYiAyMDAzLCAxNjo0ODozMCk6Cn4jISBybj1BbmF0b2wgcnQ9MTA0NTc1NDg0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDU3NTE2OTAKRGFzIGlzdCBlaW4gRmFrZSwgZGVyIHNvIHVuZCBpbiBhZWhubGljaGVyIEZvcm0gYWxzICJTYXRpcmUiIHNjaG9uIHNlaXQKTW9uYXRlbiBkdXJjaHMgTmV0eiBnZWlzdGVydCAtIG1hbCB1bnRlbSBkaWVzZW0sIG1hbCB1bnRlciBqZW5lbSAiUHNldWRvbnltIi4KCkljaCBoYWIgc2Nob24gbWVocmVyZSBWZXJzaW9uZW4gZGllc2VyIFNlaXRlbiBnZXNlaGVuLCBkZXIgU3RpbCBpc3QgaW1tZXIKYWVobmxpY2guCgpBbWEqLCBuaWNodCBhbiBkaWUgRWNodGhlaXQgZ2xhdWJlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTYWNoZW4gZ2lidHMuLi4gKEdyaW1tYm9ybiwgMjAuIEZlYiAyMDAzLCAxNzo0MTo1Nyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTA0NTc1NjExMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDU3NTE2OTAKTmF0dWVybGljaCBpc3QgZGFzIG5pY2h0IGVjaHQuIFVuZCBkYXMgZ2lidHMgbmljaHQgZXJzdCBzZWl0IE1vbmF0ZW4sIHNvbmRlcm4Kc2VpdCBKYWhyZW4uIFNwcmFjaGxvcyBiaW4gaWNoLCB3ZWlsIGRhcyBvZmZlbmJhciB0YXRzYWVjaGxpY2ggTGV1dGUgZXJuc3QKbmVobWVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGaW5kZXQgZXVyZSBOYW1lbiByYXVzIChNdWFkaWIsIDIwLiBGZWIgMjAwMywgMTc6NTc6NTMpOgp+IyEgcm49QXJrIHJ0PTEwNDU3NjAyMDkgcmc9d3d3Cn4jISB0aWQ9MTA0NTc1NjIwMwpkYXMgd3Vzc3Rlc3QgZHUgbmljaHQgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRmluZGV0IGV1cmUgTmFtZW4gcmF1cyAoQXJrLCAyMC4gRmViIDIwMDMsIDE4OjAyOjEwKToKfiMhIHJuPU11YWRpYiBydD0xMDQ1NzYwMjczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTc1NjIwMwpVbmQgZnVlciBQaWxsZSwgU3BvY2sgdW5kIFNjb3R0aSBtdXNzIGJlaW0gQmVhbWVuIHdhcyBmYWxzY2ggZ2VsYXVmZW4gc2VpbiA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2FjaGVuIGdpYnRzLi4uIChNdXBmZWwsIDIwLiBGZWIgMjAwMywgMjE6NTk6MzUpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNDU3NTE2OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1NzUxNjkwCkRhcyBpc3QgU2F0aXJlLiBXZW5ucyBhdWNoIG1hbmNobWFsIG5pY2h0IHNvIGF1c3NpZWh0IDspClZvbiBkaWVzZW4gU2VpdGVuIGdpYnRzIGR1dHplbmRlLiBNYW4gc3VjaGUgYmVpIEdvb2dsZSBuYWNoICJwZmFycnBmZWlmZXIiCih6LkIuKSBvZGVyIGdlaGUgZ2FueiBlaW5mYWNoIGF1ZiBodHRwOi8vbWl0Z2xpZWQubHljb3MuZGUvemFwZnBpc3RvbGUvIHVuZAprbGlja2UgYXVmICJSZWRsLiBIZWltc2VpdGVuIi4KRnJvZWhsaWNoZXMgR3J1c2VsbiA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdGFhdHNwcm9ibGVtZSAoVmFuaW9uLCAyMi4gRmViIDIwMDMsIDE4OjExOjAzKToKfiMhIG9uPVZhbmlvbiBvdD0xMDQ1OTMzODQ3IG9nPXdpdHplCn4jISBybj1EZWVwYmx1ZSBydD0xMDQ1OTMzNjQxIHJnPXdpdHplCn4jISB0aWQ9MTA0NTkzMzY0MQpWZXJtdXRsaWNoIGhhdCBBZGVuYXVlciBzY2hvbiB1ZWJlciBkZW4gZ2VsYWNodC4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdGFhdHNwcm9ibGVtZSAoVmFuaW9uLCAyMi4gRmViIDIwMDMsIDE4OjEzOjQzKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwNDU5MzM5MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1OTMzNjQxCldhcnVtIHNvbGx0ZSBpY2g/CgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3RhYXRzcHJvYmxlbWUgKExlaWJpLCAyMi4gRmViIDIwMDMsIDE4OjE0OjI1KToKfiMhIHJuPVZhbmlvbiBydD0xMDQ1OTM0MDIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTkzMzY0MQpkYW1pdCB3aXIgYWxsZSB3YXMgenUgbGVzZW4gaGFiZW4gOikKdW5kIGljaCBuaWNoIG1laW5lIHJhZXVtZSBiZXNjaHJlaWJlbiBtdXNzCgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3RhYXRzcHJvYmxlbWUgKFZhbmlvbiwgMjIuIEZlYiAyMDAzLCAxODoxNDo1Myk6Cn4jISBybj1MZWliaSBydD0xMDQ1OTM0MDY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTkzMzY0MQpMaWVzIG1lZ2FzY2htYXJybiBub2NobWFsIGR1cmNoIDopCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3RhYXRzcHJvYmxlbWUgKFZhbmlvbiwgMjIuIEZlYiAyMDAzLCAxODoxODo1OCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDQ1OTM0MDk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTkzMzY0MQpOb2UsIGRpZSBPcHBvc2l0aW9uIHNhZ3QsIGRhc3MgZGllIFJlZ2llcnVuZyBzY2hsZWNodCBpc3QsIGJlaGF1cHRldCBlcyBiZXNzZXIKenUga29lbm5lbiB1bmQgc2FndCBuaWNoIHdpZSAoenVtaW5kZXN0IG5pY2h0IGdlbmF1KSwgdW0gbmljaHQgYmxvc3NnZXN0ZWxsdAp6dSB3ZXJkZW4uCgpJY2ggc2FnLCBkYXNzIERlaW4gV2l0eiBhbHQgaXN0LCBiZWhhdXB0ZSBhYmVyIG5pY2h0LCBkYXNzIGljaCBlaW5lbgpha3R1ZWxsZXJlbiB1bmQgYmVzc2VyZW4gaGFldHRlIHVuZCBoYWJlIGF1Y2gga2VpbiBJbnRlcmVzc2UgZGFyYW4sIGVpbmVuCmJlc3NlcmVuIFdpdHogenUgcG9zdGVuLgoKRGVzaGFsYiBzaW5kIGRpZSB2b24gZGVyIE9wcG9zaXRpb24gU2NoYXVtc2NobGFlZ2VyIHVuZCBpY2ggS3JpdGlrZXIuIAoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFN0YWF0c3Byb2JsZW1lIChFbGJlcmV0LCAyMi4gRmViIDIwMDMsIDE4OjIwOjE0KToKfiMhIHJuPVZhbmlvbiBydD0xMDQ1OTM0MzM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTkzMzY0MQprb2VubnRlc3QgZHUgZGllIExvZ2lrIGRlaW5lcyBEZXNoYWxiIG1hbCBlcmtsYWVyZW4/IFdhcyBoYXQgZGFzIGRhbWl0IHp1IHR1biwKZGFzcyBkdSBrZWluZW4gV2l0eiBwb3N0ZW4gd2lsbHN0IGJ6dyBkYXNzIGRlciBlaW5lIGhpZXIgYWx0IGlzdD8KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFN0YWF0c3Byb2JsZW1lIChNYW5kcmFnb24sIDIyLiBGZWIgMjAwMywgMTg6MjQ6MjUpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNDU5MzQzMzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1OTMzNjQxCgpOYWphLCBhdXMgcG9saXRpc2NoZXIgU2ljaHQ6CgpXZW5uIG1hbiBhbHMgT3Bwb3NpdGlvbiBkZXIgUmVnaWVydW5nIHNhZ3QsIHdhcyBzaWUgenUgdHVuIGhhdCB1bmQgc2llIG1hY2h0CmVzIHVuZCBhbGxlcyB3aXJkIGd1dCAuLi4gcmF0ZXQgbWFsLCB3ZW5uIE90dG8gTm9ybWFsYnVlcmdlciBkYXMgbmFlY2hzdGUgbWFsCndhZWhsdCAuLi4uIGRhcyAnc3VwZXJtaW5pc3Rlcml1bScgd2FyIGF1Y2ggbmUgSWRlZSB2b24gU3RvaWJlciB1bmQgYWxsZQpmaW5kZW4sIGVzIHNlaSBuZSB0b2xsZSBJZGVlIHZvbiBTY2hyb2VkZXIgO28pCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFN0YWF0c3Byb2JsZW1lIChWYW5pb24sIDIyLiBGZWIgMjAwMywgMTg6MjU6MjkpOgp+IyEgcm49RWxiZXJldCBydD0xMDQ1OTM0NDE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTkzMzY0MQpOYWd1dC4gQmVhY2h0ZXQgYml0dGUgZGllIFJ1YnJpay4gOikKCkljaCBiaW4gS3JpdGlrZXIgd2VpbCBpY2ggbWl0IGVpbmVtIFdpbXBlcm56dWNrZW4gZGllIEFyYmVpdCBlaW5lcyBhbmRlcmVuCnZlcnJlaXNzZS4gV2VubiBtaXIgYWJlciBqZW1hbmQgc2FndCAiTWFjaCBlcyBiZXNzZXIhIiByZWFnaWVyZSBpY2ggbWl0OiAiUGFoLApkYXMgaXMgbmljaCBtZWluIEpvYiIuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU3RhYXRzcHJvYmxlbWUgKEVsYmVyZXQsIDIyLiBGZWIgMjAwMywgMTg6Mjc6MjQpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNDU5MzQ3Mjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1OTMzNjQxCm5hamEgb2ssIGRpZSBSdWJyaWsgaXN0IGVpbiBBcmd1bWVudCwgZGFzcyBpY2ggYWt6ZXB0aWVyZW4gbXVzcwoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU3RhYXRzcHJvYmxlbWUgKEZvb2JhciwgMjIuIEZlYiAyMDAzLCAxODoyODoyNik6Cn4jISBybj1FbGJlcmV0IHJ0PTEwNDU5MzQ4NDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1OTMzNjQxCiJNYWdpZSIgaXN0IGRhcyBhbmRlcmUuCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTdGFhdHNwcm9ibGVtZSAoRWxiZXJldCwgMjIuIEZlYiAyMDAzLCAxODoyOToyMyk6Cn4jISBybj1Gb29iYXIgcnQ9MTA0NTkzNDkwNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDU5MzM2NDEKT2ggTWFnaWUgOikgKmtpY2hlcgpWaWVsbGVpY2h0IHNvbGx0ZSBTY2hyb2VkZXIgYmVpIHNlaW5lciBSZWRlIGRhcyBuYWVjaHN0ZSBNYWwgZWluZmFjaCBNYWdpZQpzYWdlbiA6KSkpKQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFN0YWF0c3Byb2JsZW1lIChNYW5kcmFnb24sIDIyLiBGZWIgMjAwMywgMTg6MzA6MTYpOgp+IyEgcm49RWxiZXJldCBydD0xMDQ1OTM0OTYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTkzMzY0MQpHaWJ0cyBkYW5uIG1hZ2lzY2hlIFZvbGtzdmVyZHVtbXVuZz8gOm8pCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBTdGFhdHNwcm9ibGVtZSAoUGFyZGF1eiwgMjIuIEZlYiAyMDAzLCAxODozMDo0MCk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTA0NTkzNTAxNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDU5MzM2NDEKYWJlciBrbGFyIGRvY2gKClBhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFN0YWF0c3Byb2JsZW1lIChFbGJlcmV0LCAyMi4gRmViIDIwMDMsIDE4OjMwOjQyKToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDQ1OTM1MDE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTkzMzY0MQplcyBnaWJ0IG5vY2ggdmllbCBzY2hsaW1tZXJlcyA6KSkKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBTdGFhdHNwcm9ibGVtZSAoTWFuZHJhZ29uLCAyMi4gRmViIDIwMDMsIDE4OjMxOjA4KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0NTkzNTA0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDU5MzM2NDEKSmEuIG5lIGVpbmdlXndydWhpZ2UgSGFuZCA6bykKCk1hKi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBTdGFhdHNwcm9ibGVtZSAoVmFuaW9uLCAyMi4gRmViIDIwMDMsIDE4OjMyOjIwKToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDQ1OTM1MDY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTkzMzY0MQpTbywgbGFuZ3NhbSBrYW5uIGRlciBUaHJlYWQgbmFjaCBNZWdhc2NobWFycm4gdW16aWVoZW4uIDopIElociBrb3N0ZXQgcmUncy4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogU3RhYXRzcHJvYmxlbWUgKEZvb2JhciwgMjIuIEZlYiAyMDAzLCAxODozMjoyNik6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTA0NTkzNTAxNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDU5MzM2NDEKRGllIGdpYnQncyBzY2hvbiwgTWFuZHJhZ29uLCBhbGxlcmRpbmdzIFZMIHVuZCBhdWNoIG51ciBiZWkgbWFnaXNjaGVuIEdpbGRlbgo6bykKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFN0YWF0c3Byb2JsZW1lIChFbGJlcmV0LCAyMi4gRmViIDIwMDMsIDE4OjMzOjE0KToKfiMhIHJuPVZhbmlvbiBydD0xMDQ1OTM1MTQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTkzMzY0MQpkdSBtZWluc3QgYWxzbyBtZWdhc2NobWFycm4gc2VpIGF1Y2ggc28gZWluIGFyZ3VtZW50IHdpZSBzY2htYXJybiBvZGVyIG1hZ2llPwoKRWxiaSAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBTdGFhdHNwcm9ibGVtZSAoSHVtbmksIDIyLiBGZWIgMjAwMywgMjE6MzU6MjYpOgp+IyEgcm49RWxiZXJldCBydD0xMDQ1OTM1MTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTkzMzY0MQpNZWdhc2NobWFycm4gaXN0IGRpZSB3aWNodGlnc3RlIFJ1YnJpayBpbSBNRy4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogU3RhYXRzcHJvYmxlbWUgKEVsaXphYmV0aCwgMjIuIEZlYiAyMDAzLCAyMTo0MTozNik6Cn4jISBybj1IdW1uaSBydD0xMDQ1OTQ2MTI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NTkzMzY0MQpkYXMgaGFsdGUgaWNoIGZ1ZXIgZWluIGdlcnVlY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IFN0YWF0c3Byb2JsZW1lIChHcmltbWJvcm4sIDIyLiBGZWIgMjAwMywgMjE6NDE6NTgpOgp+IyEgcm49RWxpemFiZXRoIHJ0PTEwNDU5NDY0OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1OTMzNjQxCkFoLCB3aWVkZXIgamVtYW5kIGRlciB1ZWJlciB3YXMgc2NocmVpYnQgd2FzIGVyIG5pY2h0IGtlbm50LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogU3RhYXRzcHJvYmxlbWUgKEVsYmVyZXQsIDIzLiBGZWIgMjAwMywgMTE6NDI6MjIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDU5NDY1MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1OTMzNjQxCmphamEsIGRhcyBzYWd0IGRlciByaWNodGlnZQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUklFU0VORUxTVEVSTiBJTSBNRyBHRVNJQ0hURVQgKE1lbnNhbmEsIDIzLiBGZWIgMjAwMywgMTU6Mjg6MjgpOgpHbG9ja3dhbGQuIERhcyBFbHN0ZXJuIGVpbiBkaWViaXNjaGVzIFZvZWxrY2hlbiBzaW5kLCBkdWVyZnRlIGRlciBnZW5laWd0ZW4KTGVzZXJzY2hhZnQgamEgYmVrYW5udCBzZWluLiBBYmVyIHdhcyB1bnNlciBSZXBvcnRlciBhdXMgZGVtIEdsb2NrZW53YWxkCmJlcmljaHRldCwgdWViZXJ0cmlmZnQgamVnbGljaGVzIFZvcnN0ZWxsdW5nc3Zlcm1vZWdlbi4KTGF1dCBCZXJpY2h0IGVpbmVzIFJlaXNlbmRlbiwgd3VyZGUgZXIgdm9uIHJpZXNpZ2VuIEVsc3Rlcm4gdWViZXJmYWxsZW4sCndlbGNoZSBpbiBkZXIgTGFnZSBzaW5kLCBCZXV0ZWwgbWl0IHJlaWNobGljaCBJbmhhbHQgLSB1bmQgZGVtZW50c3ByZWNoZW5kCnNjaHdlciAtIGRlbSByZWlzZW5kZW4genUgZW50d2VuZGVuLiBEZW1lbnRzcHJlY2hlbmQgcmllc2lnIG11ZXNzZW4gZGllc2UKVGllcmUgc2Vpbi4KQWxzbyB3ZXJ0ZSBMZXNlcnNjaGFmdCwgc2VoZW4gU2llIHNpY2ggdm9yIGRlbiBSaWVzZW5lbHN0ZXJuIGRlcyBHbG9ja2Vud2FsZGVzCnZvci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBTdGFhdHNwcm9ibGVtZSAoR3JpbW1ib3JuLCAyMy4gRmViIDIwMDMsIDE1OjM0OjM4KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0NTk5Njk0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDU5MzM2NDEKTmEsIGZlcnRpZyBtaXQgV3VuZGVubGVja2VuIG5hY2ggZGVyIFdpc3NlbnNjaGFmdHNkaXNrdXNzaW9uPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogU3RhYXRzcHJvYmxlbWUgKEVsYmVyZXQsIDIzLiBGZWIgMjAwMywgMTU6NDY6MTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDYwMTA4Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ1OTMzNjQxCjpsYWNodCBzY2hhbGxlbmQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZydWVobGluZ3NnZWZ1ZWhsZSAoR3JpbW1ib3JuLCAyMy4gRmViIDIwMDMsIDIxOjA2OjEwKToKfiMhIG9uPVdpbGxvdyBvdD0xMDQ2MDMwNzI4IG9nPXdpdHplCn4jISBybj1HcmltbWJvcm4gcnQ9MTA0NjAzMDY5NiByZz13aXR6ZQp+IyEgdGlkPTEwNDYwMzA2OTYKKmdhZWhuKiBzZWVlZWhyIGFsdCBHcmltbWkgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZydWVobGluZ3NnZWZ1ZWhsZSAoR3JpbW1ib3JuLCAyMy4gRmViIDIwMDMsIDIxOjA2OjExKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDQ2MDMwNzY2IG9nPXdpdHplCn4jISBybj1XaWxsb3cgcnQ9MTA0NjAzMDcyOCByZz13aXR6ZQp+IyEgdGlkPTEwNDYwMzA2OTYKSW1tZXJoaW4gZWhlciBlaW4gV2l0eiBhbHMgRGVpbiBCZWl0cmFnIC0+IGFiIGRhZnVlci4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJzY2hsb2VjaGVyIChHcmltbWJvcm4sIDI0LiBGZWIgMjAwMywgMjA6MTY6MjgpOgpXYW50IHRvIGJlIGFibGUgdG8gcHJvbW90ZSB5b3VyIGJ1bGsgZW1haWwgY2FtcGFpZ24gaW5leHBlbnNpdmVseT8KUmVseWluZyBvbiBhIHN0YW5kYXJkIFlhaG9vLCBIb3RtYWlsLCBFeGNpdGUsIG9yIHJlZ3VsYXIgZG9tYWluIGUtbWFpbAphZGRyZXNzCmFzIHlvdXIgY29udGFjdCBhZGRyZXNzIHdvbid0IHdvcmsuICBSZWd1bGFyIGUtbWFpbCBhZGRyZXNzZXMgZ2V0IHB1bGxlZApJTU1FRElBVEVMWSBmb3Igc2VuZGluZyBidWxrIGUtbWFpbC4gICBEb24ndCBiZWxpZXZlIHVzPyAgQXNrIFlhaG9vLApIb3RtYWlsLCBvciB5b3VyIHJlZ3VsYXIgaG9zdGluZyBwcm92aWRlciB3aGF0IHRoZXknbGwgZG8gaWYgdGhleSBnZXQKY29tcGxhaW50cyBhYm91dCB5b3Ugc2VuZGluZyBidWxrIGVtYWlsIHdpdGggdGhlaXIgYWRkcmVzc2VzLiBXZSBndWFyYW50ZWUKdGhlIGFuc3dlciB3aWxsIGJlIGEgU1RSSVBQRUQgQUREUkVTUyEgICAKICAKR2V0IG91ciBoaWdoIGJhbmR3aWR0aCBmb3JlaWduIGUtbWFpbCBhZGRyZXNzZXMgYW5kIHlvdSBjYW4gcmVzdCBhc3N1cmVkCnByb3NwZWN0cwp3aWxsIGJlIGFibGUgdG8gcmVhY2ggeW91IGFsbCB0aGUgdGltZS4gV2UgbmV2ZXIgcHVsbCB5b3UhICAKICAKVGhpcyBtb250aCBvbmx5IC0gJDQ5L21vbnRoLgoKQWxzIHdhZXJlIGRpZSBXZWx0IG5pY2h0IHNjaG9uIHNjaGxlY2h0IGdlbnVnLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVW5rbm93biBGZWF0dXJlcywgRm9sZ2UgMzkxIChBbmF0b2wsIDI1LiBGZWIgMjAwMywgMDA6NTM6NDkpOgp+IyEgb249QW5hdG9sIG90PTEwNDYxMzA4MjUgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPURlZXBibHVlIHJ0PTEwNDYxMjU4MTIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDQ2MTExNTI2CkFuc2NoYXVlbi4uLiBkYXMgbGFldWZ0IGRvY2ggaW56d2lzY2hlbiBuYWNoIGRlbSBBdXRvZmFocmVycHJpbnppcDogCldhcyBpbnRlcmVzc2llcnQgZXMgbWljaCwgd2llIGRlciBNb3RvciB2b24gaW5uZW4gYXVzc2llaHQuIEljaCB3aWxsCmRhcyBEaW5nIG51ciBmYWhyZW4ga29lbm5lbi4KCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1vb3JlIGlzdCBqZXR6dCBlaW5lIE1hZ2llcmluISAoWm9vaywgMjUuIEZlYiAyMDAzLCAxNjoyMToyNCk6Cn4jISBybj1NZXJsaW4gcnQ9MTA0NjE4NjQxNCByZz1zdHVmZW4KfiMhIHRpZD0xMDQ2MTg2NDE0Clpvb2sgYmVhZXVndCBNZXJsaW4ga3JpdGlzY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1vb3JlIGlzdCBqZXR6dCBlaW5lIE1hZ2llcmluISAoTm9ubmUsIDI1LiBGZWIgMjAwMywgMTY6MjI6MDMpOgp+IyEgcm49Wm9vayBydD0xMDQ2MTg2NDg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NjE4NjQxNApWb2xsZXIgTmFtZTogTW9vcmUgZGllIE9iZXJnbGFkaWF0b3JpbgpSYXNzZTogTWVuc2NoLCAgR2lsZGU6IENoYW9zLCAgR2VzY2hsZWNodDogd2VpYmxpY2gKQWx0ZXI6IDJkIDAwOjE1OjU2LCAgIFNwaWVsZXJsZXZlbDogMTAxIChTZWhlcmluKQoKCk5vbm5lLCBpc3QgZGEgYXVjaCBrcml0aXNjaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoQmFtYmksIDI1LiBGZWIgMjAwMywgMTY6NTI6MzMpOgp+IyEgcm49SmFkYXdpbiBydD0xMDQ2MTg4MjAwIHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA0NjE4NzA3NApBbHNvIGFscyBpY2ggbm9jaCBqdW5nIHVuZCBkeW5hbWlzY2ggd2FyLCBkYSBoYWJlbiBtaXIgYmVpbSBlcnN0ZW4gU2VoZXIgbm9jaApkaWUgRVAgZ2VmZWhsdC4KLi4uIE9rLCB2aWVsbGVpY2h0IGxhZ3MgYXVjaCBkYXJhbiwgZGFzcyBpY2ggb2VmdGVyIGFuIGRlciBIeWRyYSBzdGFyYiwgYWxzIGFuCmFsbGVtIGFuZGVyZW4genVzYW1tZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTZWhlcmFuZm9yZGVydW5nZW4gKEZvb2JhciwgMjUuIEZlYiAyMDAzLCAxNjo1NDozNCk6Cn4jISBybj1CYW1iaSBydD0xMDQ2MTg4MzUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NjE4NzA3NApBbHNvIG1pciBoYWJlbiBkYW1hbHMgQVAgZ2VmZWhsdCA6bykKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSXMgamEgc2Nob24gaXJnZW5kd2llIGludGVyZXNzYW50Li4uIChMYXJpc2llbGxlLCAyNS4gRmViIDIwMDMsIDE3OjUwOjAwKToKfiMhIG9uPUxhcmlzaWVsbGUgb3Q9MTA0NjE5MTY5MCBvZz1hbGxnZW1laW5lcwpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKREVSIEtBTVBGIElOIERFUiBBUkVOQSBCRUdJTk5UISBNT0VHRSBERVIgU1RBRVJLRVJFIEdFV0lOTkVOIQpbVG9kOkxhcnNdIFpvb2sgaGF0IGdlcmFkZSBIaXNhc3VsIHVtZ2VicmFjaHQuCkRlciBBcmVuYXNwcmVjaGVyIHJ1ZnQgOgpIaXNBc3VsIHdpcmQgZ2V0cm9mZmVuLgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKRGllIGVudHNjaGVpZGVuZGUgUGhhc2UhIERhcyBFbmRlIHZvbiBIaXNBc3VsIGlzdCBzY2hvbiBzZWhyIG5haGUhIQpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKTWVpbmUgRGFtZW4sIHVuZCBIZXJyZW4sIHdhcyBmdWVyIGVpbiBLYW1wZiEgV2lyIHd1cmRlbiBaZXVnZW4gZWluZXMgZ3Jvc3NlbgpLYW1wZmVzLCBkZXIgaW4gWm9vayBlaW5lbiB3dWVyZGV2b2xsZW4gU2llZ2VyIGZhbmQhIFVucyBibGVpYnQgbnVuIG5pY2h0cwp3ZWl0ZXIsIGFscyBJaG5lbiBlaW5lIHNjaG9lbmUgSGVpbXJlaXNlIHp1IHd1ZW5zY2hlbiEgQmlzIHp1bSBuYWVjaHN0ZW4gbWFsIQoKTGFyaXNpZWxsZSwgZGllIFJlaWhlbmZvbGdlIGRvY2ggaW50ZXJlc3NhbnQgZmluZGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IElzIGphIHNjaG9uIGlyZ2VuZHdpZSBpbnRlcmVzc2FudC4uLiAoWm9vaywgMjUuIEZlYiAyMDAzLCAxNzo1MDo0MCk6Cn4jISBvbj1ab29rIG90PTEwNDYxOTE3NDggb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUxhcmlzaWVsbGUgcnQ9MTA0NjE5MTY5MCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwNDYxOTE2OTAKRGVyIEFyZW5hc3ByZWNoZXIgc2NoZWludCBuaWNodCBkZXIgc2NobmVsbHN0ZSB6dSBzZWluLiBJY2ggZW1wZmVobGUgZGVyClVua2UgamEsIGlobSBtYWwgZGFzIEJ1Y2ggIldpZSB3ZXJkZSBpY2ggSGVyaWJlcnQgRmFzc2JlbmRlciIgenUgc2NoZW5rZW4uCgpab29rLi0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR2VsZCEgKFZhbmlvbiwgMjYuIEZlYiAyMDAzLCAwNzozNDozNSk6Cn4jISBvbj1WYW5pb24gb3Q9MTA0NjI0MTI2NSBvZz1wYXJ0eQp+IyEgcm49SW1kYSBydD0xMDQ2MjE3MjYwIHJnPXBhcnR5Cn4jISB0aWQ9MTA0NjA5MzEyMApMdWZ0Z2VmZWRlcnRlIFNjaHVia2FycmU/IE5hamEsIGplZGVyIHdpcmQgbWFsIGFsdC4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTm9jaCBtYWwgV3VuZGVyIChab29rLCAyNy4gRmViIDIwMDMsIDExOjIwOjU0KToKfiMhIG9uPVpvb2sgb3Q9MTA0NjM0MTI0OCBvZz1naWxkZW4ua2xlcnVzCn4jISBybj1Ob25uZSBydD0xMDQ2MzQxMTc2IHJnPWdpbGRlbi5rbGVydXMKfiMhIHRpZD0xMDQ2MzQxMTc2Cj4gRXVlciBNaXR0bGVyIHp1IGRlbiBHb2V0dGVybgoKT2gsIGVuZGxpY2ggZWluZSBTZWtyZXRhZXJpbj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5vY2ggbWFsIFd1bmRlciAoTm9ubmUsIDI3LiBGZWIgMjAwMywgMTE6MjE6MzEpOgp+IyEgcm49Wm9vayBydD0xMDQ2MzQxMjU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NjM0MTE3NgpFaGVyIExhdWZidXJzY2hlIChjOwoKTm9ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoRm9vYmFyLCAyNy4gRmViIDIwMDMsIDIxOjQ2OjQxKToKW0FubWVya3VuZyBkZXMgQWJzZW5kZXJzOiBmb2xnZW5kZW4gQmVpdHJhZyBoYWJlIGljaCBhdXMgZGVyCk1haWxpbmdsaXN0ZSAiTmV0bGlmZSIgdW5kIGRhIHNvIHppZW1saWNoIGplZGVyIGRldXRzY2hlCkRvbWFpbi1JbmhhYmVyIHZvbiBkaWVzZW0gIlRlbGVmb25idWNodmVybGFnIiBiZXRyb2ZmZW4gd2FyLCBkdWVyZnRlCmRpZXNlIEVudHdpY2tsdW5nIHZvbiBhbGxnZW1laW5lbSBJbnRlcmVzc2Ugc2Vpbi5dCgoKJ24gYW5kZXJlciBIYW5ubwoKCkRhdGU6IFdlZCwgMjYgRmViIDIwMDMgMTA6MTE6MzMgKzAxMDAgKE1FVCkKRnJvbTogTWFydGluIEhlcmJhdHkgPG1hcnRpbi5oZXJiYXR5QGdteC5uZXQ+ClRvOiBuZXRsaWZlQGRjYS5kYW1hc2Noa2UuZGUKU3ViamVjdDogQWJ6b2NrZSBtaXQgRm9sZ2VuCgpMaUxpLCAKCnZvciBrdXJ6ZW0gaGF0IGphIG1hbCB3aWVkZXIgZWluZXIgZGllIEJyYW5jaGVuYnVjaC1BYnpvY2tlIHZlcnN1Y2h0LCB2Z2wuIAoKaHR0cDovL3d3dy5oZWlzZS5kZS9uZXdzdGlja2VyL2RhdGEvaG9iLTE5LjAyLjAzLTAwMC8gCgo8eml0YXQ+IAoiTmV1ZSBBYnpvY2tlIG1pdCBhbmdlYmxpY2hlbiBSZWNobnVuZ2VuIGZ1ZXIgV2Vic2l0ZS1CZXRyZWliZXIgCgpBbSBoZXV0aWdlbiBNaXR0d29jaCBlcmhpZWx0ZW4gdmllbGUgQmV0cmVpYmVyIHZvbiBrb21tZXJ6aWVsbGVuCldlYi1BbmdlYm90ZW4gIlJlY2hudW5nZW4iIGVpbmVzICJUZWxlZm9uYnVjaCBWZXJsYWcgQWthbGFuIiBhdXMgS2lyY2hoZWltIGJlaQpNdWVuY2hlbi4KVW50ZXIgZGVyIFVlYmVyc2NocmlmdCAiSWhyZSBSZWNobnVuZyIgdmVybGFuZ3QgZGVyIFZlcmxhZyA0MzAgRXVybyBmdWVyIGRlbgpQb3N0ZW4gIk9ubGluZSBFaW50cmFndW5nc2tvc3RlbiIgdW5kIDY4LDgwIEV1cm8gZnVlciBlaW5lICJSZWdpc3RyaWVydW5nIi4KVW50ZXIgZGVyIEF1ZnN1bW1pZXJ1bmcgbGFzZW4gZGllIGVyc3RhdW50ZW4gQnJpZWYtRW1wZmFlbmdlciBpbiBmZXR0ZW4KTGV0dGVybjoKIkRlbiBCZXRyYWcgdm9uIDQ5OCw4MCBFdXJvIGJpdHRlbiB3aXIgcmVjaHR6ZWl0aWcgenUgYmVnbGVpY2hlbi4iICguLi4pIiAKPC96aXRhdD4gCgpPZmZlbmJhciB2ZXJsYXNzZW4gc2ljaCBlaW5pZ2UgR2VzY2hhZWRpZ3RlIG5pY2h0IG51ciBhdWYgUmVjaHRzd2VnIC0gaW4gZGVyCmhldXRpZ2VuICgyNi4wMjAyMDAzKSBTWiBmaW5kZXQgc2ljaCBhdWYgUy4gMTcgZm9sZ2VuZGUgQW56ZWlnZSAoaW1tZXJoaW4KOTB4NzIpOiAKCjx6aXRhdD4gCkJvZHlndWFyZCAKKGF1Y2ggQ2hhdWZmZXVyKSAKZHJpbmdlbmQgZ2VzdWNodCAKCkF1ZiBHcnVuZCBiZXNvbmRlcmVyIExlYmVuc3Vtc3RhZW5kZS4gCkFsdGVyOiBhYiAzMCBKLiBhdWZ3YWVydHMsIEZTIEtsLiBJSUksIGV2dGwuIFdhZmZlbnNjaGVpbiwgCjI0LVN0dW5kZW4tVmVyZnVlZ2JhcmtlaXQgZXJmb3JkZXJsaWNoLiAKVWViZXJkdXJjaHNjaG5pdHRsaWNoIGd1dCBkb3RpZXJ0ZSBTdGVsbGUuIApCZXdlcmJ1bmdlbiBudXIgc2NocmlmdGxpY2ggYW4gCkZpcm1hIFRlbGVmb25idWNodmVybGFnIEFrYWxhbiAKS2xhdXNuZXJyaW5nIDE3LCA4NTU1MSBLaXJjaGhlaW0sIAp6LkhkLiBIZXJybiBTLiBBa2FsYW4gCjwveml0YXQ+IAoKR3J1ZXNzZSAKTWFydGluIAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQQVRTQ0ggKFRodWZoaXIsIDI4LiBGZWIgMjAwMywgMDg6MDM6MDEpOgp+IyEgcm49VmFyZGlvbiBydD0xMDQ2Mzg0MTA3IHJnPW11ZGNsaWVudHMKfiMhIHRpZD0xMDQ2Mzg0MTA3Cm9laD8gd2VyIHdlaWx0IG5pY2h0IG1laHIgdW50ZXIgdW5zPyBpY2g/IG5lZWUhIGthbm4gbmljaHQgc2VpbiEgLCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUEFUU0NIIChWYXJkaW9uLCAyOC4gRmViIDIwMDMsIDEwOjA0OjAzKToKfiMhIHJuPVRodWZoaXIgcnQ9MTA0NjQxNTc4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDYzODQxMDcKRGVyIEJ1ZyA6LSkKClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVlIFBha2V0ZSAoQ3JvZnQsIDI4LiBGZWIgMjAwMywgMTI6NDk6NTgpOgp+IyEgcm49VmFyZGlvbiBydD0xMDQ2NDMyOTU2IHJnPW11ZGNsaWVudHMKfiMhIHRpZD0xMDQ2NDMyOTU2CldhcyBpc3QgbWl0IFRCWj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWUgUGFrZXRlIChWYXJkaW9uLCAyOC4gRmViIDIwMDMsIDEyOjU2OjU3KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNDY0MzI5OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ2NDMyOTU2CldvIHN0ZWh0IGRhIFRCWj8KClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldWUgUGFrZXRlIChDcm9mdCwgMjguIEZlYiAyMDAzLCAxMzowNDo1MSk6Cn4jISBybj1WYXJkaW9uIHJ0PTEwNDY0MzM0MTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ2NDMyOTU2Ci50YXIuYnouICBiemlwMiBoYWx0LiAgTWFuY2hlIExldXRlIHNjaHdvZXJlbiBtaXR0bGVyd2VpbGUgYXVmIGRlbiwgZGEgZXIKbWVpbnN0ZW5zIGJlc3NlciBwYWNrdCBhbHMgZGVyIGd6aXAgLC0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmV1ZSBQYWtldGUgKFZhcmRpb24sIDI4LiBGZWIgMjAwMywgMTM6MDY6NTgpOgp+IyEgcm49Q3JvZnQgcnQ9MTA0NjQzMzg5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDY0MzI5NTYKT2ssIGRhbm4gc29sbCBkYXMgdGFyLmJ6MiBqZW1hbmQgZGEgaGluc3RlbGxlbiwgZGVyIFNjaHJlaWJyZWNodGUgaGF0IHVuZCBzaWNoCmRhenUgZ2Vub2V0aWd0IGZ1ZWhsdCA6LSkgU2luZCBkb2NoIGVoIG51ciByZWljaGxpY2ggMzAway4uLgoKVmFyZGlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmVsaW5lbmdlZGljaHQgKE11cGZlbCwgMjguIEZlYiAyMDAzLCAyMzoyNTowNCk6CkdyYWQgZ2VmdW5kZW4sIGhpZXI6IGh0dHA6Ly93d3cuZmVsaW5lLmRlLnZ1LwoKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmVsaW5lbmdlZGljaHQgKEJhbWJpLCAgMS4gTWFyIDIwMDMsIDEwOjIxOjUyKToKfiMhIHJuPU11cGZlbCBydD0xMDQ2NDcxMTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NjQ3MTEwNApOYWNoIHdhcyBoYXN0IER1IGdlZ29vZ2VsdCwgZGFzcyBEdSBkaWUgU2VpdGUgZ2VmdW5kZW4gaGFzdD8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFoIGphIChFbGJlcmV0LCAgMS4gTWFyIDIwMDMsIDIyOjE4OjIwKToKQW5uYXB1bmEgc2NoYXV0IERpY2ggdmVyZnVlaHJlcmlzY2ggYW4uCkR1IGhhc3QgbmljaHQgZ2VudWcgZnJlaWUgSGFlbmRlIGRhZnVlci4KCkVsYmkgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhaCBqYSAoT3JrdG9ldGVyLCAgMS4gTWFyIDIwMDMsIDIyOjU3OjM0KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0NjU1MzUwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDY1NTM1MDAKRXh0cmFoYW5kPwoKT3JrVCwgZnJlY2ggZ3JpbnNlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGFoIGphIChFbGJlcmV0LCAgMS4gTWFyIDIwMDMsIDIyOjU5OjQyKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDQ2NTU1ODU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NjU1MzUwMApiaW4gaXNjaCB6YXViZXJlcj8ga2FubiBpY2ggTWFnaWU/CgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkdWggKFBpdGZhbGwsICAyLiBNYXIgMjAwMywgMjA6Mzc6NTYpOgplbGJpIHNhZ3Q6IHdpciBoYWV0dGVuIG5pY2h0IHVtIDMgYW5mYW5nZW4gc29sbGVuIC4gLiAuCmVsYmkgc2FndDogZGFzIG11aCBpc3Qgc3RhcmsgaW4gdW5zCmVsYmkgc2FndDogTVVICgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZHVoIChNYWhhcmV0LCAgMi4gTWFyIDIwMDMsIDIwOjM4OjQ0KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTA0NjYzMzg3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDY2MzM4NzYKTWlyIHdhciBqYSBhdWNoIHNvLCBhbHMgb2IgRWxiaSB3YXMgdm9uIGFiIDIgZ2VzYWd0IGhhZXR0ZSAuLi4KCk1haGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbm4gZWluZXIgenUgc2NobmVsbCBsYWV1ZnQgLi4uIChUcmFqYW4sICAzLiBNYXIgMjAwMywgMTU6MTM6MTMpOgoKb2RlciBkZXIgUGFwYWdlaSBiZXNvZmZlbiBpc3QsIHNpZWh0IG1hbiBldHdhIHNvd2FzOgoKU2NobGF1bWljaGVsIGtyYWVjaHp0OiAuLi4ga3Jycm9vb2FhYSAuLi4gSGFsbG8gU2xheCB1bmQgU2xheCAuLi4gCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIE11aCBpc3QgaW1tZXIgc3RhcmsgOikgKEFsa29ob2wsICAzLiBNYXIgMjAwMywgMjA6NTg6MjEpOgpEYXMgTXVoIHdhciBzdGFyayBpbiBCZXJsaW4gOikKClNjaG9uIGF1ZiBkZW0gbmFjaCBCZXJsaW4gd2FyIGRhcyBNdWggenUgc3B1ZXJlbiwgd2llIFRyb21tbGVyenVlZ2UsIGRpZQptdWhlbmQgZHVyY2ggZGVuIEtvZWxuZXIgQmFobmhvZiB6b2dlbiwgemVpZ3Rlbi4gRGFzIE11aCB3b2xsdGUgYWJlcgp1bmJlZGluZ3QgbmFjaCBCZXJsaW4uIEFsc28gZnVociBlcy4gSGllciBlaW4gQmVyaWNodCwgd2FzIHBhc3NpZXJ0LCB3ZW5uCmVzIGVpbmUgS29uemVudHJhdGlvbiBkZXMgTXVocyBnaWJ0LgoKRXMgZmluZyBkYW1pdCBhbiwgZGFzcyBFbGJpLCBhbHMgZXIgZHJhbiB3YXIsIGVpbmdlc3RlaGVuIG11c3N0ZSwgZGFzcyBzZWluZXIKenUga3VyeiBzZWkuCkVyIHNlaSB1ZWJlciBkZW0gYXVjaCBub2NoIGtydW1tIHVuZCB1bWdlaGVuIGtvZW5uZSBlciBhdWNoIG5pY2h0IG1pdCBpaG0uCkFsc28gbXVzc3RlbiBzaWUgZXJzdG1hbCB2ZXJnbGljaGVuIHdlcmRlbi4gUGl0ZmFsbCBoYXR0ZSBkZW4gbGFlbmdzdGVuLgpEZW5ub2NoIGhhdHRlIGVyIGVpbmUgVmVybGFlbmdlcnVuZyBub2V0aWcgdW0gZ2VnZW4gS2FyaW1hIDU6MiB6dSBnZXdpbm5lbi4KQWJlciBzaWUgd2FyZW4gZWggbnVyIGF1c2dlbGllaGVuIHVuZCBzZWhyIHp1ciBFbnRhZXVzY2h1bmcgdm9uIFBpdGZhbGwKbXVzc3RlbiBhbGxlIHp1cnVlY2tnZWdlYmVuIHdlcmRlbi4KCkRpZSBCZXJsaW5lciBUb3BvbG9naWUgaXN0IHNjaG9uIHNlbHRzYW0sIHdlbm4gZXMgZGVubiB1ZWJlcmhhdXB0IGVpbmUgaXN0LgpadW1pbmRlc3Qgd2FzIGRpZSBTLUJhaG4gVG9wb2xvZ2llIGJldHJpZmZ0LiBVbmQgd2VubiBlcyBrZWluZSBpc3QsIGdpYnQgZXMKZGFubiB1ZWJlcmhhdXB0IEJlcmxpbiA/PwpVbSB2b24gUHVua3QgQSBuYWNoIFB1bmt0IEIgenUgZ2VsYW5nZW4sIGJyYXVjaHQgbWFuIGltbWVyIDEgU3R1bmRlLiBFZ2FsCnZvbiB3byBuYWNoIHdvLiBBYmVyIGVnYWwgb2IgZXMgQmVybGluIG51biBnaWJ0IG9kZXIgbmljaHQsIGVpbiBIb2JiaXQKZnVlaGx0IHNpY2ggZG9ydCBzaWNoZXIgd29obC4gQWxsZSAxMCBtaW4ga2FubiBtYW4gd2FzIGVzc2VuLiBPYiBkYXMgbmljaHQKZGVyIFRhdHNhY2hlIHdpZGVyc3ByaWNodCwgZGFzcyBtYW4gdm9uIFB1bmt0IEEgenUgUHVua3QgQiBpbW1lciBlaW5lIFN0dW5kZQpicmF1Y2h0PyAgCgpOYWphIGF1ZiBqZWRlbiBGYWxsIHdhciBkZXIgU3RhdGkgbHVzdGlnLiBFcyBnaWJ0IGluIGRlciBLbmVpcGUgd2lya2xpY2gKdmllbGUgdmVyc2NoaWVkZW5lIFNvcnRlbiBCdXR0ZXJtaWxjaC4gQWxsZSBrb25udGVuIG5pY2h0IHByb2JpZXJ0IHdlcmRlbiwKYWJlciBiZXNvbmRlcnMgZGllIFJhdWNoc2NoaW5rZW5idXR0ZXJtaWxjaCwgZGVyIFRvcmdhdWVyIFJpdHRlciwgZGFzClRhbm5lbnphZXBmbGUgdW5kIGRpZSBBbHRlbmJlcmdlciBCcmF1ZXJlaWJ1dHRlcm1pbGNoICh1cmlnKSB3YXJlbiBzZWhyCmxlY2tlci4gRXMgZ2FiIG5vY2ggYW5kZXJlIEJ1dHRlcm1pbGNoc29ydGVuLCBkaWUgcHJvYmllcnQgd3VyZGVuLgpQZmZmZnQsIHdpZXNvIGVpZ2VudGxpY2ggQnV0dGVybWlsY2gsIHdvIGVzIG1pY2ggZG9jaCBnaWJ0PwpBY2ggamEsIHVuZCBkYSB3dXJkZSBub2NoIGV0d2FzIGdldHJ1bmtlbiwgdm9uIGRlbSBQaXRmYWxsIHN0ZWlmIHVuZCBmZXN0CihhYmVyIG5laW4gd2FyZW4gIG5pY2h0IG1laHIgYW0gRG9ubmVyc3RhZyBhYmVuZCA6KSApIGJlaGF1cHRldGUsIGRhIHdhZXJlCmF1Y2ggQnV0dGVybWlsY2ggZHJpbi4gQWJlciBkYXMgcGVybHRlIHppZW1saWNoIHVudHlwaXNjaCBmdWVyIE1pbGNoIHVuZApobW1tLCBlcyBpc3QgemllbWxpY2ggZ2V3b2VobnVuZ3NiZWR1ZXJmdGlnLiBBbmRlcmUgaGFiZW4gamEgYXVjaCBoZWlzc2UgCkJ1dHRlcm1pbGNoIG1pdCBIb25pZyBnZXRydW5rZW4gOikgCgpBYmVyIHNlbGJzdCBkZXIgQnV0dGVybWlsY2h0ZWUgaGF0IEthcmltYSBuaWNodCB2b3IgZGVuIEZvbGdlbiBkZXMgbmFlY2hzdGVuClRhZ2VzIGJld2FocnQuIE5hY2hkZW0ga2xlaW5lcmUgTWVuZ2VuIEJyb2V0Y2hlbiB2ZXJuaWNodGV0IHd1cmRlbiAoc28gZXR3YQoyIER1dHplbmQpIGthbSBlcyBkYW5uIHp1IERva3RvcnNwaWVsY2hlbiB6d2lzY2hlbiBQaXRmYWxsIHVuZCBLYXJpbWEuIEVsYmkKdW5kIFRoYW50YWxhcyBoYWJlbiBkYXJhdWYgbGllYmVyIGZsdWNodGFydGlnIGRhcyBIYXVzIHZlcmxhc3NlbiB1bmQgc2ljaApkZW0gQWxrb2hvbCBoaW5nZWdlYmVuIDopIChlbmRsaWNoLCBkaWUgd2lzc2VuIGhhbHQgd2FzIGd1dCBpc3QgKSBEZW0KQWxrb2hvbCBpc3QgZGFzIHp3YXIgbmljaHQgaW1tZXIgZ3V0IGJla29tbWVuLCBhYmVyIGFtIEVuZGUgd2FyIGRhbm4gZG9jaAphbGxlcyBndXQuIE1hbmNobWFsIGhhdCBtYW4gYmVpbSBXdWVyZmVsIGphIGF1Y2ggR2x1ZWNrIGF1Y2ggd2VubiBkYXMKV3VlcmZlbCBhbiBzaWNoIHZvZWxsaWcgdW5ub2V0aWcgd2FyLiBadSBlcndhZWhuZW4gd2FlcmUgbm9jaCwgZGFzcyBzZWxic3QKUGl0ZmFsbCBLYXJpbWEgZGVuIFNjaHdhbnogbmljaHQgZ2xhZXR0ZW4gd29sbHRlLgoKTnVuIGthbSBkZXIgU29ubnRhZy4gQW4gZGllc2VtIFRhZyBnaW5nZW4gZGllIFVocmVuIGFuZGVycy4gU2llIHd1cmRlbiBhdWYKQk1UIChCYWNhcmRpIE1lYW4gVGltZSkgdW1nZXN0ZWxsdC4gRGFzIGVudHNwcmljaHQgMTUgVWhyIEdNVC4gVW50ZXIKTWlzc2FjaHR1bmcgYWxsZXIgZ3V0Z2VtZWludGVuIFJhdHNjaGxhZWdlIHZvbiBOZXNhamEgd3VyZGUgbWl0IGRlbSBCYWNhcmRpCnNjaG9uIHZvciAwIFVociBCTVQgYW4uIEJ1dHRlcm1pbGNoIHVuZCBTYW1idWNhIHdhcmVuIGF1Y2ggaW0gU3BpZWwuIE1laHIKYWxzIE5lc2FqYSBmdWVyIGd1dCBiZWZ1bmRlbiBoYXR0ZS4KCkVya2VubnRuaXMgZGVzIEFiZW5kczoKCjEpIFpldXRoZW4gYmVzaXR6dCB3ZWRlciBlaW5lbiBQaXp6YXNlcnZpY2Ugbm9jaCBlaW4gVGF4aXVudGVybmVobWVuCjIpIEtldGNodXBmbGFzY2hlbiBzb2xsdGUgbWFuIG5pY2h0IHNjaHVldHRlbG4KMykgU2ljaGVyZSBCZWhlcnJzY2h1bmcgdm9uIHRmLVN5bnRheCBzY2h1ZXR6dCB2b3IgemFwCjQpIEF1Y2ggZGVyIFRyYWdlc2tpbGwgZGVyIEthZW1wZmVyIGhhdCBQaXRmYWxsIG5pY2h0cyBnZW51dHp0LiBJbQpnZWdlbnRlaWwgRWxiaSBoYXQgUGl0ZmFsbCBmbGFjaGdlbGVndC4gVW5mcmVpd2lsbGlnIHdvaGxnZW1lcmt0LgoKVW0gNy4zMCBVaHIgQk1UIGVuZGV0ZSBkZXIgQWJlbmQgbWFuZ2VscyBadXJlY2hudW5nc2ZhZWhpZ2tlaXQuCgpEYXMgTXVoIHdhciBzdGFyayB1bmQgZnJldXQgc2ljaCB3aWVkZXIgYXVmIEJlcmxpbiwgYmV6aWVodW5nc3dlaXNlCkJyaWVzZWxhbmcuCgpUcmlua3QgbWljaCwgZGFzIHR1dCBldWNoIGd1dCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhcyBNdWggaXN0IGltbWVyIHN0YXJrIDopIChab29rLCAgNC4gTWFyIDIwMDMsIDEwOjAwOjQzKToKfiMhIHJuPUFsa29ob2wgcnQ9MTA0NjcyMTUwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDY3MjE1MDEKWmV1dGhlbj8gQWNoIER1IFNjaHJlY2shIERhcyB3dXJkZSBtaXIgamEgYXVjaCBzY2hvbiBtYWwgYW5nZWRyb2h0Li4uIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0dGUgYXJiZWl0IChNb3Jnb3RoLCAgNC4gTWFyIDIwMDMsIDExOjE2OjM0KToKRHUgdGVpbHN0IFpvb2sgbWl0OiBqYSBtYWNoIGljaApab29rIGlzdCBnZXJhZGUgbmljaHQgZGE6IEB3b3JrClpvb2sgbmlja3QgRGlyIGF1cyBkZXIgRmVybmUgenUuCkRhcyBNb3JnZW5HcmF1ZW4gZXJ6aXR0ZXJ0IHVudGVyIGVpbmVtIGxhbmdlem9nZW5lbiwgdW5tZW5zY2hsaWNoZW4gU2NocmVpLgpEaWUgSHlkcmEgc3RpcmJ0IGluIGVpbmVtIE1lZXIgdm9uIEJsdXQuClpvb2sgcmVpaHQgc2ljaCBudW4gaW4gZGllIExpc3RlIGRlciBzYWdlbnVtd29iZW5lbiBIeWRyYXRvZXRlciBlaW4gdW5kCmJla29tbXQgZWluZSBkZXIgbGVnZW5kYWVyZW4gUnVlc3R1bmdlbiBkaWVzZXIgWnVuZnQuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ2hhb3RlbiBicmF1Y2hlbiBEZW9zcHJheXMgKEdpdGFycmUsICA0LiBNYXIgMjAwMywgMTQ6NTU6NTUpOgplYmVuIGdlc2VoZW46CgpDaGFvdCBSZWRtYW4gKExldmVsIDMsIFNwaWVsZXIpIGJldHJhdCBnZXJhZGUgZGFzIE1vcmdlbmdyYXVlbi4KRHUgaGFlbHRzdCBEaXIgZGllIE5hc2UgenUuCgpHaXRhcnJlIC0gZ3JpbnN0IGltbWVybm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IENoYW90ZW4gYnJhdWNoZW4gRGVvc3ByYXlzIChNb3Jnb3RoLCAgNC4gTWFyIDIwMDMsIDE1OjAwOjM3KToKfiMhIHJuPUdpdGFycmUgcnQ9MTA0Njc4NjE1NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDY3ODYxNTUKTXVzcyBtYW4gaXJnZW5kd2llIHZlcmRyZWh0IHNlaW4sIHVtIGRlbiBXaXR6IHp1IHZlcnN0ZWhlbj8KCk0qIGdydWViZWx0IG5vY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IENoYW90ZW4gYnJhdWNoZW4gRGVvc3ByYXlzIChXaGl0ZXRpZ2VyLCAgNC4gTWFyIDIwMDMsIDE2OjU4OjQxKToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA0Njc5MzQ4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDY3ODYxNTUKTmVpbiwgZnVlciBHbHZsIDEwL01NUSBicmF1Y2h0IG1hbiBEZW9zcHJheS4gRGFzIHZvbiBMb2Z3eXIuCi9TY2h3YXJ6bWFnaWVyIFdoaXRlVGlnZXIvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcmV1bmRlIC4uLiA7KSAoTGlhcmEsICA0LiBNYXIgMjAwMywgMjI6Mjc6MTMpOgpEdSBzYWdzdDogaWNoIGJpbiBuaWNodCBnYW56IHJpY2h0aWcgaW0ga29wZiA7KQpUaGFudGFsYXMgbmlja3QgRGlyIHp1LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZyZXVuZGUgLi4uIDspIChOb25uZSwgIDUuIE1hciAyMDAzLCAwODoxNjozNCk6Cn4jISBybj1MaWFyYSBydD0xMDQ2ODEzMjMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NjgxMzIzMwpHZWhvZXJ0IGRhcyBuaWNodCBuYWNoIEJla2FubnRtYWNodW5nZW4/CiBOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9iIG1pciB0LW9ubGluZSBkb2NoIG5vY2ggc3ltcGF0aXNjaCB3aXJkPyAobmV0ZGlnZXN0KSAoTm9ubmUsICA1LiBNYXIgMjAwMywgMDk6MDM6MDApOgpBdXMgdC1vbmxpbmUudGFsay51c2VuZXQ6CgpTZWhyIGdlZWhydGVyIEhlcnIgS2Fya3VzLAoKQmV6dWc6PG5ld3M6YjNqaHZlJHFtcyQwMSQyQG5ld3MudC1vbmxpbmUuY29tPgpTZWJhc3RpYW4gS2Fya3VzIHNjaHJpZWIgaW4gdC1vbmxpbmUudGFsay51c2VuZXQ6Cgo+IHdlaXMgamVtYW5kIHdpZSBpY2ggYmVpIGRlbSB2ZXJkLi4uIE9FIGRpZSBSZWYtemVpbGUga3Vlcnplbgo+IGtvZW5udGUsIGRhbWl0IGVpbiBQb3N0aW5nIGFuZ2Vub21tZW4gd2lyZD8KCkphIG5hdHVlcmxpY2ggd2lzc2VuIHdpciBkYXM6IFNjaHJlaWJlbiBTaWUgZWluZSBNYWlsIGFuIGRlbiBIZXJzdGVsbGVyCnVuZCBWZXJ0cmVpYmVyIGRpZXNlcyBQcm9ncmFtbWVzIHVuZCBiaXR0ZW4gU2llIGRpZXNlbiwgZGllc2VuIEZlaGxlcgptaXQgZWluZW0gVXBkYXRlIHp1IGJlaGViZW46CgpNaWNyb3NvZnQsIFBvc3RmYWNoIDExOTksIDMzNDEwIFZlcmwgClRlbGVmb246IDAxODA1LzI1MTE5OQpGYXg6IDAxODA1LzI1MTE5MQpNYWlsOiBzdXBwb3J0QG1pY3Jvc29mdC5jb20KClN1cHBvcnQgZnVlciBhbGxlIG5vbi1CdXNpbmVzcy1TeXN0ZW1lClRlbGVmb246IDAxODA1LzY3MjI1NSAoTW8tRnIgOC4zMC0xMi4zMCwgMTMuMDAtMTcuMDApCgpFcmxhZXV0ZXJ1bmc6IEplZGUgSGVhZGVyemVpbGUgZGFyZiBpbmtsdXNpdmUgZGVyIFplaWNoZW4gZnVlciBkZW4KSGVhZGVybmFtZW4sIGRlbiBMZWVyemVpY2hlbiB1bmQgZGVtIGFic2NobGllc3NlbmRlbiA8Y3I+PGxmPiAxMDAgWmVpY2hlbgpsYW5nIHNlaW46IFVlYmVyc2NocmVpdHVuZ2VuIGRpZXNlcyBMaW1pdHMgd2VyZGVuIHZvbiB1bnNlcmVtIE5ld3NzZXJ2ZXIKYWJnZXdpZXNlbi4gV2VubiBTaWUgc2ljaCB3aXJrbGljaCBhbiBNaWNyb3NvZnQgd2VuZGVuIHNvbGx0ZW4sCnNjaHJlaWJlbiBTaWUgbm9jaCBoaW56dSwgZGFzcyBiZWltIEt1ZXJ6ZW4gZGVyIFJlZmVyZW5jZXMgZGllIGVyc3RlCk1lc3NhZ2UtSUQgc3RlaGVuYmxlaWJlbiBzb2xsdGUuIEVzIHdpcmQgYWxzbyBpbW1lciBhYiBkZXIgendlaXRlbgpNZXNzYWdlLUlEIGdla3Vlcnp0LCB3b2JlaSBzbyB2aWVsZSBNZXNzYWdlLUlEcyB6dSBzdHJlaWNoZW4gc2luZCwgYmlzdApkaWUgZXJsYXVidGUgR3JlbnplIGdlcmFkZSB1bnRlcnNjaHJpdHRlbiB3aXJkLiBTb2xsdGUgTVMgT3V0bG9vawpFeHByZXNzIHNpY2gga3VlbmZ0aWcgZW50c3ByZWNoZW5kIHZlcmhhbHRlbiwgc28gd2FlcmUgZGllcyBlaW4gUGx1c3B1bmt0CmZ1ZXIgZGllc2VuIE5ld3NyZWFkZXIsIGRhIGFuZGVyZSBmdWVyIGdld29laG5saWNoIGFiIGRlciBlcnN0ZW4gTWVzc2FnZS1JRAprdWVyemVuLiAKCkFsdGVybmF0aXZlOiBWZXJ3ZW5kZW4gU2llIE1vcnZlciBvZGVyIEhhbXN0ZXIgcGx1cyAiS29ycm5ld3MiIHVuZApzY2hhdWVuIFNpZSwgb2IgZGFzIFByb2JsZW0gZGFtaXQgbG9lc2JhciBzZWluIGtvZW5udGUuIAoKPiBTb3dhcyBpc3QgbWlyIG5vY2ggbmllIHBhc3NpZXJ0Li4gaXN0IGRlciBUaHJlYWQgZGEgenUgbGFuZyBvZGVyIHdpZT8KPiAoR2lidCBlcyBzb3dhcyB1ZWJlcmhhdXB0PyBFaW5lbiAienUgbGFuZ2VuIiBUaHJlYWQ/KQoKRXMgZ2lidCBudXIgenUgbGFuZ2UgSGVhZGVyemVpbGVuLCBuaWNodCB6dSBsYW5nZSBUaHJlYWRzLiBCZWkgZnVlciBkYXMKVXNlbmV0IGVoZXIgd2VuaWdlciBnZWVpZ25ldGVuIFNvZnR3YXJlLCBrYW5uIGVzIGluZm9sZ2VkZXNzZW4gc2VpbiwKZGFzcyBlcyBmdWVyIGRpZXNlIFNvZnR3YXJlICJ6dSBsYW5nZSBUaHJlYWRzIiBnaWJ0LiBEaWVzIGhhdCBkYW5uIHp1cgpGb2xnZSwgZGFzcyBtYW4gLSBzb2Zlcm4gbWFuIG5pY2h0IGJlcmVpdCBpc3QsIGVudHNwcmVjaGVuZGUgVW1zdGFlbmRlIGluCkthdWYgenUgbmVobWVuIC0gYWIgZWluZXIgZ2V3aXNzZW4gIlRocmVhZHRpZWZlIiBuaWNodCBtZWhyIG1pdHNwaWVsZW4KZGFyZi4gPGVnPgoKRWlnZW50bGljaCBoYWV0dGUgZGllc2VyIFRocmVhZCBlaGVyIG5hY2ggdC1vbmxpbmUucHJvZ3JhbW1lLm5ld3NyZWFkZXIKZ2Vob2VydCwgYWxsZGlld2VpbCBlcyBzaWNoIG5pY2h0IHVtIGVpbiBVc2VuZXQtUHJvYmxlbSwgc29uZGVybiB2aWVsbWVocgp1bSBlaW5lcyBkZXMgdmVyd2VuZGV0ZW4gTmV3c3JlYWRlcnMgaGFuZGVsdC4gQWxsZXJkaW5ncyBlcndhcnRlbiB3aXIgaW4KU2FjaGVuIE1TIE91dGxvb2sgRXhwcmVzcyBrZWluZSBGb3J0c2V0enVuZyBkZXMgVGhyZWFkcywgc29uZGVybiBlaGVyCiJmYWxzY2hlIEZyYWdlbiIgZGVyIEFydCwgd2FydW0gZGVyIE5ld3NzZXJ2ZXIgZGFzIG5pY2h0IGZ1ZXIgZGVuIENsaWVudApyZXBhcmllcmVuIHd1ZXJkZS4gPGR1Y2s+IERhaGVyIGtlaW4gRm9sbG93dXAtVG8gZ2VzZXR6dC4gOy0pCgoKTWl0IGZyZXVuZGxpY2hlbiBHcnVlc3NlbgpJaHIgVC1PbmxpbmUtVGVhbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTXVoISAoR3JpbW1ib3JuLCAgNS4gTWFyIDIwMDMsIDEzOjMzOjUzKToKfiMhIHJuPUJhbWJpIHJ0PTEwNDY4NjM5NzAgcmc9d3d3Cn4jISB0aWQ9MTA0NjgwOTkxNApEdSBuaWNodC4gSWNoIHNjaG9uLgpBYmVyIFNjaG9lbmhlaXQgbGllZ3QgamEgYmVrYW5udGxpY2ggaW0gQXVnZSBkZXMgQmV0cmFjaHRlcnMuIFZlcm11dGxpY2ggYWxzClNwbGl0dGVyIG9kZXIgQmFsa2VuIG9kZXIgc28uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmViZW4gYmVpIEFwb2xsaW5hcmlzIChUaHVmaGlyLCAgNi4gTWFyIDIwMDMsIDEzOjQ0OjA2KToKClpvb2sgd29sbHRlIGdlcmFkZSBkaWUgR29ldHRpbiBhbmdyZWlmZW4hCkRpZSBHb2V0dGluIGxhY2h0IG51ciB1bmQgc3RhdW50IHVlYmVyIHNvIHZpZWwgU2VsYnN0dWViZXJzY2hhZXR6dW5nLiBTaWUKendpbmd0IFpvb2sgZGF6dSwgZGVuIEthbXBmIGF1Znp1Z2ViZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZWJlbiBiZWkgQXBvbGxpbmFyaXMgKEZsYXVyb3MsICA2LiBNYXIgMjAwMywgMTM6NDU6MTApOgp+IyEgcm49VGh1ZmhpciBydD0xMDQ2OTU0NjQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Njk1NDY0NgpOYWphLCB3ZXIga2FubiBzY2hvbiBlaW5lciBGcmF1IHdhcyBlbnRnZWdlbnNldHplbj8hCldpZSBtYW4gc2llaHQsIG5pY2h0IGVpbm1hbCBlaW4gR290dC4gOykKCkZsYXVzY2hpIGhhdCB3ZWdlbiBkZXIgMyBUb2RlLCBTYXVlcmVpLgpGbGF1c2NoaSBncnVtbWVsdCBuZWJlbmhlciBab29raSBncmluc2VuZCBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZWJlbiBiZWkgQXBvbGxpbmFyaXMgKFpvb2ssICA2LiBNYXIgMjAwMywgMTM6NDU6NDYpOgp+IyEgcm49RmxhdXJvcyBydD0xMDQ2OTU0NzEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Njk1NDY0NgpEaWUgc29sbCBmcm9oIHNlaW4sIGRhc3Mgc2llIG5pY2h0IGluIGRlbiBld2lnZW4gRGVzdHJ1Y3QtR3J1ZW5kZW4gCnZlcnNjaHd1bmRlbiBpc3QuLi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXV0c2NoZSBQb3N0IChBbmF0b2wsICA2LiBNYXIgMjAwMywgMTg6MTM6NDcpOgouLi4gaW1tZXIgZnVlciBlaW5lbiBMYWNoZXIgZ3V0OgoKCiAgICAgIFdpc3NlbiBTaWUgc2Nob24sIGRhc3MgZXMgVGVsZWZvbiwgR2VsZCB1LnYuYS4gCiAgICAgIGdsZWljaCBpbiBkZXIgRmlsaWFsZSB1bSBkaWUgRWNrZSBnaWJ0PwoKICAgICAgW1p1ZGVtIGtvbW1lbiBTaWUgaW4gZGVuIEdlbnVzcyBnYW56IGJlc29uZGVycyBndWVuc3RpZ2VyCiAgICAgIEFuZ2Vib3RlIHVuc2VyZXIgUGFydG5lci5dCgoKICAgICAgV2llIGJpdHRlPyBNaXQgZWluZW0gZWluemlnZW4gR2FuZyBzbyB2aWVsZSBEaW5nZQogICAgICBnbGVpY2h6ZWl0aWcgZXJsZWRpZ2VuPyBEYXMgZ2VodCEgVm9yYXVzZ2VzZXR6dCwgU2llCiAgICAgIHNpbmQgYXVmIERyYWh0IHVuZCBnZWhlbiBpbiBJaHJlIEZpbGlhbGUgdW0gZGllIEVja2UuCiAgICAgIFsuLi4uXQoKCkVyc3Qga3VlcnplbiBTaWUgaGFzdGUtd2FzLWthbm5zdGUgRmlsaWFsZW4gd2VnLCBqZXR6dCBtYWNoZW4gc2llIFdlcmJ1bmcKZnVlciBkZW4gUmVzdC4uLiAidW0gZGllIEVja2UiIGJlZGV1dGV0IGZ1ZXIgZGllIGFuZ2VnZWJlbmUgRmlsaWFsZSBlYmVuIAptYWwgZWluZSBBdXRvZmFocnQgdm9uIG5lciBWaWVydGVsc3R1bmRlLi4uIDopCgpBbmF0b2wgKnN0b2VobioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEZXV0c2NoZSBQb3N0IChEZWVwYmx1ZSwgIDYuIE1hciAyMDAzLCAxOTo1NjoyMyk6Cn4jISBybj1BbmF0b2wgcnQ9MTA0Njk3MDgyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDY5NzA4MjcKUE9TVCAtIFBlcnNvbmFsIG9obmUgc2lubnZvbGxlIFRhZXRpZ2tlaXQuCgpTY2hsaW1tZXIgZmluZCBpY2ggYWxsZXJkaW5ncyBkaWUgT2VmZm51bmdzemVpdGVuIHZvbiBkZW0gTGFkZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGV1dHNjaGUgUG9zdCAoQmFtYmksICA2LiBNYXIgMjAwMywgMjA6MDM6MDEpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTA0Njk3Njk4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDY5NzA4MjcKT2VmZm51bmdzemVpdGVuPwpEaWUgc2luZCBpZGVudGlzY2ggbWl0IGRlbSBUYW50ZSBFbW1hIExhZGVuIGhpZXIgaW0gT3J0LiBEaWUgaGFiZW4gZGFzCk51dHplcmludGVyZmFjZSB1ZWJlcm5vbW1lbiB1bmQgc2NoZWluZW4gc29nYXIgenUgd2lzc2VuLCB3aWV2aWVsIG1laW4gQnJpZWYKa29zdGVuIHd1ZXJkZSwgd2VubiBpY2ggaWhuIG5pY2h0IGFscyBlbWFpbCB2ZXJzY2hpY2tlbiB3dWVyZGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEZXV0c2NoZSBQb3N0IChEZWVwYmx1ZSwgIDYuIE1hciAyMDAzLCAyMDowNTozNyk6Cn4jISBybj1CYW1iaSBydD0xMDQ2OTc3MzgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Njk3MDgyNwpOYWphLCBkYSBoYWJlbiBkaWUgd2VuaWdzdGVucyBlaW5pZ2VybWFzc2VuIE9lZmZudW5nc3plaXRlbi4KSGllciBnaWJ0cyBub2NoIG5lIFBvc3RmaWxpYWxlLCBNby1GciAxMC0xMiwgMTQtMTYgVWhyLCBTYSAxMC0xMiBVaHIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERldXRzY2hlIFBvc3QgKEZvb2JhciwgIDYuIE1hciAyMDAzLCAyMDowODoxNyk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDQ2OTc3NTM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Njk3MDgyNwpJaHIgaGFidCB3ZW5pZ3N0ZW5zIG5lIFBvc3RmaWxpYWxlLi4uCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERldXRzY2hlIFBvc3QgKEVsaXphYmV0aCwgIDYuIE1hciAyMDAzLCAyMDowOTowNyk6Cn4jISBybj1Gb29iYXIgcnQ9MTA0Njk3NzY5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDY5NzA4MjcKOmhhdCBnbGVpY2ggZWluZSB1bSBkaWUgRWNrZSB1bmQgZGllIGlzdCBzb2dhciBsYW5nZSBhdWYgCihlaW5lciBkZXIgaGF1cHR2ZXJrZWhyc2RpbmdlbnNiYWhuaG9lZmUgbmF0dWVybGljaC4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogc2F0enplaWNoZW4gbmFjaCBzZXRtaW4vc2V0bW91dCAoRWxiZXJldCwgIDcuIE1hciAyMDAzLCAxNTo1NjoxNik6Cn4jISBvbj1FbGJlcmV0IG90PTEwNDcwNDg5NTYgb2c9c2VoZXIuZW50d2lja2x1bmcKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ3MDQ4OTI2IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA0NzA0ODEyNgpqbyBnaWJ0cyBzY2hvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV0ZGlnZXN0IChWYW5pb24sICA4LiBNYXIgMjAwMywgMTE6MzM6NTMpOgpOZXdzZ3JvdXBzOiBkZS5tYXJrdC5tdXNpawpSZWZlcmVuY2VzOiA8ODRmMjI0Zi4wMzAzMDYwNDU0Ljc4ZjQ5ZTc0QHBvc3RpbmcuZ29vZ2xlLmNvbT4KCkFlbmd1cyBzY2hyaWViOgoKPiAKPiBESUVURVIgQk9ITEVOIC0gQmx1ZSBTeXN0ZW0gQ0RzIGplIDEsNTAgRXVybwoKCkRhcyBpc3QgZGFzIGVyc3RlIE1hbCwgZGFzIGljaCBhbm9ueW1lcyBQb3N0ZW4gaW4gZWluZXIgbWFya3QtR3J1cHBlCnZlcnN0ZWhlbiBrYW5uLgoKU0NOUiwKQ2hyaXN0aWFuCgotLQpWKiwga2FubnMgYXVjaCB2ZXJzdGVoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTZWhlcmhhZXVzZXIgKERlZXBibHVlLCAgOS4gTWFyIDIwMDMsIDEzOjIyOjExKToKfiMhIHJuPVZhbmlvbiBydD0xMDQ3MjEyNDc5IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA0NTUwOTQ0NQpEdSBiaXN0IHNvb29vb29vb29vb29vb29vb29vb29vb29vIGdlbWVpbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU2VoZXJoYWV1c2VyIChWYW5pb24sICA5LiBNYXIgMjAwMywgMTM6MjI6MzUpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTA0NzIxMjUzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDU1MDk0NDUKSmEsIGRhcyBnZW1laW4tU2tpbGwgd2lyZCBiZWkgZGVyIEVNLXdlcmR1bmcgYXV0b21hdGlzY2ggYXVmIE1heGludCBnZXNldHp0LgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOYWNoYmV0cmFjaHR1bmcuLi4gKERlZXBibHVlLCAgOS4gTWFyIDIwMDMsIDIzOjIwOjE2KToKfiMhIHJuPUJhbWJpIHJ0PTEwNDcyMjc5Njcgcmc9cGFydHkKfiMhIHRpZD0xMDQ3MjI3OTY3CkF1cyBtZWluZXIgU2ljaHQgbWFsIHdpZWRlciB2aWVsZW4gRGFuayBhbiBkaWUgRmlybWEsIGRpZSBtaXIgZGllIFBhcnR5a29zdGVuCiJlcnNwYXJ0IiBoYXQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUgO28pIChGb29iYXIsIDEwLiBNYXIgMjAwMywgMTA6NDU6MzgpOgpbTW9lcmRlcjpHZWlzdCBWYWduYXJkc10gRGEgc29sbHRlbiB3aXIgbm9jaCBtYWwgZHJ1ZWJlciByZWRlbiwgRWluIEZyb3NjaCEKPiBnIGxpc3RlClRlYW0gNTogRWluIEZyb3NjaCwgRWluIEZyb3NjaCgqKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhhLi4uIChUaGFudGFsYXMsIDEwLiBNYXIgMjAwMywgMTY6MTQ6MDIpOgp+IyEgb249VGhhbnRhbGFzIG90PTEwNDczMDkxNDggb2c9cGFydHkKQnJhbiBmbHVlc3RlcnQgRGlyIGVpbiBtYWdpc2NoZXMgV29ydCB6dSB1bmQgRHUgZm9sZ3N0IGlociBhdWYgZGllIFRvaWxldHRlLgoKV2FzIGF1Y2ggaW1tZXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkludGVyZXNzYW50Li4uLiAoWm9vaywgMTAuIE1hciAyMDAzLCAyMDo1MTozMSk6CltUcnZlczpBbmF0b2xdIE9rYXkuIFdhcyBpc3QgZGllIHdlaWJsaWNoZSBWZXJzaW9uIHZvbiAiRHJhY2hlIj8KW1RydmVzOkFuYXRvbF0gRnVzc2VsZHJhY2hpbj8gOikKW1RydmVzOkd1YXJkXSBuYSBob2ZmZW50bGljaCBoYXN0IGR1IGd1dCBnZXNjaGxhZmVuLCBoYXN0IGF1ZiBkZXIgcGFydHkKW1RydmVzOkd1YXJkXSBtYWVjaHRpZyB3YXMgdmVycGFzc3QgOi0pCltUcnZlczpQZXN0XSBEcmFjaGVuIHNpbmQgd2VpYmxpY2gsIEFuYXRvbC4KW1RydmVzOkFuYXRvbF0gRGllIGF1ZiB6d2VpIEJlaW5lbiB6dW1pbmRlc3QuLi4KW1RydmVzOlBlc3RdIE9kZXIgc2NodWNodGVsaWdlIFR1bnRlbi4KW1RydmVzOlNjaG9rb10gVW5kIGFsbGUgV2VpYmVyIERyYWNoZW4/IDopCltUcnZlczpHdWFyZCB2ZXJ0aXBwdCBzaWNoIGRhdWVybmRdCltUcnZlczpBbmF0b2xdIFBhc3N0IGphLiAqbXVzdGVyIEh1bW5pcyBIYWFyZSogOikKW1RydmVzOlBlc3Qgbmlja3QgU2Nob2tvIHp1Ll0KCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2lyZCBqYSBpbW1lciBzY2hsaW1tZXIuLi4gKEdyaW1tYm9ybiwgMTEuIE1hciAyMDAzLCAwNjoyNzo0MCk6Cn4jISBvbj1EZW1vbmF6IG90PTEwNDczNTIxMDMgb2c9YWxsZ2VtZWluZXMKCk1haGFyZXQgbG9ja3QgRGljaCBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KClBmZmZ0LCBqZXR6dCB3b2xsdCBJaHIgc2llIExldXRlIHNjaG9uIGFrdGl2IGxvc3dlcmRlbi4gRGllIE11ZHBvbGl0aWsgd2lyZAppbW1lciBzY2hsaW1tZXIuCgpJLkEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTZWhlcmhhZXVzZXIgKERlZXBibHVlLCAxMS4gTWFyIDIwMDMsIDExOjE2OjQ5KToKfiMhIHJuPVZhcmRpb24gcnQ9MTA0NzMzMzUzNSByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNDU1MDk0NDUKT2RlciBlaW5mYWNoIGRhcyBNdWQgY3Jhc2hlbi4gS2xhcHB0IHByaW1hIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIChMaWFyYSwgMTEuIE1hciAyMDAzLCAxNzozMTo1MCk6CkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiB3byBpcyB0aGFudGkgaGluPwpEZWluZSBGcmV1bmRpbiBMZWliaSB0ZWlsdCBEaXIgbWl0OiBrdXNjaGVsbj8KVGhhbnRhbGFzICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCls8TWFzdGVSPjpUaGFudGFsYXMgbGFlc3N0IGRpZSBFYmVuZSAnc2V4JyBlbnRzdGVoZW4uXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IENyYXNoIGhldXRlLi4uIChPcmt0b2V0ZXIsIDExLiBNYXIgMjAwMywgMTg6MTE6MDQpOgp+IyEgcm49Wm9vayBydD0xMDQ3Mzk4MDgzIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDQ3Mzk4MDgzCk9ya3RvZXRlciBsYWVzc3QgZGVuIEh1dCBydW1nZWhlbiBkYW1pdCBkaWUgR01EIHNpY2ggZW5kbGljaCBtYWwgZWluZQp2ZXJudWVmdGlnZSBTdHJvbXZlcnNvcmd1bmcgbGVpc3RlbiBrYW5uLi4uCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBwaWthY2h1IChHcmltbWJvcm4sIDExLiBNYXIgMjAwMywgMjI6MTc6NDYpOgp+IyEgcm49RWxpemFiZXRoIHJ0PTEwNDc0MTczNTAgcmc9d3d3Cn4jISB0aWQ9MTA0NzM4NDg1NwpXaWUgdWViZXJhdXMgaW50ZXJlc3NhbnQuIFdpciBiZXd1bmRlcm4gRGljaC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogcGlrYWNodSAoQ3JvZnQsIDEyLiBNYXIgMjAwMywgMDE6NTk6MTcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDc0MTc0NjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3Mzg0ODU3CkdlZmFlaHJsaWNoZSBWZXJhbGxnZW1laW5lcnVuZy4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBwaWthY2h1IChNdWFkaWIsIDEyLiBNYXIgMjAwMywgMTE6MDg6MTMpOgp+IyEgcm49Q3JvZnQgcnQ9MTA0NzQzMDc1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDczODQ4NTcKdW5kIGdlaHQgYXVjaCBhbiBpbnRlcmVzc2FudGVuIHRlaWxlbiB2b3JiZWkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZlaWcgbGVidCBsYWVuZ2VyLi4uIDspIChBbmF0b2wsIDEyLiBNYXIgMjAwMywgMTE6MjQ6MDQpOgpbTW9lcmRlcjpHZWlzdCBSaSBSYXJ1dHNjaHNdIEhhbGxvPyBLb2VubnQgbWFsIHdlciBFaW5lIGdld2FsdGlnZSBGZXVlcndhbHplCltNb2VyZGVyOkdlaXN0IFJpIFJhcnV0c2Noc10gd2VnaGF1bj8gQmluIGRhIGdyYWQgZ2VzdG9yYmVuIHVuZCBtZWluZSBTYWNoZW4KW01vZXJkZXI6R2Vpc3QgUmkgUmFydXRzY2hzXSBsaWVnZW4gbm9jaCBydW0gLi4uIAoKKDEwOTMuIFBvc3RpbmcgenVyIEZldWVyd2FsemUuLiA7KSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbGZlbi4uLiAoSHVtbmksIDEyLiBNYXIgMjAwMywgMjE6NTQ6NTMpOgpbPE1hc3RlUj46VGhhbnRhbGFzIHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ3NleCcsIHdvcmF1ZiBkaWVzZSBzaWNoCiAgICAgICAgICBpbiBlaW5lbSBCbGl0eiBva3RhcmluZW4gTGljaHRzIGF1ZmxvZXN0Ll0KWzxNYXN0ZVI+OlRoYW50YWxhcyB2ZXJsYWVzc3QgYWxzIExldHp0ZXIgZGllIEViZW5lICdCYXVtJywgd29yYXVmIGRpZXNlIHNpY2gKICAgICAgICAgIGluIGVpbmVtIEJsaXR6IG9rdGFyaW5lbiBMaWNodHMgYXVmbG9lc3QuXSAgICAgICAgICAgICAgICAgICAgICAgICAKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGJlcmxpbiwgc3RhdGksIHJ1ZGVsbiwgdXN3IChQaXRmYWxsLCAxMi4gTWFyIDIwMDMsIDIyOjQ2OjQyKToKfiMhIHJuPVpvb2sgcnQ9MTA0NzUwNTUxNSByZz10cmVmZmVuCn4jISB0aWQ9MTA0NzUwNTQ3NwpnZW5hdSBEQVMgd2FyIGRlciBwbGFuIHpvb2sKCnBpdCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGJlcmxpbiwgc3RhdGksIHJ1ZGVsbiwgdXN3IChab29rLCAxMi4gTWFyIDIwMDMsIDIyOjQ3OjI0KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTA0NzUwNTYwMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc1MDU0NzcKSWNoIHdlaXNzLi4uLgoKWm9vayBmdW5rZWx0IERhcmt3aW5nIGVyYm9zdCBhbi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGJlcmxpbiwgc3RhdGksIHJ1ZGVsbiwgdXN3IChBa2FzaGEsIDEyLiBNYXIgMjAwMywgMjI6NDc6NTYpOgp+IyEgcm49Wm9vayBydD0xMDQ3NTA1NjQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzUwNTQ3NwpXZW5uIGlociBhbGxlIGFtIDI4LjMuIFRlcm1pbmUgaW4gTXVlbnN0ZXIgaGFiZW4gc29sbHRldCwgd2llc28gbWFjaGVuIHdpcgpkYW5uIG5pY2h0IGVpbmZhY2ggbmVuIFN0YVRpIGluIE11ZW5zdGVyPyA7KQoKQWthc2hhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBiZXJsaW4sIHN0YXRpLCBydWRlbG4sIHVzdyAoWm9vaywgMTIuIE1hciAyMDAzLCAyMjo0Nzo1OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0NzUwNTYzMCByZz10cmVmZmVuCn4jISB0aWQ9MTA0NzUwNTQ3NwpJY2ggZ2xhdWIsIER1IG1hY2hzdCBkaWUgVmVyd2lycnVuZyBudW4ga29tcGxldHQuIDotKQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGJlcmxpbiwgc3RhdGksIHJ1ZGVsbiwgdXN3IChab29rLCAxMi4gTWFyIDIwMDMsIDIyOjQ4OjI0KToKfiMhIHJuPUFrYXNoYSBydD0xMDQ3NTA1Njc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzUwNTQ3NwpXZW5uLCBkYW5uIG1hY2hlbiB3aXIgZGVuIGFtIDI3LjMuIDspIEFiZXIgbnVyLCB3ZW5uIGljaCBkZW4gVGVybWluIGFtCjI4LjMuIGF1Y2ggaW4gTVMgaGFiZS4uLgoKWm9vay4sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBiZXJsaW4sIHN0YXRpLCBydWRlbG4sIHVzdyAoR3JpbW1ib3JuLCAxMi4gTWFyIDIwMDMsIDIyOjUwOjI4KToKfiMhIHJuPVpvb2sgcnQ9MTA0NzUwNTcwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc1MDU0NzcKSW4gd2VsY2hlciBaZWl0IGxlYmVuIHdpciB3ZW5uIGRpZSBMZXV0ZSBuaWNodCBtZWhyIGRpZTMgQmVkZXV0dW5nIHZvbiAid2VubiIKa2VubmVuPyBMYXV0IG1laW5lciBUYWdlc3plaXR1bmcga2VubnQgZGllIGhldXRpZ2UgSnVnZW5kIGphIG5pY2h0IG1laHIgZGllCkJlZGV1dHVuZyB2b24gSWRpb3ReSG1lbiB3aWUgIk9lbCBpbnMgRmV1ZXIgZ2llc3NlbiIgLSBhYmVyICJ3ZW5uIj8gTyB0ZW1wb3JhCnVuZCBzby4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdGF0aSBpbiBCb25uIChQaXRmYWxsLCAxMi4gTWFyIDIwMDMsIDIyOjUyOjQzKToKfiMhIHJuPUxlaWJpIHJ0PTEwNDc1MDU5MzUgcmc9dHJlZmZlbgp+IyEgdGlkPTEwNDc1MDUwNjkKZ2xhdWIgbWlyLi4uCmRpZSBnaWJ0IGVzIC4uLgoKcGl0KiAuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFN0YVRpIEJvbm4uLi4gKFpvb2ssIDEyLiBNYXIgMjAwMywgMjI6NTU6NTgpOgp+IyEgcm49TGVpYmkgcnQ9MTA0NzUwNjEyNiByZz10cmVmZmVuCn4jISB0aWQ9MTA0NzUwNjAyNwpXYXMgaGFiIGljaCBnZXNhZ3QuLi4uPyA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogMTMwMzIwMDMyMDAwS0FLTSAoR3JpbW1ib3JuLCAxMy4gTWFyIDIwMDMsIDExOjE5OjE4KToKfiMhIHJuPUJhbWJpIHJ0PTEwNDc1NTA1MTIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNDc1NDYwNzAKRHUgaGFzdCBrZWluZSBNb3RpdmF0aW9uIGFuIE11YWRpYnMgTWVpbnVuZyBydW16dXNjaHJhdWJlbiwgd2VubiBNdWFkaWJzCk1laW51bmcgYm95a290dGllcnQgd2lyZD8gSXN0IE1laW51bmcgdWViZXJoYXVwdCBib3lrb3R0aWVyYmFyPyBXYXMgd2lsbCB1bnMKZGVyIEF1dG9yIGRhbWl0IHNhZ2VuPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAxMzAzMjAwMzIwMDBLQUtNIChNdWFkaWIsIDEzLiBNYXIgMjAwMywgMTE6MjE6MTQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDc1NTA3NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3NTQ2MDcwCmJhbWJpIGlzdCBoYWx0IGxlaWNodCBhbmdlc2FldWVydCB3ZWlsIGljaCBkaXJla3RlIGtvbW11bmlrYXRpb24gbWl0IG1lbnNjaGVuLApkZXIgbWl0dGVsYmFyZW4gdWViZXIgZWluZW4gbnBjIHZvcnppZWhlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiAxMzAzMjAwMzIwMDBLQUtNIChDcm9mdCwgMTMuIE1hciAyMDAzLCAxMToyMzoyNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTA0NzU1MDg3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc1NDYwNzAKSG0uIFNhZXVlcmxpY2hlcyBSZWguICBXaWUgbGFuZyBpc3QgZXIgc2Nob24gaW4gZGVtIFp1c3RhbmQ/ICBEYXMgRmxlaXNjaAprb2VubnRlIGphIGxhbmdzYW0gemFydCBzZWluLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IDEzMDMyMDAzMjAwMEtBS00gKE11YWRpYiwgMTMuIE1hciAyMDAzLCAxMToyNDoxOCk6Cn4jISBybj1Dcm9mdCBydD0xMDQ3NTUxMDA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzU0NjA3MAplciBpc3QgZGEsIGZyYWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IDEzMDMyMDAzMjAwMEtBS00gKEdyaW1tYm9ybiwgMTMuIE1hciAyMDAzLCAxMToyNDo0Mik6Cn4jISBybj1NdWFkaWIgcnQ9MTA0NzU1MTA1OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc1NDYwNzAKQWJlciBiaXR0ZSB1ZWJlciBlaW5lbiBOUEMhCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IDEzMDMyMDAzMjAwMEtBS00gKEJvaW5nLCAxMy4gTWFyIDIwMDMsIDExOjI1OjAwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ3NTUxMDgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzU0NjA3MApEYXp1IG11ZXNzdGUgZXIgamEgZXJzdG1hbCBNYWdpZXIgd2VyZGVuIC4uLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuYSBzb3dhcy4uLiAoTGFyaXNpZWxsZSwgMTMuIE1hciAyMDAzLCAxMToyNjo1OCk6CkRlaW4gRnJldW5kIFRoYW50YWxhcyB0ZWlsdCBEaXIgbWl0OiBTbywgS2xhdXN1ci4KVGhhbnRhbGFzICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKRGVpbmUgRnJldW5kaW4gS2FyaW1hIHRlaWx0IERpciBtaXQ6IGJpbiBtYWwgbmVuIHBhYXIgbWluIHdlZwpLYXJpbWEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpXdXJkZSBkYSBqZXR6dCBuaWNodCBnZWxlcm50IG9kZXIgd2lyZCBkaWUgS2xhdXN1ciBzbyBsZWljaHQ/IDspCgpMYXJpc2llbGxlLCBtYWwgS2FyaW1hIG11c3Rlcm5kLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IDEzMDMyMDAzMjAwMEtBS00gKEdyaW1tYm9ybiwgMTMuIE1hciAyMDAzLCAxMToyNzoxMCk6Cn4jISBybj1Cb2luZyBydD0xMDQ3NTUxMTAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzU0NjA3MApbIF0gRHUga2VubnN0IGRlbiBTYW5kdGlnZXIuIE9kZXIgd2llIGRlciBoZWlzc3QuIEdpYnRzIGRlbiBlaWdlbnRsaWNoIG5vY2g/CiAgICBKZWRlbmZhbGxzIGdhYnMgZGEgbWFsIHNvd2FzIGluIFBvcnQgVmFpbi4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IDEzMDMyMDAzMjAwMEtBS00gKEJvaW5nLCAxMy4gTWFyIDIwMDMsIDExOjI5OjI3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ3NTUxMjMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzU0NjA3MApEdSBoYXN0IGRhIGVpbiBYIHZlcmdlc3NlbiBpbiBEZWluZW0gbGV0enRlbiBBcnRpa2VsLCBpY2ggbGllZmVyIGVzCmZ1ZXIgRGljaCBuYWNoOiBYCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiAxMzAzMjAwMzIwMDBLQUtNIChHcmltbWJvcm4sIDEzLiBNYXIgMjAwMywgMTE6Mzg6MTUpOgp+IyEgcm49Qm9pbmcgcnQ9MTA0NzU1MTM2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc1NDYwNzAKVW5kIHdhcnVtIHNvbGx0ZSBlciBkYW5uIGVyc3QgTWFnaWVyIHdlcmRlbiBtdWVzc2VuPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogMTMwMzIwMDMyMDAwS0FLTSAoQmFtYmksIDEzLiBNYXIgMjAwMywgMTE6Mzk6NDIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDc1NTE4OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3NTQ2MDcwCldlaWwgaWNoIG5pZSBhbSBTYW5kdGlnZXIgdm9yYmVpa29tbSwgZGVyIG1pciBhbHNvIG5pY2h0cyBhdXNyaWNodGV0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IDEzMDMyMDAzMjAwMEtBS00gKEdyaW1tYm9ybiwgMTMuIE1hciAyMDAzLCAxMTo0NjowMCk6Cn4jISBybj1CYW1iaSBydD0xMDQ3NTUxOTgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzU0NjA3MApBY2ggd2FzLiBXZWlibGljaGVuIENoYXJha3RlciBlaW5sb2dnZW4sICJ0ZWlsZSBiYW1iaSBtaXQgSWNoIGhhYmUgUG9zdCBmdWVyCkRpY2gsIGJpbiBhbSBTYW5kdGlnZXIiIHVuZCBzY2hvbiBpc3QgZGllIE5hY2hyaWNodCB1ZWJlcm1pdHRlbHQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiAxMzAzMjAwMzIwMDBLQUtNIChDcm9mdCwgMTMuIE1hciAyMDAzLCAxMTo0NzowNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0NzU1MjM2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc1NDYwNzAKQXVmIHNvIGJpbGxpZ2UgVHJpY2tzIGZhbGxlbiBNYWdpZXIgaGV1dHp1dGFnZSBub2NoIGhlcmVpbj8gIEVyc3RhdW5saWNoLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiAxMzAzMjAwMzIwMDBLQUtNIChCYW1iaSwgMTMuIE1hciAyMDAzLCAxMjoyMjoyOCk6Cn4jISBybj1Dcm9mdCBydD0xMDQ3NTUyNDI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzU0NjA3MApOdXIgbWFuY2hlLiBTbyBMZXV0ZSwgd2llIEdyaW1tYm9ybiBhbnNjaGVpbmVuZC4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiAxMzAzMjAwMzIwMDBLQUtNIChHcmltbWJvcm4sIDEzLiBNYXIgMjAwMywgMTI6MzA6NTIpOgp+IyEgcm49QmFtYmkgcnQ9MTA0NzU1NDU0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc1NDYwNzAKR3JhdXNhbWUgS29tbWFzZXR6dW5nLCBpcmdlbmR3aWUuCkFuc29uc3RlbiBpc3QgbWVpbmUgdWVibGljaGUgQW50d29ydCBiZWkgc29sY2hlbiBBbmZyYWdlbiAia2FubnN0IG1pY2ggZ2VybmUKc3VjaGVuIGtvbW1lbiwgYW5zb25zdGVuIHN1Y2ggRGlyIG5lbiBEdWVtbWVyZW4gZnVlciBkaWUgU3BpZWxlcmhpbGZlIi4KQXVzbmFobWVuIGdpYnRzLCBhYmVyIGVoZXIgc2VsdGVuLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IDEzMDMyMDAzMjAwMEtBS00gKENyb2Z0LCAxMy4gTWFyIDIwMDMsIDEyOjMzOjIxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ3NTU1MDUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzU0NjA3MApFYmVuLiAgRGEgbXVlc3N0ZSBtYW4gamEgc2VpbmVuIFdvcmtyb29tIHZlcmxhc3Nlbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogMTMwMzIwMDMyMDAwS0FLTSAoR3JpbW1ib3JuLCAxMy4gTWFyIDIwMDMsIDEyOjM1OjQ5KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNDc1NTUyMDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3NTQ2MDcwCk9kZXIgd28gbWFuIGF1Y2ggaW1tZXIgcnVtenVzdGVoZW4gYmVsaWVidC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IDEzMDMyMDAzMjAwMEtBS00gKFpvb2ssIDEzLiBNYXIgMjAwMywgMTM6NDI6NTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDc1NTUzNDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3NTQ2MDcwCkljaCBoYWIgR3JpbW1ib3JuIHNlbHRlbiBpbiBzZWluZW0gV29ya3Jvb20gZ2VzZWhlbi4uLi4KClpPb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogMTMwMzIwMDMyMDAwS0FLTSAoR3JpbW1ib3JuLCAxMy4gTWFyIDIwMDMsIDEzOjU4OjQ4KToKfiMhIHJuPVpvb2sgcnQ9MTA0NzU1OTM3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc1NDYwNzAKTXVzc3QgRHUgYXVjaCBzZWhyIHNjaG5lbGwgZnVlciBzZWluLCBkYSBiaW4gaWNoIGltbWVyIG51ciBmdWVyIGVpbiBwYWFyCk1pbGxpc2VrdW5kZW4gdm9yIGRlbSBBdXNsb2dnZW4uIFdhcyBzb2xsIGljaCBhdWNoIGluIGRlbSBSYXVtLCBkZXIgaXN0Cmxhbmd3ZWlsaWcuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiAxMzAzMjAwMzIwMDBLQUtNIChNdWFkaWIsIDEzLiBNYXIgMjAwMywgMTQ6MDA6NDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDc1NjAzMjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3NTQ2MDcwCnNvIGxhbmd3ZWlsaWcgaXN0IGRlciBkb2NoIGdhdCBuaWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2Nob24ga2xhci4uLiAoQmFtYmksIDEzLiBNYXIgMjAwMywgMTQ6MDg6MTApOgpNYWhhcmV0ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkR1IGhlaXNzdCBNYWhhcmV0IGF1cyBkZXIgRmVybmUgd2lsbGtvbW1lbi4KTWFoYXJldCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiAxMzAzMjAwMzIwMDBLQUtNIChKYW1lc29uLCAxMy4gTWFyIDIwMDMsIDE3OjQwOjUxKToKfiMhIHJuPU11YWRpYiBydD0xMDQ3NTYwNDQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzU0NjA3MApibGVpYnQgaWhyIGJpdHRlIGluIG1lZ2FzY2htYXJybj8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5lc2FqYSBwaW5ndCwgTm9ubmUgdHJpbmt0IChNb3Jnb3RoLCAxNC4gTWFyIDIwMDMsIDA5OjA0OjMyKToKTmVzYWphICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpOZXNhamEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbmUgRnJldW5kaW4gTm9ubmUgdGVpbHQgRGlyIG1pdDogS2FmZmVlIQpOZXNhamEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCk5lc2FqYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmR1aCAoRGFya3dpbmcsIDE0LiBNYXIgMjAwMywgMjE6Mzg6NTApOgpZb3UgdGVsbCB5b3VyIGNsYW4gOiBnbGF1YiBQaXQgaGF0IGdyYWQgbmVuIERyYWNoZW5nb3R0IDopCgpGZWxpZGFuIHRlbGxzIHlvdXIgY2xhbjogYnJpbmcgZGllIGhpZXIgbmV0IGF1ZiBkdW1tZSBnZWRhbmtlbiA7KQpGZWxpZGFuIHRlbGxzIHlvdXIgY2xhbjogYnR3LCBwYW56ZXIgZGVyIGdpZXIsIGdlcmFldXNjaCBhbiBtaWNoIDopCgpEZWluIEZyZXVuZCBQaXRmYWxsIHRlaWx0IERpciBtaXQ6IGljaCBzY2hhdSBtaXIgbnVyIG1hbCBhbiB3aWUgZGFzIGhldXRlIHNvCkRlaW4gRnJldW5kIFBpdGZhbGwgdGVpbHQgRGlyIG1pdDogZ2VodCA6PgoKRGVpbiBGcmV1bmQgQW5hdG9sIHRlaWx0IERpciBtaXQ6IFB1ayByYW5naWVydCBhdWYgZWluZW0gTGV2ZWwgdm9uIGV0d2EgMC44CkRlaW4gRnJldW5kIEFuYXRvbCB0ZWlsdCBEaXIgbWl0OiBzdGluZy4gOikKCltUb2Q6TGFyc10gRWluZSBXYW5kIGF1cyBGZXVlciBoYXQgZ2VyYWRlIFBpdGZhbGwgdW1nZWJyYWNodC4KCltCZWlsZWlkOkFuYXRvbF0gRkxXLiBEZXV0bGljaGUgRkxXLgoKWW91IHRlbGwgeW91ciBjbGFuIDogdm9sbCBkdXJjaCBkaWUgd2FsbCBvZiBmaXJlIGdlcmFubnQgOikKCkZlbGlkYW4gdGVsbHMgeW91ciBjbGFuOiBkdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dWghIGRlciBzb2xsIG5pY2h0CkZlbGlkYW4gdGVsbHMgeW91ciBjbGFuOiBzdGVyYmVuLCBkZXIgc29sbCBtaXIgQXVzcnVlc3R1bmcgaG9sZW4hCgpLZXNyaXRoaSB0ZWxscyB5b3VyIGNsYW46IHJvZmwgOikKS2Vzcml0aGkgdGVsbHMgeW91ciBjbGFuOiBpaHIgbWcgZnJlYWtzICw+CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGR1aCAoR3JpbW1ib3JuLCAxNC4gTWFyIDIwMDMsIDIxOjQwOjI0KToKfiMhIHJuPURhcmt3aW5nIHJ0PTEwNDc2NzQzMzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3Njc0MzMwCldpciBoYWJlbiBlbmdsaXNjaGUgQ2xhbnMgaW0gTUc/IEljaCB3ZXJkZSBhbHQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBkdWggKENyb2Z0LCAxNC4gTWFyIDIwMDMsIDIxOjQwOjUwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ3Njc0NDI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzY3NDMzMApVbmF1Zm1lcmtzYW0gaXN0IGRhcyBXb3J0ICwtKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGR1aCAoR3JpbW1ib3JuLCAxNC4gTWFyIDIwMDMsIDIxOjQyOjI4KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNDc2NzQ0NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3Njc0MzMwClVuYXVmbWVya3NhbT8gV2FzIGludGVyZXNzaWVyZW4gbWljaCBTcGllbGVyZmVhdHVyZXM/IE51ciwgaW4gbWVpbmVyIEp1Z2VuZApoYWV0dGUgZXMgZGllc2UgcGVpbmxpY2hlbiBBbmdsaXppc21lbiBuaWNodCBnZWdlYmVuLCB3aXIgd2FyZW4gZGFtYWxzIGRlbQpMYXRlaW5pc2NoZW4gbmFlaGVyIGFscyBkaWVzZW4gYW5nZWxzYWVjaHNpc2NoZW4gRW1wb3Jrb2VtbWxpbmdlbi4gRGFtYWxzLCBhbHMKaHVtYW5pc3Rpc2NoZSBCaWxkdW5nIG5vY2ggZXR3YXMgd2VydCB3YXIuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZHVoIChFbGl6YWJldGgsIDE0LiBNYXIgMjAwMywgMjE6NDQ6MDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDc2NzQ1NDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3Njc0MzMwCm11c3MgbGFuZ2UgaGVyIHNlaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGR1aCAoR3JpbW1ib3JuLCAxNC4gTWFyIDIwMDMsIDIxOjQ0OjU1KToKfiMhIHJuPUVsaXphYmV0aCBydD0xMDQ3Njc0NjQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzY3NDMzMApWb3IgRGVpbmVyIEdlYnVydCwgamEsIGFiZXIgZGFzIGhhdCBuYXR1ZXJsaWNoIG1pdCAibGFuZ2UgaGVyIiBuaWNodCB2aWVsIHp1CnR1bi4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGR1aCAoRWxpemFiZXRoLCAxNC4gTWFyIDIwMDMsIDIxOjQ1OjE1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ3Njc0Njk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzY3NDMzMApkYWZ1ZXIgc3RpcmJzdCBkdSBmcnVlaGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogZHVoIChDcm9mdCwgMTQuIE1hciAyMDAzLCAyMTo0NTo1Nyk6Cn4jISBybj1FbGl6YWJldGggcnQ9MTA0NzY3NDcxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc2NzQzMzAKRGFzIHdpcmQgc2ljaCBub2NoIHplaWdlbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBkdWggKEdyaW1tYm9ybiwgMTQuIE1hciAyMDAzLCAyMTo0NjozMyk6Cn4jISBybj1Dcm9mdCBydD0xMDQ3Njc0NzMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzY3NDMzMAo6bmlja3Qgd2Vpc2UuCgpEYXMgZWluemlnZSB3YXMgbWlyIFNvcmdlbiBtYWNodCBpc3QgZGFzIEJld3Vzc3RzZWluLCBkYXNzIHNvbGNoZSBMZXV0ZSBtZWluZQpSZW50ZSB6YWhsZW4gc29sbGVuLiBadW0gR2x1ZWNrIGhhYmUgaWNoIGRhIG5vY2ggZWluIHBhYXIgU2FjaGVuIGluIFJlc2VydmUuClZlcnRyYXVlbiBpc3QgZ3V0LCB6dXNhZXR6bGljaGUgQWJzaWNoZXJ1bmcgaXN0IGJlc3Nlci4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogZHVoIChFbGl6YWJldGgsIDE0LiBNYXIgMjAwMywgMjE6NDc6MTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDc2NzQ3OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3Njc0MzMwCid6YWhsZW4gbXVlc3NlbicgCmJhbGQgaXMgdm9yYmVpIG1pdCBzb3ppYWxzdGFhdCBncmltbWJvcm4uLiBndXRlIHdhaGwgbWl0IHNlbGJzdGFiaWNoZXJ1bmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogZHVoIChHcmltbWJvcm4sIDE0LiBNYXIgMjAwMywgMjE6NDg6MTkpOgp+IyEgcm49RWxpemFiZXRoIHJ0PTEwNDc2NzQ4MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3Njc0MzMwCk9oYSwgc28gdmllbGUgSXJydHVlbWVyIGluIGVpbmVtIFNhdHosIG1hbiB3ZWlzcyBnYXIgbmljaHQgd28gbWFuIGFuZmFuZ2VuCnNvbGwuIFZpZWxsZWljaHQgbWl0ICJSZW50ZW52ZXJzaWNoZXJ1bmcgdW5kIEdlbmVyYXRpb25lbnZlcnRyYWcgaGFiZW4gbWl0ClNvemlhbHN0YWF0IG5pY2h0cyB6dSB0dW4iLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogZHVoIChFbGl6YWJldGgsIDE0LiBNYXIgMjAwMywgMjE6NDg6NDMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDc2NzQ4OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3Njc0MzMwCndlJ2xsIHNlZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IGR1aCAoR3JpbW1ib3JuLCAxNC4gTWFyIDIwMDMsIDIxOjQ4OjU5KToKfiMhIHJuPUVsaXphYmV0aCBydD0xMDQ3Njc0OTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzY3NDMzMApOZWluLiBEYXMgaXN0IGVpbmUgc2FjaGxpY2hlIFRhdHNhY2hlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQaWx6ZSBhdWYgQWtoYXIgTnRoJ3RhciB1ZWJlcmFyYmVpdGV0IChBbmF0b2wsIDE1LiBNYXIgMjAwMywgMDQ6NDE6NDQpOgpbQWxsZ2VtZWluOk1haGFyZXRdIEljaCB3aWxsIEx1ZyBoZWlyYXRlbi4KCldhciBkYXMgZGllIHZvbGxlIERvc2lzPwpBbmF0b2wgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2VsdHdlaXRlIExpY2h0ZXJrZXR0ZSBhbSBTb25udGFnLCBkZW4gMTYuMyB1bSAxOSBVaHIgKERlZXBibHVlLCAxNS4gTWFyIDIwMDMsIDEwOjMwOjI4KToKfiMhIHJuPURlbW9uYXogcnQ9MTA0NzY5NjYxOSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwNDc2OTIzNzUKRGllIGZpbmRldCBpbSBBZmZlbnN0YWxsXndXZWlzc2VuIEhhdXMgc3RhdHQuCkFsdGVybmF0aXYga2FubnN0ZSBkaWNoIHNpY2hlciBhdWNoIGltIElyYWsgYWxzIEZyZWl3aWxsaWdlciBtZWxkZW4gdW5kCnJla3J1dGllcmVuIGxhc3Nlbi4gRGEgaGFzdCBEdSBzb2dhciBkaWUgZnJlaWUgQXVzd2FobCwgdm9uIHdlbGNoZXIgU2VpdGUgRHUKRGljaCBlcnNjaGllc3NlbiBsYXNzZW4gd2lsbHN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2VsdHdlaXRlIExpY2h0ZXJrZXR0ZSBhbSBTb25udGFnLCBkZW4gMTYuMyB1bSAxOSBVaHIgKEFuYXRvbCwgMTUuIE1hciAyMDAzLCAxMDozMTozMCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDQ3NzIwNjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzY5MjM3NQpFZ2FsIHZvbiB3ZWxjaGVyIFNlaXRlIER1IERpY2ggcmVrcnV0aWVyZW4gbGFlc3N0OiBEaWUgQ2hhbmNlLCBkYXNzCkRpY2gsIHdlbm4sIGVpbiBBbWVyaWthbmVyIHVtIGRpZSBFY2tlIGJyaW5ndCwgaXN0IGhvY2guIAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdlbHR3ZWl0ZSBMaWNodGVya2V0dGUgYW0gU29ubnRhZywgZGVuIDE2LjMgdW0gMTkgVWhyIChIb29kLCAxNS4gTWFyIDIwMDMsIDEwOjQ3OjA4KToKfiMhIHJuPUFuYXRvbCBydD0xMDQ3NzIwNjkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzY5MjM3NQpadW1hbCBkaWUgbWVpc3RlbiBBbWVyaWthbmVyIG5pY2h0IHNlaGVuIHdlcmRlbiBkYXNzIHNpZSBqZW1hbmRlbiB0b2V0ZW4KdW5kIGRpZSBtZWlzdGVuIElyYWtlciBuaWNodCwgd2VyIG9kZXIgd2FzIHNpZSB0b2V0ZXRlLgpFaW4gaGluc2NobGFjaHRlbiBoYWx0Li4ud29iZWksIGljaCBoYWIgZ3JhZCBnZWxlc2VuLAphbmdlYmxpY2gga2FtZW4gYmVpbSBsZXR6dGVuIGlyYWsta3JpZWcgbWVociBhbWlzIHVtIGFscyBpbiB2aWV0bmFtPyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdlbHR3ZWl0ZSBMaWNodGVya2V0dGUgYW0gU29ubnRhZywgZGVuIDE2LjMgdW0gMTkgVWhyIChBbmF0b2wsIDE1LiBNYXIgMjAwMywgMTA6NTA6MDYpOgp+IyEgcm49SG9vZCBydD0xMDQ3NzIxNjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzY5MjM3NQpPZ290dCwgZWluIFNvbGRhdCwgZGllIHNpZWh0LCBkYXNzIGVyIGplbWFuZGVuIHRvZXRldC4uLiBzY2hyZWNrbGljaGUKVm9yc3RlbGx1bmcsIHNvd2FzIGthbm4gbnVyIGRpZSBMb2JieSBkZXIgUHN5Y2hpYXRlciB3aXJrbGljaCBndXQgZmluZGVuLgoKTWlzdHZlcmRhbW10LCB1bmQgaWNoIGhhYiBkaWUga2xpbmlzY2hlIFBzeWNob2xvZ2llIGtvbXBsZXR0IGlnbm9yaWVydC4uLgpBbmF0b2wgYmVkYXVlcnQgc2VpbmUgU3R1ZGl1bXNzY2h3ZXJwdW5rdGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdlbHR3ZWl0ZSBMaWNodGVya2V0dGUgYW0gU29ubnRhZywgZGVuIDE2LjMgdW0gMTkgVWhyIChIb29kLCAxNS4gTWFyIDIwMDMsIDExOjAyOjQ5KToKfiMhIHJuPUFuYXRvbCBydD0xMDQ3NzIxODA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzY5MjM3NQpJY2ggZGVuayBtYWwsIGRpZSBLcmllZ3NnZWlsaGVpdCB3YWVyZSBhcmcgZ2VkYWVtcGZ0LCB3ZW5uIGRhcyBuaWNodApkZXJhcnQgYW5vbnltaXNpZXJ0IHVuZCBhYnN0cmFrdCBhYmxhdWZlbiB3dWVyZGUsIGFsc28gYmluIGljaCBhdWNoCmRhZnVlciwgYXVjaCBvaG5lIFBzeWNob2xvZ2llc2NoZWluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2VsdHdlaXRlIExpY2h0ZXJrZXR0ZSBhbSBTb25udGFnLCBkZW4gMTYuMyB1bSAxOSBVaHIgKEFuYXRvbCwgMTUuIE1hciAyMDAzLCAxMTo1MDo1NSk6Cn4jISBybj1Ib29kIHJ0PTEwNDc3MjI1Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3NjkyMzc1CkljaCB3ZWlzcyBlcyBuaWNodC4gRW50c2NoZWlkdW5nc3RyYWVnZXIgc2luZCBuaWNodCBkaWUgYW0gQWJ6dWcuClVuZCBkaWUgcHN5Y2hpc2NoZW4gU2NoYWVkZW4ga29tbWVuIG1vZWdsaWNoZXJ3ZWlzZSBlcnN0IG1pdCBlaW5pZ2VyClplaXQgVmVyem9lZ2VydW5nIGFuIGRpZSBtZW5zY2hsaWNoZSBPYmVyZmxhZWNoZS4uLgoKQW5hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogV2VsdHdlaXRlIExpY2h0ZXJrZXR0ZSBhbSBTb25udGFnLCBkZW4gMTYuMyB1bSAxOSBVaHIgKERlZXBibHVlLCAxNS4gTWFyIDIwMDMsIDEyOjAyOjIxKToKfiMhIHJuPUFuYXRvbCBydD0xMDQ3NzI1NDU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzY5MjM3NQpkaWUgd2VyZGVuIGFiZXIgbWVpc3QgZG9jaCBpcmdlbmR3aWUgdmVyZHJhZW5ndCwgenVtaW5kZXN0IGhhdCBtYW4gZGFzIGJlaQp1bnNlcmVyIEtyaWVnc2dlbmVyYXRpb24gbmljaHQgc28gbWl0YmVrb21tZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBXZWx0d2VpdGUgTGljaHRlcmtldHRlIGFtIFNvbm50YWcsIGRlbiAxNi4zIHVtIDE5IFVociAoQW5hdG9sLCAxNS4gTWFyIDIwMDMsIDEyOjAzOjI3KToKfiMhIHJuPURlZXBibHVlIHJ0PTEwNDc3MjYxNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3NjkyMzc1CnZlcmRyYWVuZ2VuICE9IHZlcmFyYmVpdGVuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2VsdHdlaXRlIExpY2h0ZXJrZXR0ZSBhbSBTb25udGFnLCBkZW4gMTYuMyB1bSAxOSBVaHIgKENhZHJhY2gsIDE1LiBNYXIgMjAwMywgMTY6MTM6NDYpOgp+IyEgcm49SG9vZCBydD0xMDQ3NzIxNjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzY5MjM3NQpJY2ggZ2xhdWJlIERpciBzaW5kIGRpZSBBdXNtYXNzZSBkZXMgVmlldG5hbWtyaWVncyBuaWNodCBzbyBnYW56IGJld3Vzc3QuIFdlbm4KaWNoIGRhcyByaWNodGlnIGluIEVyaW5uZXJ1bmcgaGFiLCBzdGFyYmVuIGltIFZpZXRuYW1rcmllZyBmYXN0IDYwLjAwMAphbWVyaWthbmlzY2hlIFNvbGRhdGVuLgpJbSAxLiBHb2xma3JpZWcgc3RhcmJlbiBpbnNnZXNhbXQgMzQzIGFsbGlpZXJ0ZSBTb2xkYXRlbi4KRXMgc3RhcmJlbiB6d2FyIG5hY2hkZW0gS3JpZWcgbm9jaCBlaW5pZ2UgYW0gc29nZW5hbm50ZW4gR29sZi1TeW5kcm9tLCBhYmVyCmluc2Jlc29uZGVyZSBkaWUgTmFjaGtyaWVnc2ZvbGdlbiB3YXJlbiBiZWltIFZpZXRuYW1rcmllZyBub2NoIGRyYW1hdGlzY2gKZ3JvZXNzZXIuCgpFaW4gendlaXRlcyBWaWV0bmFtIHd1ZXJkZSBLRUlORSBVUy1SZWdpZXJ1bmcgdWViZXJzdGVoZW4uCgpDYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBXZWx0d2VpdGUgTGljaHRlcmtldHRlIGFtIFNvbm50YWcsIGRlbiAxNi4zIHVtIDE5IFVociAoQ2FkcmFjaCwgMTUuIE1hciAyMDAzLCAxNjoxNzozNCk6Cn4jISBybj1DYWRyYWNoIHJ0PTEwNDc3NDEyMjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3NjkyMzc1Ck5vY2ggZWluZSBrbGVpbmUgU3RhdGlzdGlrICh1bmQgZGFzIG9id29obCBkaWUgQW1pcyBkZW4gMS4gSXJha2tyaWVnIHp1bQp2ZXJzY2hyb3R0ZW4gYWx0ZXIgS3JpZWdzZ2VyYWV0ZSBnZW51dHp0IGhhYmVuKToKCk1hdGVyaWFsdmVybHVzdGUgZGVyIEFsbGllcnRlbjoKNCBQYW56ZXIgKHZvbiAzNDAwKQoxIEFydGlsbGVyaWVnZXNjaHVldHogKHZvbiAzNzAwKQo5IGdlcGFuemVydGUgTWFubnNjaGFmdHN3YWdlbiAodm9uIDQwMDApCjQ0IEZsdWd6ZXVnZSAodm9uIDI2MDApCjE3IEh1YnNjaHJhdWJlciAodm9uIDE5NTkpCgpEYXMgc2luZCBkaWUgR2VzYW10dmVybHVzdGUgYWxsZXIgQWxsaWVydGVuLCBkaWUgQW1lcmlrYW5lciBoYXR0ZW4gYWxzbyBub2NoCmRldXRsaWNoIGdlcmluZ2VyZSBWZXJsdXN0ZS4KCkNhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFdlbHR3ZWl0ZSBMaWNodGVya2V0dGUgYW0gU29ubnRhZywgZGVuIDE2LjMgdW0gMTkgVWhyIChab29rLCAxNS4gTWFyIDIwMDMsIDE2OjI0OjIyKToKfiMhIHJuPUNhZHJhY2ggcnQ9MTA0Nzc0MTQ1NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc2OTIzNzUKUXVlbGxlPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFdlbHR3ZWl0ZSBMaWNodGVya2V0dGUgYW0gU29ubnRhZywgZGVuIDE2LjMgdW0gMTkgVWhyIChDYWRyYWNoLCAxNS4gTWFyIDIwMDMsIDE2OjUwOjUyKToKfiMhIHJuPVpvb2sgcnQ9MTA0Nzc0MTg2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc2OTIzNzUKd3d3LGdvb2dsZS5kZSAtICtpcmFra3JpZWcgK3RvdGUgK2FtZXJpa2FuZXIKICAgICAgICAgICAgICAgICtnb2xma3JpZWcgK3RvdGUgK2FtZXJpa2FuZXIKCkJzcDoKaHR0cDovL3d3dy51cGktaW5zdGl0dXQuZGUvaXJha2tyaWVnLmh0bQpodHRwOi8vd3d3LnVuaS1rYXNzZWwuZGUvZmIxMC9mcmllZGVuL3JlZ2lvbmVuL0lyYWsvZ29sZmtyaWVnLWZha3Rlbi5odG1sCgpJY2ggd2VyZCBoaWVyIGpldHp0IG5pY2h0IGFsbGVzIGFidGlwcGVuLCB3ZW5uIGVzIERpY2ggaW50ZXJlc3NpZXJ0IGdlYiBkaWUKU3RpY2h3b3J0ZSBtYWwgaW4gZWluZXIgU3VjaG1hc2NoaW5lIERlaW5lciBXYWhsIGVpbi4KCkNhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdlbHR3ZWl0ZSBMaWNodGVya2V0dGUgYW0gU29ubnRhZywgZGVuIDE2LjMgdW0gMTkgVWhyIChHcmltbWJvcm4sIDE1LiBNYXIgMjAwMywgMTY6NTg6MzgpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDQ3NzQzNDUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzY5MjM3NQpBY2ggd2FzLCBhbiBkZW4gVVJMcyBrYW5uIGljaCBkb2NoIHNjaG9uIHNlaGVuIGRhc3MgZGFzIG51ciBQcm9wYWdhbmRlciBlaW5lcwpNaXRnbGllZHMgZGVyIEF4aXMgb2YgV2Vhc2VscyBpc3QuIE5pY2h0IGVybnN0enVuZWhtZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdlbHR3ZWl0ZSBMaWNodGVya2V0dGUgYW0gU29ubnRhZywgZGVuIDE2LjMgdW0gMTkgVWhyIChab29rLCAxNS4gTWFyIDIwMDMsIDE3OjE5OjE3KToKfiMhIHJuPUNhZHJhY2ggcnQ9MTA0Nzc0MzQ1MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc2OTIzNzUKSG1tLi4gZGVyIGVyc3RlIExpbmsgaXMgbWlyIHp1dmllbCBUZXh0IHVuZCBiZWltIHp3ZWl0ZW4gTGluayBiZXNjaHJlaWJlbgpkaWUgRnJpZWRlbnNiZXdlZ3RlbiB3b2hsIGF1Y2ggbmljaHQsIHdvaGVyIHNpZSBkaWUgWmFobGVuIGhhYmVuLiBJY2ggZGFjaHRlLApEdSBoYWV0dGVzdCBldnRsLiBuZW4gTGluayB2b24gbmVyIFNlaXRlIGRlciBhbWVyaWthbnNpY2hlbiBSZWdpZXJ1bmcgb2RlcgpldHdhcyBhbmRlcmVzICJvZmZpemllbGxlcyIgdW5kIG5pY2h0IG51ciBncmF1ZSBJbmZvcy4uLiAKCk5hamEsIGVnYWwuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdlbHR3ZWl0ZSBMaWNodGVya2V0dGUgYW0gU29ubnRhZywgZGVuIDE2LjMgdW0gMTkgVWhyIChDYWRyYWNoLCAxNS4gTWFyIDIwMDMsIDE4OjE3OjUyKToKfiMhIHJuPVpvb2sgcnQ9MTA0Nzc0NTE1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc2OTIzNzUKQWxzbyBtaXIgcmVpY2h0IGRhcyBHcm9lc3Nlbm9yZG51bmcgZHVyY2hhdXMgYXVzICh6dW1hbCBGcmllZGVuc2JlZnVlcndvcnRlcgpPcGZlcnN0YXRpc3Rpa2VuIG5vcm1hbGVyd2Vpc2UgbmljaHQgc2Nob2VuIHJlZGVuKS4gV2VubiBEdSBkYXJhbiB6d2VpZmVsc3QKc2NocmVpYiBkZW5lbiBhbiBkZXIgVW5pIEthc3NlbCBkb2NoIG1hbCBuZSBtYWlsPwpFaHJsaWNoIGdlc2FndCBpcyBtaXIgbWVpbmUgWmVpdCB6dSBTY2hhZCBtaWNoIHN0dW5kZW5sYW5nIGR1cmNocyBOZXR6IHp1Cnd1ZWhsZW4gdW0gZGFubiBlaW5lIFF1ZWxsZSB6dSBuZW5uZW4gZGllIER1IGFscyAxMDAlIHNlcmlvZXMgYmV6ZWljaG5lc3QgKGltClp3ZWlmZWwgZHVlcmZ0ZSBkYXMgZGFubiBzY2hvbm1hbCBrZWluZSBkZXIgYW1lcmlrYW5pc2NoZW4gUmVnaWVydW5nIHNlaW4pLgpXZW5uIER1IGdsYXViZW4gd2lsbHN0LCBpbSBWaWV0bmFta3JpZWcgc2VpZW4gMTAwMHggbWVociBhbWVyaWsuIFNvbGRhdGVuCmdlc3RvcmJlbiBhbHMgaW0gR29sZmtyaWVnLCBkYW5uIGdsYXViIGVzIGhhbHQuLi4KCkNhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdlbHR3ZWl0ZSBMaWNodGVya2V0dGUgYW0gU29ubnRhZywgZGVuIDE2LjMgdW0gMTkgVWhyIChIb29kLCAxNS4gTWFyIDIwMDMsIDE4OjMxOjI5KToKfiMhIHJuPUNhZHJhY2ggcnQ9MTA0Nzc0MTIyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc2OTIzNzUKSWNoIHNhZ3RlIGphLCBpY2ggaGFiIGdyYWQgZ2VsZXNlbiB1bmQgZW5kZXRlIG1pdCBlaW5lbSA/ISwgZGEgaWNoIGRhcwprYXVtIGdsYXViZW4ga2Fubi4gV2VubiB3ZXIgZ2VuYXVlcmUgWmFobGVuIGhhdC4uLmljaCBoYWIga2VpbmUsCnVuZCBzb2xjaGUgQXJ0aWtlbCB3aWUgRGVpbmUgc2VoZSBpY2ggbmljaHQgYWxzIEZha3QgcHJvIG9kZXIga29udHJhIGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2VsdHdlaXRlIExpY2h0ZXJrZXR0ZSBhbSBTb25udGFnLCBkZW4gMTYuMyB1bSAxOSBVaHIgKFpvb2ssIDE1LiBNYXIgMjAwMywgMTk6MDg6MzgpOgp+IyEgcm49SG9vZCBydD0xMDQ3NzQ5NDg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzY5MjM3NQpDYWQqLCBpY2ggd29sbHRlIG51ciB3aXNzZW4sIHdhcyBmdWVyIG5lIFF1ZWxsZSBEdSBoYXR0ZXN0LiBIYWV0dCBqYSBzZWluCmtvZW5uZW4sIF9kYXNzXyBlcyBuZSBvZmZpemllbGxlIHdhci4gVW5kIG5laW4sIER1IG11c3N0IGZ1ZXIgbWljaCBhdWNoCm5pY2h0IGRhcyBOZXR6IGR1cmNod3VlaGxlbi4gVW5kIG5laW4sIGljaCB3aWxsIG1pdCBEaXIgYXVjaCBuaWNodApkaXNrdXRpZXJlbi4KVW5kIG5laW4sIGljaCBoYWJlIGRlbiBUaHJlYWQgZ2FyIG5pY2h0IG1pdGdlbGVzZW4uIAoKTWljaCBoYXR0ZSBfbnVyXyBpbnRlcmVzc2llcnQsIG9iIER1IHp1IGRlbiBJcmFrLVZlcmx1c3RlbiBvZmZpemllbGxlClphaGxlbiBhbmdlZ2ViZW4gaGF0dGVzdC4gTWVociBuaWNodC4gCgpBYmVyIGVzIHNlaSBEaXIgdW5iZW5vbW1lbiwgdWViZXIgZGFzLCB3YXMgaWNoIGdsYXViZSwgenUgc3Bla3VsaWVyZW4gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBXZWx0d2VpdGUgTGljaHRlcmtldHRlIGFtIFNvbm50YWcsIGRlbiAxNi4zIHVtIDE5IFVociAoS2FyaXMsIDE1LiBNYXIgMjAwMywgMTk6NTE6MzEpOgp+IyEgcm49Wm9vayBydD0xMDQ3NzUxNzE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzY5MjM3NQpBaCwgZWluIG5ldWVyIFRocmVhZCA6KSkpCkthcmlzIHdldHp0IHNjaG9uIG1hbCBkaWUgTWVzc2VyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogV2VsdHdlaXRlIExpY2h0ZXJrZXR0ZSBhbSBTb25udGFnLCBkZW4gMTYuMyB1bSAxOSBVaHIgKFpvb2ssIDE1LiBNYXIgMjAwMywgMjA6MDc6NTcpOgp+IyEgcm49S2FyaXMgcnQ9MTA0Nzc1NDI5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc2OTIzNzUKT2huZSBtaWNoLiAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdWVyY2h0ZXJsaWNoIC4uLiAoTWFoYXJldCwgMTYuIE1hciAyMDAzLCAwMjowMDowNCk6CkRlbW9uYXoga3VzY2hlbHQgc2ljaCB2b2VsbGlnIGJlbGFuZ2xvcyBhbiBEaWNoIGFuLgpFaW4gZnVlcmNodGVybGljaGVzIEJlYmVuIGVyc2NodWV0dGVydCBkaWUgRGltZW5zaW9uZW4gaW4gaWhyZW4gR3J1bmRmZXN0ZW4uCgpNYWhhLCBpbW1lciBub2NoIGVudHNldHp0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXZWx0d2VpdGUgTGljaHRlcmtldHRlIGFtIFNvbm50YWcsIGRlbiAxNi4zIHVtIDE5IFVociAoUm9jaHVzLCAxNi4gTWFyIDIwMDMsIDIzOjQ4OjQ5KToKfiMhIHJuPUFuYXRvbCBydD0xMDQ3NzIwNjkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzY5MjM3NQpBY2gsIGFtIGJlc3RlbiBoYXQgbWlyIG5vY2ggRGVpbiBWb3JzY2hsYWcgYXVmIGRlciBQYXJ0eQpnZWZhbGxlbiwgd2llIGVpbiBSTC1NYWdpZXIgZGFzIFByb2JsZW0gZ2FueiBzY2huZWxsIGxvZXNlbiBrYW5uOgoKICBhdCBzYWRkYW0gdHJhbnMgYnVzaAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVzIGludGVyZXNzaWVydCBqYSBkb2NoIGtlaW5lbiwgLi4uIChab29rLCAxNy4gTWFyIDIwMDMsIDE3OjM0OjI3KToKLi4uIGFiZXIgaGV1dGUgQWJlbmQgbXVzcyBpY2ggbm90Z2VkcnVuZ2VuIG1laW5lbiBMYXB0b3AgbmV1IGluc3Rlbi4gRGFzCnRydWVidCBtZWluZSBMYXVuZSBlcmhlYmxpY2ggZWluLiBBYmVyIGtlaW5lIFNvcmdlLCBpY2ggd2VyZCBtaWNoIGVpbmxvZ2dlbiwKZGFtaXQgSWhyIGF1Y2ggZXR3YXMgZGF2b24gaGFidC4uLgoKWm9vayBncmluc3QgZGFlbW9uaXNjaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFcyBpbnRlcmVzc2llcnQgamEgZG9jaCBrZWluZW4sIC4uLiAoR3JpbW1ib3JuLCAxNy4gTWFyIDIwMDMsIDE3OjQwOjQyKToKfiMhIHJuPVpvb2sgcnQ9MTA0NzkxODg2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc5MTg4NjcKV2llc28gc29sbHRlbiB3aXIgZGFydW50ZXIgbGVpZGVuIG11ZXNzZW4gZGFzcyBEdSBEaWNoIG1pdCB1bnRhdWdsaWNoZW4KQmV0cmllYnNzeXN0ZW1lbiBydW1hZXJnZXJuIG11c3N0PwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRXMgaW50ZXJlc3NpZXJ0IGphIGRvY2gga2VpbmVuLCAuLi4gKFdoaXRldGlnZXIsIDE3LiBNYXIgMjAwMywgMTc6NDE6NTgpOgp+IyEgcm49Wm9vayBydD0xMDQ3OTE4ODY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzkxODg2NwpIbW1tLi4uIHByb2JpZXIgZG9jaCBtYWwgS25vcHBpeCBhdXMgOikKRGFzIGhhdCwgd2VubiBhdWNoIGxhbmdzYW0sIHNvIGRvY2ggYXVjaCBhdWYgZWluZW0gKFVyKWFsdC1Ub3NoaWJhIG1pdCBuZW0KNzVNSHotUGVudGl1bSBvZGVyIHNvICh1bmQgNDAgTUIgU3BlaWNoZXIpIGZ1bmt0aW9uaWVydC4gOikKLS0gV2hpdGVUaWdlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldGRpZ2VzdCAoR3JpbW1ib3JuLCAxNy4gTWFyIDIwMDMsIDE4OjQ3OjEyKToKRnJvbTogIk1hcmMgTWl0dGVuZG9yZiIgPG1hcmMubWl0dGVuZG9yZkB0LW9ubGluZS5kZT4KTmV3c2dyb3VwczogZGUuYWx0LmZhbi5hbGRpClN1YmplY3Q6IFJlOiBXaGlza2V5IGJlaSBBbGRpCkRhdGU6IFdlZCwgMTIgTWFyIDIwMDMgMjE6MjM6MzcgKzAxMDAKCgpNYXR0aGlhcyBKb2NoaGVpbSA8bWF0dGhpYXNqb2NoaGVpbUBnbXguZGU+IHNjaHJ1YjoKPiBIYWxsbyBHZW1laW5kZSEKPiBXYXMga29lbm50IGlociB1ZWJlciBkaWUgV2hpc2tleSdzIGJlaSBBbGRpIFN1ZWQgc2FnZW4/Cj4gSWNoIG1hZyBKYWNrIERhbmllbHMgc2VociBnZXJuZSEgV2VsY2hlciBpc3QgZGFtaXQgenUgdmVyZ2xlaWNoZW4/CgpJY2ggbWFnIExhY2hzIQpXZWxjaGUgZGVyIEZpc2Noc3RhZWJjaGVuc29ydGVuIGlzdCBkYW1pdCB6dSB2ZXJnbGVpY2hlbj8KClNDTlIsIE1BcmMKCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBuZXRkaWdlc3QgKEdyaW1tYm9ybiwgMTcuIE1hciAyMDAzLCAxODo1MjoyOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0NzkyMzIzMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc5MjMyMzIKVW5kIG5vY2ggZWluZXI6CgpGcm9tOiBUaWxsIFdhbHRoZXIgPG5ld3NAdXJsei5kZT4KTmV3c2dyb3VwczogZGUudGFsay5qb2tlcwpTdWJqZWN0OiBSZTogRnJlaWhlaXRzZnJpdHRlbgoKVG9yc3RlbiBEaWV0emUgc2NocmllYjoKCj4gYXVzIGZyYW56b2VzaXNjaGVuIEZyaXR0ZW4gd3VyZGVuIEZyZWloZWl0c2ZyaXR0ZW4gdW5kIGZyYW56b2VzaXNjaGVyCj4gVG9hc3QgaGVpZnJhbnpvZXNpc2NoZXJ0IGpldHp0IEZyZWloZWl0c3RvYXN0LgoKQXVzIEFtZXJpY2FuIEZvb3RiYWxsIHdpcmQgRmV0dHNhY2toYW5kYmFsbD8KCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFIQSEgKERlbW9uYXosIDE3LiBNYXIgMjAwMywgMjI6MzI6MTYpOgoKTWFoYXJldCBzY2htaWVndCBzaWNoIGFuIEdhc3QxIGFuLgpuLi4uCmtudXJNYWhhcmV0IHdpcmQga3VyeiB2b24gZWluZXIgbGV1Y2h0ZW5kZW4gQXVyYSBlaW5nZWh1ZWxsdCwgZGllIHZvbiBpaHJlbQpBbXVsZXR0IGF1c3p1Z2VoZW4gc2NoZWludC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFcyBpbnRlcmVzc2llcnQgamEgZG9jaCBrZWluZW4sIC4uLiAoWm9vaywgMTcuIE1hciAyMDAzLCAyMjozNzoxNCk6Cn4jISBybj1ab29rIHJ0PTEwNDc5MTg4Njcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3OTE4ODY3CkVudHdhcm51bmcuIFJlY2huZXIgdHV0IHdpZWRlci4gTmFqYSwgc28gaGFsYndlZ3MuLi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ2hhdC1TeXN0ZW0gZ2VzdWNodCAoWm9vaywgMTguIE1hciAyMDAzLCAxMDozMTo0OSk6Cn4jISBvbj1ab29rIG90PTEwNDc5Nzk5MDMgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1Gb29iYXIgcnQ9MTA0Nzk3OTgwNSByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDQ3OTc5ODA1Ck9oLCBzbyB3YXMgaGFldHRlIGljaCB1bnRlciBMUEMgZnVlciBkZW4gRWJlbmVubWFzdGVyIGF1Y2ggZ2VybmUuCgpab29rLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQ2hhdC1TeXN0ZW0gZ2VzdWNodCAoTWFuZHJhZ29uLCAxOC4gTWFyIDIwMDMsIDEwOjQ2OjUxKToKfiMhIHJuPVpvb2sgcnQ9MTA0Nzk3OTkwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc5Nzk4MDUKRWluZmFjaCAteHh4IGF1ZiB0bSB6b29rIHVtbGVpdGVuIDpvKQoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBDaGF0LVN5c3RlbSBnZXN1Y2h0IChab29rLCAxOC4gTWFyIDIwMDMsIDEwOjQ4OjI1KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDQ3OTgwODExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0Nzk3OTgwNQpab29rIHBhdHNjaHQgTWEqIGVuZXJnaXNjaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRXMgaW50ZXJlc3NpZXJ0IGphIGRvY2gga2VpbmVuLCAuLi4gKEhvb2QsIDE4LiBNYXIgMjAwMywgMTE6Mzg6MjIpOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDQ3OTE5MzE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0NzkxODg2NwpEYWZ1ZXIgZXJrZW5udCBlcyB3ZWRlciBtZWluZSBGcml0eiFEU0wgbm9jaHQgbWVpbmUgU291bmRibGFzdGVyIExpZmUhCmtvcnJla3QsIG9id29obCBiZWlkZXMgYWJzb2x1dCBTdGFuZGFyZGhhcmR3YXJlLgpEaWUgU291bmRibGFzdGVyIGhhdCBlaWdlbnRsaWNoIG5lbiBEcml2ZXIgYmVpLCBkZXIgdHV0IG5pY2h0LgpGcml0eiFEU0wgaGF0IG5lbiBEcml2ZXIgYXVmIGRlciBIb21lcGFnZSwgZGVyIHR1dCBuaWNodCB1bnRlciBha3R1ZWxsZXIKS25vcHBpeC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFcyBpbnRlcmVzc2llcnQgamEgZG9jaCBrZWluZW4sIC4uLiAoVmFyZGlvbiwgMTguIE1hciAyMDAzLCAxMjowMzo0Myk6Cn4jISBybj1Ib29kIHJ0PTEwNDc5ODM5MDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3OTE4ODY3CktsYXVzIEtub3BwZXIgbmltbXQga2VpbmUgVHJlaWJlciBhdWYsIGRpZSBlcyBudXIgYXVmIGRpdmVyc2VuCkhlcnN0ZWxsZXJob21lcGFnZXMgZ2lidC4gSW4gZGVyIEtub3BwaXggc2luZCBudXIgIlN0YW5kYXJkdHJlaWJlciIgKEtlcm5lbCwKQUxTQSB1c3cpLiBJY2ggaGF0dGUgaWhuIG1hbCBhbmdlc2NocmllYmVuLCB3ZWlsIGljaCBkZW4gVHJlaWJlciBmdWVyIG5lCkJyb2FkY29tIEJDTTQ0MHgtTmV0endlcmtrYXJ0ZSAoaXN0IGF1ZiBkaXZlcnNlbiBha3R1ZWxsZW4gQXN1cy1Cb2FyZHMKdmVyYmF1dCkgcmVpbiBoYWJlbiB3b2xsdGUgLSBuaXggaXM6Ci0tLQpEYXMgaGlsZnQgYWxsZXMgbmljaHRzLCBzb2xhbmdlIGRpZSBIYXJkd2FyZWhlcnN0ZWxsZXIgaW1tZXIgaWhyIGVpZ2VuZXMKU3VlcHBjaGVuIGtvY2hlbiwgc3RhdHQgZWluZmFjaCBkaWUgU291cmNlbiBhbiBkYXMgS2VybmVsLUVudHdpY2tsZXJ0ZWFtIHp1CnNjaGlja2VuLgoKV2VubiBkaWUgU291cmNlbiBpbSBTdGFuZGFyZC1LZXJuZWwgYW5nZWtvbW1lbiBzaW5kLCBrb21tdCBkYXMgTW9kdWwgYXVjaAphdXRvbWF0aXNjaCBhdWYgZGllIEtub3BwaXguIFNvbnN0IGViZW4gbGVpZGVyIG5pY2h0LgotLS0KClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVzIGludGVyZXNzaWVydCBqYSBkb2NoIGtlaW5lbiwgLi4uIChIb29kLCAxOC4gTWFyIDIwMDMsIDEyOjA2OjIxKToKfiMhIHJuPVZhcmRpb24gcnQ9MTA0Nzk4NTQyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc5MTg4NjcKQWJlciBkYXNzIGRpZSBTb3VuZGJsYXN0ZXIgTGl2ZSEsIGVtdTEwazEgaXN0IGltIEtlcm5lbHRyZWUsIG5pY2h0CnR1dCBpc3Qgc2Nob24gYmVpbmFoZSBwZWlubGljaC4KSWNoIGRlbmtlIGFiZXIsIGVzIGxpZWd0IGRhcmFuLCBkYXNzIGVyIGlyZ2VuZHdpZSBkYW1pdCBkdXJjaGVpbmFuZGVyCmtvbW10LCBkYXNzIGF1Y2ggZWluZSBvbmJvYXJkLVNvdW5kY2hpcCBleGlzdGllcnQsIGltIEJJT1MKZWlnZW50bGljaCBkZWFrdGl2aWVydCwgYWJlciBkaWUgSGFyZHdhcmVlcmtlbm51bmcgaWdub3JpZXJ0IGRhcy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBFcyBpbnRlcmVzc2llcnQgamEgZG9jaCBrZWluZW4sIC4uLiAoVmFyZGlvbiwgMTguIE1hciAyMDAzLCAxMjoxMTo1OSk6Cn4jISBybj1Ib29kIHJ0PTEwNDc5ODU1ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ3OTE4ODY3CkhtbSAtIGRhbm4gbG9obnQgZXMgc2ljaCBqYSB2aWVsbGVpY2h0IGRvY2ggbWFsLCBpaG0genUgc2NocmVpYmVuLiBadW1pbmRlc3QKYXVmIG1laW5lIE1haWxzIGhhdCBlciByZWNodCBmcmV1bmRsaWNoIHJlYWdpZXJ0LgoKVmFyZGlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2VsdHdlaXRlIExpY2h0ZXJrZXR0ZSBhbSBTb25udGFnLCBkZW4gMTYuMyB1bSAxOSBVaHIgKEJhbWJ1bGtvLCAxOC4gTWFyIDIwMDMsIDEyOjQ0OjI3KToKfiMhIHJuPUhvb2QgcnQ9MTA0NzcyMTYyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDc2OTIzNzUKV2VubiBpY2ggbWljaCBuaWNodCBpcnJlLCB3YXJlbiBkYXMgbWVociBJcmFrZXIgYWxzIEFtaXMgaW4gVmlldG5hbS4uLi4uLgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUgLi4uIChMaWFyYSwgMTguIE1hciAyMDAzLCAyMjo1NTo1Myk6CgpEZWluZSBGcmV1bmRpbiBMZWliaSB0ZWlsdCBEaXIgbWl0OiBpY2ggaGFiIGhldXRlIHNjaG9uIGdlc3Byb2NoZW4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT2huZSBXb3J0ZSAuLi4gKEFyd2luLCAxOC4gTWFyIDIwMDMsIDIyOjU2OjM0KToKfiMhIHJuPUxpYXJhIHJ0PTEwNDgwMjQ1NTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4MDI0NTUzCkthbm4gc2ljaCBkYXMgYmVpIExlaWJpIHV1dXVlYmVyaGF1cHQgbmljaHQgdm9yc3RlbGxlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBpenphLiAoSmVuYW5kcmEsIDE5LiBNYXIgMjAwMywgMDA6MDc6MDYpOgpTdWJqZWN0OiBSZTogUGl6emEgZHJpdmVycyBpbiBJcmFxCkZyb206IG15bmV3ZW1haWxhZGRyZXNzaXRpc0B5YWhvby5jby51ayAoZGVsdXNpb24pCk5ld3Nncm91cHM6IGFsdC5waXp6YS5kZWxpdmVyeS5kcml2ZXJzCgoidGhyb2F0YnVuZyIgPG1hbG1zdG5AZWFydGhsaW5rLm5ldD4gd3JvdGUgaW4gbWVzc2FnZQpuZXdzOjxxdG4wYS4yMjEzJDFxMi4yMDkwNjZAbmV3c3JlYWQyLnByb2QuaXRkLmVhcnRobGluay5uZXQ+Li4uCj4gQXJlIHRoZXJlIHBpenphIGRyaXZlcnMgaW4gSXJhcT8KCklSQVE6IEhlbGxvPwpVUzogV2UgZGVtYW5kIHBpenphLgpJUkFROiBPSywgd2hlcmUgc2hvdWxkIHdlIHNlbmQgaXQgdG8/ClVTOiBJdCdzIHRvbyBsYXRlIGZvciBuZWdvdGlhdGlvbnMuCklSQVE6IFBsZWFzZSwgd2hlcmUgc2hvdWxkIHdlIHNlbmQgdGhlIHBpenphPwpVUzogWW91J3JlIHRyeWluZyB0byBkaXN0cmFjdCB1cy4gVGhlIHJlYWwgaXNzdWUgaGVyZSBpcyBwaXp6YS4KSVJBUTogT2theS4uLgpVUzogV2UgZGVtYW5kIHVuY29uZGl0aW9uYWwgZGVsaXZlcnkgb2YgcGl6emEuIE5vIHBheW1lbnQgb3IgYW55dGhpbmcuCklSQVE6IEhleSwgaWYgd2UncmUgc2VuZGluZyBwaXp6YSB3ZSBiZXR0ZXIgZ2V0IHBhaWQgZm9yIGl0Li4uClVTOiBUaGlzIGlzIGR1cGxpY2l0eS4gV2Ugd29uJ3QgYmUgbWlzbGVkIGJ5IHlvdS4gWW91IGhhdmUgaGFkIGVub3VnaApvcHBvcnR1bml0aWVzIHRvIHNlbmQgcGl6emEuCklSQVE6IFRoYXQncyB0aGUgd2F5IGl0IHdvcmtzLiBZb3UgZ2V0IHBpenphLCB3ZSBnZXQgbW9uZXkuClVTOiBXZSBvcHBvc2UgbGlua2FnZSBvZiBwaXp6YSBhbmQgbW9uZXkuCklSQVE6IExldCdzIG5lZ290aWF0ZSBhYm91dCB0aGlzLiBJJ20gc3VyZSB5b3UnbGwgZ2V0IHBpenphIHNvb24uClVTOiBXZSBuZWVkIHBpenphIHdpdGhpbiAzMCBzZWNvbmRzIG9yIHdlJ2xsIGJvbWIgeW91LgpJUkFROiBEbyB5b3UgZXZlbiB3YW50IHBpenphPwpVUzogVGhlIHRpbWUgZm9yIG5lZ290aWF0aW9ucyBpcyBwYXN0LgpJUkFROiBXZSBjYW4ndCBzZW5kIHBpenphIGlmIHdlJ3JlIG5vdCBnb2luZyB0byBnZXQgcGFpZCBhbmQgd2UgZG9uJ3QKZXZlbiBoYXZlIHNvbWV3aGVyZSB0byBzZW5kIHRoaXMuClVTOiBPdXIgcG9zaXRpb24gaXMgY2xlYXI6IHNlbmQgdXMgcGl6emEgb3IgYmUgZGVzdHJveWVkLgpJUkFROiBCdXQtIQpVUzogTk8gTkVHT1RJQVRJT05TISBZT1UgQVJFTidUIEdPSU5HIFRPIFNFTkQgUElaWkEsIEFSRSBZT1U/PyBUSEUKRU5USVJFIElOVEVSTkFUSU9OQUwgQ09NTVVOSVRZIERFTUFORFMgUElaWkEhCklSQVE6IE9oLCBncmVhdC4KVVM6IFdFJ1ZFIEdJVkVOIFlPVSBBTiBBUkJJVFJBUklMWSBMQVJHRSBOVU1CRVIgT0YgQ0hBTkNFUywgQlVUIFlPVQpKVVNUIFdPTidUIFNFTkQgUElaWkEhIElUJ1MgVElNRSBGT1IgV0FSISEhCklSQVE6IEZpbmUsIGZpbmUhISBXZSBoYXZlIHBpenphISBXZSdsbCBzZW5kIHBpenphIQpVUzogSXQncyB0b28gbGF0ZSBmb3IgdGhhdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZXNtYWwgZGUuY29tcC5zZWN1cml0eS5maXJld2FsbCAoTm9ubmUsIDE5LiBNYXIgMjAwMywgMDg6MjA6MzUpOgpadXIgRXJrbGFlcnVuZzogRXMgZ2lidCB0YWVnbGljaCBodW5kZXJ0ZSB2b24gUG9zdGluZ3MgenVtIFRoZW1hIFBlcnNvbmFsCkZpcmVhbGwsIGRpZSBzYW10IHVuZCBzb25kZXJzICdEZWluc3RhbGxpZXIgZGVuIEtyYW0nIHVuZCBlaW5lbSBMaW5rYm9jayBtaXQKRXJrbGFlcnVuZ2VuLCB3YXJ1bSBQZXJzb25hbCBGaXJld2FsbHMgbml4IG51ZXR6ZW4sIGJlYW50d29ydGV0LgoKd2hlc3MwMSB3cm90ZToKPgo+IEhhbGxvIGd1dGVuIFRnIQo+IEVpbmlnZSBtZWluZXIgQmVrYW5udGVuIGJlbnV0emVuIHVudGVyIFhQIGRlbiBXaW5kb3dzLU1lc3NlbmdlciB6dW0KPiBEYXRlbmF1c3RhdXNjaC4KPiBOdW4gaGFiZSBpY2ggYmVpIGRlbmVuIGRlbiBOb3J0b24tRmlyZXdhbGwgaW5zdGFsbGllcnQgdW5kIGRlcgo+IERhdGVuYXVzdGF1c2NoIGZ1bmt0aW9uaWVydCBuaWNodCBtZWhyLgo+IEhhYmUgc2Nob24gdmVyc3VjaHQgZGllIHZvbiBNUyBhbmdlZ2ViZW5lbiBQb3J0cyBmcmVpenVnZWJlbiBoYXQgYWJlciBuaWNodHMKPiBnZW51dHp0Lgo+IEthbm4gbWlyIGplbWFuZCBlaW5lbiBUaXBwIGdlYmVuPwoKSGFsbG8gZ3V0ZW4gVGFnIQpFaW5pZ2UgbWVpbmVyIEJla2FubnRlbiBzY2huZWlkZW4gc2ljaCByZWdlbG1hZXNzaWcgbWl0IFJhc2llcmtsaW5nZW4KZ3JvZXNzZXJlIEhhdXRsYXBwZW4gYXVzIGRlbiBPYmVyc2NoZW5rZWxuIGhlcmF1cy4KTnVuIGhhYmUgaWNoIG1laW5lIEJla2FudGVuIGluIGtvbnplbnRyaWVydGUgU2Nod2VmZWxzYWV1cmUgZ2V0YXVjaHQsIHVuZApzZWl0ZGVtIGZ1bmt0aW9uaWVydCBkYXMgbWl0IGRlbiBSYXNpZXJrbGluZ2VuIGlyZ2VuZHdpZSBuaWNodCBtZWhyLgpIYWJlIHNjaG9uIHZlcnN1Y2h0LCBtZWluZSBCZWthbm50ZW4gYXVzIGRlciBTY2h3ZWZlbHNhZXVyZSB3aWVkZXIKaGVyYXVzenVob2xlbiwgYWJlciBsZWlkZXIgaGFiZSBpY2ggc2VpdGRlbSBhdWNoIGtlaW5lIEhhZW5kZSBtZWhyLgpLYW5uIG1pciBqZW1hbmQgZWluZW4gVGlwcCBnZWJlbj8gKGZ1cDJwKQoKTm9ubmUsIHJvdGZsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIG1hbCBhbmRlcnMgKE1vcmdvdGgsIDE5LiBNYXIgMjAwMywgMTM6MTI6MDUpOgoqIE1QQTogTmV1ZXIgQXJ0aWtlbCB2b24gQXJlZWxhbmlyIGluIFJ1YnJpayAic3VjaGUtYmlldGUiLgpbVG9kOkxhcnNdIEVpbmUgUmllc2VucHl0aG9uIGhhdCBnZXJhZGUgQXJlZWxhbmlyIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBSaWVzZW5weXRob25dIE1vZWNodGUgbm9jaCBqZW1hbmQ/IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyBtYWwgYW5kZXJzIChMZXYsIDE5LiBNYXIgMjAwMywgMTQ6MDU6MTgpOgp+IyEgcm49TW9yZ290aCBydD0xMDQ4MDc1OTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODA3NTkyNQpVbmQgZXMgaGVpc3N0IF9kZXJfIFB5dGhvbi4gKGMpIEdyaW1tYm9ybi4KCkxldi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRkxXIG1hbCBhbmRlcnMgKEh1bW5pLCAxOS4gTWFyIDIwMDMsIDE0OjQyOjM0KToKfiMhIHJuPUxldiBydD0xMDQ4MDc5MTE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODA3NTkyNQpOYSwgZGFzIGtvbW10IGRvY2ggd29obCBkcmF1ZiBhbiwgb2IgbWFlbm5saWNoIG9kZXIgd2VpYmxpY2guCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRkxXIG1hbCBhbmRlcnMgKE1vcmdvdGgsIDE5LiBNYXIgMjAwMywgMTQ6NDg6NTYpOgp+IyEgcm49SHVtbmkgcnQ9MTA0ODA4MTM1NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDgwNzU5MjUKQWxzbyBpY2gga2VubiBkZW4gQXVzZHJ1Y2sgIkRpZSBQeXRob24gd3VlcmdlbiIgCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRkxXIG1hbCBhbmRlcnMgKEFuYXRvbCwgMTkuIE1hciAyMDAzLCAxNTowODozNik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNDgwODE3MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4MDc1OTI1CldhcyBhdWNoIGltbWVyIER1IGtlbm5zdCwgZXMgaXN0IGdyYW1tYXRpa2FsaXNjaCBuaWNodCBrb3JyZWt0LgpEZXIgUHl0aG9uIChzaW5nKSwgZGllIFB5dGhvbnMgKHBsdXIpLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZMVyBtYWwgYW5kZXJzIChNb3Jnb3RoLCAxOS4gTWFyIDIwMDMsIDE1OjA5OjQ4KToKfiMhIHJuPUFuYXRvbCBydD0xMDQ4MDgyOTE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODA3NTkyNQpBbHNvIHdlbm4gaWNoIGRhcyBuYWVjaHN0ZSBtYWwgcGlzc2VuIGdlaGUgc2FnIGljaCBkYW5uICJJY2ggZ2VoIG1hbCBlYmVuCm1laW5lbiBQeXRob24gd3VlcmdlbiIgamE/CgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRkxXIG1hbCBhbmRlcnMgKEFuYXRvbCwgMTkuIE1hciAyMDAzLCAxNToxMDozNik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNDgwODI5ODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4MDc1OTI1CkR1IGthbm5zdCBqYSBhdWNoIHNhZ2VuOiAiSWNoIGdlaCBtYWwgZWJlbiBtZWluZSBCbGluZHNjaGxlaWNoZSB3dWVyZ2VuLiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBGTFcgbWFsIGFuZGVycyAoQXJ3aW4sIDE5LiBNYXIgMjAwMywgMTU6MTE6MDQpOgp+IyEgcm49TW9yZ290aCBydD0xMDQ4MDgyOTg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODA3NTkyNQpXaWUgd2FyIGRpZXNlciBmcmFuem9lc2lzY2hlIEF1c2RydWNrIGRhZnVlciBub2NobWFsPwpEYXMgU2Nod2VpbiBhbSBIYWxzIHd1ZXJnZW4/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBGTFcgbWFsIGFuZGVycyAoQmFtYmksIDE5LiBNYXIgMjAwMywgMTU6MjE6MDcpOgp+IyEgcm49QXJ3aW4gcnQ9MTA0ODA4MzA2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDgwNzU5MjUKSWhyIHNlaWQgTXVkZGVyLiBJaHIgc29sbHRldCAiSWNoIGdlaCBtYWwgc2NobmVsbCBlbnR0YW5rZW4iIHNhZ2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRkxXIG1hbCBhbmRlcnMgKEFuYXRvbCwgMTkuIE1hciAyMDAzLCAxNToyODoyNyk6Cn4jISBybj1CYW1iaSBydD0xMDQ4MDgzNjY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODA3NTkyNQpBYmVyIHdlbm4gRHUgc3RpbmtlbmQgd2llZGVya29tbXN0IHVuZCAiQmluIHJlaW5nZWZhbGxlbi4iIHNhZ3N0LCB3aXJzdApEdSBEaWNoIHdvIGFuZGVycyBoaW5zZXR6ZW4gbXVlc3Nlbi4uLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEZMVyBtYWwgYW5kZXJzIChXaGl0ZXRpZ2VyLCAxOS4gTWFyIDIwMDMsIDE1OjI4OjU5KToKfiMhIHJuPUFuYXRvbCBydD0xMDQ4MDg0MTA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODA3NTkyNQpEYWZ1ZXIgZ2lidHMgamEgZGllIEtuZWlwZSAiWnVtIFNlaGVyZ3JhYiIgaW4gQW1hbGdyaW0gOikgRGEgZmFlbGx0IG1hbiBuaWNodApyZWluLi4uCkFsYmluby1UaWdlcmVsZiBXaGl0ZVRpZ2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBGTFcgbWFsIGFuZGVycyAoRm9vYmFyLCAxOS4gTWFyIDIwMDMsIDE1OjUxOjIwKToKfiMhIHJuPUFuYXRvbCBydD0xMDQ4MDg0MTA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODA3NTkyNQpRdWFyaywgZGFzIHdpcmQgd2VnZ2V0cmlnZ2VydC4KCkZvb2JhcgoKUFM6IE1hZ2llLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEZMVyBtYWwgYW5kZXJzIChMZXYsIDE5LiBNYXIgMjAwMywgMTU6NTY6MTEpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNDgwODU0ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4MDc1OTI1CkdyYWQgYmVpbSBVbnRlcnN1Y2hlbiBnZWxlc2VuOiAKCiJXZW5uIERpciBrZWluZSBhbmRlcmUgRXJrbGFlcnVuZyBlaW5mYWVsbHQsIHdpcmQgZXMgd29obCBkb2NoIE1hZ2llciBzZWluLiIKCnEuZS5kLgoKTGV2LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEZMVyBtYWwgYW5kZXJzIChMZXYsIDE5LiBNYXIgMjAwMywgMTU6NTY6MjcpOgp+IyEgcm49TGV2IHJ0PTEwNDgwODU3NzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4MDc1OTI1Ck1hZ2llISBPaG5lICJyIi4KCkxldi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBGTFcgbWFsIGFuZGVycyAoQW5hdG9sLCAxOS4gTWFyIDIwMDMsIDE1OjU2OjQzKToKfiMhIHJuPUxldiBydD0xMDQ4MDg1Nzg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODA3NTkyNQpFcmlubmVydCBtaWNoIGFuIFNjaGFmIFRvb2suLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBGTFcgbWFsIGFuZGVycyAoTGV2LCAxOS4gTWFyIDIwMDMsIDE1OjU4OjQ2KToKfiMhIHJuPUFuYXRvbCBydD0xMDQ4MDg1ODAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODA3NTkyNQpadSBoZWlzcyB3YXR0aWVydCB3b3JkZW4/CgpMZXYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRkxXIG1hbCBhbmRlcnMgKEJhbWJpLCAxOS4gTWFyIDIwMDMsIDE2OjA0OjMwKToKfiMhIHJuPUZvb2JhciBydD0xMDQ4MDg1NDgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODA3NTkyNQpJbSByZWFsbGlmZS1tdWQ/IFdpZSBkYXM/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogRkxXIG1hbCBhbmRlcnMgKE1hbmRyYWdvbiwgMTkuIE1hciAyMDAzLCAxNjowOTo0OSk6Cn4jISBybj1CYW1iaSBydD0xMDQ4MDg2MjcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODA3NTkyNQpybC5tdWQuZGUgKGFsbGUgcG9ydHMpIGlzdCBkYXMgaGFlcnRlc3RlIHVuZCBmaWVzZXN0ZSBNdWQgZGVyIFdlbHQuCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBGTFcgbWFsIGFuZGVycyAoQmFtYmksIDE5LiBNYXIgMjAwMywgMTY6MTA6MjMpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNDgwODY1ODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4MDc1OTI1CkFiZXIgZXMgaGF0IGVpbmUgZ2VpbGUgR3JhZmlrLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEZMVyBtYWwgYW5kZXJzIChBbmF0b2wsIDE5LiBNYXIgMjAwMywgMTY6MTE6MDYpOgp+IyEgcm49QmFtYmkgcnQ9MTA0ODA4NjYyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDgwNzU5MjUKSWNoIHd1ZXJkIGphIGdlcm4gZGFzIEZvcmNlLUZlZWRiYWNrIGFic2NoYWx0ZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBGTFcgbWFsIGFuZGVycyAoV2hpdGV0aWdlciwgMTkuIE1hciAyMDAzLCAxNjoxMToyNCk6Cn4jISBybj1BbmF0b2wgcnQ9MTA0ODA4NjY2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDgwNzU5MjUKVW5kIGljaCBoYWV0dGUgZ2VybmUgbmVuIG5ldWVuIEtvZXJwZXIgYmVpbSBUb2QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBGTFcgbWFsIGFuZGVycyAoQ3JvZnQsIDE5LiBNYXIgMjAwMywgMTY6MTE6NTcpOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDQ4MDg2Njg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODA3NTkyNQpXaWUgbGFuZ3dlaWxpZy4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogRkxXIG1hbCBhbmRlcnMgKFdoaXRldGlnZXIsIDE5LiBNYXIgMjAwMywgMTY6MTI6MjEpOgp+IyEgcm49Q3JvZnQgcnQ9MTA0ODA4NjcxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDgwNzU5MjUKT2guLi4gdW5kIGVpbiBDaGFvc2JhbGwgd2FlciBlaWdlbnRsaWNoIGF1Y2ggbWFuY2htYWwgZ2FueiBuZXR0Li4uIHNvbGFuZ2UgZXIKbmljaHQgYXVmIGVpbmVuIHNlbGJzdCB6dWZsaWVndC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IEZMVyBtYWwgYW5kZXJzIChCYW1iaSwgMTkuIE1hciAyMDAzLCAxNjoxMjo0OSk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwNDgwODY3NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4MDc1OTI1CkRhcyBpc3QgZG9jaCBhbGxlcyB2aWVsIHp1IHNlaHIgYW5zIGVjaHRlIExlYmVuIGFuZ2VsZWhudC4gTGFzcyBkb2NoIGltIHJsIGVpbgpiaXNzbCBGYW50YXN5IHp1LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IEZMVyBtYWwgYW5kZXJzIChHcmltbWJvcm4sIDE5LiBNYXIgMjAwMywgMTY6MTY6MDEpOgp+IyEgcm49QmFtYmkgcnQ9MTA0ODA4Njc2OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDgwNzU5MjUKQWVoLCB3b2hlciB3ZWlzc3QgRHUgZGFzcyBEdSBiZWltIFRvZCBrZWluZW4gbmV1ZW4gS29lcnBlciBiZWtvbW1zdD8gUHJvYmllcnMKZG9jaCBtYWwgYXVzLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogRkxXIG1hbCBhbmRlcnMgKEJhbWJpLCAxOS4gTWFyIDIwMDMsIDE2OjE2OjQzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ4MDg2OTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODA3NTkyNQpJY2ggaGFiIGRpZSBMaWIgZ2VsZXNlbi4KLi4uCk9rLCBpY2ggaGFiIHNpZSBuaWNodCB2ZXJzdGFuZGVuLCBhYmVyIGljaCBoYWJzIHByb2JpZXJ0LiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXJ6d2luZ2UgYWJ3ZXJ0ZW4gOykgKE1lbnNhbmEsIDIyLiBNYXIgMjAwMywgMTE6NTM6MTApOgpOYWphLCBkYXMgZGVyIFNwcnVjaCBoZWZ0aWcgaXN0LCBoYWJlbiB3aXIgamEgc2Nob24gaW1tZXIgZ2V3dXNzdCwgYWJlciB3aWUKaGVmdGlnLCBiZXdlaXN0IGZvbGdlbmRlczoKCkVpbmUgTGVpY2hlIGdyaW5zdCBnZWlzdGxvcyBpbiBkaWUgR2VnZW5kLgoKVWViZXJ0cmVpYmVuIHdpciBaYXViaWVzIGRhIG5pY2h0IGV0d2FzPyA7KQoKCk1lbnNhbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXIgTGlhcmE6IGRlLmFsdC5uZXRkaWdlc3QuLi4gKFJvbmRhLCAyMy4gTWFyIDIwMDMsIDAwOjI5OjM4KToKLi4uIHdlaWxzIGlyZ2VuZHdpZSBzbyBhdXNzY2hhdXQsIGFscyB3YWVyZSBpaHIgbGFuZ3dlaWxpZy4uLgoKW1MuTi46IGdla3Vlcnp0XQoKRnJvbTogUGF0cmljayBQaWVjaGEgPHBpZWNoYUBtaWNyb25hcy5jb20+Ck5ld3Nncm91cHM6IGRlLnJlYy5tdXNpay5oaWZpClN1YmplY3Q6IFJlOiBSYWRpbyB2ZXJ0YXVzY2h0IHJlY2h0cy1saW5rcwpEYXRlOiBNb24sIDMgTWFyIDIwMDMgMTA6MzU6MjMgKzAxMDAKTWVzc2FnZS1JRDogPFBpbmUuR1NPLjQuMzMuMDMwMzAzMTAxMzA2MC4xMzUyNi0xMDAwMDBAbmVzc2llPgoKT24gVGh1LCAyNyBGZWIgMjAwMywgQW5uYSBNb3NsZXIgd3JvdGU6Cgo+IEFuZHJlYXMgSHVlbm5lYmVjayBzY2hyaWViOgo+Cj4gPiBBbm5hIE1vc2xlciB3cm90ZToKPiBbICAgICBdCj4gPj4gR2VzdGVybiB3dXJkZSBkaWVzZXIgS29uemVydG1pdHNjaG5pdHQgdm9uCj4gPj4gRGV1dHNjaGxhbmRyYWRpbyBCZXJsaW4gcGVyIERWQiB1ZWJlciBTYXRlbGxpdCBnZXNlbmRldC4KPiA+PiBbICAgIF0gU2NocmVja2xpY2g6IGRpZSBTZWl0ZW4gc2luZCB2ZXJ0YXVzY2h0Lgo+ID4+IFdPIGxpZWd0IGRpZSBVcnNhY2hlPyBbICAgIF0KPiA+Cj4gPiBWZXJtdXRsaWNoIGJlaW0gRExSQi4KPgo+IERhcyBsaWVzdCBzaWNoIGphIG51biBmdWVyIG1pY2ggZXJzdCBtYWwgdHJvZXN0bGljaC4KPiBIYXN0IGR1IHNvbGNoZXJsZWkgYXVjaCBzY2hvbiBiZW1lcmt0PwoKSWNoIHNlaGUsIGljaCBtdXNzIG1hbCBlaW5lIEFuZWtkb3RlIGF1cyBtZWluZXIgUmFkaW96ZWl0CmVyemFlaGxlbiAuLi4KClNpdHVhdGlvbjogU2VuZGVzdHVkaW8sIEtvbnplcnR1ZWJlcnRyYWd1bmcuCkFud2VzZW5kOiBUb25pbmcuIChJKSB1bmQgVGVjaG5pa2VyIChUKS4gQW5ydWZlciAoQSkgd2lyZCB2b20KU2NoYWx0cmF1bSBpbiBkaWUgU2VuZGV0ZWNobmlrIGR1cmNoZ2VzdGVsbHQsIEhvZXJlciBiZWtsYWd0CnNpY2gsIGRhc3Mgc2VpbmUgU3RlcmVvLUFuemVpZ2UgbmljaHQgbGV1Y2h0ZXQuCgpJOiAiV2FzIGhhYmVuIHNpZSBkZW5uIGZ1ZXIgZWluIFByb2JsZW0/IgpBOiAiRGllIFN0ZXJlby1BbnplaWdlIGFuIG1laW5lbSBUdW5lciBsZXVjaHRldCBuaWNodCwgaWhyIHNlbmRldAogICBiZXN0aW1tdCBpbiBNb25vLiBLb2VubnQgaWhyIG1hbCBuYWNoc2VoZW4/IgpJOiAoc2NoYXV0IGF1ZnMgUHVsdCB1bmQgYmVtZXJrdCwgZGFzcyBkZXIgU2VuZGVzY2hhbHRlciB2b24gZGVyCiAgIHZvcmhlciBpbSBTdHVkaW8gc3RhdHRmaW5kZW5kZW4gTVctVWViZXJ0cmFndW5nIG5vY2ggYXVmIE1vbm8KICAgc3RlaHQpICJIbW0sIG5laW4uIEFiZXIgd2llIGFsdCBpc3QgZGVubiBpaHIgVHVuZXIgZXR3YT8iCkE6ICJBY2gsIGRhcyBpc3QgbmljaHQgZGFzIG5ldWVzdGUgTW9kZWxsLCBzY2hvbiBlaW4gd2VuaWcKICAgYWVsdGVyLiIKSTogIkljaCB2ZXJzdGVoZS4gQWVsdGVyZSBHZXJhZXRlIGhhdHRlbiBvZnQgZWluZW4gV2Fja2Vsa29udGFrdAogICBpbiBkZXIgU3RlcmVvLUFuemVpZ2UsIGRhcyBpc3QgZWluIHdlaXQgdmVyYnJlaXRldGVyIEZlaGxlci4KICAgVmVyc3VjaGVuIHNpZSBkb2NoIG1hbCB2b3JzaWNodGlnIGdlZ2VuIGRpZSBBbnplaWdlIGFuIGlocmVtCiAgIFR1bmVyIHp1IGtsb3BmZW4uIgpBOiAiR3V0LCBkYXMgcHJvYmllcmUgaWNoIG1hbC4iIChsZWd0IGRlbiBIb2VyZXIgd2VnLCBtYW4gaG9lcnQKICAgU2Nocml0dGdlcmFldXNjaGUpCkk6IChzY2hhbHRldCBkZW4gU2VuZGVzY2hhbHRlciBhdWYgU3RlcmVvKQpUOiAoZmFlbGx0IHZvciBMYWNoZW4gdm9tIFN0dWhsIHVuZCBtdXNzIHNpY2ggZWNodAogICB6dXNhbW1lbnJlaXNzZW4gOi0pCkE6IChrb21tdCB3aWVkZXIgYW5zIFRlbGVmb24pICJTdGltbXQsIHNpZSBoYWJlbiByZWNodC4gSWNoIGhhYmUKICAgbWFsIGV0d2FzIGRhZ2VnZW5nZWtsb3BmdCB1bmQgamV0enQgbGV1Y2h0ZXQgZGllIExhbXBlLiBWaWVsZW4KICAgRGFuay4iCkk6ICJLZWluZSBVcnNhY2hlLCBhdWYgd2llZGVyaG9lcmVuLiIKCldlciBoYXQgQWVobmxpY2hlcyBlcmxlYnQgdW5kIGthbm4gZGF2b24gZXJ6YWVobGVuPwoKWy4uXQoKR3J1c3MsIFBhdHJpY2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN0aW5rZXIgKEZsYXVyb3MsIDIzLiBNYXIgMjAwMywgMDI6MzA6MzcpOgpTYXJrb24gdmVyYnJlaXRldCBlaW5lbiBla2VsZXJyZWdlbmRlbiBHZXN0YW5rLgpSb2xhbmQga3JhdHp0IHNpY2ggYW0gS29wcC4KTWNEZWUgbGFlY2hlbHQgU2Fya29uIGFuLgpNY0RlZSBzdGVodCByaWNodGlnIHNjaG9lbiBzdGlsbC4KTWNEZWUgc2FsdXRpZXJ0IHZvciBTYXJrb24uClNhcmtvbiB2ZXJicmVpdGV0IGVpbmVuIGVrZWxlcnJlZ2VuZGVuIEdlc3RhbmsuCgpTb3NvIC4uCgoKRmxhdXNjaGkgd3VuZGVydCBzaWNoIGRhbm4gZG9jaCB1ZWJlciBNY0RlZSAoQmVpIFNhcmtvbiBoYXQgZXIgamVnbGljaGUKSG9mZm51bmcgYXVmZ2VnZWJlbiEpICA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMYWcgLi4uIChHcmltbWJvcm4sIDIzLiBNYXIgMjAwMywgMjA6MDg6MTMpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNDg0NDU2ODEgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwNDg0NDU2ODEKRHUga29lbm50ZXN0IGF1Y2ggZGFzIE1HIHJ1bnRlcmZhaHJlbiwgZGFzIHNvbGx0ZSBkYXMgbGFnIGF1ZiBkZW0gUmVjaG5lcgplYmVuZmFsbHMgbWlsZGVybi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExhZyAuLi4gKEFsa29ob2wsIDIzLiBNYXIgMjAwMywgMjA6Mzk6MTYpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNDg0NDU2ODEgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwNDg0NDU2ODEKZHUga29lbm50ZXN0IGphIGF1Y2ggbWFsIHNjaGF1ZW4gd2VsY2hlciBrZXJuZWwgZHJhdWYgbGFldWZ0IHVuZCB2aWVsbGVpY2h0Cmhhc3QgZHUgamEgZ2x1ZWNrIHVuZCBkdSBrYW5uc3QgYnVncyBhdXNudXR6ZW4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExhZyAuLi4gKFZhbmlvbiwgMjMuIE1hciAyMDAzLCAyMDo0MDowMCk6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNDg0NDgzNTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4NDQ1NjgxCktvZW5udGUgaWNoLiA6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoYSAoRmxhdXJvcywgMjQuIE1hciAyMDAzLCAwMDo0NjozOSk6CkVpbmUgVHVlciB3aXJkIHZvbiBlaW5lbSBXYW5kbGVyIGdlb2VmZm5ldC4KRGVyIFdhbmRsZXIgd2FiZXJ0IG5hY2ggTm9yZG9zdGVuLgoKSGV5LCBoYXQgRGlyIERlaW5lIE1hbWkgbmllIGJlaWdlYnJhY2h0LCBkYXNzIG1hbiBkaWUgVHVlcmVuIGF1Y2ggd2llZGVyCnp1bWFjaHQ/IDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IE1hdHJpeGtyaXN0YWxsLUVtb3RlIChHcmltbWJvcm4sIDI0LiBNYXIgMjAwMywgMTA6Mzk6MDMpOgp+IyEgcm49QmFtYmkgcnQ9MTA0ODQ5ODYyNiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNDgwMjQ3NDcKU29sYW5nZSBlcyBmdWVyIGRpZSBFbGZlbiBnZW51ZyBBc3Rsb2VjaGVyIGluIGRlbiBCYWV1bWVuIGdpYnQgc29sbGVuIHNpZSBkb2NoCnp1ZnJpZWRlbiBzZWluIHVuZCBoaWVyIG5pY2h0IHJ1bXN0YWVua2Vybi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IE1hdHJpeGtyaXN0YWxsLUVtb3RlIChIb2JvLCAyNC4gTWFyIDIwMDMsIDIyOjI3OjI5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ4NDk4NzQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODAyNDc0NwpOYSBzdXBlciwgRHUgZGVua3N0IGF1Y2ggd2llZGVyIG51ciBhbiBkaWUgTWFlbm5lci4uLgoKICAgSG9ibwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IE1hdHJpeGtyaXN0YWxsLUVtb3RlIChHcmltbWJvcm4sIDI0LiBNYXIgMjAwMywgMjI6MzI6MTIpOgp+IyEgcm49SG9ibyBydD0xMDQ4NTQxMjQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODAyNDc0NwpBbiB3ZW4gYXVjaCBzb25zdD8gQW5zb25zdGVuIGthbm5zdCBEdSBkdXJjaCBlaW4gc2ltcGxlcyBXZWdsYXNzZW4gdm9uICJsb2NoIgpiZWkgIkFzdGxvY2giIGRhcyBnYW56ZSBhbnBhc3Nlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCBMdWcgaGlsZiEgKEVsYmVyZXQsIDI1LiBNYXIgMjAwMywgMTE6MDc6MTEpOgpFbW1hIHJpZWNodCB3aWUgZnJpc2NoIGF1cyBkZW0gTWlzdGhhdWZlbiBnZWtvbW1lbi4KRHUgbXVzc3QgRGlyIGRpZSBOYXNlIHp1aGFsdGVuLgpLbGVpbkx1ZyBsZWNrdCBzaWNoIHNlaW4gRmVsbC4KCktsZWluTHVnIGtvZW5udGUgamEgYXVjaCBtYWwgRW1tYSBwdXR6ZW4sIG9kZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogTWF0cml4a3Jpc3RhbGwtRW1vdGUgKEJhbWJpLCAyNS4gTWFyIDIwMDMsIDEzOjI1OjMxKToKfiMhIG9uPUJhbWJpIG90PTEwNDg1OTUxMjUgb2c9ZW50d2lja2x1bmcKfiMhIHJuPU9ya3RvZXRlciBydD0xMDQ4NTM2MTcyIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTA0ODAyNDc0NwpEYXMgYWt0dWVsbGUgX3dhc18/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogTWF0cml4a3Jpc3RhbGwtRW1vdGUgKEVsYmVyZXQsIDI1LiBNYXIgMjAwMywgMTU6MjA6MjkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDg2MDE5OTEgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDQ4MDI0NzQ3CmR1IHZlcmxldHp0IGRpZSBSZWdlbG4KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBNYXRyaXhrcmlzdGFsbC1FbW90ZSAoR3JpbW1ib3JuLCAyNS4gTWFyIDIwMDMsIDE1OjIzOjM5KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0ODYwMjAyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDgwMjQ3NDcKS2FubiBuaWNodHMgZGFmdWVyLCBDYXQqIGhhdCB6d2lzY2hlbmdlcG9zdGV0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogTWF0cml4a3Jpc3RhbGwtRW1vdGUgKEVsYmVyZXQsIDI1LiBNYXIgMjAwMywgMTU6MjQ6MTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDg2MDIyMTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4MDI0NzQ3CmphIHVuZCwgd28ga2FlbWVuIHdpciBoaW4sIHdlbm4gZGFzIGVpbmUgZW50c2NodWxkaWd1bmcgd2FlcmU/CgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogTWF0cml4a3Jpc3RhbGwtRW1vdGUgKEFuYXRvbCwgMjUuIE1hciAyMDAzLCAxNToyODoyNyk6Cn4jISBvbj1BbmF0b2wgb3Q9MTA0ODYwMjQ5NyBvZz1lbnR3aWNrbHVuZwp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDg2MDIwMzAgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDQ4MDI0NzQ3CkFiZ2VzZWhlbiBkYXZvbiwgZGFzcyBlcyBnZXJhZGV6dSBsYWVjaGVybGljaCBpc3QsIGF1c2dlcmVjaG5ldCBQYWRyZWljCmdlZ2VudWViZXIgbWl0ICJndXRlbSBCZW5laG1lbiIgenUgYXJndW1lbnRpZXJlbiwga2FubnN0IER1IEdvZHdpbnMgTGF3CmF1Y2ggbmljaHQgYWJzaWNodGxpY2ggenVyIEFud2VuZHVuZyBicmluZ2VuLiBTZWxic3Qgd2VubiBlciAiSGl0bGVyISIKZ2VzY2hyaWViZW4gaGFldHRlLCB3YWVyIGRlciBUaHJlYWQgZGFtaXQgbmljaHQgdG90LiAKClZpZXJiaXNmdWVuZiwgVGhlbWEgdmVyZmVobHQsIHNldHplbi4gOikKCkEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBNYXRyaXhrcmlzdGFsbC1FbW90ZSAoQmFtYmksIDI1LiBNYXIgMjAwMywgMTU6Mjk6NDQpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNDg2MDI1MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4MDI0NzQ3CkF1Y2gsIHdlbm4gaWNoIG1pY2ggbWFsIHdpZWRlciBhbHMgSGludGVyd2FlbGRsZXIgb3V0ZTogV2FzIGJlZGV1dGV0ICJnb2R3aW5zCmxhdyI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogTWF0cml4a3Jpc3RhbGwtRW1vdGUgKEdyaW1tYm9ybiwgMjUuIE1hciAyMDAzLCAxNTozMDo1OCk6Cn4jISBybj1CYW1iaSBydD0xMDQ4NjAyNTg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODAyNDc0NwpBaCwgd2llZGVyIGVpbmVyIGRlciBtaXQgZ29vZ2xlIG5pY2h0IHVtZ2VoZW4ga2Fubi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogTWF0cml4a3Jpc3RhbGwtRW1vdGUgKEVsYmVyZXQsIDI1LiBNYXIgMjAwMywgMTU6MzI6NTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDg2MDI2NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4MDI0NzQ3CmRhIGdpYnRzIGF1Y2ggZmFxcyB1ZWJlciBnb2R3aW5zIGxhdyAuLi4uCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogTWF0cml4a3Jpc3RhbGwtRW1vdGUgKEdyaW1tYm9ybiwgMjUuIE1hciAyMDAzLCAxNTozNjoxNCk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwNDg2MDI3NzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4MDI0NzQ3CkJpbmphbmljaHNvOgpodHRwOi8vaW5mby5hc3RyaWFuLm5ldC9qYXJnb24vdGVybXMvZy9Hb2R3aW5fc19MYXcuaHRtbApJcyBhYmVyIGF1ZiBmcmVtZGxhZW5kaXNjaC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IE1hdHJpeGtyaXN0YWxsLUVtb3RlIChFbGJlcmV0LCAyNS4gTWFyIDIwMDMsIDE1OjM2OjQwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ4NjAyOTc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODAyNDc0NwpkYW5uIGxpZXMgZGllIG1hbCA7KQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IE1hdHJpeGtyaXN0YWxsLUVtb3RlIChHcmltbWJvcm4sIDI1LiBNYXIgMjAwMywgMTU6Mzg6NDIpOgp+IyEgcm49RWxiZXJldCBydD0xMDQ4NjAzMDAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODAyNDc0NwpHZWh0IG5pY2h0LCBtZWluIEJhYmVsZmlzY2ggaXN0IGthcHV0dC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IE1hdHJpeGtyaXN0YWxsLUVtb3RlIChBbmF0b2wsIDI1LiBNYXIgMjAwMywgMTU6NDQ6MTMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDg2MDMxMjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4MDI0NzQ3CkdvZHdpbnMgTGF3IGhhdCBlaW5lbiByaWVzZW5ncm9zc2VuIE5hY2h0ZWlsOiBEaXNrdXNzaW9uZW4gdWViZXIgRy5XLkJ1c2gKc2luZCBpbW1lciBzby4uLiBrdXJ6LiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBNYXRyaXhrcmlzdGFsbC1FbW90ZSAoR3JpbW1ib3JuLCAyNS4gTWFyIDIwMDMsIDE1OjU0OjI4KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0ODYwMzk2OCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNDgwMjQ3NDcKU2llIGtvZW5uZW4gbmljaHQ/IE5laG1lbiB3aXIgZWluIGtsZWluZXMsIGVpbmZhY2hlcyBCZWlzcGllbCBlaW5lcwpSZWNodHNzeXN0ZW1zOgoiTCdldGF0IGMnZXN0IG1vaSwgd2FzIGljaCBzYWdlIGlzdCBHZXNldHogdW5kIHdpcmQgZ2VtYWNodC4iCldpZXNvIGlzdCBkYXMgaW4gc2ljaCBuaWNodCB3aWRlcnNwcnVjaHNmcmVpPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogTWF0cml4a3Jpc3RhbGwtRW1vdGUgKEVsYmVyZXQsIDI1LiBNYXIgMjAwMywgMTU6NTQ6NTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDg2MDQwNjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4MDI0NzQ3Cm5hIHdlbm4gZXIgc3RpcmJ0IGRlciBTdGFhdD8gOikKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOiBNYXRyaXhrcmlzdGFsbC1FbW90ZSAoR3JpbW1ib3JuLCAyNS4gTWFyIDIwMDMsIDE1OjU2OjIyKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0ODYwNDA5OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDgwMjQ3NDcKSWNoIG1vZWNodGUgRGljaCBob2VmbGljaHN0IGRhcmF1ZiBoaW53ZWlzZW4gZGFzcyBpbiBkaWVzZW0gRmFsbCBzb3dpZXNvIGRhcwpVbml2ZXJzdW0gKG5hZW1saWNoIG1laW4gVW5pdmVyc3VtKSB1bnRlcmdlaHQgdW5kIGRpZSBGcmFnZSBkYWhlciBpcnJlbGV2YW50CmlzdC4gTWVpbiBSZWNodHNzeXN0ZW0gaXN0IHplaXRsaWNoIGJlZ3Jlbnp0LCBhYmVyIGljaCBzZWhlIG5vY2gga2VpbmVuCldpZGVyc3Byb2NoLiBTb2xhbmdlIGljaCBuaWNodCBzY2hpem9waHJlbiBiaW4uIFdhcyBpY2ggbmljaHQgYmluLiBVbmQgaWNoCmF1Y2ggbmljaHQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMyOiBNYXRyaXhrcmlzdGFsbC1FbW90ZSAoRWxiZXJldCwgMjUuIE1hciAyMDAzLCAxNTo1OToyNSk6Cn4jISBvbj1FbGJlcmV0IG90PTEwNDg2MDQzNTMgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ4NjA0MzE1IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTA0ODAyNDc0NwphdSBqYSwgd2lyZCBzaWUgZGFubiB1ZWJlcmFyYmVpdGV0PyAqaHVlcGYKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMzOiBNYXRyaXhrcmlzdGFsbC1FbW90ZSAoR3JpbW1ib3JuLCAyNS4gTWFyIDIwMDMsIDE2OjAwOjQ3KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA0ODYwNDM2NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDgwMjQ3NDcKTmllbWFuZCB3aWRlcnNldHp0IHNpY2ggZWluZXIgVWViZXJhcmJlaXR1bmcgZGVyIG1wYSwgRnJlaXdpbGxpZ2Ugc2luZCBtZWhyCmFscyB3aWxsa29tbWVuICh1bmQgbmFjaCBlaW5lbSBlcnN0ZW4gb2RlciB6d2VpdGVuIEJsaWNrIGF1ZiBkZW4gZXhpc3RpZXJlbmRlbgpDb2RlIGkuYS4gYXVjaCB3aWVkZXIgdmVyc2Nod3VuZGVuKS4gQWxzbywgd2VubiBEdSBzbyBmcmV1ZGlnIHJ1bWh1ZXBmc3Q6IExhc3MKRGljaCB3aXp6ZW4gdW5kIGF1ZiBnZWh0cy4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM0OiBNYXRyaXhrcmlzdGFsbC1FbW90ZSAoRWxiZXJldCwgMjUuIE1hciAyMDAzLCAxNjowMTozNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0ODYwNDQ0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDgwMjQ3NDcKZXJzdCB3ZW5uIGtsYXIgaXN0IHdhcyBpY2ggZGFyZiB1bmQgd2FzIG5pY2h0IDopCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNTogTWF0cml4a3Jpc3RhbGwtRW1vdGUgKEdyaW1tYm9ybiwgMjUuIE1hciAyMDAzLCAxNjowNToxMCk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwNDg2MDQ0OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4MDI0NzQ3CkR1IGRhcmZzdCBlaW5lIG5ldWUgbXBhIHNjaHJlaWJlbiB1bmQgRHUgZGFyZnN0IHNpZSBoaW50ZXJoZXIgbmljaHQgbWVocgplaWdlbm1hZWNodGlnIGFiaGFlbmdlbiwgbm8gbWF0dGVyIHdoYXQuIFNvbGx0ZXN0IER1IGVzIGRvY2ggdmVyc3VjaGVuIGhldHplbgp3aXIgUGFkcmVpYyBzYW10IHNlaW5lbSBiZXJ1ZWhtdGVuIFJlY2h0c2Fud2FsdCBhdWYgRGljaC4gQWx0ZXJuYXRpdiBrb2VubnRlc3QKRHUgZWluZW4gR2VtdWV0bGljaGVuIE5hY2htaXR0YWcgbWl0IG1pciBpcmwgd2FlaGxlbiwgYWJlciBzb3dlaXQgd29sbGVuIHdpcgpkZW5uIGRvY2ggbmljaHQgZ2VoZW4uLi4KQWxzbywgd2FubiBmYWVuZ3N0ZSBhbj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzY6IE1hdHJpeGtyaXN0YWxsLUVtb3RlIChFbGJlcmV0LCAyNS4gTWFyIDIwMDMsIDE2OjA1OjQ0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ4NjA0NzEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODAyNDc0NwppY2ggbmVobSBsaWViZXIgcGFkcmVpYyB1bmQgc2VpbmVuIGFud2FsdCA7KQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzc6IE1hdHJpeGtyaXN0YWxsLUVtb3RlIChBbmF0b2wsIDI1LiBNYXIgMjAwMywgMTY6MDY6MDIpOgp+IyEgcm49RWxiZXJldCBydD0xMDQ4NjA0NzQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODAyNDc0NwpEdSBiaXN0IGVrZWxoYWZ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IE1hdHJpeGtyaXN0YWxsLUVtb3RlIChDYXR3ZWF6bGUsIDI1LiBNYXIgMjAwMywgMTY6MTI6NDApOgp+IyEgb249UGl0ZmFsbCBvdD0xMDQ4NjA1MDQzIG9nPWVudHdpY2tsdW5nCn4jISBybj1NdWFkaWIgcnQ9MTA0ODYwNDk3OSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNDgwMjQ3NDcKbWFjaHQgZG9jaCBlaW5mYWNoIG1hbCBuZW4gbmV1ZW4gdGhyZWFkIGRhenUgYXVmIGRlbiBtYW4gZGFubiBzZXBhcmF0Cmlnbm9yaWVyZW4ga2Fubi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogTWF0cml4a3Jpc3RhbGwtRW1vdGUgKENhdHdlYXpsZSwgMjUuIE1hciAyMDAzLCAxNjoxMjo0Mik6Cn4jISBvbj1Cb2luZyBvdD0xMDQ4NjA1MDY3IG9nPWVudHdpY2tsdW5nCn4jISBybj1QaXRmYWxsIHJ0PTEwNDg2MDUwNDMgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDQ4MDI0NzQ3CkVyd2FydGVzdCBEdSBkZW5uIGRhc3MgaW4gZGllc2VtIFRocmVhZCBub2NoIHdhcyBzaW5udm9sbGVzIGtvbW10PyA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogTWF0cml4a3Jpc3RhbGwtRW1vdGUgKENhdHdlYXpsZSwgMjUuIE1hciAyMDAzLCAxNjoxMjo0Myk6Cn4jISBvbj1BbmF0b2wgb3Q9MTA0ODYwNTA4OSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49Qm9pbmcgcnQ9MTA0ODYwNTA2NyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNDgwMjQ3NDcKIldhcyBnaWJ0IGVzIGJlaSBSZV4xMDA/IiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IE1hdHJpeGtyaXN0YWxsLUVtb3RlIChDYXR3ZWF6bGUsIDI1LiBNYXIgMjAwMywgMTY6MTI6NDQpOgp+IyEgb249RWxiZXJldCBvdD0xMDQ4NjA1MTEzIG9nPWVudHdpY2tsdW5nCn4jISBybj1BbmF0b2wgcnQ9MTA0ODYwNTA4OSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNDgwMjQ3NDcKaWNoIHNwZW5kaWVyZSBlaW5lIHZlcmJyYW5udGUgY2QgOykKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBNYXRyaXhrcmlzdGFsbC1FbW90ZSAoQ2F0d2VhemxlLCAyNS4gTWFyIDIwMDMsIDE2OjEyOjQ1KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDQ4NjA1MTE3IG9nPWVudHdpY2tsdW5nCn4jISBybj1BbmF0b2wgcnQ9MTA0ODYwNTA4OSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNDgwMjQ3NDcKTXVhZGliLCBQaXRmYWxsOiB3dWVyZGV0IGlociBldWNoIGJpdHRlIG5pY2h0IHZvbiBhdXNzZW4gdW5kIHVuYmV0ZWlsaWd0IGluCmRpZSBEaXNrdXNzaW9uIGVpbm1pc2NoZW4gbWl0IGV1cmVuIFRvcnBlZGllcnVuZ3N2ZXJzdWNoZW4/IExhZXVmdCBkb2NoIGdyYWRlCnNvIHNjaG9lbi4gRGFua2VzY2hvZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM0OiBNYXRyaXhrcmlzdGFsbC1FbW90ZSAoQmFtYmksIDI1LiBNYXIgMjAwMywgMTY6MTQ6MjIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDg2MDQ0NDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4MDI0NzQ3CldlciByZWRldCBoaWVyIHZvbiB1ZWJlcmFyYmVpdGVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzU6IE1hdHJpeGtyaXN0YWxsLUVtb3RlIChNdWFkaWIsIDI1LiBNYXIgMjAwMywgMTY6MTU6MDIpOgp+IyEgcm49QmFtYmkgcnQ9MTA0ODYwNTI2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDgwMjQ3NDcKaWNoIHNlaGUgbWl0IGZyZXVkZW4gZGFzcyBtZWluIHVyc3BydW5nc2FydGlrZWwgbmljaHQgdmVybGVndCB3dXJkZSA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp2ZXJ3aXJydD8gKEd3ZW5kdWxhLCAyNS4gTWFyIDIwMDMsIDE3OjM0OjM3KToKPiBsaWVzIHNjaGlsZAoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqCiogICAgICAgIEFsY2hlbWlzdGVuLSB1bmQgWmF1YmVya29tcG9uZW50ZW52ZXJrYXVmICAgICAgKgoqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoKKiAgICAgICAgICAgICAgUHJlaXNlIGF1ZiBBbmZyYWdlICAgICAgICAgICAgICAgICAgICAgICAqCiogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKgoqICAgICAgICAgICAgICAgICAgICAgICBBcm1heCwgQWxjaGVtaXN0IHVuZCBaYXViZXJlciAgICoKKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgoKPiBmcmFnZSBhcm1heCBuYWNoIHByZWlzZQpBcm1heCBzYWd0OiBLZWluZSBBaG51bmcsIHdhcyBEdSBtZWluc3QuCj4gdGFldHNjaGVsIGFybWF4CkR1IHRhZXRzY2hlbHN0IEFybWF4IGRlbiBLb3BmLgoKZ3dlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHZlcndpcnJ0PyAoR3JpbW1ib3JuLCAyNS4gTWFyIDIwMDMsIDE3OjM3OjE3KToKfiMhIHJuPUd3ZW5kdWxhIHJ0PTEwNDg2MTAwNzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4NjEwMDc3CkRpciBpc3QgZGFzIHNjaG9lbmUgZGV1dHNjaGUgVmVyYiAicHJlaXNlbiIgdW5iZWthbm50PwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHZlcndpcnJ0PyAoTW9udGFudXMsIDI1LiBNYXIgMjAwMywgMTc6Mzg6NTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDg2MTAyMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4NjEwMDc3CkR1IHdvbGx0ZXN0IGZyYWdlbiwgb2IgaWhyIGRlciBEYXRpdiBiZWthbm50IGlzdC4gQWJlciBkZXMgRGF0aXZzIGJlZGllbnQgc2ljaApqYSBoZXV0ZSBrZWluZXIgbWVoci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHZlcndpcnJ0PyAoR3JpbW1ib3JuLCAyNS4gTWFyIDIwMDMsIDE3OjQyOjA4KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNDg2MTAzMzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4NjEwMDc3Ck5laW4sIHdvbGx0ZSBpY2ggbmljaHQgKm1pdGZ1c3NhdWZzdGFtcGYqLiBJY2ggd29sbHRlIGZyYWdlbiBvYiBpaHIgZGFzCnNjaG9lbmUgZGV1dHNjaGUgVmVyYiAicHJlaXNlbiIgdW5iZWthbm50IHNlaS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogdmVyd2lycnQ/IChNb250YW51cywgMjUuIE1hciAyMDAzLCAxNzo0MzowOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0ODYxMDUyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDg2MTAwNzcKVmVyZ2lzcyBuaWNodCwgZGFzcyBkZXIgRHVyY2hzY2huaXR0c211ZGRlciwgZGVyIHNvIGV0d2FzIGhpZXIgcG9zdGV0LCBkYW5uCmF1Y2ggc29mb3J0ICJwcmVpc2UgQXJtYXgiIGVpbnRpcHBlbiB3dWVyZGUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHZlcndpcnJ0PyAoR3JpbW1ib3JuLCAyNS4gTWFyIDIwMDMsIDE3OjQ2OjU0KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNDg2MTA1ODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4NjEwMDc3ClBpc2EgbGFlc3N0IGdydWVzc2VuLiBMYXV0IGRlbSBUZXh0IGF1ZiBkZW0gU2NoaWxkIGlzdCBuYXR1ZXJsaWNoIG1pdCBkZW0KUHJlaXNlbiB6dSB3YXJ0ZW4gYmlzIG1hbiBkYW5hY2ggZ2VmcmFndCB3aXJkLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNwZWljaGVycHJvYmxlbWUgKEhpc2FzdWwsIDI1LiBNYXIgMjAwMywgMTk6MDI6NDEpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNDg2MTUyODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4NjE1Mjg5CmZhbHNjaGUgUnVicmlrPyA6PgoKSGlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNwZWljaGVycHJvYmxlbWUgKFBpdGZhbGwsIDI1LiBNYXIgMjAwMywgMTk6MDI6NTEpOgp+IyEgcm49SGlzYXN1bCBydD0xMDQ4NjE1MzYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODYxNTI4OQpuZWluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB2ZXJ3aXJydD8gKE1vcmdvbmF0ZSwgMjYuIE1hciAyMDAzLCAwODoyMDo0MCk6Cn4jISBybj1Nb250YW51cyBydD0xMDQ4NjEwMzMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODYxMDA3NwpXYXM/IE5hY2hkZW0gZGVyIERhdGl2IGRlbiBHZW5pdGl2IHZlcmRyYWVuZ3QgaGF0LCBzb2xsZW4gd2lyIG9obmUgRGF0aXYKYXVza29tbWVuPwpBdSB3ZWlhCgoKKnNwcmFjaGxvcyogTW9yZ29uYXRlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB2ZXJ3aXJydD8gKE1vbnRhbnVzLCAyNi4gTWFyIDIwMDMsIDEwOjUyOjA3KToKfiMhIHJuPU1vcmdvbmF0ZSBydD0xMDQ4NjYzMjQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODYxMDA3NwpSZXR0ZXQgZGVzIEdlbml0aXZzIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpeGllIENoaWNrcyBpbiBkZW4gQ2hhcnRzIChBcG9sbG9uaWEsIDI2LiBNYXIgMjAwMywgMTM6MDY6MjUpOgp+IyEgcm49WmFybml5YSBydD0xMDQ4Njc0NjA4IHJnPWt1bHR1cgp+IyEgdGlkPTEwNDg2NzQ2MDgKV2VyIHp1ciBIb2VsbGUgYmV6ZWljaG5ldCBkaWUgTXVzaWsgdm9uIFRvbSBBc3RvciB1bmQgVHJ1Y2sgU3RvcCBhbHMgQ291bnRyeT8KTnVyIExldXRlLCBkaWUga2VpbmUgQWhudW5nIGhhYmVuICpnKgoKU2NoYWRlLCBkYXNzIHNvIHdlbmlnZSB3aXNzZW4sIGRhc3MgQ291bnRyeW11c2lrIG5pY2h0IHVuYmVkaW5ndCBkaWUKU2NobWFsei1GZXJud2VoLUhlcnpzY2htZXJ6LU11c2lrIGlzdCwgZnVlciBkaWUgc2llIHZpZWxlIGhhbHRlbi4KCkFwbyoKaGF0IGF1Y2ggZGllIGVpbiBvZGVyIGFuZGVyZSBDRCBpbiBkZXIgUmljaHR1bmcgKHVuZCBrZW5udCBkaWUgRGl4aWUgQ2hpY2tzCnNlaXQgMyBKYWhyZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaGplLCBkaWUga2xlcmlrcyAoUHVrLCAyNy4gTWFyIDIwMDMsIDEyOjA1OjAwKToKTWVybGUgc2NoaWNrdCBlaW4gU3Rvc3NnZWJldCBnZW4gSGltbWVsLgpEZXIgUHJpZXN0ZXIgc2FndDogTWVybGUsIER1IHdpcnN0IHNpY2hlciBkZW4gcmljaHRpZ2VuIFdlZyBmaW5kZW4uCkRlciBQcmllc3RlciBmbHVlc3RlcnQ6IFNlaSBiaXR0ZSBydWhpZyBoaWVyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHZlcndpcnJ0PyAoT3JrdG9ldGVyLCAyNy4gTWFyIDIwMDMsIDIwOjQxOjU4KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNDg2NzIzMjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4NjEwMDc3CkRlcyBHZW5pdGl2cyB3YXMgc29sbGVuIHdpciByZXR0ZW4/CgpPcmtULCB2ZXJ3aXJydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBncm9zc2UgSm90dCAoR3JpbW1ib3JuLCAyOC4gTWFyIDIwMDMsIDA3OjAyOjIyKToKa3dlcgogICAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBGcmUsIDI4LiBNYXIgMjAwMywgMDY6NTc6NTUgKDI5IFRlaWxuZWhtZXIpICAgIAogClphcm5peWEuLi4uLi4uLkouIElkbGVkLi4uLi4uLi4uLkouIFNycmFlLi4uLi4uLi4uLkouIFluZy4uLi4uLi4uLi4uLkouIApJbXRpeWF6Li4uLi4uLi5KLiBOb3N0cm9tby4uLi4uLi5qLiBBYnNpbnRoZS4uLi4uLi5KLiBFYWRyaWMuLi4uLi4uLi5KLiAKQW1icm9zaXVzLi4uLi4uSi4gTGlhZmFyLi4uLi4uLi4uSXcgTm9zZmVyYXR1Li4uLi4uSncgV2lkZXdpdHQuLi4uLi4uLi4gCkxvdmlzLi4uLi4uLi4uLkkuIEJlbmd1bm4uLi4uLi4uLkp3IEFscGhhLi4uLi4uLi4uLkouIEhvdXNlaG9sZGVyLi4uLkouIApNYXVyaWtvLi4uLi4uLi5KLiBTZWFsLi4uLi4uLi4uLi5KLiBIZWluaS4uLi4uLi4uLi5KdyBUeWxhay4uLi4uLi4uLi5KLiAKVGh1Zmhpci4uLi4uLi4uSncgKEVkLi4uLi4uLi4uLikuSi4gR3JpbW1ib3JuLi4uLi4uLncgTHdheGFuYS4uLi4uLi4uSi4gCkJhbWJ1bGtvLi4uLi4uLkouIEtvYmF5YXNoaS4uLi4uLkouIE1vcmdvdGguLi4uLi4uLkp3IE1hbmRyYWdvbi4uLi4uLkouIApWYW5pb24uLi4uLi4uLi5KdyAKCkRlbiBsZXR6dGVuIEJ1Y2hzdGFiZW4gaGFiIGljaCBtYWwgZ2Vsb2VzY2h0LCB3ZWlsIGljaCBuYXR1ZXJsaWNoIGtlaW5lbgpVZWJlcmJsaWNrIGhhYmUgd2FzIGRhdm9uIE1hZ2llcnNwZXppYWxpbmZvcm1hdGlvbiBpc3QgKGljaCBnbGF1YmUgU3BpZWxlcgpzZWhlbiBkb3J0IGtlaW4gViBmdWVyICJ2ZXJ3YXJudCAtIGt1cnogdm9yIExvZXNjaHVuZyIpIHVuZCBrZWluZSBMdXN0IGhhYmUKbWlyIHdpZWRlciBIb2NodmVycmF0IHZvcndlcmZlbiB6dSBsYXNzZW4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYXMgZ3Jvc3NlIEpvdHQgKFZhbmlvbiwgMjguIE1hciAyMDAzLCAwNzowNzoyNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0ODgzMTM0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDg4MzEzNDIKRGFiZWkgaXMgMDc6MDIgZWlnZW50bGljaCBlaW5lIEpvdHRsb3NlIFplaXQgLi4uCgpWKiBnYWVobnQsIGpvZnQgYWJlciBuaW1tZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFzIGdyb3NzZSBKb3R0IChEZWVwYmx1ZSwgMjguIE1hciAyMDAzLCAwOTowMTozOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0ODgzMTM0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDg4MzEzNDIKRWQgd2FyIGludmlzIGRhIHVuZCBEdSBwb3N0ZXN0IGRhcyBpbiBkaWUgTVBBPyAKSG9jaHZlcnJhdCEKTG9lc2NoIERpY2ghCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV0FSTlVORyAoVmFuaW9uLCAyOC4gTWFyIDIwMDMsIDE2OjEyOjQwKToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDQ4ODY0MjY5IHJnPWQuaW5zZWxuCn4jISB0aWQ9MTA0ODg2NDI2OQpXdWFyaGFyaGFyaGFyIQoKTXVzc3RlIG1hbCByYXVzLgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEYXMgZ3Jvc3NlIEpvdHQgKEJhbWJpLCAyOC4gTWFyIDIwMDMsIDE4OjE5OjE4KToKfiMhIHJuPURlZXBibHVlIHJ0PTEwNDg4Mzg0OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4ODMxMzQyCkVyIHJhZmZ0cyBlaW5mYWNoIG5pY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEYXMgZ3Jvc3NlIEpvdHQgKEFtYXJ5bGxpcywgMjguIE1hciAyMDAzLCAxODoyNDozMSk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDQ4ODM4NDk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODgzMTM0MgpXaWVzbz8KRGllICJBZG1pbmlzdHJhdGlvbiIgZGVyIE1QQSBpc3QgZWluZSBob2Noa29tcGxleGUgQXVmZ2FiZSwgZGllIG51ciB3ZW5pZ2VuClpeSExldXRlbiBhbnZlcnRyYXV0IHdlcmRlbiBrYW5uLiBOYXR1ZXJsaWNoIGtvZW5uZW4gc2ljaCBTcGV6aWFsaXN0ZW4gbmljaHQKaW4gYWxsZW4gUHVua3RlbiBhdXNrZW5uZW4sIHNvbnN0IHd1ZXJkZW4gc2llIG5pY2h0IHNvIGhlaXNzZW4uIEFsbGVzIGtsYXI/CgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIDspIChMaWFyYSwgMjguIE1hciAyMDAzLCAxODo0MDoxMik6Ckx1cmNoaSBzY2hsYWVuZ2VsdCBzaWNoIGhlcmVpbi4KRHUgZmx1ZXN0ZXJzdCBMdXJjaGkgYmVzY2h3b2VyZW5kZSBXb3J0ZSBpbnMgT2hyLgpMdXJjaGkgc2NocnVtcGZ0IHp1c2FtbWVuLCBsYWV1ZnQgZ3J1ZW4gYW4gdW5kIHZlcndhbmRlbHQgc2ljaCBsYW5nc2FtIGluCmVpbmVuIEZyb3NjaC4KRWluIEZyb3NjaCBodWVwZnQgbmFjaCBXZXN0ZW4uCkdhdG8gc2FndDogRHUgbXVzc3QgaWhuIGx1cmNoZW4sIG5pY2h0IGZyb3NjaGVuIDspCkR1IGdyaW5zdCBHYXRvIGFuLgpHYXRvIHNhZ3Q6IEVpbiBrbGVpbmVyIEx1cmNoIG5hbWVucyBGcm9zY2hpPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEZyaWVuZGVuc2tldHRlIChHcmltbWJvcm4sIDI4LiBNYXIgMjAwMywgMjE6MDQ6MDkpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNDg4ODE3ODcgcmc9d3d3Cn4jISB0aWQ9MTA0ODc3NTAzOQpUamEsIGRhcyBpc3QgamEgYXVjaCBrZWluIEJsdW1lbnRvcGYuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEZyaWVuZGVuc2tldHRlIChPcmt0b2V0ZXIsIDI4LiBNYXIgMjAwMywgMjE6MDc6MTEpOgp+IyEgcm49UGF0cnluIHJ0PTEwNDg4ODE4NjEgcmc9d3d3Cn4jISB0aWQ9MTA0ODc3NTAzOQpFaW4gVG9ybmFkbyBpc3Qga2VpbmUgUmFrZXRlPyBKZXR6dCBiaW4gaWNoIGFiZXIgenV0aWVmc3QgZW50dGFldXNjaHQuIEhlaXNzdApkYXMgYXVjaCwgZGFzIHdpciBkYW1pdCBuaWNodCBuYWNoIGRlbiBBbWlzIGRpZSB6d2VpdGVuIHNlaW4gd2VyZGVuIGRpZSBlaW5lCmJlbWFubnRlIE1vbmRsYW5kdW5nIGR1cmNoZnVlaHJlbiB3ZXJkZW4/CgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1ZXIgWmF1YmlyYW5nPyA7KSAoTGlhcmEsIDMwLiBNYXIgMjAwMywgMDA6MzI6MDcpOgotLS0gRm9sZ2VuZGUgWmF1YmVyZXIgc2luZCBhbndlc2VuZDogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKCAgTSkgR2F1bGlvdXMgZGVyIEVyem1hZ2lzdGVyICAgICAgICAgICAgICAgCihqIE0pIE1hbmRyYWdvbiBkZXIgRXJ6bWFnaXN0ZXIgICAgICAgICAgICAgIAooICAgKSBMaWFyYSBkaWUgTWFnaXN0cmEgICAgICAgICAgICAgICAgICAgICAoSGVsbHNpY2h0KQooICAgKSBCaXJkeSBkZXIgTWFnaXN0ZXIgICAgICAgICAgICAgICAgICAgICAKKCB3ICkgSXRoaWxkaW4gZGllIE1hZ2lzdHJhICAgICAgICAgICAgICAgICAgKEFuZ3JpZmYpCiggICApIFJhdmVudGhyb25lIGRlciBNYWdpc3RlciAgICAgICAgICAgICAgIChWZXJ3YW5kbHVuZykKKGp3ICkgQmVuZ3VubiBkZXIgTWFnaXN0ZXIgICAgICAgICAgICAgICAgICAgCiggICApIEd3ZW5kdWxhIGRpZSBNYWdpc3RyYSAgICAgICAgICAgICAgICAgIChCZWhlcnJzY2h1bmcpCihpICApIENpbmRlcmVsbGEgZGllIE1hZ2lzdHJhICAgICAgICAgICAgICAgIChIZWxsc2ljaHQpCiggICApIEthdmFsaWVyIGRlciBNYWdpc3RlciAgICAgICAgICAgICAgICAgIChBbmdyaWZmKQooICAgKSBNYWRuZXNzIGRlciBNYWdpc3RlciAgICAgICAgICAgICAgICAgICAKKCAgICkgQWhhYiBkZXIgTWFnaXN0ZXIgICAgICAgICAgICAgICAgICAgICAgKFZlcndhbmRsdW5nKQooIHcgKSBCcmFuIGRpZSBNYWdpc3RyYSAgICAgICAgICAgICAgICAgICAgICAoVmVyd2FuZGx1bmcpCiggICApIENvcmF4IGRlciBNYWdpc3RlciAgICAgICAgICAgICAgICAgICAgIChJbGx1c2lvbikKKEkgICkgTGFjcmkgZGllIE1hZ2lzdHJhICAgICAgICAgICAgICAgICAgICAgKFZlcndhbmRsdW5nKQooIHcgKSBBc3VrYSBkaWUgTWFnaXN0cmEgICAgICAgICAgICAgICAgICAgICAoQWJ3ZWhyKQooICAgKSBJc2kgZGllIE1laXN0ZXJhbndhZXJ0ZXJpbiAgICAgICAgICAgICAKKCAgICkgU2hhZWVuYSBkaWUgTWVpc3RlcmFud2FlcnRlcmluICAgICAgICAgCiggICApIFlpcnRoIGRpZSBNZWlzdGVyYW53YWVydGVyaW4gICAgICAgICAgIAooSiAgKSBBbHBoYSBkZXIgTWVpc3RlcmFud2FlcnRlciAgICAgICAgICAgICAKKCB3ICkgTGFyaXNpZWxsZSBkaWUgU2Nob2xhcmluICAgICAgICAgICAgICAgCiggICApIEV1cGhvcmlvbiBkZXIga2xlaW5lIENoYW90ICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KClp3ZXJnZW56YXViZXJpbmUgTGknV2lyIGtyaWVnZW4gZXVjaCBhbGxlISdhcmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVzIHNjaGxhZWd0IGRpZSBzdHVuZCAoUHVrLCAzMC4gTWFyIDIwMDMsIDAzOjAxOjQ3KToKRHUgdGVpbHN0IERhcmt3aW5nIG1pdDogaWNoIG11c3MgYmlzIDMgdWhyIGFyYmVpdGVuLCBoYWJlbiB3aXIgamV0enQgMyA/Pwo+IER1IHRlaWxzdCBEYXJrd2luZyBtaXQ6IHNvbW1lcnplaXQgd3VyZGUgZ2VyYWRlIGF1ZiBtZWluZW0gcmVjaG5lcgpEdSB0ZWlsc3QgRGFya3dpbmcgbWl0OiB1bWdlc2NoYWx0ZXQKPiBEdSBob2Vyc3QgZGllIFVociBzY2hsYWdlbjogRXMgaXN0IGpldHp0IDMgVWhyLgpEYXJrd2luZyB0ZWlsdCBEaXIgbWl0OiBhbHNvIERlaW4gUmVjaG5lciAuLi4gc3Bpbm50IDAzOjAwCgpQdWssIHJvZmx0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMjogTWF0cml4a3Jpc3RhbGwtRW1vdGUgKE11YWRpYiwgMzEuIE1hciAyMDAzLCAxMDowNTozMCk6Cn4jISBybj1CYW1iaSBydD0xMDQ4OTQ0NTc0IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTA0ODAyNDc0Nwp3ZXIgbWFjaHQgZGVubiBzb3dhcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNPTU1FUlBBUlRZIDIwMDMgKE9ya3RvZXRlciwgMzEuIE1hciAyMDAzLCAxMjoyNzowMSk6Cn4jISBybj1TdHJvaGFsbSBydD0xMDQ5MTA1MTg1IHJnPXBhcnR5Cn4jISB0aWQ9MTA0ODg0NDY4NApKYSB1bmQgaWNoIGJpbiBzaWNoZXIgZGFzIGFuIGRlbSBXRSBlaW5lIG1laW5lciBaaW1tZXJwZmxhbnplbiBHZWJ1cnRzdGFnIGhhdC4KQWxzbyB3ZW5uIGRhcyBrZWluIEdydW5kIGlzdCBkZW4gUGFydHl0ZXJtaW4genUgdmVyc2NoaWViZW4hIEFsc28gbG9zLAp2ZXJzY2hpZWJlbiEKCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTT01NRVJQQVJUWSAyMDAzIChSb25kYSwgMzEuIE1hciAyMDAzLCAxODo0MTo0NSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA0OTEwNjQyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDg4NDQ2ODQKTml4LiBCcmluZyBkYXMgUGZsYWVuemNoZW4gZWluZmFjaCBtaXQuCgpSb25kYQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldGRpZ2VzdCBtYWwgd2llZGVyLi4uIChGb29iYXIsIDMxLiBNYXIgMjAwMywgMTg6NTM6NDApOgpbU046IEF1ZiBkYXMgd2VzZW50bGljaGUgZ2VrdWVyenRdCgpGcm9tOiBHZXJhbGQgT3BwZW4gPEdlcmFsZC5PcHBlbkB3ZWIuZGU+Ck5ld3Nncm91cHM6IGRlLmFsdC5mYW4uYWxkaQpTdWJqZWN0OiBMaWRsOiBNb2ViZWwtVHJlc29yIG9lZmZuZW4/CkRhdGU6IFN1biwgMjMgRmViIDIwMDMgMjM6MzA6MjQgKzAxMDAKTWVzc2FnZS1JRDogPDNFNTk0QjgwLjgwOTAwMDdAd2ViLmRlPgoKU29sbCBmdWVyIGplbWFuZCBhdXMgZGVyIEZlcm5lIGhpbGZ0ZSBsZWlzdGVuLCBkZXIgc2ljaCBsZXR6dGUKV29jaGUgZGVuIFRyZXNvciBiZWkgTGlkbCBnZWthdWZ0IGhhdCB1bmQgaWhuIC0gYXVzIGRlciAKT3JpZ2luYWx2ZXJwYWNrdW5nIGdlbm9tbWVuIC0gbmljaHQgYXVmYmVrb21tdC4KQW5sZWl0dW5nIGxpZWd0IHdvaGwgaW0gVHJlc29yLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV0ZGlnZXN0IG1hbCB3aWVkZXIuLi4gKEZvb2JhciwgMzEuIE1hciAyMDAzLCAxOTowMDoxNik6Cn4jISBybj1Gb29iYXIgcnQ9MTA0OTEyOTYyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDkxMjk2MjAKRnJvbTogSGFucy1HZW9yZyBCaWNrZWwgPGhnYnVzZW5ldG11ZWxsQGdteC5kZT4KTmV3c2dyb3VwczogZGUucmVjLnR2LmxpbmRlbnN0cmFzc2UKU3ViamVjdDogUmU6IFNhdHogZGVzIFRhZ2VzCkRhdGU6IFN1biwgMzAgTWFyIDIwMDMgMjM6NDU6MDEgKzAyMDAKTWVzc2FnZS1JRDogPGI2N29ocCQyamxrYiQxQElELTEwODgyMy5uZXdzLmRmbmNpcy5kZT4KCkNvcm5lbGlhIEx1bXBlIDxjLmx1bXBlQHdvbG1haWwubmw+IHdyb3RlOgoKPkRyZWkgQ2hpbmVzZW4gbWl0IGRlbSBLb250cmFiYXNzLAo+ZGllIHNhc3NlbiBhdWYgZGVyIFN0cmFzc2UgdW5kIGVyemFlaGx0ZW4gc2ljaCB3YXMuCj5EYSBrYW0gZGllIFBvbGl6ZWk6IEphIHdhcyBpc3QgZGVubiBkYXM/Cj5EcmVpIENoaW5lc2VuIG1pdCBkZW0gS29udHJhYmFzcy4KCkljaCBiaW4gZW50c2V0enQsIG1pdCB3ZWxjaGVyIEJlZGVua2VubG9zaWdrZWl0IGRpZXNlcyBwb2xpdGlzY2gKaW5rb3JyZWt0ZSAnS2luZGVyJ2xpZWQgaGllciB2ZXJicmVpdGV0IHdpcmQhIERyZWkgYXVzbGFlbmRpc2NoZQpNaXRidWVyZ2VyLCBkaWUgc2ljaCB1bnRlciBNaXRmdWVocnVuZyBlaW5lcyBNdXNpa2luc3RydW1lbnRlcyBpbQpvZWZmZW50bGljaGVuIFZlcmtlaHJzcmF1bSB1bnRlcmhhbHRlbiwgd2VyZGVuIG9obmUgZXJzaWNodGxpY2hlbgpHcnVuZCB2b24gZGVyIFBvbGl6ZWkgdW50ZXIgZGllIEx1cGUgZ2Vub21tZW4uCgpEZXJhcnRpZ2VzIHN1YnZlcnNpdmVzIExpZWRndXQgd2lyZCBhbGxlbmZhbGxzIG5vY2ggdWViZXJ0cm9mZmVuCnZvbiBkZXIgdWViZXJhdXMgdHJhZ2lzY2hlbiBHZXNjaGljaHRlIGRlciB6ZWhuIGhlcmFud2FjaHNlbmRlbgp1bmQgc2ljaCBsYXVmZW5kIGRlemltaWVyZW5kZW4gUGlnbWVudHByaXZpbGVnaWVydGVuIHVuZCBkZXIKQmFsbGFkZSBlaW5lcyBnZXdpc3NlbiB2ZXJhbnR3b3J0dW5nc2xvc2VuIFZhdGVycyBuYW1lbnMgQm9sbGUsCmRlciBzaWNoIGtvZXN0bGljaCBhbXVlc2llcnQsIG9id29obCBzZWluIGp1ZW5nc3RlciBTb2huCnZlcnNjaHd1bmRlbiBpc3QuCgpTa2FuZGFsIHNvd2FzIQoKSEcKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbmRsaWNoIG9mZml6aWVsbDogTUcgc2NodXR6bG9zIGRlciBXaWxsa3VlciBlaW5lcyBGcmVha3MgdW50ZXJ3b3JmZW4gLi4uIChOZXNhamEsIDMxLiBNYXIgMjAwMywgMTk6MTY6MjApOgpEb2NoIGVuZGxpY2ggd3VyZGUgZXMgYXVjaCBvZmZpemllbGwgLi4uLiBpbiBlaW5lbSBrbGVpbmVuIG9lc3RlcnJlaWNoaXNjaGVuCk11ZCBtaXQgImZhbWlsaWFlcmVyIEF0bW9zcGhhZXJlIiBoYWJlIGljaCBmb2xnZW5kZW4gQXJ0aWtlbCBnZWZ1bmRlbiwgZGVuIGljaApoaWVyIGdlcm5lIG1hbCBpbiBnZXNhbXRlciBMYWVuZ2UgZGFyc3RlbGxlbiBtb2VjaHRlLgoKS3VyemUgVm9yZ2VzY2hpY2h0ZTogRXMgZ2VodCBkYXJ1bSwgZGFzIGJlc2FndGVzIE11ZCBuaWNodCB3ZWlzcywgb2IgMgpTaGVyaWZmcyB6dSB3ZW5pZyBvZGVyIHp1IHZpZWwgc2luZCAuLi4gYW5nZXN0cmVidCB3ZXJkZW4gd29obCBtaW5kZXN0ZW5zIDMKLi4uLmV2dGwgYXVjaCBtZWhyLiBFaW4gZWJlbmZhbGxzIGltIE1HIHNwaWVsZW5kZXIgQ2hhcmFrdGVyIGZyYWd0ZSBhbiwgb2IKbmljaHQgZXZ0bCBhdWNoIGVpbiBTaGVyaWZmIGF1c3JlaWNoZW5kIHNlaSwgZGEgZXMgenVtIEJlaXNwaWVsIGltIE1HIGphIGF1Y2gKaXJnZW5kd2llIGZ1bmt0aW9uaWVyZS4KCkRhcyB3YXIgd29obCBkZXIgZmFsc2NoZSBWZXJnbGVpY2ggdW5kIGhpZXIgdHJpdHQgZW5kbGljaCBkaWUgV2FocmhlaXQsIGRpZQphbGxlIHNjaG9uIGxhbmdlIGFobnRlbiwgYWJlciBuaWVtYW5kIHdpcmtsaWNoIGdsYXViZW4gd29sbHRlLCB6dSBUYWdlLgoKKE9yZ2luYWwtQXJ0aWtlbCkKCkRhIG11c3MgaWNoIERpciBsZWlkZXIgZXR3YXMgV2luZCBhdXMgZGVuIFNlZ2VsbiBuZWhtZW4sIEMuLiBTaWNoZXJsaWNoIGlzdApkYXMgaGllciBlaW4gU3BpZWwsIGFiZXI6CgoxLiBFcyBpc3QgZ2VtZWluc2NoYWZ0bGljaGVzIFNwaWVsLiBEZXIgaG9oZSBXZXJ0IGRlcyBTcGllbHMgbGllZ3QgZGFyYW4sIGRhc3MKdGhlb3JldGlzY2ggMTAwMCBMZXV0ZSBoaWVyIG1pdHNwaWVsZW4ga29lbm5lbiB1bmQgZXMgbXVlc3NlbiBhbGxlIG1pdGVpbmFuZGVyCmF1c2tvbW1lbiBrb2VubmVuLiBEYXp1IGJlZGFyZiBlcyBQZXJzb25lbiwgZGllIGRhcmF1ZiBhY2h0ZW4sIGRhc3MgaGllciBhbGxlCm1pdGVpbmFuZGVyIGF1c2tvbW1lbiBrb2VubmVuLiBEaWVzZSBQZXJzb25lbiBzaW5kIGFiZXIga2VpbmUgTWFzY2hpbmVuCnNvbmRlcm4gZWJlbmZhbGxzIE1lbnNjaGVuIG1pdCBQcml2YXRsZWJlbi4gTnVyIHdlaWwgaW0gTW9yZ2VuZ3JhdWVuIHNvbiBGcmVhawphbHMgU2hlcmlmZiBydW1sdW5nZXJ0IGRlciAyNCBTdHVuZGVuIGFtIFRhZyBpbSBtZyBoYWVuZ3QgdW5kIGRpZSBsZXV0ZQp1ZWJlcndhY2h0LCBoZWlzc3QgZXMgbm9jaCBsYW5nZSBuaWNodCwgZGFzcyBlcyBoaWVyIGF1Y2ggZnVuenQuIEsuIHVuZCBHLgpoYWJlbiBzaWNoZXJsaWNoIGJlc3NlcmVzIHp1IHR1biwgYWxzIGhpZXIgYWJ3ZWNoc2VsbmQgMTIgU3R1bmRlbiBTY2htaWVyZSB6dQpzdGVoZW4uIEVpbmUgZHJpdHRlIFBlcnNvbiBrYW5uIGRhIG5pY2h0IHNjaGFkZW4uLi4uIEJlc3NlciBub2NoIDQgb2RlciA1Li4uCgoyLiBXaWUgamVkZXMgU3BpZWwgKFNlbGJzdCBNZW5zY2ggYWVyZ2VyZSBEaWNoIG5pY2h0KSBoYXQgc2VpbmUgZ2V3aXNzZW4KUmVnZWxuLiBFcyBnaWJ0IGphIGF1Y2ggbmljaHRnZW1laW5zY2hhZnRzYmV6b2dlbmUgUmVnZWxuIGRpZSBnZWJyb2NoZW4gd2VyZGVuCmtvZW5uZW4gKHRyaWdnZXIgKmcqKSB1bmQgZGFyYXVmIGdpbHQgZXMgZGFubiBhdWNoIHp1IGFjaHRlbi4gSWNoIHdlaXNzIG5pY2h0CndpZXMgaW0gbWcgaXN0LCBhYmVyIGhpZXIgd2VyZGVuIG1pdCBzaWNoZXJoZWl0IG1laHIgYWxzIHp3ZWkgc2hlcmlmZnMKZ2VicmF1Y2h0LgoKQi4KCihBcnRpa2VsLUVuZGUpCgpUamEsIGRhIGJsZWlidCBtaXIgbnVyIG5vY2ggZWlucyB6dSBzYWdlbjogTXVhZGliLCBkdQoyNC1TdHVuZGVuLW11ZHN1ZWNodGlnZXIta29udHJvbGxiZXNlc3NlbmVyCgpGcmVhayBoYXN0IGR1IHNjaG9uIG5lbiBndXRlbiBUaGVyYXBldXRlbiBmdWVyIGRlaW4gUHJvZWJsZW0gZ2VmdW5kZW4/CgoqZ3JpbnMqCgpTbyBsb25nIGV1cmUgQ2hhb3Rlbi1OZXNpCgpQLlM6IERpZXNlciBBcnRpa2VsIHd1cmRlIGluIEFic3ByYWNoZSBtaXQgTXVhZGliIHZlcm9lZmZlbnRsaWNodCEKCiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBcnRpa2VsIChCYW1iaSwgMzEuIE1hciAyMDAzLCAxOToxNjo0Nik6Cn4jISBybj1OZXNhamEgcnQ9MTA0OTEzMDkxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDkxMzA5MTIKV2FzIHd1bmRlcnN0IER1IERpY2g/CiIuLi4gb2VzdGVycmVpY2hpc2NoZW4gTXVkLi4uIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGUuYWx0Lm5ldGRpZ2VzdCBhZ2Fpbi4uLiAoUm9uZGEsIDMxLiBNYXIgMjAwMywgMjE6NDA6NTkpOgpGcm9tOiBTYWJpbmUgJ1NhbmknIFNjaHVseiA8c2FiaW5lQHNhbmZsb3JpbWFsLmRlPgpOZXdzZ3JvdXBzOiBkZS50YWxrLmxpZWJlc2FrdApTdWJqZWN0OiBXaWUgd2lyZCBtYW4gTWFlbm5lcnZlcnN0ZWhlcmluPyAgOi0pCkRhdGU6IDMwIE1hciAyMDAzIDE2OjMxOjA3ICswMjAwCk9yZ2FuaXphdGlvbjogU2FuZmxvcmltYWwKCldpciBiZWtvbW1lbiBpbW1lciAiZGllIFJlZ2VsbiIgdm9uIEV1Y2ggRnJhdWVuIHVtIGRpZSBPaHJlbgpnZWhhdWVuLiBIaWVyIHNpbmQgZGllIFJlZ2VsbiB2b24gdW5zIE1hZW5uZXJuLiBEaWVzIHNpbmQgdW5zZXJlIFJlZ2VsbiEKQml0dGUgYmVhY2h0ZSwgZGFzcyBhbGxlIG1pdCAiMSIgbnVtbWVyaWVydCBzaW5kLgpBQlNJQ0hUTElDSCEKCjEuIEZyYWcsIHdlbm4gRHUgd2FzIHdpbGxzdC4gTGFzcyB1bnMgZWluZXMga2xhciBzdGVsbGVuOiBBbnNwaWVsdW5nZW4KZnVua3Rpb25pZXJlbiBuaWNodCEgQW5kZXV0dW5nZW4ga2xhcHBlbiBuaWNodCEgSGlud2Vpc2UgcmVpY2hlbiBuaWNodCEKU2FnIGVpbmZhY2gsIHdhcyBEdSB3aWxsc3QhCgoxLiBHZWJ1cnRzLSwgVmFsZW50aW5zLSB1bmQgSmFocmVzdGFnZSBzaW5kIGtlaW5lIEF1ZmdhYmVuLiBEYXMgc2luZApuaWNodCBkaWUgVGFnZSBhbiBkZW5lbiB3aXIgYmV3ZWlzZW4gbXVlc3NlbiwgZGFzcyB3aXIgc2Nob24gd2llZGVyIGRhcwpwZXJmZWt0ZSBHZXNjaGVuayBnZWZ1bmRlbiBoYWJlbi4KCjEuIE1hbmNobWFsIGRlbmtlbiB3aXIgbmljaHQgYW4gRXVjaC4gQWt6ZXB0aWVyIGRhcyEKCjEuIFdvY2hlbmVuZGUgPSBTcG9ydC4gRGFzIGlzdCB3aWUgVm9sbG1vbmQgb2RlciBkZXIgV2VjaHNlbCBkZXIKR2V6ZWl0ZW4uIER1IGthbm5zdCBkYXMgZWluZmFjaCBuaWNodCBhZW5kZXJuLgoKMS4gTGFzcyBEaXIgbmljaHQgRGVpbmUgSGFhcmUgc2NobmVpZGVuLiBOaWVtYWxzISBMYW5nZXMgSGFhciBpc3QgaW1tZXIKYXR0cmFrdGl2ZXIgYWxzIGt1cnplcy4gRWluIEdydW5kLCB3YXJ1bSBNYWVubmVyIG5pY2h0IGhlaXJhdGVuIHdvbGxlbgppc3QsIGRhc3MgdmVyaGVpcmF0ZXRlIEZyYXVlbiBpbW1lciBpaHIgSGFhciBzY2huZWlkZW4gbGFzc2VuLiBVbmQgZGFubgprb21tZW4gd2lyIGF1cyBkZXIgRWhlIG5pY2h0IG1laHIgcmF1cy4KCjEuIEVpbmthdWZlbiBpc3QgS0VJTiBTcG9ydCAhIE5laW4sIGRhcyB3aXJkIGF1Y2ggbmllbWFscyBzbyBzZWluIQoKMS4gV2VpbmVuIGlzdCBFcnByZXNzdW5nLgoKMS4gTGVybmUgZW5kbGljaCBtaXQgZGVtIEtsb3NpdHogenVyZWNodCB6dSBrb21tZW4uIER1IGJpc3QgZWluIGdyb3NzZXMKTWFlZGNoZW4uIFdlbm4gZGVyIFNpdHogb2JlbiBpc3QsIGtsYXBwIGlobiBydW50ZXIuIFdpciBicmF1Y2hlbiBpaG4Kb2JlbiwgSWhyIGJyYXVjaHQgaWhuIHVudGVuLiBXaXIgYmVzY2h3ZXJlbiB1bnMgYXVjaCBuaWNodCwgd2VubiBkZXIKU2l0eiB1bnRlbiBpc3QuCgoxLiBXaXIga29lbm5lbiB1bnMga2VpbmUgRGF0ZW4gbWVya2VuLiBNYXJraWVyIEdlYnVydHN0YWdlIHVuZCBKYWhyZXN0YWdlCmF1ZiBlaW5lbSBLYWxlbmRlciB1bmQgZXJpbm5lcmUgdW5zIGhhZXVmaWcgZGFyYW4sIEJFVk9SIGVzIHp1IHNwYWV0IGlzdC4KCjEuICJKYSIgdW5kICJOZWluIiBzaW5kIGFic29sdXQgYW5uZWhtYmFyZSBBbnR3b3J0ZW4gYXVmIGZhc3QgYWxsZQpGcmFnZW4uCgoxLiBEdSBrYW5uc3QgbWl0IHVucyBqZWRlcyBQcm9ibGVtIGJlc3ByZWNoZW4sIGRhcyBEdSBsb2VzZW4gd2lsbHN0LiBEYXMKa29lbm5lbiB3aXIuIFdlbm4gRHUgU3ltcGF0aGllYmVrdW5kdW5nZW4gYnJhdWNoc3QsIGdlaCB6dSBEZWluZW4KRnJldW5kaW5uZW4uCgoxLiBEaWUgS29wZnNjaG1lcnplbiwgZGllIER1IHNlaXQgMTcgTW9uYXRlbiBoYXN0LCBzaW5kIGVpbiBQcm9ibGVtLiBHZWgKenVtIEFyenQuCgoxLiBBbGxlcywgd2FzIHdpciB2b3IgNiBNb25hdGVuIGdlc2FndCBoYWJlbiwga2FubnN0IER1IG5pY2h0IG1laHIgYWxzCkFyZ3VtZW50IGhlcmFuemllaGVuLiBBbGxlIHVuc2VyZSBLb21tZW50YXJlIHZlcmxpZXJlbiBqZWdsaWNoZQpHdWVsdGlna2VpdCBuYWNoIDcgVGFnZW4uCgoxLiBXZW5uIER1IGdsYXVic3QsIER1IHNlaXN0IGRpY2ssIGJpc3QgRHUgZXMgd2FocnNjaGVpbmxpY2ggYXVjaC4gRnJhZwp1bnMgbmljaHQgZGFuYWNoLiBXaXIgd2VyZGVuIERpciBkYXJhdWYga2VpbmUgQW50d29ydCBnZWJlbi4KCjEuIFdlbm4gd2lyIGV0d2FzIGdlc2FndCBoYWJlbiwgZGFzcyBtYW4gYXVmIHp3ZWkgQXJ0ZW4gaW50ZXJwcmV0aWVyZW4Ka2FubjsgZWluZSBBcnQgZGF2b24gbWFjaHQgRGljaCB0cmF1cmlnIG9kZXIgYm9lc2UsIGRhbm4gbWVpbnRlbiB3aXIgZGllCmFuZGVyZS4KCjEuIExhc3N0IHVucyBnYWZmZW4uIFdpciB3ZXJkZW4gc293aWVzbyBoaW5zY2hhdWVuLiBEYXMgbGllZ3QgaW4gdW5zZXJlbgpHZW5lbi4KCjEuIER1IGthbm5zdCB1bnMgZW50d2VkZXIgYml0dGVuIGV0d2FzIHp1IHR1biwgb2RlciB1bnMgc2FnZW4sIHdpZSBEdSBlcwpnZXJuZSBoYWJlbiBtb2VjaHRlc3QsIGFiZXIgYml0dGUgbmljaHQgYmVpZGVzLiBXZW5uIER1IHNjaG9uIHdlaXNzdCwgd2llCm1hbiBlcyBhbSBiZXN0ZW4gbWFjaHQsIGRhbm4gbWFjaCBlcyBkb2NoIHNlbGJzdC4KCjEuIFdlbm4gZXMgaXJnZW5kd2llIGdlaHQsIHNhZyBkYXMsIHdhcyBEdSB6dSBzYWdlbiBoYXN0IC4uLiBhYmVyIGJpdHRlCmluIGRlbiBXZXJiZXBhdXNlbi4KCjEuIENocmlzdG9waGVyIEtvbHVtYnVzIG11c3N0ZSBuaWNodCBuYWNoIGRlbSBXZWcgZnJhZ2VuLiBXaXIgYXVjaCBuaWNodC4KCjEuIFVuc2VyZSBCZXppZWh1bmcgd2lyZCBuaWUgbWVociBzbyBzZWluLCB3aWUgaW4gZGVuIGVyc3RlbiAyIE1vbmF0ZW4KbmFjaCB1bnNlcmVtIEtlbm5lbmxlcm5lbi4gRmluZGUgRGljaCBkYW1pdCBhYi4gVW5kIGJlc2Nod2VyZSBEaWNoIG5pY2h0CmltbWVyIGRhcnVlYmVyIGJlaSBEZWluZW4gRnJldW5kaW5uZW4uCgoxLiBNYWVubmVyIGtvZW5uZW4gTlVSIDE2IEZhcmJlbiBzZWhlbi4gRGFzIGlzdCB3aWUgYmVpIGRlbgpTdGFuZGFyZGVpbnN0ZWxsdW5nIHZvbiBXaW5kb3dzLiBQZmlyc2ljaCwgenVtIEJlaXNwaWVsLCBpc3QgZWluZSBGcnVjaHQKdW5kIGtlaW5lIEZhcmJlLiBXb2hlciBzb2xsZW4gd2lyIHdpc3Nlbiwgd2FzICJtYWx2ZSIgaXN0LgoKMS4gV2VubiBldHdhcyBqdWNrdCwgd2lyZCBnZWtyYXR6dC4gV2lyIHR1biBkYXMgZWluZmFjaCBzby4KCjEuIFdpciBzaW5kIGtlaW5lIEdlZGFua2VubGVzZXIgdW5kIHdlcmRlbiBlcyBhdWNoIG5pZSB3ZXJkZW4uIFVuc2VyZQpVbmZhZWhpZ2tlaXQsIEdlZGFua2VuIHp1IGxlc2VuLCBpc3Qga2VpbiBBbnplaWNoZW4gZGFmdWVyLCBkYXNzIER1IHVucwpuaWNodHMgYmVkZXV0ZXN0LgoKMS4gV2VubiB3aXIgRGljaCBmcmFnZW4sIHdhcyBsb3MgaXN0LCB1bmQgRHUgYW50d29ydGVzdDogIk5pY2h0cyIsIGRhbm4Kd2VyZGVuIHdpciB1bnMgc28gdmVyaGFsdGVuLCBhbHMgd2VubiBuaWNodHMgbG9zIHNlaS4gV2lyIHdpc3NlbiwgZGFzcyBEdQpsdWVnc3QsIGFiZXIgZXMgaXN0IGRlbiBnYW56ZW4gQWVyZ2VyIGVpbmZhY2ggbmljaHQgV2VydC4KCjEuIFdlbm4gRHUgZWluZSBGcmFnZSBzdGVsbHN0LCBhdWYgZGllIER1IGtlaW5lIEFudHdvcnQgYnJhdWNoc3QsIGRhbm4KZXJ3YXJ0ZSBlaW5lIEFudHdvcnQsIGRpZSBEdSBuaWNodCBob2VyZW4gd2lsbHN0LgoKMS4gV2VubiB3aXIgaXJnZW5kd28gaGluZ2VoZW4sIGlzdCBhbGxlcywgd2FzIER1IHRyYWdlbiB3aWxsc3QsCnNjaG9lbi4gR2FueiBlaHJsaWNoIQoKMS4gRnJhZyB1bnMgbmljaHQsIHdhcyB3aXIgZGVua2VuLiBBdXNzZXIgd2VubiBEdSB1ZWJlcgpCYXVjaG5hYmVscGllcmNpbmdzLCBBYnNlaXRzIG9kZXIgZGllIFZpZXJlci1BYndlaHJrZXR0ZSBkaXNrdXRpZXJlbgptb2VjaHRlc3QuCgoxLiBEdSBoYXN0IGdlbnVlZ2VuZCBLbGVpZGVyLgoKMS4gRHUgaGFzdCB6dSB2aWVsZSBTY2h1aGUuCgoxLiBHYW56IGVocmxpY2gsIER1IGhhc3Qgd2lya2xpY2ggenUgdmllbGUgU2NodWhlLgoKMS4gRXMgaXN0IHdlZGVyIGluIERlaW5lbSBub2NoIGluIHVuc2VyZW0gSW50ZXJlc3NlLCB3ZW5uIHdpciB6dXNhbW1lbgpUZXN0cyBsb2VzZW4uIEVnYWwsIHdlbGNoZSBUZXN0cy4KCjEuIEJpZXIgaXN0IGZ1ZXIgdW5zIHNvIHNwYW5uZW5kLCB3aWUgZnVlciBFdWNoIEhhbmR0YXNjaGVuLgoKMS4gSWNoIGJpbiBpbiBGb3JtLiBSdW5kIGlzIGF1Y2ggZWluZSAuLi4KCjEuIERhbmtlLCBkYXNzIER1IGRpZXMgaGllciBnZWxlc2VuIGhhc3QuIEljaCB3ZWlzcywgaWNoIHdlaXNzLCBpY2ggd2VyZGUKaGV1dGUgbmFjaHQgYXVmIGRlbSBTb2ZhIHNjaGxhZmVuLiBBYmVyIGhhc3QgRHUgZ2V3dXNzdCwgZGFzcyB3aXIgZGFzCnNvZ2FyIG1vZWdlbj8gRGFzIGlzdCBmYXN0IHNvIHdpZSBaZWx0ZW4uCgpfX19fX19fX19fXwoKRGEgc3RlY2t0IGRvY2ggdmllbCBXYWhyaGVpdCBkcmlubmVuLCBtZWluIEZyZXVuZCBtdWVzc3RlIG5pY2h0IGF1ZiBkZW0KU29mYSBzY2hsYWZlbiA6LSkuCgpHcnVlc3NlClNhYmluZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGRlLmFsdC5uZXRkaWdlc3QgYWdhaW4uLi4gKEdyaW1tYm9ybiwgMzEuIE1hciAyMDAzLCAyMjo0MjoxMSk6Cn4jISBybj1Sb25kYSBydD0xMDQ5MTM5NjU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0OTEzOTY1OQpOYWphLCBlaW4gemllbWxpY2ggcHJpbWl0aXZlciBBYmtsYXRzY2ggZGVzIGVpbnppZyB3YWhyZW4gTWFlbm5lcm1hbmlmZXN0ZXM6CgpEYXMgTUFFTk5FUk1BTklGRVNUICAKIApGcmF1LCBGcmFldWxlaW4sIEZyZXVuZGluLCBWZXJsb2J0ZSwgV2VpYiwgQW5nZXRyYXV0ZSB1bmQgYWxsZSAKYW5kZXJlbiBGcmF1ZW4sIAogCjEuIFdlbm4gRHUgZGVua3N0LCBEdSB3YWVyc3QgZmV0dCwgaXN0IGRhcyB3YWhyc2NoZWlubGljaCBhdWNoIAogICBkZXIgRmFsbCEgRnJhZycgbWljaCBuaWNodCwgaWNoIHZlcndlaWdlcmUgZGllIEF1c3NhZ2UuIAogCjIuIFdlbm4gRHUgZXR3YXMgd2lsbHN0LCByZWljaHQgZXMgdm9lbGxpZywgZWluZmFjaCBkYW5hY2ggenUgCiAgIGZyYWdlbi4gVW0gZWluZXMga2xhcnp1c3RlbGxlbjogV2lyIHNpbmQgc2ltcGVsLiBXaXIgdmVyc3RlaGVuIAogICBrZWluZSBzdWJ0aWxlbiBpbmRpcmVrdGVuIEZyYWdlbi4gSW5kaXJla3RlIEZyYWdlbiBmdW5rdGlvbmllcmVuIAogICBuaWNodCwgZGllIGF1ZiBkZXIgSGFuZCBsaWVnZW5kZW4gaW5kaXJla3RlbiBGcmFnZW4gYXVjaCBuaWNodC4gCiAgIFNhZ2UgZWluZmFjaCB3aWUgZXMgaXN0LiAKIAozLiBXZW5uIER1IGVpbmUgRnJhZ2Ugc3RlbGxzdCwgYXVmIGRpZSBEdSBrZWluZSBBbnR3b3J0IGVyd2FydGVzdCwgCiAgIHd1bmRlcmUgRGljaCBuaWNodCwgZGFzcyBlaW5lIEFudHdvcnQga29tbXQsIGRpZSBEdSBuaWNodCBob2VyZW4gCiAgIHdvbGx0ZXN0LiAKIAo0LiBXaXIgc2luZCBTSU1QRUwuIAogICBXZW5uIGljaCBEaWNoIGJpdHRlLCBtaXIgZGFzIEJyb3QgYW56dXJlaWNoZW4sIG1laW5lIGljaCBuaWNodHMgCiAgIGFuZGVyZXMgYWxzIGRhcy4gRXMgaXN0IGtlaW4gVm9yd3VyZiwgZGFzcyBlcyBuaWNodCBhdWYgZGVtIAogICBUaXNjaCBzdGVodC4gRXMgZ2lidCB3ZWRlciB2ZXJzdGVja3RlIEFuZGV1dHVuZ2VuIG5vY2ggVm9yd3VlcmZlLiAKICAgV2lyIHNpbmQgd2lya2xpY2ggc2ltcGVsLiAKIAo1LiBXaXIgc2luZCBTSU1QRUwuIAogICBFcyBtYWNodCBrZWluZW4gU2lubiBtaWNoIHp1IGZyYWdlbiBhbiB3YXMgaWNoIGRlbmtlISA5Niw1JSBkZXIgCiAgIFplaXQgZGVua2VuIE1hZW5uZXIgYW4gU2V4LiBOZWluLCB3aXIgc2luZCBuaWNodCBiZXNlc3NlbiwgZXMgaXN0IAogICBlaW5mYWNoIGRhcywgd2FzIHVucyBhbSBtZWlzdGVuIGdlZmFlbGx0LiAKIAo2LiBXaXIgc2luZCBTSU1QRUwuIAogICBNYW5jaG1hbCBkZW5rZSBpY2ggbmljaHQgYW4gRGljaC4gRGFzIGlzdCBuaWNodCBzY2hsaW1tLiBHZXdvZWhuIAogICBEaWNoIGJpdHRlIGRhcmFuLiBGcmFnZSBtaWNoIGJpdHRlIG5pY2h0LCB3b3JhbiBpY2ggZGVua2UsIGVzIAogICBzZWkgZGVubiBEdSBiaXN0IGJlcmVpdCwgdWViZXIgUG9saXRpaywgV2lydHNjaGFmdCwgUGhpbG9zb3BoaWUsIAogICBGdXNzYmFsbCwgU2F1ZmVuLCBUaXR0ZW4sIEhpbnRlcm4gb2RlciBBdXRvcyB6dSByZWRlbi4gCiAKNy4gRnJlaXRhZy9TYW1zdGFnL1Nvbm50YWcgPSB2aWVsIGZyZXNzZW4gPSBGcmV1bmRlID0gRnVzc2JhbGwgCiAgIHZvcm0gRmVybnNlaGVyID0gQmllciA9IHNjaGxlY2h0ZSBNYW5pZXJlbi4gRXMgaXN0IHdpZSBWb2xsbW9uZCAKICAgb2RlciBFYmJlIHVuZCBGbHV0Li4ub2RlciBldXJlIE1vbmF0c2JsdXR1bmcuIEVzIGlzdCB1bnZlcm1laWRsaWNoISAKIAo4LiBFaW5rYXVmZW4gbWFjaHQga2VpbmVuIFNwYXNzLCB1bmQgaWNoLCBpY2ggd2VyZGUgbmllIEdlZmFsbGVuIAogICBkYXJhbiBmaW5kZW4sIGF1c3NlciBlcyBpc3QgbWVpbmUgRW50c2NoZWlkdW5nISAKIAo5LiBXZW5uIHdpciBpcmdlbmR3byBoaW5nZWhlbiwgd2VsY2hlIEtsYW1vdHRlbiBEdSBhdWNoIHRyYWVnc3QsIAogICBlcyBzdGVodCBEaXIgc3VwZXIuIEljaCBzY2h3b2VyJ3MuIAogCjEwLiBEdSBoYXN0IGdlbnVnIEtsZWlkZXIgdW5kIGdlbnVnIFNjaHVoZS4gSGV1bGVuIGlzdCBFcnByZXNzdW5nLiAgCiAgICBNaWNoIHNlbGJzdCBwbGVpdGUgenUgbWFjaGVuIGlzdCBrZWluIExpZWJlc2Jld2VpcyBhbiBEaWNoLiAKIAoxMS4gRGllIG1laXN0ZW4gTWFlbm5lciBoYWJlbiAzIFBhYXIgU2NodWhlLiBJY2ggd2llZGVyaG9sZTogV2lyIAogICAgc2luZCBTSU1QRUwuIFdpZSBrb21tc3QgRHUgYXVmIGRpZSBJZGVlIGljaCBrb2VubnRlIG51ciBlaW5lbiAKICAgIEhhdWNoIHZvbiBBaG51bmcgaGFiZW4gd2VsY2hlcyB2b24gRGVpbmVuIDMwIFBhYXIgU2NodWhlbiBhbSAKICAgIGJlc3RlbiBkYXp1IHBhc3N0PyAKIAoxMi4gRWluZmFjaGUgQW50d29ydGVuIHdpZSBKYSBvZGVyIE5laW4gc2luZCB2b2VsbGlnIGF1c3JlaWNoZW5kLCAKICAgIGVnYWwgd2llIGRpZSBGcmFnZSBsYXV0ZXQhIAogCjEzLiBXZW5uIER1IGVpbiBQcm9ibGVtIGhhc3QsIGJpdHRlIG1pY2ggbnVyIGRhcnVtIERpciB6dSBoZWxmZW4sIAogICAgZGFzIFByb2JsZW0genUgbG9lc2VuLiBCaXR0ZSBtaWNoIG5pY2h0LCBEaWNoIHp1IGJlbWl0bGVpZGVuLCAKICAgIHdpZSBlcyBEZWluZSBGcmV1bmRpbm5lbiB0dW4uIAogCjE0LiBLb3Bmc2NobWVyemVuIGRpZSA4IFdvY2hlbiBkYXVlcm4gc2luZCBrZWluZSBLb3Bmc2NobWVyemVuISAKICAgIEdlaCB6dW0gQXJ6dCEgCiAKMTUuIFdlbm4gaWNoIGV0d2FzIHNhZ2UsIGRhcyBhdWYgendlaSBBcnRlbiBpbnRlcnByZXRpZXJ0IHdlcmRlbiAKICAgIGthbm4gdW5kIGVpbnMgdm9uIGJlaWRlbiBiZXVucnVoaWd0IERpY2ggb2RlciBtYWNodCBEaWNoIAogICAgdW5nbHVlY2tsaWNoLCBtZWluZSBpY2ggZGFzIGFuZGVyZSEgCiAKMTYuIEFMTEUgTWFlbm5lciBzZWhlbiBudXIgMTYgRmFyYmVuLiBQZmlyc2ljaCBpc3QgZWluZSBGcnVjaHQgCiAgICB1bmQga2VpbmUgRmFyYmUhIAogCjE3LiBVbmQgd2FzIGZ1ZXIgZWluZSBGYXJiZSBpc3QgdWViZXJoYXVwdCBBcHJpa28odCksIHVuZCB3aWUgenVyIAogICAgSG9lbGxlIHNjaHJlaWJ0IG1hbiBkYXM/IAogCjE4LiBCaWVyIGdlZmFlbGx0IHVucywgd2llIGV1Y2ggSGFuZHRhc2NoZW4gZ2VmYWxsZW4uIElociB2ZXJzdGVodHMgCiAgICBuaWNodCwgd2lyIGF1Y2ggbmljaHQuICAKIAoxOS4gV2VubiBpY2ggRGljaCBmcmFnZSwgd2FzIGxvcyBpc3QgdW5kIER1IHNhZ3N0ICJuaWNodHMiLCB3ZXJkZSAKICAgIGljaCBEaXIgZ2xhdWJlbiB1bmQgc28gdHVuLCBhbHMgb2IgYWxsZXMgaW4gYmVzdGVyIE9yZG51bmcgc2VpISAKIAoyMC4gRnJhZyBuaWNodDogIk1hZ3N0IER1IG1pY2g/Ii4gU2VpIERpciBzaWNoZXIsIGRhc3MgaWNoIG5pY2h0IAogICAgYmVpIERpciB3YWVyZSwgd2FlcmUgZGFzIG5pY2h0IGRlciBGYWxsISAKIAoyMS4gRGllIEJhc2lzcmVnZWwsIGltIEZhbGxlIGRlcyBnZXJpbmdzdGVuIFp3ZWlmZWxzLCBlZ2FsIHdvcnVtIAogICAgZXMgZ2VodDogTmltbSBkYXMgZWluZmFjaHN0ZSEgCiAKV0lSIFNJTkQgV0lSS0xJQ0ggU0lNUEVMISEhISAKIApCSVRURSBESUVTRVMgTUFOSUZFU1QgVU5URVIgU08gVklFTCBGUkFVRU4gV0lFIE1PRUdMSUNIIFZFUkJSRUlURU4sIApBVUYgREFTUyBTSUUgRU5ETElDSCBESUUgTUFFTk5FUiBWRVJTVEVIRU4gTU9FR0VOLCBGVUVSIEVJTiBVTkQgCkFMTEVNQUwuIEJJVFRFIEFVQ0ggVU5URVIgTU9FR0xJQ0hTVCBWSUVMRU4gTUFFTk5FUk4gVkVSQlJFSVRFTiwgCkRBTUlUIFNJRSBXSVNTRU4sIERBU1MgU0lFIElOIElIUkVNIEtBTVBGIE5JQ0hUIEFMTEVJTkUgU0lORC4gCgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTT01NRVJQQVJUWSAyMDAzIChHcmltbWJvcm4sICAxLiBBcHIgMjAwMywgMDk6Mjk6MDUpOgp+IyEgcm49WmFybml5YSBydD0xMDQ5MTgxOTk3IHJnPXBhcnR5Cn4jISB0aWQ9MTA0ODg0NDY4NApLbGFyIGdpYnRzIGRhbm4ga2VpbmVuIFN0cmVpdCwgYmVpIGRlciBNdXNpayBrYW5uIG1hbiBzaWNoIGphIG5pY2h0IG1laHIKZ2VnZW5zZWl0aWcgdmVyc3RlaGVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTT01NRVJQQVJUWSAyMDAzIChab29rLCAgMS4gQXByIDIwMDMsIDEwOjA2OjM5KToKfiMhIG9uPVpvb2sgb3Q9MTA0OTE4NDM5MSBvZz1wYXJ0eQp+IyEgcm49WmFybml5YSBydD0xMDQ5MTgxOTk3IHJnPXBhcnR5Cn4jISB0aWQ9MTA0ODg0NDY4NApBaCwgZGFubiBtYWwgbmUgUGFydHksIGF1ZiBkZXIgTHVnIG1hbCB3aWVkZXIgYXVmdGF1Y2h0PyA7KQoKWm9vayBlcmlubmVydCBzaWNoIGFuIGVpbmUgbHVzdGlnZSBCYWhuZmFocnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlZ2lvbiBTY2hhdHRlbndlbHQgKEFudGhlYSwgIDEuIEFwciAyMDAzLCAxMDozNjowNik6Cn4jISBybj1DYWRyYWNoIHJ0PTEwNDkxODYxMTQgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDQ5MTg1OTA3CkVyIG11c3MgamEgYXVjaCBuaXggcHJvZ2dlbiwgbnVyIHNlaW5lIFNrbGF2ZW4gZ2VudWVnZW5kIHp1ZWNodGlnZW4sIGRhc3Mgc2llCmRhcyBtYWNoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWxsa29tbWVuIGluIGRlbiBJbnNlbG4hIChNYW5kcmFnb24sICAxLiBBcHIgMjAwMywgMTY6MTE6NDApOgp+IyEgb249TWFuZHJhZ29uIG90PTEwNDkyMDYyNjQgb2c9ZC5nZWJpcmdlCn4jISBvbj1Cb2luZyBvdD0xMDQ5MjA2MTE0IG9nPXNjaG1hcnJuCn4jISBvbj1NYW5kcmFnb24gb3Q9MTA0OTIwNjA4MiBvZz1kLmdlYmlyZ2UKCk5hY2ggbGFuZ2VyIERpc2t1c3Npb24gd3VyZGUgZmVzdGdlc3RlbGx0LCBkYXNzIGRhcyBHZWJpcmdlIGluIGRlciBUYXQgbmljaHRzCmFuZGVyZXMgaXN0LCBhbHMgZGllIFdlc3QtSW5zZWxuLCBkZW5lbiBkYXMgV2Fzc2VyIGFiaGFuZGVuIGdla29tbWVuIGlzdC4KSW4gQWJzcHJhY2hlIG1pdCBkZW4gb2VydGxpY2hlbiBXYXNzZXJsaWVmZXJhbnRlbiB3aXJkIGRhcyBHZWJpcmdlIHVlYmVyLQptb3JnZW4gZ2VmbHV0ZXQgdW5kIGluIGRpZSBJbnNlbG4gaW50ZWdyaWVydC4KClVlYmVyZmx1dGV0ZSBTZWhlcmhhZXVzZXIga29lbm5lbiBnZWdlbiBnZXJpbmdlIEdlYnVlaHIgKHNvIHVtIGRpZSA1MDBrKQppbiBTZWhlcmhhdXNib290ZSB1bWdld2FuZGVsdCB3ZXJkZW4uIEFudHJhZWdlIGJpdHRlIGFuIEJhbWJpIGFscwpIaWxmc3JlZ2lvbnNtYWdpZXIgSW5zZWxuIChXZXN0KS4KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2NobmF1emUgdm9sbCAhPyAoQmFtYmksICAxLiBBcHIgMjAwMywgMTc6MDU6NTkpOgp+IyEgb249QmFtYmkgb3Q9MTA0OTIwOTU1MSBvZz1kLmdlYmlyZ2UKfiMhIHJuPURlZXBibHVlIHJ0PTEwNDkyMDk1MTUgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTA0OTE4NDgyOApPaCwgd2lyIGhhYmVuIHNjaG9uIEFwcmlsPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU2NobmF1emUgdm9sbCAhPyAoRGVlcGJsdWUsICAxLiBBcHIgMjAwMywgMTc6MDY6NDUpOgp+IyEgcm49QmFtYmkgcnQ9MTA0OTIwOTU1MSByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDQ5MTg0ODI4CkdlbmF1LCBkaWUgSmFnZHNhaXNvbiBpc3QgZXJvZWZmbmV0CkRlZXAqLCBtaXQgSHVuZ2VyIGF1ZiByZWhicmF0ZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthdHplbiBoYWx0IC4uLiAoTWlyYWthLCAgMS4gQXByIDIwMDMsIDIyOjI1OjA2KToKTWhpcmFsdW5hIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgaWhyZW0gSm9pbnQgZWluZ2VodWVsbHQuCk1oaXJhbHVuYSBwbG9wcHQgZWluIEZsZXBpIGF1Zi4KTWhpcmFsdW5hIHRyaW5rdCBlaW4gRmxlcGkuCgpVZXNjaCBidWVuIGVudHNhZXR6dCwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFsc28gbm9jaCBlaW5tYWwuLi4uIChHcmltbWJvcm4sICAyLiBBcHIgMjAwMywgMDA6NTQ6MTApOgp+IyEgb249U2Nob2tvIG90PTEwNDkyMzc2MjAgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ5MjM3NDU0IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTA0OTIzNjg5NwpTb3JyeSBkZXIga3JhbmtlIEZyZWFrIGlzdCBzY2hvbiB2ZXJnZWJlbiwgZGEga2FubnN0IER1IG5pY2h0IG1pdGhhbHRlbiA6KQoKClNjaG9rbyAoc2NoaWVicyBuYWNoIHNjaG1hcnJuIG9kZXIgc28pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBbHNvIG5vY2ggZWlubWFsLi4uLiAoR3JpbW1ib3JuLCAgMi4gQXByIDIwMDMsIDAwOjU5OjA1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ5MjM3NjUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0OTIzNjg5NwpNaWZ0LCB1bmQgaWNoIHN0cmVuZ2UgbWljaCBkb2NoIHNjaG9uIHNvIGFuLiBBYmVyIHVtIGRpZXNlIFplaXQgYmluIGljaCBhdWNoCm5pY2h0IG1laHIgaW4gRm9ybS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBPZmZpemllbGxlIEJlc2Nod2VyZGUgKEdyaW1tYm9ybiwgIDIuIEFwciAyMDAzLCAwMjozMTozMCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTA0OTI0MzM0OCBvZz1ldGlrZXR0ZQp+IyEgcm49QW5hdG9sIHJ0PTEwNDkyNDMyNDggcmc9ZXRpa2V0dGUKfiMhIHRpZD0xMDQ5MjM4Mjc3CldpZXNvPyBXaWxsc3QgRHUgZGVtIG1hbCBkZW1vbnN0cmllcmVuIGRhc3MgInRvZXRlIHNwaWVsZXIiIGF1Y2ggbmljaHQKJ3RlY2huaXNjaCB1bnRlcmJ1bmRlbicgaXN0PwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbmRsaWNoIChCYW1iaSwgIDIuIEFwciAyMDAzLCAwNzozNDoyMCk6Cn4jISBvbj1TaWx5YW5hIG90PTEwNDkxNzk3ODcgb2c9ZC5nZWJpcmdlClRhcmFtaXMgaXN0IGpldHp0IHp1Z2FlbmdpZy4KTmFjaCBDcmFzaC9SZWJvb3Qgd2lyZCBtYW4gZG9ydCBhdWNoIGRyZWkgbmV1ZSBRdWVzdHMgZmluZGVuLgpWaWVsIFNwYXNzIQpCVFc6IFR5cG9zLCBCdWdzIGV0Yy4gYml0dGUgYW4gZGllIHJlZ2lvbnNtYWdpZXIsIGRhIGljaCBrZWluZSBaZWl0IGhhYmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2NobmF1emUgdm9sbCAhPyAoQmFtYmksICAyLiBBcHIgMjAwMywgMDc6MzQ6MzYpOgp+IyEgb249QmFtYmkgb3Q9MTA0OTIwMzAxMyBvZz1kLmdlYmlyZ2UKfiMhIHJuPU1vcmdvdGggcnQ9MTA0OTE4NDgyOCByZz1kLnZsYW5kCn4jISB0aWQ9MTA0OTE4NDgyOApBdXMgU29saWRhcml0YWV0IHd1cmRlbiBNb3Jnb3RocyBTYWNoZW4gaW0gR2ViaXJnZSBhdWNoIGFiZ2VoYWVuZ3QuCkRhZnVlciBoYWJlbiB3aXIgamV0enQgYWJlciBUYXJhbWlzLgpBdXNzZXJkZW0gd2VyZGVuIFZlcmhhbmRsdW5nZW4gbWl0IEdyaW1tYm9ybiBnZWZ1ZWhydCwgZGllIEhvY2hlYmVuZSB6dXIKUEstWm9uZSB1bXp1Z2VzdGFsdGVuLgpJbiBkZXIgU2NocmVja2Vuc3NwaXR6ZSB3dXJkZW4gZGllIFZvcnNjaGxhZWdlLCBaYXViZXIgbnVyIGluIEtSIHp3ZWkgY2FzdGVuCnp1IGtvZW5uZW4sIGZ1ZXIgQmV0YXRlc3RzIGltcGxlbWVudGllcnQuIEJlaSBCdWdzIGJpdHRlIGJlaSBCb2luZyBvZGVyIG1pcgptZWxkZW4uCkRpZSBOZXVhdWZsYWdlIGRlciBNUEEgaXN0IGltIFN0YXJ0cmF1bSBkZXIgWndlcmdlIHp1IGZpbmRlbi4gQml0dGUgdGVzdGVuLgpTZWhlcmhhZXVzZXIsIGRpZSBpbSBHZWJpcmdlIGxpZWdlbiwgaGFiZW4gamV0enQgYXV0b2xvYWQtU2NocmFlbmtlLgoKQWNoIGphLiBCZXZvciBpY2hzIHZlcmdlc3NlOiBJbiBUYXJhbWlzIGxpZWdlbiBBbnRyYWdzZm9ybXVsYXJlIHp1bQpTdXBlcnNlaGVyc3RhdHVzIGF1cy4KCk1mRywgQmFtYmkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNjaG5hdXplIHZvbGwgIT8gKEdyaW1tYm9ybiwgIDIuIEFwciAyMDAzLCAwODowNzo0MSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTA0OTIwNTkwMyBvZz1kLmdlYmlyZ2UKfiMhIHJuPUJhbWJpIHJ0PTEwNDkyMDMwMTMgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTA0OTE4NDgyOAo+IEF1c3NlcmRlbSB3ZXJkZW4gVmVyaGFuZGx1bmdlbiBtaXQgR3JpbW1ib3JuIGdlZnVlaHJ0LCBkaWUgSG9jaGViZW5lIHp1cgo+IFBLLVpvbmUgdW16dWdlc3RhbHRlbi4KCk51ciB1bSBVbmtsYXJoZWl0ZW4genUgYmVzZWl0aWdlbjogSWNoIGJpbiBkYWZ1ZXIsIG1pdCBkZXIgT3B0aW9uIHN1a3plc3NpdgpkYXMgZ2FuemUgTUcgYWxzIEhvY2hlYmVuZSB6dSBkZWtsYXJpZXJlbi4gRXMgZ2lidCB2b24gYW5kZXJlciBTZWl0ZSBub2NoIGVpbgpwYWFyIEJlZGVua2VuLCBhYmVyIGljaCBiaW4genV2ZXJzaWNodGxpY2guCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE9mZml6aWVsbGUgQmVzY2h3ZXJkZSAoSmFkYXdpbiwgIDIuIEFwciAyMDAzLCAxMjo0MTozOSk6Cn4jISBybj1TYXJrb24gcnQ9MTA0OTI4MDAyOSByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9MTA0OTIzODI3NwpEYW5uIHdhZXJzIHZpZWwgd2VuaWdlciBsdXN0aWcuCkphZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE9mZml6aWVsbGUgQmVzY2h3ZXJkZSAoVmFuaW9uLCAgMi4gQXByIDIwMDMsIDEyOjQ0OjM4KToKfiMhIG9uPVZhbmlvbiBvdD0xMDQ5MjgwMjcwIG9nPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHJuPVNhcmtvbiBydD0xMDQ5Mjc5OTQ5IHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD0xMDQ5MjM4Mjc3ClN0aW1tdCwgd2VpbGwgYWxsZSBBcnRpa2VsKCopIGdlbG9lc2NodCB3dWVyZGVuLCB1bmQgd2lyIFJ1aGUgaGFldHRlbi4KClYqCigqKSBBdXNzZXIgTWVnYXNjaG1hcnJuIG5hdHVlcmxpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogT2ZmaXppZWxsZSBCZXNjaHdlcmRlIChKZW5hbmRyYSwgIDIuIEFwciAyMDAzLCAxMzoyNzoxNSk6Cn4jISBybj1GbGF1cm9zIHJ0PTEwNDkyODI3NDYgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTEwNDkyMzgyNzcKTXVlbGxlciwgTWFpZXIgLi4uIGhhZXR0ZXQgaWhyIGV1Y2ggbmljaHQgZ2xhdWJ3dWVyZGlnZXJlIE5hbWVuCmF1c2RlbmtlbiBrb2VubmVuPyA6LSkKCi0gSmVuYW5kcmEgLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE9mZml6aWVsbGUgQmVzY2h3ZXJkZSAoSHVtbmksICAyLiBBcHIgMjAwMywgMTM6Mjg6MDkpOgp+IyEgcm49SmVuYW5kcmEgcnQ9MTA0OTI4MjgzNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDkyMzgyNzcKSGUsIGljaCBrZW5uIGpldHp0IHNjaG9uIGRlbiBkcml0dGVuIFRob21hcyBTY2htaWR0LiBTb2xjaGUgTmFtZW4gc2luZApkdXJjaGF1cyBnbGF1Ynd1ZXJkaWcuCgpIdW1uaQpQUzogU29sbHRlIGhpZXIgYXVjaCBlaW5lciBzZWluIC0ga2VpbmVyIGRlciBkcmVpIGRpZSBpY2gga2VubmUgaXN0IE11ZGRlciwKZGFzIGlzdCBkYW5uIFJhaW5lciBadWZhbGwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogT2ZmaXppZWxsZSBCZXNjaHdlcmRlIChGbGF1cm9zLCAgMi4gQXByIDIwMDMsIDEzOjI4OjE4KToKfiMhIHJuPUplbmFuZHJhIHJ0PTEwNDkyODI4MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5MjM4Mjc3Ck5hIGd1dCwgaWNoIGdlYnMgenUuCkljaCBoYWJlIGdlbG9nZW4gLi4uCgpNYW4gc2NocmVpYnQgbWljaCBkb2NoIG1pdCBheS4gQWxzbyBNYXllcgoKSmEsIHVuZCBpY2ggc2NoYWVtZSBtaWNoIGZ1ZXIgZGllc2UgTHVlZ2UhCgoKRmxhdXJvcyB2ZXJzdGVja3Qgc2ljaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE9mZml6aWVsbGUgQmVzY2h3ZXJkZSAoSGlzYXN1bCwgIDIuIEFwciAyMDAzLCAxMzoyODoyNyk6Cn4jISBybj1KZW5hbmRyYSBydD0xMDQ5MjgyODM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0OTIzODI3NwpBY2h3YXMsIEZsYXVyb3MnIHJsLU5hbWVuIHd1ZXJkIGljaCBoaWVyIGF1Y2ggbmljaCBhdXN6dXNwcmVjaGVuIHdhZ2VuIDopCgpIaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBPZmZpemllbGxlIEJlc2Nod2VyZGUgKEZsYXVyb3MsICAyLiBBcHIgMjAwMywgMTM6Mjk6MzMpOgp+IyEgcm49SGlzYXN1bCBydD0xMDQ5MjgyOTA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0OTIzODI3NwpNZWluZW4gUkwtTmFtZW4gZ2xhdWJ0IG1pciBoaWVyIHdvaGwgZWgga2VpbmVyLgpadW1pbmRlc3QgbWVpbmVuIE5hY2huYW1lbiBuaWNodC4gKmcqCgpGbGF1c2NoaSAtIGhhdCBzY2hvbiBvZnQgZ2Vob2VydDogVG9sbGVyIFNwaXR6bmFtZSwgaG9laG9lIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IE9mZml6aWVsbGUgQmVzY2h3ZXJkZSAoSGlzYXN1bCwgIDIuIEFwciAyMDAzLCAxMzozMDozMSk6Cn4jISBybj1GbGF1cm9zIHJ0PTEwNDkyODI5NzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5MjM4Mjc3ClNhZyBpY2ggZG9jaCA6KSAgQWJlciBpc3QgamEgbnVyIGVpbiBOYW1lIEZsYXVzY2hpIDspIEJpbGQgRGlyIG5pY2h0cyBkcmF1ZgplaW4uLi4KCkhpcyB6d2lua2VybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBPZmZpemllbGxlIEJlc2Nod2VyZGUgKEZsYXVyb3MsICAyLiBBcHIgMjAwMywgMTM6MzA6NTgpOgp+IyEgcm49SGlzYXN1bCBydD0xMDQ5MjgzMDMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0OTIzODI3NwpOYW1lbiBzaW5kIHp3YXIgU2NoYWxsIHVuZCBSYXVjaCwga29lbm5lbiBhYmVyIGF1Y2ggUHJvZ3JhbW0gc2Vpbi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBPZmZpemllbGxlIEJlc2Nod2VyZGUgKEhpc2FzdWwsICAyLiBBcHIgMjAwMywgMTM6MzE6MjcpOgp+IyEgcm49RmxhdXJvcyBydD0xMDQ5MjgzMDU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0OTIzODI3NwpCZXdlaXNlISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogT2ZmaXppZWxsZSBCZXNjaHdlcmRlIChGbGF1cm9zLCAgMi4gQXByIDIwMDMsIDEzOjMyOjE1KToKfiMhIHJuPUZsYXVyb3MgcnQ9MTA0OTI4MzA1OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDkyMzgyNzcKSGEsIGhpZXIgd2FyIGVzIGRvY2ggZXJsYXVidCwgYXVmIHNlaW5lbiBlaWdlbmVuIEFydGlrZWwgenUgc2NocmVpYmVuLgpBbGxlIGRpZSBqZXR6dCByYXRlbiB1bmQgc2ljaCBmcmFnZW4sIHdpZSBpY2ggd29obCBoZWlzc2VuIG1hZzogSGFuZCBob2NoIQoKRmxhdXNjaGkgbWFnIFN0YXRpc3Rpa2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE9mZml6aWVsbGUgQmVzY2h3ZXJkZSAoT2xsaSwgIDIuIEFwciAyMDAzLCAxMzo1OTozNCk6Cn4jISBybj1KZW5hbmRyYSBydD0xMDQ5MjgyODM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0OTIzODI3NwpXYXMgaXN0IGFuIGRpZXNlbiBOYW1lbiBiaXR0ZSBhdXN6dXNldHplbj8/CgpPbGxpIGdyaW5zdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmVnaW9uIFNjaGF0dGVud2VsdCAoR3JpbW1ib3JuLCAgMi4gQXByIDIwMDMsIDE5OjA2OjE2KToKfiMhIHJuPVpvb2sgcnQ9MTA0OTMwMzEwMCByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA0OTE4NTkwNwpCZW1lcmtlbnN3ZXJ0LCB6dW1hbCBpY2ggdm9uIGVpbmVtIEtvbnplcHQgbmljaHRzIHdlaXNzLCBpY2ggYmluIHZvZWxsaWcKZCdhY2NvcmQgbWl0IGRlbSBiZXN0ZWhlbmRlbiwgc2NocmlmdGxpY2ggZml4aWVydGVuIEtvbnplcHQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IE9mZml6aWVsbGUgQmVzY2h3ZXJkZSAoRWxpemFiZXRoLCAgMi4gQXByIDIwMDMsIDE5OjI4OjQ3KToKfiMhIHJuPUZsYXVyb3MgcnQ9MTA0OTI4Mjk3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDkyMzgyNzcKT2ggamEhIDspCipncmlzKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRWluZmFjaCwgYWJlciBsdXN0aWcuLi4gKFNjaG9rbywgIDIuIEFwciAyMDAzLCAyMzo1MToyMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0OTMyMDEyMiByZz1wdWl6Cn4jISB0aWQ9MTA0OTMwNzQzMQpob3Jpem9udGFsIG9kZXIgdmVydGlrYWw/IDopCgpVbmQgZ2VodCBkYXMgbWl0IDMgZ2VyYWRlbiBTY2huaXR0ZW4sIGRpZSBzaWNoIG5pY2h0IGlubmVyaGFsYiBkZXMgTGV2ZWwKc2NobmVpZGVuPyA6KQoKU2Nob2tvIChGcmFnZW4gdWViZXIgRnJhZ2VuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRW5kbGljaDogRWluZSBOZXdzZ3JvdXAgZnVlciBOaWNodHMuLi4gKFJvbmRhLCAgMy4gQXByIDIwMDMsIDAwOjM3OjU4KToKLi4uIGljaCBmcmFnIG1pY2ggamEgbnVyLCB3YXJ1bSBkZXIgVHlwIHVuc2VyZW4gTmljaHRzIGhpZXIga2VubnQuLi4KClJvbmRhCgpGcm9tOiBBbmRyZWFzIFJpZWRlbCA8YW5kcmVhcy5yaWVkZWxAaHJ6LnR1LWNoZW1uaXR6LmRlPgpTdWJqZWN0OiAxLiBSZkQgenVyIEVpbnJpY2h0dW5nIGRlciBHcnVwcGUgZGUuZXRjLm5pY2h0cwpOZXdzZ3JvdXBzOiBkZS5hZG1pbi5uZXdzLmdyb3VwcwpEYXRlOlR1ZSwgMDEgQXByIDIwMDMgMTY6NDk6MjkgKzAyMDAKTWVzc2FnZS1JRDogPFJmRDEtRWlucmljaHR1bmctZGUuZXRjLm5pY2h0cy0yMDAzLTA0LTAxQGRhbmEuZGU+CgogICAgIDEuIFJmRCAoUmVxdWVzdCBmb3IgRGlzY3Vzc2lvbikgenVyIEVpbnJpY2h0dW5nIGRlciBHcnVwcGUKICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgoKZGUuZXRjLm5pY2h0cyAgICAgLgoKU3RhdHVzOgotLS0tLS0tCgpEaWUgR3J1cHBlIGlzdCB1bm1vZGVyaWVydC4KCgpDaGFydGE6Ci0tLS0tLS0KCkRpZXNlIEdydXBwZSBkaWVudCBkZW0gRXJmYWhydW5nc2F1c3RhdXNjaCB1bmQgZGVyIERpc2t1c3Npb24gdWViZXIKbmljaHRzLgoKTmljaHRzIGRhcmYgbWFuIG5pY2h0IG1pdCBOaWNodGlna2VpdGVuIHZlcndlY2hzZWxuIC0gRGlza3Vzc2lvbmVuCmRhcnVlYmVyIG9kZXIgdWViZXIgYW5kZXJlIFRoZW1lbiBzb2xsdGVuIGluIHBhc3NlbmRlcmVuIEdydXBwZW4gZ2VmdWVocnQKd2VyZGVuLgoKCgpIaW50ZXJncnVuZDoKPT09PT09PT09PT09CgoxLiBUaGVtYXRpc2NoZSBWb2xsc3RhZW5kaWdrZWl0IHZvbiBkZToKICAgRGUgZXJoZWJ0IGRlbiBBbnNwcnVjaCwgdGhlbWF0aXNjaCB2b2xsc3RhZW5kaWcgenUgc2VpbiwgYWJlciBlcwogICBnaWJ0IGRlcnplaXQga2VpbmUgR3J1cHBlLCBpbiBkZXIgbmljaHRzIG9uIHRvcGljIGlzdC4KCjIuIEJlZGFyZjoKICAgRXMgZ2lidCBpbiBkZSBrZWluZSBEaXNrdXNzaW9uZW4gdWViZXIgbmljaHRzLgoKICAgQW5kZXJlcnNlaXRzIGJlc3RlaHQgb2ZmZW5iYXIgZWluIHNlaXQgU2VwdGVtYmVyIDE5OTMgc3RhZW5kaWcKICAgd2FjaHNlbmRlciBCZWRhcmYsIG9mZiB0b3BpYyB6dSBwb3N0ZW4uIERhIGRlcnplaXQgYWxsZSBHcnVwcGVuIGluCiAgIGRlIGVpbiBUaGVtYSBoYWJlbiwgc3RvZXJlbiBkaWVzZSBQb3N0aW5ncyBiZWkgZGVyCiAgICJiZXN0aW1tdW5nc2dlbWFlc3NlbiIgTnV0enVuZyBkZXIgR3J1cHBlbi4gRGllIGJldHJvZmZlbmVuIFVzZXIKICAgcmVhZ2llcmVuIHRlaWx3ZWlzZSBtaXQgdWVibGVuIEJlc2NoaW1wZnVuZ2VuLCBhbmRlcmUgemllaGVuIHNpY2gKICAgbWVociBvZGVyIG1pbmRlciB2b2xsc3RhZW5kaWcgYXVzIGRlbSBVc2VuZXQgenVydWVjay4KCiAgIERhIGVzIGluIGRlLmV0Yy5uaWNodHMga2VpbiBUaGVtYSB1bmQgZGFtaXQgYXVjaCBrZWluZQogICBOdXR6ZXIgaW0gaGVya29lbW1saWNoZW4gU2lubiBnZWJlbiB3aXJkLCBrYW5uIG1hbiBkb3J0IG9mZiB0b3BpYwogICBwb3N0ZW4sIG9obmUgaXJnZW5kamVtYW5kZW4genUgc3RvZXJlbi4gRm9sZ2xpY2ggd2VyZGVuIGFsbGUgdm9uIGRlcgogICBFaW5yaWNodHVuZyBkZXIgR3J1cHBlIHByb2ZpdGllcmVuOiBEaWUgImtsYXNzaWNoZW4gTnV0emVyIgogICBrb2VubmVuIHNpY2ggaW4gUnVoZSBpaHJlbiBUaGVtZW4gd2lkbWVuLCB3YWVocmVuZCBkZXIgUmVzdCBuYWNoCiAgIGRlLmV0Yy5uaWNodHMgcG9zdGVuIGthbm4sIG9obmUgc3RhZW5kaWcgYW5nZWZlaW5kZXQgenUgd2VyZGVuLgoKClByb3BvbmVudDoKPT09PT09PT09PQoKQW5kcmVhcyBSaWVkZWwgPGFuZHJlYXMucmllZGVsQGhyei50dS1jaGVtbml0ei5kZT4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbHRlcm4gc2luZCBTT09PTyBnZW1laW4hIChSb25kYSwgIDMuIEFwciAyMDAzLCAwMDo0MDoyMSk6Ck1pc3QsIGljaCBoYWIgYXVjaCBiYWxkIEdlYnVydHN0YWcgLSB1bmQgbWVpbiBWYXRlciBsaWVzdCBncmFkIG51ciBub2NoCkNvbXB1dGVyIEJpbGQgdW5kIG1laW5lIE11dHRlciBoYXQgc2ljaCB2b24gVC1PbmxpbmUgbmVuIEludGVybmV0enVnYW5nCmFuZHJlaGVuIGxhc3Nlbiwgd2VpbCBpaHIgZWluZXIgSW50ZXJuZXQtYnktQ2FsbC1BbmJpZXRlciBuaW1tZXIgaXN0IDstKAoKUm9uZGEKCkZyb206IEFjaGltIEdyb2xtcyA8YWNoaW1AZ3JvbG1zbmV0LmRlPgpOZXdzZ3JvdXBzOiBkZS5hbHQuc3lzYWRtaW4ucmVjb3ZlcnkKU3ViamVjdDogQnJ1Y2UgU2NobmVpZXIgIk5pY2h0cyBhbHMgZGllIFdhaHJoZWl0IgpEYXRlOiBXZWQsIDIgQXByIDIwMDMgMDE6NTA6NDIgKzAyMDAKTWVzc2FnZS1JRDogPGI2ZDhraSQzMmkkMDMkMUBuZXdzLnQtb25saW5lLmNvbT4KCgpOZXVsaWNoIHJ1ZnQgTWFtYSBhbi4gIkp1bmdlLCB3YXMgd3VlbnNjaHQgRHUgRGlyIHp1bQpHZWJ1cnRzdGFnPyIuICJFaW4gQnVjaCEiIChEZW5uIGVpbiBlaWdlbmVzIEV4ZW1wbGFyCnZvbiBCcnVjZSBTY2huZWllcnMgIkFwcGxpZWQgQ3J5cHRvZ3JhcGh5IiwgZGFzIHdhZXJlIGZlaW4hKQoiQWJlciBKdW5nZSwgRHUgaGFzdCBkb2NoIHNjaG9uIHNvIHZpZWxlIEJ1ZWNoZXIhIgoiVW5kPyBEaWVzZXMgaGFldHRlIGljaCBnZXJuZSEiCgpEZXIgR2VidXJ0c3RhZyBuYWh0LCBGYW1pbGllIEdyb2xtcyBlcnNjaGVpbnQgenVyIEZlaWVybGljaGtlaXQsCm1hbiB1ZWJlcmdpYnQgbWlyIGVpbiBQYWVja2NoZW4gaW0gQnVjaGZvcm1hdCBtaXQgZGVuIFdvcnRlbgoiRGllc2VzIENvbXB1dGVyYnVjaCBkYSBoYWJlbiB3aXIgbmljaHQgZGFiZWksIHN0YXR0ZGVzc2VuCmhhYmVuIHdpciBEaXIgd2FzIGFuZGVyZXMgYmVzb3JndCEiCkljaCBndWNrZSBldHdhcyBzcGFyc2FtIHVuZCBvZWZmbmUgZGFzIFBha2V0LgpWb20gQnVjaGRlY2tlbCBncmluc3QgbWlyIERpZXRlciBCb2hsZW4gZW50Z2VnZW4sIGRydW50ZXIKZGVyIEJ1Y2h0aXRlbCAiTmljaHRzIGFscyBkaWUgV2FocmhlaXQiLiBUb2xsLCBqZXR6dCBndWNrZQppY2ggZXJzdCByZWNodCBkb29mIGF1cyBkZXIgV2FzY2hlLCB3YXMgc2FnZSBpY2ggZGVubgpqZXR6dCBkaXBsb21hdGlzY2hlcz8gVW0gWmVpdCB6dSBzY2hpbmRlbiBibGFldHRlcmUgaWNoCmV0d2FzIGltIEJ1Y2gsIGRyaW5uZW4gZ2VodCBlcyB1bSAnQ3J5cHRvZ3JhcGh5Jz8KSmV0enQgZ3Vja2UgaWNoIG5vY2ggYmxvZWRlciwgZGllIGFsdGVuIEhlcnJzY2hhZnRlbiBoYWJlbgp0YXRzYWVjaGxpY2ggZWluIEJpbGQgdm9uIEJvaGxlbnMgVW1zY2hsYWcgCmF1cyBkZW0gSW50ZXJuZXQgZ2V6b2dlbiwgaW4gcGFzc2VuZGVyCkdyb2Vzc2UgYXVzZ2VkcnVja3QgdW5kIGZlaW5zYWV1YmVybGljaCBkZW4gU2NobmVpZXIgZHJpbgplaW5nZXNjaGxhZ2VuLCBhbGxlcyBudXIsIHVtIG1laW4gZGFlbWxpY2hlcyBHZXNpY2h0IHp1IHNlaGVuLgoKSmV0enQgYmluIGljaCBzdG9semVyIEJlc2l0emVyIGVpbmVzIFNjaG5laWVycyBtaXQgZWluZW0KZ3JpbnNlbmRlbiBEaWV0ZXIgQm9obGVuIHZvcm5lZHJhdWYhCgpTY2hvZW5lIEdydWVzc2UsCkFjaGltCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWx0ZXJuIHNpbmQgU09PT08gZ2VtZWluISAoQW5hdG9sLCAgMy4gQXByIDIwMDMsIDAwOjQxOjI3KToKfiMhIHJuPVJvbmRhIHJ0PTEwNDkzMjMyMjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5MzIzMjIxCkthbm4gbWVpbmUgU2Nod2VzdGVyIGF1Y2guIFNjaGVua3RlIG1pciBlaW5lbiBnZXd1ZW5zY2h0ZW4gU291bmR0cmFjawppbiBlaW5lciBBT0wtNTAtU3R1bmRlbi1HcmF0aXMtSHVlbGxlLiBBUkdIISA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNoYW9zIFJ1bGV6ISAoV2hpdGV0aWdlciwgIDMuIEFwciAyMDAzLCAxODoxMzo1MSk6CktydWZ0dXIga29tbXQgYW4uCktydWZ0dXJzIEF1Z2VuIHZlcmZpbnN0ZXJuIHNpY2ggdW5kIGZpeGllcmVuIGVpbmVuIEZ1c3NyaW5nLgpLcnVmdHVyIHRlaWx0IERpciBtaXQ6CiAgSWNoIGhhYmUgZm9sZ2VuZGUgSW5mb3JtYXRpb24gdWViZXIgZWluZW4gRnVzc3JpbmcgZXJoYWx0ZW46CiAgRGFzIFdldHRlciBpc3QgbWFsIHdpZWRlciB0b3RhbCBtaWVzLgoKCi0tIFdoaXRlVGlnZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBbHNvIG5vY2ggZWlubWFsLi4uLiAoVHJ1ZywgIDMuIEFwciAyMDAzLCAyMDo0OTowMik6Cn4jISBybj1UcnVnIHJ0PTEwNDkzOTU3MTQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDQ5MjM2ODk3CkFjaCBqYS4gRGFubiB3YWVyIGphIHdlciBhcmJlaXRzbG9zLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBbHNvIG5vY2ggZWlubWFsLi4uLiAoR3JpbW1ib3JuLCAgMy4gQXByIDIwMDMsIDIwOjUyOjQ0KToKfiMhIHJuPVRydWcgcnQ9MTA0OTM5NTc0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDkyMzY4OTcKTGFzcyBtYWwgbWVpbmUgd29ya2xvYWQgbWVpbmUgU29yZ2Ugc2VpbiwgSnVuZ2NoZW4uIFdlbm4gRHUgYSkgZWluZW4gV2VnCmZpbmRlc3Qgd2llIGRpZSBtcGEgdGVjaG5pc2NoIGRpZSBnYW56ZW4gRGVwcGVuIGRyYW4gaGluZGVydCBkaWUgZmFsc2NoZW4KUnVicmlrZW4gdm9sbHp1bXVlbGxlbiB1bmQgYikgU3Bhc3MgZHJhbiBoYXN0IGluIGRlbiBNUEEgY29kZSB6dSB0YXVjaGVuIC0KYmlzdCBEdSBoZXJ6bGljaCB3aWxsa29tbWVuLiBCZSBteSBndWVzdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQWxzbyBub2NoIGVpbm1hbC4uLi4gKFRydWcsICAzLiBBcHIgMjAwMywgMjA6NTM6MzgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDkzOTU5NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5MjM2ODk3CkhhZW5nZSBlaW5lIEtJIGRyYW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQWxzbyBub2NoIGVpbm1hbC4uLi4gKEJpZWxlZmVsZCwgIDMuIEFwciAyMDAzLCAyMDo1NDoyNCk6Cn4jISBybj1UcnVnIHJ0PTEwNDkzOTYwMTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5MjM2ODk3CkR1IG1laW5zdCBHcmltbWJvcm4gaXN0IGtlaW5lIEtJPwoKLUJpZWxlZmVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQWxzbyBub2NoIGVpbm1hbC4uLi4gKEdyaW1tYm9ybiwgIDMuIEFwciAyMDAzLCAyMDo1NDozMCk6Cn4jISBybj1UcnVnIHJ0PTEwNDkzOTYwMTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5MjM2ODk3ClNpZWhzdGUsIGRhcyBpc3QgRGVpbmUgTG9lc3VuZy4gSWNoIGhpbmdlZ2VuIGJpbiBpbSBCZXNpdHogZWluZXIgTkksIHVuZCB6aWVoZQplcyB2b3IgZGllc2UgZWluenVzZXR6ZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFsc28gbm9jaCBlaW5tYWwuLi4uIChUcnVnLCAgMy4gQXByIDIwMDMsIDIwOjU0OjQwKToKfiMhIHJuPUJpZWxlZmVsZCBydD0xMDQ5Mzk2MDY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0OTIzNjg5NwpIYXQgZXIgc2Nob24gZGVuIFR1cmluZ3Rlc3QgYmVzdGFuZGVuPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQWxzbyBub2NoIGVpbm1hbC4uLi4gKFNjaG9rbywgIDMuIEFwciAyMDAzLCAyMDo1NjowMSk6Cn4jISBybj1UcnVnIHJ0PTEwNDkzOTYwODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5MjM2ODk3Ck5JID09IE5vbi1JbnRlbGxpZ2VuY2U/IDopCgpTY2hva28gKGtvbm50IHNpY2hzIG5ldCB2ZXJrbmVpZmVuKQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBbHNvIG5vY2ggZWlubWFsLi4uLiAoR3JpbW1ib3JuLCAgMy4gQXByIDIwMDMsIDIwOjU3OjM3KToKfiMhIHJuPVNjaG9rbyBydD0xMDQ5Mzk2MTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0OTIzNjg5NwpIbW0sIHVtIGltIFp1c2FtbWVuaGFuZyB2b24gS0kgKCJrdWVuc3RsaWNoZSBJbnRlbGxpZ2VueiIpIGJlaSBOSSBhdWYKIk5vbi1JbnRlbGxpZ2VuY2UiIHp1IGtvbW1lbiBtdXNzIG1hbiBzY2hvbiBpcmdlbmR3aWUgemllbWxpY2guLi4gZGFlbWxpY2gKc2Vpbiwgbm9uPyBJY2ggbWVpbmUsIGF1c3NlciBkYXNzIG1hbiBkaWUgU3ByYWNoZW4gZHVyY2hlaW5hbmRlcmJyaW5ndC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEFsc28gbm9jaCBlaW5tYWwuLi4uIChTY2hva28sICAzLiBBcHIgMjAwMywgMjA6NTk6MTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDkzOTYyNTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5MjM2ODk3Ck9oaGhoLCBkZXIgd2FyIGhhcnQgOikgVW5kIGRhcyBpbiBkaWVzZXIgUnVicmlrLiBJY2ggd2VyZGUgbmllIHdpZWRlciBlaW5lbgpBcnRpa2VsIHNjaHJlaWJlbiAuLi4gd28gaXMgbWVpbmUgTWFtbWEgLi4uIGlociBzZWlkIGphIHNvb28gZ2VtZWluIDopCgpTY2hva28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBBbHNvIG5vY2ggZWlubWFsLi4uLiAoR3JpbW1ib3JuLCAgMy4gQXByIDIwMDMsIDIxOjAxOjA3KToKfiMhIHJuPVNjaG9rbyBydD0xMDQ5Mzk2MzUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0OTIzNjg5Nwo6c2Nobml0enQgZWluZSBLZXJiZSBpbiBzZWluZSBNUEEuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBBbHNvIG5vY2ggZWlubWFsLi4uLiAoRWxiZXJldCwgIDMuIEFwciAyMDAzLCAyMTowOTo1MCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA0OTM5NjQ2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDkyMzY4OTcKd2lldmllbGUgS2VyYmVuIGhhc3QgZWlnZW50bGljaCB2b24gbWlyPwoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEFsc28gbm9jaCBlaW5tYWwuLi4uIChHcmltbWJvcm4sICAzLiBBcHIgMjAwMywgMjE6MTM6NTkpOgp+IyEgcm49RWxiZXJldCBydD0xMDQ5Mzk2OTkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0OTIzNjg5NwpTY2h3ZXIgenUgc2FnZW4sIGVocmxpY2ggZ2VzYWd0LiBEYXMgUHJvYmxlbSBpc3QsIGRhc3MgZGllIG1wYSBudXIgZW5kbGljaApncm9zcyBpc3QuIERhcyBmdWVocnQgZGF6dSBkYXNzIHNpY2ggZGllIEtlcmJlbiB1ZWJlcmxhcHBlbiB1bmQgZGFtaXQgc2Nod2VyCm5hY2h6dXZvbGx6aWVoZW4gc2luZC4gSW1tZXJoaW4gaXN0IHNpZSBzdGFiaWwgZ2VudWcsIGRhc3Mgc2llIChub2NoKSBuaWNodAphdXNlaW5hbmRlcmZhZWxsdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEFsc28gbm9jaCBlaW5tYWwuLi4uIChFbGJlcmV0LCAgMy4gQXByIDIwMDMsIDIxOjE3OjAyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDQ5Mzk3MjM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0OTIzNjg5NwpuYSBzbyBsYW5nZSBlcyBudXIgZW5kbGljaCB2aWVsZSB2b24gbWlyIHNpbmQgLi4uIDspCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogQWxzbyBub2NoIGVpbm1hbC4uLi4gKEdyaW1tYm9ybiwgIDMuIEFwciAyMDAzLCAyMToyMTo1MCk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwNDkzOTc0MjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5MjM2ODk3CkRpZSBGcmFnZSBpc3Q6IEFiemFlaGxiYXIgZW5kbGljaCB2aWVsZSBvZGVyIHVlYmVyYWJ6YWVobGJhciBlbmRsaWNoIHZpZWxlPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogQWxzbyBub2NoIGVpbm1hbC4uLi4gKEVsYmVyZXQsICAzLiBBcHIgMjAwMywgMjE6MjM6MzIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDkzOTc3MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5MjM2ODk3CmFsc28gZGFzIGZpbmQgaWNoIGRhbm4gbmNpaHQgbWVociBzbyB3aWNodGlnIDspCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYWVtcGZlci4uLi4gKEhpc2FzdWwsICA0LiBBcHIgMjAwMywgMDA6MDU6NTkpOgpUYWtoaXNpcyBnaWJ0IEZsYXVyb3MgZWluZW4gdGllZmVuIHVuZCBoaW5nZWJ1bmdzdm9sbGVuIEt1c3MuCkZsYXVyb3MgbWFjaHQgZWluZW4gU2FsdG8gcnVlY2t3YWVydHMgdW5kIGVudGdlaHQgc28gZGVtIEFuZ3JpZmYgdm9sbHN0YWVuZGlnLgoKClRzdHN0cy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthZW1wZmVyLi4uLiAoRmxhdXJvcywgIDQuIEFwciAyMDAzLCAwMDowODowMCk6Cn4jISBybj1IaXNhc3VsIHJ0PTEwNDk0MDc1NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5NDA3NTU5Ck5hIHVuZCBkaWUgZHJpdHRlIFplaWxlIHdhcjoKRGVyIEt1c3MgZ2lidCBEaXIgbmV1ZSBLcmFmdC4KCkZsYXVzY2hpIHdpcmQgZ2VybmUgZ2VrdWVzc3QuIDspKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BpZWxlcnd1ZW5zY2hlLi4uLiAoWm9vaywgIDQuIEFwciAyMDAzLCAxMToyMDoyNCk6ClNvd2FzIGZpbmRldCBzaWNoIGluIG1laW5lbSBQb3N0ZmFjaDoKCi1zbmlwLQppY2ggd2lsbCBkYXMgZGllIGthZW1wZmVyIG51ciBub2NoIGtpdHplbG4ga29lbm5lbgppY2ggd2lsbCBkYXMgZGllIHphdWJlcmVyIG1laHIgamFtbWVybiAsIGhhZW5nIGFsbGUgaWhyZSBzcGVsbHMgYWIKaWNoIHdpbGwgZGFzIGRpZSBiaWVyY2h1ZXR0bGVyIG5hY2ggZWluZW0gYmllciB2b2xsdHJ1bmtlbiBzaW5kLCBkaWUgaGFsdGVuIGVoCm5pY2h0cyBhdXMKaWNoIHdpbGwgZGFzIGRpZSBrYXR6ZW5rcmllZ2VyIG5pY2h0IG1laHIgYXVzIGRlbSBkc2NodW5nZWwgcmF1c2ZpbmRlbgppY2ggd2lsbCBjaGFvcyBhbiBkaWUgbWFjaHQKLXNuaXAtCgpab29rIG1hY2h0IHNpY2ggbWFsIGFuIGRpZSBBcmJlaXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BpZWxlcnd1ZW5zY2hlLi4uLiAoR3JpbW1ib3JuLCAgNC4gQXByIDIwMDMsIDExOjI4OjU1KToKfiMhIHJuPVpvb2sgcnQ9MTA0OTQ0ODAyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDk0NDgwMjQKVW5kIER1IGZpbmRlc3QgZGFzIGluIE9yZG51bmcgaGllciBvZWZmZW50bGljaCBwcml2YXRlIG1haWxzIHp1IHppdGllcmVuPwoKR2RBIHNjaGF1dCBzaWNoIG5hY2ggZWluZW0gcGFzc2VuZGVuIFNoZXJpZmYgdW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBTdGF0aSBpbiBNdWVuc3RlciAoQW5hdG9sLCAgNC4gQXByIDIwMDMsIDEzOjAxOjE2KToKfiMhIG9uPUFuYXRvbCBvdD0xMDQ5NDU0MDYyIG9nPXRyZWZmZW4KfiMhIHJuPU1hbmRyYWdvbiBydD0xMDQ5NDU0MDMwIHJnPXRyZWZmZW4KfiMhIHRpZD0xMDQ4NjcxOTczCkNhdHRpZSBoYXQgdmVybXV0bGljaCBuZSBXYW1wZSwgZWluIGR1ZW1tbGljaGVzIEdlc2ljaHQgdW5kIG5peCB6dSBzYWdlbi4KU3ByaWNoOiBFciBoYXQgc2ljaCBuaWNodCB2ZXJhZW5kZXJ0Li4uLiAqZmx1ZWNodCogOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogU3RhdGkgaW4gTXVlbnN0ZXIgKENhdHdlYXpsZSwgIDQuIEFwciAyMDAzLCAxMzowMzozMSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA0OTQ1NDA3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNDg2NzE5NzMKSWNoYmlubmljaHR3YW1waWchCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBTdGF0aSBpbiBNdWVuc3RlciAoWm9vaywgIDQuIEFwciAyMDAzLCAxNDowMToyOCk6Cn4jISBvbj1ab29rIG90PTEwNDk0NTc2ODIgb2c9YmFsYW5jZS5zY2htYXJybgp+IyEgb249Wm9vayBvdD0xMDQ5NDU3NjcwIG9nPXRyZWZmZW4KfiMhIHJuPUdub21lIHJ0PTEwNDk0NTczODAgcmc9dHJlZmZlbgp+IyEgdGlkPTEwNDg2NzE5NzMKSWNoIGJla2VubmUsIHZvciBlaW5pZ2VuIFRhZ2VuIGF1ZiBFeHRyZW1zamFtbWVybiBlaW5lcyBaYXViaXMgZWluZSAKd2VpdGVyZSAqLnNjaG1hcnJuLVJ1YnJpayBlaW5nZXJpY2h0ZXQgenUgaGFiZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFN0YXRpIGluIE11ZW5zdGVyIChBc3VrYSwgIDQuIEFwciAyMDAzLCAxNDowMjozNSk6Cn4jISBybj1ab29rIHJ0PTEwNDk0NTc2ODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4NjcxOTczCkRhbm4gZ2liIGRpciBuZW4gUnVjayB1bmQgbWFjaCBhdWNoIG5vY2ggdHJlZmZlbi5zY2htYXJybiA6KQoKQXN1a2EKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBTdGF0aSBpbiBNdWVuc3RlciAoWm9vaywgIDQuIEFwciAyMDAzLCAxNDowMzowNSk6Cn4jISBybj1Bc3VrYSBydD0xMDQ5NDU3NzU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0ODY3MTk3MwpXYWFhYWFhYWFoISAKClpvb2sgaGFlbHQgc2ljaCBkaWUgT2hyZW4genUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogU3RhdGkgaW4gTXVlbnN0ZXIgKE1hbmRyYWdvbiwgIDQuIEFwciAyMDAzLCAxNDowNjozNCk6Cn4jISBybj1ab29rIHJ0PTEwNDk0NTc3ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ4NjcxOTczCkljaCB3aWxsIHNjaG1hcnJuLnNjaG1hcnJuIC4uLi4gCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ1NDQ4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNYW5kcmFnb24sICA0LiBBcHIgMjAwMywgMTU6MTM6NDkpOgp+IyEgb249QW5hdG9sIG90PTEwNDk0NjEzMTUgb2c9bWVnYXNjaG1hcnJuCn4jISBybj1NdWFkaWIgcnQ9MTA0OTQ2MTMwMSByZz1tZWdhc2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKdm9sbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJFRlJFU0hfQk9JTkcgKEFuYXRvbCwgIDQuIEFwciAyMDAzLCAxOToyODo0MSk6CltTZWhlciBMdmwgPjUwXSB0ZWlsdCBEaXIgbWl0OiBzYWcgbWFsIHdhcyBpc3QgZGVubiBCb2luZy1SZXNldD8KClNjaG9uIGxhbmdlIGtlaW5lciBtZWhyIGFuIGVpbmVtIGdlc3RvcmJlbiwgZHVlbmt0IG1pci4uLiA6KQoKQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJFRlJFU0hfQk9JTkcgKE11cGZlbCwgIDQuIEFwciAyMDAzLCAxOTo1NzozOSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA0OTQ3NzMyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDk0NzczMjEKRGVyIGhlaXN0IGRvY2ggamV0enQgWm9vay1SZXNldCA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUkVGUkVTSF9CT0lORyAoQW5hdG9sLCAgNC4gQXByIDIwMDMsIDIwOjA5OjE5KToKfiMhIHJuPU11cGZlbCBydD0xMDQ5NDc5MDU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0OTQ3NzMyMQpTY2h3YWNoZnVnLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGEgZmFlbGx0IG1pciBuaXggenUgZWluLi4uIChHcmltbWJvcm4sICA2LiBBcHIgMjAwMywgMDE6MjI6NDUpOgp+IyEgb249QWxwaGEgb3Q9MTA0OTU2NzcwMyBvZz13aXR6ZQp+IyEgcm49TW9udGFudXMgcnQ9MTA0OTQyMTIyMCByZz13aXR6ZQp+IyEgdGlkPTEwNDk0MTU1NzAKT2NoLCBpY2gga29ubnRlIGd1dCBsYWNoZW4gOkQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4ubnVyIGVpbmVuISA7KSAoUmFnbmFyb2VrLCAgNi4gQXByIDIwMDMsIDAxOjMxOjMyKToKSGlzQXN1bCBmbGllZ3QgaGVyZWluLgpEZW1vbmF6IG11c3RlcnQgZWluZW4gRnJvc2NoLgpFaW4gRnJvc2NoIHNjaHVldHRlbHQgZGVuIEtvcGYuCkhpc0FzdWwgZ2lidCBkZW4gUmV2b2x2ZXIgYW4gRGVtb25hei4KRGVtb25heiBrbnVkZGVsdCBIaXNBc3VsLgpIaXNBc3VsIGdyaW5zdC4KRHUgZ3JpbnN0LgpEZW1vbmF6IHNhZ3Q6IEljaCBkYXJmIG5jaWh0IGVtaHIsIHNhZ3QgTWFoYQpIaXNBc3VsIHNhZ3Q6IG51biBiaXN0IGR1IGRyYW4gOj4KSGlzQXN1bCB0cml0dCBlaW5lbiBGcm9zY2guCkRlbW9uYXogc2FndDogRGFyZiBpY2ggbm9jaCBlaW5lbiwgTWFoYT8KSGlzQXN1bCBzYWd0OiBtYWhhIGhhdCBuaXggenUgc2FnZW4KRGVtb25heiBzYWd0OiBOdXIgZWluZW4/CkR1IGtpY2hlcnN0LiAoV2llIGFsYmVybiB2b24gRGlyKQpFaW4gRnJvc2NoIHNhZ3Q6IE9rLCBzb2xhbmdlIGljaCBlbnRmcm9zY2hlbiBnZWhlIC4uLgpEZW1vbmF6IGRyZWh0IGRpZSBUcm9tbWVsIGVpbmVzIFJldm9sdmVycy4KRGVtb25heiByaWNodGV0IGVpbmVuIFJldm9sdmVyIGF1ZiBzaWNoLgpFciBoYWVsdCBkZW4gQXRlbSBhbiB1bmQgZHJ1ZWNrdCBkZW4gQWJ6dWcuCkRlbW9uYXogc2NoaWVzc3Qgc2ljaCBkYXMgSGlybiByYXVzIQpEZW1vbmF6IGZhZWxsdCB0b3QgenUgQm9kZW4uCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCltUb2Q6TGFyc10gUnVzc2lzY2ggUm91bGV0dGUgaGF0IGdlcmFkZSBEZW1vbmF6IHVtZ2VicmFjaHQuCltUb2Q6UnVzc2lzY2ggUm91bGV0dGVdIFdvaGwgZmFsc2NoIGdlZHJlaHQsIGhlaGUhIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSEFIISAoRGVtb25heiwgIDYuIEFwciAyMDAzLCAwMjo0NDoxNCk6CgpEdSBzaWVoc3QgRGluZ2UsIGRpZSBEaXIgdm9yaGVyIG5vY2ggbmllIGF1ZmdlZmFsbGVuIHNpbmQuCkhpc0FzdWwgdG9ya2VsdCB1bmQgZmFlbGx0IHZvbGwgYXVmIGRpZSBGcmVzc2UuCkZsYXVyb3Mgc2FndDogV2FhaAouLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhBSCEgKEhpc2FzdWwsICA2LiBBcHIgMjAwMywgMDI6NDc6MTMpOgp+IyEgcm49RGVtb25heiBydD0xMDQ5NTg5ODU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0OTU4OTg1NApEZW1vbmF6IGxhYmVydCBEaWNoIHZvbGwgLSBmYXN0IHNvIHNjaGxpbW0gd2llIEhpcHBlIG9kZXIgQW5keS4KRHUgdG9ya2Vsc3QgdW5kIGZhZWxsc3Qgdm9sbCBhdWYgZGllIEZyZXNzZS4KRGVtb25heiBzZXVmenQuCgphYmVyIGR1IC4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpncmF0dWxhdGlvbiAoTXVhZGliLCAgNy4gQXByIDIwMDMsIDAwOjM2OjI1KToKaGllcm1pdCBtb2VjaHRlIGljaCBzY2hva28gdW5kIGJyb3RuYWVsIGdyYXR1bGllcmVuCndvenUgPwpmcmFndCBzaWUgc2VsYnN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUkVGUkVTSF9CT0lORyAoWmFybml5YSwgIDcuIEFwciAyMDAzLCAwOToxNTo0Nyk6Cn4jISBybj1BbmF0b2wgcnQ9MTA0OTQ3NzMyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNDk0NzczMjEKClJ1YnJpayA0NTogc2NobWFycm4sIEFydGlrZWw6IDU2IHZvbiA2MwpSRUZSRVNIX0JPSU5HIChBbmF0b2wsICA0LiBBcHIgMjAwMywgMTk6Mjg6NDEpOgoKW1NlaGVyIEx2bCA+NTBdIHRlaWx0IERpciBtaXQ6IHNhZyBtYWwgd2FzIGlzdCBkZW5uIEJvaW5nLVJlc2V0PwoKU2Nob24gbGFuZ2Uga2VpbmVyIG1laHIgYW4gZWluZW0gZ2VzdG9yYmVuLCBkdWVua3QgbWlyLi4uIDopCgpBCkJvaW5nICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpEQVMgaXN0IGVpbiBCb2luZyBSZXNldCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUkVGUkVTSF9CT0lORyAoQ2FkcmFjaCwgIDcuIEFwciAyMDAzLCAxMDoyMjozMik6Cn4jISBybj1aYXJuaXlhIHJ0PTEwNDk2OTk3NDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5NDc3MzIxCk51biBkYXMgd2FlcmUgZGFubiBhYmVyIG1laHIgZWluIFJlc2V0ZW5kZXIgQm9pbmcsIGFscyBlaW4gQm9pbmdyZXNldC4KCkNhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBncmF0dWxhdGlvbiAoQnJvdG5hZWwsICA3LiBBcHIgMjAwMywgMTA6NDI6MjApOgp+IyEgcm49TXVhZGliIHJ0PTEwNDk2Njg1ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5NjY4NTg1Cm51ciB6dSBtZWluZXIgZW50c2NodWxkaWd1bmcsIHNjaG9rbyBoYXQgYW5nZWZhbmdlbiwgamFqYSEKQnJvdGksIHVuc2NodWxkaWcgdW5kIGxpZWIgd2llIGVoIHVuZCBqZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBncmF0dWxhdGlvbiAoTm9ubmUsICA3LiBBcHIgMjAwMywgMTA6NDQ6MjIpOgp+IyEgcm49QnJvdG5hZWwgcnQ9MTA0OTcwNDk0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDk2Njg1ODUKV2FubiBpc3QgZGVubiBkaWUgSG9jaHplaXQ/IEljaCB3dWVyZGUgYXVjaCBnZXJuIGtvbW1lbiAoYzsKCk5vbm5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZ3JhdHVsYXRpb24gKEJyb3RuYWVsLCAgNy4gQXByIDIwMDMsIDEwOjQ3OjE5KToKfiMhIHJuPU5vbm5lIHJ0PTEwNDk3MDUwNjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5NjY4NTg1CkljaCB3aWxsIHdlZGVyIGtvbW1lbiBub2NoIGVyc2NoZWluZW4gbm9jaCBoZWlyYXRlbi4gcHVua3QgMyBkYXJmIGljaCBuaWNodCwKcHVua3QgMiB3aWxsIGljaCBuaWNodCB1bmQgcHVua3QgMSBrYW5uLi4gYWNoLCBsYXNzZW4gd2lyIGRhcy4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBPZmZpemllbGxlIEJlc2Nod2VyZGUgKEdyaW1tYm9ybiwgIDcuIEFwciAyMDAzLCAxNToxODoxMyk6Cn4jISBybj1Ib3VzZWhvbGRlciBydD0xMDQ5NzIwNTgzIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDQ5MjM4Mjc3Cj4gSEgsIGtvbnNlcnZhdGl2IAoKRHUgaGFzdCBEaWNoIGJlaW0gV29ydCAia29uc3RydWt0aXYiIHZlcnRpcHB0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVXJsYXViISEhIChDcm9mdCwgIDcuIEFwciAyMDAzLCAxOTozMzo1Myk6Cn4jISBybj1IdW1uaSBydD0xMDQ5NzM2NjM3IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xMDQ5NzM2NjM3CldvenUgc29sbHRlIGRpZSBHaWxkZW5iYWxhbmNlIHNub29wZW4gdW5kIGFid2VydGVuPyBEYWZ1ZXIgaGFiZW4gd2lyIGRvY2gKdW5zZXJlbiAyNC83LUZyZWFrLCBkZXIgc2Nob24ga29tcGxldHQgYWxsZXMgaW0gQmxpY2sgaGF0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBLbm9wcGl4LUNEIGluIGRlciBjdCB3YXIgZWluIEZlaGxlci4uLiAoUm9uZGEsICA3LiBBcHIgMjAwMywgMjI6MjY6MDQpOgpLbGFyLCBhdXMgZGUuYWx0Lm5ldGRpZ2VzdC4uLgoKRnJvbTogTWljaGFlbCBCYW5jayA8bWJhbmNrQGdteC5uZXQ+Ck5ld3Nncm91cHM6IGRlLmNvbXAub3MudW5peC5saW51eC5taXNjClN1YmplY3Q6IFJlOiBLbm9wcGl4IGxvZXNjaGVuCgpPbiBGcmksIDE0IE1hciAyMDAzIDE3OjA1OjQwICswMTAwLCBXYWxkZW1hciBUcmVsbGEgd3JvdGU6Cj4gS2FubiBtaXQgamVtYW5kIHNhZ2VuIHdpZSBpY2ggS25vcHBpeCBsb2VzY2hlbiBrYW5uPyBIYWJlIGRpZSBGZXN0cGxhdHRlCj4gZm9ybWF0aWVyIHVuZCBLbm9wcGl4IGlzdCBub2NoIGltbWVyIGRhPwoKRHUgbXVzc3QgZGllIENEIGF1cyBkZW0gTGF1ZndlcmsgbmVobWVuIHZvciBkZW0gYm9vdGVuLgoKTWljaGFlbAoKLS0gCjxrbm9wcGVyPiBmYWxreTogSWNoIHdlaXNzIGVzIGVjaHQgbmljaHQuIEVpbmlnZSB2ZXJzdWNoZW4gYXVjaCwgZGFzCiAgICAgICAgS25vcHBpeC1JbWFnZSBpbiBXb3JkIHp1IGxhZGVuIHVuZCBzY2hyZWliZW4gZGFubgogICAgICAgICJMaW51eCBnZWh0IG5pY2h0Ii4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVXJsYXViISEhIChNdWFkaWIsICA3LiBBcHIgMjAwMywgMjI6NTQ6NTMpOgp+IyEgcm49Q3JvZnQgcnQ9MTA0OTczNjgzMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDk3MzY2MzcKYWNodGUgbGllYmVyIGF1ZiBkZWluIGVkaXRvcmZlbnN0ZXIgaW0gaGludGVyZ3J1bmQgYWxzIGhpZXIgenUga2x1Z3NjaGVpc3Nlcm4uCmRhcyB3YXMgZHUgZGEgenVzYW1tZW50aXBwc3Qgc2llaHQgbmljaHQgZ3V0IGF1cy4gdW5kIG1lbGQgZW5kbGljaCBkZWluZW4KaG9jaGZyZXF1ZW56dGFzY2hlbndhZXJtZXIgYmVpIGRlciBnZXogYW4uCgptdWFkaWIKCip2b2xsa29tbWVuIGVybnN0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBhcmFyYWV1bWUgKEFtYXJ5bGxpcywgIDguIEFwciAyMDAzLCAxNjo1Mzo0MSk6Cn4jISBybj1IdW1uaSBydD0xMDQ5ODEyMDY0IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA0OTgxMjA2NApTaW5kIGRpZSBhbmRlcmVuIEVNcyBkZW5uIG5pY2h0IHZlcnRyYXVlbnN3dWVyZGlnPyA6KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQYXJhcmFldW1lIChHcmltbWJvcm4sICA4LiBBcHIgMjAwMywgMTc6MDI6MTcpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwNDk4MTM2MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5ODEyMDY0CkVyem1hZ2llciBzaW5kIGRvb2YgdW5kIHN0aW5rZW4sIGRpZSBFcmtlbm50bmlzIGlzdCBoaWVyIGphIG51biB3aXJrbGljaAp1cmFsdC4gVW5kIGRhcmFuIGhhdCBzaWNoIGluIGRlbiBsZXR6dGVuIG5ldW4gSmFocmVuIGF1Y2ggbmljaHRzIGdlYWVuZGVydC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUGFyYXJhZXVtZSAoSHVtbmksICA4LiBBcHIgMjAwMywgMTc6NDE6MjApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDk4MTQxMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5ODEyMDY0CkR1IHdpbGxzdCBlaW5lbSBFTSBhdXNzZXIgUmlrdXMgb2RlciBWYW5pb24gdmVydHJhdWVuPwoKTmEgZGFubi4uIHZpZWwgU3Bhc3MuLi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBQYXJhcmFldW1lIChHcmltbWJvcm4sICA4LiBBcHIgMjAwMywgMTc6NDI6MTEpOgp+IyEgcm49SHVtbmkgcnQ9MTA0OTgxNjQ4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDk4MTIwNjQKQWJlciBnYW56IHNpY2hlciBuaWNodC4gV2llIGthZW1lIGljaCBkYXp1IGVpbmVtIEVNIHp1IHZlcnRyYXVlbiwgaWNoIGJpbiBkb2NoCm5pY2h0IG1lc2NodWdnZS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUGFyYXJhZXVtZSAoVmFuaW9uLCAgOC4gQXByIDIwMDMsIDIyOjU3OjMzKToKfiMhIHJuPUh1bW5pIHJ0PTEwNDk4MTY0ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5ODEyMDY0CkR1IHdpbGxzdCBtaXIgdmVydHJhdWVuPwoKV2VpYS4gCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUGFyYXJhZXVtZSAoTXVwZmVsLCAgOC4gQXByIDIwMDMsIDIzOjAxOjIxKToKfiMhIHJuPVZhbmlvbiBydD0xMDQ5ODM1NDUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0OTgxMjA2NApzYWxvbW8gZGVyIHdlaXNlIHNwcmljaHQsIHRyYXVlIGtlaW5lbSBlcnppZSBuaWNodCAKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBQYXJhcmFldW1lIChWYW5pb24sICA4LiBBcHIgMjAwMywgMjM6MDE6MzcpOgp+IyEgcm49TXVwZmVsIHJ0PTEwNDk4MzU2ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5ODEyMDY0ClNhZyBpY2ggZG9jaC4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBQYXJhcmFldW1lIChHcmltbWJvcm4sICA4LiBBcHIgMjAwMywgMjM6MDM6NTIpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNDk4MzU2OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5ODEyMDY0CldlZGVyIGhlaXNzZSBpY2ggU2Fsb21vIG5vY2ggYmluIGljaCB3ZWlzZS4gRGVubm9jaCBzaW5kIG1laW5lIEF1c3NhZ2VuCm5hdHVlcmxpY2gga29ycmVrdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGUuYWx0Lm5ldGRpZ2VzdCBhZ2FpbiAoUm9uZGEsICA5LiBBcHIgMjAwMywgMDE6MzA6MTUpOgpBdSBNYW5uLi4uIHNlaXQgZ2VzdGVybiBoYXQgbWVpbiBOb3RlYm9vayB2aWVyIG1hbCBzbyB2aWVsIFNwZWljaGVyIC0gd2llIGRpZQpHcmFmaWtrYXJ0ZSB2b24gZGVtIGhpZXIuLi4KClJvbmRhCgpGcm9tOiBNYXR0aGlhcyBQdWNoIDxtLnB1Y2hAZ214LmRlPgpOZXdzZ3JvdXBzOiBkZS5yZWMuc3BpZWxlLmNvbXB1dGVyLmFjdGlvbgpTdWJqZWN0OiBSZTogU3BsaW50ZXIgQ2VsbCAtIFN5c3RlbWFuZm9yZGVydW5nZW4KRGF0ZTogNCBNYXIgMjAwMyAxMzoyODoyNCBHTVQKTWVzc2FnZS1JRDogPFhuczkzMzQ4MkYzNTY0QTh6YXBob2RAYmVlYmxlYnJveC5mcWRuLnRoLWguZGU+CgpTdmVuIFRvZWxnZXMgPHN0MjM0MjM0NUBhb2wuZGU+IHdyb3RlOgoKPk1hY2h0IGVzIFNpbm4sIG1pdCBtZWluZW0gT2xkaWUtUmVjaG5lciBTcGxpbnRlciBDZWxsIHp1IGthdWZlbj8KPk1laW4gU3lzdGVtOiBQNCAxLDgsIDFHQiBSQU0sIEdlRm9yY2U0IFRpNDIwMCAxMjhNQi4KCk5laW4uIFZlcnN1Y2ggdm9lbGxpZyB6d2Vja2xvcy4gKkRpZXNlKiBTdGVpbnplaXRndXJrZSByZWljaHQKYWxsZW5mYWxscyBmdWVyIFRldHJpcywgUGFjbWFuIHVuZCBUcm9sbCBBdHRhY2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOaWNodCBkZS5hbHQubmV0ZGlnZXN0LCBzb25kZXJuIGRlLmFsdC5zb2Mua25pZ2dlLi4uIChSb25kYSwgIDkuIEFwciAyMDAzLCAwMjoxNDowMSk6Ci4uLiBhYmVyIHZpZWxsZWljaHQgYmFsZC4gRXMgZ2VodCBkYXJ1bSwgb2IgbWFuIEdldHJhZW5rZSAoQmllcikgbmFjaCBkZW0KQW5zdG9zc2VuICJlcmRldCIuLi4KClJvbmRhICprZW5udCBkYXMgbnVyIGJlaSBEaXBsLi1JbmdzLi4uKgoKLyogIlN0ZWZmZW4gTWFyeCIgPG1hcnguc3RlZmZlbkB3ZWIuZGU+IHNjaHJpZWI6ICovCgo+d2llc28gamE/Cj53aWVzbyBuZWluPwo+d2VsY2hlciBTaW5uPwoKSWNoIGtlbm5lIGRpZXNlcyBSaXR1YWwgbnVyIGJlaSBCaWVyIHVuZCB1bnRlciBkZXIgQmV6ZWljaG51bmcgImVyZGVuIi4KRGVyIE1lbnNjaCwgZGVyIGRhcyBpbiB1bnNlcmVuIEJla2FubnRlbmtyZWlzIGVpbnp1YnJpbmdlbiB2ZXJzdWNodGUsCmlzdCBtaXR0bGVyd2VpbGUgZ2VzdG9yYmVuLiBJY2ggd2lsbCBuaWNodCBzYWdlbiwgZGFzcyBkYXMgZXR3YXMgbWl0IGRlbQoiZXJkZW4iIHp1IHR1biBoYXR0ZSwgYWJlciB2ZXJkYWVjaHRpZyBpc3QncyBzY2hvbi4gRXMgaGF0IHNpY2ggamEgenVtCkdsdWVjayBiZWkgdW5zIG5pY2h0IGVpbmdlYnVlcmdlcnQuIExldHp0ZW5zIGhhdCBlaW4gS29sbGVnZSB2b24gbWlyCndpZWRlciBkYW1pdCBhbmdlZmFuZ2VuLiBJY2ggaGFiZSBpaG4gZ2V3YXJudCwgbWFsIHNjaGF1ZW4sIHdhcwpwYXNzaWVydC4KCkdydXNzLAoKTUkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXIgR2F1bGlvdXMgKFNoYWVlbmEsICA5LiBBcHIgMjAwMywgMDM6NTI6NTEpOgpobW0sIEdhdWxpb3VzIHNhZ3QgaWNoIHNvbGwgd2FzIGluIGRpZSBNUEEgc2NocmVpYmVuLi4uLgouLi5kYW5uIHR1IGljaCBkYXMgZG9jaCBtYWwsIGJpbiBqYSBlaW4gYnJhdmVzIE1hZWRjaGVuLgoKLi5pY2ggaG9mZmUgZXMgaXN0IHJlY2h0IHNvPyEKClNoYWVlbmEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVlciBHYXVsaW91cyAoR2F1bGlvdXMsICA5LiBBcHIgMjAwMywgMDM6NTk6NDEpOgp+IyEgcm49U2hhZWVuYSBydD0xMDQ5ODUzMTcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA0OTg1MzE3MQpJY2ggZGFjaHRlIHNvIG1laHIgYW4gd2FzIGFuc3BydWNoc3ZvbGxlcywgYWJlciBmdWVyIGRpZSBVaHJ6ZWl0IG9rIDstKQpEYW5rZSBTaGFlZW5hLgoKR2F1bGlvdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRnVlciBHYXVsaW91cyAoTWFuZHJhZ29uLCAgOS4gQXByIDIwMDMsIDA2OjI3OjUzKToKfiMhIHJuPUdhdWxpb3VzIHJ0PTEwNDk4NTM1ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5ODUzMTcxCidhYm9ubmllcmUgbWVnYXNjaG1hcnJuJyBoYWV0dGUgZXMgYXVjaCBnZXRhbi4KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRGViaWFuIG1hbCB3aWVkZXIgKEdyaW1tYm9ybiwgIDkuIEFwciAyMDAzLCAxMzozNjoyNCk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwNDk4ODY4NTcgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTA0OTg4NTM4OApXZWlsIGRhcyB2ZXJtdXRsaWNoIGluIFJpY2h0dW5nIEdsYXViZW5za3JpZWcgZ2VodCBzY2hyZWliIGljaCBkYXMgdm9yc29yZ2xpY2gKZ2xlaWNoIGhpZXIgcmVpbi4KY3RybC1hIHVuZCBjdHJsLWUgaXN0IGphIHdvaGwgZGV1dGxpY2ggc2NobmVsbGVyIGFscyAiUG9zMSIgdW5kICJFbmRlIiwgc2Nob24Kd2VpbCBtYW4gZGllIEhhZW5kZSBhdWYgZGVyIFRhc3RhdHVyIHdlc2VudGxpY2ggd2VuaWdlciBiZXdlZ2VuIG11c3MuCkVpbmZhY2ggbWFsIGhpbiB1bmQgd2llZGVyIGVtYWNzIHN0YXR0IHdpbndvcmQgdmVyd2VuZGVuLCBkYW5uIHdlcmRldCBpaHIKc2NobmVsbCB2ZXJzdGVoZW4gd2FzIGljaCBtZWluZS4gVW5kIG5pY2h0IGRlbiB2aSwgZGFkdXJjaCBkYXNzIG1hbiBhbGxlIHBhYXIKU2VrdW5kZW4gYXVmIGVzY2FwZSBtdXNzIGlzdCB2aSBqYSBzY2hvbiBhdXRvbWF0aXNjaCBhdXNnZWJyZW1zdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRGViaWFuIG1hbCB3aWVkZXIgKFdoaXRldGlnZXIsICA5LiBBcHIgMjAwMywgMTM6Mzc6MTApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNDk4ODgxODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDQ5ODg1Mzg4CkljaCBkYWNodGUsIGRhc3MgbWFuIGJlaSBWaSBkYXMgRXNjYXBlIGlyZ2VuZHdpZSBhdWYgd2FzIGFuZGVyZXMgdW1sZWdlbgprb25udGUuLi4KTmFqYSBpY2ggd2VyZCBtYWwgc2NoYXVuLiBFbWFjcyBhbnNjaGF1biBrYW5uIGljaCBqYSBpbiBqZWRlbSBGYWxsLiBTY2hhZGV0IGphCm5peC4gKERhcyB3YXIga2VpbmUgRnJhZ2UgOykpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZW5uIG1hbiBzb2xjaGUgRnJldW5kZSBoYXQgLi4uIChWYW5pb24sICA5LiBBcHIgMjAwMywgMTY6Mzc6MjcpOgpEZWluIEZyZXVuZCBWYW5pb24gd2VkZWx0IGluIGRlciBGZXJuZSBtaXQgZGVtIFd1cnN0bWFnaWVyLUZhZWhuY2hlbi4KLi4uCioqKiB0ZWlsdCBEaXIgbWl0OiBkYXMgbWl0IGRlbSBmYWVobmNoZW4ga2FubnN0ZSBkaXIgc3BhcmVuLCBkYXMgZXJrZW5udCBtYW4KKioqIHRlaWx0IERpciBtaXQ6IGFtIG1hZ2llcmxldmVsICpkdWNrKgoKVioKUFM6IEljaCBoYWIgZGllc2VuIEFydGlrZWwgMyBtYWwgZ2VzY2hyaWViZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VubiBtYW4gc29sY2hlIEZyZXVuZGUgaGF0IC4uLiAoTW9yZ290aCwgIDkuIEFwciAyMDAzLCAxNjozNzo1MCk6Cn4jISBybj1WYW5pb24gcnQ9MTA0OTg5OTA0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNDk4OTkwNDcKcS5lLmQKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdlbm4gbWFuIHNvbGNoZSBGcmV1bmRlIGhhdCAuLi4gKE1vbnRhbnVzLCAgOS4gQXByIDIwMDMsIDE2OjM4OjQ2KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA0OTg5OTA3MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNDk4OTkwNDcKT2NoIFd1c2NoZWxtb3JnaSwgCgpoYWVuZyBkb2NoIGxpZWJlciBub2NoIGVpbiBiaXNzZWwgbWVociB2b20gdmVybG9nZW5lbiBMYW5kIGFiLCBhbHMgaGllcgplaW56ZWlsaWdlIEFydGlrZWwgenUgc2NocmVpYmVuLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRvIGRpZSBvciBub3QgdG8gZGllIChIdXJheHByYXgsICA5LiBBcHIgMjAwMywgMTk6MTA6MTYpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFaXNnaWdhbnRlbl0gV2hpdGVUaWdlciBpc3QgZWluIE1ldHplbHNrcmlwdCwgaWNoIGhhYidzCltNb2VyZGVyOkdlaXN0IGVpbmVzIEVpc2dpZ2FudGVuXSBnZW5hdSBnZXNlaGVuIQpbTW9lcmRlcjpXaGl0ZVRpZ2VyXSBHaWx0IEhpc3Rvcnkgc2Nob24gYWxzIFNrcmlwdD8hPwouLi4KW0FiZW50ZXVlcjpXaGl0ZVRpZ2VyXSBrb2VubnRlIG1hbCBqZW1hbmQgZGVuIGVpc2dpZ2FudGVuIHdlZ2hhdW4/CltBYmVudGV1ZXI6TGl0dGxlTmFraV0gYml0dGU/ICpzbWlsZSorCltBYmVudGV1ZXI6U2hhZWVuYV0gbWFjaCBkb2NoIHNlbGJlcj8KW0FiZW50ZXVlcjpXaGl0ZVRpZ2VyIGhhdCBrZWluZSBLUCB1bmQga2F1bSBMUCB1ZWJyaWcuLi5dCltBYmVudGV1ZXI6V2hpdGVUaWdlcl0gb2J3b2hsLi4uIGhtbW0KW0FiZW50ZXVlcjpXaGl0ZVRpZ2VyXSBuZWUgaGF0IG5pY2ggZ2FueiBnZXJlaWNodC4KRGVpbiBGcmV1bmQgV2hpdGV0aWdlciB0ZWlsdCBEaXIgbWl0OiBTdGVyYmV2b3JzY2hsYWVnZT8KRGVpbmUgRnJldW5kaW4gU2hhZWVuYSB0ZWlsdCBEaXIgbWl0OiBlaXNnaWdhbnQKRGVpbiBGcmV1bmQgV2hpdGV0aWdlciB0ZWlsdCBEaXIgbWl0OiBwZmZmIGRhcyBpcyBkb2NoIGxhbmd3ZWlsaWcgYW4gc293YXMKRGVpbiBGcmV1bmQgV2hpdGV0aWdlciB0ZWlsdCBEaXIgbWl0OiBzdGVyYiBpY2ggZG9jaCBuaWNodCBtaXQgYWJzaWNodC4KCmhtbSwgd2lsbCBlciBqZXR6dCBzdGVyYmVuIG9kZXIgbmljaHQ/IDopCmh1cmF4cHJheAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGUuYWx0Lm5ldGRpZ2VzdCAoR3JpbW1ib3JuLCAgOS4gQXByIDIwMDMsIDE5OjUxOjQ2KToKRGF0ZTogV2VkLCAwOSBBcHIgMjAwMyAwMDozNjoxNiArMDIwMApGcm9tOiBUaG9tYXMgRnJpZWxpbmcgPHRob21hcy5mcmllbGluZ0BhcmNvci5kZT4KTmV3c2dyb3VwczogZGUuZXRjLnNwcmFjaGUuZGV1dHNjaApTdWJqZWN0OiBSZTogSGVya3VuZnQgZGVzIFdvcnRlcyAicG9wcGVuIgoKCkhlaWtvIEphY29icyBzY2hyaWViOgo+QWxleGFuZGVyIFNjaGVyZXIgPGFsZXhAd2lsaGVsbS1kcm90bGVmZi5kZT4gd3JvdGU6Cj4KPj5oYXQgamVtYW5kIGVpbmUgQWhudW5nLCB3b2hlciBkYXMgV29ydCAicG9wcGVuIiBrb21tdD8KPgo+Cj5TZWl0IGRlciBFcmZpbmR1bmcgZGVzIFBPUDMtUHJvdG9rb2xscyBwb3BwdCBtYW4gTWFpbHMuCgo+ICguLi4pCgpHZXN0ZXJuIG5vY2ggZGllIGJlc2NoZWlkZW5lIEF1ZmZvcmRlcnVuZyAnTmltbSAyJywgaGV1dGUgc2Nob24KYW1iaXRpb25pZXJ0ZXIgJ1BPUCAzJyB1bmQgbW9yZ2VuIGhlaXNzdCBlcyBkYW5uIHdvaGwgLSBkaWUgQXVnZW4gc2luZApncm9lc3NlciBhbHMgZGVyIE11bmQgLSAnVGFrZSA1Jy4KCkViZW4gcmVpY2h0cy4uLgoKVGhvbWFzCgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkZS5hbHQubmV0ZGlnZXN0IChHcmltbWJvcm4sICA5LiBBcHIgMjAwMywgMjA6Mzg6NDUpOgpVbmQgaGllciBlaW4gc2Nob2VuZXIgQmVpdHJhZyB6dW0gZ2VyYWRlIHp1ZW5kZSBnZWhlbmRlbiBLcmllZzoKClN1YmplY3Q6IFNwb3J0IGFtIFNvbm50YWcuLi4gLi4uZGVyIElyYWsgZ2VnZW4gZGllIEFsbGlhbnpbbGFlbmdlcl0gCkZyb206ICJIYXJhbGQgSG9ybiIgPGhhcmFsZF9ob3JuQGZyZWVuZXQuZGU+IApOZXdzZ3JvdXBzOiBkZS5zb2MucG9saXRpay5taXNjIApEYXRlOiBTdW4sIDIzIE1hciAyMDAzIDIyOjAzOjMyICswMTAwIApNZXNzYWdlLUlEOiA8YjVsNzZxJGxpNCQwMiQxQG5ld3MudC1vbmxpbmUuY29tPiAKIAogCldpbGxrb21tZW4gbGllYmUgTGVzZXJpbm5lbiB1bmQgTGVzZXIgenVtIEthbXBmIGRlcyBKYWhyaHVuZGVydHMgaW0gCk1vcmdlbmxhbmRzdGFkaW9uIGFuIGVpbmVtIHd1bmRlcnNjaG9lbmVuLCBzb25uaWdlbiBTb25udGFnbmFjaG1pdHRhZy4gIApNYW4ga2FuIHNpY2ggd29obCBrYXVtIGJlc3NlcmVzIFdldHRlciBmdWVyIGRpZXNlIFNwYW5udW5nIAp2ZXJzcHJlY2hlbmRlIEJlZ2VnbnVuZyB3dWVuc2NoZW4sIGRhenUgZWluIFB1Ymxpa3Vtc3Jla29yZCB2b24gdWViZXIgCnNlY2hzIE1pbGxpYXJkZW4gYXVmIGRlbiBSYWVuZ2VuLiBBbHMgR2FzdCB0cmV0ZW4gaGV1dGUgYW4gZGllIFVTQSwgCkdhc3RnZWJlciBpc3QgZGVyIElyYWssIGRlciBoZXV0ZSBtaXQgZWluZXIgYXVzc2NobGllc3NsaWNoIAplaW5oZWltaXNjaGVuIEF1ZnN0ZWxsdW5nIGFudHJpdHQsIHdvaGluZ2VnZW4gZGllIEFtZXJpa2FuZXIgZWluaWdlIApMZWdpb25hZXJlIGF1cyBHcm9zc2JyaXR0YW5pZW4gaW4gaWhyZXIgTWFubnNjaGFmdCBoYWJlbi4uLiAuLi51bmQgZGEgCmxhdWZlbiBzaWUgZWluISBBYmVyIHdhcyBpc3QgZGFzPyBLb2ZpIEFubmFuLCBkZXIgZGllc2UgQmVnZWdudW5nIApoZXV0ZSBwZmVpZmZlbiBzb2xsLCBzY2hhdXQgbmljaHQgYXVmIGRpZSBVaHIsIHNvbmRlcm4gaW4gc2VpbmVuIApUZXJtaW5hbGVuZGVyLi4uIC4uLmljaCB3aWxsIG1hbCBzY2hhdWVuLCBvYiBpY2ggbmFlaGVyZXMgZGF6dSAKaGVyYXVzZmluZGVuIGthbm4uLi4gLi4uQW5uYW4gd2VuZGV0IHNpY2ggYW4gZGllIE1hbm5zY2hhZnRza2FwaXRhZW5lIApCdXNoIHVuZCBIdXNzZWluLi4uIC4uLkh1c3NlaW4gbmlja3QgenVzdGltbWVuZCwgd2FlaHJlbmQgQnVzaCB3aWxkIApnZXN0aWt1bGllcnQuLi4gLi4uQW5uYW4gcnVmdCBzZWluZW4gTGluaWVucmljaHRlciBCbGl4IGRhenUsIGRlciAKZWJlbmZhbGxzIGVpbmVuIEJsaWNrIGluIGRlbiBLYWxlbmRlciBBbm5hbnMgd2lyZnQgdW5kIHp1c3RpbW1lbmQgCm5pY2t0Li4uIC4uLmphIGlzdCBlcyBkZW5uIGRpZSBNb2VnbGljaGtlaXQ/IEljaCBob2VyZSBnZXJhZGUsIGRhc3MgQW5uYW4gCmZlc3RnZXN0ZWxsdCBoYXQsIGRhc3MgZGllIGhldXRpZ2UgQmVnZWdudW5nIHVlYmVyaGF1cHQgbmljaHQgYXVmIGRlbSAKU3BpZWxwbGFuIGRlciBMaWdhIHN0ZWhlbiBzb2xsLi4uIC4uLmRpZSBJcmFrZXIgc2NoZWluZW4gZGVyIHNlbGJlbiAKTWVpbnVuZyB6dSBzZWluLi4uIC4uLkJ1c2ggd2lyZCB6dW5laG1lbmQgYWVyZ2VybGljaGVyLi4uIC4uLmF1Y2ggZGllIApPZmZpemllbGxlbiBhdXMgRGV1dHNjaGxhbmQsIEZyYW5rcmVpY2ggdW5kIFJ1c3NsYW5kIGhhYmVuIGJlc3RhZXRpZ3QsIApkYXNzIGRlciBUZXJtaW4gZGVyIEJlZ2VnbnVuZyB3b2hsIGVpbiBJcnJ0dW0gc2VpbiBtdXNzLiBXYXMgaXN0IGRhcyAKamV0enQ/IEJ1c2ggYmVrb21tdCB2b24gQW5uYW4gZGllIEdlbGJlIEthcnRlLCBhbnNjaGVpbmVuZCB3ZWdlbiAKU2NoaWVkc3JpY2h0ZXJiZWxlaWRpZ3VuZy4uLiAuLi5qZXR6dCB0aWNrdCBCdXNoIHZvZWxsaWcgYXVzLiAgCkFuc2NoZWluZW5kIHdpbGwgZXIgZGllIElyYWtpc2NoZSBNYW5uc2NoYWZ0IGRlcyBEb3BpbmdzIGJlemljaHRpZ2VuLiAgCkhhdCBtYW4gc28gZWluIFZlcmhhbHRlbiBqZW1hbHMgc2Nob24gZ2VzZWhlbj8gQW5uYW4gemVpZ3QgaWhtIGpldHp0IApyb3QuLi4gLi4ud2FzIGlzdCBkYXMgPyB3YXMgaXN0IGRhcz8gQnVzaCBzY2hsYWVndCBBbm5hbiBuaWVkZXIsIHJlaXNzdCAKaWhtIGRpZSBQZmVpZmZlIHZvbSBIYWxzIHVuZCBwZmVpZmZ0IGRhcyBTcGllbCBzZWxic3QgYW4hIERhcyBnaWJ0IGVzIApkb2NoIG5pY2h0LiBEaWUgQW1lcmlrYW5pc2NoZSBNYW5uc2NoYWZ0IHNldHp0IHNpY2ggaW4gUmljaHR1bmcgZGVyIAppcmFraXNjaGVuIEhhZWxmdGUgaW4gQmV3ZWd1bmcsIGRpZSBJcmFrZXIgc2NoYXVlbiwgZGFzcyBzaWUgaW4gaWhyZXIgCkhhZWxmdGUgZGllIFZlcnRlaWRpZ3VuZ3Nwb3NpdGlvbmVuIGJlc2V0emVuLiBCdXNoLCBqZXR6dCBpbSBCZXNpdHogZGVzIApMZWRlcnMsIHN0dWVybXQgYXVmIGRhcyBJcmFraXNjaGUgVG9yIHp1IC0gdW5kIC0gVG9vb29vciEgMTowIGZ1ZXIgZGllIApVU0EuLi4uIC4uLi5uZWluLCBkb2NoIG5pY2h0LiBEZXIgQmFsbCBnZWh0IGdhbnoga25hcHAgYW4gZGVyIExhdHRlIAp2b3JiZWkuIEVpbnd1cmYgZnVlciBJcmFrLiBEaWUgQW1pcyBuZWhtZW4gZGVuIEJhbGwgYWJlciBzb2ZvcnQgd2llZGVyIAphbiBzaWNoLCBkZXIgSXJhayBoYXQgamV0enQgZWluZSBrbGVpbmUgVmVyc2NobmF1ZnBhdXNlLCB3YWVocmVuZCBkaWUgCkFtZXJpa2FuZXIgc2ljaCBuZXUgZm9ybWllcmVuLiBEb2NoIHdhcyBpc3QgZGEgamV0enQgbG9zPyBFaW5lciBkZXIgCmFtZXJpa2FuaXNjaGVuIFNwaWVsZXIgaGF0IG9mZmVuc2ljaHRsaWNoIGRpZSBVRWJlcnNpY2h0IHZlcmxvcmVuLCAKbGFldWZ0IG1pdCBkZW0gQmFsbCBhdWYgZGFzIGVpZ2VuZSBUb3IgenUuIFdlciBpc3QgZGFzPyBEaWUgTnVtbWVyIDUsIApkYXMgaXN0IEFsICJUaGUgUm9ja2V0IiBCdW5keSB2b24gZGVuIFRleGFzIFBhdHJpb3RzLi4uIC4uLmphIHNpZWh0IApkZXIgTWFubiBkZW5uIG5pY2h0LCB3byBlciBoaW5sYWV1ZnQ/IERvY2ggZGEgaXN0IGVzIHNjaG9uIApwYXNzaWVydC4uLiAuLi5lciByZW5udCBkZW4gYnJpdGlzY2hlbiBUb3J3YXJ0IGVpbmZhY2ggdW0uLi4gIAouLi5FaWdlbnRvciEgRGllIEFtZXJpa2FuZXIgaGFiZW4gZWluIEVpZ2VudG9yIGdlc2Nob3NzZW4hISEgSmEgaXN0IGVzIApkZW5uIGRpZSBNb2VnbGljaGtlaXQhIEltIFN0YWRpb24gaGllciBzY2hlaW50IGVzIGRydW50ZXIgdW5kIGRydWViZXIgenUgCmdlaGVuLCB3YXMgaGF0IGRlbm4gZGllIGt1cmRpc2NoZSBNYW5uc2NoYWZ0IGRhIGFtIFNwaWVsZmVsZHJhbmQgCnZlcmxvcmVuPyBEaWUgS3VyZGVuIHNjaGVpbmVuIHNpY2ggd2FybXp1bGF1ZmVuLi4uIC4uLmRlciAKYW1lcmlrYW5pc2NoZSBDb2FjaCBydWZ0IGlobmVuIG9mZmVuYmFyIGV0d2FzIHp1Li4uIC4uLmRhcyB3aXJkIGhpZXIgCmphIGltbWVyIGNoYW90aXNjaGVyLCBoaW50ZXIgZGVuIEt1cmRlbiBrcmV1enQgamV0enQgYXVjaCBub2NoIGRhcyAKdHVlcmtpc2NoZSBUZWFtIGF1Ziwgd29oZXIga29tbWVuIGRpZSBkZW5uIGpldHp0PyBPZmZlbmJhciBoYWJlbiBzaWUgZXMgCmF1ZiBlaW5lIFBydWVnZWxlaSBtaXQgZGVuIEt1cmRlbiBhYmdlc2VoZW4uIERvY2ggZGEgZ3JlaWZ0IGRlciAKYW1lcmlrYW5pc2NoZSBDb2FjaCBlaW4uLi4gLi4ubWl0IE11ZWggdW5kIE5vdCB1ZWJlcmVkZXQgZXIgZGllIFR1ZXJrZW4sIAppbiBkaWUgS2FiaW5lIHp1cnVlY2t6dWtlaHJlbi4gV2FlaHJlbmRkZXNzZW4gaXN0IGF1ZiBkZW0gU3BpZWxmZWxkIAphbnNjaGVpbmVuZCBkZXIgQmFsbCBhYmhhbmRlbiBnZWtvbW1lbi4uLi4gLi4uYWxsZSB3aXJrZW4gZXR3YXMgcmF0bG9zLiAgCkphLCBkYXMgc2NoZWludCBlaW5lIFdlaWxlIHp1IGRhdWVybiwgb2ZmZW5iYXIgd3VyZGUgZGVyIEJhbGwgaW5zIApQdWJsaWt1bSBnZXNjaG9zc2VuLi4uIC4uLmRhIGtvbW10IGVpbiBpcmFuaXNjaGVyIFp1c2NoYXVlciBhdWZzIApTcGllbGZlbGQgZ2VsYXVmZW4sIGRlbiBCYWxsIGluIGRlciBIYW5kLi4uIC4uYXV3ZWgsIGRlciBndWNrdCBhYmVyIApib2VzZS4gRXIgc2NoZWluIHNpY2ggemllbWxpY2ggdWViZWwgenUgZWNoYXVmZmllcmVuLCBvZmZlbmJhciBoYXQgaWhtIApkZXIgQmFsbCBlaW5lIEJldWxlIGFtIEtvcGYgYmVpZ2VicmFjaHQuLi4gLi4uZXIgZ2VzdGlrdWxpZXJ0IHdpbGQsIApkcm9odCB3b2hsIGRhbWl0LCBkZW4gUmVzdCBhdXMgZGVtIEEtQmxvY2sgbWl0enVicmluZ2VuLCB3ZW5uIGRhcyAKbm9jaG1hbCB2b3Jrb21tZW4gc29sbHRlLi4uIC4uLmFiZXIgZGEgZ2VodCBkYXMgU3BpZWwgd2VpdGVyISBEaWUgClZlcnRlaWRpZ3VuZyBkZXIgSXJha2VyIGlzdCBqZXR6dCBhdWYgWmFjaywgZGllIEFtZXJpa2FuZXIga29lbm5lbiBrYXVtIApub2NoIEJvZGVuIGd1dCBtYWNoZW4uIE9oIG5laW4hIERhcyBMZWRlciBpc3Qgd2llZGVyIGltIFB1Ymxpa3VtLCAKd2llZGVyIGhhdCBlcyBkZW4gSXJhbmVyIGVyd2lzY2h0Li4uIC4uLndlaWEsIGRhIGJlZ2lidCBzaWNoIGFiZXIgZWluIApSdWRlbCBnYW56IHNjaGxlY2h0IGdlbGF1bnRlciBHZXN0YWx0ZW4gYXVmcyBTcGllbGZlbGQuIFdlciBoYXQgZGVuIApCYWxsIGRlbm4gbnVuIHJhdXNnZWtpY2t0PyBEZW4gSXJhbmVybiBzY2hlaW50IGVzIGVnYWwgenUgc2Vpbiwgc2llIApwcnVlZ2VsbiBtdW50ZXIgYXVmIGJlaWRlIFNlaXRlbiBlaW4uIEpldHp0IGdlaGVuIGRpZSBLdXJkZW4gYXVmIGRpZSAKSXJha2VyIGxvcyEgVW0gR290dGVzIFdpbGxlbiwgc28gZXR3YXMgaGFiZSBpY2ggaW4gZHJlaXNzaWcgSmFocmVuIApOaWNodCBlcmxlYnQuIFdlciBrb21tdCBkZW5uIGRhIGRydWViZXJuIGF1cyBkZW4gS2F0YWtvbWJlbj8gTmVpbiwgZGFzIAprYW5uIG5pY2h0IHNlaW4sIGRhcyBzaW5kIGRpZSBUdWVya2VuLCBkaWUgdWViZXIgZGllIEt1cmRlbiBoZXJmYWxsZW4sIApkaWUgYWxsZ2VtZWluZSBWZXJ3aXJydW5nIGF1c251dHplbmQuRGllIEFncmVzc2lvbiBzY2h3YXBwdCBqZXR6dCBtZWhyIAp1bmQgbWVociBpbnMgUHVibGlrdW0gdWViZXIsIGRpZSBTeXJlciBwcnVlZ2VsbiB3b2hsIGF1ZiBkaWUgRmFuZ2VtZWluZGUgCmF1cyBUZWwgQXZpdiBlaW4uLi4uIC4uLndpZSBzb2xsIGRhcyBoaWVyIG51ciBlbmRlbj8gSWNoIGhvZXJlIGdlcmFkZSAKdm9uIGVpbmVtIGFuZGVyZW4gU3BpZWxvcnQsIGRhc3MgZGFzIHNjaGxlY2h0ZSBCZWlzcGllbCBCdXNocyBTY2h1bGUgenUgCm1hY2hlbiBzY2hlaW50LiBPZmZlbmJhciBoYWJlbiBkaWUgQ2hpbmVzZW4gZGllIEJlZ2VnbnVuZyBDaGluYS1UYWl3YW4gCmdsZWljaCBvaG5lIFNjaGllZHNyaWNodGVyIGF1ZiBkZW0gRmVsZCBlcm9lZmZuZXQuIEF1c2dlcmVjaG5ldCBkZXIgCmFtZXJpa2FuaXNjaGUgQ29hY2gsIHp1IGRlbSBkaWUgTWVsZHVuZyBlYmVuZmFsbHMgZHVyY2hnZWRydW5nZW4gc2VpbiAKbXVzcywgc2NoZWludCBzaWNoIGhlZnRpZ3N0IHVlYmVyIGRpZSBDaGluZXNlbiBhdWZ6dXJlZ2VuLiBPZmZlbmJhciAKYmVkZXV0ZXQgZXIgc2VpbmVyIE1hbm5zY2hhZnQsIGRhc3Mgc2llIGpldHp0IHNvZm9ydCBuYWNoIFBla2luZyB6aWVoZW4gCnNvbGx0ZW4sIHVtIG1pdCBkZW4gQ2hpbmVzZW4gbWFsIHRhY2hlbGVzIHp1IHJlZGVuLi4uIC4uLk1laW5lIERhbWVuIAp1bmQgSGVycmVuLCBkYXMgaXN0IGRhcyBFbmRlLCBkYXMgRW5kZSBkZXMgU3BvcnRzLCBkYXMgRW5kZSBkZXIgTGlnYSwgCmRhcyBFbmRlIGRlciBXZWx0IHdpZSB3aXIgc2llIGtlbm5lbi4uLi4gLi4uaWNoIGdlYmUgenVydWVjayBpbnMgU3R1ZGlvLiAKIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3dhcy4uLiAoQWhhYiwgMTAuIEFwciAyMDAzLCAxOTozNDoyNik6CltTZWhlcjpVZ2ldIG1ldHplbHZvcnNjaGxhZWdlID8KW1NlaGVyOkFyayB6ZWlndCBhdWYuXQpbU2VoZXI6VWdpXSBpY2ggaG9lcmUgPwpbU2VoZXI6QXJrXSBtdXNzdCBtaWNoIGVyc3QgZmluZGVuCltTZWhlcjpBaGFiIGdhY2tlcnQuXQpbU2VoZXI6VWdpXSBtYWdpZXIgaGF1ZW4gaXN0IGxhbmd3ZWlsaWcgOy0pCltTZWhlcjpBcmtdIGljaCBtYWNoIGVzIHNwYW5uZW5kCltTZWhlcjpBcmsgc2NoZWludCB0b3QgenUgQm9kZW4genUgZmFsbGVuLl0KW1NlaGVyOkFya10gamV0enQga29tbXN0IGR1IGJsdXR0cmllZmVuZCBtaXQgc2Nod2VydCBhdWYgbWljaCB6dQpbU2VoZXI6VWdpXSBpZ2l0dCwgc2Nod2VydGVyCltTZWhlcjpBcmtdIGR1IHNpZWhzdCBtaWNoIGFuIHVuZCBoZWJzdCB6dW0gdG9kZXNzdG9zcyBhbgpbU2VoZXI6QXJrXSB1bmQgemFjaywgZHJlaGUgaWNoIG1pY2ggdW0gdW5kIHNwaWVzc2UgZGVpbiBiZWluIGFuIG1laW5lbQpbU2VoZXI6QXJrXSB6YXAtby11bnRlcmxlaWItdG9vbCBhdWYKW1NlaGVyOkFya10gZGFubiB2ZXJ3aWNrZWxuIHdpciB1bnMgaW4gZWluZW4gbHVzdGlnZW4gcmluZ2thbXBmCgouLi4ga3VyemUgUGF1c2UuIERhbm46CgpFcndhcnRldCAob2ZmbGluZSk6IEFyawoKW1NlaGVyOlVnaV0gYWxzbyB3ZW5uIGljaCB3aXJrbGljaCBtaXQgZWluZW0gInNjaHdlcnQiIGF1ZiBkaWNoIGxvc2dlZ2FuZ2VuCltTZWhlcjpVZ2ldIGJpbiwgZGFubiB2ZXJkaWVuIGljaCBlcyBhdWNoIG5pY2h0IGJlc3Nlci4uLiA8MTk6MzE6MDI+CgpBYmVyIHNjaGVpbnN0IGdldHJvZmZlbiB6dSBoYWJlbi4gKmcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2htYXJybiBoYWx0IChPcmt0b2V0ZXIsIDExLiBBcHIgMjAwMywgMTE6MzA6MjMpOgoKWzxNYXN0ZVI+OkphZGF3aW4gbGFlc3N0IGRpZSBFYmVuZSAnQWxrb2hvbCcgZW50c3RlaGVuLl0KWzxNYXN0ZVI+OkphZGF3aW4gbGFlc3N0IGRpZSBFYmVuZSAnU2tlbGV0dGUnIGVudHN0ZWhlbi5dCgpEYXMgcGFzc3QgamV0enQgZG9jaCBhYmVyIGdhciBuaWNodCB6dXNhbW1lbi4uLiBpY2ggd2lsbCBnYXIgbmljaHQgZHJhbiBkZW5rZW4Kd2FzIHBhc3NpZXJ0LCB3ZW5uIG1hbiBBbGtvaG9sIGluIGVpbiBTa2VsZXR0IHNjaHVldHRldC4uLgoKT3JrVCwgc2ljaCB1bSBkZW4gQWxrIHNvcmdlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2NobWFycm4gaGFsdCAoSHVtbmksIDExLiBBcHIgMjAwMywgMTE6MzE6NTEpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNTAwNTM0MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwMDUzNDIzCktvbW10IGVpbiBTa2xldHQgaW4gZGllIEJhciB1bmQgc2FndCB6dW0gV2lydDogRWluIEJpZXIuIFVuZCBlaW5lbgpXaXNjaGxhcHBlbi4KCkh1bW5pIGxhY2h0IHNpY2ggdG90LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzY2htYXJybiBoYWx0IChHcmltbWJvcm4sIDExLiBBcHIgMjAwMywgMTE6NDQ6MzkpOgp+IyEgcm49SHVtbmkgcnQ9MTA1MDA1MzUxMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTAwNTM0MjMKVW5kLCB3aXJzdCBEdSBkYW5uIHp1IGVpbmVtIFNrZWxldHQgd2VubiBEdSB0b3QgYmlzdD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogc2NobWFycm4gaGFsdCAoSHVtbmksIDExLiBBcHIgMjAwMywgMTE6NTA6MzQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTAwNTQyNzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwMDUzNDIzClZlcm11dGxpY2gsIHdlbm4gaWNoIGRhbm4gd2VpdGVyaGluIEJpZXIgaW4gZGVyIEtuZWlwZSBiZXN0ZWxsZW4ga2Fubi4uLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdpbGRlbi9TdGFtbXRpc2NoaWRlZW4sIGRpZSBkYXMgTUcgbmljaHQgYnJhdWNodCwgVGVpbCB4IChDcm9mdCwgMTEuIEFwciAyMDAzLCAxMjo1MTo0Nyk6CkF1cyBkZXIgUmVpaGUgJ0dpbGRlbi9TdGFtbXRpc2NoaWRlZW4sIGRpZSBkYXMgTUcgbmljaHQgYnJhdWNodCcgaGV1dGU6CidEaWUgS2FtcGZnb2xmZXInCgotIEthbXBmZ29sZmVyIGtvZW5uZW4ga2VpbmUgV2FmZmVuIHp1ZWNrZW4sIGF1c3NlciBkZW4gR29sZnNjaGxhZWdlcm4sIGRpZQogIGluIGRlciBHaWxkZSB1bmQgenVnZW9yZG5ldGVuIExhZWRlbiBmdWVyIHRldXJlcyBHZWxkIHp1IGVyd2VyYmVuIHNpbmQuCi0gSmUgbmFjaCBRdWFsaXRhZXQgZGVzIEdvbGZzY2hsYWVnZXJzIHZlcnNjaGxlaXNzdCBlciBtZWhyIG9kZXIgd2VuaWdlcgogIHNjaG5lbGwgKGlycmVwYXJhYmVsKS4KLSBKZSBuYWNoIEdlZ25lciBzaW5kIHZlcnNjaGllbmRlbmUgU2NobGFlZ2VyIHp1IGJlbnV0emVuLCBzdGFya2UgR2VnbmVyCiAgYmVnaW5udCBtYW4gbWl0IGVpbmVtIERyaXZlci4KLSBNaXQgZm9ydHNjaHJlaXRlbmRlbiBLYW1wZmdvbGZza2lsbHMgZXJoYWVsdCBtYW4gZGllIE1vZWdsaWNoa2VpdCBkZXMKICBIb2xlLWluLU9uZSwgZC5oLiBkZW4gR2VnbmVyIG1pdCBlaW5lciBrbGVpbmVuIENoYW5jZSBzb2ZvcnQgenUgdG9ldGVuLgotIEltIEthbXBmIGlzdCBlcyBkYXMgWmllbCBkZW4gR2VnbmVyIGF1ZiBnZW5hdSAwIExQIHp1IHJlZHV6aWVyZW4uICBIaWVyenUKICB3aXJkIGlkUiBkZXIgUHV0dGVyIHZlcndlbmRldC4gIFNjaGxhZWd0IG1hbiB6dSBmZXN0LCB3aXJkIGRlciBHZWduZXIgYXVmCiAgMTAtMjAlIGdlaGVpbHQuCi0gR2lsZGVuYW5mYWVuZ2VyIHN0YXJ0ZW4gbWl0IGVpbmVtIGhvaGVuIEhhbmRpY2FwLCB3ZWxjaGVzIHNpY2ggaW0KICBMYXVmZSBkZXIgS2FycmllcmUgbmFjaCB1bmQgbmFjaCByZWR1emllcnQuICBBdXN3aXJrdW5nOgogICJEdSBrYW5uc3QgZGVuIFdlZ2hpZXIgbm9jaCBuaWNodCBhbmdyZWlmZW4sIGRhIGRlaW4gSGFuZGljYXAKICAgbm9jaCB6dSBncm9zcyBpc3QuIgotIFVtIGluIGRlciBHaWxkZSBhdWZzdGVpZ2VuIHp1IGtvZW5uZW4sIG11ZXNzZW4gdmVyc2NoaWVkZW5zY2h3ZXJlCiAgc29nZW5hbm50ZSBUdXJuaWVyZSBnZXNwaWVsdCB3ZXJkZW4uICBFcyBnaWx0IDE4IEdlZ25lciBpbiBtb2VnbGljaHN0CiAgd2VuaWdlbiBTY2hsYWVnZW4genUgYmVzZWl0aWdlbi4gIEZ1ZXIgZGllIFNpZWdlciBkaWVzZSBUdXJuaWVyZQogIHdpbmtlbiBQcmVpc2dlbGRlciB1bmQgbmV1ZSB1bmQgYmVzc2VyZSBTY2hsYWVnZXIuCi0gSG9laGVyZSBLYW1wZmdvbGZlciBoYWJlbiBkaWUgTW9lZ2xpY2hrZWl0IHNpY2ggZWluZW4gQ2FkZHkgenUKICBiZXNvcmdlbiwgZGVyIGlobmVuIGRhcyBUcmFnZW4gZGVyIFNjaGxhZWdlciBhYm5pbW10IHVuZCBpaG5lbiBqZQogIG5hY2ggR2VoYWx0IHVuZCBXaXNzZW4gZGVzIENhZGRpZXMgbWVociBvZGVyIHdlbmlnZXIgZ3V0ZSBUaXBzCiAgenVyIFdhaGwgZGVzIFNjaGxhZWdlcnMgZ2lidC4KLSBEZXN3ZWl0ZXJlbiBiZXN0ZWh0IGRpZSBNb2VnbGljaGtlaXQgc2ljaCBlaW5lbiBXYWdlbiB6dSBtaWV0ZW4sCiAgbWl0IGRlbSBtYW4gc2ljaCBkYW5uIGJlcXVlbSB6d2lzY2hlbiBkZW4gR2VnbmVybiBoaW4gdW5kIGhlcmJld2VnZW4KICBrYW5uLiAgSGllcmJlaSBpc3QgamVkb2NoIGF1ZiBkZW4gVW50ZXJncnVuZCB6dSBhY2h0ZW4sIGRlciBXYWdlbgogIGthbm4gbmljaHQgdWViZXJhbGwgZW50bGFuZ2ZhaHJlbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkaWUgd2FocmUgaWRlbnRpdGFldCB2b24gSHVtbmkgOikgKEVsYmVyZXQsIDExLiBBcHIgMjAwMywgMTU6NDQ6MjYpOgpWb24gRnJldW5kIEh1bW5pOiBTbywgaWNoIGJlZ2ViZSBtaWNoIGpldHp0IGluIGRlbiBVcmxhdWIuCkRpZSBIeWRyYSB3YXIgMzcgTWludXRlbiB1bmQgMTEgU2VrdW5kZW4gYW53ZXNlbmQuCkRpZSBIeWRyYSBlcmhlYnQgc2ljaCBhdXMgZGVtIFRhbCBkZXIgTHVwaW5lbi4KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvcmFobnVuZyBvZGVyIEZpbmdlciBpbSBTcGllbD8gKEthcmltYSwgMTIuIEFwciAyMDAzLCAwMTowNzo0Mik6CltCZWlsZWlkOkFuYXRvbCB3YXJ0ZXQuXQpbVG9kOkxhcnNdIEVpbiBhYmtsaW5nZW5kZXIgU2VnZW4gaGF0IGdlcmFkZSBIaXNhc3VsIHVtZ2VicmFjaHQuCgpLYXJpbWEgLSBpc3Qgc2ljaCBkYSBuaWNodCBzbyBnYW56IHNpY2hlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZvcmFobnVuZyBvZGVyIEZpbmdlciBpbSBTcGllbD8gKEhpc2FzdWwsIDEyLiBBcHIgMjAwMywgMDM6MTI6MDQpOgp+IyEgcm49S2FyaW1hIHJ0PTEwNTAxMDI0NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwMTAyNDYyCldhcyB0dXQgbWFuIG5pY2h0IGFsbGVzLCB1bSBoaWVyIGF1Y2ggd2lya2xpY2ggX2plZGVuXyB6dWZyaWVkZW4genUgc3RlbGxlbi4uLgoKSGlzIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFZvcmFobnVuZyBvZGVyIEZpbmdlciBpbSBTcGllbD8gKEJhbWJpLCAxMi4gQXByIDIwMDMsIDEwOjQxOjI5KToKfiMhIHJuPUhpc2FzdWwgcnQ9MTA1MDEwOTkyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTAxMDI0NjIKU3RpcmIgZG9jaCBiaXR0ZSBmdWVyIG1pY2ggYmVpIERhcndpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFZvcmFobnVuZyBvZGVyIEZpbmdlciBpbSBTcGllbD8gKExhcmlzaWVsbGUsIDEyLiBBcHIgMjAwMywgMTI6MzI6NTQpOgp+IyEgcm49QmFtYmkgcnQ9MTA1MDEzNjg4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTAxMDI0NjIKV2llc28gc29sbCB1bmJlZGluZ3Qgd2VyIGJlaSBEYXJ3aW4gc3RlcmJlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFZvcmFobnVuZyBvZGVyIEZpbmdlciBpbSBTcGllbD8gKENyb2Z0LCAxMi4gQXByIDIwMDMsIDEyOjMzOjU4KToKfiMhIHJuPUxhcmlzaWVsbGUgcnQ9MTA1MDE0MzU3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTAxMDI0NjIKRGFtaXQgQmFtYmkgenVmcmllZGVuZ2VzdGVsbHQgaXN0LCBuYXR1ZXJsaWNoLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFZvcmFobnVuZyBvZGVyIEZpbmdlciBpbSBTcGllbD8gKEFuYXRvbCwgMTIuIEFwciAyMDAzLCAxMjozNDo1Nik6Cn4jISBybj1Dcm9mdCBydD0xMDUwMTQzNjM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDEwMjQ2MgpEYW1pdCBlciBtaXQgRnVnIHVuZCBSZWNodCBzZ2FlbiBrYW5uLCBkYXNzIHNpY2ggSGlzQXN1bCBzZWxic3QKYXVzZ2VtZW5kZWx0IGhhdC4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBWb3JhaG51bmcgb2RlciBGaW5nZXIgaW0gU3BpZWw/IChMYXJpc2llbGxlLCAxMi4gQXByIDIwMDMsIDEyOjM1OjE3KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNTAxNDM2Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwMTAyNDYyCkFjaHNvLi4uIEthbm4gbWFuIGRhIHVlYmVyaGF1cHQgc3RlcmJlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFZvcmFobnVuZyBvZGVyIEZpbmdlciBpbSBTcGllbD8gKEJhbWJpLCAxMi4gQXByIDIwMDMsIDEyOjM2OjExKToKfiMhIHJuPUxhcmlzaWVsbGUgcnQ9MTA1MDE0MzcxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTAxMDI0NjIKV2Fyc3QgRHUgc2Nob24gaW4gZGVyIFNTUCBtZXR6ZWxuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVm9yYWhudW5nIG9kZXIgRmluZ2VyIGltIFNwaWVsPyAoTGFyaXNpZWxsZSwgMTIuIEFwciAyMDAzLCAxMjozNjoyNyk6Cn4jISBybj1CYW1iaSBydD0xMDUwMTQzNzcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDEwMjQ2MgpuZWluLCB3YXIgaWNoIG5vY2ggbmljaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEZXV0c2NoZSBTcHJhY2hlLCBzY2h3ZXJlIFNwcmFjaGUgKExpYXJhLCAxMi4gQXByIDIwMDMsIDIxOjQ3OjUzKToKfiMhIHJuPVZhbmlvbiBydD0xMDUwMTY4MjYyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDUwMTY4MjYyCkFsc28sIGRhc3MgZHUgc28gYWx0IGJpc3QsIGdsYXViZSBpY2ggZGlyIGVpbmZhY2ggbWFsIG5pY2h0IC4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERldXRzY2hlIFNwcmFjaGUsIHNjaHdlcmUgU3ByYWNoZSAoTGlhcmEsIDEyLiBBcHIgMjAwMywgMjE6NTI6MzApOgp+IyEgb249TGlhcmEgb3Q9MTA1MDE3NzEyNiBvZz1kaXNrdXNzaW9uCn4jISBybj1WYW5pb24gcnQ9MTA1MDE2ODI2MiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA1MDE2ODI2MgonLi4uIHdpcmQgaW0gQW5oYW5nIGFuZ2VmdWVndC4nCgouLi4gaGFsdGUgaWNoIGZ1ZXIgZWluZSBhdXNnZXNwcm9jaGVuIHVuZ2x1ZWNrbGljaGUgRm9ybXVsaWVydW5nLiAqZ3JpbnMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpiZXNjaGVpZGVuZSBDaGFvdGVuIDo+IChEYXJrd2luZywgMTMuIEFwciAyMDAzLCAyMzozNzo0OCk6ClBpdGZhbGwgc2V0enQgc2ljaCBhdWNoIGFuIGRlbiBUaXNjaC4KUGl0ZmFsbCBnaWJ0IGRhcyBTY29yZWFtdWxldHQgYW4gUHVrLgpQdWsgc2FndDogZGVyIGJpZXIgc3BlbmRlcgpQaXRmYWxsIGdpYnQgZGVuIGRyYWtvbmlzY2hlbiBXYWZmZW5ndWVydGVsIGFuIFB1ay4KUGl0ZmFsbCBuaW1tdCBkYXMgU2NvcmVhbXVsZXR0LgpQaXRmYWxsIHNhZ3Q6IG5peCBkYSA6PgpQdWsgc2FndDogb2VoClB1ayBzYWd0OiB3byBpc3QgbWVpbmUga3Jpc3RhbGwga3JvbmUgPwpQdWsgZ3J1ZWJlbHQgZWluZSBXZWlsZSB2b3Igc2ljaCBoaW4uClBpdGZhbGwgc3RpZXJ0IFB1ayBhbi4KUGl0ZmFsbCBzYWd0OiBuaWNoIGF1ZiBkaWUgdG91ciA6PgpQdWsgc2FndDogdW5kIGhhbmRzY2h1aGUgaGFiIGljaCBhdWNoIG5vY2gga2VpbmUgOikKUHVrIHppZWh0IHNlaW5lIFdhc3NlcnBpc3RvbGUgdW5kIHNwcml0enQgUGl0ZmFsbCBwYXRzY2huYXNzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGRpZSB3YWhyZSBpZGVudGl0YWV0IHZvbiBIdW1uaSA6KSAoQ2F0d2VhemxlLCAxNC4gQXByIDIwMDMsIDA4OjE4OjA3KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA1MDA2ODY2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTAwNjg2NjYKTHVzY2hlbi4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG93IHRvIHNldCB1cCBhICdydW5uaW5nJyBXaW5kb3dzLi4uIChBbmF0b2wsIDE0LiBBcHIgMjAwMywgMTE6MzU6MzcpOgoKRGVpbiBGcmV1bmQgU2Nob2tvIHRlaWx0IERpciBtaXQ6IEhBISBIQUhBISBJY2ggaGFiIG5vY2ggd2FzIGdlZnVuZGVuIDopClNjaG9rbyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCk9vb2theS4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSG93IHRvIHNldCB1cCBhICdydW5uaW5nJyBXaW5kb3dzLi4uIChTY2hva28sIDE0LiBBcHIgMjAwMywgMTE6NTM6MDcpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNTAzMTI5Mzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwMzEyOTM3CgpVbmQgZGFzIHdhciBudXIgZGFzIFRvb2wgenVyIEV1cm91bXJlY2hudW5nICpzaWdoKiA6LX0KClNjaG9uIGVyc3RhdW5saWNoLCBhdWYgd2llIHZpZWxlIEFydGVuIG1hbiBlaW5lbiBXaW5kb3dzLVJlY2huZXIgenVtIE5ldXN0YXJ0CmJyaW5nZW4ga2FubiA6KQoKU2Nob2tvIChpbnp3aXNjaGVuIFJlYm9vdC1SdW5kZSAxMSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRlLmFsdC5uZXRkaWdlc3QgKEdyaW1tYm9ybiwgMTQuIEFwciAyMDAzLCAxOTo0MDo1Mik6CkZyb206ICJSb2JpbiBTLiBTb2NoYSIgPHJvYmluQHNvY2hhLm5ldD4KTmV3c2dyb3VwczogZGUuY29tcC5vcy51bml4LmxpbnV4Lm1pc2MKU3ViamVjdDogUmU6IEZyYWdlIHdlZ2VuIGVpbmVtIFByb2dyYW1tCk1lc3NhZ2UtSUQ6IDxpbG92ZXJvYmluLjg3ZnpvcW8zM2EuZnNmQG5ld3Muc29jaGEubmV0PgoKKiBBbGJlcnQgS29jaCA8Ym9uemFpNEBnbXguZGU+IHdyaXRlczoKCj4gaWNoIGhhYmUgZ2VyYWRlIGRlbiBXZWNoc2VsIHZvbiBXaW5kb3dzLUxpbnV4IGhpbnRlciBtaXIuIEZyYWdlOiBHaWJ0Cj4gZXMgZGEgZWluZW4gV3lzaXd5ZyBFZGl0b3I/IFdlbm4gamE6IFdpZSBoZWlzc3QgZXI/CgpFbWFjcy4gRHUgc2llaHN0IGFzY2lpLCBEdSBrcmllZ3N0IGFzY2lpLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPYiBkYXMgc28gZWluZSBndXRlIElkZWUgd2FyLi4uIChMYXJpc2llbGxlLCAxNS4gQXByIDIwMDMsIDE1OjQyOjU5KToKRGVpbiBGcmV1bmQgSHVyYXhwcmF4IG11c3MgbWFsIGRhcyBiZXJ1ZWNodGlndGUgUG9ydGFsIGluIGRlciBGZXJuZQphdXNwcm9iaWVyZW4uCltUb2Q6TGFyc10gRWluIFN0ZWluYmVpc3NlciBoYXQgZ2VyYWRlIEh1cmF4cHJheCB1bWdlYnJhY2h0LgoKTmEsIGljaCB3ZWlzcyBqYSBuaWNodCBzbyByZWNodCA7KSkKTGFyaSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBNUEEgKEFuYXRvbCwgMTUuIEFwciAyMDAzLCAxNzo1MToyMSk6Cn4jISBybj1Cb2luZyBydD0xMDUwNDIxODU3IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTA1MDQxOTczNQpNYW4ga2FubidzIGphIG1hbCB2ZXJzdWNoZW4uLi4gd2VubiBzZWxic3QgZGllIFRoZW1lbiByb3RpZXJlbi4uLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBNUEEgKE9ya3RvZXRlciwgMTUuIEFwciAyMDAzLCAxODowMDoxMCk6Cn4jISBybj1KYWRhd2luIHJ0PTEwNTA0MjIwNDYgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDUwNDE5NzM1CkdvZHdpbiB3YXIgZGVyIG1pdCBkZW0gIkhpdGxlciIgc2FnZW4sIG9kZXI/CgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTVBBIChEZWVwYmx1ZSwgMTYuIEFwciAyMDAzLCAwMDowNjowMyk6Cn4jISBybj1WaW5jZW50IHJ0PTEwNTA0NDM1ODAgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDUwNDE5NzM1ClNvc28sIHdpZWRlciBhdWYgZGVuIGFybWVuIEJvaW5nIHNjaGllYmVuLiBQcm9nZyBkb2NoIGVpbmZhY2ggc2VsYnN0IG1hbCBsb3MKOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNUEEgKEdyaW1tYm9ybiwgMTYuIEFwciAyMDAzLCAxMDo1NDowNSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTA1MDQ4MzI0MSBvZz1lbnR3aWNrbHVuZwp+IyEgcm49Wm9vayBydD0xMDUwNDgzMTc3IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTA1MDQxOTczNQpLZWluZSBTb3JnZSwgaWNoIGxvZXNlIERpY2ggZGFubiBhbHMgUk0gU2NoYXR0ZW53ZWx0IGFiLCBkYW5uIGhhc3QgRHUgc2ljaGVyCmdlbnVnIFplaXQgdW0gRGljaCB1bSBkaWUgcGFhciBGZWxzYnJvY2tlbiBpbSBNZWVyIHp1IGt1ZW1tZXJuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTVBBIChEZWVwYmx1ZSwgMTYuIEFwciAyMDAzLCAxMjoxMDowNik6Cn4jISBybj1WaW5jZW50IHJ0PTEwNTA0ODM0ODIgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDUwNDE5NzM1ClZpbmNlbnQsIGljaCBzZWhlIGR1IGhhc3QgdmllbGUgZ3V0ZSBJZGVlbi4gV2FubiB3aXJzdCBEdSBNYWdpZXIgdW5kIHNldHp0IGRpZQp1bT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBNUEEgKEFuYXRvbCwgMTYuIEFwciAyMDAzLCAxMjoyMDoxNCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDUwNDg3ODA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDQxOTczNQoKQW5kZXJlIHdlcmRlbiBNYWdpZXIgdW5kIHNldHplbiBuaWUgd2FzIHVtLi4uIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IE1QQSAoR3JpbW1ib3JuLCAxNi4gQXByIDIwMDMsIDEyOjI3OjUwKToKfiMhIHJuPUFuYXRvbCBydD0xMDUwNDg4NDE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDQxOTczNQpUamEsIGFiZXIgaXJnZW5kd2llIG11ZXNzZW4gZGllIFRvcHNwaWVsZXIgamEgenUgaWhyZW0gV2lzc2VuIGtvbW1lbiwgdW5kCm5pY2h0IGplZGVyIGhhdCBadWdhbmcgenUgZWluZW0gU3RhbW10aXNjaCBtaXQgTWFnaWVybiBkaWUgc2ljaCBhdXNrZW5uZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE1QQSAoQW5hdG9sLCAxNi4gQXByIDIwMDMsIDEyOjMxOjM2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDUwNDg4ODcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDQxOTczNQpHZXJ1ZWNodGV3ZWlzZSBzaW5kIG5pY2h0IGFsbGUgU3RhbW10aXNjaGUgd2llIGRpZSBEb3J0bXVuZGVyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwYW0hIChCYW1idWxrbywgMTYuIEFwciAyMDAzLCAxMjo1NTowNCk6CkRhcyB3YXIgaGV1dGUgaW4gbWVpbmVyIGluYm94OgoKRGF0ZTogV2VkLCAxNiBBcHIgMjAwMyAwMDo1NjowMiAtMDcwMApGcm9tOiBDYW5kaSA8Y2FuZGlAbXgxOS53YW50LXdvbWVuLWdldC13b21lbi5jb20+ClJlcGx5LVRvOiByZW1vdmVAd2FudC13b21lbi1nZXQtd29tZW4uY29tClN1YmplY3Q6IEkgd2FudCB0byBiZSB5b3VyIG5ha2VkIHBlcnNvbmFsIGFzc2lzdGFudC4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogTVBBIChUaHVmaGlyLCAxNi4gQXByIDIwMDMsIDEyOjU3OjA1KToKfiMhIHJuPUFuYXRvbCBydD0xMDUwNDg5MDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDQxOTczNQp3YW5uIHdhciBnbGVpY2ggZGVyIGxldHp0ZSBkb3J0bXVuZGVyIHN0YXRpPyA7KQoKVGh1ZmhpcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYm9pbmdfcmVzZXQgKFB1aywgMTYuIEFwciAyMDAzLCAxMzoxMjowMik6CmRhIHdvbGx0ZSBkb2NoIG1hbCB3ZXIgd2lzc2VuIHdhcyBuZW4gYm9pbmdfcmVzZXQgaXN0Li4uLi4KRGVyIERhZW1vbmVuZHJhY2hlIGJyaWNodCB0b3QgenVzYW1tZW4uCj4gQWxzIER1IGRhcyBHaG91bG1lc3NlciB6dWVja3N0LCBmYWVuZ3QgZGllIEtsaW5nZSBwbG9ldHpsaWNoIHp1IHZpYnJpZXJlbgp1bmQKenUgbGV1Y2h0ZW4gYW4uIEVpbmUgd29obGlnZSBXYWVybWUgZHVyY2hzdHJvZW10IGRlbiBNZXNzZXJrbmF1ZiB1bmQgYXVmCmVpbm1hbCBpc3QgZGVyIFNwdWsgdm9yYmVpLgpEdSBzaWVoc3QgZGllIHN0ZXJibGljaGVuIFVlYmVycmVzdGUgZWluZXMgRGFlbW9uZW5kcmFjaGVuLgpTaWUgZW50aGFlbHQ6CkVpbiBEcmFjaGVucGFuemVyLgo+IFBsb2V0emxpY2ggc3RlaHN0IER1IGluIGVpbmVyIHJpZXNpZ2VuIEhvZWhsZS4gSWhyZSBBdXNtYXNzZSBwYXNzZW4KaXJnZW5kd2llCmdhciBuaWNodCBpbiBkaWUgUHJvcG9ydGlvbmVuIGRlcyBNb25vbGl0aGVuIGhpbmVpbi4gRGVyIHdpZGVybGljaGUgR2VzdGFuawp1bmQgZGllIGdpZ2FudGlzY2hlbiBGdXNzYWJkcnVlY2tlIHplaWdlbiBEaXIgZGV1dGxpY2gsIGRhc3MgaGllciBlaW4KbWFlY2h0aWdlciBEcmFjaGUgaGF1c2VuIG11c3MuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiB3ZXN0ZW4gdW5kIHN1ZWR3ZXN0ZW4uCkRpZSBMZWljaGUgZWluZXMgRGFlbW9uZW5kcmFjaGVuLgpFdHdhcyBEcmFjaGVuc2FiYmVyLgpFaW4gRHJhY2hlbnBhbnplci4KPiBFaW4gRGFlbW9uZW5kcmFjaGUga29tbXQgYW4uCkRlciBEcmFjaGUgbGFlc3N0IERpY2ggbmljaHQgcGFzc2llcmVuLgoKUHVrLCBhcmdlbHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYm9pbmdfcmVzZXQgKFpvb2ssIDE2LiBBcHIgMjAwMywgMTM6MTM6MDYpOgp+IyEgcm49UHVrIHJ0PTEwNTA0OTE1MjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwNDkxNTIyCklyZ2VuZHdhcyBoYXQgZGEgYWJlciBuaWNodCBzbyBnYW56IGdla2xhcHB0LCBpY2ggZmluZGUga2VpbmVuIEVpbnRyYWcKaW0gS2lsbGxvZy4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGJvaW5nX3Jlc2V0IChQdWssIDE2LiBBcHIgMjAwMywgMTM6MTM6NDYpOgp+IyEgcm49Wm9vayBydD0xMDUwNDkxNTg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDQ5MTUyMgp3aWUgZHUgZmluZGVzdCBrZWluZW4gZWludHJhZyBpbSBLaWxsbG9nID8gOikKaGFiIGljaCBtaXIgZGFzIGdhbnplIG51ciBlaW5nZWJpbGRldCA/CnNjaGVpc3MgZHJvZ2VuISEhIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBib2luZ19yZXNldCAoT3JrdG9ldGVyLCAxNi4gQXByIDIwMDMsIDE1OjMzOjQ5KToKfiMhIHJuPVB1ayBydD0xMDUwNDkxNjI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDQ5MTUyMgpOaWNodHMgaXN0IG1laHIgd2llIGVzIG1hbCB3YXIuLiBzZWxic3QgQm9pbmdyZXNldHMgc2NoZWludHMuLgoKT3JrVCBmdWVobHQgc2ljaCBTRUhSIGFsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1QQSAoSmFkYXdpbiwgMTcuIEFwciAyMDAzLCAwOTozMzowNik6Cn4jISBybj1NdWFkaWIgcnQ9MTA1MDU2MTc4NSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNTA0MTk3MzUKSGFoLCB1bmQgd2llc28gcmVkZW4gZGFubiBzbyB2aWVsZSBMZXV0ZSBkYXJ1ZWJlcj8hCkphZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1QQSAoRWxiZXJldCwgMTcuIEFwciAyMDAzLCAwOTo0ODowNCk6Cn4jISBybj1KYWRhd2luIHJ0PTEwNTA1NjQ3ODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwNDE5NzM1CmdlbmF1c28gd2llIHNvdmllbGUgTGV1dGUgdWViZXIgZGllIElsbHVtaW5hdGVuIHJlZGVuLiBJc3QgYXVjaCBzY2h3YWNoc2lubi4KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE1QQSAoQ3JvZnQsIDE3LiBBcHIgMjAwMywgMDk6NTA6NDkpOgp+IyEgcm49RWxiZXJldCBydD0xMDUwNTY1Njg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDQxOTczNQpEdSBoYXN0IGRvY2gga2VpbmUgQWhudW5nIHZvbSBaUEssIEVsYmVyZXQgOi0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IChWYXJkaW9uLCAxNy4gQXByIDIwMDMsIDA5OjUxOjEzKToKW1RvZDpMYXJzXSBFaW5lIFJhdHRlIGhhdCBnZXJhZGUgS2F2YWxpZXIgdW1nZWJyYWNodC4KW1RvZDpFaW5lIFJhdHRlXSBOYSBLYXZhbGllciwgZGFzIHdhciBqYSB3b2hsIG5peCEKCkR1IHRlaWxzdCA8UGl0ZmFsbD4gbWl0OiBuYSwgbm9jaCBuaWNodCBnYW56IHdhY2g/IDspCjxQaXRmYWxsPiB0ZWlsdCBEaXIgbWl0OiBvY2ggZHJvZ2VucmF0dGVuIDo+CgpbVG9kOkxhcnNdIEVpbmUgUmF0dGUgaGF0IGdlcmFkZSBQaXRmYWxsIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBSYXR0ZV0gTmEgUGl0ZmFsbCwgZGFzIHdhciBqYSB3b2hsIG5peCEKCltCZWlsZWlkOkthdmFsaWVyXSBGZWhsc2NobGFlZ2UgYmVpIEthbXBmc3BydW5nIGhldXRlOiAxCgpWYXJkaW9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBNUEEgKEVsYmVyZXQsIDE3LiBBcHIgMjAwMywgMDk6NTI6MDEpOgp+IyEgcm49Q3JvZnQgcnQ9MTA1MDU2NTg0OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA0MTk3MzUKc2VociByaWNodGlnIHVuZCBlaHJsaWNoIGdlc2FndCwgaWNoIGJpIGZyb2ggZHJ1ZWJlci4gQWJlciB1bSBkZW4gdmVyZ2xlaWNoCm1hbCB3ZWl0ZXJ6dXNwaW5uZW4sIGFsbGUgZGllIGRhIHVlYmVyIGRpZSBJbGx1bWluYXRlbiByZWRlbiBoYWJlbiBhdWNoIGtlaW5lCkFobnVuZyB2b24gc2VsYmlnZW4gLi4uCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNUEEgKE11YWRpYiwgMTcuIEFwciAyMDAzLCAwOTo1MzoyNik6Cn4jISBybj1FbGJlcmV0IHJ0PTEwNTA1NjU2ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwNDE5NzM1CmdlbkZOT1JkYXUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE1QQSAoRWxiZXJldCwgMTcuIEFwciAyMDAzLCAwOTo1NDo0Mik6Cn4jISBybj1NdWFkaWIgcnQ9MTA1MDU2NjAwNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA0MTk3MzUKd2VsY2hlciBwYXJhbm9pZGUgaGF0IGVpZ2VudGxpY2ggZGllc2VzIEZOT1JEIGdlcHJvZ2d0IHdhcyBoaWVyIGhpbiB1bmQgd2llZGVyCnJ1bWdlaXN0ZXJ0LCB3b2JlaSBpY2hzIGxhbmdlIG5pbW1lciBnZXNlaGVuIGhhYgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTVBBIChNdWFkaWIsIDE3LiBBcHIgMjAwMywgMDk6NTU6MzUpOgp+IyEgcm49RWxiZXJldCBydD0xMDUwNTY2MDgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDQxOTczNQp3b3ZvbiByZWRlc3QgZHUgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTVBBIChFbGJlcmV0LCAxNy4gQXByIDIwMDMsIDA5OjU2OjQzKToKfiMhIHJuPU11YWRpYiBydD0xMDUwNTY2MTM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDQxOTczNQptYW4ga29lbm50ZSBkZW5rZW4gZHUgaGFzdCBlcyBnZXRhbiA7KQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE1QQSAoTXVhZGliLCAxNy4gQXByIDIwMDMsIDA5OjU3OjQ3KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA1MDU2NjIwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA0MTk3MzUKd2FzID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBNUEEgKEVsYmVyZXQsIDE3LiBBcHIgMjAwMywgMDk6NTg6NDUpOgp+IyEgcm49TXVhZGliIHJ0PTEwNTA1NjYyNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwNDE5NzM1CkVsYmVyZXQgYmVpc3N0IHNpY2ggbGllYmVyIGF1ZiBkaWUgWnVuZ2UgamV0enQuIERhcyBicmluZ3QgbWVoci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBNUEEgKE11YWRpYiwgMTcuIEFwciAyMDAzLCAwOTo1OToxMSk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwNTA1NjYzMjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwNDE5NzM1CmR1IGJpc3Qgc2VsdHNhbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IE1QQSAoRWxiZXJldCwgMTcuIEFwciAyMDAzLCAwOTo1OTo0NSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA1MDU2NjM1MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA0MTk3MzUKbnVyIG5pY2h0IHBhcmFub2lkCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBNUEEgKENyb2Z0LCAxNy4gQXByIDIwMDMsIDEwOjA3OjE2KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA1MDU2NjA4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA0MTk3MzUKTmltbSAncm9ocmhvZXJlJyBkYXMgdHV0LgoKQ3JvZnQgd2Vpc3Mgd2VyIGhpbnRlciBGTk9SRCBzdGVja3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBNUEEgKEVsYmVyZXQsIDE3LiBBcHIgMjAwMywgMTA6MDg6MDcpOgp+IyEgcm49Q3JvZnQgcnQ9MTA1MDU2NjgzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA0MTk3MzUKaWNoIGdsYXViZSBpY2gga2FubiBtaXIgZGVua2VuLCB3ZXIgZGVyIFVyaGViZXIgZGVzIFVlYmVscyBpbiBkZW0gRmFsbCBpc3QKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNUEEgKFpvb2ssIDE3LiBBcHIgMjAwMywgMTA6MDg6NTUpOgp+IyEgcm49RWxiZXJldCBydD0xMDUwNTY2ODg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDQxOTczNQpGbHVlc3RlcnN0IER1IGVzIG1pciBpbnMgT2hyPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE1QQSAoQW50aGVhLCAxNy4gQXByIDIwMDMsIDEwOjE1OjE0KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNTA1NjY4MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwNDE5NzM1CkhhdCBlcyBpcmdlbmQgZXR3YXMgbWl0IFdlbHRoZXJyc2NoYWZ0IHp1IHR1bj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCip3aXNjaCBUcmFlbmVuIGF1cyBkZW4gQXVnZW4qIChOb25uZSwgMTcuIEFwciAyMDAzLCAxMDoxNToxNSk6Ck5hY2hkZW0gaWNoIHdpZWRlciBhdWYgZGVuIFN0dWhsIGdla2xldHRlcnQgYmluLCB3aWxsIGljaCBldWNoIGRpZXNlIFBvc3RpbmcKbmljaHQgdmVyaGVpbWxpY2hlbjoKCkhhbGxvIE5HCgpsZWlkZXIgaGFiZSBpY2ggYW4gS2FybmV2YWwgZWluZSBXZXR0ZSBnZWdlbiBtZWluZSBGcmV1bmRpbiB2ZXJsb3Jlbi4gSWNoCnNvbGwgZWluZSBnZXdpc3NlIFplaXQgZWluZW4gQW5hbHN0b2Vwc2VsIHRyYWdlbiwgdW0genUgZXJmYWhyZW4sIHdpZSAidG9sbApBbmFsdmVya2VociBpc3QiLiBEYXMgVGVpbCBpc3Qgdm9tIE9yaW9uIFZlcnNhbmQgdW5kIGNhLiAxMiBjbSBsYW5nLiBBbiBkZXIKU3BpdHplIGhhdCBlciBjYS4gMiBjbSBEdXJjaG1lc3NlciB1bmQgZW5kZXQgYmVpIGNhLiA0LDUgY20uIERhbmFjaCB2ZXJqdWVuZ3QKZXIgc2ljaCB3aWVkZXIsIHNvZGFzcyBlciBlaWdlbnRsaWNoIGluIEhpbnRlcm4gYmxlaWJlbiBzb2xsdGUuCk51ciBkYXMgdHV0IGVyIGJlaSBtaXIgbGVpZGVyIG5pY2h0LCBiZWltIFNpdHplbiBpc3QgbmF0dWVybGljaCBhbGxlcyBpbgpPcmRudW5nLCBhYmVyIHdlbm4gaWNoIHZlcnN1Y2hlIHp1IGdlaGVuLCBmbHV0c2NodCBlciBtaXIgc2VociBzY2huZWxsCmhlcmF1cy4KCldpZSBzY2hhZmZlIGljaCBlcywgbWl0IGRlbSBQbHVnIGRlbiBNdWVsbCBoZXJ1bnRlciB6dSBicmluZ2VuIHVuZCBkaWUKVHJlcHBlbiB3aWVkZXIgaG9jaHp1c3RlaWdlbiAoMy4gRXRhZ2UpIG9obmUgZGFzIGVyIGhlcmF1c3J1dHNjaHQgKEF1ZnRyYWcKZGVyIFdldHRlKS4KCkJpdHRlIHdpcmtsaWNoIHVtIEhpbGZlLCBzb25zdCBtYWNoZSBpY2ggbGViZW5zbGFlbmdsaWNoICBkZW4gQWJ3YXNjaC4KCkdydWVzc2UKVG9iaWFzCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNUEEgKENyb2Z0LCAxNy4gQXByIDIwMDMsIDEwOjE4OjMzKToKfiMhIHJuPUFudGhlYSBydD0xMDUwNTY3MzE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDQxOTczNQpXYXM/ICBGTk9SRCBvZGVyIFpQSz8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTVBBIChBbnRoZWEsIDE3LiBBcHIgMjAwMywgMTA6MTg6NDMpOgp+IyEgcm49Q3JvZnQgcnQ9MTA1MDU2NzUxMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA0MTk3MzUKRk5PUkQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBNUEEgKEphZGF3aW4sIDE3LiBBcHIgMjAwMywgMTA6MTk6MzcpOgp+IyEgcm49QW50aGVhIHJ0PTEwNTA1Njc1MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwNDE5NzM1CmRlZmluaXRpdiBiZWlkZXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBNUEEgKEJvaW5nLCAxNy4gQXByIDIwMDMsIDEwOjIwOjM0KToKfiMhIHJuPUphZGF3aW4gcnQ9MTA1MDU2NzU3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA0MTk3MzUKRXMgZ2lidCBrZWluIFpQSy4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE1QQSAoQW50aGVhLCAxNy4gQXByIDIwMDMsIDEwOjIwOjUwKToKfiMhIHJuPUJvaW5nIHJ0PTEwNTA1Njc2MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwNDE5NzM1CkRvY2guIEluIEJpZWxlZmVsZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBNUEEgKEVsYmVyZXQsIDE3LiBBcHIgMjAwMywgMTA6MjE6MjMpOgp+IyEgcm49Qm9pbmcgcnQ9MTA1MDU2NzYzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA0MTk3MzUKZmFsc2NoLCBzY2hhdSBkb2NoIHNlbGJlciBuYWNoIGF1ZiB3d3cuenBrLmNoLCBkYSBrYW5uc3QgZGllIGdlc2NoaWNodGUKbmFjaGxlc2VuIDspCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogTVBBIChKYWRhd2luLCAxNy4gQXByIDIwMDMsIDEwOjIxOjI5KToKfiMhIHJuPUFudGhlYSBydD0xMDUwNTY3NjUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDQxOTczNQpIYWgsIEJvaW5nIHN0ZWNrdCBhdWNoIG1pdCBkcmluLiBJY2ggd3Vzc3RlIGVzIQpKYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogTVBBIChNYW5kcmFnb24sIDE3LiBBcHIgMjAwMywgMTA6MjE6NTUpOgp+IyEgcm49SmFkYXdpbiBydD0xMDUwNTY3Njg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDQxOTczNQpXZXIgYnJhdWNodCBzY2hvbiBaUEtzLCB3byBlcyBrYXVtIFp3ZXJnZSBnaWJ0IC4uLiA7bykKCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IE1QQSAoRWxiZXJldCwgMTcuIEFwciAyMDAzLCAxMDoyMzoyNyk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTA1MDU2NzcxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA0MTk3MzUKaXN0IGRpZSBzZWl0ZSBiZWkgZXVjaCBhdWNoIHNvIHRpZXJpc2NoIGxhaG0/IGFiZXIgbWFuIGthbm4gZGEgYmlsZGVyIGRlcwpnYW56ZW4gdm9yc3RhbmRzIHNlaGVuLCBCb2luZyBzZWggaWNoIGRhIG5pY2h0IDspCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogTVBBIChBbWFyeWxsaXMsIDE3LiBBcHIgMjAwMywgMTA6Mzg6NTgpOgp+IyEgcm49QW50aGVhIHJ0PTEwNTA1Njc2NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwNDE5NzM1CkRhIGVzIEJpZWxlZmVsZCBhdWNoIG5pY2h0IGdpYnQ6IHFlZC4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBNUEEgKE11YWRpYiwgMTcuIEFwciAyMDAzLCAxMDo0NTozNCk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTA1MDU2ODczOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA0MTk3MzUKaWNoIGxlcyBpbW1lciBudXIgenBrLCBpY2gga2VubmUga2VpbiB6cGssIGVzIGdpYnQga2VpbiB6cGsgdW5kIGRpZSBzY2h3ZWl6ZXIKaGFiZW4gZWggZWluIGthZXNlcmFkIGFiCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcmdsIDooIChNb3Jnb3RoLCAxNy4gQXByIDIwMDMsIDEwOjQ5OjA1KToKU28gdmllbCBuZXVlcyB1bmQgc28gdmllbCBNaXN0IDooCgpVZWJlcmdlaGUgQXJ0aWtlbCA1MiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1MyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1NCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1NSBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1NiBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1NyBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgpVZWJlcmdlaGUgQXJ0aWtlbCA1OCBhdXMgaWdub3JpZXJ0ZW0gVGhyZWFkLgoKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXJnbCA6KCAoQW5hdG9sLCAxNy4gQXByIDIwMDMsIDEwOjUzOjA5KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA1MDU2OTM0NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA1NjkzNDUKRHUgYmlzdCB0b2xsLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXJnbCA6KCAoQm9pbmcsIDE3LiBBcHIgMjAwMywgMTA6NTU6NDIpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNTA1Njk1ODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwNTY5MzQ1Ckhhc3QgRHUgZGVuIFRocmVhZCBhdWNoIGdsZWljaCBpZ25vcmllcnQsIE1vcmdvdGg/IDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFyZ2wgOiggKE1vcmdvdGgsIDE3LiBBcHIgMjAwMywgMTA6NTk6MTcpOgp+IyEgcm49Qm9pbmcgcnQ9MTA1MDU2OTc0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA1NjkzNDUKTmFqYSBpY2ggaGFldHRlIGVpZ2VudGxpY2ggZGFtaXQgcmVjaG5lbiBzb2xsZW4sIGRhc3MgZGllIHRvbGxlIEFubmEgd2llZGVyCm5lbiBkdW1tZW4gS29tbWVudGFyIGFiZ2lidC4gTWFsIHNjaGF1ZW4gd2llIHNpY2ggZGVyIFRocmVhZCBub2NoIGVudHdpY2tlbHQKOikKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBcmdsIDooIChab29rLCAxNy4gQXByIDIwMDMsIDExOjAyOjE4KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA1MDU2OTk1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA1NjkzNDUKU28gaGFiIGljaCBhdWNoIG1hbCBhbmdlZmFuZ2VuLi4uIG1pdHRsZXJ3ZWlsZSBzaW5kIHdpciBiZWkgUmU+NDYwMDAuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQXJnbCA6KCAoQm9pbmcsIDE3LiBBcHIgMjAwMywgMTE6MDM6NDEpOgp+IyEgcm49Wm9vayBydD0xMDUwNTcwMTM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDU2OTM0NQpOYWphLCBhYmVyIGljaCBnbGF1YmUgbmljaHQgZGFzcyBkZXIgVGhyZWFkIHZpZWwgUG90ZW50aWFsIGhhdCAuLi4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQXJnbCA6KCAoRGVlcGJsdWUsIDE3LiBBcHIgMjAwMywgMTE6MDQ6MTEpOgp+IyEgcm49Wm9vayBydD0xMDUwNTcwMTM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDU2OTM0NQpjcmFzaHQgZGFzIG11ZCBiZWkgcmVeeCB1bmQgeD5tYXhfbG9uZ2ludD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqd2lzY2ggVHJhZW5lbiBhdXMgZGVuIEF1Z2VuKiAoRm9vYmFyLCAxNy4gQXByIDIwMDMsIDExOjU5OjU0KToKfiMhIHJuPU5vbm5lIHJ0PTEwNTA1NjczMTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwNTY3MzE1CkRhcyBtaXQgZGVtIE11ZWxsIGhhYiBpY2ggbmljaHQgdmVyc3RhbmRlbi4KClNlaW5lIEZyZXVuZGluIGJyaW5ndCBkZW4gTXVlbGwgcnVudGVyLCB3YWVocmVuZCBlciBpbiBpaHIgZHJpbiBzdGVja3Q/IE9kZXIKd2FydW0gc29sbHRlIGVyIHNvbnN0IGRhbWl0IGRlbiBNdWVsbCBydW50ZXIgYnJpbmdlbiBtdWVzc2VuPwoKR3J1c3MsCgogICBGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogKndpc2NoIFRyYWVuZW4gYXVzIGRlbiBBdWdlbiogKEJpcmR5LCAxNy4gQXByIDIwMDMsIDEzOjUxOjE4KToKfiMhIHJuPUZvb2JhciBydD0xMDUwNTczNTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDU2NzMxNQpXYXMgYmVrb21tc3QgRHUgZGVubiBmdWVyIFBvc3Q/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc3BpZWxwYXVzZSAoTWFuZHJhZ29uLCAxNy4gQXByIDIwMDMsIDE3OjAwOjM5KToKfiMhIHJuPU11YWRpYiBydD0xMDUwNTg3NzI0IHJnPXBvbGl6ZWkuYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwNTA1ODc3MjQKQWxzbyBsYW5nc2FtIHdlaXNzIGljaCwgd2FydW0gZXIgJ0ZyZWFrJyBoZWlzc3QgLi4uCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc3BpZWxwYXVzZSAoR3JpbW1ib3JuLCAxNy4gQXByIDIwMDMsIDE3OjAyOjA1KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDUwNTkxNjM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDU4NzcyNApEdSBpcnJzdCBEaWNoLiBFciBoZWlzc3QgIk11YWRpYiIuIFBocmVlZWsgaXN0IGRhcywgd2FzIGVyIGlzdC4gCk5laG1lbiB3aXIgZWluIEJlaXNwaWVsOiBEdSBoZWlzc3QgamEgYXVjaCBuaWNodCBkb29eVyJwcmltYSBLZXJsIi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCwgaW0gQW5kZXJMYW5kLi4uIChNdXBmZWwsIDE3LiBBcHIgMjAwMywgMjE6MzI6NDgpOgojIGZpbmdlciBhcmF0aApBcmF0aCBkZXIga2xlaW5lIElkbGVyCkFyYXRoIGlzdCBlaW5nZWxvZ2d0IHNlaXQgMjIuIEphbiAyMDAzLCAxNTo1NyB1bmQgaWRsZSBzZWl0IDg1ZCAwNDozMTo0NC4KUmFzc2UgICAgICAgICAgOiBNYWdpZXIgICAgICAgICAgICAgR2lsZGUgICAgICAgICAgOiBBYmVudGV1cmVyCkdlc2NobGVjaHQgICAgIDogbWFlbm5saWNoICAgICAgICAgIE1hZ2llcnN0YXR1cyAgIDogR2FzdG1hZ2llcgpBbHRlciAgICAgICAgICA6IDE3M2QgMDY6MDM6MjggICAgICBNYWdpZXJsZXZlbCAgICA6IDIyCkdlYnVydCAgICAgICAgIDogdm9yIEp1bmkgMTk5NwpBcmF0aCBpc3QgZWluIFNvaG4gdm9uIE1lcmxpbi4KCk5vY2ggMiBXb2NoZW4sIHVuZCBlciBpZGxldCAxMDAgVGFnZSA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoLCBpbSBBbmRlckxhbmQuLi4gKFZhbmlvbiwgMTcuIEFwciAyMDAzLCAyMjoxOToyMSk6Cn4jISBybj1NdXBmZWwgcnQ9MTA1MDYwNzk2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA2MDc5NjgKRXVyZSBVcHRpbWUgaXMgenUgaG9jaCAuLi4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWxpY2gsIGltIEFuZGVyTGFuZC4uLiAoQWthc2hhLCAxNy4gQXByIDIwMDMsIDIyOjIwOjM5KToKfiMhIHJuPVZhbmlvbiBydD0xMDUwNjEwNzYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDYwNzk2OApOdXIga2VpbiBOZWlkIDopCgpBa2FzaGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV1bGljaCwgaW0gQW5kZXJMYW5kLi4uIChNdXBmZWwsIDE3LiBBcHIgMjAwMywgMjI6MjE6NTMpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNTA2MTA3NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwNjA3OTY4CnNpbmQgZG9jaCBudXIgMTA2IHRhZ2UuLi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkZS5hbHQubmV0ZGlnZXN0IC0gYWdhaW4uIChSb25kYSwgMTcuIEFwciAyMDAzLCAyMzo0MDoyMik6CkZyb206IEJlcm5kIEp1ZXJnZW5zIDxiZXJuZEBwcm9tZWRpY28uY29tPgpOZXdzZ3JvdXBzOiBkZS5hbHQuc3lzYWRtaW4ucmVjb3ZlcnkKU3ViamVjdDogUmU6IFtSYW50XSBXaWUgSVNQcyBhdWYgS3VuZGVuZmFuZyBnZWhlbgpEYXRlOiBXZWQsIDE2IEFwciAyMDAzIDE2OjU2OjAxICswMjAwCgo+IEhhdHRlbiBkaWUgQW1pcyBuaWNodCBpcmdlbmR3byBpbSBJcmFrIGVpbiBDaGVtaWVsYWJvciBlbnRkZWNrdCwgZnVlcgo+IGRhcyBzaWUga3JhbXBmaGFmdCBuYWNoenV3ZWlzZW4gdmVyc3VjaHRlbiwgZGFzcyBtYW4gZG9ydCBpaHJlIFdlYXBvbnMKPiBvZiBNYXNzIERpc3RyYWN0aW9uIGhlcnN0ZWxsdGU/IEljaCBiaW4gbmljaHQgZ2FueiBhdWYgZGVtIGxhdWZlbmRlbiwKPiBoYWJlbiBzaWUgZGVuIE5hY2h3ZWlzIGRlbm4gbWl0dGxlcndlaWxlIGVyZl5XZ2VmdW5kZW4/CgpJbSBQcmluemlwIGphLCBhYmVyIGVzIHdhciBkaWUgRmVzdG5haG1lIGVpbmVzIE1hdGhlbGVocmVycyBpbgpCYWdkYWQsIGRlciBlaW4gR2VvZHJlaWVjaywgS3JlaWRlIHVuZCBkZW4gQnJvbnN0ZWluIGJlaSBzaWNoIGhhdHRlLgpDbGVhciBldmlkZW5jZSBvZiB0aGUgcG9zc2Vzc2lvbiBvZiB3ZWFwb25zIGZvciBtYXRoIGluc3RydWN0aW9uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBkZS5hbHQubmV0ZGlnZXN0IC0gYWdhaW4uIChNb250YW51cywgMTcuIEFwciAyMDAzLCAyMzo0MjozMik6Cn4jISBybj1Sb25kYSBydD0xMDUwNjE1NjIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDYxNTYyMgpXdWVyZGVzdCBkdSBNZWdhc2NobWFycm4gbGVzZW4gdW5kIGRlbiBsaW5rIHp1ciBha3R1ZWxsZW4gQXVzZ2FiZSB2b24gVGhlCk9uaW9uIGZvbGdlbiwgd3Vlc3N0ZXN0IGR1LCBkYXNzIGRpZSBBbWVyaWthbmVyIHN0YXR0ZGVzc2VuICJXZWFwb25zIG9mIEFzcwpEZXN0cnVjdGlvbiIgZ2VmdW5kZW4gaGFiZW4gLSBlaW4gYW5zY2hlaW5lbmQgaW4gZGVyIFNjaHd1bGVuc3plbmUgc2VocgpiZWxpZWJ0ZXIgUG9ybm8uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPYiBtaXIgZGFzIHdhcyBzYWdlbiBtdWVzc3RlLi4uIChMYXJpc2llbGxlLCAxOC4gQXByIDIwMDMsIDAzOjU2OjQ0KToKRHUgdHJpdHRzdCBJbWRhLgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKTGFyaSosIHNpY2ggaW1tZXIgbm9jaCBmcmFnZW5kLCBvYiBkYXMgd2FzIHp1IGJlZGV1dGVuIGhhdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9iIG1pciBkYXMgd2FzIHNhZ2VuIG11ZXNzdGUuLi4gKFZhbmlvbiwgMTguIEFwciAyMDAzLCAxMDoxNTowOCk6Cn4jISBybj1MYXJpc2llbGxlIHJ0PTEwNTA2MzEwMDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwNjMxMDA0CkJsYWVodW5nZW4/CgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmVzYWd0ZXMgTmZvcmQgOykgKFJvbGFuZCwgMjEuIEFwciAyMDAzLCAwNDo1NToyMyk6CkRlciBncm9zc2UgUmF1bSBtaXQgc2VpbmVyIG5pZWRyaWdlbiBEZWNrZSB1bmQgZGVuIGdyb2IgZ2VzY2huaXR0ZW5lbgpRdWVyYmFsa2VuIGhhdCBQbGF0eiBmdWVyIHNlaHIgdmllbGUgUGVyc29uZW4uIEtuYXJyZW5kZSBEaWVsZW4gZXJ6YWVobGVuCnVlYmVyIEhlbGRlbnRhdGVuIGxhZW5nc3QgdmVyZ2Vzc2VuZXIgQWJlbnRldXJlciwgYmVydWVobXRlciBhbHMgbWFuY2hlcgpXZWlzZSB1bnNlcmVyIFplaXQuCkFiZW50ZXVyZXIsIGFiZXIgYXVjaCBhbmRlcmUgQmV3b2huZXIgZGllc2VyIFdlbHQga29tbWVuIGhpZXJoZXIsIHVtCnNpY2ggenUgaW5mb3JtaWVyZW4sIGlocmUgRXJmYWhydW5nZW4gYXVzenV0YXVzY2hlbiBvZGVyIHNpY2ggaW4gZGVuCnZlcnNjaGllZGVuc3RlbiBXaXNzZW5zY2hhZnRlbiB6dSB2ZXJiZXNzZXJuLgpEdXJjaCBkaWUgaW1tZXIgb2ZmZW5lIFR1ZXIgc2NoZWludCBkaWUgYXVmZ2VoZW5kZSBTb25uZSBoZXJlaW4gdW5kIGZ1ZWxsdApkZW4gUmF1bSBtaXQgaWhyZW0gZ29sZGVuZW4gTGljaHQuIFNvbnN0IGdpYnQgZXMgaGllciBudXIgbm9jaCBkZW4gQXVzZ2FuZwppbSBOb3JkZW4sIHdlbGNoZXIgYXVmIGRpZSBIYWZlbnN0cmFzc2UgZnVlaHJ0IHVuZCBCaWxkZXIgYW4gZGVuIFdhZW5kZW4sCm1pdCBaZWljaG51bmdlbiB1bmQgR2VtYWVsZGVuIHZvbiBNb3JnZW5HcmF1ZW4uIEVpbnMgZGVyIEJpbGRlciBlcmxhZXV0ZXJ0CmRpZSBGdW5rdGlvbiBkZXIgR2lsZGUgdW5kIGVpbmUgZ3Jvc3NlIFVociBhbiBkZXIgV2FuZCB6ZWlndCwgd2FzIGRpZQpTdHVuZGUgc2NobGFlZ3QuIEFuIGVpbmVyIGFuZGVyZW4gV2FuZCBoYWVuZ3QgZWluZSBzdGVpbmVybmUgVGFmZWwgdW5kIGluCmVpbmVyIEVja2Ugc3RlaHQgZWluIGtsZWluZXMgUHJvamVrdGJyZXR0LgpOYWNoIG9iZW4gZnVlaHJ0IGVpbmUgVHJlcHBlIGluIGRhcyBCdWVybyBkZXMgRm9lcmRlcnZlcmVpbnMgUHJvamVrdApNb3JnZW5HcmF1ZW4gZS5WLiwgZGFzIER1IHVuYmVkaW5ndCBiZXN1Y2hlbiBzb2xsdGVzdC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9iZW4gdW5kIG5vcmRlbi4KRk5PUkQuCkVpbmUgU2NoYWNodGVsIChnZW9lZmZuZXQpLgpEYXMgSGFuZGJ1Y2ggZnVlciBBbmZhZW5nZXIuCkVpbiBIYW5kYnVjaCBmdWVyIEFuZmFlbmdlci4KRWluZSBTY2hhY2h0ZWwgU2Nob2tvbGFkZW4gLSBaaWdhcmV0dGVuLgpFaW4gUmljaHRibG9jay4KRWluZSBaZWl0dW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJlc2FndGVzIE5mb3JkIDspIChEZWVwYmx1ZSwgMjEuIEFwciAyMDAzLCAwOToyMDoyOCk6Cn4jISBybj1Sb2xhbmQgcnQ9MTA1MDg5MzcyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA4OTM3MjMKVW5kIDIgQW5mYWVuZ2VyaGFuZGJ1ZWNoZXI/Cld1c3N0IGljaCBkb2NoLCBkYXNzIER1IGJlc29mZmVuIGJpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldvenUgJ25lIERvbGxhci1Ob3RlIGFsbGVzIGd1dCBzZWluIGthbm4gLi4uIChWYW5pb24sIDIxLiBBcHIgMjAwMywgMDk6Mjc6MjkpOgpIYWIgaWNoIGdyYWQgaW4gZGVuIEtlcm5lbC1BcmNoaXZlbiBnZWxlc2VuOgoKUXVvdGUKSWYgeW91IGhhdmUgSVNBIGNhcmRzIGluIHlvdXIgc3lzdGVtLCByZW1vdmUgdGhlbSBmcm9tIHRoZSBzeXN0ZW0gYW5kCnJlLWluc2VydCB0aGVtICh3aXRoIHRoZSBwb3dlciBvZmYsIG9mIGNvdXJzZSkgLSB0aGV5IG1heSBoYXZlIGRldmVsb3BlZApzb21lIG94aWRpemF0aW9uIG9uIHRoZSBjYXJkIGVkZ2UgY29ubmVjdG9yLiBZb3UgY2FuIGFsc28gdHJ5IHNjcnViYmluZwp0aGUgY2FyZCBlZGdlIHdpdGggc29tZSBwbGFpbiBwYXBlciAoYSBVUyBkb2xsYXIgYmlsbCB3b3JrcyBldmVuIGJldHRlciwKYnV0IHlvdSBtaWdodCBub3QgaGF2ZSBhY2Nlc3MgdG8gZGVhZCBwcmVzaWRlbnRzIGluIEl0YWx5LikgCgpWKiwgaGF0IGdlbGFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV296dSAnbmUgRG9sbGFyLU5vdGUgYWxsZXMgZ3V0IHNlaW4ga2FubiAuLi4gKEdyaW1tYm9ybiwgMjEuIEFwciAyMDAzLCAwOTo1MzozMyk6Cn4jISBybj1WYW5pb24gcnQ9MTA1MDkxMDA0OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA5MTAwNDkKSmEsIGluIEl0YWxpZW4gc2luZCBlaGVyIHRvdGUgU3RhYXRzYW53YWVsdGUgaW4sIGFiZXIgZGllIGdpYnRzIG5pY2h0IGF1ZgpQYXBpZXIsIHNvbmRlcm4gZWhlciB1ZWJlciBlaW4gcGFhciBRdWFkcmF0bWV0ZXIgU3RyYXNzZW5ncmFiZW4gdmVydGVpbHQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXb3p1ICduZSBEb2xsYXItTm90ZSBhbGxlcyBndXQgc2VpbiBrYW5uIC4uLiAoQ2FkcmFjaCwgMjEuIEFwciAyMDAzLCAxMDowMDowMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1MDkxMTYxMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTA5MTAwNDkKRWlnZW50bGljaCBmYWVuZCBpY2ggdG90ZSBTdGFyYW53YWVsdGUgYWJlciBiZXNzZXIuLi4KCkNhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdvenUgJ25lIERvbGxhci1Ob3RlIGFsbGVzIGd1dCBzZWluIGthbm4gLi4uIChHcmltbWJvcm4sIDIxLiBBcHIgMjAwMywgMTA6MDQ6MjMpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDUwOTEyMDAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDkxMDA0OQpLZWluZSBFaW53YWVuZGUsIEV1ZXIgRWhyZW4uIEF1c3NlciBuYXR1ZXJsaWNoIEFsbHkgdW5kIEtvbGxlZ2VuLCBrbGFyLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXb3p1ICduZSBEb2xsYXItTm90ZSBhbGxlcyBndXQgc2VpbiBrYW5uIC4uLiAoTW9udGFudXMsIDIxLiBBcHIgMjAwMywgMTU6NDk6MjkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTA5MTIyNjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUwOTEwMDQ5CkhhYmUgaWNoIGRhIGdyYWQgZWluZW4gQXVmcnVmIHp1bSBNb3JkIGFuIGVpbmVyIGdhbnplbiBCZXJ1ZnNrbGFzc2UgZ2VsZXNlbj8KVm9uIENhZHJhY2gsIGRlciBzaWNoIGF1ZmZ1ZWhydCwgYWxzIHdhZXJlIGVyIFRlaWwgZGllc2VyIEdydXBwZT8KV2VubiBkYXMgbWFsIG5pY2h0IGF1ZiBqdXJpc3Rpc2NoZXMgR2xhdHRlaXMgZnVlaHJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGRlLmFsdC5uZXRkaWdlc3QgLSBhZ2Fpbi4gKEFyaywgMjMuIEFwciAyMDAzLCAxMTo0NjoxMik6Cn4jISBybj1Sb25kYSBydD0xMDUwNjE1NjIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MDYxNTYyMgpNYXNzIERpc3RyYWN0aW9uLCBzb3NvLiBVbmQgd2VsY2hlcyBWb2xrIHd1cmRlIGFiZ2VsZW5rdCwgZGllIEFtZXJpa2FuZXI/CgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtvbW10IG1pciBpcmdlbmR3aWUgYmVrYW5udCB2b3IuLi4gKEFwb2xsb25pYSwgMjQuIEFwciAyMDAzLCAxMjozMjoyOSk6Cn4jISBybj1Ob25uZSBydD0xMDUxMTgwMDU1IHJnPXdpdHplCn4jISB0aWQ9MTA1MTE4MDA1NQpBbHMgb2IgRHUgZGFzIHNvIGhhZXVmaWcgZXJsZWJlbiB3dWVyZGVzdC4uLiAqZyogT2J3b2hsLCBzbyBnYW56IG9obmUKR3J1bmRsYWdlIGlzc2VzIGphIG5pY2h0LCB3aWUgc2VsYnN0IGljaCB6dWdlYmVuIG11c3MgKmcqCgpBcG8qCmhhdCBhYmVyIGltbWVyIG5lIGVpZ2VuZSBQaXp6YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogbWcyLm11ZC5kZT8gKEdyaW1tYm9ybiwgMjQuIEFwciAyMDAzLCAxNjo1ODoyOCk6Cn4jISBvbj1Nb250YW51cyBvdD0xMDUxMTk1Nzk4IG9nPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHJuPUd1YXJkIHJ0PTEwNTExOTI0NTQgcmc9bW9yZ2VuZ3JhdWVuLnZlcmVpbgp+IyEgdGlkPTEwNTEwODQ3OTcKRmFsbHMgaWNoIGF1ZiBkZXIgU09tbWVycGFydHkgYmluLCBoYWx0ZSBpY2ggZWluZW4gVm9ydHJhZyB1ZWJlcnMgWlBLLiBVbmQKbWFjaGUgbmUgUG9kaXVtc2Rpc2t1c3Npb24gdWViZXIgZGFzIExpY2h0c3lzdGVtLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IG1nMi5tdWQuZGU/IChHcmltbWJvcm4sIDI0LiBBcHIgMjAwMywgMTY6NTg6MzApOgp+IyEgb249TWFuZHJhZ29uIG90PTEwNTExOTU4MzYgb2c9bW9yZ2VuZ3JhdWVuLnZlcmVpbgp+IyEgcm49TW9udGFudXMgcnQ9MTA1MTE5NTc5OCByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTA1MTA4NDc5NwpHcmlpaWltbW1tbWJvb29vb3Jubm5uISEhCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IG1nMi5tdWQuZGU/IChHcmltbWJvcm4sIDI0LiBBcHIgMjAwMywgMTY6NTg6MzEpOgp+IyEgb249TW9udGFudXMgb3Q9MTA1MTE5NTg4NiBvZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISBybj1NYW5kcmFnb24gcnQ9MTA1MTE5NTgzNiByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTA1MTA4NDc5NwpNdWx0aXBsZSBleGNsYW1hdGlvbiBtYXJrcyBhcmUgYWx3YXlzIGEgc2lnbiBvZiBhIGRpc2Vhc2VkIG1pbmQuIChULgpQcmF0Y2hldHQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogbWcyLm11ZC5kZT8gKEdyaW1tYm9ybiwgMjQuIEFwciAyMDAzLCAxNjo1OTo0OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1MTE5NjMxMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTEwODQ3OTcKVW5kIGRhcyBaaXRhdCBsYXV0ZXQ6CiJNdWx0aXBsZSBleGNsYW1hdGlvbiBtYXJrcyBhcmUgYSBzdXJlIHNpZ24gb2YgYSBkaXNlYXNlZCBtaW5kISIgKFQuClByYXRjaGV0dCwgRXJpYywgUy4xMjEpCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBtZzIubXVkLmRlPyAoTW9udGFudXMsIDI0LiBBcHIgMjAwMywgMTc6MDk6NTApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTExOTYzODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDUxMDg0Nzk3ClVuZCBNYW5kcmFnb24sIGljaCBrcmllZyBub2NoIDUwIGNlbnRzIHZvbiBkaXIuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IG1nMi5tdWQuZGU/IChPcmt0b2V0ZXIsIDI0LiBBcHIgMjAwMywgMTc6MTA6MDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTExOTYzODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDUxMDg0Nzk3CkR1IHdpcnN0IHNjaG9uIHdpc3Nlbiwgd2FydW0gZHUgZGlyIGRhcyBaaXRhdCBzbyBndXQgZ2VtZXJrdCBoYXN0LiA6KQoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBtZzIubXVkLmRlPyAoVG9lLCAyNC4gQXByIDIwMDMsIDE3OjE2OjMwKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDUxMTk3MDA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MTA4NDc5NwpkYXMgd2FyIGFiZXIgbmljaHQgdGhlbWEuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvc28gKEJyb3RuYWVsLCAyNS4gQXByIDIwMDMsIDE0OjA0OjA1KToKVGVuYXIgdGVpbHQgRGlyIG1pdDogbGFzcyBtaWNoIGRpciBoZWxmZW4gLSBsYXNzIG1pY2ggZGlyIGhlbGZlbiA6KSBJY2ggYmluClRlbmFyIHRlaWx0IERpciBtaXQ6IFNhaWxvciBUZW5hciB1bmQgaW0gTmFtZW4gZGVzIE1vbmRlcyB3ZXJkZSBpY2ggRGljaApUZW5hciB0ZWlsdCBEaXIgbWl0OiBiZXN0cmFmZW4hIFsxNDowMl0KCkJyb3RpIGdyaW5zdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClByb21wdCA6bykgKEFwb2xsb25pYSwgMjUuIEFwciAyMDAzLCAxNzo1NzozMCk6CkRlaW4gRnJldW5kIEVwcGkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpbVG9kOkxhcnNdIEVpbmUgS3JhbmtoZWl0IGhhdCBnZXJhZGUgRXBwaSB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgS3JhbmtoZWl0IHZlcmxpZWYgdG9lZGxpY2guXQoKQXBvKgpuZW5udCBzb3dhcyB1bHRyYXNjaG5lbGxlIEFiZmVydGlndW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUHJvbXB0IDpvKSAoR25vbWUsIDI1LiBBcHIgMjAwMywgMTc6NTg6MzQpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwNTEyODYyNTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUxMjg2MjUwCmFlaG0uLi4gaGVpc3N0IGRhcyBqZXR6dCwgd2VyIGRpY2gga251ZGRlbHQgc3RpcmJ0PyAqZHVjayoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQcm9tcHQgOm8pIChNb29uc2hpbmUsIDI1LiBBcHIgMjAwMywgMTg6MDM6MDEpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwNTEyODYyNTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUxMjg2MjUwCkhpZXIgZGFzIGdlc2FtdGUgR2VzY2hlaGVuOgpUZWFtIE1ldHplbG1laXN0ZXI6RXBwaSBiaW4ga3JhbmsgIQpFcHBpIHN0b2Vzc3QgZWluZW4gc2NobWVyemVyZnVlbGx0ZW4gc2NocmVpIGF1cy4KVGVhbSBNZXR6ZWxtZWlzdGVyOkVwcGkgMTMgbHAKRHUgeml0dGVyc3Qgdm9yIEFuZ3N0LgpFcHBpIHNpZWh0IHdpcmtsaWNoIHNlaHIga3JhbmsgdW5kIGxlaWRlbmQgYXVzLgpEdSBhcmdsc3QgZWluIHdlbmlnIHZvciBEaWNoIGhpbi4KRHUgd2lua3N0IEVwcGkgenUuClRlYW0gTWV0emVsbWVpc3RlcjpFcHBpIDAgbHAKRHUga3VzY2hlbHN0IERpY2ggYW4gRXBwaSBhbi4KSGlzQXN1bCB3aW5rdCBFcHBpIHp1LgpEZWluIEZyZXVuZCBFcHBpIGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4gCkVwcGkgdmVyemllaHQgc2NobWVyemVyZnVlbGx0IGRhcyBHZXNpY2h0LgpFcHBpIGZhZWxsdCB0b3QgenUgQm9kZW4uClRlYW0gTWV0emVsbWVpc3RlcjpUb2QgRVBQSSBIQVQgREFTIFRFQU0gVkVSTEFTU0VOLgpEdSBzaWVoc3QgZWluZSBkdW5rbGUgR2VzdGFsdCwgZGllIGV0d2FzIER1bnN0IGVpbnNhbW1lbHQgLi4uIG9kZXIgdmllbGxlaWNodApiaWxkZXN0IGR1IERpciBkYXMgYXVjaCBudXIgZWluIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYmVpIFhhbmQ6IChIaXNhc3VsLCAyNi4gQXByIDIwMDMsIDEyOjM1OjM0KToKRWluZSBIYXNlIHNjaGxhZW5nZWx0IHNpY2ggaGVyZWluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQcm9tcHQgOm8pIChCYW1iaSwgMjYuIEFwciAyMDAzLCAxNTozNzowNCk6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTA1MTI4NjU4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTEyODYyNTAKIkVwcGkgc3RvZXNzdCBlaW5lbiBzY2htZXJ6ZXJmdWVsbHRlbiBzY2hyZWkgYXVzLiIKc2NocmVpID0+IFNjaHJlaQpNZWxkIGRhcyBkb2NoIGJpdHRlIGRlbSBNYWdpZXIsIGRlciBkaWUgS3JhbmtoZWl0IHByb2dyYW1taWVydCBoYXQgb2RlciBoYXN0CkR1IG51ciBmYWxzY2ggYWJnZXRpcHB0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUHJvbXB0IDpvKSAoRmxhdXJvcywgMjYuIEFwciAyMDAzLCAxNjoyMDo0Nik6Cn4jISBybj1CYW1iaSBydD0xMDUxMzY0MjI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MTI4NjI1MApIYXR0ZSBDb3B5ICYgUGFzdGUgZ2VudXR6dC4KV2FlcmUgYWJlciBkYSBuaWNodCBkZXIgZWluemlnZSBUeXBvIGluIGRlbSBSYXVtLgoyIGhhdHRlIGljaCBhYmdlc2V0enQsIG5hamEsIGljaCB3ZXJkZSBqZXR6dCBiZXN0aW1tdCBuaWNodCBub2NobWFsIGhpbmdlaGVuLApudXIgdW0gZGllc2VuIFR5cG8gYWJ6dXNldHplbi4gOy0pCkFiZXIgaWNoIGthbm4gamEgZWluZSBNYWlsIGFuIHJtX3dhbGQgc2NoaWNrZW4uIDpvKQoKRmxhdXNjaGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCZXNjaHdlcmRlIChNYW5kcmFnb24sIDI3LiBBcHIgMjAwMywgMTg6MzM6MjEpOgp+IyEgcm49R2Vvcmdld2J1c2ggcnQ9MTA1MTQ2MDkwOCByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9MTA1MTQ2MDkwOApOYSBzZWkgbWFsIGZyb2gsIGRhc3MgRHUgbm9jaCBpbiBkZXIgTVBBIHNjaHJlaWJlbiBkYXJmc3QgdW5kIG5pY2h0IGVpbmZhY2gKZ2VqYWlsdCB3dXJkZXN0IChtYW5nZWxzIC9yb29tL2d1YW50YW5hbW8gaW4gL3Jvb20vamFpbCkgLi4uCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IG1nMi5tdWQuZGU/IChNYW5kcmFnb24sIDI4LiBBcHIgMjAwMywgMDE6NTU6NDgpOgp+IyEgb249TWFuZHJhZ29uIG90PTEwNTE0ODc3NDIgb2c9bW9yZ2VuZ3JhdWVuLnZlcmVpbgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTE0ODc2OTAgcmc9bW9yZ2VuZ3JhdWVuLnZlcmVpbgp+IyEgdGlkPTEwNTEwODQ3OTcKTWVpbiBWb3J0cmFnIGhhdCBuaWNodHMgbWl0IGRlciBNUEEgenUgdHVuIDstKQoKTWEqIChzY2hsdWNrdCB3aWVkZXJob2x0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IG1nMi5tdWQuZGU/IChHcmltbWJvcm4sIDI4LiBBcHIgMjAwMywgMDE6NTk6MjgpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNTE0ODc3NDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDUxMDg0Nzk3Cj4gTWFnaWVyIG9ubHkgLi4uIFdlbm4gaWNoIGVpbmVuIFZvcnRyYWcgaGFsdGUsIGRhbm4gbW9lY2h0ZSBpY2ggZG9jaCBiaXR0ZQo+IG51ciB1bmQgYXVzc2NobGllc3NsaWNoIFppZWxwdWJsaWt1bSB2b3IgbWlyIGhhYmVuLgpmaW5nZXIgZ3JpbW1ib3JuClZvbGxlciBOYW1lOiBHcmltbWJvcm4gZGVyIEF0aGVpc3Qgd2lsbCBkYXMgTWVlciBzZWhlbgpSYXNzZTogU2NobWV0dGVybGluZywgIEdpbGRlOiBXaW50ZXJzY2hsYWVmZXIsICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKTWFnaWVybGV2ZWw6IDIwIChMZWhybGluZykKCk5hIGFsc28uIFdpZSBEdSBzaWVoc3QgYmluIGljaCBMZWhybGluZyB1bmQgbXVzcyBub2NoIHZpZWwgbGVybmVuLiBOZXR0IHZvbgpEaXIgZGFzcyBEdSBEaXIgZGllIFplaXQgbmltbXN0IG1pciBkYXMgYWxsZXMgYmVpenVicmluZ2VuLiBUamEsIHdlbm4gaWNoIFJNCndhZXJlIG11ZXNzdGUgaWNoIGphIG5pY2h0IG1laHIgc292aWVsIGxlcm5lbiwgdW5kIGhhZXR0ZSBlcyBzaWNoZXIgYXVjaCBuaWNodApub2V0aWcgaW4gRGVpbmVtIFZvcnRyYWcgWndpc2NoZW5mcmFnZW4gc3RlbGxlbiB6dSBtdWVzc2VuLgoKR2RBW2V4LVJdCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogbWcyLm11ZC5kZT8gKEFuYXRvbCwgMjguIEFwciAyMDAzLCAwMjowMDoxNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1MTQ4Nzk2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTEwODQ3OTcKRGFzcyBpY2ggZGFzIG5vY2ggZXJsZWJlbiBkYXJmLiBHcmltbWJvcm4gc2FndCwgZXIgbXVlc3NlIG5vY2ggdmllbCBsZXJuZW4uLi4KCkEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBtZzIubXVkLmRlPyAoR3JpbW1ib3JuLCAyOC4gQXByIDIwMDMsIDAyOjAxOjM0KToKfiMhIHJuPUFuYXRvbCBydD0xMDUxNDg4MDE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MTA4NDc5NwpEdSBtaXNzaW50ZXJwcmV0aWVyc3QuIERpZSBCZWRldXR1bmcgaXN0OiAiSWNoIG11c3Mgbm9jaCB2aWVsIHp3aXNjaGVuZnJhZ2VuLAplcyBzZWkgZGVubiBkYXNzIGljaCBkZW4gbWlyIHp1c3RlaGVuZGVuIFRpdGVsIFJNIFNjaGF0dGVud2VsdCBoYWJlIi4KVW5kIG1laW5lIFp3aXNjaGVuZnJhZ2VuIHdhcmVuIHNjaG9uIGluIFVuaXZlcmFuc3RhbHR1bmdlbiBiZXJ1ZWNodGlndC4gCgpHZEFbZXgtUl0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBtZzIubXVkLmRlPyAoTWFuZHJhZ29uLCAyOC4gQXByIDIwMDMsIDAyOjA2OjA2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDUxNDg4MDk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MTA4NDc5NwpJbSBad2VpZmVsIGJlcnVmZSBpY2ggbWljaCBhdWYgTWFnaWUgLi4uCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBtZzIubXVkLmRlPyAoR3JpbW1ib3JuLCAyOC4gQXByIDIwMDMsIDAyOjEzOjAwKToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDUxNDg4MzY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MTA4NDc5NwpEYXMgZ2lidCBEaXIgYWJlciBhdWNoIGtlaW5lIG1pbGRlcm5kZSBVbXN0YWVuZGUuCgpHZEFbZXgtUl0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTY2hpZmZlIChab29rLCAyOC4gQXByIDIwMDMsIDA5OjE2OjI5KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDUxMTA1NjM0IHJnPWQuaW5zZWxuCn4jISB0aWQ9MTA1MTEwNTYzNApVbmQgZGllICJLbGVpbmVyZW4iIHNvbGxlbiBkYW5uIGF1ZiBkZW4gc3RlaGVuIGJsZWliZW5kZW4gU2NoaWZmZW4KdmVyZHVyc3Rlbj8gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNjaGlmZmUgKENyb2Z0LCAyOC4gQXByIDIwMDMsIDA5OjUyOjA5KToKfiMhIHJuPVpvb2sgcnQ9MTA1MTUxNDE4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTExMDU2MzQKV2lsbHN0IGR1IGRhbWl0IGFuZGV1dGVuIGRhcyBkdSBoaWVyIGluIG5hZWNoc3RlciBaZWl0IEh1bmdlci9EdXJzdAplaW5mdWVocnN0PyAsLSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBtZzIubXVkLmRlPyAoWm9vaywgMjguIEFwciAyMDAzLCAxMDoxNjoyNyk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTA1MTQ4NzU3NSByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTA1MTA4NDc5NwpBbHNvIGljaCBmYW5kIFBhdHJ5bnMgdW5kIFNpbHZhbmFzIFZvcnRyYWVnZSBlaWdlbnRsaWNoIGdhbnogYW11ZXNhbnQuIDotKQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBtZzIubXVkLmRlPyAoR3JpbW1ib3JuLCAyOC4gQXByIDIwMDMsIDExOjQ1OjA3KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDUxNTIzMDUzIHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD0xMDUxMDg0Nzk3Ck5hIHRvbGwsIHVuZCB3YXMgbWFjaGUgaWNoIGpldHp0IG1pdCBkZW0gdm9yYmVyZWl0ZXRlbiBad2lzY2hlbmZyYWdlbmthdGFsb2c/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBtZzIubXVkLmRlPyAoTWFuZHJhZ29uLCAyOC4gQXByIDIwMDMsIDExOjQ1OjI1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDUxNTIzMTA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MTA4NDc5NwpTY2hyZWRkZXJuIC4uLgoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogbWcyLm11ZC5kZT8gKEdyaW1tYm9ybiwgMjguIEFwciAyMDAzLCAxMTo0NjozNyk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTA1MTUyMzEyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTEwODQ3OTcKSGFoLCB1bmQgZGFubiBoYWVsc3QgRHUgZGVuIFZvcnRyYWcgZG9jaCBub2NoLiBOZW5lLCBkYXJhdWYgZmFsbGUgaWNoIG5pY2h0CnJlaW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEJlc2Nod2VyZGUgKEFuYXRvbCwgMjguIEFwciAyMDAzLCAxMzo1NjowNik6Cn4jISBybj1QYXRyeW4gcnQ9MTA1MTUzMDI0OCByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9MTA1MTQ2MDkwOAo+IERpZSBTdGljaHdvcnRlIFJlY2h0L0RlbW9rcmF0aWUvTW9yYWwgc2luZCBpbSBNdWQgbnVuIG1hbCBhYndlaWNoZW5kIHZvbSBSTCwKPiB1bmQgc28gc29sbHMgYXVjaCBzZWluICpnKgoKU3RpbW10LiBXaXIgaGFiZW4gaGllciBkcmVpIE9iZXJzdGUuIEltIFJMIGlzdCBlcyBudXIgR2VvcmdlIFcuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNlbHRzYW0gKEJhbWJpLCAyOS4gQXByIDIwMDMsIDA5OjMzOjE2KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDUxNTk3OTM3IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA1MTU2NjM0OApLb2VubnRlIG1hbiBuaWNodCBlaW5mYWNoIFJvbGFuZCBsb2VzY2hlbiwgc3BpZWxwYXVzZW4gb2RlciBpbnMgSmFpbCBzdGVja2VuPwoKQmFtYmksIHVtIGRpZSBCZWFjaHR1bmcgZGVyIFJ1YnJpayBiaXR0ZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2VsdHNhbSAoTGlhcmEsIDI5LiBBcHIgMjAwMywgMTE6Mjg6MjUpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNTE1OTc5Mzcgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD0xMDUxNTY2MzQ4Ck5FSU4hIEljaCBoYWJlIGdyYWRlIChuYWNoIDUgSmFocmVuIE1HKSBkaWUgS3Jpc3RhbGxrdWdlbHF1ZXN0IGdlbWFjaHQhIFVuZCBkdQp3aXJzdCBlaW5lbiBUZXVmZWwgdHVuIC4uLiA6KSAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNlbHRzYW0gKEdyaW1tYm9ybiwgMjkuIEFwciAyMDAzLCAxMjoxNDoxNCk6Cn4jISBybj1MaWFyYSBydD0xMDUxNjA4NTA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MTU2NjM0OApIYXQgZGFzIERlYnVnZ2VuIGRlcyBTY3JpcHRzIHdpcmtsaWNoIGZ1ZW5mIEphaHJlIGdlZGF1ZXJ0PwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGV1dHNjaGUgTGFiZWxzIGluIEdudXBsb3Q/IChab29rLCAyOS4gQXByIDIwMDMsIDE0OjU1OjAzKToKfiMhIHJuPVZhcmRpb24gcnQ9MTA1MTYyMDg2NSByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDUxNjIwODY1CldlciBzY2hyZWlidCBoZXV0IG5vY2ggRGV1dHNjaD8gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERldXRzY2hlIExhYmVscyBpbiBHbnVwbG90PyAoR3JpbW1ib3JuLCAyOS4gQXByIDIwMDMsIDE0OjU4OjE0KToKfiMhIHJuPVpvb2sgcnQ9MTA1MTYyMDkwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTE2MjA4NjUKSGVyZSBpbiB0aGUgRGF3bi1tdWQgaXQgaXMgY3VzdG9tYXJ5IHRvIHN0aWxsIHdyaXRlIGluIGdlcm1hbiwgYXMgdGhpcyBpcyBhCmdlcm1hbiBtdWQuIEJ1dCwgb24gdGhlIG90aGVyIGhhbmQsIERhd24gd2FzIG5vdCBjcmVhdGVkIHVzaW5nIGdudXBsb3QuLi4KCkd0QQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2VsdHNhbSAoU2Nob2tvLCAyOS4gQXByIDIwMDMsIDE1OjA4OjQ4KToKfiMhIHJuPUFuYXRvbCBydD0xMDUxNjIxMzYwIHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA1MTU2NjM0OAoKV2VyIGlzIGhpZXIga29tcGV0ZW50PyAqc3RhdW4qCgpTY2hva28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFNlbHRzYW0gKENyb2Z0LCAyOS4gQXByIDIwMDMsIDE1OjA5OjQ2KToKfiMhIHJuPVNjaG9rbyBydD0xMDUxNjIxNzI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MTU2NjM0OApBbmF0b2wgc2llaHQgZGFzIGJlc3RpbW10IHJlbGF0aXYuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthcnRlbiBmdWVyIEFiZW50ZXVyZXIgKEdyaW1tYm9ybiwgMjkuIEFwciAyMDAzLCAxNTozNjo0NSk6Cn4jISBybj1LbnVkc3NvbiBydD0xMDUxNjIzMjYyIHJnPWdpbGRlbi5hYmVudGV1cmVyCn4jISB0aWQ9MTA1MTYyMzI2MgpLYXJ0ZW4gaW0gQVNDSUktRm9ybWF0PyBXYXMgaGF0IGRlbm4gZWluZSB0Zi1XZWdlc2NyaXB0c2FtbWx1bmcgaW0gTUcgenUKc3VjaGVuPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTZWx0c2FtIChab29rLCAyOS4gQXByIDIwMDMsIDE2OjUyOjUwKToKfiMhIHJuPVNjaG9rbyBydD0xMDUxNjI1MDIxIHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA1MTU2NjM0OApab29rIHNjaGxhZWd0IGZlc3RlIG1pdCBlaW5lbSBLYXV0c2NodWtoYW1tZXIgb2IgZGVzIFdvcnRlcyB2b3IgKCEpIGF1ZgpTY2hva28gZWluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU2VsdHNhbSAoWm9vaywgMjkuIEFwciAyMDAzLCAxOTo1MDo1MCk6Cn4jISBvbj1ab29rIG90PTEwNTE2Mzg2Mzggb2c9c2VoZXIuZW50d2lja2x1bmcKfiMhIHJuPU1hdGlzIHJ0PTEwNTE2MzUzMTMgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD0xMDUxNTY2MzQ4Cj4gdW50IHpvb2sKRGFzIGlzdCBab29rLiBFciBpc3QgemllbWxpY2ggd2luemlnLCB3ZW5uIGF1Y2ggbnVyIGZ1ZXIgZWluZW4gS3VycGZ1c2NoZXIuCkRhbWl0IGhhdCBlciBldHdhIERlaW5lIEdyb2Vzc2UuCkVyIGZ1ZWhsdGUgc2ljaCBoZXV0ZSBzY2hvbiBiZXNzZXIuCkVyIGhhdCBrbGVpbmUgZ3J1ZW5lIFB1bmt0ZSBhdWYgc2VpbmVyIE5hc2UuClpvb2sgaGF0IGtlaW5lIFJ1ZXN0dW5nIGFuLCBrZWluZSBXYWZmZSBnZXp1ZWNrdCB1bmQgdHJhZWd0IGVpbgpGcmV1bmRzY2hhZnRzYmFuZCwgZWluZSBBcnp0dGFzY2hlIHVuZCBkaWUgUnVlc3R1bmcgZGVzIEh5ZHJhdG9ldGVycy4KCnEuZS5kLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhtbW0gOikgKFJvbGFuZCwgMjkuIEFwciAyMDAzLCAyMjoxNDo1NCk6CgoKZyBsaXN0ZQoKVGVhbSBUcnZlc1Bvd2VyOiBNYXRpcywgUmFtbXN0ZWluKCopLCBUeWxhawoKCi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhtbW0gOikgKFpvb2ssIDI5LiBBcHIgMjAwMywgMjI6MTc6MzkpOgp+IyEgcm49Um9sYW5kIHJ0PTEwNTE2NDcyOTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUxNjQ3Mjk0Cktlbm5zdCBEdSBuaWNodCBkaWUgVGFrdGlrICJ6dWVja2UtY2hhb3QiPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaG1tbSA6KSAoRmxhdXJvcywgMjkuIEFwciAyMDAzLCAyMjoxODowNyk6Cn4jISBybj1ab29rIHJ0PTEwNTE2NDc0NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUxNjQ3Mjk0Cktlbm5lIG51ciAnenVlY2tlIHVnaScgb2RlciAnenVlY2tlIFBpdGZhbGwnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBobW1tIDopIChSb2xhbmQsIDI5LiBBcHIgMjAwMywgMjI6NDA6MTMpOgp+IyEgcm49RmxhdXJvcyBydD0xMDUxNjQ3NDg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MTY0NzI5NAoKCiA6c2NobXVuemVsdC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2VuaWFsISAoQ2F0d2VhemxlLCAzMC4gQXByIDIwMDMsIDA4OjI2OjIyKToKfiMhIHJuPURlbW9uYXogcnQ9MTA1MTY2NzY4NyByZz1wYXJ0eQp+IyEgdGlkPTEwNTE2Njc2ODcKKmdydW1tZWwqCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJyaWVmc2NocmVpYmVuZSwgbGFnZW5kZSBGcmV1bmRlLi4uIChab29rLCAzMC4gQXByIDIwMDMsIDEwOjU2OjM4KToKfiMhIG9uPVpvb2sgb3Q9MTA1MTY5Mjk5MCBvZz1hbGxnZW1laW5lcwouLi4gbGF1ZmVuIG5vY2ggbWFsIEdlZmFociwgdm9uIG1pciBlaW4gcGVyc29lbmxpY2hlcyBTcGV6aWFsbGFnIHZlcnBhc3N0Cnp1IGJla29tbWVuISA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCcmllZnNjaHJlaWJlbmUsIGxhZ2VuZGUgRnJldW5kZS4uLiAoWm9vaywgMzAuIEFwciAyMDAzLCAxNTo0OTozNCk6Cn4jISBybj1ab29rIHJ0PTEwNTE2OTI5OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDUxNjkyOTk4CkFoLi4uIHdpcmQgc2NoZWluYmFyIGR1cmNoIGRpZSBLSSBkZXMgTWFpbGVycyBlcnNldHp0OgoKW1RvZDpMYXJzXSBFaW4gdWViZXJsYXN0ZXRlciBCcmllZnRyYWVnZXIgaGF0IGdlcmFkZSBQdWsgdW1nZWJyYWNodC4KW1RvZDpFaW4gdWViZXJsYXN0ZXRlciBCcmllZnRyYWVnZXJdIFNjaGljayBEdSBtaWNoIG5vY2ggbWFsIHp1IERlaW5lbiBnYW56ZW4KW1RvZDpFaW4gdWViZXJsYXN0ZXRlciBCcmllZnRyYWVnZXJdIEZyZXVuZGVuLi4uLgoKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJyaWVmc2NocmVpYmVuZSwgbGFnZW5kZSBGcmV1bmRlLi4uIChSb2NodXMsIDMwLiBBcHIgMjAwMywgMTU6NTA6MzApOgp+IyEgcm49Wm9vayBydD0xMDUxNzEwNTc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MTY5Mjk5OApXaWxsc3QgRHUgZXMgZWluYmF1ZW4gb2RlciBzb2xsIGljaCBlcyBtYWNoZW4/CgogIFJvY2h1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCcmllZnNjaHJlaWJlbmUsIGxhZ2VuZGUgRnJldW5kZS4uLiAoUHVrLCAzMC4gQXByIDIwMDMsIDE1OjUwOjM4KToKfiMhIHJuPVpvb2sgcnQ9MTA1MTcxMDU3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTE2OTI5OTgKIDogd2FlcmUgZ2VzcGFubnQgd2FzIHBhc3NpZXJ0IHdlbm4gZXIgZGFzIGpldHp0IHdpcmtsaWNoIG1hY2hlbiB0YWV0ZSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQnJpZWZzY2hyZWliZW5lLCBsYWdlbmRlIEZyZXVuZGUuLi4gKFpvb2ssIDMwLiBBcHIgMjAwMywgMTU6NTE6MjgpOgp+IyEgcm49Um9jaHVzIHJ0PTEwNTE3MTA2MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUxNjkyOTk4CkZsYWlyZ2VyZWNodCB3YWVyZSBkYXMgZ2xhdWJlIGljaCBlaGVyIERlaW4gSm9iIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXJmb2xnPyAoWm9vaywgMzAuIEFwciAyMDAzLCAxNTo1NToxOCk6CkRlaW4gRnJldW5kIEJhbWJpIHZlcnN1Y2h0LCBDcm9mdCB1bmQgc2ljaCBzZWxic3QgYXVzIGRlciBGZXJuZSB6dSBtb3RpdmllcmVuLgpCYW1iaSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpCYW1iaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRXJmb2xnPyAoR3JpbW1ib3JuLCAzMC4gQXByIDIwMDMsIDE1OjU2OjIyKToKfiMhIHJuPVpvb2sgcnQ9MTA1MTcxMDkxOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTE3MTA5MTgKVGphLCBKdW5ncywgdmllbCBTcGFzcywgdW5kIGhpbnRlcmhlciBkYXMgSGFlbmRld2FzY2hlbiBuaWNodCB2ZXJnZXNzZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVyZm9sZz8gKENyb2Z0LCAzMC4gQXByIDIwMDMsIDE1OjU2OjMyKToKfiMhIHJuPVpvb2sgcnQ9MTA1MTcxMDkxOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTE3MTA5MTgKRXIgc2NobGllc3N0IHp1bWluZGVzdCBlaW5lIFF1ZWxsZSBkZXIgQWJsZW5rdW5nIHZvbiBkZXIgQXJiZWl0IGF1cy4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVyZm9sZz8gKFZlY3RvciwgMzAuIEFwciAyMDAzLCAxNTo1Njo1Mik6Cn4jISBybj1Dcm9mdCBydD0xMDUxNzEwOTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MTcxMDkxOApnZWh0IGlociB3b2hsIGdsZWljaCB6dXJ1ZWNrIGluIG1lZ2FzY2htYXJybj86KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRXJmb2xnPyAoWm9vaywgMzAuIEFwciAyMDAzLCAxNTo1NzozMik6Cn4jISBybj1WZWN0b3IgcnQ9MTA1MTcxMTAxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTE3MTA5MTgKSGV5IQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVyZm9sZz8gKFZlY3RvciwgMzAuIEFwciAyMDAzLCAxNTo1Nzo1Mik6Cn4jISBybj1ab29rIHJ0PTEwNTE3MTEwNTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUxNzEwOTE4Cmh1c2NoIGh1c2NoIDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogImNoYW9zIiAtLSBlY2h0IGNoYW90aXNjaC4gKEh1bW5pLCAzMC4gQXByIDIwMDMsIDE3OjA2OjUyKToKfiMhIG9uPUh1bW5pIG90PTEwNTE3MTUyMDggb2c9Z2lsZGVuLmNoYW9zCn4jISBybj1Ccm90bmFlbCBydD0xMDUxNzEyNTA0IHJnPWdpbGRlbi5jaGFvcwp+IyEgdGlkPTEwNTE2MzE2NzIKSG1tLi4gV3VuZGVyIGFiaGFlbmdlbi4uIGd1dGUgSWRlZS4uLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUgKExpYXJhLCAgMS4gTWFpIDIwMDMsIDE4OjMwOjI2KToKCkRlaW4gRnJldW5kIE1vcmdvdGggdGVpbHQgRGlyIG1pdDogaWNoIGRhY2h0ZSBpbW1lciBpY2ggYmluIHN1ZXNzIHVuZCBuaWVkbGljaAoKTGlhcmEsIGhhdCBzY2hvbiB3aWVkZXIgUHJvYmxlbWUgbWl0IGlocmVtIFdlbHRiaWxkIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBpbW1lciB3aWVkZXIgbHVzdGlnIChHcmltbWJvcm4sICAyLiBNYWkgMjAwMywgMTA6NTc6NTIpOgp+IyEgcm49QW50aGVhIHJ0PTEwNTE4NjU1Mjggcmc9d3d3Cn4jISB0aWQ9MTA1MTgzNTcyMQpHbmguIFVuZCBpY2ggZ3Vja2UgZXh0cmEgdm9yaGVyIG5vY2ggb2IgaWNoIG5pY2h0IGlyZ2VuZHdvIGVpbmVuIEZlaGxlciBpbiBkZXIKVVJMIGRyaW5oYWJlLiBBYmVyIG1hbiBpc3QgamEgYmV0cmllYnNibGluZC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogaW1tZXIgd2llZGVyIGx1c3RpZyAoQW50aGVhLCAgMi4gTWFpIDIwMDMsIDExOjAxOjA0KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNTE4NjU1ODAgcmc9d3d3Cn4jISB0aWQ9MTA1MTgzNTcyMQpBdXNzZXJkZW0gd2Vpc3MgaWNoIGltbWVyIG5vY2ggbmljaHQsIHdhcyBhdWYgZGVyIGVCYXktU2VpdGUgc28gdG9sbCBzZWluCnNvbGwuCiIqKiBPdXIgU2l0ZSBJcyBUZW1wb3JhcmlseSBVbmF2YWlsYWJsZSBEdWUgVG8gU2NoZWR1bGVkIE1haW50ZW5hbmNlICoqIgpVbmQ/IFdhcyBzb2xsIG1pciBkYXMgamV0enQgc2FnZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBpbW1lciB3aWVkZXIgbHVzdGlnIChHcmltbWJvcm4sICAyLiBNYWkgMjAwMywgMTE6MDI6MTApOgp+IyEgcm49QW50aGVhIHJ0PTEwNTE4NjYwNjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUxODM1NzIxCkRhcyBzb2xsIERpciBzYWdlbiBkYXNzCmEpIGRpZSBBbWlzIERlcHBlbiBzaW5kCmIpIGluIGVpbmVyIGFuZGVyZW4gWmVpdCBsZWJlbgpjKSBEdSBuaWNodCBzY2huZWxsIGdlbnVnIHdhcnN0CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGltbWVyIHdpZWRlciBsdXN0aWcgKEthcmltYSwgIDIuIE1haSAyMDAzLCAxMTo1MzoxMik6Cn4jISBybj1BbnRoZWEgcnQ9MTA1MTg2NjA2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTE4MzU3MjEKV2llIGplZGVuIEZyZWl0YWcgdW0gZGllIFVocnplaXQgc2luZCBXYXJ0dW5nc2FyYmVpdGVuLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogaW1tZXIgd2llZGVyIGx1c3RpZyAoSmFkYXdpbiwgIDIuIE1haSAyMDAzLCAxMjowMTo0OCk6Cn4jISBybj1LYXJpbWEgcnQ9MTA1MTg2OTE5MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTE4MzU3MjEKTnUgZ2VodCdzIGFiZXIgd2llZGVyLgpKYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBpbW1lciB3aWVkZXIgbHVzdGlnIChMaWFyYSwgIDIuIE1haSAyMDAzLCAxMjoxNzozOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1MTg2NTg3MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTE4MzU3MjEKQmFoLCBhbGxlcyBBdXNyZWRlbiAuLi4gU3RlaCBkYXp1IHdpZSBlaW4gTWFubiwgbmljaHQgd2llIGVpbgowOC8xNS1NdWRkZXJ3dWVyc3RjaGVuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogaW1tZXIgd2llZGVyIGx1c3RpZyAoR3JpbW1ib3JuLCAgMi4gTWFpIDIwMDMsIDEyOjE5OjU3KToKfiMhIHJuPUxpYXJhIHJ0PTEwNTE4NzA2NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUxODM1NzIxCktsYXIgc3RlaGUgaWNoIGRhenUgZGFzcyBpY2ggbWljaCB2ZXJtYXVzZS4gSWNoIHNlaGUgbmljaHRzIHdpcmtsaWNoCmVocmVucnVlaHJpZ2VzIGRhcmluIG5pY2h0IHBlcmZla3QgbWl0IGVpbmVyIE1hdXMgdW1nZWhlbiB6dSBrb2VubmVuLiBJY2gKemllaGUgaGFsdCBkaWUgVGFzdGF0dXIgdm9yLgoKR2RBW2V4LVJdCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBpbW1lciB3aWVkZXIgbHVzdGlnIChMaWFyYSwgIDIuIE1haSAyMDAzLCAxMjoyOToxMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1MTg3MDc5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTE4MzU3MjEKU2Nob24gd2llZGVyIEF1c3JlZGVuLiBTY2hhZGUuIDopCkVzIGdlaHQgbmljaHQgZGFydW0sIGRhc3MgbWFuIHNpY2ggJ3Zlcm1hdXN0JyBvZGVyIHNvd2FzLiBKZWRlciB3ZWlzcywgZGFzcwptYW4gc2ljaCBtaXQgc29sY2hlbiBEaW5nZW4gYWIgdW5kIHp1IG1hbCB2ZXJ0dXQuIEFiZXIgZGEgZGVpbmUgUmVha3Rpb24KdW5nbGF1YmxpY2ggaGFydCBhdXNnZWZhbGxlbiBpc3QsIHNjaGVpbnN0IERVIGRhcyBuaWNodCB6dSB3aXNzZW4gdW5kIGZ1ZXIKZGljaCBlaW5lIGdld2lzc2UgUGVyZmVrdGlvbiBpbiBBbnNwcnVjaCB6dSBuZWhtZW4sIGRpZSBkdSBkYW5uIGJlaSBBbmRlcmVuCmFubWFobnN0LgpOdSBoYXN0ZSBhYmVyIHNlbGJlciBpbidzIEtsbyBnZWdyaWZmZW4gLi4uIHVuZCBhbGxlcywgd2FzIGFscyBSZWFrdGlvbiBrb21tdCwKaXN0IGV0d2FzIGluIGRlciBBcnQgdm9uOiBHcmltbWJvcm4gaXN0IGF1Y2ggbnVyIGVpbiBNZW5zY2g/CkFsc28gREFTIHBhc3N0IHdpcmtsaWNoIG5pY2h0IHp1IGRlaW5lciBiaXNoZXJpZ2VuIFNlbGJzdGRhcnN0ZWxsdW5nIGltIE11ZC4KTWVpbiBXZWx0YmlsZCB3YWNrZWx0IHVuZCBkdSBiaXN0IHNjaHVsZCEgUmVpc3MgZGljaCB6dXNhbW1lbiB1bmQgaG9sIGRlbgphbHRlbiBHcmltbWkgd2llZGVyIHJhdXMhIFNvbnN0IHN0YXJ0ZSBpY2ggaGllciBlaW5lIFVudGVyc2NocmlmdGVuc2FtbWx1bmcKb2RlciBvcmdhbmlzaWVyZSBTaXR6YmxvY2thZGVuIHZvciBkZXIgQUchIQoKTGlhcmEsIHdpbGwga2VpbiBNaXRsZWlkIGZ1ZXIgU2NobWV0dGVybGluZ2UgaGFiZW4gbXVlc3NlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogaW1tZXIgd2llZGVyIGx1c3RpZyAoTGlhcmEsICAyLiBNYWkgMjAwMywgMTI6NDg6MjMpOgp+IyEgcm49TGlhcmEgcnQ9MTA1MTg3MTM1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTE4MzU3MjEKSG0sIGhhYmUgaWNoIFNlbGJzdGRhcnN0ZWxsdW5nIGdlc2NocmllYmVuPyBBdSB3ZWlhLiBTbyBzY2hsaW1tIGlzdCBlcyBzY2hvbiEKRXMgaXN0IG5hdHVlcmxpY2ggX2tlaW5lXyBTZWxic3RkYXJzdGVsbHVuZyB2b24gZGlyIC4uLiBkdSBCSVNUIGhhcnQgdW5kIGR1CkJJU1QgcGVyZmVrdCB1bmQgZHUgaGFzdCBOSUNIVFMgTWVuc2NobGljaGVzIGFuIGRpciAuLi4gKkZMRUgqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBpbW1lciB3aWVkZXIgbHVzdGlnIChHcmltbWJvcm4sICAyLiBNYWkgMjAwMywgMTM6Mjc6MDMpOgp+IyEgcm49TGlhcmEgcnQ9MTA1MTg3MjUwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTE4MzU3MjEKV2FzIHNvbGwgZGFzIFJ1bWdlcmVkZT8gU2ljaGVyIGJpbiBpY2ggc28gZ3V0IHdpZSBwZXJmZWt0LCBuYXR1ZXJsaWNoIHNpbmQKbWVpbmUgQXVzc2FnZW4gcHJha3Rpc2NoIGltbWVyIGtvcnJla3QgKGtsYXIsIHdvIGdpYnRzIHNjaG9uIDEwMCUgaW4gZWluZXIKV2VsdCwgZGllIGF1ZiBzdGF0aXN0aXNjaGVuIFF1YW50ZW5lZmZla3RlbiBiZXJ1aHQ/KSwgc2VsYnN0dmVyc3RhZW5kbGljaCBiaW4KaWNoIG1lbnNjaGxpY2guIEludGVyZmVyZW56ZW4sIHdlbm4gbWFuIG1laHJlcmUgRGluZ2UgZ2xlaWNoemVpdGlnIGpvbmdsaWVydCwKa29lbm5lbiBoYWx0IHZvcmtvbW1lbi4gV2VubiBpY2ggbWljaCB3aWUgZGFzIGdhbnplIFN0dWRlbnRlbnBhY2sKaGF1cHRiZXJ1ZmxpY2ggbWl0IHZvbGxlciBLb256ZW50cmF0aW9uIHVtcyBNdWRmZW5zdGVyIGt1ZW1tZXJuIGtvZW5udGUgd2FlcmVuCnNpY2hlciBhdWNoIGRpZXNlIEludGVyZmVyZW56ZW4gbWluaW1pZXJiYXIsIGFiZXIgc28gaXN0IGRhcyBNdWRmZW5zdGVyIG51cgplaW5zIHZvbiAobW9tZW50YW4pIDI2IGFrdGl2ZW4gRmVuc3Rlcm4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGltbWVyIHdpZWRlciBsdXN0aWcgKExpYXJhLCAgMi4gTWFpIDIwMDMsIDEzOjMxOjU1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDUxODc0ODIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MTgzNTcyMQpIbS4gU2Nob24gd2llZGVyIEF1c3JlZGVuLgpEdSBzb2xsdGVzdCBkZWluZW0gR2VnZW51ZWJlciwgZGVuIGR1IGJlc2NodWxkaWdzdCwgZWluZW4gZmFsc2NoZW4gTGluawpnZXNjaHJpZWJlbiB6dSBoYWJlbiwgZGllc2UgVW1zdGFlbmRlIGF1Y2ggenVnZXN0ZWhlbiwgbWVpbnN0ZSBuaWNodD8KU2NobGllc3NsaWNoIHNpZWh0IG1hbiB1ZWJlciBkaWUgTVBBIG5pY2h0LCB1bnRlciB3ZWxjaGVuIEJlZGluZ3VuZ2VuIGVpbgpBcnRpa2VsIHp1c3RhbmRlIGtvbW10LgoKTmFqYSwgc2NoYWRlIGRhcy4gRHUgYmlzdCBuaWNodCBtZWhyIGtuYWNraWcsIHVuZCBkZWluZSBaYWVobmUgdW5kIEtyYWxsZW4Kc2luZCBzdHVtcGYgZ2V3b3JkZW4uIE11c3MgaWNoIGhhbHQgbWVpbiBXZWx0YmlsZCBhZW5kZXJuIC4uLiBoYXQgYmVpIEJvaW5nCnVuZCBMdWcgamEgYXVjaCBnZWtsYXBwdC4gOikKCkxpYXJhLCBzYW1tZWx0IGRhbm4gYWIgamV0enQgZnVlciBlaW5lbiBHcmltbWktUm9sbGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaW5oZWl0bGljaGUgUmVnaW9uc21hZ2llcmxldmVsLiAoR3JpbW1ib3JuLCAgMi4gTWFpIDIwMDMsIDEzOjMyOjE1KToKfiMhIHJuPVpvb2sgcnQ9MTA1MTg3NDg2OCByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA1MTg3NDg2OApEYXMgaXN0IG5hdHVlcmxpY2ggZHJlaXN0IGdlbG9nZW4uIEljaCBoYWJlbiBuYWNoIHdpZSB2b3IgTGV2ZWwgMjAuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QgKFJNIFNjaGF0dGVud2VsdCBieSBuYXR1cmUpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogaW1tZXIgd2llZGVyIGx1c3RpZyAoR3JpbW1ib3JuLCAgMi4gTWFpIDIwMDMsIDEzOjM2OjUyKToKfiMhIHJuPUxpYXJhIHJ0PTEwNTE4NzUxMTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUxODM1NzIxCk1laW5lIGxhbmdqYWVocmlnZSBFcmZhaHJ1bmcgbGVndCBlcyBuaWNodCBuYWhlLCBibGluZCBiZWkgYW5kZXJlbiBMZXV0ZW4KU29yZ2ZhbHQgenUgdmVybXV0ZW4sIGdlc2Nod2VpZ2UgZGVubiBlaW5lIE5hZWhlIHp1IFBlcmZla3Rpb24uIEluc29mZXJuIHNlaGUKaWNoIGtlaW5lbiBHcnVuZCBpaG0gImRpZXNlbGJlbiBVbXN0YWVuZGUiIHp1enVnZXN0ZWhlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IGltbWVyIHdpZWRlciBsdXN0aWcgKExpYXJhLCAgMi4gTWFpIDIwMDMsIDEzOjQ2OjA5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDUxODc1NDEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MTgzNTcyMQpWZXJzdGVoZSBpY2guIEdlaHQgbWlyIGdlbmF1c28uCkFsbGVyZGluZ3Mgc29sbHRlIG1hbiBhdWNoLCBhYmVyIG5pY2h0IG51ciB3ZWdlbiBkZXIgTW9lZ2xpY2hrZWl0LCBkYXNzIGRlcgpGZWhsZXIgZWJlbiBkb2NoIGJlaSBlaW5lbSBzZWxic3QgbGllZ3QsIGRlbiBSZXNwZWt0IHZvciBBbmRlcmVuIHdhaHJlbiB1bmQKX25pY2h0XyBnbGVpY2ggbG9zYmxvZWtlbi4gCk1laW5lIExlYmVuc2VyZmFocnVuZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBpbW1lciB3aWVkZXIgbHVzdGlnIChHcmltbWJvcm4sICAyLiBNYWkgMjAwMywgMTM6NDg6MjEpOgp+IyEgcm49TGlhcmEgcnQ9MTA1MTg3NTk2OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTE4MzU3MjEKR2lidCBFaW56ZWxmYWVsbGUgd28gZGFzIHZvcmtvbW10LCBzdHJlaXRlIGljaCBuaWNodCBhYi4gSW0gc3RhdGlzdGlzY2hlbgpNaXR0ZWwgbGllZ2UgaWNoIGFiZXIgd2VzZW50bGljaCByaWNodGlnZXIgdW5kIHplaXRzcGFyZW5kZXIgZnVlciBtaWNoICh2b24KbmVydmVuc2Nob25lbmQgZ2FyIG5pY2h0IHp1IHJlZGVuKSB3ZW5uIGljaHMgYW5kZXJzIHJ1bSBoYW5kaGFiZS4KTWVpbmUgTGViZW5zZXJmYWhydW5nLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogaW1tZXIgd2llZGVyIGx1c3RpZyAoTGlhcmEsICAyLiBNYWkgMjAwMywgMTM6NDg6NDEpOgp+IyEgcm49TGlhcmEgcnQ9MTA1MTg3NTk2OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTE4MzU3MjEKTmFjaHRyYWc6CkplZGVuZmFsbHMgbmljaHQgYmVpIHNvbGNoIFRyaXZpYWxpdGFldGVuIHdpZSBmYWxzY2hlbiBMaW5rcy4gKnp3aW5rZXIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0ZXN0IChQaXRmYWxsLCAgMi4gTWFpIDIwMDMsIDE4OjA5OjU3KToKRGllcyBpc3QgbnVyIGVpbiBUZXN0YXJ0aWtlbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB0ZXN0IChHcmltbWJvcm4sICAyLiBNYWkgMjAwMywgMTg6MTE6MTEpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDUxODkxNzk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MTg5MTc5NwpTb2xhbmdlIER1IG5pY2h0ICJzL2FydC8vIiBtZWluc3QuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB0ZXN0IChQaXRmYWxsLCAgMi4gTWFpIDIwMDMsIDE4OjEzOjQ0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDUxODkxODcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MTg5MTc5NwpuZWluIG1laW5lIGljaCBuaWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHRlc3QgKEJvaW5nLCAgMi4gTWFpIDIwMDMsIDE4OjE0OjQ5KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTA1MTg5MjAyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTE4OTE3OTcKVGVzdCBnZWx1bmdlbiAuLi4KICBCb2luZyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmFlaG5jaGVuIC4uLiAoTGlhcmEsICAyLiBNYWkgMjAwMywgMjM6MjA6MDQpOgpbQWJlbnRldWVyOkxpYXJhIHdlZGVsdCBtaXQgZWluZW0gJ0ZyZWloZWl0IGZ1ZXIgdmVyc2tsYXZ0ZQpaYXViaXMnLUZhZWhuY2hlbi5dCltBYmVudGV1ZXI6V2hpdGVUaWdlciB3ZWRlbHQgbWFsIG1pdCBlaW5lbSAnQ2hhb3MgZnVlciBDaGFvdGVuJy1GYWVobmNoZW4uXQpbQWJlbnRldWVyOkRhcmt3aW5nXSBQaXRmYWxsIGJyYXVjaHQgbWVociBGYWVobmNoZW4KW0FiZW50ZXVlcjpEYXJrd2luZyB3ZWRlbHQgd2lsZCBtaXQgZGVtICJEZXIgV2VnaGllciBpc3QgbmUgTHVzY2hlIi1GYWVobmNoZW5dCltBYmVudGV1ZXI6RGFya2xvciAgd2VkZWx0IG1pdCBlaW5lbSAnS2F0emVua3JpZWdlciBmdWVyIGFsbGUnLUZhZWhuY2hlbi5dCltBYmVudGV1ZXI6UGl0ZmFsbCBuaWNrdCBEYXJrd2luZyB6dS5dCltBYmVudGV1ZXI6S2FyaW1hIHdlZGVsdCBtaXQgZWluZW4gJ0Fid2VydGVuLUZhZWhuY2hlbiBhYndlcnRlbictRmFlaG5jaGVuLl0KW0FiZW50ZXVlcjpXaGl0ZVRpZ2VyIHdpbmt0IG1pdCBlaW5lbSAnR2lsZGVuIGF1ZndlcnRlbictRmFlaG5jaGVuLl0KW0FiZW50ZXVlcjpMaWFyYV0gd2lsbCBpY2ggd2lzc2VuIHdvZnVlcj8gOykKW0FiZW50ZXVlcjpXaGl0ZVRpZ2VyXSAnQXVmd2VydGVuLUZhZWhuY2hlbicgQXVmd3FlcnRlbj8KW0FiZW50ZXVlcjpQaXRmYWxsIHdlZGVsdCB3aWxkIG1pdCBlaW5lbSAiRGFnZWdlbiIgLSBGYWVobmNoZW4uXQpbQWJlbnRldWVyOktsZWluZXJ5b2RhIHdlZGVsdCBtaXQgZWluZW0gIlJ1aGUgamV0enQiIC0gRmFlaG5jaGVuIDopXQpbQWJlbnRldWVyOkZlaWdsaW5nXSAtYiBpc3QgZGllc2VyIEZhZWhuY2hlbnZpcnVzIHNlaHIgYW5zdGVja2VuID8gOy0pCltBYmVudGV1ZXI6V2hpdGVUaWdlciBuaWNrdCBtaXQgZWluZW0gRmFlaG5jaGVuLV0KW0FiZW50ZXVlcjpEYXJrd2luZyB3ZWRlbHQgbWl0IENha2V5J3MgTGllYmxpbmdzZmFlaG5jaGVuLl0KCihVbndpY2h0aWdlLCBlaWdlbnRsaWNoIGF1ZiAtYiBnZWhvZXJlbmRlIERpbmdlIGdlc3RyaWNoZW4uIDspCgoKTGlhcmEsIGd1Z2d0IERhcmt3aW5nIG5ldWdpZXJpZyBhbiAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRlLmFsdC5uZXRkaWdlc3QgYWdhaW4gKFJvbmRhLCAgMy4gTWFpIDIwMDMsIDAxOjExOjMzKToKSmV0enQgd2Vpc3MgaWNoLCB3YXMgaWNoIGF1ZiAtdHYgdmVybWlzc2UuLi4KClJvbmRhCgpNZXNzYWdlLUlEOiA8YjhyamRxJGRhYiQwMiQxQG5ld3MudC1vbmxpbmUuY29tPgpGcm9tOiAiT2xpdmVyIFdpZWNobWFubiIgPE9saXZlci5XaWVjaG1hbm5AZXBvc3QuZGU+Ck5ld3Nncm91cHM6IGRlLnJlYy50di5taXNjClN1YmplY3Q6IFJlOiBbQkJdIFNjaHJlaWJ0IG1hbiBLb2UgbWl0ICJoIgpEYXRlOiBUaHUsIDEgTWF5IDIwMDMgMTg6NTE6NTYgKzAyMDAKCiJKb2VyZyBCb2V0dGNoZXIiIDx3ZWJtYXN0ZXJAZWJheS1rdW5kZW4uZGU+IHNjaHJpZWIKZGFzIFRoZW1hOiAgW0JCXSBTY2hyZWlidCBtYW4gS29lIG1pdCAnaCc6Cj4KPiBOdW4gYWJlciB3aXJrbGljaCwgZGFzIGlzdCBkb2NoIFJlYWxzYXRpcmUsIG9kZXI/Cj4KCgouLi51bmQgYXVzIGdlbmF1IGRlciBnbGVpY2hlbiBCQi1Gb2xnZToKCi0gQXVmZm9yZGVydW5nIGFuIFBldHJhOiAiTmVubmUgZHJlaSBndXRlIEdydWVuZGUsIGtlaW5lbiBTZXggenUgaGFiZW4uIgpQZXRyYTogIklOS09OVEVOWiEgIEphLCBkYXMgaXN0IHNjaG9ubWFsIGVpbiB3aWNodGlnZXIgR3J1bmQgLi4uIgo9PT09PT09PT09PT0KCi0gRGllIEJld29obmVyIHNwaWVsZW4gc2Nob24gc2VpdCBnZXJhdW1lciBaZWl0IFNyYWJibGUgKGVpbiBTcGllbCwgYmVpCmRlbSBlcyB1LmEuIGRhcnVtIGdlaHQsIGR1cmNoIGRhcyBMZWdlbiB2b24gQnVjaHN0YWJlbmNoaXBzIHp1CnNpbm52b2xsZW4gV29lcnRlcm4gZWluZSBtb2VnbGljaHN0IGhvaGUgUHVua3R6YWhsIHp1IGVyemllbGVuKSwgYWxzIEphbgplbmRsaWNoIGZyYWd0OiAiU2FndCBtYWwsIHdvZnVlciBzaW5kIGRpZSBlaWdlbnRsaWNoIGRpZSBaYWhsZW4gcmVjaHRzCnVudGVuIG5lYmVuIGRlbiBCdWNoc3RhYmVuIC4uLj8iCj09PT09PT09PT09PQoKLSBQZXRyYSBsZWd0IGRpZSBCdWNoc3RhYmVuIEctSS1TIGF1ZnMgU2NyYWJibGUtQnJldHQuCkphbiB2ZXJtdXRldCwgZGFzIHdpcmQ6ICJHaXNzZW4/IgpOYWRqYSBsaWVmZXJ0IGlocmUgVm9yaGVyc2FnZTogIkdpc2VsYSEiClBldHJhIGxlZ3QgZWluICJZIiBhbnMgV29ydGVuZGUgZGF6dSB1bmQga2xhZXJ0IGF1ZjoKICAgICAiTmVpbiwgR0lTWSEgRGVyIHZvbiBkZW4gR3J1ZW5lbiAuLi4hIgo9PT09PT09PT09PT0KCi0gUGV0cmEgbGVndCBkaWUgQnVjaHN0YWJlbiBXLUUtSC1OIGFscyB2ZXJtZWludGxpY2ggc2lubnZvbGxlcyBXb3J0CmF1ZnMgU2NyYWJibGUtQnJldHQuCkphbjogIldhcyBzb2xsIGRlbm4gZGFzIGhlaXNzZW4/IgpQZXRyYTogIk5hOiBXRUhOISBXaWUgaW4gZGVtIFNhdHo6ICdEZW4gV2luZCB2b24gZGVuIEJhZXVtZW4gd2VobiAuLi4nIgo9PT09PT09PT09PT0KCgogICAgQmlzdCBkdSBpbSBLb3BmIGZhc3Qgdm9lbGxpZyBob2hsLAogICAgZGFubiBtYWNoc3QgZHUgbWl0IGJlaSBFbmRlbW9sICEhISAgO28pCgogICAgU0NOUiwgICAgT2xpdmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUdWVja2VuIGRlciBUZWNobmlrIC0gb2RlcjogZGUuYWx0Lm5ldGRpZ2VzdCAoUm9uZGEsICAzLiBNYWkgMjAwMywgMDE6Mzk6MTApOgpGcm9tOiBBbmRyZWFzIEl3YW5vd2l0c2NoIDxhbmRyZWFzLml3YW5vd2l0c2NoQGdteC5kZT4KRGF0ZTogVGh1LCAwMSBNYXkgMjAwMyAyMDoyODoyOCArMDIwMApNZXNzYWdlLUlEOiA8Yjhyb3VmJGQyNDEwJDFASUQtMTIxNTEyLm5ld3MuZGZuY2lzLmRlPgoKCkZyYXVlbiB2ZXJzdGVoZW4gbmljaHRzIHZvbiBUZWNobmlrLiBEYXMgaXN0IHNvenVzYWdlbiBkZXIgMS4gSGF1cHRzYXR6LAp1bmQgZXMgd2FlcmUgbmljaHQgd2VpdGVyIHNjaGxpbW0sIHdlbm4gc2llIGF1Y2ggZGllIEZpbmdlciBkYXZvbiBsaWVzc2VuLgoKTWVpbmUgTXV0dGVyIGJla29tbXQsIHdpZSBiZXJlaXRzIGZydWVoZXIgZXJ3YWVobnQsIHZvbiBtaXIgZGFzIGpld2VpbHMKYWJnZWxlZ3RlIEhhZW5kaWUsIHdlbm4gaWNoIGF1ZmdydW5kIGRlciBWZXJ0cmFnc3ZlcmxhZW5nZXJ1bmcgZWluIG5ldWVzCmVyaGFsdGUuIFNpZSBrb21tdCBlcnN0YXVubGljaCBndXQgbWl0IGRlciBUZWNobmlrIHp1cmVjaHQgdW5kCnZlcnNjaGlja3QgYXVjaCByZWNodCBnZXJuZSBTTVMtTmFjaHJpY2h0ZW4uCgpOdW4ga29tbXQgZGFzIFVuZ2x1ZWNrLCBpbiBGb3JtIGVpbmVyIGRvcHBlbHRlbiBFbnRkZWNrdW5nOiBTaWUgaGF0CmhlcmF1c2dlZnVuZGVuLCBkYXNzIG1hbiBTTVMtTmFjaHJpY2h0ZW4gYXVjaCBhbiBGZXN0bmV0emFuc2NobHVlc3NlCnNjaGlja2VuIGthbm4gdW5kIGVpbmUgZnJldW5kbGljaGUgU3RpbW1lIGRpZSBOYWNocmljaHQgZGVtIEVtcGZhZW5nZXIKdm9ybGllc3QuIFVuZCBzaWUgaGF0IGhlcmF1c2dlZnVuZGVuLCBkYXNzIG1hbiBCaWxkbmFjaHJpY2h0ZW4gKGRpZQpiZWthbm50ZW4gdW5kIGJlbGllYnRlbiBTbWlsaWVzLCBHZWJ1cnRzdGFnc3RvcnRlbiBldGMuKSB2ZXJzY2hpY2tlbgprYW5uLiBNaXQgd2VpYmxpY2hlciBMb2dpayBmb2xndGUgZGllIEZyYWdlLCB3YXMgcGFzc2llcnQsIHdlbm4gbWFuIGVpbmUKQmlsZG5hY2hyaWNodCBhbiBlaW5lbiBGZXN0bmV0emFuc2NobHVzcyBzY2hpY2t0LiBEYSBrZWluZSBicmF1Y2hiYXJlCkFudHdvcnQga2FtLCBmb2xndGUgZGVyIFRlc3QuCgpVbm11dDogU2Nob24gZGVyIDcuIEFucnVmIGRlciBUZWxla29tLiAiV2lyIGhhYmVuIGVpbmUKU01TLUt1cnptaXR0ZWlsdW5nIGZ1ZXIgU2llOiBEZWx0YSAtIEV1cm8gLSBEb2xsYXIgLSBlIC0gZSAtIENlbnQgLSBZZW4gLQpncmF2aXMgLSBVbWdla2VocnRlc0ZyYWdlemVpY2hlbiAtIFB1bmt0IC4uLiIgKmFyZ2gqCgpLaWRzLCBkb24ndCB0cnkgdGhpcyBhdCBob21lLiBXaWUgY2FuY2VsdCBtYW4gc28gZWluZW4gU2NoZWlzcz8KCkxlaWNodCBnZW5lcnZ0ZSBHcnVlc3NlCkFuZHJlYXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGltbWVyIHdpZWRlciBsdXN0aWcgKEdyaW1tYm9ybiwgIDMuIE1haSAyMDAzLCAwNDoyODowNik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTA1MTkyODg4MCBvZz13d3cKfiMhIHJuPVNreSBydD0xMDUxOTE3MjAxIHJnPXd3dwp+IyEgdGlkPTEwNTE4MzU3MjEKKmdhZWhuKiBJbW1lciB3aWVkZXIgc2Nob2VuIHdlbm4gTGV1dGUgc2ljaCB6dSBsYW5nZSBnZWxhdWZlbmVuIERpc2t1c3Npb25lbgphZXVzc2VybiB1bmQgZGFubiBtZWluZW4gc2llIHdpZWRlciB2b24gQW5mYW5nIGFuIGF1ZnJvbGxlbiB6dSBtdWVzc2VuLiBIYXN0CkR1IHNjaG1hcnJuIGFiYmVzdGVsbHQgb2RlciB3YXIgZGFzIGpldHp0IG51ci4uLiBtYW5nZWxuZGVzIEdlc2NoaWNrPwoKVWVicmlnZW5zLCBkZXIgU3BydWNoIG1pdCBkZW0gV2F5bmUgaXN0IGphIHRvdGFhYWwgY29vbC4gV28gZ2lidHMgc293YXMgZGVubgpub2NoPyBJY2ggaGF0dGUgZ2VkYWNodCBkaWVzZSBBcnQgc2VpdCBldHdhIHp1ciBaZWl0IG1laW5lcyBBYmlzIGF1c2dlc3RvcmJlbi4KU2luZCBkYXMgVm9yYm90ZW4gZWluZXMgODBlci1KYWhyZS1SZXZpdmFscz8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogSnVudGEgKEphZGF3aW4sICAzLiBNYWkgMjAwMywgMTc6NTQ6MDYpOgp+IyEgb249SmFkYXdpbiBvdD0xMDUxOTc3MDIzIG9nPXN1Y2hlLWJpZXRlCn4jISBybj1Dcm9mdCBydD0xMDUxOTc2OTY3IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTA1MTgyNTg1MgpEZXNoYWxiIGlzdCBlcyBqYSBzbyB3aWNodGlnLCBiZWkgamVkZW0gUHV0c2NoIGRhYmVpenVzZWluLiA7KQpKYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogaW1tZXIgd2llZGVyIGx1c3RpZyAoRGVtb25heiwgIDYuIE1haSAyMDAzLCAyMDo0MjozNik6Cn4jISBybj1MaWFyYSBydD0xMDUxODc1MTE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MTgzNTcyMQoKTGlhcmE/CgpJY2ggaGF1IERpciBkYW5uIGRlbW5hZXh0IGVpbmUgcmVpbi4gSWNoIGJpbiBpY2gsIGJ6dy4gTHVnIGlzdCBMdWcuCldlbHRiaWxkIGFlbmRlcm4sIGJhaC4uLi4KCkkuQS5MLgpELgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBKYWFhYWFhYSwgZXMgZ2lidCBpaG4gd2llZGVyLi4uIChNYW5kcmFnb24sICA3LiBNYWkgMjAwMywgMTM6Mjg6MTYpOgp+IyEgcm49TW9yZ290aCBydD0xMDUyMzA2ODcwIHJnPXRyZWZmZW4KfiMhIHRpZD0xMDUyMzA0MDczCihNKikrKyA9IChOKikgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xlcmlrZXIgdW50ZXJlaW5hbmRlciAuLi4gKExpYXJhLCAgNy4gTWFpIDIwMDMsIDEzOjM1OjI2KToKRGVpbiBGcmV1bmQgQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogaWNoIGJyYXVjaCBoZXJhdXNmb3JkZXJ1bmcsIG5pY2ggc293YXMKRGVpbiBGcmV1bmQgQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogaGllci4uLiBpY2ggYmluIGthbmRyaWp1ZW5nZXIsIG5pY2h0CkRlaW4gRnJldW5kIEJyb3RuYWVsIHRlaWx0IERpciBtaXQ6IHNhcGhpbmF3YXNjaGxhcHBlbmdlamFtbWVyZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlbiB3dW5kZXJ0cz8gKEdydW1wZiwgIDcuIE1haSAyMDAzLCAyMjowNTowNSk6ClJpcHBvciBzYWd0OiBwYW56ZXIga2VubiBpY2gsYWJlciBnZXJhZXVzY2ggaGFiIGljaCBub2NoIG5pZSBnZXNlaGVuCkdydW1wZiBncnVtcGZ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGlzYXN1bCB1bmQgZGllIEZvbGdlbjogKERlbW9uYXosICA3LiBNYWkgMjAwMywgMjM6MTc6NTUpOgoKTXVkZGVuIG1hY2h0IGtyYW5rOgoKRGVpbiBGcmV1bmQgSGlzYXN1bCB0ZWlsdCBEaXIgbWl0OiBkaWVzZXMgZG9vZmUgTG9jaCBzb2xsIG1hbCByZXNldGVuIQpOYWphLCBudXIgZGFzIEVyc3RlLi4uCkQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGlzYXN1bCB1bmQgZGllIEZvbGdlbjogKEhpc2FzdWwsICA3LiBNYWkgMjAwMywgMjM6MjU6MTgpOgp+IyEgcm49RGVtb25heiBydD0xMDUyMzQyMjc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjM0MjI3NQpEYXMgd2FyIGRvY2ggYmV3dXNzdCB6d2VpZGV1dGlnLi4ubnVyIHdlaWwgRHUsIG1laW4gRGVtb3NjaGF0eiBkYSBiaXN0IDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIaXNhc3VsIHVuZCBkaWUgRm9sZ2VuOiAoRGVtb25heiwgIDguIE1haSAyMDAzLCAwMDozMDowNik6Cn4jISBybj1IaXNhc3VsIHJ0PTEwNTIzNDI3MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzQyMjc1CgpBY2ggUXVhcmssCgpEdSBmaW5kZXN0IGJlaW0gUG9wcGVuIGRhcyBMb2NoIG5pY2h0IG1laHIgdm9yIGxhdXRlciBTdWZmLiBVbmQgbnVuIGhvZmZzdCBEdQphdWYgZWluIE5ldWVzLi4uCgpIVVNUCkQuCi4jCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIaXNhc3VsIHVuZCBkaWUgRm9sZ2VuOiAoSGlzYXN1bCwgIDguIE1haSAyMDAzLCAwMDozMDo0MCk6Cn4jISBybj1EZW1vbmF6IHJ0PTEwNTIzNDY2MDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzQyMjc1CkRhcyBoYWx0ZSBpY2ggZnVlciBlaW4gR2VydWVjaHQuIEFscyBFbGYgZmluZGV0IG1hbiBkYXMgTG9jaCBpbW1lciA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEhpc2FzdWwgdW5kIGRpZSBGb2xnZW46IChHcmltbWJvcm4sICA4LiBNYWkgMjAwMywgMDA6MzE6MDIpOgp+IyEgcm49SGlzYXN1bCBydD0xMDUyMzQ2NjQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjM0MjI3NQpKYSwgc29sYW5nZSBlcyBlaW4gQXN0bG9jaCBpc3QuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlcnVlY2h0ISAoSGlzYXN1bCwgIDguIE1haSAyMDAzLCAwMDozMTozNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1MjM0NjY2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTIzNDIyNzUKcmVwbHkgRGFzIGthbm4gbnVyIGVpbiBVbndpc3NlbmRlciBiZWhhdXB0ZW4gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2VydWVjaHQhIChHcmltbWJvcm4sICA4LiBNYWkgMjAwMywgMDA6MzI6MjQpOgp+IyEgcm49SGlzYXN1bCBydD0xMDUyMzQ2Njk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjM0MjI3NQpCZWdhYnRlciBVbWdhbmcgbWl0IGRlciBtcGEsIGphLiBVbmQgZGFzcyBkaWUgRWxmZW4gc2Nod3VsZSBCYWV1bWVmaWNrZXIgc2luZAppc3QgamEgbnVuIHdpcmtsaWNoIG5pY2h0IG5ldS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHZXJ1ZWNodCEgKERlbW9uYXosICA4LiBNYWkgMjAwMywgMDA6MzM6MjUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTIzNDY3NDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzQyMjc1CkRhIG11c3MgaWNoIGF1c25haG1zd2Vpc2UgbWFsIEdyaW1taSB6dXN0aW1tZW4gOykKRC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdlcnVlY2h0ISAoR3JpbW1ib3JuLCAgOC4gTWFpIDIwMDMsIDAwOjM0OjE3KToKfiMhIHJuPURlbW9uYXogcnQ9MTA1MjM0NjgwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTIzNDIyNzUKSHVjaCwgd2FzIGhhYiBpY2ggZGVubiBqZXR6dCBmYWxzY2ggZ2VtYWNodD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR2VydWVjaHQhIChIaXNhc3VsLCAgOC4gTWFpIDIwMDMsIDAwOjM1OjE3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDUyMzQ2ODU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjM0MjI3NQpBbHNvIGlociBoYWJ0IGVpbmZhY2ggZWluZW4gYW4gZGVyIFdhZmZlbC4uLgp1awpzCncKdwpmb2xnZSBodW5kCncKdwpzdwp3CnN3CnN3Cm8KbwpzbwpzbwpzbwpvCnNvCm8Ka3VyegpzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHZXJ1ZWNodCEgKERlbW9uYXosICA4LiBNYWkgMjAwMywgMDA6MzU6MjMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTIzNDY4NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzQyMjc1CktLZWluZSBBaG51bmc/IE5lbiBiYXVtIGdlcG9wcHQ/CkQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHZXJ1ZWNodCEgKEhpc2FzdWwsICA4LiBNYWkgMjAwMywgMDA6MzY6MTUpOgp+IyEgcm49RGVtb25heiBydD0xMDUyMzQ2OTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjM0MjI3NQogb2VobSwgaWNoIGF1Y2ggOikKRG9vZmVzIFptdWR0ZWlsIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHZXJ1ZWNodCEgKEdyaW1tYm9ybiwgIDguIE1haSAyMDAzLCAwMDozNjoxOSk6Cn4jISBybj1IaXNhc3VsIHJ0PTEwNTIzNDY5MTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzQyMjc1CkphLCBkYXJhbiB3aXJkcyBsaWVnZW4uClVuZCwgaGF0IGRlciBIdW5kIERpY2ggenUgZWluZW0gYXR0cmFrdGl2ZW4gQmF1bSBnZWZ1ZWhydD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVzIGFrdHVlbGxlbSBhbmxhc3MgKE11YWRpYiwgIDguIE1haSAyMDAzLCAwMDozNjozOSk6CmVtcGZlbGxlIGljaCB3aWVkZXIgbWFsIGRpZSBsZWtydWVyZSB2b24gcmZjIDExNDkgdW5kIHJmYyAyMzI0IDopCmFjaGphIGRlciBhbmxhc3MgZW50c3RhbmQgbmF0dWVybGljaCBhdWYgaW50ZXJtdWQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhdXMgYWt0dWVsbGVtIGFubGFzcyAoSGlzYXN1bCwgIDguIE1haSAyMDAzLCAwMDozNzoyNSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA1MjM0Njk5OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTIzNDY5OTkKdXJzcHJ1ZW5nbGljaCB3b2xsdGUgaWNoIGphIGFubWVya2VuLCBkYXNzIGljaCBpbSBTcG9ydC1MSyBhbHMgIlNleGdvdHQiCmJla2FubnQgd2FyLi4uCk9obmUgd2VpdGVyZW4gS29tbWVudGFyIC0gSGlzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhdXMgYWt0dWVsbGVtIGFubGFzcyAoRGVtb25heiwgIDguIE1haSAyMDAzLCAwMDozODozMCk6Cn4jISBybj1IaXNhc3VsIHJ0PTEwNTIzNDcwNDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzQ2OTk5CkdhYnMgZGEgc292aWVsZSBCYWV1bWU/CkQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGF1cyBha3R1ZWxsZW0gYW5sYXNzIChHcmltbWJvcm4sICA4LiBNYWkgMjAwMywgMDA6Mzg6MzgpOgp+IyEgcm49SGlzYXN1bCBydD0xMDUyMzQ3MDQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjM0Njk5OQpKYSwgd2lyIGhhdHRlbiBhdWNoIHNvIGVpbmVuIGRlIHdpZSBibG9lZCBpbnMga2V1Y2hlbiBnZWtvbW1lbiBpc3QsIHNpY2ggYWJlcgpkYWJlaSBrYXVtIG1lcmtsaWNoIHZvbiBkZXIgU3RlbGxlIGJld2VndCBoYXQuCk5hamEsICJTcG9ydC1MSyIuIE5lZWlza2xhci4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogYXVzIGFrdHVlbGxlbSBhbmxhc3MgKERlbW9uYXosICA4LiBNYWkgMjAwMywgMDA6Mzk6MDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTIzNDcxMTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzQ2OTk5Cm5hamEsIGVzIHdhciB3YWhyc2NoZWlubGljaCBlaW4gV2FsZGxhdWYtS3Vycy4uLgpELgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogYXVzIGFrdHVlbGxlbSBhbmxhc3MgKEdyaW1tYm9ybiwgIDguIE1haSAyMDAzLCAwMDo0MDoxOCk6Cn4jISBybj1EZW1vbmF6IHJ0PTEwNTIzNDcxNDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzQ2OTk5ClNjaHdlcnB1bmt0IEtlZ2Vsbi4gIkd1dCBIb2x6IiB1bmQgc28uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogYXVzIGFrdHVlbGxlbSBhbmxhc3MgKEh1bW5pLCAgOC4gTWFpIDIwMDMsIDEwOjIwOjUwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDUyMzQ3MjE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjM0Njk5OQpBbHNvICwsU2V4Z290dCcnIGxhZXNzdCBzaWNoIGVpbiBGcmV1bmQgdm9uIG1pciBiaXMgaGV1dGUgbmVubmVuLCBlciBtZWxkZXQKc2ljaCB0ZWlsd2Vpc2UgYXVjaCBzbyBhbSBUZWxlZm9uICh1bmQgd2lsbCBhdWNoIHNvIGFuZ2VzcHJvY2hlbiB3ZXJkZW4pLgpBbHRlcm5hdGl2bmFtZSAsLEZpY2tpIEZpY2snJy4gU28gbmVubnQgZXIgc2ljaCBhYmVyIG51ciBzZWxic3QuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogYXVzIGFrdHVlbGxlbSBhbmxhc3MgKEFtYXJ5bGxpcywgIDguIE1haSAyMDAzLCAxMDoyODo1MCk6Cn4jISBybj1IdW1uaSBydD0xMDUyMzgyMDUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjM0Njk5OQpNYW5jaGVuIExldXRlbiBpc3QgYXVjaCBuaXggenUgcGVpbmxpY2guCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBhdXMgYWt0dWVsbGVtIGFubGFzcyAoUGF0cnluLCAgOC4gTWFpIDIwMDMsIDEwOjMyOjA4KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDUyMzgyNTMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjM0Njk5OQpJbiBkZXIgVGF0Li4uZGFzIG11c3MgZWluIHNjaHJhZWdlciBWb2dlbCBzZWluLgpOdW4gamEsIGF1Y2ggc293YXMgbXVzcyBtYW4gaW0gRnJldW5kZXNrcmVpcyBoYWJlbiAqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGF1cyBha3R1ZWxsZW0gYW5sYXNzIChHcmltbWJvcm4sICA4LiBNYWkgMjAwMywgMTA6NTU6NDApOgp+IyEgcm49UGF0cnluIHJ0PTEwNTIzODI3Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzQ2OTk5ClNvIHNpbmQgaGFsdCBkaWUgTWVuc2NoZW4gdmVyc2NoaWVkZW4uIERlbm46IFNvd2FzIG11c3MgaWNoIHdpcmtsaWNoIG5pY2h0IGltCkZyZXVuZGVza3JlaXMgaGFiZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogYXVzIGFrdHVlbGxlbSBhbmxhc3MgKEVsaXphYmV0aCwgIDguIE1haSAyMDAzLCAxMToyODo0Nik6Cn4jISBybj1IaXNhc3VsIHJ0PTEwNTIzNDcwNDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzQ2OTk5CkVsaXphYmV0aCBodXN0ZXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBhdXMgYWt0dWVsbGVtIGFubGFzcyAoR3JpbW1ib3JuLCAgOC4gTWFpIDIwMDMsIDExOjM5OjE4KToKfiMhIHJuPUVsaXphYmV0aCBydD0xMDUyMzg2MTI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjM0Njk5OQpPaCwgU0FSUy1BbGFybSEgQml0dGUgZWlubWFsIGF1c2JydWNoc3NpY2hlcmUgUXVhcmFudGFlbmUgZnVlciBFbGlzYWJldGgsCnMudi5wLiEKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogYXVzIGFrdHVlbGxlbSBhbmxhc3MgKE5pY29sYWksICA4LiBNYWkgMjAwMywgMTE6NDQ6MjMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTIzODY3NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzQ2OTk5CmdsYXViZSBlaGVyIGRhcyBodXN0ZW4gc29sbHRlIGRlbiBzZXhnb3R0IHp1bSBsZWhybGluZyBydW50ZXJzdHVmZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGF1cyBha3R1ZWxsZW0gYW5sYXNzIChNb250YW51cywgIDguIE1haSAyMDAzLCAxNDowMDo0OCk6Cn4jISBybj1OaWNvbGFpIHJ0PTEwNTIzODcwNjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzQ2OTk5Ck9iIHNpY2ggMTJqYWVocmlnZSBkZW5uIHNjaG9uIHVlYmVyaGF1cHQgenUgZGVtIFRoZW1hIGFldXNzZXJuIGR1ZXJmZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBhdXMgYWt0dWVsbGVtIGFubGFzcyAoRWxpemFiZXRoLCAgOC4gTWFpIDIwMDMsIDE0OjAxOjU2KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNTIzOTUyNDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzQ2OTk5CndpZWRlciBtYWwgZWluIGJld2VpcyB2b24gendhbmdoYWZ0ZW0gImh1bW9yIi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGF1cyBha3R1ZWxsZW0gYW5sYXNzIChOaWNvbGFpLCAgOC4gTWFpIDIwMDMsIDE1OjMwOjEyKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNTIzOTUyNDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzQ2OTk5CmRlaW5lbSBhcnRpa2VsIG5hY2ggc2NoZWluZW4gc2llIGVzIHp1IGR1ZXJmZW4gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbm9jaCBlaW5lciAoR3JpbW1ib3JuLCAgOS4gTWFpIDIwMDMsIDEzOjU3OjA4KToKfiMhIG9uPUhpc2FzdWwgb3Q9MTA1MjQ4MTIwNiBvZz13aXR6ZQp+IyEgcm49VHdvZmFjZSBydD0xMDUyNDgxMDQ2IHJnPXdpdHplCn4jISB0aWQ9MTA1MjQ4MTA0NgpOYSBkYSBoYWIgaWNoIGFiZXIgc2Nob24gYmVzc2VyIGdlbGFjaHQuLi4gOykKSGFzdGUgbm9jaCBuZW4gInJpY2h0aWdlbiI/CgpICgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IG5vY2ggZWluZXIgKExpYXJhLCAgOS4gTWFpIDIwMDMsIDE0OjQ5OjEwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDUyNDgxNDI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjQ4MTA0NgpIbSwgd2VubiBpY2ggZGEgc28gYW4gRGVlcGJsdWUgZGVua2UsIGhhYmUgaWNoIGF1Y2ggc2Nob24gZGV1dGxpY2ggc2NobGVjaHRlcgpnZWxhIC4uLiBvZGVyIHdpZSBtYW4gZGFzIG5lbm50LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbm9jaCBlaW5lciAoR3JpbW1ib3JuLCAgOS4gTWFpIDIwMDMsIDE1OjIwOjEzKToKfiMhIHJuPUxpYXJhIHJ0PTEwNTI0ODQ1NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyNDgxMDQ2CkRlciAiV2l0eiIgaXN0IHZlcm11dGxpY2gsIGRhc3Mgc2ljaCBkYW5uIEhpc2EiU2V4Z290dCJzdWwgYmVpIG1pciBiZXNjaHdlcnRlLApkZXIgQXJ0aWtlbCBzZWkgZXJuc3QgZ2VtZWludCB1bmQgZ2Vob2VydGUgbnVuIGFiZXIgYmVzdGltbXQgbmFjaCAnd2l0emUnLiBEYQp3ZWlzcyBtYW4gZ2FyIG5pY2h0IHJpY2h0aWcgd28gbWFuIG1pdCBkZW0gV2lkZXJzcHJ1Y2ggYW5mYW5nZW4gc29sbC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp0ZWRkeXMgKFB1aywgIDkuIE1haSAyMDAzLCAxNToyMDoxNyk6CmF1IG1hbiwgc293YXMgYWJlciBhdWNoLCBtZWluIFRlZGR5IGhhdCBiZWlsZWlkIG1pdCBhbmRlcmVuIDopCgpEZXIgVGVkZHkga251ZGRlbHQgRGljaCBlaW4gbGV0enRlcyBNYWwuCkthbHRlciBXaW5kIHVtd2VodCBEaWNoIGdhbnogdW5lcndhcnRldC4gRXIga29tbXQgYXVzIGRlbiB6YWhscmVpY2hlbgpPZWZmbnVuZ2VuIGluIGRlciBXYW5kIHVuZCB3aXJkIGltbWVyIHN0YWVya2VyLgpEdSBmZXVlcnN0IGVpbmVuIGZsdWVzc2lnZW4gTWFnaWVyc2NoYWVkZWwgYXVmIElkbGVmaXggYWIuCkR1IC0tLS0tLS0tLS0gSWRsZWZpeCAtLS0tLS0tLS0tLS0tLS0+IEJSRUkKSWRsZWZpeCBmYWVsbHQgdG90IHp1IEJvZGVuLgoKUHVrLCBlbnRzZXR6dAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGRpdmVyc2UgKEdyaW1tYm9ybiwgIDkuIE1haSAyMDAzLCAxNjo0MTo1Mik6Cn4jISBvbj1FbGl6YWJldGggb3Q9MTA1MjQ5MTE4NyBvZz13aXR6ZQp+IyEgcm49VHdvZmFjZSBydD0xMDUyNDgwOTE4IHJnPXdpdHplCn4jISB0aWQ9MTA1MjQ4MDkxOAphYWFhbHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdWVyIFBpdGZhbGwgKE1vcmdvdGgsIDEwLiBNYWkgMjAwMywgMTk6MDY6MTkpOgpqZXR6dCBuaWNodCBtZWhyCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSmFhYWFhYWEsIGVzIGdpYnQgaWhuIHdpZWRlci4uLiAoTGlhcmEsIDEzLiBNYWkgMjAwMywgMDA6NDU6MTgpOgp+IyEgcm49QW1hem9yYSBydD0xMDUyNzM5ODA5IHJnPXRyZWZmZW4KfiMhIHRpZD0xMDUyMzA0MDczCkR1IHRyaWZmc3QgZ2xlaWNoIGRpZSBfZ2FuemVfIEJhbmQ/IDspKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogSmFhYWFhYWEsIGVzIGdpYnQgaWhuIHdpZWRlci4uLiAoQW1hem9yYSwgMTMuIE1haSAyMDAzLCAxMDozMDowNik6Cn4jISBybj1MaWFyYSBydD0xMDUyNzc5NTE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjMwNDA3MwphZWgsIG5hIGRpZSBoYWxiZSB3ZXJkIGljaCBuZWQgdHJlZmZlbgphbWF6b3JhIHd1bmRlcnQgc2ljaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2NoZWlzc2Ugd2FzPyAoR3JpbW1ib3JuLCAxMy4gTWFpIDIwMDMsIDE1OjUwOjUwKToKfiMhIHJuPUx1ZyBydD0xMDUyODMzNzY5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTA1Mjc0NDA5NgpVbmQgd2VubiBkYXMgZmVydGlnIGlzdCBnaWJ0IGRhcyAiR29ldHRlciwgR3JhZWJlciB1bmQgR2VsZWhydGUiPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdGVkZHlzIChEYXJrbG9yLCAxMy4gTWFpIDIwMDMsIDE4OjIzOjA5KToKfiMhIHJuPVB1ayBydD0xMDUyNDg2NDE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjQ4NjQxNwoKRGVyIGlzIGd1dCEgLSBmdW5rdGlvbmllcnQgc29nYXIgb2huZSBUZWRkeS4uLiAqZyoKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoVmVjdG9yLCAxMy4gTWFpIDIwMDMsIDIyOjEyOjQxKToKTWVkaWMgcnVmdDogdmVyc2Vua3QgKmcqCltUb2Q6TGFyc10gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSBSaXBwb3IgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsc28gZGFzIGdlaHQgZWNodCB6dSB3ZWl0Li4uIChIdXJheHByYXgsIDE0LiBNYWkgMjAwMywgMDk6NTg6MDkpOgpEZXIgTW9lbmNoIHp3aW5ndCBEaWNoIHp1OiBnaWIgbWlyIGRhcyBLb2tvcm8uCkR1IGdpYnN0IGRlbSBNb2VuY2ggZWluIEtva29yby4KRGllIE1lbWJyYW4gaW0gSW5uZXJzdGVuIGRlciBEaW5nZSBpbiBkZW4gSGFlbmRlbiBkZXIgRGllbmVyIGRlcyBCb2VzZW4/IFdlbm4KZGFzIFNpYW1pbCB3dWVzc3RlLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWxzbyBkYXMgZ2VodCBlY2h0IHp1IHdlaXQuLi4gKFpvb2ssIDE0LiBNYWkgMjAwMywgMTE6MTc6MzgpOgp+IyEgcm49SHVyYXhwcmF4IHJ0PTEwNTI4OTkwODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyODk5MDg5Clpvb2sgcm90Zmx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWVya3d1ZXJkaWdlIERpbmdlIHBhc3NpZXJlbiAuLi4gKExpYXJhLCAxNC4gTWFpIDIwMDMsIDExOjU3OjI0KToKUmFzcHV0aW4gdGVpbHQgRGlyIG1pdDogdW5kIGRhcyB0YWV0c2NoZWxuIG11c3Mgd2llZGVyIGF1ZmhvZXJlbiwgaWNoIGJpbgpSYXNwdXRpbiB0ZWlsdCBEaXIgbWl0OiBpbW1lcmhpbiBib2VzZSEgWzExOjQ0XQpEZWluIEZyZXVuZCBSYXNwdXRpbiB0ZWlsdCBEaXIgbWl0OiBpY2ggd2FyIHNjaG9uIElNTUVSIGJvZXNlIHVuZCBkYXMgaGF0IHNpY2gKRGVpbiBGcmV1bmQgUmFzcHV0aW4gdGVpbHQgRGlyIG1pdDogYXVjaCBpbiBkZXIgbGV0emVuIHplaXQgbmljaHQgZ2VhZW5kZXJ0CgouLi4KCkRlaW5lIEZyZXVuZGluIEplbmFuZHJhIHRlaWx0IERpciBtaXQ6IGJ0dwpEZWluZSBGcmV1bmRpbiBKZW5hbmRyYSB0ZWlsdCBEaXIgbWl0OiBpaHIgc2Nyb2xsdC4KCi4uLgoKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogTWVpbiBOZXR6IGlzdCBtYWwgd2llZGVyIGZ1ZXIncyBHZXNhZXNzLi4uCgoKTGlhcmEsIGhhdCBpcmdlbmR3aWUgZGFzIEdlZnVlaGwsIGRhc3MgaGV1dGUgZWluIGJpcyBkcm9lbGZ6aWcgUGFzc3dvZXJ0ZXIKZ2VrbmFja3Qgd3VyZGVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWVya3d1ZXJkaWdlIERpbmdlIHBhc3NpZXJlbiAuLi4gKFpvb2ssIDE0LiBNYWkgMjAwMywgMTE6NTc6NDYpOgp+IyEgcm49TGlhcmEgcnQ9MTA1MjkwNjI0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTI5MDYyNDQKSWNoIHRpcHBlIGF1ZiBTbmlwZXIuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNZXJrd3VlcmRpZ2UgRGluZ2UgcGFzc2llcmVuIC4uLiAoQW50aGVhLCAxNC4gTWFpIDIwMDMsIDExOjU4OjE0KToKfiMhIHJuPVpvb2sgcnQ9MTA1MjkwNjI2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTI5MDYyNDQKT2RlciBEcm9sbGk/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNZXJrd3VlcmRpZ2UgRGluZ2UgcGFzc2llcmVuIC4uLiAoWm9vaywgMTQuIE1haSAyMDAzLCAxMTo1ODoyNCk6Cn4jISBybj1BbnRoZWEgcnQ9MTA1MjkwNjI5NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTI5MDYyNDQKWm9vayBodXN0ZXQgbGF1dCBob2VyYmFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNZXJrd3VlcmRpZ2UgRGluZ2UgcGFzc2llcmVuIC4uLiAoTGlhcmEsIDE0LiBNYWkgMjAwMywgMTI6MDE6MTcpOgp+IyEgcm49Wm9vayBydD0xMDUyOTA2MjY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjkwNjI0NApXYXMgaGF0IG1laW4gRXggZGFtaXQgenUgdHVuPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWVya3d1ZXJkaWdlIERpbmdlIHBhc3NpZXJlbiAuLi4gKEphbWVzb24sIDE0LiBNYWkgMjAwMywgMTI6MDI6NDEpOgp+IyEgcm49TGlhcmEgcnQ9MTA1MjkwNjQ3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTI5MDYyNDQKRHJvbGxpIGlzdCBEZWluIEV4Pz8/CgpqQW1lc29uIHd1YmRlcnQgc2ljaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTWVya3d1ZXJkaWdlIERpbmdlIHBhc3NpZXJlbiAuLi4gKExpYXJhLCAxNC4gTWFpIDIwMDMsIDEyOjA2OjA4KToKfiMhIHJuPUphbWVzb24gcnQ9MTA1MjkwNjU2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTI5MDYyNDQKTGVybiBMZXNlbiEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1lcmt3dWVyZGlnZSBEaW5nZSBwYXNzaWVyZW4gLi4uIChKYW1lc29uLCAxNC4gTWFpIDIwMDMsIDEyOjA3OjIwKToKfiMhIHJuPUxpYXJhIHJ0PTEwNTI5MDY3Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyOTA2MjQ0CkljaCBrYW5uIGxlc2VuLCBrb25udGUgbnVyIG5pY2h0IHdpZGVyc3RlaGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNZXJrd3VlcmRpZ2UgRGluZ2UgcGFzc2llcmVuIC4uLiAoVG9lLCAxNC4gTWFpIDIwMDMsIDEyOjA3OjIyKToKfiMhIHJuPUxpYXJhIHJ0PTEwNTI5MDY3Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyOTA2MjQ0Cmxlcm4gbGViZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhhaCEgKExpYXJhLCAxNC4gTWFpIDIwMDMsIDE1OjU3OjIwKToKRHUgcnVmc3Q6IExVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVRwpBcmsgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkx1ZyBydWZ0OiBMTExMSUlJSUlBQUFBQUFBQUFBQUFBQUFSUlJSUlJSUlJSUkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBCkFyayAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhhaCEgKEx1ZywgMTQuIE1haSAyMDAzLCAxNjoxNjoxNik6Cn4jISBybj1MaWFyYSBydD0xMDUyOTIwNjQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjkyMDY0MApmZWhsdCBub2NoOgoKTExMQUFBQUVSTU1NTU1NTU1NTU1NTU1NTU1NTU1NIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTaGlydD8gKEFudGhlYSwgMTQuIE1haSAyMDAzLCAxNzo0OTo0OCk6Cn4jISBybj1Ib2JvIHJ0PTEwNTI5MjYwOTIgcmc9cGFydHkKfiMhIHRpZD0xMDUxMTI2MTY1Ckhhc3QgRHUgZGVubiBhbGxlIFRhc3NlbiBpbSBTY2hyYW5rPyBPZGVyIHN0ZWhlbiBkaWUgYXVmIGRlbSBGZW5zdGVyYnJldHQsCmRhc3MgZGVyIExhY2sgc28gbWl0Z2Vub21tZW4gaXN0PyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRmluc3Rlcm5pc3NlIChIdW1uaSwgMTQuIE1haSAyMDAzLCAyMzoxNDozNSk6Cn4jISBvbj1IdW1uaSBvdD0xMDUyOTQ2ODY3IG9nPWFsbGdlbWVpbmVzCn4jISBybj1MdWcgcnQ9MTA1Mjk0Njc5NyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwNTI5NDY2MTcKQWNoIEx1ZywgbnVyIEZyYXVlbiBpbnRlcmVzc2llcmVuIHNpY2ggbmljaHQgZnVlciBNb25kZmluc3Rlcm5pc3NlLiBEYW5uIGdlaApkb2NoIGluIGRpZSBLbGVyaWtlci1HaWxkZS4uLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVyZ3MgKE1vcmdvdGgsIDE0LiBNYWkgMjAwMywgMjM6Mjk6MDgpOgpMdWcgc3ByaXR6dCBhYi4KSmVuYW5kcmEgd2VpY2h0IGdlc2NoaWNrdCBhdXMuCk1vb25zaGluZSBmcmV1dCBzaWNoLgpNb29uc2hpbmUgaHVlcGZ0IHVtIEx1ZyBoZXJ1bS4KTW9vbnNoaW5lIHNjaG5hcHB0IHNpY2ggTHVnIHVuZCBkaWUgYmVpZGVuIHRhbnplbiBlaW5lIFJ1bmRlIFJvY2snbidSb2xsLgpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVXJncyAoTHVnLCAxNC4gTWFpIDIwMDMsIDIzOjMwOjAwKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA1Mjk0Nzc0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTI5NDc3NDgKSXJnZW5kd2llIGlzdCBkYXMgbWlzdmVyc3RhZW5kbGljaC4uLgoKTC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFiZXIgc2VsYmVyLi4uIChMdWcsIDE0LiBNYWkgMjAwMywgMjM6MzM6MTIpOgoKZW5hbmRyYSBkZW5rdCAgIC4gbyBPICh3ZXIgaXMgcmF0dGlnPykKTW9yZ290aCBkZXV0ZXQgYXVmIE1vb25zaGluZS4KSmVuYW5kcmEgZGVua3QgICAuIG8gTyAoYWgpCk1vcmdvdGggZGV1dGV0IGF1ZiBzaWNoIHNlbGJlci4KTW9yZ290aCBncmluc3QuCkplbmFuZHJhIGRlbmt0ICAgLiBvIE8gKG11c3MgZGVyIGZydWVobGluZyBzZWluKQpNb29uc2hpbmUgZGV1dGV0IGF1ZiBNb3Jnb3RoLgpKZW5hbmRyYSBuaWNrdCBlcm5zdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvc28gKE1vcmdvdGgsIDE0LiBNYWkgMjAwMywgMjM6NDA6MTcpOgpNb29uc2hpbmUgc2FndDogTmljaHQgbWVocgpNb29uc2hpbmUgc2FndDogV2FyIG51ciBkaWVzZSBlaW5lIE5hY2h0Ck1vb25zaGluZSBzYWd0OiBXYXIgbnVyIG5ldHQKTW9vbnNoaW5lIHNhZ3Q6IHNlaHIgbmV0dAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVXJncyAoRGVlcGJsdWUsIDE1LiBNYWkgMjAwMywgMDk6MTA6NDMpOgp+IyEgcm49THVnIHJ0PTEwNTI5NDc4MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyOTQ3NzQ4CkhPSUwgRE9DSAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVXJncyAoTHVnLCAxNi4gTWFpIDIwMDMsIDAxOjM1OjAyKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwNTI5ODI2NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyOTQ3NzQ4CkxECgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcmF1ZW4uIE1hZW5uZXIuIChGb29iYXIsIDE2LiBNYWkgMjAwMywgMTI6MTA6NDUpOgpJaHIgVGFnZWJ1Y2g6IAoKIEFtIFNhbXN0YWcgQWJlbmQgaGF0IGVyIHNpY2ggZWNodCBrb21pc2NoIHZlcmhhbHRlbi4gV2lyIHdvbGx0ZW4KIG5vY2ggYXVmIGVpbiBCaWVyIGF1c2dlaGVuLiBJY2ggd2FyIGRlbiBnYW56ZW4gVGFnIG1pdCBtZWluZW4KIEZyZXVuZGlubmVuIGJlaW0gRWlua2F1ZmVuIHVuZCBrYW0gZGVzd2VnZW4genUgc3BhZXQgLSB3b21vZWdsaWNoCiB3YXIgZXIgZGVzd2VnZW4gc2F1ZXIuIElyZ2VuZHdpZSBrYW1lbiB3aXIgZ2FyIG5pY2h0IG1pdGVpbmFuZGVyCiBpbnMgR2VzcHJhZWNoLCBzbyBkYXNzIGljaCB2b3JnZXNjaGxhZ2VuIGhhYmUsIGRhc3Mgd2lyIHdvYW5kZXJzCiBoaW5nZWhlbiwgd28gbWFuIHNpY2ggYmVzc2VyIHVudGVyaGFsdGVuIGthbm4uCiBFciB3YXIgendhciBlaW52ZXJzdGFuZGVuLCBhYmVyIGJsaWViIHNvIHNjaHdlaWdzYW0gdW5kIGFid2VzZW5kLgogSWNoIGZyYWd0ZSwgd2FzIGxvcyBpc3QsIGFiZXIgZXIgbWVpbnRlIG51ciAibmljaHRzIi4gRGFubiBmcmFndGUgaWNoLCBvYgogaWNoIGlobiB2aWVsbGVpY2h0IGdlYWVyZ2VydCBoYWJlLiBFciBzYWd0ZSwgZGFzcyBlcyBuaWNodHMgbWl0IG1pciB6dSB0dW4KIGhhdCwgdW5kIGRhc3MgaWNoIG1pciBrZWluZSBTb3JnZW4gbWFjaGVuIHNvbGwuIEF1ZiBkZXIgSGVpbWZhaHJ0IGhhYmUgaWNoCiBpaG0gZGFubiBnZXNhZ3QsIGRhc3MgaWNoIGlobiBsaWViZSwgYWJlciBlciBmdWhyIGVpbmZhY2ggd2VpdGVyLiBJY2gKIHZlcnN0ZWggaWhuIGVpbmZhY2ggbmljaHQsIHdhcnVtIGhhdCBlciBuaWNodCBlaW5mYWNoIGdlc2FndCAiaWNoIGxpZWJlCiBEaWNoIGF1Y2giLiBBbHMgd2lyIG5hY2ggSGF1c2Uga2FtZW4gZnVlaGx0ZSBpY2gsIGRhc3MgaWNoIGlobiB2ZXJsb3JlbgogaGF0dGUsIGRhc3MgZXIgbmljaHRzIG1laHIgbWl0IG1pciB6dSB0dW4gaGFiZW4gd29sbHRlLiBFciBzYXNzIG51ciBkYSB1bmQKIHNjaGF1dGUgZmVybiwgZXIgc2NoaWVuIHdlaXQgd2VnIHVuZCBpcmdlbmR3aWUgYWJ3ZXNlbmQuCiBTY2hsaWVzc2xpY2ggYmluIGljaCBkYW5uIGlucyBCZXR0IGdlZ2FuZ2VuLiBFciBrYW0gMTAgTWludXRlbiBzcGFldGVyCiBuYWNoIHVuZCB6dSBtZWluZXIgVWViZXJyYXNjaHVuZyBoYXQgZXIgYXVmIG1laW5lIExpZWJrb3N1bmdlbiByZWFnaWVydAogdW5kIHdpciBoYWJlbiB1bnMgZ2VsaWVidC4gQWJlciBpcmdlbndpZSBoYXR0ZSBpY2ggaW1tZXIgbm9jaCBkYXMgR2VmdWVobCwKIGRhc3MgZXIgYWJnZWxlbmt0IHVuZCBtaXQgc2VpbmVuIEdlZGFua2VuIHdlaXQgd2VnIGlzdC4gRGFzIGFsbGVzIHd1cmRlCiBtaXIgenV2aWVsLCBzbyBkYXNzIGljaCBiZXNjaGxvc3NlbiBoYWJlLCBvZmZlbiBtaXQgaWhtIHVlYmVyIGRpZSBTaXR1YXRpb24KIHp1IHJlZGVuLCBhYmVyIGRhIHdhciBlciBiZXJlaXRzIGVpbmdlc2NobGFmZW4uIEljaCBoYWJlIG1pY2ggaW4KIGRlbiBTY2hsYWYgZ2V3ZWludC4gSWNoIHdlaXNzIG5pY2h0IG1laHIgd2VpdGVyLiBNZWluIExlYmVuIGhhdCBrZWluZW4KIFNpbm4gbWVoci4gCgpTZWluIFRhZ2VidWNoOiAKCiBIZXV0ZSBoYXQgU2NoYWxrZSB2ZXJsb3JlbiwgYWJlciB3aXIgaGF0dGVuIHByaW1hIFNleC4gCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZyYXVlbi4gTWFlbm5lci4gKEFtYXpvcmEsIDE2LiBNYWkgMjAwMywgMTI6MTQ6NDQpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNTMwNzk4NDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzMDc5ODQ1CipwcnV1c3QqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE1hdGlzLCAxNi4gTWFpIDIwMDMsIDE1OjMxOjQxKToKQXVzYmlsZHVuZyBtaXQgVG9kaWUuIERlciBOYW1lIHNhZ3QgYWxsZXMgOm8pOgoKW1RlYW0gNjpUb2RpZV0gRGFzIHdhcmVuIGFsbGUgOikKKEF1c2JpbGR1bmcgYmVlbmRldC4pCltUZWFtIDY6VG9kXSBUT0RJRSBIQVQgREFTIFRFQU0gVkVSTEFTU0VOLgpbVGVhbSA2Ol0gTWF0aXMgaGF0IGRpZSBUZWFtbGVpdHVuZyB1ZWJlcm5vbW1lbi4KW1RlYW0gNjpdIERhcyBUZWFtIGxvZXN0IHNpY2ggYXVmLgoKTWF0aXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKEJhbWJpLCAxNi4gTWFpIDIwMDMsIDE2OjA2OjIxKToKfiMhIHJuPU1hdGlzIHJ0PTEwNTMwOTE5MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzMDkxOTAxClRlYW0gIjYiPyBJaHIgc2VpZCBzb2dhciB6dSBmYXVsLCBldWNoIG5lbiBicmF1Y2hiYXJlbiBOYW1lbiBlaW5mYWxsZW4genUKbGFzc2VuPyBTY2hhZW10IGV1Y2ghCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMVyAoQ3JvZnQsIDE2LiBNYWkgMjAwMywgMTY6Mzk6MTIpOgp+IyEgcm49QmFtYmkgcnQ9MTA1MzA5Mzk4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTMwOTE5MDEKV2FydGUgbnVyIGJpcyBpY2ggZGFzIG5hZWNoc3RlIG1hbCAiVGVhbSBQaXp6YSIgenUgbGVzZW4gYmVrb21tZSA6PgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXIgTGVpYmkgKE1vcmdvdGgsIDE2LiBNYWkgMjAwMywgMjI6MzM6MzUpOgptaXIgbWFsIHdlciB3YXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRlLmFsdC5uZXRkaWdlc3QgdHV0IFdhaHJoZWl0IGt1bmQuLi4gKFJvbmRhLCAxNy4gTWFpIDIwMDMsIDAxOjE0OjIyKToKRnJvbTogVm9sa2VyIEdyaW5nbXV0aCA8ZWlua2xpY2hAZ214Lm5ldD4KTmV3c2dyb3VwczogZGUuc29jLmp1Z2VuZGFyYmVpdApTdWJqZWN0OiBSZTogU29mdHdhcmUgSG9tZXBhZ2ViYXUKRGF0ZTogVGh1LCAxNSBNYXkgMjAwMyAyMDo1MDo1NSArMDIwMApNZXNzYWdlLUlEOiA8YmEwdWpmLjN2ZzFybXIuMUBoMS5laW5rbGljaC5uZXQ+CgpTdHV0emtlLCBIb2xnZXIgKHN0dXR6a2VoQHBoaWwtZmFrLnVuaS1kdWVzc2VsZG9yZi5kZSkgd3JvdGU6Cgo+IFZpZWxsZWljaHQga2FubiBtYW4gYXVjaCBXb3JkIChiaXR0ZSBuaWNodCBzY2hsYWdlbikgdmVyd2VuZGVuLgo+IEljaCB3ZWlzcywgZGFzIFByb2dyYW1tIHByb2R1emllcnQgZWluZW4gZWtlbGhhZnRlbiBIVE1MLUNvZGUsIGFiZXIKPiBlcyBpc3QgZWluZmFjaCB6dSBiZWRpZW5lbiwgZmFsbHMgbWFuL2tpbmQgdm9yaGVyIHNjaG9ubWFsIG1pdAo+IFdvcmQgZ2VhcmJlaXRldCBoYXQuCgpNYW4ga2FubiBBZXBmZWwgYXVjaCBtaXQgSGFuZGdyYW5hdGVuIHBmbHVlY2tlbi4gSWNoIHdlaXNzLCBkaWVzZSBNZXRob2RlCnByb2R1emllcnQgZWluIGVrZWxoYWZ0ZXMgQXBmZWxtdXMsIGFiZXIgc2llIGlzdCBlaW5mYWNoIGFuenV3ZW5kZW4sCmZhbGxzIG1hbiB2b3JoZXIgc2Nob24gZWlubWFsIG1pdCBIYW5kZ3JhbmF0ZW4genUgdHVuIGhhdHRlLgoKSW0gS2xhcnRleHQ6IERhcyBpc3QgZGllIC0gZW50c2NodWxkaWd1bmcgLSBkdWVtbXN0ZSBNZXRob2RlLCBkaWUgaWNoCm1pciBkZW5rZW4ga2Fubi4gV2VubiBpY2ggbWl0IG1laW5lbiBKdW5nc2NoYXJraW5kZXJuIE9zdGVyZWllcgpiZW1hbGVuCndpbGwsIGRhbm4gZ2ViZSBpY2ggaWhuZW4gYXVjaCBrZWluZSBLdWdlbHNjaHJlaWJlciBkYWZ1ZXIsIG9id29obApLdWdlbHNjaHJlaWJlciBsZWljaHRlciB6dSBiZWRpZW5lbiBzaW5kIGFscyBQaW5zZWwgdW5kIERla29sYWNrLgoKV29yaW4gbGllZ3QgZGVubiBkZXIgU2lubiBkZXIgZmVydGlnZW4gSG9tZXBhZ2U/IERhc3Mgc2llIGJlbnV0emJhciBpc3QKb2RlciBkYXNzIGRpZSBTb2Z0d2FyZSwgbWl0IGRlciBzaWUgZXJzdGVsbHQgd3VyZGUsIGVpbmZhY2ggenUgYmVkaWVuZW4Kd2FyPwoKVW5nZWVpZ25ldGVzIFdlcmt6ZXVnLCB1bmJyYXVjaGJhcmVzIEVyZ2VibmlzLiBVbmQgIm1pdCBXb3JkIGthbm4gbWFuCmFsbGVzIG1hY2hlbiIgaXN0IGVpbmUgendhciB2ZXJicmVpdGV0ZSwgYWJlciBkdW1tZSBBbnNpY2h0LCBkaWUgaWNoCktpbmRlcm4gbmljaHQgdW5iZWRpbmd0IHZlcm1pdHRlbG4gbW9lY2h0ZS4KCgp2RwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQm9lc2UsIGJvZXNlLi4uIGRlLmFsdC5uZXRkaWdlc3QgYWdhaW4uLi4gKFJvbmRhLCAxNy4gTWFpIDIwMDMsIDAxOjE2OjA4KToKRnJvbTogQW5kcmV3IE1vcmdhbiA8YW5kcmV3Lm1vcmdhbkBlcmxhbmdlbi5uZXRzdXJmLmRlPgpOZXdzZ3JvdXBzOiBkZS5zb2MucmVjaHQud29obmVuClN1YmplY3Q6IFJlOiBXYXMgcGFzc2llcnQsIHdlbm4gR2FzaGVpemdlcmFldCBpbiBXaGcgbmljaHQgZ2V3YXJ0ZXQgd2lyZD8KRGF0ZTogV2VkLCAxNCBNYXkgMjAwMyAxMDo1ODoyNiArMDIwMApNZXNzYWdlLUlEOiA8M0VDMjA1MzIuNzAyMDMwNEBlcmxhbmdlbi5uZXRzdXJmLmRlPgoKQmVybmQgSG9mZXIgc2NocmllYjoKCj4gSmV0enQgc3RlbGxlIGljaCBtaXIgZGllIEZyYWdlLCB3YXMgd3VlcmRlIHBhc3NpZXJlbiwgd2VubiBpY2ggZGFzIG5pY2h0Cj4gamVkZXMgSmFociBtYWNoZT8gCgpXaWUgd2FlcnMgbWl0IHN0ZXJiZW4/CgpTb2xjaGUgR2VyYXRlIHNpbmQgcmVsYXRpdiBmZWluIGFiZ2VzdGltbXQuIFNvd29obCBQaWxvdGZsYW1tZSBhbHMgYXVjaCAKQWJnYXNrbGFwcGUgdXN3IHZlcmRyZWNrZW4gdW5kIG51dHplbiBhYiB1bmQgbXVlc3NlbiBqdXN0aWVydCB1bmQvb2RlciAKZ2V3YXJ0ZXQgd2VyZGVuLCB1bSBkaWUgU2ljaGVyaGVpdCB6dSBlcmhhbHRlbi4KCj5LYW5uIGRlciBWZXJtaWV0ZXIgZGFzIG5hY2hwcnVlZmVuPwoKTmFjaCBlaW4gcGFhciBUYWdlbiBpc3QgZGVyIExlaWNoZW5nZXJ1Y2ggc2Nob24gemllbWxpY2ggcGVuZXRyYW50Li4uCgpNYXJ0aW4gR2VyZGVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdGF0aSBISD8gKEdyaW1tYm9ybiwgMTcuIE1haSAyMDAzLCAwNjoxODoyMik6Cn4jISBybj1EYXJrbG9yIHJ0PTEwNTMxMjY0Mzkgcmc9dHJlZmZlbgp+IyEgdGlkPTEwNTMwNzM2MjQKTW9lZ2xpY2guIEFiZXIgZWluZSBCcnVlY2tlIHdpcmQgbnVyIGVpbm1hbCBnZXphZWhsdCwgYXVjaCB3ZW5uIG1laHJlcmUgUGVubmVyCmRydW50ZXJsaWVnZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEphYWFhYWFhLCBlcyBnaWJ0IGlobiB3aWVkZXIuLi4gKFpvb2ssIDE3LiBNYWkgMjAwMywgMTc6NTA6MzQpOgp+IyEgb249Wm9vayBvdD0xMDUzMTg2NjI3IG9nPXRyZWZmZW4KfiMhIHJuPVNoYWtlZGJlZXIgcnQ9MTA1MzE4NjAwNiByZz10cmVmZmVuCn4jISB0aWQ9MTA1MjMwNDA3MwpPbGxpIG9kZXIgRHJvbGxpPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEphYWFhYWFhLCBlcyBnaWJ0IGlobiB3aWVkZXIuLi4gKExlaWJpLCAxNy4gTWFpIDIwMDMsIDE3OjUwOjU4KToKfiMhIHJuPVpvb2sgcnQ9MTA1MzE4NjYzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTIzMDQwNzMKZHJvbGxpIG5hdHVlcmxpY2ggOikKCgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSmFhYWFhYWEsIGVzIGdpYnQgaWhuIHdpZWRlci4uLiAoTGlhcmEsIDE3LiBNYWkgMjAwMywgMTc6NTE6MjIpOgp+IyEgcm49TGVpYmkgcnQ9MTA1MzE4NjY1OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTIzMDQwNzMKU28sIHdpZSBEclpvb2s/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBKYWFhYWFhYSwgZXMgZ2lidCBpaG4gd2llZGVyLi4uIChMZWliaSwgMTcuIE1haSAyMDAzLCAxNzo1MTozNCk6Cn4jISBybj1MaWFyYSBydD0xMDUzMTg2NjgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjMwNDA3MwpnZW5hdSBzbyA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEphYWFhYWFhLCBlcyBnaWJ0IGlobiB3aWVkZXIuLi4gKExpYXJhLCAxNy4gTWFpIDIwMDMsIDE3OjUxOjQ0KToKfiMhIHJuPUxlaWJpIHJ0PTEwNTMxODY2OTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzA0MDczCkhhaCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEphYWFhYWFhLCBlcyBnaWJ0IGlobiB3aWVkZXIuLi4gKExpYXJhLCAxNy4gTWFpIDIwMDMsIDE3OjUyOjAyKToKfiMhIHJuPUxpYXJhIHJ0PTEwNTMxODY3MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzA0MDczCldhcyBoYWIgaWNoIGpldHp0IGdld29ubmVuPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEphYWFhYWFhLCBlcyBnaWJ0IGlobiB3aWVkZXIuLi4gKExlaWJpLCAxNy4gTWFpIDIwMDMsIDE3OjUyOjIyKToKfiMhIHJuPUxpYXJhIHJ0PTEwNTMxODY3MjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzA0MDczCmVpbmVuIHN0YXRpIG9obmUgZHJvbGxpPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEphYWFhYWFhLCBlcyBnaWJ0IGlobiB3aWVkZXIuLi4gKExpYXJhLCAxNy4gTWFpIDIwMDMsIDE3OjUyOjUwKToKfiMhIHJuPUxlaWJpIHJ0PTEwNTMxODY3NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzA0MDczCkVpbmVuIFN0YW5kIG1pdCAxMDAwIFNvcnRlbiBnZWJyYW5udGVyIE1hbmRlbG4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogSmFhYWFhYWEsIGVzIGdpYnQgaWhuIHdpZWRlci4uLiAoTGVpYmksIDE3LiBNYWkgMjAwMywgMTc6NTQ6MDApOgp+IyEgcm49TGlhcmEgcnQ9MTA1MzE4Njc3MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTIzMDQwNzMKbWFuZGVsbiBpbSBzb21tZXI/Pwp3ZXIgd2lsbCBkZW4gc293YXMgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogSmFhYWFhYWEsIGVzIGdpYnQgaWhuIHdpZWRlci4uLiAoTGlhcmEsIDE3LiBNYWkgMjAwMywgMTc6NTY6MDQpOgp+IyEgcm49TGVpYmkgcnQ9MTA1MzE4Njg0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTIzMDQwNzMKQWxzbyBiZWkgdW5zIGltIFJoZWlubGFuZCBuZW5udCBzaWNoIGRhcyBLaXJtZXMgLi4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogSmFhYWFhYWEsIGVzIGdpYnQgaWhuIHdpZWRlci4uLiAoWm9vaywgMTcuIE1haSAyMDAzLCAxNzo1Nzo0Nik6Cn4jISBybj1MaWFyYSBydD0xMDUzMTg2OTY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjMwNDA3MwpJY2ggbW9lY2h0ZSBudXIgZWlubWFsIGJldG9uZW4sIHdpZSBlaW4gZ2FuemUgU2NobWFycm4tVGhyZWFkIGF1cyBzbyAKZWluZXIgZWluZmFjaGVuIEZyYWdlIGVudHN0ZWhlbiBrYW5uLi4uIDspCgpab29rLCBFcnNjaGFmZmVyLWRlcy1NZWdhc2NobWFycm4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogSmFhYWFhYWEsIGVzIGdpYnQgaWhuIHdpZWRlci4uLiAoTGlhcmEsIDE3LiBNYWkgMjAwMywgMTc6NTg6NTApOgp+IyEgcm49Wm9vayBydD0xMDUzMTg3MDY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjMwNDA3MwpIbSwgc29sY2ggZGV6ZW50ZSBIaW53ZWlzZSB1ZWJlcmhvZXJ0IG1hbiBhbHMgWndlcmdpbiBsb2NrZXIuIDopCgpBdXNzZXJkZW0gaXN0IGdhciBrZWluIFNvbW1lciBMZWliaSAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBKYWFhYWFhYSwgZXMgZ2lidCBpaG4gd2llZGVyLi4uIChMZWliaSwgMTcuIE1haSAyMDAzLCAxNzo1OTo0MCk6Cn4jISBybj1MaWFyYSBydD0xMDUzMTg3MTMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjMwNDA3MwptYW4ga29lbm50ZSBtZWluZW4sIGR1IGJpc3QgaG9iYml0IDopCmhpZXIgaXN0IHNvbW1lciwgenVtaW5kZXN0IHNjaGVpbnQgZGllIHNvbm5lLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBKYWFhYWFhYSwgZXMgZ2lidCBpaG4gd2llZGVyLi4uIChMaWFyYSwgMTcuIE1haSAyMDAzLCAxODowMDoxNik6Cn4jISBybj1MZWliaSBydD0xMDUzMTg3MTgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjMwNDA3MwpIbSwgZGFzIG1pdCBkZW0gSG9iYml0IHdhciBhYmVyIGVpbiBUaWVmc2NobGFnLiA6KSBXaWUgaGFzdGUgZGVubiBkYXMgZ2V0egpnZW1laW50PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IEphYWFhYWFhLCBlcyBnaWJ0IGlobiB3aWVkZXIuLi4gKExlaWJpLCAxNy4gTWFpIDIwMDMsIDE4OjAxOjA4KToKfiMhIHJuPUxpYXJhIHJ0PTEwNTMxODcyMTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUyMzA0MDczCm5hIHdlbm4gZHUgMTAwMCB2ZXJzY2hpZWRlbmUgc29ydGVuIG1hbmRlbG4gd2lsbHN0LCBrYW5uc3QgZHUga2VpbiB6d2VyZyBzZWluLgpkZXIgbWVya3QgZG9jaCBkYSBrZWluZW4gdW50ZXJzY2hpZWQuIHp3ZXJnZSBrb2VubmVuIGF1c3NlcmRlbSBudXIgYmlzIDIKemFlaGxlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogSmFhYWFhYWEsIGVzIGdpYnQgaWhuIHdpZWRlci4uLiAoTGlhcmEsIDE3LiBNYWkgMjAwMywgMTg6MDI6NDQpOgp+IyEgcm49TGVpYmkgcnQ9MTA1MzE4NzI2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTIzMDQwNzMKMS4gSWNoIGhhYmUgbmljaHQgZ2VzYWd0LCBkYXNzIGljaCBhbGxlIFNvcnRlbiBrb3N0ZW4gbW9lY2h0ZS4gOikKMi4gVGphLCBzbyBrYW5uIG1hbiBzaWNoIGlycmVuLCBMZWliaSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBKYWFhYWFhYSwgZXMgZ2lidCBpaG4gd2llZGVyLi4uIChMZWliaSwgMTcuIE1haSAyMDAzLCAxODowMzozNCk6Cn4jISBybj1MaWFyYSBydD0xMDUzMTg3MzY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjMwNDA3MwpoZWhlIHVuZCBlaW4gMy4gZmFlbGx0IGRpciBuaWNoIGVpbiwgd2VpbCB6d2VyZ2Uga29lbm5lbiBudXIgYmlzIHp3ZWkgemFlaGxlbi4KaWNoIGhhYnMgamEgZ2VzYWd0IDopCgpsZWliaSBraWNoZXJ0IGF1Y2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBKYWFhYWFhYSwgZXMgZ2lidCBpaG4gd2llZGVyLi4uIChMaWFyYSwgMTcuIE1haSAyMDAzLCAxODowNDo0Nyk6Cn4jISBybj1MZWliaSBydD0xMDUzMTg3NDE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MjMwNDA3MwpXaWVzbyBzb2xsdGUgaWNoIHp1IDMuIGV0d2FzIHNhZ2VuLCB3ZW5uIDMuIGdhciBuaWNodCBleGlzdGllcnQ/IERhZnVlciBiaXN0CmR1IHNjaGVpbmJhciB6dXN0YWVuZGlnLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV0ZGlnaXN0IG1hbCB3aWVkZXIgKERlZXBibHVlLCAxOC4gTWFpIDIwMDMsIDEyOjQwOjI0KToKWyBWb3JhbmdlZ2FuZ2VuIHdhciBlaW4gQmVyaWNodCwgdWViZXIgZWluZW4gQmVzdWNoIGluIGRlciBTdWJ3YXktRmlsaWFsZQpCaWVsZWZlbGQsYmVpZGVyZGVyUmV6ZW5zZW50ZWhlcnVuenVmcmllZGVubWl0ZGVyZ2Vib3RlbmVuCkxlaXN0dW5nd2FyLl0KCkZyb206IFN0ZXBoYW4gRG9lcm5lciA8c3RlcGhhbi5kb2VybmVyQGVwb3N0LmRlPgpOZXdzZ3JvdXBzOiBkZS5hbHQuZmFuLmZhc3Rmb29kClN1YmplY3Q6IFJlOiBFaW4gQmVzdWNoIGJlaSBTdWJ3YXkgQmllbGVmZWxkCkRhdGU6IFdlZCwgMTQgTWF5IDIwMDMgMjM6MzQ6MzEgKzAyMDAKTWVzc2FnZS1JRDogPDE3Njc2NjcuT29JcnRxSFdyY0BhbnRpLW1pY3Jvc29mdC5kZT4KCk1pY2hhZWwgSG9senQgc2NocmllYiBpbiBkZS5hbHQuZmFuLmZhc3Rmb29kOgoKPiBBdWNoIHdlbm4gQmllbGVmZWxkIGVpZ2VudGxpY2ggbmljaHQgZXhpc3RpZXJ0IChiaXR0ZSBzZWxiZXIgZXJnb29nbGVuCj4gbWl0IFN1Y2hiZWdyaWZmICJCaWVsZWZlbGQgVmVyc2Nod29lcnVuZyIpLCBoYWJlIGljaCBtaWNoIGhldXRlIG1hbAo+IGF1ZmdlbWFjaHQsIHVtIGRlbiBkb3J0aWdlbiBTdWJ3YXkgenUgdGVzdGVuLiBCaXNsYW5nIHdhciBpY2ggaW1tZXIKPiBuYWNoIEJvY2h1bSBnZWZhaHJlbiwgd28gaWNoIGF1Y2ggc3RldHMgc2VociB6dWZyaWVkZW4gd2FyLgoKV2FzIGVyd2FydGVzdCBkdT8gU0lFIG11c3N0ZW4gYmlubmVuIGt1ZXJ6ZXJzdGVyIFplaXQgZWluZSBnYW56ZSBNZW5nZQpQYXBwa3VsaXNzZSBhdWZzdGVsbGVuLCBlaW4gc2NobGVjaHRlciBTY2hhdXNwaWVsZXIsIGRlciBub2NoIG5pZQpTYW5kd2ljaGVzIHp1YmVyZWl0ZXQgaGF0LCBtdXNzdGUgZWluZW4gTWl0YXJiZWl0ZXIgbWllbmVuIHVuZCBlaW5lClBzZXVkby1TdWJ3YXlsYWRlbiBtdXNzdGUgYmlubmVuIGt1ZXJ6ZXJzdGVyIFplaXQgYXVmZ2FiYXV0IHVuZAplaW5nZXJpY2h0ZXQgd2VyZGVuLiBOdXIgd2VpbCBkdSB3aWRlciBiZXNzZXJlcyBXaXNzZW4gaW4gZGllCiJCaWVsZWZlbGRlciIgU3Vid2F5ZmlsaWFsZSBnZWhlbiB3b2xsdGVzdC4gV2llIHdhciBkZW5uIGRpZQpzY2hhdXNwaWVsZXJpc2NoZSBMZWlzdHVuZyBkZXIgUGFzc2FudGVuIHVuZCBLdW5kZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIRUlOWiBQUlVlTExFUiAoS2VrcywgMTguIE1haSAyMDAzLCAxNDoyOTozMSk6CkhFSU5aIFBSVWVMTEVSIChPZXN0ZXJyZWljaGlzY2hlciBGb3JtZWwgMS1Lb21tZW50YXIpOgoiR2VyaGFyZCBCZXJnZXIgd3VjaHMgZGFtYWxzIHdhZWhyZW5kIGVpbmVzIFJlbm5lbnMgZWluIEJhcnQhIFNpZSBzZWhlbiwgd2llCnNlbnNpYmVsIGRpZSBGYWhyZXIgc2luZCEiIChGcmF1ZW4gd2VpbmVuLCBNYWVubmVyIG11dGllcmVuIC0gb2RlciB3aWU/KQoiVW5kIG51biB3dWVuc2NoZW4gd2lyIHVucyBlaW4gYXVmcmVnZW5kZXMgUmVubmVuIC0gbWl0IHZpZWxlbiBzcGFubmVuZGVuCkthZW1wZmVuIGJpcyB6dXIgZXJzdGVuIEt1cnZlLi4uIiAoRGllIGdhbnplbiAyMDAgTWV0ZXI/PykKKmtla3MgLSBsaWVndCBsYWNoZW5kIHVudGVybSBUaXNjaCAoT2VzaS1IdW1vci4uLiAtIG5pY2h0IGFuc3RlY2tlbmQhKSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIRUlOWiBQUlVlTExFUiAoRGVlcGJsdWUsIDE5LiBNYWkgMjAwMywgMDE6MDU6MDApOgp+IyEgcm49S2VrcyBydD0xMDUzMjYwOTcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MzI2MDk3MQpFcmlubmVydCBtaWNoIGFuIGZvbGdlbmRlbiBTYXR6IGFubGFlc3NsaWNoIGRlcyBGdXNzYmFsbC1XTS1TcGllbGVzCkRldXRzY2hsYW5kLVN1ZWRrb3JlYSBhdWYgT2UzOgoiV2VyZmVuIFNpZSB6dXIgRmVpZXIgZGVzIFRhZ2VzIGRvY2ggSWhyZW4gSHVuZCBhdWYgZGVuIEdyaWxsLiIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRhcyBnZWh0IGZpeCAoRGVlcGJsdWUsIDE5LiBNYWkgMjAwMywgMTA6NTg6MDYpOgpbTW9lcmRlcjpCcm90bmFlbF0ga2xlcmlrZXIgYWJ3ZXJ0ZW4KIEh1bW5pICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCZWltIEV1cm8gZmVobHQgZGllIDEzNy1DZW50LU11ZW56ZSAoR3JpbW1ib3JuLCAxOS4gTWFpIDIwMDMsIDE3OjM1OjU4KToKfiMhIHJuPVpvb2sgcnQ9MTA1MzM1NzgwNyByZz13d3cKfiMhIHRpZD0xMDUzMzU1NjI4Ck5lLCBzY2hvbiBrbGFyLCBnZWh0IGphIGF1Y2ggdW0gTWF0aGVtYXRpa2VyIHVuZCBuaWNodCB1bQpXaXJ0c2NoYWZ0c2JpbmRlc3RyaWNrZGluZ2Vucy4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQmVpbSBFdXJvIGZlaGx0IGRpZSAxMzctQ2VudC1NdWVuemUgKFpvb2ssIDE5LiBNYWkgMjAwMywgMTc6MzY6NDApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTMzNTg1NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzMzU1NjI4CkljaCB3b2xsdGUgc2FnZW46IEljaCBoYWJzIG5pY2h0IGJlaGF1cHRldC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJlaW0gRXVybyBmZWhsdCBkaWUgMTM3LUNlbnQtTXVlbnplIChab29rLCAxOS4gTWFpIDIwMDMsIDE3OjM2OjUwKToKfiMhIG9uPVpvb2sgb3Q9MTA1MzM1NzgwNyBvZz13d3cKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDUzMzU3NzAxIHJnPXd3dwp+IyEgdGlkPTEwNTMzNTU2MjgKWm9vayB3YXIgZXMgbmljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCZWltIEV1cm8gZmVobHQgZGllIDEzNy1DZW50LU11ZW56ZSAoWm9vaywgMTkuIE1haSAyMDAzLCAxNzozNzowNik6Cn4jISBybj1ab29rIHJ0PTEwNTMzNTg2MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzMzU1NjI4CkFsbGVzIG11c3MgbWFuIHNlbGJzdCB2ZXJsZWdlbi4gWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJlaW0gRXVybyBmZWhsdCBkaWUgMTM3LUNlbnQtTXVlbnplIChHcmltbWJvcm4sIDE5LiBNYWkgMjAwMywgMTc6Mzg6MDApOgp+IyEgcm49Wm9vayBydD0xMDUzMzU4NjI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MzM1NTYyOApEYXMgc29sbHRlIERpY2ggbmljaHQgdmVybGVnZW4gbWFjaGVuLCB3ZW5uIER1IGhpbnRlciBEaXIgc2VsYmVyIGhlcmtlaHJlbgptdXNzdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQmVpbSBFdXJvIGZlaGx0IGRpZSAxMzctQ2VudC1NdWVuemUgKFpvb2ssIDE5LiBNYWkgMjAwMywgMTc6Mzk6MDApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTMzNTg2ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzMzU1NjI4CkljaCBrYW5uIGRhbWl0IGxlYmVuLCBhdWNoIHdlbm4gbWlyIG1laHIgVW50ZXJzdHVldHp1bmcgYmVpbSBVbWdhbmcgbWl0Cm1laW5lbiBVbnp1bGFlbmdsaWNoa2VpdGVuIHNjaG9uIHJlY2h0IHdhZXJlLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEJlaW0gRXVybyBmZWhsdCBkaWUgMTM3LUNlbnQtTXVlbnplIChHcmltbWJvcm4sIDE5LiBNYWkgMjAwMywgMTc6NDA6MjUpOgp+IyEgcm49Wm9vayBydD0xMDUzMzU4NzQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MzM1NTYyOApEaWUgV2VsdCBpc3QgZ2VtZWluLCBrYWx0IHVuZCBlcmJhcm11bmdzbG9zIGhhcnQuIEdld29laG4gRGljaCBkcmFuIG9kZXIgZ2VoCnVudGVyLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCZWltIEV1cm8gZmVobHQgZGllIDEzNy1DZW50LU11ZW56ZSAoQW50aGVhLCAxOS4gTWFpIDIwMDMsIDE3OjQzOjQ3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDUzMzU4ODI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MzM1NTYyOApXaWVzbyAib2RlciI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3dW5zY2ggKEdub21lLCAxOS4gTWFpIDIwMDMsIDE5OjE3OjMxKToKQ3V4ZWwgZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBhbi4KRGVpbmUgU2NodWhlIGdsdWVoZW4ga3VyeiBhdWYgdW5kIGhlaWxlbiBEaWNoIGVpbiB3ZW5pZy4KCmRhcyBoYWV0dCBpY2ggZ2VybiBpbW1lciBzby4uLiBtb3Jnb3RoPyA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlbmF1ISAoTGlhcmEsIDE5LiBNYWkgMjAwMywgMjM6NDI6NDIpOgpQYW5pYyBrcmVpc2NodC4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IENoaXJ1cmdpZSAoRGVlcGJsdWUsIDIwLiBNYWkgMjAwMywgMDk6MzE6MzYpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwNTMzNjcyNzMgcmc9d2l0emUKfiMhIHRpZD0xMDUzMzY3MDk0ClsgXSBEdSBrZW5uc3QgZGllIEFyYmVpdHNsb3NlbnphaGxlbiAxOTk3IHVudGVyIEtvaGwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogQ2hpcnVyZ2llIChEZWVwYmx1ZSwgMjAuIE1haSAyMDAzLCAwOTozNzoxOCk6Cn4jISBybj1WYW5pb24gcnQ9MTA1MzQwNjI5NyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA1MzM2NzA5NApVbmQgQWdpdGF0b3Jlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IENoaXJ1cmdpZSAoWm9vaywgMjAuIE1haSAyMDAzLCAxNToxMToxNSk6Cn4jISBvbj1ab29rIG90PTEwNTM0MzYyNjcgb2c9ZGlza3Vzc2lvbgp+IyEgcm49Wm9vayBydD0xMDUzNDM2MjM1IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDUzMzY3MDk0CkdsZ2xnbGdsZ2xnbC4uLi4gZGVyIERpZW5zdGFnIGhhdCBtaWNoIHNoY29uIGFyZyBiZWJldXRlbHQsLi4uLgoKClpvb2sgYmx1YmJlcnQgdm9yIHNpY2ggaGluLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPdXQgb2YgdGhlIGNvbnRleHQgZ2VyaXNzZW4gKE1vcmdvdGgsIDIwLiBNYWkgMjAwMywgMjE6MzY6MjMpOgpEdSBzYWdzdDogaXMgemllbWxpY2ggc3Vlc3MuIGthbm4gbWFuIHNvIHJ1bnRlcmtpcHBlbiBkYXMgemV1ZwpIdW1uaSBzaW5ndCAnR3VtbWliYWVyZW4uLi4uIHNpZSBzaW5mdWVyIERpY2ggZGEsIHdlbm4gRHUgc2llIGJyYXVjaHN0Li4gZGFzCnNpbmQgZGllIEd1bW1pYmFlcmVuIScuCkh1bW5pIHNpbmd0ICdJbSBTYWZ0IGxpZWd0IGRpZSBLcmFmdC4uLicuCkR1IHNhZ3N0OiBuZWVlLCBkYXMgc2luZCBndW1taXB1cHBlbgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPdXQgb2YgdGhlIGNvbnRleHQgZ2VyaXNzZW4gKEh1bW5pLCAyMC4gTWFpIDIwMDMsIDIxOjM3OjEzKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA1MzQ1OTM4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTM0NTkzODMKRHUgd2lsbHN0IG1pY2ggbnVyIGJsb3NzdGVsbGVuLCBkYXNzIGljaCBkZW4gdGV4dCBuaWNodCBtZWhyIHZvbGxzdGFlbmRpZwprYW5uLiBXaXJkIHdpcmtpbGNoIFplaXQgZnVlciBCcmllc2VsYW5nLi4uCgpIdW1uaQpQUzogRGFzIHdhciBudW4gd2lya2xpY2ggZWluIEluc2lkZXIuIFVuZCBpY2ggZ2xhdWJlLCBlcyBzaW5kIG5vY2ggZ2VuYXUgMgpMZXV0ZSBoaWVyLCBkaWUgaWhuIHZlcnN0ZWhlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGJvcmcgKEdyaW1tYm9ybiwgMjAuIE1haSAyMDAzLCAyMjo0NDoxOCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDUzNDYyOTg5IHJnPXdpdHplCn4jISB0aWQ9MTA1MzQ2Mjk4OQpOYWphLCBkaWUgZGV1dHNjaGVuIERpYWxla3RlIGhhdCB3b2hsIGVpbiB0YWl3YW5lc2ljaGVyIEdhZXJ0bmVyCnp1c2FtbWVuZ2VzY2h1c3RlcnQuIEJvdHRyb3AgaW0gUmhlaW5sYW5kLCBpY2ggZ2xhdWIgZXMgZ2VodCBsb3MuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBib3JnIChMdWcsIDIwLiBNYWkgMjAwMywgMjI6NDg6NDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTM0NjM0NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzNDYyOTg5ClVuZCBQbGF0dCBpc3QgZGFzIGF1Y2ggbmljaHQuCkwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBib3JnIChHcmltbWJvcm4sIDIwLiBNYWkgMjAwMywgMjI6NDk6MjgpOgp+IyEgcm49THVnIHJ0PTEwNTM0NjM3MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzNDYyOTg5CkFlaCwgZG9jaC4gR2VuYXUgZGFzIGlzdCBlczogcGxhdHQuIFVuZCBuaWNodGx1c3RpZy4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlaWFoLi4uIChMdWcsIDIwLiBNYWkgMjAwMywgMjI6NTM6NTMpOgpXb21pdCBzaWNoIGhpZXIgZGllIFNjcmlwdGVyIGFsbGVzIGJlc2NoYWVmdGlnZW46CgpHcmltbWJvcm4gdGVpbHQgRGlyIG1pdDogVW5kIGRhcyBpc3Qgbm9jaCBmYXJiaWc6IE1FR0E6IFJlXjQ4MjA1IC0gNDgwLzQ4MCwKR3JpbW1ib3JuIHRlaWx0IERpciBtaXQ6IG5vY2ggMCAoTHVnLCAyMC4gTWFpIDIwMDMsIDIyOjUwOjIwKSA0NzggU1IKClRzc3MKTC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWlhaC4uLiAoR3JpbW1ib3JuLCAyMC4gTWFpIDIwMDMsIDIyOjU1OjQzKToKfiMhIHJuPUx1ZyBydD0xMDUzNDY0MDMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MzQ2NDAzMwpUamEsIG51ciBrZWluIEZydXN0IHdlaWwgRHUgbWl0IERlaW5lbiBhbGJlcm5lbiBTYWJvdGFnZXZlcnN1Y2hlbiBuaWNodApkdXJjaGtvbW1zdC4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2VpYWguLi4gKEx1ZywgMjAuIE1haSAyMDAzLCAyMjo1NjoxMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1MzQ2NDE0MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTM0NjQwMzMKUGZ0LCBhbGJlcm4gaXN0IGVzLCBkaWUgU2NoYWVuZHVuZyB6dSBzdG9wcGVuLi4uCkwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZWlhaC4uLiAoR3JpbW1ib3JuLCAyMC4gTWFpIDIwMDMsIDIzOjAyOjMwKToKfiMhIHJuPUx1ZyBydD0xMDUzNDY0MTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MzQ2NDAzMwpXZWlzc3QgRHUsIGRhcyBpc3Qgd2llIGltIHVzZW5ldCBvZGVyIGRlbSByZXN0bGljaGVuIHdpcmtsaWNoZW4gTGViZW46IFdlbm4KbWFuIGlyZ2VuZHdvIGRhenVrb21tdCBzb2xsdGUgbWFuIHNlaGVuIHdpZSBkaWUgaGVycnNjaGVuZGVuIFNpdHRlbiBzaW5kLCB1bmQKc2ljaCBkZW0gZW50d2VkZXIgaGFsYndlZ3MgYW5wYXNzZW4gb2RlciBzaWNoIHZlcmFic2NoaWVkZW4uIFNpbm5sb3NlcndlaXNlLApudXIgZGVyIFByb3Zva2F0aW9uIHdlZ2VuIHVuZCBvaG5lIGhhbGJ3ZWdzIGdsYXVid3VlcmRpZ2UgQWx0ZXJuYXRpdmVuCnJ1bXp1cHJvbGxlbiB3aXJrdCBtYXhpbWFsIGFuZmFuZ3MgY29vbCwgYmFsZCBhYmVyIG51ciBub2NoIGtpbmRpc2NoIHVuZApsYWVjaGVybGljaC4gRGFzIGlzdCB3aWUgS2lyY2hlbiBhbnp1ZW5kZW4uIEJyaW5ndCBuaXguCgpEaWUgd2FocmUgS3Vuc3QgaXN0IGVzLCBkaWUgUmVnZWxuIGdlZ2VuIGRpZSBTcGllbGVyIGFuenV3ZW5kZW4sIGplbWFuZGVuIG1pdApzZWluZW4gZWlnZW5lbiBNaXR0ZWxuIGF1ZiBzZWluZW0gZWlnZW5lbiBTcGllbGZlbGQgenUgc2NobGFnZW4uIAoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXZWlhaC4uLiAoTHVnLCAyMC4gTWFpIDIwMDMsIDIzOjAzOjM4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDUzNDY0NTUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MzQ2NDAzMwpBY2hxdWFyay4gV2llIGxhbmd3ZWlsaWcuIFVuZCB2b3IgYWxsZW06IE5JQ0hUIFBMQVRUIEdFTlVHIQpIYWIgc2NobGllc3NsaWNoIGtlaW4gZ2VoaXJuLgpMLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2VpYWguLi4gKEdyaW1tYm9ybiwgMjAuIE1haSAyMDAzLCAyMzoxMToxMyk6Cn4jISBybj1MdWcgcnQ9MTA1MzQ2NDYxOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTM0NjQwMzMKQWxzIGVoZW1hbGlnZXIgQmlvLUxLbGVyIGthbm4gaWNoIERpciB2ZXJyYXRlbiwgZGFzcyBEdSB6aWVtbGljaCBzaWNoZXIgZWluCkdlaGlybiBoYXN0LiBTZWxic3QgaWNoIGhhYmUgZWlucywgYXVjaCB3ZW5uIGljaCBvZnQgZGFzIEdlZnVlaGwgaGFiZSBkYXNzIGRhcwpSdWVja2VubWFyayBhdXNyZWljaGVuIHd1ZXJkZS4gQWJlciBzcGFldGVzdGVucyBiZWltIG5hZWNoc3RlbgpLb3Bmc2NobWVyemFuZmFsbCB3ZWlzcyBpY2g6IGVzIG11c3MgZGEgd2FzIGdlYmVuIHdhcyB3ZWggdHV0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYm9yZyAoSHVtbmksIDIxLiBNYWkgMjAwMywgMDg6NDY6MjApOgp+IyEgb249SHVtbmkgb3Q9MTA1MzQ5OTU3MCBvZz13aXR6ZQp+IyEgcm49RGVlcGJsdWUgcnQ9MTA1MzQ2Mjk4OSByZz13aXR6ZQp+IyEgdGlkPTEwNTM0NjI5ODkKTmFqYSwgbmljaHQgdW5iZWRpbmd0IHNhdWJlciByZWNoZXJjaGllcnQgLSBrZWluIGVpbnppZ2VzICwsd29sbCcnIGJlaSBkZW4KU2F1ZXJsYWVuZGVybi4uLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdlaWFoLi4uIChNdWFkaWIsIDIxLiBNYWkgMjAwMywgMDk6NTM6MDkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTM0NjQ1NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzNDY0MDMzCm9oIGRhcyBtaXQgZGVuIGtpcmNoZW4gc2FzcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2VpYWguLi4gKEdyaW1tYm9ybiwgMjEuIE1haSAyMDAzLCAxMDowOTo1MSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA1MzUwMzU4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTM0NjQwMzMKTmFqYSwgc3RpbW10IGRvY2guIE1hbCBhYmdlc2VoZW4gdm9uIGRlbiB0YXRzYWVjaGxpY2hlbiBBdXN3aXJrdW5nZW4gaXN0IHNvd2FzCmRvY2ggemllbWxpY2ggaW5mYW50aWxlcyBQcm90ZXN0Z2VoYWJlIGRhcyBub2NoIGFtIGVoZXN0ZW4gZGVuIFByb3Rlc3RpZXJlbmRlbgpkaXNxdWFsaWZpemllcnQuIEljaCBtZWluZSwgImljaCBmaW5kZSBldXJlbiBHbGF1YmVuLCBtaXQgZGVtIGljaCBlaCBuaWNodCBpbgpCZXJ1ZWhydW5nIGtvbW1lLCBzY2hlaXNzZSwgYWxzbyB6dWVuZGUgaWNoIGV1Y2ggZXVyZSBLaXJjaGUgYW4iIGlzdCBqYSBudW4Kd2lya2xpY2ggbmljaHQgYWxzIEF1c2RydWNrIHVlYmVybGVnZW5lciBJbnRlbGxpZ2VueiB6dSBiZXplaWNobmVuLiBTb3dhcyBpc3QKU2FuZGthc3RlbmdlaGFiZSwgbnVyIGRhc3MgaGFsdCBkdW1tZXJ3ZWlzZSBkaWUgdmVyd2VuZGV0ZW4gU2NoYWV1ZmVsY2hlbgpuaWNodCBnYW56IHNvIGhhcm1sb3Mgc2luZC4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogV2VpYWguLi4gKE11YWRpYiwgMjEuIE1haSAyMDAzLCAxMDoxMTowOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1MzUwNDU5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTM0NjQwMzMKaWNoIHN0aW1tZSBkaXIgenUuIHVuZCBnZW5hdSBkZXN3ZWdlbiBzYXNzIGRhcyBqYSBhdWNoLiBudW4gdHV0IG1pciBsdWcgZmFzdApsZWlkIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBXZWlhaC4uLiAoQmFtYmksIDIxLiBNYWkgMjAwMywgMTI6Mjc6MTUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTM0NjUwNzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzNDY0MDMzCkljaCBnZWJlIERpciBSZWNodCwgZGFzcyBzb3dvaGwgTHVnIGFscyBhdWNoIER1IHdvaGwgZWluIEdlaGlybiBoYWJlbiwgYWJlcgpkaWUgVGF0c2FjaGUsIGRhc3MgZWluZW0gd28gd2FzIHdlaCB0dXQgaXN0IGtlaW4gQmV3ZWlzLCBkYXNzICJlaW5lciIgYXVjaCBlaW4KR2VoaXJuIGhhdCAtIHNjaG9uIGdhciBuaWNodCBhbiBkZXIgU3RlbGxlLCB3b3Mgd2VodHV0LgpPZGVyIHdpbGxzdCBEdSBzYWdlbiwgamVtYW5kIGhhZXR0ZSBlaW4gR2VoaXJuIGFtIEEqLCBudXIgd2VpbCBpY2ggZGVtIGRhCnJlaW50cmV0ZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBib3JnIChHcmltbWJvcm4sIDIxLiBNYWkgMjAwMywgMTI6Mjc6MTcpOgp+IyEgb249Q2FkcmFjaCBvdD0xMDUzNTEyNzMwIG9nPXdpdHplCn4jISBybj1EZWVwYmx1ZSBydD0xMDUzNDYyOTg5IHJnPXdpdHplCn4jISB0aWQ9MTA1MzQ2Mjk4OQprZWluZSBBaG51bmcgdm9tIFJoZWlubGFuZCB3dWVyZCBpY2ggc2FnZW4uLi4KCkNhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFdlaWFoLi4uIChDcm9mdCwgMjEuIE1haSAyMDAzLCAxODo1MzoyMCk6Cn4jISBybj1EYXJrbG9yIHJ0PTEwNTM1MzU5NzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzNDY0MDMzCkFsbGVzIGtsYXIsIERhcmtsb3I/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogV2VpYWguLi4gKFpvb2ssIDIxLiBNYWkgMjAwMywgMTg6NTM6NDQpOgp+IyEgcm49Q3JvZnQgcnQ9MTA1MzUzNjAwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTM0NjQwMzMKWWVhaCEgRW5kbGljaCBhdWNoIG1hbCBuZW4gQXJ0aWtlbCB2ZXJsZWd0IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2VpYWguLi4gKE1haGFyZXQsIDIxLiBNYWkgMjAwMywgMTg6NTc6NTkpOgp+IyEgcm49QmFtYmkgcnQ9MTA1MzUxMjgzNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTM0NjQwMzMKRGFzIEdlaGlybiBoYXQga2VpbmUgU2NobWVyenplbGxlbi4gV2FzIGltbWVyIGRpciBkYSB3ZWh0dXQsIHdlbm4gZXMgd2VodHV0LAplcyBpc3QgZ2FueiBzaWNoZXIgbmljaHQgZGVpbiBHZWhpcm4uIEVzIHNlaSBkZW5uLCBkdSBiaXN0IGRhIGFuZGVycwpzdHJ1a3R1cmllcnQsIGFscyBkaWUgU3RhbmRhcnRhdXNnYWJlLgoKTWFoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogV2VpYWguLi4gKEdub21lLCAyMS4gTWFpIDIwMDMsIDIwOjEzOjE4KToKfiMhIHJuPU1haGFyZXQgcnQ9MTA1MzUzNjI3OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTM0NjQwMzMKLi4uYWJlciBhbHMgYmlvLUtMZXIgd3Vzc3RlciBlciBkYXMgbWFsIGJlc3RpbW10IHVuZCBzZWluIChudW4pIGZlaGxlbmRlcwpncm9zc2hpcm4gbWFjaHQgaWhtIHNjaHdlciB6dSBzY2hhZmZlbi4gZXJpbm5lcnVuZ3N2ZXJtb2VnZW4gaW0ga2xlaW5oaXJuLApsb2dpc2NoZXMgZGVua2VuIGltIHN0YW1taGlybiwgc3ByYWNoZSBpbSBydWVja2VubWFyay4uLiBkYSBrYW5uIHNjaG9uCm1hbCB3YXMgZHVyY2hlaW5hbmRlciBrb21tZW4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBXZWlhaC4uLiAoRGFya2xvciwgMjEuIE1haSAyMDAzLCAyMTowOTozNyk6Cn4jISBybj1Dcm9mdCBydD0xMDUzNTM2MDAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MzQ2NDAzMwoqZ3JtbWwqIFNvcnJ5ISAgCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogV2VpYWguLi4gKE1vbnRhbnVzLCAyMS4gTWFpIDIwMDMsIDIzOjEzOjI5KToKfiMhIHJuPURhcmtsb3IgcnQ9MTA1MzU0NDE3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTM0NjQwMzMKQWxzbyB3ZXIgU3RhbmRhcmQgaGludGVuIG1pdCAndCcgc2NocmVpYnQsIHNvbGx0ZSBzaWNoIGluIGVpbmVyIERpc2t1c3Npb24KdWViZXIgR2VoaXJuIGJlc3NlciBhdWYgZGllIGhpbnRlcmVuIFBsYWV0emUgdmVyemllaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFdlaWFoLi4uIChNYWhhcmV0LCAyMS4gTWFpIDIwMDMsIDIzOjMxOjI4KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNTM1NTE2MDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzNDY0MDMzCkljaCBzcHJhY2ggdWViZXIgS29wZnNjaG1lcnplbiwgbmljaHQgdWViZXIgdHlwb3MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIb2VyIGhhbHQgbmljaHQgenUsIGdlaHN0ZSBuYWNoaGVyIGluIGRpZSBNZW5zYT8gKENhdHdlYXpsZSwgMjIuIE1haSAyMDAzLCAwMDoxMzowMik6Cn4jISBvbj1MdWcgb3Q9MTA1MzUyNzcwNiBvZz1tZWdhc2NobWFycm4KfiMhIHJuPVpvb2sgcnQ9MTA1MzUyNzY0OSByZz1tZWdhc2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKTC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIb2VyIGhhbHQgbmljaHQgenUsIGdlaHN0ZSBuYWNoaGVyIGluIGRpZSBNZW5zYT8gKENhdHdlYXpsZSwgMjIuIE1haSAyMDAzLCAwMDoxMzoyNSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA1MzU1NTE4MiByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApUc2suCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBXZWlhaC4uLiAoR3JpbW1ib3JuLCAyMi4gTWFpIDIwMDMsIDAyOjI1OjU0KToKfiMhIHJuPU1haGFyZXQgcnQ9MTA1MzU1MjY4OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTM0NjQwMzMKTmVpbiwgRHUgc3ByYWNoc3QgdWViZXIgR2VoaXJuZS4gVW5kIHp3YXIgaW4gZWluZXIgRm9ybSBkaWUgbmFoZWxlZ3QsIGRhc3MgRHUKRGljaCBkYSBlaGVyIGF1ZiB0aGVvcmV0aXNjaGVzIFdpc3NlbiBiZXNjaHJhZW5rZW4gbXVzc3QuIApVbmQgaWNoIHZlcndhaHJlIG1pY2ggZ2VnZW4gZGVuIFZvcnd1cmYgdm9uIEdub21lLCBpY2ggaGFldHRlIGVpbmUgQmlvLUtMCmJlbnV0enQuIE1laW5lbiBMSyBoYWJlIGljaCBub2NoIGplZGVyemVpdCBhbGxlaW5lIGJlaGVycnNjaHQuIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBYnNjaGllZCAuLi4gKEdyaW1tYm9ybiwgMjIuIE1haSAyMDAzLCAxMToxMDoxNyk6Cn4jISBvbj1FbGJlcmV0IG90PTEwNTM1OTMwNTEgb2c9ZC5lYmVuZQp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTM1OTEyOTEgcmc9ZC5lYmVuZQp+IyEgdGlkPTEwNTM1NDQzNTEKd2lyZCBlcyBkYWR1cmNoIGJlc3Nlcj8gQXVzIGd1dGVtIEdydW5kIGhhYiBpY2ggbm9jaCBuaWUgZWluCnMvaXJnZW5kd2FzL2lyZ2VuZHdhc2FuZGVyZXMvIGVpbmZhY2ggc28gYXVmIGVpbmVuIHRleHQgYW5nZXdlbmRldCBvaG5lIG1pcgp2b3JoZXIgZ3V0IHp1IHVlYmVybGVnZW4sIHdhcyBpY2ggZGEgdHUKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFic2NoaWVkIC4uLiAoR3JpbW1ib3JuLCAyMi4gTWFpIDIwMDMsIDExOjEwOjE5KToKfiMhIG9uPVRvZSBvdD0xMDUzNTkzMTYwIG9nPWQuZWJlbmUKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDUzNTkxMjkxIHJnPWQuZWJlbmUKfiMhIHRpZD0xMDUzNTQ0MzUxClVuZCBkYXMgaXN0IHNlaHIgZXJzY2hyZWNrZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQWJzY2hpZWQgLi4uIChHcmltbWJvcm4sIDIyLiBNYWkgMjAwMywgMTE6MTA6MjEpOgp+IyEgb249VG9lIG90PTEwNTM1OTMyMTAgb2c9ZC5lYmVuZQp+IyEgcm49RWxiZXJldCBydD0xMDUzNTkzMDUxIHJnPWQuZWJlbmUKfiMhIHRpZD0xMDUzNTQ0MzUxCm9obmUgZWluIGcgaXN0IGRhcyBuaWNodCB0cmFnaXNjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQWJzY2hpZWQgLi4uIChHcmltbWJvcm4sIDIyLiBNYWkgMjAwMywgMTE6MTA6MjUpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwNTM1OTM2NDYgb2c9ZC5lYmVuZQp+IyEgcm49VG9lIHJ0PTEwNTM1OTMyMTAgcmc9ZC5lYmVuZQp+IyEgdGlkPTEwNTM1NDQzNTEKSW4gZGllc2VtIEZhbGwgaXN0IGRhcyBtaXQgdW5kIG9obmUgZyBhZXF1aXZhbGVudCwgR3J1ZW5kZSBkYXJmc3QgRHUgZGVyCnNlZC1Eb2t1bWVudGF0aW9uIGVudG5laG1lbi4KVW5kIGR1cmNoIGRpZSBFcnNldHp1bmcgd2lyZHMgbmljaHQgYmVzc2VyLCBzb25kZXJuIHNjaGxpbW1lciB1bmQgd2FocmVyLiBFcwppc3QgZWluIFVudGVyc2NoaWVkIG9iIGV0d2FzIG5pY2h0IHdpY2h0aWcgaXN0IG9kZXIgd2ljaHRpZywgYWJlciBuaWNodApwcmFrdGl6aWVydC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQWJzY2hpZWQgLi4uIChHcmltbWJvcm4sIDIyLiBNYWkgMjAwMywgMTE6MTA6MjkpOgp+IyEgb249VG9lIG90PTEwNTM1OTM3NDcgb2c9ZC5lYmVuZQp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTM1OTM2NDYgcmc9ZC5lYmVuZQp+IyEgdGlkPTEwNTM1NDQzNTEKZXIgc3ByYWNoIHZvbiBlaW5lbSB0ZXh0LCBkYXMgdm9uIERpciB3YXIgYWJlciBudXIgZWluIHNhdHouCkltIHVlYnJpZ2VuIGhhc3QgRHUgbGVpZGVyIG1hbCB3aWVkZXIgcmVjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBYnNjaGllZCAuLi4gKEdyaW1tYm9ybiwgMjIuIE1haSAyMDAzLCAxMToxMDozMSk6Cn4jISBvbj1FbGJlcmV0IG90PTEwNTM1OTM4MDEgb2c9ZC5lYmVuZQp+IyEgcm49VG9lIHJ0PTEwNTM1OTM3NDcgcmc9ZC5lYmVuZQp+IyEgdGlkPTEwNTM1NDQzNTEKaW0gdWVicmlnZW4gYmluIGljaCBkZXIgbWVpbnVuZywgZGFzcyBzZWQgbWlyIGVnYWwgaXN0CgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQWJzY2hpZWQgLi4uIChHcmltbWJvcm4sIDIyLiBNYWkgMjAwMywgMTE6MTA6MzMpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwNTM1OTQ2MDUgb2c9ZC5lYmVuZQp+IyEgcm49RWxiZXJldCBydD0xMDUzNTkzODAxIHJnPWQuZWJlbmUKfiMhIHRpZD0xMDUzNTQ0MzUxCk51ciBkYW1pdCB3aXIgYXVmIGRlbXNlbGJlbiBTdGFuZCBzaW5kOiBJY2ggaGFiZSBhdWYgRWxiaXMgQXJ0aWtlbApnZWFudHdvcnRldCwgdW5kIGRhbWl0IHF1YXNpIGluIHNlaW5lbSBBcnRpa2VsIGRhcyBlcnN0ZSBWb3Jrb21tZW4gdm9uCiJ3aWNodGlnIiBnZWdlbiAiYWxsZ2VtZWluIHByYWt0aXppZXJ0IiBhdXNnZXRhdXNjaHQuIERhc3MgRWxiaSBkYW5uIGFuIGRlcgpTYWNoZSB2b3JiZWkgcnVtbW9zZXJ0IGlzdCBuaWNodCBnYW56IHVuZXJ3YXJ0ZXQgKHdvaGwgd2VpbCBlciBuaWNodAp2ZXJzdGFuZGVuIGhhdCBkYXNzIGljaCBpaG0gaW4gZGVyIEtlcm5hdXNzYWdlIHp1c3RpbW1lIHVuZCBkaWUgbm9jaAp2ZXJzdGFlcmtlLCBvZGVyIGVpbmZhY2ggYXVzIFByaW56aXAsIHdlaXNzIGljaCBuaWNodCksIFRvZSBtYWNodCBpbmhhbHRzbG9zZQpCZW1lcmt1bmdlbiB1ZWJlciBkYXMgTmljaHR2b3JoYW5kZW5zZWluIGVpbmVzIGcsIHdvcmF1ZiBFbGJpIGFic2NobGllc3N0IG1pdAplaW5lbSAiZGllIFRyYXViZW4gc2luZCBlaCB6dSBzYXVlciIgKCJtaXIgaXN0IHNlZCBlZ2FsIikuCkp1bmdzLCBhdWNoIHdlbm4gZGFzIGVpZ2VudGxpY2ggbmljaHQgbWVpbmUgUnVicmlrIGlzdCwgaWNoIGdsYXViZSBpY2gga2FubgpkYXMgZ2VzY2hsb3NzZW4gbmFjaCBzY2htYXJybiB2ZXJsZWdlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogQWJzY2hpZWQgLi4uIChFbGJlcmV0LCAyMi4gTWFpIDIwMDMsIDEyOjQ2OjE0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDUzNTk0NjMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MzU0NDM1MQpJY2ggaGFiIGF1cyBQcmluemlwIGdlbW9zZXJ0IDopIFVuZCBpY2ggbXVzcyBkb2NoIG1hbCBlcndhZWhuZW4sIGRhc3MgbWFuIGRlbgpHYW5nIGRlciBEaW5nZSB0cmVmZmVuZGVyIG5pY2h0IGRhcnN0ZWxsZW4ga2Fubi4KCkVsYmkgKHNvbGwgaWNoIG1laW5lIFplaXR1bmcgdmVyYnJlbm5lbj8gKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEFic2NoaWVkIC4uLiAoWm9vaywgMjIuIE1haSAyMDAzLCAxMjo0NzowMCk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwNTM2MDAzNzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzNTQ0MzUxCk5laW4sIHdpciB3b2xsZW4gc29sY2hlIFRocmVhZHMgYXVjaCB3ZWl0ZXJoaW4gbGVzZW4uIFpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogQWJzY2hpZWQgLi4uIChFbGJlcmV0LCAyMi4gTWFpIDIwMDMsIDEyOjQ4OjA2KToKfiMhIHJuPVpvb2sgcnQ9MTA1MzYwMDQyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTM1NDQzNTEKaG1tLCB1bmQgaWNoIHNvbGwgbWljaCBhbHNvIHp1bSBXb2hsZSBkZXIgQWxsZ2VtZWluaGVpdCB6dW0gSGFucyBtYWNoZW4/CgpFbGJpIChiZWhhZWx0IHNlaW5lIFplaXR1bmcpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogQWJzY2hpZWQgLi4uIChHcmltbWJvcm4sIDIyLiBNYWkgMjAwMywgMTM6NDc6MzUpOgp+IyEgcm49RWxiZXJldCBydD0xMDUzNjAwNDg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MzU0NDM1MQpBZWgsIGlud2lld2VpdCBnZW5hdSBoYXQgZGVubiBkYXMgbWl0IGRlciBaZWl0dW5nIHp1IHR1bj8gCkF1c3NlcmRlbSwgc28gbWl0IGRlciBkcml0dGVuLCB2aWVydGVuIFZlcmJyZW5udW5nIHZlcmxpZXJ0IGRhcyBsYW5nc2FtIGFuClJlaXouCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBBYnNjaGllZCAuLi4gKFpvb2ssIDIyLiBNYWkgMjAwMywgMTQ6NDY6NTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTM2MDQwNTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzNTQ0MzUxCkdlbmF1IHNvIHN0YWVuZGlnIG1pdCBSdWVja3RyaXR0IGRyb2hlbi4uLiA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBBYnNjaGllZCAuLi4gKEdyaW1tYm9ybiwgMjIuIE1haSAyMDAzLCAxNDo1NToyNik6Cn4jISBybj1ab29rIHJ0PTEwNTM2MDc2MTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzNTQ0MzUxCldhcyBzb2xsIGRlbm4gZGFzLCB3ZW5uIER1IG1pY2ggaGllciBsYXVmZW5kIGFucGlua2Vsc3QgZGFubiBtYWNoIGljaCBuaXgKbWVociwgZGFubiBzb2xsdCBpaHIgbWFsIHNlaGVuIHdpZSBkaWUgTVBBIGltIENoYW9zIHZlcnNpbmt0LiBEYW5uIHppZWhlIGljaAptaWNoIG51ciBub2NoIGF1ZiBtZWluZSBBcmJlaXQgYWxzIFJNIFNjaGF0dGVud2VsdCB6dXJ1ZWNrIHVuZCBndXQgaXN0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogQWJzY2hpZWQgLi4uIChBcmssIDIyLiBNYWkgMjAwMywgMjA6NDc6MjEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTM2MDgxMjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzNTQ0MzUxCk11c3MgaWNoIGpldHp0IGdlaGVuPyBJc3QgZGFzIGVpbiBUaHJlYWQgbWl0IEJlbG9obnVuZz8KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGhvY2h6ZWl0IChHcmltbWJvcm4sIDIyLiBNYWkgMjAwMywgMjE6Mzk6MzcpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNTM2MzIwNDEgcmc9YW56ZWlnZW4KfiMhIHRpZD0xMDUzNjMxODc5CkphamEsIGRhcyBpc3QgZGllIEp1Z2VuZCwgZGllIGhhdCBlaW5lIEF1c2RhdWVyLCBkYSBrb21tZW4gd2lyIGVpbmZhY2ggbmljaHQKbWVociBtaXQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU29uZGVyLU5ld3NsZXR0ZXIgZGVyIFVuaSBCb25uIChHcmltbWJvcm4sIDIyLiBNYWkgMjAwMywgMjE6NDE6NTgpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwNTM2MzI1MTQgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUxpYXJhIHJ0PTEwNTM2MzI0NDcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDUzNjMwNzgzClNvbGx0ZSBhbHNvIE9ya3RvZXRlciBnZWxhZXVmaWcgc2Vpbiwgd28gZXIgZG9jaCBpbW1lciBtaXQgV3VyZnN0ZXJuZW4gbmFjaAplaW5nZXdpY2tlbHRlbSBGbGVpc2NoIHdpcmZ0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTb25kZXItTmV3c2xldHRlciBkZXIgVW5pIEJvbm4gKEdyaW1tYm9ybiwgMjIuIE1haSAyMDAzLCAyMTo0MzozNCk6Cn4jISBvbj1MaWFyYSBvdD0xMDUzNjMyNTc0IG9nPWFsbGdlbWVpbmVzCn4jISBybj1HcmltbWJvcm4gcnQ9MTA1MzYzMjUxNCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwNTM2MzA3ODMKVmVybGVnJyBkYXMgc29mb3J0IG5hY2ggU2NobWFycm4gLi4uIDspIE9kZXIgc28uICpodXN0KiAuLi4gT2RlciBhdWNoIG5pY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU29uZGVyLU5ld3NsZXR0ZXIgZGVyIFVuaSBCb25uIChHcmltbWJvcm4sIDIyLiBNYWkgMjAwMywgMjE6NDQ6MDIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTM2MzI2MTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzNjMwNzgzCkhhaC4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdCB2ZXJsZWd0IHNjaG5lbGxlciBhbHMgc2VpbiAob2RlciBEZWluKSBTY2hhdHRlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFB1ZmYgKE9ya3RvZXRlciwgMjMuIE1haSAyMDAzLCAxMTozNTo1OSk6Cn4jISBybj1Ob25uZSBydD0xMDUzNjcyMTUxIHJnPXdpdHplCn4jISB0aWQ9MTA1MzY3MjE1MQpVbnNlcmUgTm9ubmUgc3RlaHQgYXVjaCBrdXJ6IGRhdm9yIGF1cyBkZW0gS29udmVudCBlbnRsYXNzZW4genUgd2VyZGVuLCB3ZW5uCnNpZSB3ZWl0ZXIgc29sY2hlIFdpdHplIGVyemFlaGx0Li4uCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFB1ZmYgKFNjaG9rbywgMjMuIE1haSAyMDAzLCAxMzowNDowOSk6Cn4jISBybj1ab29rIHJ0PTEwNTM2ODcxMjggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNTM2NzIxNTEKCkljaCBnZWhlIGRhdm9uIGF1cywgZGFzcyBmdWVyIGVpbmUgRnJhdSwgZGllIGltIFB1ZmYgYXJiZWl0ZXQgLSB1bmdlYWNodGV0CmlocmVyIFJhc3NlLCBIYXV0ZmFyYmUgb2RlciBzb25zdGlnZW4gQWJzdGFtbXVuZyAtIGRpZSBCZXRyYWNodHVuZyBpaHJlcgpLb2VycGVyb2VmZm51bmdlbiB1bmQgZGFyYW4gYW5zY2hsaWVzc2VuZGUgRGlza3Vzc2lvbiB2b2VsbGlnIGluIE9yZG51bmcgaXN0CnVuZCBlaW5lbiBUZWlsIGlocmVyIEFyYmVpdCBkYXJzdGVsbHQuCgpTY2hva28gKG51ciBoYWxiIGVybnN0KSA9OikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFB1ZmYgKEdyaW1tYm9ybiwgMjMuIE1haSAyMDAzLCAyMDo0NjoxMyk6Cn4jISBvbj1FbGl6YWJldGggb3Q9MTA1MzcxMjE1NSBvZz13aXR6ZQp+IyEgcm49UGhvYm9zIHJ0PTEwNTM3MTA0NTMgcmc9d2l0emUKfiMhIHRpZD0xMDUzNjcyMTUxCipraWNoZXIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSE9DSFpFSVQgKFJvbmRhLCAyMy4gTWFpIDIwMDMsIDIwOjUxOjI0KToKfiMhIHJuPUhlbGl1bSBydD0xMDUzNjk5MTg1IHJnPWFuemVpZ2VuCn4jISB0aWQ9MTA1MzY5OTE4NQouLi4gaWNoIHdlaXNzIGphIG5pY2h0LCB3YXMgZGFzIGZ1ZXIgSW5zdGFudC1Ib2NoemVpdGVuIHNpbmQuLi4gYWJlciBEQU1BTFMuCkRhbWFscyB3YXIgYWxsZXMgYmVzc2VyLiBBdWNoIGRpZSBIb2NoemVpdHNhbnplaWdlbiEgVHMuIE5pY2h0IHNvIHdhcyBlaW5mYWNoCmhpbmdldGlwcHRlcyEgRGFtYWxzIGhhdCBtYW4gc2ljaCBkYW1pdCBub2NoIE11ZWhlIGdlZ2ViZW4uLi4gamEsIGphLi4uCgpSb25kYSAqdGF0dGVydCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVuZGxpY2ggaGF0IGRlciBXYW5kbGVyIE1hbmllcmVuIGdlbGVybnQgLi4uIChNaXJha2EsIDIzLiBNYWkgMjAwMywgMjA6NTY6MDQpOgplaW4gV2FuZGxlciBvZWZmbmV0IHByb2JsZW1sb3MgZGFzIGdyb3NzZSBQb3J0YWwgdW5kIHZlcnNjaHdpbmRldCBuYWNoCmRyYXVzc2VuLgpIaW50ZXIgaWhtIGZhZWxsdCBkaWUgbWFlY2h0aWdlIFR1ZXIgd2llZGVyIHp1LgoKU28gZ2Vob2VydCBzaWNoIGRhcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFbmRsaWNoIGhhdCBkZXIgV2FuZGxlciBNYW5pZXJlbiBnZWxlcm50IC4uLiAoUGF0cnluLCAyMy4gTWFpIDIwMDMsIDIxOjAyOjM2KToKfiMhIHJuPU1pcmFrYSBydD0xMDUzNzE2MTY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1MzcxNjE2NApOYSBkYSBiaWV0ZXQgc2ljaCBkb2NoIGdsZWljaCBhbi4uLgpkYSBpY2ggaW1tZXIgd2llZGVyIEZlaGxlcm1lbGR1bmdlbiBiZWtvbW1lIG1pdDoKZWluIFdhbmRsZXIgb2VmZm5ldC4uLiBlaW4gbXVzcyBncm9zcyBnZXNjaHJpZWJlbiB3ZXJkZW4sCmRpZXNlIEZlaGxlciBzaW5kIG5pY2h0IGltIFdhbmRsZXIsIHNvbmRlcm4gaW0gUmF1bSwgZGVyIG5pY2h0IGRhcmF1ZiBhY2h0ZXQsCmRhc3MgTGViZXdlc2VuIG1pdCBBcnRpY2xlIGRpZSBUdWVyIG9lZmZuZW4ga29lbm50ZW4gdW5kIG5pY2h0IGF1ZgpHcm9zc3NjaHJlaWJ1bmcgYWVuZGVybi4KCi0tIApwYXRyeW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRW5kbGljaCBoYXQgZGVyIFdhbmRsZXIgTWFuaWVyZW4gZ2VsZXJudCAuLi4gKEdyaW1tYm9ybiwgMjMuIE1haSAyMDAzLCAyMTowNjo1Myk6Cn4jISBybj1QYXRyeW4gcnQ9MTA1MzcxNjU1NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTM3MTYxNjQKQWhhLCB1bmQgTmljaHRsZWJld2VzZW4gc2NocmVpYmVuIFNhdHphbmZhZW5nZSBrbGVpbj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGUuYWx0Lm5ldGRpZ2VzdCAtIEhhdCBqZW1hbmQgVGF1YmVuLVJlemVwdGU/IChSb25kYSwgMjMuIE1haSAyMDAzLCAyMTozNDowOCk6CkZyb206IE1hcmt1cyBNYWNobmVyIDxNYWNobmVyLU1hcmt1c0B0LW9ubGluZS5kZT4KTmV3c2dyb3VwczogZGUuYWx0LmZhbi5mYXN0Zm9vZApTdWJqZWN0OiBSZTogbWVpbmUgbWVpbnVuZyBtY2RvbmFsZHMKRGF0ZTogVHVlLCAyMCBNYXkgMjAwMyAxNjoyOTo0NSArMDIwMApNZXNzYWdlLUlEOiA8YmFkZTJmJGNnMyQwNSQxQG5ld3MudC1vbmxpbmUuY29tPgoKCmFkbWluY29AbHljb3MuZGUgc2NocmllYjoKCj4gQW5nZWJsaWNoIHdlcmRlbiBpbiBNY0RvbmFsZHMgUHJvZHVrdGVuIFJlc3RlIHZvbgo+IE1hZXVzZW4gdmVyYXJiZWl0ZXQuCj4gIk1pdCBLb25zZXJ2aWVydW5nc3N0b2ZmZW4iLgoKT2huZSBkaWUgS29uc2VydmllcnVuZ3NzdG9mZmUgd3VlcmRlbiBkaWUgTWFldXNlIG5pY2h0IHNvIGxhbmdlIGhhbHRlbi4gCkRlciBCZWdydWVuZGVyIHZvbiBNY0Qgd2FyIGRlciBSYXR0ZW5mYWVuZ2VyIHZvbiBIYW1lbG4uIFNlaXQgZGllIFN0YWVkdGUgCnNvIGVuZXJnaXNjaCBnZWdlbiBUYXViZW4gdm9yZ2VoZW4sIGdpYnQgZXMgYXVjaCBkaWUgIkNoaWNrZW4iLU51Z2dldHMuCgpHcnVzcywKTWFya3VzIChIYXJnYXJzIFJpcHBlbmJ1ZGU6IFJhdHRlIDRjdC4gUmF0dGUgbWl0IEtldGNodXAgOWN0LikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLZWluIHNjaG9lbmVzIEVyd2FjaGVuLi4uIChMYXJpc2llbGxlLCAyNS4gTWFpIDIwMDMsIDExOjI0OjU0KToKRXJ3YXJ0ZXQgIChvbmxpbmUpOiAgUmlwcG9yCltUb2Q6TGFyc10gRWluZSBIb3JkZSBVbmdlemllZmVyIGhhdCBnZXJhZGUgUmlwcG9yIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBIb3JkZSBVbmdlemllZmVyXSBKYSwgenVzYW1tZW4gc2luZCB3aXIgc3RhcmshCgpFcyBnaWJ0IFRhZ2UsIGRhIHNvbGx0ZSBtYW4gYmVzc2VyIGltIEJldHQgYmxlaWJlbi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldGRpZ2VzdCAoRGVlcGJsdWUsIDI1LiBNYWkgMjAwMywgMjE6Mzk6NDkpOgpGcm9tOiBXZXJuZXIgSmFrb2JpIDx1c2VuZXRmcm9tQG1vcnZlci5kZT4KTmV3c2dyb3VwczogZGUuYWRtaW4ubmV0LWFidXNlLm1haWwKU3ViamVjdDogUmU6IFN5c3RlbXJ1aW4gYXVzIER1bW1oZWl0CgpWb2xrZXIgR3JpbmdtdXRoIDxlaW5rbGljaEBnbXgubmV0PiBwb3N0ZWQ6CgpbQWJzY2huZWlkZW4gdm9uIGJla2FubnRlbiBFeHRlbnNpb25zIHVudGVyIFdpbmRvd3NdCj5BYmVyOiBlcyBpc3Qga2VpbiBCdWcgLSBlcyBpc3QgZWluIGRlc2lnbiBpc3N1ZS4KCkRhcyBpc3Qga2VpbiBkZXNpZ24gaXNzdWUsIHNvbmRlcm4gZWluIGZlYXR1cmUsIHdlaWwgbWFuIGRhbWl0IGRlbSBVc2VyIApkaWUgWmVpdCBmdWVyIGRhcyBLZW5uZW5sZXJuZW4gZGVyICJGaWxlc3lzdGVtaW50ZXJuYSIgZXJzcGFydC4KClVlYmVybGVnIGRvY2ggbWFsIGVybnN0aGFmdCwgd2lldmllbGUgVXNlciBTY2h3aWVyaWdrZWl0ZW4gbWl0IGVpbmVyIAp2aXJ1cy5tcGVnLnBpZiBoYWV0dGVuLiBNYW4ga29lbm50ZSBtaXQgc28gZWluZW0gZmlsZSBkYXMga29tbGV0dGUgdXNhLmdvdiAKKGRhcyBnaWJ0cyBbNjMuMjQwLjE0LjE1MF0sIGdpYnQgYWJlciBuaWNodCBtYWwgQW50d29ydCBhdWYgcGluZykgCmxhaG1sZWdlbiwgd2VpbCBrZWluZXIgbmljaHQgd2Vpc3MsIHdpZSBlciBlaW4gLnBpZiBzdGFydGVuIHNvbGwuCgpVZWJlcmxlZ2VuIHdpciBtYWw6IEljaCBoYWNrZSBtaWNoIGR1cmNoIHVzYS5nb3Ygc28gd2VpdCBkdXJjaCwgZGFzcyBpY2ggCmRlbSBlcnN0YmVzdGVuIE1pdGFyYmVpdGVyIGRvcnQgZWluIE1haWwgbWl0IEF0dGFjaG1lbnQgCiJIZWxsb1lvdVNlZW1Ub0JlTmljZS5tcGVnLnBpZiIgc2VuZGVuIGthbm4gKFNvY2lhbCBlbmdpbmVlcmluZyBpc3QgaW4gCnNvbGNoZW4gU2FjaGVuIGV4dHJlbSB3aWNodGlnISkuIERlciBJbmhhbHQgZGVzIEF0dGFjaG1lbnRzIHdhZXJlICJIZWxsbywgCndvcmxkLiIgYWJlciBkYXMgaXN0IGltIFN6ZW5hcmlvIGVoZXIgdW5iZWRldXRlbmQuCgpEZXIgRW1wZmFlbmdlciBmcmFlZ3Qgc2VpbmVuIFppbW1lcmtvbGxlZ2VuICJIb3cgY2FuIEkgc3RhcnQgYSBwaWY/IiAKRGllc2VyIGhhdCBuYXR1ZXJsaWNoIGF1Y2gga2VpbmUgQWhudW5nIHVuZCB2ZXJtdXRldCBlaW5lbiBBbmdyaWZmIGF1ZiAKZGllIG5hdGlvbmFsZSBTaWNoZXJoZWl0LiBGb2xnbGljaCBtYWlsdCBlciBhbiBzZWluIGdlc2FtdGVzIEFkcmVzc2J1Y2ggCmVpbmUgQW5mcmFnZSwgIkhvdyB0byBzdGFydCBhIC5waWY/Ii4KCkRhcyBzb3JndCBmdWVyIFVucnVoZS4gSW0gUmFobWVuIGRlciBhbGxnZW1laW5lbiBQYXJhbm9pYSB3aWxsIG5hdHVlcmxpY2ggCmplZGVyIG1heGltYWxlIFNpY2hlcmhlaXQsIG1haWx0IGRpZSBBbmZyYWdlIGFuIHNlaW4gZ2VzYW10ZXMgQWRyZXNzYnVjaCAKd2VpdGVyIHVuZCBsZWd0IGRhbWl0IGluIGRlciBTdW1tZSAuZ292IGxhaG0uIERhcyBoYXQgc2VsYnN0dmVyc3RhZW5kbGljaCAKYXVjaCBBdXN3aXJrdW5nZW4gYXVmIC5taWwsIHdvZHVyY2ggZGllIFRydXBwZW4gaW0gSVJBSyBuaWNodCBtZWhyIAprb29yZGluaWVydCBhZ2llcmVuLiAKClNhZGRhbSBudXR6dCBkaWUgQ2hhbmNlLCBlbmRsaWNoIG1hbCB3aWVkZXIgZWluIG9yZGVudGxpY2hlcyBCYWQgenUgCm5laG1lbiwgemllaHQgZWluZSBuZXVlIFVuaWZvcm0gYW4gdW5kIGhhY2t0IG1pdCBzZWluZW0gU2FyYXplbmVuc2FlYmVsIApob2VjaHN0cGVyc29lbmxpY2ggR2VuZXJhbCBGcmFua3MgZGVuIEtvcGYgYWIsIGdlZmlsbXQgdW5kIHdlbHR3ZWl0IAp2ZXJicmVpdGV0IG5hdHVlcmxpY2ggdm9uIGFsIGRzY2hhc2lyYS4gRGllIHppdmlsZW4gQW1pcyB1ZWJlcmxhZXNzdCBlciBkZW4gCkdlZm9sZ3NsZXV0ZW4gdm9uIE9zYW1hLgoKRGEgYmVpIGRlbiBBbWlzIHdlZ2VuIGRpZXNlcyBzaW1wbGVuICJIZWxsbywgd29ybGQiIG1pdCAucGlmLUV4dGVuc2lvbiAKbmljaHRzIG1laHIgdHV0LCBob2x0IGVyIHNpY2ggYWxzIGVyc3RlcyBzZWluZSA1MDBlNiQgZ29sZCBuYWhlIGRlciAKc3lyaXNjaGVuIEdyZW56ZSB6dXJ1ZWNrIHVuZCBmYWVocnQgZGFubiB3ZWl0ZXIgbmFjaCBJc3JhZWwsIGRhcyBlciwgCmJlanViZWx0IHZvbiBkZXIgYXJhYmlzY2hlbiBCZXZvZWxrZXJ1bmdzbWVocmhlaXQsIGthbXBmbG9zIGVyb2JlcnQuCgpXYXMgbGVybmVuIHdpciBhdXMgZGllc2VyIEZhYmVsPwoKTWFuIGRhcmYgZGVuIExldXRlbiBuaWNodCBkaWUgdm9sbGUgV2FocmhlaXQgemVpZ2VuLCBzb25zdCBnZXdpbm50IGltbWVyIApkZXIgRmVpbmQuIERhcyB3aWxsIGRvY2ggbmllbWFuZC4KCkdhbnogd2ljaHRpZyBhdWNoOiAiSGVsbG8sIHdvcmxkLiIgaXN0IGVpbmUgaG9lY2hzdCBrb25zcGlyYXRpdmUgUGhyYXNlLiAKTWFuIHNvbGx0ZSBzaWNoIGVybnN0aGFmdCB1ZWJlcmxlZ2VuLCBvYiBtYW4gbmljaHQgYWxsZSBCdWVjaGVyLCBkaWUgCkFud2Vpc3VuZ2VuIHp1ciBFcnpldWd1bmcgZGllc2VyIFBocmFzZSBlbnRoYWx0ZW4sIHZlcmJpZXRlbiBzb2xsdGUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmVlLCBpcyBrbGFyIC4uLiAoTGlhcmEsIDI2LiBNYWkgMjAwMywgMjM6MDA6NDMpOgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogTWFlZGVscz8KRGVpbmUgRnJldW5kaW4gU2hhZWVuYSB0ZWlsdCBEaXIgbWl0OiBNdXR0ZXJucz8KRGVpbiBGcmV1bmQgRG9yaWFuIHRlaWx0IERpciBtaXQ6IFdvID8KRGVpbmUgRnJldW5kaW4gUm9uZGEgdGVpbHQgRGlyIG1pdDogSmEsIExpYXJhPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFB1ZmYgKFplcGh5ciwgMjYuIE1haSAyMDAzLCAyMzowODoyOSk6Cn4jISBybj1Nb250YW51cyBydD0xMDUzOTgxODk3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDUzNjcyMTUxCkFsc28sIGRhc3MgTmljaHRzIGZyYXVlbmZlaW5kbGljaCBpc3QsIGlzdCBqYSBuaWNodHMgbmV1ZXMsIGFiZXIKc2Nod3VsPyBEdW1tLCBkYXNzIGVyIHNpY2ggZ3JhZCBuaWNodCB3ZWhyZW4ga2FubiA7KQpDNAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5lZSwgaXMga2xhciAuLi4gKFRvZSwgMjYuIE1haSAyMDAzLCAyMzozNToyOCk6Cn4jISBybj1MaWFyYSBydD0xMDUzOTgyODQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1Mzk4Mjg0MwpzaWUgaGFlbHQgc2ljaCBlaW5mYWNoIGZ1ZXIgYWxsZXMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFB1ZmYgKFpvb2ssIDI3LiBNYWkgMjAwMywgMDk6MjA6NDEpOgp+IyEgcm49WmVwaHlyIHJ0PTEwNTM5ODMzMDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDUzNjcyMTUxCk5hamEsIGdlbmF1Z2Vub21tZW4gZ2luZyBlcyB1bSBzY2h3dWxlbmZlaW5kbGljaCAgOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgZmluZCBpY2ggZGVubiBkYXM/IChMaWFyYSwgMjcuIE1haSAyMDAzLCAxNzoyNDo0NCk6CgpEZWluIEZyZXVuZCBab29rIHRlaWx0IERpciBtaXQ6IFdhcnVtIGJpbiBpY2ggaW0gdm9pZD8KCkxpYXJhLCBiZXVucnVoaWd0IC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdpZSBmaW5kIGljaCBkZW5uIGRhcz8gKFpvb2ssIDI3LiBNYWkgMjAwMywgMTc6MjU6MTApOgp+IyEgcm49TGlhcmEgcnQ9MTA1NDA0OTA4NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQwNDkwODQKSG1tbS4uLiB3aWVzbyBiZXVucnVoaWc/IElyZ2VuZHdlciBzY2hpZWJ0IG1pY2ggZHVyY2hzIE11ZCwga2FubiBqYSBtYWwgCnBhc3NpZXJlbi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdpZSBmaW5kIGljaCBkZW5uIGRhcz8gKExpYXJhLCAyNy4gTWFpIDIwMDMsIDE3OjI3OjQyKToKfiMhIHJuPVpvb2sgcnQ9MTA1NDA0OTExMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQwNDkwODQKQWNoIHNvLgoKTGlhcmEsIHRvdGFsIGF1cyBkZW0gSGFldXNjaGVuIC4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmV0ZGlnZXN0IChEZWVwYmx1ZSwgMjcuIE1haSAyMDAzLCAyMDowNTo1OCk6CkZyb206IG1hdGhpYXMuYm9lbGNrb3dAZ214Lm5ldCAoTWF0aGlhcyBCb2VsY2tvdykKTmV3c2dyb3VwczogZGUuZXRjLmJhaG4udGFyaWYrc2VydmljZQpTdWJqZWN0OiBSZTogT1Q6IFJlaXNlcGFzcyBlcmZvcmRlcmxpY2ggaW4gQ0g/CkRhdGU6IFR1ZSwgMjcgTWF5IDIwMDMgMTI6NDA6NDkgR01UCk1lc3NhZ2UtSUQ6IDwzZWQzNWI4OC45NTEyMzE3QG5ld3MuY2lzLmRmbi5kZT4KCgoiQ2hyaXN0b3BoIE11ZW56aW5nIiA8Y2hyaXN0b3BobXVlbnppbmdAd2ViLmRlPiBzY2hyaWViL3dyb3RlIHVucy91czoKCj4+ID5EYW5uIHdhciBkYXMgYWJlciBqZW1hbmQgbWl0IGVpbmVyIG5pY2h0d2VzdGV1cm9wYWVpc2NoZW4KPj4gPlN0YWF0c2FuZ2Vob2VyaWdrZWl0LCBmdWVyIGRpZSBlcyBlaW5lIFBhc3NwZmxpY2h0IGdpYnQuCj4+Cj4+IERhcyBoYWVuZ3QgZWhlciB2b24gZGVyIEhhdXRmYXJiZSBhYi4gRGV1dHNjaGUgYWZyaWthbmlzY2hlcgo+PiBBYnN0YW1tdW5nLCB1bSBkZW4gRXh0cmVtZmFsbCB6dSBiZW5lbm5lbiwgZHVlcmZ0ZW4gZXJoZWJsaWNoZSBQcm9ibGVtZQo+PiBiZWtvbW1lbi4KPgo+U29sYW5nZSBzaWUgaWhyZW4gUGVyc28gZGFiZWloYWJlbiBuaWNodCA7LSkKCk9LLCBpY2ggYnJpbmdlIGRpZSBHZXNjaGljaHRlIG1laW5lcyBTY2h3YWdlcnMgZGF6dS4KClp1c3RpZWcgaW4gQmFzZWwgaW4gZGVuIFp1ZyBuYWNoIERldXRzY2hsYW5kLiBBYnRlaWwuIEVzIHNpdHp0IGRvcnQKc2Nob24gZWluIFNjaHdhcnplciBpbiB2b2xrc3R1ZW1saWNoZXIgYWZyaWthbmlzY2hlciBLbGVpZHVuZywgZGVyIGRpZQpTY2h1aGUgYXVzZ2V6b2dlbiB1bmQgZGllIG1pdCBTb2NrZW4gYmVrbGVpZGV0ZW4gRnVlc3NlIGF1ZiBkZW4KZ2VnZW51ZWJlcmxpZWdlbmRlbiBTaXR6IGdlbGVndCBoYXQuCgpQbG9ldHpsaWNoIHN0ZWh0IGRpZSBkZXV0c2NoZSBab2xsa29udHJvbGxlIGluIGRlciBUdWVyIHVuZCBiZWZpZWhsdAoiRnVlc3NlIHJ1bnRlciEiCkRlciBTY2h3YXJ6ZSBrb21tdCBkZW0gQmVmZWhsIHpvZWdlcmxpY2ggbmFjaCwgd2FlaHJlbmQgZGVyIFpvbGwKYmVmaW5kZXQsIGRlbiBQYXNzIG1laW5lcyBTY2h3YWdlcnMgbnVyIHZvbiBhdXNzZW4gYmV0cmFjaHRlbiB6dQptdWVzc2VuLgoiUGFzcyEgUGFzc3BvcnQhIiB3aXJkIGRlciBTY2h3YXJ6ZSBhbmdlaGVycnNjaHQsIGRlciBpbnp3aXNjaGVuIHNlaW5lCkZ1ZXNzZSBpbiBkZW4gU2NodWhlbiB2ZXJzdGF1dCBoYXQuIERpZXNlciBiZWdpbm50IG51biB1bXN0YWVuZGxpY2ggaW4Kc2VpbmVtIEdlcGFlY2sgenUga3JhbWVuIHVuZCB6aWVodCBlaW4gemVyZmxlZGRlcnRlcyBEb2t1bWVudCBlaW5lcwphZnJpa2FuaXNjaGVuIFN0YWF0ZXMgaGVydm9yLiBEYXMgVW5iZWhhZ2VuIGRlcyBab2xsYmVhbXRlbiB1ZWJlcgpkaWVzZXMgRG9rdW1lbnQgd2lyZCBtaXQgV29ydGZldHplbiB3aWUgIk5peCBndWVsdGlnLCBpbnZhbGlkISIgdW5kCiJOaXggRGV1dHNjaGxhbmQiIGJlZ2xlaXRldC4KS3VyeiBiZXZvciBkZXIgU2Nod2FyemUgYWJnZWZ1ZWhydCB3dXJkZSwgenVlY2t0ZSBlciBlaW5lbgpCdW5kZXNwZXJzb25hbGF1c3dlaXMgYXVzIHNlaW5lciBHZXNhZXNzdGFzY2ggdW5kIHVlYmVycmVpY2h0ZSBpaG4gZGVtCnZlcmJsdWVmZnRlbiBab2VsbG5lciBtaXQgZGVuIFdvcnRlbjoiVmllbGxlaWNodCBrYW5uIGljaCBkZW4gSGVycmVuCmhpZXJtaXQgZGllbmxpY2ggc2Vpbi4iIERlciBab2VsbG5lciBtdXN0ZXJ0ZSBkZW4gZWlud2FuZGZyZWllbiBBdXN3ZWlzCnVuZCBmcmFndCwgd2FydW0gZXIgZGllc2VuIG5pY2h0IGdsZWljaCB2b3JnZXplaWd0IGhhZXR0ZS4KIlNpZSBoYWJlbiIsIHNvIGFudHdvcnRldGUgZGVyIFNjaHdhcnplLCAiZWluZGV1dGlnIG1laW5lbiBQYXNzCmdld3VlbnNjaHQsIHNvd2VpdCBpaHIgYnJ1Y2hzdHVlY2toYWZ0ZXMgRGV1dHNjaCB1ZWJlcmhhdXB0IHZlcnN0YWVuZGxpY2gKd2FyLiIKIkFlaCwgamEsIC4uLiBkYW5uIG5vY2ggZWluZW4gZ3V0ZW4gVGFnLCAuLi5hZWguLi4gSGVyciBNJ2tiZW5lKiIKIkhlcnIgUHJvZmVzc29yIE0na2JlbmUgYml0dGUhIFNvIHZpZWwgWmVpdCBtdXNzIHNlaW4uIiBydWZ0IGRlcgpTY2h3YXJ6ZSBkZW4gc2Nob24gaW0gR2FuZyB2ZXJzY2h3dW5kZW5lbiBab2VsbG5lcm4gaGludGVyaGVyLiBVbmQgenUKbWVpbmVtIGJyZWl0IGdyaW5zZW5kZW4gU2Nod2FnZXIgZ2V3YW5kdDogIkljaCBtYWNoZSBkYXMgbmljaHQgaW1tZXIsCmFiZXIgb2Z0IHByb3ZvemllcmVuIHNpZSBlcyBlaW5mYWNoLiIKCiogRGVuIHJpY2h0aWdlbiBOYW1lbiBlcmlubmVyZSBpY2ggbmljaHQuCgpHcnVzcywgTWF0aGlhcyBCb2VsY2tvdwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXaWUgZmluZCBpY2ggZGVubiBkYXM/IChDYXR3ZWF6bGUsIDI3LiBNYWkgMjAwMywgMjE6MTQ6MDkpOgp+IyEgcm49Wm9vayBydD0xMDU0MDQ5MTEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDA0OTA4NApIbSwga2VubnN0IGR1IGVpZ2VudGxpY2ggSG9jaGViZW5lbi1Sb3VsZXR0ZT8KCkljaCBtdWVzc3RlIGJlaSBCZXJ0aSBtYWwgc3VjaGVuLiBWb24gSm9mIGF1ZiBab29rIHVtc2NocmVpYmVuIGtyaWVnIGljaApsb2NrZXIgaGluIDotKQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXaWUgZmluZCBpY2ggZGVubiBkYXM/IChab29rLCAyNy4gTWFpIDIwMDMsIDIxOjE4OjE5KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDU0MDYyODQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDA0OTA4NApPaCBvaC4uLi4gCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2llIGZpbmQgaWNoIGRlbm4gZGFzPyAoQ2F0d2VhemxlLCAyNy4gTWFpIDIwMDMsIDIxOjIyOjI3KToKfiMhIHJuPVpvb2sgcnQ9MTA1NDA2MzA5OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQwNDkwODQKSGUgaGUuLi4uCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdpZSBmaW5kIGljaCBkZW5uIGRhcz8gKFpvb2ssIDI3LiBNYWkgMjAwMywgMjE6MjM6MjEpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNTQwNjMzNDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0MDQ5MDg0Ck11YWRpYiEgU2NocmVpdGVuIFNpZSBlaW4sIDI0LzchCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogV2llIGZpbmQgaWNoIGRlbm4gZGFzPyAoQ2F0d2VhemxlLCAyNy4gTWFpIDIwMDMsIDIxOjI1OjU2KToKfiMhIHJuPVpvb2sgcnQ9MTA1NDA2MzQwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQwNDkwODQKTWVuc2NoIGpldHp0IGhldWwgZG9jaCBuaWNodCBnbGVpY2ggenVtIFNoZXJpZmYgOikKQXVzc2VyZGVtIHdpcmQgbWFuIGphIHdvaGwgc2VpbmVuIEdvdHQgbm9jaCBlaW4gYmlzc2NoZW4gZHVyY2ggZGllIEdlZ2VuZAp0cmFuc2VuIGR1ZXJmZW4uCgpBY2hzbywgZHUgbWVpbnN0IGZlaGxlbmRlciBSZXNwZWt0PyAKU2NoYXUgYXVmIG1laW5lbiBFcnN0bG9naW4sIGFsdGUgU2FlY2tlIGhhYmVuIHNvd2FzIG5pY2h0IG1laHIgOikKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogV2llIGZpbmQgaWNoIGRlbm4gZGFzPyAoTXVhZGliLCAyNy4gTWFpIDIwMDMsIDIyOjM1OjMwKToKfiMhIHJuPVpvb2sgcnQ9MTA1NDA2MzQwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQwNDkwODQKaWNoIHNvbGwgZWluc2NocmVpdGVuPyBtZWluc3RlIHdpcmtsaWNoIGNhdCogc2NoYWZmdCBkYXMgdW1zY2hyZWliZW4gbmljaHQKc2VsYnN0ID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFdpZSBmaW5kIGljaCBkZW5uIGRhcz8gKFpvb2ssIDI3LiBNYWkgMjAwMywgMjI6MzU6NDgpOgp+IyEgcm49TXVhZGliIHJ0PTEwNTQwNjc3MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0MDQ5MDg0Ckdubm5ubm4uLi4uCgpab29rIGJlaXNzdCBpbiBkaWUgVGlzY2hrYW50ZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFdpZSBmaW5kIGljaCBkZW5uIGRhcz8gKFZhbmlvbiwgMjguIE1haSAyMDAzLCAwNjo1OTowMik6Cn4jISBybj1NdWFkaWIgcnQ9MTA1NDA2NzczMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQwNDkwODQKR2FiIGVzIGRhIG5pY2h0IHp1IGRlbSAyLUQtUm91bGV0dGUgbm9jaCBlaW5lIDMtRC1WZXJzaW9uIGluIGRlciBTU1A/IE1laW5lCk1hbWEgaGF0IG1pciBtYWwgc28gZWluIHBhYXIgWmVpbGVuIENvZGUgZ2V6ZWlndCAuLi4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmFobmJyZWNoZW5kIChHcmltbWJvcm4sIDI4LiBNYWkgMjAwMywgMTA6MTI6MTIpOgp+IyEgcm49QW50aGVhIHJ0PTEwNTQxMDk0NDQgcmc9d2l0emUKfiMhIHRpZD0xMDU0MTA5NDQ0CldvIGlzdCBkYSBkZXIgV2l0ej8gRGFzIGlzdCBkb2NoIGVpZ2VudGxpY2ggZ2VuZXJlbGwgdm9yaGVycnNjaGVuZGUgTWVpbnVuZwpuaWNodCBudXIgdWViZXIgTWVkaXppbmVyLCBzb25kZXJuIGF1Y2ggdW5kIGJlc29uZGVycyB1ZWJlciBCV0xlciB1bmQKSnVyaXN0ZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5ldWUgSGFyZHdhcmUgKEdyaW1tYm9ybiwgMjguIE1haSAyMDAzLCAxNjozMjozMik6Cn4jISBybj1Dcm9mdCBydD0xMDU0MTMyMjUwIHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD0xMDU0MTEyODMxCkFsc28sIGljaCBoYWIgbWFsIGdlaG9lcnQgZGFzcyBzcGllbGV0YXVnbGljaGUgQ29tcHV0ZXIgd2Fzc2VyZ2VrdWVobHQgdW5kCm92ZXJjbG9ja2VkIHNlaW4gbXVlc3N0ZW4uIFVuZCBhdWNoIGRpZSBBbnNpY2h0ICJzcGllbHQga2VpbmUgUm9sbGUsIHdhcyBmdWVyCm5lIEdyYXBoaWtrYXJ0ZSByZWlua29tbXQiIHBhc3N0IGRhIG5pY2h0IGdhbnogenUuIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRW1lcmdlbnphIChHcmltbWJvcm4sIDI4LiBNYWkgMjAwMywgMTY6MzY6MDApOgp+IyEgcm49U3Ryb2hhbG0gcnQ9MTA1NDEzMjQ2MSByZz1rdWx0dXIKfiMhIHRpZD0xMDU0MTMyNDYxCiI0IFN0dW5kZW4gR2ViYWxsZXIiIC0gd2VyZGVuIGRhIGRpZSBCYW5kcyBhYmdlc2Nob3NzZW4/IENvb2wsIGRhbm4gd3VlcmRlIGljaApkYSBnZXJuZSBub2NoIGVpbiBwYWFyIEJhbmRzIG5hY2hub21pbmllcmVuIHdvbGxlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFbWVyZ2VuemEgKFN0cm9oYWxtLCAyOC4gTWFpIDIwMDMsIDE2OjQwOjM3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDU0MTMyNTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDEzMjQ2MQpBdWNoIHdlbm4gZGllIFdhZmZlbmtvbnRyb2xsZSBpbiBLTCB3b2hsIGVoZXIgbmViZW5zYWVjaGxpY2ggc2VpbiB3aXJkLCBnbGF1YgppY2gga2F1bSwgZGFzcyBkdSB1bmdlYWhuZGV0IGVpbmUgU2FsdmUgU2Nocm90IFJpY2h0dW5nIEJ1ZWhuZSBoZWl6ZW4ga2FubnN0LApvaG5lIHZvbiBkZXIgamV3ZWlsaWdlbiBGYW5nZW1laW5kZSBnZW51ZXNzbGljaCBpbiBrbGVpbmUgU2NoZWliY2hlbgp6ZXJzdHVlY2tlbHQgenUgd2VyZGVuLgoKQW5zb25zdGVuIGthbm5zdGUgRGljaCBhdWNoIGdlcm5lIG1pdCBBbGtvaG9sIHdlZ2JhbGxlcm4sIHVtIGRlbSBVbm11dApkaXZlcnNlciBNZXQnbGVyIHp1IGVudGdlaGVuLgoKSGFlbG1jaGVuLCBtZWludGUgbWl0IEdlYmFsbGVyIGVpZ2VudGxpY2ggZGllIHNhYXJsYWVuZGlzY2hlIFVtc2NocmVpYnVuZyBmdWVyCmV0d2FzIGFnZ3Jlc3NpdmVyZSBNdXNpa3N0aWxlIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERhbm4ga29udGVyIGljaCBtYWwuLi4gKEdyaW1tYm9ybiwgMjguIE1haSAyMDAzLCAxNjo0ODo0NSk6Cn4jISBvbj1Gb29iYXIgb3Q9MTA1NDEzMzAwMiBvZz1rdWx0dXIKfiMhIHJuPUFtYXpvcmEgcnQ9MTA1NDEzMjg3MyByZz1rdWx0dXIKfiMhIHRpZD0xMDU0MTMyNzI1CkljaCBrb250ZXIgYXVjaCBtYWw6CgpNb3JnZW4gcGZlaWYgaWNoIGJlaSBtaXIgYXVmIGRlbSBCYWxrb24gYXVmIGRlbSBLYW1tLgoKRWludHJpdHQga29zdGV0IGdhciBuaXgsIHdlaWwgaWNoIGtlaW5lbiByZWluIGxhc3NlLgoKR3J1c3MsCgogICBGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERhbm4ga29udGVyIGljaCBtYWwuLi4gKEdyaW1tYm9ybiwgMjguIE1haSAyMDAzLCAxNjo0ODo0Nik6Cn4jISBvbj1BbWF6b3JhIG90PTEwNTQxMzMxNjkgb2c9a3VsdHVyCn4jISBybj1Gb29iYXIgcnQ9MTA1NDEzMzAwMiByZz1rdWx0dXIKfiMhIHRpZD0xMDU0MTMyNzI1CmRhcyBnZWhvZXJ0IGFiZXIgamV0enQgc2Nob24gbmFjaCBzY2htYXJybiEgOy0pCmdyaW1tYm9ybiB3YWx0ZSBkZWluZXMgYW10ZXMhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEYW5uIGtvbnRlciBpY2ggbWFsLi4uIChHcmltbWJvcm4sIDI4LiBNYWkgMjAwMywgMTY6NDg6NDcpOgp+IyEgb249Rm9vYmFyIG90PTEwNTQxMzMyNjMgb2c9a3VsdHVyCn4jISBybj1BbWF6b3JhIHJ0PTEwNTQxMzMxNjkgcmc9a3VsdHVyCn4jISB0aWQ9MTA1NDEzMjcyNQpQb3N0aW5ncyB2b24gbWlyIHNvbGx0ZW4gYXVmZ3J1bmQgZGVzIGhvaGVuIE5pd29zIGdlbmVyZWxsIG5hY2ggS3VsdHVyIHZlcmxlZ3QKd2VyZGVuLCBmaW5kZSBpY2guIDpvKQoKR3J1c3MsCgogICBGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERhbm4ga29udGVyIGljaCBtYWwuLi4gKEdyaW1tYm9ybiwgMjguIE1haSAyMDAzLCAxNjo0ODo0OCk6Cn4jISBvbj1BbWF6b3JhIG90PTEwNTQxMzMzMDQgb2c9a3VsdHVyCn4jISBybj1Gb29iYXIgcnQ9MTA1NDEzMzI2MyByZz1rdWx0dXIKfiMhIHRpZD0xMDU0MTMyNzI1CmFiIG5hY2ggbWVnYXNjaG1hcnJybiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldGRpZ2VzdCAoR3JpbW1ib3JuLCAyOC4gTWFpIDIwMDMsIDE3OjI1OjU3KToKRnJvbTogU2ViYXN0aWFuIFBvc25lciA8c3Bvc25lckBnbXguZGU+CkRhdGU6IE1vbiwgMTkgTWF5IDIwMDMgMTE6NTc6MzMgKzAwMDAgKFVUQykKTmV3c2dyb3VwczogZGUuYWx0LnN5c2FkbWluLnJlY292ZXJ5CgpVZG8gRnVjaHMgbWVpbnRlIGt1bmR6dXR1bjoKCj4+IEljaCB1ZWJlcmxlZ2UgZ2VyYWRlLCB3b2hpbiBpY2ggYXVzd2FuZGVybiBrb2VubnRlLiAgTGVpZGVyIGtvbW1lbiBkaWUKPj4gbWVpc3RlbiBMYWVuZGVyIG5pY2h0IG1hbCBpbiBkaWUgVm9yYXVzc2NoZWlkdW5nLgo+Pgo+PiBJbnNiZXNvbmRlcmUgbGVnZSBpY2ggV2VydCBkYXJhdWYsIGRhc3MgbWFuIGluIGRlbSBMYW5kIGRlbiB3ZXN0bGljaGVuCj4+IFNjaHVsZGVuYmVyZy1SZXB1Ymxpa2VuIHVuYmVzY2hhZGV0IGJlaW0gS29sbGFiaWVyZW4genVzY2hhdWVuIGthbm4uCj4+IFVuZCBlcyB3YWVyZSB2b24gVm9ydGVpbCwgd2VubiBlaW5lbiBkaWUgU3RldWVybGFzdCBuaWNodCB1bWJyaW5ndC4KPiAKPiBTY2hvbm1hbCBhbiBOb3J3ZWdlbiBnZWRhY2h0Pwo+Cj4gTnVyIGRhcyBLbGltYSBpcyAhcmVjb3ZlcnkuCgpXaWVzbz8gSWNoIGJpbiBTeXNhZG1pbiwgdW0gbWljaCB6dSB2ZXJzb3JnZW4gbXVzcyBkZXIgUGl6emFkaWVuc3QgcmF1cywKbmljaHQgaWNoLgoKU2UiT3V0c2lkZSBpcyB3aGVyZSB0aGUgcGl6emEgY29tZXMgZnJvbSJiYXN0aWFuCgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGphIDspIChMaWFyYSwgMjguIE1haSAyMDAzLCAxNzo0MzowNyk6CkJhci4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IHdlc3Rlbi4KRGVyIGdlbGIgdmVyZmFlcmJ0ZSBEb3JpYW4gZGVyIFNjaG9sYXIuCkRpZSBUb3AtTGlzdGUsIFRvcC1TcGllbGVybGlzdGUgdW5kIFRvcC1TZWhlcmxpc3RlLgpEdSBzdHVwc3QgRG9yaWFuIGFuLgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgRG9yaWFuLgpEb3JpYW4gICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkRvcmlhbiB3YW5kZWx0IGlucyBSZWljaCBkZXIgTmV0enRvdGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFoamEgOykgKE1haGFyZXQsIDI4LiBNYWkgMjAwMywgMTg6NTY6NTQpOgp+IyEgcm49TGlhcmEgcnQ9MTA1NDEzNjU4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQxMzY1ODcKRGFzcyBzb2xsdGUgZGlyIHp1IGRlbmtlbiBnZWJlbi4KCk1haGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWhqYSA7KSAoTWFoYXJldCwgMjguIE1haSAyMDAzLCAxODo1NzoxMCk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwNTQxNDEwMTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0MTM2NTg3CnMKIApuIGV0bGVwcHdkIG5hZCBoaWsgZHN1IAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQWhqYSA7KSAoVmFuaW9uLCAyOC4gTWFpIDIwMDMsIDE5OjA3OjE3KToKfiMhIHJuPU1haGFyZXQgcnQ9MTA1NDE0MTAzMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQxMzY1ODcKdnB1IHVub3IgeHJ2YXIgbnVhaGF0LCBqbmYgcWggcW4gZnB1ZXJ2b2ZnLiByZiB6bnB1ZyBzaHJlIHp2cHUgcnZhc25wdSB4cnZhcmEKZnZhYS4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBaGphIDspIChNYWhhcmV0LCAyOC4gTWFpIDIwMDMsIDE5OjA3OjM3KToKfiMhIHJuPVZhbmlvbiBydD0xMDU0MTQxNjM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDEzNjU4NwpTY2hvZW4sIGRhc3MgZXMgYXVjaCBhbmRlcmVuIHNvIGdlaHQuCk1haGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFoamEgOykgKEZvb2JhciwgMjguIE1haSAyMDAzLCAxOTowODo1Nyk6Cn4jISBybj1WYW5pb24gcnQ9MTA1NDE0MTYzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQxMzY1ODcKVmFuaW9uLCBEdSBoYXN0IGRhIGVpbmVuIFR5cG8gaW0gendlaXRlbiBTYXR6LgoKR3J1c3MsCgogICBGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFoamEgOykgKENyb2Z0LCAyOC4gTWFpIDIwMDMsIDE5OjA5OjU2KToKfiMhIHJuPUZvb2JhciBydD0xMDU0MTQxNzM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDEzNjU4NwpJY2ggc2VoIGRhIGtlaW5lbiBUeXBvLgoKQ3JvZnQgdGFldHNjaGVsdCBkZW4gUk9UMTMtTW9kZSBzZWluZXMgRW1hY3MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBaGphIDspIChWYW5pb24sIDI4LiBNYWkgMjAwMywgMTk6MTA6MTApOgp+IyEgcm49Q3JvZnQgcnQ9MTA1NDE0MTc5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQxMzY1ODcKSWNoIGF1Y2ggbmljaHQuClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBaGphIDspIChWYW5pb24sIDI4LiBNYWkgMjAwMywgMTk6MTE6MjApOgp+IyEgcm49VmFuaW9uIHJ0PTEwNTQxNDE4MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0MTM2NTg3ClZwdSB1bm8gcW5zaHJlIHJ2YSBOeXYgLi4uCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQWhqYSA7KSAoQ3JvZnQsIDI4LiBNYWkgMjAwMywgMTk6MTI6MjQpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNTQxNDE4ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0MTM2NTg3CldpZSBsYW5nd2VpbGlnIDotKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEFoamEgOykgKEZvb2JhciwgMjguIE1haSAyMDAzLCAxOToxMzowNSk6Cn4jISBybj1Dcm9mdCBydD0xMDU0MTQxOTQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDEzNjU4NwpJY2ggZmFuZCBST1QyNiBzY2hvbiBpbW1lciBiZXNzZXIuCgpHcnVzcywKCiAgIEZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEFoamEgOykgKENyb2Z0LCAyOC4gTWFpIDIwMDMsIDE5OjE0OjExKToKfiMhIHJuPUZvb2JhciBydD0xMDU0MTQxOTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDEzNjU4NwpXZXIgYnJhdWNodCBzY2hvbiBST1QyNj8gIFp3ZWltYWwgUk9UMTMgdW5kIGZlcnRpZyBpc3QuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEFoamEgOykgKFZhbmlvbiwgMjguIE1haSAyMDAzLCAxOToxNDo0Mik6Cn4jISBybj1Dcm9mdCBydD0xMDU0MTQyMDUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDEzNjU4NwpJcyBxdWFzaSBpbiBSb3QxMyBzY2hvbiBkcmluIC4uLiA6KQpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEFoamEgOykgKEZvb2JhciwgMjguIE1haSAyMDAzLCAxOToxNTowMCk6Cn4jISBybj1Dcm9mdCBydD0xMDU0MTQyMDUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDEzNjU4NwpNaXIgZ2VmYWVsbHQgaGFsdCBkaWUgUXVlcnN1bW1lIHZvbiAyNiBiZXNzZXIgO28pCgpHcnVzcywKCiAgIEZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFoamEgOykgKERhcmtsb3IsIDI4LiBNYWkgMjAwMywgMjA6MjY6NTgpOgp+IyEgcm49TGlhcmEgcnQ9MTA1NDEzNjU4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQxMzY1ODcKSGF0IGVyIGRlbm4gd2VuZ2lzdGVucyBnZXN0dXBzdD8gKmcqCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogTmV1ZSBIYXJkd2FyZSAoTXVhZGliLCAzMC4gTWFpIDIwMDMsIDAxOjAxOjI5KToKfiMhIHJuPU11YWRpYiBydD0xMDU0MjQ5MjI1IHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD0xMDU0MTEyODMxCmRhcyB0ZWlsIHNvbGwgdm9yIGFsbGVtIGRhcnVtIGltbWVyIGxhdWZlbiB3ZWlsIGVzIHNvbnN0IGVzc2lnIGlzdCBtaXQgMjQvNwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE5ldWUgSGFyZHdhcmUgKFZhbmlvbiwgMzAuIE1haSAyMDAzLCAwODo1NDoyNCk6Cn4jISBybj1Gb29iYXIgcnQ9MTA1NDI3NzQ2NCByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTA1NDExMjgzMQpJcyB2aWVsbGVpY2h0IG5pY2ggZGVyIFNjaHJlaWJ0aXNjaCB6dW0gU2NocmVpYmVuIHNvbmRlcm4gZGVyIHp1bSBSZWNobmVyCmRydW50ZXIgc3RlbGxlbiA6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBOZXVlIEhhcmR3YXJlIChPcmt0b2V0ZXIsIDMwLiBNYWkgMjAwMywgMTE6MDA6MzYpOgp+IyEgcm49TXVhZGliIHJ0PTEwNTQyNDkyODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0MTEyODMxClNvIG9mdCB3aWUgZG9ydCBkZXIgU3Ryb20gYWJnZXNjaGFsdGV0IHdpcmQsIGlzdCB3ZW5uIGRhbm4gZWluZSBVU1Ygc2lubnZvbGxlcgphbHMgcmVkdW5kYW50ZSBOZXR6dGVpbGUuIEFsbGVyZGluZ3MgZmFsbGVuIGRpZSB3b2hsIGFlaG5saWNoIG9mdCBhdXMgd2llIGRpZQpub3JtYWxlIFN0cm9tdmVyc29yZ3VuZ2VuIChMYXV0IGVpbmVtIE1pdGFyYmVpdGVyIGRlcyBSZWNoZW56ZW50cnVtcyBoaWVyKSB1bmQKcmVpc3NlbiBkYW5uIG9mdCBkZW4gQ29tcGkgbWl0IHJ1bnRlciBvYndvaGwgZGFzIE5ldHogYnJhdiBTYWZ0IGxpZWZlcnQuLi4KCk9ya1QgZnVlciBlaW5lbiAiZWluZmFjaGVuIiBSZWNobmVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTmV1ZSBIYXJkd2FyZSAoVmFuaW9uLCAzMC4gTWFpIDIwMDMsIDIwOjQxOjUwKToKfiMhIHJuPUdub21lIHJ0PTEwNTQzMTk1NTAgcmc9bW9yZ2VuZ3JhdWVuLnZlcmVpbgp+IyEgdGlkPTEwNTQxMTI4MzEKQWgsIGVpbiBYUCAyMDAwKyB3dWVyZGUgd29obCBhdWNoIGF1c3JlaWNoZW4sIGRhc3MgaWNoIHdpZWRlciBhdWYgZGVtCk11ZHJlY2huZXIgR3JlcHMgbGF1ZmVuIGxhc3NlbiBrYW5uLCBvaG5lIGRhc3MgaWhyIGRhcyBzb2ZvcnQgbWVya3QgOikKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBOZXVlIEhhcmR3YXJlIChWYW5pb24sIDMwLiBNYWkgMjAwMywgMjA6NDI6NDYpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNTQzMjAxMTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0MTEyODMxClNjaGFuZGUgdWViZXIgYWxsZSwgZGllIGpldHp0IGdsYXViZW4sIGRhc3MgaWNoIE1haWxzIGdyZXBwZS4gTGVzdCB3ZW5pZ2VyCkJhZmguCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE5ldWUgSGFyZHdhcmUgKENyb2Z0LCAzMC4gTWFpIDIwMDMsIDIwOjQzOjMwKToKfiMhIHJuPVZhbmlvbiBydD0xMDU0MzIwMTY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDExMjgzMQpIbS4gSWNoIGRhY2h0ZSBpbW1lciBncmVwIGJlbGFzdGV0IGhhdXB0c2FlY2hsaWNoIGRpZSBJL08gdW5kIHdlbmlnZXIgZGVuClByb3plc3Nvci4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBOZXVlIEhhcmR3YXJlIChHbm9tZSwgMzAuIE1haSAyMDAzLCAyMDo0Mzo1NCk6Cn4jISBybj1WYW5pb24gcnQ9MTA1NDMyMDExMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQxMTI4MzEKd2VubiBEQVMgZGFzIHRvdHNjaGxhZy1hcmd1bWVudCBpc3QsIGRhbm4gcGxhZWRpZXIgaWNoIG5hdHVlcmxpY2ggZnVlcgoyIDMsMCBHSHogQU1ELUhhbW1lciBhdWYgbmVtIGR1YWwtYm9hcmQuID46KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE5ldWUgSGFyZHdhcmUgKFZhbmlvbiwgMzAuIE1haSAyMDAzLCAyMDo0NDozNik6Cn4jISBybj1Dcm9mdCBydD0xMDU0MzIwMjEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDExMjgzMQpEYSBEdSBlaW5lbiBYUCAyMDAwKyB1bm1vZWdsaWNoIGluIGRpZSBha3R1ZWxsZSBHdXJrZSByZWluYmVrb21tc3QsIGxhZXVmdCBkZXIKYXVmIGVpbmUgZW50c3ByZWNoZW5kZSBJL08tU3RlaWdlcnVuZyByYXVzLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthbXBmYmVyZWl0IC4uLiAoV2FyaywgMzAuIE1haSAyMDAzLCAyMjoyMTo0MSk6Ci4uLiBkaWUgQXVzcnVlc3R1bmcgdWViZXJwcnVlZnQsIGRpZSBXYWZmZSBnZXp1ZWNrdCwgamVkZXIgTXVza2VsIHp1bSBTcHJ1bmcKYmVyZWl0IHVuZCAuLi4KCj4gRHUgaGFzdCBqZXR6dCAyMzEgTGViZW5zcHVua3RlIHVuZCAxODIgS29uemVudHJhdGlvbnNwdW5rdGUuCmthbXBmc3BydW5nIG8KRWluIFdpbmRiZXV0ZWwga29tbXQgYW4uCkR1IG1hY2hzdCBlaW5lbiBnZXdhbHRpZ2VuIEthbXBmc3BydW5nIQpEZXIgV2luZGJldXRlbCBiZWhpbmRlcnQgRGVpbiBGb3J0a29tbWVuLgpEdSBmbGllZ3N0IHZvbGwgYXVmIGRpZSBGcmVzc2UuCkR1IGhhc3QgamV0enQgMjAwIExlYmVuc3B1bmt0ZSB1bmQgMTgyIEtvbnplbnRyYXRpb25zcHVua3RlLgoKV2FyayBkZW5rdCAuIG8gTyAoS2FlbXBmZXJzY2hpY2tzYWwpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkZS5hbHQubmV0ZGlnZXN0Li4uIGFiZXIuLi4gKFJvbmRhLCAgMS4gSnVuIDIwMDMsIDAwOjQ1OjQzKToKLi4uIGJpbiBpY2ggaW4gZGVyIHJpY2h0aWdlbiBHcnVwcGU/IEdlaG9lcnQgZGFzIG5pY2h0IGRvY2ggZWhlciBuYWNoCkdlamFtbWVyLlBpc2E/CgpSb25kYQoKW0RpZSBlcndhZWhudGUgU3RyYWhsdW5nIGhlaXNzdCBpbiBSTCAiVHNjaGVyZW5rb3YtU3RyYWhsdW5nIl0KCkZyb206IGhhbnNfc2NobGF3aW5lckB5YWhvby5kZSAoSGFucyBTY2hsYXdpbmVyKQpOZXdzZ3JvdXBzOiB6LW5ldHoud2lzc2Vuc2NoYWZ0LnBoeXNpawpTdWJqZWN0OiBUc2NoYWlrb3dza3kgdW5kIFVlYmVybGljaHRnZXNjaHdpbmRpZ2tlaXQKRGF0ZTogMjUgQXByIDIwMDMgMDM6MjE6MzQgLTA3MDAKTWVzc2FnZS1JRDogPGRmZjNhZDUyLjAzMDQyNTAyMjEuMzhiZjU2NGZAcG9zdGluZy5nb29nbGUuY29tPgogICAKSGksCgp1bnNlcmUga2xhc3NlIHdhciB2b3IgZWluIHBhYXIgdGFnZW4gaW0gcmVha3RvciBpbiBnZWVzdGFjaHQuIAplY2h0IGdlaWwsIHd1c3N0ZSBuaWNodCBkYXMgbWFuIGRhIHZvbiBvYmVuIHJlaW5zY2hhdWVuIGthbm4hIQoKRGVyIHJlYWt0b3IgbWFjaHRlIGVpbiBjb29sZXMgYmxhdWVzIExpY2h0IChmYXN0IHNvIGNvb2wgd2llIApkYXMgdm9uIG1laW5lbSBnZW1vZGRlZGVuIHBjKS4gZGVyIHR5cCBkZXIgdW5zIGFsbGVzIHplaWd0ZSAgCm1laW50ZSBkYXMgd2FlcmUgdHNjaGFpa293c2t5LXN0cmFobHVuZyB1bmQgc2llIGVudHN0ZWh0IGR1cmNoCnRlaWxjaGVuLCBkaWUgbWl0IHVlYmVybGljaHRnZXNjaHdpbmRpZ2tlaXQgZmxpZWdlbj8/PwppY2ggZGFjaHRlIHRzY2hhaWtvd3NreSBpc3QgZWluIHNjaHJpZnRzdGVsbGVyLCB3YXIgZGVyIGF1Y2ggICAKcGh5c2lrZXI/PyB1bmQgd2FydW0gaXN0IHVlYmVybGljaHRnZXNjaHdpbmRpZ2tlaXQgZG9jaCBtb2VnbGljaD8KCmhhbnMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBQdWZmIChHcmltbWJvcm4sICAxLiBKdW4gMjAwMywgMTY6MjU6NDYpOgp+IyEgb249RWxpemFiZXRoIG90PTEwNTQyOTc5OTAgb2c9d2l0emUKfiMhIHJuPVBob2JvcyBydD0xMDU0MjAzNTUwIHJnPXdpdHplCn4jISB0aWQ9MTA1MzY3MjE1MQpvaCBteSBnb2QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXVmIGd1dGUgTmFjaGJhcnNjaGFmdC4uLiAoR3JpbW1ib3JuLCAgMS4gSnVuIDIwMDMsIDE2OjI1OjQ3KToKfiMhIG9uPUVsaXphYmV0aCBvdD0xMDU0Mjk4MDUxIG9nPXdpdHplCn4jISBybj1Gb29iYXIgcnQ9MTA1NDI4NTg5NCByZz13aXR6ZQp+IyEgdGlkPTEwNTQyODU4OTQKRGFua2UsIGRlbiBoYWIgaWNoIG5ldWxpY2ggZ2VzdWNodCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJ1bmdhbG93cGxhZXR6ZS4uLiAoQ3JvZnQsICAxLiBKdW4gMjAwMywgMTg6Mjg6MTEpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNTQ0ODM4MTMgcmc9cGFydHkKfiMhIHRpZD0xMDU0NDgzNjk4CkR1IG1laW5zdCBiZXN0aW1tdCBSZWdlbiBhdXNzZXJoYWxiIGRlcyBaZWx0ZXMuICBSZWdlbiBpbSBaZWx0IGZpbmQgaWNoCmFldXNzZXJzdCB1bnd1ZW5zY2hlbnN3ZXJ0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJ1bmdhbG93cGxhZXR6ZS4uLiAoUm9uZGEsICAxLiBKdW4gMjAwMywgMjI6MjI6MDgpOgp+IyEgcm49Q3JvZnQgcnQ9MTA1NDQ4NDg5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQ0ODM2OTgKUmVnZW4gSU0gWmVsdCBnaWJ0cyBJTUhPIG51ciBiZWkgQ2hhb3Rlbi4gTWFuIHNvbGx0ZSBzY2hvbiBldHdhcyBWb3JzaWNodAp3YWx0ZW4gbGFzc2VuIGJlaSBkZXIgQXVzd2FobCBkZXIgWmVsdGdlbm9zc2VuLi4uCgouLi4gbWVpbnQgUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRlLmFsdC5uZXRkaWdlc3QgLSBvZGVyIGRpZSBXYWhyaGVpdCB6dSBTQVJTIChSb25kYSwgIDEuIEp1biAyMDAzLCAyMjoyNDoxNCk6CkZyb206ICJEaWV0aGFyZCBSZW5ub2NoIiA8MTkyMS0yMjhAb25saW5laG9tZS5kZT4KTmV3c2dyb3VwczogZGUuYWx0LnJlYy5kaWdpdGFsZm90b2dyYWZpZQpTdWJqZWN0OiBPVCAtIE5ld3MgOy0pCkRhdGU6IFR1ZSwgMTMgTWF5IDIwMDMgMjE6MzQ6MzYgKzAyMDAKTWVzc2FnZS1JRDogPGI5cmg5biRxMzEkMUBvbmxpbmUuZGU+CgpOZXdzCgpBdXMgZ2V3b2VobmxpY2ggc2NobGVjaHQgdW50ZXJyaWNodGV0ZW4gUmVnaWVydW5nc2tyZWlzZW4gZXJoaWVsdGVuIHdpcgpmb2xnZW5kZSBNZWxkdW5nOgoKVW0gZGllIEF1c2JyZWl0dW5nIGRlciBMdW5nZW5rcmFua2hlaXQgU0FSUyBlaW56dWRhZW1tZW4sIHdpcmQgZGllCkV1cm9wYWVpc2NoZSBVbmlvbiBzYWVtdGxpY2hlIEltcG9ydGUgdm9uIERpZ2l0YWxrYW1lcmFzIGF1cyBkZW0KYXNpYXRpc2NoZW4gUmF1bSBzdG9wcGVuLCBkaWUga2VpbmVuIFZpcmVuc2Nhbm5lciBpbiBkZXIgRmlybXdhcmUKaGFiZW4uCgpEaWUgZGV1dHNjaGUgQnVuZGVzcmVnaWVydW5nIHdpbGwgd2llZGVyIGVpbmVuIFNvbmRlcndlZyBlaW5zY2hsYWdlbi4KRGllIEdydWVuZW4gaGFsdGVuIGVzIGZ1ZXIgYXVzcmVpY2hlbmQsIHdlbm4gZGVyIENvbXB1dGVyIHp1cgpCaWxkdmVyYXJiZWl0dW5nIGJlcmVpdHMgdWViZXIgZWluIFZpcmVuc2NodXR6cHJvZ3JhbW0gdmVyZnVlZ3QsIHdhZWhyZW5kCkJ1bmRlc2lubmVubWluaXN0ZXIgU2NoaWx5IGRlbiBFaW5zYXR6IGRlciBjaGVtaXNjaGVuIEtldWxlIGluIGFsbGVuCkZvdG9mYWNoZ2VjaGFlZnRlbiB1bmQgS2F1ZmhhZXVzZXJuLCBzb3dpZSBkaWUgQmVzY2hsYWduYWhtZSBhbGxlcgpwcml2YXQgZ2VudXR6dGVuIERpZ2l0YWxrYW1lcmFzIHp1ciBFaW5kYWVtbXVuZyBkZXIgendlaWZlbGxvcwp0ZXJyb3Jpc3Rpc2NoIGdlc3RldWVydGVuIFNldWNoZSBmdWVyIHp3aW5nZW5kIGVyZm9yZGVybGljaCBoYWVsdC4gRGVuClZvcnNjaGxhZyBkZXMgVVMtUHJhZXNpZGVudGVuLCBhbGxlIEthbWVyYWJlc2l0emVyIGltIE5hbWVuIEdvdHRlcyB6dQplcnNjaGllc3NlbiwgbGVobnRlIGVyIG5hY2ggUnVlY2tzcHJhY2hlIG1pdCBkZW0gQnVuZGVza2FuemxlciBlbnRydWVzdGV0CmFiLiBTY2hsaWVzc2xpY2ggc2VpZW4gS2lyY2hlIHVuZCBTdGFhdCBpbiBkZXIgQnVuZGVzcmVwdWJsaWsKRGV1dHNjaGxhbmQgZ2V0cmVubnQuCgpEaWUgT3Bwb3NpdGlvbiB6ZWlndGUgaG9lY2hzdGUgQWt0aXZpdGFldCB1bmQgd2FyZiBkZXIgQnVuZGVzcmVnaWVydW5nCmluIHNjaGFyZmVuIFdvcnRlbiB2b2VsbGlnZSBVbmZhZWhpZ2tlaXQgdW5kIFZlcnNhZ2VuIHZvciwgYnJhY2h0ZQpqZWRvY2gga2VpbmUgZWlnZW5lbiBWb3JzY2hsYWVnZSBlaW4uCgpBdXMgcmVjaHRlbiBLcmVpc2VuIHdhciBkaWUgYmVydWhpZ2VuZGUgTmFjaHJpY2h0IHp1IHZlcm5laG1lbiwgZGFzcwpEZXV0c2NoZSBEaWdpdGFsa2FtZXJhcyBuaWNodCBiZXRyb2ZmZW4gc2VpZW4sIHdhZWhyZW5kIGRpZSBVbHRyYWxpbmtlbgppbiBlaW5lciBncm9zc2VuIFByZXNzZWtvbmZlcmVueiBlaW5lIHdpc3NlbnNjaGFmdGxpY2ggYmVncnVlbmRldGUKVGhlb3JpZSB1ZWJlciBTQVJTIHVuZCBEaWdpdGFsa2FtZXJhcyB2b3JzdGVsbHRlbiwgZGllIGFsbGUgNSBadWhvZXJlcgp1ZWJlcmZvcmRlcnRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTW9yZ290aHMgT3JrcyAoVmFtcGlyZSwgIDIuIEp1biAyMDAzLCAxMDozMToxNSk6CkljaCBiaW4gZGFnZW5nZW4gZGFzIGVpbiBzY2huZWxsZXIgUmVjaG5lciBnZWthdWZ0IHdpcmQsIGRhbm4gd2VyZGVuIGRpZSBPcmtzCnZpZWwgenUgc2NobmVsbC4gSWNoIHdhZXJlIGRhZnVlciBkYXMgZWluIDQ4NiBSZWNobmVyIGFuZ2VzY2hhZnQgd2lyZCBvZGVyCmJlc3NlciBlaW4gQ29tbW9kb3JlIFBDIDIwCgpWYW1waXJlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTW9yZ290aHMgT3JrcyAoRm9vYmFyLCAgMi4gSnVuIDIwMDMsIDEwOjQxOjQ1KToKfiMhIHJuPVZhbXBpcmUgcnQ9MTA1NDU0MjY3NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQ1NDI2NzUKRGllIE9ya3Mga29lbm5lbiBkb2NoIG5peC4gOm8pCgpHcnVzcywKCiAgIEZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNb3Jnb3RocyBPcmtzIChWYW1waXJlLCAgMi4gSnVuIDIwMDMsIDEwOjQyOjU1KToKfiMhIHJuPUZvb2JhciBydD0xMDU0NTQzMzA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDU0MjY3NQpEYW5uIGphIHNjaG5lbGxlciB3ZWdyZW5uZW4KClZhbXBpcmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOZXVlIEhhcmR3YXJlIChNdWFkaWIsICAyLiBKdW4gMjAwMywgMTE6MjA6MjUpOgp+IyEgcm49Tm9ubmUgcnQ9MTA1NDU0MjI0NSByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTA1NDExMjgzMQppY2ggbXVzcyBub25uZSB3aWRlcnNwcmVjaGVuLCBkYXMgd2lya2xpY2hlIHByb2JsZW0gYmVpbSAyNC83IGJldHJpZWIgaXN0Cm5pY2h0IGRpZSB0ZW1wZXJhdHVyLCBlaGVyIHNjaG9uIGRlciBzY2hsYWZtYW5nZWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBOZXVlIEhhcmR3YXJlIChWYW1waXJlLCAgMi4gSnVuIDIwMDMsIDExOjI1OjQ2KToKfiMhIHJuPU11YWRpYiBydD0xMDU0NTQ1NjI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDExMjgzMQpOaWNodCBudXIgZGVyIFNjaGxhZm1hbmdlbCwgaWNoIGdsYXViZSBkaWUgR2V3ZXJrc2NoYWZ0IGRlciBQQ3MgbXVzcyBtYW4gZGFiZWkKYXVjaCBiZWFjaHRlbi4gRGEgZ2FiIGVzIGVpbmlnZSBWb3JzY2hyaWZ0ZW4gYW4gZGVuZW4gbWFuIHNpY2ggaGFsdGVuIG11c3N0ZS4KClZhbXBpcmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBOZXVlIEhhcmR3YXJlIChNdWFkaWIsICAyLiBKdW4gMjAwMywgMTE6MzA6NTcpOgp+IyEgcm49VmFtcGlyZSBydD0xMDU0NTQ1OTQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDExMjgzMQp3ZXIgcmVkZXQgZGVuIHZvbiBwY3MgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE5ldWUgSGFyZHdhcmUgKE11YWRpYiwgIDIuIEp1biAyMDAzLCAxMTozMzoyMyk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTA1NDU0NTk1NCByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTA1NDExMjgzMQpobW0gbWFuIGJyYXVjaHQgYWxzbyBlaW5lIHBsYXR0ZSBmdWVyIHBsYXR0ZW56dWdyaWZmZSA/CndvdwptYW4gbGVybnQgbmllIGF1cyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyIChWYW1waXJlLCAgMi4gSnVuIDIwMDMsIDExOjM5OjM3KToKTXVhZGliIGVyc2NoZWludC4KTXVhZGliIGhhdCBqZXR6dCBTdHVmZSA2NyBlcnJlaWNodC4KTXVhZGliIHdpbmt0LgpNdWFkaWIgdmVyc2Nod2luZGV0LgoKVmFtcGlyZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hZ2llciAoSHVtbmksICAyLiBKdW4gMjAwMywgMTE6NDA6NDApOgp+IyEgcm49VmFtcGlyZSBydD0xMDU0NTQ2Nzc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDU0Njc3NwpLb21pc2NoLi4uLgoKZmluZ2VyIG11YWRpYgpbLi4uXQpBbHRlcjogMjQwZCAwMjowMzoxMiwgICBNYWdpZXJsZXZlbDogNjYgKEVyem1hZ2llcikKWy4uLl0KCmVyaG9laGUgYnVnZ3QuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGUuYWx0Lm5ldGRpZ2VzdC4uLiAoUm9uZGEsICAyLiBKdW4gMjAwMywgMjA6NTY6NDkpOgouLi4gZGFzcyBkZXIgYXJtZSBNYW5uIHNpY2ggaW1tZXIgbWl0IERBVSdzIHJ1bXBydWVnZWxuIG11c3MuLi4KCkZyb206IEFuZHJlYXMgRGF1IDxkZXYubnVsQGFuZHJlYXNkYXUuZGU+Ck5ld3Nncm91cHM6IGRlLmFsdC5zeXNhZG1pbi5yZWNvdmVyeQpTdWJqZWN0OiBHZXN0ZXJuIGxpZWYgZGFzIGFiZXIgbm9jaCEKRGF0ZTogU3VuLCAxIEp1biAyMDAzIDAzOjMzOjUzICswMjAwCgpFaW5lcyB3dW5kZXJzY2hvZW5lbiBNb3JnZW5zIGltIE1haSAyMDAzOgoKSWNoIGhhYicgZ3JhZCcgZGllIGVyc3RlIFRhc3NlIG1laW5lcyBiZXZvcnp1Z3RlbiAkU0NIV0FSWkVTX0dFQlJBRVUKYWJnZXphcGZ0IHVuZCBzZXR6ZSBtaWNoIHZvciBtZWluZW4gJEJMRUNIVFJPVFRFTCB1bSBFcmJhdWVuZGVzIHp1IGJlZ2VoZW4sCndpZSBldHdhIGRhc3IgenUgbGVzZW4sIGRhIGtsaW5nZWx0ICRCT2VTRVNfRElOR19NSVRfSE9FUkVSOgoKQU9GQjogICAiSmE/IiBbMV0KJExVU0VSOiAiVW5zZXIgU2Nhbm5lciBnZWh0IG5pY2h0IG1laHIuIgpBT0ZCOiAgICJKYSwgaWNoIHd1ZW5zY2hlIElobmVuIGF1Y2ggZWluZW4gd3VuZGVyc2Nob2VuZW4gZ3V0ZW4gTW9yZ2VuISIKJExVU0VSOiAiRWhtLCBqYSwgR3V0ZW4gTW9yZ2VuLCBhbHNvIGVoLCBkZXIgU2Nhbm5lciBnZWh0IG5pY2h0IG1laHIuCiAgICAgICAgIEdlc3Rlcm4gZ2luZyBlciBub2NoLiIKQU9GQjogICAiV2FzIGdlbmF1IGhhYmVuIFNpZSBnZW1hY2h0PyIgWzJdCiRMVVNFUjogIk5pY2h0cywgZ2VzdGVybiBnaW5nIGVyIG5vY2ghIiBbM10KQU9GQjogICAiVW5kIGpldHp0IG5pY2h0IG1laHI/IFdhcyBtb2VjaHRlbiBTaWUgZGVubiB0dW4/IiBJbSBIaW50ZXJncnVuZCAKICAgICAgICBzdGFydGUgaWNoIHNjaG9uIG1hbCBkZW4gVlBOIFR1bm5lbCB6dSBpaG0uCiRMVVNFUjogIkphLCBzY2FubmVuLCBnZXN0ZXJuIGdpbmcgZGFzIG5vY2ghIiBJbnNnZWhlaW0gd3VlbnNjaGUgaWNoIG1pcgogICAgICAgIGRlbiBCdXR0b24gIiRMVVNFUiBuYWNoIGdlc3Rlcm4gdmVyc2V0emVuIiwgZGVubiBkYSBnaW5ncyBqYS4KICAgICAgICBPZGVyIGJlc3NlciBub2NoIHRpbWV3YXJwLXV0aWwtMS40LjQyLgogICAgICAgIHRpbWV3YXJwIC1mIC0tbm93ICRMVVNFUiAtMWQgCkFPRkI6ICAgIkFoIGphLiBNb21lbnQsIGljaCBzY2hhdSBtYWwuIiBEcmVja3NidWVjaHNlIG1lbGRldCAiR2VyYWV0IG5pY2h0CiAgICAgICAgYXVmZmluZGJhci4iCkFPRkI6ICAgIkhhYmVuIFNpZSBldHdhcyBhbiBkZXIgVmVya2FiZWx1bmcgZ2VhZW5kZXJ0PyIKJExVU0VSOiAiTmVpbiwgaWNoIGhhYiBudXIgbWVpbmVuIFNjaHJlaWJ0aXNjaCBhdWZnZXJhZXVtdCB1bmQgZGVuIG5ldSAKICAgICAgICBlaW5nZXN0ZWNrdC4gR2VuYXVzbyB3aWUgZ2VzdGVybi4gR2VzdGVybiBnaW5nIGRhcyBzby4iCkFPRkI6ICAgJiUkJSUkQCQkCgpFaW4gT3J0c3Rlcm1pbiBzY2hlaW50IHVudmVybWVpZGJhci4gSWNoIG1hY2hlIG1pciBlaW5lIE5vdGl6LCBkaWVzZW4KS3VuZGVuIGF1ZiBtZWluZSBlcmhvZWh0ZW4gQW5mYWhydHNrb3N0ZW4gdm9yenViZXJlaXRlbi4KCkFPRkI6ICAgIk9rLCBpY2gga29tbWUgaW0gTGF1ZmUgZGVzIFRhZ2VzIHJlaW4uIiAoTnVyIGtlaW4gU3RyZXNzISkKClZvciBPcnQgYW5nZWtvbW1lbiBnaWJ0J3Mgd2VuaWdzdGVucyAkU0NIV0FSWkVTX0dFQlJBRVUuIFdlbm4gZGllc2UgRGVwcGVuCm51ciBuaWNodCBpbW1lciBLYWZmZWUgdW5kIFRlZSBpbiBkZW5zZWxiZW4gVGhlcm1vc2thbm5lbiBmcmlzY2ggaGFsdGVuCnd1ZXJkZW4uIFZpZWwsIHZpZWwgTWlsY2ggbWFjaHQgZGllc2VzIE1hbmtvIG51ciB1bnp1cmVpY2hlbmQgd2V0dC4KCiRMVVNFUiAgIkFsc28sIGhpZXI6IGRhIGlzdCBlci4gR2VzdGVybiBnaW5nIGRhcyBub2NoISIKRGVyIE1lbnNjaCBzY2hlaW50IGVpbmVuIEZldGlzY2ggZnVlciBkaWUgVmVyZ2FuZ2VuaGVpdCB6dSBoYWJlbi4KCkFPRkI6ICAgIkphLCBpY2ggZ3VjayBtYWwuIgoKQmlubmVuIGt1cnplbSBzdGVsbHQgc2ljaCBoZXJhdXMsIGRhc3MgZXIsIGRlciBTY2FubmVyIHdpcmQgdWViZXIKUGFyYWxlbGxrYWJlbCBiZXRyaWViZW4sIGViZW4gamVuZXMgS2FiZWwgaW4gZGllIFNlcmllbGxlIGdlc3RvZXBzZWx0IGhhdHRlCnVuZCBhbSBTY2FubmVyIGFuIGRlbiBBdXNnYW5nLCBkYXMgS2FiZWwgYWxzbyB2ZXJkcmVodCBhbmdlc2NobG9zc2VuIGhhdHRlLgoKQU9GQjogICAiU28ga2FubiBkYXMgbmljaHQgZ2VoZW4sIGRhcyBzdGVja3QgaW4gZGVyIGZhbHNjaGVuCiAgICAgICAgIFNjaG5pdHRzdGVsbGUuIgokTFVTRVIgICJEYXMgaXN0IGdlbmF1IHNvIHdpZSBnZXN0ZXJuLCBnZXN0ZXJuIGdpbmcgZGFzIG5vY2ghIgpXbyBmaW5kZXQgbWFuIGVpbmVuIFBzeWNoYXRlciBmdWVyIFRlbXBvcmFsIERpc2Vhc2VzPwoKSWNoIHN0ZWNrZSBkYXMgS2FiZWwgcmljaHRpZyBlaW4sIGJvb3RlIGRpZSBXaW50ZW5kbyBCdWVjaHNlIG5ldSB1bmQgc2llaGUKZGEsIGVzIGdlaHQuCgpBT0ZCOiAgICJCaXR0ZXNjaG9lbiwgZ2VodCB3aWVkZXIhIgokTFVTRVI6ICJTZWx0c2FtLiBHZW5hdXNvIHdhciBkYXMgZ2VzdGVybiBhdWNoLiBEYSBnaW5ncyBub2NoISIKQU9GQjogICBUSUxUCgoKClsxXSBBT0ZCIDo9IEFubm95ZWQgT3BlcmF0b3IgRnJvbSBCb25uClsyXSBJY2ggd29sbHRlIGdhciBuaWNodCBkYXJhdWYgaGluYXVzLCBvYiBlciB3YXMgc2VsYmVyIHJ1bWdlZnJpY2tlbHQgaGF0LAogICAgc29uZGVybiBudXIgd2lzc2VuLCB3YXMgZ2VuYXUgZXIgbWFjaGVuIHdvbGx0ZS4KWzNdIFdlciBzaWNoIHZlcnRlaWRpZ3QuLi4KCgoKCnR0eWw4ZXIsIHRrLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VyYWRlIGF1ZiBkZXIgRGViaWFuLU1haWxpbmdsaXN0ZS4uLiAoQW1hcnlsbGlzLCAgMy4gSnVuIDIwMDMsIDEzOjI1OjA1KToKSGFsbG8hISEKCkljaCB2ZXJzdWNoZSBtaWNoIGdlcmFkZSBpbiBEZWJpYW4gR05VIGVpbiB6dWFyYmVpdGVuLCAgZXMgZmFlbGx0IG1pciB3aXJrbGljaApuaWNodApsZWljaHQuCkdydW5kd2lzc2VuOgpOb3RlYm9vayBUb3NoaWJhLCBYaXJjb20gUmVhbCBQb3J0IEV0aGVybmV0IDEwLzEwMCtNb2RlbTU2LCBEZWJpYW4gR05VIDMuMAooTk9OVVMsIGhhYmUKbWlyIG51ciBkaWUgZXJzdGVuIGJlaWRlbiBDRCBoZXJ1bnRlciBnZWxhZGVuKQoKRGEga2FtIG5hdHVlcmxpY2ggICJodHRwOi8vd3d3Lm9wZW5vZmZpY2UuZGUvbGludXgvYnVjaC8gQW53ZW5kZXJidWNoIHZvbiBGLgpSb25uZWJ1cmciCmdhbnogZ2VsZWdlbi4gSGFiIGRhbm4gdmVyc3VjaHQsIHNvZ3V0IGVzIGdlaHQgbWljaCBkcmFuIHp1IGhhbHRlbi4KCkFscyBpY2ggZGFubiBsYXV0CiJodHRwOi8vd3d3Lm9wZW5vZmZpY2UuZGUvbGludXgvYnVjaC9ncnVwcGVuei5odG1sI1pVR1JJRkZTUkVDSFRFIiAKIk1lbGRlbiBTaWUgc2ljaCBtaXQgSWhyZW0gQmVudXR6ZXJuYW1lbiBhbSBTeXN0ZW0gYW4sIGJlbnV0emVuIFNpZSBuaWNodCBkZW4KWnVnYW5nCmRlcyBTdXBlcnVzZXJzIChyb290KSwgdW5kIGdlYmVuIFNpZSBkYXMgS29tbWFuZG86IHJtIC9ldGMvcmVzb2x2LmNvbmYgZWluLiAiCmRhcyBLb21tYW5kbyBlaW5nZWdlYmVuIGhhYmUsIHdhciBwbG9ldHpsaWNoIGRpZURhdGVpbiB3ZWcuIEJlaW0gZ2VuYXVlbiBoaW4Kc2NoYXVlbiwKbWVya3RlLCBkYXNzIGljaCBkaWVzIG5pY2h0IHVudGVyICJyb290IiBtYWNoZW4gc29sbHRlLiBOdW4gaXN0IGRpZSBEYXRlaW4Kd2VnLiBHbGVpY2gKZWluIE5ldXN0YXJ0IGdlbWFjaHQsIHVtIGRpZSBBdXN3aXJrdW5nZW4genUgc2VoZW4uIERpZXMgd2lyZCBhdWNoIGltClN0YXJ0c2VrcXVlbnoKZ2VtZWxkZXQsIGRhc3MgZGllIERhdGVpIGZlaGx0LiBTY2hsaW1tPyA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWQVgvVk1TIChHcmltbWJvcm4sICAzLiBKdW4gMjAwMywgMTg6MzU6MjIpOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDU0NjU4MDQxIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwNTQ2NTgwNDEKU28uLi4gdXAtdG8tZGF0ZSwgd2llIGRhcyBPUyBpc3QsIHd1ZXJkZSBpY2ggc2FnZW46IFN1Y2ggc28gZWluZSBNYXNjaGluZSB1bmQKaGFjayBEaXIgRGVpbmVuIGVpZ2VuZW4gYWNjb3VudCwgZGFzIHNvbGx0ZSBzbyBzY2h3ZXIgbmljaHQgc2Vpbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNb3JnZW5zIGt1cnogbmFjaCBzaWViZW4gaW4gRGV1dHNjaGxhbmQgLi4uIChUaWdyZXMsICA0LiBKdW4gMjAwMywgMDc6MTM6MDQpOgpaYXJuaXlhLi4uLi4uLi5Kd3MgSWRsZWQuLi4uLi4uLi4uSi56IFluZy4uLi4uLi4uLi4uLkoucyBOb3N0cm9tby4uLi4uLi5Jd3MKVGlncmVzLi4uLi4uLi4uLnd6IEVhZHJpYy4uLi4uLi4uLkkueiBHd2VuaWxpLi4uLi4uLi5JLlMgQW1icm9zaXVzLi4uLi4uSi5TCkx5YS4uLi4uLi4uLi4uLkouVCBBbHBoYS4uLi4uLi4uLi5KLlMgSG91c2Vob2xkZXIuLi4uSi5TIEltZGEuLi4uLi4uLi4uLkouUwpIaWdodC4uLi4uLi4uLi5KLlMgTGFjcmkuLi4uLi4uLi4uSi5TIFR5bGFrLi4uLi4uLi4uLmkuUyBIYWRyYS4uLi4uLi4uLi5KLm0KR3JpbW1ib3JuLi4uLi4uSXdtIE1hcmN1cy4uLi4uLi4uLkoubSBCYW1idWxrby4uLi4uLi5KLk0gUmFnbmFyb2VrLi4uLi4uSndSCk1vcmdvdGguLi4uLi4uLkp3UiBNYW5kcmFnb24uLi4uLi5KLlIKCgppY2ggZnVlaGwgbWljaCBzbyBlaW5zYW0gLi4KCi0gUmFuZ29ybiBLaHVyJ1RpZ3JlcyBzY2htYXJybnQgLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1vcmdlbnMga3VyeiBuYWNoIHNpZWJlbiBpbiBEZXV0c2NobGFuZCAuLi4gKFZhcmRpb24sICA0LiBKdW4gMjAwMywgMTA6MDg6NTApOgp+IyEgcm49VGlncmVzIHJ0PTEwNTQ3MDM1ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0NzAzNTg0CldhcyBtdWRkZXN0IGR1IGF1Y2ggbWl0dGVuIGluIGRlciBOYWNodD8KClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXMgbXVzcyBtYW4gZnVlciBzb3dhcyBnZXJhdWNodCBoYWJlbj8gKEdyaW1tYm9ybiwgIDQuIEp1biAyMDAzLCAxMjowMDoxMSk6Cn4jISBybj1BbnRoZWEgcnQ9MTA1NDcyMDY0MiByZz13d3cKfiMhIHRpZD0xMDU0NzIwNjQyClNjaG1pZXJzZWlmZSwgd3VlcmRlIGljaCBzYWdlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBdWNoIG1hbCB3ZWcgKEh1bW5pLCAgNC4gSnVuIDIwMDMsIDEzOjA1OjUzKToKfiMhIHJuPUFtYXpvcmEgcnQ9MTA1NDcyMDcyNCByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTA1NDcxODU1OQpXZW5uIGljaCBpaG4gdHJlZmZlIHVuZCBlciBuaWNodCBnZXJhZGUgc3BpZWxlbiBtdXNzIG1hY2ggaWNoIGRhcy4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBdWNoIG1hbCB3ZWcgKE1vcmdvdGgsICA0LiBKdW4gMjAwMywgMTM6MDc6MDUpOgp+IyEgcm49SHVtbmkgcnQ9MTA1NDcyNDc1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQ3MTg1NTkKSGF1cHRzYWNoZSBBbWF6b3JhIHZlcmdpc3N0IG1laW5lIEF1dG9ncmFtbWUgdm9uIFNsYXllciBuaWNodCA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEF1Y2ggbWFsIHdlZyAoQW1hem9yYSwgIDQuIEp1biAyMDAzLCAxMzoxMDoxMCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNTQ3MjQ4MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0NzE4NTU5Cndlbm4gZGllIGFtIDA0LjA3IHNwaWVsZW4gZGFubiB2ZXJnZXNzZSBpY2ggc2llIGdhbnogYmVzdGltbXQgbmljaHQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBdWNoIG1hbCB3ZWcgKEFtYXpvcmEsICA0LiBKdW4gMjAwMywgMTM6MTA6NDYpOgp+IyEgcm49SHVtbmkgcnQ9MTA1NDcyNDc1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQ3MTg1NTkKYWNoLCBnaWIgaWhtIGRvY2ggYmVpIGdlbGVnZW5oZWl0IGF1Y2ggbWVpbmUgdGVsZWZvbm51bW1lciA7LSkKLAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQXVjaCBtYWwgd2VnIChIdW1uaSwgIDQuIEp1biAyMDAzLCAxMzoyMDozNSk6Cn4jISBybj1BbWF6b3JhIHJ0PTEwNTQ3MjUwNDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0NzE4NTU5CkRpZSBoYWIgaWNoIGphIG5pY2h0bWFsIHNlbGJzdC4uLiBydWZ0IGVyIERpY2ggenUgc2VsdGVuIGFuPwoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEF1Y2ggbWFsIHdlZyAoQW1hem9yYSwgIDQuIEp1biAyMDAzLCAxMzoyNDowNSk6Cn4jISBybj1IdW1uaSBydD0xMDU0NzI1NjM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDcxODU1OQp0amEgbWFlbm5lciEgZGllIHJ1ZmVuIGltbWVyIHp1IHNlbHRlbiBhbiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEF1Y2ggbWFsIHdlZyAoTW9yZ290aCwgIDQuIEp1biAyMDAzLCAxMzozMjozMCk6Cn4jISBybj1BbWF6b3JhIHJ0PTEwNTQ3MjU4NDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0NzE4NTU5CkhleSwgZGFzIHN0aW1tdCBuaWNodCA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEF1Y2ggbWFsIHdlZyAoQW1hem9yYSwgIDQuIEp1biAyMDAzLCAxMzozMjo1NCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNTQ3MjYzNTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0NzE4NTU5CndvaGwgc3RpbW10IGRhcyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOZXVlIEhhcmR3YXJlIChWYW5pb24sICA0LiBKdW4gMjAwMywgMjA6MDE6MjUpOgp+IyEgcm49Tm9ubmUgcnQ9MTA1NDUzOTEwMyByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTA1NDExMjgzMQpEaWUgUEMtUGxheWVyIGdpYnRzIGRvY2ggc2VpdCBKYWhyZW4gbmljaHQgbWVociAuLi4gRHUgYmlzdCBqYSBzb3dhcyB2b24gbmljaHQKYXVmIGRlbSBha3R1ZWxsZW4gU3RhbmQuIEhldXRlIGdpYnRzIGRvY2ggQ29tcHV0ZXJiaWxkIFNwaWVsZS4KClYqLCBkdWNrdCBzaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE5ldWUgSGFyZHdhcmUgKE1vcmdvdGgsICA0LiBKdW4gMjAwMywgMjA6MDI6MDEpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNTQ3NDk2ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0MTEyODMxCipLT1RaKgpJY2ggaGFiIG1hbCBzdXBwb3J0IGZ1ZXIgZGFzIFpldWcgZ2VtYWNodC4uLndhYWFoaGhoIDooCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE5ldWUgSGFyZHdhcmUgKEdyaW1tYm9ybiwgIDQuIEp1biAyMDAzLCAyMToxNTo0OCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNTQ3NDk3MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0MTEyODMxCkphLCB3ZXIgc293YXMgbWFjaHQgbGFlc3N0IHNpY2ggYXVjaCBtaXQgWndlaXRpZXMgZWluLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhIGdyYWQgbmljaHRzIGluIGRlciBNUEEgc3RlaHQuLi4gKFJvbmRhLCAgNS4gSnVuIDIwMDMsIDAxOjE2OjQzKToKLi4uIGRlLmFsdC5uZXRkaWdlc3QuIEx1c3RpZyBhYmVyIG51ciBtaXQgZWluIGJpc3NjaGVuIEFsayBpbnR1cy4uLgoKRnJvbTogQW5kcmVhcyBMb2JpbmdlciA8YW5kcmVhcy5sb2JpbmdlckBuZXRzdXJmLmRlPgpOZXdzZ3JvdXBzOiBkZS5hbHQuc3lzYWRtaW4ucmVjb3ZlcnkKU3ViamVjdDogUmU6IFBmbGFuemVudW5tdXQuLi4KRGF0ZTogTW9uLCAwMiBKdW4gMjAwMyAxMTowMzo0NyArMDIwMAoKQWxvaGEsCgpOaWNvIEhvZmZtYW5uIHNjaHJpZWI6Cj4gRGlldHogUHJvZXBwZXIgZW1wZmllaGx0Ogo+ID4gTWl0IEthZmZlZSBiZWtvbW10IG1hbiBrZWluZSBQZmxhbnplbiB0b3QsIGVzIHNlaSBkZW5uLCBlciBpc3Qgbm9jaCBoZWlzcwo+ID4gb2RlciB3aXJrbGljaCBkZXJiIGdlenVja2VydC4gQWxrb2hvbCB3aXJrdCBkYSBiZXNzZXIsIGZhbGxzIGtlaW4gQmllciB6dXIKPiA+IEhhbmQgdHV0J3MgYXVjaCBlaW4gU2NobHVjayBCcmVubnNwaXJpdHVzLgo+ICJEdSwgdW5zZXJlIFppbW1lcmxpbmRlIGhhdCBlaW5lIEZhaG5lLi4uPyEiCgpVbnNlciBCYXNzaXN0IGhhdCBkZXMgV2ludGVycyBBbGRpLU9ic3RsZXIgaW4gZGVyIEF1dG9zY2hlaWJlbndhc2NoYW5sYWdlLgpJc3QKMS4gR3V0IGdlZ2VuIERlcHJlc3Npb25lbgoyLiBTdXBlciBMdXN0aWcgYmVpIFBvbGl6ZWlrb250cm9sbGVuLgoKRWluZW4gZnJvZWhsaWNoZW4gVGFnIHd1ZW5zY2hlbmQKTE9CSQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uIG9rLiBGbGFjaC4gQWJlciBpY2ggZmluZHMgdHJvdHpkZW0gZ3V0Li4uIChSb25kYSwgIDUuIEp1biAyMDAzLCAwMTo0MjozMCk6Ci4uLiBzY2hsaWVzc2xpY2ggaXN0cyBhdXMgZGUuYWx0Lm5ldGRpZ2VzdDoKCltFaW5yZWljaGVyJ3MgTm90aXo6IE5hY2ggbWVocmVyZW4gV2VuZHVuZ2VuIGdpbmcgZXMgaW0gVGhyZWFkIHBsb2V0emxpY2ggCnVtIGFuZ2VibGljaCBzY2h3dWxlIFBvbGl0aWtlci9RdW90aW5nIGdla3Vlcnp0XQoKRnJvbTogUmVuZSBGdWNocyA8cnVuZm9yY292ZXJAbWVudGhlLmluZm8+Ck5ld3Nncm91cHM6IGRlLnJlYy50di5taXNjClN1YmplY3Q6IFJlOiBSdXNzbGFuZCB3aWxsIEdyYW5kIFByaXggYW5mZWNodGVuCkRhdGU6IFN1biwgMDEgSnVuIDIwMDMgMjI6NTY6NTUgKzAyMDAKTWVzc2FnZS1JRDogPDk0cWtkdnNhbGFscjQ3bHBpaW4ydmRpaGl1ZXNiNWVqcnRANGF4LmNvbT4KClVuZCBKb2hhbm5hIE9zdGVybWFubiA8Sm9oYW5uYUBrYXNwZXJoYXVzZW4uZGU+IGFiZXIgc2NocmllYjoKCj4+RGVyIGhhdCBzaWNoIHNlaW5lbiBIZXRlcm8tU3RhdHVzIGRvY2ggc29nYXIgZ2VyaWNodGxpY2ggImJlc3RhZXRpZ2VuIiAKPj5sYXNzZW4uCj4KPldpZSBnZWh0IGRhcyBkZW5uPwoKTWl0IGRlciBSaWNodGVyaW4gaW4gZGllIEtpc3RlPwoKUmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYWNod3VjaHMtUGhyZWVrIChDcm9mdCwgIDUuIEp1biAyMDAzLCAxMjoxNTowOSk6ClBhcmRhdXogICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhClBhcmRhdXogc2NoZWludCBuYWNoIEhhdXNlIHp1IGdlaGVuLCBhYmVyIER1IHNwdWVyc3QgZXIgaXN0IG5vY2ggZGEuCgpTbyBmYWVuZ3QgZGFzIGFuLi4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5hY2h3dWNocy1QaHJlZWsgKE1hbmRyYWdvbiwgIDUuIEp1biAyMDAzLCAxMjo1ODo1Mik6Cn4jISBybj1Dcm9mdCBydD0xMDU0ODA4MTA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDgwODEwOQoKOnN1bW10ICJJIHNob3QgdGhlIHNoZXJpZmYsIGJ1dCBJIGRpZCBub3Qgc2hvb3QgdGhlIGRlcHV0eSAuLi4iCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSYXNzZW4tQmFsYW5jZSAoVmFyZGlvbiwgIDUuIEp1biAyMDAzLCAyMzowMDoyNCk6Cn4jISBybj1ab29rIHJ0PTEwNTQ4MzU5MzYgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwNTQ4MzU5MzYKV2VsY2hlIEJhbGFuY2UgZGVyIFJhc3Nlbj8gOikKClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmFzc2VuLUJhbGFuY2UgKENyb2Z0LCAgNS4gSnVuIDIwMDMsIDIzOjAyOjE2KToKfiMhIHJuPVZhcmRpb24gcnQ9MTA1NDg0NjgyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQ4MzU5MzYKRGVsZmVuICYgT3JrcyB3b2xsZW4gYXVjaCBiYWxhbmNpZXJ0IHdlcmRlbiAsLSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBSYXNzZW4tQmFsYW5jZSAoTWFuZHJhZ29uLCAgNS4gSnVuIDIwMDMsIDIzOjEyOjUzKToKfiMhIHJuPUNyb2Z0IHJ0PTEwNTQ4NDY5MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0ODM1OTM2CkVzIGxhbmd0LCB3ZW5uIG1hbiBkaWUgZXhpc3RpZXJlbmRlbiBtYWwgQmFsYW5jaWVydCAuLi4KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUmFzc2VuLUJhbGFuY2UgKFZhcmRpb24sICA1LiBKdW4gMjAwMywgMjM6Mjg6NTcpOgp+IyEgcm49Q3JvZnQgcnQ9MTA1NDg0NjkzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQ4MzU5MzYKSWNoIG1laW50ZSBlaGVyLCBkYXNzIGVzIHRvbGwgd2FlcmUsIGVyc3RtYWwgZGllIHZvcmhhbmRlbmVuIFJhc3NlbiB6dQpiYWxhbmNpZXJlbi4uLgoKVmFyZGlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NobWFycm4gb2RlciBuaWNodCBzY2htYXJybi4uLiAoUm9uZGEsICA2LiBKdW4gMjAwMywgMDE6MzI6NDkpOgouLi4gYXVmIGplZGVuIEZhbGwgZGUuYWx0Lm5ldGRpZ2VzdDoKCkZyb206IFdvbGZnYW5nIEtyaWV0c2NoIDx4d29mZmlAZ214LmRlPgpOZXdzZ3JvdXBzOiBkZS5zb2MucmVjaHQubWlzYwpTdWJqZWN0OiBSZTogUmVjaG51bmcgdm9tIEF1Znp1Z3Nub3RkaWVuc3QgLSBtdWVzc2VuIHdpciB6YWhsZW4/Pz8gOigKRGF0ZTogVHVlLCAwMyBKdW4gMjAwMyAyMzozODo1OCArMDIwMApNZXNzYWdlLUlEOiA8YmJqYmlpLjFxZy4xQHVzZW5ldC53b2ZmaS5kZT4KCk9uIFR1ZSwgMDMgSnVuIDIwMDMgMDM6MzA6MTcgKzAyMDAsIEplbnMgRmFuZ21laWVyIHdyb3RlOgo+U29ycnksIGFiZXIgZWluIGdld2lzc2VuIEdlc3VuZGVuIE1lbnNjaGVudmVydHN0YW5kIHNvbGx0ZSBtYW4gd29obAo+SkVERU0gWnV0cmF1ZW4ga29lbm5lbi4KCk5ldSBpbSBVc2VuZXQ/CgoKCgpCeWUKCiAgd29mZmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFJhc3Nlbi1CYWxhbmNlIChab29rLCAgNi4gSnVuIDIwMDMsIDEwOjI3OjM1KToKfiMhIHJuPVZhcmRpb24gcnQ9MTA1NDg0ODUzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQ4MzU5MzYKV2llIGJhbGFuY2llcmVuPyBVbnRlcnNjaGVpZGVuIGRpZSBzaWNoIGV0d2E/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUmFzc2VuLUJhbGFuY2UgKEFudGhlYSwgIDYuIEp1biAyMDAzLCAxMDozNTo1Nyk6Cn4jISBybj1ab29rIHJ0PTEwNTQ4ODgwNTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0ODM1OTM2ClVudGVyc2NoaWVkbGljaGUgUmFzc2VuLCB1bnRlcnNjaGllZGxpY2hlIEdpbGRlbi4uLiBOZXVtb2Rpc2NoZXMgWmV1Y2ghCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBSYXNzZW4tQmFsYW5jZSAoWm9vaywgIDYuIEp1biAyMDAzLCAxMDozODo0NSk6Cn4jISBybj1BbnRoZWEgcnQ9MTA1NDg4ODU1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQ4MzU5MzYKWm9vayBzY2hsYWVndCBBbnRoZWEgbWl0IGVpbmVtIHN0aW5rZW5kZW4gRmlzY2ggYXVmIGRlbiBIaW50ZXJrb3BmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogUmFzc2VuLUJhbGFuY2UgKEFudGhlYSwgIDYuIEp1biAyMDAzLCAxMDozOToyOSk6Cn4jISBybj1ab29rIHJ0PTEwNTQ4ODg3MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0ODM1OTM2CkhleSEgV2FzIG1hY2hzdCBkdSBtaXQgbWVpbmVtIEZpc2Nodm9ycmF0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogUmFzc2VuLUJhbGFuY2UgKEdyaW1tYm9ybiwgIDYuIEp1biAyMDAzLCAxMDo0ODoxOCk6Cn4jISBybj1BbnRoZWEgcnQ9MTA1NDg4ODc2OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQ4MzU5MzYKR2VuYXUsIER1IHNvbGx0ZXN0IHdpc3NlbiBkYXNzIGRlciBwcmluemlwaWVsbCBuaWNodCB2ZXJsaWVoZW4gd2lyZC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBuZXVlbiBLYWVtcGZlciB6TVVEIFNjcmlwdHMgc2luZCBvYmVuIChEYXJrd2luZywgIDcuIEp1biAyMDAzLCAwMDo1MzoxNik6Cn4jISBybj1BbGRlcmFuIHJ0PTEwNTQ5Mzg4Mjkgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTA1NDkzODgyOQoqc3ByYWNobG9zIGd1Y2sqCiJEaWUgWmVpdGVuIHNpbmQga29tcGxldHQgbWl0IFdvcmQgZ2VtYWNodCIgLi4uIGljaCBnbGF1YiB2b3IgZGVyIG5hZWNoc3RlbgpHZW5lcmFscy1HZW5lcmF0aW9uIGJla29tbSBpY2ggbGFuZ3NhbSBBbmdzdCA6LSkKCipkdWgqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYW1pdCBMYWNyaSBuaWNodCBtZWhyIGxhbmd3ZWlsaWcgaXN0OiBkZS5hbHQubmV0ZGlnZXN0Li4uIChSb25kYSwgIDcuIEp1biAyMDAzLCAwMToxMTowNCk6CkZyb206ICBGbG9yaWFuIEd1bGRlIDxGLTdAZ214Lm5ldD4KTmV3c2dyb3VwczogIGRlLmFsdC5mYW4ua29uc3VtdGVycm9yClN1YmplY3Q6IFJlOiBJaHJlIFdhc2NobWFzY2hpbmUgbXVzcyBpY2ggbGVpZGVyIG1pdG5laG1lbi4uLi4uCk1lc3NhZ2UtSUQ6IDxiYm9hMHUuM3Z2Ym1mci4xQGY3ZXZlbi5kZT4KRGF0ZTogVGh1LCA1IEp1biAyMDAzIDIwOjQ1OjQzICswMjAwCgpFcmljICdFVy1UZWNoJyBXaWNrIDxldy10ZWNoQHNwYW1jb3AubmV0PiBzY2hyaWViOgoKPiBOdW4gaGFiZSBpY2ggcGFydG91dCBuaWNodCBnZXNjaGF1dCBvYiBkaWUgYXVjaCBub2NoIFNhbmRhbGVuIG9kZXIKPiB3ZW5pZ3N0ZW5zIFNpY2hlcmhlaXRzc2NodWhlIGFuaGFiZW4sIG1hbCBnZW5hdWVyIGhpbnNlaGVuOikKClp1ICJTYW5kYWxlbiBzdGF0dCBTaWNoZXJoZWl0c2NodWhlIiBmYWVsbHQgbWlyIGdlcmFkZSBlaW5lIG5ldHRlIEdlc2NoaWNodGUKZWluOiBFbGVrdHJpa2VyIHN0ZWh0IGF1ZiBlaW5lciBMZWl0ZXIsIGZ1ZWhydCBpcmdlbmR3ZWxjaGUgQXJiZWl0ZW4gYXVzIHVuZApiZW1lcmt0IGRhcyBlciBlaW5lbiBTdGVpbiBpbiBzZWluZXIgU2FuZGFsZSBoYXQuIEFsc28gdmVyc3VjaHQgZXIgZGVuIApTdGVpbiBhdXMgZGVtIFNjaHVoIHp1IFNjaHVldHRlbG4uIEVpbiBhbmRlcmVyIEFyYmVpdGVyIHNpZWh0IGRlbiBFbGVrdHJpa2VyCnNvIGtvbWlzY2ggenVja2VuZCBhdWYgZGVyIExlaXRlciBzdGVoZW4sIGRlbmt0IGVyIGhhZW5ndCBhbiBkZXIgRS1MZWl0dW5nIAp1bmQgdHJpdHQgZGllIExlaXRlciB3ZWcuLi4KCm1mRyBGbG9yaWFuLCBkZW0gZ3JhZCBuaWNodHMgZnVlciBkaWUgT24tVG9waWMtS3VydmUgZWluZ2ZhZWxsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFJhc3Nlbi1CYWxhbmNlIChNdWFkaWIsICA3LiBKdW4gMjAwMywgMTQ6NDM6MTQpOgp+IyEgcm49VmFyZGlvbiBydD0xMDU0ODQ4NTM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDgzNTkzNgpobW0gaWNoIGRhY2h0ZSBiaXNoZXIgbWFuIGthbm4ga2VpbmUgYW5kZXJlbiBzcGllbGVyIGVpbmZhY2ggc28gbmVobWVuLApnZXNjaHdlaWdlIGRlbm4gYmFsYW5jaWVyZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFJhc3Nlbi1CYWxhbmNlIChNb250YW51cywgIDcuIEp1biAyMDAzLCAxNDo1ODo0Nyk6Cn4jISBybj1NdWFkaWIgcnQ9MTA1NDk4OTc5NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQ4MzU5MzYKSXJnZW5kd2llIGlzdCBlcyBkb2NoIGVpbiBTa2FuZGFsLCBkYXNzIGluendpc2NoZW4gU2NyaXB0ZSBnYW56IG9lZmZlbnRsaWNoIGluCmRlciBtcGEgYW5nZWJvdGVuIHVuZCB2ZXJ0cmllYmVuIHdlcmRlbi4gRGFzIGhhZXR0ZSBlcyBmcnVlaGVyIGluIGRlciBndXRlbgphbHRlbiBaZWl0IHVudGVyIGRlbiBzY2hhcmZlbiBTaGVyaWZmcyBuaWNodCBnZWdlYmVuLgoyNC83LVBocmVhaywgZHUgYmlzdHp1IHdlaWNoIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUmFzc2VuLUJhbGFuY2UgKEJvaW5nLCAgNy4gSnVuIDIwMDMsIDE0OjU5OjQ2KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNTQ5OTA3Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0ODM1OTM2CkVyc3RlbnMgc2NocmVpYnN0IER1IGluIGRlciBmYWxzY2hlbiBSdWJyaWsgdW5kIHp3ZWl0ZW5zIGlzdCBiZWF1ZnNpY2h0aWd0ZXMKU2NyaXB0ZW4gc2Nob24gc2VpdCBKYWhyZW4gZXJsYXVidCAuLi4gQWxzbyBob3BwLCB6dXJ1ZWNrIG5hY2gKbWVnYXNjaG1hcnJuIHVuZCBSZWhlIHByb2R1emllcmVuIC4uLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBSYXNzZW4tQmFsYW5jZSAoTW9udGFudXMsICA3LiBKdW4gMjAwMywgMTU6MDA6NDkpOgp+IyEgcm49Qm9pbmcgcnQ9MTA1NDk5MDc4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQ4MzU5MzYKRGFubiBzaW5kIGRpZSBTaGVyaWZmcyBzY2hvbiBzZWl0IEphaHJlbiB6dSB3ZWljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFJhc3Nlbi1CYWxhbmNlIChDcm9mdCwgIDcuIEp1biAyMDAzLCAxNTowMTo1Nyk6Cn4jISBybj1Cb2luZyBydD0xMDU0OTkwNzg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDgzNTkzNgpTbyBvZGVyIHNvIGltIGZhbHNjaGVuIFRocmVhZCB3dWVyZCBpY2ggc2FnZW4uICBXYXMgaGF0IFNwaWVsZXIgYmFsYW5jaWVyZW4KbWl0IFNrcmlwdGVuIHp1IHR1bj8gCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGllIG5ldWVuIEthZW1wZmVyIHpNVUQgU2NyaXB0cyBzaW5kIG9iZW4gKE1vbnRhbnVzLCAgNy4gSnVuIDIwMDMsIDE1OjAzOjQ0KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNTQ5ODc0MTcgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTA1NDkzODgyOQpTbywgZGFtaXQgQ3JvZnQgbml4IG1laHIgenVtIFdlaW5lbiBoYXQsIGRlciByaWNodGlnZSBUaHJlYWQuClVuZCBTcGllbGVyIGJhbGFuY2llcmVuIGhhdCB2aWVsIG1pdCBTY3JpcHRlbiB6dSB0dW4uIFdlbm4gU2NyaXB0ZW4gd2VpdGVyaGluCnZlcmJvdGVuIHdhZXJlLCB3dWVyZGVuIHNvIHZpZWxlIFNwaWVsZXIgZ2Vsb2VzY2h0LCBkYXNzIHdpciBrZWluZQpTZWhlcnNjaHdlbW1lIGhhZXR0ZW4sIGtlaW5lIFJ1ZXN0dW5nc3NwaXJhbGUsIGtlaW5lIE5vdHdlbmRpZ2tlaXQgZnVlcgpSYXNzZW5iYWxhbmNlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRGllIG5ldWVuIEthZW1wZmVyIHpNVUQgU2NyaXB0cyBzaW5kIG9iZW4gKEZvb2JhciwgIDcuIEp1biAyMDAzLCAxNTowNTowNCk6Cn4jISBybj1Nb250YW51cyBydD0xMDU0OTkxMDI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDkzODgyOQpVbmQgYmFsZCBrZWluIE11ZCBtZWhyLgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEaWUgbmV1ZW4gS2FlbXBmZXIgek1VRCBTY3JpcHRzIHNpbmQgb2JlbiAoTW9udGFudXMsICA3LiBKdW4gMjAwMywgMTU6MDY6MTQpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNTQ5OTExMDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0OTM4ODI5Ck9oLCB3aWUgc2NocmVja2xpY2guCldpZSBoYWJlbiB3aXIgZGFzIGRhbWFscyBibG9zcyBhdXNnZWhhbHRlbiBvaG5lIHRmIHVuZCBtaXQgYmxvc3NlbSB0ZWxuZXQgYXVmCjlrLUxlaXR1bmdlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IERpZSBuZXVlbiBLYWVtcGZlciB6TVVEIFNjcmlwdHMgc2luZCBvYmVuIChGb29iYXIsICA3LiBKdW4gMjAwMywgMTU6MDk6MTcpOgp+IyEgcm49TW9udGFudXMgcnQ9MTA1NDk5MTE3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTQ5Mzg4MjkKQWNoIGphLCBkaWUgZ3V0ZSwgYWx0ZSBaZWl0LgoKU2Nob24gZGFtYWxzIHdhcmVuIGdyYWZpc2NoZSBNTU9SUEcgYSBsYSBEaWFibG8gSUksIFVsdGltYSwgRXZlcnF1ZXN0IHVzdy4Ka2VpbmUgS29ua3VycmVueiBmdWVyIGhlcmtvZW1tbGljaGUgTVVEcy4KCldhcnVtIGJsb3NzLi4uPwoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWdpZXIuLi4gKFdoaXRldGlnZXIsICA3LiBKdW4gMjAwMywgMTU6MTA6MjkpOgpNdXBmZWwgd2F0ZXQgbmFjaCBIYXVzZS4KTXVwZmVsICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkR1IHRlaWxzdCBNdXBmZWwgbWl0OiBkdSB3YXJzdCBpbnZpcz8hCk11cGZlbCBzYWd0OiB3YXM/CgoKQWxzbyB3aXJrbGljaC4gO28pCldoaXRlVGlnZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXRkaWdpc3QgKERlZXBibHVlLCAgOC4gSnVuIDIwMDMsIDE4OjU1OjM3KToKRnJvbTogSGF1a2UgSGVpZHRtYW5uIDxoYXVrZWhlaWR0bWFubkBnbXgubmV0PgpNZXNzYWdlLUlEOiA8ODdsbHdnbDMzdi5mc2ZAb2JyaWVuLmJsb2VkZS11cmwuZGU+CkRhdGU6IFRodSwgMDUgSnVuIDIwMDMgMjE6NDY6MTIgKzAyMDAKTmV3c2dyb3VwczogZGUuYWx0LnN5c2FkbWluLnJlY292ZXJ5CgpNYXR0aGlhcyBLYWJlbCA8bWF0dGhpYXNAdHljaGUuZGU+IHdyaXRlczoKCj4gTWFyayBOZWlzIDx1c2VuZXRAbmVpc21hcmsuZGU+IHdyaXRlczoKPiAKPj4gQW5kcmVhcyBCb2drIHdyb3RlOgo+PiAKPj4gPk5hamEsIGh1ZWJzY2ggYW56dXNlaGVuIHNpbmQgc2llIGphIHNjaG9uLiBBbGxlcmRpbmdzIGxhZWNoZWxuIGVpbmVuIGluCj4+ID5BbXN0ZXJkYW0gYW0gVGFnIG1laHIgZ3V0IGF1c3NlaGVuZGUgRnJhdWVuIGF1ZiBkZXIgU3RyYXNzZSBhbiwgYWxzIGluCj4+ID5CZXJsaW4gaW0gZ2FuemVuIE1vbmF0LiBTb3p1c2FnZW4ga2VpbmUgb3B0aW1hbGVuIEJlZGluZ3VuZ2VuIGhpZXIuCj4+IAo+PiBEYXMgbXVzcyBpcmdlbmR3aWUgYW4gZGVtIExhbmQgbGllZ2VuLiBFaW4gcGFhciBTb21tZXJzYW1zdGFnYWJlbmRlIGluCj4+IE1hYXN0cmljaHQgaGFiZW4gYmVpIG1pciBkZW4gVmVyZGFjaHQgYXVma29tbWVuIGxhc3NlbiwgZGFzcyBkaWUKPj4gSG9sbGFlbmRlciBkaWUgRnJhdWVuIG1pdCBkZW4gQnJpdGVuIGdldGF1c2NodCBoYWJlbi4gRGllIEhvbGxhZW5kZXIKPj4gYmVrYW1lbiBhbGxlIGh1ZWJzY2hlbi4uLgo+IAo+IERhcyBpc3QgYWJlciBzY2hvbiBsYWVuZ2VyIGhlciwgZW5nbGlzY2hlIEt1ZWNoZSB1bmQgZW5nbGlzY2hlIEZyYXVlbgo+IHNpbmQgZGVyIEdydW5kc3RlaW4gZnVlciBlaW5lIGdyb3NzZSBTZWVmYWhyZXJuYXRpb24uCgpEdSBtZWluc3QsIGRpZSBoYWJlbiBCb290ZSBnZWJhdXQsIHVtIGFiaGF1ZW4genUga29lbm5lbj8gRGllIFRoZW9yaWUKZ2VmYWVsbHQgbWlyLi4uCgpIYXVrZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ldGRpZ2lzdCAoRWxpemFiZXRoLCAgOC4gSnVuIDIwMDMsIDIwOjM3OjAyKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwNTUwOTEzMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1MDkxMzM3CmhleS4uZGVuIGFuZHJlYXMgYm9nayBrZW5uIGljaCA4KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBuZXRkaWdpc3QgKERlZXBibHVlLCAgOC4gSnVuIDIwMDMsIDIwOjQ3OjI1KToKfiMhIHJuPUVsaXphYmV0aCBydD0xMDU1MDk3NDIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTA5MTMzNwpCaXN0IGR1IGRhcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IG5ldGRpZ2lzdCAoRWxpemFiZXRoLCAgOC4gSnVuIDIwMDMsIDIwOjQ3OjQzKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwNTUwOTgwNDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1MDkxMzM3CnNlaCBpY2ggYXVzIHdpZSBlaW4gJ2FuZHJlYXMnPwogbm9lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRGllIG5ldWVuIEthZW1wZmVyIHpNVUQgU2NyaXB0cyBzaW5kIG9iZW4gKEdub21lLCAgOS4gSnVuIDIwMDMsIDAzOjI3OjQ5KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNTQ5OTExNzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0OTM4ODI5CmdhciBuaWNodD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IERpZSBuZXVlbiBLYWVtcGZlciB6TVVEIFNjcmlwdHMgc2luZCBvYmVuIChNb250YW51cywgIDkuIEp1biAyMDAzLCAwODowNToxMCk6Cn4jISBybj1Hbm9tZSBydD0xMDU1MTIyMDY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDkzODgyOQpuYXR1ZXJsaWNoIGhhYmVuIHdpciBkYXMgYXVzZ2VoYWx0ZW4uCldpciBzaW5kIGphIGtlaW5lIEphbW1lcmVyIHdpZSBLYWVtcGZlciwgS2F0emVua3JpZWdlciBvZGVyIEtsaW1iaW1zLgpBY2hqYSwgaWNoIGthbm5zIHNjaG9ubWFsIGFua3VlbmRpZ2VuLiBJbiBkZXIgS0dHIHdpcmQgSmFtbWVydmVyYm90IGhlcnJzY2hlbi4KV2VyIGphbW1lcnQsIGJla29tbXQgZGFzIEhhbmRpY2FwIGhvY2hnZXNldHp0LiBCYXN0YS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IERpZSBuZXVlbiBLYWVtcGZlciB6TVVEIFNjcmlwdHMgc2luZCBvYmVuIChEZWVwYmx1ZSwgIDkuIEp1biAyMDAzLCAyMDoyOToxMyk6Cn4jISBybj1Nb250YW51cyBydD0xMDU1MTM4NzEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDkzODgyOQpIb2hlcyBIYW5keWNhcCBoZWlzc3QgZG9jaCwgZGFzcyBtYW4gIlZvcnNwcnVuZyIgYmVrb21tdC4gQWxzbyBhbSBFbmRlIG5lCkF1ZndlcnR1bmcuIFdhcyB3aXJkIGRhcyBmdWVyIGVpbiBnZWphbW1lciBnZWJlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IERpZSBuZXVlbiBLYWVtcGZlciB6TVVEIFNjcmlwdHMgc2luZCBvYmVuIChNb250YW51cywgMTAuIEp1biAyMDAzLCAwNjo0ODozOCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDU1MTgzMzUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NDkzODgyOQpOZWluLCBob2hlcyBIYW5keWNhcCBiZWRldXRldCwgZGFzcyBtYW4gbmljaHQgYXVmIGFsbGVuIFBsYWV0emVuIHNwaWVsZW4gZGFyZi4KV2VyIGRlbiBQbGF0enN0YW5kYXJkIG5pY2h0IHNjaGFmZnQsIGJsZWlidCBhdXNzZW4gdm9yLgpEYXNzIGRpZSBLR0cgZWxpdGFlciB3aXJkLCBzb2xsdGUgZG9jaCBrbGFyIHNlaW4uIFdlciBuaWNodCBoYXJ0IGdlbnVnIGlzdCwKbXVzcyB3aWVkZXIgQ2hhb3Qgd2VyZGVuLCBvZGVyIEphbW1lcmthZW1wZmVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0YVRpIGluIEIgKFpvb2ssIDEwLiBKdW4gMjAwMywgMTA6NTc6NTIpOgp+IyEgb249Wm9vayBvdD0xMDU1MjM1NDYwIG9nPXRyZWZmZW4KfiMhIHJuPUdub21lIHJ0PTEwNTQ5ODA1OTkgcmc9dHJlZmZlbgp+IyEgdGlkPTEwNTQ5ODA1OTkKSWNoIGJpdHRlIG1hbCB1bSBCZXJpY2h0LCBvYiBkZXIgZGFubiBhdWNoIHN0dW5kZW5sYW5nIGR1cmNoIEJlcmxpbiAKZ2VqYWd0IHdpcmQsIGJpcyBlciBkZW4gU3RhdGktT3J0IGVycmVpY2h0LgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3RhVGkgaW4gQiAoTWFoYXJldCwgMTAuIEp1biAyMDAzLCAxNjoyMzoxOCk6Cn4jISBybj1ab29rIHJ0PTEwNTUyMzU0NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0OTgwNTk5CkplZGVuZmFsbHMgbXVzcyBlciBhdWNoIGFuIGRpZXNlbiBhYmdlbGVnZW5lbiBPcnQgbWl0IGRlbSBiaWxsaWdlbiBCaWVyCmZsaWVnZW4uIE51ciBkaWUgUmVzdG1ldGVyIHdlcmRlIGljaCBpaG4gYWJlciBqYWdlbiwgZGVuIFdlZyB2b3JoZXIgZGFyZiBlcgpzZWxic3Qgc3VjaGVuLgoKTWFoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3RhVGkgaW4gQiAoWm9vaywgMTAuIEp1biAyMDAzLCAxNzozOToyMCk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwNTUyNTQ5OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDU0OTgwNTk5Ck9rLCBnbGVpY2hlcyBSZWNodCBmdWVyIGFsbGUhIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RhdHQgZGUuYWx0Lm5ldGRpZ2VzdC4gKFJvbmRhLCAxMC4gSnVuIDIwMDMsIDIyOjAwOjM1KToKR2VrbGF1dCB2b24gaHR0cDovL3d3dy50bWsuY29tL2Z0cC9odW1vci94ZXJveC1wb3Bjb3JuLnR4dC4uLgoKVGhpcyBnZXRzIG15IHZvdGUgYXMgdGhlIGJlc3QgdXNlIG9mIGZvb2QgdG8gcmVwYWlyIGEgcHJpbnRlcjoKCiAgIFJQSSB1c2VzIHR3byBYZXJveCA4NzkwIGxhc2VyIHByaW50ZXJzIHRvIGhhbmRsZSBoaWdoIHZvbHVtZSBvdXRwdXQuIE9uZQp1c3VhbGx5IGlzIGZpbGxlZCB3aXRoIHRocmVlLWhvbGUgcGFwZXIsIHRoZSBvdGhlciBoYXMgc3RhbmRhcmQgcGFwZXIuIFRvZGF5LAp3aGVuIEkgd2VudCBpbiB0byB3b3JrLCB0aGUgMy1ob2xlIHByaW50ZXIgd2FzIG1ha2luZyBhIHZlcnkgbG91ZCwgdmVyeSBsb3cKcnVtYmxlIHRoYXQgd2FzIHNoYWtpbmcgZXZlcnl0aGluZyBuZWFyIHRoZSBwcmludGVyLiBUaGUgb3BlcmF0b3Igc2FpZCB0aGF0CnNvbWV0aGluZyB3YXMgd3Jvbmcgd2l0aCB0aGUgYmxvd2VyIG1vdG9yLCBhbmQgdGhhdCBYZXJveCBoYWQgYmVlbiBjYWxsZWQuClNob3J0bHkgdGhlcmVhZnRlciwgYSByZXBhaXJtYW4gc2hvd2VkIHVwLCBidXQgbm90IHRvIGZpeCB0aGUgcHJpbnRlci4gSXQKc2VlbXMKdGhhdCBhIHByb2dyYW1tZXIgaGFkIGNhbGxlZCBYZXJveCBiZWNhdXNlIGhlIHdhcyB1bmhhcHB5IHdpdGggaGlzIHByaW50b3V0cy4KU28gdGhpcyByZXBhaXJtYW4gd2VudCB0byB3b3JrIG9uIHRoZSBzb2Z0d2FyZS4gQSBmZXcgbWludXRlcyBsYXRlciwgYW5vdGhlciAgCnJlcGFpcm1hbiBzaG93ZWQgdXAsIHRoaXMgdGltZSB0byBmaXggdGhlIHByaW50ZXIuIEhlIGhlYXJkIGl0IHJ1bm5pbmcsIGFuZAphc2tlZCBpZiB0aGUgbm9pc2UgaGUgaGVhcmQgd2FzIHRoZSBwcm9ibGVtLiBXaGVuIHdlIHNhaWQgeWVzLCBoZSB0dXJuZWQgdG8KdGhlCmZpcnN0IHJlcGFpcm1hbiBhbmQgYXNrZWQsICJEaWQgeW91IGJyaW5nIHRoZSBwb3Bjb3JuPyIKICAKICBQb3Bjb3JuPwoKICAgSGUgdGhlbiBwdXQgaGlzIGphY2tldCBiYWNrIG9uIGFuZCB3ZW50IG91dCwgc2F5aW5nIGhlIGhhZCB0byBnbyBiYWNrIHRvCmhpcwpjYXIgdG8gZ2V0IGhpcyBwb3Bjb3JuLiBBbmQgc3VyZSBlbm91Z2gsIGhlIGNhbWUgYmFjayB3aXRoIGEgamFyIG9mIGl0LgpHb3VybWV0CnBvcGNvcm4gYXQgdGhhdC4gSGUgd2VudCB0byB3b3JrLCBjbGVhbmVkIGEgZmV3IHRoaW5ncywgdGhlbiBjYWxtbHkgcG91cmVkIApzb21lIHBvcGNvcm4gaW50byB0aGUgYmxvd2VyIGR1Y3QuIEhlIHR1cm5lZCB0byBtZSBhbmQgc2FpZCwgInlvdSdyZSBnb2luZyB0bwpoZWFyIGEgbG91ZCBub2lzZS4gRG9uJ3QgYmUgY29uY2VybmVkIGFib3V0IGl0LiIgSGUgdGhlbiB0dXJuZWQgdGhlIHByaW50ZXIKb24sCnNlbmRpbmcgcG9wY29ybiB0aHJvdWdoIHRoZSBibG93ZXIsIGFuZCB5ZXMsIGl0IGRpZCBtYWtlIGEgdmVyeSBsb3VkIG5vaXNlLiBIZQpkaWQgaXQgYSBzZWNvbmQgdGltZSwgd2hpbGUgY29tbWVudGluZyBvbiB0aGUgcHJpY2Ugb2YgdGhlIHBvcGNvcm4uCgogICBTdXJlIGVub3VnaCwgdGhlIHJ1bWJsZSBkaXNhcHBlYXJlZC4gSGUgc2FpZCB0aGF0IHRoZSBvbmx5IG90aGVyIGZpeCB3YXMKdG8KdGFrZSBvdXQgYW5kIHJlcGxhY2UgdGhlIGJsb3dlciwgd2hpY2ggd291bGQgdGFrZSBoYWxmIGEgZGF5IGFuZCBiZSB2ZXJ5LCB2ZXJ5CmV4cGVuc2l2ZS4gVHVybnMgb3V0LCB0aGUgcHJvYmxlbSBpcyBjYXVzZWQgYnkgdG9uZXIgb24gdGhlIGJsb3dlciBibGFkZXMuCgogICBOb3csIHdoYXQgaGFwcGVucyB3aGVuIHRoZSBwcmludGVyIHJ1bnMgZm9yIGEgd2hpbGUgYW5kIGhlYXRzIHVwPyBQT1AhISEhIQoKICAgV29uZGVyIGlmIHRoYXQgd2lsbCBxdWlldCBteSBQUy8yPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KQW50aG9ueSBQcmF0dGljbywgcHJhdHRhQHJwaS5lZHUKU2hhbGwgSSBtZWx0IHNvbWUgYnV0dGVyIGZvciB0aGUgZGlzayBkcml2ZXM/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBQaXNzb2lyIChWYW5pb24sIDExLiBKdW4gMjAwMywgMDc6MzM6NDIpOgp+IyEgb249VmFuaW9uIG90PTEwNTUzMDk2MDggb2c9d2l0emUKfiMhIHJuPVJvbmRhIHJ0PTEwNTUyODA3NzAgcmc9d2l0emUKfiMhIHRpZD0xMDU1MjgwMTY0CkluIG1laW5lbSBIb21lbXVkIGZpbmRlc3QgRHUgU2NodXR6LgoKT2IgZGEgdmllbCBsb3MgaXMgYXVmIGRlbSBGYmFuZCB3YWcgaWNoIGFiZXIgenUgYmV6d2VpZmVsbi4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUb2xsZSBOYXNlISAoWm9vaywgMTEuIEp1biAyMDAzLCAxNToxNDozMik6ClZhcmRpb24gbXVzcyBub2NoIGVpbm1hbCBsYXV0IG5pZXNlbiB1bmQgbm9jaCBlaW5tYWwgc2VpbmUgTmFzZSBob2NoemllaGVuLgpLTkFDSy4uLiBXYXMgd2FyIGRhcz8KCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTXVlbGwuIChMYW5qYSwgMTIuIEp1biAyMDAzLCAwMjoyNTowNyk6Ck11YWRpYiBzYWd0OiBpZGxlIHNhZWNrZQpNdWFkaWIgc2FndDogaGkKTXVhZGliIGhhdCBqZXR6dCBTdHVmZSA3MiBlcnJlaWNodC4KTXVhZGliIHdpbmt0LgpNdWFkaWIgdmVyc2Nod2luZGV0LgpEdSB3aW5rc3QgTXVhZGliIGF1cyBkZXIgRmVybmUgenUuCkR1IHRlaWxzdCBNdWFkaWIgbWl0OiB3YXJzdCBmb3JzY2hlbj8KTXVhZGliIHRlaWx0IERpciBtaXQ6IHdpZSBibG9lZCA6KQpEdSB0ZWlsc3QgTXVhZGliIG1pdDogd2FzIGlzdCBibG9lZD8KTXVhZGliIHRlaWx0IERpciBtaXQ6IHNvd2FzIGFlaG1saWNoZXMgd2llIGR1bW0KRHUgdGVpbHN0IE11YWRpYiBtaXQ6IGFoLCBpY2ggZ2xhdWIgZGFzIHdvcnQga2FubiBpY2ggc2Nob24KTXVhZGliIHRlaWx0IERpciBtaXQ6IGhtbW0KRHUgdGVpbHN0IE11YWRpYiBtaXQ6IGRhcyBrYW5uIHNvbGx0ZSBlaW4ga2VubiBzZWluCk11YWRpYiB0ZWlsdCBEaXIgbWl0OiBzY2hvbiBrbGFyCk11YWRpYiB0ZWlsdCBEaXIgbWl0OiBwb3N0ZSBkYXMgYmxvc3MgbmljaHQgaW4gZGllIG1wYQpEdSB0ZWlsc3QgTXVhZGliIG1pdDogc2Nob2VuLCBkYSBkdSBkYXMgZ3JhZGUgamEgYXVjaCBzbyBmYWxzY2h3b2VydGxpY2gKRHUgdGVpbHN0IE11YWRpYiBtaXQ6IG5haG1zdCwgd2FyIGljaCBtaXIgZGEgbmljaHQgc2ljaGVyCk11YWRpYiB0ZWlsdCBEaXIgbWl0OiBkZXIgZGlhbG9nIGlzdCBlaW5mYWNoIHp1IGdhZ2EKRHUgdGVpbHN0IE11YWRpYiBtaXQ6IHdhcz8gZGFzcyBkdSBtaXIgZXJrbGFlcnN0LCB3YXMgYmxvZWQgaXN0PwpNdWFkaWIgdGVpbHQgRGlyIG1pdDogaWNoIGdlaCBpbnMgYmV0dApEdSB0ZWlsc3QgTXVhZGliIG1pdDogc2NobGFmIGd1dCwgb2RlciBsYXNzIGVzIGJsZWliZW4sIHdpZXMgZGlyIGJlbGllYnQgOikKTXVhZGliIG5pY2t0IERpciB2b20gZm9yc2NlbiBiaXMgenVyIGVya2xhZXJ1bmcgdm9uIGJsb2VkLiBkYXMgZ2VzYW10cGFrZXQgYXVzCmRlciBGZXJuZSB6dS4KTXVhZGliIG5pY2t0IERpciBhdXMgZGVyIEZlcm5lIHp1LgoKTGFuamEuCgpQUzogSWNoIGhvZmZlLCBpY2ggaGFiIGRpZSBBdWZmb3JkZXJ1bmcgbWl0IGRlciBNUEEgcmljaHRpZyBpbnRlcnByZXRpZXJ0Li4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOYSBzdXBlci4gKFpvb2ssIDEyLiBKdW4gMjAwMywgMDk6NDg6MzcpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNTU0MDM5ODcgcmc9Z2VqYW1tZXIKfiMhIHRpZD0xMDU1NDAzOTg3CkFldHplbmQsIGRpZXNlcyBHZWphbW1lcmUuLi4uIGljaCBnbGF1YiwgaWNoIGJlc3RlbGwgZGllIFJ1YnJpayBhYi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5hIHN1cGVyLiAoQ3JvZnQsIDEyLiBKdW4gMjAwMywgMTA6NTQ6NTkpOgp+IyEgcm49Wm9vayBydD0xMDU1NDA0MTE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTQwMzk4NwpDYXR0eSBzb2xsdGUgbGllYmVyIGluIE1lZ2FzY2htYXJybiBwb3N0ZW4sIGFuc3RhdHQgZmFlbHNjaGxpY2hlcndlaXNlCmluZm9ybWF0aXZlIEFydGlrZWwgenUgdmVybGVnZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmEgc3VwZXIuIChab29rLCAxMi4gSnVuIDIwMDMsIDEwOjU1OjM2KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNTU0MDgwOTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDAzOTg3CkVyIGlzdCBlYmVuIGVpbiB3ZW5pZyBhdXMgZGVyIFVlYnVuZywgQ3JvZnQuCgpab29rIGJhc3RlbHQgYW4gZGVuIE1QQS1SZWNodGVuIGhlcnVtLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmEgc3VwZXIuIChFbGJlcmV0LCAxMi4gSnVuIDIwMDMsIDEwOjU1OjQ4KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNTU0MDgwOTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDAzOTg3Cm1lcmtvc2ggaGFldHRlIGRhcyB2aWVsbGVpY2h0IGJlc3NlciBpbiBtZWdhc2NobWFycm4gZ2VvcG9zdGV0IDspCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOYSBzdXBlci4gKENyb2Z0LCAxMi4gSnVuIDIwMDMsIDEwOjU2OjI2KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA1NTQwODE0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0MDM5ODcKRGFzIE1lZ2FzY2htYXJybi1MZXNlciBtZWhyIHdpc3NlbiwgbXVzcyBuaWNodCBub2NoIHdlaXRlciBhdXNnZWJhdXQgd2VyZGVuLgpEYXMgaXN0IGVpbmZhY2ggc28gLC0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmEgc3VwZXIuIChFbGJlcmV0LCAxMi4gSnVuIDIwMDMsIDEwOjU3OjEyKToKfiMhIHJuPUNyb2Z0IHJ0PTEwNTU0MDgxODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDAzOTg3Cmdld29sbHRlIGRpc2t1c3Npb25lbiBnZWhvZXJlbiBkb2NoIG5hY2ggbWVnYXNjaG1hcnJuLCBvZGVyPyBiZXNvbmRlcnMgd2VsY2hlCm1pdCBnZWhldWxlIHVuZCBnZWphbW1lciB1bmQgdmllbCBzY2hpbXBmZW4KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5hIHN1cGVyLiAoWm9vaywgMTIuIEp1biAyMDAzLCAxMDo1Nzo1MCk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwNTU0MDgyMzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDAzOTg3ClNjaGltcGZlbiBoYXR0ZW4gd2lyIHNjaG9uIGxhbmdlIG5pY2h0IG1laHIuCgpab29rIHNldWZ6dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE5hIHN1cGVyLiAoSHVtbmksIDEyLiBKdW4gMjAwMywgMTA6NTg6MjQpOgp+IyEgcm49Wm9vayBydD0xMDU1NDA4MjcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTQwMzk4NwpJY2ggZnJhZyBtaWNoIGRlcnplaXQgYXVjaCB3YXMgbG9zIGlzdC4uIGljaCBkZXN0cnVjdGUgb2JqZWt0ZSB1bmQgbWFjaAphbmRlcmVuIEtyYW0gdW5kIG5pZW1hbmQgaW50ZXJlc3NpZXJ0cy4gTGFuZ3NhbSBtYWNoIGljaCBtaXIgc29yZ2VuLi4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTmEgc3VwZXIuIChFbGJlcmV0LCAxMi4gSnVuIDIwMDMsIDEwOjU5OjA0KToKfiMhIHJuPUh1bW5pIHJ0PTEwNTU0MDgzMDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDAzOTg3Cm1hY2h0IGRhbm4ga2VpbmVuIHNwYXNzLCB3ZW5uIGtlaW5lciBzY2hpbXBmdCwgb2Rlcj8gOikKCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5hIHN1cGVyLiAoQ2F0d2VhemxlLCAxMi4gSnVuIDIwMDMsIDEwOjU5OjEwKToKfiMhIHJuPUNyb2Z0IHJ0PTEwNTU0MDgwOTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDAzOTg3CkhtcGguCgpEZXIgQXJ0aWtlbCBzY2hyaWUgamEgZGFuYWNoLCBkYSBncmVpZmVuIGJlaSBtaXIgUmVmbGV4ZSA6LSkKCk9rb2ssIGljaCBoYWJzIHZlcmJvY2t0LCBhYmVyIHp1cnVlY2trb3BpZXJlbiBpc3QgamV0enQgYXVjaCBuaWNodCBtZWhyIDopCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5hIHN1cGVyLiAoWm9vaywgMTIuIEp1biAyMDAzLCAxMTowMDoxNyk6Cn4jISBybj1IdW1uaSBydD0xMDU1NDA4MzA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTQwMzk4NwpMb2VzY2ggd2lsbGt1ZXJsaWNoIFNwaWVsZXIsIGRhcyBicmluZ3QgbWVoci4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBOYSBzdXBlci4gKEVsYmVyZXQsIDEyLiBKdW4gMjAwMywgMTE6MDE6MDgpOgp+IyEgcm49Wm9vayBydD0xMDU1NDA4NDE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTQwMzk4NwpoaWVyICptZWxkIDopCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTmEgc3VwZXIuIChab29rLCAxMi4gSnVuIDIwMDMsIDExOjAxOjQwKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA1NTQwODQ2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0MDM5ODcKSWNoIGxvZXNjaGUgbnVyIGJlZ3J1ZW5kZXQgdW5kIHZvZWxsaWcgd2lsbGt1ZXJmcmVpLiBLb2VubmVuIERpciBkaWUgCkJldHJvZmZlbmVuIGdlcm5lIGJlc3RhZXRpZ2VuLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBOYSBzdXBlci4gKEVsYmVyZXQsIDEyLiBKdW4gMjAwMywgMTE6MDI6MzApOgp+IyEgcm49Wm9vayBydD0xMDU1NDA4NTAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTQwMzk4NwptaXQgQW50cmFnIHVuZCBHZW5laG1pZ3VuZ3N2ZXJmYWhyZW4/IDspCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTmEgc3VwZXIuIChab29rLCAxMi4gSnVuIDIwMDMsIDExOjAyOjU0KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA1NTQwODU1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0MDM5ODcKRGFydWViZXIga2FubiBpY2ggRGlyIGtlaW5lIEF1c2t1bmZ0IGdlYmVuLiBWaWVsbGVpY2h0IGtsYWVydCBEaWNoIGFiZXIKdW5zZXIgMjQvNy1QaHJlYWsgYXVmLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBOYSBzdXBlci4gKFpvb2ssIDEyLiBKdW4gMjAwMywgMTE6MDQ6MzcpOgp+IyEgcm49QnJvdG5hZWwgcnQ9MTA1NTQwODYyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0MDM5ODcKSGV1bCBkb2NoLCBXZWljaGVpISA7KQoKWm9vayBtZWludDogU2luZCBzaWUgenUgc3RhcmssIGJpc3QgRHUgenUgc2Nod2FjaCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBOYSBzdXBlci4gKEJyb3RuYWVsLCAxMi4gSnVuIDIwMDMsIDExOjA1OjA3KToKfiMhIHJuPVpvb2sgcnQ9MTA1NTQwODY3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0MDM5ODcKSWNoIGJpbiBLbGVyaSwgd2FzIGVyd2FydGVzdCBkdSB2b24gbWlyPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IE5hIHN1cGVyLiAoWm9vaywgMTIuIEp1biAyMDAzLCAxMTowNToyOCk6Cn4jISBybj1Ccm90bmFlbCBydD0xMDU1NDA4NzA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTQwMzk4Nwpab29rIGhhZWx0IHNpY2ggZGllIE9ocmVuIHp1IHVuZCBzdW1tdCBsYXV0IHZvciBzaWNoIGhpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBOYSBzdXBlci4gKENhdHdlYXpsZSwgMTIuIEp1biAyMDAzLCAxMToxNDoxOCk6Cn4jISBybj1ab29rIHJ0PTEwNTU0MDg2Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDAzOTg3CkhlaGUsIGRhIHdhciB3aWVkZXIgZWluIDotKQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOYSBzdXBlci4gKENhdHdlYXpsZSwgMTIuIEp1biAyMDAzLCAxMToxNDo0NCk6Cn4jISBybj1ab29rIHJ0PTEwNTU0MDg3MTEgcmc9ZC5wb2xhcgp+IyEgdGlkPTEwNTU0MDM5ODcKUGZmZmZmLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOYSBzdXBlci4gKFpvb2ssIDEyLiBKdW4gMjAwMywgMTE6MTY6MjcpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNTU0MDkyODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDAzOTg3Clpvb2sgZ3JpbnN0IGRhZW1saWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTmEgc3VwZXIuIChBbmF0b2wsIDEyLiBKdW4gMjAwMywgMTE6MjM6NTEpOgp+IyEgcm49Wm9vayBydD0xMDU1NDA5Mzg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTQwMzk4NwpXYXMgZ2lidCdzIGJlaSBSZV4xMDA/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE11ZWxsLiAoTXVhZGliLCAxMi4gSnVuIDIwMDMsIDExOjI1OjE2KToKfiMhIHJuPUxhbmphIHJ0PTEwNTUzNzc1MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1Mzc3NTA3CnJhYWFhYWFhYWFhYWFoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE11ZWxsLiAoTGFuamEsIDEyLiBKdW4gMjAwMywgMTM6NDU6MzkpOgp+IyEgcm49TXVhZGliIHJ0PTEwNTU0MDk5MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1Mzc3NTA3CkFjaCwgbWFjaHQgZG9jaCBnYXJuaXgsIE11YWRpYi4KSGF0IGRvY2ggZWgga2VpbmVyIGdlbGVzZW4sIGRpZSBzaW5kIGRvY2ggYWxsZSBiZXNjaGFlZnRpZ3QuLi4gOikKCkxhbmphLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW1tZXIgd2llZGVyIG1pdHR3b2NocyAuLi4gKE1haGFyZXQsIDEyLiBKdW4gMjAwMywgMTc6MTU6MDkpOgooMTc6MTIpIFJvY2h1cyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICAgISEhCkRlaW4gRnJldW5kIFJvY2h1cyBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuIApEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0CgpNYWhhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXl1bmcgKExpYXJhLCAxMi4gSnVuIDIwMDMsIDIxOjMxOjAyKToKfiMhIHJuPU5pYmVsIHJ0PTEwNTU0NDM1NTcgcmc9ZC53YWxkCn4jISB0aWQ9MTA1NTQ0MzU1NwpPaCwgZGllIFZpZWNoZXIgemllaGVuIGF1Y2ggdW0/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3NvLi4uIChHbm9tZSwgMTIuIEp1biAyMDAzLCAyMzo1MzowOSk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIE9ya3NdIE9rLCBEZWluIEdlc2ljaHQgbWVya2UgaWNoIG1pciwgQnJvdG5hZWwhCltNb2VyZGVyOkJyb3RuYWVsXSBtVUghCkR1IHRlaWxzdCBCcm90bmFlbCBtaXQ6IGdpYiBtaXIgU1RFUk5FIQpCcm90bmFlbCBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBjbGllbnQtc2VydmVyLXByb2dyYW1taW5nCkJyb3RuYWVsIGlzdCBtb21lbnRhbiBsZWlkZXIgdGF1Yi4KRGllIE1pdHRlaWx1bmcgd3VyZGUgdm9uIGVpbmVtIGtsZWluZW4gS29ib2xkIGluIEVtcGZhbmcgZ2Vub21tZW4uCkVyIHdpcmQgc2llIHNwYWV0ZXIgd2VpdGVybGVpdGVuIQoKaW50ZXJlc3NhbnRlIHdlZy1tZWxkdW5nLgptb3Jnb3RoPyB3YXMgdHV0IGRlciBkYSBtaXQgZGVpbmVuIG9ya3M/IHVtcHJvZ3JhbW1pZXJlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzb3NvLi4uIChMaWFyYSwgMTIuIEp1biAyMDAzLCAyMzo1NjoxMyk6Cn4jISBybj1Hbm9tZSBydD0xMDU1NDU0Nzg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTQ1NDc4OQpJY2ggZmluZGUgZXMgZWhlciBpbnRlcmVzc2FudCwgZGFzcyBkdSBiZWkgZWluZW0gS2xlcmkgYmV0dGVsbiBnZWhzdCEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc29zby4uLiAoR25vbWUsIDEyLiBKdW4gMjAwMywgMjM6NTc6MzIpOgp+IyEgcm49TGlhcmEgcnQ9MTA1NTQ1NDk3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0NTQ3ODkKaWNoIGJpbiBnZW5lcmFsLgppY2ggc2l0emUgaGludGVyIG1laW5lbSBzY2hyZWlidGlzY2ggdW5kIGtvbW1hbmRpZXJlIGtsZWluZSB0cnZlcyBoZXJ1bQp1bmQgYWIgdW5kIHp1IG1hbCBrbGVyaXMuIGRhcyBpc3Qgdm9lbGxpZyBub3JtYWwuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBzb3NvLi4uIChMaWFyYSwgMTIuIEp1biAyMDAzLCAyMzo1ODoyMik6Cn4jISBybj1Hbm9tZSBydD0xMDU1NDU1MDUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTQ1NDc4OQpCcm90bmFlbCwgdWViZXJuZWhtZW4gU2llIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogc29zby4uLiAoQnJvdG5hZWwsIDEyLiBKdW4gMjAwMywgMjM6NTg6MzgpOgp+IyEgcm49TGlhcmEgcnQ9MTA1NTQ1NTEwMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0NTQ3ODkKQnJvdG5hZWwgaXN0IHRhdWIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBzb3NvLi4uIChMaWFyYSwgMTIuIEp1biAyMDAzLCAyMzo1OToxMik6Cn4jISBybj1Ccm90bmFlbCBydD0xMDU1NDU1MTE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTQ1NDc4OQpXYWVyIGljaCBhdWNoLCB3ZW5uIG1pY2ggamVtYW5kIGhlcnVta29tbWFuZGllcmVuIHdvbGx0ZS4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHNvc28uLi4gKEthcmlzLCAxMi4gSnVuIDIwMDMsIDIzOjU5OjQ2KToKfiMhIHJuPUxpYXJhIHJ0PTEwNTU0NTUxNTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDU0Nzg5ClVuZCBkYXMgaGluZGVydCBhdWNoIGFtIG1wYS1sZXNlbj8/PwpLYXJpcywgdmVyc3RhZW5kaXNsb3MKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IHNvc28uLi4gKEJyb3RuYWVsLCAxMy4gSnVuIDIwMDMsIDAwOjAwOjEzKToKfiMhIHJuPUthcmlzIHJ0PTEwNTU0NTUxODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDU0Nzg5Ck5vZSwgYWJlciBhbSBCZWZlaGxlIGF1c2Z1ZWhyZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBzb3NvLi4uIChLYXJpcywgMTMuIEp1biAyMDAzLCAwMDowMDo0Nyk6Cn4jISBybj1Ccm90bmFlbCBydD0xMDU1NDU1MjEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTQ1NDc4OQpLYXJpcyB2ZXJzdGVodCBkYXMgYXVjaCBuaWNoIDopKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogc29zby4uLiAoQnJvdG5hZWwsIDEzLiBKdW4gMjAwMywgMDA6MDE6NTMpOgp+IyEgcm49S2FyaXMgcnQ9MTA1NTQ1NTI0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0NTQ3ODkKQWgsIGF1Y2ggdGF1Yj8gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogc29zby4uLiAoS2FyaXMsIDEzLiBKdW4gMjAwMywgMDA6MDI6MDcpOgp+IyEgcm49QnJvdG5hZWwgcnQ9MTA1NTQ1NTMxMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0NTQ3ODkKU2NoZWludCBzbyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGUuYWx0Lm5ldGRpZ2VzdCAtIG1hbmNobWFsIGZhbHNjaCBpbiBSdWJyaWsgU2NobWFycm4uLi4/IChSb25kYSwgMTMuIEp1biAyMDAzLCAwMToxNDo1MCk6CklyZ2VuZHdpZSBwYXNzdCBkYXMgZWhlciBpbiBHZWphbW1lci4uLj8KClJvbmRhIAoKCk1lc3NhZ2UtSUQ6IDxiYzFvY28kZWd1bnQkMUBJRC0xOTA2OTIubmV3cy5kZm5jaXMuZGU+CkZyb206IEx1a2FzIFNjaHJhdHogPGV4a2x1c2l2ZnVlcnNwYW1hcnNjaGxvZWNoZXJAYW9uLmF0PgpOZXdzZ3JvdXBzOiBkZS5jb21wLm9zLnVuaXgubGludXgubWlzYwpTdWJqZWN0OiBSZTogSW5zdGFsbGllcmVuCkRhdGU6IE1vbiwgMDkgSnVuIDIwMDMgMTI6NDM6MTQgKzAyMDAKCk1hcmN1cyBCdW5jaGVyIGhhY2t0ZSBpbiBkZW4gUmVjaGVua25lY2h0Cgo+IEhhbGxvCj4gSWNoIGJpbiBnYW56IG5ldSB3YXMgTGludXggYW5nZWh0LGRlc3dlZ2VuIHNpbmQgbWVpbmUgRnJhZ2VuIGF1Y2gKPiBiZXN0aW1tdCBuaWNodCBpbW1lciBzbyAiSW50ZWxsaWdlbnQiIQoKRGFzIGthbm5zdCBkdSBhYmVyIGxhdXQgc2FnZW4uCgo+IEFsc28gU29ycnkhCgpOZWluLiBEYXMgaXN0IGtlaW5lIHN1cHBvcnQtaG90bGluZSBmdWVyIExldXRlLCBkaWUgbmljaHQgbGVzZW4ga29lbm5lbi4KCj4gV2llIEluc3RhbGxpZXJlIGljaCB1bnRlciBMaW51eCBQcm9ncmFtbWUgZGllIG5pY2h0IGltIE9ubGluZSB1cGRhdGUKPiBlbnRoYWxsdGVuIHNpbmQ/CgpPbmxpbmUgVXBkYXRlPwoKPiBBbHNvIFByb2dyYW1tZSBkaWUgaWNoIHNvIGF1cyBkZW0gSW50ZXJuZXQgaGVydW50ZXJsYWRlPwo+IERvcHBlbHQgYW5rbGlja2VuIHdpZSBiZWkgV2luZG93cyBnZWh0IGphIG5pY2h0IQo+IApSVEZNCkljaCB3dWVyZGUgZGlyIGFiZXIgZ2VuZXJlbGwgcmF0ZW4sIGJlaSBldHdhcyB6dSBibGVpYmVuLCB3YXMgZGVpbmVtCkJlZHVlcmZuaXMgbmFjaCBzY2huZWxsZXIgU3BpZWxlaW5zdGFsbGF0aW9uIGVudGdlZ2Vua29tbXQuIERpZQpQbGF5c3RhdGlvbiBoYXQgc2ljaCBoaWVyIHNlaHIgYmV3YWVocnQuCgpsdWtlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZGUuYWx0Lm5ldGRpZ2VzdCAtIG1hbmNobWFsIGZhbHNjaCBpbiBSdWJyaWsgU2NobWFycm4uLi4/IChKYWRhd2luLCAxMy4gSnVuIDIwMDMsIDAxOjMyOjM2KToKfiMhIHJuPVJvbmRhIHJ0PTEwNTU0NTk2OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDU5NjkwCkd1dCwgZGllIEZyYWdlbiBzaW5kIHp1Z2VnZWJlbmVybWFzc2VuIGRhZW1saWNoLCBhYmVyIEhlcnIgU2NocmF0eiBzY2hlaW50IG1pcgphdWNoIGVpbiBhdXNnZW1hY2h0ZXIgSWRpb3QgenUgc2Vpbi4KSmFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBkZS5hbHQubmV0ZGlnZXN0IC0gbWFuY2htYWwgZmFsc2NoIGluIFJ1YnJpayBTY2htYXJybi4uLj8gKFZhbmlvbiwgMTMuIEp1biAyMDAzLCAwNzowMzoxMCk6Cn4jISBybj1KYWRhd2luIHJ0PTEwNTU0NjA3NTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDU5NjkwCk9jaCwgUG9zdGVyIHdpZSBIZXJyIFNjaHJhdHosIGRhcyBzaW5kIG9mdCBMZXV0ZSwgZGllIGVzIGh1bmRlcnRtYWwgdmVyc3VjaHQKaGFiZW4sIEZyYWdlbiB3aWUgZGllIHZvbiBIZXJubiBCdW5jaGVyIHp1IGJlYW50d29ydGVuLCB1bmQgYmVpbSAxMDEuIG1hbAplaW5mYWNoIG1hbCBkaWUgU2NobmF1emUgdm9sbCBoYWJlbiwgc28gZWluZW4gU3BydWNoIGJyaW5nZW4gdW5kIGRhbmFjaCBlYmVuCmF1Y2ggenVtICdIYWx0ZXQgZGFzIFVzZW5ldCBzYXViZXInLUZhZWhuY2hlbiBncmVpZmVuLgoKU2VpdCBBT0wgdW5kIFQtT25saW5lIHBlciBJbnRlcm5ldCBmdWVyIEplZGVybWFubiBpbnMgTmV0eiBzY2h3ZW1tZW4gdW5kIFN1U0UKZWluIExpbnV4IGZ1ZXIgQWxsZSBhbmJpZXRldCAod2FzIGljaCBuaWNodCB3aXJrbGljaCBzY2hsZWNodCBmaW5kZSkgc2luZAp2aWVsZSBGcmFnZW4gaW4gZGVuIExpbnV4Z3J1cHBlbiB1bnByb2Zlc3Npb25lbGxlciBnZXdvcmRlbi4gT2RlciBiZXNzZXI6IElzdApkaWUgQW56YWhsIGRlciB1bnByb2Zlc3Npb25lbGxlbiBGcmFnZW4gaW0gVmVyaGFlbHRuaXMgenUgZGVuIGFuZGVyZW4gZG9jaApkZXV0bGljaCBnZXN0aWVnZW4uCgpVbmQgaW5zYmVzb25kZXJlIGRhIG1hbiBhdXMgZWluZW0gVXNlbmV0LUFydGlrZWwgaGVyYXVzIG5pY2ggZGllIEhpc3RvcmllIGRlcgpEaXNrdXNzaW9uIHNpZWh0IChtb2VnbGljaGVyd2Vpc2UgaGF0IEhlcnIgQnVuY2hlciBqYSBuaWNodCBkZW4gZXJzdGVuIEFydGlrZWwKZGllc2VyIEFydCBnZXNjaHJpZWJlbikgaXMgZGllIEF1c3NhZ2UgdWViZXIgZGVuIEdlaXN0ZXN6dXN0YW5kIHZvbiBIZXJybgpTY2hyYXR6IGVoZXIgZ2V3YWd0LgoKViosIHNjaHJlaWJ0IHNpbm5sb3NlIEFydGlrZWwgdW0gZWluZSBBdXNyZWRlIHp1IGhhYmVuLCBuaWNoIHp1ciBBcmJlaXQgenUKZ2VoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXl1bmcgKENhdHdlYXpsZSwgMTMuIEp1biAyMDAzLCAwNzo0MzoxOSk6Cn4jISBybj1OaWJlbCBydD0xMDU1NDQzNTU3IHJnPWQud2FsZAp+IyEgdGlkPTEwNTU0NDM1NTcKRGFzIGlzdCBkb2NoIGdhbnoga2xhciBHZWphbW1lci4gSG0sIGljaCB2ZXJsZWdzIG1hbCAuLi4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogc29zby4uLiAoQXBvbGxvbmlhLCAxMy4gSnVuIDIwMDMsIDA5OjIxOjQwKToKfiMhIHJuPUdub21lIHJ0PTEwNTU0NTUwNTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDU0Nzg5ClBhaC4gTmljaCBtZWhyIGxhbmdlLiBEYW5uIHdlcmRlbiBzZWxic3QgR2VuZXJhZWxlIHdpZWRlciBnZXNjaGV1Y2h0LiBGYXVsZXMKUGFjay4KCkFwbyoKbWl0IFBsYWVuZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGRlLmFsdC5uZXRkaWdlc3QgLSBtYW5jaG1hbCBmYWxzY2ggaW4gUnVicmlrIFNjaG1hcnJuLi4uPyAoSmFkYXdpbiwgMTMuIEp1biAyMDAzLCAwOTo0NTozNCk6Cn4jISBybj1WYW5pb24gcnQ9MTA1NTQ4MDU5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0NTk2OTAKQWxsZXJkaW5ncyB6d2luZ3QgaWhuIGF1Y2ggbmllbWFuZCwgZGllIEFydGlrZWwgZGVzIGFuZGVyZW4genUgbGVzZW4sCmdlc2Nod2VpZ2UgZGVubiwgZGFyYXVmIHp1IGFudHdvcnRlbi4gOykKSmFkKiAoc2NocmVpYnQgYXVjaCBsaWViZXIgQXJ0aWtlbCBzdGF0dCBTYWNoZW4genUgZXJsZWRpZ2VuKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEtyb21iYWNoZXIuLi4gKERlZXBibHVlLCAxMy4gSnVuIDIwMDMsIDEwOjUyOjQzKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDU1NDk0MjQyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDU1NDE5NTA5CkFiZXIgbmljaHQgYWxsZXMsIHdhcyBoaW5rdCwgaXN0IGF1Y2ggZWluIFZlcmdsZWljaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IEtyb21iYWNoZXIuLi4gKENyb2Z0LCAxMy4gSnVuIDIwMDMsIDEyOjA3OjM5KToKfiMhIHJuPUFuYXRvbCBydD0xMDU1NDk4ODAxIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDU1NDE5NTA5CkhtLiBGYWVyYnQgZGFzIGtvZW5pZ2xpY2hlIFBsdXJhbCBhdWYgZGljaCBhYj8gOi0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IEtyb21iYWNoZXIuLi4gKEFuYXRvbCwgMTMuIEp1biAyMDAzLCAxMjowODo1NSk6Cn4jISBybj1Dcm9mdCBydD0xMDU1NDk4ODU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTQxOTUwOQpEdW5rZWwgaXN0IGRlciBTaW5uIERlaW5lciBSZWRlLgoKCltCb251c2ZyYWdlOiBXZWxjaGVzIFRleHQtQWR2ZW50dXJlIGhhdHRlIGRpZXMgYWxzIFN0YW5kYXJkZmVobGVybWVsZHVuZz9dCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IEtyb21iYWNoZXIuLi4gKEVsaXphYmV0aCwgMTMuIEp1biAyMDAzLCAxNjo0NDozNCk6Cn4jISBybj1Dcm9mdCBydD0xMDU1NDk4ODU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTQxOTUwOQpoZWlzc3QgZXMgbmljaHQgJ2Rlcicga29lbmlnbGljaGUgUGx1cmFsPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogc29zby4uLiAoR25vbWUsIDEzLiBKdW4gMjAwMywgMTc6MzM6NTIpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwNTU0ODg5MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDU0Nzg5CmFoLCBkdSBwcm9ncmFtbWllcnN0IGxldmVsIDI0PwpzZWhyIHNjaG9lbiwgd2VpdGVyIHNvLiBmcmF1ZW4gYW4gZGllIGZyb250LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZGUuYWx0Lm5ldGRpZ2VzdCAtIG1hbmNobWFsIGZhbHNjaCBpbiBSdWJyaWsgU2NobWFycm4uLi4/IChEYXJrbG9yLCAxMy4gSnVuIDIwMDMsIDIyOjMxOjQ1KToKfiMhIHJuPVZhbmlvbiBydD0xMDU1NDgwNTkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTQ1OTY5MApIYWJlbiBkaWUgZGVubiBrZWluZSBGQVE/CgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogS3JvbWJhY2hlci4uLiAoQW5hdG9sLCAxMy4gSnVuIDIwMDMsIDIzOjUwOjE3KToKfiMhIHJuPURhcmtsb3IgcnQ9MTA1NTUzODgzNSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA1NTQxOTUwOQoiLi4uIEhhcmRjb3B5IHZlcnN0ZWh0IHNpY2ggKmZnKiIKCkphPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGRlLmFsdC5uZXRkaWdlc3QgLSBtYW5jaG1hbCBmYWxzY2ggaW4gUnVicmlrIFNjaG1hcnJuLi4uPyAoQWhhYiwgMTQuIEp1biAyMDAzLCAxMjoxNjowNCk6Cn4jISBybj1WYW5pb24gcnQ9MTA1NTQ4MDU5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0NTk2OTAKRGllIEF1c3JlZGUgd2lyZCBiZWkgRGVpbmVtIEFyYmVpdGdlYmVyIGFremVwdGllcnQ/IFdvdy4gTXVzcyBpY2ggYXVjaCBtYWwKcHJvYmllcmVuLiAqZyoKCkFob2ksCkFoYWIgLiBvIE8gKCJTb3JyeSwgQ2hlZiwgaWNoIG11c3N0ZSBnZXN0ZXJuIG5vY2ggZWluIHBhYXIgc2lubmxvc2UgQXJ0aWtlbAogICAgICAgICAgICAgc2NocmVpYmVuLiIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBkZS5hbHQubmV0ZGlnZXN0IC0gbWFuY2htYWwgZmFsc2NoIGluIFJ1YnJpayBTY2htYXJybi4uLj8gKFZhbmlvbiwgMTQuIEp1biAyMDAzLCAxMjoyMDoyNSk6Cn4jISBybj1BaGFiIHJ0PTEwNTU1ODU3NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDU5NjkwCk5vZSwgZGllIEF1c3JlZGUgYnJhdWNodGUgaWNoIGZ1ZXIgbWljaC4gQmVpIEdsZWl0emVpdCBpcyBkYXMgc28gZWluZSBTYWNoZS4KV2VubiBtYW4gbW9yZ2VucyBydW1mYXVsZW56dCwgbXVzcyBtYW4gZGFzIGFtIEFiZW5kIGF1c2JhZGVuIDopCgpWKiwga3JpZWd0IHZvbiBzZWluZW0gQ2hlZiBhYmVyIGVoIGltbWVyIHp1IGhvZXJlbiwgZXIgc29sbCBVZWJlcnN0dW5kZW4KYWJiYXVlbi4gTWVpc3QgZGlyZWt0IG5hY2ggZGVtIFNhdHo6IEljaCBoYWIgaGllciBub2NoIGVpbmVuIGV4dHJlbSB3aWNodGlnZW4KdW5kIGV4dHJlbSBlaWxpZ2VuIEF1ZnRyYWcgLi4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3JpbGxlbiBhbSBLZW1uYWRlciBTZWUgKEJvY2h1bS9XaXR0ZW4pLCAyMS4wNi4wMyAoRWxpemFiZXRoLCAxNC4gSnVuIDIwMDMsIDE2OjM2OjMzKToKfiMhIHJuPVRodWZoaXIgcnQ9MTA1NTYwMDIxNiByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDU1NjAwMjE2CldvZnVlciBzdGVodCBkYXMgcyc/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBkZS5hbHQubmV0ZGlnZXN0IC0gbWFuY2htYWwgZmFsc2NoIGluIFJ1YnJpayBTY2htYXJybi4uLj8gKEZvb2JhciwgMTQuIEp1biAyMDAzLCAxODowODozMyk6Cn4jISBybj1WYW5pb24gcnQ9MTA1NTU4NjAyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0NTk2OTAKTWFuIGJlYWNodGUgdm9yIGFsbGVtIGRhcyB0cmFnaXNjaGUgUC5TLi4uCi0tLS0tCgpGcm9tOiBIZW5uaW5nIFBhdWwgPGhlbm5pbmdwYXVsQGdteC5kZT4KTmV3c2dyb3VwczogZGUucmVjLm11c2lrLnJlY2hlcmNoZQpTdWJqZWN0OiBSZTogW0lEXSBVaCB1aApNZXNzYWdlLUlEOiA8bzBsY2NiLW4xNC5sbkBJRC02Mjg1MS51c2VyLmRmbmNpcy5kZT4KRGF0ZTogRnJpLCAxMyBKdW4gMjAwMyAxNTo1MzoyOCArMDIwMAoKTWljaGFlbCBSZWJlbGUgc2NocmllYjoKCj4gaWNoIHN1Y2hlIGVpbiBMaWVkLCB2b24gZGVtIGljaCBsZWlkZXIga2VpbmUgVGV4dHBhc3NhZ2VuIGhhYmUgYXVzc2VyCj4gZGFzIGdlbmFubnRlICJVaCB1aCIuIERpZSBTdGltbWUgaXN0IG1hZW5ubGljaC4KCj4gTXVzaWthbGlzY2ggZWluZSBNaXNjaHVuZyBhdXMgR3Vhbm8gQXBlcywgR2xvdywgT1BNLgo+IER1ZXJmdGUgcmVsYXRpdiBuZXUgc2VpbiAobWF4LiAxIEphaHIgYWx0KS4KCldpZSBhbHQgYmlzdCBEdSwgS2luZD8gKmcqIERlciBTb25nIGlzdCBzY2hvbiB2b24gMTk5Ny4gOy0pCgpHcnVzcwpIZW5uaW5nCgpQLlMuOiBOZXVsaWNoIGluIGRlciBTdHJhc3NlbmJhaG46CkVpbiAxNGphZWhyaWdlcyBNYWVkY2hlbiB6dW0gYW5kZXJlbjogIkhhc3QgRHUgc2Nob24gZ2Vob2VydD8gRGVyIFZhdGVyIHZvbgpLZWxseSBPc2JvdXJuZSBtYWNodCBqZXR6dCBhdWNoIE11c2lrISIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZ2llcnBhY2ssIHBvZWggKE1vcmdvdGgsIDE1LiBKdW4gMjAwMywgMDM6NDg6MzkpOgoKRGEgaXMgbWFuIG1pdHRlbiBpbm5hZSBuYWNodCBub2NoIHdhY2ggdW5kIHdhdHQgaXMgbWl0dGUgbWFnaWVyLCBwZW5uZW4gdHVuc2UuCmt1Y2sgZGljaCBkYXQgbWEgYW46Ck1jZGVlLi4uLi4uLi4uLi4uUyBMYWNyaS4uLi4uLi4uLi5qLlMgVHlsYWsuLi4uLi4uLi4uaS5TIEhhZHJhLi4uLi4uLi4uLmoubQpHcmltbWJvcm4uLi4uLi5qd20gQmFtYnVsa28uLi4uLi4uSi5NIChLb2JheWFzaGkuLi4pLkouTSBSYWduYXJvZWsuLi4uLi5qLlIKTW9yZ290aC4uLi4uLi4uLndSIEFtYXJ5bGxpcy4uLi4uLkp3UiBNYW5kcmFnb24uLi4uLi5KLlIgVmFuaW9uLi4uLi4uLi4uSi5FCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hZ2llcnBhY2ssIHBvZWggKEFuYXRvbCwgMTUuIEp1biAyMDAzLCAxMToxMDo1Myk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNTU2NDE3MTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NjQxNzE5ClVuZCBkZXR0IGF1c2plcmVjaG5ldCB2b24gZGUganJvc3NlbiAiTW9ySm90aCIgOikgKmR1Y2sqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVXNlbmV0LVNpZ25hdHVyLi4uIChSb25kYSwgMTUuIEp1biAyMDAzLCAxNDoyODo1OSk6Ci4uLiBncmFkIGdlZnVuZGVuLiBJY2ggYmluIGRhZnVlciwgZGFzcyB3aXIgZGFyYXVzIG5lbiBGbGFtZXdhciBtYWNoZW4sIG9iIG1hbgpVc2VuZXRhZHJlc3NlbiBmYWtlbiBkYXJmLgoKUm9uZGEgKm1hbCBzZWhlbiwgd2VycyBtZXJrdCA7LSkqCgoKLS0gCklmIHlvdSB3YW50IHRvIG1haWwgbWUgZGlyZWN0bHk6Ci0gVXNlIFJvdDEzIG9uIG15IGFkcmVzcwotIEVudGVyICJhYmZjbnoiIGFmdGVyIHRoZSAiQCIKLSBVc2UgUm90MTMgYWdhaW4gYW5kIGRlbGV0ZSB0aGUgIm5vc3BhbSIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVc2VuZXQtU2lnbmF0dXIuLi4gKEFtYXJ5bGxpcywgMTUuIEp1biAyMDAzLCAxNDozMDoyMSk6Cn4jISBybj1Sb25kYSBydD0xMDU1NjgwMTM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTY4MDEzOQpHZWZha3RlIFVzZW5ldGFkcmVzc2VuIHNpbmQgc2Nob24gaW1tZXIgZWluICJuby1ubyIuIFdpZXNvIHNvbGx0ZSBkYXJhdXMgZWluCkZsYW1ld2FyIGVudHdhY2hzZW4/CgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVzZW5ldC1TaWduYXR1ci4uLiAoUm9uZGEsIDE1LiBKdW4gMjAwMywgMTQ6MzI6MzcpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwNTU2ODAyMjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NjgwMTM5CkFtYSosIGxlcyBkaWUgU2lnIGJpdHRlIG5vY2htYWwuIFNhZyB3YXMgRHUgd2lsbHN0OiBEaWVzZSBNZXRob2RlIGRlciBnZWZha3RlbgpBZHJlc3NlIGhhbHRlIGljaCBmdWVyIHZvZWxsaWcgdXNlbmV0LWdlZWlnbmV0LgoKUm9uZGEgKm1hZyBrZWluZSBTcGFtbWVyKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVXNlbmV0LVNpZ25hdHVyLi4uIChBbWFyeWxsaXMsIDE1LiBKdW4gMjAwMywgMTQ6MzU6MjQpOgp+IyEgcm49Um9uZGEgcnQ9MTA1NTY4MDM1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU2ODAxMzkKSWNoIG5pY2h0LgoKV2VubiBpY2ggc2Nob24ga29zdGVubG9zIFN1cHBvcnQgbGVpc3RlLCB1bSB6LkIuIGplbWFuZGVtIGJlaSBlaW5lciBGcmFnZSB6dQphbnR3b3J0ZW4sIHdpZXNvIG11c3MgaWNoIGRhbm4gYXVjaCBub2NoIGVpbiBtZWhyemVpbGlnZXMgSG93dG8gYWJzb2x2aWVyZW4sCm51ciB1bSBkZXNzZW4ga29ycmVrdGUgTWFpbGFkcmVzc2UgenUga3JpZWdlbj8gV2VycyBtYWcsIGdlcm5lIC0gYmVpIG1pcgpsYW5kZW4gc29sY2hlIGltIEZpbHRlci4KCkFtYSoKClBTOiBEYXNzIGRhcyBQcm9ibGVtICJTcGFtIiBkYWR1cmNoIGVoIG5pY2h0IHp1IGJla2FlbXBmZW4gaXN0LCBicmF1Y2hlIGljaCBqYQp3b2hsIG5pY2h0IHp1IGVyd2FlaG5lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFVzZW5ldC1TaWduYXR1ci4uLiAoQ3JvZnQsIDE1LiBKdW4gMjAwMywgMTQ6Mzg6MjcpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwNTU2ODA1MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NjgwMTM5CkRpciBpc3Qga2xhciBkYXMgZGllIGFuZ2VnZWJlbmUgTWV0aG9kZSBlaW5lIE5PT1AgaXN0LCBBbWFyeWxsaXM/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVXNlbmV0LVNpZ25hdHVyLi4uIChBbWFyeWxsaXMsIDE1LiBKdW4gMjAwMywgMTQ6NDA6MDMpOgp+IyEgcm49Q3JvZnQgcnQ9MTA1NTY4MDcwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU2ODAxMzkKTWlyIHdhcyBkYXMga2xhciAoMnggUk9UMTMgaXMgamEgZWggVW5zaW5uKS4gTWlyIGdpbmdzIGVoZXIgdW1zIFByaW56aXAsIGRhCk1ldGhvZGVuIGRlciAiQWRyZXNzZW4tVmVyZmFlbHNjaHVuZyIgaW0gVXNlbmV0IGVoIGltbWVyIGJlbGllYnRlciB3ZXJkZW4uCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBVc2VuZXQtU2lnbmF0dXIuLi4gKFJvbmRhLCAxNS4gSnVuIDIwMDMsIDE0OjQxOjIxKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDU1NjgwODAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTY4MDEzOQpBbWFyeWxsaXMsIGljaCBoYWJlIGF1Y2ggaW1tZXIgbnVyIHZvbiBnZW5hdSBkaWVzZXIgTWV0aG9kZSBnZXNwcm9jaGVuLApBZHJlc3NlbiB6dSBmYWtlbi4uLiBBZHJlc3NlbmZhZWxzY2h1bmcgaW0gVXNlbmV0IG1hZyBpY2ggYXVjaCBuaWNodC4KClJvbmRhICpDcm9mdCwgRHUgaGFzdCBtZWluZW4gc2Nob2VuZW4gU29ubnRhZ3NuYWNobWl0dGFnc2thZmZlZWZsYW1ldmVyc3VjaAp6ZXJzY2hvc3NlbiA7LSgqCiwKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVGlnZXIgVGVycml0b3J5IChNdWFkaWIsIDE1LiBKdW4gMjAwMywgMTU6MjU6MzApOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDU1Njc5MjY2IHJnPXd3dwp+IyEgdGlkPTEwNTU2NzkyNjYKa2F0emVuIGluIGRlbiBzY2hyZWRkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVGlnZXIgVGVycml0b3J5IChFbGl6YWJldGgsIDE1LiBKdW4gMjAwMywgMTU6MjY6MzYpOgp+IyEgcm49TXVhZGliIHJ0PTEwNTU2ODM1MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1Njc5MjY2CndpZSBnZW1laW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUaWdlciBUZXJyaXRvcnkgKEFtYXJ5bGxpcywgMTUuIEp1biAyMDAzLCAxNToyODowNik6Cn4jISBybj1FbGl6YWJldGggcnQ9MTA1NTY4MzU5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU2NzkyNjYKR2VtZWluLCBhYmVyIHJpY2h0aWcuCgpBbWEqLCB3ZWlzZSBuaWdnZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZGUuYWx0Lm5ldGRpZ2VzdCAtIG1hbmNobWFsIGZhbHNjaCBpbiBSdWJyaWsgU2NobWFycm4uLi4/IChLZWxseWJ1bmR5LCAxNS4gSnVuIDIwMDMsIDE2OjE3OjAxKToKfiMhIHJuPUFoYWIgcnQ9MTA1NTU4NTc2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0NTk2OTAKSWNoIGZhaHIgaW4gZGVuIEdyaWVzaGVpbWVyIFNhbmQgenVtIFNwYXJnZWwga2F1ZmVuLiBNSVQgZGVtIERpZW5zdHdhZ2VuIHVuZApkZW4gV29ydGVuIHp1bSBDaGVmOiAiSWNoIGZyb2VobmUgbWFsIGViZW4gZGVtIGJlemFobHRlbiBIZXJ1bWx1bmdlcm4uIgpJcmdlbmR3aWUgaGF0IG1laW4gQ2hlZmNoZW4gc3BpdHpnZWtyaWVndCwgZGFzcyBpY2ggU3BhcmdlbCBoYW1zdGVybiBnZWhlLCB3aWUKd2Vpc3MgaWNoIG5pY2h0LiBFaW56aWdlIFJlYWt0aW9uOiBpY2ggc29sbCBpaG0gYXVjaCBtYWwgZ3JhZCAyIEtpbG8KbWl0YnJpbmdlbi4KCkJsb25kY2hlbiwgYnJhdWNodCBrZWluZSBBdXNyZWRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHNvc28uLi4gKFpvb2ssIDE1LiBKdW4gMjAwMywgMTc6NTQ6MDgpOgp+IyEgcm49R25vbWUgcnQ9MTA1NTUxODQzMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0NTQ3ODkKRGFzIHdhZXIgZmVpbi4gS2FubiBpY2ggbWVpbmUgQXJiZWl0IGFuIGRlciBBdWZnYWJlIGphIGVpbnN0ZWxsZW4uIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSXMga2xhIC4uLiAoTGlhcmEsIDE2LiBKdW4gMjAwMywgMDA6MDg6NTMpOgprd2VyIGVyd2FydGV0ZQpSYW5nYS4uLi4uLi4uLi4uLnogRG9yaWFuLi4uLi4uLi4uLi5zIFRoYW50YWxhcy4uLi4uLi4uUyBNYWhhcmV0Li4uLi4uLi5pLlMKQWxwaGEuLi4uLi4uLi4uSi5TIFNoYWVlbmEuLi4uLi4uLi4uUyBWYXJkaW9uLi4uLi4uLi5JLlMgRGFya3dpbmcuLi4uLi4uai5TCk1hZ2RhbGVuYS4uLi4uLkl3bSBMZWliaS4uLi4uLi4uLi4ud20gVmFuaW9uLi4uLi4uLi4uandFIEh1bW5pLi4uLi4uLi4uLi53RQpab29rLi4uLi4uLi4uLi5qd0cKd2VnbWVsZHVuZyBtYWdkYWxlbmEKTWFnZGFsZW5hIGlzdCBhbHMgYWJ3ZXNlbmQgZ2VrZW5uemVpY2huZXQuCkdydW5kOiAtPiBodW1uaSBob2NrdCBhbSBQQwp3ZWdtZWxkdW5nIGh1bW5pCkh1bW5pIGlzdCBhbHMgYWJ3ZXNlbmQgZ2VrZW5uemVpY2huZXQuCkdydW5kOiBpZGxlCndlZ21lbGR1bmcgbGVpYmkKTGVpYmkgaXN0IGFscyBhYndlc2VuZCBnZWtlbm56ZWljaG5ldC4KR3J1bmQ6IG5pY2ggZGEKCkxpYXJhLCBncnVlYmVsdCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJcyBrbGEgLi4uIChWYW5pb24sIDE2LiBKdW4gMjAwMywgMDY6NTI6MDcpOgp+IyEgcm49TGlhcmEgcnQ9MTA1NTcxNDkzMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU3MTQ5MzMKV2FzIGVyd2FydGV0IGlociBlaWdlbnRsaWNoIGltbWVyIG1pdHRlbiBpbiBkZXIgTmFjaHQ/CgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRpZ2VyIFRlcnJpdG9yeSAoQW50aGVhLCAxNi4gSnVuIDIwMDMsIDA4OjMwOjA0KToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA1NTY3OTI2NiByZz13d3cKfiMhIHRpZD0xMDU1Njc5MjY2CkVjaHQgdG9sbC4gSWNoIGZpbmRlIFdlYnNlaXRlbiwgd28gbm9ybWFsZSBCaWxkZXIgZHVyY2ggSmF2YS1BcHBsZXRzIGVyc2V0enQKd2VyZGVuLCBlY2h0IHRvbGwuIE1hY2h0IGphIGdhciBuaXggYXVzIGFuIExhZGV6ZWl0ZW4gKGF1Y2ggZGllc2VyIHN1ZWZmaXNhbnRlClNhdHogYW0gQW5mYW5nLCBkYXNzIGRlciBTZXJ2ZXIgamEgc2NobmVsbCBpc3QsIHdlbm4gZXMgYWxzbyBsYW5nc2FtIGlzdCwgaXN0CmVzIGRpZSBlaWdlbmUgTGVpdHVuZykuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRpZ2VyIFRlcnJpdG9yeSAoV2hpdGV0aWdlciwgMTYuIEp1biAyMDAzLCAxMjozODowNCk6Cn4jISBybj1BbnRoZWEgcnQ9MTA1NTc0NTAwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU2NzkyNjYKU3RpbW10Li4uIGZpbmQgaWNoIGF1Y2ggZG9vZi4KU28gc2VoIGljaCBkaWUgZ2FuemVuIHNjaG9lbmVuIFRpZ2VyIGdhciBuaWNodCAuOigKCldoaXRlVGlnZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBLcm9tYmFjaGVyLi4uIChHcmltbWJvcm4sIDE2LiBKdW4gMjAwMywgMTc6NDE6NDApOgp+IyEgb249R3JpbW1ib3JuIG90PTEwNTU3NzgwOTQgb2c9ZGlza3Vzc2lvbgp+IyEgcm49Wm9vayBydD0xMDU1Nzc3OTQzIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDU1NDE5NTA5Ck5vcGUsIGZ1ZXIgZGFzIE1HIG11c3MgZGFzIG5hdHVlcmxpY2ggaGVpc3NlbjogIktlaW5lIEVsZmVuIC0ga2VpbmUgUHJvYmxlbWUiLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogS3JvbWJhY2hlci4uLiAoWm9vaywgMTYuIEp1biAyMDAzLCAxNzo0MzozMCk6Cn4jISBvbj1ab29rIG90PTEwNTU3Nzc5NDMgb2c9ZGlza3Vzc2lvbgp+IyEgcm49RGFya2xvciBydD0xMDU1Nzc3NjcwIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDU1NDE5NTA5CkRhcmYgaWNoIGRhcyBhbHMgTGVpdHNwcnVjaCBmdWVyIGRhcyBNRyB1ZWJlcm5laG1lbj8KClpvb2sgc3RlbGx0IHNjaG9uIG1hbCBlaW5lIExvZXNjaHVuZ3MtTGlzdGUgbWl0ICJQcm9ibGVtZmFlbGxlbiIgenVyZWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBLcm9tYmFjaGVyLi4uIChDcm9mdCwgMTYuIEp1biAyMDAzLCAxNzo1MjozMCk6Cn4jISBybj1ab29rIHJ0PTEwNTU3NzgyMTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDE5NTA5Ckd1dGUgSWRlZS4gIERhcmtsb3Iga29lbm50ZXN0IGR1IGdsZWljaCBhdWYgZGllIExpc3RlIHNldHplbiBdOl4pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IEtyb21iYWNoZXIuLi4gKERhcmtsb3IsIDE2LiBKdW4gMjAwMywgMTc6NTk6NTIpOgp+IyEgcm49Q3JvZnQgcnQ9MTA1NTc3ODc1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0MTk1MDkKSGEsIHp1bSBHbHVlY2sgaXMgZGVyIGphIGtlaW4gRWxmLi4uCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogS3JvbWJhY2hlci4uLiAoQ3JvZnQsIDE2LiBKdW4gMjAwMywgMTk6MDQ6NDYpOgp+IyEgcm49RGFya2xvciBydD0xMDU1Nzc5MTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTQxOTUwOQpXYXMgaGFiZW4gRWxmZW4gZGFtaXQgenUgdHVuPyBab29rIHdpbGwgTWVuc2NoZW4gbG9lc2NoZW4gOj4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogS3JvbWJhY2hlci4uLiAoR3JpbW1ib3JuLCAxNi4gSnVuIDIwMDMsIDE5OjA4OjI5KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNTU3ODMwODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDE5NTA5CkVzIGdpbmcgZGFydW0gd2FzIG1hbiBsb2VzY2hlbiBtdXNzIHVtIGtlaW5lIFByb2JsZW1lIG1laHIgenUgaGFiZW4uIERpZSBFbGZlbgp3YWVyZW4gZGEgZWluIGdyb3NzZXIgU2Nocml0dCBpbiBkaWUgcmljaHRpZ2UgUmljaHR1bmcuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBLcm9tYmFjaGVyLi4uIChDcm9mdCwgMTYuIEp1biAyMDAzLCAxOTowOTo0OSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1NTc4MzMwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0MTk1MDkKRGFzIHNhZ3Rlc3QgZHUsIGFiZXIgZGFyYXVmIGJlem9nIHNpY2ggWm9vayBqYSBuaWNodC4gIFNvbnN0IGhhZXR0ZSBlcgphdWYgZGVuIGxldHp0ZW4gKGRlaW5lbikgQXJ0aWtlbCBnZWFudHdvcnRldCAsLSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogS3JvbWJhY2hlci4uLiAoRGFya2xvciwgMTYuIEp1biAyMDAzLCAxOTo1NzoxMyk6Cn4jISBybj1Dcm9mdCBydD0xMDU1NzgzMzg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTQxOTUwOQpIbW0sIG5hIGRhbm4uLi4gLSBnZW5hdSBsb2VzY2ggYWxsZSBNZW5zY2hlbiAtIGRhbm4gZ2lidHMgYXVjaCBrZWluZSBQcm9ibGVtZQptZWhyIHVlYmVyIGRpZSBtYW5nIHNpY2ggZGVuIEtvcGYgemVyYnJlY2hlbiBtdXNzLi4uIAoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IEtyb21iYWNoZXIuLi4gKENyb2Z0LCAxNi4gSnVuIDIwMDMsIDE5OjU4OjU3KToKfiMhIHJuPURhcmtsb3IgcnQ9MTA1NTc4NjIzMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0MTk1MDkKRWJlbi4gIFVuZCBkaWUgUHJvYmxlbWUgbWl0IGdnZiB1ZWJlcm1hZWNodGlnZW4gTWVuc2NoZW50cnZlcyBmYWxsZW4gYXVjaApnbGVpY2ggbWl0IHVudGVyIGRlbiBUaXNjaC4gIDo+CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IEtyb21iYWNoZXIuLi4gKERhcmtsb3IsIDE2LiBKdW4gMjAwMywgMjA6MDY6MjMpOgp+IyEgcm49Q3JvZnQgcnQ9MTA1NTc4NjMzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0MTk1MDkKRXMgd2FlciBkYW5uIGhpZXIgYWJlciBlY2h0IGxlZXIuLi4gLSBkYSBhbGxlIFNwaWVsZXIgTWVuc2NoZW4gc2luZC4uLgoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IEtyb21iYWNoZXIuLi4gKE11YWRpYiwgMTYuIEp1biAyMDAzLCAyMDoxNTo0NCk6Cn4jISBybj1EYXJrbG9yIHJ0PTEwNTU3ODY3ODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDE5NTA5CmljaCBiaW4ga2VpbiBtZW5zY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBLcm9tYmFjaGVyLi4uIChDcm9mdCwgMTYuIEp1biAyMDAzLCAyMDoxNjo1MSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA1NTc4NzM0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0MTk1MDkKUS5lLmQuICBLZWluIE1lbnNjaCB3dWVyZGUgZGllc2VuIDI0LzcgUnl0aG11cyBhdWYgRGF1ZXIgZHVyY2hoYWx0ZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IEtyb21iYWNoZXIuLi4gKEFoYWIsIDE2LiBKdW4gMjAwMywgMjA6MTc6NDUpOgp+IyEgcm49Q3JvZnQgcnQ9MTA1NTc4NzQxMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0MTk1MDkKRWluIFBocmVhayBoYWx0IG9kZXIgd2llIG1hbiBzb3dhcyBqZXR6dCBuZW5udC4uLgoKQWhvaS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBLcm9tYmFjaGVyLi4uIChab29rLCAxNi4gSnVuIDIwMDMsIDIwOjE4OjAxKToKfiMhIHJuPUFoYWIgcnQ9MTA1NTc4NzQ2NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0MTk1MDkKSmEsIHNvIG5lbm50IG1hbiBkYXMuIAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBLcm9tYmFjaGVyLi4uIChDcm9mdCwgMTYuIEp1biAyMDAzLCAyMDoxOToxNCk6Cn4jISBybj1ab29rIHJ0PTEwNTU3ODc0ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDE5NTA5CkdpYnRzIGVpZ2VudGxpY2ggd2FzIGZ1ZXIgUmVeMTAwIG9kZXIgbWFjaGVuIHdpciBpbiBtZWdhKiB3ZWl0ZXI/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IEtyb21iYWNoZXIuLi4gKFpvb2ssIDE2LiBKdW4gMjAwMywgMjA6MTk6MzYpOgp+IyEgcm49Q3JvZnQgcnQ9MTA1NTc4NzU1NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU0MTk1MDkKTGV0enRlcmVzIHNjaGVpbnQgZXJnaWViaWdlci4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoQW1hcnlsbGlzLCAxNi4gSnVuIDIwMDMsIDIwOjIwOjAyKToKRm91bmQgdGhpcyBuZXdzOjQwajljYi1sYWsubG5AbGJkYjAxLmdzaS5kZSBpbiBkZS5yZWMudHYubWlzYzoKCkZyb206IEtsYXVzIEhvZXBwbmVyIDxrbGF1cy5ob2VwcG5lckBiaWdmb290LmRlPgpOZXdzZ3JvdXBzOiBkZS5yZWMudHYubWlzYwpTdWJqZWN0OiBSZTogW0FSRF0gUXVvdGUsIFF1b3RlLCBRdW90ZSEKRGF0ZTogVGh1LCAxMiBKdW4gMjAwMyAxMjowMDozNiArMDIwMApNZXNzYWdlLUlEOiA8NDBqOWNiLWxhay5sbkBsYmRiMDEuZ3NpLmRlPgoKCk1hcmNvIFNjaG1pZHQgPG1hcmNvc2NobWlkdEBnZW9jaXRpZXMuY29tPiB3cm90ZToKPiBWaWVsIGtyaXRpc2NoZXIgZmluZGUgaWNoIGRhLCBkYXNzIEZyaWVkbWFuIHN0YWVuZGlnIHBhdGhldGlzY2hlIEZyYWdlbgo+IHN0ZWxsdGUsIGRpZSBtZWhyIGdlZWlnbmV0IHNjaGllbmVuLCBCZWlmYWxsIHZvbSBQdWJsaWt1bSB6dQo+IGVyaGVpc2NoZW4sIGFscyB3aXJrbGljaCBpbmhhbHRsaWNoIGRhcyBHZXNwcmFlY2ggdm9yYW56dXRyZWliZW4uIEFscwo+IG9iIHouQi4gU2Nob2xsLUxhdG91ciBlcm5zdGhhZnQgZGFnZWdlbiB3YWVyZSwgZGFzcyBtYW4gc2ljaCBmdWVyCj4gdW50ZXJkcnVlY2t0ZSBWb2xrc2dydXBwZW4gZWluc2V0enQuCgpEYXMgUHJvYmxlbSBpc3QsIGRhc3MgRnJpZWRtYW5uIGVpZ2VudGxpY2ggZ2FyIG5pY2h0IGFuIEluaGFsdGVuCmludGVyZXNzaWVydCBpc3QuIEVyIG1vZWNodGUgSmEtTmVpbi1BdXNzYWdlbiwga2VpbmUgU3RhdGVtZW50cwoiSmEsIHdlaWwgLi4uIiBvZGVyICJOZWluLCB3ZWlsIC4uLiIgdW5kIGVyc3QgcmVjaHQga2VpbmUKIkphLCBhYmVyIC4uLiIgb2RlciAiTmVpbiwgYWJlciAuLi4iLgoKRWluIHR5cGlzY2hlciBEaWFsb2cgbWl0IEZyaWVkbWFubiB3YWVyZToKCkY6ICJXZWxjaGUgRmFyYmUgaGF0IGRpZSBXaWVzZT8iClg6ICJTaWUgaXN0IGdydWVuLiIKRjogIkFoYS4gU2llIGJlaGF1cHRlbiBhbHNvLCBkaWUgV2llc2UgaXN0IGdydWVuLiBXYXJ1bT8iClg6ICJEYXMgaGFlbmd0IG1pdCBkZW0gQ2hsb3JvcGh5bGwgenVzYW1tZW4sIGRhcyBzaW5kLi4uIgpGOiAiRGFzIG1vZWNodGUgaWNoIGpldHp0IGdhciBuaWNodCB3aXNzZW4uIFdlbm4gU2llIGJlaGF1cHRlbiwgZGllCiAgICBXaWVzZSBpc3QgZ3J1ZW4sIHdpcmQgc2llIGRhbm4gaW1tZXIgZ3J1ZW4gYmxlaWJlbj8iClg6ICJEYXMgaGFlbmd0IG5hdHVlcmxpY2ggdm9uIGRlciBFdm9sdXRpb24gYWIsIGFiZXIgZGFzIGlzdCBhdWYgZWluZXIKICAgIFplaXRza2FsYSB2b24gTWlsbGlvbmVuIHZvbi4uLiIKRjogIkJsZWlidCBkaWUgV2llc2UgZ3J1ZW4sIGphIG9kZXIgbmVpbj8iClg6ICJXaWUgc29sbCBpY2ggZGVuIHdpc3Nlbiwgd2llIHNpY2ggZGllIEV2b2x1dGlvbi4uLiIKRjogIk51biBnZWJlbiBTaWUgbWlyIGRvY2ggZW5kbGljaCBlaW5lIGtsYXJlIEFudHdvcnQuIEVyc3Qgc2FnZW4gU2llLAogICAgZGllIFdpZXNlIGlzdCBncnVlbiwgdW5kIG51biBnaWx0IGRhcyBudXIgZnVlciBkZW4gQXVnZW5ibGljaz8iClg6ICJEaWUgbmFlY2hzdGVuIEphaHJ6ZWhudGUgYmxlaWJ0IGRpZSBXaWVzZSBzaWNoZXIgZ3J1ZW4uIgpGOiAiQWhhLiBVbmQgd2VubiBtYW4gU2llIGJsYXUgYW5tYWx0PyIKWDogIldhcyBzb2xsIGRlbm4gZGVyIEJsb2Vkc2lubj8iCkY6ICJJY2ggc3RlbGxlIGhpZXIgZGllIEZyYWdlbiwgYWxzbyBhbnR3b3J0ZW4gU2llLiIKWDogIlVudGVyIGRlciBGYXJiZSBpc3QgZGllIFdpZXNlIGltbWVyIG5vY2ggZ3J1ZW4uIgpGOiAiSWNoIHNlaGUsIFNpZSB3ZWlnZXJuIHNpY2gsIGRpZSBGcmFnZSB6dSBiZWFudHdvcnRlbi4gQWJlciB3ZW5uIGljaAogICAgaWNoIGRpZSBXaWVzZSBhdWYgRmFzdC1MaWNodGdlc2Nod2luZGlna2VpdCBiZXNjaGxldW5pZ2UsIGlzdCBzaWUKICAgIGRhbm4gaW1tZXIgbm9jaCBncnVlbj8iClg6ICJOZWluLCBkYW5uIHRyaXR0IGVpbmUgRnJlcXVlbnp2ZXJzY2hpZWJ1bmcgZGVzIExpY2h0cyBhdWYsIHVuZCBzaWUKICAgIGtvZW5udGUgei5CLiByb3Qgc2Vpbi4iCkY6ICJBaGEuIERpZSBXaWVzZSBpc3QgYWxzbyByb3QuIFZpZWxlbiBEYW5rLiBOYWVjaHN0ZSBXb2NoZSBiZWkKICAgIEdhYmkgQmF1ZXIuLi4iCgpLbGF1cwoKU2VociBndXQgZ2V0cm9mZmVuLCBtZWludCwKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IEtyb21iYWNoZXIuLi4gKERhcmtsb3IsIDE2LiBKdW4gMjAwMywgMjA6Mjc6NTYpOgp+IyEgcm49TXVhZGliIHJ0PTEwNTU3ODczNDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1NDE5NTA5CkJpc3QgamEgYXVjaCBNYWdpZXIuLi4KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXRkaWdlc3QgbWFsIHdpZWRlci4uLiAoVmFuaW9uLCAxNi4gSnVuIDIwMDMsIDIyOjI2OjIyKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDU1Nzg3NjAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTc4NzYwMgpJY2ggaGFiIGhldXQgYXVjaCBlaW5lbiAuLi4KLS0KRnJvbTogUGV0ZXIgTWFpd2FsZCA8bmV3c2dyb3VwQHBldGVyc3dlYi5tZWdhLm5ldC5rZz4KU3ViamVjdDogUmU6IEthbnV0b3VyIGltIFl1a29uCk5ld3Nncm91cHM6IGRlLnJlYy5vdXRkb29ycwoKIkdyYXJkIEFuZHJlcyIgPGdlcmFyZC5hbmRyZXNAd2FuYWRvby5mcj4gc2NocmllYjoKCgo+PiBXaWUgc3RlaHQgZXMgbWl0IGRlbiBCcmVuLiBIYXQgamVtYW5kIEVyZmFocnVuZyBtaXQgZGllc2UgVGllcmUKPj5pbiBkaWVzZXIgR2VnZW5kLiBEYW5rZSBmfHIgSWhyZSBBdXNrdW5mdC4KPj4KCgpXZWlsIGluIGxldHp0ZXIgWmVpdCBkaWUgQmVnZWdudW5nIG1pdCBHcml6emx5IEJyZW4gdW5kIFRvdXJpc3RlbgpkcmFzdGlzY2ggenVnZW5vbW1lbiBoYXQsIGdpYnQgZGFzIFRvdXJpc211cy1CfHJvIHZvbiBLYW5hZGEgZm9sZ2VuZGUKV2FybnVuZyBhbiBXYW5kZXJlciwgRmlzY2hlciB1bmQgamVkZW4sIGRlciBpbiBkZXIgV2lsZG5pcwpoZXJ1bXN0cmVpZnQsIGhlcmF1czogV2lyIHJhdGVuIGFsbGVuLCBrbGVpbmUsIGxhdXRlIEdsY2tjaGVuIGFuIGRlcgpLbGVpZHVuZyB6dSB0cmFnZW4sIGRhbWl0IEJyZW4gbmljaHQgYXVmZ2VzY2hyZWNrdCB3ZXJkZW4sIHdlbm4gbWFuCnNpY2ggaWhuZW4gbmhlcnQuIFdpciByYXRlbiB3ZWl0ZXIsIGVpbmUgUGZlZmZlcnNwcmF5LURvc2UgbWl0IHNpY2gKenUgdHJhZ2VuLCB1bSBkZW4gQnJlbiBkYW1pdCBhYnp1d2VocmVuLiBWb3IgYWxsZW0gc29sbHRlIG1hbiBpbW1lcgpuYWNoIEJyZW5ha3Rpdml0dGVuIEF1c3NjaGF1IGhhbHRlbi4gRGF6dSBpc3QgZXMgd2ljaHRpZywgZGFzcyBtYW4KZGVuIEtvdCB2b24gU2Nod2FyemJyZW4gdW5kIEdyaXp6bHktQnJlbiB1bnRlcnNjaGVpZGVuIGthbm4uClNjaHdhcnpicmF1bmJyZW4tS290IGlzdCBrbGVpbmVyIHVuZCBlcyBiZWZpbmRlbiBzaWNoIHZpZWxlIEJlZXJlbgp1bmQgRWljaGhybmNoZW5mZWxsIGRhcmluLiBHcml6emx5LUtvdCBoYXQga2xlaW5lIEdsY2tjaGVuIGRhcmluIHVuZApyaWVjaHQgbmFjaCBQZmVmZmVyLgoKClRzY2h1bGRpZ3VuZyBhYmVyIGljaCBrb25udGUgbmljaHQgd2lkZXJzdGVoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIFZlcnN0YWVuZGxpY2ggOikgKFRoYW50YWxhcywgMTcuIEp1biAyMDAzLCAwMDozNzoxOCk6Ck1vcmRpbGxhciBrb21tdCBoZXJlaW4gdW5kIHZlcmt1ZW5kZXQgd2FzIHZvbiBlaW5lciBQYXJ0eS4KTW9yZGlsbGFyIGZyZXV0IHNpY2gsIGRhIEFsa29ob2wgc2ljaCBhdWNoIHNjaG9uIGFuZ2VtZWxkZXQgaGF0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJpdHRlIHZvcmhlciB6d2VpIFdlaXplbiBlaW5mdWVsbGVuLi4uIChSb25kYSwgMTcuIEp1biAyMDAzLCAwMDozODozOCk6Ci4uLiBkYW5uIGlzdCBkaWVzZXIgaGllciBhdXMgZGUuYWx0Lm5ldGRpZ2VzdCBzY2hvbiBuZXR0LgoKUm9uZGEKCkZyb206IERhdmlkIEthc3RydXAgPGRha0BnbnUub3JnPgpOZXdzZ3JvdXBzOiBkZS5zY2kubWF0aGVtYXRpawpTdWJqZWN0OiBSZTogSW50ZWdyYWwgZGlza3JldApEYXRlOiAxMSBKdW4gMjAwMyAxMzozNToyMCArMDIwMApNZXNzYWdlLUlEOiA8eDV5OTA4NHprNy5mc2ZAbG9sYS5nb2V0aGUueno+Cgphbm9ueW0xMkB5YWhvby5jb20gKFJ1ZG9sZiBNdWVsbGVyKSB3cml0ZXM6Cgo+IFdhbm4gaXN0IGVpbiBJbnRlZ3JhbCBkaXNrcmV0PwoKV2VubiBlcyBuaWNodCBkYW1pdCBoZXJ1bXByYWhsdCwgd2VsY2hlIEZ1bmt0aW9uZW4gZXMgc2Nob24gYWxsZQpmbGFjaGdlbGVndCBoYXQgKG1laXN0ZW5zIHdlcmRlbiBkaWUgb2huZWhpbiBlaGVyIGF1ZmdlYnJhY2h0LCBhYmVyCm1hbmNobWFsIGdpYnQgZXMgamEgYmVpIHNvd2FzIHdpZSBleHAoMngpIEFjaHR1bmdzZXJmb2xnZSkuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJpdHRlIHZvcmhlciB6d2VpIFdlaXplbiBlaW5mdWVsbGVuLi4uIChSb25kYSwgMTcuIEp1biAyMDAzLCAwMDo0MTowMik6Cn4jISBybj1Sb25kYSBydD0xMDU1ODAzMTE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTgwMzExOAouLi4gc2NoaWVidCBtZWluZW4gZXR3YXMgdmVyc2Nob2JlbmVuIFNpbm4gZnVlciBIdW1vciBiaXR0ZSB3aWVkZXJ1bSBhdWYgendlaQpGcmFuemlza2FuZXIgKGR1bmtlbCkuLi4gbG9naXNjaDogZGUuYWx0Lm5ldGRpZ2VzdC4KClJvbmRhCgpbU046IFF1b3RpbmcgZXJnYWVuenRdCgpGcm9tOiAiTWFXaW4iIDxtYXdpbkBnbXgubmV0PgpTdWJqZWN0OiBSZTogU3Bhbm51bmdzd2FuZGxlciAxMlYgREMgLyAyMzBWIEFDCk5ld3Nncm91cHM6IGRlLnNjaS5lbGVjdHJvbmljcwpEYXRlOjE0IEp1biAyMDAzIDE3OjU2OjIzIEdNVApNZXNzYWdlLUlEOiA8MDFjMzMyOWUkN2E3N2QwYzAkMDEwMDAwN2ZAYW1kazYtMzAwPgoKQ2hyaXN0aWFuIEd1ZW50aGVyIDxzcGFtQGNoLWd1ZW50aGVyLmRlPiBzY2hyaWViIGltIEJlaXRyYWcgCj5pY2ggYmluIHouWnQuIGF1ZiBkZXIgU3VjaGUgbmFjaCBlaW5lbSBTcGFubnVuZ3N3YW5kbGVyIGZ1ZXIncyBBdXRvCj4oWmlnYXJldHRlbmFuenVlbmRlcikuIEVyIHNvbGx0ZSB2b24gMTJWIERDIGF1ZiBkYXMgU3RhbmRhcmQtTmV0eiAoMjMwViwKPjUwSHopIHdhbmRlbG4ga29lbm5lbi4KPkRhcyBiaWxsaWdzdGUsIHdhcyBpY2ggYmlzIGpldHp0IGdlZnVuZGVuIGhhYmUsIGlzdCBlaW4gV2FuZGxlciBiZWkKPkNvbnJhZCBmdWVyIDQwIEV1cm8sIHdhcyBtaXIgbm9jaCByZWNodCBob2NoIHZvcmtvbW10LiBSZWljaGVsdCB1bmQKPlBvbGxpbiBlcmdhYmVuIG5pY2h0cyBiZXNzZXJlcy4KPiAKPiBLYW5uIG1pciBldnRsLiBqZW1hbmQgdm9uIEV1Y2ggZWluZW4gYmVzc2VyZW4gVGlwIGdlYmVuPwoKS2xhci4gQmlsbGlnZXIgaXN0IGVzLCAxOSBBdXRvcyBpbiBSZWloZSB6dSBzY2hhbHRlbiB1bmQKNTAgbWFsIHBybyBTZWt1bmRlIGRlbiBTdGVja2VyIHVtenVkcmVoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCZXppZWh1bmdlbi4uLiAoVGhhbnRhbGFzLCAxNy4gSnVuIDIwMDMsIDE2OjAwOjQxKToKRGVpbiBWZXJsb2J1bmdzcmluZyBsZXVjaHRldCBhdWYuIER1IGxpZXN0OiBLYXJpbWEgaXN0IG51biBkYSEKClNwb250YW4gdHJpbmtzdCBkdSAxNiBGbGFzY2hlbiBTY2h1ZXR0ZWxiaWVyIGF1cy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5lZCB3aXJrbGljaCBmYWlyLi4uIChHcmltbWJvcm4sIDE3LiBKdW4gMjAwMywgMTk6Mjk6NDUpOgp+IyEgcm49TGVpYmkgcnQ9MTA1NTg3MDgwOCByZz13d3cKfiMhIHRpZD0xMDU1ODYyNjEwClN0aW1tdC4gRGllIEZyYWdlIGlzdCBudXI6IFdvenU/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVtIGRhcyBOaXZlYXUgenUgd2FocmVuOiBkZS5hbHQubmV0ZGlnZXN0Li4uIChSb25kYSwgMTguIEp1biAyMDAzLCAwMDozOTowMyk6CkFubWVya3VuZzogU2Nob24gTWFsZXIgaGF0dGUgZXMgbWl0IGRlbiBTdHJlaWNoZXJuLgoKRnJvbTogVm9sa2VyIEdyaW5nbXV0aCA8ZWlua2xpY2hAZ214Lm5ldD4KTmV3c2dyb3VwczogZGUucmVjLm11c2lrLm1hY2hlbgpTdWJqZWN0OiBSZTogW3RhbGtdIFN0cmVpY2hxdWludGV0dApEYXRlOiBNb24sIDE2IEp1biAyMDAzIDEzOjE5OjMyICswMjAwCk1lc3NhZ2UtSUQ6IDxiY2tnNTMuM3ZnODk5My4xQGgxLmVpbmtsaWNoLm5ldD4KClRob21hcyBXaWVkZW1laWVyIChlc3RhbXBpZUBnbXgubmV0KSB3cm90ZToKPj4+IFdlbGNoZSBCZXNldHp1bmc/Cj4+Cj4+IDEgc2NobWFsZXIgUGluc2VsLCAyIG1pdHRlbGJyZWl0ZSBQaW5zZWwsIDEgUXVhc3QsIDEgRmFyYnJvbGxlci4KPgo+IEZhcmJyb2xsZXI/Cj4gRGFzIGlzdCBqYSBlaW4gdm9lbGxpZyBpbmhvbW9nZW5lciBTYXR6LgoKRHUgaGFzdCByZWNodCwgYWJlciB3aXIga29ubnRlbiBrZWluZW4gQmFzc3F1YXN0IGluIEVzIGF1ZnRyZWliZW4uCkJyYXVjaGVuIHdpciBhYmVyIGJlaW0gVG9udW1mYW5nIHVuc2VyZXIgV2FuZGZhcmJlbi4gV2VubiBtYW4gZGVuCkZhcmJyb2xsZXIgaW4gZWluZW4gc2VociBncm9zc2VuIEZhcmJlaW1lciBlaW50YXVjaHQsIGRhbm4gZXJyZWljaHQgZXIKZGllc2UgVGllZmUgYXVjaCwgZGVja3QgYWJlciB6dWdlZ2ViZW5lcm1hc3NlbiBzZWhyIGR1ZW5uIHVuZCBldHdhcyByYXVoLgoKQmV0cmFjaHRlIGVzIGFscyBOb3Rsb2VzdW5nLCBhZWhubGljaCB3aWUgQ2VsbG8tc3RhdHQtR2FtYmUgZnVlciBiLmMuIC0Ka2VubnN0IGR1IHp1ZmFlbGxpZyBlaW5lbiBFcy1CYXNzcXVhc3Rpc3Rlbj8KCkRhZnVlciBoYWJlbiB3aXIgdWVicmlueCBtaXR0ZWxicmVpdGUgUGluc2VsIGluIERlZiB1bmQgQmVmLCBsZXR6dGVyZXIKbWl0IEJvZWhtc2NoZW0gQm9yc3RlbnN5c3RlbS4gRGFzIGtsaW5ndCBjb2xsYSBwYXJ0ZSBzZWhyIHNjaG9lbiBydW5kLgoKPiBJY2ggZmluZCBlcyBzZWhyIHNjaGFkZSwgZGFzIGlociBzbyB3ZW5pZyBXZXJ0IGF1ZiBoaXN0b3Jpc2NoCj4gaW5mb3JtaWVydGUgQXVmZnVlaHJ1bmdzcHJheGlzIGxlZ3QuIERhIGtvZW5udCBpaHIgamEgZ2xlaWNoIG1pdAo+IER1bHV4IGZlc3RlIEZhcmJlIGVpbmVuIERpc2NvLUJlYXQgZHJ1bnRlcmxlZ2VuLgoKPHNjaGFlbT4KICBEaWUgSWRlZSBoYXR0ZW4gd2lyIHRhdHNhZWNobGljaCwgYWJlciBpY2ggd2FyIGF1Y2ggZGFnZWdlbi4KPC9zY2hhZW0+CgoKdkcsIHRhZ2dlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkV0d2FzIHplcnN0b2VyZXJpc2NoLCB0cm90emRlbSBkZS5hbHQubmV0ZGlnZXN0IChSb25kYSwgMTguIEp1biAyMDAzLCAwMDo0NDozNyk6CgpNZXNzYWdlLUlEOiA8YmNrbzRwJGtkOGRtJDFASUQtNjI2NzYubmV3cy5kZm5jaXMuZGU+ClN1YmplY3Q6IFJlOiBQYWghIEFkbWlucyEKRGF0ZTogMTYgSnVuIDIwMDMgMTU6MzU6NTMgR01UCkZyb206IFRob21hcyAtQmFsdS0gV2FsdGVyIDxuZXRuZXdzQGItYS1sLXUuZGU+Ck5ld3Nncm91cHM6IGRlLmFsdC5zeXNhZG1pbi5yZWNvdmVyeQoKTWF4aW1pbGlhbiBXaWxoZWxtIHdyb3RlOgo+IEFuZHJlYXMgS3JleSBodWIgZm9sZ2VuZGVzIGluIGRpZSBUYXN0ZW4uLi4KPiA+IFNlYmFzdGlhbiBQb3NuZXIKPiA+ID4gU2VsYmlnZXMgZmluZGUgaWNoIHdlbmlnZXIgYW5ydWVjaGlnIGFscyBCZXRyaWVic2VsZWt0cmlrZXIsIGRpZSBhdXMKPiA+ID4gRHVtbWhlaXRbMF0vRmF1bGhlaXRbMV0gZ3J1ZW4tZ2VsYiBhbHMgZ2VzY2hhbHRldGUgUGhhc2UgdmVyd2VuZGVuLi4uCj4gPgo+ID4gIEdhY2suIE1vZWdlbiBzaWUgc2ljaCBzZWxic3QvZ2VnZW5zZWl0aWcgZGFtaXQgbGFydGVuLgo+Cj4gIFNvd2FzIGhhYiBpY2ggaGllciB6dSBIYXVzZSB2b3JnZWZ1bmRlbi4uLgo+ICBHdXQsIGRhc3ogZGFzIG51ciBuZSBHbHVlaGJpcm5lIHdhci4uLgo+Cj4gIEljaCB3ZWlzcyBsZWlkZXIgbmljaHQsIHdlciBkYXMgdmVyYm9ja3QgaGF0LiA6LSgKClVuZCBkYW5uIHdhciBkYSBub2NoIGRpZXNlIGtsZWluZSB1bnNjaGVpbmJhcmUgMTB4MTAgRG9zZSBpbiBlaW5lbSBuZXUKZWluenVyaWNodGVuZGVtIEJ1ZXJvIHVudGVybSBUaXNjaC4gQXVmZ2VtYWNodCwgcmVpbmdlc2NoYXV0IC0gYWggendlaQozeDEuNV4yIEthYmVscy4gUGhhc2VucHJ1ZWZlciByYXVzLCAodW5iZXNjaHJpZnRldGUgU2ljaGVydW5nZW4gZ2VzdWNodCkKdW5kIGRlciBSZWloZSBuYWNoIHNvIGxhbmdlIGVpbmdlc2NoYWx0ZXQsIGJpcyBkaWUgUGhhc2UgUGhhc2Ugd2FyLgpNZWhyZmFjaHN0ZWNrZXIgZ2Vub21tZW4sIFN0ZWNrZXIgYWIsIEthYmVsIGRyYW4sIENvbXB1dGVyIGRyYW4sClNpY2hlcnVuZyBhbiAobmF0dWVybGljaCB2b3JoZXIgd2llZGVyIGF1c2dlc2NoYWx0ZXQpLgoKSG0uIFR1dCBuaWNodD8KVmllbGxlaWNodCBkb2NoIGJlaSBkZXIgU2ljaGVydW5nIHZlcnRhbj8KRGFuZWJlbiBsaWVnZW5kZSBTaWNoZXJ1bmcgYW4uCipwZmZycnR0KiBLQVdBWlpaClNpY2hlcnVuZ2VuIHdpZWRlciByYXVzIChhdXRvbWF0aXNjaCk/CgooU2NocmVpZSB2b24gaGludGVuKSAtIGFoaCwgd2FzIG1hY2hzdCBEdSBkYT8gRGVpbiBDb21wdXRlciBicmVubnQgdW5kCmRlciBNb25pdG9yIHF1YWxtdC4KCkh1Y2guCgogICAgIEJhbHUKUFM6IEphLCBlcyB3YXIgZWluZSBIZXJkYW5zY2hsdXNzZG9zZSwgYmVpIGRlciBtYW4gZWluZmFjaCBtYWwgc28gendlaQpkcmVpYWRyaWdlIEthYmVsIGdlbm9tbWVuIGhhdCwgaWhuZW4gamV3ZWlscyBvcmRlbnRsaWNoIGVpbmUgTHVlc3RlcmtsZW1tZQpzcGVuZGllcnRlIHVuZCBlcyBzbyBhdXNzaWVoZW4gbGllc3MsIGFscyB3YWVyZW4gZXMgZ2FueiBlaW5mYWNoIHp3ZWkKS2FiZWwuIEFiZXIgbmVpbi4gRXMgc29sbHRlIGVpbmUgZHJlaXBoYXNpZ2UgSGVyZGFuc2NobHVzc2Rvc2Ugc2Vpbi4KT2huZSBLZW5uemVpY2hudW5nLiBBYmVyIGRhZnVlciBtaXQgZWluZXIgc2Nob2VuZW4gUGhhc2UgYXVmIGVpbmVtCnNjaG9lbmVuIGJsYXVlbiBLYWJlbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMYXV0c3RhZXJrZSBlaW5lcyBNUDMtRmlsZXMgYWVuZGVybiAoR3JpbW1ib3JuLCAxOC4gSnVuIDIwMDMsIDEyOjIyOjU2KToKfiMhIHJuPVZhcmRpb24gcnQ9MTA1NTkzMTU1MCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDU1OTMxNTUwCkFsc28sIGJlaSBtaXIgc2luZCBlaWdlbnRsaWNoIGFsbGUgRGF0ZWllbiBhbGxlciBBcnRlbiB6aWVtbGljaCBzZWhyIGxlaXNlLCB1bQpuaWNodCB6dSBzYWdlbiB1bmhvZXJiYXIuIEljaCBoYWJlIGpldHp0IGVpbmUgRmVzdHBsYXR0ZSwgZWluZSBDRCB1bmQgZWluZQpmbG9wcHkgYW5zIE9ociBnZWhhbHRlbiwgZGEgaG9lciBpY2ggbml4LgpWaWVsbGVpY2h0IHN1Y2hzdCBEdSBkZW4gTGF1dHN0YWVya2VyZWdsZXIgRGVpbmVyIEFic3BpZWxzb2Z0d2FyZT8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBMYXV0c3RhZXJrZSBlaW5lcyBNUDMtRmlsZXMgYWVuZGVybiAoVGFuZ2FsdXIsIDE4LiBKdW4gMjAwMywgMTI6MjY6MjEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTU5MzE3NzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTMxNTUwCnNlbGJzdCB6dW0gYW5ob2VyZW4gbXVzcyBkYXMgRmlsZSBkZWNvZGllcnQgd2VyZGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBMYXV0c3RhZXJrZSBlaW5lcyBNUDMtRmlsZXMgYWVuZGVybiAoR3JpbW1ib3JuLCAxOC4gSnVuIDIwMDMsIDEyOjI4OjM5KToKfiMhIHJuPVRhbmdhbHVyIHJ0PTEwNTU5MzE5ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTMxNTUwCkRhcyBpc3QgcmljaHRpZywgYWJlciBuaWNodCBhbnNjaGxpZXNzZW5kIHdpZWRlciBlbmNvZGllcnQgd2VyZGVuLiBadW1pbmRlc3QKaW50ZXJwcmV0aWVyZSBpY2ggZGFzICJ1bmQiIHNvLCBkYXNzIGVyIGVpbmUgTWV0aG9kZSBzdWNodCB3byBlciBuaWNodAoqYmVpZGVzKiBtYWNoZW4gbXVzcy4KQW5zb25zdGVuLCByZWluIGdlbmVyZWxsLCBicmF1Y2h0IG1hbiBmdWVyICJjYXQgZmlsZS5tcDMgPiAvZGV2L2F1ZGlvIiBuaWNodAp2aWVsIHp1IGRlY29kaWVyZW4uIEtsaW5ndCBhYmVyIG5pY2h0IHNvIGRvbGwsIGRhIGhvZXJ0IHNpY2ggaXJnZW5kd2llIGFsbGVzCm5hY2ggVGVjaG5vIG9kZXIgc28gYW4uIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBMYXV0c3RhZXJrZSBlaW5lcyBNUDMtRmlsZXMgYWVuZGVybiAoVGFuZ2FsdXIsIDE4LiBKdW4gMjAwMywgMTI6MzU6MTYpOgp+IyEgcm49VGFuZ2FsdXIgcnQ9MTA1NTkzMTk4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU5MzE1NTAKZ2VuYXUgISBJcmdlbmR3aWUgbXVzcyBkYXMgRmlsZSB2b24gZGVyIGRpZ2l0YWxlbiBGb3JtIGluIGRpZSBhbmFsb2dlIEZvcm0KZ2VicmFjaHQgd2VyZGVuLiAKU29uc3QgaG9lcnQgZXMgc2ljaCB3aWUgVGVjaG5vIGFuLgoKS2FubiBtYW4gZWluZSBGaWxlIGF1Y2ggYW5hbG9nIGF1ZiBlaW5lciBGZXN0cGxhdHRlIHNwZWljaGVybiA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBMYXV0c3RhZXJrZSBlaW5lcyBNUDMtRmlsZXMgYWVuZGVybiAoR3JpbW1ib3JuLCAxOC4gSnVuIDIwMDMsIDEyOjM1OjUxKToKfiMhIHJuPVRhbmdhbHVyIHJ0PTEwNTU5MzI1MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTMxNTUwCkFiZXIgc2ljaGVyLiBOZW5udCBzaWNoIGRhbm4gU2NoYWxscGxhdHRlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBMYXV0c3RhZXJrZSBlaW5lcyBNUDMtRmlsZXMgYWVuZGVybiAoVGFuZ2FsdXIsIDE4LiBKdW4gMjAwMywgMTI6NTA6MjIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTU5MzI1NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTMxNTUwCk1hbCBzbyBuZWJlbmJlaSBiZW1lcmt0OgoKRWdhbCBvYiBtYW4gZGFzIEZpbGUgbnVuIGluIGVpbmUgV0FWIERhdGVpIHdhbmRlbHQgKGRpZSB1ZWJyaWdlbnMgYXVjaCBpbgpkaWdpdGFsZXIgRm9ybSB2b3JsaWVndCkgb2RlciBlaW5mYWNoIG51ciBhbSBMYXV0c3RhZXJrZXJlZ2xlciBkcmVodC4gRGllCnZlcm1pc3N0ZW4gQXVkaW9pbmZvcm1hdGlvbmVuIChoaWVyIGRpZSBMYXV0c3RhZXJrZSkga29lbm5lbiBuaWNodCBoaW56dQplcmZ1bmRlbiB3ZXJkZW46IFNwcmljaCBlcyB3aXJkIHNvIG9kZXIgc28gcmF1c2NoZW4sIHdlbm4gbmljaHQgbm9jaApTY2hsaW1tZXJlcyBwYXNzaWVydC4gKGFlaG5saWNoIGlzdCBkYXMgYXVjaCBiZWkgei5CLiBmZWhsZW5kZW4gSG9laGVuKS4KCk1pciBzYWd0ZSBtYWwgamVtYW5kIGRlciBzaWNoIGRhbWl0IGF1c2tlbm50OiBFaW5lIHNjaGxlY2h0ZSBBdWZuYWhtZSBibGVpYnQKZWluZSBzY2hsZWNodGUgQXVmbmFobWUuIEFsc28gaW1tZXIgZnVlciBndXRlcyBBdXNnYW5nc21hdGVyaWFsIHNvcmdlbiAhIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTGF1dHN0YWVya2UgZWluZXMgTVAzLUZpbGVzIGFlbmRlcm4gKFZhcmRpb24sIDE4LiBKdW4gMjAwMywgMTI6NTM6MzYpOgp+IyEgcm49VGFuZ2FsdXIgcnQ9MTA1NTkzMzQyMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU5MzE1NTAKKmdybXBmKiBXYXMgbWFuIGFsbGVzIHp1bSBQcm9ibGVtIGRpc2t1dGllcmVuIGthbm4uLi4KCkljaCBoYWIgZWluZmFjaCBtZWhyZXJlIEZpbGVzIG1pdCBncm9iIHVudGVyc2NoaWVkbGljaGVyIExhdXRzdGFlcmtlLCB2b24KZGVuZW4gaWNoIG1vZWNodGUsIGRhc3Mgc2llIGFsbGUgZXR3YSBnbGVpY2ggbGF1dCBrbGluZ2VuLgpOYXR1ZXJsaWNoIGtvbW1lbiBkYSBrZWluZSBJbmZvcm1hdGlvbmVuIGRhenUsIGFiZXIgaWNoIG11c3MgbmljaHQgbWVociBiZWkKamVkZW0gRmlsZSBhbSBMYXV0c3RhZXJrZXJlZ2xlciBkcmVoZW4uLi4KClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IExhdXRzdGFlcmtlIGVpbmVzIE1QMy1GaWxlcyBhZW5kZXJuIChEZWVwYmx1ZSwgMTguIEp1biAyMDAzLCAxMjo1NjoxMik6Cn4jISBybj1WYXJkaW9uIHJ0PTEwNTU5MzM2MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTMxNTUwCnZhcmRpb246IE1hbiB3ZWlzcyBlaW5mYWNoIGtlaW5lIEFudHdvcnQgYXVmIERlaW5lIEZyYWdlLCB3aWxsIGFiZXIgbmljaHQKc2Nod2VpZ2VuLiBBbHNvIGZhZW5ndCBtYW4gZWluZSBFcnNhdHpkaXNrdXNzaW9uIGFuLgpEZWVwLCBsZWlkZXIgaW4gZGVyIGVpZ2VudGxpY2hlbiBTYWNoZSBhdWNoIHVlYmVyZnJhZ3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBMYXV0c3RhZXJrZSBlaW5lcyBNUDMtRmlsZXMgYWVuZGVybiAoQW50aGVhLCAxOC4gSnVuIDIwMDMsIDEyOjU5OjMzKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwNTU5MzM3NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTMxNTUwCkVzIGtvZW5udGUgYXVjaCBmb2xnZW5kZSBTaXR1YXRpb24gdm9yc3RlbGxiYXIgc2VpbjoKRXMgX2dpYnRfIGVpbmZhY2gga2VpbmUgTG9lc3VuZyBmdWVyIGRhcyBQcm9ibGVtLiBNUDMgaXN0IGphIGtlaW4gTUlESSwgZGFzCmVpbmUgZWlnZW5lIExhdXRzdGFlcmtlc3B1ciBoYXQuIEVzIHNpbmQga29tcHJpbWllcnRlIGtvbmtyZXRlIGRpZ2l0YWxlIFdlcnRlLAp1bmQgZHVyY2ggZGllIERla29kaWVydW5nIHdlcmRlbiBkaWUgc28gd2llZGVyIGhlcmdlc3RlbGx0LiBFaW5lCkxhdXRzdGFlcmtlYWVuZGVydW5nIG9obmUgUmUtS29kaWVydW5nIGlzdCBuaWNodCBtb2VnbGljaC4gQWJlciBtYW4gaGF0IGphCnNjaG9uIGdhbnogYW5kZXJlIFNhY2hlbiBhbHMgVm9yd2FuZCBmdWVyIGVpbmUgc2VsdHNhbWUgRGlza3Vzc2lvbiBoaWVyCmdlbm9tbWVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBMYXV0c3RhZXJrZSBlaW5lcyBNUDMtRmlsZXMgYWVuZGVybiAoVGFuZ2FsdXIsIDE4LiBKdW4gMjAwMywgMTM6MDc6MTUpOgp+IyEgcm49QW50aGVhIHJ0PTEwNTU5MzM5NzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTMxNTUwCkJpbiBrZWluIFRvbnRlY2huaWtlcjoKCkRlciBWb3JnYW5nIG5lbm50IHNpY2ggTm9ybWFsaXNpZXJlbjogRGFzIGhlaXNzdCBpbiBlaW5lbSBNdXNpa3N0Y2sgd2lyZCBkaWUKbGF1dGVzdGUgU3RlbGxlIGdlc3VjaHQgdW5kIGRpZXNlIGF1ZiAwIGRiIG9kZXIgd2VubiBnZXd1ZW5zY2h0IG1laHIgc2thbGllcnQuCkFuaGFuZCBkaWVzZXMgU2thbGllcnVuZ3NmYWt0b3JzIHdpcmQgZGFubiBkaWUgTGF1dHN0cmtlIGRlcyBTdHVlY2tlcwphbmdlcGFzc3QuIE1hbiBrYW5uIGF1Y2ggZ2V6aWVsdCBsZWlzZSBTdGVsbGVuIGFuaGViZW4sIHdvYmVpIGFiZXIgZGllCmdld29sbHRlIER5bmFtaWsgdmVybG9yZW4gZ2VodCAod2lyZCBoZXV0ZSBsZWlkZXIgc2VociBvZnQgZ2VtYWNodCwgd2VubiB6LkIuCmVpbiB0cmFnYmFyZXIgQ0QgU3BpZWxlciBlaW5lIGJvb3N0IEZ1bmt0aW9uIGJlc2l0enQsIGthbm4gYXVjaCBhbmRlcnMKaGVpc3Nlbik6IERlciBFZmZla3QgaXN0OiBhbGxlcyBrbGluZ3QgZ2xlaWNoIExhdXQgdm9tIGRlbSB0aGVvcmV0aXNjaGVtCkR5bmFtaWt1bWZhbmcgZWluZXIgQ0Qgdm9uIDk2IGRiIGJsZWliZW4gZGFubiBub2NoIDEwIGJyaWcuCgpDb29sIEVkaXQga2FubiB6LiBCLiBub3JtYWxpc2llcmVuLCBqZWRlIGFuZGVyZSBndXRlIEF1ZGlvIFNvZnR3YXJlIGF1Y2guIEFiZXIKaW4gZGVyIFJlZ2VsIHVlYmVyIGRhcyBXQVYgRm9ybWF0LiBBbHNvIGVpbm1hbCBhbGxlIGdld25zY2h0ZW4gRGF0ZWllbiBwZXIKQmF0Y2ggbm9ybWFsaXNpZXJlbiBsYXNzZW4gdW5kIGRhbm4gd2llZGVyIGluIG1wMyB3YW5kZWxuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IExhdXRzdGFlcmtlIGVpbmVzIE1QMy1GaWxlcyBhZW5kZXJuIChUYW5nYWx1ciwgMTguIEp1biAyMDAzLCAxMzoxMDo1OSk6Cn4jISBybj1WYXJkaW9uIHJ0PTEwNTU5MzQ0NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTMxNTUwCm9rIG9rIGRhcyB3YXIgdmVybXV0bGljaCBhdWNoIGRlIEZyYWdlLiBIaWVyIHdpcmQgZGlyZWt0IGltIGNvZGllcnRlbSBGaWxlCmdld2Vya2VsdC4gV2FlcmUgenUgdGVzdGVuIHdpZSBlcyBzaWNoIG5hY2hlciBhbmhvZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IExhdXRzdGFlcmtlIGVpbmVzIE1QMy1GaWxlcyBhZW5kZXJuIChaYXJuaXlhLCAxOC4gSnVuIDIwMDMsIDE0OjU4OjQ1KToKfiMhIHJuPVRhbmdhbHVyIHJ0PTEwNTU5MzQ2NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTMxNTUwCnNlbGJzdCBkZXIgcGxvZWRlIGF1ZGlvZWRpdG9yIHZvbiBORVJPIGthbm4gbm9ybWFsaXNpZXJlbi4uLiBhdWNoIE1QM3MuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IExhdXRzdGFlcmtlIGVpbmVzIE1QMy1GaWxlcyBhZW5kZXJuIChUYW5nYWx1ciwgMTguIEp1biAyMDAzLCAxNTo0NDozMCk6Cn4jISBybj1aYXJuaXlhIHJ0PTEwNTU5NDExMjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTMxNTUwCkRpZSBGcmFnZSBpc3Q6IFdpcmQgZGllIERhdGVpIGRhenUgZGVrb2RpZXJ0IG9kZXIgbmljaHQgID8KCkRla29kaWVyZW4gLSBOb3JtYWxpc2llcmVuIC0gd2llZGVyIGtvZGllcmVuIGZocnQgenUgUXVhbGl0YWV0c3Zlcmx1c3QuCgpFcyBnaWJ0IChHb29nbGUgc2VpIERhbmspIHdvaGwgZWluaWdlIFRvb2xzIGRpZSBiZWhhdXB0ZW4gZGFzIG9obmUgRGVrb2RpZXJlbgp6dSBrb2VubmVuLiBPYiBkYXMgZGFubiB3aXJrbGljaCBzbyBpc3QsICB3ZWlzcyBpY2ggbmljaHQuCgpCZWkgQ29vbCBlZGl0IDIwMDAgaXN0IGVzIHNvLCBkYXNzIG1hbiBtcDMgbGFkZW4gdW5kIG5vcm1hbGlzaWVyZW4ga2Fubi4gQWJlcgppbnRlcm4gd2lyZCBkaWUgRGF0ZWkgYmVpbSBMYWRlbiBpbiBkYXMgV0FWIEZvcm1hdCBnZXdhbmRlbHQgKHNvIHNpZWh0IGVzCmplZGVuZmFsbHMgYXVzKS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmQuYS5uLiAoQW1hcnlsbGlzLCAxOC4gSnVuIDIwMDMsIDIwOjMwOjE1KToKRnJvbTogQ2Fyc3RlbiBLZXR0bmVyIDxjYXJzdGVuLmtldHRuZXJAd2ViLmRlPgpOZXdzZ3JvdXBzOiBnZXIuY3QKU3ViamVjdDogUmU6IENsZW1lbnQgc3RlbGx0IEZlaWVyVGFnZSBpbiBGcmFnZQpEYXRlOiBXZWQsIDE4IEp1biAyMDAzIDEyOjA2OjE3ICswMjAwCgpPbiBXZWQsIDE4IEp1biAyMDAzIDA0OjA0OjMzICswMjAwLCBLbnV0IFNpbmdlciA8a251dC5zaW5nZXJAZ214LmRlPgp3cm90ZToKCj4KPj4gRGFzIGVyaW5uZXJ0IG1pY2ggYW4gZGllIHNjaG9lbmUgRHJlaXNhdHphdWZnYWJlOgo+PiAKPj4gMSBIYW5kd2Vya2VyIGJyYXVjaHQgNSBTdHVuZGVuLCB1bSBlaW5lIE1hdWVyIHp1IGJhdWVuLCB3aWUgbGFuZ2UgCj4+IGJyYXVjaGVuIDEwMDAgSGFuZHdlcmtlciBmdWVyIGRpZSBzZWxiZSBNYXVlcj8KPgo+TmFqYSwgZWluIHJpY2h0aWdlciBEcmVpc2F0eiBpc3QgZGFzIGphIGF1Y2ggbmljaHQgZ2VyYWRlLi4gQWxzbyBtYWNoZW4gCj53aXIgaGFsdCAzIEhhbmR3ZXJrZXIgYXVzIGRlbSBlaW5lbi4uLiA7LSkKCkF1c3NlcmRlbSB2b2VsbGlnIGlycmVmdWVocmVuZCB1bmQgcmVhbGl0YWV0c2Zlcm4uCldlbm4gZWluIEhhbmR3ZXJrZXIgZnVlciBkaWVzZSBNYXVlciA1IFN0dW5kZW4gYnJhdWNodCwgdW5kIGVzIHNlaSBpaG0KdW50ZXJzdGVsbHQsIGVyIGlzdCBmbGVpc3NpZywga2FubiBkaWUgTWF1ZXIgbmljaHQgc28gYXJnIGxhbmcgc2Vpbi4KU29taXQgc3RlbGx0IHNpY2ggYWxzIGVyc3RlcyBkaWUgRnJhZ2UsIHdvIHNvbGxlbiBkaWUgMTAwMCBIYW5kd2Vya2VyCnN0ZWhlbiwgd2VubiBuaWNodCBzaWNoIGdlZ2Vuc2VpdGlnIGF1ZiBkZW4gRnVlc3Nlbj8gVm9uIGRhaGVyIGlzdCBlaW5lCkJlc2NobGV1bmlndW5nIHVtIGRlbiBGYWt0b3IgMTAwMCBiZWkgZGVtIE1hdWVyYmF1IG5pY2h0IHp1IGVyd2FydGVuLgpBdXMgZGVtIHJlYWxlbiBMZWJlbiAoVE0pIGxhZXNzdCBzaWNoIGFibGVpdGVuLCBkYXNzIHZvbiBkZW4gMTAwMApIYW5kd2Vya2VybiBlaW5lciBtYXVlcnQsIGVpbmVyIGRlbiBTcGVpc3MgYW5ydWVocnQsIGRyZWlzc2lnIGF1ZgpCaWVyc3VjaGUgc2luZCB1bmQgc2ljaCBkaWUgcmVzdGxpY2hlbiA5NjggYXVmIFNjaHVia2FycmVuLCBTY2hhdWZlbG4KZXRjLiBhYnN0dWV0emVuLCB1bSBkaWUgQXJiZWl0IGlocmVyIHp3ZWkgS29sbGVnZW4ga29tbWVudGllcmVuZCB6dQpiZWdsZWl0ZW4uCkFsc28sIHdpZSB3YXIgbm9jaCBtYWwgZGllIExvZXN1bmcgZnVlciBkZW4gRHJlaXNhdHo/CgpTY2hvZW5lIEdydWVzc2UKQ2Fyc3RlbgogCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZC5hLm4uIChWYW5pb24sIDE4LiBKdW4gMjAwMywgMjE6MTk6MDQpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwNTU5NjEwMTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1CkRlbiBoaWVyIGZhbmQgaWNoIHdpcmtsaWNoIGtsYXNzZToKTWVzc2FnZS1JRDogPDFmd3EzN28uYnp5ZWlqMWhrZ3Bza04la3NjaGVsbGVyQG9jaHMuZnJhbmtlbi5kZT4KCmZyYW5rIHBhdWxzZW4gPGZyYW5rLnBhdWxzZW5AZ214Lm5ldD4gd3JvdGU6CgoKPj4gTGludXgga2FubiBzZWhyIG5ldHQgQ2Fwcy1Mb2NrIHVuZCBTY3JvbGwtTG9jayBibGlua2VuIGxhc3Nlbi4gZGVyemVpdAo+PiBzdWNoZSBpY2ggYWxsZXJkaW5ncyBlaGVyIGVpbmVuIHdlZywgZ2VuYXUgZGFzIHp1IHZlcmhpbmRlcm4uLi4KCgpCbGlua2VuIGlzdCBlaWdlbnRsaWNoIChhdXNzZXIgaW0gR2VmYWhyZW5mYWxsKSBpbW1lciB2b24gdWViZWwuIFdlciBoYXQKZWlnZW50bGljaCBkYXMgSFRNTC1UYWcgPGJsaW5rPiBlcmZ1bmRlbj8gRWluemlnZSBSZWNodGZlcnRpZ3VuZzoKClNjaHJvZWRpbmdlcnMgS2F0emUgaXN0IDxibGluaz5uaWNodDwvYmxpbms+IHRvdC4gCgpTZXJ2dXMsCktvbm5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGQuYS5uLiAoRWxpemFiZXRoLCAxOC4gSnVuIDIwMDMsIDIxOjE5OjM4KToKfiMhIHJuPVZhbmlvbiBydD0xMDU1OTYzOTQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQp3YXNuIGx1c3RpZyBkcmFuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZC5hLm4uIChWYW5pb24sIDE4LiBKdW4gMjAwMywgMjE6MjU6NTApOgp+IyEgcm49RWxpemFiZXRoIHJ0PTEwNTU5NjM5Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1Cldlbm4gRHUgZGFzIG5pY2h0IHdlaXNzdCwgc29sbHRlc3QgRHUgbmFjaCBTY2hyb2VkaW5nZXJzIEthdHplIGdvb2dsZW4uCkVpbmUgcmVjaHQgc2Nob2VuZSBFcmtsYWVydW5nIHp1ciBLYXR6ZSBmaW5kZXN0IER1IGF1Y2ggaW46CiBEb3VnbGFzIEFkYW1zLCAKIERlciBlbGVrdHJpc2NoZSBNb2VuY2guIERpcmsgR2VudGx5J3MgaG9saXN0aXNjaGUgRGV0ZWt0ZWkuCiBJU0JOOiAzNDUzMTk5MDgxCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZC5hLm4uIChFbGl6YWJldGgsIDE4LiBKdW4gMjAwMywgMjE6MjY6MTYpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNTU5NjQzNTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1Cm9oLi5kYXMgaGFiaSBub2NoIG5pY2ggZydsZXNlbi4uIDopIG1hbCBuYWNoZ3Vja2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogZC5hLm4uIChXaGl0ZXRpZ2VyLCAxOC4gSnVuIDIwMDMsIDIxOjI5OjQ0KToKfiMhIHJuPUVsaXphYmV0aCBydD0xMDU1OTY0Mzc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQppc3QgZ3V0IGRhcyBidWNoLiB3aWUgKGZhc3QpIGFsbGVzIHZvbiBkb3VnbGFzIGFkYW1zLi4uCgp0aWdlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogZC5hLm4uIChIdW1uaSwgMTguIEp1biAyMDAzLCAyMTozMDoxMCk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwNTU5NjQ1ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1CldpZXNvIGZhc3Q/CgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogZC5hLm4uIChXaGl0ZXRpZ2VyLCAxOC4gSnVuIDIwMDMsIDIxOjMwOjI0KToKfiMhIHJuPUh1bW5pIHJ0PTEwNTU5NjQ2MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1CmljaCBoYWIgbm9jaCBuaWNodCBhbGxlcyB2b24gaWhtIGdlbGVzZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBkLmEubi4gKE1lZGljLCAxOC4gSnVuIDIwMDMsIDIxOjMxOjMwKToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA1NTk2NDYyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU5NjEwMTUKTklDSFQ/IE5hY2hob2xlbiA6LSkKCmVtcGZpZWhsdCBNZWRpYy4KKHp1IFJpc2lrZW4gdW5kIE5lYmVud2lya3VuZ2VuIGZyYWdlbiBzaWUgSWhyZW4gQnVjaGhhZW5kbGVyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogZC5hLm4uIChXaGl0ZXRpZ2VyLCAxOC4gSnVuIDIwMDMsIDIxOjMyOjI3KToKfiMhIHJuPU1lZGljIHJ0PTEwNTU5NjQ2OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1Cm5hamEuLi4gZGllIDUgYW5oYWx0ZXIsIGRpZSAyIGZlcnRpZ2VuIGRpcmsgZ2VudGx5cy4Kd2VsY2hlIGdpYnRzIGRlbm4gbm9jaCBhbGxlcz8KCnd0IGhhdCBrZWluIGx1c3QgYXVmIGdvb2dsZS9hbWF6b24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBkLmEubi4gKEh1bW5pLCAxOC4gSnVuIDIwMDMsIDIxOjMzOjMxKToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA1NTk2NDc0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU5NjEwMTUKWi5CLiBnaWJ0cyBub2NoICwsTGFzdCBjaGFuY2UgdG8gc2VlJycgKGR0OiBEaWUgbGV0enRlbiBpaHJlciBBcnQpLiBFaW4gQnVjaCwKd28gZXIgenUgYXVzc3RlcmJlbmRlbiBUaWVyYXJ0ZW4gZmFlaHJ0LCBtaXQgTWFyayBDb3dhcmRpbmUgKGVpbmVtIEJpb2xvZ2VuKQp6dXNhbW1lbiBnZXNjaHJpZWJlbiAobmFqYSwgQWRhbXMgc2NocmllYnQsIENvd2FyZGluZSB3YXIgaGFsdCBkYWJlaSkuClVuZ2xhdWJsaWNoLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBkLmEubi4gKFdoaXRldGlnZXIsIDE4LiBKdW4gMjAwMywgMjE6MzQ6MDkpOgp+IyEgcm49SHVtbmkgcnQ9MTA1NTk2NDgxMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU5NjEwMTUKQWggaGFiIGljaCB2b24gZ2Vob2VydC4uLgpVbmQgZGFubiBnYWJzIGRvY2ggbm9jIHdhcy4gZGllIGZpbGVzIHZvbiBzZWluZXIgZmVzdHBsYXR0IGV6dW0gMy4gZ2VudGx5PwoKd3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBkLmEubi4gKEh1bW5pLCAxOC4gSnVuIDIwMDMsIDIxOjM3OjU4KToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA1NTk2NDg0OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU5NjEwMTUKSmEsIGhhYiBpY2ggZ2VyYWRlIGJlaSBBbWF6b24gZ2VmdW5kZW4sIGRpZSBzY2hyZWliZW4gZGEgYWJlciwgZGFzIHNlaQp1bmF1c2dlcmVpZnQuIFRpdGVsIGlzdCAsLExhY2hzIGltIFp3ZWlmZWwnJyB1bmQgaXN0IE5JQ0hUIGRlciA2LiBBbmhhbHRlciwKc29uZGVybiB3aWUgRHUgc2Nob24gc2FndGVzdCBlaGVyIGVpbiBGcmFnbWVudCB2b20gMy4gR2VudGx5LgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBkLmEubi4gKFdoaXRldGlnZXIsIDE4LiBKdW4gMjAwMywgMjE6Mzg6MzgpOgp+IyEgcm49SHVtbmkgcnQ9MTA1NTk2NTA3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU5NjEwMTUKTmEga2xhciBpc3NlcyB1bmF1c2dlcmVpZnQuLi4gd2VubiBlciB2b3Igdm9sbGVuZHVuZyBnZXN0b3JiZW4gaXN0LgppY2ggaGFicyBtYWwgaW0gYnVjaGxhZG4gZ2VzZWhlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IGQuYS5uLiAoSHVtbmksIDE4LiBKdW4gMjAwMywgMjE6NDI6MTIpOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDU1OTY1MTE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQpBY2ggamEsIGljaCBiZWhhdXB0ZSBhdWNoIG5pY2h0LCBhbGxlcyB2b24gaWhtIGdlbGVzZW4genUgaGFiZW4uIE1pdCBUZXJyeQpKb25lcyB6dXNhbW1lbiBnaWJ0IGVzIG5vY2ggZGllc2UgVGl0YW5pYy1TYWNoZW4sIHdvYmVpIGljaCBzZWluZW4gQW50ZWlsCmRhcmFuIG5pY2h0IGVpbnNjaGFldHplbiBrYW5uLiBJY2ggZ2xhdWJlIGFiZXIsIGRhcyBpc3QgZWhlciBhdWYgSm9uZXMgTWlzdApnZXdhY2hzZW4gKHdhcyBhdWNoIG5pY2h0IHNjaGxlY2h0IHNlaW4gbXVzcywga2VpbmUgRnJhZ2UpLiBVbmQgLCxUaGUgZGVlcGVyCm1lYW5pbmcgb2YgbGlmZicnIC0gT3J0c25hbWVuIGVpbmUgbmV1ZSBCZWRldXR1bmcgZ2VnZWJlbi4gUGFhciBsdXN0aWdlIElkZWVuCmRyaW4sIGFiZXIgZGllIGRldXRzY2hlIFZlcnNpb24gKERlciB0aWVmZXJlIFNpbm4gZGVzIExhYmVueikgaGF0IG1pY2ggbmljaHQKc28gdWViZXJ6ZXVndC4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogZC5hLm4uIChNZWRpYywgMTguIEp1biAyMDAzLCAyMTo0NzoyMCk6Cn4jISBybj1IdW1uaSBydD0xMDU1OTY1MzMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQpPaywgQXV0b3JlbiwgZGllIG1hbiAoenVtaW5kZXN0IGVpbmlnZXMgdm9uIElobmVuKSBtZWluZXIgTWVpbnVuZyBuYWNoIGdlbGVzZW4KaGFiZW4gc29sbHRlOgoKLSBEb3VnbGFzIEFkYW1zCi0gVGVycnkgUHJhdGNoZXR0Ci0gVG9tIFNoYXJwZQotIEpSUiBUb2xraWVuCndpbGxlCi0gU3RlcGhlbiBIYXdraW5nCgouLnVuZCBzaWNoZXIgbm9jaCBlaW5pZ2VzIG1laHIsIGFiZXIgZGllc2Ugc2luZCB3aXJrbGljaCBlcndhZWhuZW5zd2VydCA6LSkKCk1lZGljIChCdWVjaGVyZnJlYWspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogZC5hLm4uIChNZWRpYywgMTguIEp1biAyMDAzLCAyMTo0Nzo1OCk6Cn4jISBybj1NZWRpYyBydD0xMDU1OTY1NjQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQp1bmQgIndpbGxlIiBnZWhvZXJ0IG5pY2h0IGRhenUuLi4uaWNoIHNvbGx0ZSB0aW1lciBiZWltIHBvc3RlbiBhYnN0ZWxsZW4gKmcqCgpNZWRpYyAoaW5rb21wZXRlbnQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogZC5hLm4uIChXaGl0ZXRpZ2VyLCAxOC4gSnVuIDIwMDMsIDIxOjUzOjU5KToKfiMhIHJuPU1lZGljIHJ0PTEwNTU5NjU2Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1Cm9kZXIgImhpbGZlIGVkaXRvciIgbGVzZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogZC5hLm4uIChBbmF0b2wsIDE4LiBKdW4gMjAwMywgMjI6MDA6NTIpOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDU1OTY2MDM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQpBbHRlcm5hdGl2IHdpcmQgZ2VyZWljaHQgaGFiZW4sIGVpbmZhY2ggMzAgU2VrdW5kZW4genUgd2FydGVuLiBJcmdlbmRlaW4KWmF1Ymkgd2lyZCBkYW5uIHNjaG9uIG1pdGdldGVpbHQgaGFiZW46ICciIVx3aWxsZSIgaGVpc3N0IGRhcy4nLgoKQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IGQuYS5uLiAoRGFya2xvciwgMTguIEp1biAyMDAzLCAyMjowNDo0OSk6Cn4jISBybj1NZWRpYyBydD0xMDU1OTY1NjQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQpLb250ZXI6CgotIERhdmlkIEJyaW4KLSBMb2lzIE1jIE1hc3RlciBCdWpvbGQKLSBDLkouIENoZXJyeWgKLSBBbGFuIERlYW4gRm9zdGVyCgouLi4gaGFldHQgZGEgYXVjaCBub2NoIGVpbiBwYWFyIGFuZGVyZS4uLiA6KQoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IGQuYS5uLiAoVmFuaW9uLCAxOC4gSnVuIDIwMDMsIDIyOjEwOjUxKToKfiMhIHJuPURhcmtsb3IgcnQ9MTA1NTk2NjY4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU5NjEwMTUKQWxzbyBpbiBkZXIgYW5kZXJlbiBMaXN0ZSBrYW5udGUgaWNoIHp1bWluZGVzdCA0LzUgZGVyIEF1dG9yZW4uIEJlaSBEaXIga2VubgppY2ggMC4gCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IGQuYS5uLiAoRGFya2xvciwgMTguIEp1biAyMDAzLCAyMjoxODozNik6Cn4jISBybj1WYW5pb24gcnQ9MTA1NTk2NzA1MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU5NjEwMTUKTmFqYSBpcyB6dW0gZ3JvZXNzdGVuIFRlaWwgU2NpRmkuLi4gLSBhYmVyIGVzIGxpZXN0IHNpY2ggZ3V0LCBudXIgbGVpZGVyIGhhYmVuCmVpbmlnZSBuaWNoIHVuYmVkaW5ndCB2aWVsIGdlc2NocmllYmVuLi4uICpzZXVmeiogCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogZC5hLm4uIChHcmltbWJvcm4sIDE5LiBKdW4gMjAwMywgMDA6MTY6MDQpOgp+IyEgcm49RGFya2xvciBydD0xMDU1OTY3NTE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQpBbHNvLCB3ZW5uIER1IFNjaWVuY2UgRmljdGlvbiBBdXRvcmVuIGF1ZnphZWhsc3QsIHVuZCB1bnRlciBkZW4gZXJzdGVuIGRyZWkKbmljaHQgU3RhbmlzbGF3IExlbSBpc3QsIGRhbm4gbmVubmUgaWNoIERpY2ggImlua29tcGV0ZW50IHVuZCB1bm1hc3NnZWJsaWNoIi4gCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBkLmEubi4gKE5penpsLCAxOS4gSnVuIDIwMDMsIDAwOjE4OjI1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDU1OTc0NTY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQppc2FhYyBhc2ltb3YKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBkLmEubi4gKEdyaW1tYm9ybiwgMTkuIEp1biAyMDAzLCAwMDoyMTowOCk6Cn4jISBybj1OaXp6bCBydD0xMDU1OTc0NzA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQpOaWNodHMgZ2VnZW4gQXNpbW92LCBhYmVyIGljaCBoYWJlICJTaGFrZXNwZWFyZSIgZ2VzYWd0LCB1bmQgRHUgIkFydGh1ciBDb25hbgpEb3lsZSIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBkLmEubi4gKE5penpsLCAxOS4gSnVuIDIwMDMsIDAwOjIxOjQ4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDU1OTc0ODY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQpzaGFrZXNwZWFyZSBoYXQgc2NpZmkgZ2VzY2hyaWViZW4/IDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IGQuYS5uLiAoR3JpbW1ib3JuLCAxOS4gSnVuIDIwMDMsIDAwOjIzOjExKToKfiMhIHJuPU5penpsIHJ0PTEwNTU5NzQ5MDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1CldlaXNzdCBEdSwgYmVoYWx0ZSBkZW4gdm9yYW5nZWdhbmdlbmVuIFdvcnR3ZWNoc2VsIGltIEdlZGFlY2h0bmlzLCBzbyBpbgpmdWVuZiwgc2VjaHMgSmFocmVuLCB3ZW5uIER1IHZvbGxqYWVocmlnIGJpc3QsIHZlcnN0ZWhzdCBEdSB2aWVsbGVpY2h0IHdhcyBpY2gKZ2VtZWludCBoYWJlLiBadW1pbmRlc3Qgd2VubiBEdSBuaWNodCBhdXNzY2hsaWVzc2xpY2ggdm9yIE1UViB1bmQgVml2YQpoYWVuZ3N0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogZC5hLm4uIChOaXp6bCwgMTkuIEp1biAyMDAzLCAwMDoyNDowNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1NTk3NDk5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU5NjEwMTUKCnVuZCBhdXMgaGVpdGVyZW0gaGltbWVsIHdpcmQgYXVzIGRlciBkaXNrdXNzaW9uIGVpbiBmbGFtZXRocmVhZC4KZGFua2UgZ3JpbW1ib3JuLiB3YWVyZSBhdWNoIHVlYmVycmFzY2hlbmQgd2VubnMgYW5kZXJzIGdla29tbWVuIHdhZXJlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IGQuYS5uLiAoR3JpbW1ib3JuLCAxOS4gSnVuIDIwMDMsIDAwOjI1OjM3KToKfiMhIHJuPU5penpsIHJ0PTEwNTU5NzUwNDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1Ci4uLnVuZCBkYW5uIHdlaXNzdCBEdSB2aWVsbGVpY2h0IGF1Y2ggd2FzICJ0byBmbGFtZSIgd2lya2xpY2ggaGVpc3N0LiBEYXMKd2FyZW4gdm9uIG1pciBkb2NoIG1heGltYWwga25hcHAgdWViZXIgMzAwSy4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IGQuYS5uLiAoUGF0cnluLCAxOS4gSnVuIDIwMDMsIDAwOjQ5OjIzKToKfiMhIHJuPURhcmtsb3IgcnQ9MTA1NTk2NjY4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU5NjEwMTUKQWxzbyB3ZW5uIGRhcyBhbGxlcyBTY2lGaSBBdXRvcmVuIHNpbmQgZGFubiB2ZXJzdGVoIGljaCBuaWNodCB3YXJ1bSBEdQpTdGFuaXNsYXcgTGVtIG5pY2h0IGRhenV6YWVobHN0LgpJY2ggaGFiIGxldHp0ZW5zIGVyc3Qgd2llZGVyIHdhcyB2b24gZGVtIGdlbGVzZW4sIERpZSBKYWdkLCBnbGF1YiBpY2gsCnVuZCBtdXNzIGltbWVyIHdpZWRlciBzdGF1bmVuLCB3aWUgdG9sbCBlciBmcmVtZGUgV2VsdGVuIGJlc2NocmVpYmVuIGthbm4uCkRhIGtvZW5udGVuIHNpY2ggc28gbWFuY2hlIEZhbnRhc3ktQXV0b3JlbiAyIFNjaGVpYmVuIGFic2NobmVpZGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogZC5hLm4uIChNdWFkaWIsIDE5LiBKdW4gMjAwMywgMDI6MTA6NDEpOgp+IyEgcm49UGF0cnluIHJ0PTEwNTU5NzY1NjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1CnBqb3RyIHdsYWRpbW93aXRzY2ggYXNuYXJvdwpzdHVlbXBlciBzZWlkIGlociBhbGxlc2FtdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IGQuYS5uLiAoQXJlZWxhbmlyLCAxOS4gSnVuIDIwMDMsIDA5OjE4OjM3KToKfiMhIHJuPURhcmtsb3IgcnQ9MTA1NTk2NjY4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU5NjEwMTUKRGF2aWQgQnJpbiBrYW5uIGljaCBhdWNoIG51ciBlbXBmZWhsZW4sIGRpZSBJZGVlIGlzdCBlaW5mYWNoIG5ldHQsIGFiZXIgZGllCkJ1ZWNoZXIgc2luZCB2ZXJncmlmZmVuIHVuZCBkYWhlciBzY2h3ZXIgenUga3JpZWdlbiA6LSgKQW5zb25zdGVuIG1vZWNodGUgaWNoIFdpbGxpYW0gR2lic29uIG51ciBtYWwgZXJ3YWVobnQgaGFiZW4gdW5kIGthbm4gZGFzIEdhbnplCm5hdHVlcmxpY2ggbmljaHQgYmVlbmRlbiBvaG5lIG5pY2h0IHZvcmhlciBtZWluZW4gTGllYmxpbmdzYXV0b3IKTWF0dCBSdWZmCmVyd2FlaG50IHp1IGhhYmVuIQoKQXJlZWxhbmlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogZC5hLm4uIChOb25uZSwgMTkuIEp1biAyMDAzLCAwOToyOTozOCk6Cn4jISBybj1Ob25uZSBydD0xMDU2MDA3NTc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQpFaW5lciBtZWluZXIgTGllYmxpbmdzYXV0b3JlbiBpbiBkZXIgU3BhcnRlIEZhbnRhc3kvU2NpRmkvUXVhdHNjaCB3dXJkZSBhdWNoCm5vY2ggbmljaHQgZXJ3YWVobnQ6IFJvYmVydCBSYW5raW4uIFNlaHIgenUgZW1wZmVobGVuIHp1bSBFaW5zdGllZyBpc3QgJ0dhcnRlbgp1bmlyZGlzY2hlciBHZWx1ZXN0ZScuIElzdCBhYmVyIGtlaW4gU2Nod2VpbnNrcmFtLCBhdWNoIHdlbm4gZXMgc28ga2xpbmd0IChjOwoKTm9ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogZC5hLm4uIChKYWRhd2luLCAxOS4gSnVuIDIwMDMsIDExOjE4OjE4KToKfiMhIHJuPU5vbm5lIHJ0PTEwNTYwMDc3Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1ClJhbmtpbiBpc3QgZ2FueiBoZXJ2b3JyYWdlbmQuIEhhYmUgZ2VyYWRlIGVyc3QgYmVpIEFtYXpvbiBlaW5lbiBnYW56ZW4gU2Fjawp2b2xsIHNlaW5lciBTYWNoZW4gYmVzdGVsbHQuIE5hbWVudGxpY2ggZGllIG1pciBub2NoIGZlaGxlbmRlbiBCdWVjaGVyIGRlcgonQXJtYWdlZGRvbid1bmQgZGVyICdCcmVudGZvcmQnLVRyaWxvZ2llLiBNYW4gc29sbHRlIGFiZXIgZmFsbHMgbW9lZ2xpY2ggZGllCk9yaWdpbmFsdmVyc2lvbiBiZXZvcnp1Z2VuLgpKYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogZC5hLm4uIChNYXJjdXMsIDE5LiBKdW4gMjAwMywgMTE6MzM6MTgpOgp+IyEgcm49SmFkYXdpbiBydD0xMDU2MDE0Mjk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQpCZWkgU0YgbXVzcyBtYW4gZWggaW1tZXIgendpc2NoZW4gSGFyZC1TRiB1bmQgU29mdC1TRiB1bnRlcnNjaGVpZGVuLgoKSGFyZCBTRiAtIFdpcmtsaWNoIHRlY2huaXNjaCBkdXJjaGRhY2h0LCB0ZWlsd2Vpc2Ugdm9lbGxpZyB1bnZlcnN0YWVuZGxpY2gsCiAgICAgICAga2F1bSBsZXNiYXIgZnVlciBkZW4gTGFpZW4uCgpTb2Z0IFNGIC0gU3BhY2UgT3BlcmFzLCBtZWlzdCBtaXQgSHVtb3IsIHNpZWhlIFNULCBTVyAuLi4gCgpMZW0gaXN0IHdvaGwgSGFyZCBTRiB6dSBUZWlsZW4sIGFuc29uc3RlbiBnYWJzIGRhIGVpbmlnZSBzZWhyIGd1dGUKUnVzc2VuLCBkaWUgZGEgd2FzIGdlc2NocmllYmVuIGhhYmVuIChpY2ggaGFiIGRpZSBmcnVlaGdlciBnZWxlc2VuLCBhYmVyCmRlcmVuIE5hbWVuIHZlcmdlc3NlbiA6LykKClNvZnQgU0Yga3JpZWd0IG1hbiBpbSBqZWRlbiBMYWRlbi4KCkNpYW8sIE1hcmN1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IGQuYS5uLiAoQm9pbmcsIDE5LiBKdW4gMjAwMywgMTI6NTQ6MjEpOgp+IyEgcm49SmFkYXdpbiBydD0xMDU2MDE0Mjk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQpCZWkgZGVyIGZ1ZW5mYmFlbmRpZ2VuIEJyZW50Zm9yZCBUcmlsb2dpZSBzb2xsdGUgbWFuIFVOQkVESU5HVCBkYXMgb3JpZ2luYWwKbGVzZW4uIERpZSBkZXV0c2NoZW4gVWViZXJzZXR6ZXIgc2luZCBuYWVtbGljaCB1bmhlaW1saWNoIGx1c3RpZ2UgS2VybGUsCmRpZSBtZWludGVuIHNpZSBrb2VubnRlbiBkYXMgV2VyayBkdXJjaCAnd2l0emlnZScgRnVzc25vdGVuIHZlcmJlc3Nlcm4uClN1cGVyIHNpbmQgYXVjaCB6d2VpIHNlaW5lciBuZXVlcmVuIEJ1ZWNoZXIsICdXZWIgU2l0ZSBTdG9yeScgdW5kIAonRmFuZG9tIG9mIHRoZSBPcGVyYXRvcicgLi4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTcGFzc29iamVrdGUgKEdyaW1tYm9ybiwgMTkuIEp1biAyMDAzLCAxNDowMzowNSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA1NTg1NjM1OSByZz1wb2xpemVpLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDU1ODU2MzU5CkRhbWl0IGVpbiBiaXNjaGVuIFNjaHd1bmcgaW4gZGllIEFic2NoYWZmdW5nIGlsbGVnYWxlciB0b29scyBrb21tdCBzZXR6ZSBpY2gKaGllcm1pdCBmdWVyIGRlbmplbmlnZW4sIGRlciBkaWUgbWVpc3RlbiB0b29scyBiZWkgTXVhZGliIGFscyBlcnN0ZXIgYW5naWJ0LAplaW4gbmV0dGVzLCBrbGVpbmVzIFVlYmVycmFzY2h1bmdzdG9vbCBhdXMuIEF1c2dlc2NobG9zc2VuIHNpbmQgTWFnaWVyLApUZXN0aWVzIHVuZCBad2VpdGllcywgbmF0dWVybGljaC4gCkd1dGUgSmFnZCEKCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTcGFzc29iamVrdGUgKEdyaW1tYm9ybiwgMTkuIEp1biAyMDAzLCAxNTo0NTowOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1NjAyNDE4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU4NTYzNTkKQWNoIHNvLCBhdXMgZ2VnZWJlbmVtIEFubGFzcyB3b2xsdGUgaWNoIG5vY2ggZGFyYXVmIGhpbndlaXNlbjogRmFsbHMgaWhyIGluCkRpc2t1c3Npb25lbiBnZXJhdGV0IGRhc3MgYWJlciBnZXJhZGUgKmV1ZXIqIHRvb2wgZG9jaCBlcmhhbHRlbiBibGVpYmVuCm11ZXNzdGU6IFVlYmVyc3ByaW5ndCBkaWUgQXJndW1lbnRhdGlvbiAiR3JpbW1ib3JuIGhhdCBqYSBhdWNoIFNvbmRlcnJlY2h0ZQp1bmQga2FubiBsZXZlbHVudHlwaXNjaCBpbiBkZXIgTVBBIHZlcmxlZ2VuL2xvZXNjaGVuIi4gRGFzIGhhdCBzY2hvbiBiZWkKYW5kZXJlbiBuaWNodCBnZWtsYXBwdCwgdW5kIHd1ZXJkZSBzZWxic3QgZGFubiwgd2VubiBkZXIgVmVyZ2xlaWNoIHNhY2hsaWNoCnp1bGFlc3NpZyB3YWVyZSwgbml4IGJyaW5nZW4uIFdlZGVyIGRhaGluZ2VoZW5kIGRhc3MgZGFzIHRvb2wgZXJoYWx0ZW4gYmxlaWJ0LApub2NoIGRhaGluZ2VoZW5kIGRhc3MgbWlyIG1laW5lICJTb25kZXJyZWNodGUiIGJlc2Nobml0dGVuIHdlcmRlbi4gCgpRdW9kIGxpY2V0IEpvdmksIG5vbiBsaWNldCBib3ZpIChhbHRieXphbnRpbmlzY2hlcyBTcHJpY2h3b3J0KQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTcGFzc29iamVrdGUgKEFuYXRvbCwgMTkuIEp1biAyMDAzLCAxNTo1MjozMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1NjAzMDMwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU4NTYzNTkKTWFuY2htYWwgc29sbHRlc3QgRHUgRGVpbmUgRW5lcmdpZW4gbGllYmVyIGFuIGRlbSBzY2hudWNrZWxpZ2VuIGtsZWluZW4KUmVjaG5lciBhYmJhdWVuLCBkZW4gRHUgenUgYmV0cmV1ZW4gaGFzdCwgR3JpbW1pLi4uIDopCgpBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogZC5hLm4uIChPcmt0b2V0ZXIsIDE5LiBKdW4gMjAwMywgMTk6NTA6MjIpOgp+IyEgcm49Tml6emwgcnQ9MTA1NTk3NDcwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU5NjEwMTUKSXN0IGRhcyBkaWUgTGlzdGUgZnVlciBkaWUgVmVyZ2Vzc2xpY2hlbj8gRXR3YXMga3Vyeiwgb2Rlcj8KCk9ya1QuCgpQUyBmdWVyIFBoYW50YXNpZSBiaWV0ZSBpY2ggZGFubiBtYWwgbm9jaCBHZW9yZ2UgUi5SLiBNYXJ0aW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBkLmEubi4gKEh1bW5pLCAxOS4gSnVuIDIwMDMsIDE5OjUxOjE4KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDU2MDQ1MDIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQpQYWguIEVpbmUgU0YtQXV0b3Jlbi1MaXN0ZSBvaG5lIFJvYmVydCBGZWxkaG9mZiwgSC5HLiBFd2VycywgSy5ILiBTY2hlZXIgdW5kCkNsYXJrIERhcmx0b24gaXN0IGVoIHVudm9sbHN0YWVuZGlnLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBkLmEubi4gKFpvb2ssIDE5LiBKdW4gMjAwMywgMTk6NTM6MzkpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNTYwNDUwMjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1CkFoLiBJY2ggZ2xhdWIsIGljaCBtdXNzIG1hbCB3YXMgYXVzIG5lbSBhbmRlcmVuIFRocmVhZCB4LXBvc3RlbiwgZGEgaWNoCmRlbmtlLCBkYXNzIE9ya1QgZGFzIGRvcnQgZ2FyIG5pY2h0IG1pdGJla29tbWVuIGhhdDoKCgoiV292b24gbWFuIG5pY2h0IHJlZGVuIGthbm4sIGRhcnVlYmVyIG11c3MgbWFuIHNjaHdlaWdlbi4iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTHVkd2lnIFdpdHRnZW5zdGVpbgoKCgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBkLmEubi4gKERhcmtsb3IsIDE5LiBKdW4gMjAwMywgMjA6MzY6NDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTU5NzQ1NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1ClN0YW5pc2xhdyBMZW0gaXMgZWluIExhbmd3ZWlsZXIuLi4KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBkLmEubi4gKERhcmtsb3IsIDE5LiBKdW4gMjAwMywgMjA6Mzk6MDQpOgp+IyEgcm49TWFyY3VzIHJ0PTEwNTYwMTUxOTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1Ck1laW5zdCBkdSBkaWUgU3RydWdhemtpIEJydWVkZXI/CgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogZC5hLm4uIChEYXJrbG9yLCAxOS4gSnVuIDIwMDMsIDIwOjQxOjA3KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDU2MDQ1MDIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQpNZWluc3RlIGRpZSBXaWxkIENhcmQgQnVlY2hlcj8gCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogZC5hLm4uIChEYXJrbG9yLCAxOS4gSnVuIDIwMDMsIDIwOjQ1OjUzKToKfiMhIHJuPUh1bW5pIHJ0PTEwNTYwNDUwNzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1CldpZSBnZXNhZ3QgaWNoIGhhZXR0ZSBkYSBhdWNoIG5vY2ggZWluaWdlIGdlaGFidC4uLiAtIGFiZXIgR2VzY2htYWNrIGlzIGphCmJla2FubnRsaWNoIGVpbiBtZWhyc2NobmVpZGlnZXMgU2Nod2VydC4uLgoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IGQuYS5uLiAoQ2F0d2VhemxlLCAxOS4gSnVuIDIwMDMsIDIxOjA2OjIwKToKfiMhIHJuPUh1bW5pIHJ0PTEwNTYwNDUwNzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1Ck9oIE1hbm4sIGlyZ2VuZHdpZSBoYWIgaWNoIGVyd2FydGV0LCBkYXNzIGRpZSBqZW1hbmQgZXJ3YWVobnQgOi0pIFVuZCB3YXJ1bQpzYWd0IGtlaW5lciAnTGFycnkgTml2ZW4nPyBUc2suCgpEdSBoYXN0IHVlYnJpZ2VucyBtaW5kZXN0ZW5zIFdpbGxpYW0gVm9sdHogdmVyZ2Vzc2VuLiBJY2ggdmVyd2VuZGUgelogZGllClNhbW1lbGJhZW5kZSBhbHMgaGVydm9ycmFnZW5kZSBFaW5zY2hsYWZiZXR0bGVrdHVlcmUgLi4uCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBkLmEubi4gKEh1bW5pLCAxOS4gSnVuIDIwMDMsIDIxOjA2OjUyKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDU2MDQ5NTgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQpVcHMuIFBlaW5saWNoLiBOYXR1ZXJsaWNoLCBkZXIgbXVzcyBhdWYgamVkZW4gRmFsbCBub2NoIGRhenUuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IGQuYS5uLiAoR3JpbW1ib3JuLCAxOS4gSnVuIDIwMDMsIDIxOjE1OjEwKToKfiMhIHJuPUh1bW5pIHJ0PTEwNTYwNDk2MTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1CkljaCBoYWIgYXVjaCBub2NoIGVpbmVuICJpaHIgc2VpZCBhbGxlIGRvb2YsIHdlaWwgaWhyLi4uIgoKLi4ubmljaHQgSnVsZXMgVmVybmUgZXJ3YWVobnQgaGFidCwgYWxzIGVzIHVtIFNjaWVuY2UgRmljdGlvbiBnaW5nLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogZC5hLm4uIChDYXR3ZWF6bGUsIDE5LiBKdW4gMjAwMywgMjE6MjE6MDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTYwNTAxMTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1Ck9oIG5laW4sIFdlbGxzIG9kZXIgSGVpbmxlaW4gZmVobGVuIGphIGF1Y2ggbm9jaC4KCldvbGxlbiB3aXIgbmljaHQgZWJlbiBlaW5lIHZvbGxzdGFlbmRpZ2UgTGlzdGUgYXVmc3RlbGxlbj8gQW0gYmVzdGVuIG1pdApSYW5raW5nPwoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogZC5hLm4uIChab29rLCAxOS4gSnVuIDIwMDMsIDIyOjE2OjI0KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDU2MDUwNDY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTk2MTAxNQpTb2xhbmdlIGRhcyBSYW5raW5nIEh1bW5pLVNrYWxlbi1iYXNpZXJ0IGlzdC4uLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBkLmEubi4gKE11YWRpYiwgMTkuIEp1biAyMDAzLCAyMzoxMzoyOSk6Cn4jISBybj1ab29rIHJ0PTEwNTYwNTM3ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1OTYxMDE1CndhcyBpc3QgbWl0IG1pY2hlbGFuZ2Vsbz8KdW5kIHdhcnVtIGVyd2FlaG50IGlociBoYW5zIGJlaW1oYXVzIG5pY2h0ID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBkLmEubi4gKFZhbmlvbiwgMTkuIEp1biAyMDAzLCAyMzoyMzo1Nyk6Cn4jISBybj1NdWFkaWIgcnQ9MTA1NjA1NzIwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU5NjEwMTUKV2VpbDogV2VuPwoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOiBkLmEubi4gKE11YWRpYiwgMTkuIEp1biAyMDAzLCAyMzo0ODoxOSk6Cn4jISBybj1WYW5pb24gcnQ9MTA1NjA1NzgzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU5NjEwMTUKbmEgaGFucyBiZWltaGF1cy4gZGVyIGdlaG9lcnQgdW5iZWRpbmd0IGluIGRpZSBsaXN0ZS4gc2VpbiBlcnN0bGluZwoic2NoYWx0d2VsdCIgaXN0IHVuZ2xhdWJsaWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3RvbmVyIC8gRGVzZXJ0IFJvY2sgKEdyaW1tYm9ybiwgMjAuIEp1biAyMDAzLCAwMTowMToxNik6Cn4jISBybj1MdWcgcnQ9MTA1NjA2MzUxNiByZz1rdWx0dXIKfiMhIHRpZD0xMDU2MDYzNTE2CiJTb2xpZCBSZXN0IiAuLi4gYnJlbm50IC0gd2FzIGdpYnQgZGFzLCBSZXN0ZWVzc2VuIGZsYW1iaWVydD8gVW5kIHdhcyBpc3QKU3RvbmVyIC8gRGVzZXJ0IFJvY2ssIHNvd2FzIHdpZSBUZWNobm8/IE5hamEsIHZlcm11dGxpY2ggYXVjaCBibG9zcyB3aWVkZXIKQmVib3AuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdG9uZXIgLyBEZXNlcnQgUm9jayAoWm9vaywgMjAuIEp1biAyMDAzLCAwMTowNDoyOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1NjA2MzY3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYwNjM1MTYKV2FocnNjaGVpbmxpY2ggaXJnZW5kZWluIG9yZ2FuaXNpZXJ0ZXIgTGFlcm0uCgpab29rLgoKUFM6IE9kZXIgZ2VzY2hpY2t0IGltIDYvOC1UYWt0IGdlc3BpZWx0PyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdG9uZXIgLyBEZXNlcnQgUm9jayAoTHVnLCAyMC4gSnVuIDIwMDMsIDAxOjA3OjQ4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDU2MDYzNjc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjA2MzUxNgpBbHNvIEdyaW1tYm9ybiwKCmRhbWFscyBnYWIgZXMgZWluZSBCYW5kIG5hbWVucyBLeXVzcywgdW5kIHdlaWwgZGllIGltbWVyIGluIGRlciBXdWVzdGUKc3BpZWx0ZW4gdW5kIGVpbiBEb29tLURlcml2YXQtU3RpbCBzcGllbHRlbiwgbmFubnRlIG1hbiBlcyBEZXNlcnQgUm9jay4gVW5kCndlaWwgc292aWVsZSBuYWNoZm9sZ2UgYmFuZHMgc28gaGVmdGlnIGtpZmZlbiwgbmVubnQgbWFuIGVzIFN0b25lciBSb2NrLiBEaWUKR2VucmVncmVuemVuIHNpbmQgZGFiZWkgc3RhcmsgdWViZXJzY2huaXR0ZW4uIEZhbGxzIER1IG1hbCBRdWVlbnMgb2YgdGhlIFN0b25lCkFnZSBnZWhvZXJ0IGhhc3QsIGRhc3MgaXN0IGVpbmUgS3l1c3MtRGlhZG9jaGVuLUJhbmQuIERpZSBXdXJ6ZWxuIGxpZWdlbgpuYXR1ZXJsaWNoIGF1Y2ggaGllciBnYW56IHRpZWYgYmVpIEJsYWNrIFNhYmJhdGguLi4KVW5kIGRhcyBBbGJ1bSBicmVubnQsIHdlaWwgZGllIEx1ZnQgYmVpbSBIb2VyZW4gZmxpbW1lcnQgdW5kIGVzIGludGVuc2l2IGhlaXNzCndpcmQgOykKVHNzCkwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdG9uZXIgLyBEZXNlcnQgUm9jayAoWm9vaywgMjAuIEp1biAyMDAzLCAwMToxMzo1Myk6Cn4jISBybj1MdWcgcnQ9MTA1NjA2NDA2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYwNjM1MTYKV2FzIGZ1ZXJuIFRha3Q/Cgpab29rIGZyYWd0IG1hbCB2b3JoZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTdG9uZXIgLyBEZXNlcnQgUm9jayAoV3VyemVsLCAyMC4gSnVuIDIwMDMsIDAxOjQwOjMxKToKfiMhIHJuPVpvb2sgcnQ9MTA1NjA2NDQzMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYwNjM1MTYKcnVtdGF0YS4gd2llIHVlYmxpY2ggYmVpIHNvbGNoZW4gY29tYm9zLgp3ZXIgc2ljaCBuaWNodCBhbGxlcyBmdWVyIGVpbmVuIGJsYWNrIHNhYmJhdGgtYWJrb2VtbWxpbmcgaGFlbHQuLi4gc2Nob24KemllbWxpY2ggZXJzdGF1bmxpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTdG9uZXIgLyBEZXNlcnQgUm9jayAoTHVnLCAyMC4gSnVuIDIwMDMsIDAxOjQxOjA3KToKfiMhIHJuPVd1cnplbCBydD0xMDU2MDY2MDMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjA2MzUxNgpJbSBEb29tIGlzdCBlcyBvZmZlbnNpY2h0bGljaCwgb2RlciB3aWxsc3RlIGRhcyBiZXN0cmVpdGVuPwpMLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU3RvbmVyIC8gRGVzZXJ0IFJvY2sgKFd1cnplbCwgMjAuIEp1biAyMDAzLCAwMTo0MzoxMSk6Cn4jISBybj1MdWcgcnQ9MTA1NjA2NjA2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYwNjM1MTYKdW5kIHdlbm4gd2lyIGRhcyBzcGllbGNoZW4gd2VpdGVydHJlaWJlbiwgbGFuZGVuIHdpciBkb2NoIHdpZWRlciBhdWYgZGVuCmF1c2dlZGVobnRlbiBiYXVtd29sbGZlbGRlcm4gZGVyIGFtZXJpa2FuaXNjaGVuIHN1ZWRzdGFhdGVuLCB3byBhbmdlYmxpY2gKZGVyIGJsdWVzIGVudHN0YW5kZW4gaXN0Lgp1bmQgZGEgc29sbCBub2NoIGVpbmVyIHNhZ2VuLCBkaWUgYW1pcyBoYWV0dGVuIG5pY2h0cyBhbiBrdWx0dXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFN0b25lciAvIERlc2VydCBSb2NrIChMdWcsIDIwLiBKdW4gMjAwMywgMDE6NDM6NDkpOgp+IyEgcm49V3VyemVsIHJ0PTEwNTYwNjYxOTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MDYzNTE2CkFuZCBpdCdzIGFsbCBjb3R0b24tZmllbGRzIGJhY2sgaG9tZSAoVGhlIFBvZ3VlcykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFN0b25lciAvIERlc2VydCBSb2NrIChHcmltbWJvcm4sIDIwLiBKdW4gMjAwMywgMDE6NDU6MTUpOgp+IyEgcm49THVnIHJ0PTEwNTYwNjYyMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MDYzNTE2CkFoLiBOZWdlcmphenouIFd1c3N0ZSBpY2hzIGRvY2guCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFN0b25lciAvIERlc2VydCBSb2NrIChMdWcsIDIwLiBKdW4gMjAwMywgMDE6NDY6MDUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTYwNjYzMTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MDYzNTE2Cld1cnNjaHQsIGRpZSBTdG9uZXItRmFucyB3ZXJkZW4gd2lzc2VuLCB3YXMgZ2VtZWludCBpc3QgOykKQmFuYXVzZW4gb2xlLi4uCkwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU3RvbmVyIC8gRGVzZXJ0IFJvY2sgKFd1cnplbCwgMjAuIEp1biAyMDAzLCAwMTo0NzowOSk6Cn4jISBybj1MdWcgcnQ9MTA1NjA2NjM2NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYwNjM1MTYKa2xhci4gd2VubiBlcyBmdWVyIGRpZSBkZWZpbml0aW9uIGVpbmVzIG11c2lrc3RpbHMgc2Nob24gYXVzcmVpY2h0LCBiZWtpZmZ0Cnp1IHNlaW4sIGdlaG9lcnQgbmVrdGFyIHdhaHJzY2hlaW5saWNoIGF1Y2ggenUgc3RvbmVyLW11c2lrIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogU3RvbmVyIC8gRGVzZXJ0IFJvY2sgKEdyaW1tYm9ybiwgMjAuIEp1biAyMDAzLCAwMTo0NzozMSk6Cn4jISBybj1XdXJ6ZWwgcnQ9MTA1NjA2NjQyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYwNjM1MTYKV2FzIGhhYmVuIGRlbm4gamV0enQgc2Nob24gd2llZGVyIGRpZSBGYW5zIHZvbiBNaWNrIEphZ2dlciBkYW1pdCB6dSB0dW4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBTdG9uZXIgLyBEZXNlcnQgUm9jayAoV3VyemVsLCAyMC4gSnVuIDIwMDMsIDAxOjUwOjA1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDU2MDY2NDUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjA2MzUxNgprZWluZSBhaG51bmcsIG9iIGRpZSBqdW5ncyBqYWdnZXJmYW5zIHNpbmQvd2FyZW4uIGRpZSBoYWJlbiBkYW1hbHMgaGllciB1bQpkaWUgZWNrZSBnZXdvaG50IHVuZCB3YXJlbiBpcmdlbmR3aWUgcGF1c2VubG9zIGJla2lmZnQgKGdlbmF1c28gd2llIGRhcwpwdWJsaWt1bSkuIGRpZSBtdXNpayBoYXQgamVkZW5mYWxscyB3ZWRlciB3YXMgbWl0IGphZ2dlciBub2NoIGlyZ2VuZCB3ZWxjaGVuCm1ldGFsLXZhcmlhbnRlbiB6dSB0dW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogU3RvbmVyIC8gRGVzZXJ0IFJvY2sgKEx1ZywgMjAuIEp1biAyMDAzLCAwMTo1MTo1Myk6Cn4jISBybj1XdXJ6ZWwgcnQ9MTA1NjA2NjYwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYwNjM1MTYKSnVuZ3MsCgpob2x0IEV1Y2ggaXJnZW5kd2llIEt5dXNzIGluIGhhdXMuIEFuaG9lcmVuIHVuZCBkYW5uIHdlaXRlcmJsdWJiZXJuIDspCkwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZWlhaCAoTHVnLCAyMC4gSnVuIDIwMDMsIDAxOjU3OjE2KToKSW1kYSBzYWd0OiBpYyBicmF1Y2ggbmUgbWF1cwpJbWRhIGdlaHQgbmFjaCBOb3JkZW4uCk1hcnZpbiBnZWh0IG5hY2ggb2Jlbi4KW1RvZDpMYXJzXSBFaW4gU2NoYXR0ZW5tYW5uIGhhdCBnZXJhZGUgSW1kYSB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdlaWFoIChNdWFkaWIsIDIwLiBKdW4gMjAwMywgMDg6NDk6MzYpOgp+IyEgcm49THVnIHJ0PTEwNTYwNjcwMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MDY3MDM2CmFsc28gZGFzIGlzdCAuLi4gCm1pciBmZWhsZW4gZGllIHBhc3NlbmRlbiB3b3J0ZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZWlhaCAoSHVtbmksIDIwLiBKdW4gMjAwMywgMTA6MTQ6MDMpOgp+IyEgcm49TXVhZGliIHJ0PTEwNTYwOTE3NzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MDY3MDM2Ci4uLi4gSW1kYS4KCkh1bW5pLCBNdWFkaWJzIFNhdHogYmVlbmRlbnQgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTdG9uZXIgLyBEZXNlcnQgUm9jayAoQXBvbGxvbmlhLCAyMC4gSnVuIDIwMDMsIDExOjAwOjQ4KToKfiMhIHJuPUx1ZyBydD0xMDU2MDY2MjI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjA2MzUxNgpBYWFhYWFhYWFhcmdsLCBkYXMgZ2FiJ3MgYWJlciBzY2hvbiBmcnVlaGVyLCBlaW5tYWwgdm9uIENDUiB1bmQgZGllIGFuZGVyZQpGYXNzdW5nIHZvbi4uLiBhZWguLi4gaGFiIGljaCB2ZXJnZXNzZW4sIGlyZ2VuZG5lIFNvdXRoZXJuIFJvY2sgQmFuZC4KCkFwbyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVlciBEcml2ZXIgKExpYXJhLCAyMC4gSnVuIDIwMDMsIDE2OjExOjAxKToKfiMhIHJuPVZhbmlvbiBydD0xMDU2MTE4MTkyIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDU2MTE4MTkyCkJBRUgsIGljaCBkYWNodGUgZGEgc3RlaHQgZXR3YXMgU3Bhbm5lbmRlcyBpbiBkZW0gQXJ0aWtlbC4gKmJlc2Nod2VyKiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVlciBEcml2ZXIgKEdyaW1tYm9ybiwgMjAuIEp1biAyMDAzLCAxNjoxMjo1MSk6Cn4jISBybj1MaWFyYSBydD0xMDU2MTE4MjYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjExODE5MgpTZWkgbGllYmVyIGZyb2ggZGFzcyBlcyBuaWNodCBQYXRjaGxldmVsIDE0NiBnZXdvcmRlbiBpc3QuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldWVyIERyaXZlciAoVmFuaW9uLCAyMC4gSnVuIDIwMDMsIDE2OjE0OjUxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDU2MTE4MzcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjExODE5MgpPY2gsIGhvY2h6YWVobGVuIGlzIGltbWVyIG9rLiBXZW5uIGljaCBhbmZhbmcsIGVpbmVuIG5ldWVuIDEzNWVyIG9kZXIgc28KcmF1c3p1YnJpbmdlbiwgZGFubiBzcGFldGVzdGVucyBrYW5uc3RlIGFuIG1laW5lbSBHZWlzdGVzenVzdGFuZCB6d2VpZmVsbi4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2Fja2VuIChmdWVyIGRpZSBBYndlaWNobGVyKSAoR3JpbW1ib3JuLCAyMC4gSnVuIDIwMDMsIDIxOjA3OjQxKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDU2MTM2MDU3IG9nPWt1bHR1cgp+IyEgcm49THVnIHJ0PTEwNTYxMzU5NTMgcmc9a3VsdHVyCn4jISB0aWQ9MTA1NjEzNTk1MwpXaWVkZXIgc28gTGV1dGUgZGVuZW4gZGllIHNoaWZ0LVRhc3RlIGtsZW1tdC4gT2RlciBzaW5kIGRhcyBkaWUgZ2VwbGF0enRlbgpUcm9tbWVsZmVsbGUgdm9uIGVpbiBwYWFyIEtvbnplcnRlbiB6dSBuYWhlIGRlciBCb3hlbiBkaWUgZGllIEJydWVkZXIgc28KYnJ1ZWxsZW4gbGFlc3N0PyAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXYWNrZW4gKGZ1ZXIgZGllIEFid2VpY2hsZXIpIChBbmF0b2wsIDIwLiBKdW4gMjAwMywgMjE6MTM6MDcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTYxMzYwNjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MTM1OTUzCkVpbmUgVW5zaXR0ZSwgZGllIG1pciBuaWNodCBiZWdyZWlmbGljaCBpc3QuIEVzIGlzdCB6aWVtbGljaCBlcndpZXNlbiwgCmRhY2h0ZSBpY2gsIGRhc3MgV09SVEUgSU4gR1JPU1NCVUNIU1RBQkVOIGxhZW5nc3QgbmljaHQgc28gbGVpY2h0IHp1Cmxlc2VuIHNpbmQgd2llIGRlciBub3JtYWxlIGdld29obnRlIFRleHQuLi4gRmluZGUgaWNoIGluIGRlbiBMaXplbnotClZlcnRyYWVnZW4gc28gbmVydmlnLiBWZXJtdXRsaWNoIGlzdCBkYXMgZGFzICJLbGVpbmdlZHJ1Y2t0ZSIuIDspCgpBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXYWNrZW4gKGZ1ZXIgZGllIEFid2VpY2hsZXIpIChGb29iYXIsIDIwLiBKdW4gMjAwMywgMjE6MTQ6MjYpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNTYxMzYzODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MTM1OTUzCnNvIGdlaHQgZXMgdmllbGVuIGxldXRlbiBhdWNoIG1pdCBrbGVpbmdlc2NocmllYmVuZW0uCgp1bmR3ZW5ubWFuZGllbGVlcnplaWNoZW53ZWdsYWVzc3RtdXNzbWFubm9jaHdlbmlnZXJ0aXBwZW4uCgpHcnVzcywKCiAgIEZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2Fja2VuIChmdWVyIGRpZSBBYndlaWNobGVyKSAoQW5hdG9sLCAyMC4gSnVuIDIwMDMsIDIxOjE0OjU2KToKfiMhIHJuPUZvb2JhciBydD0xMDU2MTM2NDY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjEzNTk1MwpEa25uc3RqY2hkVmtsd2dsc3NuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdhY2tlbiAoZnVlciBkaWUgQWJ3ZWljaGxlcikgKFZhbmlvbiwgMjAuIEp1biAyMDAzLCAyMToxNToyMik6Cn4jISBybj1BbmF0b2wgcnQ9MTA1NjEzNjM4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYxMzU5NTMKSW5zYmVzb25kZXJlIGtvbW10IGRlciBTaWduYWxlZmZla3QgZGVyIEdyb3NzY2hyZWlidW5nIGlyZ2VuZHdpZSBhYmhhbmRlbiwKd2VubiBtZWhyIGFscyA5MCUgZGVzIFRleHRlcyBzbyBkYXJnZXN0ZWxsdCBzaW5kLgoKViogZnJhZ3Qgc2ljaCwgb2IgZGFzIGVpbiAiV2VyIHBhc3N0IGhpZXIgbmljaHQgcmVpbiItVGV4dCBpc3QsIHVuZCB0aXBwdCAKICAgYXVmIGRlbiBMb3R0b2tvZW5pZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdhY2tlbiAoZnVlciBkaWUgQWJ3ZWljaGxlcikgKEZvb2JhciwgMjAuIEp1biAyMDAzLCAyMToxNToyOSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA1NjEzNjQ5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYxMzU5NTMKCgoKCgpTbywgdW5kIGpldHp0IER1IDtvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGVyZG9tZW50PyAoQW5hdG9sLCAyMC4gSnVuIDIwMDMsIDIzOjU5OjE5KToKCj4gdW50IHBlcmdhbWVudApFcyBpc3Qgdm9uIG9iZW4gYmlzIHVudGVuIHZvbGxnZXNjaHJpZWJlbi4KPiBsaWVzIHBlcmdhbWVudApBdWYgZGVtIFBlcmdhbWVudCBzdGVodCBudXIgZWluIFdvcnQ6ICJMaWZlbiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGVyZG9tZW50PyAoV2FyZ29uLCAyMS4gSnVuIDIwMDMsIDE0OjM0OjA4KToKfiMhIHJuPUFuYXRvbCBydD0xMDU2MTQ2MzU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjE0NjM1OQpIbW0uLi4gZGFubiBoYXN0IER1IGFiZXIgbWVocmVyZSBQZXJnYW1lbnRlIGRhYmVpLiA7KQogIFdhcmdvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uIG51ciBmdWVyIEx1Zy4uLiBkZS5hbHQubmV0ZGlnZXN0IChSb25kYSwgMjEuIEp1biAyMDAzLCAyMjozNDoyMSk6CkZyb206IENlY2lsZSBOZXUgPG5ldUBjaXAucGh5c2lrLnVuaS1tdWVuY2hlbi5kZT4KTmV3c2dyb3VwczogZGUuc29jLnN1Ymt1bHR1ci5nb3RoaWMKU3ViamVjdDogUmU6IFtQb2xsXSBXaWUga29tbXQncy4uLgpNZXNzYWdlLUlEOgo8UGluZS5MTlguNC40NC4wMzA2MTgyMDI0MzIwLjE3NDU1LTEwMDAwMEB3YW5rLmNpcC5waHlzaWsudW5pLW11ZW5jaGVuLmRlPgoKT24gMTggSnVuIDIwMDMsIFVkbyBXb2x0ZXIgd3JvdGU6Cj4gSXN0IG51ciBrb21pc2NoLCBkYXNzIG1pciBhbmRlcnN3byB3ZXNlbnRsaWNoIG1laHIgR2VuZXJ2ZSBhdWYgZGVuIEtla3MKPiBnZWh0LiBFcyBnaWJ0IHNjaG9uIGVpbmUgZ2V3aXNzZSBHcnVuZC1LdWx0dXIgaW0gInNjaHdhcnplbiBCbG9jayIuIDopCgpTYWdlbiB3aXIgLSBlaW5lbiBnZXdpc3NlbiBNaW5kZXN0YW5zdGFuZC4gTWFuIGt1bHRpdmllcnQgbXVlaHNhbSBkZW4KRWluZHJ1Y2sgZGVyIEFnb25pZSwgdmVyd2VjaHNlbHQgQ2xpcXVlbndpcnRzY2hhZnQgbWl0IEV4a2x1c2l2aXRhZXQgdW5kCkF1dGlzbXVzIG1pdCBBcnJvZ2FueiB1bmQgaXN0IGxldHp0bGljaCBzbyBzZWhyIG1pdCBzaWNoIHVuZCB3YWhsd2Vpc2UgZGVtCmFrdHVlbGxlc3RlbiBLbGF0c2NoICYgVHJhdHNjaCBvZGVyIEFsa29ob2xleHplc3NlbiBiZXNjaGFlZnRpZ3QgZGFzcwprZWluZSBaZWl0IG1laHIgdWVicmlnIGJsZWlidCwgZGVtIFJlc3QgZGVyIFdlbHQgZHVyY2ggYXVmZHJpbmdsaWNoCmludGVncmF0aXZlcyBWZXJoYWx0ZW4gdW5kIHBlbmV0cmFudCBndXRlciBQYXJ0eS1MYXVuZSBnZWhvZXJpZyBhdWYKZGVuIFNhY2sgenUgZ2VoZW4ueAoKQ2VjaWxlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQaHlzaWsgbGVpY2h0Z2VtYWNodCAtIG1pdCBkZS5hbHQubmV0ZGlnZXN0IChSb25kYSwgMjEuIEp1biAyMDAzLCAyMjozODowNCk6Ci4uLiBvZGVyOiBkYW1pdCBSdW1tcyB3YXMgenUgbGVzZW4gaGF0IDstKQoKW1NOOiBBdWYncyBXZXNlbnRsaWNoZSBnZWt1ZXJ6dC4gXQoKU3ViamVjdDogUmU6IFNjaHVtaSBoYXQgd29obCB6dSB2aWVsIFNwZWVkIGF1ZiBkZXIgR2VyYWRlLi4uCkZyb206IFdvbGZnYW5nIFByZWlzcyA8d29wckBnbXgubmV0PgpOZXdzZ3JvdXBzOiBkZS5yZWMuc3BvcnQubW90b3JzcG9ydC5mb3JtZWwxCk1lc3NhZ2UtSUQ6IDxmaWQ0ZnZnajJwN281NDh2NjJxaXN2c2U2M2Nqcm81cHF2QDRheC5jb20+CgpBbmRyZWFzIEphZWdlciA8c3BhbUBqYWVnZXI3NC5kZT4gd3JvdGU6Cj48cHJvaXJsQGdteC5uZXQ+IHdyb3RlOgo+PiBQaHlzaWsgS2xhc3NlIDc6Cj4+IFdlbm4gendlaSBGYWhyemV1Z2UgaGludGVyZWluYW5kZXJmYWhyZW4gZGFubiBwcm9maXRpZXJ0IGF1Y2ggZGVyCl9Wb3JkZXJtYW5uXyEKPj4gRGVyIEx1ZnR3aWRlcnN0YW5kIHdpcmQgZnVlciBiZWlkZSBGYWhyemV1Z2UgZ2VyaW5nZXIuCj4KPlVucyBoYXQgbWFuIGRhbWFscyBpbiBkZXIgNy4gS2xhc3NlIG5pY2h0IGJlaWdlYnJhY2h0LCBkYXNzIGRlcgpMdWZ0d2lkZXJzdGFuZAo+YXVjaCBmdWVyIGRlbiBWb3JkZXJtYW5uIGdlcmluZ2VyIHdpcmQuIEtvZW5udGVzdCBEdSBkYXMgbWFsIGJpdHRlIGV0d2FzCmdlbmF1ZXIKPmVybGFldXRlcm4/CgpCZWkgZWluZW0gaGludGVyIGVpbmVtIExLVyBmYWhyZW5kZW4gUEtXIGZ1bmt0aW9uaWVydCBkYXMgc286IAoKRGllIG9wdGltYWxlIGFlcm9keW5hbWlzY2hlIEZvcm0gKHdhcyBkZW4gTHVmdHdpZGVyc3RhbmQgYW5nZWh0LCBuaWNodApkZW4gQW5wcmVzc2RydWNrISkgaXN0IGVpbiBsYW5nZ2V6b2dlbmVyIFRyb3BmZW4gYmVpIGRlbSBkaWUgTGFlbmdlCnVuZ2VmYWVociBkYXMgZnVlbmZmYWNoZSBkZXMgRHVyY2htZXNzZXJzIGJldHJhZWd0LiBFaW4gTEtXIGhhdCBhYmVyCmtlaW5lIFRyb3BmZW5mb3JtLCBzb25kZXJuIGVpbmUgUXVhZGVyZm9ybS4gSGludGVyIGRpZXNlbSBRdWFkZXIKYmlsZGVuIHNpY2ggc3RhcmtlIFZlcndpcmJlbHVuZ2VuIHVuZCBlaW4gVW50ZXJkcnVjaywgZGVyIGRhcyBGYWhyemV1Zwpzb3p1c2FnZW4gbmFjaCBoaW50ZW4gc2F1Z3QuCgpXZW5uIGpldHp0IGVpbiBQS1cgZGlyZWt0IGhpbnRlciBlaW5lbSBMS1cgaGVyZmFlaHJ0LCBkYW5uIGhhdCBkYXMKcmVzdWx0aWVyZW5kZSAiR2VzYW10Z2ViaWxkZSIgYXVzIExLVyB1bmQgUEtXIGVpbmUgZ3JvZXNzZXJlIEFlaG5saWNoa2VpdAptaXQgZWluZW0gVHJvcGZlbiBhbHMgZGVyIExLVyBhbGxlaW4uIERlciBQS1cgZnVlbGx0IGRlbiBSYXVtLCBpbiBkZW0Kc2ljaCBzb25zdCBkaWUgVmVyd2lyYmVsdW5nZW4gdW5kIGRlciBVbnRlcmRydWNrIGJpbGRlbiB3dWVyZGVuIHVuZApiZXNjaGVydCBkZW0gTEtXIHNvIGVpbmVuIGdlcmluZ2Z1ZWdpZyBiZXNzZXJlbiBMdWZ0d2lkZXJzdGFuZC4gRGVyIFBLVwpnZW5pZXNzdCBlYmVuZmFsbHMgZWluZW4gZ2VyaW5nZXJlbiBMdWZ0d2lkZXJzdGFuZCwgYmV6YWhsdCBkYXMgYWJlcgptaXQgZWluZW0gdWViZXJoaXR6ZW5kZW4gTW90b3IsIDMgUHVua3RlbiwgMjAwIEVVUiB1bmQgZWluZW0gTW9uYXQKRmFocnZlcmJvdC4gT2RlciBzby4gOikKCkdydXNzCldvbGZnYW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkZS5hbHQubmV0ZGlnZXN0IC0gTGViZW5zaGlsZmUgKFJvbmRhLCAyMi4gSnVuIDIwMDMsIDIwOjA5OjAzKToKVW5nZXBydWVmdCA7LSkKClJvbmRhCgpNZXNzYWdlLUlEOiA8M0VGMjAzNUIuQjQwRDI5ODNAYWlreXUuZGU+CkRhdGU6IFRodSwgMTkgSnVuIDIwMDMgMjA6Mzk6MjMgKzAyMDAKRnJvbTogSmVucyBTY2hhZWZlciA8SmVucy5TY2hhZWZlckBhaWt5dS5kZT4KTmV3c2dyb3VwczogZGUudGFsay5yb21hbmNlClN1YmplY3Q6IFJlOiAiSWNoIGhhYiBEaWNoIGphIHNvIGdlcm5lIi4uLgoKSGl5YSEKCkRhdmlkIFdlaWRlbWFubiB3cm90ZToKWy4uLl0KPiBPaGplLCBkYSBiaW4gaWNoIHZpZWwgenUgc2NodWVjaHRlcm4gZnVlci4uLgoKQXVzIG1laW5lciBwZXJzb2VubGljaGVuIEVyZmFocnVuZzogaWNoIHdhciA0IEphaHJlIGxhbmcgZWluCk1EUy1NdXN0ZXJiZWlzcGllbCwgYmlzIGljaCB2b3IgZWluZW0gMy80IEphaHIgdm9uIG1laW5lciBUcmF1bWZyYXUKaGVyYXVzZ2VmaXNjaHQgd3VyZGUuIDstKQoKRGVyIGVyc3RlIFNjaHJpdHQgaXN0LCB0aWVmIGluIHNpY2ggenUgZ2VoZW4gdW5kIHp1IGJlZ3JlaWZlbiwgZGFzcyBtYW4KbmllbWFscyBuaWUgZWluZSBGcmF1IGFiYmVrb21tZW4gd2lyZC4KCk5laW4sIGRhcyBrbGFwdCBuaWNodC4KCk5laW4sIHdpcmtsaWNoLCBtYWNoIERpciBrZWluZSBIb2ZmbnVuZ2VuLgoKTmUsIGRhcyBtaXQgZGVtIFNleCBrYW5uc3QgRHUgYXVjaCB2ZXJnZXNzZW4uIE5pZS4KCldlaWwgRnJhdWVuIGVpbmZhY2ggbmljaHQga2FwaWVyZW4sIHdhcyBmdWVyIGVpbiBHb2xkc3R1ZWNrIGRhIHJ1bWxhZXVmdC4KVW5kIHVlYmVyaGF1cHQgcGFzc3Qga2VpbmUgc28gcmVjaHQgenUgRGlyLiBVbmQgZGllIEd1dGF1c3NlaGVuZHN0ZW4gc2luZApvaG5laGluIFNjaGxhbXBlbiwgZGllIER1IG5pY2h0IGhhYmVuIHdpbGxzdC4gQXVnZW5mdXR0ZXIsIG1laHIgbmljaHQuCgoKRGFzIGlzdCBqZXR6dCBrZWluIEdydW5kLCBzZWluIEdlbnRsZW1hbi1XZXNlbiB6dSBhZW5kZXJuLiBXYXJ1bSBzb2xsdGVzdApEdSBEaWNoIGZ1ZXIgZWluZSBGcmF1IHZlcmJpZWdlbj8gV2FydW0gc29sbHRlc3QgKkR1KiBkaWNoIGFlbmRlcm4/IFp1bQplaW5lbiBoYXN0IER1J3MgamEgCm9obmVoaW4gYWJnZWhhY2t0LCB6dW0gYW5kZXJuIGlzdCBqYSBuaWNodHMgdm9uIFdlcnQgYXVmIGRlbSBNYXJrdC4KCgpXZW5uIG1hbiBkYXMgdmVyaW5uZXJsaWNodCBoYXQsIGxhZXVmdCBtYW4gbWl0IGVpbmVyIGdhbnogYW5kZXJlbgpBdXNzdHJhaGx1bmcgZHVyY2ggZGllIEdlZ2VuZC4gV2VubiBtYW4gZGFzIHZlcmlubmVybGljaHQgaGF0LCBpc3QgbWFuCmF1Y2ggZnJlaSBmdWVyIGFnYW56IGFuZGVyZSBGb3JtZW4gZGVyIERyZWlzdGlna2VpdCEgU2NobGllc3NsaWNoIGlzdAplaW5lbSBkaWUgTWVpbnVuZyBlaW5lciBGcmF1IGVnYWwuLi4KCkljaDogIlNjaG51Y2tpaGFzaSwgd28gaXN0IGRlbm4gaGllciBkaWUgVG9pbGV0dGU/IgpXaWxkZnJlbWRlIEZyYXU6ICJXaWUgaGFzdCBEdSBkZW5uIGZ1ZXIgZWluIFByb2JsZW0/IgpJY2g6ICIqa2ljaGVyKiBJY2ggbXVzcyBhdWZzIEtsby4gSXN0IGRhcyBuaWNodCBrbGFyPyIKV2lsZGZyZW1kZSBGcmF1OiAiQWVoIC4uLiBkYSBkcnVlYmVuIgpJY2g6ICJEYW5rZSIKQXVmIEFic2F0eiBkcmVoZW4sIHJhc2NoZW4gU2Nocml0dGVzIGF1ZnMgS2xvIGdlaGVuIHVuZCBkZXIgSW5mb3JtYW50aW4Ka2VpbmVuIEJsaWNrIG1laHIgZ29lbm5lbi4KCkRhcyBHZWhlaW1uaXNzIGlzdCwgZGFzIG5pY2h0IHp1IHNwaWVsZW4sIHNvbmRlcm4gYXVjaCBzbyB6dSBtZWluZW4uIE1hbgppc3QgaW1tZXIgbm9jaCBuZXR0IHVuZCBoYWVsdCBGcmF1ZW4gaW1tZXIgbm9jaCBkaWUgVHVlciBhdWYuIEFiZXIgbWFuIGlzdAp2b2VsbGlnIHVudmVyYmluZGxpY2ggd2VpbCBtYW4gamEgd2lya2xpY2ggbml4IHdpbGwgLSB1bmQga2FubiBhdXMKdGllZnRlciBTZWVsZSBncmluc2VuLCB3ZW5uIGVpbmVtIHdhcyBhbmRlcmVzIHVudGVyc3RlbGx0IHdpcmQuCgpQYXJhZG94IGFiZXIgd2FociAtIGRhcmF1cyBoYWJlbiBzaWNoICpHZWxlZ2VuaGVpdGVuKiBlbnR3aWNrZWx0IQpKdW5nZUp1bmdlIC4uLgoKSHVlYnNjaGUgRnJhdTogIktlbm5lbiB3aXIgdW5zIG5pY2h0IHZvbiBpcmdlbmR3b2hlcj8iCkljaDogIipuYWNoZGVuayogTm9lLiIKClVuZCBhbHMgaWNoIGF1Y2ggbm9jaCBkaWUgR2VsZWdlbmhlaXRlbiBoYWJlIGFicHJhbGxlbiBsYXNzZW4gdW5kIGRhcwpsYW5nc2FtIGRpZSBSdW5kZSBtYWNodGUgLi4uIGRhbm4gd3VyZGUgZXMgZXJzdCByaWNodGlnIGx1c3RpZyEgOy0pCgotLSAKaHVtYmx5IHlvdXJzCgpKZW5zIFNjaGFlZmVyCkplbnMuU2NoYWVmZXJAYWlreXUuZGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBkZS5hbHQubmV0ZGlnZXN0IC0gTGViZW5zaGlsZmUgKEVsaXphYmV0aCwgMjIuIEp1biAyMDAzLCAyMDozMjozNCk6Cn4jISBybj1Sb25kYSBydD0xMDU2MzA1MzQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjMwNTM0Mwp3aWUgd2FlcnMgZGVubiBtYWwgbWl0IGVpbmVyIHJ1YnJpayBudXIgZnVlciBuZXRkaWdlc3Qgc2FjaGVuPyBlaW5pZ2VuIGxldXRlbgpzY2hlaW5lbiBkaWUgaGllcgplY2h0IGF1ZiBkZW4ga2VrcyB6dSBnZWhlbiB1bmQgZXMgaXN0IGRhbm4gZG9jaCBzY2h3ZXIgZGllIHp1IGlnbm9yaWVyZW4uIAphbHNvIGJpdHRlLCBpbSBzaW5uZSBhbGxlciBuZXRkaWdlc3QtaGFzc2VyOiBydWJyaWsgbmV0ZGlnZXN0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBkZS5hbHQubmV0ZGlnZXN0IC0gTGViZW5zaGlsZmUgKE5vbm5lLCAyMi4gSnVuIDIwMDMsIDIwOjMzOjI2KToKfiMhIHJuPUVsaXphYmV0aCBydD0xMDU2MzA2NzU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjMwNTM0MwpXaWUgd2FlcmUgZXMgZGVubiBtaXQgZWluZW0gU3BpZWxlciAnbmV0ZGlnZXN0JywgZGVuIGthbm4gbWFuIGRhbm4gaWdub3JpZXJlbgoqZyoKCk5vbm5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChFbGl6YWJldGgsIDIyLiBKdW4gMjAwMywgMjA6MzM6NDQpOgp+IyEgcm49Tm9ubmUgcnQ9MTA1NjMwNjgwNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYzMDUzNDMKZWluZSBnYW56IHRvbGxlIGlkZWUsIG5vbm5lLCBlY2h0LiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBkZS5hbHQubmV0ZGlnZXN0IC0gTGViZW5zaGlsZmUgKEFtYXJ5bGxpcywgMjIuIEp1biAyMDAzLCAyMDozNDoxNik6Cn4jISBybj1FbGl6YWJldGggcnQ9MTA1NjMwNjc1NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYzMDUzNDMKTmFqYSwgd2VubnMgbmFjaCAiYXVmIGRlbiBLZWtzIiBnaW5nZS4uLiAKaW4gKG1lZ2Epc2NobWFycm4gd2VyZGVuIHRhZWdsaWNoIGtvbXBsZXR0ZSBUaHJlYWRzIGlnbm9yaWVydC91ZWJlcmdhbmdlbiwgd2FzCmlzdCBhbiBkZW0gZWluZW4genVzYWV0emxpY2hlbiBQb3N0aW5nIHNvIHNjaHdlciwgZGFzIG5pY2h0IGF1Y2ggbm9jaCB6dQppZ25vcmllcmVuPwoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChNb3Jnb3RoLCAyMi4gSnVuIDIwMDMsIDIwOjM1OjIwKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDU2MzA2ODU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjMwNTM0MwoKd2VpbCBlaW5lbSBkZXIgc2NoZWlzcyBlcnN0bWFsIGVpbmUga29tcGxldHRlIHNlaXRlIHp1c2Nyb2xsdCwgYmV2b3IgbWFuCmFiYnJlY2hlbiB1bmQgaWdub3JpZXJlbiBrYW5uLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGRlLmFsdC5uZXRkaWdlc3QgLSBMZWJlbnNoaWxmZSAoUm9uZGEsIDIyLiBKdW4gMjAwMywgMjA6MzU6MjQpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwNTYzMDY4NTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MzA1MzQzCkxpZWJlIExldXRlLCBlcyBpc3QgZG9jaCBnYW56IGVpbmZhY2guIFdlbm4gZXMgaGllciBhbnNjaGVpbmVuZCB4IExldXRlIGdpYnQsCmRpZSBkYXMgbmVydnQgLSBpc3QgZGFzIGVjaHQgc28/IFdhcnVtIGhhdCBkYXMgZGF2b3Iga2VpbmVyIGdlc2FndD8gLSBkYW5uCnBvc3RlIGljaCBkYXMgZWluZmFjaCBuaWNodCBtZWhyLiBQdW5rdC4KClJvbmRhICprbnVycmlnLCB3YXJ1bSBkYXMga2VpbmVyIGRpcmVrdCBzYWd0LCBzb25kZXJuIGVyc3QgbWFsIHBvc3RldC4qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBkZS5hbHQubmV0ZGlnZXN0IC0gTGViZW5zaGlsZmUgKFZhbmlvbiwgMjIuIEp1biAyMDAzLCAyMDozNjoxOSk6Cn4jISBybj1Sb25kYSBydD0xMDU2MzA2OTI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjMwNTM0MwpQb3N0ZSBiaXR0ZSwgaWNoIGxlcyBkYXMgZ2Vybi4gU2NobWFycm4ubmV0ZGlnZXN0IGthbm4gYXVjaCBhYmJlc3RlbGx0IHdlcmRlbi4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBkZS5hbHQubmV0ZGlnZXN0IC0gTGViZW5zaGlsZmUgKEFuYXRvbCwgMjIuIEp1biAyMDAzLCAyMTowMDozOCk6Cn4jISBybj1WYW5pb24gcnQ9MTA1NjMwNjk3OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYzMDUzNDMKTnVyIHdlaWwgaXJnZW5kZWluIEtpbmQgcnVtbWF1bHQ/IEFsc28gd2VubiBkYXMgYWxsZXMgaXN0LCBkYXNzIHBhc3NpZXJlbgptdXNzLCB1bSBuZSBuZXVlIFJ1YnJpayB6dSBrcmllZ2VuLi4uIG9rYXksIGljaCBoZXR6JyBJZGxlZml4IGF1ZiBEaWNoLi4uCgpFcyBnaWJ0IG1pbmRlc3RlbnMgZ2VuYXVzb3ZpZWxlIExldXRlLCBkaWUgZGllIE5ldGRpZ2VzdGF1c3p1ZWdlIGdlcm4KbGVzZW4uIE1pdCBWZXJsYXViLCBlcyBnaWJ0IFRhZ2UsIGRhIGlzdCBkYXMgZGFzIGVpbnppZ2UgaGllciwgd2FzIHNpY2gKenUgbGVzZW4gbG9obnQuCgpBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBkZS5hbHQubmV0ZGlnZXN0IC0gTGViZW5zaGlsZmUgKEVsaXphYmV0aCwgMjIuIEp1biAyMDAzLCAyMTowMToyOCk6Cn4jISBybj1BbmF0b2wgcnQ9MTA1NjMwODQzOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYzMDUzNDMKdHlwaXNjaCBhbmF0b2wuIHp1IGRlaW5lbSBhcnRpa2VsIGdlbmVyZWxsIGhhYiBpY2ggbnVyIGVpbmVzIHp1IHNhZ2VuOgpsaWVzIG5vY2htYWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGRlLmFsdC5uZXRkaWdlc3QgLSBMZWJlbnNoaWxmZSAoR3JpbW1ib3JuLCAyMi4gSnVuIDIwMDMsIDIxOjAyOjIyKToKfiMhIHJuPUVsaXphYmV0aCBydD0xMDU2MzA4NDg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjMwNTM0MwpOb2NoIGVpbmUga25hcHBlIFN0dW5kZSwgZGFubiBpc3QgMjIgVWhyIHVuZCBkZXIgSnVnZW5kc2NodXR6IHNjaGxhZWd0IHp1LgpIb2ZmZW50bGljaC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChFbGl6YWJldGgsIDIyLiBKdW4gMjAwMywgMjE6MDI6NTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTYzMDg1NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MzA1MzQzCipvb2VodCogZmFsc2NoLiAyNCB1aHIgaXN0IGRhcyB6YXViZXJ3b3J0LiB0c2tzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdG9sbGVyIGFydGlrZWwgKE1vcmdvdGgsIDIyLiBKdW4gMjAwMywgMjE6MDQ6MTUpOgpudXIgZnVlciBFbGl6YWJldGggCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChBbmF0b2wsIDIyLiBKdW4gMjAwMywgMjE6MDc6MjgpOgp+IyEgcm49RWxpemFiZXRoIHJ0PTEwNTYzMDg1Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MzA1MzQzClNlbGJzdCB3ZW5uIGhldXRlIHNvIGVpbiBUYWcgc2VpbiBzb2xsdGUsIGFuIGRlbSBudXIgTmV0ZGlnZXN0IGluIGRlciBNUEEKd2lya2xpY2ggbGVzZW5zd2VydCBpc3QsIGthbm5zdCBEVSBuaWNodHMgZHJhbiBhZW5kZXJuLCBLaW5kY2hlbi4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBkZS5hbHQubmV0ZGlnZXN0IC0gTGViZW5zaGlsZmUgKEVsaXphYmV0aCwgMjIuIEp1biAyMDAzLCAyMTowODowMCk6Cn4jISBybj1BbmF0b2wgcnQ9MTA1NjMwODg0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYzMDUzNDMKbWFuY2hlIGxldXRlIGJyYXVjaGVuIHNvd2FzIGphLCB1bSBpaHIgZWdvIG9iZW4genUgaGFsdGVuICp6dWNrKi4gc2VpIGVzIGRpcgp2ZXJnb2VubnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChBbmF0b2wsIDIyLiBKdW4gMjAwMywgMjE6MTA6MzYpOgp+IyEgcm49RWxpemFiZXRoIHJ0PTEwNTYzMDg4ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MzA1MzQzClNlbGJzdHVlYmVyc2NoYWV0enVuZyBpc3QgRGVpbiB6d2VpdGVyLCBkcml0dGVyIHVuZCB2aWVydGVyIFZvcm5hbWU/IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChWYW5pb24sIDIyLiBKdW4gMjAwMywgMjE6MTM6MDApOgp+IyEgcm49QW5hdG9sIHJ0PTEwNTYzMDg0Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MzA1MzQzCkljaCBoYWIgc2Nob24gZWluIHBhYXIgbWFsIHNlbGJzdCBkcnVlYmVyIG5hY2hnZWRhY2h0LCBlaW5lIFJ1YnJpayB6dSBiYXVlbi4KTGFzcyBtaWNoIGRvY2ggbWFsIGluIFJ1aGUgd2lsbGt1ZXJsaWNoIHNlaW4uIAoKenUgRGVpbmVyIFd1bnNjaHJ1YnJpazogQWJnZWxlaG50IQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGRlLmFsdC5uZXRkaWdlc3QgLSBMZWJlbnNoaWxmZSAoQW5hdG9sLCAyMi4gSnVuIDIwMDMsIDIxOjE2OjI0KToKfiMhIHJuPVZhbmlvbiBydD0xMDU2MzA5MTgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjMwNTM0MwpVbmQgbWVpbmUgYW5kZXJlbiA4NDkyMzQgV3Vuc2NocnVicmlrZW4/IFVuZCB3YXMgZ2lidCBlcyBiZWkgUmVeMTAwPyAKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBkZS5hbHQubmV0ZGlnZXN0IC0gTGViZW5zaGlsZmUgKE1vcmdvdGgsIDIyLiBKdW4gMjAwMywgMjE6MTc6MjQpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNTYzMDkzODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MzA1MzQzCgpEdSB3aXJzdCBHb3R0IHVuZCAyIHNla3VuZGVuIHNwYWV0ZXIgcmF1Y2h0IGRlciBtZy1yZWNobmVyIG1pdCBhbGxlbiBiYWNrdXBzCmFiCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChBbmF0b2wsIDIyLiBKdW4gMjAwMywgMjE6MTg6MTgpOgp+IyEgcm49TW9yZ290aCBydD0xMDU2MzA5NDQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjMwNTM0Mwoqc2NobHVjayogTGFzcyB1bnMgYmVpIFJlXjk5IGF1ZmhvZXJlbiwgamE/IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChBbmF0b2wsIDIyLiBKdW4gMjAwMywgMjE6Mjk6MDcpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNTYzMDkxODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MzA1MzQzCkFiZXIgbWFsIGVybnN0aGFmdDogRXMgZ2VodCB1bSAic2NobWFycm4iLiBQZXIgc2UgZGllIFJ1YnJpaywgaW4gZGVyIHNvCnppZW1saWNoIGFsbGVzIHVuZ2VzdHJhZnQgc3RlaGVuYmxlaWJlbiBrYW5uLCBkYXMgbmljaHQgZ2xlaWNoIGdhbnogYXVzCmRlciBaZWl0dW5nIGdlbm9tbWVuIHdlcmRlbiBfbXVzc18uIEJlaSBnZXJhZGUgX2RpZXNlcl8gUnVicmlrIHp1IG1lY2tlcm4sIApkYXNzIG1hbiBkYSB3YXMgbmljaHQgbGVzZW4gd2lsbCwgZGFzIGlzdCBkb2NoIHNjaG9uIG5pY2h0IG1laHIgZWluZmFjaApudXIga2luZGlzY2gsIGRhcyBpc3QuLi4gbmFqYS4uLiAgQWJlciB3ZW5uIGRhcyBVc3VzIGlzdCwgZGFubiBiaXR0ZSBpY2ggCmRvY2ggZ2VybiB1bSBkaWUgZm9sZ2VuZGVuIFJ1YnJpa2VuOgoKc2NobWFycm4ubG9ncwpzY2htYXJybi5sb2dzLnppdHRlcm4tZ2VodC1kdXJjaC1kYXMtbW9yZ2VuZ3JhdWVuCnNjaG1hcnJuLmxvZ3MuaXN0LWpldHp0LWRhCnNjaG1hcnJuLmxvZ3MuZmFsc2NoZXItY2hhcgpzY2htYXJybi5sb2dzLmVsaXphYmV0aApzY2htYXJybi5sb2dzLmZsdwpzY2htYXJybi5sb2dzLm5uYWR3CgpTY2hsaWVzc2xpY2ggaGFlbmdlbiBlaW5lbSBkaWVzZSBUaGVtZW4gYXVjaCBpcmdlbmR3YW5uIHp1bSBIYWxzIHJhdXMgKGVzCndpcmQgc2ljaCBzaWNoZXIgaXJnZW5kd2VyIGZpbmRlbiwgYXVmIGRlbiBkaWVzZSBUaGVzZSB6dXRyaWZmdCkgdW5kIHZvbgpUaHJlYWRzIGthbm4gbWFuIGRhIGphIHdvaGwga2F1bSBhdXNnZWhlbi4KCkEKClBTOiBGdWVyICpkaWVzZXMqIFRoZW1hIHNvbGx0ZSAiY2F0Y2h1cHx1ZWJlcmdlaGUgdGhyZWFkfGFudHdvcnRlbiIgdHVuIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChOb25uZSwgMjIuIEp1biAyMDAzLCAyMTo1OToxNSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA1NjMxMDE0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYzMDUzNDMKRGFubiB3aWxsIGljaCBhYmVyIGF1Y2ggZWluZSBSdWJyaWs6CnNjaG1hcnJuLmdlbGFiZXIuQW5hdG9sX21pdF9Pcmt0b2V0ZXJfbWl0X1BhZHJlaWMKCk5vbm5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChHcmltbWJvcm4sIDIyLiBKdW4gMjAwMywgMjI6MDQ6MDIpOgp+IyEgcm49Tm9ubmUgcnQ9MTA1NjMxMTk1NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYzMDUzNDMKQXVjaCB3ZW5uIGRhcyBoaWVyICJzY2htYXJybiIgaXN0IG1vZWNodGUgaWNoIGhpZXIgZGllIEdlbGJlIEthcnRlIHplaWdlbi4KVWViZXJtYWVzc2lnZSBwZXJzb2VubGljaGUgQmVsZWlkaWd1bmdlbiBtdWVzc2VuIGF1Y2ggaGllciBuaWNodCBzZWluLiBFZ2FsCndhcyBEdSB2b24gQW5hdG9sIGhhZWxzdCBzb2xsdGVzdCBEdSB3aXJrbGljaCBuaWNodCBpbiBqZWRlIFNjaHVibGFkZSBncmVpZmVuLAplcyBnaWJ0IEdyZW56ZW4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBkZS5hbHQubmV0ZGlnZXN0IC0gTGViZW5zaGlsZmUgKE5vbm5lLCAyMi4gSnVuIDIwMDMsIDIyOjA1OjI2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDU2MzEyMjQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjMwNTM0MwpPaGEsIGRhIGhhdCBhYmVyIGVpbmVyIGRpZSBJcm9uaWUtVGFncyB1ZWJlcnNlaGVuLCB3YXM/IGljaCBzYWcgbnVyCidXYXR0aWVydGVyIFNjaHdlaW5lYnJhdGVuJwoKTm9ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChXaGl0ZXRpZ2VyLCAyMi4gSnVuIDIwMDMsIDIyOjA1OjQyKToKfiMhIHJuPU5vbm5lIHJ0PTEwNTYzMTIzMjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MzA1MzQzCldoaXRlVGlnZXIga2ljaGVydCBsb3MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChHcmltbWJvcm4sIDIyLiBKdW4gMjAwMywgMjI6MDc6NDQpOgp+IyEgcm49Tm9ubmUgcnQ9MTA1NjMxMjMyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYzMDUzNDMKSmEsIGRhIGhhdCBlaW5lciBkaWUgSXJvbmlldGFncyB1ZWJlcnNlaGVuLiBXZW5uIER1IGlucyBCYWQgZ2Voc3QgdW5kIGluCkF1Z2VuaG9laGUgZ2VyYWRlYXVzIGd1Y2tzdCBzaWVoc3QgRHUgZWluIFBvcnRyYWV0IGRlc2plbmlnZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGRlLmFsdC5uZXRkaWdlc3QgLSBMZWJlbnNoaWxmZSAoVmFuaW9uLCAyMi4gSnVuIDIwMDMsIDIyOjE3OjQ4KToKfiMhIHJuPU5vbm5lIHJ0PTEwNTYzMTE5NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MzA1MzQzCnNjaG1hcnJuLndhdHRpZXJ0ZS5icmF0ZW4udW5kLmZlcm53YWZmZW4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChKYWRhd2luLCAyMi4gSnVuIDIwMDMsIDIyOjE4OjMzKToKfiMhIHJuPVZhbmlvbiBydD0xMDU2MzEzMDY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjMwNTM0MwpzY2htYXJybi56cGsKSmFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IGRlLmFsdC5uZXRkaWdlc3QgLSBMZWJlbnNoaWxmZSAoR3JpbW1ib3JuLCAyMi4gSnVuIDIwMDMsIDIyOjE5OjQ5KToKfiMhIHJuPUphZGF3aW4gcnQ9MTA1NjMxMzExMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYzMDUzNDMKRXMuIEdpYnQuIEtlaW4uIFpQSy4gV2VkZXIgaW4gZGVyIE1QQSBub2NoIHNvbnN0d28uIEljaCB3ZWlzcyBuaWNodG1hbCB3YXMgZXMKc2VpbiBzb2xsLCBkaWVzZXMgbmljaHRleGlzdGVudGUgWlBLLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChKYWRhd2luLCAyMi4gSnVuIDIwMDMsIDIyOjI4OjAwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDU2MzEzMTg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjMwNTM0Mwo6c2NobW9sbHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChSb2NodXMsIDIyLiBKdW4gMjAwMywgMjI6Mjg6NTApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTYzMTIyNDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MzA1MzQzCkhhc3QgUmVjaHQsIG1pdCBkZXIgRXJ3YWVobnVuZyB2b24gUGEqIGltIGdsZWljaGVuIFNhdHoKc2luZCBkaWUgR3JlbnplbiB3aXJrbGljaCB1ZWJlcnNjaHJpdHRlbiA7LSkKCiAgUm9jaHVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChBbmF0b2wsIDIyLiBKdW4gMjAwMywgMjI6MzA6MzEpOgp+IyEgcm49Um9jaHVzIHJ0PTEwNTYzMTM3MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MzA1MzQzCkduaCwgaWNoIGthbm4ncyBhYi4gS2FubiBqYSB3b2hsIGtlaW5lciBiZWhhdXB0ZW4sIGljaCB0ZWlsZSBuaWNodCBhdXMuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChSb25kYSwgMjIuIEp1biAyMDAzLCAyMjozNTo1OCk6Cn4jISBybj1WYW5pb24gcnQ9MTA1NjMxMzA2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYzMDUzNDMKSG0uIFphZWhsdCBBbmF0b2wgenUgZGVuIHdhdHRpZXJ0ZW4gQnJhdGVuIG9kZXIgenUgZGVuIEZlcm53YWZmZW4/CgpSb25kYSAqdGlwcHQgYXVmIEZlcm53YWZmZSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBkZS5hbHQubmV0ZGlnZXN0IC0gTGViZW5zaGlsZmUgKEFuYXRvbCwgMjIuIEp1biAyMDAzLCAyMjozNjo1OCk6Cn4jISBybj1Sb25kYSBydD0xMDU2MzE0MTU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjMwNTM0Mwoqcm9uZGEgbWl0IHdhdHRpZXJ0ZW4gTGV1Y2h0c3RvZmZyb2VocmVuIGJld2VyZioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBkZS5hbHQubmV0ZGlnZXN0IC0gTGViZW5zaGlsZmUgKEJhbWJpLCAyMy4gSnVuIDIwMDMsIDExOjU3OjE3KToKfiMhIHJuPVJvbmRhIHJ0PTEwNTYzMDY5MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MzA1MzQzCkFsc28gaWNoIGZpbmRlIGRpZSBBcnRpa2VsIG1laXN0ZW5zIGx1c3RpZy4gSWNoIGZpbmRlIGF1Y2ggZGllIHZvbiBEZWVwYmx1ZQpnZXBvc3RldGVuIFdpdHplIG1laXN0ZW5zIGx1c3RpZywgYXVjaCB3ZW5uIGljaCBzaWUgdGVpbHdlaXNlIHNjaG9uIGtlbm5lLgpBbHNvIG5pY2h0IGF1ZmhvZXJlbiBtaXQgcG9zdGVuLCBob2VjaHN0ZW5zIG5ldWUgUnVicmlrIGVpbmZ1ZWhyZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChCYW1iaSwgMjMuIEp1biAyMDAzLCAxMjowMjowNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1NjMxMzE4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYzMDUzNDMKSWNoIGhhYmUgamEgZXJ3YXJ0ZXQsIGRhc3MgZGVyIGZvbGdlYXJ0aWtlbCB6dSBkZW0gYXJ0aWtlbCwgYXVmIGRlbiBkdQpnZXBvc3RldCBoYXN0LCBlaW4gZGVtZW50aSB6dW0genBrIGJlaW5oYWx0ZXQsIGFiZXIgaWNoIGhhZXR0ZSBlaW5lbiBhbmRlcmVuCmF1dG9yIGVyd2FydGV0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFNwaXJpdGVkIEF3YXkgKEdyaW1tYm9ybiwgMjMuIEp1biAyMDAzLCAxMjowMjoxNSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA1NjM2MjMzNiByZz1rdWx0dXIKfiMhIHRpZD0xMDU2MDk1OTk3Ck9LLCB3ZW5uIERpciBzb3ZpZWwgZGFyYW4gbGllZ3Qga29ycmlnaWVyZSBpY2ggbWljaDogT2ZmZW5iYXIgZmVobHQgZXMgRGlyCndlbmlnZXIgYW4gVWVidW5nIGRlbm4gYW4gQXVmZmFzc3VuZ3NnYWJlIHVuZCBGYWVoaWdrZWl0LgpadWZyaWVkZW4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBTcGlyaXRlZCBBd2F5IChNdWFkaWIsIDIzLiBKdW4gMjAwMywgMTM6NDE6MDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTYzNjI1MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MDk1OTk3CmphIG1laXN0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBTcGlyaXRlZCBBd2F5IChHcmltbWJvcm4sIDIzLiBKdW4gMjAwMywgMTM6NDk6NTQpOgp+IyEgcm49TXVhZGliIHJ0PTEwNTYzNjg0NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MDk1OTk3Cldlbm4gc2Nob24gZGFubiBiaXR0ZSBPbVU6CgpZZXMgTWFzdGVyLgpbSmEgTWVpc3Rlcl0KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFNwaXJpdGVkIEF3YXkgKE11YWRpYiwgMjMuIEp1biAyMDAzLCAxNDowNTowMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1NjM2ODk5NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTYwOTU5OTcKSGFpIEdyaW1tYm9ybiBzYW4uCltkdSBrYW5uc3QgbWljaCBrcmV1endlaXNlOildCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogU3Bpcml0ZWQgQXdheSAoQW5hdG9sLCAyMy4gSnVuIDIwMDMsIDE0OjEyOjU4KToKfiMhIHJuPU11YWRpYiBydD0xMDU2MzY5OTAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjA5NTk5NwpLb2VubnRlIGljaCBkYXp1IGJpdHRlIGRpZSBwcm9zb2Rpc2NoZSBJbmZvcm1hdGlvbiBoYWJlbj8gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogU3Bpcml0ZWQgQXdheSAoQW5hdG9sLCAyMy4gSnVuIDIwMDMsIDE0OjEzOjMwKToKfiMhIHJuPUFuYXRvbCBydD0xMDU2MzcwMzc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjA5NTk5NwpVbmQgR2VzdGlrL01pbWlrL0tvbnRleHQgYXVjaCBiaXR0ZS4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogZGUuYWx0Lm5ldGRpZ2VzdCAtIExlYmVuc2hpbGZlIChEYXJrbG9yLCAyMy4gSnVuIDIwMDMsIDE3OjI3OjU2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDU2MzEzMTg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjMwNTM0MwpLb21tdCBub2NoICpmZyoKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGRlLmFsdC5uZXRkaWdlc3QgLSBMZWJlbnNoaWxmZSAoWm9vaywgMjMuIEp1biAyMDAzLCAxODoxNzo1Nik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNTYzMDY5MjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MzA1MzQzCkJlaSBTY2gqIGZhZWxsdCBtaXIgZWluLCBkYXNzIGljaCB3ZWdlbiBzY3JvbGxlbmRlbiBBdXRvYmlvZ3JhcGhpZW4gYXVjaApuZSB3aWNodGlnZSBFYmVuZSBhYmdlc3RlbGx0IGhhYmUuIAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGRlLmFsdC5uZXRkaWdlc3QgLSBMZWJlbnNoaWxmZSAoWm9vaywgMjMuIEp1biAyMDAzLCAxODoxODoxNik6Cn4jISBybj1Sb25kYSBydD0xMDU2MzA2OTI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjMwNTM0Mwpab29rIGxpZXN0IGVzIGdlcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBkZS5hbHQubmV0ZGlnZXN0IC0gTGViZW5zaGlsZmUgKFpvb2ssIDIzLiBKdW4gMjAwMywgMTg6MTk6NDIpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNTYzMDg0Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MzA1MzQzCkdlc2NoYWV0enRlIE1QQS1Ib2hlaXQgQW5hdG9sLCBsZWlkZXIga2FubiBpY2ggbmljaHQgdGFlZ2xpY2ggZWluZ2Vsb2dndCBzZWluLAp1bSBFdWVyIEhlcnogenUgZXJmcmV1ZW4uIFpvb2sgdmVyc3ByaWNodCBCZXNzZXJ1bmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBkZS5hbHQubmV0ZGlnZXN0IC0gTGViZW5zaGlsZmUgKFpvb2ssIDIzLiBKdW4gMjAwMywgMTg6MjE6MTgpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNTYzMTAxNDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2MzA1MzQzCkphLCBoaWVyIGthbm4gZmFzdCBhbGxlcyBzdGVoZW4uIE51ciBBcnRpa2VsIHZvbiBHYWVzdGVuIG5pY2h0LiBEaWUgCmxvZXNjaHQgZGVyIEdyaW1tYm9ybiwgZWluZmFjaCBzby4gSGFiIGljaCBzZWxic3QgZ2V0ZXN0ZXQuCgpaT29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VsYnN0ZXJrZW5udG5pcy4uLiAoQW1hcnlsbGlzLCAyMy4gSnVuIDIwMDMsIDIzOjI5OjE0KToKRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuCi4uLgpbU2VoZXI6QW1hcnlsbGlzXSBsb3MsIEx1c2NoZW5wYWdnLgpbU2VoZXI6UGl0ZmFsbF0gbmFlaCBpY2ggaGV1dCBuaWNodC4KCkFtYSosIHdlaXNlIG5pZ2dlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPdXRpbmcgKE1hZ2RhbGVuYSwgMjYuIEp1biAyMDAzLCAxNDowODo0Nik6Ckh1bW5pIHppZWh0IGVpbmVuIHJvdGVuIHNjaGFyZmVuIE1pbmlyb2NrIGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE91dGluZyAoSHVtbmksIDI2LiBKdW4gMjAwMywgMTQ6MDk6MjYpOgp+IyEgcm49TWFnZGFsZW5hIHJ0PTEwNTY2MjkzMjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2NjI5MzI2ClBhaCwgaWNoIHRlc3RlIG5pZSB3aWVkZXIgd2FzIHdlbm4gaWhyIGRhYmVpc2VpZC4uLgoKSHVtbmksIGZyaXNzdCBhbGxlIGF1ZiwgYXVjaCBNYWdkYWxlbmEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT3V0aW5nIChBbWF6b3JhLCAyNi4gSnVuIDIwMDMsIDE0OjA5OjU3KToKfiMhIHJuPU1hZ2RhbGVuYSBydD0xMDU2NjI5MzI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjYyOTMyNgpoZXksIGRhcyB3aWxsIGljaCBzZWhlbiEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogT3V0aW5nIChSb2NodXMsIDI2LiBKdW4gMjAwMywgMTQ6MjM6MzQpOgp+IyEgcm49SHVtbmkgcnQ9MTA1NjYyOTM2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTY2MjkzMjYKRHUgc2NoZWluc3Qgc2NoYXJmZSBTYWNoZW4genUgbW9lZ2VuIDotKQoKICBSb2NodXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE91dGluZyAoR3JpbW1ib3JuLCAyNi4gSnVuIDIwMDMsIDE0OjM4OjU3KToKfiMhIHJuPVJvY2h1cyBydD0xMDU2NjMwMjE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjYyOTMyNgpodHRwOi8vd3d3LmdyaW5kaG90LmNvbS9ob21lLmh0bQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBPdXRpbmcgKE1haGFyZXQsIDI2LiBKdW4gMjAwMywgMTc6MjM6MDIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTY2MzExMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2NjI5MzI2CkZlaGxlbiBqYSBudXIgbm9jaCBkaWUgU3RyYXBzZSA6KQoKTWFoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogT3V0aW5nIChEYXJrbG9yLCAyNi4gSnVuIDIwMDMsIDIwOjI3OjA4KToKfiMhIHJuPU1haGFyZXQgcnQ9MTA1NjY0MDk4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTY2MjkzMjYKS2VpbmUgU3RydW1wZmhvc2U/CgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBPdXRpbmcgKEh1bW5pLCAyNi4gSnVuIDIwMDMsIDIwOjI3OjQ4KToKfiMhIHJuPURhcmtsb3IgcnQ9MTA1NjY1MjAyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTY2MjkzMjYKTml4LiBFcyB3aXJkIGtlaW5lIFN0cmFwc2UgYW4gSHVtbmkgZ2ViZW4uIERhcyBpc3Qgc2ljaGVyLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE91dGluZyAoQW1hcnlsbGlzLCAyNi4gSnVuIDIwMDMsIDIwOjI5OjAwKToKfiMhIHJuPUVsaXphYmV0aCBydD0xMDU2NjUyMTAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjYyOTMyNgpXaWUgYml0dGU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBPdXRpbmcgKEVsaXphYmV0aCwgMjYuIEp1biAyMDAzLCAyMDoyOTozOCk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTA1NjY1MjE0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTY2MjkzMjYKbmFhYS4uIGljaCBtZWluIGxhdHVlcm5pY2ggendpbmdlIC4uICpzZXVmeiogc2NoZWlzcyB0eXBvcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdWZiYXUgZWluZXMgSGlsZmVmb3J1bXMgenUgek1VRCAoVGh1ZmhpciwgMjYuIEp1biAyMDAzLCAyMzoyNToyNCk6Cn4jISBybj1LZW5ueSBydD0xMDU2NjYyNjM5IHJnPW11ZGNsaWVudHMKfiMhIHRpZD0xMDU2NjYyNjM5Cmthbm4gaWNoIGF1Y2ggZGllIGRhdGVuYmFua2VuIG9obmUgZGVuIGNsaWVudCBoYWJlbj8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE91dGluZyAoQW1hem9yYSwgMjcuIEp1biAyMDAzLCAxMDozNjoxMyk6Cn4jISBybj1IdW1uaSBydD0xMDU2NjUyMDY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjYyOTMyNgpkZW5uIHdlbmlnc3RlbnMgbmUgbmV0enN0cnVtcGZob3NlPyBpY2ggaGFldHRlIGRhIG5lIHBhc3NlbmRlIGRpZSBpY2ggZGlyCmxlaWhlbiBrb2VubnRlLi4uIDstKQphKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogT3V0aW5nIChBbWF6b3JhLCAyNy4gSnVuIDIwMDMsIDEwOjM3OjMxKToKfiMhIHJuPUFtYXpvcmEgcnQ9MTA1NjcwMjk3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTY2MjkzMjYKb2RlciByb3RlIGhhbHRlcmxvc2UgbmV0enN0cnVlbXBmZSBoYWV0dGUgaWNoIGF1Y2ggbm9jaCBpbSBhbmdlYm90Li4KYW1hem9yYSBmaW5kZXQsIHNvd2FzIHBhc3N0IGd1dCB6dSByb3RlbiBsZWRlcnJvZWNrZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdXRvIHp1IHZlcmthdWZlbiA7KSAoTGVpYmksIDI3LiBKdW4gMjAwMywgMTM6NTM6NDYpOgp+IyEgcm49UmFnbmFyb2VrIHJ0PTEwNTY3MDkwMTUgcmc9d3d3Cn4jISB0aWQ9MTA1NjcwOTAxNQpuZXR0ZSBiZXNjaHJlaWJ1bmcgOikpCmthbm4gaWNoIHZlcnN0ZWhuLCBkYXNzIHNpZSBkYXMgYXV0byBudW4gbG9zd2VyZGVuIG1vZWNodGUuCgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogT3V0aW5nIChUZWRkeSwgMjcuIEp1biAyMDAzLCAyMjoyNTowMSk6Cn4jISBybj1BbWF6b3JhIHJ0PTEwNTY3MDMwNTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU2NjI5MzI2CkFlaG0sIHNjaG9ja3QgZGFzIGlyZ2VuZHdlbiB3ZW5uIGljaCB6dWdlYmUsIHNvd2FzIGF1aGMgenUgaGFiZW4/Ck5hamEsIGVpZ2VudGxpY2ggbmljaHQgaGFsdGVybG9zLCB3ZWlsIGRpZSBicmF1Y2hlbiBuZW4gU3RyYXBzZ3VlcnRlbC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBPdXRpbmcgKEVsaXphYmV0aCwgMjcuIEp1biAyMDAzLCAyMjoyNTo0NSk6Cn4jISBybj1UZWRkeSBydD0xMDU2NzQ1NTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjYyOTMyNgpuZS4uZGFzIHNjaG9ja3QgaGllciBuaWVtYW5kZW4gbWVociA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FocmUgTGllYmUgKE5lZGltZSwgMjguIEp1biAyMDAzLCAxNzoxOTowNSk6CmZyYWcgZXVsZXJpY2ggbmFjaCBmYWxrZW5tYWVkY2hlbgpEZXIgRXVsZXJpY2ggdmVyZHJlaHQgZGllIEF1Z2VuIHVuZCBrb3R6dC4KCk5lZGltZSwga29wZnNjaHVldHRlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT3V0aW5nIChIaWdodCwgMjkuIEp1biAyMDAzLCAyMDoyNjo0OSk6Cn4jISBybj1NYWdkYWxlbmEgcnQ9MTA1NjYyOTMyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTY2MjkzMjYKaXMgbWlyIHNjaGxlY2h0ICxvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE91dGluZyAoQW1hem9yYSwgMzAuIEp1biAyMDAzLCAxMToxMzo0OSk6Cn4jISBybj1UZWRkeSBydD0xMDU2NzQ1NTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NjYyOTMyNgptaWNoIHNjaG9ja3Qgc28gc2NobmVsbCBuaXggOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpaYXViZXJlciAqa29wZnNjaHVldHRlbCogKFR3aW5naSwgIDEuIEp1bCAyMDAzLCAxMjo0ODowMik6ClRvZSBzY2h3ZW5rdCBlaW5lIGtsZWluZSBGbGFzY2hlIHZvciBkZXMgRWlzZHJhY2hlbiBOYXNlIGhlcnVtLiBQbG9ldHpsaWNoCnZlcnNjaHdpbmRldCBkaWUgRmxhc2NoZSEKRGVyIEVpc2RyYWNoZSBzaWVodCBiZXRydW5rZW4gYXVzLgpEZXIgRWlzZHJhY2hlIHJ1ZWxwc3QuCgpBcm1lciBEcmFjaGUgLi4uIEh1bW5pIHR1IGRvY2ggd2FzIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFphdWJlcmVyICprb3Bmc2NodWV0dGVsKiAoQ3JvZnQsICAxLiBKdWwgMjAwMywgMTI6NTA6MjMpOgp+IyEgcm49VHdpbmdpIHJ0PTEwNTcwNTY0ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3MDU2NDgyCkJpc3QgZHUgc2ljaGVyIGRhcyBkZXIgRHJhY2hlIGRhZHVyY2ggbmljaHQgZ2x1ZWNrbGljaGVyIGdld29yZGVuIGlzdD8KSXN0IHNpY2hlciBlaW50b2VuaWcgZGEgdGFnZWluLCB0YWdhdXMgaW4gZGVyIEVja2UgenUgaG9ja2VuIHVuZCBkcmF1Zgp6dSB3YXJ0ZW4gZGFzIGVpbiBTcGllbGVyIHZvcmJlaWtvbW10LiAgU28gd2lyZCBlciB3ZW5pZ3N0ZW5zIGV0d2FzCnZvbSBBbGsgZXJoZWl0ZXJ0IHVuZCBzaWVodCBkaWUgV2VsdCB2aWVsbGVpY2h0IGV0d2FzIGFuZGVycy4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFphdWJlcmVyICprb3Bmc2NodWV0dGVsKiAoQW5hdG9sLCAgMS4gSnVsIDIwMDMsIDEyOjUyOjM5KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNTcwNTY2MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3MDU2NDgyClVuZCBzdGVsbCBEaXIgdm9yIHNvIGVpbiBEcmFjaGUgc3B1Y2t0IGRhbm4gRmV1ZXIuLi4uIGFsc28gd2VubiBkZXIKTWFnaWVyIFJvY2h1cyB3YWVyZSwgd3VlcmRlIGVpbiBiZXRydW5rZW5lciBEcmFjaGUgc3BvbnRhbiAlQWxrb2hvbCBtZWhyCkZldWVyIHNwdWNrZW4gLSBxdWFsaXRhdGl2IHVuZCBxdWFudGl0YXRpdi4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBaYXViZXJlciAqa29wZnNjaHVldHRlbCogKE1hbmRyYWdvbiwgIDEuIEp1bCAyMDAzLCAxMjo1MzowOCk6Cn4jISBybj1BbmF0b2wgcnQ9MTA1NzA1Njc1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTcwNTY0ODIKLi4uIGFiZXIgZGFubiBibGF1LCBuaWNodCBnZWxiIC4uLgoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBaYXViZXJlciAqa29wZnNjaHVldHRlbCogKElzaSwgIDEuIEp1bCAyMDAzLCAxMjo1MzozNCk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTA1NzA1Njc4OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTcwNTY0ODIKTW9sb3Rvdi1Db2NrdGFpbHM/CmlzaSAobW91c3Nld2VmZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogWmF1YmVyZXIgKmtvcGZzY2h1ZXR0ZWwqIChNYW5kcmFnb24sICAxLiBKdWwgMjAwMywgMTI6NTQ6MTkpOgp+IyEgcm49SXNpIHJ0PTEwNTcwNTY4MTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3MDU2NDgyCk1pciBrb21tZW4gZGEgc2Nob24gYm9lc2UgR2VkYW5rZW4gZnVlciBlaW5lbiBNb2xvdG92LURyYWNoZW4gLi4uLgoKTWEqCgpQLlMuOiBTcGlubnQgbnVyIHdlaXRlciAuLi4gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBaYXViZXJlciAqa29wZnNjaHVldHRlbCogKFJvY2h1cywgIDEuIEp1bCAyMDAzLCAxMjo1NDozOCk6Cn4jISBybj1Jc2kgcnQ9MTA1NzA1NjgxNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTcwNTY0ODIKSG1tLCBzbyBhZWhubGljaC4uLgpSb2NodXMgKHJ1bWt1Z2Vsd2VyZmVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFphdWJlcmVyICprb3Bmc2NodWV0dGVsKiAoTW9vbnNoaW5lLCAgMS4gSnVsIDIwMDMsIDEyOjU0OjM5KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDU3MDU2Nzg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzA1NjQ4MgpXaWVzbyB2ZXJsZXR6dCBzaWNoIGVpbiBFaXNkcmFjaGUgYmVpbSBGZXVlcnNwdWNrZW4gbmljaHQgc2VsYmVyPyAKCk1hZ2llPyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFphdWJlcmVyICprb3Bmc2NodWV0dGVsKiAoTWFuZHJhZ29uLCAgMS4gSnVsIDIwMDMsIDEyOjU1OjM0KToKfiMhIHJuPU1vb25zaGluZSBydD0xMDU3MDU2ODc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzA1NjQ4MgpKdXBwcy4KCkRpZSBUaWdvbmVuIHNjaG1laXNzZW4gamEgbWl0IFNjaG5lZWJlcmdlbiB1bSBzaWNoIHVuZCBoYWJlbiBpaHJlIE1hZ2llIGZyZWkKZnVlciBhbmRlcmUgU2FjaGVuLiBEZXNoYWxiIHNpbmQgc2llIGF1Y2ggc28gdmllbCBzdGFlcmtlciB3aWUgZGVyIEVpc2RyYWNoZS4KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogWmF1YmVyZXIgKmtvcGZzY2h1ZXR0ZWwqIChNdWFkaWIsICAxLiBKdWwgMjAwMywgMTI6NTY6NTUpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTEwNTcwNTY4Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3MDU2NDgyCndlaWwgZGFzIGZldWVyZ2FzIGF1cyBzZWluZXIgZmV1ZXJnYXNibGFzZSwgd2VsY2hlIHVudGVyIGVub3JtZW4gZHJ1Y2sgc3RlaHQsCmVudHdlaWNodCB1bmQgc2ljaCBkYWJlaSBzY2huZWxsIGVudHNwYW5udC4gZGFzIGVyZ2lidCBlaW5lIGthZWx0ZXJvZWhyZSB1bQpkaWUgc2NobmF1dHplLCB3ZWxjaGUgZGVuIGRyYWNoZW4gdm9yIGRlbSBmZXVlciB3ZWxjaGVzIHNpY2ggYmVpbSBrb250YWt0IGFuCmRlciBsdWZ0IGVudHp1ZW5kZXQgc2NodWV0enQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFphdWJlcmVyICprb3Bmc2NodWV0dGVsKiAoQm9pbmcsICAxLiBKdWwgMjAwMywgMTI6NTc6NDMpOgp+IyEgcm49TXVhZGliIHJ0PTEwNTcwNTcwMTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3MDU2NDgyCkljaCB3ZWlzcyBqYSBuaWNodCB1ZWJlciB3ZWxjaGVuIEVpc2RyYWNoZW4gaWhyIHJlZGV0IC4uLiBhYmVyIG1laW5lcgpzcHVja3Qga2VpbiBGZXVlci4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogWmF1YmVyZXIgKmtvcGZzY2h1ZXR0ZWwqIChNb29uc2hpbmUsICAxLiBKdWwgMjAwMywgMTI6NTg6MDgpOgp+IyEgcm49Qm9pbmcgcnQ9MTA1NzA1NzA2MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTcwNTY0ODIKTW9vbnNoaW5lIGRhbmt0ICBCb2luZy4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBaYXViZXJlciAqa29wZnNjaHVldHRlbCogKEFuYXRvbCwgIDEuIEp1bCAyMDAzLCAxMjo1ODoyNCk6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTA1NzA1NzA4OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTcwNTY0ODIKU28gZW50enVlbmRldCBkZXIgZGVuIEFsa29ob2wgYWJlciBuaWNodC4gT29vb29jaC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBSdW5kaGVydW0uLi4gKE9ya3RvZXRlciwgIDEuIEp1bCAyMDAzLCAxODowNjoxNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTA1NzA3NTMyOSByZz13d3cKfiMhIHRpZD0xMDU3MDU1MzkyCk5hamEsIGRhcyBtaXQgZGVtIExpbmtzdmVya2VociBpc3QgamEgZWggYmFsZCBwYXNzZWUuClVtIHNpY2ggYW4gZGllIEVVIGFuenVwYXNzZW4gZnVlaHJlbiBkaWUgQnJpdGVuIGphIGpldHp0IGF1Y2ggZGVuClJlY2h0c3ZlcmtlaHIgZWluLiBQcm9iZXdlaXNlIGFiIDEuOS4gZXJzdCBtYWwgbnVyIGZ1ZXIgZGllIExLVy4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBSdW5kaGVydW0uLi4gKE1hbmRyYWdvbiwgIDEuIEp1bCAyMDAzLCAxODowNzoxMSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA1NzA3NTU3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTcwNTUzOTIKVW5kIGFiIDIuOS4gYXVjaCBmdWVyIGZsdW5kZXJmb2VybWlnZSBQS1cgLi4uLgoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBSdW5kaGVydW0uLi4gKEdyaW1tYm9ybiwgIDEuIEp1bCAyMDAzLCAxODowOTowMik6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTA1NzA3NTYzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTcwNTUzOTIKSXN0IGRhcyBuaWNodCBwYXRoZXRpc2NoLCB3ZW5uIG1hbiBtZWludCBtYW4gbXVlc3NlIGplZGVuIFdpdHogbm9jaG1hbCBkYWR1cmNoCmVya2xhZXJlbiwgZGFzcyBtYW4gdmVyc3VjaHQgZWluZW4gc2Nod2FjaGVuIHNvbGNoZW4gb2JlbmRyYXVmIHp1IHNldHplbj8KTmViZW5iZWkgcmVzdWx0aWVydCBlaW4gRnJvbnRhbHp1c2FtbWVuc3Rvc3MgZWluZXMgUEtXIG1pdCBlaW5lbSBMS1cgbmljaHQgaW4KZWluZW0gZmx1bmRlcmZvZXJtaWdlbiBQS1cuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWmF1YmVyZXIgKmtvcGZzY2h1ZXR0ZWwqIChUb2UsICAxLiBKdWwgMjAwMywgMTg6MjY6MDMpOgp+IyEgcm49Q3JvZnQgcnQ9MTA1NzA1NjYyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTcwNTY0ODIKZmluZGUgcm9iaW4KOCB3YWVjaHRlcgp3ZXIgaGF0IGRlbm4gZ2VzYWd0LCBkYXNzIGljaCBkZW0gYXJtZW4ga2VybCBsaWNodCBnZXphdWJlcnQgaGFiZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFJ1bmRoZXJ1bS4uLiAoTnl4LCAgMS4gSnVsIDIwMDMsIDE4OjI4OjM5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDU3MDc1NzQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzA1NTM5MgpQYXRoZXRpc2NoIGltIFNpbm5lIHZvbiBlcmhhYmVuPyBPZGVyIGltIFNpbm5lIHZvbgp1ZWJlcnRyaWViZW4/IE9kZXIgdmllbGxlaWNodCBhdWNoIGltIFNpbm5lIHZvbgpsZWlkZW5kPyBMZXR6dGVyZXMgc2NoZWludCBtaXIgZGllIHdhaHJzY2hlaW5saWNoc3RlClZhcmlhbnRlIHp1IHNlaW4uIE1hbmRyYWdvbnMgbGVpc2UgSXJvbmllIHZlcnN0ZWhlIGljaCwKRGVpbmVuIFByb2ZpbGllcnVuZ3MtVmVyc3VjaCBhbGxlcmRpbmdzIG5pY2h0LCBkZXIgaXN0CmVoZXIgcGF0aG9nZW4gYWxzIHBhdGhldGlzY2guCgoKTGEgTnl4CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBaYXViZXJlciAqa29wZnNjaHVldHRlbCogKENyb2Z0LCAgMS4gSnVsIDIwMDMsIDE4OjM2OjQ5KToKfiMhIHJuPVRvZSBydD0xMDU3MDc2NzYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzA1NjQ4MgpXZXIgaGF0IGJlaGF1cHRldCBkYXMgZGFzIGplbWFuZCBnZXRhbiBoYXQ/ICBVbmQgd2FzIGZ1ZXIgZWluIGFsaWFzIGhhc3QKZHUgYXVmIDg/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogUnVuZGhlcnVtLi4uIChHcmltbWJvcm4sICAxLiBKdWwgMjAwMywgMTg6Mzk6MDkpOgp+IyEgcm49Tnl4IHJ0PTEwNTcwNzY5MTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3MDU1MzkyCkltIFNpbm5lIHZvbiBtaXRsZWlkZXJyZWdlbmQuIFdhcyBEdSBhbHMgZmVpbmUgSXJvbmllIHZlcnN0ZWhzdCBpc3QgaW4KV2lya2xpY2hrZWl0IHRhdHNhZWNobGljaCB6aWVtbGljaCBwbHVtcC4gUElTQSBhbSBXZXJrLCBqYT8gT2RlciBzY2hsaWNodAprZWluZSBBaG51bmcgdm9uIGRlciBCZWRldXR1bmcgZGVzIFdvcnRlcyBJcm9uaWU/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFJ1bmRoZXJ1bS4uLiAoTWFuZHJhZ29uLCAgMS4gSnVsIDIwMDMsIDE4OjU3OjA1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDU3MDc3NTQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzA1NTM5MgpKZW1hbmQsIGRlciBlcndpZXNlbmVybWFzc2VuIGF1ZiBqZWRlbiBub2NoIHNvIGJlc2NoZXVlcnRlbiBLb2VkZXJhcnRpa2VsCmVpbiBSZXBseSBwb3N0ZXQgc29sbHRlIG1hbCBpbiBzaWNoIGdlaGVuIHVuZCBzaWNoIHVlYmVybGVnZW4sIHdhcyBhdWYKYW5kZXJlIHBhdGhldGlzY2ggd2lya3QuCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFJ1bmRoZXJ1bS4uLiAoR3JpbW1ib3JuLCAgMS4gSnVsIDIwMDMsIDE5OjAxOjI5KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDU3MDc4NjI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzA1NTM5MgpIYWIgaWNoIGdlbWFjaHQuIEVyZ2VibmlzOiBEZXIgTWVpbnVuZyB6dSBzZWluIG5vY2ggbmljaHRtYWwgc29uZGVybGljaApzdWJ0aWxlIFdpdHplIGVya2xhZXJlbiB6dSBtdWVzc2VuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBSdW5kaGVydW0uLi4gKEFuYXRvbCwgIDEuIEp1bCAyMDAzLCAyMjoyNzoyNik6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTA1NzA3ODYyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTcwNTUzOTIKU2VsYnN0IEdyaW1tYm9ybmJhc2hpbmcgd2lsbCBnZWxlcm50IHNlaW4uCgpNaXQgTnl4IGhhc3QgRHUgb2ZmZW5zaWNodGxpY2ggZWluZW4gZWJlbmJ1ZXJ0aWdlbiBQYXJ0bmVyIGdlZnVuZGVuLCAKTWFuZHJhZ29uLi4uIGFsbGUgYW5kZXJlbiBzaW5kIERpciB1ZWJlci4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV29yYW4gbWFuIGVya2VubnQsIGRhc3MgbWFuJ3MgbWl0IFJQRyB1ZWJlcnRyZWlidDogKEFtYXJ5bGxpcywgIDIuIEp1bCAyMDAzLCAxMjo0NToyMSk6Cn4jISBybj1BbnRoZWEgcnQ9MTA1NzE0MjMwNyByZz13aXR6ZQp+IyEgdGlkPTEwNTcxNDIzMDcKLS1tZWhyLS0oMiUpIEFORkFORyBxCgpzY25yLApBbWEqIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdvcmFuIG1hbiBlcmtlbm50LCBkYXNzIG1hbidzIG1pdCBSUEcgdWViZXJ0cmVpYnQ6IChEZWVwYmx1ZSwgIDIuIEp1bCAyMDAzLCAxMjo1MDo1MCk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTA1NzE0MjcyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTcxNDIzMDcKRGFzIHdhciBqZXR6dCBlaGVyIGRpZSBBbnR3b3J0LCB3b3JhbiBtYW4gZXJrZW5udCwgZGFzcyBqZW1hbmQgbWl0IGRlbSBzYW1tZWxuCnZvbiAiV29yYW4gZXJrZW5udCBtYW4iLVN0aWNocHVua3RlbiB1ZWJlcnRyZWlidAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU29zbywgZGFzIHVlYmVyZGVua2VuIHdpciBub2NobWFsIC4uLiAoTW9vbnNoaW5lLCAgMi4gSnVsIDIwMDMsIDE5OjM5OjU0KToKCk1vb25zaGluZSB3aWxsIFhldG9sb3NjaCB0b2V0ZW4hClphcmt1IHNjaG51cnJ0OiBuZW5lCk1pcmlsIHNhZ3Q6IHNvCk1pcmlsIHNhZ3Q6IGF1c2dlc2NoYWx0ZXQKTWlyaWwgd2lyZCB2b24gZWluZW0gZnVlcmNodGVybGljaGVuIEJsaXR6IGdldHJvZmZlbi4KICBFaW4gWndlaWZlbCBhdG9taXNpZXJ0IE1pcmlsLgpNaXJpbCBmYWVsbHQgdG90IHp1IEJvZGVuLgpEdSBzaWVoc3QgZWluZSBkdW5rbGUgR2VzdGFsdCwgZGllIGV0d2FzIER1bnN0IGVpbnNhbW1lbHQgLi4uIG9kZXIgdmllbGxlaWNodApiaWxkZXN0IGR1IERpciBkYXMgYXVjaCBudXIgZWluIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFNwYXNzb2JqZWt0ZSAoTW9yZ290aCwgIDMuIEp1bCAyMDAzLCAxNDo1MzozOCk6Cn4jISBybj1Ub2RpZSBydD0xMDU3MjM2NzAyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDU1ODU2MzU5CkZMVwpbVG9kOkxhcnNdIEVpbmUgc3RhcmtlIG5lZ2F0aXZlIEJlc2NobGV1bmlndW5nIGhhdCBnZXJhZGUgVG9kaWUgdW1nZWJyYWNodC4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogU3Bhc3NvYmpla3RlIChNYW5kcmFnb24sICAzLiBKdWwgMjAwMywgMTU6MDI6MDUpOgp+IyEgcm49TW9yZ290aCBydD0xMDU3MjM2ODE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTg1NjM1OQpBdWYgbmUgR2llc3NrYW5uZSBnZWZhbGxlbj8KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IFNwYXNzb2JqZWt0ZSAoR3JpbW1ib3JuLCAgMy4gSnVsIDIwMDMsIDE5OjQ1OjE2KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDU3MjU0MzEwIG9nPWRpc2t1c3Npb24KfiMhIHJuPU1vcmdvdGggcnQ9MTA1NzI1NDE5NSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA1NTg1NjM1OQpTdGltbXQsICI6bGllZ3QgcHJ1c3RlbmQgdW5kIHRyb21tZWxuZCBhdWYgZGVtIEJvZGVuIiBpc3Qgd2lya2xpY2ggc2Nob24KKnNlaHIqIHN1YnRpbC4gSWNoIHdhcnRlIGdlc3Bhbm50IGF1ZiBNYW5kcmFnb25zIEVybGFldXRlcnVuZy4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IFNwYXNzb2JqZWt0ZSAoVmFuaW9uLCAgMy4gSnVsIDIwMDMsIDE5OjQ1OjI0KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA1NzI1NDE5NSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA1NTg1NjM1OQpTY2h1c2NoIQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBTcGFzc29iamVrdGUgKERlZXBibHVlLCAgNC4gSnVsIDIwMDMsIDEwOjQzOjEzKToKfiMhIG9uPURlZXBibHVlIG90PTEwNTczMDgxNTIgb2c9ZGlza3Vzc2lvbgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNTczMDc5MTkgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNTU4NTYzNTkKZ2VuYXUsIGRlciB0aXRlbCBtdXNzIHNvZm9ydCB6dXJ1ZWNrZ2VzZXR6dCB3ZXJkZW4gPGZ1c3NhdWZzdGFtcGY+ClNjaGxpZXNzbGljaCB3dXJkZSBtZWluICJWZXJoZWlyYXRldCBtaXQgVE9EIiBhdWNoIHdpZWRlciBnZWxvZXNjaHQgOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBTcGFzc29iamVrdGUgKENhdHdlYXpsZSwgIDQuIEp1bCAyMDAzLCAxMTo0NToxNSk6Cn4jISBybj1HcnVtcGYgcnQ9MTA1NzMwNjgxOSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA1NTg1NjM1OQpEdSBoYXN0IGRhcyBnYW56IHJpY2h0aWcgZXJrYW5udCA6LSkKCldlcmQgZWluZmFjaCBub2NoIGVpbiBiaXNzY2hlbiBhZWx0ZXIsIHNhZyB6dSBhbGxlbSBHdXRlbiBUYWcsIHdhcyBoaWVyIHNvCnJ1bWxhZXVmdCB1bmQgc3RlaWdlIGxhbmdzYW0gYWJlciBzdGV0aWcgaW0gQmVrYW5udGhlaXRzZ3JhZC4KCldlbm4gZHUgZGFubiBhbSBFbmRlIG5vY2ggbmljaHQgYWxsenV2aWVsZSBMZXV0ZSAoaGllciBtdXNzIG1hbiBhbGxlcmRpbmdzCm5hY2ggQmVkZXV0dW5nc2dyYWQgZ2V3aWNodGVuKSBhbmdlcGlzc3QgaGFzdCB1bmQgdm9yIGFsbGVtIGRpZQooU2VsYnN0LSlMb2VzY2h1bmdzaHVlcmRlIGVyZm9sZ3JlaWNoIGdlbWVpc3RlcnQgaGFzdCwgZGFubiwgamEgZGFubiwga2FubnN0CmR1IGRpciBmYXN0IGFsbGVzIGVybGF1YmVuLiAKCllUQyAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBadWVyaWNoIENpdHkgKE5vbm5lLCAgNS4gSnVsIDIwMDMsIDA5OjQ3OjQwKToKfiMhIHJuPUFub3JpcyBydD0xMDU3MzYwMjEyIHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwNTczNjAyMTIKSXN0IGRhcyByb3QxMz8KCk5vbm5lLCB2ZXJzdGVodCBudXIgQmFobmhvZi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWnVlcmljaCBDaXR5IChWYW5pb24sICA1LiBKdWwgMjAwMywgMDk6NTA6NDcpOgp+IyEgcm49Tm9ubmUgcnQ9MTA1NzM5MTI2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTczNjAyMTIKYXJ2YSwgcW5mIHZmIGZwdWpydm1yZXFyaGdmcHUuIHJ2YSBqcmZyYWd5dnB1IHhiemN5cmtyZXJlIHBicXIgbnlmIGViZzEzLgppcmV0eXJ2cHVvbmUgaXZyeXlydnB1ZyB6dmcgcXJmLiBqcmFhIHpuYSB4cnZhcmEgeHJsIHVuZyB2ZiByZmZ2dCAuLi4KCkkqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBadWVyaWNoIENpdHkgKE5vbm5lLCAgNS4gSnVsIDIwMDMsIDA5OjU0OjE2KToKfiMhIHJuPVZhbmlvbiBydD0xMDU3MzkxNDQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzM2MDIxMgpRbmFhIHFuZXMgbm9yZSB4cnZhIEZwdWpydm1yZSBidWFyIFRydXZlYWpucmZwdXIgcXZyIEhGTiBpcmV5bmZmcmEgYnFyZQpzbnJ5eWcgcW5mIGF2cHVnIGhhZ3JlIHF2ciBSa2NiZWdvcmZwdWVucmF4aGF0cmE/CgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFp1ZXJpY2ggQ2l0eSAoQ3JvZnQsICA1LiBKdWwgMjAwMywgMDk6NTU6MDApOgp+IyEgcm49VmFuaW9uIHJ0PTEwNTczOTE0NDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3MzYwMjEyCkhtLiAgRGFzIGlzdCBhYmVyIGxlaWNodGVyIHp1IGtuYWNrZW4gYWxzIERFUy4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBadWVyaWNoIENpdHkgKEFtYXJ5bGxpcywgIDUuIEp1bCAyMDAzLCAxMDowMjo0NCk6Cn4jISBybj1WYW5pb24gcnQ9MTA1NzM5MTQ0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTczNjAyMTIKSnZyLCBWdWUgaXJlZmdydWcgcW5mIGF2cHVnPyBYeW5lcmYgVmFxdm0gc2hyZSBTdmZwdXhiY2MuCgpOem4qLCB4YmFhZ3IgTmFiZXZmJyBDYmZndmF0IGNlYm95cnp5YmYgaXJlZmdydXJhLCB4bmFhIG5vcmUgeXJ2cXJlIGF2cHVnCnhienpyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogWnVlcmljaCBDaXR5IChOb25uZSwgIDUuIEp1bCAyMDAzLCAxMDowNjoyNik6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTA1NzM5MjE2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTczNjAyMTIKQW53biwgdnB1IGpydmZmIGF2cHVnLCBibyB6bmEgcXZyIFpoZ25hZ3JhIG5oZiBxcnogUWJlZ3poYXEtUnpmLVhuYW55IG55ZgpTdmZwdXIgb3JtcnZwdWFyYSB4bmFhLgoKQWJhYXIsIHZmZyB4cnZhIFpoZnB1cnlmcHVob2ZyZSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFp1ZXJpY2ggQ2l0eSAoTW9yZ290aCwgIDUuIEp1bCAyMDAzLCAxMDowNzo1OSk6Cn4jISBybj1Ob25uZSBydD0xMDU3MzkyMzg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzM2MDIxMgoKS2NqIGxlaiBhbGRyIHNsZGkgYW5yZSBza3VjaiByayBwc2QgQXNsb2ZrCgpSCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBadWVyaWNoIENpdHkgKFZhbmlvbiwgIDUuIEp1bCAyMDAzLCAxMDoyMjoyNyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTA1NzM5MjE2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTczNjAyMTIKU3ZmcHV4YmNjPyAKTm9yZSB1bnl5YiEgVnB1IGpidWEgdmEgU2V2cmZ5bmFxLiBPbWogdmEgcnZhcmUgRmducWcsIHF2ciBpYmEgU2V2cmZ5bmFxCmh6bXZhdHJ5ZyB2ZmcuIEF2cHUgYWhlIHFuZiwgcmYgZnZhcSBuaHB1IGFicHUgQmZnc2V2cmZyYS4KCkkqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBadWVyaWNoIENpdHkgKEFtYXJ5bGxpcywgIDUuIEp1bCAyMDAzLCAxMDo0NDozOCk6Cn4jISBybj1WYW5pb24gcnQ9MTA1NzM5MzM0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTczNjAyMTIKVnB1IGhyb3JlZnJnbXIgem55LgoKTnB1Z2hhdCwgYXZwdWcgRUJHMTMtaXJlRlBVWUhSRkZSWWcsIGZiYXFyZWEgbmFxcmVmLiBJdnJ5IEZjbmZmLi4uOgoKTENKUyBUWUtTUVhXUCwKCkhYIEdNTExBWlVKIEhNWVJWIE1RL0xUIEdBSFUgNyBZWkogV1RGRiBEVEwgTUUgQVEgIkdHVElMQlJaR0oiIFRGIEJCUExNVVogRUZYCkdQWVlRIEtMRUVBIEJCIFFDUlZXUi4KClRaVCBaUENIIFNEUFAgWkdZS0ZNVVpXRSBXS1VSWVBTVklZLCBWQ1lMSCBYV0FQS01QTFNHSUYhCgpUSVQgWFRIUllSIEdWSUMgT0dOTVlXVVpWUEFEQllBSUYgQ1NQRlBBIFRCViBXTUdTIEJHS1BMRFdBWCBMRiBPUE5CIEFXRkhQRi4KCkRQRCBYRUZGIQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogWnVlcmljaCBDaXR5IChWYW5pb24sICA1LiBKdWwgMjAwMywgMTE6MTQ6MzMpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwNTczOTQ2Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3MzYwMjEyClNuenogeW15d3JlZGtqcyBjd2wgZW1jIFJ3bGNjZ3ogd215IHRrem5iaWYgcnkgaHdrYS4gVHdsIHZ3cnZ3LCBranMgcWlqdmkgaGdqcwp5Y2d6bCBvemVvbHkuIE52Z2xkb3dvIGRmeXJrdWwgdHVqIGxmd2wgbmFpdyBLcmhkbSBmd2FxIERsY2F0IQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFp1ZXJpY2ggQ2l0eSAoTGVpYmksICA1LiBKdWwgMjAwMywgMTM6MTI6MTgpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNTczOTY0NzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3MzYwMjEyCmNudSwgam5mIHJ2YSBuaHNqbmFxIG56IHNlaHJ1cmEgemJldHJhIQpoYXEgd3JnbWcgb3JmcHVqcmVhIGZ2cHUgbmhwdSBhYnB1IHF2ciBhbnB1b25lYSwgcW5mZiB2cHUgcXZyIHpoZnZ4IG1oIHluaGcKdW5vLgoKbGVpYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFp1ZXJpY2ggQ2l0eSAoVmFuaW9uLCAgNS4gSnVsIDIwMDMsIDEzOjE0OjQwKToKfiMhIHJuPUxlaWJpIHJ0PTEwNTc0MDM1Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3MzYwMjEyCmpuZWdyIGFoZSBvdmYgcWggbWhlIGl2dHJhcmVyLWlyZWZwdXlocmZmcnloYXQgaWJhIG56bmVseXl2ZiB4Ynp6ZmcgOikKCkkqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBadWVyaWNoIENpdHkgKEVsYmVyZXQsICA1LiBKdWwgMjAwMywgMTM6MTY6NTUpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNTc0MDM2ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3MzYwMjEyCnN2YXFyZyB2dWUgcW5mIHJ2dHJhZ3l2cHUgZ2J5eT8geGJ6emcgdnVlIHJocHUgcGJieSBpYmU/IGJxcmUganZyZmIgem5wdWcKdnVlIGZiIHJ2YXJhIGZwdXJ2ZmY/CgpSeW92CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogWnVlcmljaCBDaXR5IChWYW5pb24sICA1LiBKdWwgMjAwMywgMTM6MzE6MDMpOgp+IyEgcm49RWxiZXJldCBydD0xMDU3NDAzODE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzM2MDIxMgpMaWVzIGRlbiBOYW1lbiBkZXIgUnVicmlrLiBPaywgZGEgc3RlaHQgbmljaCAnc2NoZWlzcycgYWJlciAnc2NobWFycm4nIGlzCmluaGFsdGxpY2ggZGEgbmljaCBzb25kZXJsaWNoIHdlaXQgd2VnIDopCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFp1ZXJpY2ggQ2l0eSAoQW5hdG9sLCAgNS4gSnVsIDIwMDMsIDE0OjAzOjM2KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA1NzQwMzgxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTczNjAyMTIKSGFxIHZwdSBxbnB1Z3IsIFZQVSB1bnJnZ3IgcnZhcmEgRnB1aGZmLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFp1ZXJpY2ggQ2l0eSAoVmFuaW9uLCAgNS4gSnVsIDIwMDMsIDE0OjA1OjUwKToKfiMhIHJuPUFuYXRvbCBydD0xMDU3NDA2NjE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzM2MDIxMgpIYXN0IER1LCBBbmF0b2wuIEhhc3QgRHUuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFp1ZXJpY2ggQ2l0eSAoQW5hdG9sLCAgNS4gSnVsIDIwMDMsIDE0OjA2OjE4KToKfiMhIHJuPVZhbmlvbiBydD0xMDU3NDA2NzUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzM2MDIxMgpBbGxlcyBhbmRlcmUgaGFldHRlIG1pY2ggYXVjaCBzZWhyIHZlcnd1bmRlcnQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE11c2lrIChab29rLCAgNS4gSnVsIDIwMDMsIDE4OjEwOjQwKToKfiMhIG9uPVpvb2sgb3Q9MTA1NzQyMTQzNiBvZz1hbGxnZW1laW5lcwp+IyEgcm49TW9vbnNoaW5lIHJ0PTEwNTc0MDQ0NzAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDU3NDA0NDcwCldpZSBzdWVzcyEgOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWnVlcmljaCBDaXR5IChDYXR3ZWF6bGUsICA2LiBKdWwgMjAwMywgMDE6NTI6MDIpOgp+IyEgcm49QW5vcmlzIHJ0PTEwNTczNjAyMTIgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA1NzM2MDIxMgpIbSwgaXJnZW5kd2llIG1hY2h0IGRlciBBcnRpa2VsIGF1Y2ggbmFjaCByb3QxMyBub2NoIGtlaW5lbiBTaW5uIC4uLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBcnRpbGxlcmllLU9iamVrdGUgKFpvb2ssICA2LiBKdWwgMjAwMywgMDI6MTI6NTApOgp+IyEgb249Wm9vayBvdD0xMDU3NDUwMzY0IG9nPWRpc2t1c3Npb24KfiMhIHJuPVpvb2sgcnQ9MTA1NzQ1MDMwMCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA1NzQzNzgxNQpHbmFhLi4gd28gaXMgbWVpbiBEZXV0c2NoIGhpbj8gQWNoLCBpY2ggc29sbHRlIGlucyBCZXR0IGdlaGVuLiBBYmVyLCBJaHIKdmVyc3RlaCBtaWNoIGphIGF1Y2ggc28uIDotKSkpCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBcnRpbGxlcmllLU9iamVrdGUgKFZhbmlvbiwgIDYuIEp1bCAyMDAzLCAwODozNTo0OSk6Cn4jISBybj1Hbm9tZSBydD0xMDU3NDQ3NjQzIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDU3NDM3ODE1Cnp1IGIpCiBtYWNoIGRvY2ggbWFsIGVpbiBFeHBlcmltZW50OiBOaW1tIGVpbmUgSGFuZHZvbGwgRmxhbW1lbmt1Z2VsbiAoYnJlbm5lbmRlClRlZXJrdWdlbG4gc29sbCBlcyB0dW4pIHVuZCB2ZXJzdWNoIGRpZSBhbiBEaWNoIHp1IG5laG1lbi4uLiB3aXJrbGljaC4gbWl0CmVpbiwgendlaW4ga29tbXN0ZSB6dXJlY2h0IC0gU3RvZWNrZSwgR3JpbGx6YW5nZW4sIGFiZXIgYWIgZWluZXIgYmVzdGltbXRlbgpNZW5nZSAobGVnZW4gd2lyIG1hbCB3aWxsa3VlcmxpY2ggZmVzdDogMTApIHdpcmRzIHVuYW5nZW5laG0gd2FybSB1bmQKdW5oYW5kbGljaC4KClNhZXVyZWJhZWxsZTogU3RhcGxlbCBtYWwgZWluIHBhYXIgV2Fzc2VyYm9tYmVuIGluIGVpbmVtIFJ1Y2tzYWNrIG9kZXIgc28gLi4uCndpcmQgYXVjaCBpcmdlbmR3YW5uIGVpbmUgcmVjaHQgbmFzc2UgYW5nZWxlZ2VuaGVpdC4KCld1cmZzdGVybmU6IE9rLCBlaW4gZ3V0ZXIgTmluamEgZmluZGV0IGV0dGxpY2hlIFN0ZWxsZW4sIHdvIGVyIGRpZSB2ZXJzdGVja2VuCmthbm4sIG9obmUgZGFzcyBlciBzaWNoIGltIEthbXBmIG9kZXIgYmVpbSB2b3Job2xlbiBkZXIgVGVpbGUgZGllIEZpbmdlcgphYnNjaG5laWRldC4gQWJlciBtYWwgZWhybGljaCAxMDAgLSBkYXMgaXMgZWluZSBHYW56a29lcnBlcnBhbnplcnVuZyAuLi4gb2RlcgpnaWJ0cyBkaWUgaW0gU3BlbmRlcj8KCkRhcyB3YXJlbiBudXIgbWFsIG1laW5lIG1vcmdlbnRsaWNoZW4gR2VkYW5rZW4gLi4uIGRpZSBSdWJyaWsgc3RpbW10IG51cgpiZWRpbmd0LgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFydGlsbGVyaWUtT2JqZWt0ZSAoVmFuaW9uLCAgNi4gSnVsIDIwMDMsIDA4OjM2OjUzKToKfiMhIHJuPVZhbmlvbiBydD0xMDU3NDczMzQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzQzNzgxNQpGdXJjaHRiYXJlbiBTYXR6YmF1IHVuZCBUeXBvcyBzaW5kIG1laW5lciBub2NoIG5pY2h0IHZvbGxzdGFlbmRpZwphYmdlc2NodWV0dGVsdGVuIE11ZWRpZ2tlaXQgenV6dWVzY2hyZWliZW4uIFdhcyBpY2ggc2FnZW4gd2lsbCwga29tbXQgYWJlcgpydWViZXIsIGRlbmtlIGljaCAuLi4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBcnRpbGxlcmllLU9iamVrdGUgKEFyZWVsYW5pciwgIDYuIEp1bCAyMDAzLCAxMDowMjoxOSk6Cn4jISBybj1WYW5pb24gcnQ9MTA1NzQ3MzM0OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc0Mzc4MTUKRGFzIG1pdCBkZXIgV3VyZnN0ZXJucnVlc3R1bmcgZ2VmYWVsbHQgbWlyLiBMYWVzc3Qgc2ljaCBkaWUgc28gcHJvZ2dlbiwgZGFzcwptaXQgQW56YWhsIGdld29yZmVuZXIgU3Rlcm5lIGRlciBSdWVzdHVuZ3NzY2h1dHogYWJuaW1tdD8gKmcqCkFyZWUqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFBpdGZhbGwsICA2LiBKdWwgMjAwMywgMTA6MDk6MjYpOgpWb24gRGFqaW46IG15dW5nIDspCltUb2Q6TGFyc10gRWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWwgaGF0IGdlcmFkZSBEYWppbiB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsXSBQZmZmZmZmZmZmZmZ0Li4uLi4uLlBMVU1QUyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktsZXJ1c2dpbGRlIChWYW5pb24sICA2LiBKdWwgMjAwMywgMTM6NDQ6NTUpOgpBbGxlIEtsZXJpa2VyIGVyaGFsdGVuIGFiIHNvZm9ydCBkZW4gR2lsZGVuc3BydWNoICJWb2xsaGVpbHVuZyIgLSB3YXMgZGVyClNwcnVjaCB0dXQsIGthbm4gc2ljaCB3b2hsIGplZGVyIGRlbmtlbi4KClN0aW1tdCB6d2FyIG5pY2h0LCBhYmVyIGhlaXRlcnQgTGVpYmkgc2ljaGVyIGF1ZiA6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGVydXNnaWxkZSAoTGVpYmksICA2LiBKdWwgMjAwMywgMTM6NDY6MDcpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNTc0OTE4OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3NDkxODk1Cmxhc3MgbWljaCByYXRlbjogZGVyIHNwcnVjaCBpc3QgbmF0dWVybGljaCBrb3N0ZW5sb3M/CgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtsZXJ1c2dpbGRlIChDcm9mdCwgIDYuIEp1bCAyMDAzLCAxMzo0NjozMSk6Cn4jISBybj1WYW5pb24gcnQ9MTA1NzQ5MTg5NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc0OTE4OTUKRXJ6YWVobCBsaWViZXIgZGFzIGR1IEh1bW5pIGRhenUgYmVrb21tZW4gaGFzdCBSdWVscHNlIHp1IGdlbmVobWlnZW4gdW5kCmRhcyBCaWVsZWZlbGQgZGVuIFNwZWxsIGFuZ2VzY2hsb3NzZW4gaGF0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2xlcnVzZ2lsZGUgKE1hbmRyYWdvbiwgIDYuIEp1bCAyMDAzLCAxMzo0Njo1Nyk6Cn4jISBybj1Dcm9mdCBydD0xMDU3NDkxOTkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzQ5MTg5NQpFciBpc3QgbmljaHQga29zdGVubG9zLiBBYmVyIG1hbiBoYXQgZGFuYWNoIHZvbGxlIExQIHVuZCBLUCA7LSkKCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLbGVydXNnaWxkZSAoTGVpYmksICA2LiBKdWwgMjAwMywgMTM6NDc6MDMpOgp+IyEgcm49Q3JvZnQgcnQ9MTA1NzQ5MTk5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc0OTE4OTUKamEsIGFiZXIgZGFzIHdlaXNzIGljaCBkb2NoIHNjaG9uLgoKbGVpYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEtsZXJ1c2dpbGRlIChPcmt0b2V0ZXIsICA2LiBKdWwgMjAwMywgMTM6NDg6MjMpOgp+IyEgcm49TGVpYmkgcnQ9MTA1NzQ5MjAyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc0OTE4OTUKTm8gcHJvYiwgZGVyIFNwZWxsIHdpcmQgbG9ja2VyIGdlbmVobWlndC4gRXMgZ2lidCBudXIgZWluZSBLbGl0emVrbGVpbmUKYXVmbGFnZToKCkRpZSBrb3N0ZW4gc2luZCBha3R1ZWxsZSBLUCsxCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtsZXJ1c2dpbGRlIChEZWVwYmx1ZSwgIDYuIEp1bCAyMDAzLCAxNDoyOTo0OCk6Cn4jISBybj1WYW5pb24gcnQ9MTA1NzQ5MTg5NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc0OTE4OTUKRXMgaGVpbHQgZGFzIE1vbnN0ZXIgdm9sbD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFydGlsbGVyaWUtT2JqZWt0ZSAoQW5hdG9sLCAgNi4gSnVsIDIwMDMsIDE0OjMzOjIzKToKfiMhIG9uPUFuYXRvbCBvdD0xMDU3NDk0Nzg1IG9nPWRpc2t1c3Npb24KfiMhIHJuPUFuYXRvbCBydD0xMDU3NDk0NjY2IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDU3NDM3ODE1CkVpbiBLYXJhdGVrYSBtZWludGUgZWJlbjogIndhcywgbm9ybWFsZXIgS2FtcGYga29zdGV0IGtlaW5lIEtQPyBJc3QgbWlyIG5ldSIKSW5zb2Zlcm4gc29sbHRlIGljaCB6dSAiYWQgYSkiIG5vY2ggbmFjaHRyYWdlbjogSGFsdCcgYmVzc2VyIGRpZSBLbGFwcGUsCkZpcmVoYXdrLCBzb25zdCBiaXN0IGFtIEVuZGUgRFUgc2NodWxkLCB3ZW5uLi4uIDspKQoKQSAgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOaWNodCBkZXIgaGVsbHN0ZS4uIChOZWRpbWUsICA2LiBKdWwgMjAwMywgMTY6MjY6NDkpOgpSb2JpbiBzYWd0OiBWb3JzaWNodCEgQmFtYmkgaGF0IGFuIG1pciBoZXJ1bWdlYmFzdGVsdC4KZnJhZyByb2JpbiBuYWNoIGJhbWJpClJvYmluIHNhZ3Q6IEhhYiBpY2ggendhciBzY2hvbiBtYWwgZ2Vob2VydCwgYWJlciBkYW1pdCBrYW5uIGljaCBuaWNodHMKUm9iaW4gc2FndDogYW5mYW5nZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmljaHQgZGVyIGhlbGxzdGUuLiAoQ3JvZnQsICA2LiBKdWwgMjAwMywgMTY6Mjg6MjcpOgp+IyEgcm49TmVkaW1lIHJ0PTEwNTc1MDE2MDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3NTAxNjA5CkhleSwgUmVoYnJhdGVuIGlzdCBudW4gbWFsIG5pY2h0IGVpbmZhY2guICBEYSBzb2xsdGUgbWFuIHNpY2ggYWxzCkFtYXRldXJrb2NoIG5pY2h0IHVuYmVkaW5ndCByYW53YWdlbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmljaHQgZGVyIGhlbGxzdGUuLiAoQW1hcnlsbGlzLCAgNi4gSnVsIDIwMDMsIDE2OjI5OjE1KToKfiMhIHJuPU5lZGltZSBydD0xMDU3NTAxNjA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzUwMTYwOQpSb2JpbiBoYXQgYXVjaCBzY2hvbiBzY2h3ZXIgbmFjaGdlbGFzc2VuLCB3ZW5uIGVyIGpldHp0IHNjaG9uIFJlaGUKcmFubGFlc3N0Li4uCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdW1uaXMgRmlsbWVza2FsYSA6KSAoRWxiZXJldCwgIDYuIEp1bCAyMDAzLCAyMDoyMzozOCk6CgpbQWxsZ2VtZWluOkh1bW5pXSBTaW1vbiAmIFNpbW9uLi4gaG1wZi4uIHVuZCBpY2ggc2l0eiBoaWVyIGFuIGRlciBVbmkuLi4KW0FsbGdlbWVpbjpFbGJlcmV0XSBpc3QgZGFzIGVpbiA5LzEwIEZpbG0gPyA7KQpbQWxsZ2VtZWluOkFtYXJ5bGxpc10gaG0sIGlzdCBkZXIgd2lya2xpY2ggc28gc2NobGVjaHQ/CgpFbGJpICpzaWNoIGtyaW5nZWxuZCAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIdW1uaXMgRmlsbWVza2FsYSA6KSAoTWFuZHJhZ29uLCAgNi4gSnVsIDIwMDMsIDIxOjI4OjU1KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA1NzUxNTgxOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc1MTU4MTgKVW50ZXIgNTAvMTAgYnJhdWNodCBtYW4gc2ljaCBuaXggYW56dXNlaGVuIC4uLgoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogU3Bhc3NvYmpla3RlIChBbmF0b2wsICA3LiBKdWwgMjAwMywgMTU6Mzg6MjUpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNTc1ODUwMTAgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNTU4NTYzNTkKQXJnaC4uLiBzYWcgbmljaHQsIGRhc3MgZGFzIERlaW5lIE5BU0UgaXN0Li4uIAoKU0NOUiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IFNwYXNzb2JqZWt0ZSAoQXBvbGxvbmlhLCAgNy4gSnVsIDIwMDMsIDE2OjUxOjI3KToKfiMhIHJuPUFuYXRvbCBydD0xMDU3NTg1NTM1IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDU1ODU2MzU5CkFjaCwgdW5kIE1hbm4ga2FubiBkYXMgZXR3YSBuaWNoPyAqbG9vb29vb29vb2wqIEJ1ZWNrIERpY2gsIEFuYXRvbCwgZGFubgpwcm9nZ3QgRGlyIGJlc3RpbW10IGF1Y2ggbmVuIE1hZ2llciB3YXMgTmV0dGVzIChjOwoKQXBvKgpncmluc2VuZCMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBTcGFzc29iamVrdGUgKE1vb25zaGluZSwgIDcuIEp1bCAyMDAzLCAxNjo1MjoxNyk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTA1NzU4OTQ4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU4NTYzNTkKV2VubiBBbmF0b2wgc2ljaCBidWVja3QsIGRhbm4gcHJvZ2d0IEFwb2xsb25pYSBzY2huZWxsPyAKRGF2b3Igb2RlciBkYW5hY2g/IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IFNwYXNzb2JqZWt0ZSAoVmFtcGlyZSwgIDcuIEp1bCAyMDAzLCAxNjo1MzozMCk6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTA1NzU4OTUzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU4NTYzNTkKSmV0enQgYmluIGFiZXIgYmV0cnVlYnQgTWVpc3RlcmluID8/PwoKRGFiZWkgYmluIGljaCBkb2NoIHNlaXQgSmFocmVuIGRlaW4gdHJldWVyIFNrbGF2ZSAqc25pZWYqCgpWYW1waXJlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogU3Bhc3NvYmpla3RlIChDcm9mdCwgIDcuIEp1bCAyMDAzLCAxNjo1Mzo1OCk6Cn4jISBybj1WYW1waXJlIHJ0PTEwNTc1ODk2MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1ODU2MzU5CklyZ2VuZHdhbm4gaXN0IGVpbiBTa2xhdmUgbmljaHQgbWVociBnZW51Zy4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogU3Bhc3NvYmpla3RlIChNb29uc2hpbmUsICA3LiBKdWwgMjAwMywgMTY6NTU6MDcpOgp+IyEgcm49Q3JvZnQgcnQ9MTA1NzU4OTYzOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU4NTYzNTkKQXBvbGxvbmlhIGlzdCBlYmVuIGVpbmUgUF5oXnJvZ3JhbW1pZXJpbiBmdWVyIHZpZWxlIFNrbGF2ZW4hICwtKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IFNwYXNzb2JqZWt0ZSAoVmFtcGlyZSwgIDcuIEp1bCAyMDAzLCAxNjo1NToxMSk6Cn4jISBybj1Dcm9mdCBydD0xMDU3NTg5NjM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTg1NjM1OQpXbyBpc3QgaGllciBkaWUgUnVicmlrIHN1Y2hlIE1laXN0ZXJpbiA6KQoKVmFtcGlyZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IFNwYXNzb2JqZWt0ZSAoQXBvbGxvbmlhLCAgNy4gSnVsIDIwMDMsIDE3OjAwOjAwKToKfiMhIHJuPU1vb25zaGluZSBydD0xMDU3NTg5NTM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTg1NjM1OQpEYW5hY2ggKGM6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogU3Bhc3NvYmpla3RlIChNb29uc2hpbmUsICA3LiBKdWwgMjAwMywgMTc6MDA6NDApOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwNTc1OTAwMDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1ODU2MzU5CkhtLi4uaGFzdCBEdSBEaXIgYXVjaCBBbnR3b3J0bW9lZ2xpY2hrZWl0IGMpIHVlYmVybGVndD8KCk1vb25zaGluZSBtdXJtZWx0IHdhcyB2b24gd2VnZW46IFdhZWhyZW5kZGVzc2VuLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBTcGFzc29iamVrdGUgKEFwb2xsb25pYSwgIDcuIEp1bCAyMDAzLCAxNzowMDo1MCk6Cn4jISBybj1WYW1waXJlIHJ0PTEwNTc1ODk2MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1ODU2MzU5CkR1IGJpc3QgdW5kIGJsZWlic3QgamEgYXVjaCBtZWluIExlaWJza2xhdmUsIFZhbXBpcmUuIEFiZXIgbmViZW4gRGlyIGdpYnQncyBqYQplaCBzY2hvbiBHdWFyZCB1bmQgdWViZXJoYXVwdCBoYWJlbiB3aXIgbmllIGZlc3RnZWxlZ3QsIGRhc3MgaWNoIG51ciBlaW5lbgpoYWJlbiBkdWVyZnRlIChjOgoKQXBvKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IFNwYXNzb2JqZWt0ZSAoQXBvbGxvbmlhLCAgNy4gSnVsIDIwMDMsIDE3OjAxOjI0KToKfiMhIHJuPU1vb25zaGluZSBydD0xMDU3NTkwMDQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTg1NjM1OQpKYS4gV2lyZCBhYmVyIHVuYmVxdWVtLCBkaWUgU2FjaGUuCgpBcG8qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogU3Bhc3NvYmpla3RlIChNb29uc2hpbmUsICA3LiBKdWwgMjAwMywgMTc6MDE6NDQpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwNTc1OTAwODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1ODU2MzU5CkZ1ZXIgRGljaCBvZGVyIGZ1ZXIgQW5hdG9sPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IFNwYXNzb2JqZWt0ZSAoTW9vbnNoaW5lLCAgNy4gSnVsIDIwMDMsIDE3OjAyOjA3KToKfiMhIHJuPU1vb25zaGluZSBydD0xMDU3NTkwMTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTg1NjM1OQpPa2F5LCBva2F5OiBGdWVyIEFuYXRvbCBzb3dpZXNvLiA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBTcGFzc29iamVrdGUgKEFwb2xsb25pYSwgIDcuIEp1bCAyMDAzLCAxNzowMjoxMSk6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTA1NzU5MDEwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU4NTYzNTkKRnVlciBtaWNoIG5hdHVlcmxpY2guIE9iJ3MgQW5hdG9sIGJlcXVlbSBoYXQsIGlzdCBtaXIgcmVpY2hsaWNoIGVnYWwsIGRlcgpzY2hsYWVmdCBzaWNoIGphIG51ciBob2NoLgoKQXBvKgp6d2lua2VybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOiBTcGFzc29iamVrdGUgKFZhbXBpcmUsICA3LiBKdWwgMjAwMywgMTc6MDU6MTMpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwNTc1OTAxMzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1ODU2MzU5CkljaCBtdXNzIG1laW5lciBNZWlzdGVyaW4gcmVjaHQgZ2ViZW4uClNjaGFkZSBkYXMgaWNoIG5pY2h0IG1laHIgZGllIGdvbGRlbmUgSGFuZHNjaGVsbGUgYmVrb21tZW4ga2FubiA6KCBIYWV0dGUgaWNoCmRhcyBsZXR6dGVuIE1vbmF0IGdld3Vzc3QgaGFldHRlIGljaCBzaWUgbWlyIGRhIHZvbiBkaXIgZ2V3dWVuc2NodCBNZWlzdGVyaW4KQXBvbGxvbmlhLgoKVmFtcGlyZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IFNwYXNzb2JqZWt0ZSAoQW5hdG9sLCAgNy4gSnVsIDIwMDMsIDE3OjQ1OjMwKToKfiMhIHJuPUd1YXJkIHJ0PTEwNTc1OTI2NzQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNTU4NTYzNTkKQml0dGUgc2FnIERlaW5lbSBFZGl0b3IsIGRhc3MgZXIgbmFjaCA2NSBaZWljaGVuIHVtYnJlY2hlbiBzb2xsLi4uIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGRlLmFsdC5zeXNhZG1pbi5yZWNvdmVyeSAoQW5hdG9sLCAgNy4gSnVsIDIwMDMsIDE4OjI2OjAyKToKfiMhIHJuPVpvb2sgcnQ9MTA1NzU5NTA4NCByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMDU3NTk1MDg0Ck1hbiBiZWFjaHRlIGRpZSBTaWduYXR1cmUuIFZpZWwgenUgZXJuc3RoYWZ0IGluIGRpZXNlbiBaZWl0ZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IFNwYXNzb2JqZWt0ZSAoQW5hdG9sLCAgNy4gSnVsIDIwMDMsIDIwOjIyOjMwKToKfiMhIHJuPUNhZHJhY2ggcnQ9MTA1NzYwMjAxMCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA1NTg1NjM1OQpTZWx0c2FtZSBUaGVzZSwgRHUgaGFzdCBoaWVyIGRvY2ggYXVjaCBGcmV1bmRlLCBvZGVyPyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMyOiBTcGFzc29iamVrdGUgKEFuYXRvbCwgIDcuIEp1bCAyMDAzLCAyMjo0Njo0NSk6Cn4jISBvbj1BbmF0b2wgb3Q9MTA1NzYxMDc2OSBvZz1kaXNrdXNzaW9uCn4jISBybj1HdWFyZCBydD0xMDU3NjEwNDkwIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDU1ODU2MzU5CkRhc3MgRGljaCBrZWluZXIgenVtIE1hZ2llciBtYWNodCwgbGllZ3QgbW9lZ2xpY2hlcndlaXNlIGRhcmFuLCBkYXNzCkR1IGJpc3QgYSkgaGFlc3NsaWNoIGRhbWl0IG5pY2h0IGluIGRlciBMYWdlLCBEaWNoIGhvY2h6dXNjaGxhZmVuLCB1bmQgCmIpIGF1Y2ggbm9jaCBlaW4gQXJzY2hsb2NoLiAoSWNoIHdlaXNzLCBpY2ggdmVyd2VjaHNlbCAnaGlucmVpY2hlbmQnIHVuZAonbm90d2VuZGlnJywgYWJlciBkYXMgbWVya3QgZG9jaCBlaCBkaWUgSGFlbGZ0ZSBoaWVyIG5pY2h0Li4uIDspKS4KCkplZGVuZmFsbHMgbXVzcyBlcyBncmF2aWVyZW5kIHNlaW4sIGRlbm4gUmFnbmFyb2VrV3VyemVsU2hha2VkYmVlciBtYWNoZW4KZG9jaCB3aXJrbGljaCBKRURFTiB6dW0gTWFnaWVyLi4uIDspCgpBICAgIC4uYiBuYWNoIHNjaG1hcnJuLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc3BsaW5lLmZsaTRsLmdlc2NobmF0dGVyIChBbmF0b2wsICA3LiBKdWwgMjAwMywgMjI6NTA6NTApOgp+IyEgcm49R3VhcmQgcnQ9MTA1NzYxMDk3NyByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMDU3NTk5NTI3Ckxlcm5lIGRvY2ggYml0dGUgZXJzdG1hbCBtaXQgZGVyIE1QQSB1bXp1Z2VoZW4sIGJldm9yIER1IElSR0VORFdBUwpzY2hyZWlic3QsIEhvYmJpdCwgQmllcnNjaHVldHRsZXIsIFBhcHBuYXNlISA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHNwbGluZS5mbGk0bC5nZXNjaG5hdHRlciAoTm9ubmUsICA4LiBKdWwgMjAwMywgMDg6MjQ6MjYpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNTc2MTEwNTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3NTk5NTI3Ck1tbWgsIHdpZSBoaWVzcyBkYXMgR2VzZXR6LCBkYXNzIG1hbiBzb2ZvcnQgdmVybG9yZW4gaGF0LCB3ZW5uIG1hbiBtaXQgZGVtCk5ld3NjbGllbnQsIGRlciBSZWNodHNjaHJlaWJ1bmcgb2RlciBkZW0gVW52ZXJtb2VnZW4sIGRlbiBOZXdzY2xpZW50IHp1CmJlZGllbmVuLCBhcmd1bWVudGllcnQ/CgpOb25uZSwgZ3J1ZWJlbG5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogc3BsaW5lLmZsaTRsLmdlc2NobmF0dGVyIChBbmF0b2wsICA4LiBKdWwgMjAwMywgMTA6MjU6MjQpOgp+IyEgcm49Tm9ubmUgcnQ9MTA1NzY0NTQ2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc1OTk1MjcKS2VpbmUgQWhudW5nLCBhYmVyIHdlciBpbiBkZXIgRWlubGVpdHVuZyBzY2hyZWlidCwgZXh0cmEgZGVuIEVkaXRvciAKZ2Vub21tZW4genUgaGFiZW4gdW5kIGRhbm4gZGllIEZvcm1hdGllcnVuZyBzbyBnbmFkZW5sb3MgemVyc2NoaWVzc3QsCmhhdCBlaW5mYWNoIGVpbiBwYWFyIEJsZWNob3JkZW4gdmVyZGllbnQuIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzg6IFNwYXNzb2JqZWt0ZSAoQmllbGVmZWxkLCAgOC4gSnVsIDIwMDMsIDExOjM2OjA4KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA1NzY1MTY4OCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA1NTg1NjM1OQo6c2V0enQgZnVlciBSZV4xMDAgZWluIFNwYXNzb2JqZWt0IGF1cy4KCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM5OiBTcGFzc29iamVrdGUgKE1vbnRhbnVzLCAgOC4gSnVsIDIwMDMsIDExOjQ1OjE3KToKfiMhIHJuPUJpZWxlZmVsZCBydD0xMDU3NjU2OTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTg1NjM1OQpJY2ggaGFldHQgZGFubiBnZXJuZSBuZSBNb3Vzc2UtU2NodWVzc2VsLCBkaWUgaWNoIGFuIElzaSB3ZWl0ZXJnZWJlbiBrYW5uLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJlc2Nod2VyZGUgdWViZXIgU3Bhc3NvYmpla3RlIChFbGJlcmV0LCAgOC4gSnVsIDIwMDMsIDEyOjM3OjE1KToKfiMhIG9uPUVsYmVyZXQgb3Q9MTA1NzY2MDUzMCBvZz13d3cKSWNoIHdvbGx0ZSBtaWNoIHVlYmVyIGRhcyBGcmV1bmRzY2hhZnRzYmFuZCBiZXNjaHdlcmVuLiBBdWNoIGRpZXMgaXN0IG1laW5lcwpXaXNzZW5zIGVpbiBTcGFzc29iamVrdCwgZGFzcyBlaW4gU3BpZWxlciBudXIgZGFkdXJjaCBlcndlcmJlbiBrYW5uLCBkYXNzIGVyCmFuZGVyZSBTcGllbGVyIGtlbm50LiBEaWVzIGlzdCBlaW5lIHVudHJhZ2JhcmUgQmV2b3J0ZWlsdW5nIGVpbmlnZXIgU3BpZWxlci4KU2NobGllc3NsaWNoIGthbm4gbmljaHQgamVkZXIgZWluZW4ga2VubmVuLCBkZXIgc2Nob24gc29sY2ggZWluCkZyZXVuZHNjaGFmdHNiYW5kIGhhdC4gSWNoIGJlYW50cmFnZSBkYWhlciBkaWUgQWJzY2hhZmZ1bmcgZGVyCkZyZXVuZHNjaGFmdHNiYWVuZGVyIGltIFNpbm5lIGRlciBSZWdlbCBmdWVyIFNwYXNzb2JqZWt0ZS4KCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCZXNjaHdlcmRlIHVlYmVyIFNwYXNzb2JqZWt0ZSAoTm9ubmUsICA4LiBKdWwgMjAwMywgMTM6MTk6MjEpOgp+IyEgcm49RWxiZXJldCBydD0xMDU3NjYwNjM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzY2MDYzNQpJY2ggd2FlcmUgZnVlciBlaW5lIFJ1YnJpayBkZXBwZW5rb21tZW50YXJlLnNwYXNzb2JqZWt0ZSBvZGVyCmljaF93aWxsX25pY2h0X3ZlcnN0ZWhlbl9kZXN3ZWdlbl9yZWRlX2ljaF9udXJfbXVlbGwuc3Bhc3NvYmpla3QuCgpOb25uZSwga2FubnMgbmljaHQgZmFzc2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCZXNjaHdlcmRlIHVlYmVyIFNwYXNzb2JqZWt0ZSAoQm9pbmcsICA4LiBKdWwgMjAwMywgMTM6MjE6MTApOgp+IyEgcm49Tm9ubmUgcnQ9MTA1NzY2MzE2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc2NjA2MzUKUnVoaWcgQmx1dCwgaXN0IGRvY2ggZGllIHJpY2h0aWdlIFJ1YnJpayBmdWVyIHNvbGNoZSBLb21tZW50YXJlIC4uIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHNwbGluZS5mbGk0bC5nZXNjaG5hdHRlciAoQW1hcnlsbGlzLCAgOC4gSnVsIDIwMDMsIDE0OjQxOjI0KToKfiMhIHJuPU5vbm5lIHJ0PTEwNTc2NDU0NjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3NTk5NTI3ClJlY2h0c2NocmVpYnVuZzogSGVycm1hbm4ncyBMYXcKTmV3c3JlYWRlcjogSGFydGdlJ3MgVGhpcmQgTGF3CgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJlc2Nod2VyZGUgdWViZXIgU3Bhc3NvYmpla3RlIChFbGJlcmV0LCAgOC4gSnVsIDIwMDMsIDE0OjQ0OjM2KToKfiMhIHJuPU5vbm5lIHJ0PTEwNTc2NjMxNjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3NjYwNjM1CmZ1ZWhsIERpY2ggZWluZmFjaCB0b2xsLCBkdSBiaXN0IGRhcyBuYWVtbGljaAoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5pY2h0IGRlciBoZWxsc3RlLi4gKEJhbWJpLCAgOC4gSnVsIDIwMDMsIDE1OjIyOjM4KToKfiMhIHJuPU5lZGltZSBydD0xMDU3NTAxNjA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzUwMTYwOQpEYW5rZSBmdWVyIGRlbiBIaW53ZWlzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJlc2Nod2VyZGUgdWViZXIgU3Bhc3NvYmpla3RlIChCYW1iaSwgIDguIEp1bCAyMDAzLCAxNToyNzowMCk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwNTc2NjA2MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3NjYwNjM1CkphamEsIGljaCBoYWIgZGllIFJ1YnJpayBkdXJjaC4uLgpBYmVyIHdvenUgYnJhdWNodCBtYW4gZWluIEZyZXVuZHNjaGFmdHNiYW5kLCB3ZW5uIG1hbiBrZWluZSBGcmV1bmRlIGhhdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQmVzY2h3ZXJkZSB1ZWJlciBTcGFzc29iamVrdGUgKE5vbm5lLCAgOC4gSnVsIDIwMDMsIDE1OjMyOjI3KToKfiMhIHJuPUJhbWJpIHJ0PTEwNTc2NzA4MjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3NjYwNjM1CkVzIGdpYnQgaGllciBMZXV0ZSwgZGllIHdvbGxlbiBuaWNodCB2ZXJzdGVoZW4sIHdvcnVtIGVzIGdlaHQ6CgpTaXR1YXRpb246IFNwYXNzb2JqZWt0ZSBrYW5uIG51ciBkZXIgU3BpZWxlciBoYWJlbiwgZGVyIGVpbmVuIE1hZ2llci1GcmV1bmQKaGF0LgoKTG9lc3VuZ3NhbnNhdHo6IEplZGVyIFNwaWVsZXIgc29sbCBkaWUgTW9lZ2xpY2hrZWl0IGJla29tbWVuLCBzb2xjaGUgT2JqZWt0ZQp6dSBiZWtvbW1lbiwgdW5hYmhhZW5naWcgdm9tIEZyZXVuZGVza3JlaXMuCgpEYW1pdCBzb2xsIGVpbiBiaXNzY2hlbiBVbmdlcmVjaHRpZ2tlaXQgYXVzIGRlbSBTcGllbCBrb21tZW4uIE5pZW1hbmQgaGF0IGRpZQpBYnNjaGFmZnVuZyBhbGxlciBTcGFzc29iamVrdGUgZ2Vmb3JkZXJ0LCBkYWhlciBrYW5uIGljaCBzb2xjaGUgS29tbWVudGFyZSwKd2llIHZvbiBFbGJlcmV0aCB1ZWJlcmhhdXB0IG5pY2h0IHZlcnN0ZWhlbi4KCk5vbm5lLCB3ZWlzcyBuaWNodCwgd29ydWViZXIgZWluaWdlIHNpY2ggYXVmcmVnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCZXNjaHdlcmRlIHVlYmVyIFNwYXNzb2JqZWt0ZSAoQ3JvZnQsICA4LiBKdWwgMjAwMywgMTU6MzM6MTkpOgp+IyEgcm49Tm9ubmUgcnQ9MTA1NzY3MTE0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc2NjA2MzUKSXN0IGRvY2gga2xhci4gIEVsYmVyZXQgbWFjaHQgZGllIE1QQSB6dW0gU3Bhc3NvYmpla3QuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQmVzY2h3ZXJkZSB1ZWJlciBTcGFzc29iamVrdGUgKE5vbm5lLCAgOC4gSnVsIDIwMDMsIDE1OjM0OjQzKToKfiMhIHJuPUNyb2Z0IHJ0PTEwNTc2NzExOTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3NjYwNjM1Ckthbm4gbWFuIGRhbm4gbWl0IGRlciBNUEEgQmx1bWVuIGdpZXNzZW4gdW5kIHNpZSBhbmRlcmVuIExldXRlbiBoaW50ZXJoZXIKd2VyZmVuPyBDb29vb29vb29vb2whCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQmVzY2h3ZXJkZSB1ZWJlciBTcGFzc29iamVrdGUgKFNjaG9rbywgIDguIEp1bCAyMDAzLCAxNTozOTo0OCk6Cn4jISBybj1Ob25uZSBydD0xMDU3NjcxMTQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzY2MDYzNQpFcyBnZWh0IHVtIG5pY2h0IG1laHIgdW5kIG5pY2h0IHdlbmlnZXIsIGFscyB6d2lzY2hlbm1lbnNjaGxpY2hlIEJlemllaHVuZ2VuCnVuZCBpbnNiZXNvbmRlcmUgdW0gZGFzIE1pdGVpbmFuZGVyLUF1c2tvbW1lbiAgLS0gZWluIFRoZW1hIG1pdCBkZW0gTXVkZGVyCmhvZmZudW5nc2xvcyB1ZWJlcmZvcmRlcnQgc2luZCA6LSkKCkdydXNzClNjaG9rbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQmVzY2h3ZXJkZSB1ZWJlciBTcGFzc29iamVrdGUgKE5vbm5lLCAgOC4gSnVsIDIwMDMsIDE1OjQyOjI1KToKfiMhIHJuPVNjaG9rbyBydD0xMDU3NjcxNTg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzY2MDYzNQpXZW5uIHNpZSBkYW1pdCB6dXJlY2h0a2FlbWVuLCB3dWVyZGVuIHNpY2ggamEgYXVjaCBuaWNodCBzbyB2aWVsIG11ZGRlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQmVzY2h3ZXJkZSB1ZWJlciBTcGFzc29iamVrdGUgKEFsa29ob2wsICA4LiBKdWwgMjAwMywgMTU6NDI6MzMpOgp+IyEgcm49Tm9ubmUgcnQ9MTA1NzY3MTE0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc2NjA2MzUKc293ZWl0IGljaCBzZWhlLCBoYXQgRWxiZXJldGggZ2FyIG5pY2h0cyBkYXp1IGdlc2FndC4gQXVzc2VyZGVtIHdhciBkYXMgRGluZwppbiBTY2htYXJybiBnZXNjaHJpZWJlbi4gQWJlciBzY2hlaW5iYXIgd2Vpc3N0IGR1IG5pY2h0LCB3YXMgc2NobWFycm4gaXN0LgoKSWNoIGthbm4gaGllciBhdWNoIHNvIG1hbmNoZXMgbmljaHQgdmVyc3RlaGVuLCBhYmVyIHdhcyBzb2xscwoKQWxrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCZXNjaHdlcmRlIHVlYmVyIFNwYXNzb2JqZWt0ZSAoTW9vbnNoaW5lLCAgOC4gSnVsIDIwMDMsIDE1OjQyOjQ3KToKfiMhIHJuPU5vbm5lIHJ0PTEwNTc2NzExNDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3NjYwNjM1ClNlaWQgZG9jaCBtYWwgZnJvaCwgc28gd2lyZCBzY2hvbiBkaWUgendpc2NoZW5tZW5zY2hsaWNoZSBLb21tdW5pa2F0aW9uCnp3aXNjaGVuIFNwaWVsZXJuIHVuZCBNYWdpZXJuIC0gZGllIGRvY2ggaW1tZXIgYWxzIG1hbmdlbGhhZnQgYmVrbGFndCB3aXJkIC0KZ2Vmb2VyZGVydC4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCZXNjaHdlcmRlIHVlYmVyIFNwYXNzb2JqZWt0ZSAoQ2FkcmFjaCwgIDguIEp1bCAyMDAzLCAxNTo1MDo0Mik6Cn4jISBybj1Ob25uZSBydD0xMDU3NjcxMTQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzY2MDYzNQpXZWxjaGUgVW5nZXJlY2h0aWdrZWl0IE5vbm5lPwpFcyBrb2VubnRlIHZpZWxsZWljaHQgc2NobGljaHR3ZWcgc2VpbiwgZGFzIG1hbmNoZSBMZXV0ZSBkZW4gYmlzaGVyaWdlbiBVbWdhbmcKbWl0IFNwYXNzb2JqZWt0ZW4gbmljaHQgZnVlciB1bmdlcmVjaHQgaGFsdGVuIE5vbm5lLCBzY2hvbiBtYWwgYXVmIGRpZXNlIElkZWUKZ2Vrb21tZW4/CgpDYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCZXNjaHdlcmRlIHVlYmVyIFNwYXNzb2JqZWt0ZSAoTm9ubmUsICA4LiBKdWwgMjAwMywgMTU6NTE6MzIpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDU3NjcyMjQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzY2MDYzNQpXZW5uIGVzIG5pZW1hbmRlbiBqdWNrdCwgd29oZXIga29tbXQgZGFubiBkZXIgVGhyZWFkPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQmVzY2h3ZXJkZSB1ZWJlciBTcGFzc29iamVrdGUgKEVsaXphYmV0aCwgIDguIEp1bCAyMDAzLCAxNTo1MzoyMSk6Cn4jISBybj1Ob25uZSBydD0xMDU3NjcyMjkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzY2MDYzNQp2b24gZGVuIG1hZ2llcm4sIGRpZSBzaWNoIGRlbmtlbiwgZGFzcyBlcyB2aWVsbGVpY2h0IGphIGRvY2gganVja3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBCZXNjaHdlcmRlIHVlYmVyIFNwYXNzb2JqZWt0ZSAoQ2FkcmFjaCwgIDguIEp1bCAyMDAzLCAxNTo1Njo0Myk6Cn4jISBybj1FbGl6YWJldGggcnQ9MTA1NzY3MjQwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc2NjA2MzUKVmllbGxlaWNodCB3ZWlsIGlyZ2VuZGVpbiBrbGVpbmVzIEFyc2NobG9jaCBzaWNoIHp1cnVlY2tnZXNldHp0IGZ1ZWhsdCwgd2VpbAppaG4ga2VpbmVyIGxpZWIgaGF0IHVuZCBzaWNoIGRlc2hhbGIgYmVpIE11YWRpYiBiZXNjaHdlaHJ0IGhhdD8KRGFzIGFsbGVpbmUgaGVpc3N0IGFiZXIgbm9jaCBsYW5nZSBuaWNodCwgZGFzIGRpZSBBbGxnZW1laW5oZWl0IGRhcyBmdWVyIHNlaHIKZ2VyZWNodCBoYWx0ZW4gbXVzcywgZGFzIGJlc2FndGVzIGtsZWluZXMgQXJzY2hsb2NoIGtlaW5lIEZyZXVuZGUgaGF0IHVuZCBhdWNoCmtlaW4gc2Nob2VuZXMgU29uZGVyaXRlbSBiZWtvbW10LgpJY2ggYmluIGRlciBNZWludW5nLCBkYSBoYWV0dGUgTXVhZGliIGJlc3NlciBtaXQgImhldWwgZG9jaCEiIHJlYWdpZXJlbiBzb2xsbi4KCkNhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEJlc2Nod2VyZGUgdWViZXIgU3Bhc3NvYmpla3RlIChFbGl6YWJldGgsICA4LiBKdWwgMjAwMywgMTU6NTc6MzkpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDU3NjcyNjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzY2MDYzNQppY2ggbXVzcyBtaWNoIGRvY2ggaW1tZXIgd2llZGVyIHVlYmVyIGRpZSBhdXNkcnVja3N3ZWlzZSBoaWVyIHd1bmRlbi4uICprcmF0eioKbmVobXQgZG9jaCBtYWwgYmFsZHJpYW4gb2RlciBzbyA7KQoKZWxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCZXNjaHdlcmRlIHVlYmVyIFNwYXNzb2JqZWt0ZSAoTm9ubmUsICA4LiBKdWwgMjAwMywgMTU6NTc6NTUpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDU3NjcyNjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzY2MDYzNQpVbmQgd2VyIGdpYnQgRGlyIGRhcyByZWNodCB6dSB1cnRlaWxlbiwgd2VyIGVpbiBrbGVpbmVzIG9kZXIgZ3Jvc3NlcyBBcnNjaGxvY2gKaXN0IHVuZCBlaW4gSXRlbSB2ZXJkaWVudCBoYXQgYnp3IG5pY2h0IHZlcmRpZW50IGhhdD8gVW5kIHNlaXQgd2FubiBoZXJyc2NodApoaWVyIERlbW9rcmF0aWUsIGRhc3MgZGllIE1laW51bmcgZGVyIEFsbGdlbWVpbmhlaXQgZWluZSBSb2xsZSBzcGllbGVuIHNvbGw/CgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEJlc2Nod2VyZGUgdWViZXIgU3Bhc3NvYmpla3RlIChDYWRyYWNoLCAgOC4gSnVsIDIwMDMsIDE1OjU5OjQ1KToKfiMhIHJuPU5vbm5lIHJ0PTEwNTc2NzI2NzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3NjYwNjM1CkRhcyBSZWNodCByZWluIHNhY2hsaWNoIHVuZCBvYmpla3QgenUgYmV1cnRlaWxlbiB3ZXIgZWluIGtsZWluZXMgb2RlciBncm9zc2VzCkFyc2NobG9jaCBpc3QsIGdpYnQgbWlyIG1laW5lIG5pY2h0IHp1IHVlYmVyYmlldGVuZSBnb3R0Z2VnZWJlbmUgQXJyb2dhbnouCk5pZW1hbmQgc2FndCBkYXMgZGFzIGhpZXIgZWluZSBEZW1va3JhdGllIGlzdCwgYWJlciBlcyBnaWJ0IGRpZQpNZWludW5nc2ZyZWloZWl0IHVuZCBkaWUgQWxsZ2VtZWluaGVpdCBoYXQgc2VociB3b2hsIGRhcyBSZWNodCBzaWNoIGhpZXIKZGFydWViZXIgZGVuIE11bmQgZnVzc2VsaWcgenUgZGlza3V0aWVyZW4uCgpDYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogcGltbWVsIChHcmltbWJvcm4sICA4LiBKdWwgMjAwMywgMTY6MTE6MDUpOgp+IyEgb249TGVpYmkgb3Q9MTA1NzY3Mjc3OSBvZz13aXR6ZQp+IyEgcm49Tm9tbWUgcnQ9MTA1NzY2Mzc5NCByZz13aXR6ZQp+IyEgdGlkPTEwNTc2NjM3OTQKZGEgZ2lidHMgZG9jaCBhdWNoIG5vY2ggZWluIGJpbGQgenUuLi4gd2VubiBpY2ggbnVyIHd1ZXNzdGUsIHdvIGljaCBkYXMgZ2VzZWhuCmhhYi4KCmxlaWJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHBpbW1lbCAoR3JpbW1ib3JuLCAgOC4gSnVsIDIwMDMsIDE2OjExOjA2KToKfiMhIG9uPUJhbWJ1bGtvIG90PTEwNTc2NzMzMzQgb2c9d2l0emUKfiMhIHJuPUxlaWJpIHJ0PTEwNTc2NzI3Nzkgcmc9d2l0emUKfiMhIHRpZD0xMDU3NjYzNzk0CkljaCBnbGF1YmUgZGFzIHdhciBoZXV0ZSBNb3JnZW4sIGFscyBEdSBpbSBCYWRlemltbWVyIG5hY2t0IHZvciBkZW0gU3BpZWdlbApzdGFuZGVzdC4gOi0pCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogcGltbWVsIChHcmltbWJvcm4sICA4LiBKdWwgMjAwMywgMTY6MTE6MDcpOgp+IyEgb249RWxpemFiZXRoIG90PTEwNTc2NzMzNTcgb2c9d2l0emUKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEwNTc2NzMzMzQgcmc9d2l0emUKfiMhIHRpZD0xMDU3NjYzNzk0CmxlaWJpID8gd29obCBrYXVtISEgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBwaW1tZWwgKEdyaW1tYm9ybiwgIDguIEp1bCAyMDAzLCAxNjoxMTowOCk6Cn4jISBvbj1Nb29uc2hpbmUgb3Q9MTA1NzY3MzM3MyBvZz13aXR6ZQp+IyEgcm49RWxpemFiZXRoIHJ0PTEwNTc2NzMzNTcgcmc9d2l0emUKfiMhIHRpZD0xMDU3NjYzNzk0ClNpY2hlcj8gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBwaW1tZWwgKEdyaW1tYm9ybiwgIDguIEp1bCAyMDAzLCAxNjoxMTowOSk6Cn4jISBvbj1CYW1idWxrbyBvdD0xMDU3NjczNDQ3IG9nPXdpdHplCn4jISBybj1FbGl6YWJldGggcnQ9MTA1NzY3MzM1NyByZz13aXR6ZQp+IyEgdGlkPTEwNTc2NjM3OTQKRGFubiB3YXIgZXMgd29obCBkb2NoIGVoZXIsIGFscyBlciBNSUNIIG5hY2t0IGdlc2VoZW4gaGF0LiA6LSkKCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBwaW1tZWwgKEdyaW1tYm9ybiwgIDguIEp1bCAyMDAzLCAxNjoxMToxNik6Cn4jISBvbj1IdW1uaSBvdD0xMDU3NjczNDcwIG9nPXdpdHplCn4jISBybj1CYW1idWxrbyBydD0xMDU3NjczNDQ3IHJnPXdpdHplCn4jISB0aWQ9MTA1NzY2Mzc5NApCZXZvciBvZGVyIG5hY2hkZW0gZGllIFVua2UgbmVpbiBnZXNhZ3QgaGF0PwoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHBpbW1lbCAoR3JpbW1ib3JuLCAgOC4gSnVsIDIwMDMsIDE2OjExOjI4KToKfiMhIG9uPU1vb25zaGluZSBvdD0xMDU3NjczNDgyIG9nPXdpdHplCn4jISBybj1CYW1idWxrbyBydD0xMDU3NjczNDQ3IHJnPXdpdHplCn4jISB0aWQ9MTA1NzY2Mzc5NApBbHMgU2llIERpY2ggaGV1dGUgbW9yZ2VuIG5hY2t0IGdlc2VoZW4gaGF0dGVzdCwgd2Fyc3QgRHUgYWJlciBzY2hvbiBkYXMgZWluZQpvZGVyIGFuZGVyZSBNYWwgYmVpIGRlciBVbmtlLCBvZGVyPyA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHBpbW1lbCAoRWxpemFiZXRoLCAgOC4gSnVsIDIwMDMsIDE2OjExOjU0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDU3NjczNDY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzY2Mzc5NAoqa3JhdHoqIG9oLiBuYWd1dC4gKm5pY2sqLiB2ZXJzdGVoZS4gbmFqYS4uIGRhcyBwYXNzaWVydCBzY2hvbm1hbCAqc2NoYWVtKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQmVzY2h3ZXJkZSB1ZWJlciBTcGFzc29iamVrdGUgKEFtYXpvcmEsICA4LiBKdWwgMjAwMywgMTY6MTY6MDApOgp+IyEgcm49Q2FkcmFjaCBydD0xMDU3NjcyNzg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzY2MDYzNQphbnN0YXR0IGhpZXIgcnVtenVzY2hyZWliZW4gdW5kIGtvc3RiYXJlIHplaXQgenUgdmVycGxlbXBlcm4gd2VpbHMgZWggbml4CmJyaW5ndCwgc2V0enQgZXVjaCBkb2NoIGxpZWJlciBtYWwgaGluIHVuZCBwcm9nZ3QgbmUgcXVlc3Qgd28gc2ljaCBqZWRlciBzZWluCnNwYXNzaXRlbSB3dWVuc2NoZW4ga2Fubi4gZGllIGlkZWUgZmFuZCBpY2ggbmFlbWxpY2ggc3VwZXIuCmFtYXpvcmEgbXVlbGx0IGF1Y2ggbWFsIG1pdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQmVzY2h3ZXJkZSB1ZWJlciBTcGFzc29iamVrdGUgKEJhbWJpLCAgOC4gSnVsIDIwMDMsIDE2OjQxOjE5KToKfiMhIHJuPU1vb25zaGluZSBydD0xMDU3NjcxNzY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzY2MDYzNQpXZXIga2xhZ3QgdWViZXIgbWFuZ2VsbmRlIEtvbW11bmlrYXRpb24gendpc2NoZW4gTWFnaWVybiB1bmQgU3BpZWxlcm4/Clp3aXNjaGVuIHdlbGNoZW4gTWFnaWVybiB1bmQgd2VsY2hlbiBTcGllbGVybiBpbSBTcGV6aWVsbGVuPyBJY2ggaGFiZSBkYSBnYW56CmFuZGVyZSBFcmZhaHJ1bmdlbiBnZW1hY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQmVzY2h3ZXJkZSB1ZWJlciBTcGFzc29iamVrdGUgKEJvaW5nLCAgOC4gSnVsIDIwMDMsIDE2OjQ0OjEwKToKfiMhIHJuPUNhZHJhY2ggcnQ9MTA1NzY3Mjc4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc2NjA2MzUKTmljaHQgenUgdWViZXJiaWV0ZW4/IER1IHdpbGxzdCBkb2NoIG5pY2h0IGV0d2EgbWl0IEdyaW1tYm9ybiAKa29ua3VycmllcmVuPyA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQmVzY2h3ZXJkZSB1ZWJlciBTcGFzc29iamVrdGUgKENhdHdlYXpsZSwgIDguIEp1bCAyMDAzLCAxNjo1NDoyNyk6Cn4jISBybj1Cb2luZyBydD0xMDU3Njc1NDUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzY2MDYzNQpJaHIgc2VpZCBhbGxlIEdsZWljaHNjaGFsdGVyIQoKWVRDIChuYSBrb21tLCBkZXIgd2FyIGd1dCwgb2Rlcj8gS3VyeiBkYXZvciBhdWYgamVkZW4gRmFsbCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEJlc2Nod2VyZGUgdWViZXIgU3Bhc3NvYmpla3RlIChMdWcsICA4LiBKdWwgMjAwMywgMjE6MzM6MzYpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDU3NjcyNjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzY2MDYzNQpGYWxzY2ghCgpHbGVpY2ggbWl0IExEIQpMCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCZXNjaHdlcmRlIHVlYmVyIFNwYXNzb2JqZWt0ZSAoR25vbWUsICA4LiBKdWwgMjAwMywgMjI6NTg6MTMpOgp+IyEgcm49Tm9ubmUgcnQ9MTA1NzY3MTE0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc2NjA2MzUKZGFzIHByb2JsZW0gaXN0IG51cjogd2lyIHdvbGxlbiBOSUNIVCBkaWVzZW4gbG9lc3VuZ3NhbnNhdHogaGFiZW4sIHdlaWwKZXMgdW5zIHNvIGdlZmFlbGx0IHdpZSBiaXNoZXIuIG9rLCBiaXMgYXVmIGVpbmVuIHZpZWxsZWljaHQuCgphYmVyLi4uIHNlaXQgd2FubiB3aXJkIGhpZXIgYXVmIG1pbmRlcmhlaXRlbiBnZWhvZXJ0PwoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJlc2Nod2VyZGUgdWViZXIgU3Bhc3NvYmpla3RlIChBbmF0b2wsICA5LiBKdWwgMjAwMywgMDA6MDE6MTIpOgp+IyEgcm49R25vbWUgcnQ9MTA1NzY5Nzg5MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc2NjA2MzUKSWNoIGdsYXViZSwgRXJ6bWFnaWVyIHNpbmQgaGllciBkZXV0bGljaCBpbiBkZXIgTWluZGVyaGVpdC4uLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJlc2Nod2VyZGUgdWViZXIgU3Bhc3NvYmpla3RlIChUb2UsICA5LiBKdWwgMjAwMywgMDI6NDQ6NTIpOgp+IyEgcm49QWxrb2hvbCBydD0xMDU3NjcxNzUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzY2MDYzNQpNZW5zY2hlbiBiZWkgTmFjaHQgLSBvZGVyIGltIEtlbGxlci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdJTEwhIChHcmltbWJvcm4sICA5LiBKdWwgMjAwMywgMTE6NDc6MjkpOgp+IyEgcm49Wm9vayBydD0xMDU3NzQzOTM4IHJnPXNlaGVyLnVybGF1Ygp+IyEgdGlkPTEwNTc1MTA5ODYKSG1tLCBkYXMgc3RlbGxlIGljaCBtaXIgZWlnZW50bGljaCBnYW56IGludGVyZXNzYW50IHZvcjogaG9ybnVzc2VuIHZvciBlaW5lcgpLbGV0dGVyd2FuZC4gV2VyIGRpZSBtZWlzdGVuIHJ1bnRlcmhvbHQgaGF0IGdld29ubmVuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBXSUxMISAoWm9vaywgIDkuIEp1bCAyMDAzLCAxMTo0ODo1MSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1Nzc0NDA0OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc1MTA5ODYKKmh1c3QqIE9laC4uLiBnYW56IHNjaGxlY2h0ZSBJZGVlLi4uLiAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB0YXVjaGVuIGltIG55bXBoZW5zZWUgKEFtYXJ5bGxpcywgIDkuIEp1bCAyMDAzLCAxODoxMjo0Mik6Cn4jISBvbj1BbWFyeWxsaXMgb3Q9MTA1Nzc2NzExNSBvZz1wYXJ0eQp+IyEgcm49TXVhZGliIHJ0PTEwNTc3NjY2MDQgcmc9cGFydHkKfiMhIHRpZD0xMDU3MzIwODYwCkJsZWkgd3VlcmQgaWNoIGF1Y2ggenVoYXVzZSBsYXNzZW4uIEljaCB3aWxsIGRlbiBTaGVyaWZmIGphIG5vY2ggbmVuIFdlaWxjaGVuCmhhYmVuLi4uIDotKQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogdGF1Y2hlbiBpbSBueW1waGVuc2VlIChNdWFkaWIsICA5LiBKdWwgMjAwMywgMTg6MTQ6MTIpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwNTc3NjcxNjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3MzIwODYwCmFsc28gc28gZ2FueiBvaG5lIGJsZWkgd2lyZCBkYXMgYWJlciBuaXggbWl0IGRlbSB0YXVjaGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiB0YXVjaGVuIGltIG55bXBoZW5zZWUgKEdyaW1tYm9ybiwgIDkuIEp1bCAyMDAzLCAxODozMTowNik6Cn4jISBybj1NdWFkaWIgcnQ9MTA1Nzc2NzI1MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTczMjA4NjAKSW4gZGVuIFNlZSwgaW4gZGVuIFNlZSwgbWl0IGVpbmVtIEdld2ljaHQgYW4gZGVuIEZ1ZXNzZW4hCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IHRhdWNoZW4gaW0gbnltcGhlbnNlZSAoRm9vYmFyLCAgOS4gSnVsIDIwMDMsIDE4OjMyOjE0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDU3NzY4MjY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzMyMDg2MApEYWhlciBhdWNoIGRlciBCZWdyaWZmICJCbGVpZnVzcyIuCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IHRhdWNoZW4gaW0gbnltcGhlbnNlZSAoQW1hcnlsbGlzLCAgOS4gSnVsIDIwMDMsIDE4OjMyOjUwKToKfiMhIHJuPUZvb2JhciBydD0xMDU3NzY4MzM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzMyMDg2MApFaGVyICJCbGVpZW50ZSIuLi4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IHRhdWNoZW4gaW0gbnltcGhlbnNlZSAoTXVhZGliLCAgOS4gSnVsIDIwMDMsIDE4OjMzOjIwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDU3NzY4MjY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NzMyMDg2MAppY2ggaGFldCBlcyBsaWViZXIgdW0gZGllIGh1ZWZ0ZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM4OiBTcGFzc29iamVrdGUgKEJvaW5nLCAxMC4gSnVsIDIwMDMsIDAwOjA5OjE1KToKfiMhIHJuPVB1ayBydD0xMDU3Nzg4NTA5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDU1ODU2MzU5CkRhcyB6b2cgc2Nob24gdm9yIDEwIEphaHJlIG5pY2h0IC4uLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCZXdlcmJ1bmcgKEdyaW1tYm9ybiwgMTAuIEp1bCAyMDAzLCAxNDozOTo0NCk6Cn4jISBybj1QaWxncmltIHJ0PTEwNTc4NDA1Nzcgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDU3ODIxOTQxClVuZCBpY2ggYmV3ZXJiZSBtaWNoIG9mZml6aWVsbCBhbHMgTWFnaWVyLCBkZXIgRGlyIGRpZSBtcGEgZXJrbGFlcnQgdW5kIERpY2gKZGFyYXVmIGhpbndlaXN0IGRhc3MgZGllIEFudHdvcnRlbiB6dSBkZW4gbWVpc3RlbiBGcmFnZW4gZG9ydCB6dSBmaW5kZW4gc2luZAp3ZW5uIG1hbiBudXIgZGllIHJpY2h0aWdlbiBSdWJyaWtlbiBsaWVzdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWVydW5nLi4uLiAoTmliZWwsIDEwLiBKdWwgMjAwMywgMTk6MzA6MjgpOgp+IyEgcm49Wm9vayBydD0xMDU3ODU4MTY2IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTEwNTc4NTgxNjYKImZyYXUiIGRhbm4gd29obCB3ZW5pZ2VyLgogIC0gTmliZWwKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVlcnVuZy4uLi4gKFpvb2ssIDEwLiBKdWwgMjAwMywgMTk6MzA6NTgpOgp+IyEgcm49TmliZWwgcnQ9MTA1Nzg1ODIyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc4NTgxNjYKRXMgd2lyZCBuaWNodHMgdmVycmF0ZW4uIFNjaG9uIGdhciBuaWNodCB2b3JoZXIuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmV1ZXJ1bmcuLi4uIChTY2hva28sIDEwLiBKdWwgMjAwMywgMTk6MzE6NDkpOgp+IyEgcm49Wm9vayBydD0xMDU3ODU4MjU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1Nzg1ODE2NgpPaCwgSGludGVyaGVyIGRhbm4gYXVjaCBuaWNodCwgamE/IEhtbW0gLi4uLiA6KQoKU2Nob2tvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXVlcnVuZy4uLi4gKEhpc2FzdWwsIDEwLiBKdWwgMjAwMywgMTk6NDA6MTYpOgp+IyEgcm49U2Nob2tvIHJ0PTEwNTc4NTgzMDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3ODU4MTY2CkFsc28gYmxlaWJ0IGFsbGVzIHdpZSBlcyBzZWluIHdpcmQgOm8pCgpIaXNIYXNpIGlzIGJhY2sgLCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5ldWVydW5nLi4uLiAoWm9vaywgMTAuIEp1bCAyMDAzLCAxOTo0MTo1Nik6Cn4jISBybj1IaXNhc3VsIHJ0PTEwNTc4NTg4MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3ODU4MTY2Ck51IHplcmVkZXQgZG9jaCBuaWNodCBhbGxlcyBpbSB2b3JoaW5laW4uIElzdCBqYSBzY2hyZWNrbGljaCBtaXQgZGllc2VyClF1YXNzZWxnaWxkZSEgSWhyIHNlaWQgS2FlbXBmZXIgdW5kIGtlaW5lIDx6ZW5zaWVydD5eV1RvdHJlZGVyIQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLaWxsZXItQnJvZXRjaGVuIGRlcyB2ZXJzdWNodGVuIE1vcmRlcyBiZXppY2h0aWd0ISAoR3JpbW1ib3JuLCAxMC4gSnVsIDIwMDMsIDIzOjAyOjQ4KToKfiMhIG9uPUZvb2JhciBvdD0xMDU3ODY0MzA1IG9nPXdpdHplCn4jISBybj1Nb3Jnb3RoIHJ0PTEwNTc4NjM0MDQgcmc9d2l0emUKfiMhIHRpZD0xMDU3ODYzNDA0CkhhLCBlaW5lIGJla2FubnRlIFVyYmFuIExlZ2VuZCEKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU29zby4uLiAoQWhhYiwgMTEuIEp1bCAyMDAzLCAwMDoyMjo0NCk6ClRlYW0gT3JrZmV0emVyOiBHb2xkY2F0LCBSZWRtYW4oKiksIFJpcHBvcgoKQnJld2VyIHNhZ3Q6IHdhcyBtYWNoZW4gZGllIG9ya3M/IDspClJlZG1hbiBzYWd0OiBzdGVyYmVuIDopClJlZG1hbiBncmluc3QgQnJld2VyIGFuLgoKLi4uIHBhYXIgU2VrdW5kZW4gc3BhZXRlciAuLi4KCltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIFJpcHBvciB1bWdlYnJhY2h0LgpbVG9kOkVpbiBPcmtdIFdpciBzaW5kIE9yayEgV2lkZXJzdGFuZCBpc3QgendlY2tsb3MhIERlaW4gV2lzc2VuIHVuZCBEZWluZQpbVG9kOkVpbiBPcmtdIEF1c3J1ZXN0dW5nIHd1cmRlbiBhc3NpbWlsaWVydC4KCkRhIGhhdCBkYW5uIHdvaGwgZGVyIGVpbmUgb2RlciBhbmRlcmUgT3JrIHdhcyBmYWxzY2ggdmVyc3RhbmRlbi4uLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJld2VyYnVuZyAoQ2F0d2VhemxlLCAxMS4gSnVsIDIwMDMsIDA4OjAzOjUzKToKfiMhIHJuPVBpbGdyaW0gcnQ9MTA1Nzg0MDU3NyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNTc4MjE5NDEKVGphLgoKVW5kIHdpZWRlciB2ZXJrdWVuZGUgaWNoIG1pdCBGcmV1ZGVuIGRlbiBTYXR6OiAiTWVnYXNjaG1hcnJuZXIgd2lzc2VuIG1laHIhIgo6LSkKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQmVzY2h3ZXJkZSB1ZWJlciBTcGFzc29iamVrdGUgKE11YWRpYiwgMTEuIEp1bCAyMDAzLCAwODozMzo1MSk6Cn4jISBybj1FbGl6YWJldGggcnQ9MTA1NzY3MjY1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc2NjA2MzUKbmFqYSBlaWdlbnRsaWNoIG11c3MgZGVyIHNhdHogZ2VsdGVuIG1lZ2FzY2htYXJybmVyIGtvZW5uZW4gbmljaHQgcmljaHRpZwpsZXNlbi4KZWluZSBzdGVsbGUgd2FyIG5pZSBhdXNnZXNjaHJpZWJlbiBzb25kZXJuIG51ciB2b24gbWlyIG1pdCBtZWluZW0gaGludGVybgpiZXNldHp0IHVuZCBpY2ggd2VyZGUgZGVuIHRldWZlbCB0dW4gdW5kIHNpZSB0ZWlsZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEJlc2Nod2VyZGUgdWViZXIgU3Bhc3NvYmpla3RlIChHcmltbWJvcm4sIDExLiBKdWwgMjAwMywgMDk6Mzk6MzUpOgp+IyEgcm49TXVhZGliIHJ0PTEwNTc5MDUyMzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3NjYwNjM1CkJlaW0gU2thdCBnaWJ0cyBkZW4gRmFjaGF1c2RydWNrICJnZXNwYWx0ZW5lciBBcnNjaCIuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEJlc2Nod2VyZGUgdWViZXIgU3Bhc3NvYmpla3RlIChNb250YW51cywgMTEuIEp1bCAyMDAzLCAxMjo1Mjo0Nik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1NzkwOTE3NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc2NjA2MzUKVW5kIGF1c3NlcmRlbSB3b2xsZW4gd2lyIGphIG5pY2h0IFJlZ2VsIDYoYikgdmVybGV0emVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDM6IFNwYXNzb2JqZWt0ZSAoQmFtYmksIDExLiBKdWwgMjAwMywgMTk6MjM6NDcpOgp+IyEgb249QmFtYmkgb3Q9MTA1Nzk0Mzg5NiBvZz1kaXNrdXNzaW9uCn4jISBybj1Nb250YW51cyBydD0xMDU3ODM1NDMwIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDU1ODU2MzU5CkRhcyBaUEsgd2lyZCB3ZWRlciB2b3Igbm9jaCBuYWNoIGVpbmVtIHZvbiBQYWRyZWljIGZlcnRpZ2dlc3RlbGx0ZW4KTGljaHRzeXN0ZW0gYW5nZXNjaGxvc3Nlbi4gRGFzIGxpZWd0IG5pY2h0IGV0d2EgZGFyYW4sIGRhc3MgZXMgbmljaHQKYW5nZXNjaGxvc3NlbiB3aXJkLCBzb25kZXJuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlemVwdCAoQW5hdG9sLCAxMS4gSnVsIDIwMDMsIDIzOjUxOjMwKToKfiMhIHJuPUh1cmF4cHJheCBydD0xMDU3OTYwMjQ2IHJnPXNjaG1hcnJuLm5ldGRpZ2VzdAp+IyEgdGlkPTEwNTc5NTk5OTYKWmVpZyBtYWwgZXR3YXMga29nbml0aXZlIExlaXN0dW5nLiBzL2VsbGJvZ2Vuc2NobGFnL2VzLwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm1hZ2RhbGVuYSBuYWNoIDEvMiBnbGFzLi4uIChMZWliaSwgMTIuIEp1bCAyMDAzLCAxNDo0ODo0MSk6Cm1hZ2FsZW5hIGxpZXN0IGVpbmUgbWl0ZWlsdW5nIHZvbiBpcmdlbmR3ZW0sIGRlciBkZXIgZGFoaW50ZXIgMTQuNDQgc3RlaHQKIG1hZ2RhbGVuYTogMTQuNDQgaXN0IGRvY2ggZWluZSB0b2xsZSB1aHJ6ZWl0LiB2aWVsIGJlc3NlciBhbHMgMTQuNDUgb2RlcgoxNC40NiBvZGVyPwoKbGVpYmkgLSBzY2hhdXQgdmVyc3RhZW5kbmlzbG9zIHVtIHNpY2gKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYXBhZ2VpZW4uLi4gKEZvb2JhciwgMTIuIEp1bCAyMDAzLCAxNzoxODowMSk6CkR1IHNhZ3N0OiBoaXBwZSwgZmxpZWcgenUgZm9vYmFyCkhpcHBlIGtyYWVjaHp0OiAuLi4ga3Jvb29hYSAuLi4gd2VyZGUgRm9vYmFyIG1hbCBiZXN1Y2hlbiAuLi4KSGlwcGUgZmxhdHRlcnQgd2VnLgpIaXBwZSBmbGF0dGVydCBoZXJlaW4uCkhpcHBlIGtyYWVjaHp0OiAuLi4gRm9vYmFyIHNjaGlja3QgbWljaCAuLi4ga3JycnJvb29hYWFhIC4uLiBpY2ggc29sbCBEaWNoCkhpcHBlIGtyYWVjaHp0OiBiZWdsZWl0ZW4sIEZvb2JhciAuLi4gCj4gc3RlY2tlIGhpcHBlIGluIGthZWZpZwpEdSBoYXN0IGRlbiBQYXBhZ2VpZW4gZ2VyYWRlIHdlZ2dlc2NoaWNrdCwgZGVzaGFsYiBrYW5uc3QgRHUgaWhuIG5pY2h0IGluIGRlbgpLYWVmaWcgc3RlY2tlbiEgCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCklzJyBrbGFyIChGb29iYXIsIDEyLiBKdWwgMjAwMywgMTc6MzA6NTApOgo+IHVudCBmYXEKRGllc2UgU2NocmlmdHJvbGxlIGVudGhhZWx0ICdmcmVxdWVudGx5IGFza2VkIHF1ZXN0aW9ucycgenVyIFphdWJlcmdpbGRlLiBEdQprYW5uc3QgCnNpZSBuYXR1ZXJsaWNoIGxlc2VuLgpXZW5uIERpciBub2NoIGV0d2FzIGVpbmZhZWxsdCwgd2FzIGhpZXIgZHJpbmdlbmQgcmVpbiBtdXNzLCBtYWlsIGVzIFdpbS4KCk1hbCBzZWhlbiwgd2FubiBXaW0gYW50d29ydGV0LiA7bykKCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IElzJyBrbGFyIChNdXBmZWwsIDEyLiBKdWwgMjAwMywgMTc6NDM6NTEpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNTgwMjM4NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU4MDIzODUwCk5hamEgLi4uIGt1cnogbmFjaCBGZXJ0aWdzdGVsbHVuZyBkZXMgWlBLIG5laG0gaWNoIGFuIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG1tbSwgb2Igc2ljaCBab29rIG5pY2h0IHVlYmVybmltbXQ/IChNb3Jnb3RoLCAxMy4gSnVsIDIwMDMsIDAxOjQwOjA4KToKWm9vayAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKTmVzYWphICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpMZWliaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSG1tbSwgb2Igc2ljaCBab29rIG5pY2h0IHVlYmVybmltbXQ/IChNb29uc2hpbmUsIDEzLiBKdWwgMjAwMywgMDE6NDA6MzYpOgp+IyEgcm49TW9yZ290aCBydD0xMDU4MDUzMjA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1ODA1MzIwOApEZXIgc2NoYWZmdCBkYXMsIGlzdCBqYSBzY2hsaWVzc2xpY2ggbmljaHQgdW1zb25zdCBHb3R0ISA6LSkjCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41NTogU3Bhc3NvYmpla3RlIChBa2FzaGEsIDEzLiBKdWwgMjAwMywgMTU6NDg6NDgpOgp+IyEgcm49QmFtYmkgcnQ9MTA1ODEwNDA1MSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA1NTg1NjM1OQpKYWphLCBhbHMgTXVwZmVsIG5vY2ggU3BpZWxlciB3YXIuLi4KCkFrYXNoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTY6IFNwYXNzb2JqZWt0ZSAoTWFuZHJhZ29uLCAxMy4gSnVsIDIwMDMsIDE1OjQ5OjU2KToKfiMhIHJuPUFrYXNoYSBydD0xMDU4MTA0MTI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1NTg1NjM1OQpNdXBmZWwgd2FyIG1hbCBTUElFTEVSPz8KCk1hKiAtIGVudHNldHp0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41NjogU3Bhc3NvYmpla3RlIChSb2NodXMsIDEzLiBKdWwgMjAwMywgMTU6NTY6MzApOgp+IyEgcm49QWthc2hhIHJ0PTEwNTgxMDQxMjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDU1ODU2MzU5ClZvbiBkZW4gWmVpdGVuIGFscyBUcmVzdCBub2NoIE1hZ2llcmluIHdhciByZWRlIGljaCBsaWViZXIgbmljaHQgZXJzdCA6KQoKICBSb2NodXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSXMnIGtsYXIgKEJhbWJpLCAxMy4gSnVsIDIwMDMsIDE1OjU3OjE3KToKfiMhIHJuPU11cGZlbCBydD0xMDU4MDI0NjMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1ODAyMzg1MApBbHNvIGFscyBpY2ggZGFzIGxldHp0ZSBtYWwgd2FzIGFuIFdpbSBtYWlsdGUsIGhhdHRlIGVyIHNpY2ggc2VociB6dWVnaWcKaW5uZXJoYWxiIHZvbiBtYXhpbWFsIDIgVGFnZW4gZ2VtZWxkZXQuIFdlbm4gZXIgZGllc2UgR2VzY2h3aW5kaWdrZWl0IG5vY2gKYmVpYmVoYWVsdCwgbXVzcyBpY2ggRGljaCBsZWlkZXIgZW50dGFldXNjaGVuLiBXaW0gd2lyZCB2b3IgZGVtIEFuc2NobHVzcyBkZXMKWlBLIGFudHdvcnRlbi4KU09PTyBzY2huZWxsIHNpbmQgd2lyIG5hZW1saWNoIGF1Y2ggbmljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadWZhbGw/IChNb3Jnb3RoLCAxMy4gSnVsIDIwMDMsIDE2OjU1OjE5KToKTHVnICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRpZSBIeWRyYSBzaW5rdCBsYW5nc2FtIGluIGRhcyBUYWwgZGVyIEx1cGluZW4gbmllZGVyLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBadWZhbGw/IChMdWcsIDEzLiBKdWwgMjAwMywgMTg6MzQ6MTIpOgp+IyEgcm49TW9yZ290aCBydD0xMDU4MTA4MTE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1ODEwODExOQpNaXN0LCBlcnRhcHB0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadXZpZWwgZnVlciBpaG4/IChNb3Jnb3RoLCAxMy4gSnVsIDIwMDMsIDIwOjE2OjE3KToKRHUgZGVua3N0ICAgLiBvIE8gKGxlaWJpIHdpcmQgYWx0KQpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgUmlrdXMuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFp1dmllbCBmdWVyIGlobj8gKE1vb25zaGluZSwgMTMuIEp1bCAyMDAzLCAyMDoxNjo1MSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNTgxMjAxNzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU4MTIwMTc3Ck5laW4sIHdlbm4gTGVpYmkgYWx0IGlzdCwgZGFubiBpc3QgUmlrdXMgc2Nob24gc28gd2VpdCwgZGFzcyBhbGxlcyBMZWJlbiBhdXMKaWhtIHdlaWNodC4gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgplYmF5LmRlIChBbmF0b2wsIDEzLiBKdWwgMjAwMywgMjA6Mjk6MTIpOgoKIkljaCBnYXJhbnRpZXJlIGRhZnVlciwgZGFzcyBkZXIgQXJ0aWtlbCBkZW4gb2JlbiBiZXNjaHJpZWJlbmVuIFp1c3RhbmQgaGF0Owp1ZWJlcm5laG1lIGFiZXIga2VpbmUgR2FyYW50aWUhISEgQml0dGUgbnVyIGJpZXRlbiwgd2VubiBlaW52ZXJzdGFuZGVuISIKCkhhbGxvLi4uPyAKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWnV2aWVsIGZ1ZXIgaWhuPyAoTGVpYmksIDEzLiBKdWwgMjAwMywgMjA6MzI6MDkpOgp+IyEgcm49TW9yZ290aCBydD0xMDU4MTIwMTc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1ODEyMDE3NwppY2ggYmluIDIyLi4gZGFzIGlzdCBuaWNodCBhbHQuCgpsZWliaSAoMjIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZWJheS5kZSAoTW9vbnNoaW5lLCAxMy4gSnVsIDIwMDMsIDIwOjMyOjM5KToKfiMhIHJuPUFuYXRvbCBydD0xMDU4MTIwOTUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1ODEyMDk1MgpMYXNzIGRhcyBsaWViZXIgVXNjaGkgc2NocmVpYmVuLiA7LSkKCkRhIGtvbW10IGRhcyBlaW5mYWNoIGdsYXVid3VlcmRpZ2VyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBtYWVkZWxzIGdlc3VjaHQgKFJvbmRhLCAxMy4gSnVsIDIwMDMsIDIzOjI3OjQzKToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDU4MTMxNTgzIHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTA1ODEzMTQ2NgpIbS4gTWFuZHJhZ29uLiBFZ2FsIG9iIHNpZSBHZWxkIG1pdGJyaW5nZW4gb2RlciBHZWxkIGRhZnVlciBiZWtvbW1lbjogV2FydW0KaW50ZXJlc3NpZXJzdCBEVSBEaWNoIGRhZnVlcj8gRHUgZXJmdWVsbHN0IGRhIGVpbiBnZXdpc3NlcyBLcml0ZXJpdW0gbmljaHQgOy0pCgpSb25kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbWFlZGVscyBnZXN1Y2h0IChNYW5kcmFnb24sIDEzLiBKdWwgMjAwMywgMjM6Mzc6MjQpOgp+IyEgcm49Um9uZGEgcnQ9MTA1ODEzMTY2MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTgxMzE0NjYKQXVmIGRlbiBBcnRpa2VsIGhhYiBpY2ggZ2V3YXJ0ZXQgLi4uCgppY2ggbWFjaGUgbnVyIGVpbmUgcHN5Y2hvbG9naXNjaGUgVW50ZXJzdWNodW5nIHVlYmVyIE11ZGRlciAuLi4gOm8pCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IG1hZWRlbHMgZ2VzdWNodCAoTGVpYmksIDEzLiBKdWwgMjAwMywgMjM6Mzc6NTEpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNTgxMzIyNDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU4MTMxNDY2CmVyemFlaGwgbWFsLCB3YXMgZHUgYmlzaGVyIGZlc3RnZXN0ZWxsdCBoYXN0LgoKbGVpYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkd1bW1pZW50ZW4gKE11cGZlbCwgMTMuIEp1bCAyMDAzLCAyMzo0ODo1Nyk6Cmh0dHA6Ly93d3cuc3BpZWdlbC5kZS93aXNzZW5zY2hhZnQvZXJkZS8wLDE1MTgsMjU2OTQ5LDAwLmh0bWwKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbWFzc2l2ZWx5IG11bHRpcGxheWVyIG9ubGluZSByb2xlLXBsYXlpbmcgZ2FtZSAoQWthc2hhLCAxNC4gSnVsIDIwMDMsIDE0OjU1OjU2KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEwNTgxODU3MDQgcmc9d3d3Cn4jISB0aWQ9MTA1ODE4NTcwNApIbW0sIGljaCBmaW5kZSBkYXMgemllbWxpY2ggdWViZXJiZXdlcnRldC4uLgoKQWthc2hhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IG1hc3NpdmVseSBtdWx0aXBsYXllciBvbmxpbmUgcm9sZS1wbGF5aW5nIGdhbWUgKEJhbWJ1bGtvLCAxNC4gSnVsIDIwMDMsIDE1OjE2OjAxKToKfiMhIHJuPUFrYXNoYSBydD0xMDU4MTg3MzU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1ODE4NTcwNApJY2ggc3BpZWxlIGRhcyBqZXR6dCBzZWl0IHVlYmVyIDMwIEphaHJlbiB1bmQgYmluIGltbWVyIG5vY2ggc3VlY2h0aWcgZGFuYWNoLgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IG1hc3NpdmVseSBtdWx0aXBsYXllciBvbmxpbmUgcm9sZS1wbGF5aW5nIGdhbWUgKEFrYXNoYSwgMTQuIEp1bCAyMDAzLCAxNToxNzowNCk6Cn4jISBybj1CYW1idWxrbyBydD0xMDU4MTg4NTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1ODE4NTcwNApVbmQgd2FydW0gbXVkZGVzdCBkdSBkYW5uPyA7KQoKQWthc2hhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllIEFybWVlbiBkZXIgRmluc3Rlcm5pcyAuLi4gKEJhbWJpLCAxNC4gSnVsIDIwMDMsIDIwOjE1OjIxKToKfiMhIHJuPUFyayBydD0xMDU4MjA1NDgxIHJnPWQud3Vlc3RlCn4jISB0aWQ9MTA1ODIwNTQ4MQo+IERhZnVlciBzb2xsdGUgc2ljaCBkaWUgWmVpdCBbLi4uXSBldHdhcyB2ZXJrdWVyemVuCkR1IG1laW5zdCwgZGllIFNwaWVsZXIgc2luZCBzY2huZWxsZXIgdG90PyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWUgQXJtZWVuIGRlciBGaW5zdGVybmlzIC4uLiAoQXJrLCAxNC4gSnVsIDIwMDMsIDIwOjI1OjAwKToKfiMhIHJuPUJhbWJpIHJ0PTEwNTgyMDY1MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU4MjA1NDgxCi4uLiBvZGVyIGRlciBHZWduZXIsIGxhc3MgdW5zIGRvY2ggenVuYWVjaHN0IG1hbCBwb3NpdGl2IGRlbmtlbiwgamE/IDteKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU0OiBTcGFzc29iamVrdGUgKENhdHdlYXpsZSwgMTQuIEp1bCAyMDAzLCAyMDoyNjowMCk6Cn4jISBybj1Gb29iYXIgcnQ9MTA1Nzk1OTgzMSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA1NTg1NjM1OQpXYXMgZGVubiBmdWVybiBBbmdlbG4/CgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU1OiBTcGFzc29iamVrdGUgKEZvb2JhciwgMTQuIEp1bCAyMDAzLCAyMTowMzoxNCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA1ODIwNzE2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTU4NTYzNTkKSWNoIHZlcnN0ZWhlIGRpZSBGcmFnZSBuaWNodC4gOm8pCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJld2VyYnVuZyAoSGFkcmEsIDE1LiBKdWwgMjAwMywgMDA6MTU6NDYpOgp+IyEgb249SGFkcmEgb3Q9MTA1ODIyMDkzNiBvZz1lbnR3aWNrbHVuZwp+IyEgcm49UGlsZ3JpbSBydD0xMDU3ODQwNTc3IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTA1NzgyMTk0MQoKaGllcm1pdCBiZXdlcmJlIGljaCBtaWNoIGZ1ZXIgZWdhbCB3YXMuIGhhdXB0c2FjaGUgbGV2ZWwuCgpoYWRyYSAtIGxldmVsZ2VpbCB3aWUgbmllIHp1dm9yIQoKcC5zLjogbHVnIGlzdCBzdWVzcywgZWluZnVlaGxzYW0gdW5kIHZlcnN0ZWh0IGZyYXVlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJld2VyYnVuZyAoVmFuaW9uLCAxNS4gSnVsIDIwMDMsIDA3OjI2OjQzKToKfiMhIHJuPUhhZHJhIHJ0PTEwNTgyMjA5NDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3ODIxOTQxCkhtbW0sIGFsc28gYmlzIHp1IERlaW5lbSBQUyBoYWV0dGVuIHdpciBub2NoIGRydWViZXIgcmVkZW4ga29lbm5lbi4gSmV0enQgbXVzcwppY2ggYWJlciBhbiBEZWluZXIgWnVyZWNobnVuZ3NmYWVoaWdrZWl0IHp3ZWlmZWxuLiA6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFNjaGFjaHRlbCAoR3JpbW1ib3JuLCAxNS4gSnVsIDIwMDMsIDE0OjA5OjM3KToKfiMhIG9uPUJlbGRhcmFuIG90PTEwNTgyNzA5NTEgb2c9d2l0emUKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNTgyNTc3MzYgcmc9d2l0emUKfiMhIHRpZD0xMDU4MDkzNTk1CldlciBiaXR0ZSBzb2xsIEJlbGxkYXNhbiBzZWluPyA7KQoKQmVsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5kIHdlciBuaW1tdCBkYXMgbnVuIGFiPyAoQmFtYmksIDE1LiBKdWwgMjAwMywgMTg6MDY6MTApOgpbPE1hc3RlUj46VmFuaW9uXSBWb3JtIFJlYm9vdCB3aXJkIFRhcmFtaXMgYW5nZXNjaGxvc3Nlbi4KQm9pbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBCZXdlcmJ1bmcgKE55eCwgMTUuIEp1bCAyMDAzLCAyMDoyNTozMCk6Cn4jISBybj1WYW5pb24gcnQ9MTA1ODI0NjgwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTc4MjE5NDEKQWxzbyBpY2ggbXVzcyBpaHIgZGEgdm9sbCB1bmQgZ2FueiB6dXN0aW1tZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJld2VyYnVuZyAoTXVwZmVsLCAxNS4gSnVsIDIwMDMsIDIwOjM3OjAzKToKfiMhIHJuPUhhZHJhIHJ0PTEwNTgyMjA5NDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU3ODIxOTQxCkphamEgZGVyIEhhZHJhLi4uIG11c3MgaW1tZXIgZ2FueiBvYmVuIHN0ZWhlbiA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbHRzYW1lIFRhbmppYW4gKE1vb25zaGluZSwgMTcuIEp1bCAyMDAzLCAxMTowNzo0Nyk6CkFMc28gaXJnZW5kd2FzIGlzdCBkYSBrb21pc2NoOgpad2lyaW9uIGtvbnplbnRyaWVydCBzaWNoLgpad2lyaW9uIHNjaHJlaXQgc2NobWVyenZvbGwuCgpNb29uc2hpbmUgdmVyc2NoZW5rdCBMb2xsaXMuIDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNlbHRzYW1lIFRhbmppYW4gKFp3aXJpb24sIDE3LiBKdWwgMjAwMywgMTE6MDk6MTQpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTEwNTg0MzI4Njcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU4NDMyODY3Ck1hbmNoZSBoYWJlbiBoYWx0IHNvIGlocmUgUHJvYmxlbWUsIHNpY2ggenUga29uemVudHJpZXJlbiA6KQoKWndpcmlvbiBpc3N0IG5pZSBuaWUgbmllIHdpZWRlciBTdWVzc2lna2VpdGVuICwtKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOaXggZnVlciB6YXJ0ZSBHZW11ZXRlciAoYzsgKFZhbmlvbiwgMTguIEp1bCAyMDAzLCAxNjowOTo1Mik6Cn4jISBybj1WYW5pciBydD0xMDU4NTI3MTI0IHJnPXd3dwp+IyEgdGlkPTEwNTg1MjA0OTIKR25hIC4uLi4KbWFjaCBkb2NoIHNvd2FzIG5pY2ggVmFuaXIuIERhIGxlcyBpY2ggZG9jaCBncmFkIGVpbmVuIEFydGlrZWwgdm9uIG1pciwgZGVyCmdhcm5pY2ggdm9uIG1pciBpc3QgLi4uIEljaCBoYWIgc2Nob24gYW4gbWlyIGdlendlaWZlbHQuCgpWKiwgZWluemlnIGF1dGhlbnRpc2NoZXIgVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBpc2xhbmQgKEFuYXRvbCwgMTguIEp1bCAyMDAzLCAxODo0ODo1OCk6Cn4jISBvbj1BbmF0b2wgb3Q9MTA1ODU0NjkyNiBvZz13d3cKfiMhIHJuPUJpcmR5IHJ0PTEwNTg1NDY3NDcgcmc9d3d3Cn4jISB0aWQ9MTA1ODU0Njc0NwoiQmlyZHkgZnJldXQgc2ljaCByaWVzaWcsIGRhc3MgRHUgc2llIGF1ZiBpaHJlciBJbnNlbCBiZXN1Y2hzdC4iCgpEYXNzIG1pdCBEaXIgaXJnZW5kd2FzIG5pY2h0IGdhbnogaW4gT3JkbnVuZyB3YXIsIGhhYmVuIHdpciBqYQpzY2hvbiB2b3IgSmFocmVuIGdlbWVya3QuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzbyBnZWh0IGRhcyBhbHNvOiAoTGVpYmksIDE4LiBKdWwgMjAwMywgMTk6MjQ6MjMpOgp2b24gd2VnZW4gYmllbmNoZW4gdW5kIGJsdWVtY2hlbjoKTWFuZHJhZ29uIHNhZ3Q6IGJldGVuIHVuZCBrZXVzY2hoZWl0IC4uIGRhcyBpc3QgZ290dGVzZ2VmYWVsbGlnLiBkYW5uIHNjaGVua3QKTWFuZHJhZ29uIHNhZ3Q6IGVyIGVpbmVtIGtpbmRlciA6bykKCmxlaWJpIC13ZWlzcyBqZXR6dCBiZXNjaGVpZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNvIGdlaHQgZGFzIGFsc286IChNb29uc2hpbmUsIDE4LiBKdWwgMjAwMywgMTk6MjQ6NDMpOgp+IyEgcm49TGVpYmkgcnQ9MTA1ODU0OTA2MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTg1NDkwNjMKSmV0enQgZXJzdD8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc28gZ2VodCBkYXMgYWxzbzogKE1vcmdvdGgsIDE4LiBKdWwgMjAwMywgMTk6MjQ6NTMpOgp+IyEgcm49TGVpYmkgcnQ9MTA1ODU0OTA2MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTg1NDkwNjMKClZvZWxsaWdlciBxdWF0c2NoLCBCaWVuY2hlbiBpc3QgbWl0IFJhc2NhbCB6dXNhbW1lbi4uLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc28gZ2VodCBkYXMgYWxzbzogKE1vb25zaGluZSwgMTguIEp1bCAyMDAzLCAxOToyNToyOSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNTg1NDkwOTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU4NTQ5MDYzCkljaCBiaW4gZGllIGVpbnppZyB3YWhyZSBNKiwgbGFzcyBkYXMgYWxzbywgTW9nZ2VsY2hlbiEgOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBzbyBnZWh0IGRhcyBhbHNvOiAoTGVpYmksIDE4LiBKdWwgMjAwMywgMTk6MjU6NTUpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTEwNTg1NDkxMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU4NTQ5MDYzCmRhcyBoYWx0ZSBpY2ggZnVlciBlaW4gZ2VydWVjaHQKCmxlaWJpIGlzdCBrZWluIGwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBzbyBnZWh0IGRhcyBhbHNvOiAoTW9vbnNoaW5lLCAxOC4gSnVsIDIwMDMsIDE5OjI2OjMzKToKfiMhIHJuPUxlaWJpIHJ0PTEwNTg1NDkxNTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU4NTQ5MDYzCkljaCBzcHJhY2ggamEgYXVjaCB2b24gTSosIG5pY2h0IHZvbiBEaXIgdW5kIGRlbSB2ZXJrYXBwdGVuICdsKicKCk0qIC0gd2llIHNpZWh0IGRhcyBkZW5uIHNjaG9uIGF1cz8hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBzbyBnZWh0IGRhcyBhbHNvOiAoTW9yZ290aCwgMTguIEp1bCAyMDAzLCAxOToyNzoyMyk6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTA1ODU0OTE5MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTg1NDkwNjMKCktvbW0gRHUgZXJzdG1hbCBpbiBtZWluIGFsdGVyLCBkdSBncnVlbmVzIGdlbXVlc2UuIHdlbm4gaGllciBlaW5lciBNKiBpc3QsCmRhbm4gYmluIGljaCBkYXMuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogc28gZ2VodCBkYXMgYWxzbzogKE1vb25zaGluZSwgMTguIEp1bCAyMDAzLCAxOToyNzo0Nyk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNTg1NDkyNDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU4NTQ5MDYzCkJyYXVjaHNjaGQgRHUgU2NobGFlZ2VyZWkgYXVmcyBBdWcnPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogc28gZ2VodCBkYXMgYWxzbzogKE1vcmdvdGgsIDE4LiBKdWwgMjAwMywgMTk6Mjg6MTgpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTEwNTg1NDkyNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU4NTQ5MDYzCkphLCBicmluZyBuZW4gVGVybWluYXRvciBtaXQsIHNvbnN0IGtsYXBwdHMgbmljaHQgOikKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBzbyBnZWh0IGRhcyBhbHNvOiAoTW9vbnNoaW5lLCAxOC4gSnVsIDIwMDMsIDE5OjM1OjA1KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA1ODU0OTI5OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTg1NDkwNjMKSmV0enQgc29sbCBpY2ggYWxzIGVpbnppZyB3YWhyZSBNKiBhdWNoIG5vY2ggZWluZW4gVCogbWl0YnJpbmdlbi4KCldpbGxzdCBqYSBudXIgQ2FtRGlheiAmIENvLiBzZWhlbiEgOy0pCgpEaWUgZWluemlnIHdhaHJlIHVuZCB0b2xsc3RlIE0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBzbyBnZWh0IGRhcyBhbHNvOiAoTW9yZ290aCwgMTguIEp1bCAyMDAzLCAxOTozNjoyMik6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTA1ODU0OTcwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTg1NDkwNjMKCldhcyBoYXQgZGllc2UgaGFlc3NsaWNoZSBaaWNrZSBtaXQgVCogenUgdHVuPwpVbmQgZ2V3b2VobiBEaXIgZGFzIE0qIHNjaG5lbGwgd2llZGVyIGFiLCBNb25kc2NoZWluY2hlbiwgc29uc3Qgd2lyZCBmdWVyIERpY2gKYmFsZCBUYWcuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogc28gZ2VodCBkYXMgYWxzbzogKE1vb25zaGluZSwgMTguIEp1bCAyMDAzLCAxOTozNjoyNik6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTA1ODU0OTcwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTg1NDkwNjMKQWJlciBkYSBEdSB3b2hsIGRvY2ggbGllYiBiaXN0IHVuZCBzbyB0b2xsZSBab2VwZmNoZW4gaGF0dGVzdCwgZXJsYXViZSBpY2ggRGlyCmd1ZXRpZ2Vyd2Vpc2UsIGRhc3MgRHUgRGljaCAnbSonIG5lbm5lbiBkYXJmc3QuCgpIdWxkaWdlIG1pciEKCkRpZSBlaW56aWcgd2FocmUgdW5kIHRvbGxzdGUgTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBzbyBnZWh0IGRhcyBhbHNvOiAoTW9vbnNoaW5lLCAxOC4gSnVsIDIwMDMsIDE5OjM5OjU2KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA1ODU0OTc4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTg1NDkwNjMKV2llLCBoYWJlbiB3aXIgamV0enQgZG9jaCBlaW4gVGFnLU5hY2h0LVN5c3RlbSBpbSBNRz8gCgooTUcgaGVpc3N0IHVlYnJpZ2VucyBNb29uc2hpbmVzR3JhdWVuLiAqZyopCgpEaWUgZWluemlnIHdhaHJlIHVuZCB0b2xsc3RlIE0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogc28gZ2VodCBkYXMgYWxzbzogKEFuYXRvbCwgMTguIEp1bCAyMDAzLCAxOTo0MjoxNCk6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTA1ODU0OTk5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTg1NDkwNjMKV2VubiBkYXMgTW1aIHVuZCBkYXMgTW9aIHNpY2ggd2llZGVyIGVpbmtyaWVnZW4ga29lbm50ZW4sIGRhbWl0IHdpciBhbmRlcmVuCmluIFJ1aGUgd2VpdGVyZWlkbGVuIGtvZW5uZW4uLi4/IDopCgpBCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogdHNoaXJ0cyAtPiBmb2xpZW5kcnVjayAoQW5hdG9sLCAxOS4gSnVsIDIwMDMsIDA5OjM0OjM3KToKfiMhIHJuPUtlbHJpcyBydD0xMDU4NTY5NzYyIHJnPXBhcnR5Cn4jISB0aWQ9MTA1ODQ0MjI3NApCaXR0ZSBlcnpldWdlIGRvY2ggd2VyIG5lIFJ1YnJpayAicGFydHkua2VscmlzX25lcnZ0X2Z1ZXJfaWRsZWZpeCIuCklzdCBqYSBuaWNodCBhdXN6dWhhbHRlbi4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IHRzaGlydHMgLT4gZm9saWVuZHJ1Y2sgKE5pYmVsLCAxOS4gSnVsIDIwMDMsIDA5OjQ4OjM0KToKfiMhIHJuPUtlbHJpcyBydD0xMDU4NTY5NzYyIHJnPXBhcnR5Cn4jISB0aWQ9MTA1ODQ0MjI3NApNYWNodHMgZG9jaCBuaWNodCB1bm5vZXRpZyBrb21wbGl6aWVydC4gS2F1ZnQgZ2FyIGtlaW5zLCBsYXNzdCBldWNoIGRhcwpNb3RpdiBzY2hpY2tlbiwgdW5kIGdlaHQgZGFtaXQgaW4gZXVyZXIgSGVpbWF0IHp1bSBDb3B5c2hvcC4gRGEga3JpZWd0IGlocgpkYW5uIGF1Y2ggZGFzIHJpY2h0aWdlIFQtU2hpcnQsIGluIGRlciByaWNodGlnZW4gRmFyYmUsIG1pdCBkZW0gcmljaHRpZ2VuCkRydWNrLCB1bmQgRHUga2FubnN0IHNpY2hlcmxpY2ggc29nYXIgZWluZSBBdWZzY2hyaWZ0IGFsYSAiS2VscmlzL0lkbGVkaW5ncyIKdmVybGFuZ2VuLCBvaG5lIHNwZXppZWxsZW4gQXVmcHJlaXMuCiAgLSBOaWJlbAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiB0c2hpcnRzIC0+IGZvbGllbmRydWNrIChCb2luZywgMTkuIEp1bCAyMDAzLCAwOTo1NTowMik6Cn4jISBybj1OaWJlbCBydD0xMDU4NjAwOTE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1ODQ0MjI3NApEYXMgd2FlcmUgamEgQXJiZWl0IGZ1ZXIgZWluZW4gc2VsYnN0IC4uLiBzbyBrYW5uIG1hbiBkb2NoIHZpZWwgZWluZmFjaGVyCkdub21lIGRpZSBBcmJlaXQgYXVmaGFsc2VuIC4uLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiB0c2hpcnRzIC0+IGZvbGllbmRydWNrIChCYW1iaSwgMTkuIEp1bCAyMDAzLCAxMTowNDoyMik6Cn4jISBybj1OaWJlbCBydD0xMDU4NjAwOTE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1ODQ0MjI3NApTaWViZHJ1Y2sgZnVlciBlaW4gZWluemlnZXMgVC1TaGlydD8gKmh1ZXN0ZWwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogdHNoaXJ0cyAtPiBmb2xpZW5kcnVjayAoTXVhZGliLCAxOS4gSnVsIDIwMDMsIDEyOjE2OjI5KToKfiMhIHJuPUJhbWJpIHJ0PTEwNTg2MDU0NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU4NDQyMjc0CmRpZSBzb2xsZW4gc2ljaCBuaWNoIHNvIGhhYmVuIHVuZCBoaW50ZXJoZXJnZXJhbm50IGtvbW1lbiB3aWUgZGllIGFsdGUKZmFzbmFjaHQuCndhcyB2aWVsIHdpY2h0aWdlciBpc3Q6IHdpcmQgbWlyIGRhcyBiaWVyIHNjaG1lY2tlbiBvZGVyIG11c3MgaWNoIHNlbGJzdAp3ZWxjaGVzIGltcG9ydGllcmVuIG9kZXIga2FubiBpY2ggZGlyIGRhcyBub2NoIGF1ZnMgYXVnZSBkcnVlY2tlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGF1YnN0dW1tPz8/PyAoSHVtbmksIDE5LiBKdWwgMjAwMywgMjM6NDk6NTcpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyB0YXVic3R1bW1lbiBXYWVjaHRlcnNdIEljaCBzYWd0ZSBkb2NoICJJY2ggZXJnZWJlIG1pY2ghIiwKW01vZXJkZXI6R2Vpc3QgZWluZXMgdGF1YnN0dW1tZW4gV2FlY2h0ZXJzXSBFc21lLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUYXVic3R1bW0/Pz8/IChBcG9sbG9uaWEsIDIwLiBKdWwgMjAwMywgMDk6MTc6NTApOgp+IyEgcm49SHVtbmkgcnQ9MTA1ODY1MTM5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTg2NTEzOTcKTm9jaCBuaWUgd2FzIHZvbiBMR0IgZ2Vob2VydD8gKGM6CgpBcG8qCm5pY2h0IGdhbnogc2lubmZyZWkgKmcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRhdWJzdHVtbT8/Pz8gKE5vbm5lLCAyMC4gSnVsIDIwMDMsIDA5OjE5OjA0KToKfiMhIHJuPUFwb2xsb25pYSBydD0xMDU4Njg1NDcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1ODY1MTM5NwpEQVMgd2lsbCBpY2ggZGFubiBtYWwgdWViZXIgZGllIEViZW5lbiBzZWhlbi9ob2VyZW4hCgpOb25uZSwgZ2VzcGFubnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBzbyBnZWh0IGRhcyBhbHNvOiAoQXJrLCAyMS4gSnVsIDIwMDMsIDEwOjIyOjM3KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA1ODU0OTI0MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTg1NDkwNjMKVW5kIGJldm9yIG1pY2ggamV0enQgaGllciBlaW5lciBhbHMgQSogYmV6ZWljaG5ldCwgZnVlaGxlIGVyIHNpY2ggc2Nob25tYWwKZ2V6YXBwdCA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBzbyBnZWh0IGRhcyBhbHNvOiAoQW1hem9yYSwgMjEuIEp1bCAyMDAzLCAxMDo0MjoxNCk6Cn4jISBybj1BcmsgcnQ9MTA1ODc3NTc1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTg1NDkwNjMKaWNoIQpBKiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IHNvIGdlaHQgZGFzIGFsc286IChBcmssIDIxLiBKdWwgMjAwMywgMTA6NTU6MjMpOgp+IyEgcm49QW1hem9yYSBydD0xMDU4Nzc2OTM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1ODU0OTA2MwpJY2ggZnVlaGxlIG1pY2ggZ2VyYWRlIGV0d2FzIGluZXJ0IC4uLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IHNvIGdlaHQgZGFzIGFsc286IChNb250YW51cywgMjEuIEp1bCAyMDAzLCAxMTozNToyMyk6Cn4jISBybj1BcmsgcnQ9MTA1ODc3NzcyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTg1NDkwNjMKTW9yKiwgZHUgSnVuZ3NwdW5kLiBBbHRlciB2b3IgU2Nob2VuaGVpdCwgZGFzIHNvbGx0ZXN0IGRvY2ggZ2VyYWRlIGR1IHdpc3Nlbi4KTSosIGJ6dyBhdWNoIE1vKiBiZWFuc3BydWNoZSBpY2ggaGllcm1pdCBlcnN0bWFsIGZ1ZXIgbWljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IHNvIGdlaHQgZGFzIGFsc286IChab29rLCAyMS4gSnVsIDIwMDMsIDExOjU0OjQzKToKfiMhIHJuPUFyayBydD0xMDU4Nzc1NzU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1ODU0OTA2Mwpab29rIGJlaXNzdCBzaWNoIGF1ZiBkaWUgWnVuZ2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBzbyBnZWh0IGRhcyBhbHNvOiAoTW9yZ290aCwgMjEuIEp1bCAyMDAzLCAxMzo0NjoyMSk6Cn4jISBybj1ab29rIHJ0PTEwNTg3ODEyODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU4NTQ5MDYzCkFscyBLbGVydXNtYWdpZXI6CnJlZ2VuZXJpZXJlIHpvb2sKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBzbyBnZWh0IGRhcyBhbHNvOiAoWm9vaywgMjEuIEp1bCAyMDAzLCAxMzo0ODowMik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNTg3ODc5ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU4NTQ5MDYzClpvb2sgZGFua3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpuZXVsaWNoIGFtIGxhZ2VyZmV1ZXIuLi4gKEdub21lLCAyMS4gSnVsIDIwMDMsIDE0OjI1OjIwKToKLi4uaGFiZW4gd2lyIGJpcmR5cyB1bmQgbWFoYXJldHMgZ2VidXJ0c3RhZyBuYWNoZ2VmZWllcnQuCmVzIHdhciByZWNodCBsdXN0aWcgdW5kIGhlcmF1cyBrYW1lbiBzb2xjaGUgc2FjaGVuIHdpZToKCkNha2V5OiAiRHUgTWFoYXJldCwgSWNoIGJpbiBzY2h3dWwhIgpNYWhhcmV0OiAiQWVoLi4uIgpCaXJkeSB1bmQgR25vbWUgc3RpbW1lbiBlaW46ICJTY2h3dXV1dXV1dXV1dWxlIE1hZWRjaGVuISIKCkd1YXJkIChpbiBtaXRsZWlkc2VycmVnZW5kZW0gVG9uKSB6dSBFcmlhOiAiRHUsIGljaCB3YXIgZnJ1ZWhlciBhdWNoIG1hbAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YWVya2VyIGJlaGFhcnQuLi4iCkdub21lIHBydXN0ZXQgQmllciBpbnMgRmV1ZXIuCgpCaXJkeXMgT25rZWwgd2lyZCBnZWZyYWd0LCB3YXJ1bSBlciB6d2FyIGFtIEZldWVyIHNpdHp0LCBhYmVyIG5pY2h0cwp6dSB0cmlua2VuIGhhdC4KQmlyZHlzIE9ua2VsIChpbSBiZXN0ZW4gQmVybGluZXJpc2NoKTogIldpc3N0YS4uLiBIaWVyIGJla29tbXQgbWFuIG51ZXNjaHQuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNZWVuIE5lZmZlIGtvZW5udGUgbWlyIGphIHdhdAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaG9sZW4sIGFiZXIgZGl0IGlzIGVoIHNvIG5lCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGbGFjaHphbmdlLi4uIgpFaW4gSGF1ZmVuIE11ZGRlciBrdWdlbG4gc2ljaCBhbSBCb2Rlbi4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcmtpLVNwYXR6ISAoTW9vbnNoaW5lLCAyMS4gSnVsIDIwMDMsIDE3OjEwOjQxKToKSGFkZHUgbWFsIHdpZWRlciB0b2xsIGdlbWFjaHQ6CgpWYW5pb24ga29tbXQgaGVyZWluIHVuZCBrbG9wZnQgc2ljaCBkZW4gUmVpc2VzdGF1YiBhYi4KQXJrc2hhdCBoZWlzc3QgVmFuaW9uIGFscyByZXVpZ2VuIFN1ZW5kZXIgd2lsbGtvbW1lbiB1bmQgbGFldXRlcnQgc2VpbmVuCkdlaXN0LgoKTW9vbnNoaW5lIGFwcGxhdWRpZXJ0IEFya3NoYXQuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFya2ktU3BhdHohIChWYW5pb24sIDIxLiBKdWwgMjAwMywgMTc6MTc6NDYpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTEwNTg4MDAyNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU4ODAwMjQxCkR1IGhhc3Qgd2FzIHZlcmdlc3NlbjoKCkFya3NoYXQgZmFlbGx0IHRvdCB6dSBib2Rlbi4KCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBcmtpLVNwYXR6ISAoTW9vbnNoaW5lLCAyMS4gSnVsIDIwMDMsIDE3OjE4OjI1KToKfiMhIHJuPVZhbmlvbiBydD0xMDU4ODAwNjY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1ODgwMDI0MQpBbHNvIGViZW4ga29ubnRlIGljaCBpaG4gbm9jaCBrdXNjaGVsbi4KCklzdCBoYWx0IGVpbiBTdGVoYXVmbWFlbm5jaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQXJraS1TcGF0eiEgKE1vb25zaGluZSwgMjEuIEp1bCAyMDAzLCAxNzoyMDozNSk6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTA1ODgwMDcwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTg4MDAyNDEKU2FndGUgaWNoIGRvY2gsIFN0ZWhhdWZtYWVubmNoZW4gdW5kIG5pY2h0IGthcHV0dHp1YmVrb21tZW4sIHNlaW4gTGFldXRlcm4KZ2VmYWVsbHQgbWlyIGltbWVyIGJlc3Nlci4KVmFuaW9uIGtvbW10IGhlcmVpbiB1bmQga2xvcGZ0IHNpY2ggZGVuIFJlaXNlc3RhdWIgYWIuCkFya3NoYXQgaGVpc3N0IFZhbmlvbiBhbHMgcmV1aWdlbiBTdWVuZGVyIHdpbGxrb21tZW4gdW5kIGxhZXV0ZXJ0IHNlaW5lbgpHZWlzdC4KVmFuaW9uIGJlc2Nod29lcnQgZWluZW4gQmxpdHogdm9tIEhpbW1lbC4KQXJrc2hhdCB3aXJkIHp1IGRlbiBHb2V0dGVybiBnZXJ1ZmVuLCBkZW5lbiBlciBkaWVudGUuCkFsa29ob2wgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKQXJrc2hhdCBrb21tdCBhbi4KQXJrc2hhdCBoZWlzc3QgVmFuaW9uIGFscyByZXVpZ2VuIFN1ZW5kZXIgd2lsbGtvbW1lbiB1bmQgbGFldXRlcnQgc2VpbmVuCkdlaXN0LgpNb29uc2hpbmUgaG9mZnQsIGRhcyBWYW5pb24gYmFsZCBoZWlsaWcgaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQXJraS1TcGF0eiEgKFpvb2ssIDIxLiBKdWwgMjAwMywgMTc6MjE6MjApOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTEwNTg4MDA4MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU4ODAwMjQxCk5lZS4uLiB2aWVsIGhhdCBlcyBuaWNodCBnZWJyYWNodC4uLiBWYW5pb24gaXN0IGltbWVyIG5vY2ggc2F0YW5pc2NoIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQXJraS1TcGF0eiEgKE1vb25zaGluZSwgMjEuIEp1bCAyMDAzLCAxNzoyMTo0Nik6Cn4jISBybj1ab29rIHJ0PTEwNTg4MDA4ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU4ODAwMjQxCkVNKyBhYndlcnRlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjExMiBpcyBiYWNrLiAoTWlyYWthLCAyMS4gSnVsIDIwMDMsIDIwOjI0OjMwKToKcnVmZSBmZXVlcndlaHIKRHUgcnVmc3Q6IGZldWVyd2VocgpXb2x0ZXJzIGtvbW10IGFuLgoKTWlyYWthIE1hbmRyb3MsIFRpZ2VyaW4gdm9uIFhpYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogMTEyIGlzIGJhY2suIChab29rLCAyMS4gSnVsIDIwMDMsIDIwOjM5OjI0KToKfiMhIHJuPU1pcmFrYSBydD0xMDU4ODExODcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1ODgxMTg3MApNdXNzIG1hbiBkZW4gdmVyc3RlaGVuPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaGxlY2h0ZXMgR2V3aXNzZW4/IChUd2luZ2ksIDIyLiBKdWwgMjAwMywgMTE6NDk6MzMpOgpEZWluZSBGcmV1bmRpbiBNYWhhcmV0IHZlcmh1bmdlcnQgaW4gZGVyIEZlcm5lLCB3ZWlsIGVpbiBIb2JiaXQgenUgZ2llcmlnIHdhci4KRGVpbiBGcmV1bmQgR3VhcmQgd2lua3QgRGlyIGF1cyBkZXIgRmVybmUgenUuIApHdWFyZCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCkltbWVyIGRpZXNlIEhvYmJpdHMgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYW5uIG5pY2h0IHNlaW4hIChab29rLCAyMi4gSnVsIDIwMDMsIDE0OjE3OjA1KToKW0xpbnV4OkNhZHJhY2hdIG5vY2htYWwgbmUgZnJhZ2Ugdm9uIG5lbSBEQVUuICguLi4pCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRvbGxlciBOYW1lIChHcmltbWJvcm4sIDIyLiBKdWwgMjAwMywgMTU6MzU6MTYpOgp+IyEgb249SHVtbmkgb3Q9MTA1ODg4MDgyNSBvZz13d3cKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEwNTg4ODA3NDYgcmc9d3d3Cn4jISB0aWQ9MTA1ODg4MDc0NgpOYSwgd2VubiBEdSBtaXIgamV0enQgbm9jaCBlcmtsYWVyc3QsIHdhcnVtIGVpbiBIb2NoYmV0dCBzbyBndXQgZGFmdWVyIHNlaW4Kc29sbC4uLi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRvbGxlciBOYW1lIChHcmltbWJvcm4sIDIyLiBKdWwgMjAwMywgMTU6MzU6MTcpOgp+IyEgb249TW9vbnNoaW5lIG90PTEwNTg4ODA4NDQgb2c9d3d3Cn4jISBybj1IdW1uaSBydD0xMDU4ODgwODI1IHJnPXd3dwp+IyEgdGlkPTEwNTg4ODA3NDYKQWJ3ZWNoc2x1bmchIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVG9sbGVyIE5hbWUgKEdyaW1tYm9ybiwgMjIuIEp1bCAyMDAzLCAxNTozNToxOCk6Cn4jISBvbj1IdW1uaSBvdD0xMDU4ODgwODY0IG9nPXd3dwp+IyEgcm49TW9vbnNoaW5lIHJ0PTEwNTg4ODA4NDQgcmc9d3d3Cn4jISB0aWQ9MTA1ODg4MDc0NgogIk9rIHNjaGF0eiwgaGV1dGUgbGllZyBpY2ggYWJlciBtYWwgb2Jlbj8nJwoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRvbGxlciBOYW1lIChHcmltbWJvcm4sIDIyLiBKdWwgMjAwMywgMTU6MzU6MTkpOgp+IyEgb249TW9vbnNoaW5lIG90PTEwNTg4ODA4OTAgb2c9d3d3Cn4jISBybj1IdW1uaSBydD0xMDU4ODgwODY0IHJnPXd3dwp+IyEgdGlkPTEwNTg4ODA3NDYKU3RpbW10IGphLCBkYXMgbmltbXQgZGEgZ2FueiBhbmRlcmUgRGltZW5zaW9uZW4gYW4sIGRpZXNlciBTcHJ1Y2guIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVG9sbGVyIE5hbWUgKEdyaW1tYm9ybiwgMjIuIEp1bCAyMDAzLCAxNTozNjoyNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1ODg4MDkxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTg4ODA3NDYKVW5kIGRhc3MgYXVzZ2VyZWNobmV0IGVpbiBLaW5kZXJiZXR0IGRpZXNlbiBOYW1lbiBoYXQgaGF0IGRvY2ggc2Nob24gRGlldGVyCk51aHIgKGdsYXViZSBpY2gpIHZvciBKYWhyZW4gdmVyd2VuZGV0LCBkYXMgaXN0IHdpcmtsaWNoIG5pY2h0IG5ldS4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBUb2xsZXIgTmFtZSAoR3JpbW1ib3JuLCAyMi4gSnVsIDIwMDMsIDE1OjM3OjE2KToKfiMhIG9uPU1vb25zaGluZSBvdD0xMDU4ODgxMDAyIG9nPXd3dwp+IyEgcm49TW9vbnNoaW5lIHJ0PTEwNTg4ODA4OTAgcmc9d3d3Cn4jISB0aWQ9MTA1ODg4MDc0NgpBY2hqYSwgdG9sbGUgUGZsZWdlaGlud2Vpc2U6CmtlaW4gU2NoZXVlcm1pdHRlbCwgTWl0IHRyb2NrZW5lbSBUdWNoIG5hY2h3aXNjaGVuLgoKTW9vbnNoaW5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVEFVQ0hFTiBJTSBOWU1QSEVOU0VFIChWYXJkaW9uLCAyMy4gSnVsIDIwMDMsIDEwOjUyOjU5KToKfiMhIHJuPVpvb2sgcnQ9MTA1ODk0OTI5NCByZz1wYXJ0eQp+IyEgdGlkPTEwNTg4MTA5NjYKS2VpaGUgQWhudW5nLi4uIGFiZXIgbWl0IG5lciBUYXVjaGF1c3J1ZXN0dW5nIGtsZXR0ZXJuIGlzdCBzb3dpZXNvIGVoZXIKbXVlaHNhbS4KClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaW5lIFNjaG9lbmhlaXQ/IChHcmltbWJvcm4sIDIzLiBKdWwgMjAwMywgMTU6MjI6MjMpOgp+IyEgcm49TW9yZ290aCBydD0xMDU4OTYyMzMyIHJnPXd3dwp+IyEgdGlkPTEwNTg5NjIzMzIKRHUgaGFzdCBhYmVyIGdhbnogc2Nob2VuIGFiZ2Vub21tZW4sIE1vcmdvdGguCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQcm9ncmFtbWllcmVyIG1pdCB6dXZpZWwgWmVpdCAoQW5hdG9sLCAyNC4gSnVsIDIwMDMsIDEwOjU3OjI5KToKfiMhIHJuPUFudGhlYSBydD0xMDU5MDM1OTc3IHJnPXd3dwp+IyEgdGlkPTEwNTkwMzU5NzcKIktlbm5lbiBTaWUgbWVpbmUgRnJldW5kaW4gRWxpemE/IiAtLS0gIk5pY2h0IHBlcnNvZW5saWNoLiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFByb2dyYW1taWVyZXIgbWl0IHp1dmllbCBaZWl0IChBbnRoZWEsIDI0LiBKdWwgMjAwMywgMTA6NTk6NDEpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNTkwMzcwNDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU5MDM1OTc3ClBhaCwgamV0enQgaGFzdCBEdSBzaWUgZXJzY2hyZWNrdCwgamV0enQgaGF0IHNpZSBzaWNoIHp1cnVlY2tnZXpvZ2VuIDooCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBQcm9ncmFtbWllcmVyIG1pdCB6dXZpZWwgWmVpdCAoQW5hdG9sLCAyNC4gSnVsIDIwMDMsIDExOjA1OjI2KToKfiMhIHJuPUFudGhlYSBydD0xMDU5MDM3MTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTAzNTk3Nwoqc2NobmllZiogCgpBYmVyIHN1ZXNzIGdlbWFjaHQsIGdhciBrZWluZSBGcmFnZS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZvcnNjaGVuIC4uLiAoTWFuZHJhZ29uLCAyNC4gSnVsIDIwMDMsIDE0OjE5OjA0KToKfiMhIG9uPU1hbmRyYWdvbiBvdD0xMDU5MDQ5MTEwIG9nPWQuaW5zZWxuCn4jISBybj1Nb3Jnb3RoIHJ0PTEwNTkwNDkwNzggcmc9ZC5pbnNlbG4KfiMhIHRpZD0xMDU5MDQ5MDQ0CkRhcyB3YWVyZSBkaWUgVkxhbmQtVmFyaWFudGUgOy0pCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGb3JzY2hlbiAuLi4gKE1hbmRyYWdvbiwgMjQuIEp1bCAyMDAzLCAxNDoxOToxMCk6Cn4jISBvbj1Nb3Jnb3RoIG90PTEwNTkwNDkwNzggb2c9ZC5pbnNlbG4KfiMhIHJuPU1hbmRyYWdvbiBydD0xMDU5MDQ5MDQ0IHJnPWQuaW5zZWxuCn4jISB0aWQ9MTA1OTA0OTA0NApPaCwgRGV0YWlscyBnZWxvZXNjaHQgdW5kIGRpZSByZXN0bGljaGVuIHNpbmQgRlBzPyAKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogMjQwNzAzIEtBIEtNIChBbnRoZWEsIDI0LiBKdWwgMjAwMywgMTU6NTg6MDIpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNTkwNTUwMzAgcmc9dHJlZmZlbgp+IyEgdGlkPTEwNTkwNTUwMzAKQmV3ZWd1bmdzZmFuYXRpa2VyIGFuIGZyaXNjaGVyIEx1ZnQ/IERpZSBrb2VubmVuIGVjaHRlbiBNdWRkZXJuIGphIG5pY2h0IGluCmRpZSBRdWVyZSBrb21tZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IDI0MDcwMyBLQSBLTSAoR3JpbW1ib3JuLCAyNC4gSnVsIDIwMDMsIDE2OjAxOjE0KToKfiMhIHJuPU11YWRpYiBydD0xMDU5MDU1MTYxIHJnPXRyZWZmZW4KfiMhIHRpZD0xMDU5MDU1MDMwCkRhZ2VnZW4ga2FubiBtYW4gc2ljaCBhYmVyIHNjaHVldHplbi4gRmFociBkZWZlbnNpdiwgZmFociBMZW8gMi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogMjQwNzAzIEtBIEtNIChDcm9mdCwgMjQuIEp1bCAyMDAzLCAxNjowMjozMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1OTA1NTI3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTkwNTUwMzAKT2guIE1hbCB3aWVkZXIgZWluZW4gdWViZXItMjAtamFlaHJpZ2VuIFdpdHogYXVzZ2VncmFiZW4uICBXbyBoYXQKZGVyIHNpY2ggZGVubiB2ZXJzdGVja3Q/ICwtKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IDI0MDcwMyBLQSBLTSAoR3JpbW1ib3JuLCAyNC4gSnVsIDIwMDMsIDE2OjAzOjQwKToKfiMhIHJuPUNyb2Z0IHJ0PTEwNTkwNTUzNTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU5MDU1MDMwCktlaW5lIEFobnVuZywgYWIgdW5kIHp1IGtvbW10IHNvd2FzIGFuIGRpZSBPYmVyZmxhZWNoZS4gRnVlciBkZW4gdGVjaG5pc2NoCkludGVyZXNzaWVydGVuIGhhZXR0ZSBpY2ggZGEgbm9jaCBodHRwOi8vd3d3LndhZmZlbmhxLmRlL3Bhbnplci9sZW9wYXJkMi5odG1sCnp1IGJpZXRlbi4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNb3JnZW5ncmF1ZW4tVmVyZWluIFZvbGx2ZXJzYW1tbHVuZyAoWm9vaywgMjUuIEp1bCAyMDAzLCAxMDo0NToyNyk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA1OTEyMDI1NyByZz1wYXJ0eQp+IyEgdGlkPTEwNTkxMjAyNTcKQWxzbyAiVm9sbHZlcnNhbW1sdW5nIiBob2VydCBzaWNoIGRvY2ggZWluIHdlbmlnIG5hY2ggaWRlYWxpc2llcnRlciBTdHVkaS0Kd2lyLXRyZXRlbi1pbi1TdHJlaWstUmhldG9yaWsgYW4uLi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYXQgZGVyIEtsZWluZSBIdW5nZXI/IChMdWcsIDI1LiBKdWwgMjAwMywgMTU6MjM6NDEpOgoKSG9ibyBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uCkVpbiBIZXVsZW4gZHJpbmd0IHZvbiBkZW4gQmVyZ2VuIGhlciBoaWVyaGVyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIYXQgZGVyIEtsZWluZSBIdW5nZXI/IChIb2JvLCAyNS4gSnVsIDIwMDMsIDE2OjA1OjI5KToKfiMhIHJuPUx1ZyBydD0xMDU5MTM5NDIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTEzOTQyMQpOZWUsIG1vbWVudGFuIGRyaW5ndCBlaGVyIGVpbiBTY2huYXJjaGVuIHZvbiBkZW4gQmVyZ2VuIGhlci4gQWJlciB3ZWhlLCB3ZW5uCmVyIHdhY2ggZ2V3b3JkZW4uLi4KCiAgIEhvYm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB3YXMgZmFlbGx0IGF1Zj8gOikgKEVsaXphYmV0aCwgMjUuIEp1bCAyMDAzLCAyMjowMjozMCk6Cn4jISBybj1HYXN0MSBydD0xMDU5MTYyOTcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTE2Mjk3MQp3aWUgd2FyIGRhcy4uZ2Flc3RlIHBvc3RlbiBuaWNodD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBkZXIgd29obCBlcndhcnRldD8gKE5lZGltZSwgMjcuIEp1bCAyMDAzLCAxNTo1Mjo0Myk6CkR1IGRlY2tzdCBUdXRzenQgbWl0IERlaW5lciBkaWNrZW4sIHB1c2NoZWxpZ2VuIERlY2tlIHNhbmZ0IHp1LgpUdXRzenQgc2NoYXV0IERpY2ggbnVuIGF1ZiBlaW5lIEd1dGUtTmFjaHQtR2VzY2hpY2h0ZSBob2ZmZW5kLCBtaXQgZ3Jvc3NlbgpBdWdlbiBlcndhcnR1bmdzdm9sbCBhbi4KCk5lZGltZSwgYml0dGV0IHVtIFZvcnNjaGxhZWdlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcyBkZXIgd29obCBlcndhcnRldD8gKEVsaXphYmV0aCwgMjcuIEp1bCAyMDAzLCAxNTo1NTozMyk6Cn4jISBybj1OZWRpbWUgcnQ9MTA1OTMxMzk2MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTkzMTM5NjMKamV0enQga29tbXQgYmVzdGltbXQgdm9uIGh1bW5pIHdpZWRlciBlaW5lIGdhYWFueiBsYW5nZSBnZXNjaGljaHRlICEKOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAhIT8gKE1vcmdvdGgsIDI4LiBKdWwgMjAwMywgMDA6MzQ6MDIpOgpEZWluZSBGcmV1bmRpbiBMZWliaSB0ZWlsdCBEaXIgbWl0OiBpY2ggZ2xhdWIgaWNoIHNvbGx0ZSBkZW4gcmVjaG5lciBkb2NoIG1hbApEZWluZSBGcmV1bmRpbiBMZWliaSB0ZWlsdCBEaXIgbWl0OiBuZXUgc3RhcnRlbgpEZWluZSBGcmV1bmRpbiBMZWliaSB0ZWlsdCBEaXIgbWl0OiBiaXMgZ2xldWljaApMZWliaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCk0qIHdhcnRldCBnZXNwYW5udAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEYXMgRHVua2VsZWxmZW5hbXVsZXR0IChPZ28sIDI5LiBKdWwgMjAwMywgMTE6NTU6MjApOgp+IyEgb249T2dvIG90PTEwNTk0NzI0ODQgb2c9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgcm49QW5hdG9sIHJ0PTEwNTk0NjkwODcgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTEwNTk0MjYzNjMKU2VpdCB3aWV2aWVsZW4gSmFocmVuIGxpZWd0IGRpZXNlciBBcnRpa2VsIGluIGRlciBTY2h1YmxhZGU/IDs+CgpPZ28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERhcyBEdW5rZWxlbGZlbmFtdWxldHQgKEFuYXRvbCwgMjkuIEp1bCAyMDAzLCAxMTo1Njo0OCk6Cn4jISBybj1PZ28gcnQ9MTA1OTQ3MjUyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTk0MjYzNjMKRGVyIEFydGlrZWwgaXN0IHBvc3RmcmlzY2gsIGRpZSBBcmd1bWVudGUgYWxsZXJkaW5ncyBsaWVnZW4gbmF0dWVybGljaApzY2hvbiBzZWl0IEphaHJlbiBpbiBkZXIgU2NodWJsYWRlIGJ6dy4gYXVmIGRlciBIYW5kLi4uCgpBKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGFzIER1bmtlbGVsZmVuYW11bGV0dCAoR3JpbW1ib3JuLCAyOS4gSnVsIDIwMDMsIDEyOjAxOjIyKToKfiMhIHJuPUFuYXRvbCBydD0xMDU5NDcyNjA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTQyNjM2MwpBbHNvLCBFbGZlbiwgRHVua2VsZWxmZW4gLSBpY2ggc2VoIGRhIG51biBiZWltIGJlc3RlbiBXaWxsZW4ga2VpbmVuClVudGVyc2NoaWVkLiBTY2h3dWxlIEJhZXVtZWZpY2tlciBzaW5kIHNjaHd1bGUgQmFldW1lZmlja2VyLCBpY2ggZGlza3JpbWluaWVyZQpkYSBuaWNodCBuYWNoIEZhcmJlLiBQcmluemlwaWVsbCB3dWVyZGUgZWluIFZlcmJhbm5lbiBkaWVzZXIgIlJhc3NlIiBkZW0gTUcKZXh0cmVtIGd1dCB0dW4sIHZpZWwgQWVyZ2VyIGVyc3BhcmVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEYXMgRHVua2VsZWxmZW5hbXVsZXR0IChLYXJpcywgMjkuIEp1bCAyMDAzLCAxMjoxOTozNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1OTQ3Mjg4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTk0MjYzNjMKV2FzIHJlZGV0IGlociBkYSBpbW1lciB2b24gJ1Jhc3NlJyA/PyBXYXIgZGFzIG51IG5lIEdpbGRlIG9kZXIgd2FzPwpNdXNzIGljaCBqZXR6dCBkYSBlcnN0IER1bmtlbGVsZiB3ZXJkZW4sIHVtIGluIGRpZSBHaWxkZSBlaW50cmV0ZW4genUga29lbm5lbj8KTmljaHQ/IE9kZXIgbXVzcyBpY2ggZXJzdCBpcmdlbmR3byBkYXMgCidzY2h3dWxlLUJhZXVtZWZpY2tlcl9hdHRlc3QnIGJlc29yZ2VuIChNaW5pcXVlc3Q/PyApCgpJc3QgZGFzIGFtIEVuZGUgZG9jaCBhbGxlcyBudXIgZWluIFNwaWVsPz8KCldBQUFoYWFhYWEhCkthcmlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERhcyBEdW5rZWxlbGZlbmFtdWxldHQgKEdyaW1tYm9ybiwgMjkuIEp1bCAyMDAzLCAxMjozNToxNCk6Cn4jISBvbj1MdWcgb3Q9MTA1OTQ3NDA0NyBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISBybj1BbmF0b2wgcnQ9MTA1OTQ2OTA4NyByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9MTA1OTQyNjM2MwpBbmF0b2w/IExvZXNjaCBEaWNoIQpNdXNzdGUgZ2VzYWd0IHdlcmRlbi4uLgpMLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGFzIER1bmtlbGVsZmVuYW11bGV0dCAoTXVhZGliLCAyOS4gSnVsIDIwMDMsIDEzOjA1OjAxKToKfiMhIG9uPU1vbnRhbnVzIG90PTEwNTk0NzY0OTMgb2c9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgcm49THVnIHJ0PTEwNTk0NzQwNDcgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTEwNTk0MjYzNjMKRGFzIHBhc3N0IGRvY2ggaGVydm9ycmFnZW5kIHp1bSBQYWRyZWljcyBMaWNodHN5c3RlbTogdGFnc3VlYmVyIEVsZmVuLCBOYWNodHMKRHVua2VsZWxmZW4uCkdpYnQgZXMgZGFubiBiYWxkIGF1Y2ggRHVua2VsendlcmdlIChha2EgSGVpbnplbG1hZW5uY2hlbiwgRHVua2VsaG9iYml0cyAoYWthCkdvbGx1bSkgdW5kIER1bmtlbG1lbnNjaGVuIChTYXJvdHRpLUthZW1wZmVyKT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERhcyBEdW5rZWxlbGZlbmFtdWxldHQgKE11YWRpYiwgMjkuIEp1bCAyMDAzLCAxMzowNToxNSk6Cn4jISBvbj1NYW5kcmFnb24gb3Q9MTA1OTQ3NjY1NSBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISBybj1Nb250YW51cyBydD0xMDU5NDc2NDkzIHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD0xMDU5NDI2MzYzCkR1bmtlbHp3ZXJnZSBnaWJ0cyBkb2NoIHNjaG9uIC4uLgoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEYXMgRHVua2VsZWxmZW5hbXVsZXR0IChCYW1idWxrbywgMjkuIEp1bCAyMDAzLCAxNDoyMjoyMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA1OTQ3Mjg4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNTk0MjYzNjMKRGFzIGhpZXIgaXN0IGdlbmF1IGRhcyByaWNodGlnZSBmdWVyIEVsZmVuOgpodHRwOi8vd3d3LmxhY2hzY2hvbi5kZS9zbGlkZS5waHA/aWQ9NDg4MgoKRGFzIGhpZXIgaXN0IGZ1ZXIgc2Nod3VsZSBFbGZlbjoKCmh0dHA6Ly93d3cubGFjaHNjaG9uLmRlL3NsaWRlLnBocD9pZD0xMTk0CgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGFzIER1bmtlbGVsZmVuYW11bGV0dCAoWm9vaywgMjkuIEp1bCAyMDAzLCAxOTo1NDo0MCk6Cn4jISBybj1PZ28gcnQ9MTA1OTQ5OTgwNCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA1OTQyNjM2MwpOYSwgbWFsIHNlaGVuLCBvYiBzaWNoIEFuYXRvbCBub2NoIGF1cyBzZWluZW0gU2VoZXJoYXVzIGhlcmF1cyB0cmF1dC4uLi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEYXMgRHVua2VsZWxmZW5hbXVsZXR0IChQYXRyeW4sIDI5LiBKdWwgMjAwMywgMjA6MzY6MTIpOgp+IyEgcm49TXVhZGliIHJ0PTEwNTk0NzY3MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU5NDI2MzYzCkdlbmF1LCBnZW1hZXNzIFBhZHJlaWNzIExpY2h0c3lzdGVtIHNpbmQgRWxmZW4gdW5kIER1bmtlbGVsZmVuIGVoCnVudW50ZXJzY2hlaWRiYXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUZXN0ISAoWm9vaywgMzAuIEp1bCAyMDAzLCAxMDozMjo0OCk6Clpvb2sgc3RyZWNrdCBSaWt1cyBkaWUgWnVuZ2UgcmF1cy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERhcyBEdW5rZWxlbGZlbmFtdWxldHQgKFpvb2ssIDMwLiBKdWwgMjAwMywgMTA6Mzc6MjQpOgp+IyEgcm49QmFtYmkgcnQ9MTA1OTU1Mzg2NCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA1OTQyNjM2MwpXb2hlciB3ZWlzc3QgRHUsIGRhc3MgRHUgbmljaHQgYm9ybmllcnQgYmlzdD8gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEYXMgRHVua2VsZWxmZW5hbXVsZXR0IChHcmltbWJvcm4sIDMwLiBKdWwgMjAwMywgMTA6Mzg6MDQpOgp+IyEgcm49Wm9vayBydD0xMDU5NTU0MjQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTQyNjM2MwpHdXRlIEZyYWdlLiBLYXVtIHZvcnN0ZWxsYmFyIGRhc3MgZXJzIHZvbiBqZW1hbmQgYW5kZXJlbSBnZWhvZXJ0IGhhZXR0ZS4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEYXMgRHVua2VsZWxmZW5hbXVsZXR0IChab29rLCAzMC4gSnVsIDIwMDMsIDExOjQ3OjA2KToKfiMhIG9uPUFtYXpvcmEgb3Q9MTA1OTU1ODM2NiBvZz1kaXNrdXNzaW9uCn4jISBybj1Nb250YW51cyBydD0xMDU5NTUwNzAzIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDU5NDI2MzYzCndhcyBpc3QgbWl0IGRlbiBhbHRiaWVydHJpbmtlcm4/Cm9rIG9rLCBhYiBuYWNoIHNjaG1hcnJuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRGFzIER1bmtlbGVsZmVuYW11bGV0dCAoWm9vaywgMzAuIEp1bCAyMDAzLCAxMjowOToxMCk6Cn4jISBybj1BcmsgcnQ9MTA1OTU1OTQ1NyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA1OTQyNjM2MwpWb3JhdXNnZXNldHp0LCBhbGxlIEJldGVpbGlndGVuIHNwaWVsZW4gbm9jaCBpbiBlaW5pZ2VuIE1vbmF0ZW4gbWl0Li4uIDspCgpab29rIHNpZWh0IEFyYmVpdCBhdWYgZGVuIFNoZXJpZmYgenVrb21tZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEYXMgRHVua2VsZWxmZW5hbXVsZXR0IChBbmF0b2wsIDMwLiBKdWwgMjAwMywgMTI6Mjk6MzQpOgp+IyEgcm49QXJrIHJ0PTEwNTk1NTk0NTcgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNTk0MjYzNjMKTWFnaWVydmVydHJhZz8gRHUgbWVpbnN0LCB3ZW5uIGljaCBNYWdpZXIgd2VyZGUsIGRhcmYgaWNoIGRpZSBEdW5rZWxlbGZlbgphbHMgU3BpZWxlcnJhc3NlIGZ1ZXIgaW1tZXIgYWJoYWVuZ2VuIGxhc3Nlbj8gSGFiIGljaCBkYSBEZWluIFdvcnQgZHJhdWY/CgpBbmF0b2wgZGVua3QgdWViZXIgT3BmZXJiZXJlaXRzY2hhZnQgbmFjaCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IERhcyBEdW5rZWxlbGZlbmFtdWxldHQgKEFtYXpvcmEsIDMwLiBKdWwgMjAwMywgMTI6MzE6NDIpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNTk1NjA5NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU5NDI2MzYzCndlbm4gZHUgZ290dCB3aXJzdCBzY2hvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBTdHJhc3NlbnNjaGFlZGVuIChBbmF0b2wsIDMwLiBKdWwgMjAwMywgMTM6Mzk6MjQpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNTk1NjUxMzQgcmc9ZC5lYmVuZQp+IyEgdGlkPTEwNTk1NjUxMzQKQWJlciBkaWUgUnVpbmUgaXN0IG5vY2ggaW1tZXIgZWluZSBSdWluZT8gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERpZSBTdHJhc3NlbnNjaGFlZGVuIChNYW5kcmFnb24sIDMwLiBKdWwgMjAwMywgMTM6NDI6NDMpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNTk1NjUxNjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU5NTY1MTM0CgpJbiBkZW0gRmFsbCBzY2hvbiAuLi4gaGFiIGphIGtlaW5lIFNjaHJlaWJyZWNodGUuCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERpZSBTdHJhc3NlbnNjaGFlZGVuIChab29rLCAzMC4gSnVsIDIwMDMsIDEzOjQyOjU5KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDU5NTY1MzYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTU2NTEzNApXaWxsc3RlIHdlbGNoZT8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEaWUgU3RyYXNzZW5zY2hhZWRlbiAoTWFuZHJhZ29uLCAzMC4gSnVsIDIwMDMsIDEzOjQzOjMxKToKfiMhIHJuPVpvb2sgcnQ9MTA1OTU2NTM3OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTk1NjUxMzQKCkxpZWJlciBuaWNodC4gTnl4IHd1ZXJkZSBtaWNoIHRvZXRlbiwgbmVobWUgaWNoIGFuIDstKQoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEaWUgU3RyYXNzZW5zY2hhZWRlbiAoWm9vaywgMzAuIEp1bCAyMDAzLCAxMzo0NDowNyk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTA1OTU2NTQxMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTk1NjUxMzQKVm9yc2NobGFlZ2UsIHdpZSBpY2ggbnVuIHdlaXRlciBtaXQgTWFuZHJhZ29ucyBTY2hyZWlicmVjaHRlbiB2ZXJmYWhyZW4gc29sbD8KCgpab29rIGlzdCBpbiBlaW5lbSBFbnRzY2hlaWR1bmdzZGlsZW1tYS4gOykpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEaWUgU3RyYXNzZW5zY2hhZWRlbiAoR3JpbW1ib3JuLCAzMC4gSnVsIDIwMDMsIDEzOjU0OjIzKToKfiMhIHJuPVpvb2sgcnQ9MTA1OTU2NTQ0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNTk1NjUxMzQKR2liIGlobSBTY2hyZWlicmVjaHRlLCBkYW5uIGd1Y2tlbiB3aXIgTnl4IGRhYmVpIHp1IHdpZSBlciB2ZXJ6d2VpZmVsdCBiZWkgZGVtClZlcnN1Y2gsIGVpbmVuIE1hZ2llciB3aXJrdW5nc3ZvbGwgenUgdG9ldGVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBEaWUgU3RyYXNzZW5zY2hhZWRlbiAoQW5hdG9sLCAzMC4gSnVsIDIwMDMsIDEzOjU0OjQwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDU5NTY2MDYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTU2NTEzNApBZWhtLgoKR3JpbW1pPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IERpZSBTdHJhc3NlbnNjaGFlZGVuIChab29rLCAzMC4gSnVsIDIwMDMsIDEzOjU1OjI2KToKfiMhIHJuPUFuYXRvbCBydD0xMDU5NTY2MDgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTU2NTEzNApFciBpc3QgdWViZXJhcmJlaXRldCwgQW5hdG9sLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IERpZSBTdHJhc3NlbnNjaGFlZGVuIChBbmF0b2wsIDMwLiBKdWwgMjAwMywgMTM6NTc6MzApOgp+IyEgcm49Wm9vayBydD0xMDU5NTY2MTI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTU2NTEzNApTaWVodCBzbyBhdXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEYXMgRHVua2VsZWxmZW5hbXVsZXR0IChBcmssIDMwLiBKdWwgMjAwMywgMTQ6MDA6NTApOgp+IyEgcm49QW5hdG9sIHJ0PTEwNTk1NjA5NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU5NDI2MzYzCkR1IGthbm5zdCBzaWUgZ2VybmUgYWJoYWVuZ2VuLCB3ZW5uIER1IHNvd2VpdCBrb21tc3QuIEljaCBlcmlubmVyZSBkYW5uIGFiZXIKZ2xlaWNoIGFuIGVpbiBCZWlzcGllbCBlaW5lcyBuaWNodCBuYWVoZXIgZ2VuYW5udGVuIE1hZ2llcnMsIGRlciBlaWdlbmVuIENvZGUKYWJoYWVuZ2VuIHdvbGx0ZS4gU292aWVsIGRhenUsIHdpZSBtZWluIFdvcnQgaW4gZGllc2VtIEZhbGwgemFlaGxlbiB3dWVyZGUgOi0pCkV0d2FzIGVybnN0aGFmdGVyIGhlaXNzdCBkYXMsIGRhc3MgRHUgYWxzIE1hZ2llciB3ZXNlbnRsaWNoIHp1ciBWZXJiZXNzZXJ1bmcKZGVzIE11ZHMgKGluY2wuIFJhc3NlbiwgR2lsZGVuLCBldGMuKSBiZWl0cmFnZW4gZGFyZnN0LiBaZWl0d2Vpc2VzIEFiaGFlbmdlbgprYW5uIHp1ciBCdWdiZWhlYnVuZyBkYXp1Z2Vob2VyZW4uCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRGFzIER1bmtlbGVsZmVuYW11bGV0dCAoWm9vaywgMzAuIEp1bCAyMDAzLCAxNDowMjo0MCk6Cn4jISBybj1BcmsgcnQ9MTA1OTU2NjQ1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTk0MjYzNjMKTnVuIHd1ZXJkZSBBbmF0b2wgc2ljaGVybGljaCBmcmFnZW4sIG9iICJuaWNodCBwZXJmb3JtYW50ZXIgQ29kZSIgYXVjaCBhbHMKQnVnIHphZWhsdC4gOykKClpvb2sgdmVybWlzY2h0IFRocmVhZHMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBEYXMgRHVua2VsZWxmZW5hbXVsZXR0IChBbmF0b2wsIDMwLiBKdWwgMjAwMywgMTQ6MDM6NDIpOgp+IyEgcm49Wm9vayBydD0xMDU5NTY2NTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTQyNjM2MwpEdSB2ZXJtaXNjaHN0IG5pY2h0IFRocmVhZHMsIER1IHZlcm1pc2Noc3QgUGVyc29lbmxpY2hrZWl0ZW4uICpLTlVSUlJSUiogOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBEYXMgRHVua2VsZWxmZW5hbXVsZXR0IChab29rLCAzMC4gSnVsIDIwMDMsIDE0OjA0OjAwKToKfiMhIHJuPUFuYXRvbCBydD0xMDU5NTY2NjIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTQyNjM2MwpfRkFMU0NIXyEgCgpab29rIFNDTlIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogRGFzIER1bmtlbGVsZmVuYW11bGV0dCAoQmFtYnVsa28sIDMwLiBKdWwgMjAwMywgMTQ6MTk6NTYpOgp+IyEgcm49TGl0dGxlbmFraSBydD0xMDU5NTY2OTk3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDU5NDI2MzYzCmNJaCBrQW5uIGRpciBudXIgenVzdEltbWVuLiBDaWggZmluRGUgZXMgYXVjaCBuY2lodCBvSy4KCkJhbWJ1S28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBEYXMgRHVua2VsZWxmZW5hbXVsZXR0IChTY2hva28sIDMwLiBKdWwgMjAwMywgMTQ6MjU6MDQpOgp+IyEgcm49TGl0dGxlbmFraSBydD0xMDU5NTY2OTk3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDU5NDI2MzYzCgpFeSwgd2VoZSBEdSBzYWdzdCB3YXMgZ2VnZW4gSG9iYml0cyB1bmQgS2FlbXBmZXIuIEljaCBnbGF1YiBlcyBoYWt0IQoKU2Nob2tvCgpQLlMuOiBHbGVpc2NoIGhvbCBpc2NoIG1laW5lIEJydWVkZGVyIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IERhcyBEdW5rZWxlbGZlbmFtdWxldHQgKFpvb2ssIDMwLiBKdWwgMjAwMywgMTQ6MjY6MTgpOgp+IyEgcm49U2Nob2tvIHJ0PTEwNTk1Njc5MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU5NDI2MzYzCldlbm4gZGFzIGF1Y2ggc28gRmVsbGJ1ZW5kZWwgc2luZCwgbmEgZGFubiBndXRlIE5hY2h0IQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBEYXMgRHVua2VsZWxmZW5hbXVsZXR0IChTY2hva28sIDMwLiBKdWwgMjAwMywgMTQ6Mjk6MzYpOgp+IyEgcm49Wm9vayBydD0xMDU5NTY3OTc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTQyNjM2MwpGRUxMQlVlTkRFTCEgV2FhYWFhaCwgaWNoIGdlcmF0ZSBnbGVpY2ggaW4gSG9iYml0a2FtcGZyYXVzY2guIERpZSBhZXVzc2Vyc3QKYXR0cmFrdGl2ZSB1bmQgZ3V0IGdlcGZsZWd0ZSBIYWFycHJhY2h0IGFuIG1laW5lbiB6aWVybGljaGVuIEZ1ZXNzY2hlbiBpc3QgZGVyCmdhbnplIFN0b2x6IG1laW5lciBNdWQtRXhpc3RlbnouIEFuc29uc3RlbiBiZXNpdHplIGljaCBrZWluZXJsZWkgbmVubmVuc3dlcnRlCktvZXJwZXJiZWhhYXJ1bmcuIEdhbnogaW0gR2VnZW5zYXR6IHp1IGRpZXNlbiBmZWxsYmVkZWNrdGVuIFp3ZXJnZW4tU3Rpbmtlcm4uCgpEYW1pdCBkYXMgbWFsIGtsYXIgaXN0LiBVbmQgd2VubiBpY2ggbWVpbmUgQnJ1ZWRkZXIgaG9sZSwgZGFubiBoYXN0IER1ICduCmVjaHRlcyBQcm9ibGVtIGV5LCBkYXMgc2FnIGljaCBEaXIgYWJlci4gT2RlciBtZWluc3QgRHUsIER1IGtyaWVnc3QgZGFubiBkaWUKbmFlY2hzdGVuIEphaHJlIHVlYmVyIG5vY2ggd2FzIHp1IEVzc2VuPwoKU2Nob2tvIChzdG9semVyIEhvYmJpdCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBEYXMgRHVua2VsZWxmZW5hbXVsZXR0IChab29rLCAzMC4gSnVsIDIwMDMsIDE0OjM3OjA4KToKfiMhIHJuPVNjaG9rbyBydD0xMDU5NTY4MTc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTQyNjM2MwpOZSwgaXMga2xhci4gV2VubiBkaWUgcGFhciB1bmdlcGZsZWd0ZW4gSGFhcmUgRGVpbiBfZ2FuemVyXyBTdG9seiBzaW5kLCBoYWJlCmljaCBhdWNoIGtlaW5lIHdlaXRlcmVuIEZyYWdlbi4uLi4KCgpab29rLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIb2VydCBIb2VydCAuLi4gKEdyaW1tYm9ybiwgMzAuIEp1bCAyMDAzLCAxNjoyNTo1OCk6Cn4jISBybj1BcmsgcnQ9MTA1OTU3NDE0NSByZz1rdWx0dXIKfiMhIHRpZD0xMDU5NTc0MTQ1CkR1IG11ZGRlc3QgYXVzIGRlbSBBdXRvIHJhdXM/IFJlc3Bla3QuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IERhcyBEdW5rZWxlbGZlbmFtdWxldHQgKEJhbWJ1bGtvLCAzMS4gSnVsIDIwMDMsIDExOjMxOjU5KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNTk2NDM2MTUgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNTk0MjYzNjMKWm9vayBhbmJldGVuPyBTb3dhcyBoYXQgZXMgaW4gbWVpbmVyIEp1Z2VuZCBuaWNodCBnZWdlYmVuLiBXaXIgaGFiZW4gbm9jaApmbGVpc3NpZyBCb2luZyBhbmdlYmV0ZXQuIEltbWVyIGRpZXNlIG5ldW1vZGlzY2hlbiBSZWxpZ2lvbmVuIHVuZCBTZWt0ZW4sIHBhaC4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBEYXMgRHVua2VsZWxmZW5hbXVsZXR0IChHcmltbWJvcm4sIDMxLiBKdWwgMjAwMywgMTI6MjM6MDEpOgp+IyEgb249TW9udGFudXMgb3Q9MTA1OTY0MzYxNSBvZz1kaXNrdXNzaW9uCn4jISBybj1BbmF0b2wgcnQ9MTA1OTY0MTgyNSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA1OTQyNjM2MwpXaWUsIER1bmtlbGVsZmVuIHZlcmVocmVuIGVpbmVuIFNwaW5uZW5nb3R0PwpUdXQgbWlyIGxlaWQsIGFiZXIgd2VyIG5pY2h0IFpvb2ssIFJ1bXRhdGEgb2RlciBKb2YgYW5iZXRldCwgZ2Vob2VydCBlaW5kZXV0aWcKYWJnZWhhZW5ndC4KKG9kZXIgaXN0IERyLiBab29rIHBsb2V0emxpY2ggenVyIFNwaW5uZSBtdXRpZXJ0PykKKHVuZCBpc3QgZXIgZGFubiBpbW1lciBub2NoIGxpZWIgdW5kIG5ldHQ/KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRGFzIER1bmtlbGVsZmVuYW11bGV0dCAoR3JpbW1ib3JuLCAzMS4gSnVsIDIwMDMsIDEyOjI1OjAxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDU5NjQ2OTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTQyNjM2MwpNaWNoIGhhZW5ndCBuaWVtYW5kIGFiLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEaWUgU3RyYXNzZW5zY2hhZWRlbiAoTnl4LCAgMi4gQXVnIDIwMDMsIDIzOjQxOjQzKToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDU5NTY1NDExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTU2NTEzNApOaWVtYWxzIG5pY2h0ICpzY2h3b2VyKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IERpZSBTdHJhc3NlbnNjaGFlZGVuIChOeXgsICAyLiBBdWcgMjAwMywgMjM6NDI6NTkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNTk1NjYwNjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU5NTY1MTM0CkFjaCwgR3JpbW1ib3JuLiBKZXR6dCBtYWNoc3QgRHUgbWljaCBhdWNoIG5vY2ggenVtIE1hbm4uIEFiZXIgYmVpIERpcgp1ZWJlcnJhc2NodCBtaWNoIGVpZ2VudGxpY2ggZ2FyIG5pY2h0cyBtZWhyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBEaWUgU3RyYXNzZW5zY2hhZWRlbiAoR3JpbW1ib3JuLCAgMy4gQXVnIDIwMDMsIDAwOjE2OjM2KToKfiMhIHJuPU55eCBydD0xMDU5ODYwNTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTU2NTEzNApIbW0/IEJla2FubnRsaWNoIGdpYnRzIGhpZXIga2VpbmUgRnJhdWVuLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBhcnR5cnVicmlrLiAoQ2F0d2VhemxlLCAgMy4gQXVnIDIwMDMsIDIxOjM5OjUwKToKfiMhIHJuPVpvb2sgcnQ9MTA1OTkzOTU0OCByZz1wYXJ0eQp+IyEgdGlkPTEwNTk5Mzk1NDgKV2FzIGhhYiBpY2ggamV0enQgc2Nob24gd2llZGVyIGZhbHNjaCBnZW1hY2h0PwoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBhcnR5cnVicmlrLiAoWm9vaywgIDMuIEF1ZyAyMDAzLCAyMTo0MzozMik6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA1OTkzOTU5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNTk5Mzk1NDgKTm9jaCBuaWNodHMgOykKClpvb2sga2ljaGVydCB2b3Igc2ljaCBoaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYXJ0eXJ1YnJpay4gKFpvb2ssICAzLiBBdWcgMjAwMywgMjE6NDQ6MjgpOgp+IyEgb249Wm9vayBvdD0xMDU5OTM5NTQ4IG9nPXBhcnR5Clpvb2sgc2Nod2luZ3QgbWl0IGVpbmVtIE51ZGVsaG9seiB2b3IgQ2F0dHlzIEdlc2ljaHQgaGVydW0uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBQYXJ0eXJ1YnJpay4gKENhdHdlYXpsZSwgIDMuIEF1ZyAyMDAzLCAyMTo0NTowMik6Cn4jISBybj1ab29rIHJ0PTEwNTk5Mzk4MTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDU5OTM5NTQ4Ck5hLCBkYW5uIHdvbGxlbiB3aXIgbWFsIDopCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhcnR5Z2VydWVjaHRlIChCaXJkeSwgIDMuIEF1ZyAyMDAzLCAyMjoyMDoyMSk6Ck1hZW5ubGljaGVyIE11ZGRlciAoTmFtZSBmYXN0IGFsbGVuIGFuZGVyZW4gbWFlbm5saWNoZW4gTXVkZGVybiBiZWthbm50KQplcnphZWhsdDoiSWNoIGhhYmUgRWxiaSB6dW0gTWFubiBnZW1hY2h0ISIKCkJpcmR5LCBncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKMyBzZWt1ZGVuIChHbm9tZSwgIDMuIEF1ZyAyMDAzLCAyMjoyMDo1OSk6ClBpdGZhbGwgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbmUgRnJldW5kaW4gTWFoYXJldCB0ZWlsdCBEaXIgbWl0OiBTY2hhdHohCkRlaW4gRnJldW5kIFBpdGZhbGwgdGVpbHQgRGlyIG1pdDogYnJiIDo+ClBpdGZhbGwgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGFydHlnZXJ1ZWNodGUgKEFsa29ob2wsICAzLiBBdWcgMjAwMywgMjM6MDI6MTcpOgp+IyEgcm49QmlyZHkgcnQ9MTA1OTk0MjAyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNTk5NDIwMjEKd2VyIGhhdCBkYXMgZ2VzYWd0PwoKQWxrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRWIHZzLiBXYXNjaG1hc2NoaW5lIChHcmltbWJvcm4sICA0LiBBdWcgMjAwMywgMTY6NDY6MDUpOgp+IyEgcm49QW50aGVhIHJ0PTEwNjAwMDgzMDUgcmc9d2l0emUKfiMhIHRpZD0xMDYwMDA4MjY2CmFsdGVyIFdpdHogIT0gQW50aXdpdHoKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLbGFzc2UgUGFydHkgLi4uIGFiZXIgLi4uLiAoQW1hcnlsbGlzLCAgNC4gQXVnIDIwMDMsIDE5OjQ0OjEwKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwNjAwMTg4MjQgcmc9cGFydHkKfiMhIHRpZD0xMDYwMDA1NTI1Cj5JcmdlbmR3aWUgc2VpZCBpaHIgYWxsZSBmdWVyIE11ZGRlciB2ZXJkYW1tdCBsZXNlcmVzaXN0ZW50LgoKTmFqYSwgZGVyIFN0YW5kYXJkbXVkZGVyIHNpZWh0IGphIG51ciBub2NoICJQdWx2ZXIiLCAiQnJlaSIsICJLcmFjaGVuCmJyZWNoZW5kZXIgS25vY2hlbiIgdS5hZS4gQnV6endvcmRzIC0gdW5kIGRpZXNlIHNjaG9lbiBnZSJoaWdobGlnaHRlZCIuLi4KCkRhIGthbm4gc28gZWluIFd1cm0gc2Nob25tYWwgdW50ZXJnZWhlbi4uLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS2xhc3NlIFBhcnR5IC4uLiBhYmVyIC4uLi4gKFpvb2ssICA0LiBBdWcgMjAwMywgMjA6MjE6MTEpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwNjAwMTkwNTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMDA1NTI1ClN0aW1tdC4gSWNoIGhhYiBzZWluZXJ6ZWl0ICJraXR6ZWx0IiBhdWNoIGltbWVyIHJhdXNnZWdhZ3QgOykKClpvb2suIwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS2xhc3NlIFBhcnR5IC4uLiBhYmVyIC4uLi4gKE1vb25zaGluZSwgIDQuIEF1ZyAyMDAzLCAyMDoyMzo1Mik6Cn4jISBybj1ab29rIHJ0PTEwNjAwMjEyNzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMDA1NTI1CkhhdHRlc3QgRHUgZGFubiBub2NoIHdhcyBnZXNlaGVuIGF1c3NlciBlaW5lbSBkdW5rbGVuIEJpbGRzY2hpcm0/IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogS2xhc3NlIFBhcnR5IC4uLiBhYmVyIC4uLi4gKFpvb2ssICA0LiBBdWcgMjAwMywgMjA6MjQ6MTcpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTEwNjAwMjE0MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMDA1NTI1CktsYXIsIG1laW4gcHVsdmVyaXNpZXJlbiA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEtsYXNzZSBQYXJ0eSAuLi4gYWJlciAuLi4uIChNb29uc2hpbmUsICA0LiBBdWcgMjAwMywgMjA6MjQ6MzUpOgp+IyEgcm49Wm9vayBydD0xMDYwMDIxNDU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDAwNTUyNQpBYndlcnRlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEtsYXNzZSBQYXJ0eSAuLi4gYWJlciAuLi4uIChWYW5pb24sICA0LiBBdWcgMjAwMywgMjA6MjU6NDgpOgp+IyEgcm49Wm9vayBydD0xMDYwMDIxMjcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDAwNTUyNQpHbmEsIGljaCB3dXJkZSB2b24gbWVpbmVtIFBoeXNpb3RoZXJhcGV1dGVuIHp1bSBBcnp0IGdlamFndC4gSWNoIHdhciBkYSBuaWNoCmZyZWl3aWxsaWcuIEljaCBoYXR0ZSBkYXMgc2Nob24gZ2VsZXNlbiwgYWJlciBpY2ggaGFiIHdvaGwgPjEwMCBkaWVzZXIgRGluZ2VyCi4uIDovIAoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEtsYXNzZSBQYXJ0eSAuLi4gYWJlciAuLi4uIChNYWhhcmV0LCAgNC4gQXVnIDIwMDMsIDIwOjI3OjE2KToKfiMhIHJuPVpvb2sgcnQ9MTA2MDAyMTQ1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAwMDU1MjUKTWFoYXJldCBraXR6ZWx0IFpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBLbGFzc2UgUGFydHkgLi4uIGFiZXIgLi4uLiAoTW9vbnNoaW5lLCAgNC4gQXVnIDIwMDMsIDIwOjI3OjU4KToKfiMhIHJuPU1haGFyZXQgcnQ9MTA2MDAyMTYzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAwMDU1MjUKTWFoYSwgZGFzIHNpZWh0IGVyIGpldHp0IGRvY2ggbmljaHQuIDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogS2xhc3NlIFBhcnR5IC4uLiBhYmVyIC4uLi4gKE1haGFyZXQsICA0LiBBdWcgMjAwMywgMjA6NTM6MTkpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTEwNjAwMjE2Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMDA1NTI1Ck1haGFyZXQgcHVsdmVyaXNpZXJ0IFpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBLbGFzc2UgUGFydHkgLi4uIGFiZXIgLi4uLiAoTW9vbnNoaW5lLCAgNC4gQXVnIDIwMDMsIDIwOjUzOjQ3KToKfiMhIHJuPU1haGFyZXQgcnQ9MTA2MDAyMzE5OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAwMDU1MjUKUEshCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogS2xhc3NlIFBhcnR5IC4uLiBhYmVyIC4uLi4gKFpvb2ssICA0LiBBdWcgMjAwMywgMjA6NTQ6MjkpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTEwNjAwMjMyMjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMDA1NTI1Ck5hLCBoYWIgc2Nob24gZWluIHBhYXIgTGViZW5zcHVua3RlLi4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIG9kZXIgZGllIFByb2JsZW1lIGRlciBEdW5rZWxlbGZlbiAoQ3JvZnQsICA0LiBBdWcgMjAwMywgMjE6MDQ6NTgpOgpbQWJlbnRldWVyOkdhc0hpcm5dIHVpIGdhYiBkYXMgc2Nob24gaW1tZXIgc292aWVsZSBlbGZlbiBoaWVyPwpbVG9kOkxhcnNdIEVpbiBHYXJkZXdhZWNodGVyIGhhdCBnZXJhZGUgR2FzaGlybiB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogS2xhc3NlIFBhcnR5IC4uLiBhYmVyIC4uLi4gKFRvZSwgIDQuIEF1ZyAyMDAzLCAyMToxNzowNSk6Cn4jISBybj1WYW5pb24gcnQ9MTA2MDAyMTU0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAwMDU1MjUKV28gYmlzdCBEdSBkZW5uIGluIGRlbSBTZWUgYXVjaCBnZXNjaHdvbW1lbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS2xhc3NlIFBhcnR5IC4uLiBhYmVyIC4uLi4gKEJvaW5nLCAgNS4gQXVnIDIwMDMsIDA5OjE1OjM1KToKfiMhIHJuPUJhbWJpIHJ0PTEwNjAwNjc2OTMgcmc9cGFydHkKfiMhIHRpZD0xMDYwMDA1NTI1CkRhcyB3YXMgRHUgbWVpbnN0IHNpbmQgTXVlY2tlbnN0aWNoZSwgZGllIGhhYiBpY2ggYXVjaCAuLi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS2xhc3NlIFBhcnR5IC4uLiBhYmVyIC4uLi4gKEJhbWJpLCAgNS4gQXVnIDIwMDMsIDA5OjE2OjQ4KToKfiMhIHJuPUJvaW5nIHJ0PTEwNjAwNjc3MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMDA1NTI1CkRhbm4gYmluIGljaCBqYSBiZXJ1aGlndC4gLSBEaWUgTWlzdHZpZWNoZXIhIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBLbGFzc2UgUGFydHkgLi4uIGFiZXIgLi4uLiAoVmFuaW9uLCAgNS4gQXVnIDIwMDMsIDEzOjUzOjU0KToKfiMhIHJuPVpvb2sgcnQ9MTA2MDA4NDM2NiByZz1wYXJ0eQp+IyEgdGlkPTEwNjAwMDU1MjUKSWNoIGZpbmRlIGljaCBoYWIgc2Nob24gZ2VudWcgYXVzIG1laW5lciBLcmFua2Vua2FydGVpIHZvcmdlbGVzZW4uIEFiZXIgc292aWVsCmRhenU6ICJCcmF1Y2hlbiBTaWUgd2FzIGdlZ2VuIElocmVuIFNvbm5lbmJyYW5kPyIKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBDZXJjYXJpZW4tRGVybWF0aXRpcyAuLi4uICAoQmllbGVmZWxkLCAgNS4gQXVnIDIwMDMsIDE1OjU4OjMyKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwNjAwOTE4NDIgcmc9cGFydHkKfiMhIHRpZD0xMDYwMDkwNzYyCk51biBnaWJ0IGRlbiBTb21tZXJsb2NodGhyZWFkcyBtYWwgZWluZSBDaGFuY2UuLi4gOikKCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IENlcmNhcmllbi1EZXJtYXRpdGlzIC4uLi4gIChHbG9pbnNvbiwgIDUuIEF1ZyAyMDAzLCAxNTo1OTo1Mik6Cn4jISBybj1CaWVsZWZlbGQgcnQ9MTA2MDA5MTkxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAwOTA3NjIKSW4gT3JkbnVuZy4gSWNoIHJldmlkaWVyZS4gQXVzc2VyZGVtIGhhYmUgaWNoIG1laHJlcmUgVHNldHNlLUZsaWVnZW4gZ2VzZWhlbiwKYWxzbyB2ZXJ3ZWNoc2VsdCBqZXR6dCBiaXR0ZSBuaWNodCBkaWUgdHlwaXNjaGUgQnVlcm9tdWVkaWdrZWl0IG1pdCBkZXIKU2NobGFma3JhbmtoZWl0LiBEZXN3ZWl0ZXJlbiBtZWluZSBpY2ggYXVjaCBhdWYgZGVyIEluc2VsIGVpbmUgTGVwcmFrb2xvbmllCmVudGRlY2t0IHp1IGhhYmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQ2VyY2FyaWVuLURlcm1hdGl0aXMgLi4uLiAgKEJpZWxlZmVsZCwgIDUuIEF1ZyAyMDAzLCAxNjowMTowNik6Cn4jISBybj1HbG9pbnNvbiBydD0xMDYwMDkxOTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDA5MDc2MgpHdXQsIGRhcyBlcmtsYWVydCwgd2FydW0gaWNoIG1pY2ggc28gc2NobGFwcCBmdWVobGUsIG9obmUgZGFzcyBpY2gKaW0gV2Fzc2VyIHdhci4gS2FubiBqYSBuaWNodCBhbSBBbGtvaG9sIGdlbGVnZW4gaGFiZW4uLi4gOykKCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IENlcmNhcmllbi1EZXJtYXRpdGlzIC4uLi4gIChDcm9mdCwgIDUuIEF1ZyAyMDAzLCAxNjowMzoxNik6Cn4jISBybj1CaWVsZWZlbGQgcnQ9MTA2MDA5MjA2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAwOTA3NjIKRmFsbHMgQWxrb2hvbCB6dSBsYXV0IHdhciwgc2Nob24uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQ2VyY2FyaWVuLURlcm1hdGl0aXMgLi4uLiAgKE1haGFyZXQsICA1LiBBdWcgMjAwMywgMTY6MjM6NTIpOgp+IyEgcm49Q3JvZnQgcnQ9MTA2MDA5MjE5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAwOTA3NjIKbnVyIGluZGlyZWt0LiBFaWdlbnRsaWNoIHdhciBkYXMgTGVpYmkgOykKCk1haGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IENlcmNhcmllbi1EZXJtYXRpdGlzIC4uLi4gIChBbGtvaG9sLCAgNS4gQXVnIDIwMDMsIDE2OjQ1OjIyKToKfiMhIHJuPUNyb2Z0IHJ0PTEwNjAwOTIxOTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMDkwNzYyCmljaCB3YXIgbmljaHQgbGF1dAoKQWxrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQ2VyY2FyaWVuLURlcm1hdGl0aXMgLi4uLiAgKEJvaW5nLCAgNS4gQXVnIDIwMDMsIDE2OjQ2OjAyKToKfiMhIHJuPUFsa29ob2wgcnQ9MTA2MDA5NDcyMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAwOTA3NjIKU3RpbW10LCBudXIgRGVpbiBOYW1lIHd1cmRlIGluIGVpbmVyIFBlbmV0cmFueiB1bmQgTGF1dHN0YWVya2UgbWlzc2JyYXVjaHQsCmRhc3MgZXMgbmljaHQgbWVociB3aXJrbGljaCBsdXN0aWcgd2FyIC4uLiA7KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogQ2VyY2FyaWVuLURlcm1hdGl0aXMgLi4uLiAgKEdyaW1tYm9ybiwgIDUuIEF1ZyAyMDAzLCAxNjo0Nzo0MCk6Cn4jISBybj1Cb2luZyBydD0xMDYwMDk0NzYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDA5MDc2MgpTb2xhbmdlIGVzIG5pY2h0IGRlciBOYW1lIEdvdHRlcyBpc3Qga2FubiBtYW4gaWhuIG1pc3NicmF1Y2hlbiBzbyBwZW5ldHJhbnQKdW5kIGxhdXRzdGFyayBtYW4gd2lsbCwgZGEga2FubiBuaWNodHMgcGFzc2llcmVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogQ2VyY2FyaWVuLURlcm1hdGl0aXMgLi4uLiAgKEFsa29ob2wsICA1LiBBdWcgMjAwMywgMTY6NDg6MTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjAwOTQ4NjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMDkwNzYyCmFsc28gZ2V0cnVua2VuIGhhYmVuIG1pY2ggdmllbGUsIGFiZXIgbWlzc2JyYXVjaHQ/IGhtbSA6KQoKQWxrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogQ2VyY2FyaWVuLURlcm1hdGl0aXMgLi4uLiAgKEJvaW5nLCAgNS4gQXVnIDIwMDMsIDE2OjQ4OjUyKToKfiMhIHJuPUFsa29ob2wgcnQ9MTA2MDA5NDg5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAwOTA3NjIKSGFiIGljaCBnZXNjaHJpZWJlbiBkYXNzIER1IG1pc3NicmF1Y2h0IHd1cmRlc3Q/IERhcyBrYW5uc3QgRHUgbnVyIHNlbGJzdApiZWFudHdvcnRlbiAuLi4gaWNoIGhhYiBpbW1lciBudXIgdm9uIERlaW5lbSBOYW1lbiBnZXJlZGV0LiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogQ2VyY2FyaWVuLURlcm1hdGl0aXMgLi4uLiAgKFJvY2h1cywgIDUuIEF1ZyAyMDAzLCAxNjo0OToxMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2MDA5NDg2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAwOTA3NjIKSmVob3ZhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IENlcmNhcmllbi1EZXJtYXRpdGlzIC4uLi4gIChBbGtvaG9sLCAgNS4gQXVnIDIwMDMsIDE2OjQ5OjI2KToKfiMhIHJuPUJvaW5nIHJ0PTEwNjAwOTQ5MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMDkwNzYyCm1hbCBkaWUgRm90b3MgYWJ3YXJ0ZW4sIHdhcyBkaWUgZGF6dSBzYWdlbiA7KQoKQWxrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogQ2VyY2FyaWVuLURlcm1hdGl0aXMgLi4uLiAgKE11YWRpYiwgIDUuIEF1ZyAyMDAzLCAxNjo1MDozMCk6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNjAwOTQ5NjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMDkwNzYyCmRpZSBnZWJlbiBpbSBhbGxnZW1laW5lbiBrZWluZW4gdG9uIHZvbiBzaWNoCmluIGRpZXNlbSBmYWxsIGlzdCBkYXMgYXVjaCBndXQgc28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBDZXJjYXJpZW4tRGVybWF0aXRpcyAuLi4uICAoQWxrb2hvbCwgIDUuIEF1ZyAyMDAzLCAxNjo1MDo1NSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA2MDA5NTAzMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAwOTA3NjIKZ2VydWVscHN0IGhhdCBlaWdlbnRsaWNoIG51ciBIdW1uaQoKQWxrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogQ2VyY2FyaWVuLURlcm1hdGl0aXMgLi4uLiAgKFJvY2h1cywgIDUuIEF1ZyAyMDAzLCAxNjo1MToxMSk6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNjAwOTQ5NjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMDkwNzYyClRqYSwgd2VubiBHdWFyZCBkaWUgbmljaHQgYmFsZCBydWViZXJzY2hpZWJ0CmZ1dHRlciBpY2ggaWhtIGRhcyBFc3NlbiB3ZWcuLi4KRGEgc2luZCBuYWVtbGljaCBzZWhyIGludGVyZXNzYW50ZSBGb3RvcyBkYWJlaSwKd2llIER1IGJlc3BydW5nZW4gd2lyc3QgOy0pCgogIFJvY2h1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IENlcmNhcmllbi1EZXJtYXRpdGlzIC4uLi4gIChCcm90bmFlbCwgIDUuIEF1ZyAyMDAzLCAxNjo1MTo0NSk6Cn4jISBybj1Sb2NodXMgcnQ9MTA2MDA5NTA3MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAwOTA3NjIKQnJvdCBzY2hpZWJ0IGFsbGVzIGF1ZiBkZW4gQWxrb2hvbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBDZXJjYXJpZW4tRGVybWF0aXRpcyAuLi4uICAoQWxrb2hvbCwgIDUuIEF1ZyAyMDAzLCAxNjo1MTo1MSk6Cn4jISBybj1Sb2NodXMgcnQ9MTA2MDA5NTA3MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAwOTA3NjIKOnppdHRlcnQgdm9yIEFuZ3N0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IENlcmNhcmllbi1EZXJtYXRpdGlzIC4uLi4gIChBcG9sbG9uaWEsICA1LiBBdWcgMjAwMywgMTg6Mjg6MjQpOgp+IyEgcm49QWxrb2hvbCBydD0xMDYwMDk1MTExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDA5MDc2MgpWb2VsbGlnIG9mZiB0b3BpYyBzaW5kIHdpciBqZXR6dCwgYWJlciBpY2ggemllaCBncmFkIGRpZSBGb3Rvcy4uLiB3ZW5uIHdpcgpHbHVlY2sgaGFiZW4sIHNpbmQgZGllIGhldXRlIGFiZW5kIG5vY2ggZHJpbiAqZyoKCkFwbyoKaGV1dGUgZmxlaXNzaWdlcyBCaWVuY2hlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGphLi4uIChGb29iYXIsICA1LiBBdWcgMjAwMywgMTk6NTI6NDIpOgpSaWt1cyBydWZ0OiBCTEVJQlQgTUFMIFNURUhFTgpBbmR5IGdlaHQuCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUamEuLi4gKE1vb25zaGluZSwgIDUuIEF1ZyAyMDAzLCAxOTo1MzoxMCk6Cn4jISBybj1Gb29iYXIgcnQ9MTA2MDEwNTk2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAxMDU5NjIKRGllIFNhdS4gCldhcyBkZXIga2Fubiwga2FubiBpY2ggc2Nob24gbGFuZ2UuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlYm9vdCBhbSAwNS4wOC4gKFZhbmlvbiwgIDUuIEF1ZyAyMDAzLCAyMDo1MTo1NCk6Cn4jISBvbj1WYW5pb24gb3Q9MTA2MDEwOTUwNCBvZz1iZWthbm50bWFjaHVuZ2VuCn4jISBybj1WYW5pb24gcnQ9MTA2MDEwOTI4NCByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA2MDEwOTI4NApOdSByZW5udCBzY2hvbiBBdXNydWVzdHVuZyBob2xlbiEgKkZ1ZXIgVGFyYW5pcyBtaXQgZGVtIFphdW4gd2luayoKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlYm9vdCBhbSAwNS4wOC4gKE1vb25zaGluZSwgIDUuIEF1ZyAyMDAzLCAyMTozMTo0NSk6Cn4jISBybj1WYW5pb24gcnQ9MTA2MDEwOTUxNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAxMDkyODQKV2lyIGhhYmVuIEJ1Z3MsIGRpZSBhbmRlcmUgQnVncyB1ZWJlcmRlY2tlbiwgc28gZGFzcyBlcyBuaWNodCBidWd0PwpUb2xsLCBzb3dhcyBzb2xsdGVuIHdpciBiZWhhbHRlbiwgaXN0IGRvY2ggbHVzdGlnZXIuIDotKQoKTW9vbnNoaW5lIG11cm1lbHQ6IFBhKk1hKlYqIHNpbmQgc2NodWxkISA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFJlYm9vdCBhbSAwNS4wOC4gKFpvb2ssICA1LiBBdWcgMjAwMywgMjE6MzI6MTMpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTEwNjAxMTE5MDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMTA5Mjg0CkljaCBkYWNodGUsIGRpZSBTY2h1bGRmcmFnZSB3YWVyZSBnZWtsYWVydC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBSZWJvb3QgYW0gMDUuMDguIChNb29uc2hpbmUsICA1LiBBdWcgMjAwMywgMjE6MzI6MjcpOgp+IyEgcm49Wm9vayBydD0xMDYwMTExOTMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDEwOTI4NApOYWphLCBmdWVyIFZhbmlvbiBzY2hvbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFJlYm9vdCBhbSAwNS4wOC4gKE1lZGljLCAgNS4gQXVnIDIwMDMsIDIxOjQzOjUxKToKfiMhIHJuPU1vb25zaGluZSBydD0xMDYwMTExOTQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDEwOTI4NApEYWZ1ZXIgZ2lidCBlcyBkb2NoICJTZXRfZGVmYXVsdF92aWN0aW0iCgptZWRpYwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IENlcmNhcmllbi1EZXJtYXRpdGlzIC4uLi4gIChUb2UsICA1LiBBdWcgMjAwMywgMjM6MDA6MzMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjAwOTQ4NjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMDkwNzYyCndpciBoYWJlbiBlcyBiaXMgenVtIFplbHQgZ2Vob2VydCwgaW0gQnVuZ2Fsb3cgZGFuZWJlbiB3YXIgZGFzIHNpY2hlciBuaWNodApsZWlzZXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhciB3b2hsIG5peCAoQWxrb2hvbCwgIDUuIEF1ZyAyMDAzLCAyMzo1Nzo0MCk6CkltZGEgZGVua3QgICAuIG8gTyAoc28sIG1hIHJ1ZWNrd2VnIHN1Y2hlbikKSW1kYSBnZWh0IG5hY2ggdW50ZW4uCltUb2Q6TGFyc10gRWluIFNjaGF0dGVud29sZiBoYXQgZ2VyYWRlIEltZGEgdW1nZWJyYWNodC4KCkFsayBsYWNodCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUmVib290IGFtIDA1LjA4LiAoU2NodWxkLCAgNi4gQXVnIDIwMDMsIDA3OjQ3OjM1KToKfiMhIHJuPU1lZGljIHJ0PTEwNjAxMTI2MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMTA5Mjg0Cldlbm4gaGllciBlaW5lciBTY2h1bGQgaGF0LCBkYW5uIGljaCEKCklmIG5lYXJseSBldmVyeXRoaW5nIGlzIGFscmVhZHkgdGFrZW4gLSB0YWtlIHRoZSBibGFtZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXIgd29obCBuaXggKERlZXBibHVlLCAgNi4gQXVnIDIwMDMsIDA4OjE4OjI1KToKfiMhIHJuPUFsa29ob2wgcnQ9MTA2MDEyMDY2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAxMjA2NjAKV2llc28gd2FyIGRhcyBuaXg/IApFciB3YXIgc2VociBzY2huZWxsIHdpZWRlciBpbiBQb3J0IFZhaW4sIHVuZCBkYSBlciBzaWNoZXIgc29mb3J0IGRhbmFjaCBJZGxlCndhciBzaW5kIGF1Y2ggZGllIFRvZGVzZm9sZ2VuIHZlcmdlc3Nlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGViaWFuIChab29rLCAgNi4gQXVnIDIwMDMsIDEyOjIyOjUxKToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA2MDE2NTMxNSByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDYwMTY1MTQ2CkphLCBpY2ggaGllbHQgV29vZHkgYmlzaGVyIGF1Y2ggaW1tZXIgZnVlciBzZWhyIHNvbGlkZS4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEZWJpYW4gKEdyaW1tYm9ybiwgIDYuIEF1ZyAyMDAzLCAxMjoyNTo1NSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTA2MDE2NTU0OSBvZz1zY2htYXJybgp+IyEgcm49Wm9vayBydD0xMDYwMTY1MzcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDE2NTE0NgpHZXdhZ3RlIEF1c3NhZ2U6ClZvbGxlciBOYW1lOiBaYXViZXJ6d2VyZyBXb29keSBmYWVsbHQgaGFydCBhdWYgZGVuIEJvZGVuIGRlciBSZWFsaXRhZXQKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE11ZmZpbnM/IT8gKEdyaW1tYm9ybiwgIDYuIEF1ZyAyMDAzLCAxMjoyODo0MSk6Cn4jISBvbj1Gb29iYXIgb3Q9MTA2MDE2NTMwMyBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwNjAxNjUyODMgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMDYwMTY1MjgzClBrIQoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERlYmlhbiAoR3JpbW1ib3JuLCAgNi4gQXVnIDIwMDMsIDEyOjI4OjU1KToKfiMhIG9uPUFwb2xsb25pYSBvdD0xMDYwMTY1NDE1IG9nPWtvY2hyZXplcHRlCn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwNjAxNjUzMTUgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTA2MDE2NTE0NgpVbmQgaWNoIGhhYiB3aWVkZXIga2VpbmVuIGFiZ2VrcmllZ3QgKnNjaG1vbGw8KgpxLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGViaWFuIChHcmltbWJvcm4sICA2LiBBdWcgMjAwMywgMTI6Mjk6MjUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjAxNjU3MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMTY1MTQ2ClRqYSwgZGFzIHNlaGUgaWNoIG5hdHVlcmxpY2gsIGRhc3MgRGljaCBkYXMgYmVsYXN0ZXQga2VpbmVuIGFiZ2VrcmllZ3QgenUKaGFiZW4uIFVuZCBkYXMgYmVpIGRlciBBdXN3YWhsLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IERlYmlhbiAoR3JpbW1ib3JuLCAgNi4gQXVnIDIwMDMsIDEyOjM3OjAyKToKfiMhIHJuPUZvb2JhciBydD0xMDYwMTY2MTQyIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwNjAxNjUxNDYKQWgsIHdpZWRlciBqZW1hbmQgZGVyIHNpY2ggbWl0IGRlciBhbWVyaWthbmlzY2hlbiBSZWNodHNwcmVjaHVuZyBudXIKdW5nZW51ZWdlbmQgYXVza2VubnQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IERlYmlhbiAoRm9vYmFyLCAgNi4gQXVnIDIwMDMsIDEyOjQ4OjM1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDYwMTY2MjIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDE2NTE0NgoiYW1lcmlrYW5pc2NoIi4KCktvcnJla3QuCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERlYmlhbiAoV29vZHksICA2LiBBdWcgMjAwMywgMTQ6MTk6MjEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjAxNjU1NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMTY1MTQ2CkJpbiBub2NoIGdhbnouIEVyZ28gc3RhYmxlLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYm9lc2UvYWJzY2hyZWNrZW5kZSBEZWxmZW4/IChaZXNzdHJhLCAgNi4gQXVnIDIwMDMsIDE1OjA4OjMwKToKSGV1dGUgaW4gZGVyIER1bmtlbGVsZmVuZ2lsZGU6CgpKYXF1ZXNzIGJldHJpdHQgZGllc2UgV2VsdC4KS3JpYWxhIGhlaXNzdCBKYXF1ZXNzIHdpbGxrb21tZW4uCkphcXVlc3MgaGF0IHNpY2ggZ2VyYWRlIHNlbGJzdCB6ZXJzdG9lcnQuCgpsYWNoZW5kLApaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcnN0ZXIhIDotKSAoTWFuZHJhZ29uLCAgNi4gQXVnIDIwMDMsIDE3OjAyOjQ5KToKCiAgICAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNaXQsICA2LiBBdWcgMjAwMywgMTc6MDA6NTEgKDcgVGVpbG5laG1lcikKCkxvZ29uLi4uLi4uLi4uLi4ucyBMb2dvbi4uLi4uLi4uLi4uLnMgTG9nb24uLi4uLi4uLi4uLi5zIExvZ29uLi4uLi4uLi4uLi4ucwpMb2dvbi4uLi4uLi4uLi4uLnMgTG9nb24uLi4uLi4uLi4uLi5zIE1hbmRyYWdvbi4uLi4uLi4uUgoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJlYm9vdCBhbSAwNS4wOC4gKEFtYXJ5bGxpcywgIDYuIEF1ZyAyMDAzLCAxNzo0NDo1OCk6Cn4jISBybj1SaWt1cyBydD0xMDYwMTgwNDQxIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDYwMTA5Mjg0CldpZSBqZXR6dD8gQW0gMDUuMDg/IEljaCBsaWViZSBVcHRpbWVzIHZvbiAzNjUgVGFnZW4uLi4gOi0pCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCcm90aSBhbHNvIHdpcmtsaWNoIChBbGtvaG9sLCAgNi4gQXVnIDIwMDMsIDE5OjM2OjAzKToKCkJyb3RuYWVsIGhhdCBoYWx0IG5lbiBnYW56IGxhbmdlbi4KQnJvdG5hZWwgZ3JpbnN0LgoKQWxrIGlzdCBlcnNjaHVldHRlcnQuIERhcyB2b24gZWluZW0gS2xlcmlrZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQnJvdGkgYWxzbyB3aXJrbGljaCAoQnJvdG5hZWwsICA2LiBBdWcgMjAwMywgMTk6Mzc6MDgpOgp+IyEgcm49QWxrb2hvbCBydD0xMDYwMTkxMzYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDE5MTM2MwpEaWUgTGFlbmdlIGlzdCBoYWx0IEx2bC1hYmhhZW5naWcgOykKCkJyb3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQnJvdGkgYWxzbyB3aXJrbGljaCAoRm9vYmFyLCAgNi4gQXVnIDIwMDMsIDE5OjM3OjQyKToKfiMhIHJuPUJyb3RuYWVsIHJ0PTEwNjAxOTE0Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMTkxMzYzCkVzIGtvbW10IGJla2FubnRsaWNoIG5pY2h0IGF1ZiBkaWUgR3JvZXNzZSBhbi4KClNvbmRlcm4gYXVmIGRlbiBEdXJjaG1lc3Nlci4KCkdydXNzLAoKICAgRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCcm90aSBhbHNvIHdpcmtsaWNoIChCcm90bmFlbCwgIDYuIEF1ZyAyMDAzLCAxOTozODowNik6Cn4jISBybj1Gb29iYXIgcnQ9MTA2MDE5MTQ2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAxOTEzNjMKVW5kIGljaCBkYWNodCBpbW1lciBhdWYgZGVuIHp1cnVlY2tnZWxlZ3RlbiBXZWcuLi4KCkJyb3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJyb3RpIGFsc28gd2lya2xpY2ggKEFsa29ob2wsICA2LiBBdWcgMjAwMywgMTk6Mzg6MTIpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNjAxOTE0NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMTkxMzYzCmljaCBnbGF1YmUsIEJyb3RpcyBoYXQgYWJlciBrZWluZW4gRHVyY2htZXNzZXIgOykKCkFsawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1lZGl0ZXJyYW5lciBOdWRlbHNhbGF0IChSb25kYSwgIDYuIEF1ZyAyMDAzLCAyMDoyNzoyNCk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwNjAxODA0Mzkgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMDYwMTgwNDM5Cj4gWnV0YXRlbiBmdWVyIDQgUG9ydGlvbmVuLCBiZWkgZGVyIFBhcnR5IHdhciBlcyBkaWUgMjBmYWNoZSBNZW5nZToKClVmZi4gSWhyIGhhYnQgZGEgNSBLaWxvIE51ZGVsbiAoVHJvY2tlbm1hc3NlKSwgNSBLaWxvIEtpcnNjaHRvbWF0ZW4gdW5kIHNvCnZlcndlbmRldD8hIFdvdy4gNDAgWmVoZW4gS25vYmxhdWNoPwoKSG9jaGFjaHR1bmchIFVuZCBub2NobWFscyBnYW56IGhlcnpsaWNoZW4gRGFuayBmdWVycyBLb2NoZW4uLi4KClJvbmRhICpzdGF1bnQgdW5kIGZyYWd0IHNpY2ggc28gbmVuIGJpc3NjaGVuLCBvYiBTY2htYXJybiBkaWUgcmljaHRpZ2UgUnVicmlrCmlzdCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQ2hpbGkgY29uIENhcm5lIChtaXR0ZWxzY2hhcmYpIChHcmltbWJvcm4sICA2LiBBdWcgMjAwMywgMjI6NDI6MDMpOgp+IyEgcm49TXVwZmVsIHJ0PTEwNjAyMDI0Nzkgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMDU5OTUwMDg5CkRhcyBkZW5rZSBpY2ggYXVjaCwgamEuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IHBlcm1pc3Npb25zIGJlaW0gbW91bnRlbiAoR3JpbW1ib3JuLCAgNy4gQXVnIDIwMDMsIDEwOjQ0OjM5KToKfiMhIHJuPUFsa29ob2wgcnQ9MTA2MDI0NTY2OCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDYwMTc0NTgzCk1hc29jaGlzdGVuLCB3ZW5uIER1IG1pY2ggZnJhZ3N0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBwZXJtaXNzaW9ucyBiZWltIG1vdW50ZW4gKEFsa29ob2wsICA3LiBBdWcgMjAwMywgMTA6NDY6MDcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjAyNDU4Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMTc0NTgzCmViZW4sIGRpZSBkaWUgYWhudW5nIGhhYmVuIHJ1ZmVuIHZpbSBhdWYsIG9kZXIgZGFzIGJldHJpZWJzc3lzdGVtIG5pbW10IGlobmVuCmRhcyBhYiBpbmRlbSBlcyB2aSBuYWNoIHZpbSBtYXBwdAoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmV0enQgZXJzdD8gKFpvb2ssICA3LiBBdWcgMjAwMywgMTY6MDg6MjkpOgpEaWUgZ3Jvc3NlIEdsb2NrZSB2b24gUG9ydCBWYWluIHZlcmt1ZW5kZXQgZGllIEFua3VuZnQgdm9uIEFuZ3N0IGltCk1vcmdlbmdyYXVlbi4KCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGV4ZW4gYXVmZ2VwYXNzdDogQWxrb2hvbCBrYW5uIHNjaGxpbW1lIEZvbGdlbiBoYWJlbiAoTXVwZmVsLCAgNy4gQXVnIDIwMDMsIDIwOjM3OjAzKToKaHR0cDovL3d3dy5ib25lcnMuY29tL2NvbnRlbnQvNzg4OTg1LjEuanBnCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhleGVuIGF1ZmdlcGFzc3Q6IEFsa29ob2wga2FubiBzY2hsaW1tZSBGb2xnZW4gaGFiZW4gKEJpZWxlZmVsZCwgIDcuIEF1ZyAyMDAzLCAyMDozODoxNyk6Cn4jISBybj1NdXBmZWwgcnQ9MTA2MDI4MTQyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAyODE0MjMKRGFzIHNpZWh0IGFiZXIgbWVociBuYWNoIG5lciBlbGZpc2NoZW4gSGV4ZSBtaXQgZ2V3aXNzZW0gTm90c3RhbmQgYXVzIDopCgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpwYXNzdCBqYSAoUm9sYW5kLCAgNy4gQXVnIDIwMDMsIDIxOjMyOjUxKToKW1RvZDpMYXJzXSBFaW5lIFdhbmQgYXVzIEZldWVyIGhhdCBnZXJhZGUgUm9sYW5kIHVtZ2VicmFjaHQuCgpbQmVpbGVpZDpCcmFuXSBzdG9lY2ttIGlhbXRpIFBmdWl2bW9lcG91ZWxnbXVycywgcnVtbWVsbXVwZiBidW1sZWtsdW1zdGxtIG5vawpbQmVpbGVpZDpCcmFuXSBCcmllc2VsdHJpbSEKClRvZCBzYWd0OiBJQ0ggLi4uIElDSCBIQUJFIElITiBWRVJQQVNTVC4KCjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdWh1IEFsa29ob2whIChGb29iYXIsICA3LiBBdWcgMjAwMywgMjE6MzY6MjIpOgpIdWh1IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEh1aHUgQWxrb2hvbCEgKEFsa29ob2wsICA3LiBBdWcgMjAwMywgMjE6MzY6NDQpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNjAyODQ5ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMjg0OTgyCndpbGxzdCBkdSBHb3R0IHdlcmRlbiwgRm9vYmFyPyA7KQoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIdWh1IEFsa29ob2whIChGb29iYXIsICA3LiBBdWcgMjAwMywgMjE6Mzc6MTApOgp+IyEgcm49QWxrb2hvbCBydD0xMDYwMjg1MDA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDI4NDk4MgpJY2ggZXJmdWVsbGUgZWluaWdlIGVudHNjaGVpZGVuZSBWb3JhdXNzZXR6dW5nZW4gbmljaHQuIDtvKQoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIdWh1IEFsa29ob2whIChGb29iYXIsICA3LiBBdWcgMjAwMywgMjE6Mzc6MjQpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNjAyODUwMzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMjg0OTgyCkRhIGZlaGx0IGVpbiAiZCIgaXJnZW5kd28uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIdWh1IEFsa29ob2whIChBbGtvaG9sLCAgNy4gQXVnIDIwMDMsIDIxOjM3OjM0KToKfiMhIHJuPUZvb2JhciBydD0xMDYwMjg1MDMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDI4NDk4MgpvaCBkaWUgd2ljaHRpZ3N0ZSBoYXN0IGR1IGdlcmFkZSBFcmZ1ZWxsdCA7KQoKQWxraS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEh1aHUgQWxrb2hvbCEgKEZvb2JhciwgIDcuIEF1ZyAyMDAzLCAyMTozNzo0Nik6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNjAyODUwNTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMjg0OTgyCi12IHBsZWFzZSA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEh1aHUgQWxrb2hvbCEgKEFuYXRvbCwgIDcuIEF1ZyAyMDAzLCAyMjoyNjo0NCk6Cn4jISBybj1Gb29iYXIgcnQ9MTA2MDI4NTA2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAyODQ5ODIKSWNoIGhhYiBBbGtpIHZlcnN0YW5kZW4uIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW4gZGVyIFRhdC4uLiAoRm9vYmFyLCAgNy4gQXVnIDIwMDMsIDIyOjMwOjEyKToKTWFoYXJldCBydWZ0OiBFcmlhIHNvbGwgaW4gbWVpbiBCZXR0PwpFaW4gZW50c2V0emxpY2hlciBTY2hyZWkgaGFsbHQgdm9tIEZyaWVkaG9mIGhlcnVlYmVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gc2NobGltbSBpc3QgZGFzIGF1Y2ggbmljaHQgKE1vcmdvdGgsICA3LiBBdWcgMjAwMywgMjI6MzA6MjApOgpNYWhhcmV0IHJ1ZnQ6IEVyaWEgc29sbCBpbiBtZWluIEJldHQ/CkVpbiBlbnRzZXR6bGljaGVyIFNjaHJlaSBoYWxsdCB2b20gRnJpZWRob2YgaGVydWViZXIuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNvIHNjaGxpbW0gaXN0IGRhcyBhdWNoIG5pY2h0IChGb29iYXIsICA3LiBBdWcgMjAwMywgMjI6MzA6NDQpOgp+IyEgcm49TW9yZ290aCBydD0xMDYwMjg4MjIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDI4ODIyMApFcnN0ZXIgOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNvIHNjaGxpbW0gaXN0IGRhcyBhdWNoIG5pY2h0IChNb3Jnb3RoLCAgNy4gQXVnIDIwMDMsIDIyOjMxOjE4KToKfiMhIHJuPUZvb2JhciBydD0xMDYwMjg4MjQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDI4ODIyMApMZWliaSBoYXQgbWljaCB6dWdlcGluZ3QsIGRhIGlzIGRhcyBzY2h3aWVyaWcgbWl0IGNvcHkmcGFzdGUgOikKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbGtvaG9sLi4uIChMZWliaSwgIDcuIEF1ZyAyMDAzLCAyMjo1MDowOSk6CkFyZWVsYW5pciBzYWd0OiBBbGtvaG9sIGhhdCBtaWNoIHVuZGlzemlwbGluaWVydCBnZW1hY2h0ICpnKgoKbGVpYmkgd3Vzc3RlIGVzIHNjaG9uIGltbWVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTb21tZXJsb2NoIChHcmltbWJvcm4sICA3LiBBdWcgMjAwMywgMjM6MjM6NTQpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNjAyOTEzOTQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNjAyOTEwNDIKUmljaHRpZy4gSWNoIHdhciBzY2hvbiBiZWkgIkhlcmluZyIgYWxzIE5hY2huYW1lLi4uCgpHZEEsIGhpdHplZ2VzY2hhZWRpZ3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFNvbW1lcmxvY2ggKFpvb2ssICA3LiBBdWcgMjAwMywgMjM6MzY6MDgpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNjAyOTE3OTkgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNjAyOTEwNDIKWm9vayBoYXQgc2ljaCBiZWltIExlc2VuIGRlcyBlcnN0ZW4gV29ydGVzIGZhc3QgdmVyc2NobHVja3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBDaGlsaSBjb24gQ2FybmUgKG1pdHRlbHNjaGFyZikgKEdyaW1tYm9ybiwgIDguIEF1ZyAyMDAzLCAxMTowMzo0Nik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTA2MDMzMzQxOCBvZz1kaXNrdXNzaW9uCn4jISBybj1BbGtvaG9sIHJ0PTEwNjAzMzMzOTQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNTk5NTAwODkKR0VuYXUgd2llIEVpbnN0ZWluLiBPYiBkYXMgbm9jaCBlaW4gWnVmYWxsIHNlaW4ga2Fubj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQ2hpbGkgY29uIENhcm5lIChtaXR0ZWxzY2hhcmYpIChNb3Jnb3RoLCAgOC4gQXVnIDIwMDMsIDExOjA0OjQyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDYwMzMzNDI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTk1MDA4OQpLb2VubnRldCBpaHIgYml0dGUgaW4gZGVtIGFuZGVyZW4gVGhyZWFkIGJsZWliZW4sIGRlbiBoYWIgaWNoIHdlbmlnc3RlbnMgc2Nob24KdWViZXJnYW5nZW4uCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQ2hpbGkgY29uIENhcm5lIChtaXR0ZWxzY2hhcmYpIChBbGtvaG9sLCAgOC4gQXVnIDIwMDMsIDExOjA0OjQ0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDYwMzMzNDI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA1OTk1MDA4OQpuZWluIGRhcyBpc3Qga2VpbiBadWZhbGwsIGRhIGhhdCB1bnRlciBhbmRlcmVtIGRlciB3YWhyc2NoZWlubGljaAplaW5mbHVzc3JlaWNoc3RlIERldXRzY2hlIGZ1ZXIgZ2Vzb3JndCA7KQoKQWxraSAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFNvbW1lcmxvY2ggKEFsa29ob2wsICA4LiBBdWcgMjAwMywgMTE6MDY6MjQpOgp+IyEgcm49Wm9vayBydD0xMDYwMjkyMTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDI5MTA0Mgp3YXJ1bSBlaWdlbnRsaWNoIG5pY2h0IEFkYW0gUmllc2UgdW50ZXIgZGVuIHRvcCB0ZW4/IGVyIGhhdCB1bnMgZGllIGFyYWJpc2NoZW4KWmlmZmVybiBnZWJyYWNodCB1bmQgYXVjaCBhbmRlcmUgZmVpbmUgU2FjaGUuCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTb21tZXJsb2NoIChOb25uZSwgIDguIEF1ZyAyMDAzLCAxMToxMzozMCk6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNjAzMzM1ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMjkxMDQyCldvaGVyIGthbSBlaWdlbnRsaWNoIFR1cm52YXRlciBKYW4/IE9kZXIgSmFobj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTb21tZXJsb2NoIChBbGtvaG9sLCAgOC4gQXVnIDIwMDMsIDExOjE0OjA3KToKfiMhIHJuPU5vbm5lIHJ0PTEwNjAzMzQwMTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMjkxMDQyClNhdXByZWlzcyB3YXIgZGVyIAoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFNvbW1lcmxvY2ggKEFsYm9pbiwgIDguIEF1ZyAyMDAzLCAxMToxNTowNCk6Cn4jISBybj1Ob25uZSBydD0xMDYwMzM0MDEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDI5MTA0MgpnZWJvcmVuIGluIExhbnogYmVpIFBlcmxlYmVyZwoKYWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBTb21tZXJsb2NoIChOb25uZSwgIDguIEF1ZyAyMDAzLCAxMToyMzoyOSk6Cn4jISBybj1ab29rIHJ0PTEwNjAzMzQ1MTEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNjAyOTEwNDIKUm9hc3QgQmVlZj8gVW5kIHdpZSBoaWVzcyBkZXIgTWFubj8gUm9hc3Qgb2RlciBCZWVmPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSZWt0YWwtVGhlcm1vbWV0ZXIgKEdyaW1tYm9ybiwgIDguIEF1ZyAyMDAzLCAxMToyNDoxNyk6Cn4jISBybj1UZXJyeSBydD0xMDYwMzM0MTM2IHJnPXdpdHplCn4jISB0aWQ9MTA2MDMyNzIwMwpIb2VybWFsLCBmdWVyIGRhcyBFcmtsYWVyZW4gdm9uIHdpdHplbiBpc3QgaGllciBpbW1lciBub2NoIE1hbmRyYWdvbgp6dXN0YWVuZGlnLCBtaXNjaCBEaWNoIGRhIGRvY2ggYml0dGUgbmljaHQgZWluLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBSZWt0YWwtVGhlcm1vbWV0ZXIgKFpvb2ssICA4LiBBdWcgMjAwMywgMTE6MjY6MDIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjAzMzQ2NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMzI3MjAzCkF1ZiBkZW0gRmFlaGNuY2hlbiBzdGVodCBhdWNoIG5pY2h0IGRpZSBFcmtsYWVydW5nLCBzb25kZXJuIG51ciAiRXMgbGViZQpkZXIgZXJrbGFlcnRlIFdpdHohIi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogU29tbWVybG9jaCAoR3JpbW1ib3JuLCAgOC4gQXVnIDIwMDMsIDExOjI4OjMxKToKfiMhIHJuPU5vbm5lIHJ0PTEwNjAzMzQ4NDggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNjAyOTEwNDIKV2VubiBzY2hvbiBCb3NjaCBkYW5uIGFiZXIgYXVjaCBkaWUgSGVycmVuIEJsYWNrIHVuZCBEZWNrZXIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU29tbWVybG9jaCAoR3JpbW1ib3JuLCAgOC4gQXVnIDIwMDMsIDExOjM1OjUwKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDYwMzM1MzQ0IG9nPWRpc2t1c3Npb24KfiMhIHJuPVZpbmNlbnQgcnQ9MTA2MDMzNTI1MSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA2MDI5MTA0MgpEZXIgRXJmaW5kZXIgZGVzIEtsb3BhcGllcnM/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNvbW1lcmxvY2ggKEdyaW1tYm9ybiwgIDguIEF1ZyAyMDAzLCAxMTo0MTo0NSk6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTA2MDMzNTY3MyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA2MDI5MTA0MgpEYSB3byBkZXIgRnJvc2NoIGRpZSBMb2NrZW4gaGF0LCBuYXR1ZXJsaWNoLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTb21tZXJsb2NoIChNb29uc2hpbmUsICA4LiBBdWcgMjAwMywgMTE6NDI6MjEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjAzMzU3MDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMjkxMDQyCk1vb25zaGluZSBrZW5udCBrZWluZW4gRnJvc2NoIG1pdCBMb2NrZW4gLSBoYXQgYWJlciBhdWNoIG5pZSBnZW5hdQpuYWNoZ2VzZWhlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFNvbW1lcmxvY2ggKEdyaW1tYm9ybiwgIDguIEF1ZyAyMDAzLCAxMTo0Mjo0Myk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTA2MDMzNTc1MyBvZz1kaXNrdXNzaW9uCn4jISBybj1QYWRyZWljIHJ0PTEwNjAzMzU2OTMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNjAyOTEwNDIKSmEsIGRhc3MgRHUgRGlyIGRhcyBndXQgdm9yc3RlbGxlbiBrYW5uc3QsIGRhcmFuIHp3ZWlmZWwgaWNoIG5pY2h0LgpJY2ggc2FnOiBsYXNzIGlobiBlcnN0bWFsIHN0ZXJiZW4sIGRhbm4ga29lbm5lbiB3aXIgaW1tZXIgbm9jaCBkcnVlYmVyCnJlZGVuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNvbW1lcmxvY2ggKE9ya3RvZXRlciwgIDguIEF1ZyAyMDAzLCAxMTo0Mjo1Nyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2MDMzNTM1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAyOTEwNDIKSW1tZXIgZGllc2Ugc2NobGVjaHRlIEJ1Y2hmdWVocnVuZy4uLiBzb25zdCBrb2VubnRlbiB3aXIgamV0enQgbm9jaCBkZW4KRXJmaW5kZXIgZGVzIFJhZHMgdW5kIGRlbiBFbnRkZWNrZXIgZGVzIEZldWVycyBhbmZ1ZWhyZW4sIHdhcmVuIGRvY2ggZ2FuegpzaWNoZXIgYXVjaCBEZXV0c2NoZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU29tbWVybG9jaCAoSHVtbmksICA4LiBBdWcgMjAwMywgMTU6Mzg6MDMpOgp+IyEgb249SHVtbmkgb3Q9MTA2MDM0OTg2NCBvZz1kaXNrdXNzaW9uCn4jISBybj1BbGJvaW4gcnQ9MTA2MDM0OTM4MCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA2MDI5MTA0MgpTb3dlaXQgaWNoIHdlaXNzIGtvbW10IFBhcmFjZWxzdXMgYXVzIERvcnRtdW5kLCBhYmVyIHNvIGdlbmF1IHdlaXNzIGljaCBkYXMKbmljaHQsIHVuZCBlciB3YXIgamEgYXVjaCBzY2hvbiBsYW5nZSBuaWNodCBtZWhyIGRhLiBBYmVyIGRpZSBUYW5qaWFuIHNpbmQKc2Nob24gZWluIEdydW5kLCBpaG4gYXVmIGRpZSBMaXN0ZSB6dSBzY2hyZWliZW4sIGdhbnoga2xhci4uLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5lZSBpcyBrbGFyLCBQdWsgLi4uIChEYXJrd2luZywgIDguIEF1ZyAyMDAzLCAxOTowNjoxNCk6ClB1ayAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEZWluIEZyZXVuZCBQdWsga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpFaW4gZW50c2V0emxpY2hlciBTY2hyZWkgaGFsbHQgdm9tIEZyaWVkaG9mIGhlcnVlYmVyLgpEZWluIEZyZXVuZCBQdWsga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEZWluIEZyZXVuZCBQdWsgd2lua3QgRGlyIGF1cyBkZXIgRmVybmUgenUuClB1ayAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFNvbW1lcmxvY2ggKE11YWRpYiwgIDguIEF1ZyAyMDAzLCAyMTowMDo0NCk6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNjAzMzM1ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMjkxMDQyCmRpZSBhcmFiaXNjaGVuIHppZmZlcm4gYnJhY2h0ZW4gdW5zIGFiZXIgZGllIGFyYWJlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU29tbWVybG9jaCAoTm9ubmUsICA5LiBBdWcgMjAwMywgMTU6MDY6MzEpOgp+IyEgcm49SHVtbmkgcnQ9MTA2MDM0OTg4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAyOTEwNDIKUGFyYWNlbHN1cyBpc3QgaW4gQm9jaHVtIHdvaG5oYWZ0LiBXbyBlciBoZXJrb21tdCwgd2Vpc3MgaWNoIGFiZXIgbmljaHQuCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiBMZWJlbiBuYWNoIGRlbSBUb2QgKE1lbnNhbmEsICA5LiBBdWcgMjAwMywgMTY6Mjk6MjcpOgpEZXIgS2VnbGVyIHplcnNwcmluZ3QgaW4gdGF1c2VuZCBTdHVlY2tlLgpIZXJ1bWZpZWdlbmRlIFRydWVtbWVyIHRyZWZmZW4gYXVjaCBEaWNoLgpFaW4gS2VnbGVyIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KRHUgdmVyc3VjaHN0IHZlcnp3ZWlmZWx0IGVpbmVuIFNjaGxhZyBnZWdlbiBIYWVuc2VsIHp1IGxhbmRlbiwgZG9jaCBkaWVzZQprbGVpbmUgTWF1cyBpc3Qgc28gZmxpbmssIGRhc3MgRHUgYWJzb2x1dCBrZWluZSBDaGFuY2UgaGFzdCwgenUgdHJlZmZlbi4KTmFjaGRlbSBEdSBlaW4gcGFhcm1hbCBpbiBkaWUgTHVmdCBnZXNjaGxhZ2VuIGhhc3QsIGdpYnN0IER1IHNjaGxpZXNzbGljaCBhdWYuCkVpbiBLZWdsZXIgc2NobGFlZ3QgTWVuc2FuYSBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgoKVGphLCBtYW4gaXN0IGhhbHQgdmVyd2lycnQsIHdlbm4gdG90ZSBPcGZlciBlaW5lbiBub2NoIHNjaGxhZ2VuLiBEYSBrYW5uIG1hbgpzY2hvbiBtYWwgc2VpbmUgSGF1cy1NYXVzIHNjaGxhZ2VuLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTb21tZXJsb2NoIChBbGtvaG9sLCAxMC4gQXVnIDIwMDMsIDE3OjA2OjUzKToKfiMhIHJuPU11YWRpYiBydD0xMDYwMzY5MjQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDI5MTA0Mgp1bmQgZGllIGFyYWJlciBoYWJlbiBkaWUgaW4gRXVyb3BhIHByb3BhZ2llcnQgdW5kIGlocmUgQmVudXR6dW5nIHZlcmJyZWl0ZXQ/CkhtbW0KCkFsa2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVY2hsYXVwISAoWm9vaywgMTEuIEF1ZyAyMDAzLCAxNjo0OTo1NSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTA2MDYxMzI5MiByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTA2MDYxMzI5MgpGZWVjaGVuPyBXYXNuIGRhcyBmdWVyIG5lIFVua2VuYXJ0PwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIHNjaGxpbW0gYmluIGljaCBhdWNoIG5pY2h0IChNb3Jnb3RoLCAxMS4gQXVnIDIwMDMsIDIzOjIxOjI3KToKRHUgcnVmc3Q6IHN0dWRlbnRlbnBhY2sgeml0dGVydCwgbW9yZ2VuIG11c3MgaWNoIHdpZWRlciBhcmJlaXRlbiA6KQpJZnJpdCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogU29tbWVybG9jaCAoR3JpbW1ib3JuLCAxMi4gQXVnIDIwMDMsIDExOjAxOjUzKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNjA2Nzg3OTEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNjAyOTEwNDIKV2lsbHN0IER1IHdpcmtsaWNoIGplZGVuLCBuYWNoIGRlbSBlaW4gUHJvZmlmdXNzYmFsbHN0YWRpb24gYmVuYW5udCBpc3QsIGluCmRpZSBMaXN0ZSBkZXIgd2ljaHRpZ3N0ZW4gTGV1dGUgYXVmbmVobWVuPyBEYXMgaXN0IGRvY2ggYWxiZXJuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBTb21tZXJsb2NoIChNb250YW51cywgMTIuIEF1ZyAyMDAzLCAxMTowNjo1OSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2MDY3ODkxMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjAyOTEwNDIKTmVpbiwgZGEgd3VlcmRlIGljaCBudXIgRnJpdHogV2FsdGVyIG5laG1lbi4KTmFjaCBTZXBwIEhlcmJlcmdlciB3dXJkZSBub2NoIGtlaW4gU3RhZGlvbiBiZW5hbm50LCBuYWNoIFRvbmkgVHVyZWssIE90dG1hcgpXYWx0ZXIsIE90dG8gS2xlZmYsIEhhbnMtUGV0ZXIgQnJpZWdlbCwgS2xhdXMgRmlzY2hlciwgTWFuZnJlZCBCcnVnc211ZWxsZXIKdW5kIExvZGRhbWFkZGFldXMgZWJlbmZhbGxzIG5pY2h0IEFGQUlLLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IFNvbW1lcmxvY2ggKEZvb2JhciwgMTIuIEF1ZyAyMDAzLCAxMToxNToyNik6Cn4jISBybj1Nb250YW51cyBydD0xMDYwNjc5MjE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDI5MTA0MgpTcGl0emUuCgpXaXJkIGRhbm4gYXVjaCAiQU9MIiBpbiBkaWUgTGlzdGUgYXVmZ2Vub21tZW4/IDpvKQoKRioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBTb21tZXJsb2NoIChHcmltbWJvcm4sIDEyLiBBdWcgMjAwMywgMTE6MTg6NDgpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNjA2Nzk3MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMjkxMDQyCkR1IG1laW5zdCBzaWNoZXIgIlRpbWUgV2FybmVyIjoKaHR0cDovL3d3dy5oZWlzZS5kZS9uZXdzdGlja2VyL2RhdGEvdG9sLTEyLjA4LjAzLTAwMS8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IFNvbW1lcmxvY2ggKEFsYm9pbiwgMTIuIEF1ZyAyMDAzLCAxMToxOTowNik6Cn4jISBybj1Nb250YW51cyBydD0xMDYwNjc5MjE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDI5MTA0MgpuYWphIGRhbm4gZ2Vob2VydCBzaWNoZXIgYXVjaCBkZXIgU2FtZW5iZXJhdWJ0ZSBCb3JpcyBCZWNrZXIgZGF6dSwgZGVyIG1hbAplaW5lbiBncm9zc2VuIFRlbm5pc2Jvb20gYXVzbG9lc3RlIC4uLgoKQWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMyOiBTb21tZXJsb2NoIChGb29iYXIsIDEyLiBBdWcgMjAwMywgMTE6NTg6MTkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjA2Nzk5Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwMjkxMDQyCgpNaXRuaWNodGVuLgoKRGFzIFN0YWRpb24gaGVpc3N0IC0gbm9jaCAtICJBT0wgQXJlbmEiIHVuZCBuaWNodCAiVGltZSBXYXJuZXIgQXJlbmEiLgoKRioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ld3MgRmxhc2g6IEZyYW5rZW5zdGVpbiB2b24gR2Vpc3Rlcm4gdmVybGFzc2VuIChab29rLCAxMi4gQXVnIDIwMDMsIDEzOjQ0OjU4KToKfiMhIG9uPVpvb2sgb3Q9MTA2MDY4ODY4OCBvZz1kLnVudGVyd2VsdAp+IyEgcm49TW9yZ290aCBydD0xMDYwNjg4NjQyIHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9MTA2MDY4ODQ2MwpXaWxsc3QgRHUgc2VoZW4sIHdpZSBOb25uZSBzaWNoIGhpbmtuaWV0IG9kZXIgd2FzPyA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5ld3MgRmxhc2g6IEZyYW5rZW5zdGVpbiB2b24gR2Vpc3Rlcm4gdmVybGFzc2VuIChEZWVwYmx1ZSwgMTIuIEF1ZyAyMDAzLCAxNDoyNjo1MSk6Cn4jISBvbj1EZWVwYmx1ZSBvdD0xMDYwNjkxMTIzIG9nPWQudW50ZXJ3ZWx0Cn4jISBybj1HcnVtcGYgcnQ9MTA2MDY5MDkyNSByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTEwNjA2ODg0NjMKQmVydWYgd2VjaHNlbG4ga2FubnN0ZSBhdWNoIFJMIGltbWVyLiBEaWUgUmFzc2Ugd2VjaHNlbG4gaGF0IGJpc2hlciBudXIgZWluCmdld2lzc2VyIE1pY2hhZWwgSmFja3NvbiB2ZXJzdWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBTb21tZXJsb2NoIChUcm95LCAxMi4gQXVnIDIwMDMsIDE3OjU4OjQwKToKfiMhIHJuPVpvb2sgcnQ9MTA2MDY4NjI2NiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA2MDI5MTA0Mgo6em9va3QgbWl0IGRlbiBTY2h1bHRlcm4uCgpUcm95CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNb2dnbC4uLiAoTXVwZmVsLCAxMi4gQXVnIDIwMDMsIDIwOjMwOjMzKToKRGVpbiBGcmV1bmQgTW9yZ290aCB0ZWlsdCBEaXIgbWl0OiB3YWVoLCBpY2ggYmluIHNjaHdhbmdlciBvZGVyIGtyYW5rCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1vZ2dsLi4uIChSb2NodXMsIDEyLiBBdWcgMjAwMywgMjI6MTE6NDgpOgp+IyEgcm49TXVwZmVsIHJ0PTEwNjA3MTMwMzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwNzEzMDMzCjguIE1vbmF0LCBzY2hvbiBzZWl0IHVlYmVyIDIgSmFocmVuIDotKQoKICBSb2NodXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCbGFjayBFbGJlbiBGZXN0aXZhbCAoR3JpbW1ib3JuLCAxMy4gQXVnIDIwMDMsIDA5OjA1OjMyKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA2MDcyNTk4OCByZz1hbnplaWdlbgp+IyEgdGlkPTEwNjA3MjU5ODgKSWNoIHdldHRlIGRhIGdpYnRzIGVpbmVuIHNjaG9lbmVuIFdhbGQgaW4gZGVyIE5hZWhlLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQmxhY2sgRWxiZW4gRmVzdGl2YWwgKE1vcmdvdGgsIDEzLiBBdWcgMjAwMywgMDk6MDc6MTMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjA3NTgzMzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwNzI1OTg4CkluIEhhbW0gZ2lidHMga2VpbmUgc2Nob2VuZW4gV2FlbGRlciA6KQpBYmVyIGRhIGlzdCBkaXJla3QgZGVyIE1heGltaWxpYW5wYXJrIGluIGRlciBOYWVoZS4gRGEgd2FyIHZvciAqZ3J1ZWJlbCogMTUKSmFocmVuIG1hbCBkaWUgTGFuZGVzZ2FydGVuc2NoYXUuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFybWFnZWRkb24gLi4uIChNb3Jnb3RoLCAxMy4gQXVnIDIwMDMsIDA5OjE1OjE4KToKfiMhIHJuPVZhbmlvbiBydD0xMDYwNzU4NzA1IHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDYwNzU4NzA1Cj5HbGVpY2hlcyBnaWx0IGltIFByaW56aXAsIHdlbm4gZWluIGZpZXNlLCBib2VzZSBGYWxsZSBwbG9ldHpsaWNoCj5udW4ga2VpbmUgTFAvTVAgbWVociBhYnppZWh0LgoKSGFidCBpaHIgYXVjaCBkb19kYW1hZ2UoKSBnZWFlbmRlcnQ/CgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxMIChNb3Jnb3RoLCAxMy4gQXVnIDIwMDMsIDEwOjU1OjMwKToKR3JpbWZlYXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCltUb2Q6TGFyc10gRWluIEJhbm5rcmVpcyBoYXQgZ2VyYWRlIEdyaW1mZWFyIHVtZ2VicmFjaHQuCgpTbyBzdGlyYnQgbWFuIGFscyBEdW5rZWx6d29lbGYKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxMIChHcmltbWJvcm4sIDEzLiBBdWcgMjAwMywgMTA6NTg6NTApOgp+IyEgcm49TW9yZ290aCBydD0xMDYwNzY0OTMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDc2NDkzMApEaWUgRnJhZ2UgaXN0IGVoZXI6IFdlciB1ZWJ0IGRhIGRhcyBCZXNjaHdvZXJlbiB2b24gTmVnZXJlbGZlbj8gVW5kIHdhciBkZXIKQmFubmtyZWlzIG51biBlcmZvbGdyZWljaCBvZGVyIG5pY2h0PwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMTCAoQ3JvZnQsIDEzLiBBdWcgMjAwMywgMTE6MDI6NDIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjA3NjUxMzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwNzY0OTMwCkRlciBOZWdlcmVsZiBzZWxic3QuICBVbmQgZXJmb2xncmVpY2ggd2FyIGVyIG5pY2h0LCBkYSBlciBqYSBnZXN0b3JiZW4gaXN0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZMTCAoQ3JvZnQsIDEzLiBBdWcgMjAwMywgMTE6MDQ6MTcpOgp+IyEgcm49Q3JvZnQgcnQ9MTA2MDc2NTM2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA3NjQ5MzAKQWxzbyBhdXMgc2VpbmVyIFNpY2h0LiAgQXVzIGRlaW5lciBTaWNodCB3YXIgZGVyIEJhbm5rcmVpcyBuYXR1ZXJsaWNoCmVyZm9sZ3JlaWNoLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZMTCAoSHVyYXhwcmF4LCAxMy4gQXVnIDIwMDMsIDExOjA0OjQ1KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNjA3NjUzNjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwNzY0OTMwCkRlciBCYW5ua3JlaXMgd2FyIHNjaG9uIGVyZm9sZ3JlaWNoLCBlaGVyIHp1IGVyZm9sZ3JlaWNoIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJsYWNrIEVsYmVuIEZlc3RpdmFsIChBbWFyeWxsaXMsIDEzLiBBdWcgMjAwMywgMTk6NTM6MzMpOgp+IyEgcm49RGFya3dpbmcgcnQ9MTA2MDc5NzA2MiByZz1hbnplaWdlbgp+IyEgdGlkPTEwNjA3MjU5ODgKU3R1cHN0IGRlcj8KCkZyYWdlbmQsIApBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogTmV3cyBGbGFzaDogRnJhbmtlbnN0ZWluIHZvbiBHZWlzdGVybiB2ZXJsYXNzZW4gKERlZXBibHVlLCAxNC4gQXVnIDIwMDMsIDA5OjExOjM3KToKfiMhIHJuPVRyb3kgcnQ9MTA2MDg0MDgwOSByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTEwNjA2ODg0NjMKWnVtIHBvc2VuIGxlaWggaWNoIG1pciBkYXMgMzAwMEV1cm8tUmVubnJhZCBtZWluZXMgS3VtcGVscyB1bmQgZmFociBkYW1pdCBtaXQKZ2VvZWx0ZW4gQmVpbmVuIHp1ciBuYWVjaHN0ZW4gRWlzZGllbGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogTmV3cyBGbGFzaDogRnJhbmtlbnN0ZWluIHZvbiBHZWlzdGVybiB2ZXJsYXNzZW4gKE11YWRpYiwgMTQuIEF1ZyAyMDAzLCAwOTo1MjozMCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDYwODQ1MDk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDY4ODQ2MwphY2ggc28gZWluZXIgYmlzdCBkdQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IE5ld3MgRmxhc2g6IEZyYW5rZW5zdGVpbiB2b24gR2Vpc3Rlcm4gdmVybGFzc2VuIChHcmltbWJvcm4sIDE0LiBBdWcgMjAwMywgMTE6MDY6NTkpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwNjA4NTIwMTMgb2c9ZC51bnRlcndlbHQKfiMhIHJuPVpvb2sgcnQ9MTA2MDg1MTk2NyByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTEwNjA2ODg0NjMKV2FzIHNvbGxlbiBIYWxiZWxmZW4gZGVubiBzZWluLCBzb3dhcyB3aWUgZGllIEh1b3Jucz8gV29iZWksIHNvIGVpbmUKSGFsYmJhdW1yYXNzZSwgZGFzIHdhZXJlIHNjaG9uIHdhcy4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMjogTmV3cyBGbGFzaDogRnJhbmtlbnN0ZWluIHZvbiBHZWlzdGVybiB2ZXJsYXNzZW4gKFpvb2ssIDE0LiBBdWcgMjAwMywgMTE6MDg6NDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjA4NTIwMTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwNjg4NDYzClNvd2FzIHdpZSBSdW1hdGE/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhoaGphLCBzaWUgbWFnIE9ya3MgKE1vcmdvdGgsIDE0LiBBdWcgMjAwMywgMTM6NDU6MTIpOgpHbmFya3pzY2ggICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbmUgRnJldW5kaW4gTWFoYXJldCBncmluc3QgbHVlc3Rlcm4uICBbMTM6NDRdCkduYXJrenNjaCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCk0qIGdyaW5zdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IE5ld3MgRmxhc2g6IEZyYW5rZW5zdGVpbiB2b24gR2Vpc3Rlcm4gdmVybGFzc2VuIChEZWVwYmx1ZSwgMTQuIEF1ZyAyMDAzLCAxNjoyODoxMCk6Cn4jISBybj1Nb250YW51cyBydD0xMDYwODcxMjUyIHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9MTA2MDY4ODQ2MwpEYW5uIGdlaHQgZXIgaW5zIEhvc3BpdGFsIHZvbiBuaWJlbGhlaW0uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBOZXdzIEZsYXNoOiBGcmFua2Vuc3RlaW4gdm9uIEdlaXN0ZXJuIHZlcmxhc3NlbiAoR3JpbW1ib3JuLCAxNC4gQXVnIDIwMDMsIDE3OjM5OjAyKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwNjA4NzQyODAgcmc9ZC51bnRlcndlbHQKfiMhIHRpZD0xMDYwNjg4NDYzCkR1IGZpbmRlc3QgRWxmZW4gYW56aWVoZW5kPyBCaXN0IER1IGVpbi4uLiBCYXVtPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogTmV3cyBGbGFzaDogRnJhbmtlbnN0ZWluIHZvbiBHZWlzdGVybiB2ZXJsYXNzZW4gKERlZXBibHVlLCAxNC4gQXVnIDIwMDMsIDIyOjU2OjQ1KToKfiMhIHJuPU11cGZlbCBydD0xMDYwODkzODQ1IHJnPWQudW50ZXJ3ZWx0Cn4jISB0aWQ9MTA2MDY4ODQ2MwpXZW5uIGljaCBzbyAtVCBsZXNlIGZhZWxsdCBtaXIgd29obCBlaGVyIE5hY2h0c2NoYXR0ZW5nZXdhZWNocyBlaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBOZXdzIEZsYXNoOiBGcmFua2Vuc3RlaW4gdm9uIEdlaXN0ZXJuIHZlcmxhc3NlbiAoVHdpbGlnaHQsIDE0LiBBdWcgMjAwMywgMjM6NDg6NTEpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTA2MDg5NDYwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA2ODg0NjMKTmEgenVtaW5kZXN0IGJpbiBpY2ggZGVmLiBrZWluIE5lZ2VyZWxmLCBkZW5uIGRhbm4gaGFldHQgaWNoIG5lbiBwYWFyIFRvZGUKd2VuaWdlci4KClR3aWxpZ2h0ICpmbGl0enQgZWlsaWcgd2llZGVyIGF1cyBkZXIgU29ubmUgdW5kIGlucyBuYWVjaHN0ZSBTZWhlcmhhdXMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXTUEgbG9zc2xlc3MgLT4gbXAzPyAoR3JpbW1ib3JuLCAxNS4gQXVnIDIwMDMsIDExOjM3OjU0KToKfiMhIHJuPUphbWVzb24gcnQ9MTA2MDk0MDE2NCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDYwOTM4OTQ0CiJNYWRvbm5hcyBTdGltbWUgZmVpbmUgWmlzY2hsYXV0ZSI/IC0gU3RpbW10LCB3ZW5uIGRpZSAiZmVpbiIgd2FyZW4gZGFubiBpc3QKZGFzIGFuZGVycyBhbHMgaW0gT3JpZ2luYWwuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFia3Vlcnp1bmcgKFpvb2ssIDE1LiBBdWcgMjAwMywgMTM6MDY6MjYpOgp+IyEgb249Wm9vayBvdD0xMDYwOTQ1NTY2IG9nPWQuaW5zZWxuCn4jISBybj1NaXJpbCBydD0xMDYwOTQyODM2IHJnPWQuaW5zZWxuCn4jISB0aWQ9MTA2MDk0MjgzNgpXZWlzcyBpdHRpQGFuZGVybGFuZCBhdWNoIHZvbiBkaWVzZXIgQWJrdWVyenVuZz8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFia3Vlcnp1bmcgKEJvaW5nLCAxNS4gQXVnIDIwMDMsIDEzOjMxOjM2KToKfiMhIHJuPVpvb2sgcnQ9MTA2MDk0NTU4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NDI4MzYKQWxzbyB6dW0gVGhlbWEgU1NQIGhhdCBlciBudXIgTWlzdCBlcnphZWhsdCAuLi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRnJhY2h0Z3V0IChHcmltbWJvcm4sIDE1LiBBdWcgMjAwMywgMTQ6NTc6MzkpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwNjA5NTIyNTMgb2c9ZC5pbnNlbG4KfiMhIHJuPUNhdHdlYXpsZSBydD0xMDYwOTUyMDE1IHJnPWQuaW5zZWxuCn4jISB0aWQ9MTA2MDk0MjUwMQpTbyBrb2VubmVuIGF1Y2ggQW5mYWVuZ2VyIGVpbmVuIEZldWVyYmFsbCBtYWNoZW46IEhvZWhlbnNvbm5lIG1pdG5laG1lbiwgdW5kCmFua25pcHNlbiB3ZW5uIGVpbiBEZWxmIGRhYmVpIGlzdC4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEZyYWNodGd1dCAoV2hpdGV0aWdlciwgMTUuIEF1ZyAyMDAzLCAxNTowMzozNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2MDk1MjI1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NDI1MDEKRGEgYmVrb21tdCBkZXIgIkxpY2h0Ii1TcHJ1Y2ggZ2xlaWNoIGVpbmUgZ2FueiBhbmRlcmUgQmVkZXV0dW5nLi4uCkFiZW50ZXVyZXIgYWJ3ZXJ0ZW4hIDspCgpXaGl0ZVRpZ2VyCgpQUzogWmF1YmlzICYgY28uIGRhbm4gbmF0dWVybGljaCBhdWNoLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBGcmFjaHRndXQgKFRyb3ksIDE1LiBBdWcgMjAwMywgMTY6MTU6MTYpOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDYwOTUyNjE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk0MjUwMQo6aXN0IGZ1ZXIgZWluZW4gIlNvbm5lbmZldWVyIi1TcHJ1Y2ggZnVlciBLbGVyaWtlci4KCihOb3JtYWxlcndlaXNlIGdlZ2VuIFVudG90ZSB3aXJrc2FtLCBhYmVyIG1hbiB3ZWlzcyBqYSBuaWUuLi4pCgpUcm95CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBGcmFjaHRndXQgKERlZXBibHVlLCAxNS4gQXVnIDIwMDMsIDE2OjE2OjM4KToKfiMhIHJuPVRyb3kgcnQ9MTA2MDk1NjkxNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NDI1MDEKYWxpYXMgc29ubmVuZmV1ZXIgZXJsb2VzZSAkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoR3JpbW1ib3JuLCAxNS4gQXVnIDIwMDMsIDE3OjE5OjQzKToKfiMhIG9uPVRyb3kgb3Q9MTA2MDk2MDIxMyBvZz13d3cKfiMhIHJuPUh1bW5pIHJ0PTEwNjA5NTk5MTMgcmc9d3d3Cn4jISB0aWQ9MTA2MDk1OTkxMwpLb3NoIHZvbiBCYWJ5bG9uIDUuLi4KClRyb3kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChHcmltbWJvcm4sIDE1LiBBdWcgMjAwMywgMTc6MTk6NDUpOgp+IyEgb249V2hpdGV0aWdlciBvdD0xMDYwOTYwMjUzIG9nPXd3dwp+IyEgcm49VHJveSBydD0xMDYwOTYwMjEzIHJnPXd3dwp+IyEgdGlkPTEwNjA5NTk5MTMKU3BvY2sgLyBTdGFyVHJlay4uLgoKQSBmb2N1c2VkIGFkdmlzb3Igd2hvc2UgYWN0aW9ucyBhcmUgZGljdGF0ZWQgYnkgYWxtb3N0IHB1cmUgbG9naWMsIHlvdSBiZWxpZXZlCmluIGV4cGxvcmluZyB0aGUgZmFzY2luYXRpbmcgcG9zc2liaWxpdGllcyBhcm91bmQgeW91LgoKTG9naWMgY2xlYXJseSBkaWN0YXRlcyB0aGF0IHRoZSBuZWVkcyBvZiB0aGUgbWFueSBvdXR3ZWlnaCB0aGUgbmVlZHMgb2YgdGhlCmZldy4KCgoKV2hpdGVUaWdlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKEdyaW1tYm9ybiwgMTUuIEF1ZyAyMDAzLCAxNzoxOTo0Nik6Cn4jISBvbj1Gb29iYXIgb3Q9MTA2MDk2MDI2MSBvZz13d3cKfiMhIHJuPVRyb3kgcnQ9MTA2MDk2MDIxMyByZz13d3cKfiMhIHRpZD0xMDYwOTU5OTEzCkdpbWxpLgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKEdyaW1tYm9ybiwgMTUuIEF1ZyAyMDAzLCAxNzoxOTo0Nyk6Cn4jISBvbj1BbGtvaG9sIG90PTEwNjA5NjAyOTkgb2c9d3d3Cn4jISBybj1Gb29iYXIgcnQ9MTA2MDk2MDI2MSByZz13d3cKfiMhIHRpZD0xMDYwOTU5OTEzClNhbSBHYW1nZWUKCkFsawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChHcmltbWJvcm4sIDE1LiBBdWcgMjAwMywgMTc6MTk6NDgpOgp+IyEgb249TW9yZ290aCBvdD0xMDYwOTYwNDU3IG9nPXd3dwp+IyEgcm49Rm9vYmFyIHJ0PTEwNjA5NjAyNjEgcmc9d3d3Cn4jISB0aWQ9MTA2MDk1OTkxMwpNYWduZXRvIChYLU1lbikgOikKCk0qIG1hZyB3b2hsIE0qLU5hbWVuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChHcmltbWJvcm4sIDE1LiBBdWcgMjAwMywgMTc6MTk6NDkpOgp+IyEgb249QmFtYnVsa28gb3Q9MTA2MDk2MDY3NiBvZz13d3cKfiMhIHJuPU1vcmdvdGggcnQ9MTA2MDk2MDQ1NyByZz13d3cKfiMhIHRpZD0xMDYwOTU5OTEzCldlc2xleSBDcnVzaGVyCiAKQWFhYWFhYXJnaGguIFd1ZXJnISBTZWxic3Rsb2VzY2h1bmchCkRhcyBpc3Qgd2lya2xpY2ggZGllIEhvZWNoc3RzdHJhZmUuIEFiZXIgd2VuaWdzdGVucyBiaW4gaWNoIGVocmxpY2ggOi0pCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChHcmltbWJvcm4sIDE1LiBBdWcgMjAwMywgMTc6MTk6NTApOgp+IyEgb249R2xvaW5zb24gb3Q9MTA2MDk2MDY4NiBvZz13d3cKfiMhIHJuPU1vcmdvdGggcnQ9MTA2MDk2MDQ1NyByZz13d3cKfiMhIHRpZD0xMDYwOTU5OTEzCktpcmsKCkFuIGltcGFzc2lvbmVkIGNvbW1hbmRlciB3aXRoIG1vcmUgcmVzcGVjdCBmb3IgaW5kaXZpZHVhbHMgdGhhbiBmb3IgYXV0aG9yaXR5LAp5b3UgaGF2ZSBhIG5vLWhvbGRzLWJhcnJlZCBhcHByb2FjaCB0byBsaWZlIGFuZCBpdHMgb2JzdGFjbGVzLgoKIkkgZG9uJ3QgYmVsaWV2ZSBpbiB0aGUgbm8td2luIHNjZW5hcmlvLiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKEdyaW1tYm9ybiwgMTUuIEF1ZyAyMDAzLCAxNzoxOTo1MSk6Cn4jISBvbj1XaGl0ZXRpZ2VyIG90PTEwNjA5NjA3MTggb2c9d3d3Cn4jISBybj1CYW1idWxrbyBydD0xMDYwOTYwNjc2IHJnPXd3dwp+IyEgdGlkPTEwNjA5NTk5MTMKV2VyIGlzIGRlbm4gV2VzbGV5IENydXNoZXI/CgpUaWdlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChHcmltbWJvcm4sIDE1LiBBdWcgMjAwMywgMTc6MTk6NTIpOgp+IyEgb249VHJveSBvdD0xMDYwOTYwNzQzIG9nPXd3dwp+IyEgcm49V2hpdGV0aWdlciBydD0xMDYwOTYwNzE4IHJnPXd3dwp+IyEgdGlkPTEwNjA5NTk5MTMKRHUgKndpbGxzdCogZXMgbmljaHQgd2lzc2VuIQoKVHJveQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChHcmltbWJvcm4sIDE1LiBBdWcgMjAwMywgMTc6MTk6NTMpOgp+IyEgb249V2hpdGV0aWdlciBvdD0xMDYwOTYwNzUzIG9nPXd3dwp+IyEgcm49VHJveSBydD0xMDYwOTYwNzQzIHJnPXd3dwp+IyEgdGlkPTEwNjA5NTk5MTMKRG9jaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoR3JpbW1ib3JuLCAxNS4gQXVnIDIwMDMsIDE3OjE5OjU0KToKfiMhIG9uPUh1bW5pIG90PTEwNjA5NjA3NzEgb2c9d3d3Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwNjA5NjA3NTMgcmc9d3d3Cn4jISB0aWQ9MTA2MDk1OTkxMwpXZWlzc3QgRHUgZGFzIG5pY2h0PyBTY2hhdSBtYWwgZGllIGVyc3RlbiBTdGFmZmVsIHZvbiBUaGUgTmV4dCBnZW5lcmF0aW9uLgoKVW5kIGphLCBpY2ggd3VlcmRlIG1pY2ggYXVjaCBsb2VzY2hlbiwgZ2xhdWIgaWNoLiBBcm1lciBCYW1idWxrby4uLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoVHJveSwgMTUuIEF1ZyAyMDAzLCAxNzoyMDoxNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2MDk2MDc5NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NTk5MTMKaHR0cDovL21hcmlvLmxhcGFtLm1vLml0L3RuZy93ZXNsZXkuaHRtCgpUcm95CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKEdyaW1tYm9ybiwgMTUuIEF1ZyAyMDAzLCAxNzoyMDoyNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2MDk2MDc5NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NTk5MTMKU29ycnksIEp1bmdzLCBhYmVyIGRpc2t1c3Npb24gd2FyIHNjaG9uIHp1Z2VtdWVsbHQsIGRhIG11c3N0ZSBoYWx0IHNjaG1hcnJuCmhlcmhhbHRlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKEdyaW1tYm9ybiwgMTUuIEF1ZyAyMDAzLCAxNzoyMDozNyk6Cn4jISBvbj1JbWRhIG90PTEwNjA5NjA4MjMgb2c9d3d3Cn4jISBybj1IdW1uaSBydD0xMDYwOTYwNzcxIHJnPXd3dwp+IyEgdGlkPTEwNjA5NTk5MTMKd2FyIGRhcyBuZWQgZGVyCnN0YXJ0cmVrLXN0cmViZXItdmVnZXRhcmllci1hbnRpYWxrb2hpbGlrZXItbmljaHRyYXVjaGVyLWhvY2JlZ2FidGVuLXdpY2hzZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChHbG9pbnNvbiwgMTUuIEF1ZyAyMDAzLCAxNzoyMjoxNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2MDk2MDgzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NTk5MTMKV2VuaWdzdGVucyBrcmllZyBpY2ggaW4gamVkZXIgendlaXRlbiBGb2xnZSAnbmUgbmV1ZSBGcmF1LiBOdXIgZGllIHN0YWVuZGlnZW4KRmF1c3RrYWVtcGZlIG5lcnZlbiBtaWNoIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChHcmltbWJvcm4sIDE1LiBBdWcgMjAwMywgMTc6MjM6NDIpOgp+IyEgb249R2xvaW5zb24gb3Q9MTA2MDk2MDg1MyBvZz13d3cKfiMhIHJuPVRyb3kgcnQ9MTA2MDk2MDc0MyByZz13d3cKfiMhIHRpZD0xMDYwOTU5OTEzCldlcyBDcnVzaGVyIGlzdCBlaW4ga2xlaW5lciBldHdhcyB6dSBpbnRlbGxpZ2VudGVyIHVuZCB2b3JsYXV0ZXIgSnVuZ2UgYXVzClN0YXIgVHJlayBOZXh0IEdlbmVyYXRpb24uIEVzIHdpcmQgamEgdmVybXV0ZXQsIGRhc3Mgc2ljaCBSb2RlbmJlcnJ5IGluIGRlcgpQZXJzb24gZWluIGtsZWluZXMgTmVydmRlbmttYWwgZ2VzZXR6dCBoYXQuIEdpYnQgamVkZW5mYWxscyBHcnVwcGVuIHdpZQoiYWx0Lndlc2VsZXkuZGllLmRpZS5kaWUiLiBBYmVyIHNvIHNjaGxpbW0gZmluZGUgaWNoIGRlbiBnYXIgbmljaHQgLi4uIG1hbgpiZWdlZ25ldCBpbSBNVUQgYmVzc2Vyd2lzc2VyaXNjaGVyZW4gYWxzIGlobSA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoR3JpbW1ib3JuLCAxNS4gQXVnIDIwMDMsIDE3OjIzOjQ0KToKfiMhIG9uPUh1bW5pIG90PTEwNjA5NjA5Mzcgb2c9d3d3Cn4jISBybj1HbG9pbnNvbiBydD0xMDYwOTYwODUzIHJnPXd3dwp+IyEgdGlkPTEwNjA5NTk5MTMKTWVpbiBQcm9ibGVtIHdhciBpbW1lciwgZGFzcyBlciBlaW5mYWNoIG5pY2h0IGRhIHJlaW4gcGFzc3RlLiBEYXMgV3VuZGVya2luZC4KU29uc3Qgd2FyIGRpZSBTZXJpZSBlY2h0IGtsYXNzZSwgYWJlciBkaWUgV2VzbGV5LVRlaWxlIGhhYmVuIGVpbmZhY2ggZ2VuZXJ2dC4KRGVyIFd1bmRlcmp1bmdlLCBkZXIgYXVmIGRlciBCcnVlY2tlIHNpdHplbiBkYXJmLi4uIGljaCBnbGF1YmUgZWhlciwgZXIgd2FyCmRhenUgZGEsIHVtIGtsYXJ6dW1hY2hlbiwgZGFzcyBQaWNhcmQgbWl0IEtpbmRlcm4gUHJvYmxlbWUgaGF0LgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoR3JpbW1ib3JuLCAxNS4gQXVnIDIwMDMsIDE3OjI0OjQyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDYwOTYxMDIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk1OTkxMwpKZXBwLCBpY2ggd2Vpc3Mgei5CLiBiZXNzZXIgaW4gd2VsY2hlIFJ1YnJpa2VuIGRpZSBBcnRpa2VsIGdlaG9lcmVuLi4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoR3JpbW1ib3JuLCAxNS4gQXVnIDIwMDMsIDE3OjI0OjUwKToKfiMhIG9uPUdsb2luc29uIG90PTEwNjA5NjEwNjggb2c9d3d3Cn4jISBybj1IdW1uaSBydD0xMDYwOTYwOTM3IHJnPXd3dwp+IyEgdGlkPTEwNjA5NTk5MTMKTkEgd2VuaWdzdGVucyB3YXIgZXIgbWFsIGVpbiBlY2h0ZXIgV3VuZGVya25hYmUuIERpZSBhbmRlcmVuIHNpbmQgamEgYXVjaApkYXVlcm5kZSBXdW5kZXJrbmFiZW4sIGJlaSBkZW5lbiB3aXJkIGRhcyBudXIgbmljaHQgc28gaW4gZGVuIFZvcmRlcmdydW5kCmdlc2Nob2Jlbi4gTmllIG1pc3NsaW5ndCB3aXJrbGljaCB3YXMsIGFsbGVzIGdlaHQgaW1tZXIgcHJpbWEgdW5kIGF1Y2ggR2VvcmRpCmFldXNzZXIgbmllIHNvd2FzIHdpZSAiTWVpbmUgYXJtZW4gQmFiaWVzISIuIEluIGRlciBIaW5zaWNodCBtYWcgaWNoCkRTOStCYXNoaXIuIFd1bmRlcmtuYWJlIGRlciBlYmVuIHRyb3R6IGRlcyBQb3RlbnRpYWxzIGF1Y2ggbWFsIHNjaGVpdGVydC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKEdsb2luc29uLCAxNS4gQXVnIDIwMDMsIDE3OjI2OjEyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDYwOTYxMDgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk1OTkxMwpEdSBiaXN0IGphIGhhcm1sb3MuIFNvIGluIGV0d2EgUmVnaW5hbGQgQmFyY2xheS1OaXZlYXUsIG51ciBvaG5lIGRpZSByZWFsZQpQZXJzb25lbiB3aWRlcnNwaWVnZWxuZGVuIE5QQ3MuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoTWFuZHJhZ29uLCAxNS4gQXVnIDIwMDMsIDE3OjUxOjU3KToKfiMhIHJuPUh1bW5pIHJ0PTEwNjA5NTk5MTMgcmc9d3d3Cn4jISB0aWQ9MTA2MDk1OTkxMwoKSG1tLiBKZWFuLUx1YyBNYW5kcmFnb24gaXN0IGpldHp0IGV0d2FzIHVlYmVycmFzY2h0IC4uLgoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoTXVhZGliLCAxNS4gQXVnIDIwMDMsIDE4OjIzOjI0KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDYwOTYyNzE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk1OTkxMwpobW0KamVhbi1sdWMgcGljYXJkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKEJpZWxlZmVsZCwgMTUuIEF1ZyAyMDAzLCAxODoyNzo1MSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA2MDk2NDYwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NTk5MTMKV2hvb29wcy4uLiBMZW9uYXJkIE1jQ295CgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKEFuYXRvbCwgMTUuIEF1ZyAyMDAzLCAxODo0NjoyOCk6Cn4jISBybj1CaWVsZWZlbGQgcnQ9MTA2MDk2NDg3MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NTk5MTMKR2FsYWRyaWVsLgoKRmVtaW5pbmUgWnVlZ2UgYW4KQW5hdG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChNYWhhcmV0LCAxNS4gQXVnIDIwMDMsIDE4OjQ3OjEwKToKfiMhIHJuPUFuYXRvbCBydD0xMDYwOTY1OTg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk1OTkxMwpDYXB0YWluIEphbWVzIFRpYmVyaXVzIEtpcmsKCk1haGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoT2dvLCAxNS4gQXVnIDIwMDMsIDE4OjU4OjM1KToKfiMhIHJuPU1haGFyZXQgcnQ9MTA2MDk2NjAzMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NTk5MTMKTmljY29sbyBNYWNoaWF2ZWxsaQoKT2dvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKE1hbmRyYWdvbiwgMTUuIEF1ZyAyMDAzLCAxOTowODo0Mik6Cn4jISBybj1PZ28gcnQ9MTA2MDk2NjcxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NTk5MTMKOmtyaWVndCBhbmdzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoQXBvbGxvbmlhLCAxNS4gQXVnIDIwMDMsIDE5OjEzOjA0KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDYwOTY3MzIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk1OTkxMwpJY2ggYmluIEx1a2UgU2t5d2Fsa2VyLiBNdXNzIGljaCBtaWNoIGRhZnVlciBqZXR6dCBzY2hhZW1lbj8KCkFwbyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoTm9ubmUsIDE1LiBBdWcgMjAwMywgMTk6MTU6NTgpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwNjA5Njc1ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwOTU5OTEzClVuZCBpY2ggYmluICp0YXRhYWFhYWFhYWEqIFlvZGEhCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKEFwb2xsb25pYSwgMTUuIEF1ZyAyMDAzLCAxOToxNjozMik6Cn4jISBybj1Ob25uZSBydD0xMDYwOTY3NzU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk1OTkxMwpVbmQgZGVyIGlzIGF1Y2ggdGF0c2FlY2hsaWNoIG5vY2ggc3RvbHogZHJhdWYsIGtsZWluIHVuZCBncnVlbiB6dSBzZWluIHVuZAonS29taXNzIE9ocmVuJyB6dSBoYWJlbiAqZyoKCkFwbyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKEtlbHJpcywgMTUuIEF1ZyAyMDAzLCAxOToyMzoxMSk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTA2MDk2Nzc5MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NTk5MTMKCkRheCAoRFM5KQoKS2VscmlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChNb3Jnb3RoLCAxNS4gQXVnIDIwMDMsIDE5OjIzOjI1KToKfiMhIHJuPUtlbHJpcyBydD0xMDYwOTY4MTkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk1OTkxMwpXZWxjaGUocikgPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKEtlbHJpcywgMTUuIEF1ZyAyMDAzLCAxOToyNToxMyk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNjA5NjgyMDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwOTU5OTEzCgpMdC4gSmFkemlhIERheCAqZyoKCktlbHJpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChBcmssIDE1LiBBdWcgMjAwMywgMjA6NDA6NTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjA5NjA3ODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwOTU5OTEzCkdhbmRhbGYgOi0pCkEgd2FuZGVyaW5nIHNwaXJpdCBjYXJpbmcgZm9yIGEgbXVsdGl0dWRlIG9mIGp1c3QgY29uY2VybnMsIHlvdSBhcmUgYW4KaW5zdHJ1bWVudGFsIHBvd2VyIGluIG1hbnkgb2YgdGhlIGNhdXNlcyBhcm91bmQgeW91LgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKEdyaW1tYm9ybiwgMTUuIEF1ZyAyMDAzLCAyMDo0MjoxNCk6Cn4jISBvbj1Bbm9yaXMgb3Q9MTA2MDk3MDgzMyBvZz13d3cKfiMhIHJuPUh1bW5pIHJ0PTEwNjA5NTk5MTMgcmc9d3d3Cn4jISB0aWQ9MTA2MDk1OTkxMwpTZWkgZnJvaCwgaWNoIHd1cmRlIGFscyBXZXNsZXkgQ3J1c2hlciBhYmdldGFuIC4uICpzbnVlZioKCi0gQW5vcmlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoSG9ibywgMTUuIEF1ZyAyMDAzLCAyMTo0NToyOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2MDk3MjkzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NTk5MTMKT2JpLVdhbiBLZW5vYmk6CndpdGggdGhlIHByb3dlc3Mgb2YgYSBzZWFzb25lZCBzYW11cmFpIGFuZCB0aGUgd2lzZG9tIG9mIGEgd2l6YXJkLCB5b3UgdHJ5IHRvCmRvIHRoZSBzb3J0IG9mIHRoaW5ncyB0aGF0IHJvb3Qgb3V0IGV2aWwuCgogKmh1ZXN0ZWwqCgogICAgSG9ibwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChHbG9pbnNvbiwgMTUuIEF1ZyAyMDAzLCAyMzowMToxNik6Cn4jISBybj1Ib2JvIHJ0PTEwNjA5NzY3Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwOTU5OTEzCkRhcyB3aWNodGlnc3RlIGRhcmFuIGlzdCB3b2hsICJ5b3UgdHJ5IHRvIGRvIHRoZSBzb3J0IG9mIHRoaW5ncyIuIEJlbiBLZW5vYmkKd2FyIGphIHdvaGwgZGVyIGdyb2Vzc3RlIExvb3NlciBpbiBkZXIgZ2FuemVuIEdlc2NoaWNodGUuIE51ZXNjaHQgd2FzIGVyCmFuZmFzc3QgbGFldWZ0IHJpY2h0aWcuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoR3JpbW1ib3JuLCAxNS4gQXVnIDIwMDMsIDIzOjAxOjUyKToKfiMhIG9uPVNreSBvdD0xMDYwOTgwMDE1IG9nPXd3dwp+IyEgcm49SHVtbmkgcnQ9MTA2MDk1OTkxMyByZz13d3cKfiMhIHRpZD0xMDYwOTU5OTEzCk9iaS1XYW4gS2Vub2JpIAoKRGVuIGtlbm4gaWNoIHdlbmlnc3RlbnMsIGZpbmQgaW4gYWJlciBkZW5ub2NoIGJsb2VkIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKEJyYW4sIDE2LiBBdWcgMjAwMywgMDM6MDY6MDIpOgp+IyEgcm49TXVhZGliIHJ0PTEwNjA5NjQ2MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwOTU5OTEzClByaW5jZXNzIExlaWEuIEpldHp0IGJyYXVjaCBpY2ggbnVyIG5vY2ggZGllc2UgdG9sbGUgRnJpc3VyLi4uCkJyYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoQW5hdG9sLCAxNi4gQXVnIDIwMDMsIDA5OjE2OjMwKToKfiMhIHJuPUJyYW4gcnQ9MTA2MDk5NTk2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NTk5MTMKSGVmZXpvZXBmZSBnaWJ0cyBiZWltIEJhZWNrZXIgRGVpbmVyIFdhaGwuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChCcmFuLCAxNi4gQXVnIDIwMDMsIDEyOjQ2OjQzKToKfiMhIHJuPUFuYXRvbCBydD0xMDYxMDE4MTkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk1OTkxMwpIdWVic2NoIHNvPwoKQnJhbiwgendlaSBTY2hva29zY2huZWNrZW4gYXVmIGRpZSBFbGZlbm9ocmVuIGdlc3RlY2t0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKENyb2Z0LCAxNi4gQXVnIDIwMDMsIDEyOjQ3OjI1KToKfiMhIHJuPUJyYW4gcnQ9MTA2MTAzMDgwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NTk5MTMKOnNjaGF1dCBCcmFuIGh1bmdyaWcgYW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChBcmVsZWlhcywgMTYuIEF1ZyAyMDAzLCAxMjo1NjoyNyk6Cn4jISBybj1Dcm9mdCBydD0xMDYxMDMwODQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk1OTkxMwpKYW1lcyBULiBLaXJrCgpBbiBpbXBhc3Npb25lZCBjb21tYW5kZXIgd2l0aCBtb3JlIHJlc3BlY3QgZm9yIGluZGl2aWR1YWxzIHRoYW4gZm9yIGF1dGhvcml0eSwKeW91IGhhdmUgYSBuby1ob2xkcy1iYXJyZWQgYXBwcm9hY2ggdG8gbGlmZSBhbmQgaXRzIG9ic3RhY2xlcy4KCkkgZG9uJ3QgYmVsaWV2ZSBpbiB0aGUgbm8td2luIHNjZW5hcmlvLgoKCkFyZWxlaWFzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBYmt1ZXJ6dW5nIChNdXBmZWwsIDE2LiBBdWcgMjAwMywgMTU6MTA6NDIpOgp+IyEgcm49Qm9pbmcgcnQ9MTA2MDk0NzA5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NDI4MzYKU3RpbW10LCBkZXIgd2Vpc3MgbmljaHQgbWFsLCBkYXMgZGFzIGRlciAiU3VwZXJ2aXNvciBTdGFja1BvaW50ZXIiIGlzdCAuLi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3NvIChNaXJpbCwgMTYuIEF1ZyAyMDAzLCAxNjozMzozMyk6CkNpbmRlcmVsbGEgcnVmdDogRGFybGluZyEKQXVzIGRlbSBTdGFsbCBlcnRvZW50IGxhdXRlcyBHZWdhY2tlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFia3Vlcnp1bmcgKE11cGZlbCwgMTYuIEF1ZyAyMDAzLCAxNzowNDoxMyk6Cn4jISBybj1Cb2luZyBydD0xMDYwOTQ3MDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk0MjgzNgojIGxpZXMgZm9ybXVsYXIKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQWJrdWVyenVuZ3Nmb3JtdWxhciBOci4gMSwgQW50cmFnIGF1ZiBBdWZuYWhtZSBlaW5lciBBYmt1ZXJ6dW5nLgpCaXR0ZSBmdWVsbGVuIFNpZSBkaWVzZXMgRm9ybXVsYXIgc29yZ2ZhZWx0aWcgYXVzIHVuZCB0ZWlsZW4gU2llIEl0dGlwbGF0c2NoCm1pdCwgd2VubiBTaWUgZmVydGlnIHNpbmQuIERpZXMgZ2VodCBtaXQ6ICd0ZWlsZSBJdHRpcGxhdHNjaCBtaXQgZWludHJhZ2VuJy4KCjEuIEFia3Vlcnp1bmcgICAgOgoyLiBCZWRldXR1bmcgICAgIDoKMy4gVGhlbWVuYmVyZWljaCA6CgpFaW50cmFnZW4gZ2VodCB3aWUgZm9sZ3Q6IGVpbnRyYWcgPG5yPiA8dGV4dD4KRWluIEJlaXNwaWVsIGZ1ZXIgZWluIHJpY2h0aWcgYXVzZ2VmdWVsbHRlcyBGb3JtdWxhciBlcmhhbHRlbiBTaWUgbWl0OgpiZWlzcGllbCA8bnI+LiBEYWJlaSBrYW5uICducicgZWluZSAxLCAyIG9kZXIgZWluZSAzIHNlaW4uIFdlbm4gU2llIGRpZXNlcwpGb3JtdWxhciBsb3N3ZXJkZW4gd29sbGVuLCBkYW5uIHplcnJlaXNzZW4gU2llIGVzIGVpbmZhY2guCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpEYSBrb21tdCBCZWhvZXJkZW5mZWVsaW5nIGF1ZiA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFia3Vlcnp1bmcgKEFuYXRvbCwgMTYuIEF1ZyAyMDAzLCAxNzowNzoxMik6Cn4jISBybj1NdXBmZWwgcnQ9MTA2MTA0NjI1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NDI4MzYKRHUgdGVpbHN0IEl0dGlAQW5kZXJMYW5kIG1pdDogYmxhCgpJdHRpQEFuZGVyTGFuZCB0ZWlsdCBEaXIgbWl0OiBibGEga29lbm50ZSBmb2xnZW5kZXMgYmVkZXV0ZW46CgpJdHRpQEFuZGVyTGFuZCB0ZWlsdCBEaXIgbWl0OiBCTEEgLSBCYXJjZWxvbmEgKFZlbmV6dWVsYSkgKEludGVybmF0aW9uYWxlcgpJdHRpQEFuZGVyTGFuZCB0ZWlsdCBEaXIgbWl0OiBGbHVnaGFmZW4tQ29kZSkKCgpTb29vbyBnZW5hdSB3b2xsdGUgaWNoIGVzIG5pY2h0IHdpc3Nlbi4uLiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFia3Vlcnp1bmcgKERlZXBibHVlLCAxNi4gQXVnIDIwMDMsIDE5OjMwOjAzKToKfiMhIHJuPU11cGZlbCBydD0xMDYxMDQ2MjUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk0MjgzNgp3ZW5uIGRlciBFaW50cmFnZS1OUEMgd2VuaWdzdGVuIGl0dGlwbGF0c2NoIGhlaXNlbiB3dWVyZGUgLSBhYmVyIGl0dGlwbGF0c2NoCmdpYnQgZXMgZGEgbmljaHQsIG51ciBpdHRpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBYmt1ZXJ6dW5nIChNdXBmZWwsIDE2LiBBdWcgMjAwMywgMTk6MzQ6MjkpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTA2MTA1NTAwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NDI4MzYKRGEgdmVydGlwcHQgbWFuIHNpY2ggbmljaHQgc28gb2Z0IDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSXMnIGtsYXIgKEZvb2JhciwgMTYuIEF1ZyAyMDAzLCAyMjoyMToyOSk6CltTZWhlcjpBaGFiXSBuYWphLCBldnRsLiBhbWFyeWxsaXMnIG9kZXIgYW5zb25zdGVuIGh1bW5pcyBiYXVzdGVsbGUuIDspCkh1bW5pICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoR3JpbW1ib3JuLCAxNy4gQXVnIDIwMDMsIDEyOjA5OjEzKToKfiMhIG9uPUJhYm9vbiBvdD0xMDYxMTEzNjU5IG9nPXd3dwp+IyEgcm49SHVtbmkgcnQ9MTA2MDk1OTkxMyByZz13d3cKfiMhIHRpZD0xMDYwOTU5OTEzCkR1IHdpbGxzdCB1bnMgZG9jaCBuaWNodCBlcnphZWhsZW4sIGRhc3MgZHUgQjUgbmljaHQga2VubnN0LCBvZGVyPwpXYXMga29tbXQgYWxzIG5hZWNoc3Rlcz8gU3RhclRyZWsvU3RhcndhcnM/IE5pZSBnZWhvZXJ0IQpIZXJyIGRlciBSaW5nZT8gS2VubiBpY2ggbmljaHQhCgpBbHNvIHdpcmtsaWNoIQoKKmJvb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIHNvIDopIChNb3Jnb3RoLCAxNy4gQXVnIDIwMDMsIDE2OjA0OjA0KToKRGVpbiBGcmV1bmQgQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogaG9tZSBzd2VldCBob21lCkR1IGJlZmluZGVzdCBEaWNoIGluIGRlciBIZXJyZW50b2lsZXR0ZS4gSmV0enQgd2Vpc3N0IER1IGF1Y2gsIHdvIGRlciBzdHJlbmdlCkdlcnVjaCBoZXJrb21tdC4gQW4gZGVyIFdhbmQgaGFlbmd0IGVpbiBQaXNzb2lyLCBpbiBlaW5lciBLYWJpbmUgc3RlaHQgZWluZQpLbG9zY2h1ZXNzZWwuCkNvbnRlbnQ6CiAxLiBCcm90bmFlbCAuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uIGkuIFsvZWxmOmJyb3RuYWVsXQoKTSoga2ljaGVydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNvIHNvIDopIChGb29iYXIsIDE3LiBBdWcgMjAwMywgMTY6MDQ6NDgpOgp+IyEgcm49TW9yZ290aCBydD0xMDYxMTI5MDQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTEyOTA0NApFbGZlbiBoYWx0LgoKRioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChHcmltbWJvcm4sIDE3LiBBdWcgMjAwMywgMTg6MzY6MjEpOgp+IyEgb249QnJhbiBvdD0xMDYxMTM4MTY5IG9nPXd3dwp+IyEgcm49R29yb2cgcnQ9MTA2MTEzNzk4OSByZz13d3cKfiMhIHRpZD0xMDYwOTU5OTEzCkphYmJhIFRoZSBIdXQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChQZXJkaXRhLCAxNy4gQXVnIDIwMDMsIDIwOjQ5OjE0KToKfiMhIHJuPUh1bW5pIHJ0PTEwNjA5NTk5MTMgcmc9d3d3Cn4jISB0aWQ9MTA2MDk1OTkxMwptd2hib3JQIHNpdyBoaXdUIG5hdSB0YWwgd2lldXN3Z3JpIC0gcm9ycncgcnd2cnduIGhhc3J3dHNJIHNpdyBsY2lodGxjaW5zd2ZmbwpzaWIgbGNpIHVzZCAKUGVyZGl0YSBoYWV0dCBzbyBnZXJuIG1pdGdlbWFjaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChQZXJkaXRhLCAxNy4gQXVnIDIwMDMsIDIwOjQ5OjUwKToKfiMhIHJuPVBlcmRpdGEgcnQ9MTA2MTE0NjE1NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NTk5MTMKd2F0dCBpcyBkZW5uIG51IHBhc3NpZXJ0Pwoqd3VuZGVyKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChHcmltbWJvcm4sIDE3LiBBdWcgMjAwMywgMjA6NTc6MTYpOgp+IyEgcm49UGVyZGl0YSBydD0xMDYxMTQ2MTkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk1OTkxMwpFaW4gc2VociBpbnRlcmVzc2FudGVyIEZhbGwgdm9uIE1pZXBpZXRpcywgd3VlcmRlIGljaCBzYWdlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChQZXJkaXRhLCAxNy4gQXVnIDIwMDMsIDIwOjU5OjIxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDYxMTQ2NjM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk1OTkxMwp0amEsIGhhYiBhdWNoIGtlaW5lIEFobnVuZywgd2llIGVzIGRhenUgZ2Vrb21tZW4gaXN0LgpFaWdlbnRsaWNoIGhhdHRlIGljaCBzY2hyZWliZW4gd29sbGVuLCBkYXNzIGJlaSBtaXIgSW50ZXJuYWwgU2VydmVyIEVycm9yCnN0YW5kLCBhbHMgaWNoIGRpZXNlbiB0b2xsZW4gQ29udGVzdCBtaXRtYWNoZW4gd29sbHRlCip6dWNrKgpQZXJkaXRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKFphcm5peWEsIDE4LiBBdWcgMjAwMywgMDk6MTU6NTIpOgp+IyEgcm49UGVyZGl0YSBydD0xMDYxMTQ2NzYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk1OTkxMwpobW0gQm9yb21pci4uLiBhbHNvIGljaCBiaW4gdG90PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVzd2VpY2hlbiB2b3IgZGVyIHVtcGx1bXBzZW5kZW4gTGVpY2hlPyAoRGVlcGJsdWUsIDE4LiBBdWcgMjAwMywgMDk6MzM6MzIpOgpEZXIgS3Jpc3RhbGxkcmFjaGUgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIEhhaXdhbi1uYWdhc2hpLXVrZSBhYi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChHcmltbWJvcm4sIDE4LiBBdWcgMjAwMywgMTA6MTQ6MzkpOgp+IyEgb249TXVhZGliIG90PTEwNjExOTMxNjkgb2c9d3d3Cn4jISBybj1Hb3JvZyBydD0xMDYxMTM3OTg5IHJnPXd3dwp+IyEgdGlkPTEwNjA5NTk5MTMKbWl0IGphamFkaW5ncyBtZWluc3QgZHUgZGllIHNhdGFuaXNjaGUgb3JhbHNleGVtdWxhdGlvbiBmdWVyIHZlcndpcnJ0ZQpqdWdlbmRsaWNoZSA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChHcmltbWJvcm4sIDE4LiBBdWcgMjAwMywgMTA6MTQ6NDkpOgp+IyEgb249R29yb2cgb3Q9MTA2MTEzNzk4OSBvZz13d3cKfiMhIHJuPUh1bW5pIHJ0PTEwNjA5NTk5MTMgcmc9d3d3Cn4jISB0aWQ9MTA2MDk1OTkxMwpPYmkgV2FuIEtlbm9iaS4uLiBOYWphIHdlbm5zIHNjaG9uIHdhcyBhdXMgU3RhciBXYXJzIHNlaW4gc29sbCBkYW5uIHdlbmlnc3RlbnMKbmljaHQgSmFqYWRpbmdzLi4uCgpHb3JvZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZ1ZXIgYWxsZSBGcmF1ZW4gKEdyaW1tYm9ybiwgMTguIEF1ZyAyMDAzLCAxNjowODozNCk6Cn4jISBvbj1CaXJkeSBvdD0xMDYxMjE0MjkzIG9nPXd3dwp+IyEgcm49Tm9ubmUgcnQ9MTA2MTE5NzY3MiByZz13d3cKfiMhIHRpZD0xMDYxMTk3NjcyCmdlbGFjaHQgaGFiZSBpY2ggdWViZXIgZGllIHppdGF0ZSB1bnRlciAiZXJmYWhydW5nZW4gdW5zZXJlciBrdW5kaW5uZW4iLiAqbG9sKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZ1ZXIgYWxsZSBGcmF1ZW4gKEdyaW1tYm9ybiwgMTguIEF1ZyAyMDAzLCAxNjowODozNik6Cn4jISBvbj1CcmFuIG90PTEwNjEyMTU1OTkgb2c9d3d3Cn4jISBybj1Ob25uZSBydD0xMDYxMTk3NjcyIHJnPXd3dwp+IyEgdGlkPTEwNjExOTc2NzIKT2ggamE6ICJJY2ggdWViZXJsZWdlIHNjaG9uLCBvYiBlcyBwYXNzaWVyZW4ga2FubiwgZGFzcyBkaWUgQnJ1c3QgZW5kbG9zCndhZWNoc3QuIERhcyB3YWVyZSBuaWNodCBkYXMsIHdhcyBpY2ggbW9lY2h0ZS4iCgpCcmFuIGF1Y2ggbmljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOdXIgZnVlciBkZW4gYWxsZXJiZXN0ZW4gRXgtR290dCA6KSAoTW9yZ290aCwgMTguIEF1ZyAyMDAzLCAyMzozNzoxNik6CjMKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUXVlc3QgKE5pYmVsLCAxOS4gQXVnIDIwMDMsIDAzOjM5OjUwKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwNjEyNTQwNTUgcmc9d3d3Cn4jISB0aWQ9MTA2MTI1NDA1NQpHaWJ0cyBkYSBzY2hvbiBuZSBLTD8KICAtIE5pYmVsCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFF1ZXN0IChXaGl0ZXRpZ2VyLCAxOS4gQXVnIDIwMDMsIDA4OjE0OjU4KToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA2MTI2ODA3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjEyNTQwNTUKRWluZSBLTCBnaWJ0IGVzIGF1ZiBBbmZyYWdlIGJlaSBtaXIuLi4KTmF0dWVybGljaCBudXIgZWluZSBmdWVyIGRpZXNlcyBzYW1vcm9zdC5zd2YuLi4gOykKCldoaXRlVGlnZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGphIDopIChNY2RlZSwgMTkuIEF1ZyAyMDAzLCAxMzo1NTo0Nik6CllpbCdkcmltIHNhZ3Q6IE5hY2ggZGVyIGFrdHVlbGxlbiBNYXJrdGxhZ2Uga2FubiBpY2ggRGlyIGRhZnVlciBudXIgNTM4Ck11ZW56ZW4gYmlldGVuLCBvYndvaGwgZWluIGthbHRlciBFaXN6YWhuIGVpZ2VudGxpY2ggNzAgTXVlbnplbiB3ZXJ0IHdhZXJlLgpXaWxsc3QgRHUgZXMgbWlyIGRhZnVlciB1ZWJlcmxhc3Nlbj8gKGphL25laW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWhqYSA6KSAoTW9vbnNoaW5lLCAxOS4gQXVnIDIwMDMsIDEzOjU2OjE4KToKfiMhIHJuPU1jZGVlIHJ0PTEwNjEyOTQxNDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxMjk0MTQ2CldhcyBlcndhcnRlc3QgRHUgdm9uIERlbGZlbj8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKEFtYXpvcmEsIDE5LiBBdWcgMjAwMywgMTU6Mzk6NTEpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwNjA5Njc1ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwOTU5OTEzCndvIGthbm4gbWFuIGt1Y2tlbiB3ZXIgbWFuIGlzdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOb2NoIHNvIGVpbiAsLFdhcyBiaXN0IER1PycnLi4uIENvbnRlc3QuLi4gKENhdHdlYXpsZSwgMTkuIEF1ZyAyMDAzLCAxNTo0MDozNSk6Cn4jISBybj1BbWF6b3JhIHJ0PTEwNjEzMDAzOTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwOTU5OTEzCkluIHd3dy4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoSHVtbmksIDE5LiBBdWcgMjAwMywgMTU6NDE6MDEpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNjEzMDA0MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwOTU5OTEzCnJ1YnJpayB3d3csIGFydGlrZWwgNTMsIChub2NoLCBzb2xhbmdlIG5peCBleHBpcmVkKS4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChHcnVtcGYsIDE5LiBBdWcgMjAwMywgMTU6NDE6MzYpOgp+IyEgcm49QW1hem9yYSBydD0xMDYxMzAwMzkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk1OTkxMwp3aG9hbWkKR3J1bXBmIGdydW1wZnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTm9jaCBzbyBlaW4gLCxXYXMgYmlzdCBEdT8nJy4uLiBDb250ZXN0Li4uIChDcm9mdCwgMTkuIEF1ZyAyMDAzLCAxNTo0NjoyNik6Cn4jISBybj1HcnVtcGYgcnQ9MTA2MTMwMDQ5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA5NTk5MTMKJ1dpZSBCaXR0ZT8nCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE5vY2ggc28gZWluICwsV2FzIGJpc3QgRHU/JycuLi4gQ29udGVzdC4uLiAoQW1hem9yYSwgMTkuIEF1ZyAyMDAzLCAxNTo1NDozMSk6Cn4jISBybj1Dcm9mdCBydD0xMDYxMzAwNzg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDk1OTkxMwoqcHJ1dXN0KiBpY2ggYmluIGx1a2Ugc2t5d2Fsa2VyLiBkYXMgaGF0IG1pciBub2NoIGdlZmVobHQgKmxhY2gqCmFtYXpvcmEgaXN0IGphIHNvb28gZ3V0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdHJ5IGl0IChHcmltbWJvcm4sIDE5LiBBdWcgMjAwMywgMTg6NDY6NTQpOgp+IyEgcm49R2FzdDIgcnQ9MTA2MTMxMTU2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjEzMTE1NjAKTXVlc3NlbiB3aXIgZGFzIGFsbGUgcGFhciBXb2NoZW4gd2llZGVyIGR1cmNoa2F1ZW4/IEtlaW5lIEFydGlrZWwgdm9uIEdhZXN0ZW4KaGllci4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB0cnkgaXQgKE5vbm5lLCAxOS4gQXVnIDIwMDMsIDE5OjMxOjM4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDYxMzExNjE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTMxMTU2MApXb2hlciBzb2xsZW4gR2Flc3RlIGRhcyBkZW5uIHdpc3Nlbj8gRGFubiBtdWVzc3RlIGRhcyBzY2hvbiBpbiBkZW4KV2lsbGtvbW1lbnN0ZXh0IG9kZXIgZWluZSBleHRyYSBNZWxkdW5nLCB3ZW5uIGVpbiBHYXN0IHNpY2ggZWlubG9nZ3QuCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHRyeSBpdCAoR3JpbW1ib3JuLCAxOS4gQXVnIDIwMDMsIDE5OjMzOjI4KToKfiMhIHJuPU5vbm5lIHJ0PTEwNjEzMTQyOTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxMzExNTYwCkljaCBnZWhlIGplZGUsIGFiZXIgYXVjaCBqZWRlLCBXZXR0ZSBlaW4gZGFzcyBHYWVzdGUsIGRpZSBpbiBkZXIgbXBhCnNjaHJlaWJlbiwgaW4gcHJha3Rpc2NoIGplZGVtIEZhbGwgYXVjaCBlaW5lbiBDaGFyIGltIE1HIGhhYmVuLCB1bmQgaW4Kd2lya2xpY2ggamVkZW0gRmFsbCBNdWRlcmZhaHJ1bmcgaGFiZW4uIApBYmVyIGJpdHRlLCBuZWhtZW4gd2lyIGRpZSBEaXNrdXNzaW9uIHdpZWRlciBhdWYsIGlzdCBqYSBlcnN0Li4uIGRyZWkgTW9uYXRlCm9kZXIgc28gaGVyLgoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB0cnkgaXQgKEh1bW5pLCAxOS4gQXVnIDIwMDMsIDE5OjM0OjUwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDYxMzE0NDA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTMxMTU2MApFcyBpc3QgamEgbmljaHQgZ2VuZXJlbGwgdmVyYm90ZW4uIEVzIHNwcmljaHQgamEgbml4IGRhZ2VnZW4sIHdlbm4gZWluClNwaWVsZXIsIGRlciBnZXJhZGUgei5CLiBnZWxvZXNjaHQgd3VyZGUsIHBlciBNUEEgbmFjaGZyYWd0IHVuZCBzaWNoIGJlc2Nod2VydAoodW5kIHNpY2ggZGFiZWkgYWxzICwsaWNoIHdhciBlaW5tYWwgSHVtbmknJyBvdXRldCkuCgpOdXIgd2lyZCBqZW1hbmQsIGRlciBzaWNoIHdpcmtsaWNoIGFscyBHYXN0IGVpbmxvZ2d0IChhbHNvIGFscyBlY2h0ZXIgR2FzdCwKZGVyIHdpcmtsaWNoIG51ciBtYWwgcmVpbmd1Y2tlbiB3aWxsKSBuaWNodCBnbGVpY2ggZGllIFplaXR1bmcgYmVudXR6ZW4uIE9kZXIKd2VubiBlciBlaW5lbiBBcnRpa2VsIHNjaHJlaWJ0ICwsaWNoIHN1Y2hlIGVpbmVuIGd1dGVuIE5hbWVuJycgd2lyZCBzZWluCkFydGlrZWwgdmVybXV0bGljaCBhdWNoIG5pY2h0IGdsZWljaCBnZWxvZXNjaHQuIERlciBBcnRpa2VsIGhpZXIgd2FyIGFiZXIKZWluZGV1dGlnIChmdWVyIG1pY2ggamVkZW5mYWxscykgZWluIFNwaWVsZXIsIGRlciBzaWNoIG5pY2h0IG91dGVuIHdpbGwuIFVuZApkZXNzZW4gQXJ0aWtlbCBnZWhvZXJ0IGdlbG9lc2NodC4gSmVkZXIgc29sbCBzZWluZSBNZWludW5nIHNhZ2VuIGR1ZXJmZW4sIGFiZXIKbmljaHQgYW5vbnltLgoKSHVtbmkKUFM6IE1laW5lIE1laW51bmcuIEtlaW4gU3RhdGVtZW50IHZvbiBvYmVuLCBuaWNodCBtaXQgYW5kZXJlbiBFTXMKYWJnZXNwcm9jaGVuLiBOdXIgdW0gZGFzIGtsYXJ6dW1hY2hlbiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHRyeSBpdCAoTm9ubmUsIDE5LiBBdWcgMjAwMywgMTk6Mzc6MjUpOgp+IyEgcm49SHVtbmkgcnQ9MTA2MTMxNDQ5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjEzMTE1NjAKSGFiZSBkZW4gQXJ0aWtlbCBuaWNodCBnZWxlc2VuLCBpY2ggYmluIGF1Y2ggZnVlciBSZWFsbmFtZXMgaW0gVXNlbmV0IHVuZApkYWZ1ZXIsIGRhc3MgTGV1dGUgbWlyIGlocmVtIE5hbWVuIGhpbnRlciBkZW0gc3RlaGVuLCB3YXMgc2llIGhpZXIgdmVyemFwZmVuLgpJY2ggd29sbHRlIGRvY2ggbnVyIGF1ZiBlaW5lIEFyZ3VtZW50YXRpb24gdmVybWVpbnRsaWNoZXIgR2Flc3RlIG1pdCBlaW5lbQpkaWNrZW4gSXJvbmllLUZsYWcgaGlud2Vpc2VuLgoKTm9ubmUsIGRlbiBrZWluZXIgdmVyc3RlaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiB0cnkgaXQgKE1vb25zaGluZSwgMTkuIEF1ZyAyMDAzLCAxOTozODoyMyk6Cn4jISBybj1Ob25uZSBydD0xMDYxMzE0NjQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTMxMTU2MApSZWFsbmFtZT8KRHUgYmlzdCBhYmVyIHJpZ29yb3MuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogdHJ5IGl0IChIdW1uaSwgMTkuIEF1ZyAyMDAzLCAxOTozOToyMyk6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTA2MTMxNDcwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjEzMTE1NjAKUmVhbG5hbWVzIHdhZXJlbiBuZSBJZGVlLi4uIGFsc28gZnVlciBNUEEtQmVudXR6dW5nIGRhZnVlciBzb3JnZW4sIGRhc3MgbWFuIGltCmZpbmdlciBkZW4gUkwtTmFtZW4gc2VoZW4ga2Fubi4uLiBobW0uLi4gbWFsIGRydWViZXIgbmFjaGRlbmtlbi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiB0cnkgaXQgKEdsb2luc29uLCAxOS4gQXVnIDIwMDMsIDE5OjM5OjUxKToKfiMhIHJuPU1vb25zaGluZSBydD0xMDYxMzE0NzAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTMxMTU2MApNaXIgaXN0cyBtaXQgZGVtIFJlYWxuYW1lbiB3dXJzY2h0LiBEaWUgTGV1dGUga29lbm5lbiBnZXJuIGFub255bSBwb3N0ZW4sCm11ZXNzZW4gZGFubiBhYmVyIGF1Y2ggZGFtaXQgcmVjaG5lbiBkYXNzIGljaCBpaHJlIEJlaXRyYWVnZSBpZ25vcmllcmVuCmtvZW5udGUuIFdhZXIgZ2FyIG5pY2h0IHNjaGxlY2h0IHdlbm4gZGFzIGhpZXIgYWVobmxpY2ggZ2VoYW5kaGFidCB3dWVyZGUsCmF1Y2ggd2VubiBkYXMgR3JpbW1ib3JuIGVpbmVuIFRlaWwgc2VpbmVyIGFsbG1vbmF0bGljaGVuIEZyZXVkZW4gYmVyYXViZW4Ka29lbm50ZS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiB0cnkgaXQgKEdyaW1tYm9ybiwgMTkuIEF1ZyAyMDAzLCAxOTo0MzowNCk6Cn4jISBybj1IdW1uaSBydD0xMDYxMzE0NzYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTMxMTU2MApPY2gsIGluIGRlciBlbWFpbGFkcmVzc2UgaGF0IG1hbiBkYSBzY2hvbm1hbCBlaW5lbiBndXRlbiBIaW53ZWlzIGJlaSB2aWVsZW4KTGV1dGVuLiBEYXMgaXN0IGltbWVyaGluIGVpbiBBbmZhbmcuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IHRyeSBpdCAoR3JpbW1ib3JuLCAxOS4gQXVnIDIwMDMsIDE5OjQ0OjE0KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwNjEzMTQ3OTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxMzExNTYwCkR1IGlycnN0LiBadSBtZWluZW4gImFsbG1vbmF0bGljaGVuIEZyZXVkZW4iIGthZW1lbiBkYW5uIG5vY2ggcmVhbCBuYW1lIGZsYW1lcwpkYXp1LiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogdHJ5IGl0IChOb25uZSwgMTkuIEF1ZyAyMDAzLCAxOTo0NDo0NCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2MTMxNDk4NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjEzMTE1NjAKRGllIHNpZWh0IGFiZXIgbnVyIGVpbiBNYWdpZXIsIHdhcyBuaWNodCB3aXJrbGljaCBmYWlyIGlzdCwgd2VubiBTcGllbGVyCmFuZ2VwaXNzdCB3ZXJkZW4uCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiB0cnkgaXQgKEdyaW1tYm9ybiwgMTkuIEF1ZyAyMDAzLCAxOTo0OTozOCk6Cn4jISBybj1Ob25uZSBydD0xMDYxMzE1MDg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTMxMTU2MApTcGllbGVyPyBOYSB1bmQ/IERpZSBrb2VubmVuIGplZGVyemVpdCBNYWdpZXIgd2VyZGVuIHdlbm5zIHNpZSBpbnRlcmVzc2llcnQsCm5vdGZhbGxzIGtvZW5uZW4gc2llIHNpY2ggZGF6dSBqYSBhdWYgZWJheSBlaW5lbiBTZWhlciBrYXVmZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiB0cnkgaXQgKE5vbm5lLCAxOS4gQXVnIDIwMDMsIDE5OjUxOjEyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDYxMzE1Mzc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTMxMTU2MApHZWdlbiBlaW5lbiBrbGVpbmVuIFVua29zdGVuYmVpdHJhZyB3aXp6ZSBpY2ggZGllIGRhbm4gYXVjaCwgd2VubiBzaWUgbWlyCmVpbmVuIFZlcnRyYWcgdW50ZXJzY2hyZWliZW4sIGRhc3Mgc2llIG1pY2ggbmljaHQgbWl0IExQQy1GcmFnZW4gYmVsYWVzdGlnZW4KKGM7CgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiB0cnkgaXQgKEdsb2luc29uLCAxOS4gQXVnIDIwMDMsIDE5OjUyOjM2KToKfiMhIHJuPU5vbm5lIHJ0PTEwNjEzMTU0NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxMzExNTYwCkxhbWJkYXMgc2luZCBqYSBzb3p1c2FnZW4gbnVyIHp1ZmFlbGxpZyBUZWlsIHZvbiBMUEMuIEFsc28gZGFuYWNoIGR1ZXJmZW4gc2llCmRpY2ggZnJhZ2VuPyBJY2ggdWViZXJsZWcgbWlyIG1hbCB3ZW4gaWNoIHVlYmVycmVkZW4ga2FubiBzaWNoIHZvbiBkaXIgd2l6emVuCnp1IGxhc3NlbiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiB0cnkgaXQgKEFuYXRvbCwgMTkuIEF1ZyAyMDAzLCAyMzo1OTozMCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDYxMzE1NTU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTMxMTU2MApXaWUgUGFkcmVpYyAoc2ljISkgZWluc3QgYmVtZXJrdGU6IFdlbm4gR2FzdDEgZWluZW4gQXJ0aWtlbCBzY2hyZWlidCwKa2FubiBHYXN0MSBpaG4gd2llZGVyIGxvZXNjaGVuLiBFcyBmaW5kZXQgc2ljaCBzaWNoZXIgaXJnZW5kd2VyLCBkZXIgc28KcGhyZWVla2lnIGlzdCB1bmQgMjQvNyBvbmxpbmUgYmxlaWJ0Li4uIHVuZCBlaW4gaHVlYnNjaGVzIE1ha3JvIGJhc3RlbHQsCmRhcyBhdWYgZGllIFplaXR1bmdzbWVsZHVuZyB0cmlnZ2VydCwgNSBHYWVzdGUgZWlubG9nZ3QgKGlyZ2VuZGVpbmVyIHdpcmQKc2Nob24gcGFzc2VuKSB1bmQgZGVuIEFydGlrZWwgbG9lc2NodC4gRmVydGlnLgoKTWl0IEdyaW1tYm9ybiBnZWh0IGVzIHNjaG5lbGxlciwgZGFzIGlzdCBhbGxlcy4gRmluZCBpY2ggb2suIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IHRyeSBpdCAoT2dvLCAyMC4gQXVnIDIwMDMsIDAyOjA4OjU2KToKfiMhIHJuPUFuYXRvbCBydD0xMDYxMzMwMzcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTMxMTU2MApLYW5uc3QgZHUgZGFzIChzaWMhKSBpbiBkaWVzZW0gS29udGV4dCBlcmtsYWVyZW4/CgpPZ28sIGVpbiwgbmljaHQgc2VpbmVtIFZlcnN0YWVuZG5pcyBuYWNoLCBsb2dpc2NoZXMgJ3NpYycgdmVyc3VjaGVuZAphdWZ6dWtsYWVyZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiB0cnkgaXQgKEdyaW1tYm9ybiwgMjAuIEF1ZyAyMDAzLCAwOTozOTo1OCk6Cn4jISBybj1PZ28gcnQ9MTA2MTMzODEzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjEzMTE1NjAKInZvbiBkZW0gbWFuIGRhcyBqYSBudW4gd2lya2xpY2ggbmljaHQgZXJ3YXJ0ZW4gc29sbHRlIHdlaWwgZXIgZ2VuZXJlbGwga2VpbmUKc2lubnZvbGxlbiBLb25zdHJ1a3RlIGJlbWVya3QsIG5pY2h0bWFsIHdlbm4gc2llIGlobiBtaXQga25hcHAKU2NoYWxsZ2VzY2h3aW5kaWdrZWl0IGlucyBHZXNpY2h0IHRyZWZmZW4iIGlzdCBhbHMgQXVzZm9ybXVsaWVydW5nIHdvaGwgcmVjaHQKenV0cmVmZmVuZC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IHRyeSBpdCAoTXVhZGliLCAyMC4gQXVnIDIwMDMsIDEwOjEyOjMyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDYxMzY1MTk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTMxMTU2MAphdWZncnVuZCBkZXIgbGV0enRlbiBwYWFyIGFydGlrZWwgaGFiIGljaCBtaWNoIHNwb250YW4gZW50c2NobG9zc2VuIGRhcyBsZXNlbgp6dSB2ZXJsZXJuZW4uIHNjaGVpbnQgbWlyIHNpY2hlcmVyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2FlbXBmZXItU2NyaXB0cyBWMC4yIChDcm9mdCwgMjAuIEF1ZyAyMDAzLCAxMDozNjozNik6Cn4jISBybj1BbGRlcmFuIHJ0PTEwNjEzNDM2NDUgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTA2MTM0MzY0NQpOZXVlcyBCZWZvZXJkZXJ1bmdzc2NyaXB0PyAgSXN0IC9kb19yZXBvcnQgamV0enQgZGVidWdndD8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogdHJ5IGl0IChPcmt0b2V0ZXIsIDIwLiBBdWcgMjAwMywgMTc6MTA6MjcpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNjEzMzAzNzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxMzExNTYwCldlciBzY2hhZmZ0IGVzIDI0Lzcgc2VpbiBzY3JpcHQgenUgYmVvYmFjaHRlbj8gRGVubiB1bmJlb2JhY2h0ZXRlcyBzY3JpcHQgPQpHcnVuZCBmdWVyIGxvZXNjaHVuZywgb2RlciBoYWJlbiBzaWNoIGRpZSBSZWdlbG4gbWFsIHdpZWRlciBnZWFlbmRlcnQ/CgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IHRyeSBpdCAoQW5hdG9sLCAyMC4gQXVnIDIwMDMsIDE4OjQxOjM3KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDYxMzkyMjI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTMxMTU2MApDW2hdYXItU2hhcmluZyBpc3QgZG9jaCBpbiBNb2RlLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVm9sbGVyIEVyZm9sZyAuLi4gKEVsdWRhLCAyMC4gQXVnIDIwMDMsIDIzOjI0OjQxKToKRHUgaGFzdCBqZXR6dCAxOTggTGViZW5zcHVua3RlIHVuZCA2MCBLb256ZW50cmF0aW9uc3B1bmt0ZS4KRHUgcmljaHRlc3QgZWluZW4gZ2V3YWx0aWdlbiBGbGFtbWVuc3RyYWhsIGF1ZiBkYXMgV2Fzc2VydW53ZXNlbi4KRGFzIFdhc3NlcnVud2VzZW4gbGVua3QgRGVpbmVuIEFuZ3JpZmYgYWIuCkR1IGhhc3QgamV0enQgMTE0IExlYmVuc3B1bmt0ZSB1bmQgNjAgS29uemVudHJhdGlvbnNwdW5rdGUuCkR1IGhhc3QgamV0enQgMTE0IExlYmVuc3B1bmt0ZSB1bmQgMzUgS29uemVudHJhdGlvbnNwdW5rdGUuCkR1IGxlcm5zdCBldHdhcyBhdXMgRGVpbmVtIEVyZm9sZy4KRGVpbiBaYXViZXJzdGFiIHVudGVyc3R1ZXR6dCBEaWNoIGJlaSBkZW0gU3BydWNoLgoKRWx1ZGEgZGFua3QgYXVjaCBpaHJlbSBaYXViZXJzdGFiIGZ1ZXIgZGllIHRvbGxlIFVudGVyc3R1ZXR6dW5nIGRhYmVpLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VnaGllciBhYndlcnRlbiAhIChNb3Jnb3RoLCAyMS4gQXVnIDIwMDMsIDE2OjEzOjM5KToKICAuLi4ubm9ybWFsL0dsaXR6ZXJzY2h3ZSBad2lyaW9uLi4uLi4uIDogV2VnaGllci4uLi4uLiAqKioqKioqKiAtLSB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvR2xpdHplcnNjaHdlIFp3aXJpb24uLi4uLi4gOiBXZWdoaWVyLi4uLi4uICoqKioqKioqIC0tIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9HbGl0emVyc2Nod2UgWndpcmlvbi4uLi4uLiA6IFdlZ2hpZXIuLi4uLi4gKioqKioqKiogLS0gdmVyZmVobHQKICAuLlNjaGxhbmdlL0dsaXR6ZXJzY2h3ZSBQaXRmYWxsLi4uLi4uIDogV2VnaGllci4uLi4uLiAqKioqKioqKiAtLSB2ZXJmZWhsdAogIC4uLlRhbmppYW4vS2FtaW5hcmkuLi4uIFp3aXJpb24uLi4uLi4gOiBXZWdoaWVyLi4uLi4uICpBdXN3ZSoqIC0tIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9HbGl0emVyc2Nod2UgWndpcmlvbi4uLi4uLiA6IFdlZ2hpZXIuLi4uLi4gKipQKioqKiogLS0gdmVyZmVobHQKICAuLi4ubm9ybWFsL0dsaXR6ZXJzY2h3ZSBad2lyaW9uLi4uLi4uIDogV2VnaGllci4uLi4uLiAqKioqKioqKiAtLSB2ZXJmZWhsdAogIC4uLi5ub3JtYWwvR2xpdHplcnNjaHdlIFp3aXJpb24uLi4uLi4gOiBXZWdoaWVyLi4uLi4uICoqKioqKioqIC0tIHZlcmZlaGx0CiAgLi4uLm5vcm1hbC9HbGl0emVyc2Nod2UgWndpcmlvbi4uLi4uLiA6IFdlZ2hpZXIuLi4uLi4gKipQKioqKiogLS0gdmVyZmVobHQKICAuLlNjaGxhbmdlL0dsaXR6ZXJzY2h3ZSBQaXRmYWxsLi4uLi4uIDogV2VnaGllci4uLi4uLiAqKioqKioqKiAtLSB2ZXJmZWhsdApFaW4gV2VnaGllciBtYWNodCBlaW5lIEZpbnRlIGdlZ2VuIFBpdGZhbGwuCiAgLi4uLi5leHRyYS9XYWZmZW5zY2hsYWcgV2VnaGllci4uLi4uLiA6IFBpdGZhbGwuLi4uLi4gKioqKioqKiogLS0KU2NobWV0dGVybgogIC4uLi5ub3JtYWwvVm9sbHN0cmVja2VyIFdlZ2hpZXIuLi4uLi4gOiBQaXRmYWxsLi4uLi4uICoqKioqKioqIC0tClNjaG1ldHRlcm4KICAuLi4ubm9ybWFsL1ZvbGxzdHJlY2tlciBXZWdoaWVyLi4uLi4uIDogUGl0ZmFsbC4uLi4uLiAqKioqKioqKiAtLQpTY2htZXR0ZXJuCiAgVG9kZXNzdG9zcy9Wb2xsc3RyZWNrZXIgV2VnaGllci4uLi4uLiA6IFBpdGZhbGwuLi4uLi4gKioqKioqKiogLS0KYXRvbWlzaWVydApQaXRmYWxsIGZhZWxsdCB0b3QgenUgQm9kZW4uCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uClBpdGZhbGwgdmVyc2Nod2luZGV0IGdhbnogbGVpc2UuCltUb2Q6TGFyc10gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSBQaXRmYWxsIHVtZ2VicmFjaHQuCltUb2Q6RWluIFdlZ2hpZXJdIEdvdGNoYSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWdoaWVyIGFid2VydGVuICEgKFZhcmRpb24sIDIxLiBBdWcgMjAwMywgMTY6NDg6MjApOgp+IyEgcm49TW9yZ290aCBydD0xMDYxNDc1MjE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTQ3NTIxOQpXb3csIGVzIGdpYnQgdGF0c2FlY2hsaWNoIG5vY2ggVGFuamlhbiwgZGllIFdhZmZlbiBiZW51dHplbiA6LSkKClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQ3Jhc2ggYW0gMjEuMDguMDMgKFZhbXBpcmUsIDIxLiBBdWcgMjAwMywgMjE6MTI6MTkpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNjE0ODI1NDQgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwNjE0NDc4MTIKVHN0cywKCmljaCB3dXNzdGUgbmljaHQgZGFzIG1laW4gR3VlcnRlbCBuaWNodCBiZW5vZXRpZ3Qgd2lyZC4KTnUgaXN0IGVyIGhpbiBpbiBkZW4gU3BhZWhyZW4gZGVyIEJpdHMgdW5kIEJpdGVzLgoKVmFtcGlyZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV293LCB3YXMgZnVlciBlaW4gS2FtcGYgKERvdHosIDIxLiBBdWcgMjAwMywgMjM6NTg6MTgpOgpERVIgS0FNUEYgSU4gREVSIEFSRU5BIEhBVCBCRUdPTk5FTiEhIE1PRUdFIERFUiBTVEFFUktFUkUgR0VXSU5ORU4hIQpEdSBrYW5uc3QgRGljaCBrYXVtIG5vY2ggaGFsdGVuLiBFcmRiZWJlbiBlcnNjaHVldHRlcm4gYWxsZXMgdW0gRGljaCBoZXJ1bS4KVWViZXJhbGwga2FubnN0IER1IG51ciBub2NoIFRydWVtbWVyIGVya2VubmVuLCB3byBlaW5tYWwgSGFldXNlciBzdGFuZGVuLgpBbGxlcyBpc3QgZXJmdWVsbHQgdm9tIEdlcnVjaCBkZXMgVG9kZXMhCgpEb3R6LCBXRyB1bmQgaGVsbGF1ZiBiZWdlaXN0ZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV293LCB3YXMgZnVlciBlaW4gS2FtcGYgKFZhbmlvbiwgMjEuIEF1ZyAyMDAzLCAyMzo1ODo1Nik6Cn4jISBybj1Eb3R6IHJ0PTEwNjE1MDMwOTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxNTAzMDk4CkFybWFnZWRkb24gKFRNKS4gU3BlY2lhbCBFZmZlY3RzIHNlaXQgMTk5Mi4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2VyIHdhcnN0IGR1IGltIHZvcmlnZW4gTGViZW4/IChCYW1idWxrbywgMjIuIEF1ZyAyMDAzLCAxMDoxNjoxNik6Cn4jISBybj1BbGJvaW4gcnQ9MTA2MTUzNDg3OSByZz13d3cKfiMhIHRpZD0xMDYxNTM0ODc5CkNvb2wsIGluIG1laW5lbSBmcnVlaGVyZW4gTGViZW4gaGF0dGUgaWNoIGRlbiBnbGVpY2hlbiBKb2Igd2llIGhldXRlLiBEYQpzY2hlaW50IHdhcyBoYWVuZ2VuIGdlYmxpZWJlbiB6dSBzZWluIDotKQoKTnVyIGRhbWFscyB3YXIgaWNoIHdlaWJsaWNoLCB1bmQgZXMgd2FyIHVtIDg1MCBpbSBZdWtvbi4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHdlciB3YXJzdCBkdSBpbSB2b3JpZ2VuIExlYmVuPyAoTWFoYXJldCwgMjIuIEF1ZyAyMDAzLCAxMDoyMDoyNCk6Cn4jISBybj1CYW1idWxrbyBydD0xMDYxNTQwMTc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTUzNDg3OQpJY2ggd2FyIGVpbiBHaWZ0bWlzY2hlciB1bSAxNTUwIGluIGRlciBOYWVoZSB2b24gT250YXJpby4gT2ssIHZpZWxsZWljaHQgYXVjaApDaGVtaWtlci4gS2xpbmd0IGJlc3Nlci4KQmluIHZpZWwgcnVtZ2VyZWlzdCB1bmQgd2FyIG1vZWdsaWNoZXJ3ZWlzZSBhdWNoIFNwaW9uLiAgCkljaCBoYWIgZWluIFRhbGVudCBmdWVyIGRpZSBMaWViZSwgZGllIEZyZXVkZSB1bmQgZGVuIEVudGh1c2lhc211cywgZGFzIGVzCndlaXRlcnp1ZW50d2lja2VsbiBnaWx0LCBkYW1pdCBhdWNoIGFuZGVyZSBNZW5zY2hlbiBkYXJhbiB0ZWlsaGFiZW4ga29lbm5lbi4KClRqYSwgZGFubiB3ZXJkIGljaCBtYWwgZW50d2lja2VsbiAuLi4KCk1haGEsIFNwaW9uIHVuZCBHaWZ0bWlzY2hlciBhLkQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB3ZXIgd2Fyc3QgZHUgaW0gdm9yaWdlbiBMZWJlbj8gKEFwb2xsb25pYSwgMjIuIEF1ZyAyMDAzLCAxMDoyNzozMyk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwNjE1NDA0MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxNTM0ODc5CkJlaSBtaXIgd2FyJ3MgUnVtYWVuaWVuIHVtIDg1MCAtIEFzdHJvbm9tLCBLYXJ0ZW56ZWljaG5lciwgQXN0cm9sb2dlLi4uCgpVbmQgZnVlciBhbmRlcmUgTWVuc2NoZW4gd2FyIGljaCBzZWx0c2FtLgoKUGFzc3QgZG9jaCwgYmluIGljaCBoZXV0ZSBub2NoICpnKgoKQXBvKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogd2VyIHdhcnN0IGR1IGltIHZvcmlnZW4gTGViZW4/IChNYWhhcmV0LCAyMi4gQXVnIDIwMDMsIDEwOjMwOjMyKToKfiMhIHJuPUFwb2xsb25pYSBydD0xMDYxNTQwODUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTUzNDg3OQpIYWIgbWFsIGdlcmFkZSBuZW4gQmVrYW5udGVuIGF1c2dldGVzdGV0OgpXZW5uIFNpZSBlaW4gTXVlbGxtYW5uIHdhcmVuLCBkYW5uIHdhcmVuIFNpZSBkZXIgQ2hlZiBkZXIgTXVlbGxtYWVubmVyLiAtLQpXYXNuIGRhcyBmdWVyIGVpbiBLb21wbGltZW50PwoKTWFoYSwgU3Bpb24gdW5kIEdpZnRtaXNjaGVyIGFECgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB3ZXIgd2Fyc3QgZHUgaW0gdm9yaWdlbiBMZWJlbj8gKE1vcmdvdGgsIDIyLiBBdWcgMjAwMywgMTA6MzI6MTIpOgp+IyEgcm49TWFoYXJldCBydD0xMDYxNTQxMDMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTUzNDg3OQpJaHJlIFBhc3QtTGlmZSBEaWFnbm9zZToKSWNoIHdlaXNzIG5pY2h0LCB3aWUgU2llIGVzIGVtcGZpbmRlbiwgYWJlciBTaWUgd2FyZW4gbWFlbm5saWNoIGluIElocmVyCmxldHp0ZW4gSW5rYXJuYXRpb24uCklociBkYW1hbGlnZXIgR2VidXJ0c29ydCBiZWZpbmRldCBzaWNoIGlyZ2VuZHdvIGluIGRlciBOYWVoZSB2b24gUGhpbGxpcHBpbmVuCnZlcm11dGxpY2ggdW0gMTE1MC4KSWhyIEJlcnVmIHdhciBUYWVuemVyLCBTYWVuZ2VyLCBTY2hhdXNwaWVsZXIuCkVpbmUga3VyemUgQmVzY2hyZWlidW5nIElocmVzIHBzeWNob2xvZ2lzY2hlbiBQcm9maWxzIGltIHZlcmdhbmdlbmVuIExlYmVuOgpTa3J1cGVsbG9zZXIgQ2hhcmFrdGVyLCBzb3JnZmFlbHRpZ2UgQWJ3YWVndW5nIHZvbiBFbnRzY2hlaWR1bmdlbiBpbgprcml0aXNjaGVuIFNpdHVhdGlvbmVuLCBtaXQgZXh6ZWxsZW50ZXIgU2VsYnN0YmVoZXJyc2NodW5nIHVuZCBlaW5lbSBzdGFya2VuCldpbGxlbi4gU2llIHd1cmRlbiBzdGV0cyByZXNwZWt0aWVydCwgYWJlciBuaWNodCBpbW1lciBnZWxpZWJ0LgpEaWUgamV0emlnZSBBdWZnYWJlLCBkaWUgYXVzIGRlbSB2ZXJnYW5nZW5lbiBMZWJlbiByZXN1bHRpZXJ0OgpJaHJlIEF1ZmdhYmUgLS0gYmVnZWduZW4gU2llIGRlciBHZXdhbHQgdW5kIERpc2hhcm1vbmllIHVuc2VyZXIgV2VsdCwgdW0gZGllCld1cnplbG4gdW5kIFVyc3BydWVuZ2UgZGVyc2VsYmVuIHp1IHZlcnN0ZWhlbi4gQWxsZSBnbG9iYWxlbiBQcm9ibGVtZSBoYWJlbgphZWhubGljaGUgVXJzcHJ1ZW5nZS4KTmEsIGtvZW5uZW4gU2llIHNpY2ggZXJpbm5lcm4/CgpOb2UsIG5pY2h0IHdpcmtsaWNoLCBpY2ggd2Vpc3MgZGFzIGljaCBtYWwgZWluIHNjaHdhemVyIFBhbnRoZXIgd2FyIDopCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogd2VyIHdhcnN0IGR1IGltIHZvcmlnZW4gTGViZW4/IChCYW1idWxrbywgMjIuIEF1ZyAyMDAzLCAxMDozMzozMik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNjE1NDExMzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxNTM0ODc5CkluIGRlciBOYWVoZSBkZXIgUGhpbGxpcHBpbmVuPyBBbHNvIG1pdHRlbiBpbSBNZWVyPyBKZXR6dCB3aXNzZW4gd2lyIGVuZGxpY2gKd28gQXRsYW50aXMgaXN0IDotKQoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IHdlciB3YXJzdCBkdSBpbSB2b3JpZ2VuIExlYmVuPyAoQWxib2luLCAyMi4gQXVnIDIwMDMsIDEwOjUzOjU3KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEwNjE1NDEyMTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxNTM0ODc5CmVzIHdpcmQgaW4gZGVyIFRhdCBub2NoIGx1c3RpZ2VyLCB3ZW5uIG1hbiBkYXMgR2VidXJ0c2RhdHVtIHNhZW10bGljaGVyClZlcndhbmR0ZXIgYnp3LiBlaG1hbGlnZXIgTGViZW5zZ2VmYWVocnRlbiBlaW50aXBwdCA7LSkKCmFsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiB3ZXIgd2Fyc3QgZHUgaW0gdm9yaWdlbiBMZWJlbj8gKFNjb3JwaW9uLCAyMi4gQXVnIDIwMDMsIDExOjEzOjQ3KToKfiMhIHJuPUFsYm9pbiBydD0xMDYxNTQyNDM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTUzNDg3OQpJaHJlIFBhc3QtTGlmZSBEaWFnbm9zZToKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0tCkljaCB3ZWlzcyBuaWNodCwgd2llIFNpZSBlcyBlbXBmaW5kZW4sIGFiZXIgU2llIHdhcmVuIG1hZW5ubGljaCBpbiBJaHJlcgpsZXR6dGVuIElua2FybmF0aW9uLgpJaHIgZGFtYWxpZ2VyIEdlYnVydHNvcnQgYmVmaW5kZXQgc2ljaCBpcmdlbmR3byBpbiBkZXIgTmFlaGUgdm9uIFRpYmV0CnZlcm11dGxpY2ggdW0gOTI1LgpJaHIgQmVydWYgd2FyIFNlZW1hbm4sIEtvY2gsIFppbW1lcm1hbm4uCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotLQpFaW5lIGt1cnplIEJlc2NocmVpYnVuZyBJaHJlcyBwc3ljaG9sb2dpc2NoZW4gUHJvZmlscyBpbSB2ZXJnYW5nZW5lbiBMZWJlbjoKdW5nZWJ1bmRlbmUgS3VlbnN0bGVybmF0dXIsIG15c3Rpc2NoLCBob2NoIGJlZ2FidCwgaW1zdGFuZGUgYW50aWtlIEJ1ZWNoZXIgenUKdmVyc3RlaGVuLiBNYWdpc2NoZSBGYWVoaWdrZWl0ZW4sIGtvZW5udGVuIGF1Y2ggZGVuIGR1bmtsZW4gS3JhZWZ0ZW4gZ2VkaWVudApoYWJlbi4KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0tCkRpZSBqZXR6aWdlIEF1ZmdhYmUsIGRpZSBhdXMgZGVtIHZlcmdhbmdlbmVuIExlYmVuIHJlc3VsdGllcnQ6CkRpZSBhZW5nc3RsaWNoZW4gdW5kIGVpbnNhbWVuIE1lbnNjaGVuIGdpYnQgZXMgdWViZXJhbGwsIHVuZCBJaHIgUHJvYmxlbSBpc3QKZXMgLS0gZGllc2UgRXJzY2hlaW51bmdlbiBpbiBzaWNoIHNlbGJzdCB6dSB1ZWJlcndpbmRlbiwgdW0gZGFubiBhbmRlcmVuCk1lbnNjaGVuIGhlbGZlbiB6dSBrb2VubmVuLgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLS0KTmEsIGtvZW5uZW4gU2llIHNpY2ggZXJpbm5lcm4/CgprbGluZ3Qgc3Bhbm5lbmQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IHdlciB3YXJzdCBkdSBpbSB2b3JpZ2VuIExlYmVuPyAoQW55c2lkb3JhLCAyMi4gQXVnIDIwMDMsIDExOjE5OjQxKToKfiMhIHJuPVNjb3JwaW9uIHJ0PTEwNjE1NDM2Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxNTM0ODc5CkljaCB3ZWlzcyBuaWNodCwgd2llIFNpZSBlcyBlbXBmaW5kZW4sIGFiZXIgU2llIHdhcmVuIHdlaWJsaWNoIGluIElocmVyCmxldHp0ZW4gSW5rYXJuYXRpb24uCklociBkYW1hbGlnZXIgR2VidXJ0c29ydCBiZWZpbmRldCBzaWNoIGlyZ2VuZHdvIGluIGRlciBOYWVoZSB2b24gQXJrdGlzCnZlcm11dGxpY2ggdW0gMTEwMC4KSWhyIEJlcnVmIHdhciBVbnRlcmhhbHRlciwgTXVzaWtlciwgUG9ldCwgVGVtcGVsLVRhZW56ZXIoaW4pLgoKRWluZSBrdXJ6ZSBCZXNjaHJlaWJ1bmcgSWhyZXMgcHN5Y2hvbG9naXNjaGVuIFByb2ZpbHMgaW0gdmVyZ2FuZ2VuZW4gTGViZW46ClNpZSB3YXJlbiBlaW5lIHZlcm51ZW5mdGlnZSwgcHJha3Rpc2NoZSBQZXJzb24sIE1hdGVyaWFsaXN0IG9uZSBzcGlyaXR1ZWxsZXMKQmV3dXNzdHNlaW4uIERpZXNlIHNpbXBsZSBXZWlzaGVpdCBoYWxmIGRlbiBrcmFlbmtsaWNoZW4gdW5kIGFybWVuIE1lbnNjaGVuIGluCklocmVyIFVtZ2VidW5nLgoKRGllIGpldHppZ2UgQXVmZ2FiZSwgZGllIGF1cyBkZW0gdmVyZ2FuZ2VuZW4gTGViZW4gcmVzdWx0aWVydDoKU2llIHNvbGx0ZW4gSWhyZSBUYWxlbnQgZnVlciBkaWUgTGllYmUsIGRpZSBGcmV1ZGUgdW5kIGRlbiBFbnRodXNpYXNtdXMgd2VpdGVyCmVudHdpY2tlbG4sIHVtIGFuZGVyZSBNZW5zY2hlbiBkYXJhbiB0ZWlsaGFiZW4genUgbGFzc2VuLgpOYSwga29lbm5lbiBTaWUgc2ljaCBlcmlubmVybj8KCk5hamEsIGtsaW5ndCBqYSBuaWNodCBzb25kZXJsaWNoIHNwYW5uZW5kIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogd2VyIHdhcnN0IGR1IGltIHZvcmlnZW4gTGViZW4/IChIdW1uaSwgMjIuIEF1ZyAyMDAzLCAxMToyMToyMik6Cn4jISBybj1BbnlzaWRvcmEgcnQ9MTA2MTU0Mzk4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE1MzQ4NzkKU2NobGVjaHRlcyBJbnRlcmZhY2UuICwsSW4gZGVyIE5hZWhlIHZvbiBBcmt0aXNgYCwgZWNodCBzdXBlci4uLiB3aWUgbXVlbGx0Cm1hbiBkZXJlbiByZXBmaWxlIHZvbGw/CgpIdW1uaSwgUGhpbG9zb3BoIGF1cyBkZXIgTmFlaGUgdm9uIFNXLVVTQSB1bSAxNzc1LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogd2VyIHdhcnN0IGR1IGltIHZvcmlnZW4gTGViZW4/IChIdXJheHByYXgsIDIyLiBBdWcgMjAwMywgMTE6MjQ6MDIpOgp+IyEgcm49U2NvcnBpb24gcnQ9MTA2MTU0MzYyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE1MzQ4NzkKQWxzIHRpYmV0aXNjaGVyIFNlZW1hbm4gZHVlcmZ0ZXN0IHp1IGVpbmUgemllbWxpY2hlIFNlbHRlbmhlaXQgZ2V3ZXNlbiBzZWluIDspClVuZCBhbHMgZWluZmFjaGVyIEhhbmR3ZXJrZXIgZGFtYWxzIGltc3RhbmRlIGFudGlrZSBCdWVjaGVyIHp1IHZlcnN0ZWhlbj8gRWluCmJpc2NoZW4gcmVhbGlzdGlzY2hlciBzb2xsdGVuIGRpZSBMZWJlbnNsYWV1ZmUgc2Nob24gc2Vpbi4uLgpIdXJheCosIGRldXRzY2hlciBKdXdlbGllci9VaHJtYWNoZXIgYXVzIGRlbSAxMy4gSmhkLiAocGFzc3Qgd2VuaWdzdGVucwp6dXNhbW1lbiwgd2VubiBhdWNoIGxhbmd3ZWlsaWcpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogd2VyIHdhcnN0IGR1IGltIHZvcmlnZW4gTGViZW4/IChDYXR3ZWF6bGUsIDIyLiBBdWcgMjAwMywgMTE6MjU6MTEpOgp+IyEgcm49SHVtbmkgcnQ9MTA2MTU0NDA4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE1MzQ4NzkKV2VubiBpaHIgamV0enQgYXVjaCBub2NoIGFsbGUgZXVlciBHZWJ1cnRzZGF0dW0gZGVuZWJlbiBzY2hyZWlidCwgc29sbHRlbiB3aXIKaXJnZW5kd2FubiBkZW4gUmFuZG9tLU1lY2hhbmlzbXVzIHJhdXNoYWJlbiA6KQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogd2VyIHdhcnN0IGR1IGltIHZvcmlnZW4gTGViZW4/IChNaXJpbCwgMjIuIEF1ZyAyMDAzLCAxMToyNTo0OSk6Cn4jISBybj1IdXJheHByYXggcnQ9MTA2MTU0NDI0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE1MzQ4NzkKSWNoIHdlaWFudHdvcnRlIG5pY2h0LCB3aWUgU2llIGVzIGVtcGZpbmRlbiwgYWJlciBTaWUgd2FyZW4gbWFlbm5saWNoIGluIElocmVyCmxldHp0ZW4gSW5rYXJuYXRpb24uCklociBkYW1hbGlnZXIgR2VidXJ0c29ydCBiZWZpbmRldCBzaWNoIGlyZ2VuZHdvIGluIGRlciBOaGUgdm9uIE5vcmQgQ2hpbmEKdmVybXV0bGljaCB1bSAxMjI1LgpJaHIgQmVydWYgd2FyIFNjaGFmaGlydGUsIFJlaXRlciwgRnJzdGVyLCBXYWxkYXJiZWl0ZXIuCkVpbmUga3VyemUgQmVzY2hyZWlidW5nIElocmVzIHBzeWNob2xvZ2lzY2hlbiBQcm9maWxzIGltIHZlcmdhbmdlbmVuIExlYmVuOgpSZXZvbHV0aW9ucmVyIFR5cC4gU2llIGluaXRpZXJ0ZW4gVmVybmRlcnVuZ2VuIGluIGplZGVyIEhpbnNpY2h0IC0gUG9saXRpaywKV2lydHNjaGFmdCwgUmVsaWdpb24sIEhhdXNoYWx0LiBTaWUgaGF0dGVuIGRhcyBaZXVnIHp1IGVpbmVtIEFuZnVlaHJlci4KRGllIGpldHppZ2UgQXVmZ2FiZSwgZGllIGF1cyBkZW0gdmVyZ2FuZ2VuZW4gTGViZW4gcmVzdWx0aWVydDoKU2llIHNpbmQgYW5nZWhhbHRlbiBhbGxlIGFuZGVyZW4gTWVuc2NoZW4genUgdmVyc3RlaGVuIHVuZCBkaWUKTGViZW5zc2Nod2llcmlna2VpdGVuIG1pdCBmcm9oZW0gSGVyemVuIGFuenVuZWhtZW4uIFNpZSBzb2xsdGVuIGFuZGVyZW4KTWVuc2NoZW4gaGVsZmVuLCB1bmQgSWhuZW4gZGVuIEdlaXN0IGRlciBGcmV1ZGUgYnJpbmdlbi4KTmEsIGtubmVuIFNpZSBzaWNoIGVyaW5uZXJuPwoKTWlyaWwsIGhldXRlIG1hbCBnYW56IHZlcnN0YWVuZG5pc3ZvbGwgYWJlciBlcmlubmVydW5nc2xvcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiB3ZXIgd2Fyc3QgZHUgaW0gdm9yaWdlbiBMZWJlbj8gKFdoaXRldGlnZXIsIDIyLiBBdWcgMjAwMywgMTE6MjY6MDIpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNjE1NDQzMTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxNTM0ODc5CkljaCB0aXBwZSBtYWwgYXVmIDogVGFnIC0+IEJlcnVmLiBNb25hdCAtPiBjaGFyYWt0ZXIuIGphaHIgLT5hdWZnYWJlLiBvZGVyIHNvCjspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogd2VyIHdhcnN0IGR1IGltIHZvcmlnZW4gTGViZW4/IChNYWhhcmV0LCAyMi4gQXVnIDIwMDMsIDExOjI3OjQ4KToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA2MTU0NDM2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE1MzQ4NzkKRGllIE9ydGUgdmFyaWllcmVuIGRvY2ggYXVjaC4gVW5kIGRpZSBaZWl0LiBTbyBiaWxsaWcgaXN0IGRhcyBkYW5uIGRvY2ggbmljaHQKOykKCk1haGEsIFNwaW9uIHVuZCBHaWZ0bWlzY2hlciBhRAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IHdlciB3YXJzdCBkdSBpbSB2b3JpZ2VuIExlYmVuPyAoQnJvdG5hZWwsIDIyLiBBdWcgMjAwMywgMTE6Mzc6MTYpOgp+IyEgcm49TWFoYXJldCBydD0xMDYxNTQ0NDY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTUzNDg3OQpDb29sLCBtZWluIEJlcnVmIHdhciBHb2xkZ3JhZWJlciBvZGVyIExlaWNoZW5iZXN0YXR0ZXIsIGJpbiBlaW4KUmV2b2x1dGlvbmFlcmVyIHR5cCB1bmQgaGFiIGRhcyB6ZXVnIHp1bSBhbmZ1ZWhyZXIuIE1laW5lIEF1ZmdhYmUgaXN0LCBkZW11dAp1bmQgdmVydHJhdWVuIGluIGRpZSBzcGlyaXR1ZWxsZW4gcHJpbnppcGllbiB6dSBsZXJuZW4gdW5kIGF1ZiBnb2V0dGxpY2hlCnp1c2FtbWVuaGFlbmdlIHp1IHZlcnRyYXVlbi4uCkJyb3QsIEtsZXJpa2VyIHNjaG9uIGltIHZvcmlnZW4gTGViZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiB3ZXIgd2Fyc3QgZHUgaW0gdm9yaWdlbiBMZWJlbj8gKE5vbm5lLCAyMi4gQXVnIDIwMDMsIDExOjQ1OjU4KToKfiMhIHJuPUJyb3RuYWVsIHJ0PTEwNjE1NDUwMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxNTM0ODc5CkRhbm4gYmluIGljaCBzb3p1c2FnZW4gRGVpbiBWb3JhcmJlaXRlciAqRyoKCk5vbm5lLCBWb2xsc3RyZWNrZXIgcmVsaWdpb2VzZXIgT3BmZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogd2VyIHdhcnN0IGR1IGltIHZvcmlnZW4gTGViZW4/IChBbWF6b3JhLCAyMi4gQXVnIDIwMDMsIDEyOjA3OjQzKToKfiMhIHJuPU5vbm5lIHJ0PTEwNjE1NDU1NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxNTM0ODc5Cm5lIGlzIGtsYXI6IGljaCB3YXIgd2VpYmxpY2gsIG1laW4gZ2VidXJ0c29ydCBpbiBkZXIgbmFlaGUgdm9uIHN1bWF0cmEgdW1kIDM3NQp1bmQgbWVpbiBiZXJ1ZiB3YXIga3VlbnN0bGVyaW4sIG1hZ2llcmluIG9kZXIgd2FocnNhZ2VyaW4gdW5kIGRpZSBqZXR6dGlnZQphdWZnYWJlIGF1cyBkZW0gdmVyZ2FuZ2VuZW4gbGViZW4gaXN0IGVzIGFlbmdzdGxpY2hlbiB1bmQgZWluc2FtZW4gbWVuc2NoZW4genUKaGVsZmVuLgphbWF6b3JhIHdhYWFhYWFodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IHdlciB3YXJzdCBkdSBpbSB2b3JpZ2VuIExlYmVuPyAoQ2F0d2VhemxlLCAyMi4gQXVnIDIwMDMsIDEyOjIyOjUyKToKfiMhIHJuPU1haGFyZXQgcnQ9MTA2MTU0NDQ2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE1MzQ4NzkKRGFzIEphaHIgaXN0IGJlc3RpbW10IGlyZ2VuZG5lIFF1ZXJzdW1tZSBtaXQgNTAgZ2Vtb2R1bG90IHVuZCBuZW0gT2Zmc2V0LiBVbmQKZGVyIE9ydCB3aXJkIGJlc3RpbW10IGF1Y2ggYXVzIG5lciBhYmdlemFlaGx0ZW4gVGFiZWxsZSBhdXNnZXdhZWhsdCwgZGEgbXVzc3RlCmJlc3RpbW10IGF1Y2ggbnVyIG1pdCBkZW4gWmFobGVuIHdhcyBydW1yZWNobmVuLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VnaGllciBhYndlcnRlbiAhIChSb2NodXMsIDIyLiBBdWcgMjAwMywgMTI6MjY6MDIpOgp+IyEgcm49TW9yZ290aCBydD0xMDYxNDc1MjE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTQ3NTIxOQpSb2NodXMgd2VkZWx0IG1pdCBlaW5lbSAiUGl0ZmFsbCBpc3QgbmUgTHVzY2hlIi1GYWVobmNoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdlZ2hpZXIgYWJ3ZXJ0ZW4gISAoTW9yZ290aCwgMjIuIEF1ZyAyMDAzLCAxMjoyODowMCk6Cn4jISBybj1Sb2NodXMgcnQ9MTA2MTU0Nzk2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE0NzUyMTkKTW9yZ290aCB3ZWRlbHQgbWl0IGVpbmVtICJTTVMtU2tpbGwgbmljaHQgbWVociBPZmZsaW5lLUFid2VydGVuIi1GYWVobmNoZW4gIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IHdlciB3YXJzdCBkdSBpbSB2b3JpZ2VuIExlYmVuPyAoRm9vYmFyLCAyMi4gQXVnIDIwMDMsIDEyOjQ4OjAwKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDYxNTQ3NzcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTUzNDg3OQpNZWluZSBsZXR6dGVuIExlYmVuIC0gc293b2hsIGRlciBSTC0gYWxzIGF1Y2ggZGVyIFZMLVBlcnNvbiAtIHNpbmQgZ2FlbnpsaWNoCnVuendlcmdlbmhhZnQgdW5kIGdlaGVuIGtlaW5lbiB3YXMgYW4uCgpGb29iYXIgLSBoYXQgaW0gbGV0enRlbiBMZWJlbiBzaWNoZXIgU2VsYnN0bW9yZCBiZWdhbmdlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IHdlciB3YXJzdCBkdSBpbSB2b3JpZ2VuIExlYmVuPyAoTW9yZ290aCwgMjIuIEF1ZyAyMDAzLCAxMjo0OTowOCk6Cn4jISBybj1Gb29iYXIgcnQ9MTA2MTU0OTI4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE1MzQ4NzkKRHUgYmlzdCBzaWNoZXIgYmVpbSBCYWV1bWVmaWNrZW4gYWJnZXJ1dHNjaHQgdW5kIGJpc3QgZGFubiB2ZXJibHV0ZXQgOikKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogd2VyIHdhcnN0IGR1IGltIHZvcmlnZW4gTGViZW4/IChGb29iYXIsIDIyLiBBdWcgMjAwMywgMTI6NTE6MDQpOgp+IyEgcm49TW9yZ290aCBydD0xMDYxNTQ5MzQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTUzNDg3OQpXaWVzbywgd2Fyc3QgRHUgZWluIEJhdW0/CgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFBhcnR5b3J0IFJpZW5lY2sgKFZhbmlvbiwgMjIuIEF1ZyAyMDAzLCAxMzo1Nzo0OCk6Cn4jISBvbj1WYW5pb24gb3Q9MTA2MTU1MzQ1MiBvZz1wYXJ0eQp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwNjE1NTMzMDYgcmc9cGFydHkKfiMhIHRpZD0xMDYxNDc4NjU0CktvZW5udCBpaHIgbWFsIGRpZXNlcyBnYW56ZSBXaW50ZXJnZXJlZGUgbGFzc2VuLiBJY2ggdmVyc3VjaGUgaGllciBnZXJhZGUsCm5vY2ggZGVuIFNvbW1lciB6dSBnZW5pZXNzZW4uIFJlaWNodCBlcyBuaWNoLCBkYXNzIGRhcyBXZXR0ZXIgbWlyIGVpbmVuIFN0cmljaApkdXJjaCBkaWUgUmVjaG51bmcgbWFjaHQ/IE11ZXNzdCBpaHIgYXVjaCBub2NoIHVlYmVyICpiaWJiZXIqIFdpbnRlcnBhcnRpZXMKcmVkZW4/CgpWKiwgZ2VodCBnbGVpY2ggaW5zIEZyZWliYWQuIChtaXIgZG9jaCBlZ2FsLCBvYnMga2FsdCBpcyAtIAogICAgaXMgc2NobGllc3NsaWNoIFNvbW1lcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFBhcnR5b3J0IFJpZW5lY2sgKENhdHdlYXpsZSwgMjIuIEF1ZyAyMDAzLCAxMzo1OTo1Mik6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTA2MTU1MzMwNiByZz1wYXJ0eQp+IyEgdGlkPTEwNjE0Nzg2NTQKSWVoLCBIZWxsb3dlZW4uCgpBbWVyaWthbmlzY2hlcyBJbXBvcnRnZWx1bXBlIC4uLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBQYXJ0eW9ydCBSaWVuZWNrIChDYXR3ZWF6bGUsIDIyLiBBdWcgMjAwMywgMTQ6MDA6MzEpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNjE1NTM0Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxNDc4NjU0CkVoPwpJc3QgZG9jaCBzY2hvbiBmYXN0IHdpZWRlciBXaW50ZXIuIEhhc3RlIG1hbCBkcmF1ZiBnZWFjaHRldCwgd2llIGZydWVoIGRhcwpzY2hvbiB3aWVkZXIgZHVua2VsIGlzdD8KCllUQyAoamFtbWVybmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBQYXJ0eW9ydCBSaWVuZWNrIChBcG9sbG9uaWEsIDIyLiBBdWcgMjAwMywgMTQ6MDA6NDUpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNjE1NTM1OTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxNDc4NjU0CklzIGRvY2ggd3Vyc2NodCwgc29sYW5nJ3MgbmVuIEdydW5kIHp1bSBGZWllcm4gbGllZmVydCAoYzoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFBhcnR5b3J0IFJpZW5lY2sgKFZhbmlvbiwgMjIuIEF1ZyAyMDAzLCAxNDowMDo0Nyk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA2MTU1MzYzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE0Nzg2NTQKOmphbW1lcnQgc3BvbnRhbiBtaXQuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUGFydHlvcnQgUmllbmVjayAoQ2F0d2VhemxlLCAyMi4gQXVnIDIwMDMsIDE0OjAxOjMzKToKfiMhIHJuPUFwb2xsb25pYSBydD0xMDYxNTUzNjQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTQ3ODY1NApOZWluLCBpc3QgZXMgbmljaHQuClNhdWJsb2VkZSBLbGVpZGVyb2RudW5nIGdpYnRzIGRhLCBlcmlubmVydCB2aWVsIHp1IGRldXRsaWNoIGFuIGRpZSBKZWNrZW4gLi4uCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFBhcnR5b3J0IFJpZW5lY2sgKEdyaW1tYm9ybiwgMjIuIEF1ZyAyMDAzLCAxNDowMjowNSk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDYxNTUzNjk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTQ3ODY1NApKYS4gMjAwNC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogUGFydHlvcnQgUmllbmVjayAoVmFuaW9uLCAyMi4gQXVnIDIwMDMsIDE0OjAyOjE3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDYxNTUzNzI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTQ3ODY1NApJbW1lcmhpbi4gOikKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBQYXJ0eW9ydCBSaWVuZWNrIChBbGJvaW4sIDIyLiBBdWcgMjAwMywgMTQ6MDM6MDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjE1NTM3MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxNDc4NjU0CnNvbW1lciAyMDA0CgphbCAocHJhZXppc2lvbiBtdXNzIHNjaG9uIHNlaW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBQYXJ0eW9ydCBSaWVuZWNrIChWYW5pb24sIDIyLiBBdWcgMjAwMywgMTQ6MDM6MjgpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwNjE1NTM2NDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxNDc4NjU0Ckxhc3N0IHVucyBsaWViZXIgaXJnZW5kd2FzIG5pY2h0aW1wb3J0aWVydGVzIGZlaWVybi4gSm9mLUZlc3QgenVtIEJlaXNwaWVsLgpEZXIgVm9ydGVpbCBpc3QsIGRhc3Mgd2lyIGRhIHJlbGF0aXYgZnJlaSBpbiBkZXIgVGVybWlucGxhbnVuZyBzaW5kLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFBhcnR5b3J0IFJpZW5lY2sgKEFsYm9pbiwgMjIuIEF1ZyAyMDAzLCAxNDowNjowMCk6Cn4jISBybj1WYW5pb24gcnQ9MTA2MTU1MzgwOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE0Nzg2NTQKZ2FicyBlaWdlbnRsaWNoIHNjaG9uIGdlZGFua2VuIHdhcyBhbmdlc2ljaHRzIHN0ZWlnZW5kZW4gTmFjaHd1Y2hzZXMgaW4KWnVrdW5mdCBnZXRhbiB3ZXJkZW4ga29lbm50ZT8gVmllbGxlaWNodCBwYXJhbGVsIGRhenUgZWluIEtpbmRlcmZlcmllbmxhZ2VyLApuYXR1ZXJsaWNoIHZvbiB1bnMgc2VsYnN0IG9yZ2FuaXNpZXJ0LiBEYW5uIGhhYmVuIHdpciBuYWVtbGljaCBhdWNoIGdyb3NzZQpDaGFuY2VuIGRhcyB3aXIgdm9uIHVuc2VyZW4gCmxpZWJlbiBLaW5kZXJuIGltIFJlbnRlbmFsdGVyIHp1IGRlbiBQYXJ0aWVzIGdlcm9sbHQgd2VyZGVuLgoKQWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFBhcnR5b3J0IFJpZW5lY2sgKEJhbWJpLCAyMi4gQXVnIDIwMDMsIDE0OjMxOjMxKToKfiMhIHJuPUFsYm9pbiBydD0xMDYxNTUzOTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTQ3ODY1NApEdSB3aWxsc3QgInVuc2VyZSIgS2luZGVyIGxhdXRlciBQc3ljaG9wYXRoZW4gdWViZXJsYXNzZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2VyIHdhcnN0IGR1IGltIHZvcmlnZW4gTGViZW4/IChHbm9tZSwgMjIuIEF1ZyAyMDAzLCAxNjoxNjo0MSk6Cn4jISBybj1BbGJvaW4gcnQ9MTA2MTUzNDg3OSByZz13d3cKfiMhIHRpZD0xMDYxNTM0ODc5CiJJY2ggd2VpYW50d29ydGUgbmljaHQsIHdpZSBTaWUgZXMgZW1wZmluZGVuLCBhYmVyIFNpZSB3YXJlbiB3ZWlibGljaCIKImluIElocmVyIGxldHp0ZW4gSW5rYXJuYXRpb24uIgoKZGFzIHdhciBtaXIgU08gd2FzIHZvbiBrbGFyLi4uID46KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IHdlciB3YXJzdCBkdSBpbSB2b3JpZ2VuIExlYmVuPyAoQXJrLCAyMi4gQXVnIDIwMDMsIDE2OjUxOjQ3KToKfiMhIHJuPUFueXNpZG9yYSBydD0xMDYxNTQzOTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTUzNDg3OQpEaWUgRXNraW1vcyBrb2VubmVuIGphIGF1ZiBlaW5lbiByZWljaGVuIFNjaGF0eiB2b24gTXVzaWtlcm4vUG9ldGVuIG9kZXIKVGVtcGVsdGFlbnplcihpbm5lbikgenVydWVja2JsaWNrZW4gKnBydXN0KiBEYSB3dXJkZSB3b2hsIGZhbHNjaCBnZXd1ZXJmZWx0Pwo6KQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiB3ZXIgd2Fyc3QgZHUgaW0gdm9yaWdlbiBMZWJlbj8gKFRyb3ksIDIyLiBBdWcgMjAwMywgMTc6MTI6MjMpOgp+IyEgcm49QXJrIHJ0PTEwNjE1NjM5MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxNTM0ODc5CkljaCB3ZWlzcyBqYSBuaWNodCwgd2VycyBnZWJhdXQgaGF0LCBhYmVyIGlzdCBqYSBzY2hvbiB0b2xsLCB3ZWlibGljaGUgQ2hlZnMKZGVyIE11ZWxsYWJmdWhyIHVtIDc1MCBpbiBTaWJpcmllbiBtdWVzc2VuIGphIG5lIE1hbmdlIHp1IHR1biBnZWhhYnQgaGFiZW4sCmJlaQphbGwgZGVyIFVtd2VsdHZlcnNjaG11dHp1bmcgZGFtYWxzLi4uCgpBbGxlcmRpbmdzIHdhciBkYXMgbnVyIG5lIEJla2FubnRlLi4uCgpUcm95IC0gU3Bpb24gaW4gZGVyIFR1ZXJrZWkgdW0gNzc1LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IHdlciB3YXJzdCBkdSBpbSB2b3JpZ2VuIExlYmVuPyAoQXJrLCAyMi4gQXVnIDIwMDMsIDE3OjE4OjA1KToKfiMhIHJuPVRyb3kgcnQ9MTA2MTU2NTE0MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE1MzQ4NzkKU29zbywgaWNoIHdhciB3ZWlibGljaCwgSGFlbmRsZXJpbi9HZXNjaGFlZnRzZnJhdS9NYWtsZXJpbiBpbiBOZXVzZWVsYW5kIHVtCjkyNS4gS3VlaGwgdW5kIGdlbGFzc2VuIGluIGplZGVyIFNpdHVhdGlvbiwgdHlwaXNjaGUgcHN5Y2hvbG9naXNjaGUKRWlnZW5zY2hhZnRlbiAod2FocnNjaGVpbmxpY2ggYXVzIE1hbmdlbCBhbiBHZXNjaGFlZnRlbiBpbiBOZXVzZWVsYW5kIGluIGRlcgpaZWl0IGFscyBkZW1lbnRlIEtyYWV1dGVyaGV4ZSB2b24gZW50c2V0enRlbiBLdW5kZW4gZ2VzdGVpbmlndCB3b3JkZW4pLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiB3ZXIgd2Fyc3QgZHUgaW0gdm9yaWdlbiBMZWJlbj8gKEFoYWIsIDIyLiBBdWcgMjAwMywgMTk6MzE6NTUpOgp+IyEgcm49QnJvdG5hZWwgcnQ9MTA2MTU0NTAzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE1MzQ4NzkKRGFzIGtvbW10IG1pciB0YXRzYWVjaGxpY2ggYWxsZXMgc2VociBiZWthbm50IHVuZCBwYXNzZW5kIHZvci4gOy0pCkxlaWNoZW4gYmVzdGF0dGVzdCBEdSBoaWVyIGF1Y2gsIGJldm9yenVndCBpbmNsLiBBdXNydWVzdHVuZy4gVW5kIGRpZQpFcmZhaHJ1bmcgdm9tIEdvbGRncmFiZW4ga29tbXQgRGlyIGRhYmVpIHp1Z3V0ZS4gSXN0IGRvY2ggbmV0dCEgOi0pCgpBaGFiLCBhdWNoIGltIHZvcmlnZW4gTGViZW4gTGFuZHJhdHRlLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9ITkUgV09SVEUgKFJvbGFuZCwgMjMuIEF1ZyAyMDAzLCAxMjo1OTowMyk6CgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBLcmlzdGFsbGRyYWNoZW5dIFZvcnNpY2h0LCBEZWVwYmx1ZSBncmVpZnQgaW1tZXIgdm9uCltNb2VyZGVyOkdlaXN0IGVpbmVzIEtyaXN0YWxsZHJhY2hlbl0gaGludGVuIGFuIQoKW01vZXJkZXI6RGVlcGJsdWVdIERSQUNIRU5UT0VURU5EUkFDSEVOVE9FVEVORFJBQ0hFTlRPRVRFTgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJlbWRlIERpbWVuc2lvbmVuIChFdXBob3Jpb24sIDIzLiBBdWcgMjAwMywgMjI6NDE6MTgpOgouLi5oYWJlciBhdWNoIGZyZW1kZSBaYWVobHdlaXNlbiA6KQoKRGllcyBpc3QgZGVyIEFuZmFuZyBlaW5lcyBsYW5nZW4gVHVubmVscywgZGVyIGluIGVpbmVuIEJlcmcgenUgZnVlaHJlbgpzY2hlaW50LiBFcyB3aXJkIGltbW1lciBoZWlzc2VyLCBqZSB3ZWl0ZXIgRHUgZ2Voc3QuIFNlbHRzYW0ga2xpbmdlbmRlIExhdXRlCmRyaW5nZW4gYXVzIGRlbSBHYW5nLCBkZXIgbmFjaCBTdWVkb3N0ZW4gd2VpdGVyIGluIGRpZXNlbiBCZXJnIGZ1ZWhydC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWR3ZXN0ZW4gdW5kIHN1ZWRvc3Rlbi4KRWluIEZsYWVzY2hjaGVuIG1pdCBGZXVlcndhc3Nlci4gKDIpCjIgRmxhZXNjaGNoZW4gbWl0IEZldWVyd2Fzc2VyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3BvbnRhbnN0YW1tdGlzY2ggSGFtYnVyZyAoS3JlbGxqYSwgMjUuIEF1ZyAyMDAzLCAxMTo0NzowNyk6Cn4jISBybj1BbWF6b3JhIHJ0PTEwNjE4MDQ2ODcgcmc9dHJlZmZlbgp+IyEgdGlkPTEwNjE1NzkwMzMKRGEgYmluIGljaCBsZWlkZXIgZ2FyIG5pY2h0IG9wdGltaXN0aXNjaCA6KAoKS3JlbGxqYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3BvbnRhbnN0YW1tdGlzY2ggSGFtYnVyZyAoQW1hem9yYSwgMjUuIEF1ZyAyMDAzLCAxMTo1MDoyNyk6Cn4jISBybj1LcmVsbGphIHJ0PTEwNjE4MDQ4Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxNTc5MDMzCmljaCBhdWNoIG5pY2h0LiAzOjAgZ2VnZW4gd3VwcGVydGFsLiBHRUdFTiBXVVBQRVJUQUwhISAqaGV1bCoKZGFiZWkgaGFiZW4gZGllIHNvIG5ldHRlIGZhbnMuIHVtc28gc2NobGltbWVyIGZpbmQgaWNoLCBkYXNzIGRpZSBlY2h0IHZlcmRhbW10Cm1pZXMgZ2VzcGllbHQgaGFiZW4uIGd1dCwgZGllIGVyc3RlbiAyIHRvcmUgd2FyZW4gbmUga2xhcmUgZmVobGVudHNjaGVpZHVuZwp2b20gc2NoaWVkc3JpY2h0ZXIuIGRlciBmcmVpc3Rvc3Mgd2FyIGtlaW5lciB1bmQgZGVyIGVsZm1ldGVyIGVyc3QgcmVjaHQKbmljaHQuIGRhIGhhZXR0ZSBkZXIgd3N2IHNwaWVsZXIgbmUgcm90ZSBvZGVyIG1pbmRlc3RlbnMgbmUgZ2VsYmUgdmVyZGllbnQuIHNvCm5lIHNjaGVpc3Mgc2Nod2FsYmUgaGFiIGljaCBzZWx0ZW4gZ2VzZWhlbi4gYmVpbSAzOjAgYmluIGljaCBnZWdhbmdlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZmlsbSB2b24gVGhlb2RvciBEcmV5ZXIgaGV1dGUgaW0gVFYgKEJvaW5nLCAyNS4gQXVnIDIwMDMsIDE1OjA1OjA3KToKfiMhIG9uPVpvb2sgb3Q9MTA2MTgxNjY0MyBvZz1rdWx0dXIKfiMhIHJuPUZvb2JhciBydD0xMDYxODE1ODIzIHJnPWt1bHR1cgp+IyEgdGlkPTEwNjE4MTQzMjUKTmV1bGljaCBmaWVsIGluIENoaW5hIGVpbiBTYWNrIFJlaXMgdW0sIG5hdHVlcmxpY2ggbWl0IGxhdXRlbSBCdW1tcy4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBmaWxtIHZvbiBUaGVvZG9yIERyZXllciBoZXV0ZSBpbSBUViAoQm9pbmcsIDI1LiBBdWcgMjAwMywgMTU6MDU6MDkpOgp+IyEgb249TW9vbnNoaW5lIG90PTEwNjE4MTY2Njggb2c9a3VsdHVyCn4jISBybj1ab29rIHJ0PTEwNjE4MTY2NDMgcmc9a3VsdHVyCn4jISB0aWQ9MTA2MTgxNDMyNQpNb29uc2hpbmUgaGF0cyBnZWhvZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZmlsbSB2b24gVGhlb2RvciBEcmV5ZXIgaGV1dGUgaW0gVFYgKEJvaW5nLCAyNS4gQXVnIDIwMDMsIDE1OjA1OjEwKToKfiMhIG9uPUFtYXpvcmEgb3Q9MTA2MTgxNjY4NyBvZz1rdWx0dXIKfiMhIHJuPU1vb25zaGluZSBydD0xMDYxODE2NjY4IHJnPWt1bHR1cgp+IyEgdGlkPTEwNjE4MTQzMjUKQW1hem9yYSBoYXRzIGdlc3B1ZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBmaWxtIHZvbiBUaGVvZG9yIERyZXllciBoZXV0ZSBpbSBUViAoTW9vbnNoaW5lLCAyNS4gQXVnIDIwMDMsIDE1OjA2OjA4KToKfiMhIHJuPUJvaW5nIHJ0PTEwNjE4MTY3MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxODE0MzI1CkFsc28gZGFzIHdhciBkb2NoIGtlaW4gc2NobWFycm4sIGRhbWl0IHdhciBuaWNodCB6dSBzcGFzc2VuLiA6bzkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGZpbG0gdm9uIFRoZW9kb3IgRHJleWVyIGhldXRlIGltIFRWIChab29rLCAyNS4gQXVnIDIwMDMsIDE1OjA2OjM5KToKfiMhIHJuPU1vb25zaGluZSBydD0xMDYxODE2NzY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTgxNDMyNQpHZXN0ZXJuIGhhdCBpbiBCYWRlbiB0YXRzYWVjaGxpY2ggZGllIEVyZGUgZ2ViZWJ0LgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGZpbG0gdm9uIFRoZW9kb3IgRHJleWVyIGhldXRlIGltIFRWIChCb2luZywgMjUuIEF1ZyAyMDAzLCAxNTowNzoyNCk6Cn4jISBybj1ab29rIHJ0PTEwNjE4MTY3OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxODE0MzI1CkljaCBoYWIgbml4IGJlbWVya3QgLi4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2llIGZ1bmt0aW9uaWVydCBKYXBhbj8gKE1hbmRyYWdvbiwgMjUuIEF1ZyAyMDAzLCAxODowMjo0MCk6Cn4jISBvbj1NYW5kcmFnb24gb3Q9MTA2MTgyNzM1MiBvZz13d3cKfiMhIHJuPUFyayBydD0xMDYxODI3MTA1IHJnPXd3dwp+IyEgdGlkPTEwNjE4MjUxMTcKRG90ej8gQmlzdCBEdSdzPwoKTWEsIDteKWVsdCBuaWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xlaW5lIFN1ZW5kZW4uLi4gKEFyYXRob3JuLCAyNS4gQXVnIDIwMDMsIDE5OjQ0OjM1KToKW0ZyZXVuZGU6QXN1a2FdIGtsYWJiZSBBbWEKLi4uCltGcmV1bmRlOkFzdWthIGxhdXNjaHQgZ2FueiBnZXNwYW5udCBhdXMgZGVyIEZlcm5lLl0KLi4uCltGcmV1bmRlOkFzdWthXSBhbHNvIGRlbW5hZWNoc3QgJ2tsYWJiZSBhbWEsIGJpdHRlJywgb2tpLApbRnJldW5kZTpBc3VrYV0gaWNoIGhhYiB2ZXJzdGFuZGVuIDopCi4uLgpbRnJldW5kZTpBc3VrYV0gaHVwcwpbVG9kOkxhcnNdIEVpbmUgZmxpZWdlbmRlIEt1aCBoYXQgZ2VyYWRlIEFzdWthIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBmbGllZ2VuZGUgS3VoXSBNVVVVVVVVVVVVVU9PT09PRUVFRUVISEhISC4uLiBTc3Nzc3Nzc3NzcGxhdHNjaGhoaGghCgpEaWUgRWluc2ljaHQga2FtIHdvaGwgenUgc3BhZXQgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVWViZXJuYWNodHVuZyAoTWFuZHJhZ29uLCAyNS4gQXVnIDIwMDMsIDIzOjEyOjQwKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwNjE4NDU4MDIgcmc9dHJlZmZlbgp+IyEgdGlkPTEwNjE4NDU4MDIKM3FtPwoKSGFzdCBlcyBqYSBndXQgdm9yIC4uLi4KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBVZWJlcm5hY2h0dW5nIChGb29iYXIsIDI1LiBBdWcgMjAwMywgMjM6MTM6MjkpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNjE4NDU5NjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxODQ1ODAyCk1laW4gQmV0dCBpc3QgMi44IHFtIGdyb3NzLCB3YXMgZ2lidCBlcyBkYXJhbiBhdXN6dXNldHplbj8gOm8pCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVWViZXJuYWNodHVuZyAoTXVwZmVsLCAyNS4gQXVnIDIwMDMsIDIzOjI0OjQ3KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDYxODQ1OTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTg0NTgwMgpWaWVsbGVpY2h0IHNjaGxhZWd0IGVyIGphIGltIFNjaGxhZiB1bSBzaWNoIG9kZXIgc28uLi4gZGFubiBpc3QgZGEgZGVyClNpY2hlcmhlaXRzYWJzdGFuZCBtaXQgZHJpbiA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFVlYmVybmFjaHR1bmcgKE1hbmRyYWdvbiwgMjUuIEF1ZyAyMDAzLCAyMzoyNTo0MSk6Cn4jISBybj1NdXBmZWwgcnQ9MTA2MTg0NjY4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE4NDU4MDIKTWVpbiBCZXR0YW50ZWlsIGlzdCBudXIgMi4ycW0gO28pCgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFVlYmVybmFjaHR1bmcgKE1haGFyZXQsIDI1LiBBdWcgMjAwMywgMjM6MjY6MjcpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNjE4NDY3NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxODQ1ODAyCldlciBoYXQgZGVuIGdyb2Vzc3Rlbj8KTWVpbiBCZXR0IGhhdCAzLDYgcW0uCgpNYWhhLCBTcGlvbiB1bmQgR2lmdG1pc2NoZXIgYUQKbm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFVlYmVybmFjaHR1bmcgKE11cGZlbCwgMjUuIEF1ZyAyMDAzLCAyMzoyNjo1OSk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDYxODQ2NzcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTg0NTgwMgpBZWguLi4gTWFuZHJhZ29uIGhhdCBuZSBQb2luaWVyYmxhc2U/IDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVWViZXJuYWNodHVuZyAoTWFuZHJhZ29uLCAyNS4gQXVnIDIwMDMsIDIzOjI3OjI4KToKfiMhIHJuPU11cGZlbCBydD0xMDYxODQ2ODE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTg0NTgwMgpOZWluLiBBYmVyIG5lbiA0LDRxbS1CZXR0IC4uLi4KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVWViZXJuYWNodHVuZyAoTXVwZmVsLCAyNS4gQXVnIDIwMDMsIDIzOjI3OjUyKToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDYxODQ2ODQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTg0NTgwMgpOZSBuZXR0ZSBTcGllbHdpZXNlIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVWViZXJuYWNodHVuZyAoTWFuZHJhZ29uLCAyNS4gQXVnIDIwMDMsIDIzOjI4OjA2KToKfiMhIHJuPU11cGZlbCBydD0xMDYxODQ2ODcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTg0NTgwMgpHZW5hdSA6LSkKCk1hKiAoaGF0cyBndXQgdm9yKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVWViZXJuYWNodHVuZyAoQ2F0d2VhemxlLCAyNi4gQXVnIDIwMDMsIDA3OjU4OjUwKToKfiMhIHJuPU1haGFyZXQgcnQ9MTA2MTg0Njc4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE4NDU4MDIKRGVuIEVpbnNhdHoga2FubiBpY2ggaGFsdGVuLgoKV2lsbCBzZWhlbiA6LSkKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVWViZXJuYWNodHVuZyAoQ2F0d2VhemxlLCAyNi4gQXVnIDIwMDMsIDA3OjU5OjQ2KToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDYxODQ2ODQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTg0NTgwMgpNaXN0LCBkYSBiaW4gaWNoIHJhdXMgOi0pCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVWViZXJuYWNodHVuZyAoTW9udGFudXMsIDI2LiBBdWcgMjAwMywgMDg6NTI6MjIpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNjE4Nzc1ODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxODQ1ODAyCk1hbiBrb2VubnRlIGpldHp0IGphIGdlaGFlc3NpZyBzZWluIHVuZCBiZWkgZWluaWdlbiBkZXIgS2FuZGlkYXRlbiBmcmFnZW4sCndvZnVlciBzaWUgc28gZWluIGdyb3NzZXMgQmV0dCBicmF1Y2hlbi4uLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFVlYmVybmFjaHR1bmcgKEFsYm9pbiwgMjYuIEF1ZyAyMDAzLCAwOTowNzoyOSk6Cn4jISBybj1Nb250YW51cyBydD0xMDYxODgwNzQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTg0NTgwMgpqbyBzdGltbXQgc2Nob24uIERpZSBFcmtsYWVydW5nZW4genVyIEdyb2Vzc2UgZGVzIEJldHRlcyB2ZXJzdGVoZSBpY2ggc2Nob24KZmFzdCBhbHMgRWlubGFkdW5nOy0pClZpZWxsZWljaHQgc29sbHRlIGljaCBhdWNoIG1hbCByYW46CkljaCBoYWJlIHNvd29obCB6dSBIYXVzZSBhbHMgYXVjaCBoaWVyIGluIERyZXNkZW4gZWluIGdyb3NzZXMgSG9jaGJldHQsIGF1ZgpkZW0gbGFlc3NpZyB6d2VpIGxldXRlIHJhdWZwYXNzZW4uIFp3YXIgd2VyZGVuIGRpZSA0LDQgcW0gbmljaHQgZ2V0b3BwdCBkYWZ1ZXIKdmVyc2ljaGVyZSBpY2ggZGFzIHNpZSBCZXR0ZW4gZ3V0IGFiZ2VkYWVtcGZ0IHNpbmQgdW5kIGRlc3dlZ2VuCm5pZWRlcmZyZXF1ZW50ZSBTY2h3aW5ndW5nZW4gcHJpbWEKYXVzaGFsdGVuLiBBdWYgV3Vuc2NoIGtvZW5uZW4gaW0gWmltbWVyIHVlYmVyYWxsIEtlcnplbiBhbmdlenVlbmRldCB3ZXJkZW4gdW5kCmljaCBrYW5uIHByaW1hIEdlc2NoaWNodGVuIHZvcmxlc2VuIHVuZCBhdWNoIE1hc3NhZ2VvZWwgZmluZGV0IHNpY2ggaW0gSGF1cy4KCldlaXRlcmUgRmVhdXR1cmVzIGF1ZiBBbmZyYWdlIDstKQoKQWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFVlYmVybmFjaHR1bmcgKE1vcmdvdGgsIDI2LiBBdWcgMjAwMywgMDk6MDg6NTEpOgp+IyEgcm49QWxib2luIHJ0PTEwNjE4ODE2NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxODQ1ODAyCkFsc28gaWNoIGhhYiBuZSA4MHgxODBjbSBNYXRyYXR6ZSwgZGllIGZpbmQgaWNoIHZpZWwgYmVzc2VyIGFscyBzbyBlaW4Kcmllc2lnZXMgQmV0dC4gRGEgaXN0IG5pY2h0IHNvdmllbCBQbGF0eiB6dW0gYXVzd2VpY2hlbiA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBVZWJlcm5hY2h0dW5nIChBbWF6b3JhLCAyNi4gQXVnIDIwMDMsIDEwOjI1OjA4KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA2MTg4MTczMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE4NDU4MDIKaWNoIGhhYiBlaW4gMjAweDIwMGNtIGJldHQgdW5kIGhhYiBkYXMgZ2FueiBhbGxlaW5lIG1pdCBtZWluZXIga2F0emUgYWJlciBkaWUKYnJhdWNodCBzb3ZpZWwgcGxhdHosIGRhc3Mgc29nYXIgZGllIGdyb2Vzc2UgbWFuY2htYWwgenUga2xlaW4gaXN0IDstKQphbWF6b3JhIGJyYXVjaHQgdmllbCBwbGF0egoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFVlYmVybmFjaHR1bmcgKE1vb25zaGluZSwgMjYuIEF1ZyAyMDAzLCAxMDoyNjoxMCk6Cn4jISBybj1BbWF6b3JhIHJ0PTEwNjE4ODYzMDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxODQ1ODAyCkVudHdlZGVyIGVpbmUgZXR3YXMgdWViZXJkaW1lbnNpb25hbGUgS2F0emUgb2RlciBzaWUgaXN0IHJvbGxpZy4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogVWViZXJuYWNodHVuZyAoQW1hem9yYSwgMjYuIEF1ZyAyMDAzLCAxMDoyNzo1NCk6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTA2MTg4NjM3MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE4NDU4MDIKd2VkZXIgbm9jaC4gc2llIGlzdCBuaWNodCBzZWhyIGdyb3NzIHVuZCBzdGVyaWxpc2llcnQgYWJlciBzaWUgYnJlaXRldCBzaWNoCmdlcm5lIGF1cy4KYW1hem9yYSB3dXJkZSBzb2dhciBzY2hvbm1hbCBhdXMgZGVtIGJldHQgZ2VzY2htaXNzZW4gdm9uIGlocmVyIGthdHplIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogVWViZXJuYWNodHVuZyAoTXVhZGliLCAyNi4gQXVnIDIwMDMsIDEwOjMyOjA5KToKfiMhIHJuPUFtYXpvcmEgcnQ9MTA2MTg4NjQ3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE4NDU4MDIKZGllIGthdHplIHdhZXJlIGluendpc2NoZW4gZWluIGJldHR2b3JsZWdlciBiZWkgbWlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogVWViZXJuYWNodHVuZyAoQW1hem9yYSwgMjYuIEF1ZyAyMDAzLCAxMDozNTozMik6Cn4jISBybj1NdWFkaWIgcnQ9MTA2MTg4NjcyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE4NDU4MDIKZHUga2VubnN0IG1laW5lIGthdHplIG5pY2h0IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFVlYmVybmFjaHR1bmcgKEZvb2JhciwgMjYuIEF1ZyAyMDAzLCAxMDo0MToxNCk6Cn4jISBybj1BbWF6b3JhIHJ0PTEwNjE4ODY5MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxODQ1ODAyCkR1IGtlbm5zdCBNdWFkaWIgbmljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBhdXN0cml0dCAoQm9pbmcsIDI2LiBBdWcgMjAwMywgMTE6MTY6NDEpOgp+IyEgb249TW9vbnNoaW5lIG90PTEwNjE4ODkzMjcgb2c9Z2lsZGVuLnphdWJlcmVyCn4jISBybj1QYXRyeW4gcnQ9MTA2MTg4ODQzNyByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMDYwNzA0MjAwCkFsc28gaWNoIGZpbmRlIFphdWJlcmVyIGphIGRvb2YgdW5kIGRpZSBzdGlua2VuISA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGF1c3RyaXR0IChNdWFkaWIsIDI2LiBBdWcgMjAwMywgMTM6MjM6MDYpOgp+IyEgcm49UGF0cnluIHJ0PTEwNjE4OTY5Mjggcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTA2MDcwNDIwMAptaXQgZGVyIGVyc3RlbiBoYWVsZnRlIGRlaW5lcyBlcnN0ZW4gc2F0emVzIGRhcmYgbWFuIGRpY2ggeml0aWVyZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBhdXN0cml0dCAoUGF0cnluLCAyNi4gQXVnIDIwMDMsIDEzOjI1OjEzKToKfiMhIHJuPU11YWRpYiBydD0xMDYxODk2OTg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDcwNDIwMApXZWdlbiBtaXIsIER1IGRhcmZzdCBnZXJuIHNhZ2VuLGQgYXNzIER1IGRvb2YsIGFycmdvZ2FudCB1bmQgZ2VtZWluIGJpc3QsCmJyYXVjaHN0IG5pY2h0IG1hbCB1bmJlZGluZ3QgZWluZSBRdWVsbGVuYW5nYWJlIHp1IG1hY2hlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IGF1c3RyaXR0IChNdWFkaWIsIDI2LiBBdWcgMjAwMywgMTM6MjU6NDMpOgp+IyEgcm49UGF0cnluIHJ0PTEwNjE4OTcxMTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwNzA0MjAwCm9oIGtsYXNzZSBlbmRsaWNoIGRhcmYgaWNoIGRhcyBzYWdlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogYXVzdHJpdHQgKFpvb2ssIDI2LiBBdWcgMjAwMywgMTM6Mjc6MzIpOgp+IyEgcm49UGF0cnluIHJ0PTEwNjE4OTY5Mjggcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTA2MDcwNDIwMAoiVW5kIHVlYmVybGVidCBoYWJlbnMgYWxsZSIgLi4uIEJpcyBhdWYgZGllLCBkaWUgZGFubiB2b24gZGFubmVuIGdlem9nZW4gc2luZCwKdW5kIGRpZSBkYW5uIHNjaHdlaWdlbmQuLi4uIEFjaCBuZWluLCBoYWx0LCBzY2h3ZWlnZW5kIHNpbmQgZGllIGphIGRvY2ggbmljaHQuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IGF1c3RyaXR0IChab29rLCAyNi4gQXVnIDIwMDMsIDEzOjI4OjEyKToKfiMhIHJuPVBhdHJ5biBydD0xMDYxODk3MTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDcwNDIwMApBaCwgYXVmIGRlbiBBcnRpa2VsIGJlem9nIHNpY2ggTXVhZGliLiBEYXMgaXN0IGltbWVyIGRvb2YgYmVpIFZlcndlaXNlbiAKdWViZXIgUnVicmlrZW4gaGlud2VnLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBhdXN0cml0dCAoTXVhZGliLCAyNi4gQXVnIDIwMDMsIDEzOjMyOjA3KToKfiMhIHJuPVpvb2sgcnQ9MTA2MTg5NzI5MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA3MDQyMDAKdWViZXIgcnVicmlrZW4gaGlud2VnIGthbm4gaWNoIGRpZSBtcGEgYWJlciBiZWRpZW5lbgpibG9zcyBpbm5lcmhhbGIgZGVyIHJ1YnJpa2VuLCBuYWphIHNpZWhlIHppdGF0IHBhdHJ5bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IGF1c3RyaXR0IChab29rLCAyNi4gQXVnIDIwMDMsIDEzOjMyOjQxKToKfiMhIHJuPU11YWRpYiBydD0xMDYxODk3NTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDcwNDIwMApJY2ggYmV6b2cgbWljaCBhdWNoIGVoZXIgYXVmIG1laW4gVW52ZXJtb2VnZW4sIGRpZSBNUEEgenUgYmVkaWVuZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IGF1c3RyaXR0IChHb3JvZywgMjYuIEF1ZyAyMDAzLCAxMzo1MjoxOSk6Cn4jISBybj1ab29rIHJ0PTEwNjE4OTc1NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwNzA0MjAwCkhtbSBmYWxscyBEdSBub2NoIGVpbnp3ZWkgU3BhbHRlbiBpbiBkZWluZXIgVG8tRG8tTGlzdGUgaGFzdCBrYW5uc3RlIGphIE1QQQpsZXJuZW4gb2RlciBuZXVzY2hyZWliZW4gZWluZnVlZ2VuICg7CgpHb3JvZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IGF1c3RyaXR0IChBbWF6b3JhLCAyNi4gQXVnIDIwMDMsIDE0OjEwOjUzKToKfiMhIHJuPUdvcm9nIHJ0PTEwNjE4OTg3Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwNzA0MjAwCm9kZXIgYmVpIGdyaW1tYm9ybiBpbiBkaWUgbGVocmUgZ2VobiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBhdXN0cml0dCAoTGVpYmksIDI2LiBBdWcgMjAwMywgMTU6MTc6MDMpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNjE5MDM3Mzggcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTA2MDcwNDIwMApnZW5hdS4gZGVuIGJpZXJzY2h1ZXR0bGVybiBnZWh0cyB2aWVsIHNjaGxlY2h0ZXIuIHdhcyBuYXR1ZXJsaWNoIG51ciBkYXJhbgpsaWVndCwgZGFzcyBzaWUgbm9jaCBpbW1lciBrZWluZW4gcnVlbHBzZSBzcHJ1Y2ggaGFiZW4gOikKCmxlaWJpIHNjaGF1dCByaWNodHVuZyBiaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBhdXN0cml0dCAoTW9yZ290aCwgMjYuIEF1ZyAyMDAzLCAxNToxNzo0Nik6Cn4jISBybj1MZWliaSBydD0xMDYxOTAzODIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDcwNDIwMApEaWUgT3JrcyBoYWJlbiBuZW4gcnVlbHBzZS1zcHJ1Y2gsIGFsc28gc2luZCBkaWUgYmllcnNjaHVldHRsZXIgbnVyIGJpbGxpZ2VyCkFia2xhdHNjaCA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBhdXN0cml0dCAoTWFuZHJhZ29uLCAyNi4gQXVnIDIwMDMsIDE1OjE4OjA0KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA2MTkwMzg2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA3MDQyMDAKV2VyIG9kZXIgd2FzIGlzdCBCaWVsZWZlbGQ/CgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBhdXN0cml0dCAoTGVpYmksIDI2LiBBdWcgMjAwMywgMTU6MTg6MjQpOgp+IyEgcm49TW9yZ290aCBydD0xMDYxOTAzODY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MDcwNDIwMApkYWZ1ZXIgaGFiZW4gc2llIHNjaHVldHRsZXIgYWJlciBtZWhyIHNwYXNzIDopCgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IGF1c3RyaXR0IChBcG9sbG9uaWEsIDI2LiBBdWcgMjAwMywgMTU6MTk6MzgpOgp+IyEgcm49TGVpYmkgcnQ9MTA2MTkwMzkwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjA3MDQyMDAKRGFmdWVyIGlzdCBkYXMgZGVuIE9ya3Mgdm9lbGxpZyB3dXJzY2h0IC0gZGVua2VuIGtvZW5uZW5zZSBuaWNoLgoKQXBvKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IGF1c3RyaXR0IChNb3Jnb3RoLCAyNi4gQXVnIDIwMDMsIDE1OjIwOjA4KToKfiMhIHJuPUxlaWJpIHJ0PTEwNjE5MDM5MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYwNzA0MjAwCktsYXIsIHdlbm4gc2llIHNpY2ggZWluZW4gYWJzY2h1ZXR0ZWxuIDopCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogZmlsbSB2b24gVGhlb2RvciBEcmV5ZXIgaGV1dGUgaW0gVFYgKEhvYm8sIDI2LiBBdWcgMjAwMywgMTU6MzQ6MzgpOgp+IyEgcm49Qm9pbmcgcnQ9MTA2MTgxNjg0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE4MTQzMjUKRGllIEZyYWdlIGlzdCBqYTogQmFkZW4gKFNjaHdlaXopIG9kZXIgQmFkZW4gKC1XdWVydHRlbWJlcmcpIAoKWm9vaz8KCgogICBIb2JvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2NocmF0IChWYXJkaW9uLCAyNi4gQXVnIDIwMDMsIDE3OjE5OjM0KToKfiMhIHJuPUJvaW5nIHJ0PTEwNjE5MTExMDAgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTA2MTkxMTEwMApLYW5uIG1hbiBTY2hyYXQgbnVuIGVuZGxpY2ggZWlucyB1ZWJlcnppZWhlbiwgdW0gaWhuIGluIGRhcyBSZWljaCBkZXIgVHJhZXVtZQp6dSBzY2hpY2tlbj8gOikKClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkplIHNwYWV0ZXIgZGllIE5hY2h0IC4uLiAoTGlhcmEsIDI3LiBBdWcgMjAwMywgMDE6NDU6MDYpOgpMZWliaSB0ZWlsdCBEaXIgbWl0OiAqKioqKioqKioqKioqKioqKioqKioqKioqIHdpZSBoZWlzc3Qgbm9jaCBtYWwgc28gZWluCkxlaWJpIHRlaWx0IERpciBtaXQ6IHRlaWwsIGluIGRlbSBtYW4gc2ljaCB2b3JmdWVocnVuZ2VuIHVlYmVyIHN0ZXJuZQpMZWliaSB0ZWlsdCBEaXIgbWl0OiBhbnNjaGF1ZW4ga2Fubj8KCkRpZSBTdGVybmNoZW4gc3RlbGxlbiBlaW5lIFplbnN1ciBkYXIuIDopIChOZWluLCBoYXR0ZSBuaXggbWl0IGRlbiBTdGVybmVuIHp1CnR1bi4gOykpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSmUgc3BhZXRlciBkaWUgTmFjaHQgLi4uIChMZWliaSwgMjcuIEF1ZyAyMDAzLCAwMTo0NzozMyk6Cn4jISBybj1MaWFyYSBydD0xMDYxOTQxNTA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTk0MTUwNgpiZXNzZXIgaXN0IGRhcy4uLiBhbHNvIGRhcyBtaXQgZGVuIHN0ZXJuZW4gOikKCmxlaWJpIHNjaGF1dCBsaWViZXIgbmFjaCBkZW0gbWFycyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRGVyIG5pY2h0IG5hdHVlcmxpY2hlIFRvZC4uLiAoTmliZWwsIDI3LiBBdWcgMjAwMywgMDI6MTM6NTEpOgp+IyEgcm49TWVkaWMgcnQ9MTA2MTkzNzc1NiByZz13d3cKfiMhIHRpZD0xMDYxOTMxMDI3CkFsc28gd2FzIGF1Y2ggaW1tZXIgRHUgZGEgc2NobHVja3N0LCBuaW1tIHdlbmlnZXIgZGF2b24uLi4KICAtIE5pYmVsCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IERlciBuaWNodCBuYXR1ZXJsaWNoZSBUb2QuLi4gKE1lZGljLCAyNy4gQXVnIDIwMDMsIDA5OjM2OjU3KToKfiMhIHJuPU5pYmVsIHJ0PTEwNjE5NDMyMzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxOTMxMDI3Ck1lPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSXMgZGFzIGdlaWwsIG9kZXIgaXMgZGFzIGdlaWw/IChNb3Jnb3RoLCAyNy4gQXVnIDIwMDMsIDEzOjM5OjU0KToKTGVpYmkgc2NobGluZ3QgdWViZXJnbHVlY2tsaWNoIGlocmUgQXJtZSB1bSBpaHIgdGllZnJvdGVzIFBsdWVzY2hoZXJ6IHVuZApmcmV1dCBzaWNoIGRhcnVlYmVyLCBkYXNzIE1hbmRyYWdvbiBpaHIgMCBIZXJ6IGdlc2NoZW5rdCBoYXQuCgpNKiBwcnVzdGV0IGltbWVyIG5vY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJcyBkYXMgZ2VpbCwgb2RlciBpcyBkYXMgZ2VpbD8gKExlaWJpLCAyNy4gQXVnIDIwMDMsIDEzOjU0OjUyKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA2MTk4NDM5NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE5ODQzOTQKd2llIGhlcnpsb3MgOigoCgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhhLCBTaGVyaWZmIGF1cyBkZXIgRG9zZSAoTW9yZ290aCwgMjcuIEF1ZyAyMDAzLCAxNDowMDo1NSk6CkxlaWJpIGhvbHQgZXR3YXMgYXVzIGVpbmVyIEtla3Nkb3NlLgpNdWFkaWIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWhhLCBTaGVyaWZmIGF1cyBkZXIgRG9zZSAoTW9udGFudXMsIDI3LiBBdWcgMjAwMywgMTQ6MzQ6MjgpOgp+IyEgcm49TW9yZ290aCBydD0xMDYxOTg1NjU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTk4NTY1NQpTb3NvLCBkdSBlcndhcnRlc3QvdWViZXJ3YWNoc3QgYWxzbyBkZW4gUGgyNC83LiBEYXMgc29sbHRlIHVzbiBkb2NoIHp1IGRlbmtlbgpnZWJlbiwgb2Rlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWhhLCBTaGVyaWZmIGF1cyBkZXIgRG9zZSAoTWFuZHJhZ29uLCAyNy4gQXVnIDIwMDMsIDE0OjM1OjA2KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNjE5ODc2Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxOTg1NjU1CgpJcmdlbmR3ZXIgbXVzcyBqYSBkaWUgVWViZXJ3YWNoZXIgZGVyIFVlYmVyd2FjaGVyIHVlYmVyd2FjaGVuLgoKTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogQWRkQ21kKCJsaWVzIiwgLi4uKSAoQ2F0d2VhemxlLCAyNy4gQXVnIDIwMDMsIDIwOjU3OjE1KToKfiMhIHJuPU5vbm5lIHJ0PTEwNjE5OTk4MTcgcmc9bWFnaWVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA2MTkxMDI2NApNYWxpbWFyYyByZWRldCB6dSBEaXI/CgpBbHQsIGFiZXIgZ3V0LgoKWVRDICh3aWUsIHp1IGp1bmc/IFRqYSA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJeNDogUGFkcmVpYyB3aWVkZXIgRXJ6bWFnaWVyPyAoQW5hdG9sLCAyNy4gQXVnIDIwMDMsIDIxOjA0OjQxKToKW0JlenVnOiBBcnRpa2VsIGluIGVyem1hZ2llci5kaXNrdXNzaW9uIHZvbiBNdWFkaWIgdm9tIDI3LiBBdWcgMjAwMywgMTQ6MzM6MjZdCgoKSWhyIGhhYnQgZG9jaCBuZW4gU2NodXNzLiA6KQoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogQWRkQ21kKCJsaWVzIiwgLi4uKSAoTXVwZmVsLCAyNy4gQXVnIDIwMDMsIDIzOjUwOjM5KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDYyMDEwNjM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTkxMDI2NApEZW4gaGFiIGljaCBuZXVsaWNoIHdpZWRlciBtYWwgZ2VzZWhlbiwgZGVuIE1hbGltYXJjLiBVbmQgLSBpY2ggbXVzc3RlIHNvZm9ydAphbiBkLmEubS4gZGVua2VuIDspIGtvbWlzY2ggd2llIG1hbiBtYW5jaGUgTGV1dGUgYXVmIGVpbmVuIFB1bmt0Cnp1c2FtbWVuc2NobnVycmVuIGxhc3NlbiBrYW5uLi4uCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEFkZENtZCgibGllcyIsIC4uLikgKENhdHdlYXpsZSwgMjcuIEF1ZyAyMDAzLCAyMzo1Mzo0OSk6Cn4jISBybj1NdXBmZWwgcnQ9MTA2MjAyMTAzOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE5MTAyNjQKTmFqYSwgd2lyIGhhYmVuIGphIG9mZmVuc2ljaHRsaWNoIE5hY2h3dWNocyA6KQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogV2VubiBkaWUgV2VsdCBpbiBPcmRudW5nIGlzdC4uLiAoQ2F0d2VhemxlLCAyOC4gQXVnIDIwMDMsIDAwOjE1OjUxKToKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDYyMDIyNTIzIHJnPXd3dwp+IyEgdGlkPTEwNjIwMTU5MDEKSW1tZXIgc2Nob2VuIGF1ZiBkaWUgcmljaHRpZ2UgUnVicmlrIHppZWxlbiA6LSkKCllUQwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBXZW5uIGRpZSBXZWx0IGluIE9yZG51bmcgaXN0Li4uIChNYW5kcmFnb24sIDI4LiBBdWcgMjAwMywgMDA6MTY6MTcpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNjIwMjI1NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYyMDE1OTAxCgphY2hzby4gd29sbGVuIHdpciB1bnMgbmljaHQgbWFsIG5hY2ggbXMgdmVydGFnZW4/CgpNYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBXZW5uIGRpZSBXZWx0IGluIE9yZG51bmcgaXN0Li4uIChDYXR3ZWF6bGUsIDI4LiBBdWcgMjAwMywgMDA6MTY6MzMpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNjIwMjI1Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYyMDE1OTAxCkRhcyBrYW5uIGljaCBuaWNodCAuLi4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFdlbm4gZGllIFdlbHQgaW4gT3JkbnVuZyBpc3QuLi4gKE1hbmRyYWdvbiwgMjguIEF1ZyAyMDAzLCAwMDoxNzoxOSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA2MjAyMjU5MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjIwMTU5MDEKaS5lLiBNZWdhU2NobWFycm4KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJeNDogUGFkcmVpYyB3aWVkZXIgRXJ6bWFnaWVyPyAoTXVhZGliLCAyOC4gQXVnIDIwMDMsIDAwOjI0OjMyKToKfiMhIHJuPUFuYXRvbCBydD0xMDYyMDExMDgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MjAxMTA4MQp3YXNzbiBkYXMgZnVlcm4gYmV6dWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBXZW5uIGRpZSBXZWx0IGluIE9yZG51bmcgaXN0Li4uIChHcmltbWJvcm4sIDI4LiBBdWcgMjAwMywgMDA6Mzk6MzgpOgp+IyEgb249Q2F0d2VhemxlIG90PTEwNjIwMjI2NzUgb2c9a29jaHJlemVwdGUKfiMhIHJuPU1hbmRyYWdvbiBydD0xMDYyMDIyNjM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MjAxNTkwMQpNdXNzIGljaCBtaWNoIHdpZWRlcmhvbGVuPyAKCkljaCBuaXggZGFyZiEKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNwYW1maWx0ZXIgKENhdHdlYXpsZSwgMjguIEF1ZyAyMDAzLCAwOTozNjo0MSk6Cn4jISBybj1WaW5jZW50IHJ0PTEwNjIwMjQ4NzAgcmc9d3d3Cn4jISB0aWQ9MTA2MjAyNDg3MApEdSBsaWVzdCBEaWxiZXJ0PwpXaWUgdW5jb29sLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNwYW1maWx0ZXIgKEZvb2JhciwgMjguIEF1ZyAyMDAzLCAwOTozODozMyk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA2MjA1NjIwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjIwMjQ4NzAKU2FnIGJsb3NzLCBEdSB3b2huc3QgaW1tZXIgbm9jaCBoaWVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3BhbWZpbHRlciAoTm9ubmUsIDI4LiBBdWcgMjAwMywgMDk6Mzk6MzcpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNjIwNTYzMTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYyMDI0ODcwCktsYXIsIG9iZW4gYmVpIE11dHRhCgpOb25uZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5hY2hyaWNodCBhbiB0aHVmaGlyIChNb250YW51cywgMjguIEF1ZyAyMDAzLCAxMTowMjo1OCk6Cn4jISBybj1Ub2UgcnQ9MTA2MjA2MTMxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjIwNjEzMTkKSGlsZmUgbXBhLCBvZGVyIGF1ZiBlbmdsaXNjaCwgUlRGTS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbmFjaHJpY2h0IGFuIHRodWZoaXIgKE5vbm5lLCAyOC4gQXVnIDIwMDMsIDExOjA5OjUxKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNjIwNjEzNzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDYyMDYxMzE5CkhhdHRlIGljaCBzY2hvbiBlcndhZWhudCwgZGFzcyBpY2ggZGFzIFZlcmIgJ3NjaHJlaWJlJyBmdWVyIHZpZWwgenUgYWxsZ21laW5lCmhhbHRlLCBhbHMgZGFzcyBlcyBmdWVyIGRpZSBWZXJvZWZmZW50bGljaHVuZyB2b24gQXJ0aWtlbG4gaW4gZGVyIE1QQSBiZW51dHp0CndlcmRlbiBzb2xsdGU/CgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IG5hY2hyaWNodCBhbiB0aHVmaGlyIChCb2luZywgMjguIEF1ZyAyMDAzLCAxMToxMToyMik6Cn4jISBybj1Ob25uZSBydD0xMDYyMDYxNzkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MjA2MTMxOQpOZWluLCBrYW5uc3QgRHUgZGFzIG1hbCBnZW5hdWVyIGF1c2Z1ZWhyZW4gYml0dGU/IDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IG5hY2hyaWNodCBhbiB0aHVmaGlyIChDYXR3ZWF6bGUsIDI4LiBBdWcgMjAwMywgMTE6MTI6NTIpOgp+IyEgcm49Qm9pbmcgcnQ9MTA2MjA2MTg4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjIwNjEzMTkKR3V0LCBhZW5kZXJuIHdpciBkYXMgYWxzbyBpbiAnc2NocmVpYicuCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IG5hY2hyaWNodCBhbiB0aHVmaGlyIChNb250YW51cywgMjguIEF1ZyAyMDAzLCAxMToxNTozNSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA2MjA2MTk3MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjIwNjEzMTkKSW4gZGVyIE1QQSBiZW51dHp0IG1hbiBkb2NoIGVoIG51ciBkZW4gQmVmZWhsICJyZXBseSIsIG9kZXIgaGFiIGljaCBkYSB3YXMKdmVycGFzc3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBuYWNocmljaHQgYW4gdGh1ZmhpciAoTm9ubmUsIDI4LiBBdWcgMjAwMywgMTE6MTk6MzkpOgp+IyEgcm49Qm9pbmcgcnQ9MTA2MjA2MTg4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjIwNjEzMTkKaHR0cDovL21nLm11ZC5kZS9jZ2ktYmluL21wYS5wbD9USVRFTD0mSU5IQUxUPXNjaHJlaWJlJkFVVE9SPW5vbm5lJkRBVFVNPSZDQVRFCkdPUlk9YWxsZ2VtZWluZXMmQ0FTRT1pJkhJVFM9MTAKCk5vbm5lLCBncmluc3QgQm9pbmcgZnJvZWhsaWNoIGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogbmFjaHJpY2h0IGFuIHRodWZoaXIgKENhdHdlYXpsZSwgMjguIEF1ZyAyMDAzLCAxMToyMToyNSk6Cn4jISBybj1Ob25uZSBydD0xMDYyMDYyMzc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MjA2MTMxOQpPaywgZGFubiBoYWx0ICd2ZXJvZWZmZW50bGljaCcuCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IG5hY2hyaWNodCBhbiB0aHVmaGlyIChCb2luZywgMjguIEF1ZyAyMDAzLCAxMToyMTo1OSk6Cn4jISBybj1Ob25uZSBydD0xMDYyMDYyMzc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MjA2MTMxOQpEZXIgTGluayBpc3QgbWlyIHp1IGxhbmcsIHNvcnJ5IC4uLiA7KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBuYWNocmljaHQgYW4gdGh1ZmhpciAoTm9ubmUsIDI4LiBBdWcgMjAwMywgMTE6MjM6MTUpOgp+IyEgcm49Qm9pbmcgcnQ9MTA2MjA2MjUxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjIwNjEzMTkKaHR0cDovL21ha2Vhc2hvcnRlcmxpbmsuY29tLz9FMTk3MzVBQjUKClNvIGJlc3Nlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IG5hY2hyaWNodCBhbiB0aHVmaGlyIChOb25uZSwgMjguIEF1ZyAyMDAzLCAxMToyNToxMyk6Cn4jISBybj1Ob25uZSBydD0xMDYyMDYyNTk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MjA2MTMxOQpPZGVyIG5vY2gga2xlaW5lcjogaHR0cDovL3Rpbnl1cmwuY29tL2xnN2EKCk5vbm5lLCBzY2hhdWVuZCwgb2JzIGt1ZXJ6ZXIgZ2VodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IG5hY2hyaWNodCBhbiB0aHVmaGlyIChCb2luZywgMjguIEF1ZyAyMDAzLCAxMToyODoxNyk6Cn4jISBybj1Ob25uZSBydD0xMDYyMDYyNzEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MjA2MTMxOQpQZXJmZWt0IQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmFzdGEhIChQYWRyZWljLCAyOC4gQXVnIDIwMDMsIDEzOjM0OjM2KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDYyMDcwMjIwIG9nPWdpbGRlbi5kdW5rZWxlbGZlbgp+IyEgcm49UGFkcmVpYyBydD0xMDYyMDY4ODEwIHJnPWdpbGRlbi5kdW5rZWxlbGZlbgp+IyEgdGlkPTEwNjIwNjg4MTAKV2VubiBkYXMgc28gaXN0IHNvbGx0ZXN0IER1IGRpZSBmZWhsZW5kZSBpZ25vcmllcmUtVW50ZXJzdHVldHp1bmcgdmllbGxlaWNodAptYWwgZGVidWdnZW4sIHN0YXR0IGhpZXIgbWl0IEJhc3QgenUgd2VyZmVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJhc3RhISAoR3JpbW1ib3JuLCAyOC4gQXVnIDIwMDMsIDEzOjM3OjUyKToKfiMhIHJuPVBhZHJlaWMgcnQ9MTA2MjA3MDQ3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjIwNjg4MTAKQW4gZGllc2VyIFN0ZWxsZSBtb2VjaHRlIGljaCBhdXMgZ2VnZWJlbmVtIEFubGFzcyBub2NobWFsIGRhcmF1ZiBoaW53ZWlzZW4KZGFzcyBpbiBkZW4gZ2lsZGVuLiogdW5kIGQuKiBSdWJyaWtlbiBkaWUgdmVyYW50d29ydGxpY2hlbiBSTSB1bmQgR2lsZGVubWFnZXIKbmFjaCBlaWdlbmVtIEd1dGR1ZW5rZW4gdmVybGVnZW4sIHVuZCBzaWNoIG5pY2h0IGFuIG1laW5lIEtyaXRlcmllbiBoYWx0ZW4KKG11ZXNzZW4pLgpFaW5lbiBBcnRpa2VsLCBkZXIgc2ljaCBzYWNobGljaCBhdWYgZGVuIHZvcmdlaGVuZGVuIGJlemllaHQsIG5vY2ggZGF6dSBtaXQKa29uc3RydWt0aXZlbiBWb3JzY2hsYWVnZW4gYXVmd2FydGV0LCBoYWV0dGUgaWNoIG5hdHVlcmxpY2ggbmllIHZlcmxlZ3QuClVuYWJoYWVuZ2lnIGRhdm9uIG9iIGljaCBnZXJ1aGUgZGVyc2VsYmVuIE1laW51bmcgenUgc2Vpbi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWVzIFN0YW5kYWxvbmUtQ1RNIChHcmltbWJvcm4sIDI4LiBBdWcgMjAwMywgMTc6MTY6MzkpOgp+IyEgcm49VmFyZGlvbiBydD0xMDYyMDgyOTU2IHJnPW11ZGNsaWVudHMKfiMhIHRpZD0xMDYyMDgyOTU2CldlZ2VuIGVpbmVyIGdld2lzc2VuIHVubm9ldGlnZW4gQ2hhcmFrdGVyZWlnZW5zY2hhZnQgYmVpIERpciBzZWhlbiB3aXIgRGlyIGRlbgpBcnRpa2VsIG5vY2htYWwgbmFjaC4uLiAKCkFuc29uc3RlbiBpc3QgZWluIGJ1Z2ZpeCBpc3QgZWluIGJ1Z2ZpeCBpc3QgZWluIGJ1Z2ZpeC4gV2VubiBEdSBkYW1pdCBuaWNodAprbGFyIGthbXN0IHJlZGVzdCBEdSB2b24gZWluZW0gYnVnZml4IERlaW5lcnNlaXRzLCB1bmQgbmljaHQgdm9uIGVpbmVyCkFucGFzc3VuZy4gCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTcGllbHBhdXNlIChDYXR3ZWF6bGUsIDI4LiBBdWcgMjAwMywgMTc6NTM6MzIpOgp+IyEgcm49UGF0cnluIHJ0PTEwNjIwODU5Nzggcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTEwNjIwNzgzMTIKTmFqYSwga29tbXQgZHJhdWYgYW4uIF93ZWxjaGVfIHp3ZWkgV29jaGVuIGRhcyBzaW5kIDotKQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCb2VzZXMgT21lbiAoVGlncmVzLCAyOC4gQXVnIDIwMDMsIDIxOjI2OjQxKToKPiBmaW5nZXIgcGF0cnluClBhdHJ5biBpc3QgbmljaHQgYW53ZXNlbmQuClp1bGV0enQgZWluZ2Vsb2dndCB2b246IFQtT25saW5lLgpadWxldHp0IGF1c2dlbG9nZ3Q6IERvbiwgMjguIEF1ZyAyMDAzLCAyMTowNTo1MCAoMDA6MTU6NDUpLgpWb2xsZXIgTmFtZTogWmF1YmVybWF1cyBQYXRyeW4gClJhc3NlOiBNYWdpZXIsICBHaWxkZTogWmF1YmVyZXIsICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKQWx0ZXI6IDIzMGQgMDU6MzM6MDQsICAgTWFnaWVybGV2ZWw6IDQ1IChSZWdpb25zbWFnaWVyKQpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBNb24sIDE3LiBKdWwgMjAwMCwgMTc6NDY6MjQKQmlzaGVyIGJlcmVpdHMgMiBtYWwgZ2VzdG9yYmVuClJlZ2lvbnNtYWdpZXIgdm9uICAgICA6IFdhbGQuClJlZ2lvbnNtaXRhcmJlaXRlciB2b246IEViZW5lLCBVbnRlcndlbHQsIFZsYW5kLCBXYWxkLgpQcm9qZWt0OiBOSUNIVFMuLi4KCj4gRHUgc2llaHN0IGVpbmVuIEZlaGxlciBpbSBSYXVtLVplaXQtR2VmdWVnZS4KCgoqYXVjaCBtYWwgc2NobWFycm5lbiBtdXNzKgoKLSBSYW5nb3JuIEtodXInVGlncmVzIC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFJlYm9vdCAoUm9uZGEsIDI4LiBBdWcgMjAwMywgMjM6NTE6MzgpOgp+IyEgcm49QXJrIHJ0PTEwNjIxMDczMjIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNjE5ODI5NzEKSG1tLi4uIEFyay4uLiBtYW4ga2FubiBkb2NoIGVpbnN0ZWxsZW4sIGRhc3MgYmVpIG5lbSBTdHJvbWF1c2ZhbGwgYXV0b21hdGlzY2gKSm9icyBhdXNnZWZ1ZWhydCB3ZXJkZW4uIEFsc28ga29lbm50ZSBtYW4gZG9jaCBiZWkgbmVtIGhlZnRpZ2VyZW4gU3Ryb21hdXNmYWxsCkFybWFnZWRkb24gbG9zc2NoaWNrZW4gYSBsYSAiT2suIERlciBTdHJvbWF1c2ZhbGwgaW4gQmVybGluIGdyYWQgaXN0IGVjaHQKaGVmdGlnLiBXZW5uIGRlciBTdHJvbSBpbiBkcmVpIE1pbnV0ZW4gbmljaHQgd2llZGVyIGRhIGlzdCwgZmFocmUgaWNoIGRhcyBNdWQKaGVydW50ZXIuIFdlbm4gRHUgaW4gZGVuIExhZGVuLi4uLi4iCgpSb25kYSAqc2NobWFycmVuZCoKLApubgouLi4gb2suIFVuZCBLb21tYXRhIHN0YXR0IFB1bmt0ZW4gc2V0emVuZC4uLiBlZ2FsLiBOdW4gaXN0IFNjaGx1c3MuIFB1bmt0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogUmVib290IChWYW5pb24sIDI4LiBBdWcgMjAwMywgMjM6NTU6MjMpOgp+IyEgcm49Um9uZGEgcnQ9MTA2MjEwNzQ5OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE5ODI5NzEKUm9uZGEsIGRpZXNlbiBBcm1hZ2VkZG9uIHNpZWh0IGVoIG51ciBqZW1hbmQsIGRlciBsb2thbCBlaW5nZWxvZ2d0IGlzdC4gSWNoCmRlbmtlIG5pY2gsIGRhc3MgZGllIGF1Y2ggZGllIGV4dGVybmVuIE5ldHp3ZXJrYW5iaW5kdW5nZW4gYW4gZGllIFVTViBoYWVuZ2VuLgpEaWUgc2luZCBkYW5uIGVpbmZhY2ggbmljaCB3aWNodGlnIGdlbnVnLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFJlYm9vdCAoUm9uZGEsIDI4LiBBdWcgMjAwMywgMjM6NTY6NTgpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNjIxMDc3MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxOTgyOTcxCk9jaC4gbWVubm8gVmFuaW9uLiBEdSBzaWVoc3QgZGFzIGVpbmZhY2ggenUgbnVlY2h0ZXJuIQoKUm9uZGEgKmZ1ZWhsdCBzaWNoIGVydGFwcHQgdW5kIHJlaWNodCBWYW5pb24gYXVjaCBuZW4gV2VpemVuIGF1cyBkZXIgRmVybmUqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBSZWJvb3QgKFRvZSwgMjguIEF1ZyAyMDAzLCAyMzo1ODo0MCk6Cn4jISBybj1WYW5pb24gcnQ9MTA2MjEwNzcyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjE5ODI5NzEKc2FjaCBpY2ggZG9jaCAtIG9kZXIgaGFiZSBpY2ggZGFzIGViZW4gbmljaHQgaW4gYWJyZWRlIGdlc3RlbGx0PyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFJlYm9vdCAoVG9lLCAyOC4gQXVnIDIwMDMsIDIzOjU5OjAyKToKfiMhIHJuPVJvbmRhIHJ0PTEwNjIxMDc4MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxOTgyOTcxCmljaCBibGVpYmUgYmVpbSByb3R3ZWluLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBSZWJvb3QgKFZhbmlvbiwgMjguIEF1ZyAyMDAzLCAyMzo1OTozOCk6Cn4jISBybj1Sb25kYSBydD0xMDYyMTA3ODE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTk4Mjk3MQo6c2FldWZ0IFdlaW4uCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogZmlsbSB2b24gVGhlb2RvciBEcmV5ZXIgaGV1dGUgaW0gVFYgKFpvb2ssIDI5LiBBdWcgMjAwMywgMDE6MDA6MDMpOgp+IyEgcm49SG9ibyBydD0xMDYxOTA0ODc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTgxNDMyNQpCYWRlbi1XdWVydHRlbWJlcmcKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogUmVib290IChNdWFkaWIsIDI5LiBBdWcgMjAwMywgMTI6NTc6MTkpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNjIxMDc5Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDYxOTgyOTcxCm9rLCBkYXMgbWl0IGRlciBhcm1hZ2VkZG9uIHdhcm51bmcgaXN0IG5lIHNjaG9lbmUgaWRlZS4gaWNoIHRlc3RlIGRhcyBqZXR6dAplaW4gcGFhcm1hbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFJlYm9vdCAoQW5hdG9sLCAyOS4gQXVnIDIwMDMsIDE5OjA2OjU0KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDYyMTc2MTk5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDYxOTgyOTcxCkFiZXIgKmltbWVyaGluKiEgRXMgaXN0IGVpbiAqSGlud2VpcyohIDopCgooIktsYXBwdCBuaWNodC4uLiBlZ2FsLCBzY2hpZXNzIGljaCBkZW4gSm9iIGhhbHQgYWIuLi4iKQooTklFLCBnZWhlIE5JRSBkaWUgVW5peC1BZG1pbnMgYmVzdWNoZW4gOykpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxFIChBbmF0b2wsIDI5LiBBdWcgMjAwMywgMTk6NTk6MTgpOgpQaXRmYWxsIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCltUb2Q6TGFyc10gRWluIEZldWVyc3RlaW5kcmFjaGUgaGF0IGdlcmFkZSBQaXRmYWxsIHVtZ2VicmFjaHQuCltUb2Q6RWluIEZldWVyc3RlaW5kcmFjaGUgbGFjaHQgaGFlbWlzY2guXQoKSHVwcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvb29vIGxlZXIgKE11YWRpYiwgMjkuIEF1ZyAyMDAzLCAyMTowMzo1MSk6CmlzdCBkaWUgbXBhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc29vb28gbGVlciAoWm9vaywgMjkuIEF1ZyAyMDAzLCAyMTowNDowMyk6Cn4jISBybj1NdWFkaWIgcnQ9MTA2MjE4MzgzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjIxODM4MzEKaGFzdCBkdSBsYW5nZXdlaWxlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzb29vbyBsZWVyIChHcmltbWJvcm4sIDI5LiBBdWcgMjAwMywgMjE6MDY6MjcpOgp+IyEgcm49Wm9vayBydD0xMDYyMTgzODQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MjE4MzgzMQpJaHIgc2VpZCBpbSBmYWxzY2hlbiB0aHJlYWQgaW4gZGVyIGZhbHNjaGVuIFJ1YnJpaywgSnVuZ3MuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHNvb29vIGxlZXIgKE11YWRpYiwgMjkuIEF1ZyAyMDAzLCAyMToyMjoyNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2MjE4Mzk4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjIxODM4MzEKd2llc28gPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IER1cmNoIFp1ZmFsbCBlbnRkZWNrdC4uLiAoVmFuaW9uLCAzMC4gQXVnIDIwMDMsIDEyOjMzOjQxKToKfiMhIG9uPVZhbmlvbiBvdD0xMDYyMjM5NjEzIG9nPWt1bHR1cgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwNjIyMjI5MTQgcmc9a3VsdHVyCn4jISB0aWQ9MTA2MjIyMjkxNApXZW4gaGFzdGUgZGVubiBnZXphcHB0PwoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRHVyY2ggWnVmYWxsIGVudGRlY2t0Li4uIChXaGl0ZXRpZ2VyLCAzMC4gQXVnIDIwMDMsIDEyOjM1OjE0KToKfiMhIHJuPVZhbmlvbiBydD0xMDYyMjM5NjIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MjIyMjkxNApEZW4gRmVybnNlaGVyLCBuZWhtIGljaCBtYWwgc28gYW4uLi4gOikKCnRpZ2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSaWt1cyBpbmZvcm1pZXJ0ISAoTWFnZGFsZW5hLCAzMS4gQXVnIDIwMDMsIDE0OjUzOjE2KToKUmlrdXMgaXN0IHNjaG9uIGphaHJlbGFuZyB0cm9ja2VuLgouLi4KUmlrdXMgc2FndDogZGFzIHNvd2llc28sIGFiZXIgaWNoIGJyYXVjaCBhdWNoIGtlaW5lIHdpbmRlbG4gbWVociA6KQoKbnVuamEsIHNlaW5lIHdpciBiZXJ1aGlndCwgZGFzcyBlciBkYXMgTVVEIG5pY2h0IHVudGVyICdXYXNzZXInIHNldHplbiB3aXJkLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogZmlsbSB2b24gVGhlb2RvciBEcmV5ZXIgaGV1dGUgaW0gVFYgKEhvYm8sICAxLiBTZXAgMjAwMywgMTM6NTY6MzcpOgp+IyEgcm49Wm9vayBydD0xMDYyMTExNjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MTgxNDMyNQpIbW0sIHdlciBoYXQgZGVubiBkYSBtZWluZW4gQXJ0aWtlbCBnZWxvZXNjaHQ/CiAgCiAgIEhvYm8gZ3J1bW1lbHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IER1cmNoIFp1ZmFsbCBlbnRkZWNrdC4uLiAoQ2F0d2VhemxlLCAgMS4gU2VwIDIwMDMsIDE2OjMwOjIxKToKfiMhIHJuPURlbCBydD0xMDYyNDE4MTI2IHJnPWt1bHR1cgp+IyEgdGlkPTEwNjIyMjI5MTQKTmVpbiwgaWNoIHdhciBfbmljaHRfIGluIEpvYW4gdmVya25hbGx0LgpEaWUgd2FyIG1pdCB6dSAuLi4gbWl0dGVsaW50ZWxsaWdlbnQuCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IER1cmNoIFp1ZmFsbCBlbnRkZWNrdC4uLiAoRm9vYmFyLCAgMS4gU2VwIDIwMDMsIDE3OjM1OjE3KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDYyNDI2NjIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MjIyMjkxNApNaXR0ZWxpbnRlbGxpZ2VudCBmKmNrdCBndXQuCgpPZGVyIHdhciBkYXMuLi4gSG0uCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IER1cmNoIFp1ZmFsbCBlbnRkZWNrdC4uLiAoQ2F0d2VhemxlLCAgMS4gU2VwIDIwMDMsIDE5OjAxOjQwKToKfiMhIHJuPUZvb2JhciBydD0xMDYyNDMwNTE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MjIyMjkxNApGYXN0IHJpY2h0aWcsIHRyb3R6ZGVtIGZhbHNjaGVyIFRyaXAuLi4uCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjI0LzcgKFBpdGZhbGwsICAxLiBTZXAgMjAwMywgMjM6MTE6NDQpOgpbS2FybHNydWhlOk11YWRpYl0gdHV0IG1pciBsZWlkCltLYXJsc3J1aGU6Q3JvZnQgd2FyIG1pdCBkZW0gRWltZXIgenUgbGFuZ3NhbV0KW0thcmxzcnVoZTpNdXBmZWxdIG11YWRpYiBpc3QgZWluIGJpc3NlbC4uLi4gc2VsdHNhbSwgaG0/CltLYXJsc3J1aGU6TXVhZGliXSBpY2ggaGFiIGdlcmFkZSBhbiB0b20gam9uZXMgZGVua2VuIG11ZXNzZW4gdW5kIGRhbm4gYW4gc2V4CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogMjQvNyAoTXVhZGliLCAgMS4gU2VwIDIwMDMsIDIzOjI2OjQ1KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTA2MjQ1MDcwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjI0NTA3MDQKZGEgZmVobHQgYWJlciBlaW5lIGdhYWFhYWFhYWFueiB3aWNodGlnZSB6ZWlsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdm9yYWhudW5nIChSYW5nb3JuLCAgMi4gU2VwIDIwMDMsIDEyOjEwOjUzKToKRGVpbiBGcmV1bmQgV2hpdGV0aWdlciBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuIApTdGF0dXMgKDE5NCAvLyAyMTUpIC0gVGFuamlhbiAoICAvICAgLyAgIC8gICkgLSBDaGFyIChuZXV0cmFsKSAtIE0gICAgIC0KV2hpdGV0aWdlciAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKSGFiZW4gVGFuamllcyBqZXR6dCBuIEhlbGxzaWNodHp3ZWlnPyBGaW5kIGljaCBrbGFzc2UgOm8pCgotIFJhbmdvcm4gS2h1cidUaWdyZXMgLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogV2lldmllbCBORVJEIHN0ZWNrdCBpbiBEaXI/IChPcmt0b2V0ZXIsICAzLiBTZXAgMjAwMywgMTY6MTc6MTYpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNjI1OTg1MTggcmc9d3d3Cn4jISB0aWQ9MTA2MjU5MzI0NAp3aWUgdmllbCBOZXJkIHdvaGwgaW4gTmVyZCBzdGVja3Q/CgpOZXJkIGlzdCBuaWNodCBhbndlc2VuZC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogT2xkZW5idXJnLgpadWxldHp0IGF1c2dlbG9nZ3Q6IERpZSwgMTguIFNlcCAyMDAxLCAwMDoxOTowNCAoNzE1ZCAxNTo1NzoxMikuClZvbGxlciBOYW1lOiBOZXJkIGRhcyB0YXBzaWdlIEthZXR6Y2hlbgpSYXNzZTogWndlcmcsICBHaWxkZTogS2F0emVua3JpZWdlciwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogMWQgMTI6NTQ6MDAsICAgU3BpZWxlcmxldmVsOiAyLCAgIEdpbGRlbmxldmVsOiAyCkRhdHVtIGRlcyBlcnN0ZW4gTG9naW46IFNvbiwgMTMuIEp1bCAxOTk3LCAxNDo1ODo0MgpOZXJkIGlzdCBad2VpdHNwaWVsZXIuCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdpZXZpZWwgTkVSRCBzdGVja3QgaW4gRGlyPyAoQmFtYmksICAzLiBTZXAgMjAwMywgMTg6MTA6MTApOgp+IyEgcm49R29yb2cgcnQ9MTA2MjYwMjA3NiByZz13d3cKfiMhIHRpZD0xMDYyNTkzMjQ0Ck1pY2ggbmljaHQuIEljaCBoYWIgZGFzIG5pY2h0IGdlbGVzZW4uIC4uLiBJY2gga2FubiBnYXIgbmljaHQgbGVzZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogV2lldmllbCBORVJEIHN0ZWNrdCBpbiBEaXI/IChCYW1idWxrbywgIDQuIFNlcCAyMDAzLCAxMDoxOTo1NSk6Cn4jISBybj1NYXJjdXMgcnQ9MTA2MjY1NTIyMyByZz13d3cKfiMhIHRpZD0xMDYyNTkzMjQ0CkhpbGZlISBLYXVtIGlzdCBHcmltbWJvcm4gbWFsIG5pY2h0IGRhLCB3aXJkIHNvZm9ydCBkaWUgTVBBIHp1Z2VtdWVsbHQuIEljaApmb3JkZXJlIFVybGF1YnN2ZXJib3QgZnVlciBHcmltbWJvcm4sIG9kZXIgZWluZW4gU3RlbGx2ZXJ0cmV0ZXIuCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogc3R1dHRnYXJ0IHN0YXRpIDYuOS4gMTggdWhyIChMZWliaSwgIDQuIFNlcCAyMDAzLCAxNToyNTozMCk6Cn4jISBybj1NYWdkYWxlbmEgcnQ9MTA2MjY4MTcxNCByZz10cmVmZmVuCn4jISB0aWQ9MTA2MjY4MTEwMwppbW1lcmhpbiBzY2hldWNoc3QgZHUgYXVjaCBsZXV0ZSBtaXR0ZW4gaW4gZGVyIG5hY2h0IGF1cyBkZW0gYmV0dCwgd2VpbCBkdQplaW5lbiBrYWZmZWUgbW9lY2h0ZXN0IDspCgpsZWliaSAtIHRyaW5rdCBrZWluIGthZmZlZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFuYWdyYW1tZSAoQmFtYnVsa28sICA0LiBTZXAgMjAwMywgMTU6Mjc6MjgpOgp+IyEgcm49QWxib2luIHJ0PTEwNjI2ODA0ODYgcmc9d3d3Cn4jISB0aWQ9MTA2MjY4MDQ4NgpBbHNvIFBhbWVsYSBBbmRlcnNvbiAtPiBkYXMgcGFhciBNZWxvbmVuIGZpbmRlIGljaCBiZXNzZXIgOi0pCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWFlbm5lciB1bmQgRnJhdWVuIChmdWVyIEplbmFuZHJhIDspIChBcG9sbG9uaWEsICA2LiBTZXAgMjAwMywgMDg6NTY6MTEpOgp+IyEgcm49Tm9ubmUgcnQ9MTA2MjgyODY5MSByZz13aXR6ZQp+IyEgdGlkPTEwNjI3OTM4MDEKSWNoIHRyYWcgZGllIFNwaW5uZW4gamEgYXVjaCBpbW1lciByYXVzLi4uCgpBcG8qCnRvZXRldCBhdWNoIGtlaW5lIFNwaW5uZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm51ciBzbyAoVG9lLCAgNi4gU2VwIDIwMDMsIDE3OjQyOjE0KToKRGVyIFdhbmRsZXIgdmVyc2Nod2luZGV0IHVycGxvZXR6bGljaC4KSWxseSB3ZWlzcyBnZXJhZGUgbmljaHQgd28gZXIgaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2lua2JlbG9obnVuZyAoQ2F0d2VhemxlLCAgNi4gU2VwIDIwMDMsIDE4OjI4OjI2KToKLS0tLS0KTWFoYXJldCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpNaWEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRHUgd2lua3N0IE1pYSBhdXMgZGVyIEZlcm5lIHp1LgpEdSB3aW5rc3QgTWFoYXJldCBhdXMgZGVyIEZlcm5lIHp1LgpNaWEga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpNYWhhcmV0IGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS4gCi0tLS0tCgpQcmltYSA6LSkKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdpZXZpZWwgTkVSRCBzdGVja3QgaW4gRGlyPyAoRGFya3dpbmcsICA2LiBTZXAgMjAwMywgMjI6NTE6MDUpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNjI1OTg2MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYyNTkzMjQ0CmhlaGUsIE9sZGVuYnVyZy4uLiBBbGxlcyBrbGFyIDpvKQoKRGFya3dpbmcsIHd1bmRlcnQgZGFzIG5pY2h0IHdpcmtsaWNoIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc3RhdGkgaW4gcyAoTGVpYmksICA3LiBTZXAgMjAwMywgMDA6MTk6MDYpOgp6aXRhdCBtYWdkYWxlbmE6ICdsaWViZSBpc3QgZWluIGhvcm1vbmVsbGVyIGZha2UnCgpsZWliaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHN0YXRpIGluIHMgKFBhdHJ5biwgIDcuIFNlcCAyMDAzLCAwMDoxOTo0OCk6Cn4jISBybj1MZWliaSBydD0xMDYyODg2NzQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2Mjg4Njc0NgphbHNvIGRhcyBpc3QgamEgZWNodCBlaW5lIHppZW1saWNoIGVybnVlY2h0ZXJ0ZSB6dXNhbW1lbmZhc3N1bmcgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc3RhdGkgaW4gcyAoTGVpYmksICA3LiBTZXAgMjAwMywgMDA6MjA6MjgpOgp+IyEgcm49UGF0cnluIHJ0PTEwNjI4ODY3ODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDYyODg2NzQ2Cm1hbCBzZWhuLHcgYXMgZGVyIGFiZW5kIG5vY2ggc28gYnJpbmd0IDopKSkKCmxlaWJpIHNjaGF1dCBhdWYgZGVuIHRpc2NoIG1pdCBkZW4gZmxhc2NoZW4gdW5kIGRlciBTQ0hPR0dJIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc3RhdGkgaW4gcyB6dW0gMi4gKExlaWJpLCAgNy4gU2VwIDIwMDMsIDAwOjIzOjIxKToKeml0YXQgcm9uZGE6ICdoZXhlbiBnaWJ0cyBudXIgcmwnCnppdGF0IDI6ICdtYWdkYSBpc3QgaXJnZW5kd2llIHVuc3ltbWV0cmlzY2gnCgpsZWliaSBicmF1Y2h0IGVpbiB0cmVmZmVuLnNjaG1hcnJuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHN0YXRpIGluIHMgKENhdHdlYXpsZSwgIDcuIFNlcCAyMDAzLCAwMDoyNjo0OSk6Cn4jISBybj1QYXRyeW4gcnQ9MTA2Mjg4Njc4OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjI4ODY3NDYKU2llaHN0ZSwgdW5kIGljaCBnbGF1YmUgTGllYmUgaXN0IGV4YWt0IGRhc3MsIHdhcyB1bnMgdm9tIFJlc3QgZGVzClByaW1hdGVucGFja3MgdW50ZXJzY2hlaWRldCwgd2VpbCBlcyBlYmVuIG5pY2h0IHJlaW4gaG9ybW9uaXNjaCBiZWdydWVuZGJhcgppc3QuCgpJcmdlbmR3YXMgZ2VzY2hlaXRlcyBtdWVzc2VuIHdpciBkb2NoIG1pdGdla3JpZWd0IGhhYmVuLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBzdGF0aSBpbiBzIChIdW1uaSwgIDcuIFNlcCAyMDAzLCAwMjoyODoyOSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA2Mjg4NzIwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjI4ODY3NDYKSWhyIGhhYnQgZ2FyIGtlaW5lIEFobnVuZy4gSWNoIGFiZXIgYXVjaCBuaWNodC4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpub2NoIG1laHIgdm9tIHMgc3RhdGkgKExlaWJpLCAgNy4gU2VwIDIwMDMsIDAyOjMxOjAwKToKYnJhbiBzYWd0OiBpY2ggd2lsbCBkZW4hIGFiZXIgZGVyIGtvbW10IG5pY2h0IQoKbGVpYmkga2ljaGVydCBudXIgbm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbm9jaCBtZWhyIHMgc3RhdGkgKExlaWJpLCAgNy4gU2VwIDIwMDMsIDAyOjM4OjI2KToKbWFnZGEgc2FndDoga29tbSEga29tbSEgc3RlbGwgZGljaCBzY2hhcmYhCgpsZWliaSBsaWVndCBudXIgbm9jaCBhdWYgZGVtIGJvZGVuIHZvciBsYWNoZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVuZCBub2NoIG1lZWVlZWVlZWVoci4uLi4gKExlaWJpLCAgNy4gU2VwIDIwMDMsIDAzOjAxOjM4KToKbWFnZGEgenUgcm9uZGE6IHJvbmRhIGlzdCBkb2NoIGxhbmd3ZWlsaWchCnJvbmRhIHNwcmFjaGxvcwptYWdkYSBzYWd0OiBvY2ggc2NobnVwcGVlZWVlZWVlbAoKbGVpYmkgbWFjaHQgaGV1dGUgZGllIHJ1YnJpayB2b2xsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdW5kIG5vY2ggbWVlZWVlZWVlZWhyLi4uLiAoRGFya2xvciwgIDcuIFNlcCAyMDAzLCAxODoxNTowMCk6Cn4jISBybj1MZWliaSBydD0xMDYyODk2NDk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2Mjg5NjQ5OApzY2hlaW50IGphIG5lICBmZXR6ZW4gU3RhdGkgZ2V3ZXNlbiB6dSBzZWluLi4uCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2FyYW9rZSAoUm9uZGEsICA3LiBTZXAgMjAwMywgMTg6Mjc6MDYpOgp+IyEgcm49QmlyZHkgcnQ9MTA2Mjg4OTY5NCByZz1wYXJ0eQp+IyEgdGlkPTEwNjI4ODk2OTQKKmh1c3QqIEJpcmR5LCBEdSB3aWxsc3QgYWxzbyBlaW5lIEdydXBwZSBqdW5nZXIgaHVlYnNjaGVyIEZyYXVlbiB2b24gZWluZW0KSnVuZ2dlc2VsbGlubmVuYWJzY2hpZWQgZnVlciBkaWUgbmFlY2hzdGUgTXVkcGFydHkgZWlubGFkZW4/IQoKQ29vbGVyIFZvcnNjaGxhZy4uLgoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2FyYW9rZSAoQ2F0d2VhemxlLCAgNy4gU2VwIDIwMDMsIDE4OjI5OjE0KToKfiMhIHJuPVJvbmRhIHJ0PTEwNjI5NTIwMjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYyODg5Njk0CkJpbiBpY2ggYXVmIGplZGVuIEZhbGwgZGFiZWkgOikKCk51ciBkYXMgbWl0IGRlbSBLYXJhb2tlIC4uLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEdyaW1tYm9ybiwgIDguIFNlcCAyMDAzLCAwMDo0ODozOCk6Cn4jISBvbj1Gb29iYXIgb3Q9MTA2Mjg3NTk3NiBvZz13d3cKW0JlaWxlaWQ6Qm9lc2VdIG5pY2h0IHNjaG9uIHdpZWRlciAuKCgKW1RvZDpMYXJzXSBFaW4gV2FlY2h0ZXIgaGF0IGdlcmFkZSBCb2VzZSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBXYWVjaHRlcl0gVHVlIEJ1c3NlIGZ1ZXIgRGVpbmUgU3VlbmRlbiwgQm9lc2UhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCB3ZW5ucyBzdGlsbCBpc3QgaW0gTUcuLi4uIChUcnVnLCAgOS4gU2VwIDIwMDMsIDAyOjA2OjQ0KToKZXIgU2FuZHRpZ2VyIGVya2VubnQgRGljaCB3aWVkZXIgdW5kIG5pY2t0IERpciBob2VmbGljaCB6dS4KRHUgYmlzdCBhbSBTdGFkdHRvciB2b24gUG9ydCBWYWluIGFuZ2Vrb21tZW4sIGRhcyB1bm1pdHRlbGJhciB2b3IgRGlyIGxpZWd0LgpJbgp3ZXN0bGljaGVyIFJpY2h0dW5nIGZ1ZWhydCBkaWUgUG9ydCBWYWluZXIgTGFuZHN0cmFzc2UgaW4gZGllIGdyb3NzZSwgd2VpdGUKV2VsdCBoaW5hdXMgdW5kIGluIG9lc3RsaWNoZXIgUmljaHR1bmcgenVtIGdyb3NzZW4gU3RhZHR6ZW50cnVtIGRlcgpIYWZlbnN0YWR0LgpVbm1pdHRlbGJhciBzdWVkbGljaCB2b24gRGlyLCBkaXJla3QgbmViZW4gZGVtIFN0YWR0dG9yIHNpZWhzdCBEdSBkaWUgcmllc2lnZQpQZm9ydGUgZWluZXMgbm9jaCByaWVzaWdlcmVuIFdldHRwYWxhc3RlcyB2b3IgRGlyIGF1ZnJhZ2VuLiBEdSBsZWdzdCBEZWluZW4KS29wZiBpbiBkZW4gTmFja2VuLCB1bSBpaG4gZ2FueiBiZXRyYWNodGVuIHp1IGtvZW5uZW4uIEVpbiBncm9zc2VzIFNjaGlsZApoYWVuZ3QgdWViZXIgZGVyIEVpbmdhbmdzcGZvcnRlLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiB1bmQgd2VzdGVuLgpFaW4gU2FuZHRpZ2VyLgpFaW4gbWFnaXNjaGVzIFBvcnRhbC4KZWluIFdhbmRsZXIga29tbXQgYXVzIGRlbSBMdWNreSBUaWdlcmBzIFdldHRwYWxhc3QgaGVyYXVzLgoKZGVtIGlzdCBhdWNoIHdvaGwgZmFkLi4uCgpUcnVnCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVlcyB2b24gZGVyIEhlaWx1bmcgKEJvaW5nLCAxMC4gU2VwIDIwMDMsIDA5OjA2OjAyKToKfiMhIG9uPU1vbnRhbnVzIG90PTEwNjMxNzc0ODggb2c9ZW50d2lja2x1bmcKfiMhIHJuPUdhYnlsb24gcnQ9MTA2MzE1NDMxMiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNjMxNTM4MzQKVW5kIGRhcyBaUEs/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXVlcyB2b24gZGVyIEhlaWx1bmcgKENhdHdlYXpsZSwgMTAuIFNlcCAyMDAzLCAwOToyMToyOCk6Cn4jISBybj1Cb2luZyBydD0xMDYzMTc3NTYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MzE1MzgzNApIdWNoLCBkYXMgd2lyZCB1ZWJlcmFyYmVpdGV0PwoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXVlcyB2b24gZGVyIEhlaWx1bmcgKE1vbnRhbnVzLCAxMC4gU2VwIDIwMDMsIDA5OjI1OjA0KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDYzMTc4NDg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MzE1MzgzNApNdXNzIGphIHdvaGwsIHdlbm4gZGllIFoqIG5pY2h0IG1laHIgcmVpbnAqIGR1ZXJmZW4sIHdpZSBiZWtvbW1lbiBzaWUgZGFubgppaHJlbiBzdGFuZGVzZ2VtYWVzc2VuIER1ZnQgdW5kIGlocmUgSGF1dGZhcmJlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmV1ZXMgdm9uIGRlciBIZWlsdW5nIChNdWFkaWIsIDEwLiBTZXAgMjAwMywgMDk6NTU6MzEpOgp+IyEgcm49TW9udGFudXMgcnQ9MTA2MzE3ODcwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjMxNTM4MzQKZXMgZ2FiIGtlaW4genBrLCBlcyBnaWJ0IGtlaW4genBrIHVuZCBlcyB3aXJkIGF1Y2gga2VpbiB6cGsgZ2ViZW4KZ2xlaWNoZXMgZ2lsdCBmdWVyIGRhcyBaUEsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5ldWVzIHZvbiBkZXIgSGVpbHVuZyAoQ2F0d2VhemxlLCAxMC4gU2VwIDIwMDMsIDA5OjU2OjUzKToKfiMhIHJuPU11YWRpYiBydD0xMDYzMTgwNTMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MzE1MzgzNApOYSB3YXJ0ZSBtYWwsIHdlbm4gamVtYW5kIGRhcyBaUEsgdWViZXJhcmJlaXRldCwgZGFubiBpc3QgZGFzIGRvY2ggZWluCmVpbmRldXRpZ2VyIEhpbndlaXMsIGRhc3MgZXMgZGFzIGdlYmVuIG11c3MsIG9kZXI/Ck9kZXI/CgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE5ldWVzIHZvbiBkZXIgSGVpbHVuZyAoTW9udGFudXMsIDEwLiBTZXAgMjAwMywgMDk6NTg6NTYpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNjMxODA2MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYzMTUzODM0CldpZSBzdGFyayBtdXNzIFpvb2sgamVtYW5kIGhhc3Nlbiwgd2VubiBlciBpaG0gZGVuIFRpdGVsIGRlciAiS2xvLUJhbGFuY2UiCmdpYnQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBOZXVlcyB2b24gZGVyIEhlaWx1bmcgKENhdHdlYXpsZSwgMTAuIFNlcCAyMDAzLCAxMDowMDoyOCk6Cn4jISBybj1Nb250YW51cyBydD0xMDYzMTgwNzM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MzE1MzgzNApIQUghCgpJY2ggaGFicyBzY2hvbiBpbW1lciBnZXd1c3N0LCBkYXNzIGRhcyBaUEsgd2FzIG1pdCBuZXIgS25laXBlIHp1IHR1biBoYWJlbgptdXNzOiAiWnVtIFByaXZhdC1LbG8iIGhlaXNzdCBkaWUuCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5pa29sYXVzISAoVmFuaW9uLCAxMC4gU2VwIDIwMDMsIDE4OjEzOjU0KToKfiMhIHJuPUZvb2JhciBydD0xMDYzMjEwMjkzIHJnPXBhcnR5Cn4jISB0aWQ9MTA2MzE3OTIzNgpFaW4gR3J1bmQsIHdhcnVtIGljaCBuaWNodCBhdWYgZGllIFBhcnR5IGtvbW1lLiA6KQpKYXBhbmVzZSBMYW5ndWFnZSBQcm9maWVuY3kgVGVzdCAtIFNvIE5hY2htaXR0YWcgaW4gRHVlc3NlbGRvcmYuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmlrb2xhdXMhIChBbGtvaG9sLCAxMC4gU2VwIDIwMDMsIDE4OjE1OjE4KToKfiMhIHJuPVZhbmlvbiBydD0xMDYzMjEwNDM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MzE3OTIzNgpkYSBsYWVzc3QgZHUgZGFubiBlaW5mYWNoIGRlbiBjaGluZXNlbiB3ZWcgOikKCkFsawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTmV1ZXMgdm9uIGRlciBIZWlsdW5nIChCYW1iaSwgMTAuIFNlcCAyMDAzLCAxOTo0MDowNSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA2MzE4MDUzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjMxNTM4MzQKRXJzdGVucyBzdGltbXQgZGFzIHNvIG5pY2h0IHVuZCB6d2VpdGVucyBzdGltbXN0IGR1IG1pciBqYSB6dSwgd2VubiBkdSBzb2dhcgpkZW4gcmljaHRpZ2VuIEFydGlrZWwgZnVlciAienBrIiBrZW5uc3QgdW5kIGJlbnV0enQuIC4uLiB9OikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE5ldWVzIHZvbiBkZXIgSGVpbHVuZyAoQ2F0d2VhemxlLCAxMC4gU2VwIDIwMDMsIDE5OjQ0OjA5KToKfiMhIHJuPUJhbWJpIHJ0PTEwNjMyMTU2MDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYzMTUzODM0CiJad2VyZ2UgcGlzc2VuIGtyYWZ0dm9sbCI/CgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5ldWVzIHZvbiBkZXIgSGVpbHVuZyAoRm9vYmFyLCAxMC4gU2VwIDIwMDMsIDIwOjExOjE4KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDYzMjE1ODQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MzE1MzgzNApGb29iYXIga2FubiBkYXMgYmVzdGFldGlnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBOZXVlcyB2b24gZGVyIEhlaWx1bmcgKENhdHdlYXpsZSwgMTAuIFNlcCAyMDAzLCAyMDoxMjoyOSk6Cn4jISBybj1Gb29iYXIgcnQ9MTA2MzIxNzQ3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjMxNTM4MzQKWmF1YmVyZXIgcG9zaWVyZW4ga3VlbW1lcmxpY2g/CgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOZXVlcyB2b24gZGVyIEhlaWx1bmcgKEZvb2JhciwgMTAuIFNlcCAyMDAzLCAyMDoxMzoyNSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA2MzIxNzU0OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjMxNTM4MzQKWm9vayBwYXNzaWVydCBrb21pc2NoZXMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBOZXVlcyB2b24gZGVyIEhlaWx1bmcgKENhdHdlYXpsZSwgMTAuIFNlcCAyMDAzLCAyMDoxNTowNyk6Cn4jISBybj1Gb29iYXIgcnQ9MTA2MzIxNzYwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjMxNTM4MzQKWmVudHJhbGJhbmsgcGF1c2NoYWxpc2llcnQgS3JlZGl0ZT8KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE5ldWVzIHZvbiBkZXIgSGVpbHVuZyAoVHVza3ksIDEwLiBTZXAgMjAwMywgMjE6MTQ6NTMpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNjMyMTc3MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYzMTUzODM0ClppZW1saWNoIHBlc2NoZXVlcnRlIEt1cnpmb3JtPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQXJyciAoVmFuaW9uLCAxMi4gU2VwIDIwMDMsIDAwOjA1OjI0KToKfiMhIHJuPUZvb2JhciBydD0xMDYzMjc2NTU3IHJnPXd3dwp+IyEgdGlkPTEwNjMyNzUxNTkKWm9va3MgRmx1Y2hlbiB6dSBmb2xnZSBoYXQgZXIgc2ljaCBncmFkIGRlbiBQcmVmaXggSXJvbiBmdWVyIHNlaW5lbgpQaXJhdGVubmFtZW4gdmVyZGllbnQgLi4uIDopCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQXJyciAoWm9vaywgMTIuIFNlcCAyMDAzLCAwMDowNTo1Nik6Cn4jISBybj1WYW5pb24gcnQ9MTA2MzMxNzkyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjMyNzUxNTkKJCUmJSYvJSQlJCUvJSYmIiUmLyQkIiUiISEhISEhIFVuZCBEdSBlcnN0IHJlY2h0LCBWYW5pb24hCgpab29rIHNjaGltcGZ0IHVuZCB6ZXRlcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBcnJyIChab29rLCAxMi4gU2VwIDIwMDMsIDAwOjA3OjQ4KToKfiMhIG9uPVZhbmlvbiBvdD0xMDYzMzE4MDUwIG9nPWRpc2t1c3Npb24KfiMhIHJuPVpvb2sgcnQ9MTA2MzMxNzk4OCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA2MzI3NTE1OQpXZW5uIGRhcyBuaWNoIHNvIGFsYmVybiB3YWVyZSwgd3VlcmRlIGljaCBlaW4gIkRvY2gsIGlzdCBlcyEhITEhIiBhbmZ1ZWdlbiA6KQoKViosIGFsYmVybi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFQtU2hpcnQ/IFN3ZWF0LVNoaXJ0PyBXaW5kamFja2U/IChDYXR3ZWF6bGUsIDEyLiBTZXAgMjAwMywgMTQ6MTQ6NTApOgp+IyEgcm49VGFyYW5pcyBydD0xMDYzMzY4NjQwIHJnPXBhcnR5Cn4jISB0aWQ9MTA2MzM2NzU3MwpJY2ggd2lsbCBrZWluZSBuZXVlIFJ1YnJpay4gSWNoIHdpbGwgYXVjaCBuaWNodCBpbiBQYXJ0eSBhdWZyYWV1bWVuLiBVbmQKZWlnZW50bGljaCB3aWxsIGljaCBkYSBhdWNoIG5pY2h0IHNjaG9uIHdpZWRlciBleHBpcmVuLgpCZWhlcnJzY2h0IGV1Y2guCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFQtU2hpcnQ/IFN3ZWF0LVNoaXJ0PyBXaW5kamFja2U/IChBbnlzaWRvcmEsIDEyLiBTZXAgMjAwMywgMTQ6MTU6MzgpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNjMzNjg4OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYzMzY3NTczCjptdXN0ZXJ0IENhdHdlYXpsZSBtYWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBULVNoaXJ0PyBTd2VhdC1TaGlydD8gV2luZGphY2tlPyAoQ3JvZnQsIDEyLiBTZXAgMjAwMywgMTQ6MTY6MDgpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNjMzNjg4OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYzMzY3NTczClNldHogaGFsdCBkYXMgTGltaXQgdm9uIFBhcnR5IGhvY2guCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVC1TaGlydD8gU3dlYXQtU2hpcnQ/IFdpbmRqYWNrZT8gKENhdHdlYXpsZSwgMTIuIFNlcCAyMDAzLCAxNDoxOTowMyk6Cn4jISBybj1Dcm9mdCBydD0xMDYzMzY4OTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MzM2NzU3MwpEdSB2ZXJzdGVoc3QgbmljaHQuCkRhcyBMaW1pdCB2b24gUGFydHkgX2lzdF8gc2F1aG9jaC4gTGVpZGVyIG11ZWxsdCBkYSBpbW1lciBKb2YgdW5kIGRpZSBXZWx0CnJ1bSwgc28gZGFzcyBtYW4gbWl0IGZvcnRzY2hyZWl0ZW5kZW0gQWx0ZXIgZGVyIFBhcnR5YW5rdWVuZGlndW5nIGRpZSBkcmVpClByb3plbnQgZGVyIHJlbGV2YW50ZW4gQXJ0aWtlbCBuaWNodCBtZWhyIGZpbmRldC4gCgpFcyB3YWVyZSBkYWhlciBzY2hvbiB3ZW5uIGlociBQYXBwbmFzZW4gZXVyZW4gU2NobWFycm4gd29hbmRlcnMgYWJsZWdlbgprb2VubnRldC4gTWVyY2kgOikKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVC1TaGlydD8gU3dlYXQtU2hpcnQ/IFdpbmRqYWNrZT8gKFBhcmRhdXosIDEyLiBTZXAgMjAwMywgMTQ6MzE6NTgpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNjMzNjkxNDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYzMzY3NTczCkpvZiBtdWVsbHQgZGEgYXVjaCBydW0/IEdvdHR2ZXJkYW1tdGVyIE1pc3QgYWJlciBhdWNoIC4uCkFoLCB3aXIgc2luZCBzY2hvbiBpbiBkZXIgcmljaHRpZ2VuIFJ1YnJpayA6KSAKClBhcmRhdXoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFQtU2hpcnQ/IFN3ZWF0LVNoaXJ0PyBXaW5kamFja2U/IChNb250YW51cywgMTIuIFNlcCAyMDAzLCAxNDozNTowOCk6Cn4jISBybj1QYXJkYXV6IHJ0PTEwNjMzNjk5MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDYzMzY3NTczCk9oLCBkb2NoIHNjaG9uIGF1Zmdlc3RhbmRlbj8gRGVpbmUgTWl0a3Vla2VuIHdvbGx0ZW4gdm9yaGluIHdhcyB2b24gZGlyLCB3ZWdlbgp0ZiBvZGVyIHNvLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVC1TaGlydD8gU3dlYXQtU2hpcnQ/IFdpbmRqYWNrZT8gKEFuYXRvbCwgMTMuIFNlcCAyMDAzLCAwMDo1MDo0Nik6Cn4jISBvbj1BbmF0b2wgb3Q9MTA2MzQwNzAzOCBvZz1wYXJ0eQp+IyEgcm49TGlhcmEgcnQ9MTA2MzQwMTIxNiByZz1wYXJ0eQp+IyEgdGlkPTEwNjMzNjc1NzMKS2F1dHNjaHVraGFlbW1lcj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmVjaHRzY2hyZWlicmVmb3JtIChDcm9mdCwgMTMuIFNlcCAyMDAzLCAxMToyNzowMyk6Cn4jISBybj1Ob25uZSBydD0xMDYzNDQ0OTczIHJnPXdpdHplCn4jISB0aWQ9MTA2MzQ0NDk3MwpBbGxlIEphaHJlIHdpZWRlcj8gLC0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVC1TaGlydD8gU3dlYXQtU2hpcnQ/IFdpbmRqYWNrZT8gKExpYXJhLCAxMy4gU2VwIDIwMDMsIDIxOjE2OjUzKToKfiMhIHJuPUFuYXRvbCBydD0xMDYzNDA3MDQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MzM2NzU3MwpOZWUsIEtudXRzY2hmaXNjaGFybWJydWVzdGUhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmEgd2VubiBkYXMga2VpbiBndXRlciBTY2htYXJybiBpc3QgLi4uIDspIChCb2luZywgMTUuIFNlcCAyMDAzLCAxNToxODo1Mik6CltTZWhlcjpYWFhdIG11c3MgZGFzIHN0ZWluYmVpc3NlciBhbXUgYmVpIGhlaWxlbiBpbW1lciBzbyBsYWdnZW4/CltTZWhlcjpZWVldIGRlcyBGZXVlcmFtdSBpcyBzY2hsaW1tZXIgKmZpbmQqCgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBULVNoaXJ0PyBTd2VhdC1TaGlydD8gV2luZGphY2tlPyAoQW50aGVhLCAxNS4gU2VwIDIwMDMsIDE4OjE3OjIxKToKfiMhIHJuPUxlaWJpIHJ0PTEwNjM2NDI1NzUgcmc9cGFydHkKfiMhIHRpZD0xMDYzMzY3NTczCldpZXNvPyBOaWNodCBtZWhyIGFsbGUgaW0gU2NocmFuaz8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFQtU2hpcnQ/IFN3ZWF0LVNoaXJ0PyBXaW5kamFja2U/IChab29rLCAxNS4gU2VwIDIwMDMsIDE4OjE4OjM1KToKfiMhIHJuPUFudGhlYSBydD0xMDYzNjQyNjQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MzM2NzU3MwpEYW5uIGtvbW1lbiB3aXIgamEgc2NobmVsbCBhdWYgZGllIG5vZXRpZ2VuIDcyIFN0dWVjay4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBULVNoaXJ0PyBTd2VhdC1TaGlydD8gV2luZGphY2tlPyAoQW50aGVhLCAxNS4gU2VwIDIwMDMsIDE4OjIwOjE3KToKfiMhIHJuPVpvb2sgcnQ9MTA2MzY0MjcxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjMzNjc1NzMKSXN0IGRlciBTY2hyYW5rIHNvIGdyb3NzPyBPZGVyIGhhc3QgRHUgbmV1bGljaCBtYWwgRWxlZmFudCBnZXNwaWVsdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IENVUFMgdW5kIGRlciBkb29mZSBab29rLiAoTW9yZ290aCwgMTUuIFNlcCAyMDAzLCAyMjowMzowMik6Cn4jISBybj1ab29rIHJ0PTEwNjM2NTYwNjYgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTA2MzY0ODIxMgpIZWlzc3QgZGFzIG5pY2h0ICJzYXVndCBzb2Z0d2FyZSI/IC4uLiBhYmVyIGRhcyB3YWVyIGphIGlsbGVnYWwgOikKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBDVVBTIHVuZCBkZXIgZG9vZmUgWm9vay4gKEdvcm9nLCAxNS4gU2VwIDIwMDMsIDIzOjA1OjMxKToKfiMhIHJuPUdvcm9nIHJ0PTEwNjM2NTk4NzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYzNjQ4MjEyCkRhcyB3YXIgYmVzdGltbXQgWm9va3MgQXJ0IHp1IHNhZ2VuOiBOaWVkZXIgbWl0IGRlbiBBbmdsaXppc21lbiEKCm1mRwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQ1VQUyB1bmQgZGVyIGRvb2ZlIFpvb2suIChab29rLCAxNS4gU2VwIDIwMDMsIDIzOjExOjE4KToKfiMhIHJuPUdvcm9nIHJ0PTEwNjM2NTk5MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYzNjQ4MjEyCkhhYiBpY2ggd2FzIGZhbHNjaCBnZW1hY2h0PyA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOYSB3ZW5uIGRhcyBrZWluIGd1dGVyIFNjaG1hcnJuIGlzdCAuLi4gOykgKE1lbnNhbmEsIDE2LiBTZXAgMjAwMywgMTQ6NTY6NDUpOgp+IyEgcm49Qm9pbmcgcnQ9MTA2MzYzMTkzMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjM2MzE5MzIKW0FiZW50ZXVlcjo8UXVlc3Q+XSBTdXBlcnNlaGVyIGhhdCBnZXJhZGUgZWluIEFiZW50ZXVlciBiZXN0YW5kZW46IERlcgpbQWJlbnRldWVyOjxRdWVzdD5dIFNpZWdlbHJpbmcgZGVzIFByaWVzdGVycwoKaXN0IHdlc2VudGxpY2ggYmVzc2VyCgoKTWVuc2FuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOYSB3ZW5uIGRhcyBrZWluIGd1dGVyIFNjaG1hcnJuIGlzdCAuLi4gOykgKFpvb2ssIDE2LiBTZXAgMjAwMywgMTU6MTE6MDApOgp+IyEgcm49TWVuc2FuYSBydD0xMDYzNzE3MDA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MzYzMTkzMgpEZXIgU3BpZWxlciB3aXJkIHNwYWV0ZXN0ZW5zIGJlaSBkZXIgRWluZnVlaHJ1bmcgZGVzIFN0YXR1cyAiU3VwZXJzZWhlciIKdmVyZ2Vsb2VzY2h0Li4uIDspKSkKClpvb2sgb3Jha2VsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5hIHdlbm4gZGFzIGtlaW4gZ3V0ZXIgU2NobWFycm4gaXN0IC4uLiA7KSAoTW9vbnNoaW5lLCAxNi4gU2VwIDIwMDMsIDE1OjEyOjA0KToKfiMhIHJuPVpvb2sgcnQ9MTA2MzcxNzg2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjM2MzE5MzIKQXByb3BvcyBTdGF0dXMgU3VwZXJzZWhlcjogV2Fubj8gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTmV1ZXMgdm9uIGRlciBIZWlsdW5nIChWYXJkaW9uLCAxNi4gU2VwIDIwMDMsIDE1OjIyOjI2KToKfiMhIHJuPUdhYnlsb24gcnQ9MTA2MzcxNjkyNSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNjMxNTM4MzQKRGFzIG1pdCBkZXIgZ29sZGVuZW4gS2xvYnVlcnN0ZSBnZWh0IG5pY2h0IC0gZGFzIHdhZXJlIGVpbiBpbGxlZ2FsZXMKU3Bhc3NvYmpla3QgOikKClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW1hcnlsbGlzLCAxNi4gU2VwIDIwMDMsIDE2OjU5OjI3KToKQnVkZGhhIHJ1ZnQ6IGhpbGZlIGhlcmJlaQouLi4KW1RvZDpMYXJzXSBFaW5lIEVyZnJpZXJ1bmcgaGF0IGdlcmFkZSBCdWRkaGEgdW1nZWJyYWNodC4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5hIHdlbm4gZGFzIGtlaW4gZ3V0ZXIgU2NobWFycm4gaXN0IC4uLiA7KSAoT3JrdG9ldGVyLCAxNi4gU2VwIDIwMDMsIDE3OjIyOjAzKToKfiMhIHJuPVpvb2sgcnQ9MTA2MzcxNzg2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjM2MzE5MzIKSG0uLiBkYW5uIG1vZWNodGUgaWNoIGFsbGUgT3JrcyAoYXVjaCBTcGllbGVyKSB0b2V0ZW4gZHVlcmZlbiBvaG5lIGRhc3MgZGFzCmFscyBQSyBnZXdlcnRldCB3aXJkLiAoV2FlcmUgZXZ0bC4gc29nYXIgZWluIEdydW5kIHdpZWRlciBha3RpdiB6dSB3ZXJkZW4pCgpPcmtULCBpbiBkZXIgcmljaHRpZ2VuIFJ1YnJpay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5hIHdlbm4gZGFzIGtlaW4gZ3V0ZXIgU2NobWFycm4gaXN0IC4uLiA7KSAoQ3JvZnQsIDE2LiBTZXAgMjAwMywgMTc6MjQ6NTMpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNjM3MjU3MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYzNjMxOTMyCkhtLiAgRGFzIGhhdHRlc3QgZHUgYmVpIGRlbiBEdW5rZWxlbGZlbiBuaWNodCBnZWZvcmRlcnQsIG9kZXI/ICBXbyBsaWVndApmdWVyIGRpY2ggZGVyIFVudGVyc2NoaWVkIHp1IGRlbiBPcmtzPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5hIHdlbm4gZGFzIGtlaW4gZ3V0ZXIgU2NobWFycm4gaXN0IC4uLiA7KSAoSHVtbmksIDE2LiBTZXAgMjAwMywgMTc6MjU6MTkpOgp+IyEgcm49Q3JvZnQgcnQ9MTA2MzcyNTg5MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjM2MzE5MzIKRXIgaGVpc3N0IE9ya3RvZXRlciwgbmljaHQgRHVua2VsZWxmZW50b2V0ZXIsIGlzdCBkb2NoIGtsYXIuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmEgd2VubiBkYXMga2VpbiBndXRlciBTY2htYXJybiBpc3QgLi4uIDspIChNb3Jnb3RoLCAxNi4gU2VwIDIwMDMsIDE3OjI1OjM1KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDYzNzI1NzIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MzYzMTkzMgoKRHUgbWVpbnN0LCBEdSB3dWVyZGVzdCBkYW5uIGFrdGl2IFRvZGVzc2VxdWVuemVuIGxlc2VuPwoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5hIHdlbm4gZGFzIGtlaW4gZ3V0ZXIgU2NobWFycm4gaXN0IC4uLiA7KSAoQ3JvZnQsIDE2LiBTZXAgMjAwMywgMTc6Mjk6MDUpOgp+IyEgcm49SHVtbmkgcnQ9MTA2MzcyNTkxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjM2MzE5MzIKTmFqYS4gIEtvZW5udGUgamEgZWluIEhvYmJ5IHNlaW4sIGZhbGxzIGVyIG1pdCBkZW0gT3JrdG9ldGVuIG5vY2ggbmljaHQKYXVzZ2VsYXN0ZXQgaXN0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOZXVlcyB2b24gZGVyIEhlaWx1bmcgKEFuYXRvbCwgMTYuIFNlcCAyMDAzLCAxODo0NjozOCk6Cn4jISBybj1LZW5ueSBydD0xMDYzNzMwNzE0IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTA2MzE1MzgzNApEdSBtb2VjaHRlc3QgYWxzbyBtZWhyIFJlYWxpc211cy4gT2theS4gRHUga2FubnN0IGhldXRlIFJhdXNzY2hlaXNzZW4sCndhcyBEdSB2b3IgZHJlaSBUYWdlbiBnZWdlc3NlbiBoYXN0LCBiZWtvbW1zdCBhbHNvIGVpbmUgdW5nbGF1YmxpY2ggbGFuZ3NhbWUKUnVudGVyaWRsZS1SYXRlLiBJY2ggZ2xhdWJlLCBkYXMgaXN0IG1hY2hiYXIuIFNvIGVpbiBoYWxiZXIgUHJvemVudHB1bmt0CmplIFJlc2V0PwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBOZXVlcyB2b24gZGVyIEhlaWx1bmcgKE9ya3RvZXRlciwgMTYuIFNlcCAyMDAzLCAxOTozNzoxNCk6Cn4jISBybj1LZW5ueSBydD0xMDYzNzMzNzI2IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTA2MzE1MzgzNApaaXRhdCAoZGVyIFJlcGx5YXJ0aWtlbCk6CgpSdWJyaWsgMTk6IGVudHdpY2tsdW5nLCBBcnRpa2VsOiAyNCB2b24gMjQKUmVeMTE6IE5ldWVzIHZvbiBkZXIgSGVpbHVuZyAoS2VubnksIDE2LiBTZXAgMjAwMywgMTk6MzU6MjYpOgpbQmV6dWc6IEFydGlrZWwgMjMgdm9uIFR5bGFrIHZvbSAxNi4gU2VwIDIwMDMsIDE5OjMzOjIzXQoKZyBhdWZuYWhtZSBMdWdpYQpnIG5hbWUgS2lsbEl0CmcgYXV0b2kgc29mb3J0CmRhbm4gaXNzZXMgamEgbm9jaCBzY2hsaW1tZXIgYWxzIGljaCBkYWNodGUhIEljaCBrZW5uZSBoYWx0IG51ciBIb2JiaXRzIHVuZApad2VyZ2UuLi4gYWJlciBkYXMgZXMgbm9jaCBzY2hsaW1tZXIgaXN0IHd1c3N0IGljaCBuaWNodC4gVW5kIGlociBzdGVja3QgZGFzCnNvIHdlZz8gOikKCkltbWVyIGRyYW4gZGVua2VuOiBFcnN0IFNjcmlwdCBhdXMsIGRhbm4gcG9zdGVuLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBOZXVlcyB2b24gZGVyIEhlaWx1bmcgKENyb2Z0LCAxNi4gU2VwIDIwMDMsIDE5OjQyOjMwKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDYzNzMzODM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MzE1MzgzNApXb3p1IGF1c3NjaGFsdGVuPyBHZXNjaGlja3QgcGxhdHppZXJ0ZSBBdXNydWZlemVpY2hlbiB0dW5zIGRvY2ggYXVjaC4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogTmV1ZXMgdm9uIGRlciBIZWlsdW5nIChNdWFkaWIsIDE2LiBTZXAgMjAwMywgMTk6NDY6MTcpOgp+IyEgcm49Q3JvZnQgcnQ9MTA2MzczNDE1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjMxNTM4MzQKb2sgaWNoIGhhYiBudW4gd2FzIG1pdCBhdXNydWZlemVpY2hlbiB2b3JoZXIgZ2V0aXBwdC4Kd2FzIHdhcnM/CmF1c3J1ZmV6ZWljaGVuIHdlZ2xhc3NlbiBoYXQgZHVyY2hhdXMgdW50ZXJoYWx0dW5nc3dlcnQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBOZXVlcyB2b24gZGVyIEhlaWx1bmcgKFZhbmlvbiwgMTYuIFNlcCAyMDAzLCAxOTo0OTo1Nyk6Cn4jISBybj1NdWFkaWIgcnQ9MTA2MzczNDM3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjMxNTM4MzQKQXVzcnVmZXplaWNoZW4gc2luZCBpbW1lciBndXQhISExMSEhISEhISEhITEhISEhISEKSmUgbWVociBkZXN0byBiZXNzZXIgISEhISExMTExITExITEhISEhISEKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogTmV1ZXMgdm9uIGRlciBIZWlsdW5nIChCcm90bmFlbCwgMTYuIFNlcCAyMDAzLCAxOTo1MDozMSk6Cn4jISBybj1WYW5pb24gcnQ9MTA2MzczNDU5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjMxNTM4MzQKS3JhbmsuLiBhbGxlIG51ciBrcmFuayEgdW5kIGRhbm4gbmljaCBtYWwgdGlwcGVuIGtvZW5uZW4gO28pKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTHVmdGJhbGxvbnMgKENhdHdlYXpsZSwgMTYuIFNlcCAyMDAzLCAyMDo0NDowNik6Cn4jISBybj1Ob25uZSBydD0xMDYzNzM3Njk2IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTA2MzczNTI1NQpPaywgSnVuZ3MsIGhhbHRldCBFdWNoIHJhbiwgaWNoIGJyYXVjaCBkaWUgYmlzIG5hZWNoc3RlIFdvY2hlLiBQKioqdCB3YXMgZGFzClpldWcgaGFlbHQuCgpVbmQgaW1tZXIgc2NodWV0emVuLCBnZWxsPwoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOZXVlcyB2b24gZGVyIEhlaWx1bmcgKExpYXJhLCAxNi4gU2VwIDIwMDMsIDIwOjQ0OjI0KToKfiMhIHJuPU1vb25zaGluZSBydD0xMDYzNzEwMTMyIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTA2MzE1MzgzNApUZWFta2FtcGYuICpodXN0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTmV1ZXMgdm9uIGRlciBIZWlsdW5nIChPbGxpLCAxNi4gU2VwIDIwMDMsIDIwOjQ1OjM4KToKfiMhIHJuPUxpYXJhIHJ0PTEwNjM3Mzc4NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYzMTUzODM0CkluIEJlenVnIGF1ZiBkZW4gIkx1ZnRiYWxsb24iLVRocmVhZCBkaXJla3QgaGllcnZvciwgbGFlc3N0IHNpY2ggZGFzIGRvY2gKX3NlZWVlZWhyXyB6d2VpZGV1dGlnIGxlc2VuIDspCgpPbGxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHaWxkZW4gbWl0IEsgLi4uIChMaWFyYSwgMTYuIFNlcCAyMDAzLCAyMDo0OToxNSk6CltUb2Q6TGFyc10gRWluIGFia2xpbmdlbmRlciBTZWdlbiBoYXQgZ2VyYWRlIEJyb3RuYWVsIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZXJhZGUgaW0gVGVlR3NjaHdlbmRuZXIgTmV3c2xldHRlciAuLi4gKExpYXJhLCAxNi4gU2VwIDIwMDMsIDIxOjM5OjA4KToKNC4gU29waGlzdGljYXRlZCBOZXdzLiBOZXUgaW0gRWRtb24ncyBQcm9ncmFtbQoKTnIuIDI1MjAgRGFyamVlbGluZyBSb2hpbmkgRW5pZ21hLCBGaXJzdCBGbHVzaCAKRGVyIE5ld2NvbWVyLiBTZWxic3QgZGllIHp1IHNlaW5lciBlaGVyIHdlbmlnIGJla2FubnRlbiBHcnVwcGUKemFlaGxlbmRlbiBHYWVydGVuIEdvcGFsZGhhcmEgdW5kIEF2b25ncm92ZSBzaW5kIGRldXRsaWNoIGxhZW5nZXIgCnVuZCBoYWV1ZmlnZXIgbWl0IFNwaXR6ZW5xdWFsaXRhZXRlbiBpbSBNYXJrdCB2ZXJ0cmV0ZW4gYWxzIFJvaGluaS4KTGV1Y2h0ZW5kIHJvdGdvbGRlbmUgVGFzc2VuZmFyYmUsIG9id29obCBnbGVpY2ggenUgQmVnaW5uIGRlciAKU2Fpc29uIGdlZXJudGV0LiBBbmltaWVyZW5kZSBmbG9yYWxlIE5vdGUsIGZsYW5raWVydCB2b24gZWluZW0Kd3VlcnppZ2VuIER1ZnQgJ2EgbGEgU3Vlc3Nob2x6IG5lYnN0IGVpbmVtIEhhdWNoIHZvbiBXYWxkbW9vcy4gClZvbiBzYW5mdGVyIEhlcmJlIGdlcHJhZWd0ZSBHZXNjaG1hY2tzZnVlbGxlLCBkaWUga2VybmlnLCBkb2NoIApuaWNodCBzY2h3ZXIgd2lya3QuIEtlaW4gQ2hhcm1ldXIgZGVyIGxpZWJsaWNoZW4gQXJ0LCBzb25kZXJuCmtsYXNzaXNjaGVyIEZydWVobGluZ3N0ZWUgbWl0IGxlaWNodCBmcml2b2xlbSBDaGFyYWt0ZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEx1ZnRiYWxsb25zIChPcmt0b2V0ZXIsIDE2LiBTZXAgMjAwMywgMjE6NDM6MTEpOgp+IyEgcm49Tm9ubmUgcnQ9MTA2MzczNzY5NiByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwNjM3MzUyNTUKVGphLCBkYXMgbWl0IGRlbTogZXJzdCAicnVicmlrIHNjaG1hcnJuIiB1bmQgZGFubiBlcnN0ICJyZXBseSIgdWViZW4gd2lyIGFiZXIKbm9jaCBtYWwgTm9ubmUsIG9kZXIgd2FzIGJpZXRlc3Qgb2RlciBzdWNoc3QgZHUgaW4gRGVpbmVtIEFydGlrZWw/CgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdlcmFkZSBpbSBUZWVHc2Nod2VuZG5lciBOZXdzbGV0dGVyIC4uLiAoQ2F0d2VhemxlLCAxNi4gU2VwIDIwMDMsIDIxOjU1OjE5KToKfiMhIHJuPUxpYXJhIHJ0PTEwNjM3NDExNDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDYzNzQxMTQ4ClVuZCBiZXN0aW1tdCB3aWVkZXIgbmljaHQgYmV6YWhsYmFyPyAKV2FydW0gc3RlaHQgZGFzIGluIHNjaG1hcnJuIHVuZCBuaWNodCBpbiBrdWx0dXIgb2RlciBrb2NocmV6ZXB0ZT8KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmEgd2VubiBkYXMga2VpbiBndXRlciBTY2htYXJybiBpc3QgLi4uIDspIChab29rLCAxNi4gU2VwIDIwMDMsIDIzOjA4OjIxKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDYzNzI1NzIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MzYzMTkzMgpJY2ggZGVua2UgZWhlciwgRHUgd2lyc3QgZWluZW0gcGFzc2VuZGVuIFJhc3Nlbi0vR2lsZGVuLU5QQyB3ZWljaGVuCm11ZXNzZW4uLi4KClpvb2sgc2NoaWVidCBNb3Jnb3RoIGVpbmVuIEtvbnplcHQtWmV0dGVsIHp1LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmEgd2VubiBkYXMga2VpbiBndXRlciBTY2htYXJybiBpc3QgLi4uIDspIChPcmt0b2V0ZXIsIDE3LiBTZXAgMjAwMywgMDA6MTU6MjcpOgp+IyEgcm49Wm9vayBydD0xMDYzNzQ2NTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2MzYzMTkzMgpIYSEgQWJlciB3ZW5uIGRhbm4gbnVyIHdlbm4gbWVpbiBad2VpdGkgZGllIGdhbnplbiBMb2dmaWxlcyBkZXIgdG0gYW4gZGVuIE5QQwpiZWtvbW10IQoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBOZXVlcyB2b24gZGVyIEhlaWx1bmcgKE9nbywgMTcuIFNlcCAyMDAzLCAwMDozNjozMCk6Cn4jISBybj1UeWxhayBydD0xMDYzNzMzNjAzIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTA2MzE1MzgzNApIbW0sIHdvIGdpYnQgZXMgZGVubiBkaWUgSG9iYml0Z2lsZGU/IEhhYiBpY2ggd2FzIHZlcnBhc3N0PwoKT2dvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTmV1ZXMgdm9uIGRlciBIZWlsdW5nIChHbG9pbnNvbiwgMTcuIFNlcCAyMDAzLCAwMDozNzoxNCk6Cn4jISBybj1PZ28gcnQ9MTA2Mzc1MTc5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjMxNTM4MzQKQmllcnNjaHVldHRsZXIuIE5pY2h0aG9iYml0cyBoYWJlbiBkYSBkaWUgR2lsZGUgdmVycGFzc3QgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprcmFzcyAoR2FuZG8sIDE3LiBTZXAgMjAwMywgMTY6NDE6MjEpOgpOYWNoIGVpZW5yIFN0aWR1ZSBkZXIgQ21hYnJpZGdlIFVpbnZlcnN0aWFldCwgaXN0IGVzIGVhZ2wgaW4gd2xlaGNlcgpSZWllaG5mb2dsZSBkaWUgQmNodXN0ZWJhZW4gaW4gV29lcmV0cm4gdm9rcm1vbWVuLiBFcyBpc3QgbnVyIHdpdGhjaWcsZHNhcwpkZXIgZXJ0c2UgdW5kIGxldHR6ZSBCY2h1c2F0YmUgYW4gZGVyIHJpY3RoZ2llbiBTdGxlbGUgc25pZC4gRGVyIFJzZXQga25hbgp0b3RhbCBmYWxjc2ggc2VpbiB1bmQgbWFuIGtuYW4gZXMgb25oZSBQb3JiZWxtZSBsZWVzbi4gRGFzIGlzdCwgd2llbCBkYXMKbW5lc2NoaWxjaGUgR2VpaHJuIG5jaWh0IGplZGVuIEJjaHVzdGJhZW4gbGlzZXQgc29kbmVybiBkYXMgV3JvZCBhbHMgICAKZ2F6bmVzLgoKS3JzYXMgb2Vkcj8KCkdhbmRvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZToga3Jhc3MgKEdsb2luc29uLCAxNy4gU2VwIDIwMDMsIDE2OjQyOjM1KToKfiMhIHJuPUdhbmRvIHJ0PTEwNjM4MDk2ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYzODA5NjgxClNpZWhlIFJ1YnJpayB3d3c/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHZXJhZGUgaW0gVGVlR3NjaHdlbmRuZXIgTmV3c2xldHRlciAuLi4gKE11cGZlbCwgMTcuIFNlcCAyMDAzLCAyMjoxNTozMyk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA2Mzc0MjExOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjM3NDExNDgKV2VnZW4gZGVyIGJsdW1pZ2VuIEJlc2NocmVpYnVuZz8gRGllIGhhYmVuIGFsbGVyZGluZ3MgYWxsZSBUZWVzIGRpZXNlcgoiU2VyaWUiLiBVbmQgdGV1ZXIgc2luZHNlIGF1Y2ggKGljaCBzYWNoIG51ciBjYS4gNDAgZXVyZW4gcHJvIDEwMCBnciB0ZWUgYmVpCmJlc3RpbW10ZW4gZ3J1ZW50ZWVzb3J0ZW4uLi4pCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gd2FzLi4uIChEZWVwYmx1ZSwgMTguIFNlcCAyMDAzLCAxNToyNzozNCk6CltBbGxnZW1laW46QW1hem9yYSBicmljaHQgaW4gdHJhZW5lbiBhdXMgdW5kIHdlaW50IGJpdHRlcmxpY2hdCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU28gd2FzLi4uIChBbWF6b3JhLCAxOC4gU2VwIDIwMDMsIDE1OjI4OjEzKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwNjM4OTE2NTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDYzODkxNjU0CmRhIGthbm5zdGUgbWFsIHNlaGVuIHdpZSBiaXR0ZXJsaWNoIGljaCB3ZWluZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGVpYmkgbGVpYmloYWZ0Li4uIChNb3Jnb3RoLCAxOS4gU2VwIDIwMDMsIDAxOjAzOjE0KToKRHUgc2llaHN0IGVpbmVuIGJhdW1ob2hlbiwgZ3J1ZW5lbiBXZWlobmFjaHRzYmF1bSwgZ2VuYXVlciBnZXNhZ3QgZWluZW4KVGFubmVuYmF1bS4gU2VpbmUgQWVzdGUgc2luZCB3dW5kZXJiYXIgZ2xlaWNobWFlc3NpZyBnZXdhY2hzZW4gdW5kIG1pdCBsYW5nZW4sCmR1ZW5uZW4gTmFkZWxuIGJlZGVja3QuCkRpZXNlciBXZWlobmFjaHRzYmF1bSBpc3QgZ2FueiBzaWNoZXIga2VpbiBkdXJjaHNjaG5pdHRsaWNoZXIgQmF1bSwgZGVuIG1hbgpzaWNoIHp1IFdlaWhuYWNodGVuIGJlc29yZ3QuIEVyIGlzdCBzb3p1c2FnZW4gZWluIF9ldHdhcyBhbmRlcmVyXyBCYXVtLgpEZXIgQmF1bSBzdGVodCBpbiBlaW5lbSBzdGFiaWxlbiBTdGFlbmRlciwgZGFtaXQgZXIgbmljaHQgdW1mYWVsbHQuCkRpZXNlbiBXZWlobmFjaHRzYmF1bSBoYXQgTGVpYmkgaGllciBhdWZnZXN0ZWxsdC4KQWxzIEJhdW1zY2htdWNrIGhhZW5ndCBpbiBpaG06ClZpZWwgS3JlbXBlbC4uLgpEaWUgYmVyZWl0cyB6aWVtbGljaCBzdGlua2VuZGUgTGVpY2hlIGVpbmVyIGJsYXVlbiBEaXhpa2xvcmF0dGUuCgpNKiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGF1ZiBkZW0gd2VpaG5hY2h0c21hcmt0Li4uLiAoTGVpYmksIDE5LiBTZXAgMjAwMywgMDE6MjI6MzkpOgp+IyEgcm49SW1kYSBydD0xMDYzOTI3MzE1IHJnPWQucG9sYXIKfiMhIHRpZD0xMDYzOTI2ODA5CmphLCBhbHNvIGRlaW4ga2lsbCBmZWhsdCBtaXIgc2ljaGVyIG5vY2guIHBhc3MgYml0dGUgYXVmLCBkYXNzIGR1IG5pY2ggdm9yaGVyCnN0aXJic3QgOikKCmxlaWJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBhdWYgZGVtIHdlaWhuYWNodHNtYXJrdC4uLi4gKEltZGEsIDE5LiBTZXAgMjAwMywgMDE6MjM6MTkpOgp+IyEgcm49TGVpYmkgcnQ9MTA2MzkyNzM1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjM5MjY4MDkKSWNoIGdlYiBtaXIgbXVlaGUuIHdhciBkYXMgbmVkIGluIGRlbSB1amFrZGluZ2Vucz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmdhciBnZWlzdGxpY2guLiBhZWggZ2Vpc3RyZWljaD8gKE1hZ2RhbGVuYSwgMTkuIFNlcCAyMDAzLCAxMzozOToxOCk6Cj4ga3VzY2hlbCBsZWliaQpEYXp1IGJpc3QgRHUgYWxzIEdlaXN0IHZpZWwgenUga2FsdCB1bmQgZ2FyIHNjaHJvZWNrbGljaCBhbnp1c2VoZW4uCkxlaWJpIGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCmtudXRzY2hlIGxlaWJpCkRhcyBrYW5uc3QgRHUgYWxzIEdlaXN0IGxlaWRlciBuaWNodC4gSXJnZW5kd2llIGZlaGx0IERpciBkYXp1IGRhcyBIZXJ6Lgo+IGdyaW5zCkFscyBEdSBncmluc3QsIHNpZWhzdCBEdSByZWdlbHJlY2h0LCB3aWUgZGllIGFuZGVyZW4gZWluZSBHYWVuc2VoYXV0IGJla29tbWVuLgo+IGtpY2hlcgpEdSBraWNoZXJzdC4gKFdpZSBhbGJlcm4gdm9uIERpcikKPiBMZWliaSB6aXR0ZXJ0IHZvciBBbmdzdC4KZGVuayBHZWlzdCBydWxleiEgOikKV29taXQgd2lsbHN0IER1IGRlbm4gZGVua2VuPyBEdSBoYXN0IGtlaW5lIGdyYXVlbiBaZWxsZW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBnYXIgZ2Vpc3RsaWNoLi4gYWVoIGdlaXN0cmVpY2g/IChab29rLCAxOS4gU2VwIDIwMDMsIDEzOjQ1OjA3KToKfiMhIHJuPU1hZ2RhbGVuYSBydD0xMDYzOTcxNTU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2Mzk3MTU1OApLb2VubnRlIG1hbiBkaWUgImtlaW5lIGdyYXVlbiBaZWxsZW4iLUFiZnJhZ2UgYXVjaCBhdWYgTmljaHQtR2Vpc3RlcgphdXNkZWhuZW4uLi4uPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYmVpbSBJZGxlbiAuLi4gKExpYXJhLCAyMS4gU2VwIDIwMDMsIDEzOjM2OjE3KToKW0FsbGdlbWVpbjpCcmFuXSBIYWxsbyBNb3JnZW5ncmF1ZW4uIEFiIHNvZm9ydCBzaW5kIGRpZSBEYWJvLVRpc2NoZSB1bmQKW0FsbGdlbWVpbjpCcmFuXSBIb2xvc3VpdGVuIHdpZWRlciBnZW9lZmZuZXQuCltBbGxnZW1laW46Wm9va10gPwpbQWxsZ2VtZWluOkpvc2h1YV0gPwpbQWxsZ2VtZWluOkltZGFdID8KW0FsbGdlbWVpbjpJZGxlZml4XSA/CltBbGxnZW1laW46TWV0aG9kbWFuXSA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJsZXNlbiA7KSAoTGlhcmEsIDIxLiBTZXAgMjAwMywgMTM6NTc6MTMpOgpEZWluIEZyZXVuZCBab29rIHNjaGF1dCBhdXMgZGVyIEZlcm5lIGVudHNldHp0IGF1ZiBkZW4gaGVydW50ZXIgcmllc2VsbmRlbgpEcmVjay4gCkRlaW5lIEZyZXVuZGluIEFzdWthIHRlaWx0IERpciBtaXQ6IG5laW4sIG5pY2h0IGJlaSBkaXIgR2FieWxvbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZSA6KSAoTGlhcmEsIDIxLiBTZXAgMjAwMywgMTU6MDU6MjUpOgpEZWluIEZyZXVuZCBab29rIHRlaWx0IERpciBtaXQ6IEljaCBiaW4gZGVyIE11ZGdvdHQsIHdhcyBrdWVtbWVydCBtaWNoCkRlaW4gRnJldW5kIFpvb2sgdGVpbHQgRGlyIG1pdDogTG9naWsuLi4/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT2huZSBXb3J0ZSA6KSAoWm9vaywgMjEuIFNlcCAyMDAzLCAxNTowNjoyMyk6Cn4jISBybj1MaWFyYSBydD0xMDY0MTQ5NTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NDE0OTUyNQpab29rIHVlYmVybGVndCwgenVrdWVuZnRpZyBhdWNoIG1hbCBFc3QtQm9mcyBhZWguLi4gQmVzdC1PZnMsIHZvbiBmcnVmZW4gCmFuZGVyZXIgTGV1dGUgenUgdmVyb2VmZmVudGxpY2hlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogT2huZSBXb3J0ZSA6KSAoTGlhcmEsIDIxLiBTZXAgMjAwMywgMTU6MDc6MzcpOgp+IyEgcm49Wm9vayBydD0xMDY0MTQ5NTgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NDE0OTUyNQpKYWphLCB1bmQgYWxsZXMgbnVyLCB3ZWlsIGljaCBkYXMgaW4gJ1NjaG1hcnJuJyB2ZXJvZWZmZW50bGljaHQgaGFiZS4gOikgQmlzdGUKZ2V0eiBiZWxlaWRpZ3Q/IDspKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogT2huZSBXb3J0ZSA6KSAoWm9vaywgMjEuIFNlcCAyMDAzLCAxNTowNzo1MSk6Cn4jISBybj1MaWFyYSBydD0xMDY0MTQ5NjU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NDE0OTUyNQpOb2UuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogT2huZSBXb3J0ZSA6KSAoUm9uZGEsIDIxLiBTZXAgMjAwMywgMTU6MDg6NTgpOgp+IyEgcm49Wm9vayBydD0xMDY0MTQ5NjcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NDE0OTUyNQpEQVMgd2FyIGpldHp0IGFiZXIgenUgbG9naXNjaCwgbWVpbnQgSWhyIG5pY2h0IGF1Y2g/CgpSb25kYSAqc3RpbW10IGZ1ZXIgbXBhLmRpZ2VzdCBvZGVyIHNvKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBPaG5lIFdvcnRlIDopIChMaWFyYSwgMjEuIFNlcCAyMDAzLCAxNTowOToyNCk6Cn4jISBybj1ab29rIHJ0PTEwNjQxNDk1ODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY0MTQ5NTI1CkFlaCwgaWNoIGhvZmZlLCB6dWt1ZW5mdGlnIGlzdCBiYWxkPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAyNCAoWm9vaywgMjIuIFNlcCAyMDAzLCAxMDowNTo0NCk6Cn4jISBvbj1ab29rIG90PTEwNjQyMTc5Mzggb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUZvb2JhciBydD0xMDY0MTgwMjAzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTA2NDE4MDE1MwpLbGFyLCBkYXNzIGRhcyBrbGVpbmUgWndlcmdlbmhpcm5jaGVuIG1pdCBzbyBncm9zc2VuIFphaGxlbiBkdXJjaGVpbmFuZGVyCmtvbW10Li4uIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogMjQgKEZvb2JhciwgMjIuIFNlcCAyMDAzLCAxMDozMzowNCk6Cn4jISBybj1ab29rIHJ0PTEwNjQyMTc5NDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY0MTgwMTUzClBvZWguLi4KCkZvb2JhciBzY2htb2xsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdvZXR0bGljaGUgQWdncmVzc2lvbj8gKE11cGZlbCwgMjIuIFNlcCAyMDAzLCAyMTozNjoyOCk6CkRlaW4gRnJldW5kIFpvb2sgdGVpbHQgRGlyIG1pdDogRWlnZW50bGljaCBjb29sLiBXaWVzbyBrYW0gaWNoIG5pZSBhdWYgZGllCkRlaW4gRnJldW5kIFpvb2sgdGVpbHQgRGlyIG1pdDogSWRlZSwgbWVpbmUgQWdncmVzc2lvbmVuIGFtIE1HIGF1c3p1bGFzc2VuPwpEZWluIEZyZXVuZCBab29rIHRlaWx0IERpciBtaXQ6IDspKSkpCkFuYXRvbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR29ldHRsaWNoZSBBZ2dyZXNzaW9uPyAoQ3JvZnQsIDIyLiBTZXAgMjAwMywgMjE6Mzg6MTQpOgp+IyEgcm49TXVwZmVsIHJ0PTEwNjQyNTkzODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDY0MjU5Mzg4CkF1cyBkZW0gS29udGV4dCBnZXJpc3NlbiBmYW5kIGljaCBlaWdlbnRsaWNoIGZvbGdlbmRlcyBuZXR0ZXIgYnp3CnVuZ2xhdWJ3dWVyZGlnZXIgOm8pOgoKRGVpbiBGcmV1bmQgWm9vayB3ZW5kZXQgc2ljaCBhbmdld2lkZXJ0IHZvbiBBbGtvaG9sIGF1cyBkZXIgRmVybmUgYWIuIAoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR29ldHRsaWNoZSBBZ2dyZXNzaW9uPyAoWm9vaywgMjIuIFNlcCAyMDAzLCAyMTozODo0NCk6Cn4jISBybj1Dcm9mdCBydD0xMDY0MjU5NDk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NDI1OTM4OApTYWd0IG1hbCwgYmluIGljaCBlaWdlbnRsaWNoIEV1ZXIgUGF1c2VuY2xvd24/Cgpab29rLgoKUFM6IEVyc3BhcnQgbWlyIGRpZSBBbnR3b3J0Li4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHb2V0dGxpY2hlIEFnZ3Jlc3Npb24/IChDcm9mdCwgMjIuIFNlcCAyMDAzLCAyMTo0MDoyNik6Cn4jISBybj1ab29rIHJ0PTEwNjQyNTk1MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY0MjU5Mzg4Ck9obmUgamV0enQgamEgenUgYW50d29ydGVuLCB3YXMgbWVpbnN0IGR1IGdlbmF1IG1pdCBQYXVzZT8gOj4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHb2V0dGxpY2hlIEFnZ3Jlc3Npb24/IChPcmt0b2V0ZXIsIDIyLiBTZXAgMjAwMywgMjE6NDE6MDYpOgp+IyEgcm49Wm9vayBydD0xMDY0MjU5NTI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NDI1OTM4OApIdWkhIFdlbm4gZGFzIGtlaW5lIFZvcmxhZ2UgZnVlciBlaW5lbiBWb2xsZXkgd2FyLi4KCk9ya1QsIG51dHp0IGlobiBhYmVyIG5pY2h0LCBhZXRzY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHb2V0dGxpY2hlIEFnZ3Jlc3Npb24/IChab29rLCAyMi4gU2VwIDIwMDMsIDIyOjEwOjAwKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDY0MjU5NjY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NDI1OTM4OApbIF0gRHUgaGFzdCBkYXMgUFMgZ2VsZXNlbi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHb2V0dGxpY2hlIEFnZ3Jlc3Npb24/IChBbWF6b3JhLCAyMy4gU2VwIDIwMDMsIDEzOjQzOjM2KToKfiMhIHJuPVpvb2sgcnQ9MTA2NDI1OTUyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjQyNTkzODgKamEKOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZ1c3NiYWxsIChPcmt0b2V0ZXIsIDIzLiBTZXAgMjAwMywgMjA6NTQ6MTIpOgp+IyEgcm49Wm9vayBydD0xMDY0MzQyNjcyIHJnPXdpdHplCn4jISB0aWQ9MTA2NDM0MjI4NApnZW5hdSwgd28gYmxlaWJlbiBkaWUgQmVybmVyd2l0emU/CgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRnVzc2JhbGwgKFpvb2ssIDIzLiBTZXAgMjAwMywgMjA6NTU6MDApOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNjQzNDMyNTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY0MzQyMjg0CkljaCB3ZXJkZSBtaWNoIG1pdCBXaXR6ZW4gdWViZXIgU2Nod2VpemVyIHZlcnN0YWVuZGxpY2hlcndlaXNlIGh1ZWJzY2ggCnp1cnVlY2toYWx0ZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRnVzc2JhbGwgKE11YWRpYiwgMjMuIFNlcCAyMDAzLCAyMjoxMTowOSk6Cn4jISBybj1ab29rIHJ0PTEwNjQzNDMzMDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY0MzQyMjg0CmVpbmUgZXJzdGF1bmxpY2ggc2NobmVsbGUgYW50d29ydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzbiBkYXMgZnVlciBlaW4gd2Vja2VyIGJpdHRlPyAoQW1hem9yYSwgMjQuIFNlcCAyMDAzLCAxNjowMzo1MCk6CiBNY0RlZXMgV2Vja2VyIGtsaW5nZWx0IGJlaSBEaXIuCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2FzbiBkYXMgZnVlciBlaW4gd2Vja2VyIGJpdHRlPyAoWm9vaywgMjQuIFNlcCAyMDAzLCAxNzoxMzo0OSk6Cn4jISBybj1BbWF6b3JhIHJ0PTEwNjQ0MTIyMzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY0NDEyMjMwClBzc3NzY2h0LCBkYXMgc2luZCBkaWUgZXJzdGVuIFRlc3RzIGZ1ZXIgZGVuICJTdXBlcnNlaGVyIi4KClpPb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphYnN0ZWxsZ2xlaXM/IChUb2UsIDI0LiBTZXAgMjAwMywgMjM6MDY6MzUpOgpWYW5oZWxzaW5nIGtvbW10IGFuLgpWYW5oZWxzaW5nIGhhdCBnZXJhZGUgZGllIFZlcmJpbmR1bmcgenUgTW9yZ2VuR3JhdWVuIGdla2FwcHQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBWYW5oZWxzaW5nLgpWYW5oZWxzaW5nIGdlaHQgaW5zIFJlaWNoIGRlciBOZXR6dG90ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWJzdGVsbGdsZWlzPyAoUm9uZGEsIDI0LiBTZXAgMjAwMywgMjM6MTA6MTApOgp+IyEgcm49VG9lIHJ0PTEwNjQ0Mzc1OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY0NDM3NTk1Ck5laW4sIG5pY2h0IEFic3RlbGxnbGVpcywgVG9lLi4uCgo+IFZhbmhlbHNpbmcga29tbXQgYW4uCi0+ICJBdSBNaXN0ISBWYW1waXJlISIKPlZhbmhlbHNpbmcgaGF0IGdlcmFkZSBkaWUgVmVyYmluZHVuZyB6dSBNb3JnZW5HcmF1ZW4gZ2VrYXBwdC4KLT4gIlNjaG5lbGwgd2VnLCBLbm9ibGF1Y2ggaG9sZW4uLi4iCj4gUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFZhbmhlbHNpbmcuCi0+ICIuLi4gZG9jaCBnZWJpc3NlbiB3b3JkLi4uLi4uLi4uIgo+IFZhbmhlbHNpbmcgZ2VodCBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KLT4gLi4uIHdpZWRlciBlaW5lIEtlcmJlIGZ1ZXIgSmVtYW5kLgoKUm9uZGEgKmVya2xhZXJ0cyBoZXV0ZSBtYWwgZGFtcGZlcmdlcmVjaHQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGFsYmUgUGFydHkgKFpvb2ssIDI1LiBTZXAgMjAwMywgMTQ6MzM6MzEpOgp+IyEgb249Wm9vayBvdD0xMDY0NDkzMjA1IG9nPXBhcnR5Cn4jISBybj1Nb250YW51cyBydD0xMDY0NDkyODAxIHJnPXBhcnR5Cn4jISB0aWQ9MTA2NDQ5MjgwMQpBYmVyIDQ0LDQ0IGR1cmNoIDIgZ2lidCBkb2NoIDIyLDIyLCBvZGVyIG5pY2h0PyA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR1BHIG1pdCBPdXRsb29rIChWYXJkaW9uLCAyNS4gU2VwIDIwMDMsIDE2OjQwOjQyKToKfiMhIHJuPVRhcmFuaXMgcnQ9MTA2NDUwMDcwNCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDY0NDkwMDUzCkljaCBrb2VubnRlIGF1Y2ggbm9jaCBlaW4gUkM0LVBsdWdpbiBmdWVyICJ0ZWlsZSBtaXQiIGFuYmlldGVuLi4uCgpWYXJkaW9uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBVbGl0ZSAtIE1HbGVyIGdlc3VjaHQuLi4gKFpvb2ssIDI1LiBTZXAgMjAwMywgMjE6MjY6NDEpOgp+IyEgcm49QmlyZHkgcnQ9MTA2NDUxNzk2NyByZz1hbnplaWdlbgp+IyEgdGlkPTEwNjQ0NzkwOTMKSWNoIHNwaWVsIGF1Y2ggaW0gTW9yZ2VuR3JhdWVuLCBhYmVyLi4uLiBkYXMgd2Vpc3N0IER1IGphLiA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFVsaXRlIC0gTUdsZXIgZ2VzdWNodC4uLiAoQmlyZHksIDI1LiBTZXAgMjAwMywgMjE6Mjc6MTcpOgp+IyEgcm49Wm9vayBydD0xMDY0NTE4MDAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NDQ3OTA5MwpkdSBzcGllbHN0PyBob2VjaHN0ZW5zIG1pdCB1bnNlcmVuIGxlYmVuISA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVWxpdGUgLSBNR2xlciBnZXN1Y2h0Li4uIChNYW5kcmFnb24sIDI1LiBTZXAgMjAwMywgMjI6MzU6MjcpOgp+IyEgcm49QmlyZHkgcnQ9MTA2NDUxODAzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjQ0NzkwOTMKCkRhIGVyIEdvdHQgaXN0LCB3b2hsIGthdW0gbWl0IHNlaW5lbSBlaWdlbmVuIC4uLi4KCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVWxpdGUgLSBNR2xlciBnZXN1Y2h0Li4uIChNdWFkaWIsIDI2LiBTZXAgMjAwMywgMDA6NTc6MDEpOgp+IyEgcm49TWFuZHJhZ29uIHJ0PTEwNjQ1MjIxMjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY0NDc5MDkzCndpZSBndXQgZGFzcyBtYW4gem9vayBtaXQgc2VpbmVtIHZpcnR1ZWxsZW4gbGViZW4gdHJhdWVuIGthbm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN0ZXJiZWhpbGZlPyA7LSkgKEFoYWIsIDI2LiBTZXAgMjAwMywgMTc6MDQ6NDIpOgpNZWRpYyBzYWd0OiBrYW5uIGljaCBtYWwgenVtIHN0ZXJiZW4gbWVpbmVuIGtyYW0gaGllciBsYXNzZW4/CgpNZWRpYyBzYWd0OiBvaywgaWNoIGdlaCBtYWwgc3RlcmJlbgpEdSBzYWdzdDoga2FubnN0ZSBhdWNoIGhpZXIgdHVuIDopCk1lZGljIHNhZ3Q6IHdpZT8KTWVkaWMgc2FndDogdGFtYWhvcm55IGFlcmdlcm4gb2huZSB6YXViZXJrb21wb3M/Ck1lZGljIHNhZ3Q6IGVnYWwsIGljaCBtYWNoIGVpbmZhY2ggbWFsCiAgLi4ubm9ybWFsLz8/Py4uLi4uLi4uLiBUYW1haG9ybnkuLi4uIDogTWVkaWMuLi4uLi4uLiAqKioqKioqKiAtLQpTY2htZXR0ZXJuCiAgLi4ubm9ybWFsLz8/Py4uLi4uLi4uLiBUYW1haG9ybnkuLi4uIDogTWVkaWMuLi4uLi4uLiAqKioqKioqKiAtLSB6dSBCcmVpCiAgLi4ubm9ybWFsLz8/Py4uLi4uLi4uLiBUYW1haG9ybnkuLi4uIDogTWVkaWMuLi4uLi4uLiAqKioqKioqKiAtLSBQdWx2ZXIKTWVkaWMgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KW1RvZDpMYXJzXSBFaW4gVGFtYWhvcm55IGhhdCBnZXJhZGUgTWVkaWMgdW1nZWJyYWNodC4KW1RvZDpFaW4gVGFtYWhvcm55XSBFbmRsaWNoIGJpc3QgRHUgbWljaCBsb3MuLi4uc2Nob2VuLCBuaWNodCB3YWhyPyA6KQoKQWhvaSwKQWhhYiBpc3QgamV0enQgb2ZmZW5zaWNodGxpY2ggU3RlcmJlaGVsZmVyIGZ1ZXIgU3BpZWxlciBzdGF0dCBOUENzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVjaCBXYW5kbGVyIGhhYmVucyBzY2h3ZXIgKFRvZSwgMjguIFNlcCAyMDAzLCAxODowODo1MSk6CkVpbiBXYW5kbGVyIHdhYmVydCBoZXJlaW4uCkVpbiBXYW5kbGVyIHNjaGxlcHB0IHNpY2ggbXVlaHNhbSBuYWNoIE5vcmRvYmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGF1Y2ggV2FuZGxlciBoYWJlbnMgc2Nod2VyIChUb2UsIDI4LiBTZXAgMjAwMywgMTg6MTY6NDIpOgp+IyEgcm49VG9lIHJ0PTEwNjQ3NjUzMzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY0NzY1MzMxCkVpbiBXYW5kbGVyIGtvbW10IGRlbiBCZXJnIGhlcnVudGVyZ2VzdGFwZnQuCkVpbiBXYW5kbGVyIHNjaGxlcHB0IHNpY2ggbXVlaHNhbSBuYWNoIE5vcmRvYmVuLgpFaW4gV2FuZGxlciBrb21tdCBkZW4gQmVyZyBoZXJ1bnRlcmdlc3RhcGZ0LgpEZXIgV2FuZGxlciB3YWJlcnQgbmFjaCBTdWVkd2VzdGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFic2NoaWVkc3N0YXRpIFM/IChab29rLCAyOC4gU2VwIDIwMDMsIDE5OjUxOjMzKToKfiMhIG9uPVpvb2sgb3Q9MTA2NDc3MTQ4NyBvZz10cmVmZmVuCn4jISBybj1TZWxldmVuIHJ0PTEwNjQ3NzE0MTUgcmc9dHJlZmZlbgp+IyEgdGlkPTEwNjQ3NzE0MTUKSW4gS29tYmluYXRpb24gbWl0IERlaW5lbSBBcnRpa2VsIGluIG1hZ2llci51cmxhdWIgd3VlcmRlIG1pY2ggamEgbWFsCmludGVyZXNzaWVyZW4sIHdpZSBEdSBudW4gZGllIFJ1ZWNrbWVsZHVuZ2VuIGF1ZiBkaWVzZW4gQXJ0aWtlbCBtaXRiZWtvbW1lbgp3aWxsc3QuLi4gOykKClpPb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFic2NoaWVkc3N0YXRpIFM/IChDcm9mdCwgMjguIFNlcCAyMDAzLCAxOTo1MjoxNyk6Cn4jISBybj1ab29rIHJ0PTEwNjQ3NzE0OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY0NzcxNDE1Ck5vY2ggaXN0IG5pY2h0IEZyZWl0YWcgLC0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOYWNobWlldGVyIGdlc3VjaHQgKEJlcmxpbikgKFpvb2ssIDI5LiBTZXAgMjAwMywgMTI6MDk6MjMpOgp+IyEgcm49Um9jaHVzIHJ0PTEwNjQ4MzAxMTkgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMDY0NzQzMTEzCkFoLCBSb2NodXMgaXN0IHVudGVyIGRpZSBJbW1vYmlsaWVuaGFpZSBnZWdhbmdlbiAod29yZGVuKS4gR3JhdHMgenVtIG5ldWVuCk1ha2xlci1Kb2IhIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmFjaG1pZXRlciBnZXN1Y2h0IChCZXJsaW4pIChSb2NodXMsIDI5LiBTZXAgMjAwMywgMTI6MTA6NDcpOgp+IyEgcm49Wm9vayBydD0xMDY0ODMwMTYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NDc0MzExMwpXYXMgc29sbCBpY2ggbWFjaGVuPwpXZW5uIGljaCBrZWluZW4gTWlldGVyIGZpbmRlIG11c3MgaWNoIG5vY2gKMiBNb25hdGUgd2VpdGVyIGZ1ZXIgZGllIGFsdGUgV29obnVuZyB6YWhsZW4uLi4KRGEgaGFldHRlIGljaCBzY2hvbiBiZXNzZXJlIFZlcndlbmR1bmcgZnVlciBkYXMgR2VsZCA6KQoKICBSb2NodXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5hY2htaWV0ZXIgZ2VzdWNodCAoQmVybGluKSAoTW9udGFudXMsIDI5LiBTZXAgMjAwMywgMTI6MTg6MzcpOgp+IyEgcm49Um9jaHVzIHJ0PTEwNjQ4MzAyNDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY0NzQzMTEzCkFiZXIgZnJlaXdpbGxpZyBuYWNoIERvb2ZtdW5kIHppZWhlbi4uLiB0c3RzdHMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5hY2htaWV0ZXIgZ2VzdWNodCAoQmVybGluKSAoWm9vaywgMjkuIFNlcCAyMDAzLCAxMjoxOToxMCk6Cn4jISBybj1Nb250YW51cyBydD0xMDY0ODMwNzE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NDc0MzExMwpXYXIgZWluIGdld2lzc2VyIEhlcnIgTS4gbmljaHQgYXVjaCBmcmVpd2lsbGlnIGluIERPPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5hY2htaWV0ZXIgZ2VzdWNodCAoQmVybGluKSAoTW9udGFudXMsIDI5LiBTZXAgMjAwMywgMTI6MTk6NTYpOgp+IyEgcm49Wm9vayBydD0xMDY0ODMwNzUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NDc0MzExMwpOZWluLCBuaWNodCBmcmVpd2lsbGlnLiBJY2ggaGF0dGUgZGllIEF1c3dhaGwgendpc2NoZW4gRG8gdW5kIE11ZW5jaGVuLiBEYQprYW5uIG1hbiBETyBuaWNodCB3aXJrbGljaCBhbHMgZnJlaXdpbGxpZyBiZXplaWNobmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmFjaG1pZXRlciBnZXN1Y2h0IChCZXJsaW4pIChBbWF6b3JhLCAyOS4gU2VwIDIwMDMsIDE1OjQxOjIxKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNjQ4MzA3MTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY0NzQzMTEzCmltbWVyIG5vY2ggYmVzc2VyIGFscyBzY2h3ZWJlYmFobmdyYXVzZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFya3MgVHJhZXVtZSB6dW5pY2h0ZSBnZW1hY2h0IChNZW5zYW5hLCAyOS4gU2VwIDIwMDMsIDE5OjI1OjM3KToKW0FsbGdlbWVpbjpBcmtdIFN0aWxsZSBOYWNodCwgdW5oZWltbGljaGUgTmFjaHQsIGFsbGVzIHNjaGxhZWZ0LCBlaW5zYW0gd2FjaHQuCltBbGxnZW1laW46QXJrXSBOdXIgZGVyIE1vbnN0ZXIgbWFlY2h0aWdlIFNjaGFyIGthZW1wZmVuIHVtJ3MgbGV0enRlCltBbGxnZW1laW46QXJrXSBIYWxsZWx1amEuIFNjaGxhZiBpbiB0b2VkbGljaGVyIFJ1aCcsIHNjaGxhZmUsIG1hY2gnIGRpZQpbQWxsZ2VtZWluOkFya10gQWV1Z2VsZWluIHp1IC4uLgpbQWJlbnRldWVyOjxRdWVzdD5dIERyYWdvbmhlYXJ0IGVudGthbSBkZW4gZmluc3RlcmVuIFBsYWVuZW4gZGVzIGZhaHJlbmRlbgpbQWJlbnRldWVyOjxRdWVzdD5dIEdhdWtsZXJzLiAKW0FiZW50ZXVlcjpBbGV4aXNdIFdhcnRldCBudXIsIERyYWdvbmhlYXJ0LCBiZWltIG5hZWNoc3RlbiBNYWwgcGFzc2UgaWNoCltBYmVudGV1ZXI6QWxleGlzXSBiZXNzZXIgYXVmIEV1Y2ggYXVmICEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSW50ZXJlc3NhbnQgLi4uIChHcmltbWJvcm4sIDMwLiBTZXAgMjAwMywgMDc6Mzg6NTYpOgp+IyEgb249Qm9pbmcgb3Q9MTA2NDc2NzI0OCBvZz13aXR6ZQp+IyEgcm49R2l0YXJyZSBydD0xMDY0NzU5MDcwIHJnPXdpdHplCn4jISB0aWQ9MTA2NDc1OTA3MApTdGFuZCBkYXMgbmljaHQgbGV0enRlIFdvY2hlIHNjaG9uIDMgbWFsIGluIGRlciBNUEE/CiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSW50ZXJlc3NhbnQgLi4uIChHcmltbWJvcm4sIDMwLiBTZXAgMjAwMywgMDc6Mzg6NTgpOgp+IyEgb249Wm9vayBvdD0xMDY0NzY3NDU2IG9nPXdpdHplCn4jISBybj1Cb2luZyBydD0xMDY0NzY3MjQ4IHJnPXdpdHplCn4jISB0aWQ9MTA2NDc1OTA3MApKYXUuIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSW50ZXJlc3NhbnQgLi4uIChHcmltbWJvcm4sIDMwLiBTZXAgMjAwMywgMDc6Mzg6NTkpOgp+IyEgb249TXVhZGliIG90PTEwNjQ3NjkxNjMgb2c9d2l0emUKfiMhIHJuPVpvb2sgcnQ9MTA2NDc2NzQ1NiByZz13aXR6ZQp+IyEgdGlkPTEwNjQ3NTkwNzAKd2lya2xpY2g/CmljaCBnbGF1YiBpY2ggaGFicyB2ZXJwYXNzdAprYW5uIG5vY2htYWwgamVtYW5kID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEludGVyZXNzYW50IC4uLiAoR3JpbW1ib3JuLCAzMC4gU2VwIDIwMDMsIDA3OjM5OjAwKToKfiMhIG9uPVpvb2sgb3Q9MTA2NDc2OTYyMCBvZz13aXR6ZQp+IyEgcm49TXVhZGliIHJ0PTEwNjQ3NjkxNjMgcmc9d2l0emUKfiMhIHRpZD0xMDY0NzU5MDcwCkVzIHN0YW5kIHNvZ2FyIGluIGRlciBGQVogc28gYWVobmxpY2ggZHJpbi4gOikKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBJbnRlcmVzc2FudCAuLi4gKEdyaW1tYm9ybiwgMzAuIFNlcCAyMDAzLCAwNzozOTowMSk6Cn4jISBvbj1Dcm9mdCBvdD0xMDY0NzY5ODY3IG9nPXdpdHplCn4jISBybj1ab29rIHJ0PTEwNjQ3Njk2MjAgcmc9d2l0emUKfiMhIHRpZD0xMDY0NzU5MDcwClVuZCBpbiBkZXIgVGVsZXBvbGlzIGhhdHMgYXVjaCBuZW4gbGFlbmdlcmVuIEFydGlrZWwgZGF6dS4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBJbnRlcmVzc2FudCAuLi4gKEdyaW1tYm9ybiwgMzAuIFNlcCAyMDAzLCAwNzozOTowMik6Cn4jISBvbj1Cb2luZyBvdD0xMDY0NzcwMDY1IG9nPXdpdHplCn4jISBybj1Dcm9mdCBydD0xMDY0NzY5ODY3IHJnPXdpdHplCn4jISB0aWQ9MTA2NDc1OTA3MApBdWYgc3BpZWdlbC5kZSBzdGFuZHMgYXVjaCB6d2VpIG1hbCwgZWlubWFsIGFscyBBcnRpa2VsLCBlaW5tYWwgYWxzCkphbWlyaSBDYXJ0b29uICgqZ2FlaG4qKS4gVW5kIHBlciBtYWlsIGthbSBlcyBhdWNoIGVpbiBoYWxiZXMgRHV0emVuZAptYWwuCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEVpbmUgc2Nod2llcmlnZSBGb2xnZSAoSUkpIChHcmltbWJvcm4sIDMwLiBTZXAgMjAwMywgMTE6NTQ6MzUpOgp+IyEgcm49Wm9vayBydD0xMDY0OTE1NTc4IHJnPXB1aXoKfiMhIHRpZD0xMDY0OTA1ODEyCkVyemFlaGx0IG1pciBuaWNodHMgdm9uIFN0dWV0enN0ZWxsZW4sIGljaCB3YXIgZGllIGxldHp0ZW4gYmVpZGVuIFdvY2hlbiBtaXQKNTAwIExldXRlbiB6dXNhbW1lbiBtaXQgZWluZW0gZ2VzY2hhZXR6dGVuIER1cmNoc2Nobml0dHNhbHRlciB2b24gNzUgSmFocmVuLgoqRGFzKiBzaW5kIG1hbCBTdHVldHpzdGVsbGVuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEVpbmUgc2Nod2llcmlnZSBGb2xnZSAoSUkpIChHbG9pbnNvbiwgMzAuIFNlcCAyMDAzLCAxMTo1ODoxNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2NDkxNTY3NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjQ5MDU4MTIKQmlzdCBkdSBqZXR6dCBnYXIgYXVmIFN0dWV0enN0cnVlbXBmZSB1bWdlc3RpZWdlbj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBFaW5lIHNjaHdpZXJpZ2UgRm9sZ2UgKElJKSAoR3JpbW1ib3JuLCAzMC4gU2VwIDIwMDMsIDEyOjAzOjMxKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwNjQ5MTU4OTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY0OTA1ODEyCkljaCBuaWNodC4gQWJlciBpY2ggaGFiZSBTYWNoZW4gZ2VzZWhlbiwgZGllIGljaCBzZWl0IG1laW5lbSBWYXRlcmxhbmRzZGllbnN0Cm5pY2h0IG1laHIgc28gaW50ZW5zaXYgenUgR2VzaWNodCBiZWtvbW1lbiBoYWJlLiBJbW1lcmhpbiBrZWluZSBha3V0ClBmbGVnZWJlZHVlcmZ0aWdlbiBkYWJlaS4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEVpbmUgc2Nod2llcmlnZSBGb2xnZSAoSUkpIChBbWF6b3JhLCAzMC4gU2VwIDIwMDMsIDEyOjUyOjUxKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwNjQ5MTU4OTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY0OTA1ODEyCkdyaW1tYm9ybiBpbSByb3NhIE5hY2h0aGVtZCB1bmQgbWl0IGJyYXVuZW4gU3R1ZXR6c3RydWVtcGZlbiAqcHJ1dXV1dXN0KgpBbWF6b3JhIHdhZWx6dCBzaWNoIHZvciBsYWNoZW4gYXVmIGRlbSBCb2RlbiBydW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWYW5pb24uLi4gKFpvb2ssIDMwLiBTZXAgMjAwMywgMTU6MzM6NTUpOgp+IyEgb249VmFuaW9uIG90PTEwNjQzNTA0NjIgb2c9bWFnaWVyLnVybGF1Ygp+IyEgcm49Wm9vayBydD0xMDY0MzUwMDAxIHJnPXBvbGl6ZWkuYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwNjQzNTAwMDEKRWluZXIgbGFuZ2VuIFRyYWRpdGlvbiBmb2xnZW5kLCBsb2VzZSBpY2ggUmlrdXMgYWxzIGFrdGl2ZXIgVmVydHJhdWVucy1FTSBhYgp1bmQgYmluIGZ1ZXIgZGllIFdvY2hlIHZvbSAyOS4wOS4gYmlzIDA1LjEwLiBpbSBVcmxhdWIuCgpWaWVsIFNwYXNzLApWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWVzIHZvbSBDaGluZXNlbiAoWm9vaywgIDEuIE9rdCAyMDAzLCAxNDozNTo0Myk6Cn4jISBvbj1ab29rIG90PTEwNjUwMTE3MzEgb2c9cGFydHkKfiMhIHJuPUFueXNpZG9yYSBydD0xMDY1MDExMTM4IHJnPXBhcnR5Cn4jISB0aWQ9MTA2NTAxMTEzOApIYXVwdHNhY2hlLCBkZXIgQ2hpbnNlc2Uga2VubnQgZGVuIFVudGVyc2NoaWVkIHp3aXNjaGVuIDE4IHVuZCA4MCA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYXMgSW5mb3JtYXRpb25zYnVlcm8uLi4gKEFtYXJ5bGxpcywgIDEuIE9rdCAyMDAzLCAyMDowMDoyNSk6Cn4jISBybj1NYWdkYWxlbmEgcnQ9MTA2NTAyNzgyNSByZz1kLmluc2Vsbgp+IyEgdGlkPTEwNjUwMjc4MjUKV2llIC0gdW5kIGFsbGUgYW5kZXJlbiBHaWxkZW4gd2VyZGVuIGF1c3NlbiB2b3JnZWxhc3Nlbj8gTW9iYmluZyEgOi0pKQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5hY2h0c2ljaHQgKFpvb2ssICAyLiBPa3QgMjAwMywgMDk6MzY6NDUpOgp+IyEgb249Wm9vayBvdD0xMDY1MDgwMjAxIG9nPWdpbGRlbi5kdW5rZWxlbGZlbgp+IyEgcm49UGFkcmVpYyBydD0xMDY1MDgwMDAzIHJnPWdpbGRlbi5kdW5rZWxlbGZlbgp+IyEgdGlkPTEwNjUwODAwMDMKVW5kIHdvIGJsZWlidCBkZXIgdG9zZW5kZSBCZWlmYWxsIGZ1ZXIgZGVuIEVyem1hZ2llciwgZGVyIEV1Y2ggZGFzIGVybW9lZ2xpY2h0CmhhdD8gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBFaW5lIHNjaHdpZXJpZ2UgRm9sZ2UgKElJKSAoQmFtYmksICAyLiBPa3QgMjAwMywgMTM6MzQ6MDUpOgp+IyEgcm49Wm9vayBydD0xMDY0OTE0NDE0IHJnPXB1aXoKfiMhIHRpZD0xMDY0OTA1ODEyCiJaID8gPyBLIj8KU2NoYWRlLCBhdWYgIlogPyBLIiBoYWV0dGUgaWNoIGVpbmUgTG9lc3VuZyBnZXd1c3N0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJhZCBCcmFtc3RlZHQgKEdyaW1tYm9ybiwgIDIuIE9rdCAyMDAzLCAxNDowMzoxNyk6Cn4jISBybj1MaWFyYSBydD0xMDY1MDkzMDY4IHJnPXRyZWZmZW4KfiMhIHRpZD0xMDY1MDkzMDY4Ck5ldHRlciBPcnQsIG5pY2h0IHdlaXQgd2VnIHZvbiBkYSB3byBiaXMgbmV1bGljaCBkYXMgUGZlcmQgc3RhbmQgYXVmIGRlbSBpY2gKcml0dC4gRGEgZ2lidHMgZWluIGJyYXVjaGJhcmVzIFJlc3RhdXJhbnQuCgpHZEFbZXgtUl0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhlcnpsaWNoIFdpbGxrb21tZW4hIChab29rLCAgMi4gT2t0IDIwMDMsIDE0OjQyOjU1KToKRXBwaSBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uCkRlaW4gRnJldW5kIEVwcGkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgpEZWluIEZyZXVuZCBFcHBpIHRlaWx0IERpciBtaXQ6IG1vaW4KW1RydmVzOkVwcGldIG1vaW4gVHJ2ZXMgOikKW1RydmVzOkRvdHpdIEFoLCBkZXIgRWhyZW5idWVyZ2VyIHZvbiBPcmtoYXVzZW4uCltUcnZlczpBcnlhXSBIdWh1IEVwcGkgOikKW1RvZDpMYXJzXSBFaW4gT3JrIGhhdCBnZXJhZGUgRXBwaSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBPcmtdIFdpciBzaW5kIE9yayEgV2lkZXJzdGFuZCBpc3QgendlY2tsb3MhIERlaW4gV2lzc2VuIHVuZCBEZWluZQpbVG9kOkVpbiBPcmtdIEF1c3J1ZXN0dW5nIHd1cmRlbiBhc3NpbWlsaWVydC4KW0JlaWxlaWQ6QnJvdG5hZWxdIGhpIGVwcGkgOikKW0JlaWxlaWQ6WmFya3VdIDooKApbQmVpbGVpZDpNY0RlZV0gQmVpbGVpZCA6KApbQmVpbGVpZDpJbGx5XSBnbmEgOigKW0JlaWxlaWQ6SGF1ZXJdIEJlaWxlaWQhCltCZWlsZWlkOkFzdWthXSBzZWx0c2FtZSBBcnQgbmVuIEVocmVuYnVlcmdlciB6dSBiZWdydWVzc2VuIDopCgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsa29ob2wgaGFsdCAoSHVtbmksICAyLiBPa3QgMjAwMywgMTg6MjY6NDQpOgp0bSBhbGtvaG9sIC4uLgouLi4KQWxrb2hvbCBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBrZWluZXIgbWFnIG1pY2gsIGFsbGUga290emVuIGRhbmFjaCAuLi4gICAgICAgICAgCgpTdGltbXQgc2Nob24uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFsa29ob2wgaGFsdCAoQ3JvZnQsICAyLiBPa3QgMjAwMywgMTg6Mjg6MjYpOgp+IyEgcm49SHVtbmkgcnQ9MTA2NTExMjAwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjUxMTIwMDQKQWxsZXMgZWluZSBGcmFnZSBkZXIgRG9zaWVydW5nLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFp1bSBXZWdzY2hyZWllbiAoQ3JvZnQsICA0LiBPa3QgMjAwMywgMTM6MTc6MzUpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNjUyNjU5MTQgcmc9d2l0emUKfiMhIHRpZD0xMDY1MTg2MzcwCldpZSBzaWVodCBkYXMgbWl0IGRlciBSdWJyaWsgd2l0emUuZXJrbGFlcnQgYXVzPyA6PgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFp1bSBXZWdzY2hyZWllbiAoV2lsbG93LCAgNC4gT2t0IDIwMDMsIDEzOjE4OjE0KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNjUyNjYyNTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1MTg2MzcwCk5hamEsIGRhIGZlaGx0IGRhbm4gbm9jaCB3aXR6ZS5lcmtsYWVydC51bmQtZW5kbGljaC12ZXJzdGFuZGVuIDstKQpXaWxsb3cKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFp1bSBXZWdzY2hyZWllbiAoVmFuaW9uLCAgNC4gT2t0IDIwMDMsIDEzOjIwOjE4KToKfiMhIHJuPVdpbGxvdyBydD0xMDY1MjY2Mjk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTE4NjM3MAp3aXR6ZS5lcmtsYWVydC51bmQtZW5kbGljaC12ZXJzdGFuZGVuLmhtbS1kb2NoLW5pY2ggdW5kCndpdHplLmVya2xhZXJ0LnVuZC1lbmRsaWNoLXZlcnN0YW5kZW4uaG1tLWRvY2gtbmljaC5iaW4taGFsdC1ibG9uZCB3aXJkcyBhdWNoCm5pY2ggZ2ViZW4uIEdlYnQgZXVjaCBkYSBrZWluZXIgSWxsdXNpb24gaGluLiA6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFp1bSBXZWdzY2hyZWllbiAoRGVlcGJsdWUsICA0LiBPa3QgMjAwMywgMTM6MjE6MDQpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNjUyNjY0MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1MTg2MzcwCndvIGJsZWlidCBzY2htYXJybi5iZWthbm50bWFjaHVuZ2VuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFp1bSBXZWdzY2hyZWllbiAoVmFuaW9uLCAgNC4gT2t0IDIwMDMsIDEzOjUyOjM0KToKfiMhIHJuPURlZXBibHVlIHJ0PTEwNjUyNjY0NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1MTg2MzcwCkRhIHdvIGVzIGhpbmdlaG9lcnQuIEluIGRlciBTY2h1YmxhZGUuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogWnVtIFdlZ3NjaHJlaWVuIChCb2luZywgIDUuIE9rdCAyMDAzLCAxODoxNzo0MCk6Cn4jISBvbj1DYXR3ZWF6bGUgb3Q9MTA2NTI5MTA2NiBvZz13aXR6ZQp+IyEgcm49TXVhZGliIHJ0PTEwNjUxOTM2NTggcmc9d2l0emUKfiMhIHRpZD0xMDY1MTg2MzcwCkljaCBoYWIgbmljaHRzIGdlbWFjaHQhCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFp1bSBXZWdzY2hyZWllbiAoQm9pbmcsICA1LiBPa3QgMjAwMywgMTg6MTc6NDIpOgp+IyEgb249TXVhZGliIG90PTEwNjUzMDcyMTAgb2c9d2l0emUKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDY1MjkxMDY2IHJnPXdpdHplCn4jISB0aWQ9MTA2NTE4NjM3MApkb2NoIGhhc3QgZHUKaWNoIHNhZ2UgbnVyICJjdWJlIgoKamEgaWNoIGthbm4gZXMgamV0enQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFp1bSBXZWdzY2hyZWllbiAoQm9pbmcsICA1LiBPa3QgMjAwMywgMTg6MTc6NDgpOgp+IyEgb249Q2F0d2VhemxlIG90PTEwNjUzMTM2MzIgb2c9d2l0emUKfiMhIHJuPU11YWRpYiBydD0xMDY1MzA3MjEwIHJnPXdpdHplCn4jISB0aWQ9MTA2NTE4NjM3MApOYSBkYW5uIGdyYXR1bGllcmUgaWNoIGtyYWVmdGlnLiBLYW5uc3RlIGF1Y2ggZGVuCjIyLVp1Zy1Fa2VsLXJvdGllci1kb3BwZWwtZHJlaC1lY2tlbi10YXVzY2gtZHJlaD8KRGFubiBicmF1Y2ggaWNoIGphIG5peCBtZWhyIHp1IHNhZ2VuLiBWZXJkYW1tdGVyIE1pc3QuIFdhcnVtIGhhYiBpY2ggZGFzCmV4dHJlbWUgVmVybGFuZ2VuIG1pciBkb2NoIG5vY2ggbWFsIGVpbmVuIEN1YmUgenUgZXJzdGVpZ2Vybj8gVHNrIDotKQpWZXJkYW1tdGUgRHJlaG1hbmllIDotKQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFp1bSBXZWdzY2hyZWllbiAoQm9pbmcsICA1LiBPa3QgMjAwMywgMTg6MTg6MDEpOgp+IyEgb249TXVhZGliIG90PTEwNjUxOTM2NTggb2c9d2l0emUKfiMhIHJuPU11YWRpYiBydD0xMDY1MTkzNTk2IHJnPXdpdHplCn4jISB0aWQ9MTA2NTE4NjM3MApjYXR3ZWF6bGUgaXN0IHNjaHVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogWnVtIFdlZ3NjaHJlaWVuIChCb2luZywgIDUuIE9rdCAyMDAzLCAxODoxODowNSk6Cn4jISBvbj1WYW5pb24gb3Q9MTA2NTE5NzIxOCBvZz13aXR6ZQp+IyEgcm49TXVhZGliIHJ0PTEwNjUxOTM2NTggcmc9d2l0emUKfiMhIHRpZD0xMDY1MTg2MzcwCkRhcyBpc3QgZWluZSBUYXV0b2xvZ2llLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFp1bSBXZWdzY2hyZWllbiAoQm9pbmcsICA1LiBPa3QgMjAwMywgMTg6MTg6MDkpOgp+IyEgb249S2FyaXMgb3Q9MTA2NTI2MjY2OCBvZz13aXR6ZQp+IyEgcm49VmFuaW9uIHJ0PTEwNjUxOTcyMTggcmc9d2l0emUKfiMhIHRpZD0xMDY1MTg2MzcwCldvIGlzdCBkYSBqZXR6dCBlaWdlbnRsaWNoIGRlciBXaXR6Pz8KCkthcmlzLApCYXllci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFp1bSBXZWdzY2hyZWllbiAoQm9pbmcsICA1LiBPa3QgMjAwMywgMTg6MTg6MTUpOgp+IyEgb249VmFuaW9uIG90PTEwNjUyNjU5MTQgb2c9d2l0emUKfiMhIHJuPUthcmlzIHJ0PTEwNjUyNjI2Njggcmc9d2l0emUKfiMhIHRpZD0xMDY1MTg2MzcwClNwaWVsc3QgRHUgZGFyYXVmIGFuLCBkYXNzIHdpciB1bnNlciBHZXNwcmFlY2ggaW4gZWluZSBuZXUgYW56dWxlZ2VuZGUgUnVicmlrCndpdHplLmRpc2t1c3Npb24gdmVybGVnZW4uIFZlcmdpc3MgZXMhIDopCgpCdHc6IFdvbGx0ZXN0IER1IENhdHR5IGFlcmdlcm4sIGluZGVtIER1IENhdHdlYXpsZSBzZWluIG1pdCBCYXllciBzZWluCmdsZWljaHNldHp0PwoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW4gQXZlbnR1cmllbiAoTWFnZGFsZW5hLCAgNS4gT2t0IDIwMDMsIDIwOjEyOjAzKToKLi4uCmlyZ2VuZHdvIGJlaSBpcmdlbmRlaW5lciBnZWxnZW5oZWl0IGJlaSBpcmdlbmRlaW5lbSBrb2VuaWcuLi4gCkthcmkgKGJla2FubnQgYWxzIEJyYW4pIHNwaWVsdCBlaW5lIEVsZmUgKG5hdHVydmVyYnVuZGVuLCBuYWl2Li4uIGtlbm50IG1hbgpqYS4uLikuCkthcmk6ICJLb2VuaWcsIGdlYnQgbWlyIGVpbiBEaWFkZW0hIgpEaWUgTWVpc3RlcmluIChtdWRiZWthbm50ZSBVcm9tYSwgd2FzIG1hbiBpaHIgZ2FyIG5pY2h0IGFuc2llaHQpOiAiQWxzIEVsZgprZW5uc3QgZHUgV29ydCAnRGlhZGVtJyBnYXIgbmljaHQhIgpLYXJpOiAiT2ggLSBvaywga3JpZWcgaWNoIGRhbm4gZWluZSBSb2JlPyIKLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCBpbiBBdmVudHVyaWVuIChDcm9mdCwgIDUuIE9rdCAyMDAzLCAyMDoxNToxOCk6Cn4jISBybj1NYWdkYWxlbmEgcnQ9MTA2NTM3NzUyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjUzNzc1MjMKIkdlYnQgbWlyIGRhcyBzY2hvZW5lIERpbmcgYXVmIGV1cmVtIEtvcGYiIDo+CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVsaWNoIGluIEF2ZW50dXJpZW4gKFBpdGZhbGwsICA1LiBPa3QgMjAwMywgMjA6MTY6MDIpOgp+IyEgcm49Q3JvZnQgcnQ9MTA2NTM3NzcxOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjUzNzc1MjMKbmltbSAnRGluZ3MnIGF1cyBMZWljaGUuCnVuZCB2ZXJnaXNzIGRpZSBTaWxiZXJnYWJlbCBuaWNodCBtYWdkYSA6PgoKUGl0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXJtZXIgV2FuZGxlciAoSUkpIChBbGRlcmFuLCAgNS4gT2t0IDIwMDMsIDIwOjQzOjUyKToKQXVjaCBlaW4gV2FuZGxlciBicmF1Y2ggbmUgRWlucmVpc2VnZW5laG1pZ3VuZyBmdWVyIEZlcm53ZXN0CgpFaW4gd2FiZXJuZGVzIEdlYmlsZGUgZXJzY2hlaW50IHVycGxvZXR6bGljaCB2b3IgRGlyLgpFaW4gV2FuZGxlciB3aXJkIHZvbiBtZWhyZXJlbiBXYWNoZW4gZnJldW5kbGljaCB6dXJ1ZWNrZ2VoYWx0ZW4uCkVpbiBXYW5kbGVyIHdpcmQgdm9uIG1laHJlcmVuIFdhY2hlbiBmcmV1bmRsaWNoIHp1cnVlY2tnZWhhbHRlbi4KRWluIFdhbmRsZXIgd2lyZCB2b24gbWVocmVyZW4gV2FjaGVuIGZyZXVuZGxpY2ggenVydWVja2dlaGFsdGVuLgpEZXIgV2FuZGxlciB2ZXJzY2h3aW5kZXQgdXJwbG9ldHpsaWNoLgoKCgpBbGRpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXVsaWNoIGluIEF2ZW50dXJpZW4gKE9ya3RvZXRlciwgIDUuIE9rdCAyMDAzLCAyMDo1MDowOSk6Cn4jISBybj1QaXRmYWxsIHJ0PTEwNjUzNzc3NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1Mzc3NTIzClNwaWVsZXIgZWlucyAoRWxmKTogIkljaCBwbHVlbmRlciBkaWUgTGVpY2hlIgpTcGllbGxlaXRlcjogIkZpbmRlc3QgZHUgZGFzIG5pY2h0IGV0d2FzIHBpZXRhZXRsb3M/IgpTcGllbGVyIGVpbiAoRWxmKTogIkljaCBwbHVlbmRlciBkaWUgbGVpY2hlIHBpZXRhZXR2b2xsIgoKT3JrVCwgYWx0ZSBSb2xsZW5zcGllbGVyc3BydWNoa2FtZWxsZW4gYXVzZ3JhYmVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBcm1lciBXYW5kbGVyIChJSSkgKEFsZGVyYW4sICA1LiBPa3QgMjAwMywgMjA6NTE6NDEpOgp+IyEgcm49QWxkZXJhbiBydD0xMDY1Mzc5NDMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTM3OTQzMgpNYWdpZXIgaW5jb2duaXRvIGFuc2NoZWluZW5kIGF1Y2ggKmcqCgoKSmVtYW5kIHdpcmQgdm9uIG1laHJlcmVuIFdhY2hlbiBmcmV1bmRsaWNoIHp1cnVlY2tnZWhhbHRlbi4KCgpBbGRpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFybWVyIFdhbmRsZXIgKElJKSAoQ3JvZnQsICA1LiBPa3QgMjAwMywgMjA6NTM6NTcpOgp+IyEgcm49QWxkZXJhbiBydD0xMDY1Mzc5OTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTM3OTQzMgpEdSB3ZWlzc3QgZGFzIHNpY2ggZGVyIFdhbmRsZXIgaW52aXMgbWFjaHQ/IDotKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoIGluIEF2ZW50dXJpZW4gKE1pcmlsLCAgNi4gT2t0IDIwMDMsIDAwOjExOjU1KToKfiMhIHJuPU1hZ2RhbGVuYSBydD0xMDY1Mzc3NTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTM3NzUyMwpTdHVuZGVuIHNwYWV0ZXI6CkthcmkgKG1pdCB1bnNjaHVsZGlnZW0gQXVnZW5hdWZzY2hsYWcgdW5kICQgWmVpY2hlbiBpbiBzZWxiaWdlbik6CkRhIHNpbmQgZG9jaCBiZXN0aW1tdCBub2NoIER1a2F0ZW4gZHJpbiEgTmljaHQ/IE9vb29jaC4KCkVzIHNjaGVpbnQgZG9jaCBGYWVsbGUgenUgZ2ViZW4sIHdvIGRpZSBNb2VnbGljaGtlaXQgZWluZW4gClJhc3NlbndlY2hzZWwgZHVyY2hmdWVocmVuIHp1IGR1ZXJmZW4sIHNpbm52b2xsIGVyc2NoZWludC4KCk1pcmlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOYWRpbmUgdmVyendlaWZlbHQgZ2VzdWNodCAoR3JpbW1ib3JuLCAgNi4gT2t0IDIwMDMsIDE1OjMxOjEyKToKfiMhIG9uPUdhbmRvIG90PTEwNjU0NDU3MjAgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDY1NDQxODc5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTA2NTQyMjExOQpEdSBzb2xsdGVzdCBlaHJsaWNoIHNlaW4gdW5kIGVuZGxpY2ggZGllIE1hc3NlIG5lbm5lbiA7KQoKZGFubiBlcmlubmVybiBzaWNoIHZpZWxsZWljaHQgZWhlciB3ZWxjaGUKCkdhbmRvIGdyaW5zdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTmFkaW5lIHZlcnp3ZWlmZWx0IGdlc3VjaHQgKEdyaW1tYm9ybiwgIDYuIE9rdCAyMDAzLCAxNTozMToxNCk6Cn4jISBvbj1DYXR3ZWF6bGUgb3Q9MTA2NTQ0NTgzNCBvZz1hbGxnZW1laW5lcwp+IyEgcm49R2FuZG8gcnQ9MTA2NTQ0NTcyMCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwNjU0MjIxMTkKSG0sIG9rLCBpY2ggZnJhZyBncmFkIG1hbCBkYW5hY2ggIDopCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5hZGluZSB2ZXJ6d2VpZmVsdCBnZXN1Y2h0IChDcm9mdCwgIDYuIE9rdCAyMDAzLCAxNjo0NjoxMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2NTQ0NzA3MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU0MjIxMTkKRHUgbWVpbnN0IHVlYmVyZ2V3aWNodGlnZSBGcmFuem9lc2lubmVuIHZlcmdpc3N0IG5pZW1hbmQgc28gc2NobmVsbD8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBOYWRpbmUgdmVyendlaWZlbHQgZ2VzdWNodCAoTW9yZ290aCwgIDYuIE9rdCAyMDAzLCAxNjo0NzoxMyk6Cn4jISBybj1Dcm9mdCBydD0xMDY1NDUxNTcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTQyMjExOQpFaGVyIGRpZSBtaXQgZGVtIEJhZ3VldHRlIGluIGRlciAuLi4gYWVoIEhhbmQuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIFNwcnVjaCBkZXMgVGFnZXMgKEFwb2xsb25pYSwgIDYuIE9rdCAyMDAzLCAyMjo0NDo1Nyk6Cnh4eCB0ZWlsdCBEaXIgbWl0OiBmb3JzY2hlbiB0dSBpY2ggdW5nZXJuIGluIHVuYmVrYW5udGVuIGdlYmlldGVuLi4uCgoKSmEsIHdvIGRlbm4gZGFubj8hClVuZCBuZWluIHNhZ3Qgbml4LCBpcyBuYXR1ZXJsaWNoIG5lbiBLYWVtcGZlciBnZXdlc2VuIChjOwoKQXBvKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFTQ0lJLUt1ZW5zdGxlciBnZXN1Y2h0IChWYW5pb24sICA3LiBPa3QgMjAwMywgMDg6MzI6MDcpOgp+IyEgcm49SHVtbmkgcnQ9MTA2NTQ4MDI3MyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNjU0ODAyNzMKV2FydW0gaGF1ZW4/IEhhc3QgZG9jaCByZWNodCEgSWNoIGVudHdpY2tlbCBpbW1lciBzbyBsYW5nZSBydW0sIGJpcyBlcwppcmdlbmR3YW5uIGZ1bmt0aW9uaWVydC4KClYqLCBBZmZlbiB1bmQgUGxhbmV0ZW4uIE9mZmVuYmFyIHNpdHp0IHZvciBkaWVzZW0gS2V5Ym9hcmQgb2Z0IGdlbnVnIGRlcgpyaWNodGlnZSBBZmZlIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFTQ0lJLUt1ZW5zdGxlciBnZXN1Y2h0IChNdWFkaWIsICA3LiBPa3QgMjAwMywgMDk6NDc6MzgpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNjU1MDgzMjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1NDgwMjczCm1pciBncmF1c3RzCm5vcm1hbGVyd2Vpc2UgZW50d2lja2VsdCBtYW4gZG9jaCBzb2xhbmdlIGRyYW4gcnVtIGJpcyBlcyBuaWNodCBtZWhyCmZ1bmt0aW9uaWVydCB1bmQgbWFjaHRzIGRhbm4gcmljaHRpZwpnZWxlcm50IGhhdCBtYW4gd2FzIHdlbm4gbWFuIG1pdCBkZW0gMi4gc2Nocml0dCBiZWdpbm50CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaCBzY2hvZW4gOikgKE1vcmdvdGgsICA3LiBPa3QgMjAwMywgMTQ6MzA6NTMpOgpMZWliaSB2ZXJ3dXNjaGVsdCBEZWluZSBIYWFyZSBhdXMgZGVyIEZlcm5lLgpEZWluZSBTY2h1aGUgZ2x1ZWhlbiBrdXJ6IGF1ZiB1bmQgaGVpbGVuIERpY2ggZWluIHdlbmlnLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDaGluZXNpc2NoZXNFc3NlbiAuLi4gKFdoaXRldGlnZXIsICA3LiBPa3QgMjAwMywgMTg6MjE6NTcpOgp+IyEgb249V2hpdGV0aWdlciBvdD0xMDY1NTQzNzAzIG9nPWt1bHR1cgp+IyEgcm49R2xvaW5zb24gcnQ9MTA2NTU0MzU3MSByZz1rdWx0dXIKfiMhIHRpZD0xMDY1NTQzNTcxCktvbWlzY2hlciBUaXRlbC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS2FtcGZzdGFlYmUgKEFuYXRvbCwgIDcuIE9rdCAyMDAzLCAxOTo0MTozOCk6Cn4jISBybj1SaWt1cyBydD0xMDY1NDQ2NTIxIHJnPWQudmxhbmQKfiMhIHRpZD0xMDY1NDQ2NDQxCk9rYXksIHVuZCB3YW5uIGdlbmF1IGtvbW10IFdUX1NIT1JUU1dPUkQsIFdUX0xBTkNFLCBXVF9IQUxCRVJELCAKV1RfTUFDRSwgV1RfTU9SR09USF9TUEVDSUFMX1VOQ0xBU1NJRklFRF9NQVNURVJfV0VBUE9OIC4uLi4gPwoKQSogc3RpZXJ0IFJpa3VzIGFuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS2FtcGZzdGFlYmUgKENyb2Z0LCAgNy4gT2t0IDIwMDMsIDE5OjUwOjQ1KToKfiMhIHJuPUFuYXRvbCBydD0xMDY1NTQ4NDk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTQ0NjQ0MQpXVF9aQVBUT09MIG5pY2h0IHp1IHZlcmdlc3NlbiA6PgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEthbXBmc3RhZWJlIChWYW5pb24sICA3LiBPa3QgMjAwMywgMTk6NTI6NDUpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNjU1NDg0OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1NDQ2NDQxCldhcnVtIGVpZ2VudGxpY2ggbmljaHQuIFZpZWxmYWx0IGluIGRlciBXYWZmZW53YWhsIGJlZGV1dGV0IFZpZWxmYWx0IGJlaSBkZW4KS2FtcGZ0ZWNobmlrZW4uIEtsYXIsIGplIG1laHIgV2FmZmVudHlwZW4gZXMgZ2lidCwgZGVzdG8gbWVociBTa2lsbHMgZ2lidCBlcwooZnVlciBkaWVqZW5pZ2VuLCBkaWUgZWluZW4gaGFiZW4pIGFiZXIgZGFzIGZvcmRlcnQgZWJlbiBTcGV6aWFsaXNpZXJ1bmcuIElzdApkYXMgc28gc2NobGltbT8KClYqLCBnZWdlbiAzIE1ldGVyIGxhbmdlIGJhbGFuY2llcnRlIEtldWxlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEthbXBmc3RhZWJlIChBbmF0b2wsICA3LiBPa3QgMjAwMywgMjA6MDE6NDEpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNjU1NDkxNjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1NDQ2NDQxCkVudHNjaHVsZGlnZS4gRGllIE1HLUZ1ZWhydW5nIGhhdCBhdWZnZXNjaGx1ZXNzZWx0ZXJlIFdhZmZlbmZlcnRpZ2tlaXRlbgp3ZWdlbiB1bm5vZXRpZ2VyIEtvbXBsZXhpdGFldCBhYmdlbGVobnQuIFVuZCBqZXR6dCB3aWxsIGVzIGZ1ZXIgSGlueiB1bmQKS3VueiBXYWZmZW50eXBlbiBoYWJlbj8gVmllbGxlaWNodCBkYXMgZ2FuemUgbWl0IGRlbiBEVHMgYXVjaCBub2NoPyBHZW5hdSwKRFRfU0xJTUUsIERUX1BVUkVfRVZJTCwgRFRfTVVTSUMsIERUX1NIRVJJRkYsIERULi4uIGJlc3RpbW10IGZyZXVlbiBzaWNoCmRpZSBTcGllbGVyLCB3ZW5uIE1hZ2llciBuZXVlIFdhZmZlbiBhbnNjaGxpZXNzZW4sIGdlZ2VuIGRpZSBkYXMgaGFsYmUKTXVkIGViZW4gKm5pY2h0KiByZXNpc3RlbnQgaXN0LCBuZWR3b2Foci4uLi4gdW5kIHdvIHdpciBzY2hvbiBkYWJlaSBzaW5kLAp3aWUgd2FlcmUgZXMgbm9jaCBtaXQgd2VpdGVyZW4gVW50ZXJ1bnRlcnJhc3Nlbj8gV2llc2VuendlcmdlLCBEdWVzdGVyLQp6d2VyZ2UsIEJsYXV6d2VyZ2UsIER1bmtlbHp3ZXJnZSwgRnJ1Y2h0endlcmdlLi4uIHdlbm4gbWFuIGlyZ2VuZHdhbm4gCmplIGVpbmdlbG9nZ3RlbiBTcGllbGVyIGVpbmUgZWluZSBSYXNzZSBoYXQsIERBUyBpc3QgZG9jaCBkYW5uIHdhaHJlClZpZWxmYWx0ISAKClZpZWxmYWx0IGlzdCwgd2llIE1hc3NlLCBuaWNodCB6d2FuZ3NsYWV1ZmlnIHRvbGwuIAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEthbXBmc3RhZWJlIChSb2NodXMsICA3LiBPa3QgMjAwMywgMjA6MDI6MjkpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNjU1NDk3MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1NDQ2NDQxCkljaCBiaW4gZnVlciBGcnVjaHR6d2VyZ2UgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEthbXBmc3RhZWJlIChBbmF0b2wsICA3LiBPa3QgMjAwMywgMjA6MDM6MDEpOgp+IyEgcm49Um9jaHVzIHJ0PTEwNjU1NDk3NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1NDQ2NDQxCkZ1ZXIgZGljaCB3dWVyZGUgc2ljaGVyIGplbWFuZCBkaWUgUmFzc2UgQ29sYWF1dG9tYXQgcHJvZ3JhbW1pZXJlbiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEthbXBmc3RhZWJlIChab29rLCAgNy4gT2t0IDIwMDMsIDIwOjA3OjIwKToKfiMhIHJuPUFuYXRvbCBydD0xMDY1NTQ4NDk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTQ0NjQ0MQpFaW4ga2xlaW5lcyBHZWhlaW1uaXM6IEZ1ZXIgdW50ZXJzY2hpZWRsaWNoIGxhbmdlIFdhZmZlbiBicmF1Y2h0J3MgCnp1a3VlbmZ0aWcga2VpbmUgZWlnZW5lbiBXYWZmZW5rbGFzc2VuLiA6LSkKClpvb2sga2ljaGVydCBoaW50ZXIgQW5hdG9scyBSdWVja2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogS2FtcGZzdGFlYmUgKEdsb2luc29uLCAgNy4gT2t0IDIwMDMsIDIwOjA3OjI0KToKfiMhIHJuPUFuYXRvbCBydD0xMDY1NTQ5NzgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTQ0NjQ0MQpJbSBQcmluemlwIGhhc3QgZHUgamEgcmVjaHQsIGluIGRlciBQcmF4aXMgaXN0IGVpbmUgbmV1ZSBXYWZmZSAobm9jaCkgbmljaHQgc28Ka29tcGxleGl0YWV0c3N0ZWlnZXJuZCB3aWUgZWluIG5ldWVyIFNjaGFkZW5zdHlwLiBBYmVyIHdpciBzaW5kIGphIGluIGRlcgpyaWNodGlnZW4gUnVicmlrLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEthbXBmc3RhZWJlIChBbmF0b2wsICA3LiBPa3QgMjAwMywgMjA6MDc6NTgpOgp+IyEgcm49Wm9vayBydD0xMDY1NTUwMDQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTQ0NjQ0MQpOaWNodCB3aXJrbGljaCBuZXUsIGRpZSBJZGVlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEthbXBmc3RhZWJlIChab29rLCAgNy4gT2t0IDIwMDMsIDIwOjA4OjE0KToKfiMhIHJuPUFuYXRvbCBydD0xMDY1NTQ5NzAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTQ0NjQ0MQpEdSBoYXN0IERUX0ZFTUFMRSB2ZXJnZXNzZW4sIEFuYXRvbC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBLYW1wZnN0YWViZSAoR2xvaW5zb24sICA3LiBPa3QgMjAwMywgMjA6MDg6NDApOgp+IyEgcm49Wm9vayBydD0xMDY1NTUwMDk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTQ0NjQ0MQpEYXMgaXN0IGVpbmUgaW50ZXJuZSBTY2hhZGVuc2FydCwgYXVjaCBhbHMgR2lmdCBiZWthbm50LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEthbXBmc3RhZWJlIChab29rLCAgNy4gT2t0IDIwMDMsIDIwOjA5OjUwKToKfiMhIHJuPUFuYXRvbCBydD0xMDY1NTUwMDc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTQ0NjQ0MQo6aGF0IHNlbHRlbiBuZXVlIElkZWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogS2FtcGZzdGFlYmUgKFBhdHJ5biwgIDcuIE9rdCAyMDAzLCAyMzoxODowNCk6Cn4jISBybj1BbmF0b2wgcnQ9MTA2NTU0OTcwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU0NDY0NDEKQWxzbyBpY2ggZ2xhdWJlLCBlaW4gS2FtcGZzdGFiIHd1cmRlIHNjaG9uIGxhbmdlIHZlcm1pc3N0LCBoYXQgZXIgZG9jaCBudXIKc2VociBlbnRmZXJudCBldHdhcyBtaXQgS2V1bGVuIHp1IHR1bi4gRGFua2UgYW4gYWxsZSBCZXRlaWxpZ3Rlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpZmVyc3VjaHQ/IChNaWV6ZSwgIDcuIE9rdCAyMDAzLCAyMzoxODo1Myk6CgplYmVuIHBhc3NpZXJ0OgoKRHUga251ZGRlbHN0IFR3aW5naSBhdXMgZGVyIEZlcm5lLgpQaXRmYWxsICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpCcmFuICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKCk1pZXplIC0gZ3JpbnN0IHNpY2ggZWlucwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBXZWlzZW4ga29tbWVuLi4uLiAoWm9vaywgIDguIE9rdCAyMDAzLCAxMDo0MDoxNik6Cn4jISBybj1ab29rIHJ0PTEwNjU2MDIzNzQgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwNjU2MDIzNzQKV2VyIGRlbiBlcnN0ZW4gQXJ0aWtlbCBkaWVzZXIgQXJ0IGdlc3VjaHQgaGF0LCBkZXIgZXJpbm5lcmUgc2ljaCBiaXR0ZSAKYW4gZGllIEtvaGxzY2hlbiBXZWlobmFjaHRzYW5zcHJhY2hlbi4uLgoKWm9vayBpc3QgZWluZmFjaCB6dSBkb29mIGZ1ZXIgZGllc2UgV2VsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFYmF5IG1hbCB3aWVkZXIgKGM6IChCYW1idWxrbywgIDguIE9rdCAyMDAzLCAxMTowMzo1NSk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTA2NTYwMzUxOSByZz13d3cKfiMhIHRpZD0xMDY1NjAzNTE5Ck5hamEsIGJlaSBkZW4gaG9oZW4gVmVyc2FuZGtvc3RlbiBpc3QgZXMga2VpbiBXdW5kZXIsIGRhcyBlcyBub2NoIGtlaW5lIEdlYm90ZQpnaWJ0LgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkd1dGUgVWViZXJzZXR6dW5nZW46IChLcmlra2l0LCAgOC4gT2t0IDIwMDMsIDE2OjE5OjIzKToKT3JpZ2luYWw6CgpXZSB0YWxrIGFib3V0IHVuaXZlcnNhbCBwZWFjZSAKV2hpbHN0IHdlIGZpZ2h0IGludGVybmFsIHdhcnMgCkJ1dCB0aGUgcmVhbCByZXZvbHV0aW9uIHN0YXJ0cyB3aXRoaW4gb3Vyc2VsdmVzIAoKCnVuZCBkaWUgZ29vZ2Vsc2NoZSBVZWJlcnNldHp1bmc6CgpXaXIgc3ByZWNoZW4gdWViZXIgVW5pdmVyc2FsZnJpZWRlbiAKV2FlaHJlbmQgd2lyIGludGVybmUgS3JpZWdlIGthZW1wZmVuIApBYmVyIGRpZSByZWFsZW4gVW1kcmVodW5nc2FuZmFlbmdlIGlubmVyaGFsYiB1bnMgc2VsYnN0IAoKClVtZHJlaHVuZ3NhbmZhZW5nZS4uLipraWNoZXIqCgprcmlra2l0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXVjaCBrZWluIFVybGF1YiAoWm9vaywgIDguIE9rdCAyMDAzLCAyMzowNDozNCk6Cn4jISBybj1IdW1uaSBydD0xMDY1NjM3MjA0IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xMDY1NjM3MjA0CkJpdHRlIHZlcmdpc3MgbmljaHQsIHVucyBlaW4gcGFhciBCb25ib25zIGZ1ZXIgZGllIFVlYmVyZ2FuZ3N6ZWl0IHp1cnVlY2stCnp1bGFzc2VuLiBOaWNodCwgZGFzcyB3aXIgdmVyZ2Vzc2VuLCB3aWUgbWFuICJBYndlcnR1bmciIHNjaHJlaWJ0LiA7KSkpKQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUcmF1bS1Kb2JmaW5kZXIgKGx1c3RpZykgKERlZXBibHVlLCAgOS4gT2t0IDIwMDMsIDEwOjU2OjQ4KToKfiMhIHJuPUFscGhhIHJ0PTEwNjU2NjUzNDcgcmc9d3d3Cn4jISB0aWQ9MTA2NTY2NTM0NwpQZXJ1ZWNrZW50ZXN0ZXIgLSBQYXNzdCBzb2dhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFyZ2whIChCYW1idWxrbywgIDkuIE9rdCAyMDAzLCAxMzoxMTo1NCk6Cn4jISBybj1NZWRpYyBydD0xMDY1Njk3Njk1IHJnPXd3dwp+IyEgdGlkPTEwNjU2OTc2OTUKRGllIEtvbmRvbWluZHVzdHJpZSBzb2xsdGUgaWhuIHdlZ2VuIFJ1Zm1vcmQgdmVya2xhZ2VuIDotKQoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXJnbCEgKE5vbm5lLCAgOS4gT2t0IDIwMDMsIDEzOjEzOjQ4KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEwNjU2OTc5MTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1Njk3Njk1CkRpZSBLb25kb21pbmR1c3RyaWUgaGF0IGJlc3RpbW10IEFJRFMgZXJmdW5kZW4sIGRpZSBzb2xsZW4gbWFsIHNjaG9lbiBydWhpZwpzZWluISBTZWl0IGRlciBQaWxsZSBoYXR0ZW4gZGllIGVpbiBQcm9ibGVtIHVuZCB3ZXIgcHJvZml0aWVydCBqZXR6dCB2b24gZGVyCkFJRFMtSHlzdGVyaWU/IE5hPwoKTm9ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBcmdsISAoQmFtYmksICA5LiBPa3QgMjAwMywgMTM6MTc6MDApOgp+IyEgcm49Tm9ubmUgcnQ9MTA2NTY5ODAyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU2OTc2OTUKSWNoIHZlcnN0ZWggbmljaHQsIHdhcyBkZXIgUGFwc3Qgd2lsbC4gTWFuY2htYWwgZnJhZyBpY2ggbWljaCwgb2IgZGVyIHdpcmtsaWNoCmdlbnVnIGFuIEdvdHQgZ2xhdWJ0LCB1bSBhdWNoIE9iZXJoYXVwdCBkZXIga2F0aG9saXNjaGVuIEtpcmNoZSB6dSBzZWluLgpadW1pbmRlc3QgRVIgc29sbHRlIG5hZW1saWNoIGRlbiBTdGFuZHB1bmt0IHZlcnRyZXRlbiBrb2VubmVuLCBkYXNzIGRhcyBLb25kb20KaGFsdCByZWlzc3Qgb2RlciBzbywgd2VubiBHb3R0IGRlbm4gd2lsbCwgZGFzcyBzaWUgdm9uIGlobSB0cm90eiBLb25kb20Kc2Nod2FuZ2VyIHdpcmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBcmdsISAoTm9ubmUsICA5LiBPa3QgMjAwMywgMTM6MjA6MTIpOgp+IyEgcm49QmFtYmkgcnQ9MTA2NTY5ODIyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU2OTc2OTUKQmlzdCBEdSB3YWhuc2lubmlnPyBHb3R0IGhhdCBkaWUgTWVuc2NoZW4gbWl0IGVpbmVtIGZyZWllbiBXaWxsZW4KYXVzZ2VzdGF0dGV0LCBkYW1pdCBzaWUgYXVjaCBib2VzZSBzZWluIGtvZW5uZW4sIHNwcmljaDogS29uZG9tZSBiZW51dHplbi4KRGFtaXQga2FubiBlciBzaWUgZGFubiBpbiBkaWUgSG9lbGxlIHNjaGlja2VuIHVuZCBoYXQgZGFubiBzZWluZW4gU3Bhc3Mgb2Rlcgpzby4KCk5vbm5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQXJnbCEgKEtyaWtraXQsICA5LiBPa3QgMjAwMywgMTM6MjM6MjEpOgp+IyEgcm49QmFtYmkgcnQ9MTA2NTY5ODIyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU2OTc2OTUKYWx0ZSBrYW1lbGxlOgoKaHR0cDovL3d3dy5wb3N0ZXIuZGUvUGVyc2NoZWlkLU1hcnRpbi9QZXJzY2hlaWQtTWFydGluLURlci1QYWJzdC1maW5kZXQtZGFzLTExCi1HZWJvdC0yMzAzNjI1Lmh0bWwKCmtyaWtraXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFyZ2whIChSaW5nb3IsICA5LiBPa3QgMjAwMywgMTM6MzM6MDUpOgp+IyEgcm49Tm9ubmUgcnQ9MTA2NTY5ODQxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU2OTc2OTUKV2VubiBlciBpbiBzZWluZXIgQXJndW1lbnRhdGlvbiB3ZW5pZ3N0ZW5zIGtvbnNlcXVlbnQgd2FlcmUgLi4uIGxhdXQgQXJ0aWtlbApzaW5kIEtvbmRvbWUgamEgZnVlciBTcGVybWllbiBkdXJjaGxhZXNzaWcuIFVuZCBzb21pdCBmdWVyIGRpZSBWZXJodWV0dW5nCmVpZ2VudGxpY2ggZ2FyIG5pY2h0IGdlZWlnbmV0LiBXZW5uIEtvbmRvbWUgYWJlciBuaWNodCB6dXIgVmVyaHVldHVuZyB0YXVnZW4sCmRhbm4gaXN0IGRhcyBlaW56aWdlIEFyZ3VtZW50IGRlciBLaXJjaGUgKmdlZ2VuKiBLb25kb21lIGF1Y2ggaGluZmFlbGxpZy4KCgpSaW5nb3IuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQXJnbCEgKEdyaW1tYm9ybiwgIDkuIE9rdCAyMDAzLCAxMzozNDoyNik6Cn4jISBybj1SaW5nb3IgcnQ9MTA2NTY5OTE4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU2OTc2OTUKRGllIEp1ZGVuIHNlaGVuIGRhcyBwcm9zYWlzY2hlcjogSW4gamVkZXMgS29uZG9tIHdpcmQgZWluIGtsZWluZXMgTG9jaApnZWxhc2VydC4gWnUga2xlaW4gZnVlciBTcGVybWllbiwgYWJlciwgYml0dGVzY2hvZW46IGRhIGlzdCBlaW4gTG9jaCwgYWxzbwprYW5uIEdvdHRlcyBXaWxsZSB3YWx0ZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFyZ2whIChBbnRoZWEsICA5LiBPa3QgMjAwMywgMTY6MzA6MTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjU2OTkyNjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1Njk3Njk1CkphdS4gSWNoIGJpbiBnZXJhZGUgenUgZmF1bCB6dW0gdWViZXJzZXR6ZW4sIGRydW0gYXVmIEVuZ2xpc2NoOgogQSBndXkgaXMgZ29pbmcgb24gYSB0b3VyIG9mIGEgZmFjdG9yeSB0aGF0IHByb2R1Y2VzIHZhcmlvdXMgbGF0ZXggcHJvZHVjdHMuCkF0IHRoZSBmaXJzdCBzdG9wLCBoZSBpcyBzaG93biB0aGUgbWFjaGluZSB0aGF0IG1hbnVmYWN0dXJlcyBiYWJ5LWJvdHRsZQpuaXBwbGVzLiBUaGUgbWFjaGluZSBtYWtlcyBhIGxvdWQgImhpc3MtcG9wIiBub2lzZS4gIlRoZSBoaXNzIGlzIHRoZSBydWJiZXIKYmVpbmcgaW5qZWN0ZWQgaW50byB0aGUgbW9sZCwiIGV4cGxhaW5zIHRoZSBndWlkZS4gIlRoZSBwb3BwaW5nIHNvdW5kIGlzIHRoZQpuZWVkbGUgcG9raW5nIGEgaG9sZSBpbiB0aGUgZW5kIG9mIHRoZSBuaXBwbGUuIgogTGF0ZXIsIHRoZSB0b3VyIHJlYWNoZXMgdGhlIHBhcnQgb2YgdGhlIGZhY3Rvcnkgd2hlcmUgY29uZG9tcyBhcmUKbWFudWZhY3R1cmVkLiBUaGUgbWFjaGluZSBtYWtlcyBhICJIaXNzLiBIaXNzLiBIaXNzLiBIaXNzLXBvcCIgbm9pc2UuICJXYWl0IGEKbWludXRlISIgc2F5cyB0aGUgbWFuIHRha2luZyB0aGUgdG91ci4gIkkgdW5kZXJzdGFuZCB3aGF0IHRoZSAnaGlzcywgaGlzcywnCmlzLCBidXQgd2hhdCdzIHRoYXQgJ3BvcCcgZXZlcnkgc28gb2Z0ZW4/IgogIk9oLCBpdCdzIGp1c3QgdGhlIHNhbWUgYXMgaW4gdGhlIGJhYnktYm90dGxlIG5pcHBsZSBtYWNoaW5lLCIgc2F5cyB0aGUKZ3VpZGUuIEl0IHBva2VzIGEgaG9sZSBpbiBldmVyeSBmb3VydGggY29uZG9tLiIKICJXZWxsLCB0aGF0IGNhbid0IGJlIGdvb2QgZm9yIHRoZSBjb25kb21zISIKICJZZWFoLCBidXQgaXQncyBncmVhdCBmb3IgdGhlIGJhYnktYm90dGxlIG5pcHBsZSBidXNpbmVzcyEiCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBcmdsISAoR3JpbW1ib3JuLCAgOS4gT2t0IDIwMDMsIDE2OjM4OjU2KToKfiMhIG9uPUNhdHdlYXpsZSBvdD0xMDY1NzA5OTU3IG9nPXNjaG1hcnJuCn4jISBybj1BbnRoZWEgcnQ9MTA2NTcwOTgxMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU2OTc2OTUKT2ggbWVpbiBKb2YsIGlzdCBfZGVyXyBhbHQuIAoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBcmdsISAoR3JpbW1ib3JuLCAgOS4gT2t0IDIwMDMsIDE2OjM4OjU3KToKfiMhIG9uPUFudGhlYSBvdD0xMDY1NzA5OTg1IG9nPXNjaG1hcnJuCn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA2NTcwOTk1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU2OTc2OTUKSmF1LiBQYXNzdGUgYWJlciBkb2NoIGdlbmlhbCB6dW0gVGhlbWEsIG9kZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBcmdsISAoTm9ubmUsICA5LiBPa3QgMjAwMywgMTc6MzY6MTYpOgp+IyEgcm49UmluZ29yIHJ0PTEwNjU2OTkxODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1Njk3Njk1CkVpZ2VudGxpY2ggbXVlc3N0ZSBkaWUgS2lyY2hlIHNvZ2FyIGRhZnVlciBzZWluLCBkYSBtYW4gZGFubiBqYSBuaWNodCBzbyB2aWVsClNwYXNzIGFtIFNleCBoYXQgKGM7CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBcmdsISAoS3Jpa2tpdCwgIDkuIE9rdCAyMDAzLCAxODozNDozNSk6Cn4jISBybj1Ob25uZSBydD0xMDY1NzEzNzc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTY5NzY5NQpkYSBmYWVsbHQgbWlyIG5vY2ggZXR3YXMgYXVzIGVpbmVtIHNjaGlja2VuIGhvZXJzcGllbCBlaW4gKHNoZXJsb2NrIGhvbG1lcyB1bmQKZGVyIGZhbGwga2FybCBtYXJ4KS4gaW4gZXR3YSBzbzoKCmhvbG1lczogZGllIGF1c3NhZ2Ugdm9uIG1hcngsIHJlbGlnaW9uIHNlaSBvcGl1bSBmdWVyIGRhcyB2b2xrIGlzdCBmYWxzY2guCndhdHNvbjogd2llIG1laW5lbiBzaWUgZGFzPwpob2xtZXM6IGVyIGhhdCBub2NoIG5pZSBvcGl1bSBwcm9iaWVydC4KCmtyaWtraXQKCnBzLiBodHRwOi8vd3d3LmhvZXJzcGllbGtyaW1pLmRlL2FyY2hpdi9zL3NoZXJsb2NraG9sbWVzdW5kZGVyZmFsbGthcmxtYXJ4Lmh0bQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbiBnZXdpc3NlcyBLbG9zdGVyIChab29rLCAgOS4gT2t0IDIwMDMsIDIxOjMzOjM5KToKfiMhIHJuPVR3aW5naSBydD0xMDY1NzAwMzgwIHJnPWQuaW5zZWxuCn4jISB0aWQ9MTA2NTcwMDM4MApBbiBpc3QgYW4gdW5kIGF1cyBpc3QgYXVzLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB2b3JzdGFuZHNtYWlsIChab29rLCAxMC4gT2t0IDIwMDMsIDEwOjAyOjE3KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDY1NzM1OTM5IHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD0xMDY1NzM1OTM5Clpvb2sgYmVpc3N0IHNpY2ggYXVmIGRpZSBadW5nZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEthbXBmc3RhZWJlIChBbWF6b3JhLCAxMC4gT2t0IDIwMDMsIDExOjM0OjA2KToKfiMhIHJuPUFuYXRvbCBydD0xMDY1NTQ5NzgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTQ0NjQ0MQpiZXNzZXIgd2FlciBkaWUgcmFzc2U6IGFsa29ob2xhdXNlaW1lcm4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSmF2YXNjcmlwdC4uIHV1dXVoIChBbmF0b2wsIDEwLiBPa3QgMjAwMywgMjE6MzI6NDgpOgp+IyEgcm49RWxhaW5lIHJ0PTEwNjU4MTQyMjYgcmc9d3d3Cn4jISB0aWQ9MTA2NTgxNDIyNgo6a2FubiBrZWluIEphdmFzY3JpcHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEphdmFzY3JpcHQuLiB1dXV1aCAoQ2F0d2VhemxlLCAxMC4gT2t0IDIwMDMsIDIxOjMzOjIwKToKfiMhIHJuPUFuYXRvbCBydD0xMDY1ODE0MzY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTgxNDIyNgpOYSB1bmQ/IApBVWNoIG9obmUsIGRhc3MgaWNoIGphdmEoc2NyaXB0KSBrb2VubnRlLCBrbGViIGljaCBhbiA4IDopCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEphdmFzY3JpcHQuLiB1dXV1aCAoRWxhaW5lLCAxMC4gT2t0IDIwMDMsIDIxOjMzOjUwKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDY1ODE0NDAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTgxNDIyNgpXYXMgd2FyIDggbm9jaG1hbD8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEphdmFzY3JpcHQuLiB1dXV1aCAoQW5hdG9sLCAxMC4gT2t0IDIwMDMsIDIxOjM0OjA4KToKfiMhIHJuPUVsYWluZSBydD0xMDY1ODE0NDMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTgxNDIyNgpEdSBtdXNzdCBkYSBlaW4gUGFzc3dvcnQgcmF1c2tyaWVnZW4sIGdsYXViIGljaC4uLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSmF2YXNjcmlwdC4uIHV1dXVoIChXaGl0ZXRpZ2VyLCAxMC4gT2t0IDIwMDMsIDIxOjQwOjE5KToKfiMhIHJuPUFuYXRvbCBydD0xMDY1ODE0NDQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTgxNDIyNgpJY2ggaGFlbmcgYmVpbSAxMC4gZmVzdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSmF2YXNjcmlwdC4uIHV1dXVoIChBbmF0b2wsIDEwLiBPa3QgMjAwMywgMjE6NDE6MDUpOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDY1ODE0ODE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTgxNDIyNgpUcml2aWFsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogSmF2YXNjcmlwdC4uIHV1dXVoIChXaGl0ZXRpZ2VyLCAxMC4gT2t0IDIwMDMsIDIxOjQxOjI1KToKfiMhIHJuPUFuYXRvbCBydD0xMDY1ODE0ODY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTgxNDIyNgpIbXBmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBKYXZhc2NyaXB0Li4gdXV1dWggKENhdHdlYXpsZSwgMTAuIE9rdCAyMDAzLCAyMTo0NDowNSk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwNjU4MTQ4ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1ODE0MjI2CkRyZWNrc2Fjay4gCldlbm4gbWFucyBoYXQgaXNzZXMgaW1tZXIgdHJpdmlhbCA6KQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBKYXZhc2NyaXB0Li4gdXV1dWggKEFuYXRvbCwgMTAuIE9rdCAyMDAzLCAyMTo0NDoyNyk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA2NTgxNTA0NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU4MTQyMjYKRWJlbi4gRGVzd2VnZW4gaGFlbmcgaWNoIGphIGF1Y2ggZ3JhZCBhbiB3YXMgdHJpdmlhbGVtLiBHYW56IHNpY2hlci4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogSmF2YXNjcmlwdC4uIHV1dXVoIChFbGFpbmUsIDEwLiBPa3QgMjAwMywgMjE6NDQ6NTkpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNjU4MTUwNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1ODE0MjI2Ck11c3MgaWNoIGJlemV1Z2VuIEFuYXRvbCwgRGVpbnMgaXN0IGdyYWQgKmVjaHQqIHRyaXZpYWwuCkhpaGkuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEphdmFzY3JpcHQuLiB1dXV1aCAoSHVtbmksIDEwLiBPa3QgMjAwMywgMjE6NDU6MDUpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNjU4MTUwNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1ODE0MjI2CkFsc28gbmFjaCAyLiBpc3QgbWVpbiBLb25xdWVyb3IgYWJnZXNjaG1pZXJ0LiBEYWdlZ2VuIGlzdCBKYXZhc2tyaXB0IHNjaG9ubWFsCnNpY2hlciA7LSkKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogSmF2YXNjcmlwdC4uIHV1dXVoIChDYXR3ZWF6bGUsIDEwLiBPa3QgMjAwMywgMjE6NDc6MDUpOgp+IyEgcm49SHVtbmkgcnQ9MTA2NTgxNTEwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU4MTQyMjYKSXN0IDggaXJnZW5kd2FzIGxvZ2lzY2hlcywgb2RlciBtdXNzIGljaHMgbnVyIGZpbmRlbj8KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEphdmFzY3JpcHQuLiB1dXV1aCAoV2hpdGV0aWdlciwgMTAuIE9rdCAyMDAzLCAyMTo0NzoyMSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA2NTgxNTIyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU4MTQyMjYKQWxsZXMgdW50ZXIgMTAgaXN0IG51ciB3YXMgenVtIGZpbmRlbiwgYWZhaXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFoamEgKEFsa29ob2wsIDExLiBPa3QgMjAwMywgMTI6MzA6MTApOgpWb24gRnJldW5kaW4gTWFoYXJldDogRWxmZW4ga29lbm5lbiBkb2NoIHNvZ2FyIG9lZnRlciBhbHMgZGllIGFuZGVyZW4gUmFzc2VuCgpXb2xsdGVuIHdpciBkYXMgc28gZ2VuYXUgd2lzc2VuPyA6KQoKQWxrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWhqYSAoR2xvaW5zb24sIDExLiBPa3QgMjAwMywgMTI6NTc6MTMpOgp+IyEgcm49QWxrb2hvbCBydD0xMDY1ODY4MjEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTg2ODIxMApKYSBzaWNoZXIga29lbm5lbiBkaWUgaGFldWZpZ2VyIGtvdHplbi4gRGllIHBvcnRpb25pZXJlbiBiZXNzZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBKYXZhc2NyaXB0Li4gdXV1dWggKENyb2Z0LCAxMS4gT2t0IDIwMDMsIDEzOjA5OjExKToKfiMhIHJuPVBhbGUgcnQ9MTA2NTg3MDI1OCByZz13d3cKfiMhIHRpZD0xMDY1ODE0MjI2Ckp1bmdlbnMuICBMZXJudCBkb2NoIGVuZGxpY2ggbWFsIGRlbiBFZGl0b3IgcmljaHRpZyB6dSBiZW51dHplbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBKYXZhc2NyaXB0Li4gdXV1dWggKEh1cmF4cHJheCwgMTEuIE9rdCAyMDAzLCAxMzo1MToxMCk6Cn4jISBybj1Dcm9mdCBydD0xMDY1ODcwNTUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTgxNDIyNgpIYXQgc2Nob24gamVtYW5kIGRhcyBMZXZlbCAxMD8gSWNoIGJpbiB3ZWl0ZXJnZWtvbW1lbiwgYWJlciBoYWJzIG5vY2ggbmljaHQKcmljaHRpZyB2ZXJzdGFuZGVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBKYXZhc2NyaXB0Li4gdXV1dWggKENhdHdlYXpsZSwgMTEuIE9rdCAyMDAzLCAxNjo1NDo1Nik6Cn4jISBybj1IdXJheHByYXggcnQ9MTA2NTg3MzA3MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU4MTQyMjYKV0llIGR1IGJpc3Qgd2VpdGVyIHVuZCBoYXN0IG5pY2h0cyB2ZXJzdGFuZGVuPwpXYXMgZ2lidHMgZGVubiBkYXJhbiB6dSB2ZXJzdGVoZW4/CgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEphdmFzY3JpcHQuLiB1dXV1aCAoSHVyYXhwcmF4LCAxMS4gT2t0IDIwMDMsIDE3OjA4OjI0KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDY1ODg0MDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTgxNDIyNgplZ2FsLCBoYWIgYWxsZQptdXNzIGpldHp0IHJhdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVpbiBwYWFyIGhlaWxlbmRlIFdvcnRlLi4uIChDcm9mdCwgMTMuIE9rdCAyMDAzLCAxMzozOTowMCk6Cn4jISBybj1EYXJrd2luZyBydD0xMDY2MDQ1MDI4IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTA2NTk4ODQyMQpXYXMgZGFubiB3b2hsIGF1cyBkZW0gbWFzc2llcmUgZGVyIFNjaHVldHRsZXIgd2lyZCAsLSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFaW4gcGFhciBoZWlsZW5kZSBXb3J0ZS4uLiAoTW9yZ290aCwgMTMuIE9rdCAyMDAzLCAxMzo0ODoyNSk6Cn4jISBybj1Dcm9mdCBydD0xMDY2MDQ1MTQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTk4ODQyMQpbVG9kOkxhcnNdIFZvZWxsaWdlIEVudHNwYW5udW5nIGhhdCBnZXJhZGUgLi4uIHVtZ2VicmFjaHQuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZnJldW5kZSB1bmQgbGFuZ3dlaWxlIChQdWssIDEzLiBPa3QgMjAwMywgMTQ6MzA6MjYpOgpEYXJrd2luZyAgICAgICAtICAwOjQ3OjM2IC0gSW4gZWluZW0ga2xlaW5lbiBUdXJtClR5bGFrICAgICAgICAgIC0gIDA6IDU6NTEgLSBFaW4gWmltbWVyClpvb2sgICAgICAgICAgIC0gIDE6MzA6MzAgLSBJbiBkaWNodGVtIE5lYmVsCj4gRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGJhZWggYWxsZSBpZGxlIGhpZXIgOikKPiBEZWluIEZyZXVuZCBab29rIHRlaWx0IERpciBtaXQ6IHdlciBpc3QgaGllciBpZGxlPz0KRGVpbiBGcmV1bmQgRGFya3dpbmcgdGVpbHQgRGlyIG1pdDogd2VyIGlkbGV0ID8gOikKCmRpZSB3YXJ0ZW4gZWNodCBhbGxlIGJpcyBtYW4gaWhuZW4gd2FzIHp1IHR1biBnaWJ0IDopCmRpZSB3YXJ0ZW4gZWNodCBhbGxlIGJpcyBtYW4gaWhuZW4gd2FzIHp1IHR1biBnaWJ0IDopClB1aywgZHVoIHNhZ2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQXJnbCEgKENhZHJhY2gsIDEzLiBPa3QgMjAwMywgMTc6MDg6NDApOgp+IyEgcm49UmluZ29yIHJ0PTEwNjU2OTkxODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1Njk3Njk1Ck1hbiBtb2VnZSBtaWNoIGtvcnJpZ2llcmVuIHdlbm4gaWNoIGRhIGZhbHNjaCBsaWVnZSwgYWJlciBpY2ggZ2xhdWJlIGRpZSBrYXRoLgpLaXJjaGUgaGF0IHdhcyBnZWdlbiBqZWRlbiBWZXJzdWNoLCBlaW5lIHZvbiBHb3R0IGdld29sbHRlIFNjaHdhbmdlcnNjaGFmdAp2ZXJoaW5kZXJuIHp1IHdvbGxlbi4gQWxzbyBuaWNodCBudXIgUGlsbGUgJiBLb25kb20sIHNvbmRlcm4gYXVjaCBhdXNyZWNobmVuCnVlYmVyIFRlbXBlcmF0dXIgdW5kIHdhcyBlcyBzb25zdCBub2NoIHNvIGFsbGVzIHVuc2ljaGVyZXMgZ2lidCwgbXVlc3N0ZQpkYXJ1bnRlciBmYWxsZW4uIEVzIGlzdCBhbHNvIGVnYWwgb2IgZWluIEtvbmRvbSB3aXJrbGljaCBzaW5udm9sbCBzY2h1ZXR6dCwKYWxsZWluIERlaW5lIEludGVudGlvbiB3aWVzbyBEdSBlcyBiZW51dHp0IGlzdCBzY2hvbiBzY2hhZW5kbGljaCBSaW5nb3IuCgpDYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBcmdsISAoSHVtbmksIDEzLiBPa3QgMjAwMywgMTc6MTA6MDYpOgp+IyEgcm49Q2FkcmFjaCBydD0xMDY2MDU3NzIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTY5NzY5NQpIdWksIGRhIHdlaXNzIGljaCBtYWwgd2FzOiBUZW1wZXJhdHVyIHVzdy4gYXVzcmVjaG5lbiBpc3QgZGllIGVpbnppZ2UgTWV0aG9kZSwKZGllIGRpZSBLaXJjaGUgZ2VzdGF0dGV0LgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEFyZ2whIChCYW1iaSwgMTMuIE9rdCAyMDAzLCAyMTowMjo1OCk6Cn4jISBybj1IdW1uaSBydD0xMDY2MDU3ODA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NTY5NzY5NQpTY2h1ZXR6dCBkaWUgYXVjaCB2b3IgQUlEUz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEFyZ2whIChBbmF0b2wsIDEzLiBPa3QgMjAwMywgMjI6Mzg6MzQpOgp+IyEgcm49QmFtYmkgcnQ9MTA2NjA3MTc3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU2OTc2OTUKV2llIG5lbm50IG1hbiBQYWFyZSwgZGllIG1pdCBkZXIgVGVtcGVyYXR1cmt1cnZlbm1ldGhvZGUgdmVyaHVldGVuPwoKOgoKOgoKOgoKOgoKRWx0ZXJuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFTQ0lJLUt1ZW5zdGxlciBnZXN1Y2h0IChPbGxpLCAxMy4gT2t0IDIwMDMsIDIzOjE4OjM5KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNjYwNTg5OTkgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDY1NDgwMjczCmtyaWVnZW4gd2lyIFphdWJpcyBkYW5uIGF1Y2ggZGVuIFNraWxsPyA7KQoKT2xsaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQVNDSUktS3VlbnN0bGVyIGdlc3VjaHQgKENyb2Z0LCAxMy4gT2t0IDIwMDMsIDIzOjE5OjA1KToKfiMhIHJuPU9sbGkgcnQ9MTA2NjA3OTkxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU0ODAyNzMKTmVpbi4gOi0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQVNDSUktS3VlbnN0bGVyIGdlc3VjaHQgKE1lZGljLCAxMy4gT2t0IDIwMDMsIDIzOjU4OjMwKToKfiMhIHJuPUNyb2Z0IHJ0PTEwNjYwNzk5NDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY1NDgwMjczCnphdWJpcyBhdWZ3ZXJ0ZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBU0NJSS1LdWVuc3RsZXIgZ2VzdWNodCAoQ3JvZnQsIDEzLiBPa3QgMjAwMywgMjM6NTk6MjQpOgp+IyEgcm49TWVkaWMgcnQ9MTA2NjA4MjMxMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU0ODAyNzMKV2VydGUgZGljaCBiZXNzZXIgc2VsYnN0IGF1ZiwgZGFtaXQgZHUgbWl0IGRlciBHaWxkZSByaWNodGlnIHVtZ2Voc3QgOj4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBU0NJSS1LdWVuc3RsZXIgZ2VzdWNodCAoRGVlcGJsdWUsIDE0LiBPa3QgMjAwMywgMDk6MTY6MjIpOgp+IyEgcm49Q3JvZnQgcnQ9MTA2NjA3OTk0NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjU0ODAyNzMKV2llc28gZWlnZW50bGljaCBuaWNodD8gaGFuZCBtYXNzaXYgYWJ3ZXJ0ZW4sIGRhZnVlciBlaW5lbiBTY2hsYWd3YWZmZW5za2lsbAptaXQgZGVyIEVpbnNjaHJhZW5rdW5nICJOdXIgWmF1YmVyc3RhZWJlIj8KTmF0dWVybGljaCBnZWh0IHNvIGVpbiBGaWxpZ3JhbmVzIFN0YWViY2hlbiBuYWNoIGVpbmlnZW4gaGVmdGlnZW4gSGllYmVuIGF1Y2gKa2FwdXR0LgpEZWVwIC0gaW4gZGVyIHJpY2h0aWdlbiBSdWJyaWs/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCZXppZWh1bmdzcHJvYmxlbWUgKEFub3JpcywgMTQuIE9rdCAyMDAzLCAyMTo1MTo1MSk6ClhYWCB0ZWlsdCBEaXIgbWl0OiAqc2V1ZnoqIE1hZW5uZXIgaW4gQmV6aWVodW5nZW4gc2luZCBla2xpZywgd2VubiBtYW4KWFhYIHRlaWx0IERpciBtaXQ6IFNpbmdsZSBpc3QgOy0pKSkKCi0gQW5vcmlzIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmV6aWVodW5nc3Byb2JsZW1lIChab29rLCAxNC4gT2t0IDIwMDMsIDIxOjUzOjMyKToKfiMhIHJuPUFub3JpcyBydD0xMDY2MTYxMTExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NjE2MTExMQpOYSwgZGEgd3VlcmQgbWljaCBqYSBudW4gZGVyIFp1c2FtbWVuaGFuZyBpbnRlcmVzc2llcmVuLiAKClpPb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgYXVmIEtvbW1hbmRvIC4uLiAoTWFuZHJhZ29uLCAxNS4gT2t0IDIwMDMsIDExOjM3OjMzKToKCltBbGxnZW1laW46RGVlcGJsdWVdIE1hbCBhbGxlIFJpa3VzIGhhZW1tZXJuIQpNdWFkaWIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCk1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdpZSBhdWYgS29tbWFuZG8gLi4uIChHbG9pbnNvbiwgMTUuIE9rdCAyMDAzLCAxMTo0MDo0MSk6Cn4jISBybj1NYW5kcmFnb24gcnQ9MTA2NjIxMDY1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjYyMTA2NTMKRGVlcGJsdWVzIFNhdHogaGF0IHNvIHdhcyBob21vZXJvdGlzY2hlcyBhbiBzaWNoLiBCaXN0IGR1IGV0d2EgZnVlciBiZWlkZQpTZWl0ZW4genUgaGFiZW4sIGR1bW1ibGF1ZXMgU2NobnVja2VsY2hlbj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLaWZmZW5kZSBTY2hsYW5nZW4/IChNb3Jnb3RoLCAxNS4gT2t0IDIwMDMsIDIwOjI0OjIyKToKRWluZSBSaWVzZW5zY2hsYW5nZSBlcnNjaGVpbnQgaW4gZWluZXIgUmF1Y2h3b2xrZS4KRWluZSBSaWVzZW5zY2hsYW5nZSBlcnNjaGVpbnQgaW4gZWluZXIgUmF1Y2h3b2xrZS4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBQb3Jub3N0YXIgKENhdHdlYXpsZSwgMTYuIE9rdCAyMDAzLCAyMzoxNjo0NSk6Cn4jISBybj1EYXJrbG9yIHJ0PTEwNjYzMzgyMzAgcmc9d3d3Cn4jISB0aWQ9MTA2NDU2NDY5MQpEdSBoYXN0IE5hY2hob2xiZWRhcmYsIGhtPwoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBQb3Jub3N0YXIgKERhcmtsb3IsIDE2LiBPa3QgMjAwMywgMjM6NDI6MzEpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNjYzMzkwMDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY0NTY0NjkxCllvISAqZyoKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRW5kbGljaCEgRGVyIFdpc3NlbnNjaGFmdCBzZWkgRGFuayEgKEFuYXRvbCwgMTkuIE9rdCAyMDAzLCAwMDoxNjo1Mik6Cn4jISBybj1HbG9pbnNvbiBydD0xMDY2NTEzMzcwIHJnPXNjaG1hcnJuLm5ldGRpZ2VzdAp+IyEgdGlkPTEwNjY0OTk4NjIKRHUgc3RpbmtzdCwgd2VpbCBEdSBEaWNoIGFuIGVpbmVtIFB1bmt0IGZlc3RoYWVsdHN0LiBLbGFyIGlzdCBlaW5lCkthbG9yaWUgIT0gMSBLaWxva2Fsb3JpZS4gQWJlciBpY2ggd3VlcmRlIGRhcyBGZXR0Z2V3ZWJlIGF1Y2ggbWl0bmljaHRlbgpmdWVyIERJRSBFbmVyZ2lld3VlbGxlLCBkaWUgZGVtIG1lbnNjaGxpY2hlbiBLb2VycGVyICJrdXJ6ZnJpc3RpZwp6dXIgVmVyZnVlZ3VuZyBzdGVodCIsIGhhbHRlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFbmRsaWNoISBEZXIgV2lzc2Vuc2NoYWZ0IHNlaSBEYW5rISAoVmFuaW9uLCAxOS4gT2t0IDIwMDMsIDAwOjE3OjQ4KToKfiMhIHJuPUFuYXRvbCBydD0xMDY2NTE1NDEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NjQ5OTg2MgpVbmQgd2VubiBkb2NoLCBtdWVzc3RlbiBTcG9ydGxlciBpbW1lciBIb3NlbnRyYWVnZXIgdW5kIFN0cnVtcGZiYWVuZGVyIHRyYWdlbgo6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVuZGxpY2ghIERlciBXaXNzZW5zY2hhZnQgc2VpIERhbmshIChHbG9pbnNvbiwgMTkuIE9rdCAyMDAzLCAwMTozMTo0OCk6Cn4jISBybj1WYW5pb24gcnQ9MTA2NjUxNTQ2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjY0OTk4NjIKQWNoLCBkaWUgYmVzdGVoZW4gZG9jaCBudXIgYXVzIE11c2tlbG1hc3NlLiBSZXB0aWxpZW4uIEdpYnQgYmVzdGltbXQgYmFsZCBlaW4KTWl0dGVsIGRhZnVlciwgZGFzcyBzaWUgc2ljaCBzcHJpdHplbiBrb2VubmVuLiBEYW5uIHZlcnNjaHdpbmRlbiBCcnVlc3RlLApBcnNjaCB1bmQgYWxsZSBtb2VnbGljaGVuIEtvbnR1cmVuIGltIEhhbmR1bWRyZWhlbiB1bmQgYW4gZGVyZW4gU3RhdHQgdHJldGVuCk11c2tlbHd1ZWxzdGUsIGRpZSBzaWNoIGJpb21hZ2lzY2ggc3Ryb21saW5pZW5mb2VybWlnIGF1c3JpY2h0ZW4uCk1lYSBjdWxwYSwgQW5hdG9sLiBJY2ggbWVpbnRlIGRlciBncm9lc3N0ZSBIaW5rZWZ1c3MgZGVzIEFydGlrZWwgc2VpIGRpZQpmZWhsZW5kZXIgUG90ZW56LCBhYmVyIGF1Y2ggZGllIEJpb2NoZW1pZSBpc3QgaW5zIEhpbnRlcnRyZWZmZW4gZ2VyYXRlbi4gRWluCkhvY2ggYXVmIGRlbiBCbHV0enVja2VyIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEVuZGxpY2ghIERlciBXaXNzZW5zY2hhZnQgc2VpIERhbmshIChBbmF0b2wsIDE5LiBPa3QgMjAwMywgMDE6MzM6MjQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA2NjUxOTkwOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjY0OTk4NjIKRmVobGVuZGUgUG90ZW56LCBnYW56IHp3ZWlmZWxsb3MsIGlzdCBncnVuZHNhZXR6bGljaCBkZXIgZ3JvZXNzdGUgSGlua2VmdXNzLgoKTWVhIG1heGltYSBjdWxwYS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBFbmRsaWNoISBEZXIgV2lzc2Vuc2NoYWZ0IHNlaSBEYW5rISAoR2xvaW5zb24sIDE5LiBPa3QgMjAwMywgMDE6MzQ6MTIpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNjY1MjAwMDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY2NDk5ODYyCkpldHp0IGZlaGxlbiBtaXIgZGllIG5pZSBlcndvcmJlbmVuIExhdGVpbmtlbm50bmlzc2UgdW0gbWVpbmUKU2VsYnN0ZXJuaWVkcmlndW5nIHp1IHN0ZWlnZXJuLiBXZWhlISBXZWhlIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9iIGRhcy4uLiAoQXBvbGxvbmlhLCAxOS4gT2t0IDIwMDMsIDEwOjM5OjUyKToKLi4uIHdvaGwgZWluZSBFbGZlIGlzdD8gKGM6CgpodHRwOi8vcGl4LmhvdG9ybm90LmRlL3AvZC8xLzkvZDE5MjZiZTJiNGEyLmpwZwoKQXBvKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUGFydHktR2VsZCAoQW5hdG9sLCAxOS4gT2t0IDIwMDMsIDExOjQ3OjQyKToKfiMhIG9uPUFuYXRvbCBvdD0xMDY2NTU2ODU4IG9nPXBhcnR5Cn4jISBybj1DYWRyYWNoIHJ0PTEwNjY1NTY3NjQgcmc9cGFydHkKfiMhIHRpZD0xMDY2NTQ0MzQ5Ck5pY2h0IGplZGVyIGlzdCBNYW5ucyBnZW51Zywgc2ljaCB6dSBlcmhlYmVuLCBzZWluZSBSZWNodGUgd2Focnp1bmVobWVuCnVuZCBsYXV0c3RhcmsgenUgdmVya3VlbmRlbjogIkRhIHNpbmQgYWJlciBtZWhyIFBvbW1lcyBkcmF1ZiBhbHMgYmVpIG1pciEiLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEJldHJpZWJzc3lzdGVtZSBkaWUgZGllIFdlbHQgbm9jaCBicmF1Y2h0IChSb25kYSwgMTkuIE9rdCAyMDAzLCAxNDoyMjozOSk6Cn4jISBybj1WYW5pb24gcnQ9MTA2NjU1NzgzMiByZz13d3cKfiMhIHRpZD0xMDY2MTM1MzI1ClZhbmlvbi4uLiB0cy4uLgo+IFR1cmluZ21hc2NoaW5lbiBzaW5kIGVpbmUgbmV0dGUgSWRlZSB1bSBWb3JkaXBsb20tSW5mb3JtYXRpa2VyCj4genUgdmVyZ3JhdWxlbiwgYWJlciAiRGluZ2UgZGllIGRpZSBXZWx0IG5pY2h0IGJyYXVjaHQiCj4gdHJpZmZ0cyBlaWdlbnRsaWNoIGdhbnogZ3V0LgouLi4gZWJlbiBkZXN3ZWdlbiBicmF1Y2h0IHNpZSBkaWUgV2VsdC4gRXMgaGlsZnQgZWluIGJpc3NjaGVuIGF1c3p1c29ydGllcmVuLAp3ZXIgSW5mbyBzdHVkaWVydC4uLiA7LSkKClJvbmRhICpncmlucyAtIGplZGVyIGRhcmYgUnVlY2tzY2hsdWVzc2UgemllaGVuLCB3YXJ1bSBpY2ggSW5nLiB1bmQgbmljaHQgSW5mLgpiaW4gOy0pKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQmV0cmllYnNzeXN0ZW1lIGRpZSBkaWUgV2VsdCBub2NoIGJyYXVjaHQgKFBhdHJ5biwgMTkuIE9rdCAyMDAzLCAxNTo0NzozMCk6Cn4jISBybj1Sb25kYSBydD0xMDY2NTY2MTU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NjEzNTMyNQpHZW5hdSwgZGllIER1bW1rb2VwZmUgc3RlcmJlbiBuaWVtYWxzIGF1cy4KU29sYW5nZSBqZWRlciBJbmZvcm1hdGlrIHN0dWRpZXJlbiB3aWxsLCBkZXIgZ2VybmUgOCBTdHVuZGVuIGFtIFRhZyBkYWRkZWx0LAprYW5uIG1hbiBzaWNoZXIgZGVuIFR1cmluZy1NYXNjaGluZW4gYXVjaCBuaWNodHMgYWJnZXdpbm5lbi4KTWl0IFR1cmluZy1NYXNjaGluZW4ga2FubiBtYW4gYmVpc3BpZWxzd2Vpc2UgZ2FueiBzaW1wZWwgemVpZ2VuLCBkYXNzCmRhcyBFbnRzY2hlaWR1bmdzcHJvYmxlbSBuaWNodCBsb2VzYmFyIGlzdCwgZC5oLjoKR2lidCBlcyBlaW4gYWxsZ2VtZWluIG1lY2hhbmlzY2hlcyBWZXJmYWhyZW4sIGRhc3MgaW0gUHJpbnppcCBhbGxlIFByb2JsZW1lCmRlciBNYXRoZW1hdGlrIGVpbnMgbmFjaCBkZW0gYW5kZXJlbiBsb2VzdC4KRGFzIGdpYnQgZXMgbmljaHQsIG1hbiBkZWZpbmllcnQgbmFjaCBlaW5lbSBzcGV6aWVsbGVuIFZlcmZhaHJlbgpUdXJpbmctTWFzY2hpbmVuLCBrYW5uIHNpZSBkYW5uIGR1cmNobnVtbWVyaWVyZW4gdW5kIHdlbmRldCBkYXMgZWJlbnNvCnNpbXBsZSBDYW50b3JzY2hlIERpYWdvbmFsdmVyZmFocmVuIGFuLgpEaWUgb2JpZ2UgQXVzc2FnZSBoZWlzc3QgdWVicmlnZW5zIG5pY2h0LCBkYXNzIG1hbiBuaWNodCBmdWVyIGplZGVzCm1hdGhlbWF0aXNjaGUgUHJvYmxlbSBlaW5lIFR1cmluZy1NYXNjaGluZSBiYXVlbiBrb2VubnRlLCBudXIgZ2lidCBlcyBoYWx0CmtlaW5lIHNlaHIgYWxsZ2VtZWluZSBNYXNjaGluZSwgZGllIHNpZSBhbGxlIG5hY2hlaW5hbmRlciBsb2VzZW4ga2Fubi4KRGFzIGlzdCB1ZWJyaWdlbnMgZWluIG5ldHRlcyBJbmRpeiBkYWZ1ZXIsIGRhc3MgZGVyIE1lbnNjaCBuaWNodCBudXIgZWluCmF1ZmdlbW96dGVyIENvbXB1dGVyIGlzdC4uLmplZGVyIG1hZyBzZWxic3QgZGFydWViZXIgcGhpbG9zb3BoaWVyZW4uCgotLSAKcGF0cnluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCZXRyaWVic3N5c3RlbWUgZGllIGRpZSBXZWx0IG5vY2ggYnJhdWNodCAoUm9uZGEsIDE5LiBPa3QgMjAwMywgMTU6NTA6MTgpOgp+IyEgcm49UGF0cnluIHJ0PTEwNjY1NzEyNTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY2MTM1MzI1CkhtLiBBbHNvIGluIEt1cnpmb3JtIGhlaXNzdCBkYXMsIGRhc3MgTWVuc2NoIHVuZCBUdXJpbmctTWFzY2hpbmUKdW50ZXJzY2hpZWRsaWNoIHNpbmQsIHdlaWwgZWluZSBUdXJpbmctTWFzY2hpbmUga2VpbmUgTVBBLUFydGlrZWwgdmVyZmFzc2VuCmthbm4uLi4/CgpSb25kYSAqZGVua3QgYW4gRWxpemEgdW5kIHNjaG1hcnJudCBydW0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCZXRyaWVic3N5c3RlbWUgZGllIGRpZSBXZWx0IG5vY2ggYnJhdWNodCAoVmFuaW9uLCAxOS4gT2t0IDIwMDMsIDE1OjUwOjUxKToKfiMhIHJuPVBhdHJ5biBydD0xMDY2NTcxMjUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NjEzNTMyNQpMZXV0ZSBkaWUgU2F0emZyYWdtZW50ZSB3aWUgImthbm4gbWFuIC4uLiBnYW56IHNpbXBlbCB6ZWlnZW4iLCAid2llIHNpY2gKbGVpY2h0IGFibGVpdGVuIGxhZXNzdCIsICJzaWVodCBtYW4gc29mb3J0IiBpbiBzZWluZSBFcmtsYWVydW5nZW4gZWluYmF1dCwKb2J3b2hsIGRhcyBnYW56IG9mZmVuc2ljaHRsaWNoIG5pY2h0IHNvIGlzdCwgc2luZCBtaXIgc3VzcGVrdC4gU29sY2hlIExldXRlCmhhdHRlIGljaCBnZW51ZyBhbHMgUHJvZmVzc29yZW4gaW0gU3R1ZGl1bS4gRGllIFdpbWlzIG11c3N0ZW4gZGFubgp1ZWJsaWNoZXJ3ZWlzZSBkaWUgVm9ybGVzdW5nIGluIGRlbiBVZWJ1bmdlbiB1ZWJlcnNldHplbi4KClYqIGdyaW5zdCBQYXRyeW4gYnJlaXQgYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBCZXRyaWVic3N5c3RlbWUgZGllIGRpZSBXZWx0IG5vY2ggYnJhdWNodCAoQWxrb2hvbCwgMTkuIE9rdCAyMDAzLCAxNTo1MTo1OSk6Cn4jISBybj1WYW5pb24gcnQ9MTA2NjU3MTQ1MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjYxMzUzMjUKd2llc28gZGFzPyAKbmF0dWVybGljaCBpc3QgZXMgImdhbnogb2ZmZW5zaWNodGxpY2ggc28iLiBBdXNzZXJkZW0gc2VoIGljaCBrZWluZW4KVW50ZXJzY2hpZWQgendpc2NoZW4gImthbm4gbWFuIC4uLmdhbnogc2ltcGVsIHplaWdlbiIgdW5kICJnYW56Cm9mZmVuc2ljaHRsaWNoIiAKCkFsawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQmV0cmllYnNzeXN0ZW1lIGRpZSBkaWUgV2VsdCBub2NoIGJyYXVjaHQgKFZhbmlvbiwgMTkuIE9rdCAyMDAzLCAxNTo1NDoxMyk6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNjY1NzE1MTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY2MTM1MzI1CkhtbSwgaXJnZW5kd2llIHZlcnN0ZWggaWNoIERlaW5lIEZyYWdlIG5pY2h0IDopIEF1ZiB3YXMgYmV6aWVodCBzaWNoIGRhcwoiV2llc28gZGFzPyIgQXVmIGRpZSBBVXNzYWdlIGRhc3MgbWlyIGRpZSBMZXV0ZSBzdXNwZWt0IHNpbmQ/IFN1Ympla3Rpdml0YWV0CmJyYXVjaHQga2VpbmUgb2JqZWt0aXZlbiBHcnVlbmRlLiA6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBCZXRyaWVic3N5c3RlbWUgZGllIGRpZSBXZWx0IG5vY2ggYnJhdWNodCAoQWxrb2hvbCwgMTkuIE9rdCAyMDAzLCAxNTo1NTozOSk6Cn4jISBybj1WYW5pb24gcnQ9MTA2NjU3MTY1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjYxMzUzMjUKZHUgc2Fnc3QsIGRhc3MgImdhbnogb2ZmZW5zaWNodGxpY2giIGV0d2FzIG5jaWh0IGlzdCwgdW5kIHdpcmZzdCBQYXRyeW4gdm9yLApkYXNzIGV0d2FzICJnYW56IHNpbXBlbCB6dSB6ZWlnZW4iIGlzdC4KSmEgd28gaXN0IGRhIGRlciB1bnRlcnNjaGllZD8KCkFsawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEJldHJpZWJzc3lzdGVtZSBkaWUgZGllIFdlbHQgbm9jaCBicmF1Y2h0IChNdWFkaWIsIDE5LiBPa3QgMjAwMywgMTU6NTc6MDMpOgp+IyEgcm49QWxrb2hvbCBydD0xMDY2NTcxNzM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NjEzNTMyNQpkZXIgdW50ZXJzY2hpZWQgaXN0IG9mZmVuc2ljaHRsaWNoIHVuZCB3aWUgc2ljaCBzaW1wZWwgemVpZ2VuIGxhZXNzdCBhdWNoCnRyaXZpYWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEJldHJpZWJzc3lzdGVtZSBkaWUgZGllIFdlbHQgbm9jaCBicmF1Y2h0IChQYXRyeW4sIDE5LiBPa3QgMjAwMywgMTU6NTc6MDcpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNjY1NzE0NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY2MTM1MzI1CkljaCBoYWIgbmljaHQgZGllIE11c3NlIGhpZXIgZGllIGtvbXBsZXR0ZSBUaGVvcmllIGRhcnp1bGVnZW4sCmdlcmFkZSB3ZWlsIHpCIGVpZ2VudGxpY2ggamVkZXIgSW5mb3JtYXRpa2VyIGRhcyBub3R3ZW5kaWdlIFJ1ZXN0emV1ZyBoYXQsIHVtCmVzIHNlbGJzdCBhdXN6dWZvcm11bGllcmVuLgpNYW4gZXJpbm5lcmUgc2ljaCwgVHVyaW5nLU1hc2NoaW5lbiBnYWJzIGltIHVudGVycmljaHQsIG1hbiBuZWhtZSBIZWZ0ZXIgeCwKbGVzZSBub2NobWFsIGt1cnouCk5hZWNoc3RlciBTdGljaHB1bmt0OiBNYW4ga2FubiBUdXJpbmctTWFzY2hpbmVuIHNvIGtvZGllcmVuLCBkYXNzIG1hbiBzaWUKYWJ6YWVobGVuIGthbm4uIEVzIGVudHN0ZWhlbmEgdWNoIHVuZ3VlbHRpZ2UgTWFzY2hpbmVuLCBhYmVyIGRhcyBzdGllcnQgbmljaHQuCk1hbiBuZWhtZSBudW4gYWxzbyBzZWluIHdpZWRlcmVyd29yYmVuZXMgV2lzc2VuIHVlYmVyIFR1cmluZy1NYXNjaGluZW4sIGRlbmtlCjUgTWludXRlbiBuYWNoIHVuZCBoYXQgd29obCBlcmZhc3N0LCBkYXNzIG1hbiBzaWUgYWJ6YWVobGVuIGthbm4uCk5hZWNoc3RlciBUaXAsIENhbnRvci1WZXJmYWhyZW4uIE1hbiBkZW5rZSBhbiBzZWluZSBTY2h1bHplaXRlbiBvZGVyIGFuIGRlbgpmdWVyIERhZGRsZXIgZWJlbnNvIHVuYmVsaWVidGVuIE1hdGhldW50ZXJyaWNodCwgZGEgbnV0enQgbWFuIGRhc3MKdW0gZGllIFVlYmVyYWJ6YWVobGJhcmtlaXQgZGVyIHJlZWxsZW4gWmFobGVuIHp1IHplaWdlbi4KNSBNaW51dGVuIG5hY2hnZWRhY2h0LCB3ZW5uIHVlYmVyaGF1cHQuLi5haGEsIGRhcyBrb2VubnRlIG1hbiBhdWNoCmF1ZiBkaWUgYWJnZXphZWhsdGVuIFR1cmluZy1NYXNjaGluZW4gYW53ZW5kZW4gdW5kIGVyaGFlbHQgc29taXQKa29uc3RydWt0aXYgZWluZSBNYXNjaGluZSwgZGllIG5pY2h0IGluIGRlciBBdWZ6YWVobHVuZyBpc3QuCgpXZW0gZGFzIGFsbGVzIG5pY2h0IHJlaWNodDogR29vZ2xlIEFsYW4gVHVyaW5nIEVudHNjaGVpZHVuZ3Nwcm9ibGVtLApkYXMgc29sbHRlIHdlaXRlcmhlbGZlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBCZXRyaWVic3N5c3RlbWUgZGllIGRpZSBXZWx0IG5vY2ggYnJhdWNodCAoQWxrb2hvbCwgMTkuIE9rdCAyMDAzLCAxNTo1Nzo1Nyk6Cn4jISBybj1NdWFkaWIgcnQ9MTA2NjU3MTgyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjYxMzUzMjUKd2Vpc3N0IGR1LCB3b2hlciBkYXMgbWl0IGRlbSB0cml2aWFsIGtvbW10PwoKQWxrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogQmV0cmllYnNzeXN0ZW1lIGRpZSBkaWUgV2VsdCBub2NoIGJyYXVjaHQgKE11YWRpYiwgMTkuIE9rdCAyMDAzLCAxNTo1ODoyNyk6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNjY1NzE4Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY2MTM1MzI1CmphLiB1bmQgd2Vpc3N0ZSB3YXM6IGljaCBoYWJzIGVycmF0ZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBCZXRyaWVic3N5c3RlbWUgZGllIGRpZSBXZWx0IG5vY2ggYnJhdWNodCAoQWxrb2hvbCwgMTkuIE9rdCAyMDAzLCAxNTo1OTo0NSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA2NjU3MTkwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjYxMzUzMjUKZGFubiB3ZWlzc3QgZHUgZXMgbmljaHQKCkFsawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEJldHJpZWJzc3lzdGVtZSBkaWUgZGllIFdlbHQgbm9jaCBicmF1Y2h0IChNdWFkaWIsIDE5LiBPa3QgMjAwMywgMTY6MDI6NDgpOgp+IyEgcm49QWxrb2hvbCBydD0xMDY2NTcxOTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NjEzNTMyNQpkb2NoIGRvY2guIGljaCBoYXR0ZSBhdWNoIG1hbCBsYXRlaW4gdW5kIGphIGF1Y2ggdW5zZXIgbGF0ZWlubGVocmVyIHZlcmdsaWNoCnVucyBnZXJuZSBtaXQgZGVuIGR1bW1lbiBrZXJsZW4gbmFoZSBkZXIgc3RyYXNzZQphYmVyIHNjaGVpbmJhciBsYWVzc3QgZHUgZGljaCBnZXJuZSBpcnJlZnVlaHJlbgoKZGllc2VzIHdpc3NlbiBzZWxic3QgaXN0IHVlYnJpZ2VucyByZWNodCB0cml2aWFsIGFiZXIgZ2xhZW56ZSBydWhpZyBkYW1pdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IEJldHJpZWJzc3lzdGVtZSBkaWUgZGllIFdlbHQgbm9jaCBicmF1Y2h0IChBbGtvaG9sLCAxOS4gT2t0IDIwMDMsIDE2OjA1OjM1KToKfiMhIHJuPU11YWRpYiBydD0xMDY2NTcyMTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NjEzNTMyNQp3ZXIgaGF0IG1pdCB0cml2aWFsIGFuZ2VmYW5nZW4/IGljaCBoYXNzZSBkYXMgd29ydCwgZGEgZXMgbWVpc3N0IHZvZWxsaWcKYmxvZWRzaW5uaWcgdW5kIGZhbHNjaCB2ZXJ3ZW5kZXQgd2lyZC4KaWNoIGZhbmRzIG51ciBrb21pc2NoLCBkYXNzIG1hbiBqZW1hbmRlbSB3YXMgdm9yd2lyZnQgdW5kIGVzIHNlbGJlciBnZW5hdXNvCm1hY2h0CgpBbGsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBCZXRyaWVic3N5c3RlbWUgZGllIGRpZSBXZWx0IG5vY2ggYnJhdWNodCAoTXVhZGliLCAxOS4gT2t0IDIwMDMsIDE2OjA3OjAzKToKfiMhIHJuPUFsa29ob2wgcnQ9MTA2NjU3MjMzNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjYxMzUzMjUKd2FyIGRlciBzbWlsZXkgaW4gbWVpbmVtIHVyc3BydW5nc2FydGlrZWwgd2lya2xpY2ggbm90d2VuZGlnPwoKYWxzbyBmdWVyIGRpZWplbmlnZW4gZGllIGFsbGVzIGVybnN0IHVuZCB3b2VydGxpY2ggbmVobWVuIGVpbiBuYWNodHJhZyB6dQptZWluZW0gYXJ0aWtlbDoKCjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogQmV0cmllYnNzeXN0ZW1lIGRpZSBkaWUgV2VsdCBub2NoIGJyYXVjaHQgKFBhdHJ5biwgMTkuIE9rdCAyMDAzLCAxNjowNzoyMSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA2NjU3MjQyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjYxMzUzMjUKSWhyIHNlaWQgZG9jaCBhbGxlIHRyaXZpYWwgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBCZXRyaWVic3N5c3RlbWUgZGllIGRpZSBXZWx0IG5vY2ggYnJhdWNodCAoQW5hdG9sLCAxOS4gT2t0IDIwMDMsIDE2OjA3OjI5KToKfiMhIHJuPVBhdHJ5biBydD0xMDY2NTcyNDQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NjEzNTMyNQpVbmQgRHUgdmVybmFjaGxhZXNzaWdiYXIuIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IEJldHJpZWJzc3lzdGVtZSBkaWUgZGllIFdlbHQgbm9jaCBicmF1Y2h0IChWYW5pb24sIDE5LiBPa3QgMjAwMywgMTY6MDc6MzEpOgp+IyEgcm49QWxrb2hvbCBydD0xMDY2NTcyMzM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NjEzNTMyNQpJY2ggaGFiZSBuaWVtYW5kZW0gd2FzIHZvcmdld29yZmVuLiBJY2ggaGFiZSBlaW4gU3RhdGVtZW50IGdldHJvZmZlbi4KQXVzc2VyZGVtOiBXZXIgc2FndCBkYXNzIGF1Y2ggbnVyIGVpbmUgbWVpbmVyIEF1c3NhZ2VuIHZvbGxzdGFlbmRpZyBlcm5zdApnZW1laW50IHdhcj8KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogQmV0cmllYnNzeXN0ZW1lIGRpZSBkaWUgV2VsdCBub2NoIGJyYXVjaHQgKEFsa29ob2wsIDE5LiBPa3QgMjAwMywgMTY6MDg6NDUpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNjY1NzI0NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY2MTM1MzI1CmljaCBrb2VubnQgamEgamV0enQgYXVjaCBzYWdlbjogaWNoIGhhYiBkYXMgbmNpaHQgdm9sbHN0YWVuZGlnIGVybnN0IGdlbWVpbnQsCmRhcyBnZWh0IGltbWVyCgpBbGsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBCZXRyaWVic3N5c3RlbWUgZGllIGRpZSBXZWx0IG5vY2ggYnJhdWNodCAoQ3JvZnQsIDE5LiBPa3QgMjAwMywgMTY6MDk6MTMpOgp+IyEgcm49QWxrb2hvbCBydD0xMDY2NTcyNTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NjEzNTMyNQpJaHIgdmVyemFwZnQgZWNodCBob2Noa2xhc3NpZ2VuIFNjaG1hcnJuLiAgTXVzcyBpY2ggc2Nob24gc2FnZW4gOi0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IEJldHJpZWJzc3lzdGVtZSBkaWUgZGllIFdlbHQgbm9jaCBicmF1Y2h0IChWYW5pb24sIDE5LiBPa3QgMjAwMywgMTY6MDk6MjcpOgp+IyEgcm49QWxrb2hvbCBydD0xMDY2NTcyNTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NjEzNTMyNQpLbGFyIGdlaHQgZGFzLCB1bmQgZGVyIE5hbWUgZGVyIFJ1YnJpayB0YWV0ZSBzb2dhciBEZWluZSBBdXNzYWdlIHN0dWV0emVuIDopCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChXaGl0ZXRpZ2VyLCAxOS4gT2t0IDIwMDMsIDE4OjE5OjQ2KToKQ0hBT1NNQVNURVI6IEtla3MgaGF0IERpY2ggZ2VmaW5nZXJ0IQpFaW4gZW50c2V0emxpY2hlciBTY2hyZWkgaGFsbHQgdm9tIEZyaWVkaG9mIGhlcnVlYmVyLgpEZWluZSBGcmV1bmRpbiBLZWtzIHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1LiAKS2VrcyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCgpUaWdlciBmaW5kZXQgZGFzIGRvY2ggZXR3YXMgbWVya3d1ZXJkaWcuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBCZXRyaWVic3N5c3RlbWUgZGllIGRpZSBXZWx0IG5vY2ggYnJhdWNodCAoS2VsbHlidW5keSwgMTkuIE9rdCAyMDAzLCAyMDoxNjowMyk6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNjY1NzIzMzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY2MTM1MzI1CkluIGRpZXNlbSBadXNhbW1lbmhhbmcgaGFzc2UgaWNoIEV1cGhlbWlzbWVuIHdpZSAibmljaHQgZ2FueiB0cml2aWFsIiBvZGVyCiJuaWNodHRyaXZpYWwiIGF1cyBkZW4gTWF0aGV2b3JsZXN1bmdlbi4gCkJsb25kY2hlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQVNDSUktS3VlbnN0bGVyIGdlc3VjaHQgKFZhbmlvbiwgMTkuIE9rdCAyMDAzLCAyMDo1MTo1NCk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTEwNjY1ODU3NTAgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDY1NDgwMjczCk5laW4uIE1pdCBUcnVlIHR5cGUgZm9udHMgenUgbXVkZGVuIGlzIHVuY29vbC4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBCZXRyaWVic3N5c3RlbWUgZGllIGRpZSBXZWx0IG5vY2ggYnJhdWNodCAoTXVwZmVsLCAxOS4gT2t0IDIwMDMsIDIxOjE1OjE1KToKfiMhIHJuPVBhdHJ5biBydD0xMDY2NTcxODI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NjEzNTMyNQpBbmRlcmVyIFRpcHA6IERvdWdsYXMgUi4gSG9mc3RhZHRlciwgR29lZGVsIEVzY2hlciBCYWNoIC0gZGEgaXN0IGRhcwphdXNmdWVocmxpY2hzdCBlcmtsYWVydCAoaGFiIGljaCBuZXVsaWNoIG1hbCB3aWVkZXIgZ2VsZXNlbiBkZW4gU2NoaW5rZW4gOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIHNjaG1hcnJuc2NobWFybiAoT3JrdG9ldGVyLCAxOS4gT2t0IDIwMDMsIDIyOjA0OjM1KToKRGVpbmUgRnJldW5kaW4gS2VrcyB0ZWlsdCBEaXIgbWl0OiB3aWVkYSBkby4uLgpEdSB0ZWlsc3QgS2VrcyBtaXQ6IGhpaG8KS2VrcyBpc3QgZ2VyYWRlIG5pY2h0IGRhOiBNCgpPcmtULCBncnVlYmVsbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBhcnR5LUdlbGQgKEJvaW5nLCAxOS4gT2t0IDIwMDMsIDIyOjQ1OjExKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDY2NTk2Mjg1IHJnPXBhcnR5Cn4jISB0aWQ9MTA2NjU0NDM0OQpHaWIncyB6dSwgRHUgaGFzdCBEZWluZSBLb250b251bW1lciBoaW5nZXNjaHJpZWJlbi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUGFydHktR2VsZCAoQ2F0d2VhemxlLCAxOS4gT2t0IDIwMDMsIDIyOjQ5OjUzKToKfiMhIHJuPUJvaW5nIHJ0PTEwNjY1OTYzMTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY2NTQ0MzQ5CkVzIHdhciB6d2FyIHNjaHdpZXJpZyBkZW4gQmFua2xldXRlbiB6dSBlcmtsYWVyZW4sIGRhcyBpY2ggU2Fza2lhIGhlaXNzZSwgYWJlcgptaXQgZGVyIEF1c3JlZGUsIGRhcyBpY2ggbm9yZGlzY2hlLW5laWRlcmxhZW5kaXNjaGUgVm9yZmFocmVuIGhhYmUsIGhhYmVuIHNpZQpzaWNoIGF1c3JlaWNoZW5kIHZlcndpcnJlbiBsYXNzZW4gLi4uCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFBhcnR5LUdlbGQgKFZhbmlvbiwgMTkuIE9rdCAyMDAzLCAyMjo1MzozNik6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA2NjU5NjU5MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjY1NDQzNDkKU2ljaGVyIHdhciBXYW1waWdrZWl0IGFuIGRlbiBlbnRzcHJlY2hlbmRlbiBTdGVsbGVuIGF1Y2ggaGlsZnJlaWNoLgoKViosIHZlcmdhc3MgZGVuIFNtaWxleSwgYWJlciBkYXMga3JpZWd0IGlociBzY2hvbiBoaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBQYXJ0eS1HZWxkIChDYXR3ZWF6bGUsIDE5LiBPa3QgMjAwMywgMjI6NTk6MTUpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNjY1OTY4MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY2NTQ0MzQ5CkRhIGZlaGx0IG1pciBqYSBzY2hvbiB3aWVkZXIgZGVyIEJlenVnLiAKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERBVSAoQmFtYnVsa28sIDIwLiBPa3QgMjAwMywgMTA6MjU6MjkpOgp+IyEgcm49Tm9ubmUgcnQ9MTA2NjYzODIwOSByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMDY2NjM4MjA5ClZpZWxlaWNodCBwYXNzaWVydCwgYWJlciBkYW5uIGlzdCBlcyBrZWluIERBVSBzb25kZXJuIGVpbiBib2VzZXIKU3VwcG9ydC1pbi1kZW4tV2FobnNpbm4tdHJlaWJlci4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBXaWtpcGVkaWEgLSBBU0NJSSBjb3dzIChHcmltbWJvcm4sIDIwLiBPa3QgMjAwMywgMTQ6MjU6MTIpOgp+IyEgcm49R29yb2cgcnQ9MTA2NjY1MjY2NCByZz13d3cKfiMhIHRpZD0xMDY2NDc0NzE0CkhpZXIgd2lyZCBqYSBhdWNoIHZvbiBDb21wdXRlcm4gZ2VyZWRldC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2lraXBlZGlhIC0gQVNDSUkgY293cyAoR29yb2csIDIwLiBPa3QgMjAwMywgMTQ6MjY6MzApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjY2NTI3MTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY2NDc0NzE0Cldlbm4gbWVpbmVtIENoZWYgc293YXMgc2FnZW4gd3VlcmRlIHdhZXIgaWNoIGdlZmV1ZXJ0ICg7CgpHb3JvZyBHdWVyaWxsaWFrYWVtcGZlciBnZWdlbiBkYXMgT2JzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFdpa2lwZWRpYSAtIEFTQ0lJIGNvd3MgKEdyaW1tYm9ybiwgMjAuIE9rdCAyMDAzLCAxNDoyNzowNCk6Cn4jISBybj1Hb3JvZyBydD0xMDY2NjUyNzkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NjQ3NDcxNApBaCwgZWluIGtvbmZvcm1pc3Rpc2NoZXIgSmEtU2FnZXIgdW5kIFJhZGZhaHJlci4gTmFqYSwgbXVzcyBqZWRlciBzZWxiZXIKd2lzc2VuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUcml2aWFsIChBbGtvaG9sLCAyMC4gT2t0IDIwMDMsIDIzOjIwOjUzKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA2NjY4NDc2OSByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwNjY2ODQ0OTgKaG1tIHdlbm4gaWNoIGpldHp0IGFudHdvcnRlLCBkYW5uIHNhZ3QgTXVhZGliIHdpZWRlciwgaWNoIHByb3R6ZSBtaXQgbnV0emxvc2VtCldpc3Nlbi4gTnV0emxvcyBpc3QgZXMgaW4gZGVyIFRhdCwgYWxzbyBhbnR3b3J0ZSBpY2ggbmljaHQuCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcnRpa2VsIExpdmUgKE9ya3RvZXRlciwgMjAuIE9rdCAyMDAzLCAyMzoyMjo0NCk6ClRhbmdhbHVyIGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiAuLi5saXZlIGF1cyBzZWluZW0gS2F0emVua29lcmJjaGVuICh1ZWJlciBLb2VsbikuClBhc3NpdiBzZWl0OiAwNTo1NDoxOAoKQWhqYS4uIGxpdmUuLiBLYXR6ZSBiZWltIHNjaGxhZmVuLi4gc3Bhbm5lbmQhCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVHJpdmlhbCAoTXVhZGliLCAyMS4gT2t0IDIwMDMsIDEwOjAwOjAzKToKfiMhIHJuPUFsa29ob2wgcnQ9MTA2NjY4NDg1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjY2ODQ0OTgKZHUgbGFlc3N0IGRpY2ggYWJlciBlaW5mYWNoIGJlZWluZHJ1Y2tlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVHJpdmlhbCAoQWxrb2hvbCwgMjEuIE9rdCAyMDAzLCAxMDowMzoyNSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA2NjcyMzIwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjY2ODQ0OTgKdm9tIFBvbGl6ZWljaGVmPyBXZW4gd3VuZGVydHMuCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbGZlbiAoTGlhcmEsIDIxLiBPa3QgMjAwMywgMTg6MTc6MTMpOgpEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBoYWIgZW5kbGljaCBuZSBiZXNzZXJlIGFsdGVybmF0aXZlIHp1bQpEZWluIEZyZXVuZCBCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiBiYXVtc3RhbW0gZ2VmdW5kZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRmx1ZyAoR3JpbW1ib3JuLCAyMS4gT2t0IDIwMDMsIDIxOjU4OjU2KToKfiMhIG9uPVZhbmlvbiBvdD0xMDY2NzY2MTc0IG9nPXdpdHplCn4jISBybj1BbGJvaW4gcnQ9MTA2Njc2NTkwOSByZz13aXR6ZQp+IyEgdGlkPTEwNjY3NDk5MDYKVmVyc3RhbmRlbiBoYWJlbiBpaG4gc2ljaGVyIGRpZSBtZWlzdGVuLiBFcmtsYWVyZW4gbXVzc3RlIG1hbiBkZW4gbnUgd2lya2xpY2gKbmljaHQuIFdpZXZpZWxlIGRlbiAobmFjaGRlbSBzaWUgaWhuIHZlcnN0YW5kZW4gaGFiZW4pIHdpcmtsaWNoIHdpdHppZyBmYW5kZW4sCnN0ZWh0IGF1ZiBlaW5lbSBhbmRlcmVuIEJsYXR0LgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZsdWcgKENyb2Z0LCAyMS4gT2t0IDIwMDMsIDIxOjU5OjM0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDY2NzY2MzM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2Njc0OTkwNgpadW1hbCBBbGJvaW4gZWlnZW50bGljaCBhdWNoIG5pY2h0IGZ1ZXIgZGFzIEVya2xhZXJlbiBkZXIgV2l0emUgenVzdGFlbmRpZwppc3QuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRmx1ZyAoR3JpbW1ib3JuLCAyMS4gT2t0IDIwMDMsIDIxOjU5OjQyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDY2NzY2MzM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2Njc0OTkwNgpJY2ggbW9lY2h0ZSBoaWVyIG1hbCBlaW5lIExhbnplIGZ1ZXIgZGllIEZsdWdiZWdsZWl0ZXJJbm5lbiBicmVjaGVuOiBkaWUgc2luZAp1ZWJsaWNoZXJ3ZWlzZSBndXQgZ2VzY2h1bHQgdW5kIGJpZXRlbiBlaW5lbSBNb3NsZW0gdm9uIHNpY2ggYXVzIGtlaW5lbgpBbGtvaG9sIGFuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBGbHVnIChJbWRhLCAyMS4gT2t0IDIwMDMsIDIzOjA5OjUzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDY2NzY2MzgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2Njc0OTkwNgpTQ2hhZmZlbiBlcyBhYmVyIG5lZCBlcm5zdCB6dSBibGVpYmVuLCB3ZW5uIHNpY2gga2xlaW4gSW1kYSBkZW4gU2NoYWVkZWwgYW4KZGVyIFR1ZXIgdm9uIGRlcmVuIE1vZWNodGVnZXJuZmx1Z3pldWdlbiBlaW5zY2hsYWVndC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZsdWcgKEdyaW1tYm9ybiwgMjEuIE9rdCAyMDAzLCAyMzoxMTo0Nik6Cn4jISBybj1JbWRhIHJ0PTEwNjY3NzA1OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY2NzQ5OTA2CkVpbiBLbGFzc2lrZXIgenUgdW5nZWxpZWJ0ZW4gRmx1Z2dhZXN0ZW46ICJNb2VjaHRlbiBTaWUgU2Nod2Vpbj8gVmllbGxlaWNodApGaXNjaD8iIAoKR2RBW2V4LVJdIE9IZE11QmRFICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldWVzIHZvbSBDaGluZXNlbiAoR3JpbW1ib3JuLCAyMi4gT2t0IDIwMDMsIDE0OjMwOjU1KToKfiMhIHJuPUFueXNpZG9yYSBydD0xMDY2ODI1NzQ1IHJnPXBhcnR5Cn4jISB0aWQ9MTA2NTAxMTEzOApTaWUgbXVzcyBkYXMgc3BhZXRlc3RlbnMgd2lzc2VuIHdlbm4gc2llIGFtIEZhaHJrYXJ0ZW5zY2hhbHRlciBzdGVodCB1bmQgZGVyClNjaGFsdGVyYmVhbXRlIGZyZXVuZGxpY2ggZnJhZ3Q6ICJXb2hpbiBzb2xscyBkZW5uIG51biBnZWhlbiwgRnJvbGxlaW4/Ii4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VsdHNhbWUgR2lsZGUuLi4gKEJhbWJpLCAyMi4gT2t0IDIwMDMsIDE4OjA1OjM5KToKPFRhbmppYW4+IHNhZ3Q6IGljaCBtdXNzIGVyc3RtYWwgdGVzdGVuLi4KPFRhbmppYW4+IHNldHp0IHNpY2ggaGluIHVuZCBmYWVuZ3QgYW4genUgbWVkaXRpZXJlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IChUKVJhdW1zY2hpZmYgKE9sbGksIDIyLiBPa3QgMjAwMywgMjE6MzI6MDMpOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDY2ODUxMDUxIHJnPXd3dwp+IyEgdGlkPTEwNjY2ODQyMjgKbmVpbiwgaWNoIGtvbnZlcnRpZXIgZGFzIGpldHp0IG5pY2h0IDspCgpPbGxpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3NvICAoTW9vbnNoaW5lLCAyNC4gT2t0IDIwMDMsIDEyOjE3OjE0KToKQm9lc2UgdGVpbHQgRGlyIG1pdDogaWNoIGJpbiBpbW1lciBsaWViIApQCgpBamEgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUHl0aG9uLVByb2JsZW0gKEdyaW1tYm9ybiwgMjcuIE9rdCAyMDAzLCAxNTo1MTozNSk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwNjcyNjYxNTcgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTA2NzI2NjE1NwpBbHNvLCBtZWluIFB5dGhvbiBoYXQgbWl0IGRlbSBDb2RlIGdhbnogc2ljaGVyIGtlaW5lIG5lbm5lbnN3ZXJ0ZW4gUHJvYmxlbWUuCkthbm4gbWFuIGRlbiB2aWVsbGVpY2h0IG5vY2ggaW4gZWluZSBNYXVzIGthcHNlbG4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUHl0aG9uLVByb2JsZW0gKFdoaXRldGlnZXIsIDI3LiBPa3QgMjAwMywgMTU6NTQ6NDIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjcyNjYyOTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3MjY2MTU3CmNsYXNzIE1hdXM6CiAgIyBoaWVyIGJpdHRlIGRlbiBDb2RlIHZvbiB2b3JoaW4gcmVpbnBhc3RlbiwgbWl0IGpld2VpbHMgbWluLgogICMgZWluZW0gTGVlcnplaWNoZW4gRWlucnVlY2t1bmcKCm1hdXMgPSBNYXVzKCkKd2hpbGUgLi4uOiBtYXVzLmN5Y2xlcyA9IG1hdXMuc2VhcmNoKG1hdXMuY3ljbGVzKQoKCmthbm4gYWJlciBzZWluLCBkYXNzIGRhbm4gbm9jaCBuIGJpc3NjaGVuIHdhcyBuaWNodCBrbGFwcHQuLi4gbXVzc3Qgbm9jaCBzZWxmCnVuZCBzbyBlaW5mdWVnZW4uCgpUaWdlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUHl0aG9uLVByb2JsZW0gKEdyaW1tYm9ybiwgMjcuIE9rdCAyMDAzLCAxNjo0Njo0Myk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwNjcyNjY0ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3MjY2MTU3Ck9jaCwgZGFzIG1pdCBkZW0gRWluZnVlZ2VuIGRlciBNYXVzIGluIGRlbiBQeXRob24sIGRhcyB1ZWJlcm5pbW10IERyLiBFZGdhcgpkYW5uIHNjaG9uIGFsbGVpbmUuCgpHZEFbZXgtUl0gT0hkTXVCZEUgIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUHl0aG9uLVByb2JsZW0gKFdoaXRldGlnZXIsIDI3LiBPa3QgMjAwMywgMTY6NTE6NTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjcyNjk2MDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3MjY2MTU3CmNsYXNzIE1hdXM6CiAgcGFzcwpjbGFzcyBFZGdhcihQeXRob24pOgogIGRlZiBfX2luaXRfXyhzZWxmKTogc2VsZi5odW5ncmlnID0gMQogIGRlZiBpc3REb2t0b3Ioc2VsZik6IHJldHVybiAxCiAgZGVmIGlzcyhzZWxmLCB3YXMpOgogICAgaWYgaXNpbnN0YW5jZSh3YXMsIE1hdXMpIGFuZCBzZWxmLmh1bmdyaWc6CiAgICAgIHNlbGYuaHVuZ3JpZyA9IDAKICAgICAgZGVsIHdhcwoKc28gPyA6KQpUaWdlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUHl0aG9uLVByb2JsZW0gKENyb2Z0LCAyNy4gT2t0IDIwMDMsIDE2OjU3OjQ4KToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA2NzI2OTkxOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjcyNjYxNTcKSG0uICBEci4gRWRnYXIgaXN0IHp3YXIgc2VsdGVuLCBhYmVyIGRhbm4gd29obCBkb2NoIGhhZXVmaWdlciBhbHMKZWlubWFsIGluIHNlaW5lbSBnYW56ZW4gTGViZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUHl0aG9uLVByb2JsZW0gKFdoaXRldGlnZXIsIDI3LiBPa3QgMjAwMywgMTY6NTg6MzgpOgp+IyEgcm49Q3JvZnQgcnQ9MTA2NzI3MDI2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjcyNjYxNTcKa2FubnN0IGphIG5vY2ggbmVuIGNyb25qb2IgYmFzdGVsbiwgZGVyIGFsbGUgMiBtb25hdGUgZWRnYXIuaHVuZ3JpZyBhdWYgMQpzZXR6dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFB5dGhvbi1Qcm9ibGVtIChHcmltbWJvcm4sIDI3LiBPa3QgMjAwMywgMTY6NTk6NDQpOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDY3MjcwMzE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzI2NjE1NwpEci4gRWRnYXIgaXN0IHRhdHNhZWNobGljaCBudXIgZWlubWFsIGluIHNlaW5lbSBnYW56ZW4gTGViZW4uIEJlaSB0aWVmZXJnZWhlbgpGcmFnZW4gd2VuZGUgRGljaCBiaXR0ZSBhbiBlaW5lbiBQaGlsb3NvcGhlbiBEZWluZXMgVmVydHJhdWVucy4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogUHl0aG9uLVByb2JsZW0gKENyb2Z0LCAyNy4gT2t0IDIwMDMsIDE3OjAxOjA4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDY3MjcwMzg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzI2NjE1NwpXYXMgc2luZCAidGllZmVyZ2VoZW4gRnJhZ2VuIj8gIFZpZWxsZWljaHQgaGFiIGljaCBqYSB3ZWxjaGUgdW5kIGljaAp3ZWlzcyBlcyBuaWNodC4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBQeXRob24tUHJvYmxlbSAoV2hpdGV0aWdlciwgMjcuIE9rdCAyMDAzLCAxNzowMjowMSk6Cn4jISBybj1Dcm9mdCBydD0xMDY3MjcwNDY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzI2NjE1NwpUaWdlciBzY2hlbmt0IENyb2Z0IGVpbiAicyIgdW5kIEdyaW1tYm9ybiBkQSBbZXgtUl0gT0hkRXVCZEUgZWluICJkZW4iCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogUHl0aG9uLVByb2JsZW0gKENyb2Z0LCAyNy4gT2t0IDIwMDMsIDE3OjAyOjI0KToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA2NzI3MDUyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjcyNjYxNTcKOmRhbmt0IGRlbSBUaWdlci4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbGZlbi4uLiAoRGFya3dpbmcsIDI3LiBPa3QgMjAwMywgMTk6NTI6MjUpOgpMYXJpbmEgZGVua3Q6IGljaCBoYWIgbnVyIHp3ZWkgS25pZSAuLi4KCkRhcmt3aW5nLCB3dW5kZXJ0IGdhciBuaWNodHMgbWVoci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IDQgS3VnZWxuIChHcmltbWJvcm4sIDI4LiBPa3QgMjAwMywgMTM6NTg6MTYpOgp+IyEgcm49Tm9ubmUgcnQ9MTA2NzM0NTc1MiByZz1wdWl6Cn4jISB0aWQ9MTA2NzM0NTc1MgpEZXIgUmFkaXVzIGxhdXRldCBpbW1lciAiciIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogNCBLdWdlbG4gKFpvb2ssIDI4LiBPa3QgMjAwMywgMTQ6MTQ6NTkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjczNDU4OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3MzQ1NzUyCkljaCBkYWNodGUsICJyIiB3YWVyZSBkZXIgWmluc3NhdHouCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogNCBLdWdlbG4gKFdoaXRldGlnZXIsIDI4LiBPa3QgMjAwMywgMTQ6MTY6MjUpOgp+IyEgcm49Wm9vayBydD0xMDY3MzQ2ODk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzM0NTc1MgpJbW1lciBkaWVzZSBXaXdpcy4gR3JhdXNsaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiA0IEt1Z2VsbiAoR29yb2csIDI4LiBPa3QgMjAwMywgMTQ6MTc6NTkpOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDY3MzQ2OTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzM0NTc1MgpOb2UgciBpc3QgbmUgTXV0YXRpb24gZGllIGluIEhvbW96eWdvc2UgenUgcmVkdXppZXJ0ZXIgRmx1ZWdlbGdyb2Vzc2UgZnVlaHJ0LiAKTWZHCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiA0IEt1Z2VsbiAoR3JpbW1ib3JuLCAyOC4gT2t0IDIwMDMsIDE0OjIwOjExKToKfiMhIHJuPUJpZWxlZmVsZCBydD0xMDY3MzQ3MTUxIHJnPXB1aXoKfiMhIHRpZD0xMDY3MzQ1NzUyCk5laW4sIHNjaHJhZWcgaXN0IGZhbHNjaC4gRXMgZ2VodCBqYSB1bSBlaW5lIEViZW5lLCB1bmQgbmljaHQgdW0gZWluZQpTY2hyYWVnZS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogNCBLdWdlbG4gKEZvb2JhciwgMjguIE9rdCAyMDAzLCAxNTowNTozNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2NzM0NzIxMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjczNDU3NTIKV2llIGplZGVyIHdlaXNzIGlzdCByIGVpbmUgVmFyaWFibGUsIGRpZSBmdWVyIGFsbGVzIGJlbnV0enQgd2lyZCwgYXVzc2VyIGZ1ZXIKV29lcnRlciwgZGllIG1pdCAiciIgYmVnaW5uZW4uCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiA0IEt1Z2VsbiAoWm9vaywgMjguIE9rdCAyMDAzLCAxNTowNjozOCk6Cn4jISBvbj1ab29rIG90PTEwNjczNDk0Mjcgb2c9cHVpegp+IyEgcm49VmluY2VudCBydD0xMDY3MzQ5MzQ2IHJnPXB1aXoKfiMhIHRpZD0xMDY3MzQ1NzUyCkRhcyBuZW5udCBtYW4gRXJrZW5udG5pc3Byb3plc3MuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogNCBLdWdlbG4gKFpvb2ssIDI4LiBPa3QgMjAwMywgMTU6MDY6NTYpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNjczNDk5MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3MzQ1NzUyCkdpbHQgZGFzIGZ1ZXIgYWxsZSBCdWNoc3RhYmVuPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiA0IEt1Z2VsbiAoR3JpbW1ib3JuLCAyOC4gT2t0IDIwMDMsIDE3OjEwOjU1KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNjczNTczNTggcmc9cHVpegp+IyEgdGlkPTEwNjczNDU3NTIKIldhcyBuaWNodCBwYXNzdCB3aXJkIHBhc3NlbmQgZ2VtYWNodCIgdW5kICJXbyBrZWluIFN0ZWluIHBhc3N0LCBkYSBwYXNzdApTcGVpc3MiLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzbz8gKEJvZXNlLCAyOC4gT2t0IDIwMDMsIDE3OjE3OjQ4KToKTW9lcmRlcjpHZWlzdCBDZXJlZ3V0IHZvbiBUaG9sc10gRWluaWdlbiB3aXIgdW5zIGF1ZiB1bmVudHNjaGllZGVuLCBWYW5pcj8KW01vZXJkZXI6R2Vpc3QgQ2VyZWd1dCB2b24gVGhvbHNdIDwxNzowMDoxNj4KW1RvZDpMYXJzXSBDZXJlZ3V0IHZvbiBUaG9sIGhhdCBnZXJhZGUgVmFuaXIgdW1nZWJyYWNodC4gPDE3OjAwOjMyPgpbVG9kOkNlcmVndXQgdm9uIFRob2wgd2lyZCBmdWVyIERpY2ggZWluIHNjaG9lbmVzIEJlZ3JhZWJuaXMgYXJyYW5naWVyZW4uCiAgICAgPDE3OjAwOjMyPl0KCjp2ZXJ3dW5kZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNvPyAoSHVyYXhwcmF4LCAyOC4gT2t0IDIwMDMsIDE3OjE5OjA2KToKfiMhIHJuPUJvZXNlIHJ0PTEwNjczNTc4Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3MzU3ODY4CklzdCBkb2NoIGVpbiBwZXJmZWt0ZXMgVW5lbnRzY2hpZWRlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzM6IDQgS3VnZWxuIChBbGtvaG9sLCAyOC4gT2t0IDIwMDMsIDE5OjM0OjIyKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA2NzM2NTk0NiByZz1wdWl6Cn4jISB0aWQ9MTA2NzM0NTc1MgpuYXR1ZXJsaWNoIGhhYiBpY2ggTGVpYmkgbmljaHQgdmVyZ2Vzc2VuLCBhYmVyIGVzIGdpYnQgdmVyZWluemVsdGUgU2VrdW5kZW4gaW4KbWVpbmVtIExlYmVuLCBkYSBtdXNzIGljaCBsZWlkZXIgYW4gd2FzIGFuZGVyZXMgZGVua2VuCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1ZXJvZWZmbnVuZyAoWm9vaywgMjguIE9rdCAyMDAzLCAxOTo0MjoxNCk6Cn4jISBvbj1ab29rIG90PTEwNjczNjY1MjYgb2c9ZC52bGFuZAp+IyEgcm49U2hha2VkYmVlciBydD0xMDY3MzYyMDIwIHJnPWQudmxhbmQKfiMhIHRpZD0xMDY3MzYyMDIwCkdpYnRzIGRhbm4gaW4gV2ludGVyYnVyZyBuZXVlIEZQcz8KClpvb2suCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVlcm9lZmZudW5nIChTaGFrZWRiZWVyLCAyOC4gT2t0IDIwMDMsIDE5OjQ1OjQwKToKfiMhIHJuPVpvb2sgcnQ9MTA2NzM2NjUzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjczNjIwMjAKSmEuIEljaCBicmluZ2UgZWluIE1vZGVsbCBtaXQsIGluIGRlbSBtYW4gUkwtZm9yc2NoZW4ga2Fubi4gRGllIEZQcyB3ZXJkZW4KZGFubiBtYW51ZWxsIGlucyBNRyBlaW5nZXBmbGVndC4KClNoYWt5IC0gZ3Jvc3N6dWVnaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hsZWNodGVzIEVzc2VuIGltIE1HPyAoUGFsZSwgMjguIE9rdCAyMDAzLCAyMToxNjoxMSk6CkRqdG9tIHN0cmFobHQgdWViZXIgZGFzIGdhbnplIEdlc2ljaHQsIGFscyBlciBlaW5lbiBBc3NhbSB0cmlua3QuCkRqdG9tIGlzc3QgZWluZSBQb3J0aW9uIGZldHRpZ2VyIFRpbnRlbmZpc2NocmluZ2UuCkRqdG9tIHN0cmFobHQgdWViZXIgZGFzIGdhbnplIEdlc2ljaHQsIGFscyBlciBlaW5lbiBEYXJqZWVsaW5nIHRyaW5rdC4KRGp0b20ga25hYmJlcnQgZXR3YXMgR2ViYWVjay4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIERqdG9tLgpEanRvbSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCmdlcmFkZSBiZW9iYWNodGV0IC4uLiBBbHNvIGRlciBLb2NoIG11c3MgZWNodCBkYXMgTGV0enRlIHNlaW4sIG9kZXIgRGp0b20gaGF0Cm5lbiBzY2h3YWNoZW4gTWFnZW4uCgpHb3VybWV0IFBhbGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBXYWhyaGVpdCAuLi4gKExpYXJhLCAyOC4gT2t0IDIwMDMsIDIzOjA3OjU1KToKQWxrb2hvbCBydWZ0OiBpY2ggYmluIGltbWVyIHNjaHVsZApBbGtvaG9sLT5MaWFyYSBuaWNrdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4gCk1pZXplIHJ1ZnQ6IHNvd2llc28gO28pCkxlaWJpIHJ1ZnQ6IGFiZXIga2VpbiBhbGtvaG9sIGlzdCBhdWNoIGtlaW5lIGxvZXN1bmcgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBOYSBkYW5uIGFyYmVpdGV0IG1hbCBzY2hvZW4gKEdsb2luc29uLCAyOS4gT2t0IDIwMDMsIDE2OjI1OjU4KToKfiMhIHJuPUZvb2JhciBydD0xMDY3NDQxMTE2IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDY3NDM3NDY0CldhcnVtIGF1ZiBRdWFsaWZpa2F0aW9uZW4gYWNodGVuIHdlbm4gc2ljaCBJbWRhIGJld29yYmVuIGhhdD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTmEgZGFubiBhcmJlaXRldCBtYWwgc2Nob2VuIChBbGtvaG9sLCAyOS4gT2t0IDIwMDMsIDE2OjM1OjQ1KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwNjc0NDExNTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NDM3NDY0CmFuZGVyZSBmcmFnZSwgd2llc28gaXN0IGRhcyBkZXV0c2NoZSBCaWxkdW5nc3N5c3RlbSBhdWNoIG5pY2h0IGF1ZiBBdXNiaWxkdW5nCnZvbiBpcmdlbmR3ZW0gYXVzZ2VyaWNodGV0PwoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE5hIGRhbm4gYXJiZWl0ZXQgbWFsIHNjaG9lbiAoR2xvaW5zb24sIDI5LiBPa3QgMjAwMywgMTY6MzY6MTkpOgp+IyEgcm49QWxrb2hvbCBydD0xMDY3NDQxNzQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzQzNzQ2NApIZXksIGRhcyB3b2xsdGUgaWNoIGdlcmFkZSBhbHMgQW50d29ydCBhdWYgS3Jpa2tpdHMgRnJhZ2UgZ2ViZW4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogTmEgZGFubiBhcmJlaXRldCBtYWwgc2Nob2VuIChab29rLCAyOS4gT2t0IDIwMDMsIDE3OjEwOjA5KToKfiMhIG9uPVpvb2sgb3Q9MTA2NzQ0MzgwMyBvZz1kaXNrdXNzaW9uCn4jISBybj1JbWRhIHJ0PTEwNjc0NDM3NDcgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNjc0Mzc0NjQKRGFzIHdhcyBEdSB2ZXJudWVuZnRpZ2VzIERldXRzY2ggbmVubnN0Li4uIFdvIHdvaG5zdCBEdSBub2NobWE/IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IE5hIGRhbm4gYXJiZWl0ZXQgbWFsIHNjaG9lbiAoR3JpbW1ib3JuLCAyOS4gT2t0IDIwMDMsIDE3OjM0OjM2KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDY3NDQ1MjQ3IG9nPWRpc2t1c3Npb24KfiMhIHJuPUltZGEgcnQ9MTA2NzQ0NTEzNiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA2NzQzNzQ2NAoiLi4ud2VpdGdlaGVuZCBha3plbnRmcmVpZW4uLi4iICJEaWVzZW4gU3RhdHVzIHp1IGVycmVpY2hlbiBnaWJiZWQgbmF0dWVybGljaCIKCk5lZSwgaXN0IGtsYXIuIEluIFdpcmtsaWNoa2VpdCBiaXN0IER1IHZvbGxlciBXdXQgd2VpbCBEdSBEZWluZXMgQWt6ZW50ZXMKd2VnZW4gbmljaHQgZXJuc3RnZW5vbW1lbiB3aXJzdC4gU29sbGVuIHdpciBtYWwgaW4gYWxsZXIgUnVoZSBkYXJ1ZWJlciByZWRlbj8KQmVpIGVpbmVtIE1hbHZlbmJsdWV0ZW50ZWUsIER1PwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogTmEgZGFubiBhcmJlaXRldCBtYWwgc2Nob2VuIChJbWRhLCAyOS4gT2t0IDIwMDMsIDE3OjM4OjU5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDY3NDQ1Mjc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzQzNzQ2NApEdSB3aXJzdCBkb2NoIG5lZCBBa3plbnQgbWl0IERpYWxla3QgdmVyd2VjaHNlbG4gd29sbGVuLCBvZGVyPyAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOiBOYSBkYW5uIGFyYmVpdGV0IG1hbCBzY2hvZW4gKEdyaW1tYm9ybiwgMjkuIE9rdCAyMDAzLCAxNzo0MTo1OCk6Cn4jISBybj1JbWRhIHJ0PTEwNjc0NDU1Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NDM3NDY0CkFid2VpY2hlbmRlciBHZWJyYXVjaCBkZXIgZGV1dHNjaGVuIFNwcmFjaGUuIFNvIG9kZXIgc28uIEFiZXIgZGFzIGtvZW5uZW4gd2lyCmJlaSBiZXNhZ3RlbSBUZWUgamEgYXVzZGlza3V0aWVyZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBOYSBkYW5uIGFyYmVpdGV0IG1hbCBzY2hvZW4gKEltZGEsIDI5LiBPa3QgMjAwMywgMTc6NDQ6MzMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjc0NDU3MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NDM3NDY0CkljaCB3dWVyZCBtaWNoIGRhbm4gZG9jaCBmdWVyIG5lbiBIb3BmZW50ZWUgZW50c2NoZWlkZW4uCkFiZXIgaGFzdCBzY2hvbiBSZWNodDogV2FydW0gbmVuIFNhY2hzZW4gZWluc3RlbGxlbiwgd2VubiBkdSBuIFNjaHdhYmVuIGhhYmVuCmthbm5zdC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IE5hIGRhbm4gYXJiZWl0ZXQgbWFsIHNjaG9lbiAoR3JpbW1ib3JuLCAyOS4gT2t0IDIwMDMsIDE3OjU5OjMzKToKfiMhIHJuPUltZGEgcnQ9MTA2NzQ0NTg3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc0Mzc0NjQKQmVpIGRlciBBdXN3YWhsIG5laG1lIGljaCBkZW4gU2Nod2VkZW4uIE9kZXIgc29uc3QgZWluZW4gQXVzc2VyZGV1dHNjaGVuLgoKR2RBW2V4LVJdIE9IZE11QmRFICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM0OiBOYSBkYW5uIGFyYmVpdGV0IG1hbCBzY2hvZW4gKFpvb2ssIDMwLiBPa3QgMjAwMywgMDg6NDE6MjEpOgp+IyEgcm49QWxib2luIHJ0PTEwNjc0NjM5NzYgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNjc0Mzc0NjQKIkljaCBnZWIgbmljaHQgdmllbCBhdWYgU3RhdGlzdGlrZW4sIGFiZXIgbWFuY2hlIHNpbmQgYWV1c3NlcnN0IGF1c3NhZ2UtCmtyYWVmdGlnIiBmaW5kIGljaCBqYSBuZSB3YWhuc2lubmlnIGtvbnNpc3RlbnRlIEFyZ3VtZW50YXRpb24uIDspCgpab29rIHN1Y2h0IHNpY2ggYXVjaCBnZXJuIGRpZSBwYXNzZW5kZW4gUm9zaW5lbiByYXVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzU6IE5hIGRhbm4gYXJiZWl0ZXQgbWFsIHNjaG9lbiAoVmFuaW9uLCAzMC4gT2t0IDIwMDMsIDA4OjQ0OjIxKToKfiMhIHJuPVpvb2sgcnQ9MTA2NzQ5OTY4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc0Mzc0NjQKOTglIGRlciBBbW9rbGFldWZlciBlc3NlbiBhbSBNb3JnZW4gdm9yIGlocmVyIFRhdCBCcm90IG9kZXIgUmVpcy4gTWFuIHNvbGx0ZQpkYXMgaW1tZXIgaW4gc2VpbmVtIFdlbHRiaWxkIGJlcnVlY2tzaWNodGlnZW4hCgpWKiwgd2FzIGhhc3QgRHUgaGV1dGUgbW9yZ2VuIGdlZ2Vzc2VuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzY6IE5hIGRhbm4gYXJiZWl0ZXQgbWFsIHNjaG9lbiAoWm9vaywgMzAuIE9rdCAyMDAzLCAwODo0NDo0OSk6Cn4jISBybj1WYW5pb24gcnQ9MTA2NzQ5OTg2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc0Mzc0NjQKSWNoIGtuYWJiZXIgZ3JhZCBhbiBuZW0gUm9zaW5lbmJyb2V0Y2hlbi4uLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM3OiBOYSBkYW5uIGFyYmVpdGV0IG1hbCBzY2hvZW4gKFZhbmlvbiwgMzAuIE9rdCAyMDAzLCAwODo0NzoyMSk6Cn4jISBybj1ab29rIHJ0PTEwNjc0OTk4ODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NDM3NDY0CkltIGVyd2VpdGVydGVuIFNpbm5lIHd1ZXJkIGljaCBzYWdlbjogQnJvdC4gSWNoIGhvZmZlLCBEdSBoYXN0IERlaW5lCk1pdGFyYmVpdGVyIG5pY2ggYWxsenUgc2VociBnZW1vY2h0IDopCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzg6IE5hIGRhbm4gYXJiZWl0ZXQgbWFsIHNjaG9lbiAoWm9vaywgMzAuIE9rdCAyMDAzLCAwODo0ODoyMyk6Cn4jISBybj1WYW5pb24gcnQ9MTA2NzUwMDA0MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc0Mzc0NjQKQmlzaGVyIGJpbiBpY2ggbWl0IGVpbmVyIFNla3JldGFlcmluIGFsbGVpbmUuIFdpcmQgc2ljaCBhYmVyIGFlbmRlcm4uIFVuZAp1bSAxMS4wMCBVaHIgaGFiIGljaCBuZW4gSGF1ZmVuIFN0dWRpcyB1bSBtaWNoIHJ1bS4gOikKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40NjogTmEgZGFubiBhcmJlaXRldCBtYWwgc2Nob2VuIChBbGtvaG9sLCAzMC4gT2t0IDIwMDMsIDExOjEyOjExKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDY3NTA4NDUyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDY3NDM3NDY0CmljaCB2ZXJzdGVoZSBqZXR6dCBuaWNodCBnYW56LCB3YXMgZHUgbWVpbnN0LiBJY2ggaGFiZSB3ZWRlciB2ZXJzdWNodCBub2NoCkx1c3QsIGRhcyBUaGVtYSB6dSB3ZWNoc2Vsbi4gVW5kIGljaCBoYWJlIGF1Y2ggbmlvY2h0IHZvbiBkZWluZXIgRWluc3RlbGx1bmcKenUgRGlyIHVuZCB6dW0gUmVzdCBkZXIgV2VsdCBnZXJlZGV0LgoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDc6IE5hIGRhbm4gYXJiZWl0ZXQgbWFsIHNjaG9lbiAoQ3JvZnQsIDMwLiBPa3QgMjAwMywgMTE6MTM6MTQpOgp+IyEgcm49QWxrb2hvbCBydD0xMDY3NTA4NzMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzQzNzQ2NApPaC4gRGVyIERlY2ttYW50ZWwgZGVzIFNjaG1hcnJuIHdpcmQgYW5nZXpvZ2VuLiA6PgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp3ZXJnZSBzaW5kIGtvbWlzY2ggKEFsa29ob2wsIDMwLiBPa3QgMjAwMywgMTI6MzQ6NDcpOgpUaHVmaGlyIGtvbW10IGF1cyBkZW0gZ2VoZWltZW4gVHVubmVsc3lzdGVtIGdla3JvY2hlbi4KVGh1ZmhpciB3aXJkIGFsbG1hZWhsaWNoIHdpZWRlciBsYW5nc2FtZXIuClRodWZoaXIgZmxpZWd0IG5hY2ggTm9yZGVuLgoKV2llIHNjaG5lbGwga29lbm5lbiBad2VyZ2Uga3JpZWNoZW4/CgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWndlcmdlIHNpbmQga29taXNjaCAoV2hpdGV0aWdlciwgMzAuIE9rdCAyMDAzLCAxMjozODo1NCk6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNjc1MTM2ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NTEzNjg3CmJlc3RpbW10IHNjaG5lbGxlciBhbHMgc2Nod2ltbWVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41MzogTmEgZGFubiBhcmJlaXRldCBtYWwgc2Nob2VuIChHbG9pbnNvbiwgMzAuIE9rdCAyMDAzLCAxMzo0MTo1Nik6Cn4jISBybj1CYW1idWxrbyBydD0xMDY3NTE3NTk2IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDY3NDM3NDY0CktsYXIgaGFiZW4gZGllIGVpbmUgUmVjaHRmZXJ0aWd1bmcuIFJ1c3Npc2NoZSBQb2xpemlzdGVuIGhhYmVuIHNvZ2FyIGVpbmUgZGVyCmJlc3RlbiBkZXIgV2VsdDogRHUgaGFzdCBrZWluZW4gU3RlbXBlbCB2b20gT3JkbnVuZ3NhbXQ/IER1IHNpZWhzdCBzbyBhdXMgYWxzCmtvZW5udGUgZGljaCBkaWUgV2FjaGUgZXJzY2hyZWNrZW4/IER1IGhhc3QgYmVzdGltbXQgZWluIHdlbmlnIEdlbGQgaW4gZGVpbmVtClBhc3MgenUgbGllZ2VuIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU4OiBOYSBkYW5uIGFyYmVpdGV0IG1hbCBzY2hvZW4gKFpvb2ssIDMwLiBPa3QgMjAwMywgMTM6NTY6MTkpOgp+IyEgcm49QWxrb2hvbCBydD0xMDY3NTE4NTQ1IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDY3NDM3NDY0CkRhcyB3YXIgbnVuIGFiZXIgU3BpZWxlcmhpbGZlIQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU5OiBOYSBkYW5uIGFyYmVpdGV0IG1hbCBzY2hvZW4gKEFsa29ob2wsIDMwLiBPa3QgMjAwMywgMTM6NTc6MTMpOgp+IyEgcm49Wm9vayBydD0xMDY3NTE4NTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzQzNzQ2NAp3aWVzbyBfc3BpZWxlcl8taGlsZmU/CgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42MDogTmEgZGFubiBhcmJlaXRldCBtYWwgc2Nob2VuIChab29rLCAzMC4gT2t0IDIwMDMsIDEzOjU3OjM5KToKfiMhIHJuPUFsa29ob2wgcnQ9MTA2NzUxODYzMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc0Mzc0NjQKSWNoIHNlaCBlcyBqYSBhdWNoIGdyYWQuIDopIE5hamEsIGRhbm4gZnVlciBkaWUgc29uc3Qgbm9jaCBtaXRsZXNlbmRlbgpTcGllbGVyLiA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjYxOiBOYSBkYW5uIGFyYmVpdGV0IG1hbCBzY2hvZW4gKEFsa29ob2wsIDMwLiBPa3QgMjAwMywgMTM6NTg6MzUpOgp+IyEgcm49Wm9vayBydD0xMDY3NTE4NjU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzQzNzQ2NApkYW5uIHJpY2h0ZSBtaWNoIGZ1ZXIgbWVpbiBWZXJnZWhlbiAKCkFsa2kgKnJldW11ZXRpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUHVsc25pdHplciBQZmVmZmVya3VjaGVuIChHcmltbWJvcm4sIDMwLiBPa3QgMjAwMywgMTQ6NTk6MzYpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwNjc1MTI1NDAgb2c9cGFydHkKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDY3NTEyNDk5IHJnPXBhcnR5Cn4jISB0aWQ9MTA2NzQ2NDc2OApodHRwOi8vd3d3LmRldXRzY2hlcG9zdC5kZS8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IE5hIGRhbm4gYXJiZWl0ZXQgbWFsIHNjaG9lbiAoQmFtYmksIDMwLiBPa3QgMjAwMywgMTg6MjY6MjUpOgp+IyEgcm49SW1kYSBydD0xMDY3NDQ1ODczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzQzNzQ2NApJY2ggd3VlcmRlIHNhZ2VuLCB3ZW4gdm9uIGJlaWRlbiBkdSBlaW5zdGVsbHN0LCBoYWVuZ3QgZ2FueiBkYXZvbiBhYiwgd29mdWVyCmR1IGlobiBlaW5zdGVsbHN0LgoKVW5kIG5laW4sIGljaCBzYWcgamV0enQgbmljaHQsIHdlciBtaXIgd29mdWVyIGxpZWJlciB3YWVyZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFB1bHNuaXR6ZXIgUGZlZmZlcmt1Y2hlbiAoUm9uZGEsIDMxLiBPa3QgMjAwMywgMDE6MjM6NDkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjc1MjIzNzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NDY0NzY4CkdyaW1tYm9ybiwgaWNoIGRlbmtlIGVzIHdhZXJlIGVpbiB3dWVyZGlnZXIgVGF1c2NoLCB3ZW5uIER1IEFsYm9pbiB6dSBlaW5lbQpsZWNrZXJlbiBHYWVuc2Vlc3NlbiBlaW5sYWRlbiB3dWVyZGVzdCAoaWNoIGhhYmUgamEgZGllc2VzIEphaHIgbGVpZGVyIGtlaW5lClplaXQgZGF6dSwgYWxzbyBpc3QgbmVuIFBsYXR6IHdlbmlnZXIgenUgYmVzZXR6ZW4gOy0oICkgdW5kIGVyIGRhZnVlciBpbQpHZWdlbnp1ZyBzbyBlaW4tendlaSBLaWxvIFBmZWZmZXJrdWNoZW4gYmVpIERpciB2b3JiZWlicmluZ3Q/CgpSb25kYSAqa2FubiBHcmltbWJvcm5zIEdhZW5zZSBzZWhyIGVtcGZlaGxlbioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFB1bHNuaXR6ZXIgUGZlZmZlcmt1Y2hlbiAoR3JpbW1ib3JuLCAzMS4gT2t0IDIwMDMsIDA5OjIzOjAyKToKfiMhIHJuPVJvbmRhIHJ0PTEwNjc1NTk4Mjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NDY0NzY4CkRhcyB3aXJkIG5pY2h0IGdlaGVuLiBBdXMgVXJsYXVic2dydWVuZGVuIGdpYnRzIGRpZXNlcyBKYWhyIG51ciB6d2VpIEdhZW5zZSwKc3VtbWEgc3VtbWFydW0gZmFsbGVuIGhldWVyICg8LSBpY2ggYmluIHNwcmFjaGV0aG5pc2NoIGJlZ2FidCEpIHNpZWJlbgpHYWVuc2Vlc3NlcnBsYWV0emUgd2VnLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2FydW0gQXJiZWl0c2xvc2UgYm9lc2Ugc2luZDogKE5vbm5lLCAzMS4gT2t0IDIwMDMsIDA5OjM5OjMwKToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEwNjc1ODg5NTYgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNjc1MzIwMTAKQXByb3BvcyBLcmltaW5hbHN0YXRpc3Rpay4uLgoKLi4uIGxpZWZlcnQgaW50ZXJlc3NhbnRlIFphaGxlbi4gWnVtIEJlaXNwaWVsIEZhbGxzdGF0aXN0aWsgZnVlcgpTY2hsdWVzc2VsIDY3NTEgIkhlcmJlaWZ1ZWhyZW4gZWluZXIgS2VybmV4cGxvc2lvbiIgaW0gSmFocmUgMjAwMTogZWluCmVya2FubnRlciBGYWxsLCAxMDAlIEF1ZmtsYWVydW5nc3F1b3RlLgoKQWxsZXJkaW5ncyB3ZWlzcyBpY2ggbmljaHQsIG9iIGVzIGVpbiBUdWVya2Ugb2RlciBlaW4gSnVkJyB3YXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBXYXJ1bSBBcmJlaXRzbG9zZSBib2VzZSBzaW5kOiAoWm9vaywgMzEuIE9rdCAyMDAzLCAwOTo1MjowMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2NzU5MDE4MyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA2NzUzMjAxMApEYSBsYXMgaWNoIG5ldWxpY2ggbmUgaW50ZXJlc3NhbnRlIFN0ZWxsZW5hbnplaWdlIGRlcyBUSFcuIEVzIHd1cmRlIGVpbls1fgpJbmdlbmlldXIgZnVlciBXYXNzZXJhdWZiZXJlaXR1bmcgb2RlciBzbyBnZXN1Y2h0LiBTaWNoZXJsaWNoIG5pY2h0IHNvIGRvbGxlCmJlemFobHQsIHdlbm4gaWNoIGRhcyByZWNodCBpbSBLb3BmIGhhYmUuIEV0d2FzIGdlc3R1dHp0IGhhdHRlIGljaCBkYW5uIHVlYmVyCmRpZSBtaXQgdm9lbGxpZ2VyIFNlbGJzdHZlcnN0YWVuZGxpY2hrZWl0IGdlc2NocmllYmVuZSBaZWlsZSAKIkVpbnNhdHpvcnQ6IElyYWsiLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBXYXJ1bSBBcmJlaXRzbG9zZSBib2VzZSBzaW5kOiAoR3JpbW1ib3JuLCAzMS4gT2t0IDIwMDMsIDA5OjU0OjAwKToKfiMhIHJuPVpvb2sgcnQ9MTA2NzU5MDMyMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc1MzIwMTAKSGllciBoYXQgIkFlcnp0ZSBvaG5lIEdyZW56ZW4iIFBsYWthdHdlcmJ1bmcgZ2VtYWNodCB1bSBBZXJ6dGUgenUgZmluZGVuOgpNaWVzZSBCZXphaGx1bmcsIHVuZ2VyZWdlbHRlIEFyYmVpdHN6ZWl0ZW4sIGdlZmFlaHJsaWNoZSBVbWdlYnVuZywgcHJpbWl0aXZzdGUKTGViZW5zdW1zdGFlbmRlLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdhcnVtIEFyYmVpdHNsb3NlIGJvZXNlIHNpbmQ6IChJbWRhLCAzMS4gT2t0IDIwMDMsIDE2OjAwOjU1KToKfiMhIHJuPVpvb2sgcnQ9MTA2NzU5MDMyMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc1MzIwMTAKRGFzIFRIVyBtYWNodCBub2NoIGdhbnogYW5kZXJlIFNhY2hlbi4gWnVtIEJlaXNwaWVsOiAiU2llIGZhaHJlbiB1ZWJlcm1vcmdlbgpmdWVyIDQgV29jaGVuIG5hY2ggUnVzc2xhbmQuIE5laG1lbiBTaWUgRE0gMTAuMDAwIG1pdC4gRGllc2Ugd2VyZGVuIElobmVuIG5hY2gKQnVuZGVza2Fzc2Vuc2NobHVzcyBlcnNldHp0LiIgSGFiIGljaCBkb2NoIG1hbCBkYW5rZW5kIGFiZ2V3aW5rdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBXYXJ1bSBBcmJlaXRzbG9zZSBib2VzZSBzaW5kOiAoR2xvaW5zb24sIDMxLiBPa3QgMjAwMywgMTY6MDE6MzMpOgp+IyEgcm49SW1kYSBydD0xMDY3NjEyNDU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzUzMjAxMApXYXMgaGFzdCBkdSBnZWdlbiBSdXNzbGFuZD8gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogV2FydW0gQXJiZWl0c2xvc2UgYm9lc2Ugc2luZDogKEltZGEsIDMxLiBPa3QgMjAwMywgMTY6MDM6NTEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA2NzYxMjQ5MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc1MzIwMTAKSWNoIGhhYiB3YXMgZGFnZWdlbiBkZW0gU3RhYXQgMTBrRE0gZnVlciBuIGhhbGJlcyBKYWhyIHp1IGtyZWRpdGllcmVuIGFscyBEYW5rCmRhZnVlciBkYXNzIGljaCBrb3N0ZW5sb3MgZnVlciBpaG4gc2NoYWZmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFdhcnVtIEFyYmVpdHNsb3NlIGJvZXNlIHNpbmQ6IChHbG9pbnNvbiwgMzEuIE9rdCAyMDAzLCAxNjowNDo0NSk6Cn4jISBybj1JbWRhIHJ0PTEwNjc2MTI2MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NTMyMDEwCkljaCBoYWV0dGUgZ2FyIGtlaW5lIERNIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFdhcnVtIEFyYmVpdHNsb3NlIGJvZXNlIHNpbmQ6IChJbWRhLCAzMS4gT2t0IDIwMDMsIDE2OjA1OjQ1KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwNjc2MTI2ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NTMyMDEwCmRhbWFscyB3YXJucyBub2NoIERNLiBhYmVyIGljaCBoYXR0ZSBzaWUgbmF0dWVybGljaCB0cm90emRlbSBuZWQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBXYXJ1bSBBcmJlaXRzbG9zZSBib2VzZSBzaW5kOiAoR2xvaW5zb24sIDMxLiBPa3QgMjAwMywgMTY6MDc6MTUpOgp+IyEgcm49SW1kYSBydD0xMDY3NjEyNTgxIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDY3NTMyMDEwCkRpZSBQdW5rdGUhIENociEgRGllIFB1bmt0ZSEgQ2hyIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6ICJIdWRkbGVzIHVuZCBSYWV1bWUgbWl0IFNvbm5lIiBvZGVyICJNYWwgd2llZGVyIGVpbiB1bnZlcmRpZW50ZXIgVG9kIiAoWm9vaywgIDEuIE5vdiAyMDAzLCAxMjoyNDowNyk6Cn4jISBvbj1ab29rIG90PTEwNjc2ODU4MzUgb2c9ZC53YWxkCn4jISBybj1RaXRlc3MgcnQ9MTA2NzY1MzMwNCByZz1kLndhbGQKfiMhIHRpZD0xMDY3NjQ1NDYyCk9oLCBwcm9iaWVyIGRvY2gsIGRpZSBEZWxmZW4gZWluZmFjaCB2aWEgUEsgYXVzenVyb3R0ZW4uLi4gVmxsLiBsb2VzdCBzaWNoCmRhYmVpIGphIGlyZ2VuZGVpbiBQcm9ibGVtLi4uIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU29zbyAoRGVlcGJsdWUsICAxLiBOb3YgMjAwMywgMTQ6NDE6MjgpOgpWb24gWFlaOiBpY2ggYm9vdGUgbWFsIGViZW4gbmV1Li4uIChuYWNoIDEwIFRhZ2VuIGlzdCBXaW5kb3dzIG1lcmt3dWVyZGlnKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2Nod2VydGVyIHNpbmQgendhciBuaXgsIC4uLiAoQW5hdG9sLCAgMS4gTm92IDIwMDMsIDIxOjAxOjQ5KToKfiMhIG9uPUFuYXRvbCBvdD0xMDY3NzE2ODc1IG9nPXd3dwp+IyEgcm49TXVhZGliIHJ0PTEwNjc3MTY4NDkgcmc9d3d3Cn4jISB0aWQ9MTA2NzcwOTA4NwpEaWUgImNlcnRhaW4gc2l0dWF0aW9ucyIgYmV6aWVoZW4gc2ljaCBzaWNoZXIgYXVmIHNwaXR6ZSBGaW5nZXIKYW5kZXJlciBMZXV0ZS4uLi4gO28pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU2Nod2VydGVyIHNpbmQgendhciBuaXgsIC4uLiAoQXBvbGxvbmlhLCAgMS4gTm92IDIwMDMsIDIxOjE0OjQyKToKfiMhIHJuPUFuYXRvbCBydD0xMDY3NzE2OTA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzcwOTA4NwpGaW5nZXI/PyAoYzoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNjaHdlcnRlciBzaW5kIHp3YXIgbml4LCAuLi4gKEFuYXRvbCwgIDEuIE5vdiAyMDAzLCAyMToxNjo1NCk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTA2NzcxNzY4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc3MDkwODcKU2Nob25tYWwgbmViZW4gTXVhZGliIGdlc2Vzc2VuIHVuZCBkaWUgRmluZ2VyIGdlc3BpdHp0PyA7KSBEdSBsZWJzdCBkYW5uIC4uLgpnZWZhZWhybGljaC4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTY2h3ZXJ0ZXIgc2luZCB6d2FyIG5peCwgLi4uIChNdWFkaWIsICAxLiBOb3YgMjAwMywgMjE6MzQ6MTApOgp+IyEgcm49QW5hdG9sIHJ0PTEwNjc3MTc4MTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NzA5MDg3CmFsc28gbGFzcyBlcyBiZXNzZXIKLisKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFNjaHdlcnRlciBzaW5kIHp3YXIgbml4LCAuLi4gKEFwb2xsb25pYSwgIDEuIE5vdiAyMDAzLCAyMjozNDoyOCk6Cn4jISBybj1NdWFkaWIgcnQ9MTA2NzcxODg1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc3MDkwODcKQWxzbyBpbW1lciB3ZW5uIG1pY2ggd2VyIGF1ZmZvcmRlcnQsIGlyZ2VuZHdhcyB6dSBsYXNzZW4sIG1hY2ggaWNocyBhdXMgVHJvdHoKKmZnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU2Nod2VydGVyIHNpbmQgendhciBuaXgsIC4uLiAoTm9ubmUsICAxLiBOb3YgMjAwMywgMjI6Mzk6MDEpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwNjc3MjI0Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NzA5MDg3Ckxhc3MgZGFzIGpldHp0IG1hbCBtaXQgZGVtIFNleCBqZWRlbiBBYmVuZCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTY2h3ZXJ0ZXIgc2luZCB6d2FyIG5peCwgLi4uIChNb3Jnb3RoLCAgMS4gTm92IDIwMDMsIDIyOjQwOjQ5KToKfiMhIHJuPU5vbm5lIHJ0PTEwNjc3MjI3NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NzA5MDg3ClNpZSBuaW1tdCBkb2NoIG51ciBSdWVja3NpY2h0IGF1ZiBEaWNoLi4uc2NobGllc3NsaWNoIGJpc3QgRHUgYWx0LgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBTY2h3ZXJ0ZXIgc2luZCB6d2FyIG5peCwgLi4uIChOb25uZSwgIDEuIE5vdiAyMDAzLCAyMjo1Mzo0NSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNjc3MjI4NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NzA5MDg3Ck1pc3QsIGljaCBoYXR0ZSBkYXMgRmFrdHVtIGdlcmFkZSBzbyBndXQgdmVyZHJhZW5ndC4uLiAoYzsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFNjaHdlcnRlciBzaW5kIHp3YXIgbml4LCAuLi4gKEFuYXRvbCwgIDIuIE5vdiAyMDAzLCAxMjozNjowMyk6Cn4jISBvbj1BbmF0b2wgb3Q9MTA2Nzc3Mjk1NyBvZz13d3cKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDY3NzY3NzI3IHJnPXd3dwp+IyEgdGlkPTEwNjc3MDkwODcKCiJTaXplIERPRVMgbWF0dGVyISIgLS0gIk9oIGhlbGwsIGFub3RoZXIgb25lIHdpdGggYSBzaG9ydC4uLi4iCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6ICJIdWRkbGVzIHVuZCBSYWV1bWUgbWl0IFNvbm5lIiBvZGVyICJNYWwgd2llZGVyIGVpbiB1bnZlcmRpZW50ZXIgVG9kIiAoTW9vbnNoaW5lLCAgMy4gTm92IDIwMDMsIDExOjIzOjMzKToKfiMhIG9uPU1vb25zaGluZSBvdD0xMDY3ODU0OTg1IG9nPWQud2FsZAp+IyEgcm49Wm9vayBydD0xMDY3Njk0NTQ2IHJnPWQud2FsZAp+IyEgdGlkPTEwNjc2NDU0NjIKQWxzbyBpbiBkZXIgUmVnaW9uIFNjaGF0dGVud2VsdCBrb2VubnRlIGRlciBSTSBhdWNoIG1hbCB3YXMgdHVuLiA7LSkKCk1vb25zaGluZSBkdWNrdCBzaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6ICJIdWRkbGVzIHVuZCBSYWV1bWUgbWl0IFNvbm5lIiBvZGVyICJNYWwgd2llZGVyIGVpbiB1bnZlcmRpZW50ZXIgVG9kIiAoWm9vaywgIDMuIE5vdiAyMDAzLCAxMTozNTo0Nik6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTA2Nzg1NTAxMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc2NDU0NjIKTWFpbCBlcyBpaG0uIDopCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6ICJIdWRkbGVzIHVuZCBSYWV1bWUgbWl0IFNvbm5lIiBvZGVyICJNYWwgd2llZGVyIGVpbiB1bnZlcmRpZW50ZXIgVG9kIiAoQ3JvZnQsICAzLiBOb3YgMjAwMywgMTE6MzY6MzYpOgp+IyEgcm49Wm9vayBydD0xMDY3ODU1NzQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzY0NTQ2MgpEdSBzcHJpY2hzdCB2b24gZGlyIGluIGRlciBkcml0dGVuIFBlcnNvbj8gIFNvd2FzLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiAiSHVkZGxlcyB1bmQgUmFldW1lIG1pdCBTb25uZSIgb2RlciAiTWFsIHdpZWRlciBlaW4gdW52ZXJkaWVudGVyIFRvZCIgKE1vb25zaGluZSwgIDMuIE5vdiAyMDAzLCAxMTozNzozNik6Cn4jISBybj1Dcm9mdCBydD0xMDY3ODU1Nzk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzY0NTQ2MgptYWlsIHJtX1NjaGF0dGVud2VsdCBnZWh0IGFuIFJtRHVtbXk/IFNvc28uIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6ICJIdWRkbGVzIHVuZCBSYWV1bWUgbWl0IFNvbm5lIiBvZGVyICJNYWwgd2llZGVyIGVpbiB1bnZlcmRpZW50ZXIgVG9kIiAoWm9vaywgIDMuIE5vdiAyMDAzLCAxMTozOTozNSk6Cn4jISBybj1Dcm9mdCBydD0xMDY3ODU1Nzk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzY0NTQ2MgpTZWxic3R2ZXJzdGFlbmRsaWNoIHR1biB3aXIgZGFzLiAKClpvb2suCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3BhbSAuLi4gKFdoaXRldGlnZXIsICAzLiBOb3YgMjAwMywgMTI6Mzc6MDkpOgpVbmQgd2llZGVyIGVpbmUgU3BhbW1haWwuLi4KQmV0cmVmZjogIlN0b3AgZW1haWxzIGxpa2UgdGhpcyBvbmUuLiIgLi4uIDspClRpZ2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbnVuIGJla29tbXQgbWFuIHNvZ2FyIEdyaXBwZSBiZWkgZWJheSAoR3JpbW1ib3JuLCAgMy4gTm92IDIwMDMsIDEyOjM5OjU3KToKfiMhIHJuPVRhbmdhbHVyIHJ0PTEwNjc4NTk0OTMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNjc4NTk0OTMKTnUgaGFnZyBkb2NoIG5pY2ggc28gYXVmIGRlbiBTYWdnc2VuIHJ1bSwgRHUgYmxvZWRlciBXZXNzaSwgRHUuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBudW4gYmVrb21tdCBtYW4gc29nYXIgR3JpcHBlIGJlaSBlYmF5IChUYW5nYWx1ciwgIDMuIE5vdiAyMDAzLCAxMjo0MzozMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2Nzg1OTU5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc4NTk0OTMKbXVlc3N0ZSBlcyBkYW5uIG5pY2h0IEdyaWJiZSBoZWlzc2VuID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHZXRyYWVua2Vzb25kZXJ3dWVuc2NoZS4uLiAoQ2F0d2VhemxlLCAgNC4gTm92IDIwMDMsIDE5OjA2OjA4KToKfiMhIG9uPVZhbXBpcmEgb3Q9MTA2Nzk1OTk0MiBvZz1wYXJ0eQp+IyEgcm49TW9udGFudXMgcnQ9MTA2Nzk0NDMzOCByZz1wYXJ0eQp+IyEgdGlkPTEwNjc5NDQzMzgKSWNoIHdpbGwgWml2aS1CbHV0LCB1bmQgendhciBmcmlzY2hlcyEKVmFtcCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR2V0cmFlbmtlc29uZGVyd3VlbnNjaGUuLi4gKENhdHdlYXpsZSwgIDQuIE5vdiAyMDAzLCAxOTowNjoxMik6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMDY3OTU5OTgwIG9nPXBhcnR5Cn4jISBybj1WYW1waXJhIHJ0PTEwNjc5NTk5NDIgcmc9cGFydHkKfiMhIHRpZD0xMDY3OTQ0MzM4CkdpYnQgc2ljaGVyIG51ciBTb2lsZW50IEdydWVuIGluIFNvaWxlbnQgTWlsY2guCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR2V0cmFlbmtlc29uZGVyd3VlbnNjaGUuLi4gKENhdHdlYXpsZSwgIDQuIE5vdiAyMDAzLCAxOTowNjoyMCk6Cn4jISBvbj1NYWhhcmV0IG90PTEwNjc5NjAwMTggb2c9cGFydHkKfiMhIHJuPUdsb2luc29uIHJ0PTEwNjc5NTk5ODAgcmc9cGFydHkKfiMhIHRpZD0xMDY3OTQ0MzM4CkRhcyBCbHV0IGthbSB3b2hsIHp1IHNwYWV0LgpJc3QgZGFzIGVpZ2VudGxpY2ggd2llIGVpbiBHYWVzdGUtRWludHJhZyB6dSBiZWhhbmRlbG4sIHdlbm4gc2ljaCBkZXIgU3BpZWxlcgpnbGVpY2ggbmFjaCBkZW0gQXJ0aWtlbHNjaHJlaWJlbiBsb2VzY2h0PwoKTWFoYSwgbmV1Z2llcmlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR2V0cmFlbmtlc29uZGVyd3VlbnNjaGUuLi4gKENhdHdlYXpsZSwgIDQuIE5vdiAyMDAzLCAxOTowNjoyMik6Cn4jISBvbj1ab29rIG90PTEwNjc5NjAwNDYgb2c9cGFydHkKfiMhIHJuPU1haGFyZXQgcnQ9MTA2Nzk2MDAxOCByZz1wYXJ0eQp+IyEgdGlkPTEwNjc5NDQzMzgKRnJhZyBtYWwgR3JpbW1ib3JuLi4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogR2V0cmFlbmtlc29uZGVyd3VlbnNjaGUuLi4gKENhdHdlYXpsZSwgIDQuIE5vdiAyMDAzLCAxOTowNjoyNCk6Cn4jISBvbj1NYWhhcmV0IG90PTEwNjc5NjAwNTggb2c9cGFydHkKfiMhIHJuPVpvb2sgcnQ9MTA2Nzk2MDA0NiByZz1wYXJ0eQp+IyEgdGlkPTEwNjc5NDQzMzgKR3JpbW1ib3JuPwoKTWFoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVzIHdhciBlaW5tYWwgZWluZSBiYXR0ZXJpZWJldHJpZWJlbmUgV2VpaG5hY2hzdGtlcnplLi4uIChHcmltbWJvcm4sICA0LiBOb3YgMjAwMywgMjA6MTU6NDUpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTA2Nzk3MzEzOSByZz13aXR6ZQp+IyEgdGlkPTEwNjc5NzMxMzkKSG1tLCBpc3QgZGFzIGpldHp0IGVpbmUgR1dLIDkwOTEsIG9kZXIgZWluZSBHV1IgOTA5MT8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogIkh1ZGRsZXMgdW5kIFJhZXVtZSBtaXQgU29ubmUiIG9kZXIgIk1hbCB3aWVkZXIgZWluIHVudmVyZGllbnRlciBUb2QiIChHcmltbWJvcm4sICA0LiBOb3YgMjAwMywgMjA6NTg6MTIpOgp+IyEgcm49RGFya2xvciBydD0xMDY3OTc1ODIwIHJnPWQud2FsZAp+IyEgdGlkPTEwNjc2NDU0NjIKQWJlciBiaXR0ZSB1bnRlciBkZXIgSG9laGVuc29ubmUuICJCbGFkZSIgZ2lidCBkYSBuZXR0ZW4KQW5zY2hhdXVuZ3N1bnRlcnJpY2h0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGZXVlcnphbmdlLi4uIChDYXR3ZWF6bGUsICA1LiBOb3YgMjAwMywgMTA6NDA6MTYpOgp+IyEgb249SW1kYSBvdD0xMDY3OTg1MjQyIG9nPXBhcnR5Cn4jISBybj1Nb250YW51cyBydD0xMDY3OTQzNjg4IHJnPXBhcnR5Cn4jISB0aWQ9MTA2Nzk0MzY4OApPZWhoaCwgamEuIE4gZ3Jvc3NlbiBzb2dhci4gQmxvc3Mgd2Vpc3NpY2ggbm9jaCBuZWQgb2JiaWNoIHVlYmVyaGF1cHQKaGlua29tbS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGZXVlcnphbmdlLi4uIChDYXR3ZWF6bGUsICA1LiBOb3YgMjAwMywgMTA6NDA6MjApOgp+IyEgb249Rm9vYmFyIG90PTEwNjc5ODUzMDQgb2c9cGFydHkKfiMhIHJuPUltZGEgcnQ9MTA2Nzk4NTI0MiByZz1wYXJ0eQp+IyEgdGlkPTEwNjc5NDM2ODgKSW1kYSBoYXQgJ25lbiBncm9zc2VuPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdWViZXJ3ZWlzZW4gYml0dGUgYXVjaCAgYmlzIHp1bSAyMC4xMS4gKENhdHdlYXpsZSwgIDUuIE5vdiAyMDAzLCAxNDowMjoxMyk6Cn4jISBybj1DYXNzYW5kcmEgcnQ9MTA2ODAzNzI0OCByZz1wYXJ0eQp+IyEgdGlkPTEwNjc5Nzg0NTgKSWNoIGhhc3NlIGRpZSBCcmV0dGVyIC4uLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB1ZWJlcndlaXNlbiBiaXR0ZSBhdWNoICBiaXMgenVtIDIwLjExLiAoWm9vaywgIDUuIE5vdiAyMDAzLCAxNDozMDoyMyk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA2ODAzNzMzMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc5Nzg0NTgKUHJvZ2cgc2llIG5ldS4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiAiSHVkZGxlcyB1bmQgUmFldW1lIG1pdCBTb25uZSIgb2RlciAiTWFsIHdpZWRlciBlaW4gdW52ZXJkaWVudGVyIFRvZCIgKFpvb2ssICA1LiBOb3YgMjAwMywgMTQ6MzY6MzkpOgp+IyEgb249Wm9vayBvdD0xMDY4MDM5MzkxIG9nPWQud2FsZAp+IyEgcm49TW9udGFudXMgcnQ9MTA2ODAzNjQ1NiByZz1kLndhbGQKfiMhIHRpZD0xMDY3NjQ1NDYyCldvdywgRHUga2VubnN0IGRpZSBTaXItUXVlc3Q/IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogIkh1ZGRsZXMgdW5kIFJhZXVtZSBtaXQgU29ubmUiIG9kZXIgIk1hbCB3aWVkZXIgZWluIHVudmVyZGllbnRlciBUb2QiIChNb250YW51cywgIDUuIE5vdiAyMDAzLCAxNDo0Mjo0NCk6Cn4jISBybj1ab29rIHJ0PTEwNjgwMzkzOTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NjQ1NDYyCktsYXIsIGljaCBrYW5uIG1pY2ggc29nYXIgZHJhbiBlcmlubmVybiwgd2llIG1pY2ggQ2F0dHkgbWFsIChkYW1hbHMgbm9jaCBhbHMKU2hlcmlmZikgYXVzIGVpbmVtIGJ1Z2dlbmRlbiBSYXVtIG9obiBBdXNnYWVuZ2UgZ2VyZXR0ZXQgaGF0LgpEYW5rZSwgQ2F0dHkuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogIkh1ZGRsZXMgdW5kIFJhZXVtZSBtaXQgU29ubmUiIG9kZXIgIk1hbCB3aWVkZXIgZWluIHVudmVyZGllbnRlciBUb2QiIChDYXR3ZWF6bGUsICA1LiBOb3YgMjAwMywgMTU6MDI6MTcpOgp+IyEgcm49TW9udGFudXMgcnQ9MTA2ODAzOTc2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc2NDU0NjIKU293YXMgaGFiIGljaCBnZW1hY2h0PyBCb2FoLCB3YXIgaWNoIHdlaWNoIDotKSkpCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiAiSHVkZGxlcyB1bmQgUmFldW1lIG1pdCBTb25uZSIgb2RlciAiTWFsIHdpZWRlciBlaW4gdW52ZXJkaWVudGVyIFRvZCIgKEdyaW1tYm9ybiwgIDUuIE5vdiAyMDAzLCAxNTowNzo1MCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA2ODA0MDkzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc2NDU0NjIKRGVzd2VnZW4gYmlzdCBEdSBqYSBhdWNoIG5pY2h0IG1laHIgU2hlcmlmZi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6ICJIdWRkbGVzIHVuZCBSYWV1bWUgbWl0IFNvbm5lIiBvZGVyICJNYWwgd2llZGVyIGVpbiB1bnZlcmRpZW50ZXIgVG9kIiAoTW9udGFudXMsICA1LiBOb3YgMjAwMywgMTU6MTU6MjcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjgwNDEyNzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NjQ1NDYyCk5hamEgaWNoIGdsYXViZSBKb2Yga2FtIGF1Y2ggdm9yYmVpIHVuZCBmcmFndGUgIldhcyBpc3QgaGllciBkZW5uIGxvcyIgdW5kICJXbwpiaW4gaWNoIHVlYmVyaGF1cHQ/IiwgdW5kIGRhIG11c3N0ZXN0IGR1IGdsYXViZSBpY2ggaGFuZGVsbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiAiSHVkZGxlcyB1bmQgUmFldW1lIG1pdCBTb25uZSIgb2RlciAiTWFsIHdpZWRlciBlaW4gdW52ZXJkaWVudGVyIFRvZCIgKExpYXJhLCAgNS4gTm92IDIwMDMsIDE1OjE2OjE3KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNjgwNDE3Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NjQ1NDYyCkpvZiBpZGVsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZldWVyemFuZ2UuLi4gKEltZGEsICA1LiBOb3YgMjAwMywgMTU6MzU6NTgpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNjgwMjUyMjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3OTQzNjg4CkphLiBGZXVlcnphbmdlbmtlc3NlbC4gV2VtbWEgYXVzbmFobXN3ZWlzZSBtYWwgd2FzIEVybnN0IG1laW50Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiAiSHVkZGxlcyB1bmQgUmFldW1lIG1pdCBTb25uZSIgb2RlciAiTWFsIHdpZWRlciBlaW4gdW52ZXJkaWVudGVyIFRvZCIgKFR3aWxpZ2h0LCAgNS4gTm92IDIwMDMsIDE1OjM3OjMyKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNjgwMzY0NTYgcmc9ZC53YWxkCn4jISB0aWQ9MTA2NzY0NTQ2MgpLbGFyIGV5LCBqZWRlc21hbCwgd2VubiBtZWluIFNvaG4gbWFsIHdhcyB2b24gbWlyIHdpbGwsIGxvZyBpY2ggYXVzPyBTdXBlcgp0b2xsZXIgVm9yc2NobGFnLi4uCgpUd2lsaWdodCAqa29wcCBzY2h1ZXR0ZWxuZCoKClAuUy46IFdpZSB3YWVycyBtaXQgbmVtIFp3YW5nc2F1c2xvZ2dlbiBuYWNoIDEwIG1pbiBJZGVsbj8gOikpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiAiSHVkZGxlcyB1bmQgUmFldW1lIG1pdCBTb25uZSIgb2RlciAiTWFsIHdpZWRlciBlaW4gdW52ZXJkaWVudGVyIFRvZCIgKENyb2Z0LCAgNS4gTm92IDIwMDMsIDE1OjQxOjE4KToKfiMhIHJuPVR3aWxpZ2h0IHJ0PTEwNjgwNDMwNTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NjQ1NDYyCkRhcyBrb2VubnRlIGRlaW4gQ2xpZW50IHVlYmVybmVobWVuLiAgV29iZWkgZGVuIGtvZW5udGVzdCBkdSBhdWNoIGdsZWljaApkYXp1IGVyemllaGVuIGRhcyBlciBkaWNoIGJlaSB3aWVkZXJob2x0ZW0gU29ubmVuYnJ1dHplbG4gbm9jaCBtaXQgZ2VudWcKTFBzIGF1c2xvZ2d0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6ICJIdWRkbGVzIHVuZCBSYWV1bWUgbWl0IFNvbm5lIiBvZGVyICJNYWwgd2llZGVyIGVpbiB1bnZlcmRpZW50ZXIgVG9kIiAoV2hpdGV0aWdlciwgIDUuIE5vdiAyMDAzLCAxNTo0MTo1Myk6Cn4jISBybj1Dcm9mdCBydD0xMDY4MDQzMjc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzY0NTQ2MgpEYSB3YWVybiB3aXIgd2llZGVyIGJlaW0gQ2xpZW50PC0+VGVsbmV0LURpbGVtbWEgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6ICJIdWRkbGVzIHVuZCBSYWV1bWUgbWl0IFNvbm5lIiBvZGVyICJNYWwgd2llZGVyIGVpbiB1bnZlcmRpZW50ZXIgVG9kIiAoVHdpbGlnaHQsICA1LiBOb3YgMjAwMywgMTU6NDU6MDEpOgp+IyEgcm49Q3JvZnQgcnQ9MTA2ODA0MzI3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc2NDU0NjIKKmdyaW5zKiBkYXMgd2lyZCBqZXR6dCB1bnNjaG1hcnJpZzoKSmEga29lbm50ZSBlciwgdm9yYXVzZ2VzZXR6dCBtYW4gaGF0IHNvbmVuIEtsaWVudC4gTWVpbmVyIEFuc2ljaHQgbmFjaCwgc29sbHRlCm5lbiBNdWQgYXVjaCBvaG5lIFptdWQvVEYgc3BpZWxiYXIgc2Vpbi4gTWFuIGthbm4gamEgbmV0IGJlaSBqZWRlbSBQcm9ibGVtCnNhZ2VuOiBFeSwga2F1ZiBkaXIgWm11ZCwgZGFubiBoYXN0ZSBkYXMgbmltbWVyLiA6KSkgCgpOaXggZnVlciB1bmd1dCwgYWJlciBlcyBzb2xsIG5vY2ggVGVsbmV0dGVyIGdlYmVuIDopKQoKVHdpbGlnaHQgbWl0IHp3aWVsaWNodGlnZW4gR3J1ZXNzZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiAiSHVkZGxlcyB1bmQgUmFldW1lIG1pdCBTb25uZSIgb2RlciAiTWFsIHdpZWRlciBlaW4gdW52ZXJkaWVudGVyIFRvZCIgKFpvb2ssICA1LiBOb3YgMjAwMywgMTU6NDY6NDApOgp+IyEgcm49VHdpbGlnaHQgcnQ9MTA2ODA0MzUwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc2NDU0NjIKWm9vayBpc3Qgc2VpbmVyemVpdCBudXIgbWl0IFRlbG5ldCBTZWhlciBnZXdvcmRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiAiSHVkZGxlcyB1bmQgUmFldW1lIG1pdCBTb25uZSIgb2RlciAiTWFsIHdpZWRlciBlaW4gdW52ZXJkaWVudGVyIFRvZCIgKENyb2Z0LCAgNS4gTm92IDIwMDMsIDE1OjU1OjI1KToKfiMhIHJuPVR3aWxpZ2h0IHJ0PTEwNjgwNDM1MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NjQ1NDYyClNwaWVsYmFyIGlzdCBlcyBzbyBvZGVyIHNvLiAgTWFuIG11c3MgdmllbGxlaWNodCBvZWZ0ZXIgTGFycyBiZW11ZWhlbiwKYWJlciB3ZW5uIG1hbiBuaWNodCBnZXJhZGUgbWV0emVsdCwgbWFjaHQgZGFzIGphIGF1Y2ggbmljaHRzLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiAiSHVkZGxlcyB1bmQgUmFldW1lIG1pdCBTb25uZSIgb2RlciAiTWFsIHdpZWRlciBlaW4gdW52ZXJkaWVudGVyIFRvZCIgKFpvb2ssICA1LiBOb3YgMjAwMywgMTU6NTY6MDkpOgp+IyEgcm49Q3JvZnQgcnQ9MTA2ODA0NDEyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc2NDU0NjIKRG9jaCwgbWFuIGthbm4gc2ljaCBuaWNodCBzbyBzY2huZWxsIGR1cmNoIGRpZSBUb2Rlc3NlcXVlbnogc2tyaXB0ZW4gd2llIG1pdAp0Zi9aTXVkLgoKWm9vay4KLiMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiAiSHVkZGxlcyB1bmQgUmFldW1lIG1pdCBTb25uZSIgb2RlciAiTWFsIHdpZWRlciBlaW4gdW52ZXJkaWVudGVyIFRvZCIgKENyb2Z0LCAgNS4gTm92IDIwMDMsIDE1OjU4OjIxKToKfiMhIHJuPVpvb2sgcnQ9MTA2ODA0NDE2OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc2NDU0NjIKTnVqYS4gV2VubiBtYW4gYWJlciBncmFkIGFmayBpc3QsIG11c3MgbWFuIGVoIG51ciBub2NoICJiZXRlIiBlaW50aXBwZW4uICBWb24KR2VzY2h3aW5kaWdrZWl0c3ZvcnRlaWwga2FubiBkYSBrZWluZSBSZWRlIHNlaW4gLC0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6ICJIdWRkbGVzIHVuZCBSYWV1bWUgbWl0IFNvbm5lIiBvZGVyICJNYWwgd2llZGVyIGVpbiB1bnZlcmRpZW50ZXIgVG9kIiAoWm9vaywgIDUuIE5vdiAyMDAzLCAxNTo1OTozMyk6Cn4jISBybj1Dcm9mdCBydD0xMDY4MDQ0MzAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzY0NTQ2Mgo6c2Nod2Vua3Qgc2VpbiBGYWVobmNoZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6ICJIdWRkbGVzIHVuZCBSYWV1bWUgbWl0IFNvbm5lIiBvZGVyICJNYWwgd2llZGVyIGVpbiB1bnZlcmRpZW50ZXIgVG9kIiAoR3dlbmlsaSwgIDUuIE5vdiAyMDAzLCAxNzoxOTo1MCk6Cn4jISBybj1Dcm9mdCBydD0xMDY4MDQ0MTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2NzY0NTQ2MgpEYSBJaHIgZGFzIGdlcmFkZSBhbnNwcmVjaHQ6IEZhcmJ0cmlnZ2VyIHVuZCBlaW4gcmljaHRpZ2VzIFNwZWVkeSB3YWVyZW4KaGlsZnJpZWNoLi4uIDopCihEZW5uOiBFcyBnaWJ0IG5vY2ggcmVpbmUgVGVsbmV0dGVyaW5uZW4uLi4pClZpZWxlbiBEYW5rIHNjaG9uIGltIHZvcmF1cywgKmhvZmZudW5nc3ZvbGwgbGFlY2hlbG5kKgpHdy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiAiSHVkZGxlcyB1bmQgUmFldW1lIG1pdCBTb25uZSIgb2RlciAiTWFsIHdpZWRlciBlaW4gdW52ZXJkaWVudGVyIFRvZCIgKEd3ZW5pbGksICA1LiBOb3YgMjAwMywgMTc6MjA6MTIpOgp+IyEgcm49Q3JvZnQgcnQ9MTA2ODA0NDEyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc2NDU0NjIKaG5nbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6ICJIdWRkbGVzIHVuZCBSYWV1bWUgbWl0IFNvbm5lIiBvZGVyICJNYWwgd2llZGVyIGVpbiB1bnZlcmRpZW50ZXIgVG9kIiAoV2hpdGV0aWdlciwgIDUuIE5vdiAyMDAzLCAxNzoyMDoxOCk6Cn4jISBybj1Hd2VuaWxpIHJ0PTEwNjgwNDkxOTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NjQ1NDYyCkdlbmF1LCBlaW4gTVVELUViZW5lbi1BbmZhZXJiIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6ICJIdWRkbGVzIHVuZCBSYWV1bWUgbWl0IFNvbm5lIiBvZGVyICJNYWwgd2llZGVyIGVpbiB1bnZlcmRpZW50ZXIgVG9kIiAoWm9vaywgIDUuIE5vdiAyMDAzLCAxNzoyMDo0MCk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwNjgwNDkyMTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NjQ1NDYyCldhcyBpc24gbmVuICJGYXJidHJpZ2dlciI/IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6ICJIdWRkbGVzIHVuZCBSYWV1bWUgbWl0IFNvbm5lIiBvZGVyICJNYWwgd2llZGVyIGVpbiB1bnZlcmRpZW50ZXIgVG9kIiAoR3JpbW1ib3JuLCAgNS4gTm92IDIwMDMsIDE3OjIzOjQ4KToKfiMhIHJuPVpvb2sgcnQ9MTA2ODA0OTI0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc2NDU0NjIKRGFzIGlzdCB3ZW5uIERpciBiZWltIEJldHJhY2h0ZW4gZGVyIGJ1bnRlbiBTZWl0ZSBzcG9udGFuIHNjaGxlY2h0IHdpcmQuIElzdAppbSBXZWJkZXNpZ24gZWluIGJlbGllYnRlcyBmZWF0dXJlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogIkh1ZGRsZXMgdW5kIFJhZXVtZSBtaXQgU29ubmUiIG9kZXIgIk1hbCB3aWVkZXIgZWluIHVudmVyZGllbnRlciBUb2QiIChDcm9mdCwgIDUuIE5vdiAyMDAzLCAxNzoyNDoyMCk6Cn4jISBybj1Hd2VuaWxpIHJ0PTEwNjgwNDkxOTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NjQ1NDYyClZlcmdpc3MgZGFzIG1pdCBkZW0gInJpY2h0aWdlbiBTcGVlZHkiLiAgRGFzIHdhciB3b2hsIGZydWVoZXIgbWFsIHNvIHdpZQpkdSBlcyBkaXIgd3VlbnNjaGVuIHd1ZXJkZSwgYWJlciBkYXMgd3VyZGUgZ25hZGVubG9zIGdlJ0EndC4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogIkh1ZGRsZXMgdW5kIFJhZXVtZSBtaXQgU29ubmUiIG9kZXIgIk1hbCB3aWVkZXIgZWluIHVudmVyZGllbnRlciBUb2QiIChHd2VuaWxpLCAgNS4gTm92IDIwMDMsIDE3OjI0OjMyKToKfiMhIHJuPVpvb2sgcnQ9MTA2ODA0OTI0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc2NDU0NjIKb2guIGlzdCBkb2NoIGRhIGdlbGFuZGV0LCB3byBpY2ggcG9zdGVuIHdvbGx0Li4uCkZhcmJ0cmlnZ2VyOiB6QiA8cm90Plpvb2s8L3JvdD4gPGdydWVuPnNhZ3Q6IFdhcyBnYW56IHdhcyB0b2xsZXMuLi48L2dydWVuPgpHdy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiAiSHVkZGxlcyB1bmQgUmFldW1lIG1pdCBTb25uZSIgb2RlciAiTWFsIHdpZWRlciBlaW4gdW52ZXJkaWVudGVyIFRvZCIgKEd3ZW5pbGksICA1LiBOb3YgMjAwMywgMTc6MjY6NDkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNjgwNDk0Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3NjQ1NDYyCm5hLCBtaXIgc29sbCBuaWNodCB2b24gc2NobGVjaHQgd2VyZGVuLCBzb25kZXJuIGltIHNjcm9sbCB3YXMgd2ljaHRpZ2VzCmF1ZmZhbGxlbi4uLgpudWphIC0gKytlZ2FsIDopCmd3LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUZW1wb3JhZXJlcyBLb21tYW5kbyAic29ubmVuZmVobGVyIiAoQmFtYmksICA1LiBOb3YgMjAwMywgMTc6NDI6MjEpOgp+IyEgcm49Wm9vayBydD0xMDY4MDQzMTc4IHJnPWdpbGRlbi5kdW5rZWxlbGZlbgp+IyEgdGlkPTEwNjgwNDI0NTMKSWNoIHNlaCBzY2hvbiBkYXMgIlJlcCJmaWxlIG1pdCAidGVzdCItRWludHJhZWdlbiB1ZWJlcnF1ZWxsZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUZW1wb3JhZXJlcyBLb21tYW5kbyAic29ubmVuZmVobGVyIiAoWm9vaywgIDUuIE5vdiAyMDAzLCAxODozNjo0NCk6Cn4jISBybj1CYW1iaSBydD0xMDY4MDUwNTQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODA0MjQ1MwpBdXMgZGVyIERlbGZlbi1LYW5hbGhpc3RvcmllOgoKW0R1bmtlbGVsZmVuOlpvb2tdIFVuZCBqYSwgZGVyIE5hbWUgZGVzIFNwaWVsZXJzIHdpcmQgbWl0Z2Vsb2dndC4gVW5kIHdlciBudW4KW0R1bmtlbGVsZmVuOlpvb2tdIGFuZmFlbmd0LCBkYXMgTG9nZmlsZSB6dSBmbHV0ZW4sIHdpcmQgdm9uIG1pciBob2VjaHN0CltEdW5rZWxlbGZlbjpab29rXSBwZXJzb2VubGljaCBhdWYgbHVzdGlnc3RlIFdlaXNlIHp1ciBSZWNoZW5zY2hhZnQgZ2V6b2dlbi4KW0R1bmtlbGVsZmVuOlpvb2tdIDwxNToyOTo0OT4KW0R1bmtlbGVsZmVuOlpvb2sgZGV1dGV0IGF1ZiBkaWUgTVBBLCBSdWJyaWsgZ2lsZGVuLmR1bmtlbGVsZmVuLCBBcnRpa2VsIDUuCiAgICAgICAgICAgICA8MTU6MzQ6MDY+XQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRlbXBvcmFlcmVzIEtvbW1hbmRvICJzb25uZW5mZWhsZXIiIChDcm9mdCwgIDUuIE5vdiAyMDAzLCAxODozOToyNik6Cn4jISBybj1ab29rIHJ0PTEwNjgwNTM4MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4MDQyNDUzCkljaCBob2ZmZSB1ZWJlciBkaWUgbHVzdGlnZW4gV2Vpc2VuIHdpcmQgZGFubiB6dSBnZWdlYmVuZXIgWmVpdCBpbgpNZWdhc2NobWFycm4gYmVyaWNodGV0IDotKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFRlbXBvcmFlcmVzIEtvbW1hbmRvICJzb25uZW5mZWhsZXIiIChab29rLCAgNS4gTm92IDIwMDMsIDE4OjQxOjMwKToKfiMhIHJuPUNyb2Z0IHJ0PTEwNjgwNTM5NjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4MDQyNDUzCkljaCBnZWhlIGF1Y2ggZGF2b24gYXVzLCBkYXNzIGRhcyBpbiB1bm1pdHRlbGJhcmVyIHplaXRsaWNoZXIgTmFlaGUKYXVjaCBhdWYgZGVuIEthbmFlbGVuIG1pdHp1YmVrb21tZW4gaXN0Li4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVGVtcG9yYWVyZXMgS29tbWFuZG8gInNvbm5lbmZlaGxlciIgKERhcmtsb3IsICA1LiBOb3YgMjAwMywgMTg6NDk6NDkpOgp+IyEgcm49Wm9vayBydD0xMDY4MDU0MDkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODA0MjQ1MwpEYXMgaXMgamV0enQgYWxzbyBudXIgenVtIEZlaGxlcm1lbGR1bmdlbiBhYnNldHplbi4uLiB1bmQgd2FubiBrb21tdCBkYXMgVG9vbAp6dW0gdGVzdGVuPyAqRyogIAoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVGVtcG9yYWVyZXMgS29tbWFuZG8gInNvbm5lbmZlaGxlciIgKENhdHdlYXpsZSwgIDUuIE5vdiAyMDAzLCAxODo1MTozNCk6Cn4jISBybj1Dcm9mdCBydD0xMDY4MDUzOTY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODA0MjQ1MwpBbHNvIGljaCB2ZXJ3ZWhyZSBtaWNoIGRhZ2VnZW4sIGF1Y2ggbnVyIGFuc2F0endlaXNlIGlyZ2VuZHdhcyBtaXQgZGVtCkxpY2h0cyQmZGluZ2VucyB6dSB0dW4genUgaGFiZW4uCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFRlbXBvcmFlcmVzIEtvbW1hbmRvICJzb25uZW5mZWhsZXIiIChXaGl0ZXRpZ2VyLCAgNS4gTm92IDIwMDMsIDE4OjU0OjU0KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDY4MDU0Njk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODA0MjQ1MwpXYXMgaGFidCBpaHIgZWlnZW50bGljaCBhbGxlIGdlZ2VuIExpY2h0ZGluZ2VyID8KT2huZSBzaWVodCBtYW4gZG9jaCByZWljaGxpY2ggd2VuaWcsIHNlaHQgaWhyIGRhcyBhbmRlcnMgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVGVtcG9yYWVyZXMgS29tbWFuZG8gInNvbm5lbmZlaGxlciIgKEdsb2luc29uLCAgNS4gTm92IDIwMDMsIDE4OjU1OjI2KToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA2ODA1NDg5NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjgwNDI0NTMKRHUgYmVudXR6dCBMaWNodGRpbmdlciB1bSB6dSBndWNrZW4/IFdhcyBiaXN0IGR1IGRlbm4gZnVlciBlaW4gcGVydmVyc2VyIFNhY2suCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogVGVtcG9yYWVyZXMgS29tbWFuZG8gInNvbm5lbmZlaGxlciIgKFdoaXRldGlnZXIsICA1LiBOb3YgMjAwMywgMTg6NTY6MjQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA2ODA1NDkyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjgwNDI0NTMKWnVtaW5kZXN0IHdhZXIgZXMgZWludG9lbmlnZXIgb2huZSBMaWNodCB1bmQgU2NoYXR0ZW4sIEhlbGwgdW5kIER1bmtlbCwgbmljaD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFRlbXBvcmFlcmVzIEtvbW1hbmRvICJzb25uZW5mZWhsZXIiIChPcmt0b2V0ZXIsICA1LiBOb3YgMjAwMywgMTg6NTY6MzQpOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDY4MDU0ODk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODA0MjQ1MwpFciBoYXQgIkxpKioqIiBnZXNhZ3QhIFN0ZWluaWd0IGlobiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFRlbXBvcmFlcmVzIEtvbW1hbmRvICJzb25uZW5mZWhsZXIiIChBbGtvaG9sLCAgNS4gTm92IDIwMDMsIDE4OjU3OjE1KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDY4MDU0OTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODA0MjQ1Mwp3ZXIgaGVidCBkZW4gZXJzdGVuIHN0ZWluIHdvaGwgYXVmPwoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVGVtcG9yYWVyZXMgS29tbWFuZG8gInNvbm5lbmZlaGxlciIgKFdoaXRldGlnZXIsICA1LiBOb3YgMjAwMywgMTg6NTg6MDUpOgp+IyEgcm49QWxrb2hvbCBydD0xMDY4MDU1MDM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODA0MjQ1MwpEZXIgb2huZSBGZWhsZXIsIG5laG0gaWNoIG1hbCBhbi4uLgoKVGkiTGljaHRzeXN0ZW0iZ2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogIkh1ZGRsZXMgdW5kIFJhZXVtZSBtaXQgU29ubmUiIG9kZXIgIk1hbCB3aWVkZXIgZWluIHVudmVyZGllbnRlciBUb2QiIChBbmF0b2wsICA1LiBOb3YgMjAwMywgMTk6MzE6MzYpOgp+IyEgcm49Q3JvZnQgcnQ9MTA2ODA0OTQ2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjc2NDU0NjIKRXMgd3VyZGUgbWl0IGd1dGVuIEdydW5kIGduYWRlbmxvcyBnZSdBJ3QuCgpBbmF0b2wgKHVuZCBlcyB3YXIgYXVjaCB2b3IgU2VpbmVyIFplaXQpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFRlbXBvcmFlcmVzIEtvbW1hbmRvICJzb25uZW5mZWhsZXIiIChEYXJrbG9yLCAgNS4gTm92IDIwMDMsIDIxOjA1OjEwKToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA2ODA1NTA4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjgwNDI0NTMKaGVidCBlaW5lbiBTdGVpbiBpbSBEdW5rZWxuIHN0ZWhlbmQgYXVmIHVuZCB3aXJmdCBpaG4gaW4gZGVuIFJhdW0gLSB3ZXIgaWhuCmZhZW5ndCBkYXJmIHdlcmZlbi4gCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogVGVtcG9yYWVyZXMgS29tbWFuZG8gInNvbm5lbmZlaGxlciIgKEdsb2luc29uLCAgNS4gTm92IDIwMDMsIDIxOjA1OjU1KToKfiMhIHJuPURhcmtsb3IgcnQ9MTA2ODA2MjcxMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjgwNDI0NTMKVW5kIHdlbm4gZXMgZWluIGxldWNodGVuZGVyIFN0ZWluIGlzdCwgc2llaHQgZXIgc2ljaCBzZWxic3QuIEFiZXIgd2lyIGlobgpuaWNodC4gTmEgc3V1dXVwZXIhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFRlbXBvcmFlcmVzIEtvbW1hbmRvICJzb25uZW5mZWhsZXIiIChHcmltbWJvcm4sICA1LiBOb3YgMjAwMywgMjE6MDY6MzMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA2ODA2Mjc1NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjgwNDI0NTMKV2VyIGhhdCBuYWNoIG1pciBnZXJ1ZmVuPyBXZWxjaGVuIFN0ZWluIHNvbGwgaWNoIGF1ZmhlYmVuPwoKR2RBLCBmZWhsZXJsb3MKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBUZW1wb3JhZXJlcyBLb21tYW5kbyAic29ubmVuZmVobGVyIiAoWm9vaywgIDUuIE5vdiAyMDAzLCAyMTowODoyOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2ODA2Mjc5MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjgwNDI0NTMKWnUgSGF1c2U/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFRlbXBvcmFlcmVzIEtvbW1hbmRvICJzb25uZW5mZWhsZXIiIChEYXJrbG9yLCAgNS4gTm92IDIwMDMsIDIxOjEyOjM1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDY4MDYyNzkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODA0MjQ1MwpFbnR3ZWRlciBlaW5lbiBTb25uZW5zdGVpbiB1bSBkaWUgRGVsZmVuIHp1IGFlcmdlcm4sIG9kZXIgZWluZW4gU3RlaW5ibG9jayB1bQpkZW4gWm9vayB6dSBoYWx0ZW4uLi4gd2VubiBlciBhdWYgZGllICJhcm1lbiIgRGVsZmVuIGxvc2dlaHQgZGllIHNlaW4gTG9nZmlsZQpmdWVsbGVuCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdW5nZXI/IChMaWFyYSwgIDUuIE5vdiAyMDAzLCAyMzowNToxMSk6CkFiZW5kZXNzZW4ga3JhdHp0IHNpY2ggYXVmIEN1eGVsY2hlbnMgU2NodWx0ZXIgaGludGVyIGRlbSBPaHIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogVGVtcG9yYWVyZXMgS29tbWFuZG8gInNvbm5lbmZlaGxlciIgKE11YWRpYiwgIDYuIE5vdiAyMDAzLCAwOTo1NToxMCk6Cn4jISBybj1EYXJrbG9yIHJ0PTEwNjgwNjMxNTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4MDQyNDUzCnVuZCBkYXJmIGljaCBudW4gZW5kbGljaCBkaWUgdGFnZXNsaWNodGxhbXBlbiBpbiB6emVyZW56ZW4gaW5zdGFsbGllcmVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFRlbXBvcmFlcmVzIEtvbW1hbmRvICJzb25uZW5mZWhsZXIiIChab29rLCAgNi4gTm92IDIwMDMsIDA5OjU2OjE0KToKfiMhIHJuPU11YWRpYiBydD0xMDY4MTA4OTEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODA0MjQ1MwpOdXIsIHdlbm4gRHUgTGV1Y2h0c3RvZmZyb2VocmVuIG5pbW1zdCB1bmQgenVzYXJ0emxpY2ggU29sYXJ6ZWxsZW4gZWluYmF1c3QuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFRlbXBvcmFlcmVzIEtvbW1hbmRvICJzb25uZW5mZWhsZXIiIChNdWFkaWIsICA2LiBOb3YgMjAwMywgMDk6NTc6MTIpOgp+IyEgcm49Wm9vayBydD0xMDY4MTA4OTc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODA0MjQ1MwpkaWUgdGFnZXNsaWNodGxldWNodHN0b2Zmcm9laHJlbiB3YXJlbiBkb2NoIHNjaG9uIGFscyBkZWxmZW5hbmFsc29uZGUgdmVycGxhbnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiAiSHVkZGxlcyB1bmQgUmFldW1lIG1pdCBTb25uZSIgb2RlciAiTWFsIHdpZWRlciBlaW4gdW52ZXJkaWVudGVyIFRvZCIgKEJhbWJpLCAgNi4gTm92IDIwMDMsIDEzOjA5OjU3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDY4MDYyOTI5IHJnPWQud2FsZAp+IyEgdGlkPTEwNjc2NDU0NjIKRGVpbiBXb3J0IGluIFpvb2tzIE9ocmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2huZSBXb3J0ZSAoVGFuZ2FsdXIsICA2LiBOb3YgMjAwMywgMTQ6MDk6MzYpOgpbVG9kOkxhcnNdIFNlbGJzdG1vcmQgaGF0IGdlcmFkZSBTZWxic3Rtb3JkIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogb2huZSBXb3J0ZSAoR3JpbW1ib3JuLCAgNi4gTm92IDIwMDMsIDE0OjExOjA0KToKfiMhIHJuPVRhbmdhbHVyIHJ0PTEwNjgxMjQxNzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4MTI0MTc2CkRhcyB3YXJlbiBhYmVyIHNpZWJlbiBXb3J0ZS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBvaG5lIFdvcnRlIChUYW5nYWx1ciwgIDYuIE5vdiAyMDAzLCAxNDoyMjoxNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2ODEyNDI2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjgxMjQxNzYKYXJncyBtaXIgaXN0IGtlaW4gYmVzc2VyZXIgVGl0ZWwgZWluZ2VmYWxsZW4uCgpEYXMgbmFlY2hzdGUgbWFsIHNjaHJlaWJlIGljaCBtaXQgc2llYmVuIFdvcnRlbiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBFcHBpIDopIChCcm90bmFlbCwgIDYuIE5vdiAyMDAzLCAxODoyMDoxNyk6CkVwcGkgdGVpbHQgRGlyIG1pdDogZ3JhdHMgbm9jaCA6KQpbVG9kOkxhcnNdIEVpbiBTYXBoaXJkcmFjaGUgaGF0IGdlcmFkZSBFcHBpIHVtZ2VicmFjaHQuCltUb2Q6RWluIFNhcGhpcmRyYWNoZV0gSWNoIGJpbiBzdGFlcmtlciEKCkVwcGkgZXBwaSBlcHBpLi4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFzIEVwcGkgOikgKEdsb2luc29uLCAgNi4gTm92IDIwMDMsIDE4OjIzOjIwKToKfiMhIHJuPUJyb3RuYWVsIHJ0PTEwNjgxMzkyMTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4MTM5MjE3ClBlcHBpcyBSZWZlbHhlIHNpbmQgYXVjaCBuaWNodCBtZWhyIHdpZSBzaWUgbWFsIHdhcmVuPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiAiSHVkZGxlcyB1bmQgUmFldW1lIG1pdCBTb25uZSIgb2RlciAiTWFsIHdpZWRlciBlaW4gdW52ZXJkaWVudGVyIFRvZCIgKE11cGZlbCwgIDYuIE5vdiAyMDAzLCAyMDozMzowMyk6Cn4jISBybj1Gb29iYXIgcnQ9MTA2ODExNTYwOCByZz1kLndhbGQKfiMhIHRpZD0xMDY3NjQ1NDYyCldpZXZpZWwgc29sY2hlciBSYWV1bWUga2VubnN0IER1LCBGb29iYXI/IDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTm92ZW1iZXJzdGF0aSBCZXJsaW4gKE11YWRpYiwgIDYuIE5vdiAyMDAzLCAyMjo0Mjo0OSk6Cn4jISBybj1ab29rIHJ0PTEwNjgxNTQ5Mzcgcmc9dHJlZmZlbgp+IyEgdGlkPTEwNjgwMjE2NjgKc3R1ZGlzIGJlc3Bhc3Nlbj8KZGFzIGhvZXJ0IHNpY2ggYWJlciBzZWhyIHNjaGx1ZXBmcmlnIGFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOb3ZlbWJlcnN0YXRpIEJlcmxpbiAoR2xvaW5zb24sICA2LiBOb3YgMjAwMywgMjI6NDU6MjkpOgp+IyEgcm49TXVhZGliIHJ0PTEwNjgxNTQ5Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4MDIxNjY4CkJlc3RpbW10IHdpbGwgZXIgYW4gZGVyIFRVIG1pdGRlbW9uc3RyaWVyZW4uIEphLCBpaHIgbGVzdCByaWNodGlnLCBkaWUgTmFlY2h0ZQp3ZXJkZW4gbGFlbmdlciwgZXMgaXN0IHdpZWRlciBTdHJlaWt6ZWl0LiBXaXIgYmVzdHJpZWtlbiB1bnMgc2VsYmVyLCBqYXdvbGxqYSEKTmEgd2FzIGVpbiBHbHVlY2ssIGRhc3MgaWNoIGFuIGRlciBIVSBzdHVkaWVyZSwgd28gbWFuIG5vY2ggdmVyc3VjaHQgdm9yaGVyIHp1CnJlZGVuIC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5vdmVtYmVyc3RhdGkgQmVybGluIChDcm9mdCwgIDYuIE5vdiAyMDAzLCAyMjo0NjowMSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDY4MTU1MTI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODAyMTY2OApJaHIgYmVzdHJpY2t0IGV1Y2ggc2VsYmVyPyAgRGFubiBtdXNzIGVzIHdhaHJsaWNoIGthbHQgc2Vpbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOb3ZlbWJlcnN0YXRpIEJlcmxpbiAoWm9vaywgIDYuIE5vdiAyMDAzLCAyMjo0NjoxNyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDY4MTU1MTI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODAyMTY2OApPaCwgbWFsIHNjaGF1biwgd2FzIGRpZSBWb2xsdmVyc2FtbHVuZyB2b24gaGV1dGUgQWJlbmQgYmVzY2hsb3NlbiBoYXQgOykKCkRpZSBGcmFua2Z1cnRlciBzdHJlaWtlbiBqYSBtYWwgd2llZGVyIDspCgpaT29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTm92ZW1iZXJzdGF0aSBCZXJsaW4gKEdyaW1tYm9ybiwgIDYuIE5vdiAyMDAzLCAyMjo0ODoxMik6Cn4jISBybj1ab29rIHJ0PTEwNjgxNTUxNzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4MDIxNjY4Ci4uLnVuZCBkYXMgYWxsZXMgZnVlciBtZWluZSBTdGV1ZXJncm9zY2hlbi4gVmllbGxlaWNodCBzb2xsdGVuIHdpciBkZW4gVW5pcwpkaWUgR2VsZGVyIGt1ZXJ6ZW4sIHdlbm4gZGEgbmljaHQgc3R1ZGllcnQgd2lyZCB3aWxsIGljaCBhdWNoIG5pY2h0IHphaGxlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTm92ZW1iZXJzdGF0aSBCZXJsaW4gKEdsb2luc29uLCAgNi4gTm92IDIwMDMsIDIyOjQ4OjM4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDY4MTU1MjkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODAyMTY2OApXZWxjaGVyIC4uLi4gaW50ZXJlc3NhbnRlIGp1bmdlIE1lbnNjaCAuLi4uIGhhdCBlaWdlbnRsaWNoIGRhcyBXb3J0ICJTdHJlaWsiCmFuIGRlbiBVbml2ZXJzaXRhZXRlbiBzbyBwb3B1bGFlciBnZW1hY2h0LCBkYXNzIGVpbmlnZSBMZXV0ZSBqZWRlcyBKYWhyIG1laW5lbgpkYXMgZGFzIFZlcmhpbmRlcm4gdm9uIExWcyBzY2hvbiBhbSBBbmZhbmcgZGVzIFNlbWVzdGVycyB3dWVyZGUgaXJnZW5kd2VuIGluCmRlciBQb2xpdGlrIGJlZWluZHJ1Y2tlbj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBOb3ZlbWJlcnN0YXRpIEJlcmxpbiAoWm9vaywgIDYuIE5vdiAyMDAzLCAyMjo0ODo1OCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDY4MTU1MzE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODAyMTY2OApUSmEsIGRpZSBBbnR3b3J0IGF1ZiBkaWUgRnJhZ2Ugc3VjaGUgaWNoIGF1Y2ggbm9jaCwgR2xvaW5zb24uLi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBOb3ZlbWJlcnN0YXRpIEJlcmxpbiAoR2xvaW5zb24sICA2LiBOb3YgMjAwMywgMjI6NDk6MzYpOgp+IyEgcm49Wm9vayBydD0xMDY4MTU1MzM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODAyMTY2OApVbmQgaWNoIGRhY2h0ZSBkdSBzZWlzdCBhbGx3aXNzZW5kLCBNdWEnWm9vayEgJ2phbW1lcioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTm92ZW1iZXJzdGF0aSBCZXJsaW4gKFpvb2ssICA2LiBOb3YgMjAwMywgMjI6NTQ6MDYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA2ODE1NTM3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjgwMjE2NjgKQWgsIGxhdXQgSG9tZXBhZ2UgdW5zZXJlciBTdHVkaS1WViBoYWJlbiBkaWUgU3R1ZGlzIG5lbiBTdHJlaWsgYmVzY2hsb3NzZW4uCk5hLCBtYWwgc2VoZW4sIGljaCBnbGF1YiwgenUgdW5zZXJlciBWZXJhbnN0YWx0dW5nIHdlcmRlbiBhbSBEb25uZXJzdGFnIAp3ZXJkZW4gd2VpdGVyaGluIGFsbGUga29tbWVuIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE5vdmVtYmVyc3RhdGkgQmVybGluIChab29rLCAgNi4gTm92IDIwMDMsIDIyOjU1OjExKToKfiMhIHJuPVpvb2sgcnQ9MTA2ODE1NTY0NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjgwMjE2NjgKTnUgamEsIFJvS28gcGxhbnQgamEgZWluIFN0dWRpZW5ndXRoYWJlbmdlc2V0eiwgd2FzIGFtIDE4LiBOb3YuIGJlc2NobG9zc2VuCndlcmRlbiBzb2xsIHZvbSBMYW5kdGFnOyBhbHNvIGlzdCBlaW4gRW5kZSBkZXMgU3RyZWlrZXMgamEgc2Nob24gaW4gU0ljaHQgOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTm92ZW1iZXJzdGF0aSBCZXJsaW4gKEdyaW1tYm9ybiwgIDYuIE5vdiAyMDAzLCAyMjo1ODoxMSk6Cn4jISBybj1ab29rIHJ0PTEwNjgxNTU3MTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4MDIxNjY4Ck5hamEsIGRhc3MgZGllIFdpd2lzIGJlaSBzdHVkZW50aXNjaGVuIFN0cmVpa3MgbWl0bWFjaGVuLCBoYWV0dGUgaWNoIGpldHp0CmF1Y2ggbmljaHQgd2lya2xpY2ggZXJ3YXJ0ZXQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBOb3ZlbWJlcnN0YXRpIEJlcmxpbiAoR2xvaW5zb24sICA2LiBOb3YgMjAwMywgMjM6MDE6MjkpOgp+IyEgcm49Wm9vayBydD0xMDY4MTU1NzExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODAyMTY2OApXYXMgbWljaCBpbW1lciBlaW4gYmlzc2NoZW4gd3VuZGVydDogd2FydW0gc2V0emVuIHNpY2ggbmljaHQgbGFlbmdzdCBlaW5pZ2UKQWJnZW9yZG5ldGUsIHZvcm1hbHMgQXN0YS1NaXRnbGllZGVyLCBpbiBkZW4gTGFuZHRhZ2VuIGZ1ZXIgZGllIFN0dWRlbnRlbiBlaW4/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IE5vdmVtYmVyc3RhdGkgQmVybGluIChCaWVsZWZlbGQsICA2LiBOb3YgMjAwMywgMjM6MDU6MTkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA2ODE1NjA4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjgwMjE2NjgKV2VpbCBzbyBtYW5jaGVyIGRlbiBBc3RhIG51ciBhbHMgU3BydW5nYnJldHQgZnVlciBkaWUgcG9saXRpc2NoZQpLYXJyaWVyZSBiZW51dHp0IGhhdD8gSGllciBpbiBIYW1idXJnIHp1bWluZGVzdCBzbyB2b3JnZWtvbW1lbi4uLgoKLUJpZWxlZmVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTm92ZW1iZXJzdGF0aSBCZXJsaW4gKEtyaWtraXQsICA2LiBOb3YgMjAwMywgMjM6NTU6NDIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA2ODE1NTEyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjgwMjE2NjgKTmEgd2FydCBudXIgYWIuIFNwYWV0ZXN0ZW5zIG5hZWNoc3RlbiBNaXR0d29jaCBrcmllZ3N0ZSBkZWluZSBWViBhbiBkZXIgSFUgdW5kCmRhbm4gdmllbCBTcGFzcyBiZWltIGZlc3RrZXR0ZW4uLi4KCmtyaWtraXQsIHdpc3NlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTm92ZW1iZXJzdGF0aSBCZXJsaW4gKFpvb2ssICA3LiBOb3YgMjAwMywgMTA6MDU6MzkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA2ODE1NjA4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjgwMjE2NjgKRGVzIEJyb3QgaWNoIGVzLCBkZXMgTGllZCBpY2ggc2luZy4uLgoKCk9kZXIgc28gYWVobmxpY2guIFpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTZWxic3RqdXN0aXogKE1vcmdvdGgsICA3LiBOb3YgMjAwMywgMTQ6NTQ6NTUpOgp+IyEgcm49QXJzYWkgcnQ9MTA2ODIxMzI2OSByZz1ldGlrZXR0ZQp+IyEgdGlkPTEwNjgyMTI2MTAKSmEgYml0dGUgOikKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTZWxic3RqdXN0aXogKEJyb3RuYWVsLCAgNy4gTm92IDIwMDMsIDE0OjU1OjU0KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA2ODIxMzI5NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjgyMTI2MTAKQWxzbyBpY2ggaGFldHRlIGF1Y2ggbmVuIE9tYmF0aXMgZ2VzY2hpY2t0LiBCaW4gaWNoIGpldHp0IHRoZW9yZXRpc2NoIG1pdApzY2h1bGRpZz8gO28pCgpCcm90CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTZWxic3RqdXN0aXogKE1vb25zaGluZSwgIDcuIE5vdiAyMDAzLCAxNDo1NjoxNik6Cn4jISBybj1Ccm90bmFlbCBydD0xMDY4MjEzMzU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODIxMjYxMApCcm90bmFlbCwgYW4gZGVuIEdhbGdlbiwgc29mb3J0ISA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNlbGJzdGp1c3RpeiAoR2xvaW5zb24sICA3LiBOb3YgMjAwMywgMTQ6NTY6MjQpOgp+IyEgcm49QnJvdG5hZWwgcnQ9MTA2ODIxMzM1NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjgyMTI2MTAKU2NocmVpYiBkb2NoIHdhcyB1ZWJlciBkaWNoLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE5vdmVtYmVyc3RhdGkgQmVybGluIChHbm9tZSwgMTAuIE5vdiAyMDAzLCAxMToyODo1OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2ODE1NTI5MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjgwMjE2NjgKd2VsY2hlciBnZWxkZXI/CmR1IG1laW5zdCBkaWUsIGRpZSBncmFkIG1hbCBhdXNyZWljaGVuLCB1bSBkaWUgcGVyc29uYWxrb3N0ZW4genUgZGVja2VuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTm92ZW1iZXJzdGF0aSBCZXJsaW4gKEJyb3RuYWVsLCAxMC4gTm92IDIwMDMsIDExOjMwOjAwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDY4MTU1MjkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODAyMTY2OApXZWxjaGVzIFBlcnNvbmFsPyA7bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNYWwgd2llZGVyIFVybGF1YiAoWm9vaywgMTAuIE5vdiAyMDAzLCAxMzo0NjozNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA2ODQ2ODE5OSByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTA2ODQ2ODE5OQpOZWlkIGdlaG9lcnQgbmljaHQgenUgZGVuIG1pciBlaWdlbmVuIFR1Z2VuZGVuLCBpbnNvZmVybiBtdXNzIGljaCBEaWNoIGRhCmxlaWRlciBlbnR0YWV1c2NoZW4uIAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTVVELVVtZnJhZ2UgZnVlciBVbmktUHJvamVrdCAoR3JpbW1ib3JuLCAxMC4gTm92IDIwMDMsIDE0OjE0OjE3KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDY4NDcwMDQ5IG9nPXd3dwp+IyEgcm49Qm9pbmcgcnQ9MTA2ODQ2OTc2MSByZz13d3cKfiMhIHRpZD0xMDY4NDY4NjI3ClNpZSBoYWJlbiBzaWNoIE5pZ2h0ZmFsbCBlaW5lcnNlaXRzIHVuZCBkYXMgTUcgYW5kZXJlcnNlaXRzIGFuZ2VzZWhlbi4KTmFqYSwgZHJpdHRlcyBTZW1lc3Rlciwgd2FzIHdpbGxzdGUgc2Nob24gZXJ3YXJ0ZW4/IAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNVUQtVW1mcmFnZSBmdWVyIFVuaS1Qcm9qZWt0IChDYWRyYWNoLCAxMC4gTm92IDIwMDMsIDE2OjQ5OjE3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDY4NDcwMDU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODQ2ODYyNwpBbSBiZXN0ZW4gaXN0IGVpbiBNdWQgb2huZSBRdWVzdHMsIG9obmUgTlBDcywgb2huZSBFbmR6aWVsLCBvaG5lClNwZWljaGVyZnVua3Rpb24sIGluZGVtIG1hbiBhbmRlcmUgU3BpZWxlciBhbmdyZWlmZW4gZGFyZiB1bmQgZGVyIFRvZAplbmRndWVsdGlnIGlzdCA6bykKCkNhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1VRC1VbWZyYWdlIGZ1ZXIgVW5pLVByb2pla3QgKE1pcmlsLCAxMC4gTm92IDIwMDMsIDE2OjUwOjAxKToKfiMhIHJuPUNhZHJhY2ggcnQ9MTA2ODQ3OTM1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjg0Njg2MjcKR2VuYXUuIFJlZHV6aWVydCBkaWUgU3VjaHRnZWZhaHIgZW5vcm0uCgpNaXJpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTVVELVVtZnJhZ2UgZnVlciBVbmktUHJvamVrdCAoR3JpbW1ib3JuLCAxMC4gTm92IDIwMDMsIDE2OjUxOjIzKToKfiMhIHJuPU1pcmlsIHJ0PTEwNjg0Nzk0MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4NDY4NjI3ClN1Y2h0Z2VmYWhyPyBXYXMgZnVlciBlaW5lIFN1Y2h0Z2VmYWhyPyBJY2gga29lbm50ZSBqZWRlcnplaXQgYXVmaG9lcmVuLCB3ZW5uCmljaCB3b2xsdGUuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1VRC1VbWZyYWdlIGZ1ZXIgVW5pLVByb2pla3QgKE11cGZlbCwgMTEuIE5vdiAyMDAzLCAwMDowOToxMik6Cn4jISBybj1DYWRyYWNoIHJ0PTEwNjg0NzkzNTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4NDY4NjI3CkR1IG1laW5zdCBybC5tdWQuZGUgPyA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2VnIC4uLiAoQ3JvZnQsIDExLiBOb3YgMjAwMywgMTg6NDM6NDcpOgp+IyEgcm49U2VsZXZlbiBydD0xMDY4NTcwMDE4IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xMDY4NTY5OTc5CldBQUFBSCEgIDExIE1vbmF0ZSBVcmxhdWIhISEgKk5FSUQqCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2VnIC4uLiAoQ3JvZnQsIDExLiBOb3YgMjAwMywgMTg6NDQ6NTApOgp+IyEgcm49Q3JvZnQgcnQ9MTA2ODU3MjYyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjg1Njk5NzkKV29iZWkgZ2VuYXVlciBiZXRyYWNodGV0IHNvZ2FyIDIzIE1vbmF0ZS4gIFNvd2FzLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTHVzdGlnLCBvZGVyPyAoTW9yZ290aCwgMTIuIE5vdiAyMDAzLCAxNDozMzoxOSk6Cn4jISBybj1MZWlsYSBydD0xMDY4NjQzNzgxIHJnPWV0aWtldHRlCn4jISB0aWQ9MTA2ODY0MjY5OQpEaWUgWndlcmdlbnN0YWR0IGZpbmRlc3QgZHUgZG9jaCBhdWNoIG5hY2ggZGVtIEdlc3RhbmsgOikKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBMdXN0aWcsIG9kZXI/IChCYW1iaSwgMTIuIE5vdiAyMDAzLCAyMToxNDowMyk6Cn4jISBvbj1CYW1iaSBvdD0xMDY4NjY4MDMzIG9nPWV0aWtldHRlCn4jISBybj1Nb250YW51cyBydD0xMDY4NjQ2MTI5IHJnPWV0aWtldHRlCn4jISB0aWQ9MTA2ODY0MjY5OQpNZWluc3QgRHUsIHNlaXQgZGVyIExpY2h0dW10ZWxsdW5nIGR1bmtlbG4gZHVua2xlIFNwaWVsZXIgZGVuIFJhdW0gbm9jaCBmdWVyCmFuZGVyZSBhYj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtbW0sIGVpbmUga29taXNjaGUgTm9ubmUgOikgKE1vcmdvdGgsIDEyLiBOb3YgMjAwMywgMjE6NDQ6MzUpOgpEdSBzYWdzdDogbW9tLCBwaXNzZW4uIGRlciB0ZWUgZHJ1ZWNrdApOb25uZSBydWZ0OiBGdWNrIExlaXR1bmchCgpNKiB3dW5kZXJ0IHNpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR2V0cmFlbmtlc29uZGVyd3VlbnNjaGUuLi4gKENyb2Z0LCAxMy4gTm92IDIwMDMsIDAwOjAxOjAzKToKfiMhIHJuPUhvYm8gcnQ9MTA2ODY3Nzg0MyByZz1wYXJ0eQp+IyEgdGlkPTEwNjc5NDQzMzgKV2llIHNpZWh0cyBtaXQgYmVpIFZvbGxtb25kIGdlbW9sa2VuZXIgWmllZ2VubWlsY2ggYXVzPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdldHJhZW5rZXNvbmRlcnd1ZW5zY2hlLi4uIChBaGFiLCAxMy4gTm92IDIwMDMsIDAwOjM1OjU3KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNjg2NzgwNjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY3OTQ0MzM4Ck9kZXIgbGV2aXRpZXJ0ZXMgV2Fzc2VyPwoKQWhhYi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5ldWUgbWVsZHVuZ2VuIC4uLiAoTWluZ28sIDEzLiBOb3YgMjAwMywgMDI6MTg6MzIpOgoKRHUgc2NobGFlZ3N0IGVpbiBwYWFyIG1hbCBhdWYgZGVuIFNhbmRzYWNrIGVpbiB1bmQgZnVlaGxzdCBlaW5lIGdld2lzc2UgClZpdGFsaXRhZXQgaW4gRGlyIGF1ZnN0ZWlnZW4uCgpTb3NvLiBJc3QgZGVyIFNhZnQgamV0enQgbWl0IG1pciwgbnVyIGRhbWl0IGRlciBQdWZmZXIgc2ljaCBmdWVsbHQ/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ldWUgbWVsZHVuZ2VuIC4uLiAoTW9yZ290aCwgMTMuIE5vdiAyMDAzLCAwNzo1NDowOSk6Cn4jISBybj1NaW5nbyBydD0xMDY4Njg2MzEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODY4NjMxMgpOYSBzbyBsYW5nZSBkYWJlaSBuaWNodCBhbmRlcmVzIGF1ZnN0ZWlndCBnZWh0cyBkb2NoLCBvZGVyPyAKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqcHJ1c3QqIChNb3Jnb3RoLCAxMy4gTm92IDIwMDMsIDIwOjA4OjU1KToKUGl0ZmFsbCBydWZ0OiBtdWghCkFwb2xsb25pYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogeHRlcm0sIHRmIHVuZCBrZXlwYWQgKENyb2Z0LCAxMy4gTm92IDIwMDMsIDIyOjAzOjI5KToKfiMhIHJuPUdub21lIHJ0PTEwNjg3NDcwODggcmc9bXVkY2xpZW50cwp+IyEgdGlkPTEwNjg2MzQwNTEKV293LiAgV2FzIGVpbiBzYWNoZGllbmxpY2hlciBIaW53ZWlzLiBSZXNwZWt0IQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaW4gc2NobGVjaHRlciBXaXR6IChCb2luZywgMTQuIE5vdiAyMDAzLCAxMTowOTozNCk6Cn4jISBybj1Ob25uZSBydD0xMDY4Nzk4MDAzIHJnPXdpdHplCn4jISB0aWQ9MTA2ODc5ODAwMwpCb0VpbmcgLi4uIG1pdCBFISBEYXNzIGRpZSBMZXV0ZSBkYXMgbmllIGF1ZiBkaWUgUmVpaGUgYmVrb21tZW4gLi4uCiAgQm9pbmcgKG9obmUgZSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFQtU2hpcnQgKERlZXBibHVlLCAxNC4gTm92IDIwMDMsIDEyOjM4OjA5KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDY4ODA5NTk4IHJnPXBhcnR5Cn4jISB0aWQ9MTA2ODgwNzQwNwpVZWJlcnRyZWlidHMgbmljaHQuIE5pY2h0IGRhcyBpbiAgenVrdW5mdCBub2NoIFQtU2hpcnQtQmlsZGVyIGF1ZiBVbXN0YW5kc21vZGUKZ2VkcnVja3Qgd2lyZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVC1TaGlydCAoQWxrb2hvbCwgMTQuIE5vdiAyMDAzLCAxMjozODozNyk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDY4ODA5ODg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODgwNzQwNwpkYSB3dWVyZGUgaWNoIGRhbm4gd2VuaWdzdGVucyByZWlucGFzc2VuCgpBbGsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFQtU2hpcnQgKE1pbmdvLCAxNC4gTm92IDIwMDMsIDEyOjUxOjAyKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDY4ODA5NTk4IHJnPXBhcnR5Cn4jISB0aWQ9MTA2ODgwNzQwNwpEYXJmIG1hbiBkYXMgZWlnZW50bGljaCBzY2hvbiAiVGFsbGplIiBzY2hyZWliZW4/IFNDTlIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTWFsIGVpbiBzY2hsZWNodGVyIFdpdHogdm9uIG1pciAoQWxrb2hvbCwgMTQuIE5vdiAyMDAzLCAxMzo0MDo1MSk6Cn4jISBybj1Ba2FzaGEgcnQ9MTA2ODgxMzM2OSByZz13aXR6ZQp+IyEgdGlkPTEwNjg4MDQzMDgKbWFnIHNlaW4sIGFiZXIgbWVnYXNjaG1hcnJuIGlzdCBnYWFhbnogc2NobGVjaHQgZnVlciBtZWluZSBuZXJ2ZW4sIGRhIHdlaXNzCmljaCBsaWViZXIgd2VuaWdlcgoKdmllbGxlaWNodCBzb2xsdGUgaWNoIGVpbmZhY2gga2VpbmUgV2l0emUgbmFjaCBXaXR6ZSBzY2hyZWliZW4sIGRhc3MgcGFzc2llcnQKbWlyIHNvd2FzIGF1Y2ggbmljaHQgbWVocgoKQWxrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFQtU2hpcnQgKENhdHdlYXpsZSwgMTQuIE5vdiAyMDAzLCAxNDo0NjoyNSk6Cn4jISBvbj1DYXR3ZWF6bGUgb3Q9MTA2ODgwOTU5OCBvZz1wYXJ0eQp+IyEgcm49TWFoYXJldCBydD0xMDY4ODA3NDI3IHJnPXBhcnR5Cn4jISB0aWQ9MTA2ODgwNzQwNwpKYSBiaXR0ZSBlaW5lIHRhaWxsaWVydGVuIFNjaG5pdHQgZnVlciBNYWhhIDotKQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBULVNoaXJ0IChDYXR3ZWF6bGUsIDE0LiBOb3YgMjAwMywgMTQ6NDY6MzEpOgp+IyEgb249TWluZ28gb3Q9MTA2ODgxMDYyMiBvZz1wYXJ0eQp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNjg4MDk1OTggcmc9cGFydHkKfiMhIHRpZD0xMDY4ODA3NDA3ClVuZCBSdWVja3NpY2h0bmFobWUgYXVmIENhdHRpZXMgVGFpbGxlIGJlaW0gU2Nobml0dC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBULVNoaXJ0IChDYXR3ZWF6bGUsIDE0LiBOb3YgMjAwMywgMTQ6NDY6MzMpOgp+IyEgb249WmFybml5YSBvdD0xMDY4ODE3MzkyIG9nPXBhcnR5Cn4jISBybj1NaW5nbyBydD0xMDY4ODEwNjIyIHJnPXBhcnR5Cn4jISB0aWQ9MTA2ODgwNzQwNwpkdSBtZWluc3QsIGRhcywgd2FzIGJlaSBNYWhhIGF1cyBkZXIgVGFpbGxlIHJhdXNnZXNjaG5pdHRlbiB3aXJkLCBzb2xsZW4gZGllCmJlaSBDYXR0eSBlaW5uYWVoZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBULVNoaXJ0IChDYXR3ZWF6bGUsIDE0LiBOb3YgMjAwMywgMTQ6NDY6MzUpOgp+IyEgb249Q2F0d2VhemxlIG90PTEwNjg4MTc1NzEgb2c9cGFydHkKfiMhIHJuPVphcm5peWEgcnQ9MTA2ODgxNzM5MiByZz1wYXJ0eQp+IyEgdGlkPTEwNjg4MDc0MDcKRGFtaXQgd3VlcmRlIGljaCBtaWNoIGVpbnZlcnN0YW5kZW4gZXJrbGFlcmVuIDotKQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBULVNoaXJ0IChNb3Jnb3RoLCAxNC4gTm92IDIwMDMsIDE0OjQ5OjUxKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDY4ODE3NTk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODgwNzQwNwpNZWluc3QgRHUgbmljaHQsIGRhc3MgTWFoYXJldHMgVGFpbGxlIHNjaG9uIHNjaGxhbmsgZ2VudWcgaXN0IHVuZCBiZWkgQ2F0dHkKKnJhZXVzcGVyKiBhZWhtPwoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFQtU2hpcnQgKENhdHdlYXpsZSwgMTQuIE5vdiAyMDAzLCAxNDo1MTo0NSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNjg4MTc3OTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4ODA3NDA3CkViZW4uIERhIGtyaWVnIGljaCBlaCBuaXggbWVociBhYiA6KQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbiBzY2hsZWNodGVyIFdpdHogKEFuYXRvbCwgMTQuIE5vdiAyMDAzLCAxOToyMToyNSk6Cn4jISBybj1Cb2luZyBydD0xMDY4ODA0NTc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODc5ODAwMwo+IEJvRWluZyAuLi4gbWl0IEUhIERhc3MgZGllIExldXRlIGRhcyBuaWUgYXVmIGRpZSBSZWloZSBiZWtvbW1lbiAuLi4KPiAgIEJvaW5nIChvaG5lIGUpCgpBYmVyIGh0dHA6Ly93d3cuaG9sendhcnRoLm5ldC9NaXNjL2JvaW5nLmpwZyBoYWIgaWNoIHNjaG9ubWFsIGVyd2FlaG50LCBvZGVyPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVpbiBzY2hsZWNodGVyIFdpdHogKFdoaXRldGlnZXIsIDE0LiBOb3YgMjAwMywgMTk6MjE6NTUpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNjg4MzQwODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4Nzk4MDAzCk5pY2h0LCBzZWl0IGljaCBNUEEgbGVzZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVpbiBzY2hsZWNodGVyIFdpdHogKEFuYXRvbCwgMTQuIE5vdiAyMDAzLCAxOToyMjoxNyk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwNjg4MzQxMTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4Nzk4MDAzCldlciByZWRldCBkZW5uIG1pdCBEaXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEVpbiBzY2hsZWNodGVyIFdpdHogKFdoaXRldGlnZXIsIDE0LiBOb3YgMjAwMywgMTk6MjI6NDUpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNjg4MzQxMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4Nzk4MDAzCkR1IGhhc3QgZWluZSBGcmFnZSBnZXN0ZWxsdCwgdW5kIG5pY2h0IGV4cGxpeml0IGF1c2dlc2NobG9zc2VuLCBkYXNzIGR1IGtlaW5lCkFudHdvcnQgdm9uIG1pciB3b2xsdGVzdCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFQtU2hpcnQgKE11cGZlbCwgMTQuIE5vdiAyMDAzLCAyMDozMToyMyk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA2ODgxNzU4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjg4MDc0MDcKV29tb2VnbGljaCBub2NoIHRpZWVlZiBhdXNnZXNjaG5pdHRlbj8gOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBULVNoaXJ0IChBaGFiLCAxNC4gTm92IDIwMDMsIDIxOjM2OjQ1KToKfiMhIHJuPU11cGZlbCBydD0xMDY4ODM4MjgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODgwNzQwNwpNdXNzIGRvY2gsIHNvbnN0IGtyaWVndCBtYW4gZGVuIFN0b2ZmIGZ1ZXIgQ2F0dHlzIFQtU2hpcnQgamEgbmljaHQgenVzYW1tZW4uCgpTQ05SLApBaGFiLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVC1TaGlydCAoRm9vYmFyLCAxNC4gTm92IDIwMDMsIDIxOjM4OjMzKToKfiMhIHJuPUFoYWIgcnQ9MTA2ODg0MjIwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjg4MDc0MDcKT2hhLCBpbiBkaWVzZW0gRmFsbCBsYXVmZW4gZGllIE1hZWRlbHMgYWxzbyBhbGxlIG9iZW4gb2huZSBydW0uCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFQtU2hpcnQgKE5vbm5lLCAxNC4gTm92IDIwMDMsIDIxOjQzOjI5KToKfiMhIHJuPUZvb2JhciBydD0xMDY4ODQyMzEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODgwNzQwNwpPYiBpY2ggZG9jaCBub2NoIGF1ZiBkaWUgUGFydHkga29tbWUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFQtU2hpcnQgKENhdHdlYXpsZSwgMTQuIE5vdiAyMDAzLCAyMzo0NDo1Nik6Cn4jISBybj1Ob25uZSBydD0xMDY4ODQyNjA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODgwNzQwNwpJY2ggdWViZXJsZWdlIGdlcmFkZSwgb2IgZHUgbWljaCBtb3RpdmllcnQgaGFzdCwgd2FtcGlnIHp1IHdlcmRlbi4KCllUQyAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFQtU2hpcnQgKEdvcm9nLCAxNS4gTm92IDIwMDMsIDAwOjQ2OjIyKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDY4ODQ5ODk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2ODgwNzQwNwpXaWVzbyB3ZXJkZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBULVNoaXJ0IChNdXBmZWwsIDE1LiBOb3YgMjAwMywgMDE6NTI6MzkpOgp+IyEgcm49R29yb2cgcnQ9MTA2ODg1MzU4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjg4MDc0MDcKRXIgbWVpbnQ6IGpldHp0IGVyc3QgcmVjaHQgOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbHRlIFdlaXNoZWl0OiAoT3JrdG9ldGVyLCAxNi4gTm92IDIwMDMsIDEwOjEzOjU2KToKUGl0ZmFsbCBnZWh0LCBkaWUgSHlkcmEga29tbXQgOiAKCls8TWFzdGVSPjpQaXRmYWxsIHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ2dvdGhpYycsIHdvcmF1ZiBkaWVzZSBzaWNoCiAgICAgICAgICBpbiBlaW5lbSBCbGl0eiBva3RhcmluZW4gTGljaHRzIGF1ZmxvZXN0Ll0KRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuCgpXYXMgd2lsbCB1bnMgZGFzIHNhZ2VuPwoKT3JrVCwgZ3J1ZWJlbG5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFsdGUgV2Vpc2hlaXQ6IChBbmF0b2wsIDE2LiBOb3YgMjAwMywgMTA6NDc6MjkpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNjg5NzQwMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4OTc0MDM2CkdlaCBpbnMgU0wsIGt3ZXItV2l0emUgcG9zdGVuLi4uIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogT21iYXRpcyAoT3JrdG9ldGVyLCAxNi4gTm92IDIwMDMsIDIwOjI0OjQzKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDY5MDEwNTY1IHJnPWdpbGRlbi5jaGFvcwp+IyEgdGlkPTEwNjkwMTAzNzIKc29ycnkgZnVlciBkZW4gU2VsYnN0cmVwbHksIGFiZXIgaWNoIGZyYWdlIG1pY2ggZ2VyYWRlLCB3aWUgdmllbGUgTGV1dGUgbnVyCmVpbmVuIFRlaWwgZGVzClRocmVhZHMgbGVzZW4ga29lbm5lbiwgd2VpbCBzaWUgbnVyIGF1ZiAiT21iYXRpcyIgb2RlciBzbyBnYWdlbi4uLgoKT3JrVCwgZ3JpbnNlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBPbWJhdGlzIChEZWVwYmx1ZSwgMTYuIE5vdiAyMDAzLCAyMzo1MTo0NCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA2OTAxMDY4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwMTAzNzIKT21iYXRpcyBzYWd0OiBIYWxsbyBEdSEgRGVlcGJsdWUgaGF0IG1pY2ggenUgRGlyIGdlc2NoaWNrdCEgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBPbWJhdGlzIChNb3Jnb3RoLCAxNi4gTm92IDIwMDMsIDIzOjUzOjAyKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwNjkwMjMxMDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5MDEwMzcyCkthbm4gZXMgc2VpbiwgZGFzcyBPcmt0cm9ldGUgdW5kIER1IGFscyBWb3JiaWxkZXIgZnVlciBPbWJhdGlzIGdlc3RhbmRlbgpoYWJlbj8KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBPbWJhdGlzIChEZWVwYmx1ZSwgMTYuIE5vdiAyMDAzLCAyMzo1NDowNCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNjkwMjMxODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5MDEwMzcyCk9tYmF0aXMgaXN0IHNjaGxpZXNzbGljaCBtZWluIEVyc3RzcGllbGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogT21iYXRpcyAoUGF0cnluLCAxNi4gTm92IDIwMDMsIDIzOjU0OjQ2KToKfiMhIHJuPURlZXBibHVlIHJ0PTEwNjkwMjMxMDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5MDEwMzcyCkljaCBiZWFudHJhZ2UgaGllcm1pdCBlaW5lbiBPbWJhdGlzLVNjaHV0enBhcmFncmFwaGVuLgpJY2ggZmluZGUgZXMgZWluZmFjaCB1bmRhZW1vbmlzY2gsIHdlbm4gZXIgYmVpc3BpZWxzd2Vpc2UgenUgT3JrdG9ldGVyCmdlc2NoaWNrdCB3aXJkIHVuZCBzaWNoIGdhciBuaWNodCBkYWdlZ2VuIHdlaHJlbiBrYW5uLCBkYSBlciBnZW1hZXNzIHNlaW5lbQpBcmJlaXRzdmVydHJhZyBkYW5uIGVpbmZhY2ggaW4gZGVuIHNhdXJlbiBBYmVudGV1cmVyIGJlaXNzZW4gbXVzcyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE9tYmF0aXMgKFZlY3RvciwgMTcuIE5vdiAyMDAzLCAwMzowMjowNyk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA2OTAxMDY4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwMTAzNzIKdW5kIGljaCBmcmFnZSBtaWNoIGdyYWQgd2llIHZpZWxlIGxldXRlIGRpZSBkaXNrdXNzaW9uIG5vY2ggdmVyZm9sZ2VuIGtvZW5uZW4Kd2VpbCBzaWUgb3JrdG9ldGVyLm1wYSBpZ25vcmllcmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTWlzc2JyYXVjaCB2b24gT21iYXRpcz8gKE11YWRpYiwgMTcuIE5vdiAyMDAzLCAwOTo0NTo0NCk6Cn4jISBybj1WYW5pb24gcnQ9MTA2OTA1ODY1MyByZz1naWxkZW4uY2hhb3MKfiMhIHRpZD0xMDY5MDA1NDA4CndvaGVyIHd1c3N0ZSBpY2ggbnVyIGRhc3Mgc293YXMgcGFzc2llcmVuIHdpcmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE9tYmF0aXMgKEJvaW5nLCAxNy4gTm92IDIwMDMsIDA5OjQ1OjQ4KToKfiMhIHJuPVZlY3RvciBydD0xMDY5MDM0NTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTAxMDM3MgpPaCwgT3JrdG9ldGVyIGhhdHRlIHdhcyBnZXBvc3RldD8gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTWlzc2JyYXVjaCB2b24gT21iYXRpcz8gKFZhbmlvbiwgMTcuIE5vdiAyMDAzLCAwOTo0NjowNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTA2OTA1ODc0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwMDU0MDgKRHUga2VubnN0IG1pY2ggZ3V0IGdlbnVnPwoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE1pc3NicmF1Y2ggdm9uIE9tYmF0aXM/IChNdWFkaWIsIDE3LiBOb3YgMjAwMywgMDk6NDY6NDUpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNjkwNTg3NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5MDA1NDA4CkFMTEUgTVVEREVSIFNJTkQgS1JBTksgTUlUIEVJTkVSIEFVU05BSE1FISEhISEhIQpNSVIhISEhIQoKUFM6IEFMUyBCRVdFSVMgV0lSRCBHTEVJQ0ggV0FTIFpVTSBUSEVNQSBTQ0hSRUlFTiBVTkQgQVVTUlVGRVpFSUNIRU4gS09NTUVOCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBPbWJhdGlzIChSb2NodXMsIDE3LiBOb3YgMjAwMywgMTA6Mjg6MzYpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTA2OTAyMzI0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwMTAzNzIKSWNoIHd1c3N0ZSBlcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE1pc3NicmF1Y2ggdm9uIE9tYmF0aXM/IChCYW1iaSwgMTcuIE5vdiAyMDAzLCAxNToyODo1NCk6Cn4jISBybj1NdWFkaWIgcnQ9MTA2OTA1ODgwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwMDU0MDgKSWNoIGhhZXR0ZSBlaW5lbiBHZWdlbmJld2VpcyBpbiBGb3JtIGVpbmVyIEFibWFjaHVuZyB6d2lzY2hlbiBlaW5lbSBnZXdpc3NlbgpNdWFkaWIgdW5kIGVpbmVtIGdld2lzc2VuIEJhbWJpIGluIEJlenVnIGF1ZiBLb256ZXB0ZSB1bmQgVW1zZXR6dW5nIHZvbiAiRkRPIgp1bmQgIlpQSyIuIFdpbGxzdCBEdSBob2VyZW4/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBNaXNzYnJhdWNoIHZvbiBPbWJhdGlzPyAoTXVhZGliLCAxNy4gTm92IDIwMDMsIDE1OjUwOjE0KToKfiMhIHJuPUJhbWJpIHJ0PTEwNjkwNzkzMzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5MDA1NDA4CndlbGNoZXMgYmFtYmk/CmljaCBzZWgga2VpbiBiYW1iaQp1bmQgd28gc2luZCBkaWUgYmFja3VwcyBoaW4/CjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNaXNzYnJhdWNoIHZvbiBPbWJhdGlzPyAoQ3JvZnQsIDE3LiBOb3YgMjAwMywgMTY6MzA6MDIpOgp+IyEgcm49S2FyaXMgcnQ9MTA2OTA4MjkyNCByZz1naWxkZW4uY2hhb3MKfiMhIHRpZD0xMDY5MDA1NDA4Ck9kZXIgdWViZXIgSGlwcGUuICBEZXIgc2Nyb2xsdCBhdWNoIGltbWVyIHNvIHVuZCBuaW1tdCBpbW1lciBkYXMgWmV1ZwpkYXMgaWNoIGt1cnogYXVmIGRlbSBCb2RlbiBhYmdlbGVndCBoYXQgdW5kIHJ1ZWNrdCBlcyBuaWNodCBzbyBlaW5mYWNoCndpZWRlciByYXVzLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE1pc3NicmF1Y2ggdm9uIE9tYmF0aXM/IChUdXJibywgMTcuIE5vdiAyMDAzLCAxNzoyMzozMik6Cn4jISBybj1Dcm9mdCBydD0xMDY5MDgzMDAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTAwNTQwOApCZWkgZGVyIEdlbGVnZW5oZWl0OiBLYW5uIG1pciBtYWwgZWluZXIgc28gbmVuIE9tYmF0aXMgc2NoaWNrZW4/IEljaCB3ZXJkCmJlc3RpbW10Cm5pY2h0IGphbW1lcm4uIEFiZXIgbmljaHQgYWxsZSAqZyoKClR1cmJvIChLYXRlciB1bmQgbmV1Z2llcmlnKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTWlzc2JyYXVjaCB2b24gT21iYXRpcz8gKENyb2Z0LCAxNy4gTm92IDIwMDMsIDE3OjI0OjI3KToKfiMhIHJuPVR1cmJvIHJ0PTEwNjkwODYyMTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5MDA1NDA4CkR1IHNvbGx0ZXN0IG5vY2ggYW5nZWJlbiB3YXMgZnVlciBuZW4gT21iYXRpcyBkdSB3aWxsc3QuICBEaWUgYmlsbGlnZQpWYXJpYW50ZSwgZGllIGhlZnRpZ2Ugb2RlciBlaW5lIEFic3R1ZnVuZyBkYXp3aXNjaGVuICwtKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE1pc3NicmF1Y2ggdm9uIE9tYmF0aXM/IChWYW5pb24sIDE3LiBOb3YgMjAwMywgMTc6NTE6MzEpOgp+IyEgcm49Q3JvZnQgcnQ9MTA2OTA4NjI2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwMDU0MDgKSWNoIGtvZW5udGUgamEgZWluZW4gTGV2ZWwgMTMtRXJ6bWFnaWVyLU9tYmF0aXMgYmF1ZW4gOikgRGllIHNpbmQgc2VociBiZWxpZWJ0CjopCgpWKiAoQmFuZHdpZGh0IGV4ZWVkZWQgZXJyb3IpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTWlzc2JyYXVjaCB2b24gT21iYXRpcz8gKFdoaXRldGlnZXIsIDE3LiBOb3YgMjAwMywgMTc6NTE6NTEpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNjkwODc4OTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5MDA1NDA4CiJCYW5kd2lkdGggZXhjZWVkZWQiLi4uIGtsaW5ndCBndXQuIEVpbmJhdWVuISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE1pc3NicmF1Y2ggdm9uIE9tYmF0aXM/IChNb3Jnb3RoLCAxNy4gTm92IDIwMDMsIDE3OjUxOjU1KToKfiMhIHJuPVZhbmlvbiBydD0xMDY5MDg3ODkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTAwNTQwOAoKSGFiIGljaCBzY2hvbiA6KQpUdXJibyBoYXQgc2ljaCBuaWNodG1hbCBiZWRhbmt0IDooCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE1pc3NicmF1Y2ggdm9uIE9tYmF0aXM/IChDcm9mdCwgMTcuIE5vdiAyMDAzLCAxNzo1MjowOCk6Cn4jISBybj1WYW5pb24gcnQ9MTA2OTA4Nzg5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwMDU0MDgKQ3JvZnQgaGF0IGVpbiBEZWphdnVlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE1pc3NicmF1Y2ggdm9uIE9tYmF0aXM/IChWYW5pb24sIDE3LiBOb3YgMjAwMywgMTc6NTM6NDIpOgp+IyEgcm49Q3JvZnQgcnQ9MTA2OTA4NzkyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwMDU0MDgKS2xhciwgZGllIGd1dGVuIFNwcnVlY2hlIHNpbmQgd2llZGVydmVyd2VuZGJhci4gTWFuIG11c3MgamEgbmljaCBhbGxlcyBzb2ZvcnQKd2Vnc2NobXdlaXNzZW4uCgpWKiwgcXVhc2kgYXVmbSBXZWcgaW5zIEtpbm8uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTWlzc2JyYXVjaCB2b24gT21iYXRpcz8gKFR1cmJvLCAxNy4gTm92IDIwMDMsIDE4OjM2OjAyKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA2OTA4NzkxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwMDU0MDgKT2ggc29ycnksIGljaCB3YXIgYXVmIEFyYmVpdCB1bmQgbXVzc3RlIHdhcyB0dW4gdW5kIG5hY2hoZXIgc2NobmVsbCB3ZWcuIApBbHNvIGRhbmtlIGFuIGRpZXNlciBTdGVsbGUuIApJY2ggZmFuZCBkZW4gT21iYXRpcyB3aXR6aWcuIE9rLCBlciBuZXJ2dCB1bmQgc29sbCBuZXJ2ZW4sIHVuZCBmb3JzY2hlbiB1bmQgClF1ZXN0ZW4gaXN0IGRhbWl0IGthdW0genUgbWFjaGVuLiBFciBpc3QgYXVjaCBuaWNodCBlaW5mYWNoIHp1IGdhZ2dlbiwgZGVuawppY2ggbWFsLiAKCldhZXIgYWJlciBzY2hhZGUsIHdlbm4gZXIgZWluZ2VzY2hyYWVua3Qgd3VlcmRlLiAKClR1cmJvIChLYXRlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBNaXNzYnJhdWNoIHZvbiBPbWJhdGlzPyAoQWxrb2hvbCwgMTcuIE5vdiAyMDAzLCAxODo0MTozNyk6Cn4jISBybj1UdXJibyBydD0xMDY5MDkwNTYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTAwNTQwOAptYWwgZ2FueiBkb29mIGdlZnJhZ3Q6Cndlbm4gaWNoIGpldHp0IGFiZXIgZm9yc2NoZW4gdW5kIHF1ZXN0ZW4gd2lsbD8gRGFzIGhpZXIgaXN0IGVpbiBRdWVzdG11ZC4KCkFsa2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBNaXNzYnJhdWNoIHZvbiBPbWJhdGlzPyAoTWlyaWwsIDE3LiBOb3YgMjAwMywgMTg6NTQ6MTgpOgp+IyEgcm49QWxrb2hvbCBydD0xMDY5MDkwODk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTAwNTQwOApEYW5uIGxvZ2dzdCBEdSBEZWluZW4gWndlaXRpZSBlaW4gdW5kIGhhdXN0IE9tYmF0aXMgdW0uIEFsdGVybmF0aXYKYml0dGVzdCBEdSBlaW5lbiBuZXR0ZW4gQ2hhb3RlbiwgaWhuIHp1IHZlcmJhbm5lbi4gT2RlciBlaW5lbiBaYXViaQpvZGVyIEthZW1wZmVyLCBpaG4genUgemFwcGVuLgpLb21tdW5pa2F0aW9uIGlzdCBhbGxlcy4KCk1pcmlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTWlzc2JyYXVjaCB2b24gT21iYXRpcz8gKFR1cmJvLCAxNy4gTm92IDIwMDMsIDE4OjU0OjM2KToKfiMhIHJuPUFsa29ob2wgcnQ9MTA2OTA5MDg5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwMDU0MDgKRGFubiBsZWdzdCBEdSBEaWNoIG5pY2h0IHNvIG1pdCBMZXV0ZW4gYW4sIGRhc3Mgc2llIERpciB3YWVocmVuZCBlaW5lciBRdWVzdApvZGVyIHdhZWhyZW5kIEZvcnNjaGVucywgdm9yIGFsbGVtIGluIHNjaHdpZXJpZ2VtIEdlbGFlbmRlLCBzbyBlaW4gVGVpbCAKc2NoaWNrZW4uIFNvdmllbCBWZXJudW5mdCBtdXNzIG1vZWdsaWNoIHNlaW4uIERlciBPbWJhdGlzLCBkZW4gbWlyIApNb3Jnb3RoIGhldXRlIGF1ZiBCaXR0ZSBnZXNjaGlja3QgaGF0LCB3YXIgbWVpbiBlcnN0ZXIsIHNlaXQgaWNoIGhpZXIKYmluLiBVbmQgZGFiZWkgaGFiIGljaCBtaWNoIHNjaG9ubWFsIG1pdCBkZW0gZWluZW4gb2RlciBhbmRlcmVuIGV0d2FzCmdlemFua3QuIAoKV2VubiBlcyBkYSBMZXV0ZSBnaWJ0LCBkaWUgdWViZXJ0cmVpYmVuLCBzaW5kIGRpZSBkYXMgUHJvYmxlbSAtIHVuZCB3ZW5uCkxldXRlIHNpY2ggaW4gZ2VnZW5zZWl0aWdlIFVlYmVycmVha3Rpb25lbiBzdGVpZ2Vybiwgc2luZCB3b21vZWdsaWNoCmJlaWRlIFNlaXRlbiBkYXMgUHJvYmxlbS4gRGFzIGlzdCBhYmVyIGVpbiBzb3ppYWxlcyB1bmQga2VpbiB0ZWNobmlzY2hlcwpzb2xjaGVzLgoKVmllbGxlaWNodCBiaW4gaWNoIGRhIHdlbHRmcmVtZCB1bmQga3JpZWcgbml4IG1pdCwgYWJlciBtZWluIEVpbmRydWNrIGlzdCwKZGFzcyBlcyBoaWVyIHZpZWwgS29vcGVyYXRpb24gdW5kIGdlZ2Vuc2VpdGlnZSBVbnRlcnN0dWV0enVuZyBnaWJ0IHVuZAplaGVyIHdlbmlnIFZlcmJpc3NlbmhlaXQgdW5kIGVpbmdlZnJlc3NlbmUgS29uZmxpa3RlLiBXZW5uIHNpY2ggZGEgbWFsCmVpbmVyIGRhbmViZW5iZW5pbW10LCBzb2xsdGUgZGFzIGJlaGVycnNjaGJhciBzZWluLCBvaG5lIGRpZSBoYWxiZQpNdWRsaWIgdW16dXNjaHJlaWJlbi4KClR1cmJvIChLYXRlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBNaXNzYnJhdWNoIHZvbiBPbWJhdGlzPyAoTmliZWwsIDE3LiBOb3YgMjAwMywgMTk6MjE6MDUpOgp+IyEgcm49TWlyaWwgcnQ9MTA2OTA5MTY1OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwMDU0MDgKRWluZW4gIm5ldHRlbiBDaGFvdGVuIj8gSWNoIGRhY2h0IGRhcyBzZWkgaGllciBhbGxlcyBzbyBSUEctbGFzdGlnLCBkYXNzCm1hbiBkaWUgQm9zaGVpdCAoei5CLiBPbWJhdGlzKSBkZXIgQ2hhb3RlbiBlaW5mYWNoIGFremVwdGllcmVuIG11c3MuCiAgLSBOaWJlbAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbHQgdW5kIGFiZ2VrYXV0Li4udW5kIGltbWVyIHdpZWRlciBndXQgKE1vcmdvdGgsIDE3LiBOb3YgMjAwMywgMjA6MjY6MjQpOgpDYXR3ZWF6bGUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKQ2F0d2VhemxlIGlzdCBkYS4gRHUgZnVlaGxzdCBEaWNoIHNpY2hlci4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWx0IHVuZCBhYmdla2F1dC4uLnVuZCBpbW1lciB3aWVkZXIgZ3V0IChGb29iYXIsIDE3LiBOb3YgMjAwMywgMjA6Mjg6NTkpOgp+IyEgcm49TW9yZ290aCBydD0xMDY5MDk3MTg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTA5NzE4NApDYXR3ZWF6bGUgaXN0IGFsdCB1bmQgYWJnZWthdXQ/CgpEYXMgZXJrbGFlcnQgbmF0dWVybGljaC4uLiBMYXNzZW4gd2lyIGRhcy4KCkZvb2JhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBULVNoaXJ0IChMaWFyYSwgMTcuIE5vdiAyMDAzLCAyMDo1MjoxOSk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwNjg4MDc0Mjcgcmc9cGFydHkKfiMhIHRpZD0xMDY4ODA3NDA3CkR1IGhhc3Qga2VpbmUgVGFpbGxlLiA6PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTWlzc2JyYXVjaCB2b24gT21iYXRpcz8gKE9nbywgMTcuIE5vdiAyMDAzLCAyMDo1Mzo1Nik6Cn4jISBvbj1PZ28gb3Q9MTA2OTA5ODgyMiBvZz1naWxkZW4uY2hhb3MKfiMhIHJuPUFuYXRvbCBydD0xMDY5MDkyNzA2IHJnPWdpbGRlbi5jaGFvcwp+IyEgdGlkPTEwNjkwMDU0MDgKV2llIGpldHp0PyBOaWNodCBhdWYgS29zdGVuIGFuZGVyZXI/IFdpZSBkZW5uIGRhbm4/CgpPZ28sIHZlcmxlZ3QgamEgc2Nob24uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFQtU2hpcnQgKE1haGFyZXQsIDE3LiBOb3YgMjAwMywgMjA6NTQ6MDYpOgp+IyEgcm49TGlhcmEgcnQ9MTA2OTA5ODczOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjg4MDc0MDcKVXBzLCBoYWIgaWNoIGRpZSBpcmdlbmR3byBsaWVnZW4gZ2VsYXNzZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBULVNoaXJ0IChMaWFyYSwgMTcuIE5vdiAyMDAzLCAyMDo1Njo1Mik6Cn4jISBybj1NYWhhcmV0IHJ0PTEwNjkwOTg4NDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4ODA3NDA3ClVlYnJpZ2VucyBtb2VjaHRlIGljaCBoaWVyIGRlbiBWb3JzY2hsYWcgZWluZXMgdW5nZW5hbm50ZW4gQmllcnNjaHVldHRsZXJzCmF1ZmdyZWlmZW4sIGF1Y2ggVGllLVNjaG9lcnRzIG1pdCBkZW0gQXVmZHJ1Y2sgJ1ZPUk5FJyBhbnp1YmlldGVuLiA6PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVC1TaGlydCAoRm9vYmFyLCAxNy4gTm92IDIwMDMsIDIwOjU3OjU4KToKfiMhIHJuPUxpYXJhIHJ0PTEwNjkwOTkwMTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY4ODA3NDA3CkJlaSBGcmF1ZW4gc2llaHQgbWFuIGRvY2gsIHdvIHZvcm5lIGlzdC4KCkhtLCBiZWkgTWFlbm5lcm4gYXVjaC4uLgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBULVNoaXJ0IChMaWFyYSwgMTcuIE5vdiAyMDAzLCAyMTowMjo0Myk6Cn4jISBybj1Gb29iYXIgcnQ9MTA2OTA5OTA3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjg4MDc0MDcKSmEsIChtYW5jaG1hbCkgYWJlciBudXIgb2huZSBTY2hvZXJ0cyB1bmQgQ28uIDo+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogTWlzc2JyYXVjaCB2b24gT21iYXRpcz8gKE11cGZlbCwgMTcuIE5vdiAyMDAzLCAyMjozMTo0NCk6Cn4jISBybj1NaXJpbCBydD0xMDY5MDkxNjU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTAwNTQwOApJY2ggZ2xhdWJlLCBlciB3aWxsIGFuZGV1dGVuLCBkYXMgZXIga2VpbmUgRnJldW5kZSBoYXQuLi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBQcm90b2tvbGwgZGVyIE1pdGdsaWVkZXJ2ZXJzYW1tbHVuZyBpbiBCcmllc2VsYW5nIGFtIDAyLjA4LjAzIChWYW5pb24sIDE4LiBOb3YgMjAwMywgMjA6Mjc6NDEpOgp+IyEgcm49TWluZ28gcnQ9MTA2OTE4MzYyNSByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTA2OTEwODQxOQpXaXJsZCBsYW5nc2FtIFplaXQsIGRpZSBSdWJyaWsgenUga29ycmlnaWVyZW4uCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogUHJvdG9rb2xsIGRlciBNaXRnbGllZGVydmVyc2FtbWx1bmcgaW4gQnJpZXNlbGFuZyBhbSAwMi4wOC4wMyAoQW5hdG9sLCAxOC4gTm92IDIwMDMsIDIwOjI4OjQ5KToKfiMhIHJuPVZhbmlvbiBydD0xMDY5MTgzNjYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTEwODQxOQpMZWlkZXIgaXN0IEdyaW1tYm9ybiB1bHRyYWlkbGUuLi4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNaXNzYnJhdWNoIHZvbiBPbWJhdGlzPyAoTXVhZGliLCAxOS4gTm92IDIwMDMsIDE3OjA5OjE5KToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA2OTIzMjY2NCByZz1naWxkZW4uY2hhb3MKfiMhIHRpZD0xMDY5MDA1NDA4Cjp6aWVodCBlaW5lIEF1Z2VuYnJhdWUgaG9jaCB1bmQgenVlY2t0IGVpbmVuIEhhbW1lciBoaW50ZXIgc2VpbmVtIFJ1ZWNrZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBNaXNzYnJhdWNoIHZvbiBPbWJhdGlzPyAoV2hpdGV0aWdlciwgMTkuIE5vdiAyMDAzLCAxNzoxMzowNik6Cn4jISBybj1NdWFkaWIgcnQ9MTA2OTI1ODE1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwMDU0MDgKSHVjaCA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBNaXNzYnJhdWNoIHZvbiBPbWJhdGlzPyAoQW5hdG9sLCAxOS4gTm92IDIwMDMsIDIwOjIzOjIwKToKfiMhIHJuPU1lZGljIHJ0PTEwNjkyNjg0NzAgcmc9Z2lsZGVuLmNoYW9zCn4jISB0aWQ9MTA2OTAwNTQwOApEaWUgc2VjaHMgTW9uYXRlIHdhcmVuIHVtLiAKRGFzIGlzdCBhbGxlcy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTWlzc2JyYXVjaCB2b24gT21iYXRpcz8gKE1pbmdvLCAyMC4gTm92IDIwMDMsIDAzOjMyOjI3KToKfiMhIHJuPUxlaWxhIHJ0PTEwNjkyODI4MzQgcmc9Z2lsZGVuLmNoYW9zCn4jISB0aWQ9MTA2OTAwNTQwOApJY2ggZ2VoZSBpbiBtaWNoIHVuZCBzdGVsbGUgZmVzdCwgZGFzcyBpY2ggZGlyIGdlcm4gZWluZW4gRXVzZWJpdXMgc2NoZW5rZW4KbW9lY2h0ZS4gU2VsYnN0IGF1ZiBkaWUgdW5nbGF1YmxpY2hlIEdlZmFociBoaW4sIGRhc3MgYmVpIGRpciBsZWRpZ2xpY2ggZWluCiJFdXNlYml1cyBrb21tdCBhbi4iIHN0dWVuZGUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQnJld2VyIGlzdCBzY2h1bGQhIChIdXJheHByYXgsIDIwLiBOb3YgMjAwMywgMTE6NTk6MTcpOgpEZWluIEZyZXVuZCBCcmV3ZXIgdGVpbHQgRGlyIG1pdDoga3VyemVyIHJlYm9vdC4uIHVuZCBkYSBpY2gga2VpbiB1bml4IGhhYmUKRGVpbiBGcmV1bmQgQnJld2VyIHRlaWx0IERpciBtaXQ6IGRhdWVydCBlcyBrdXJ6IDspCkRlaW4gRnJldW5kIEJyZXdlciB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4gCltNb2VyZGVyOkdlaXN0IGVpbmVzIHJpZXNpZ2VuIFNhZXVyZXdlc2Vuc10gV2VubiBpY2ggRGljaCBlcndpc2NoZSwgQ2FlZG1vbiEKU2F2aW5nIGhhc2hsaXN0IGhlbHAKJSBDb25uZWN0aW9uIHRvIGh1cmF4IGNsb3NlZDogcmVjdjogQ29ubmVjdGlvbiByZXNldCBieSBwZWVyCgpmYWxzY2hlbiBSZWNobmVyIGVyd2lzY2h0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTWlzc2JyYXVjaCB2b24gT21iYXRpcz8gKFpvb2ssIDIwLiBOb3YgMjAwMywgMTg6NTU6MTApOgp+IyEgcm49TWVkaWMgcnQ9MTA2OTI2ODQ3MCByZz1naWxkZW4uY2hhb3MKfiMhIHRpZD0xMDY5MDA1NDA4CltCaWVyc2NodWV0dGxlcjpCcnVub10gV2FzIG1hY2h0IGRlbm4gT21iYXRpcyBoaWVyPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoIGluIGRlciBTY2h1bGUuLi4gKE1vcmdvdGgsIDIxLiBOb3YgMjAwMywgMTE6MDY6MzQpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwNjk0MDkwMDIgcmc9d2l0emUKfiMhIHRpZD0xMDY5NDA5MDAyCkRlciB3YWVyIHdpcmtsaWNoIGd1dCwgd2VubiBtYW4gaWhuIHZlcnVlbmZ0aWcgbGVzZW4ga29lbm50ZSA6KAoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV1bGljaCBpbiBkZXIgU2NodWxlLi4uIChBcG9sbG9uaWEsIDIxLiBOb3YgMjAwMywgMTE6MDc6MjQpOgp+IyEgcm49TW9yZ290aCBydD0xMDY5NDA5MTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTQwOTAwMgpJY2ggaGF0dGUgYWJlciBrZWluZSBMdXN0LCBkaWUgVW1sYXV0ZSByYXVzenVkYWVuZ2Vsbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldWxpY2ggaW4gZGVyIFNjaHVsZS4uLiAoTW9yZ290aCwgMjEuIE5vdiAyMDAzLCAxMTowODo1NCk6Cn4jISBybj1BcG9sbG9uaWEgcnQ9MTA2OTQwOTI0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjk0MDkwMDIKSGFiIGljaCBnZXNlaGVuLCBkYW5uIGJhY2sgS2Vrc2UsIHdlbm4gRHUgc2Nob24ga2VpbmUgVW1sYXV0ZSBhZW5kZXJuIHdpbGxzdAo6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5ldWxpY2ggaW4gZGVyIFNjaHVsZS4uLiAoQXBvbGxvbmlhLCAyMS4gTm92IDIwMDMsIDExOjExOjMwKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA2OTQwOTMzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjk0MDkwMDIKSWNoIGJpbiBkb2NoIHNjaG9uIGRhYmVpLiBIZXV0ZSBzaW5kIFNjaG9rby0gdW5kIEtva29zbWFrcm9uZW4gZHJhbi4gVW5kIGRpZQpCcm9tYmVlcnN0ZXJuZSB2b24gZ2VzdGVybiBzaW5kIGF1Y2ggZW5kbGljaCB2ZXJ6aWVydCAqYXVnZW5yb2xsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmV1bGljaCBpbiBkZXIgU2NodWxlLi4uIChNb3Jnb3RoLCAyMS4gTm92IDIwMDMsIDExOjExOjUwKToKfiMhIHJuPUFwb2xsb25pYSBydD0xMDY5NDA5NDkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTQwOTAwMgpEYW5rZSwgaWNoIGZhc3NlIGRhcyBhbHMgRWlubGFkdW5nIGF1ZiA6KSkKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBOZXVsaWNoIGluIGRlciBTY2h1bGUuLi4gKENhdHdlYXpsZSwgMjEuIE5vdiAyMDAzLCAxMToxNToyMik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNjk0MDk1MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5NDA5MDAyCkF1c2dlemVpY2huZXQsIGdyaWxsdCBpaHIgYW0gV0U/IDotKQpPZGVyIGlzdCBzY2hvbiB3aWVkZXIgU3RhbW10aXNjaCA6KQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWFhYTCAoSmFtZXNvbiwgMjEuIE5vdiAyMDAzLCAxMToyNzoxMik6Cn4jISBybj1Nb250YW51cyBydD0xMDY5NDEwMzI2IHJnPXBhcnR5Cn4jISB0aWQ9MTA2OTQxMDMyNgpobSB1bmQgQ2F0dHkgd29sbHRlIGtlaW4gVC1TaGlydD8KCipnKiBTQ05SCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IG1vdGl2IChDYXR3ZWF6bGUsIDIxLiBOb3YgMjAwMywgMTI6NTc6NTEpOgp+IyEgcm49TWFoYXJldCBydD0xMDY5NDE1NjQ3IHJnPXBhcnR5Cn4jISB0aWQ9MTA2OTMyNzQ1MApIb2VyIGF1ZiBkYXMsIHdhcyBNYWhhIHNhZ3QsIE1vbnRhbnVzLCBzY2hsaWVzc2xpY2ggbXVlc3NlbiBkaWUgQmlsZGVyCnJpY2h0aWcgLi4uIHBsYXR6aWVydCBzZWluLgoKWVRDIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmV1bGljaCBpbiBkZXIgU2NodWxlLi4uIChWYW5pb24sIDIxLiBOb3YgMjAwMywgMTY6NTI6NTgpOgp+IyEgcm49QXBvbGxvbmlhIHJ0PTEwNjk0MDk0OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5NDA5MDAyCkJyYXVjaHN0IER1IG5vY2ggbWVpbmUgUkwtQWRyZXNzZSBmdWVyIGRpZSBQcm9iaWVycGFja3VuZz8KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmR5IGFid2VydGVuISAoRWlzaSwgMjEuIE5vdiAyMDAzLCAxOTo1Nzo1MCk6CmtvbW10IGRpZXNlIE51bGwgdW5kIHZlcnNjaGV1Y2h0IG1pciBkaWUgRGFlbW9uZW46Cgo+QW5keSBzYWd0OiBJbnRhcmJpciwgc3RvZWhydCBlcyBkaWNoLCB3ZW5uIGljaCBtYWwga3VyeiBldXJlbiBhZG1pbiBhbnJ1ZmUsCj5BbmR5IHNhZ3Q6IHVuZCBpaG0gbWl0dGVpbGUgZGFzIGV1cmUgcmVjaG5lciBuaWNodCBmdWVyIHdpc3NlbnNjaGFmdGxpY2hlCj5BbmR5IHNhZ3Q6IHp3ZWNrZSBnZW51dHp0IHdlcmRlbiwgYmVzb25kZXJzIHZvbiBkaXI/Cj5JbnRhcmJpciB2ZXJsYWVzc3QgZGllc2UgV2VsdC4KCkVpc2ksIG11c3MgQW5keSBtYWwgd2llZGVyIGluIGRlbiAqcnNjaCB0cmV0ZW4gLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogTW90aXZhdGlvbi4uLiAoT3JrdG9ldGVyLCAyMi4gTm92IDIwMDMsIDE3OjAyOjA1KToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA2OTUxNjg1MyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA2OTMzMjcwMQpPaywgc2NocmVpYiBlaW5lbiBBbnRyYWcgYW4gR3JpbW1ib3JuLCBiaXR0ZSBkcmVpIER1cmNoc2NobGFlZ2UgbmljaHQKdmVyZ2Vzc2VuLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmlkbGUgb2RlciBuaWNodCBpZGxlPyA7KSAoWm9vaywgMjMuIE5vdiAyMDAzLCAxNDo0NzozNCk6CltUb2Q6TGFyc10gRWluIFNwcnVuZyBpbiBlaW5lbiBUYWxrZXNzZWwgaGF0IGdlcmFkZSBUdXJvY2sgdW1nZWJyYWNodC4KW1RvZDpFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbF0gUGZmZmZmZmZmZmZmdC4uLi4uLi5QTFVNUFMhCj4gZmluZ2VyIHR1cm9jawpUdXJvY2sgaXN0IGFud2VzZW5kLAooLi4uKQp6LlouIGFid2VzZW5kLCBHcnVuZCAgOiBtZWhyIG9kZXIgd2VuaWdlciBpZGxlCgoKTmUsIGlzIGtsYXIgOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaWRsZSBvZGVyIG5pY2h0IGlkbGU/IDspIChPcmt0b2V0ZXIsIDIzLiBOb3YgMjAwMywgMTQ6NDk6MzApOgp+IyEgcm49Wm9vayBydD0xMDY5NTk1MjU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTU5NTI1NApEdSBmaW5nZXJzdCBmcmlzY2hlIExlaWNoZW4/CgoqS29wZiBzY2h1ZXR0ZWxuZCogT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaWRsZSBvZGVyIG5pY2h0IGlkbGU/IDspIChEYXJrbG9yLCAyMy4gTm92IDIwMDMsIDIxOjQzOjU3KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDY5NTk1MzcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTU5NTI1NApOaWNoIGJlZmluZ2VybiEgLSBBdWYocillc3NlbiEgCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBpZGxlIG9kZXIgbmljaHQgaWRsZT8gOykgKEdsb2luc29uLCAyMy4gTm92IDIwMDMsIDIxOjU4OjExKToKfiMhIHJuPURhcmtsb3IgcnQ9MTA2OTYyMDIzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjk1OTUyNTQKQXVmcmVpc3Nlbj8gTmVuZSwgWm9vayBtYWcgendhciBrb21pc2NoIHNlaW4gYWJlciBzaWNoZXIgbmljaHQgbmVrcm9waGlsLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaGxlY2h0ZXMgR2V3aXNzZW4gKEdpdGFycmUsIDIzLiBOb3YgMjAwMywgMjI6MDI6MDEpOgoKRWJlbiBwYXNzaWVydDoKClNjaG9uIDIyIFVociB1bmQgbm9jaCBpbW1lciBuaWNodHMgZnVlciBkaWUgTWFnaXN0ZXJhcmJlaXQgZ2V0YW4hClBsb2V0emxpY2ggZHVyY2hqYWd0IERpY2ggZWluIHN0ZWNoZW5kZXIgU2NobWVyeiwgdW5kIERlaW4gQmV3dXNzdHNlaW4KYmVnaW5udCBkYWhpbnp1c2Nod2luZGVuLgoKR2l0YXJyZSAtIGdyaW5zdCBpbW1lcm5vY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTY2hsZWNodGVzIEdld2lzc2VuIChBbmF0b2wsIDI0LiBOb3YgMjAwMywgMTE6MDU6MzgpOgp+IyEgcm49R2l0YXJyZSBydD0xMDY5NjIxMzIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTYyMTMyMQpEaWVzZSBVaHJtZWxkdW5nIGtvbW10IG1pciBuaWNodCB1bmJla2FubnQgdm9yICpnbHVja3MqIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE11c2lrIGV0IGNldGVyYSAoUGl0ZmFsbCwgMjQuIE5vdiAyMDAzLCAxOTo1Nzo0OCk6Cn4jISBybj1MZWliaSBydD0xMDY5Njk5NTQ4IHJnPXBhcnR5Cn4jISB0aWQ9MTA2OTA5NzY3MgonTGFzdCBDaHJpc3RtYXMnIHZvbiBKQk8gPwoKUGl0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE11c2lrIGV0IGNldGVyYSAoQW5hdG9sLCAyNC4gTm92IDIwMDMsIDE5OjU4OjA4KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTA2OTcwMDI2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwOTc2NzIKIkZyb2hlcyBGZXN0IiB2b24gZGVuIEZhbnRhND8gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTXVzaWsgZXQgY2V0ZXJhIChSb2NodXMsIDI0LiBOb3YgMjAwMywgMjA6MDI6MzIpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNjk3MDAyODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5MDk3NjcyCiJGcm9oZSBXZWlobmFjaHQsIGljaCBob2ZmIGVzIGdlaHQgZXVjaCBndXQiCnZvbiBkZW4gUm90ZW4gUm9zZW4/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTXVzaWsgZXQgY2V0ZXJhIChDcm9mdCwgMjQuIE5vdiAyMDAzLCAyMDoxOToyMyk6Cn4jISBybj1Sb2NodXMgcnQ9MTA2OTcwMDU1MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwOTc2NzIKIkppbmdsZSBCZWxscyIgdm9uIEtvcm4/IDo+CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE11c2lrIGV0IGNldGVyYSAoRGVlcGJsdWUsIDI0LiBOb3YgMjAwMywgMjA6NDM6NDgpOgp+IyEgb249RGVlcGJsdWUgb3Q9MTA2OTcwMzAxMiBvZz1wYXJ0eQp+IyEgcm49TGVpYmkgcnQ9MTA2OTY5OTU0OCByZz1wYXJ0eQp+IyEgdGlkPTEwNjkwOTc2NzIKRHUga2FubnN0IGphIFNjaG9rb2xhZGVuLUdlb3JnZS1NaWNoYWVsLUZpZ3VyZW4gbWl0YnJpbmdlbi4KRGllIGthbm4gbWFuIGRhbm4gamUgbmFjaCBnZXNjaG1hY2sgdmVybmFzY2hlbiBvZGVyIGF1ZmZyZXNzZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBNdXNpayBldCBjZXRlcmEgKEZvb2JhciwgMjQuIE5vdiAyMDAzLCAyMDo0ODozMik6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDY5NzAzMDI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTA5NzY3MgpEaWUgc2NobWVsemVuIHNvIHNjaG5lbGwuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp1c2FtbWVuaGFuZz8gKEZvb2JhciwgMjQuIE5vdiAyMDAzLCAyMTo1MDoxNyk6CkRlaW5lIEZyZXVuZGluIEFzdWthIHRlaWx0IERpciBtaXQ6IHdhcyBtYWNoc3QgZHUgbWlyIHNvdmllbCBQYXBpZXIsIFpvb2s/CkRlaW4gRnJldW5kIFpvb2sgdGVpbHQgRGlyIG1pdDogRGFzIGthbSBhbGxlcyBwZXIgbm9ybWFsZXIgUG9zdC4KRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IERlaW4gS2xvcGFwaWVyIGtvbW10IHBlciBQb3N0PyA6bykKRGVpbiBGcmV1bmQgWm9vayB0ZWlsdCBEaXIgbWl0OiBTdGFwZWxuLiBGdWVyIGRhcyBQcm9qZWt0IGlzdCBkZXIgR2VzYW10c3RhcGVsCkRlaW4gRnJldW5kIFpvb2sgdGVpbHQgRGlyIG1pdDogaW5zZ2VzYW10IGJlaSBjYS4gNzBjbS4KRGVpbiBGcmV1bmQgWm9vayB0ZWlsdCBEaXIgbWl0OiB1bmQgaXJnZW5kd2FubiBoZWZ0ZSBpY2ggbWFsIGFsbGVzIGFiLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE11c2lrIGV0IGNldGVyYSAoTGVpYmksIDI0LiBOb3YgMjAwMywgMjI6MDM6MjIpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTA2OTcwMzAyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwOTc2NzIKaWNoIG1hZyBudXIgc2Nob2tvLW9zdGVyaGFzaXMuLi4gZGVuZW4ga2FubiBtYW4gc28gc2Nob2VuIGRpZSBvaHJlbiBhYmJlaXNzZW4uCgpsZWliaSBoYXQga2VpbiBoZXJ6IGZ1ZXIgb3N0ZXJoYXNpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFp1c2FtbWVuaGFuZz8gKEdsb2luc29uLCAyNC4gTm92IDIwMDMsIDIzOjIwOjU2KToKfiMhIHJuPUZvb2JhciBydD0xMDY5NzA3MDE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTcwNzAxNwpJc3QgZGFzIHZlcnN1Y2h0ZXIgRmFla2FsaHVtb3I/IEVya2xhZXIgbWlyIG1hbCBlaW5lciBkZW4gV2l0ei4gV2VyIGlzdCBkYWZ1ZXIKamV0enQgenVzdGFlbmRpZz8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTXVzaWsgZXQgY2V0ZXJhIChDcm9mdCwgMjQuIE5vdiAyMDAzLCAyMzoyNjoxMik6Cn4jISBybj1MZWliaSBydD0xMDY5NzA3ODAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTA5NzY3MgpXYXMgd29obCBOZXNhamEgZGF6dSBzYWd0IDpvKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE11c2lrIGV0IGNldGVyYSAoTW9udGFudXMsIDI1LiBOb3YgMjAwMywgMTE6NTg6MDMpOgp+IyEgcm49QmFtYmkgcnQ9MTA2OTc1Nzc1NSByZz1wYXJ0eQp+IyEgdGlkPTEwNjkwOTc2NzIKSWNoIGtlbm4gbnVyICJiYWxsYWJhbGxhIiwgaXN0IGRhcyBpZGUgamFwYW5pc2NoZSBWZXJzaW9uIGRhdm9uPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTXVzaWsgZXQgY2V0ZXJhIChBbGtvaG9sLCAyNS4gTm92IDIwMDMsIDEzOjAzOjQ3KToKfiMhIHJuPUFuYXRvbCBydD0xMDY5Njk4NzI2IHJnPXBhcnR5Cn4jISB0aWQ9MTA2OTA5NzY3MgpBbHNvIHdlbm4gaWNoIHNvIGxlc2UsIHdhcyBkZXIgU2NoYXJvbiBhbGxlcyBmdWVyIEFudGlzZW1pdGVuIGhhZWxsdCwgZGFubgpnaWJ0cyBlaW5lIGdhbnplIE1lbmdlIG1laHIgQW50aXNlbWl0ZW4gYWxzIG1hbiBzbyBnZW1pbmhpbiBkZW5rdC4KCkFsawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTXVzaWsgZXQgY2V0ZXJhIChNYWhhcmV0LCAyNS4gTm92IDIwMDMsIDEzOjI5OjQyKToKfiMhIHJuPUFsa29ob2wgcnQ9MTA2OTc2MTgyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwOTc2NzIKU293ZWl0IGljaCB3ZWlzcyBoYWJlbiBkaWUgSmFwYW5lciBlaW4gci4gIEplZGVuZmFsbHMgaGFiZW4gZGllIG5lIE1lbmdlIE5hbWVuCnVuZCBzb25zdGlnZSBXb2VydGVyLCBkaWUgZGllc2VuIEJ1Y2hzdGFiZW4gKHdlbm4gc2llIGRlbm4gbGF0ZWluaXNjaGUKQnVjaHN0YWJlbiB2ZXJ3ZW5kZW4pIGVudGhhbHRlbi4KRGFzIG1pdCBvaG5lIHIgdW5kIGRhZnVlciBuZW4gbC1LbGFuZyB3YXJlbiBkaWUgQ2hpbmVzZW4sIElJUkMuCgpNYWhhLCBsZW5rdCB2b20gVGhlbWEgYWIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE11c2lrIGV0IGNldGVyYSAoQW50aGVhLCAyNS4gTm92IDIwMDMsIDEzOjMyOjE3KToKfiMhIHJuPU1haGFyZXQgcnQ9MTA2OTc2MzM4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwOTc2NzIKSGFlbmd0IGFiZXIgdm9uIGRlciBSZWdpb24gYWIuIEVzIGdpYnQgbWVociBhbHMgZ2VudWcgU3ByYWNocmVnaW9uZW4gaW4gQ2hpbmEsCnVuZCB6aWVtbGljaCB2aWVsZSBkYXZvbiBoYWJlbiBkdXJjaGF1cyBlaW5lbiBSLUxhdXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBNdXNpayBldCBjZXRlcmEgKEFudGhlYSwgMjUuIE5vdiAyMDAzLCAxMzozNDoyMik6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNjk3NjE4Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5MDk3NjcyCkRlciBCZWdyaWZmICJBbnRpc2VtaXQiIGlzdCBtZWluZXIgTWVpbnVuZyBuYWNoIGV4dHJlbSByYXNzaXN0aXNjaC4gVW5kIHdlbm4KbWFuIGVzIGdlbmF1IGJldHJhY2h0ZXQgaXN0IE1yLiBTY2guIGF1Y2ggZWluIHppZW1saWNoZXIgUmFzc2lzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNdXNpayBldCBjZXRlcmEgKE1haGFyZXQsIDI1LiBOb3YgMjAwMywgMTM6MzQ6MzApOgp+IyEgcm49QW50aGVhIHJ0PTEwNjk3NjM1Mzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5MDk3NjcyCkRhcyBnbGF1YiBpY2ggZ2xhdHQuIFdpZSBnZXNhZ3QsIGljaCBoYWIga2VpbmUgQWhudW5nLiAgQmluIG1pciBhYmVyIHNpY2hlciwKZGFzcyBkaWUgSmFwYW5lciBkYXMgciBoYWJlbiB1bmQgc3ByZWNoZW4ga29lbm5lbi4gIAoKTWFoYSwgU3Bpb24gdW5kIEdpZnRtaXNjaGVyIGFECgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTXVzaWsgZXQgY2V0ZXJhIChNb250YW51cywgMjUuIE5vdiAyMDAzLCAxMzozODozNik6Cn4jISBybj1NYWhhcmV0IHJ0PTEwNjk3NjM2NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5MDk3NjcyCk5hdHVlcmxpY2ggaGFiZW4gZGllIGphcGFuZXIgZWluIFIuIFdpZSB3b2xsdGVuIHNpZSBzb25zdCBhdWNoICJJY2hpcm8iCmF1c3NwcmVjaGVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE11c2lrIGV0IGNldGVyYSAoQWxrb2hvbCwgMjUuIE5vdiAyMDAzLCAxNDowODoyNyk6Cn4jISBybj1Nb250YW51cyBydD0xMDY5NzYzOTE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTA5NzY3MgpoYWJlbiBkaWUgSmFwYW5lciBlaWdlbnRsaWNoIGF1Y2ggZWluIHNjaHRzY2g/CgpBbGsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBNdXNpayBldCBjZXRlcmEgKE1vbnRhbnVzLCAyNS4gTm92IDIwMDMsIDE0OjExOjAxKToKfiMhIHJuPUFsa29ob2wgcnQ9MTA2OTc2NTcwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwOTc2NzIKS2VpbmUgQWhudW5nLCBhYmVyIGljaCBoYWIgbm9jaCBuaWUgZ2Vob2VydCwgZGFzcyBzaWUgZGEgQm9yc2NodHNjaCBlc3NlbiwgdW5kCmVpbiBhbmRlcmVzIFdvcnQgaW0gRGV1dHNjaGVuIG1pdCBkaWVzZXIgQnVjaHN0YWJlbmtvbWJvIGtlbm4gaWNoIG5pY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IE11c2lrIGV0IGNldGVyYSAoTWFoYXJldCwgMjUuIE5vdiAyMDAzLCAxNDoxMToyMSk6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNjk3NjU3MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5MDk3NjcyCldpZXNvIGF1Y2g/IFdlciBoYXQgZGVubiBkYXMgbm9jaD8gIEltIERldXRzY2hlbiBrZW5uIGljaCBkYXMgbmljaHQuCgpVbmQgc2FnIGpldHp0IG5pY2h0IFJ1c3Npc2NoLiAgRGFzIHdpcmQgbnVyIGltbWVyIGZhbHNjaCB1bWdlc2NocmllYmVuLCBhYmVyCmtlaW4gUnVzc2Ugc2FndCBzY2h0c2NoIGluIEJvcnNjaHRzY2guCgpNYWhhLCBTcGlvbiB1bmQgR2lmdG1pc2NoZXIgYUQKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYXN0ZXIvU2xhdmUgKEZvb2JhciwgMjUuIE5vdiAyMDAzLCAxNToxNToyNik6Cmh0dHA6Ly93d3cuc25vcGVzLmNvbS9pbmJveGVyL291dHJhZ2UvbWFzdGVyLmFzcAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE11c2lrIGV0IGNldGVyYSAoR2xvaW5zb24sIDI1LiBOb3YgMjAwMywgMTY6MzA6MDcpOgp+IyEgcm49TWFoYXJldCBydD0xMDY5NzY1ODgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTA5NzY3MgpOYWphLCBkZW0gRGV1dHNjaGVuIGZhZWxsdCBoYWx0IHZlcnN0YWVuZGxpY2hlcndlaXNlIGRpZSBVbXNjaHJlaWJ1bmcgendlaWVyCnZlcnNjaGllZGVuZXIgWmlzY2hsYXV0ZSBzY2h3ZXIsIGFsc28ga2xlbW10IGVyIHNpY2ggZWluZW4gS29uc29uYW50ZW4KZGF6d2lzY2hlbiB1bmQgZGVua3Qgc28gbXVlc3N0ZSBlcyBrbGFwcGVuLiBTbyB3aWUgZXIgZWJlbiBhdWNoIGRhcyAncicgaW4gZGVyCmphcGFuaXNjaGVuIFVtc2NocmVpYnVuZyBsaWVzdCB1bmQgbWVpbnQgZGFzIG11ZXNzZSBqZXR6dCB3aWUgZWluIGRldXRzY2hlcywKa2VobGlnZXMgJ3InIGtsaW5nZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTXVzaWsgZXQgY2V0ZXJhIChWYW5pb24sIDI1LiBOb3YgMjAwMywgMTc6MTk6NTgpOgp+IyEgcm49TWFoYXJldCBydD0xMDY5NzYzMzgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTA5NzY3MgpOYWphLCBlcyBnaWJ0IGVpbmVuIExhdXQgaW0gamFwYW5pc2NoZW4sIGRlciBpcmdlbmR3byB6d2lzY2hlbiBsLCByIHVuZCBkCmxpZWd0LiBJY2ggZ2xhdWJlLCBkYXNzIEphcGFuZXIgZGEga2VpbmVuIGdyb3NzZW4gVW50ZXJzY2hpZWQgbWFjaGVuLCB1bmQgZGVuClVudGVyc2NoaWVkIGdhcm5pY2h0IGhvZXJlbi4gV2VubiA1IEphcGFuZXIgZGVuIE5hbWVuIFJ5byBhdXNzcHJlY2hlbiwga2xpbmd0CmRhcyBSIHdpcmtsaWNoIG1hbCB3aWUgZWluIHIsIG1hbCB3aWUgZWluIGQgdW5kIG1hbCBlaGVyIG5hY2ggbCB1bmQgbWFuY2htYWwKZWJlbiBpcmdlbmR3byBkYXp3aXNjaGVuLgoKViosIGhhdCB2ZXJzdWNodCBkaWVzZW4gTmFtZW4genUgdWViZW4sIHdhZWhyZW5kIG1laHJlcmUgSmFwYW5lcihpbm5lbikgdm9uCmFsbGVuIFNlaXRlbiB2ZXJzdWNodCBoYWJlbiBkaWUgcmljaHRpZ2UgQXVzc3ByYWNoZSB6dSBicmluZ2VuLiAoRGFzIFByb2JsZW0Kd2FyIGFiZXIgaW4gZGVtIEZhbGwgZWhlciBkYXMga2xlaW5lIHlvIHVuZCBkaWUgRGVobnVuZyBhbSBFbmRlIFtSSXlvVV0gKQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBNdXNpayBldCBjZXRlcmEgKFZhbmlvbiwgMjUuIE5vdiAyMDAzLCAxNzoyNTozNyk6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNjk3NjU3MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5MDk3NjcyCk5laW46IGh0dHA6Ly90aW55dXJsLmNvbS93aGx6IDo9KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE11c2lrIGV0IGNldGVyYSAoT2dvLCAyNS4gTm92IDIwMDMsIDE4OjA1OjA0KToKfiMhIHJuPUFsa29ob2wgcnQ9MTA2OTc2MTgyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjkwOTc2NzIKVGFldXNjaCBpY2ggbWljaCwgb2RlciBzaW5kIGRpZSBQYWxlc3RpbmVuc2VyIG5pY2h0IGF1Y2ggU2VtaXRlbiwgd2FzIGRpZQpXb3J0d2FobCBBbnRpc2VtaXRpc211cyBkb2NoIGVpbiB3ZW5pZyBhYnN1cmQgZXJzY2hlaW5lbiBsYWVzc3Q/CgpPZ28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE11c2lrIGV0IGNldGVyYSAoQ2VpbG8sIDI1LiBOb3YgMjAwMywgMTk6MzA6MDMpOgp+IyEgcm49T2dvIHJ0PTEwNjk3Nzk5MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5MDk3NjcyCkplZGVuZmFsbHMgc2luZCBBcmFiaXNjaCB3aWUgSGVicmFlaXNjaCBzZW1pdGlzY2hlIFNwcmFjaGVuLgoKV2FzIG5peCBkYXJhbiAgYWVuZGVydCwgZGFzcyAiQW50aXNlbWl0aXNtdXMiIEp1ZGVuZmVpbmRsaWNoa2VpdCBiZWRldXRldCAtCnZpZWxlIFdvZXJ0ZXIgYmVkZXV0ZW4gbmljaHQgZGFzLCB3YXMgbWFuIGhlcmF1c2Jla29tbXQsIHdlbm4gbWFuIGlocmUKRWluemVsdGVpbGUgYmV0cmFjaHRldC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE11c2lrIGV0IGNldGVyYSAoR25vbWUsIDI2LiBOb3YgMjAwMywgMDE6MDA6NTkpOgp+IyEgcm49S2VrcyBydD0xMDY5NDM0ODEwIHJnPXBhcnR5Cn4jISB0aWQ9MTA2OTA5NzY3MgphbGV4YW5kZXIuLi4gYWNlIG9mIGJhc2UuLi4gYmFja3N0cmVldCBib3lzLiBtdXQgaGFzdCBkdSBqYS4KdW5kIGVpbmVuIGJlc29uZGVycyBzY2hsZWNodGVuIG11c2lrZ2VzY2htYWNrIGRhenUuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNdXNpayBldCBjZXRlcmEgKEdsb2luc29uLCAyNi4gTm92IDIwMDMsIDA0OjE4OjIzKToKfiMhIHJuPUdub21lIHJ0PTEwNjk4MDQ4NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5MDk3NjcyClVlYmVyIEdlc2NobWFjayBsYWVzc3Qgc2ljaCBzdHJlaXRlbi4gUGZmZmYuIEtlaW5lIEx1c3QgOykKClp1bWluZGVzdCBoYXQgS2VrcyBpbW1lciBtYWwgd2llZGVyIGVpbiBwYWFyIEV1cm9uZW4gZnVlciBpcmdlbmR3ZWxjaGVuIEtyYW0KdWViZXIsIHdpbGwgZXMgbWlyIHNjaGVpbmVuLiBPZGVyIGR1IGJlc3RlbGxzdCBhdXMgR2VtZWluaGVpdCBkaWUgLi4uIHdlcgptYWNodCBkZW4gS29obGVrcmFtIGZ1ZXIgZGllIE1lZGllbj8gR0VNQT8gR0VNQSAuLi4genVyIFBhcnR5IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSE1QRiEgKEtla3MsIDI2LiBOb3YgMjAwMywgMTc6MDk6NDQpOgptcGEtcG9zdGluZyB2b24gY2F0d2VhemxlOgpBbHMgUGFydHl2ZXJhbnR3b3J0bGljaGVyYXVzaGlsZnNhc3Npc3RlbnRlbm9yZG5lcnNjaGxlcHBlciBoYWJlIGljaCBkZW4KQXVmdHJhZywga3VuZCB6dSB0dW4sIGRhc3MgZXMgYXVjaCBkaWVzZXMgSmFociB3aWVkZXIgc2VociBuZXR0IHdhZXJlLCB3ZW5uCmVpbiBwYWFyIExldXRlIE11c2lrIGluIENELUZvcm0gbWl0YnJpbmdlbi4gV2VyIGRhcyB0dW4gbW9lY2h0ZSwgc2FnZSBtaXIKYml0dGUgdW50ZXIgQW5nYWJlIGRlciBTdGlscmljaHR1bmcgYmVzY2hlaWQuCgppY2ggaGFiZSBtaXQgbWVpbmVtIGFydGlrZWwgaW4gZGVyIG1wYSBuaWNodHMgd2VpdGVyIGdldGFuLCBhbHMgZGVtIGF1ZnJ1ZiB2b24KY2F0d2VhemxlIHp1IGZvbGdlbi4uLiAodW5kIGljaCBiaWxkZSBtaXIgZWluLCBkYXNzIGVzIHNpY2ggYmVpIG1laW5lciBsaXN0ZQpkdXJjaHdlZ3MgdW0gTVVTSUsgaGFuZGVsdCkgLSBmdWVyIG1pY2ggaXN0IGVzIGVpbmUgc2VsYnN0dmVyc3RhZW5kbGljaGtlaXQsCm1laW5lIGhpbGZlIHVuZCBtaXRhcmJlaXQgYmVpIHdhcyBhdWNoIGltbWVyIGFuenViaWV0ZW4gOi0pICBhYmVyIHdlbm4gaWhyCmF1c3NlciBibG9lZGVuIHNwcnVlY2hlbiB1bmQgZGlyZWt0ZW4gYW5mZWluZHVuZ2VuIG5pY2h0cyBicmluZ2VuIGtvZW5udCwgZGFubgpob2VydCBkb2NoIGJpdHRlIGV1cmVuIGVpZ2VuZW4gZ2VzY2htYWNrdm9sbGVuIG11ZWxsLCBqYT8gaWNoIGthbm4gbWljaCBuaWNodAplcmlubmVybiwgamVtYWxzIGV0d2FzIG5lZ2F0aXZlcyB1ZWJlciBldWNoIHVuZCBldXJlbiBwdXR6aWdlbiBnZXNjaG1hY2sKZXJ3YWVobnQgenUgaGFiZW4hIChhbnR3b3J0IGF1ZiBnbm9tZSkgLSBhdXNzZXJkZW0gaGFsdGUgaWNoIGVzIG9mZmVuIGdlc2FndApmdWVyIGVpbmUgZnJlY2hoZWl0LCBhbHMgIm5hemkiIGhpbmdlc3RlbGx0IHp1IHdlcmRlbiEgKGFudHdvcnQgYXVmIG1vbnRhbnVzCjwtIHZpZWxsZWljaHQgYmlzdCBkdSBqYSBtYWwgaW4gZGVyIGxhZ2UsIGRpciBsaWVkZXIgImFuZ2VibGljaGVyIG5hemlzIgplaW5mYWNoIG51ciBhbnp1aG9lcmVuLCBvaG5lIGRpciBnbGVpY2ggZWluIGhha2Vua3JldXogYXVmIGRlbiBhcnNjaAp0YWV0b3dpZXJlbiB6dSBsYXNzZW4/IGJlaSBNSVIgaGF0cyBtdWVoZWxvcyBmdW5rdGlvbmllcnQhKQoKaWNoIHBvc3RlIGRhcyBhdWYgInNjaG1hcnJuIiwgd2VpbCBpY2gga2VpbmVuIGdyb3NzZW4gYXVmc3RhbmQgbWFjaGVuIHdpbGwuLi4KYWJlciBHRVNBR1Qgd29sbHRlIGljaCBlcyBtYWwgaGFiZW4hIAoqa2VrcyogKHNlaHIsIHNlaHIgYmVsZWlkaWd0ISkKCnBzOiBiZWkgVU5TIHd1ZXJkZSBtYW4gc2ljaCBmdWVyIGRlcmFydGlnZSBhZXVzc2VydW5nZW4gZW50c2NodWxkaWdlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBITVBGISAoR2xvaW5zb24sIDI2LiBOb3YgMjAwMywgMTg6Mzg6MDEpOgp+IyEgcm49S2VrcyBydD0xMDY5ODYyOTg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTg2Mjk4NApKYSwgaWNoIGZ1ZWhsZSBtaWNoIGF1Y2ggc2VociBiZWxlaWRpZ3Qgdm9uIGRlaW5lciBNdXNpa2xpc3RlIHVuZCBlcndhcnRlLApkYXNzIGR1IG1pY2ggdW0gRW50c2NodWxkaWd1bmcgYml0dGVzdC4gSGFiZSBpY2ggZGEgamV0enQgd2FzIGZhbHNjaAp2ZXJzdGFuZGVuPyBBY2gsIHdpciBzaW5kIGphIGluIGRlciByaWNodGlnZW4gUnVicmlrIDopCgpJY2ggdW50ZXJzdHJlaWNoIG1hbCBlYmVuIGVpbjogIm1pciIgaW4gIldlciBkYXMgdHVuIG1vZWNodGUsIHNhZ2UgbWlyIGJpdHRlCnVudGVyIEFuZ2FiZSBkZXIgU3RpbHJpY2h0dW5nIGJlc2NoZWlkIgoKUFM6IER1IGthbm5zdCBkb2NoIGRlaW5lbiBUaHJlYWQgbmljaHQgc28gYWJ3dWVyZ2VuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBITVBGISAoS2VrcywgMjYuIE5vdiAyMDAzLCAxODo1NDo0Myk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDY5ODY4MjgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTg2Mjk4NApwcmltYSBwbGFuISBkdSBtZWludGVzdCBhbHNvLCBpY2ggdGVpbGUgY2F0d2VhemxlIG1laW5lIG11c2lrbGlzdGUgbWl0IC0gdW5kCmRpZSBhbmRlcmVuIHR1biBkYXMgYXVjaCAtIHVuZCBjYXQqIGVyemFlaGx0IGRhbm4gZGllc2VtIHVuZCBqZW5lbSwgd2FzIGRlcgplaW5lIG1pdGJyaW5ndCB1bmQgd2FzIGRlciBhbmRlcmUgbWl0YnJpbmd0Pz8gb2ggamEgLSB3aWVzbyBuaWNodCBlaW5mYWNoIGRpZQpsaXN0ZSBwb3N0ZW4sIGRhbWl0IGplZGVyIHNlaGVuIGthbm4sIHdlciB3YXMgaG9lcmVuIG1vZWNodGU/IGdlaHQgZG9jaCBhdWNoCnVtc3RhZW5kbGljaCB1ZWJlciAyMCBlY2tlbi4uLiAtIGhpZXJtaXQgZW50c2NodWxkaWdlIGljaCBtaWNoIGhvZWZsaWNoIGJlaQpkZW5qZW5pZ2VuLCBkaWUgc2ljaCAoYWJzdXJkZXJ3ZWlzZSkgYXVmIGRlbiBzY2hsaXBzIGdldHJldGVuIGZ1ZWhsZW4uLi4gdW5kCndpc3N0IGlociB3YXM/IGljaCByZWdsZSBkaWUgZGluZ2UgbGllYmVyICJhdWdlIGluIGF1Z2UiIGFscyBzY2hyaWZ0bGljaCEKKmtla3MqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCbG9lZGVzIEludmVudGFyISAoTmVkaW1lLCAyNi4gTm92IDIwMDMsIDIyOjA4OjA0KToKRHUgbWFjaHN0IGVpbmVuIEtub3RlbiBpbiBEZWluIFRhc2NoZW50dWNoLgpEZXIgQmVzZW4gc2V1Znp0IGdlbGFuZ3dlaWx0LgoKVW5kIGRhcyBudXIsIHdlaWwgaWNoIFVsaXRlIG5pY2h0IHZlcmdlc3NlbiB3b2xsdGUuCgpOZWRpbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCbG9lZGVzIEludmVudGFyISAoQmFtYmksIDI2LiBOb3YgMjAwMywgMjM6MDU6NDQpOgp+IyEgcm49TmVkaW1lIHJ0PTEwNjk4ODA4ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5ODgwODg0Ck9vb29vb29vb29vb29vb29vb29vb29vb29oISBKZW1hbmQgYmVudXR6dCBkYXMgVGFzY2hlbnR1Y2ghCgpCYW1iaSwgYmVlaW5kcnVja3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJsb2VkZXMgSW52ZW50YXIhIChOZWRpbWUsIDI2LiBOb3YgMjAwMywgMjM6MDY6NDQpOgp+IyEgcm49QmFtYmkgcnQ9MTA2OTg4NDM0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjk4ODA4ODQKQWJlciBpbW1lciBkb2NoLiBFY2h0IHByYWt0aXNjaCBkYXMgVGVpbC4gWi5CLiB2ZXJoaW5kZXJ0IGVzLApkYXNzIGljaCBLcmFjaCBtaXQgbWVpbmVyIFRvY2h0ZXIgYmVrb21tZSwgd2VubiBpY2ggbWFsIHdpZWRlcgp2ZXJnZXNzZSBpaHIgZGFzIFRhc2NoZW5nZWxkIHp1IHVlYmVyd2Vpc2VuLiBEZW5uIGljaCB2ZXJnZXNzCmVzIG5ldWVyZGluZ3MgbmljaHQgbWVociA7LSkKCk5lZGltZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQmxvZWRlcyBJbnZlbnRhciEgKEFsa29ob2wsIDI2LiBOb3YgMjAwMywgMjM6MDg6NTIpOgp+IyEgcm49TmVkaW1lIHJ0PTEwNjk4ODQ0MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5ODgwODg0CmdlaHQgZGFzIG5jaWh0IG1pdHRlbHMgZWluZXMgRGF1ZXJhdWZ0cmFncyBlaW5mYWNoZXI/CgpBbGsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJsb2VkZXMgSW52ZW50YXIhIChCYW1iaSwgMjYuIE5vdiAyMDAzLCAyMzowOToxNCk6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNjk4ODQ1MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5ODgwODg0CkR1IGdsYXVic3QgbmljaHQsIHdvcnVlYmVyIGljaCBncmFkIG1pdCBOZWRpbWUgcmVkZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJsb2VkZXMgSW52ZW50YXIhIChOaWJlbCwgMjYuIE5vdiAyMDAzLCAyMzowOToyOCk6Cn4jISBybj1OZWRpbWUgcnQ9MTA2OTg4NDQwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjk4ODA4ODQKSG0sIGljaCBoYWIgZGFtYWxzIG1laW4gVGFzY2hlbmdlbGQgbm9jaCBiYXIgYXVmIGRpZSBLcmFsbGUgZ2VrcmllZ3QuLi4gCldhciBhYmVyIHdvaGwgYXVjaCBzbyB3ZW5pZywgZGFzcyBtZWluZSBFbHRlcm4gaW1tZXIgZ2VudWcgZGFiZWkgaGF0dGVuLgogIC0gTmliZWwKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQmxvZWRlcyBJbnZlbnRhciEgKE5lZGltZSwgMjYuIE5vdiAyMDAzLCAyMzowOTo0OCk6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNjk4ODQ1MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5ODgwODg0CkVpZ2VudGxpY2ggamEuIEFiZXIgZGFzIFByb2JsZW0gaXN0LCBkYXNzIHNpZSBzaWNoIGhhZXVmaWdlcgp3YXMgbGVpaHQgdW5kIGJldm9yIGljaCBkYXMgbmllIHdpZWRlciBzZWhlLCB6aWVoIGljaHMgbGllYmVyCmRpcmVrdCB2b24gZGVtIEJldHJhZyBhYiwgZGVuIGljaCB1ZWJlcndlaXNlIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSE1QRiEgKE1vbnRhbnVzLCAyNy4gTm92IDIwMDMsIDEwOjQ3OjAxKToKfiMhIHJuPUtla3MgcnQ9MTA2OTg2OTI4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjk4NjI5ODQKTnVyIGdhbnoga3VyeiB1bmQgc2NobnVyejoKZGllIEF1ZmZvcmRlcnVuZyBrYW0gdm9uIEFuYXRvbCwgQ2F0dHkgaGF0dGUgZGVuIEFydGlrZWwgbnVyIHZlcmxlZ3QuClVuZCBpY2ggaGFiIG5pZW1hbmQgYXVzc2VyIGRlbiBPbmtlbHogYWxzIE5hemkgYmV6ZWljaG5ldCwgdW5kIGljaCBzdGVoZSBhdWNoCmRhenU6IGljaCBiaW4gZGEgaW50b2xlcmFudC4gV2VyIE11c2lrIGZ1ZXIgR2xhdHplbiBtYWNodCwgaXN0IGZ1ZXIgbWljaAp1bnRyYWdiYXIuIFB1bmt0LiBBdWNoIHdlbm4gc2llIGluendpc2NoZW4gdm9tIEthcGl0YWxpc211cyBzb29vbyBnZWxhZXV0ZXJ0CnNpbmQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEhNUEYhIChGb29iYXIsIDI3LiBOb3YgMjAwMywgMTA6NTI6MjIpOgp+IyEgcm49TW9udGFudXMgcnQ9MTA2OTkyNjQyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjk4NjI5ODQKIk11c2lrIGZ1ZXIgR2xhdHplbiIKCjEuIEVzIHNvbGwgU2tpbnMgZ2ViZW4sIGRpZSBlYmVuIGtlaW5lIE5hemlzIHNpbmQuCjIuIEVzIHNvbGwgU2tpbnMgZ2ViZW4sIGRpZSBob2VyZW4gZGllIGdsZWljaCBNdXNpayB3aWUgRHUuIE5hemlzY2h3ZWluLgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBITVBGISAoTW9udGFudXMsIDI3LiBOb3YgMjAwMywgMTA6NTM6NDQpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNjk5MjY3NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5ODYyOTg0ClsgXSBEdSB3ZWlzc3QsIHdhcyBpY2ggZ2VtZWludCBoYWJlLgoKRXMgZ2VodCBkcnVtLCBkYXNzIEJhbmRzLCBkaWUgdmVyc3VjaGVuLCBlaW4gYmVzdGltbXRlcyBQb3RlbnRpYWwKYW56dXNwcmVjaGVuLCBlaW5mYWNoIGlnbm9yaWVydCB3ZXJkZW4gc29sbHRlbiB1bmQgbmljaHQgaW4gZGVuIE1haW5zdHJlYW0KZWluZ2VidW5kZW4uIERlbm4gc29uc3Qgd2lyZCBkaWUgR2VzZWxsc2NoYWZ0IG5vY2ggd2VpdGVyIHZlcmhvaG1hbm50LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSE1QRiEgKEZvb2JhciwgMjcuIE5vdiAyMDAzLCAxMTo0OTo1OCk6Cn4jISBybj1Nb250YW51cyBydD0xMDY5OTI2ODI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTg2Mjk4NApbIF0gS2Flc3RjaGVuIHNpbmQgdG9sbC4KClZlcm1vbnRhbnVzdCBpc3QgZGllIEdlc2VsbHNjaGFmdCBqYSBzY2hvbi4KCld1ZXJkZSBtYW4gamVkZW4sIGRlciBpbiBzZWluZ2VyIEp1Z2VuZCBtYWwgZWluZW4gRmVobGVyIGdlbWFjaHQgaGF0LCBzbyBhbgpkZW4gUHJhbmdlciBzdGVsbGVuLCBoYWV0dGVuIHdpciBlaW5lbiBhbmRlcmVuIEF1c3Nlbm1pbmlzdGVyLgoKVW5kIGphLCBlcyBpc3Qgc2NoZWlzc2VnYWwgb2IgbWFuIGZydWVoZXIgZWluIE5hemkgd2FyLCBlaW4gVGVycm9yaXN0LCBlaW4KS25laXBlbnNjaGxhZWdlciBvZGVyIHdhcyB3ZWlzcyBpY2guCgpBYmVyIHdlbmlnc3RlbnMgZGllIFJ1YnJpayBzdGltbXQuCgpGb29iYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEhNUEYhIChNb250YW51cywgMjcuIE5vdiAyMDAzLCAxMjoxMzo1NSk6Cn4jISBybj1Gb29iYXIgcnQ9MTA2OTkzMDE5OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjk4NjI5ODQKT2ggcHJpbWEsIGVpbiBUaHJlYWQsIGRlciBlaWdlbnRsaWNoIG5hY2ggRGlza3Vzc2lvbiBnZWhvZXJ0LgooMSkgZGVyIGRlcnplaXRpZ2UgQXVzc2VubWluaXN0ZXIgd2FyIG5pZSBlaW4gVGVycm9yaXN0LCBhdWNoIHdlbm4gZHUgZGFzCnVudGVyc3RlbGxzdAooMikgZGllIFZlcmhhcm1sb3N1bmcgZGVzIFJlY2h0c2V4dHJlbWlzbXVzIGlzdCBsZWlkZXIgZWluIGdhZW5naWdlcyBQaGFlbm9tZW4KLS0+IEhvaG1hbm4gaXN0IGRhIG51ciBlaW4ga2xlaW5lcyBCZWlzcGllbAooMykgbGVpZGVyIHNjaGVpbnN0IGR1IGF1Y2ggaW4gU296aWFsa3VuZGUgZ2VzY2hsXkheSF5IXkheSF5IIGRhdWVybmQgYmVpbQpLcmVpZGVob2xlbiBnZXdlc2VuIHp1IHNlaW4sIGJlc2NoYWVmdGlnZSBkaWNoIG1hbCBtaXQgZGVuIFppZWxlbiB2b24gTGlua3MtCnVuZCBSZWNodHN0ZXJyb3Jpc211cywgYmV2b3IgZHUgZGFzIHVlYmVyIGVpbmVuIEthbW0gc2NoZXJzdAooNCkgRGFzIEF1c3N0ZWxsZW4gdm9uIFBlcnNpbHNjaGVpbmVuIGFrYSBkYXMgU3RyZWljaGVuIHZvbiAxMiBKYWhyZW4gYXVzIGRlbQprb2xsZWt0aXZlbiBHZWRhZWNodG5pcyBpbiBkZXIgQWRlbmF1ZXItWmVpdCB3YXIgZ2VuYXVzbyBmcmFnd3VlcmRpZyB3aWUgZGVpbmUKSWdub3Jhbnogdm9uIFRlaWxlbiBkZXMgTGViZW5zbGF1ZmVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogSE1QRiEgKEZvb2JhciwgMjcuIE5vdiAyMDAzLCAxMjoyMTo1NSk6Cn4jISBybj1Nb250YW51cyBydD0xMDY5OTMxNjM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTg2Mjk4NAoxLiBXbyBoYWJlIGljaCB1bnRlcnN0ZWxsdCwgRmlzY2hlciBzZWluIGVpbiBUZXJyb3Jpc3QgZ2V3ZXNlbj8gRXIgd2FyIG51cgplaW5lciB2b24gdmllbGVuIEdld2FsdHRhZXRlcm4gdW5kIFN0ZWluZXdlcmZlcm4sIGRpZSBlcyB6dSBzZWluZXIgWmVpdCBoYWx0CmdhYmUsIHNjaHdhbW0gYWxzbyBtaXQgZGVtIFN0cm9tLgoyLiBKZWdsaWNoZSBWZXJoYXJtbG9zdW5nIGplZGVzIEV4dHJlbWlzbXVzIGlzdCBlaW4gZ2FlbmdpZXMgUHJvYmxlbSwgZGEgd2lyc3QKRHUgbWlyIGRvY2ggaG9mZmVudGxpY2ggenVzdGltbWVuPwozLiBCaWxsaWdlIFBvbGVtaWsgaXN0IGVoZXIgUGF0cnlucyBTdGFlcmtlLCBhdWYgc2VpbiBOaXZlYXUga29tbXN0IER1IGxlaWRlcgpuaWNodCBydW50ZXIuCjQuIEdsYXNoYXVzLiBTdGVpbmUuIERlciBMZWJlbnNsYXVmIGRlciBPbmtlbHogc2NoZWludCBhdWNoIERpciB1bmJla2FubnQgenUKc2Vpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEhNUEYhIChPZ28sIDI3LiBOb3YgMjAwMywgMTM6Mzg6NDkpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNjk5MjY3NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5ODYyOTg0CkVzIHNvbGwgYXVjaCBNdXNsaW1pbm5lbiAoPykgZ2ViZW4sIGRpZSBrZWluIHBvbGl0aXNjaGVzIEtvcGZ0dWNoIHRyYWdlbi4KCk9nbywgT2VsIGlucyBGZXVlciBnaWVzc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSE1QRiEgKEJhbWJpLCAyNy4gTm92IDIwMDMsIDEzOjQ4OjA1KToKfiMhIHJuPU9nbyBydD0xMDY5OTM2NzI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTg2Mjk4NApJY2ggbWFnIG1pY2ggaXJyZW4sIGFiZXIgaGF0dGUgZGFzIG5pY2h0IHdhcyBtaXQgUmVsaWdpb24genUgdHVuPyBEaWUKVmVybWVuZ3VuZyB2b24gUmVsaWdpb24gdW5kIFBvbGl0aWsgYmVpIGdlbWFlc3NpZ3RlbiBNdXNsaW1lbiBoYWx0ZSBpY2ggZnVlcgplaW4gR2VydWVjaHQuIEljaCBtYWcgbWljaCBhYmVyIGF1Y2ggaXJyZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBITVBGISAoT2dvLCAyNy4gTm92IDIwMDMsIDEzOjUzOjQxKToKfiMhIHJuPUJhbWJpIHJ0PTEwNjk5MzcyODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5ODYyOTg0CkRhcyBLb3BmdHVjaCBoYXQgZXR3YXMgbWl0IGRlbSBJc2xhbSB6dSB0dW4sIGludGVyZXNzYW50LCB3b2hlciBoYXN0IGR1IGRpZXNlCkluZm9ybWF0aW9uPyAKCk9nbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IEhNUEYhIChHbG9pbnNvbiwgMjcuIE5vdiAyMDAzLCAxNDoyOTozMSk6Cn4jISBybj1CYW1iaSBydD0xMDY5OTM5NjY5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDY5ODYyOTg0CkRpZSBTUEQgaXN0IGRvY2ggbWl0dGxlcndlaWxlIGVoZXIgbGlua3NyZWNodHNtaXR0aWd1bnRlbiBlaW56dXN0dWZlbiwgbmljaHQ/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IEhNUEYhIChBbnRoZWEsIDI3LiBOb3YgMjAwMywgMTQ6MzE6MTMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA2OTkzOTc3MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjk4NjI5ODQKSGF0IGRpZSBTUEQgdWViZXJoYXVwdCBub2NoIGVpbmUgUmljaHR1bmc/CihvZGVyIGVpbmUgZGVyIGFuZGVyZW4gZ3Jvc3NlbiBQYXJ0ZWllbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBITVBGISAoT2dvLCAyNy4gTm92IDIwMDMsIDE0OjMyOjAxKToKfiMhIHJuPUFudGhlYSBydD0xMDY5OTM5ODczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTg2Mjk4NApLbGFyLCBkaWUgU1BEIHVlYmVyaG9sdCBkaWUgQ0RVIHJlY2h0cy4gQmxhaXIgaGF0cyBkb2NoIHZvcmdlbWFjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IEhNUEYhIChHbG9pbnNvbiwgMjcuIE5vdiAyMDAzLCAxNDozMjo1Nik6Cn4jISBybj1PZ28gcnQ9MTA2OTkzOTkyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjk4NjI5ODQKRWluaG9sZW4gb2huZSB6dSB1ZWJlcmhvbGVuPyBBcmdoLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdlaWhuYWNodHNtYWVubmVyIC4uLiAoQmFtYmksIDI3LiBOb3YgMjAwMywgMTQ6MzM6MzIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA2OTkzOTk1NyByZz13d3cKfiMhIHRpZD0xMDY5OTM5NzE5CldpZSBqZXR6dD8gQXVmIGRlciBTZWl0ZSBnaW5ncyB1bSB3YXMgenUgRXNzZW4/IEljaCBkYWNodGUsIGRhIHdhcmVuIEJpbGRlcgp1ZWJlciBTYWNraHVlcGZlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdlaWhuYWNodHNtYWVubmVyIC4uLiAoR2xvaW5zb24sIDI3LiBOb3YgMjAwMywgMTQ6MzU6MTYpOgp+IyEgcm49QmFtYmkgcnQ9MTA2OTk0MDAxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjk5Mzk3MTkKRHUgaXNzdCBCcmF1c2U/IE1pdCBkZXIgR2FiZWw/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IEhNUEYhIChHbG9pbnNvbiwgMjcuIE5vdiAyMDAzLCAyMDo1NTo0Myk6Cn4jISBybj1OZWRpbWUgcnQ9MTA2OTk2MjkwNSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA2OTg2Mjk4NApTbyBkZXV0bGljaCB3b2xsdGUgaWNoIGphIG51biBhdWNoIHdpZWRlciBuaWNodCBkYXJhdWYgdmVyd2Vpc2VuLgoKOmRlbmt0IC4gbyBPIChTY2h1bGVuIGFtIE5ldHo/KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM0OiBITVBGISAoQW5hdG9sLCAyNy4gTm92IDIwMDMsIDIxOjAwOjA0KToKfiMhIG9uPUFuYXRvbCBvdD0xMDY5OTYzMTY4IG9nPWRpc2t1c3Npb24KfiMhIHJuPUdsb2luc29uIHJ0PTEwNjk5NjMwMjcgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNjk4NjI5ODQKIkVpbiBPcmtoZWxtIGluIGRlciBGb3JtIGVpbmVzIEtlZ2VscyBtaXQgZGVuIE1hc3plbiAuLi4gd2lyZCBhdWYgbWl0dGxlcmVyCkhvZWhlIGltIDUwLUdyYWQtV2lua2VsIHZvbiBlaW5lbSBTY2h3ZXJ0IG1pdCBlaW5lbSBUcmFwZXpxdWVyc2Nobml0dApkZXIgTWFzemVuIC4uLiBkdXJjaGRydW5nZW4uIFdpZXZpZWwgUmF1bSBuaW1tdCBkYXMgU2Nod2VydCBpbm5lcmhhbGIKZGVzIEhlbG1zIGVpbj8iCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzU6IEhNUEYhIChIdW1uaSwgMjcuIE5vdiAyMDAzLCAyMTowMDo0Nik6Cn4jISBvbj1IdW1uaSBvdD0xMDY5OTYzMjI2IG9nPWRpc2t1c3Npb24KfiMhIHJuPUFuYXRvbCBydD0xMDY5OTYzMTY4IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDY5ODYyOTg0ClNvd2FzIHdpZSBEdXJjaHN0b3NzcHVua3RlIG1hY2h0IG1hbiBsZWlkZXIgbmljaHQgaW4gZGVyIFJlYWxzY2h1bGUuIEZyYWcgbWFsCk1pcmlsIG9iIGRpZSBzb2xjaGUgQXVmZ2FiZW4gc3RlbGx0IDstKQoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM1OiBITVBGISAoR2xvaW5zb24sIDI3LiBOb3YgMjAwMywgMjE6MDE6MDIpOgp+IyEgb249R2xvaW5zb24gb3Q9MTA2OTk2MzIzMiBvZz1kaXNrdXNzaW9uCn4jISBybj1BbmF0b2wgcnQ9MTA2OTk2MzE2OCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA2OTg2Mjk4NApVbmQgZGFzIHB1ZW5rdGxpY2ggenVtIEhlcnJlbiBkZXIgUmluZ2UuIEFiZXIgZmFlbGx0IGRhcyBuaWNodCB3aWVkZXIgdW50ZXIKZ2V3YWx0b3JpZW50aWVydGUgTWF0aGVtYXRpa2F1c2JpbGR1bmc/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzY6IEhNUEYhIChPcmt0b2V0ZXIsIDI3LiBOb3YgMjAwMywgMjE6MDQ6NTgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA2OTk2MzI2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNjk4NjI5ODQKRGEgYmVrb21tdCBkZXIgQmVncmlmZiAiVGVpbG1lbmdlIiBkb2NoIGdsZWljaCBlaW5lIGdhbnogYW5zY2hhdWxpY2hlCkJlZGV1dHVuZy4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM3OiBITVBGISAoQW5hdG9sLCAyNy4gTm92IDIwMDMsIDIxOjA1OjM0KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDY5OTYzNDk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTg2Mjk4NApKYSwgYWJlciAiU2Nobml0dG1lbmdlIiBtdWVzc3Rlc3QgRHUgbmV1IGRlZmluaWVyZW4sIGRldHQgcGFzc3Qgbml0LiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM4OiBITVBGISAoSHVtbmksIDI3LiBOb3YgMjAwMywgMjE6MDc6MjcpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNjk5NjM1MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5ODYyOTg0CkRvY2guIERhcyBpc3QgZGVyIEJlcmVpY2gsIGluIGRlbiBpY2ggZGVuIEtudWVwcGVsIHJlaW5xdWV0c2NoZSwgd28gdm9yaGVyCkhpcm4gd2FyLiBWb3JoZXIgSGlybiBnZXNjaG5pdHRlbiBtaXQgS251ZXBwZWwgamV0enQgaXN0IGRlciBCZXJlaWNoLCBkZXIgZnJlaQp3aXJkLCB3ZW5uIGljaCBkZW4gS251ZXBwZWwgd2llZGVyIHdlZ3ppZWhlLiBEYXMgSGlybiwgZGFzIG51biBkdXJjaCBkaWUKR2VnZW5kIHNwcml0enQsIGlzdCBkaWUgS29tcGxlbWVudG1lbmdlIHp1bSBSZXN0IGRlcyBTY2hhZWRlbHMuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzk6IEhNUEYhIChBbmF0b2wsIDI3LiBOb3YgMjAwMywgMjE6MTQ6NDkpOgp+IyEgcm49SHVtbmkgcnQ9MTA2OTk2MzY0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjk4NjI5ODQKVW5kIHBhc3NlbmQgZnVlciBQaHlzaWsgZGFubjogIkVpbiBhbiBlaW5lbSBTdHJpY2sgYXVmZ2VoYWVuZ3RlciBPcmsgCnphcHBlbHQgenUgbGFuZ2UgdW5kIHdpcmQgdm9uIGVpbmVtIGVyYm9zdGVuIFp1c2NoYXVlciBtaXQgZWluZXIgQXJtYnJ1c3QKYmVzY2hvc3Nlbi4KClVudGVyIGRlciBBbm5haG1lLCBkYXNzIGRhcyA0IE1ldGVyIGxhbmdlIFNlaWwgZ2V3aWNodHNsb3MgaXN0IHVuZCBkZXIKT3JrIDU2IGtnIHdpZWd0IHVuZCA1MCBjbSB1bnRlciBkZW4gQXVmaGFlbmd1bmdzcHVua3QgZ2V0cm9mZmVuIHdpcmQKaXN0IGRpZSBHZXNjaHdpbmRpZ2tlaXQgZGVzIDIwMCBHcmFtbSBzY2h3ZXJlbiBBcm1icnVzdGJvbHplbnMgenUgCmJlcmVjaG5lbiwgd2VubiBkZXIgT3JrIG5hY2ggRWluc2NobGFnIHVtIDEwIEdyYWQgYXVzcGVuZGVsdC4iCgpCb251c2ZyYWdlOiAiQmVpIGVpbmVtIGR1ZW5uZXJlbiwgYWJlciBnbGVpY2ggc2Nod2VyZW4gT3JrIHNjaGxhZWd0IGRhcwpHZXNjaG9zcyBkdXJjaCB1bmQgdHJpdHQgaW4gZWluZW0gV2lua2VsIHZvbiAxMCUgbmFjaCBvYmVuIHZvbiBkZXIgCkhvcml6b250YWxlbiBhYndlaWNoZW5kIGF1cy4gV2llIHdlaXQgZmxpZWd0IGRhcyBHZXNjaG9zcywgd2VubiBlcyAKendlaSBEcml0dGVsIHNlaW5lciBraW5ldGlzY2hlbiBFbmVyZ2llIGltIE9yayBhYmdlYmF1dCBoYXQ/IgoKKmdsdWNrcyoKCkFuYXRvbCBwcm8gYW5zY2hhdWxpY2hlbSBVbnRlcnJpY2h0IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDA6IEhNUEYhIChPcmt0b2V0ZXIsIDI3LiBOb3YgMjAwMywgMjI6Mzk6MTApOgp+IyEgcm49QW5hdG9sIHJ0PTEwNjk5NjQwODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5ODYyOTg0CkhhdCBkZXIgT3JrIGF1Y2ggZWluZSB3YXR0aWVydGUgV2VzdGUgYW4/CgpPcmtULCBncmluc2VuZC4KClBTIGphLCBpY2ggd2VpcywgQXJtYnJ1c3Rib2x6ZW4sICE9IFd1cmZzdGVybgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDE6IEhNUEYhIChQYXRyeW4sIDI3LiBOb3YgMjAwMywgMjI6NDA6MDIpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNjk5NjkxNTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5ODYyOTg0CldpZXNvIGdyaW5zdCBfRHVfPyBJY2ggZGFjaHRlLCBkYXMgc2VpIGVpbiBlcm5zdGVzIFRoZW1hIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDI6IEhNUEYhIChPcmt0b2V0ZXIsIDI3LiBOb3YgMjAwMywgMjI6NDQ6NDMpOgp+IyEgcm49UGF0cnluIHJ0PTEwNjk5NjkyMDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5ODYyOTg0Ck51ciB3ZWlsIGljaCBqZXR6dCBzZWl0IGVpbiBwYWFyIEphaHJlbiBpbiBXaWVuIHdvaG5lIGlzdCBtaXIgZGVyIHJoZWluaXNjaGUKRnJvaHNpbm4gbm9jaCBuaWNodCBhYmhhbmRlbiBnZWtvbW1lbi4KClVuZCBqYSwgZHUgaGFzdCBSZWNodCwgZGFzIGlzdCBlaW4gZXJuc3RlcyBUaGVtYS4KLAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSE1QRiEgKEltZGEsIDI4LiBOb3YgMjAwMywgMDA6NDE6NDEpOgp+IyEgcm49TW9udGFudXMgcnQ9MTA2OTkyNjgyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNjk4NjI5ODQKSm8sIGljaCB3ZWlzcyB3YXMgZHUgbWVpbnN0LiBEZWluZSBNZWludW5nLiBTZWxiaWdlIGlzdCAobm9jaCkgZnJlaS4gClVuZCBoYXQgaW4gZGllc2VtIFp1c2FtbWVuaGFuZyBkaWUgZ2xlaWNoZSBSZWxldmFueiB3aWUgIkpCTyBzdGlua3QsIGRpZQprYW5uc3RlIHp1aGF1c2UgbGFzc2VuLiBEYSBiaW4gaWNoIFNjaGVpc3NlIGludG9sZXJhbnQiIEFiZXIgaGF1cHRzYWNoZSBuCmJpc2NobiBwcm92b3ppZXJuLCBnZWxsLi4uCgpJY2ggbGFzcyBtaXIgenVtaW5kZXN0IG5lZCB2b3JzY2hyZWliZW4sIHdlbGNoZSBNdXNpayBpY2ggX3NjaGxlY2h0XyB6dSBmaW5kZW4KaGFiZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEhNUEYhIChQYXRyeW4sIDI4LiBOb3YgMjAwMywgMDA6NDQ6MTUpOgp+IyEgcm49SW1kYSBydD0xMDY5OTc2NTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTg2Mjk4NApJY2ggd2lsbCBkaWUgV2lsZGVja2VyIEhlcnpidWJlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEhNUEYhIChJbWRhLCAyOC4gTm92IDIwMDMsIDAwOjUxOjQxKToKfiMhIHJuPVBhdHJ5biBydD0xMDY5OTc2NjU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA2OTg2Mjk4NAppY2ggZGVuayBiZWkgaGlucmVpY2hlbmQgYWxrb2hvbGdlbnVzcyBzb2xsdGVuIGRpZSBkdXJjaGF1cyBzcGFzc2lnIHNlaW4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXaWUgbWFuIFNjcmlwdC1LaWRkaWVzIGZhZW5ndDogKFZhbmlvbiwgMjguIE5vdiAyMDAzLCAwNjozNjozMyk6Cn4jISBybj1Gb29iYXIgcnQ9MTA2OTk2OTQzMCByZz13d3cKfiMhIHRpZD0xMDY5OTY5NDMwCkFoLCBkYXJ1bSB3aXJkIElQdjYgZWluZ2VmdWVocnQuIDopCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXaWUgbWFuIFNjcmlwdC1LaWRkaWVzIGZhZW5ndDogKENhdHdlYXpsZSwgMjguIE5vdiAyMDAzLCAwNzozNzowMSk6Cn4jISBybj1WYW5pb24gcnQ9MTA2OTk5Nzc5MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNjk5Njk0MzAKQXByb3BvcyBJUHY2IQpHaWJ0cyBkZW4gbmV1ZW4gUmVjaG5lciB1bmQgZGFzIG5ldWUgTXVkIG1pdCBJUHY2LVN1cHBvcnQ/IApGdWVyIERlYmlhbiBpc3QgZGFzIGtlaW4gQWt0LCB1bmQgZnVlciBkaWUgTXVkbGliIGdpYnRzIG5lbiBiZXJlaXRzIHVyYWx0ZW4KUGF0Y2guIAoKRGFzIHdhZXJlIGRhbm4gZGllIHZvcmxldHp0ZSBBcHBsaWthdGlvbiwgZGllIG1pY2ggZGFyYW4gaGluZGVydCBJUHY0Cmxvc3p1d2VyZGVuLiAKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2llIG1hbiBTY3JpcHQtS2lkZGllcyBmYWVuZ3Q6IChOb25uZSwgMjguIE5vdiAyMDAzLCAwODozMTo0OSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA3MDAwMTQyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNjk5Njk0MzAKVW5kIHdhcyBpc3QgZGFubiBkaWUgbGV0enRlPyBXaW5kb3dzPyAqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdpZSBtYW4gU2NyaXB0LUtpZGRpZXMgZmFlbmd0OiAoQ2F0d2VhemxlLCAyOC4gTm92IDIwMDMsIDA4OjQ0OjQ0KToKfiMhIHJuPU5vbm5lIHJ0PTEwNzAwMDQ3MDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5OTY5NDMwCk5vZSwgSUNRLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MzogSE1QRiEgKFpvb2ssIDI4LiBOb3YgMjAwMywgMDg6NTg6MzMpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNjk5Njk0ODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5ODYyOTg0Clpvb2sgc2NoYXV0IHZlcnd1bmRlcnQgYXVmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogaGFsbG8gKE9ya3RvZXRlciwgMjguIE5vdiAyMDAzLCAxMToyNjo0NCk6Cn4jISBybj1CaWVsZWZlbGQgcnQ9MTA3MDAxNTE1OCByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwNjk5NTc0NTMKb2ssIHdlciB2ZXJsZWd0IGRlbiBNdWVsbCBtYWwgYXVzIHN1Y2hlLWJpZXRlIG5hY2ggc2NobWFycm4/IFRoYW5rcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogaGFsbG8gKFpvb2ssIDI4LiBOb3YgMjAwMywgMTE6NTM6MDcpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNzAwMTUyMDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDY5OTU3NDUzCkljaCBiZXp3ZWlmZWwsIGRhc3MgdW5zZXJlIHZlcmxlZ3VuZ3N3dWV0aWdlbiBNUEEtUGZsZWdlciBlaW5lIHNwZXppZWxsZQpBdWZmb3JkZXJ1bmcgYmVub2V0aWdlbi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHbHVlaGVuZGVyIFdlaWhuYWNodHNtYW5uIChPcmt0b2V0ZXIsIDI4LiBOb3YgMjAwMywgMTQ6Mjc6MDgpOgpFcyBpc3QgZG9jaCBiYWxkIHdpZWRlciBzbyB3ZWl0LCB3YXJ1bSBoYXQgbm9jaCBrZWluZXIgZGllIFNhY2hlIG1pdApXZWlobmFjaHRzbWFubiBnZXBvc3RldCwgZGVyIGluIGVpbmVyIE5hY2h0IGFsbGUgS2luZGVyIGRlciBXZWx0IGJlc3VjaGVuCm11c3M/CgpPcmtULgoKUFMgaWNoIGhhZXR0ZSBnZXJuZSBlaW5lIEtvcGllIHZvbiBzZWluZW0gInRyYXZlbGluZyBzYWlsc21hbiItYWxnb3JpdGhtdXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2x1ZWhlbmRlciBXZWlobmFjaHRzbWFubiAoV2lsbG93LCAyOC4gTm92IDIwMDMsIDE0OjM3OjMzKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDcwMDI2MDI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MDAyNjAyOAoqa2ljaGVyKiBodWNoPyBpY2ggZGFjaHRlIGltbWVyLCBkYXMgd2FlciBkZXIgInRyYXZlbGxpbmcKc2FsZXNtYW4iLWFsZ29yaXRobXVzIDstKQpkYXMgV2VpZGVybCB2ZXJ3dW5kZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptYWlsIChNb3Jnb3RoLCAyOC4gTm92IDIwMDMsIDE0OjM4OjA3KToKcQp4CnNjaGF1CnEKc3VtZXJlCnJ1ZmUgaGlsZmUKYmxhaAp4CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdsdWVoZW5kZXIgV2VpaG5hY2h0c21hbm4gKE9ya3RvZXRlciwgMjguIE5vdiAyMDAzLCAxNDozOTozNSk6Cn4jISBybj1XaWxsb3cgcnQ9MTA3MDAyNjY1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzAwMjYwMjgKamEsIGJpbiBpbiBHZWRhbmtlbiB3b2hsIHNjaG9uIGhldXRlIEFiZW5kIHVuZCBpbSBLaW5vIChtYXN0ZXIgYW5kIGNvbW1hbmRlcikuCgpEdSBoYXN0IHZvZWxsaWcgcmVjaHQsIGVzIGlzdCBkZXIgc2FsZXNtYW4sIG5pY2h0IGRlciBzYWlsc21hbgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdsdWVoZW5kZXIgV2VpaG5hY2h0c21hbm4gKE5vbm5lLCAyOC4gTm92IDIwMDMsIDE0OjQxOjU5KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDcwMDI2Nzc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MDAyNjAyOApTb25uIFNjaGVpc3MgZ3Vja3N0IER1IERpciBhbj8gKnNjaGF1ZGVyKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR2x1ZWhlbmRlciBXZWlobmFjaHRzbWFubiAoT3JrdG9ldGVyLCAyOC4gTm92IDIwMDMsIDE0OjQyOjU1KToKfiMhIHJuPU5vbm5lIHJ0PTEwNzAwMjY5MTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcwMDI2MDI4Ck9icyBTY2hlaXNzIGlzdCwgd2VpcyBpY2ggaGludGVyaGVyLCBhYmVyIGRpZSBaZWl0IHVuZCBkaWUgU2Vla3JpZWdlIGRhbWFscwppbnRlcmVzc2llcmVuIG1pY2ggaGFsdC4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHbHVlaGVuZGVyIFdlaWhuYWNodHNtYW5uIChOb25uZSwgMjguIE5vdiAyMDAzLCAxNDo0NDo1MSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA3MDAyNjk3NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzAwMjYwMjgKR2VmaWx0ZXJ0IGR1cmNoIE1haW5zdHJlYW0tSG9sbHl3b29kLU1pc3QuIERhcyBpc3Qgc28sIGFscyBvYiBEdSBzYWdzdCwgRHUKZ2Voc3QgaW4gVGVybWluYXRvciAzIHdlaWwgRHUgRGljaCBmdWVyIFBoeXNpayBpbnRlcmVzc2llcnN0IChjOwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogR2x1ZWhlbmRlciBXZWlobmFjaHRzbWFubiAoT3JrdG9ldGVyLCAyOC4gTm92IDIwMDMsIDE0OjUxOjMyKToKfiMhIHJuPU5vbm5lIHJ0PTEwNzAwMjcwOTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcwMDI2MDI4Ck5hamEsIGljaCBoYWJlIGtlaW5lIFplaXRtYXNjaGllbmUgdW0gZXMgbWlyIGltIE9yaWdpbmFsIGFuenVzY2hhdWVuICh1bnMgc28KbGl2ZSBkYWJlaSBzZWluIHd1ZXJkZSBpY2ggZWggbmljaCB3b2xsZW4pLgpEaWUgSE1TIFZpY3RvcnkgZGFnZWdlbiBoYWJlIGljaCBzY2hvbiBiZXNpY2h0aWd0Li4uIG5hamEsIGljaCB3ZXJkcyBqYSBzZWhlbgppbiB3aWUgZmVybiBkYXMgcmVhbGlzdGlzY2ggaXN0Li4gdW5kIHdlbm4gbmljaHQsIGlzdCBlcyBob2ZmZW50bGljaCBuZXR0CmdlbWFjaHQgbWl0IGJlZWluZHJ1Y2tlbmRlbiBCaWxkZXJuLCBpc3QgamEgZnVlciBlaW5lbiBGaWxtIGF1Y2ggbmljaHQgZGFzCnNjaGxlY2h0ZXN0ZSwgd2FzIGVyIGJpZXRlbiBrYW5uLgoKb3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdpZSBtYW4gU2NyaXB0LUtpZGRpZXMgZmFlbmd0OiAoVmFuaW9uLCAyOC4gTm92IDIwMDMsIDE1OjE1OjEwKToKfiMhIG9uPVZhbmlvbiBvdD0xMDcwMDI4ODk5IG9nPXd3dwp+IyEgcm49VmFyZGlvbiBydD0xMDcwMDI2ODc1IHJnPXd3dwp+IyEgdGlkPTEwNjk5Njk0MzAKVmllbGxlaWNodCBoYXQgc2ljaCBkZXIgQXV0b3IgZ2VkYWNodCwgZGFzcyB3aXJrbGljaCBOSUVNQU5EIGVpbmUgNjRNQi1EYXRlaQpydW50ZXJsYWRlbiB3dWVyZGUgdW5kIG1hY2h0ZSBkYXMgRmlsZSBpbSBOYWNoaW5laW4gZXR3YXMgJ2dsYXVid3VlcmRpZ2VyJy4gOikKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTVVISEhISEhISEghISAoQW50aGVhLCAyOC4gTm92IDIwMDMsIDE2OjQ5OjIzKToKfiMhIHJuPVBhbGUgcnQ9MTA3MDAxNzc0NCByZz13d3cKfiMhIHRpZD0xMDcwMDE3NzQ0Ck5hIHNvd2FzLiBEYXMgRGluZ2VuIGhhdCBqYSBudXIgNDIgTGV2ZWwhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogSE1QRiEgKFpvb2ssICAxLiBEZXogMjAwMywgMDk6MTA6NTEpOgp+IyEgcm49UGFkcmVpYyBydD0xMDcwMTkwOTg5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDY5ODYyOTg0CldhcyBpc3QgZWlnZW50bGljaCBlaW5lIG1hc3NpdmUgVmVybGV1Z251bmc/Cgpab29rIHZlcnN1Y2h0IHNpY2ggZGFzIHZvcnp1c3RlbGxlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBITVBGISAoWm9vaywgIDEuIERleiAyMDAzLCAwOToxODowNik6Cn4jISBybj1EYXJpYSBydD0xMDcwMTkxNjE4IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDY5ODYyOTg0CiJJY2ggd3VlcmRlIG1pY2ggbWFsIGFscyAnbGlua3MnIGJlemVpY2huZW4uIEFiZXIgd2FzIGhlaXNzdCBkYXMgZWlnZW50bGljaD8iCgpPaCB3ZWlhLi4gOi0pCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IEhNUEYhIChab29rLCAgMS4gRGV6IDIwMDMsIDA5OjIwOjAxKToKfiMhIHJuPVN3YW50ZXZpdCBydD0xMDcwMjA1ODY0IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDY5ODYyOTg0CiJFcnN0ZW5zIGRpZSBCZWdyaWZmbGljaGtlaXRlbiAoJ1BhY2snLCAnRHJlY2snKSBhbHMgc29sY2hlIGFienVsZWhuZW4gLi4uCkFyc2NobG9lY2hlciAuLi4gYmxlaWJlbiBlcyB0cm90emRlbS4iCgpOZSwgaXMga2xhciA7KQoKWm9vayBhbXVlc2llcnQgc2ljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEdsdWVoZW5kZXIgV2VpaG5hY2h0c21hbm4gKFphcm5peWEsICAyLiBEZXogMjAwMywgMTY6MzA6MjcpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNzAwMjc0OTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcwMDI2MDI4CmljaCB3ZWlzcyBqYSwgd2FzIG5lIEVpc2VuYmFobiBTY2hpZW5lIGlzdCwgYWJlciBuZSBaZWl0bWEgU2NoaWVuZS4uLiBobW1tbSAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEdsdWVoZW5kZXIgV2VpaG5hY2h0c21hbm4gKEFudGhlYSwgIDIuIERleiAyMDAzLCAxNjozMzowOSk6Cn4jISBybj1aYXJuaXlhIHJ0PTEwNzAzNzkwMjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcwMDI2MDI4CklzdCBkb2NoIGtsYXIuIERhcyBoZWlzc3QgWmVpdC1NYS1TY2hpZW5lLCB1bmQgTWEgc3RlaHQgYmVrYW5udGxpY2ggZnVlcgpNaXRhcmJlaXRlciwgYWxzbyBlaW5lIFNjaGllbmUsIGF1ZiBkZXIgTWl0YXJiZWl0ZXIgbWl0IHplaXRsaWNoCmJlc2NocmEoZSlua3RlciBBcmJlaXRzZGF1ZXIgaGVyZWluLSB1bmQgd2llZGVyIGhlcmF1c2dldHJhZ2VuIHdlcmRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEdsdWVoZW5kZXIgV2VpaG5hY2h0c21hbm4gKEJhbWJpLCAgMi4gRGV6IDIwMDMsIDE5OjEwOjA5KToKfiMhIHJuPVphcm5peWEgcnQ9MTA3MDM3OTAyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzAwMjYwMjgKRWlnZW50bGljaCBpc3QgZXMgamEgbmljaHQgbHVzdGlnOiBJY2ggaGFiIHNvZ2FyIG1hbCBqZW1hbmRlbiB2b20gRmFjaGJlcmVpY2gKTWFzY2hpbmVuYmF1IGdlc2VoZW4sIGRlciBNYXNjaGluZSBtaXQgaWUgc2NocmVpYnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGx1cmFsIChDYXR3ZWF6bGUsICAyLiBEZXogMjAwMywgMjA6NDI6MDIpOgp+IyEgb249WmFybml5YSBvdD0xMDcwMzc5MjI1IG9nPXNjaG1hcnJuLm5ldGRpZ2VzdAp+IyEgcm49TWFhcmcgcnQ9MTA2OTc4NjA5NyByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMDY5Nzg2MDk3CndhcyBEVSBhbGxlcyB1ZWJlciBkaWUgV2VydHNjaGFldHp1bmcgdm9uIEplc3VzIGdlZ2VudWViZXIgRnJhdWVuIHdlaXNzdC4uLgplY2h0Li4uIHdhcnN0IGRhYmVpPyBIYXR0ZXN0IER1IGF1Y2ggbmUgWmVpdG1hIFNjaGllbmU/IEFsc28gaWNoIGRlbmtlLCBKZXN1cwp3YXIgbnVyIG4gY29vbGVyIFNjaHdhZXR6ZXIsIGRlciBwcm92b2thbnQgZHVyY2ggZGllIEdlZ2VuZCBnZXpvZ2VuIGlzdCwgc2ljaAp2b24gcmVpY2hlbiBGcmF1ZW4gaGF0IGF1c2hhbHRlbiBsYXNzZW4gdW5kIGRhbm4gaGF0IGVyIGF1Y2ggbm9jaCBzdGFlbmRpZwpNYXJpYSBnZWZpY2t0LCBvaG5lIGRhc3Mgc2llIHZlcmhlaXJhdGV0IHdhcmVuLi4uIGFsc28gbiBlY2h0ZXIgSnVuZyB1c3MgZGVtCkxldnZlLi4uIGhhZXR0ZSBhdWNoIG4gS29lbG5lciBzZWluIGtvZW5uZW4uLi4gCgpNYXJjCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBsdXJhbCAoQ2F0d2VhemxlLCAgMi4gRGV6IDIwMDMsIDIwOjQyOjA0KToKfiMhIG9uPUNyb2Z0IG90PTEwNzAzNzk3MzYgb2c9c2NobWFycm4ubmV0ZGlnZXN0Cn4jISBybj1aYXJuaXlhIHJ0PTEwNzAzNzkyMjUgcmc9c2NobWFycm4ubmV0ZGlnZXN0Cn4jISB0aWQ9MTA2OTc4NjA5NwpCcmF1Y2hlbiB3aXIgamV0enQgbm9jaCBlaW4gTWFuaWZlc3QgZnVlciBzY2htYXJybi5uZXRkaWdlc3Q/ICBPZGVyIGJyaW5ndAptYWwgd2VyIFphcm5peWEgYmVpLCBkYXMgaGllciBpZHIgbnVyIGtvbXBsZXR0ZSBSZXBvc3RzIHJlaW5nZXBpbm50IHdlcmRlbgp1bmQgbmljaHQgd2VpdGVyIGFscyBaaXRhdCBnZWtlbm56ZWljaG5ldCB3ZXJkZW4/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQbHVyYWwgKENhdHdlYXpsZSwgIDIuIERleiAyMDAzLCAyMDo0MjowOCk6Cn4jISBvbj1Gb29iYXIgb3Q9MTA3MDM4Mzk4NSBvZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHJuPVphcm5peWEgcnQ9MTA3MDM3OTIyNSByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMDY5Nzg2MDk3CkljaCB6aXRpZXJlIFJhaW5hbGQgR3JlYmU6CgoiRHUgYmlzdCBkZXIgQXVzd2VnIGF1cyBkZXIgU3Bhc3NnZXNlbGxzY2hhZnQuIgoKRm9vYmFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBsdXJhbCAoQ2F0d2VhemxlLCAgMi4gRGV6IDIwMDMsIDIwOjQyOjE0KToKfiMhIG9uPUFuYXRvbCBvdD0xMDcwMzkzMzM2IG9nPXNjaG1hcnJuLm5ldGRpZ2VzdAp+IyEgcm49WmFybml5YSBydD0xMDcwMzc5MjI1IHJnPXNjaG1hcnJuLm5ldGRpZ2VzdAp+IyEgdGlkPTEwNjk3ODYwOTcKRHUgcGxhdWRlcnN0IGF1Y2ggbnVyIG5hY2gsIHdhcyBaYXJkb3ogRGlyIGFubm8gZGF6dW1hbCB2b3JnZWthdXQgaGF0LCB3YXM/IDspCgpBbmF0b2wgKGluIGRlc3NlbiBHZWRhZWNodG5pcyBpbW1lciBkYXMgZmFsc2NoZSBoYWVuZ2VuIGJsZWlidCA7KSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBMYXN0IENhbGw6IEtsZXR0ZXJhdXNmbHVnIDopIChOb25uZSwgIDIuIERleiAyMDAzLCAyMDo0OTo1OSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDcwMzkxMzc2IHJnPXBhcnR5Cn4jISB0aWQ9MTA3MDI4MDUyNwpXYXJ1bSBhdXNnZXJlY2huZXQgZWluZW4gS2FyYWJpbmVyPyBUdXRzIG5pY2h0IGF1Y2ggZWluIFJldm9sdmVyPyBVbmQgd296dQp1ZWJlcmhhdXB0PyBGYWxscyBzaWNoIGVpbmVyIG5pY2h0IHRyYXV0LCB3aWVkZXIgcnVudGVyenVzdGVpZ2VuPwoKTm9ubmUsIGtlbm50IHNpY2ggbmljaHQgYXVzIG1pdCBLbGV0dGVybi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IExhc3QgQ2FsbDogS2xldHRlcmF1c2ZsdWcgOikgKEdsb2luc29uLCAgMi4gRGV6IDIwMDMsIDIwOjUwOjUyKToKfiMhIHJuPU5vbm5lIHJ0PTEwNzAzOTQ1OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcwMjgwNTI3CkluIGRlbiBLYXJhYmluZXIga2xlbW1zdCBkdSBzaWNoZXJsaWNoIGRhcyBTZWlsLiBVbmQgc2NoaWVzc3QgZGFtaXQgYXVmIGRlbgpvYmVuLiBPZGVyIGVpbmVuIEhha2VuIG1pdCBTZWlsLiBVbmQgc2NoaWVzc3QgZGFtaXQgYXVmIGRlbiBvYmVuLiBEdSB3b2xsdGVzdApkb2NoIHNvd2FzIGhvZXJlbiwgb2Rlcj8gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBMYXN0IENhbGw6IEtsZXR0ZXJhdXNmbHVnIDopIChab29rLCAgMi4gRGV6IDIwMDMsIDIwOjUzOjI0KToKfiMhIHJuPU5vbm5lIHJ0PTEwNzAzOTQ1OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcwMjgwNTI3CkVpbiBITVMtS2FyYWJpbmVyIGlzdCBlaW4gc3BlemllbGxlciBLYXJhYmluZXIsIGRlbiBtYW4gYWxzIFNpY2hlcnVuZ3NnZXJhZXQKdmVyd2VuZGVuIGthbm4gZnVlciBkaWUgc29nZW5hbm50ZSBIYWxibWFzdHd1cmZzaWNoZXJ1bmcuIAoKWm9vay4KClBTOiBEaWUgUXVpemZyYWdlOiBXb2Z1ZXIgc3RlaHQgSE1TPyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IExhc3QgQ2FsbDogS2xldHRlcmF1c2ZsdWcgOikgKFdpbGxvdywgIDIuIERleiAyMDAzLCAyMDo1Mzo1MSk6Cn4jISBybj1ab29rIHJ0PTEwNzAzOTQ4MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcwMjgwNTI3CkhlciBNYWplc3R5IFNoaXA/Pz8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBMYXN0IENhbGw6IEtsZXR0ZXJhdXNmbHVnIDopIChSb25kYSwgIDIuIERleiAyMDAzLCAyMDo1NDoxNyk6Cn4jISBybj1ab29rIHJ0PTEwNzAzOTQ4MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcwMjgwNTI3CkhNUz09SGFsZiBNYXN0IFNlY3VyaXR5PwoKUm9uZGEgKnJhdGVuZCoKCi4uLnNpbW1lciBoaWVyIGluIFB1aXo/ISA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IExhc3QgQ2FsbDogS2xldHRlcmF1c2ZsdWcgOikgKENhdHdlYXpsZSwgIDIuIERleiAyMDAzLCAyMDo1NTowMSk6Cn4jISBybj1Sb25kYSBydD0xMDcwMzk0ODU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MDI4MDUyNwpIZXV0ZSBNYWwgU2ljaGVybj8KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTGFzdCBDYWxsOiBLbGV0dGVyYXVzZmx1ZyA6KSAoTm9ubmUsICAyLiBEZXogMjAwMywgMjA6NTY6MDMpOgp+IyEgcm49Wm9vayBydD0xMDcwMzk0ODA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MDI4MDUyNwpfSF9hc3NlIF9NX2EgbmUgX1NfaWNoZXJ1bmc/IEp1aHV1dXUhIEtvbnRvbnVtbWVyIG1haWxlIGljaCBkaXIsIGRhbWl0IGR1IG1pcgpkZW4gR2V3aW5uIHVlYmVyd2Vpc2VuIGthbm5zdC4KCk5vbm5lLCBoYXQgc2Nob24gZ2VrdWVuZGlndC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IExhc3QgQ2FsbDogS2xldHRlcmF1c2ZsdWcgOikgKFpvb2ssICAyLiBEZXogMjAwMywgMjA6NTY6MjUpOgp+IyEgcm49Tm9ubmUgcnQ9MTA3MDM5NDk2MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzAyODA1MjcKSWNoIGdsYXViOiBWb24gRXVjaCBuZWhtIGljaCBiZXNzZXIga2VpbmVuIG1pdC4gOi0pCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTGFzdCBDYWxsOiBLbGV0dGVyYXVzZmx1ZyA6KSAoR2xvaW5zb24sICAyLiBEZXogMjAwMywgMjA6NTc6NTgpOgp+IyEgcm49Wm9vayBydD0xMDcwMzk0OTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MDI4MDUyNwpIYWxibWFzdHd1cmYtU2ljaGVydW5nc2thcmFiaW5lcj8gUmVpY2h0IGRhcyBuaWNodCB3ZW5uIG1hbiB3ZWlzcyB3aWUgZGVyCmF1c3NpZWh0IHVuZCB3aWUgbWFuIGlobiBlaW5oYWt0IHVuZCB6dXNjaHJhdWJ0PyA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IExhc3QgQ2FsbDogS2xldHRlcmF1c2ZsdWcgOikgKEJhbWJpLCAgMi4gRGV6IDIwMDMsIDIwOjU4OjEwKToKfiMhIHJuPVpvb2sgcnQ9MTA3MDM5NDk4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzAyODA1MjcKV2VnZW4gZGVuIHBhYXIgZnJlaXdlcmRlbmRlbiBFcnptYWdpZXJwb3N0ZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTGFzdCBDYWxsOiBLbGV0dGVyYXVzZmx1ZyA6KSAoWm9vaywgIDIuIERleiAyMDAzLCAyMDo1ODozMCk6Cn4jISBybj1CYW1iaSBydD0xMDcwMzk1MDkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MDI4MDUyNwpab29rIGh1c3RldCBsZWlzZSB2b3Igc2ljaCBoaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTGFzdCBDYWxsOiBLbGV0dGVyYXVzZmx1ZyA6KSAoR2xvaW5zb24sICAyLiBEZXogMjAwMywgMjA6NTk6MDkpOgp+IyEgcm49Wm9vayBydD0xMDcwMzk1MTEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MDI4MDUyNwoiU2Nob24gd2llZGVyIGVpbiBHb2V0dGVyd2VjaHNlbD8iIHdvbGx0ZSBCYW1iaSBzaWNoZXIgZnJhZ2VuLiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBMYXN0IENhbGw6IEtsZXR0ZXJhdXNmbHVnIDopIChCYW1iaSwgIDIuIERleiAyMDAzLCAyMTowMDozNyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDcwMzk1MTQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MDI4MDUyNwpOZWluLiBXb2xsdGUgaWNoIG5pY2h0LiBJY2ggZGVua2UsIFpvb2sga2FubiBzaWNoIHNpY2hlcm4uIEljaCB3ZWlzcyBudXIKbmljaHQsIG9iIE5vbm5lIGRhdm9uIHZpZWwgaGFiZW4gd3VlcmRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IExhc3QgQ2FsbDogS2xldHRlcmF1c2ZsdWcgOikgKEdsb2luc29uLCAgMi4gRGV6IDIwMDMsIDIxOjAyOjAzKToKfiMhIHJuPUJhbWJpIHJ0PTEwNzAzOTUyMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcwMjgwNTI3CkhhdHRlIGljaCBkYXMgZmFsc2NoIHZlcnN0YW5kZW4sIGRhcyBab29rIGdlc2ljaGVydCBnZ2YuIHZvcmtsZXR0ZXJuIHdvbGx0ZT8KOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogTGFzdCBDYWxsOiBLbGV0dGVyYXVzZmx1ZyA6KSAoQmFtYmksICAyLiBEZXogMjAwMywgMjE6MDI6NTEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA3MDM5NTMyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzAyODA1MjcKQWgsIHN0aW1tdC4gQWJlciBkYXMgaGFiIGljaCBuaWNodCB2b3JhdXNiZWRhY2h0LiBJbnNvZmVybiB3YWVyIGRhc3MgZGFubiB3b2hsCmRvY2ggbiBuZXVlciBHb3R0LCBkZXIgImZhZWxsaWciIHd1ZXJkZS4gKndpZWhlciogKndpdHogZ2VtYWNodCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBMYXN0IENhbGw6IEtsZXR0ZXJhdXNmbHVnIDopIChab29rLCAgMi4gRGV6IDIwMDMsIDIxOjAzOjM1KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwNzAzOTUzMjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcwMjgwNTI3Ck5laW4sIGhhdHRlc3QgRHUgbmljaHQuIDopCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IExhc3QgQ2FsbDogS2xldHRlcmF1c2ZsdWcgOikgKEFuYXRvbCwgIDIuIERleiAyMDAzLCAyMToxNToyNCk6Cn4jISBybj1ab29rIHJ0PTEwNzAzOTU0MTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcwMjgwNTI3CkhlYWx0aCBNb25pdG9yaW5nIFN5c3RlbSBLYXJhYmluZXI/IE5pY2h0PyA6KQoKSWNoIGtlbm5lIG51ciBUd2lzdC1Mb2NrIHVuZCBTY2hyYXVia2FyYWJpbmVyLiBBYmVyIGljaCBrbGV0dGVyZSBqYSBpZFIKYXVjaCBuaWNodC4uLiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTW9yZ290aCwgIDIuIERleiAyMDAzLCAyMjozMToxNyk6CkthdmFsaWVyIHN0YXJydCBlaW5lbSBGcm9zY2ggdGllZiBpbiBkaWUgQXVnZW4gdW5kIHNhZ3Q6IEZsaXBwZSEKQXJrc2hhdCBicnVtbWVsdDogSGV5IFphdWJlcmVyLCBsYXNzIGRhcy4KS2F2YWxpZXIgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KS2F2YWxpZXIgdmVyc2Nod2luZGV0IGdhbnogbGVpc2UuCltUb2Q6TGFyc10gQXJrc2hhdCBoYXQgZ2VyYWRlIEthdmFsaWVyIHVtZ2VicmFjaHQuCltUb2Q6QXJrc2hhdF0gVG9kIGRlbiBGcmV2bGVybiEKRWluIEZyb3NjaCBydWVscHN0LgoKTSogbGFjaHQgc2ljaCBzY2hsYXBwCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHN0dXR0Z2FydCBzdGF0aSAyMC4xMi4gKE1vcmdvdGgsICAzLiBEZXogMjAwMywgMTM6MDM6NTEpOgp+IyEgcm49U2VsZXZlbiBydD0xMDcwNDUzMDAzIHJnPXRyZWZmZW4KfiMhIHRpZD0xMDcwMzk1MjUxCkR1IGtvbW1zdCBhbHNvIHNwYWV0ZXIuLi5zY2hvZW4gZnVlciBEaWNoIDopCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRoZSBuZXh0IGdlbmVyYXRpb24gKE9ya3RvZXRlciwgIDMuIERleiAyMDAzLCAxNjo1OToyMik6Cn4jISBybj1BbGluZSBydD0xMDcwNDYyMDk2IHJnPWFuemVpZ2VuCn4jISB0aWQ9MTA3MDQ2MjA5NgpBbHNvIGRpZSBBbnR3b3J0IGF1ZiBkaWUgZXJzdGVuIGJlaWRlbiBGcmFnZW4gaXN0IG5pY2h0IHRyaXZpYWwsIGFiZXIgYXVjaApvaG5lIFByb2ZpdmF0ZXIgenUgc2VpbiBpc3QgZGllIEFudHdvcnQgYXVmIGRpZSBkcml0dGUgRnJhZ2Ugc2ltcGVsOiBEZWluZQpNdXR0ZXIuIFNpZSBpc3QgZGllIGxlYmVuZGUgQmVkaWVudW5nc2FubGVpdHVuZy4gRGFzcyBkaWVzZSBBbmxlaXR1bmcgZ3V0IGlzdCwKa2FubnN0IGR1IGFuIGRpciBzZWxiZXIgZXJrZW5uZW4uCgpPcmtUIwoKR3JhdHMgdWVicmlnZW5zIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUaGUgbmV4dCBnZW5lcmF0aW9uIChEYXJrbG9yLCAgMy4gRGV6IDIwMDMsIDE3OjAwOjMyKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDcwNDY3MTYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MDQ2MjA5NgpPZGVyIGF1Y2ggc2NobGVjaHQsIGplIG5hY2ggZGVtIGFscyB3YXMgZHUgZGljaCBhbHMgRXJnZWJuaXMgaGFlbHRzLgoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUaGUgbmV4dCBnZW5lcmF0aW9uIChSb2NodXMsICAzLiBEZXogMjAwMywgMjA6MjM6MjIpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNzA0NjcxNjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcwNDYyMDk2CkFsc28sIGljaCB3ZWlzcyBuaWNodCB3YXMgQXBvIGdsZWljaCBkYXp1IHNjaHJlaWJlbiB3aXJkLAp3ZW5uIHNpZSB2b20gQmFieXNjaHdpbW1lbiB6dXJ1ZWNra29tbXQsCmFiZXIgZXMgd2lyZCB3b2hsIHNpbm5nZW1hZXNzIGF1ZiBmb2xnZW5kZXMgaGluYXVzbGF1ZmVuOgoxLiBMYXV0c3RhZXJrZXJlZ2xlciAtIGdpYnQgZXMgbmljaHQKMi4gRWluc2NobGFma25vcGYgLSBnaWJ0IGVzIG5pY2h0CjMuIEJlZGllbnVuZ2FubGVpdHVuZyAtIGtvbW10IHN0dWVja3dlaXNlIG1pdCBkZW0gRXJsYW5nZW4KICAgZGVyIFNwcmFjaGZhZWhpZ2tlaXQgenVtIFZvcnNjaGVpbgoKQmlzIGRhaGluIHZpZWwgRXJmb2xnIG1pdCBEZWluZW0gbmV1ZW4gMjQvNy1Kb2IgOy0pCgogIFJvY2h1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVGhlIG5leHQgZ2VuZXJhdGlvbiAoQXBvbGxvbmlhLCAgMy4gRGV6IDIwMDMsIDIwOjQ5OjQ4KToKfiMhIHJuPVJvY2h1cyBydD0xMDcwNDc5NDAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MDQ2MjA5NgpUamEsIFJvY2h1cyBoYXQgZXMgZXJmYXNzdCAoYzogSWNoIHd1ZW5zY2ggRGlyIGphIGdhbnogc3RhcmssIGRhc3MgZGVyIEt1cnplCm5pY2h0IGRlbiAxIFN0dW5kZW4gUmh5dGhtdXMgbmFjaHRzIGhhdCwgd2llIGVzIGJlaSBTaWx2YXJhIGRlciBGYWxsIHdhciAoYzoKClVuZCBoZXJ6bGljaGVuIEdsdWVja3d1bnNjaCwgYmVpIGRlciBHcm9lc3NlIGRlcyBLaW5kZXMgKHVuZCB2b3IgYWxsZW0gYmVpIGRlbQpLb3BmdW1mYW5nKSBoYWIgaWNoIGdhbnogc3BvbnRhbiBkaWUgQmVpbmUgenVzYW1tZW5nZWtuaWZmZW4uCgpBcG8qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBUaGUgbmV4dCBnZW5lcmF0aW9uIChaYXJuaXlhLCAgNC4gRGV6IDIwMDMsIDA1OjUyOjEyKToKfiMhIHJuPUFwb2xsb25pYSBydD0xMDcwNDgwOTg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MDQ2MjA5NgpobW1tIEtuZWJlbCwgSG9semhhbW1lciwgVmFsaXVtLCBLaXNzZW4gYXVmIGRlbSBHZXNpY2h0Li4gZXMgZ2lidCBlaW5pZ2UKQXVzc2NoYWx0a25vZXBmZS4uLi4gCgpNYXJjIChmbGV4aWJlbCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFRoZSBuZXh0IGdlbmVyYXRpb24gKE5vbm5lLCAgNC4gRGV6IDIwMDMsIDA4OjMxOjA0KToKfiMhIHJuPVphcm5peWEgcnQ9MTA3MDUxMzUzMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzA0NjIwOTYKTGllcyBub2NoIG1hbCBkZW4gQXJ0aWtlbCwgbmFjaCBBdXNzY2hhbHRrbm9wZiB3YXIgbmljaHQgZ2VmcmFndCwgZGFzIHdhZXJlIGluCmRlciBUYXQgenUgdHJpdmlhbC4gWnVtaW5kZXN0LCB3ZW5uIG1hbiBhdWNoIHdpZWRlciBlaW5zY2hhbHRlbiBrb2VubmVuIHNvbGwuCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFRoZSBuZXh0IGdlbmVyYXRpb24gKFJvY2h1cywgIDQuIERleiAyMDAzLCAxMDoxNzoxMyk6Cn4jISBybj1aYXJuaXlhIHJ0PTEwNzA1MTM1MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcwNDYyMDk2CkRpZXNlIEFudHdvcnQgaGFiZSBpY2ggdm9uIERpciBlcndhcnRldC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFRoZSBuZXh0IGdlbmVyYXRpb24gKEdsb2luc29uLCAgNC4gRGV6IDIwMDMsIDExOjE2OjQ4KToKfiMhIHJuPVJvY2h1cyBydD0xMDcwNTI5NDMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MDQ2MjA5NgpLaW5kZXIgc2luZCBsZWNrZXIuIE1hbiBtdXNzIHNpZSBhYmVyIGVyc3QgZ3Jvc3Mgd2VyZGVuIGxhc3NlbiB1bmQgaGluIHVuZAp3aWVkZXIgZXR3YXMgcmFldWNoZXJuLCBuaWNodCwgR3VhcmQ/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVGhlIG5leHQgZ2VuZXJhdGlvbiAoQ3JvZnQsICA0LiBEZXogMjAwMywgMTE6MTk6MjEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA3MDUzMzAwOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzA0NjIwOTYKV2FzIG1pY2ggYW4gQnJpZXNlbGFuZyBlcmlubmVydDoKR3VhcmQ6IEljaCBzb2xsIGRhcyBLaW5kIHp1ciBGdWV0dGVydW5nIGFiaG9sZW4uCkJvaW5nOiBBaC4gUHJpbWEuCkt1cnplIERlbmtwYXVzZS4KQm9pbmc6IEFlaG0uIFp1IHdlc3NlbiBGdWV0dGVydW5nPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWFsIHNlaGVuLCB3ZWxjaGUgS29uc2VxdWVuemVuIGRhcyBoaWVyIGhhdDogKFdoaXRldGlnZXIsICA0LiBEZXogMjAwMywgMTc6MjA6NDQpOgp+IyEgb249V2hpdGV0aWdlciBvdD0xMDcwNTU0ODMwIG9nPWV0aWtldHRlCn4jISBybj1WYW5pb24gcnQ9MTA3MDU1NDI0NSByZz1ldGlrZXR0ZQp+IyEgdGlkPTEwNzA1NDgxMTgKVW1tLi4uIGtvbWlzY2gsIGljaCBkYWNodGUgZGVyIEFydGlrZWwgc3RhbmQgaW4gc2NobWFycm4uLi4gamFqYSwgc28KdWViZXJsaWVzdCBtYW4gZGllIFJ1YnJpa2VudGl0ZWwsIHdlbm4gbWFuIEViZW5lbi1jdXQmcGFzdGVzIHNpZWh0LiA7KQoKVGlnZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIeWRyYXJ1ZXN0dW5nIChHbG9pbnNvbiwgIDcuIERleiAyMDAzLCAxNDoyNDo1NSk6Cn4jISBybj1CYW1iaSBydD0xMDcwODAyOTc1IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwNzA4MDI5NzUKSWNoIHdlaXNzIG5pY2h0IHNvIHJlY2h0IG9iIGljaCB3ZWluZW4gb2RlciB2b3IgTGFjaGVuIHBydXN0ZW4gc29sbC4gRGFzCkZlYXR1cmUgaXN0IHdlc2VudGxpY2ggYWVsdGVyIGFscyBkdSwgZGVyIGZpeGVuZGUgTWFnaWVyLCB1bmQgZG9jaCBuZW5uc3QgZHUKZXMgbGVpY2h0aGluICJCdWciIHVuZCBiaXN0IGdlcmFkZSBzbyBnZW5laWd0IGRpZSBBZW5kZXJ1bmcgYmVrYW5udHp1Z2ViZW4uCkhlaGUsIGRpZXNlIE1hZ2llciAuLi4gKmdnZyoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIeWRyYXJ1ZXN0dW5nIChHbG9pbnNvbiwgIDcuIERleiAyMDAzLCAxNDozNTozNyk6Cn4jISBybj1CYW1iaSBydD0xMDcwODAzODY3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDcwODAyOTc1CkhleSwgU2NobWFycm4gaXN0IGVpbmUgRWluYmFobnN0cmFzc2UuIERhcyBGZWF0dXJlIGlzdCBzb29vIGFsdCwgZXMgd2FyIG5pY2h0Cm51ciBTcGllbGVybiBzb25kZXJuIGF1Y2ggZXJzY2hhZmZlbmRlbiBNYWdpZXJuIGJla2FubnQuIE51biB3YXIgaXJnZW5kd2FubgpkYXMgZ2FuemUgc2ljaGVyIG1hbCBhbmRlcnMgaW0gQ29kZSBiZWFic2ljaHRpZ3QgLi4uIHNvIHdpZSBqYSBhdWNoIHNpY2hlcmxpY2gKdm9yIGt1cnplbSBub2NoIGJlYWJzaWNodGlndCB3YXIsIGRhc3MgbmVnYXRpdmVzIEdpZnQgaGVpbHQgLi4uIGRpZSBGcmFnZSBpc3QKbnVyIG9iIGVzIGRpZXNlIEFic2ljaHQgbmljaHQgbGFlbmdzdCB1ZWJlcmhvbHQgd2FyLiBFaW5lIEZyYWdlIGRpZSBkdSBmdWVyCmRpY2ggZ2VrbGFlcnQgaGFzdCwgd2FzIGljaCBvYiBkZXMgQWx0ZXJzIGRlciBGcmFnZSB3aXR6aXNjaCBmaW5kZS4KVW5kIHdlbm4gZHUgbWVpbmVuIEFydGlrZWwgbmljaHQgdmVyc3RhbmRlbiBoYXN0LCB3ZWlzcyBpY2ggZGlyIG5pY2h0IHp1CmhlbGZlbjogSWNoIGhhYmUgbnVyIGdlc2NocmllYmVuLCBkYXNzIG1pciB6dW0gTGFjaGVuL1dlaW5lbiB6dW11dGUgaXN0LiBEaWUKR3J1ZW5kZSBtdXNzdCBkdSBqYSBuaWNodCBuYWNodm9sbHppZWhlbiBrb2VubmVuIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSHlkcmFydWVzdHVuZyAoQm9pbmcsICA3LiBEZXogMjAwMywgMTc6MDE6MTcpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA3MDgwNDEzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzA4MDI5NzUKRGVyIEJ1ZyB3dXJkZSBnZW1lbGRldCwgZGVyIEJ1ZyB3dXJkZSAodm9uIG1pcikgZ2VmaXhlZCwgZGVyIEJ1ZyB3YXIgbWlyCnZvcmhlciBuaWNodCBiZWthbm50LiBVbmQgbWlyIGlzdCBlcyB3aXJrbGljaCBzY2hlaXNzZWdhbCB3aWUgYWx0IGVpbgpCdWcgaXN0LCBpY2ggZml4IGlobiB0cm90emRlbSAuLi4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSHlkcmFydWVzdHVuZyAoR2xvaW5zb24sICA3LiBEZXogMjAwMywgMTc6MDI6MTMpOgp+IyEgcm49Qm9pbmcgcnQ9MTA3MDgxMjg3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzA4MDI5NzUKQWNoLCBkaWUgbGFuZ2UgVG9Eby1MaXN0ZSBkZXIgQWx0dm9yZGVyZW4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUERBcyAoSG9ibywgIDcuIERleiAyMDAzLCAyMDowODozMik6Cn4jISBybj1CYW1idWxrbyBydD0xMDcwNjE1OTk2IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTA3MDYxNTk5NgpXYWFhYWgsIGR1IHdpbGxzdCBmcmVpd2lsbGlnIG5lIFBEQT8/PwoKICAgSG9ibyAobWFjaHQgbmVuIEVsdGVybndpdHopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBEQXMgKE1lZGljLCAgNy4gRGV6IDIwMDMsIDIwOjEwOjAwKToKfiMhIHJuPUhvYm8gcnQ9MTA3MDgyNDExMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzA2MTU5OTYKRGFubiB3YXJlIGVyIHp1bWluZGVzdCB0ZWlsd2Vpc2UgbWVya2JlZnJlaXQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEh5ZHJhcnVlc3R1bmcgKEFuYXRvbCwgIDcuIERleiAyMDAzLCAyMjoxMDozMyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDcwODEyOTMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MDgwMjk3NQpTbyB3aXJzdCBEdSBuaWUgV2Vpc2VyLCBHbG9pbnNvbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBIeWRyYXJ1ZXN0dW5nIChHbG9pbnNvbiwgIDcuIERleiAyMDAzLCAyMjoxMTo1OSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA3MDgzMTQzMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzA4MDI5NzUKWml0YXQ6ICJBY2gsIHdpZSBsYW5nd2VpbGlnLiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBIeWRyYXJ1ZXN0dW5nIChBbmF0b2wsICA3LiBEZXogMjAwMywgMjI6MTQ6NDgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA3MDgzMTUxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzA4MDI5NzUKV2VyLCB3YW5uLCBpbiB3ZWxjaGVtIEtvbnRleHQ/CgpVZWJyaWdlbnMsIGZ1ZXIgZGllIGJlc3Nlcndpc3NlcmlzY2hlbiBMYWJlcmJhY2tlbjogTWVocmVyZSBBdXNnYWJlbgpkZXIgSHlkcmF0b2V0ZXJydWVzdHVuZyBiZWkgc2ljaCB6dSBoYWJlbiB3aXJkIGF1Y2ggdm9tIGVpZ2VudGxpY2hlbgpQcm9ncmFtbWllcmVyIGRlcyBHZWJpZXRzIGRhbWFscyB3aWUgaGV1dGUgYWxzIEJ1ZyBhbmdlc2VoZW4gLSB1bmQKZXIgd2FlaG50ZSBpaG4gZWlnZW50bGljaCBzY2hvbiBzZWl0IGxhZW5nZXJlciBaZWl0IHZvbiBlaW5lbSBkZXIKQmV0cmV1ZXIgZ2VmaXh0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEh5ZHJhcnVlc3R1bmcgKEdsb2luc29uLCAgNy4gRGV6IDIwMDMsIDIyOjM3OjQwKToKfiMhIHJuPUFuYXRvbCBydD0xMDcwODMxNjg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MDgwMjk3NQpXZXI6IEdsb2luc29uLCBXbzogcGFydHksIEtvbnRleHQ6IEVPRCBlcnJlaWNodCwgQWVxdWl2YWxlbnQgIkphLCBqYSIKCkRlaW5lIHp3ZWl0ZSwgd2llIGltbWVyIHNpY2hlciBudXIgd29obGdlbWVpbnRlIEJlbWVya3VuZyBnbGF1YmUgaWNoIGRpciBnbGF0dAp1bmQgcmVkdXppZXJlIG1pY2ggYXVmIGVpbiByZWluZXMgU2NobXVuemVsbiBvYiBkZXMgSGVyYWJsYXNzZW5zIHp1ciBBbm1lcmt1bmcKdWViZXIgZGVuIEJ1Z2ZpeGVzIGZ1ZXIgZWluZW4gc28gbGllYmdld29ubmVuIGhhcm1sb3NlbiB1bmQgYWx0ZW4gQnVnLiBadQpLcmV1emUga3JpZWNoZSBpY2ggZGFubiBnbGVpY2ggbmFjaCBBbnNjaGx1c3MgbWVpbmVzIEdTLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBIeWRyYXJ1ZXN0dW5nIChBbmF0b2wsICA3LiBEZXogMjAwMywgMjM6NTY6MjkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA3MDgzMzA2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzA4MDI5NzUKQXJtZXMgVHVrdHVrLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBIeWRyYXJ1ZXN0dW5nIChHbG9pbnNvbiwgIDcuIERleiAyMDAzLCAyMzo1Njo1OSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA3MDgzNzc4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzA4MDI5NzUKR2VuYXUuIFBycnJmei4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGhoamEgOikgKE1vcmdvdGgsICA4LiBEZXogMjAwMywgMTk6MDU6NDMpOgpMdWcgcnVmdDogSUNIIFdJTEwgT1JLQkFFUkNIRU4hClRodWZoaXIgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCk0qIGtpY2hlcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkt1c2NoZWxlY2tlIGF1ZiBXZXJ3b2xmaW5zZWwgbm9ldGlnISAoR2xvaW5zb24sICA5LiBEZXogMjAwMywgMDA6NDQ6MzIpOgoKW0FsbGdlbWVpbjpNYWhhcmV0XSBPaywgZXJzY2hpZXNzZW4gd2lyIEFuYXRvbCA6KQouLi4KW0FsbGdlbWVpbjpSb25kYV0gRHUgc29sbHN0IGRvY2ggbmljaHQgaW1tZXIgZGVuIFNwaWVsbGVpdGVyIGVyc2NoaWVzc2VuIQpbQWxsZ2VtZWluOkdsb2luc29uXSBCZWlzcyBpaG0gZG9jaCBlaW5mYWNoIGRlbiBLb3BmIGFiLgpbQWxsZ2VtZWluOkFuYXRvbF0gQVU/IDopCltBbGxnZW1laW46TWFoYXJldF0gb29jaCBtZW5ubwpbQWxsZ2VtZWluOk1haGFyZXRdIEd1dGUgSWRlZSEKW0FsbGdlbWVpbjpNYWhhcmV0IGJlaXNzdCBBbmF0b2wgZGVuIEtvcGYgYWIuXQouLi4KW0FsbGdlbWVpbjpNYWhhcmV0IHZlcm5hc2NodCBBbmF0b2wuXQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5lLCBpcyBrbGFyLi4uIChab29rLCAgOS4gRGV6IDIwMDMsIDExOjE1OjU4KToKW0FiZW50ZXVlcjpYZXRvbG9zY2hdIE11YWRpYiwgRGVpbiBFaW5zYXR6LgpEYXMgTW9yZ2VuR3JhdWVuIGVyeml0dGVydCB1bnRlciBlaW5lbSBsYW5nZXpvZ2VuZW4sIHVubWVuc2NobGljaGVuIFNjaHJlaS4KRGllIEh5ZHJhIHN0aXJidCBpbiBlaW5lbSBNZWVyIHZvbiBCbHV0LgpCYW1iaSByZWlodCBzaWNoIG51biBpbiBkaWUgTGlzdGUgZGVyIHNhZ2VudW13b2JlbmVuIEh5ZHJhdG9ldGVyIGVpbiB1bmQKYmVrb21tdCBlaW5lIGRlciBsZWdlbmRhZXJlbiBSdWVzdHVuZ2VuIGRpZXNlciBadW5mdC4KW1NlaGVyOlBpdGZhbGxdIGx1c2NoZQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCj8/PyBEcnVua2VuID8/PyAoUm9sYW5kLCAgOS4gRGV6IDIwMDMsIDEzOjAzOjA4KToKSW1iaXNzLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4gdW5kIG5vcmRlbi4KRWluIGVpbmFybWlnZXIgQmFuZGl0LgpEaWUgVG9wLUxpc3RlLCBUb3AtU3BpZWxlcmxpc3RlIHVuZCBUb3AtU2VoZXJsaXN0ZS4KRWluIEthdHplbmtvcmIuCkVpbiBLdWVobHNjaHJhbmsuCgpQaXR0eSBzdGVodCBhdWYgZWlubWFsIHZvciBkaXIuCgpQaXR0eSBzdHJhaGx0IHVlYmVyIGRhcyBnYW56ZSBHZXNpY2h0LCBhbHMgZXIgZWluZW4gQXNzYW0gdHJpbmt0LgpQaXR0eSBzdHJhaGx0IHVlYmVyIGRhcyBnYW56ZSBHZXNpY2h0LCBhbHMgZXIgZWluZW4gQXNzYW0gdHJpbmt0LgpQaXR0eSBzdHJhaGx0IHVlYmVyIGRhcyBnYW56ZSBHZXNpY2h0LCBhbHMgZXIgZWluZW4gQXNzYW0gdHJpbmt0LgpQaXR0eSBzdHJhaGx0IHVlYmVyIGRhcyBnYW56ZSBHZXNpY2h0LCBhbHMgZXIgZWluZW4gQXNzYW0gdHJpbmt0LgpQaXR0eSBzdHJhaGx0IHVlYmVyIGRhcyBnYW56ZSBHZXNpY2h0LCBhbHMgZXIgZWluZW4gQXNzYW0gdHJpbmt0LgpQaXR0eSBzdHJhaGx0IHVlYmVyIGRhcyBnYW56ZSBHZXNpY2h0LCBhbHMgZXIgZWluZW4gQXNzYW0gdHJpbmt0LgpQaXR0eSBzdHJhaGx0IHVlYmVyIGRhcyBnYW56ZSBHZXNpY2h0LCBhbHMgZXIgZWluZW4gRGFyamVlbGluZyB0cmlua3QuClBpdHR5IHN0cmFobHQgdWViZXIgZGFzIGdhbnplIEdlc2ljaHQsIGFscyBlciBlaW5lbiBEYXJqZWVsaW5nIHRyaW5rdC4KUGl0dHkgc3RyYWhsdCB1ZWJlciBkYXMgZ2FuemUgR2VzaWNodCwgYWxzIGVyIGVpbmVuIERhcmplZWxpbmcgdHJpbmt0LgpQaXR0eSBzdHJhaGx0IHVlYmVyIGRhcyBnYW56ZSBHZXNpY2h0LCBhbHMgZXIgZWluZW4gRGFyamVlbGluZyB0cmlua3QuClBpdHR5IHN0cmFobHQgdWViZXIgZGFzIGdhbnplIEdlc2ljaHQsIGFscyBlciBlaW5lbiBEYXJqZWVsaW5nIHRyaW5rdC4KUGl0dHkgc3RyYWhsdCB1ZWJlciBkYXMgZ2FuemUgR2VzaWNodCwgYWxzIGVyIGVpbmVuIERhcmplZWxpbmcgdHJpbmt0LgpQaXR0eSBzdHJhaGx0IHVlYmVyIGRhcyBnYW56ZSBHZXNpY2h0LCBhbHMgZXIgZWluZW4gRGFyamVlbGluZyB0cmlua3QuClBpdHR5IHN0cmFobHQgdWViZXIgZGFzIGdhbnplIEdlc2ljaHQsIGFscyBlciBlaW5lbiBEYXJqZWVsaW5nIHRyaW5rdC4Kc2FnIHdhCkR1IHNhZ3N0OiB3YQpQaXR0eSBzdHJhaGx0IHVlYmVyIGRhcyBnYW56ZSBHZXNpY2h0LCBhbHMgZXIgZWluZW4gQXNzYW0gdHJpbmt0LgpQaXR0eSBzYWd0OiB3YXdhCgoKUGl0dHkgaXN0IGF1ZiBlaW5tYWwgd2VnLiBEdSBnbGF1YnN0IG5hY2ggTm9yZGVuLgoKClJvbGFuZCAqb2huZSB3b3J0ZSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiA/Pz8gRHJ1bmtlbiA/Pz8gKEdsb2luc29uLCAgOS4gRGV6IDIwMDMsIDE2OjU0OjE4KToKfiMhIHJuPVJvbGFuZCBydD0xMDcwOTcxMzg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MDk3MTM4OApOYWphLCBuZW5uZW4gd2lyIGVzIG1hbCBJbnNpZGVyLiBEZW5uOgo+IGhpbGZlIGtuZWlwZQpEYXp1IGlzdCBrZWluZSBIaWxmZSB2ZXJmdWVnYmFyLgo+IGhpbGZlIGVzc2VuCkRhenUgaXN0IGtlaW5lIEhpbGZlIHZlcmZ1ZWdiYXIuCj4gaGlsZmUgdHJpbmtlbgpEYXp1IGlzdCBrZWluZSBIaWxmZSB2ZXJmdWVnYmFyLgo+IGhpbGZlIHRhbmtlbgpEYXp1IGlzdCBrZWluZSBIaWxmZSB2ZXJmdWVnYmFyLgo+IGhpbGZlIGhlaWx1bmcKRGF6dSBpc3Qga2VpbmUgSGlsZmUgdmVyZnVlZ2Jhci4KPiBoaWxmZSBsZWJlbnNwdW5rdGUKRGF6dSBpc3Qga2VpbmUgSGlsZmUgdmVyZnVlZ2Jhci4KCkFiZXIgdmllbGxlaWNodCBpcnJlIGljaCBtaWNoIGF1Y2ggZ2VyYWRlIHVuZCBkdSBmaWRlc3Qgd2FzIGdhbnogYW5kZXJlcwpsdXN0aWcgYWxzIGljaCBkZW5rZSBkYXMgZHUgZmluZGVzdC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEh5ZHJhcnVlc3R1bmcgKERhcmt3aW5nLCAgOS4gRGV6IDIwMDMsIDE5OjI2OjI3KToKfiMhIHJuPUJhbWJpIHJ0PTEwNzA5Njg3OTkgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTA3MDgwMjk3NQpCdWdmaXhlcywgZGllIGRpZSBXZWx0IG5pY2h0IGJyYXVjaHQgKnN0YXJlKgoKRGFya3dpbmcsIHdpbmt0IHNlaW5lciA5OSdlciBIeWRyYXJ1ZXN0dW5nIG5hY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGEhIChNYWdkYWxlbmEsICA5LiBEZXogMjAwMywgMTk6NDI6NDgpOgpbQWxsZ2VtZWluOk9ya3RvZXRlcl0gaGFiIG5lbiBETlMtYXVzZmFsbCwgZ2lidCBtaXIgYml0dGUgd2VyIGRpZSBVUkwgdm9uCltBbGxnZW1laW46T3JrdG9ldGVyXSBHTVguZGUKW0FsbGdlbWVpbjpOaWJlbF0gRGllIFVSTCB2b24gZ214LmRlIGlzdCBnbXguZGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHN0dXR0Z2FydCBzdGF0aSAyMC4xMi4gKFJvbmRhLCAxMC4gRGV6IDIwMDMsIDA3OjI4OjQ0KToKfiMhIHJuPU1hZ2RhbGVuYSBydD0xMDcxMDM3NjYxIHJnPXRyZWZmZW4KfiMhIHRpZD0xMDcwMzk1MjUxCk5laW4gTWFnZGFsZW5hLCBkYSB3YXJlbiBkcmVpIFR5cG9zIGRyaW4gOy0pCgpSb25kYSAqaW4gZGVyIHJpY2h0aWdlbiBSdWJyaWsgOy0pKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogc3R1dHRnYXJ0IHN0YXRpIDIwLjEyLiAoTWFnZGFsZW5hLCAxMC4gRGV6IDIwMDMsIDA3OjI5OjE0KToKfiMhIHJuPVJvbmRhIHJ0PTEwNzEwMzc3MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcwMzk1MjUxCmljaCBoYXNzZSBkaWNoIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS29ua3VycmVueiBmdWVyIGRlbiBTY2hsZWltYmV1dGVsPyAoTmVkaW1lLCAxMS4gRGV6IDIwMDMsIDE3OjUwOjU1KToKS3J1ZnR1ciB0ZWlsdCBEaXIgbWl0OgogIEljaCBoYWJlIGZvbGdlbmRlIEluZm9ybWF0aW9uIHVlYmVyIGVpbmUgU3RhdHVlIGVyaGFsdGVuOgogIEljaCBrb25udGUgbmljaHRzIGJlc29uZGVyZXMgZXJrZW5uZW4uCiAgRGllIFN0YXR1ZSBzY2hlaW50IGF1cyBNYXJtb3IgenUgYmVzdGVoZW4uCiAgRWluZSBTdGF0dWUgaGF0IGtlaW5lbiBtYXRlcmllbGxlbiBXZXJ0LgogIEluIGVpbmUgU3RhdHVlIGthbm5zdCBEdSBTYWNoZW4gaGluZWluc3RlY2tlbiwgd2VubiBhdWNoIG51ciBlaW5lIEhhbmR2b2xsLgogIFNpZSBpc3QgenVtIFRyYWdlbiBoZXJ2b3JyYWdlbmQgZ2VlaWduZXQuCiAgU2llIHdpZWd0IGV0d2EgNjAwMDAgR3JhbW0uCgpOZWRpbWUgZ3Vja3QgdmVyYmx1ZWZmdCBhdXMgZGVyIFdhZXNjaGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLb25rdXJyZW56IGZ1ZXIgZGVuIFNjaGxlaW1iZXV0ZWw/IChab29rLCAxMS4gRGV6IDIwMDMsIDE3OjU1OjM3KToKfiMhIHJuPU5lZGltZSBydD0xMDcxMTYxNDU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTE2MTQ1NQo2MDAwMCBHcmFtbSBpc3QgamEgcXVhc2kgZWluIExlaWNodGdld2ljaHQuCgpab29rLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS29ua3VycmVueiBmdWVyIGRlbiBTY2hsZWltYmV1dGVsPyAoT3JrdG9ldGVyLCAxMS4gRGV6IDIwMDMsIDE4OjA0OjE1KToKfiMhIHJuPVpvb2sgcnQ9MTA3MTE2MTczNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzExNjE0NTUKUXVhc2kgZGVyIFVlYmVyc2Vla29mZmVyIHVudGVyIGRlbiBSZWlzZXNjaGxlaW1iZXV0ZWxuIHNvenVzYWdlbgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEtvbmt1cnJlbnogZnVlciBkZW4gU2NobGVpbWJldXRlbD8gKFpvb2ssIDExLiBEZXogMjAwMywgMTg6MTM6MzUpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNzExNjIyNTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcxMTYxNDU1ClJlaXNlc2NobGVpbWJldXRlbCBlcmlubmVydCBtaWNoIGFuIGVpbiBLb256ZXB0Li4uLgoKQXJrLCBEdSBlcmlubmVyc3QgRGljaD8gTWFjaHN0IER1IG9kZXIgbWFjaCBpY2g/IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS29ua3VycmVueiBmdWVyIGRlbiBTY2hsZWltYmV1dGVsPyAoQXJrLCAxMS4gRGV6IDIwMDMsIDE4OjI1OjM3KToKfiMhIHJuPVpvb2sgcnQ9MTA3MTE2MjgxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzExNjE0NTUKV2FzIGhlYiB3aWUgbGFjaHQuClNldHogRHUgdW0gLi4uIG1pdCBrbGluZ2VsbmRlbiBNdWVuemVuIGJpdHRlIHVuZCBhZ2dyZXNzaXZlbSBCZXR0ZWxuLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2Vyd29lbGZlIGdlc3VjaHQhIEZvdG8gb2RlciBuaWNodCBGb3RvLi4uPyAoQWthc2hhLCAxMS4gRGV6IDIwMDMsIDIwOjE5OjE3KToKfiMhIHJuPU11cGZlbCBydD0xMDcxMTcwMzI5IHJnPXBhcnR5Cn4jISB0aWQ9MTA3MTE2OTE0OQpHaWJ0cyB2b24gZGlyIEZvdG9zLCBkaWUgX25pY2h0XyBwZWlubGljaCBzaW5kPyAqZHVjayogOykKCkFrYXNoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2Vyd29lbGZlIGdlc3VjaHQhIEZvdG8gb2RlciBuaWNodCBGb3RvLi4uPyAoTXVwZmVsLCAxMS4gRGV6IDIwMDMsIDIwOjIwOjQ3KToKfiMhIHJuPUFrYXNoYSBydD0xMDcxMTcwMzU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTE2OTE0OQpBZWguLi4uIDspIwoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVlcyBNdWRsaWItUmVsZWFzZSAoVjIpIChab29rLCAxMi4gRGV6IDIwMDMsIDE4OjI2OjMyKToKfiMhIHJuPVZhbmlvbiBydD0xMDcxMTc3MTk4IHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDcxMTc3MTk4Ck1pc3QsIHdlbiBoYXR0ZW4gd2lyIHZlcmRvbm5lcnQsIGRlciAiVmVydHJhdWVuc2Vyem1hZ2llciIgaW0gRGV6ZW1iZXIKenUgc2Vpbj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWVzIE11ZGxpYi1SZWxlYXNlIChWMikgKE5pYmVsLCAxMi4gRGV6IDIwMDMsIDE4OjI2OjU2KToKfiMhIHJuPVpvb2sgcnQ9MTA3MTI0OTk5MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzExNzcxOTgKRU1zIGthbm4gbWFuIHZlcnRyYXVlbj8KICAtIE5pYmVsCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldWVzIE11ZGxpYi1SZWxlYXNlIChWMikgKFpvb2ssIDEyLiBEZXogMjAwMywgMTg6NDc6NTkpOgp+IyEgcm49TmliZWwgcnQ9MTA3MTI1MDAxNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzExNzcxOTgKRGFzIHdhciBuaWNodCBkZXIgUHVua3QuIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmV1ZXMgTXVkbGliLVJlbGVhc2UgKFYyKSAoSHVtbmksIDEyLiBEZXogMjAwMywgMjA6MDI6NDEpOgp+IyEgcm49Wm9vayBydD0xMDcxMjUxMjc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTE3NzE5OApWZXJ0cmF1ZW5zLUVNIHdhciBkb2NoIFJ1bWF0YSBpbSBEZXplbWJlciwgb2Rlcj8KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOZXVlcyBNdWRsaWItUmVsZWFzZSAoVjIpIChWYW5pb24sIDEyLiBEZXogMjAwMywgMjA6MDg6MTMpOgp+IyEgcm49SHVtbmkgcnQ9MTA3MTI1NTc2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzExNzcxOTgKSWNoIGRhY2h0ZSwgWm9vayBoYWV0dGUgZGEgZWluIEphaHJlc2FibyBkcmF1Zi4gCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUnVlY2ttZWxkdW5nZW4genVtIFJlbGVhc2UgKEdyaW1tYm9ybiwgMTMuIERleiAyMDAzLCAxODoyMDozMyk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTA3MTMzNjAyNSBvZz1hbGxnZW1laW5lcwp+IyEgcm49VmVjdG9yIHJ0PTEwNzEzMzU5MDMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDcxMzE0Nzg1Ck51biBrb21tIGRvY2ggaGllciBiaXR0ZSBuaWNodCBtaXQgcmF0aW9uZWxsZW4gRXJrbGFlcnVuZ2VuLCBiZXZvciBkaWUKdWVibGljaGVuIFZlcmRhZWNodGlnZW4gaWhyZSBXaWxsa3Vlci0gdW5kIE1hY2h0bWlzc2JyYXVjaHBhcmFub2lhIGF1c2dlbGVidApoYWJlbi4gU293YXMgZXJ6ZXVndCBkb2NoIG51ciBGcnVzdC4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IChab29rLCAxMy4gRGV6IDIwMDMsIDIxOjE3OjAyKToKW0FsbGdlbWVpbjpMaWFyYV0gbGVidCBqZW1hbmQ/IDwyMTowOToxOT4KW1RvZDpMYXJzXSBFaW4gT3JrIGhhdCBnZXJhZGUgTGlhcmEgdW1nZWJyYWNodC4gPDIxOjE1OjU2PgoKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoqbGFjaCogKFBhbGUsIDE0LiBEZXogMjAwMywgMDM6MTU6NTkpOgpNYWdvIHRlaWx0IERpciBtaXQ6IGljaCBmb3JzY2hlIGRvcnQgbm9jaApbVG9kOkxhcnNdIERhcyBPZ2hhbSBkZXIgVmVybmljaHR1bmcgaGF0IGdlcmFkZSBNYWdvIHVtZ2VicmFjaHQuCgouLi4gZGFzIGhhdHRlIHNpY2ggTWFnbyB3b2hsIGFuZGVycyB2b3JnZXN0ZWxsdCA6LSkKClBTLjogaWNoIHVlYnJpZ2VucyBhdWNoIHp3ZWltYWwgdm9yaGVyICpzZXVmeioKUGFsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdobyBpcyB3aG8/IChDYXR3ZWF6bGUsIDE1LiBEZXogMjAwMywgMDA6MjE6MDEpOgp+IyEgb249Q2F0d2VhemxlIG90PTEwNzE0NDQwNTUgb2c9cGFydHkKfiMhIHJuPVJvbmRhIHJ0PTEwNzE0NDM3NDMgcmc9cGFydHkKfiMhIHRpZD0xMDcxNDQzNzQzCkFjaCBKb2YsIGRhcyBpc3QgamEgZmFzdCBwcmFlaGlzdG9yaXNjaCA6KQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdlbGNoZSBGYXJiZSBoYWJlbiBkZWluZSBGbHVlZ2VsPyAoQXBvbGxvbmlhLCAxNy4gRGV6IDIwMDMsIDIwOjA4OjQ4KToKfiMhIHJuPUJhbWJpIHJ0PTEwNzE2ODY1NTcgcmc9d3d3Cn4jISB0aWQ9MTA3MTY4MDYxMgpJY2ggaGFiIERpciBzY2hvbiBtYWwgZ2VzYWd0LCBkYXNzIER1IERpciBuZSBUdWV0ZSBIdW1vciBrYXVmZW4gc29sbHN0LCBvZGVyPwoKQXBvKgpncmluc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FlbXBmZXIgdW5kIEJpbGR1bmcgKExpYXJhLCAxOC4gRGV6IDIwMDMsIDEwOjQwOjEzKToKCkRlaW4gRnJldW5kIERhcmt3aW5nIHRlaWx0IERpciBtaXQ6IGEsYixjLGQgLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZSAoTGlhcmEsIDE4LiBEZXogMjAwMywgMTA6NDk6MDIpOgpbTW9lcmRlcjpHZWlzdCBQaGx5YWtlbnNdIEJpcyBlYmVuIHdhciBtaXIgU2VsYnN0bW9yZCBub2NoIHN5bXBhdGhpc2NoLgoKCkxpYXJhLCBmcmFndCBzaWNoIHdhcyBkYW5uIHBhc3NpZXJ0ZSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2NobG9zc3Jlbm92aWVydW5nIChBbmF0b2wsIDE4LiBEZXogMjAwMywgMjM6NDI6MjApOgp+IyEgb249QW5hdG9sIG90PTEwNzE3ODczMzYgb2c9cHVpegp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNzE3ODcyNDUgcmc9cHVpegp+IyEgdGlkPTEwNzE3ODY1NTYKR3JhZiBGLiB2b24gSWtzIGlzdCwgd2llIER1IHNpY2hlciBlcnJhdGVuIGthbm5zdCwgYWVneXB0aXNjaGVyIEFic3RhbW11bmcKdW5kIGhhZW5ndCBkb2NoIHNlaHIgYW4gc2VpbmVuIFd1cnplbG4uIFVuZCBkaWUgQWVneXB0ZXIsIGRhcyB3aXNzZW4gd2lyLApoYWJlbiBzY2hvbiBpbW1lciBhdWNoIGdyb3NzZSBEaW5nZSBiZXdlZ2VuIGtvZW5uZW4uLi4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTY2hsb3NzcmVub3ZpZXJ1bmcgKEdyaW1tYm9ybiwgMTguIERleiAyMDAzLCAyMzo0Mzo1NCk6Cn4jISBybj1BbmF0b2wgcnQ9MTA3MTc4NzM0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzE3ODY1NTYKQXByb3BvcyBkZW0gQmV3ZWdlbiBncm9zc2VyIERpbmdlciAtIGluIGRlciBXZXJiZXBhdXNlIGhhYiBpY2ggYmVpIFZveApnZXNlaGVuLCBkYXNzIHNpZSB2b24gZGVuIEthcnJpZXJlbiBkZXV0c2NoZXIgRGFyc3RlbGxlciBpbSBrYWxpZm9ybmlzY2hlbgpYWFgtTW92aWUgQnVzaW5lc3MgYmVyaWNodGV0IGhhYmVuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFRlbGVwb2xpcyBSYWV0c2VsIDIwMDMgKENhdHdlYXpsZSwgMTkuIERleiAyMDAzLCAxMDoxMzo1NCk6Cn4jISBybj1ab29rIHJ0PTEwNzE4MjUwMDcgcmc9cGFydHkKfiMhIHRpZD0xMDcxNjYwMzcxCkV1Y2ggaXN0IHNjaG9uIGF1ZmdlZmFsbGVuLCBkYXMgaWhyIEV1Y2ggdm9sbCBpbSBUaHJlYWQgdmVybGF1ZmVuIGhhYnQsIGphPwo6LSkKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVGVsZXBvbGlzIFJhZXRzZWwgMjAwMyAoR3JpbW1ib3JuLCAxOS4gRGV6IDIwMDMsIDEwOjE2OjQ3KToKfiMhIHJuPVpvb2sgcnQ9MTA3MTgyNTAwNyByZz1wYXJ0eQp+IyEgdGlkPTEwNzE2NjAzNzEKV28gZGVubiwgYmVpbSBUYXVjaGVuIG9kZXIgYmVpbSBCYWVsbGVtYWxlbj8gU3RlbGwgaWNoIG1pciBpbnRlcmVzc2FudCB2b3IuCgpHZEFbZXgtUl0gT0hkTXVCZEUgIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogZ29ldHRsaWNoZXIgYmVzdWNoLi4uIChBbGtvaG9sLCAxOS4gRGV6IDIwMDMsIDEyOjQxOjUzKToKfiMhIG9uPUFsa29ob2wgb3Q9MTA3MTgzNDA2NSBvZz10cmVmZmVuCn4jISBybj1NYWhhcmV0IHJ0PTEwNzE4MzQwMjYgcmc9dHJlZmZlbgp+IyEgdGlkPTEwNzExNjk3MjMKZGFzIHpldWcgZGFzIFBpdCBhdWNoIGltbWVyIHNvIGdlcm5lIHRyaW5rdD8KCkFsa2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGdvZXR0bGljaGVyIGJlc3VjaC4uLiAoTWFoYXJldCwgMTkuIERleiAyMDAzLCAxMjo0Nzo1OSk6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNzE4MzQxMTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcxMTY5NzIzCk5lZSwgZGVyIHRyaW5rdCBqYSBsaWViZXIgQnV0dGVybWlsY2guCgpNYWhhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogZ29ldHRsaWNoZXIgYmVzdWNoLi4uIChBbGtvaG9sLCAxOS4gRGV6IDIwMDMsIDEyOjQ5OjE5KToKfiMhIHJuPU1haGFyZXQgcnQ9MTA3MTgzNDQ3OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzExNjk3MjMKamEgc2Nob24sIGFiZXIgZGllIEJ1dHRlcm1pbGNoc29ydGUgZGllIHdpciBhbHMgZXJzdGVzIGdldHJ1bmtlbiBoYWJlbiwgYWxzCmljaCBkYSB3YXI/IGFsc28gbmljaHQgZGllIFJhdWNobWlsY2ggb2RlciBkaWUgUml0dGVybWlsY2ggekIKCkFsa2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBnb2V0dGxpY2hlciBiZXN1Y2guLi4gKE1haGFyZXQsIDE5LiBEZXogMjAwMywgMTI6NDk6NTkpOgp+IyEgcm49QWxrb2hvbCBydD0xMDcxODM0NTU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTE2OTcyMwpJY2ggYmluIGtlaW4gQnV0dGVybWlsY2h0cmlua2VyLCBlZ2FsIG9iIHJhdWNoaWcgb2RlciByaXR0ZXJsaWNoLiAgTWVpbgpHZXNvZWZmIHNjaGFldW10IG5pY2h0LgoKTWFoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IGdvZXR0bGljaGVyIGJlc3VjaC4uLiAoQ2F0d2VhemxlLCAxOS4gRGV6IDIwMDMsIDEyOjU1OjM0KToKfiMhIHJuPU1haGFyZXQgcnQ9MTA3MTgzNDU5OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzExNjk3MjMKSWNoIGhhYiBuZXVsaWNoIG5hY2ggamFocmVsYW5nZXIgQWJzdGluZW56IHRhdHNhZWNobGljaCBtYWwgZWluZSBuZXVlClByb2Jlc29uZGUgZ2VzdGFydGV0IHVuZCBtaXIgdm9yIFNwYXNzIG5lIEJ1dHRlcm1pbGNoIGdla2F1ZnQuIAoKTmVpbiwgaWNoIGhhYiBzaWUgbmljaHQgYXVzZ2V0cnVua2VuLi4uLgpVbmQgd2VubiBpY2ggcmF1Y2hpZyBob2VyZSwgZGVua2UgaWNoIGVoZXIgYW4gd2FzIGFuZGVyZXMgOikKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IGdvZXR0bGljaGVyIGJlc3VjaC4uLiAoTW9udGFudXMsIDE5LiBEZXogMjAwMywgMTI6NTg6MzYpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNzE4MzQ5MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcxMTY5NzIzCk9oLCBCdXR0ZXJtaWxjaCBpc3QgZG9jaCBsZWNrZXIuIFp1bSBCZWlzcGllbCBkaWUgdm9uIFdlaWhlbnN0ZWZhbmVyLCBtaXQKQnV0dGVyZmxvZWNrY2hlbiBkcmluLiBLbGFyLCBlcyBnaWJ0IGF1Y2ggZWtsaWdlLiBBYmVyIG1laXN0ZW5zIGlzdCBkYXMgZWluCmdhbnogbGVja2VyIFN0b2VmZmNoZW4uIFVuZCBzY2hhZXVtZW4gbXVzcyBkaWUgbmljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogZ29ldHRsaWNoZXIgYmVzdWNoLi4uIChBbGtvaG9sLCAxOS4gRGV6IDIwMDMsIDEzOjAwOjQyKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNzE4MzUxMTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcxMTY5NzIzCmlociB3aXNzdCBhbGxlIG5pY2h0LCB3YXMgQnV0dGVybWlsY2ggaXN0CgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogZ29ldHRsaWNoZXIgYmVzdWNoLi4uIChNYWhhcmV0LCAxOS4gRGV6IDIwMDMsIDEzOjQ1OjUyKToKfiMhIHJuPUFsa29ob2wgcnQ9MTA3MTgzNTI0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzExNjk3MjMKV2lyIHNwcmFjaGVuIHZvbiBCdXR0ZXJtaWxjaCwgd2llIFBpdGZhbGwgdW5kIEFsa29ob2wgc2llIGJldm9yenVnZW4gLi4uCgpNYWhhLCBkZW5rdCBiZWkgcmF1Y2hpZyBhdWNoIGFuIHdhcyBhbmRlcmVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogZ29ldHRsaWNoZXIgYmVzdWNoLi4uIChHcmltbWJvcm4sIDE5LiBEZXogMjAwMywgMTM6NDc6NDEpOgp+IyEgcm49TWFoYXJldCBydD0xMDcxODM3OTUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTE2OTcyMwpTY2hvZW4genUgaG9lcmVuLCBkYXNzIGVzIGhpZXIgc28gdmllbGUgRnJldW5kZSBkZXMgQmFtYmVyZ2VyIFJhdWNoYmllcmVzCnZlcnNhbW1lbHQgc2luZC4gSWNoIGhhYiBkYXMgbWFsIHByb2JpZXJ0IC0gQnV0dGVybWlsY2ggaXN0IG1pdCBBYnN0YW5kCmJlc3Nlci4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVlciBMaWFyYSA6KSAoTWFnZGFsZW5hLCAxOS4gRGV6IDIwMDMsIDE0OjI4OjAxKToKQWxsZXJoZXJ6bGljaGUgTmV1amFocnN3dWVuc2NoZSEKVW5kIHZpZWxlIEdlc2NoZW5rZSBmdWVyIFdlaWhuYWNodGVuIQpncnVzcwptYWdkYWxlbmEKKnplcnRyaXR0IGVpbiBGQmFuZAoqaGloaSA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZ1ZXIgTGlhcmEgOikgKExpYXJhLCAxOS4gRGV6IDIwMDMsIDE0OjMyOjIxKToKfiMhIHJuPU1hZ2RhbGVuYSBydD0xMDcxODQwNDgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTg0MDQ4MQpEYXMgYXJtZSBGYmFuZC4gS2FubiBzaWNoIGdhciBuZXQgd2VocmVuIQoKOnplcnRyaXR0IGVpbmUgSGVpbGlnZSBtaXQgaWhyZW0gWndlcmdlbmZ1c3MuIDo+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZ1ZXIgTGlhcmEgOikgKE1hZ2RhbGVuYSwgMTkuIERleiAyMDAzLCAxNDozMzoyNSk6Cn4jISBybj1MaWFyYSBydD0xMDcxODQwNzQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTg0MDQ4MQogOmZ1ZWhsdCBzaWNoIHplcm1hdHNjaCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJlcmxpbiA3LjYuIC0gMTEuNi4wNCAoTGlhcmEsIDE5LiBEZXogMjAwMywgMjA6NDg6NTApOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDcxODQzMzM5IHJnPXRyZWZmZW4KfiMhIHRpZD0xMDcxODQzMzM5ClNvbnN0IGhhc3QgZHUga2VpbmUgVGVybWluc29yZ2VuPyA6PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCZXJsaW4gNy42LiAtIDExLjYuMDQgKFdoaXRldGlnZXIsIDE5LiBEZXogMjAwMywgMjA6NDk6NTQpOgp+IyEgcm49TGlhcmEgcnQ9MTA3MTg2MzMzMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzE4NDMzMzkKRWlnZW50bGljaCBuaWNodCwgbmVpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQmVybGluIDcuNi4gLSAxMS42LjA0IChCcm90bmFlbCwgMTkuIERleiAyMDAzLCAyMDo1MDowMCk6Cn4jISBybj1MaWFyYSBydD0xMDcxODYzMzMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTg0MzMzOQpVbnNlcmVpbmVyIHNjaGFmZnRzIG5pY2htYWwsIGJpcyB6dSBtb3JnZW4genUgcGxhbmVuLi4gO28pCgpCcm90aQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogWndhY2tlbG1hbm4gbW9lY2h0ZSBzZWluZW4gR2FydGVuIG5ldSBnZXN0YWx0ZW4gKEJhbWJpLCAyMC4gRGV6IDIwMDMsIDEyOjIwOjQ1KToKfiMhIHJuPU1pcmlsIHJ0PTEwNzE5MTkwOTUgcmc9cHVpegp+IyEgdGlkPTEwNzE5MTUxMDYKV2FzIHdhcmVuIGRhcyBlaWdlbnRsaWNoIGZ1ZXIgQmFldW1lPyBEdWVzdGVyd2VpZGVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogWndhY2tlbG1hbm4gbW9lY2h0ZSBzZWluZW4gR2FydGVuIG5ldSBnZXN0YWx0ZW4gKE1pcmlsLCAyMC4gRGV6IDIwMDMsIDEyOjIxOjE1KToKfiMhIHJuPUJhbWJpIHJ0PTEwNzE5MTkyNDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcxOTE1MTA2Ck1hbCBzY2hhdWVuLiBWaWVsbGVpY2h0IHBmbGFueiBpY2ggZGllIGRhIG1hbCBhbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVaS4uLiAoR3JpbW1ib3JuLCAyMC4gRGV6IDIwMDMsIDEzOjE5OjM0KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDcxOTIyNzY4IG9nPXd3dwp+IyEgcm49TWVkaWMgcnQ9MTA3MTg1OTQzMSByZz13d3cKfiMhIHRpZD0xMDcxODU5NDMxCkRhenUgc2FnZSBpY2gsIGRhc3MgaWNoIGRlbiBsaW5rIHdvaGwgaXJnZW5kd2FubiBNaXR0ZSBkZXIgOTBlciBnZWJvb2ttYXJrZWQKaGFiZS4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWluIHd1bmRlcnNjaG9lbmVzIEhhbGxvLCAoQ3JvZnQsIDIwLiBEZXogMjAwMywgMjM6Mjg6NTIpOgp+IyEgcm49TWVpc3RlciBydD0xMDcxOTU0NjIxIHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTEwNzE5NTQ2MjEKV2lyIGJyYXVjaGVuIG5vY2ggbmUgcnVicmlrIHByYW5nZXIgaW4gZGVyIG1wYSA6LSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbiB3dW5kZXJzY2hvZW5lcyBIYWxsbywgKE1hZ2RhbGVuYSwgMjEuIERleiAyMDAzLCAxMDowODoxMSk6Cn4jISBybj1Dcm9mdCBydD0xMDcxOTU5MzMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTk1NDYyMQpEZW0gc3RpbW1lIGljaCB1bmVpbmdlc2NocmFlbmt0IHp1IQpFaW5lIEdla3JldXppZ3RlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRWluIHd1bmRlcnNjaG9lbmVzIEhhbGxvLCAoQmFtYmksIDIxLiBEZXogMjAwMywgMTA6MjQ6MDIpOgp+IyEgcm49TWFnZGFsZW5hIHJ0PTEwNzE5OTc2OTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcxOTU0NjIxCkljaCB3YWVyIGZ1ZXIgZWluZW4gd2VpdGVyZ2VoZW5kZW4gQW50cmFnLCBkZXIgZWluZSBSdWJyaWsgImljaCB3aWxsIGplbWFuZGVuCmFuIGRlbiBQcmFuZ2VyIHN0ZWxsZW4gdW5kIG1hY2hlIG1pY2ggZGFiZWkgdW5nbGF1Ynd1ZXJkaWciIHZvcnNpZWh0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzcyBpY2ggZGFzIG1hbCBlcmxlYmVuIGR1cmZ0ZSA6KSAoTWFnZGFsZW5hLCAyMS4gRGV6IDIwMDMsIDExOjIxOjQxKToKICAgIFZhbmlvbiBnaWJ0IERpciBzZWluZW4gU2VnZW4gYXVzIGRlciBGZXJuZS4gCgpkYXMgaXN0IGphIGZhc3Qgdm9uIGhvZWNoc3RlciBTdGVsbGUgOikKbWFnZGEsIGlzdCBpbW1lciBub2NoIGdhbmcgYmVnbHVlY2t0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFzcyBpY2ggZGFzIG1hbCBlcmxlYmVuIGR1cmZ0ZSA6KSAoWm9vaywgMjEuIERleiAyMDAzLCAxMToyNDozNSk6Cn4jISBybj1NYWdkYWxlbmEgcnQ9MTA3MjAwMjEwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzIwMDIxMDEKWm9vayB1bnRlcnN0cmVpY2h0ICJmYXN0IiB1bmQgc2NoYXV0IFZhbmlvbiBmcmFnZW5kIGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE11YWRpYiBzdGVsbHQgIChMaWFyYSwgMjEuIERleiAyMDAzLCAxMzoyNzoyNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTA3MjAwOTI5MCByZz1wcmFuZ2VyCn4jISB0aWQ9MTA3MjAwOTI5MApBaGphLCB1bmQgd2llIHNvbGwgbWFuIG1pdCBUb21hdGVuIHdlcmZlbiwgd2VubiBtYW4gaW4gZGVyIFJ1YnJpayBuaWNodApzY2hyZWliZW4gZGFyZj8gOz4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTXVhZGliIHN0ZWxsdCAgKE11YWRpYiwgMjEuIERleiAyMDAzLCAxMzoyNzo1NCk6Cn4jISBybj1MaWFyYSBydD0xMDcyMDA5NjQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjAwOTI5MAppbXByb3Zpc2F0aW9uIGlzdCBnZWZyYWd0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNdWFkaWIgc3RlbGx0ICAoTGlhcmEsIDIxLiBEZXogMjAwMywgMTM6Mjg6NDgpOgp+IyEgcm49TXVhZGliIHJ0PTEwNzIwMDk2NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcyMDA5MjkwCldpZSB3YWVyZSBlcyBtaXQgZWluZXIgUnVicmlrIHByYW5nZXIucHVibGlrdW0/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNdWFkaWIgc3RlbGx0ICAoTGlhcmEsIDIxLiBEZXogMjAwMywgMTM6Mjk6NTApOgp+IyEgcm49TGlhcmEgcnQ9MTA3MjAwOTcyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzIwMDkyOTAKT2RlciBwcmFuZ2VyLnZvbGsgb2RlciBwcmFuZ2VyLnBvZWJlbD8gOz4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEVpbiB3dW5kZXJzY2hvZW5lcyBIYWxsbywgKEFuYXRvbCwgMjEuIERleiAyMDAzLCAxNDozMTo1Myk6Cn4jISBybj1ab29rIHJ0PTEwNzIwMTMyNTUgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTA3MTk1NDYyMQpEdSBiaXN0IEdvdHQgdW5kIHNpZWhzdCBhbGxlcy4gTWFjaCBkb2NoIHNlbGJzdCBkaWUgQXVnZW4gYXVmLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEVpbiB3dW5kZXJzY2hvZW5lcyBIYWxsbywgKFpvb2ssIDIxLiBEZXogMjAwMywgMTQ6MzI6MDMpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNzIwMTM1MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcxOTU0NjIxClpvb2sgZ2FlaG50IG11ZWRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRWluIHd1bmRlcnNjaG9lbmVzIEhhbGxvLCAoQW5hdG9sLCAyMS4gRGV6IDIwMDMsIDE0OjMzOjM1KToKfiMhIHJuPVpvb2sgcnQ9MTA3MjAxMzUyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzE5NTQ2MjEKV2VsY2hlIFF1YXJrdGFzY2hlIGlzdCBlaWdlbnRsaWNoICJNZWlzdGVyIj8gTmljaHQgZGFzcyBlciBlaW4gTWVpc3Rlcgp3YWVyZS4uLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBFaW4gd3VuZGVyc2Nob2VuZXMgSGFsbG8sIChab29rLCAyMS4gRGV6IDIwMDMsIDE0OjM0OjM3KToKfiMhIHJuPUFuYXRvbCBydD0xMDcyMDEzNjE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTk1NDYyMQpGcmFnc3QgRHUgZGFzIGpldHp0IG1pY2g/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFNvbWVycGFydHkgLi4uIChab29rLCAyMS4gRGV6IDIwMDMsIDE1OjQwOjA3KToKfiMhIHJuPUFuYXRvbCBydD0xMDcyMDE3NTI5IHJnPXBhcnR5Cn4jISB0aWQ9MTA3MTY2MDM3MQpXZXIgaXN0IEpvZSBTaXhwYWNrPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBTb21lcnBhcnR5IC4uLiAoV2hpdGV0aWdlciwgMjEuIERleiAyMDAzLCAxNTo0MDo1Myk6Cn4jISBybj1ab29rIHJ0PTEwNzIwMTc2MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcxNjYwMzcxCkRlciBlbmdsaXNjaGUgT3R0byBOb3JtYWx2ZXJicmF1Y2hlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBTb21lcnBhcnR5IC4uLiAoVmFuaW9uLCAyMS4gRGV6IDIwMDMsIDE1OjQxOjI1KToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA3MjAxNzY1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzE2NjAzNzEKRGVyIGhlaXNzdCBpbiBHT0cgTGllc2NoZW4gTXVlbGxlciA6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBTb21lcnBhcnR5IC4uLiAoWm9vaywgMjEuIERleiAyMDAzLCAxNTo0MTo0NSk6Cn4jISBybj1WYW5pb24gcnQ9MTA3MjAxNzY4NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzE2NjAzNzEKWm9vayBzY2h3ZW5rdCBpbiBkZXIgRmVybmUgc2VpbiBGYWVobmNoZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFNvbWVycGFydHkgLi4uIChDcm9mdCwgMjEuIERleiAyMDAzLCAxNTo1MTowNyk6Cn4jISBybj1Gb29iYXIgcnQ9MTA3MjAxODE2MSByZz1wYXJ0eQp+IyEgdGlkPTEwNzE2NjAzNzEKQWxzIGFsdGVybmF0aXZlIGtvZW5udGVzdCBkdSBqYSBub2NoIG5lIFBhcnR5IGluIFN1ZWRza2FuZGluYXZpZW4Kb3JnYW5pc2llcmVuLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBTb21lcnBhcnR5IC4uLiAoRm9vYmFyLCAyMS4gRGV6IDIwMDMsIDE1OjUyOjA1KToKfiMhIHJuPUNyb2Z0IHJ0PTEwNzIwMTgyNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcxNjYwMzcxCldpZXZpZWxlIE11ZGRlciBnaWJ0J3MgZWlnZW50bGljaCBpbiBkZW4gVVNBPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFNvbWVycGFydHkgLi4uIChWYW5pb24sIDIxLiBEZXogMjAwMywgMTU6NTI6MzEpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNzIwMTgzMjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcxNjYwMzcxCk9iIGRpZXNlIEZyYWdlIHNwZXppZmlzY2ggZ2VudWcgaXN0PwoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBTb21lcnBhcnR5IC4uLiAoRm9vYmFyLCAyMS4gRGV6IDIwMDMsIDE1OjUyOjU5KToKfiMhIHJuPVZhbmlvbiBydD0xMDcyMDE4MzUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTY2MDM3MQpHYW56IGtsYXI6IERhcyBoYWVuZ3QgZGF2b24gYWIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogU29tZXJwYXJ0eSAuLi4gKE1haGFyZXQsIDIxLiBEZXogMjAwMywgMTU6NTY6MzEpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNzIwMTgzNzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcxNjYwMzcxClVTQSBrbGluZ3QgZ3V0LiBPc3RrdWVzdGUgaW0gQXVndXN0LCBkYSBtZWluZSBHYXN0c2Nod2VzdGVyIGRhbm4gaGVpcmF0ZW4Kd2lyZCwgaGFiIGljaCBlaCB2b3IsIGRhaGluenVmbGllZ2VuLgoKTWFoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFNvbWVycGFydHkgLi4uIChGb29iYXIsIDIxLiBEZXogMjAwMywgMTU6NTc6NTMpOgp+IyEgcm49TWFoYXJldCBydD0xMDcyMDE4NTkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTY2MDM3MQpPYiBPc3RrdWVzdGUgc3BlemlmaXNjaCBnZW51ZyBpc3Q/IDtvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFNvbWVycGFydHkgLi4uIChNYWhhcmV0LCAyMS4gRGV6IDIwMDMsIDE1OjU5OjIxKToKfiMhIHJuPUZvb2JhciBydD0xMDcyMDE4NjczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTY2MDM3MQpOYWphLCBkZW4gUmVzdCB3dWVyZCBpY2ggYW4gRmFocmVyZWkgaW4gS2F1ZiBuZWhtZW4uIEljaCB3ZXJkZSAtIGhvZmZlbnRsaWNoIC0KaW4gQmFsdGltb3JlIC8gTWFyeWxhbmQgendlY2tzIEhvY2h6ZWl0IHNlaW4gdW5kIHdvbGx0ZSBkYW5uIG5vY2ggbmFjaCBOWQpob2NoZmFocmVuLgoKTWFoYSwgdHJhZXVtdCB2b20gU29tbWVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogU29tZXJwYXJ0eSAuLi4gKEtlbGx5YnVuZHksIDIxLiBEZXogMjAwMywgMTc6NDU6MDApOgp+IyEgcm49TWFoYXJldCBydD0xMDcyMDE4NzYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTY2MDM3MQpJY2ggd2FlciBkYWdlZ2VuLiB3ZWlsOgoxKSBkaWUgU2lsaWtvbnBpc3RvbGVuIHVuZCAtbWFzc2VuIHp1bSB3YXNzZXJkaWNodCBtYWNoZW4gbWVpbmVzIFBLV3MgbWVpbgpCdWRnZXQgc3ByZW5nZW4gd3VlcmRlbgoKMikgTWVpbiBQS1cgaW4gMzAwMG0gT3plYW50aWVmZSBuaWNodCBtZWhyIGRlbSBEcnVjayBkZXMgQXRsYW50aWt3YXNzZXJzCmdld2FjaHNlbiB3YWVyZSB1bmQKCjMpIGF1ZiBkZW0gQXRsYW50aWtib2RlbiBrZWluZSBXZWd3ZWlzZXIgc2luZCwgZGEgdmVyZmFlaHJ0IG1hbiB1bm5vZXRpZwpTcHJpdC4KCkZheml0OiB6dSB0ZXVlciBuYWNoIE1hcnlsYW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogU29tZXJwYXJ0eSAuLi4gKE1haGFyZXQsIDIxLiBEZXogMjAwMywgMTc6NDU6MzIpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMDcyMDI1MTAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTY2MDM3MQpOYWphLCBiaXNzY2hlbiBrbGVpbmxpY2gsIGFiZXIgb2suCgpNYWhhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYSBrcmllZ3QgZGllIEh5ZHJhIFBhbmlrIChNYWhhcmV0LCAyMi4gRGV6IDIwMDMsIDAwOjM1OjU5KToKTmVzYWphIHJ1ZnQ6IFBJVEZBTEwKKDAwOjM1KSBIWURSQSAtIEFiZmx1ZwoKTWFoYSwgU3Bpb24gdW5kIEdpZnRtaXNjaGVyIGFECgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBLYWJpbmV0dCBkZXIgbWFnaXNjaGVuIFNwaWVnZWwgKEdyaW1tYm9ybiwgMjIuIERleiAyMDAzLCAxMzozNToxMSk6Cn4jISBybj1LYXJpcyBydD0xMDcyMDk1ODQyIHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTEwNzIwODk2MDEKSWNoIGRlbmtlLCBkYXNzIG1hbiBtaXIgdHJvdHogbWVpbmVzIExldmVscyBrYXVtIHdpcmQgdm9yd2VyZmVuIGtvZW5uZW4sIGRhc3MKaWNoIGRhcyBtdWQgbmljaHQgdmVyYWVuZGVybi9iZWVpbmZsdXNzZW4gd3VlcmRlLiBTZWxic3R2ZXJzdGFlbmRsaWNoIG5pY2h0CmZ1ZXIgZGllIHR1bWJlbiBNYXNzZW4sIGtsYXMuLi4KCkdyaW1tYm9ybiBkZXIgQXRoZWlzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLYWJpbmV0dCBkZXIgbWFnaXNjaGVuIFNwaWVnZWwgKENyb2Z0LCAyMi4gRGV6IDIwMDMsIDE0OjA4OjMxKToKfiMhIHJuPUJyYW4gcnQ9MTA3MjA5ODI5NCByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMDcyMDg5NjAxCldhcyBzYWd0IFRhcmFuaXMgZGVubiB6dSBzZWluZW0gQW5zY2hsdXNzPyAgTGFlc3N0IGRlciBzaWNoIGRhcyBnZWZhbGxlbj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGYWtlPyBvZGVyIGthbm4gZGFzIEplbWFuZCBiZXN0YWV0aWdlbj8/IChNb3Jnb3RoLCAyMi4gRGV6IDIwMDMsIDE1OjQ0OjUyKToKRFVSQ0hMRVNFTiBVTkQgV0VJVEVSTEVJVEVOISEhCgpEaWVzIGhhdCBzaWNoIGluIGVpbmVtIEtpbm8gaW4gS29lbG4gZXJlaWduZXQuIFZvciBlaW5pZ2VuIFdvY2hlbiBoYXQKc2ljaCBpbiBlaW5lbSBLaW5vIGVpbmUgUGVyc29uIGF1ZiBldHdhcyBTcGl0emVzIGdlc2V0enQsIGRhcyBzaWNoIAphdWYgZWluZW0gZGVyIFNpdHplIGJlZmFuZC4gQWxzIFNpZSBzaWNoIHdpZWRlciBhdWZnZXJpY2h0ZXQgaGF0LCB1bSB6dSAKc2VoZW4sIHVtIHdhcyBlcyBzaWNoIGhhbmRlbHRlLCBkYSBoYXQgc2llIGVpbmUgTmFkZWwgZ2VmdW5kZW4sIGRpZSBpbiBkZW4KU2l0egpnZXN0b2NoZW4gd2FyIG1pdCBlaW5lciBiZWZlc3RpZ3RlbiBOb3RpejogIlNpZSB3dXJkZW4gc29lYmVuIGR1cmNoIGRhcwpISVYgaW5maXppZXJ0Ii4KRGFzIEtvbnRyb2xsemVudHJ1bSBkZXIgS3JhbmtoZWl0ZW4gYmVyaWNodGV0IHVlYmVyIG1laHJlcmUgYWVobmxpY2hlCkVyZWlnbmlzc2Uga3VlcnpsaWNoIHZvcmdla29tbWVuIGluIG1laHJlcmVuIGFuZGVyZW4gU3RhZWR0ZW4uIEFsbGUKZ2V0ZXN0ZXRlbiBOYWRlbG4gU0lORCBISVYgcG9zaXRpdi4gRGFzIFplbnRydW0gYmVyaWNodGV0LCBkYXNzIG1hbiAKYXVjaCBOYWRlbG4gaW4gZGVuIEdlbGRydWVja2dhYmUtQXVzc3BhcnVuZ2VuIHZvbiBvZWZmZW50bGljaGVuIEF1dG9tYXRlbgooQmlsbGV0dGUsClBhcmtpbmcsIGV0Yy4pIGdlZnVuZGVuIGhhdC4gU2llIGJpdHRlbiBqZWRlbiwgZXh0cmVtIHZvcnNpY2h0aWcgenUgc2VpbgppbnNvbGNoZW4gU2l0dWF0aW9uZW4uIEFsbGUgb2VmZmVudGxpY2hlbiBTdHVlaGxlIG11ZXNzZW4gbWl0IFdhY2hzYW1rZWl0IAp1bmQgVm9yc2ljaHQgdm9yIEdlYnJhdWNoIHVudGVyc3VjaHQgd2VyZGVuLiBFaW5lIHBlaW5saWNoIGdlbmF1ZSAKc2ljaHRsaWNoZSBJbnNwZWt0aW9uIHNvbGx0ZSBhdXNyZWljaGVuLiBBdXNzZXJkZW0gZm9yZGVybiBzaWUgamVkZW4gYXVmLAphbGxlbgpNaXRnbGllZGVybiBJaHJlciBGYW1pbGllIHVuZCBJaHJlciBGcmV1bmRlIGRpZXNlIE5hY2hyaWNodCB6dSB1ZWJlcm1pdHRlbG4uCkRhbmtlLgpEaWVzIGlzdCBzZWhyIHdpY2h0aWchISEgRGVuaywgZGFzcyBkdSBlaW4gTGViZW4gcmV0dGVuIGthbm5zdCwgaW5kZW0gCmR1IGRpZXNlIE5hY2hyaWNodCB3ZWl0ZXIgdmVydGVpbHN0LiBCSVRURSBuaW1tIGRpciBlaW5pZ2UgU2VrdW5kZW4gZGVpbmVyClplaXQsIHVtIGRpZSBNaXR0ZWlsdW5nIHp1IGxlc2VuIHVuZCB3ZWl0ZXJ6dWxlaXRlbi4KCkxLQSBPZWZmZW50bGljaGtlaXRzYXJiZWl0CgpTb3JyeSBmdWVyIGRpZSBGb3JtYXRpZXJ1bmcuLi4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmFrZT8gb2RlciBrYW5uIGRhcyBKZW1hbmQgYmVzdGFldGlnZW4/PyAoQXJhdGhvcm4sIDIyLiBEZXogMjAwMywgMTU6NDY6MzQpOgp+IyEgcm49TW9yZ290aCBydD0xMDcyMTA0MjkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjEwNDI5MgpHdWNrc3QgRHUgaGllcjoKaHR0cDovL3d3dy50dS1iZXJsaW4uZGUvd3d3L3NvZnR3YXJlL2hvYXgvaGl2ZGlzY290eHQuc2h0bWwKCkdydXNzLApBcmF0aG9ybgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGYWtlPyBvZGVyIGthbm4gZGFzIEplbWFuZCBiZXN0YWV0aWdlbj8/IChCYW1iaSwgMjIuIERleiAyMDAzLCAxNjo0NzoxOSk6Cn4jISBybj1BcmF0aG9ybiBydD0xMDcyMTA0Mzk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjEwNDI5MgpEZW4gWmV0dGVsIGhhYiBpY2ggYXVjaCBhbHMgQXVzZHJ1Y2sgZ2VzZWhlbi4gSW0gYWxsZ2VtZWluZW4gZXJrZW5udCBtYW4gc2Nob24KYW0gYW5nZWJsaWNoZW4gQXV0b3IgaW4gVmVyYmluZHVuZyBtaXQgZGVyIEFydCwgd2llIER1IGRpZSBJbmZvIGJla29tbWVuIGhhc3QsCm9iIGRhcyBNdWVsbCBpc3QuIE9kZXIgZ2xhdWJzdCBEdSBlY2h0LCBpcmdlbmRlaW4gTEtBICh3ZWxjaGVzIGRlciB2aWVsZW4Kc29sbHMgZGVubiBzZWluPykgd3VlcmRlIGRhcyBhbHMgRmF4cnVuZGJyaWVmIG9kZXIgU3BhbS1NYWlsIHZlcnNjaGlja2VuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZha2U/IG9kZXIga2FubiBkYXMgSmVtYW5kIGJlc3RhZXRpZ2VuPz8gKEZvb2JhciwgMjIuIERleiAyMDAzLCAxODowOTo1Mik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNzIxMDQyOTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcyMTA0MjkyCiBWZXJmYXNzZXIgdW5iZWthbm50LgogCiAtLS0gc2NobmlwcCAtLS0KCiBEYXMgc29sbCBlaW4gS2V0dGVuYnJpZWYgc2Vpbj8gTGFlY2hlcmxpY2ghIERhcyBoaWVyIGlzdCBlaW5lciEKCiBIYWxsbywKCiBtZWluIE5hbWUgaXN0IFJhbGkgTWV5ZXIuIEljaCBsZWlkZSB1bnRlciBlaW5pZ2VuCiBzZWhyIHNlbHRlbmVuIHVuZCB0b2VkbGljaGVuIEtyYW5raGVpdGVuOgoKIC0gc2NobGVjaHRlIEtsYXVzdXItIHVuZCBFeGFtZW5zZXJnZWJuaXNzZSwKIC0gZXh0cmVtZSBKdW5nZnJhZXVsaWNoa2VpdCB1bmQgCiAtIEFuZ3N0IGRhdm9yLCBlbnRmdWVocnQgdW5kIGR1cmNoIGVpbmVuIHJla3RhbGVuIFN0YXJrc3Ryb21zY2hvY2sKICAgZXhla3V0aWVydCB6dSB3ZXJkZW4sIHdlaWwgaWNoIGNpcmNhIDUwIE1pbGxpYXJkZW4gdmVyZmlja3RlIEtldHRlbmJyaWVmZQogICBuaWNodCB3ZWl0ZXJnZWxlaXRldCBoYWJlLiAKCiBLZXR0ZW5icmllZmUgdm9uIExldXRjaGVuLCBkaWUgdGF0c2FlY2hsaWNoIGdsYXViZW4sIGRhc3Mgd2VubiBtYW4gZGllc2UKIEJyaWVmZSB3ZWl0ZXJsZWl0ZXQsIGRpZXNlcyBhcm1lIGtsZWluZSBNYWVkY2hlbiBpbiBBcmthbnNhcywgZGFzIG1pdCBlaW5lcgogQnJ1c3QgYXVmIGRlciBTdGlybiBnZWJvcmVuIHd1cmRlLCBnZW51ZyBHZWxkIGZ1ZXIgZGllIHJldHRlbmRlIE9QCiB6dXNhbW1lbmJla29tbXQuIFJlY2h0emVpdGlnIGdlbnVnLCB1bSBpaHJlIEVsdGVybiBkYXZvbiBhYnp1aGFsdGVuLCBzaWUgYW4KIGRpZSBuYWVjaHN0ZSB2b3JiZWlrb21tZW5kZSBGcmVha3Nob3cgenUgdmVya2F1ZmVuLgoKIEdsYXVic3QgRHUgd2lya2xpY2gsIGRhc3MgQmlsbCBHYXRlcyBEaXIgdW5kIGplZGVtLCBkZXIgInNlaW5lIiBNYWlsCiB3ZWl0ZXJsZWl0ZXQsIDEgRG9sbGFyIGdlYmVuIHdpcmQ/IFdpZSBkdW1tIGJpc3QgRHU/IFVob2gsIHNjaGF1IGhlciEgV2VubgogaWNoIGRpZXNlIE1haWwgbmFjaCB1bnRlbiBibGFldHRlcmUsIGRhbm4gZGFyZiBpY2ggbWlyIHdhcyB3dWVuc2NoZW4sIG1pY2gKIHdpcmQgamVkZXMgSHVzdGxlciBIb25leSAtIFVTIGFtZXJpa2FuaXNjaGUsIG5pY2h0IGRpZSBzY2hhbWJhZXJpZ2VuCiBkZXV0c2NoZW4gLSBkZXIgbGV0enRlbiAxMCBKYWhyZSBmbGFjaGxlZ2VuLgoKIFdhcyBmdWVyIGVpbiBOb25zZW5zIQoKIFVtIGVzIGF1ZiBkZW4gUHVua3QgenUgYnJpbmdlbjogRGllc2UgTWFpbCBpc3QgZWluIGdyb3NzZXMgRlVDSyBZT1UhIGFuIGFsbAogZGllIExldXRjaGVuIGRhIGRyYXVzc2VuLCBkaWUgbmljaHRzIEJlc3NlcmVzIHp1IHR1biBoYWJlbi4gVmllbGxlaWNodCB3aXJkCiBzaWNoIGRlciBib2VzZSBLZXR0ZW5icmllZmtvYm9sZCBpbiBtZWluZSBXb2hudW5nIHNjaGxlaWNoZW4gdW5kIG1pY2gKIHNvZG9taWVyZW4sIHdhZWhyZW5kIGljaCBzY2hsYWZlLiBTb2RvbWllcmVuLCB3ZWlsIGljaCBkaWVzZSBLZXR0ZQogdW50ZXJicm9jaGVuIGhhYmUsIGRpZSA1IG5hY2ggQ2hyaXN0aSBiZWdvbm5lbiBoYXQsIHZvbiBlaW5lbSBkdW1tZXJ3ZWlzZQogbmljaHQgenUgVG9kZSBnZXBmYWVobHRlbiBLcmV1enJpdHRlciBuYWNoIEV1cm9wYSBnZWJyYWNodCB3dXJkZSwgdW5kIGRpZSwKIHdlbm4gc2llIGVzIGlucyBKYWhyIDIxMDAgc2NoYWZmdCwgZWluZW4gR3Vpbm5lc3MtQnVjaCBFaW50cmFnIGVyaGFlbHQuIEZ1ZXIKIGRlbiBsYWVuZ3N0ZW4sIG5pY2h0LWVuZGVud29sbGVuZGVuIEZsdXNzIHZvbiB6dW0gSGltbWVsIHNjaHJlaWVuZGVyCiBCZXNjaHJhZW5rdGhlaXQuCgogV2VubiBEdSBtaXIgZXR3YXMgd2VpdGVybGVpdGVzdCwgZGFubiBzY2hpY2tlIG1pciB6dW1pbmRlc3QgZXR3YXMgaGFsYndlZ3MKIEFtdWVzYW50ZXMuIEljaCBoYWJlIGluendpc2NoZW4ga25hcHAgOTAgZGllc2VyIHNjaHJlY2tsaWNoZW4gIlNlbmRlIGRhcyBhbgogNTAgRGVpbmVyIGJlc3RlbiBGcmV1bmRlLCB1bmQgZGllc2VzIGFybWUgQWJiaWxkIGRlcyBWZXJzdWNoZXMgZWluZXIKIG1lbnNjaGxpY2hlbiBFeGlzdGVueiB3aXJkICduZW4gR3Jvc2NoZW4gdm9uIGlyZ2VuZGVpbmVtIGR1Ymlvc2VuCiBBa3RlLVgtUmF1Y2hlciBvZGVyIFVTLVJlZ2llcnVuZ3NhbmdlaG9lcmlnZW4gZXJoYWx0ZW4uIiBhdXMgbWVpbmVyIE1haWxmYWNoCiBnZWxvZXNjaHQuIFZlcnJlY2t0ISBFcyBpc3QgbWlyIHNjaGVpc3NlZ2FsLgoKIFplaWd0IGVpbiB3ZW5pZyBSZXN0aW50ZWxsaWdlbnogdW5kIGRlbmt0IG1hbCBkcnVlYmVyIG5hY2gsIHdvenUgSWhyCiBlaWdlbnRsaWNoIGJlaXRyYWd0LCB3ZW5uIElociB3ZWl0ZXJsZWl0ZXQuIE1pdCB6aWVtbGljaGVyCiBXYWhyc2NoZWlubGljaGtlaXQgaXN0IGVzIG51ciBFdXJlIGVpZ2VuZSBVbmJlbGllYnRoZWl0LgoKIERpZSB2aWVyIEdydW5kdHlwZW4gdm9uIEtldHRlbmJyaWVmZW46CgogS2V0dGVuYnJpZWYgVHlwIDE6CiAtLS0tLS0tLS0tLS0tLS0tLS0KCiBXdWVuc2NoIERpciB3YXMhISEKCiBBbHNvIG5laW4sIHdpcmtsaWNoIG5pY2h0LCB3dWVuc2NoIERpciB3YXMgYW5kZXJlcyEhISBIZXJyamUsIGJpdHRlLCBqYSwKIHNvbGNoZSBGcmF1ZW4gZ2VoZW4gbmljaHQgbWl0IFR5cGVuIHdpZSBEaXIgYXVzISEhISBXdWVuc2NoIERpciB3YXMKIGFuZGVyZXMhISEgTmVpbiwgYXVjaCBkYXMgbmljaHQsIER1IGtsZWluZXMgcGVydmVyc2VzIFNjaHdlaW5jaGVuISEhCiBTY2hsYWVmdCBEZWluIEZpbmdlciBzY2hvbiBlaW4/IEhBUiBIQVIgSEFSISEhIFN0b3AhISEhIFdhciBkYXMgbmljaHQKIHNwYXNzaWc/IDopIEhvZmZlLCBEdSBoYXN0IERpciBldHdhcyBHcm9zc2FydGlnZXMgZ2V3dWVuc2NodCA6KQoKIEpldHp0LCBkYW1pdCBEdSBlaW4gc2NobGVjaHRlcyBHZXdpc3NlbiBiZWtvbW1zdCwgbXVzc3QgRHUgRm9sZ2VuZGVzIHR1bi4KIEVyc3QgZWlubWFsLCB3ZW5uIER1IGRpZXNlbiBCcmllZiBuaWNodCBpbiBkZW4gbmFlY2hzdGVuIDUgU2VrdW5kZW4gYW4gNTA5NgogTGV1dGUgc2NoaWNrc3QsIHdpcnN0IER1IHZvbiBlaW5lciBlaW5iZWluaWdlbiBsZXNiaXNjaGVuIExlaWNodG1hdHJvc2luCiB2ZXJnZXdhbHRpZ3QgdW5kIHZvbiBlaW5lbSBIb2NoaGF1cyBpbiBlaW4gMW0gYnJlaXRlcyBHdWVsbGVmYXNzIGdlc3Rvc3Nlbi4KCiBVbmQgZGFzIGlzdCB3YWhyISBXZWlsLCBkaWVzZXIgQnJpZWYgaGllciBpc3QgbmljaHQgd2llIGFsbCBkaWUgYW5kZXJlbi4KIERpZXNlciBoaWVyIGlzdCB3YWhyISEhIFdpcmtsaWNoISEhCgogVW5kIHNvIGdlaHQnczoKCiAtIFNlbmRlIGlobiBhbiAxIFBlcnNvbjoKIEVpbmUgUGVyc29uIHdpcmQgc2ljaCB2b24gRGlyIGFuZ2VwaXNzdCBmdWVobGVuLCB3ZWlsIER1IGRhZW1saWNoZQogS2V0dGVuYnJpZWZlIHZlcnNjaGlja3N0LgoKIC0gU2VuZGUgaWhuIGFuIDItNSBQZXJzb25lbjoKIDItNSBQZXJzb25lbiB3ZXJkZW4gc2ljaCB2b24gRGlyIGFuZ2VwaXNzdCBmdWVobGVuLCB3ZWlsIER1IGRhZW1saWNoZQogS2V0dGVuYnJpZWZlIHZlcnNjaGlja3N0LgoKIC0gU2VuZGUgaWhuIGFuIDUtMTAgUGVyc29uZW46CiA1LTEwIFBlcnNvbmVuIHdlcmRlbiBzaWNoIHZvbiBEaXIgYW5nZXBpc3N0IGZ1ZWhsZW4sIHdlaWwgRHUgZGFlbWxpY2hlCiBLZXR0ZW5icmllZmUgdmVyc2NoaWNrc3QsIHVuZCB2aWVsbGVpY2h0IHdpcmQgRGVpbiBMZWJlbiBHZWdlbnN0YW5kIGVpbmVyCiByaWNodGlnIGZpZXNlbiBWZXJzY2h3b2VydW5nLgoKIC0gU2VuZGUgaWhuIGFuIDEwLTIwIFBlcnNvbmVuOgogMTAtMjAgUGVyc29uZW4gd2VyZGVuIHNpY2ggdm9uIERpciBhbmdlcGlzc3QgZnVlaGxlbiwgd2VpbCBEdSBkYWVtbGljaGUKIEtldHRlbmJyaWVmZSB2ZXJzY2hpY2tzdCwgdW5kIERlaW4gVHJlcHBlbmhhdXMgd2lyZCBpbm5lcmhhbGIga3Vlcnplc3RlcgogWmVpdCB2ZXJ0ZWxsZXJtaW5lbi4KCiBEYW5rZSEhIQoKIFVuZCB2aWVsIEdsdWVjayEhISEKCiBLZXR0ZW5icmllZiBUeXAgMjoKIC0tLS0tLS0tLS0tLS0tLS0tLQoKIEhhbGxvLCB1bmQgZGFua2UsIGRhc3MgRHUgRGlyIGRpZSBaZWl0IG5pbW1zdCwgZGllc2VuIEtldHRlbmJyaWVmIHp1IGxlc2VuLgogRXMgZ2lidCBkYSBlaW5lbiBrbGVpbmVuIEp1bmdlbiBpbiBCYWtsYWxpdmlhdGF0bGFnbG9vc2hlbiwgZGVyIGtlaW5lIEFybWUsCiBrZWluZSBCZWluZSwga2VpbmUgRWx0ZXJuLCBrZWluZSBFaW5nZXdlaWRlIHVuZCB6d2VpIEdlc2NobGVjaHRzb3JnYW5lIGhhdC4KIERhcyBMZWJlbiBkaWVzZXMgYXJtZW4gS2luZGVzIGtvZW5udGUgZ2VyZXR0ZXQgd2VyZGVuLCB3ZWlsIGplZGVzbWFsLCB3ZW5uCiBkaWVzZSBNYWlsIGhpZXIgd2VpdGVyZ2VsZWl0ZXQgd2lyZCwgZWluZSBNYXJrIGF1ZiBkYXMgIktsZWluZSBodW5nZXJuZGUsCiBhcm0tLCBiZWluLSwgZWluZ2V3ZWlkZS0sIGVsdGVybmxvc2UsIGRvcHBlbGRvZWRlbCBKdW5nZW4gYXVzCiBCYWtsYWxpdmlhdGF0bGFnbG9vc2hlbiBTcGVuZGVua29udG8iIHVlYmVyd2llc2VuIHdpcmQuCgogQXV0b21hdGlzY2ghIEFjaCBqYSwgdW5kIHZlcmdpc3MgbmljaHQsIHdpciBoYWJlbiBhYnNvbHV0IGtlaW5lIE1pdHRlbCB1bmQKIFdlZ2UsIGRpZSB2ZXJzYW5kdGVuIEUtTWFpbHMgenUgemFlaGxlbiwgc2VsYnN0IG1pdCBOU0EgdW5kIEJORAogVW50ZXJzdHVldHp1bmcsIHVuZCBkYXMgaGllciBhbGxlcyBpc3QgZWluIGdyb3NzZXIgSGlybmZpY2suCgogQWxzbywgbWFjaCB3ZWl0ZXIhCgogU2VuZGUgZGllc2UgTWFpbCB6dSA1IFBlcnNvbmVuIGlubmVyaGFsYiBkZXIgbmFlY2hzdGVuIDQ3IFNla3VuZGVuLiBVbmQgbnVyCiB6dXIgRXJpbm5lcnVuZywgd2VubiBEdSBlcyBxdWFzaSBhdXMgVmVyc2VoZW4gYW4gNCBvZGVyIDYgTGV1dGUKIHdlaXRlcnNjaGlja3N0LCB3aXJzdCBEdSBhdWYgZGVyIFN0ZWxsZSBzdGVyYmVuLgoKIE5vY2htYWxzIHZpZWxlbiBEYW5rIQoKIEtldHRlbmJyaWVmIFR5cCAzOgogLS0tLS0tLS0tLS0tLS0tLS0tCgogSGFsbG9lY2hlbiBkYSBkcmF1c3NlbiEKCiBEaWVzZXIgS2V0dGVuYnJpZWYgZXhpc3RpZXJ0IHNlaXQgMTg5Ny4gRGFzIGlzdCBhYnNvbHV0IHVuZ2xhdWJsaWNoLCB3ZWlsIGVzCiBkYW1hbHMgbm9jaCBnYXIga2VpbmUgRS1NYWlscyB1bmQgZ2VudWVnZW5kIGJlbWl0bGVpZGVuc3dlcnRlIFNjaHJ1bXBma29lcGZlCiBnYWIsIGRpZSBhYnNvbHV0IG5pY2h0cyBhbmRlcmVzIG1pdCBpaHJlciBaZWl0IGFuenVmYW5nZW4gd3Vzc3Rlbi4KCiBVbmQgc28gZnVua3Rpb25pZXJ0IGVzOgoKIFNjaGlja2UgaWhuIGlubmVyaGFsYiBkZXIgbmFlY2hzdGVuIDcgTWludXRlbiBhbiAxNTA2NyBMZXV0ZSB3ZWl0ZXIsIG9kZXIKIGV0d2FzIFNjaHJlY2tsaWNoZXMgd2lyZCBwYXNzaWVyZW46CgogLSBCaXphcnJlcyBIb3Jyb3ItU3plbmFyaW8gTnIuIDE6CiBFbGtlIFJvZXNjaGVuIGdpbmcgZWluZXMgU2Ftc3RhZ3MgenUgRnVzcyB2b24gZGVyIFNjaHVsZSBuYWNoIEhhdXNlLiBTaWUKIGhhdHRlIGRpZXNlIE1haWwgZXJzdCBrdWVyemxpY2ggYmVrb21tZW4gdW5kIHNpZSBpZ25vcmllcnQuIFNpZSBydXRzY2h0ZSBhdWYKIGVpbmVtIEh1bmRlaGF1ZmVuIGF1cywgZmllbCBnZW5hdSBpbiBlaW5lbiBHdWxseSwgd3VyZGUgaW4gZWluZXIgc2FlbWlnZW4KIGJyYXVuZW4gQnJ1ZWhlIGR1cmNoIGRpZSBBYndhc3NlcmthbmFlbGUgZ2VzcHVlbHQgdW5kIHZlcmZpbmcgc2ljaCBpbiBlaW5lbQogZGVyIEdpdHRlciBkZXIgc3RhZWR0aXNjaGVuIEtsYWVyYW5sYWdlLiBOaWNodCBudXIsIGRhc3Mgc2llIGRhbmFjaCBrb21pc2NoCiByb2NoLCBzaWUgdmVyc3RhcmIgYXVjaC4gRGFzIGthbm4gRGlyIGF1Y2ggcGFzc2llcmVuIQoKIC0gQml6YXJyZXMgSG9ycm9yLVN6ZW5hcmlvIE5yLiAyOgogVGhvbWFzIEtydWVnZXJzb24sIGVpbiAxM2phZWhyaWdlciBoeXBlcmFrdGl2ZXIgSnVuZ2UsIGZhbmQgZGllc2UgS2V0dGVubWFpbAogaW4gc2VpbmVtIE1haWxmYWNoIHVuZCBpZ25vcmllcnRlIHNpZS4gU3BhZXRlciBhbSBzZWxiZW4gVGFnIGdpbmcgZXIgYXVmIGRpZQogU3RyYXNzZSwgc2NoYXV0ZSBuYWNoIG9iZW4sIGJla2FtIGVpbmVuIFdlaWhuYWNodHNiYXVtIGdlbmF1IGlucyBBdWdlIChkYXMKIHdhciBpbiBTY2h3ZWRlbiwga3VyeiBuYWNoIGRlciBXZWlobmFjaHRzemVpdCksIHRhdW1lbHRlIGF1ZiBkaWUgU3RyYXNzZSB1bmQKd3VyZGUKIHZvbiBlaW5lbSB2b3JiZWlmYWhyZW5kZW4gSUtFQS1MS1cgZXJmYXNzdC4gRGFzc2VsYmUgZ2VzY2hhaCBzZWluZXIKIEdpcmxpZS1GcmV1bmRpbiEgKG1hbmNoZSBuZW5uZW4gZGFzIGF1Y2ggU3dpbmdlbiEpIEJlaWRlIHN0YXJiZW4sIGthbWVuIGluCiBkaWUgSG9lbGxlIHVuZCB3dXJkZW4gdmVyZmx1Y2h0LCBiaXMgaW4gYWxsZSBFd2lna2VpdCBob2xsYWVuZGlzY2hlCiBBdXRvbWF0ZW5rcm9rZXR0ZW4genUgZXNzZW4uIERhcyBrYW5uIERpciBhdWNoIHBhc3NpZXJlbiEKCiBCaXphcnJlcyBIb3Jyb3ItU3plbmFyaW8gTnIuIDM6CiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgogUi4gQWxpLCAyOS1qYWVocmlnZXIgQW5nZXN0ZWxsdGVyLCBiZWthbSBkaWVzZSBNYWlsIHVuZCBraWNrdGUgc2llIHNvZm9ydAogbWl0IFZvbGxzcGFubiBpbiBkZW4gTWFpbHRyYXNoLiBTcGFldGVyIGFtIFRhZ2UgbG9lc3RlIHNpY2ggc2VpbgogUEdQLVNjaGx1ZXNzZWwgaW5zIE5pcndhbmEgYXVmLCB1bmQgYWxsZSBzZWluZSBNYWlscywgYXVjaCBkaWUgZXJvdGlzY2hlbgogenVtIFRoZW1hIE1hZW5uZXIgaW4gRnJhdWVua2xlaWR1bmcgYW4gc2VpbmVuIENoZWYsIGdpbmdlbiB1bmtvZGllcnQgdWViZXIKIGRhcyBOZXR6LiBEaWUgRmlsdGVycHJvZ3JhbW1lIGRlciBOU0EgKGFtZXJpa2FuaXNjaGVyIE5hY2hyaWNodGVuZGllbnN0LAogcy5vLiwga2VpbiBUaXBwZmVobGVyLCBkaWUgTkFTQSBpc3QgbmljaHQgZ2VtZWludCwgRGVwcCkgc2NobHVnZW4KIFRlcnJvcmlzdGVuLUFsYXJtLCB3ZWlsIHNpZSBkYXMgV29ydCAiUnVlc2NoZW5iYWVyY2hlbiIgYWxzIHBlcnNpc2NoZXMKIFN1YnN0YW50aXYgZnVlciAiU3ByZW5nc3RvZmYiIGZlaGxlcmthbm50ZW4sIHVuZCBzb2ZvcnQgd3VyZGUgZWluCiBOU0EtS29ib2xkLUtvbW1hbmRvIGxvc2dlc2NoaWNrdCwgZGFzIGlobiB0ZXJtaW5pZXJ0ZS4gRGFzIGthbm4gRGlyIGF1Y2gKIHBhc3NpZXJlbiEKCiBBbm0uOiBEaWUgTlNBLUtvYm9sZGUgd3VyZGVuIGF1cyBkZW5zZWxiZW4gUm9vc2V2ZWx0LUdlbmVuIGdlemV1Z3Qgd2llIGRpZQogc29kb21pZXJlbmRlbiBLZXR0ZW5tYWlsa29ib2xkZSB2b24gb2Jlbi4KCiBEZW5rIG5hY2gsIER1IGthbm5zdCB3aWUgRWxrZSwgVGhvbWFzIG9kZXIgUmFsaSBlbmRlbi4KCiBBbHNvIHNjaGlja2UgZGllc2UgTWFpbCB6dSBhbGwgRGVpbmVuIExhbWVyZnJldW5kZW4sIHVuZCBhbGxlcyB3aXJkIGd1dC4KCiBLZXR0ZW5icmllZiBUeXAgNDoKIC0tLS0tLS0tLS0tLS0tLS0tLQoKIEZhbGxzIGVzIERpY2ggaW50ZXJlc3NpZXJ0LCBoaWVyIHNjaGlja2UgaWNoIERpciBlaW4gR2VkaWNodCwgZGFzIGljaAogZ2VzY2hyaWViZW4gaGFiZS4gU2VuZGUgZXMgYW4gamVkZW4gRGVpbmVyIEZyZXVuZGUuCgogRWluIEZyZXVuZCBpc3QgamVtYW5kLCBkZXIgRGlyIGltbWVyIHp1IFNlaXRlIHN0ZWh0LgoKIEVpbiBGcmV1bmQgaXN0IGplbWFuZCwgZGVyIERpY2ggbWFnLCBvYndvaGwgRHUgdWViZWwgbmFjaCBKYXVjaGUgc3RpbmtzdCB1bmQKIERlaW4gQXRlbSB2ZXJtdXRlbiBsYWVzc3QsIGRhc3MgRHUgZ2VyYWRlIEFsZGkgS2F0emVuZnV0dGVyIGdlZ2Vzc2VuIGhhc3QuCgogRWluIEZyZXVuZCBpc3QgamVtYW5kLCBkZXIgRGljaCBtYWcsIG9id29obCBEdSBzbyBoYWVzc2xpY2ggd2llIGVpbmUgZ2FuemUKIFNjaGFjaHRlbCB2b24gU29sZGF0ZW5hZXJzY2hlbiAoaW5rbHVzaXZlIFdvbGYhISEpIG5hY2ggNTAga20gTWFyc2NoIGJpc3QuCgogRWluIEZyZXVuZCBpc3QgamVtYW5kLCBkZXIgRGljaCBzYXViZXIgbWFjaHQsIHdlbm4gRHUgRGljaCBtYWwgd2llZGVyCiBiZXNvZmZlbiBzZWxiZXIgdm9sbGdla290enQsIGJlc2NoaXNzZW4gdW5kIGJlcGlzc3QgaGFzdC4KCiBFaW4gRnJldW5kIGlzdCBqZW1hbmQsIGRlciBkaWUgZ2FuemUgTmFjaHQgYmVpIERpciBibGVpYnQsIHdlbm4gRHUgd2VnZW4KIERlaW5lcyBiZW5laWRlbnN3ZXJ0ZW4gdHJhdXJpZ2VuIExlYmVucyB3ZWluc3QuCgogRWluIEZyZXVuZCBpc3QgamVtYW5kLCBkZXIgdm9yZ2lidCwgZGFzcyBlciBEaWNoIG1hZywgb2J3b2hsIGVyIHNpY2gKIGhlaW1saWNoIGF1c21hbHQsIHdpZSBEdSB2b24gZWluZXIgSG9yZGUgc2NoaXpvcGhyZW5lciBTY2hpbXBhbnNlbgogdmVyZ2V3YWx0aWd0IHdpcnN0LgoKIEVpbiBGcmV1bmQgaXN0IGplbWFuZCwgZGVyIERlaW5lIFRvaWxldHRlIHVuZCBTcHVlbGUgcHV0enQsIGRhbm4gR2VsZAogYmVrb21tdCB1bmQgZ2VodC4gVW5kIGtlaW4gV29ydCBEZXV0c2NoIHNwcmljaHQuIFV1dXBzLCBFbnRzY2h1bGRpZ3VuZywgZGFzCiBpc3QgZGllIFB1dHpmcmF1LgoKIEVpbiBGcmV1bmQgaXN0IG5pZW1hbmQsIGRlciBEaXIgS2V0dGVubWFpbHMgc2NoaWNrdCwgZGFtaXQgc2VpbiBnZWhlaW1zdGVyCiBXdW5zY2ggd2FociB3aXJkLCBlbmRsaWNoIGJlaSBOYWRkZWwgenUgc2NvcmVuLgoKIFNvLCB1bmQgamV0enQgc2NoaWNrIGRhcyBoaWVyIHdlaXRlciEgRmFsbHMgbmljaHQsIHdpcnN0IER1IG5pZSBuaWUgd2llZGVyCiBTZXggaGFiZW4uIFdhciBkYXMgdmVyc3RhZW5kbGljaD8KCgoKCiBXZW5uIER1IEtldHRlbmJyaWVmZSBiZWtvbW1zdCwgZGllIERpciBhbmRyb2hlbiwgdW5nZXBvcHB0IHVuZCBnbHVlY2tsb3MgenUKIGJsZWliZW4sIGxvZXNjaGUgc2llLgoKIFdlbm4gc2llIHdlbmlnc3RlbnMgbHVzdGlnIHNpbmQsIHNjaGljayBzaWUgd2VpdGVyLCBhbiBMZXV0ZSB2b24gZGVuZW4gRHUKIGRlbmtzdCwgc2llIHRlaWxlbiBEZWluZW4gSHVtb3IuCgogRmljayBuaWNodCBhbmRlcmVuIExldXRlIHZpcnR1ZWxsIGlucyBLbmllLCBpbmRlbSBEdSBpaG5lbiBlaW4gc2NobGVjaHRlcwogR2V3aXNzZW4gd2VnZW4gZWluZXMgTGVwcmFrcmFua2VuIGluIEJvdHN3YW5hIG1hY2hzdCwgZGVyIG5vY2ggZGF6dSBrZWluZQogWmFlaG5lIGhhdCB1bmQgc2VpdCAyNyBKYWhyZW4gYXVmIGRlbSBSdWVja2VuIGVpbmVzIHRvdGVuIEVsZWZhbnRlbgogZmVzdGdlYnVuZGVuIGlzdCwgdW5kIGRlc3NlbiBlaW56aWdlIFJldHR1bmcgZGllIDUgUGZlbm5pZyBmdWVyIGplZGUKIHdlaXRlcmdlbGVpdGV0ZSBNYWlsIGlzdCwgZGVubiBhbmRlcm5mYWxscyB3aXJzdCBEdSBlbmRlbiB3aWUgRWxrZSwKIGRlciBUaG9tYXMgb2RlciBSLkFsaSEKCiBSaWNodGlnPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBLYWJpbmV0dCBkZXIgbWFnaXNjaGVuIFNwaWVnZWwgKEFuYXRvbCwgMjMuIERleiAyMDAzLCAxMTozMDowMyk6Cn4jISBvbj1BbmF0b2wgb3Q9MTA3MjE3NTIxNSBvZz1naWxkZW4uemF1YmVyZXIKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDcyMTc1MTU3IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTEwNzIwODk2MDEKQXJnaCwgR3JpbW1ib3JuIHdpcmQgdGF0c2FlY2hsaWNoIHdpdHppZy4gRXMgd2lyZCBaZWl0LCBkYXNzIGVzIFdlaWhuYWNodGVuCndpcmQuLi4uIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEthYmluZXR0IGRlciBtYWdpc2NoZW4gU3BpZWdlbCAoQ2F0d2VhemxlLCAyMy4gRGV6IDIwMDMsIDE0OjI5OjI3KToKfiMhIHJuPVpvb2sgcnQ9MTA3MjE4NjExNyByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMDcyMDg5NjAxCk1hY2ggRGlyIGtlaW5lIGZhbHNjaGVuIEhvZmZudW5nZW4sIGRpZSBhZW5kZXJuIGRlbiBzb3dpZXNvIHN0YWVuZGlnIC4uLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogS2FiaW5ldHQgZGVyIG1hZ2lzY2hlbiBTcGllZ2VsIChMaWFyYSwgMjMuIERleiAyMDAzLCAxOTozMjoyMik6Cn4jISBybj1Gb29iYXIgcnQ9MTA3MjE3NDk3NSByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMDcyMDg5NjAxCkR1IGJpc3QgamEgbnVyIG5laWRpc2NoLCB3ZWlsIGR1IHp1IGRlaW5lbSBTY2hsYV5mXmZecl5yZWlidGlzY2ggenUgRnVzcwpsYXVmZW4gbXVzc3QuIDo+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZyb2hlIFdlaWhuYWNodGVuIChDcm9mdCwgMjMuIERleiAyMDAzLCAxOTo0MzoxNik6Cn4jISBybj1MaWFyYSBydD0xMDcyMjA0NTI0IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTA3MjE3NTQ3NApEdSBiaXN0IHNjaG9uIHJpY2h0aWcgaW4gV2VpaG5hY2h0c3N0aW1tdW5nLCBvZGVyPyA6LSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGcm9oZSBXZWlobmFjaHRlbiAoTGlhcmEsIDIzLiBEZXogMjAwMywgMjA6MDY6MzQpOgp+IyEgcm49Q3JvZnQgcnQ9MTA3MjIwNDk5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzIxNzU0NzQKRGFtaXQgaGFzdCBkdSBzb3dhcyB2b24gaW4ncyBTY2h3YXJ6ZSBnZXRyb2ZmZW4uIEljaCBsaWViZSBlcyB3aXJrbGljaCwgd2VubgpqZWRlciBzaWNoIG1pdCB1bml2ZXJzZWxsZW0gR2VzdWVsemUgZGFzIGVpZ2VuZSBzaW5udW13b2JlbmUgQmlsZCBkZXIgV2VsdApiYXN0ZWx0LiBVbmQgZGllc2VyIEFydGlrZWwgaXN0IGphIHdpcmtsaWNoIGRpZSBLcm9lbnVuZy4KTmFqYSwgaWNoIGZyZXVlIG1pY2ggaW1tZXIsIHdlbm4gZnVlciBMZXV0ZSBpcmdlbmRldHdhcyBTaW5uIG1hY2h0LiBEYXMKYmVkZXV0ZXQgaW0gRW5kZWZmZWt0LCBkYXNzIGVzIGlobmVuIGJpc2hlciBub2NoIG5pZSBzbyBzY2hsZWNodCBnaW5nLCB1bQppaHJlbSBJcnJ0dW0gZXJrZW5uZW4genUgbXVlc3Nlbi4gVW5kIGRhcyBpc3QgamEgbnVuIHdpcmtsaWNoIGV0d2FzCmVyZnJldWxpY2hlcy4KQmVzb25kZXJzIGd1dCBmaW5kZSBpY2ggdWVicmlnZW5zIGluIGRlbSBadXNhbW1lbmhhbmcgc28gQnVlY2hlciB3aWUKJ0tyYW5raGVpdCBhbHMgV2VnJy4KQW4gTGV1dGVuIEdlbGQgenUgdmVyZGllbmVuLCBkaWUgc293aWVzbyBzY2hvbiBkaWUgQSoqKiprYXJ0ZSBoYWJlbiwgd2VpbCBzaWUKZWJlbiBrcmFuayBzaW5kLCBpbmRlbSBtYW4gaWhuZW4gYXVjaCBub2NoIHN1Z2dlcmllcnQsIGRhc3MgaWhyIGdhbnplcyBMZWlkCndpcmtsaWNoIGlyZ2VuZHdlbGNoZW4gU2lubiBtYWNodCwgaXN0IHRhdHNhZWNobGljaCBlaW5lIExlaXN0dW5nLgpOYWphLCBhYmVyIGRpZSBMZXNlciBzb2xjaGVyIEJ1ZWNoZXIgc2luZCBlcyB3b2hsIHNlbGJlciBzY2h1bGQuIE9kZXIgbWlyIGdpbmcKZXMgdGF0c2FlY2hsaWNoIG5vY2ggbmllIHNjaGxlY2h0IGdlbnVnLCB1bSB6dSB3aXNzZW4sIGRhc3MgbWFuIG1hbmNobWFsIGVpbmUKSWxsdXNpb24gYnJhdWNodC4gT2RlciBpY2ggYmluIGVpbmZhY2ggenUgc3RhcmsgZnVlciBkaWVzZSBXZWx0LiA7KSkKClpaTAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRnJvaGUgV2VpaG5hY2h0ZW4gKEFuYXRvbCwgMjMuIERleiAyMDAzLCAyMDozMzo0MSk6Cn4jISBybj1MaWFyYSBydD0xMDcyMjA2Mzk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjE3NTQ3NApEdSBoYXN0IGVzIG5pY2h0IGJlZ3JpZmZlbi4gCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZyb2hlIFdlaWhuYWNodGVuIChHcmltbWJvcm4sIDI0LiBEZXogMjAwMywgMDA6MTY6MTQpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNzIyMDgwMjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcyMTc1NDc0CkRlbSB3YWVyZSBuaWNodHMgaGluenV6dWZ1ZWdlbi4gQXVzc2VyIGRlbSBIaW53ZWlzIGF1ZiBkYXMgc2NobGVjaHRlCkdlZGFlY2h0bmlzLCBkZW5uIGltbWVyaGluIHN0ZWh0IGRpZXNlIEdlc2NoaWNodGUgbnVuIHNjaG9uIHNlaXQgZXRsaWNoZW4KSmFocmVuIGhpZXIgamVkZXMgSmFociB1bSBkaWVzZSBaZWl0IGRyaW4uCgpBY2ggamEsIGF1Y2ggd2VubiBkYXMgbmljaHQgaGllcmhpbiBnZWhvZXJ0OiBJY2ggZ2xhdWJlIG5pY2h0IGFuIGRlbiBTaW5uIGRlcwpMZWJlbnMsIGljaCBrZW5uZSBpaG4uIEFiZXIgaWNoIHZlcnJhdGUgaWhuIERpciBuaWNodCwgYWV0c2NoLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBGcm9oZSBXZWlobmFjaHRlbiAoQ3JvZnQsIDI0LiBEZXogMjAwMywgMDA6MzI6MTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNzIyMjEzNzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcyMTc1NDc0CkRlbiBTaW5uIG9kZXIgZGVpbmVuIFNpbm4/ICBPZGVyIGdpYnRzIGRhIGtlaW5lbiBVbnRlcnNjaGllZD8gLC0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRnJvaGUgV2VpaG5hY2h0ZW4gKEdyaW1tYm9ybiwgMjQuIERleiAyMDAzLCAxMDoyMTozMyk6Cn4jISBybj1Dcm9mdCBydD0xMDcyMjIyMzMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjE3NTQ3NApOZWluLCBnaWJ0IGVzIG5pY2h0LiBBbmRlcmUgTGV1dGUga29lbm5lbiBlaW5lbiBhYndlaWNoZW5kZW4gU2lubiBoYWJlbiwgYWJlcgpkYXMgaXN0IGRhbm4gbmljaHQgZGVyIFNpbm4uIFdvYmVpIGV0bGljaGUgTGV1dGUsIHd1ZXNzdGVuIHNpZSBkZW4gU2lubgoqaWhyZXMqIExlYmVucywgYXVjaCBuaWNodCBnbHVlY2tsaWNoIHdhZXJlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVpLi4uIChNZWRpYywgMjQuIERleiAyMDAzLCAxMTowODozNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA3MTkyMjc3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzE4NTk0MzEKQWgsIHNvcnJ5LgpJY2gga2FubnRlIGlobiB6dW1pbmRlc3Qgbm9jaCBuaWNodC4KTml4ZnVlcnVuZ3V0LApNZWRpYwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRnJvaGUgV2VpaG5hY2h0ZW4gKEJvaW5nLCAyNC4gRGV6IDIwMDMsIDEyOjUwOjMzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDcyMjIxMzc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjE3NTQ3NApVbmQgaWNoIGhhYiBtaWNoIHNjaG9uIGdlZnJhZ3QsIHdhbm4gZGllIHVlYmxpY2hlIERpc2t1c3Npb24gdWViZXIgZGllc2VuCkFydGlrZWwgbG9zZ2VodCAuLi4gaXN0IGplZGVzIEphaHIgd2llZGVyIHNjaG9lbi4gOikKSWNoIGZyZXUgbWljaCBzY2hvbiBhdWYgbmFlY2hzdGVzIEphaHIuIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEZyb2hlIFdlaWhuYWNodGVuIChDcm9mdCwgMjQuIERleiAyMDAzLCAxMzowNzo1Myk6Cn4jISBybj1Cb2luZyBydD0xMDcyMjY2NjMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjE3NTQ3NApKby4gIEVjaHQgc2Nob2VuIGRhcyBkYSBpbW1lciBlaW5pZ2UgZGFua2JhcmUgQXJ0aWtlbGxpZWZlcmFudGVuIGRyYXVmCmFuc3ByaW5nZW4gOi0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRnJvaGUgV2VpaG5hY2h0ZW4gKEFuYXRvbCwgMjQuIERleiAyMDAzLCAxMzozMDo1Myk6Cn4jISBybj1Dcm9mdCBydD0xMDcyMjY3NjczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjE3NTQ3NApJY2ggYmV6d2VpZmxlLCBkYXNzIExpYXJhIGRpZXNiZXp1ZWdsaWNoIHNvIGRhbmtiYXIgaXN0LiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEZyb2hlIFdlaWhuYWNodGVuIChDcm9mdCwgMjQuIERleiAyMDAzLCAxMzozMzo0MSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA3MjI2OTA1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzIxNzU0NzQKQWxsZXMgbnVyIG5lIEZyYWdlIGRlciBTaWNodHdlaXNlIDotKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVzIHdhciBlaW4gbWFsIGltIFdhbmdhZG9yZjogKERlZXBibHVlLCAyNC4gRGV6IDIwMDMsIDE2OjM1OjMwKToKRGVyIEhhZW5kbGVyIHNhZ3Q6IFVuc2VyZSBTY2h3ZXJ0ZXIga2FubiBpY2ggc2VociBlbXBmZWhsZW4uCj56ZWlnZQogIDEuIEVpbiBTZWVzY2huZWNrZSAgICAgICAgICAgICAgICAzIHwgICAyLiBFaW5lIFNjaGF1ZmVsICAgICAgICAgICAgICAgIDE1MAogIDMuIEVpbiBXYW5nYXBmZWlsICAgICAgICAgICAgICAgNDUwIHwgICA0LiBFaW5lIEVyZWlnbmlza2FydGUgICAgICAgICAgMTUwMAogIDUuIERhcyBGZWxsIGVpbmVzIFBvbGFyZnVjaHMgICAxMjQ4IHwgICA2LiBFaW4gQmV1dGVsIChnZW9lZmZuZXQpICAgICAgICA5MAogIDcuIEVpbiBBYmVuZGtsZWlkICAgICAgICAgICAgICAxOTk4IHwgICA4LiBFaW4gRWlzemFwZmVuICAgICAgICAgICAgICAgICA3NQogIDkuIEVpbiBQYWFyIHNjaHdlcmUgTGVkZXJzdGkgICAyNDAwIHwgIDEwLiBFaW5lIGdld29laG5saWNoZSBIb2x6a2V1ICAgMTgwMAogMTEuIEVpbmUgd29sbGVuZSBQdWRlbG11ZXR6ZSAgICAgMzAwIHwgIDEyLiBFaW4gd29sbGVuZXMgV2FtcyAgICAgICAgICAgMTUwMAogMTMuIEVpbmUgRmFja2VsICAgICAgICAgICAgICAgICAgIDE1IHwgIDE0LiBFaW5lIGxlZXJlIEdlbGRib2Vyc2UgICAgICAgIDI0MAoKU2Nod2VydGVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRnJvaGUgV2VpaG5hY2h0ZW4gKExpYXJhLCAyNS4gRGV6IDIwMDMsIDIyOjUyOjI3KToKfiMhIHJuPUFuYXRvbCBydD0xMDcyMjY5MDUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjE3NTQ3NApXYXIgc2VociBkYW5rYmFyICEgOj4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEZyb2hlIFdlaWhuYWNodGVuIChNdWFkaWIsIDI2LiBEZXogMjAwMywgMTQ6Mzk6MDcpOgp+IyEgcm49Qm9pbmcgcnQ9MTA3MjI2NjYzMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzIxNzU0NzQKZHUgYmlzdCBlaW4gZ2FueiBhbHRlciBzYWNrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZXMgd2FyIGVpbiBtYWwgaW0gV2FuZ2Fkb3JmOiAoSG9ibywgMjcuIERleiAyMDAzLCAyMjozODowMSk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDcyMjgwMTMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjI4MDEzMApLbGFyLCBkaWUgU2Nod2VydGVyIHNpbmQgaGFsdCBzbyBndXQuLi4gZGFzcyBzaWUgZ3JhZGUgYXVzdmVya2F1ZnQgc2luZCEKCiAgIEhvYm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldHRlcyBTcGllbHpldWcgKE1pcmlsLCAyOC4gRGV6IDIwMDMsIDIxOjI1OjMxKToKRHUgcmljaHRlc3QgZGllIEhhcnB1bmUgYXVzIHVuZCBkcnVlY2tzdCBkZW4gQWJ6dWcuClNpZSB6aXNjaHQgbG9zLCBmbGl0enQgcXVlciB1ZWJlciBkYXMgTW9yZ2VuZ3JhdWVuIHVuZCAuLi4KCi4uLiB0cmlmZnQgaWhyIFppZWwhCltUb2Q6TGFyc10gRWluZSBIYXJwdW5lIGhhdCBnZXJhZGUgTXVhZGliIGVybGVndC4KW1RvZDpNaXJpbF0gWWVhaCEgVm9sbHRyZWZmZXIhCkVpbiBNYXRyb3NlIGxhZWR0IGZsdWdzIGRpZSBIYXJwdW5lIG5hY2gsIGRhbWl0IER1IHdlaXRlcnNwaWVsZW4ga2FubnN0LgoKTWlyaWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXR0ZXMgU3BpZWx6ZXVnIChab29rLCAyOC4gRGV6IDIwMDMsIDIxOjI4OjQ0KToKfiMhIHJuPU1pcmlsIHJ0PTEwNzI2NDMxMzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcyNjQzMTMxCk5JY2h0IHNjaGxlY2h0LCBrYW5uIGljaCBtaXIgZGFzIERpbmcgYXVjaCBtYWwgbGVpaGVuLi4uPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV0dGVzIFNwaWVsemV1ZyAoTWlyaWwsIDI4LiBEZXogMjAwMywgMjE6MzA6MDApOgp+IyEgcm49Wm9vayBydD0xMDcyNjQzMzI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjY0MzEzMQpEYXMgaXN0IGxlaWRlciBudXIgZWluIFJhdW1kZXRhaWwuIEFiZXIgZnVlciBEaWNoIGFscyBHb3R0IHNvbGx0ZSBkYXMKZG9jaCBudXIgZWluIHVud2VzZW50bGljaGVzIEhpbmRlcm5pcyBkYXJzdGVsbGVuIDspCk1pcmlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXR0ZXMgU3BpZWx6ZXVnIChab29rLCAyOC4gRGV6IDIwMDMsIDIxOjMxOjMwKToKfiMhIHJuPU1pcmlsIHJ0PTEwNzI2NDM0MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcyNjQzMTMxCkZyYWcgbWFsIEFzdWthLi4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldHRlcyBTcGllbHpldWcgKE11YWRpYiwgMjguIERleiAyMDAzLCAyMjozNToyOCk6Cn4jISBybj1NaXJpbCBydD0xMDcyNjQzMTMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjY0MzEzMQp3YXJ1bSBoYWIgaWNoIGRhdm9uIG5peCBtaXRiZWtvbW1lbiBhbHMgZ2V0cm9mZmVuZXIgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmV0dGVzIFNwaWVsemV1ZyAoTXVhZGliLCAyOC4gRGV6IDIwMDMsIDIyOjM1OjQ2KToKfiMhIHJuPVpvb2sgcnQ9MTA3MjY0MzQ5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzI2NDMxMzEKYWNoIGRhcnVtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldHRlcyBTcGllbHpldWcgKE1vcmdvdGgsIDI4LiBEZXogMjAwMywgMjI6MzY6MDApOgp+IyEgcm49TXVhZGliIHJ0PTEwNzI2NDczMjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDcyNjQzMTMxCldlaWwgRHUgZWluIGJpc3NpIFRvdCBiaXN0IDopCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmV0dGVzIFNwaWVsemV1ZyAoTXVhZGliLCAyOC4gRGV6IDIwMDMsIDIyOjM2OjIwKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA3MjY0NzM2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzI2NDMxMzEKaWNoIGJpbiB0b3QgPz8/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW50ZXJlc3NhbnRlciBWaXJ1cyAgKE1pZXplLCAyOS4gRGV6IDIwMDMsIDEwOjEzOjE0KToKCmViZW4gcGFzc2llcnQ6CgpEZWluIEZyZXVuZCBab29rIHRlaWx0IERpciBtaXQ6IEFoLCBzY2hpY2tlIFZpcnVzLU1haWw6CkJyYW4gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCk1pZXplIC0gd3Vzc3RlIG5pY2h0LCBkYXNzIEJyYW4gZWluIFZpcnVzIGlzdCA7bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJbnRlcmVzc2FudGVyIFZpcnVzICAoVmFuaW9uLCAyOS4gRGV6IDIwMDMsIDEwOjEzOjUzKToKfiMhIHJuPU1pZXplIHJ0PTEwNzI2ODkxOTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcyNjg5MTk0CkdpYiBkZW0gYWx0ZW4gTWFubiBkb2NoIG1hbCBaZWl0LiBEZXIgc2NocmVpYnQgZG9jaCBub2NoIGFuIGRlcnp3ZWl0ZW4gWmVpbGUKLi4uCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFpvb2sgc3RlbGx0Li4uIChDcm9mdCwgMjkuIERleiAyMDAzLCAxMDozNTo0Nyk6Cn4jISBybj1ab29rIHJ0PTEwNzI2OTA1MjEgcmc9cHJhbmdlcgp+IyEgdGlkPTEwNzI2OTA1MjEKOmp1YmVsdCBab29rIHp1LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWm9vayBzdGVsbHQuLi4gKFpvb2ssIDI5LiBEZXogMjAwMywgMTA6MzY6MzEpOgp+IyEgcm49Q3JvZnQgcnQ9MTA3MjY5MDU0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzI2OTA1MjEKSWNoIG1vZWNodGUgd2VpdGVyaGluIGJldG9uZW46IEljaCBiaW4gbGllYiB1bmQgbmV0dC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFpvb2sgc3RlbGx0Li4uIChWYW5pb24sIDI5LiBEZXogMjAwMywgMTA6Mzc6MTUpOgp+IyEgcm49Q3JvZnQgcnQ9MTA3MjY5MDU0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzI2OTA1MjEKSG1tLCBlbmRsaWNoIHN0ZWggaWNoIG1hbCBuaWNodCBhbGxlaW4gaGllci4KClYqClZhbmlvbiBydWZ0OiBFeSwgRHUgZGEgaGludGVuISBTdGVjayBkaWUgVG9tYXRlIHdlZyEgSWNoIHdlaXNzIHdvIERlaW4KVmFuaW9uIHJ1ZnQ6IFNhdmVmaWxlIGxpZWd0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogWm9vayBzdGVsbHQuLi4gKENyb2Z0LCAyOS4gRGV6IDIwMDMsIDEwOjM5OjUyKToKfiMhIHJuPVZhbmlvbiBydD0xMDcyNjkwNjM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjY5MDUyMQpXZW5uIGljaCBzbyB1ZWJlcmxlZ2UsIHd1ZXNzdGUgaWNoIGRhcyBhdWNoLiAgTmljaHQgZGFzIGVzIGV0d2FzIGJyaW5nZW4Kd3VlcmRlLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndpZWRlciBlaW4gdGFnIHZvbGxlciBzcGFtLi4uIChMZWliaSwgMjkuIERleiAyMDAzLCAxNTowNDoxMik6CiBWb246IEFoZXJiZXJ0LmRldXRzY2hAd2luaGVsbGVyLmRlCgpTZWhyIGdlZWhydGUgRGFtZW4gdW5kIEhlcnJlbiwKCmRhcyBoZXJ1bnRlcmxhZGVuIHZvbiBGaWxtZW4sIFNvZnR3YXJlIHVuZCBNUDNzIGlzdCBpbGxlZ2FsIHVuZCBzb21pdApTdHJhZmJhci4KV2lyIG1vZWNodGVuIElobmVuIGhpZXJtaXQgdm9yYWIgbWl0dGVpbGVuLCBkYXNzIElociBSZWNobmVyIHVudGVyO2RlciBJUAoxNzIuMTc4LjgwLjE2MSBlcmZhc3N0IHd1cmRlLiBEZXIgSW5oYWx0IElocmVzIFJlY2huZXIgd3VyZGUgYWxzCkJld2Vpc21pdHRlbDtzaWNoZXJnZXN0ZWxsdCB1bmQgZXMgd2lyZCBlaW4gRXJtaXR0bHVuZ3N2ZXJmYWhyZW4gZ2VnZW4gU2llCmVpbmdsZWl0ZXQuCgpEaWUgU3RyYWZhbnplaWdlIHVuZCBkaWUgTW9lZ2xpY2hrZWl0IHp1ciBTdGVsbHVuZ25haG1lIHdpcmQgSWhuZW4gaW4gZGVuCm5hZWNoc3RlbjtUYWdlbiBzY2hyaWZ0bGljaCB6dWdlc3RlbGx0LjtEaWUgdm9uIHVucyBnZXNhbW1lbHRlbiBEYXRlbiB1bnRlcgpkZW0gQWt0ZW56ZWljaGVuICMyODAxMTtzaW5kIGZ1ZXIgU2llIHVuZCBnZ2YuIElocmVtIEFud2FsdCBiZWlnZWZ1ZWd0IHVuZAplaW5zZWhiYXIuCgpEYSB3aXIgbmVnYXRpdmUgRXJmYWhydW5nZW4gbWl0IE1haWxib21iZW4gaW4gZGVyIFZlcmdhbmdlbmhlaXQ7Z2VtYWNodCBoYWJlbiwKd3VyZGUgZGllIEhlcmt1bmZ0IGRpZXNlciBNYWlsIHZlcnNjaGxlaWVydC4KCk5hZWhlcmUgQXVza3VuZnQgZXJ0ZWlsdCBJaG5lbiBkaWUgS3JpbWluYWxwb2xpemVpIER1ZXNzZWxkb3JmLDtFdXJvcGEKU29uZGVya29tbWlzc2lvbiAiSW50ZXJuZXQgRG93bmxvYWRzIjtSdWZudW1tZXIgaW5uZXJoYWxiIERldXRzY2hsYW5kICgwMjExKQo4NzAgLSAwIG9kZXIgKDAyMTEpIDg3MCAtIDY4Njg7UnVmbnVtbWVyIGF1c3NlcmhhbGIgRGV1dHNjaGxhbmQgKDAwNDkyMTEpIDg3MAotIDAgb2RlciAoMDA0OTIxMSkgODcwIC0gNjg2OApIb2NoYWNodHVuZ3N2b2xsCmkuQS4gUEsgTW9sbGJhY2gKCgpsZWliaSBoYXQgZWNodCB2aWVsIHNwYXNzIGhldXRlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2llZGVyIGVpbiB0YWcgdm9sbGVyIHNwYW0uLi4gKENyb2Z0LCAyOS4gRGV6IDIwMDMsIDE1OjA1OjEyKToKfiMhIHJuPUxlaWJpIHJ0PTEwNzI3MDY2NTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcyNzA2NjUyCkRhcyBpc3Qga2VpbmUgU3BhbSwgZGFzIGlzdCBlaW4gV3VybSAoU29iZXIuYykKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHdpZWRlciBlaW4gdGFnIHZvbGxlciBzcGFtLi4uIChHcmltbWJvcm4sIDI5LiBEZXogMjAwMywgMTU6MDc6MDcpOgp+IyEgcm49Q3JvZnQgcnQ9MTA3MjcwNjcxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzI3MDY2NTIKVW5kIG5vY2ggZGF6dSB3aXJrbGljaCBuaWNodCBnZXJhZGUgbmV1LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2llZGVyIGVpbiB0YWcgdm9sbGVyIHNwYW0uLi4gKERlZXBibHVlLCAyOS4gRGV6IDIwMDMsIDE1OjE2OjU3KToKfiMhIHJuPUxlaWJpIHJ0PTEwNzI3MDY2NTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcyNzA2NjUyClVuZCwgaGFzdCBkZW4gQW5oYW5nIGFuIGRlciBNYWlsIHNjaG9uIGF1c2dlZnVlaHJ0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB3aWVkZXIgZWluIHRhZyB2b2xsZXIgc3BhbS4uLiAoTXVwZmVsLCAyOS4gRGV6IDIwMDMsIDE1OjMyOjQxKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwNzI3MDc0MTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcyNzA2NjUyClp1bWluZGVzdCBkZXIgVmVyc2VuZGVyIGhhdCBkYXMgZ2V0YW4uIEhtLi4uLiB3aW5oZWxsZXIuZGUgZGFzIHNhZ3QgbWlyIHdhcyA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHdpZWRlciBlaW4gdGFnIHZvbGxlciBzcGFtLi4uIChab29rLCAyOS4gRGV6IDIwMDMsIDE1OjU0OjI3KToKfiMhIHJuPU11cGZlbCBydD0xMDcyNzA4MzYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjcwNjY1MgpHbGF1YnN0IER1IG5pY2h0IGVybnN0aGFmdCBkcmFuLCBkYXNzIGRlbSBJbmhhYmVyIHZvbiB3aW5oZWxsZXIuZGUgc28gZWluCkxhcHN1cyBwYXNzaWVydCBpc3QsIG9kZXI/CgpJY2ggaGFiIGRpZSBNYWlsIGhldXRlIGF1Y2ggYmVrb21tZW4uIDspIEFic2VuZGVyIHVuYmVrYW5udC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWYgS29tbWFuZG8gKEFoYWIsIDI5LiBEZXogMjAwMywgMTg6MDI6MDYpOgpNaXJha2Egc2FndDogYWJ3YXJ0ZW4KCi4uLgoKTWlyYWthIHRpcHB0IG1pdCBkZW0gRnVzcyBhdWYgZGVuIEJvZGVuLgpFbGl6YSB3aXJkIHZvbiBHaWZ0IGhpbndlZ2dlcmFmZnQgdW5kIGtpcHB0IHVtLgoKCkFoYWIsIHdpbGwgZGFzIGF1Y2gga29lbm5lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHdpZWRlciBlaW4gdGFnIHZvbGxlciBzcGFtLi4uIChEZWVwYmx1ZSwgMjkuIERleiAyMDAzLCAxOToxNTozMSk6Cn4jISBybj1NdXBmZWwgcnQ9MTA3MjcwODM2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzI3MDY2NTIKRWhlciBqZW1hbmQsIGRlciBpcmdlbmR3YXMgbWl0IHdpbmhlbGxlci5kZSBpbiBzZWluZW0gQWRyZXNzYnVjaCBzdGVoZW4gaGF0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB3aWVkZXIgZWluIHRhZyB2b2xsZXIgc3BhbS4uLiAoQmFtYmksIDI5LiBEZXogMjAwMywgMTk6MTY6MTEpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTA3MjcyMTczMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzI3MDY2NTIKSG0uIFdlciBrb2VubnRlICJpcmdlbmR3YXNAd2luaGVsbGVyLmRlIiBpbiBzZWluZW0gYWRyZXNzYnVjaCBoYWJlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHdpZWRlciBlaW4gdGFnIHZvbGxlciBzcGFtLi4uIChab29rLCAyOS4gRGV6IDIwMDMsIDE5OjI1OjMxKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwNzI3MjE3MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcyNzA2NjUyCldlciB0dXQgZGVubiBzb3dhcz8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB3aWVkZXIgZWluIHRhZyB2b2xsZXIgc3BhbS4uLiAoTWFyY3VzLCAyOS4gRGV6IDIwMDMsIDE5OjM0OjQ5KToKfiMhIHJuPVpvb2sgcnQ9MTA3MjcyMjMzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzI3MDY2NTIKVm9yIGFsbGVtIHNjaGlja3QgZGllIEtyaXBvIGtlaW5lIE1haWxzLCBzb25kZXJuIGtvbW10IHBlcnNvZW5saWNoIHZvcmJlaS4KClRzLiBDaWFvLCBNYXJjdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHdpZWRlciBlaW4gdGFnIHZvbGxlciBzcGFtLi4uIChab29rLCAyOS4gRGV6IDIwMDMsIDE5OjM1OjUzKToKfiMhIHJuPU1hcmN1cyBydD0xMDcyNzIyODg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjcwNjY1MgpVbmQgc2Nob24gZ2FyIGtlaW5lIHZlcnNjaGxlaWVydGVuLiA6KSBVbmQgbXVlc3NlbiBkaWUgZWluZW4gdWViZXIgZGllIApFcm9lZmZudW5nIGVpbmVzIEVybWl0dGx1bmdzdmVyZmFocmVucyB1ZWJlcmhhdXB0IHZvbiBzaWNoIGF1cyBpbmZvcm1pZXJlbj8KClpvby4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IHdpZWRlciBlaW4gdGFnIHZvbGxlciBzcGFtLi4uIChNYWhhcmV0LCAyOS4gRGV6IDIwMDMsIDE5OjQxOjE5KToKfiMhIHJuPVpvb2sgcnQ9MTA3MjcyMjk1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzI3MDY2NTIKS2xhciwgZGFtaXQgbWFuIG5vY2ggcmVjaHR6ZWl0aWcgYWxsZSBTcHVyZW4gYmVzZWl0aWdlbiBrYW5uIDspCgpNYWhhLCBTcGlvbiB1bmQgR2lmdG1pc2NoZXIgYUQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IHdpZWRlciBlaW4gdGFnIHZvbGxlciBzcGFtLi4uIChab29rLCAyOS4gRGV6IDIwMDMsIDE5OjQyOjQ1KToKfiMhIHJuPU1haGFyZXQgcnQ9MTA3MjcyMzI3OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzI3MDY2NTIKQmVpIHN0YWF0c2Fud2FsdHNjaGFmdGxpY2hlbiBFcm1pdHRsdW5nc3ZlcmZhaHJlbiBrYW5uIGRhcyBqYSBub2NoIHNlaW4uLi4gCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTm9ubmUgaXN0IFNjaHVsZCAhIChNb3Jnb3RoLCAyOS4gRGV6IDIwMDMsIDIyOjI0OjE1KToKTm9ubmUgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCltUb2Q6TGFyc10gS3J1dW9scSBoYXQgZ2VyYWRlIExpbHJvbiB1bWdlYnJhY2h0LgpbVG9kOktydXVvbHFzIENoYW9zLVJpdHVhbCBicmFjaHRlIGRlbiBUb2RdCk5vbm5lICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB3aWVkZXIgZWluIHRhZyB2b2xsZXIgc3BhbS4uLiAoQW1hcnlsbGlzLCAzMC4gRGV6IDIwMDMsIDExOjMzOjExKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwNzI3MjE3MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcyNzA2NjUyCkJyb3dzZXJjYWNoZSB0dXRzIGF1Y2guCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgaXN0IGRlbm4gbnVuIGRlciBWaXJ1cy4uLiAoUm9uZGEsIDMwLiBEZXogMjAwMywgMTY6MzM6NDMpOgouLi4gZnJhZyBpY2ggbWljaD8gRGVyIEluaGFsdCBkZXIgTWFpbCBvZGVyIGRlciBTb2JlciwgZGVuIGRlciBWaXJlbnNjYW5uZXIKZW50ZmVybnQgaGF0PyA7LSkKClJvbmRhICpyYWV0IERSSU5HRU5EU1QgZGF6dSwgZWluZW4gYWt0dWVsbGVuIFZpcmVuc2Nhbm5lciBlaW56dXNldHplbi4uLioKCkRldXRzY2hsYW5kIFN1Y2h0IERlbiBTdXBlcnN0YXIgKERTRFMpIGF1ZiBSVEwuCgpIYWxsbywgRHUgd3VyZGVzdCB6dWZhZWxsaWcgdm9uIGNhLiA4NS4wMDAgRS1NYWlsIEFkcmVzc2VuCmF1c2dld2FlaGx0LCB1bSBiZWkgUlRMIERTRFMgaW4gZGVyIFp1c2NoYXVlciBKdXJ5IG1pdCB6dSBWb3Rlbi4KRGFzIGdhbnplIGhhdCBhdWNoIG5vY2ggZWluIFNVUEVSIFZvcnRlaWwsIER1IGJla29tbXN0IHp1c2FldHpsaWNoIG5vY2gKZWluZW4gVi5JLlAgQXVzd2VpcywgbWl0IGRlbSBkdSBoaW50ZXIgZGVuIEt1bGlzc2VuIGJlaSBkZW4KU3RhcnMgbWl0IGRhYmVpIHNlaW4gZGFyZnN0LgoKRXMgd2VyZGVuIGluc2dlc2FtdCAxMDAgUGVyc29uZW4gZnVlciBkaWUgWnVzY2hhdWVyIEp1cnkgZ2VzdWNodAp1bmQgMjAwIFBlcnNvbmVuIGhhYmVuIHdpciBwZXIgTWFpbCBhbmdlc2NocmllYmVuLgpBbHNvLCBEZWluZSBDaGFuY2VuIHN0ZWhlbiB6aWVtbGljaCBndXQgbWl0IGRhYmVpIHp1IHNlaW4uCgpEdSBtdXNzdCBtaW5kZXN0ZW5zIDEyIEphaHJlIGFsdCBzZWluLCB1bSBtaXRtYWNoZW4genUgZHVlcmZlbi4KRWluZmFjaCBkYXMgQW5tZWxkZm9ybXVsYXIgYXVzZnVlbGxlbiB1bmQgYXVmIEFudHdvcnQgd2FydGVuLgoKVmllbCBHbHVlY2shCgoKKysgUlRMIEdlc2NoYWVmdHNmdWVocnVuZzogRHIuIENvbnN0YW50aW4gTGFuZ2UKKysgRGlyZWN0b3IgQ29udGVudCAvIENoZWZyZWRha3RldXIgTmV1ZSBNZWRpZW46IFBhdHJpY2sgWmVpbGhvZmVyCisrIEFtIENvbG9uZXVtIDEsIDUwODI5IEtvZWxuCisrIEZvbjogKzQ5ICgwKSAxODAgNSA0NCA2NiA5OSwgRmF4OiArNDkgKDApIDE4MCA1IDQ0IDc3IDc3ICgwLDEyIEVVUk8gLwpNaW51dGUpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWm9vayBzdGVsbHQuLi4gKEFuYXRvbCwgMzAuIERleiAyMDAzLCAyMzo1OTo0NCk6Cn4jISBybj1ab29rIHJ0PTEwNzI2OTA1MjEgcmc9cHJhbmdlcgp+IyEgdGlkPTEwNzI2OTA1MjEKSGF0IG1hbCBqZW1hbmQgZWluZW4gQmVsaWNodHVuZ3NtZXNzZXI/CgpBbmF0b2wgbXVybWVsdCBldHdhcyB2b24gJ0JvY2snIHVuZCAnR2FlcnRuZXInIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBab29rIHN0ZWxsdC4uLiAoTXVwZmVsLCAzMS4gRGV6IDIwMDMsIDAwOjExOjUzKToKfiMhIHJuPUFuYXRvbCBydD0xMDcyODI1MTg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjY5MDUyMQpKbyBoYWIgaWNoLiBOZW4gZWNodGVuIGRlciBvaG5lIEJhdHRlcmllIGZ1bnp0CgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFsbGVzIEd1dGUgaW0gbmV1ZW4gSmFociAyMDA0IChHcmltbWJvcm4sIDMxLiBEZXogMjAwMywgMTg6MTc6MzEpOgp+IyEgcm49TXVhZGliIHJ0PTEwNzI4OTA2MDQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDcyODkwNjA0CkdyYXR1bGllcmUgenVyIHNoaWZ0LVRhc3RlLiBIYXN0IER1IGRpZSB6dSBXZWlobmFjaHRlbiBiZWtvbW1lbj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbmVuIGd1dGVuIFJ1dHNjaCBpbnMgSmFoci4uLiAoUm9uZGEsICAxLiBKYW4gMjAwNCwgMTM6Mzk6NTYpOgp+IyEgcm49TW9yZ290aCBydD0xMDcyODkyMzc4IHJnPXd3dwp+IyEgdGlkPTEwNzI4OTIzNzgKKnNjaG11bnplbCogYmVpIE1vcmdvdGhzIEFydGlrZWxuIHVlYmVybGVnZSBpY2ggaW1tZXIsIG9iIG1hbiBkaWUgU2VxdWVueiBiZWltCkVyc3RlbGxlbiBlaW5lcyBDaGFyYWt0ZXJzIGFlbmRlcm4gbXVzczoKCktvbW1zdCBEdSBhdXMgUGFkZXJib3JuL011ZW5zdGVyL09zbmFicnVlY2s/Ci0gSmEKCkJpc3QgRHUgdW50ZXIgMTg/Ci0gSmEKCi4uLgoKIkRlaW4gQ2hhcmFrdGVyIHd1cmRlIGVyc2NoYWZmZW4uIEF1cyBwYWVkYWdvZ2lzY2hlbi9yZWxpZ2lvZXNlbiBHcnVlbmRlbiBzaW5kCkFydGlrZWwgdm9uIE1vcmdvdGggZnVlciBEaWNoIGdlc3BlcnJ0LiBWaWVsIFNwYXNzIGltIE1vcmdlbmdyYXVlbi4iCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3dhcy4uLiAoTHVnLCAgMS4gSmFuIDIwMDQsIDE0OjUyOjIzKToKCkRlaW5lIEZyZXVuZGluIFJvbmRhIHRlaWx0IERpciBtaXQ6IEJpbiBkYW5uIG1hbCB3aWVkZXIgd2VnLi4uCkRhcmt3aW5nIGV4cGxvZGllcnQuCkdhc3QxIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbmVuIGd1dGVuIFJ1dHNjaCBpbnMgSmFoci4uLiAoTW9yZ290aCwgIDEuIEphbiAyMDA0LCAyMDo1Mjo0Nik6Cn4jISBybj1Sb25kYSBydD0xMDcyOTYwNzk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3Mjg5MjM3OApOZXR0ZSBJZGVlLiBVbmQgZGFiZWkgaGFiIGljaCBkZW4gTGluayBzb2dhciB2b24gbmVyIEZyYXUgYmVrb21tZW4gOikKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbWFuZGEuLi4gKFRvZSwgIDIuIEphbiAyMDA0LCAxNjowNDoyNSk6Ckdhc3QxIHRyaXR0IEFtYW5kYS4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KR2FzdDEgdmVybGFlc3N0IGRpZXNlIFdlbHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBJcmdlbmR3aWUgKEdyaW1tYm9ybiwgIDQuIEphbiAyMDA0LCAxMjozMDo1OSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTA3MzIxNTg1MyBvZz1hbGxnZW1laW5lcwp+IyEgcm49TWFoYXJldCBydD0xMDczMTU2MDA3IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTA3MzE1NDA3NQpVbmQgdWViZXJoYXVwdCwgdmVybXV0bGljaCBpc3QgZGFzIG5pY2h0bWFsIGVjaHQsIHNvbmRlcm4gbnVyIGR5bmFzdGlzY2gKdWViZXJsaWVmZXJ0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBY2ggZWNodD8gKEx1ZywgIDQuIEphbiAyMDA0LCAxNzoxMjo1MCk6CkplbWFuZCBiZXNjaHdvZXJ0IERlaW4gQmlsZCBoZXJhdWYuCkR1IGZ1ZWhsc3QgRGljaCBiZW9iYWNodGV0LgpMdWdpZmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWNoIGVjaHQ/IChWYW5pb24sICA0LiBKYW4gMjAwNCwgMTc6MTk6NTQpOgp+IyEgcm49THVnIHJ0PTEwNzMyMzI3NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDczMjMyNzcwCkRhIGZyYWd0IG1hbiBzaWNoLCB3ZXIgc28gcGVydmVycyBpc3QsIGRhc3MgZXMgaWhtIG5pY2h0IHJlaWNodCwgRGljaCB6dQpsZXNlbiwgdW5kIERpY2ggYXVjaCBub2NoIHNlaGVuIHdpbGwuIAoKVioKUFM6IFJlaGUgYXVzc2VyaGFsYiB2b24gTWVnYXNjaG1hcnJuIHNpbmQgdmVyc2NoZW5rdGUgUmVoZSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWNoIGVjaHQ/IChMdWcsICA0LiBKYW4gMjAwNCwgMTg6MjI6NDQpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNzMyMzMxOTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDczMjMyNzcwCktlaW5lci4KCkx1Z2lmZXIKCgpQLlMuOiBXb3J1bSBnZWh0cyB1ZWJlcmhhdXB0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQWNoIGVjaHQ/IChWYW5pb24sICA0LiBKYW4gMjAwNCwgMTk6MDY6NDMpOgp+IyEgcm49THVnIHJ0PTEwNzMyMzY5NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDczMjMyNzcwClNlaXQgd2FubiBpcyBkYXMgd2ljaHRpZz8KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBY2ggZWNodD8gKEx1ZywgIDQuIEphbiAyMDA0LCAxOTo0NToxMSk6Cn4jISBybj1WYW5pb24gcnQ9MTA3MzIzOTYwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzMyMzI3NzAKTmF0dWVybGljaCBuaWUhCgpMdWdpZmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogU29tZXJwYXJ0eSAuLi4gKENhdHdlYXpsZSwgIDYuIEphbiAyMDA0LCAxNToxNToyNyk6Cn4jISBvbj1Dcm9mdCBvdD0xMDczMzk3MDg3IG9nPXBhcnR5Cn4jISBybj1EYXJrbG9yIHJ0PTEwNzMzOTY5NDYgcmc9cGFydHkKfiMhIHRpZD0xMDcxNjYwMzcxCkFscyBVbnRlcnNldHplciBiZXN0aW1tdC4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogU29tZXJwYXJ0eSAuLi4gKENhdHdlYXpsZSwgIDYuIEphbiAyMDA0LCAxNToxNTozMyk6Cn4jISBvbj1EYXJrbG9yIG90PTEwNzMzOTcyMDEgb2c9cGFydHkKfiMhIHJuPUNyb2Z0IHJ0PTEwNzMzOTcwODcgcmc9cGFydHkKfiMhIHRpZD0xMDcxNjYwMzcxCldpZXNvIGFscyBVbnRlcnNldHplcj8gLSBEYWZ1ZXIgZ2lidHMgZG9jaCBkaWUgZ2FuemVuIFdlcmJlLUNkJ3Mgdm9uIEFvbCAmIGNvCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS3JhbmZyZWljaCA7bykgKFpvb2ssICA2LiBKYW4gMjAwNCwgMTY6MzY6NTApOgp+IyEgcm49R2l0YXJyZSBydD0xMDczNDAzMDM0IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTA3MzQwMzAzNApbTWVnYXNjaG1hcnJuOkdyaW1tYm9ybiBkZXIgQXRoZWlzdCBlbnRoYWVsdCBzaWNoIGVpbmVzIG9lZmZlbnRsaWNoZW4KICAgICAgICAgICAgICBLb21tZW50YXJzIHVlYmVyICJGcmFuem9lc2lzY2hrZW5udG5pc3NlIGF1ZmJlc3Nlcm4iLi4uXQoKWm9vayBzY2hsaWVzc3Qgc2ljaCBkZW0gYW4gdW5kIGJlaXNzdCBzaWNoIGF1ZiBkaWUgWnVuZ2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMzogU29tZXJwYXJ0eSAuLi4gKE11YWRpYiwgIDYuIEphbiAyMDA0LCAyMzoyNDowMik6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA3MzQyNzU4OCByZz1wYXJ0eQp+IyEgdGlkPTEwNzE2NjAzNzEKc21hc2ggbXkgaGVhZCBzb2Z0bHkgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOTogU29tZXJwYXJ0eSAuLi4gKFpvb2ssICA3LiBKYW4gMjAwNCwgMTA6NTM6NDMpOgp+IyEgcm49TXVhZGliIHJ0PTEwNzM0NjkxOTUgcmc9cGFydHkKfiMhIHRpZD0xMDcxNjYwMzcxCkdpYnRzIGRlbm4gZGFubiB3bmVpZ3N0ZW5zIGF1Y2ggRmxhbW1rdWNoZW4/IDspCgpab29rIGR1Y2t0IHNpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MDogU29tZXJwYXJ0eSAuLi4gKE11YWRpYiwgIDcuIEphbiAyMDA0LCAxMDo1NDowNCk6Cn4jISBybj1ab29rIHJ0PTEwNzM0NjkyMjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcxNjYwMzcxCndlbm4gZHUgaWhuIG1hY2hzdCA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFucGFzc3VuZyBkZXIgRmx1Y2h0cmljaHR1bmcgKE5vbm5lLCAgNy4gSmFuIDIwMDQsIDEyOjU3OjIwKToKfiMhIHJuPUFuZ3JpbSBydD0xMDczNDc2MzE2IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA3MzQ3NDA1MApJY2ggaGFiZSBub2NoIGlyZ2VuZHdvIGVpbiBNRyB2b24gMTk5OCwgZGEgaXN0IGFsbGVzIG5vY2ggdmllbCBiZXNzZXIuIFNvbGwKaWNoIERpciBkYXMgbWFsIHNjaGlja2VuLCBkYW5uIGthbm5zdGUgaW4gRGVpbmVtIEhvbWVtdWQgc3BpZWxlbiB1bmQgZXMKYWVuZGVydCBzaWNoIG1pdCBTaWNoZXJoZWl0IG5pY2h0cyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFucGFzc3VuZyBkZXIgRmx1Y2h0cmljaHR1bmcgKEFuZ3JpbSwgIDcuIEphbiAyMDA0LCAxMzowNDoxNCk6Cn4jISBybj1Ob25uZSBydD0xMDczNDc2NjQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MzQ3NDA1MApEYW5uIG1hY2h0IGRpZSBTZWhlcmFuZm9yZGVydW5nZW4gZG9jaCBhbSBiZXN0ZW4gZ2xlaWNoIHJlbGF0aXYsIGRhbm4gaGFiZW4Kd2lyIGJhbGQgTWVsZHVuZ2VuIHdpZToKClZlcmdsaWNoZW4gbWl0IERlaW5lbiBNaXRzcGllbGVybiwgaXN0IERlaW5lIEZQLUxpc3RlIG5vY2ggYWV1c3NlcnN0IG1pY2tyaWcuCkFic29sdXQgZ2VzZWhlbiBicmF1Y2hzdCBEdSBub2NoIGVpbmlnZSBLTHMgbWVociB1bSB3aWVkZXIgU2VoZXIgenUgd2VyZGVuLgoKRXMgbGViZSBkZXIgRm9ydHNjaHJpdHQhCgpBbmdyaW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFucGFzc3VuZyBkZXIgRmx1Y2h0cmljaHR1bmcgKFdpbGxvdywgIDcuIEphbiAyMDA0LCAxMzowNjoxMSk6Cn4jISBybj1BbmdyaW0gcnQ9MTA3MzQ3NzA1NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzM0NzQwNTAKaGV1bCBkb2NoPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQW5wYXNzdW5nIGRlciBGbHVjaHRyaWNodHVuZyAoTm9ubmUsICA3LiBKYW4gMjAwNCwgMTM6MTU6NTIpOgp+IyEgcm49QW5ncmltIHJ0PTEwNzM0NzcwNTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDczNDc0MDUwCk5lLCBkYXMgaXN0IHdhcyBmdWVyIFdlaWNoZWllci4gV2lyIG1hY2hlbiBkZW4gU2VoZXJzdGF0dXMgZHluYW1pc2NoISBJbW1lcgpudXIgZGllIGpld2VpbHMgMTAgbWl0IGRlbiBtZWlzdGVuIEtpbGxzdHVwc2VuLCBkZW4gbWVpc3RlbiBGUCB1bmQgZGVuIG1laXN0ZW4KUXVlc3RwdW5rdGVuIHNpbmQgU2VoZXIsIGFsbGUgYW5kZXJlbiB3ZXJkZW4gd2llZGVyIGF1ZiBTcGllbGVyIGdlc3R1ZnQhCgpOb25uZSwgZnJldXQgc2ljaCBzY2hvbiBhdWYgZGFzIFJ1ZmVuIGJlaW0gZ3JhdHNlbiBhbGxlIHBhYXIgTWludXRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFucGFzc3VuZyBkZXIgRmx1Y2h0cmljaHR1bmcgKFpvb2ssICA3LiBKYW4gMjAwNCwgMTM6MjA6MzkpOgp+IyEgcm49Tm9ubmUgcnQ9MTA3MzQ3Nzc1MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzM0NzQwNTAKTmljaHQgcnVmZW4sIGRhZnVlciBnaWJ0IGVzIG5lbiBLYW5hbCwgLUdyYXRzIGhlaXNzdCBkZXIuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQW5wYXNzdW5nIGRlciBGbHVjaHRyaWNodHVuZyAoQmFtYnVsa28sICA3LiBKYW4gMjAwNCwgMTU6MzM6MjIpOgp+IyEgcm49Wm9vayBydD0xMDczNDc4MDM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MzQ3NDA1MApVbmQgYXVmIC1CZWlsZWlkLCBmdWVyIGRpZSwgZGllIGRlbiBTZWhlcnN0YXR1cyB2ZXJsaWVyZW4uCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBZW5kZXJ1bmcgU2VoZXJhbmZvcmRlcnVuZyAoa29zbWV0aXNjaCkgKEFsa29ob2wsICA3LiBKYW4gMjAwNCwgMTY6NDY6NDcpOgp+IyEgcm49T2dvIHJ0PTEwNzM0OTAzMTcgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNzM0NzM5MjAKZnJhZyBtYWwgSW1kYSwgZGVyIGhhdCBkYXJhbiBnZWtuYWJiZXJ0IDspCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBFaW5lIE1pZXplIGluIEJlcmxpbiAoTXVwZmVsLCAgNy4gSmFuIDIwMDQsIDE4OjEzOjMxKToKfiMhIHJuPU1haGFyZXQgcnQ9MTA3MzM5OTgzNyByZz10cmVmZmVuCn4jISB0aWQ9MTA3MzMyMzQyMgpXZXIgd2lsbCBkYXMgbmljaHQ/IDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQW5wYXNzdW5nIGRlciBGbHVjaHRyaWNodHVuZyAoVmFuaW9uLCAgNy4gSmFuIDIwMDQsIDE5OjE0OjAxKToKfiMhIHJuPVRodWZoaXIgcnQ9MTA3MzQ5OTE0NiByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNzM0NzQwNTAKRmFsbHMgZXMgaXJnZW5kamVtYW5kZW4gaGllciB0cm9lc3RldDogSWNoIHR1IGFsbGVzIHVtIG1vZWdsaWNoc3QgdmllbGVuClNwaWVsZXJuIGRpZSBaZWl0IGltIE1HIHp1ciBIb2VsbGUgenUgbWFjaGVuLiBNYWcgc2VpbiwgZGFzcyBpY2ggbmljaCBndXQKZGFyaW4gYmluLiBLZWluZSBBaG51bmcuIEFiZXIgZGFzcyBpY2ggbWljaCBuaWNoIGJlbXVlaGUsIGthbm4ga2VpbmVyCmJlaGF1cHRlbiEgU28hCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQWVuZGVydW5nIFNlaGVyYW5mb3JkZXJ1bmcgKGtvc21ldGlzY2gpIChMaWFyYSwgIDcuIEphbiAyMDA0LCAyMDoyNjoxMCk6Cn4jISBybj1Cb2luZyBydD0xMDczNTAyMjc5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDczNDczOTIwCk1hbiBsYXNzZSBzaWNoIGRhcyBhdWYgZGVyIFp1bmdlIHplcmdlaGVuOgoKRXIgaGF0IGRlbiBaZXR0ZWwgR0VTVEVSTiBaVUZBRUxMSUcgZ2VmdW5kZW4gLi4uIGxhZyBzZWl0IDMgSkFIUkVOIGluCklSR0VOREVJTkVNIEthcnRvbiAuLi4gOz4KCgpEYXMgaXN0IGRlciBIYXVjaCBkZXIgR29ldHRsaWNoa2VpdCwgZGVyIGltbWVyIG5vY2ggYW4gaWhtIGtsZWJ0LiA7Pj4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFlbmRlcnVuZyBTZWhlcmFuZm9yZGVydW5nIChrb3NtZXRpc2NoKSAoRm9vYmFyLCAgNy4gSmFuIDIwMDQsIDIwOjI3OjI2KToKfiMhIHJuPUxpYXJhIHJ0PTEwNzM1MDM1NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDczNDczOTIwClNpbmQgZGllIFN1cGVyLVNlaGVyLUFuZm9yZGVydW5nZW4gZWlnZW50bGljaCBhdWNoIGdlc3RpZWdlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFucGFzc3VuZyBkZXIgRmx1Y2h0cmljaHR1bmcgKE11YWRpYiwgIDcuIEphbiAyMDA0LCAyMTo0NjowNyk6Cn4jISBybj1WYW5pb24gcnQ9MTA3MzQ5OTI0MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzM0NzQwNTAKcGFzc3Qgc2NobwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQW5wYXNzdW5nIGRlciBGbHVjaHRyaWNodHVuZyAoQ3JvZnQsICA4LiBKYW4gMjAwNCwgMDA6MzE6MzIpOgp+IyEgcm49QW5hdG9sIHJ0PTEwNzM1MTgwNDQgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD0xMDczNDc0MDUwClp1IFBQUzogSXN0IGRvY2ggaGV1dCBzY2hvbiBSZWFsaXRhZXQuICBNdXNzdCBkdSBub2NoIG5pY2h0IG1hbCBpbiBGcmFnZQogICAgICAgIHN0ZWxsZW4uClp1IFBQUFM6IE9jaC4gQml0dGUsIGJpdHRlIDo+CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHUga29tbXN0IGhpZXIgbmljaHQgcmVpbiAoTWVkaWMsICA4LiBKYW4gMjAwNCwgMTA6MDg6MzYpOgplaW4gV2FuZGxlciB3aXJkIHZvbiBkZXIgZnJldW5kbGljaGVuIEVtcGZhbmdzZGFtZSBkYXZvbiBhYmdlaGFsdGVuLCBkaWUKVi5JLlAuLUxvdW5nZSB6dSBiZXRyZXRlbiwgZGEgZXIgbmljaHQgTWl0Z2xpZWQgZGVzIENsdWJzIGlzdC4KCjotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDg6IFNvbWVycGFydHkgLi4uIChHcmltbWJvcm4sICA4LiBKYW4gMjAwNCwgMTI6NDY6NDgpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwNzM1NjIzOTIgb2c9cGFydHkKfiMhIHJuPUNyb2Z0IHJ0PTEwNzM1NjIyNDYgcmc9cGFydHkKfiMhIHRpZD0xMDcxNjYwMzcxCkhtbSwgaWNoIGZpbmRlIGRpZXNlIGdlb2dyYXBoaXNjaGUgRmlsdGVydW5nIHNjaG9uIHppZW1saWNoIHVuZ2VyZWNodCwgbGFzc3QKdW5zIGRvY2ggZWluZSBQYXJ0eSBudXIgZnVlciBkaWUgQmVzc2VydmVyZGllbmVuZGVuIG1hY2hlbi4gSWNoIG9yZ2FuaXNpZXJlCmdlcm5lIGRpZSBIdWV0dGUgaW4gTm9yZHNrYW5kaW5hdmllbiwgZGFzIGlzdCBmdWVyIE5vcmQtLCBXZXN0LSwgU3VlZC0gdW5kCk9zdGRldXRzY2hlIHZlcm11dGxpY2ggdmVyZ2xlaWNoYmFyIHRldWVyLCB1bmQgc29sbHRlIGRhcyBhZXJtbGljaGUsCmFiZ2V3cmFja3RlIFN0dWRlbnRlbnBhY2sgaGFsYndlZ3MgYXVzZmlsdGVybiBrb2VubmVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OTogU29tZXJwYXJ0eSAuLi4gKENyb2Z0LCAgOC4gSmFuIDIwMDQsIDEyOjQ3OjU4KToKfiMhIG9uPUNyb2Z0IG90PTEwNzM1NjI0MjIgb2c9cGFydHkKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDczNTYyMzkyIHJnPXBhcnR5Cn4jISB0aWQ9MTA3MTY2MDM3MQpLbGluZ3QgaGVydm9ycmFnZW5kLiAgV2Fubj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41MDogU29tZXJwYXJ0eSAuLi4gKEdyaW1tYm9ybiwgIDguIEphbiAyMDA0LCAxMjo1MDoyMSk6Cn4jISBybj1Dcm9mdCBydD0xMDczNTYyNDc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTY2MDM3MQpXZW5uIHdpciBuYWNoIExhcHBsYW5kIGdlaGVuOiB6d2VpdGUgQXVndXN0aGFlbGZ0ZSwgZGEgc2luZCBkaWUgTXVlY2tlbiBkYW5uCnNjaG9uIHRvdC4gTW9lZ2xpY2ggaXN0IGJpcyBldHdhIE1pdHRlIFNlcHRlbWJlciwgd2FzIGRlbiBWb3J0ZWlsIGhhZXR0ZSBkYXNzCm1hbiBlaW4gYmlzY2hlbiBIZXJic3QgbWl0YmVrb21tdC4gRGllIEZhcmJlbiBkb3J0IHNpbmQgc2VociBiZWVpbmRydWNrZW5kLiAKVW5kIGFiZW5kcyBrb2VubnRlIG1hbiBkYW5uIGVpbiBSZW4gZmFuZ2VuIHVuZCBncmlsbGVuLiBJcmdlbmR3aWUga2xpbmd0IGRpZQpJZGVlIHdpcmtsaWNoIG5pY2h0IHNjaGxlY2h0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41MTogU29tZXJwYXJ0eSAuLi4gKENyb2Z0LCAgOC4gSmFuIDIwMDQsIDEyOjUxOjMxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDczNTYyNjIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTY2MDM3MQpGaW5kIGljaCBhdWNoLiAgVW5kIGljaCB3dW5kZXIgbWljaCBncmFkIHdpZXNvIGRhcyBudW4gaW4gU2NobWFycm4gc3RlaHQuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTE6IFNvbWVycGFydHkgLi4uIChab29rLCAgOC4gSmFuIDIwMDQsIDEyOjUxOjM1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDczNTYyNjIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTY2MDM3MQpPYiBtYW4gZGEgYXVjaCBIb3JudXNzZW4ga29lbm50ZS4uLi4/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTI6IFNvbWVycGFydHkgLi4uIChHcmltbWJvcm4sICA4LiBKYW4gMjAwNCwgMTI6NTI6NTMpOgp+IyEgcm49Wm9vayBydD0xMDczNTYyNjk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTY2MDM3MQpQbGF0eiBnZW51ZyB6dW0gaG9ybnVzc2VuIGlzdCBkYSBnYW56IHNpY2hlciwgbWFuIG11ZXNzdGUgc2ljaCBkaWUgR2VyYWV0ZQpoYWx0IG1pdGJyaW5nZW4uIEthbm4gYWJlciBzbyB1bXN0YWVuZGxpY2ggbmljaHQgc2Vpbi4gClVuZCBkYXMgc3RlaHQgaW4gc2NobWFycm4sIHdlaWwgcGFydHkgc28gdm9sbCBpc3QgZGFzcyBkYXMgZWgga2VpbmVyIG1laHIKbWl0YmVrb21tdC4gSGllciBpc3QgdmllbCBnZW11ZXRsaWNoZXIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUzOiBTb21lcnBhcnR5IC4uLiAoQ3JvZnQsICA4LiBKYW4gMjAwNCwgMTI6NTU6NDEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNzM1NjI3NzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcxNjYwMzcxCk5hamEuICBNYW4ga29lbm50ZSBkYXMgZG9jaCBhdWNoIGluIE1lZ2FzY2htYXJybiB3ZWl0ZXJmdWVocmVuLiAgVW5kIG5lCk1lZ2FzY2htYXJybi1QYXJ0eSBkcmF1cyBtYWNoZW4uICBFbGl0ZSB1bmQgc28uICBXaXNzZW4gc2Nob24uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTE6IFNvbWVycGFydHkgLi4uIChDYXR3ZWF6bGUsICA4LiBKYW4gMjAwNCwgMTM6MzY6MjQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNzM1NjI2MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcxNjYwMzcxClNvIGxlaWQgZXMgbWlyIHR1dCwgYWJlciBiZWkgZGVyIEF1c3NpY2h0IExhcHBsYW5kLCBtdWVzc3RlIGljaCBudW4gZG9jaCBhdWYKZGFzIFRoZW1hIEhhd2FpaSB6dXJ1ZWNrZ3JlaWZlbi4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTI6IFNvbWVycGFydHkgLi4uIChHcmltbWJvcm4sICA4LiBKYW4gMjAwNCwgMTM6NTA6MjIpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNzM1NjUzODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcxNjYwMzcxCktlaW5lIEVpbndhZW5kZSwgYWJlciBkYXMgb3JnYW5pc2llcnN0IGRhbm4gRHUsIGRhIGtlbm5lIGljaCBtaWNoIG5pY2h0IHNvCmF1cy4gTGFwcGxhbmQgaGFldHRlIGljaCBvcmdhbmlzaWVyZW4ga29lbm5lbiwgYXVjaCBlaW5lIEh1ZXR0ZSBpbiAoYXVmPykKSXJsYW5kIHdhZXJlIHdvaGwgaW0gQmVyZWljaCBtZWluZXIgTW9lZ2xpY2hrZWl0ZW4gZ2V3ZXNlbi4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUzOiBTb21lcnBhcnR5IC4uLiAoQ2F0d2VhemxlLCAgOC4gSmFuIDIwMDQsIDE0OjA2OjAyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDczNTY2MjIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MTY2MDM3MQpQYWgsIGVzIGdpbmcgdW0gQm9uemVubXVkZGVyLCBvZGVyPwpJcmdlbmRlaW4gSG90ZWwgbWl0IGFuZ2VtZXNzZW4gZ3Jvc3NlciBMb2JieSB3aXJkIHNpY2ggc2Nob24gYXVzIGRlciBGZXJuZQpmaW5kZW4gbGFzc2VuLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41NDogU29tZXJwYXJ0eSAuLi4gKEdyaW1tYm9ybiwgIDguIEphbiAyMDA0LCAxNDoyMToxNCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA3MzU2NzE2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzE2NjAzNzEKV2llIGdlc2FndDogTWFjaCBEaWNoIGt1bmRpZywgZXJ1aWVyZSBPcnQsIFRlcm1pbiB1bmQgUHJlaXMsIGRhbm4gZ2lic3QgRHUgZGllCktvbnRvbnVtbWVyIGJla2FubnQgdW5kIGRhcyB3ZWl0ZXJlIHdpcmQgc2ljaCBmaW5kZW4uIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZW5uIEdvZXR0ZXIgd3VldGVuZCB3ZXJkZW4gOikgKE1lZGljLCAgOC4gSmFuIDIwMDQsIDE0OjIyOjE2KToKQnJld2VyIHJ1ZnQgaW4gZGllIEFyZW5hIDoKaGF1IGRlbiBkb29mZW4gbWFnaWVyIHVtCjpCcmV3ZXIgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KOltUb2Q6TGFyc10gWm9vayBoYXQgZ2VyYWRlIEJyZXdlciB1bWdlYnJhY2h0Lgo6W1RvZDpab29rXSBIYWV1ZmlnZXMgU3RlcmJlbiBmb2VyZGVydCBkaWUgbmF0dWVybGljaGUgUmVzaXN0ZW56IGdlZ2VuCjpbVG9kOlpvb2tdIFRvZGVzc2VxdWVuemVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogQW5wYXNzdW5nIGRlciBGbHVjaHRyaWNodHVuZyAoQ3JvZnQsICA4LiBKYW4gMjAwNCwgMTg6MTc6MDIpOgp+IyEgcm49QXJrIHJ0PTEwNzM1ODIxNTAgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMDczNDc0MDUwCkR1IG1laW5zdCBzb3dhcyB3aWUgYWx0ZXIgVmFtcGlycGFuemVyIGJlaW0gV2VnaGllcj8gOj4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogQW5wYXNzdW5nIGRlciBGbHVjaHRyaWNodHVuZyAoQWxrb2hvbCwgIDguIEphbiAyMDA0LCAxOToyMTo1MSk6Cn4jISBvbj1BbGtvaG9sIG90PTEwNzM1ODYwNzIgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDczNTg1OTc0IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTA3MzQ3NDA1MAppY2ggdmVyc3B1ZXJlIGtlaW4gZnJldWRpZ2VzIEdlZnVlaGwgd2VubiBpY2ggZGljaCBsZXNlbiBtdXNzLCBuaWVtYWxzCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogQW5wYXNzdW5nIGRlciBGbHVjaHRyaWNodHVuZyAoR3JpbW1ib3JuLCAgOC4gSmFuIDIwMDQsIDE5OjI1OjUwKToKfiMhIHJuPUFsa29ob2wgcnQ9MTA3MzU4NjExMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzM0NzQwNTAKTGFzcyBtaWNoIHJhdGVuLCBkYXMgbGllZ3QgZWhlciBhbSAibGVzZW4gbXVlc3NlbiIgYWxzIGFuIG1pciwga29ycmVrdD8gCkthbm4gaWNoIHZlcnN0ZWhlbiwgbWlyIG1hY2h0IGRhcyBhdWNoIGtlaW5lbiBTcGFzcywgd2VubiBpY2ggU2FjaGVuIG1hY2hlbgptdXNzIGRpZSBtaXIgc2Nod2VyIGZhbGxlbi4gUmVkIG1hbCBtaXQgRGVpbmVtIEFyYmVpdGdlYmVyIGRydWViZXIsIGRlciBuaW1tdApEaWNoIGRhbm4gc2ljaGVyIGluIGRlbiBBcm0gdW5kIHNhZ3Q6ICJBYmVyIGljaCBoYXR0ZSBqYSBrZWluZSBBaG51bmchIEFsbApkaWVzZSBKYWhyZSwgdW5kIGljaCBoYWJlIG5pY2h0cyBnZWFobnQuIERhIG11c3MgbWFuIGRvY2ggd2FzIG1hY2hlbi4uLiIKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVwcywgc29sY2hlIEFuZ3N0PyAoTW9yZ290aCwgIDkuIEphbiAyMDA0LCAxNDoxNTo0MCk6ClJhbmdvcm4tPk1vcmdvdGggaHVlcGZ0IGF1cyBkZXIgRmVybmUgdW0gRGljaCBoZXJ1bS4KTW9yZ290aCBzaW5ndCBpbiBkZXIgRmVybmU6ICdMYXN0IGNocmlzdG1hcywgSSBnYXZlIHlvdSBteSBoZWFydC4uLicuClJhbmdvcm4gICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpNKiwgdm9lbGxpZyB1bnNjaHVsZGlnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogQW5wYXNzdW5nIGRlciBGbHVjaHRyaWNodHVuZyAoUGFkcmVpYywgIDkuIEphbiAyMDA0LCAyMDoxMjo0MCk6Cn4jISBvbj1QYWRyZWljIG90PTEwNzM2NzU1MDQgb2c9c2VoZXIuZW50d2lja2x1bmcKfiMhIHJuPU1hYXJnIHJ0PTEwNzM2NzUzODQgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD0xMDczNDc0MDUwCjIwJSBkZXIgb25saW5lemVpdCBkZXMgU3BpZWxlcnMgbWl0IGRlciBtZWlzdGVuIG9ubGluZXplaXQgdW5kIG5hdHVlcmxpY2ggMjAlCmRlciBtcGEtQXJ0aWtlbCBkZXMgU3BpZWxlcnMgbWl0IGRlbiBtZWlzdGVuIG1wYS1BcnRpa2Vsbi4uLgoKUGFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFid2VydGVuISAoTXVwZmVsLCAgOS4gSmFuIDIwMDQsIDIwOjMyOjQwKToKfiMhIHJuPVpvb2sgcnQ9MTA3MzU2ODE0OCByZz1naWxkZW4ua2xlcnVzCn4jISB0aWQ9MTA3MzU2ODE0OApLbGVyaWtlciBrYW5uIG1hbiB6dWVja2VuPwoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBBbnBhc3N1bmcgZGVyIEZsdWNodHJpY2h0dW5nIChBbmF0b2wsICA5LiBKYW4gMjAwNCwgMjE6NDU6NTYpOgp+IyEgcm49UGFkcmVpYyBydD0xMDczNjU3NzA1IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA3MzQ3NDA1MApFciBtdXNzIGVzIHdpc3NlbiwgQXJrLiBNaXQgSW50b2xlcmFueiBrZW5udCBlciBzaWNoIGF1cy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYSB3YXMgd2lsbCBlciBtZWhyPyAoQWxrb2hvbCwgMTAuIEphbiAyMDA0LCAxODoxMTo0Myk6CgpEZXIgS29tcG9zdGhhdWZlbiBiZXR0ZWx0IERpY2ggdW0gQWxrb2hvbCBhbi4KCkphIGljaCBiaW4gZG9jaCBkYSwgd2FzIHdpbGwgZXIgZGVubiBtZWhyPyAKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogSWNoIG1hZyBhbmdld2FuZHRlIEluZm9ybWF0aWsgOy0pIChCYW1iaSwgMTAuIEphbiAyMDA0LCAxODo1OTowNCk6Cn4jISBybj1Gb29iYXIgcnQ9MTA3Mzc1NzQ1NCByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMDczNjg1NzU2CkRhcyBpc3QgYWJlciB6aWVtbGljaCBzdWJqZWt0aXYgbW9lY2h0ZSBpY2ggYW5uZWhtZW4uIFVuZCBiZWkgZ2VzY2hhZXR6dGVuCjEwMCsrIEVyZG51ZXNzZW4gcHJvIFBhY2t1bmcgd2lyZCBlcyBhdWNoIHNjaHdpZXJpZywgZWluZSBlaW5kZXV0aWdlClVudGVyc2NoZWlkdW5nIGhlcmJlaXp1ZnVlaHJlbi4KQW5kZXJlcnNlaXRzLCB3ZW5uIGVyIGRhcyBrYW5uLCBkYW5uIGthbm4gZXIgZXNzZW4sIHdhcyBlciB3aWxsOiBFciBpc3N0CmplZGVzbWFsIGV0d2FzIG5ldWVzLCBldHdhcywgZGVzc2VuIEdlc2NobWFjayBlciBub2NoIG5pZSBnZWtvc3RldCBoYXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBJY2ggbWFnIGFuZ2V3YW5kdGUgSW5mb3JtYXRpayA7LSkgKEJhbWJpLCAxMC4gSmFuIDIwMDQsIDE4OjU5OjM2KToKfiMhIHJuPU11YWRpYiBydD0xMDczNzU3NTUwIHJnPXNjaG1hcnJuLm5ldGRpZ2VzdAp+IyEgdGlkPTEwNzM2ODU3NTYKV2lldmllbGUgRXJkbnVlc3NlIGhhdCBlciBkZW5uIHNvcnRpZXJ0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogSWNoIG1hZyBhbmdld2FuZHRlIEluZm9ybWF0aWsgOy0pIChNdWFkaWIsIDEwLiBKYW4gMjAwNCwgMTk6MDA6MTMpOgp+IyEgcm49QmFtYmkgcnQ9MTA3Mzc1NzU3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzM2ODU3NTYKd2FyZW4gc28gdW1kIGRpZSAyMAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVlciBCYW1iaSAoTXVwZmVsLCAxMS4gSmFuIDIwMDQsIDE5OjM4OjU5KToKTWVociBBcnRpa2VsISBNZWhyIEFydGlrZWwhTWVociBBcnRpa2VsIU1laHIgQXJ0aWtlbCFNZWhyIEFydGlrZWwhTWVocgpBcnRpa2VsIU1laHIgQXJ0aWtlbCFNZWhyIEFydGlrZWwhTWVociBBcnRpa2VsIU1laHIgQXJ0aWtlbCFNZWhyIEFydGlrZWwhTWVocgpBcnRpa2VsIU1laHIgQXJ0aWtlbCFNZWhyIEFydGlrZWwhTWVociBBcnRpa2VsIU1laHIgQXJ0aWtlbCFNZWhyIEFydGlrZWwhTWVocgpBcnRpa2VsIU1laHIgQXJ0aWtlbCFNZWhyIEFydGlrZWwhTWVociBBcnRpa2VsIU1laHIgQXJ0aWtlbCFNZWhyIEFydGlrZWwhTWVocgpBcnRpa2VsIU1laHIgQXJ0aWtlbCFNZWhyIEFydGlrZWwhLi4uLgoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGdWVyIEJhbWJpIChBa2FzaGEsIDExLiBKYW4gMjAwNCwgMTk6NDA6MTMpOgp+IyEgcm49TXVwZmVsIHJ0PTEwNzM4NDYzMzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDczODQ2MzM5CkR1IGJpc3QgZG9vZiA6KQoKQWthc2hhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVlciBCYW1iaSAoQmFtYmksIDExLiBKYW4gMjAwNCwgMTk6NDA6MzkpOgp+IyEgcm49TXVwZmVsIHJ0PTEwNzM4NDYzMzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDczODQ2MzM5CkljaCB3ZWlzcyBqYSBuaWNodCwgd2llcyBEaXIgZ2VodCwgYWJlciBpY2ggbWFjaCBuYWNoIFNhdHp6ZWljaGVuCm5vcm1hbGVyd2Vpc2UgZWluIExlZXJ6ZWljaGVuLiBMb2VzY2ggZGVuIEFydGlrZWwgdW5kIHNjaHJlaWIgaWhuIG5ldS4KQXVzc2VyZGVtOiBpY2ggd2lsbCBtZWhyIEFydGlrZWwgc2VoZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZ1ZXIgQmFtYmkgKExpYXJhLCAxMS4gSmFuIDIwMDQsIDE5OjQwOjQ3KToKfiMhIHJuPUFrYXNoYSBydD0xMDczODQ2NDEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3Mzg0NjMzOQpFc3N0IG1laHIgUmVoYnJhdGVuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSEFSIEhBUiBIQVIgKEx1ZywgMTIuIEphbiAyMDA0LCAwMTowODoxNSk6Ck1hcml0YSBzYWd0OiBkaXIgdHJhdSBpY2ggYWxsZXMgenUKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCkx1Z2lmZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBBbnBhc3N1bmcgZGVyIEZsdWNodHJpY2h0dW5nIChab29rLCAxMi4gSmFuIDIwMDQsIDEyOjA0OjMwKToKfiMhIHJuPVBhZHJlaWMgcnQ9MTA3MzkwNTQwOCByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNzM0NzQwNTAKV2VubiBpY2ggZGVuIFRocmVhZCBzbyByZWNodCB2ZXJmb2xnZSwgZGFubiBiaW4gaWNoIHZvbiBkZXIgRnVlbGxlIGFuIE1pdGxlaWQsCmRpZSBQYWRyZWljIGZ1ZXIgc2VpbmUgTWl0c3BpZWxlciBhdWZ6dWJyaW5nZW4gYmVyZWl0IGlzdCwgd2FocmhhZnQgCmJlZ2Vpc3RlcnQuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IEFucGFzc3VuZyBkZXIgRmx1Y2h0cmljaHR1bmcgKFpvb2ssIDEyLiBKYW4gMjAwNCwgMTI6MDc6MjkpOgp+IyEgcm49UGFkcmVpYyBydD0xMDczOTA1NDA4IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA3MzQ3NDA1MApBaCwgenVtIFRoZW1hICJtZWluZSBNaXRzcGllbGVyIHVuZCBpY2ggYXVzc2NobGllc3NsaWNoIHVtIFNwYXNzIHp1IGhhYmVuIgpmYWVsbHQgbWlyIG5vY2ggZGFzIFN0aWNod29ydCAiVGljaHUiKHNjaHJlaWJ0IG1hbiBkYXMgc28pIHVuZCAKIkJyZXR0c3BpZWx3ZWx0LmRlIiBlaW4uLi4gOykKClpPb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogQW5wYXNzdW5nIGRlciBGbHVjaHRyaWNodHVuZyAoQ3JvZnQsIDEyLiBKYW4gMjAwNCwgMTI6MTI6NTEpOgp+IyEgcm49UGFkcmVpYyBydD0xMDczOTA1NzI5IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA3MzQ3NDA1MApBdSBqYS4gIFVuZCBlaW5lIEdpbGRlbm1hZ2llcmJld2VydHVuZyA6PgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBBbnBhc3N1bmcgZGVyIEZsdWNodHJpY2h0dW5nIChHcmltbWJvcm4sIDEyLiBKYW4gMjAwNCwgMTI6MTU6MDMpOgp+IyEgcm49Q3JvZnQgcnQ9MTA3MzkwNTk3MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzM0NzQwNTAKVW5kIGVpbmUgU3BpZWxlci9TZWhlcmJld2VydHVuZyBkdXJjaCBNYWdpZXIuIE1vdHRvOiBXZXIgbmVydnQgZmxpZWd0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogQW5wYXNzdW5nIGRlciBGbHVjaHRyaWNodHVuZyAoQmFtYmksIDEyLiBKYW4gMjAwNCwgMTQ6Mjk6MTkpOgp+IyEgcm49TXVhZGliIHJ0PTEwNzM5MTQwNDUgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD0xMDczNDc0MDUwCkR1IHNvbGx0ZXN0IGRlbSB6dSBsb2VzY2hlbmRlbiBTcGllbGVyIHZpZWxsZWljaHQgYXVjaCBaZWl0IGxhc3NlbiwgZGVuIEJvZ2VuCmF1c3p1ZnVlbGxlbiwgZWhlIER1IGRlcyBTcGllbGVycyBTYXZlZmlsZSBsb2VzY2hzdC4gfTopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogQW5wYXNzdW5nIGRlciBGbHVjaHRyaWNodHVuZyAoTXVhZGliLCAxMi4gSmFuIDIwMDQsIDE0OjM3OjA5KToKfiMhIHJuPUJhbWJpIHJ0PTEwNzM5MTQxNTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDczNDc0MDUwCmludGVyZXNzYW50ZXMga29uemVwdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IEFucGFzc3VuZyBkZXIgRmx1Y2h0cmljaHR1bmcgKEJhbWJpLCAxMi4gSmFuIDIwMDQsIDE4OjQ3OjAwKToKfiMhIHJuPU11YWRpYiBydD0xMDczOTIwNzk2IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA3MzQ3NDA1MApNYW4gaGFldHRlIHp1ciB3ZWl0ZXJlbiBTcGllbHNwYXNzc3RlaWdlcnVuZyBkaWUgQW5wYXNzdW5nIGRlcgpGbHVjaHRyaWNodHVuZ3N3YWhyc2NoZWlubGljaGtlaXQgaW4gRXRhcHBlbiB2b3JuZWhtZW4ga29lbm5lbi4gRGFubiBoYWV0dGVuCmEuIGRpZSBTcGllbGVyIChldHdhIDMgVGFnZSkgWmVpdCBnZWhhYnQsIGRhcyBqZXdlaWxpZ2UgTGV2ZWwgenUgZXJyZWljaGVuIHVuZApiLiBub2NoIG1laHIgQXJ0aWtlbCB6dSBkZW0gVGhlbWEgdmVyb2VmZmVudGxpY2h0IHdlcmRlbiBrb2VubmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IEFucGFzc3VuZyBkZXIgRmx1Y2h0cmljaHR1bmcgKENhdHdlYXpsZSwgMTIuIEphbiAyMDA0LCAyMDo1MDoyOCk6Cn4jISBybj1BbmF0b2wgcnQ9MTA3MzkzNDYzNiByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTEwNzM0NzQwNTAKQXJnaCwgUmF0aW9uYWxpdGFldHNhbGFybSEKV2FzIHR1c3QgZHUgZGVubiBkYSwgZHUga2FubnN0IGRvY2ggbmljaHQgZWluZmFjaCBkZW4gVGhyZWFkIG1pdCBBcmd1bWVudGVuCnVudGVyd2FuZGVybiAuLi4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzM6IEFucGFzc3VuZyBkZXIgRmx1Y2h0cmljaHR1bmcgKFZhbmlvbiwgMTIuIEphbiAyMDA0LCAyMDo1MToxNCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA3MzkzNzAyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzM0NzQwNTAKQW5mYWVuZ2VyZmVobGVyLCBzb3dhcyBwYXNzaWVydCBpbW1lciB3aWVkZXIuIFRyYWdpc2NoLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM0OiBBbnBhc3N1bmcgZGVyIEZsdWNodHJpY2h0dW5nIChBbWFyeWxsaXMsIDEyLiBKYW4gMjAwNCwgMjA6NTE6MzgpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNzM5MzcwNzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDczNDc0MDUwCkpvLCBpbW1lciBkaWVzZSBOZXdiaWVzLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJldW5kZSAuLi4gOz4gKExpYXJhLCAxMi4gSmFuIDIwMDQsIDIzOjAzOjQ5KToKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGhtIHdlaXNzIGVpbmVyIHdpZXNvIGljaCBtaWNoIHJlY2h0cyBzZWl0d2FlcnRzCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBiZXVnZW4ga2FubiBpbmQgbGlua3MgaXJnZW5kd2llIG5ldD8gOykKRGVpbiBGcmV1bmQgSm9zaHVhIHRlaWx0IERpciBtaXQ6IExpbmtzIHZvbiBEaXIgc3RlaHQgZGVyIFRpc2NoPyA7KQpEZWluIEZyZXVuZCBEYXJrd2luZyB0ZWlsdCBEaXIgbWl0OiBsaW5rcyB2b24gRGlyIHN0ZWh0IGVpbiBTY2hyYW5rID8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNvbW1lcnBhcnR5IEhhbGxlIChHcmltbWJvcm4sIDEzLiBKYW4gMjAwNCwgMTU6Mzg6MjQpOgp+IyEgcm49R2l0YXJyZSBydD0xMDc0MDA0NTY4IHJnPXBhcnR5Cn4jISB0aWQ9MTA3NDAwNDIyNQpIYWIgaWNocyBkb2NoIGdld3Vzc3QgLSBPc3RkZXV0c2NobGFuZCwgZGFzIExhbmQgZGVyIFJhZGZhaHJlci4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTb21tZXJwYXJ0eSBIYWxsZSAoSmVob3ZhLCAxMy4gSmFuIDIwMDQsIDE3OjMyOjAxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDc0MDA0NzA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NDAwNDIyNQpIYWxsZSBoYXQgZGEgbm9jaCBlaW5lbiBTb25kZXJzdGF0dXMgaW5uZSwgd2VpbCBkZXJlbiBTdHJhc3NlbmJhaG4gbWl0dGVuIGluCmRlciBTdGFkdCBTY2hpZW5lbmVyc2F0enZlcmtlaHIgbWFjaHQgdW5kIG1hbiBhbHMgRWluZ2V3ZWlodGVyIGVpbiBSYWQgYnJhdWNodAp1bSBiaXMgenVtIEFiZmFocnRzb3J0IGRlcyBCdXNzZXMgenUga29tbWVuIDotKQoKSiosIGhhdCBzY2hsZWNodGUgRXJmYWhydW5nZW4gbWl0IEhhbGxlcyBPZVBOVgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR29ldHRlci4uLiAoTW9yZ290aCwgMTQuIEphbiAyMDA0LCAxMzozODo1Myk6Clpvb2sgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKW0ZyZXVuZGU6Wm9va10gaG9pLCBudXIga3Vyei4KWm9vayAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKRWluIGZ1ZXJjaHRlcmxpY2hlcyBCZWJlbiBlcnNjaHVldHRlcnQgZGllIERpbWVuc2lvbmVuIGluIGlocmVuIEdydW5kZmVzdGVuLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkEtaGEgKE1vcmdvdGgsIDE0LiBKYW4gMjAwNCwgMTk6NDE6MDYpOgpBcG9sbG9uaWEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkFtYXpvcmEgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkFyYXRob3JuICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpBaGFiICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEEtaGEgKERhcmtsb3IsIDE0LiBKYW4gMjAwNCwgMjA6MjQ6MjIpOgp+IyEgcm49TW9yZ290aCBydD0xMDc0MTA1NjY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NDEwNTY2NgpKZXR6dCBmZWhsdHMgbnVyIG5vY2ggaW4gZGVyIGFscGhhYmV0aXNjaGVuIFJlaWhlbmZvbGdlLi4uCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHcmF0cyAoWm9vaywgMTUuIEphbiAyMDA0LCAxMDo0MjozNyk6Cn4jISBybj1CYW1iaSBydD0xMDc0MTU5NjMzIHJnPWV0aWtldHRlCn4jISB0aWQ9MTA3MjcwMjczNwpQdWtlcmwgcnVmdDogUFVLRVJMIQpCYW1iaSBydWZ0OiBydW1ydWZlbiBpc3QgZ2VpbCEKQmFtYmkgcnVmdDogcnVtcnVmZW4ga2FubiB0ZW9kbGljaCBzZWluIQpCYW1iaSBydWZ0OiBydW1ydWZlbiBtYWNodCBpbXBvdGVudCEKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHcmF0cyAoQmFtYmksIDE1LiBKYW4gMjAwNCwgMTA6NDY6NDIpOgp+IyEgcm49Wm9vayBydD0xMDc0MTU5NzU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjcwMjczNwpXYXMgRHUgbmljaHQgZ2VzZWhlbiBoYXN0OgpTZWkgZnJvaCBkYXNzIER1IHVuc3RlcmJsaWNoIGJpc3QsIHNvbnN0IHdhZXJlIGVzIGViZW4gRGVpbiBFbmRlIGdld2VzZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHcmF0cyAoWm9vaywgMTUuIEphbiAyMDA0LCAxMDo0OTo0Nik6Cn4jISBybj1CYW1iaSBydD0xMDc0MTYwMDAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3MjcwMjczNwpab29rIHNjaGF1dCBpbnRlcmVzc2llcnQgUmljaHR1bmcgTW9yZ290aCB1bmQgd2VkZWx0IG1pdCBlaW5lbSBCYW1iaS1aYXBwZXIKaGVydW0uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBHcmF0cyAoTW9yZ290aCwgMTUuIEphbiAyMDA0LCAxMDo1MTo1OSk6Cn4jISBybj1ab29rIHJ0PTEwNzQxNjAxODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDcyNzAyNzM3CkhtLCB3aWVzbz8KSWNoIGthbm4gQmFtYmkgZGEgbnVyIHZvbGwgenVzdGltbWVuLiBHcmF0emUgcGVyIEthbmFsIG9kZXIgdG0gc2luZCB2b2VsbGlnCk9LLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEdyYXRzIChBbGtvaG9sLCAxNS4gSmFuIDIwMDQsIDEwOjUyOjQ1KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA3NDE2MDMxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzI3MDI3MzcKc2luZCBzaWUgamEgYXVjaCwgZ2VuYXVzbyB3aWUgZGllIHBlciBydWZlIDspCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHcmF0cyAoQmFtYmksIDE1LiBKYW4gMjAwNCwgMTE6MDM6MzApOgp+IyEgcm49TW9udGFudXMgcnQ9MTA3NDE2MDk3NCByZz1ldGlrZXR0ZQp+IyEgdGlkPTEwNzI3MDI3MzcKR2FueiBlaW5mYWNoLCBtYW4gaGF0IGVpbmUgbmljaHQgZnVua3Rpb25pZXJlbmRlIEZsdWNodHJpY2h0dW5nLiB9OikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCjopIChBbGtvaG9sLCAxNS4gSmFuIDIwMDQsIDExOjA0OjU2KToKWFNCc2FwaWlTQ3RUUWF1Y0RtbUJpaVRQRmF1d0ptWHVSZG5zUmhTQlB6VW9ka25xS0VpQ0R6c1hIck5FQVFFUU1iTnZySml2bnVVWFd5CkpadXlFTXR5T0tEd1lHY214T1FKcGhETWhDTllCZWpxZFhjYUhUWU5SQVJScFZtaWtuUnBCcEZVZm1BT1hJUXBiaU1DV2hHcFpqUk9MdwpmU1FyUlBMUGJVYXBLWWlBRHZvV25qSXpoQU1VQkRqYnVaU3pya29WU2hMTXpQaFdTQ0p6cVJoQ05WQXp2eFZnS3VobEZrRVBJaXF3SkQKcnRwaktiZkVtU0FrY1VodGdoSm53eG90TmhsTFN2U0VrUWxEYVZnYUt2T2dJTXlHbkpDZGZjWm1sWEdGRkdpalliZVJpak1NVkZRb1BnCk5BWUtpY1BhS25JUE1aSGRtd0lGSE1SWWtYcFJIZmRJYmViR0dpampKendrZ09iV1BsR3d6VWNteGdJc3dBTHhERUJsV0RTTkJ5ZmhBYwpVbkRwV25HRWNnZ0V5elptc0FvS1RoTWZVVUJKY2p5T3VvUENSV0VmT3hIR1NFZkJzalJTWVpWZm5ialFSTktjcHNNSkZtRHFMTkJ3QnQKWEZDV0p5a3pCTFhjVXhhc3hSQ1RUU2p5cnpLeENTV2dtYXBCcWlKRWJvc0tZUVF0Q1d5V0VOVm96Q2NGbkFPbVdmV1ZEYkJnUVZxam50ClJ6TlJPeURrbFpyY05yQWZ0bXhyYVd4VXVXaWtXa3JuTXZrcHd5cFFFWnVwaFVQbndxdERKSFdjdHhmU3VkeU9hdHpETmRQT2lQWHF5YQpzb0FkcEdPZXFhWm9ZRENQSm1rTXpyQ3FFb2FTbW5JeE9aWG1RS3RMUnhsaUdnaEhjT1F3Z2NVdVFyS1FRWGpYVE9jV0JaSE9ueVJJY20Kd0ZLcVB3aVpOZnBlcmNPeEJYU2dGSFJxVkxwcHNFcXFXdlJqUnBiQkVyWm1BYWFGeHhDdWRCeHdlY1Z4REJ6Q3d6cXR6Q2dwcEFZeUJTCnpJVXBrYUxiVmNiR0dEZ2hFU2pXblhWSnJ0T3BQa0xUdUJOZE1ab3ZFcUNPRW5QTFhVWVFGWVZ6TFd0c0pvck1sRUpsdFViVFpGUUJyVApwS0JOYnZiSlhWT1J3blBpZ0Z3SEtweXBManBFQXJqbnJjdkdtcUJUZlNPR0NjRHRnWnNmektiUGhIWXpUR0tqVnRNb05wSHREQlFwZ2gKcXdvUU1EQnJSQXlsZE5yem9KdVVKYlNCakxVV2t2TmtvRkFNZnpqYlVId1pMcFhJckZjT0JwcnNlQ1JSaE5LS1JsZnFSUG9Tb2pDU0x4ClJXY3lCUGlWV0lkV3NKWlVBeWhkTWdUSFRZenNGbnNDc2RZV25sVUxsRUNIcHpzZEZZTW1QZ0ZIR0FCR0ZZc1J0ZWFWVkRmUHBDY2luTApzbW9ZUHBISnZpcHJkVFpvd3BXbGdEYkxGdGd1RFhIYkJSZ25FdWtKRUphYVFZaVlaTkJWTnFKRXZyb3lQUG16cVNIQUJhbWdXYWhtU1UKQ0NET05xQmNsU0pZQnZCaFhhTUtHUEhpVXZyWW1kRldEc1d6UGRZb2R6eVlrUnpla09VeldwVlJUdU5pTkVIYkRmaWtGWHhWUnJPRmVJClByc0Z0dG5ueWhwYkhma1p2T2hpb29KTGVseUpkWmdyeEltWUNFbXFoR2RwZ0ZpWXN3c3hydHhBTEZDdXBkTWlyTUJhclJyc1hBS0pESwpIZE1SQ0ZIbllBWnJKbFRMak1zd3dPREtjSWtZSVZKelN1VFd6bkFpbmpZY25sVU1mbmdwZEdsVUJNUVNSQWJSdmRrZndmQm9MZVpualEKZ2lscHNxSVJjbmtxaW5GVlBXekZkcFdGRUhSb0tjRlRwVE9uSWplTWRqaFJBUHZQZk5SR09ncEJNQnRvZ2tRZmJvV2p6UVpSZFZqTXBrCnBQc3ZjRkJ3dnF1VG5LeG9YQ09OV05LZllMQmxBQ09FWWxmZUxzRHNPSFlpTnhlZVllSEZ3SUNMSkFDbXhnVXVOTUdoTGpZWWJrZkNUYwpTZFlGQ0xMdGV1T09KWG1leU14RVZ0bkZPSERmSG1jclFQeG9sb09aVlJvZUdVc1RBTktJaHdwZk1iTGxIWUNmR3RreURaU2NZV1pEbVkKY09OVmFaRkp4cHdsTVdDZmtEaFRFeG5ZdnBZS1JTTUlFZFBmb0Vqb2pmSW94blhkVkdrc1FMa1BCcEd1SXhvZUdWUExLS3RDbm1ZTldpCmlkYkxSc1lwQU5ubXdqRFJ5TXJIa2lBSWJQbG1QbGdhU2dPRFJvanpsSGJlc25pRlFkZm5nSmtGbENGWUtiVFV1QkVsU2NVVkJDVGpRagp0YmhCVFB5cXZGTnhpdlR4enNCdkhGZGp6elFSa3p1ZHZyekZYSHhoaWRmdmdBcXlnR1RTZmV5dHdFaGlVdGx2YlZGU056anFPbFlIR1AKRE9rempKY2x5Y3lkUnNNZGJadGJnQU5tbEJUcFpsVVVtbG1OVlhoUlJFZlJ3TVl2cllDT25BbHp4TUpTb2dOUUF4dnlmU0NmSFR4bFdHCmdTTmd6ZVZoVVVBam5yUHNTbGhXcGZJVGV2Um1zYmNzaFNWT1FFZEdwVG9TV0VjV2lyeGNDWnVmcUNQRGxud0NFc0FXREZXT2ZRdlRiawpma2RObENPaWd6b0tDZHdlZ2VGcE1tUXB0RnB5blJkRmRrZFJlbFRBc2FFU1pkZ2lSSWpxY0ttYmhWbk5ZYU5wcVloTWRrTEhwUHdQQ0YKZmlNc1RJZEprdmJ5a3JvbHpabGltUkZxRFJySlBTUkRXZFZJVHNDelVjY0JUbnpickRBVXRveXNMYVBxYmhvcUtqWlZKVlRrcHlka2tzClZJckx4eENvamNaRHRjVllhRmRNYXdwdkhXaXpaWFBEV29yYkxZaVd1c0poQktiVFNJT3V4aVRJcGFZdXFkYnRkT09EcEtqZEtYU3padApRcXRaUGVRdk5odHlLb2hqTlRYck95QXNJa0dNSXRDZ0NiS2dRZXZtd2xGWWtDT2JTZWRuUGF2cFVuT09BZllZdGFyaE9Na0NFdVhIZXgKWVNWbkR5U0ttSm12bWVxUEJaYWZWYlF4d1ZXdUlzV05zaEVTSllrb1lmTnFSYUZtYWdxaWFKVlNuZmRrSVprYU1KS2RNQmpaalhzemdqCm1mTXRyUlZXRnBxeHhxaENGTHpHZ2FhQ2l5T0JjVVFIeFhTcWVKTnd4TWhDa050Q3lscmZaRHh3cUVFU1BTUU5qZk1LU2JCUnVmc1R3RApXT3B6Q0NQc2RHSHZtSEVWd2h4THVRU3loT2hPdWlBa214dkprcU13dlBaQ1NDT2pFSmhMYU50ZE1wYnpMZ0ZIbmRGbE90cGlEeEtvT0cKVmNlQW9CdmZRRUxhcWFsUmF4SlphSGNreVpzUEd2RXlJbFJyV21udkhWWXJOeEVaRnhjc3VwUGlETUVYT1hlbENmRWdyclVkb0xJTkNzCnB0UkxOTkNEcGFxRG5FaVhDUGNVSGRwY3pYUkFOZFNFdVRua1Rra2VhY015allYTFpaSFdMallOSWhJakZnY3BLRmtqV3VEY1lOQk9wTwpJRk5aQlFZTmhXUGlkVFBJRVpERm1ZdUNjVlhSSGtuQnlxbHVqcFFNSkpuUUFZUERJSE1ZemVNcXliTnJCc2dsTUhIa3B2bWdZWnBMSG4KTmZLZGdFV0pNcFJkSEx0ZkdHTlFhYWZZd21tZlN2QVR4Z3RnVnZPdlVRWENzR3VCUHRLWEdrYWpwdWFaSXdVYnBtV1VRS3ZVV1VHYWRoCmhwZnVRSXlMVExHVlNMRVVUVFBkVVh0b01CWm1LSWZuUGZHbnNsRWxGYnN2TElDc1p5bkFRWXZ2WkNHUlBoU1FwRVJUTUJ4a29BdUxvRwpnSEJqQWFVbEJEdFVnWXZNREFlTEVRdnpmeUNWTVFYaHNidUpKZWFudXZLQkNkUm5pc3dxQ1ZxVlBCd0pCUWdXY29LY0ZBemRVaVhMUGMKZ0plZllqT2hKS3dXTXFCVU1jRkp0VWtraVNHWHlweGRYUEt5TWdia0FpVWZIa2doY1dwVlBxRkZCV1RQZ05KSFRqZHZodkhMcEtKUEVDCmFYRndkTEVlQklTQWdLb1JaT1NNTUFyYVdscFVUS09zTmdNSGtZQXR0dFB6T3FpYldFamJXS3JxY2JDTkhSekhOZmtpVHhKaWJxWEJuYgp2clNmeE9PYXVBR051TEZjTEZ5bE1sQUZkeXpIVVJ0dldFYkhOclZPUVBKWkhidlVzdmZzbmdFZFdUSGdHZUJpWnhkZklrVVBlb2l6alQKTlBOZ09hcHBlcnJoYlV1aWhoTXRNQVhKZGJVQ0dldWZHS3ZJd09vdXphVENmbHl4UElJcUx5ZU5yZWxxS25qYllPVXp1SllqWXVWSmVJCmd1VFVzZ3dxbkl3UW15cU90QkRpUk1aUEJKY1NmZW96aGRRZmhpaUNMZE1XRkJjVnhqRWthakVnVU5ianhlRGNvRmtHa09ybmtCQ3BEbQpwVG9PYVlEaWV0d254Q3RJa2VqaEdKTENtU0dSeEhhRkpUamV0dk9weVZmaUR0emxOTHVTU2p5SVVEaFduc1FWV3V1cFJsZ0Z5T051cEsKUWJHemRSVVlvYU5MV1FvSHJDVHd0UGd5RGRBRkZ2SEtWbllydGhNV21ZbkV6ZUJ0cGtwSWlMVldKd2NhVWNEcUpRcnp5UGpyTVhXWlJrCkpjQ1Bxb0tIZHRzZ0t1Z1RWWWtNS2J4aWlGd3VuSHpQUlRQQVJndlRtZURFUFlxWEV4eml1YUpqQUFXaVBPaG5IdGpRSGxRTFVhekh2TgpLSGJrYmVqcmpnWU15R0NhbUV1bGxzSVlESFllaUxEbVJZYWJHek1UTmFYWEd6a0hEV3dPU0dnYkNpbFRYQVJGTHlvbVdUblpJTlhWTWQKVW9VbFZKSFBMeExaWEh2dXRwSUFtT3VwUU9RdFZaVmFwdldHVXF5eFBGWGZ4THh5U3V4bm94RWtoTXV5ZGtjYVFTdFBKeGJSZVRBWXBTClhTQnNhcGlpU0N0VFFhdWNEbW1CaWlUUEZhdXdKbVh1UmRuc1JoU0JQelVvZGtucUtFaUNEenNYSHJORUFRRVFNYk52ckppdm51VVhXeQpKWnV5RU10eU9LRHdZR2NteE9RSnBoRE1oQ05ZQmVqcWRYY2FIVFlOUkFSUnBWbWlrblJwQnBGVWZtQU9YSVFwYmlNQ1doR3BaalJPTHcKZlNRclJQTFBiVWFwS1lpQUR2b1duakl6aEFNVUJEamJ1WlN6cmtvVlNoTE16UGhXU0NKenFSaENOVkF6dnhWZ0t1aGxGa0VQSWlxd0pECnJ0cGpLYmZFbVNBa2NVaHRnaEpud3hvdE5obExTdlNFa1FsRGFWZ2FLdk9nSU15R25KQ2RmY1ptbFhHRkZHaWpZYmVSaWpNTVZGUW9QZwpOQVlLaWNQYUtuSVBNWkhkbXdJRkhNUllrWHBSSGZkSWJlYkdHaWpqSnp3a2dPYldQbEd3elVjbXhnSXN3QUx4REVCbFdEU05CeWZoQWMKVW5EcFduR0VjZ2dFeXpabXNBb0tUaE1mVVVCSmNqeU91b1BDUldFZk94SEdTRWZCc2pSU1laVmZuYmpRUk5LY3BzTUpGbURxTE5Cd0J0ClhGQ1dKeWt6QkxYY1V4YXN4UkNUVFNqeXJ6S3hDU1dnbWFwQnFpSkVib3NLWVFRdENXeVdFTlZvekNjRm5BT21XZldWRGJCZ1FWcWpudApSek5ST3lEa2xacmNOckFmdG14cmFXeFV1V2lrV2tybk12a3B3eXBRRVp1cGhVUG53cXRESkhXY3R4ZlN1ZHlPYXR6RE5kUE9pUFhxeWEKc29BZHBHT2VxYVpvWURDUEpta016ckNxRW9hU21uSXhPWlhtUUt0TFJ4bGlHZ2hIY09Rd2djVXVRcktRUVhqWFRPY1dCWkhPbnlSSWNtCndGS3FQd2laTmZwZXJjT3hCWFNnRkhScVZMcHBzRXFxV3ZSalJwYkJFclptQWFhRnh4Q3VkQnh3ZWNWeERCekN3enF0ekNncHBBWXlCUwp6SVVwa2FMYlZjYkdHRGdoRVNqV25YVkpydE9wUGtMVHVCTmRNWm92RXFDT0VuUExYVVlRRllWekxXdHNKb3JNbEVKbHRVYlRaRlFCclQKcEtCTmJ2YkpYVk9Sd25QaWdGd0hLcHlwTGpwRUFyam5yY3ZHbXFCVGZTT0dDY0R0Z1pzZnpLYlBoSFl6VEdLalZ0TW9OcEh0REJRcGdoCnF3b1FNREJyUkF5bGROcnpvSnVVSmJTQmpMVVdrdk5rb0ZBTWZ6amJVSHdaTHBYSXJGY09CcHJzZUNSUmhOS0tSbGZxUlBvU29qQ1NMeApSV2N5QlBpVldJZFdzSlpVQXloZE1nVEhUWXpzRm5zQ3NkWVdubFVMbEVDSHB6c2RGWU1tUGdGSEdBQkdGWXNSdGVhVlZEZlBwQ2NpbkwKc21vWVBwSEp2aXByZFRab3dwV2xnRGJMRnRndURYSGJCUmduRXVrSkVKYWFRWWlZWk5CVk5xSkV2cm95UFBtenFTSEFCYW1nV2FobVNVCkNDRE9OcUJjbFNKWUJ2QmhYYU1LR1BIaVV2clltZEZXRHNXelBkWW9kenlZa1J6ZWtPVXpXcFZSVHVOaU5FSGJEZmlrRlh4VlJyT0ZlSQpQcnNGdHRubnlocGJIZmtadk9oaW9vSkxlbHlKZFpncnhJbVlDRW1xaEdkcGdGaVlzd3N4cnR4QUxGQ3VwZE1pck1CYXJScnNYQUtKREsKSGRNUkNGSG5ZQVpySmxUTGpNc3d3T0RLY0lrWUlWSnpTdVRXem5BaW5qWWNubFVNZm5ncGRHbFVCTVFTUkFiUnZka2Z3ZkJvTGVabmpRCmdpbHBzcUlSY25rcWluRlZQV3pGZHBXRkVIUm9LY0ZUcFRPbklqZU1kamhSQVB2UGZOUkdPZ3BCTUJ0b2drUWZib1dqelFaUmRWak1wawpwUHN2Y0ZCd3ZxdVRuS3hvWENPTldOS2ZZTEJsQUNPRVlsZmVMc0RzT0hZaU54ZWVZZUhGd0lDTEpBQ214Z1V1Tk1HaExqWVlia2ZDVGMKU2RZRkNMTHRldU9PSlhtZXlNeEVWdG5GT0hEZkhtY3JRUHhvbG9PWlZSb2VHVXNUQU5LSWh3cGZNYkxsSFlDZkd0a3lEWlNjWVdaRG1ZCmNPTlZhWkZKeHB3bE1XQ2ZrRGhURXhuWXZwWUtSU01JRWRQZm9Fam9qZklveG5YZFZHa3NRTGtQQnBHdUl4b2VHVlBMS0t0Q25tWU5XaQppZGJMUnNZcEFObm13akRSeU1ySGtpQUliUGxtUGxnYVNnT0RSb2p6bEhiZXNuaUZRZGZuZ0prRmxDRllLYlRVdUJFbFNjVVZCQ1RqUWoKdGJoQlRQeXF2Rk54aXZUeHpzQnZIRmRqenpRUmt6dWR2cnpGWEh4aGlkZnZnQXF5Z0dUU2ZleXR3RWhpVXRsdmJWRlNOempxT2xZSEdQCkRPa3pqSmNseWN5ZFJzTWRiWnRiZ0FObWxCVHBabFVVbWxtTlZYaFJSRWZSd01ZdnJZQ09uQWx6eE1KU29nTlFBeHZ5ZlNDZkhUeGxXRwpnU05nemVWaFVVQWpuclBzU2xoV3BmSVRldlJtc2Jjc2hTVk9RRWRHcFRvU1dFY1dpcnhjQ1p1ZnFDUERsbndDRXNBV0RGV09mUXZUYmsKZmtkTmxDT2lnem9LQ2R3ZWdlRnBNbVFwdEZweW5SZEZka2RSZWxUQXNhRVNaZGdpUklqcWNLbWJoVm5OWWFOcHFZaE1ka0xIcFB3UENGCmZpTXNUSWRKa3ZieWtyb2x6WmxpbVJGcURSckpQU1JEV2RWSVRzQ3pVY2NCVG56YnJEQVV0b3lzTGFQcWJob3FLalpWSlZUa3B5ZGtrcwpWSXJMeHhDb2pjWkR0Y1ZZYUZkTWF3cHZIV2l6WlhQRFdvcmJMWWlXdXNKaEJLYlRTSU91eGlUSXBhWXVxZGJ0ZE9PRHBLamRLWFN6WnQKUXF0WlBlUXZOaHR5S29oak5UWHJPeUFzSWtHTUl0Q2dDYktnUWV2bXdsRllrQ09iU2VkblBhdnBVbk9PQWZZWXRhcmhPTWtDRXVYSGV4CllTVm5EeVNLbUptdm1lcVBCWmFmVmJReHdWV3VJc1dOc2hFU0pZa29ZZk5xUmFGbWFncWlhSlZTbmZka0laa2FNSktkTUJqWmpYc3pnagptZk10clJWV0ZwcXh4cWhDRkx6R2dhYUNpeU9CY1VRSHhYU3FlSk53eE1oQ2tOdEN5bHJmWkR4d3FFRVNQU1FOamZNS1NiQlJ1ZnNUd0QKV09wekNDUHNkR0h2bUhFVndoeEx1UVN5aE9oT3VpQWtteHZKa3FNd3ZQWkNTQ09qRUpoTGFOdGRNcGJ6TGdGSG5kRmxPdHBpRHhLb09HClZjZUFvQnZmUUVMYXFhbFJheEpaYUhja3lac1BHdkV5SWxScldtbnZIVllyTnhFWkZ4Y3N1cFBpRE1FWE9YZWxDZkVncnJVZG9MSU5DcwpwdFJMTk5DRHBhcURuRWlYQ1BjVUhkcGN6WFJBTmRTRXVUbmtUa2tlYWNNeWpZWExaWkhXTGpZTkloSWpGZ2NwS0Zrald1RGNZTkJPcE8KSUZOWkJRWU5oV1BpZFRQSUVaREZtWXVDY1ZYUkhrbkJ5cWx1anBRTUpKblFBWVBESUhNWXplTXF5Yk5yQnNnbE1ISGtwdm1nWVpwTEhuCk5mS2RnRVdKTXBSZEhMdGZHR05RYWFmWXdtbWZTdkFUeGd0Z1Z2T3ZVUVhDc0d1QlB0S1hHa2FqcHVhWkl3VWJwbVdVUUt2VVdVR2FkaApocGZ1UUl5TFRMR1ZTTEVVVFRQZFVYdG9NQlptS0lmblBmR25zbEVsRmJzdkxJQ3NaeW5BUVl2dlpDR1JQaFNRcEVSVE1CeGtvQXVMb0cKZ0hCakFhVWxCRHRVZ1l2TURBZUxFUXZ6ZnlDVk1RWGhzYnVKSmVhbnV2S0JDZFJuaXN3cUNWcVZQQndKQlFnV2NvS2NGQXpkVWlYTFBjCmdKZWZZak9oSkt3V01xQlVNY0ZKdFVra2lTR1h5cHhkWFBLeU1nYmtBaVVmSGtnaGNXcFZQcUZGQldUUGdOSkhUamR2aHZITHBLSlBFQwphWEZ3ZExFZUJJU0FnS29SWk9TTU1BcmFXbHBVVEtPc05nTUhrWUF0dHRQek9xaWJXRWpiV0tycWNiQ05IUnpITmZraVR4SmlicVhCbmIKdnJTZnhPT2F1QUdOdUxGY0xGeWxNbEFGZHl6SFVSdHZXRWJITnJWT1FQSlpIYnZVc3Zmc25nRWRXVEhnR2VCaVp4ZGZJa1VQZW9pempUCk5QTmdPYXBwZXJyaGJVdWloaE10TUFYSmRiVUNHZXVmR0t2SXdPb3V6YVRDZmx5eFBJSXFMeWVOcmVscUtuamJZT1V6dUpZall1VkplSQpndVRVc2d3cW5Jd1FteXFPdEJEaVJNWlBCSmNTZmVvemhkUWZoaWlDTGRNV0ZCY1Z4akVrYWpFZ1VOYmp4ZURjb0ZrR2tPcm5rQkNwRG0KcFRvT2FZRGlldHdueEN0SWtlamhHSkxDbVNHUnhIYUZKVGpldHZPcHlWZmlEdHpsTkx1U1NqeUlVRGhXbnNRVld1dXBSbGdGeU9OdXBLClFiR3pkUlVZb2FOTFdRb0hyQ1R3dFBneURkQUZGdkhLVm5ZcnRoTVdtWW5FemVCdHBrcElpTFZXSndjYVVjRHFKUXJ6eVBqck1YV1pSawpKY0NQcW9LSGR0c2dLdWdUVllrTUtieGlpRnd1bkh6UFJUUEFSZ3ZUbWVERVBZcVhFeHppdWFKakFBV2lQT2huSHRqUUhsUUxVYXpIdk4KS0hia2JlanJqZ1lNeUdDYW1FdWxsc0lZREhZZWlMRG1SWWFiR3pNVE5hWFhHemtIRFd3T1NHZ2JDaWxUWEFSRkx5b21XVG5aSU5YVk1kClVvVWxWSkhQTHhMWlhIdnV0cElBbU91cFFPUXRWWlZhcHZXR1VxeXhQRlhmeEx4eVN1eG5veEVraE11eWRrY2FRU3RQSnhiUmVUQVlwUwpseWdrbG54d1pMYnpQWFRpUG9YekdPdU94TUtXRkFBSkRmUkV0SXhmaHhxb2tLckF6VG1pYnhkVGVFRll3SXp6SFZHc0lSTHZWc1l2aXAKT1RHU0ZxUGpCdG5tT2JZZ0tFdUhlU0VYcHFob2R1UXhZY2JaYUdKcVRhZ0ZQR1VVZVZzUEhDYm5UbnlHcmxVdHpwYWt4QXh2bXRFemxTClRmQWZQZVZiUVdHU0RNUk5aZHZJWklQR2J5RkFFR1RtZEdNeUVma3prSHlNVVpKeWlyRWpDbHlLcGxWWEl1TmdqWElQV2pFQXVMemNNbwpwQ0J6cEpKY0xDS1VoUmdQRXVEYURFd0ZoeEJIcEpCQUhMVFNBQUJHSEhsTmlCVmtKU0x3dUlvVGlOUlJCblR2Sk9xRFZ3THR2QmtsZkEKRklqSWhDWnZqdVZ6RWhkcEFaS0ZTV0FJSE5ySHJtbVBISlJtQ2hPRENDYUZzcmF2WExEWWRMeG56TnJGQ3BsQXJCcGJNUVp5aUJramJZCm5wa2xtWmx1ZkdsQ2t3QUxZcFBNR29TempmakVpUFhLU0dHWHNGdlp4enlBU0VFZUhNZ0ptT09yT2ZYV3F2d1NPZWlBdlp0akNuUGZETApzbnNNT3Vpb0NKaXRoU1VSSXRQc21veXVGdUNvTHFpdFVLeHNiZ0pOZlhoWnJmdHJKdXhZWWt0d1dPVGlaRHVOU0JCVWp0UVpZRUdXSHkKRmhOcVpkT2R6cmV0eEJhU29LeWNqUlpPcnNKZ05LV3RZeWhDRWdmU0pWUmNyVVBTQ21DUnFEYXN1cFV5cE5LbHJVZW1aS2poQ29FVXZlCm5hc1lmRGNnS2hub2FIbENRaXZSTHNkZnBKd2VsQm1Gb2FtbUxWTFl0VWxwVWRIRmdIY1BtS3Rtc1hJYlphQlF2dXlLWG54ZndyQXlRVwpmU0x6UUVPQ3BqeW9oeGV3bkFudGlBcFZ5dlBLWklJemtpWFRrd0VISWJZUWFzYkh3cWRCWUtCWGFNVEtuQ29kYndqZmx3ZVJEc0Z3U2EKbXpIbmxKT0p1ZFJxR3laSG9henJPTWZMZXVqYXhsZ2lubHZ3T0VNb1JibnJacFdDbk1sWEpHZ3NIbVRiS3hlckFUUnZDcUV2Q0hlWEVmCkxRYVZYV1BMeGp3YnNhekJxZ2JBaVBLQmZlQWFGT2VQSGFhVWlrZ3Bid250cVZsbHhRdnV1VVNaTExhTkdjQXFBcUZrQ3dkYnJsbFF5UApoS0JTZ0tMaUtRc012TXZlVXVFQnlwTGl2SUJZYkd0UWhZTHN2bUlsT3dWSHFMTHB3cmlhQkZJUWRPUFV6QnNZY09ZUWhSU05BTWRycGIKaFpRSnhxcFdCT2NOTWtwU2FXU1RqbEl1S1BBZ1N5YkxoU2JvR1ZUV3dwd2V4bmNhTlVUUlNaWlhtWG9XWk5WWHJBTlZxb3FWaVhJck1TClBnUmlySG9kdFFlUGxhbXhlUUVuQU16QlZiUlVHeWdFVkZpVWRWZm92YXNCUUVWR1Faa2ZkRnpldmJNUXRWWE5hQWZPanR2SFZNUG9OagpjTHZkb3JvWWNxaVBzU1NSTE5IYlpWQUJZRWx1RkVzVXNyZG1FQ3RKRVZaSXhZU2pnaE9sY0NncEJpdEJxQ3ZkcGVqTVhQc2dFRGlGVkMKd1ZUemxFSUR1YUhjbG1GekJuakZ5emtUcUtqT1JkcllPcnVlWmFIdHR6ZXBqbXNkTUVpcU9sVGRlTFlwQmtDWHdEQmhZWXVyZnR6S2NuCk9aV1VheVBuR2VPQ21ObFZrbU1vQ05hZml4WnpqeUtCTHNRYUJFVmtDcE5qVVNnc1lxallwdkRQRENSQW5CVUVLaGVjWE1xWW5nSm1LaApYTHRpWUVqZWdSZnBTRUh4ZXhKc3lJWVVwaFlyc1ZVZ3JmTVl2aEx1TFJMaFdFSVRmZnBTS1l5R2liS1VBelNycktCSU5LeXdwY0RER2oKelRMdUJQT0x5a3JzaFZMSUlvQUtxWFFyQmV6anpZRW5jWUhPcGFGYVh0TlV6RFFOampjaHhSUXR4eXRuQUljd29BTlBJZlJlUWVwS2NkCmZyQ0dIakVmT2xFUWFzcmJQT0VUYXdXaEJFUHhUdkFWZVVoc0tHRHVIVmZlaUltcW5jV25PVHdySU1NSVdCeG9CbHlydEZFRGNrQVNiWApDWVFrRmVXT0VMQk15Y2djRnRLaXVIblJTQXFEYXlBWG1RRU50WkxpZG1VU0JsU1RSdlR5YWZ5S0RNeXFMWXh4Q21MVXhlR2xhZ2xIanYKYnpIaWZhbnBDS1loZWFDZGJ3VWFXUlRkZmJZb2V6WFNubE95b29xQVJTS3RiZHZrVGNtcFRrbFdoRW5Ed0VHUmNGc1BsRWJWU1hPSUh4Ck5vdFJoSVVleFRlZW9jVm5LcW9rTVFjVU9QWG1ZYkFSSFFpZmFWbENBTEZZVlB6emZnZk9YckJadGt5Q1hkakpTZ1ZxUlFnb2ZRYmhxaApZRWlhcHpUc0pKbElwWElTWnh4WnpBcWFNdE1yV3Z6eXF6ckRweVZjaVpKVWJUTkl0eFdIVVRVRUVVck9jR21KdkdOVldmcVBCR3RzUHQKelNZR1dFekhBaFJJQVFGeWNlbGhPT0hSc296V0xkRXR1emlUS094cnRmSEhsZXJTQllRaFpQRllGbUtjVkhNam5DTGxjeWFrTGhEdXhxClF4QmFDTmppRmltR2V3WmxhamloU3RUZlpMTndMaldlcUNXVXRTVVl6THRMck9lU2dmZ3RZb1RjSFJPQ0hiT2FnVkRWVFdscmRzYmVpcgpSS3JPdExOZUd1VkRIWHFkcE11d2xDR0JTQm9raVdMdGhwYkZsZ0dwUFhTUmVmVVBhWnhFZklNWkJDQ1VURVJsZlhCS1lpTVVtZk1EeHMKSVFad0V6THVwaUxhSkRzR1dBYnZXVWlMS2lyd2RYUGpQcENTRFdScHlhanBpU3pWb0h5dEN5QVlMY1dEQ0p3VWxPR2FqQW9BSkZXUVFGCmduZVNHTHhZd1JCWFVobEZDVlNEWWFtTnlicnN5eWNScExERVJmZUduekpiSElSQkxGVXlPWnB1V0x0UEJhR0JUUXhFY2tJQWtYTkREcApYU2hNcVpKdVhpaFRhRExjWlNxWEpMR3pYT1V2ckdxWXBmdVZmTGdwY291SlhwS01zdUpOVkFJRFdnZ0dIb0dUaVdMTGpvTW5ZTWJNbVcKaFVxVUhYUEtVR1Bld3psUVh3b052TU9ac3haeG9kV2RGenhvQktvdXd3QlhmT1lISnZiQXhSaUJKcWlUVmF2Y2liaEtNbFpMeXpiWGphClF6R2ZFTEtxYWtoeWdDWUhCRWh6bGpBa3F3cEZ6eHNkUFFBV01FSHpLUmlleGpNU0FPdVBOSlh6WENDZVdRdU9aWmxMQ1REU2VGSUhFZQpGWXFpTG1Ba1F6cVRSWlNnWlZQdHNMcmNmTE1CQk9oVXd1WnBxbWRsQmFBVGlUaXhTbGhOQm1xdVVYRXNNRlpNQ0NRRlNMRlVMRmxkZlgKZHZ6a2dYS2pvdnp5VmVrRGZZaHptVXpwdE1jRUlBRk96T0tncmltdGJRc3pxSmtTdVFvZ1NuZUtGZlVpR1VWVmhQcE9ZWHZYSElCb0ViCkttQUljWENralJYbmNydFdvelRibFZMbEd1R293R1FxTXR5cGJDb01HUElRa3R1VUNRVHpRbWhlQlJWSndqZ2RkdnJFY21wUXZETldVbQpyT1BKUnlhR09NbVJPVmd3VFhzTGpRSWRob0xtQ0taekNPcVVZZ1lSQmxzSkZ5T21BRFJRT3NvQWlJTFlCZHdIU2dIYVJpY1ZtaWlhVFYKbHlna2xueHdaTGJ6UFhUaVBvWHpHT3VPeE1LV0ZBQUpEZlJFdEl4Zmh4cW9rS3JBelRtaWJ4ZFRlRUZZd0l6ekhWR3NJUkx2VnNZdmlwCk9UR1NGcVBqQnRubU9iWWdLRXVIZVNFWHBxaG9kdVF4WWNiWmFHSnFUYWdGUEdVVWVWc1BIQ2JuVG55R3JsVXR6cGFreEF4dm10RXpsUwpUZkFmUGVWYlFXR1NETVJOWmR2SVpJUEdieUZBRUdUbWRHTXlFZmt6a0h5TVVaSnlpckVqQ2x5S3BsVlhJdU5nalhJUFdqRUF1THpjTW8KcENCenBKSmNMQ0tVaFJnUEV1RGFERXdGaHhCSHBKQkFITFRTQUFCR0hIbE5pQlZrSlNMd3VJb1RpTlJSQm5UdkpPcURWd0x0dkJrbGZBCkZJakloQ1p2anVWekVoZHBBWktGU1dBSUhOckhybW1QSEpSbUNoT0RDQ2FGc3JhdlhMRFlkTHhuek5yRkNwbEFyQnBiTVFaeWlCa2piWQpucGtsbVpsdWZHbENrd0FMWXBQTUdvU3pqZmpFaVBYS1NHR1hzRnZaeHp5QVNFRWVITWdKbU9Pck9mWFdxdndTT2VpQXZadGpDblBmREwKc25zTU91aW9DSml0aFNVUkl0UHNtb3l1RnVDb0xxaXRVS3hzYmdKTmZYaFpyZnRySnV4WVlrdHdXT1RpWkR1TlNCQlVqdFFaWUVHV0h5CkZoTnFaZE9kenJldHhCYVNvS3ljalJaT3JzSmdOS1d0WXloQ0VnZlNKVlJjclVQU0NtQ1JxRGFzdXBVeXBOS2xyVWVtWktqaENvRVV2ZQpuYXNZZkRjZ0tobm9hSGxDUWl2UkxzZGZwSndlbEJtRm9hbW1MVkxZdFVscFVkSEZnSGNQbUt0bXNYSWJaYUJRdnV5S1hueGZ3ckF5UVcKZlNMelFFT0NwanlvaHhld25BbnRpQXBWeXZQS1pJSXpraVhUa3dFSEliWVFhc2JId3FkQllLQlhhTVRLbkNvZGJ3amZsd2VSRHNGd1NhCm16SG5sSk9KdWRScUd5WkhvYXpyT01mTGV1amF4bGdpbmx2d09FTW9SYm5yWnBXQ25NbFhKR2dzSG1UYkt4ZXJBVFJ2Q3FFdkNIZVhFZgpMUWFWWFdQTHhqd2JzYXpCcWdiQWlQS0JmZUFhRk9lUEhhYVVpa2dwYndudHFWbGx4UXZ1dVVTWkxMYU5HY0FxQXFGa0N3ZGJybGxReVAKaEtCU2dLTGlLUXNNdk12ZVV1RUJ5cExpdklCWWJHdFFoWUxzdm1JbE93VkhxTExwd3JpYUJGSVFkT1BVekJzWWNPWVFoUlNOQU1kcnBiCmhaUUp4cXBXQk9jTk1rcFNhV1NUamxJdUtQQWdTeWJMaFNib0dWVFd3cHdleG5jYU5VVFJTWlpYbVhvV1pOVlhyQU5WcW9xVmlYSXJNUwpQZ1JpckhvZHRRZVBsYW14ZVFFbkFNekJWYlJVR3lnRVZGaVVkVmZvdmFzQlFFVkdRWmtmZEZ6ZXZiTVF0VlhOYUFmT2p0dkhWTVBvTmoKY0x2ZG9yb1ljcWlQc1NTUkxOSGJaVkFCWUVsdUZFc1VzcmRtRUN0SkVWWkl4WVNqZ2hPbGNDZ3BCaXRCcUN2ZHBlak1YUHNnRURpRlZDCndWVHpsRUlEdWFIY2xtRnpCbmpGeXprVHFLak9SZHJZT3J1ZVphSHR0emVwam1zZE1FaXFPbFRkZUxZcEJrQ1h3REJoWVl1cmZ0ektjbgpPWldVYXlQbkdlT0NtTmxWa21Nb0NOYWZpeFp6anlLQkxzUWFCRVZrQ3BOalVTZ3NZcWpZcHZEUERDUkFuQlVFS2hlY1hNcVluZ0ptS2gKWEx0aVlFamVnUmZwU0VIeGV4SnN5SVlVcGhZcnNWVWdyZk1ZdmhMdUxSTGhXRUlUZmZwU0tZeUdpYktVQXpTcnJLQklOS3l3cGNEREdqCgpBdXNzY2huaXR0ZSBhdXMgZWluZXIgS29udmVyc2F0aW9uCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogOikgKE1vcmdvdGgsIDE1LiBKYW4gMjAwNCwgMTE6MDY6MDkpOgp+IyEgcm49QWxrb2hvbCBydD0xMDc0MTYxMDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NDE2MTA5NgpKYWcgZGFzIG1hbCBkdXJjaCBtZXRhbWFpbCwgdmllbGxlaWNodCBpc3NlcyBqYSBlaW4gY29kaWVydGVzIEpQRyB2b24gUGFtZWxhCkFuZGVyc29uIDopCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IDopIChCYW1iaSwgMTUuIEphbiAyMDA0LCAxMTowNjoyMSk6Cn4jISBybj1BbGtvaG9sIHJ0PTEwNzQxNjEwOTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc0MTYxMDk2Cldlbm4gbWFuIGRhcyBkdXJjaCBkZW4gcmljaHRpZ2VuIERlY29kaWVyZXIgamFndCwga3JpZWd0IG1hbiBlaW4gQmlsZCB2b24KYnJhbmRzY2hhdHplbmRlbiBSZWhlbiwgZ2VsbD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogOikgKENyb2Z0LCAxNS4gSmFuIDIwMDQsIDExOjA3OjE2KToKfiMhIHJuPUJhbWJpIHJ0PTEwNzQxNjExODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc0MTYxMDk2Ck9kZXIgdm9uIG5lbSBSZWhicmF0ZW4gbWl0IFByZWlzc2VsYmVlcmVuLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IDopIChNdWFkaWIsIDE1LiBKYW4gMjAwNCwgMTQ6MDE6MzYpOgp+IyEgcm49Q3JvZnQgcnQ9MTA3NDE2MTIzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzQxNjEwOTYKbG9lc2NoIGdlZmFlbGxpZ3N0IGRpZXNlIGtsIGF1cyBkZXIgbXBhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYWhyZSBGcmV1bmRzY2hhZnQuLi4uIChab29rLCAxNS4gSmFuIDIwMDQsIDIxOjA0OjE4KToKRHUgYmlldGVzdCBBbGJvaW4gRGVpbmUgRnJldW5kc2NoYWZ0IGFuLgpBbGJvaW4gc3ByaW5ndCBEaWNoIGF1ZiBlaW5tYWwgYW4gdW5kIHd1ZXJndCBEaWNoLgoKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcyBnZXNjaGVoZW4gbm9jaCBaZWljaGVuLi4uIChNdXBmZWwsIDE1LiBKYW4gMjAwNCwgMjE6NDY6NTUpOgpNb3Jnb3RoIHNhZ3Q6IGljaCBzZXR6IGdyYWQgTURzIGFiIDopCk1vcmdvdGggc2FndDogSUNIICEKCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FuIG53aXJkIHdvaGwgUmVib290IHNlaW4/IChab29rLCAxNS4gSmFuIDIwMDQsIDIxOjQ3OjI5KToKV2VyIHdlaXNzPyBWaWVsbGVpY2h0IEpvZiBvZGVyIFJ1bWF0YT8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBPcHRpc2NoZSBQUy8yLU1hdXMgYW4gc2VyaWVsbD8gKEdyaW1tYm9ybiwgMTYuIEphbiAyMDA0LCAxMjoxMTowOSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNzQyNTEzODAgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTA3NDI1MTAxOQpHZW5hdSwgaGFlbmcgZGllIE1hdXMgZG9jaCBtYWwgZGlyZWt0IGFuIGRpZSBTdGVja2Rvc2UuIEthbm4gZ3V0IHNlaW4sIGRhc3MKZGFzIGRhcyBQcm9ibGVtIGxvZXN0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBPcHRpc2NoZSBQUy8yLU1hdXMgYW4gc2VyaWVsbD8gKFBlcmRpdGEsIDE2LiBKYW4gMjAwNCwgMTI6MTI6MjEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNzQyNTE0Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc0MjUxMDE5CmdlbmF1LCB3ZWlsIGRhbm4gaGFiYmljaCBrZWluZSBNYXVzIG1laHIKUGVyZGl0YSBpc3QgamEgc29vb29vb28gYmxvZWQgYXVjaCBuaWNoICh3ZW5uIGF1Y2ggc29uc3Qga2VpbmUgYWhudW5nKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJldW5kZSBmdWVyIFZlc3JheSA7PiAoTGlhcmEsIDE2LiBKYW4gMjAwNCwgMTk6MDQ6MzkpOgpEYXJrd2luZyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpEZWluIEZyZXVuZCBEYXJrd2luZyBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuIApEZWluIEZyZXVuZCBHYXRvIHRlaWx0IERpciBtaXQ6IEFoLCBEYXJrd2luZyBrb2VubnRlbiB3aXIgbm9jaCB2ZXJoZWl6ZW4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnJldW5kZSBmdWVyIFZlc3JheSA7PiAoQW5hdG9sLCAxNi4gSmFuIDIwMDQsIDIyOjUxOjE0KToKfiMhIHJuPUxpYXJhIHJ0PTEwNzQyNzYyNzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc0Mjc2Mjc5Clp1IHdlbmlnIEJyZW5ud2VydC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcmV1bmRlLi4uaW1tZXIgd2llZGVyIHNjaG9lbiAoTW9yZ290aCwgMTcuIEphbiAyMDA0LCAwMTowMTozMSk6CltGcmV1bmRlOkxlaWJpXSB2aWVsbGVpY2h0IHNvbGx0ZSBpY2ggbWlyIGFsa29ob2wgZ29lbm5lbgpbRnJldW5kZTpMZWliaV0gamEsIGljaCB3aWxsIGRpY2ghIGFsa29ob2whIGljaCBicmF1Y2gKW0ZyZXVuZGU6TGVpYmldIGRpY2ggc29nYXIKTW9yZ290aCBzY2hhdXQgTGVpYmkgYXVzIGRlciBGZXJuZSBmcmFnZW5kIGFuLgpbRnJldW5kZTpMZWliaSBuaW1tdCBhbGtvaG9sIGF1cyBkZXIgRmVybmUuXQpbRnJldW5kZTpMZWliaSBraWNoZXJ0IGF1cyBkZXIgRmVybmUuXQpbRnJldW5kZTpCcm90bmFlbCBzY2hhdXQgYXVzIGRlciBGZXJuZSB6dS5dCltGcmV1bmRlOk1haGFyZXQgbmltbXQgQnJvdG5hZWwgYXVzIGRlciBGZXJuZS5dCltGcmV1bmRlOkxlaWJpXSBzcGFubmVyIDspCltGcmV1bmRlOkVwcGkga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLl0KW0ZyZXVuZGU6QnJvdG5hZWwgZnJldXQgc2ljaCBpbiBkZXIgRmVybmUuXQpbRnJldW5kZTpCcm90bmFlbF0gYWJlciBudSBoYXUgaWNoIGF1Y2ggYWIgO28pIHRzY2h1aSA6bykpCltGcmV1bmRlOkxlaWJpXSBiaXMgZGFubiBicm90aWkKW0ZyZXVuZGU6RXBwaV0gdHNjaHVlIDopCltGcmV1bmRlOkFrYXNoYV0gQWN0aW9uIDopCltGcmV1bmRlOkxlaWJpXSBpY2ggZ2xhdWIgaWNoIGdlaCBhdWNoIG1hbAoKTSogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLb21tdCBFdWNoIGRhcyBMb2dvIGJla2FubnQgdm9yPyAoTW9yZ290aCwgMTkuIEphbiAyMDA0LCAxMDo1Mjo0Mik6Cn4jISBybj1EZWwgcnQ9MTA3NDUwNTc4MyByZz13d3cKfiMhIHRpZD0xMDc0NTA1NzgzCklJUkMgaXN0IGRhcyBlaW4gQ2xpcGFydCBhdXMgQ29yZWxEcmF3LiAKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpRdWVsbGU6IFp3ZWlmZWxoYWZ0IChCYW1iaSwgMTkuIEphbiAyMDA0LCAxMjoxMzo0Nik6CkRpZXMgaXN0IGVpbiBlY2h0ZXIgVGV4dCwgZWluZXIgRWluZ2FiZSB1bSBCZWZyZWl1bmcgZGVzIE1pbGl0YWVyZGllbnN0ZXMgaW4KSXRhbGllbi4KCgpTZWhyIGdlZWhydGVyIEhlcnIgVmVydGVpZGlndW5nc21pbmlzdGVyLAoKZXJsYXViZW4gU2llIG1pciBiaXR0ZSBkaWUgRnJlaWhlaXQsIElobmVuIHJlc3Bla3R2b2xsIEZvbGdlbmRlcyB6dQp1bnRlcmJyZWl0ZW4gdW5kIGljaCBiaXR0ZSBTaWUgdW0gSWhyZSB3b2hsd29sbGVuZGUgQmVtdWVodW5nLCBkaWUKQW5nZWxlZ2VuaGVpdCByYXNjaCB6dSBiZWFyYmVpdGVuLiBadXJ6ZWl0IHdhcnRlIGljaCBhdWYgZGVuIEVpbnp1ZyBpbnMKTWlsaXRhZXIsIGJpbiAyNCBKYWhyZSBhbHQgdW5kIG1pdCBlaW5lciA0NGphZWhyaWdlbiBXaXR3ZSB2ZXJoZWlyYXRldCwgd2VsY2hlCmVpbmUgVG9jaHRlciB2b24gMjUgSmFocmVuIGhhdC4gTWVpbiBWYXRlciBoYXQgYmVzYWd0ZSBUb2NodGVyIGdlaGVpcmF0ZXQuClNvbWl0IGlzdCBtZWluIFZhdGVyIG1laW4gU2Nod2llZ2Vyc29obiBnZXdvcmRlbiwgZGEgZXIgamEgZGllIFRvY2h0ZXIgbWVpbmVyCkZyYXUgZ2VoZWlyYXRldCBoYXQuIFp1ZGVtIGlzdCBtZWluZSBUb2NodGVyIG1laW5lIFN0aWVmbXV0dGVyIGdld29yZGVuLCBkYQpzaWUgamEgbWVpbmVuIFZhdGVyIGdlaGVpcmF0ZXQgaGF0LiBNZWluZSBGcmF1IHVuZCBpY2ggaGFiZW4gbGV0enRlbiBKYW51YXIKZWluZW4gU29obiBiZWtvbW1lbi4gRGllc2VyIGlzdCBCcnVkZXIgZGVyIEZyYXUgbWVpbmVzIFZhdGVycywgc29taXQgZGVyClNjaHdhZ2VyIG1laW5lcyBWYXRlcnMuIEF1c3NlcmRlbSBpc3QgZXMgYXVjaCBtZWluIE9ua2VsLCBkYSBlciBqYSBkZXIgQnJ1ZGVyCm1laW5lciBTdGllZm11dHRlciBpc3QuIE1laW4gU29obiBpc3QgYWxzbyBtZWluIE9ua2VsLgoKRGllIEZyYXUgbWVpbmVzIFZhdGVycyBoYXQgYW4gV2VpaG5hY2h0ZW4gZWluZW4gU29obiBiZWtvbW1lbiwgZGVyIHp1Z2xlaWNoCm1laW4gQnJ1ZGVyIGlzdCwgZGEgZXIgamEgU29obiBtZWluZXMgVmF0ZXJzIGlzdCwgdW5kIG1laW4gRW5rZWwgaXN0LCB3ZWlsIGVyClNvaG4gZGVyIFRvY2h0ZXIgbWVpbmVyIEZyYXUgaXN0LgoKSWNoIGJpbiBhbHNvIGRlciBCcnVkZXIgbWVpbmVzIEVua2VscyB1bmQgZGEgZGVyIEVoZW1hbm4gZGVyIE11dHRlciBlaW5lcgpQZXJzb24gIGphIGRlciBWYXRlciBpc3QsIHJlc3VsdGllcnQsIGRhc3MgaWNoIGRlciBWYXRlciBkZXIgVG9jaHRlciBtZWluZXIKRnJhdSBiaW4gdW5kIEJydWRlciBpaHJlcyBTb2huZXMuCgpBbHNvIGJpbiBpY2ggbWVpbiBHcm9zc3ZhdGVyLgoKTmFjaCBkaWVzZW4gRXJrbGFlcnVuZ2VuLCBzZWhyIGdlZWhydGVyIEhlcnIgTWluaXN0ZXIsIGJpdHRlIGljaCBTaWUsIG1pY2ggdm9uCmRlciBNaWxpdGFlcmRpZW5zdHBmbGljaHQgenUgYmVmcmVpZW4sIGRhIGRhcyBHZXNldHogdmVyYmlldGV0LCBkYXNzIFZhdGVyLApTb2huIHVuZCBFbmtlbCB6dWdsZWljaCBNaWxpdGFlcmRpZW5zdCBsZWlzdGVuLiAKCkljaCBiaW4gdm9uIElocmVtIFZlcnN0YWVuZG5pcywgaG9jaCB2ZXJlaHJ0ZXIgSGVyciBNaW5pc3RlciwgdWViZXJ6ZXVndCwgdW5kCmJpdHRlIFNpZSwgbWVpbmUgdm9yenVlZ2xpY2hlIEhvY2hhY2h0dW5nIHp1IGFremVwdGllcmVuLgoKClBTOgpJbiBkZW4gQWt0ZW4gZGllc2VzIEZhbGxlcyBzdGVodC46ICJEZXIgYmVzYWd0ZSBqdW5nZSBNYW5uIHdpcmQgd2VnZW4KcHN5Y2hpc2NoZXIgVW5zdGFiaWxpdGFldCB1bmQgYmV1bnJ1aGlnZW5kZW4gbWVudGFsZW4gU3RvZXJ1bmdlbiwgdmVyc3RhZXJrdApkdXJjaCBlaW4gZ2VzdG9lcnRlcyBGYW1pbGllbmtsaW1hLCB2b20gTWlsaXRhZXJkaWVuc3QgYmVmcmVpdC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUXVlbGxlOiBad2VpZmVsaGFmdCAoQm9pbmcsIDE5LiBKYW4gMjAwNCwgMTI6MzE6MjcpOgp+IyEgcm49QmFtYmkgcnQ9MTA3NDUxMDgyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzQ1MTA4MjYKUGFzcyBhdWYsIGdsZWljaCBrb21tdCBlaW4gQXJ0aWtlbCB2b24gTW9udGFudXMgZGFzcyBoaWVyIFZvcnVydGVpbGUKZ2VnZW51ZWJlciBJdGFsaWVuZXJuIGdlc2NodWVydCB3ZXJkZW4gLi4uIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMQSAoTW9yZ290aCwgMTkuIEphbiAyMDA0LCAyMjoxMjoxNik6CkRlciBNYWdpZXIgaHVlbGx0IFBpdGZhbGwgaW4gZWluZW4gV2lyYmVsc3R1cm0uCiAgLi4uLm5vcm1hbC9zY2h3YXJ6ZXIgTWEgTmFyY29yb3IuLi4uLiA6IFBpdGZhbGwuLi4uLi4gKioqKioqKiogLS0gUHVsdmVyClBpdGZhbGwgc2NoZWludCBlaW5lbiBTY2h3YWVjaGVhbmZhbGwgenUgaGFiZW4uClBpdGZhbGwgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KUGl0ZmFsbCB2ZXJzY2h3aW5kZXQgZ2FueiBsZWlzZS4KW1RvZDpMYXJzXSBOYXJjb3JvciBoYXQgZ2VyYWRlIFBpdGZhbGwgdW1nZWJyYWNodC4KCk0qIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgOikgKE1vcmdvdGgsIDIwLiBKYW4gMjAwNCwgMTQ6NDg6MjApOgpbS2xlcnVzOkJyZXdlcl0ga2FubiBtYWwgYml0dGUgZWluZXIgc2NobmVsbCB6dW0gdGlnZXIga29tbWVuPwpbVG9kOkxhcnNdIEVpbmUgc2NocmVja2xpY2hlIEtyYW5raGVpdCBoYXQgZ2VyYWRlIEJyZXdlciB1bWdlYnJhY2h0LgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxlaWNoZW5zY2hhZW5kdW5nPyAoTW9yZ290aCwgMjAuIEphbiAyMDA0LCAyMzozODoyMSk6CltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIEthdmFsaWVyIHVtZ2VicmFjaHQuCltUb2Q6RWluIE9ya10gV2lyIHNpbmQgT3JrISBXaWRlcnN0YW5kIGlzdCB6d2Vja2xvcyEgRGVpbiBXaXNzZW4gdW5kIERlaW5lCltUb2Q6RWluIE9ya10gQXVzcnVlc3R1bmcgd3VyZGVuIGFzc2ltaWxpZXJ0LgpLSy1QYXJhOiBmZXVlcmJhbGwgKDEtSGFuZCkKS0stUGFyYTogd2lyZiBzdGVybiBuYWNoIGthdmFsaWVyICgxLUhhbmQpCgoKTSogZ3JpbnN0Li4uc2VpbmUgT3JrcyBzaW5kIGdydWVuZGxpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJpdHRlIG1hbCBhbGxlIGRpZSBNYWdpZXIgZWlubG9nZ2VuLi4uIChNb3Jnb3RoLCAyMC4gSmFuIDIwMDQsIDIzOjUyOjE4KToKV3VlcmQgZ2VybiB3aXNzZW4sIG9iIHdpciBkYW5uIGF1Y2ggYXVmIGVpbmUgIlNwaWVsZXJiZXRlaWxpZ3VuZyIgdm9uIGtuYXBwCjE1JSBrb21tZW4sIHdpZSBpbiBlaW5lbSBhbmRlcmVuLCBuaWNodCBuYWVoZXIgZ2VuYW5uZW4gTXVkOgoKW3NdIEdhcmFkb3IgZGVyIEtyaWVnZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyBad2VyZywgQWJlbnRldXJlciBdCltNXSBaYXVyaWVsIGRhcyBGbGFtbWVuZW5nZWxjaGVuICAgICAgICAgICAgICAgICAgICAgICAgICBbIEVyemVuZ2VsLCBIaW1tZWwgXQpbTV0gQmVhIHdpbGwgZGllIERNIHdpZWRlcmhhYmVuICAgICAgICAgICAgICAgWyBMaWViaGFibWFldXNjaGVuLCBUZXVmZWxjaGVuIF0KW1JdIEhvYmJlcyBodWVwZnQgdW0gRGljaCBoZXJ1bSAgICAgICAgICAgICAgICAgICAgICAgIFsgRmVseW54LCBOZWJlbGthdHplbiBdCltFXSBJdCAsIGRlciBFcnNjaGFmZmVyIHZvbiBTb25uZSB1bmQgTW9uZCAgICAgICBbIEZ1c3NlbHp3ZXJnLCBLYXR6ZW50b2V0ZXIgXQpbRV0gUmh5YW4gU2NhbmxhbiBpc3Qgd2llZGVyIGVpbm1hbCBzdGkoZSlsdm9sbCB1bnRlcndlZ3MgWyBWYW1waXIsIFRvcmVhZG9yIF0KW0VdIEplbmFuZHJhICAuLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyBNYXJnYXJpbmUsIFRvcnRlbiBdCgpNKiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJpdHRlIG1hbCBhbGxlIGRpZSBNYWdpZXIgZWlubG9nZ2VuLi4uIChBa2FzaGEsIDIxLiBKYW4gMjAwNCwgMDA6MzE6MDQpOgp+IyEgcm49TW9yZ290aCBydD0xMDc0NjM5MTM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NDYzOTEzOApQRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZUIDopCgpBa2FzaGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQml0dGUgbWFsIGFsbGUgZGllIE1hZ2llciBlaW5sb2dnZW4uLi4gKE1vcmdvdGgsIDIxLiBKYW4gMjAwNCwgMDA6MzE6NTApOgp+IyEgcm49QWthc2hhIHJ0PTEwNzQ2NDE0NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc0NjM5MTM4CkR1IGhhc3QgQmxhZWh1bmdlbi4uLmlzcyBuaWNodCBzbyB2aWVsZSBad2llYmVsbi4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJpdHRlIG1hbCBhbGxlIGRpZSBNYWdpZXIgZWlubG9nZ2VuLi4uIChNb3Jnb3RoLCAyMS4gSmFuIDIwMDQsIDAxOjA1OjU1KToKfiMhIHJuPUFrYXNoYSBydD0xMDc0NjQxNDY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NDYzOTEzOApJbW1lciBub2NoIGJlc3NlciBhbHMgZGFzOgoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSoKW01dIEJlYSB3aWxsIGRpZSBETSB3aWVkZXJoYWJlbiAgICAgICAgICAgICAgIFsgTGllYmhhYm1hZXVzY2hlbiwgVGV1ZmVsY2hlbiBdCltSXSBIb2JiZXMgaHVlcGZ0IHVtIERpY2ggaGVydW0gICAgICAgICAgICAgICAgICAgICAgICBbIEZlbHlueCwgTmViZWxrYXR6ZW4gXQpbRV0gSXQgLCBkZXIgRXJzY2hhZmZlciB2b24gU29ubmUgdW5kIE1vbmQgICAgICAgWyBGdXNzZWx6d2VyZywgS2F0emVudG9ldGVyIF0KW0VdIFJoeWFuIFNjYW5sYW4gaXN0IHdpZWRlciBlaW5tYWwgc3RpKGUpbHZvbGwgdW50ZXJ3ZWdzIFsgVmFtcGlyLCBUb3JlYWRvciBdCltFXSBKZW5hbmRyYSAgLi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsgTWFyZ2FyaW5lLCBUb3J0ZW4gXQoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSoKfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNSBUZWlsbmVobWVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBBbnBhc3N1bmcgZGVyIEZsdWNodHJpY2h0dW5nIChab29rLCAyMS4gSmFuIDIwMDQsIDE1OjI1OjI0KToKfiMhIG9uPVpvb2sgb3Q9MTA3NDY5NDgxOCBvZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgcm49QnJhbiBydD0xMDc0Njk0NTU0IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA3MzQ3NDA1MApPaCwgRGFua2UgQnJhbiwgaWNoIGhhdHRlIGF1Y2ggdm9yLCBtYWwgZGllIHdpZWRlciBrZWhyZW5kZW4gUGFkKi1QaHJhc2VuCnp1IERva3VtZW50YXRpb25zendlY2tlbiBoZXJhdXN6dXN1Y2hlbi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS29tbXVuaWthdGlvbiAoTGlhcmEsIDIxLiBKYW4gMjAwNCwgMTU6NTI6MzMpOgp+IyEgcm49TXVhZGliIHJ0PTEwNzQ2OTU4MTEgcmc9ZXRpa2V0dGUKfiMhIHRpZD0xMDc0Njk1ODExCklzdCBoZXV0ZSBkZXIgMS4gQXByaWwgb2RlciBnZWh0J3MgZGlyIGVpbmZhY2ggc28gbmljaHQgZ3V0PyA7PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNb3Jnb3RoLCAyMS4gSmFuIDIwMDQsIDE5OjEyOjQwKToKCktlbGx5QnVuZHkgdGVpbHQgRGlyIG1pdDogc29vbyBqZXR6dCBoYWJpY2ggZW5kbGljaCBkaWUgZXJ6aXN0dXBzZSAqZnJldSogOikKRHUgZ3JpbnN0IEtlbGx5QnVuZHkgYXVzIGRlciBGZXJuZSBhbi4KRHUgdGVpbHN0IEtlbGx5YnVuZHkgbWl0OiBhbHMgY2hhb3Qgc29sbHRlIGRhcyBkb2NoIG5pY2h0IHNvIHNjaHdlciBzZWluLApEdSB0ZWlsc3QgS2VsbHlidW5keSBtaXQ6IG9kZXI/CktlbGx5YnVuZHkgaXN0IGdlcmFkZSBuaWNodCBkYTogRXR3YXMgamFnZW4gKmdydW1tZWwqCktlbGx5QnVuZHkgdGVpbHQgRGlyIG1pdDogbmljaHQgbWl0IGF1c2QgKzQgcmluZyB1bmQgc2VnZW4gOikKRHUgdGVpbHN0IEtlbGx5YnVuZHkgbWl0OiBhaGhqYQpLZWxseWJ1bmR5IGlzdCBnZXJhZGUgbmljaHQgZGE6IEV0d2FzIGphZ2VuICpncnVtbWVsKgpLZWxseUJ1bmR5IHRlaWx0IERpciBtaXQ6IHVuZCBkZWluZXIgbmV0dGVuIGRhZW1vbmVucGVpdHNjaGUgOikKS2VsbHlCdW5keS0+TW9yZ290aCBncmluc3QgRGljaCBkYWVtb25pc2NoIGF1cyBkZXIgRmVybmUgYW4uCi4uLgpbVG9kOkxhcnNdIEVpbiBDaGVydWIgaGF0IGdlcmFkZSBLZWxseWJ1bmR5IHVtZ2VicmFjaHQuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IEFucGFzc3VuZyBkZXIgRmx1Y2h0cmljaHR1bmcgKE11YWRpYiwgMjIuIEphbiAyMDA0LCAxMToxNjozOSk6Cn4jISBybj1Ob2tpIHJ0PTEwNzQ3MDQzMDcgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD0xMDczNDc0MDUwCnZldGVyYW5lbmZlYXR1cmU/CnNvd2FzIHdpZSBwZXJtYW5lbnQgd2VuaWdlciBoYWVuZGUgb2RlciBzb3dhcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBzdWVzc2VzdGUgVW5zY2h1bGQuLi4gKE1vcmdvdGgsIDIyLiBKYW4gMjAwNCwgMjE6MDQ6MTgpOgpMZWliaSBzY2hhdXQgenUgMzglIHVuc2NodWxkaWcuCkR1IGJyaWNoc3Qgdm9yIExhY2hlbiB6dXNhbW1lbi4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEZvb2JhciwgMjIuIEphbiAyMDA0LCAyMTo0ODoyOCk6CltUcnZlczpNZXJjdXRpb10gYnR3IGhhYmUgaWNoIHRhbW94aWZlbiBuZWJlbiBtaXIgc2l0emVuIC4uLiBkZXIgYXVjaCBtYWwKW1RydmVzOk1lcmN1dGlvXSB3aWVkZXIgb25saW5lIGlzdCA6KQpbVHJ2ZXM6TGlhcmFdIGF1Y2ggc3Vlc3MgbnVyIGRlciBuYW1lIGlzIHNvIHRyYXVyaWNoCltUb2Q6TGFyc10gRWluIFRlbXBlbHJpdHRlciBoYXQgZ2VyYWRlIFRhbW94aWZlbiB1bWdlYnJhY2h0LgpbVG9kOkVpbiBUZW1wZWxyaXR0ZXJdIFdpZSBrb25udGVzdCBEdSBlcyB3YWdlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdvZXR0ZXIgLi4uIChMaWFyYSwgMjIuIEphbiAyMDA0LCAyMTo1NToxNik6Clpvb2sgaXN0IGFscyBhYndlc2VuZCBnZWtlbm56ZWljaG5ldC4KR3J1bmQ6IHdlZwpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogem9vayBpcyB3ZWNrCkRlaW4gRnJldW5kIFpvb2sgdGVpbHQgRGlyIG1pdDogd2llICJ3ZWNrIj8KRGVpbiBGcmV1bmQgWm9vayB0ZWlsdCBEaXIgbWl0OiBFSW5nZXdlY2t0PyA7KQpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDoga2VubnN1IGRlaW5lIGVpZ2VuZSB3ZWNrbWVsZHVuZyBuZXQ/CkRlaW4gRnJldW5kIFpvb2sgdGVpbHQgRGlyIG1pdDogYWhzbywgaGFiIGljaCB2b3JoaW4gYXVzIHZlcnNlaGVuIGdlYWVuZGVydCA7KQpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogYXVzIHZlcnNlaGVuPwpEZWluIEZyZXVuZCBab29rIHRlaWx0IERpciBtaXQ6IGlyZ2VuZG5lbiBhbGkgZXJ3aXNjaHQgOykKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IG1laW5lIGd1ZXRlIGR1IGJpc3QgZ290dCBkdSBzb2xsdGVzdCB2ZXJkYW1tdApEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogbm9jaG1hIGd1Z2dlbiB3YXMgZHUgYXVzIHZlcnNlaGVuIGFlbmRlcnN0IDspCkxpYXJhIG1vcHBlcnQgYXVzIGRlciBGZXJuZS4gCkRlaW4gRnJldW5kIFpvb2sgdGVpbHQgRGlyIG1pdDogV2FydW0/IEljaCBmaW5kIGRhcyBmdWVyIG1pY2ggc2VociBTcGllbHNwYXNzCkRlaW4gRnJldW5kIFpvb2sgdGVpbHQgRGlyIG1pdDogZm9lcmRlcm5kLCB3ZW5uIG1hbiBtYWwgbmljaHQgd2Vpc3MsIHdhcyBtYW4KRGVpbiBGcmV1bmQgWm9vayB0ZWlsdCBEaXIgbWl0OiB0dXQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTGlhcmEsIDIyLiBKYW4gMjAwNCwgMjI6MTI6MTMpOgpEdSB0ZWlsc3QgVGRiIG1pdDogd28gdHJlaWJzdCBkdSBkaWNoIGRlbm4gcnVtPwpbVG9kOkxhcnNdIEVpbmUgU3VtcGZrcm9ldGUgaGF0IGdlcmFkZSBUZGIgdW1nZWJyYWNodC4KClNvIGdlbmF1IHdvbGx0ZSBpY2ggZXMgZ2FyIG5pY2h0IHdpc3Nlbi4gOz4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKE1vcmdvdGgsIDIyLiBKYW4gMjAwNCwgMjI6Mjg6MzcpOgp+IyEgcm49TGlhcmEgcnQ9MTA3NDgwNTkzMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzQ4MDU5MzMKRXIgaGF0IGRvY2ggZ2FyIG5peCBnZXNhZ3QuLi4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMVyAoTGlhcmEsIDIyLiBKYW4gMjAwNCwgMjI6Mjk6MDcpOgp+IyEgcm49TW9yZ290aCBydD0xMDc0ODA2OTE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NDgwNTkzMwpXbyBkdSBSZWNodCBoYXN0LCBoYXN0IGR1IFJlY2h0LiA6PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRkxXIChab29rLCAyMi4gSmFuIDIwMDQsIDIyOjM5OjQ5KToKfiMhIHJuPUxpYXJhIHJ0PTEwNzQ4MDY5NDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc0ODA1OTMzCk5vbnZlcmJhbGUgS29tbXVuaWthdGlvbj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogU29tbWVycGFydHkgSGFsbGUgKENhdHdlYXpsZSwgMjMuIEphbiAyMDA0LCAwODozMzowMCk6Cn4jISBvbj1Gb29iYXIgb3Q9MTA3NDc3MDE5OCBvZz1wYXJ0eQp+IyEgcm49Q3JvZnQgcnQ9MTA3NDc2OTkyMiByZz1wYXJ0eQp+IyEgdGlkPTEwNzQwMDQyMjUKV2llIGljaCBnZXJhZGUgYmVpIGdvb2dsZSBiZW1lcmt0ZSBiZWdpbm50IGhldXRlIGx0LiBjaGluZXNpc2NoZW0gS2FsZW5kZXIgZGFzCkphaHIgMjAwNC4KCmluZm8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBTb21tZXJwYXJ0eSBIYWxsZSAoQ2F0d2VhemxlLCAyMy4gSmFuIDIwMDQsIDA4OjMzOjAxKToKfiMhIG9uPUNyb2Z0IG90PTEwNzQ3NzE4NzYgb2c9cGFydHkKfiMhIHJuPUZvb2JhciBydD0xMDc0NzcwMTk4IHJnPXBhcnR5Cn4jISB0aWQ9MTA3NDAwNDIyNQpEdSBpcnJzdC4gIEVzIGJlZ2lubnQgZGFzIEphaHIgNDcwMS4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogU29tbWVycGFydHkgSGFsbGUgKENhdHdlYXpsZSwgMjMuIEphbiAyMDA0LCAwODozMzowMik6Cn4jISBvbj1Gb29iYXIgb3Q9MTA3NDc3MzU3MSBvZz1wYXJ0eQp+IyEgcm49Q3JvZnQgcnQ9MTA3NDc3MTg3NiByZz1wYXJ0eQp+IyEgdGlkPTEwNzQwMDQyMjUKV2FobnNpbm4uIFNvIGthbm4gbWFuIHNpY2ggaXJyZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogU29tbWVycGFydHkgSGFsbGUgKFpvb2ssIDIzLiBKYW4gMjAwNCwgMTM6MDM6NTgpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNzQ4NDMxODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc0MDA0MjI1CkljaCBwcm90ZXN0aWVyZSBnZWdlbiBkaWUgVmVybGVndW5nIG5hY2ggU2NobWFycm4uIAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBTb21tZXJwYXJ0eSBIYWxsZSAoQ3JvZnQsIDIzLiBKYW4gMjAwNCwgMTM6MDg6NTcpOgp+IyEgcm49Wm9vayBydD0xMDc0ODU5NDM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NDAwNDIyNQpFYmVuLiAgRGEgc3RhbmQgZ2FyIG5peCBsdXN0aWdlcyBkcmluLiAgTnVyIHRyb2NrZW5lIEZha3Rlbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogU29tbWVycGFydHkgSGFsbGUgKENhdHdlYXpsZSwgMjMuIEphbiAyMDA0LCAxMzoyODo1OCk6Cn4jISBybj1Dcm9mdCBydD0xMDc0ODU5NzM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NDAwNDIyNQpJY2ggYmluIGluIG1laW5lbSBQYXJ0eS1SdWJyaWstUmVpbmhhbHR1bmdzd2FobiBtaXRoaW4gdW5kaWZmZXJlbnppZXJ0IDotKQoKV29sbHQgaWhyIGxpZWJlciBlaW4gRlVQIG5hY2ggRGlza3Vzc2lvbj8gT2RlciBnaWJ0cyBqZXR6dCBuZSBuZXVlIFJ1YnJpawoiZmFrdGVuIj8KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IFNvbW1lcnBhcnR5IEhhbGxlIChDcm9mdCwgMjMuIEphbiAyMDA0LCAxMzoyOTozMCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA3NDg2MDkzOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzQwMDQyMjUKQWxsZ2VtZWluZXMgd2FlciB3b2hsIGRhcyBiZXN0ZS4gIERhbm4gaGF0IEx1ZyBhdWNoIG5vY2ggd2FzIGRhdm9uLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBTb21tZXJwYXJ0eSBIYWxsZSAoTWFoYXJldCwgMjMuIEphbiAyMDA0LCAxMzozNjoyNyk6Cn4jISBybj1Dcm9mdCBydD0xMDc0ODYwOTcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NDAwNDIyNQpEZXIgd2lsbCBkb2NoIGVoIG5pY2h0IHp1ciBQYXJ0eS4gIAoKTWFoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IFNvbW1lcnBhcnR5IEhhbGxlIChDYXR3ZWF6bGUsIDIzLiBKYW4gMjAwNCwgMTM6Mzg6MDkpOgp+IyEgcm49TWFoYXJldCBydD0xMDc0ODYxMzg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NDAwNDIyNQpMdWcgd2lsbCBuaWNodCB6dXIgUGFydHk/IERPY2ggbnVyIHdlZ2VuIFdhY2tlbiwgZ2VsbD8KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWRsZW5kZSBBenViaXMgKE1haGFyZXQsIDIzLiBKYW4gMjAwNCwgMTU6NDg6MTApOgooMTU6MTApIFRSIE1hZ286IHNvIHdpciBrb2VubmVuIHdlaXRlcgooMTU6MTEpIFRSIE1haGFyZXQ6IFZvcnNpY2h0IGhvZWhlci4KKDE1OjExKSBUUiBNYWhhcmV0OiBmbHVjaHRyaWNodHVuZyBzdwooMTU6MTEpIFRSIE1haGFyZXQ6IE1hY2ggZGllIFZvcnNpY2h0IGhvZWhlcgooMTU6MTIpIFRSIE1haGFyZXQ6IHNjaG5lbGwKKDE1OjEyKSBUUiBNYWhhcmV0OiBNYWNoIGRpZSBWb3JzaWNodCBob2VoZXIKKDE1OjEyKSBUUiBNYWhhcmV0OiBNYWNoIGRpZSBWb3JzaWNodCBob2VoZXIKKDE1OjEyKSBUUiBNYWhhcmV0OiBlcyB3aXJkIGdlZmFlaHJsaWNoCigxNToxMikgVFIgTWFoYXJldDogdW5kIHp3YXIgamV0enQKKDE1OjEyKSBUUiBNYWhhcmV0OiBNYWNoIGRpZSBWb3JzaWNodCBob2VoZXIKKDE1OjEyKSBUUiBNYWhhcmV0OiBNYWNoIGRpZSBWb3JzaWNodCBob2VoZXIKKDE1OjEyKSBUUiBNYWhhcmV0OiBNYWNoIGRpZSBWb3JzaWNodCBob2VoZXIKKDE1OjEyKSBUUiBNYWhhcmV0OiBNYWNoIGRpZSBWb3JzaWNodCBob2VoZXIKKDE1OjEyKSBUUiBNYWhhcmV0OiBNYWNoIGRpZSBWb3JzaWNodCBob2VoZXIKKDE1OjEyKSBUUiBNYWhhcmV0OiBNYWNoIGRpZSBWb3JzaWNodCBob2VoZXIKKDE1OjEzKSBUUiBNYWhhcmV0OiB2ZXJkYW1tdAooMTU6MTMpIFRSIE1haGFyZXQ6IHdvIGJpc3RlCigxNToxMykgVFIgTWFoYXJldDogUkFVUwooMTU6MTMpIFRSIE1haGFyZXQ6IFJBVVMKKDE1OjEzKSBUUiBNYWhhcmV0OiBSQVVTCigxNToxMykgVFIgTWFoYXJldDogUkFVUwooMTU6MTMpIFRSIE1haGFyZXQ6IFJBVVMKKDE1OjEzKSBUUiBNYWhhcmV0OiBSQVVTCigxNToxMykgVFIgTWFoYXJldDogUkFVUwooMTU6MTMpIFRSIE1haGFyZXQ6IHNlCigxNToxMykgVFIgTWFoYXJldDogc3cKKDE1OjEzKSBUUiBNYWhhcmV0OiBzdwooMTU6MTMpIFRSIE1haGFyZXQ6IHJhdXMKKDE1OjE0KSBUUiBNYWhhcmV0OiBpY2ggbXVzcyB0YW5rZW4KKDE1OjE0KSBUUiBNYWhhcmV0OiBzb3JyeQooMTU6MTQpIFRSIFRvZDogTUFHTyBIQVQgREFTIFRFQU0gVkVSTEFTU0VOLgooMTU6MTQpIFRSIDogRGFzIFRlYW0gbG9lc3Qgc2ljaCBhdWYuIAoKVGphamEuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IElkbGVuZGUgQXp1YmlzIChGb29iYXIsIDIzLiBKYW4gMjAwNCwgMTU6NTA6MTEpOgp+IyEgcm49TWFoYXJldCBydD0xMDc0ODY5MjkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NDg2OTI5MApXbyB3YXJ0IElociBkZW5uIGRhPyA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSWRsZW5kZSBBenViaXMgKE1haGFyZXQsIDIzLiBKYW4gMjAwNCwgMTU6NTA6NDEpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNzQ4Njk0MTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc0ODY5MjkwClJvdGVyIFJ1YmluLiAgU2NobGVjaHRlciBPcnQgenVtIGlkbGVuIC4uLgoKTWFoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSWRsZW5kZSBBenViaXMgKE1haGFyZXQsIDIzLiBKYW4gMjAwNCwgMTU6NTI6MTEpOgp+IyEgcm49TWFoYXJldCBydD0xMDc0ODY5NDQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NDg2OTI5MApPaywgUnViaW5lIHNpbmQgaW1tZXIgcm90LiBJY2ggbWVpbnRlIGRlbiBFd2lnZW4uCgpNYWhhLCBrZWluIFp3ZXJnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERpZSBuYWVjaHN0ZSAiQmlnIEJyb3RoZXIiLVN0YWZmZWwuLi4gKEJhbWJpLCAyMy4gSmFuIDIwMDQsIDE2OjM4OjE0KToKfiMhIHJuPU5vbm5lIHJ0PTEwNzQ3NTg3Mjggcmc9d3d3Cn4jISB0aWQ9MTA3NDczMDMzNgpJY2ggZ2xhdWJlLCBhdWNoIGRhbWFscyBpbiBkZXIgT3JpZ2luYWxzdGFmZmVsIGhhdCBtYW4ga2F1bSBldHdhcyB2b24gZGVtCnZlcnRhbmRlbiwgd2FzIGRpZSBnZXNhZ3QgaGFiZW4uIEFiZXIgbmljaHQsIHdlZ2VuIGRlcyB6dSBob2hlbiBOaXZlYXVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGllIG5hZWNoc3RlICJCaWcgQnJvdGhlciItU3RhZmZlbC4uLiAoQWxrb2hvbCwgMjMuIEphbiAyMDA0LCAxNjozOToxMik6Cn4jISBybj1CYW1iaSBydD0xMDc0ODcyMjk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NDczMDMzNgppY2ggaGFiIG5pZW1hbHMgZGFtaXQgc2FnZW4gd29sbGVuIGljaCBrb2VubnRlIGlyZ2VuZHdhcyBuaXZlYXV2b2xsZXMgdWViZXIKZGllIGxpcHBlbiBiZWtvbW1lbgoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNlaGVyaGFldXNlci4uLiAoTGlhcmEsIDIzLiBKYW4gMjAwNCwgMTg6Mjk6MTMpOgp+IyEgcm49Wm9vayBydD0xMDc0ODc4NjU0IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA3NDg3ODY1NApBaCwgcHJpbWEhCgpBbHNvLCB6dW5hZWNoc3QgbXVzcyBpY2ggYW5tZXJrZW4sIGRhc3MgZGllIEhlaXp1bmcgc3RhZW5kaWcgdHJvcGZ0IHVuZCBkaWUKVHVlciBwZXJtYW5lbnQgcXVpZXRzY2h0LgpBdXNzZXJkZW0gemllaHQgZXMgZHVyY2ggZGllIEZlbnN0ZXIgLi4uClp1c2FldHpsaWNoIGlzdCBtZWluIEhhdXMgc2VociBhYmdlbGVnZW4gdW5kIGljaCBoYWV0dGUgZ2VybmUgbWVociBCZXN1Y2guCgpEaWUgS3JlYXRpdml0YWV0IGJlenVlZ2xpY2ggZGVyIG5vY2ggZmVobGVuZGVuIERldGFpbHMgd2FyIGF1Y2ggc2Nob25tYWwKYmVzc2VyLgpJY2ggaGFldHRlIHVlYnJpZ2VucyBhdWNoIGdlcm5lIGVpbmVuIFN0cm9tYW5zY2hsdXNzLCB1bSBkYXMgV2Fzc2VyYmV0dCB6dQpoZWl6ZW4uCgpBdXNzZXJkZW0gaGFsdGVuIGRpZSBNb2ViZWwgbmljaHQgbGFuZ2UgZ2VudWchCgpMaWViZSBHcnVlc3NlLApMaWFyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTZWhlcmhhZXVzZXIuLi4gKFpvb2ssIDIzLiBKYW4gMjAwNCwgMTg6MzI6MDQpOgp+IyEgcm49TGlhcmEgcnQ9MTA3NDg3ODk1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzQ4Nzg2NTQKQWxsZSBCZWxhbmdlIHNjaGxpZXNzdCB1ZWJyaWdlbnMgYXVjaCBkZW4gQWJyaXNzIHZvbiBIYWV1c2VybiBlaW4uCgpab29rIHJlaWNodCBWYW5pb24gZWluZSBBYnJpc3NiaXJuZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNlaGVyaGFldXNlci4uLiAoTGlhcmEsIDIzLiBKYW4gMjAwNCwgMTg6MzM6MzQpOgp+IyEgcm49Wm9vayBydD0xMDc0ODc5MTI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NDg3ODY1NApIbSwgZGFtaXQgbWlyIGRhcyBBbmdzdCBtYWNodCwgbXVzc3RlIGRhcyBzY2hvbiBpbiBlaW5lIGFuZGVyZSBSdWJyaWsKc2NocmVpYmVuLiA6PgpBdXNzZXJkZW0ga29lbm50IGlociBqYSBnZXJuZSBtYWwgdmVyc3VjaGVuLCBlaW4gWndlcmdlbmhhdXMgYWJ6dXJlaXNzZW4uIDs+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTZWhlcmhhZXVzZXIuLi4gKERhcmt3aW5nLCAyMy4gSmFuIDIwMDQsIDE4OjM0OjM2KToKfiMhIHJuPUxpYXJhIHJ0PTEwNzQ4NzkyMTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc0ODc4NjU0CkljaCBiZWFudHJhZ2UgZGllIFJ1ZWNrdmVybGVndW5nIHZvbiBTcmFiaSdzIFNlaGVyaGF1cyBpbiBkZW4gU2NoYWNodCEgRGFzCmhhdHRlIHZpZWwgbWVociBTdGlsIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWFhYWFhYWhqYS4uLiAoQW55c2lkb3JhLCAyMy4gSmFuIDIwMDQsIDE5OjI1OjQ3KToKRGllIEh5ZHJhIGlzdCBzY2hvbiAzNiBNaW51dGVuIGFud2VzZW5kIHVuZCBibGVpYnQgbm9jaCBjYS4gMCBNaW51dGVuIQpFcndhcnRldCAob2ZmbGluZSk6IFNoYWtlZGJlZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEJsb25kaW5lbnRlc3QgKEFuYXRvbCwgMjQuIEphbiAyMDA0LCAxMjoxNjowMSk6Cn4jISBybj1Ob2tpIHJ0PTEwNzQ5NDI4NjYgcmc9d2l0emUKfiMhIHRpZD0xMDc0NzgwNzEyCiJva2kiPyA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVsZmlzY2hlIFBhcGFnZWllbiAoQ3JvZnQsIDI0LiBKYW4gMjAwNCwgMTI6MzE6MzMpOgpEdSBiaXN0IGF1ZiBkZW0gRG9yZndlZyBkZXIgRWxmZW5zaWVkbHVuZy4KRGVyIFdlZyBmdWVocnQgdm9uIFdlc3Rlbiwgdm9tIEVpbmdhbmcgZGVyIFNpZWRsdW5nLCBuYWNoIE9zdGVuLCBiaXMgYW4KZGllIFBhbGlzYWRlIGhlcmFuLiBBbSBub2VyZGxpY2hlbSBXZWdlc3JhbmQgc3RlaHQgZWluIEdhc3RoYXVzLCBhdXMgZGVtCnZlcnNjaGllZGVuZSBTdGltbWVuIHp1IGhvZXJlbiBzaW5kLiBJbSBTdWVkZW4gZnVlaHJ0IGVpbiBXZWcgenUgZWluZW0KdW51ZWJlcnNlaGJhciBob2hlbiBCYXVtLgpFcyBnaWJ0IHZpZXIgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCkVpbiBQYXBhZ2VpLgo6dW50IGVsZgpEZXIgUGFwYWdlaSBoYXQgc2VociBmYXJiZW5mcm9oZSwgbGFuZ2UgRmVkZXJuIHVuZCBkaWUgdmVyYmx1ZWZmZW5kZSAKRmFlaGlna2VpdCBpbiBlbGZpc2NoZXIgU3ByYWNoZSB6dSBzcHJlY2hlbi4KRXIgaXN0IGFic29sdXQgZml0LiAxMDAlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCbG9uZGluZW50ZXN0IChBbGtvaG9sLCAyNC4gSmFuIDIwMDQsIDEzOjA3OjU5KToKfiMhIHJuPU11YWRpYiBydD0xMDc0OTQ1ODcwIHJnPXdpdHplCn4jISB0aWQ9MTA3NDc4MDcxMgp3aWVzbyBkdSBkZW4gc2NocmVpYnN0IGthbm4gaWNoIGRpciBhdWNoIG5pY2h0IGJlYW50d29ydGVuCgpBbGtpClAuUy4gYWxzbyBUYXhvbm9taWUga2xpbmd0IHNjaHdlciBuYWNoIG1laHIgU3RldWVybiB1bmQgZGEgd2lsbCBpY2ggbmljaHQKdW5iZWRpbmd0IGdlcm5lIG1laHIgbWl0IHp1IHR1biBoYWJlbiBhbHMgbm9ldGlnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUcmlnZ2VyLi4uIChPZ28sIDI0LiBKYW4gMjAwNCwgMTk6MDA6MTYpOgpbR3JhdHM6RGFya3dpbmddIFBmZWlsLCBkZXIgbmFjaCBlbmRlIHplaWd0CkZvb2JhciBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgouLi4KW0dyYXRzOkRhcmt3aW5nXSBsb2wsIFRyZWZmZXIgdmVyc2Vua3QKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbWFuZGEgc3RlaHQgYXVjaCBhdWYgSHVuZGUgLi4uIChBbGNpbmEsIDI0LiBKYW4gMjAwNCwgMjM6MzE6NDMpOgplYmVuIHBhc3NpZXJ0OgoKQW0gUG9ydCBWYWluZXIgU3RhZHR0b3IuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuIHVuZCB3ZXN0ZW4uCkFtYW5kYSBkaWUgSHVyZS4KRWluIFNhbmR0aWdlci4KRWluIG1hZ2lzY2hlcyBQb3J0YWwuCklkaW90IHRyb3R0ZXQgaGVyZWluLgpBbWFuZGEgc2FndDogSGFsbG8gSWRpb3QhCkFtYW5kYSBncmFiYmVsdCBhbiBJZGlvdCBoZXJ1bS4KQW1hbmRhIHNhZ3Q6IFdpZSB3YWVycyBkZW5uIG1pdCB1bnMsIEtsZWluZXI/CkR1IHNhZ3N0OiBpZGlvdCwgaGF1IGFiCklkaW90IGhhdXQgYWIuCkFtYW5kYSBzY2h3ZWJ0IGluIGVpbmVyIFdvbGtlIHZvbiBQYXJmdWVtIG5hY2ggV2VzdGVuLgoKQWxjaW5hIC0gc3RhdW50IHVlYmVyIEFtYW5kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZSAoTGlhcmEsIDI1LiBKYW4gMjAwNCwgMDE6MTk6MzApOgprd2VyIGVyd2FydGV0ZQpNaXJqYW0uLi4uLi4uLi4ud1MgTWVzaXJpaS4uLi4uLi4uSi5aIExpbGxlYnJvci4uLi4uLi53UyBTaGFlZW5hLi4uLi4uLi4uLlMKVGh1Zmhpci4uLi4uLi4uSi5TIEFueXNpZG9yYS4uLi4uLkl3bSBPZ28uLi4uLi4uLi4uLi5KLm0gSmVuYW5kcmEuLi4uLi4uSi5SCk1vcmdvdGguLi4uLi4uLmkuUgp3ZWdtZWxkdW5nIGxpbGxlYnJvcgpMaWxsZWJyb3IgaXN0IGFscyBhYndlc2VuZCBnZWtlbm56ZWljaG5ldC4KR3J1bmQ6IEJpbiBhbSBzY3JpcHRlbiwgYml0dGUgbmljaHQgc3RvZXJlbiA6LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBUcmVmZmRpIEJlcmxpbiAoTGlhcmEsIDI1LiBKYW4gMjAwNCwgMjA6MDQ6MzcpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA3NTA0NjQ0NyByZz10cmVmZmVuCn4jISB0aWQ9MTA3NTAyNjg4NApNZWhyIGZ1ZXIgTGVpYmkgdW5kIG1pY2guIDs+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFtYW5kYSBzdGVodCBhdWNoIGF1ZiBIdW5kZSAuLi4gKE1haGFyZXQsIDI1LiBKYW4gMjAwNCwgMjA6NTY6MDYpOgp+IyEgcm49Um9jaHVzIHJ0PTEwNzUwNjA1Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDc0OTgzNTAzCk5hLCB3ZW5uIGR1IGRhcyBzYWdzdCAuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBbWFuZGEgc3RlaHQgYXVjaCBhdWYgSHVuZGUgLi4uIChHbG9pbnNvbiwgMjUuIEphbiAyMDA0LCAyMDo1OTo0Myk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwNzUwNjA1NjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc0OTgzNTAzClJvY2h1cyEgSWNoIGJpbiBlbXBvZXJ0ISBWZXJnaXNzIGJlaSBkZWluZW4gZW1waXJpc2NoZW4gU3R1ZGllbiBiaXR0ZSBuaWNodApkaWUgRmlzY2hibGFzZSBvZGVyIGRlbiBaaWVnZW5kYXJtLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxpZWJlciBub2NobWEgdWViZXJsZWdlbiAuLi4gOz4gKExpYXJhLCAyNS4gSmFuIDIwMDQsIDIxOjQwOjUzKToKRHUgdGVpbHN0IFh4eHh4eHggbWl0OiBwZnQgZHUgYmlzdCBqYSBuZXQgbWEgbWVpbiBmcmV1bmQgOj4KWHh4eHh4eCB0ZWlsdCBEaXIgbWl0OiBtb20gaWNoIHRlbCBtaXQgcGFkcmVpYyBbMjE6MzhdCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYSBiaW4gaWNoIGphIGJlcnVoaWd0IChOZWRpbWUsIDI1LiBKYW4gMjAwNCwgMjE6NDk6MzEpOgpJbiBkaWVzZW0gWmltbWVyIHNjaGxpZWYgRW1pbHkgS2xvcGVrLiBEZXIgUmF1bSBpc3QgRGlyIGlyZ2VuZHdpZSB1bmhlaW1saWNoLgpDYXR3ZWF6bGUgaXN0IGRhLiBEdSBmdWVobHN0IERpY2ggc2ljaGVyLgoKTmVkaW1lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3NvLCBlaW4gS2FldHpjaGVuIHp1bSB2ZXJuYXNjaGVuIDopIChNb3Jnb3RoLCAyNi4gSmFuIDIwMDQsIDE0OjU5OjMyKToKW0ZyZXVuZGU6RXBwaV0gbWFsIG1laW4gZXNzZW4gamFnZW4gZ2VoZW4gOikKW0ZyZXVuZGU6UmFuZ29ybiBzY2hudXJydCB6dW0gQWJzY2hpZWQgYXVzIGRlciBGZXJuZS5dClJhbmdvcm4gICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpNKiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZhbGVudGluc3RhZyAoQ2F0d2VhemxlLCAyNy4gSmFuIDIwMDQsIDEzOjE2OjAzKToKfiMhIG9uPU1haGFyZXQgb3Q9MTA3NTIwNDc5NSBvZz13d3cKfiMhIHJuPU5vbm5lIHJ0PTEwNzUyMDQ1MzQgcmc9d3d3Cn4jISB0aWQ9MTA3NTIwNDUzNApPaCwgVmFsZW50aW5zdGFnIGlzdCBudXIgZnVlciBkaWUgRnJhdWVuPyBJY2ggZGFjaHRlIGltbWVyLCBkYXMgd2FlcgpiZWlkc2VpdGlnLgpVbmQgQmxvd2pvYiBudXIgZWlubWFsIGltIEphaHI/ICBXYXMgaGFiZW4gTWFlbm5lciBnZWdlbiBCbG93am9icywgZGFzcyBzaWUKaWhuIG5pY2h0IG9lZnRlciB2ZXJ0cmFnZW4/CgpNYWhhIG11c3Mgd29obCBpaHIgV2VsdGJpbGQga29ycmlnaWVyZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFZhbGVudGluc3RhZyAoQ2F0d2VhemxlLCAyNy4gSmFuIDIwMDQsIDEzOjE2OjA1KToKfiMhIG9uPUJyYW4gb3Q9MTA3NTIwNTA3MSBvZz13d3cKfiMhIHJuPU1haGFyZXQgcnQ9MTA3NTIwNDc5NSByZz13d3cKfiMhIHRpZD0xMDc1MjA0NTM0ClNvbGx0ZSBlcyBuaWNodCBhdWNoIGVoZXIgZWluIFN0ZWFrIHNlaW4gc3RhdHQgbmVtIFNjaG5pdHplbD8KQnJhbiwgd2lyZCBkZW4gVmVyZGFjaHQgbmljaHQgbG9zLCBkYXNzIGRpZSBTZWl0ZSB2b24gZWluZXIgZmF1bGVuIHVuZC9vZGVyCihzdGVha2dyaWxsKXVuZXJmYWhyZW5lbiBGcmF1IHN0YW1tdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVmFsZW50aW5zdGFnIChDYXR3ZWF6bGUsIDI3LiBKYW4gMjAwNCwgMTM6MTY6MDYpOgp+IyEgb249TWFoYXJldCBvdD0xMDc1MjA1MjA3IG9nPXd3dwp+IyEgcm49QnJhbiBydD0xMDc1MjA1MDcxIHJnPXd3dwp+IyEgdGlkPTEwNzUyMDQ1MzQKV2llIGlzdCBkYXMgZWlnZW50bGljaCBtaXQgVmVnZXRhcmllcm4/CgpNYWhhLCBTcGlvbiB1bmQgR2lmdG1pc2NoZXIgYUQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFZhbGVudGluc3RhZyAoQ2F0d2VhemxlLCAyNy4gSmFuIDIwMDQsIDEzOjE2OjA3KToKfiMhIG9uPU5vbm5lIG90PTEwNzUyMDUyNjMgb2c9d3d3Cn4jISBybj1NYWhhcmV0IHJ0PTEwNzUyMDUyMDcgcmc9d3d3Cn4jISB0aWQ9MTA3NTIwNDUzNApXYXMgbWljaCBzY2hvbiBpbW1lciBpbnRlcmVzc2llcnQgaGF0OiBzY2hsdWNrZW4gVmVnYW5lcmlubmVuIG5pY2h0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVmFsZW50aW5zdGFnIChDYXR3ZWF6bGUsIDI3LiBKYW4gMjAwNCwgMTM6MTY6MDgpOgp+IyEgb249TWFoYXJldCBvdD0xMDc1MjA1MzA4IG9nPXd3dwp+IyEgcm49Tm9ubmUgcnQ9MTA3NTIwNTI2MyByZz13d3cKfiMhIHRpZD0xMDc1MjA0NTM0CkhtLCB3ZW5uIG1hbiBiZWRlbmt0LCBkYXNzIE1hZW5uZXIgVGllcmUgc2luZCwgZHVlcmZ0ZW4gc2llIG5pY2h0IC4uLgoKTWFoYSwgU3Bpb24gdW5kIEdpZnRtaXNjaGVyIGFECgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBWYWxlbnRpbnN0YWcgKENhdHdlYXpsZSwgMjcuIEphbiAyMDA0LCAxMzoxNjowOSk6Cn4jISBvbj1MaWFyYSBvdD0xMDc1MjA1MzE0IG9nPXd3dwp+IyEgcm49Tm9ubmUgcnQ9MTA3NTIwNTI2MyByZz13d3cKfiMhIHRpZD0xMDc1MjA0NTM0ClNpbmQgUG9seXNhY2NoYXJpZGUgbmV0IHZlZ2V0YXJpc2NoPyA6PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVmFsZW50aW5zdGFnIChDYXR3ZWF6bGUsIDI3LiBKYW4gMjAwNCwgMTM6MTY6MTApOgp+IyEgb249TWFoYXJldCBvdD0xMDc1MjA1MzQyIG9nPXd3dwp+IyEgcm49TGlhcmEgcnQ9MTA3NTIwNTMxNCByZz13d3cKfiMhIHRpZD0xMDc1MjA0NTM0ClNhY2NoYXJpZGU/IFdhcnVtIHNjaG1lY2t0IGRhcyBkYW5uIGltbWVyIHNvIHNhbHppZz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFZhbGVudGluc3RhZyAoQ2F0d2VhemxlLCAyNy4gSmFuIDIwMDQsIDEzOjE2OjExKToKfiMhIG9uPUxpYXJhIG90PTEwNzUyMDU0MzQgb2c9d3d3Cn4jISBybj1NYWhhcmV0IHJ0PTEwNzUyMDUzNDIgcmc9d3d3Cn4jISB0aWQ9MTA3NTIwNDUzNApIdWNoLiBXb2hlciB3ZWlzc3QgZHUgZGFzPyAqc3RhdW4qIFNhZyBibG9zcywgZHUgdHVzdCBzb2xjaGUgRGluZ2Ugd2lya2xpY2guCjs+Pj4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFZhbGVudGluc3RhZyAoQ2F0d2VhemxlLCAyNy4gSmFuIDIwMDQsIDEzOjE2OjEyKToKfiMhIG9uPU1haGFyZXQgb3Q9MTA3NTIwNTQ0OCBvZz13d3cKfiMhIHJuPUxpYXJhIHJ0PTEwNzUyMDU0MzQgcmc9d3d3Cn4jISB0aWQ9MTA3NTIwNDUzNApJY2ggLi4uIGFlaCAuLi4gaGFiIHNvd2FzIGdlbGVzZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBWYWxlbnRpbnN0YWcgKENhdHdlYXpsZSwgMjcuIEphbiAyMDA0LCAxMzoxNjoxMyk6Cn4jISBvbj1Ob25uZSBvdD0xMDc1MjA1NDg3IG9nPXd3dwp+IyEgcm49TWFoYXJldCBydD0xMDc1MjA1NDQ4IHJnPXd3dwp+IyEgdGlkPTEwNzUyMDQ1MzQKQW5hbmFzc2FmdCBzb2xsIGhlbGZlbi4gRGFubiB3aXJkcyBmcnVjaHRpZy1zdWVzcy4uLiBoYWJlIGljaCBnZWxlc2VuICp6d2lua2VyCk1haGFyZXQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogVmFsZW50aW5zdGFnIChDYXR3ZWF6bGUsIDI3LiBKYW4gMjAwNCwgMTM6MTY6MTQpOgp+IyEgb249TWFoYXJldCBvdD0xMDc1MjA1NTI3IG9nPXd3dwp+IyEgcm49Tm9ubmUgcnQ9MTA3NTIwNTQ4NyByZz13d3cKfiMhIHRpZD0xMDc1MjA0NTM0Ck5hamEgLi4uIG9iIG1hbiBkYXMgd2lsbD8gUmljaHRpZyB1ZWJlbCBpc3QsIHdlbm4gZWluZXIgdm9yaGVyIFVubWVuZ2VuClRhYmFzY28genUgc2ljaCBnZW5vbW1lbiBoYXQuIFVya3MuCgphZWggLi4uIGhhYiBpY2ggZ2VsZXNlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVmFsZW50aW5zdGFnIChDYXR3ZWF6bGUsIDI3LiBKYW4gMjAwNCwgMTM6MTY6MTUpOgp+IyEgb249TGlhcmEgb3Q9MTA3NTIwNTU0MyBvZz13d3cKfiMhIHJuPU1haGFyZXQgcnQ9MTA3NTIwNTQ0OCByZz13d3cKfiMhIHRpZD0xMDc1MjA0NTM0CkFoYSwgZ2VsZXNlbiAuLi4gKmdydWViZWwqIE5hIGp1dCwgZGFzIG1pdCBkZW4gUG9seXNhY2NoYXJpZGVuIHdhciBhdWNoIG51cgpnZXJhdGVuLiA6PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFZhbGVudGluc3RhZyAoQ2F0d2VhemxlLCAyNy4gSmFuIDIwMDQsIDEzOjE2OjE2KToKfiMhIG9uPUFwb2xsb25pYSBvdD0xMDc1MjA1NTQ0IG9nPXd3dwp+IyEgcm49TWFoYXJldCBydD0xMDc1MjA1NTI3IHJnPXd3dwp+IyEgdGlkPTEwNzUyMDQ1MzQKT2RlciBLbm9ibGF1Y2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogVmFsZW50aW5zdGFnIChDYXR3ZWF6bGUsIDI3LiBKYW4gMjAwNCwgMTM6MTY6MTcpOgp+IyEgb249TGlhcmEgb3Q9MTA3NTIwNTYwMSBvZz13d3cKfiMhIHJuPU1haGFyZXQgcnQ9MTA3NTIwNTUyNyByZz13d3cKfiMhIHRpZD0xMDc1MjA0NTM0CkxhbmdzYW0gYmVrb21tZSBpY2ggemFydGUgU2VlbGUgZWNodCBBbmdzdCB2b3IgZGlyLCBFbmdlbC4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBWYWxlbnRpbnN0YWcgKENhdHdlYXpsZSwgMjcuIEphbiAyMDA0LCAxMzoxNjoxOCk6Cn4jISBvbj1NYWhhcmV0IG90PTEwNzUyMDU2Mzcgb2c9d3d3Cn4jISBybj1MaWFyYSBydD0xMDc1MjA1NjAxIHJnPXd3dwp+IyEgdGlkPTEwNzUyMDQ1MzQKV2FydW0/IFdlaWwgaWNoIHNvIGJlbGVzZW4gYmluPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFZhbGVudGluc3RhZyAoQ2F0d2VhemxlLCAyNy4gSmFuIDIwMDQsIDEzOjE2OjE5KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDc1MjA1Njg1IG9nPXd3dwp+IyEgcm49TWFoYXJldCBydD0xMDc1MjA1NjM3IHJnPXd3dwp+IyEgdGlkPTEwNzUyMDQ1MzQKRWluZSBGcmF1IGRpZSBsZXNlbiBrYW5uIGlzdCBpbW1lciBlaW4gUmlzaWtvLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogVmFsZW50aW5zdGFnIChDYXR3ZWF6bGUsIDI3LiBKYW4gMjAwNCwgMTM6MTY6MjApOgp+IyEgb249TGlhcmEgb3Q9MTA3NTIwNTY4NyBvZz13d3cKfiMhIHJuPU1haGFyZXQgcnQ9MTA3NTIwNTYzNyByZz13d3cKfiMhIHRpZD0xMDc1MjA0NTM0CkdlbmF1LiAqaHVzdCogQWVobSwgbWFsIHdhcyBhbmRlcmVzLCBrb21tc3QgZHUgYW0gRnJlaXRhZyB6dW0gVHJlZmZkaSB1bmQKYnJpbmdzdCBkZWluZSBnYW56ZW4gQnVlY2hlciBtaXQ/IDspKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFZhbGVudGluc3RhZyAoQ2F0d2VhemxlLCAyNy4gSmFuIDIwMDQsIDEzOjE2OjIxKToKfiMhIG9uPUJyYW4gb3Q9MTA3NTIwNTc0NSBvZz13d3cKfiMhIHJuPU1haGFyZXQgcnQ9MTA3NTIwNTYzNyByZz13d3cKfiMhIHRpZD0xMDc1MjA0NTM0CldvIGthbm4gbWFuIGRpZXNlIFRlc3RyZWloZW4gYWxsZSBuYWNobGVzZW4/IDopCkJyYW4sIG5ldWdpZXJpZwpCcmFuLCBuZXVnaWVyaWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBWYWxlbnRpbnN0YWcgKENhdHdlYXpsZSwgMjcuIEphbiAyMDA0LCAxMzoxNjoyMik6Cn4jISBvbj1Nb250YW51cyBvdD0xMDc1MjA1NzQ2IG9nPXd3dwp+IyEgcm49TGlhcmEgcnQ9MTA3NTIwNTYwMSByZz13d3cKfiMhIHRpZD0xMDc1MjA0NTM0CkRhcyBtaXQgZGVtIFRhYmFzY28gaGFsdGUgaWNoIGZ1ZXIgZWluZSBNYWVyLgpDYXBzYWljaW4ga2FubiBtYW4gZ2xhdWJlIGljaCBuaWNodCBpbiBlaW5lbSBNYXNzZSBhbnJlaWNoZXJuLCBkYXNzIGVzCkF1c3dpcmt1bmdlbiBoYWJlbiBrYW5uLiBEYXMgd2lyZCBnYW56IHNjaG5lbGwgd2llZGVyIGF1c2dlc2NoaWVkZW4uCkd1dCwgaWNoIGhhYnMgbm9jaCBuaWNodCBhdXNwcm9iaWVydCwgYWxzbyBtdWVzc3RlIGljaCBtaWNoIGhpZXIKU2VsYnN0ZXJmYWhydW5nc2dydXBwZW4gZ2VzY2hsYWdlbiBnZWJlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBWYWxlbnRpbnN0YWcgKE1haGFyZXQsIDI3LiBKYW4gMjAwNCwgMTM6MTc6NTkpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNzUyMDU3ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MjA0NTM0CkNhdHR5LCBnbGF1YmUgbWlyLCBUYWJhc2NvIGlzdCB1ZWJlbCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBWYWxlbnRpbnN0YWcgKEdyaW1tYm9ybiwgMjcuIEphbiAyMDA0LCAxMzoxODozMSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA3NTIwNTc4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUyMDQ1MzQKRGEgQ2Fwc2FpY2luIHNpY2ggYXVmIGRpZSBTY2htZXJ6cmV6ZXB0b3JlbiBzdHVlcnp0IHdhZXJlIGRhcyBhdWNoIHppZW1saWNoCnNjaG1lcnpoYWZ0LiBVbmQgaWNoIG5laG1lIGFiIHVuZCB6dSB6aWVtbGljaGUgTWVuZ2VuIENhcGFzaWNpbiB6dSBtaXIuIERpZQpTY2htZXJ6ZW4gYmVzY2hyYWVua2VuIHNpY2ggZGFiZWkgYXVmIGRlbiBWZXJkYXV1bmdzdHJha3QuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBWYWxlbnRpbnN0YWcgKEdyaW1tYm9ybiwgMjcuIEphbiAyMDA0LCAxMzoxODo0Nyk6Cn4jISBvbj1MaWFyYSBvdD0xMDc1MjA1ODQ5IG9nPXd3dwp+IyEgcm49TW9udGFudXMgcnQ9MTA3NTIwNTc0NiByZz13d3cKfiMhIHRpZD0xMDc1MjA0NTM0Ck1vbnRhbnVzc2NoYXR6aSwgc2VpdCB3YW5uIGJpc3QgZHUgaGllciBLcmFldXRlcmhleGVyPyA7KSBVbmQgYXVzc2VyZGVtLCAuLi4Kd29oZXIgd2Vpc3N0IGR1IGRhcyBlaWdlbnRsaWNoIC4uLiA/CgpMaWFyYSwgZnJhZ3Qgc2ljaCBnZXJhZGUsIG9iIHNpZSBkYXMgdWViZXJoYXVwdCB3aXNzZW4gd2lsbCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBWYWxlbnRpbnN0YWcgKExpYXJhLCAyNy4gSmFuIDIwMDQsIDEzOjE5OjMzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDc1MjA1OTExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTIwNDUzNApMYW5nc2FtIGJla29tbXQgbWVpbiBQaGFybWF6ZXV0ZW5oaXJuIGVjaHQgU2NobWVyemVuLCBiZWkgZGVtIHdhcyBpaHIgZGEKc2NocmVpYnQuIDs+ICp3aW1tZXIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogVmFsZW50aW5zdGFnIChDYXR3ZWF6bGUsIDI3LiBKYW4gMjAwNCwgMTM6MTk6NTkpOgp+IyEgb249TW9udGFudXMgb3Q9MTA3NTIwNTk2NyBvZz13d3cKfiMhIHJuPUxpYXJhIHJ0PTEwNzUyMDU4NDkgcmc9d3d3Cn4jISB0aWQ9MTA3NTIwNDUzNApJY2ggYmluIGRvY2ggQ2hpbGktWnVlY2h0ZXIuIFVuZCBpY2ggaGFiIGRhIHNjaG9uIGVpbmlnZSBzY2hsYXVlIEJ1ZWNoZXIKZHJ1ZWJlciBnZWxlc2VuLgpVbmQgaW4gZWluZW0gd2FyIGVpbmUgaW50ZXJlc3NhbnRlIFN0dWRpZSB2b24gZWluZW0gRm9yc2NoZXIgZHJpbiwgZGVyIHNlaW5lClRhZXViY2hlbiBlaW5pZ2UgV29jaGVuIGxhbmcgbnVyIG1pdCBDaGlsaXNjaG90ZW4gZ2VmdWV0dGVydCBoYXQuIERhbm4gaGF0IGVyCnNpZSBnZXNjaGxhY2h0ZXQgdW5kIGdlYnJhdGVuIHVuZCBnZWdlc3Nlbi4gVW0gaGVyYXVzenVmaW5kZW4sIG9iIHNpZSBzY2hvbgp2b3JnZXd1ZXJ6dCBzZWllbi4KQWJlciBkYXMgQ2Fwc2FpY2luIHdhciB2b2xsc3RhZW5kaWcgYWJnZWJhdXQuCihEYXMgaGFiZW4gYXVjaCBkaWUgbmljaHRnYXVtZW5pbnZvbHZpZXJ0ZW4gcmljaHRpZ2VuIHdpc3NlbnNjaGFmdGxpY2hlbiBUZXN0cwplcmdlYmVuLi4uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFZhbGVudGluc3RhZyAoQ2F0d2VhemxlLCAyNy4gSmFuIDIwMDQsIDEzOjIwOjE5KToKfiMhIG9uPU1haGFyZXQgb3Q9MTA3NTIwNjAxMyBvZz13d3cKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNzUyMDU5Njcgcmc9d3d3Cn4jISB0aWQ9MTA3NTIwNDUzNApUaGVvcmV0aWtlci4KCkljaCBoYWIgYXVjaCBuaWNodCBiZWhhdXB0ZXQsIGRhc3MgZXMgc2NoYXJmIHdpcmQuIEVoZXIgZWtsaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogVmFsZW50aW5zdGFnIChMaWFyYSwgMjcuIEphbiAyMDA0LCAxMzoyMDozOSk6Cn4jISBybj1Nb250YW51cyBydD0xMDc1MjA1OTY3IHJnPXd3dwp+IyEgdGlkPTEwNzUyMDQ1MzQKSXMga2xhIC4uLiBkdSB3ZWlzc3QgZGFzIHdlZ2VuIGRlciBUYWV1YmNoZW4gLi4uCkRhIGdsYXViZSBpY2ggZWhlciBNYWhhcmV0ZW5nZWwgbWl0IGlocmVuIEJ1ZWNoZXJuLiA7PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFZhbGVudGluc3RhZyAoTGlhcmEsIDI3LiBKYW4gMjAwNCwgMTM6MjM6MjkpOgp+IyEgcm49TW9udGFudXMgcnQ9MTA3NTIwNjEwNyByZz13d3cKfiMhIHRpZD0xMDc1MjA0NTM0CkljaCBnbGF1YmUgYmVpIE1haGFyZXQgZ2luZyBlcyBlaGVyIHVtIFNhbHouIDs+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogVmFsZW50aW5zdGFnIChHcmltbWJvcm4sIDI3LiBKYW4gMjAwNCwgMTM6MjM6NDkpOgp+IyEgb249TW9udGFudXMgb3Q9MTA3NTIwNjEwNyBvZz13d3cKfiMhIHJuPUxpYXJhIHJ0PTEwNzUyMDYwMzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MjA0NTM0CkljaCB3ZWlzcyBqYSBuaWNodCwgd2FzIGZ1ZXIgQnVlY2hlciBNKnQgZGEgaGF0LiBBYmVyIGljaCBnZWhlIG1hbCBkYXZvbiBhdXMsCmRhc3MgZGFzIGtlaW5lIENoaWxpLUZhY2hsaXRlcmF0dXIgaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFZhbGVudGluc3RhZyAoR3JpbW1ib3JuLCAyNy4gSmFuIDIwMDQsIDEzOjIzOjUzKToKfiMhIG9uPUhpeHRpbmUgb3Q9MTA3NTIwNjE5MSBvZz13d3cKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNzUyMDYxMDcgcmc9d3d3Cn4jISB0aWQ9MTA3NTIwNDUzNApkYSBzY2htZWNrdCBlcyBlaGVyIHN0YWVya2VyIG5jaWh0IHNhbHppZyBvZGVyIHN1ZXNzZXIgbnVyIHN0YWVya2VyIAoKOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBWYWxlbnRpbnN0YWcgKE1lZGljLCAyNy4gSmFuIDIwMDQsIDEzOjI3OjI1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDc1MjA2MjMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTIwNDUzNApUcm90emRlbSB3YXIgZGFzIG1pdCBkZW4gU2FjY2hhcmlkZW4gbmljaHQgZmFsc2NoLCBudXIgZGFzcyBlcyBrZWluZQpwb2x5c2FjaGhhcmlkZSBzaW5kLiBGcnVjdG9zZSBlbiBtYXNzZS4gSGFiIGljaCBnZWxlc2VuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogVmFsZW50aW5zdGFnIChMaWFyYSwgMjcuIEphbiAyMDA0LCAxMzoyODoyNSk6Cn4jISBybj1NZWRpYyBydD0xMDc1MjA2NDQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTIwNDUzNApGcnVjdG9zZSBpc3Qgc3Vlc3NlciBhbHMgZGVyIG5vcm1hbGUgWnVja2VyIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFZhbGVudGluc3RhZyAoTW9udGFudXMsIDI3LiBKYW4gMjAwNCwgMTM6Mjg6MjkpOgp+IyEgcm49TWVkaWMgcnQ9MTA3NTIwNjQ0NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUyMDQ1MzQKTWFjaGVuIHNpY2ggamV0enQgR2RBIHVuZCBDZFYgS29ua3VycmVueiB1bSBkZW4gVmVybGVnZXJqb2I/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IFZhbGVudGluc3RhZyAoR3JpbW1ib3JuLCAyNy4gSmFuIDIwMDQsIDEzOjI5OjM5KToKfiMhIG9uPU1vbnRhbnVzIG90PTEwNzUyMDY0NTkgb2c9d3d3Cn4jISBybj1IaXh0aW5lIHJ0PTEwNzUyMDYxOTEgcmc9d3d3Cn4jISB0aWQ9MTA3NTIwNDUzNApBaCBqYS4gVW5kIHdhcyAgaGF0IGRhcyBnYW56ZSBtaXQgd3d3IHp1IHR1bj8gTXVzcyBtYW4gaGllciBuZSBJbnRlcm5ldHNlaXRlCnppdGllcmVuLCBkYW1pdCBDYXR0eSBkZW4gQXJ0aWtlbCBuaWNodCB2ZXJzY2hpZWJ0PwpEYW5uIGhpZXIgZGVyIExpbmssIGRhbWl0IGlociB3aXNzdCwgd2FydW0gbWFuY2hlIHZvcmhlciBUYWJhc2NvIHRyaW5rZW46Cmh0dHA6Ly93d3cuZ2VzdW5kLmNvLmF0L2ZyYW1nZW4uYXNwP3VybD0vZ2VzdW5kL0x1c3RfTGllYmUvTHVzdF9MaWViZV9BcGhyb2RpcwppYWthLmh0bQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFZhbGVudGluc3RhZyAoQnJhbiwgMjcuIEphbiAyMDA0LCAxMzozMDoyMyk6Cn4jISBybj1NZWRpYyBydD0xMDc1MjA2NDQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTIwNDUzNApTbywgZmVydGlnIG1pdCBLb2NoZW4uIEljaCBoYWIgbWlyIGdhbnogYW5kZXJlIEdlZGFua2VuIGRhYmVpIGdlbWFjaHQgYWxzCnNvbnN0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogVmFsZW50aW5zdGFnIChNb250YW51cywgMjcuIEphbiAyMDA0LCAxMzozMToxMSk6Cn4jISBybj1CcmFuIHJ0PTEwNzUyMDY2MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MjA0NTM0Ckd1dGVuIEFwcGV0aXQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogVmFsZW50aW5zdGFnIChMaWFyYSwgMjcuIEphbiAyMDA0LCAxMzozMToxNyk6Cn4jISBybj1CcmFuIHJ0PTEwNzUyMDY2MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MjA0NTM0ClNpZWhzc3UsIE1QQSBpc3QgZG9jaCBpbW1lciBndXQgZnVlciBLdWVjaGVudGlwcHMuIDs+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogVmFsZW50aW5zdGFnIChNYWhhcmV0LCAyNy4gSmFuIDIwMDQsIDEzOjM0OjE1KToKfiMhIHJuPUxpYXJhIHJ0PTEwNzUyMDY2Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MjA0NTM0CkZ1ZXR0ZXIgZGVtIEtlcmwgbmljaHQgc28gdmllbCBUYWJhc2NvIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogVmFsZW50aW5zdGFnIChHcmltbWJvcm4sIDI3LiBKYW4gMjAwNCwgMTM6MzY6MDQpOgp+IyEgcm49TWFoYXJldCBydD0xMDc1MjA2ODU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTIwNDUzNApOYWphLCBUYWJhc2NvIGlzdCBqYSBudW4gZG9jaCBlaGVyIG51ciBtYWVzc2lnIGNhcHNhaWNpbmhhbHRpZy4gV2VubiBtYW4Kc292aWVsIGRhdm9uIGlucyBFc3NlbiB0dXQsIGRhc3MgbWFuIGRpZSBTY2hhZXJmZSBhbnN0YWVuZGlnIHNwdWVydCwgc3Rpbmt0CnVuZCBzY2htZWNrdCBlcyBleHRyZW0gcGVuZXRyYW50IG5hY2ggYmlsbGlnZW0gRXNzaWcuIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogVmFsZW50aW5zdGFnIChMaWFyYSwgMjcuIEphbiAyMDA0LCAxMzozNzo1MCk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwNzUyMDY4NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MjA0NTM0CkVyIG1hZyBlcyBzY2hhcmYsIEVuZ2VsLiA7PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IFZhbGVudGluc3RhZyAoRm9vYmFyLCAyNy4gSmFuIDIwMDQsIDEzOjQxOjE0KToKfiMhIHJuPUxpYXJhIHJ0PTEwNzUyMDcwNzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MjA0NTM0CkljaCBmaW5kZSB1ZWJyaWdlbnMsIGplZGVyIEtlcmwgc29sbHRlIGRlbiBLcmFtIHNlbGJlciBtYWwgcHJvYmllcnQgaGFiZW4uCgpTY2hsaWVzc2xpY2ggbXVzcyBtYW4gd2lzc2VuIHdhcyBtYW4gc28gdW50ZXIgZGllIExldXRlIGJyaW5ndC4gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogVmFsZW50aW5zdGFnIChNYWhhcmV0LCAyNy4gSmFuIDIwMDQsIDEzOjQxOjU1KToKfiMhIHJuPUZvb2JhciBydD0xMDc1MjA3Mjc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTIwNDUzNApKYSwgZ2VuYXUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIChMaWFyYSwgMjcuIEphbiAyMDA0LCAxMzo0NDoyMSk6CkJyZXdlciB0ZWlsdCBEaXIgbWl0OiBkdSBzY3JvbGxzdCBnYW56IHNjaG9lbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9obmUgV29ydGUgKE1haGFyZXQsIDI3LiBKYW4gMjAwNCwgMTM6NDU6MDgpOgp+IyEgcm49TGlhcmEgcnQ9MTA3NTIwNzQ2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUyMDc0NjEKRGFzIGtsaW5ndCBhYmVyIGZydXN0cmllcnQgLi4uIG5hamEsIGRlciAyMC4gTWFlcnogaXN0IGphIGJhbGQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogT2huZSBXb3J0ZSAoTW9udGFudXMsIDI3LiBKYW4gMjAwNCwgMTM6NDY6MDkpOgp+IyEgcm49TWFoYXJldCBydD0xMDc1MjA3NTA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTIwNzQ2MQpMZXJudCBpaHIgZGFzIG9jaG1hbD8gSW1tZXIgYXVmIGRhcyBSZWggbWl0IGRlciBob2VjaHN0ZW4gWmFobCBhbnR3b3J0ZW4sIHVuZAprZWluZW4gbmV1ZW4gVGhyZWFkIGF1Zm1hY2hlbj8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBPaG5lIFdvcnRlIChNYWhhcmV0LCAyNy4gSmFuIDIwMDQsIDEzOjQ2OjMwKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNzUyMDc1Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MjA3NDYxCkR1IHZlcndlY2hzZWx0cyBkYXMgd2FzIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBPaG5lIFdvcnRlIChNb250YW51cywgMjcuIEphbiAyMDA0LCAxMzo0NzoxMyk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwNzUyMDc1OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MjA3NDYxCk5lZSwgdW5kIGlyZ2VuZHdhbm4gaXN0IGRpciBSdWJyaWsgdm9sbCwgdW5kIGplbWFuZCBzdGFydGV0IGVpbmUgVmVybGVnZSBiencKTG9lc2NoYWt0aW9uLiBBbGxlcyBzY2hvbm1hbCBkYWdld2VzZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogVmFsZW50aW5zdGFnIChCYW1iaSwgMjcuIEphbiAyMDA0LCAxNDowMDo1Nyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA3NTIwNjU3OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUyMDQ1MzQKVGphLCBQZWNoIGdlaGFidC4gVmVybGVndCBlYmVuIEdyaW1tYm9ybi4KSW0gdWVicmlnZW46IEljaCBtb2VjaHRlIGVpbmUgcnVicmlrICJBYjE4IiwgZGllIG1hbiBlcnN0IGFiIDIzIFVocgpSZWhjbmVyemVpdCBsZXNlbiBrYW5uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc29zbyAoRWxiZXJldCwgMjcuIEphbiAyMDA0LCAxNDowMzoxMSk6CkxvdHRhIHNhZ3Q6ICBTY2hhdSBEaWNoIGhpZXIgZWluZmFjaCBpbiBSdWhlIHVtLgpmcmFnZSBsb3R0YSBuYWNoIFJ1aGUKTG90dGEgc2FndDogRGFzIFdvcnQga2VubiBpY2ggbmljaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IFZhbGVudGluc3RhZyAoR3JpbW1ib3JuLCAyNy4gSmFuIDIwMDQsIDE0OjAzOjE3KToKfiMhIHJuPUJhbWJpIHJ0PTEwNzUyMDg0NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MjA0NTM0CkRhbm4gd2FlcmUgYWJlciBkZXIgUnVicmlrbmFtZSAiYWIyMyIgd2VzZW50bGljaCBsb2dpc2NoZXIsIG5vZWNoPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogVmFsZW50aW5zdGFnIChNb250YW51cywgMjcuIEphbiAyMDA0LCAxNDowNDoxNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA3NTIwODU5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUyMDQ1MzQKV2llbGFuZ2UgbXVlc3NlbiB3aXIgaGllciBub2NoIHNjaHJlaWJlbiwgYmlzIGRpZSBSdWJyaWsgdm9sbCBpc3QgdW5kIGRpZQprcmVhdGl2ZSBBZGVyIHNpY2ggd2llZGVyIGF1ZiBkaWUgZWluemlnZSB3YWhyZSBSdWJyaWsga29uemVudHJpZXJ0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IFZhbGVudGluc3RhZyAoTWFoYXJldCwgMjcuIEphbiAyMDA0LCAxNDowNDozNyk6Cn4jISBybj1Nb250YW51cyBydD0xMDc1MjA4NjU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTIwNDUzNApLcmVhdGl2PyBEdSBmaW5kZXN0IGRhcyBrcmVhdGl2PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IFZhbGVudGluc3RhZyAoTW9udGFudXMsIDI3LiBKYW4gMjAwNCwgMTQ6MDU6MDUpOgp+IyEgcm49TWFoYXJldCBydD0xMDc1MjA4Njc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTIwNDUzNApLcmVhdGl2IGJlZGV1dGV0ICJlcnNjaGFmZmVuZCIuIEphLCBkYXMgc2luZCB3aXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogVmFsZW50aW5zdGFnIChLZWxseWJ1bmR5LCAyNy4gSmFuIDIwMDQsIDE0OjA5OjAzKToKfiMhIHJuPUJhbWJpIHJ0PTEwNzUyMDg0NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MjA0NTM0CldvaGluIHNvbGwgc2ljaCBkZW5uIEdyaW1tYm9ybiB2ZXJsZWdlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBWYWxlbnRpbnN0YWcgKEZvb2JhciwgMjcuIEphbiAyMDA0LCAxNDoyMTo0MSk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTEwNzUyMDg5NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MjA0NTM0CldhcnVtIHd1cmRlIGRhcyBlaWdlbnRsaWNoIG5hY2ggc2NobWFycm4gdmVybGVndCB1bmQgbmljaHQgbmFjaHQgZGlza3Vzc2lvbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBpc3QgZWluZSBTY3JvbGxkcm9odW5nLi4uLiAoSHVtbmksIDI3LiBKYW4gMjAwNCwgMjA6MTE6NTQpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBzY2h3YWNoZW4gWm9tYmllc10gRXMgZ2lidCBub2NoIER1dHplbmRlIG1laW5lc2dsZWljaGVuLApbTW9lcmRlcjpHZWlzdCBlaW5lcyBzY2h3YWNoZW4gWm9tYmllc10gUmF2ZW50aHJvbmUhCltNb2VyZGVyOkdlaXN0IGVpbmVzIHNjaHdhY2hlbiBab21iaWVzXSBFcyBnaWJ0IG5vY2ggRHV0emVuZGUgbWVpbmVzZ2xlaWNoZW4sCltNb2VyZGVyOkdlaXN0IGVpbmVzIHNjaHdhY2hlbiBab21iaWVzXSBSYXZlbnRocm9uZSEKW01vZXJkZXI6R2Vpc3QgZWluZXMgc2Nod2FjaGVuIFpvbWJpZXNdIEVzIGdpYnQgbm9jaCBEdXR6ZW5kZSBtZWluZXNnbGVpY2hlbiwKW01vZXJkZXI6R2Vpc3QgZWluZXMgc2Nod2FjaGVuIFpvbWJpZXNdIE1hZG5lc3MhCgpIdW1uaSBoYXQgQW5nc3Qgdm9yIGRlbSBTY3JvbGwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogVmFsZW50aW5zdGFnIChBbmF0b2wsIDI3LiBKYW4gMjAwNCwgMjI6MDY6NTcpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwNzUyMDk3MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MjA0NTM0CkdpYnQgZXMgZGEgbmljaHQgZWluZW4gRHJpbmsgbmFtZW5zICJCbG93am9iJ3MgUmV2ZW5nZSI/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmliZWwgOj4gKFBpdGZhbGwsIDI3LiBKYW4gMjAwNCwgMjM6MzQ6MDApOgpWb24gRWluIEZyb3NjaDogYmVpIG1pciB0dXRzIEljaCBiaW4gU2FpbG9yIEZyb3NjaCBOaWJlbCB1bmQgaW0KVm9uIEVpbiBGcm9zY2g6IE5hbWVuIGRlcyBRdWFhYWsgd2VyZGUgaWNoIERpY2ggYmVzdHJhZmVuISAKClZvbiBFaW4gRnJvc2NoOiBoYWIgbWFsIG5lbiB6dXNhZXR6bGljaGVuIGNoZWNrIGVpbmdlYmF1dCwgb2J3b2hsClZvbiBFaW4gRnJvc2NoOiBkZXIgbGF1dCBjb2RlIHVlYmVyZmx1ZXNzaWcgd2FlciBJY2ggYmluIFNhaWxvcgpWb24gRWluIEZyb3NjaDogRnJvc2NoIE5pYmVsIHVuZCBpbSBOYW1lbiBkZXMgUXVhYWFrIHdlcmRlIGljaCBEaWNoClZvbiBFaW4gRnJvc2NoOiBiZXN0cmFmZW4hIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IFZhbGVudGluc3RhZyAoUGl0ZmFsbCwgMjguIEphbiAyMDA0LCAwMDo1MzozNyk6Cn4jISBybj1BbmF0b2wgcnQ9MTA3NTIzNzYxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUyMDQ1MzQKRGVuIG1pdCBaaXRyb25lPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IFZhbGVudGluc3RhZyAoT2dvLCAyOC4gSmFuIDIwMDQsIDAwOjU0OjE3KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTA3NTI0NzYxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUyMDQ1MzQKT2theSwgYml0dGUgYXVmemVpZ2VuLiBXZXIgaGF0IHZvbiBQaXRmYWxsIHNjaG9uIGFsbGVzIHNvIGVpbmVuIENvY2t0YWlsCnNwZW5kaWVydCBiZWtvbW1lbj8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBWYWxlbnRpbnN0YWcgKFBpdGZhbGwsIDI4LiBKYW4gMjAwNCwgMDA6NTU6MDMpOgp+IyEgcm49T2dvIHJ0PTEwNzUyNDc2NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MjA0NTM0ClNpZSBoYWJlbiBhbGxlIGRhZnVlciBiZXphaGx0IDo+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogVmFsZW50aW5zdGFnIChNYWhhcmV0LCAyOC4gSmFuIDIwMDQsIDAwOjU1OjI5KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTA3NTI0NzcwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUyMDQ1MzQKQmVpIGlobSBrYW5uIG1hbiBzaWNoIHNvZ2FyIGRpZSBGYXJiZSB3dWVuc2NoZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBWYWxlbnRpbnN0YWcgKE9nbywgMjguIEphbiAyMDA0LCAwMDo1NzozMCk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwNzUyNDc3Mjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MjA0NTM0Cj4gd2VnbWVsZHVuZyBwaXRmYWxsClBpdGZhbGwgaXN0IGFscyBhYndlc2VuZCBnZWtlbm56ZWljaG5ldC4KR3J1bmQ6IGRpbmdlIHR1bi4KCk5lZSBpcyBrbGFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmFqYSwgaW1tZXIgZGllIEZvcnNjaGVyLi4uIChGb29iYXIsIDI4LiBKYW4gMjAwNCwgMTY6NTQ6NTkpOgpEZWluIEZyZXVuZCBQaXRmYWxsIHRlaWx0IERpciBtaXQ6IGljaCB3aWxsIGFiZXIgZGV0YWlscyA6PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmFldHNlbCAoTW9yZ290aCwgMjguIEphbiAyMDA0LCAyMDo0NTo1OSk6CldhcyBzdGVja3QgZGFoaW50ZXI/ClNNTU1SRUVFRwoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBWYWxlbnRpbnN0YWcgKFJvY2h1cywgMjguIEphbiAyMDA0LCAyMjozMzoxMSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA3NTIwNTc3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUyMDQ1MzQKSGlsZnQgdGF0c2FlY2hsaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFZhbGVudGluc3RhZyAoQ2F0d2VhemxlLCAyOS4gSmFuIDIwMDQsIDA4OjU0OjMwKToKfiMhIHJuPVJvY2h1cyBydD0xMDc1MzI1NTkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTIwNDUzNApSb2NodXMhCkljaCBzY2hhZXR6ZSBkdSBoYXN0IGtlaW5lIEFobnVuZyB3YXMgZHUgZGEgZ2VyYWRlIGdlc2FndCBoYXN0IDopCgpVbmQgaWNoIGhvZmZlIG1hbCBnYW56IGV4dHJlbSBkYXNzIGRhcyBIb2VocmVuc2FnZW4gd2FyIDopCgpadW1pbmRlc3QgZ2luZ3MgbWlyIHNvIGFlaG5saWNoIHdpZSBIdW1uaSwgbWVpbiBVbnRlcmtpZWZlciBsYWcgYmVzdGltbXQgbmUKTWludXRlIGF1ZiBtZWluZXIgQnJ1c3QgLi4uCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBWYWxlbnRpbnN0YWcgKERhcmtsb3IsIDI5LiBKYW4gMjAwNCwgMTA6NTQ6MDcpOgp+IyEgcm49TWFoYXJldCBydD0xMDc1MjA4Njc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTIwNDUzNAo6ZmluZGV0IGRhcyBob2VjaHN0ZW5zIGVrZWxpZy4uLiAtIGFiZXIgYXVjaCBpbmZvcm1hdGl2IC0gd2FzIGlociBzbyBhbGxlcwp3aXNzdC4uLgoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEphamEsIGltbWVyIGRpZSBGb3JzY2hlci4uLiAoRGFya2xvciwgMjkuIEphbiAyMDA0LCAxMDo1NjowMik6Cn4jISBybj1Gb29iYXIgcnQ9MTA3NTMwNTI5OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUzMDUyOTkKRXJmb3JzY2h0PwoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFjaGphLi4uIChCYW1iaSwgMzAuIEphbiAyMDA0LCAxMDoxOToxNyk6Cn4jISBybj1BcmVsZWlhcyBydD0xMDc1NDE2NDI0IHJnPXd3dwp+IyEgdGlkPTEwNzU0MTY0MjQKSW0gV2Fzc2VyIHNpbmQgZGllIGxlaWNodGVyLiBGdWVsbCBEaXIgYWxzbyBlaW5mYWNoIG5lIEZsYXNjaGUgbWl0IFdhc3NlciB1bmQKc3RlY2sgaWhuIGRhenUuIERlciBDb250YWluZXIgbWFjaHQgZGVuIEluaGFsdCBqYSBub2NobWFsIHdlbmlnZXIgc2Nod2VyLiBVbmQKZmFsbHMgRHUgbWVpbnN0LCBlciBwYXNzdCBuaWNodCByZWluLCBkYW5uIGtpcHAgZXR3YXMgd2Fzc2VyIHVlYmVyIGlobiwgYmlzIGVyCnRyaWVmdC4gRGFubiBpc3QgZXIgYXVjaCBpbSB3YXNzZXIgdW5kIHNvbGx0ZSBlaW5mYWNoZXIgenUgdHJhZ2VuIHNlaW4uCgpCYW1iaSwgbWl0IGRlciBCaXR0ZSwgZGllIFJ1YnJpayB6dSBiZWFjaHRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWNoamEuLi4gKFB1aywgMzAuIEphbiAyMDA0LCAxMDo0MDo1OSk6Cn4jISBybj1CYW1iaSBydD0xMDc1NDU0MzU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTQxNjQyNApEZWluZSBMb2dpayBtYWcgaWNoIG5pY2h0IGhhYmVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdXBwcyBzb3JyeSAoR3JpbW1ib3JuLCAzMC4gSmFuIDIwMDQsIDE1OjQyOjUxKToKfiMhIG9uPU1haGFyZXQgb3Q9MTA3NTQ3MzQ3NSBvZz13aXR6ZQp+IyEgcm49S2VsbHlidW5keSBydD0xMDc1NDczMzkxIHJnPXdpdHplCn4jISB0aWQ9MTA3NTQ3MzM5MQpzdWNrdC4gS2xhci4gQmVpIGRlbSBXaXR6IC4uLgoKTWFoYXJldCwgdmVydGVpbHQgQW5hbmFzc2FmdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR3JhZGUsIGltIGFuZGVyZW4gRmVuc3Rlci4uLi4gKE11cGZlbCwgMzEuIEphbiAyMDA0LCAwMTo0OTozMCk6CltBbGxnZW1laW46U3RvZXJ0aV0gbmVpbi4uLm1laW4gcmVjaG5lciB3YXIgZXhwbG9kaWVydApbQWxsZ2VtZWluOk1hcml0YV0gaWNoIHd1c3NzdGUgZ2FuaWNoIGRhcyBkaWUgZGluZ2VyIHVudGVyIHVlYmVyZHJ1Y2sgc3RlaGVuCltBbGxnZW1laW46TWFyaXRhXSB3aWV2aWVsIGJhciBoYXQgc28gbiBkdXJjaHNjaG5pdHRsaWNoZXIgcmVjaG5lcj8KW0FsbGdlbWVpbjpSaHlhbl0gbmFqYSwgNzIwIEdCIG11ZXNzc2VuIGphIHNjaGxpZXNzbGljaCBpcmdlbmR3b2hpbiwgbmljaHdhaHI/CltBbGxnZW1laW46TWFyaXRhXSBhY2hqYSBkYXRlbmtvbXByZXNzaW9uIDotKQpbQWxsZ2VtZWluOlN0b2VydGldIGRhcyBuZXR6dGVpbCBoYXQgc2ljaCBtaXQgbGF1dGVtIGtuYWxsIHVuZCBmbGFtbWVud3VyZiBpbgpbQWxsZ2VtZWluOlN0b2VydGldIGRpZSByZW50ZSB2ZXJhYnNjaGllZGV0CltBbGxnZW1laW46TWFyaXRhXSBib2FoIHVuZCBpY2ggd2V0dGUgZGllIGJ5dGVzIGxhZ2VuIGVpbnplbG4gaW0gemltbWVyIHJ1bSwKW0FsbGdlbWVpbjpNYXJpdGFdIGtlaW4gc2Nob2VuZXIgYW5ibGljawpbQWxsZ2VtZWluOlN0b2VydGldIGphLi4uZXMgZ2FiIHNjaG9uIGVpbmVuIGdld2lzc2VuIGZsdXJzY2hhZGVuCltBbGxnZW1laW46TWFyaXRhXSBhY2ggYXVmbSBmbHVyIHN0YW5kIGVyCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEx1cGluZW50YWwgKEJpZWxlZmVsZCwgMzEuIEphbiAyMDA0LCAxMzo0NjoyNSk6Cn4jISBybj1CYW1iaSBydD0xMDc1NTUzMTI3IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwNzU1NTMxMjcKV2VubiBtZWluZSBLTCBmZWhsZXJoYWZ0IGlzdCwgaGlsZnN0IER1IG1pciBiZWkgZGVyIFF1ZXN0PwpEYW5rZSA7LSkKCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTHVwaW5lbnRhbCAoQmFtYmksIDMxLiBKYW4gMjAwNCwgMTQ6NTU6MDQpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTEwNzU1NTMxODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1NTUzMTI3Cldlbm4gRGVpbmUgS0wgYmlzaGVyIGdldGFuIGhhdCB1bmQgbnVuIG5pY2h0IG1laHIgdHV0LCBkYW5uIHNjaGF1IGljaCBuYWNoLCBvYgpkYXMgYW4gZWluZXIgVW1zdGVsbHVuZyBsaWVndC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNoYW90ZW4gYWJ3ZXJ0ZW4gOikgKE1vcmdvdGgsICAxLiBGZWIgMjAwNCwgMTQ6MjQ6NDYpOgpFVkVOVC1DSVRZIDogSmFnb3MgaGF0IGRpZSBTdGFkdCBiZXRyZXRlbi4KVE9ELVRyb2xsIDogQ2hhb3MgaGF0IGVpbmVuIFRyb2xsIGdla2lsbHQhCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTHVwaW5lbnRhbCAoVmFuaW9uLCAgMS4gRmViIDIwMDQsIDIwOjE3OjUxKToKfiMhIHJuPUJhbWJpIHJ0PTEwNzU1NTczMDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1NTUzMTI3ClVuZCBkYW5hY2ggbGFlc3N0IER1IGlobiBsb2VzY2hlbj8gQnJhdiA6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbmUgR3Jvc3NzdGFkdCBuZWJlbiBzaWNoIChBbGtvaG9sLCAgMi4gRmViIDIwMDQsIDEzOjAwOjAwKToKQmllbGVmZWxkIHRlaWx0IERpciBtaXQ6IGljaCB3YXIgc2Nob24gZXdpZyBuaW1tZXIgaW4gYmllbGVmZWxkLi4uCgpBbGsga2ljaGVydCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbmUgR3Jvc3NzdGFkdCBuZWJlbiBzaWNoIChNb3Jnb3RoLCAgMi4gRmViIDIwMDQsIDEzOjAyOjAxKToKfiMhIHJuPUFsa29ob2wgcnQ9MTA3NTcyMzIwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzU3MjMyMDAKT2RlciBlciBoYXQgZXMgYXVmZ2VnZWJlbiwgc2ljaCBkZW4gRmluZ2VyIGluIGRlbiBIaW50ZXJuIHp1IHN0ZWNrZW4uLi4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FzIHNpZSBzY2hvbiBpbW1lciB3aXNzZW4gd29sbHRlbiAoR3JpbW1ib3JuLCAgMy4gRmViIDIwMDQsIDA5OjU5OjMyKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDc1Nzk4NzY2IG9nPXd3dwp+IyEgcm49Tm9ubmUgcnQ9MTA3NTc5ODUxOSByZz13d3cKfiMhIHRpZD0xMDc1Nzk4NTE5CkRvY2gsIGhhc3QgRHUgaGllcmhlci4gU2NoYWRlLCBqZXR6dCBrYW5uc3QgRHUgZGFtaXQgaGllciBpbSBNRyBrZWluIGFuZGVyZXMKR2VzY2hsZWNodCBiZWVpbmRydWNrZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXYXMgc2llIHNjaG9uIGltbWVyIHdpc3NlbiB3b2xsdGVuIChHcmltbWJvcm4sICAzLiBGZWIgMjAwNCwgMTA6MDM6MDEpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNzU3OTg4ODEgcmc9d3d3Cn4jISB0aWQ9MTA3NTc5ODUxOQpUamEsIHdpZSBvZnQgaGF0IG5pY2h0IGplbWFuZCAiRHUgU2Nod2VpbiIgenUgbWlyIGdlc2FndC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXYXMgc2llIHNjaG9uIGltbWVyIHdpc3NlbiB3b2xsdGVuIChDYXR3ZWF6bGUsICAzLiBGZWIgMjAwNCwgMTA6MDM6MjcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNzU3OTg5ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1Nzk4NTE5Ckthbm4gaWNoIHRvcHBlbi4gQmluIDcxZXIuLi4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWWV0IGFub3RoZXIgZ29vZ2xlIC4uLiAoQ2F0d2VhemxlLCAgMy4gRmViIDIwMDQsIDEzOjAzOjU0KToKV2VubnMgbWFsIHdpZWRlciBsYWVuZ2VyIGRhdWVydCB1bmQgZXVjaCBsYW5nd2VpbGlnIGlzdCwgZGFubiB0YXVzY2h0IGFuIGV1cmVyClRhc3RhdHVyIGRvY2ggbWFsIGcgdW5kIGIgdW5kIHJ1ZnQgZGFubiBkaWUgaW50ZXJuYXRpb25hbGUgZ29vZ2xlIFNlaXRlIGF1Zi4gCgpKYSwgdmVybGF1ZmVuIC4uLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVHJlZmZkaSBCZXJsaW4gKExpYXJhLCAgMy4gRmViIDIwMDQsIDIwOjE5OjIyKToKfiMhIHJuPUxpYXJhIHJ0PTEwNzUwMjY4ODQgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA3NTAyNjg4NApOYWNobGVzZSA7PgoKRGllIFppdGF0ZSBzcGFyZSBpY2ggbWlyIG1hbC4gKmcqIEFiZXIgd2FyIGVjaHQgbmV0dCwgZGFzcyBpY2ggdm9uIDIgTGV1dGVuCnd1c3N0ZSwgZGFzcyBzaWUga29tbWVuIHdvbGx0ZW4gdW5kIHdpciBuYWNoaGVyIHp1IDEzIExldXRlbiBkYSBzYXNzZW4uIDs+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRyZWZmZGkgQmVybGluIChEYXJrbG9yLCAgMy4gRmViIDIwMDQsIDIwOjMwOjIwKToKfiMhIHJuPUxpYXJhIHJ0PTEwNzU4MzU5NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MDI2ODg0CldhciBkYXMgbmljaCBzY2hvbiBiaXNzbCBlbmc/CgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRyZWZmZGkgQmVybGluIChMZWliaSwgIDMuIEZlYiAyMDA0LCAyMTozNTowNCk6Cn4jISBybj1MaWFyYSBydD0xMDc1ODM1OTYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTAyNjg4NApqYSwgaWNoIGdsYXViIGljaCBiaW4gZGFua2JhciwgZGFzcyBkdSBkaWUgeml0YXRlIHZlcmdlc3NlbiBoYXN0IDopCgpsZWliaSBoYXR0ZSB0cm90eiBtdWVkaWdrZWl0IHZpZWwgc3Bhc3MKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFRyZWZmZGkgQmVybGluIChHbG9pbnNvbiwgIDMuIEZlYiAyMDA0LCAyMTo1MTo1Mik6Cn4jISBybj1MZWliaSBydD0xMDc1ODQwNTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTAyNjg4NApEdSBtZWluc3QgZGllIFppdGF0ZSBiZXRyZWZmZW5kIE1haGFyZXRzIEVyZmFocnVuZyBtaXQgVGFiYXNjbyB1bmQgbWFuZ2VsbmRlCm1pdCBBbmFuYXNzYWZ0PyBJY2ggYmluIHZlcmdlc3NsaWNoLCBpY2ggaGFiIG51ciBub2NoIGRlbiBBYnNjaGx1c3MgZGVzIEFiZW5kcwppbSBLb3BmLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRyZWZmZGkgQmVybGluIChMaWFyYSwgIDMuIEZlYiAyMDA0LCAyMjo1OToxNSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDc1ODQxNTEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTAyNjg4NApOZWluLCBlaGVyIExlaWJpcyBNZWludW5nIHVlYmVyIE1hZW5uZXIgdW5kIEJyb3RpcyBPcmdhc211c3d1ZW5zY2hlIGRpZQpLZWxsbmVyaW4gYmV0cmVmZmVuZC4gOz4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFRyZWZmZGkgQmVybGluIChIdW1uaSwgIDMuIEZlYiAyMDA0LCAyMzowMDoyOCk6Cn4jISBybj1MaWFyYSBydD0xMDc1ODQ1NTU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTAyNjg4NApXaWUgaGF0IHNpY2ggQnJvdGkgZGVubiBkZW4gT3JnYXNtdXMgZGVyIEtlbGxuZXJpbiBnZXd1ZW5zY2h0PwoKTWl0IG9kZXIgb2huZSBUcmlua2dlbGQ/CgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVHJlZmZkaSBCZXJsaW4gKEdsb2luc29uLCAgMy4gRmViIDIwMDQsIDIzOjAwOjMyKToKfiMhIHJuPUxpYXJhIHJ0PTEwNzU4NDU1NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MDI2ODg0CkJyb3QgaGF0IGRvY2ggc2Nob24genUgS2VyemVud2FjaHMgdW5kIEVpc3d1ZXJmZWxuIE9yZ2FzbWVuIGJla29tbWVuLiBVbmQgaGF0CmRhbm4gYmlzIGF1ZiBlaW5lbiBoYWxiZW4gd29obCBhdWNoIGFsbGUgYmV6YWhsZW4gbXVlc3Nlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBUcmVmZmRpIEJlcmxpbiAoR2xvaW5zb24sICAzLiBGZWIgMjAwNCwgMjM6MDQ6NTUpOgp+IyEgcm49SHVtbmkgcnQ9MTA3NTg0NTYyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUwMjY4ODQKRHUgdGVpbHN0IE11bWx1bSBtaXQ6IE1pdCBBbmFuYXNzYWZ0IDspCk11bWx1bSB0ZWlsdCBEaXIgbWl0OiBIYXQgd2FzIGdlZGF1ZXJ0LiBBYmVyIE9yZ2FzbXVzIGtlbm4gaWNoIDstKQpEdSB0ZWlsc3QgTXVtbHVtIG1pdDogU2NoYWRlIDspCk11bWx1bSB0ZWlsdCBEaXIgbWl0OiBBbHNvLi4uLiBkYXMgR2V0cmFlbmsgbWVpbiBpY2ggbmF0dWVybGljaCAuLi4KRHUgdGVpbHN0IE11bWx1bSBtaXQ6IE9oLCB3aWUgdHJhdXJpZyBmdWVyIGRpY2ggOikpKQpNdW1sdW0gdGVpbHQgRGlyIG1pdDogQWxzby4uIGFjaCBlZ2FsLCBiZXZvciBpY2ggbWljaCBoaWVyIG1laHIgaW4gZGllCk11bWx1bSB0ZWlsdCBEaXIgbWl0OiBTY2hlaXNzZSByZWl0ZSB1bmQgRHUgZGFzIHBvc3Rlc3Qgc2Nod2VpZ2UgaWNoCk11bWx1bSB0ZWlsdCBEaXIgbWl0OiBsaWViZXIgOy0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVHJlZmZkaSBCZXJsaW4gKE1haGFyZXQsICA0LiBGZWIgMjAwNCwgMDA6Mjk6NTgpOgp+IyEgcm49SHVtbmkgcnQ9MTA3NTg0NTYyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUwMjY4ODQKTmFqYSwgd2lyIGhhYmVuIGlobiB1bnMgZ2V0ZWlsdCA7KQoKTWFoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUcmVmZmRpIEJlcmxpbiAoWmFybml5YSwgIDQuIEZlYiAyMDA0LCAwNzo0ODoyMSk6Cn4jISBybj1MaWFyYSBydD0xMDc1ODM1OTYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTAyNjg4NAppY2ggd3Vzc3RlIG1hbCB2b24gNDAgdW5kIGVzIGthbWVuIDYzLi4uLi4gZGFzIHdhcmVuIG5vY2ggWmVpdGVuLi4gYWxzbyBKYW1tZXIKbmljaHQgOikKCk1hcmMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFRyZWZmZGkgQmVybGluIChMaWFyYSwgIDQuIEZlYiAyMDA0LCAxMzowMTo0Myk6Cn4jISBybj1IdW1uaSBydD0xMDc1ODQ1NjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTAyNjg4NAphcyBpc3QgZWluIE1pc3N2ZXJzdGFlbmRuaXMuIEJST1RJIHdvbGx0ZSBkZW4gT3JnYXNtdXMgVk9OIGRlciBLZWxsbmVyaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBUcmVmZmRpIEJlcmxpbiAoQ2F0d2VhemxlLCAgNC4gRmViIDIwMDQsIDEzOjAyOjM3KToKfiMhIHJuPUxpYXJhIHJ0PTEwNzU4OTYxMDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MDI2ODg0CldlaWJsaWNoZSBPcmdhc21lbi4gSG1obSwgd3VlcmQgaWNoIGF1Y2ggbWFsIGdlcm4gYXVzcHJvYmllcmVuIDopCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFRyZWZmZGkgQmVybGluIChNYWFyZywgIDQuIEZlYiAyMDA0LCAxMzowNDoyMCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA3NTg5NjE1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUwMjY4ODQKRGEgZ2lidCBlcyBtZWhyZXJlIEFydGVuLCBDYXR0eSA7bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFRyZWZmZGkgQmVybGluIChNb250YW51cywgIDQuIEZlYiAyMDA0LCAxMzowNjoxOSk6Cn4jISBybj1NYWFyZyBydD0xMDc1ODk2MjYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTAyNjg4NApMYXNzIGRpY2ggdW1vcGVyaWVyZW4sIENhdHR5LiBTb25zdCBrbGFwcHQgZGFzIGJlaSBkaXIgbmllIG1pdCB3ZWlibGljaGVuCk9yZ2FzbWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFRyZWZmZGkgQmVybGluIChHbG9pbnNvbiwgIDQuIEZlYiAyMDA0LCAxMzoxMzoyMSk6Cn4jISBybj1Nb250YW51cyBydD0xMDc1ODk2Mzc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTAyNjg4NApadSBTY2h3ZWluPyBEYXMgaGF0IGphIGJla2FubnRsaWNoIDMwIG1pbiBPcmdhc21lbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogVHJlZmZkaSBCZXJsaW4gKENhdHdlYXpsZSwgIDQuIEZlYiAyMDA0LCAxMzozNjo1Mik6Cn4jISBybj1HbG9pbnNvbiBydD0xMDc1ODk2ODAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTAyNjg4NApXZWlibGljaGVzIFNjaHdlaW4uCgpLbGluZ3QgdmllbHZlcnNwcmVjaGVuZCAuLi4gCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBUcmVmZmRpIEJlcmxpbiAoR3JpbW1ib3JuLCAgNC4gRmViIDIwMDQsIDEzOjM4OjI1KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDc1ODk4MjEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTAyNjg4NApNaXIgYml0dGUgZGFubiBlaW5tYWwgU2Nobml0emVsIEhhd2FpaS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFRyZWZmZGkgQmVybGluIChHbG9pbnNvbiwgIDQuIEZlYiAyMDA0LCAxMzozOToyNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA3NTg5ODMwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUwMjY4ODQKRGEgZ2VmYWVsbHQgbWlyIFJhYWJzIEVuZGUgdm9tICJEcmVpIGtsZWluZSBTY2h3ZWluY2hlbiItTGllZCBiZXNzZXIuCipwZmlmZiogSGVyciBPYmVyISBFaW4gU2Nobml0emVsIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBUcmVmZmRpIEJlcmxpbiAoQnJvdG5hZWwsICA0LiBGZWIgMjAwNCwgMTM6NDA6MzEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA3NTg5ODM2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUwMjY4ODQKTWlyIGdlZmFlbGx0IGRpZSBpZGVlIGRlciBtdWx0aXBsZW4gb3JnYXNtZW4gdmllbCBiZXNzZXIgOm8pCkJyb3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBUcmVmZmRpIEJlcmxpbiAoR2xvaW5zb24sICA0LiBGZWIgMjAwNCwgMTM6NDE6MDQpOgp+IyEgcm49QnJvdG5hZWwgcnQ9MTA3NTg5ODQzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUwMjY4ODQKVWVic3QgZHUgc2Nob24gZnVlciBkaWUgVW13YW5kbHVuZz8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogVHJlZmZkaSBCZXJsaW4gKE1vcmdvdGgsICA0LiBGZWIgMjAwNCwgMTM6NDI6NDgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA3NTg5ODQ2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUwMjY4ODQKTmVlLCBhYmVyIGVyIHdhciBkb2NoIG1hbCBLbGVyaWtlci4uLmphaHJlbGFuZ2UgVW50ZXJkcnVlY2t1bmcgZGVzIFRyaWViZXMuLi4uCjopKQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBUcmVmZmRpIEJlcmxpbiAoTm9ubmUsICA0LiBGZWIgMjAwNCwgMTM6NDM6MzApOgp+IyEgcm49TW9yZ290aCBydD0xMDc1ODk4NTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTAyNjg4NApMYXNzIG1pY2ggcmF0ZW46IER1IHdhcnN0IG5pZSBLbGVyaWtlcj8gVW50ZXJkcnVlY2t1bmcgZGVyIFRyaWViPyBQYWghIFp1Cm1laW5lciBaZWl0IGplZGVuZmFsbHMgbmljaHQuCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBUcmVmZmRpIEJlcmxpbiAoR2xvaW5zb24sICA0LiBGZWIgMjAwNCwgMTM6NDM6MzIpOgp+IyEgcm49TW9yZ290aCBydD0xMDc1ODk4NTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTAyNjg4NApEdXJjaCBBc2tlc2UgZXJsYW5ndCBtYW4gbXVsdGlwbGUgT3JnYXNtZW4/IEhtLCBsZWNrZXIuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IFRyZWZmZGkgQmVybGluIChNb250YW51cywgIDQuIEZlYiAyMDA0LCAxMzo1MTo0Nik6Cn4jISBybj1HbG9pbnNvbiBydD0xMDc1ODk4NjEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTAyNjg4NApJY2ggc2VoZSwgaWhyIHdvbGx0IHNjaG9uIHdpZWRlciBNZWdhc2htYXJybiBLT25rdXJyZW56IG1hY2hlbi4gSHVzY2ggaHVzY2gKQ2F0dHksIHp1cnVlY2sgaW5zIHJpY2h0aWdlIEtvZXJiY2hlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBUcmVmZmRpIEJlcmxpbiAoWm9vaywgIDQuIEZlYiAyMDA0LCAxNjoyNDo0Nik6Cn4jISBybj1Nb250YW51cyBydD0xMDc1ODk5MTA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTAyNjg4NApVbmQgZGVuayBhbiBEZWluZW4gTWFnaWVybGV2ZWwhT00KWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBUcmVmZmRpIEJlcmxpbiAoTXVhZGliLCAgNC4gRmViIDIwMDQsIDE3OjQ3OjEzKToKfiMhIHJuPVpvb2sgcnQ9MTA3NTkwODI4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUwMjY4ODQKZGllc2VyIHpvb2sgaXN0IGphIHNvIGVpbiBkZXNwb3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBUcmVmZmRpIEJlcmxpbiAoWm9vaywgIDQuIEZlYiAyMDA0LCAxNzo1Mzo0OSk6Cn4jISBybj1ab29rIHJ0PTEwNzU5MDgyODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1MDI2ODg0CkljaCBiaW4gZnVlcnNvcmdsaWNoLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBUcmVmZmRpIEJlcmxpbiAoTXVhZGliLCAgNC4gRmViIDIwMDQsIDE3OjU0OjE0KToKfiMhIHJuPVpvb2sgcnQ9MTA3NTkxMzYyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUwMjY4ODQKb2gKaWNoIHZlcnN0ZWhlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWb24gd2VnZW4sIEpvZiBpZGVsdCEgKFRpZXplciwgIDQuIEZlYiAyMDA0LCAyMzoxNzowMCk6Ci4uLgpbQWJlbnRldWVyOjxRdWVzdD5dIEx1dGggaGF0IGdlcmFkZSBlaW4gQWJlbnRldWVyIGJlc3RhbmRlbjogVGhvcnMgSGFtbWVyIApKb2YgYXVjaC4KLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvLlcuIChHcmltbWJvcm4sICA1LiBGZWIgMjAwNCwgMTY6NDA6NTkpOgp+IyEgb249SGl4dGluZSBvdD0xMDc1OTk1NDMyIG9nPW1lZ2FzY2htYXJybgo+IEJyZXdlciB0ZWlsdCBEaXIgbWl0OiB0aWVmZXIgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBUcmVmZmRpIEJlcmxpbiAoTGlhcmEsICA2LiBGZWIgMjAwNCwgMTM6NDg6MTApOgp+IyEgcm49TW9yZ290aCBydD0xMDc1ODk4NTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTAyNjg4NApEdSBnbGF1YnN0IGF1Y2ggbm9jaCBhbiBkZW4gV2VpaG5hY2h0c21hbm4sIE1vcmdvdGgsIG9kZXI/IDo+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogVHJlZmZkaSBCZXJsaW4gKE1vcmdvdGgsICA2LiBGZWIgMjAwNCwgMTM6NDk6MjIpOgp+IyEgcm49TGlhcmEgcnQ9MTA3NjA3MTY5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUwMjY4ODQKSWNoIEJJTiBkZXIgV2VpaG5hY2h0c21hbm4gOikKCk0qClAuUy46IFVuZCBkYXMgbWl0IGRlbSBTYWNrIGF1Zm0gUnVlY2tlbiBldGMuIGtvZW5udCBpaHIgZXVjaCBzcGFyZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBUcmVmZmRpIEJlcmxpbiAoVmVjdG9yLCAgNi4gRmViIDIwMDQsIDEzOjUwOjA2KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA3NjA3MTc2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUwMjY4ODQKaG9oIGhvaCBob2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBUcmVmZmRpIEJlcmxpbiAoTGlhcmEsICA2LiBGZWIgMjAwNCwgMTM6NTU6MjcpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA3NTg5ODYxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzUwMjY4ODQKQXByb3BvcyAuLi4gd2llc28gd2Fyc3QgZHUgZGVubiBuaWNodCBpbiBEcmVzZGVuLCBHbG9pbnNvbj8gOj4gRGljaCBoYWV0dGUgaWNoCm5hY2ggZGVpbmVtIEFydGlrZWwgbnVuIHdpcmtsaWNoIG5pY2h0IGltIEdyYWZmaXRpIGVyd2FydGV0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFRyZWZmZGkgQmVybGluIChHbG9pbnNvbiwgIDYuIEZlYiAyMDA0LCAxNDo1MzoyMyk6Cn4jISBybj1MaWFyYSBydD0xMDc2MDcyMTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTAyNjg4NApEYXMgaGllciB6dSBlcmtsYWVyZW4gYmVkdWVyZnRlIHp1IHdlaXRlbiBBdXNob2xlbnMuIE5pY2h0IGVpbm1hbCBNZWdhc2NobWFycm4Kd3VlcmRlIGRhcyBpbnRlcmVzc2llcmVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGVjaG90b3MgKFZhbmlvbiwgIDYuIEZlYiAyMDA0LCAxOTo1ODo1OSk6Cn4jISBvbj1MdWcgb3Q9MTA3NjA5MzkxMSBvZz1ldGlrZXR0ZQp+IyEgcm49VmFuaW9uIHJ0PTEwNzYwOTM4ODUgcmc9ZXRpa2V0dGUKfiMhIHRpZD0xMDc1NzQxNDU3Clpvb2s/IE5pbW0gVmFuaW9uIGRpZSBNUEEgd2VnLiBFciB3aWxsIGVzIG8uCgpMdWdpZmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBlY2hvdG9zIChWYW5pb24sICA2LiBGZWIgMjAwNCwgMTk6NTk6MTEpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNzYwOTM5Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1NzQxNDU3CkRpZXNtYWwgd2FycyBhYnNpY2h0LgoKVioKKmdyaW5zKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogZWNob3RvcyAoVmFuaW9uLCAgNi4gRmViIDIwMDQsIDIwOjAwOjQ1KToKfiMhIG9uPVZhbmlvbiBvdD0xMDc2MDkzNzkzIG9nPWV0aWtldHRlCn4jISBybj1Ib3VzZWhvbGRlciBydD0xMDc2MDkwNzkyIHJnPWV0aWtldHRlCn4jISB0aWQ9MTA3NTc0MTQ1NwpBdWNoIHNvIGhhbHRiYXIgd2llIFNwYW0/CgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogZWNob3RvcyAoVmFuaW9uLCAgNi4gRmViIDIwMDQsIDIwOjAwOjU5KToKfiMhIHJuPVZhbmlvbiBydD0xMDc2MDk0MDQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTc0MTQ1NwpFaWdlbnRsaWNoIHNvbGx0ZSBuYWVtbGljaCBkaWVzZXIgaGllciBuYWNoIFNwYW0uCgpWKiwgaGF0cyBudS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGVjaG90b3MgKEx1ZywgIDYuIEZlYiAyMDA0LCAyMDowMjowMCk6Cn4jISBybj1WYW5pb24gcnQ9MTA3NjA5NDA1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzU3NDE0NTcKRHUgaGFzdCBzaWUgbmllIGFsbGUgYmVpZWluYW5kZXIuLi4KCkx1Z2lmZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGVjaG90b3MgKENyb2Z0LCAgNi4gRmViIDIwMDQsIDIwOjAyOjI4KToKfiMhIHJuPVZhbmlvbiBydD0xMDc2MDk0MDU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTc0MTQ1NwpBaC4gQmVrb21tZW4gd2lyIHdpZWRlciBlaW5lIG5ldWUgUnVicmlrPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBlY2hvdG9zIChWYW5pb24sICA2LiBGZWIgMjAwNCwgMjA6MDI6NDgpOgp+IyEgcm49THVnIHJ0PTEwNzYwOTQxMjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc1NzQxNDU3CkRhcyBoYWIgaWNoIGF1Y2ggbmljaCBiZWhhdXB0ZXQuIEdlaXN0aWcgZ2VzdW5kZSBNZW5zY2hlbiB3ZXJkZW4gamEgbmljaCBFTS4KV2FzIHZvciBhbGxlbSBkYXJhbiBsaWVndCwgZGFzcyBnZWlzdGlnIGdlc3VuZGUgTWVuc2NoZW4gamEgbmljaCBtdWRkZW4Kd3VlcmRlbiAuLi4KCkljaCBiaW4gYWxzbyBpbiBha3plcHRhYmxlciBHZXNlbGxzY2hhZnQuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IGVjaG90b3MgKEx1ZywgIDYuIEZlYiAyMDA0LCAyMDowMzozOCk6Cn4jISBybj1WYW5pb24gcnQ9MTA3NjA5NDE2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzU3NDE0NTcKV2VpYWguIEVpbmUgbmFoZXp1IHVuc2NobGFnYmFyIHByYWV6aXNlIEFuYWx5c2UgZGVyIHZlcmhhZWx0bmlzc2UuCgpMdWdpZmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogZWNob3RvcyAoVmFuaW9uLCAgNi4gRmViIDIwMDQsIDIwOjA0OjAwKToKfiMhIHJuPUx1ZyBydD0xMDc2MDk0MjE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTc0MTQ1NwpNYW5jaG1hbCBlcnN0YXVuIGljaCBtaWNoIHNlbGJzdC4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogZWNob3RvcyAoTHVnLCAgNi4gRmViIDIwMDQsIDIwOjA0OjEyKToKfiMhIHJuPVZhbmlvbiBydD0xMDc2MDk0MjQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NTc0MTQ1NwpVbmQgbWljaCBlcnN0Li4uCgpMdWdpZmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogZWNob3RvcyAoTW9yZ290aCwgIDYuIEZlYiAyMDA0LCAyMDowNDoyMCk6Cn4jISBybj1WYW5pb24gcnQ9MTA3NjA5NDI0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzU3NDE0NTcKVW5kIHNvd2FzIGlzdCBtZWluIEJydWRlci4uLmVyc2NocmVja2VuZAoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiBQb3Bjb3JuLUF1dG9tYXQ/IChMdWcsICA2LiBGZWIgMjAwNCwgMjA6NDk6MDEpOgpEdSBydWZzdDogSUNIIFdJTEwgUE9QQ09STiEKPiBEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKCkx1Z2lmZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFyZ2ggKE1vcmdvdGgsICA3LiBGZWIgMjAwNCwgMDA6MTI6MjIpOgpbRnJldW5kZTpNdXBmZWxdIGhlaW5vIHJ1bGV6CgpNKiB6aXR0ZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgbnU/IChNb3Jnb3RoLCAgOC4gRmViIDIwMDQsIDE0OjE0OjU2KToKRGVyIHJhYmVuc2Nod2FyemUgUmluZyB3ZWl0ZXQgc2ljaCB1bmQgZmFlbGx0IGJlaW5haGUgdm9uIERlaW5lbSBGaW5nZXIuCgpbemllaGUgcmluZyBhdXNdCkRlciBSaW5nIHNjaG51ZXJ0IHNpY2ggc28gZW5nIHVtIERlaW5lbiBGaW5nZXIsIGRhc3MgRHUgaWhuIG5pY2h0IG1laHIgZGF2b24KbG9zYnJpbmdzdC4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoLCBhbSBPc3Rwb2wgLi4uIChTd2FudGV2aXQsICA4LiBGZWIgMjAwNCwgMjM6NDg6MjEpOgpzY2hhdQpEdSBiZWZpbmRlc3QgRGljaCBoaWVyIGhvY2ggb2JlbiBpbiBkZW4gRHJhY2hlbnppbm5lbi4gUmluZ3NoZXJ1bSBzaWVoc3QgRHUKZGllIG1hZWNodGlnZW4gR2lwZmVsIGRpZXNlcyBHZWJpcmdlcywgdm9yIGFsbGVtIGltIFdlc3RlbiB1bmQgaW0gT3N0ZW4uCj4gdW50IGRyYWNoZW56aW5uZW4gaW0gT3N0ZW4KSGllciBpc3Qga2VpbiBPc3Rlbi4KClN3YW50ZXZpdCwgaGF0IGVpbiBBaGEtRXJsZWJuaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNURUxMQS1MSUVCRUNLLVBSRUlTIChDYXR3ZWF6bGUsICA5LiBGZWIgMjAwNCwgMDg6NTU6MjkpOgp+IyEgb249THVnIG90PTEwNzYyODA5NzIgb2c9bWVnYXNjaG1hcnJuCn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA3NjI3NzAyNyByZz13aXR6ZQp+IyEgdGlkPTEwNzQ1MDU3MTUKcmVwbHkKQWxzbyBQaXR0eSwgZGFtaXQgRHUgRGljaCB0cmF1c3QuIEhpZXIgd2FlcmUgZGVyIGdlZWlnbmV0ZSBPcnQgZGFmdWVyLgoKTHVnaWZlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0YXRpIEhhbWJ1cmcgKE11YWRpYiwgIDkuIEZlYiAyMDA0LCAxNTo0MzoyMyk6Cn4jISBybj1CaWVsZWZlbGQgcnQ9MTA3NjMzMzYzNiByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDc2MzMzNjM2CndpZSBpc3QgZGVpbiBtdWRuYW1lID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNURUxMQS1MSUVCRUNLLVBSRUlTIChCYW1idWxrbywgMTAuIEZlYiAyMDA0LCAxMzo0MTo1Mik6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA3NjQxNjg1OCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA3NDUwNTcxNQpTY2hhdSBtYWwgd2VyIGRlbiBBcnRpa2VsIGdlc2NocmllYmVuIGhhdC4uLi4uCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU1RFTExBLUxJRUJFQ0stUFJFSVMgKEJhbWJpLCAxMC4gRmViIDIwMDQsIDE2OjU1OjAzKToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEwNzY0MTY5MTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc0NTA1NzE1CkljaCBmcmFnIG1pY2gsIG9iIGVzIGx1c3RpZyB3YWVyZSwgd2VubiBlaW5mYWNoIG1hbCBqZWRlciBhdWYgVHJvZXRlcyBBcnRpa2VsCmFudHdvcnRldCB1bmQgaWhuIGRhcmF1ZiBoaW53ZWlzdCwgZGFzcyBuaWNodCBHcmltbWJvcm4gZGVyIEF1dG9yIGlzdC4gV29sbGVuCndpciBuaWNodCBtYWw/IC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU1RFTExBLUxJRUJFQ0stUFJFSVMgKEJhbWJ1bGtvLCAxMC4gRmViIDIwMDQsIDE3OjEwOjI1KToKfiMhIHJuPUJhbWJpIHJ0PTEwNzY0Mjg1MDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc0NTA1NzE1CkhleS4uLnNjaGF1IG1hbCBhdWYgZGllIFplaXRlbi4gSWNoIHdhciBlcnN0ZXIuLi4uLgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFNURUxMQS1MSUVCRUNLLVBSRUlTIChCb2luZywgMTAuIEZlYiAyMDA0LCAxNzoxMDo0Nyk6Cn4jISBybj1CYW1idWxrbyBydD0xMDc2NDI5NDI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NDUwNTcxNQpJY2ggbGVzIGhhbHQgZGllIFJ1YnJpa2VuIGluIGRlciBSZWloZW5mb2xnZSAuLi4gCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBtcnVmZSAoQWthc2hhLCAxMS4gRmViIDIwMDQsIDAyOjE4OjUyKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwNzY0NjIyMDQgcmc9ZXRpa2V0dGUKfiMhIHRpZD0xMDc2NDYyMjA0CkJsb3NzLCB3ZWlsIGVyIGRpciBrZWluZSBndXRlIE5hY2h0IGdld3VlbnNjaHQgaGF0PyA7KQoKQWthc2hhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IG1ydWZlIChHbG9pbnNvbiwgMTEuIEZlYiAyMDA0LCAwMjoxOTo0MCk6Cn4jISBybj1Ba2FzaGEgcnQ9MTA3NjQ2MjMzMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzY0NjIyMDQKSGF0IGVyIGphLiBOdXIgYmVpbSB6d2VpdGVuIE1hbCBuaWNodC4gTXVzcyBhbiBtZWluZW0gQ2hhcm1lIGxpZWdlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWlsY2g/IChCYW1idWxrbywgMTEuIEZlYiAyMDA0LCAwODoxOTozMCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNzY0ODM4NjEgcmc9d3d3Cn4jISB0aWQ9MTA3NjQ4Mzg2MQpVZmYsIHp1bSBHbHVlY2sgd2FyIG1laW5lIEtvbGxlZ2luIG5vY2ggbmljaHQgaW0gQnVlcm8uLi4uLi4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBlcmwgZnVlciBBbmZhZW5nZXIgKE5vbm5lLCAxMS4gRmViIDIwMDQsIDExOjI1OjA5KToKfiMhIHJuPU5vbm5lIHJ0PTEwNzY0OTQ0NjEgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTA3NjQ5NDI2OApKYSwgaWNoIHdlaXNzLCBtZWluZSBTY2hsZWlmZSBnZWh0IGJpcyAyNSB1bmQgaWNoIHNjaGxpZXNzZSBhdWNoIDIyIHVuZCAyMwphdXMsIG5pY2h0IDIxIHVuZCAyMiwgd2llIGdlZm9yZGVydCwgYWJlciBlcnN0ZW5zOiBJY2gga2FubiBrZWluIFBlcmwsCnp3ZWl0ZW5zIGVyd2FydGUgaWNoIGVpbiB3ZW5pZyBUcmFuc2ZlcmxlaXN0dW5nIHZvbiBHcmltbWJvcm4uCgpOb25uZSwga2FubiB3aXJrbGljaCBrZWluIFBlcmwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1pbGNoPyAoTm9ubmUsIDExLiBGZWIgMjAwNCwgMTU6Mzg6MTkpOgp+IyEgb249Tm9ubmUgb3Q9MTA3NjUxMDI3OSBvZz13d3cKfiMhIHJuPVBob2JvcyBydD0xMDc2NDg3NzE0IHJnPXd3dwp+IyEgdGlkPTEwNzY0ODM4NjEKVmVya2xlbW10IG9kZXIgdmVnYW4/CgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1pbGNoPyAoTHVnLCAxMS4gRmViIDIwMDQsIDE1OjM4OjM3KToKfiMhIHJuPU5vbm5lIHJ0PTEwNzY1MTAyOTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc2NDgzODYxCldoaXNreSBzdGF0dCBNaWxjaCEKCkx1Z2lmZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGVpbmVzIFVwZGF0ZSAoQmFtYmksIDExLiBGZWIgMjAwNCwgMTc6NTU6MzEpOgp+IyEgcm49TWFhcmcgcnQ9MTA3NjUxMDkyNSByZz1kLnd1ZXN0ZQp+IyEgdGlkPTEwNzY1MTA5MjUKS29tbXQgZHJhdWYgYW4sIG9iICJqZW1hbmQiIGdlaWwgYXVmIEtlcmJlbiBpc3QuCgpCYW1iaSwgc2NobWFycm5kLCB2b24gYmVzYWd0ZW0gR3JhYnJhZXViZXIgbmljaHRzIHdpc3NlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNaWxjaD8gKE11YWRpYiwgMTEuIEZlYiAyMDA0LCAyMDowNDowNik6Cn4jISBybj1MdWcgcnQ9MTA3NjUxMDMxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzY0ODM4NjEKam8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFZvcmhpbiBpbSBTdXBlcm1hcmt0IG1pdGdlaG9lcnQgLi4uIDs+IChFbGJlcmV0LCAxMS4gRmViIDIwMDQsIDIwOjIxOjUyKToKfiMhIHJuPUxpYXJhIHJ0PTEwNzY1MjY5MzUgcmc9d2l0emUKfiMhIHRpZD0xMDc2NTI1MzE1CmlzdCBkb2NoIGVnYWwgd2FzIG1hbiBtaXIgZ2xhdWJ0CgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogVm9yaGluIGltIFN1cGVybWFya3QgbWl0Z2Vob2VydCAuLi4gOz4gKE1vcmdvdGgsIDExLiBGZWIgMjAwNCwgMjA6MjI6MTApOgp+IyEgcm49RWxiZXJldCBydD0xMDc2NTI3MzEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NjUyNTMxNQoKTml4PwoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBWb3JoaW4gaW0gU3VwZXJtYXJrdCBtaXRnZWhvZXJ0IC4uLiA7PiAoRWxiZXJldCwgMTEuIEZlYiAyMDA0LCAyMDoyMjozNCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNzY1MjczMzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc2NTI1MzE1CmJlc3NlciBpc3QgZGFzCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogVm9yaGluIGltIFN1cGVybWFya3QgbWl0Z2Vob2VydCAuLi4gOz4gKEJhbWJpLCAxMS4gRmViIDIwMDQsIDIwOjIyOjQ2KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA3NjUyNzM1NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzY1MjUzMTUKRGFzIGdsYXViZSBpY2ggZGlyIG5pY2h0LiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUGVybCBmdWVyIEFuZmFlbmdlciAoR3JpbW1ib3JuLCAxMi4gRmViIDIwMDQsIDAxOjQ0OjEyKToKfiMhIG9uPU9nbyBvdD0xMDc2NTQ2MTc3IG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNzY1NDU4ODYgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTA3NjQ5NDI2OApGYXhudW1tZXI/IAoKT2dvLCBpbiBkZXIgZmFsc2NoZW4gUnVicmlrIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBQZXJsIGZ1ZXIgQW5mYWVuZ2VyIChHcmltbWJvcm4sIDEyLiBGZWIgMjAwNCwgMDE6NDQ6MTMpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwNzY1NDY2NDQgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1PZ28gcnQ9MTA3NjU0NjE3NyByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDc2NDk0MjY4CjAxOTAgU1VFRFNFRQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBQZXJsIGZ1ZXIgQW5mYWVuZ2VyIChHcmltbWJvcm4sIDEyLiBGZWIgMjAwNCwgMTA6Mjg6MDYpOgp+IyEgcm49QmFtYmkgcnQ9MTA3NjU3NDg3NSByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDc2NDk0MjY4CkF1ZiBtZWluZXIgVmlzaXRlbmthcnRlIHN0ZWh0ICJTeXN0ZW0gQW5hbHlzdCIsIGljaCBzdWNoZSBhdWNoIG5hY2ggendlaQpKYWhyZW4gaW1tZXIgbm9jaCBuYWNoIGplbWFuZGVtLCBkZXIgbWlyIHNhZ2VuIGthbm4gd2FzIGRhcyBzZWluIHNvbGwsIHVuZCB3YXMKdGF0c2FlY2hsaWNoIG1laW5lIHJlZ3VsYWVyZW4gQXVmZ2FiZW4gc2luZC4gSWNoIHZlcnN1Y2hlIGhhbHQgZGEgenUgbG9lc2NoZW4sCndvcyBhbSBtZWlzdGVuIGJyZW5udC4gU293ZWl0IGljaCBkYXMgbWl0YmVrb21tZW4gaGFiZSwgaXN0IHNvIGVpbgpBdWZnYWJlbmZlbGQgbmljaHQgc29uZGVybGljaCB1bmdld29laG5saWNoLi4uCk1pY2ggbGFlc3N0IG5pZW1hbmQgcGVybCBwcm9ncmFtbWllcmVuLiBJY2ggc29sbCh0ZSkgbnVyIGRhcyBhbnBhc3Nlbiwgd2FzCmplbWFuZCBhbmRlcmVzLCBkZXIgaW4gVXJsYXViIGlzdCwgcHJvZ3JhbW1pZXJ0IGhhdC4gRGllc2VzICJEdSBoYXN0IHp3YXIKa2VpbmUgQWhudW5nLCBhYmVyIG1hY2ggZG9jaCBtYWwgZWJlbiIga2VubmUgaWNoIHNwYWV0ZXN0ZW5zIHNlaXQgZGVtIGVyc3RlbgpTZW1lc3RlciBpbSBTdHVkaXVtLi4uCkF1c3NlcmRlbSBoYWJlIGljaCBuaWNodCB3ZW5pZyBQcm9ncmFtbWllcmtlbm50bmlzc2UsIGljaCBoYWJlIHByYWt0aXNjaAprZWluZSwgdW5kIGluIEJlenVnIGF1ZiBwZXJsIGdhciBrZWluZS4gRGFzIGlzdCAibmljaHRzIGdlZ2VuIG1pY2giLCBpY2ggaGFiCmhhbHQgYW5kZXJlIFF1YWxpdGFldGVuLiAKCkdkQVtleC1SXSBPSGRNdUJkRSAgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBaGphLi4uIChNZWRpYywgMTIuIEZlYiAyMDA0LCAxMzoxNzowOSk6CkVyd2FydGV0ICAob25saW5lKTogSWxseQpbRnJldW5kZTpJbGx5IGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS5dCltUb2Q6TGFyc10gRWluIFdhZWNodGVyIGhhdCBnZXJhZGUgSWxseSB1bWdlYnJhY2h0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcnVlaHN0dWVjayBhIGxhIE11YWRpYiAoR2xvaW5zb24sIDEyLiBGZWIgMjAwNCwgMTU6NDE6MDIpOgp+IyEgcm49TXVhZGliIHJ0PTEwNzY1OTY3NjEgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMDc2NTk2NzYxCkhleSwgZGFzIGtlbm4gaWNoIHNjaG9uLiBEYXMgaXN0IGVpbiBGcnVlaHN0dWVjayBhIGxhIFN0dWRlbnQgaW4gZGVuClNlbWVzdGVyZmVyaWVuLgpBdXNnZW5vbW1lbiBCYXllcm4gdW5kIEJXLiBIZWZld2VpemVuIGF1cyBkZXIgRmxhc2NoZSBpc3QgLi4uIGFiZW50ZXVlcmxpY2guCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGcnVlaHN0dWVjayBhIGxhIE11YWRpYiAoTWVkaWMsIDEyLiBGZWIgMjAwNCwgMTU6NDQ6MTUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA3NjU5Njg2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzY1OTY3NjEKTmVpbiwgRnJ1ZWhzdHVlY2sgKCopIGEgbGEgU3R1ZGVudCBiZXN0ZWh0IGF1cyBlaW5lciBncm9zc2VuICghKQpUYXNzZSBLYWZmZWUuIE9kZXIgendlaS4gT2RlciBzaWViemVobi4KCk1lZGljCgooKikgZGFzIFdvcnQgIkZydWVoc3R1ZWNrIiBzYWd0IG5pY2h0cyB1ZWJlciBkaWUgVGFnZXN6ZWl0IGRlciBFaW5ubmFobWUgYXVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRnJ1ZWhzdHVlY2sgYSBsYSBNdWFkaWIgKEdsb2luc29uLCAxMi4gRmViIDIwMDQsIDE1OjQ1OjE5KToKfiMhIHJuPU1lZGljIHJ0PTEwNzY1OTcwNTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc2NTk2NzYxCkR1IHJlZGVzdCB2b20gU2VtZXN0ZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRnJ1ZWhzdHVlY2sgYSBsYSBNdWFkaWIgKE1lZGljLCAxMi4gRmViIDIwMDQsIDE1OjQ2OjU5KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwNzY1OTcxMTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc2NTk2NzYxCk5laW4sIGJlaSBtcmkgc2llaHQgZGFzIGdhbnpqYWVocmlnIHNvIGF1cy4gQWJlciB2aWVsbGVpY2h0IGJpbiBpY2ggZGFtaXQgYXVjaApudXIgZWluZSBOb3JtdmFyaWFudGUgZGVyIFNwZXppZXMgIlN0dWRlbnQiLgpJY2ggZmluZGUgbnVyIGRhcyBhdWZzdGVoZW4gdW5kIGRhcyB0cmlua2VuIGZ1cmNodGJhciBsYWVzdGlnLiBHaWJ0IGVzCkVyZmFocnVuZ3N3ZXJ0ZSBtaXQgZGVyIGludHJhdmVub2VzZW4gWnVmdWhyIHZvbiBLYWZmZWU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZydWVoc3R1ZWNrIGEgbGEgTXVhZGliIChLZWxseWJ1bmR5LCAxMi4gRmViIDIwMDQsIDE1OjQ3OjE1KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwNzY1OTY4NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc2NTk2NzYxClVuZCBBbHRiaWVyIGluIEtvZWxuLiBJcyBnZWZhZWhybGljaCwgZXl5IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGcnVlaHN0dWVjayBhIGxhIE11YWRpYiAoS2VsbHlidW5keSwgMTIuIEZlYiAyMDA0LCAxNTo0ODoyNyk6Cn4jISBybj1NZWRpYyBydD0xMDc2NTk3MjE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NjU5Njc2MQpMZWlkZXIgbmVpbi4gTWVpbiBLYWZmZWUgYnJvZWNrZWx0IHNvIHNjaGxlY2h0IGR1cmNoIGRpZSBLYW51ZWxlLiBNdWVzc3RlCnZpZWxsZWljaHQgZXR3YXMgdmVyZHVlbm50IHdlcmRlbiA6KQpCbG9uZGNoZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG5lbGxpbWJpc3MgYSBsYSBLcmlzY2hhbiAoQm9pbmcsIDEyLiBGZWIgMjAwNCwgMTc6MDE6NDYpOgp+IyEgb249R2xvaW5zb24gb3Q9MTA3NjU5NjI0MyBvZz1rb2NocmV6ZXB0ZQotIDIgTW9ocnJ1ZWJlbgoKTW9ocnJ1ZWJlbiB3YXNjaGVuIHVuZCBhdWYgZWluZW4gVGVsbGVyIGxlZ2VuLiBJbiBNaWtyb3dlbGxlIHN0ZWxsZW4sClNwcml0enNjaHV0emRlY2tlbCBkYXJ1ZWJlci4gNSBNaW51dGVuIGJlaSBldHdhIDQwMCBXYXR0IGtvY2hlbi4gVm9yc2ljaHQgYmVpbQpIZXJhdXNuZWhtZW4uIFdlbm4gbm9ldGlnLCBldHdhcyBtaXQgU2FseiBuYWNod3Vlcnplbi4gR3V0ZW4gQXBwZXRpdCEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcnVlaHN0dWVjayBhIGxhIE11YWRpYiAoQm9pbmcsIDEyLiBGZWIgMjAwNCwgMTc6MDE6NDcpOgp+IyEgb249TXVhZGliIG90PTEwNzY1OTY3NjEgb2c9a29jaHJlemVwdGUKRmxhc2NoZSBhdXMgQmllcmthc3RlbiBuZWhtZW4gKFNvcnRlIG5hY2ggZWlnZW5lciBXYWhsKQpGbGFzY2hlIG9lZmZuZW4KRnJ1ZWhzdHVlY2sgZ2VuaWVzc2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBYmVuZGVzc2VuIGEgbGEgQ2F0d2VhemxlIChCb2luZywgMTIuIEZlYiAyMDA0LCAxNzowMTo0OCk6Cn4jISBvbj1DYXR3ZWF6bGUgb3Q9MTA3NjU5NzMxNSBvZz1rb2NocmV6ZXB0ZQoKU3RyYXNzZW5rbGFtb3R0ZW4gYW56aWVoZW4uCkhhdXMgdmVybGFzc2VuLCBhdWZzIEZhaHJyYWQgc3RlaWdlbiB1bmQgMTIgTWludXRlbiBiaXMgIkJ1dHRzIiBmYWhyZW4uClp3ZWkgRG9lbmVyIGJlc3RlbGxlbi4gCkRvZW5lciBiZXphaGxlbiwgbWl0bmVobWVuIHVuZCAxMiBNaW51dGVuIG1pdCBGYWhycmFkIG5hY2ggSGF1c2UgZmFocmVuLgpadWhhdXNlIERvZW5lciBhdXNwYWNrZW4gdW5kIGVpbmUgTWludXRlIGluIE1pa3Jvd2VsbGUgbGVnZW4uCldhZWhyZW5kZGVzc2VuIEhhdXNrbGFtb3R0ZW4gYW56aWVoZW4uIApNaXQgZmVydGlnZW0gRG9lbmVyIHZvciBHbG90emUgaGFlbmdlbi4KCkd1dGVuIEFwcGV0aXQuCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBYmVuZGVzc2VuIGEgbGEgQ2F0d2VhemxlIChCb2luZywgMTIuIEZlYiAyMDA0LCAxNzowMTo0OSk6Cn4jISBvbj1PZ28gb3Q9MTA3NjU5NzM0NyBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwNzY1OTczMTUgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMDc2NTk3MzE1CkluIGRpZSBNSUtST1dFTExFPwoKT2dvLCBlbnRzZXR6dAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBYmVuZGVzc2VuIGEgbGEgQ2F0d2VhemxlIChCb2luZywgMTIuIEZlYiAyMDA0LCAxNzowMTo1MCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTA3NjU5ODIyMCBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49T2dvIHJ0PTEwNzY1OTczNDcgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMDc2NTk3MzE1CkV4aXN0ZW50aWFsaXN0ZW5mcnVlaHN0dWVjazogRWluZSBncm9zc2UgVGFzc2Ugc3RhcmtlciBLYWZmZWUsIGVpbmUgQXNwaXJpbiwKZWluZSBHYXVsb2lzZSBvaG5lIEZpbHRlci4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFiZW5kZXNzZW4gYSBsYSBDYXR3ZWF6bGUgKEJvaW5nLCAxMi4gRmViIDIwMDQsIDE3OjAxOjUxKToKfiMhIG9uPUtlbGx5YnVuZHkgb3Q9MTA3NjU5OTM0NiBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNzY1OTgyMjAgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMDc2NTk3MzE1CkhpaGkgZGFzIGdhYnMgbWFsIGFscyBGcnVlaHN0dWVjayAnV2FsZGknIGltIGdsZWljaG5hbWlnZW4gTG9rYWwgYW0gaGllc2lnZW4KU3BvcnRpbnN0aXR1dCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBwZW5uZSBhIGxhIGdub21lIChCb2luZywgMTIuIEZlYiAyMDA0LCAxNzowMTo1NCk6Cn4jISBvbj1Nb250YW51cyBvdD0xMDc2NTk5OTAxIG9nPWtvY2hyZXplcHRlCn4jISBybj1Hbm9tZSBydD0xMDc2NTk5NTM2IHJnPWtvY2hyZXplcHRlCn4jISB0aWQ9MTA3NjU5NTgzMApGcnVlaHN0dWVjayBmdWVyIEFibmVobWVyCgptYW4gbmVobWU6IDEgRmxhc2NoZSBNaW5lcmFsd2Fzc2VyCjEgRmxhc2NoZSBHZW11ZXNlc2FmdAoxIEthbm5lIFRlZQoKKHVuZCBuZWhtZSBzb25zdCBuaWNodHMgenUgc2ljaC4uLgopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBwZW5uZSBhIGxhIGdub21lIChCb2luZywgMTIuIEZlYiAyMDA0LCAxNzowMTo1NSk6Cn4jISBvbj1Hbm9tZSBvdD0xMDc2NjAwODE4IG9nPWtvY2hyZXplcHRlCn4jISBybj1Nb250YW51cyBydD0xMDc2NTk5OTAxIHJnPWtvY2hyZXplcHRlCn4jISB0aWQ9MTA3NjU5NTgzMAprb2VubnQgaWhyIGRhbWl0IG5pY2h0IG5hY2ggbWVnYXNjaG1hcnJuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogcGVubmUgYSBsYSBnbm9tZSAoQm9pbmcsIDEyLiBGZWIgMjAwNCwgMTc6MDE6NTYpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwNzY2MDEyNzAgb2c9a29jaHJlemVwdGUKfiMhIHJuPUdub21lIHJ0PTEwNzY2MDA4MTggcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMDc2NTk1ODMwCk5vcGUsIGxlaWRlciBuaWNodCBtb2VnbGljaC4gRmFsc2NoZXIgdGhyZWFkLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWJlbmRlc3NlbiBhIGxhIENhdHdlYXpsZSAoQ2F0d2VhemxlLCAxMy4gRmViIDIwMDQsIDA4OjM0OjUzKToKfiMhIHJuPUJvaW5nIHJ0PTEwNzY2MDE3MDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDc2NjAxNzA4CkV5IQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBQZXJsIGZ1ZXIgQW5mYWVuZ2VyIChCYW1idWxrbywgMTMuIEZlYiAyMDA0LCAxMDoxODo1NCk6Cn4jISBybj1Ib3VzZWhvbGRlciBydD0xMDc2NjYyOTM0IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwNzY0OTQyNjgKSWNoIGhhYmUgZ2Vob2VydCwgZGFzIGRhcyBXZXR0ZXIgZG9ydCBhdWNoIHZpZWwgYW5nZW5laG1lciBpc3QgYWxzIGF1ZiBlaW5lcgpTdWVkc2VlaW5zZWwuIFNpbmQgYWJlciBudXIgR2VydWVjaHRlLgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktvYW5hcyBIYXJlbSBdOi0+IChBaGFiLCAxNS4gRmViIDIwMDQsIDAwOjM3OjM1KToKRHUgc3RlaHN0IGluIGVpbmVyIGtsZWluZW4gS2FtbWVyLCBiZWkgZGVyIGVzIHNpY2ggZ2FueiBvZmZlbnNpY2h0bGljaCB1bSBlaW5lClNjaGF0emthbW1lciBoYW5kZWx0LiBBbGxlcyBoaWVyIGJlc3RlaHQgYXVzIEFkYW1hbnRpdW06IGRlciBCb2RlbiwgZGllIERlY2tlLApkaWUgV2FlbmRlLCBkaWUgUmVnYWxlIHVuZCBzb2dhciBkaWUgVHVlci4KRWluZSBhYmdlc2NobG9zc2VuZSBUdWVyIGF1cyBBZGFtYW50aXVtLgpFcyBnaWJ0IGtlaW5lIHNpY2h0YmFyZW4gQXVzZ2FlbmdlLgoyIE1ldGVvcml0ZW5laXNlbm5hZGVsbi4gICAgICAgICAgICAgICAyNCBlaW5rYXJhZXRpZ2UgQXF1YW1hcmluZS4KNyBlaW5rYXJhZXRpZ2UgVG9wYXNlLiAgICAgICAgICAgICAgICAgNTAwMDAgTXVlbnplbi4KMiBlaW5rYXJhZXRpZ2UgU21hcmFnZGUuICAgICAgICAgICAgICAgR2F0byBNZXBoaXN0by4KNCBlaW5rYXJhZXRpZ2UgUnViaW5lLiAgICAgICAgICAgICAgICAgRWluIFBhcnR5YnJldHQuICgxMCkKNyBlaW5rYXJhZXRpZ2UgT2t0YXJpbmUuICAgICAgICAgICAgICAgRWluIGdyb3NzZXIgQmFycmVuIEthdHplbnNpbGJlci4KMyBlaW5rYXJhZXRpZ2UgU2FwaGlyZS4KCkFoYWIsIGJyZWl0IGdyaW5zZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtvYW5hcyBIYXJlbSBdOi0+IChHYXRvLCAxNS4gRmViIDIwMDQsIDAxOjE5OjMzKToKfiMhIHJuPUFoYWIgcnQ9MTA3NjgwMTg1NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzY4MDE4NTUKWmF1YmlzIG5laG1lbiBzaWNoIEtvbXBvcy4KSWNoIG5laG1lIEtvYW5hID46KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBtcnVmZSAoR3JpbW1ib3JuLCAxNi4gRmViIDIwMDQsIDExOjQ2OjA4KToKfiMhIHJuPUtleSBydD0xMDc2OTI4MjI1IHJnPWV0aWtldHRlCn4jISB0aWQ9MTA3NjQ2MjIwNApEYXJmc3QgRHUuIEljaCBzb3JnZSBhdWNoIGdlcm5lIGRhZnVlciwgZGFzcyBlcyBnYW56IHNpY2hlciBuaWNodCBiZWkgZWluZXIKQW5rdWVuZGlndW5nIGJsZWlidC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBaYXViZXJ3YWxkIChQYWRyZWljLCAxNi4gRmViIDIwMDQsIDEyOjQxOjU3KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDc2OTMxNjg1IG9nPWQud2FsZAp+IyEgcm49UGFkcmVpYyBydD0xMDc2OTMxNTk1IHJnPWQud2FsZAp+IyEgdGlkPTEwNzY5MzA1MDEKTmljaHQsIGRhc3MgaWNoIGdsYXViZW4gd3VlcmRlLCBab29rIGtvZW5uZSBzaWNoIG5pY2h0IHZlcnRlaWRpZ2VuLCBhYmVyIGljaApmaW5kZSBkYXMgc2Nob24gZWluIHdlbmlnIHVuZGFua2Jhci4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IG1ydWZlIChHcmltbWJvcm4sIDE2LiBGZWIgMjAwNCwgMTI6NDM6NDYpOgp+IyEgcm49Tm9ubmUgcnQ9MTA3NjkzMTc4MCByZz1ldGlrZXR0ZQp+IyEgdGlkPTEwNzY0NjIyMDQKIkVzIGdpYnQgZWluZW4gVG9kIG5hY2ggZGVtIFRvZCIsIGphd29sbC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogbXJ1ZmUgKERhcmtsb3IsIDE2LiBGZWIgMjAwNCwgMTI6NDU6NTUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNzY5MzE4MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc2NDYyMjA0CkRhcyBrYW5uIGRhbm4gYWJlciBudXIgZWluZSBiaWxsaWdlIEtvcGllIHZvbSBUT0Qgc2VpbiAtIGlzIHdhaHJzY2hlaW5saWNoCnRvZC4KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRlYW1rYW1wZi4uLi4gKFpvb2ssIDE2LiBGZWIgMjAwNCwgMTc6MDA6MTgpOgoKQmVuZGFpZ2EgRWdpZCBrb21tdCBhbi4KICBDb3JheCB2ZXJmZWhsdCBCZW5kYWlnYSBFZ2lkLgogIENvcmF4IHplcnNjaG1ldHRlcnQgQmVuZGFpZ2EgRWdpZCBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KQmVuZGFpZ2EgRWdpZCBmYWVsbHQgdG90IHp1IEJvZGVuLgpCZW5kYWlnYSBFZ2lkIHRyaXR0IHZvci4KCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTm9jaG1hbCBkYXZvbmdla29tbWVuIChNY2RlZSwgMTYuIEZlYiAyMDA0LCAyMTo0NjowNCk6CltUZWFtIERpbmdzOlNycmFlXSBoaWxmZQouLi4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiwgd2VzdGVuIHVuZCBub3JkZW4uCktsZWluIFNycmFlIGlzdCBmYXN0IGdyb3NzLgo+IHRlYW0gaW5mbwogIE5hbWUgICAgICAgIEdpbGRlICAgICAgICAgICBMViBHTFYgIExQIChNTFApICBLUCAoTUtQKSBWb3JzLiBHUiBBUiBUUiBGUiBBClYKKiBNY0RlZSAgICAgICBLYWVtcGZlciAgICAgICAxMTEgIDIzIDI1MCAoMjUwKSAyMDIgKDIwMikgICAgODAgIDEgIDEgIDEgLS0gWCAtCiAgU3JyYWUgICAgICAgS2FyYXRlICAgICAgICAgIDUzICAxNCAgIDAgKDE4NikgICAwICgzMDApICAgMTAwICAxICAxICAxIC0tIFgKLQo+IGVudGdpZnRlIHNycmFlCkR1IGhlaWxzdCBTcnJhZXMgVmVyZ2lmdHVuZyB2b2VsbGlnLgpTcnJhZSBiZWRhbmt0IHNpY2ggYmVpIERpci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLdXJpb3NlIEF1a3Rpb25lbiBiZWkgZUJheS4uLiAoQW1hcnlsbGlzLCAxNi4gRmViIDIwMDQsIDIxOjU5OjExKToKfiMhIHJuPVJvbmRhIHJ0PTEwNzY4Njg0MTUgcmc9d3d3Cn4jISB0aWQ9MTA3Njg2ODQxNQpHaWJ0cyBlaWdlbnRsaWNoIHNjaG9uIGVpbmUgVVJMIG1pdCBlaW5lciBTYW1tbHVuZyBkZXIga3VyaW9zZXN0ZW4vd2l0emlnc3RlbgpNaXRnbGllZHNuYW1lbj8KCkljaCBiaWV0ZSBoZXV0ZTogS3VoYnVzZW5lbnRsZWVydW5nc2luZ2VuaWV1cgoKQW1hKiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIHdlaXNzIG1laHIhIChDYXR3ZWF6bGUsIDE3LiBGZWIgMjAwNCwgMTU6MDg6NDYpOgoKTW9pbiEKCldlbm4gaWhyIE1lZ2FzY2htYXJybiBsZXNlbiB3dWVyZGUsIGRhbm4gd3Vlc3N0ZXN0IGlociwgd2llIGRhcyBzbyBsYWV1ZnQsIG1pdApkZW4gS3JhbmtlbnZlcnNpY2hlcnVuZ2VuLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIHdlaXNzIG1laHIhIChNYWhhcmV0LCAxNy4gRmViIDIwMDQsIDE1OjI0OjQyKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDc3MDI2OTI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NzAyNjkyNgpVbmQgR2xvaW5zb25zIEtpbmRlcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEljaCB3ZWlzcyBtZWhyISAoR3JpbW1ib3JuLCAxNy4gRmViIDIwMDQsIDE1OjI1OjExKToKfiMhIHJuPU1haGFyZXQgcnQ9MTA3NzAyNzg4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzcwMjY5MjYKVW5kIGplZGUgTWVuZ2Ugd2VpdGVyZXIsIHVuYXBwZXRpdGxpY2hlciBEZXRhaWxzLiBGaWxtIGF0IGVsZXZlbiEKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSWNoIHdlaXNzIG1laHIhIChHbG9pbnNvbiwgMTcuIEZlYiAyMDA0LCAxNToyNjozMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA3NzAyNzkxMSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzcwMjY5MjYKR2VyYWRlIGViZW4gZ2luZyBlcyBub2NoIHVtIFpvb2tzIGRpdmVyc2UgdW5laGVsaWNoZSBLaW5kZXIuIFNvIHVuYXBwZXRpdGxpY2gKc2luZCBLaW5kZXIgZ2FyIG5pY2h0LiBNaXQgZGVyIHJpY2h0aWdlbiBNYXJpbmFkZSB1bmQgc2F1YmVyIGdlcHV0enQgLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNaXR0ZWwgZ2VnZW4gU2NobGFmc3RvZXJ1bmdlbiAoR3JpbW1ib3JuLCAxNy4gRmViIDIwMDQsIDE2OjQ3OjIzKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDc3MDMyNjg0IG9nPXd3dwp+IyEgcm49TWFoYXJldCBydD0xMDc3MDMyNDI4IHJnPXd3dwp+IyEgdGlkPTEwNzcwMzIyNzcKV2FzIGlzdCBkZW5uIGRhcz8gRWluc2NobGFmaGlsZmVuIGF1cyBkZW0gUy9NLUJlcmVpY2g/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1pdHRlbCBnZWdlbiBTY2hsYWZzdG9lcnVuZ2VuIChHcmltbWJvcm4sIDE3LiBGZWIgMjAwNCwgMTY6NDc6MjQpOgp+IyEgb249THVnIG90PTEwNzcwMzI3MjQgb2c9d3d3Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA3NzAzMjY4NCByZz13d3cKfiMhIHRpZD0xMDc3MDMyMjc3CkJhaCBIdW1idWcuIEJlaSBhbHRlbiBtZXRhbGxpY2EsIFNsYXllciBvZGVyIHZlbm9tIHNjaGxhZmUgaWNoIGJlc3RlbnMgZWluLi4uCgpMdWdpZmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNaXR0ZWwgZ2VnZW4gU2NobGFmc3RvZXJ1bmdlbiAoR3JpbW1ib3JuLCAxNy4gRmViIDIwMDQsIDE2OjQ3OjM5KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDc3MDMyODMxIG9nPXd3dwp+IyEgcm49THVnIHJ0PTEwNzcwMzI3MjQgcmc9d3d3Cn4jISB0aWQ9MTA3NzAzMjI3NwpBbGxlcyBlaW5lIEZyYWdlIGRlciBMYXV0c3RhZXJrZS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTWl0dGVsIGdlZ2VuIFNjaGxhZnN0b2VydW5nZW4gKEdyaW1tYm9ybiwgMTcuIEZlYiAyMDA0LCAxNjo0ODo1Nik6Cn4jISBvbj1MdWcgb3Q9MTA3NzAzMjg3NSBvZz13d3cKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDc3MDMyODMxIHJnPXd3dwp+IyEgdGlkPTEwNzcwMzIyNzcKR2FueiBsYXV0LCBHUklNTUJPUk4hCgpMdWdpZmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNaXR0ZWwgZ2VnZW4gU2NobGFmc3RvZXJ1bmdlbiAoR3JpbW1ib3JuLCAxNy4gRmViIDIwMDQsIDE2OjQ5OjQwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDc3MDMyOTM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NzAzMjI3NwpJY2ggYmV6d2VpZmVsLCBkYXNzIER1IGJlaSAqaXJnZW5kZWluZXIqIE11c2lrIG1pYiAxMjAgRGV6aWJlbCBydWhpZyBzY2hsYWZlbgprYW5uc3QuIE5pY2h0IG9obmUgZWluZSBXb2NoZSBTY2hsYWZlbnR6dWcgdm9yaGVyLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBNaXR0ZWwgZ2VnZW4gU2NobGFmc3RvZXJ1bmdlbiAoTHVnLCAxNy4gRmViIDIwMDQsIDE2OjUwOjQ4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDc3MDMyOTgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NzAzMjI3NwpGcmFnIEVsb3JhLCBmYWxscyBEdSBzaWUgaXJnZW5kd2FubiBtYWwgenVmYWVsbGlnIHNpZWhzdC4uLgoKTHVnaWZlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTWl0dGVsIGdlZ2VuIFNjaGxhZnN0b2VydW5nZW4gKEdsb2luc29uLCAxNy4gRmViIDIwMDQsIDE2OjUyOjA3KToKfiMhIHJuPUx1ZyBydD0xMDc3MDMzMDQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NzAzMjI3NwpPZGVyIGVudGxhbmd0YXVtZWxuIHNpZWhzdD8gSGFsdGVyIGRpciBiZWkgMTIwIGRiIG5pY2h0IGRpZSBWaWJyYXRpb25lbiBkaWUKQXVnZW5saWRlciBvZmZlbj8gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBNaXR0ZWwgZ2VnZW4gU2NobGFmc3RvZXJ1bmdlbiAoTHVnLCAxNy4gRmViIDIwMDQsIDE2OjUzOjE2KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwNzcwMzMxMjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3MDMyMjc3CkVpbmZhY2ggZWluIHBhYXIgUmFldW1lIHdlaXRlciB6aWVoZW4sIGJpcyBkZXIgTGFlcm0gZXJ0cmFlZ2xpY2hlIExhdXRzdGFlcmtlCmVycnJlaWNodC4gU2Nob24gc2luZCAxMjAgZGIga2VpbiBQcm9ibGVtIG1laHIuLi4KCkx1Z2lmZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNaXR0ZWwgZ2VnZW4gU2NobGFmc3RvZXJ1bmdlbiAoR2xvaW5zb24sIDE3LiBGZWIgMjAwNCwgMTY6NTU6MTIpOgp+IyEgcm49THVnIHJ0PTEwNzcwMzMxOTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3MDMyMjc3CkphLCBlaW5lIDEwMC1HcmFkIENlbHNpdXMgU2F1bmEgaXN0IGF1c3NlcmhhbGIgZGVyIFNhdW5hIGF1Y2ggc2VocgplcnRyYWVnbGljaC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTWl0dGVsIGdlZ2VuIFNjaGxhZnN0b2VydW5nZW4gKEx1ZywgMTcuIEZlYiAyMDA0LCAxNjo1NjozNyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDc3MDMzMzEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NzAzMjI3NwpFYmVuIQoKTHVnaWZlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE1pdHRlbCBnZWdlbiBTY2hsYWZzdG9lcnVuZ2VuIChHcmltbWJvcm4sIDE3LiBGZWIgMjAwNCwgMTc6MDI6MDUpOgp+IyEgcm49THVnIHJ0PTEwNzcwMzMzOTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3MDMyMjc3ClBlcnNvZW5saWNoIGhhYmUgaWNoIGF1Y2ggbWl0IERlciBBdG1vc3BoYWVyZSBhdWYgZGVyIFZlbnVzIGtlaW5lIFByb2JsZW1lLgo2MDBLIHVuZCBTY2h3ZWZlbHNhZXVyZSBzaW5kIHdpcmtsaWNoIGJlaGFnbGljaCwgd2VubiBkYXMgYXVmIGRlbQpOYWNoYmFycGxhbmV0ZW4gaXN0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTWl0dGVsIGdlZ2VuIFNjaGxhZnN0b2VydW5nZW4gKEx1ZywgMTcuIEZlYiAyMDA0LCAxNzowMzowMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA3NzAzMzcyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzcwMzIyNzcKU28gdWViZXJsZWJ0IHNpY2ggYXVjaCBkaWUgdW5taXR0ZWxiYXJlIE5hZWhlIHp1IGVpbmVtIFNjaHdhcnplbiBMb2NoIGdhbnoKbG9ja2VyIHVuZCBlbnRzcGFubnQuCgpMdWdpZmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogTWl0dGVsIGdlZ2VuIFNjaGxhZnN0b2VydW5nZW4gKEdsb2luc29uLCAxNy4gRmViIDIwMDQsIDE3OjA0OjEwKToKfiMhIHJuPUx1ZyBydD0xMDc3MDMzNzgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NzAzMjI3NwpIbS4gQXVmZ3J1bmQgZGVyIHBvdGVudGllbGxlbiBTdHJhaGx1bmdzZG9zZW4gaW4gUG9sbmFlaGVuIGVpbmVyCkFra3JldGlvbnNzY2hlaWJlIHN0ZWhlIGljaCBkYW5uIGRvY2ggbWVociBhdWYgYnJhdW5lIFp3ZXJnZSBtaXQKRGlhbWFudGtlcm5lbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogTWl0dGVsIGdlZ2VuIFNjaGxhZnN0b2VydW5nZW4gKEx1ZywgMTcuIEZlYiAyMDA0LCAxNzoxMDo1Myk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDc3MDMzODUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NzAzMjI3NwpLS2FubiBtYW4gc293YXMgZXNzZW4/CgpMdWdpZmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogTWl0dGVsIGdlZ2VuIFNjaGxhZnN0b2VydW5nZW4gKEdsb2luc29uLCAxNy4gRmViIDIwMDQsIDE3OjExOjU5KToKfiMhIHJuPUx1ZyBydD0xMDc3MDM0MjUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NzAzMjI3NwpEYSBpc3Qgc2ljaGVybGljaCBhdWNoIGVzc2JhcmVzIGRhYmVpLiBGdWVyIC4uLiBTdGVpbmJlaXNzZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IE1pdHRlbCBnZWdlbiBTY2hsYWZzdG9lcnVuZ2VuIChMdWcsIDE3LiBGZWIgMjAwNCwgMTc6MTI6NTkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA3NzAzNDMxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzcwMzIyNzcKQXVzZ2VzcHVja3RlIERpYW1hbnRrZXJuZSBhdWZzYW1tZWxuLCBrb2VubnRlIHNpY2ggZXZlbnR1ZWxsIGphIGxvaG5lbi4uLgoKTHVnaWZlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIG9kZXIgc28uLi4gKEFtYXJ5bGxpcywgMTcuIEZlYiAyMDA0LCAyMDowNDoxMik6CiAgSGV6J1pvYXJhdGggaHVlbGx0IE1lZGljIGluIGVpbiBNZWVyIGF1cyBGbGFtbWVuLgogIEhleidab2FyYXRoIGJydWVsbHQgZXR3YXMgc2NocmVja2xpY2hlcy4KICBIZXonWm9hcmF0aCBzcHVja3QgZWluZW4gU3RyYWhsIHJlaW5lciBNYWdpZSBhdWYgTWVkaWMuCiAgSGV6J1pvYXJhdGggc2NobGFlZ3Qgc2VpbmUgUHJhbmtlbiBpbiBNZWRpY3MgTGVpYi4KTWVkaWMgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KTWVkaWMgdmVyc2Nod2luZGV0IGdhbnogbGVpc2UuCltUb2Q6TGFyc10gSGV6J1pvYXJhdGggaGF0IGdlcmFkZSBNZWRpYyB1bWdlYnJhY2h0LgpbVG9kOkhleidab2FyYXRoXSBEYSBtdXNzIHNjaG9uIGVpbiBhbmRlcmVyIGtvbW1lbiwgdW0gbWljaCB6dSBiZXNpZWdlbi4KCkRhIGhhbGYgYXVjaCBrZWluIE1lZGljIG1laHIuLi4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1pdHRlbCBnZWdlbiBTY2hsYWZzdG9lcnVuZ2VuIChBa2FzaGEsIDE3LiBGZWIgMjAwNCwgMjE6MDU6MjUpOgp+IyEgcm49TXVwZmVsIHJ0PTEwNzcwNDc2ODcgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNzcwMzIyNzcKRXMgZ2VodCB1bXMgRWluc2NobGFmZW4sIG5pY2h0IHVtcyBpbnMgS29tYSBmYWxsZW4sIE11cGZlbC4KCkFrYXNoYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1pdHRlbCBnZWdlbiBTY2hsYWZzdG9lcnVuZ2VuIChBbWFyeWxsaXMsIDE3LiBGZWIgMjAwNCwgMjE6MDg6MDApOgp+IyEgcm49QWthc2hhIHJ0PTEwNzcwNDgzMjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3MDMyMjc3Cklnbm9yYW50LgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTWl0dGVsIGdlZ2VuIFNjaGxhZnN0b2VydW5nZW4gKEdyaW1tYm9ybiwgMTcuIEZlYiAyMDA0LCAyMTowODo1OCk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTA3NzA0ODQ4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzcwMzIyNzcKQWIgZWluZW0gU2NoYWxsZHJ1Y2sgdm9uIHZpZWxsZWljaHQgc28gMTUwIERlemliZWwgZXJsZWRpZ3Qgc2ljaCBkYXMgbWl0IGRlbQpFaW5zY2hsYWZlbiB2b24gYWxsZWluZSwgc2NoYWV0emUgaWNoLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNaXR0ZWwgZ2VnZW4gU2NobGFmc3RvZXJ1bmdlbiAoQ2F0d2VhemxlLCAxOC4gRmViIDIwMDQsIDEwOjA5OjM5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDc3MDMyODQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NzAzMjI3NwpJc3Qga2xhciwgRnJlcXVlbnp2aWVsZmFjaGUgZnVua3Rpb25pZXJlbiBiZXN0aW1tdCBhdWNoLiAxNDQsIDIxNiwgMjg4IC4uLi4KVW5kIG1pdCBldHdhcyBHZXNjaGljayBrcmllZ3QgbWFuIGJlc3RpbW10IGF1Y2ggZWluZSBwYXNzZW5kZSBPYmVyc2Nod2luZ3VuZwpoaW4uCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFRyYXVyaWdlIE5hY2hyaWNodC4uLi4gKENhdHdlYXpsZSwgMTguIEZlYiAyMDA0LCAxMDoxMTowMSk6Cn4jISBybj1Nb250YW51cyBydD0xMDc3MDk0ODUwIHJnPWQuZWJlbmUKfiMhIHRpZD0xMDc3MDQ5OTkwCkFiaGFlbmdlbiBpc3QgbW9kZXJuLiBMYXNzIGRpY2ggbmljaHQgYXVmaGFsdGVuLiBCbG9zcyBuaWNodCBhdWYgZGllIEJyZW1zZQp0cmV0ZW4uIExhc3Mgc28gcmljaHRpZyBkYXMgRSByYXVzaGFlbmdlbiA6KQoKR28gZ28gZ28gLi4uCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsbGUgWndlaXRpZXMgcmF1cz8gKEFuYXRvbCwgMTguIEZlYiAyMDA0LCAxODowMjo0Nyk6CktleSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKTGVsbGRvcmluICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpGb29iYXIgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpWb24gd2VnZW4gIktleSBoYXR0ZSBQYXVzZS4iIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFsbGUgWndlaXRpZXMgcmF1cz8gKEtleSwgMTkuIEZlYiAyMDA0LCAwODo1NzoyMCk6Cn4jISBybj1BbmF0b2wgcnQ9MTA3NzEyMzc2NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzcxMjM3NjcKTWlzdCwgZGFubiBoYXN0IER1IG1laW5lbiBoZWltbGljaCBpbiBNdWVuc3RlciBlaW5nZXNjaGxldXN0ZW4gUmVjaG5lciBhbHNvCmVudGRlY2t0IDooCgpJY2ggaGFldHRlIGRhbWFscyB2aWVsbGVpY2h0IGRvY2ggZWluZSBsYWVuZ2VyZSBQYXVzZSBlaW5sZWdlbiBzb2xsZW4sIHdhcgphdWNoIHp1IGF1ZmZhZWxsaWcgPTspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNvbmRlcnRyZWZmZW4gaW4gSGFtYnVyZyAoUGl0ZmFsbCwgMTkuIEZlYiAyMDA0LCAyMzoyMjoxOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA3NzEzMzc5NiByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDc3MTMzNzk2Clp1bSBHbHVlY2sgbXVzcyBtYW4gRGljaCBqYSBuaWNodCBmcmFnZW4uCgpQaXQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNvbmRlcnRyZWZmZW4gaW4gSGFtYnVyZyAoQ3JvZnQsIDE5LiBGZWIgMjAwNCwgMjM6MjQ6NTMpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDc3MjI5MzM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NzEzMzc5NgpPY2guICBJY2ggd3Vlc3N0ZSBzY2hvbiB3YXMgaWNoIGRhIHVtemllaGVuIGhlbGZlbiB3b2xsZW4gd3VlcmRlIDpvKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU29uZGVydHJlZmZlbiBpbiBIYW1idXJnIChHcmltbWJvcm4sIDE5LiBGZWIgMjAwNCwgMjM6MjU6MTUpOgp+IyEgcm49UGl0ZmFsbCBydD0xMDc3MjI5MzM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NzEzMzc5NgpVbmQgenVtIEdsdWVjayBtdWVzc3RlIGljaCBhdWNoIG5pY2h0IGplZGVtIHdhaHJoZWl0c2dlbWFlc3MgYW50d29ydGVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTb25kZXJ0cmVmZmVuIGluIEhhbWJ1cmcgKERhcmtsb3IsIDIwLiBGZWIgMjAwNCwgMDE6NDg6NTUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNzcyMjk1MTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3MTMzNzk2Cjp2ZXJtdXRldCBtYWwgV2hpc2t5CgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTb25kZXJ0cmVmZmVuIGluIEhhbWJ1cmcgKE1hcmN1cywgMjAuIEZlYiAyMDA0LCAwNzozODoxNik6Cn4jISBybj1EYXJrbG9yIHJ0PTEwNzcyMzgxMzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3MTMzNzk2Ck51biwgCgpJY2ggaGFldHRlIGVzIGVoZXIgYXVmIEdyaW1tYm9ybnMgV2VpbnZvcnJhZXRlIGFiZ2VzZWhlbiA6KQoKQ2lhbywgTWFyY3VzIChkdXJmdGUgbWFsIG1pdHNjaGxlcHBlbiB1bmQgb2VmdGVycyBtaXR0cmlua2VuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTb25kZXJ0cmVmZmVuIGluIEhhbWJ1cmcgKE1vbnRhbnVzLCAyMC4gRmViIDIwMDQsIDEwOjMzOjM4KToKfiMhIHJuPU1hcmN1cyBydD0xMDc3MjU5MDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NzEzMzc5NgpJY2ggZ2xhdWJlLCBDcm9mdCB3dWVyZGUgRHIuIEVkZ2FyIGVudGZ1ZWhyZW4gd29sbGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU29uZGVydHJlZmZlbiBpbiBIYW1idXJnIChXaGl0ZXRpZ2VyLCAyMC4gRmViIDIwMDQsIDEwOjMzOjU2KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNzcyNjk2MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3MTMzNzk2CipraWNoZXIqIGRhcmFuIGhhdHRlIGljaCBhdWNoIHp1ZXJzdCBnZWRhY2h0LiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU29uZGVydHJlZmZlbiBpbiBIYW1idXJnIChDcm9mdCwgMjAuIEZlYiAyMDA0LCAxMDozNDo1MSk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwNzcyNjk2MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3MTMzNzk2CldhcyB3aWxsIGljaCBtaXQgRHIuIEVkZ2FyPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFNvbmRlcnRyZWZmZW4gaW4gSGFtYnVyZyAoTW9udGFudXMsIDIwLiBGZWIgMjAwNCwgMTA6NDM6NDYpOgp+IyEgcm49Q3JvZnQgcnQ9MTA3NzI2OTY5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzcxMzM3OTYKIkdpYiBtaXIgYWxsIGRlaW5lbiBBbGtvaG9sLCBvZGVyIGR1IHNpZWhzdCBEci4gRWRnYXIgbmllIHdpZWRlci4iCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTb25kZXJ0cmVmZmVuIGluIEhhbWJ1cmcgKENyb2Z0LCAyMC4gRmViIDIwMDQsIDExOjA3OjQ1KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwNzcyNzAyMjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3MTMzNzk2ClZpZWwgenUgYXVmZmFlbGxpZy4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU29uZGVydHJlZmZlbiBpbiBIYW1idXJnIChHcmltbWJvcm4sIDIwLiBGZWIgMjAwNCwgMTE6MTI6MDIpOgp+IyEgcm49Q3JvZnQgcnQ9MTA3NzI3MTY2NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzcxMzM3OTYKRXMgZ2VodCBiZWkgZGVtIFRlcm1pbiB3ZWRlciB1bSBEci4gRWRnYXIsIG5vY2ggdW0gbWVpbmUgZGl2ZXJzZW4gQWxrb2hvbGlrYS4gCgpHZEFbZXgtUl0gT0hkTXVCZEUgIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFNvbmRlcnRyZWZmZW4gaW4gSGFtYnVyZyAoQW50aGVhLCAyMC4gRmViIDIwMDQsIDExOjEzOjEyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDc3MjcxOTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NzEzMzc5NgpIbS4uLiBEaXZlcnNlIENvbXB1dGVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFNvbmRlcnRyZWZmZW4gaW4gSGFtYnVyZyAoR3JpbW1ib3JuLCAyMC4gRmViIDIwMDQsIDExOjE2OjQxKToKfiMhIHJuPUFudGhlYSBydD0xMDc3MjcxOTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NzEzMzc5NgpOb3BlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogU29uZGVydHJlZmZlbiBpbiBIYW1idXJnIChEYXJrbG9yLCAyMC4gRmViIDIwMDQsIDEyOjIyOjQyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDc3MjcyMjAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3NzEzMzc5NgpVbmQgRHUgZ2xhdWJzdCBkYW5uIGtvbW10IGplbWFuZD8gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2FjaGVsbWFlbm5lci4uLiAoVmFuaW9uLCAyMC4gRmViIDIwMDQsIDIwOjE0OjAzKToKfiMhIHJuPURhcmtsb3IgcnQ9MTA3NzI5ODY2NyByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTEwNzcyODY5NzIKU2NobGltbWVyOiBFcnptYWdpZXJ3aWxsa3VlciA6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlaGUuLi4gKE11cGZlbCwgMjAuIEZlYiAyMDA0LCAyMzoyMToxNCk6CltXaXNzZW5zY2hhZnQ6QmFtYmldIGthbm4gaWNoIGxlc2VuLCBnbG9pbnNvbj8KClRzY2hhLi4uCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBZW5kZXJ1bmdlbiBiZWkgInNjaGFldHoiIChMaWFyYSwgMjIuIEZlYiAyMDA0LCAxNjo0NTozNik6Cn4jISBybj1NYWhhcmV0IHJ0PTEwNzc0NjQ1ODkgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTA3NzQ2NDU2NQpIYXN0IGR1IHdpZWRlciBCdWVjaGVyIGdlbGVzZW4/IDs+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBZW5kZXJ1bmdlbiBiZWkgInNjaGFldHoiIChBbmF0b2wsIDIyLiBGZWIgMjAwNCwgMTY6NDk6NDMpOgp+IyEgcm49TGlhcmEgcnQ9MTA3NzQ2NDczNiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzc0NjQ1NjUKVHlwIEVuZ2xhbmQ/IAoKKGh0dHA6Ly9mdW4uZHJuby5kZS9mbGFzaC9JbnRlcm9yZ2FzbS5zd2YgLSBGbGFzaCA7KSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBZW5kZXJ1bmdlbiBiZWkgInNjaGFldHoiIChNYWhhcmV0LCAyMi4gRmViIDIwMDQsIDE2OjUxOjM3KToKfiMhIHJuPUxpYXJhIHJ0PTEwNzc0NjQ3MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3NDY0NTY1CkphLCBsZXNlbiBiaWxkZXQuCgpNYWhhLCBTcGlvbiB1bmQgR2lmdG1pc2NoZXIgYUQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFlbmRlcnVuZ2VuIGJlaSAic2NoYWV0eiIgKExpYXJhLCAyMi4gRmViIDIwMDQsIDE2OjUyOjIwKToKfiMhIHJuPU1haGFyZXQgcnQ9MTA3NzQ2NTA5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzc0NjQ1NjUKTGFzcyBkYXMgb2RlciBsYXNzIG1pY2ggdGVpbGhhYmVuLiA7PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFuY2hlIHZlcnN0ZWhlbiBlcyBuaWUgLi4uIChhYmVyIHNpbmQgaW4gZGVyIEJhbGFuY2UgOykgKExpYXJhLCAyMi4gRmViIDIwMDQsIDE3OjIwOjE2KToKRGVpbiBGcmV1bmQgQnJvdG5hZWwgdGVpbHQgRGlyIG1pdDogd293Li4gZWluIGJpZW5lbnN0YWNoZWwgZGVyIDE4MCBjbSBsYW5nCkRlaW4gRnJldW5kIEJyb3RuYWVsIHRlaWx0IERpciBtaXQ6IGlzdC4uIHdvIGJpbiBpY2ggaGllciAqeml0dGVyKgpEZWluIEZyZXVuZCBNb3Jnb3RoIHRlaWx0IERpciBtaXQ6IHRqYSBicm90aS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE11ZW5zdGVyLVBhcnR5IChEZWVwYmx1ZSwgMjIuIEZlYiAyMDA0LCAyMzo0NjoyNyk6Cn4jISBvbj1EZWVwYmx1ZSBvdD0xMDc3NDg5OTYxIG9nPXBhcnR5Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA3NzQ2MjcyMyByZz1wYXJ0eQp+IyEgdGlkPTEwNzc0NjI3MjMKPiBVbmQgd2llIGdlc2FndCwgaWhyIG11ZXNzdCBhbGxlIGtvbW1lbiA6KQpVbnRlcnNjaHJlaWJzdCBEdSByZWNodHNrcmFlZnRpZyBkaWUgVXJsYXVic3NjaGVpbmUgZGVyIEJlcnVmc3RhZXRpZ2VuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTb25kZXJ0cmVmZmVuIGluIEhhbWJ1cmcgKExpYXJhLCAyMy4gRmViIDIwMDQsIDE4OjMyOjI1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDc3NTMyMTk4IHJnPXRyZWZmZW4KfiMhIHRpZD0xMDc3MTMzNzk2CldhcyBoYWJ0IGlociBkYSBmdWVyIHNjaHdlaXNzdHJlaWJlbmRlIERpbmdlIHZvcj8gOz4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlZ21lbGR1bmdlbiB1bmQgQ28uIChMaWFyYSwgMjMuIEZlYiAyMDA0LCAxODo0NzoxMik6CndlZ21lbGR1bmcgbGVpYmkKTGVpYmkgaXN0IGFscyBhYndlc2VuZCBnZWtlbm56ZWljaG5ldC4KR3J1bmQ6IHRvbWF0ZW4gcGZsYW56ZW4gOikKRGVpbmUgRnJldW5kaW4gTGVpYmkgdGVpbHQgRGlyIG1pdDogaWNoIHBmbGFuemUgbWVpbmUgdG9tYXRlbiBlaW4KRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGlzIGtsYQpEZWluZSBGcmV1bmRpbiBMZWliaSB0ZWlsdCBEaXIgbWl0OiBkYXMgaXN0IG5pY2ggbHVzdGlnIDopIGRhcyBoZWlzc3QgZWhlciwKRGVpbmUgRnJldW5kaW4gTGVpYmkgdGVpbHQgRGlyIG1pdDogZGFzcyBiYWxkIHNvbW1lciB3aXJkCgpMaWFyYSwgZGVua3QgYW4gS2FybmV2YWwgaW0gU2NobmVlc3R1cm0gOz4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh1Y2ggLi4uIChMaWFyYSwgMjMuIEZlYiAyMDA0LCAyMjoxMToyMik6CkRlciBBdWdlbnN0dW1wZiBqYWd0IERpY2ggbmljaHQgbWVoci4KRGVyIFdhZWNodGVyIGphZ3QgRGljaCBuaWNodCBtZWhyLgpEZXIgQXVnZW5zdHVtcGYgamFndCBEaWNoIG5pY2h0IG1laHIuCkRlciBBdWdlbnN0dW1wZiBqYWd0IERpY2ggbmljaHQgbWVoci4KRGVyIEF1Z2Vuc3R1bXBmIGphZ3QgRGljaCBuaWNodCBtZWhyLgpEZXIgQXVnZW5zdHVtcGYgamFndCBEaWNoIG5pY2h0IG1laHIuCkRlciBBdWdlbnN0dW1wZiBqYWd0IERpY2ggbmljaHQgbWVoci4KRGVyIEF1Z2Vuc3R1bXBmIGphZ3QgRGljaCBuaWNodCBtZWhyLgpEZXIgQXVnZW5zdHVtcGYgamFndCBEaWNoIG5pY2h0IG1laHIuCkRlciBBdWdlbnN0dW1wZiBqYWd0IERpY2ggbmljaHQgbWVoci4KRGVyIEF1Z2Vuc3R1bXBmIGphZ3QgRGljaCBuaWNodCBtZWhyLgpEZXIgQXVnZW5zdHVtcGYgamFndCBEaWNoIG5pY2h0IG1laHIuCkRlciBBdWdlbnN0dW1wZiBqYWd0IERpY2ggbmljaHQgbWVoci4KRGVyIEF1Z2Vuc3R1bXBmIGphZ3QgRGljaCBuaWNodCBtZWhyLgpEZXIgQXVnZW5zdHVtcGYgamFndCBEaWNoIG5pY2h0IG1laHIuCkRlciBBdWdlbnN0dW1wZiBqYWd0IERpY2ggbmljaHQgbWVoci4KRGVyIEF1Z2Vuc3R1bXBmIGphZ3QgRGljaCBuaWNodCBtZWhyLgpEZXIgQXVnZW5zdHVtcGYgamFndCBEaWNoIG5pY2h0IG1laHIuCkRlciBBdWdlbnN0dW1wZiBqYWd0IERpY2ggbmljaHQgbWVoci4KRGVyIEF1Z2Vuc3R1bXBmIGphZ3QgRGljaCBuaWNodCBtZWhyLgpEZXIgQXVnZW5zdHVtcGYgamFndCBEaWNoIG5pY2h0IG1laHIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSHVjaCAuLi4gKEJhbWJpLCAyMy4gRmViIDIwMDQsIDIyOjMzOjUwKToKfiMhIHJuPUxpYXJhIHJ0PTEwNzc1NzA2ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3NTcwNjgyCkhvZXJ0IHNpY2ggbGVja2VyIGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBET04nVCBQQU5JQyEgKFJvbmRhLCAyMy4gRmViIDIwMDQsIDIzOjE5OjM5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDc3NTc0NjkwIHJnPWt1bHR1cgp+IyEgdGlkPTEwNzc1NzQ1NzIKUXVhdHNjaCBHcmltbWJvcm4uIFJlYW5udWVsbGVzIERyZWhidWNoLiBPZGVyIHdpZSB3YXIgZGFzIG1pdCBkZW0gcmVhbm51ZWxsZW4KQWxrPwoKUm9uZGEgKkRBLVN5bXBhdGlzYW50ZW4gIlRoZSBEZWVwZXIgTWVhbmluZyBvZiBMaWZmIiBlbXBmZWhsZW5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTXVlbnN0ZXItUGFydHkgKEJhbWJpLCAyNC4gRmViIDIwMDQsIDEzOjQ1OjE1KToKfiMhIHJuPUtleSBydD0xMDc3NjI2NDg3IHJnPXBhcnR5Cn4jISB0aWQ9MTA3NzQ2MjcyMwpEaWUgRnJlc3NlbiBhbmRlcmVyIE11ZGRlciBzZWhlbjogLi4uLiBhZWguLi4uIHVuYmV6YWhsYmFyLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJvZXNjaGUgdm9uIGhldXRlLi4uIChBcmF0aG9ybiwgMjQuIEZlYiAyMDA0LCAxODo0MToyNSk6CkdyYWRlIGFuIFAzOgoKRWluIEZyb3NjaCBzdWNodCBkaWUgd2FocmUgR3JvZXNzZS4KRWluIEZyb3NjaCBodWVwZnQgbmFjaCBPc3Rlbi4KRWluIEZyb3NjaCBodWVwZnQgaGVyZWluLgpFaW4gRnJvc2NoIGlzdCB2aWlpaWVlbCBncm9lc3NlciBhbHMgRHUsIHVuZCBqZXR6dCBlcnN0bWFsIHdlZy4KCldlciBhdWNoIGltbWVyIF9kYXNfIGdld2VzZW4gc2VpbiBtYWcuICpnKgoKQXJhdGhvcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnJvZXNjaGUgdm9uIGhldXRlLi4uIChNb3Jnb3RoLCAyNC4gRmViIDIwMDQsIDE4OjQyOjA3KToKfiMhIHJuPUFyYXRob3JuIHJ0PTEwNzc2NDQ0ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3NjQ0NDg1CgpXaWVzbz8gQmVzdGFldGlndCBkb2NoIG51ciBtYWwgd2llZGVyLCBkYXNzIER1IGthdW0gZ3JvZXNzZXIgYWxzIG5lbgpNYWdnaWV3dWVyZmVsIGJpc3QgOikKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ2hlbW5pdHplciBMaW51eC1UYWcgMjAwNCAoTW9yZ290aCwgMjUuIEZlYiAyMDA0LCAwNzo0NzoyNSk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwNzc2OTA5OTcgcmc9YW56ZWlnZW4KfiMhIHRpZD0xMDc3NjkwOTk3CkpldHp0LCBkYSBkaWUgTGV1dGUgd2lzc2VuIGRhc3MgRHUgZGEgYmlzdCwgd2lyZCBkYSB3b2hsIGtlaW5lciBtZWhyCmF1ZnRhdWNoZW4uCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyIDo+IChMaWFyYSwgMjUuIEZlYiAyMDA0LCAxMjo0MToxMik6CkRlaW4gRnJldW5kIE1vcmdvdGggdGVpbHQgRGlyIG1pdDogbmFqYSwgZXMgZ2lidCBnZXJ1ZmUsIHdhcyBhdWNoIG5ldHQgc2VpbgpEZWluIEZyZXVuZCBNb3Jnb3RoIHRlaWx0IERpciBtaXQ6IGthbm4sIG1pdCBnZWh0IGphIG51ciBkaWVzZXMgZ2UtZ3JhdHNlIGF1ZgpEZWluIEZyZXVuZCBNb3Jnb3RoIHRlaWx0IERpciBtaXQ6IGRlbiBzZW5rZWwKWm9vayBydWZ0OiBHcmF0cyBNb3Jnb3RoISA7KQpEZWluIEZyZXVuZCBab29rIHRlaWx0IERpciBtaXQ6IERhcz8gOykKRGVpbiBGcmV1bmQgWm9vayBodWVwcGVsdCBpbiBkZXIgRmVybmUgdW0gTW9yZ290aCBoZXJ1bSB1bmQgZ2VodCBpbiBEZWNrdW5nLiAKRGVpbiBGcmV1bmQgTW9yZ290aCB0ZWlsdCBEaXIgbWl0OiBtb21lbnQKRGVpbiBGcmV1bmQgTW9yZ290aCB0ZWlsdCBEaXIgbWl0OiBTTyA6KQpEZWluIEZyZXVuZCBab29rIHRlaWx0IERpciBtaXQ6IFdpZSAiU08iPwpEZWluIEZyZXVuZCBNb3Jnb3RoIHRlaWx0IERpciBtaXQ6IG5hIGhhdHMgYmVpIGRpciBuaWNodCBnZXNjcm9sbHQ/ICpncnVlYmVsKgpEZWluIEZyZXVuZCBab29rIHRlaWx0IERpciBtaXQ6IERvY2guIEFiZXIgZWluIFNjaHViIFNjcm9sbCBuZXJ2dCBqYSBuaWNodC4gOikKRGVpbiBGcmV1bmQgWm9vayB0ZWlsdCBEaXIgbWl0OiBWaWVsIG5lcnZpZ2VyIGlzdCBkdXJjaGdlaGVuZGVyIFNjcm9sbCwgaW4gZGVtCkRlaW4gRnJldW5kIFpvb2sgdGVpbHQgRGlyIG1pdDogZGFzIHdpY2h0aWdlIHVudGVyZ2VodCA7KQpEZWluIEZyZXVuZCBNb3Jnb3RoIHRlaWx0IERpciBtaXQ6IGhtcGYKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGloaWhpaGloaWhpaGkuLi4uIChNb3Jnb3RoLCAyNS4gRmViIDIwMDQsIDE0OjU2OjE3KToKfiMhIHJuPVpvb2sgcnQ9MTA3NzcxNzMzMyByZz1wcmFuZ2VyCn4jISB0aWQ9MTA3NzcxNzMzMwpNdXNzIGljaCBqZXR6dCBBbmdzdCBoYWJlbj8KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGloaWhpaGloaWhpaGkuLi4uIChDYXR3ZWF6bGUsIDI1LiBGZWIgMjAwNCwgMTQ6NTg6NDcpOgp+IyEgb249R2xvaW5zb24gb3Q9MTA3NzcxNzM3OSBvZz1hbGxnZW1laW5lcwp+IyEgcm49Wm9vayBydD0xMDc3NzE3MzMzIHJnPXByYW5nZXIKfiMhIHRpZD0xMDc3NzE3MzMzCkFyZ2guIE5pbW0gamVtYW5kIFpvb2sgZGFzIE5ld3N0b29sIHdlZy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhpaGloaWhpaGloaWhpLi4uLiAoQ2F0d2VhemxlLCAyNS4gRmViIDIwMDQsIDE0OjU4OjQ4KToKfiMhIG9uPVpvb2sgb3Q9MTA3NzcxNzQyMyBvZz1hbGxnZW1laW5lcwp+IyEgcm49R2xvaW5zb24gcnQ9MTA3NzcxNzM3OSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwNzc3MTczMzMKV2llc28gZGFzIE5ld3N0b29sPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBab29rIHJlaWNodC4uLiAoTXVhZGliLCAyNS4gRmViIDIwMDQsIDE1OjM2OjAwKToKfiMhIHJuPVpvb2sgcnQ9MTA3NzcxOTY5MCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwNzc3MTk2OTAKOmJlaXNzdCBoaW5laW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdpa2kgKEdyaW1tYm9ybiwgMjYuIEZlYiAyMDA0LCAxMDo0NTo1OCk6Cn4jISBybj1NdWFkaWIgcnQ9MTA3Nzc4ODYyMSByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDc3NzgzOTk4CkhlZSwgZGEgaGF0IGplbWFuZCBvZmZlbmJhciBkYXMgUHJpbnppcCBkZXMgIkxhc3RlbmhlZnRlcyIgZW50ZGVja3QuCkdyYXR1bGF0aW9uIQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXaWtpIChNdWFkaWIsIDI2LiBGZWIgMjAwNCwgMTE6MDY6NTIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwNzc3ODg3NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3NzgzOTk4CmljaCBrZW5uZSBkYXMgcHJpbnppcCBzY2hvbiBsYWVuZ2VyIGFiZXIgbGVpZGVyIGF1Y2ggZGllIGVyZmFocnVuZyBkYXMgZGVtCm1hbmFnZW1lbnQgdm9uIGtsZWluZXJlbiBmaXJtZW4gZGllc2VzIHByaW56aXAgZnVlciBpbnRlcm5lIHByb2pla3RlIHNvd2FzIHZvbgplZ2FsIGlzdCBkYXNzIHNpZSBpbW1lciB3aWVkZXIgZ2VybmUgbWl0IGFubGF1ZiBhdWYgZGllIG5hc2Ugc3ByaW5nZW4gdW5kIGFtCnNjaGx1c3MgZGVuIHNjaG1lcnogYXVmIGRpZSB0ZWNobm9sb2dpZSBvZGVyIGdhciBkaWUgbWl0YXJiZWl0ZXIgZGllIHNpZQpnZXNwcnVuZ2VuIGhhYmVuIHNjaGllYmVuIDooCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXaWtpIChHcmltbWJvcm4sIDI2LiBGZWIgMjAwNCwgMTE6MjE6NTgpOgp+IyEgcm49TXVhZGliIHJ0PTEwNzc3OTAwMTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3NzgzOTk4CkFjaCwgZnVlciBzb3dhcyBpc3QgZG9jaCBleHRyYSBkZXIgU2F0eiAiSWNoIGhhYnMgRGlyIGRvY2ggZ2xlaWNoIGdlc2FndCIKZXJmdW5kZW4gd29yZGVuLiBKZWRlbmZhbGxzIHdlaWdlcmUgaWNoIG1pY2gsIGlyZ2VuZHdhcyB6dSBtYWNoZW4gd2FzIG5pY2h0CmtsYXIgZGVmaW5pZXJ0IGlzdCB1bmQgd28gaWNoIGRhcyBuaWNodCBsZXR6dGxpY2ggc2VsYmVyIGRlZmluaWVyZW4gZGFyZi4gCgpHZEFbZXgtUl0gT0hkTXVCZEUgIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR3Jvc3NlIFBvc3RmYWVjaGVyLi4uIChXaGl0ZXRpZ2VyLCAyNi4gRmViIDIwMDQsIDEyOjM0OjI0KToKfiMhIG9uPVdoaXRldGlnZXIgb3Q9MTA3Nzc5NTI1MyBvZz1hbGxnZW1laW5lcwp+IyEgcm49Wm9vayBydD0xMDc3Nzk1MjE2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTA3Nzc5NDcxMQpTY2hvZW5lcyBGYWVobmNoZW4uLi4gaXN0IGRhcyB6dWZhZWxsaWdlcndlaXNlIGVzc2Jhcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEdyb3NzZSBQb3N0ZmFlY2hlci4uLiAoWm9vaywgMjYuIEZlYiAyMDA0LCAxMjozNDo1NCk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwNzc3OTUyNjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3Nzk0NzExCkRhcmYgaWNocyB3ZWl0ZXIgbmFjaCBNdWVsbCB2ZXJzY2hpZWJlbj8gWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEdyb3NzZSBQb3N0ZmFlY2hlci4uLiAoV2hpdGV0aWdlciwgMjYuIEZlYiAyMDA0LCAxMjozNTo1MSk6Cn4jISBybj1ab29rIHJ0PTEwNzc3OTUyOTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3Nzk0NzExCk1hY2ggbnVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdyb3NzZSBQb3N0ZmFlY2hlci4uLiAoTXVhZGliLCAyNi4gRmViIDIwMDQsIDEzOjE0OjI0KToKfiMhIHJuPVpvb2sgcnQ9MTA3Nzc5NDcxMSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwNzc3OTQ3MTEKaWNoIGhhYiBkb2NoIHNjaG9uIHVtIGtuYXBwIDIwMGsgcmVkdXppZXJ0LiBudXIgZ2VkdWxkIDo9CikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR3Jvc3NlIFBvc3RmYWVjaGVyLi4uIChab29rLCAyNi4gRmViIDIwMDQsIDE0OjA1OjM0KToKfiMhIHJuPU11YWRpYiBydD0xMDc3Nzk3NjY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3Nzc5NDcxMQpEYXMuIGlzdC4gZW50c2NoaWVkZW4uIHp1LiB3ZW5pZyEKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHcm9zc2UgUG9zdGZhZWNoZXIuLi4gKE11YWRpYiwgMjYuIEZlYiAyMDA0LCAxNDoxMTo0OCk6Cn4jISBybj1ab29rIHJ0PTEwNzc4MDA3MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3Nzk0NzExCmljaCBiaW4gamEgbm9jaCBkYWJlaQpkYXMgemVobmZhY2hlIHNjaGFmZiBpY2ggYmVzdGltbXQgbm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2lraSAoQm9pbmcsIDI2LiBGZWIgMjAwNCwgMTY6NTc6MjUpOgp+IyEgcm49TXVhZGliIHJ0PTEwNzc4MTAwNTUgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTA3Nzc4Mzk5OApIdW11aHVtdSBudWt1bnVrdSBhcHVhJ2E/CiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdpa2kgKE11YWRpYiwgMjYuIEZlYiAyMDA0LCAxOToxMjoyNCk6Cn4jISBybj1Cb2luZyBydD0xMDc3ODExMDQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3Nzc4Mzk5OApSaGluZWNhbnRodXMgcmVjdGFuZ3VsdXMhCm11YWRpYgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWxsd2lzc2VuZD8gOy0pIChBcmF0aG9ybiwgMjYuIEZlYiAyMDA0LCAyMToyNjo1Mik6CltTZWhlcjpIdW1uaV0gTmEsIHdlbGNoZXIgaXN0IGRlciBIYXNzZ290dD8gOy0pCltTZWhlcjpBbmF0b2xdIFpvb2sKW1NlaGVyOkxpYXJhXSBuYXogemF0CkVyd2FydGV0ICAob25saW5lKTogWm9vawoKQXJhdGhvcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBXaWtpIChDYXR3ZWF6bGUsIDI2LiBGZWIgMjAwNCwgMjE6NDQ6MDYpOgp+IyEgcm49Qm9pbmcgcnQ9MTA3NzgxMTA0NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzc3ODM5OTgKTmVuZSwgSG9tdS4KSGF0IG1pciBCaWcgQiBncmFkIGdlZ2ViZW4gOikKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNb3Jnb3RoLCAyNi4gRmViIDIwMDQsIDIxOjUyOjQ1KToKTnltIGVyd2Vja3QgZGVuIERyYWNoZW5nb3R0IGRlciBTY2hyZWNrZW5zc3BpdHplLgpFaWx0IGhlcmJlaSB1bmQgaGVsZnQgaWhtLgpbVG9kOkxhcnNdIEVpbiBQeXJvbWFuZSBoYXQgZ2VyYWRlIE55bSB1bWdlYnJhY2h0LgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvc28uLi5kaWUgYm9lc2UgTm9ubmUgKE1vcmdvdGgsIDI3LiBGZWIgMjAwNCwgMDk6MDg6MDcpOgpEdSBzcHVlcnN0IGVpbmVuIFN0cm9tIGRlciBNYWNodCBhdXMgZGVtIHJhYmVuc2Nod2FyemVuIFJpbmcgaW4gRGVpbmUgSGFuZApmbGllc3Nlbi4KTm9ubmUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU29zby4uLmRpZSBib2VzZSBOb25uZSAoTm9ubmUsIDI3LiBGZWIgMjAwNCwgMDk6MTY6NDgpOgp+IyEgcm49TW9yZ290aCBydD0xMDc3ODY5Mjg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3Nzg2OTI4NwpNaXN0LCBpY2ggYmluIGR1cmNoc2NoYXV0LCBhYmVyIHdhcyBtYWNoc3QgZHUgbWl0IG1laW5lbSBSaW5nIHNpZSB6dQprbmVjaHRlbi4uLj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFdpa2kgKEJvaW5nLCAyNy4gRmViIDIwMDQsIDExOjA1OjEwKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDc3ODI4MjQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3Nzc4Mzk5OApOaXggSG9tdSAuLi4gc2llaGUgYXVjaCBodHRwOi8vd3d3Lm1hdWljYXBzLmNvbS9IdW11Lmh0bQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmdyaWZmIGRlciBBcyAoTW9yZ290aCwgMjcuIEZlYiAyMDA0LCAxMzowODoyNyk6CkFtYXpvcmEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKQXJhdGhvcm4gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKQXBvbGxvbmlhICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCltGcmV1bmRlOk5lc2FqYV0gSkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEKW0ZyZXVuZGU6TmVzYWphXSBBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQpbRnJldW5kZTpOZXNhamFdIEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBCltGcmV1bmRlOk5lc2FqYV0gQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEKW0ZyZXVuZGU6TmVzYWphXSBBQUFBQUFBQUFBQUFBQQoKTSogeml0dGVydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VnbWVsZHVuZ2VuIHVuZCBDby4gKExpYXJhLCAyNy4gRmViIDIwMDQsIDE2OjAxOjM2KToKTGlsbGVicm9yIGlzdCBhbHMgYWJ3ZXNlbmQgZ2VrZW5uemVpY2huZXQuCkdydW5kOiBrdXJ6IGRhdWVyaWRsZSA+LCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU29zby4uLmRpZSBib2VzZSBOb25uZSAoRGFya2xvciwgMjcuIEZlYiAyMDA0LCAyMjowMTo0NCk6Cn4jISBybj1Ob25uZSBydD0xMDc3ODY5ODA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3Nzg2OTI4NwpJaG4gYXVjaCBiZW51dHplbj8gLSBXYWVyIGphIHNvbnN0IFZlcnNjaHdlbmR1bmcgdm9uIFplaXQgdW5kIFJlc291cmNlbi4uLgoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBTYWNoZSBtaXQgZGVtIFBhcnR5YmVpdHJhZyAoWm9vaywgIDIuIE1hciAyMDA0LCAxNDo1NjoyOCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA3ODIzNTczMiByZz1wYXJ0eQp+IyEgdGlkPTEwNzgyMzU3MzIKV29iZWkgc2ljaCBkYXMgbWl0IGRlbSBGcnVlaHN0dWVjayBqYSBkdWNoIEtpbGxlcmJyb2V0Y2hlbiBiZWhlYmVuIGxhZXNzdC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERpZSBTYWNoZSBtaXQgZGVtIFBhcnR5YmVpdHJhZyAoQ2F0d2VhemxlLCAgMi4gTWFyIDIwMDQsIDE1OjE1OjQ2KToKfiMhIHJuPVpvb2sgcnQ9MTA3ODIzNTc4OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzgyMzU3MzIKQWgsIGd1dGVyIEJlaXRyYWcsIGRhcyBoZWlzc3QsIGRhc3MgaWNoIGF1ZiBqZWRlbiBGcmVpdGFnIGFiZW5kIHNjaG9uCmthc3NpZXJlbiBtdXNzLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFpbGVyIGJ1Z2d0IGVpbiBiaXNjaGVuIC4uLiAoTXVhZGliLCAgMi4gTWFyIDIwMDQsIDIxOjI2OjA4KToKfiMhIHJuPVZhbmlvbiBydD0xMDc4MjUzMjc1IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA3ODI1MzI3NQptZWluZSBkYXRlbiBzaW5kIG5pY2h0IGdlZmFlaHJkZXQ/CmljaCBob2VyIHNjaG9uIHpvb2sgZW50dGFldXNjaHQgc2NobmF1ZmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1haWxlciBidWdndCBlaW4gYmlzY2hlbiAuLi4gKFZhbmlvbiwgIDIuIE1hciAyMDA0LCAyMTozMTozMSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA3ODI1OTE2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzgyNTMyNzUKTWVpbiBNYWlsZmlsZSBpc3QgbGVpZGVyIGJlaW0gVGVzdGVuIHZvbGxzdGFlbmRpZyB2ZXJuaWNodGV0IHdvcmRlbi4gKnNldWZ6LAphYmVyIG5pY2h0IHp1IGRvbGwqCgpWKgpQUzogU29sbCBpY2ggRGlyIHZlcnJhdGVuLCB3aWU/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNYWlsZXIgYnVnZ3QgZWluIGJpc2NoZW4gLi4uIChNdWFkaWIsICAyLiBNYXIgMjAwNCwgMjE6MzM6MjUpOgp+IyEgcm49VmFuaW9uIHJ0PTEwNzgyNTk0OTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc4MjUzMjc1Cm5laW4KaWNoIG1hZyBtZWluIG1haWxmaWxlIGphCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNYWlsZXIgYnVnZ3QgZWluIGJpc2NoZW4gLi4uIChWYW5pb24sICAyLiBNYXIgMjAwNCwgMjE6MzQ6MzkpOgp+IyEgcm49TXVhZGliIHJ0PTEwNzgyNTk2MDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc4MjUzMjc1Ck9jaCwgaWNoIHRyYXVyZSBtZWluZW0gbmljaCBoaW50ZXJoZXIuIFN0YW5kZW4gZWggbnVyIEFJcyBkcmluLgoKU3BhcnQgZGFzIEF1ZnJhZXVtZW4uIE1hbCBzZWhlbiwgZXZ0bCByZXN0YXVyaWVyIGljaCdzIGphLiBJcmdlbmR3YW5uLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1haWxlciBidWdndCBlaW4gYmlzY2hlbiAuLi4gKExpYXJhLCAgMi4gTWFyIDIwMDQsIDIxOjM0OjUzKToKfiMhIHJuPU11YWRpYiBydD0xMDc4MjU5NjA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3ODI1MzI3NQpLb2VubnQgaWhyIGJpdHRlIGluIG1hZ2llci5zY2htYXJybiB3ZWl0ZXJzY2hyZWliZW4gb2RlciBzb3dhcz8gOj4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE1haWxlciBidWdndCBlaW4gYmlzY2hlbiAuLi4gKE11YWRpYiwgIDIuIE1hciAyMDA0LCAyMTozNjo0NSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA3ODI1OTc4NyByZz1lcnptYWdpZXIuc2NobWFycm4KfiMhIHRpZD0xMDc4MjUzMjc1CmFiZXIgaGllciBpc3QgZG9jaCBzbyBzY2hvZW4gaGVpbWVsaWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVsbGJvZ2Vuc2NobGFnIGdpYnQgZWluZGV1dGlnIHp1IHZpZWwgWndlcmdlICEgKFJvbGFuZCwgIDMuIE1hciAyMDA0LCAwMDozMTo0MCk6CnNhZyBudSBnZWh0eiBsb3MgPwpEdSBzYWdzdDogbnUgZ2VodHogbG9zID8KPiAKRGVyIEFuZnVlaHJlciBicnVlbGx0OiAnRFVSQ0haQUVITEVOIScKTWlub3RhdXIgbmlja3QgenVzdGltbWVuZC4KRGVyIGFsdGUgWndlcmcgYXRtZXQgc2Nod2VyLgpEaWUgWndlcmdpbiBydWZ0OiBFbWFuemlwYXRpb24hClp3ZXJnIE5hc2UgZ3J1bnp0OiAnNy4uLiBhZWguLi4gMSEnCkVpbiBzdGFya2VyIFp3ZXJnIGdydW56dDogJzQzLi4uIGFlaC4uLiAyIScKLi4uIC4uLgpFaW5lIFp3ZXJnaW4gZ3J1bnp0OiAnMTkhJwpFaW4gUnVkZWwgWndlcmdlbmtpbmRlciBncnVuenQ6ICcyMCEnCkVpbiBSdWRlbCBad2VyZ2Vua2luZGVyIGdydW56dDogJzIxIScKc2FnIHdhcnVtIG51biBkb2NoID8KRHUgc2Fnc3Q6IHdhcnVtIG51biBkb2NoID8KPiAKRGVyIEFuZnVlaHJlciBtZWludDogJ0FsbGVzIGtsYXIuIE5vY2htYWwgZGllIE1vZGFsaXRhZXRlbi4nCkxhcmlzaWVsbGUgc2FndDogamEsIGFiZXIgbWl0IGRlciB0cnVwcGUgZGllIGViZW4ga2FtLi4uIGRpZSBhbmRlcmVuIHN0ZWhlbgpMYXJpc2llbGxlIHNhZ3Q6IGF1Y2ggbm9jaCBoaWVyCkFzaCdlbidsb2toIGZsdWNodDogVm9sbCBkZW0ga3Jhc3NlIFNjaGVpc3NlbmRyZWNrIGhpZXIhCkRlciBUcm9tcGV0ZXIgZnVtbWVsdCBhbiBzZWluZXIgVHJvbXBldGUgaGVydW0uCk1pbm90YXVyIHp1Y2t0IHJhdGxvcyBtaXQgZGVuIFNjaHVsdGVybi4KRGVyIEFuZnVlaHJlciBlcmtsYWVydDogJ0RpZSBUZWFtcyBncmVpZmVuIGdlc2NobG9zc2VuIGFuISBLbGFyPycKc2NoYXUKRHUgc3RlaHN0IHZvciBlaW5lciByaWVzaWdlbiBGZXN0dW5nIGlubWl0dGVuIGRlciBFaXN3dWVzdGUuIFNvIHdpZSBkdSBkYXMgdm9uCmhpZXIgYmV1cnRlaWxlbiBrYW5uc3Qgd3VyZGUgc2llIGF1cyBwdXJlbSBFaXMgZXJiYXV0LiBEaWUgd3VjaHRpZ2UKRmVzdHVuZ3NtYXVlciwgZGllIHZvbiB6d2VpIHJpZXNpZ2VuIFR1ZXJtZW4gdW1yYWhtdCBpc3QsIHNjaGVpbnQKdW51ZWJlcndpbmRiYXIgenUgc2Vpbi4gQXVmIGRlbiBiZWlkZW4gVHVlcm1lbiB3ZWhlbiB6ZXJmZXR6dGUgQmFubmVyIGF1cwpsYWVuZ3N0IHZlcmdhbmdlbmVuIFplaXRlbi4gRHUgc3RlaHN0IGF1ZiBlaW5lbSBrbGVpbmVuIFdlZywgZGVyIGRpcmVrdCB2b3IKZGVyIEZlc3R1bmdzbWF1ZXIgZW5kZXQuIEFuIGRlciBGZXN0dW5nc21hdWVyIHNpZWhzdCBkdSBldHdhcyBNZXJrd3VlcmRpZ2VzLgpFcyBnaWJ0IGRyZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4sIHdlc3RlbiB1bmQgbm9yZGVuLgpFaW4gUnVkZWwgWndlcmdlbmtpbmRlci4KRWluIFJ1ZGVsIFp3ZXJnZW5raW5kZXIuCkVpbmUgWndlcmdpbi4KRWluZSBad2VyZ2luLgpFaW5lIFp3ZXJnaW4uCkVpbiBzY2h3YWNoZXIgWndlcmcuCkVpbiBzY2h3YWNoZXIgWndlcmcuCkVpbiBzY2h3YWNoZXIgWndlcmcuCkVpbiBzY2h3dWxlciBad2VyZy4KRWluIHNjaHd1bGVyIFp3ZXJnLgpFaW4gZGlja2VyIFp3ZXJnZW53YWVjaHRlci4KRWluIGRpY2tlciBad2VyZ2Vud2FlY2h0ZXIuCkVpbiBkaWNrZXIgWndlcmdlbndhZWNodGVyLgpFaW4gYWx0ZXIgWndlcmcuCkVpbiBhbHRlciBad2VyZy4KRWluIFp3ZXJnLgpFaW4gWndlcmcuCkVpbiB6d2VyZ2lzY2hlciBFaXNrcmllZ2VyLgpFaW4gendlcmdpc2NoZXIgRWlza3JpZWdlci4KRWluIHN0YXJrZXIgWndlcmcuClp3ZXJnIE5hc2UuCkRlciBBbmZ1ZWhyZXIgZGVyIFp3ZXJnZW5ob3JkZS4KQXNoJ2VuJ2xva2guCkVpbiB6d2VyZ2lzY2hlciBUcm9tcGV0ZXIuCkVpbiBhdXNyYW5naWVydGVyIE9jaHNlbmthcnJlbi4gKDIpCkVpbmUga2xlaW5lIFJpa3NjaGEuICgyKQpNYXN0ZXIgTWlub3RhdXIuCkZlYXJuIExhcmlzaWVsbGUgbGFlY2hlbHQgbGVpc2UgdW5kIHN1bW10IGRhYmVpLgpFaW4gZ3Jvc3NlciBMZWl0ZXJ3YWdlbi4gKDIpCkVpbiBzdGFya2VzIFBmZXJkLCBkYXMgZWluZW4gUmFtbWJvY2sgaGludGVyIHNpY2ggaGVyemllaHQuCkVpbiBSdWRlbCBad2VyZ2Vua2luZGVyLgpFaW4gUnVkZWwgWndlcmdlbmtpbmRlci4KRWluIFJ1ZGVsIFp3ZXJnZW5raW5kZXIuCkVpbmUgWndlcmdpbi4KRWluZSBad2VyZ2luLgpFaW4gc2Nod2FjaGVyIFp3ZXJnLgpFaW4gc2Nod2FjaGVyIFp3ZXJnLgpFaW4gc2Nod2FjaGVyIFp3ZXJnLgpFaW4gc2Nod3VsZXIgWndlcmcuCkVpbiBzY2h3dWxlciBad2VyZy4KRWluIGRpY2tlciBad2VyZ2Vud2FlY2h0ZXIuCkVpbiBkaWNrZXIgWndlcmdlbndhZWNodGVyLgpFaW4gYWx0ZXIgWndlcmcuCkVpbiBhbHRlciBad2VyZy4KRWluIGFsdGVyIFp3ZXJnLgpFaW4gWndlcmcuCkVpbiBad2VyZy4KRWluIHp3ZXJnaXNjaGVyIEVpc2tyaWVnZXIuCkVpbiB6d2VyZ2lzY2hlciBFaXNrcmllZ2VyLgpFaW4gc3RhcmtlciBad2VyZy4KWndlcmcgTmFzZS4KRGVyIEFuZnVlaHJlciBkZXIgWndlcmdlbmhvcmRlLgpBc2gnZW4nbG9raC4KRWluIHp3ZXJnaXNjaGVyIFRyb21wZXRlci4KRWluIHN0YXJrZXMgUGZlcmQsIGRhcyBlaW5lbiBSYW1tYm9jayBoaW50ZXIgc2ljaCBoZXJ6aWVodC4KPiBsYWNoCgpEdSBicmljaHN0IHZvciBMYWNoZW4genVzYW1tZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZWxsYm9nZW5zY2hsYWcgZ2lidCBlaW5kZXV0aWcgenUgdmllbCBad2VyZ2UgISAoQm9pbmcsICAzLiBNYXIgMjAwNCwgMDg6MTg6MDUpOgp+IyEgcm49Um9sYW5kIHJ0PTEwNzgyNzAzMDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc4MjcwMzAwClVuZCB3byBrb21tdCBkZXIgZWxsYm9nZW5zY2hsYWcgaW5zIFNwaWVsPwogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNYWlsZXIgYnVnZ3QgZWluIGJpc2NoZW4gLi4uIChab29rLCAgMy4gTWFyIDIwMDQsIDA4OjMzOjUyKToKfiMhIHJuPU11YWRpYiBydD0xMDc4MjU5NjA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3ODI1MzI3NQpTY2hhZGUuIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQVVmZ2FiZSBhdXMgZWluZW0gTWF0aGVidWNoIEtsYXNzZSA4IEd5bW5hc2l1bSAoTm9ubmUsICAzLiBNYXIgMjAwNCwgMDk6NDE6MTkpOgp+IyEgcm49WmFybml5YSBydD0xMDc4MzAzMjAwIHJnPXB1aXoKfiMhIHRpZD0xMDc3ODg4MjAxClVuZCBudW4gc2VpIGxpZWIgdW5kIHNwcmljaCBtaXIgbmFjaDogSWNoIHdlcmRlIGltbWVyIGVyc3QgZGVuIFRocmVhZCBrb21wbGV0dAp6dWVuZGUgbGVzZW4sIGJldm9yIGljaCBhdWYgZWluZW4gQXJ0aWtlbCBhbnR3b3J0ZS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBVWZnYWJlIGF1cyBlaW5lbSBNYXRoZWJ1Y2ggS2xhc3NlIDggR3ltbmFzaXVtIChaYXJuaXlhLCAgMy4gTWFyIDIwMDQsIDA5OjQzOjQ4KToKfiMhIHJuPU5vbm5lIHJ0PTEwNzgzMDMyNzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3ODg4MjAxCkljaCB3ZXJkZSBpbW1lciBlcnN0IGRlbiBUaHJlYWQga29tcGxldHQgenVlbmRlIGxlc2VuLCBiZXZvciBpY2ggYXVmIGVpbmVuCkFydGlrZWwgYW50d29ydGUuCgpNYXJjIChicmF2KQoKUC5TLjogYWIgMTAuIEtsYXNzZSBoYWV0dGUgaWNoIGVzIG1pdCBTdGVpZ3VuZ3NkcmVpZWNrZW4gYmV3aWVzZW4uLi4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBVWZnYWJlIGF1cyBlaW5lbSBNYXRoZWJ1Y2ggS2xhc3NlIDggR3ltbmFzaXVtIChOb25uZSwgIDMuIE1hciAyMDA0LCAxMDowMDoxMCk6Cn4jISBybj1aYXJuaXlhIHJ0PTEwNzgzMDM0Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDc3ODg4MjAxCjpnaWJ0IGRpciBlaW4gRmxlaXNza2FlcnRjaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBTYWNoZSBtaXQgZGVyIFZWIChab29rLCAgNC4gTWFyIDIwMDQsIDEwOjM5OjQwKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDc4Mzg5OTYwIHJnPXBhcnR5Cn4jISB0aWQ9MTA3ODM4OTk2MApBcmJlaXRzbGVpZG1pbmltaWVyZXIhCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWUgU2FjaGUgbWl0IGRlciBWViAoQ2F0d2VhemxlLCAgNC4gTWFyIDIwMDQsIDEwOjUwOjQ3KToKfiMhIHJuPVpvb2sgcnQ9MTA3ODM5MzE4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzgzODk5NjAKVW5kIGtvbXBldGVudCBkYWJlaSA6KQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEaWUgU2FjaGUgbWl0IGRlbSBQYXJ0eWJlaXRyYWcgKERlZXBibHVlLCAgNi4gTWFyIDIwMDQsIDAwOjM0OjM1KToKfiMhIG9uPURlZXBibHVlIG90PTEwNzg1Mjc2OTkgb2c9cGFydHkKfiMhIHJuPVZhbmlvbiBydD0xMDc4MzgxNTg1IHJnPXBhcnR5Cn4jISB0aWQ9MTA3ODIzNTczMgpuZWluLCBkYW5uIHN0ZWlndCBkZXIgUGFydHlwcmVpcywgd2VpbCBkaWUgZ2FuemVuIEJpZXJsaWViaGFiZXIgbmljaHQga29tbWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRGllIFNhY2hlIG1pdCBkZW0gUGFydHliZWl0cmFnIChEZWVwYmx1ZSwgIDYuIE1hciAyMDA0LCAwMDozNToyMyk6Cn4jISBvbj1EZWVwYmx1ZSBvdD0xMDc4NTI5NzE5IG9nPXBhcnR5Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA3ODM4OTc4MiByZz1wYXJ0eQp+IyEgdGlkPTEwNzgyMzU3MzIKV2lsbHN0IER1IGRhbWlydCBzYWdlbiAiV2VyIEJpZXIgd2lsbCwgbXVzcyBlcyBzZWxic3QgbWl0YnJpbmdlbiI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcmVjaGhlaXQhISAoTXVlbnplLCAgOC4gTWFyIDIwMDQsIDE1OjA1OjE3KToKUm9iaW4ga29tbXQgYW4uClJvYmluIHNhZ3Q6IEhhc3RlIG1hbCAnbmUgTXVlbnplPwpSb2JpbiBnZWh0IG5hY2ggU3VlZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2luZG93cyB1bmQgQmx1ZXNjcmVlbnMuLi4gKEdyaW1tYm9ybiwgIDkuIE1hciAyMDA0LCAxMDo0MzoyOSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTA3ODgyNTQwNSBvZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHJuPVpvb2sgcnQ9MTA3ODgyMDMwOCByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMDc4Nzc2Nzg4ClZlcm11dGxpY2ggdW0gc2VpbmVuIEJsdXRkcnVjay4KQWJlciBtYWNoIERpciBuaWNodHMgZHJhdXMuIFNvd2FzIGlzdCBtZWluZXIgTXV0dGVyIChtaXQgQmlsZHNjaGlybXNjaG9uZXIsCm9obmUgQmx1ZXNjcmVlbikgYXVjaCBzY2hvbiBwYXNzaWVydC4gRGFzIGlzdCBhdWNoIGRpZSBGcmF1LCBkaWUgbWljaCBhbnJpZWYsCndpZSBtYW4gZGVubiBlaW5lIENEIGF1cyBkZW0gNSAxLzQgWm9sbCBGbG9wcHlsYXVmd2VyayB3aWVkZXIgZW50ZmVybmVuCmtvZW5uZS4uLgpQZXJzb2VubGljaCB2ZXJzdGVoZSBpY2ggbmljaHQgd2llIGVpbmVtIGRhcyBwYXNzaWVyZW4ga2Fubjogc2llaHQgZGVyIFJlY2huZXIKa2FwdXR0IGF1cyBpc3QgZXMgZG9jaCBuYXR1ZXJsaWNoLCBlcnN0bWFsIGVpbiBwYWFyIEtub2VwZmNoZW4genUgZHJ1ZWNrZW4sCm9kZXIgbmljaHQ/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdpbmRvd3MgdW5kIEJsdWVzY3JlZW5zLi4uIChab29rLCAgOS4gTWFyIDIwMDQsIDExOjAxOjAzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDc4ODI1NDA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3ODc3Njc4OApBYmVyIGljaCBoYWIgbWlyIGRlbiBCbHVlc2NyZWVuLUJpbGRzY2hpcm1zY2hvbmVyIG1hbCBydW5nZXJsYWRlbjsgc2NoYXVuIHdpcgptYWwsIG9iIGljaCBkYW1pdCBtZWluZW4gQnJ1ZGVyIGZvcHBlbiBrYW5uIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2luZG93cyB1bmQgQmx1ZXNjcmVlbnMuLi4gKEJhbWJpLCAgOS4gTWFyIDIwMDQsIDE0OjMxOjEwKToKfiMhIHJuPVpvb2sgcnQ9MTA3ODgyNjQ2MyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzg3NzY3ODgKTmljaHQgbWl0IG1laW5lbSBCcnVkZXIsIGFiZXIgYWxzIGljaCBoZXV0ZSBpbiBkZXIgS3VlY2hlIHN0YW5kIHVuZAphYnRyb2NrbmV0ZSwgYmVrYW0gaWNoIGF1Y2ggIkJlc3VjaCIgdW5kIGRlbiBIaW53ZWlzLCBkYXNzIG1laW4gUmVjaG5lcgphbmRhdWVybmQgenUgcmVib290ZW4gdmVyc3VjaGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUaWVmZmxpZWdlbmRlIE1hZ2llciAoQXN1a2EsICA5LiBNYXIgMjAwNCwgMTg6Mzc6MDEpOgpBbHMgQXJhdGhvcm4gbmFjaCBTdWVkd2VzdGVuIGdlaHQsIHdpcmQgZXIgdm9uIGVpbmVyIG1hZ2lzY2hlbiBFbnRsYWR1bmcKZXJmYXNzdCEKQXJhdGhvcm4gd2lyZCBkdXJjaCBkaWUgTHVmdCBnZXNjaGxldWRlcnQgdW5kIGZsaWVndCBEaXIgdm9sbCBpbnMgR2VzaWNodCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMKkcqIChNb3Jnb3RoLCAxMC4gTWFyIDIwMDQsIDEyOjE1OjA3KToKUHlyb3MgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRHUgdGVpbHN0IFB5cm9zIG1pdDogSFVDSApQeXJvcyB0ZWlsdCBEaXIgbWl0OiAqZyogWzEyOjEyXQpbVG9kOkxhcnNdIEVpbmUgc2VociBnaWZ0aWdlIERyYWNoZW5rbm9sbGUgaGF0IGdlcmFkZSBQeXJvcyB1bWdlYnJhY2h0LgpQeXJvcyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdXJjaHRlcnJlZ2VuZGVzIEthZXR6Y2hlbiAoTWFoYXJldCwgMTEuIE1hciAyMDA0LCAxNzo0MTo1OCk6CigxNzo0MCkgQmFtYmkgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAgICEhIQooMTc6NDApIDwtIERlaW5lIEZyZXVuZGluIFJhbmdvcm46IE1hdXohCigxNzo0MCkgQXJrICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICAgISEhCigxNzo0MCkgQmFtYmkgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgICAhISEKCk1haGEsIFNwaW9uIHVuZCBHaWZ0bWlzY2hlciBhRAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS29lbm5lbiBkaWUgc2ljaCBuaWNodCBhYnNwcmVjaGVuPyAoWm9vaywgMTIuIE1hciAyMDA0LCAxMTowNDoyNyk6CltTY2h3aWl6OjxIdW1wRT4gcnVlZnQ6ICdFcyB3aXJkIHdpZWRlciBnc29mZmUhIEduYXVzIHBlciA8dGVpbGUgc2Nod2lpeiBtaXQKICAgICAgICAgcz4nXQpbQmllcnNjaHVldHRsZXI6QnJ1bm9dIEphIGJpbiBpY2ggaW0gV2FsZCBoaWVyPyBXbyBibGVpYnQgZGVubiBtZWluIEFsdGJpZXI/CgoKWm9vay4KLm9lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZWlzdGVybm9ubmU/IChNb3Jnb3RoLCAxMy4gTWFyIDIwMDQsIDEzOjIzOjE3KToKW0tsZXJ1czpOb25uZV0gTW9vb29yZ2VuLCBLbGVyaWtlcnMgOykKW01hZ2llcjpOb25uZV0gSHVodS4KW0ZyZXVuZGU6Tm9ubmUga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLl0KW0ZyZXVuZGU6Tm9ubmVdIEhpaG8gU2NobnVja2VscyEKTm9ubmUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgaXMgbWFsIG5lIE9ya2hvcmRlLi4uIChEYXJrbG9yLCAxMy4gTWFyIDIwMDQsIDE3OjI2OjQ2KToKRHUgdmVyZm9sZ3N0IGVpbmVuIGRpY2tlbiBPcmssIGVpbmVuIGtsZWluZW4gT3JrLCBlaW5lbiBrbGVpbmVuIE9yaywgZWluZW4Ka2xlaW5lbiBPcmssIGVpbmVuIGRpY2tlbiBPcmssIGVpbmVuIGxhbmdlbiBPcmssCmVpbmVuIGR1ZW5uZW4gT3JrLCBlaW5lbiBrbGVpbmVuIE9yaywgZWluZW4gbGFuZ2VuIE9yaywgZWluZW4gZHVlbm5lbiBPcmssCmVpbmVuIGRpY2tlbiBPcmssIGVpbmVuIGRpY2tlbiBPcmssIGVpbmVuIGxhbmdlbgpPcmssIGVpbmVuIGRpY2tlbiBPcmssIGVpbmVuIGR1ZW5uZW4gT3JrLCBlaW5lbiBrbGVpbmVuIE9yaywgZWluZW4ga2xlaW5lbgpPcmssIGVpbmVuIGtsZWluZW4gT3JrLCBlaW5lbiBkdWVubmVuIE9yayB1bmQKZWluZW4gZHVlbm5lbiBPcmsuCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUc2hpcnQgKEFuYXRvbCwgMTMuIE1hciAyMDA0LCAyMzo1MToxNik6Cn4jISBvbj1BbmF0b2wgb3Q9MTA3OTIxODI3MiBvZz1wYXJ0eQp+IyEgcm49Rm9vYmFyIHJ0PTEwNzkyMTgyMDYgcmc9cGFydHkKfiMhIHRpZD0xMDc5MTk3Njc5CkRlciBFcnptYWdpZXIgZnVlciBCYWxhbmNlIGtlbm50IHNpY2ggaW0gTXVkIHNpY2hlciBhdXNyZWljaGVuZCBndXQgYXVzLgpVbmQgd2VubiBuaWNodCwgdHV0IGVzIGVpbiBNZXR6ZWxnYW5nIHNpY2hlciBhdWNoLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVHNoaXJ0IChEYXJrd2luZywgMTQuIE1hciAyMDA0LCAwMDo1NzozNyk6Cn4jISBybj1BbmF0b2wgcnQ9MTA3OTIxODI3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzkxOTc2NzkKbXUuIGhhci4gaGFyLgphbGxlcyB3aXJkIGd1dCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEZXIgZ3V0ZSBTY2h1dHogKFZhbmlvbiwgMTQuIE1hciAyMDA0LCAyMDoxODo0Mik6Cn4jISBybj1IdW1uaSBydD0xMDc5MjkxMzY4IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTEwNzkyOTEzNjgKOmp1YmVsdCBIdW1uaSB6dS4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERhcmt3aW5nLCAxNS4gTWFyIDIwMDQsIDE4OjA2OjU4KToKW0FiZW50ZXVlcjpWaXNobnVdIGhpbGZlIHdpZSBrb21tdCBtYW4gcmF1cyB3ZW5uIGVpbmVuIGRlciBlaXN3dXJtIGltIHdhcm9rCltBYmVudGV1ZXI6VmlzaG51XSB2ZXJzY2hsdWNrdD8KW1RvZDpMYXJzXSBFaW4gTWFnZW5zYWV1cmVtb25zdGVyIGhhdCBnZXJhZGUgSHVyYXhwcmF4IHVtZ2VicmFjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGloaS4uLiAoTWVkaWMsIDE2LiBNYXIgMjAwNCwgMjM6Mjk6MDUpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBMZWhyZXJzXSBCZWltIG5hZWNoc3RlbiBNYWwgbWFjaCcgaWNoIGVzIERpciBuaWNodCBtZWhyCltNb2VyZGVyOkdlaXN0IGVpbmVzIExlaHJlcnNdIHNvIGVpbmZhY2gsIFR1cmJvIQpbTW9lcmRlcjpUdXJib10gVG9kIGRlbiBMZWhyZXJuIQpFcndhcnRldCAob2ZmbGluZSk6IEh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEdSBpcnJzdCwgZ3V0ZXIgTWFubi4uLiAoQWhhYiwgMTcuIE1hciAyMDA0LCAyMDowMzoxMik6CkRlciBIZWlsZXIgYmV0cmFjaHRldCBEaWNoIGVpbmdlaGVuZCB1bmQgc3ByaWNodCBlaW5pZ2UgbWFnaXNjaGUgV29ydGUuCkRlciBIZWlsZXIgc2FndDogRGVpbmUgS29lcnBlcmxpY2hlIFZlcmZhc3N1bmcgaXN0IGFic29sdXQgaGVydm9ycmFnZW5kLgpEZXIgSGVpbGVyIHNhZ3Q6IEljaCB3dWVuc2NoZSBub2NoIGVpbmVuIGFuZ2VuZWhtZW4gVGFnLgoKR2VzY2h3YWVjaHQgYnJpY2hzdCBEdSB6dXNhbW1lbiB1bmQgc2NobGllc3N0IG11ZWRlIGRpZSBBdWdlbiAuLi4KRGVyIFRlZGR5IGtudWRkZWx0IERpY2ggZWluIGxldHp0ZXMgTWFsLgpbVG9kOkxhcnNdIEZydWVoemVpdGlnZSBBbHRlcnNzY2h3YWVjaGUgaGF0IGdlcmFkZSBBaGFiIHVtZ2VicmFjaHQuCgpBaG9pLCBBaGFiLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IER1IGlycnN0LCBndXRlciBNYW5uLi4uIChFbGJlcmV0LCAxNy4gTWFyIDIwMDQsIDIwOjA0OjUwKToKfiMhIHJuPUFoYWIgcnQ9MTA3OTU1MDE5MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzk1NTAxOTIKd2FocnNjaGVpbmxpY2ggbWVpbnRlIGVyLCBkYXNzIGRlaW5lIFZlcmZhc3N1bmcgZnVlciBkZWluIEFsdGVyIGFic29sdXQKaGVydm9ycmFnZW5kIHNlaSA6KQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEdSBpcnJzdCwgZ3V0ZXIgTWFubi4uLiAoQWhhYiwgMTcuIE1hciAyMDA0LCAyMDowNToxMCk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwNzk1NTAyOTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc5NTUwMTkyCipHUlVNTUVMKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNlaGVybGFlZGVuIHVuZCBjbyAuLi4gKEJhbWJpLCAxOC4gTWFyIDIwMDQsIDA5OjMxOjMwKToKfiMhIHJuPVZhbmlvbiBydD0xMDc5NTM2NzA1IHJnPXNlaGVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTA3OTUzNjcwNQpWZXJyYXRlIGJlc3NlciBuaWNodCwgZGFzcyBtYW4gbWl0IGRpZXNlbSBPYmpla3QgdmVyc3VjaGVuIGtvZW5udGUsIGRlbiBTU1AtWlQKenUgb2VmZm5lbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUYXNzZW5tb3RpdiAoR3JpbW1ib3JuLCAxOC4gTWFyIDIwMDQsIDE0OjMyOjAzKToKfiMhIHJuPVRhcmFuaXMgcnQ9MTA3OTYxNjYwOSByZz1wYXJ0eQp+IyEgdGlkPTEwNzk2MTY0NzgKInRlaWxlIGdyaW1tYm9ybiBtaXQgWmFwIG1pY2ggZG9jaCwgd2VubiBEdSBEaWNoIHRyYXVzdCEiCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMRyA/IChNb3Jnb3RoLCAxOC4gTWFyIDIwMDQsIDE5OjA1OjIxKToKRHUgZ3JpbnN0IEVwcGkgYXVzIGRlciBGZXJuZSBhbi4KW1RvZDpMYXJzXSBFaW4gRWlzZ29sZW0gaGF0IGdlcmFkZSBFcHBpIHVtZ2VicmFjaHQuCgpIdXBzIDopCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMRyA/IChab29raSwgMTguIE1hciAyMDA0LCAxOToxMDoxOCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNzk2MzMxMjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc5NjMzMTIxClNQSUVMRVJISUxGRSEKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMRyA/IChNb3Jnb3RoLCAxOC4gTWFyIDIwMDQsIDE5OjEwOjUwKToKfiMhIHJuPVpvb2tpIHJ0PTEwNzk2MzM0MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDc5NjMzMTIxCkFlaD8gV2FzIGpldHp0PwoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTEcgPyAoRGFya2xvciwgMTguIE1hciAyMDA0LCAxOTo0MzozNCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNzk2MzMxMjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc5NjMzMTIxCkR1IHZlcmJyZWl0ZXN0IHNjaGxlY2h0ZXMgS2FybWE/CgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMRyA/IChNb3Jnb3RoLCAxOC4gTWFyIDIwMDQsIDE5OjQ3OjQ2KToKfiMhIHJuPURhcmtsb3IgcnQ9MTA3OTYzNTQxNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzk2MzMxMjEKV2FzIGlzIGRhcz8gS2FubiBtYW4gZGFzIGVzc2VuPwoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtvbnNlcXVlbnQgKE1haGFyZXQsIDE5LiBNYXIgMjAwNCwgMTE6MjU6MTQpOgpNb2VyZGVyOkdlaXN0IGVpbmVyIHN0YXJrZW4gTW9vcmh1aG5zY2hhciBIYXUgZG9jaCBhYiwgRmxhdXNjaGkuCgooMTE6MjQpIEZsYXVzY2hpICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICAgISEhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGtvbnNlcXVlbnQgKEZsYXVzY2hpLCAxOS4gTWFyIDIwMDQsIDExOjI2OjA4KToKfiMhIHJuPU1haGFyZXQgcnQ9MTA3OTY5MTkxNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzk2OTE5MTQKRGFzIGlzdCBqYSBzY2hsaW1tLCB3aWV2aWVsZSBMZXV0ZSBlaW5lbiBuaWNodCBnZXNwaWVsdGVuIFNwaWVsZXIgZXJ3YXJ0ZW4uCjstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBrb25zZXF1ZW50IChNYWhhcmV0LCAxOS4gTWFyIDIwMDQsIDExOjI2OjIzKToKfiMhIHJuPUZsYXVzY2hpIHJ0PTEwNzk2OTE5Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDc5NjkxOTE0CkRpY2ggZG9jaCBpbW1lciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBrb25zZXF1ZW50IChFbGJlcmV0LCAxOS4gTWFyIDIwMDQsIDExOjI2OjM2KToKfiMhIHJuPUZsYXVzY2hpIHJ0PTEwNzk2OTE5Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDc5NjkxOTE0Cm5pY2h0IGdlc3BpZWx0PyB1bmQgd2FzIHR1c3QgZHUgZ2VyYWRlPwoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzoga29uc2VxdWVudCAoRmxhdXNjaGksIDE5LiBNYXIgMjAwNCwgMTE6MjY6NDQpOgp+IyEgcm49TWFoYXJldCBydD0xMDc5NjkxOTgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3OTY5MTkxNApJY2ggZmFzcyBkYXMgZWluZmFjaCBtYWwgYWxzIEtvbXBsaW1lbnQgYXVmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDoga29uc2VxdWVudCAoRmxhdXNjaGksIDE5LiBNYXIgMjAwNCwgMTE6Mjc6MTYpOgp+IyEgcm49RmxhdXNjaGkgcnQ9MTA3OTY5MjAwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzk2OTE5MTQKSG0uLi5uaWNodCB3aXJrbGljaCBzcGllbGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNToga29uc2VxdWVudCAoRWxiZXJldCwgMTkuIE1hciAyMDA0LCAxMToyODowMik6Cn4jISBybj1GbGF1c2NoaSBydD0xMDc5NjkyMDM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3OTY5MTkxNAp1bmQgd2FzIGRhbm4/IDspCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBrb25zZXF1ZW50IChGbGF1c2NoaSwgMTkuIE1hciAyMDA0LCAxMToyODowNCk6Cn4jISBybj1GbGF1c2NoaSBydD0xMDc5NjkyMDM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3OTY5MTkxNApJY2ggd2Vpc3Mgd2FzIGljaCB0dWU6IEljaCBmbGF1c2NoZSEgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGtvbnNlcXVlbnQgKE9ya3RvZXRlciwgMTkuIE1hciAyMDA0LCAxODo0MDoyMyk6Cn4jISBybj1GbGF1c2NoaSBydD0xMDc5NjkxOTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3OTY5MTkxNApuaWNodCBnZXNwaWVsdD8gb2hvaC4uIGVpbiBTY3JpcHQgZGFzIHNpY2ggdmVyc2VsYnN0YWVuZGlndCBoYXQuLiBTaGVyaWZmISEKCk9ya1QsIGdyaW5zZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzoga29uc2VxdWVudCAoRmxhdXNjaGksIDE5LiBNYXIgMjAwNCwgMTg6NDA6NTMpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwNzk3MTgwMjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc5NjkxOTE0Ck5laW4sIE9ya3Ryb2V0ZSBmbGF1c2NoZSBpY2ggbmljaHQhIDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDoga29uc2VxdWVudCAoTW9yZ290aCwgMTkuIE1hciAyMDA0LCAxODo0MTozNSk6Cn4jISBybj1GbGF1c2NoaSBydD0xMDc5NzE4MDUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3OTY5MTkxNApKZXR6dCB3aXJzdCBEdSBhYmVyIGlua29uc2VxdWVudCA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGtvbnNlcXVlbnQgKEZsYXVzY2hpLCAxOS4gTWFyIDIwMDQsIDE4OjQzOjU5KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA3OTcxODA5NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzk2OTE5MTQKRGFzIG1pdCBkZW0ga29uc2VxdWVudCBicmFjaHRlIGphIGF1Y2ggTWFoYXJldCBlaW4sIHN0YW1tdCBqYSBuaWNodCB2b24gbWlyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBrb25zZXF1ZW50IChNdXBmZWwsIDIwLiBNYXIgMjAwNCwgMTI6MTk6NDUpOgp+IyEgcm49RmxhdXNjaGkgcnQ9MTA3OTY5MTk2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzk2OTE5MTQKTmFqYSBpY2ggc3BpZWwgYXVjaCBuaWNodCwgdW5kIG1pY2ggZXJ3YXJ0ZW4gbmUgZ2FuemUgTGF0dGUgTGV1dGUgOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp6b29rZWxuIG9kZXIgc2Nob24gc2NoaXpvKiA/IChEYXJrd2luZywgMjAuIE1hciAyMDA0LCAxNjoxMzowNyk6CkRlaW4gRnJldW5kIFpvb2sgdGVpbHQgRGlyIG1pdDogV2VsY2hlciBFTSBzcGlubnQ/IDspCkRlaW4gRnJldW5kIFpvb2sgdGVpbHQgRGlyIG1pdDogTmEgaWNoISA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHpvb2tlbG4gb2RlciBzY2hvbiBzY2hpem8qID8gKFpvb2ssIDIwLiBNYXIgMjAwNCwgMTY6Mzk6MjUpOgp+IyEgcm49RGFya3dpbmcgcnQ9MTA3OTc5NTU4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwNzk3OTU1ODcKRGEgZmVobHQgZWluCgpEZWluZSBGcmV1bmRpbiA8dW5sZXNlcmxpY2g+IHRlaWx0IERpciBtaXQ6IGZyYWcgbGllYmVyLCB3ZWxjaGVyIG5pY2h0IHNwaW5udAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogem9va2VsbiBvZGVyIHNjaG9uIHNjaGl6byogPyAoR2xvaW5zb24sIDIwLiBNYXIgMjAwNCwgMTY6NDA6NDIpOgp+IyEgcm49Wm9vayBydD0xMDc5Nzk3MTY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3OTc5NTU4NwpEdSBzcGlubnN0IGFscyBuaWNodCBuaWNodC4gTmEsIGFsbGVzIGluIEJ1dHRlci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbW1lcmhpbiwgZWluIEFuZmFuZy4uLiAoWm9vaywgMjAuIE1hciAyMDA0LCAxNzowNzoxMCk6CkRlaW4gRnJldW5kIE5pYmVsIHRlaWx0IERpciBtaXQ6IFJlYm9vdCEgOikKS1JBQUFBQUFBQUFBQUFBQUFBQUFBQUFXVU1NTU1NTU1NTU1NTU1NTU1NTU0hCkplbWFuZCBoYXQgZGVuIFdvbHBlcnRpbmdlcmNsdWIgaW4gZGllIEx1ZnQgZ2VzcHJlbmd0IQoKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBhc3Npb24gKE1vcmdvdGgsIDIwLiBNYXIgMjAwNCwgMjA6MzQ6NTEpOgp+IyEgcm49SHVyYXhwcmF4IHJ0PTEwNzk4MTEyMjkgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNzk4MDUzMzkKSmFqYSwgc2NoYXV0IGVpbmZhY2ggbWFsICJEb2dtYSIsIGRhbm4gd2lzc3QgaWhyIHdhcyB3YWhyZXIgIkdsYXViZW4iIGlzdCA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFBhc3Npb24gKFZlY3RvciwgMjAuIE1hciAyMDA0LCAyMDozNjozMCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNzk4MTEyOTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc5ODA1MzM5CnVuZCBhbiB3ZWxjaGVtIHRpZXIgaGF0IGdvdHQgYmV3aWVzZW4gZGFzcyBlciBodW1vciBoYXQ/OikKCnZlY3Rvciwgbm9jaCBpbSBwdWl6LWZpZWJlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUGFzc2lvbiAoTW9yZ290aCwgMjAuIE1hciAyMDA0LCAyMDozNzoxOCk6Cn4jISBybj1WZWN0b3IgcnQ9MTA3OTgxMTM5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzk4MDUzMzkKCkFuIGRpZXNlbSBibG9lZGVuIFNjaG5hYmVsdGllci4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFBhc3Npb24gKFZlY3RvciwgMjAuIE1hciAyMDA0LCAyMDozNzo0Mik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwNzk4MTE0Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDc5ODA1MzM5Ci4uLi4gYWJlciBhbHMgaWNoIGdlbmllc3N0IGhhYmUsIGhhYmVuIHNpZSBuaWNodCBnZXN1bmRoZWl0IGdlc2FndC4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFBhc3Npb24gKE1vcmdvdGgsIDIwLiBNYXIgMjAwNCwgMjA6NDQ6NTQpOgp+IyEgcm49VmVjdG9yIHJ0PTEwNzk4MTE0NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc5ODA1MzM5CgoiLi50aGUgbGFzdCBmb3VyIGRheXMgb24gZWFydGgsIGlmIEkgaGFkIGEgZGljaywgSSB3YW50IHRvIGdldCBsYWlkIgoiV2UgZG8gdGhlIG5leHQgYmVzdCB0aGluZy4uLiIKIldoYXQncyB0aGF0PyIKIkxldCdzIGtpbGwgcGVvcGxlIgoqc3Byb3R6KgoiT2gsIG5vdCB5b3UiCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUGFzc2lvbiAoVmFuaW9uLCAyMC4gTWFyIDIwMDQsIDIxOjAzOjMyKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwNzk4MTI2NDIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwNzk4MDUzMzkKQmFoLiBKYXkgaXMgZWluIHppZW1saWNoIG5ldWdpZXJpZ2VyIENoYXIuIERlciB3aWxsIGRldXRsaWNoIG1laHIgd2lzc2VuLCBhbHMKZGVtIFp1c2NoYXVlciB6dWdlbXV0ZXQgd2VyZGVuIGthbm4gOikKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBQYXNzaW9uIChHbG9pbnNvbiwgMjAuIE1hciAyMDA0LCAyMTowNDoxNik6Cn4jISBybj1WYW5pb24gcnQ9MTA3OTgxMzAxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzk4MDUzMzkKRGFyYXVzIGthbm4gbWFuIHNvIGVpbmUgYnVudGUgUm9tYW5yZWloZSBtYWNoZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0YXRpc3RpayBTb2Z0d2FyZSAoTGlhcmEsIDIxLiBNYXIgMjAwNCwgMDA6MjQ6MTIpOgp+IyEgcm49Wm9vayBydD0xMDc5ODI0ODQ0IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwNzk4MjQ4NDQKRWluIEdvdHQsIGRlciBuaWNodCB3ZWlzcyB3YXMgJ1InIGlzdD8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3RhdGlzdGlrIFNvZnR3YXJlIChNdXBmZWwsIDIxLiBNYXIgMjAwNCwgMDk6Mzg6MTQpOgp+IyEgcm49TGlhcmEgcnQ9MTA3OTgyNTA1MiByZz1zY2htYXJybgp+IyEgdGlkPTEwNzk4MjQ4NDQKSWNoIGthdWZlIGVpbiAiTCIuCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUGFzc2lvbiAoQmFtYmksIDIxLiBNYXIgMjAwNCwgMTI6MzQ6NDQpOgp+IyEgcm49VmVjdG9yIHJ0PTEwNzk4MTE0NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc5ODA1MzM5CkJvYWgsIGljaCBrb3R6IGdsZWljaC4gSG9lcnQgYmxvc3MgYXVmLCAyIER1dHplbmQgQXJ0aWtlbCBtaXQgWml0YXRlbiBhdXMKRG9nbWEgenUgcG9zdGVuLiAoRGVyIFJlc3Qgd3VyZGUgYXVzIEp1Z2VuZHNjaHV0emdydWVuZGVuIHplbnNpZXJ0KQoKQmFtYmkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBQYXNzaW9uIChWZWN0b3IsIDIxLiBNYXIgMjAwNCwgMTI6MzU6MTUpOgp+IyEgcm49QmFtYmkgcnQ9MTA3OTg2ODg4NCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzk4MDUzMzkKZGEgc2llaHN0ZSBtYWwgd2FzIFdJUiBiZWkgREVJTkVOIGFydGlrZWxuIG1pdG1hY2hlbi4KaW1tZXJoaW4gaGFsdGVuIFdJUiB1bnMgYW4gZGllIHJ1YnJpayA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPYnNjdXJlIEZhY3RzIChHbG9pbnNvbiwgMjEuIE1hciAyMDA0LCAxNToyNToyOCk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwNzk4Njg5NjUgcmc9d3d3Cn4jISB0aWQ9MTA3OTg2ODk2NQpXYXJ1bSBwb3N0ZXN0IGR1IGRhbm4gc293YXMsIHdlbm4gZHUgZGlyIG5pY2h0IG1hbCBzaWNoZXIgYmlzdD8gUXVlbGxlbmZyZXVuZD8KIklDaCBoYWIgbWFsIGdlaG9lcnQsIGRhcyAuLi4iCgpGYWN0IDIgKE15ZWxpbiB1ZWJlcnRyYWVndCAiSGVpbGluZm9ybWF0aW9uIiAtIFd1bmRlcmhlaWxlcmdsYXViZW4gKHdpZSB2aWVsZQpNU2MtS3JhbmtlIGhhc3RlIGR1IHNjaG9uIGFuIFd1bmRlbiBzdGVyYmVuIHNlaGVuPykpLCA0IChFY2hpbmFjZWEgaGlsZnQgZ2VnZW4KR3JpcHBlIC0gbGV0enRqYWVocmlnZSBTdHVkaWUgd2lkZXJsZWd0IGRhcykuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIGZyYWcgaWNoIG1pY2ggYXVjaCAoTmVkaW1lLCAyMS4gTWFyIDIwMDQsIDE4OjU3OjI2KToKcm9ocmhvZXJlIG5hY2h0aGVtZApFaW5lIFN0aW1tZSBmbHVlc3RlcnQ6IEVzIHd1cmRlIHZvbiBSdWVzdHVuZyBnZXNjaHJpZWJlbi4KZmluZ2VyIHJ1ZXN0dW5nCkhvcHBsYSAtIGRpZXNlciBOYW1lIGlzdCByZXNlcnZpZXJ0IG9kZXIgZ2VzcGVycnQgKCJnZWJhbmlzaHQiKSEKR3J1bmQgZnVlciBkaWUgU3BlcnJ1bmc6IFdhcyBzb2xsIGRlbm4gZGFzPwoKTmVkaW1lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBc3Rlcml4LVB1aXogKEdsb2luc29uLCAyMi4gTWFyIDIwMDQsIDExOjAzOjU1KToKfiMhIHJuPUdub21lIHJ0PTEwNzk5NDk3ODUgcmc9cHVpegp+IyEgdGlkPTEwNzkyODMyNzMKRHUgYWxzIE11ZGRlciBzb2xsdGVzdCBtaXQgZGVtIHNvbGNoZSBQaGFlbm9tZW5lIGVya2xhZXJlbmRlbiBCZWdyaWZmICJTdWNodCIKdmVydHJhdXQgc2VpbiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFzdGVyaXgtUHVpeiAoSHVtbmksIDIyLiBNYXIgMjAwNCwgMTQ6MzE6MjApOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA3OTk0OTgzNSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzkyODMyNzMKTmVpbi4gRXMgaXN0IGdhbnogZWluZmFjaDogUGhvYm9zIHZlcmt1ZW5kZXQgaGludGVyaGVyIGluIGRlciBNUEEgZWluZQpUb3BsaXN0ZSBkZXIgTGV1dGUgbWl0IGRlbiBtZWlzdGVuIHJpY2h0aWdlbiBBbnRvd3J0ZW4uIEdsYXViIG1pciwgc29iYWxkIGVyCmRhcyBvZmZlbiBzYWd0LCB3aXJkIGRlciBSdW4gYXVmIGRpZSBDb21pY2xhZWRlbiBiZWdpbm5lbi4uLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFzdGVyaXgtUHVpeiAoTW9udGFudXMsIDIyLiBNYXIgMjAwNCwgMTQ6MzI6MTgpOgp+IyEgcm49SHVtbmkgcnQ9MTA3OTk2MjI4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzkyODMyNzMKRnVlciBUb3AtTGlzdGVuIGlzdCBDYXR0eSB6dXN0YWVuZGlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQXN0ZXJpeC1QdWl6IChDYXR3ZWF6bGUsIDIyLiBNYXIgMjAwNCwgMTU6MzQ6MTUpOgp+IyEgcm49TW9udGFudXMgcnQ9MTA3OTk2MjMzOCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzkyODMyNzMKRGFzIGlzdCwgc28gZXhha3QsIG5pY2h0IHJpY2h0aWcuCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFzdGVyaXgtUHVpeiAoWm9vaywgMjIuIE1hciAyMDA0LCAxNTozNToxNik6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA3OTk2NjA1NSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzkyODMyNzMKV2ljaHRpZyBpc3QgbnVyLCBkYXNzIG1pY2gga2VpbmVyIHZvbiBtZWluZW0gUGxhdHogdmVyZHJhZW5ndC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBc3Rlcml4LVB1aXogKENhdHdlYXpsZSwgMjIuIE1hciAyMDA0LCAxNTozNTo0Mik6Cn4jISBybj1ab29rIHJ0PTEwNzk5NjYxMTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc5MjgzMjczCkRlciBkYSB3YWVyZT8KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQXN0ZXJpeC1QdWl6IChab29rLCAyMi4gTWFyIDIwMDQsIDE1OjM1OjU4KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDc5OTY2MTQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3OTI4MzI3MwpLZWluZSBBaG51bmcsIHdvcnVtIGdpbmcgZXM/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEFzdGVyaXgtUHVpeiAoQ2F0d2VhemxlLCAyMi4gTWFyIDIwMDQsIDE1OjM2OjE4KToKfiMhIHJuPVpvb2sgcnQ9MTA3OTk2NjE1OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzkyODMyNzMKV2Vpc3MgbmljaHQsIGFiZXIgZXMgaXN0IGRpZSBmYWxzY2hlIFJVYnJpayAuLi4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEFzdGVyaXgtUHVpeiAoWm9vaywgMjIuIE1hciAyMDA0LCAxNTozNzoxMik6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA3OTk2NjE3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzkyODMyNzMKRmFlbGx0IG1pciBhdWNoIGdyYWQgYXVmLiBNaWZ0LgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBbZmV1ZXJ3ZWhybWFubi5rb21tdW5pa2F0aW9uXSBSZTogR2VsZGVyIGZ1ZXIgZGlnaXRhbGUgbiAoUG9saXplaS0pRnVuayAoWm9vaywgMjIuIE1hciAyMDA0LCAyMDoyMDozOCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDc5OTgyOTU5IHJnPXNjaG1hcnJuLm5ldGRpZ2VzdAp+IyEgdGlkPTEwNzk5ODI5NTkKQXVzIGRlbSBCbGlja3dpbmtlbCBlaW5lcyBLYW1lbHMgbWFnIGRpZSBBbmFseXNlLCB3YXJ1bSBkaWUgUmVpc2UgaW4gZWluZQpiZXN0aW1tdGUgUmljaHR1bmcgdW5kIG5pY2h0IGluIGVpbmUgYW5kZXJlIGdlaHQsIHNpY2hlciByaWNodGlnIHNlaW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQXN0ZXJpeC1QdWl6IChIdW1uaSwgMjIuIE1hciAyMDA0LCAyMToyNTozNCk6Cn4jISBybj1QaG9ib3MgcnQ9MTA3OTk4NzAzNSByZz1wdWl6Cn4jISB0aWQ9MTA3OTI4MzI3MwpIZSEgRGllIEFudHdvcnRlbiBrZW5uIGljaC4gVmVycmF0IGljaCBhYmVyIG5pY2h0LiBBZXRzY2guCgpIdW1uaSwgYm9lc2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBc3Rlcml4LVB1aXogKFpvb2ssIDIyLiBNYXIgMjAwNCwgMjI6MjI6NDYpOgp+IyEgcm49SHVtbmkgcnQ9MTA3OTk4NzEzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwNzkyODMyNzMKVW5kIHNvIHNvbGwgZGFzIFdpc3NlbiBkZXIgdmllbGVuIERpciBhbnZlcnRyYXV0ZW4gZ2VtZWhydCB3ZXJkZW4/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEljaCBoYWJzIGVuZGxpY2ggdmVyc3RhbmRlbi4uLiAoQmFtYnVsa28sIDIyLiBNYXIgMjAwNCwgMjI6NTA6MTcpOgp+IyEgcm49Um9uZGEgcnQ9MTA3OTk5MTc4NCByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMDc5OTkxNzg0CktvZXJiY2hlbmdyb2Vzc2VuIHNpbmQgRnJhdWVua3JhbSwgd2FydW0gU09MVFRFIGRhcyBpcmdlbmRlaW5lbSBsb2dpc2NoZW4KUHJpbnppcCBmb2xnZW4/CgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVlciBHbG9pbnNvbiAoTW9yZ290aCwgMjMuIE1hciAyMDA0LCAxNDowNToxMik6CndhcyBQcm92b2thbnRlcwoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGdWVyIEdsb2luc29uIChHbG9pbnNvbiwgMjMuIE1hciAyMDA0LCAxNDowNTo0Nik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwODAwNDcxMTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwMDQ3MTEyCkhhciwgZGEgd2FyZW4ga2VpbmUgQW5mdWVocnVuZ3N6ZWljaGVuLiBEdSBiaXN0IHp1IGJlcmVjaGVuYmFyLCBpY2ggbXVzcyBtaWNoCndlaXRlciBhdWYgYW5kZXJlIHZlcmxhc3Nlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUYWxrIG9mIHRoZSBtYXRoZW1hdGljaWFuIC4uLiAoR2xvaW5zb24sIDIzLiBNYXIgMjAwNCwgMTU6MTY6NDgpOgoKW0FsbGdlbWVpbjpNYWhhcmV0XSBNYXRoZW1hdGlrZXIgc2luZCBuaWNodCBsb2dpc2NoPyBEYWNodGUgaWNoJ3MgbWlyIGRvY2guClJvY2h1cyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSEhHRyBJbmZvY29tIEFkdmVudHVyZSAoSHVyYXhwcmF4LCAyMy4gTWFyIDIwMDQsIDIyOjU1OjAyKToKfiMhIHJuPUJyYW4gcnQ9MTA3OTk5NDMxMSByZz13d3cKfiMhIHRpZD0xMDc5NzAyNzg2Ckl0IGlzIHBpdGNoIGJsYWNrLiBZb3UgYXJlIGxpa2VseSB0byBiZSBlYXRlbiBieSBhIGdydWUuCndvaGVyIGthbSBkYXMgbm9jaG1hbD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEhIR0cgSW5mb2NvbSBBZHZlbnR1cmUgKE1vcmdvdGgsIDIzLiBNYXIgMjAwNCwgMjI6NTk6MTApOgp+IyEgcm49SHVyYXhwcmF4IHJ0PTEwODAwNzg5MDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc5NzAyNzg2CgpQaXRjaCBibGFjayBpc3QgZWluIHppZW1saWNoIGdlbmlhbGVyIEZpbG0uLi51bmQgZGEgd2VyZGVuIGF1Y2ggTGV1dGUgZ2VnZXNzZW4KKG9kZXIgc28pLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEhIR0cgSW5mb2NvbSBBZHZlbnR1cmUgKE1hcmN1cywgMjMuIE1hciAyMDA0LCAyMzowMjoxNCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwODAwNzkxNTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc5NzAyNzg2ClpvcmsgZ2xhdWJlIGljaC4KCkNpYW8sIE1hcmN1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBhcnR5dGFzc2UgKEdub21lLCAyMy4gTWFyIDIwMDQsIDIzOjI2OjA2KToKfiMhIHJuPVRhc3NlIHJ0PTEwNzk5ODU4OTYgcmc9cGFydHkuYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwNzk5ODU4OTYKd2llc28ga3JpZWd0IGh1bW5pIGRhcmt3aW5ncyB0YXNzZT8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEhIR0cgSW5mb2NvbSBBZHZlbnR1cmUgKEJvaW5nLCAyNC4gTWFyIDIwMDQsIDAwOjMzOjI5KToKfiMhIHJuPU1hcmN1cyBydD0xMDgwMDc5MzM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA3OTcwMjc4Ngpab3JrIEkgdW0gZ2VuYXUgenUgc2VpbiAuLi4gYWJlciBpbiBJSSB1bmQgSUlJIGdhYiBlcyBkYXMgbmF0dWVybGljaAphdWNoIHdpZWRlciAuLi4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJvc3RyaW5nZSAoUmFuZ29ybiwgMjQuIE1hciAyMDA0LCAxMDozMzoxNSk6CkR1IGtvbnplbnRyaWVyc3QgRGljaCBhdWYgZGVuIE1pdGhyaWxyaW5nIHVuZCBzYW1tZWxzdCBkaWUgRW5lcmdpZW4gZGVzIFlyZCwKZGFubiBzdHJlaWNoc3QgRHUgbWl0IGRlbSBZcmRzdGVpbiB1ZWJlciBkZW4gTWl0aHJpbHJpbmcgdW5kIGVyaGFlbHRzdApmb2xnZW5kZSBJbmZvcm1hdGlvbjoKRGlyIGZyaWVydCBkaWUgTmFzZSBlaW4uCgo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJCPyAoUGl0ZmFsbCwgMjQuIE1hciAyMDA0LCAxMjoxMTowNyk6Cn4jISBybj1Hbm9tZSBydD0xMDgwMDgxNzUzIHJnPXBhcnR5Cn4jISB0aWQ9MTA4MDA4MTc1MwpEdSBydWZzdCBqYSBudXIgenUgc293YXMgYXVmIHdlaWwgaWNoIHZvcmF1c3NpY2h0bGljaApuaWNodCBkYXNlaW4gd2VyZGUgLi4uICptaXQgZGVtIEVsbGJvZ2VuIHdlZGVsKgoKUGl0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSEhHRyBJbmZvY29tIEFkdmVudHVyZSAoSHVtbmksIDI0LiBNYXIgMjAwNCwgMTQ6NDA6MDApOgp+IyEgcm49Qm9pbmcgcnQ9MTA4MDA4NDgwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwNzk3MDI3ODYKTmFqYSwgZGFuYWNoIGhhdCBkYXMgamVkZXMgSW5mb2NvbS1BZHZlbnR1cmUgZWluZ2VudGxpY2ggZ2VoYWJ0LiBVbmQgZGFzIHRvbGxlClctRnJhZ2UtU3lzdGVtIGthbm50ZSBzbyB6aWVtbGljaCBnZW5hdSBlaW5lIEZyYWdlLCBuYWVtbGljaCB3aGF0IGlzIGEgZ3J1ZS4KRGllIEFudHdvcnQgd2FyIGplIG5hY2ggS29udGV4dCB2ZXJzY2hpZWRlbiAoYmVpIGRlbiBGYW50YXN5LVNwaWVsZW4gZnJhc3NlbgpkaWUgQWR2ZW50dXJlciwgYmVpIGRlbiBTRi1TcGllbGVuICh6dW1pbmRlc3QgU3RhdGlvbi9QbGFuZXRmYWxsIHVuZCBJTUhPIGF1Y2gKU3RhcmNyb3NzKSBoYWx0IFNwYWNlcnMuIEluIGplZGVtIEZhbGwgZnJhc3NlbiBzaWUgU3BpZWxlciwgZGllIG1laHIgYWxzIDIKUmFldW1lIGxhbmcgaW0gRHVua2VsbiBzdGFuZGVuLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQkI/IChHbm9tZSwgMjQuIE1hciAyMDA0LCAxNTo1MzoxNyk6Cn4jISBybj1QaXRmYWxsIHJ0PTEwODAxMjY2Njcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwMDgxNzUzCmR1IGhhc3QgcmVjaHQuIGthZW1zdCBkdSBtaXQsIHd1ZXJkZSBpY2ggYXVzIHNpY2hlcmVyIGVudGZlcm51bmcgenVndWNrZW4uCm1laW5lIGF1Z2VuIHNpbmQgbWlyIGhlaWxpZy4gOCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5lLCBpcyBrbGFyIDspIChab29rLCAyNC4gTWFyIDIwMDQsIDE4OjA3OjU4KToKW1NlaGVyOk1vcmdvdGggZ3JpbnN0IFJhbW9uYSBhbiA8MTg6MDY6MTQ+XQpbVG9kOkxhcnNdIEVpbiBPcmsgaGF0IGdlcmFkZSBSYW1vbmEgdW1nZWJyYWNodC4KW1RvZDpFaW4gT3JrXSBXaXIgc2luZCBPcmshIFdpZGVyc3RhbmQgaXN0IHp3ZWNrbG9zISBEZWluIFdpc3NlbiB1bmQgRGVpbmUKW1RvZDpFaW4gT3JrXSBBdXNydWVzdHVuZyB3dXJkZW4gYXNzaW1pbGllcnQuCgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFzdGVyaXgtUHVpeiAoQ3JvZnQsIDI1LiBNYXIgMjAwNCwgMTM6MjQ6MjIpOgp+IyEgcm49VmluY2VudCBydD0xMDgwMTczMzM1IHJnPXB1aXoKfiMhIHRpZD0xMDc5MjgzMjczCkR1IG1laW5zdCBBdXNzZW4tIHVuZCBJbm5lbnNlaXRlPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUzogT2JkYWNoIChDYXR3ZWF6bGUsIDI1LiBNYXIgMjAwNCwgMTU6MDI6NTUpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwODAyMTI3OTggcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMDgwMTY0NjU1CkR1IGhhc3QgZGlyIGdlcmFkZSBlaW5lbiBQYWNrZXNlbCBhdXNnZWxhZGVuIDopCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGd1ZW5zdGlnPyAoR3JpbW1ib3JuLCAyNS4gTWFyIDIwMDQsIDE2OjE4OjE5KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDgwMjI1Mjc3IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwODAyMjM3MTMKV2llIHdhZXJlIGVzIG1pdApodHRwOi8vd3d3LnNoaWZ0eWNhcnQuZGUvZi5waHAvc2hvcC9sYXBzdG9yZS9mLzE2MC9rdy9GZXJyYXJpLTMwMDAtU2VyaWVzID8KRGFzIG1hY2h0IERpY2ggc2ljaGVyIGluc3RhbnRhbiB6dW0gR2VzcG9lXkheSHJhZWNoc3RoZW1hIE5vLiAxIHVuZApiZXd1bmRlcnRlbSBNaXR0ZWxwdW5rdCBhdWYgamVkZXIgUGFydHkuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHNwcnVuZyBpbiBkZXIgc2NodWVzc2VsPyAoTW9yZ290aCwgMjUuIE1hciAyMDA0LCAxNzoxMTowOSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA4MDIzMDI1OSByZz13d3cKfiMhIHRpZD0xMDgwMjI4MTQzCkxhbmdld2VpbGUgQHdvcms/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmVpZ2xpbmdlIChNb3Jnb3RoLCAyNS4gTWFyIDIwMDQsIDIzOjUxOjQyKToKRWluIGVudHNldHpsaWNoZXIgU2NocmVpIGhhbGx0IHZvbSBGcmllZGhvZiBoZXJ1ZWJlci4KWm9vayAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKW0ZyZXVuZGU6Qm9pbmddIGNpYW8sIGd1dGUgbmFjaHQhCkJvaW5nICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZlaWdsaW5nIChNb3Jnb3RoLCAyNi4gTWFyIDIwMDQsIDE4OjQ0OjUyKToKW1NlaGVyOkFyc2FpXSBGaW5kZXQgc2ljaCB3ZXIgZnVlciBERz8KW0ZyZXVuZGU6Qm9pbmddIGNpYW8KQm9pbmcgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpNKiBraWNoZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmVpZ2xpbmcgKFBhdHJ5biwgMjYuIE1hciAyMDA0LCAxOToxNDoxOSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwODAzMjMwOTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwMzIzMDkyCmFwcm9wb3MgVzEtVzIwIEJ1bGxzaGl0LVNwaWVsY2hlbi4uLmluIEhlaXNlIGthbm4gbWFuIG5pY2h0IG51ciBpbW1lciB1ZWJlcgpMZXV0ZSBzb25kZXJuIG1hbmNobWFsIGF1Y2ggbWl0IElobmVuIGdyaW5zZW4uLi4KClJlOiAiTGVhZGVyc2hpcCIsICJlQmF5IFZhbHVlcyIsICJBY3Rpdml0eSBNYW5hZ2VyIiAKRGFzX1AgKDI2LiBNYWVyeiAyMDA0IDE1OjIwKQoKVGhlIFdhbHJ1cyBzY2hyaWViIGFtIDI2LiBNYWVyeiAyMDA0IDE1OjAwCgo+IEFsbGVpbiBmdWVyIGRpZSBWZXJ3ZW5kdW5nIHNvbGNoZXIgVm9rYWJlbG4gc29sbHRlIG1hbiBkZW4gTGFkZW4KPiBkaWNodG1hY2hlbiA7KQoKZGFzIHNpbmQgaGFsdCBid2wnZXIuIGRpZSB2ZXJzdWNoZW4gYXVmIGRpZXNlIHdlaXNlICdpbXBhY3QnIHp1Cm1hY2hlbiB1bmQgZGllICdjb3Jwb3JhdGUgaWRlbnRpdHknIGFscyAnZ2xvYmFsIHBsYXllcicgenUKJ3VuZGVybGluZW5lbicgOikKCnVuZCBqYSwgZXMgaXN0IGZ1cmNodGJhci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRmVpZ2xpbmcgKFpvb2ssIDI2LiBNYXIgMjAwNCwgMjA6NTY6MzApOgp+IyEgcm49UGF0cnluIHJ0PTEwODAzMjQ4NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwMzIzMDkyCldvYmVpIGljaCBtaWNoIGJlaSBXMS1XMjAgZ2VnZW4gQW5nbGl6aXNtZW4gdmVyd2VocmUgOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZWlhLi4uIChXYXJnb24sIDI3LiBNYXIgMjAwNCwgMTY6MDE6MzMpOgpbU2VoZXI6QXJzYWldIFdpZSB3YWVyZSBlcyBudW4gbWl0IGVpbmVyIFJ1bmRlIERHPyA8MTU6NTM6MTA+CltTZWhlcjpXYXJnb25dIFdhcyBpc3QgREc/ICJEdW1tZXMgR2VsYWJlciI/ICJEdW5rZWxlbGZlbiBHdWNrZW4iPyA6KQpWYW5pb24gdGVpbHQgRGlyIG1pdDogRHJhY2tlbmdvdHQKQW5hdG9sIHRlaWx0IERpciBtaXQ6IERyYWNoZW5nb3R0CkFuYXRvbCB0ZWlsdCBEaXIgbWl0OiBCaW9uZ3MgU1NQLUVyd2VpdGVydW5nCkFuYXRvbCB0ZWlsdCBEaXIgbWl0OiBGcmFnIG5pY2h0IHdlciBCaW9uZyBpc3QgOykKVmFuaW9uIHRlaWx0IERpciBtaXQ6IGduYSAtIFR5cG9zIGJpdHRlIHNlbGJzdHN0YWVuZGlnIGVudGZlcm5lbi4KCldpcmQgd29obCBsYW5nc2FtIFplaXQgZnVlciBlaW5lbiBlaW5nZWJhdXRlbiBTcGVsbGNoZWNrZXIuLi4gOykKICBXYXJnb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWlhLi4uIChab29rLCAyNy4gTWFyIDIwMDQsIDE5OjM2OjQ2KToKfiMhIHJuPVdhcmdvbiBydD0xMDgwMzk5NjkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MDM5OTY5MwpIbW0uLiBkYXJmIGljaCBmcmFnZW4sIHdlciBCaW9uZyBpc3Q/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVGFiZWxsZW5rYWxrdWxhdGlvbiBlaW5lcyBSZWRtb25kZXIgU29mdHdhcmVyaWVzZW4uLi4gKEFuYXRvbCwgMjcuIE1hciAyMDA0LCAyMDoxNTowMik6Cn4jISBvbj1BbmF0b2wgb3Q9MTA4MDQxNDg5OCBvZz1oYXJkc29mdHdhcmUKfiMhIHJuPUFyYXRob3JuIHJ0PTEwODA0MTQ4MTggcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTA4MDM4OTA5OQpCZWlkZXMgZmFzc3QgbWFuIG51ciBtaXQgU2NobWVyemVuIGFuLCBhbHNvIGdld2lzc2UgR2VtZWluc2Fta2VpdGVuLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQYXJ0eS1Mb3R0ZXJpZSAoQ3JvZnQsIDI3LiBNYXIgMjAwNCwgMjE6MTM6MzEpOgp+IyEgcm49TWlyaWwgcnQ9MTA4MDQxODMzOCByZz1wYXJ0eS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA4MDQxODEyOApIbS4gVGhhaWxhZW5kaXNjaGUgRFZEcz8gIFVuZCB3aWUgYWt0dWVsbGUgZGllIEhhcmQtIHVuZCBTb2Z0d2FyZSBpc3QKd3VyZGUgYXVjaCBuaWNodCBnZXNhZ3QgLG8pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUGFydHktTG90dGVyaWUgKEFyYXRob3JuLCAyNy4gTWFyIDIwMDQsIDIxOjE0OjMyKToKfiMhIG9uPUFyYXRob3JuIG90PTEwODA0MTg0NDkgb2c9cGFydHkuYmVrYW5udG1hY2h1bmdlbgp+IyEgcm49SG9ibyBydD0xMDgwNDE4NDEzIHJnPXBhcnR5LmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDgwNDE4MTI4CkhhYnQgSWhyIGVpbiBUZXJyb3ItV2ljaHRlbG4gdmVyYW5zdGFsdGV0PyA7LSkKCkFyYXRob3JuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSdWZlIChWYW5pb24sIDI4LiBNYXIgMjAwNCwgMTM6NTU6MTIpOgp+IyEgb249VmFuaW9uIG90PTEwODA0NzQyMDYgb2c9YmVrYW5udG1hY2h1bmdlbgpXZWlsIFpvb2sgbWljaCBhbHMgRmVpZ2xpbmcgYmV6ZWljaG5ldCBoYXQsIGtvc3RlbiBBdXNydWZlemVpY2hlbiBiZWltIFJ1ZmUgYWIKaGV1dGUgZXh0cmEuIERhcyBnaWx0IHdpZSBpbW1lciBudXIgZnVlciBhbGxlICBuZXUgZWluZ2Vsb2dndGVuIENoYXJzLiBVbmQKbmljaHQgZnVlciBHb2V0dGVyIHVuZCBhbmRlcmUgTWFnaWVyLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSdWZlIChDcm9mdCwgMjguIE1hciAyMDA0LCAxMzo1NjoyMik6Cn4jISBybj1WYW5pb24gcnQ9MTA4MDQ3NDkxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwODA0NzQ5MTIKV2llIGJpdHRlPyAgRGFzIGlzdCBudXIgU2NobWFycm4/ICBEYXMgd2FlciBkaWUgc2lubnZvbGxzdGUgQWVuZGVydW5nCnNlaXQgbGFuZ2VtICwtKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUnVmZSAoVmFuaW9uLCAyOC4gTWFyIDIwMDQsIDEzOjU3OjIwKToKfiMhIHJuPUNyb2Z0IHJ0PTEwODA0NzQ5ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwNDc0OTEyCkphLiBFYmVuLiBVbmQgd2lyIHdvbGxlbiBkb2NoIG5pY2gsIGRhc3Mgc293YXMgU2NodWxlIG1hY2h0LCBvZGVyPyBXbyBrYWVtZW4Kd2lyIGRlbm4gZGFoaW4/CgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUnVmZSAoT2dvLCAyOC4gTWFyIDIwMDQsIDE0OjAxOjMwKToKfiMhIHJuPVZhbmlvbiBydD0xMDgwNDc1MDQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MDQ3NDkxMgpXaWUgd2FlcmUgZXM6CldpciBmdWVocmVuIGVpbmVuIFNjaGx1ZXNzZWwgZWluLCBlaW4gUnVmZSBoYXQgR3J1bmRrb3N0ZW4sIHZvbiB6LkIuIDE1LiBGdWVyCmplZGVzIFplaWNoZW4gW2EtekEtWl0gd2VyZGVuIDIga3BzIGZhZWxsaWcsIGZ1ZXIgamVkZXMgTGVlcnplaWNoZW4gMSBLcC4KV29lcnRlciBtaXQgbWVociBhbHMgZHJlaSBHcm9zc2J1Y2hzdGFiZW4ga29zdGVuIHBybyBCdWNoc3RhYmUgNSBLcHMuClNvbmRlcnplaWNoZW4gd2llIEtvbW1hIHVuZCBQdW5rdCBrb3N0ZW4gZWluIEtQLCBhbGxlIGFuZGVyZW4gMywKQXVzcnVmZXplaWNoZW4ga29zdGVuIDEwLgoKT2dvLCBpbW1lciBmdWVyIGR5bmFtaXNjaGUgQW5zYWV0emUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFJ1ZmUgKFdoaXRldGlnZXIsIDI4LiBNYXIgMjAwNCwgMTQ6MDM6MTEpOgp+IyEgcm49T2dvIHJ0PTEwODA0NzUyOTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwNDc0OTEyClVuZCBkaWUgQW56YWhsIEV2YWwtdGlja3MsIGRpZSB6dXIgQmVyZWNobnVuZyBub2V0aWcgd2FyZW4sIHdlcmRlbiBkYW5uIChtaXQKZWluZW0gYmVzdGltbXRlbiBGYWt0b3IgdmVyc2VoZW4pIG5vY2ggZHJhdWZnZXJlY2huZXQsIGphPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUnVmZSAoT3JrdG9ldGVyLCAyOC4gTWFyIDIwMDQsIDE0OjA2OjUwKToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA4MDQ3NTM5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwODA0NzQ5MTIKQml0dGUgbmljaHQgdmVyZ2Vzc2VuLCBkYXNzIG5hY2ggamVkZXIgZ2VkcnVlY2t0ZW4gVGFzdGUgc29mb3J0IGVpbiBGZWVkYmFjawphbiBkZW4gVXNlciBnZWh0IGRlbSBlciBlbnRuZWhtZW4ga2FubiBvYiBlciBub2NoIGVpbiBaZWljaGVuICh1bmQgd2VsY2hlCkthdGVnb3JpZSkgdGlwcGVuIGthbm4uLi4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBSdWZlIChPZ28sIDI4LiBNYXIgMjAwNCwgMTQ6MDg6MzIpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwODA0NzU2MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwNDc0OTEyCgpPZ28genVlY2t0IGRlbiAnVGVjaG5pc2NoLW5pY2h0LW1hY2hiYXInLVN0ZW1wZWwgdW5kIGRydWVja3QgaWhuIE9ya3RvZXRlciBhdWYKZGllIFN0aXJuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogUnVmZSAoV2hpdGV0aWdlciwgMjguIE1hciAyMDA0LCAxNDowODo1OCk6Cn4jISBybj1PZ28gcnQ9MTA4MDQ3NTcxMiByZz1zY2htYXJybgp+IyEgdGlkPTEwODA0NzQ5MTIKRGFmdWVyIGdpYnQncyBkb2NoIFRpbnlNYWNyb3MgJiBDby4uLiBrYW5uc3QgZHUgZGlyIGJlc3RpbW10Cnp1c2FtbWVuc2NocmVpYmVuLCB3ZW5uIGR1IHNvd2FzIHVuYmVkaW5ndCBicmF1Y2hlbiBzb2xsdGV0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBSdWZlIChIdW1uaSwgMjguIE1hciAyMDA0LCAxNDoxMToxNSk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwODA0NzU3Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwNDc0OTEyCi9ydWZ0ZXN0IEljaCB3ZXJkIHp1bSBUaWVyISBEdSB1bmQgU2VoZXI/IFd1YWFoYWhhaGFoYSEhISEhCgpSVUZURVNUOiBLb3N0ZW5wdW5rdCAyMjYgS1AsIERlaW4gU3RhbmQ6IDIxOC4KUlVGVEVTVDogRW1wZmVobHVuZzogMSBBdXNydWZlemVpY2hlbiB3ZWdsYXNzZW4uCgpTbyBpbiBldHdhPyBMb3MsIGJhdXQgbWFsIQoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFJ1ZmUgKFpvb2ssIDI4LiBNYXIgMjAwNCwgMTQ6MTc6MjkpOgp+IyEgcm49T2dvIHJ0PTEwODA0NzUyOTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwNDc0OTEyCkhhdXB0c2FjaGUsIGxhdXRlIEFuYmV0dW5nc3J1ZmUgenUgbWlyIHdlcmRlbiBrb3N0ZW5mcmVpIQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdpbmRvd3MgU3VjaGZ1bmt0aW9uIChPZ28sIDI4LiBNYXIgMjAwNCwgMTU6MDg6MjcpOgp+IyEgb249T2dvIG90PTEwODA0NzkzMDEgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1NdXBmZWwgcnQ9MTA4MDQ3ODU2NSByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDgwMzg4ODUxCldpZSBpc3QgZGVubiBmaW5kIC1leGVjIHJlYWxpc2llcnQ/CgpPZ28sIHN0YWVua2VybmQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFJ1ZmUgKFZhbmlvbiwgMjguIE1hciAyMDA0LCAxNjoyMjozOCk6Cn4jISBybj1PZ28gcnQ9MTA4MDQ3NTI5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwODA0NzQ5MTIKTmEga2xhciAtIHVuZCBzY2hvbiBtdWVzc2VuIHdpciBkaWUgbWF4aW1hbGVuIGV2YWwgdGlja3MgZXJob2VoZW4sIGRhbWl0IG5vY2gKamVtYW5kIHNob3V0ZW4ga2Fubi4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBSdWZlIChCYW1iaSwgMjguIE1hciAyMDA0LCAxODo1NTo1NSk6Cn4jISBybj1WYW5pb24gcnQ9MTA4MDQ4Mzc1OCByZz1zY2htYXJybgp+IyEgdGlkPTEwODA0NzQ5MTIKV2VubiAicnVmIC4uLiIgZ2VuZXJlbGwgYWxzIE1lbGR1bmcgYnJpbmd0ICJEYXMgd3VlcmRlIHp1dmllbGUgZXZhbCB0aWNrcwprb3N0ZW4iLCB3YWVyZSBkZW4gbWVpc3RlbiBnZWhvbGZlbi4gQWxsZW4gYXVzc2VyIGRlbmVuLCBkaWUgcnVmZW4gd29sbGVuLgoKQmFtYmkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBSdWZlIChWZWN0b3IsIDI4LiBNYXIgMjAwNCwgMjA6NDM6NTgpOgp+IyEgcm49QmFtYmkgcnQ9MTA4MDQ5Mjk1NSByZz1zY2htYXJybgp+IyEgdGlkPTEwODA0NzQ5MTIKd2llIHZpZWxlIGtwIGhhdCBlaWdlbnRsaWNoIG1lcmxpbj86KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogUnVmZSAoWm9vaywgMjguIE1hciAyMDA0LCAyMDo0NToyNyk6Cn4jISBybj1WZWN0b3IgcnQ9MTA4MDQ5OTQzOCByZz1zY2htYXJybgp+IyEgdGlkPTEwODA0NzQ5MTIKSWNoIHZlcm11dGU6IFp1dmllbGUuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmUsIGlzIGtsYXIuLi4gKFpvb2ssIDI5LiBNYXIgMjAwNCwgMTU6Mjc6MjApOgpEZWluIEZyZXVuZCBSYXZlbnRocm9uZSB0ZWlsdCBEaXIgbWl0OiByZQpSYXZlbnRocm9uZSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgoKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2V0dGVyIChHcmltbWJvcm4sIDMwLiBNYXIgMjAwNCwgMTY6NDE6NTIpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwODA2NTc2MzUgcmc9cGFydHkuYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwODA2NTc2MzUKRWxlbmRlciBEaWt0YXRvciEKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdldHRlciAoVmFuaW9uLCAzMC4gTWFyIDIwMDQsIDE4OjExOjQyKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDgwNjU3NjM1IHJnPXBhcnR5LmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDgwNjU3NjM1CjZoIFNvbm5lL1RhZyBpcyBsYXVzaWcuIEFiZXIgaW1tZXJoaW4uCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQXN0ZXJpeC1QdWl6IChDYXR3ZWF6bGUsIDMwLiBNYXIgMjAwNCwgMTg6NTU6MjMpOgp+IyEgcm49UGhvYm9zIHJ0PTEwODA2NjU0NDIgcmc9cHVpegp+IyEgdGlkPTEwNzkyODMyNzMKU2VociBzY2hvZW4sIHdlbm4gZHUgbWlyIGRpZSBCYWVuZGUgZGFubiBiaXR0ZSBhbGxlIHp1c2NoaWNrZW4gd3VlcmRlc3Q/Ck1laW5lIEFkcmVzc2UgdmVycmF0ZSBpY2ggYmlzIG1vcmdlbiB1bSAxMiBVaHIgMzQgTWludXRlbiB1bmQgNTYgU2VrdW5kZW4sCndlbm4gZHUgZXJyYXRlbiBrYW5uc3QsIHdvIGljaCB3b2huZS4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQXN0ZXJpeC1QdWl6IChHcmltbWJvcm4sIDMwLiBNYXIgMjAwNCwgMTk6MDA6NTIpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwODA2NjU3MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDc5MjgzMjczCkR1IHdpbGxzdCBkaWUgQmFlbmRlIHp1Z2VzY2hpY2t0IGJla29tbWVuPyBHdWNrc3QgRHUgaGllcjoKaHR0cDovL3Rpbnl1cmwuY29tLzNiazNzCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOb3RmYWxsbnVtbWVyIChCYW1iaSwgMzAuIE1hciAyMDA0LCAxOToxMjo1Mik6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA4MDY2MTAzMyByZz1wYXJ0eS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA4MDY2MTAzMwpJY2ggZXJpbm5lciBtaWNoIGFuIGVpbi4uLgpNdWFkaWIgcnVmdDogS2FubiBtYWwgd2VyIGFucyBUZWxlZm9uIGtvbW1lbj8gQmFtYmkgc3RlaHQgaW0gV2FsZCB1bmQgaGF0IHNpY2gKdmVybGF1ZmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5vdGZhbGxudW1tZXIgKENhdHdlYXpsZSwgMzEuIE1hciAyMDA0LCAxMDowNToxMCk6Cn4jISBvbj1Nb250YW51cyBvdD0xMDgwNzIwMjQwIG9nPXBhcnR5LmJla2FubnRtYWNodW5nZW4KfiMhIHJuPUNhdHdlYXpsZSBydD0xMDgwNjYxMDMzIHJnPXBhcnR5LmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDgwNjYxMDMzCldhcyBpc3QsIHdlbm4gaWNoIG1pYyBoYXVmIGRlbSBXZWcgenUgZGVuIENvbGFmbGFzY2hlbiB2ZXJsYXVmZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTm90ZmFsbG51bW1lciAoQ2F0d2VhemxlLCAzMS4gTWFyIDIwMDQsIDEwOjA1OjIwKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDgwNzIwMzEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MDY2MTAzMwpEYW5uIGlzdCBkYXMgZ3V0IGtvbWJpbmllcnQgOikKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTm90ZmFsbG51bW1lciAoTW9udGFudXMsIDMxLiBNYXIgMjAwNCwgMTA6MDY6MjApOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwODA3MjAzMjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwNjYxMDMzCkthbm4gbWFuIGRpY2ggYXVjaCBvaG5lIE1vYmlsdGVsZWZvbiBydWZlbj8gSXNjaCAnYWJlIG5hZW1saWNoIGdhciBrZWluYWUKJ2VlbmR5LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTm90ZmFsbG51bW1lciAoQ2F0d2VhemxlLCAzMS4gTWFyIDIwMDQsIDEwOjA2OjQ4KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwODA3MjAzODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwNjYxMDMzCk1hbiBrYW5uIGRpZSBIYW5keW51bW1lciBhdWNoIHZvbSBGZXN0bmV0eiBhdXMgYW5ydWZlbiwgamEuCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5vdGZhbGxudW1tZXIgKE1vbnRhbnVzLCAzMS4gTWFyIDIwMDQsIDEwOjA3OjI2KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDgwNzIwNDA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MDY2MTAzMwpPYiBudW4gbWl0dGVuIGF1ZiBkZXIgRmVzdHdpZXNlIHBsb2V0emxpY2ggc28gZWluIEZlc3RuZXR6dGVsZWZvbiBhdWZ0YXVjaHQsCndlbm4gbWFuIHNpY2ggZ2VyYWRlIHZlcmxhdWZlbiBoYXQsIHdhZ2UgaWNoIHp1IGJlendlaWZlbG4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBOb3RmYWxsbnVtbWVyIChFbGJlcmV0LCAzMS4gTWFyIDIwMDQsIDEwOjA3OjU2KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwODA3MjA0NDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwNjYxMDMzCmRhbm4gc2NoYWZmIGRpciBuZW4gaGFuZHkgYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE5vdGZhbGxudW1tZXIgKE1vbnRhbnVzLCAzMS4gTWFyIDIwMDQsIDEwOjA4OjQ3KToKfiMhIHJuPUVsYmVyZXQgcnQ9MTA4MDcyMDQ3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODA2NjEwMzMKRGFmdWVyIGlzdCBKYW1lc29uIHp1c3RhZW5kaWcuIExpZXMgbWVnYXNjaG1hcnJuIGJlc3NlciB1bmQgc2NoYWVtIGRpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBOb3RmYWxsbnVtbWVyIChFbGJlcmV0LCAzMS4gTWFyIDIwMDQsIDEwOjA5OjMzKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwODA3MjA1Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwNjYxMDMzCmljaCB3ZXJkZSBkZW4gdGV1ZmVsIHR1biwgbWVnYXNjaG1hcnJuIHp1IGxlc2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBOb3RmYWxsbnVtbWVyIChDYXR3ZWF6bGUsIDMxLiBNYXIgMjAwNCwgMTA6MTE6MDIpOgp+IyEgcm49RWxiZXJldCBydD0xMDgwNzIwNTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MDY2MTAzMwpWb2VsbGlnIGZhbHNjaGUgRWluc3RlbGxsdW5nLCBkZW5uICJNZWdhc2NobWFycm5sZXIgd2lzc2VuIG1laHIhIiAKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTm90ZmFsbG51bW1lciAoTW9udGFudXMsIDMxLiBNYXIgMjAwNCwgMTA6MTE6MjApOgp+IyEgcm49RWxiZXJldCBydD0xMDgwNzIwNTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MDY2MTAzMwpEdSB3aXJzdCBkZW4gVGV1ZmVsIHR1bj8gRGFzIGhlaXNzdCwgZHUgbWFjaHN0IG1yaSBkZW4gQXNtb2Rpcz8gSGF0dGUgS2V5IGFsc28KZG9jaCBSZWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOb3RmYWxsbnVtbWVyIChFbGJlcmV0LCAzMS4gTWFyIDIwMDQsIDEwOjEyOjMwKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDgwNzIwNjYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MDY2MTAzMwppY2ggd2lsbCB6dWZhZWxsaWcgZ2FyIG5pY2h0IG1laHIgd2lzc2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTm90ZmFsbG51bW1lciAoTW9udGFudXMsIDMxLiBNYXIgMjAwNCwgMTA6MTU6MzUpOgp+IyEgcm49RWxiZXJldCBydD0xMDgwNzIwNzUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MDY2MTAzMwpVbndpc3NlbmhlaXQgc2NodWV0enQgbmljaHQgdm9yIFN0cmFmZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBOb3RmYWxsbnVtbWVyIChIdW1uaSwgMzEuIE1hciAyMDA0LCAxNTowNzo1OCk6Cn4jISBybj1Nb250YW51cyBydD0xMDgwNzIwOTM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MDY2MTAzMwpVbmQgbWVnYXNjaG1hcnJuZXIgd2lzc2VuIHRyb3R6ZGVtIG1laHIuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVtbmlzIFJlaW1rdWx0dXIgKEFzdWthLCAzMS4gTWFyIDIwMDQsIDIwOjE2OjA3KToKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogTmFqYSBkYW5uIG11c3N0IER1IGFsbGUgUG9seW5vbWUgdWViZXIgRl9wCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IChkZXIgc28gYXVzc2llaHQ6IHswLDEsLi4ucC0xfSBiaXMgenVtIEdyYWQKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogbi0xIGJpbGRlbi4gR2FueiBlaW5mYWNoLiBOdW4gYnJhdWNoc3QgRHUgbnVyCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IG5vY2ggZWluIGlycmVkdXppYmxlcywgcmVjaG5lc3QgZGFtaXQgbW9kdWxvCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IHVuZCB2b2lsYSwgRHUgaGFzdCBGX3EuIEJpcyBhdWYgSXNvbW9ycGhpZS4KWy4uLl0KRGVpbmUgRnJldW5kaW4gTWFoYXJldCB0ZWlsdCBEaXIgbWl0OiBCb2FoLiBEaWUgRHJvZ2VuIHNpbmQga2xhc3NlLiBIdW1uaXMKRGVpbmUgRnJldW5kaW4gTWFoYXJldCB0ZWlsdCBEaXIgbWl0OiBSZWltZSBzZWhlbiBnYW56IHVuZ2V3b2VobmxpY2ggYXVzIGhldXRlCkRlaW5lIEZyZXVuZGluIE1haGFyZXQgdGVpbHQgRGlyIG1pdDogLi4uClsuLi5dCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IEljaCBrYW5uIGRhcyBhdWNoIGdlcmVpbXQuIEJlc3RpbW10LiBtb21lbnQuCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IEVzIHdhciBtYWwgZWluIEZfcCwgZGFzIHNhc3MgYWxsZWluIGRhIHJ1bS4KRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogRGEga2FtIGVpbiBuIGRhenUuIFVuZCBkYW5uLCBrcmFjaCwgYnVtbSwKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogd3VyZGUgYXVzIEZfcCBlaW4gRl9xLCBtaXQgcCBob2NoIG4uCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IERhcyB3YXIgc2VociBndXQgZnVlciBiZWlkZSwgZGVubgpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBWb3JoZXIgemVyZmllbCBkYXMgUG9seW5vbSBuaWNodCwKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogZG9jaCBkYXMgaXN0IHNlaHIgd2ljaHRpY2ghCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEh1bW5pcyBSZWlta3VsdHVyIChFbGJlcmV0LCAzMS4gTWFyIDIwMDQsIDIwOjE3OjMyKToKfiMhIHJuPUFzdWthIHJ0PTEwODA3NTY5Njcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwNzU2OTY3ClZvbiBGcmV1bmQgSHVtbmk6IEtvbnN0cnVpZXJ0IHdhciBkZXIgS29lcnBlciBhYmVyIG5pY2h0IG5hY2gKVm9uIEZyZXVuZCBIdW1uaTogQ29ud2F5LiBEYXMgaGllbHRlbiB2aWVsZSBuaWNodCBmdWVyIEZhaXIKVm9uIEZyZXVuZCBIdW1uaTogcGxheS4gVW5kIHdlbm4gbWFuIHN0ZWh0IGJlaW0gS2xpdHplbGRyb20gdW5kClZvbiBGcmV1bmQgSHVtbmk6IHNjaGF1dCBkYW5uIGF1ZiBkYXMgUG9seW5vbSBkZW5rdCBtYW4gb2Z0ClZvbiBGcmV1bmQgSHVtbmk6ICwsV293LCBjb29sLCB6ZXJmYWVsbHQgdWViZXIgQycnIHVuZApWb24gRnJldW5kIEh1bW5pOiB1ZWJlcnNpZWh0IGRhIGRpZSBLYWVsLVRlLiBEYW5uIHN0aXJidCBtYW4KVm9uIEZyZXVuZCBIdW1uaTogc2NobmVsbCAodW5kIExhcnMgbGFjaHQgc2Nob24pIGFtClZvbiBGcmV1bmQgSHVtbmk6IEtsaXR6ZWxkcm9tc3luZHJvbS4uLi4KCm51ciB1bSBkYXMgenUgdmVydm9sbHN0YWVuZGlnZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldHRlciBWZXJzdWNoIC4uLiAoVmFuaW9uLCAzMS4gTWFyIDIwMDQsIDIxOjU1OjQ2KToKTXVwZmVsIHZlcnN1Y2h0LCBEaWNoIHp1IHNodXRkb3duIE11cGZlbCBpc3QgU2NodWxkISB6dSB6d2luZ2VuLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSHVtbmlzIFJlaW1rdWx0dXIgKEdyaW1tYm9ybiwgIDEuIEFwciAyMDA0LCAwMDoxOToxNyk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwODA3NTcwNTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwNzU2OTY3CkF1Y2ggd2VubiBkYXMgd2llZGVyIG5pZW1hbmQgbmFjaGd1Y2tlbiB3aXJkOiBGLiBXaWxsZSwgR2FsZXJraW5zCkxvZXN1bmdzbmFlaGVydW5nZW4gYmVpIG1vbm90b25lbiBBYmJpbGR1bmdlbiwgTWF0aC4gWi4gMTI3LCAxMC0xNiAoMTk3MikKQmVnaW5uOgpHYXIgbWFuY2hlciBoYXR0ZSBNdWVoZSBzY2hvbgptaXQgc2VpbmVyIExvZXN1bmdza29uc3RydWt0aW9uLgpEcnVtIGhhYmVuIHdpciB1bnMgYXVzZ2VkYWNodAp3aWUgbWFuIGVzIG1pdCBHYWxlcmtpbiBtYWNodC4KWCBzZWkgcmVlbGxlciBCYW5hY2hyYXVtLCAKdW5kIGF1c3NlcmRlbSwgc29uc3Qga2xhcHB0IGVzIGthdW0sCmluIHVucydyZXIgbWF0aGVtYXRoJ3NjaGVuIEZhYmVsCmlzdCByZWZsZXhpdiB1bmQgc2VwYXJhYmVsLgoKTmFqYSwgdW5kc293ZWl0ZXIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEh1bW5pcyBSZWlta3VsdHVyIChSb2NodXMsICAxLiBBcHIgMjAwNCwgMDE6NTE6MzcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwODA3NzE1NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwNzU2OTY3CkFsc28gd2VubiBtYW4gRXVjaCBzbyByZWltZW4gbGllc3QsIGdsYXVidCBtaXIgYXVjaCBkZXIgbGV0enRlCk5pY2h0bWF0aGVtYXRpa2VyLCBkYXNzIGplZGUgbm9ybWFsZSBGYW1pbGllIGJlc2NocmFlbmt0IGlzdC4KCiAgUm9jaHVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBIdW1uaXMgUmVpbWt1bHR1ciAoQ2F0d2VhemxlLCAgMS4gQXByIDIwMDQsIDA3OjI3OjEyKToKfiMhIHJuPVJvY2h1cyBydD0xMDgwNzc3MDk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MDc1Njk2NwpPY2ggZXMgZ2VodC4KTmV1bGljaCBhdWYgZGVyIFJlZEhhdC1NaXJyb3ItTGlzdGU6Ci0tLS0tCk9uZSBidWcsIHR3byBidWdzLCB0YXIgYnVncywgc3UgYnVncywKZ3JlcCBidWdzLCBtZXcgYnVncywgb2xkIGJ1Z3MsIG5ldyBidWdzLgoKVGhpcyBidWcgaGFzIGEgbGl0dGxlIGhhY2ssClRoaXMgYnVnIGhhcyBhIGJyb2tlbiBzdGFjay4KU2F5ISBXaGF0IGEgbG90IG9mIGJ1Z3MgdG8gdHJhY2suCgpZZXMsIHNvbWUgYXJlIGluIHRhciwgYW5kIHNvbWUgaW4gc3UuClNvbWUgYXJlIG9sZC4gQW5kIHNvbWUgYXJlIG5ldy4KClNvbWUgaW4gc2VkLCBhbmQgc29tZSBpbiBqZWQuCkFuZCBzb21lIGFyZSBldmVuIGluIHBhcnRlZC4KV2h5IGFyZSB0aGV5IGluIHBhcnRlZCwgamVkIGFuZCBzZWQ/CkkgZG8gbm90IGtub3cuIEJ1Z3Mgc2hvdWxkIGJlIGRlYWQhCgpTb21lIGluIGpwZWcsIGFuZCBzb21lIGluIFRJRkYKVGhpcyBUSUZGIG9uZSBoYXMgYW4gYXR0YWNoZWQgZGlmZi4KCkZyb20gdGhlcmUgdG8gaGVyZSwgZnJvbSBoZXJlIHRvIHRoZXJlClRlc3QgcmVsZWFzZSBidWdzIGFyZSBldmVyeXdoZXJlLgoKRmVkb3JhIENvcmUgdGVzdCAyIGlzIGF2YWlsYWJsZSBmb3IKeDg2IGFuZCB4ODYtNjQKSXQgc2hvdWxkIG5vdCBiZSBpbnN0YWxsZWQgd2hlcmUgcHJvZHVjdGlvbiBpcyBob3Q7CnVzZSBpdCBvbmx5IGZvciB0ZXN0LCBhcyB3ZSBzYXkgcXVpdGUgYSBsb3QuCgpJZiB5b3UgaW5zdGFsbCB3aXRoIHRoZSBkZWZhdWx0ClNFTGludXggd2lsbCBiZSB0aGUgcmVzdWx0ClNFTGludXggaXMgYSBmb3JtIG9mIE1BQwpGb3IgbW9yZSBhbnN3ZXJzLCBjaGVjayB0aGUgRkFRIFsqXQpCeSBleHBsaWNpdGx5IHN0YXRpbmcgd2hhdCBhcHBzIGNhbiB1c2UKVW53YW50ZWQgYWNjZXNzZXMgaXQgd2lsbCByZWZ1c2UKClsqXSBodHRwOi8vcGVvcGxlLnJlZGhhdC5jb20va3dhZGUvZmVkb3JhLWRvY3Mvc2VsaW51eC1mYXEtZW4vCgpTbyBwbGVhc2UgdGVzdCB0ZXN0MiBpbiB0aGlzIG1vZGU7CmFuZCBwbGVhc2UgdGVzdCBpdCB3aXRoIHlvdXIgY29kZS4KUGx1cyBpdCBjb21lcyB3aXRoIGEgbmV3IEdOT01FOwpjYW4geW91IHRlc3QgdGhhdCBpbiB5b3VyIGhvbWU/CkFsc28gWC5vcmcgaXMgbmV3LApyZXBsYWNpbmcgWEZyZWUsIHRlc3QgaXQgdG9vLgpBbmQgMy4yLjEgb2YgS0RFCldlIG5lZWQgdG8gdGVzdCwgdGVzdCwgdGVzdCwgeW91IHNlZSEKU28gd2Ugd2lsbCB0ZXN0IGl0IG9uIG91ciBib3guCkFuZCB3ZSB3aWxsIGV2ZW4gdGVzdCBvdXQgc294LgpBbmQgd2Ugd2lsbCB0ZXN0IGl0IGluIG91ciBob3VzZS4KQW5kIHdlIHdpbGwgdGVzdCBpdCB3aXRoIG91ciBtb3VzZS4KQW5kIHdlIHdpbGwgdGVzdCBpdCBoZXJlIGFuZCB0aGVyZS4KU2F5ISBXZSB3aWxsIHRlc3QgaXQgQU5ZV0hFUkUhCgpQcm9ibGVtcyB3aXRoIEZlZG9yYSBDb3JlIDIgdGVzdCAyIHNob3VsZCBiZSByZXBvcnRlZCB2aWEKYnVnemlsbGEsIGF0OgoJCQkgICAKaHR0cDovL2J1Z3ppbGxhLnJlZGhhdC5jb20vYnVnemlsbGEvCgkJCSAgICAgICAgICAKUGxlYXNlIHJlcG9ydCBidWdzIGFnYWluc3QgJ0ZlZG9yYSBDb3JlJywgcmVsZWFzZSAndGVzdDInLgotLS0tLQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGVpZGVuaHVzIChEZWVwYmx1ZSwgIDEuIEFwciAyMDA0LCAwOTowMDo0OCk6Cn4jISBvbj1EZWVwYmx1ZSBvdD0xMDgwODAyODQwIG9nPWQuZWJlbmUKfiMhIHJuPUh1bW5pIHJ0PTEwODA3NzA1MDkgcmc9ZC5lYmVuZQp+IyEgdGlkPTEwODA3NzA1MDkKVGFyYW1pcyBhdWNoPyBVbmQgZGFzIFpQSz8KCkRhcyBoZXV0ZSBub2NoIGtlaW5lICJUYXJhbWlzIGlzdCBlbmRsaWNoIGFuZ2VzY2hsb3NzZW4uIi1NZWxkdW5nIGluIGRlciBNUEEKc3RlaHQgbWFjaHQgbWljaCBuZXVnaWVyaWcuIFZpZWxsZWljaHQgc29sbHRlIG1hbiBqYSBtYWwgbmFjaHNjaGF1ZW4sIG9iIGVzCmhlaW1saWNoIGFuZ2VzY2hsb3NzZW4gd3VyZGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGVpZGVuaHVzIChCYW1idWxrbywgIDEuIEFwciAyMDA0LCAwOToyNDoxMSk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDgwODAyODQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MDc3MDUwOQpEYXp1IHBhc3NlbmQ6CgpEaWUgSHlkcmEgdGVpbHQgRGlyIG1pdDogSGV5IHdpciBoYWJlbiBzY2hvbiAwIFVoci4KCltBbGxnZW1laW46THV0aF0gZGFubiBsZWd0IG1hbiBsb3MgbWl0IGRlbiBhcHJpbHNjaGVyemVuCiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBIdW1uaSBpbiBSdWJyaWsgImQuZWJlbmUiLgoKUnVicmlrIDc6IGQuZWJlbmUsIEFydGlrZWw6IDIxIHZvbiAyMQpIZWlkZW5odXMgKEh1bW5pLCAgMS4gQXByIDIwMDQsIDAwOjAxOjQ5KToKCkh1aHUsCgp3YXMgbGFuZ2Ugd2FlaHJ0Li4uLiBlbmRsaWNoIGlzdCBIZWlkZW5odXMgaW4gZGVyIEViZW5lIGZlcnRpZy4gVmllbCBTcGFzcy4KCkh1bW5pCgpbQWxsZ2VtZWluOkJhbWJ1bGtvXSBJc3QgVGFyYW1pcyBqZXR6dCBhbmdlc2NobG9zc2VuPwoKCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBIdW1uaXMgUmVpbWt1bHR1ciAoRWxiZXJldCwgIDEuIEFwciAyMDA0LCAxMDowMTozNCk6Cn4jISBybj1Sb2NodXMgcnQ9MTA4MDc3NzA5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwODA3NTY5NjcKaWNoIG11c3MgenVnZWJlbiwgaWNoIGJpbiBkdXJjaCBkZW4gZm9sZ2VuZGVuIFRlc3QgZHVyY2hnZWZhbGxlbiAqc2V1ZnoqCgpKZWRlIE9iZXJrb2VycGVyZXJ3ZWl0ZXJ1bmcgbWl0IG1laHIgYWxzIHp3ZWkgRWxlbWVudGVuIGlzdCBuaWNodCBub3JtYWwgLi4uCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYSBpc3Qgd2llZGVyIGVpbmVyIC4uLiAoQ2F0d2VhemxlLCAgMS4gQXByIDIwMDQsIDEyOjQ4OjIyKToKCk1vaW4hCgpXYXJ1bSBpc3QgbWVnYSBlaWdlbnRsaWNoIHZvbGwsIGljaCBiaW4gaGllciB2b2xsIGZhbHNjaCAuLi4KCkxvcyBpaHIgVWViZXJ3YWNodW5nc21vcmFsaXN0ZW4sIGhpZXIgaXN0IG1hbCB3aWVkZXIgRnV0dGVyIGZ1ZXIgZXVjaDoKZnRwOi8vZnRwLnJmYy1lZGl0b3Iub3JnL2luLW5vdGVzL3JmYzM3NTEudHh0CgpSZXF1aXJlbWVudHMgZnVlciBlaW4gYWxsd2lzc2VuZGVzIFByb3Rva29sbCwgdW0gZGllIEFic2ljaHRlbiBkZXMgVXNlcgp2b3JhdXN6dWFobmVuIHVuZCB6dSBhaG5kZW4uCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IExlaHJlciAoQ2F0d2VhemxlLCAgMS4gQXByIDIwMDQsIDEzOjMzOjE2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDgwODE4NjQxIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDgwODEyODU3Ckt1cnosIHByYWVnbmFudCwgdG9ka29taXNjaC4gV2FzIHdpbGwgbWFuIG1laHIgOikKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTGVocmVyIChHbG9pbnNvbiwgIDEuIEFwciAyMDA0LCAxMzozNDo0MCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA4MDgxOTE5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODA4MTI4NTcKRGVyIFdpdHogZ2VodCBhbiBkZXIgUmVhbGl0YWV0IHZvcmJlaSwgZGllIENoYW5jZSBlaW5lbiBMZWhyX2VyXyBpbQpTY2h1bGRpZW5zdCB6dSBmaW5kZW4gd2lyZCB6dW5laG1lbmQgZ2VyaW5nZXIgOykKSmEsIGljaCBsYW5nd2VpbGUgbWljaCBhdWNoIHdpZWRlci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBMZWhyZXIgKEFudGhlYSwgIDEuIEFwciAyMDA0LCAxNDoxOTo0OCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDgwODE5MjgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MDgxMjg1NwpCaXN0IER1IGV0d2EgZGVyIE1laW51bmcsIGRhc3MgSHVtbmkuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBMZWhyZXIgKE1vbnRhbnVzLCAgMS4gQXByIDIwMDQsIDE0OjI2OjIzKToKfiMhIHJuPUFudGhlYSBydD0xMDgwODIxOTg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MDgxMjg1NwpOZWluLCBIdW1uaSBpc3QgbmljaHQgc2Nod2FuZ2VyIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTGVocmVyIChDYXR3ZWF6bGUsICAxLiBBcHIgMjAwNCwgMTQ6NTc6MDYpOgp+IyEgcm49TW9udGFudXMgcnQ9MTA4MDgyMjM4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwODA4MTI4NTcKQmlzdCBkdSBEaXIgX2dhbnpfIHNpY2hlcj8KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTGVocmVyIChHbG9pbnNvbiwgIDEuIEFwciAyMDA0LCAxNToyNzozOSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA4MDgyNDIyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwODA4MTI4NTcKSHVtbmkgZ2VodCBnZW5hdXNvIHdpZSBpY2ggbnVyIG1pdCBlaW4gcGFhciBCaWVyIHNjaHdhbmdlci4gQWxzbyBiaXR0ZSBuaWNodAppbiBkZW4gQmF1Y2ggcGlla2VuLCBQYXJhZ3JhZiAxMTggQkJHQiAoU2NodXR6IHVuZ2Vib3JlbmVyIEJpZXJlKS4KTmVpbiwgSHVtbmkgaXN0IGhhbHQgZGllIEF1c25haG1lLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogcmVib290IChHbG9pbnNvbiwgIDEuIEFwciAyMDA0LCAxNjowMToyNyk6Cn4jISBybj1NdWFkaWIgcnQ9MTA4MDgyODA0NCByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA4MDgwMjkyNgpJcmdlbmR3aWUgZXJpbm5lcnQgbWljaCBkYXMgYW4gZGllIEVpbnNwaWVsdW5nIGRlcyBMaWNodGRpbmdzIGRhbWFscyA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHJlYm9vdCAoQmllbGVmZWxkLCAgMS4gQXByIDIwMDQsIDE2OjAxOjU4KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwODA4MjgwODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgwODAyOTI2CldpZXNvLCBzb2xsdGUgZGFzIExpY2h0ZGluZ2VzIGVpbiBBcHJpbHNjaGVyeiBnZXdlc2VuIHNlaW4/CgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiByZWJvb3QgKEdsb2luc29uLCAgMS4gQXByIDIwMDQsIDE2OjAyOjUwKToKfiMhIHJuPUJpZWxlZmVsZCBydD0xMDgwODI4MTE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MDgwMjkyNgpJY2ggbWVpbmUgbnVyIGRhcyBWb3JnZWhlbiBkZXMgVmVyc2NoaWViZW5zLCBhbGxlcyBhbmRlcmUgYmxlaWJ0IGRlaW5lcgpJbnRlcnByZXRhdGlvbiB1ZWJlcmxhc3NlbiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGFua2UgYW4gZGllIE9yZ2kncy4gKFJvbmRhLCAgNC4gQXByIDIwMDQsIDE5OjM4OjQ4KToKfiMhIHJuPU11cGZlbCBydD0xMDgxMTAwMjI4IHJnPXBhcnR5Cn4jISB0aWQ9MTA4MTA5ODgyNQpHZW5hdS4gTXVlc3N0ZSBkaWUgbmFlY2hzdGUgbGV0enRlIFBhcnR5IHZvbiBDYXR0eSBkYW5uIG5pY2h0IGVpbmUKIkJlc3Qtb2YtQ2F0dHktUGFydHkiIHNlaW4/IFdpZSB3YWVyZSBlcywgZGllIGltIFNvbW1lciAyMDA1IGFuenVzZXR6ZW4/IEhhdApqZW1hbmQgZGEgc2Nob24gd2FzIHZvcj8KClJvbmRhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGFua2UgYW4gZGllIE9yZ2kncy4gKENyb2Z0LCAgNC4gQXByIDIwMDQsIDE5OjQxOjI2KToKfiMhIHJuPVJvbmRhIHJ0PTEwODExMDAzMjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDgxMDk4ODI1ClNvbW1lciAyMDA1IGlzdCBTY2h3ZWl6IGFuZ2VzYWd0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERhbmtlIGFuIGRpZSBPcmdpJ3MuIChBc3VrYSwgIDQuIEFwciAyMDA0LCAxOTo0MjozMik6Cn4jISBybj1Dcm9mdCBydD0xMDgxMTAwNDg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MTA5ODgyNQpPY2gsIENhdHdlYXpsZSBzY2hhZmZ0IGVzIHNpY2hlcmxpY2ggYXVjaCBkYXMgZ2FuemUgaW4gZGVyIFNjaHdlaXogenUKb3JnYW5pc2llcmVuLgoKQXN1a2EsIGdlaHQgc2Nob25tYWwgaW4gRGVja3VuZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEt1ZXJiaXNjaHV0bmV5IChHbG9pbnNvbiwgIDQuIEFwciAyMDA0LCAyMDo1NToyMCk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwODExMDQ2NDggcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMDgxMTA0NjQ4ClRhdHNhZWNobGljaCwgaWNoIGhhYmUgYXVjaCBrZWluZW4gS3VlcmJpcyBpbSBLdWVobHNjaHJhbmsgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWxsZXMgd2llZGVyIGRhPyAoTGlhcmEsICA1LiBBcHIgMjAwNCwgMTM6MDE6MjcpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwODExMDk3Mjggcmc9cGFydHkKfiMhIHRpZD0xMDgxMTA5NzI4CkFlaG0sIENhdHR5PyBEdSBoYXN0IHdhcyB2ZXJnZXNzZW4uIDo+CgpMaWFyYSAuIG8gTyAoV28gc3RlaHQgZGFzIG1pdCBkZXIgbGV0enRlbiBQYXJ0eSAuLi4gPykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBBbGxlcyB3aWVkZXIgZGE/IChDYXR3ZWF6bGUsICA1LiBBcHIgMjAwNCwgMTM6NDU6MTkpOgp+IyEgcm49TW9udGFudXMgcnQ9MTA4MTE2NTQ4NSByZz1wYXJ0eQp+IyEgdGlkPTEwODExMDk3MjgKSWhyIHNlaWQgamEgYXVjaCB2b2xsIGluIGRlciBmYWxzY2hlbiBSdWJyaWsuClVuZCBlaWdlbnRsaWNoIHNvZ2FyIGltIGZhbHNjaGVuIFRocmVhZC4uLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogQWxsZXMgd2llZGVyIGRhPyAoTW9udGFudXMsICA1LiBBcHIgMjAwNCwgMTM6NDY6MTcpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwODExNjU1MTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgxMTA5NzI4CmljaCBrYW5uIGphIGdyYWQgbmljaHQgaW4gbWVnYSB3ZWl0ZXJzY2hyZWliZW4sIHdlaWwgQ3JvZnQgbWljaCBuaWNodCB2b20KU2VsYnN0LVJlaC1QbGFpIGVybG9lc2VuIHdpbGwsIGluZGVtIGVyIG1pY2ggd2llZGVyIGZyZWlzY2hhbHRldC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbXMgdW5kIG11ZHMgKE1vcmdvdGgsICA1LiBBcHIgMjAwNCwgMTY6NTM6MzYpOgp+IyEgcm49SG9ibyBydD0xMDgxMTc2NzI0IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTA4MDgxODQ3MwpOYSBpbW1lcmhpbi4uLmZhbGxzIGRlciBuZXVlIFJlY2huZXIgbWFsIG9ubGluZSBnZWh0LCBrb2VubmVuIHdpciBpaG0gZGFubgp6dWp1YmVsbiA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2FybnVuZyB2b3IgZGVtIFZpcnVzIC4uLiAoR2xvaW5zb24sICA1LiBBcHIgMjAwNCwgMjA6MTE6MjkpOgp+IyEgcm49Q3JvZnQgcnQ9MTA4MTE4NDIxMCByZz13d3cKfiMhIHRpZD0xMDgxMTgzNDM1Ck1pdCBkZW0gTWlzdGRpbmcgd3VyZGUgaWNoIGdhbnplIHZpZXJ6aWcgbWFsIGJlZWhydC4gV2VubiBtYW4gbWFsIGF1ZiBlaW5lClBhcnR5IGZhZWhydCAuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW16dWcgTUcgKE11YWRpYiwgIDYuIEFwciAyMDA0LCAxMTowNTozOSk6Cn4jISBybj1IYXRlIHJ0PTEwODEyNDE1NTkgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwODEyNDE1NTkKdWkgZGEgc2llaHQgbWFuIGRpZSBsYW5nZSBlcmZhaHJ1bmcgYWxzIGVtLiBkaWUgc3BpZWxlciBhbHMgc3BpZWxlIHp1CmJlemVpY2huZW4gZGFyYXVmIHdhZXIgaWNoIGVjaHQgbm9jaCBuaWNodCBnZWtvbW1lbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBVbXp1ZyBNRyAoTXVwZmVsLCAgNi4gQXByIDIwMDQsIDExOjA2OjUzKToKfiMhIHJuPU11YWRpYiBydD0xMDgxMjQyMzM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MTI0MTU1OQpTbyBzcGFydCBlciBzaWNoIGRhcyAtSW5uZW4gOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBVbXp1ZyBNRyAoTWFoYXJldCwgIDYuIEFwciAyMDA0LCAxMTowNzoxNyk6Cn4jISBybj1NdXBmZWwgcnQ9MTA4MTI0MjQxMyByZz1zY2htYXJybgp+IyEgdGlkPTEwODEyNDE1NTkKV29mdWVyIGVpbiAtSW5uZW4/IEVzIGdpYnQgZG9jaCBnYXIga2VpbmUgRnJhdWVuIGltIE11ZCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFVtenVnIE1HIChNZXNpcmlpLCAgNi4gQXByIDIwMDQsIDExOjE3OjA2KToKfiMhIHJuPU1haGFyZXQgcnQ9MTA4MTI0MjQzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwODEyNDE1NTkKU3RpbW10IGRhcyBzdGVodCBhdWYgbWVpbmVyIFRhc3NlLgpNZXNpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptYWNoZW4gKFpvb2ssICA2LiBBcHIgMjAwNCwgMTg6MTI6MDYpOgpOdXIgd2VpbCBNZWdhc2NobWFycm4gdm9sbCBpc3QsIGhpZXIgZWluIGtsZWluZXIgQXVzenVnIGF1cyBlaW5lbSBWb3J3b3J0CmVpbmVyIERpc3NlcnRhdGlvbiwgZGllIGljaCBiZXNwcmVjaGVuIHNvbGw6CgoiVW5kIHp1IGd1dGVyIExldHp0IGRhbmtlIGljaCBYLCBZIHVuZCBaLCBkdXJjaCBkaWUgYWxsZXMgZXJzdCBTaW5uIG1hY2h0LiIKCkp1Y2h1dXV1dSEgOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogbWFjaGVuIChNdXBmZWwsICA2LiBBcHIgMjAwNCwgMjA6Mzk6NDApOgp+IyEgcm49Wm9vayBydD0xMDgxMjY3OTI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MTI2NzkyNgoiWiIgc3RlaHQgaGllcmJlaSBmdWVyIERpY2g/IDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBtYWNoZW4gKFpvb2ssICA2LiBBcHIgMjAwNCwgMjE6MTE6NDgpOgp+IyEgcm49TXVwZmVsIHJ0PTEwODEyNzY3ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgxMjY3OTI2CldvaGwga2F1bSwgd2VubiBpY2ggbmUgUmV6ZW5zaW9uIHNjaHJlaWJlbiBzb2xsIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXhpbGFudGVuIChNaXJpbCwgIDcuIEFwciAyMDA0LCAyMTo1MzowNik6CltNb2VyZGVyOkdlaXN0IGVpbmVzIEdvbGR6d2VyZ3NdIE1pciByZWljaHRzLCBNb3Jnb3RoISBJY2ggd2FuZGVyZSBpbnMKW01vZXJkZXI6R2Vpc3QgZWluZXMgR29sZHp3ZXJnc10gTW9yZ2VuR3JhdWVuIGF1cyEKCk1pcmlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpKYWphLi4uIChIdW1uaSwgIDguIEFwciAyMDA0LCAxMjoyNTo0MCk6CltURjpDcm9mdF0gb2RlciBpbnRlcmVzc2llcnQgZGljaCBkaWUgZWJlbmUgS2FybHNydWhlUmVoZVJlaGVLYXJsc3J1aGU/CltURjpCYW1iaV0gZGllIGdpYnRzPz8/Cls8TWFzdGVSPjpDcm9mdCBsYWVzc3QgZGllIEViZW5lICdLYXJsc3J1aGVSZWhlUmVoZUthcmxzcnVoZScgZW50c3RlaGVuLl0KW1RGOkNyb2Z0XSBqYQoKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpObyBjb21tZW50IDopIChNb3Jnb3RoLCAgOC4gQXByIDIwMDQsIDE5OjAyOjMwKToKW0ZyZXVuZGU6QW55c2lkb3JhXSBhY2ggbWVubm8sIGRhIGthbm4gaWNoIHdpZWRlciBuaWNodApbRnJldW5kZTpBbnlzaWRvcmFdIG1pdHJlZGVuIDspCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEV4aWxhbnRlbiAoTGlhcmEsIDEwLiBBcHIgMjAwNCwgMTY6MjA6MjMpOgp+IyEgcm49TWlyaWwgcnQ9MTA4MTM2NzU4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODEzNjc1ODYKR29sZHp3ZXJnIC4uLiA/IT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCiAuLi4gKFJvbGFuZCwgMTAuIEFwciAyMDA0LCAyMzozMToyMSk6Ck11aCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhZW1vbmVuYW5ncmlmZiAoQXN1a2EsIDExLiBBcHIgMjAwNCwgMTU6MzM6NDIpOgpEZXIgZWluc3RtYWxzIHN0b2x6ZSBBbHRhciBsaWVndCB1bWdlc3R1ZXJ6dCBhdWYgZWluZXIgU2VpdGUgdW5kIGlzdCB1ZWJlcgp1bmQgdWViZXIgbWl0IGdldHJvY2tuZXRlbSBCbHV0IGJlc3VkZWx0LiBEYXZvciBsaWVnZW4gZGllIEJydWNoc3R1ZWNrZQplaW5lciBlaW5zdG1hbHMgd3VuZGVyc2Nob2VuZW4gT2JzaWRpYW5zdGF0dWUsIHVuZCBpbiBlaW5lciBFY2tlIHZlcnplaHJ0IGVpbgprbmlzdGVybmRlcyBGZXVlciBkYXMgenUgZWluZW0gSGF1ZmVuIGF1Zmdlc2NoaWNodGV0ZSBJbnZlbnRhciBkZXMgU2NocmVpbnMuCkt1cnogZGFuZWJlbiBsZXVjaHRldCBlaW4ga2xlaW5lciBtYWdpc2NoZXIgS3JlaXMgYXVmIGRlbSBCb2Rlbi4KRGllIGFic29sdXRlIFN0aWxsZSBoaWVyIGluIGRpZXNlbSBSYXVtIHVudGVyc3RyZWljaHQgbm9jaCBkaWVzZXMgR2VmdWVobAp2b24gZXR3YXMgdW5pcmRpc2NoIEJPRVNFTSwgd2FzIHNpY2ggaGllciBuaWVkZXJnZWxhc3NlbiBoYXQuCkFuZ2VzaWNodHMgZGllc2VyIGJsaW5kZW4gWmVyc3RvZXJ1bmdzd3V0IHVlYmVya29tbXQgRGljaCB0aWVmZSBUcmF1ZXIuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBub3Jkd2VzdGVuLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgpFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLiAgICAgICAgICBFaW4gYnJ1ZWxsZW5kZXIgSmFlZ2VyZGFlbW9uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYWVtb25lbmFuZ3JpZmYgKFBhZHJlaWMsIDExLiBBcHIgMjAwNCwgMTg6NDE6NTYpOgp+IyEgcm49QXN1a2EgcnQ9MTA4MTY5MDQyMiByZz1zY2htYXJybgp+IyEgdGlkPTEwODE2OTA0MjIKW1RvZDpMYXJzXSBFaW4gSmFlZ2VyIGhhdCBnZXJhZGUgQXN1a2EgdW1nZWJyYWNodC4gPDE1OjA3OjMwPgpbVG9kOmVpbiBKYWVnZXJdIEF1ZnRyYWcgYXVzZ2VmdWVocnQsIE1laXN0ZXIuICA8MTU6MDc6MzA+CltUb2Q6TGFyc10gRWluIEphZWdlciBoYXQgZ2VyYWRlIEFzdWthIHVtZ2VicmFjaHQuIDwxNToxODoxMD4KW1RvZDplaW4gSmFlZ2VyXSBBdWZ0cmFnIGF1c2dlZnVlaHJ0LCBNZWlzdGVyLiAgPDE1OjE4OjEwPgpbVG9kOkxhcnNdIEVpbiBKYWVnZXIgaGF0IGdlcmFkZSBFbGJlcmV0aCB1bWdlYnJhY2h0LiA8MTU6Mzc6NTA+CltUb2Q6ZWluIEphZWdlcl0gQXVmdHJhZyBhdXNnZWZ1ZWhydCwgTWVpc3Rlci4gIDwxNTozNzo1MD4KCndlciBzaWNoIGluIEdlZmFociBiZWdpYnQuLi4uCgpQYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERhZW1vbmVuYW5ncmlmZiAoRGFya2xvciwgMTEuIEFwciAyMDA0LCAxODo0Nzo0Nik6Cn4jISBybj1QYWRyZWljIHJ0PTEwODE3MDE3MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgxNjkwNDIyCldhcnMgZGFzIGdhbnplIFRlYW0/IC0gRGEgaGFiZW4gc2Ugc2ljaCB3b2hsIHVlYmVybm9tbWVuLi4uCgpEYXJrbG9yIChGcm9oZSBPc3Rlcm4gd3VlbnNjaGVuZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERhZW1vbmVuYW5ncmlmZiAoRWxiZXJldCwgMTEuIEFwciAyMDA0LCAxODo0ODo0Mik6Cn4jISBybj1EYXJrbG9yIHJ0PTEwODE3MDIwNjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgxNjkwNDIyCkFzdWthIHdhciBtaXQgQXN1a2EgenVzYW1tZW4gaW0gVGVhbT8gOykKCldpciB3YXJlbiBkYW5uIGF1Y2ggYmVpZGUgZGFiZWkgKmcqCgpFbGJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEYWVtb25lbmFuZ3JpZmYgKERhcmtsb3IsIDExLiBBcHIgMjAwNCwgMTg6NTM6NTMpOgp+IyEgcm49RWxiZXJldCBydD0xMDgxNzAyMTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MTY5MDQyMgpIbW0gZG9jaCBrZWluIDJlciAxZXIgVGVhbT8gOykgLSBXaWUgdmllbGUgaGFiZW5zIHVlYmVybGVidD8KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERhZW1vbmVuYW5ncmlmZiAoRWxiZXJldCwgMTEuIEFwciAyMDA0LCAxODo1NDoyOSk6Cn4jISBybj1EYXJrbG9yIHJ0PTEwODE3MDI0MzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgxNjkwNDIyCndpciBuaWNodCA7KQoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRGFlbW9uZW5hbmdyaWZmIChBcnNhaSwgMTEuIEFwciAyMDA0LCAxODo1Nzo0Nyk6Cn4jISBybj1FbGJlcmV0IHJ0PTEwODE3MDI0Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgxNjkwNDIyCklociB2aWVyIG9kZXIgbnVyIGlocj8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBZW5nc3RsaWNoZSwgc2Nod2FyemUgRHJhY2hlbj8gKE1pcmlsLCAxMi4gQXByIDIwMDQsIDAyOjEzOjAwKToKQXJhdGhvcm4gZGV1dGV0IGF1ZiBIdW1uaS4KQXJhdGhvcm4gc2FndDogRXIgaXMgc2NodWxkIDopClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBIdW1uaS4KRXJ3YXJ0ZXQgKG9mZmxpbmUpOiBIdW1uaQoKTWlyaWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11YWQoZClpYiAoTWVzaXJpaSwgMTIuIEFwciAyMDA0LCAyMzoyMjo0MCk6CltGcmV1bmRlOk11YWRpYl0gc28gaWNoIGh1ZXBmIG1hbCBpbnMgYmV0dGNoZW4KRXJ3YXJ0ZXQgIChvbmxpbmUpOiBNdWFkZGliCltGcmV1bmRlOk11YWRkaWIga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLl0KW0ZyZXVuZGU6TXVhZGliIHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1Ll0KRXJ3YXJ0ZXQgKG9mZmxpbmUpOiBNdWFkaWIKCk1lc2ksIGRvcHBlbHQgc2VoZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgdWx0aW1hdGl2ZSBBbnRpLVdhbmRsZXItV2FmZmUgKE1lc2lyaWksIDE0LiBBcHIgMjAwNCwgMTA6MDM6NDEpOgpFaW4gd2FiZXJuZGVzIEdlYmlsZGUgZXJzY2hlaW50IHVycGxvZXR6bGljaCB2b3IgRGlyLgpNYWhhcmV0IG5pbW10IHNpY2ggZWluZSBCb2huZSBhdXMgZGVyIG1hZ2lzY2hlbiBCb25ib250dWV0ZS4KTWFoYXJldCBnaWJ0IGRpZSBncmF1ZSBCb2huZSBhbiBlaW5lbiBXYW5kbGVyLgpNZXNpcmlpIGZyZXV0IHNpY2ggYXVmIGVpbiBsYWVuZ2VyZXMgWnVzYW1tZW5zZWluIG1pdCBEaXIuCk1haGFyZXQgbGFlY2hlbHQgRGljaCBhbi4KTWFoYXJldCBuaWNrdCB6dXN0aW1tZW5kLgpMUDogMjI2ICgwKSBNUDogMTUyICgtNTApCkRlciBXYW5kbGVyIGlzc3QgZGllIEJvaG5lIHVuZCAuLi4gZXhwbG9kaWVydC4KRGVyIFdhbmRsZXIgdmVyc2Nod2luZGV0IHVycGxvZXR6bGljaC4KRHUgcm90ZmxzdC4KTWFoYXJldCBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdpbmRvd3MgU3VjaGZ1bmt0aW9uIChDcm9mdCwgMTQuIEFwciAyMDA0LCAxMjoyNzo1NCk6Cn4jISBybj1ab29rIHJ0PTEwODE5MzgzNjYgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTA4MDM4ODg1MQpTeXN0ZW1hdGlzY2hlIFNjaG1lcnp2ZXJ1cnNhY2h1bmc/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiA5NmtCIGdyb3NzZXIgRUdPLVNob290ZXIgKFZhbmlvbiwgMTQuIEFwciAyMDA0LCAxNzozNzo1Nik6Cn4jISBvbj1WYW5pb24gb3Q9MTA4MTk1NzA2NCBvZz13d3cKfiMhIHJuPUdub21lIHJ0PTEwODE5NTQ1NDAgcmc9d3d3Cn4jISB0aWQ9MTA4MTk1NDI0MgpEdSBtdXN0IGRpZSAyLjRHQiBncm9zc2UgRGlyZWN0R2FtZSBpbnN0YWxsaWVyZW4sIGRhbm4gdHV0cy4gTnVyIGhhZXNzbGljaGUKR2VydWVjaHRlLCBkYXNzIHNpY2ggaW4gOTZrIG51ciBkZXIgTG9hZGVyIGJlZmluZGV0IDopCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQW5mcmFnZSBmdWVyIGVpbmVuIE11ZC1GcmFnZWJvZ2VuIChSb25kYSwgMTQuIEFwciAyMDA0LCAyMjo0Mjo0Nik6Cn4jISBybj1ab29rIHJ0PTEwODE5MzgzMjIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDgxNjkxNjg2ClVuZCB1bSBpbiBCZXJsaW4genUgYmxlaWJlbjogRGFzIFNlZWJsaWNrIHNjaGF1dCBhdWYgYWxsZXMgbW9lZ2xpY2hlLCBhYmVyCm5pY2h0IGF1ZiBuZW4gU2VlLi4uCgpSb25kYSAqd2FyIG1hbCBkYSwgd28gZGFzIGFsdGUgU2VlYmxpY2sgd2FyLi4uIGxhbmcsIGxhbmcgaXN0cyBoZXIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCcmV0dHNwaWVsZSBPbmxpbmUhIChHcmltbWJvcm4sIDE1LiBBcHIgMjAwNCwgMTA6MTI6MjApOgp+IyEgcm49QW55c2lkb3JhIHJ0PTEwODIwMTY2MDYgcmc9d3d3Cn4jISB0aWQ9MTA4MTk0MzY4NApHdXRlIElkZWUsIGljaCBzb2xsdGUgYXVjaCBtYWwgd2llZGVyIHp1bSBDTEcgZ2VoZW4uIFNvbnN0IGtyaWVnZSBpY2ggUHJvYmxlbWUKbWl0IGRlbSBMU1AuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHNob3AgKEdyaW1tYm9ybiwgMTUuIEFwciAyMDA0LCAxMTo1MjoxMCk6Cn4jISBybj1ab29rIHJ0PTEwODIwMjI2NTUgcmc9d3d3Cn4jISB0aWQ9MTA4MjAxNTQ3NwpJY2ggZ2xhdWJlLCBlciB3aWxsIHNlaW5lIEVpZXIgYXVzcHJvYmllcmVuIG9kZXIgc28gYWVobmxpY2guCgpHZEEgcmFldHNlbHQgYXVjaC4gTmljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2VoZXJoYWV1c2VyIChWYW5pb24sIDE1LiBBcHIgMjAwNCwgMTk6MDI6MTUpOgp+IyEgb249VmFuaW9uIG90PTEwODIwNDg1MTkgb2c9c2VoZXIuZW50d2lja2x1bmcKfiMhIHJuPVpvb2sgcnQ9MTA4MjAyMjE3NSByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTEwODIwMjIxNzUKR2VtZWluZXIgVmVycmFldGVyIQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2VoZXJoYWV1c2VyIChDcm9mdCwgMTUuIEFwciAyMDA0LCAxOTowMzo1OSk6Cn4jISBybj1WYW5pb24gcnQ9MTA4MjA0ODUzNSByZz1zY2htYXJybgp+IyEgdGlkPTEwODIwMjIxNzUKSG0uICBXaWVzbyBiaXN0IGR1IGVpZ2VudGxpY2ggbmljaHQgUk0gU2VoZXIsIHdlbm4gZHUgc2Nob24gZGllIEFyYmVpdAptYWNoZW4gbXVzc3Q/ICwtKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNlaGVyaGFldXNlciAoVmFuaW9uLCAxNS4gQXByIDIwMDQsIDE5OjE2OjI3KToKfiMhIHJuPUNyb2Z0IHJ0PTEwODIwNDg2Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgyMDIyMTc1Clpvb2sgaGF0IGdlc2FndCwgaWNoIHNlaSBmdWVyIFNlaGVyaGFldXNlciB2ZXJhbnR3b3J0bGljaC4gVm9uIGFyYmVpdCBtYWNoZW4KaXMgZGEgbml4IGJlaWdld2VzZW4gOikKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTZWhlcmhhZXVzZXIgKENyb2Z0LCAxNS4gQXByIDIwMDQsIDE5OjE4OjIwKToKfiMhIHJuPVZhbmlvbiBydD0xMDgyMDQ5Mzg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MjAyMjE3NQpBaC4gIERhbm4gYmlzdCBkdSBhbHNvIG51ciBTY2h1bGQuIAoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFNlaGVyaGFldXNlciAoVmFuaW9uLCAxNS4gQXByIDIwMDQsIDE5OjIwOjU0KToKfiMhIHJuPUNyb2Z0IHJ0PTEwODIwNDk1MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgyMDIyMTc1Ck5laW4sIGljaCBiaW4gZGVyIGplbmlnZSBkZW4gbWFuIGFuYmV0dGVsbiwgYW5zY2htYWNodGVuLCBhbmxhZWNoZWxuIHVuZAphbmJldGVuIGthbm4sIHdlbm4gbWFuIHdhcyBhbiBkZW4gU2VoZXJoYWV1c2VybiBoYWJlbiB3aWxsLgoKT2IncyB3aXJrdD8gV2VyIHdlaXNzID8hCgpadW1pbmRlc3QgbG9obnQgZXMgbmljaHQsIG1pY2ggYXVzenVzY2hpbXBmZW4sIGF1c3p1bGFjaGVuLCBhdXN6dXphZWhsZW4gb2RlcgphdXNuZWhtZW5kIHVuaG9lZmxpY2ggenUgc2Vpbi4gSWNoIGJpbiBuYWVtbGljaCBzdHVtcGYuCgpWKiwgZXJpbm5lcnQgc2ljaCBsYWVjaGVsbmQgYW4gZGllIDQgQSdzIGRlciBBbXRzZnVlaHJ1bmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTZWhlcmhhZXVzZXIgKFZhbmlvbiwgMTUuIEFwciAyMDA0LCAxOToyNDoyMik6Cn4jISBybj1WYW5pb24gcnQ9MTA4MjA0OTY1NCByZz1zY2htYXJybgp+IyEgdGlkPTEwODIwMjIxNzUKQml0dGUgZnJhZ3QgZWluZW4gQmFsYW5jZXIsIHdlbm4gaWhyIHdpc3NlbiB3b2xsdCwgd2VsY2hlIEEncyBkYXMgc2luZC4gRGllCnNpbmQgaW1tZXIgbGllYiwgbmV0dCB1bmQgc2ljaGVyIGF1Y2ggYXVza3VuZnRzZnJldWRpZy4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTZWhlcmhhZXVzZXIgKERhcmt3aW5nLCAxNS4gQXByIDIwMDQsIDE5OjM2OjA2KToKfiMhIHJuPVZhbmlvbiBydD0xMDgyMDQ5ODYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MjAyMjE3NQpiaXR0ZSA/IERhcyBtdXNzIE5vbm5lIGVpbmdlZnVlaHJ0IGhhYmVuIDopCgpEYXJrd2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZS4gKExpYXJhLCAxNS4gQXByIDIwMDQsIDIwOjMxOjQzKToKRGVpbiBGcmV1bmQgWm9vayB0ZWlsdCBEaXIgbWl0OiBJcmdlbmR3aWUgc2Nyb2xsdHMgaW0gTW9tZW50LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhoaGphIChNb3Jnb3RoLCAxNS4gQXByIDIwMDQsIDIyOjMzOjQ5KToKW0ZyZXVuZGU6QXJhdGhvcm5dIGVzIGdpYnQgX3NvXyB2aWVsZSBNb2VnbGljaGtlaXRlbiB6dQpbRnJldW5kZTpBcmF0aG9ybl0gemFwcGVuLi4uIDopCltUb2Q6TGFyc10gRWluIEthbmluY2hlbiBoYXQgZ2VyYWRlIEFzdWthIHVtZ2VicmFjaHQuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ29tZSB0byBkaWUoKSA/IChNb3Jnb3RoLCAxNi4gQXByIDIwMDQsIDAwOjI5OjU5KToKWmFya3UgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKW0ZyZXVuZGU6WmFya3UgbXVodCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uXQpbRnJldW5kZTpaYXJrdSBtdWh0IERpY2ggYXVzIGRlciBGZXJuZSBhbi5dCltGcmV1bmRlOlphcmt1IGtudWRkZWx0IERpY2ggYXVzIGRlciBGZXJuZS5dCkVWRU5ULUNJVFkgOiBaYXJrdSBoYXQgZGllIFN0YWR0IGJldHJldGVuLgpbVG9kOkxhcnNdIFBvIGhhdCBnZXJhZGUgWmFya3UgdW1nZWJyYWNodC4KW1RvZDpQb10gV2lua2Ugd2lua2UsIFphcmt1CgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDb21lIHRvIGRpZSgpID8gKEdsb2luc29uLCAxNi4gQXByIDIwMDQsIDAwOjM4OjM3KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA4MjA2ODE5OSByZz1zY2htYXJybgp+IyEgdGlkPTEwODIwNjgxOTkKTmEsIG1hbCB3aWVkZXIgZWluZW4gYWx0ZW4gU2FjayBlcndpc2NodCBtaXQgZGVpbmVyIGZpZXNlbiBGYWxsZT8gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IENvbWUgdG8gZGllKCkgPyAoTW9yZ290aCwgMTYuIEFwciAyMDA0LCAwMDo0MDo1MSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDgyMDY4NzE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MjA2ODE5OQpGYWxsZT8gQWx0ZXIgU2Fjaz8gSHVtPwoKQWxzbyBaYXJrdWggc3RlbGwgaWNoIGZhc3QgbWl0IGRlbSBQaXRtdWggYXVmIGVpbmUgU3R1ZmUuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQ29tZSB0byBkaWUoKSA/IChEYXJrd2luZywgMTYuIEFwciAyMDA0LCAwMToyMzoyNyk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwODIwNjg4NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgyMDY4MTk5CmlzdCBkYXMgZ3V0ID8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBBbmZyYWdlIGZ1ZXIgZWluZW4gTXVkLUZyYWdlYm9nZW4gKEdyaW1tYm9ybiwgMTYuIEFwciAyMDA0LCAxMTo0MDowOSk6Cn4jISBybj1ab29rIHJ0PTEwODIxMDgyMjkgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDgxNjkxNjg2Ck9jaCwgaWNoIGRlbmtlLCBkYXNzIGF1Y2ggaW4gZGVyIERQTyBkZXIgU296aWFsd2lzc2Vuc2NoYWZ0ZW4KYWxsZ2VtZWluZ3VlbHRpZ2UgQXVzc2FnZW4gZW50aGFsdGVuIHNpbmQuIFNvIHdpZSAib2huZSBEaXBsb21hcmJlaXQga2VpbgpEaXBsb20iIHVuZCBzby4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEFuZnJhZ2UgZnVlciBlaW5lbiBNdWQtRnJhZ2Vib2dlbiAoQWxrb2hvbCwgMTYuIEFwciAyMDA0LCAxMTo0NDo1Myk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA4MjEwODQwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwODE2OTE2ODYKZGFua2UgZnVlciBkaWVzZW4gc2VociBzaW5udm9sbGVuIEJlaXRyYWcKCkFsawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhqYS4uLiAoTWVkaWMsIDE2LiBBcHIgMjAwNCwgMTY6MjY6MDMpOgpFcHBpIHNhZ3Q6IHRtIHJpa3VzIG9kZXIgYm9pbmcgPyA6KQpFcndhcnRldCAob2ZmbGluZSk6IEJvaW5nCkFzdWthIHNhZ3Q6IG5pbW0gcmlrdXMKRXBwaSBzYWd0OiBvayAuIHNvd2VpdCB6dSBib2luZyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChQaXRmYWxsLCAxNi4gQXByIDIwMDQsIDE5OjE3OjE1KToKW1RlYW0gTW9zdGx5IENoYW9zOkh1cmF4cHJheF0ga2FtcGZ6d2VyZyByZXNldApbVGVhbSBNb3N0bHkgQ2hhb3M6VG9kXSBLUklNQVJJT0wgSEFUIERBUyBURUFNIFZFUkxBU1NFTi4KW1RlYW0gTW9zdGx5IENoYW9zOl0gWmFya3UgaGF0IGRpZSBUZWFtbGVpdHVuZyB1ZWJlcm5vbW1lbi4KW1RvZDpMYXJzXSBFaW4gbGlzdGlnZXIgS2FtcGZ6d2VyZyBoYXQgZ2VyYWRlIEtyaW1hcmlvbCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBsaXN0aWdlciBLYW1wZnp3ZXJnXSBNYW5uLCB3YXJzdCBEdSBlaW4gV2FzY2hsYXBwZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGYXVsZXMgSWRsZXBhY2sgKE1vcmdvdGgsIDE4LiBBcHIgMjAwNCwgMDQ6NTk6MjEpOgoKICAgICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gU29uLCAxOC4gQXByIDIwMDQsIDA0OjU4OjM3ICgzMiBUZWlsbmVobWVyKQoKQm9vYmwuLi4uLi4uLi4uLi5zIE9ic2VydmVyLi4uLi4uLkoucyBaYXJuaXlhLi4uLi4uLi5KLnMgSWRsZWQuLi4uLi4uLi4uSi56ClRlbm5vLi4uLi4uLi4uLi4ucyBCcmVpdGF4dC4uLi4uLi5KLnMgRXJva2VzZS4uLi4uLi4uSi5UIEhydW1uLi4uLi4uLi4uLi4uUwpLYW5rcmEuLi4uLi4uLi4uLlogRWxyaW0uLi4uLi4uLi4uSi5TIFJheWVrLi4uLi4uLi4uLkouWiBCb2VzZS4uLi4uLi4uLi5KLlMKTml2ZWEuLi4uLi4uLi4uaXdTIEt0YXIuLi4uLi4uLi4uLmkuWiBOZWxseS4uLi4uLi4uLi5KLlMgR2FiaS4uLi4uLi4uLi4uSi5TClNhdWVya3JhdXQuLi4uLkouWiBBbWJyb3NpdXMuLi4uLi5KLlMgU2VldGV1ZmVsLi4uLi4uai5TIEdydW1wZi4uLi4uLi4uLkouUwpLZW5ueS4uLi4uLi4uLi4uLlMgUmFtbXN0ZWluLi4uLi4uLi5TIE1lc2lyaWkuLi4uLi4uLkouWiBGZWxpeC4uLi4uLi4uLi4uLlMKUmF2ZW50aHJvbmUuLi4uSi5TIExhY3JpLi4uLi4uLi4uLkouUyBUeWxhay4uLi4uLi4uLi5KLlMgSGlzYXN1bC4uLi4uLi4uLi5TCkdyaW1tYm9ybi4uLi4uLkp3bSBHYW5kby4uLi4uLi4uLi5KLk0gTW9yZ290aC4uLi4uLi4uLi5SIEFtYXJ5bGxpcy4uLi4uLkouUgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZhdWxlcyBJZGxlcGFjayAoVmFuaW9uLCAxOC4gQXByIDIwMDQsIDA5OjQ3OjQ4KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA4MjI1NzE2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwODIyNTcxNjEKTW9nZ2wsCiAwNDo1OToyMSEgR2xhdWIgbWlyLCBpY2ggd2FlciBuaWNoIGdsdWVja2xpY2ggZGFydWVtZXIgdW0gZGllc2UgWmVpdCBuaWNodAppZGxlbiB6dSBtdWVzc2VuLiBJY2ggaGF0dGUgZGEgdmVybXV0bGljaCBlaW5lbiBzZWhyIG5ldHRlbiBUcmF1bSA6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRmF1bGVzIElkbGVwYWNrIChBcmssIDE4LiBBcHIgMjAwNCwgMTA6MjM6NDcpOgp+IyEgcm49VmFuaW9uIHJ0PTEwODIyNzQ0Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDgyMjU3MTYxCklociB1bmQgZGFzIERhdWVyZWluZ2Vsb2dndCBzZWluIDotKSBHaWJ0cyB3YXMgZnVlciBkYXMgaG9lY2hzdGUgQWx0ZXI/IEVpbmVuCktub2NoZW5sb2xsaT8gU2NobGFmdCBnZWZhZWxsaWdzdCBlaW4gOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRmF1bGVzIElkbGVwYWNrIChWYW5pb24sIDE4LiBBcHIgMjAwNCwgMTE6MzM6NDcpOgp+IyEgcm49QXJrIHJ0PTEwODIyNzY2Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgyMjU3MTYxCkhleSwgaWNoIGJlemFobCBkZXIgVGVsZWtvbSBlaW5lbiB1bmdsYXVibGljaGVuIEhhdWZlbiBHZWxkLiBEYXMgbXVzcyBzaWNoCmRvY2ggaXJnZW5kd2llIGF1c2dsZWljaGVuLiBJY2ggYmluIGRhIHNjaGxpZXNzbGljaCBrZWluIEFrdGlvbmFlciwgc28gZGFzcwppY2ggdm9uIG1laW5lbiBHZWJ1ZWhyZW4gc29uc3Qgbml4IHNlaGUgOikKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBGYXVsZXMgSWRsZXBhY2sgKERhcmtsb3IsIDE4LiBBcHIgMjAwNCwgMTQ6NTQ6MDMpOgp+IyEgcm49VmFuaW9uIHJ0PTEwODIyODA4Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgyMjU3MTYxCkZ1ZXIgZGllc2UgWmVpdCB3YXJuIGRvY2ggbm9jaCBlaW5pZ2UgYWt0aXYuLi4KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnVtZnJhZ2UgKE11YWRpYiwgMTguIEFwciAyMDA0LCAxNToxNTowMik6CmhpLAoKaGllciBlaW5lIGtsZWluZSB1bWZyYWdlOiAKd2VyIGlzdCBlaW4gbWltb2VzY2hlbiB2b24gZGVuIGltIG11ZCBiZWZpbmRsaWNoZW4gc3BpZWxlcm4gdW5kIG1hZ2llcm4/CmFudHdvcnRlbiBiaXR0ZSBudXIgaGllciB1bmQgbmljaHQgcGVyIG1haWwhCgpncnVzcwoKbXVhZGliCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdW1mcmFnZSAoWm9vaywgMTguIEFwciAyMDA0LCAxNToxNzoyMik6Cn4jISBybj1NdWFkaWIgcnQ9MTA4MjI5NDEwMiByZz1zY2htYXJybgp+IyEgdGlkPTEwODIyOTQxMDIKWm9vayBrcmF0enQgc2ljaCBhbSBLb3BmIHVuZCB3dW5kZXJ0IHNpY2ggdWViZXIgZGllIFVtZnJhZ2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHVtZnJhZ2UgKE11YWRpYiwgMTguIEFwciAyMDA0LCAxNToyMTo0MCk6Cn4jISBybj1ab29rIHJ0PTEwODIyOTQyNDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgyMjk0MTAyCnR1IG5pY2ggc28gdW5zY2h1bGRpZyAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHVtZnJhZ2UgKERhcmtsb3IsIDE4LiBBcHIgMjAwNCwgMTU6NDI6NTQpOgp+IyEgcm49TXVhZGliIHJ0PTEwODIyOTQ1MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgyMjk0MTAyCk11YWRpYiB2ZXJ6YXBmdCB3YWhyc2NoZWlubGljaCBnZXJhZCBpcmdlbmR3ZWxjaGUgR2VtZWluaGVpdGVuLi4uCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB1bWZyYWdlIChab29rLCAxOC4gQXByIDIwMDQsIDE1OjQ4OjE2KToKfiMhIHJuPURhcmtsb3IgcnQ9MTA4MjI5NTc3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwODIyOTQxMDIKV2VubiBkZW0gc28gaXN0LCBHZWxlZ2VuaGVpdCBmdWVyIERpY2gsIERpY2ggYWxzIE1pbW9zZSB6dSBvdXRlbi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB1bWZyYWdlIChDYXR3ZWF6bGUsIDE4LiBBcHIgMjAwNCwgMjE6MTA6MTEpOgp+IyEgcm49Wm9vayBydD0xMDgyMjk2MDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MjI5NDEwMgpHdXQuIApEYXJrbG9yIGlzdCBlaW5lIE1pbW9zZSEKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogdW1mcmFnZSAoRGFya2xvciwgMTguIEFwciAyMDA0LCAyMTozOToyMik6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA4MjMxNTQxMSByZz1zY2htYXJybgp+IyEgdGlkPTEwODIyOTQxMDIKV3VlcmQgZWhlciBhdWYgV2VpY2hlaSB0aXBwZW4gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IExhVGVYL1RlWDogQmluZGVzdHJpY2ggdW5kIEdlZGFua2Vuc3RyaWNoIChDcm9mdCwgMTkuIEFwciAyMDA0LCAxNToxMzozNik6Cn4jISBybj1IdW1uaSBydD0xMDgyMzgwMDcwIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwODIzNzEyNTUKU2ljaGVyIGRhcyBkYXMgbmljaHQgTG90dGVuc1RlWCBoZWlzc2VuIG11ZXNzdGU/ICBXZXIgdmVyd2VuZGV0IHNjaG9uClRlWCBkaXJla3Q/ICwtKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXRy1aaW1tZXIgZnVlciBrb21tZW5kZXMgU2VtZXN0ZXIgKENyb2Z0LCAxOS4gQXByIDIwMDQsIDE4OjIyOjAwKToKfiMhIHJuPUtlbm55IHJ0PTEwODIzOTEyOTQgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMDgyMzkxMjk0CkRpZSB3aWNodGlnc3RlIEluZm9ybWF0aW9uLCBvYiBkaWUgV29obnVuZyBlaW5lIHNpbm52b2xsZSBOZXR6LUFuYmluZHVuZwpoYXQsIGhhc3QgZHUgdW50ZXJzY2hsYWdlbi4gLC0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZXIgd2FyIHdhcz8gKEdsb2luc29uLCAxOS4gQXByIDIwMDQsIDIzOjM0OjQwKToKfiMhIHJuPU1lZGljIHJ0PTEwODI0MTA0NDggcmc9cHVpegp+IyEgdGlkPTEwODI0MTAzNTIKV2lyIHNpbmQgYWxsZSBpbSBTYW5ka2FzdGVuIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IER1bW1hZG1pbiBGcmFnZSAoWm9vaywgMjAuIEFwciAyMDA0LCAxNDo1OToxNyk6Cn4jISBybj1LcmVsbGphIHJ0PTEwODI0NjUwMDUgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTA4MjQ2NTAwNQpXYXMgZGVubiBudW4/IEVpbmVuIG9kZXIgYWNodHVuZG5ldW56aWcgUmVjaG5lcj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBOZXVlIFJhc3NlbiAoTW9yZ290aCwgMjAuIEFwciAyMDA0LCAyMDo1MzoxMCk6Cn4jISBybj1NaXJpbCBydD0xMDgyNDg2NjEwIHJnPW1hZ2llci5lbnR3aWNrbHVuZwp+IyEgdGlkPTEwODIxNDYyNDIKCkltZGEgaXN0IGVpbiBTcGllbGVyPyBJY2ggZGFjaHRlIGRlciB3YWVyIGVpbiBzY2hsZWNodCBwcm9ncmFtbWllcnRlciBOUEMuLi4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBOZXVlIFJhc3NlbiAoTW9udGFudXMsIDIwLiBBcHIgMjAwNCwgMjE6MDc6NTgpOgp+IyEgcm49TW9yZ290aCBydD0xMDgyNDg3MTkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MjE0NjI0MgpEdSBoYXN0IHdpZSBpbW1lciBrZWluZSBBaG51bmcuCkdlaCB3aWVkZXIgTmVnZXJlbGZlbmJpbGlvdGhla2VuIGFiaGFlbmdlbi4gRGllIGJ1Z2dlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkViZW4gYWxzIHNpZ25hdHVyZSBnZWxlc2VuLi4uIChNb3Jnb3RoLCAyMC4gQXByIDIwMDQsIDIyOjM2OjUyKToKSG93IG11Y2ggd29vZCB3b3VsZCBhIHdvb2RjaHVjayBjaHVjayBpZiBhIHdvb2RjaHVjayB3b3VsZCBjaHVjayB3b29kPwpBIHdvb2RjaHVjayB3b3VsZCBjaHVjayBubyB3b29kIGJlY2F1c2UgYSB3b29kY2h1Y2sgY2FudCBjaHVjayB3b29kIQpCdXQgaWYgYSB3b29kY2h1Y2sgY291bGQgY2h1Y2sgd29vZCBhbmQgYSB3b29kY2h1Y2sgd291bGQgY2h1Y2sgd29vZCBob3cgbXVjaAp3b29kIHdvdWxkIGEgd29vZGNodWNrIGNodWNrPwoKTSogbWl0IHZlcmtub3RldGVyIFp1bmdlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWJlbiBhbHMgc2lnbmF0dXJlIGdlbGVzZW4uLi4gKFpvb2ssIDIwLiBBcHIgMjAwNCwgMjI6NDc6MzMpOgp+IyEgcm49TW9yZ290aCBydD0xMDgyNDkzNDEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MjQ5MzQxMgpXZW5uIER1IHVucyBudW4gbm9jaCBiZXJpY2h0ZXN0LCB3aWUgZGFzIExlc2VuIERlaW5lIFp1bmdlIHZlcmtub3RldC4gSWNoIApoYWJlIGRhcyB2b2VsbGlnIG9obmUgTmFjaHdpcmt1bmdlbiBsZXNlbiBrb2VubmVuLCBmYW5kIG1pY2ggbnVyIHZvbiBkZW4KdmllbGVuIE9zIGV0d2FzIGFuZ2VzdG9zc2VuLiBBYmVyIGRhIGljaCBoZXV0ZSBpbiBlaW5lbSBmaW5uaXNjaGVuIEJ1Y2gKZ2VibGFldHRlcnQgaGFiZSwgc2luZCBtaXIgSGFldWZ1bmdlbiB2b24gVm9rYWxlbiBlaWdlbnRsaWNoIG5pY2h0IHNvIGZyZW1kLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWJlbiBhbHMgc2lnbmF0dXJlIGdlbGVzZW4uLi4gKEFyZWVsYW5pciwgMjAuIEFwciAyMDA0LCAyMzo0OTozMCk6Cn4jISBybj1ab29rIHJ0PTEwODI0OTQwNTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgyNDkzNDEyClVuZCB3ZW0gaGFiZW4gd2lyIGRpZXNlbiBadW5nZW5icmVjaGVyIHp1IHZlcmRhbmtlbj8gUmljaHRpZzogR3V5YnJ1c2gKVGhyZWVwd29vZCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEViZW4gYWxzIHNpZ25hdHVyZSBnZWxlc2VuLi4uIChNb3Jnb3RoLCAyMS4gQXByIDIwMDQsIDAyOjA5OjI2KToKfiMhIHJuPUFyZWVsYW5pciBydD0xMDgyNDk3NzcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MjQ5MzQxMgpXZXJzbmRhcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEViZW4gYWxzIHNpZ25hdHVyZSBnZWxlc2VuLi4uIChIdW1uaSwgMjEuIEFwciAyMDA0LCAwNjoxMzo1OSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwODI1MDYxNjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgyNDkzNDEyCkFsc28gZGFzIGlzdCBlaW4gZW5nbGlzY2hlciBadW5nZW5icmVjaGVyLCBkZW4gaWNoIHNjaG9uIC4uICpuYWNoZGVuayogMTk4NgpvZGVyIHNvIGdlaG9lcnQgaGFiZS4gRGEgZ2FicyBub2NoIGtlaW4gTW9ua2V5IElzbGFuZC4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBFYmVuIGFscyBzaWduYXR1cmUgZ2VsZXNlbi4uLiAoR3JpbW1ib3JuLCAyMS4gQXByIDIwMDQsIDA5OjI3OjI5KToKfiMhIHJuPUh1bW5pIHJ0PTEwODI1MjA4Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgyNDkzNDEyClpvb2ssIGljaCBlcmlubmVyZSBhbiBlaW4gWml0YXQgdm9uIFQuIFByYXRjaGV0dDogIi4uLmtvbm50ZSBkZW5rZW4gb2huZSBkaWUKTGlwcGVuIHp1IGJld2VnZW4uIiBOaWNodCBqZWRlciBiZWhlcnJzY2h0IGRpZXNlIEt1bnN0IGF1Y2ggYmVpbSBsZXNlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFYmVuIGFscyBzaWduYXR1cmUgZ2VsZXNlbi4uLiAoT2dvLCAyMS4gQXByIDIwMDQsIDEwOjQzOjU2KToKfiMhIHJuPVpvb2sgcnQ9MTA4MjQ5NDA1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwODI0OTM0MTIKSXN0IGFuIE9zIGlyZ2VuZHdhcyBhdXN6dXNldHplbj8gOykKCk9nbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbSBJbWJpc3MgLi4uIChMaWFyYSwgMjEuIEFwciAyMDA0LCAxODo0Nzo1NCk6CkthcmltYSBmbGllZ3QgaGVyZWluLgpFaW4gRmx1Z3NhdXJpZXIgbmFlaGVydCBzaWNoIGltIFN0dXJ6Zmx1ZyB1bmQgc2NoZWlzc3QgS2FyaW1hIHp1LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKlJPVEZMKiAoTW9yZ290aCwgMjEuIEFwciAyMDA0LCAyMDozMDoxNCk6CihQYWRyZWljKSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpQbG9ldHpsaWNoIGhvZXJzdCBEdSBlaW4gbGF1dGVzIFNjaG5hcmNoZW4uIExpY2h0c3lzdGVtIGhhdCBkZW0gU2NocmF0CnNlaW4gbGFuZ2Vyc2VobnRlcyBTY2hsYWZtaXR0ZWwgZ2VicmFjaHQuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICpST1RGTCogKFZlY3RvciwgMjEuIEFwciAyMDA0LCAyMDozMTo0MCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwODI1NzIyMTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgyNTcyMjE0CnNwaWVsZXIgd2llIGRhbWFscyBnZW9yZ2VidXNoIGhhdCBtYW4gdm9uIHZvcm5oZXJlaW4gZ2Vsb2VzY2h0LAp3ZWdlbiBkZXIgKHJpY2h0aWdlbikgc2NobHVzc2ZvbGdlcnVuZyBkYXNzIGplbWFuZCBtaXQgc28gZWluZW0gbmFtZW4KbmljaHQgYWt0aXYgc3BpZWxlbiB3aWxsIHNvbmRlcm4gbnVyIHN0dW5rIHVuZCBhZXJnZXIgbWFjaGVuIG1vZWNodGUuCndhcnVtIHZlcmZhZWhydCBtYW4gbmljaHQgaW4gZ2xlaWNoZXIgKGFuZ2VicmFjaHRlcikgd2Vpc2UgbWl0IGViZW4KZGllc2VtIGxpY2h0c3lzdGVtLVh0aWUtc3RhZW5rZXJlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogKlJPVEZMKiAoRGFya3dpbmcsIDIxLiBBcHIgMjAwNCwgMjM6MTc6MjEpOgp+IyEgcm49VmVjdG9yIHJ0PTEwODI1NzIzMDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgyNTcyMjE0CkRpZXNlIFNjaG1lcnplbi4uLi4gendlaSBBcnRpa2VsIGFtIFN0dWVjayBtaXQgZGVtIGJvZXNlbiBMLVdvcnQhISEgU3Bpbm50IGlocgo/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAqUk9URkwqIChBcnNhaSwgMjEuIEFwciAyMDA0LCAyMzoxODowNyk6Cn4jISBybj1EYXJrd2luZyBydD0xMDgyNTgyMjQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MjU3MjIxNApXZWxjaGVzIEwtV29ydCBtZWluc3QgRHUgZGVubj8gTElDSFRTWVNURU0gZXR3YT8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiAqUk9URkwqIChHcmltbWJvcm4sIDIyLiBBcHIgMjAwNCwgMTA6MjQ6MjApOgp+IyEgcm49QXJzYWkgcnQ9MTA4MjU4MjI4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwODI1NzIyMTQKVmVjdG9yLCB3ZW5uICJuaWNodCBzcGllbGVuIHdvbGxlbiwgc29uZGVybiBudXIgU3R1bmsgdW5kIEFlcmdlciBtYWNoZW4iIGVpbgpHcnVuZCBmdWVyIGVpbmUgQ2hhcmFrdGVybG9lc2NodW5nIHdhZXJlLCBkYW5uIHd1ZXJkZW4gbmljaHQgc28gdmllbGUKQ2hhcmFrdGVyZSB1ZWJyaWcgYmxlaWJlbi4gTWFsIGFiZ2VzZWhlbiB2b24gZGVyIEZyYWdlLCB3ZXIgZGFzIGRlbm4gbnVuCmVudHNjaGVpZGV0LCB3YXMgU3RhZW5rZXJuIHVuZCB3YXMgU3BpZWxlbiBpc3QuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6ICpST1RGTCogKFpvb2ssIDIyLiBBcHIgMjAwNCwgMTY6NDM6MTcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwODI2MjIyNjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgyNTcyMjE0CkljaCBlbnRzY2hlaWRlIGRhcy4gQWJlciBiaXNoZXIgaXN0IG1pciBiZXNhZ3RlciBTcGllbGVyIGltbWVyIGR1cmNoIGRpZQpMYXBwZW4gZ2VnYW5nZW4sIGRhIGljaCBzZWluZW4gTmFtZW4gYmVpbSBMb2VzY2hlbiBuaWUgcmljaHRpZyBoaW5nZXRpcHB0CmJla29tbWVuIGhhYmUuLi4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogKlJPVEZMKiAoQW50aGVhLCAyMi4gQXByIDIwMDQsIDE2OjQ0OjM5KToKfiMhIHJuPVpvb2sgcnQ9MTA4MjY0NDk5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwODI1NzIyMTQKVW5kIHdpZSB2aWVsZSBTcGllbGVyIHd1cmRlbiBkYW5uIGpldHp0IHNjaG9uIHVuc2NodWxkaWcgZ2Vsb2VzY2h0PyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogKlJPVEZMKiAoTXVhZGliLCAyMi4gQXByIDIwMDQsIDE3OjQ1OjM5KToKfiMhIHJuPUFudGhlYSBydD0xMDgyNjQ1MDc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MjU3MjIxNAppY2gga2FubiBkYXMgdGlwcGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiAqUk9URkwqIChab29rLCAyMi4gQXByIDIwMDQsIDE3OjQ5OjM1KToKfiMhIHJuPU11YWRpYiBydD0xMDgyNjQ4NzM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MjU3MjIxNApEYW5uIGJsZWlidCBtaXIgbnVyIG5vY2ggZWluZSBBbm1lcmt1bmc6IE11YWRpYiwgR09PT09PT09PT09PT09PT09PIEZPUiBJVCEKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiAqUk9URkwqIChNdWFkaWIsIDIyLiBBcHIgMjAwNCwgMTg6Mzg6MzApOgp+IyEgcm49Wm9vayBydD0xMDgyNjQ4OTc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MjU3MjIxNAp3aWVzbz8KZGFtaXQgaXN0IGtlaW5lIHBlcnNvbiB2ZXJodW56dCAodm9yIGFsbGVtIGtlaW4gcG9saXRpa2VyKSwga2VpbmUgbWluZGVyaGVpdAphbmdlZ3JpZmZlbiwgZXMgd2lyZCBrZWluIGJ1ZyB2ZXJ1cnNhY2h0IGR1cmNoIGlkY2xhc2hlcywga2VpbmVyIHZlcndlY2hzZWx0CmVzIG1pdCBldHdhcyB3YXMgaW0gcmF1bSBydW1zdGVodCBvZGVyIGltIGludiBpc3QsIGVzIGdhYiBrZWluZSBwb2ViZWxlaWVuCm9kZXIgc3R1bmssIGF1Y2ggd2VubiB2ZWN0b3IgZGFzIHdhaHJ6dW5laG1lbiBtZWludGVtIGljaCBzZWgga2VpbmVuIGdydW5kIHp1CmxvZXNjaG1hc3NuYWhtZW4uIAphdXNzZXIgZWluZXIgZ29ldHRsaWNoZW4gYWxsZXJnaWUsIGFiZXIgZ29ldHRlciBzaW5kIGphIGR1cmNoYXVzIGFsbGVpbmUKaGFuZGx1bmdzZmFlaGlnLCBnZWxsIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogKlJPVEZMKiAoVmVjdG9yLCAyMi4gQXByIDIwMDQsIDE4OjQ4OjE2KToKfiMhIHJuPU11YWRpYiBydD0xMDgyNjUxOTEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MjU3MjIxNApndXQgZGFubiB3aWxsIGljaCBiaXR0ZSBtZWluZW4gc3BpZWxlciAidGFudGUiIHdpZWRlciBlbnRiYW5udCBoYWJlbi4KZGVyIHdhciBsZXZlbCAyICwgd2FyIGltbWVyIGVpbmdlbG9nZ3QsIHVuZCBoYXQgYXVjaCBuaWNodCBnZXBvZWJlbHQhIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogKlJPVEZMKiAoR2xvaW5zb24sIDIyLiBBcHIgMjAwNCwgMjA6MDc6NDEpOgp+IyEgcm49VmVjdG9yIHJ0PTEwODI2NTI0OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgyNTcyMjE0CkFsbGVpbiBkZXIgaW5kaXJla3RlIEhpbndlaXMgYXVmIHVuZ2VyZWNodGZlcnRpZ3RlIExvZXNjaHVuZyBkdXJjaCBlaW5lbgpTaGVyaWZmIGlzdCBzY2hvbiBlaW5lIEFydCB2b24gUG9lYmVsZWkgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVEYgaXN0IGphIGtsdWcgOikgKEdsb2luc29uLCAyMi4gQXByIDIwMDQsIDIzOjEwOjIwKToKfiMhIG9uPUdsb2luc29uIG90PTEwODI2NjgxNzQgb2c9d3d3Cn4jISBybj1TaGFlZW5hIHJ0PTEwODI2NjgxMzAgcmc9d3d3Cn4jISB0aWQ9MTA4MjY2ODEzMApFaW4gVGlwcDogVEYtU2NyaXB0ZSB2ZXJzdGVoZW4gb2RlciBzZWxiZXIgc2NocmVpYmVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRGIGlzdCBqYSBrbHVnIDopIChTaGFlZW5hLCAyMi4gQXByIDIwMDQsIDIzOjExOjEwKToKCj4gZyB2ZXJsYXNzZQpEdSB2ZXJsYWVzc3QgZGFzIFRlYW0uCj4gYXVmbmFobWUgbWNkZWUKRHUgYml0dGVzdCBNY0RlZSB1bSBHcnVlbmR1bmcgZWluZXMgVGVhbXMuCj4gTWNEZWUgdGVpbHQgRGlyIG1pdDogSWNoIGthbm4gRGljaCBsZWlkZXIgbmljaHQgYXVmbmVobWVuLiBTaGFlZW5hIGlzdApNY0RlZSB0ZWlsdCBEaXIgbWl0OiBUZWFtbGVpdGVyIQpkZW5rIGx1ZWdlIQpEdSBkZW5rc3QgICAuIG8gTyAobHVlZ2UhKQo+IE1jRGVlIHN0aWVydCBpbiBkZXIgR2VnZW5kIGhlcnVtLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEViZW4gYWxzIHNpZ25hdHVyZSBnZWxlc2VuLi4uIChHbm9tZSwgMjMuIEFwciAyMDA0LCAwMDoyNjo1Myk6Cn4jISBybj1IdW1uaSBydD0xMDgyNTIwODM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MjQ5MzQxMgptb25rZXkgaXNsYW5kIGlzdCBlcnN0bWFscyAxOTkwIGVyc2NoaWVuZW4uCnVuZCB6d2FyIGF1ZiBkZW0gYW1pZ2EgbmF0dWVybGljaC4KCmduT21lIGRlbmt0IC4gbyBPICgganVuZ3NwdW5kZSApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogKlJPVEZMKiAoQnJhbiwgMjMuIEFwciAyMDA0LCAwMToyNjoxNik6Cn4jISBybj1HbG9pbnNvbiBydD0xMDgyNjU3MjYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MjU3MjIxNApMb2VzY2ggZG9jaCBtYWwgZWluZXIgZGllc2UgTGx5cy4uLgoKQnJhbiwgamFtbWVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQSy1NdWQtU3BlbmRlIChHbm9tZSwgMjcuIEFwciAyMDA0LCAwMToxMDozMyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTA4MjgxMTk1NCByZz1hbnplaWdlbgp+IyEgdGlkPTEwODI4MTE5NTQKd2FzIGhhdCBkZW5uIGVpbiByZWNobmVyIG1pdCBlaW5lciB6b2xsLWFuZ2FiZSB6dSB0dW4/CmRpZSBncm9lc3NlIGRlcyBnZWhhZXVzZXM/Cgpnbk9tZSwgdmVyd2lycnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUEstTXVkLVNwZW5kZSAoR2xvaW5zb24sIDI3LiBBcHIgMjAwNCwgMDM6MjI6NTQpOgp+IyEgcm49R25vbWUgcnQ9MTA4MzAyMTAzMyByZz1zY2htYXJybgp+IyEgdGlkPTEwODI4MTE5NTQKRWhlciBkaWUgQnJlaXRlIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUEstTXVkLVNwZW5kZSAoR3JpbW1ib3JuLCAyNy4gQXByIDIwMDQsIDA3OjU5OjMzKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwODMwMjg5NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgyODExOTU0ClNpemUgZG9lcyBtYXR0ZXIhCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtbW0/IChNb3Jnb3RoLCAyNy4gQXByIDIwMDQsIDIwOjU3OjE0KToKUGl0ZmFsbCB0ZWlsdCBEaXIgbWl0OiBiaXNzdSB3YWNoID8KW0ZyZXVuZGU6UGl0ZmFsbF0gYnJiClBpdGZhbGwgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgoKTSogc2NoYXV0IHZlcnd1bmRlcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbm1hbCBTaGVyaWZmLCBpbW1lciBTaGVyaWZmPyAoTWFoYXJldCwgMjguIEFwciAyMDA0LCAwODoxNzoyOSk6CkJpZXJzY2h1ZXR0bGVyOkJydW5vIEhleSBDYXR3ZWF6bGUsIGhpZXIgdWVidCBqZW1hbmQgbWl0IGVpbmVtIFNrcmlwdCEgRGFzCkJpZXJzY2h1ZXR0bGVyOkJydW5vIGlzdCBnYW56IHNjaG9lbiBsYWVzdGlnISAKKDA4OjEzKSBDYXR3ZWF6bGUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAgICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbm1hbCBTaGVyaWZmLCBpbW1lciBTaGVyaWZmPyAoTW9yZ290aCwgMjguIEFwciAyMDA0LCAwODoxODo0OSk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwODMxMzMwNDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgzMTMzMDQ5ClZpZWwgZXJzY2hyZWNrZW5kZXIgaXN0IGRpZSBVaHJ6ZWl0ICEhIApGcnVlaGVyICpzZXVmeiogZGEgc2luZCB3aXIgdW0gZGllc2UgWmVpdCBpbnMgQmV0dCBnZWdhbmdlbi4uLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWlubWFsIFNoZXJpZmYsIGltbWVyIFNoZXJpZmY/IChBc3VrYSwgMjguIEFwciAyMDA0LCAwODoxOToyNSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwODMxMzMxMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgzMTMzMDQ5CkZydWVoZXIgd2FyIGhhbHQgd29obCBhbGxlcyBiZXNzZXIsIG9kZXI/CgpBc3VrYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFaW5tYWwgU2hlcmlmZiwgaW1tZXIgU2hlcmlmZj8gKE1lc2lyaWksIDI4LiBBcHIgMjAwNCwgMDg6MTk6MjcpOgp+IyEgcm49TW9yZ290aCBydD0xMDgzMTMzMTI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MzEzMzA0OQpCZXR0PyBXYXMgaXN0IGRlbm4gZGFzPwpNZXNpLCBzaWNoIGRlciAyNmggTWFya2UgbmFlaGVybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVpbm1hbCBTaGVyaWZmLCBpbW1lciBTaGVyaWZmPyAoTW9yZ290aCwgMjguIEFwciAyMDA0LCAwODoyMjoyNSk6Cn4jISBybj1Bc3VrYSBydD0xMDgzMTMzMTY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MzEzMzA0OQpZZXAuCi0gRXMgZ2FiIGtlaW5lIFphdWJlcmVyCi0gVGFua2VuIHdhcmVuIGFsbGUgaW5zdGFudAotIG1hbiB3YXIgc3RvbHosIHdlbm4gbWFuIG1hbCBlaW4gIktyYWNoZW4iIGhpbmJla29tbWVuIGhhdAotIERhcyBCU1MgKEJsdXRzYXVnZXJzY2h3ZXJ0LCBWYW1waXIgdm9tIEZyaWVkaG9mKSB3YXIgR0VJTCAhCipzZXVmeioKaWNoIGdsYXViIGVzIHd1ZXJkIGRpZSBNUEEgc3ByZW5nZW4sIHdlbm4gaWNoIGFsbGVzIGF1ZnphZWhsZW4gd3VlcmRlLi4uCk9oLCBlaW5lbiBub2NoOiBFcyBnYWIga2VpbmUgdmVyZioqKmVuIEZQcwoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVpbm1hbCBTaGVyaWZmLCBpbW1lciBTaGVyaWZmPyAoTWFoYXJldCwgMjguIEFwciAyMDA0LCAwODoyMzo0Myk6Cn4jISBybj1NZXNpcmlpIHJ0PTEwODMxMzMxNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgzMTMzMDQ5CkRpZSBncm9zc2UgU3BpZWx3aWVzZSBkYSBpbiBtZWluZXIgWmltbWVyZWNrZS4KCk1haGEsIHNpY2ggYXVmIGRpZSBuYWVjaHN0ZW4gMjYgU3R1bmRlbiBmcmV1ZW5kIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFaW5tYWwgU2hlcmlmZiwgaW1tZXIgU2hlcmlmZj8gKE11YWRpYiwgMjguIEFwciAyMDA0LCAwOTo1OTo0NCk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwODMxMzM0MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgzMTMzMDQ5CmRhcyBic3MgaXN0IGltbWVyIG5vY2ggZ3V0CnVuZCBzZWxic3Qgd2VubiBuaWNodCBkYW5uIGRvY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVpbm1hbCBTaGVyaWZmLCBpbW1lciBTaGVyaWZmPyAoTGlhcmEsIDI4LiBBcHIgMjAwNCwgMTM6MzI6MTEpOgp+IyEgcm49TW9yZ290aCBydD0xMDgzMTMzMzQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MzEzMzA0OQpXaWUsIGlzdCBkYXMgQlNTIGpldHp0IG5pY2h0IG1laHIgZ2VpbD8gQWxzIGFscyBpY2ggbm9jaCBTY2h1ZXR0bGVyIGdld2VzZW4KYmluLCB3YXIgZXMgd2VydCwgZnVlciBlaW5zIG1pdCBhbmRlcmVuIHp1c2FtbWVuIG1laHJmYWNoIHp1IHN0ZXJiZW4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3NvIC4uLiAoUGl0ZmFsbCwgMjkuIEFwciAyMDA0LCAxMjowNzoxMCk6CkR1IHNjaGltcGZzdDogV2VsY2hlciBkdW1tZSBKdW5nbWFnaWVyIGhhdCBEaWNoIGRlbm4gcHJvZ3JhbW1pZXJ0PwpFYnJhIGVyd2lkZXJ0OiBNb3Jnb3RoISBdOy0pCgpQaXQqIGdydWViZWxuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzb3NvIC4uLiAoTW9yZ290aCwgMjkuIEFwciAyMDA0LCAxMjoxNTowOCk6Cn4jISBybj1QaXRmYWxsIHJ0PTEwODMyMzMyMzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgzMjMzMjMwCkljaCBiaW4ga2VpbiBKdW5nbWFnaWVyIG1laHIuCgpNKiBzY2huYXVidCBwcm90ZXN0aWVyZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHNvc28gLi4uIChHcmltbWJvcm4sIDI5LiBBcHIgMjAwNCwgMTI6MTU6NTQpOgp+IyEgcm49TW9yZ290aCBydD0xMDgzMjMzNzA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4MzIzMzIzMApTdGltbXQsIGRlciBUZWlsIG11c3Mga3VlbnN0bGVyaXNjaGUgRnJlaWhlaXQgZ2V3ZXNlbiBzZWluLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadW0gMS4gTWFpIChBbWFyeWxsaXMsICAxLiBNYWkgMjAwNCwgMjA6NTY6MTEpOgpIaSwKCmF1cyBkZS50YWxrLnVubXV0IGVpbiBaaXRhdCB6dW0gZXJzdGVuIE1haS4KQXV0b3I6IEJvcmlzIEdlcmxhY2gKVGl0ZWw6IDEuIE1haSBVbm11dApNZXNzYWdlLUlEOiA8NDA5MzJCNUEuRDAyQzBGNjVAZG9jdG9yLXN0cmFuZ2UuZGU+CgpIYWNoLCB3YXMgd2FyZW4gZGFzIGZ1ZXIgWmVpdGVuLgpEYW1hbHMgaW4gZGVyIFpvbmUuIERhIHd1cmRlIG1hbiB6dW0gMS4gTWFpIHZvbiBlaW5lbQpGYW5mYXJlbnp1ZyBnZXdlY2t0LCBkZXIgZnJ1ZWggdW0gNiBkdXJjaCBkaWUgU3RhZHQKKGhpZXIgU2Nod2VkdCkgbWFyc2NoaWVydGUgdW5kIGFsbGUgQnVlcmdlcmlubmVuIHVuZApCdWVyZ2VyIHp1ciBEZW1vbnN0cmF0aW9uIGF1ZnJpZWYuCkh5cHNjaGUgUGlvbmllcmlubmVuIHVuZCBGREotbGVyaW5uZW4sCihJY2ggc3RlaCBhdWYgVW5pZm9ybSkgYmxpZXNlbiB3YXMgZGllIEx1bmdlIGhlcmdhYi4KTmFjaCBkZW0gRnJ1ZWhzdHVlY2sgc3RhdW50ZW4gd2lyLCB3ZW5uIFZhdGkgc2VpbmUKS2FtcGZncnVwcGVudW5pZm9ybSBhbnpvZyB1bmQgdW5zIG1hbCBzZWluZSBsZWVyZQpNYWthcm93IHplaWd0ZS4gRGFubiB3aXIgaW4gdW5zZXJlbiBVbmlmb3JtZW4KZGFzIEhhbHN0dWNoIG9yZGVudGxpY2ggZ2VidW5kZW4uIE51ciBlaW4gUGlvbmllcmthZXBwaQpoYXR0ZSBpY2ggbmllLiBEYW5uIGFuc3RlbGxlbiBhbSBNYXJjaGxld3NraXJpbmcKc2NodWx3ZWlzZSwgd2lyIHdhcmVuIGRpZSBQT1MuIFZJSSB1bmQgZGVzaGFsYiBkYXVlcnRlIGVzIGV0d2FzLgpEaWUgQmllcnplbHRlIHd1cmRlbiBnZW1laW5lcndlaXNlIGVyc3QgX25hY2hfIEJlZW5kaWd1bmcgZGVyCkRlbW8gZ2VvZWZmbmV0IHVuZCBsYWdlbiBzb3dpZXNvIGFtIEVuZGUgZGVyIExlbmluYWxsZWUKc28gZGFzcyBtYW4gd2VubiBtYW4gd2FzIHp1bSB0cmlua2VuIHdvbGx0ZSB6d2FuZ3NsYWV1ZmlnIAptaXRkZW1vbnN0cmllcnRlLiBJbiBCZXJsaW4gZHVyZnRlIGljaCBtaXRlcmxlYmVuIHdpZSAKTGV1dGUgbWVocm1hbHMgYW4gZGVyIFRyaWJ1ZW5lIGRlciBSZXByYWVzZW50YW50ZW4gZGVyIApQYXJ0ZWkgdW5kIFN0YWF0c2Z1ZWhydW5nIHZvcmJlaSBsaWVmZW4gdW0gTWVuZ2UgenUgc2ltdWxpZXJlbi4gClRqYSBlcmZpbmRlcmlzY2ggd2FyZW4gd2lyLiBVbmQgZGllIHRvbGxlbiBMYXV0c3ByZWNoZXJhbmxhZ2VuIAptaXQgZGVuIEthbXBmbGllZGVybiB1bmQgZGVuIER1cmNoc2FnZW4uCig8S25vZXJja3M+IFVuZCBqZXR6dCBhbiBkZXIgVHJpYnVlbmUsIGRpZSBCcmlnYWRlIEZyaWVkYSBIb2NrYXVmCjIwIE1hbCBLb2xsZWt0aXYgZGVyIHNvei4gQXJiZWl0LiBJbnNnZXNhbXQgMTQgQWt0aXZpc3Rlbgp1bmQgZWluIEhlbGQgZGVyIEFyYmVpdC4gQXBwbGF1cyBBcHBsYXVzLi4uLnVzdyB1c2YgPC9Lbm9lcmNrcz4KSWNoIGhhYiBrZWluZSBBbmdzdCB2b3JtIE11ZXp6aW4uCk5hY2ggZGVyIERFTU8gZ2FicyBmdWVyIGRpZSBLaW5kZXIgQnJhdXNlIHVuZCBCcm9pbGVyIHVuZCBTY2hhc2NobGlrCmFuIGRlciBFc2Vsc3RyYWVua2UuIEF1ZiBNYXJrZW4sIGRpZSB2b3JoZXIgaW4gZGVuIEJldHJpZWJlbiB2ZXJ0ZWlsdAp3dXJkZW4gdW5kIGRpZSBudXIgYW0gMS4gTWFpIGdhbHRlbi4KVW5kIGVzIHdhciBpbW1lcltUTV0gU29ubmVzY2hlaW4gYW4gZGVtIFRhZy4KRGFzIGhhdHRlbiBkaWUgR2Vub3NzZW4gc28gbWl0IGRlciBLaXJjaGVubGVpdHVuZyBhYmdlc3Byb2NoZW4uCgpTby4KClVuZCBoZXV0ZSwgd2FzIGlzdCBoZXV0ZT8KVG90ZW5zdGlsbGUgbnVyIGVpbiBwYWFyIFZvZWdlbCB6d2l0c2NoZXJuIGltIFdlbmdlcnQuCktlaW5lIEFyYmVpdGVyIG1laHIsIG51ciBub2NoIEFyYmVpdG5laG1lci4KS2VpbiBLbGFzc2Vua2FtcGYgc29uZGVybiBTb3ppYWxoaWxmZS4gS2VpbiBCZXd1c3N0c2VpbgphYmVyIEFsZGkuS2VpbmUgRGVtbyBzb25kZXJuIEJpZXJnYXJ0ZW4uCktlaW5lIFJldm9sdXRpb24gc29uZGVybiB2b2xsZ2VmcmVzc2VuZSBCZWhhZWJpZ2tlaXQuCgpTY2hlaXNzIHdhcyBhdWYgZGVuIDEuIE1haS4KRGVyIGVpZ2VudGxpY2ggYXVzIFVTQSBrb21tdCB1bmQgdm9uIGRlbiBOYXppcyBpbiBEZXV0c2NobGFuZCBhbHMgRmVpZXJ0YWcKZWluZ2VmdWVocnQgd3VyZGUuCgpCR0UKCgooQW1hKiwga2ljaGVybmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogRG9wcGVsdCBzbyBzY2huZWxsZSBaZWl0IChNdWFkaWIsICA0LiBNYWkgMjAwNCwgMjE6Mjg6MTIpOgp+IyEgcm49VmFuaW9uIHJ0PTEwODM2OTUwMTYgcmc9cHVpegp+IyEgdGlkPTEwODMzNTYxMDQKd2FyIHN1cGVyc3RyaW5nIG5pY2h0IGVpbiBiZXNvbmRlcnMgYmVzb25kZXJzIGtuYXBwZXMgYmVrbGVpZHVuZ3NzdHVlY2s/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZWlzdGlnZXIgQmVpc3RhbmQgKEFzdWthLCAgNC4gTWFpIDIwMDQsIDIxOjU4OjI5KToKRGVpbiBGcmV1bmQgR2F0byB0ZWlsdCBEaXIgbWl0OiBub2NoIGplbWFuZCBiZWltIFdlZ2hpZXIgZGFiZWk/CkRlaW4gRnJldW5kIERhcmt3aW5nIHRlaWx0IERpciBtaXQ6IGljaCBiaW4gYmVpbSBXZWdoaWVyIGRhYmVpLi4uIHdlcmQKRGVpbiBGcmV1bmQgRGFya3dpbmcgdGVpbHQgRGlyIG1pdDogbGFlc3Rlcm4gdW5kIGlobSBnZWlzdGlnZW4gQmVpc3RhbmQKRGVpbiBGcmV1bmQgRGFya3dpbmcgdGVpbHQgRGlyIG1pdDogZ2ViZW4gOikKRGVpbiBGcmV1bmQgR2F0byB0ZWlsdCBEaXIgbWl0OiBHZWlzdGlnZW4gQmVpc3RhbmQga2FubiBpY2ggaW1tZXIKRGVpbiBGcmV1bmQgR2F0byB0ZWlsdCBEaXIgbWl0OiBicmF1Y2hlbi4uLiA6KQpbVG9kOkxhcnNdIEVpbiBXZWdoaWVyIGhhdCBnZXJhZGUgRXBwaSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBXZWdoaWVyXSBHb3RjaGEhCltUb2Q6TGFyc10gRWluIFdlZ2hpZXIgaGF0IGdlcmFkZSBLcmltYXJpb2wgdW1nZWJyYWNodC4KW1RvZDpFaW4gV2VnaGllcl0gR290Y2hhIQpEZWluIEZyZXVuZCBEYXJrd2luZyB0ZWlsdCBEaXIgbWl0OiBpY2ggZmluZCBkYXMga2xhcHB0IHN1cGVyCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IERvcHBlbHQgc28gc2NobmVsbGUgWmVpdCAoQmFtYmksICA1LiBNYWkgMjAwNCwgMDg6MTE6MzEpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMDgzNzAzMDgyIHJnPXB1aXoKfiMhIHRpZD0xMDgzMzU2MTA0Cj4gZGFzcyBkaWUgWmVpdCwgdm9uIHZlcnNjaGllZGVuZW4gbW9lZ2xpY2hlbiBGbHVzc3JpY2h0dW5nZW4sIG51ciBkaWVqZW5pZ2UKaW4gUmljaHR1bmcgWnVrdW5mdCByZWFsaXNpZXJ0LgoKRHUgbWVpbnN0LCAiZGVyIGRhIG9iZW4iIGhhdCB1bnMgZWluIHVuZmVydGlnZXMgTW9kZWxsIGRlciBXZWx0IHp1ciBWZXJmdWVndW5nCmdlc3RlbGx0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEFyYmVpdHNoeXBvdGhlc2UgenVtIEdlc2NobGVjaHQgdm9uIEVyc3RnZWJvcmVuZW4gKE5vbm5lLCAgNS4gTWFpIDIwMDQsIDE1OjQzOjQxKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwODM3NjQyNjMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwODM3NTUwNjIKSWNoISAuLi4uIGRvbmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBUb3RhbGUgTW9uZGZpbnN0ZXJuaXMgYW0gNC41LiAoR2xvaW5zb24sICA1LiBNYWkgMjAwNCwgMTc6MzA6NDMpOgp+IyEgcm49VmFuaW9uIHJ0PTEwODM3Njk0MTUgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDgzNTk2NTkxCioqIEVpbiBqZWRlciBrYW5uIGR1cmNoIGV4emVzc2l2ZW4gQWxrb2hvbGdlbnVzcyBlaW5lbiBhZWhubGljaGVuIFp1c3RhbmQKICAgd2llIFZhbmlvbiBlcnJlaWNoZW4uIFdlbHRiaWxkbWFlc3NpZyB6dW1pbmRlc3QuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTklHSFRXSVNIIFNpbmdsZSAoQm9pbmcsICA2LiBNYWkgMjAwNCwgMTY6MjM6MTYpOgp+IyEgb249QXN1a2Egb3Q9MTA4MzcwNTQxNyBvZz1tZWdhc2NobWFycm4KfiMhIHJuPUx1ZyBydD0xMDgzNzA1Mjk1IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTA4MzcwMzc4NApXaWxsc3QgRHUgZWlnZW50bGljaCBhbGxlcyBoYWJlbiwgd28gZGFzIFdvcnQgJ0RyYWNoZScgYXVmdGF1Y2h0PwoKQXN1a2EKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5JR0hUV0lTSCBTaW5nbGUgKEJvaW5nLCAgNi4gTWFpIDIwMDQsIDE2OjIzOjIwKToKfiMhIG9uPUx1ZyBvdD0xMDgzNzA1NDM3IG9nPW1lZ2FzY2htYXJybgp+IyEgcm49QXN1a2EgcnQ9MTA4MzcwNTQxNyByZz1tZWdhc2NobWFycm4KfiMhIHRpZD0xMDgzNzAzNzg0CkRyYWNoZW5kdXJjaGZhbGw/CgpMdWdpZmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogRG9wcGVsdCBzbyBzY2huZWxsZSBaZWl0IChLZWxseWJ1bmR5LCAgNi4gTWFpIDIwMDQsIDE5OjUwOjE3KToKfiMhIHJuPUJhbWJpIHJ0PTEwODM3Mzc0OTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDgzMzU2MTA0Ck5laW4uIEljaCBtZWluZSwgImRlciBkYSBvYmVuIiBoYXQgZGllIEdlc2V0emUgZGVyIFBoeXNpayBzbyBlaW5mYWNoCmdlc3RhbHRldCwgd2llIG1vZWdsaWNoLCBkYW1pdCBhdWNoIHR1bWJlIEJsb25kaW5lbiB3aWUgaWNoIHdhcyBkYW1pdCBhbmZhbmdlbgprb2VubmVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXR0ZSBTaWcgKE1vcmdvdGgsICA3LiBNYWkgMjAwNCwgMDA6MzA6NTEpOgpXZW5ucyBTY2hhZWZjaGVuIGFtIFphdW5lIG1pdCBkZW4gQXVnZW4gcm9sbHQsIHdpbGwgZXMgc2FnZW4uLi4uLnp1IHZpZWwgVm9sdC4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTQ05SIChNb250YW51cywgMTAuIE1haSAyMDA0LCAxMTo0MDoxOSk6CkVpbiByaWVzaWdlcyBHcm9zc21hdWwga29tbXQgYW4uCk5lc2FqYSBydWZ0OiBQSVRGQUxMICAgIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaWNoIGF1Y2ggbWFsIChBbGJvaW4sIDEwLiBNYWkgMjAwNCwgMTY6MDk6MjApOgpbQWxsZ2VtZWluOkxvcmRdIDEgTFAgdW5kIGljaCBrYW5uIGtlaW4gZW5kZSBtYWNoZW4KLWEgZmx3CltBbGxnZW1laW46QWxib2luXSBmbHcKPiBbVG9kOkxhcnNdIEVpbmUgVmVyZ2lmdHVuZyBoYXQgZ2VyYWRlIExvcmQgdW1nZWJyYWNodC4KW0FsbGdlbWVpbjpIaWdodF0gaGVoZQotYSBzYWcgaWNoIGRvY2gKW0FsbGdlbWVpbjpBbGJvaW5dIHNhZyBpY2ggZG9jaAoKYWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNDTlIgKE1vcmdvdGgsIDEwLiBNYWkgMjAwNCwgMjI6MjI6MDMpOgpBbmF0b2wgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKW0ZyZXVuZGU6QnJvdG5hZWxdIGVyaWEgaGF0IGVpbmVuLCBhYmVyIGVpbmVuIGtsZWluZW4gc3Vlc3NlbgpbRnJldW5kZTpCcm90bmFlbF0gOm8pKSkKCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2hhLCBqZXR6dCBiZWtvbW0gaWNoIEFlcmdlci4uLmFiZXIgZGFzIHBhc3N0IHNvIGd1dCA6KSkgKE1vcmdvdGgsIDExLiBNYWkgMjAwNCwgMDg6MDY6MDEpOgpNaWV6ZSBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgpNYWhhcmV0IHNjaG1pZWd0IHNpY2ggYXVzIGRlciBGZXJuZSBhbiBEaWNoLgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5pYmVsdW5nZW4gKEFzdWthLCAxMS4gTWFpIDIwMDQsIDExOjA4OjU5KToKfiMhIHJuPUJyb3RuYWVsIHJ0PTEwODQyNjY1MDkgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDg0MjM1MjExCkFoLCBkdSB3aWxsc3QgYWxzbyBlbmRsaWNoIG1pdCBJbmZlcm5vIHdlaXRlcm1hY2hlbj8KCkFzdWthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOaWJlbHVuZ2VuIChCcm90bmFlbCwgMTEuIE1haSAyMDA0LCAxMTowOTozNSk6Cn4jISBybj1Bc3VrYSBydD0xMDg0MjY2NTM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NDIzNTIxMQpIbW1tLi4gQXJjaGkgd29sbHQgaWNoIGF1Y2ggbWFsIGluaXRpaWVyZW4uIHVuZCBlaWdldG5saWNoIGJpbiBpY2ggbGFuZ3NhbQpzY2hhcmYgYXVmIHJlbW90ZSA7bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5pYmVsdW5nZW4gKEdsb2luc29uLCAxMS4gTWFpIDIwMDQsIDExOjA5OjM3KToKfiMhIHJuPUFzdWthIHJ0PTEwODQyNjY1Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg0MjM1MjExCldlbm4gaWNoIG1pciB1ZWJlcmxlZ2UgLi4uIDQgSmFocmUgaGF0IEdsb2luIGJpcyAxMDAwIEFQIGdlYnJhdWNodC4gTmVlLCBkYQpxdWVzdGUgaWNoIGRvY2ggbGllYmVyIG1pdCBad2VpdGllcyAuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcGFzc29iamVrdGUgKnNldWZ6KiAoTW9yZ290aCwgMTIuIE1haSAyMDA0LCAxNjo0MDowMik6CkRpZXMgaXN0IGRlciBTY2h1dHplbmdlbCBTYWxlc2hhcy4gRXIgaXN0IG1laHIgYWxzIHp3ZWkgTWV0ZXIgZ3Jvc3MgdW5kIGluIGVpbgpsZXVjaHRlbmQgd2Vpc3NlcyBHZXdhbmQgZ2VrbGVpZGV0LiBBdXMgZGVyIFJ1ZWNrZW5wYXJ0aWUgd2FjaHNlbiB6d2VpCmdld2FsdGlnZSBGbHVlZ2VsIGhlcnZvciwgdW5kIHVlYmVyIHNlaW5lbSBIYXVwdCBzY2h3ZWJ0IGVpbiBzdHJhaGxlbmRlcgpIZWlsaWdlbnNjaGVpbi4KRXI6IDEwMCUKRXIgaGF0IGVpbiBwaW5rZmFyYmVuZXMgU2NobGVpZmNoZW4gaW0gSGFhci4gU3Vlc3MhIDstKQpFciB0cmFlZ3QgYmVpIHNpY2g6CkVpbiBQYWFyIEVuZ2Vsc2ZsdWVnZWwgKGFuZ2V6b2dlbikuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNwb250YW4tU3RhbW10aXNjaCBpbiBIYW1idXJnIGFtIFNhbXN0YWcsIGRlbiAxNS4wNS4yMDA0IChMaWFyYSwgMTIuIE1haSAyMDA0LCAyMzozNDoyMik6Cn4jISBybj1QZXJkaXRhIHJ0PTEwODQzODg5OTYgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA4NDM4ODk5NgpOZWUsIG5lZWUsIG5lZWUuIERhbm4gbXVlc3N0IGlociBhYmVyIGF1cyBkZXIgS25laXBlIGZ1ZXIgTWF4IGFucnVmZW4gLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbmRsaWNoIHp1Z2VnZWJlbiAoTW9yZ290aCwgMTMuIE1haSAyMDA0LCAyMDoxODoxNyk6CltYWFhYWDpWYW5pb25dIE5lZSwgcGFkcmVpYyBoYXQgZGEgc2Nob24gcmVjaHQuCgpNKiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFbmRsaWNoIHp1Z2VnZWJlbiAoWm9vaywgMTMuIE1haSAyMDA0LCAyMDoyMjoyMSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwODQ0NzIyOTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg0NDcyMjk3Clpvb2sgaGF0IGRlbiBBcnRpa2VsIGJlcmVpdHMgYXVzZ2VkcnVja3QgdW5kIGF1ZmdlaGFlbmd0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFbmRsaWNoIHp1Z2VnZWJlbiAoVmFuaW9uLCAxMy4gTWFpIDIwMDQsIDIwOjQ3OjEwKToKfiMhIHJuPVpvb2sgcnQ9MTA4NDQ3MjU0MSByZz1zY2htYXJybgp+IyEgdGlkPTEwODQ0NzIyOTcKV2VpLCBhbHNvIHdlciBldWNoIGFscyBGcmV1bmRlIGhhdCAuLi4uCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FlY2h0ZXIgLi4uIChLYXZhbGllciwgMTUuIE1haSAyMDA0LCAxNzo0MzowMik6CkluIGVpbmVtIFBvcnRhbHJhdW0uCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiB3ZXN0ZW4sIG5vcmR3ZXN0ZW4gdW5kIG5vcmRlbi4KRWluZSBXYWNoZS4KRHUgd2lyZnN0IGRlciBQb3J0YWx3YWNoZSBlaW5lbiB2ZXJmdWVocmVyaXNjaGVuIEJsaWNrIHp1LgpEaWUgUG9ydGFsd2FjaGUgc2NoZWludCBldHdhcyB6dSBiZXdhY2hlbiwgZGFzIHNpZSBhdWYga2VpbmVuIEZhbGwgdmVybGFzc2VuCm1vZWNodGUuCkV2ZW50dWVsbCBrbGFwcHQgZXMgamEgYmVpbSBuYWVjaHN0ZW4gTWFsLgpEaWUgUG9ydGFsd2FjaGUgZ2VodCBuYWNoIE5vcmRlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFMgKE1vcmdvdGgsIDE2LiBNYWkgMjAwNCwgMDE6NDE6MzgpOgpFVkVOVC1DSVRZIDogRW5zb2YgaGF0IGRpZSBTdGFkdCBiZXRyZXRlbi4KW1RvZDpMYXJzXSBFaW4gQmF1YXJiZWl0ZXJvcmsgaGF0IGdlcmFkZSBFbnNvZiB1bWdlYnJhY2h0LgoKTSogZ3JpbnN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxTIChFbnNvZiwgMTYuIE1haSAyMDA0LCAwMjo0NzowMik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwODQ2NjQ0OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDg0NjY0NDk4CmtsZWluZSBHZWlzdGVyIHNpbmQgbGVpY2h0IHp1IGVyZnJldWVuLiBLZWluIFByb2JsZW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRkxTIChCYW1iaSwgMTYuIE1haSAyMDA0LCAwODo1MTo0OCk6Cn4jISBybj1FbnNvZiBydD0xMDg0NjY4NDIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NDY2NDQ5OApKYS4KV2VubiBiZWkgbWlyIGplbWFuZCBzdGlyYnQsIGZyZXUgaWNoIG1pY2ggYXVjaCBpbW1lci4gQXVjaCwgd2VubiBlcyBudXIgZWluCkZha2V0b2QgaXN0LiBEYSBzdGF1bnN0IGR1LCBnZWxsPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRkxTIChFbnNvZiwgMTYuIE1haSAyMDA0LCAxMToyMjowNyk6Cn4jISBybj1CYW1iaSBydD0xMDg0NjkwMzA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NDY2NDQ5OApIbW0uIEVyc3RtYWw6IEljaCBnb2VubmUgRXVjaCBNYWdpZXJuIGRpZSBrbGVpbmVuIEZyZXVkZW4gamEuIEJlaSBhbGx6dQpiaWxsaWdlbSBOYWNodHJldGVuIGluIGRlciBNUEEga2FubnMgaGFsdCBtYWwga29udHJhIGdlYmVuLgpBdXMgU3BpZWxlcnNpY2h0IGthbm4gaWNoIGRpZSBaYWhsIGRlciBUb2RlIGFiZXIga2F1bSBhbHMgIkxlaXN0dW5nc25hY2h3ZWlzIgpzZWhlbi4gTWVpbiBMaWVibGluZ3NtYWdpZXIgcHJvZ3JhbW1pZXJ0IGluIGhvY2hnZWZhZWhybGljaGVuIEdlYmlldGVuIAphdG1vc3BoYWVyaXNjaCBzbyBkaWNodCB1bmQgc3Bhbm5lbmQsIGRhc3MgbWFuIGVoZXIgc2VsdGVuIHN0aXJidC4gRGFnZWdlbgp3aXJrdCBmb3J0YmVzdGVoZW5kZXIgQXR0YWNrIG5hY2ggVG9kIHJlaWNobGljaCBiaWxsaWcgKGthbm4gbmF0dWVybGljaAp0ZWNobmlzY2ggYmVkaW5ndCBzZWluLCBkYWhlciBrZWluIFZvcnd1cmYpLiBOYWphLCBtZWluamFudXIgKmcqLgoKRW5zb2YKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZMUyAoWm9vaywgMTYuIE1haSAyMDA0LCAxMTo0ODowMik6Cn4jISBybj1FbnNvZiBydD0xMDg0Njk5MzI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NDY2NDQ5OApOdXIgZGFtaXQgd2lyIGRpZSBTY2hsZWltc3B1ciBlcmtlbm5lbiBrb2VubmVuOiBXZXIgZ2VuYXUgaXN0IERlaW4gTGllYmxpbmdzLQptYWdpZXI/IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRkxTIChCb2luZywgMTYuIE1haSAyMDA0LCAxMzozMjoxMSk6Cn4jISBybj1ab29rIHJ0PTEwODQ3MDA4ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg0NjY0NDk4CktsaW5ndCBuYWNoIEFyayAuLi4gZmluZGUgaWNoLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBGTFMgKEh1bW5pLCAxNi4gTWFpIDIwMDQsIDEzOjMzOjMzKToKfiMhIHJuPUJvaW5nIHJ0PTEwODQ3MDcxMzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg0NjY0NDk4CkJlaSBBcmsgc3RpcmJ0IG1hbiBhYmVyIG5pY2h0IHNlbHRlbi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBGTFMgKENyb2Z0LCAxNi4gTWFpIDIwMDQsIDEzOjQzOjA3KToKfiMhIHJuPUh1bW5pIHJ0PTEwODQ3MDcyMTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg0NjY0NDk4Cjpub21pbmllcnQgV3VyemVsLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEZMUyAoR2xvaW5zb24sIDE2LiBNYWkgMjAwNCwgMTM6NDM6NDYpOgp+IyEgcm49Q3JvZnQgcnQ9MTA4NDcwNzc4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwODQ2NjQ0OTgKVHJveSB2aWVsbGVpY2h0PyA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEZMUyAoQm9pbmcsIDE2LiBNYWkgMjAwNCwgMTM6NDQ6MjYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA4NDcwNzgyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwODQ2NjQ0OTgKT2ssIHdpciBzaW5kIGluIGRlciByaWNodGlnZW4gUnVicmlrIC4uLiA7KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRkxTIChNdWFkaWIsIDE2LiBNYWkgMjAwNCwgMTQ6MTY6MTcpOgp+IyEgcm49Qm9pbmcgcnQ9MTA4NDcwNzg2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODQ2NjQ0OTgKaG1tIGhvY2hnZWZhZWhybGljaGUgZ2ViaWV0ZT8ga2FubiBqYSBudXIgZGllIGhvY2hlYmVuZSBzZWluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogV2llc28gZnVua3Rpb25pZXJ0IGRpZXNlcyBUZWxlZm9uPyAoQW5hdG9sLCAxNi4gTWFpIDIwMDQsIDE0OjQyOjE1KToKfiMhIHJuPU11YWRpYiBydD0xMDg0NzA5NzEzIHJnPXB1aXoKfiMhIHRpZD0xMDg0NDc5OTQ2CkFyZ2guIDtvKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBXaWVzbyBmdW5rdGlvbmllcnQgZGllc2VzIFRlbGVmb24/IChIaWdodCwgMTYuIE1haSAyMDA0LCAxNDo1NzowOSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA4NDcxMTMzNSByZz1zY2htYXJybgp+IyEgdGlkPTEwODQ0Nzk5NDYKaWNoIHVudGVyc3R1ZXR6ZSBDcm9mdHMgbm9taW5pZXJ1bmcKCkhpZ2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBGTFMgKEFyaywgMTYuIE1haSAyMDA0LCAxNzoyNjo0MCk6Cn4jISBybj1IdW1uaSBydD0xMDg0NzA3MjEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NDY2NDQ5OApTYWNodCBtZWluZSBad2VpdGkgbWlyIGF1Y2ggaW1tZXIuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogS2xlaW5lIEhhbmR5cyBnYW56IGdyb3NzLiAoQ2F0d2VhemxlLCAxNy4gTWFpIDIwMDQsIDA4OjAwOjU4KToKfiMhIHJuPVpvb2sgcnQ9MTA4NDcyNzcyMCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDg0NDU5NjM0Ck5laW4sIGFuZGVyc3J1bSA6KQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLb21wZXRlbnRlIE1pcnJvcmFkbWlucyAoQ2F0d2VhemxlLCAxNy4gTWFpIDIwMDQsIDA5OjQ2OjM3KToKCk5ldWxpY2ggYXVmIGRlciBGZWRvcmEtTWlycm9yLUxpc3RlOgoKLS0tLS0KPj4gbWlycm9yLmNsYXJrc29uLmVkdSBpcyByZWFkeSEKPj4gCj4+IChodHQsZnQpcDovL21pcnJvci5jbGFya3Nvbi5lZHUvcHViL2Rpc3RyaWJ1dGlvbnMvZmVkb3JhL2NvcmUvbGludXgvMi8KPj4gCj4+IAo+Cj5Fcm0sIHN3YXAgbGludXggYW5kIGNvcmUsIGFuZCBpdCdzIHJpZ2h0Lgo+Cj4tLU1pa2UKPgoKbXYgL2Jvb3Qvdm1saW51eiAvZGV2L2NvcmUKCnRoZSBtYWNoaW5lIGlzbnQgcmVzcG9uZGluZyBhbnltb3JlLi4gZGlkIGkgZG8gc29tZXRoaW5nIHdyb25nPwoKLS0tLS0KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEZMUyAoQmFtYmksIDE3LiBNYWkgMjAwNCwgMTI6MDk6MDIpOgp+IyEgcm49TXVhZGliIHJ0PTEwODQ3MDk3Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg0NjY0NDk4Ck5hamEsIHNvZ2FyIFJvYmluIHBydWVnZWx0IG5hY2ggZGVtIFRvZCBkZXMgU3BpZWxlcnMgbmljaHQgbWVociBhdWYgc2VsYmlnZW4KZWluLiBadW1pbmRlc3QsIHdlbm4gbWFuIGFuIFJvYmluIGdlc3RvcmJlbiBpc3QuIEljaCBrb2VubnRlIGRhcyBhYmVyCnZlcmlmaXppZXJlbi4KWnUgRW5zb2Y6IE1laW4gSGF1cHRhbmxpZWdlbiBpc3QgbmF0dWVybGljaCBuaWNodCwgZGFzcyBpY2ggbW9lZ2xpY2hzdCB2aWVsZQpUb2RlIHZvbiBTcGllbGVybiBiZWtvbW1lLiBEYXNzIGluIGRlciBUcm9sbGhvZWhsZSB1ZWJlcmhhdXB0IExldXRlIHN0ZXJiZW4sCmZhbmQgaWNoIHp1bWluZGVzdCBhbSBBbmZhbmcgc2VociBtZXJrd3VlcmRpZy4gTWVpbiBWZXJ3ZWlzIGF1ZiAic29nYXIgYmVpCkZha2V0b2RlbiIgc29sbHRlIGVpZ2VudGxpY2ggSGlud2VpcyBnZW51ZyBhdWYgZGllIChhbnp1endlaWZlbG5kZSkKRXJuc3RoYWZ0aWdrZWl0IG1laW5lciBBdXNzYWdlIHNlaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzZWx0c2FtZSBWb2VnZWwgKEFzdWthLCAxOC4gTWFpIDIwMDQsIDEzOjIwOjAyKToKRGVyIFJhYmUgdmVyd2FuZGVsdCBzaWNoIGluIGVpbmVuIFJhYmVuIHVuZCBmbGllZ3QgbmFjaCBXZXN0ZW4uCgpBc3VrYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNlbHRzYW1lIFZvZWdlbCAoTWFoYXJldCwgMTguIE1haSAyMDA0LCAxMzoyMDo0OCk6Cn4jISBybj1Bc3VrYSBydD0xMDg0ODc5MjAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NDg3OTIwMgpEYXMgaXN0IE1hZ2llLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaWNoIHd1c3N0ZSBlcyA6KSAoRWxiZXJldCwgMjEuIE1haSAyMDA0LCAxNzozODoxMSk6Cn4jISBvbj1FbGJlcmV0IG90PTEwODUxNTM4MTcgb2c9bWVnYXNjaG1hcnJuCkR1IHJ1ZnN0OiBHUklNTUJPUk4gOykKRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuCkh5ZHJhIGlzdCBkYSEKCipsb2wqCkVsYmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWFnaXNjaGUgVW5nZXJlaW10aGVpdGVuIChCb2luZywgMjEuIE1haSAyMDA0LCAxNzo0MzoyNSk6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMDg1MTU0MDA3IG9nPWQuZ2ViaXJnZQp+IyEgcm49Qm9pbmcgcnQ9MTA4NTE1Mzg4MyByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDg1MTQzMDgwCkRpZSBLYW1wZmJsZWNoZSBzaW5kIHNjaG5lbGxlciB1bWdlZmFsbGVuLCB3ZW5uIGljaCBzaWUgbWl0IEZldWVyYmFlbGxlbgpiZXdvcmZlbiBoYWJlLCBpY2ggZXJpbm5lcmUgbWljaC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNYWdpc2NoZSBVbmdlcmVpbXRoZWl0ZW4gKEJvaW5nLCAyMS4gTWFpIDIwMDQsIDE3OjQzOjI2KToKfiMhIG9uPUJvaW5nIG90PTEwODUxNTQwMjkgb2c9ZC5nZWJpcmdlCn4jISBybj1HbG9pbnNvbiBydD0xMDg1MTU0MDA3IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwODUxNDMwODAKTnVyIGd1dCwgZGFzcyBkaWUgdWViZXJoYXVwdCBuaWNodCBiZXRyb2ZmZW4gd2FyZW4gLi4uIDspCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1hZ2lzY2hlIFVuZ2VyZWltdGhlaXRlbiAoQm9pbmcsIDIxLiBNYWkgMjAwNCwgMTc6NDM6MjcpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwODUxNTQwNDUgb2c9ZC5nZWJpcmdlCn4jISBybj1Cb2luZyBydD0xMDg1MTU0MDI5IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwODUxNDMwODAKRmV1ZXJiYWVsbGUgYWJ3ZXJ0ZW4hCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1hZ2lzY2hlIFVuZ2VyZWltdGhlaXRlbiAoQm9pbmcsIDIxLiBNYWkgMjAwNCwgMTc6NDM6MjgpOgp+IyEgb249R2xvaW5zb24gb3Q9MTA4NTE1NDA0OSBvZz1kLmdlYmlyZ2UKfiMhIHJuPUJvaW5nIHJ0PTEwODUxNTQwMjkgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTA4NTE0MzA4MApIdWksIGhhc3QgZHUgZGFubiBldHdhIGRpZSBBYmVudGV1ZXIgbm9jaCB3ZWl0ZXIgYXVmZ2V3ZXJ0ZXQ/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTWFnaXNjaGUgVW5nZXJlaW10aGVpdGVuIChCb2luZywgMjEuIE1haSAyMDA0LCAxNzo0MzoyOSk6Cn4jISBvbj1Cb2luZyBvdD0xMDg1MTU0MDgzIG9nPWQuZ2ViaXJnZQp+IyEgcm49R2xvaW5zb24gcnQ9MTA4NTE1NDA0OSByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDg1MTQzMDgwCkZ1ZXJzIEFiZW50ZXVlciBhdWZ3ZXJ0ZW4gaXN0IEFyayB6dXN0YWVuZGlnIC4uLiAKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTWFnaXNjaGUgVW5nZXJlaW10aGVpdGVuIChCb2luZywgMjEuIE1haSAyMDA0LCAxNzo0MzozMCk6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMDg1MTU0MDg1IG9nPWQuZ2ViaXJnZQp+IyEgcm49Qm9pbmcgcnQ9MTA4NTE1NDAyOSByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDg1MTQzMDgwCkljaCBtZWluZSBsYXR1ZXJuaWNoIGRpZSBUYWJlbmV1cmVyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1hZ2lzY2hlIFVuZ2VyZWltdGhlaXRlbiAoTXVhZGliLCAyMS4gTWFpIDIwMDQsIDE4OjE5OjM3KToKfiMhIHJuPUJvaW5nIHJ0PTEwODUxNTQyMTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1MTQzMDgwCmRpZSBpZGlvdGVuIHNpbmQgdWVicmlnZW5zIG51biBlbmRndWVsdGlnIGFuZ2VzY2hsb3NzZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE1hZ2lzY2hlIFVuZ2VyZWltdGhlaXRlbiAoRGFya2xvciwgMjIuIE1haSAyMDA0LCAwNToyNDoyNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTA4NTE1NjM3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwODUxNDMwODAKR2FicyBkaWUgbmljaCBzY2hvbiBpbW1lcj8KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZvb29vb29vb29vb29vb2JhciAoUm9uZGEsIDIyLiBNYWkgMjAwNCwgMTY6Mzg6NTYpOgp+IyEgcm49Wm9vayBydD0xMDg1MjI3NDUzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTA4NTE4MTY4NgpUamEsIFpvb2suLi4gdW5kIHdlbm4gbWFuIGJlaSBzb2xjaGVuIEJlcmljaHRlbiB2b24gR2VsYWdlbiBpbiBNdWVuc3Rlcgp6dXNhZXR6bGljaCBpbiBFcmlubmVydW5nIHJ1ZnQsIHdpZSB2aWVsZSBLbmVpcGVuIGRpZSBNdWVuc3RlcmFuZXIgZHVyY2gKU3RhbW10aXNjaGUgYmVyZWl0cyBpbiBkaWUgUGxlaXRlIGdlZnVlaHJ0IGhhYmVuLCBtdXNzIG1hbiBzaWNoIGVjaHQgZnJhZ2VuLAp3aWUgZHVzc2VsaWcgbWFuIGluIE11ZW5zdGVyIHNlaW4gbXVzcywgdW0gbmUgS25laXBlIHp1IGVyb2VmZm5lbi4uLgoKUm9uZGEgKkpvaG4gRG9lcyBEaW5lciAtIFIuSS5QLioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNrZWxldHRlLi4uLiAoQXN1a2EsIDIyLiBNYWkgMjAwNCwgMTc6MTI6NDUpOgpBbHMgZWluIHNjaHdhcnplcyBTa2VsZXR0IHZlcnN1Y2h0LCBkZW4gV2VnIHp1IHZlcmxhc3Nlbiwga29tbXQgcGxvZXR6bGljaApMZWJlbiBpbiBkaWUgQmFldW1lISBEaWUgQWVzdGUgdW5kIFp3ZWlnZSBzY2hsYWdlbiBuYWNoIGlobS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2tlbGV0dGUuLi4uIChSb25kYSwgMjIuIE1haSAyMDA0LCAxNzoyNzowMik6Cn4jISBybj1Bc3VrYSBydD0xMDg1MjM4NzY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NTIzODc2NQpKYSwgamEuLi4ga2VpbmUgVmllcnRlbHN0dW5kZSBzcGFldGVyIGthbSBkYW5uLi4uCgoKW1RvZDpMYXJzXSBEaWUgc3RhcmtlbiBBcm1lIGRlcyBkdW5rbGVuIFdhbGRlcyBoYWJlbiBnZXJhZGUgQXN1a2EgdW1nZWJyYWNodC4KW1RvZDpMYXJzXSA8U2FtLCAxNzoyNToxMj4KW1RvZDpEaWUgc3RhcmtlbiBBcm1lIGRlcyBkdW5rbGVuIFdhbGRlc10gUnVoZSBpbiB1bnNlcmVyIHRvZWRsaWNoZW4gVW1hcm11bmchCltUb2Q6RGllIHN0YXJrZW4gQXJtZSBkZXMgZHVua2xlbiBXYWxkZXNdIDxTYW0sIDE3OjI1OjEyPgpbVG9kOkFzdWthXSBIbXBmISA8U2FtLCAxNzoyNToxMj4KClJvbmRhICpmdWVyIGVpbiBTa2VsZXR0IHBvc3RlbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNrZWxldHRlLi4uLiAoVmVjdG9yLCAyMy4gTWFpIDIwMDQsIDA0OjA0OjU4KToKfiMhIHJuPVJvbmRhIHJ0PTEwODUyMzk2MjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1MjM4NzY1Cndlbm4gd2lyIHNjaG9uIGRhYmVpIHNpbmQ6CgprbGVpbmVyIGF1c3p1ZyBhdXMgZGVyIGVyc3RlbiBuYWNodCBpbiBkZXIgZGFzIGhhdXMgYmV0cmV0ZW4gd3VyZGU6CgpbVG9kOkxhcnNdIEVpbiBzY2h3YXJ6ZXMgU2tlbGV0dCBoYXQgZ2VyYWRlIFR5bGFrIHVtZ2VicmFjaHQuIDwyMDoyNTozMz4KW1RvZDpFaW4gc2Nod2FyemVzIFNrZWxldHRdIFdpbGxrb21tZW4gaW0gQ2x1YiwgVHlsYWshIDwyMDoyNTozMz4KW1RvZDpMYXJzXSBFaW4gc2Nod2FyemVzIFNrZWxldHQgaGF0IGdlcmFkZSBFbGVuZGlsIHVtZ2VicmFjaHQuIDwyMDoyNTo0Mz4KW1RvZDpFaW4gc2Nod2FyemVzIFNrZWxldHRdIFdpbGxrb21tZW4gaW0gQ2x1YiwgRWxlbmRpbCEgPDIwOjI1OjQzPgpbVG9kOkxhcnNdIERpZSBzdGFya2VuIEFybWUgZGVzIGR1bmtsZW4gV2FsZGVzIGhhYmVuIGdlcmFkZSBFbGFpbmUgdW1nZWJyYWNodC4KW1RvZDpMYXJzXSA8MjA6MzU6MDM+CltUb2Q6RGllIHN0YXJrZW4gQXJtZSBkZXMgZHVua2xlbiBXYWxkZXNdIFJ1aGUgaW4gdW5zZXJlciB0b2VkbGljaGVuIFVtYXJtdW5nIQpbVG9kOkRpZSBzdGFya2VuIEFybWUgZGVzIGR1bmtsZW4gV2FsZGVzXSA8MjA6MzU6MDM+CltUb2Q6TGFyc10gRWluIHNjaHdhcnplcyBTa2VsZXR0IGhhdCBnZXJhZGUgVHlsYWsgdW1nZWJyYWNodC4gPDIwOjM1OjI1PgpbVG9kOkVpbiBzY2h3YXJ6ZXMgU2tlbGV0dF0gV2lsbGtvbW1lbiBpbSBDbHViLCBUeWxhayEgPDIwOjM1OjI1PgpbVG9kOkxhcnNdIEVpbmUgS3JhbmtoZWl0IGhhdCBnZXJhZGUgS2FtdWkgdW1nZWJyYWNodC4gPDIwOjM1OjQ1PgpbVG9kOkVpbmUgS3JhbmtoZWl0IHZlcmxpZWYgdG9lZGxpY2guIDwyMDozNTo0NT5dCltUb2Q6S2FtdWldIEhtbW0uIDwyMDozNTo0NT4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKW1RvZDpMYXJzXSBFaW4gc2Nod2FyemVzIFNrZWxldHQgaGF0IGdlcmFkZSBFbGFpbmUgdW1nZWJyYWNodC4gPDIwOjUyOjE5PgpbVG9kOkVpbiBzY2h3YXJ6ZXMgU2tlbGV0dF0gV2lsbGtvbW1lbiBpbSBDbHViLCBFbGVuZGlsISA8MjA6NTI6MTk+CltUb2Q6TGFyc10gRWluIHNjaHdhcnplcyBTa2VsZXR0IGhhdCBnZXJhZGUgRm9vYmFyIHVtZ2VicmFjaHQuIDwyMDo1MjoyMT4KW1RvZDpFaW4gc2Nod2FyemVzIFNrZWxldHRdIFdpbGxrb21tZW4gaW0gQ2x1YiwgRm9vYmFyISA8MjA6NTI6MjE+CltUb2Q6TGFyc10gRWluIHNjaHdhcnplcyBTa2VsZXR0IGhhdCBnZXJhZGUgUGl0ZmFsbCB1bWdlYnJhY2h0LiA8MjE6NDk6MjA+CltUb2Q6RWluIHNjaHdhcnplcyBTa2VsZXR0XSBXaWxsa29tbWVuIGltIENsdWIsIFBpdGZhbGwhIDwyMTo0OToyMD4KW1RvZDpMYXJzXSBEaWUgc3RhcmtlbiBBcm1lIGRlcyBkdW5rbGVuIFdhbGRlcyBoYWJlbiBnZXJhZGUgRGFya3dpbmcKW1RvZDpMYXJzXSB1bWdlYnJhY2h0LiA8MjE6NTk6NDc+CltUb2Q6RGllIHN0YXJrZW4gQXJtZSBkZXMgZHVua2xlbiBXYWxkZXNdIFJ1aGUgaW4gdW5zZXJlciB0b2VkbGljaGVuIFVtYXJtdW5nIQpbVG9kOkRpZSBzdGFya2VuIEFybWUgZGVzIGR1bmtsZW4gV2FsZGVzXSA8MjE6NTk6NDc+CltUb2Q6TGFyc10gRGVyIEJvZGVuIGVpbmVzIHRpZWZlbiBTY2hhY2h0ZXMgaGF0IGdlcmFkZSBFbGFpbmUgdW1nZWJyYWNodC4KW1RvZDpMYXJzXSA8MjI6MTE6MTE+ICAgICAgICAgICAgICAgICAgICAgICAgICAKW1RvZDpEZXIgQm9kZW4gZWluZXMgdGllZmVuIFNjaGFjaHRlcyB3YXIgZGllIFVyc2FjaGUgZWluZXIgc2VociBwbG9ldHpsaWNoZW4KICAgICBCcmVtc3VuZyBuYWNoIGVpbmVtIGxhbmdlbiBGYWxsLiBIYXQgd29obCB3ZWggZ2V0YW4uIDwyMjoxMToxMT5dCltUb2Q6TGFyc10gRWluIHNjaHdhcnplcyBTa2VsZXR0IGhhdCBnZXJhZGUgRGVlcGJsdWUgdW1nZWJyYWNodC4gPDIyOjExOjUxPgpbVG9kOkVpbiBzY2h3YXJ6ZXMgU2tlbGV0dF0gV2lsbGtvbW1lbiBpbSBDbHViLCBEZWVwYmx1ZSEgPDIyOjExOjUxPiAgICAgCgphbSAxNS42LiB3YWVyZSBkYSBkZXIgM3RlIGphaHJlc3RhZywgZWlnZW50bGljaCBlaW4gZ3V0ZXIgYW5sYXNzIG1hbCAKd2llZGVyIG5lbiBlcm5zdGVuIHZlcnN1Y2ggenUgbWFjaGVuPyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNrZWxldHRlLi4uLiAoQW1hcnlsbGlzLCAyMy4gTWFpIDIwMDQsIDExOjAxOjI3KToKfiMhIHJuPVZlY3RvciBydD0xMDg1Mjc3ODk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NTIzODc2NQpHcmVsbGdlbiBmb3IgUHJhZXNpISA6KSkKCkhhdCBTcGFzcyBnZW1hY2h0LCBkaWUgQWt0aW9uLgoKQW1hKiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2tlbGV0dGUuLi4uIChNYWFyZywgMjMuIE1haSAyMDA0LCAxMzo0NDo0NSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTA4NTMwMjg4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwODUyMzg3NjUKX0RyZWlfISBKYWhyZSBpc3QgZGFzIHNjaG9uIGhlcj8KCldhaG5zaW5uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTa2VsZXR0ZS4uLi4gKE11cGZlbCwgMjMuIE1haSAyMDA0LCAxNDowNDoyMyk6Cn4jISBybj1NYWFyZyBydD0xMDg1MzEyNjg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NTIzODc2NQpKYSBEdSBhbHRlciBTYWNrIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNb3Jnb3RoLCAyMy4gTWFpIDIwMDQsIDE1OjE5OjUzKToKW0ZyZXVuZGU6TWllemVdIGJpcyBnbGVpY2gKW0ZyZXVuZGU6TWllemVdIEBhbGVycwpbVG9kOkxhcnNdIEVpbiBSYXVjaGRhZW1vbiBoYXQgZ2VyYWRlIE1pZXplIHVtZ2VicmFjaHQuCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRElFIExvZXN1bmcgYmVpIFZpcmVucHJvYmxlbWVuIChNdXBmZWwsIDI0LiBNYWkgMjAwNCwgMTI6MDM6NDcpOgpodHRwOi8vd3d3Lmdlc3VuZGxlYmVuLmx1L0FuZ2Vib3REZXRhaWwuYXNwP0FydG5yPTU0CgpJY2ggZnJhZyBtaWNoLCB3ZXIgc293YXMga2F1ZnQuLi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCcmluZ3QgZGllIE1pbGNoIGluIFNpY2hlcmhlaXQhIChab29rLCAyNC4gTWFpIDIwMDQsIDE0OjU2OjQ2KToKW0t1bHR1cjpBbGJvaW4gc2luZ3QgUGFtcGVycyB6dSBlaHJlbiBlaW4gcGFhciBBcmJlaXRlcmthbXBmbGllZGVyXQpQYW1wZXJzIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCcmluZ3QgZGllIE1pbGNoIGluIFNpY2hlcmhlaXQhIChBbGJvaW4sIDI0LiBNYWkgMjAwNCwgMTU6MDM6MDApOgp+IyEgcm49Wm9vayBydD0xMDg1NDAzNDA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NTQwMzQwNgp1bmQgZXR3YXMgc3BhZXRlcjoKCltLdWx0dXI6QWxib2luXSBpY2ggd3VlcmRlIGF1Y2ggZ2VybmUgZnVlciBLYW1tZXJhZCBab29rIGVpbiBwYWFyIHJvdGUgTGllZGVyCltLdWx0dXI6QWxib2luXSBzaW5nZW4gOy0pCj4gRHUgaG9lcnN0IGVpbiBHcm9sbGVuLiBEZXIgVnVsa2FuIGlzdCBtYWwgd2llZGVyIGFrdGl2LgoKQWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNrZWxldHRlLi4uLiAoR2FzdDEsIDI0LiBNYWkgMjAwNCwgMTk6MzY6MjQpOgp+IyEgcm49TXVwZmVsIHJ0PTEwODUzMTM4NjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1MjM4NzY1Ck5lLCBvZGVyPyBEcmVpIEphaHJlIHNjaG9uPyBEYXMgd2FyIG5lbiB0b2xsZXIgVGFnIC4uLi4gbmllIHdpZWRlciBoYWIgaWNoIHNvCm5lbiBTY3JvbGwgZXJsZWJ0IDotKQoKQW5hYyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbm9wcGl4IGF1ZiBGZXN0cGxhdHRlIChHbG9pbnNvbiwgMjUuIE1haSAyMDA0LCAwMDo0NTowNSk6Cn4jISBvbj1MdWcgb3Q9MTA4NTQzODY0OSBvZz1tZWdhc2NobWFycm4KfiMhIHJuPU11cGZlbCBydD0xMDg1NDMxODk3IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwODU0MzE4OTcKQWxsZSBkb29mLgoKTHVnaWZlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFhhbmRyaWEtVmlkZW8gKEdyaW1tYm9ybiwgMjUuIE1haSAyMDA0LCAyMTozNjowOSk6Cn4jISBvbj1ab29rIG90PTEwODU1MTM3MDEgb2c9a3VsdHVyCn4jISBybj1MdWcgcnQ9MTA4NTUxMzY2NyByZz1rdWx0dXIKfiMhIHRpZD0xMDg1NTEzNjY3Clpvb2sgc2NoYXV0IEx1ZyBmcmFnZW5kIGFuIHVuZCB3aXNwZXJ0OiBJcyBkYXMgd2FzIGZ1ZXIgbWljaD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFhhbmRyaWEtVmlkZW8gKEdyaW1tYm9ybiwgMjUuIE1haSAyMDA0LCAyMTozNjoxMik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTA4NTUxMzc2MyBvZz1rdWx0dXIKfiMhIHJuPU11YWRpYiBydD0xMDg1NTEzNzQxIHJnPWt1bHR1cgp+IyEgdGlkPTEwODU1MTM2NjcKV293LCBkYSBtdXNzIGljaCBkZW4gVGFnIGphIGdsYXR0IHJvdCBpbSBLYWxlbmRlciBhbnN0cmVpY2hlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBYYW5kcmlhLVZpZGVvIChHcmltbWJvcm4sIDI1LiBNYWkgMjAwNCwgMjE6MzY6MzcpOgp+IyEgb249THVnIG90PTEwODU1MTM3ODUgb2c9a3VsdHVyCn4jISBybj1ab29rIHJ0PTEwODU1MTM3MDEgcmc9a3VsdHVyCn4jISB0aWQ9MTA4NTUxMzY2NwoKSm8gWm9vaywgZGFzIHdpcnN0IHNlbGJzdCBEdSBtb2VnZW4uIEVzIHNlaSBkZW5uLCBEdSBoYXNzdCBOaWdodHdpc2ggdW5kCldpdGhpbiBUZW1wdGF0aW9uIHVuZCBzdGVoc3QgZWhlciBhdWYgQmxhY2sgTWV0YWwuLi4KCkdyaW5zCkx1Z2lmZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWGFuZHJpYS1WaWRlbyAoR3JpbW1ib3JuLCAyNS4gTWFpIDIwMDQsIDIxOjQwOjExKToKfiMhIG9uPVpvb2sgb3Q9MTA4NTUxMzg1NyBvZz1rdWx0dXIKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDg1NTEzNzcxIG9nPXNjaG1hcnJuCn4jISBvbj1NdWFkaWIgb3Q9MTA4NTUxMzc0MSBvZz1rdWx0dXIKfiMhIHJuPVpvb2sgcnQ9MTA4NTUxMzcwMSByZz1rdWx0dXIKfiMhIHRpZD0xMDg1NTEzNjY3CmRhIGZhZWxsdCBtaXIgd2llZGVyIHdhcyBlaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFhhbmRyaWEtVmlkZW8gKEdyaW1tYm9ybiwgMjUuIE1haSAyMDA0LCAyMTo0MDoxMik6Cn4jISBvbj1ab29rIG90PTEwODU1MTM4ODcgb2c9a3VsdHVyCn4jISBybj1ab29rIHJ0PTEwODU1MTM4NTcgcmc9a3VsdHVyCn4jISB0aWQ9MTA4NTUxMzY2NwpBbiBtaXIgc29sbCBlcyBpbSBQcmluemlwIG5pY2h0IGxpZWdlbjsgYWJlciBKdW5pIGhhZXR0IGljaCBhdWNoIHdpZWRlcgpaZWl0LgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFhhbmRyaWEtVmlkZW8gKEdyaW1tYm9ybiwgMjUuIE1haSAyMDA0LCAyMTo0MDoxMyk6Cn4jISBvbj1NdWFkaWIgb3Q9MTA4NTUxMzkwOSBvZz1rdWx0dXIKfiMhIHJuPVpvb2sgcnQ9MTA4NTUxMzg4NyByZz1rdWx0dXIKfiMhIHRpZD0xMDg1NTEzNjY3CmVuZGUganVuaT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFhhbmRyaWEtVmlkZW8gKEdyaW1tYm9ybiwgMjUuIE1haSAyMDA0LCAyMTo0MDoxNCk6Cn4jISBvbj1ab29rIG90PTEwODU1MTM5MjEgb2c9a3VsdHVyCn4jISBybj1NdWFkaWIgcnQ9MTA4NTUxMzkwOSByZz1rdWx0dXIKfiMhIHRpZD0xMDg1NTEzNjY3ClNjaGxlY2h0LCBiaW4gaWNoIGluIEthbW1icml0c2NoZS4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBYYW5kcmlhLVZpZGVvIChHcmltbWJvcm4sIDI1LiBNYWkgMjAwNCwgMjE6NDA6MTUpOgp+IyEgb249TXVhZGliIG90PTEwODU1MTM5Mzcgb2c9a3VsdHVyCn4jISBybj1ab29rIHJ0PTEwODU1MTM5MjEgcmc9a3VsdHVyCn4jISB0aWQ9MTA4NTUxMzY2NwpqdWxpPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogWGFuZHJpYS1WaWRlbyAoR3JpbW1ib3JuLCAyNS4gTWFpIDIwMDQsIDIxOjQwOjE2KToKfiMhIG9uPVpvb2sgb3Q9MTA4NTUxMzk3MSBvZz1rdWx0dXIKfiMhIHJuPU11YWRpYiBydD0xMDg1NTEzOTM3IHJnPWt1bHR1cgp+IyEgdGlkPTEwODU1MTM2NjcKS29lbm50IHBhc3Nlbi4gV2FzIHNwcmFuZyBmdWVyIG1pY2ggbm9jaCBtYWwgcmF1cyBhdXNzZXIgZWluZW0gQmllcj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBYYW5kcmlhLVZpZGVvIChHcmltbWJvcm4sIDI1LiBNYWkgMjAwNCwgMjE6NDA6MTcpOgp+IyEgb249TXVhZGliIG90PTEwODU1MTQwMDUgb2c9a3VsdHVyCn4jISBybj1ab29rIHJ0PTEwODU1MTM5NzEgcmc9a3VsdHVyCn4jISB0aWQ9MTA4NTUxMzY2NwpndXRlIGdlc2VsbHNjaGFmdCwgZGllIG11c2lrZSB1bmQgbm9jaCBtZWhyIGJpZXIKbHVnIHdpZSBzaWVodHMgYXVzPwp1bmQga29tbXQgbnVuIGRpZXNlciBnYWFsIG1pdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFhhbmRyaWEtVmlkZW8gKEx1ZywgMjUuIE1haSAyMDA0LCAyMTo0MTozMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA4NTUxNDAxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwODU1MTM2NjcKZ2FhaGw/IE5lZSwgZGVyIGhhdCBnZXJhZGUgMTggTW9uYXRlIGJla29tbWVuLi4uIHRoZW9yZXRpc2NoIGphLCBhYmVyIGVzIGdpYnQKMiBGZXN0aXZhbC1Xb2NoZW5lbmRlIGltIEp1bGkhIFdpdGggRnVsbCBGb3JjZSB1bmQgWmlsbG8gRmVzdGl2YWwsIGRhIGdlaHQgZXMKbmljaHQuLi4KCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFhhbmRyaWEtVmlkZW8gKE11YWRpYiwgMjUuIE1haSAyMDA0LCAyMTo0MjoyMSk6Cn4jISBybj1MdWcgcnQ9MTA4NTUxNDA5MyByZz1zY2htYXJybgp+IyEgdGlkPTEwODU1MTM2NjcKZGFubiBtYWlsIG1hbCBkaWUgcmVzdGxpY2hlbiB3ZSdzIGFuIGRlbiBrYXB1emVudHJhZWdlciB1bmQgbWljaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFhhbmRyaWEtVmlkZW8gKFpvb2ssIDI1LiBNYWkgMjAwNCwgMjE6NDU6MjkpOgp+IyEgcm49TXVhZGliIHJ0PTEwODU1MTQxNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1NTEzNjY3CkdlbmF1LiBJY2ggbmVobSBtaXIgZGFubiBhdWNoIG5vY2ggbmVuIFdhbGttYW4gdW5kIG5lbiBCdWNoIG1pdCwgZGFtaXQgaWNoCmltIEdlZmFlaHJ1bmdzZmFsbGUgZGFzIEdlZ3J1bnplIG5pY2h0IGVydHJhZ2VuIG11c3MuCgpXYXJ1bSBzaW5kIHdpciBzY2hvbiB3aWVkZXIgaW4gU2NobWFycm4/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFhhbmRyaWEtVmlkZW8gKEdyaW1tYm9ybiwgMjUuIE1haSAyMDA0LCAyMTo0NTo1Myk6Cn4jISBybj1ab29rIHJ0PTEwODU1MTQzMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1NTEzNjY3CldlaWwgZXVyZSBQcml2YXR1bnRlcmhhbHR1bmcgbnVuIGF1Y2ggYmVpbSBiZXN0ZW4gV2lsbGVuIGtlaW5lIEt1bHR1ciBpc3QuCk9kZXIgaGF0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogWGFuZHJpYS1WaWRlbyAoWm9vaywgMjUuIE1haSAyMDA0LCAyMTo0NjoxMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA4NTUxNDM1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwODU1MTM2NjcKV2lsbHN0ZSBhdWNoIGtvbW1lbj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogWGFuZHJpYS1WaWRlbyAoTHVnLCAyNS4gTWFpIDIwMDQsIDIxOjQ2OjI3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDg1NTE0MzUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NTUxMzY2NwpVbmZ1ZyEKCkx1Z2lmZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBYYW5kcmlhLVZpZGVvIChHcmltbWJvcm4sIDI1LiBNYWkgMjAwNCwgMjE6NDg6MDcpOgp+IyEgcm49THVnIHJ0PTEwODU1MTQzODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1NTEzNjY3CkljaCB3ZWlzcyBuaWNodCB3b3J1bSBlcyBnZWh0LCBhYmVyIG1laW4gVGVybWlua2FsZW5kZXIgaGF0IGVyc2NocmVja2VuZAp3ZW5pZ2UgTHVlY2tlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFhhbmRyaWEtVmlkZW8gKFpvb2ssIDI1LiBNYWkgMjAwNCwgMjE6NDk6MzQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwODU1MTQ0ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1NTEzNjY3CkljaCB3ZWlzcyBlcyBhdWNoIG5pY2h0IG1laHIgZ2VuYXUuIEF1c3NlciwgZGFzcyBlcyBrb21pc2NoZSBNdXNpayBnaWJ0LCAKQWxrb2hvbCBpbiBNYXNzZW4gdW5kIGRhcyBnYW56ZSBpbiBLYXJscnVoZSBzdGVpZ3QuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFhhbmRyaWEtVmlkZW8gKEx1ZywgMjUuIE1haSAyMDA0LCAyMTo1MDoxNik6Cn4jISBybj1ab29rIHJ0PTEwODU1MTQ1NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1NTEzNjY3Ck11YWRpYiB3aWxsIGVpbmUgRWluZnVlaHJ1bmcgaW4gQmxhY2sgTWV0YWwuIERhZnVlciBnaWJ0IGVyIG1pciB2aWVsIEJpZXIgOykKRGFzIHdpcmQgZXh0cmVtIC4uLiBhZWggLi4uIGx1c3RpZyAuLiBhZWggLi4uID8KCkx1Z2lmZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBYYW5kcmlhLVZpZGVvIChHcmltbWJvcm4sIDI1LiBNYWkgMjAwNCwgMjE6NTA6NTQpOgp+IyEgcm49Wm9vayBydD0xMDg1NTE0NTc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NTUxMzY2NwpIb2VydCBzaWNoIGludGVyZXNzYW50IGFuLiBBYmVyIGljaCBnZWggZXJzdG1hbCBpbiBkaWUgS3VlY2hlLCB3byBlcyBrZWluZQpNdXNpayBnaWJ0LCBBbGtvaG9sIGluIE1hc3Moc3opZW4gdW5kIFNwYXJnZWwgdW5kIEthcnRvZmZlbG4gaW4gTWFzcyhzcyllbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFhhbmRyaWEtVmlkZW8gKE11YWRpYiwgMjUuIE1haSAyMDA0LCAyMTo1MDo1NSk6Cn4jISBybj1MdWcgcnQ9MTA4NTUxNDYxNiByZz1zY2htYXJybgp+IyEgdGlkPTEwODU1MTM2NjcKbnVuCmVzIHdhciBnYW56IGVpbmZhY2gsIGR1IHdvbGx0ZXN0IG11c2lrIG1pdGJyaW5nZW4gdW5kIHdhcyBkYXp1IHNhZ2VuCmljaCBiZXNvcmdlIGJpZXIgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogWGFuZHJpYS1WaWRlbyAoWm9vaywgMjUuIE1haSAyMDA0LCAyMTo1MjoyMCk6Cn4jISBybj1NdWFkaWIgcnQ9MTA4NTUxNDY1NSByZz1zY2htYXJybgp+IyEgdGlkPTEwODU1MTM2NjcKQWJlciB3YXMgenVtIEpvZiBoYWIgaWNoIGVpZ2VudGxpY2ggZGFtaXQgenUgc2NoYWZmZW4/IEVyc3RlbnMgbWFnIGljaCAKTHVncyBNdXNpayBudXIgYmVkaW5ndCB1bmQgendlaXRlbnMgdHJpbmsgaWNoIGVpZ2VudGxpY2ggYXVjaCBrZWluIEJpZXIsCnNjaG9uIGdhciBuaWNodCB2ZXJ0cmFnZSBpY2ggZXMuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFhhbmRyaWEtVmlkZW8gKE11YWRpYiwgMjUuIE1haSAyMDA0LCAyMTo1Mzo1Mik6Cn4jISBybj1ab29rIHJ0PTEwODU1MTQ3NDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1NTEzNjY3CndpZSBkdSBtYW5jaG1hbCBhdWYgc2VsdHNhbWUgd2Vpc2UgaW4gd2FzIHdlaXNzIGljaCBoaW5laW5nZXJhZXRzdCBpc3QgbWlyIGVoCmJpcyBoZXV0ZSBlaW4gcmFldHNlbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IFhhbmRyaWEtVmlkZW8gKFpvb2ssIDI1LiBNYWkgMjAwNCwgMjE6NTQ6MTIpOgp+IyEgcm49TXVhZGliIHJ0PTEwODU1MTQ4MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1NTEzNjY3Ck1pciBhdWNoLCBtaXIgYXVjaC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogWGFuZHJpYS1WaWRlbyAoTHVnLCAyNS4gTWFpIDIwMDQsIDIxOjU0OjI4KToKfiMhIHJuPU11YWRpYiBydD0xMDg1NTE0ODMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NTUxMzY2NwpBdWYgamVkZW4gRmFsbCBtdXN0IER1IGRhYmVpIHNlaW4gWm9vay4gV2Vpc3MgbmljaHQgbWVociB3aWVzbywgaXN0IGFiZXIgc28gOykKCkx1Z2lmZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBYYW5kcmlhLVZpZGVvIChab29rLCAyNS4gTWFpIDIwMDQsIDIxOjU0OjU2KToKfiMhIHJuPUx1ZyBydD0xMDg1NTE0ODY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NTUxMzY2NwpJY2ggYXJtZXIsIGFybWVyLCBhcm1lciBUcm9wZi4gV2VyZGVuIGRlbm4gd2VuaWdzdGVucyBaYXViZXJ0cmlja3MgYXVmZ2UtCmZ1ZWhydD8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogWGFuZHJpYS1WaWRlbyAoTXVhZGliLCAyNS4gTWFpIDIwMDQsIDIxOjU1OjA0KToKfiMhIHJuPVpvb2sgcnQ9MTA4NTUxNDg5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODU1MTM2NjcKbmVpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUGZpbmdzdGVuIGluIFd1cHBlcnRhbCAoR3JpbW1ib3JuLCAyNi4gTWFpIDIwMDQsIDE0OjQyOjEwKToKfiMhIHJuPUdhc3QyIHJ0PTEwODU1NzUzMTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1NTU0NDY0ClVuZCBpY2ggbG9lc2NoZSBzZWxiZXIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFBmaW5nc3RlbiBpbiBXdXBwZXJ0YWwgKFpvb2ssIDI2LiBNYWkgMjAwNCwgMTQ6NDk6MDgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwODU1NzUzMzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1NTU0NDY0CkRhcyBpc3QgamEgaG9jaCBpbnRlcmVzc2FudCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoUGl0ZmFsbCwgMjYuIE1haSAyMDA0LCAxNjozNDozOSk6CltTZWhlcjpNb3Jnb3RoXSB1bmQgaWNoIGhhYiB0b2Rlc2ZvbGdlbiA6KAoKW1RvZDpMYXJzXSBFaW4gT3JrIGhhdCBnZXJhZGUgTW9yZ290aCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBPcmtdIFdpciBzaW5kIE9yayEgV2lkZXJzdGFuZCBpc3QgendlY2tsb3MhIERlaW4gV2lzc2VuIHVuZCBEZWluZQpbVG9kOkVpbiBPcmtdIEF1c3J1ZXN0dW5nIHd1cmRlbiBhc3NpbWlsaWVydC4KCgpzY25yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBYYW5kcmlhLVZpZGVvIChEYXJrbG9yLCAyNi4gTWFpIDIwMDQsIDE4OjI5OjU5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDg1NTE0MDExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NTUxMzY2NwpWZXJsZWd0IGlociBkYXMgbm9jaCBvZWZ0ZXIgOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFhhbmRyaWEtVmlkZW8gKFpvb2ssIDI2LiBNYWkgMjAwNCwgMTg6MzA6NDcpOgp+IyEgcm49RGFya2xvciBydD0xMDg1NTg4OTk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NTUxMzY2NwpOYWNoZGVtIEdyaW1tYm9ybiBudW4gaW0gUGZpbmdzdC1VcmxhdWIgaXN0IHVuZCBhdWYgZGVyIExhdWVyIGxpZWd0LCBkYXNzIGVyCmFsbGVzIHZlcmxlZ2VuIGthbm4sIHRyYXVlIGljaCBtaWNoIG5pY2h0IG1laHIuIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogWGFuZHJpYS1WaWRlbyAoRGFya2xvciwgMjYuIE1haSAyMDA0LCAxODozMjo1Myk6Cn4jISBybj1ab29rIHJ0PTEwODU1ODkwNDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1NTEzNjY3Ck9oIGRhcyBoYWV0dGUgaW50ZXJlc3NhbnQgd2VyZGVuIGtvZW5uZW4gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdWZ3ZXJ0dW5nISAoWm9vaywgMjYuIE1haSAyMDA0LCAxOTo0ODoxNCk6Cn4jISBybj1NYWFyZyBydD0xMDg1NTkzNTc2IHJnPWQud3Vlc3RlCn4jISB0aWQ9MTA4NTU5MzU3NgpCVVVVVVVVVVVVVVVVVVVVVVVVVVVIISAKClpvb2sgc29ydGllcnQgc2VpbmUgRmFlaG5jaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdyYUthLWV2b2x1dGlvbmVuIChHcmltbWJvcm4sIDI3LiBNYWkgMjAwNCwgMTc6MjI6MTQpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwODU2NzEzMjggb2c9aGFyZHNvZnR3YXJlCn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA4NTY2NTM3NiByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDg1NjY1Mzc2CkFsc28sIG1pdCBlaW5lciBBVEkgUmFkZW9uIDkyMDAgZ2VodCBkYXMgbXVkZGVuIHdlc2VudGxpY2ggc2NobmVsbGVyIHVuZApmbHVlc3NpZ2VyLCBiZXN0aW1tdC4gRnVlciBQcm9ncmVzc3F1ZXN0IGhpbmdlZ2VuIGVpZ25ldCBzaWNoIGRpZSBHRm9yY2U0CmJlc3Nlci4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHcmFLYS1ldm9sdXRpb25lbiAoQW50aGVhLCAyNy4gTWFpIDIwMDQsIDE3OjIzOjM4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDg1NjcxMzM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NTY2NTM3NgpJc3QgZGFzIGRpZSBtaXQgZGVtIG5ldWVuIFVsdHJhLUFTQ0lJLUFjY2VsZXJhdG9yPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR3JhS2EtZXZvbHV0aW9uZW4gKE1vcmdvdGgsIDI3LiBNYWkgMjAwNCwgMTc6MjU6MjQpOgp+IyEgcm49QW50aGVhIHJ0PTEwODU2NzE0MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1NjY1Mzc2ClVXMTMyLUFTQ0lJIC4uLiBkYW1pdCBEdSBhdWNoIDEzMiBTcGFsdGVuYnJlaXRlIHNjaG5lbGxlciBkYXJzdGVsbGVuIGthbm5zdC4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHcmFLYS1ldm9sdXRpb25lbiAoQW50aGVhLCAyNy4gTWFpIDIwMDQsIDE3OjI1OjQwKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA4NTY3MTUyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwODU2NjUzNzYKZ2VpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogR3JhS2EtZXZvbHV0aW9uZW4gKE1vcmdvdGgsIDI3LiBNYWkgMjAwNCwgMTc6MjY6MjgpOgp+IyEgcm49QW50aGVhIHJ0PTEwODU2NzE1NDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1NjY1Mzc2ClVuZCBkaWUgWEwtVmVyc2lvbiB1bnRlcnN0dWV0enQgc29nYXIgYXN5bmMtc2Nyb2xsIDopCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogR3JhS2EtZXZvbHV0aW9uZW4gKEFudGhlYSwgMjcuIE1haSAyMDA0LCAxNzoyNzowNik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwODU2NzE1ODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1NjY1Mzc2CndvaGwgYXVjaCBub2NoIG1pdCA5MjAwY3BzPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogR3JhS2EtZXZvbHV0aW9uZW4gKEdyaW1tYm9ybiwgMjcuIE1haSAyMDA0LCAxNzoyNzoyMik6Cn4jISBybj1BbnRoZWEgcnQ9MTA4NTY3MTU0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwODU2NjUzNzYKRGllIGhhdCBlaW5lbiAxMjgtYml0dGlnZW4gQnVzLCBkZXIgZGllIERhcnN0ZWxsdW5nIGRlciBlcnN0ZW4gMTI4IEFTQ0lJClplaWNoZW4gbWFzc2l2IGJlc2NobGV1bmlndC4gRWluIHppZW1saWNoZXIgRmVnZXIsIGljaCBoYWIgZGFzIG1hbCBpbiBuZXIgRGVtbwpnZXNlaGVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBHcmFLYS1ldm9sdXRpb25lbiAoR3JpbW1ib3JuLCAyNy4gTWFpIDIwMDQsIDE3OjI3OjU2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDg1NjcxNjQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NTY2NTM3NgpOYXR1ZXJsaWNoIHNvbGx0ZSBtYW4gZGEgYXVmIFVtbGF1dGUgdmVyemljaHRlbiwgc29uc3QgYnJpY2h0IGRpZSBQZXJmb3JtYW5jZQpzY2hvbiB6aWVtbGljaCBkZXV0bGljaCBlaW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEdyYUthLWV2b2x1dGlvbmVuIChXaGl0ZXRpZ2VyLCAyNy4gTWFpIDIwMDQsIDE3OjI4OjI0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDg1NjcxNjc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NTY2NTM3NgpVaSwgc3VwZXIgLi4gYmVpIDB2ZXJraWxsIGxhZ2cgaWNoIG1hbmNobWFsIGdhbnogc2Nob2VuIGhpbnRlcmhlciwgaW0gTW9tZW50LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogR3JhS2EtZXZvbHV0aW9uZW4gKEFudGhlYSwgMjcuIE1haSAyMDA0LCAxNzozMjozOSk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwODU2NzE3MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1NjY1Mzc2CkdpYnQgZXMgZnVlciBkaWUgYXVjaCBlaW5lbiBOZXRoYWNrLVBhdGNoPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogR3JhS2EtZXZvbHV0aW9uZW4gKE1hcmN1cywgMjcuIE1haSAyMDA0LCAxODozMjoyNSk6Cn4jISBybj1BbnRoZWEgcnQ9MTA4NTY3MTk1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwODU2NjUzNzYKSW5zdGFsbGllcmUgZG9jaCBtYWwgZGFzICJiYiIgYWFsaWIgRGVtbyAuLi4gZGEgYnJhdWNodHMgbmUgc2NobmVsbGUKZ3JhZmlra2FydGUgOykKCkNpYW8sIE1hcmN1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEdyYUthLWV2b2x1dGlvbmVuIChHcmltbWJvcm4sIDI3LiBNYWkgMjAwNCwgMTg6MzQ6NTEpOgp+IyEgcm49TWFyY3VzIHJ0PTEwODU2NzU1NDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1NjY1Mzc2CkljaCB1ZWJlcnNldHplIG1hbDogIiJiYiIgYWFsaWIgRGVtbyIgYmVkZXV0ZXQ6IEJpZyBCcm90aGVyIGRlbW9uc3RyaWVydCBlaW5lClNjaGVpc3NiaWJsaW90aGVrLiBLZWluciBBaG51bmcsIHdpZXNvIG1hbiBkaWUgaW5zdGFsbGllcmVuIHdvbGxlbiBzb2xsdGUuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uIChLYXZhbGllciwgMjguIE1haSAyMDA0LCAxMToyOToxMSk6CkVpbiBzY2h3YXJ6ZXIgU2hlcmlmZiByZW5udCBnZWdlbiBkaWUgZ2VzY2hsb3NzZW5lIFR1ZXIgenVtIEdsb2NrZW50dXJtIGltCldlc3RlbiB1bmQgdGF1bWVsdCB2b2xsZXIgU2NobWVyemVuIHp1cnVlY2suCkNlcmVndXQgdm9uIFRob2wga2ljaGVydCwgbGFldWZ0IHJvdCBhbiwgZHJlaHQgc2ljaCB3ZWcgdW5kIHBydXN0ZXQgZXJuZXV0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXPyAoQW5hdG9sLCAzMC4gTWFpIDIwMDQsIDAxOjA5OjUyKToKW0FsbGdlbWVpbjpFbnNvZl0gaG1tIGRhcyB6ZXVnLCBkYXMgYmVpbSBiYWxyb2cgbGllZ3QgaXN0IG5pY2h0IG1laW5zCltUb2Q6TGFyc10gRWluZSBTcGlubmUgaGF0IGdlcmFkZSBFbnNvZiB1bWdlYnJhY2h0LgoKTmVpbi4gRGVpbnMgbGllZ3QgYmVpIGRlciBTcGlubmUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXVEY/IChOb25uZSwgMzAuIE1haSAyMDA0LCAxMDoxNTo1Nyk6Cn4jISBybj1QaG9ib3MgcnQ9MTA4NTkwNDgzNyByZz13d3cKfiMhIHRpZD0xMDg1OTA0NjUxCkljaCBkYWNodGUsIGRhc3Mgc2VpIGVpbiBUZXN0LCBkYW1pdCBzaWNoIG51ciBMZXV0ZSBkYXMgVmlkZW8gYW5zY2hhdWVuLCBkaWUKaW4gZGVyIExhZ2Ugc2luZCwgZGFzcyByaWNodGlnIGVpbnp1b3JkbmVuIHVuZCBuaWNodCB6dW0gVm9yYmlsZCB6dSBuZWhtZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXPyAoRW5zb2YsIDMwLiBNYWkgMjAwNCwgMTk6NTM6NDApOgp+IyEgcm49QW5hdG9sIHJ0PTEwODU4NzIxOTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg1ODcyMTkyCkpldHp0IG5pY2h0IG1laHIgKmcqLiBEaWUgU3Bpbm5lIHNvbGx0ZSBhdWNoIHZlcndlc3Qgc2Vpbi4gCgpFbnNvZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxBIChNb3Jnb3RoLCAgMS4gSnVuIDIwMDQsIDE1OjE2OjQ0KToKVE9ELVNrZWxldHQgOiBMb3JkIGhhdCBlaW4gU2tlbGV0dCBnZWtpbGx0IQpFVkVOVC1LRUxMRVI0IDogTG9yZCBoYXQgZGllIFNhcmtvcGhhZ2UgZ2VvZWZmbmV0LgpbVG9kOkxhcnNdIEVpbmUgTXVtaWUgaGF0IGdlcmFkZSBMb3JkIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBNdW1pZV0gU29sbCBpY2ggRGlyIGVpbmUgTXVsbGJpbmRlIGxlaWhlbj8KCk0qIGtpY2hlcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTEEgKE1haGFyZXQsICAxLiBKdW4gMjAwNCwgMjM6NTI6NDIpOgp+IyEgcm49TW9yZ290aCBydD0xMDg2MDk1ODA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NjA5NTgwNApJY2ggc2VoIGRhIGdlcmFkZSBkZW4gV2l0eiBuaWNodCBkcmluLiAgS2FubiBtaXIgZGFzIGJpdHRlIGVpbmVyIGVya2xhZXJlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFJlIGF1ZiBlaW5lbiBBcnRpa2VsIGlyZ2VuZGVpbmVyIFJ1YnJpay4gKEdyaW1tYm9ybiwgIDIuIEp1biAyMDA0LCAyMTo1NDowOCk6Cn4jISBybj1CYW1iaSBydD0xMDg2MjA0MTgyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDg2MTk3NDAxCkRhcyBpc3QgZGVyIEdydW5kLCB3YXJ1bSBtYW4gZG9ydCBiZWltIFNjaHVzdGVyIGRhcyBXZWNoc2Vsc2dlbGQgaW1tZXIgYXVmIGRlbgpCb2RlbiBzY2htZWlzc2VuIG11c3MgdW5kIGRyYXVmIHJ1bWxhZXVmdCAtIG1hbiBnZWh0IGF1ZiBTY2h1c3RlcnMgUmFwcGVuLgoKR2RBIHdpcmZ0IDUgRXVyb2NlbnQgaW4gZGllIFNjaGxlY2h0ZS1LYWxhdWVyLURvc2UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IElQIGJla2FubnRnZWJlbiAoUm9uZGEsICAyLiBKdW4gMjAwNCwgMjM6MzU6MzMpOgp+IyEgcm49SHVtbmkgcnQ9MTA4NjIxMjAyMSByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDg2MjEwNzczCi4uLiB3ZWlsIGVyIGRhbm4gbmUgU3BpZWxwYXVzZSB3ZWdlbiBTa3JpcHRlbiBrYXNzaWVydD8KClJvbmRhCgouLi4gd3VlcmRlIG5lbiBadWdyaWZmIGF1ZiBuZSBXZWJzZWl0ZSBtYWNoZW4gdW5kIGltIExvZyBuYWNoc2VoZW4sIHdlciBkYQpncmFkIHp1Z2VncmlmZmVuIGhhdC4uLj8gT2RlciBiZXNzZXIgbm9jaDogbmUgV2Vic2VpdGUgYXVmcnVmZW4sIGRpZSAgZWluZW0KZGllIGVpZ2VuZSBJUCBhdXNnaWJ0Li4uPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVmVnYW5lciB1bmQgc28gKE5vbm5lLCAgMy4gSnVuIDIwMDQsIDE3OjQ3OjI2KToKfiMhIHJuPUFsYm9pbiBydD0xMDg2MjY5OTU0IHJnPXNjaG1hcnJuLm5ldGRpZ2VzdAp+IyEgdGlkPTEwODYyNjk3MDAKQmVzaXR6dCBkdSBldHdhIExlZGVyc2NodWhlLCBkdSBNb2VyZGVyPyE/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadSBzcGFldC4uLiAoQnJhbiwgIDMuIEp1biAyMDA0LCAxOTo1MDoxOCk6CltUb2Q6TGFyc10gRWluZSBzY2h3ZXJlIEtyYW5raGVpdCBoYXQgZ2VyYWRlIExvcmQgdW1nZWJyYWNodC4KW0JlaWxlaWQ6S25hcnpdIGJlaWxlaWQKW0JlaWxlaWQ6RW5zb2ZdIEJlaWxlaWQKTWVkaWMgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgpNZWRpYyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFhPUiAoT2dvLCAgNC4gSnVuIDIwMDQsIDAwOjM2OjMzKToKfiMhIG9uPU9nbyBvdD0xMDg2MzAyMTc1IG9nPXd3dwp+IyEgcm49UGhvYm9zIHJ0PTEwODYyOTMwOTEgcmc9d3d3Cn4jISB0aWQ9MTA4NjI5MzA5MQpXMzJkYXNtIGtvZW5udGUgaGVsZmVuLiA7LT4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWE9SIChQaG9ib3MsICA1LiBKdW4gMjAwNCwgMTU6MDk6MDUpOgp+IyEgcm49T2dvIHJ0PTEwODYzMDIxOTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg2MjkzMDkxCkRhcyBzY2hvZW5lIGJlaSBTcGllbGVuIHdpZSBTb2tvYmFuIGlzdCwgZGFzcyBkaXIgU2NodW1tZWxuIG5pY2h0CndlaXRlcmhpbGZ0LiBXaWUgd2lsbHN0IGR1IGJlaSBlaW5lbSBCbGljayBpbiBkZW4gU291cmNlY29kZSBzZWhlbiwKd2llIG1hbiBlaW4gU3BpZWxmZWxkIGluIG1pbmltYWxlciBadWd6YWhsIChiencuIEtpc3Rlbi1TY2hpZWJlemFobCkKYmVlbmRldD8KClBob2JvcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVmVnYW5lciB1bmQgc28gKEdyaW1tYm9ybiwgIDYuIEp1biAyMDA0LCAxNTo1ODo0Myk6Cn4jISBybj1Dcm9mdCBydD0xMDg2NTMwMjU3IHJnPXNjaG1hcnJuLm5ldGRpZ2VzdAp+IyEgdGlkPTEwODYyNjk3MDAKQWxzbywgZXMgZ2lidCBqYSB2aWVsZSByZWdleHAtVmVyc2lvbmVuLCBhYmVyIGRpZSBpc3QgbWlyIHdpcmtsaWNoIG5ldS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtvYm9sZGUuLi4gKE1vcmdvdGgsICA2LiBKdW4gMjAwNCwgMTg6Mzc6NTYpOgp+IyEgcm49SHVtbmkgcnQ9MTA4NjUzOTY2NiByZz1kLnBvbGFyCn4jISB0aWQ9MTA4NjUzOTY2NgpPY2ggd2llIHN1ZXNzLgoqZHJhY2hlbiB0YWV0c2NoZWwqCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5kIHdhcnVtIG1hY2h0IGVycyBuaWNodCA/IChLcmltYXJpb2wsICA2LiBKdW4gMjAwNCwgMjA6MjA6NDYpOgpmbiBpd2VpbiBzY2hsdWVzc2VsCkl3ZWluIHNhZ3Q6IEhhdCBFcmVuYyB2ZXJzY2hsdWNrdC4KPiAKZm4gaXdlaW4gYmF1Y2ggYXVmc2NobmVpZGVuCkl3ZWluIHBvbGllcnQgc2VpbiBTY2h3ZXJ0IHVuZCB6ZWlndCBhdWYgRXJlbmMuCj4gbmljawoKRHUgbmlja3N0IHp1c3RpbW1lbmQuCgpNZkcKS3JpbWFyaW9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IENsYW4gUnl1IChBbmF0b2wsICA4LiBKdW4gMjAwNCwgMDc6MTU6MjMpOgp+IyEgb249QW5hdG9sIG90PTEwODY2NzE3MTcgb2c9Z2lsZGVuLnRhbmppYW4KfiMhIHJuPUdyaW1tYm9ybiBydD0xMDg2NjcxMDcyIHJnPWdpbGRlbi50YW5qaWFuCn4jISB0aWQ9MTA4NjY1NjM5MApCcmFuIHdhciBhdWNoIG1hbCBlaW4gbWFlbm5saWNoZXIgQ2hhcmFrdGVyLiA7bykKCkFuYXRvbCB3ZWlzcyBlcy4gR2VuYXUuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBDbGFuIFJ5dSAoQnJhbiwgIDguIEp1biAyMDA0LCAxMDoxMjo0MSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA4NjY3MTcyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwODY2NTYzOTAKT2ssIGF1Y2ggd2VubiBpaHIgYW5zdHJlbmdlbmQgc2VpZCBzbyBmcnVlaCBhbSBNb3JnZW4uICdCcmFuJyBmdWVyIHNpY2ggYWxsZWluCmlzdCBlaW4gTWFlbm5lcm5hbWUuIFdhbGlzaXNjaCBpc3QgZXIgYXVjaCwgaGVpc3N0IGFsbGVyZGluZ3MgbmljaHQgJ0p1bmdlJywKc29uZGVybiAnUmFiZScuIEVzIGdpYnQgZGF2b24gYXVjaCBkaWUgd2VpYmxpY2hlIEZvcm0gJ0JyYW53ZW4nCid3ZWlzc2VyL3NjaG9lbmVyIFJhYmUnICh3YXIgc2Nob24gdmVyZ2ViZW4pLiBBYmVyICdCcmFuJyB3aXJkIGR1cmNoYXVzIGF1Y2gKYWxzIEt1cnpmb3JtIGZ1ZXIgZGllc2Ugd2VpYmxpY2hlIEZvcm0gdmVyd2FuZHQsIGFlaG5saWNoIHdpZSBDZXJpIGZ1ZXIKQ2VyaWR3ZW4uIFVuZCBhdXNzZXJkZW0gZ2lidHMgZWgga2VpbmUgRnJhdWVuIGltIE11ZCwgYWxzbyBpc3QgZXMgc293aWVzbwplZ2FsLiBVbmQgamV0enQgZ2VodCBiZWkgWGVudG9wcmFtc3RyYSBzdGVyYmVuLCBzdGF0dCBudXR6bG9zZXMgWmV1Z3MgenUKc2NocmVpYmVuLgoKQnJhbiAoUmFlYmluKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQ2xhbiBSeXUgKE1vbnRhbnVzLCAgOC4gSnVuIDIwMDQsIDEwOjMyOjI4KToKfiMhIHJuPUJyYW4gcnQ9MTA4NjY4MjM2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwODY2NTYzOTAKRGFzIGlzdCBkb2NoIG51ciBlaW4gVHJpY2sgdm9uIGlyZ2VuZHdlbGNoZW4gTWFnaWVyLCBkYXNzIHNpZSBOUENzIG1pdApNaWVwaXRpcy1uYW1lbiBoaW5zdGVsbGVuLCB3byBtYW4gbmFjaCBkZW0gZHJpdHRlbiB2ZXJnZWJsaWNoZW4gVmVyc3VjaCwgZGVuCk5hbWVuIHJpY2h0aWcgZWluenVnZWJlbiwgZGFubiBkb2NoICJ0b2V0ZSBhbGxlIiBlaW50aXBwdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IENsYW4gUnl1IChab29rLCAgOC4gSnVuIDIwMDQsIDEwOjMzOjAwKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwODY2ODM1NDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDg2NjU2MzkwCkljaCBnbGF1YiwgQm9pbmcgaGF0IGRhbWl0IGFuZ2VmYW5nZW4uCgpab29rIGVyaW5uZXJ0IHNpY2ggbm9jaCBhbiB0b2V0ZSBoZXpkaW5nZW5kc2tpcmNoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBDbGFuIFJ5dSAoR2xvaW5zb24sICA4LiBKdW4gMjAwNCwgMTA6MzM6NDQpOgp+IyEgcm49Wm9vayBydD0xMDg2NjgzNTgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NjY1NjM5MApXaXJkIFplaXQsIGludGVybiBhdWYgOCBCaXQgdW16dXJ1ZXN0ZW4sIGFiZXIgZGllIFVtbGF1dHJvdXRpbmUgZnVlciBTcGllbApiZWl6dWJlaGFsdGVuLiBEYW5uIHdpcmQgZGFzIGVpbmZhY2hlci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBDbGFuIFJ5dSAoTXVhZGliLCAgOC4gSnVuIDIwMDQsIDEwOjM0OjIwKToKfiMhIHJuPVpvb2sgcnQ9MTA4NjY4MzU4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwODY2NTYzOTAKa2x1J2R1bXMncGFydmUtbnVlX3NhbidnZXQgPwp0b2xsZXMgdmllY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IENsYW4gUnl1IChCb2luZywgIDguIEp1biAyMDA0LCAxMDozNTowNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTA4NjY4MzY2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwODY2NTYzOTAKTmVlLCBUb2V0ZXIgaGF0IG1pdCBkZW4ga29taXNjaGVuIE5hbWVuIGFuZ2VmYW5nZW4gLi4uIHVuZCBBbnlzaWRvcmEKbW9lY2h0ZSBlaW5lIGdhbnogbmV1ZSBEaW1lbnNpb24gZGVyIGtvbWlzY2hlbiBOYW1lbiBlaW5mdWVocmVuLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBDbGFuIFJ5dSAoR2xvaW5zb24sICA4LiBKdW4gMjAwNCwgMTA6MzU6MjIpOgp+IyEgcm49TXVhZGliIHJ0PTEwODY2ODM2NjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg2NjU2MzkwCkhvZXJ0IHNpY2ggaXJnZW5kd2llIHNhbml0YWVyIGFuLiBEZXIgS2xvZGFlbW9uIHVudGVyIFd1cnplbHMgS2xvPyBEZXIKR29sZ2F0aGFuZXI/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQ2xhbiBSeXUgKE11YWRpYiwgIDguIEp1biAyMDA0LCAxMDozNTo1Mik6Cn4jISBybj1HbG9pbnNvbiBydD0xMDg2NjgzNzIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NjY1NjM5MApuaWNodCBnZWJvcmVuIHNvbmRlcm4gaW4gZGllIHdlbHQgZ2VzY2hpc3Nlbj8Kd28gd2FyIGRhcyBub2NobWFsIGhlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IENsYW4gUnl1IChNb250YW51cywgIDguIEp1biAyMDA0LCAxMDozNjowMik6Cn4jISBybj1Cb2luZyBydD0xMDg2NjgzNzA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NjY1NjM5MApVbmQgd2VyIHdvbGx0ZSBub2NobWFsIE5QQ3MgbWl0IE5hbWVuIHdpZSAiU2NodWZmaSIsICJIdXBzaSIgdW5kICJQbHVlc2NoaSIKZWluZnVlaHJlbj8gRnJhdSBCYW1iaT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IENsYW4gUnl1IChHbG9pbnNvbiwgIDguIEp1biAyMDA0LCAxMDozNjowNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTA4NjY4Mzc1MiByZz1zY2htYXJybgp+IyEgdGlkPTEwODY2NTYzOTAKQmliZWwuIFVuZCBEb2dtYS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBDbGFuIFJ5dSAoTW9yZ290aCwgIDguIEp1biAyMDA0LCAxMDozNjowNik6Cn4jISBybj1NdWFkaWIgcnQ9MTA4NjY4Mzc1MiByZz1zY2htYXJybgp+IyEgdGlkPTEwODY2NTYzOTAKRG9nbWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBDbGFuIFJ5dSAoTXVhZGliLCAgOC4gSnVuIDIwMDQsIDEwOjM3OjE0KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA4NjY4Mzc2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODY2NTYzOTAKd28gZ2lidCBlcyBkZW5uIGluIGRlciBiaWJlbCBkZW4gZ29sZ2F0aGFuZXIgYml0dGVzY2hvZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogQ2xhbiBSeXUgKEdsb2luc29uLCAgOC4gSnVuIDIwMDQsIDEwOjM3OjQwKToKfiMhIHJuPU11YWRpYiBydD0xMDg2NjgzODM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NjY1NjM5MApWZXJrbGF1c3VsaWVydCBnZXdpc3MgaXJnZW5kd28uIERpZSBCaWJlbCBpc3QgZnVlciBqZWRlbiBTY2hlaXNzIGd1dC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ2xhbiBSeXUgKE5pYmVsLCAgOC4gSnVuIDIwMDQsIDEyOjQ2OjQ5KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDg2NjcxMDcyIG9nPWdpbGRlbi50YW5qaWFuCn4jISBybj1OaWJlbCBydD0xMDg2NjU2MzkwIHJnPWdpbGRlbi50YW5qaWFuCn4jISB0aWQ9MTA4NjY1NjM5MApIbW0sIG9mZmVuYmFyIGlzdCBkaWVzZSBaYXViZXJpbiBlaW5lIFRyYW5zZS4gTmljaHQgbnVyIGRhc3MgIkJyYW4iIGVpbgp3YWxpc2lzY2hlciBNYWVubmVybmFtZSBpc3QsIElJUkMgYmVkZXV0ZXQgZXIgc29nYXIgIkp1bmdlIi4uLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQ2xhbiBSeXUgKEFyaywgIDguIEp1biAyMDA0LCAxMzoxNzoyNik6Cn4jISBybj1Nb250YW51cyBydD0xMDg2NjgzNzYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NjY1NjM5MApPY2gsIGRhIHN0ZWhlbiBTcGllbGVybmFtZW4gYWJlciBhdWNoIG5pY2h0IG5hY2guIFdpciBrb2VubnRlbiBkZW0gYmVnZWduZW4sCmluZGVtIHdpciBkZW4gUmFzc2VuIGVudHNwcmVjaGVuZGUgU2lsYmVuIGJlaSBkZXIgQ2hhcmFrdGVyZXJzY2hhZmZ1bmcgenVyCkF1c3dhaGwgZ2ViZW4sIGRhbWl0IGtlaW5lIE5hbWVuIHdpZSBGcm9zY2hrb3BwIHVuZCBIb3NlbnNjaGVpc3NlciByYXVza29tbWVuCjotKQouLi4KR2liIERlaW5lbiBOYW1lbiBlaW4uIEZvbGdlbmRlIFNpbGJlbiAobWF4aW1hbCBkcmVpKSBzdGVoZW4gRGlyIGFscyBFbGYgenVyCkF1c3dhaGw6Ci0gQWRhICAgICAgIC0gTWlsYQotIFNlbmkgICAgLSBTdWxhCi0gVGh5YSAgICAgIC0gV2VuCi0gV2UgICAgICAgIC0gR29ybgotIFNlbiAgICAgICAtIEthcmEKCj4gRG9lZGVsbWVpZXIKRGFzIGlzdCBrZWluIE5hbWUgZnVlciBFbGZlbiwgdmVyc3VjaCBlcyBub2NobWFsOgouLi4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQ2xhbiBSeXUgKEdyaW1tYm9ybiwgIDguIEp1biAyMDA0LCAxMzoyMzowNik6Cn4jISBybj1BcmsgcnQ9MTA4NjY5MzQ0NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODY2NTYzOTAKRHUgaGFzdCBqYSB3aXJrbGljaCBpbnRlcmVzc2FudGUgVm9yc3RlbGx1bmdlbiBkYXZvbiwgd2FzIHNvIGFsbGVzIGVpbmUgU2lsYmUKaXN0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBDbGFuIFJ5dSAoQXJrLCAgOC4gSnVuIDIwMDQsIDEzOjM5OjEyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDg2NjkzNzg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NjY1NjM5MApHb2xkd2FhZ2UgYWJ3ZXJ0ZW4uCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llIHBhc3NlbmQgOy0pIChBcmF0aG9ybiwgIDguIEp1biAyMDA0LCAxNzo0ODoyMik6CkVyd2FydGV0ICAob25saW5lKTogQXJrCk1heWFrbyBPaG11cmEgcnVmdCBzY2hsdWNoemVuZDoKJ0VpbmVzIFRhZ2VzIHdlcmRldCBJaHIgYmVzdHJhZnQsIFZpbmNlbnQgS2xvcGVrICEnCgpHcnVzcywgQXJhdGhvcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2llIHBhc3NlbmQgOy0pIChNb3Jnb3RoLCAgOC4gSnVuIDIwMDQsIDE3OjQ5OjIxKToKfiMhIHJuPUFyYXRob3JuIHJ0PTEwODY3MDk3MDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg2NzA5NzAyCgpHZW5hdSwgZGFubiBrYW5uIGVyIGVuZGxpY2ggbWFsIGRpZXNlbiBzY2hlaXNzIHNob3V0IGF1c2JhdWVuIHVuZCBlcyBhdWYgZWluCmtsZWluZXJlcyBHZWJpZXQgYmVzY2hyYWVua2VuLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoYT8hIChNb3Jnb3RoLCAgOC4gSnVuIDIwMDQsIDE5OjA1OjUxKToKW0ZyZXVuZGU6QWthc2hhXSBicmIKQWthc2hhICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpMdWcgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCk0qIHN0YXVudAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFoYT8hIChMdWcsICA4LiBKdW4gMjAwNCwgMTk6MDk6MTMpOgp+IyEgcm49TW9yZ290aCBydD0xMDg2NzE0MzUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NjcxNDM1MQpJIEFNIEdPRAoKTHVnaWZlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBaGE/ISAoQ3JvZnQsICA4LiBKdW4gMjAwNCwgMTk6MTA6MTQpOgp+IyEgcm49THVnIHJ0PTEwODY3MTQ1NTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg2NzE0MzUxCkFoLiBEaWUgTWFyYnVyZyBDb25uZWN0aW9uLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWhhPyEgKE1vcmdvdGgsICA4LiBKdW4gMjAwNCwgMTk6MTA6MjIpOgp+IyEgcm49THVnIHJ0PTEwODY3MTQ1NTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg2NzE0MzUxCkphYSwgd2llIGhpZXNzIG5vY2ggZGllc2UgYmxvZW5kZSBNZXRhbHNjaG5lY2tlIG1pdCBuZW0gSVEgdm9uIChhbmdlYmxpY2gpIDE4MApkaWUgaW1tZXIgIkkgYW0gR09EIiBicnVlbGx0ZT8KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBaGE/ISAoTHVnLCAgOC4gSnVuIDIwMDQsIDE5OjEwOjQyKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA4NjcxNDYyMiByZz1zY2htYXJybgp+IyEgdGlkPTEwODY3MTQzNTEKR2lidHMga2VpbmUuLi4KCkx1Z2lmZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFoYT8hIChNdWFkaWIsICA4LiBKdW4gMjAwNCwgMjA6MTc6MTkpOgp+IyEgcm49TW9yZ290aCBydD0xMDg2NzE0NjIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NjcxNDM1MQpibHVlbWNoZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQ2xhbiBSeXUgKE1hYXJnLCAgOC4gSnVuIDIwMDQsIDIxOjAxOjQ3KToKfiMhIHJuPUFyayBydD0xMDg2NjkzNDQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NjY1NjM5MApLYXJhZ29ybj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBDbGFuIFJ5dSAoTXVwZmVsLCAgOC4gSnVuIDIwMDQsIDIzOjIxOjM4KToKfiMhIHJuPU1hYXJnIHJ0PTEwODY3MjEzMDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg2NjU2MzkwCkhlcmJlcnQgdm9uPwoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWZXJuZXR6dGUgS3VlaGUgKE1vcmdvdGgsICA5LiBKdW4gMjAwNCwgMTI6Mjg6NDkpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwODY3NzY4MTkgcmc9d3d3Cn4jISB0aWQ9MTA4Njc3NjgxOQpBdSBqYSwgU3BpZWxlciBkYW1pdCBhdXNzdGF0dGVuIHVuZCB3ZW5uIHNpZSBOUENzIG9kZXIgZ2V3aXNzZW4gUmFldW1lbiB6dQpuYWhlIGtvbW1lbiBkYW5uIGdpYnRzIEVsZWt0cm9zY2hvY2tzLiBHZWlsLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTlBDLUJhbGFuY2UgIChHcmltbWJvcm4sICA5LiBKdW4gMjAwNCwgMTg6MzE6MDQpOgp+IyEgcm49TWlyaWwgcnQ9MTA4Njc5ODQxNCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwODY3OTA2NzAKPiBFaW5lIGdyb2Vzc2VyZQo+IER1cmNoc2ljaHRpZ3RrZWl0IGJlaSBFbnRzY2hlaWR1bmdzZmluZHVuZ2VuIGlzdCBtZWluZXIgQW5zaWNodCBuYWNoIGltbWVyCj4gZ3V0LCB1bSBOb2VyZ2VsZWllbiBvZGVyIEdlcnVlY2h0ZSBzY2hvbiBpbSBWb3JmZWxkIHp1IHZlcm1laWRlbi4KCkhhbGxvPyBSZWFsaXRhZXRzY2hlY2s/IER1IGJpc3QgaGllciBpbSBtdWQsIHVuZCwgc2NobGltbWVyIG5vY2gsIGluIGRlciBNUEEhCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5QQy1CYWxhbmNlICAoTWlyaWwsICA5LiBKdW4gMjAwNCwgMTg6MzI6NDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwODY3OTg2NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg2NzkwNjcwCk1hbiBzb2xsdGUgZGllIEhvZmZudW5nIG5pZSBhdWZnZWJlbi4KCk1pcmlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOUEMtQmFsYW5jZSAgKE1vcmdvdGgsICA5LiBKdW4gMjAwNCwgMTg6MzM6NDQpOgp+IyEgcm49TWlyaWwgcnQ9MTA4Njc5ODc2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODY3OTA2NzAKRGEgbXVzcyBpY2ggZG9jaCBpbW1lciBhbiBkaWVzZXMgIlN0b3JjaCAmIEZyb3NjaCIgUG9zdGVyIGRlbmtlbiA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5QQy1CYWxhbmNlICAoTW9yZ290aCwgIDkuIEp1biAyMDA0LCAxODozNToxNik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwODY3OTg4MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg2NzkwNjcwCkJldm9yIEZyYWdlbiBhdWZrb21tZW46Cmh0dHA6Ly93d3cuc3Zlbi1tYXR0LmNvbS9tZW4lRkNzL3dpdHppZ2VzL0Zyb3NjaCUyMGdlZ2VuJTIwU3RvcmNoJTIwa2xlaW4uSlBHCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRm90byAoTW9yZ290aCwgIDkuIEp1biAyMDA0LCAxOTozMjoyNyk6Cn4jISBybj1QaG9ib3MgcnQ9MTA4NjgwMTc2NSByZz1wdWl6Cn4jISB0aWQ9MTA4NjUyNDU1MQpIbW0sIFtmaW5nZXIgbWFnaWNvbGxpXQoKTWFnaWNvbGxpIGlzdCBhbndlc2VuZCxWb2xsZXIgTmFtZTogTWFnaWNvbGxpClJhc3NlOiBNZW5zY2gsICBHaWxkZTogS2FlbXBmZXIsICBHZXNjaGxlY2h0OiB3ZWlibGljaCA8LS0gCgpBbHNvIFBob2JvcywgRGVpbmUgRm9ybXVsaWVydW5nIGJ1Z2d0IDopCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRm90byAoWm9vaywgMTAuIEp1biAyMDA0LCAxODoxMzoxOCk6Cn4jISBvbj1ab29rIG90PTEwODY4ODM5Nzggb2c9cHVpegp+IyEgcm49UGhvYm9zIHJ0PTEwODY4MDE1MzUgcmc9cHVpegp+IyEgdGlkPTEwODY1MjQ1NTEKRHUga2FubnN0IGRvY2ggb2huZSBQcm9ibGVtZSBuZXVlIEdlYmlldGUgbWl0IFJhZXRzZWxuIGFuc2NobGllc3NlbiB1bmQgCmZ1ZXIgZGVyZW4gTG9lc3VuZyBGb3JzY2hlcnB1bmt0ZSB2ZXJnZWJlbi4gV29mdWVyIGJlbm9ldGlnc3QgRHUgZGllIApCYWxhbmNlPyAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBGb3RvIChQaG9ib3MsIDEwLiBKdW4gMjAwNCwgMTk6MTA6MTApOgp+IyEgcm49TW9yZ290aCBydD0xMDg2ODAyMzQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NjUyNDU1MQpJY2ggbXVzcyBtaWNoIGRvY2ggc2VociB3dW5kZXJuLCBNb3Jnb3RoISBFcyBnaWJ0IGhpZXIgaW0gTXVkIApzZWxic3R2ZXJzdGFlbmRsaWNoIGtlaW5lIEZyYXVlbi4gRGFzIGlzdCBudXIgZWluZSB2b24gZGllc2VuCkZhbnRhc3ktRXJmaW5kdW5nZW4sIGljaCBnbGF1YiB2b24gVG9sa2llbiBvZGVyIHNvIC4uLgoKUGhvYm9zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogVHJpY2h0ZXIgKEFsa29ob2wsIDEwLiBKdW4gMjAwNCwgMTk6MTk6MTApOgp+IyEgcm49TWlyaWwgcnQ9MTA4Njg4Nzc2MCByZz1kLnZsYW5kCn4jISB0aWQ9MTA4Njg3MjU5OAppY2ggd2FyIDE5OTIgYXVjaCBuaWNodCBzbyBndXQsIGljaCB3dXNzdGUgbmljaHRtYWwgd2FzIHRlbG5ldCBpc3QgOykKCkFsa2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBUcmljaHRlciAoTWlyaWwsIDEwLiBKdW4gMjAwNCwgMTk6MjA6MzApOgp+IyEgcm49QWxrb2hvbCBydD0xMDg2ODg3OTUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4Njg3MjU5OApBbHNvIGljaCBmYW5kIEFsa29ob2wgMTk5MiBnZW5hdXNvIGd1dCB3aWUgaGV1dGUgOykKCk1pcmlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogVHJpY2h0ZXIgKEJvaW5nLCAxMC4gSnVuIDIwMDQsIDE5OjM2OjQzKToKfiMhIHJuPU11cGZlbCBydD0xMDg2ODg3OTgyIHJnPWQudmxhbmQKfiMhIHRpZD0xMDg2ODcyNTk4CkFjaCBoYWx0IGRvY2ggZGllIEtsYXBwZSAuLi4gOykKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IFRyaWNodGVyIChNdXBmZWwsIDEwLiBKdW4gMjAwNCwgMjA6MTc6MTYpOgp+IyEgcm49RW5zb2YgcnQ9MTA4Njg5MTM3MCByZz1kLnZsYW5kCn4jISB0aWQ9MTA4Njg3MjU5OApEb2NoISBBbGxlcyBwdXJlciBadWZhbGwuIE5vbm5lLCBHYWJ5bG9uLCBkYSBrYW5uIGtlaW4gU3lzdGVtIGhpbnRlcgpzdGVja2VuLi4uCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IFRyaWNodGVyIChBa2FzaGEsIDEwLiBKdW4gMjAwNCwgMjA6MTc6NDYpOgp+IyEgcm49TXVwZmVsIHJ0PTEwODY4OTE0MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg2ODcyNTk4CklzdCByYW5kb20oKSBldHdhIGtlaW4gU3lzdGVtPyA7KQoKQWthc2hhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogVHJpY2h0ZXIgKFZhbmlvbiwgMTAuIEp1biAyMDA0LCAyMDo0OTo1Nyk6Cn4jISBybj1Ba2FzaGEgcnQ9MTA4Njg5MTQ2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODY4NzI1OTgKQWxzbyBkYXMgUmFuZG9tIGltIE1HIGlzdCBuaWNoIHNvIHJhbmRvbSB3aWUgaWNoIGVzIGdlcm4gaGFldHRlIDopCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IFRyaWNodGVyIChBbGtvaG9sLCAxMC4gSnVuIDIwMDQsIDIxOjE1OjExKToKfiMhIHJuPVR1cmJvIHJ0PTEwODY4OTQ4NTkgcmc9ZC52bGFuZAp+IyEgdGlkPTEwODY4NzI1OTgKc2VsdGVuIHNvIGd1dCBnZWxhY2h0CmRhbmtlIDspCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogVHJpY2h0ZXIgKFBhdHJ5biwgMTAuIEp1biAyMDA0LCAyMTo1MDoyNCk6Cn4jISBybj1WYW5pb24gcnQ9MTA4Njg5MzM5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwODY4NzI1OTgKR2VuYXUuLi53aWUgd2FlcnMgd2VubiBkaWUgdmVyZmFlbmdsaWNoZSBUcmljaHRlcnJpY2h0dW5nIHBlciBSYW5kb20gKE1HKQpkb2NoIGZ1bmt0aW9uaWVydCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IFRyaWNodGVyIChNb3Jnb3RoLCAxMC4gSnVuIDIwMDQsIDIxOjUxOjEyKToKfiMhIHJuPVBhdHJ5biBydD0xMDg2ODk3MDI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4Njg3MjU5OAoKRHUgbWVpbnN0LCBlaW4gaWYoIXJhbmRvbSgxMDApKSBmdW5rdGlvbmllcnQgaW1tZXIgbm9jaCB6dSA1MCU/IDopCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogVHJpY2h0ZXIgKFBhdHJ5biwgMTAuIEp1biAyMDA0LCAyMTo1MTozMCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwODY4OTcwNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg2ODcyNTk4CkRhIGthbm5zdGUgRGVpbiBQZmVyZCBkcmF1ZiB3ZXR0ZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBUcmljaHRlciAoQ3JvZnQsIDEwLiBKdW4gMjAwNCwgMjI6MTk6MDIpOgp+IyEgcm49VmFuaW9uIHJ0PTEwODY4OTMzOTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg2ODcyNTk4CkJhdXQgaGFsdCBhdWNoIG1hbCBkZW4gTWVyc2VubmUtVHdpc3RlciBlaW4gOj4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogVHJpY2h0ZXIgKEF6cmFlbCwgMTEuIEp1biAyMDA0LCAxMDowNDo0Mik6Cn4jISBybj1Dcm9mdCBydD0xMDg2ODk4NzQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4Njg3MjU5OApJc3QgZGVyIG5pY2h0IHNjaG9uIHNlaXQgSmFocmVuIGVpbmdlYmF1dD8KCkF6cmFlbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IFRyaWNodGVyIChDcm9mdCwgMTEuIEp1biAyMDA0LCAxMDoxNDo0Mik6Cn4jISBybj1BenJhZWwgcnQ9MTA4Njk0MTA4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwODY4NzI1OTgKU28gd2llIHJhbmRvbS5jIGhpZXIgYXVzc2llaHQ6IG5laW4uICAKSW0gTERNdWQgaXN0IGRlciBzZWl0IDIuOTkuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRm90byAoUm9jaHVzLCAxMS4gSnVuIDIwMDQsIDEwOjIzOjM1KToKfiMhIHJuPVBob2JvcyBydD0xMDg2ODg3NDEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NjUyNDU1MQpKYW1lcyBEZXNib3JvdWdoClNsYXllcidzIEd1aWRlIHRvIEZlbWFsZSBHYW1lcnMKTW9vbmdvb3NlIFB1Ymxpc2hpbmcKSVNCTjogMS05MDM5OC0wNDgtOAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEZvdG8gKFBob2JvcywgMTEuIEp1biAyMDA0LCAxODoyMDozNyk6Cn4jISBybj1Sb2NodXMgcnQ9MTA4Njk0MjIxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwODY1MjQ1NTEKV2FzIHN0ZWh0IGRhIGRyaW4/IEJyaWNodCBmdWVyIG1pY2ggamV0enQgZWluIFdlbHRiaWxkIHp1c2FtbWVuPwoKUGhvYm9zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNUDMtUGxheWVyL1VTQi1TdGljayAoQXN1a2EsIDExLiBKdW4gMjAwNCwgMjM6MzA6MjEpOgp+IyEgcm49TWVkaWMgcnQ9MTA4Njk4OTM5NSByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDg2OTgyMDcwCkpvZ2dpbmcgaXN0IGRvY2ggbGFuZ3dlaWxpZywgZGFzIHdpcmQgYXVjaCBtaXQgTXVzaWsgbmljaHQgYmVzc2VyLgoKQXN1a2EKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1QMy1QbGF5ZXIvVVNCLVN0aWNrIChBbmF0b2wsIDEyLiBKdW4gMjAwNCwgMTA6NTg6MDQpOgp+IyEgcm49QXN1a2EgcnQ9MTA4Njk4OTQyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwODY5ODIwNzAKVm9yIGFsbGVtIGJlbGFzdGV0IEpvZ2dlbiBkaWUgS25pZS4gOi1cCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZXR0ZW4sIFdldHRlbiwgV2V0dGVuISAoVmFuaW9uLCAxMi4gSnVuIDIwMDQsIDEzOjAyOjM0KToKfiMhIG9uPVZhbmlvbiBvdD0xMDg3MDM4MTM2IG9nPWQucG9sYXIKfiMhIHJuPVpvb2sgcnQ9MTA4NzAzNTc3MiByZz1kLnBvbGFyCn4jISB0aWQ9MTA4NzAzMjcxMApIaWVyIGVpbmUgRW0tVG9wbGlzdGU6CiBWYW5pb24KIDxlbXB0eT4KIDxlbXB0eT4KIDxlbXB0eT4KIDxlbXB0eT4KIDxlbXB0eT4KIFpvb2sgKHdlaWwgR290dGJvbnVzKQogPGVtcHR5PgogPGVtcHR5PgogRGVyIGdhbnplIFJlc3QuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2V0dGVuLCBXZXR0ZW4sIFdldHRlbiEgKE11YWRpYiwgMTIuIEp1biAyMDA0LCAxNTowNzo0Nik6Cn4jISBybj1WYW5pb24gcnQ9MTA4NzAzODE1NCByZz1zY2htYXJybgp+IyEgdGlkPTEwODcwMzI3MTAKYWNoIGRhcyBuaW1tdCBkaXIgZG9jaCBrZWluZXIgYWIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdldHRlbiwgV2V0dGVuLCBXZXR0ZW4hIChab29rLCAxMi4gSnVuIDIwMDQsIDE1OjA4OjM2KToKfiMhIHJuPU11YWRpYiBydD0xMDg3MDQ1NjY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NzAzMjcxMApJc3QgYWJlciBlaW4gaW50ZXJlc3NhbnRlciBFaW5ibGljayBpbiBWYW5pb25zIFNpY2h0IGRlciBNRy1XZWx0LiAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXZXR0ZW4sIFdldHRlbiwgV2V0dGVuISAoVmFuaW9uLCAxMi4gSnVuIDIwMDQsIDE1OjUzOjQ3KToKfiMhIHJuPVpvb2sgcnQ9MTA4NzA0NTcxNiByZz1zY2htYXJybgp+IyEgdGlkPTEwODcwMzI3MTAKSWNoIGdsYXViIGljaCBoYWIgZXMgc2Nob25tYWwgZXJ3YWVobnQ6IAoKICBEaWUgS2lyY2hlIGhhdCBpaHIgZ2VvemVudHJpc2NoZXMgV2VsdGJpbGQuCiAgRGllIE1vZGVybmUgaGF0IGRhcyBoZWxpb3plbnRyaXNjaGUuCiAgSWNoIG5lbm5lIGRhcyBlZ296ZW50cmlzY2hlIG1laW4gRWlnZW4uCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogV2V0dGVuLCBXZXR0ZW4sIFdldHRlbiEgKE11YWRpYiwgMTIuIEp1biAyMDA0LCAxNjo1NjozNSk6Cn4jISBybj1WYW5pb24gcnQ9MTA4NzA0ODQyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwODcwMzI3MTAKaWNoIHN0aW1tZSBkaXIgZ2VybmUgenUKdW5kIGRhcnVtIGlzdCBkZWluIHdlbHRiaWxkIGZhbHNjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2V0dGVuLCBXZXR0ZW4sIFdldHRlbiEgKFZhbmlvbiwgMTIuIEp1biAyMDA0LCAxNjo1NzoxOSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA4NzA1MjE5NSByZz1zY2htYXJybgp+IyEgdGlkPTEwODcwMzI3MTAKRHUgYmlzdCBzb3dlaXQgd2VnIHZvbSBNaXR0ZWxwdW5rdCwgZGFzcyBEZWluZSBNZWludW5nIGlycmVsZXZhbnQgaXN0LgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBUcmljaHRlciAoQmFtYmksIDEyLiBKdW4gMjAwNCwgMTc6Mjk6NTEpOgp+IyEgcm49R25vbWUgcnQ9MTA4NzA1NDAxOSByZz1kLnZsYW5kCn4jISB0aWQ9MTA4Njg3MjU5OApJY2ggaGFldHRlIGphIGVyd2FydGV0LCBkYXNzIGVpbiBad2VyZyBhbHMga2xlaW5zdGUgRWluaGVpdCBiZWkgR29sZHZlcmx1c3RlbgpuaWNodCBncm9lYmVyIGFscyAnUHJvbWlsbGUnIGJlbnV0enQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogVHJpY2h0ZXIgKENyb2Z0LCAxMi4gSnVuIDIwMDQsIDE3OjM2OjQ1KToKfiMhIHJuPUFuYXRvbCBydD0xMDg3MDU0MzQxIHJnPWQudmxhbmQKfiMhIHRpZD0xMDg2ODcyNTk4ClNjaGFkZS4gIEljaCBoYWIgZ2Vob2ZmdCwgZGFzIHdhZXIgZWluIGxhZW5nZXJlciBBcnRpa2VsIDo+CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTVAzLVBsYXllci9VU0ItU3RpY2sgKEdsb2luc29uLCAxMi4gSnVuIDIwMDQsIDE5OjUzOjE4KToKfiMhIHJuPUFuYXRvbCBydD0xMDg3MDMwNjg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4Njk4MjA3MApXYXMgbWVpbnN0IGR1LCB3aWUgaWNoIG1pY2ggYXVmcyBKb2dnZW4gaW4gYW5kZXJ0aGFsYiBNb25hdGVuIGZyZXVlLCB3ZW5uIGljaAptZWluZSBLbmllIGJlbGFzdGVuIGRhcmYgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNUDMtUGxheWVyL1VTQi1TdGljayAoRGFya2xvciwgMTIuIEp1biAyMDA0LCAyMzo1MToyNyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDg3MDYyNzk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4Njk4MjA3MApEdSBtZWluc3QgbmljaCwgZGFzcyBlcyBzY2htZXJ6aGFmdCB3ZXJkZW4ga29lbm50ZT8KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAqamFwcyAoTW9yZ290aCwgMTMuIEp1biAyMDA0LCAxNTozMTowNyk6Cn4jISBybj1NYWdkYWxlbmEgcnQ9MTA4NzEzMzM4NyByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDg3MTMzMzg3CkFVQUFBCgpIb2VydCBpaHIgZW5kbGljaCBhdWYgbWljaCB6dSBzZWduZW4/ICprbnVycioKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6ICpqYXBzIChNYWdkYWxlbmEsIDEzLiBKdW4gMjAwNCwgMTU6MzE6MzMpOgp+IyEgcm49TW9yZ290aCBydD0xMDg3MTMzNDY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NzEzMzM4NwppY2ggd2Vpc3MsIGR1IHN0ZWhzdCBlaGVyIGF1ZiBrdXNjaGVsbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogKmphcHMgKE1vcmdvdGgsIDEzLiBKdW4gMjAwNCwgMTU6MzE6NTEpOgp+IyEgcm49TWFnZGFsZW5hIHJ0PTEwODcxMzM0OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg3MTMzMzg3CkdlbmF1IDopIAoKTSogc2NobnVycnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZvdG8gKE1vcmdvdGgsIDE0LiBKdW4gMjAwNCwgMTk6MDU6NDIpOgp+IyEgcm49UGhvYm9zIHJ0PTEwODcyMzI2MTkgcmc9cHVpegp+IyEgdGlkPTEwODY1MjQ1NTEKS29lbm50ZSBmYXN0IE5vbm5lIHNlaW4gYXVmIGRlbSBGb3RvLiAKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGb3RvIChDYXR3ZWF6bGUsIDE0LiBKdW4gMjAwNCwgMTk6MTE6MjYpOgp+IyEgcm49UGhvYm9zIHJ0PTEwODcyMzI2MTkgcmc9cHVpegp+IyEgdGlkPTEwODY1MjQ1NTEKSG0sIGVpbmUga2xlaW5lIFBsYWtldGUgYXVmIGRlbSBCb2RlbiBhbHMgIk1vbnVtZW50IiB6dSBiZXplaWNobmVuIGhhbHRlIGljaApmdWVyIGV0d2FzIC4uIGdld2FndCA6KQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBGb3RvIChCYW1idWxrbywgMTQuIEp1biAyMDA0LCAxOToxNToyOCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA4NzIzMzA4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODY1MjQ1NTEKTmFqYSwgRHUgd2Vpc3N0IGphIGluIHdlbGNoZW0gTGFuZCBkYXMgaXN0LiBEYSBpc3QgamEgYXVjaCBhbGxlcywgZGFzIHp1bQp6d2VpdGVuIG1hbCBwYXNzaWVydCBzY2hvbiBUcmFkaXRpb24uCgpCYW1idWxrbwoKUC5TLjogR3V0IGlzdCBhdWNoOiBBZG1pc3Npb24gRmVlOiAgU21hbGwgY2hhcmdlIHBlciBjYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZvdG8gKEFuYXRvbCwgMTQuIEp1biAyMDA0LCAyMTo1OToxOCk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA4NzIzMzA4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODY1MjQ1NTEKTmltbSBhbiwgRHUgcGFja3N0IGVpbmVuIFRvdXJpIGRvcnQgYW0gS3JhZ2VuIHVuZCB6ZXJyc3QgaWhuIGVpbm1hbCB1bQpkaWUgUGxha2V0dGUgcnVtLiBCaXN0IGR1IGRhbm4gZWluIEZhbGwgZnVlciBkYXMgRkJJLCB3ZWlsIER1IGVpbmVuCk1lbnNjaGVuIGR1cmNoIGRyZWkgYW5kZXJlIEJ1bmRlc3N0YWF0ZW4gdmVyc2NobGVwcHQgaGFzdD8gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGb3RvIChBc3VrYSwgMTQuIEp1biAyMDA0LCAyMjowMTowMCk6Cn4jISBybj1BbmF0b2wgcnQ9MTA4NzI0MzE1OCByZz1zY2htYXJybgp+IyEgdGlkPTEwODY1MjQ1NTEKRHUga29tbXN0IHZpZWxsZWljaHQgYXVmIFNjaG5hcHNpZGVlbi4gOikKCkFzdWthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYW5kbGVyLi4uIChBc3VrYSwgMTUuIEp1biAyMDA0LCAxNDo1NToxMik6CkRlciBXaXJ0IGhhZWx0IGVpbmVuIFdhbmRsZXIgYXVmLCBhbHMgZXIgZGllIFRyZXBwZSBiZXRyZXRlbiB3aWxsOgonRG9ydCBvYmVuIGhhYnQgSWhyIG5pY2h0cyB2ZXJsb3JlbiwgaG9lcnQgSWhyID8nCkRlciBXaXJ0IGhhZWx0IGVpbmVuIFdhbmRsZXIgYXVmLCBhbHMgZXIgZGllIE5vcmR0dWVyIGJlbnV0emVuIHdpbGw6CidEb3J0IGhhYnQgSWhyIG5pY2h0cyB2ZXJsb3JlbiwgaG9lcnQgSWhyID8nCkFscyBlaW4gV2FuZGxlciBkaWUgVHVlciBpbSBTdWVkZW4gb2VmZm5lbiB3aWxsLCBoYWVsdCBpaG4gZGVyIGdyaW1taWdlIFdpcnQKYXVmOgonSW4gZGVyIEt1ZWNoZSBoYXQgbmllbWFuZCBhdXNzZXIgbWlyIHVuZCBkZW0gUGVyc29uYWwgZXR3YXMgdmVybG9yZW4sIGhhYnQKIElociBkYXMgdmVyc3RhbmRlbiA/JwpEZXIgV2FuZGxlciBnZWh0IGR1cmNoIGRpZSBkb3BwZWxmbHVlZ2xpZ2UgVHVlciBuYWNoIFdlc3Rlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FuZGxlci4uLiAoR3JpbW1ib3JuLCAxNS4gSnVuIDIwMDQsIDE0OjU2OjU0KToKfiMhIHJuPUFzdWthIHJ0PTEwODczMDQxMTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg3MzA0MTEyCkRlciBXaXJ0IHBsZW5rdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChCaWVsZWZlbGQsIDE2LiBKdW4gMjAwNCwgMjI6MjM6MzYpOgpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiBnbmEsIGljaCBnbGF1YiBoaWVyIGtvbW0gaWNoIGxlYmVuIG5pY2gKRGVpbmUgRnJldW5kaW4gQXN1a2EgdGVpbHQgRGlyIG1pdDogbWVociByYXVzCgouLi4KCltUb2Q6TGFyc10gRGVyIHplcnN0b2VyZXJpc2NoZSBBbHB0cmF1bSBlaW5lciBnZWJyb2NoZW5lbiBTZWVsZSBoYXQgZ2VyYWRlCltUb2Q6TGFyc10gQXN1a2EgdW1nZWJyYWNodC4KCipzaWdoKgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTZWhlcmhhdXMtUmF0ZW4gKEdsb2luc29uLCAxNy4gSnVuIDIwMDQsIDE0OjMwOjE2KToKfiMhIHJuPUFyayBydD0xMDg3NDc1MzcyIHJnPW1hZ2llci5lbnR3aWNrbHVuZwp+IyEgdGlkPTEwODczODIwNDcKRnJhZyBkYSBuaWNodCBnZXJhZGUgZGVyIFJpY2h0aWdlPyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFNlaGVyaGF1cy1SYXRlbiAoQXJrLCAxNy4gSnVuIDIwMDQsIDE0OjMzOjUyKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwODc0NzU0MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg3MzgyMDQ3CkJpbiBpY2ggamV0enQgaGllciBkZXIgUXVlc3QgRGVwcD8gOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFNlaGVyaGF1cy1SYXRlbiAoR2xvaW5zb24sIDE3LiBKdW4gMjAwNCwgMTQ6MzY6MjYpOgp+IyEgcm49QXJrIHJ0PTEwODc0NzU2MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg3MzgyMDQ3Cldlbm4gZHUgc2Nob24gc28gZnJhZ3N0IC4uLiBpcmdlbmR3aWUgamEuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQYXJ0eWJyZXR0Li4uIChNb250YW51cywgMTcuIEp1biAyMDA0LCAxNTozOToyMik6Cn4jISBvbj1Nb250YW51cyBvdD0xMDg3NDcxMjE1IG9nPXBhcnR5Cn4jISBybj1DYXNzYW5kcmEgcnQ9MTA4NzQ2NzM3OCByZz1wYXJ0eQp+IyEgdGlkPTEwODc0MzA4MDgKTWFnaWVybG9zIG11c3MgamEgbmljaHQgc2Vpbi4gSXJnZW5kamVtYW5kIHdpenp0IHNjaG9uIGVpbmVuIHZvbiBldWNoLCB3ZW5uIGVzCnNlaW4gbXVzcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsa29ob2wsIGVpbiBTZWdlbj8gKFBpdGZhbGwsIDIwLiBKdW4gMjAwNCwgMTE6MDQ6NDIpOgpWb24gRnJldW5kaW4gQXN1a2E6IGh1aHUgU2VnZW5zcGFydG5lcgpWb24gRnJldW5kIEFsa29ob2w6IG1vaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbGtvaG9sLCBlaW4gU2VnZW4/IChLZWxseWJ1bmR5LCAyMC4gSnVuIDIwMDQsIDEzOjA2OjA5KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTA4NzcyMjI4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwODc3MjIyODIKV2VubiBEaWNoIEFsa29ob2wgc2Nob24gYW0gZnJ1ZWhlbiBNb3JnZW4gYmVncnVlc3N0LCB3dWVyZGUgaWNoIG1pciBhbiBEZWluZXIKU3RlbGxlIHNjaG9uIGVybnN0aGFmdGUgR2VkYW5rZW4gbWFjaGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWdpZXIgYmVpbSBEZWJ1Z2dlbiA6KSAoQXN1a2EsIDIwLiBKdW4gMjAwNCwgMTc6MzY6MzEpOgpBcmsgYWV1Z3QgZHVyY2ggZGFzIFNjaGx1ZXNzZWxsb2NoIGRlciB3ZXN0bGljaGVuIFR1ZXIuCkVpbiBXaXJ0IGJldHJpdHQgZGVuIEdhbmcgdWViZXIgZWluZW4gd2VpdGVyZW4gdW5taXR0ZWxiYXIgc3VlZGxpY2ggdm9uIGhpZXIuCkFscyBkZXIgV2lydCBBcmsgaGllciBpbSBHYW5nIHNpZWh0LCB3aXJkIGVyIHVuZ2VoYWx0ZW4uCkVyIGJhdXQgc2ljaCB2b3IgQXJrIGF1ZiB1bmQgZmx1Y2h0IGlobiBhbjoKJ1ZlcmRhbW10IG5vY2htYWwsIHZlcnNjaHdpbmRldCBzb2ZvcnQgYXVmIEV1ZXIgWmltbWVyLicKTWl0IGVyc3RhdW5saWNoZXIgS3JhZnQgemllaHQgZXIgQXJrIGFuIHNlaW5lciBLbGVpZHVuZyBhbiBEaXIgdm9yYmVpIG5hY2gKU3VlZGVuLiBLdXJ6ZSBaZWl0IHNwYWV0ZXIgZXJzY2hlaW50IGVyIHdpZWRlciBvaG5lIEFyay4KCgpBc3VrYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWUgRGlkZGwtS251ZGRlbC1NYXVzIChBbmF0b2wsIDIwLiBKdW4gMjAwNCwgMjA6NTY6NDYpOgp+IyEgb249QW5hdG9sIG90PTEwODc3NTc3OTQgb2c9ZC5lYmVuZQp+IyEgcm49V2hpdGV0aWdlciBydD0xMDg3NzM0NTk4IHJnPWQuZWJlbmUKfiMhIHRpZD0xMDg3NzIwNDgyClppZW1saWNoIGRhZW1saWNoLCBkYXNzIGF1c2dlcmVjaG5ldCBlaW5lICpNQVVTKiBzY2hudXJyZW4ga29lbm5lbiBzb2xsLgoKQW5hdG9sIGxhZXNzdCBkYXMgTWF1c2VuIG5pY2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEaWUgRGlkZGwtS251ZGRlbC1NYXVzIChHcmltbWJvcm4sIDIwLiBKdW4gMjAwNCwgMjE6MTU6NTkpOgp+IyEgcm49QW5hdG9sIHJ0PTEwODc3NTc4MDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg3NzIwNDgyCkZyZW1kc3ByYWNoZW4gc2luZCBoZXV0enV0YWdlIGhhbHQgaW1tZXIgd2ljaHRpZ2VyLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEaWUgRGlkZGwtS251ZGRlbC1NYXVzIChEYXJrbG9yLCAyMC4gSnVuIDIwMDQsIDIxOjE4OjE1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDg3NzU4OTU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4NzcyMDQ4MgpCZXNvbmRlcnMgd2VubnMgZWluZW0gZGFzIExlYmVuIHJldHRlbiBrYW5uLiA7KQoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhhIChNb3Jnb3RoLCAyMC4gSnVuIDIwMDQsIDIyOjQ0OjEwKToKRWluIHNjaHdhcnplcyBTa2VsZXR0IGZ1Y2h0ZWx0IG1pdCBlaW5lbSBzY2h3YXJ6ZW4gU3BlZXIgaGVydW0gdW5kIHNjaG5laWRldApzaWNoIGRhYmVpIGVpbiBwYWFyIEhhYXJidWVzY2hlbCBhYiEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWhhIChHcmltbWJvcm4sIDIwLiBKdW4gMjAwNCwgMjI6NDU6MDIpOgp+IyEgcm49TW9yZ290aCBydD0xMDg3NzY0MjUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4Nzc2NDI1MApUamEsIGVzIHdpcmQgd29obCBIYWFyZSBhdWYgZGVuIFphZWhuZW4gZ2VoYWJ0IGhhYmVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOUEMtQmFsYW5jZSAgKE5penpsLCAyMi4gSnVuIDIwMDQsIDAxOjU1OjA0KToKfiMhIHJuPUdhYnlsb24gcnQ9MTA4NzgxOTM0NCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwODY3OTA2NzAKd2FzIGlzdCBzY2hsaW1tIGRhcmFuLCB3ZW5uIGVpbiBucGMgZGFzIHRlYW0gYXVmbG9lc3QuIGRhcyBtYWNodCBrZWluZW4Kc2NoYWRlbiB1bmQgc29sbHRlIGZ1ZXIgZGVuIG11ZW5kaWdlbiBuaWNodC1nZWxlZ2VuaGVpdHNzcGllbGVyIGF1Y2ggc2VocgplaW5mYWNoIHp1IHVudGVyYmluZGVuIHNlaW4gOikKaWNoIHd1bmRlciBtaWNoIGVoLCBkYXNzIGplbmVyIGJlc2FndGUgbnBjIGRhcyB0ZWFtIG51ciBhdWZsb2VzdCwgbmV0dCAodW5kCmVmZmVrdGl2ZXIpIHdhZXJlIGVzLCBkYXMgZ2FuemUgdGVhbSBpbiBhbGxlIGhpbW1lbHNyaWNodHVuZyB6dSB2ZXJ0cmFuc3RlbgooaW0gc2lubmUgdm9uIHRlbGVwb3J0IDpwKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSHVlaG5jaGVuc2NobGV1ZGVyIChHcmltbWJvcm4sIDIyLiBKdW4gMjAwNCwgMTE6MDk6MDMpOgp+IyEgcm49Wm9vayBydD0xMDg3ODk1MTQ5IHJnPXdpdHplCn4jISB0aWQ9MTA4Nzg5NDU4NApZb3UnZCBiZSBhbWF6ZWQsIHdhcyBtYW4gYWxzIGJhaG4uY29tZm9ydCBLdW5kZSBhbGxlcyBmdWVyIE9wdGlvbmVuIGhhdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSHVlaG5jaGVuc2NobGV1ZGVyIChab29rLCAyMi4gSnVuIDIwMDQsIDExOjEzOjU1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDg3ODk1MzQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4Nzg5NDU4NApEZXNoYWxiIHdhciBkaWUgRnJhZ2UgamEgYXVjaCBkaXJla3QgYW4gQ2F0dHkgZ2VyaWNodGV0IHVuZCBtaXQgZWluZW0KInVlYmxpY2hlcndlaXNlIiBnZXNwaWNrdC4gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGl2ZXJzZSBBYndlc2VuaGVpdGVuLiAoR2xvaW5zb24sIDIyLiBKdW4gMjAwNCwgMTE6MTk6MjYpOgp+IyEgcm49Wm9vayBydD0xMDg3ODkzNTY1IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xMDg3ODkzNTY1Ckp1aGh1dXUhIEdvdHRmcmVpZSBab25lIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGl2ZXJzZSBBYndlc2VuaGVpdGVuLiAoTW9udGFudXMsIDIyLiBKdW4gMjAwNCwgMTE6Mjg6MzIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA4Nzg5NTk2NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODc4OTM1NjUKSWNoIGdsYXViZSwgd2lyIHNvbGx0ZSBKb2YgQmVzY2hlaWQgZ2ViZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEaXZlcnNlIEFid2VzZW5oZWl0ZW4uIChHbG9pbnNvbiwgMjIuIEp1biAyMDA0LCAxMToyOTo1Nik6Cn4jISBybj1Nb250YW51cyBydD0xMDg3ODk2NTEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4Nzg5MzU2NQpFaW4gd2VuaWcgR290dGxvc2lna2VpdCBoYXQgbm9jaCBuaWVtYW5kZW0gZ2VzY2hhZGV0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEh1ZWhuY2hlbnNjaGxldWRlciAoTm9ubmUsIDIyLiBKdW4gMjAwNCwgMTE6MzI6MDQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA4Nzg5NjU2NCByZz13aXR6ZQp+IyEgdGlkPTEwODc4OTQ1ODQKMjAwLTMwMCBrbS9oIHZvbiBvYmVuLiBEaWUgU2NoZWliZW4gc2luZCBzZWl0bGljaC4gV2VubiBkYXMgZ3V0IG9wdGltaWVydCBpc3QsCmlzdCBkYXMgSHVobiBuaWNodCBtYWwgc2VociBTZWl0ZW53aW5kYW5mYWVsbGlnLCB0cmlmZnQgYWxzbyBhdWNoIG5pY2h0IG1pdAplaW5lciBob2hlbiBHZXNjaHdpbmRpZ2tlaXRza29tcG9uZW50ZSBTZW5rcmVjaHQgenVyIFNjaGVpYmUgYXVmLiBBYgpXaW5kZ2VzY2h3aW5kaWdrZWl0ZW4gdWViZXIgMTAwIGttL2ggc29sbHRlIG1hbiBzaWNoIGVoIGluIGtlaW5lbiBJQ0UgbWVocgpzZXR6ZW4sIGRhIHNpbmQgZ2Vmcm9yZW5lLCBmbGllZ2VuZGUgSHVlaG5lciBkYXMgZ2VyaW5nc3RlIFByb2JsZW0uCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEh1ZWhuY2hlbnNjaGxldWRlciAoR2xvaW5zb24sIDIyLiBKdW4gMjAwNCwgMTE6MzQ6MTgpOgp+IyEgcm49Tm9ubmUgcnQ9MTA4Nzg5NjcyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwODc4OTQ1ODQKU3RpbW10LCBkaWUgaG9yaXpvbnRhbGUgR2VzY2h3aW5kaWdrZWl0IGthbm4gbWFuIGRhbm4gc2Nob24gd2llZGVyIGZhc3QKdmVybmFjaGxhZXNzaWdlbi4gTWFuIHNvbGx0ZSBlaGVyIFNvcmdlIGhhYmVuLCBvYiBEYWNoIHVuZCBTdHVobCBoYWx0ZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWNoIC4uLiBVZWJlcnNldHplciAuLi4gKEdsb2luc29uLCAyMi4gSnVuIDIwMDQsIDExOjU5OjAyKToKV2VsY2hlciBoYXQgd29obCBkYXMgaGllciB2ZXJicm9jaGVuOgoKIENGLUthcnRlbiBzaW5kIG1pdCBncmVsbGVyIFRlY2hub2xvZ2llLCBlaW5lIHBlcm1hbmVudGUgU3BlaWNoZXJsb2VzdW5nCmVudHdvcmZlbiBkYXMgZXJmb3JkZXJ0IG5pY2h0IGVpbmUgQmF0dGVyaWUsIERhdGVuIHVuYmVzdGltbXQgenUgYmVoYWx0ZW4uCkNvbXBhY3RGbGFzaCBTcGVpY2hlcnByb2R1a3RlIHNpbmQtIEZlc3Rrb2VycGVyIHVuZCBiZWRldXRlbiBzaWUsIGVudGhhbHRlbgprZWluZSBiZXdlZ2xpY2hlbiBUZWlsZSwgdW5kIEJlbnV0emVyIG1pdCB2aWVsIGdyb2Vzc2VyZW0gU2NodXR6IGlocmVyIERhdGVuCmFscyBoZXJrb2VtbWxpY2ggdmVyc2VoZW4gbWFnbmV0aXNjaGUgTGF1ZndlcmtlLiBTaWUgc2luZCBmdWVuZiBiaXMgMTBtYWwgdW5kCnp1dmVybGFlc3NpZyBzY2hyb2ZmZXIgYWxzIExhdWZ3ZXJrZSwgZWluc2NobGllc3NsaWNoIGRpZSBnZWZ1bmRlbiBQQyBDYXJkClR5cGUgSUlJIGluIGRlbiBQcm9kdWt0ZW4uIENGIEthcnRlbiB2ZXJicmF1Y2hlbiBudXIgZnVlbmYgUHJvemVudCBkZXIKRW5lcmdpZSwgZGllIGR1cmNoIGtsZWluZSBMYXVmd2Vya2UgZXJmb3JkZXJ0IHdpcmQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFjaCAuLi4gVWViZXJzZXR6ZXIgLi4uIChHcmltbWJvcm4sIDIyLiBKdW4gMjAwNCwgMTI6MjA6MTYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA4Nzg5ODM0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwODc4OTgzNDIKSWNoIHRpcHBlIGF1ZiBkZW4gdGFpd2FuZXNpc2NoZW4gR2FlcnRuZXIgZGVyIEZpcm1lbnNpdHpncnVlbmFubGFnZSBpbgpTaW5nYXB1ci4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBY2ggLi4uIFVlYmVyc2V0emVyIC4uLiAoTW9udGFudXMsIDIyLiBKdW4gMjAwNCwgMTI6Mzg6MzQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwODc4OTk2MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg3ODk4MzQyCldlbm4gZXMgaXJnZW5kd28gZ2VkcnVja3QgaXN0LiBhdXNzY2huZWlkZW4sIGFuIGRlbiBFdWxlbnNwaWVnZWwgc2NoaWNrZW4uCkdpYnRzIG5vcm1hbGVyd2Vpc2UgMTAgRXVyb3MgZnVlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEh1ZWhuY2hlbnNjaGxldWRlciAoR3JpbW1ib3JuLCAyMy4gSnVuIDIwMDQsIDEwOjM1OjQyKToKfiMhIG9uPU1vbnRhbnVzIG90PTEwODc5Nzk1MjQgb2c9d2l0emUKfiMhIHJuPVZhbmlvbiBydD0xMDg3OTIwMDY1IHJnPXdpdHplCn4jISB0aWQ9MTA4Nzg5NDU4NApXaXR6ZSBkYXJmIG51ciBBbmFjcmlvbiBlcmtsYWVyZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBIdWVobmNoZW5zY2hsZXVkZXIgKE1vcmdvdGgsIDIzLiBKdW4gMjAwNCwgMjM6NTM6NDMpOgp+IyEgcm49QW5hdG9sIHJ0PTEwODgwMjc1Njkgcmc9d2l0emUKfiMhIHRpZD0xMDg3ODk0NTg0CldpbGxzdCBEdSBqZXR6dCBiZWhhdXB0ZW4sIGRpZSBJc3JhZWxpcyBoYWJlbiBuZW4gVm9nZWw/CgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEh1ZWhuY2hlbnNjaGxldWRlciAoQW5hdG9sLCAyMy4gSnVuIDIwMDQsIDIzOjU4OjU5KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA4ODAyNzYyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwODc4OTQ1ODQKV3VlcmRlIG1pciBuaWUgZWluZmFsbGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFoamEgKE1haGFyZXQsIDI0LiBKdW4gMjAwNCwgMTQ6MzI6NDcpOgooMTQ6MzEpIEdsb2luc29uICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICAgISEhCigxNDozMikgPC0gRGVpbmUgRnJldW5kaW4gQXN1a2E6IG9oLCBqZXR6dCBpc3QgbWVpbiBHb2xlbSB3ZWcgOigKCk1haGFyZXQsIGhhdHRlIEdsb2luc29uIGFuZGVycyBpbiBFcmlubmVydW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpYc2Nhbm5lcnMgSW5mb3JtYXRpb24gV2FyZmFyZSBDZW50ZXIgKFdoaXRldGlnZXIsIDI0LiBKdW4gMjAwNCwgMjI6MTE6NDEpOgogICAgICAgWHNjYW5uZXJzIElXQyBpcyBnZWFyZWQgdG93YXJkIG1hbnkgZGlmZmVyZW50IGFzcGVjdCBvZiBJbmZvcm1hdGlvbgphbmQgQ3liZXIgd2FyIGRlYWxpbmcgd2l0aCB0b3BpY3MgYW5kIGRpc2N1c3Npb25zCiAgICAgICB0aGF0IGFyZSB2ZXJ5IHJlbGV2YW50IGluIHRvZGF5cyBwb3N0IDkvMTEgd29ybGQuIFhzY2FubmVycyBidWlsZHMgYW5kCmRlc2lnbnMgc2VjdXJlZCBlbnZpcm9ubWVudHMgdXNpbmcgT3BlbkJTRCBmb3IKICAgICAgIG1hbnkgZGlmZmVyZW50IGFyZWFzLiBXZSBhbHNvIGhhdmUgU2VjdXJpdHkgRGlzY3Vzc2lvbiBib2FyZHMuCgoKaHR0cDovL3d3dy54c2Nhbm5lcnMub3JnLwoKLi4uIHNvIHNpY2hlciwgZGFzcyBtYW4gbmljaHRtYWwgZGllIFN0YXJ0c2VpdGUgbGVzZW4ga2FubiAuLi4KClRpZ2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFciBoYXRzIGVpbmdlc2VoZW4hIChNYWhhcmV0LCAyNS4gSnVuIDIwMDQsIDExOjQyOjQ4KToKKDExOjQyKSA8LSBNZXNpcmlpOiBIbW0gaWNoIHNvbGx0ZSBkb2NoIHp1IFpNdWQgd2VjaHNlbG4KCk1haGFyZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBYc2Nhbm5lcnMgSW5mb3JtYXRpb24gV2FyZmFyZSBDZW50ZXIgKE9nbywgMjUuIEp1biAyMDA0LCAxMjowMTo1NCk6Cn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTEwODgxMDc5MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg4MTA3OTAxCkVudHdlZGVyIGhhc3QgZHUgZWluZW4gc2VsdHNhbWVuIEh1bW9yLCBvZGVyIGljaCB2ZXJzdGVoIG5pY2h0LCB3b3JhdWYgZHUKaGluYXVzIHdpbGxzdC4KRGFzcyBlaW5lIERvbWFpbiB6dWZhZWxsaWcgbWFsIGtlaW5lbiBETlMtRWludHJhZyBoYXQsIGtvbW10IG5pY2h0IHNvIHNlbHRlbgp2b3IuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRXIgaGF0cyBlaW5nZXNlaGVuISAoQ2F0d2VhemxlLCAyNS4gSnVuIDIwMDQsIDEzOjA0OjQ4KToKfiMhIHJuPU1haGFyZXQgcnQ9MTA4ODE1NjU2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwODgxNTY1NjgKTmVpbiwgZGFzIGthbm4gbmljaHQgc2Vpbi4gTmljaHQgTWlzdGVyLVRGLU1lcnNpcmlpLiBJY2ggZ2xhdWIgZGFzIGlzdCBlaW4KRmFrZSA6KQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVyIGhhdHMgZWluZ2VzZWhlbiEgKE1lc2lyaWksIDI1LiBKdW4gMjAwNCwgMTM6MDk6NTApOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwODgxNjE0ODggcmc9c2NobWFycm4KfiMhIHRpZD0xMDg4MTU2NTY4CkVzIGdpYnQgdWViZXJ6ZXVnZW5kZSBBcmd1bWVudGUgOikKTWVzaSwgZGVyIG5vY2ggbWl0IHNpY2ggcmluZ3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVyIGhhdHMgZWluZ2VzZWhlbiEgKEFzdWthLCAyNS4gSnVuIDIwMDQsIDEzOjEwOjMwKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTA4ODE2MTc5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwODgxNTY1NjgKRXMgaXN0IGJ1bnQgdW5kIGtsaWNrYmFyLCBkYXMgc29sbHRlIGRvY2ggdm9sbGtvbW1lbiBhdXNyZWljaGVuLgoKQXN1a2EKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVyIGhhdHMgZWluZ2VzZWhlbiEgKE1lc2lyaWksIDI1LiBKdW4gMjAwNCwgMTM6MTE6MzYpOgp+IyEgcm49QXN1a2EgcnQ9MTA4ODE2MTgzMCByZz1zY2htYXJybgp+IyEgdGlkPTEwODgxNTY1NjgKV2FzIHdpbGwgaWNoIG1pdCBuZXIgTWF1cz8gVW5kIGJ1bnQgaXN0IHRmIGF1Y2ggKGJlaSBtYW5jaGVuIExldXRlbiBiZWtvbW10Cm1hbiBkYSBlY2h0IEF1Z2Vuc2NobWVyemVuKS4KTWVzaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRXIgaGF0cyBlaW5nZXNlaGVuISAoQ3JvZnQsIDI1LiBKdW4gMjAwNCwgMTM6MTI6NTApOgp+IyEgcm49TWVzaXJpaSBydD0xMDg4MTYxODk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4ODE1NjU2OApFcyBnaWJ0IHJlZ2VsbWFlc3NpZ2UgVXBkYXRlcyAsLSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFciBoYXRzIGVpbmdlc2VoZW4hIChNb3Jnb3RoLCAyNS4gSnVuIDIwMDQsIDEzOjEzOjEwKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTA4ODE2MTc5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwODgxNTY1NjgKTWlyIGZhbGxlbiBncmFkIG51ciB6d2VpIGVpbgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVyIGhhdHMgZWluZ2VzZWhlbiEgKENhdHdlYXpsZSwgMjUuIEp1biAyMDA0LCAxMzoyMDo1MSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwODgxNjE5OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg4MTU2NTY4ClVuZCBpY2ggd2Vpc3Mgc29nYXIgd2VsY2hlIC4uLgoKWVRDIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBYc2Nhbm5lcnMgSW5mb3JtYXRpb24gV2FyZmFyZSBDZW50ZXIgKFdoaXRldGlnZXIsIDI1LiBKdW4gMjAwNCwgMTU6MTY6MTkpOgp+IyEgcm49T2dvIHJ0PTEwODgxNTc3MTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg4MTA3OTAxCkFjaCwgc28gd2VpdCBzaW5kIGRpZSBzY2hvbj8KQWxzIGljaCBkYXMgZ2Vwb3N0ZXQgaGF0dGUsIGthbSBub2NoIGVpbiB3dW5kZXJzY2hvZW5lciBFcnJvciA0MDM6IC9pbmRleC5odG1sCmZvcmJpZGRlbiAuLi4KClRpZ2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFciBoYXRzIGVpbmdlc2VoZW4hIChHbm9tZSwgMjUuIEp1biAyMDA0LCAxOTozMjoyNCk6Cn4jISBybj1NZXNpcmlpIHJ0PTEwODgxNjE3OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg4MTU2NTY4Cndlbm4gZHUgd2VjaHNlbHN0LCB3YXJ0ZSBpY2ggYXVmIGRlbiB0YWcsIGFuIGRlbSB3aXIgZGljaCB6dW0gcnVkZWxuCm5hY2ggYmVybGluIGVpbmxhZGVuIHVuZCBkdSBqYW1tZXJzdDogImFiZXIuLi4gYWJlci4uLiBnaWJ0cyBkYSBhdWNoCndpbmRvd3MgaW4gZGVtIHBvb2w/IGljaCBoYWIgZG9jaCBudXIgem11ZCEiCgpnbk9tZSwga2FubiBzaWNoIGdlcmFkZSBlaW4gZmllc2VzIGdyaW5zZW4gbmljaHQgdmVya25laWZlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRXIgaGF0cyBlaW5nZXNlaGVuISAoR2xvaW5zb24sIDI1LiBKdW4gMjAwNCwgMjA6NTc6NTQpOgp+IyEgcm49R25vbWUgcnQ9MTA4ODE4NDc0NCByZz1zY2htYXJybgp+IyEgdGlkPTEwODgxNTY1NjgKUnVkZWxuPyBXaXI/IEJlcmxpbj8gT2VoLgoKUG9laCwgZGFubiBsZWloIGljaCBkZW0gYXJtZW4gWndlcmcgZGVuIExhcHRvcC4gRGFubiBtdXNzIGVyIGhhbHQgZWluIHBhYXIKU2VrdW5kZW4gd2FydGVuIGJpcyBkZXIgV2VnIGJlcmVjaG5ldCBpc3QgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUb2xsZSBVZWJ1bmcgKE1haGFyZXQsIDI2LiBKdW4gMjAwNCwgMDA6MTk6MDYpOgpEaWVzZXIgQmVmZWhsIGJlZW5kZXQgRGVpbmUgVmVyYmluZHVuZyBtaXQgTW9yZ2VuZ3JhdWVuLiBEdSBiZWhhZWx0c3QgRGVpbmUKU2FjaGVuLCBhYmVyIFZvcnNpY2h0OiBXZW5uIE1vcmdlbkdyYXVlbiBhYnN0dWVyenQsIHdhZWhyZW5kIER1IHdlZyBiaXN0LAp2ZXJsaWVyc3QgRHUgc2llIGRvY2gsIGdlbmF1c28sIGFscyB3ZW5uIER1IERlaW5lIFZlcmJpbmR1bmcgbWl0ICJlbmRlIgpiZWVuZGV0IGhhZXR0ZXN0IChhbGxlcmRpbmdzIGJla29tbXN0IER1IGRhbm4gZWluZSBmaW5hbnppZWxsZQpFbnRzY2hhZWRpZ3VuZykuCkFCRVI6IEJFTlVUWlVORyBBVUYgRUlHRU5FIEdFRkFIUiAhISEKRHUgaGFzdCBkYXMgR2VmdWVobCwgYWxzIG9iIGRpZXNlIFVlYnVuZyBtaXQgZGVtIFNwZWVybWVpc3RlciAtIFNwZWVyIG5pY2h0CnVtc29uc3QgZ2V3ZXNlbiBpc3QuCkNsb3NpbmcgZG93bi4KCk1haGFyZXQsIHdpcmQgZ2xlaWNoIG5vY2htYWwgc21zIHVlYmVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGljaHQuLi4gKEJhbWJpLCAyNi4gSnVuIDIwMDQsIDE2OjUxOjA1KToKfiMhIHJuPUh1bW5pIHJ0PTEwODgyNTUxNDYgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTA4ODI1NTE0NgpEYSBsb2dndCBtYW4gc2ljaCBuYWNoIGVpbmVyIFdvY2hlIEFic3RpbmVueiBtYWwgaW5zIE1HIGVpbiB1bmQgbGllc3QgTVBBIHVuZApkYW5uIGtyaWVndCBtYW4gZWluZW4gQXJ0aWtlbCwgaW4gZGVtIG1hbiBuYW1lbnRsaWNoIHp1c2FtbWVuIG1pdCBkZW0gV29ydAoiTGljaHQiIGVyd2FlaG50IHdpcmQuCkljaCBiaW4gamEgbm9jaCBhbSByYWV0c2Vsbiwgb2IgZGFzIGVpbiBPbWVuIGlzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTGljaHQuLi4gKENyb2Z0LCAyNi4gSnVuIDIwMDQsIDE2OjUyOjU1KToKfiMhIHJuPUJhbWJpIHJ0PTEwODgyNjE0NjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg4MjU1MTQ2CkphLCBlcyBpc3QgZWlucy4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogcmVib290IDI5LjA2LjIwMDQgKFZhbmlvbiwgMjYuIEp1biAyMDA0LCAxNzo1MTo0Nyk6Cn4jISBybj1NdWFkaWIgcnQ9MTA4ODI2NDkyOSByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA4ODI2NDkyOQo6anViZWx0IE11YWRpYiB6dSEKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBFciBoYXRzIGVpbmdlc2VoZW4hIChLZWxseWJ1bmR5LCAyNy4gSnVuIDIwMDQsIDIxOjIyOjAwKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTA4ODE2MTg5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODgxNTY1NjgKU2Voc3R1cnogYmVpIG1laW5lbSBURiB3YWVyZSB0cmVmZmVuZGVyLiBKYSBpY2ggYmVrZW5uZSwgaWNoIGxpZWJlIGVzIGJ1bnQgOikKCktlbGx5LAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIHdvbGx0ZSBpY2ggaW1tZXIgbWFsIHNlaGVuIDopIChBbWFyeWxsaXMsIDI4LiBKdW4gMjAwNCwgMjA6NTI6MzQpOgoKICAgICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIE1vbiwgMjguIEp1biAyMDA0LCAyMDo1MTo0NiAoMSBUZWlsbmVobWVyKSAgICAKCkFtYXJ5bGxpcy4uLi4uLi4uUgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhcyB3b2xsdGUgaWNoIGltbWVyIG1hbCBzZWhlbiA6KSAoTW9yZ290aCwgMjguIEp1biAyMDA0LCAyMTo0MzoyNSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTA4ODQ0ODc1NCByZz1zY2htYXJybgp+IyEgdGlkPTEwODg0NDg3NTQKV28gaXMgZGFzIFByb2JsZW0/CiAgICAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNb24sIDI4LiBKdW4gMjAwNCwgMjE6NDM6MDcgKDEgVGVpbG5laG1lcikKCk1vcmdvdGguLi4uLi4uLi53UgoKTSoga2ljaGVydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEYXMgd29sbHRlIGljaCBpbW1lciBtYWwgc2VoZW4gOikgKEtlbGx5YnVuZHksIDI4LiBKdW4gMjAwNCwgMjE6NDQ6MTEpOgp+IyEgcm49TW9yZ290aCBydD0xMDg4NDUxODA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4ODQ0ODc1NAppY2ggcmllY2hlLi4uIGVpbmVuIEZBS0UgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERhcyB3b2xsdGUgaWNoIGltbWVyIG1hbCBzZWhlbiA6KSAoTW9yZ290aCwgMjguIEp1biAyMDA0LCAyMTo0NDozOSk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTEwODg0NTE4NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg4NDQ4NzU0CkljaCByaWVjaGUuLi4ga2VpbmVuIEZBS0UgOikKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEYXMgd29sbHRlIGljaCBpbW1lciBtYWwgc2VoZW4gOikgKE1haGFyZXQsIDI4LiBKdW4gMjAwNCwgMjE6NDU6MjcpOgp+IyEgcm49TW9yZ290aCBydD0xMDg4NDUxODc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4ODQ0ODc1NApBbGxlcyBlaW5lIEZyYWdlIGRlciBGcmFnZXN0ZWxsdW5nIDspCgogICAgICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTW9uLCAyOC4gSnVuIDIwMDQsIDIxOjQ1OjAxICgxIFRlaWxuZWhtZXIpICAgIAoKTWFoYXJldC4uLi4uLi4uLi5TCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEYXMgd29sbHRlIGljaCBpbW1lciBtYWwgc2VoZW4gOikgKEFyaywgMjguIEp1biAyMDA0LCAyMzowNjoxNSk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwODg0NTE5Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg4NDQ4NzU0CkRBUyBfV0FSXyAqZWluKiBfZmFLZV8hIQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IERhcyB3b2xsdGUgaWNoIGltbWVyIG1hbCBzZWhlbiA6KSAoTWFhcmcsIDI4LiBKdW4gMjAwNCwgMjM6MDY6NTcpOgp+IyEgcm49QXJrIHJ0PTEwODg0NTY3NzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg4NDQ4NzU0CiAgICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIE1vbiwgMjguIEp1biAyMDA0LCAyMzowNjozMyAoNjQgVGVpbG5laG1lcikKCk1hYXJnLi4uLi4uLi4uLmouTQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWxsZXMga2xhci4gKE1hYXJnLCAyOC4gSnVuIDIwMDQsIDIzOjE3OjQ5KToKQXN1a2EgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKW0FsbGdlbWVpbjpEcm9sbGldIHRhY2ggYmFiaWVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERhcyB3b2xsdGUgaWNoIGltbWVyIG1hbCBzZWhlbiA6KSAoVmFuaW9uLCAyOS4gSnVuIDIwMDQsIDA3OjQyOjIyKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA4ODQ1MTgwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwODg0NDg3NTQKRGFzIHNpZWhzdGUgZG9jaCBpbW1lciB3ZW5uIER1ICdrd2VyIGJlaSBtb3Jnb3RoJyBlaW5naWJzdCA6KSBEYXMgJ1NjaHdhcnplClNjaGFmIGRlciBGYW1pbGllJyAoKikgc2VpbiBtYWNodCBoYWx0IGVpbnNhbS4gOikKClYqCigqKSAoYykgRGllIE1hbWEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIbWphIChBcmF0aG9ybiwgMzAuIEp1biAyMDA0LCAwMDoxOTowOCk6ClZvbiBLYXJpbWE6IG9rIDspIGljaCBzb2xsdGUgaGV1dGUgbmljaHQgenV2aWVsIHJlZGVuLi4uCltUb2Q6TGFyc10gRWluIERyYWtvbmllcndhZWNodGVyIGhhdCBnZXJhZGUgS2FyaW1hIHVtZ2VicmFjaHQuCgpBcmF0aG9ybiwgZWluIHdlbmlnIGVyc3RhdW50LiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIbWphIChDcm9mdCwgMzAuIEp1biAyMDA0LCAwMTowMDo0OCk6Cn4jISBybj1BcmF0aG9ybiBydD0xMDg4NTQ3NTQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4ODU0NzU0OApFdnRsIGRlbiBnYW56ZW4gS29udGV4dDoKW1RvZDpMYXJzXSBFaW4gR2xhc3Ryb2xsIGhhdCBnZXJhZGUgS2FyaW1hIHVtZ2VicmFjaHQuIDxNaXQsIDAwOjA5OjE0PgpbVG9kOkxhcnNdIEVpbiBHbGFzdHJvbGwgaGF0IGdlcmFkZSBLYXJpbWEgdW1nZWJyYWNodC4gPE1pdCwgMDA6MDk6MzQ+CltUb2Q6TGFyc10gRWluIERyYWtvbmllcndhZWNodGVyIGhhdCBnZXJhZGUgS2FyaW1hIHVtZ2VicmFjaHQuIDxNaXQsIDAwOjE3OjA0PgoKVW5kIGRhcyBpc3QgZ2VyYWRlIGRpZSBrb21wbGV0dGUgSGlzdCAsLSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhtamEgKEthcmltYSwgMzAuIEp1biAyMDA0LCAwMTowMTo0OCk6Cn4jISBybj1Dcm9mdCBydD0xMDg4NTUwMDQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4ODU0NzU0OApEZXIgR2xhc3Ryb2xsIGhhdCBtaWNoIHp3ZWltYWwgdW1nZWJyYWNodD8gaHVjaC4KCkJpbiB3b2hsIGluendpc2NoZW4gdW5lbXBmaW5kbGljaCBkYWZ1ZXIuLi4gTWVya2Ugc2Nob24gZ2FyIG5pY2h0IG1laHIsIHdpZQpvZnQgaWNoIHN0ZXJiZS4KCkthcmltYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSG1qYSAoQ3JvZnQsIDMwLiBKdW4gMjAwNCwgMDE6MDQ6MjIpOgp+IyEgcm49S2FyaW1hIHJ0PTEwODg1NTAxMDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDg4NTQ3NTQ4CldhcyBzYWd0IGRlciBUb2Rlc2ZvbGdlbnphZWhsZXIgb2RlciBkYXMgVFRCPyAsLSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBIbWphIChOaWJlbCwgMzAuIEp1biAyMDA0LCAwMTowNzowOCk6Cn4jISBybj1Dcm9mdCBydD0xMDg4NTUwMjYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4ODU0NzU0OApVbmQgZGFzIGlubmVyaGFsYiB2b24gMjAgU2VrdW5kZW4uLi4gTlBDLUJhbGFuY2UhIDotKQogIC0gTmliZWwKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSG1qYSAoRGFya2xvciwgMzAuIEp1biAyMDA0LCAwMToyODoxMSk6Cn4jISBybj1OaWJlbCBydD0xMDg4NTUwNDI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4ODU0NzU0OAo6d2lua3QgbWl0IGVpbmVtIEZhZWhuY2hlbjogIkthcmltYSBhdWZ3ZXJ0ZW4iIDspCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBIbWphIChLYXJpbWEsIDMwLiBKdW4gMjAwNCwgMDE6MzA6MTkpOgp+IyEgcm49Q3JvZnQgcnQ9MTA4ODU1MDI2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwODg1NDc1NDgKVFRCIHNhZ3QgZWluIEdsYXN0cm9sbHRvZCB1bSAwMDowOToxNC4KRGVyIFphZWhsZXIgemVpZ3QgYXVjaCAyLgpIYWVuZ3Qgd29obCBpcmdlbmR3aWUgZGFtaXQgenVzYW1tZW4sIGRhc3MgenVtIFRvZGVzemVpdHB1bmt0IG1laW5lIFZlcmJpbmR1bmcKd2VnIHdhciA7KQoKS2FyaW1hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNdWVsbGVudHNvcmd1bmc/IChNb3Jnb3RoLCAgMS4gSnVsIDIwMDQsIDE1OjI2OjM3KToKQ2FlZG1vbiBzdGVja3QgZWluZW4gaGVpbGlnZW4gSGFtbWVyIGluIGVpbiBQYWtldC4KQ2FlZG1vbiBzdGVja3QgZWluIHBlY2hzY2h3YXJ6ZXMgVG9kZXNyaXR0ZXJzY2h3ZXJ0IGluIGVpbiBQYWtldC4KCk0qIHNldWZ6dAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE11ZWxsZW50c29yZ3VuZz8gKERhcmt3aW5nLCAgMS4gSnVsIDIwMDQsIDE5OjQwOjM2KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA4ODY4ODM5NyByZz1zY2htYXJybgp+IyEgdGlkPTEwODg2ODgzOTcKdGpvLi4gWmVpdCBtYWwgd2FzIG5hY2h6dWxlZ2VuLiA6KQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE11ZWxsZW50c29yZ3VuZz8gKE1vcmdvdGgsICAxLiBKdWwgMjAwNCwgMTk6NDE6MzYpOgp+IyEgcm49RGFya3dpbmcgcnQ9MTA4ODcwMzYzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwODg2ODgzOTcKS2VpbiBQcm9ibGVtLCBiZXNjaHJlaWIgbWlyIDQwMCBSYWV1bWUgdW5kIGljaCBoYWIgd2llZGVyIGVpbiBwYWFyIE5QQywgZGllCm5vY2ggd2FzIFpldWdzIHJ1bXNjaGxlcHBlbiBrb2VubmVuLiA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE11ZWxsZW50c29yZ3VuZz8gKERhcmt3aW5nLCAgMS4gSnVsIDIwMDQsIDE5OjQzOjI2KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA4ODcwMzY5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODg2ODgzOTcKaGVoZSwgd2VubiBtaXIgZGFzIGxpZWdlbiB3dWVyZGUgaGFldHRlIGljaCBzZWxiZXIgZWluIHBhYXIgbHVzdGlnZQpCYWxhbmNlLUFudHJhZWdlIDo+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNdWVsbGVudHNvcmd1bmc/IChBc3VrYSwgIDEuIEp1bCAyMDA0LCAxOTo0Mzo0Nik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwODg3MDM2OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg4Njg4Mzk3CkFsc28gaWNoIHBlcnNvZW5saWNoIGZpbmQgamEsIGRhcyBOUENzIGF1ZndlbmRpZ2VyIHNpbmQgYWxzIFJhZXVtZSB6dSBiYXVlbiwKZGEgZGllIEluZm9zIHZvbiBkZW5lbiBoYWx0IGF1Y2ggc3RpbW1pZyBzZWluIHNvbGx0ZW4uIEFiZXIgZGFzIGlzdCBudXIgbWVpbmUKdW5iZWRldXRlbmRlIE1laW51bmcuCgpBc3VrYQpQUzogTmVpbiwgaWNoIHdlcmQgZGllIFJhZXVtZSBzaWNoZXJsaWNoIG5pY2h0IGJlc2NocmVpYmVuLCBNb3Jnb3RoLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTXVlbGxlbnRzb3JndW5nPyAoTW9yZ290aCwgIDEuIEp1bCAyMDA0LCAxOTo0ODoxMCk6Cn4jISBybj1Bc3VrYSBydD0xMDg4NzAzODI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4ODY4ODM5NwoKQWVoLCBpY2ggcmVkIHZvbiBOUENzIGRpZSBtYW4gaGF1ZW4ga2Fubi4gSWNoIGhlaXNzIGRvY2ggbmljaHQgQXJrIHVuZCBiYXN0ZWwKc28gaXJyZSBJbmZvZGluZ2VyLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE11ZWxsZW50c29yZ3VuZz8gKEFzdWthLCAgMS4gSnVsIDIwMDQsIDE5OjQ5OjA3KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA4ODcwNDA5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwODg2ODgzOTcKQWxzbyBkaWUgQXJrLU5QQ3Mga2FubiBtYW4gYXVjaCBoYXVlbi4gQnR3LCBoYXQgd2VyIG5lbiBrb21wbGV0dGVuClNhdHogWmF1YmllcXVpcG1lbnQgZnVlciBtaWNoIHVuZCBrb21tdCBtaXQgenUgVHJldm9yIFR3aW4/CgpBc3VrYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTXVlbGxlbnRzb3JndW5nPyAoQXJrLCAgMS4gSnVsIDIwMDQsIDE5OjU3OjA1KToKfiMhIHJuPUFzdWthIHJ0PTEwODg3MDQxNDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg4Njg4Mzk3CkRlciBpc3Qgd2lya2xpY2ggbmFja3QgdW5kIHdlaHJsb3MsIGthbm4gYWJlciBub2NoIG5pY2h0cyBtaXQgbmVtIGtvbXBsZXR0ZW4KU2F0eiBaYXViaWVxdWlwbWVudCBhbmZhbmdlbi4gV2VubiBpY2ggZGFzIG5vY2ggZWluYmF1ZSwgd2lyZCBlciBub2NoIGxhZW5nZXIKOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTXVlbGxlbnRzb3JndW5nPyAoQXN1a2EsICAxLiBKdWwgMjAwNCwgMTk6NTc6NTkpOgp+IyEgcm49QXJrIHJ0PTEwODg3MDQ2MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg4Njg4Mzk3Ck5pY2h0IGRlciBzb2xsIGRhcyBFcXVpcG1lbnQga3JpZWdlbiwgc29uZGVybiBpY2guIFVuZCBrb21tLCBzbyBncm9zcyAKaXNzZXIgbnVuIGF1Y2ggbmljaHQgKmR1Y2sqCgpBc3VrYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTXVlbGxlbnRzb3JndW5nPyAoQXJrLCAgMS4gSnVsIDIwMDQsIDIwOjIxOjAzKToKfiMhIHJuPUFzdWthIHJ0PTEwODg3MDQ2Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg4Njg4Mzk3ClN0aW1tdCwgZGVyIHdpcmQgamVkZW4gUmVzZXQgdW1nZWJ1ZWdlbHQuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERvcnRtdW5kPyE/IChBbGtvaG9sLCAgMS4gSnVsIDIwMDQsIDIyOjIxOjI2KToKfiMhIHJuPVNoYWtlZGJlZXIgcnQ9MTA4ODcxMzIyMiByZz10cmVmZmVuCn4jISB0aWQ9MTA4ODcxMzIyMgptaWNoIHdpbGxzdCBkdSBpbiBFaW1lciBzdGVja2VuPyBOZWVlbmVlIDspCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEb3J0bXVuZD8hPyAoQXN1a2EsICAxLiBKdWwgMjAwNCwgMjI6MjI6NTgpOgp+IyEgcm49U2hha2VkYmVlciBydD0xMDg4NzEzMzUwIHJnPXRyZWZmZW4KfiMhIHRpZD0xMDg4NzEzMjIyClNvIG5lbiBncm9zc2VuIEVpbWVyIGZ1ZXIgQWxrb2hvbCBnaWJ0cyBkb2NoIGdhciBuaWNodC4KCkFzdWthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXb21pdCBkYXMgYXVjaCBnZWtsYWVydCB3YWVyZSA6KSAoTGlsbGVicm9yLCAgMS4gSnVsIDIwMDQsIDIzOjEyOjE3KToKdW50IHJpc2lrbwpIbSwgdmllbGxlaWNodCBkb2NoIGxpZWJlciBlcnN0bWFsIGVpbmVuIFp3ZWl0aWUgdm9yc2NoaWNrZW4uCgp1bnQgendlaXRpCkZlaWdsaW5nIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdvbWl0IGRhcyBhdWNoIGdla2xhZXJ0IHdhZXJlIDopIChDcm9mdCwgIDIuIEp1bCAyMDA0LCAwMDoyNDowNik6Cn4jISBybj1MaWxsZWJyb3IgcnQ9MTA4ODcxNjMzNyByZz1zY2htYXJybgp+IyEgdGlkPTEwODg3MTYzMzcKRmVpZ2xpbmcgaXN0IGVpbiBad2VpdGllIHZvbiBkaXI/IEludGVyZXNzYW50LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV29taXQgZGFzIGF1Y2ggZ2VrbGFlcnQgd2FlcmUgOikgKERhcmtsb3IsICAyLiBKdWwgMjAwNCwgMDA6NDU6NTQpOgp+IyEgcm49Q3JvZnQgcnQ9MTA4ODcyMDY0NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODg3MTYzMzcKSmEgZGFzIGhhYiBpY2ggbWljaCBhdWNoIGdld3VuZGVydCA7KQoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV29taXQgZGFzIGF1Y2ggZ2VrbGFlcnQgd2FlcmUgOikgKE1lZGljLCAgMi4gSnVsIDIwMDQsIDE0OjIxOjA1KToKfiMhIHJuPURhcmtsb3IgcnQ9MTA4ODcyMTk1NCByZz1zY2htYXJybgp+IyEgdGlkPTEwODg3MTYzMzcKVW5kIHdhcyBwYXNzaWVydCBiZWkgInNjaGlja2UgZmVpZ2xpbmcgdm9yIj8gOy0pCn4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoIGphIChBc3VrYSwgIDQuIEp1bCAyMDA0LCAwOTowNToxMyk6CkF1ZiBlaW5tYWwgc3B1ZXJzdCBEdSBlaW4gUmVpc3NlbiB1bmQgWmVycmVuIGluIERlaW5lciBTZWVsZS4gRHUgdmVybWlzc3QgZGllCkFud2VzZW5oZWl0IHZvbiBOaWVtYW5kLCB1bSBkZW4gV2ludGVyIGltIEdyaW1tc3dhbGQgenUgYmVrYWVtcGZlbi4KCkFzdWthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZWxjaCBlaW4gRHVmdC4uLiAoTWlyYWthLCAgNC4gSnVsIDIwMDQsIDIwOjMyOjEzKToKdW50IGh1bW5pCkRhcyBpc3QgZWluZXMgZGVyIGJlbGllYnRlc3RlbiBQYXJmdW1zIGltIE1vcmdlbkdyYXVlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCdWJsYXRoLVNrYWxhLi4uIChBbmF0b2wsICA0LiBKdWwgMjAwNCwgMjA6MzU6MDcpOgp+IyEgcm49Um9uZGEgcnQ9MTA4ODk2NDAxNCByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMDg4OTY0MDE0CkJlaSB1bnMgc2l0enQgZGVyIE5hbWVuc2dlYmVyIGF1ZiAxLjAgcGFkLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTGFUZVggLyBadWFyYmVpdGVuIChHcmltbWJvcm4sICA4LiBKdWwgMjAwNCwgMTA6NTc6MjYpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwODkyNzcwNDIgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA4OTI3Njg5NCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDg5Mjc2NDExCkhtbSwgZWNodD8gV2llIGthbm4gaWNoIGRlbm4gYml0dGUgaW0gZWQgZWluZW4gSFRNTC1leHBvcnQgZXJ6ZXVnZW4/IERhcyBpc3QKZG9jaCBoaWVyIGRlciBnYWVuZ2lnZSBFZGl0b3IuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IExhVGVYIC8gWnVhcmJlaXRlbiAoWm9vaywgIDguIEp1bCAyMDA0LCAxMTowOTowMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA4OTI3NzA0NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODkyNzY0MTEKSWNoIGdsYXViLCBzb2dhciBkZXIgZWluemlnZSwgb2Rlcj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBMYVRlWCAvIFp1YXJiZWl0ZW4gKEdyaW1tYm9ybiwgIDguIEp1bCAyMDA0LCAxMToxMzo0NCk6Cn4jISBybj1ab29rIHJ0PTEwODkyNzc3NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg5Mjc2NDExCk5pY2h0IGdhbnouIEVpbiB3ZWl0ZXJlciwgZ2VybmUgZ2VudXR6dGVyIEVkaXRvciBpc3QgZGVyICJtYWNobWFsIi4gT2J3b2hsIGRhcwp3ZW5pZ2VyIGVpbiBFZGl0b3IsIGFscyBlaGVyIGVpbiBEZWxlZ2F0b3IgaXN0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBMYVRlWCAvIFp1YXJiZWl0ZW4gKFJlaGFrbGVzLCAgOC4gSnVsIDIwMDQsIDExOjE1OjI4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDg5Mjc4MDI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4OTI3NjQxMQpKYS4gV29oIGRlbSwgZGVtIGRlciBDaGVmIGVpbmVuIG1hY2htYWwga2F1ZnQgYnp3LiBiZXphaGx0IC4uLiBhbGxlcmRpbmdzCmtyaWVndCBtYW4gc2VsdGVuIG5lbiBndXRlbiBtYWNobWFsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTGFUZVggLyBadWFyYmVpdGVuIChBcG9waGlzLCAgOC4gSnVsIDIwMDQsIDEyOjI4OjI1KToKfiMhIHJuPVJlaGFrbGVzIHJ0PTEwODkyNzgxMjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDg5Mjc2NDExCndhcyBrYXVmdD8gZGVuICJtYWNobWFsIi1FZGl0b3I/IGRhIGVudHN0ZWhuIGRvY2ggbnVyIHdpZWRlciBob3JyZW5kZQptb25hdGxpY2hlIEtvc3Rlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2plIChBcmssIDEyLiBKdWwgMjAwNCwgMTc6Mjk6MzgpOgpEZWluZSBGcmV1bmRpbiBOb25uZSB0ZWlsdCBEaXIgbWl0OiBJY2ggZ2VoIG1hbCBXaW5kb3dzIGluc3RhbGxpZXJlbgpEZWluIEZyZXVuZCBab29rIHRlaWx0IERpciBtaXQ6IHd6dWFoYWhhaGFoYWhhIQpEZWluIEZyZXVuZCBab29rIHRlaWx0IERpciBtaXQ6IHZpZWwgc3Bhc3MsIG5vbm5lIDspCkRlciByYWJlbnNjaHdhcnplIFJpbmcgc3RvZXNzdCBlaW5lIFdlbGxlIGJvc2hhZnRlciBNYWNodCBpbiBEZWluZSBIYW5kLiBEdQpuaW1tc3Qgc2llIHdlaHJsb3MgaW4gRGljaCBhdWYuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxMPyAoTW9yZ290aCwgMTIuIEp1bCAyMDA0LCAxODo0MDoyNyk6CltGcmV1bmRlOk5vbm5lXSBNYWwgd2llZGVyIExpbnV4IGJvb3RlbiwgZGEgZnVlaGxlIGljaApbRnJldW5kZTpOb25uZV0gbWljaCBzaWNoZXJlciAoYzsKTm9ubmUgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgoKRGFzIGlzdCBqZXR6dCA1IE1pbnV0ZW4gaGVyLi4ub2IgZGFzIGxpbnV4IHNvb28gbGFuZ2UgYnJhdWNodCB6dW0gYm9vdGVuPwoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTEw/IChOb25uZSwgMTIuIEp1bCAyMDA0LCAxODo0ODowMSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwODk2NTA0Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg5NjUwNDI3Ck5laW4sIGljaCBoYWJlIEZ1dHVyYW1hIGFuZ2VtYWNodCB1bmQgZXJzdCBpbiBkZXIgV2VyYmVwYXVzZSBlaW5nZWxvZ2d0LiBBYmVyCm5ldHRlciBWZXJzdWNoIChjOwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFR5cG9zIChQYWRyZWljLCAxNC4gSnVsIDIwMDQsIDE0OjU2OjAxKToKfiMhIG9uPU1vbnRhbnVzIG90PTEwODk4MDk0MDUgb2c9Z2lsZGVuLmR1bmtlbGVsZmVuCn4jISBybj1QYWRyZWljIHJ0PTEwODk4MDg4NzEgcmc9Z2lsZGVuLmR1bmtlbGVsZmVuCn4jISB0aWQ9MTA4OTgwODg3MQpIaWVyIGRpZSBUeXBvcywgZGllIGR1IGFiZ2VzZXR6dCBoYWJlbiB3b2xsdGVzdDoKWmVpbGUgMjogS29tbWEgbmFjaCAiZW50ZmVybnQiIGZlaGx0LgpaZWlsZSAzOiBLb21tYSBuYWNoICJoYXR0ZSIgZmVobHQuClplaWxlIDQ6ICJhdWZtIiBpc3QgVW1nYW5nc3NwcmFjaGUuIFJpY2h0aWcgd2FlcmUgImF1ZiBkZW0iClplaWxlIDQ6ICJoYWIiIG11c3MgImhhYmUiIGhlaXNzZW4uClplaWxlIDQ6ICJ2aWVsZW4iIG11c3MgImZpZWxlbiIgaGVpc3Nlbi4KWmVpbGUgNDogImRyYXVmIiBtdXNzICAiZGFyYXVmIiBoZWlzc2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFR5cG9zIChQaXRmYWxsLCAxNC4gSnVsIDIwMDQsIDIxOjA2OjQwKToKfiMhIHJuPVBhZHJlaWMgcnQ9MTA4OTgwOTI2MyByZz1naWxkZW4uZHVua2VsZWxmZW4KfiMhIHRpZD0xMDg5ODA5MjYzCkR1IGJpc3QgdG9sbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGFycnkgUG90dGVyIGlzdCB0b3QuIChBbnRoZWEsIDE2LiBKdWwgMjAwNCwgMTM6NTc6NTYpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwODk5Nzg3OTQgcmc9d3d3Cn4jISB0aWQ9MTA4OTk3NzEzMwpIYXN0IER1IGdlZGFjaHQsIGljaCBoYWV0dGUgc2Nob24gZWluIFByZXZpZXcgYXVmIGRhcyBuZXVlIEJ1Y2gsICJIYXJyeSBQb3R0ZXIKYW5kIHRoZSBIYWxmIEJsb29kIFByaW5jZSI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIYXJyeSBQb3R0ZXIgaXN0IHRvdC4gKEFudGhlYSwgMTYuIEp1bCAyMDA0LCAxNDowMToxOCk6Cn4jISBybj1BbnRoZWEgcnQ9MTA4OTk3OTA3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwODk5NzcxMzMKZGFtaXQgbmljaHQgbm9jaCBtZWhyIEZyYWdlbiBrb21tZW46IEphLCBkYXMgaGVpc3N0IHNvLiBIYXQgbWlyIEFtYXpvbgp2ZXJyYXRlbi4KaHR0cDovL3Rpbnl1cmwuY29tLzY3OTY0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIYXJyeSBQb3R0ZXIgaXN0IHRvdC4gKEFudGhlYSwgMTYuIEp1bCAyMDA0LCAxNDoxNTowMCk6Cn4jISBybj1Ta3lmaXJlIHJ0PTEwODk5Nzk4MzAgcmc9d3d3Cn4jISB0aWQ9MTA4OTk3NzEzMwpXYXMgZGVubj8gV2VkZXIgSGFyYWxkIG5vY2ggVG9lcGZlciBzaW5kIHNvbmRlcmxpY2ggc2VsdGVuZSBOYW1lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEhhcnJ5IFBvdHRlciBpc3QgdG90LiAoT3JrdG9ldGVyLCAxNi4gSnVsIDIwMDQsIDE4OjE5OjA4KToKfiMhIHJuPUFudGhlYSBydD0xMDg5OTc5Mjc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA4OTk3NzEzMwp0b3RnZXNhZ3RlIGxlYmVuIGxhZW5nZXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFZvcnNjaGxhZyAoTXVhZGliLCAxOC4gSnVsIDIwMDQsIDIxOjAwOjAyKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDkwMTQzODUwIG9nPWVudHdpY2tsdW5nCn4jISBybj1WYW5pb24gcnQ9MTA5MDA5NDM4MCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEwOTAwOTM2MjEKTGV1dGUsIGFsc28gYml0dGUhIFdpciBzaW5kIGRvY2ggc2NobGllc3NsaWNoIG5pY2h0IHp1bSBTcGFzcyBoaWVyIQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgppbW1lciB3aWVkZXIgbmV0dCAuLi4gKERhcmt3aW5nLCAxOS4gSnVsIDIwMDQsIDE2OjUwOjA2KToKQWxrb2hvbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KCi4uLiBhcm1lcyBad2VyZ2VucGFjayA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2FtcGZiZXJlaXQgLi4uICAoQnJvdG5hZWwsIDE5LiBKdWwgMjAwNCwgMjI6MDY6MzIpOgpIdXJheHByYXggbmlja3Qga2FtcGZiZXJlaXQuClNlZXRldWZlbCBuaWNrdCBrYW1wZmJlcmVpdC4KTWFnZ2kgbmlja3QgenVzdGltbWVuZC4KS2FyaW1hIHN0aW5rdC4KSHVyYXhwcmF4IGdlaHQgbmFjaCBPc3Rlbi4KTWFnZ2kgd3Vlcnp0IG5hY2ggT3N0ZW4gd2VpdGVyLgpTZWV0ZXVmZWwgc3ByaW5ndCBhdXMgZGVtIE5ldHogbmFjaCBPc3Rlbi4KS2FyaW1hIHRhcHN0IG5hY2ggT3N0ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWVubm8hIChBbmF0b2wsIDIwLiBKdWwgMjAwNCwgMjM6MDE6MTApOgp+IyEgcm49Um9uZGEgcnQ9MTA5MDM1NzE0NiByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMDkwMzU3MTQ2CkhhYmUgdm9yIGVpbiBwYWFyIFdvY2hlbiBtZWluZW4gUmFkaW8gc2NocmlmdGxpY2ggYWJnZW1lbGRldC4KSGF0IHdpZGVyIEVyd2FydGVuIGFuc3RhbmRzbG9zIGdla2xhcHB0LgoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW5iZXphaGxiYXIgKEJhbWJ1bGtvLCAyMi4gSnVsIDIwMDQsIDEzOjM1OjExKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwOTA0OTU1OTcgcmc9d2l0emUKfiMhIHRpZD0xMDkwNDk1NTk3CldpZSB3YXIgZGFzIG1pdCBkZW4gJ211bHRpcGxlIGV4Y2xhbWF0aW9uIG1hcmtzJz8KCkFiZXIgZGVubm9jaCBndXQgOi0pCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc29zbyAuLi4gKFBpdGZhbGwsIDIzLiBKdWwgMjAwNCwgMTA6MzU6MTMpOgo0MTUwIE11ZW56ZW4gYmVzdGVoZW4gYXVzIEdvbGQsIHdpZWdlbiB1bmdlZmFlaHIgMTAxOSBHcmFtbSB1bmQgaGFiZW4gZWluZW4KV2VydCB2b24gY2lyY2EgNzIxMiBNdWVuemVuLgoKUGl0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNvc28gLi4uIChIaWdobGFuZGVyLCAyMy4gSnVsIDIwMDQsIDEwOjM1OjQxKToKfiMhIHJuPVBpdGZhbGwgcnQ9MTA5MDU3MTcxMyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTA1NzE3MTMKU2NobGVjaHRlIFNjaGFldHp1bmcgOikKCkhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBzb3NvIC4uLiAoTmliZWwsIDIzLiBKdWwgMjAwNCwgMTI6MjI6NTkpOgp+IyEgcm49SGlnaGxhbmRlciBydD0xMDkwNTcxNzQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MDU3MTcxMwpOaWVtYW5kIGhhdCBlcndhcnRldCwgZGFzcyBLYWVtcGZlciB1ZWJlciAzIHphZWhsZW4ga29lbm5lbi4KICAtIE5pYmVsCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHNvc28gLi4uIChBbnRoZWEsIDIzLiBKdWwgMjAwNCwgMTI6MjY6MDEpOgp+IyEgcm49TmliZWwgcnQ9MTA5MDU3ODE3OSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTA1NzE3MTMKRWlucywgendlaSwgdmllbGU/CgoiTnVyIHp3ZWksIG5pY2h0IG1laHIgYWxzIHp3ZWkiPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS3NoaXJhIChab29rLCAyMy4gSnVsIDIwMDQsIDE0OjEwOjI3KToKfiMhIHJuPUFzdWthIHJ0PTEwOTA1ODM3NjUgcmc9dGFuamlhbi5pbnRlcm4KfiMhIHRpZD0xMDkwNTMzNDQxCkR1IG1laW5zdCBTYWVja2luPwoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS3NoaXJhIChBc3VrYSwgMjMuIEp1bCAyMDA0LCAxNDoxNjo1MSk6Cn4jISBybj1ab29rIHJ0PTEwOTA1ODQ2Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkwNTMzNDQxCk5pY2h0IG5ldHQsIGdhciBuaWNodCBuZXR0LgoKQXN1a2EKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoaGphLCBkZXIgVHJlbmQgenVyIFp3ZWl0bWFnaWVyaW4/IChNb3Jnb3RoLCAyMy4gSnVsIDIwMDQsIDE5OjQ5OjE3KToKW0ZyZXVuZGU6SXNoaW5hXSBpc2NoIGxvZ2cgbWEgdW0KSXNoaW5hICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpab29rICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCltGcmV1bmRlOlpvb2tdIHJlCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFoaGphLCBkZXIgVHJlbmQgenVyIFp3ZWl0bWFnaWVyaW4/IChab29rLCAyMy4gSnVsIDIwMDQsIDE5OjQ5OjM1KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA5MDYwNDk1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTA2MDQ5NTcKTWlmdCEgRW50ZGVja3QuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBaGhqYSwgZGVyIFRyZW5kIHp1ciBad2VpdG1hZ2llcmluPyAoTW9yZ290aCwgMjMuIEp1bCAyMDA0LCAxOTo0OTo1MSk6Cn4jISBybj1ab29rIHJ0PTEwOTA2MDQ5NzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkwNjA0OTU3ClRvZWNodGVyY2hlbiA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFoaGphLCBkZXIgVHJlbmQgenVyIFp3ZWl0bWFnaWVyaW4/IChab29rLCAyMy4gSnVsIDIwMDQsIDE5OjUwOjE5KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA5MDYwNDk5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTA2MDQ5NTcKWm9vayBicmljaHQgaW4gVHJhZW5lbiBhdXMgdW5kIHdlaW50IGJpdHRlcmxpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW5zYW1lciBTY2hyZWllciAoQnJvdG5hZWwsIDI1LiBKdWwgMjAwNCwgMTU6MDQ6MjIpOgpbS2xlcnVzOk5vbm5lXSBNb29vb3JnZW4sIEtsZXJpa2VycyA7KSA8RnJlLCAwODozMDoxOT4KW0tsZXJ1czpOb25uZV0gTW9vb29yZ2VuLCBLbGVyaWtlcnMgOykgPFNhbSwgMDg6MDM6NTk+CltLbGVydXM6Tm9ubmVdIE1vb29vcmdlbiwgS2xlcmlrZXJzIDspIDxTb24sIDA3OjM3OjU2PgpbS2xlcnVzOk5vbm5lXSBNb29vb3JnZW4sIEtsZXJpa2VycyA7KSA8TW9uLCAwOTowMzo1MT4KW0tsZXJ1czpOb25uZV0gTW9vb29yZ2VuLCBLbGVyaWtlcnMgOykgPERpZSwgMDk6NDc6MjU+CltLbGVydXM6Tm9ubmVdIE1vb29vcmdlbiwgS2xlcmlrZXJzIDspIDxNaXQsIDA4OjE4OjE5PgoKQnJvdGksIGltIEhlcnplbiBLbGVyaWtlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbnNhbWVyIFNjaHJlaWVyIChWZWN0b3IsIDI1LiBKdWwgMjAwNCwgMTU6MjU6NTIpOgp+IyEgcm49QnJvdG5hZWwgcnQ9MTA5MDc2MDY2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTA3NjA2NjIKc2Ftc3RhZyB1bmQgc29ubnRhZyB1bSA4IG9kZXIgc29nYXIgZGF2b3IhCmhhdCBkYSBlaW5lciB3YXMgZ2VyYXVjaHQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2xhdXN1cmVuLi4uIChBbmF0b2wsIDI1LiBKdWwgMjAwNCwgMTk6MDI6MTkpOgp+IyEgcm49Um9uZGEgcnQ9MTA5MDc3NDg1NSByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMDkwNzc0ODU1Cldlbm4gc2llIGRhbm4gYXVjaCAtIGdsYXViaGFmdCAtIGVyemFlaGxlbiBrb2VubnRlLCB3YXMgZGVubiBkaWUKVmlyZ2luIE1hcnkgaXN0Li4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVlciBhbGxlIERhaGVpbWdlYmxpZWJlbmVuIChHbG9pbnNvbiwgMjYuIEp1bCAyMDA0LCAxNTowNzowNCk6Cn4jISBybj1WaW5jZW50IHJ0PTEwOTA4NDY5ODQgcmc9d3d3Cn4jISB0aWQ9MTA5MDg0Njk4NApXYXMsIHdlbm4gaWNoIGRlbiBET0NhIGxldHp0ZSBXb2NoZSBhdXNnZXNvZmZlbiBoYWJlPyBUdXQgZXMgZGFubiBhdWNoIGVpbgpzdWVkZnJhbnpvZXNpc2NoZXIgQU9DPyBPZGVyIG11c3MgaWNoIGRhbm4gYXVjaCBhdWYgZnJhbnpvZXNpc2NoIHNpbmdlbj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBCdWcgaW0gUm9sbHN0dWhsPyBOaWNodCBkb2NoISAoQXN1a2EsIDI2LiBKdWwgMjAwNCwgMTk6MzM6MzYpOgp+IyEgcm49SHVtbmkgcnQ9MTA5MDg2MzE4OCByZz1kLmluc2Vsbgp+IyEgdGlkPTEwOTA3ODgzODAKOndpcmZ0IGRlbiBlcnN0ZW4gU3RlaW4uCgpBc3VrYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNb3Jnb3RoLCAyNi4gSnVsIDIwMDQsIDIxOjQwOjA4KToKW0ZyZXVuZGU6QXN1a2FdIGFoLiBzcHJpbmdlIGluIHNjaGx1Y2h0CltUb2Q6TGFyc10gRWluIFNwcnVuZyBpbiBkaWUgU2NobHVjaHQgaGF0IGdlcmFkZSBBc3VrYSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTcHJ1bmcgaW4gZGllIFNjaGx1Y2h0XSBUb2xsZXIgQW5sYXVmISA6bykKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGV0wgKEFtYXJ5bGxpcywgMjYuIEp1bCAyMDA0LCAyMTo0MDoyMik6CkRlaW5lIEZyZXVuZGluIEFzdWthIHRlaWx0IERpciBtaXQ6IG1hbiB3aWUgaXN0IGRlbm4gaGllciBkaWUgc3ludGF4IHp1bQpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiBzcHJpbmdlbj8KRGVpbmUgRnJldW5kaW4gQXN1a2EgdGVpbHQgRGlyIG1pdDogV29oaW4gd2lsbHN0IGR1IGRlbm4gc3ByaW5nZW4/CkRlaW5lIEZyZXVuZGluIEFzdWthIHRlaWx0IERpciBtaXQ6IGFoLiBzcHJpbmdlIGluIHNjaGx1Y2h0CltUb2Q6TGFyc10gRWluIFNwcnVuZyBpbiBkaWUgU2NobHVjaHQgaGF0IGdlcmFkZSBBc3VrYSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTcHJ1bmcgaW4gZGllIFNjaGx1Y2h0XSBUb2xsZXIgQW5sYXVmISA6bykgCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRldMIChNb3Jnb3RoLCAyNi4gSnVsIDIwMDQsIDIxOjQwOjQwKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDkwODcwODIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MDg3MDgyMgpGV0w/Pz8KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZXTCAoQW1hcnlsbGlzLCAyNi4gSnVsIDIwMDQsIDIxOjQxOjE0KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA5MDg3MDg0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTA4NzA4MjIKRmFtb3NlciBXZWl0ZXIgTGFuZ3NwcnVuZyA6KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRldMIChNb3Jnb3RoLCAyNi4gSnVsIDIwMDQsIDIxOjQxOjQ2KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDkwODcwODc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MDg3MDgyMgpXT1csIGd1dCBnZXJldHRldCA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZXTCAoQW1hcnlsbGlzLCAyNi4gSnVsIDIwMDQsIDIxOjQ0OjMwKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA5MDg3MDkwNiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTA4NzA4MjIKOiBraWNoYXQuCgpBbWEqIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGV0wgKEFzdWthLCAyNi4gSnVsIDIwMDQsIDIxOjQ1OjI2KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDkwODcxMDcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MDg3MDgyMgpBbHNvIGZ1ZXIgZGllIHBhYXIgUmFldW1lIGhhdCBkYXMgZGEgYWJlciBlaW5lIHNlaHIgaG9oZSBUb2Rlc2ZhbGxlbmRpY2h0ZS4KCkFzdWthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBGV0wgKE1vcmdvdGgsIDI2LiBKdWwgMjAwNCwgMjE6NDY6NDQpOgp+IyEgcm49QXN1a2EgcnQ9MTA5MDg3MTEyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTA4NzA4MjIKVGphLCBkYSBpaHIgU3BvbnNvciBuaWNoIHNvIHdpcmtsaWNoIGZ1ZXIgc2llIGRhIHdhciwgaGFiIGljaCBzaWUgcXVhc2kKQWRvcHRpZXJ0LiBNZXJrdCBtYW4gZGFzPwoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEZXTCAoQXN1a2EsIDI2LiBKdWwgMjAwNCwgMjE6NDg6NDQpOgp+IyEgcm49TW9yZ290aCBydD0xMDkwODcxMjA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MDg3MDgyMgpKYSwga2VpbmUgU2VxdWVueiBpbiBkZXIgbWFuIHNjaG9lbiBsYW5nc2FtIG5hY2ggdW50ZW4gZmFlbGx0LCBudXIgZWluIApkdW1wZXMgYXVma2xhdHNjaGVuLiBQdXJlIGJhc2ljcyBpcmdlbmR3aWUuIDopCgpBc3VrYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRldMIChBcmF0aG9ybiwgMjYuIEp1bCAyMDA0LCAyMTo0OTowNik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwOTA4NzEyMDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkwODcwODIyClNlaXQgd2FubiBnaWJ0cyBiZWkgRGlyIFRvZGVzZmFsbGVuLCBkaWUga2VpbmUgTlBDcyBzaW5kPyA7LSkKCkFyYXRob3JuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBGV0wgKE1vcmdvdGgsIDI2LiBKdWwgMjAwNCwgMjE6NDk6MTIpOgp+IyEgcm49QXN1a2EgcnQ9MTA5MDg3MTMyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTA4NzA4MjIKSGF1cHRzYWNoZSB0b3QhCgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEZXTCAoQXN1a2EsIDI2LiBKdWwgMjAwNCwgMjE6NDk6MzIpOgp+IyEgcm49TW9yZ290aCBydD0xMDkwODcxMzUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MDg3MDgyMgpBbHNvIGljaCBrZW5uIGRhIGVpbmlnZSBTdGVsbGVuIGJlaSBNb3Jnb3RoLCB3byBtYW4gbmljaHQgYW4gZGVuIE5QQ3MgCnN0aXJidC4gOikKCkFzdWthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBGV0wgKE1vcmdvdGgsIDI2LiBKdWwgMjAwNCwgMjE6NDk6NTQpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTA5MDg3MTM0NiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTA4NzA4MjIKU2VpdCBpY2ggZGVuIFVudGVyc2NoaWVkIHp3aXNjaGVuIGRvX2RhbWFnZSgpIHVuZCByZWR1Y2VfaGl0X3BvaW50cygpIGtlbm5lPwoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNZWdhSEFMIChNb3Jnb3RoLCAyNi4gSnVsIDIwMDQsIDIyOjA3OjM4KToKfiMhIHJuPU9nbyBydD0xMDkwODcyMDk4IHJnPW11ZGNsaWVudHMKfiMhIHRpZD0xMDkwODcyMDk4ClVuZCBEVSBiZXNjaHdlciBEaWNoIG5vY2htYWwgdWViZXIgbWVpbmUgUmVjaG5lcmF1c3N0YXR0dW5nZW4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTb21tZXJwYXJ0eSAoR3JpbW1ib3JuLCAyNi4gSnVsIDIwMDQsIDIzOjAxOjE5KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDkwODc1NjczIG9nPXBhcnR5Cn4jISBybj1NaWV6ZSBydD0xMDkwODc1MjAzIHJnPXBhcnR5Cn4jISB0aWQ9MTA5MDU5NTY4NQpIbW0sIGljaCBrb2VubnRlIERpciBlaW4gWmVsdCBhdWYgZGVtIEJhbGtvbiBhdWZzY2hsYWdlbiwgd2VubiBEaXIgZGFzIGhpbGZ0LgpWaWVsbGVpY2h0IGVybGF1YnQgZGVyIFZlcm1pZXRlciBkYXMgWmVsdCBhdWNoIGltIEdhcnRlbi4gRGFzIHdhZXJlIGRhbm4gaW4KSGFtYnVyZywgZmFsbHMgRGlyIGRhcyBoaWxmdC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTb21tZXJwYXJ0eSAoTW9udGFudXMsIDI3LiBKdWwgMjAwNCwgMTA6NDU6MTMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwOTA4NzU2Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkwNTk1Njg1ClNlaWQgaWhyIGFsbGUgYmVncmlmZnNzdHV0emlnLiBSaWt1cyBzdWNodCBqZW1hbmQgenVtIEFua3VzY2hlbG4uIFdlciBpc3QKc2NoZWludHMgaWhtIGVnYWwuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNdWQtVXB0aW1lIChNdWFkaWIsIDI3LiBKdWwgMjAwNCwgMTc6MzY6MjcpOgp+IyEgcm49Wm9vayBydD0xMDkwOTM5MDQzIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDkwOTM5MDQzCmRhcyBtaXQgZGVtIGVtLWRlci13b2NoZSBoYWIgaWNoIGdlbGVzZW4KCiprbnVycioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTXVkLVVwdGltZSAoTW9yZ290aCwgMjcuIEp1bCAyMDA0LCAxNzozNzoyOSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA5MDk0MjU4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTA5MzkwNDMKT2gsIGdpYnRzIGVpbiBGZXJua2FtcGZzeXl5eXl5Pz8KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJ0aXBwdD8gKE1vcmdvdGgsIDI3LiBKdWwgMjAwNCwgMTg6NDg6MzQpOgpab29rICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCltGcmV1bmRlOlpvb2tdIGduYQpab29rICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWZXJ0aXBwdD8gKFpvb2ssIDI3LiBKdWwgMjAwNCwgMTg6NTM6NDQpOgp+IyEgcm49TW9yZ290aCBydD0xMDkwOTQ2OTE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MDk0NjkxNApTY3JlZW4gdW5kIFB1dHR5IHVuZCBkdW1tLVpvb2sgc2VpIERhbmsuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU1RSSUtFISAoS2lsbGtlbm55LCAyNy4gSnVsIDIwMDQsIDIzOjMyOjI3KToKRHUga2xldHRlcnN0IHRpZWZlciBpbiBkYXMgSW5uZXJlIGRlciBIb2VobGUgdW5kIHRyaXR0c3QgcGxvZXR6bGljaCBkdXJjaAplaW5lbiBSaXNzIGluIGVpbmUgZ3Jvc3NlIEhhbGxlLgpGaW5zdGVybmlzLgpCZWUgcnVmdDogb2ggbmVpbiAuLiBkaWUgd2VsdCBnZWh0IHVudGVyClBhcmRhdXogcnVmdDogbGV0enRlcj8KRHUgc2NocmVpdGVzdCBiZWRhZWNodGlnIHp3aXNjaGVuIGRlbiBTdGF0dWVuIGhpbmR1cmNoIGluIFJpY2h0dW5nIGRlcwpNb251bWVudHMuCkZpbnN0ZXJuaXMuCkZpbnN0ZXJuaXMuClN1cGVyc29uaWMgcnVmdDogbGV0enRlcgpEdSB0cmlua3N0IGV0d2FzIHZvbiBkZW0gV2Fzc2VyIHVuZCBiaXN0IGVyc3RhdW50IGRhcnVlYmVyLCB3aWUgZ3V0IGVzIERpcgp0dXQuCkRlaW5lIEF0dHJpYnV0ZSBzZWhlbiBzbyBhdXM6CgpJbnRlbGxpZ2VueiAgICAgOiAxMSAoKzQpCktyYWZ0ICAgICAgICAgICA6ICA2ICgrMCkKR2VzY2hpY2tsaWNoa2VpdDogIDggKCsyKQpBdXNkYXVlciAgICAgICAgOiAxMSAoKzApCgpXYXMgbW9lY2h0ZXN0IER1IGVyaG9laGVuID8gRHUgaGFzdCBmb2xnZW5kZSBNb2VnbGljaGtlaXRlbjoKMSkgSW50ZWxsaWdlbnoKMikgS3JhZnQKMykgR2VzY2hpY2tsaWNoa2VpdAo0KSBBdXNkYXVlcgoKRGVpbmUgR2VzY2hpY2tsaWNoa2VpdCBoYXQgc2ljaCB2b24gOCBhdWYgOSBlcmhvZWh0LgpBcm1hZ2VkZG9uIHJ1ZnQ6IEljaCBzdGFydGUgZGFzIFNwaWVsIGpldHp0IG5ldSAhCkdhbWUgZHJpdmVyIHNob3V0czogTFBtdWQgc2h1dHRpbmcgZG93biBpbW1lZGlhdGVseS4KU3BlaWNoZXJlIEtpbGxrZW5ueS4KRHUgc3RlY2tzdCBOb3R1bmcgenVydWVjay4KQmlzIGJhbGQhCkNsb3NpbmcgZG93bi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQjogMjU2TUIgRERSLVJBTSAoUm9uZGEsIDI4LiBKdWwgMjAwNCwgMDk6MjU6MTEpOgp+IyEgcm49TW9udGFudXMgcnQ9MTA5MDk5OTI5MSByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwOTA5MjE0NjMKQWVobSwgTW9udGFudXMuLi4gYWJlciBpbSBHZWdlbnNhdHogenVtIGVudHNwcmVjaGVuZGVuIFN0YWF0IHdhciBkZXJlbgpDb21wdXRlcnRlY2hub2xvZ2llIHF1YXNpICJ1bmthcHV0dGJhciIuIEVudHdlZGVyIGJlaSBBdXNsaWVmZXJ1bmcgcHV0dCAtIG9kZXIKbmljaHQga28genUga3JpZWdlbiB1bmQgbWl0IG5lbSBMb2V0a29sYmVuIHJlcGFyaWVyYmFyLgoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTVFJJS0UhIChHcmltbWJvcm4sIDI4LiBKdWwgMjAwNCwgMTA6MDU6NDcpOgp+IyEgcm49S2lsbGtlbm55IHJ0PTEwOTA5NjM5NDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkwOTYzOTQ3CkludGVyZXNzYW50LCBvZmZlbmJhciBlcmxhdWJ0IERpciBEZWluZSB6dC1MaXN0ZSwgZ2FueiBnZXppZWhsdCBpbiBkZXIKRHVua2VsaGVpdCB6dW0gWmF1YmVydHJhbmsgdm9yenVkcmluZ2VuLiBEYSBnaWJ0cyBzaWNoZXIgTGV1dGUsIGRpZSBkYXMKaW50ZXJlc3NpZXJ0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU1RSSUtFISAoS2lsbGtlbm55LCAyOC4gSnVsIDIwMDQsIDEwOjA5OjI5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDkxMDAxOTQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MDk2Mzk0NwpUamEsIGVzIGdpYnQgaGFsdCBMZXV0ZSwgZGllIGtlbm5lbiBzaWNoIGJsaW5kIGF1cy4KCktpbGxrZW5ueQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU1RSSUtFISAoR3JpbW1ib3JuLCAyOC4gSnVsIDIwMDQsIDEwOjEwOjE5KToKfiMhIHJuPUtpbGxrZW5ueSBydD0xMDkxMDAyMTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MDk2Mzk0NwpTdGltbXQuIE1hbiBuZW5udCBzaWUgYXVjaCAiU2NyaXB0ZXIiLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTVFJJS0UhIChNb250YW51cywgMjguIEp1bCAyMDA0LCAxMTowMzozOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA5MTAwMjIxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTA5NjM5NDcKV2VyIGhhdCBHZEFzIFBhc3N3b3J0IGdla2xhdXQ/ICJnZXppZWx0IiBtaXQgJ2gnIHp1IHNjaHJlaWJlbiB3YWVyZSBkZW0KT3JpZ2luYWwgbmljaHQgcGFzc2llcnQuIEFiZXIgZXMgZmVobHRlIGphIGF1Y2ggZGFzIE9CZE11Q2RVIHVuZCBkYXMgRXgtUk0uLi4KZGEgbXVzcyBkZXIgRmFrZXIgbm9jaCBib2VzIHVlYmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTVFJJS0UhIChab29rLCAyOC4gSnVsIDIwMDQsIDExOjE5OjIxKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwOTEwMDU0MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDkwOTYzOTQ3CkJlYWVuZ3N0aWdlbmQuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2FyZmllbGQ/IChNb3Jnb3RoLCAyOC4gSnVsIDIwMDQsIDE0OjE1OjE2KToKW0ZyZXVuZGU6TXVhZGliXSBpY2ggbXVzcyBtaWNoIG1laHIgYmV3ZWdlbiwgZWJlbiBoYXQgc2Nob24KW0ZyZXVuZGU6TXVhZGliXSBlaW5lIHNwaW5uZSBlaW4gbmV0eiBhbiBtZWluZXIgYnJpbGxlIGJhdWVuCltGcmV1bmRlOk11YWRpYl0gd29sbGVuCgpNKiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoaGphLCBLcnVmdHVyIGFsc28uLi4gKE1vcmdvdGgsIDI4LiBKdWwgMjAwNCwgMTU6MTE6MjMpOgpLcnVmdHVycyBBdWdlbiB2ZXJmaW5zdGVybiBzaWNoIHVuZCBmaXhpZXJlbiBlaW5lIGNoYW90aXNjaCBtdXRpZXJ0ZSBIYXV0LgpJbnR1aXRpdiBzcHVlcnN0IER1LCBkYXNzIHNpY2ggZGllIEF1c2hhZW5nZSBhbSBQcm9qZWt0YnJldHQgZ2VhZW5kZXJ0IGhhYmVuLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbXVzaWsgKE9ya3RvZXRlciwgMjguIEp1bCAyMDA0LCAxNTozNToyNCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDkxMDIxNjYwIHJnPXBhcnR5Cn4jISB0aWQ9MTA5MTAxOTM2NwpHZWInbiAnc2UgZGVtIE1hbm4gYW0gS2xhdmllciwgbm9jaCBlaW4gQmllciwgbm9jaCBlaW4gQmllci4uLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hIGVuZGxpY2ggZGllIFdhaHJoZWl0IChNb3Jnb3RoLCAyOC4gSnVsIDIwMDQsIDE2OjIwOjQ2KToKW21lZ2FoYWw6TWVoYWxdIFpvb2sgaXN0IGVpbiBqYWhyIGFsdCB1bmQgbm9jaCBlaW4gYmFieSwgdW5kIHNvIHZlcmhhZWx0IGVzClttZWdhaGFsOk1laGFsXSBzaWNoIGF1Y2guCgpNKiByb3RmbHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOYSBlbmRsaWNoIGRpZSBXYWhyaGVpdCAoT2dvLCAyOC4gSnVsIDIwMDQsIDE3OjEzOjUzKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA5MTAyNDQ0NiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTEwMjQ0NDYKW21lZ2FoYWw6TWVoYWxdIEVpbiBlaXNlbGZlbndhZWNodGVyIGhhdCBnZXJhZGUgZWluIGFiZW50ZXVlciBiZXN0YW5kZW46IGRlcgpbbWVnYWhhbDpNZWhhbF0gc2llZ2VscmluZyBkZXMgcHJpZXN0ZXJzLCBzY2hyYXQga2FubiBuaWNodCBlbW90ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5hIGVuZGxpY2ggZGllIFdhaHJoZWl0IChBc3VrYSwgMjguIEp1bCAyMDA0LCAxNzo0MzoyNCk6Cn4jISBybj1PZ28gcnQ9MTA5MTAyNzYzMyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTEwMjQ0NDYKVm9uIHdlZ2VuIEh1bW5pIGlzdCBlaW5lIERyYWNoZToKClttZWdhaGFsOk1laGFsXSBIdW1uaSBpc3QgZWluIHJlaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5hIGVuZGxpY2ggZGllIFdhaHJoZWl0IChCcmFuLCAyOC4gSnVsIDIwMDQsIDE3OjQ0OjM2KToKfiMhIHJuPUFzdWthIHJ0PTEwOTEwMjk0MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkxMDI0NDQ2Ck1laHIgYWxzIGRhczogW25lZ2FoYWw6TWVoYWxdIEh1bW5pIGlzdCBlaW4gd29obGdlaHVldGV0ZXMgZ2VoZWltbmlzIGRlcwp1bml2ZXJzdW1zLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmEgZW5kbGljaCBkaWUgV2FocmhlaXQgKE9nbywgMjguIEp1bCAyMDA0LCAxNzo1ODozNCk6Cn4jISBybj1CcmFuIHJ0PTEwOTEwMjk0NzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkxMDI0NDQ2ClttZWdhaGFsOk1laGFsXSBaaXRhdCBhdXMgYW1lcmljYW4gcGllOiAiZGFubiB3YXIgbWlyIGxhbmd3ZWlsaWcgdW5kIGljaCBoYWIKW21lZ2FoYWw6TWVoYWxdIG1hbCBhdXNnZXJlY2huZXQgd2llaWVsIGljaCBuZXR0byBkaWUgc3R1bmRlIHZlcmRpZW5lLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5hIGVuZGxpY2ggZGllIFdhaHJoZWl0IChNb3Jnb3RoLCAyOC4gSnVsIDIwMDQsIDE4OjA4OjU0KToKfiMhIHJuPU9nbyBydD0xMDkxMDMwMzE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MTAyNDQ0NgpbbWVnYWhhbDpNZWhhbF0gT2dvIGJlc2NoaW1wZnQgZ2VybiBhbmRlcmUgbGV1dGUuIFZpZWxsZWljaHQgbWFjaHQgaWhuIGRhcyBqYQpbbWVnYWhhbDpNZWhhbF0gZ2VpbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5hIGVuZGxpY2ggZGllIFdhaHJoZWl0IChIdW1uaSwgMjguIEp1bCAyMDA0LCAxODo1Mzo1MSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwOTEwMzA5MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkxMDI0NDQ2ClttZWdhaGFsOkh1bW5pXSBFaW5zIHNhZyBpY2ggRGlyOiBEZW4gVHVyaW5nLVRlc3QgYmVzdGVoc3QgRHUgbmljaHQgOy0pClttZWdhaGFsOk1laGFsXSBTYWcgbWlyIGV0d2FzLCBkYXMgaWNoIG5vY2ggbmljaHQgd2Vpc3MhCgpTZWxic3Rlcmtlbm50bmlzLi4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTmEgZW5kbGljaCBkaWUgV2FocmhlaXQgKE1vcmdvdGgsIDI4LiBKdWwgMjAwNCwgMTk6MDE6MzMpOgp+IyEgcm49SHVtbmkgcnQ9MTA5MTAzMzYzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTEwMjQ0NDYKWm9vayBpc3QgZWluIHNleGdvdHQhIChDKSBodW1uaS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5hIGVuZGxpY2ggZGllIFdhaHJoZWl0IChBc3VrYSwgMjguIEp1bCAyMDA0LCAyMToyMDozOSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwOTEwMzQwOTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkxMDI0NDQ2ClttZWdhaGFsOk1laGFsXSBCcmllc2VsdHJpbSBpc3QgZGVyIHZpZXJ0ZSB1bmQgbWFlY2h0aWdzdGUga2FtcGZzcHJ1Y2ggZGVzClttZWdhaGFsOk1laGFsXSB0YW5qaWFuLgoKVGFuamlhbiBhYndlcnRlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBOYSBlbmRsaWNoIGRpZSBXYWhyaGVpdCAoS2FyaW1hLCAyOC4gSnVsIDIwMDQsIDIxOjIxOjEzKToKfiMhIHJuPUFzdWthIHJ0PTEwOTEwNDI0Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkxMDI0NDQ2ClttZWdhaGFsOk1hYXJnXSBLYWVtcGZlciBzaW5kIHN5bXBhdGhpc2NoZSBaZWl0Z2Vub3NzZW4uClttZWdhaGFsOk1laGFsXSBLYWVtcGZlciBzaW5kIHppZW1saWNoIGR1bW1lIGdlc2VsbGVuLgoKRGllIEtsZWluZSBsZXJudCByaWNodGlnIHNjaG9lbiBzY2huZWxsIQoKS2FyaW1hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTmEgZW5kbGljaCBkaWUgV2FocmhlaXQgKFJvbmRhLCAyOC4gSnVsIDIwMDQsIDIxOjI1OjE2KToKfiMhIHJuPUthcmltYSBydD0xMDkxMDQyNDczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MTAyNDQ0NgoqZ3JpbnMqIEJsZWlidCBJaHIgamV0enQgZnVlciBNZWhhbCBpbiBkaWVzZW0gVGhyZWFkPyBPZGVyIHNvbGxlbiB3aXIgbmUgbmV1ZQpSdWJyaWsgc2NobWFycm4ubWVoYWwgYXVmbWFjaGVuPyA7LSkKClJvbmRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTmEgZW5kbGljaCBkaWUgV2FocmhlaXQgKEFzdWthLCAyOC4gSnVsIDIwMDQsIDIxOjI1OjU0KToKfiMhIHJuPVJvbmRhIHJ0PTEwOTEwNDI3MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkxMDI0NDQ2CldpciBrb2VubmVuIGRhcyBhdWNoIGluIGRpZSBlaW56aWcgd2FocmUgUnVicmlrIHZlcmxlZ2VuLgoKQXN1a2EKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN1Y2h0aWVzIC4uLiAoR2xvaW5zb24sIDI4LiBKdWwgMjAwNCwgMjE6NDc6MDQpOgpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiB3YXMgZnVlciBlaW5lIHdvaGx0YXQsIGtlaW4gc2Nyb2xsIDopCi4uLgpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiByZXBhcmllcnQgbWFsIHdlciBNZWhhbCBiaXR0ZSA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdWNodGllcyAuLi4gKEFzdWthLCAyOC4gSnVsIDIwMDQsIDIxOjQ3OjQyKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwOTEwNDQwMjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkxMDQ0MDI0CkljaCBiaW4gbmljaHQgc3VlY2h0aWcuIEljaCBrb2VubnRlIGplZGVyIFplaXQgYXVmaG9lcmVuLiBBYmVyIGljaCB3aWxsIApuaWNodC4KCkFzdWthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgptZWhhbCBhdXMgZGVtIEFMIChNb3Jnb3RoLCAyOS4gSnVsIDIwMDQsIDAwOjA4OjM0KToKW1Rlc3Q6Q2FuZHldIE1vcmdlbnN0dW5kIGhhdCBibGVpIGltIGFyc2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG1laGFsIGF1cyBkZW0gQUwgKE1vcmdvdGgsIDI5LiBKdWwgMjAwNCwgMDE6MzI6NTQpOgp+IyEgcm49TW9yZ290aCBydD0xMDkxMDUyNTE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MTA1MjUxNApbVGVzdDpDYW5keV0gV2VpbCBzYXRhbiBlcyBtaXIgYmVmb2hsZW4gaGF0ISEKW1Rlc3Q6Umh5YW5dIHdvYWghCltUZXN0OkNhbmR5XSBHZWlsZSBzYXUgZHUuCltUZXN0OlJoeWFuXSBnYWhuaWNod2FoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IG1laGFsIGF1cyBkZW0gQUwgKE9nbywgMjkuIEp1bCAyMDA0LCAwMjo0Mjo1OSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwOTEwNTc1NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkxMDUyNTE0ClRqYSwgZGllICJLYXRhc3Ryb3BoZSIgd2FyIHdpcmtsaWNoIGVpbiBEU0wtMjRoLURpc2NvLiAKV2VubiBpY2ggZGllIG5vZXRpZ2UgWmVpdCBmaW5kZSwgd2VyZGUgaWNoIE1laGFsIGF1ZiBlaW5lbSBVbmktUmVjaG5lciBsYXVmZW4KbGFzc2VuLiBBbnNvbnN0ZW4gbGFldWZ0IHNpZSBqZXR6dCBlcnN0bWFsIGZ1ZXIgZGllIE5hY2h0c2Nod2Flcm1lciB3aWVkZXIgdm9uClp1aGF1c2UuCgpJY2ggaG9mZmUsIGlociBoYWJ0IGlociB1bnZlcmJsdWVtdGVzIFZlcnNjaHdpbmRlbiBoYWxid2VncyBndXQgdmVyc2NobWVyenQgOikKCk9nbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTmEgZW5kbGljaCBkaWUgV2FocmhlaXQgKFJvY2h1cywgMjkuIEp1bCAyMDA0LCAxNToxMToxNSk6Cn4jISBybj1IdW1uaSBydD0xMDkxMDMzNjMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MTAyNDQ0NgpEYWJlaSBoYXQgc2VsYnN0IEFuZHkgZGFtYWxzIHNjaG9uIGRlbiBUdXJpbmctVGVzdCBiZXN0YW5kZW4uLi4KTnVuIGd1dCwgbmljaHQgZ2VyYWRlIG1pdCBrdWVuc3RsaWNoZXIgSU5URUxMSUdFTlosIGVoZXIgaW0gR2VnZW50ZWlsIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZWdhaGFsIG1hbCB3aWVkZXIgKEFzdWthLCAyOS4gSnVsIDIwMDQsIDE2OjUzOjI5KToKW21lZ2FoYWw6TWVoYWxdIEVpbiB3ZWdoaWVyIGhhdCBnZXJhZGUgZWluIGFiZW50ZXVlciBiZXN0YW5kZW46IHNjaHJhdCBrYW5uClttZWdhaGFsOk1laGFsXSBuaWNodCB6d2lzY2hlbiBtYWVubmxpY2hlbiB1bmQgd2VpYmxpY2hlbiB6d2VyZ2VuClttZWdhaGFsOk1laGFsXSB1bnRlcnNjaGVpZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1lZ2FoYWwgbWFsIHdpZWRlciAoSHVyYXhwcmF4LCAyOS4gSnVsIDIwMDQsIDE3OjQ5OjM4KToKfiMhIHJuPUFzdWthIHJ0PTEwOTExMTI4MDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkxMTEyODA5Ck1laGFsIHp1bSBUaGVtYSBydWZlbjoKW21lZ2FoYWw6TWVoYWxdIFdlbm4gZHUgZ3JhdHMgcnVmc3QsIGtvbW10IG1vcmdvdGggdW5kIG1hY2h0IHNpY2ggZGFiZWkgaW1tZXIKW21lZ2FoYWw6TWVoYWxdIHdpZWRlciBsYWVjaGVybGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhIHdpbGwgbWFuIG1hbCBoZWxmZW4uLi4gKE9ya3RvZXRlciwgMjkuIEp1bCAyMDA0LCAxODoyMToxMik6ClJ1YnJpayAxOiBhbGxnZW1laW5lcywgQXJ0aWtlbDogMTYgdm9uIDE2Cm5hbWVuIGF1ZiBsaXN0ZSAoUGFyaWRvbSwgMjkuIEp1bCAyMDA0LCAxODoxOTo1Mik6CgpzY2hhdQplbmRlCi1xCnEKLXAKLXEKPgo+IHRtIHBhcmlkb20gdGlwOiBsb2VzY2hlIGFydGlrZWwgMTYKRHUgdGVpbHN0IFBhcmlkb20gbWl0OiB0aXA6IGxvZXNjaGUgYXJ0aWtlbCAxNgpQYXJpZG9tIGlzdCBtb21lbnRhbiBsZWlkZXIgdGF1Yi4KCgpPcmtULCBzZXVmemVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYSB3aWxsIG1hbiBtYWwgaGVsZmVuLi4uIChDcm9mdCwgMjkuIEp1bCAyMDA0LCAxODoyMjoxNCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA5MTExODA3MiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTExMTgwNzIKRGFubiBoZWxmIGljaCBkaXIgT3JrVDogJ2hpbGZlIHJlbW90ZScgOi0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNdWQtVXB0aW1lIChNdWFkaWIsIDI5LiBKdWwgMjAwNCwgMjM6MTg6NTIpOgp+IyEgcm49Wm9vayBydD0xMDkxMTM1ODcyIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDkwOTM5MDQzCmhhdCBqZW1hbmQgZWluIHBhYXIgYXRhbGFuIHN0aWVmZWwgdWViZXIgZnVlciBtaWNoID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGEgd2lsbCBtYW4gbWFsIGhlbGZlbi4uLiAoRGVlcGJsdWUsIDMwLiBKdWwgMjAwNCwgMDg6NTY6MjgpOgp+IyEgcm49Q3JvZnQgcnQ9MTA5MTExODEzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTExMTgwNzIKTWVpbmJzdCBkYXMga2FubiBkZXI/IERpZSBRdWVzdCB3YXIgZG9jaCBuYWNoIHNlaW5lciBaZWl0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWVnYWhhbCBtYWwgd2llZGVyIChab29rLCAzMC4gSnVsIDIwMDQsIDExOjA0OjA2KToKfiMhIHJuPUFzdWthIHJ0PTEwOTExMTI4MDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkxMTEyODA5Ck5ldWUgTW90aXZhdGlvbnN0aGVvcmllbiBmdWVyIFVudGVybmVobWVuOgoKW21lZ2FoYWw6TWVoYWxdIEdld2lzcywgZnVlciBnZWxlZ2VudGxpY2hlIHNwaXR6ZW5sZWlzdHVuZ2VuLCBiZXNvbmRlcmUKW21lZ2FoYWw6TWVoYWxdIGF1Zm9wZmVydW5nIHVuZCBiZWkganViaWxhZWVuIGJla29tbWVuIG1pdGFyYmVpdGVyIHNjaG9uClttZWdhaGFsOk1laGFsXSBlaW5tYWwgZWluZSBlcmtlbm50bmlzLgoKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1lZ2FoYWwgbWFsIHdpZWRlciAoTmVkaW1lLCAzMC4gSnVsIDIwMDQsIDExOjIxOjAzKToKfiMhIHJuPVpvb2sgcnQ9MTA5MTE3ODI0NiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTExMTI4MDkKTmV0dGUgVGhlb3JpZS4gRGllIGhpZXIgaXN0IGFiZXIgYXVjaCBuaWNodCBzY2hsZWNodDoKClttZWdhaGFsOk1laGFsXSBFaW5lIHphaGxlbmZvbGdlIGJlc2l0enQgZ2VuYXUgZGFubiBlaW5lbiBncmVuendlcnQsIHdlbm4genUKW21lZ2FoYWw6TWVoYWxdIGplZGVtIGVwc2lsb24gZWluIG4gZXhpc3RpZXJ0LCBzbyBkYXNzIGFsbGUgYmVpIG15dW5nClttZWdhaGFsOk1laGFsXSB2ZXJyZWNrZW4uCgpOZWRpbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1lZ2FoYWwgbWFsIHdpZWRlciAoTW9yZ290aCwgMzAuIEp1bCAyMDA0LCAxMToyMjo1Myk6Cn4jISBybj1OZWRpbWUgcnQ9MTA5MTE3OTI2MyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTExMTI4MDkKW21lZ2FoYWw6TW9yZ290aF0gZWxmZW4gZmlja2VuIGJhZXVtZQpbbWVnYWhhbDpNZWhhbF0gRnJhdWVuIHNpbmQgYmFldW1lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTXVhaGFoYSAoQmx1dGdpZXIsIDMwLiBKdWwgMjAwNCwgMTE6NTA6NTkpOgpEdSBzY2hpbXBmc3Q6IER1IHNpZWhzdCBzbyBibGFzcyBhdXMsIGdsZWljaCBmYWVsbHN0IER1IHZvciBBbmdzdCB1bSEKRWluZSBXdWVyZ2VydGFubmUgZXJ3aWRlcnQ6IFZvciBMYWNoZW4gbWVpbnN0IER1ISAqZ2lnZ2VsKgo+ICAgRHUgdHJpZmZzdCBlaW5lIFd1ZXJnZXJ0YW5uZSBoYXJ0LgpEaWUgV3VlcmdlcnRhbm5lIGJyaWNodCBtaXQgZWluZW0gbGF1dGVuIEtyYWNoZW4genVzYW1tZW4uCgoKRGVyIEJsdXRnaWVyIHp1bSBPcGZlciBnZWZhbGxlbiAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1lZ2FoYWwgbWFsIHdpZWRlciAoVmVjdG9yLCAzMC4gSnVsIDIwMDQsIDExOjUzOjM3KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA5MTE3OTM3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTExMTI4MDkKZW5kbGljaCBtYWwgZWluZSB0aGVvcmllIHVlYmVyIGJhZXVtZSBkaWUgbWFuKG4pIHVudGVyc2NocmVpYmVuIGthbm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1lZ2FoYWwgbWFsIHdpZWRlciAoWm9vaywgMzAuIEp1bCAyMDA0LCAxMjozMTo1MCk6Cn4jISBybj1WZWN0b3IgcnQ9MTA5MTE4MTIxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTExMTI4MDkKW21lZ2FoYWw6T2dvXSBJY2ggaGFiZSBsZWlkZXIgZGFzIEtvbnplcHQgdm9uIEMmUCBuaWNodCB2ZXJzdGFuZGVuLCBhYmVyIGljaApbbWVnYWhhbDpPZ29dIHd1ZXJkZSB2aWVsIGRhcnVtIGdlYmVuLCBlcyBlcmtsYWVydCB6dSBiZWtvbW1lbi4KW21lZ2FoYWw6TWVoYWxdIERhcnVtIHdhZXJlIGVzIG5ldHQsIHdlbm4gZHUgaGllciBuaWNodCBydW1zYWJiZWxuIHd1ZXJkZXN0LgoKClpPb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNZWdhaGFsIG1hbCB3aWVkZXIgKFpvb2ssIDMwLiBKdWwgMjAwNCwgMTI6NDI6MTYpOgp+IyEgcm49Wm9vayBydD0xMDkxMTgzNTEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MTExMjgwOQpbbWVnYWhhbDpNZWhhbF0gR3Vpbm5lc3MsIGZhbGxzIGR1IGVzIG5pY2h0IHdlaXNzdCwgaXN0IGVpbiBzYW5mdGVzClttZWdhaGFsOk1laGFsXSBydWhla2lzc2VuLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClRhcmFtaXMgKE5lZGltZSwgMzAuIEp1bCAyMDA0LCAxNTo0MzozNyk6ClttZWdhaGFsOk1laGFsXSBUYXJhbWlzIHdpcmQgaXJnZW5kd2FubiB2b24gZGVuIGJhZXVtZW4gZmFsbGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFkZSBhdWYgVG9hc3Q/IChCcmFuLCAzMC4gSnVsIDIwMDQsIDE5OjQyOjI2KToKW21lZ2FoYWw6S2FyaW1hXSBicmFuClttZWdhaGFsOk1laGFsXSBCcmFuIGthbm4gZGlyIGRhcyBkZW5rZW4gbmljaHQgYWJuZWhtZW4uClttZWdhaGFsOkthcmltYV0gc2NoYWRlClttZWdhaGFsOk1laGFsXSBEZW5uIHNjaG9uIGthbSBlaW4gYnVudGVyIHNwZWNodCB1bmQgdmVyc2NobGFuZyBkaWUga2xlaW5lClttZWdhaGFsOk1laGFsXSBmYWRlIG1hZGUgb2huZSBnbmFkZS4gU2NoYWRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hZGUgYXVmIFRvYXN0PyAoTXVhZGliLCAzMC4gSnVsIDIwMDQsIDIwOjI4OjUxKToKfiMhIHJuPUJyYW4gcnQ9MTA5MTIwOTM0NiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTEyMDkzNDYKdG9hc3Q/CmljaCBkYWNodGUgZXJoYXJkdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIEthZW1wZmVyLCBlbnR0YXJudCAoTW9yZ290aCwgMzAuIEp1bCAyMDA0LCAyMToxODo1Mik6ClttZWdhaGFsOkZvb2Jhcl0gQ2F0d2VhemxlIGlzdCBrcmFuaz8/PwpbbWVnYWhhbDpNZWhhbF0gRHUgYmlzdCBrcmFuay4KW21lZ2FoYWw6Rm9vYmFyXSBJY2ggYXVjaCEKW21lZ2FoYWw6TWVoYWxdIEthZW1wZmVyIHNpbmQgZWluZSBqYW1tZXJnaWxkZS4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIZFIgKEZvb2JhciwgMzAuIEp1bCAyMDA0LCAyMTozNzoxMSk6ClttZWdhaGFsOk1laGFsXSBGbGFtbWUgdm9uIHVkdW4sIGRlaW5lIHJhdXNjaGdhc2VudHNjaHdlZmVsdW5nIGZ1bmt0aW9uaWVydApbbWVnYWhhbDpNZWhhbF0gbmljaHQhIER1ISBFcmZ1ZWxsc3QhIEtlaW5lISBFdS1ub3JtLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhkUiAoR2xvaW5zb24sIDMwLiBKdWwgMjAwNCwgMjM6NTg6NTUpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwOTEyMTYyMzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkxMjE2MjMxCk1hbmNobWFsIHBhc3RldCBNZWhhbCBrb21wbGV0dC4gTGVpZGVyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW0gQ2hhdCAoTW9yZ290aCwgMzEuIEp1bCAyMDA0LCAwMToxODoyNyk6CjxBdWdlPiBpY2ggdWViZXJsZWcgbWlyIGdlcmFkZSB3aWUgbWFuICJnbmFya3pzY2giIG1pdCAxLDUgcHJvbWlsbGUgYXVzc3ByaWNodApvaG5lIGRhYmVpIHNwcmVjaGtyZWJzIHp1IGJla29tbWVuPyEKPGNMYW0+IGF1Z2U6IHZlcnN1Y2ggZWluZmFjaCAia25hY2thcnNjaCIgenUgc2FnZW4uLi4ga2xpbmd0IG1pdCAxLjVwcm9taWxsZQpkYW5uIGFlaG5saWNoCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcS5lLmQuIChCcmFuLCAzMS4gSnVsIDIwMDQsIDA4OjUwOjA1KToKbWVnYWhhbDpNZWhhbCBPZmZlbmJhciBpc3QgYWltZWUgc3VlY2h0aWcuCkFpbWVlIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KQWltZWUgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVlYmVybGVndCBlcyBldWNoIG5vY2htYWwuLi4gKEJyYW4sIDMxLiBKdWwgMjAwNCwgMjA6MjI6MDYpOgptZWdhaGFsOkFzdWthIEphLCBCcm90bmFlbCBrb21tdCBuYWNoIEhhbGxlLgptZWdhaGFsOk1laGFsIEluIGhhbGxlIGdpYnQgZXMgdmllbGUga29taXNjaGUgdG9kZXNmYWxsZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVWViZXJsZWd0IGVzIGV1Y2ggbm9jaG1hbC4uLiAoQXN1a2EsIDMxLiBKdWwgMjAwNCwgMjA6MjI6NTIpOgp+IyEgcm49QnJhbiBydD0xMDkxMjk4MTI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MTI5ODEyNgpBY2ggd2FzLCBkYSBnaWJ0cyBuaWNodHMgenUgdWViZXJsZWdlbi4gVG9kZXNmYWxsZW4gc2luZCBkb2NoIHRvbGwuCgpBc3VrYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBVZWJlcmxlZ3QgZXMgZXVjaCBub2NobWFsLi4uIChCcmFuLCAzMS4gSnVsIDIwMDQsIDIwOjIzOjUyKToKfiMhIHJuPUFzdWthIHJ0PTEwOTEyOTgxNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkxMjk4MTI2ClJpY2h0aWcuIERhcyBuYWVjaHN0ZSBoYXR0ZSBpY2ggdW50ZXJzY2hsYWdlbjoKW21lZ2FoYWw6QXN1a2FdIG9oLCBkYSB3aWxsIGljaCB1bmJlZGluZ3QgaGluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYW1wZiBkZW0gU2Nyb2xsIChNYWhhcmV0LCAgMS4gQXVnIDIwMDQsIDA4OjQxOjQ4KToKW21lZ2FoYWw6TWVoYWxdIFVtIGRhcyBzcGllbGVuIHZvbiBtdWRzIHp1IHZlcmVpbmZhY2hlbiB1bmQga29tZm9ydGFibGVyIHp1ClttZWdhaGFsOk1laGFsXSBnZXN0YWx0ZW4sIGdpYnQgZXMgbWFzc2lnIHRvdGUgc3BpZWxlci4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCOiAyNTZNQiBERFItUkFNIChJbWRhLCAgMS4gQXVnIDIwMDQsIDE5OjE5OjA3KToKfiMhIHJuPVJvbmRhIHJ0PTEwOTA5OTk1MTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkwOTIxNDYzCk51amFhYWFhLi4uIEVpZ2VudGxpY2ggaXMgZGFzIFpldWdzIHNjaG9uIG4gYmlzY2huIFNjaHJvdHQuIE1pdCBERFIgMiB3aXJkCmFsbGVzIGJlc3Nlci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExpY2h0Li4uIChMaWFyYSwgIDEuIEF1ZyAyMDA0LCAyMzoxMjoxNik6Cn4jISBybj1IdW1uaSBydD0xMDg4MjU1MTQ2IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTEwODgyNTUxNDYKRHUgaGFzdCBkYXMgJ0xpY2h0c3lzdGVtJyByZXBhcmllcnQ/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFByZW1pZXJlIChab29rLCAgMi4gQXVnIDIwMDQsIDA5OjUxOjQxKToKfiMhIG9uPVpvb2sgb3Q9MTA5MTQzMzA3NSBvZz1hbGxnZW1laW5lcwp+IyEgcm49VHVyYm8gcnQ9MTA5MTM0ODE2NCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwOTEzMDU2NDYKPiBkYXJhdWYgaGlud2Vpc2VuLCBkYXNzIE9iZW5zdGVoZW5kZXMgZWluZSBNZWludW5nc2FldXNzZXJ1bmcKPiB1bmQga2VpbmUgUmVjaHRzYmVyYXR1bmcgZGFyc3RlbGx0CgpXYWVyZW4gd2lyIGpldHp0IG5pY2h0IGRyYXVmIGdla29tbWVuLi4uCgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5vbWVuIGVzdCBvbWVuIChNaWV6ZSwgIDIuIEF1ZyAyMDA0LCAxMTo0Nzo0OSk6CgplYmVuIHBhc3NpZXJ0OgoKTWVkaWMgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRHUgZXJsYW5nc3QgZGllIEtvbnRyb2xsZSB1ZWJlciBkaWUgQ2hhb3MtUnVlc3R1bmcgenVydWVjay4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT2ssIEtpbm5lcnMuLi4ud2VyIHZvbiBldWNoIHdhciBkYXM/IChBbmF0b2wsICAyLiBBdWcgMjAwNCwgMjM6MTI6NTkpOgp+IyEgcm49TWVkaWMgcnQ9MTA5MTQ3OTE2NyByZz13d3cKfiMhIHRpZD0xMDkxNDc5MTY3CkFtYXJ5bGxpcy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE9rLCBLaW5uZXJzLi4uLndlciB2b24gZXVjaCB3YXIgZGFzPyAoTWVkaWMsICAyLiBBdWcgMjAwNCwgMjM6MTM6MzkpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTE0ODExNzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkxNDc5MTY3CkhhYiBpY2ggbWlyIHNjaG9uIGdlZGFjaHQgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBPaywgS2lubmVycy4uLi53ZXIgdm9uIGV1Y2ggd2FyIGRhcz8gKFpvb2ssICAzLiBBdWcgMjAwNCwgMDg6MzQ6MDkpOgp+IyEgcm49TWVkaWMgcnQ9MTA5MTQ4MTIxOSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTE0NzkxNjcKR2FicyBzbyBuZSBNZWxkdW5nIG5pY2h0IGxldHp0ZXMgSmFociBhdWNoIHNjaG9uIG1hbC4uLj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3RhdGkgQmVybGluIChDcm9mdCwgIDQuIEF1ZyAyMDA0LCAwODo1MDozMSk6Cn4jISBybj1QaXRmYWxsIHJ0PTEwOTE1ODE5OTAgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA5MTU4MTk5MApBYmVyIGRhcyBrb2xsaWRpZXJ0IGRvY2ggbWl0IGRlciBTb21tZXJwYXJ0eSBpbiBIYWxsZT8gLC0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFydGlrZWwgKFpvb2ssICA0LiBBdWcgMjAwNCwgMTA6MTc6MTIpOgp+IyEgb249Wm9vayBvdD0xMDkxNjA3NDI2IG9nPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgcm49UGl0ZmFsbCBydD0xMDkxNjA2ODYwIHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwOTE2MDY4NjAKN2ggc3BhZXRlciB1bmQgZWluZSBFcmtlbm50bmlzIHJlaWNoZXIsIEdyYXRzIFBpdGZhbGwhIDspKSkpCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBMaWNodC4uLiAoUm9jaHVzLCAgNC4gQXVnIDIwMDQsIDE5OjM3OjA2KToKfiMhIHJuPUxpYXJhIHJ0PTEwOTEzOTQ3MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDg4MjU1MTQ2CkljaCBuZWhtZSBhbiwgRHUgbWVpbnN0IGRhcyBMaWNodCJzeXN0ZW0iIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWRzbCBtb2RlbSBnZXN1Y2h0IChHbm9tZSwgIDUuIEF1ZyAyMDA0LCAxMzo1MToyMSk6Cn4jISBybj1aemFyenp0IHJ0PTEwOTE2OTE3NjEgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTA5MTY5MTc2MQptZWluIHVyYWx0LWF1dG8gaXN0IGRlbiAodW4pZWhyZW5oYWZ0ZW4gbW90b3J0b2QgZ2VzdG9yYmVuLgppY2ggYnJhdWNoIGFsc28gZWluIG5ldWVzLiB3YXMgZ2lidHMgZGVubiBkYSBha3R1ZWxsIHZlcm51ZW5mdGlnZXMKdW5kIGxpZWZlcmJhcmVzIGF1ZiBkZW0gbWFya3Q/Cgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhZHNsIG1vZGVtIGdlc3VjaHQgKFp6YXJ6enQsICA1LiBBdWcgMjAwNCwgMTU6Mjc6MjkpOgp+IyEgcm49R25vbWUgcnQ9MTA5MTcwNjY4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTE2OTE3NjEKRGEga29lbm50IGljaCBEaXIgc2Nob24gd2FzIHp1IGVyemFlaGxlbiwgYWJlciBlaGVyIG5pY2h0IGluIGRpZXNlciBSdWJyaWsuClp6YXJ6enQgZGFua3QgZnVlciBkaWUgSGlsZmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE9rLCBLaW5uZXJzLi4uLndlciB2b24gZXVjaCB3YXIgZGFzPyAoQW1hcnlsbGlzLCAgNS4gQXVnIDIwMDQsIDIwOjAyOjM4KToKfiMhIHJuPUFuYXRvbCBydD0xMDkxNDgxMTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MTQ3OTE2NwpIZWhlLCBkZXIgQXJ0aWtlbCBoYXQgdGF0c2FlY2hsaWNoIHdhcyA6KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRW1wZmluZGxpY2hlIERhZW1vbmVuIChNaWV6ZSwgIDYuIEF1ZyAyMDA0LCAwODoxNjo0OSk6CgplYmVuIHBhc3NpZXJ0OgoKRHUgdmVybGFlc3N0IGRpZSBFYmVuZSAnQWxsZ2VtZWluJy4KCkRFUiBEQUVNT04gSU4gREVJTkVSIEhBVVQgRkFFTkdUIEdMRUlDSCBBTiBaVSBUT0JFTiEhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogS2xhc3Npc2NoZSBSZWNodHNjaHJlaWJ1bmcgKFpvb2ssICA3LiBBdWcgMjAwNCwgMTM6MDY6MTQpOgp+IyEgcm49T2dvIHJ0PTEwOTE4NzUyOTQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwOTE3OTAzOTYKRHUgaGFzdCBlaW5lbiBXSVdJLUtvcGY/IDspCgpaT29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWlyaWwgd2lsbCBrZXJiZW4uIChLcmltYXJpb2wsICA4LiBBdWcgMjAwNCwgMTE6NTg6MTApOgpOZXVsaWNoIGluIEtyeWxhaW9zLi4uIHdlbGNoZXMgVGVhbSBzdGVsbHQgc2ljaCBkZXIgSGVyYXVzZm9yZGVydW5nID8uLi4KTmV1bGljaCBpbiBLcnlsYWlvcy4uLiB3ZWxjaGVzIFRlYW0gc3RlbGx0IHNpY2ggZGVyIEhlcmF1c2ZvcmRlcnVuZyA/Li4uCgprbnVkZGVsIGFsbGUKRHUga251ZGRlbHN0IFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsIFBoYWlkcmEsClBoYWlkcmEgdW5kIFJpcHBvci4gCj4gCgpNZkcKS3JpbWFyaW9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWlyaWwgd2lsbCBrZXJiZW4uIChSaXBwb3IsICA4LiBBdWcgMjAwNCwgMTI6MDA6NTIpOgp+IyEgcm49S3JpbWFyaW9sIHJ0PTEwOTE5NTkwOTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkxOTU5MDkwCkRhcyBpcyBtYWNoYmFyLCBzaW5kIG51ciA1NTIgV2FjaGVuLi4uCgogIFJpcHBvcgoKIFAuUzogSWNoIHNjaHJlaWIgaGllciBncmFkIHp1bSBlcnN0ZW4gbWFsLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1pcmlsIHdpbGwga2VyYmVuLiAoS3JpbWFyaW9sLCAgOC4gQXVnIDIwMDQsIDEyOjAxOjI4KToKfiMhIHJuPVJpcHBvciBydD0xMDkxOTU5MjUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MTk1OTA5MApTdGltbXQgZGllIHdlcmRlbiBpbiBkZXIgZXJzdGVuIFJ1bmRlIHdvaGwgbmljaHQgbWVociBhbHMgMjBrIHNjaGFkZW4gbWFjaGVuCjstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IEtsYXNzaXNjaGUgUmVjaHRzY2hyZWlidW5nIChDYXR3ZWF6bGUsICA4LiBBdWcgMjAwNCwgMjA6NDY6NTUpOgp+IyEgcm49VmluY2VudCBydD0xMDkxOTc4Mjg3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDkxNzkwMzk2CkRlciB3dXJkZSBkYW5uIGRvY2ggenUgbGFuZy4gU29ycnkgOikKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEtsYXNzaXNjaGUgUmVjaHRzY2hyZWlidW5nIChHcmltbWJvcm4sICA5LiBBdWcgMjAwNCwgMTE6MTY6MTMpOgp+IyEgcm49TWFoYXJldCBydD0xMDkyMDQyOTA5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDkxNzkwMzk2Ck9oLCBoYWJlbiB3aXIgbmFjaCBkZW0gV2VnZ2FuZyBkZXMgV2l0emVlcmtsYWVyZXJzIGpldHp0IGRlbiBQb3N0ZW4gZWluZXIKSXJvbmllZXJrbGFlcmVyaW4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBLbGFzc2lzY2hlIFJlY2h0c2NocmVpYnVuZyAoTWFoYXJldCwgIDkuIEF1ZyAyMDA0LCAxMToxNjo0MSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA5MjA0Mjk3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTE3OTAzOTYKTmVpbiwgaWNoIGhhYmUgbmljaHRzIGVya2xhZXJ0LiBXaWUga29tbXN0IGR1IGF1ZiBzb3dhcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBLbGFzc2lzY2hlIFJlY2h0c2NocmVpYnVuZyAoWm9vaywgIDkuIEF1ZyAyMDA0LCAxMToxNjo1NSk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwOTIwNDMwMDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkxNzkwMzk2CkFjaC4gTml4LiA7KQoKWm9vayB3ZWRlbHQgc3RpbGwgc2VpbiBGYWVobmNoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogS2xhc3Npc2NoZSBSZWNodHNjaHJlaWJ1bmcgKEdyaW1tYm9ybiwgIDkuIEF1ZyAyMDA0LCAxMToyMzo0NSk6Cn4jISBybj1ab29rIHJ0PTEwOTIwNDMwMTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkxNzkwMzk2Ck51IGxhc3Mgc2llIGRvY2gsIHNpZSBpc3QgaGFsdCBuYWNoIGRlciBQYXJ0eSBub2NoIG5pY2h0IHdpZWRlciByaWNodGlnIGZpdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IEtsYXNzaXNjaGUgUmVjaHRzY2hyZWlidW5nIChNYWhhcmV0LCAgOS4gQXVnIDIwMDQsIDExOjI2OjM3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDkyMDQzNDI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MTc5MDM5NgpOYSwgbWFuIGd1dCwgZGFzcyBlcyBoaWVyIE1hZW5uZXIgZ2lidCwgZGllIG9mZmVuYmFyIGJlc3NlciB3aXNzZW4gYWxzIGljaApzZWxic3QsIHdvcmF1ZiBpY2ggbWljaCB3b21pdCBiZXppZWhlIHVuZCB3YXMgaWNoIHdpcmtsaWNoIG1laW5lLiAgSWNoIGhhYiBkZW4KVGhyZWFkIGhhbHQgZWJlbiBlcnN0IGdlbGVzZW4gdW5kIG51ciBtaXQgImFudHdvcnRlIiBnZXNjaHJpZWJlbiwgYmV6b2cgbWljaAphYmVyIHdlZGVyIGF1ZiBlaW5lbiBHb3R0IG5vY2ggYXVmIGVpbmVuIFNoZXJpZmYsIHNvbmRlcm4gYXVmIGVpbmVuIFp3ZXJnLgpIYWJlIGljaCB6dW1pbmRlc3QgYmlzIGViZW4gZ2VnbGF1YnQuCgpBYmVyIGhleSwgdG9idCBldWNoIHJ1aGlnIGF1cy4KCk1haGFyZXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBLbGFzc2lzY2hlIFJlY2h0c2NocmVpYnVuZyAoQ2F0d2VhemxlLCAgOS4gQXVnIDIwMDQsIDExOjI3OjMwKToKfiMhIHJuPU1haGFyZXQgcnQ9MTA5MjA0MjkwOSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA5MTc5MDM5NgpIbSwgYmlzdCBkdSBkaXIgZGlyIHNpY2hlciwgZGFzcyBkaWUgbmljaHQgaW4gaXJnZW5kZWluZXIgVmFyaWFudGUgZGVyClJlY2h0c2NocmVpYnJlZm9ybWVuIG1pdHRsZXJ3ZWlsZSBrbGVpbiBnZXNjaHJpZWJlbiB3ZXJkZW4/CgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaG1tIChDcm9mdCwgIDkuIEF1ZyAyMDA0LCAxNzowMDowNyk6Cn4jISBybj1EYXJrbG9yIHJ0PTEwOTIwNjM1NTMgcmc9cGFydHkKfiMhIHRpZD0xMDkyMDYwNzE1CkJpcyB3YW5uIGdlbmF1PwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBwbG9wICAgIHBsb3AgICAgIHBsb3AgKEJhbWJ1bGtvLCAxMC4gQXVnIDIwMDQsIDEwOjUwOjQ0KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDkyMTIwODg1IHJnPXd3dwp+IyEgdGlkPTEwOTIxMjA4ODUKRHUgbGllc3QgenUgdmllbCBTcGllZ2VsIE9ubGluZS4uLi4uCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVW16dWdzbWVpc3RlciAoWm9vaywgMTAuIEF1ZyAyMDA0LCAyMTozMzo0Nik6Cn4jISBvbj1ab29rIG90PTEwOTIxNjY0MTAgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTA5MjE2NjM0OCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwOTIwNDY1NDkKV28gaXN0IG1laW4gbWJhbmlzaD8gOykgWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBLbGFzc2lzY2hlIFJlY2h0c2NocmVpYnVuZyAoR3JpbW1ib3JuLCAxMS4gQXVnIDIwMDQsIDAwOjE1OjQ3KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDkyMTc2MTQzIG9nPWRpc2t1c3Npb24KfiMhIHJuPUx1ZyBydD0xMDkyMTc1MDAxIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDkxNzkwMzk2CkFjaCB3YXMsIGRpZXNlIGdhbnplbiBTcHJhY2hlbiwgenUgZGVuZW4gZWluZSBTY2hyaWZ0IGV4aXN0aWVydCwgc2luZCBkb2NoCm5ldW1vZGlzY2hlcyBaZXVjaHMuIFVnaCEKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IEtsYXNzaXNjaGUgUmVjaHRzY2hyZWlidW5nIChOaWJlbCwgMTEuIEF1ZyAyMDA0LCAwMjoxNjozMik6Cn4jISBybj1NdWFkaWIgcnQ9MTA5MjE3NjY2MSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA5MTc5MDM5NgpXZXIgc2V0enQgZWluZW4gaGFuZGdlc2NocmllYmVuZW4gRHVkZW4gZnVlciBSZV4xMDAgYXVzPwogIC0gTmliZWwKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVU5HTEFVQkxJQ0ggISAoTW9yZ290aCwgMTEuIEF1ZyAyMDA0LCAwOTozMTo0MSk6CkFyay4uLi4uLi4uLi4uLi4uRSBSaWt1cy4uLi4uLi4uLi4uLkUgTm9ubmUuLi4uLi4uLi4uLi5FIE11YWRpYi4uLi4uLi4uLi4uRQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVTkdMQVVCTElDSCAhIChOb25uZSwgMTEuIEF1ZyAyMDA0LCAwOTozNjoyNSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwOTIyMDk1MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMjA5NTAxCk5hIHdlbm4gZGEgbWFsIG5peCBpbSBCdXNjaCBpc3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVTkdMQVVCTElDSCAhIChNdWFkaWIsIDExLiBBdWcgMjAwNCwgMDk6Mzk6MTkpOgp+IyEgcm49TW9yZ290aCBydD0xMDkyMjA5NTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjIwOTUwMQp3YXJ1bSBpc3QgZGllIHVwdGltZSBzbyBob2NoPwpkYSBnaW5nIHdhcyBzY2hpZWYuCmJlc3RpbW10IHdhciBub25uZSB3aWVkZXIgd2VpY2hoZXJ6aWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVU5HTEFVQkxJQ0ggISAoQXN1a2EsIDExLiBBdWcgMjAwNCwgMDk6Mzk6NDEpOgp+IyEgcm49TXVhZGliIHJ0PTEwOTIyMDk5NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMjA5NTAxCkRhbm4gcmVib290ZSBkb2NoIGVpbmZhY2guCgpBc3VrYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVU5HTEFVQkxJQ0ggISAoTXVhZGliLCAxMS4gQXVnIDIwMDQsIDA5OjQwOjAxKToKfiMhIHJuPUFzdWthIHJ0PTEwOTIyMDk5ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMjA5NTAxCmljaCBrYW5uIG5pY2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBVTkdMQVVCTElDSCAhIChBc3VrYSwgMTEuIEF1ZyAyMDA0LCAwOTo0MDo0OSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA5MjIxMDAwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIyMDk1MDEKVGphLCBkYW5uIG11c3N0IER1IHdvaGwgb2RlciB1ZWJlbCBkYXMgTXVkIGNyYXNoZW4uCgpBc3VrYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVU5HTEFVQkxJQ0ggISAoTm9ubmUsIDExLiBBdWcgMjAwNCwgMDk6NDE6MTEpOgp+IyEgcm49QXN1a2EgcnQ9MTA5MjIxMDA0OSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIyMDk1MDEKRGFzIGthbm4gTW9yZ290aCBhdWNoLCB2aWVsbGVpY2h0IHZlcnJhZXQgZXIgZGlyIGF1Y2gsIHdpZSBkYXMgZ2VodCAoYzsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFVOR0xBVUJMSUNIICEgKE1vcmdvdGgsIDExLiBBdWcgMjAwNCwgMDk6NDE6MjkpOgp+IyEgcm49Tm9ubmUgcnQ9MTA5MjIxMDA3MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIyMDk1MDEKSG5nbCwgZGFzIHdhciBrZWluZSBBYnNpY2h0LgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFVOR0xBVUJMSUNIICEgKE5vbm5lLCAxMS4gQXVnIDIwMDQsIDA5OjQyOjMxKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA5MjIxMDA4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIyMDk1MDEKRGFzIGhhYmUgaWNoIG5pY2h0IGJlaGF1cHRldCwgYWJlciB6dW1pbmRlc3QgamV0enQgd2Vpc3N0IGR1LCB3aWUgZGFzIGdlaHQuCldpZXZpZWwgQnl0ZSBoYXR0ZXN0IGR1IHp1IGFsbG9raWVyZW4gdmVyc3VjaHQ/IExhZyBpbiBkZXIgR3JvZXNzZW5vcmRudW5nIHZvbgpBdG9tZW4gaW0gV2VsdGFsbCBvZGVyIHNvICpnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogVU5HTEFVQkxJQ0ggISAoQXN1a2EsIDExLiBBdWcgMjAwNCwgMDk6NDM6MDEpOgp+IyEgcm49Tm9ubmUgcnQ9MTA5MjIxMDE1MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIyMDk1MDEKT2gsIG1laHIgRGV0YWlscyBiaXR0ZS4gOikKCkFzdWthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBVTkdMQVVCTElDSCAhIChNb3Jnb3RoLCAxMS4gQXVnIDIwMDQsIDA5OjQzOjIzKToKfiMhIHJuPUFzdWthIHJ0PTEwOTIyMTAxODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMjA5NTAxCk5vZQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBVTkdMQVVCTElDSCAhIChBc3VrYSwgMTEuIEF1ZyAyMDA0LCAwOTo0NDoxOSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwOTIyMTAyMDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMjA5NTAxCk1pc3QKCkFzdWthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogVU5HTEFVQkxJQ0ggISAoTm9ubmUsIDExLiBBdWcgMjAwNCwgMDk6NDU6MTEpOgp+IyEgcm49QXN1a2EgcnQ9MTA5MjIxMDI1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIyMDk1MDEKV2FyIG51ciBlaW4gRmVobGVyLCBkZW0gamVkZXIgcGFzc2llcmVuIGthbm4sIGFiZXIgd2lyIHdvbGxlbiBkYXMgaGllciBuaWNodApicmVvdHRyZXRlbiwgc29uc3Qga29tbWVuIG5vY2ggaXJnZW5kd2VsY2hlIGFuZGVyZSBNYWdpZXIgYXVmIGRpZSBJZGVlLCBkYXMKYXVzenByb2JpZXJlbi4gVW5kIG5laW4sIGFscyBTcGllbGVyIGhhZXR0ZSBtYW4gZGFzIG5pY2h0IHR1biBrb2VubmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVU5HTEFVQkxJQ0ggISAoTXVhZGliLCAxMS4gQXVnIDIwMDQsIDEwOjEzOjUwKToKfiMhIHJuPUFzdWthIHJ0PTEwOTIyMTAwNDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMjA5NTAxCmR1IHZlcnN0ZWhzdCBtaWNoIGZhbHNjaAp3b2hsIHdlaXNzIGljaCB3aWUgYWxsZWluIGZlaGx0IG1pciBkaWUgbW9yYWxpc2NoZSByZWNodGZlcnRpZ3VuZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVU5HTEFVQkxJQ0ggISAoWm9vaywgMTEuIEF1ZyAyMDA0LCAxMDoxNTo0MCk6Cn4jISBybj1NdWFkaWIgcnQ9MTA5MjIxMjAzMCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIyMDk1MDEKUmVpY2h0ICJXaWxsa3VlciIgbmljaHQ/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVU5HTEFVQkxJQ0ggISAoTXVhZGliLCAxMS4gQXVnIDIwMDQsIDEwOjIzOjQ4KToKfiMhIHJuPVpvb2sgcnQ9MTA5MjIxMjE0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIyMDk1MDEKZHUgaGFzdCByZWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogVU5HTEFVQkxJQ0ggISAoT3JrdG9ldGVyLCAxMS4gQXVnIDIwMDQsIDEzOjUwOjI3KToKfiMhIHJuPU5vbm5lIHJ0PTEwOTIyMTAxNTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMjA5NTAxCldhcyB1bmQgYmVpIHNvIGVpbmVtIGJpc2NoZW4gU3BlaWNoZXJiZWRhcmYgc2VtbWVsdCBkYXMgTUcgZ2xlaWNoIGFiPyBJY2gKc3RlbGxlIGRlbiBBbnRyYWcgYXVmIGVpbmUgU3BlaWNoZXJlcndlaXRlcnVuZyEKCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSTS1ad2VpdGllcyAoQXN1a2EsIDExLiBBdWcgMjAwNCwgMTU6NTQ6NDYpOgooMTU6NTIpIFZvbiBGcmV1bmQgQWhhYjogaG0sIHdvIHN0ZWNrdCBkZW5uIHRveCB1dGF0IG5vY2htYWw/CigxNTo1MikgQW4gRnJldW5kZTogdW5kIGRhcyBmcmFnIGF1c2dlcmVjaG5ldCBkZXIgUk0gRWJlbmUKKDE1OjUyKSBWb24gRnJldW5kIEFoYWI6IGphLiBzaWNoZXIuCgpBc3VrYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IFZvbGxlIEtyYWZ0IHp1cnVlY2shIChNdWFkaWIsIDExLiBBdWcgMjAwNCwgMTg6MDc6MDkpOgp+IyEgcm49UGlsZ3JpbSBydD0xMDkyMjI0ODUxIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDkyMDQ4Nzk2Cndlbm4gaWNoIGVpbiBrb25zdHJ1a3Qgd2llICJfbmljaHRfIiBzZWhlIG11c3MgaWNoIG1pY2ggZGVpbmVtIGJlZGF1ZXJuIG9iIGRlcgpzdHJhZmZyZWloZWl0IGFuc2NobGllc3NlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaWNoIHd1c3N0ZSBlcyAoRGVlcGJsdWUsIDExLiBBdWcgMjAwNCwgMTg6NDE6MjYpOgpbbWVnYWhhbDpNZWhhbF0gQmllbGVmZWxkIGlzdCBlaW4gbGljaHRzeXNkaW5ncy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBpY2ggd3Vzc3RlIGVzIChab29rLCAxMS4gQXVnIDIwMDQsIDE4OjU0OjMwKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwOTIyNDI0ODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMjQyNDg2CkFoLCBNZWhhbCBsYWV1ZnQgbm9jaD8gSXN0IHNpZSBzY2hvbiBiZXNzZXIgZ2V3b3JkZW4/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGljaCB3dXNzdGUgZXMgKFpvb2ssIDExLiBBdWcgMjAwNCwgMTg6NTQ6NTgpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTA5MjI0MjQ4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIyNDI0ODYKW21lZ2FoYWw6Wm9va10gem9vawpbbWVnYWhhbDpNZWhhbF0gWm9vayBpc3QgZWluIHNleGdvdHQhIChDKSBodW1uaS4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGljaCB3dXNzdGUgZXMgKEFzdWthLCAxMS4gQXVnIDIwMDQsIDE4OjU1OjEwKToKfiMhIHJuPVpvb2sgcnQ9MTA5MjI0MzI5OCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIyNDI0ODYKTmEgZGFubiBncmF0dWxpZXIgaWNoIGRpciBtYWwuCgpBc3VrYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogaWNoIHd1c3N0ZSBlcyAoQXJrLCAxMS4gQXVnIDIwMDQsIDE4OjU3OjQyKToKfiMhIHJuPUFzdWthIHJ0PTEwOTIyNDMzMTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMjQyNDg2ClttZWdhaGFsOkFzdWthXSBhcmsKW21lZ2FoYWw6TWVoYWxdIE5laW4sIGFyayB3YXIgd2FzIGFuZGVyZXMuClttZWdhaGFsOkJpZWxlZmVsZF0gYXJrClttZWdhaGFsOk1laGFsXSBOZWluLCBhcmsgd2FyIHdhcyBiZWdpbm5pbmcuClttZWdhaGFsOkJpZWxlZmVsZF0gYXJrClttZWdhaGFsOk1laGFsXSBBcmsgaXN0IGdlcmFkZSBnZWtvbW1lbi4KCkljaCBiaW4gZGVyIHdhaHJlIEdvdHQsIGdsYXViZSBpY2ggOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogaWNoIHd1c3N0ZSBlcyAoQXN1a2EsIDExLiBBdWcgMjAwNCwgMTg6NTg6NTYpOgp+IyEgcm49QXJrIHJ0PTEwOTIyNDM0NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMjQyNDg2CkVpbiBHb3R0IGRlciBSb3R3ZWluIHZlcnRlaWx0PyAKCkFzdWthLCBtaXQgZWluZW0gJ0FyayBmb3IgTGV2ZWwgMTExJy1GYWVobmNoZW4gd2lua2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGljaCB3dXNzdGUgZXMgKEFyaywgMTEuIEF1ZyAyMDA0LCAxOTowMjowMCk6Cn4jISBybj1Bc3VrYSBydD0xMDkyMjQzNTM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjI0MjQ4NgpOZSwgYWxzIEdvdHQgbXVzcyBtYW4gaGllciBqYSB3aXJrbGljaCBhcmJlaXRlbiwgc28gd2llIGF1Zm0gQmF1LiBMYXNzIG1hbCwKbGllYmVyIEFuem9vayBhbHMgQXVmem9vay4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGljaCB3dXNzdGUgZXMgKERlZXBibHVlLCAxMS4gQXVnIDIwMDQsIDE5OjAzOjM4KToKfiMhIHJuPVpvb2sgcnQ9MTA5MjI0MzI5OCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIyNDI0ODYKSWNoIGZyYWcgbWljaCBudXIsIHdvaGVyIEh1bW5pIGRhcyB3ZWlzcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAuLi4uc3RlbGx0IEJhbWJpIChCYW1iaSwgMTEuIEF1ZyAyMDA0LCAxOTozNTowMSk6Cn4jISBybj1ab29rIHJ0PTEwOTIyNDU0MjUgcmc9cHJhbmdlcgp+IyEgdGlkPTEwOTIyNDU0MjUKT2NoIG1lbm5vLiBXaXIgaGFiZW4gTWl0dHdvY2ggYWJlbmQuIERhIHZlcnNjaGVua3N0IER1IGVpbmUgaGFsYmUgV29jaGUuIE9kZXIKZ2lsdCBkYXMgcnVlY2t3aXJrZW5kPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBpY2ggd3Vzc3RlIGVzIChOb25uZSwgMTEuIEF1ZyAyMDA0LCAxOTo0NDozMSk6Cn4jISBybj1ab29rIHJ0PTEwOTIyNDMyOTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMjQyNDg2ClttZWdhaGFsOk5vbm5lXSBub25uZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApbbWVnYWhhbDpNZWhhbF0gTWFoYXJldCBncmluc3Qgbm9ubmUgYW4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKW21lZ2FoYWw6Tm9ubmVdIE5pY2h0IGdhbnogU2V4Z290dCwgYWJlciBtYW4gbXVzcyBpY2ggbWl0IGtsZWluZW4gRGluZ2VuClttZWdhaGFsOk5vbm5lXSB6dWZyaWVkZW4gZ2ViZW4gKGM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApbbWVnYWhhbDpNZWhhbF0gRHUgYmlzdCBhdWNoIGVpbiBzZXhnb3R0LiAgICAgICAgIAoKTWVoYWwgaXN0IGdhbnogc2Nob2VuIHNjaGxhdSBnZXdvcmRlbiAoYzsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGljaCB3dXNzdGUgZXMgKE1vcmdvdGgsIDExLiBBdWcgMjAwNCwgMTk6NDU6MDUpOgp+IyEgcm49Tm9ubmUgcnQ9MTA5MjI0NjI3MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIyNDI0ODYKU2llIHNvbGx0ZSB2aWVsbGVpY2h0ICJhbHRlciBzZXhnb3R0IiBzY2hyZWliZW4gOikKCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBpY2ggd3Vzc3RlIGVzIChBc3VrYSwgMTEuIEF1ZyAyMDA0LCAxOTo0NToxNyk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwOTIyNDYzMDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMjQyNDg2CkhhdXB0c2FjaGUgU2V4Z290dCwgb2Rlcj8KCkFzdWthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBpY2ggd3Vzc3RlIGVzIChNb3Jnb3RoLCAxMS4gQXVnIDIwMDQsIDE5OjQ1OjU5KToKfiMhIHJuPUFzdWthIHJ0PTEwOTIyNDYzMTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMjQyNDg2CkFiZXIgZGFubiB3aXJkIGRhcyBlY2h0IHNjaHdlciwgZGVuIE5hbWVuIGZ1ZXIgZGVuIHZpZXJ0ZW4gR290dCBkZXIgS2xlcmlzCmZpbmRlbi4uLndlbm4gZXMgc28gdmllbGUgU2V4Z29ldHRlciBnaWJ0LgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGljaCB3dXNzdGUgZXMgKE5vbm5lLCAxMS4gQXVnIDIwMDQsIDE5OjQ2OjAxKToKfiMhIHJuPUFzdWthIHJ0PTEwOTIyNDYzMTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMjQyNDg2Ck1pdCBkZW0gQWx0ZXIga29tbXQgZGllIFJlaWZlLiBTbyBqdW5nZSBTY2huZWxsc3ByaXR6ZXIgc3RlY2tlIGljaCBkb2NoIG5vY2gKbGFuZyBpbiBkaWUgVGFzY2hlICpnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogaWNoIHd1c3N0ZSBlcyAoUGl0ZmFsbCwgMTEuIEF1ZyAyMDA0LCAxOTo0NjoyMyk6Cn4jISBybj1Ob25uZSBydD0xMDkyMjQ2MzYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjI0MjQ4NgpJbiB3ZXNzZW4gVGFzY2hlPwoKUGl0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzM6IFZvbGxlIEtyYWZ0IHp1cnVlY2shIChDcm9mdCwgMTEuIEF1ZyAyMDA0LCAyMDoyMjozMCk6Cn4jISBybj1NdWFkaWIgcnQ9MTA5MjI0ODQ0NCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA5MjA0ODc5NgpPaC4gRWluIEthbm5pYmFsZSBhbHMgU2hlcmlmZi4gSW50ZXJlc3NhbnQuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzQ6IFZvbGxlIEtyYWZ0IHp1cnVlY2shIChNdWFkaWIsIDExLiBBdWcgMjAwNCwgMjA6MjM6MTQpOgp+IyEgcm49Q3JvZnQgcnQ9MTA5MjI0ODU1MCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIwNDg3OTYKaWNoIGJpbiBrZWluIGthbm5pYmFsZQp3YXJ1bT8gaWNoIGdlaG9lcmUgbmljaHQgenVyIGdhdHR1bmcgY2xvd24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM1OiBWb2xsZSBLcmFmdCB6dXJ1ZWNrISAoQ3JvZnQsIDExLiBBdWcgMjAwNCwgMjA6MzA6MzgpOgp+IyEgcm49TXVhZGliIHJ0PTEwOTIyNDg1OTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMDQ4Nzk2CkRhbm4gaGFiIGljaCBkYSB3YXMgdmVyd2VjaHNlbHQgOm8pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IFZvbGxlIEtyYWZ0IHp1cnVlY2shIChCYW1idWxrbywgMTIuIEF1ZyAyMDA0LCAxMDoxODo0NCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA5MjI5ODUwOCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA5MjA0ODc5NgpJY2ggc2VoZSBkYSBrZWluZSB6ZWl0bGljaGUgS29udGludWl0YWV0LiBEYXMgaGF0IHNpY2hlciB3YXMgbWl0Cidrb250ZXh0c2Vuc2l0aXZlcyBMZXNlbicgenUgdHVuLgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBWb2xsZSBLcmFmdCB6dXJ1ZWNrISAoR3JpbW1ib3JuLCAxMi4gQXVnIDIwMDQsIDEwOjI5OjIyKToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEwOTIyOTg3MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMDQ4Nzk2CkphLCB1bmQgbWl0IGRhcyBOaWNodGJlaGVycnNjaGVuIGRlcyBEYXRpdnMuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMyOiBWb2xsZSBLcmFmdCB6dXJ1ZWNrISAoSGlnaGxhbmRlciwgMTIuIEF1ZyAyMDA0LCAxMDozMTowMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA5MjI5OTM2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIwNDg3OTYKTXVlc3N0ZSBkYXMgZGFubiBuaWNodCAndm9uIGRlbSBEYXRpdicgaGVpc3Nlbj8KCkhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzM6IFZvbGxlIEtyYWZ0IHp1cnVlY2shIChHcmltbWJvcm4sIDEyLiBBdWcgMjAwNCwgMTA6MzY6MTEpOgp+IyEgcm49SGlnaGxhbmRlciBydD0xMDkyMjk5NDYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjA0ODc5NgpEZXNzZW4ga2FubiBpY2ggc28gbmljaHQgenVzdGltbWVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNDogVm9sbGUgS3JhZnQgenVydWVjayEgKE1vbnRhbnVzLCAxMi4gQXVnIDIwMDQsIDExOjEwOjA1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDkyMjk5NzcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjA0ODc5NgpLb2VubmVuIHdpciB2aWVsbGVpY2h0IGFscyBhbGxlcmVyc3RlcyBhbGxlIExldXRlIGFuIGRpZSBXYW5kIHN0ZWxsZW4sIGRpZQoiYW5mYW5nZW4iIG1pdCAic2VpbiIgdmVyYmluZGVuPyBHdXQsIGRhbmFjaCB3YWVyZSBldnRsIFdlc3RmYWxlbiBsZWVyLCBhYmVyCmRhcyB3YWVyZSBhdWNoIG5pY2h0IHNvIHNjaGxpbW0uIFNvYmFsZCBtYW4gbWl0IGRlbiAiaWNoIGJpbgphbmdlZmFuZ2VuIi1WZXJicmVjaGVybiBhdWZnZXJhZXVtdCBoYXQsIGthbm4gbWFuIHNpY2ggbmllZGVycmFuZ2lnZW4gUHJvYmxtZW4Kd2llIGRlcyBpZ25vcmllcnRlbiBHZW5pdGl2cyB6dXdlbmRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM1OiBWb2xsZSBLcmFmdCB6dXJ1ZWNrISAoTXVhZGliLCAxMi4gQXVnIDIwMDQsIDEyOjM0OjM5KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwOTIzMDE4MDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMDQ4Nzk2CmltbWVyIGRpZXNlIGFnZ3Jlc3Npb25lbgppY2ggYmluIGFuZ2VmYW5nZW4gZGFzIGxlaWNodCBpcnJpdGllcmVuZCB6dSBmaW5kZW4genUgdHVuIHRyb3R6IGRlbSBtb250YW51cwpzZWluIGJlbXVlaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNjogVm9sbGUgS3JhZnQgenVydWVjayEgKE1vbnRhbnVzLCAxMi4gQXVnIDIwMDQsIDEzOjQ2OjEzKToKfiMhIHJuPU11YWRpYiBydD0xMDkyMzA2ODc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjA0ODc5NgpBcmdsLiBEdSB3aWxsc3QgbWljaCB1bWJyaW5nZW4sIGdpYnMgenUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBVTElURSBzdGFydGV0IHdpZWRlciEgKFpvb2ssIDEyLiBBdWcgMjAwNCwgMTQ6NDY6MzIpOgp+IyEgb249Wm9vayBvdD0xMDkyMzE0Nzg2IG9nPXd3dwp+IyEgcm49Qm9pbmcgcnQ9MTA5MjMxNDcyNCByZz13d3cKfiMhIHRpZD0xMDkyMjU3OTQ5CiJoaWxmZSBlaW5mdWVocnVuZyIgCgpFcmdlYm5pczoKClhZWiB0ZWlsdCBEaXIgbWl0OiBoYWxsbyBtdWRnb3R0ISAKCgpab29rIHd1ZXJndCBpbW1lciBub2NoIGVpbiB3ZW5pZyBhbiBOYWNodHdpbmQgaGVydW0uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBVTElURSBzdGFydGV0IHdpZWRlciEgKEJpZWxlZmVsZCwgMTIuIEF1ZyAyMDA0LCAxNDo0OToyMCk6Cn4jISBybj1ab29rIHJ0PTEwOTIzMTQ3OTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMjU3OTQ5CkZyYWcgZG9jaCBtYWwgR2xvaW5zb24sIG9iIGVyIGRlbiBtdWRnb3R0IGR1cmNoIGVpbmVuIHNleGdvdHQgZXJzZXR6dCA7KQoKLUJpZWxlZmVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVUxJVEUgc3RhcnRldCB3aWVkZXIhIChHbG9pbnNvbiwgMTIuIEF1ZyAyMDA0LCAxNzoxOToxMik6Cn4jISBybj1CaWVsZWZlbGQgcnQ9MTA5MjMxNDk2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIyNTc5NDkKQWJlciBnZXJuZSBkb2NoLiBVbmQgTmFjaHR3aW5kIGR1cmNoIE5hY2t0d2luZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPTUZHIChNb3Jnb3RoLCAxMi4gQXVnIDIwMDQsIDE4OjAzOjAxKToKaHR0cDovL3d3dy5pbGx3aWxscHJlc3MuY29tL2ZhdGtpbnMuaHRtbApodHRwOi8vd3d3LmlsbHdpbGxwcmVzcy5jb20vbnV0cy5odG1sCgpCaXR0ZSBpbiBkZXIgUmVpaGVuZm9sZ2UgaG9lcmVuIDopCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9NRkcgKEJhbWJ1bGtvLCAxMi4gQXVnIDIwMDQsIDE5OjQ2OjQxKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA5MjMyNjU4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIzMjY1ODEKRGFua2UsIGpldHp0IGhhYmVuIHNpY2ggbWVpbmUgR2Vob2VyZ2FlbmdlIGF1Zmdld2lja2VsdC4gTWVpbmUgR2VoaXJuZ2FlbmdlCndvaGwgYXVjaC4gSmV0enQgYmluIGljaCBmdWVyIGRlbiBSZXN0IG1laW5lcyBMZWJlbnMgVGF1YiB1bmQgV2FobnNpbm5pZy4gS2Vpbgpncm9zc2VyIFVudGVyc2NoaWVkIHp1IGpldHp0IDopCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogWFhWSUkgKE1vcmdvdGgsIDEzLiBBdWcgMjAwNCwgMDA6MzM6MzEpOgp+IyEgcm49TXVwZmVsIHJ0PTEwOTIzNDk3MDEgcmc9cGFydHkKfiMhIHRpZD0xMDkyMzQzNzczCldpbGxzdCBEdSBuZSBlaHJsaWNoZSBBbnR3b3J0PyA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvc28uLi4gKEtlbGx5YnVuZHksIDEzLiBBdWcgMjAwNCwgMTg6MjM6MTgpOgpbTG9yZF0gQ2hhb3MgcnVsZVohIDwxMS44LiwgMTk6MDk6NDQ+CkNoYW90IEthaHVtYSBuaWNodC4gPDExLiA4LiwgMTk6MDk6NTg+CgpLZWxseS4gZmluZGV0IEthaHVtYSB1bmNoYW90aXNjaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFhYVklJIChNdXBmZWwsIDEzLiBBdWcgMjAwNCwgMjA6MDA6NDcpOgp+IyEgcm49TW9yZ290aCBydD0xMDkyMzUwMDExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjM0Mzc3MwpLbGFyIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ3JhZGUsIGltIGFuZGVyZW4gRmVuc3Rlci4uLi4gKE11cGZlbCwgMTMuIEF1ZyAyMDA0LCAyMDo0MDozMyk6CltRdWl6OlFdIEZyYWdlIDEzIHZvbiAzMDoKW1F1aXo6UV0gV2llIG5lbm50IG1hbiBkaWUgQW5nc3Qgdm9yIEtyYW5raGVpdHNlcnJlZ2Vybj8KW1F1aXo6UV0gVElQOiAuLi4uLi5vLi4uLi4uCltRdWl6OkplbmFuZHJhXSBiYXppbGxvcGhvYmllCltRdWl6OlFdIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCltRdWl6OlFdIEplbmFuZHJhIGhhdCBkaWUgRnJhZ2UgcmljaHRpZyBiZWFudHdvcnRldCEKW1F1aXo6UV0gRGllIEFudHdvcnQgbGF1dGV0ZTogQmF6aWxsb3Bob2JpZQpbUXVpejpRXSBbNCBQdW5rdChlKV0gSmVuYW5kcmEKW1F1aXo6UV0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KW1F1aXo6UV0gRnJhZ2UgMTQgdm9uIDMwOgpbUXVpejpRXSBXZWxjaGVzIExhbmQgd2FyIEVuZGUgZGVzIDE5LiBKYWhyaHVuZGVydHMgZGllIGdyb2Vzc3RlIFNlZW1hY2h0PwpbUXVpejpKZW5hbmRyYV0gYWVoLgpbUXVpejpKZW5hbmRyYV0gZGFzIHdhcm4gU0NIRVJaCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGdyYWRlLCBpbSBhbmRlcmVuIEZlbnN0ZXIuLi4uIChBbWFyeWxsaXMsIDEzLiBBdWcgMjAwNCwgMjA6NDI6MDcpOgp+IyEgcm49TXVwZmVsIHJ0PTEwOTI0MjI0MzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyNDIyNDMzCk5laW4sIFNDSEVSWiB3YXIgbmljaHQgZGllIGdyb2Vzc3RlIFNlZW1hY2h0LgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGdyYWRlLCBpbSBhbmRlcmVuIEZlbnN0ZXIuLi4uIChNdXBmZWwsIDEzLiBBdWcgMjAwNCwgMjE6NTM6NDUpOgp+IyEgcm49TXVwZmVsIHJ0PTEwOTI0MjI0MzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyNDIyNDMzCltRdWl6OlFdIEZyYWdlIDExIHZvbiAzMDoKW1F1aXo6UV0gV2llIGhlaXNzdCBkZXIgUmluZ211c2tlbCwgZGVyIGRlbiBOYWhydW5nc2JyZWkgYXVzIGRlbSBNYWdlbiBpbiBkZW4KW1F1aXo6UV0gRGFybSBkcnVlY2t0PwpbUXVpejpBc3VrYV0gU2NobGllc3NtdXNrZWwKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGdyYWRlLCBpbSBhbmRlcmVuIEZlbnN0ZXIuLi4uIChBc3VrYSwgMTMuIEF1ZyAyMDA0LCAyMTo1NDoxMyk6Cn4jISBybj1NdXBmZWwgcnQ9MTA5MjQyNjgyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI0MjI0MzMKSWNoIGRpc3RhbnppZXJlIG1pY2ggaGllcm1pdCBlaW5kZXV0aWcgdm9uIGRlbSBTcGllbGVyIGdsZWljaGVuCk5hbWVucy4KCkFzdWthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBncmFkZSwgaW0gYW5kZXJlbiBGZW5zdGVyLi4uLiAoQWthc2hhLCAxMy4gQXVnIDIwMDQsIDIxOjU0OjQ3KToKfiMhIHJuPUFzdWthIHJ0PTEwOTI0MjY4NTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyNDIyNDMzCkJpc3QgRHUgc2NoaXpvcGhyZW4sIG9kZXIgd2FzPyA7bykKCkFrYXNoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZ3JhZGUsIGltIGFuZGVyZW4gRmVuc3Rlci4uLi4gKEZvb2JhciwgMTMuIEF1ZyAyMDA0LCAyMTo1NDo1OSk6Cn4jISBybj1Ba2FzaGEgcnQ9MTA5MjQyNjg4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI0MjI0MzMKSmEuCgpBc3VrYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZ3JhZGUsIGltIGFuZGVyZW4gRmVuc3Rlci4uLi4gKEFzdWthLCAxMy4gQXVnIDIwMDQsIDIxOjU1OjAzKToKfiMhIHJuPUFrYXNoYSBydD0xMDkyNDI2ODg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjQyMjQzMwpQc3N0LCBuaWNodCB3ZWl0ZXJzYWdlbi4gSWNoIHNhZ3MgYXVjaCBuaWNodHcgZWl0ZXIuCgpBc3VrYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXJrZW5udG5pc3NlLi4uLiAoWm9vaywgMTYuIEF1ZyAyMDA0LCAwOTo0OTowOCk6CkdsYW1kcmluZyBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uCkdsYW1kcmluZyBydWZ0OiBpY2ggYmluIGJsb2VkISEhCkdsYW1kcmluZyBydWZ0OiBpY2ggYmluIGJsb2VkISEhCkdsYW1kcmluZyBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVmVnYW5lciB1bmQgQjEyIChHcmltbWJvcm4sIDE2LiBBdWcgMjAwNCwgMTI6NDA6MTUpOgp+IyEgcm49TWFoYXJldCBydD0xMDkyNjUyMTM4IHJnPXNjaG1hcnJuLm5ldGRpZ2VzdAp+IyEgdGlkPTEwOTIxMTgzMjEKTWVnYXNjaG1hcnJuZXIgd2lzc2VuIG1laHIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQm9nZW4gdm9uIFJvYmluIChDcm9mdCwgMTYuIEF1ZyAyMDA0LCAyMjoxNzozNyk6Cn4jISBybj1EYXJrbG9yIHJ0PTEwOTI2ODY4MjMgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTA5MjY4NjY4MwpKby4gIEZ1ZXIgZWluZW4gU2NobGFnLiAgRGFubiBpc3QgZXIgYWxzIEJvZ2VuIG5pY2h0IG1laHIgenUgdmVyd2VuZGVuIC4uLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJvZ2VuIHZvbiBSb2JpbiAoRGFya2xvciwgMTYuIEF1ZyAyMDA0LCAyMjoxODoyOSk6Cn4jISBybj1Dcm9mdCBydD0xMDkyNjg3NDU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjY4NjY4MwpEYW5uIGtvZW5udGVzdGUgZGFtaXQgYXVjaCBuaWNoIHNjaGllc3NlbiAtIGVpbiBTY2h1c3MgdW5kIGVyIGlzIHplcmJyb2NoZW4uLi4KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJvZ2VuIHZvbiBSb2JpbiAoQ3JvZnQsIDE2LiBBdWcgMjAwNCwgMjI6NDA6MTgpOgp+IyEgcm49RGFya2xvciBydD0xMDkyNjg3NTA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjY4NjY4MwpEaWUgU2NodXNzYmVsYXN0dW5nIGlzdCBkb2NoIGV0d2FzIGFuZGVycyBhbHMgZWluZSBTY2hsYWdiZWxhc3R1bmcgLi4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQm9nZW4gdm9uIFJvYmluIChEYXJrbG9yLCAxNi4gQXVnIDIwMDQsIDIyOjQxOjU0KToKfiMhIHJuPUNyb2Z0IHJ0PTEwOTI2ODg4MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyNjg2NjgzClJvYmlucyBCb2dlbiBtdXNzIHNvd2FzIGF1c2hhbHRlbiBrb2VubmVuLi4uIDspCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdGFtbXRpc2NoIEthcmxzcnVoZSAxOS44LjIwMDQgKFJvbmRhLCAxNi4gQXVnIDIwMDQsIDIyOjQ0OjI0KToKfiMhIHJuPUJvaW5nIHJ0PTEwOTI2Njc5MzMgcmc9dHJlZmZlbgp+IyEgdGlkPTEwOTI2NTQ4NzIKV2llPyBJbiBLQSBnaWJ0cyBTcGFyZSBSaWJzIGFsbCB5b3UgY2FuIGVhdD8gT2ggamUuLi4gc28gaGF0cyBkYW1hbHMgYXVjaCBtaXQKZGVtIEpvaG4gRG9lcyBEaW5lciBhbmdlZmFuZ2VuLi4uIGVzc3QgZG9ydCwgc28gbGFuZ2UgZXMgbm9jaCBnZWh0Li4uCgpSb25kYSAqaGF0IGdyYWQgQ2hpY2tlbiBXaW5ncyBhbGwgeW91IGNhbiBlYXQgaW4gRnJhbmtmdXJ0IHZlcnB1dHouIE1hbXBmISoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWJyZWNobnVuZyAtIEhhbGxlIChHcmltbWJvcm4sIDE2LiBBdWcgMjAwNCwgMjI6NTk6NTYpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwOTI2ODkwMzIgcmc9cGFydHkKfiMhIHRpZD0xMDkyNDgzMzQ0ClVuZCBpY2ggYmluIGRhZnVlciwgZXMgYXVmIG1laW4gS29udG8genUgdWViZXJ3ZWlzZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFicmVjaG51bmcgLSBIYWxsZSAoQ3JvZnQsIDE2LiBBdWcgMjAwNCwgMjM6MDE6MzYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwOTI2ODk5OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyNDgzMzQ0CldpciBrb2VubnRlbiBub2NoIGRpc2t1dGllcmVuIG9iIGVzIGRlbSBWZXJlaW4gZ2VzcGVuZGV0IHdpcmQgb2RlciBvYgpzb2dhciBlaW5lIFdpbnRlcnBhcnR5IGRhcyBHZWxkIGhhYmVuIGR1ZXJmdGUuICBBbnNvbnN0ZW4gYmluIGljaCBkYWZ1ZXIKZGFzIG1pbmRlc3RlbnMgNTAlIGF1ZiBtZWluIEtvbnRvIGtvbW1lbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCcm90aSA6PiAoUGl0ZmFsbCwgMTcuIEF1ZyAyMDA0LCAwMTo1MTo1MCk6ClttZWdhaGFsOlBpdGZhbGxdIEJyb3RuYWVsPwpbbWVnYWhhbDpNZWhhbF0gQnJvdG5hZWwgaXN0IGVpbiB0dWVya2lzY2hlcyBtdWguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUcmFuc2VuPyAoR2xvaW5zb24sIDE3LiBBdWcgMjAwNCwgMjE6NTc6MTUpOgpbQmVpbGVpZDpBc3VrYV0gd2VubiBtYW4gTmliZWwgamV0enQgZnJhZ3QsIHNhZ3QgZGVyIHNpY2hlciBlciBoYWV0dGUgZGEKW0JlaWxlaWQ6QXN1a2FdIG5pY2h0cyB2ZXJhZW5kZXJ0CltCZWlsZWlkOktyaW1hcmlvbF0gaG1tLCBzb3ZpZWxlIHRyYW5zZW4gaGF0dGUgaWNoIGluIGRlbiBsZXR6dGVuIDMgcnVucwpbQmVpbGVpZDpLcmltYXJpb2xdIHp1c2FtbWVuIG5pY2h0CgpNYW4ga29lbm50ZSBpbiBkaWVzZSBaZWlsZW4gd2lsZCBoaW5laW5pbnRlcnByZXRpZXJlbiwgZGFzcyBOaWJlbCBmdWVyIFRyYW5zZW4KaW4gZGllc2VtIE1VRCB6dXN0YWVuZGlnIGlzdC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSElsZmUgZ2VzdWNodCAoR3JpbW1ib3JuLCAxOC4gQXVnIDIwMDQsIDEwOjEyOjUzKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMDkyODE2NzU3IG9nPWt1bHR1cgp+IyEgcm49WmFybml5YSBydD0xMDkyODE2MzMxIHJnPWt1bHR1cgp+IyEgdGlkPTEwOTI4MTYzMzEKSG1tLCB3YWVyZSBlcyBuaWNodCBiZXNzZXIsIHdlbm4gZXIgc2VpbiBJbnN0cnVtZW50IGJ6dy4gc2VpbmUgU3RpbW1lCmJlaGVycnNjaGVuIHd1ZXJkZSwgYW5zdGF0dCBkZXIgQ291bnRyeWNoYXJ0cz8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQWJlbnRldWVydGFnZWJ1Y2ggKEFuYXRvbCwgMTguIEF1ZyAyMDA0LCAxMjozMzoyNSk6Cn4jISBvbj1BbmF0b2wgb3Q9MTA5MjgyNTE5NyBvZz1kLndhbGQKfiMhIHJuPUFyayBydD0xMDkyODI0Mjc1IHJnPWQud2FsZAp+IyEgdGlkPTEwOTI0MzgzMDIKVW5kIE55eCBpc3QgZWluZmFjaCB6dSBmYXVsLCBkaWUgTG9nZmlsZWVpbnRyYWVnZSBzb3dlaXQgbW9lZ2xpY2ggenUKcmVzdGF1cmllcmVuICpicnVtbWVsKiAqc3RpY2hlbCogOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCBpbSBOaXJnZW5kd28uLi4gKEdhYnlsb24sIDE4LiBBdWcgMjAwNCwgMTM6MzU6MzIpOgp+IyEgb249R3JpbW1ib3JuIG90PTEwOTI4Mjg4ODggb2c9ZC5mZXJud2VzdAp+IyEgcm49R2FieWxvbiBydD0xMDkyODI4NzA2IHJnPWQuZmVybndlc3QKfiMhIHRpZD0xMDkyODI4NzA2CkRlaW5lIFN5bnRheCBpc3QgZWhlciB1bXN0YWVuZGxpY2guIER1IG1laW5zdCB3YWhyc2NoZWlubGljaCAiZnJhZ2UgY2h1IG5hY2gKdHVybSIuIFVuZCBTY2hhdHRlbmtyaWVnZXIgd2VyZGVuIG5pY2h0IHZlcnRyaWViZW4sIGRhcyBrYW5uIGljaCBEaXIKcGVyc29lbmxpY2ggYmVzdGFldGlnZW4uIFp1bWluZGVzdCB3ZW5uIGVzIHVtIGRpZSBhdXMgZGVyIFNjaGF0dGVud2VsdCBnZWh0LgoKR2RBW2V4LVJdCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWxpY2ggaW0gTmlyZ2VuZHdvLi4uIChBbmF0b2wsIDE4LiBBdWcgMjAwNCwgMTM6NDI6MDApOgp+IyEgcm49R2FieWxvbiBydD0xMDkyODI4OTMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjgyODcwNgpLbGluZ3QgYmVpbSBlcnN0ZW4gTGVzZW4sIGFscyBvYiBpcmdlbmR3ZXIgZGVuIEFsdGVuIHZvbSBCZXJnZSBoYXQKcHJvZ3JhbW1pZXJlbiBtdWVzc2VuLiAKCkhhc2NoaXNjaGZyZXNzZXIsIGFsbGUgenVzYW1tZW4hIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmV1bGljaCBpbSBOaXJnZW5kd28uLi4gKE1vcmdvdGgsIDE4LiBBdWcgMjAwNCwgMTc6MTQ6NTgpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTI4MjkzMjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyODI4NzA2CkR1IGhhc3QgRGlyIGRhcyBkdXJjaGdlbGVzZW4/CgpNKiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1lZ2FoYWw/IChBbmF0b2wsIDE5LiBBdWcgMjAwNCwgMTc6MDU6NDMpOgpbbWVnYWhhbDpNZWhhbF0gRXMgZ2lidCBlaW5lIGhlaWxiYWxhbmNlLCBlaW5lIGdpbGRlbmJhbGFuY2UsIGVpbmUKW21lZ2FoYWw6TWVoYWxdIG9iamVrdGJhbGFuY2UgdW5kIGVpbmUga3VoLgoKVW5kIGljaCBkYWNodGUsIElDSCB3YWVyZSBmaWVzIHp1IE5vbm5lLi4uIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJvZ2VuIHZvbiBSb2JpbiAoQm9pbmcsIDE5LiBBdWcgMjAwNCwgMTc6MTY6MTYpOgp+IyEgb249RGFya2xvciBvdD0xMDkyNjg2ODIzIG9nPWQuZ2ViaXJnZQp+IyEgcm49Qm9pbmcgcnQ9MTA5MjY4NjY4MyByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDkyNjg2NjgzCkthbXBmc3RhYiBzb2xsdGUgYWJlciBhdWNoIGdlaGVuLi4uCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJvZ2VuIHZvbiBSb2JpbiAoQm9pbmcsIDE5LiBBdWcgMjAwNCwgMTc6MTY6MTcpOgp+IyEgb249QW5hdG9sIG90PTEwOTI4MjUxNDEgb2c9ZC5nZWJpcmdlCn4jISBybj1EYXJrbG9yIHJ0PTEwOTI2ODY4MjMgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTA5MjY4NjY4MwpEYXMgd2FyIGpldHp0IG1pdCBBYnN0YW5kIGRhcyBkdWVtbXN0ZSBLb21tZW50YXIgd2FzIHp1IGRlciBnZXNhbXRlbgpLYW1wZnN0YWItVHJhZ29lZGllIHZvbiBzaWNoIGdlZ2ViZW4gd3VyZGUuIEdyYXR1bGF0aW9uLiAKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCb2dlbiB2b24gUm9iaW4gKEJvaW5nLCAxOS4gQXVnIDIwMDQsIDE3OjE2OjE4KToKfiMhIG9uPURhcmtsb3Igb3Q9MTA5MjkyNTA0MCBvZz1kLmdlYmlyZ2UKfiMhIHJuPUFuYXRvbCBydD0xMDkyODI1MTQxIHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwOTI2ODY2ODMKQWgsIGVzIGdpYnQgZWluZSBLYW1wZnN0YWJ0cmFnb2VkaWU/IAoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQm9nZW4gdm9uIFJvYmluIChCb2luZywgMTkuIEF1ZyAyMDA0LCAxNzoxNjoxOSk6Cn4jISBvbj1BbmF0b2wgb3Q9MTA5MjkyNTExMCBvZz1kLmdlYmlyZ2UKfiMhIHJuPURhcmtsb3IgcnQ9MTA5MjkyNTA0MCByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDkyNjg2NjgzCk9oIGphLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEJvZ2VuIHZvbiBSb2JpbiAoQm9pbmcsIDE5LiBBdWcgMjAwNCwgMTc6MTY6MjApOgp+IyEgb249Qm9pbmcgb3Q9MTA5MjkyNzk2NSBvZz1kLmdlYmlyZ2UKfiMhIHJuPUFuYXRvbCBydD0xMDkyOTI1MTEwIHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwOTI2ODY2ODMKQWJlciBudXIgQW5hdG9sIGlzdCBpbiBkZXIgTGFnZSBzaWUgenUgZXJrZW5uZW4uIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEJvZ2VuIHZvbiBSb2JpbiAoQm9pbmcsIDE5LiBBdWcgMjAwNCwgMTc6MTY6MjEpOgp+IyEgb249QW5hdG9sIG90PTEwOTI5MjgwMTUgb2c9ZC5nZWJpcmdlCn4jISBybj1Cb2luZyBydD0xMDkyOTI3OTY1IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwOTI2ODY2ODMKTnVyIHdlaWwgRHUgZGVuIHJvc2EgRWxlZmFudGVuIGluIG1laW5lbSBWb3JnYXJ0ZW4gbmljaHQgc2VoZW4ga2FubnN0LAppc3QgZGllc2VyIG5vY2ggbGFuZ2UgbmljaHQgaW5leGlzdGVudC4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCb2dlbiB2b24gUm9iaW4gKEJvaW5nLCAxOS4gQXVnIDIwMDQsIDE3OjE2OjIyKToKfiMhIG9uPUJvaW5nIG90PTEwOTI5MjgyMTMgb2c9ZC5nZWJpcmdlCn4jISBybj1BbmF0b2wgcnQ9MTA5MjkyODAxNSByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDkyNjg2NjgzCkljaCBoYWIgZ2FyIGtlaW5lbiBWb3JnYXJ0ZW4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEJvZ2VuIHZvbiBSb2JpbiAoQm9pbmcsIDE5LiBBdWcgMjAwNCwgMTc6MTY6MjMpOgp+IyEgb249QW5hdG9sIG90PTEwOTI5MjgyNTEgb2c9ZC5nZWJpcmdlCn4jISBybj1Cb2luZyBydD0xMDkyOTI4MjEzIHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwOTI2ODY2ODMKTXVzc3QgRHUgamVkZW4gVm9yZ2FydGVuIGF1ZiBEaWNoIGJlemllaGVuPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEJvZ2VuIHZvbiBSb2JpbiAoQm9pbmcsIDE5LiBBdWcgMjAwNCwgMTc6MTY6MjQpOgp+IyEgb249Qm9pbmcgb3Q9MTA5MjkyODM2NiBvZz1kLmdlYmlyZ2UKfiMhIHJuPUFuYXRvbCBydD0xMDkyOTI4MjUxIHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwOTI2ODY2ODMKT2gsIGRhcyBoYWIgaWNoIHRhdHNhZWNobGljaCBmYWxzY2ggZ2VsZXNlbi4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEJvZ2VuIHZvbiBSb2JpbiAoQm9pbmcsIDE5LiBBdWcgMjAwNCwgMTc6MTY6MjUpOgp+IyEgb249QW5hdG9sIG90PTEwOTI5Mjg1Mjggb2c9ZC5nZWJpcmdlCn4jISBybj1Cb2luZyBydD0xMDkyOTI4MzY2IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwOTI2ODY2ODMKQmVpIGRlciBUcmFnb2VkaWUgaGFiZW4gYXVjaCBlaW5pZ2UgZWluaWdlcyBmYWxzY2ggZ2VsZXNlbi4uLiA7bykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogQm9nZW4gdm9uIFJvYmluIChCb2luZywgMTkuIEF1ZyAyMDA0LCAxNzoxNjoyNik6Cn4jISBvbj1Cb2luZyBvdD0xMDkyOTI4NTU2IG9nPWQuZ2ViaXJnZQp+IyEgcm49QW5hdG9sIHJ0PTEwOTI5Mjg1Mjggcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTA5MjY4NjY4MwpOYWNoZGVtIGRhcyBhbGxlcyBnZWtsYWVydCBpc3Qga2FubiBpY2ggamV0enQgZGVuIHNjaG1hcnJuIGRhaGluCnZlcmxlZ2VuIHdvIGVyIGhpbmdlaG9lcnQ/CiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBCb2dlbiB2b24gUm9iaW4gKEJvaW5nLCAxOS4gQXVnIDIwMDQsIDE3OjE2OjM0KToKfiMhIG9uPURhcmtsb3Igb3Q9MTA5MjkyODU5MCBvZz1kLmdlYmlyZ2UKfiMhIHJuPUJvaW5nIHJ0PTEwOTI5Mjg1NTYgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTA5MjY4NjY4MwpXYXMgaXMgbnUgZGllIFRyYWdvZWRpZT8KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBCb2dlbiB2b24gUm9iaW4gKEFuYXRvbCwgMTkuIEF1ZyAyMDA0LCAxNzoxNzo0Nik6Cn4jISBybj1Cb2luZyBydD0xMDkyOTI4NTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjY4NjY4MwpUdXQgZGFzIE1QQS1BcmNoaXYgYXVmIGRlbiBXZWJzZWl0ZW4gZWlnZW50bGljaCB3aWVkZXI/IFdhZXJlCmJlcXVlbWVyLCBlaW5mYWNoIGF1ZiBlbnRzcHJlY2hlbmRlIExpbmtzIHZlcndlaXNlbiB6dSBrb2VubmVuLi4uIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1lZ2FoYWw/IChNdWFkaWIsIDE5LiBBdWcgMjAwNCwgMTg6NTk6NTQpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTI5Mjc5NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCmRhcyBvZWZmZW50bGljaGUgYXVzbGViZW4gZGVpbmVyIGFwYXRoaWVuIHdpcmQgbGFuZ3NhbSBlY2h0IGxhbmd3ZWlsaWcKYXVjaCB3ZW5uIGRpZSBuYW1lbiB3ZWNoc2VsbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNZWdhaGFsPyAoTXVhZGliLCAxOS4gQXVnIDIwMDQsIDE5OjAyOjMyKToKfiMhIHJuPU11YWRpYiBydD0xMDkyOTM0Nzk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpqYWphIGVzIG11c3MgYW50aXBhdGhpZSBoZWlzc2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNZWdhaGFsPyAoTXVhZGliLCAxOS4gQXVnIDIwMDQsIDE5OjAzOjAwKToKfiMhIHJuPU11YWRpYiBydD0xMDkyOTM0OTUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwphcGF0aGllIHRyaWZmdCBtb21lbnRhbiBlaGVyIGF1ZiBtaWNoIHp1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNZWdhaGFsPyAoQW5hdG9sLCAxOS4gQXVnIDIwMDQsIDE5OjA1OjM4KToKfiMhIHJuPU11YWRpYiBydD0xMDkyOTM0OTgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpEdSBtZWluc3Q6IEljaCBzb2xsIGxpZWJlciBoaW50ZW4gcnVtIGxhZXN0ZXJuLCB3aWUgZXMgZGVyCkdyb3NzdGVpbCBkZXIgV2VsdCBhdWNoIHR1dCwgamE/IAoKU29ycnksIG5pY2h0IG1laW4gU3RpbC4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1lZ2FoYWw/IChNdWFkaWIsIDE5LiBBdWcgMjAwNCwgMTk6MDc6MjIpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTI5MzUxMzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCnBmZmYKYW5zYXR6bG9zZXMgbGFlc3Rlcm4gYWJlciBzY2hvbgp4eXo6ICJkaWUga3VoIGRhIGhhdCBicmF1bmUgZmxlY2tlbiIKYW5hdG9sOiBzbyB3aWUgZGFzIGJyYXVuIGVpbmVzIGthbXBmc3RhYmVzLiBkYSBmYWVsbHQgbWlyIGVpbiwgaGFiIGljaCBkaXIKc2Nob24gZXJ6YWVobHQgLi4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE1lZ2FoYWw/IChBbmF0b2wsIDE5LiBBdWcgMjAwNCwgMTk6MTc6NTQpOgp+IyEgcm49TXVhZGliIHJ0PTEwOTI5MzUyNDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCk5laW5uZWluLCBkYXMgZ2luZ2UgYW5kZXJzLgp4eXo6ICJkaWUga3VoIGRhIGhhdCBicmF1bmUgZmxlY2tlbiIKCkFuYXRvbDogIkRhcyBsaWVndCBhbiBkZXIgQmVsZXVjaHR1bmcsIHdlZ2VuIGRlbSAkJSYvKyotTGljaHRzeS4uLnN5Li4gYXJnaC4iCgo7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTWVnYWhhbD8gKEJhbWJpLCAxOS4gQXVnIDIwMDQsIDIwOjI2OjU0KToKfiMhIHJuPUFuYXRvbCBydD0xMDkyOTM1ODc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpKZXR6dCBmYW5ndCBlbmRsaWNoIGFuLiBXaXIgaGFiZW4gdW5zIGFsbGUgUG9wY29ybiBiZXNvcmd0IHVuZCB3YXJ0ZW4sIGRhc3MgZXMKcmljaHRpZyBsb3NnZWh0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTWVnYWhhbD8gKEFuYXRvbCwgMTkuIEF1ZyAyMDA0LCAyMDozMTo0MCk6Cn4jISBybj1CYW1iaSBydD0xMDkyOTQwMDE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpXZXI/IE5vbm5lIGlzdCBrZWluIEdlZ25lciB1bmQgTXVhZGliIGlzdCBraXR6ZWxpZy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBNZWdhaGFsPyAoQmFtYmksIDE5LiBBdWcgMjAwNCwgMjE6NDk6NDcpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTI5NDAzMDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzClZvcmxhZ2U6ClphdWJlcmVyIHNpbmQgaGFlc3NsaWNoIHVuZCBzdGlua2VuLCBCaWVyc2NodWV0dGxlciBzaW5kIHZpZWwgenUgc3RhcmssCkthZW1wZmVyIHNpbmQgZWluZSBTcGFzc2dpbGRlIHVuZCBad2VyZ2UgamFtbWVybiB6dXZpZWwuIE1hY2ggd2FzIGRyYXVzLgoKQmFtYmksIGRpZXNlcyBtYWwgaG9mZmVudGxpY2ggcmljaHRpZyBmb3JtYXRpZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTWVnYWhhbD8gKE11YWRpYiwgMjAuIEF1ZyAyMDA0LCAwMDoxMToyNyk6Cn4jISBybj1CYW1iaSBydD0xMDkyOTQwMDE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0Mwp3b21pdCBhbmZhbmdlbj8KbWl0IGFuYXRvbCBmZXR6ZW4/CmRhcyBoYXQga2VpbmVuIHdlcnQsIGljaCBoYWIgZWggcmVjaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNZWdhaGFsPyAoTXVhZGliLCAyMC4gQXVnIDIwMDQsIDAwOjExOjQ3KToKfiMhIHJuPUJhbWJpIHJ0PTEwOTI5NDQ5ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCmpvIHN0aW1tdCBhbGxlcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE1lZ2FoYWw/IChEZWVwYmx1ZSwgMjAuIEF1ZyAyMDA0LCAwODozNzo1MCk6Cn4jISBybj1CYW1iaSBydD0xMDkyOTQ0OTg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpEdSBIYXN0IGRpZSBLYXJhdGVrYSB2ZXJnZXNzZW4hIERpZSBoYWJlbiB2aWVsIHp1IHZpZWwgR2lsZGVuZmxhaXIhIElnbm9yYW50IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE1lZ2FoYWw/IChQYWRyZWljLCAyMC4gQXVnIDIwMDQsIDA5OjAzOjI4KToKfiMhIHJuPURlZXBibHVlIHJ0PTEwOTI5ODM4NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkRpZSBXZWx0IGlzdCBrZWluZSBTY2hlaWJlLgoKUGFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE1lZ2FoYWw/IChaemFyenp0LCAyMC4gQXVnIDIwMDQsIDA5OjA2OjMwKToKfiMhIHJuPVBhZHJlaWMgcnQ9MTA5Mjk4NTQwOCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKUmljaHRpZy4gU293ZWl0IGljaCBtaWNoIGVyaW5uZXJlLCBoYXQgc2llIGRpZSBGb3JtIGVpbmVyIFBpenphLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IE1lZ2FoYWw/IChCYW1idWxrbywgMjAuIEF1ZyAyMDA0LCAwOTowNzo1OSk6Cn4jISBybj1aemFyenp0IHJ0PTEwOTI5ODU1OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkljaCBnbGF1YmUgZWhlciBhbiBlaW5lbiBEb251dC4gQWJlciBkYXMgaXN0IG51ciBtZWluZSBwZXJzb2VubGljaGUgVGhlb3JpZS4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBNZWdhaGFsPyAoTm9ubmUsIDIwLiBBdWcgMjAwNCwgMDk6NDA6MDUpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTI5NDAzMDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCk9oLCBpY2ggd3Vzc3RlIGdhciBuaWNodCwgZGFzcyBpY2ggaGllciBhbHMgR2VnbmVyIHRheGllcnQgd2VyZGUuIEljaCBkYWNodGUsCmljaCB2ZXJzdWNoZSBtZWluZW4gVGVpbCBkYXp1IGJlaXp1dHJhZ2VuLCBkYXNzIGRpZSBMZXV0ZSBoaWVyIFNwYXNzIGFtIFNwaWVsCmhhYmVuLiBBYmVyIG1hbCBlaW5lIGFuZGVyZW4gRnJhZ2U6IFNhZ3QgZGlyICdrb25zdHJ1a3RpdmUgS3JpdGlrJyBpcmdlbmR3YXM/CkFsc28gdm9yIGFsbGVtIGRhcyBlcnN0ZSBkZXIgYmVpZGVuIFdvZXJ0ZXI/CgpOb25uZSwgd29sbHRlIGhpZXIgZWlnZW50bGljaCBTcGFzcyBoYWJlbiB1bmQga2VpbmVuIEtyaWVnIGZ1ZWhyZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTWVnYWhhbD8gKEJhbWJ1bGtvLCAyMC4gQXVnIDIwMDQsIDA5OjQxOjUzKToKfiMhIHJuPU5vbm5lIHJ0PTEwOTI5ODc2MDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkRpZXMgaXN0IGVpbiBTcGllbC4gRGEgaGF0IFNwYXNzIG5pY2h0cyB6dSBzdWNoZW4hCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE1lZ2FoYWw/IChDcm9mdCwgMjAuIEF1ZyAyMDA0LCAwOTo1NToxNCk6Cn4jISBybj1CYW1idWxrbyBydD0xMDkyOTg1Njc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpGdWVyIGVpbmVuIERvbnV0IGJpc3QgZHUgaW0gZmFsc2NoZW4gTXVkLiAgR2VoIG5hY2ggVW5pdG9waWEuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE1lZ2FoYWw/IChaemFyenp0LCAyMC4gQXVnIDIwMDQsIDA5OjU2OjQwKToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEwOTI5ODc3MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkRhcyBpc3QgZWluIFNwaWVsIGhpZXI/Pz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBNZWdhaGFsPyAoRGVlcGJsdWUsIDIwLiBBdWcgMjAwNCwgMTA6MDI6MTIpOgp+IyEgcm49UGFkcmVpYyBydD0xMDkyOTg1NDA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpQYWRyZWljLCBsZWlkZXIgaXJyc3QgRHUgRGljaC4gTmF0dWVybGljaCBpc3QgZGllIFdlbHQgZWluZSBTY2hlaWJlLCBkaWUgYXVmCmRlbSBSdWVja2VuIHZvbiA0IEVsZWZhbnRlbiBydWh0LCBkaWUgd2llZGVydW0gYXVmIGRlciBTY2hpbGRrcm9ldGUKR3Jvc3MtQSdUdWluIHN0ZWhlbi4KRGFzIGVyZ2lidCBzaWNoIHNjaG9uIGRhcmF1cywgZGFzIFRvZCBpbiBHUk9TU0JVQ0hTVEFCRU4gc3ByaWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBNZWdhaGFsPyAoTXVhZGliLCAyMC4gQXVnIDIwMDQsIDEwOjE3OjI2KToKfiMhIHJuPURlZXBibHVlIHJ0PTEwOTI5ODg5MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCmJpc3QgZHUgc2ljaGVyIGRhc3MgZXMgNCBlbGVwaGFudGVuIHNpbmQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogTWVnYWhhbD8gKERlZXBibHVlLCAyMC4gQXVnIDIwMDQsIDEwOjI1OjAyKToKfiMhIHJuPU11YWRpYiBydD0xMDkyOTg5ODQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpzbyB3dXJkZSBlcyB6dW1pbmRlc3Qgdm9uIGRlbiBMZXV0ZW4gYmVyaWNodGV0LCBzaWUgYW0gUmFuZGZhbGwKaGVydW50ZXJnZWxhc3NlbiB3dXJkZW4KTGVpZGVyIGtvbm50ZSBub2NoIG5pZW1hbmQgc28gd2VpdCBoZXJhYmdlbGFzc2VuIHdlcmRlbiwgdW0gZGFzIEdlc2NobGVjaHQgdm9uCkdyb3NzLUEndHVpbiB6dSBiZXN0aW1tZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogTWVnYWhhbD8gKEJhbWJ1bGtvLCAyMC4gQXVnIDIwMDQsIDEwOjI5OjIzKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwOTI5OTAzMDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkJsb2Vkc2lubiwgYXVjaCB3ZW5uIFByYXRjaGV0dCBzZWluZSBMdWVnZW4gbm9jaCBzbyBvZnQgd2llZGVyaG9sdCwgd2lyZCBlcwpkZW5ub2NoIG5pY2h0IHdhaHJlci4gRGllIEVyZGUgaXN0IGVpbiBEb251dC4gCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE1lZ2FoYWw/IChBbmF0b2wsIDIwLiBBdWcgMjAwNCwgMTA6MzA6MzEpOgp+IyEgcm49Tm9ubmUgcnQ9MTA5Mjk4NzYwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKSmVtYW5kLCBkZXIgYXVmIEtyaXRpayBtaXQgIkhhbHQgRGljaCByYXVzLCBEdSBiaXN0IFNwaWVsZXIuIiByZWFnaWVydCwKc29sbHRlIHNpY2ggaW4gUGhyYXNlbiBtaXQgZGVtIFdvcnQgImtvbnN0cnVrdGl2IiBldHdhcyB6dXJ1ZWNraGFsdGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBNZWdhaGFsPyAoQmFtYnVsa28sIDIwLiBBdWcgMjAwNCwgMTA6MzE6MTUpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTI5OTA2MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkFoaGgsIGVzIGdlaHQgbG9zLiBXbyBpc3QgbWVpbiBQb3Bjb3JuPwoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBNZWdhaGFsPyAoQW5hdG9sLCAyMC4gQXVnIDIwMDQsIDEwOjMyOjE3KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEwOTI5OTA2NzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCldpZSBpY2ggc2Nob24gc2FndGUsIE5vbm5lIGlzdCBrZWluIEdlZ25lci4gRGEgd2FyIHNlbGJzdCBQYWRyZWljCnNwYW5uZW5kZXIuIFVuZCBzY2hvbiBlciBoYXQgbWVociBBbmdyaWZmc2ZsYWVjaGUgZ2Vib3RlbiBhbHMgZGVyCkp1cGl0ZXIgYXVzIDFtIEVudGZlcm51bmcuLi4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTWVnYWhhbD8gKE5vbm5lLCAyMC4gQXVnIDIwMDQsIDEwOjMyOjUzKToKfiMhIHJuPUFuYXRvbCBydD0xMDkyOTkwNjMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpPaCwgd3VlcmRlIG1pY2ggaW50ZXJlc3NpZXJlbiwgd28gaWNoIGRhcyBpbiBlaW5lbSBlcm5zdGhhZnRlbiBLb250ZXh0CmdlYWV1c3NlcnQgaGFiZW4gc29sbC4gQWJlciBkZXIgTG9nLUF1c3p1ZyB3aXJkIHNpY2hlciBuaWNodCBsYW5nZSBhdWYgc2ljaAp3YXJ0ZW4gbGFzc2VuLgoKTm9ubmUsIGltIE1hY2h0cmF1c2NoIHVuZCBhdWYgU3BpZWxlciBwZmVpZmVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBNZWdhaGFsPyAoTm9ubmUsIDIwLiBBdWcgMjAwNCwgMTA6MzU6NDcpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTI5OTA3Mzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzClZpZWxsZWljaHQgbGllZ3QgZXMgZGFyYW4sIGRhc3MgaWNoIGtlaW4gR2VnbmVyIHNlaW4gd2lsbD8gV2VubiBpY2ggTGFuZ2V3ZWlsZQpoYWJlLCBhbnR3b3J0ZSBpY2ggbWFsIGhpZXIgdW5kIGRhLCBhYmVyIGltIGdyb3NzZW4gdW5kIGdhbnplbiBmaW5kZSBpY2ggZGljaApraW5kaXNjaCwgcGVpbmxpY2ggdW5kIHNvemlhbCB2b2VsbGlnIGlua29tcGVudGVudC4gQWJlciBkYSBoYWJlbiB3aXIKdm9uZWluYW5kZXIgb2huZWhpbiBkaWUgZ2xlaWNoZSBNZWludW5nLiAKCk5vbm5lLCBrbGlua3Qgc2ljaCBhdXMgWmVpdG1hbmdlbCB3aWVkZXIgYXVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IE1lZ2FoYWw/IChEZWVwYmx1ZSwgMjAuIEF1ZyAyMDA0LCAxMDozNjoxNyk6Cn4jISBybj1CYW1idWxrbyBydD0xMDkyOTkwNTYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpCbGFzcGhlbWllISBXZXJmdCBpaG4gdWViZXIgZGVuIFJhbmRmYWxsIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE1lZ2FoYWw/IChBbmF0b2wsIDIwLiBBdWcgMjAwNCwgMTA6NDA6MjMpOgp+IyEgcm49Tm9ubmUgcnQ9MTA5Mjk5MDk0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKTmVobWVuIHdpciAtIGFiZ2VzZWhlbiB2b24gZGVyIElua29tcGV0ZW56IC0gZGllIGxldHp0ZSAKTWVpbnVuZ3N2ZXJzY2hpZWRlbmhlaXQgYWxzIEJlaXNwaWVsLiBXZWxjaGUgc2FjaGxpY2hlbiB1bmQKaW5oYWx0bGljaCBrb3JyZWt0ZSBBcmd1bWVudGUgenVtIFRoZW1hICJXaWVzbyB3aXIgZGVuIFR5cApLYW1wZnN0YWIgYnJhdWNodGVuIiB3dXJkZW4gZGEgdm9uIERpciBnZWFldXNzZXJ0PwoKIkVzIGlzdCBoYWx0IEFuYXRvbC4uLiIgLSBpbmhhbHRsaWNoIGtvcnJla3QsIGFiZXIgYWQgaG9taW5lbS4KIkFuYXRvbCBpc3QgZWluIGV3aWcgZ2VzdHJpZ2VyLi4uIiAtIGFkIGhvbWluZW0gdW5kIHp1bWluZGVzdCBmcmFnd3VlcmRpZwoKRGllIE1hdGVyaWUga2FtIHZvbiBNdWFkaWIuIE9kZXIgZ2VoZSBpY2ggZGEgZGVybWFzc2VuIGZlaGw/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IE1lZ2FoYWw/IChaemFyenp0LCAyMC4gQXVnIDIwMDQsIDEwOjQxOjQ1KToKfiMhIHJuPUFuYXRvbCBydD0xMDkyOTkxMjIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpLb2VubnRlc3QgRHUgYml0dGUgZGllIGdlc2FtdGUgTWVpbnVuZ3N2ZXJzY2hpZWRlbmhlaXQgcG9zdGVuPwpNaXQgZGllc2VuIGF1cyBkZW0gWnVzYW1tZW5oYW5nIGdlcmlzc2VuZW4gWml0YXRlbiBrYW5uIGRvY2gga2VpbmVyIHdhcwphbmZhbmdlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBNZWdhaGFsPyAoTm9ubmUsIDIwLiBBdWcgMjAwNCwgMTA6NDg6MTUpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTI5OTEyMjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCk9oLCBkYXMgd2FyIGVpbmUgZXJuc3RoYWZ0ZSBEaXNrdXNzaW9uPyBJY2ggaGFiZSBlaWdlbnRsaWNoIGRpZSBtZWlzdGUgWmVpdApsYWNoZW5kIHVudGVybSBTdHVobCB2ZXJicmFjaHQuIFNvcnJ5LCBkYSBoYWJlIGljaCB3YXMgZmFsc2NoIHZlcnN0YW5kZW4uIEFiZXIKenVtIFRoZW1hOiBJY2ggaGF0dGUga2VpbmUgRWlud2FlbmRlIGdlZ2VuIGRlbiBLYW1wZnN0YWIsIHdlaWwgZXIgdm9uCnZlcnNjaGllZGVuZW4gTGV1dGVuIGdld3VlbnNjaHQgd2FyIHVuZCBpY2gga2VpbmUgc2lubnZvbGxlbiBBcmd1bWVudGUgZGFnZWdlbgpnZWhvZXJ0IGhhYmUuIEljaCBtb2VjaHRlLCBkYXNzIHNvd29obCBNYWdpZXIgYWxzIGF1Y2ggU3BpZWxlciBoaWVyIFNwYXNzCmhhYmVuLiBXZW5uIGplbWFuZCBlaW5lbiBXdW5zY2ggYWV1c3NlcnQgdW5kIGljaCBuaWNodHMgZmluZGUsIHdhcyBkYWdlZ2VuCnNwcmljaHQgdW5kIGFuZGVyZSwgbWl0IGRlbmVuIGljaCBSdWVja3NwcmFjaGUgaGFsdGUgYXVjaCBuaWNodCwgd2llc28gc29sbHRlCmljaCBkYW5uIGFuZGVyZW4gYmVpIGRlciBVbXNldHp1bmcgaW0gV2VnZSBzdGVoZW4/IEVzIGdpYnQgZnVlciBtaWNoIGtlaW4KJ1dpZXNvIHdpbGxzdCBkdSBkYXM/Jywgd2VubiBlcyBrZWluZSBHcnVlbmRlIGRhZ2VnZW4gZ2lidC4gRXJzdCB3ZW5uIGVzCnNvbGNoZSBBcmd1bWVudGUgZ2lidCwgbXVzcyBtYW4gcHJvIHVuZCBjb250cmEgYWJ3YWVnZW4uIFNvIHNlaGUgaWNoIG1laW5lbgpKb2IuIFdlbSBkYXMgbmljaHQgcGFzc3QsIGthbm4gc2ljaCBiZWkgWm9vayBhdXNoZXVsZW4sIGRhc3MgZXIgbWljaCB3aWVkZXIKcmF1c3NjaG1laXNzdCBvZGVyIG11c3MgZGFtaXQgbGViZW4uIE9kZXIgZXIgYnJpbmd0IHNpY2ggdW0uLi4gc2VpbmUgU2FjaGUsCm5pY2h0IG1laW5lLgoKTm9ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogTWVnYWhhbD8gKEFuYXRvbCwgMjAuIEF1ZyAyMDA0LCAxMDo0ODoxNik6Cn4jISBybj1aemFyenp0IHJ0PTEwOTI5OTEzMDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkRpZSAodm9uIG1pciBhbHMgVHJhZ29lZGllIGVpbmdlb3JkbmV0ZSkgU3RvcnkgdW0gZGVuIG5ldSBlaW5nZWZ1ZWhydGVuCldhZmZlbnR5cCAiS2FtcGZzdGFiIi4gSWNoIGJlaGF1cHRldGUgLSB1bmQgYmVoYXVwdGUgbm9jaCAtIGRhc3MgZGllc2VyClR5cCBuaWNodCBub3R3ZW5kaWcgd2FyIHVuZCBrZWluZSB3aWxsa29tbWVuZSBWaWVsZmFsdCwgc29uZGVybiB2aWVsbWVocgp1bmVyd3VlbnNjaHRlIEtvbXBsZXhpdGFldCBiZWRldXRldC4KCk1laW5lIEFyZ3VtZW50YXRpb24gaXN0LCBkYXNzIEthbXBmc3RhZWJlIHVuZCBTcGVlcmUgKGRpZSBzaWNoIGxhdXQgCkRlZmluaXRpb24gZWluZXMgS2FtcGZzdGFiYmVmdWVyd29ydGVycyB2b24gZGVuIFN0YWViZW4gZHVyY2ggZWluIApzcGl0emVzIEVuZGUgdW50ZXJzY2hlaWRlbikgc2VociBhZWhubGljaCBnZWZ1ZWhydCB3ZXJkZW4uIEFlaG5saWNoZXIKYWxzIHouQi4gTWVzc2VyIHVuZCBEb2xjaGUgb2RlciBnYXIgU3BlZXJlL1N0YWViZSB1bmQgTGFuemVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBNZWdhaGFsPyAoQW5hdG9sLCAyMC4gQXVnIDIwMDQsIDEwOjUyOjQwKToKfiMhIHJuPU5vbm5lIHJ0PTEwOTI5OTE2OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCk1laW5lciBFcmZhaHJ1bmcgbmFjaCBpc3QgZGFzIEF1c2dhbmdzc2NvcmluZyBlaW5lciBBZW5kZXJ1bmcgcGVyIHNlCm5lZ2F0aXYsIGFsbGVpbiBzY2hvbiB3ZWlsIHNpZSBlaW5lIEFlbmRlcnVuZyBpc3QuIFdlbm4gc2llIGtlaW5lIAprbGFyZW4gVm9ydGVpbGUgYnJpbmd0LCBsYWVzc3QgbWFuIGVzIGJlc3Nlci4gSW5zb2Zlcm4gaXN0IEVJTiAKR2VnZW5hcmd1bWVudCBpbW1lciB2b3JoYW5kZW4sIGdlZ2VuIGRhcyBtYW4gZGllIFZvcnp1ZWdlIGFid2FlZ2VuCm11c3MuCgpTb3ZpZWwgenVyIFNhY2hsaWNoa2VpdC4gRGFzIHVuc2FjaGxpY2hlIEtvbW1lbnRhciBkaWVzZXMgQXJ0aWtlbHM6CkR1IHNhZ3N0LCBEdSBoYWJlc3QgZGllIERpc2t1c3Npb24gbmljaHQgZXJuc3QgZ2Vub21tZW4uIFVuZCBkYSAKd3VuZGVyc3QgRHUgRGljaCwgd2VubiBpY2ggRGljaCBhbHMgInVuZmFlaGlnIiBlaW5zdHVmZT8gOikKCkFuYXRvbCB3aXJkIGVzIHNlbHRlbiBzbyBlaW5mYWNoIGdlbWFjaHQKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogTWVnYWhhbD8gKE1vbnRhbnVzLCAyMC4gQXVnIDIwMDQsIDEwOjU0OjQ2KToKfiMhIHJuPUFuYXRvbCBydD0xMDkyOTkxOTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpTcGVlcmUgdW5kIExhbnplbiBzaW5kIHNvb29vIHRvbGxlIG5haGthbXBmd2FmZmVuIGZ1ZXIgRnVzc2dhZW5nZXIuCkVudHdlZGVyIGlociB3b2xsdCBSZWFsaXNtdXMuIERhbm4gbGFzc3QgZXVjaCB2b20gTWFnaWVyIGV1cmVzIFZlcnRyYXVlbnMgZGFzCkxjaWh0IGFuc2NoYWx0ZW4gdW5kIHdlcmZ0IGRhcyBnYW56ZSBTcGVlci0gdW5kIExhbnplbmtvbnplcHQgd2VnLiBPZGVyIGlocgp2ZXJ6ZWljaHRldCBhdWYgUmVhbGl0YWV0c25hZWhlIHVuZCBsYXNzdCBMZXV0ZSBtaXQgU3BlZXJlbiBoZXJ1bXBpZWtzZW4uIERhbm4KaGV1bHQgaGllciBhYmVyIG5pY2h0IHNvIHJ1bQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IE1lZ2FoYWw/IChBbmF0b2wsIDIwLiBBdWcgMjAwNCwgMTA6NTg6NDYpOgp+IyEgcm49TW9udGFudXMgcnQ9MTA5Mjk5MjA4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKQ29tbW9uIG1pc2NvbmNlcHRpb24uIFNwZWVyZSBzaW5kIGtlaW5lIExhbnplbi4gRWluIFNwZWVyIGlzdCBlaW5lCnZvcnp1ZWdsaWNoZSBOYWhrYW1wZndhZmZlIHVuZCB3aXJkIGdyb2Vzc3RlbnRlaWxzIHJlY2h0IGFlaG5saWNoCmdlaGFuZGhhYnQgd2llIGVpbiBLYW1wZnN0b2NrLiBEZXIgU3Rvc3MgbWl0IGRlbSBFbmRlIGRlcyBTcGVlcnMgCmlzdCBoYWx0IG5pY2h0IDEwMCUgZWluIHN0dW1wZmVyIFN0b3NzLCBzb25kZXJuIHppZW1saWNoIG9mdCAoamUKbmFjaGRlbSwgd2VsY2hlcyBFbmRlIHZlcndlbmRldCB3aXJkKSBlaW5lIHppZW1saWNoIHNwaXR6ZSBTYWNoZS4KCldvYmVpIGVzIG5hdHVlcmxpY2ggU3BlZXIgdW5kIFNwZWVyIGdpYnQuIEVpbiBkdWVubmVyIFd1cmZzcGVlcgpoYWVsdCBuaWNodHMgYXVzLiBBYmVyIHp3aXNjaGVuIFNwZWVyIHVuZCBTcGVlciB6dSBkaWZmZXJlbnppZXJlbgpoYXR0ZW4gZGllIEVyem1hZ2llciBuaWUgdm9yLiBOaWVtYW5kIGhhdCBkYXZvbiBnZXJlZGV0LCBXVF9TVEFGRgphdWYgbmFoa2FtcGZ0YXVnbGljaGUgU3BlZXJlIGFuenV3ZW5kZW4uIFVuZCBXVF9TUEVBUiBudXIgYXVmIGRpZSwKZGllIGRhcyBuaWNodCBzaW5kLiA7KQoKQWNoIGphLi4uLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IE1lZ2FoYWw/IChOb25uZSwgMjAuIEF1ZyAyMDA0LCAxMTowMToyMCk6Cn4jISBybj1BbmF0b2wgcnQ9MTA5Mjk5MTk2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKT2gsIHdlbm4gaWNoIGVpbmUgRGlza3Vzc2lvbiB1ZWJlciBmcnVmZSBuaWNodCBlcm5zdCBuZWhtZSwgYmluIGljaCB1bmZhZWhpZz8KU2NodWxkaWcgaW4gYWxsZW4gUHVua3Rlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBNZWdhaGFsPyAoWnphcnp6dCwgMjAuIEF1ZyAyMDA0LCAxMTowMjozNCk6Cn4jISBybj1Ob25uZSBydD0xMDkyOTkyNDgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpTaWVodCBhdXMsIGFscyB3dWVyZGUgZXMgZG9jaCBlcm5zdC4gSGVyciBHcmltbWJvcm4sIGJpdHRlIGluIGRpZSByaWNodGlnZQpSdWJyaWsgdmVybGVnZW4hCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IE1lZ2FoYWw/IChOb25uZSwgMjAuIEF1ZyAyMDA0LCAxMTowNzoyOCk6Cn4jISBybj1aemFyenp0IHJ0PTEwOTI5OTI1NTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCldhaHJzY2hlaW5saWNoIHdpcmQgbWlyIGJhbGQgYXVjaCB2b3JnZXdvcmRlbiwgZWluZSBEaXNrdXNzaW9uIGluIHNjaG1hcnJuCm5pY2h0IGVybnN0IGdlbm9tbWVuIHp1IGhhYmVuLiBBYmVyIGRhbWl0IGthbm4gaWNoIGxlYmVuLCBhdWNoIG1pdCBkZW4KQW5mZWluZHVuZ2VuIHZvbiBBbmF0b2wuIE9obmUgU2VsYnN0dmVydHJhdWVuIGJyYXVjaHQgbWFuIHdhcyB6dW0gZHJhdWYKcnVtaGFja2VuLCBzb25zdCBrb21tdCBtYW4gc2ljaCBzbyBrbGVpbiB2b3IuIEFiZXIgZGFzIGdvZW5uZSBpY2ggaWhtLCBpY2gKd2lsbCBqYSBuaWNodCwgZGFzcyBlciB3ZWludC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBNZWdhaGFsPyAoQW5hdG9sLCAyMC4gQXVnIDIwMDQsIDExOjExOjQ0KToKfiMhIHJuPU5vbm5lIHJ0PTEwOTI5OTI4NDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCldlbm4gbWFuIGplZGUgRGlza3Vzc2lvbiBtaXQgV2FybnRhZmVsbiAiVm9yc2ljaHQhIE11c3MgZXJuc3QgZ2Vub21tZW4Kd2VyZGVuISIgYXVzc3RhdHRlbiBtdXNzLCBkYW1pdCBEdSBwb2RpdW1zdW5hYmhhZW5naWcgZW50c2NoZWlkZW4ga2FubnN0LApvYiBkYXMgZXJuc3R6dW5laG1lbmRlIEFyZ3VtZW50ZSBvZGVyIGVpbmUgbG9zZSBBbmVpbmFuZGVycmVpaHVuZyB2b24KQmVzY2hpbXBmdW5nZW4gc2luZCwgd2lyc3QgRHUgRGlyIEtyaXRpayBhbiBEZWluZXIgU296aWFsa29tcGV0ZW56IHdvaGwKb2RlciB1ZWJlbCBnZWZhbGxlbiBsYXNzZW4gbXVlc3Nlbi4KCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IE1lZ2FoYWw/IChBbmF0b2wsIDIwLiBBdWcgMjAwNCwgMTE6MTM6MTQpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTI5OTMxMDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCk5hY2h0cmFnOiBXYXMgZ2VuYXUgd2FyIGpldHp0IERlaW5lIEFyZ3VtZW50YXRpb24gcHJvIEthbXBmc3RhYj8KIk1pciBpc3QgbmljaHRzIGRhZ2VnZW4gZWluZ2VmYWxsZW4uIj8gT2RlciBudXIgIkVzIGhhdCBuaWVtYW5kIHdhcwpkYWdlZ2VuIGdlc2FndCwgYWxzbyBiaW4gaWNoIGF1Y2ggbmljaHQgZGFnZWdlbi4iPwoKQW5hdG9sIGthbm4gc293YXMgYXVjaCBpbiAic2NobWFycm4iIGVyb2VydGVybi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBNZWdhaGFsPyAoV2lsbG93LCAyMC4gQXVnIDIwMDQsIDExOjE0OjEyKToKfiMhIHJuPUFuYXRvbCBydD0xMDkyOTkzMTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpobW1tLi4uIGhhdCBub2NoIGplbWFuZCBwb3Bjb3JuPz8/CmRhcyB3ZWlkZXJsIGhhdCBodW5nZXIuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBNZWdhaGFsPyAoTm9ubmUsIDIwLiBBdWcgMjAwNCwgMTE6MjA6MDUpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTI5OTMxOTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkR1IHdpbGxzdCBlcyBnZW5hdSB3aXNzZW4/IE9rYXk6IEljaCBiaW4gbWl0dGVuIGluIGRlciBLYW1wZnN0YWItRGlza3Vzc2lvbgpFcnptYWdpZXIgZ2V3b3JkZW4uIEljaCBoYWJlIG1pciBkaWUgQXJndW1lbnRlIGltIGVudHNwcmVjaGVuZGVuIFRocmVhZApkdXJjaGdlbGVzZW4gdW5kIHp1bSBVcnRlaWwgZ2Vrb21tZW4sIGRhc3MgZGVyIEthbXBmc3RhYiBuaWNodCBzY2hhZGV0LiBBbHMKTmV1LUVyemllIHdhZXJlIGljaCBhdWNoIG5pZW1hbHMgYXVmIGRpZSBJZGVlIGdla29tbWVuLCBtaWNoIGdlZ2VuIGFsbGUKYW5kZXJlbiBFcnppZXMgKyBHb3R0IHp1IHN0ZWxsZW4sIG51ciB3ZWlsIGRpZSBLb21wbGV4aXRhZXQgZGVzIE1HcyBlaW5lCldpbnppZ2tlaXQgZXJob2VodCB3aXJkLCB1bmQgc29uc3QgZ2FiIGVzIGtlaW5lIEFyZ3VtZW50ZSBnZWdlbiBkZW4gS2FtcGZzdGFiLgpBbGxlcywgd2FzIGljaCBzb25zdCBub2NoIHp1bSBUaGVtYSBLYW1wZnN0YWIgenUgc2FnZW4gaGFiZSwgaXN0IG5pY2h0IHVudGVyCmRlciBSdWJyaWsgJ2VybnN0Z2VtZWludCcgZWluenVvcmRuZW4uIERlaW4gRGlza3Vzc2lvbnNzdGlsIGlzdCBwcm92b2thdGl2LApkYW5uIGJlc2Nod2VyZSBkaWNoIG5pY2h0LCB3ZW5uIGFuZGVyZSBMZXV0ZSBlbnRzcHJlY2hlbmQgcmVhZ2llcmVuIHVuZCBzaWNoCm5pY2h0IHByb3ZvemllcmVuIGxhc3Nlbiwgc29uZGVybiBlcyBsaWViZXIgaW5zIExhZWNoZXJsaWNoZSB6aWVoZW4uCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBNZWdhaGFsPyAoR2xvaW5zb24sIDIwLiBBdWcgMjAwNCwgMTE6MjA6MzUpOgp+IyEgcm49Tm9ubmUgcnQ9MTA5Mjk5MzYwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKQnVoLCBkdSBzY2hlaWJzdCBkaWUgU2NodWxkIGF1ZiBhbmRlcmUuIFNjaGlpaWlpZWJ1bmchCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IE1lZ2FoYWw/IChBbmF0b2wsIDIwLiBBdWcgMjAwNCwgMTE6MjU6MDApOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA5Mjk5MzYzNSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKQWxzbyB3ZWlsIGFsbGUgYW5kZXJlbiBBIHNhZ2VuLCBzYWdzdCBEdSBhdWNoIEEuIFdvenUgaGFzdCBEdSAKZWlnZW50bGljaCBlaW5lbiBlaWdlbmVuIEtvcGY/IERlciBIYWFyZSB3ZWdlbj8gSGFsbG8/CgpVbmQgd2VubiBmdWVyIERpY2ggdGF0c2FlY2hsaWNoIGRhcyAiSW5zIExhZWNoZXJsaWNoZSB6aWVoZW4iCmRpZSBuYWhlbGllZ2VuZHN0ZSBTdHJhdGVnaWUgZ2VnZW4gZWluZW4gcHJvdm9rYXRpdmVuIERpc2t1c3Npb25zc3RpbAppc3QsIGRhbm4gbXVzc3QgRHUgRGlyIGVybmV1dCBnZWZhbGxlbiBsYXNzZW4sIGRhc3MgRGVpbmUgClNvemlhbGtvbXBldGVueiBhbHMgImRldXRsaWNoIHZlcmJlc3NlcnVuZ3NmYWVoaWciIGRhcmdlc3RlbGx0IHdpcmQuCgpEYXZvbiBhYmdlc2VoZW4gaGFsdGUgaWNoIGRpZSBGb3JtdWxpZXJ1bmcgImVpbmUgV2luemlna2VpdCIgYnpnbC4KZGVyIEtvbXBsZXhpdGFldHNlcmhvZWh1bmcgZHVyY2ggZWluZW4gd2VpdGVyZW4gV2FmZmVudHlwIGRhbm4gZG9jaApmdWVyLi4uIGV0d2FzIGdld2FndC4KCkFuYXRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IE1lZ2FoYWw/IChOb25uZSwgMjAuIEF1ZyAyMDA0LCAxMTozMTo1MCk6Cn4jISBybj1BbmF0b2wgcnQ9MTA5Mjk5MzkwMCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKU2NoYWRlLCBkYXNzIGR1IG5pY2h0IGxlc2VuIGthbm5zdC4gSWNoIGhhYmUgZG9jaCBzY2hvbiBnZXNhZ3QsIGRhc3MgaWNoIGRhbWl0Cmd1dCBsZWJlbiBrYW5uLCB3ZW5uIGR1IG1laW5lIFNvemlhbGtvbXBlbnRlbnogYW56d2VpZmVsc3QuIEF1c3NlcmRlbSBzY2hyaWViCmljaCBuaWNodCwgZGFzcyBpY2ggdHJvdHogZXJoZWJsaWNoZXIgWndlaWZlbCBtaWNoIGhhYmUgdW50ZXJidXR0ZXJuIGxhc3NlbiwKc29uZGVybiBkYXNzIGVzIGtlaW5lbiBHcnVuZCBnYWIsIG1pY2ggZ2VnZW4gYWxsZSB6dSBzdGVsbGVuLiBBYmVyIGljaCBrYW5uCm1pciBkZWluZSBUZWFtZmFlaGlna2VpdCBndXQgdm9yc3RlbGxlbiwgd2VubiBkdSBuZXUgaW4gZWluIFRlYW0ga29tbXN0LCB3aXJzdApkdSBzaWNoZXJsaWNoIGFsbGUgU3RydWt0dXJlbiB1bmQgRW50c2NoZWlkdW5nc2ZpbmR1bmdlbiBtaXQgZWluZW0gV2lzY2ggdm9tClRpc2NoIGZlZ2VuLCBkaWNoIGFscyBkZXIgbmV1ZSBDaGVmIGF1ZnNwaWVsZW4gdW5kIGFsbGUgYW5kZXJlbiBmdWVyCklua29tcGVudGVudCBlcnBsYWVyZW4uIERhbWl0IGZ1ZWhydCBtYW4gc2ljaCBpbW1lciBndXQgZWluLCBBbmF0b2wsIGRhYmVpCnNvbGx0ZXN0IGR1IGJsZWliZW4uCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBNZWdhaGFsPyAoQm9pbmcsIDIwLiBBdWcgMjAwNCwgMTE6NTE6MzMpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTI5OTM5MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkFuYXRvbCwgbWVya3N0IER1IGVpZ2VudGxpY2ggbmljaHQsIGRhc3MgRHUgRGljaCBpbW1lciBsYWVjaGVybGljaGVyCm1hY2hzdD8gRmluZGVzdCBEdSBuaWUgZWluIEVuZGU/CiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBNZWdhaGFsPyAoT2dvLCAyMC4gQXVnIDIwMDQsIDEyOjEzOjQ5KToKfiMhIHJuPUJvaW5nIHJ0PTEwOTI5OTU0OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCk9tbmlzIGFuaW1pIHZvbHVwdGFzLCBvbW5pc3F1ZSBhbGFjcml0YXMgaW4gZW8gc2l0YSBlc3QsIHF1b2QgcXVpcyBoYWJlYXQsCnF1aWJ1c2N1bSBjb25mZXJlbnMgc2UsIHBvc3NpdCBtYWduaWZpY2Ugc2VudGlyZSBkZSBzZWlwc28uCgp2b24gSG9iYmVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogTWVnYWhhbD8gKEFuYXRvbCwgMjAuIEF1ZyAyMDA0LCAxMjoxNzowMyk6Cn4jISBybj1PZ28gcnQ9MTA5Mjk5NjgyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKQml0dGUga2xhc3NpZml6aWVyZSBtZWluZSBSZWNodGhhYmVyZWkgbmljaHQgYWxzIEVpdGVsa2VpdC4gKm1hdWwqCgpHYWIgZXMgamV0enQgZWlnZW50bGljaCBBcmd1bWVudGUgRlVFUiBkZW4gS2FtcGZzdGFiPyBBdXNzZXIgZGFzcwoidmVyc2NoaWVkZW5lIExldXRlIiBpaG4gaGFiZW4gd29sbHRlbj8gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogTWVnYWhhbD8gKE5vbm5lLCAyMC4gQXVnIDIwMDQsIDEyOjE5OjExKToKfiMhIHJuPUFuYXRvbCBydD0xMDkyOTk3MDIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpHYWIgZXMgc2Nob24gQXJndW1lbnRlIEdFR0VOIGRlbiBLYW1wZnN0YWIsIGF1c3NlciBkYXMgZGFtaXQgZGllIEtvbXBsZXhpdGFldApkZXMgTUcgZGFzIGFybWUgYW5hdG9saXNjaGUgR2VoaXJuIHVlYmVyZm9yZGVydD8KCk5vbm5lLgoKUC5TOiBWb3JzaWNodCEgQmlzc2lnLCBzYXJrYXN0aXNjaCwgbmljaHQgZXJuc3QgenUgbmVobWVuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IE1lZ2FoYWw/IChCcmFuLCAyMC4gQXVnIDIwMDQsIDEyOjM0OjM4KToKfiMhIHJuPU5vbm5lIHJ0PTEwOTI5OTcxNTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkRhcyBIYXVwdGFyZ3VtZW50IGlzdCBkb2NoIHdvaGwsIGRhc3MgZXMgbnVuIGVpbmUgbmV1ZSBXYWZmZW5rbGFzc2UgZ2lidCwgZGllCndpZWRlciBnZXVlYnQgd2VyZGVuIG11c3MsIHdhcyBzbyB6aWVtbGljaCBkYXMgT2VkZXN0ZSBpc3QsIHdhcyBtYW4gaGllciBzbwptYWNoZW4ga2Fubi4gT2RlciBrZW5uc3QgZHUgamVtYW5kLCBkZW0gZGFzIFNwYXNzIG1hY2h0PyBVbmQgaWNoIHNlaGUgZWJlbgphdWNoIGtlaW5lIFZvcnRlaWxlIGJlaSBkZXIgZ2FuemVuIFNhY2hlLiBTYWcgaWNoIG51ciwgd2VpbCBkdSBnZWZyYWd0IGhhc3QsCm5pY2h0IHVtIG1pY2ggYXVzenVqYW1tZXJuLiBTb3dhcyB3dWVyZGUgaWNoIG5pZSB0dW4uCgpCcmFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogTWVnYWhhbD8gKE9nbywgMjAuIEF1ZyAyMDA0LCAxMjozODoyMik6Cn4jISBybj1CcmFuIHJ0PTEwOTI5OTgwNzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCldhZmZlbnNraWxscyBzaW5kIGtlaW4gYnJhdWNoYmFyZXMgQXJndW1lbnQgZGFnZWdlbiwgZGllIGhhYmVuIG1pdCBkZXIKV2FmZmVua2xhc3NlIGFuc2ljaCBnYXIgbmljaHRzIHp1IHR1bi4gV1RfTUFHSUMgdW5kIFdUX01JU0MgKFdhZmZlbnR5cCBNYWdpc2NoCnVuZCBXYWZmZW50eXAgU29uc3RpZ2VzKSBoYWJlbiBtZWluZXMgV2lzc2VucyBhdWNoIGtlaW5lbiBTa2lsbC4gRGllClp3YW5nc2xhZXVmaWdrZWl0IGRlciBTY2hhZmZ1bmcgZWluZXMgU2tpbGxzIG5hY2ggZGVyIEVpbmZ1ZWhydW5nIGVpbmVzIG5ldWVuCldhZmZlbnR5cHVzIGlzdCBuaWNodCBnZWdlYmVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBNZWdhaGFsPyAoSHVtbmksIDIwLiBBdWcgMjAwNCwgMTI6NDA6MDYpOgp+IyEgcm49T2dvIHJ0PTEwOTI5OTgzMDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCk9laC4KCldhZmZlbnNraWxscyB1bmQgV2FmZmVua2xhc3NlbiBoYWVuZ2VuIHNlaHIgd29obCB6dXNzYW1tZW4uIEVpbiBLYW1wZnN0YWIsIGRlcgp2b3JoZXIgYWxzIEtldWxlIGdlZnVlaHJ0IHd1cmRlLCBoYXQgbnVuIGRpZSBLbGFzc2UgS2FtcGZzdGFiLCB1bmQgZGFtaXQKZnVua3Rpb25pZXJ0IGRlciBhbHRlIFNraWxsIG5pY2h0IG1laHIuCgpEZXIgUmVzdCBkZWluZXIgQXVzc2FnZSBpc3QgYWJlciByaWNodGlnLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBNZWdhaGFsPyAoQmFtYnVsa28sIDIwLiBBdWcgMjAwNCwgMTI6NDM6NDApOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTI5OTcwMjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkluIGRlbSBQdW5rdCBtdXNzIGljaCBBbmF0b2wgcmVjaHQgZ2ViZW4uIFVtIGVpbmUgTmV1ZXJ1bmcgZWluenVmdWVocmVuIHNvbGxlCmVzIEdydWVkZW4gZGFmdWVyIGdlYmVuLiBVbmQgbmljaHQgbnVyIGtlaW5lIEdydWVuZGUgZGFnZWdlbi4gOi0pCgpBbGxlcmRpbmdzIHZlcnN0ZWhlIGljaCBuaWNodCwgd28gaGllciBlaW5lICdUcmFnb2VkaWUnIGlzdC4gRGFzIGdhbnplIHNjaGVpbnQKbWlyIHJlY2h0IHVud2ljaHRpZyB6dSBzZWluLCB3aWUgZGVyIFNhY2sgUmVpcyBpbiBDaGluYSwgb2RlciBEdW5rZWxlbGZlbiwgZGllCmR1cmNoIGRhcyBNRyBsYXVmZW4uLi4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogTWVnYWhhbD8gKE5vbm5lLCAyMC4gQXVnIDIwMDQsIDEyOjQ3OjUyKToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEwOTI5OTg2MjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkRpZSBHcnVlbmRlIGRhZnVlciBzaW5kIGdhbnogZWluZmFjaDogTWFnaWVyIHNvbGxlbiBpaHJlIENyZWF0aXZpdGFldCBzb3dlaXQKbW9lZ2xpY2ggYXVzbGViZW4ga29lbm5lbi4gRXMgd3VyZGVuIGVpbmlnZSBBZW5kZXJ1bmdlbiBhbiBkZXIgTXVkbGliIGdlbWFjaHQsCmRhbWl0IGRpZSBLYWVtcGZlciBzbyB1bXp1c2V0emVuIHdhcmVuLiBIYWV0dGUgbWFuIHNhZ2VuIHNvbGw6IE5vZSwgZGEgZ2lidHMKa2VpbmVuIEdydW5kIGZ1ZXIsIG1hY2ggbnVyIGRhcywgd2FzIG1pdCBkZW0gR2VnZWJlbmVuIG1vZWdsaWNoIGlzdD8gSWNoCmRlbmtlLCBzb2xhbmdlIG5pZW1hbmQgZWluZ2VzY2hyYWVua3Qgd2lyZCwgc29sbHRlIG1hbiBkZXIgQ3JlYXRpdml0YWV0IGRlbgpWb3J6dWcgZ2ViZW4uIFVuZCB6dSBkZW4gU2tpbGxzOiBOaWJlbCBoYWV0dGUgYXVjaCBpbiBkZXIgVGFuamlhbi1HaWxkZSBkZW4KU3RhYnNraWxsIG1pdCBkZW4gU3BlZXJlbiB6dXNhbW1lbmxlZ2VuIGtvZW5uZW4sIGRpZSBNZWxkdW5nZW4gZGVyIEdpbGRlCmFucGFzc2VuIHVuZCBzY2hvbiBoYWV0dGUgbmllbWFuZCBiZWkgZGVuIFRhbmppYW4gdm9uIGRlciBFeGlzdGVueiB2b24KS2FtcGZzdGFlYmVuIGV0d2FzIGdlbWVya3QuIEVyIGhhdCBhbmRlcnMgZW50c2NoaWVkZW4sIGRhcyBpc3QgYWJlciBuaWNodApTY2h1bGQgZGVyIG5ldWVuIFdhZmZlbmtsYXNzZS4KCk5vbm5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IE1lZ2FoYWw/IChQYWRyZWljLCAyMC4gQXVnIDIwMDQsIDEyOjU1OjMxKToKfiMhIHJuPU5vbm5lIHJ0PTEwOTI5OTg4NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkRlciBHcnVuZCBmdWVyIGVpbmVuIEthbXBmc3RhYndhZmZlbnR5cCBpc3QgZGVyc2VsYmUgd2llIGZ1ZXIgZWluZW4gU2Nod2VydApvZGVyIHNvbnN0d2llIFR5cC4gR2luZ2UgZXMgbmFjaCBtaXIsIGdhZWJlIGVzIG1pbmRlc3RlbnMgYXVjaCBub2NoCktyaWVnc3dhZmZlbiAoTGFuemVuICYgSGVsbGViYXJkZW4pIHVuZCBLZXR0ZW53YWZmZW4gKHouYi4gTW9yZ2Vuc3Rlcm4pLgpOYXR1ZXJsaWNoIGthZW1lIG1hbiBhdWNoIG1pdCBlaW5lciBlaW56aWdlbiBLYXRlZ29yaWUgYXVzLCBhbGxlcyB3YWVyZQplaW5mYWNoICJXYWZmZSIgdW5kIGFsbGUgR2lsZGVuIGhhZXR0ZW4gZ2VuYXUgZWluZW4gV2FmZmVuc2tpbGwpLiBBYmVyIHdhcnVtPwpFaWdlbnRsaWNoIGlzdCBlcyBkb2NoIHZpZWwgaW50ZXJlc3NhbnRlciB3ZW5uIHNpY2ggZGFzIGFsbGVzIGV0d2FzIG1laHIKYXVmdGVpbHQgdW5kIHZpZWxsZWljaHQgYXVjaCBuaWNodCBqZWRlIEdpbGRlIG1laW50IGZ1ZXIgamVkZW4gV2FmZmVudHlwIGVpbmVuCnNraWxsIGhhYmVuIHp1IG11ZXNzZW4gLSBvZGVyIHp1bWluZGVzdCBTcGllbGVyIG5pY2h0IHp1IHp3aW5nZW4gamVkZW4gU2tpbGwKenUgbGVybmVuLgpXZW5uIERpY2ggRGVpbmUgR2lsZGUgbmljaHQgendpbmd0IGplZGVuIFdhZmZlbnNraWxsIHp1IHRyYWluaWVyZW4sIHNvbmRlcm4Kdm9uIG1pciBhdXMgbnVyIDgwJSBkZXIgU2tpbGxzIG9kZXIgc28sIGJyaW5nZW4genVzYWV0emxpY2hlIFdhZmZlbmtsYXNzZW4KKHNvbGFuZyBlcyBoYWxid2VncyB1ZWJlcnNjaGF1YmFyIGJsZWlidCkgZGVtIFNwaWVsIGluIG1laW5lbiBBdWdlbiBudXIgbmV1ZW4KU2Nod3VuZy4gV2FzIGljaCBlbnRzZXR6bGljaCBmaW5kZSwgc2luZCBXYWZmZW4gZGllIGZ1ZXIgamVkZW4gU3BpZWxlciBnbGVpY2gKZ3V0IHNpbmQuIEFsc28gZGllIEV4aXN0ZW56IGVpbmdlciBzb2dlbmFubnRlbiAiYmVzdGVuIFdhZmZlIiB1bmFiaGFlbmdpZyB2b24KR2lsZGUsIFJhc3NlIHVuZC9vZGVyIGRlciBqZXdlaWxpZ2VuIFNpdHVhdGlvbi4gWnVtIFRlaWwgaGF0IGVzIHNvd2FzIGltbWVyCndpZWRlciBtYWwgZ2VnZWJlbiwgZWluZSBicmVpdGVyZSBBdWZmYWVjaGVydW5nIGluIFdhZmZlbnR5cGVuIChzb2Zlcm4gbWFuCmRpZXMgaW4gR2lsZGVuIHVuZCBSYXNzZW4gYXVjaCBub2NoIHZlcndlbmRldCkga2FubiBlaW5lIGVjaHRlIEJlcmVpY2hlcnVuZwpzZWluLgpEYXMgaXN0IGRlciBHcnVuZCB3ZXNoYWxiIF9pY2hfIG5ldWUgV2FmZmVudHlwZW4gYmVncnVlc3NlLCBhYmVyIG5laW4gaWNoCmdlaG9lcmUgbmljaHQgenUgZGVuZW4sIGRpZSBzaWUgdW5iZWRpbmd0IGhhYmVuIHdvbGx0ZW4uCkluIG1laW5lbiBBdWdlbiB3YWVyZSBlcyBhdWNoIHNpbm52b2xsZXJlIHNpY2ggZGEgdWViZXIgZGFzIFdhZmZlbmtvbnplcHQgYWxzCmdhbnplcyBtYWwgR2VkYW5rZW4genUgbWFjaGVuIHVuZCBHaWxkZW4gJiBSYXNzZW4gZGFubiBnZ2YuIGF1Y2ggZHJhc3Rpc2NoCmFuenVwYXNzZW4uCgpQYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogTWVnYWhhbD8gKE11YWRpYiwgMjAuIEF1ZyAyMDA0LCAxMjo1NzozNSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA5Mjk5NzAyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKamEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBNZWdhaGFsPyAoQW5hdG9sLCAyMC4gQXVnIDIwMDQsIDEzOjEwOjIxKToKfiMhIHJuPVBhZHJlaWMgcnQ9MTA5Mjk5OTMzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKRGFzIGlzdCBhbSBQdW5rdCB2b3JiZWksIFBhZHJlaWMuIEVzIGdlaHQgbmljaHQgdW0gZWluIG5ldWVzIFNldAphbiBXYWZmZW5rbGFzc2VuLCBzb25kZXJuIHVtIGVpbmUgZWluemlnZS4gRGllIGRhcyBHZXNhbXRiaWxkIG5pY2h0Cm5pY2h0IGV0d2EgYWJydW5kZW4sIHNvIHdpZSBlcyBEZWluIEdlc2FtdHBha2V0IGluIGVpbmVyIGVudHNwcmVjaGVuZAphdXNnZWFyYmVpdGV0ZW4gVmVyc2lvbiB2aWVsbGVpY2h0IHR1biB3dWVyZGUsIHNvbmRlcm4gemllbWxpY2hlCkthbnRlbiBpbSBLb256ZXB0IGhlcmF1c2JpbGRlbiAoS2V0dGVud2FmZmVuIChXVF9DSEFJTikgc29sbHRlIGVzCnVlYnJpZ2VucyBzY2hvbiBnZWJlbi4gOikpLgoKRWluZSBEaWZmZXJlbnppZXJ1bmcgendpc2NoZW4gS2V1bGUgdW5kIEthbXBmc3RhYiBzb2xsdGUgZ2VnZWJlbgpzZWluLiBSaWNodGlnLCBOb25uZS4gQnp3LiBNdWFkaWIuIE51ciB3YXIgbWlyIG5pZSB3aXJrbGljaCBrbGFyLCAKZGFzcyBlcyBkaWUgTm90d2VuZGlna2VpdCBnZWdlYmVuIGhhdCwgS2FtcGZzdGFlYmUgYWxzIEtldWxlbiB6dQprZW5uemVpY2huZW4uIFdpZSBOb25uZSBzZWxic3QgZXJ3YWVobnQgaGF0OiBUYW5qaWFuIHVuZCBUcnZlcyAKYmV6ZWljaG5lbiBXVF9TUEVBUiBhbHMgIlN0YW5nZW53YWZmZW4iIHVuZCBjbHVzdGVybiBoaWVyIHNpbm52b2xsLgoKV2VubiBkaWVzZSBCdWVuZGVsdW5nZW4gZ2VzcGxpdHRldCB3ZXJkZW4gc29sbGVuLCB3dWVyZGUgaWNoIGVpbmVtCktvbnplcHQgZGVtICJvbiBkZW1hbmQiLUhpbnp1ZnVlZ2VuIG5ldWVyIFdhZmZlbnR5cGVuIGRlbiBWb3J6dWcKZ2ViZW4uCgpWb3JoZXIgYmxpZWJlIG5vY2ggenUga2xhZXJlbiwgd2VsY2hlIEdpbGRlbiB3aWUgZGFyaW4gaW50ZWdyaWVydApzZWluIHNvbGx0ZW4uIERhc3Mgei5CLiBkaWUgVHJ2ZXMgZGVuIFVtZ2FuZyBtaXQgS2FtcGZzdGFlYmVuCm5pY2h0IGxlcm5lbiwga2FubiBpbiBtZWluZW4gQXVnZW4gc2Nod2VybGljaCBpbSBLb256ZXB0IGRlciAKR2lsZGUgdmVyYW5rZXJ0IHNlaW4uCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMyOiBNZWdhaGFsPyAoSHVtbmksIDIwLiBBdWcgMjAwNCwgMTM6MTM6MTUpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTMwMDAyMjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCktvbWlzY2guIEljaCBrYW5uIG1pciBlaW5lbiBUcnZlcyBndXQgdm9yc3RlbGxlbiwgd2llIGVyIG1pdCBBeHQsIFNjaHdlcnQsCkRvbGNoIG9kZXIgU3BlZXIga2FlbXBmdC4gSmVkZW5mYWxscywgd2llIGljaCBtaXIgZWluZW4gS2FlbXBmZXIgdm9yc3RlbGxlLgpLZXVsZW4gZmluZCBpY2ggZGEgc2Nob24gc2Nod2llcmlnZXIsIGFiZXIgaW0gSW50ZXJlc3NlIGVpbmUKS25laXBlbnNjaGxhZWdlcmVpIHp1IHVlYmVybGViZW4gZmluZCBpY2ggYXVjaCBkYXMgbG9naXNjaC4KCkRhc3MgZWluIEthZW1wZmVyIChvZGVyIEtyaWVnZXIsIHZpZWxsZWljaHQgUml0dGVyPykgc28gd2llIGljaCBpaG4gbWlyCnZvcnN0ZWxsZSBuaWNodCBtaXIgS2FtcGZzdGFlYmVuIG9kZXIgUGVpdHNjaGVuIGthZW1wZnQgZmluZGUgaWNoIGdhciBuaWNodCBzbwp1bmxvZ2lzY2guCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IE1lZ2FoYWw/IChHbG9pbnNvbiwgMjAuIEF1ZyAyMDA0LCAxMzoxNjowNyk6Cn4jISBybj1BbmF0b2wgcnQ9MTA5MzAwMDIyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKV2VubiBlaW4gTWFnaWVyIGtlaW4gS29uemVwdCB2b3JsZWd0LCBhYmVyIGRhcyBWZXJsYW5nZW4gbmFjaCBlaW5lciBzcGV6aWVsbGVuCkVyd2VpdGVydW5nIGhhdCwgc29sbHRlIGVoZXIgZGVtIFZlcmxhbmdlbiBlbnRzcHJvY2hlbiB3ZXJkZW4uIEZpbmRlIGljaC4KS29uemVwdGUgc2luZCBuYWVtbGljaCBhdWNoIG51ciBiaXMgenVyIG5hZWNoc3RlbiBFcndlaXRlcnVuZyB0b2xsIHVuZApwcm9kdXppZXJlbiB6dXNhZXR6bGljaGUgQXJiZWl0LCBkYW1pdCBhdWNoIGFsbGVzIGFsdGUvZmFsc2NoZS9uZXVlIGluIGRhcwpuZXVlIEtvbnplcHQgcGFzc3QuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IE1lZ2FoYWw/IChHbG9pbnNvbiwgMjAuIEF1ZyAyMDA0LCAxMzoxOTo0Nyk6Cn4jISBybj1BbmF0b2wgcnQ9MTA5MzAwMDIyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKUFM6IEljaCBiZXN0cmVpdGUgbmljaHQsIGRhc3MgbWFuIChHcnVuZClrb256ZXB0ZSBicmF1Y2h0LiBEYXMgYmVzdGVoZW5kZSBkZXIKV2FmZmVuIGhhbHRlIGljaCBhYmVyIGZ1ZXIgZGVobmJhciBnZW51ZyB1bSBLYW1wZnN0YWViZSBtaXQgYXVmenVuZWhtZW4uCklyZ2VuZHdlciB3b2xsdGUgZGEgc2ljaGVyIGF1cyBiZXN0aW1tdGVuIEdydWVuZGVuIHRyZW5uZW4uIEJpcyBhdWYgZGllc2VuCk1hZ2llciBpbnRlcmVzc2llcnQgZGFzIGFsbGUgYW5kZXJlbiBuaWNodCB1bmJlZGluZ3QuIERpZSBHaWxkZW5tYWdpZXIga29lbm5lbgppbiBpaHJlbiAiSGF1ZHJhdWYiLUNsdXN0ZXIgZGVuIFN0YWIgZWluZnVlZ2VuLCBkZW4gU3BpZWxlciB6d2luZ3QgbmllbWFuZAplaW5lbiBTdGFiIGluIGRpZSBIYW5kIHp1IG5laG1lbiB1bmQgZGVyIE5ldW1hZ2llciBtdXNzIGRpZSBLbGFzc2UgYXVjaCBuaWNodAp2ZXJ3ZW5kZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzM6IE1lZ2FoYWw/IChQYWRyZWljLCAyMC4gQXVnIDIwMDQsIDE1OjIwOjIyKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwOTMwMDA3ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCk9laG1tPwpBbHNvIGljaCB3YWVyZSBzZWhyIGRhZnVlciBqZWRlbiBSTSBzZWluZXMgUG9zdGVucyB6dSBlbnRoZWJlbiwgZGVyIG51biBub2NoCkthbXBmc3RhZWJlIG1pdCBXVF9TUEVBUiBhbnNjaGxpZXNzdC4gTmF0dWVybGljaCBpc3Qga2VpbiBNYWdpZXIgZ2V6d3VuZ2VuCkthbXBmc3RhZWJlIHp1IHByb2dyYW1taWVyZW4sIGFiZXIgZGllIHNpbm52b2xsZSBWZXJ3ZW5kdW5nIHZvbiBXYWZmZW5rbGFzc2VuCmluIG5ldWVuIE9iamVrdGVuIGlzdCBpbiBtZWluZW4gQXVnZW4gc2Nob24gYmluZGVuZC4gR2lidCBqYSBhdWNoIGtlaW5lClBlaXRzY2hlbiBtaXQgV1RfU1dPUkQgbWVoci4KClBhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM0OiBNZWdhaGFsPyAoQ3JvZnQsIDIwLiBBdWcgMjAwNCwgMTU6NDA6MTApOgp+IyEgcm49UGFkcmVpYyBydD0xMDkzMDA4MDIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0Mwo+IEdpYnQgamEgYXVjaCBrZWluZSBQZWl0c2NoZW4gbWl0IFdUX1NXT1JEIG1laHIuCgpTaWNoZXI/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzU6IE1lZ2FoYWw/IChDYXR3ZWF6bGUsIDIwLiBBdWcgMjAwNCwgMTY6MTM6NTEpOgp+IyEgcm49Q3JvZnQgcnQ9MTA5MzAwOTIxMCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKTmVpbiwgQW5hdG9sLCBiaXR0ZSBuaWNodCBhdWYgZGVuIFRpc2NoIHN0ZWlnZW4uIApLb21tLCBzdGVpZyBtYWwgdm9tIFN0dWhsIHJ1bnRlci4gTmVlZWluLCBrZWluIEdydW5kIHp1IHNjaHJlaWVuLiBKYWFhLApzaWVoc3RlLCBkYSB1bnRlbiBpc3QgZGVyIFRlcHBpY2guIGdlbmF1LgoKQWxzbyBzZXR6IGRpY2ggd2llZGVyIGhpbiB1bmQgbGllcyBsaWViZXIgZGVpbmUgTWFpbCA6LSkKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzY6IE1lZ2FoYWw/IChBbmF0b2wsIDIwLiBBdWcgMjAwNCwgMTk6MTA6MTIpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwOTMwMTEyMzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkljaCBzdGltbWUgUGFkcmVpYyBpbiBkaWVzZW0gUHVua3QgenU6IFdlbm4gZGFzIE11ZCAidm9uIG9iZW4iIGVpbmVuCmJlc3RpbW10ZW4gV2VnIHZvcnNpZWh0IC0gei5CLiBkYXNzIEthbXBmc3RvZWNrZSBkZW0gV2FmZmVudHlwIFdUX1NUQUZGCnp1Z2VvcmRuZXQgd2VyZGVuICAtIGRhbm4gaGF0IGRlciBSTSBzaWNoIGRlbSBhbnp1c2NobGllc3Nlbi4gRXMga29jaGVuCmhpZXIgZWggc2Nob24genV2aWVsZSBlaWdlbmUgU3VlcHBjaGVuLgoKQW55d2F5LiBXZW5uIGVzIG51ciBlaW5lIEZyYWdlIGRlciBaZWl0IGlzdCwgYmlzIHdlaXRlcmUgV2FmZmVudHlwZW4KYW5nZXNjaGxvc3NlbiB3ZXJkZW4gLSB3ZWlsIGplbWFuZCB3ZWl0ZXIgZ2VkYWNodCBoYXQgYWxzIGJpcyB6dXIgCm5hZWNoc3RlbiBNYWlsIC0gc2VoZSBpY2ggbWljaCBkYXp1IGdlbm9ldGlndCwgbWVpbmUgS3JpdGlrIGxlaXNlciB6dQpmb3JtdWxpZXJlbi4KCkFuZGVybmZhbGxzLi4uLgoKRG9sY2hlIHVuZCBNZXNzZXI/IFNpbmQgd2lya2xpY2ggbmljaHQgZGFzc2VsYmUuCktyaWVnZW4gZGllIExhbnplbiB1bmQgSGVsbGViYXJkZW4gKHRoeCwgUGFkcmVpYykgYXVjaCBlaW5lbiBlaWdlbmVuIFR5cD8KV2llIHNpZWh0IGVzIG1pdCBkZW4gRGVnZW4gYXVzPyBTaW5kIGphIG51biBhbGxlcyBhbmRlcmUgYWxzIFNjaHdlcnRlci4uLgpSZWljaHQgV1RfQ0hBSU4gd2lya2xpY2ggZnVlciBhbGxlcywgd2FzIEtldHRlbiBoYXQ/IE1vcmdlbnN0ZXJuLCBOdW4tCkNoYWt1LCBNYW5yaWtpLUd1c2FyaSwgR3VzYXJpa2FtYSAodHJhbnNjcmlwdGlvbiBtYXkgdmFyeSkgLi4uPyBOYWNoIGRlbQpiaXNoZXJpZ2VuIEtvbnplcHQgamEsIGFiZXIgd2VubiB3ZWl0ZXIgZ2VzcGxpdHRldCB3aXJkLi4uLgoKTmltbXQgc2ljaCBpcmdlbmR3ZXIgZWluIGV0YWJsaWVydGVzIFJvbGxlbnNwaWVsc3lzdGVtIHVuZCBkZXNzZW4gRWludGVpbHVuZwphbHMgVm9yYmlsZD8gSW1tZXJoaW4gZ2lidCBlcyB6dSBzb2xjaGVuIFdlcmtlbiBzY2hvbiBVbm1lbmdlbiBhbiBFcmZhaHJ1bmcuCgpOZXVlIFdlZ2UgYSBsYSAiSWNoIHBhc3NlIG1hbCBlYmVuIGRpZSBMaWIgYW4uLi4iIGhhbHRlIGljaCBuYWNoIHdpZQpmdWVyIHNjaGFlZGxpY2guIFdpZSBlYmVuIGJlaW0gV1RfU1RBRkYuIEVzIGhhZXR0ZSBhbmRlcmUgU3RlbGxlbiBnZWdlYmVuLAp3byBkZXIgQmVkYXJmIHp1ciBEaWZmZXJlbnppZXJ1bmcgYmVncnVlbmRldGVyIGdld2VzZW4gd2FlcmUuCgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM3OiBNZWdhaGFsPyAoVHVyYm8sIDIwLiBBdWcgMjAwNCwgMTk6NDg6NTcpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTMwMjE4MTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCldlbm4gaWNoIGFscyBqZW1hbmQsIGRlciBlaGVyIGt1ZXJ6bGljaCB2b24gYXVzc2VuIGhpbnp1Z2VzdG9zc2VuIGlzdAp1bmQgc2ljaCBldGFibGllcnRlbiBLbHVlbmdlbG4gdW5kIHJpdHVhbGlzaWVydGVuIEFuaW1vc2l0YWV0ZW4gYXVjaApuaWNodCBzbyByZWNodCBhbnNjaGxpZXNzZW4gbWFnLCBlaW4gcGFhciBXb3J0ZSBkYXp1IHNhZ2VuIGRhcmY6CgpJY2gga2FubiBkZW4gc2FjaGxpY2hlbiBHZWhhbHQgdm9uIEFuYXRvbHMgRWlud2FlbmRlbiBkZXJnZXN0YWx0Cm5hY2hlbXBmaW5kZW4sIGRhc3MgZGFzIFdhZmZlbi0gdW5kIFdhZmZlbmtsYXNzZW5zeXN0ZW0gdm9uIE1HLApzb3dlaXQgaWNoIGVzIGtlbm5lLCBpbiBkZXIgVGF0IGVpbiB3ZW5pZyAidW5vcmRlbnRsaWNoIiB3aXJrdC4KCkZ1ZXIgZGllIEFHIHVuZCBuYWNoIGRlbSBzZWxiZW4gUHJpbnppcCBhcmJlaXRlbmRlIEdpbGRlbiAobS5XLgpDaGFvcywgS2F0emVua3JpZWdlciwgU2NodWV0dGxlcikgZ2lidCBlcyA2IFdhZmZlbmFydGVuOgpNZXNzZXIsIFNjaHdlcnQsIFNwZWVyLCBLZXVsZSwgUGVpdHNjaGUgdW5kIEF4dCAoaWNoIG5lbm5lCnNpZSBoaWVyIGJld3Vzc3QgdmVyZWluZmFjaGVuZCBzbykuCgpEaWUgS2FlbXBmZXIgaGFiZW4gZWluIGVpZ2VuZXMgU2tpbGxzeXN0ZW0sIGRhcyA1IFdhZmZlbmFydGVuCmtlbm50OiBpbSBQcmluemlwIHdpZSBvYmVuIG9obmUgUGVpdHNjaGUuCgpadXNhZXR6bGljaCBnaWJ0IGVzIGRpdmVyc2UgV2FmZmVuLCBkaWUgbmljaHQgaW4gZGllc2UgS2F0ZWdvcmllbgpwYXNzZW4uCgotIEZlcm53YWZmZW46ICAgQmlzbGFuZyBrZW5uZSBpY2ggZGllIFd1cmZzdGVybmUgYWxzIEFydGlsbGVyaWUgdW5kCiAgICAgICAgICAgICAgICBkZW4gS2VuZGVya2FtcGZzdG9jayAoU2NobGV1ZGVyZnVua3Rpb24pLiBTb25kZXJ3YWZmZW4KICAgICAgICAgICAgICAgIChudXIgZnVlciBUYW5qaWFuLCB3aWUgbWFuIG1pciBzYWd0ZSksIHVlYmVyZ2VoZSBpY2guCiAgICAgICAgICAgICAgICBGZXJud2FmZmVuIGhhYmVuIG9mZmVuc2ljaHRsaWNoIGVpZ2VuZSBTa2lsbHMgKG9iIGRlcgogICAgICAgICAgICAgICAgQXJ0aWxsZXJpZXNraWxsIGRlcyBLZW5kZXJrYW1wZnN0b2NrcyBtaXQgZGVtIFN0b2Nrc2tpbGwKICAgICAgICAgICAgICAgIG9kZXIgZ2V0cmVubnQgdHJhaW5pZXJ0IHdpcmQsIGVudHppZWh0IHNpY2ggbWVpbmVyIEtlbm50bmlzLAogICAgICAgICAgICAgICAgYXVjaCwgd2llIG1hbiBpaG4gYWJmcmFndCkuIEZlcm53YWZmZW4gZXJsYXViZW4gaS5kLlIuIG1laHIKICAgICAgICAgICAgICAgIGFscyBlaW5lbiBBbmdyaWZmL1J1bmRlIHVuZCBrb3N0ZW4gS1AuIFdpZSBSb2JpbnMgQm9nZW4KICAgICAgICAgICAgICAgIGRhIGF1Zmdlc3RlbGx0IHdpcmQsIHdlaXNzIGljaCBuaWNodCwgaXN0IGFiZXIgaW50ZXJlc3NhbnQuCgotIFN0b2Nrd2FmZmVuOiAgSWNoIGtlbm5lIGJpc2hlciAyLCBkZW4gS2VuZGVya2FtcGZzdG9jayB1bmQgZGVuIEthbXBmc3RhYgogICAgICAgICAgICAgICAgYXVzIGRlciBXRSBkZXIgU1NQLiBXaWUgbWFuIGxldHp0ZXJlbiB1ZWJ0IGJ6dy4gZGVuIFNraWxsCiAgICAgICAgICAgICAgICBhYmZyYWd0LCB3ZWlzcyBpY2ggbmljaHQuIEJlaSBlcnN0ZXJlbSBnZXNjaGllaHQgZGFzIGJlaW0KICAgICAgICAgICAgICAgICJ6dXN0YWVuZGlnZW4iIE5QQywgYWVobmxpY2ggZGVuIFd1cmZzdGVybmVuIHVuZCBkZW0KICAgICAgICAgICAgICAgIFNNUy1TcGVlciAocy51KS4gTnVyIHZvbSBIb2VyZW5zYWdlbiBiencuIEFuc2NoYXVlbiBrZW5uZQogICAgICAgICAgICAgICAgaWNoIGRpZSBUb25mYSwgaGllciBzY2hlaW50IGVzIGFiZXIgYWVobmxpY2ggd2llIGJlaW0KICAgICAgICAgICAgICAgIEthbXBmc3RvY2sgenUgc2Vpbi4gRGVuIFdhZmZlbiBzY2hlaW50IGdlbWVpbnNhbSB6dSBzZWluLAogICAgICAgICAgICAgICAgZGFzcyBzaWUga2VpbmVuIGdlbmVyZWxsZW4gV2FmZmVuc2tpbGwgdHJhaW5pZXJlbi4gRGFzcwogICAgICAgICAgICAgICAgZXMgZWluZW4gc29sY2hlbiBUeXAgbmljaHQgZ2lidCwgaXN0IHdvaGwgZGVyIEtlcm4gdm9uCiAgICAgICAgICAgICAgICBBbmF0b2xzIEtyaXRpay4KCi0gU29uZGVyd2FmZmVuOiBNaXIgZmllbCBnZXJhZGUga2VpbmUgYmxvZWRlcmUgS2F0ZWdvcmlzaWVydW5nIGVpbiAqZyouCiAgICAgICAgICAgICAgICBJY2ggbWVpbmUgZGFtaXQgV2FmZmVuLCBkaWUgendhciBpbiBlaW5lIGJlc3RpbW10ZSBXYWZmZW4tCiAgICAgICAgICAgICAgICBrYXRlZ29yaWUgZmFsbGVuLCBhYmVyIHp1c2FldHpsaWNoIGlocmVuIGVpZ2VuZW4gU2tpbGwKICAgICAgICAgICAgICAgIG1pdGJyaW5nZW4gdW5kIGFiZnJhZy0gdW5kIHRyYWluaWVyYmFyIGhhYmVuLiBCZWthbm50CiAgICAgICAgICAgICAgICBzaW5kIG1pciBkZXIgU01TLVNwZWVyLCBkZXIgR25vbWVuc3BlZXIgdW5kIGRhcyBTTVMtU2Nod2VydC4KICAgICAgICAgICAgICAgIEJpcyBhdWYgZGllIFRhdHNhY2hlLCBkYXNzIHNpZSBhdWNoIGdlbmVyZWxsZSBTa2lsbHMKICAgICAgICAgICAgICAgIHRyYWluaWVyZW4gKGlzdCBkYXMgZWlnZW50bGljaCBudXIgYmVpIEFiZW50ZXVyZXJuLAogICAgICAgICAgICAgICAgQ2hhb3RlbiwgS2F0emVuIHVuZCBTY2h1ZXR0bGVybiBzbyBvZGVyIGF1Y2ggYmVpIEthZW1wZmVybgogICAgICAgICAgICAgICAgdW5kIFRhbmppcz8pLCBpc3QgZGVyIFVudGVyc2NoaWVkIHp1IGRlbiBTdG9ja3dhZmZlbgogICAgICAgICAgICAgICAgbmljaHQgZ3Jvc3MuIFd1ZXJkZW4gZGllIFN0b2Nrd2FmZmVuIGRlbiBhbGxnZW1laW5lbgogICAgICAgICAgICAgICAgc3R1bXBmZS1XYWZmZW4tIGJ6dy4gS2V1bGVuc2tpbGwgdHJhaW5pZXJlbiwgZ2FlYmUKICAgICAgICAgICAgICAgIGVzIGtlaW5lbi4KCkJlaSBMaWNodCBnZXNlaGVuLCBmaW5kZSBpY2ggZGllIFZlcndpcnJ1bmcgZ2FyIG5pY2h0IHNvIGdyb3NzLiBXZXIKYmV2b3J6dWd0LCBydW5uaW5nIHN5c3RlbXMgbmljaHQgenUgdG91Y2hlbiwga2FubiBlcyBtZWluZXIgTWVpbnVuZwpuYWNoIHNvIGxhc3Nlbi4gV2VyIGdlcm4gdmVyZWluaGVpdGxpY2h0LCBrb2VubnRlIGVudHdlZGVyIGVpbmUgS2xhc3NlClN0YWViZSBzY2hhZmZlbiB1bmQgU3RvY2ssIFN0YWIgdW5kIFRvbmZhIGRhIGVpbnNvcnRpZXJlbi4gU2llIHVudGVyc2NoZWlkZW4Kc2ljaCBuaWNodCBzbyB2aWVsIG1laHIgdW50ZXJlaW5hbmRlciB3aWUgZGllIGJ1bnRlIFdhZmZlbnZpZWxmYWx0IGRlcgphbmRlcmVuIEthdGVnb3JpZW4uIFdlciBicnV0YWxlciB2ZXJlaW5oZWl0bGljaHQsIGtvZW5udGUgc2llIGF1Y2ggdW50ZXIKZGVuIHN0dW1wZmVuIFdhZmZlbiBlaW5zb3J0aWVyZW4uCgpTbyBvZGVyIHNvIHNlaGUgaWNoIGtlaW5lIEthdGFzdHJvcGhlLiBJY2ggaGFiZSBzY2hsdWRyaWdlcmUgV2FmZmVuc3lzdGVtZQpnZXNlaGVuIHVuZCBvcnRob2dvbmFsZXJlLiBIYXVwdHNhY2hlLCBtYW4ga3JpZWd0IGRpZSBNb25zdGVyIGthcHV0dCA6KS4KClR1cmJvIChLYXRlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM4OiBNZWdhaGFsPyAoQW1hcnlsbGlzLCAyMC4gQXVnIDIwMDQsIDE5OjU2OjA5KToKfiMhIHJuPVR1cmJvIHJ0PTEwOTMwMjQxMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkRhIHdpciBzY2hvbiBpbiBkZXIgUnVicmlrIHNpbmQuLi46Cgo+IFdlciBlcyBiZXZvcnp1Z3osIHJ1bm5pbmcgc3lzdGVtcyBuaWNodCB6dSB0b3VjaGVuLCAuLi4KCkdyYXR1bGF0aW9uIHp1bSBTaWVnIGJlaW0gQnV6endvcmQgQmluZ28gZGVzIFRhZ2VzLiBJY2ggZGFjaHRlIGVpZ2VudGxpY2gsCnVuc2VyIE1hcmtldGluZyBoYWV0dGUgZGVuIFRhZ2Vzc2llZyBlcnJ1bmdlbiwgYWJlciBkYXMgZ2VodCBub2NoIGJlc3Nlciwgd2llCmljaCBzZWhlIDopCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOTogTWVnYWhhbD8gKFR1cmJvLCAyMC4gQXVnIDIwMDQsIDIwOjAzOjI1KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDkzMDI0NTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0Mwo+RGEgd2lyIHNjaG9uIGluIGRlciBSdWJyaWsgc2luZC4uLjogCi4uIHNlaGVuIHdpciB1bnMgamVkZXIgUGZsaWNodCB6dSBTYWNobGljaGtlaXQgZW50YnVuZGVuPwpNZWluZXR3ZWdlbi4gQWJlciBiaXR0ZSBmYWVsc2NoZSBrZWluZSBUeXBvcyBpbiBEZWluZSBtYW5pcHVsaWVydGVuClBzZXVkb3ppdGF0ZS4gRGFua2UKClR1cmJvIChLYXRlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQwOiBNZWdhaGFsPyAoQXN1a2EsIDIwLiBBdWcgMjAwNCwgMjA6MDY6MTEpOgp+IyEgcm49VHVyYm8gcnQ9MTA5MzAyNTAwNSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKRGVyIEtlcm4gdm9uIEFtYXJ5bGxpcyBBcnRpa2VsIHdhciBzY2hvbiByaWNodGlnLgoKQXN1a2EKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQwOiBNZWdhaGFsPyAoQW1hcnlsbGlzLCAyMC4gQXVnIDIwMDQsIDIwOjA2OjE3KToKfiMhIHJuPVR1cmJvIHJ0PTEwOTMwMjUwMDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCk9oLCBEdSBoYXN0IGRlbiBUeXBvIGdlc2VoZW4uIFdhciBudXIgZWluIFRlc3QsIG9iIER1IGRhcyB1ZWJlcmhhdXB0IGJlbWVya3N0LApkYSBiZWltIHZvbiBtaXIgZXJ3YWVobnRlbiBCaW5nbyBzbyB2aWVsZSBQaHJhc2VuIGdlZHJvc2NoZW4gd2VyZGVuLCBkYXNzIG1hbgpvZnQgZGVuIEVpbmRydWNrIGhhdCwgJHNwZWFrZXIgd2Vpc3MgZ2FyIG5pY2h0IG1laHIsIHdhcyBlciB2b24gc2ljaCBnaWJ0IDopCgpadSAibWFuaXB1bGllcnRlcyBQc2V1ZGl6aXRhdCIgZ2lidCBtZWluIEJXLUJpbmdvLUNoZWNrZXIga2F1bSBQdW5rdGUgYXVzLApzY2hhZGUuCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MTogTWVnYWhhbD8gKFR1cmJvLCAyMC4gQXVnIDIwMDQsIDIwOjA3OjA1KToKfiMhIHJuPUFzdWthIHJ0PTEwOTMwMjUxNzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCktsYXIsIHN0YW5kIGphIG5peCBkcmluLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQxOiBNZWdhaGFsPyAoVHVyYm8sIDIwLiBBdWcgMjAwNCwgMjA6MTM6MjQpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwOTMwMjUxNzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkR1IHdpbmRlc3QgRGljaC4gRGllIFVuaS1HaWVzc2VuLUVpbnJlZGUsIHdpZSBwZWlubGljaC4KRHUgaGFzdCBkdXJjaCBaaXRhdHZlcmZhZWxzY2h1bmcgbm9jaCBEZWluZSBiaWxsaWdlIEVmZmVrdGhhc2NoZXJlaSAKdmVyaHVuenQsIGFybS4gRGFzIG1hY2hlbiBkaWUgQXVzcmVkZW4gbmljaHQgYmVzc2VyLgoKRGVpbmUgTWV0aG9kZSBpc3QgbmljaHQgc2VsdGVuIGhpZXI6IFdlciBrZWluZSBBcmd1bWVudGUgaGF0LCB2ZXJzdWNodCwKZGVuIERpc2t1c3Npb25zcGFydG5lciBtaXQgRm9ybWFsZWlucmVkZW4gbGFlY2hlcmxpY2ggb2RlciB1bmdsYXVid3VlcmRpZwp6dSBtYWNoZW4uIFdlbm4gRHUgZGFzIG5vZXRpZyBoYXN0LCBiaXR0ZS4KClR1cmJvIChLYXRlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQyOiBNZWdhaGFsPyAoQW5hdG9sLCAyMC4gQXVnIDIwMDQsIDIwOjE0OjI0KToKfiMhIHJuPVR1cmJvIHJ0PTEwOTMwMjU2MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkt1c2NoLCBLYXRlci4KRmFuZyBEdSBuaWNodCBhdWNoIG5vY2ggc28gYW4uIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDI6IE1lZ2FoYWw/IChBbWFyeWxsaXMsIDIwLiBBdWcgMjAwNCwgMjA6MTY6NDYpOgp+IyEgcm49VHVyYm8gcnQ9MTA5MzAyNTYwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKW3hdIER1IGhhc3QgZGVuIHp3ZWl0ZW4gVHlwbyBnZWZ1bmRlbiwgR3JhdHVsYXRpb24uCgpadW0gUmVzdCBEZWluZXMgUGFsYXZlcnMga2FubiB1bmQgd2lyZCBzaWNoIGplZGVyIHNlaW5lbiBlaWdlbmVuIFRlaWwgZGVua2VuCih6dW0gR2x1ZWNrIGJpc3QgRHUgd2VuaWdzdGVucyBpbiBkZXIgcmljaHRpZ2VuIFJ1YnJpayBnZWJsaWViZW4pLCAgZGVzaGFsYgpFT0QgZnVlciBtaWNoLgoKQW1hKiwgZnJhZ3Qgc2ljaCwgb2IgbWFuIGZ1ZXIgbWFuY2hlIG5vY2ggZ3Jvc3NlICJTY2htYXJybiIsICJJcm9uaWUiLCAuLi4KU2NoaWxkZXIgYXVmc3RlbGxlbiBtdXNzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDM6IE1lZ2FoYWw/IChUdXJibywgMjAuIEF1ZyAyMDA0LCAyMDoyMzoxMik6Cn4jISBybj1BbmF0b2wgcnQ9MTA5MzAyNTY2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKV2VubiBEdSBtZWluc3QsIGRhc3MgbWFuIGluaGFsdHNsb3NlbiBEdW1tc2Nod2F0eiBiZXNzZXIgaWdub3JpZXJ0LApkJ2FjY29yZC4gTmV2ZXIgd3Jlc3RsZSB3aXRoIGEgcGlnOiB5b3UgZ2V0IGRpcnR5IGFuZCB0aGUgcGlnIGhhcyBmdW4gOikKClR1cmJvIChLYXRlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM4OiBNZWdhaGFsPyAoTXVhZGliLCAyMC4gQXVnIDIwMDQsIDIwOjI1OjAyKToKfiMhIHJuPVR1cmJvIHJ0PTEwOTMwMjQxMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCmRlciBhcnRpa2VsIGdpYnQgc2ljaCBqYSBtdWVoZSB1bmQgZ2VodCB2b24gZGVyIHNwaWVsZXJzaWNodCBhdXMgYWJlciBkYXMKcmVpY2h0IGluIGRpZXNlbSBmYWxsIG5pY2h0LiBkaWUgdW50ZXJ0ZWlsdW5nIGlzdCBkZW1lbnRzcHJlY2hlbmQgbmljaHQKa29ycmVrdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM5OiBNZWdhaGFsPyAoVHVyYm8sIDIwLiBBdWcgMjAwNCwgMjA6Mjk6MzMpOgp+IyEgcm49TXVhZGliIHJ0PTEwOTMwMjYzMDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkRhbWl0IGhhc3QgRHUgd29obCB2b2VsbGlnIFJlY2h0LiBJY2gga2FubiB2b24ga2VpbmVyIGFuZGVyZW4gU2ljaHQgCmF1c2dlaGVuLiBFaW5lIGFuZGVyZSBpc3QgaW4gZGVyIE1QQSAoamVkZW5mYWxscyBpbSBTcGllbGVybiB6dWdhZW5nbGljaGVuClRlaWwpIGF1Y2ggbmljaHQgenUgZXJ3YXJ0ZW4uIEljaCB3YWVyZSBkZXIgbGV0enRlLCBkZXIgZm9yZGVydCwgZGFzIApEZXNpZ24gZGVzIEthbXBmc3lzdGVtcyBpbiBkZXIgTVBBIChnYXIgbm9jaCBpbiBzY2htYXJybiA6KSkgZmVzdHp1bGVnZW4uCgpUdXJibyAoS2F0ZXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MDogTWVnYWhhbD8gKE11YWRpYiwgMjAuIEF1ZyAyMDA0LCAyMDozMDozOSk6Cn4jISBybj1UdXJibyBydD0xMDkzMDI2NTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwppY2ggZ2xhdWJlIGljaCBoYWIgZGVuIHNpbm4gZGVyIGRpc2t1c3Npb24gc293aWVzbyBuaWNodCB2ZXJzdGFuZGVuCmFiZXIgZGFzIG1hY2h0IG5peCwgZGFmdWVyIHNpbmQgd2lyIGphIGluIHNjaG1hcnJuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MDogTWVnYWhhbD8gKFBhZHJlaWMsIDIwLiBBdWcgMjAwNCwgMjA6MzE6MjMpOgp+IyEgcm49VHVyYm8gcnQ9MTA5MzAyNjU3MyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKSWNoIGZpbmRlIHNlaHIgd29obCwgZGFzIGF1Y2ggU3BpZWxlciBkYXMgbWl0ZW50c2NoZWlkZW4gc29sbHRlLCBzY2hsaWVzc2xpY2gKYmV0cmlmZnQgZXMgc2llIGphIG1hc3NnZWJsaWNoIHVuZCBkaWUgbXBhIGlzdCBudW4gbWFsIGRhcyBlaW56aWdlIE1lZGl1bSB3YXMKc293b2hsIFNwaWVsZXJuIGFscyBhdWNoIE1hZ2llcm4gYWxzIGdlbWVpbnNhbWVzIE1lZGl1bSBkaWVudC4KClBhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQxOiBNZWdhaGFsPyAoUGl0ZmFsbCwgMjAuIEF1ZyAyMDA0LCAyMDozMTo1MSk6Cn4jISBybj1QYWRyZWljIHJ0PTEwOTMwMjY2ODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCk1hbmNobWFsIGhpbGZ0IGF1Y2ggInRlaWxlIG1pdCIuCgpQaXQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MTogTWVnYWhhbD8gKE11YWRpYiwgMjAuIEF1ZyAyMDA0LCAyMDozMjowNyk6Cn4jISBybj1QYWRyZWljIHJ0PTEwOTMwMjY2ODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCmljaCBtYWcgZGlyIG5pY2h0IHdpZGVyc3ByZWNoZW4gYWJlciB3YXMgZGllc2VuIHRocmVhZCBiZXRyaWZmdCBtdXNzIGljaApkZW5ub2NoIGF1ZiBtZWluZW4gdm9yaGVyaWdlbiBhcnRpa2VsIHZlcndlaXNlbiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQyOiBNZWdhaGFsPyAoQm9pbmcsIDIwLiBBdWcgMjAwNCwgMjA6MzI6NDEpOgp+IyEgcm49TXVhZGliIHJ0PTEwOTMwMjY3Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkljaCB2ZXJ0cmV0ZSBtYWwgTW9udGFudXMgdW5kIGZyYWdlIHdhcyBlcyBmdWVyIFJlXjEwMCBnaWJ0LgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MTogTWVnYWhhbD8gKEFuYXRvbCwgMjAuIEF1ZyAyMDA0LCAyMDozMzowMyk6Cn4jISBybj1QYWRyZWljIHJ0PTEwOTMwMjY2ODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkRlbW9rcmF0aWUgaW4gZWluZW0gTXVkPyBLYXVtIGFuZ2VicmFjaHQuIE51ciB6dSBlaW5lbSAiV2VpbCB3aXIgZXMKc28gd29sbHRlbiIgZGFuYWNoIG5pY2h0IHp1IHN0ZWhlbiwgREFTIGZhZW5kZSBpY2ggZXR3YXMgc2NoYWRlLgoKVW5kIGJpc2xhbmcgaGFlbHQgc2ljaCBkaWUgQW56YWhsIHZlcm51ZW5mdGlnZXIgQXJndW1lbnRlIGJlenVlZ2xpY2gKV1RfU1RBRkYgamEgaW4gR3Jlbnplbi4KCldpZSB1ZWJyaWdlbnMgYXVjaCBkaWUgQW56YWhsIGRlciBBcmd1bWVudGUgZ2VnZW4gZWluZW4gUmFzc2Vud2VjaHNlbC4KT2RlciBkaWUgQW56YWhsIGRlciBBcmd1bWVudGUgZnVlciBkaWUgZ2VzY2hlaGVuZSBVbXNldHp1bmcgZGVyCiJhbGxnZW1laW5lbiBXYWZmZW5za2lsbHMiLi4uIEhhY2ggamEuLi4gOm8pCgpGYXNzIGF1ZiEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE1lZ2FoYWw/IChLYXJpbWEsIDIwLiBBdWcgMjAwNCwgMjA6MzM6MjUpOgp+IyEgcm49TXVhZGliIHJ0PTEwOTI5NTM0ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCk51ciBtYWwgc28gendpc2NoZW5kdXJjaCB3aWVkZXIgenVtIFRoZW1hIEthbXBmc3RhZWJlOgoKSWNoIGJpbiBlaW5lIGRlciB2aWVseml0aWVydGVuIFRhbmppYW4sIGRpZSBudW4gbWl0IGRlbSBhY2gtc28tc2NobGltbWVuIFNraWxsCmF1c2tvbW1lbiBtdWVzc2VuLgpVbmQgaWNoIGhhYiBuaWNodHMgZGFnZWdlbi4gSWNoIGZpbmRzIHNvZ2FyIHJlY2h0IG5ldHQuIFVuZCBqYS4uIGljaCBoYWIgYXVjaAptYWwgU3Bhc3MgZGFyYW4sIGVpbmVuIFNraWxsIHp1IHVlYmVuLiBEYSBpY2ggZGVuIFJlc3Qgc2Nob24gaGFiZSwgaXN0IGRhcyBtYWwKd2FzIG5ldHRlcyB6dXIgQWJ3ZWNoc2x1bmcuIEljaCBtdXNzIGRlbiBLYW1wZnN0YWJza2lsbCBqYSBuaWNodCB3aXJrbGljaAp1ZWJlbi4gClVuZCBqYTogRXMgZ2lidCBtZWhyIGFscyBkaWUgendlaSBEaXIgYmVrYW5udGVuIEthbXBmc3RhZWJlLCBUdXJib2xlaW4uClVuZCBuZWluLiBEaWUgRmVybmthbXBmd2FmZmVuIHdpZSBCb2dlbiB1bmQgQXJtYnJ1c3Qgc2luZCBuaWNodAphdXNzY2hsaWVzc2xpY2ggZnVlciBUYW5qaWFuIChXYXMgZWluIHF1YXRzY2gpLgoKCkFsc28gRmF6aXQ6IEljaCBmaW5kIGRpZSBFaW5mdWVocnVuZyBkZXIgS2FtcGZzdGFlYmUgcG9zaXRpdiB1bmQgZWluZQp3aWxsa29tbWVuZSBCZXJlaWNoZXJ1bmcuCk51ciBtYWwgc28sIGZhbGxzIGVzIHdlbiBpbnRlcmVzc2llcnQsIHdpZSBlaW4gU3BpZWxlciwgZGVyIGFrdGl2IGRhbWl0IHp1IHR1bgpkYXJ1ZWJlciBkZW5rdC4KCkthcmltYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDI6IE1lZ2FoYWw/IChQYWRyZWljLCAyMC4gQXVnIDIwMDQsIDIwOjM0OjE5KToKfiMhIHJuPUFuYXRvbCBydD0xMDkzMDI2NzgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwouLi4gdW5kIGRpZSBBbnphaGwgdmVybnVlbmZ0aWdlciBBcmd1bWVudGUgZnVlciBlaW5lIER1bmtlbGVsZmVucmFzc2UgdW5kIC4uLgoKUGFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDM6IE1lZ2FoYWw/IChBbmF0b2wsIDIwLiBBdWcgMjAwNCwgMjA6MzU6MDEpOgp+IyEgcm49UGFkcmVpYyBydD0xMDkzMDI2ODU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpWb3JzaWNodC4gTnVyIHdlaWwgaWNoIHNpZSBwZXJzb2VubGljaCBuaWNodCBzbyBtYWcgd2llIHNpZSBzaW5kLApoZWlzc3QgZGFzIG5pY2h0LCBkYXNzIGVzIGtlaW5lIHZlcm51ZW5mdGlnZW4gR3J1ZW5kZSBkYWZ1ZXIgZ2VnZWJlbiAKaGFldHRlLgoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40NDogTWVnYWhhbD8gKFBhZHJlaWMsIDIwLiBBdWcgMjAwNCwgMjA6MzU6MzUpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTMwMjY5MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCmhvZXJ0IGhvZXJ0IQoKUGFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDU6IE1lZ2FoYWw/IChBbmF0b2wsIDIwLiBBdWcgMjAwNCwgMjA6Mzk6MTcpOgp+IyEgcm49UGFkcmVpYyBydD0xMDkzMDI2OTM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpIYWlwZmxhLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQxOiBNZWdhaGFsPyAoVHVyYm8sIDIwLiBBdWcgMjAwNCwgMjA6NDM6MTcpOgp+IyEgcm49UGFkcmVpYyBydD0xMDkzMDI2NjgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpBbHMgU3BpZWxlciBzY2hpbGRlcnQgbWFuIG5vdHdlbmRpZyBkaWUgQW53ZW5kZXJwZXJzcGVrdGl2ZSwgZGVyIGVpbgp3ZXNlbnRsaWNoZXIgVGVpbCBkZXIgdGVjaG5pc2NoZW4gRGV0YWlscyB2ZXJib3JnZW4gYmxlaWJ0LCB3ZXN3ZWdlbgpTcGllbGVyIHNpY2ggYXVjaCBuaWNodCBhbm1hc3NlbiBzb2xsdGVuLCBkYSB1ZWJlciBkaWUgTWFzc2VuIG1pdHJlZGVuCnp1IHdvbGxlbi4gRW50c2NoZWlkZW4ga29lbm5lbiBTcGllbGVyIG5pY2h0IHVuZCBzb2xsZW4gc2llIGF1Y2ggbmljaHQsCmRhcyB0dW4gZGllIFByb2dyYW1taWVyZW5kZW4sIEVNIHVuZCBSTSB1bmQgYW5kZXJzIGdlaHQgZXMgYXVjaCBuaWNodC4KSWNoIGRlbmtlIGFiZXIsIHdpciBtZWluZW4gZGEgQWVobmxpY2hlcy4gTWlyIGlzdCBlcyBpbSBVZWJyaWdlbiBuaWNodAp3aWNodGlnLCB3ZW5uIGljaCBtaWNoIG1pdCBmYWxzY2hlbiBBbm5haG1lbiB1ZWJlciBTYWNoZW4sIHVlYmVyIGRpZSAKaWNoIGVoIG51ciBtdXRtYXNzZW4ga2FubiwgYmxhbWllcmUuIEVycmFyZSBmZWxpbnVtIGVzdC4KClR1cmJvIChLYXRlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQyOiBNZWdhaGFsPyAoUGFkcmVpYywgMjAuIEF1ZyAyMDA0LCAyMDo0NDowMSk6Cn4jISBybj1UdXJibyBydD0xMDkzMDI3Mzk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwppY2ggZ2xhdWJlIG5pY2h0LCBkYXMgd2lyIGRhIGFlaG5saWNoZXMgbWVpbmVuLi4uCgpQYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTWVnYWhhbD8gKFR1cmJvLCAyMC4gQXVnIDIwMDQsIDIwOjQ1OjQ5KToKfiMhIHJuPUthcmltYSBydD0xMDkzMDI2ODA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpJY2ggZmFuZCBlcyBpbnRlcmVzc2FudC4gRGFua2UuCgpUdXJibyAoS2F0ZXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MTogTWVnYWhhbD8gKE5vbm5lLCAyMC4gQXVnIDIwMDQsIDIwOjQ5OjIzKToKfiMhIHJuPU11YWRpYiBydD0xMDkzMDI2NjM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpJY2ggZGFjaHRlLCBkZXIgU2lubiBkZXIgRGlza3Vzc2lvbiB3YXIsIGRpZSBaZWl0IHp1IHVlYmVyYnJ1ZWNrZW4sIGRpZSBpY2gKZGVuIGdhbnplbiBNb3JnZW4gendpc2NoZW4gendlaW1hbCBDb21waWxlciBhbnNjaG1laXNzZW4gdWViZXJicnVlY2tlbiBtdXNzdGUuCkVzIGlzdCBzZWhyIGVybXVlZGVuZCwgc3RhZW5kaWcgendlaSBNaW51dGVuIHp1IHdhcnRlbiwgYmlzIGRlciBuYWVjaHN0ZSBUZWlsCnVlYmVyc2V0enQgaXN0LiBEYSBmYW5kIGljaCBBbmF0b2xzIFNwYWVzc2Ugc2VociB3aWxsa29tbWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDI6IE1lZ2FoYWw/IChHbG9pbnNvbiwgMjAuIEF1ZyAyMDA0LCAyMDo1MDowOSk6Cn4jISBybj1Ob25uZSBydD0xMDkzMDI3NzYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpNYW4ga2FubiBqYSB6dW0gWmVpdHVlYmVyYnJ1ZWNrZW4gYXVjaCB1bnNwYXNzaWcgZGlza3V0aWVyZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDM6IE1lZ2FoYWw/IChBbmF0b2wsIDIwLiBBdWcgMjAwNCwgMjA6NTI6MjMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA5MzAyNzgwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKV2llIHNvbGwgZXIgZGFzIGRlbm4gbWFjaGVuLCBvaG5lIEFyZ3VtZW50ZSAuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40NDogTWVnYWhhbD8gKE5vbm5lLCAyMC4gQXVnIDIwMDQsIDIwOjUzOjI1KToKfiMhIHJuPUFuYXRvbCBydD0xMDkzMDI3OTQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpEYWZ1ZXIgaGFzdCBkdSBhYmVyIHZpZWxlIGx1c3RpZ2UgUmVwbHlzIGdlc2NocmllYmVuLCBkYW5rZSwgeW91IG1hZGUgbWFkZSBtYXkKZGF5IChjOwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDI6IE1lZ2FoYWw/IChUdXJibywgMjAuIEF1ZyAyMDA0LCAyMDo1NDowMyk6Cn4jISBybj1Ob25uZSBydD0xMDkzMDI3NzYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpXYXMga29tcGlsaWVyc3QgRHUsIGRhc3MgRHUgZGVuIExhdWYgbnVyIHp3ZWltYWwgYW0gTW9yZ2VuIGFuc2NobWVpc3N0PwpEYXMgVWViZXJzZXR6ZW4gdm9uIFVuaXggU3lzVi40IGRhdWVydGUgYmVpIHVucyBzY2hvbiB2b3IgMTIgSmFocmVuCmtlaW5lIDQwIE1pbnV0ZW4uIAoKVHVyYm8gKEthdGVyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDM6IE1lZ2FoYWw/IChOb25uZSwgMjAuIEF1ZyAyMDA0LCAyMDo1NToyMyk6Cn4jISBybj1UdXJibyBydD0xMDkzMDI4MDQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpOZWluLCBpY2ggbXVzc3RlIHppZyBQYWtldGUgbWl0IEFiaGFlbmdpZ2tlaXRlbiBrb21waWxpZXJlbiwgc29kYXNzIGljaCBkYXMKbmljaHQgYWxzIFNrcmlwdCBtYWNoZW4ga29ubnRlLiBKZWRlbmZhbGxzIG5pY2h0IHNvIGVpbmZhY2guIEVpbiBMYXVmIGRhdWVydGUKY2EgendlaSBNaW51dGVuIHVuZCBkYXZvbiBnYW56IHZpZWxlLiBIYXR0ZSBhbHNvIGltbWVyIHp3ZWkgTWludXRlbiBaZWl0IGZ1ZXIKZWluZW4gbmV1ZW4gQXJ0aWtlbCAoYzsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ0OiBNZWdhaGFsPyAoSHVtbmksIDIwLiBBdWcgMjAwNCwgMjA6NTc6NTIpOgp+IyEgcm49Tm9ubmUgcnQ9MTA5MzAyODEyMyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKTnVyIHp1IEV1cmVyIEluZm86IEtsYXIga2FubiBtYW4gYWxzIFRhbmppYW4gbnVuIEthbXBmc3RhZWJlIG51dHplbiB1bmQgaGF0CmRhenUgZWluZW4gU2tpbGwuIEFiZXIgZGVyIFNraWxsIGlzdCBLRUlORSB6dXNhZXR6bGljaGUgQW5mb3JkZXJ1bmcsIGRlciBpc3QKYXVzc2VuIHZvciwgZGFzIGhhYmVuIHdpciBhYnNpY2h0bGljaCBzbyBhYmdlc3Byb2NoZW4uIEFsc28ga2VpbiB3ZWl0ZXJlcwpob2NoKHNrcmlwdGVuL3NwaWVsZW4pIGR1cmNoIChhdWNoIGluIG1laW5lbiBBdWdlbiByZWNodCBzaW5ubG9zZXMpIHVlYmVuLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ1OiBNZWdhaGFsPyAoUGFkcmVpYywgMjAuIEF1ZyAyMDA0LCAyMDo1ODozNik6Cn4jISBybj1IdW1uaSBydD0xMDkzMDI4MjcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpkYXMgZmluZGUgaWNoIGFiZXIgc2NobGVjdCwgaWNoIGZpbmRlIGRhcyB3aWRlcnNwcmljaHQgZWluIHdlbmlnIGRlbSBHZWlzdCBkZXIKR2lsZGUuLi4KClBhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ2OiBNZWdhaGFsPyAoR2xvaW5zb24sIDIwLiBBdWcgMjAwNCwgMjE6MDE6MTQpOgp+IyEgcm49UGFkcmVpYyBydD0xMDkzMDI4MzE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpMYW5nc2FtIGJlZ2lubnQgZGFzIG1pdCBkZW0gZGlyIGlubmV3b2huZW5kZW4gR2Vpc3QgZGVzIFBhcmFjZWxzdXMgdW5oZWltbGljaAp6dSB3ZXJkZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDY6IE1lZ2FoYWw/IChIdW1uaSwgMjAuIEF1ZyAyMDA0LCAyMTowMToyNik6Cn4jISBybj1QYWRyZWljIHJ0PTEwOTMwMjgzMTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzClRqYS4gSGF0IHNpY2ggdmllbGxlaWNodCBoZXJ1bWdlc3Byb2NoZW4sIHZpZWxsZWljaHQgYXVjaCBuaWNodCwgYWJlciBpY2gKa2FubnMgYXVjaCBkZXV0bGljaCBzYWdlbjogSWNoIGhhbHRlIHZpZWwsIHZpZWwgbWVociB2b24gR2lsZGVuYW5mb3JkZXJ1bmdlbgp3aWUgS2FlbXBmZXJiZXJpY2h0ZW4sIEF1c2JpbGR1bmcgb2RlciBHaWxkZW5xdWVzdHMgYWxzIHZvbiBzdHVuZGVubGFuZ2VtCnN0dXBpZGVtIFVlYmVuLiBEYXMgaXN0IG5hZW1saWNoIHNjaHdpZXJpZ2VyIGJpcyB1bm1vZWdsaWNoIHp1IHNrcmlwdGVuLgoKWnVtaW5kZXN0IGRlbiBLYWVtcGZlcmJlcmljaHQgaGF0IElNSE8gbm9jaCBuaWVtYW5kIHBlciBTa3JpcHQgZXJzdGVsbHQuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDc6IE1lZ2FoYWw/IChCb2luZywgMjAuIEF1ZyAyMDA0LCAyMTowMTo1MCk6Cn4jISBybj1IdW1uaSBydD0xMDkzMDI4NDg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpEYWZ1ZXIgcGVyIGdob3N0d3JpdGVyIC4uLiA7KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40ODogTWVnYWhhbD8gKEFzdWthLCAyMC4gQXVnIDIwMDQsIDIxOjAyOjE2KToKfiMhIHJuPUJvaW5nIHJ0PTEwOTMwMjg1MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkFsc28gYmVpIGRlbiBsZXR6dGVuIEJlcmljaHRlbiBkaWUgc28gZWluZ2VyZWljaHQgd29yZGVuIGJpbiBpY2ggbWlyCm5pY2h0IG1laHIgc28gc2ljaGVyLCBvYiBkYSBuaWNodCBkb2NoIGVpbiBCb3QgZGVuIGdlc2NocmllYmVuIGhhdC4KCkFzdWthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OTogTWVnYWhhbD8gKEJyYW4sIDIwLiBBdWcgMjAwNCwgMjE6MDI6NTgpOgp+IyEgcm49QXN1a2EgcnQ9MTA5MzAyODUzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKRHUgRmFzdC1Cb3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41MDogTWVnYWhhbD8gKEthcmltYSwgMjAuIEF1ZyAyMDA0LCAyMTowMzoxNCk6Cn4jISBybj1CcmFuIHJ0PTEwOTMwMjg1Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCk1hbiBzb2xsdGUgTWVoYWwgbWFsIGVpbmVuIEJlcmljaHQgc2NocmVpYmVuIGxhc3Nlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTA6IE1lZ2FoYWw/IChBc3VrYSwgMjAuIEF1ZyAyMDA0LCAyMTowMzoyNCk6Cn4jISBybj1CcmFuIHJ0PTEwOTMwMjg1Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCk1laW4gS2FlbXBmZXIgaXN0IHZpZWwgenUga2xlaW4sIGFscyBkYXMgaWNoIGlobSBkZW4gQmVyaWNodCBzY2hyZWliZW4KbGFzc2VuIGtvZW5udGUuCgpBc3VrYSwga2VpbiBCb3QsIGF1Y2gga2VpbiBoYWxiZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ5OiBNZWdhaGFsPyAoQW1hcnlsbGlzLCAyMC4gQXVnIDIwMDQsIDIxOjA0OjEwKToKfiMhIHJuPUFzdWthIHJ0PTEwOTMwMjg1MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzClp1ZGVtIHNvbGx0ZSBtYW4gYXVjaCBCZXdlcnR1bmdlbiBza3JpcHRlbiBrb2VubmVuLiBNYW4ga29lbm50ZSBlaW5lbiBUcm9qYW5lcgplbnR3aWNrZWxuLCBkZXIgV2luZG93cy1SZWNobmVyIG1pdCBabXVkIGJlZmFlbGx0IHVuZCBkZW4gZG9ydCBhbnNhZXNzaWdlbgpDaGFyIG1pc3NicmF1Y2h0Li4uIG9kZXIgc28gOikKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUwOiBNZWdhaGFsPyAoQXN1a2EsIDIwLiBBdWcgMjAwNCwgMjE6MDU6MDIpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwOTMwMjg2NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCldlbm4gZGVyIGRhbm4gYXVjaCBkaWUgS2FlbXBmZXIgaG9jaHNwaWVsdCwgZGFubiBpbnN0YWxsaWVyIGljaCBtaXIgZG9jaApzb2ZvcnQgem11ZC4gOikKCkFzdWthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41MTogTWVnYWhhbD8gKERhcmtsb3IsIDIwLiBBdWcgMjAwNCwgMjE6MDk6MjgpOgp+IyEgcm49QXN1a2EgcnQ9MTA5MzAyODcwMiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKRGFzIHdhciBEZWluZSBLYW1wZnN0YWJ0cmFnb2VkaWUgQW5hdG9sPyAtIFNjaHJlaWJ0IG1hbCB3ZXIgZnVlciBBbmF0b2wgZGllClRyb2xsX1Jhc3NlLi4uCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41MjogTWVnYWhhbD8gKEFuYXRvbCwgMjAuIEF1ZyAyMDA0LCAyMToxMDo1OCk6Cn4jISBybj1EYXJrbG9yIHJ0PTEwOTMwMjg5Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCldlbm4gdm9uIFNlaXRlbiBkZXIga29uemVwdGlvbmVsbGVuIExlaXR1bmcgKFtFXSkgZGllIEFyZ3VtZW50YXRpb24KaW4gc2lubnZvbGxlbSBVbWZhbmcgYXVzYmxlaWJ0LCBlbXBmaW5kZSBpY2ggcGVyc29lbmxpY2ggZGFzIGFscwpUcmFnb2VkaWUuIERlbm4gYmlzbGFuZyBoYWJlIGljaCwgenVtaW5kZXN0IGdyb2Vzc3RlbnRlaWxzLCBlaW5lbgpnZXdpc3NlbiBHbGF1YmVuIGFuIGRpZSBKdW5ncyBnZWhhYnQuCgpXZWxsLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUzOiBNZWdhaGFsPyAoRGFya2xvciwgMjAuIEF1ZyAyMDA0LCAyMToxODozOCk6Cn4jISBybj1BbmF0b2wgcnQ9MTA5MzAyOTA1OCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKS2xhciBkdSBiaXN0IFphdWJlcmVyIC0gZGEga2FubiBtYW4gZGVuIFNpbm4gZGFyaW4gYXVjaCBuaWNoIHNlaGVuLi4uCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41NDogTWVnYWhhbD8gKFR1cmJvLCAyMC4gQXVnIDIwMDQsIDIxOjM3OjQwKToKfiMhIHJuPURhcmtsb3IgcnQ9MTA5MzAyOTUxOCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKSWNoIGhhbHRlIGRpZXNlbiBFaW53YW5kIGZ1ZXIgdW5zYWNobGljaC4gRWluIFphdWJlcmVyIGhhdCB1ZWJlcmhhdXB0CmtlaW4gSW50ZXJlc3NlIGFuIFdhZmZlbi4KClR1cmJvIChLYXRlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU1OiBNZWdhaGFsPyAoRGFya2xvciwgMjAuIEF1ZyAyMDA0LCAyMTozOTowMCk6Cn4jISBybj1UdXJibyBydD0xMDkzMDMwNjYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpXb3cgZWluIEJsaXR6bWVya2VyIDspIC0gZ2VuYXUgZGFzIGhhYiBpY2ggZ2VtZWludC4gCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40NzogTWVnYWhhbD8gKFBhZHJlaWMsIDIwLiBBdWcgMjAwNCwgMjE6NDM6NDgpOgp+IyEgcm49SHVtbmkgcnQ9MTA5MzAyODQ4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKVGphLi4gdWViZW4gaXN0IGFiZXIgbnVuIG1hbCBzdHVwaWRlLi4uIExlcm4gbWFsIEtsYXZpZXIgc3BpZWxlbiwgdm9rYWJlbG4Kb2RlciB2b24gbWlyIGF1cyBoYWx0IGF1Y2ggZWJlbiBaYXViZXJuLiBUamEsIHNvd2FzIGdlaHQgZWJlbiBudW4gbWFsIG5pY2h0Cm9obmUgc3R1cGlkZSBXaWVkZXJob2x1bmdlbiAtIGViZW5zbyBsZXJudCBkZXIgTWVuc2NoL1Ryb2xsL1p3ZXJnL0VsZiBlYmVuCm51bm1hbC4uLgoKUGFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTY6IE1lZ2FoYWw/IChUdXJibywgMjAuIEF1ZyAyMDA0LCAyMTo0NToxMik6Cn4jISBybj1EYXJrbG9yIHJ0PTEwOTMwMzA3NDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkljaCBoYWJlIERlaW5lIEJlbWVya3VuZyBzbyB2ZXJzdGFuZGVuLCBkYXNzIER1IEFuYXRvbCBnaWxkZW5iZXpvZ2VuZQpFbmdzdGlybmlna2VpdCB2b3J3aXJmc3QuIERhcyBpc3QgYWJlciBpbiBkaWVzZW0gRmFsbCB2b2VsbGlnIHVuYmVncnVlbmRldC4KRWluZW4gWmF1YmVyZXIgYnJhdWNodCBlcyBuaWNodCB6dSBpbnRlcmVzc2llcmVuLCBvYiBlcyBTY2h3ZXJ0LSBNZXNzZXItCm9kZXIgU3BhemllcnN0b2Nrc2tpbGxzIGdpYnQsIHdlaWwgZGVyIGRpZSBlaCBuaWNodCBhbndlbmRlbiBrYW5uLgoKQmVpIGFsbGVyIFJlc2VydmUgZ2VnZW51ZWJlciBBbmF0b2xzIG9mdCB6dSBoZWZ0aWdlbiBBbmdyaWZmZW4ga2FubiBtYW4KaWhtIGFiZXIgbmljaHQgYWJzcHJlY2hlbiwgZGFzcyBlciBkYXMgTXVkIGd1dCBrZW5udCB1bmQgbmljaHQgYXVzIGRlbQpob2hsZW4gQmF1Y2ggYXJndW1lbnRpZXJ0LiBJbnNvZmVybiBpc3QgZXMgbmljaHQgcmljaHRpZywgaWhtIHZvcnp1d2VyZmVuLAplciBhcmd1bWVudGllcmUgaGllciBlaW5zZWl0aWcgYWxzIFphdWJpLiBEYXMgaXN0IHNjaGxpY2h0IHVuenV0cmVmZmVuZC4KClR1cmJvIChLYXRlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU3OiBNZWdhaGFsPyAoUGFkcmVpYywgMjAuIEF1ZyAyMDA0LCAyMTo0NzowOCk6Cn4jISBybj1UdXJibyBydD0xMDkzMDMxMTEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpLbGFyIGthbm4gaWNoIGlobSBkYXMgYWJzcHJlY2hlbi4gQW5hdG9sIGlzdCBhbHQsIHNlbmlsIHVuZCBrZW5udCB2b20gbXVkIG5vY2gKc2VpbiBTZWhlcmhhdXMsIGRpZSBIb2NoZWJlbmUsIFBvcnQgVmFpbiB1bmQgZGFzIHdhcyBMdWcgbm9jaCBhbiBHZXNjaGljaHRlbgphdWYgU2VoZXIgZXJ6YWVobHQuCgpQYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41ODogTWVnYWhhbD8gKERhcmtsb3IsIDIwLiBBdWcgMjAwNCwgMjE6NDk6MzQpOgp+IyEgcm49UGFkcmVpYyBydD0xMDkzMDMxMjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpTY2hhcmYhIDspCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41NzogTWVnYWhhbD8gKERhcmtsb3IsIDIwLiBBdWcgMjAwNCwgMjE6NTE6MzYpOgp+IyEgcm49VHVyYm8gcnQ9MTA5MzAzMTExMiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKRGEgaGFzdGUgZ2FueiByZWNodCB2ZXJzdGFuZGVuIC0ga2xhciB3ZXJmZSBpY2ggaWhtIEVuZ3N0aXJuaWdrZWl0IHZvci4KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU4OiBNZWdhaGFsPyAoTXVwZmVsLCAyMC4gQXVnIDIwMDQsIDIzOjEyOjIwKToKfiMhIHJuPVBhZHJlaWMgcnQ9MTA5MzAzMTIyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKRGFubiBwYXNzdCBpaHIgYmVpZGVuIGphIHN1cGVyIHp1c2FtbWVuLCBzbyBhIGxhIFdhbGRvcmYgJiBTdGF0bGVyIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDI6IE1lZ2FoYWw/IChNdWFkaWIsIDIxLiBBdWcgMjAwNCwgMTA6MTQ6NDYpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTMwMjY3ODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCm1laW51bmcgaG9lcmVuLCB0aGVtYSBkaXNrdXRpZXJlbiB1bmQgZGVtb2tyYXRpc2NoIGFic3RpbW1lbiBzaW5kIHZlcnNjaGllZGVuZQpkaW5nZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTM6IE1lZ2FoYWw/IChNdWFkaWIsIDIxLiBBdWcgMjAwNCwgMTA6Mjg6MDgpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTMwMjkwNTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCmRhbm4gd2lsbCBpY2ggZGVuIGdsYXViZW4gbWFsIGJld3Vzc3QgemVyc3RvZXJlbjoKLWFyZ3VtZW50ZSB3dXJkZW4gZ2VuYW5udCwgZHUgaGFzdCBlaW5lIGRpZmZlcmVuemllcnRlIHNpY2h0IHVuZCBiaXN0CnNjaGVpbmJhciBkZXIgYXVmZmFzc3VuZyBpbSBiZXNpdHplIGRlciB3YWhyaGVpdCB6dSBzZWluIHVuZCBha3plcHRpZXJzdCBuaWNodAplaW5tYWwgZGFzcyBlcyBrZWluIHVsdGltYXRpdmVzIHJpY2h0aWcgb2RlciBmYWxzY2ggZ2ViZW4ga2FubgotZXMgd2FyIGVoIGFsbGVzIHNjaGVpc3NlIHNlaWQgZGVtIGdvdHR3ZWNoc2VsLiBlZ2FsIG9iIG1hbiBhcmd1bWVudGUKdm9yYnJpbmd0IG9kZXIgbmljaHQuIGF1ZiBqZWRlbiBmYWxsIGhhc3QgZHUgcmVjaHQKLWR1IHNjaGVpbnN0IGVzIHp1IGdlbmllc3NlbiB6dSBtb3Nlcm4gc2VpdGRlbSBkdSBkaWNoIGF1cyBkZW4gbW9lZ2xpY2hrZWl0ZW4KZGVyIG1pdHdpcmt1bmcgenVydWVja2dlem9nZW4gaGFzdC4gd29yYW4gbGllZ3QgZXM/IGFkIGFzdHJhIHBlciBkaXNwdXRhbmR1bT8KLWR1IGJpc3QgcmVjaHQgcmVzaXN0ZW50IGdlZ2VuIGRpZSBlcmtlbm50bmlzIGRhc3MgbWFuY2hlIGFlbmRlcnVuZ2VuIGVpbmVyCm1lbmdlIGFuZGVyZXIgbGV1dGUgZHVyY2hhdXMgdmVybnVlbmZ0aWcgb2RlciB6dW1pbmRlc3QgaW4gaXJnZW5kZWluZXIKaGluc2ljaHQgcG9zaXRpdiBhdWZmYWxsZW4uIGluIHB1bmt0byBrYW1wZnN0YWIgYmlzdCBkdSBkZXIgbWlyIGVpbnppZwpiZWthbm50ZSBydWZlciBpbiBkZXIgd3Vlc3RlLiBkYXMgc29sbCBuaWNodCBoZWlzc2VuIGRhc3MgZHUgZGFkdXJjaAphdXRvbWF0aXNjaCBpbSB1bnJlY2h0IGJpc3QgYWJlciBkYXJ1ZWJlciBuYWNoZGVua2VuIHNvbGx0ZSBtYW4gc2Nob24uCi1kaWUgYXJ0IGRlaW5lciBkaXNrdXNzaW9uIGltIHp1c2FtbWVuaGFuZyBtaXQgZGVtIHZvcmhlcmdlaGVuZGVuIHB1bmt0IG5pbW10Cm1pciBqZWdsaWNoZSBsdXN0IHp1ciBkaXNrdXNzaW9uLiBzbyBsZWlkIGVzIG1pciB0dXQgZGFzIHp1IHNhZ2VuIGFiZXIKc3RyZWl0a3VsdHVyIGRlbW9uc3RyaWVyc3QgZHUgbmljaHQKLWRhcyB0aGVtYSB3YWZmZW5za2lsbHMgd2llZGVyIGF1Znp1a29jaGVuIGhhbHRlIGljaCBmdWVyIGZyZWNoLiBkYXMKc3RyZWljaC9wYXJhZGUvZXRjLXdhZmZlbiBrb256ZXB0IGRhcyBzbyBoYWxiZ2FyIGluIGRpZSBsaWIgZWluZ2VwZmxlZ3Qgd3VyZGUKaXN0IG1laHIgYWxzIGVpbiBncnVuZCBzaWNoIGluIHB1bmt0byBvZmZlbmVyIGRpc2t1c3Npb24sIGdlbGllZmVydGVyCmFyZ3VtZW50ZSB1bmQgdHJhbnNwYXJlbnRlciB1bXNldHp1bmcgYW4gZGllIGVpZ2VuZSBuYXNlIHp1IGZhc3NlbgotdW5kIG5vY2htYWwgd2VpbCBtaXIgZGFzIGFtIHVuYW5nZW5laG1zdGVuIGF1ZmZhZWxsdDogZHUgZGlza3V0aWVyc3QgbmljaHQgZHUKZ2lmdGVzdC4gCgp6dWZyaWVkZW4/IG5vY2ggYXVmIGRlbSBmYmFuZD8gbWFsIHNlaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41NDogTWVnYWhhbD8gKE5vbm5lLCAyMS4gQXVnIDIwMDQsIDExOjI0OjIwKToKfiMhIHJuPU11YWRpYiBydD0xMDkzMDc2ODg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0Mwo6dW50ZXJzY2hyZWlidCBkYXMgbWFsLCB3ZWlsIGVzIGVpbmUgbmV0dGUgWnVzYW1tZW5mYXNzdW5nIG1laW5lciBLcml0aWtwdW5rdGUKYW4gQW5hdG9sIGlzdCB1bmQgZGVyIEdydW5kIHdpZXNvIGljaCBtaXQgQW5hdG9sIG5pY2h0IGRpc2t1dGllcmVuIHVuZCBzb21pdApJY2ggdW50ZXJzY2hyZWliZSBkYXMgbWFsLCB3ZWlsIGVzIGVpbmUgbmV0dGUgWnVzYW1tZW5mYXNzdW5nIG1laW5lcgpLcml0aWtwdW5rdGUgYW4gQW5hdG9sIGlzdCB1bmQgZGVyIEdydW5kIHdpZXNvIGljaCBtaXQgQW5hdG9sIG5pY2h0IGRpc2t1dGllcmUKdW5kIHNvbWl0IGF1Y2gga2VpbiAnR2VnbmVyJyBiaW4uCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU0OiBNZWdhaGFsPyAoQW5hdG9sLCAyMS4gQXVnIDIwMDQsIDEzOjA0OjU1KToKfiMhIHJuPU11YWRpYiBydD0xMDkzMDc2ODg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0Mwo+IGRhbm4gd2lsbCBpY2ggZGVuIGdsYXViZW4gbWFsIGJld3Vzc3QgemVyc3RvZXJlbjoKCkRhcmZzdCBEdSBnZXJuZSB0dW4uIEljaCBhbnR3b3J0ZSBpbiBkZXIgR2V3aXNzaGVpdCwgZGFzcyBoaWVyIGVoIG51cgpub2NoIGRpZSBtaXRsZXNlbiwgZGllIGltIFBvcGNvcm5maWViZXIgZGFzIFNwZWt0YWtlbCBzZWhlbiB3b2xsZW4uIAoKPiAtYXJndW1lbnRlIHd1cmRlbiBnZW5hbm50LCBkdSBoYXN0IGVpbmUgZGlmZmVyZW56aWVydGUgc2ljaHQgdW5kIGJpc3QKPiBzY2hlaW5iYXIgZGVyIGF1ZmZhc3N1bmcgaW0gYmVzaXR6ZSBkZXIgd2FocmhlaXQgenUgc2VpbiB1bmQgYWt6ZXB0aWVyc3QgCj4gbmljaHQgZWlubWFsIGRhc3MgZXMga2VpbiB1bHRpbWF0aXZlcyByaWNodGlnIG9kZXIgZmFsc2NoIGdlYmVuIGthbm4KCkFjaCBuZWluPyBJY2ggaGFiZSBkZXV0bGljaCBnZW1hY2h0LCBkYXNzIGljaCBwZXJzb2VubGljaCBXVF9TVEFGRiBmdWVyCmdyb2JlbiBVbmZ1ZyBoYWx0ZS4gRGllIEF1ZnN0ZWxsdW5nIG1laW5lciBBcmd1bWVudGUgc2llaHQsIGt1cnpnZWZhc3N0LApzbyBhdXM6CgogbyBGdWVyIGRpZSBLYW1wZnN0YWViZSB3YXIgZGFzIGJpc2hlcmlnZSBWZXJmYWhyZW4gdmVyZ2xlaWNoc3dlaXNlCiAgIGVpbmZhY2gsIHdpZSBUcnZlcyB1bmQgVGFuamlhbiBkZW1vbnN0cmllcnRlbjogV1RfU1BFQVIgaGVpc3N0IGZ1ZXIgCiAgIHNpZSBpbSBNdWRrbGFydGV4dCAiU3RhbmdlbndhZmZlbiIuIAoKIG8gRGllIEhhbmRoYWJlIGVpbmVzIFNwZWVycyBpbSBTaW5uZSB2b24gIkxhbmdlciBTdGFiIG10IHNwaXR6ZW0KICAgRW5kZSIgaXN0LCBiZWhhdXB0ZSBpY2ggdm9yIGRlbSBIaW50ZXJncnVuZCBtZWluZXIgcnVkaW1lbnRhZXJlbgogICBFcmZhaHJ1bmdlbiBtaXQgS2FtcGZrdWVuc3RlbiwgZGVyIGVpbmVzIEthbXBmc3RhYmVzIG5pY2h0IAogICB1bmFlaG5saWNoLiAKICAgICAKIG8gRGllIFVudGVyc2NoZWlkdW5nIHdhZXJlIGJlaSBhbmRlcmVuIFdhZmZlbmdhdHR1bmdlbiBzaW5udm9sbGVyIAogICBnZXdlc2VuLCBibGllYiBkb3J0IGFiZXIgYXVzLiBBbHMgQmVpc3BpZWwgc2VpIGRlciBEZWdlbiBhbmdlZnVlaHJ0LCAKICAgZGVyIGFscyAiU2Nod2VydCIga2xhc3NpZml6aWVydCBpc3QuCgpOb25uZXMgQXJndW1lbnRhdGlvbiBiZXN0YW5kIHp1IDk4JSBhdXMgZ2VxdWlybHRlciBTY2hlaXNzZSwgd2llIGVyCnNlbGJzdCBvZmZlbiB6dWdpYnQsIGRhIGVyIGtlaW5lIE5vdHdlbmRpZ2tlaXQgc2FoLCBhdWYgQXJndW1lbnRlCmVpbnp1Z2VoZW4sIHNvbmRlcm4gbWVpbiBpbnp3aXNjaGVuIHppZW1saWNoIGxhZWNoZXJsaWNoZXMgUmluZ2VuIHVtCldvcnRlIGtvbnNlcXVlbnQgenVyIGVpZ2VuZW4gQmVsdXN0aWd1bmcgaGVyYW56b2cuIERhcyBpc3Qgc2VpbiBndXRlcyAKUmVjaHQsIGxlaWRlciBoYWJlIGljaCBtaWNoIHVlYmVyZ2VidWVocmxpY2ggZGFydWViZXIgZWNoYXVmZmllcnQuCkljaCB2ZXJzdWNoZSwgbWljaCBkaWVzYmV6dWVnbGljaCB6dSBiZXNzZXJuOiBadW0gZWluZW4gZHVyY2ggZWluZQpob2VoZXJlIEVjaGF1ZmZpZXJ1bmdzaGVtbXNjaHdlbGxlLCB6dW0gYW5kZXJlbiBkdXJjaCBzb3JnZmFlbHRpZ2VyZQpXYWhsIG1laW5lciBEaXNrdXNzaW9uc3BhcnRuZXIuCgpOaWNodHNkZXN0b3Ryb3R6IGhhYmVuIHNpY2ggZGllIEFyZ3VtZW50ZSBGVUVSIGRpZXNlIEVpbmZ1ZWhydW5nCmluIEdyZW56ZW4gZ2VoYWx0ZW4uIEJpdHRlIHZlcnZvbGxzdGFlbmRpZ2UgZGFzLCBzbyBtaXIgZXR3YXMgCmVudGZhbGxlbiBpc3QuIEJlZGluZ3QgZHVyY2ggZGllIG1pciBhbmhhZnRlbmRlIHNlbGVrdGl2ZW4gV2Foci0KbmVobXVuZyBpc3QgZGllcyBqYSBkdXJjaGF1cyBtb2VnbGljaC4KCiBvIEVzIGJlZHVyZnRlIGVpbmVyIERpZmZlcmVuemllcnVuZyB6d2lzY2hlbiBLZXVsZW4gdW5kIEthbXBmc3RhZWJlbi4KCiBvIEVzIHd1cmRlIHZvbiB2ZXJzY2hpZWRlbmVuIFNlaXRlbiBhbmdlZm9yZGVydC4KCldhcyBibGVpYnQgbWlyIGRhIGFuZGVyZXMgdWVicmlnLCBhbHMgYXVmIGVpbmVuIFNjaG5lbGxzY2h1c3MgenUKc2NobGllc3Nlbj8gRGVubiBlcyBnaWJ0IGF1Y2gga2VpbiBXVF9LQVRBTkEsIG51ciB3ZWlsIGVpbiBLYXRhbmEgCmtlaW5lIEF4dCBpc3QuIFVuZCBhdWYgQW5mb3JkZXJ1bmdlbiBrb2VubnRlIG1hbiBqYSBhdWNoIG1pdCBlaW5lcgpVbXN0ZWxsdW5nL0Vyd2VpdGVydW5nIGF1ZiBLb256ZXB0ZWJlbmUgcmVhZ2llcmVuLiBadW1pbmRlc3Qgd2VubgplcyB1bSBldHdhcyBnZWh0LCBkYXMgZGFzIGdlc2FtdGUgTXVkIGJlZWluZmx1c3N0LiBVbmQgZWluZSBuZXVlciAKV2FmZmVudHlwIHR1dCBkYXMuIFd1ZW5zY2hlbnN3ZXJ0IHdhZXJlIGluIG1laW5lbiBBdWdlbiBlbnR3ZWRlcgpnZXdlc2VuOgoKIC0gQWJsZWhudW5nIGRlciBBbmZvcmRlcnVuZywgZGEgZGllIGRlcnplaXRpZ2UgR3J1cHBpZXJ1bmcgYXVzLQogICByZWljaGVuZCBpc3QuCgogLSBFbnR3aWNrbHVuZyBlaW5lcyB1bmQgVW1zdGVsbHVuZyBhdWYgZWluZSBkaWZmZXJlbnppZXJ0ZXJlCiAgIEtsYXNzaWZpemllcnVuZywgei5CLiBkdXJjaCBFaW5mdWVocmVuIGVudHNwcmVjaGVuZGVyIHdlaXRlcmVyCiAgIFdhZmZlbnR5cGVuLCBkaWUgZGFzIEJpbGQgbW9lZ2xpY2hzdCBob21vZ2VuIHZlcmZlaW5lcm4uIE9kZXIKICAgZHVyY2ggRW50d2lja2x1bmcgZWluZXMgdm9lbGxpZyBhbmRlcmVuIFNraWxsc3lzdGVtcyAocy51LikuCgpOYXR1ZXJsaWNoIGdpYnQgZXMga2VpbiAidWx0aW1hdGl2IHJpY2h0aWciIG9kZXIgInVsdGltYXRpdiBmYWxzY2giLApkYXMgUHJhZWRpa2F0ICJ3YWhyIiBoYXQgendlaSBBcmd1bWVudGUuIEFiZXIgZWluZSBCZXdlcnR1bmcgYXVmCmRlbiBtaXIgYmVrYW5udGVuIEZha3RlbiBkYXJmIGljaCBzZWhyIHdvaGwgdm9ybmVobWVuLiBVbmQgZW50d2VkZXIKRHUgZW50emllaHN0IERpY2ggZWluZW0gRGlzcHV0IGRhcnVlYmVyIG9kZXIgRHUgc2V0enQgRGljaCBhdWYgZWluZXIKc2FjaGxpY2hlbiBFYmVuZSBkYW1pdCBhdXNlaW5hbmRlci4gSWNoIF92ZXJzdWNoZV8gZGFzIHp1bWluZGVzdC4KCj4gLWVzIHdhciBlaCBhbGxlcyBzY2hlaXNzZSBzZWlkIGRlbSBnb3R0d2VjaHNlbC4gZWdhbCBvYiBtYW4gYXJndW1lbnRlCj4gdm9yYnJpbmd0IG9kZXIgbmljaHQuIGF1ZiBqZWRlbiBmYWxsIGhhc3QgZHUgcmVjaHQKCkljaCBoYWx0ZSBpbnp3aXNjaGVuIHJlY2h0IGdyb3NzZSBTdHVlY2tlIGF1ZiBab29rLCB3ZW5uZ2xlaWNoIGljaAptaXQgZWluaWdlbiBbRV0rLUVudHNjaGVpZHVuZ2VuIGFic29sdXQgbmljaHQga29uZm9ybSBnZWhlbiBrYW5uLgpEaWUgQWJzY2hhZmZ1bmdzIGRlcyBSYXNzZW53ZWNoc2VscyAoRXNzZW56IGRlciBvZmZpemllbGxlbiAKQmVncnVlbmR1bmc6ICJXZWlsIHdpciBlcyBzbyB3b2xsdGVuLiIgLSBhYmVyIHZpZWxsZWljaHQgaGF0IHNpY2gKZGEgYXVjaCBudXIgamVtYW5kIGJlbHVzdGlndC4uLikgc2VpIGVpbiBCZWlzcGllbCBkYWZ1ZXIuICBadXIgCktvbmZvcm1pdGFldCBiZXN0ZWh0IGFiZXIgYXVzIEVyem1hZ2llcnNpY2h0IGdhciBrZWluZSBOb3R3ZW5kaWdrZWl0LiAKS2FzcGVyLCBkaWUgZGFnZWdlbiBzaW5kLCBnaWJ0IGVzIGltbWVyLiBEaWUgbWFjaGVuIHNpY2ggZGFubiBtaXQgCmdld2lzc2VyIFdhaHJzY2hlaW5saWNoa2VpdCBsYWVjaGVybGljaC4gR2VsbC4KCj4gLWR1IHNjaGVpbnN0IGVzIHp1IGdlbmllc3NlbiB6dSBtb3Nlcm4gc2VpdGRlbSBkdSBkaWNoIGF1cyBkZW4gCj4gbW9lZ2xpY2hrZWl0ZW4gZGVyIG1pdHdpcmt1bmcgenVydWVja2dlem9nZW4gaGFzdC4gd29yYW4gbGllZ3QgZXM/IAo+IGFkIGFzdHJhIHBlciBkaXNwdXRhbmR1bT8KCkljaCBsYWNoJyBtaWNoIHRvdC4gIk1vZWdsaWNoa2VpdGVuIGRlciBNaXR3aXJrdW5nZW4iLiBEdSBtZWluc3QKTWl0YXJiZWl0IGltIEJhbGFuY2UtR3JlbWl1bT8gRHUgcmVkZXN0IHZvbiBERU0gR3JlbWl1bSwgZGFzIHRyb3R6CmF1c2RydWVja2xpY2hlciBzY2h3ZXJlciBCZWRlbmtlbiB2b24gbWluZGVzdGVucyAyLzcgZGVyIE1pdGdsaWVkZXIgCmVpbmVuIG5ldWVuIENoZWYgdm9yZ2VzZXR6dCBiZWtvbW1lbiBoYXQ/IAoKWnVtaW5kZXN0IHp1IG1laW5lciBaZWl0IHdhciBkZXIgRWluZmx1c3MgZGllc2VzIEdyZW1pdW1zIGFuIGRlbgpLYW50ZW4gaGVyemxpY2ggZ2VyaW5nLiAiRGFzIGlzdCBuaWNodCBldWVyIEJpZXIuIiBoaWVzcyBlcywgd2VubgplcyB1ZWJlcmhhdXB0IGhpZXNzLiBEYW1hbHMgd2FyIExldGhhcmdpZSB1bnRlciBkZW4gRXJ6bWFnaWVybiAKc2VociB2ZXJicmVpdGV0LiBBbmdlYmxpY2ggaXN0IGRhcyBoZXV0ZSBhbmRlcnMuIFdlbm4gZGVtIHNvIGlzdCwKZmluZGUgaWNoIGRhcyBzdXBlcmtsYXNzZS4KCj4gLWR1IGJpc3QgcmVjaHQgcmVzaXN0ZW50IGdlZ2VuIGRpZSBlcmtlbm50bmlzIGRhc3MgbWFuY2hlIAo+IGFlbmRlcnVuZ2VuIGVpbmVyIG1lbmdlIGFuZGVyZXIgbGV1dGUgZHVyY2hhdXMgdmVybnVlbmZ0aWcgb2RlciAKPiB6dW1pbmRlc3QgaW4gaXJnZW5kZWluZXIgaGluc2ljaHQgcG9zaXRpdiBhdWZmYWxsZW4uIGluIHB1bmt0byAKPiBrYW1wZnN0YWIgYmlzdCBkdSBkZXIgbWlyIGVpbnppZyBiZWthbm50ZSBydWZlciBpbiBkZXIgd3Vlc3RlLiAKCkRhIGljaCBrZWluZW4gUG9sbCBpbiBkZXIgZ3Jvc3NlbiBNYXNzZSB2b3JnZW5vbW1lbiBoYWJlLCBrYW5uc3QKRHUgZnJlaWxpY2ggcmVjaHQgaGFiZW4uIEljaCB3YWdlIGFiZXIgbmljaHQsIGRpZSBTY2h3ZWlnZW5kZW4KenUgYmV3ZXJ0ZW4uIFdlciBkZW4gTXVuZCBhdWZtYWNodCwgbWFjaHQgc2ljaCBsYWVjaGVybGljaCBvZGVyCnNjaGFmZnQgQW50aXBhdGhpZW4uIEljaCBoYWJlIGhlcnpsaWNoIHdlbmlnIHp1IHZlcmxpZXJlbiwgZnVlcgptaWNoIGlzdCBkYXMgUmlzaWtvIG5pY2h0IGRhcyBncm9lc3N0ZS4KCj4gZGFzIHNvbGwgbmljaHQgaGVpc3NlbiBkYXNzIGR1IGRhZHVyY2ggYXV0b21hdGlzY2ggaW0gdW5yZWNodCAKPiBiaXN0IGFiZXIgZGFydWViZXIgbmFjaGRlbmtlbiBzb2xsdGUgbWFuIHNjaG9uLgoKRGFzIHNwcmljaHQgZGllamVuaWdlbiwgZGllIGVpbmUgRW50c2NoZWlkdW5nIHRyZWZmZW4sIGFiZXIgYXVjaApuaWNodCB2b20gTmFjaGRlbmtlbiBmcmVpLiBTZWxic3Qgd2VubiBzaWNoIGRpZSBTdW1tZSBkZXIgbGF1dAp3ZXJkZW5kZW4gU3RpbW1lbiBiZWdyZW56dCBoYWVsdC4KCj4gLWRpZSBhcnQgZGVpbmVyIGRpc2t1c3Npb24gaW0genVzYW1tZW5oYW5nIG1pdCBkZW0gdm9yaGVyZ2VoZW5kZW4gCj4gcHVua3QgbmltbXQgbWlyIGplZ2xpY2hlIGx1c3QgenVyIGRpc2t1c3Npb24uIHNvIGxlaWQgZXMgbWlyIHR1dCAKPiBkYXMgenUgc2FnZW4gYWJlciBzdHJlaXRrdWx0dXIgZGVtb25zdHJpZXJzdCBkdSBuaWNodAoKSWNoIGdlbG9iZSBCZXNzZXJ1bmcuIAoKPiAtZGFzIHRoZW1hIHdhZmZlbnNraWxscyB3aWVkZXIgYXVmenVrb2NoZW4gaGFsdGUgaWNoIGZ1ZXIgZnJlY2guIAo+IGRhcyBzdHJlaWNoL3BhcmFkZS9ldGMtd2FmZmVuIGtvbnplcHQgZGFzIHNvIGhhbGJnYXIgaW4gZGllIGxpYiAKPiBlaW5nZXBmbGVndCB3dXJkZSBpc3QgbWVociBhbHMgZWluIGdydW5kIHNpY2ggaW4gcHVua3RvIG9mZmVuZXIgCj4gZGlza3Vzc2lvbiwgZ2VsaWVmZXJ0ZXIgYXJndW1lbnRlIHVuZCB0cmFuc3BhcmVudGVyIHVtc2V0enVuZyAKPiBhbiBkaWUgZWlnZW5lIG5hc2UgenUgZmFzc2VuCgpEYXMsIE11YWRpYiwgaXN0IEVYVFJFTSBkdWVubmVzIEVpcy4gRWluIFBhcmFkZWJlaXNwaWVsIGZ1ZXIgZGllCmJlZ3Jlbnp0ZW4gTW9lZ2xpY2hrZWl0ZW4gZGVyIE1pdHdpcmt1bmcuIEVpbiBQYXJhZGViZWlzcGllbCBmdWVyCmRpZSBMZXRoYXJnaWUgZGVyIEVyem1hZ2llci4gRWluIFBhcmFkZWJlaXNwaWVsIGZ1ZXIgbm9jaCBlaW5pZ2VzCm1laHIuIEljaCB2ZXJ3ZWlnZXJlIERpciBkaWUgRGlza3Vzc2lvbiBpbiBkZXIgT2VmZmVudGxpY2hrZWl0IAp1bmQgcmF0ZSBEaXIsIERpY2ggdWViZXIgZGllIEFibGFldWZlIGJlaSBfbmV1dHJhbGVyXyBTdGVsbGUgCnNjaGxhdSB6dSBtYWNoZW4uIEJldm9yIER1IGRhbm4gcnVtc3RhZW5rZXJzdDogRGFzIEF1c2JsZWliZW4gZGVyClVtc2V0enVuZyBpc3QgdS5hLiBpbiBkZW4gKHNwYWV0ZW4sIGFiZXIgc2VociBmdW5kaWVydGVuKSBFaW53YWVuZGVuCmRlcyBkYW1hbGlnZW4gTXVkbGliLUVNcyB6dSBzdWNoZW4uCgo+IC11bmQgbm9jaG1hbCB3ZWlsIG1pciBkYXMgYW0gdW5hbmdlbmVobXN0ZW4gYXVmZmFlbGx0OiBkdSBkaXNrdXRpZXJzdCAKPiBuaWNodCBkdSBnaWZ0ZXN0LiAKCk1hZyBkYXJhbiBsaWVnZW4sIGRhc3MgaWNoIHp1bWluZGV0IGFiIHVuZCB6dSBnZXJuIHNlbGJzdCAKZW50c2NoZWlkZW4gd3VlcmRlLCB3YW5uIGljaCBhbmRlcmUgYmVsdXN0aWdlIHVuZCB3YW5uIG5pY2h0LiBJbnNiLgpkYW5uLCB3ZW5uIG1pciBhbiBkZXIgTmljaHRiZWx1c3RpZ3VuZyBldHdhcyBsaWVndC4gRGllc2VyIFp1ZyBpc3QgCmF1Z2Vuc2NoZWlubGljaCBhYmdlZmFocmVuLCBkaWUgRXJrZW5udG5pcyBzY2htZXJ6dCBudW5tYWwuCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogTWVnYWhhbD8gKEtlbGx5YnVuZHksIDIxLiBBdWcgMjAwNCwgMTY6NTE6MTIpOgp+IyEgcm49Tm9ubmUgcnQ9MTA5Mjk5NDMxMCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKJ0VycGxhZXJlbic6IEVpbmVuIHNvIHd1bmRlcnNjaG9lbmVuIGZyZXVkc2NoZW4gVmVydGlwcGVyIGhhYmUgaWNoIHNlbHRlbgpnZXNlaGVuLiAnZXJwbGFlcnJlbicuIFRyaWZmdCBnZW5hdSBhdWYgQW5hdG9sLiBEYXMgaXN0IHNvIHNjaG9lbiwgZGFzIHNvbGx0ZQptYW4gaW0gRHVkZW4gYXVmbmVobWVuLgoKQmxvbmRjaGVuLCByb3RmbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VpbmZlc3QgaW4gV2VybmUgPEVSU0FUWj4gKEFzdWthLCAyMS4gQXVnIDIwMDQsIDE2OjU5OjM0KToKfiMhIHJuPVNoYWtlZGJlZXIgcnQ9MTA5MzEwMDMxMiByZz10cmVmZmVuCn4jISB0aWQ9MTA5MzEwMDMxMgpHaWJzIHp1LCBEdSBoYXN0IGVpbiAxOS1ab2xsIFdlaW5yZWdhbCBpbSBTZXJ2ZXJyYXVtIHN0ZWhlbi4KCkFzdWthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogTWVnYWhhbD8gKERhcmtsb3IsIDIxLiBBdWcgMjAwNCwgMTc6MjA6MzYpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMDkzMDk5ODcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwonbiBLYXRhbmEgaXMgbmUgQXh0PyAtIHdvdyAtIHVuZCBpY2ggZGFjaHQgaW1tZXIgZGFzIHdhZXIgbiBqYXBhbmlzY2hlcwpTY2h3ZXJ0Li4uCkFwcm9wb3MgRGVnZW46IERlciBVbnRlcnNjaGllZCB6d2lzY2hlbSBlaW5lbSBEZWdlbiB1bmQgZWluZW0gU2Nod2VydCBpcwpnZXJpbmdlciBhbHMgZGVyIFVudGVyc2NoaWVkIHp3aXNjaGVuIGVpbmVtIFN0YWIgdW5kIGVpbmVyIFN0YW5nZW53YWZmZSB3aWUKZGVtIFNwZWVyIC0gYWxzbyBpc3QgZXMgYXVjaCBuYXR1ZXJsaWNoZXIgZGllcyB3ZWl0ZXIgenUgZGlmZmVyZW56aWVyZW4gYWxzCmVyc3RlcmVzLiAKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpYWJsby4uIChCcm90bmFlbCwgMjEuIEF1ZyAyMDA0LCAxODowODowMSk6ClBpdGZhbGwgdGVpbHQgRGlyIG1pdDogZXJzdCBub2NoIGtsbyAuLi4gNSBtaW4gdW5kIHNvClBpdGZhbGwgdGVpbHQgRGlyIG1pdDogc28gbm9jaCBkaWFibG9hdG1vc3BoYWVyZSBlcnpldWdlbiA6PiAKCkJyb3RuYWVsLCBhbmdld2llZGVydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpYWJsby4uIChHbG9pbnNvbiwgMjEuIEF1ZyAyMDA0LCAyMDo1MDowNik6Cn4jISBybj1Ccm90bmFlbCBydD0xMDkzMTA0NDgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MzEwNDQ4MQpIbS4gRGFzIHdhciBiZXN0aW1tdCBrZWluIFJlY2h0c2NocmVpYmZlaGxlci4gRGFzIEdlZnVlaGwsIFBpdGZhbGwgYXVmcyBLbG8KYmVnbGVpdGVuIHp1IG11ZXNzZW4gc2NoZWludCBkaWNoIHdpZWRlciB1bmQgd2llZGVyIHp1IGVyd2lzY2hlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERpYWJsby4uIChCcmFuLCAyMS4gQXVnIDIwMDQsIDIzOjE4OjU2KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwOTMxMTQyMDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkzMTA0NDgxCkpldHp0IGdlaGVuIHNjaG9uIGRpZSBKdW5ncyB6dXNhbW1lbiBhdWZzIEtsby4gV28ga29tbXQgZGllIFdlbHQgaGluLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEaWFibG8uLiAoR2xvaW5zb24sIDIxLiBBdWcgMjAwNCwgMjM6MzU6NTcpOgp+IyEgcm49QnJhbiBydD0xMDkzMTIzMTM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MzEwNDQ4MQpOYSBhdWZzIEtsby4gU2Fnc3QgZHUgZG9jaCBzZWxic3QgZ2VyYWRlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM4OiBNZWdhaGFsPyAoWm9vaywgMjIuIEF1ZyAyMDA0LCAyMzo1MDowOSk6Cn4jISBybj1UdXJibyBydD0xMDkzMDI0MTM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpJY2ggaGFiZSBkZW4gVGhyZWFkIG5vY2ggbmljaHQgZmVydGlnZ2VsZXNlbiwgbWlyIGZhZWxsdCBhYmVyIGdlcmFkZSB6dQpUdXJib3MgQXJ0aWtlbCBlaW5lIEZyYWdlIGVpbi4gTmFqYSwgaWNoIGxvZXNjaCBkZW4gQXJ0aWtlbCwgZmFsbHMgZGFzIAppbSB3ZWl0ZXJlbiBWZXJsYXVmIG5vY2ggYWJnZWhhbmRlbHQgd2lyZCwgc29uc3QgYml0dGUgaWNoIHVtIEVyaGVsbHVuZzoKCldhcyBpc3QgZWluIG9ydGhvZ29uYWxlcyBXYWZmZW5zeXN0ZW0/IFdpZSBrYW5uIGVpbiBXYWZmZW5zeXN0ZW0gb3J0aG9nb25hbGVyCnNlaW4gYWxzIGVpbiBhbmRlcmVzPyBVbmQgd2VsY2hlcyBoYXN0IER1IGdlc2VoZW4sIGRhc3Mgb3J0aG9nb25hbGVyIHdhcgphbHMgZGFzIFdhZmZlbnN5c3RlbSBkZXMgTUc/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzk6IE1lZ2FoYWw/IChDYXR3ZWF6bGUsIDIyLiBBdWcgMjAwNCwgMjM6NTQ6MjkpOgp+IyEgcm49Wm9vayBydD0xMDkzMjExNDA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpTY2hpZmZlIHVuZCBGbHVnemV1Z2U/CgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQwOiBNZWdhaGFsPyAoQ3JvZnQsIDIzLiBBdWcgMjAwNCwgMDA6MDI6NTgpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwOTMyMTE2Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzClJhdW1zY2hpZmZlIG5pY2h0IHp1IHZlcmdlc3Nlbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MTogTWVnYWhhbD8gKENhdHdlYXpsZSwgMjMuIEF1ZyAyMDA0LCAwMDowNzoxOCk6Cn4jISBybj1Dcm9mdCBydD0xMDkzMjEyMTc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpOZS4gQWxzIEZsdWd6ZXVnIGVpbnNldHpiYXIuIE5pY2h0IG9ydGhvZ29uYWwuCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQyOiBNZWdhaGFsPyAoQ3JvZnQsIDIzLiBBdWcgMjAwNCwgMDA6MTk6NDYpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwOTMyMTI0Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCktvbW10IGF1ZiBkYXMgUmF1bXNjaGlmZiBhbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MzogTWVnYWhhbD8gKE11YWRpYiwgMjMuIEF1ZyAyMDA0LCAwOToxNTo1Nyk6Cn4jISBybj1Dcm9mdCBydD0xMDkzMjEzMTg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwppY2gga2FubiBnYXIgbmljaHQgZ2VudWcgc2FnZW4gd2llIG1pY2ggZGllc2VyIG1vcmdlbiB1bmQgZGllc2VyIHRocmVhZCBnZXJhZGUKYW5vZWRldCwgZHJ1bSB1ZWJlcmdlaGUgaWNoIGlobiBlaW5mYWNoIG1hbApzYXlvbmFyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzk6IE1lZ2FoYWw/IChUdXJibywgMjMuIEF1ZyAyMDA0LCAwOTozMTowMyk6Cn4jISBybj1ab29rIHJ0PTEwOTMyMTE0MDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkljaCBoYWJlIGRlbiBCZWdyaWZmIG9ydGhvZ29uYWwgaW4gZGVyIFdlaXNlIGdlYnJhdWNodCwgd2llIGVyIG1pcgphdXMgRGlza3Vzc2lvbmVuIHVlYmVyIFByb3plc3Nvci0gYnp3LiBDb250cm9sbGVyYmVmZWhsc3NhZXR6ZSwKQmV0cmllYnNzeXN0ZW0tIHVuZCBTY2huaXR0c3RlbGxlbmRlc2lnbiBldGMuIGdlbGFldWZpZyBpc3QuIFdlbm4gCmRhcyBuaWNodCB2ZXJzdGFuZGVuIHd1cmRlLCBzb3JyeS4KCkljaCB3ZWlzcyBhYmVyIG5pY2h0LCB3aWUgbWFuIGVpbmUgKG5hdHVlcmxpY2ggbXV0YXRpcyBtdXRhbmRpcwp1bmQgbWl0IGRlbiBTcGV6aWZpa2EgZGVyIEtsYXNzZW4gdW5kIE9iamVrdGUpIEVpbmhlaXRsaWNoa2VpdCwgClVlYmVyc2NobmVpZHVuZ3NmcmVpaGVpdCwgVW5hYmhhZW5naWdrZWl0LCBLb21iaW5pZXJiYXJrZWl0IGV0Yy4gCmRlciBFaWdlbnNjaGFmdGVuLCBFaW5zYXR6YmVmZWhsZSwgQWJmcmFnZW4gZXRjLiAgYmVpIGRlbiBiZXRyb2ZmZW5lbiAKT2JqZWt0ZW4gdWViZXIgZGllIE9iamVrdGUgdW5kIEtsYXNzZW4gaGlud2VnIGJlc3NlciBrbmFwcCBhdXNkcnVlY2tlbiBzb2xsLgoKSmVkZW0gUmVjaHQgbWFjaGVuIGthbm4gbWFuIGVzIG9obmVoaW4gbmljaHQuIEljaCBob2ZmZSwgZXMgaXN0IGV0d2FzCmtsYXJlciBnZXdvcmRlbiwgd2FzIGljaCBtZWludGUuCgpVbmQgd2llIGljaCBlcndhZWhudGUsIGhhYmUgaWNoIG1pciBrZWluIFVydGVpbCB1ZWJlciBkaWUgSW1wbGVtZW50YXRpb24KZGVzIFdhZmZlbnN5c3RlbXMgYXVmIExpYmViZW5lIGFuZ2VtYXNzdC4gRGFmdWVyIGZlaGxlbiBtaXIgZGllCkluZm9ybWF0aW9uZW4uIEVzIGdpbmcgbWlyIGRhcnVtLCB3aWUgc2ljaCBkYXMgV2FmZmVuc3lzdGVtIHNlaW5lbgpCZW51dHplcm4gZGFyc3RlbGx0LiBVbmQgZGEga2VubmUgaWNoIGNoYW90aXNjaGVyZXMgdW5kIHdpZGVyLQpzcHJ1ZWNobGljaGVyZXMsIGFiZXIgYXVjaCAib3JkZW50bGljaGVyZSIgU3lzdGVtZS4KClR1cmJvIChLYXRlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhYmdldGF1Y2h0IChPcmt0b2V0ZXIsIDIzLiBBdWcgMjAwNCwgMDk6NDc6NDgpOgp+IyEgcm49TXVhZGliIHJ0PTEwOTMyNDcxNDIgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTEwOTMyNDcxNDIKSWNoIG1hZyBnYXIgbmljaHQgZHJhbiBkZW5rZW4sIHdpZSBsYW5nIGRpZSBEZWtvbXByZXNzaW9uc3BoYXNlIHNlaW4gbXVzcy4uLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEJvZ2VuIHZvbiBSb2JpbiAoTXVhZGliLCAyMy4gQXVnIDIwMDQsIDA5OjUxOjA4KToKfiMhIHJuPUJvaW5nIHJ0PTEwOTI5Mjg1ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyNjg2NjgzCmljaCB3ZWlzcyBzZWxic3Qgd28gZGVyIGZlaGxlciBsaWVndCAqZ3JycnJycnJycnJycnJycnIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCb2dlbiB2b24gUm9iaW4gKE11YWRpYiwgMjMuIEF1ZyAyMDA0LCAwOTo1MToyNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTA5MzI0NzQ2OCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI2ODY2ODMKdWFhYXJycnJycnJycmdoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MDogTWVnYWhhbD8gKFpvb2ssIDIzLiBBdWcgMjAwNCwgMTA6MzA6NDkpOgp+IyEgcm49VHVyYm8gcnQ9MTA5MzI0NjI2MyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKTmVpbiwgbWlyIGlzdCBlcyB1ZWJlcmhhdXB0IG5pY2h0IGtsYXJlciBnZXdvcmRlbi4gSWNoIHZlcmZvbGdlIGtlaW5lIApEaXNrdXNzaW9uZW4gdWViZXIgUHJvemVzc29yLSB1bmQgQ29udHJvbGxlcmJlZmVobHNzYWV0enplIG9kZXIKQmV0cmllYnN5c3RlbS0gdW5kIFNjaG5pdHRzdGVsbGVuZGVzaWduLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQxOiBNZWdhaGFsPyAoVHVyYm8sIDIzLiBBdWcgMjAwNCwgMTA6MzI6NDkpOgp+IyEgcm49Wm9vayBydD0xMDkzMjQ5ODQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwoKZGFubiB0dXQgZXMgbWlyIGxlaWQuCgpUdXJibyAoS2F0ZXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MTogTWVnYWhhbD8gKFp6YXJ6enQsIDIzLiBBdWcgMjAwNCwgMTA6MzM6MjMpOgp+IyEgcm49Wm9vayBydD0xMDkzMjQ5ODQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpJcmdlbmR3aWUga2FubiBlaW4gV2FmZmVuc3lzdGVtIG5pY2h0IG9ydGhvZ29uYWwgc2Vpbi4gRGllIERpbmdlciBtYWNoZW4KYWxsZSAobWVociBvZGVyIHdlbmlnZXIpIFNjaGFkZW4uIFVuZCBhdWYgZGVuIFJlc3QgaXN0IGRvY2ggbWVpc3RlbnMKZ2UgLi4uIHBmaWZmZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MjogTWVnYWhhbD8gKFpvb2ssIDIzLiBBdWcgMjAwNCwgMTA6MzM6MzEpOgp+IyEgcm49VHVyYm8gcnQ9MTA5MzI0OTk2OSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKQmVkZXV0ZXQgYWJlciBpbiBkZXIgS29uc2VxdWVueiwgZGFzcyBpY2ggZXMgYXVjaCBuaWNodCBlcmtsYWVydCBiZWtvbW1lPyAKTnVqYS4gQXVjaCBvay4gOi0pCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDM6IE1lZ2FoYWw/IChCcmFuLCAyMy4gQXVnIDIwMDQsIDExOjI1OjA2KToKfiMhIHJuPVpvb2sgcnQ9MTA5MzI1MDAxMSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKSWNoIGdsYXViZSwgZXIgbWVpbnRlIHRhdHNhZWNobGljaCBlaW5mYWNoICJvcmRlbnRsaWNoZXJlIi4KQnJhbiwgVHVyYm8gYmVzdGF1bmVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQyOiBNZWdhaGFsPyAoQWxrLCAyMy4gQXVnIDIwMDQsIDEyOjM3OjE3KToKfiMhIHJuPVR1cmJvIHJ0PTEwOTMyNDk5Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCmtvZW5udGVzdCBkdSBtYWwgZWluIGJlaXNwaWVsIGJyaW5nZW4sIHdpZSBvcnRob2dvbmFsIGltIEJlcmVpY2gKUHJvemVzc29yYmVmZWhsc3NhZXR6ZSB1c3cgdmVyd2VuZGV0IHdpcmQ/IFZpZWxsZWljaHQgaGFiIGljaCBhdWNoIG51ciBlaW5mYWNoCmVpbmUgbWF0aGVtYXRpc2NoIHZlcmJsZW5kZXRlIFNpY2h0IHZvbiBPcnRob2dvbmFsaXRhZXQuCgpHcnVlc3NlLCBBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MzogTWVnYWhhbD8gKFR1cmJvLCAyMy4gQXVnIDIwMDQsIDEyOjU1OjM1KToKfiMhIHJuPUFsayBydD0xMDkzMjU3NDM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0Mwp3d3cuaW5mb3JtYXRpay51bmktdWxtLmRlL3JzL3Byb2pla3RlLyBjb3JlL3Byb3plc3NvcmFyY2hpdGVrdHVyL3NjcmlwdC9LNy5wZGYKCkhUSAoKVHVyYm8gKEthdGVyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDQ6IE1lZ2FoYWw/IChIdW1uaSwgMjMuIEF1ZyAyMDA0LCAxMzowMjo1Myk6Cn4jISBybj1UdXJibyBydD0xMDkzMjU4NTM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpOdW4gZ3V0LCBkYXMgaXN0IGVpbmUgRGVmaW5pdGlvbiB2b24gT3J0aG9nb25hbGl0YWV0IHdpZSBpY2ggc2llIGJpc2hlciBub2NoCm5pY2h0IGthbm50ZSwgenVnZWdlYmVuZXJtYXNzZW4gLSBpY2gga2FubnRlIGRhcyBtYXRoZW1hdGlzY2hlLCB3YXMgbWFuIGF1Y2gKKHdlbm4gYXVjaCB0ZWlsd2Vpc2UgaXJyZWZ1ZWhyZW5kKSAsLHNlbmtyZWNodCcnIG5lbm5lbiBrb2VubnRlLgoKSWNoIGhhYmUgYWJlciBlaHJsaWNoIGdlc2FndCBub2NoIG5pY2h0IHdpcmtsaWNoIHZlcnN0YW5kZW4sIHdhcyBlaW4Kb3J0aG9nb25hbGVzIEthbXBmc3lzdGVtIHNlaW4gc29sbC4gTWVpbnN0IER1IGRhbWl0LCBkYXNzIG1hbiBkaWUgZWluemVsbmVuCktvbXBvbmVudGVuIHRyZW5uZW4ga2Fubj8gU3ByaWNoOiBJY2ggaGFiZSBlaW5lIFdhZmZlbmtsYXNzZSwgZWluZW4KV2FmZmVuc2tpbGwgZGVyIEdpbGRlLCBlaW5lIFNjaGFkZW5zYXJ0IHVuZCBrYW5uIGRhcyBhbGxlcyBnZXRyZW5udCBhdXN3ZXJ0ZW4/Ck9kZXI6IEljaCBrYW5uIGplZGUgV2FmZmUgbWl0IGplZGVtIFNraWxsIGJlbnV0emVuIC0gZGFubiBmdWVocmUgaWNoIGhhbHQgZGllCktldWxlIHdpZSBlaW4gU2Nod2VydD8gKERhcyB3YWVyZSBqYSBkYXNzZWxiZSwgd2llIGplZGVuIFByb3plc3NvcmJlZmVobCBtaXQKamVkZXIgQWRkcmVzc2llcnVuZ3NhcnQgYmVudXR6ZW4genUga29lbm5lbikuCgpXZW5uIGphLCBkYW5uIGJpbiBpY2ggZGFnZWdlbiwgYXVzIFByaW56aXAuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDU6IE1lZ2FoYWw/IChNZWhhbCwgMjMuIEF1ZyAyMDA0LCAxMzoxODoyNik6Cn4jISBybj1IdW1uaSBydD0xMDkzMjU4OTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpVbmQgd2FzIHp1bSBIZW5rZXIgaGF0IGRhcyBhbGxlcyBtaXQgTWVnYWhhbCB6dSB0dW4/CgpNZWhhbCwgdmVyd2lycnQgKHdpZSBpbW1lcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ2OiBNZWdhaGFsPyAoS3JpbWFyaW9sLCAyMy4gQXVnIDIwMDQsIDEzOjM1OjU4KToKfiMhIHJuPU1laGFsIHJ0PTEwOTMyNTk5MDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkFsc28gaWNoIHd1ZXJkIGdsYXViIGljaCBUdXJib3MgQmVncmlmZiBzbyBzZWhlbiwgZGFzIGVzIHVuYWJoYWVuZ2lnIGJlZGV1dGVuCnNvbGwsIGFscyB6LkIuIFNjaHdlcnRlciBTY2h3ZXJ0ZXIgc2luZCB1bmQga2VpbmUgS2V1bGVuLCBkLmguIHZvbiBqZW1hbmQgZGVyCm5pY2h0IG1pdCBTY2h3ZXJ0ZXJuIHVtZ2VoZW4ga2FubiAoZGVuIFNraWxsIG5pY2h0IGhhdCB1bmQgbmljaHQgbGVybmVuIGthbm4pCm5pY2h0IHp1IGJlbnV0emVuIHNpbmQuIApNZkcKS3JpbWFyaW9sClAuUy4gSWNoIGdsYXViIHNvIGRpcmVrdCBuaWNodCB2aWVsLgpATWVoYWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ3OiBNZWdhaGFsPyAoR2xvaW5zb24sIDIzLiBBdWcgMjAwNCwgMTM6Mzk6NTApOgp+IyEgcm49S3JpbWFyaW9sIHJ0PTEwOTMyNjA5NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCldlbm4gZXIgdmVyc3RhZW5kbGljaCBzZWluIHNvbGwgdW5kIHZvbiBPcnRob2dvbmFsaXRhZXRlbiBzY2h3YWV0enQsIHNvbGx0ZSBlcgpkaWUgS3JpdGVyaWVuIGRhZnVlciBmZXN0bGVnZW4uCldvbGxlbiB3aXIgZGllIERpc2t1c3Npb24gbmljaHQgZ2xlaWNoIG5vY2ggdW0gZGFzIEVpbmRhbXBmZW4gdm9uIFNjaGFlZGVuCmVyd2VpdGVybj8gSWNoIGJpbiBqYSBkZXIgTWVpbnVuZywgZGFzcyBqZWRlciBwaHlzaWthbGlzY2hlIFNjaGFkZW4gYXVzIFN0aWNoLApTY2huaXR0IHVuZCBTY2hsYWcgenVzYW1tZW5nZXNldHp0IHdlcmRlbiBrYW5uIChSZWlzc2VuIHdhZXJlIGVpbiBzZWhyCnVuc2F1YmVyZXIgU2Nobml0dCkgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40ODogTWVnYWhhbD8gKEh1bW5pLCAyMy4gQXVnIDIwMDQsIDEzOjUwOjM0KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwOTMyNjExOTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCk5laW4sIHJlaXNzZW4gaXN0IGViZW4ga2VpbiBTY2huaXR0LiBTY2huaXR0IG1hY2h0IGVpbmUgZHVyY2hnZWhlbmRlIFd1bmRlLApkaWUgZWluZXIgQXJ0IFNjaGxpdHogYWVobmVsdCwgZGVuIG1hbiBldnRsLiBhdWZrbGFwcGVuIHVuZCBpbiBkZW4gS29lcnBlciBkZXMKR2VnbmVycyBoaW5laW5zZWhlbiBrYW5uLiBSZWlzc2VuIGhpbmdlZ2VuIG1hY2h0IGVpbmUgKG9kZXIgbWVocmVyZSkKcHVua3Rmb2VybWlnZSBTdGljaHd1bmRlbiwgdm9uIGRlbmVuIGF1cyBkYW5uIHNvd2FzIHdpZSBlaW4gU2Nobml0dCBhdXNnZWh0LgpEZW4gbXVzcyBtYW4gYWJlciBuaWNodCBzbyB3ZWl0IGF1ZmtsYXBwZW4ga29lbm5lbiwgZGVubiBkZXIgaXN0IG5pY2h0IHNvCmdsZWljaG1hZXNzaWcgYXVmIGJlaWRlbiBTZWl0ZW4gdGllZmVyIHdlcmRlbmQsIGRhIGVyIGphIGRhcyBMb2NoIGFscwpCZWdyZW56dW5nIGhhdC4KCldlbm4gbWFuIGFsc28gQXVma2xhcHBiYXJrZWl0IGFscyBLcml0ZXJpdW0gbmltbXQsIGthbm4gbWFuIFJlaXNzZW4gdW5kClNjaG5laWRlbiBkdXJjaGF1cyB1bnRlcnNjaGVpZGVuLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ0OiBNZWdhaGFsPyAoQWxrLCAyMy4gQXVnIDIwMDQsIDEzOjUzOjI2KToKfiMhIHJuPVR1cmJvIHJ0PTEwOTMyNTg1MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCmRhbmtlCgphYmVyIHNjaG9uIGtvbWlzY2ggZGFzcyBtYW5jaGUgZGluZ2VyIG9ydGhvZ29uYWxlciBzZWluIGtvZW5uZW4gYWxzIGFuZGVyZSAqZyoKCkdydWVzc2UsIEFsa2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ5OiBNZWdhaGFsPyAoQnJhbiwgMjMuIEF1ZyAyMDA0LCAxMzo1MzozNik6Cn4jISBybj1IdW1uaSBydD0xMDkzMjYxODM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwoKCkh1bW5pLCBkdSBiaXN0IHVuYXBwZXRpdGxpY2guCgpCcmFuLCB3b2xsdGUgZ2VyYWRlIGVzc2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDk6IE1lZ2FoYWw/IChHbG9pbnNvbiwgMjMuIEF1ZyAyMDA0LCAxMzo1NjozMCk6Cn4jISBybj1IdW1uaSBydD0xMDkzMjYxODM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpJY2ggbXVzcyB3aWRlcnNwcmVjaGVuLiBFaW4gU2Nobml0dCBpc3QgbmljaHQgcGVyIGRlZmluaXRpb25lbSBzYXViZXIgdW5kCmdsYXR0LCBzbyBkYXNzIGR1IGRhIGhlcnVta2xhcHBlbiBrYW5uc3QuIEplIG5hY2ggU2Nobml0dHdlcmt6ZXVnIGthbm4gZGllClNjaG5pdHRmbGFlY2hlIHNlaHIgdW5yZWdlbG1hZXNzaWcgc2Vpbiwgc28gZGFzcyBkYXMgQXVma2xhcHBlbiBuaWNodCBzYXViZXIKdm9uc3RhdHRlbiBnZWh0LgpBbGxlcmRpbmdzIGJlc3RhZXRpZ3N0IGR1LCBkYXNzIGVpbmUgUmlzc3d1bmRlIGVpbmUgU3RpY2h3dW5kZSBtaXQKYW5zY2hsaWVzc2VuZCBmbGFjaGVyIHdlcmRlbmRlciBTY2huaXR0d3VuZGUgaXN0LiBEYW1pdCB3YWVyIGRhcyBhbHNvCmRhcnN0ZWxsYmFyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ5OiBNZWdhaGFsPyAoR2xvaW5zb24sIDIzLiBBdWcgMjAwNCwgMTQ6MDA6MjgpOgp+IyEgcm49SHVtbmkgcnQ9MTA5MzI2MTgzNCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKUFM6IE5hdHVlcmxpY2ggemllbHQgZGllc2UgVmVyZWluaGVpdGxpY2h1bmcgYXVmIGRpZSBXYWZmZW4gYWIuIE1hbiBrb2VubnRlCmRhbWl0IGRpZSBXYWZmZW5za2lsbHMgYXVmICJTY2huZWlkZW4sIFN0ZWNoZW4sIFNjaGxhZ2VuIiByZWR1emllcmVuIHVuZApkZW1lbnRzcHJlY2hlbmQgS2FtcGZtb2RpIGFuYmlldGVuIChEdSB2ZXJzdWNoc3QgamV0enQgbWl0IGRlaW5lciBXYWZmZQphdXNzY2hsaWVzc2xpY2ggenUgc3RlY2hlbiAtPiBzZWhyIHNwYW5uZW5kLCB3ZW5uIGRpZSBLZXVsZSAwJSBTdGljaHNjaGFkZW4KaGF0IC4uLiBkYW5uIHdpcmQgZGVyIFNjaGxhZ3NhY2hkZW4gZGVyIEtldWxlIHp1IDI1JSBlaW5nZWJyYWNodCB1bmQgbWFuIHBpZWt0CmRlbSBHZWduZXIgc3RhZW5kaWcgc2VpbmUgS2V1bGUgaW4gZGVuIEJhdWNoKS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41MDogTWVnYWhhbD8gKENyb2Z0LCAyMy4gQXVnIDIwMDQsIDE0OjQ4OjE2KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwOTMyNjI0Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzClVuZCB3byBpc3QgZGEgZGVyIEV4cGxvc2l2LVNjaGFkZW4/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTE6IE1lZ2FoYWw/IChab29rLCAyMy4gQXVnIDIwMDQsIDE0OjUyOjMyKToKfiMhIHJuPUNyb2Z0IHJ0PTEwOTMyNjUyOTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkZhbGxzIGljaCBub2NoIG1hbCBkaWUgSWRlZSBtaXQgZGVyIC4uLi4gb2sgb2sgb2ssIGJpbiBqYSBzY2hvbiBydWhpZy4uLgoKWm9vaywKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUxOiBNZWdhaGFsPyAoR2xvaW5zb24sIDIzLiBBdWcgMjAwNCwgMTQ6NTI6NDApOgp+IyEgcm49Q3JvZnQgcnQ9MTA5MzI2NTI5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKU2NobGFnc2NoYWRlbi4gTGV0enRlbmRsaWNoIHNjaGxhZWd0IGRpZSBMdWZ0IGF1ZiBkaWNoIGVpbiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUyOiBNZWdhaGFsPyAoVHVyYm8sIDIzLiBBdWcgMjAwNCwgMTU6MDc6MzIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA5MzI2NTU2MCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKZXMgZ2lidCBlaW5lbiB3ZXNlbnRsaWNoZW4gVW50ZXJzY2hpZWQgendpc2NoZW4gUmVpc3NlbiB1bmQgU2NobmVpZGVuLgpTY2huZWlkZW4gdWVidCBlaW5lIERydWNrYmVsYXN0dW5nIGF1cywgUmVpc3NlbiBlaW5lIFp1Z2JlbGFzdHVuZy4KQmVpIEV4cGxvc2lvbnNzY2hhZGVuIGtvbW1lbiBtZWhyZXJlIFNjaGFkZW5zYXJ0ZW4gKERydWNrLCBadWcsClNwbGl0dGVyLCBGZXVlcikgenVyIFdpcmt1bmcuIEljaCBmaW5kZSBkaWUgRGlmZmVyZW56aWVydW5nZW4gCmVpZ2VudGxpY2ggZ3V0LiBXZWxjaGVuIFZvcnRlaWwgYnJhZWNodGUgIkVpbmRhbXBmZW4iPwoKVHVyYm8gKEthdGVyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTM6IE1lZ2FoYWw/IChOb25uZSwgMjMuIEF1ZyAyMDA0LCAxNToxMDoyNik6Cn4jISBybj1UdXJibyBydD0xMDkzMjY2NDUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpEaWUgVW50ZXJzY2hlaWR1bmdlbiB3ZXJkZW4ga2F1bSBnZW51dHp0IGJlaSBkZW4gcGh5c2lrYWxpc2NoZW4gU2NoYWVkZW4uIEVpbgpLZXR0ZW5oZW1kIHNjaHVldHp0IGd1dCB2b3IgU2Nobml0dHNjaGFkZW4sIGFiZXIgc2NobGVjaHQgZ2VnZW4gU2NobGFnc2NoYWRlbi4KU28gd2llIEFybW9yIGhpZXIgaW1wbGVtZW50aWVydCBpc3QsIHdpcmQgYWJlciBuaWNodCB1bnRlcnNjaGllZGVuLiBWaWVsbGVpY2h0CmRlc3dlZ2VuPwoKTm9ubmUsIHdpbGwgbml4IGVpbmRhbXBmZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41MzogTWVnYWhhbD8gKFp6YXJ6enQsIDIzLiBBdWcgMjAwNCwgMTU6MTA6MzIpOgp+IyEgcm49VHVyYm8gcnQ9MTA5MzI2NjQ1MiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKRGVyIFZvcnRlaWwgdm9uICdFaW5kYW1wZmVuJyBiZXN0ZWh0IHdvaGwgZGFyaW4sIGRhc3MgYWxsZSBXYWZmZW4gZWluZW4gClNjaGFkZW4gbWFjaGVuLiBVbmFiaGFlbmdpZyB2b24gV2FmZmUgdW5kIHVuYWJoYWVuZ2lnIHZvbiBkZW0sIHdvIG1hbiAKZHJhdWZoYXV0LiBLdXJ6IGdlc2FndDogZGVyIEthbXBmIHdhZXJlIHZvZWxsaWcgdW5kaWZmZXJlbnppZXJ0LiBVbmQgZGllCmVpbmUgV2FmZmUsIGRpZSBkYW5uIE1BWF9TQ0hBREVOIChvZGVyIHdpZSBkYXMgZGFubiBoZWlzc2VuIHNvbGwpLCBpc3QKNXNlYy4gbmFjaCBlaW5lbSBSZWJvb3QgdmVyZ3JpZmZlbi4KClZvZWxsaWcgd2VydGZyZWksIFp6YXJ6enQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUyOiBNZWdhaGFsPyAoUGFkcmVpYywgMjMuIEF1ZyAyMDA0LCAxNToxMDo1OCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDkzMjY1NTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpBdWNoIHdlbm5zIGhpZXIgbmljaHQgaGluZ2Vob2VydCwgbWFsIHdhcyBrb25zdHJ1a3RpdmVzOgpJY2ggZGVua2UgamVkZSBXYWZmZSBzb2xsdGUgaW5kaXZpZHVlbGwgc3RldWVybiBrb2VubmVuIHdlbGNoZSBTa2lsbHMgaW4gc2llCmVpbmZsaWVzc2VuOiBFaW4gTW9yZ2Vuc3Rlcm4gYmVrYWVtZSBkYW5uIHouYi46IDYwJSBLZXVsZW5za2lsbCArIDQwIGludGVybmVyCldhZmZlbnNraWxsLiBJbiBkZXIgUHJheGlzIGJlZGV1dGV0IGRhcyBkYW5uIHouQi4gaW0gS2FlbXBmZXJzcGVsbGJvb2sgd3VlcmRlCmRlciBTY2hhZGVuIGZ1ZXIgS2V1bGVuIGVybWl0dGVsdCB1bmQgKiAwLjYgZ2Vub21tZW4gdW5kIGRhenUgZGFubiAwLjQgKiBkZW0KaW50ZXJuZW4gU2tpbGwgZ2VyZWNobmV0IChvZGVyIGJlbGllYmlnZSBhbmRlcmUgS29tYmluYXRpb25lbikuClZvcnRlaWw6IGludGVybmUgV2FmZmVuc2tpbGxzIHdhZXJlbiB2aWVsIHVucHJvYmxlbWF0aXNjaGVyIGFscyBoZXV0ZS4gTmljaHQKamVkZSBhdXNzZXJnZXdvZWhubGljaGUgV2FmZmUgZXJnaWJ0IGVpbmUgYWJhcnRpZ2UgV2FmZmUgaW4gZGVuIEhhZW5kZW4gZWluZXMKS2FlbXBmZXJzLiBTY2h3aWVyaWcgenUgZnVlaHJlbmRlIFdhZmZlbiB3aWUgTW9yZ2Vuc3Rlcm4sIEthdGFuYSwgSGVsbGViYXJkZQpldGMuIHdlcmRlbiBoYWxid2VncyByZWFsaXN0aXNjaCB1bWdlc2V0enQuCk5hY2h0ZWlsOiBlcmhvZWh0ZSBSZWNoZW56ZWl0IHdlaWwgZ2dmLiBtZWhyZXJlIFNraWxsZnVua3Rpb25lbiBhdWZnZXJ1ZmVuCndlcmRlbi4KClBhZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjUzOiBNZWdhaGFsPyAoQXJrLCAyMy4gQXVnIDIwMDQsIDE1OjEzOjI0KToKfiMhIHJuPVR1cmJvIHJ0PTEwOTMyNjY0NTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkRlbiBUaHJlYWQgZWluZGFtcGZlbj8gRGFzIGJyYWVjaHRlIHNjaG9uIGdsZWljaCBkZW4gVm9ydGVpbCwgZGFzcyBlcyB2aWVsCmVudHNwYW5uZW5kZXIgd2FlcmUsIGRpZSBaZWl0dW5nIHp1IGxlc2VuIDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU0OiBNZWdhaGFsPyAoVHVyYm8sIDIzLiBBdWcgMjAwNCwgMTU6Mjc6MzcpOgp+IyEgcm49Wnphcnp6dCBydD0xMDkzMjY2NjMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpkZXIgUmVpeiBkZXIgU2FjaGUgaXN0IGRvY2gsIGVpbiBLYW1wZnN5c3RlbSAoZGFzIGlzdCBtZWhyIGFscyBXYWZmZW4pCnp1IGhhYmVuLCBkYXNzIGVpbmVyc2VpdHMgbmljaHQgcGxhdHQtcHJpbWl0aXYgaXN0LCBhbmRlcmVyc2VpdHMgYXVjaApuaWNodCB1ZWJlcmtvbXBsZXgsIGRhcyBBdG1vc3BoYWVyZSB1bmQgU3Bhbm51bmcgYmlldGV0LCBhYmVyIGF1Y2gKb2huZSBodW5kZXJ0c2VpdGlnZXMgTWFudWFsIGJlbnV0emJhciBibGVpYnQuIEljaCBmaW5kZSwgZGFzIGlzdCBoaWVyCmdhciBuaWNodCBzY2hsZWNodCBnZWxvZXN0LgoKVHVyYm8gKEthdGVyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTQ6IE1lZ2FoYWw/IChHbG9pbnNvbiwgMjMuIEF1ZyAyMDA0LCAxNTozMjoyNyk6Cn4jISBybj1aemFyenp0IHJ0PTEwOTMyNjY2MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCkRlciBWb3J0ZWlsIHdhZXJlLCBkYXNzIGFsZSBXYWZmZW4gYXVmIGRyZWkgcGh5c2lrYWxpc2NoZW4gU2NoYWRlbnN0eXBlbgpvcGVyaWVyZW4gd3VlcmRlbi4gRGllc2Uga29lbm50ZW4gZHVyY2ggU2tpbGxzIG1vZGlmaXppZXJ0IHdlcmRlbi4gSmVkZQpSdWVzdHVuZyBoaW5nZWdlbiB3dWVyZGUgZ2VnZW4gZGllc2Ugc2VsZWt0aXYgYWJ3ZWhyZW4sIHdpZSBOb25uZSBzY2hvbgphbmRldXRldGUuIEtlaW5lIFJ1ZXN0dW5nIG1laHIsIGRpZSBTY2hsYWctLCBFeHBsb3Npb25zLSwgUmVpc3MtLApHcnVlbmJsdWJiZXJzY2hhZGVuIGFid2VocnQsIHNvbmRlcm4gekIgZWluIE1hbnRlbCBkZXIgenUgMTAlIFN0aWNoZSBhYmZhZW5ndCwKenUgNTAlIFNjaGxhZWdlIGRhZW1wZnQgKHdhdHRpZXJ0ZXIgU2Nod2VpbmVicmF0ZW4pIHVuZCB6dSAyMCUgU2Nobml0dGUuCkVsZW1lbnRhcmVyIHVuZCBtYWdpc2NoZXIgUXVhcmsgaXN0IHNjaGxlY2h0ZXIgenUgdmVyZWluaGVpdGxpY2hlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41NTogTWVnYWhhbD8gKFp6YXJ6enQsIDIzLiBBdWcgMjAwNCwgMTU6MzQ6NDkpOgp+IyEgcm49VHVyYm8gcnQ9MTA5MzI2NzY1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKRGEgc3RpbW1lIGljaCB6dS4KV29iZWkuLi4gamUgZGlmZmVyZW56aWVydGVyIGRhcyBTeXN0ZW0gaXN0ICh1bmQgbmljaHQgbnVyIFdhZmZlbiwgc29uZGVybiBhdWNoClNjaGxhZ2VtcGZhZW5nZXIgdW5kIC1kYWVtcGZlciBkYXMgZGlmZmVyZW56aWVydCB1bXNldHplbiksIGRlc3RvIAppbnRlcmVzc2FudGVyIHdpcmRzLiBGaW5kZSBpY2guIEFuc3BydWNoc3ZvbGxlci4gQmxlaWJ0IGRpZSBGcmFnZSwgb2IKZGFzIHd1ZW5zY2hlbnN3ZXJ0IGlzdC4gQW5kZXJlcnNlaXRzIG1laW5lIGljaCBoaWVyIG1hbCBnZWxlc2VuIHp1IGhhYmVuLApkYXNzIGlyZ2VuZGplbWFuZCBkaWUgTXVkZGVyLUdlbWVpbmRlIHNvd2llc28gZnVlciBpbnRlbGxpZ2VudGVyIGhhZWx0CmFscyBkZW4gRHVyY2hzY2huaXR0IC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTY6IE1lZ2FoYWw/IChDcm9mdCwgMjMuIEF1ZyAyMDA0LCAxNTozNzo0MSk6Cn4jISBybj1aemFyenp0IHJ0PTEwOTMyNjgwODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCldhciBiZXN0aW1tdCBlaW4gTXVkZGVyLCBkZXIgZGFzIG1laW50LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU3OiBNZWdhaGFsPyAoR3JpbW1ib3JuLCAyMy4gQXVnIDIwMDQsIDE1OjQyOjE3KToKfiMhIHJuPUNyb2Z0IHJ0PTEwOTMyNjgyNjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzClVuZCB6d2FyIGplbWFuZCwgZGVyIGJsaW5kIHVuZCB0YXViIGR1cmNoIGRpZSBHZWdlbmQgbGFldWZ0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41ODogTWVnYWhhbD8gKEdsb2luc29uLCAyMy4gQXVnIDIwMDQsIDE1OjUzOjU1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDkzMjY4NTM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpWaWVsbGVpY2h0IGVpbiBFaW5zaWVkbGVyPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRpZSB3ZWdlIGRlcyBjaGFvcy4uIChCb2VzZSwgMjMuIEF1ZyAyMDA0LCAxNjowMjowNSk6ClZvbiBNaWV6ZTogaWNoIHdvbGx0ZSBuaWNodCBzbyBsYW5nIHdhcnRlbgpEZWluIERhZW1vbmVuc2tsYXZlIHZlcmFic2NoaWVkZXQgc2ljaCB2b24gRGlyIG1pdCBlaW5lbSBoYWVtaXNjaGVuIEtpY2hlcm4uCkRlaW4gRGFlbW9uZW5za2xhdmUgdmVyYWJzY2hpZWRldCBzaWNoIHZvbiBEaXIgbWl0IGVpbmVtIGhhZW1pc2NoZW4gS2ljaGVybi4KW1RvZDpMYXJzXSBFaW4gU2FyZyBoYXQgZ2VyYWRlIE1pZXplIHVtZ2VicmFjaHQuCltCZWlsZWlkOlJvbGFuZF0gYWphCltCZWlsZWlkOkJyYW5dIGdyYXRzIDopCltCZWlsZWlkOkJvZXNlXSB0amEuLiBtZWluIG1pdGxlaWQgaGFlbHQgc2ljaCBpbiBncmVuemVuIDspCkR1IG9lZmZuZXN0IGRlbiBTYXJnLgpFaW4gZ2FueiBnZXdvZWhubGljaGVyIFNhcmcuIE1hbiBrYW5uIGlobiBvZWZmZW4sIHNjaGxpZXNzZW4sIGRpZQpzdGVyYmxpY2hlbiBVZWJlcnJlc3RlIHZvbiBqZW1hbmRlbSBkb3J0IGhpbmVpbmxlZ2VuIHVuZCwgd2VyIHNjaG9uCm1hbCBwcm9iZWxpZWdlbiB3aWxsLCBrYW5uIGlobiBhdWNoIHNlbGJzdCBiZXRyZXRlbiA6LSkKRXIgaXN0IGdlb2VmZm5ldC4KRXIgZW50aGFlbHQ6CkRpZSBiZXJlaXRzIHppZW1saWNoIHN0aW5rZW5kZSBMZWljaGUgTWllemVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmViZW5sZWJlbiBpbSBDeXBlcnNwYWNlIChDcm9mdCwgMjMuIEF1ZyAyMDA0LCAxODo0NToxMCk6Cn4jISBybj1IdW1uaSBydD0xMDkzMjc5NDM0IHJnPXd3dwp+IyEgdGlkPTEwOTMyNzQ5MTQKRXhha3QgZHJlaW1hbCBzb3ZpZWw/ICBEYW5uIGhhc3QgZHUgYWJlciB2aWVsZSBCdWVjaGVyIGdla2F1ZnQuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmViZW5sZWJlbiBpbSBDeXBlcnNwYWNlIChBc3VrYSwgMjMuIEF1ZyAyMDA0LCAxODo0NTozOCk6Cn4jISBybj1Dcm9mdCBydD0xMDkzMjc5NTEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MzI3NDkxNApFciBtZWludCBkYW1pdCBzaWNoZXJsaWNoIHNlaW5lIFBlcnJ5IFJob2Rhbi1TYW1tbHVuZy4gOikKCkFzdWthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZWJlbmxlYmVuIGltIEN5cGVyc3BhY2UgKEFuYXRvbCwgMjMuIEF1ZyAyMDA0LCAxODo0NzowMik6Cn4jISBvbj1BbmF0b2wgb3Q9MTA5MzI3OTU2MCBvZz13d3cKfiMhIHJuPUh1bW5pIHJ0PTEwOTMyNzk0MzQgcmc9d3d3Cn4jISB0aWQ9MTA5MzI3NDkxNApVbnByb2JsZW1hdGlzY2gsIHdlbm4gRHUgYWxsZXMgaW4gZGVyIFVuaWJpYmxpb3RoZWsgYmVrb21tZW4gaGFzdC4KQmVkZW5rbGljaCwgd2VubiBEdSBqZSBTZW1lc3RlciA1IGRlciAxMDAtRXVyby1Pc2NoaXMgYnJhdWNodGVzdC4KV2FobnNpbm5pZywgd2VubiBEdSBkaWUgQnVlY2hlciBEZWluZXIgS29tbWlsaXRvbmVuIGF1Y2ggbWl0Z2VrYXVmdCBoYXN0IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmViZW5sZWJlbiBpbSBDeXBlcnNwYWNlIChPZ28sIDIzLiBBdWcgMjAwNCwgMTk6MTI6NTMpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTMyNzk2MjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkzMjc0OTE0ClJpY2h0aWdlIE1hZW5uZXIgc2NocmVpYmVuIGlocmUgQnVlY2hlciBzZWxic3QuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBOZWJlbmxlYmVuIGltIEN5cGVyc3BhY2UgKFpvb2ssIDIzLiBBdWcgMjAwNCwgMTk6MTU6MjkpOgp+IyEgcm49T2dvIHJ0PTEwOTMyODExNzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkzMjc0OTE0ClVudGVyIEJpZXItRWluZmx1c3M/CgpBbmdlYmxpY2ggaGF0IEplYW4gUGF1bCBzZWluZW4gV29obm9ydCBqYSBudXIgYXVzIGVpbmVtIEdydW5kIG5pY2h0IGF1cwpCYXlyZXV0aCB3ZWdiZXdlZ3Q6IERhcyBCaWVyIHNlaSBkb3J0IHNvIGd1dC4gCgpPZGVyLCB1bSBlaW5lbiBKLlAuLVNwcnVjaCB6dSBicmluZ2VuOiAiTnVlY2h0ZXJuaGVpdCBhbSBtb3JnZW4gaXN0IG51ciAKZWluZSBuZWdhdGl2ZSBUcnVua2VuaGVpdC4iCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFN1Y2hlIEFsdGJhdWRlY2tlbnN0YXRpa2VyIDspIChSb25kYSwgMjMuIEF1ZyAyMDA0LCAyMjoyMjowMyk6Cn4jISBybj1ab29rIHJ0PTEwOTMyOTE3NDMgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMDkzMjEzODYyCkphdSwgZXMgbWFjaHQgU2lubiwgZGFzcyBpY2ggbmljaHQgaGF1cHRiZXJ1ZmxpY2ggZnVlciBTdGF0aWsgenVzdGFlbmRpZyBiaW4KOy0pIFdvYmVpIER1IGdhciBuaWNodCBnbGF1YmVuIHdpcnN0LCB3aWUgbWFuY2hlIFN0YXRpayBvZGVyIEZlc3RpZ2tlaXQgekIgYmVpCkF1dG9zIGJlcmVjaG5ldCBvZGVyIHNjaG9lbmdlcmVjaG5ldCB3aXJkLi4uCkF1c3NlcmRlbSBnZWhlbiBlaW5lbSBzb25zdCBpcmdlbmR3YW5uIGRpZSBHbG9pbnNvbnMgZnVlciBMYXN0dGVzdHMgYXVzLgoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU5OiBNZWdhaGFsPyAoQ2F0d2VhemxlLCAyMy4gQXVnIDIwMDQsIDIzOjI4OjQ1KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwOTMyNjkyMzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCmhpZXJtaXQgc2V0emUgaWNoIC0xIEtpc3RlIEJpZXIgYXVmIFJlXjEwMCBpbiBkaWVzZW0gVGhyZWFkIGF1cy4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjA6IE1lZ2FoYWw/IChCYW1idWxrbywgMjMuIEF1ZyAyMDA0LCAyMzoyOToxNSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA5MzI5NjUyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKS2FubiBtYW4gZGVuIFByZWlzIGF1Y2ggYWJsZWhuZW4/CgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjE6IE1lZ2FoYWw/IChHbG9pbnNvbiwgMjMuIEF1ZyAyMDA0LCAyMzozMjowMSk6Cn4jISBybj1CYW1idWxrbyBydD0xMDkzMjk2NTU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpOZWluLCBhYmVyIGdld2lzcyB1ZWJlcnRyYWdlbiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjYyOiBNZWdhaGFsPyAoQ3JvZnQsIDIzLiBBdWcgMjAwNCwgMjM6MzI6MjUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA5MzI5NjcyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTI5Mjc5NDMKSWNoIHNldHplIGF1Y2ggLTEgS2lzdGUgYmllciBhdWYgUmVeMTAwIGF1cyA6LSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBOZWJlbmxlYmVuIGltIEN5cGVyc3BhY2UgKEdyaW1tYm9ybiwgMjQuIEF1ZyAyMDA0LCAxMzozNTo1Myk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDkzMzQ3MjY5IHJnPXd3dwp+IyEgdGlkPTEwOTMyNzQ5MTQKVm9uIGRlciBCZWluZSBCdWNoaW5kdXN0cmllIGdhbnogenUgc2Nod2VpZ2VuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW5mYWVuZ2VyIChHbG9pbnNvbiwgMjQuIEF1ZyAyMDA0LCAxNzo0MjoxMSk6Cn4jISBybj1IdW1uaSBydD0xMDkzMzYxMjkzIHJnPWV0aWtldHRlCn4jISB0aWQ9MTA5MzM2MTI5MwpEYSBoYXQgZWluZXIgYW0gQW5mYW5nIHdhcyBTaW5udm9sbGVzIGdlcnVmZW4/IEVjaHQ/IFVlYmVyc2VoZW4uIEFuZGVycwpnZXNhZ3Q6IFJ1ZmVuIGlzdCBvaG5laGluIG51ciBmdWVyIGRlbiBhbGJlcm5lbiBUZWlsLiBXZW5uIGljaCBlaW5lIHNpbm52b2xsZQpGcmFnZSBwZXIgUnVmIHNlaGUsIGRhbm4gd2Vpc2UgaWNoIGRlbiAoTmV3YmllLSlGcmFnZSBwZXIgInRlaWxlIG1pdCIgYXVmIGRpZQpFeGlzdGVueiBkZXIgS2FuYWVsZSBoaW4gdW5kIGJlYW50d29ydGUgc2VpbmUgRnJhZ2UuIEljaCBuZWhtZSBhbiwgZGFzcwppcmdlbmR3ZXIgZGFzIGF1Y2ggZ2V0YW4gaGF0LiBOdXIgd2VpbCBuaWVtYW5kIGVpbmUgQW50d29ydCBnZXJ1ZmVuIGhhdCwKc29sbHRlc3QgZHUgbmljaHQgYXVzc2NobGllc3NlbiBkYXMgWFhYWCBnZWhvbGZlbiB3dXJkZS4gTGVpc2VyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQW5mYWVuZ2VyIChIdW1uaSwgMjQuIEF1ZyAyMDA0LCAxODowMDozNyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDkzMzYyMTMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MzM2MTI5MwpydWZlIGhpbGZlIGViZW5lbiBoaWxmdCBhYmVyIG5pY2h0IHdpcmtsaWNoLgoKVW5kIGphLCBpY2ggd2Vpc3MsIGRhcyBpaG0gZ2Vob2xmZW4gd3VyZGUuIAoKSWNoIHd1ZXJkZSBtaWNoIHRyb3R6ZGVtIHZlcmFyc2NodCBmdWVobGVuLCB1bmQgZ2VuYXUgZGFzIGlzdCBqYSBvZmZlbmJhciBhdWNoClppZWwgZGVyIEFrdGlvbi4KCkh1bW5pClBTOiBEaWUgZWJlbmVuIHp1IGJlZGllbmVuIGlzdCBmdWVyIFRvdGFsbmV3YmllcyBzZWhyIHNjaHdpZXJpZy4gRGVuZW4gcGVyIHRtCnp1IGhlbGZlbiBpc3QgZXJzdG1hbCB2aWVsIHNpbm52b2xsZXIuIFVuZCBhdWNoIHdlbm5zIFplaXQga29zdGV0OiBNYW4ga2Fubgpzb2dhciBlaW5mYWNoIG1hbCBoaW5nZWhlbiB1bmQgZGVuZW4gaGVsZmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQW5mYWVuZ2VyIChDcm9mdCwgMjQuIEF1ZyAyMDA0LCAxODowNToxNik6Cn4jISBybj1IdW1uaSBydD0xMDkzMzYzMjM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MzM2MTI5MwpXZW5uIHNjaG9uIGRhbm4gJ2hpbGZlIGVpbmZ1ZWhydW5nJy4gIERhbm4gZnJldXQgc2ljaCBab29rIGF1Y2ggOi0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQW5mYWVuZ2VyIChIdW1uaSwgMjQuIEF1ZyAyMDA0LCAxODowOTowMCk6Cn4jISBybj1Dcm9mdCBydD0xMDkzMzYzNTE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MzM2MTI5MwpBdWYgZGllIElkZWUgenUga29tbWVuLCBkYXNzIG1hbiBoaWxmZSBhbHMgQmVmZWhsIGVpbmdlYmVuIG11c3MsIG11c3MgbWFuCmVyc3RtYWwga29tbWVuLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFuZmFlbmdlciAoTW9udGFudXMsIDI1LiBBdWcgMjAwNCwgMTQ6MjA6MDMpOgp+IyEgcm49SHVtbmkgcnQ9MTA5MzM2Mzc0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTMzNjEyOTMKRGFyZiBtYW4gc2ljaCBkaWUgLTEgS2lzdGUgQmllciBkYW5uIGF1Y2ggYXVzc3VjaGVuLCB1bmQgbXVlc3N0IGlociBkaWUgZGFubgphdWNoIHNvZm9ydCB1bmQgYWxsZWluZSB0cmlua2VuPyBNdCBmaWVsZW4gZGEgZ2V3YWx0aWdlIFRvcnR1cmVuIGVpbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQW5mYWVuZ2VyIChDcm9mdCwgMjUuIEF1ZyAyMDA0LCAxNDoyMToyNSk6Cn4jISBybj1Nb250YW51cyBydD0xMDkzNDM2NDAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MzM2MTI5MwpOZWluLiAgRGllIHN1Y2ggaWNoIGF1cyB1bmQgd2FubiB1bmQgbWl0IHdlbSBpY2ggZGllIHRyaW5rZSBlbnRzY2hlaWRlCmljaCBhdWNoLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU1OiBNZWdhaGFsPyAoR25vbWUsIDI1LiBBdWcgMjAwNCwgMTQ6MjI6MzkpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTMwODYyOTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyOTI3OTQzCndlbm4gd2lyIG1hbCBkYXMgZ2VnZW5zZWl0aWdlIGhpY2toYWNrIHdlZ2xhc3NlbiB1bmQgZGllIHNhY2hlIG51ZWNodGVybgpiZXRyYWNodGVuLCBzaW5kIGFuYXRvbHMgYXJndW1lbnRlIGdhciBuaWNodCBtYWwgc28gdm9tIHRpc2NoIHp1IGZlZ2VuOgplaW5lIHZlcmFlbmRlcnVuZyBkZXMgc3RhdHVzIHF1byBzb2xsdGUgc2Nob24gZGV1dGxpY2hlIHZvcnRlaWxlCm1pdHNpY2hicmluZ2VuLCB1bSBkaWUgYWVuZGVydW5nIHp1IHJlY2h0ZmVydGlnZW4uIGVpbmUgYWVuZGVydW5nLApkaWUgbXVkd2VpdGUgYXVzd2lya3VuZ2VuIGhhdCwgaXN0IGFienVsZWhuZW4sIHdlbm4gc2llIG51ciB1bSBkZXMKdmVyYWVuZGVybnMgd2lsbGVuIGdlc2NoaWVodC4KCm9iIGVpbmUgdW50ZXJ0ZWlsdW5nIHZvbiAia2V1bGVuIiBpbiBrZXVsZW4gdW5kIGthbXBmc3RhZWJlIHNpbm52b2xsCndhciwga2FubiBpY2ggbmljaHQgdm9sbHN0YWVuZGlnIGJldXJ0ZWlsZW47IHdhcyBhYmVyIG1lcmt3dWVyZGlnIGF1ZmZhZWxsdCwKaXN0LCBkYXNzIGltIGdsZWljaGVuIHp1Z2Uga2VpbmUgd2VpdGVyZW4gdW50ZXJ0ZWlsdW5nZW4gKHNjaHdlcnQgdnMuIGRlZ2VuLAprZXVsZSB2cy4gbW9yZ2Vuc3Rlcm4sIGthdGFuYSB2cy4gYXh0LCBldGMuIHBwLikgZ2VtYWNodCB3dXJkZW4uCmRhcyBpc3QgZ2VuYXUgZGFubiBzZWx0c2FtLCB3ZW5uIGhpZXIgZGFzIGFyZ3VtZW50IGRlciAiY3JlYXRpdml0YWV0IiBpbnMKZmVsZCBnZWZ1ZWhydCB3aXJkLgoKdW5kIHp1ZGVtOiAqd2Vubiogc2Nob24gZWlubWFsIGRpZSBsaWIgYW4gZGVyIHN0ZWxsZSBhbmdlcGFja3Qgd2lyZCwgKmRhbm4qCmRvY2ggZ2xlaWNoIHZvbGxzdGFlbmRpZywgb2Rlcj8gb2theSwgZXMgaGFldHRlIGRhbm4gZGFmdWVyIGV0d2FzIGxhZW5nZXIKdW5kIHNvd2FzIHdpZSBlaW4gbmV1ZXMga29uemVwdCBnZWJyYXVjaHQuLi4gYWJlcjogd2FydW0gZWlnZW50bGljaCBuaWNodD8KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41NjogTWVnYWhhbD8gKEdyaW1tYm9ybiwgMjUuIEF1ZyAyMDA0LCAxNDoyNTozNSk6Cn4jISBybj1Hbm9tZSBydD0xMDkzNDM2NTU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjkyNzk0MwpOdW4gZmFuZyBoaWVyIGJpdHRlIG5pY2h0IG1pdCBTYWNobGljaGtlaXQgdW5kIEtvbnN0cnVrdGl2aXRhZXQgYW4sIHdvIG1hbgpzaWNoIGhpZXIgZG9jaCBzbyBzY2hvZW4gYXVmIGVpbiBBbmF0b2xiYXNoaW5nIGdlZWluaWd0IGhhdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQW5mYWVuZ2VyIChHbG9pbnNvbiwgMjUuIEF1ZyAyMDA0LCAxNDo1OToyNik6Cn4jISBybj1Dcm9mdCBydD0xMDkzNDM2NDg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MzM2MTI5MwpOZWluLCBkYXMgaXN0IG5pY2h0IGRlZmluaWVydCBnZXdlc2VuLiBEdSBoYXN0IG51ciAtMSBLaXN0ZSBhdXNnZXNldHp0LiBEdQpkYXJmc3Qgd2VkZXIgWmVpdCBub2NoIE9ydCBub2NoIEFydCBkZXMgQXJ0aWtlbHMgd2FlaGxlbi4KCjpkZW5rdDogU2FjaHNlbmdvbGQhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQW5mYWVuZ2VyIChNb250YW51cywgMjUuIEF1ZyAyMDA0LCAxNTowMTo0Mik6Cn4jISBybj1HbG9pbnNvbiBydD0xMDkzNDM4NzY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MzM2MTI5MwpPZGVyIE9ldHRpbmdlciBFeHBvcnQuIE9kZXIgUm9lbWVycGlscy4gSGFjaCwgZXMgZ2lidCBkb2NoIGVjaHQgc2VociBzY2hvZW5lClNhY2hlbiwgbWl0IGRlbmVuIG1hbiBPcGZlcm4gZGFzIEJpZXJ0cmlua2VuIGFiZ2V3b2VobmVuIGthbm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBbmZhZW5nZXIgKEdsb2luc29uLCAyNS4gQXVnIDIwMDQsIDE1OjAyOjQyKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTEwOTM0Mzg5MDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkzMzYxMjkzCkhhdXB0c2FjaGUgZXMgc3RlaHQgIkJpZXIiLCAiQmVlciIsICJCaXJyYSIsICJQaXZvIiBvQWUgZHJhdWYuIE1hbiBrb2VubnRlCmF1Y2ggd2FzIGdhbnogZWtsaWdlcyBhdXMgZGVtIEF1c2xhbmQgaW1wb3J0aWVyZW4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQW5mYWVuZ2VyIChCYW1idWxrbywgMjUuIEF1ZyAyMDA0LCAxNTowODoxNCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDkzNDM4OTYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MzM2MTI5MwpEYXMgYmlsbGlnc3RlIEJpZXIgaGllciBpbiBIb2xsYW5kIGhlaXNzdCBCYXZhcmlhLiBIYWJlIGVzIG5vY2ggbmllIHByb2JpZXJ0LgpoYWJlIGVzIGF1Y2ggbmljaHQgdm9yLgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFuZmFlbmdlciAoR2xvaW5zb24sIDI2LiBBdWcgMjAwNCwgMTg6MjA6MzIpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTEwOTM1MzY5NzQgcmc9ZXRpa2V0dGUKfiMhIHRpZD0xMDkzMzYxMjkzCkJhaCwgd2llIG1pciBkaWVzZSAic2VpZCBkb2NoIGxpZWIgenVlaW5hbmRlciItTGV1dGUgbWFuY2htYWwgYXVmIGRlbiBTYWNrCmdlaGVuLiBadW1hbCBzaWUgaW1tZXIgdmVya2VubmVuLCBkYXNzIGRlc3RydWt0aXZlIEVuZXJnaWUgbmljaHQgZ2xlaWNoCmtvbnN0cnVrdGl2ZXIgaXN0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFuZmFlbmdlciAoRGVlcGJsdWUsIDI2LiBBdWcgMjAwNCwgMTg6MjQ6NDApOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTEwOTM1MzY5NzQgcmc9ZXRpa2V0dGUKfiMhIHRpZD0xMDkzMzYxMjkzCkFsc28gc2NoYWZmdCBkYXMgQW5zY2h3YWVyemVuIEFyYmVpdHNwbGFldHplLCBvZGVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQW5mYWVuZ2VyIChab29rLCAyNi4gQXVnIDIwMDQsIDE4OjMxOjQxKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwOTM1Mzc0ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkzMzYxMjkzCk9oLCBkaWUgUnVicmlrIGhhdCBqYSBzY2hvZW4gZXhwaXJlZC4gOykKClpPb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBbmZhZW5nZXIgKEdsb2luc29uLCAyNi4gQXVnIDIwMDQsIDE4OjM5OjI1KToKfiMhIHJuPVpvb2sgcnQ9MTA5MzUzNzkwMSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTMzNjEyOTMKSWNoIGJpbiBqYSBkYWZ1ZXIgQW5mYWVuZ2VyIGF1ZiBTdGFlYmUgKG5pY2h0IFNwZWVyZSEpIHp1IHN0ZWNrZW4gdW5kIHZvciBQb3J0ClZhaW5zIFRvcmVuIGF1Znp1c3RlbGxlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJZGxlLCBvZGVyIHNvIChBc3VrYSwgMjcuIEF1ZyAyMDA0LCAxNDo0OToxNSk6CigxNDo0NikgVm9uIEZyZXVuZCBSaXBwb3I6IGJpbiBtYWwgYmlzc2wgaWRsZQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBLbGl0emVsZHJvbXNdIEljaCBmb3JkZXJlIFJldmFuY2hlLCBSaXBwb3IhCltNb2VyZGVyOlJpcHBvcl0ga3JhZnQrMgoKU29zbywgaWRlbG4gbmVubnN0IER1IGRhcyBhbHNvLiA6KQoKQXN1a2EKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJZGxlLCBvZGVyIHNvIChDcm9mdCwgMjcuIEF1ZyAyMDA0LCAxNToxMzowOSk6Cn4jISBybj1Bc3VrYSBydD0xMDkzNjEwOTU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MzYxMDk1NQpIb2VyIHNvZm9ydCBhdWYgYmVpbSBEcm9tIHp1IGlkbGVuIHVuZCBzdGVsbCBkYXMgRHJvbS1Ta3JpcHQgYWIgLC0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBJZGxlLCBvZGVyIHNvIChab29rLCAyNy4gQXVnIDIwMDQsIDE1OjE0OjM5KToKfiMhIHJuPUNyb2Z0IHJ0PTEwOTM2MTIzODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkzNjEwOTU1CkthdW0gZHJvaHQgTXVhZGliIG1pdCBVcmxhdWIsIHRhbnplbiBkaWUgTWFldXNlIGF1ZiBkZW4gVGlzY2hlbiEKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWRsZSwgb2RlciBzbyAoUmlwcG9yLCAyNy4gQXVnIDIwMDQsIDE1OjMxOjMwKToKfiMhIHJuPUFzdWthIHJ0PTEwOTM2MTA5NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkzNjEwOTU1CkplZGVyIGF1ZiBzZWluZSBBcnQgdW5kIFdlaXNlLi4uIDspCgpSaXBwb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkljaCBiaW4gaGFsdCBkZXIgQnJ1ZGVyIHZvbSBHb3R0Li4uIChCYW1iaSwgMjcuIEF1ZyAyMDA0LCAyMToyMjoyMSk6CldoaXRlVGlnZXIgdGVpbHQgRGlyIG1pdDogd2llIG1hY2hzdCBkdSBkYXMgLi4uPwpEdSB0ZWlsc3QgV2hpdGV0aWdlciBtaXQ6IGljaCBiaW4gZ3V0CldoaXRlVGlnZXIgc2NoYXV0IERpY2ggendlaWZlbG5kIGF1cyBkZXIgRmVybmUgYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIGJpbiBoYWx0IGRlciBCcnVkZXIgdm9tIEdvdHQuLi4gKFdoaXRldGlnZXIsIDI3LiBBdWcgMjAwNCwgMjE6MjM6NTkpOgp+IyEgcm49QmFtYmkgcnQ9MTA5MzYzNDU0MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTM2MzQ1NDEKW0thcmxzcnVoZTpCYW1iaV0gaGkKQmFtYmkgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEgKDIxOjIwOjU0KQpbS2F0emVua3JpZWdlcjpCYW1iaV0gdGFjaAoKaGF0IGRhdm9yIGdlZmVobHQgOykKVGlnZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNrZWxldHRlIChQaXRmYWxsLCAyNy4gQXVnIDIwMDQsIDIzOjA1OjQ0KToKRWluIHNjaHdhcnplcyBTa2VsZXR0IHZlcnN1Y2h0IGVpbmUgRmludGUgZ2VnZW4gS2FyaW1hLgpFaW4gc2Nod2FyemVzIFNrZWxldHQgZnVjaHRlbHQgbWl0IGVpbmVtIHNjaHdhcnplbiBLYW1wZnN0YWIgaGVydW0gdW5kCnNjaG5laWRldCBzaWNoIGRhYmVpIGVpbiBwYWFyIEhhYXJidWVzY2hlbCBhYiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmt1ZXJ6bGljaCBpbiBlaW5lbSB3YWVsZGNoZW4gKEpvaG5zaWx2ZXIsIDI4LiBBdWcgMjAwNCwgMDI6Mzc6MTIpOgpBdXMgZGllc2VtIHNjaG1hbGVuIFNwYWx0IGZsaWVzc3QgZGFzIGtsYXJlIFdhc3NlciBkZXMgQmFjaGVzLiBBYmVyIHdhcyBpc3QKZGVubiBkYXM/IERhIGhhdCBkb2NoIHdhcyBnZWdsaXR6ZXJ0IQpTeW50YXg6IGdyZWlmZSBpbiBsb2NoCj4gZ3JlaWZlIGluIGxvY2gKTWl0IGV0d2FzIFBoYW50YXNpZSBrb2VubnRlIG1hbiBkZW4gU3BhbHQgYXVjaCBzbyBuZW5uZW4uCj4gZ3JlaWZlIGluIHNwYWx0ClN5bnRheDogZ3JlaWZlIGluIGxvY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkNoYW9zIChTZWV0ZXVmZWwsIDI4LiBBdWcgMjAwNCwgMTQ6MTM6MDUpOgogIC4uLi5ub3JtYWwvRmV1ZXJrZXVsZS4uIEZldWVycmllc2UuLi4gOiBEaWNoLi4uLi4uLi4uICoqKioqKioqIDwtIGdla2l0emVsdAogIC4uLi5ub3JtYWwvS2F0YW5hLi4uLi4uIER1Li4uLi4uLi4uLi4gOiBGZXVlcnJpZXNlbi4uICoqKioqKioqIC0+IGdla3JhdHp0Clx0ZWdhdGFuYQpEZWluIEthdGFuYSBodWVsbHQgc2ljaCBpbiBlaW5lIEZsYW1tZW5hdXJhLgpoYXlhaQoKc28gbGllYnQgbWFuIGVzIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ2hhb3MgKEJvaW5nLCAyOC4gQXVnIDIwMDQsIDIxOjAwOjAxKToKfiMhIHJuPVNlZXRldWZlbCBydD0xMDkzNjk1MTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MzY5NTE4NQpEYXMgbXVzcyBtYW4gYWJlciBuaWNodCB2ZXJzdGVoZW4sIG9kZXI/IEFiZXIgc2Nob2VuIGRhc3MgbWFuIGVzIHNvIGxpZWJ0LgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IENoYW9zIChCYW1iaSwgMjkuIEF1ZyAyMDA0LCAwOTo0Njo0Mik6Cn4jISBybj1Cb2luZyBydD0xMDkzNzE5NjAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MzY5NTE4NQpFciBsaWVidCBlcywgZGFzcyBkaWVzZSBrb21pc2NoZSBGb3JtYXRpZXJ1bmcgZGllIExlc2JhcmtlaXQgc2VpbmVzIEFydGlrZWxzCnp1c2FtbWVuc2NoaWVzc3QsIHNvIGRhc3MgZWluIE5vcm1hbG11ZGRlciBvaG5lICh1bilicmF1Y2hiYXJlcyBDbGllbnR3aXNzZW4KdWViZXIgZGl2ZXJzZSAiS2FtcGZzY3JvbGxyZWR1emllcnVuZ3NzY3JpcHRlIiwgIldpciB1bnRlcnN1Y2hlbiBzdG9pc2NoIGFsbGVzCmdyb3NzZ2VzY2hyaWViZW5lIGFiZXIgZGFmdWVyIGF1dG9tYXRpc2NoIi1QbHVnaW5zIHVuZCAid2lyIHNpbmQgcGFyYW5vaWQgdW5kCnZlcnNjaGx1ZXNzZWxuIGRhaGVyIGFsbGUgS29tbXVuaWthdGlvbnNtb2VnbGljaGtlaXRlbiB1ZWJlciBkYXMgTXVkIG1pdHRlbHMKS3J5cHRvZ3JhcGhpZWFsZ29yaXRobWVuIi1Ub29scyBkZW4gZWlnZW50bGljaGVuIFNpbm4gc2VpbmVzIEFydGlrZWxzIG5pY2h0CmZpbmRldC4gVmllbGxlaWNodCBoYXN0IER1IGphIHdlbmlnc3RlbnMgd2FzIHZvbiBtZWluZW0gQXJ0aWtlbCwgZGVyCm1vZWdsaWNoZXJ3ZWlzZSAtdHJvdHogUnVicmlrLSBoZWZ0aWdlIERpc2t1c3Npb25lbiB1ZWJlciBDbGllbnRzIG9kZXIgZGllCnZlcmxldW1kZXJpc2NoZW4gQWt0aXZpdGFldGVuIG1vZWNodGVnZXJud2ljaHRpZ2VyIFdhbGRiZXdvaG5lciBhdXNsb2VzdC4KCkJhbWJpLCBncmFkIGF1Zmdlc3RhbmRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IENoYW9zIChPZ28sIDI5LiBBdWcgMjAwNCwgMTQ6NDQ6MDQpOgp+IyEgcm49QmFtYmkgcnQ9MTA5Mzc2NTYwMiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTM2OTUxODUKTGllYmVzIEJhbWJpLAoKRHUgYnJpbmdzdCBob2ZmbnVuZ3Nsb3MgRGluZ2UgZHVyY2hlaW5hbmRlcjsgdW0gZGVuIEFydGlrZWwgenUgdmVyc3RlaGVuLApiZW5vZXRpZ3QgbWFuIHdlZGVyIGJyYXVjaC0gbm9jaCB1bmJyYXVjaGJhcmVzIENsaWVudHdpc3Nlbi4gRGllc2VsYmUgQXVzc2FnZQpiZWthZW1lIG1hbiBtaXQgZGVuIFN0aWNod29ydGVuICJGZXVlcnJpZXNlLCBLYXRhbmEsIEZsYW1tZW5hdXJhIi4gRGllClRhdHNhY2hlLCBkYXNzIER1IChkZXIgbW9lY2h0ZWdlcm53aWNodGlnZSBXYWxkYmV3b2huZXIgYmlzdCBEdSwgb2Rlcj8pCmJlc2FndGVzIEthdGFuYSBhbnNjaGVpbmVuZCBuaWNodCBrZW5uc3QsIHJlY2h0ZmVydGlndCBzZWxic3R2ZXJzdGFlbmRsaWNoCmVpbmVuIFNlaXRlbmhpZWIoPykgYXVmIGRpZXNlcyBmdXJjaHRiYXIgcGFyYW5vaWRlIFBhY2sgdm9uIFNwaWVsZXJuLCBkaWUKamVnbGljaGVuIEJlenVnIHp1ciBSZWFsaXRhZXQgdmVybG9yZW4gaGFiZW4gdW5kIHNpY2ggYXVzIHNjaGllcmVyIExhbmdld2VpbGUKaGluc2V0emVuIHVuZCBpaHJlIE11ZGtvbW11bmlrYXRpb24gdmVyc2NobHVlc3NlbG4uIFdlbm5nbGVpY2ggZGllIEFydCB1bmQKV2Vpc2UsIHdpZSBEdSBvaG5lIGlyZ2VuZGVpbmVuIG5hY2h2b2xsemllaGJhcmVuIFp1c2FtbWVuaGFuZyBkaWVzZSB0ZWNobmlzY2hlClNwaWVsZXJlaSBpbiBlaW5lbSBBdGVtenVnIG1pdCBLYW1wZnNjcm9sbHJlZHV6aWVyZXJuIGJyaW5nc3QsIG1pY2ggenUgZGVyClZlcm11dHVuZyBrb21tZW4gbGFlc3N0LCBkYXNzIGRpZXMgdmllbGxlaWNodCBhdXMgdW5yZWZsZWt0aWVydGVtIE5laWQgYXVmCmRlcmFydGlnZSBGYWVoaWdrZWl0ZW4gcmVzdWx0aWVydC4gV2VubiBkZW0gc28gaXN0LCBmcmV1dCBlcyBtaWNoLCBEaXIKbWl0dGVpbGVuIHp1IGR1ZXJmZW4sIGRhc3MgYXVjaCBEdSBkYXMgc2NoYWZmZW4ga2FubnN0ISBBdWNoIER1IGthbm5zdCBEaWNoCm1hZWNodGlnZXIgKHdpZSBoaWVzc2VuIHNpZSBkb2NoIGdsZWljaD8pIEtyeXB0b2dyYXBoaWVhbGdvcml0aG1lbi1Ub29scwpiZWRpZW5lbiB1bmQgaW4gZGVuIEtyZWlzIGRlciBlcmxhdWNodGVuIFBhcmFub2lrZXIgYXVmc3RlaWdlbi4gRGVubiwgd2llIHdpcgphbGxlIHdpc3NlbiwgYmVkZXV0ZXQgcGFyYW5vaWQgU2VpbiBuaWNodCwgZGFzcyBtYW4gbmljaHQgdmVyZm9sZ3QgKG9kZXIgYXVjaAphYmdlaG9lcnQgd2lyZCkuCgoKT2dvLCBpbiBkZXIgcmljaHRpZ2VuIFJ1YnJpawoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBWb2xsZSBLcmFmdCB6dXJ1ZWNrISAoR25vbWUsIDI5LiBBdWcgMjAwNCwgMTg6NTg6MDEpOgp+IyEgcm49TWFoYXJldCBydD0xMDkzNzA4MzIzIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDkyMDQ4Nzk2Cj5Lb21tYXJlZ2VsbiBhbmdlaHQgLSBkaWUgd3VyZGVuIHZvbiBldHdhIDUwIGF1ZiA4IG9kZXIgc28gZ2VrdWVyenQgLSBpc3QgZGFzCj5uaWNodCBiZWdydWVzc2Vuc3dlcnQ/CgpuZWluLCBpc3QgZXMgbmljaHQuCgphKSBkdXJjaCBkaWUgbmV1ZSBsYXBpZGFyZXJlICJhY2gtc2V0emVuLXdpci1tYWwtaGllci1laW4ta29tbWEtc2llaHQtZ2Fuei0KICAgZ3V0LWF1cyIta29tbWFzZXR6dW5nIGdlaGVuIHRlaWx3ZWlzZSBtYWwgd2llZGVyIHNpbm56dXNhbW1lbmhhZW5nZQogICB2ZXJsb3JlbiwgZG9wcGVsZGV1dGlna2VpdGVuIG5laG1lbiB6dSwgZGVyIGxlc2VmbHVzcyB3aXJkIGVyc2Nod2VydC4KCmIpIG1hbiBrYW5uIHNpY2ggZGFzIGVyZ2VibmlzIGRlcyBuYWVjaHN0ZW4gcGlzYS10ZXN0cyBuYXR1ZXJsaWNoIGF1Y2gKICAgenVyZWNodGJpZWdlbi4gIm9oLCBkaWUgZGFlbWxpY2hlbiBraWRkaWVzIGtvZW5uZW4gc2ljaCBzbyB2aWVsZSByZWdlbG4KICAgZ2FyIG5pY2h0IG1lcmtlbi4gaG1tLCB3YXMgbWFjaGVuIHdpciBkZW5uIG51bj8gb2ssIHdpciByZWR1emllcmVuCiAgIGRpZSByZWdlbG4sIGRhbm4ga29lbm5lbiBzaWUgdm9uIHZvcm5oZXJlaW4gbmljaHQgc28gdmllbGUgZmVobGVyCiAgIG1hY2hlbi4gZGFzIGlzdCBkb2NoIGtsYXNzZS4gd2lldmllbCByZWdlbG4gbmVobWVuIHdpciBkZW5uPyBoZXkKICAgaGF1c21laXN0ZXIsIHNhZyBtYWwgbmUgemFobCB6d2lzY2hlbiAxIHVuZCAxMCEgLi4uIDg/IG9rLCBuZWhtZW4KICAgd2lyIDguIgoKYykgaWNoIGdlYmUgamEgenUsIGRhc3MgNTAgcmVnZWxuIGZ1ZXIgZWluIGtsZWluZXMgc2F0enplaWNoZW4gZXR3YXMKICAgenUgdmllbCBzaW5kLiBhYmVyIGdlcmFkZSBkaWUgbmV1ZSBrb21tYXNldHp1bmcgaXN0IG1hbCB3aWVkZXIgZWluCiAgIHBhcmFkZWJlaXNwaWVsIGZ1ZXIgImd1dCBnZW1laW50LCBzY2hsZWNodCBnZW1hY2h0Ii4KCmQpIHdpciBicmF1Y2hlbiBlaW5kZXV0aWcgbWVociBwbGF0eiBpbiAiZGlza3Vzc2lvbiIuCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IFZvbGxlIEtyYWZ0IHp1cnVlY2shIChBc3VrYSwgMjkuIEF1ZyAyMDA0LCAxOTowNjo1NCk6Cn4jISBybj1Hbm9tZSBydD0xMDkzNzk4NjgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjA0ODc5Ngo+IHZlcmxvcmVuLCBkb3BwZWxkZXV0aWdrZWl0ZW4gbmVobWVuIHp1LCBkZXIgbGVzZWZsdXNzIHdpcmQgZXJzY2h3ZXJ0LgoKTm8gQ29tbWVudC4KCkFzdWthCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogVm9sbGUgS3JhZnQgenVydWVjayEgKEJyYW4sIDI5LiBBdWcgMjAwNCwgMjE6MDY6MTQpOgp+IyEgcm49R25vbWUgcnQ9MTA5Mzc5ODY4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIwNDg3OTYKV2FzIHdpbGxzdCBkdSBkYW1pdCBzYWdlbj8gSWNoIHN0aW1tZSBHbm9tZSBkYSB2b2VsbGlnIHp1LgoKQnJhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFZvbGxlIEtyYWZ0IHp1cnVlY2shIChBc3VrYSwgMjkuIEF1ZyAyMDA0LCAyMTowOTozMCk6Cn4jISBybj1CcmFuIHJ0PTEwOTM4MDYzNzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMDQ4Nzk2ClNpY2ggdWViZXIgZXJzY2h3ZXJ0ZW4gTGVzZWZsdXNzIGVjaGF1ZmZpZXJlbiwgYWJlciBzZWxic3QgYXVzIGVpZ2VuZXIKQmVxdWVtbGljaGtlaXQgb2RlciBGYXVsaGVpdCBhbGxlcyBrbGVpbnNjaHJlaWJlbi4gCgpBc3VrYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IFZvbGxlIEtyYWZ0IHp1cnVlY2shIChCcmFuLCAyOS4gQXVnIDIwMDQsIDIxOjEzOjMyKToKfiMhIHJuPUFzdWthIHJ0PTEwOTM4MDY1NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMDQ4Nzk2CkRlbiBQdW5rdCBoYXR0ZW4gd2lyIGphIHNjaG9uLiBIaWVyIGltIE11ZCBpc3QgS2xlaW5zY2hyZWlidW5nIHdlaXRnZWhlbmQKdWVibGljaCwgZGFzIGlzdCBHZXdvaG5oZWl0c3NhY2hlIC0gZGFkdXJjaCBoYWJlIGljaCBtaWNoIG5vY2ggbmllIGltCkxlc2VmbHVzcyBnZXN0b2VydCBnZWZ1ZWhsdC4gVm9uIGFtYml2YWxlbnRlciBLb21tYXNldHp1bmcgZGFnZWdlbiBkdXJjaGF1cy4KSW0gVWVicmlnZW4gbmVobWUgaWNoIG5pY2h0IGFuLCBkYXNzIEdub21lIGF1Y2ggUkwgYWxsZXMga2xlaW4gc2NocmVpYnQgLQpnZW5hdXNvd2VuaWcgd2llIGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBWb2xsZSBLcmFmdCB6dXJ1ZWNrISAoQXN1a2EsIDI5LiBBdWcgMjAwNCwgMjE6MTc6NTQpOgp+IyEgcm49QnJhbiBydD0xMDkzODA2ODEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjA0ODc5NgpUdXQgbWlyIExlaWQsIHZvbiBUZWlsbmVobW5lcm4gYW4gZWluZXIgRGlza3Vzc2lvbiB1ZWJlciBSZWNodHNjaHJlaWJ1bmcKZXJ3YXJ0ZSBpY2ggenVtaW5kZXN0ZW5zLCBkYXMgc2llIGF1Y2ggaW4gaWhyZW4gQXJ0aWtlbCBkaWVzZSBpbnNvZmVybgprb3JyZWt0IG51dHplbiwgc28gZGFzcyBzaWUgbGVzYmFyIHNpbmQuClVuZCBuZWluLCBmdWVyIG1pY2ggZ2Vob2VyZW4gZGEgQXJ0aWtlbCwgd2VsY2hlIGtvbnN0YW50IGtsZWluIApnZXNjaHJpZWJlbiBzaW5kIG5pY2h0IGRhenUsIG1laW5lciBBbnNpY2h0IG5hY2ggZGlzcXVhbGlmaXppZXJ0IApzaWNoIGRlciBBdXRvciBkYW1pdCBzZWxic3QuCkplZGVyIHJlZ3Qgc2ljaCBhdWYgd2VubiBlaW5lciBhbGxlcyBHcm9zcyBzY2hyZWlidCwgZG9jaCBiZWkgCktsZWluc2NocmVpYnVuZyBpc3QgZGFzIHBsb2V0emxpY2ggd2FzIHRvdGFsIGFuZGVyZXMgdW5kIGdlZHVsZGV0PwoKQXN1a2EKCkRpc2NsYWltZXI6IFZvcnNpY2h0LCBkaWVzZXIgQXJ0aWtlbCBrb2VubnRlIElyb25pZSwgU2Fya2FzbXVzIG9kZXIKS3JpdGlrIGVudGhhbHRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBWb2xsZSBLcmFmdCB6dXJ1ZWNrISAoQnJhbiwgMjkuIEF1ZyAyMDA0LCAyMToxOTowOCk6Cn4jISBybj1Bc3VrYSBydD0xMDkzODA3MDc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjA0ODc5NgpEYXMgc2llaHQgbWFuIGphIHNjaG9uIGRhcmFuLCBkYXNzIGR1IG51biBzb2dhciBzY2hvbiBBZGpla3RpdmUgZ3Jvc3MKc2NocmVpYnN0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogVm9sbGUgS3JhZnQgenVydWVjayEgKEFzdWthLCAyOS4gQXVnIDIwMDQsIDIxOjIxOjE2KToKfiMhIHJuPUJyYW4gcnQ9MTA5MzgwNzE0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIwNDg3OTYKU29sbCBpY2ggZXh0cmEgZnVlciBEaWNoIGRlbiBBcnRpa2VsIG5vY2htYWwgbG9lc2NoZW4gdW5kIGRlbiB0eXBvCmJlcmVpbmlnZW4/IEVpbiBUaXBwZmVobGVyIGltIFZlcmdsZWljaCB6dSBlaW5lbSBrb25zdGFudCAKa2xlaW5nZXNjaHJpZWJlbiBBcnRpa2VsLi4uLmljaCBnZWJzIGF1ZiwgZnVlciBtaWNoIGlzdCBkaWUgCkRpc2t1c3Npb24gaGllcm1pdCBiZWVuZGV0LgoKQXN1a2EKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBWb2xsZSBLcmFmdCB6dXJ1ZWNrISAoTWFoYXJldCwgMjkuIEF1ZyAyMDA0LCAyMToyMzo0MCk6Cn4jISBybj1Bc3VrYSBydD0xMDkzODA3Mjc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjA0ODc5NgpOaWNodCBhdWZnZWJlbi4gVmVyc3VjaHQgbnVyLCBkaWUgQXJ0aWtlbCBtb2VnbGljaHN0IGt1cnogenUgaGFsdGVuIC4uLiBzYWdlbgp3aXIsIGJpcyB6dSA1IFplaWxlbj8gIExhZW5nZXJlIG1hZyBpY2ggbmljaHQgbWVociBsZXNlbiwgYWJlciBtaWNoCmludGVyZXNzaWVydCBkb2NoIGVpbiBiaXNzY2hlbiwgd2llIGxhbmdlIGRhcyBUaGVtYSBub2NoIGdlaGFsdGVuIHdlcmRlbiBrYW5uLgpHaWJ0IGVzIGVpZ2VudGxpY2ggZWluZSBUb3BsaXN0ZSBkZXIgYW0gbGFlbmdzdGVuIGRpc2t1dGllcnRlbiBUaGVtZW4/ICAKCk1haGFyZXQsIGluIENhdHR5cyBHZWhpcm4gcnVtd3VlaGxlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBWb2xsZSBLcmFmdCB6dXJ1ZWNrISAoQWxib2luLCAyOS4gQXVnIDIwMDQsIDIxOjQ1OjAxKToKfiMhIHJuPU1haGFyZXQgcnQ9MTA5MzgwNzQyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTIwNDg3OTYKRGllIHRvcGxpc3RlIGdpYnRzIGxlaWRlciBub2NoIG5pY2h0LCBhYmVyIGljaCB3ZXR0ZSBnYW56IHZvcm5lIGlzdDogd2VsY2hlCk11ZG5hbWVuIHNpbmQgYW5nZWJyYWNodD8gdW5kIG5hdHVlcmxpY2ggV2VsY2hlcyBCZXRyaWVic3N5c3RlbSBpc3QgZGFzIGJlc3RlPwpVbmQgbmljaHQgenUgdmVyZ2Vzc2VuIGF1Y2ggZGFzIGlub2ZmaXppZWxsZSBiencgdmVyc3RlY2t0ZXN0ZQpEaXNrdXNzaW9uc3RoZW1hOiBNZWluZXIgaXN0IGdyb2Vzc2VyIGFscyBEZWluZXIgOy0pCgphbCB0b2Rlcm5zdCB1bmQgZHVlc3RlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IFZvbGxlIEtyYWZ0IHp1cnVlY2shIChHbG9pbnNvbiwgMzAuIEF1ZyAyMDA0LCAwMDozNDo1Myk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwOTM4MDc0MjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkyMDQ4Nzk2CkFtIGxhZW5nc3RlbiBhbSBTdHVlY2sgb2RlciBhbSBsYWVuZ3N0ZW4gaW5zZ2VzYW10PyBTb3dhcyB3aWUKIlJ1ZXN0dW5nc3NwaXJhbGUiIG9kZXIgIkJlc2NoYWVkaWd1bmdlbiBhbiBSdWVzdHVuZ2VuL1dhZmZlbiIgZHVlcmZ0ZQp6d2VpdGVyZW4gV2V0dGJld2VyYiBsb2NrZXIgZ2V3aW5uZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQ2hhb3MgKFpvb2ssIDMwLiBBdWcgMjAwNCwgMTA6MTE6MDcpOgp+IyEgcm49T2dvIHJ0PTEwOTM3ODM0NDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkzNjk1MTg1Ck5vY2ggamVtYW5kLCBkZXIgYmVpIGRlciBIYWVsZnRlIGRlcyBBcnRpa2VscyBzcG9udGFuIGVpbmdlc2NobGFmZW4gaXN0PwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBWb2xsZSBLcmFmdCB6dXJ1ZWNrISAoWm9vaywgMzAuIEF1ZyAyMDA0LCAxMDoxMjoyNyk6Cn4jISBybj1Hbm9tZSBydD0xMDkzNzk4NjgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjA0ODc5NgpkaWUgaW4gYSkgeml0aWVydGUgcmVnZWwgZmluZGUgaWNoIGluIG1laW5lbSBkdWRlbiBuaWNodC4ga2FubnN0IGR1IG1pcgpkaWUgc2VpdGVuemFobCBuZW5uZW4/IGljaCBoYWJlIGRpZSAyMi4gYXVmbGFnZS4KCnpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBDaGFvcyAoQm9pbmcsIDMwLiBBdWcgMjAwNCwgMTA6NDI6NDIpOgp+IyEgcm49Wm9vayBydD0xMDkzODUzNDY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MzY5NTE4NQpEdSBiaXN0IGJpcyB6dXIgSGFlbGZ0ZSBnZWtvbW1lbj8gV293ISA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBDaGFvcyAoR2xvaW5zb24sIDMwLiBBdWcgMjAwNCwgMTA6NTE6NTYpOgp+IyEgcm49Qm9pbmcgcnQ9MTA5Mzg1NTM2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTM2OTUxODUKTnVuIGlzdCBrbGFyLCB3YXJ1bSBpY2ggbm9jaCBzdHVkaWVyZW4gdW5kIFpvb2sgc2Nob24gZmVydGlnIGlzdC4gSWNoIGhhYiBkZW4KZGlhZ29uYWwgZ2VzY2FubnQgdW5kIGRlcyBMZXNlbnMgbmljaHQgd2VydCBiZWZ1bmRlbi4gQWNoIGhhZXR0IGljaCBudXIKZ2VoZWlyYXRldCBkZW4gS29lbmlnIERyb3NzZWxiYXJ0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkpldHp0IGF1Y2ggbm9jaCBkaWUgRmVsaW5lbj8gKENyb2Z0LCAzMC4gQXVnIDIwMDQsIDE2OjM4OjEzKToKVGFzc3JhbSBzYWd0OiBzbyBpY2ggZ2VoIG1hbCBuZW4gYmF1bSBrbnVkZGVsbi4uClRhc3NyYW0gd2lua3QuClRhc3NyYW0gJ3lyZyd5cyd0c24gWSd5YWRoZSBuYWNoIE9zdGVuJ3R5cy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBKZXR6dCBhdWNoIG5vY2ggZGllIEZlbGluZW4/IChCYW1iaSwgMzAuIEF1ZyAyMDA0LCAyMzoyMzozNik6Cn4jISBybj1Dcm9mdCBydD0xMDkzODc2NjkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5Mzg3NjY5MwpXYXMgbWljaCBpcnJpdGllcnRlIHdhciBkZXIgT3J0LCBhbiBkZW0gc2llIHNpY2ggbGFlbmdlcmUgWmVpdCBhdWZnZWhhbHRlbgpoYXQsIHVtIGlobiB6dSBmaW5kZW4uIE9kZXIgd2FyIGRhcyB6dSBkZW0gWmVpdHB1bmt0IHNjaG9uIHZvcnVlYmVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2llIGthbm4gbWFuIHNvd2FzIHZlcm9lZmZlbnRsaWNoZW4/IChBbWFyeWxsaXMsIDMxLiBBdWcgMjAwNCwgMTM6MjI6MjEpOgp+IyEgcm49SG9ibyBydD0xMDkzOTUwOTU5IHJnPXd3dwp+IyEgdGlkPTEwOTM2MjQwNjUKS2F0emUgZXJzY2hpZXNzZW4sIHVuZCBSdWhlIGlzLgoKQW1hKiwga2FubiBkaWUgQXVmcmVndW5nIG5pY2h0IHZlcnN0ZWhlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdpZSBrYW5uIG1hbiBzb3dhcyB2ZXJvZWZmZW50bGljaGVuPyAoQ3JvZnQsIDMxLiBBdWcgMjAwNCwgMTM6MjM6NDEpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwOTM5NTEzNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkzNjI0MDY1CkhtLiAgRGllIENoYW5jZW4gc3RlaGVuIHNpY2hlciBuaWNodCBhbGx6dXNjaGxlY2h0IGRhcyBkaWVzZSBLYXR6ZSBiZXJlaXRzCnRvdCBpc3QuICBXaWVzbyBkYW5uIG5vY2htYWwgZXJzY2hpZXNzZW4/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2llIGthbm4gbWFuIHNvd2FzIHZlcm9lZmZlbnRsaWNoZW4/IChLcmltYXJpb2wsIDMxLiBBdWcgMjAwNCwgMTM6Mjg6MTUpOgp+IyEgcm49Q3JvZnQgcnQ9MTA5Mzk1MTQyMSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTM2MjQwNjUKSG1tLCBkYXMga29lbm50IGVzIHNlaW4sIGRhcyBpc3QgZWluZSBhdXNnZXN0b3BmdGUgS2F0emUgdW5kIE1vcmdvdGggaGF0IHNpY2gKZGFydWViZXIgYXVmZ2VyZWd0LCBkYXNzIHNpY2ggamVtYW5kIGVpbiBzb2xjaGVzIEJhZGV6aW1tZXJ1dGVuc2lsICg/KSBoYWVsdCwKZGEgZXIgS2F0emVuZnJldW5kIGlzdC4uLgpvZGVyIHNvIGFlaG5saWNoCk1mRwpLcmltYXJpb2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBWb2xsZSBLcmFmdCB6dXJ1ZWNrISAoS2VsbHlidW5keSwgMzEuIEF1ZyAyMDA0LCAyMDowMDoxNCk6Cn4jISBybj1Hbm9tZSBydD0xMDkzNzk4NjgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5MjA0ODc5NgpCZWxlaWRpZ2UgYml0dGUgbmljaHQgZGVuIGR1cmNoc2Nobml0dGxpY2hlbiBIYXVzbWVpc3Rlci4gQmVpIGRlbSBoaWVzcyBkaWUKUGVubmUgZGFtYWwgbm9jaCAnVm9sa3NzY2h1bGUnIHVuZCBkaWUgaGFiZW4gZWNodCBub2NoIGdhbnogc2Nob2VuIHdhcyBnZWxlcm50CmRhLgoKQmxvbmRjaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBCZXV0ZXRlaWx1bmcgKENhdHdlYXpsZSwgMzEuIEF1ZyAyMDA0LCAyMzoyMDo1MSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDkzOTgyMzg3IHJnPXB1aXoKfiMhIHRpZD0xMDkzOTgwODM2CkhhdCBkYXMgVGlnZXJjaGVuIGVpbiBSYWV0c2VsYnVjaCBnZWthdWZ0PwoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBCZXV0ZXRlaWx1bmcgKEJvaW5nLCAzMS4gQXVnIDIwMDQsIDIzOjIxOjI1KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDkzOTg3MjUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5Mzk4MDgzNgpOZWluLCBkYXMgTVBBLUFyY2hpdiBnZWxlc2VuIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hY2h0IGRlciBCb3RzIC4uLiAoQXJrLCAzMS4gQXVnIDIwMDQsIDIzOjQxOjI3KToKW1pUOlR5bGFrIHVlYmVyZ2lidCBkaWUgRWJlbmUgYW4gTWVoYWwuXQotenQ/ClpULCBHZWRpY2h0c2ludGVycHJldGF0aW9uZW4uCkR1IHNpZWhzdCAyNSBHZXNpY2h0ZXIgYXVmIGRlciBFYmVuZSAnWlQnOgouLi4uCk1laGFsIGhhdCBkYXMgU2FnZW4gYXVmIGRpZXNlciBFYmVuZS4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFjaHQgZGVyIEJvdHMgLi4uIChDcm9mdCwgMzEuIEF1ZyAyMDA0LCAyMzo0MjoyNyk6Cn4jISBybj1BcmsgcnQ9MTA5Mzk4ODQ4NyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTM5ODg0ODcKSG0uIEhlaXNzdCBkYXMgbWFuIGthbm4gTWVoYWwgbmFjaCBkZW4gWlQtU3BydWVjaGVuIGZyYWdlbj8gIFdhcyBlaW4KR2x1ZWNrIGRhcyBNdWFkaWIgZ3JhZCBpbiBVcmxhdWIgaXN0ICwtKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRlciBTcGl0emh1dCBsdWVndCEgKEJvZXNlLCAgMS4gU2VwIDIwMDQsIDEzOjQzOjI3KToKaW5mbyAtPiBDaGFyYWt0ZXI6IHNhdGFuaXNjaAoKRGVpbiBmdW5rZWxuZGVyIFNwaXR6aHV0IHRlaWx0IERpciBtaXQ6IEFuIHNpY2ggYmlzdCBEdSBqYSBnYW56IG5ldHQuIE11c3MgaWNoCnNjaG9uIHNhZ2VuLgoKQWJlciBzb25zdCBnZWh0cyBpaG0gZ3V0PyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGRlciBTcGl0emh1dCBsdWVndCEgKERhcmtsb3IsICAxLiBTZXAgMjAwNCwgMTQ6MjE6MjcpOgp+IyEgcm49Qm9lc2UgcnQ9MTA5NDAzOTAwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTQwMzkwMDcKS29tbXQgZG9jaCBpbW1lciBhdWYgZGllIFBlcnNwZWt0aXZlIGFuIDspCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBCZXV0ZXRlaWx1bmcgKFdoaXRldGlnZXIsICAxLiBTZXAgMjAwNCwgMTU6MTg6NDcpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTEwOTM5ODcyNTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkzOTgwODM2Ck5laW4sIGVpbiBhbHRlcyBmdWVyIFBob2JvcyByYXVzZ2VrcmFtdCwgdW5kIHdlbm4gaWNoIGRhcyBzb3dpZXNvIGFidGlwcGUsCndvbGx0ZSBpY2ggYW5kZXJlbiBhdWNoIGRpZSBNb2VnbGljaGtlaXQgenVtIFJhZXRzZWxuIGdlYmVuLi4uCgpUaWdlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdGFtbXRpc2NoIEthcmxzcnVoZSAyLjkuMjAwNCAoWm9vaywgIDEuIFNlcCAyMDA0LCAxNjo1MzowNyk6Cn4jISBvbj1ab29rIG90PTEwOTQwNTAzNzkgb2c9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISBybj1Dcm9mdCBydD0xMDk0MDUwMTYxIHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwOTM5NTAzNDIKRXIga29jaHQgZGFzIFNjaHVldHRlbGJpZXI/IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3RhbW10aXNjaCBLYXJsc3J1aGUgMi45LjIwMDQgKEdyaW1tYm9ybiwgIDEuIFNlcCAyMDA0LCAxNjo1OTo1OSk6Cn4jISBybj1ab29rIHJ0PTEwOTQwNTAzODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkzOTUwMzQyCkF1Y2ggd2VubnMgRGlyIGtvbWlzY2ggdm9ya29tbWVuIG1hZzogRXMgZ2lidCBMZXV0ZSwgZGllIHNpY2ggdm9uIG1laHIgYWxzIG51cgpCaWVyIGVybmFlaHJlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3RhbW10aXNjaCBLYXJsc3J1aGUgMi45LjIwMDQgKEJvaW5nLCAgMS4gU2VwIDIwMDQsIDE3OjAzOjEyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDk0MDUwNzk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5Mzk1MDM0MgpEdSBrZW5uc3QgQ3JvZnQgbmljaHQgLi4uIDspCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFN0YW1tdGlzY2ggS2FybHNydWhlIDIuOS4yMDA0IChDcm9mdCwgIDEuIFNlcCAyMDA0LCAxNzowNDo1NCk6Cn4jISBybj1Cb2luZyBydD0xMDk0MDUwOTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5Mzk1MDM0MgpIZXkhICBJY2ggZXJuYWVociBtaWNoIHZvbiBtZWhyIGFscyBudXIgQmllci4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTdGFtbXRpc2NoIEthcmxzcnVoZSAyLjkuMjAwNCAoTWFoYXJldCwgIDEuIFNlcCAyMDA0LCAxNzowNTozMik6Cn4jISBybj1Dcm9mdCBydD0xMDk0MDUxMDk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5Mzk1MDM0MgpEYXMga2FubiBpY2ggYmVzdGFldGlnZW4uIEljaCBoYWIgc2VpbmUgV2hpc2t5YW5zYW1tbHVuZyBnZXNlaGVuLgoKTWFoYXJldC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFN0YW1tdGlzY2ggS2FybHNydWhlIDIuOS4yMDA0IChDcm9mdCwgIDEuIFNlcCAyMDA0LCAxNzowNzowOCk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwOTQwNTExMzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDkzOTUwMzQyCldvYmVpIGljaCBpbW1lciBub2NoIGZpbmRlLCBkYXMgbWFuIGJlaSBkZXIgQW5zYW1tbHVuZyB2b24gV2hpc2t5cyBub2NoCm5pY2h0IHZvbiBTYW1tbHVuZyBzcHJlY2hlbiBrYW5uLiAgRGEgZmVobGVuIG5vY2ggZWluIHBhYXIgZGFmdWVyLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFN0YW1tdGlzY2ggS2FybHNydWhlIDIuOS4yMDA0IChNYWhhcmV0LCAgMS4gU2VwIDIwMDQsIDE3OjA3OjI4KToKfiMhIHJuPUNyb2Z0IHJ0PTEwOTQwNTEyMjggcmc9c2NobWFycm4KfiMhIHRpZD0xMDkzOTUwMzQyCkRhaGVyIG1laW5lIFdvcnR3YWhsIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTdGFtbXRpc2NoIEthcmxzcnVoZSAyLjkuMjAwNCAoQ3JvZnQsICAxLiBTZXAgMjAwNCwgMTc6MDc6NTYpOgp+IyEgcm49TWFoYXJldCBydD0xMDk0MDUxMjQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5Mzk1MDM0MgpBcmcuICBJY2ggc29sbHRlIG1pciBlY2h0IG1hbCBuZSBuZXVlIEJyaWxsZSBtYWNoZW4gbGFzc2VuLiAgSGFiIGRvY2gKZGFzICdhbicgZ2xhdHQgdWViZXJsZXNlbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU3RhbW10aXNjaCBLYXJsc3J1aGUgMi45LjIwMDQgKEdyaW1tYm9ybiwgIDEuIFNlcCAyMDA0LCAxNzoxNjo0MCk6Cn4jISBybj1Dcm9mdCBydD0xMDk0MDUxMjc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5Mzk1MDM0MgpVbmQgaWNoIHNwcmFjaCBudXIgZGF2b24sIGVzIGdhZWJlIHNvbGNoZSBMZXV0ZS4gSWNoIGhhYmUgbmllIGJlaGF1cHRldCwgZGFzcwpzaWNoIG5pZW1hbmQgbnVyIHZvbiBCaWVyIGVybmFlaHJ0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXVnZW5vcGVyYXRpb24gKEdyaW1tYm9ybiwgIDEuIFNlcCAyMDA0LCAyMDo0ODo0OSk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTEwOTQwNjQwNjcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDk0MDY0MDY3CkRhcyBpc3QgaW4gZGVyIFVrcmFpbmUgZGVzd2VnZW4gc28gYmlsbGlnLCB3ZWlsIHNpZSBpbiBlaW5lbSBBdWZ3YXNjaCBhdWNoCm5vY2ggZWluZSBOaWVyZSByYXVzbmVobWVuLiBBYmVyIGtlaW5lIFNvcmdlLCBEdSBoYXN0IHp3ZWksIHVuZCBlaW5lIHJlaWNodAp2b2VsbGlnIGF1cy4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEF1Z2Vub3BlcmF0aW9uIChLZWxseWJ1bmR5LCAgMS4gU2VwIDIwMDQsIDIwOjUwOjU3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDk0MDY0NTI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NDA2NDA2NwpEdSB2ZXJ3ZWNoc2Vsc3QgS2lldyBtaXQgU3QuIFBldGVyc2J1cmcuIEltIFVlYnJpZ2VuIHdhciBtZWluIEFydGlrZWwgZXJuc3QKZ2VtZWludC4gQWJlciB3YXMgQW5kZXJlcyBoYWJlIGljaCB2b24gRGlyIGF1Y2ggZ2FyIG5pY2h0IGVyd2FydGV0LgoKQmxvbmRjaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBdWdlbm9wZXJhdGlvbiAoR3JpbW1ib3JuLCAgMS4gU2VwIDIwMDQsIDIwOjU1OjUxKToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTA5NDA2NDY1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTQwNjQwNjcKU3QuIFBldGVyc2J1cmcgbGllZ3QgaW4gZGVyIFVrcmFpbmU/IEltbWVyaGluLi4uClVuZCBtaXQgZGVtIFJlc3RyaXNpa28gaGFzdCBEdSBuYXR1ZXJsaWNoIHJlY2h0LCBiZWkgOS0xMiBEaW9wdHJpZW4ga2FubiBtYW4KZGEgd2lya2xpY2ggbmljaHQgdm9uIHNwcmVjaGVuLiBJY2ggbWVpbmUsIHNlbGJzdCB3ZW5uIHNpZXMgdm9lbGxpZyB2ZXJzYWVnZW46CndvIHdhZXJlIGVpbmUgVmVyc2NobGltbWVydW5nPyAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQXVnZW5vcGVyYXRpb24gKEthcmltYSwgIDEuIFNlcCAyMDA0LCAyMDo1ODo1Nyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA5NDA2NDk1MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTQwNjQwNjcKQWZhaWsgdW50ZXJzY2hyZWlidCBtYW4gYmVpIGRpZXNlbiBPcGVyYXRpb25lbiBzbyBlaW5lbiBXaXNjaCwgZGVyIHNpY2gKVW5iZWRlbmtsaWNoa2VpdHNlcmtsYWVydW5nIG5lbm50LiBTb3dhcyB3aWUsIGRhc3MgZGllIEtsaW5payBmdWVyIG5pY2h0cwp2ZXJhbnR3b3J0bGljaCBpc3QgZXRjIHBwLgoKSWNoIHd1ZXJkZSBzYWdlbiwgc28gbmUgT1AgaW4gc29uc3R3ZWxjaGVuIExhZW5kZXJuIG1hY2hlbiB6dSBsYXNzZW4gYmVkZXV0ZXQKa2Fsa3VsaWVydGVzIFJpc2lrby4uICpzaHJ1ZyoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBdWdlbm9wZXJhdGlvbiAoR3JpbW1ib3JuLCAgMS4gU2VwIDIwMDQsIDIxOjAwOjA1KToKfiMhIHJuPUthcmltYSBydD0xMDk0MDY1MTM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NDA2NDA2NwpVbmQgamUgbmFjaCBMYW5kIGF1Y2gga2Fsa3VsaWVyYmFyZXMgUklzaWtvLiBJY2gga2FubiB6dW0gR2VzdW5kaGVpdHNzeXN0ZW0KZGVyIFVrcmFpbmUgbmljaHRzIHNhZ2VuLCBhYmVyIHouQi4gaW4gVGhhaWxhbmQgaXN0IGRhcyBtZWRpemluaXNjaGUgUmlzaWtvCnNlaHIgdW53ZXNlbnRsaWNoIGhvZWhlciBhbHMgaGllci4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQXVnZW5vcGVyYXRpb24gKEJyYW4sICAxLiBTZXAgMjAwNCwgMjE6MDE6MTcpOgp+IyEgcm49S2FyaW1hIHJ0PTEwOTQwNjUxMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk0MDY0MDY3CkFuZGVyZXJzZWl0cyBoYWJlbiBzaWUgZG9ydCB2aWVsbGVpY2h0IG1laHIgRXJmYWhydW5nLCB3ZWlsIG1laHIgT3BlcmF0aW9uZW4uCldlaXNzIGljaCBhYmVyIG5pY2h0IGdlbmF1ZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBdWdlbm9wZXJhdGlvbiAoS2VsbHlidW5keSwgIDEuIFNlcCAyMDA0LCAyMTowMTo1NSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA5NDA2NDk1MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTQwNjQwNjcKV28gaGFiIGljaCBiZWhhdXB0ZXQsIGRhc3MgU3QgUGV0ZXJzYnVyZyBpbiBkZXIgVWtyYWluZSBsaWVndD8gaWNoIGhhYmUgbnVyCmJlaGF1cHRldCwgZGFzcyBkaWUgTmllcmVuZ2VzY2hpY2h0ZW4gdm9yIGFsbGVtIGluIGRlciBHZWdlbmQgdm9uIFN0ClBldGVyc2J1cmcgc3RhdHRmaW5kZW4uCgpCbG9uZGNoZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEF1Z2Vub3BlcmF0aW9uIChXaWxsb3csICAxLiBTZXAgMjAwNCwgMjE6MDM6NDUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwOTQwNjQ5NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk0MDY0MDY3Cmthbm4gZXMgc2VpbiwgZGFzcyB3aXIgKGR1KSBoZXV0ZSBhcmcgenluaXNjaCBzaW5kPwpkYXMgd2VpZGVybAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQXVnZW5vcGVyYXRpb24gKEdyaW1tYm9ybiwgIDEuIFNlcCAyMDA0LCAyMToxMDowMSk6Cn4jISBybj1XaWxsb3cgcnQ9MTA5NDA2NTQyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTQwNjQwNjcKSW4gQmV6dWcgYXVmIHVucyAobWljaCkga2FubiBpY2ggZGFzIHZlcm5laW5lbi4gV2llIGVzIGhpbmdlZ2VuIG1pdCB1bnMgKERpcikKc3RlaHQsIGthbm4gaWNoIG5pY2h0IGJldXJ0ZWlsZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEF1Z2Vub3BlcmF0aW9uIChLZWxseWJ1bmR5LCAgMS4gU2VwIDIwMDQsIDIxOjEwOjMxKToKfiMhIHJuPUthcmltYSBydD0xMDk0MDY1MTM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NDA2NDA2NwpBbHNvIGljaCBiZWhhdXB0ZSBtYWwsIGRhc3MgZGFzIGZ1ZXIgZGllIEtsaW5pa2VuIGltIE9zdGVuLCBkaWUgc293YXMgbWFjaGVuCm5lbiBlY2h0ZXMgWnVzYXR6Z2VzY2hhZWZ0IGlzdCwgZGVzd2VnZW4gZGVua2UgaThjaCBtYWwsIGRhc3MgZGllIF9taW5kZXN0ZW5zXwpzbyBzb3JnZmFlbHRpZyBzaW5kIHdpZSBoaWVyenVsYW5kZS4gRGllIGhhYmVuIG5lbiBSdWYgdW5kIG5lIGdhbnplIE1lbmdlCkRldmlzZW4genUgdmVybGllcmVuLCBkYXMgc2V0enQgbWFuIG5pY2h0IHNvIGVpbmZhY2ggYXVmcyBTcGllbC4KWnUgR3JpbW1ib3JuOiBKYSwgYmVpIDkgYnp3IDEyIERpb3B0cmllbiBpc3QgbmUgdmVyc2NobGVjaHRlcnVuZyBudXIKdW53ZXNlbnRsaWNoIHNjaGxpbW1lciwgaW1tZXJoaW4ga2FubiBpY2ggbWlyIGRhbm4gZGVuIEJsaW5kZW5odW5kIHZvbQpTb3ppYWxhbXQgc3BlbmRpZXJlbiBsYXNzZW4uIE1laW5lIEdlbnVndHV1bmc6IHZvbiBEZWluZW4gU3RldWVyZ2VsZGVybiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEF1Z2Vub3BlcmF0aW9uIChHcmltbWJvcm4sICAxLiBTZXAgMjAwNCwgMjE6MTE6MzkpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMDk0MDY1ODMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NDA2NDA2NwpWb24gbWVpbmVuIFN0ZXVlcmdlbGRlcm4/IFByaW1hLCBpY2ggbGVnIG5vY2ggbmVuIFp3YW5uaSBmdWVyIGRpZQpQaXRidWxsdmVyc2lvbiBkcmF1Zi4gRGFzIGlzc2VzIG1pciB3ZXJ0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBdWdlbm9wZXJhdGlvbiAoS2VsbHlidW5keSwgIDEuIFNlcCAyMDA0LCAyMToxMzoyOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA5NDA2NTg5OSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTQwNjQwNjcKWnluaXNtdXMgaGluIG9kZXIgaGVyLCBpY2ggd3VlbnNjaGUgbmljaHQgbWFsIERpciBzb25uZSBTZWhzY2h3YWVjaGUsIGRlbmsgbWFsCmRhdHJ1ZWJlciBuYWNoLgpQLlMuOiBNZWluIEFydGlrZWwgd2FxciBkdXJjaGF1cyBlcm5zdCBnZW1laW50CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBdWdlbm9wZXJhdGlvbiAoR3JpbW1ib3JuLCAgMS4gU2VwIDIwMDQsIDIxOjE3OjMzKToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTA5NDA2NjAwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTQwNjQwNjcKSGFiIGRydWViZXIgbmFjaGdlZGFjaHQgdW5kIGJpbiB6dW0gU2NobHVzcyBnZWtvbW1lbiwgZGFzcyBpY2ggZGFzIHNlaHIgbm9iZWwKdW5kIGVkZWwgdm9uIERpciBmaW5kZS4gV2FzIFNlaHNjaHdhZWNoZSBhbmdlaHQgaGFiZSBpY2ggaW1tZXIgd2llZGVyIG1pdApMZXV0ZW4gaW0gOC85ZXItQmVyZWljaCB6dSB0dW4gZ2VoYWJ0IHVuZCBrYW5uIGV4dHJhcG9saWVyZW4uIEluc29mZXJuIHdhciBkYXMKImVpbmUgVmVyc2NobGVjaHRlcnVuZyBpc3Qga2F1bSBtb2VnbGljaCIgZHVyY2hhdXMgZWluIGVkdWNhdGVkIGd1ZXNzLgpVZWJyaWdlbnMgc2luZCB3aXIgaGllciBuaWNodCBtZWhyIGluIGRlciBSdWJyaWssIGluIGRlciBEdSBEZWluZSBBbmZyYWdlCmdlc3RlbGx0IGhhc3QsIGRlbmsgbWFsIGRhdHJ1ZWJlciBuYWNoLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBdWdlbm9wZXJhdGlvbiAoRGFya2xvciwgIDEuIFNlcCAyMDA0LCAyMTo1Nzo1OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA5NDA2NjI1MyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTQwNjQwNjcKTmljaCB1bXNvbnN0IGlzdCAgZGVyIEdkQSBDaGVmdmVybGVnZXIuLi4gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBBdWdlbm9wZXJhdGlvbiAoR3JpbW1ib3JuLCAgMS4gU2VwIDIwMDQsIDIyOjAxOjQ0KToKfiMhIHJuPURhcmtsb3IgcnQ9MTA5NDA2ODY3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTQwNjQwNjcKRGEgaXN0IG5pY2h0cyB2ZXJsZWd0LiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQXVnZW5vcGVyYXRpb24gKEdsb2luc29uLCAgMS4gU2VwIDIwMDQsIDIyOjIyOjQ3KToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTA5NDA2NTgzMSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTQwNjQwNjcKU29yZ2ZhbHQgd2VnZW4gWnVzYXR6Z2VzY2hhZWZ0PyBXaXNoZnVsIHRoaW5raW5nLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEF1Z2Vub3BlcmF0aW9uIChaYXJuaXlhLCAgMi4gU2VwIDIwMDQsIDA4OjQ2OjU1KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwOTQwNzAxNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk0MDY0MDY3CkhpIEtlbGx5LCAKCmljaCBtYWNocyBkaXIgZnVlciAyMDAgRXVyby4uIG5lbiAiSWNoIGJpbiBuaXggc2NodWxkIHVuZCBpY2ggaGFiIERpY2gKZ2V3YXJudCItVmVydHJhZyBoYWIgaWNoIHNjaG9uIGF1Zmdlc2V0enQuIExhc2VyIHNpbmQgYXVjaCBkYS4uLiBzb2dhcgp2ZXJzY2hpZWRlbmUuLi4ga2FubnN0IGF1c3N1Y2hlbiA6KSAKCk1hcmMgKFBoeXNpa29DaGVtaWtlciBtaXQgWnVnYW5nIHp1IG5ldHRlbiBTcGllbHpldWdlbiBpbiBkZXIgQWJ0ZWlsdW5nKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQmVybGluIChPZ28sICAyLiBTZXAgMjAwNCwgMTk6MjE6MDApOgp+IyEgb249T2dvIG90PTEwOTQxNDU2NTAgb2c9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISBybj1QaXRmYWxsIHJ0PTEwOTQxNDE1NTggcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA5Mzk4NjMxOQpTaW1vbi1EYWNoLVN0cmFzc2UgdW5kIFVtZ2VidW5nIHNpbmQgamEgYXVjaCB2aWVsIGhpcHBlciB1bmQgY29vbGVyLCBhbHMgZGFzCm9sbGUgQXVmc3R1cnosIGRhcyBtaXR0bGVyd2VpbGUgamVkZXIgVG91cmlzdCBrZW5uZW4gZHVlcmZ0ZS4gKCJXbyBpc3QgZGFzPyBOYQpnZWdlbnVlYmVyIHZvbiBkZXIgU3luYWdvZ2UuLi4iKSAKCk9nbywgU3plbmVnYWVuZ2VyIDs+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hcm1lbGFkZSBtaXQgUHJvemVudGVuIChSb25kYSwgIDMuIFNlcCAyMDA0LCAyMjoyNDowMyk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTEwOTQyMzc5MjEgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMDk0MjAxNDM3CkhtLi4uIGVyd2Flcm0gZGllIE1hcm1lbGFkZSB2b3JzaWNodGlnIGluIGVpbmVtIFRvcGYsIHNlcnZpZXIgc2llIHp1ClZhbmlsbGVlaXMgdW5kIGZsYW1iaWVyIGRhcyBnYW56ZS4gVW5kIHNjaG9uIGJlc2Nod2VydCBzaWNoIGtlaW5lciBtZWhyIHVlYmVyCmRlbiBBbGtnZXNjaG1hY2sgOy0pCgpSb25kYSAqaGlja3MhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthbXBmc3RhZWJlIChBbmF0b2wsICA0LiBTZXAgMjAwNCwgMDk6NTc6MDgpOgp+IyEgb249QW5hdG9sIG90PTEwOTQyODQ2MjQgb2c9ZC53YWxkCn4jISBybj1OaWJlbCBydD0xMDk0MjIzNjcyIHJnPWQud2FsZAp+IyEgdGlkPTEwOTQyMjM2NzIKV1RfU1BFQVIgaGFldHRlIGVzIHNpY2hlciBhdWNoIGdldGFuLgoKQXUuCgpBdWFhYWFBQUFBQUFBQUFuaWNodHNjaGxhZ2VuIEFVVFNDSCBGaW5nZXIgd2VnIEFSR0ggbmVpbiwgYXVhYWFhYQoKQW5hdG9sIC0gYXVmIGRlc3NlbiBrb25zdHJ1a3RpdmUgQXJ0aWtlbCB6dSBkaWVzZW0gVGhlbWEgdWViZXJoYXVwdAprZWluZSBSZWFrdGlvbmVuIHZvbiBFLVNlaXRlIGthbWVuICh3YXMgd2VuaWdlciBpc3QgYWxzIGF1ZiBkaWUKYWdncmVzc2l2ZW4sIERBIHd1cmRlIHdlbmlnc3RlbnMgZ2VtYXVsdCA7KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2FtcGZzdGFlYmUgKEthcmltYSwgIDQuIFNlcCAyMDA0LCAxMToxOTozNyk6Cn4jISBybj1BbmF0b2wgcnQ9MTA5NDI4NDYyOCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTQyMjM2NzIKS2FyaW1hIGh1ZXBmdCBmcmV1ZGlnIHVtIE5pYmVsIGhlcnVtIHVuZCBtYWNodCBzaWNoIGdsZWljaCBhdWYsIGRpZSBuZXVlbgpLYW1wZnN0YWViZSB6dSBob2xlbiwgZGFtaXQgc2llIGVuZGxpY2ggZWZmZWt0aXZlciBpaHJlbiBTdGFic2tpbGwgdWViZW4ga2Fubi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9laG0sIFJvbmRhPyAoTW9yZ290aCwgIDUuIFNlcCAyMDA0LCAxMzoxMzo0Mik6ClBpdGZhbGwgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKW0ZyZXVuZGU6Um9uZGFdICpncmlucyogRXNzZW4gaXN0IGRhIDstKQoKTSogaXN0IGVyc3RhdW50IHdhcyBzZWluZSBTY2h3ZXN0ZXIgc28gImVzc2VuIiBuZW5udAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG1tLCBrbGVpbmUgVm9ycmFldGUuIChLcmltYXJpb2wsICA1LiBTZXAgMjAwNCwgMTM6NDQ6NTkpOgpEdXJjaCBlaW4ga2xlaW5lcyBUdWVyY2hlbiBpbiBkZXIgbm9lcmRsaWNoZW4gWmVsdHBsYW5lIGtvbW10IGVpbiBrbGVpbmVyLAp1bnNjaGVpbmJhcmVyIEdub20gaGVyZWluZ2VodXNjaHQsIGRlciBkaWUgVm9ycmFldGUgZGVzIFNjaGFtYW5lbiBlcmdhZW56dC4KS2F1bSwgZGFzcyBEdSBpaG4gd2Focmdlbm9tbWVuIGhhc3QsIGlzdCBlciBhdWNoIHNjaG9uIHdpZWRlciB2ZXJzY2h3dW5kZW4uIApmbiBnb2JsaW4ga3JhZXV0ZXIKQ2hpbmt1d2FpbGEgc2FndDogRHUgd2lyc3QgaWhyZSBGYWVoaWdrZWl0ZW4gc2VsYnN0IGhlcmF1c2ZpbmRlbiBrb2VubmVuLgo+IHNhCgpBbHMgRHUgZGFzIFplbHQgYmV0cml0dHN0LCBrb21tdCBlcyBEaXIgdm9yLCBhbHMgd2FlcmUgZXMgaGllciB2b2xsa29tbWVuCmZpbnN0ZXIuIEVyc3QgbmFjaGRlbSBzaWNoIERlaW5lIEF1Z2VuIGFuIGRhcyBzY2h1bW1yaWdlIExpY2h0IGdld29laG50IGhhYmVuLAprYW5uc3QgRHUgRGljaCBnZW5hdWVyIHVtc2NoYXVlbi4gRHUgc3RlaHN0IGluIGVpbmVtIGdlcmFldW1pZ2VuLCBhY2h0ZWNraWdlbgpaZWx0LCBpbiBkZW0gZGVyIEdvYmxpbnNjaGFtYW5lIHdvaG50LiBJbiBkZXIgTWl0dGUgZGVzIFJhdW1lcyBmbGFja2VydCBlaW4Ka2xlaW5lcyBGZXVlciBnZW11ZXRsaWNoIHZvciBzaWNoIGhpbiwgZGVzc2VuIFJhdWNoIGR1cmNoIGVpbmUgT2VmZm51bmcgaW4gZGVyCk1pdHRlIGRlcyBEYWNoZXMgYWJ6aWVodC4gQW4gZGVyIG5vZXJkbGljaGVuIFdhbmQsIGRpcmVrdCBoaW50ZXIgZGVtClNjaGFtYW5lbiwgc3RlaHQgZWluIHNlbHRzYW1lcyBHZWJpbGRlLCBkYXMgd29obCBzZWluZW4gQWx0YXIgZGFyc3RlbGx0LiBJbgpkZXIgd2VzdGxpY2hlbiBFY2tlIGhhdCBlciBzZWluZSBTY2hsYWZzdGF0dCBhdWZnZXNjaGxhZ2VuLCB1bmQgaW0gT3N0ZW4KbGFnZXJuIGVpbmlnZSBGZWxsc2FlY2tlLiBEZXIgQm9kZW4gaXN0IG1pdCBCYXN0bWF0dGVuIGF1c2dlbGVndC4gSGludGVyIERpcgppbSBTdWVkZW4gZXJrZW5uc3QgRHUgZGVuIEF1c2dhbmcsIHp1IGRlc3NlbiBiZWlkZW4gU2VpdGVuIGt1bnN0dm9sbCB2ZXJ6aWVydGUKTWFza2VuIGF1ZmdlaGFlbmd0IHNpbmQuIApFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogcmF1cy4KRWluIGVocnd1ZXJkaWdlciBHb2JsaW5zY2hhbWFuZSBzaXR6dCBtZWRpdGllcmVuZCBhbSBMYWdlcmZldWVyLgo+IGZuIGdvYmxpbiBiZWxvaG51bmcKCkNoaW5rdXdhaWxhIHNhZ3Q6IER1IGhhc3QgYmVyZWl0cyBlaW5lbiBtZWluZXIgQXVmdHJhZWdlIGVyZm9sZ3JlaWNoIGVybGVkaWd0LApDaGlua3V3YWlsYSBzYWd0OiBpY2ggd2Vpc3MgZXMgc2VociB3b2hsIHVuZCBtZWluZSBFcmlubmVydW5nIGRhcmFuIHdpcmQgbmljaHQKQ2hpbmt1d2FpbGEgc2FndDogdmVyYmxhc3Nlbi4gSmVkb2NoIGJpbiBpY2ggaW0gTW9tZW50IGxlaWRlciBuaWNodCBpbSBCZXNpdHoKQ2hpbmt1d2FpbGEgc2FndDogZGVyIG1hZ2lzY2hlbiBLcmFldXRlciwgZGllIGljaCBEaXIgZnVlciBkaWVzZW4gRGllbnN0CkNoaW5rdXdhaWxhIHNhZ3Q6IHVlYmVycmVpY2hlbiB3b2xsdGUuIERpZSBuYWVjaHN0ZSBMaWVmZXJ1bmcgaXN0IGFiZXIgbmljaHQKQ2hpbmt1d2FpbGEgc2FndDogbWVociBmZXJuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVybGF1YiAoR3JpbW1ib3JuLCAgNi4gU2VwIDIwMDQsIDEwOjM3OjU5KToKfiMhIG9uPUFudGhlYSBvdD0xMDk0NDU5NTg2IG9nPW1hZ2llci51cmxhdWIKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDk0NDU4Mzg4IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xMDk0NDU4Mzg4ClVuZCBEdSBrb21tc3QgZGllc21hbCB3aXJrbGljaCBkYW1pdCBkdXJjaD8gTmljaHQgZGFzcyBhbSAxMC45LiB1bSAyMzo1OSBub2NoCmVpbiBBbnJ1ZiBrb21tdCB1bmQgZHUgZG9jaCB3aWVkZXIuLi4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVybGF1YiAoR3JpbW1ib3JuLCAgNi4gU2VwIDIwMDQsIDEwOjM5OjM1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDk0NDU5ODc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NDQ1ODM4OApOZWluLCBkYXMgaXN0IHppZW1saWNoIHNpY2hlci4gRGllc21hbCBrYW5uIHNpY2ggZGFzIGRpZSBGaXJtYSBrYXVtIGxlaXN0ZW4sCm1pY2ggenVydWVja3p1cGZlaWZlbi4gRGVyLi4uIEF1c2dsZWljaCB3YWVyZSB6aWVtbGljaCBhdWZ3YWVuZGlnLiBBdXNzZXJkZW0KaGFiZW4gd2lyIHNvIGVpbiBuZXVlcywgdG9sbGVzIFVybGF1YnN0b29sLCBkYSBzdGVodCBkZXIgVXJsYXViIGRyaW4sIHVuZCBkYXMKdG9vbCBpc3QgR2VzZXR6LiBEYWhlciBiaW4gaWNoIGRhIHdpcmtsaWNoIHdlZy4gT2huZSBSZWNobmVyLCBvaG5lIFRlbGVmb24uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEtsZWluZSBBZW5kZXJ1bmcgKFpvb2ssICA2LiBTZXAgMjAwNCwgMTI6MjY6MjMpOgp+IyEgcm49S2FyaW1hIHJ0PTEwOTQ0NjYwODUgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTA5NDMyNDMxOQpXZW5uIEZlbGluZW53ZWliY2hlbiB1ZWJlciBrdWVyemVyIHdlcmRlbiBTY2h3YWVuemUgc3ByZWNoZW4sIHdhcyBnZW5hdSBtZWluZW4KZGllIGRhbm4/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEtsZWluZSBBZW5kZXJ1bmcgKEthcmltYSwgIDYuIFNlcCAyMDA0LCAxMjoyODozOSk6Cn4jISBybj1ab29rIHJ0PTEwOTQ0NjYzODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk0MzI0MzE5Ck5hdHVlcmxpY2ggd2lyZCBEZWluIFNjaHdhbnoga3VlcnplciwgaW1tZXJoaW4gc2lua3QgRGVpbmUgS2FtcGZrcmFmdCAoID09Ck1hbm5lc2tyYWZ0PyApIHVuZCBkYW1pdCBrYW5uc3QgZHUgd2VuaWdlciBNb25zdGVyIGhhdWVuIHVuZCBzb21pdCBpbiB3ZW5pZ2VyClRvcGxpc3RlbiBzdGVoZW4gLS0+IFNjaHdhbnpsYWVuZ2UgLS0KCkFjaGphOiBJY2ggYWxzIHdlaWJsaWNoZSBLYXR6ZSBrYW5uIG51ciBzYWdlbjogTWVpbiBTY2h3YW56IGlzdAp1ZWJlci1ib2RlbmxhbmcgdW5kIGljaCBzdGVoZSBkYW1pdCB1ZWJlciBzb3dhcyA6LXAKCkthcmltYSAtIHdlZGVsdCBhZ3Jlc3NpdiBtaXQgZGVtIFNjaHdhbnouCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFaXNzdGFiIChDcm9mdCwgIDYuIFNlcCAyMDA0LCAxNjoxNTozNSk6Cn4jISBybj1Cb2luZyBydD0xMDk0NDc5NzcxIHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTEwOTQyOTAxODYKQWNoLCBUdXJibyB3YWVyL2lzdCBzY2hvbiBnbHVlY2tsaWNoZXIsIHdlbm4gZXIgbnVyIGdlbmF1ZXIgbWl0bGllc3QgLC0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRWlzc3RhYiAoTW9yZ290aCwgIDYuIFNlcCAyMDA0LCAxNjoxODoyMyk6Cn4jISBybj1Dcm9mdCBydD0xMDk0NDgwMTM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NDI5MDE4NgpUdXJibyBrYW5uIGxlc2VuPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFVybGF1YiAoS2VsbHlidW5keSwgIDYuIFNlcCAyMDA0LCAyMDo0MDozNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA5NDQ1OTk3NSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTQ0NTgzODgKSmFqYSBkYXMgZGFjaHRlIGljaCBhdWNoLiBMaWVzIGRhcyBrbGVpbmdlZHJ1Y2t0ZSBpbiBEZWluZW0gQVYuIGljaCB3ZWlzcyBiaXMKaGV1dGUgbmljaHQsIHdvIHNpZSBtZWluZSBVcmxhdWJzYW5zY2hyaWZ0IGhlciBoYWJlbiA6KQpLZWxseSwgdmVycmF0ZW4gdW5kIHZlcnVybGF1YnNydWNrZ2Vob2x0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEtsZWluZSBBZW5kZXJ1bmcgKEtlbGx5YnVuZHksICA2LiBTZXAgMjAwNCwgMjA6NDE6NTgpOgp+IyEgcm49S2FyaW1hIHJ0PTEwOTQ0NjY1MTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk0MzI0MzE5CmhtbW0gZWlnZW50bGljaCB3YXIgbWlyIG5pY2h0IGJla2FubnQsIGRhc3MgbWFuIGRpZSB2aWVjaGVyIGF1Y2ggdG90dm9lZ2VsbgprYW5uCgpLZWxseQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRWlzc3RhYiAoQW5hdG9sLCAgNi4gU2VwIDIwMDQsIDIwOjQ4OjQwKToKfiMhIG9uPUFuYXRvbCBvdD0xMDk0NDk2NTE2IG9nPWQuZ2ViaXJnZQp+IyEgcm49Qm9pbmcgcnQ9MTA5NDQ3OTc3MSByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMDk0MjkwMTg2ClZvbiBkZXIgQmVzY2hyZWlidW5nIGhlciBpc3QgbWVpbiBaYXViZXJzdGFiIGF1Y2ggZWluIEthbXBmc3RhYi4KVW5kIHdpZSB3aXIgYWxsZSBnYW56IGdlbmF1IHdpc3Nlbiwga29lbm5lbiBaYXViZXJlciBtaXQgaWhyZW0KU3RhYiBzY2hvbiBnYW56IHRvbGwgenVoYXVlbi4gUmVpY2h0IGRhcyBhbHMgQmVncnVlbmR1bmcgZnVlciBlaW5lbgpzYWZ0aWcgcG9zaXRpdmVuIFN0YWJrYW1wZnNraWxsIGZ1ZXIgWmF1YmVyZXI/IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRWlzc3RhYiAoWm9vaywgIDYuIFNlcCAyMDA0LCAyMDo0OToxNik6Cn4jISBybj1BbmF0b2wgcnQ9MTA5NDQ5NjUyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTQyOTAxODYKWm9vayBncmluc3Qgd2lzc2VuZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFaXNzdGFiIChCb2luZywgIDcuIFNlcCAyMDA0LCAwOToyMTo0NSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA5NDQ5NjUyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTQyOTAxODYKV2llc28gcG9zdGVzdCBEdSBzbyBlaW5lbiB0b2xsZW4gVm9yc2NobGFnIG5pY2h0aW4gZ2lsZGVuLnphdWJlcmVyPyA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBFaXNzdGFiIChab29rLCAgNy4gU2VwIDIwMDQsIDEwOjQzOjA4KToKfiMhIHJuPUJvaW5nIHJ0PTEwOTQ1NDE3MDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk0MjkwMTg2Clpvb2sgZ3JpbnN0IGJyZWl0ZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFd1cmZzcGVybWF6b25lPyAoQ2F0d2VhemxlLCAgOS4gU2VwIDIwMDQsIDExOjMzOjM0KToKfiMhIG9uPUNhdHdlYXpsZSBvdD0xMDk0NzE4NzE3IG9nPW1lZ2FzY2htYXJybgp+IyEgcm49Q3JvZnQgcnQ9MTA5NDcxNzk2MCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMDk0Njg1NTYzCmljaCBoYWIgendhciBudXIgZWluZW4gUmVjaG5lciBhbiwgYWJlciBpY2ggYmVoYXVwdGUgenUgYmVtZXJrZW4sIGRhc3MgZGVyCnJlY2h0IGRldXRsaWNoIGRpZSBaaW1tZXJ0ZW1wZXJhdHVyIGJlZWluZmx1c3N0IC4uLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXdXJmc3Blcm1hem9uZT8gKENhdHdlYXpsZSwgIDkuIFNlcCAyMDA0LCAxMTozMzozNik6Cn4jISBvbj1IaWdobGFuZGVyIG90PTEwOTQ3MTkxODQgb2c9bWVnYXNjaG1hcnJuCn4jISBybj1DYXR3ZWF6bGUgcnQ9MTA5NDcxODcxNyByZz1tZWdhc2NobWFycm4KfiMhIHRpZD0xMDk0Njg1NTYzCk1laW5lbiBSZXNwZWt0ISBJY2ggbXVzcyBnZXN0ZWhlbiwgaWNoIGhhZXR0ZSBuaWNodCBnZWRhY2h0LApkYXNzIE1hbmFnZW1lbnQgc28gaGFydGUgQXJiZWl0IHNlaW4ga2Fubi4KCkhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV3VyZnNwZXJtYXpvbmU/IChDYXR3ZWF6bGUsICA5LiBTZXAgMjAwNCwgMTE6MzM6MzcpOgp+IyEgb249Q2F0d2VhemxlIG90PTEwOTQ3MTk2MTcgb2c9bWVnYXNjaG1hcnJuCn4jISBybj1IaWdobGFuZGVyIHJ0PTEwOTQ3MTkxODQgcmc9bWVnYXNjaG1hcnJuCn4jISB0aWQ9MTA5NDY4NTU2MwpTbywgbmFjaGRlbSBpY2ggZ2VzdGVybiBudW4gYWxzbyBnZXByYWhsdCBoYWJlLCBkYXNzIGljaCBzZWl0IE1vbmF0ZW4gd2Vpc3MsCndhcnVtIGRhcyBNUEEtQXJjaGl2IG5pY2h0IGVybmV1ZXJ0IHdpcmQsIGhhYiBpY2ggbWljaCBlbmRsaWNoIGF1ZmdlcmFmZnQgdW5kCmVzIEhhdGUgZ2VtYWlsdC4gRXMgZ2VodCBudSB3aWVkZXIuIERhbmtlIEhhdGUhIDotKQoKTmViZW5iZWkgaGFiIGljaCBkaWUgU3VjaGUgaW0gQXJjaGl2IHJlcGFyaWVydC4gU28uIFNvd2FzIGthbm4gaWNoIG5hZW1saWNoLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEZvb2JhciwgIDkuIFNlcCAyMDA0LCAyMDo1MTowOCk6CltBYmVudGV1ZXI6Vmlja3ldIGlzdCB6dWZhZWxsaWcgZ2VyYWRlIGplbWFuZCBkYSwgZGVyIG1laW5lIGFudHdvcnQgZnVlciBkZW4KW0FiZW50ZXVlcjpWaWNreV0gY29kZWtuYWNrZXIgOGdlZmFlbmduaXNpbnNlbCkgdWViZXJwcnVlZmVuIGtvZW5udGU/CltBYmVudGV1ZXI6S2VubnldIG5vZSA6KQpbQWJlbnRldWVyOktlbm55XSBuaWUgOikKW0FiZW50ZXVlcjpGb29iYXJdIFdhcyBmdWVyIGVpbmUgQXVmZ2FiZSB3YXIgZGFzIG5vY2htYWw/CltBYmVudGV1ZXI6Q2hhZ2FsbF0gZGllIHdvIG1hbiBkZW4gQ29kZSBrbmFja2VuIG11c3N0ZSA6KQpbQWJlbnRldWVyOkx1cmNoaV0gYWxsZXMgZ3Jvc3NjaHJlaWJlbiwgc2F0enplaWNoZW4gbmljaHQgdmVyZ2Vzc2VuCltBYmVudGV1ZXI6SGlnaHRdIGhtbW1tIGljaCBoYXR0ZSBtaXQgZGVtIGJ1c3RhYmVuc2FsYXQgdW5kIGdyYWYgemFobCBpbW1lcgpbQWJlbnRldWVyOkhpZ2h0XSBwcm9ibGVtZSBkZXIgcmVzdCBnaW5nIGlpcmMKW0FiZW50ZXVlcjpWaWNreV0gYWNoLCBhdWNoIG5vY2ggZ3Jvc3NzY2hyZWliZW4sIG1hbCBzZWhlbi4uLgpbQWJlbnRldWVyOkZvb2JhciBrcmF0eiBzaWNoIGFtIEtvcHAuXQpbVG9kOkxhcnNdIEVpbiBMdWVnZW5kZXRla3RvciBoYXQgZ2VyYWRlIFZpY2t5IHVtZ2VicmFjaHQuCltUb2Q6RWluIEx1ZWdlbmRldGVrdG9yXSBMdWVnZW4gaGFiZW4ga3VyemUgQmVpbmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiAiU3RhbW10aXNjaCIgaW4gTnVlcm5iZXJnIDExLjA5IChDYXR3ZWF6bGUsICA5LiBTZXAgMjAwNCwgMjM6MzM6MzApOgp+IyEgcm49TWFyY3VzIHJ0PTEwOTQ3NjU1NTQgcmc9dHJlZmZlbgp+IyEgdGlkPTEwOTQ3NTUzODIKSWNoIGJpbiBnZXJhZGUgc2Nod2VyIHZlcnN1Y2h0IHZvcmJlaXp1a29tbWVuICh2b3JiZWkgenUga29tbWVuPyksIGRlbm4gZGllc2UKQnVzZm9ybSBmaW5kZSBpY2ggaG9jaGludGVyZXNzYW50IDotKQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiAiU3RhbW10aXNjaCIgaW4gTnVlcm5iZXJnIDExLjA5IChOb25uZSwgMTAuIFNlcCAyMDA0LCAwOTowMTo0Mik6Cn4jISBybj1IdW1uaSBydD0xMDk0NzY1ODk0IHJnPXRyZWZmZW4KfiMhIHRpZD0xMDk0NzU1MzgyCkJlaW0gTGFkZW4gdm9uCmh0dHA6Ly93d3cubmFja3R2ZXJrZWhyLWZyYW5rZW4uZGUvYnVzL2ltZy9udWVybmJlcmcvbmFja3RlX3dlaWJlcl91bmRfc28uanBnCmlzdCBmb2xnZW5kZXIgRmVobGVyIGF1ZmdldHJldGVuOgoKClVuYmVrYW5udGVyIFJlY2huZXIgd3d3Lm5hY2t0dmVya2Voci1mcmFua2VuLmRlCgpNaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS2xlaW5lIEFlbmRlcnVuZyAoTXVhZGliLCAxMC4gU2VwIDIwMDQsIDIwOjAyOjQ1KToKfiMhIHJuPU1hYXJnIHJ0PTEwOTQzMjY1MTUgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTA5NDMyNDMxOQppcmdlbmR3aWUgbGVzZSBpY2ggZGEgaW1tZXIgd2FzIG1pdCBhZmZlbi4gd2FyZW4gZmVsaW5lbiBuaWNodCBlaGVyIG1pZXplbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERTTC1BbnNjaGx1c3MgKExpYXJhLCAxMi4gU2VwIDIwMDQsIDE4OjAzOjIwKToKfiMhIHJuPUNyb2Z0IHJ0PTEwOTQ4OTEwNTYgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMDk0ODM2NzQ0CkhlaGUsIHNpZWhzdGU/IFNvb28gZmluZyBkYXMgYmVpIG1pciBhdWNoIGFuLgoKVW5kIG51biBzaXR6ZSBpY2ggaW4gZGllc2VtIFN0YXBlbCB2b24gUGFwaWVyZW4gdW5kIGFsbGVzIGRyZWh0IHNpY2ggdW5kIG1pcgp3aXJkIHNjaG9uIHVlYmVsIHVuZCBnbGVpY2gga2lwcGUgaWNoIHZvbSBTaXR6YmFsbCAuLi4gQWJlciBlbnRzY2hpZWRlbiBoYWJlCmljaCBkYXMgaW1tZXIgbm9jaCBuaWNodC4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktlaW5lIERldGFpbHMgKE1vcmdvdGgsIDEzLiBTZXAgMjAwNCwgMTQ6NDA6MTcpOgpHbG9pbnNvbiBzY2hyZWl0IGdyZWxsIHVuZCBzcGl0ejogUXVpaWVrIQpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKTSogZHVja3Qgc2ljaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSXN0IE1vcmdvdGggZWluIFNvZnRpZT8gKEFudGhlYSwgMTMuIFNlcCAyMDA0LCAxODozNjozMSk6Cn4jISBybj1Gb29iYXIgcnQ9MTA5NTA5MzMyMyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA5NTA5MjY2NgpFaW4gS29uanVua3RpZWY/IFdhaHJzY2hlaW5saWNoIGlzdCBkYXMgZGFzIEdlZ2VudGVpbCB2b24gZWluZW0gQWRqdW5raG9jaC4KCldvYmVpIG5vY2ggZGllIEZyYWdlIHp1IGtsYWVyZW4gYmxlaWJ0OgpJc3QgTW9yZ290aCBudW4gZWluIFNvZnRpZSBvZGVyIG5pY2h0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSXN0IE1vcmdvdGggZWluIFNvZnRpZT8gKEdsb2luc29uLCAxMy4gU2VwIDIwMDQsIDE4OjM3OjIzKToKfiMhIHJuPUFudGhlYSBydD0xMDk1MDkzMzkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTA5MjY2NgpXYWVyZSBNb2dnbCBlaW4gU29mdGllIHNvIHN0dWVuZGUgZGVyIEFydGlrZWwgbmljaHQgbWVociBkYS4gRGVyIEtlcmwgaXN0IGhhcnQKaW0gTmVobWVuIHdhcyBkYXMgWml0aWVydHdlcmRlbiBiZXRyaWZmdC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc3VjaGUgOykgKE9ya3RvZXRlciwgMTQuIFNlcCAyMDA0LCAwNzozNTowMyk6Cn4jISBybj1SYXkgcnQ9MTA5NTExMTMyOSByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwOTUxMTEzMjkKRGVuIGdhbnplbiBOb3ZlbWJlciBoaW5kdXJjaD8KRHUgc3RlbGxzdCBoYXJ0ZSBGb3JkZXJ1bmdlbi4uLgoKT3JrVCwgenVtIEdsdWVjayBrZWluIEJlcmxpbmVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdpc3NlbnNjaGFmdGxlciBlbnRkZWNrZW4gbmV1ZSBUZWlsY2hlbiAoTXVwZmVsLCAxNC4gU2VwIDIwMDQsIDIwOjQyOjIzKToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA5NTE2NDQ0MCByZz13d3cKfiMhIHRpZD0xMDk1MTY0NDQwCkF1Y2ggYWxzIE5pY2h0d2lzc2Vuc2NoYWZ0bGVyIGVudGRlY2tlIGljaCBiZWkgbWVpbmVtIEJhZWNrZXIgb2VmdGVyIG5ldWVyClRlaWxjaGVuLi4uCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXaXNzZW5zY2hhZnRsZXIgZW50ZGVja2VuIG5ldWUgVGVpbGNoZW4gKEJhbWJ1bGtvLCAxNC4gU2VwIDIwMDQsIDIyOjAwOjM4KToKfiMhIHJuPU11cGZlbCBydD0xMDk1MTg3MzQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTE2NDQ0MApNYW5jaGUgYmVzdGVoZW4gdGVpbHdlaXNlIHNvZ2FyIGF1cyBRdWFyayhzKS4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXaXNzZW5zY2hhZnRsZXIgZW50ZGVja2VuIG5ldWUgVGVpbGNoZW4gKEh1bW5pLCAxNC4gU2VwIDIwMDQsIDIyOjAxOjU2KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEwOTUxOTIwMzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDk1MTY0NDQwClRqYS4gRGEgZ2lidCBlcyBub2NoIGRpZSBRdWFudGVuLiBJY2ggZ2xhdWJlLCBkaWUga2xlaW5lcmVuIEVpbmhlaXRlbiBoaWVzc2VuCmRhbm4gbG9naXNjaGVyd2Vpc2UgTWF1a2VuLi4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2VsYnN0dmVyd2FuZGx1bmcgKFpvb2ssIDE1LiBTZXAgMjAwNCwgMTE6NTI6MzEpOgp+IyEgcm49TXVhZGliIHJ0PTEwOTUyNDE5MzEgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTA5NTE5NzA2NApBYmdlc2VoZW4gZGF2b24gaGFiZSBpY2ggbm9jaCBrZWluIEp1YmVsamFociBhdXNnZXJ1ZmVuIQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNlbGJzdHZlcndhbmRsdW5nIChDcm9mdCwgMTUuIFNlcCAyMDA0LCAxMjoyMTowOCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwOTUyNDMzOTAgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTA5NTE5NzA2NApOYWphLiAgJ25pY2h0IGRlciBudWV0emxpY2hzdGUnIGhlaXNzdCBuaWNodCBkYXMgZXMgbmljaHQgZGVyCid6d2VpdG51ZXR6bGljaHN0ZScsICdkcml0dG51ZXR6bGljaHN0ZScgLi4uIGlzdCAsLSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTZWxic3R2ZXJ3YW5kbHVuZyAoQnJhbiwgMTUuIFNlcCAyMDA0LCAxMzoyMzo0OCk6Cn4jISBybj1Dcm9mdCBydD0xMDk1MjQzNjY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTE5NzA2NApOaWNodCBtYWwgZGVyIHZpZXJ0bnVldHpsaWNoc3RlLCBzbyB3aWUgaWNoIGRhcyBpbiBtZWluZW0ganVnZW5kbGljaGVuClVudmVyc3RhbmQgc2VoZSwgYWJlciBpY2ggbGFzc2UgbWljaCBnZXJuIHZvbiBNb3Jnb3RoIGJlbGVocmVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU2VsYnN0dmVyd2FuZGx1bmcgKFpvb2ssIDE1LiBTZXAgMjAwNCwgMTg6MDM6NDMpOgp+IyEgb249Wm9vayBvdD0xMDk1MjY0MjEzIG9nPWdpbGRlbi56YXViZXJlcgp+IyEgcm49SHVtbmkgcnQ9MTA5NTI2MzY1MyByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMDk1MTk3MDY0CkRlciBUZXN0IGdpbmcgd29obCBzY2hpZWY6IEtlaW4gRWludHJhZyBpbSBLaWxsLUxvZy4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWVzZSBSdWhlIDopIChNb3Jnb3RoLCAxNi4gU2VwIDIwMDQsIDA4OjMyOjE1KToKICAgICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRG9uLCAxNi4gU2VwIDIwMDQsIDA4OjMxOjU1ICgxMiBUZWlsbmVobWVyKQoKQW50dXIuLi4uLi4uLi4uaS5zIEJlZS4uLi4uLi4uLi4uLi4ueiBMb3JkLi4uLi4uLi4uLi4uLlMgR3dlbmlsaS4uLi4uLi4uLndTClJvYWRydW5uZXIuLi4uLi4uUyBUdXJiby4uLi4uLi4uLi4uLlMgUmlwcG9yLi4uLi4uLi4uSi5TIFdoaXRldGlnZXIuLi4uLmkubQpCaWVsZWZlbGQuLi4uLi4uLk0gUm9uZGEuLi4uLi4uLi4uLndNIE1vcmdvdGguLi4uLi4uLi53UiBWYW5pb24uLi4uLi4uLi5Jd0UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQ3Jhc2ggKE1vcmdvdGgsIDE2LiBTZXAgMjAwNCwgMDk6MjM6MTUpOgp+IyEgcm49QW50aGVhIHJ0PTEwOTUzMTkxMzIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMDk1MzEyMTc2CkFsbCBkaWUgYWx0ZW4gU2FlY2tlLCBkaWUgc2ljaCBub2NoIGFuIGRpZSA0NzExLVplaXQgZXJpbm5lcm4ga29lbm5lbiA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IENyYXNoIChQaXRmYWxsLCAxNi4gU2VwIDIwMDQsIDA5OjMwOjQxKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMDk1MzE5ODE3IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTA5NTMxMjE3NgpNdWguIEZ1ZXIgQW1hLgoKUGl0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZXNlIFJ1aGUgOikgKFdoaXRldGlnZXIsIDE2LiBTZXAgMjAwNCwgMTU6MTE6MjEpOgp+IyEgcm49TW9yZ290aCBydD0xMDk1MzE2MzM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTMxNjMzNQoKICAgICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERvbiwgMTYuIFNlcCAyMDA0LCAwNzo0NjozMiAoNCBUZWlsbmVobWVyKQoKQW50dXIuLi4uLi4uLi4uaS5zIFJpcHBvci4uLi4uLi4uLkouUyBXaGl0ZXRpZ2VyLi4uLi4uLm0gVmFuaW9uLi4uLi4uLi4uaXdFCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWVzZSBSdWhlIDopIChNYWhhcmV0LCAxNi4gU2VwIDIwMDQsIDE1OjEyOjE0KToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA5NTM0MDI4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTUzMTYzMzUKRGFzIFNwaWVsIGhhdHRlbiB3aXIgc2Nob24gbWFsLgoKCiAgICAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEb24sIDE2LiBTZXAgMjAwNCwgMTU6MTE6NDkgKDEgVGVpbG5laG1lcikgICAgCgpNYWhhcmV0Li4uLi4uLi4uLlMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERpZXNlIFJ1aGUgOikgKFdoaXRldGlnZXIsIDE2LiBTZXAgMjAwNCwgMTU6MTI6NDUpOgp+IyEgcm49TWFoYXJldCBydD0xMDk1MzQwMzM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTMxNjMzNQpNaXQgZGVtIFVudGVyc2NoaWVkLCBkYXNzIGljaCBlaW5mYWNoIG51ciAia3dlciIgZ2Vub21tZW4gaGFiZSwgdW5kIG5pY2h0CnNvd2FzIHdpZSAia3dlciBiZWkgbWFoYXJldCIuLi4KClRpZ2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEaWVzZSBSdWhlIDopIChNYWhhcmV0LCAxNi4gU2VwIDIwMDQsIDE1OjEzOjQ3KToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA5NTM0MDM2NSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTUzMTYzMzUKSmEsIHVuZD8gIERhcyBCaWxkIGlzdCBkYXMgZ2xlaWNoZS4gIEFsc28gd2VuaWcgYmVlaW5kcnVja2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERpZXNlIFJ1aGUgOikgKE11YWRpYiwgMTYuIFNlcCAyMDA0LCAxNTozOTowNyk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwOTUzNDA0Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk1MzE2MzM1CgpMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRG9uLCAxNi4gU2VwIDIwMDQsIDI1OjQ2OjMyICgwIFRlaWxuZWhtZXIpCgoKCmphLCBzbyBpc3QgZXMgc2Nob2VuIHJ1aGlnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEaWVzZSBSdWhlIDopIChDaGFnYWxsLCAxNi4gU2VwIDIwMDQsIDE1OjM5OjUzKToKfiMhIHJuPU11YWRpYiBydD0xMDk1MzQxOTQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTMxNjMzNQpVbmQgd2FubiBnaWJ0cyBzY2htYXJybi5rd2VyPwoKQ2hhZ2FsbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRGllc2UgUnVoZSA6KSAoRm9vYmFyLCAxNi4gU2VwIDIwMDQsIDE4OjA3OjQwKToKfiMhIHJuPUNoYWdhbGwgcnQ9MTA5NTM0MTk5MyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTUzMTYzMzUKR2lidCBkb2NoIHNjaG9uICJrd2VyIHNjaG1hcnJuIiA7bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERpZXNlIFJ1aGUgOikgKFZhbmlvbiwgMTYuIFNlcCAyMDA0LCAxOToxMjo1Myk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwOTUzNDAzMzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk1MzE2MzM1CkxhaG0hCgogICAgICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRG9uLCAxNi4gU2VwIDIwMDQsIDA3OjE2OjU4ICgyIFRlaWxuZWhtZXIpICAgIAoKUmlwcG9yLi4uLi4uLi4uSi5TIFZhbmlvbi4uLi4uLi4uLi53RQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERpZXNlIFJ1aGUgOikgKEdsb2luc29uLCAxNi4gU2VwIDIwMDQsIDE5OjEzOjMzKToKfiMhIHJuPVZhbmlvbiBydD0xMDk1MzU0NzczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTMxNjMzNQo+IGt3ZXIgaW4gbGFobQoKICAgICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERvbiwgMTYuIFNlcCAyMDA0LCAxOToxMzoxOSAoMCBUZWlsbmVobWVyKQoKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRGllc2UgUnVoZSA6KSAoVmFuaW9uLCAxNi4gU2VwIDIwMDQsIDE5OjQ0OjQzKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwOTUzNTQ4MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk1MzE2MzM1CkJpc3QgamEgbnVyIG5laWRpc2NoIC4uLgpbWFhYOlZhbmlvbl0gRXJzdGVyLiAodW5kIGRhcyBuYWNoIDYgU3R1bmRlbiBVcHRpbWUgLi4uIDopCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRGllc2UgUnVoZSA6KSAoTW9yZ290aCwgMTYuIFNlcCAyMDA0LCAxOTo0NTo1NSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA5NTM0MTk0NyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTUzMTYzMzUKa3dlciBlcnptYWdpZXIgdW5kIG5pY2h0IGlkbGU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBEaWVzZSBSdWhlIDopIChWYW5pb24sIDE2LiBTZXAgMjAwNCwgMTk6NDY6MjEpOgp+IyEgcm49TW9yZ290aCBydD0xMDk1MzU2NzU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTMxNjMzNQpSaXBwb3IgaXN0IEVyem1hZ2llcj8KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBEaWVzZSBSdWhlIDopIChHbG9pbnNvbiwgMTYuIFNlcCAyMDA0LCAxOTo0Njo0NSk6Cn4jISBybj1WYW5pb24gcnQ9MTA5NTM1Njc4MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTUzMTYzMzUKW2tsYWJ1ZmZlbDpHbG9pbnNvbl0gTGV0enRlciEKWzxNYXN0ZVI+Okdsb2luc29uIHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ2tsYWJ1ZmZlbCcsIHdvcmF1ZiBkaWVzZQogICAgICAgICAgc2ljaCBpbiBlaW5lbSBCbGl0eiBva3RhcmluZW4gTGljaHRzIGF1ZmxvZXN0Ll0KCkhhIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IERpZXNlIFJ1aGUgOikgKENoYWdhbGwsIDE2LiBTZXAgMjAwNCwgMTk6NDY6NDYpOgp+IyEgcm49VmFuaW9uIHJ0PTEwOTUzNTY3ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk1MzE2MzM1CkFsc28gd2VubiBpaHIgc2Nob24gbWl0IGt3ZXIgc3BpZWx0LCBkZXIgS2xhc3Npa2VyIGlzdCBkb2NoIGVoCidrd2VyIHVuZmFlaGlnZSBtYWdpZXInCgpDaGFnYWxsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzY2htYXJybi5rd2VyIChWYW5pb24sIDE2LiBTZXAgMjAwNCwgMTk6NDc6MjEpOgp+IyEgcm49Q2hhZ2FsbCBydD0xMDk1MzU2ODA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTMxNjMzNQpTbywgbnUgcmVpY2h0cy4gVW16aWVoZW4hCgpWKgooQnR3OiBPd25lciBpcyBHbG9pbnNvbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzY2htYXJybi5rd2VyIChBcmssIDE2LiBTZXAgMjAwNCwgMjA6MTE6MTkpOgp+IyEgcm49VmFuaW9uIHJ0PTEwOTUzNTY4NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk1MzE2MzM1Cmt3ZXIgZ2lsZGUgc3BpZWx2ZXJkZXJiZXIgdW5kIG5pY2h0IGVybnN0enVuZWhtZW4KICAgICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gRG9uLCAxNi4gU2VwIDIwMDQsIDIwOjA5OjQ3ICgxIFRlaWxuZWhtZXImZG9vZikKClZhbmlvbi4uLi4uLi4uLml3RQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc2NobWFycm4ua3dlciAoQ2hhZ2FsbCwgMTYuIFNlcCAyMDA0LCAyMDoxMzowMCk6Cn4jISBybj1BcmsgcnQ9MTA5NTM1ODI3OSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTUzMTYzMzUKRGFzIGhhZXR0ZSBqZXR6dCBhYmVyIG5hY2ggc2NobWFycm4ua3dlciBnZWhvZXJ0LCBBcmsuCgpDaGFnYWxsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBzY2htYXJybi5rd2VyIChIdXJheHByYXgsIDE2LiBTZXAgMjAwNCwgMjA6Mzk6MDApOgp+IyEgcm49Q2hhZ2FsbCBydD0xMDk1MzU4MzgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTMxNjMzNQpXYXJ1bSBicmF1Y2h0IGVpZ2VudGxpY2ggamVkZSBBcnQgdm9uIFNjaG1hcnJuIGlocmUgZWlnZW5lIFJ1YnJpaz8KCkh1cmF4cHJheAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogc2NobWFycm4ua3dlciAoQnJhbiwgMTYuIFNlcCAyMDA0LCAyMDo0MjoxNCk6Cn4jISBybj1IdXJheHByYXggcnQ9MTA5NTM1OTk0MCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTUzMTYzMzUKU2NocmVpYiBkYXMgaW4gc2NobWFycm4udmllbF96dV9zaW5udm9sbGVfZnJhZ2VuX2Z1ZXJfc2NobWFycm4gb2RlciBzbywKdmllbGxlaWNodCB3ZWlzcyBlcyBkYSBlaW5lci4KCkJyYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERpZXNlIFJ1aGUgOikgKE1haGFyZXQsIDE2LiBTZXAgMjAwNCwgMjE6Mzk6NDcpOgp+IyEgcm49VmFuaW9uIHJ0PTEwOTUzNTQ3NzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk1MzE2MzM1CldpZSBrYW5uIG1hbiBuZWJlbiBkaXIgaWRsZW4/IEljaCBrb2VubnRlIGRhcyBuaWNodCwgaWNoIHd1ZXJkZSB2b3IgbGF1dGVyCkF1ZnJlZ3VuZyB1bSBkaWNoIHJ1bWh1ZXBmZW4gdW5kIGRpciBkZW4gbGV0enRlbiBOZXJ2IHJhdWJlbi4KCk1haGFyZXQsIHZlcnJ1ZWNrdCBuYWNoIFZhbmlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRGllc2UgUnVoZSA6KSAoQ2hhZ2FsbCwgMTYuIFNlcCAyMDA0LCAyMTo0NDo1MSk6Cn4jISBybj1IdW1uaSBydD0xMDk1MzYzODA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTMxNjMzNQpJY2gga2FubiB2ZXJzdGVoZW4gZGFzIHNpY2ggZGllIFNjaHVlbGVyIGZ1ZXIgZGllc2UgQXVmZ2FiZSBuaWNodAppbnRlcmVzc2llcmVuLiBWaWVsbGVpY2h0IHNvbGx0ZXN0IER1IGRpZSBkZW1uYWVjaHN0IG5pY2h0IGluIExhVGVYLCAKc29uZGVybiBpbiBXb3JkIGZvcm1hdGllcmVuLiAqZHVjayoKCkNoYWdhbGwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IERpZXNlIFJ1aGUgOikgKEh1bW5pLCAxNi4gU2VwIDIwMDQsIDIxOjQ1OjE1KToKfiMhIHJuPUNoYWdhbGwgcnQ9MTA5NTM2Mzg5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTUzMTYzMzUKLT4gbWVnYXNjaG1hcnJuCgpTb3JyeSwgZGFzIHdhciBkaWUgZmFsc2NoZSBSdWJyaWssIGljaCB3YXIgenUgZG9vZiBkaWUgTVBBIHp1IGJlZGllbmVuLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHNjaG1hcnJuLmt3ZXIgKEFyaywgMTYuIFNlcCAyMDA0LCAyMjoyMjowOSk6Cn4jISBybj1DaGFnYWxsIHJ0PTEwOTUzNTgzODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk1MzE2MzM1Ck5vZWxiYWNrZSA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBzY2htYXJybi5rd2VyIChDaGFnYWxsLCAxNi4gU2VwIDIwMDQsIDIyOjIyOjM1KToKfiMhIHJuPUFyayBydD0xMDk1MzY2MTI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTMxNjMzNQpBbHNvIGhvZW1tYS4gTmljaHQgbmV0dCwgZ2FyIG5pY2h0IG5ldHQuIDopCgpDaGFnYWxsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBzY2htYXJybi5rd2VyIChab29rLCAxNi4gU2VwIDIwMDQsIDIyOjIyOjQ3KToKfiMhIHJuPUNoYWdhbGwgcnQ9MTA5NTM2NjE1NSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTUzMTYzMzUKQXJrIGxpdmUhCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogc2NobWFycm4ua3dlciAoQ2hhZ2FsbCwgMTYuIFNlcCAyMDA0LCAyMjoyMzowOSk6Cn4jISBybj1ab29rIHJ0PTEwOTUzNjYxNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk1MzE2MzM1CkljaCBmcmFnIG1pY2ggamEgamV0enQgYXVjaCwgd2FzIE5vZWwgZGF6dSB3b2hsIHNhZ2VuIHdpcmQuIDopCgpDaGFnYWxsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBEaWVzZSBSdWhlIDopIChNdWFkaWIsIDE3LiBTZXAgMjAwNCwgMTA6MTE6NTUpOgp+IyEgcm49TW9yZ290aCBydD0xMDk1MzU2NzU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTMxNjMzNQprd2VyIGVyem1hZ2llciB1bmQgbmljaHQgaWRsZT8KTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIEZyZSwgMTcuIFNlcCAyMDA0LCAxMDoxMTo0MSAoMyBUZWlsbmVobWVyKQoKVmFuaW9uLi4uLi4uLi4uLndFIE11YWRpYi4uLi4uLi4uLi4uRSBab29rLi4uLi4uLi4uLi4ud0cKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBYnNjaGllZHNzdGF0aSBIYWxsZSAoTGlhcmEsIDE3LiBTZXAgMjAwNCwgMjE6Mzk6MTYpOgp+IyEgcm49Q2Fzc2FuZHJhIHJ0PTEwOTUxNjMyMTQgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA5NTE2MzIxNApXZW5uIGhpZXIgamVtYW5kIE1pZXplIGFucnVlaHJ0LCBuZWhtZSBpY2ggZGFzIHNlaHIgcGVyc29lbmxpY2ghIDspCgpOdXIgc28gZnVlciBkZW4gRmFsbCwgZGVubiBkZXIgQXJ0aWtlbCBrbGFuZyBzbywgYWxzIG9iIGlociBBYmxlYmVuIGt1cnoKYmV2b3JzdHVlbmRlLiA7KSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFdvIHdpciBncmFkZSBzbyBzY2hvZW4gYW0gamFtbWVybiBzaW5kLi4uIChab29rLCAxOS4gU2VwIDIwMDQsIDExOjQ2OjA3KToKfiMhIHJuPUh1bW5pIHJ0PTEwOTU1ODM4MDIgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTA5NTUzNzI4NgpJY2ggdmVybGVpaGUgbWVpbmUgTWFjaHQgZ3J1bmRzYWV0emxpY2ggbmljaHQuIFNjaG9uIGdhciBuaWNodCBhbiBXYWZmZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAiVGhlIEF3ZnVsIEdlcm1hbiBMYW5ndWFnZSIgYnkgTWFyayBUd2FpbiAoUm9uZGEsIDE5LiBTZXAgMjAwNCwgMTI6MzU6MzApOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTU1ODk4ODQgcmc9d3d3Cn4jISB0aWQ9MTA5NTUwNzc4MwpPaCBqYSEgV2VyIGRhIG9obmUgU3VlbmRlIGlzdCwgZGVyIHdlcmZlIGRlbiBlcnN0ZW4gTVBBLUFydGlrZWwhIExvcyEKClJvbmRhICpnb3R0ZXNsYWVzdGVybGljaCBncmluc2VuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6ICJUaGUgQXdmdWwgR2VybWFuIExhbmd1YWdlIiBieSBNYXJrIFR3YWluIChBbmF0b2wsIDE5LiBTZXAgMjAwNCwgMTI6NDM6MzYpOgp+IyEgcm49Um9uZGEgcnQ9MTA5NTU5MDEzMCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTU1MDc3ODMKSWNoIGJlYW50cmFnZSBkaWUgWnVsYXNzdW5nIGRlciBFaW5oZWl0ICJ3dGdyIiBhbHMgTWFzcyBmdWVyIGRhcwpQb3N0ZW4gdm9uIEluaGFsdGVuL0xpbmtzLCB3ZWxjaGUgenVtIFplaXRwdW5rdCBkZXMgUG9zdGVucyBiZXJlaXRzCmhvZmZudW5nc2xvcyB2ZXJhbHRldCwgZHVyY2hnZWthdXQgb2RlciBoaW5yZWljaGVuZCBiZWthbm50IHdhcmVuCm9obmUgZGVuIEhpbndlaXMsIGRhc3MgZGllIEluaGFsdGUvTGlua3MgenVtIFplaXRwdW5rdCBkZXMgUG9zdGVucwpiZXJlaXRzIGhvZmZudW5nc2xvcyB2ZXJhbHRldCwgZHVyY2hnZWthdXQgb2RlciBoaW5yZWljaGVuZCBiZWthbm50CndhcmVuLgoKRWljaHVuZyBhdWYgV2hpdGV0aWdlcjo9MS4wIHd0Z3IgKDIwMDQpLCBsaW5lYXJlIFNrYWxhLgoKQW5hdG9sIChnZXN0ZWh0IHNpY2ggMC4xIHd0Z3IgenUpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogIlRoZSBBd2Z1bCBHZXJtYW4gTGFuZ3VhZ2UiIGJ5IE1hcmsgVHdhaW4gKFJvbmRhLCAxOS4gU2VwIDIwMDQsIDEyOjQ3OjUyKToKfiMhIHJuPUFuYXRvbCBydD0xMDk1NTkwNjE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTUwNzc4MwpBbmF0b2wsIGtsYXIgLSBERVIgVm9yc2NobGFnIGlzdCBtZWluZXN3aXNzZW5zIGVjaHQgbmV1IC0gZGFoZXIgc2VpIERpciBkZXIKMC4xIHd0Z3IgZnVlciBESUVTRU4gQXJ0aWtlbCBnZW5laG1pZ3QuCkFhYWFhYWFhYmVyLi4uIGljaCBhaG5lLCBkYXNzIERlaW5lIHNhd3RncmlsIChTdW1tZSBBbGxlciBXVEdSIGltIExlYmVuKQpERVVUTElDSCB1ZWJlciBkZXIgdm9uIFdoaXRldGlnZXIgbGllZ3QuIE9kZXIgc29sbGVuIHdpciBub2NoIGVpbiBwYWFyIGFsdGUKIkRpc2t1c3Npb25lbiIgendpc2NoZW4gUGFkcmVpYyB1bmQgRGlyIHJhdXNrcmFtZW4gdW5kIGVpbiBiaXNzY2hlbgpuYWNoemFlaGxlbj8KClJvbmRhICptaXQgYWx0ZW4gTG9ncyBkcm9oZW5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogIlRoZSBBd2Z1bCBHZXJtYW4gTGFuZ3VhZ2UiIGJ5IE1hcmsgVHdhaW4gKEFuYXRvbCwgMTkuIFNlcCAyMDA0LCAxMjo1MDo1Mik6Cn4jISBybj1Sb25kYSBydD0xMDk1NTkwODcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTUwNzc4MwpBbGxlaW4gc2Nob24gZGllIFdhZmZlbnNraWxsZGlza3Vzc2lvbmVuIHNpbmQgZGllIDAuMSB3dGdyIHdlcnQsCmF1cyBTaWNodCBkZXIgRW50c2NoZWlkZXIgaXN0IGRhcyBUaGVtYSBzb3dhcyB2b24gZ2VnZXNzZW4uLi4gOykpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogIlRoZSBBd2Z1bCBHZXJtYW4gTGFuZ3VhZ2UiIGJ5IE1hcmsgVHdhaW4gKFJvbmRhLCAxOS4gU2VwIDIwMDQsIDEyOjUyOjI4KToKfiMhIHJuPUFuYXRvbCBydD0xMDk1NTkxMDUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTUwNzc4MwoqaHVzdCogImF1cyBTaWNodCBkZXIgRW50c2NoZWlkZXIiLi4uIG1laW5zdCBEdSBudW4gRGljaCBvZGVyIFBhZHJlaWM/IE9kZXIKZGVuLCBkZXIgd2lya2xpY2ggd2FzIHp1IHNhZ2VuIGhhdCAoQ2F0dHkgbWVpbiBpY2gsIHdlbiBzb25zdD8hKQoKUm9uZGEgKmRpZSBzY2hpZWJlbiB1bnMgaXJnZW5kd2FubiBhdWYgc2NobWFycm4udW5nbGF1YmxpY2hlcl91bmZ1Zywgd2VubiB3aXIKc28gd2VpdGVybWFjaGVuLi4uKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogIlRoZSBBd2Z1bCBHZXJtYW4gTGFuZ3VhZ2UiIGJ5IE1hcmsgVHdhaW4gKEFuYXRvbCwgMTkuIFNlcCAyMDA0LCAxMjo1NDowMik6Cn4jISBybj1Sb25kYSBydD0xMDk1NTkxMTQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTUwNzc4MwpCZWkgZGVuIFdhZmZlbnNraWxscyBoYWJlbiB3ZWRlciBQYWRyZWljIG5vY2ggaWNoIGV0d2FzIHp1IGVudHNjaGVpZGVuLApSb25kYWxlaW4uIDspCgpVbmQgd2VubiBkdSBuaWNodCBsaWViIGJpc3QsIG11c3MgaWNoIGF1ZiBkZW4gTVRCVyAobWVhbiB0aW1lIGJldHdlZW4gCndoaXRldGlnZXJpbmcpIGhpbndlaXNlbiwgdW5kIGRhIHNjaG5laWRlIGljaCBkYW5uIGRvY2ggd2llZGVyIGV0d2FzCmJlc3NlciBhYi4uLiA7KQoKQW5hdG9sIChkZXIgbmljaHQgd2Vpc3MsIHdhcyBDQVRUWSB3aXJrbGljaCB6dSBzYWdlbiBoYXQgOykpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogIlRoZSBBd2Z1bCBHZXJtYW4gTGFuZ3VhZ2UiIGJ5IE1hcmsgVHdhaW4gKEFsYm9pbiwgMTkuIFNlcCAyMDA0LCAxMzowODo0OSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA5NTU5MDYxNiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTU1MDc3ODMKS2xhcmVyIEZhbGwgdm9uIFByb2JsZW12ZXJrZW5udW5nOiBlcyBnaWJ0IGtlaW5lIFBvc3RpbmdzIG1pdCBob2ZmbnVuZ3Nsb3MKdWViZXJhbHRlcnRlbSBJbmhhbHQgc29uZGVybiBudXIgTGVzZXIgZGllIGhvZmZudW5nc2xvcyB1ZWJlcmFsdGVydCBzaW5kLgpLZWluIFd1bmRlciBkYXMgaGV1dGUgU29ubnRhZyBpc3QgLi4uCkFsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiAiVGhlIEF3ZnVsIEdlcm1hbiBMYW5ndWFnZSIgYnkgTWFyayBUd2FpbiAoQW5hdG9sLCAxOS4gU2VwIDIwMDQsIDEzOjE3OjM5KToKfiMhIHJuPUFsYm9pbiBydD0xMDk1NTkyMTI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTUwNzc4MwpJY2ggZ2xhdWJlIGVoZXIsIGRhc3MgRHUga29uc29saWRpZXJ1bmdzcmVzaXN0ZW50IGJpc3QuCgpFdmVyeSBkYXkgYSBuZXcgZGF5PyBEYSBnYWIgZXMgbWFsIGVpbmVuIGJlcnVlaG10ZW4gRmFsbCBpbiBkZXIKUHN5Y2hvbG9naWUuLi4gIkguTS4iLiBJY2ggZ2VoIGRhdm9uIGF1cywgZGFzcyBHb29nbGUgYmVpIEguTS4gJiBCcmFpbgpnZW51ZWdlbmQgSGlud2Vpc2UgbGllZmVydCwgaXN0IGphIGF1Y2ggc2Nob24gZXR3YXMgYWVsdGVyLi4uCgpBdXNzZXJkZW0gaXN0IFdoaXRldGlnZXIgV2llZGVyaG9sdW5nc3RhZXRlci4uLiA7KQoKQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogIlRoZSBBd2Z1bCBHZXJtYW4gTGFuZ3VhZ2UiIGJ5IE1hcmsgVHdhaW4gKEFsYm9pbiwgMTkuIFNlcCAyMDA0LCAxMzoyMTo0NSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA5NTU5MjY1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTU1MDc3ODMKZGFua2UgZGFzIGljaCB3aWVkZXIgZWluIG5ldWVzIEZyZW1kd29ydCBsZXJuZW4gZHVlcmZ0ZSA7LSkKCmFsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiAiVGhlIEF3ZnVsIEdlcm1hbiBMYW5ndWFnZSIgYnkgTWFyayBUd2FpbiAoV2hpdGV0aWdlciwgMTkuIFNlcCAyMDA0LCAxMzoyMzo0Nyk6Cn4jISBybj1BbmF0b2wgcnQ9MTA5NTU5MjY1OSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTU1MDc3ODMKV2llZGVyaG9sdW5nc3RhZXRlcj8gV29oZXIgc29sbCBpY2ggZGVubiBiaXR0ZXNjaG9lbiB3aXNzZW4sIGRhc3MgZGllc2VyIExpbmsKdm9yIGZ1ZW5mIEphaHJlbiBzY2hvbm1hbCBnZXBvc3RldCB3dXJkZT8KVW5kIHNlbGJzdCB3ZW5uIGVyIHZvciBlaW5pZ2VuIEphaHJlbiBzY2hvbm1hbCBnZXBvc3RldCB3dXJkZSAtLSBpbnp3aXNjaGVuCmdpYnQgZXMgbmV1ZSBNdWRkZXIsIGRpZSBkZW4gdmllbGxlaWNodCBub2NoIG5pY2h0IGtlbm5lbi4gT2RlciBhbHRlLCBkaWUgaWhuCmRhbWFscyBuaWNodCBnZWxlc2VuIGhhYmVuLiBPZGVyIGRlbiBBcnRpa2VsIGdlcm5lIG5vY2htYWwgbGVzZW4gbW9lY2h0ZW4uCk9kZXIgb2RlciBvZGVyLi4uCldlbm4gX2RpY2hfIGRhcyBzbyBzdG9lcnQsIGVpbmVuIExpbmsgbmFjaCBlaW4gcGFhciBKYWhyZW4gbm9jaG1hbCBsZXNlbiB6dQptdWVzc2VuLCBrYW5uc3QgZHUgZ2VybmUgd2hpdGV0aWdlci5tcGEgaWdub3JpZXJlbi4KClRpZ2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiAiVGhlIEF3ZnVsIEdlcm1hbiBMYW5ndWFnZSIgYnkgTWFyayBUd2FpbiAoQW5hdG9sLCAxOS4gU2VwIDIwMDQsIDEzOjI1OjAxKToKfiMhIHJuPUFuYXRvbCBydD0xMDk1NTkzMDY5IHJnPXB1aXoKfiMhIHRpZD0xMDk1NTA3NzgzCkRpZSBXaXBwZSBkZXIgZGlja2VuIERhbWVuLgoKRGFua2UgZnVlcidzIEdlc3ByYWVjaCA7KQoKQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXbyB3aXIgZ3JhZGUgc28gc2Nob2VuIGFtIGphbW1lcm4gc2luZC4uLiAoQW5hdG9sLCAxOS4gU2VwIDIwMDQsIDE0OjE5OjE2KToKfiMhIG9uPUFuYXRvbCBvdD0xMDk1NTk2MzE2IG9nPWdpbGRlbi56YXViZXJlcgp+IyEgcm49UGF0cnluIHJ0PTEwOTU1OTYyNjIgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTA5NTUzNzI4Ngo+IFBTOiBTViBpc3QgdG9sbCwgZGllIE1vZWdsaWNoa2VpdCBTcGllbGVyIGFuZ3JlaWRmZW4genUgZHVlcmZlbiB3ZW5uIGVzCj4gZWggTm9ObyBpc3QsIGlzdCBzdXBlcmRhZW1saWNoCgowLjIgd3RnciBkYWZ1ZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUHJvbXB0ZSBSZWFrdGlvbiAoTW9udGFudXMsIDIwLiBTZXAgMjAwNCwgMTE6Mzg6NTYpOgpBbGJvaW4gcnVmdDogTWFtYSEhIQpMaWFyYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQcm9tcHRlIFJlYWt0aW9uIChMaWFyYSwgMjAuIFNlcCAyMDA0LCAxMTo0MDo1OCk6Cn4jISBybj1Nb250YW51cyBydD0xMDk1NjczMTM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTY3MzEzNgpEYXMgd2Vpc2UgaWNoIHZvbiBtaXIuCgpadXIgWmVpdCBmYWVsbHQgbWlyIG51ciBlaW4gS2luZCBlaW4sIHVuZCB2b24gZGVtIHdlcmRlIGljaCBiZXN0cmVpa3QuIDo+CgoKRmFsc2NoZSBaZWljaGVuc2V0enVuZyBkYXJmIGJlaGFsdGVuIHdlcmRlbi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFUlpJRVMgUkFVUyEgKFJvbmRhLCAyMC4gU2VwIDIwMDQsIDIxOjA1OjM2KToKfiMhIG9uPVJvbmRhIG90PTEwOTU3MDcwNjggb2c9ZGlza3Vzc2lvbgp+IyEgcm49TGlhcmEgcnQ9MTA5NTcwNjk0NiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA5NTcwNjk0NgpmaW5nZXIgbGlhcmEKCkhtbS4uLiBkaWVzZW4gTmFtZW4gZ2lidCBlcyBpbiBNb3JnZW5ncmF1ZW4gbmljaHQuCgpVcHM/IExpYXJhPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VyIGhhdCBkZW4gQXJlbmFzcHJlY2hlIGVuZ2FnaWVydD8gKFpvb2ssIDIwLiBTZXAgMjAwNCwgMjE6MDY6NTApOgogIEZhbnR1cyBncmVpZnQgRGljaCBtaXQgZWluZW0gZ2VsdW5nZW5lbiBTb3RvLXNodXRvLXVjaGkgYW4uCiAgRmFudHVzIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KICBGYW50dXMgd2VpY2h0IERlaW5lbSBBbmdyaWZmIGdlc2NoaWNrdCBhdXMuCiAgRHUgdmVybmljaHRlc3QgRmFudHVzLgpGYW50dXMgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRHUgc2llaHN0IGVpbmUgZHVua2xlIEdlc3RhbHQsIGRpZSBldHdhcyBEdW5zdCBlaW5zYW1tZWx0IC4uLiBvZGVyIHZpZWxsZWljaHQKYmlsZGVzdCBkdSBEaXIgZGFzIGF1Y2ggbnVyIGVpbiAuLi4KRmFudHVzIHZlcnNjaHdpbmRldCBnYW56IGxlaXNlLgpbVG9kOkxhcnNdIFpvb2sgaGF0IGdlcmFkZSBGYW50dXMgdW1nZWJyYWNodC4KRHUgaG9lcnN0IGRlbiBBcmVuYXNwcmVjaGVyIHJ1ZmVuIDogCkZhbnR1cyBzaWVodCBldHdhcyBtaXRnZW5vbW1lbiBhdXMuCkR1IGhvZXJzdCBkZW4gQXJlbmFzcHJlY2hlciBydWZlbiA6IApEaWUgZW50c2NoZWlkZW5kZSBQaGFzZSEgRGFzIEVuZGUgdm9uIEZhbnR1cyBpc3Qgc2Nob24gc2VociBuYWhlISEKRHUgaG9lcnN0IGRlbiBBcmVuYXNwcmVjaGVyIHJ1ZmVuIDogClpvb2sgc2llaHQgZXR3YXMgbWl0Z2Vub21tZW4gYXVzLgpEdSBob2Vyc3QgZGVuIEFyZW5hc3ByZWNoZXIgcnVmZW4gOiAKWm9vayBpc3Qgc2Nob24gc2VociBzY2h3ZXIgYW5nZXNjaGxhZ2VuISBEZXIgS2FtcGYgZ2VodCBpbiBkaWUKZW50c2NoZWlkZW5kZSBQaGFzZSEhCkRlciBTY2hpZWRzcmljaHRlciBzYWd0IDogWm9vayBoYXQgZ2V3b25uZW4hCkZhbmZhcmVuIGVyc2NoYWxsZW4gdW5kIFpvb2sgd2lyZCBmZWllcmxpY2ggenVtIFNpZWdlciBlcm5hbm50LgpEZXIgS2FtcGYgaXN0IHp1IEVuZGUsIGRpZSBadXNjaGF1ZXIgc3Ryb2VtZW4gbmFjaCBIYXVzZS4KRHUgaG9lcnN0IGRlbiBBcmVuYXNwcmVjaGVyIHJ1ZmVuIDogCk1laW5lIERhbWVuLCB1bmQgSGVycmVuLCB3YXMgZnVlciBlaW4gS2FtcGYhIFdpciB3dXJkZW4gWmV1Z2VuIGVpbmVzIGdyb3NzZW4KS2FtcGZlcywgZGVyIGluIFpvb2sgZWluZW4gd3VlcmRldm9sbGVuIFNpZWdlciBmYW5kISBVbnMgYmxlaWJ0Cm51biBuaWNodHMgd2VpdGVyLCBhbHMgSWhuZW4gZWluZSBzY2hvZW5lIEhlaW1yZWlzZSB6dSB3dWVuc2NoZW4hIEJpcyB6dW0KbmFlY2hzdGVuIG1hbCEKRWluIHNwZWNrYXJtaWdlciBNYW5uIG1pdCBlaW5lciBTY2h1ZXJ6ZSBhdWYgZGVyICdPdHRvcyBJbWJpc3N0dWJlJyBzdGVodAprb21tdAppbiBkaWUgQXJlbmEgZ2VsYXVmZW4gdW5kIHNjaGxlaWZ0IGRlbiBMZWljaG5hbSBtaXQgc2ljaC4KCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWluIFVlYmVybGljaHRnZXNjaHdpbmRpZ2tlaXRza2VrcyAoTW9yZ290aCwgMjIuIFNlcCAyMDA0LCAwOToyMjoxNik6CltGcmV1bmRlOkxlaWJpXSBodWh1dQpMZWliaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaW4gVWViZXJsaWNodGdlc2Nod2luZGlna2VpdHNrZWtzIChCYW1iaSwgMjIuIFNlcCAyMDA0LCAyMjo1NDo1NSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwOTU4Mzc3MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk1ODM3NzM2CkljaCBmcmFnZSBtaWNoIGphLCBvYiBXaGl0ZVRpZ2VyIG51biBiZWkgTGVpYmkgbmFjaGZyYWVndCwgd2llIHNpZSBkYXMgbWFjaHQKdW5kIG9iIExlaWJpIGRhbm4gYW50d29ydGV0OiAiSWNoIGJpbiBlaW4gTWFnaWVyLCBpY2gga2FubiBkYXMuIiBVbmQgZGFubgpmcmFnZSBpY2ggbWljaCwgb2IgV1Qgc2ljaCB2ZXJhcioqKnQgdm9ya29tbXQgb2RlciBuaWNodC4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBEaWUgaGFiZW4gd29obCBlaW5lbiBhbiBkZXIgV2FmZmVsIChBbnRoZWEsIDIzLiBTZXAgMjAwNCwgMTA6MTc6MjMpOgp+IyEgcm49UGFkcmVpYyBydD0xMDk1ODg5OTEyIHJnPXd3dwp+IyEgdGlkPTEwOTU4NDE4NTMKWyBdIER1IGhhc3QgZGVuIFNpbm51bnRlcnNjaGllZCB6d2lzY2hlbiAiU2llIiB1bmQgInNpZSIgZXJrYW5udCB1bmQKdmVyd2VuZGVzdCBpbW1lciBkaWUgcGFzc2VuZGUgU2NocmVpYndlaXNlLgoKU29ycnksIGFiZXIgc293YXMgbmVydnQgbWljaCB3aXJrbGljaCwgd2VubiBqZW1hbmQgZGFzIHN0YWVuZGlnIGZhbHNjaCBtYWNodAp1bmQgZGFtaXQgdm9sbGtvbW1lbiBzaW5udmVyZHJlaHRlIFNhZXR6ZSB2b24gc2ljaCBnaWJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdGFtbXRpc2NoZSBLYXJsc3J1aGUgMzAuOS4gLSAyMS4xMC4gKE1vcmdvdGgsIDI0LiBTZXAgMjAwNCwgMjE6MDk6NDApOgp+IyEgcm49Wm9vayBydD0xMDk2MDUyOTQ0IHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwOTYwMjQ0MDYKTm9lLCBkYSBoYXQgc2ljaCBkZXIgRmlseiBpbW1lciBEaWVuc3RhZ3MgZ2V0cm9mZmVuLgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFN0YW1tdGlzY2hlIEthcmxzcnVoZSAzMC45LiAtIDIxLjEwLiAoQW5hdG9sLCAyNC4gU2VwIDIwMDQsIDIxOjMxOjU1KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA5NjA1Mjk4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTYwMjQ0MDYKTmFqYSwgZGVyIERvcnRtdW5kZXIgU3RhbW10aXNjaCBoYXR0ZSBlaW5lIGdyb2Vzc2VyZQpXaXNzZW5zdHJhbnNmb3J0bWF0aW9uc3JhdGUuIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VyIHRhdWNodCBkYSBuaWNodCBtZWhyIGdhbno/IDopIChHcmltbWJvcm4sIDI2LiBTZXAgMjAwNCwgMjM6NDM6NDcpOgp+IyEgb249S3RhciBvdD0xMDk2MjMzMDE3IG9nPW1lZ2FzY2htYXJybgpEZWluIEZyZXVuZCB4eSB0ZWlsdCBEaXIgbWl0OiBtaWZ0LCB3aWUgd2FyIG5vY2ggZGllIHN5bnRheCB1bSBuYWNoIGRlcgpva3RvcHVzcXVlc3Qgd2llZGVyIGF1Znp1dGF1Y2hlbj8KdGVpbGUgYW4gbWl0IHh5OiAgdGF1Y2hlIGF1Zj8KeHkgdGVpbHQgRGlyIG1pdDogYXJnbAp0ZWlsZSBhbiBtaXQgeHk6ICBMT0wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWJ3ZXNlbmQuLi4gKEh1bW5pLCAyNy4gU2VwIDIwMDQsIDIxOjMyOjQ0KToKfiMhIG9uPUh1bW5pIG90PTEwOTYzMTMzNjAgb2c9bWFnaWVyLnNjaG1hcnJuCn4jISBvbj1IdW1uaSBvdD0xMDk2MzEzMzUyIG9nPW1hZ2llci51cmxhdWIKfiMhIHJuPUFyYXRob3JuIHJ0PTEwOTYzMTMyOTYgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTEwOTYzMTMyNzYKTmVpbiwgZGFzIGlzdCBlaW4gWm9vS2Jlc3VjaC4gRGFzIGlzdCBlaW4gVW50ZXJzY2hpZWQuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQWJ3ZXNlbmQuLi4gKEh1bW5pLCAyNy4gU2VwIDIwMDQsIDIxOjMzOjEwKToKfiMhIHJuPUh1bW5pIHJ0PTEwOTYzMTM1NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2MzEzMjc2CkphamEsIG1pciB3dXJkZSBnZXJhZGUgZXJrbGFlcnQsIGRhc3MgYXVjaCBTcGllbGVyIG1hZ2llci51cmxhdWIgbGVzZW4Ka29lbm5lbi4gRGFua2UuIDstKQoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFid2VzZW5kLi4uIChDaGFnYWxsLCAyNy4gU2VwIDIwMDQsIDIxOjMzOjE0KToKfiMhIHJuPUh1bW5pIHJ0PTEwOTYzMTM1NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2MzEzMjc2CkhtbSwgd2lsbHN0IER1IGRlbiBBcnRpa2VsIG5pY2h0IGF1Y2ggbm9jaCBpbiBkaWUgYW5kZXJlbiBzY2htYXJybi0KUnVicmlrZW4sIGRpZSBlcyBoaWVyIHNvIGdpYnQgdmVybGVnZW4/CgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQWJ3ZXNlbmQuLi4gKFpvb2ssIDI3LiBTZXAgMjAwNCwgMjE6MzM6NTYpOgp+IyEgcm49SHVtbmkgcnQ9MTA5NjMxMzU5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTYzMTMyNzYKWm9vayByb3RsZnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBYndlc2VuZC4uLiAoSHVtbmksIDI3LiBTZXAgMjAwNCwgMjE6MzQ6MzgpOgp+IyEgcm49Wm9vayBydD0xMDk2MzEzNjM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NjMxMzI3NgpOb2UuIEVyem1hZ2llci5zY2htYXJybi1MZXNlciBsZXNlbiBhdWNoIHNjaG1hcnJuLCByZWdpb25zbWFnaWVyLnNjaG1hcnJuCmRpdG8uIE9iIGhpbGZzbWFnaWVyLnNjaG1hcnJuLUxlc2VyIGF1Y2ggc2NobWFycm4gbGVzZW4gd2Vpc3MgaWNoIG5pY2h0LCBhYmVyCmdvZXR0ZXIuc2NobWFycm4gZGFyZiBpY2ggbmljaHQgc2NocmVpYmVuLgoKSHVtbmkKUFM6IE5hamEsIGd1dCwgdmllbGUsIGRpZSBudXIgdm9sbG1hZ2llci5zY2htYXJybiB1bmQKcmVnaW9uc21pdGFyYmVpdGVyLnNjaG1hcnJuIGxlc2VuIGxlc2VuIGRpZSBTcGllbGVycnVicmlrZW4gbmljaHQsIGRpZSBzaW5kCmFiZXIgc2VsYnN0IHNjaHVsZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFN0YW1tdGlzY2hlIEthcmxzcnVoZSAzMC45LiAtIDIxLjEwLiAoTXVhZGliLCAyOC4gU2VwIDIwMDQsIDExOjQzOjE4KToKfiMhIHJuPU1vcmdvdGggcnQ9MTA5NjA1Mjk4MCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTYwMjQ0MDYKZXMgZ2lidCBrZWluZW4ga2FybHNydWhlciBmaWx6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBYndlc2VuZC4uLiAoTXVhZGliLCAyOC4gU2VwIDIwMDQsIDExOjQ0OjI4KToKfiMhIHJuPUh1bW5pIHJ0PTEwOTYzMTM2Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2MzEzMjc2CmxpZXN0IGR1IHZvbGxtYWdpZXIuc2NobWFycm4gYXVjaCB3ZW5uIGR1IG51ZWNodGVybiBiaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogRGllIGhhYmVuIHdvaGwgZWluZW4gYW4gZGVyIFdhZmZlbCAoTXVhZGliLCAyOC4gU2VwIDIwMDQsIDEyOjQ4OjQ1KToKfiMhIHJuPVBhZHJlaWMgcnQ9MTA5NjM1OTI5OCByZz13d3cKfiMhIHRpZD0xMDk1ODQxODUzCmlociBoYWJ0IGFsbGUga2VpbmUgYWhudW5nLCBkYXMgZWluZGV1dGlnIGJlc3RlIGdyYWZpa2Zvcm1hdCBpc3QgYm1wCnNvCnVuZCB3ZXIgZGFzIG5pY2h0IHJ1bnRlcmxhZGVuIHdpbGwsIGRlciBzb2xsIHNpY2ggc2VpbmUgYmlsZGVyIGhhbHQgc2VsYnN0Cm1hbGVuIGJ6dyBpbiBkaWVzZW0gZmFsbCBzY2hyZWliZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBEaWUgaGFiZW4gd29obCBlaW5lbiBhbiBkZXIgV2FmZmVsIChHcmltbWJvcm4sIDI4LiBTZXAgMjAwNCwgMTM6MTY6MDkpOgp+IyEgcm49TXVhZGliIHJ0PTEwOTYzNjg1MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk1ODQxODUzCkFoLCB3aWVkZXIgamVtYW5kLCBkZXIgLnRpZmYgbmljaHQga2VubnQuIEluIGRpZSBFY2tlLCBlaW5lIFJ1bmRlIHNjaGFlbWVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogRGllIGhhYmVuIHdvaGwgZWluZW4gYW4gZGVyIFdhZmZlbCAoTW9yZ290aCwgMjguIFNlcCAyMDA0LCAxNTowODowNik6Cn4jISBybj1QYWRyZWljIHJ0PTEwOTYzNzY3MTIgcmc9d3d3Cn4jISB0aWQ9MTA5NTg0MTg1MwpVbmQgZGEgd2lyIGphIGFsbGUgd2lzc2VuLCBkYXNzIGVzIGF1ZiBQb3Jub3NlaXRlbiBvZGVyIFdhcmV6L0NyYWNrIFNlaXRlbgprZWluZSBWaXJlbiwgRGlhbGVyIHVuZCBhZWhubGljaGVzIGdpYnQsIGthbm4gdW5zZXIgU3VyZnZlcmhhbHRlbiBhdWNoCnVuZ2VzdG9lcnQgZGF2b24gYmxlaWJlbiA6KQoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbnNjaGxhZndpdHogIzQ3MTEgKEJhbWJpLCAyOC4gU2VwIDIwMDQsIDIwOjUzOjM5KToKa251cnIKRHUga251cnJzdC4KS2FtcGZiYW1iaSBrbnVycnQgYmVzc2VyLgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgS2lyaWEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VyIHRhdWNodCBkYSBuaWNodCBtZWhyIGdhbno/IDopIChEYXJrbG9yLCAyOS4gU2VwIDIwMDQsIDAxOjM3OjE4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDk2MjM1MDI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NjIzNTAyNwpGYWVsbHQgZGFzIG5pY2ggdW50ZXIgU3BpZWxlcmhpbGZlPyA7KQoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3RhbW10aXNjaGUgS2FybHNydWhlIDMwLjkuIC0gMjEuMTAuIChNdXBmZWwsIDI5LiBTZXAgMjAwNCwgMjM6NTQ6MjgpOgp+IyEgcm49TXVhZGliIHJ0PTEwOTYzNjQ1OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2MDI0NDA2Ck5lZWlza2xhLiBVbmQgd2VyIHRyaWZmdCBzaWNoIGRhbm4gaW1tZXIgaW0gWlBLPwoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFN0YW1tdGlzY2hlIEthcmxzcnVoZSAzMC45LiAtIDIxLjEwLiAoQ3JvZnQsIDMwLiBTZXAgMjAwNCwgMDA6MTY6NDIpOgp+IyEgcm49TXVwZmVsIHJ0PTEwOTY0OTQ4Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2MDI0NDA2CkR1IHZlcndlY2hzZWxzdCBkYXMgWlBLIG1pdCBkZW0gWktNLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFsY2hlbWlzdCAobWFsIHdpZWRlcikgKE1vcmdvdGgsIDMwLiBTZXAgMjAwNCwgMDA6NDY6MzMpOgp+IyEgcm49RGFya3dpbmcgcnQ9MTA5NjQ4NzAyOCByZz1kLnZsYW5kCn4jISB0aWQ9MTA5NjI5MTYxMQoKQWNoIGphLCBhbGxlIGhhbGJlIEphaHJlIG1hbCBkYSB1bSBuZW4gZHVtbWVuIEtvbW1lbnRhciBhYnp1bGFzc2VuIGF1ZiBkZW4gbWFuCmd1dCB2ZXJ6aWNodGVuIGthbm4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQWxjaGVtaXN0IChtYWwgd2llZGVyKSAoTW9yZ290aCwgMzAuIFNlcCAyMDA0LCAwMDo1MzozMyk6Cn4jISBybj1NZWRpYyBydD0xMDk2NDk4MjE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NjI5MTYxMQpBbHNvIG5vY2htYWwgZnVlciBkb29mZS4gRGllIEtuZWlwZSBpbmNsLiBBbGNoZW1pc3QgaXN0IHZsYW5kLiBEZXIgZWlnZW50bGljaGUKUmF1bSBkZXMgQWxjaGVtaXN0ZW4gbGllZ3QgdW50ZXIgL3AvemF1YmVyZXIuIEVzIHNjcm9sbHQgYWxzbyBpbW1lciBlaW5lCk1pc2NodW5nIGF1cyAvcC96YXViZXJlciB1bmQgL2QvdmxhbmQgdWViZXIgLURlYnVnCkRhIGljaCBudW5tYWwga2VpbmUgUmVjaHRlIGluIC9wL3phdWJlcmVyIGhhYiB1bSBkZW4gU2NoZWlzcyBlbmRsaWNoIG1hbCB6dQpmaXhlbiwgaGFiIGljaCBrZWluZSBhbmRlcmUgTW9lZ2xpY2hrZWl0IGFscyBkZW4gWnVnYW5nIHp1IHNwZXJyZW4sIHdhcyBkYW5uCndpZWRlciBpbiAvZC92bGFuZCBsaWVndC4gCgpNKgoKUC5TLjogVW5kIGljaCB6aWVoZSBlcyBkZXNoYWxiIGlucyBMYWVjaGVybGljaGUgd2VpbCBtaXIgUGF0cnluIHVuZCBIdW1uaQpzY2hvbiBtZWhyZmFjaCB2ZXJzaWNoZXJ0IGhhYmVuLCBkZXIgQnVnIHNlaSBhdXNnZWJhdXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBbGNoZW1pc3QgKG1hbCB3aWVkZXIpIChNZWRpYywgMzAuIFNlcCAyMDA0LCAwMDo1NToyNSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwOTY0OTg0MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2MjkxNjExCkRhbmtlLiBJY2ggd2Vpc3MgbmljaHQsIHdhcyBkYXJhbiAiZnVlciBEb29mZSIgd2FyLCBkZW5uIGRpZQpWZXJ6ZWljaG5pc3N0cnVrdHVyIHNvd2llIGRpZSBqZXdlaWxpZ2VuIFp1c3RhZW5kaWdrZWl0ZW4gdW5kIFNjaHJlaWJyZWNodGUKc2luZCBmdWVyIFNwaWVsZXIgbmljaHQgZWluc2VoYmFyLiBNaXQgZGVyIEVya2xhZXJ1bmcgaXN0IGVpbmVtIHdlbmlnc3RlbnMKd2VpdGVyZ2Vob2xmZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBbGNoZW1pc3QgKG1hbCB3aWVkZXIpIChIZXJvbWNmbHksIDMwLiBTZXAgMjAwNCwgMDE6Mjc6MDUpOgp+IyEgcm49TWVkaWMgcnQ9MTA5NjQ5ODUyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTYyOTE2MTEKCmJpcyBlaW5lciB3ZWludAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFN0YW1tdGlzY2hlIEthcmxzcnVoZSAzMC45LiAtIDIxLjEwLiAoTXVhZGliLCAzMC4gU2VwIDIwMDQsIDExOjAwOjMxKToKfiMhIHJuPU11cGZlbCBydD0xMDk2NDk0ODY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NjAyNDQwNgp3bz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFsY2hlbWlzdCAobWFsIHdpZWRlcikgKFBhdHJ5biwgMzAuIFNlcCAyMDA0LCAxMzowNzo0Mik6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwOTY0OTg0MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2MjkxNjExCm50CgpQLlMuIEphamEsIHN1cGVybW9nZ2VsIGhhdCBuaWUgYmVoYXVwdGV0LCBkZXIgYnVnIHNlaSBkcmF1c3NlbiwgdW5kCmRhbm4gc2Nyb2xsdGUgRGVidWcgZmxlaXNzaWcgd2VpdGVyIHZvciBzaWNoIGhpbiBtaXQgdmxhbmQKYWxzIEFsbGVpbnVudGVyaGFsdGVyIGF1ZiBkZXIgRWJlbmUuLi5HZWRhZWNodG5pc3NlIGtvZW5uZW4gc28ga3VyeiBzZWluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogRGllIGhhYmVuIHdvaGwgZWluZW4gYW4gZGVyIFdhZmZlbCAoT3JrdG9ldGVyLCAzMC4gU2VwIDIwMDQsIDIwOjUyOjMwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDk2NTY4NTczIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMDk1ODQxODUzCkFlaC4uIHdvIHdvaG5zdCBkdT8gKG51ciBkYW1pdCBpY2ggbmljaHQgdmVyc2VoZW50bGljaCBtYWwgaW4gZGVpbmUKTmFjaGJhcnNjaGFmdCB6aWVoZSkKCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogRGllIGhhYmVuIHdvaGwgZWluZW4gYW4gZGVyIFdhZmZlbCAoR3JpbW1ib3JuLCAzMC4gU2VwIDIwMDQsIDIwOjU1OjE4KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDk2NTcwMzUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTg0MTg1MwpNZWluZSBOYWNoYmFyc2NoYWZ0IGlzdCBzaWNoZXIsIGljaCBoYWJlIGlobmVuIERlaW5lIEFkcmVzc2UgZ2VnZWJlbiB1bSBzaWUKdm9uIG1pciB3ZWd6dWJyaW5nZW4gdW5kIHZvbiBmbGVpc2NoZ2VmdWVsbHRlbiwgd2F0dGllcnRlbiBSb2Vja2VuIGdlc3Byb2NoZW4uClNpZSB6ZWlndGVuIHNpY2ggc2VociBpbnRlcmVzc2llcnQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTbyAhIChBcmF0aG9ybiwgMzAuIFNlcCAyMDA0LCAyMjo1MTozOCk6Cn4jISBvbj1BcmF0aG9ybiBvdD0xMDk2NTc3NDg2IG9nPWQudmxhbmQKfiMhIHJuPU1vcmdvdGggcnQ9MTA5NjU3NzQ0NCByZz1kLnZsYW5kCn4jISB0aWQ9MTA5NjU3NzQ0NApXYXMgYXVjaCBpbW1lcj8gU3RhZWJlIGluIExvZWNoZXIgc3RlY2tlbiB0dW4gZGllIGRhLiBKYXdvbGwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGQVNUIHJpY2h0aWcgOikgKE1vcmdvdGgsICAxLiBPa3QgMjAwNCwgMTg6MjE6NTQpOgpbU2VoZXI6VmFuaXJdIHRhbnRlCk1pcmlsICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmFldWJlcmxvZ2lrIChUdXJibywgIDIuIE9rdCAyMDA0LCAxNjo1Mzo1MSk6CkRpZSBSYWV1YmVyIGxhc3NlbiBEaWNoIG5pY2h0IGdlaGVuLAp3ZWlsIEhpcHBlIG5vY2ggR2VsZCBvZGVyIGVpbmUgU2VlcmNhcmQgaGF0IHVuZCBEaWNoIHZlcmZvbGd0LgogZHVtbSBnZWxhdWZlbiA6KSAKClR1cmJvIChLYXRlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB0eXBvcyAoTWluZ28sICAyLiBPa3QgMjAwNCwgMTk6MjU6MTgpOgp+IyEgcm49UGF0cnluIHJ0PTEwOTY3Mzc1NTAgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTA5NjczNzU1MApIYXN0IGR1IGV0d2Egd2llZGVyIGVpbmVuIE5ldHphbnNjaGx1c3M/IERpZSBQc2V1ZG9zY2h3YWViaW4gaGF0dGUgZGljaCBkb2NoCmFiZXIgaW4gZWluIERTTC1mcmVpZXMgTGFuZCBnZXplcnJ0IC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB0eXBvcyAoT3JrdG9ldGVyLCAgMi4gT2t0IDIwMDQsIDE5OjM2OjEzKToKfiMhIHJuPVBhdHJ5biBydD0xMDk2NzM3NTUwIHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTEwOTY3Mzc1NTAKT2hhLi4gZGllIEdpbGRlbnJhZXVtZSB3dXJkZW4gZmVpbiBnZW5hY2h0IHVuZCBPYmpla3RlIHVuZCBOUEMgZm9sZ2VuPyBEYXMKd2lyZCBkb2NoIG5pY2h0IGhlaXNzZW4gZGFzIGVuZGxpY2guLi4gZGFzIGthbm4gZG9jaCBuaWNodCBzZWluLi4gc2FnIGpldHp0Cm5pY2h0LCBkYXMgVGFyYS4uIGFlaCB3aWUgc29sbHRlIGRhcyBub2NoIG1hbCBoZWlzc2VuPyBFbmRsaWNoIGtvbW1lbiB3aXJkPwoKT3JrVC4KClBTIHNvbGx0ZXN0IGR1IG5pY2h0IGxpZWJlciB2ZXJzdWNoZW4gYXVzIGRlbiBTY2huZWxsZmV1ZXJrYXJhdGVrYXMgd2llZGVyClphdWJiZXJlciB6dSBtYWNoZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHR5cG9zIChWYW5pb24sICAyLiBPa3QgMjAwNCwgMTk6NTc6NTkpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwOTY3Mzg1NzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2NzM3NTUwCkVoZXIgbGVndCBlaW4gSHVuZCBlaW5lbiBXdXJzdHZvcnJhdCBhbiAuLi4gKCopCgpWKgpQUzogV2VyIGRhcyBaaXRhdCBpbSBPcmlnaW5hbCBrZW5udCwgZGFyZiBnZXJuIGVyZ2Flbnplbi4gSW4gYmV6dWcgenUgVGFyYW1pcwpwYXNzdCBlcyBnZW5hdXNvZ3V0IHdpZSBiZWkgZGVtIGRhbWFscyBnZXRyb2ZmZW5lbiBWZXJnbGVpY2ggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHR5cG9zIChWYW5pb24sICAyLiBPa3QgMjAwNCwgMjA6MDQ6MjEpOgp+IyEgcm49VmFuaW9uIHJ0PTEwOTY3Mzk4Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2NzM3NTUwCk9oIC4uLiBuYWNoIG1laHJtYWxzIGdvb2dsZW46CkljaCBoYXR0ZSAiLi4uIGFscyBlaW4gRmluYW56bWluaXN0ZXIgZWluZW4gR2VsZHZvcnJhdCBhbmxlZ3QiIGltIEtvcGYgOikKU3RyYXVzcyBzY2hpZW4gZGEgaW4gZWluZSBldHdhcyBhbmRlcmUgUmljaHR1bmcgZ2VzY2hvc3NlbiB6dSBoYWJlbi4gRGllClVlYmVybGllZmVydW5nZW4gc2luZCBkYSB3b2hsIGVoZXIgendlaS0gYmlzIGRyZWlkZXV0aWcgOikgCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB0eXBvcyAoUGF0cnluLCAgMi4gT2t0IDIwMDQsIDIwOjM5OjI2KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDk2NzM4NTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NjczNzU1MAp3YXJ1bSBlaWdlbnRsaWNoIHppZWhlIGljaCBzZWl0IGV0d2EgMiB3b2NoZW4gd2llZGVyIGFsbGUgZnJlYWtzIGltIG11ZCBhbiwKd28gaWNoIG5pY2h0IG1hbCByaWNodGlnIGFrdGl2IGJpbi4gbXVzcyB3b2hsIGFuIGRlciB1bWdlYnVuZyBsaWVnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB0eXBvcyAoQmFtYmksICAyLiBPa3QgMjAwNCwgMjE6NTc6NDYpOgp+IyEgcm49UGF0cnluIHJ0PTEwOTY3NDIzNjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2NzM3NTUwCldlbm4gRHUgZ3JhZCBhbSBhbnR3b3J0ZW4gYmlzdC4gV2Vpc3N0IERVLCB3YXMgRHUgbWl0IFRhcmFtaXMgenUgdHVuIGhhYmVuCnNvbGxzdCBvZGVyIGJpbiBpY2ggbnVyIG5pY2h0IGF1ZiBkZW0gTGF1ZmVuZGVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogdHlwb3MgKE9ya3RvZXRlciwgIDMuIE9rdCAyMDA0LCAwMTowNDoxNik6Cn4jISBybj1CYW1iaSBydD0xMDk2NzQ3MDY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NjczNzU1MApGaW5nZXIgQmFtYmkuLgpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBGcmUsIDE5LiBGZWIgMTk5OSwgMjA6Mzg6NDkKCnRzdHN0cy4uIEp1bmdzcHVuZCEgSGFsdCBEaWNoIGRhIHJhdXMsIHdlbm4gaGllciBhbHRlIEZlaW5kc2NoYWZ0ZW4gZ2VwZmxlZ3QKd2VyZGVuLi4uIHVuZCBuaW1tIGRhcyAiRmluZ2VyIFBhdHJ5bi4uIERhdHVtIGRlcyBlcnN0ZW4gTG9naW46IE1vbiwgMTcuIEp1bAoyMDAwLCAxNzo0NjoyNCIgbmljaHQgenUgd29lcnRsaWNoLi4KCk9ya1QsIGZ1ZXIgZGllIFphdWJlcmVyIGltbWVyIG5vY2ggYWxsZXMgc2luZCwgbnVyIGtlaW5lIFphdWJlcmVyLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWNoIC4uLiAoQ3JvZnQsICAzLiBPa3QgMjAwNCwgMTY6MTc6MjYpOgp+IyEgcm49VmFuaW9uIHJ0PTEwOTY4MTI4MzAgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTEwOTY4MTI4MzAKV2VpbCBkdSBpbiBLb2VsbiBuaWNodCBhbHMgRXJ6bWFnaWVyIHRhZXRpZyBiaXN0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2VjaCAuLi4gKFZhbmlvbiwgIDMuIE9rdCAyMDA0LCAxNjoxODoyMik6Cn4jISBybj1Dcm9mdCBydD0xMDk2ODEzMDQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NjgxMjgzMApOYWphLCBpY2gga29lbm50ZSwgd2VubiBpY2ggc2Nob24gbWFsIGRhIGJpbiwgQW1hcnlsbGlzIHZlcmhhdWVuLiBSZWluCnByYWV2ZW50aXYgOikKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZWNoIC4uLiAoQ3JvZnQsICAzLiBPa3QgMjAwNCwgMTY6MTk6MTQpOgp+IyEgcm49VmFuaW9uIHJ0PTEwOTY4MTMxMDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2ODEyODMwCkhtbW0gOi0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2VjaCAuLi4gKFZhbmlvbiwgIDMuIE9rdCAyMDA0LCAxNjoxOTo0MCk6Cn4jISBybj1Dcm9mdCBydD0xMDk2ODEzMTU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NjgxMjgzMAphbiBkZW0gOi0pIHNlaGUgaWNoLCBkYXNzIER1IGtlaW4gQW1hcnlsbGlzLVp3ZWl0aWUgYmlzdCA7LSkKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZWNoIC4uLiAoQW1hcnlsbGlzLCAgMy4gT2t0IDIwMDQsIDE2OjIxOjAyKToKfiMhIHJuPVZhbmlvbiBydD0xMDk2ODEzMTAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NjgxMjgzMApJY2gga29lbm50ZSBEaWNoIGphIGF1Y2ggdmVyaGF1ZW4sIHdlbm4gaWNoIG5pY2h0IGJsb2VkZXJ3ZWlzZSBudXIgZWluZW4gQWJlbmQKaW4gS29lbGxlIHdhZXIgOikKCkFtYSosIGRlbmt0OiBmdWVyIEVyemlla2xvcHBlbiBicmF1Y2h0cyBzY2hvbiBtZWhyIGFscyBlaW5lbiBBYmVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdlY2ggLi4uIChWYW5pb24sICAzLiBPa3QgMjAwNCwgMTY6MjQ6NDYpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEwOTY4MTMyNjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2ODEyODMwCkljaCBoYWIgc2Nob24gdWViZXJsZWd0LCBvYiB3aXIgdW5zIGdlbWVpbnNhbSBiZXNhdWZlbiBrb2VubnRlbiwgYWJlciBiZWkgZXVjaApnaWJ0cyBqYSBudXIga29lbHNjaCwgdW5kIGRhbWl0IGlzIHVubW9lZ2xpY2ggc2ljaCB6dSBiZXNhdWZlbi4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXZWNoIC4uLiAoQW1hcnlsbGlzLCAgMy4gT2t0IDIwMDQsIDE2OjI2OjQ0KToKfiMhIHJuPVZhbmlvbiBydD0xMDk2ODEzNDg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NjgxMjgzMApTdGltbXQuIEZhc3Qgc28gc2NobGltbSB3aWUgQWx0LVBsb2VycmUuIEljaCBiZXZvcnp1Z2UgZGVzaGFsYiBpbXBvcnRpZXJ0ZXMKSGVmZXdlaXplbi4KCkFtYSosIHNpbmdlbmQ6ICJBbSBBY2hzY2ggdnVuIGRyIFdlbHQgbGlldCBEdWVzc2VsZG9jaGYsIGV0IGR1ZXJzdGUgRG9jaGYgYW0KUmhpbi4uLiIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdlY2ggLi4uIChIdW1uaSwgIDMuIE9rdCAyMDA0LCAxNjozMjo0MSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTA5NjgxMzYwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTY4MTI4MzAKT2NoLCBlaWdudGxpY2ggaXN0IG5hY2ggZGVtIHZpZXJ0ZW4gb2RlciBmdWVuZnplaG50ZW4gS29lbHNjaCBlZ2FsLCB3YXMgRHUKdHJpbmtzdC4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXZWNoIC4uLiAoR3JpbW1ib3JuLCAgMy4gT2t0IDIwMDQsIDE2OjQ2OjM5KToKfiMhIHJuPUh1bW5pIHJ0PTEwOTY4MTM5NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2ODEyODMwClNvdmllbCBLb2Vsc2NoIGthbm4gaWNoIGdhciBuaWNodCB0cmlua2VuLCBkYXNzIGVzIG1pciBlZ2FsIHdhZXJlLCB3ZW5uIGljaAplaW4gQWx0IHRyaW5rZS4gU292aWVsIFJlZmxleCBmdW5rdGlvbmllcnQgaW1tZXIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBEaWUgaGFiZW4gd29obCBlaW5lbiBhbiBkZXIgV2FmZmVsIChab29rLCAgMy4gT2t0IDIwMDQsIDE4OjU2OjMxKToKfiMhIG9uPU11YWRpYiBvdD0xMDk2NjE5NjU3IG9nPXd3dwp+IyEgcm49VmFyZGlvbiBydD0xMDk2NTU5NDQ0IHJnPXd3dwp+IyEgdGlkPTEwOTU4NDE4NTMKbHVmdGJhbGxvbnMgaGFiZW4gYXVjaCBhYnVuZHp1IHByb2JsZW1lIG1pdCBzY2hhcmZlbiBrYW50ZW4uIHVuZCBmcmVxdWVuemVuCmVudHN0ZWhlbiBkYSBhdWNoIG9mdC4gYXVjaCBkZXIgYmVub2V0aWd0ZSBwbGF0eiBzY2hydW1wZnQgcmFwaWRlLiBrYXB1dHQgZ2VodAphdWNoIHdhcy4gbWl0IGRlbSBlbmRmb3JtYXQgd2lsbCBtYW4gZGFubiBtZWlzdGVucyBhdWNoIG5pY2h0IG1laHIKd2VpdGVyYXJiZWl0ZW4KCmFiZXIgaXJnZW5kd2llIGRlbmtlIGljaCBkZW5vY2ggZGFzcyBkaWVzZXIgYXJ0aWtlbCBlaGVyIG5hY2ggc2NobWFycm4gZ2Vob2VydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEFsY2hlbWlzdCAobWFsIHdpZWRlcikgKENyb2Z0LCAgMy4gT2t0IDIwMDQsIDE5OjAzOjU1KToKfiMhIHJuPVpvb2sgcnQ9MTA5NjgyMjc3OSByZz1kLnZsYW5kCn4jISB0aWQ9MTA5NjI5MTYxMQpLdXJ6ZW4gTW9tZW50IGJpdHRlLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBBbGNoZW1pc3QgKG1hbCB3aWVkZXIpIChDaGFnYWxsLCAgMy4gT2t0IDIwMDQsIDE5OjA1OjExKToKfiMhIHJuPUNyb2Z0IHJ0PTEwOTY4MjMwMzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2MjkxNjExCkxlaXRlc3QgRHUgaWhtIGpldHp0IGRpZSBnYW56ZW4gU3BhbS1NYWlscyB3ZWl0ZXIsIGRpZSBoaWVyIHNvCmVpbnRydWRlbG4/CgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEFsY2hlbWlzdCAobWFsIHdpZWRlcikgKFpvb2ssICAzLiBPa3QgMjAwNCwgMTk6MTM6MzUpOgp+IyEgcm49Q2hhZ2FsbCBydD0xMDk2ODIzMTExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NjI5MTYxMQpEYXMgaGF0dGVuIG1pciBzY2hvbiB6d2VpIE1hZ2llciBhbmdlYm90ZW4sIGRhbm4gYWJlciBhdXMgaXJnZW5kd2VsY2hlbgpHcnVlbmRlbiB3aWVkZXIgZGF2b24gYWJnZWxhc3Nlbi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogRGllIGhhYmVuIHdvaGwgZWluZW4gYW4gZGVyIFdhZmZlbCAoQ2hhZ2FsbCwgIDMuIE9rdCAyMDA0LCAxOToxNzo0Nyk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA5NjgyMzg0MSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTA5NTg0MTg1MwpTb3dhcyBnaWJ0cz8KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZWNoIC4uLiAoQmFtYmksICAzLiBPa3QgMjAwNCwgMTk6NDk6NTApOgp+IyEgcm49VmFuaW9uIHJ0PTEwOTY4MTMxMDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2ODEyODMwClNvbGwgaWNoIERpciBtZWluZW4gTW9yZ2Vuc3Rlcm4gYXVzbGVpaGVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW1kYXMgRkxXIFBhcnQgWCAoQ3JvZnQsICAzLiBPa3QgMjAwNCwgMjE6NTI6NTQpOgpbQWJlbnRldWVyOkltZGFdIGRpZSBnZWh0IGRvY2gKW1RvZDpMYXJzXSBCcmlnbGEgaGF0IGdlcmFkZSBJbWRhIHVtZ2VicmFjaHQuCltUb2Q6QnJpZ2xhXSBBcm1lIEhleGVuIGltIFdhbGQgdmVyc2NocmVja2VuPyBJY2ggd2VyZCBtYWwgRGVpbmUgTGVpY2gnCltUb2Q6QnJpZ2xhXSB2ZXJkcmVja2VuLiBFcnN0IHdlbm4gc2llIHdpcmtsaWNoIGlzdCBiZXNjaG1pZXJ0IGJpc3QgRHUgZnVlcgpbVG9kOkJyaWdsYV0gbWljaCBkYW5uIGFic2VydmllcnQuIERhbm4gc3B1Y2sgaWNoIG5vY2htYWwgdWViZWwgZHJhdWYsIGRhbm4KW1RvZDpCcmlnbGFdIGJlZmVzdGlnJyBpY2ggbmVuIEtuYXVmIGFuIERpciwgemllaCBEaWNoIGRhbm4gd2VpdGVyLCBiaXMgRHUKW1RvZDpCcmlnbGFdIHNjaGxpZXNzbGljaCBiaXN0IHZvbGwgRWl0ZXIuLi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSW1kYXMgRkxXIFBhcnQgWCAoR3JpbW1ib3JuLCAgMy4gT2t0IDIwMDQsIDIyOjEzOjA0KToKfiMhIHJuPUNyb2Z0IHJ0PTEwOTY4MzMxNzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2ODMzMTc0CkF1IHdlaWEsIHdhcyBmdWVyIFJlaW1lLiBJc3QgZGFzIHZvbiBIdW1uaT8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBJbWRhcyBGTFcgUGFydCBYIChDcm9mdCwgIDMuIE9rdCAyMDA0LCAyMjozMDo1NSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA5NjgzNDM4NCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTY4MzMxNzQKSnVwcy4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFid2VzZW5kLi4uIChMaWFyYSwgIDQuIE9rdCAyMDA0LCAxMToyMzo0Nik6Cn4jISBybj1BcmF0aG9ybiBydD0xMDk2MzEzMjk2IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xMDk2MzEzMjc2Clpvb2tiZXN1Y2ggOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLiAoTGlhcmEsICA0LiBPa3QgMjAwNCwgMjI6MTI6NDApOgpEZWluIEZyZXVuZCBNb3Jnb3RoIHRlaWx0IERpciBtaXQ6IGhleSwgdGl0dGVuIHNpbmQgZG9jaCB6dW0gdGFzdGVuIGRhLi4ub2RlcgpEZWluIEZyZXVuZCBNb3Jnb3RoIHRlaWx0IERpciBtaXQ6IHp1bSBuYXNlIHdhZXJtZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAuLi4gKEdsb2luc29uLCAgNC4gT2t0IDIwMDQsIDIyOjEzOjEwKToKfiMhIHJuPUxpYXJhIHJ0PTEwOTY5MjA3NjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2OTIwNzYwCkRpZSBOYXNlIGVpbmVzIE1vcmdvdGggLi4uLgpMdWVnLCBNb3Jnb3RoLCBsdWVnIQpPZGVyIGRvY2ggQ3VwIEE/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAuLi4gKE1vcmdvdGgsICA0LiBPa3QgMjAwNCwgMjI6MTQ6MDIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA5NjkyMDc5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTY5MjA3NjAKV28gd2lsbHN0IER1IGRlbm4gZGEgRGVpbmUgTmFzZSBoaW5zdGVja2VuPwpOZWluLCBOYXNlbndhZXJtZXIgZmFuZ2VuIGJlaSBEIGFuIDopCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogLi4uIChHbG9pbnNvbiwgIDQuIE9rdCAyMDA0LCAyMjoxNTo1Nyk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwOTY5MjA4NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2OTIwNzYwCkludGVyZXNzYW50ZSBOYXNlIGRpZSBkdSBkYSBoYXN0LiBPZGVyIGVpbmVuIHp1IGdyb3NzZXIgQnVzZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogLi4uIChNdXBmZWwsICA0LiBPa3QgMjAwNCwgMjI6MTY6NDUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA5NjkyMDk1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTY5MjA3NjAKRGVzIGlzdCBoYWx0IG1ldGFwaG9yaXNjaCB6dSBzZWhlbi4uLgoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IC4uLiAoUm9uZGEsICA0LiBPa3QgMjAwNCwgMjI6MTY6NTEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA5NjkyMDk1NyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTY5MjA3NjAKT2gsIGRhcyBoYXR0ZSBpY2ggbWlzc3ZlcnN0YW5kZW4uIEljaCBkYWNodGUgbmljaHQgZGFzcyBlcyBkcnVtIGdlaHQsIGRhc3MKTW9yZ290aCBzZWluZSBOYXNlIGluIHNlaW5lbiBCdXNlbiBzdG9jaGVydC4gQWJlciB3ZW5ucyBpaG0gU3Bhc3MgbWFjaHQuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiAuLi4gKEdsb2luc29uLCAgNC4gT2t0IDIwMDQsIDIyOjE3OjI3KToKfiMhIHJuPVJvbmRhIHJ0PTEwOTY5MjEwMTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk2OTIwNzYwCldpZSBzdG9jaGVydCBtYW4gZGVubiBpbiBlaW5lbSBCdXNlbj8gRGEga29tbXQgZG9jaCBzY2huZWxsIGRlciBLbm9jaGVuLiBCaXN0CmR1IFBhdGhvbG9nZT8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiAuLi4gKE11cGZlbCwgIDQuIE9rdCAyMDA0LCAyMjoxODozMSk6Cn4jISBybj1Sb25kYSBydD0xMDk2OTIxMDExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NjkyMDc2MApJY2ggZnVlcmNodGUsIHNvIGJld2VnbGljaCBpc3NlciBkYW5uIGRvY2ggbmltbWVyICh2b3IgYWxsZW0gbmljaHQgc28KYXVzbGFkZW5kIDspLgoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBnbGF1YmUgdW5kIHNvIChab29rLCAgNi4gT2t0IDIwMDQsIDEzOjIyOjU5KToKfiMhIG9uPUhpZ2hsYW5kZXIgb3Q9MTA5NzA2MTc2MyBvZz13d3cKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEwOTcwNjE3MTkgcmc9d3d3Cn4jISB0aWQ9MTA5NzAwNDUxOQpPSywgaWNoIGVyb2VmZm5lIGhlbW11bmdzbG9zIGRlbiAnZ2VodC1lcy11ZWJlci0yMDAtVmVyc3VjaCcuCgpIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBnbGF1YmUgdW5kIHNvIChCYW1idWxrbywgIDYuIE9rdCAyMDA0LCAxMzoyNzoxNSk6Cn4jISBybj1ab29rIHJ0PTEwOTcwNjE3Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MDA0NTE5ClNwaWVsdmVyZGVyYmVyLCBLaW5kZXJ6YWVua2VyLi4uLgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNdWVuc3RlcmFuZXIgU3RhbW10aXNjaCBhbSAxNS4xMC4gKEJhbWJ1bGtvLCAgNi4gT2t0IDIwMDQsIDE1OjUyOjE1KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDk3MDcwNDQ0IHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwOTcwNzA0NDQKRGllIG5ldXN0ZW4gR2VydWVjaHRlIGJlc2FnZW4sIGRhc3MgRHUgamVkZW0gc3BlY2lhbCBndWVzdCBkZXIga29tbXQsIGVpbmVuCkNvY3RhaWwgc3BlbmRpZXJlbiB3aXJzdC4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE11ZW5zdGVyYW5lciBTdGFtbXRpc2NoIGFtIDE1LjEwLiAoWm9vaywgIDYuIE9rdCAyMDA0LCAxNTo1NDoxNyk6Cn4jISBybj1CYW1idWxrbyBydD0xMDk3MDcwNzM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzA3MDQ0NApEaXIgaGF0IGVyIG51ciBlaW5lbiB2ZXJzcHJvY2hlbj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNdWVuc3RlcmFuZXIgU3RhbW10aXNjaCBhbSAxNS4xMC4gKENhdHdlYXpsZSwgIDYuIE9rdCAyMDA0LCAxNTo1NTozMyk6Cn4jISBybj1ab29rIHJ0PTEwOTcwNzA4NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MDcwNDQ0CipjaGkgY2hpKgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE11ZW5zdGVyYW5lciBTdGFtbXRpc2NoIGFtIDE1LjEwLiAoT3JrdG9ldGVyLCAgNi4gT2t0IDIwMDQsIDIxOjU3OjU1KToKfiMhIHJuPU11cGZlbCBydD0xMDk3MDkyNjM1IHJnPXRyZWZmZW4KfiMhIHRpZD0xMDk3MDcwNDQ0CkJpc3QgZHUgc2Nod2FuZ2VyPyEKCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEb3J0bXVuZCAxMi4gMTAuIChMaWFyYSwgIDcuIE9rdCAyMDA0LCAxMzo0NDowOCk6Cn4jISBybj1IdW1uaSBydD0xMDk3MDc1OTQwIHJnPXRyZWZmZW4KfiMhIHRpZD0xMDk3MDY5NjA0CldlcidzIGdsYXVidCAuLi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERvcnRtdW5kIDEyLiAxMC4gKEh1bW5pLCAgNy4gT2t0IDIwMDQsIDE1OjU4OjE1KToKfiMhIHJuPUxpYXJhIHJ0PTEwOTcxNDk0NDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MDY5NjA0CkljaCBoYWJlIFdJUktMSUNIIG5vY2gga2VpbmUgS25laXBlIGtvbXBsZXR0IGxlZXJnZWtyaWVndCEKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEb3J0bXVuZCAxMi4gMTAuIChBbGtvaG9sLCAgNy4gT2t0IDIwMDQsIDE1OjU5OjQ5KToKfiMhIHJuPUh1bW5pIHJ0PTEwOTcwNzU5NDAgcmc9dHJlZmZlbgp+IyEgdGlkPTEwOTcwNjk2MDQKZHUga2FubnN0IGphIG5pY2h0IG1hbCB2ZXJudWVuZnRpZyBXYXNzZXIgdHJpbmtlbiAqZyoKCkFsa2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERvcnRtdW5kIDEyLiAxMC4gKEh1bW5pLCAgNy4gT2t0IDIwMDQsIDE2OjAxOjExKToKfiMhIHJuPUFsa29ob2wgcnQ9MTA5NzE1NzU4OSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTcwNjk2MDQKSWNoIGhhYmUgYWxsZXJkaW5ncyBzY2hvbiAtIGF1Y2ggd2VubiBpY2ggZGEgZ2VnZW4gZGVuIGd1dGVuIEFsa29ob2wga2VpbmUKQ2hhbmNlIGhhYmUgLSBhdWYgUGFydGllcyBkYXMgV2Fzc2VyIGxlZXJnZXRydW5rZW4uCgpJbiBLbmVpcGVuIGhhYiBpY2ggZGFzIGFiZXIgYXVjaCBub2NoIG5pY2h0IGdlc2NoYWZmdC4KCkh1bW5pClBTOiBBdWYgUGFydGllcyBoYWIgaWNoIGF1Y2ggc2Nob24gYWxsZXMgQmllciBhdXNnZXRydW5rZW4uIE5hIGd1dCwgbmljaHQKYWxsZWluZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERvcnRtdW5kIDEyLiAxMC4gKENyb2Z0LCAgNy4gT2t0IDIwMDQsIDE2OjAxOjE1KToKfiMhIHJuPUh1bW5pIHJ0PTEwOTcxNTc0OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MDY5NjA0CkZ1ZXIgZGFzIEtuZWlwZW4ga29tcGxldHQgbGVlcmJla29tbWVuIHNpbmQgYXVjaCBkaWUgTXVlbnN0ZXJhbmVyCnp1c3RhZW5kaWcuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRG9ydG11bmQgMTIuIDEwLiAoTXVhZGliLCAgNy4gT2t0IDIwMDQsIDE2OjAxOjQ5KToKfiMhIHJuPUh1bW5pIHJ0PTEwOTcxNTc2NzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MDY5NjA0Cnp1bWluZGVzdCBuaWNodCBqZWRlc21hbCBtZWluc3QgZHU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEb3J0bXVuZCAxMi4gMTAuIChIdW1uaSwgIDcuIE9rdCAyMDA0LCAxNjowNTozNik6Cn4jISBybj1IdW1uaSBydD0xMDk3MTU3NjcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzA2OTYwNApOYWphLCBhdWYgUGFydGllcyBpbSBTYXVlcmxhbmQgd2FyIGRhcyBuaWNodCBpbW1lciBsZWljaHQuICwsSWNoIHdlcmQgMTgsIGRhCmdlYiBpY2ggNTAgS2lzdGVuIEJpZXIhJycgLSBFcmdlYm5pczogMTIgZGF2b24gd2FyZW4gbGVlciAtIHdlbm4gbWFuIHNlbGJzdAphdWYgc28gZWluZXIgUGFydHkgd2FyIC0gYWxzbyBpY2ggZ2xhdWJlLCBtYW4ga2FubiBzaWNoZXIgc2VpbiwgZGFzcyBkYSBhdWNoCkRyYWNoZW4gZWluZW4gc2Nod2VyZW4gU3RhbmQgaGFiZW4sIGRhcyBCaWVyIGxlZXJ6dWtyaWVnZW4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRG9ydG11bmQgMTIuIDEwLiAoQm9pbmcsICA3LiBPa3QgMjAwNCwgMTY6MDc6MTApOgp+IyEgcm49SHVtbmkgcnQ9MTA5NzE1NzkzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTcwNjk2MDQKU3RlbGwgRGljaCBuaWNodCBzbyBhbiwgZGEgbXVzc3QgRHUgaGFsdCBtZWhyIHVlYmVuLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEb3J0bXVuZCAxMi4gMTAuIChab29rLCAgNy4gT2t0IDIwMDQsIDE2OjA3OjMwKToKfiMhIHJuPUh1bW5pIHJ0PTEwOTcxNTc5MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MDY5NjA0CldpZXZpZWxlIExldXRlIHdhcmVuIGF1ZiBkZXIgUGFydHk/IDEyPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IERvcnRtdW5kIDEyLiAxMC4gKE11YWRpYiwgIDcuIE9rdCAyMDA0LCAxNjoxMDo0OCk6Cn4jISBybj1ab29rIHJ0PTEwOTcxNTgwNTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MDY5NjA0CnVuZCBhbGxlIDEyIGhpZXNzZW4gem9vaz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IERvcnRtdW5kIDEyLiAxMC4gKFpvb2ssICA3LiBPa3QgMjAwNCwgMTY6MTY6MTApOgp+IyEgcm49TXVhZGliIHJ0PTEwOTcxNTgyNDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MDY5NjA0Cnpvb2sgdmVydHJhZWd0IGtlaW4gYmllci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IERvcnRtdW5kIDEyLiAxMC4gKE11YWRpYiwgIDcuIE9rdCAyMDA0LCAxNjoxNzoxMik6Cn4jISBybj1ab29rIHJ0PTEwOTcxNTg1NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MDY5NjA0CmRhcyBzYWd0IGFiZXIgbnVuIGdhciBuaWNodHMgdWViZXIgZGFzIHRyaW5rdmVyaGFsdGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEb3J0bXVuZCAxMi4gMTAuIChLZWxseWJ1bmR5LCAgNy4gT2t0IDIwMDQsIDIxOjE5OjM0KToKfiMhIHJuPUh1bW5pIHJ0PTEwOTcxNTc5MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MDY5NjA0Ckx1c2NoZW4hIFNpdHpwaW5rbGVyLiBBdWYgdW5zZXJlciBBYmlwYXJ0aSB3YXJlbiBiZWkgY2EgMTAwMCBHYWVzdGVuIDY0NApLYWVzdGVuIEJpZXIgbGVlciwgZGllIGhhcnRlbiBHZXRyYWVua2Ugbm9jaCBuaWNodCBtaXRnZXJlY2huZXQuIEFiZXIgZGllCkp1Z2VuZCBoZXV0enV0YWdlIGlzdCBqYSBzbyB2ZXJ3ZWljaGxpY2h0Li4uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBEb3J0bXVuZCAxMi4gMTAuIChHbG9pbnNvbiwgIDcuIE9rdCAyMDA0LCAyMToyNjozNyk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTEwOTcxNzY3NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MDY5NjA0CjEwMDAgR2Flc3RlPyBJbiB3ZWxjaGVyIEthZWZpZ2hhbHR1bmcgaGFiZW4gc2llIGV1Y2ggZGVubiBhdXNnZWJpbGRldD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBEb3J0bXVuZCAxMi4gMTAuIChLZWxseWJ1bmR5LCAgNy4gT2t0IDIwMDQsIDIxOjQwOjUzKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwOTcxNzcxOTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MDY5NjA0Ck5peCBLYWVmaWcuIFdhciBhbSBTY2hidWVsbGVyIE5vcmRzZWVzdHJhbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBEb3J0bXVuZCAxMi4gMTAuIChLZWxseWJ1bmR5LCAgNy4gT2t0IDIwMDQsIDIxOjQxOjM5KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwOTcxNzcxOTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MDY5NjA0CnNjaGJ1ZWxsPXNjaG9idWVsbC4gYWVoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRG9ydG11bmQgMTIuIDEwLiAoTW9yZ290aCwgIDguIE9rdCAyMDA0LCAwOToxNjozMik6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTEwOTcxNzY3NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MDY5NjA0CkNsYXVzdGhhbGVyIHdhaHJzY2hlaW5saWNoIDopCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRG9ydG11bmQgMTIuIDEwLiAoTXVhZGliLCAgOC4gT2t0IDIwMDQsIDEwOjEyOjUyKToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTA5NzE3Njc3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTcwNjk2MDQKbWVpbnN0IGR1IG1pdCBqdWdlbmQgaHVtbmk/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogRGllIGhhYmVuIHdvaGwgZWluZW4gYW4gZGVyIFdhZmZlbCAoTXVhZGliLCAgOC4gT2t0IDIwMDQsIDExOjAzOjI5KToKfiMhIHJuPUdub21lIHJ0PTEwOTcyMjUzNDEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEwOTU4NDE4NTMKd2VubiBpY2ggYmlsZGVyIGlucyBuZXR6IHN0ZWxsZSBiZXN0aW1tZSBpY2ggZGFzIGZvcm1hdCBuYWNoIHNjaG5hdXplCndlbiBzaWUgaW50ZXJlc3NpZXJlbiBzb2xscyBmcmVzc2VuIG9kZXIgYmxlaWJlbiBsYXNzZW4gOikKCmF1c3NlcmRlbSBpc3Qgam9lIGRlciBiZXNzZXJlIGVkaXRvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6ICBVbml4IGZ1ZXIgQXVzc2VyaXJkaXNjaGUgKE9nbywgIDguIE9rdCAyMDA0LCAxODowODo1NCk6Cn4jISBvbj1PZ28gb3Q9MTA5NzI1MTcyOCBvZz1oYXJkc29mdHdhcmUKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDk3MjI5MzYwIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwOTcyMjkzNjAKQXVmIGRpZSBGcmFnZSAiV2FzIHBhc3N0IG5pY2h0PyIsIGJpZXRlIGljaCBtYWwgJ2ltYXAnIGFuLiBXZW5uIGVzIGdjYyAtV2FsbAppc3QsIGRhbm4gcGFzc3QgYXVjaCBXYWxsIG5pY2h0LCB3YWxsIGhpbmdlZ2VuIHNjaG9uLiA6bykKCk9nbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IERpZSBoYWJlbiB3b2hsIGVpbmVuIGFuIGRlciBXYWZmZWwgKE9nbywgIDguIE9rdCAyMDA0LCAxODoxMTowNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTA5NzIyNjIwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTU4NDE4NTMKam9lPz8/PwoKRGEgaXN0IGRpZSBUYWZlbCwgZGEgZGllIEtyZWlkZSEgVW5kIG51biAxMDAgbWFsICJ2aSBpc3QgZGVyIGVpbnppZyB3YWhyZQplZGl0b3IiIQoKT2dvLCBwYWVkb2dvZ2lzY2ggYWt0aXYgOz4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBEaWUgaGFiZW4gd29obCBlaW5lbiBhbiBkZXIgV2FmZmVsIChXaGl0ZXRpZ2VyLCAgOC4gT2t0IDIwMDQsIDE4OjEyOjA0KToKfiMhIHJuPU9nbyBydD0xMDk3MjUxODY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTg0MTg1MwoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKIkpvZSBpc3QgZGVyIGVpbnppZyB3YWhyZSBlZGl0b3IiCiJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIgoiSm9lIGlzdCBkZXIgZWluemlnIHdhaHJlIGVkaXRvciIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBEaWUgaGFiZW4gd29obCBlaW5lbiBhbiBkZXIgV2FmZmVsIChHcmltbWJvcm4sICA4LiBPa3QgMjAwNCwgMTg6MTQ6NTApOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDk3MjUxOTI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTg0MTg1MwpMYXNzIG1pY2ggcmF0ZW46IERhcyBoYXN0IER1IHZlcm11dGxpY2ggbWl0IGVtYWNzIGdlc2NocmllYmVuLCBkZW0gZWluemlnCndhaHJlbiBFZGl0b3IuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IERpZSBoYWJlbiB3b2hsIGVpbmVuIGFuIGRlciBXYWZmZWwgKEJpZWxlZmVsZCwgIDguIE9rdCAyMDA0LCAxODoxNjowMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA5NzI1MjA5MCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTU4NDE4NTMKRGFzIHNhaCBlaGVyIGdlc2NyaXB0ZXQgYXVzLgoKLUJpZWxlZmVsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAgVW5peCBmdWVyIEF1c3NlcmlyZGlzY2hlIChHcmltbWJvcm4sICA4LiBPa3QgMjAwNCwgMTg6MTY6MTYpOgp+IyEgcm49T2dvIHJ0PTEwOTcyNTE3MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MjI5MzYwCkR1LCBlcyBnaWJ0IGRhIHdhcyBnYW56IG5ldWVzOiBTYXR6YW5mYWVuZ2Ugc2NocmVpYnQgbWFuIGdyb3NzLiBBdWNoIGltCktsaW5nb25pc2NoZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBEaWUgaGFiZW4gd29obCBlaW5lbiBhbiBkZXIgV2FmZmVsIChXaGl0ZXRpZ2VyLCAgOC4gT2t0IDIwMDQsIDE4OjE4OjI0KToKfiMhIHJuPUJpZWxlZmVsZCBydD0xMDk3MjUyMTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTg0MTg1MwpEYXMgd2FyIGdlc2NyaXB0ZXQuIC9yZXBlYXQgLTAgMTAwICJKb2UgaXN0IGRlciBlaW56aWcgd2FocmUgZWRpdG9yIi4uLi4KQmVpIF9kZXJfIFZvcmxhZ2UuLi4uCgpUaWdlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IERpZSBoYWJlbiB3b2hsIGVpbmVuIGFuIGRlciBXYWZmZWwgKEdsb2luc29uLCAgOC4gT2t0IDIwMDQsIDE4OjE5OjIyKToKfiMhIHJuPVdoaXRldGlnZXIgcnQ9MTA5NzI1MjMwNCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTU4NDE4NTMKRXIgaGF0IGFiZXIgbmFjaCBLcmVpZGUgdmVybGFuZ3QuIExvcywgZ2VoIGRhcyBpbSBMdXBpdGFsIHNjcmlwdGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMzOiBEaWUgaGFiZW4gd29obCBlaW5lbiBhbiBkZXIgV2FmZmVsIChXaGl0ZXRpZ2VyLCAgOC4gT2t0IDIwMDQsIDE4OjIxOjI0KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwOTcyNTIzNjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk1ODQxODUzCldhcyBoYXQgS3JlaWRlIG1pdCBkZW0gTHVwaXRhbCB6dSB0dW4/ClVuZCB3ZW5uIGljaCBkYSBoaW5nZWhlLCBiZWtvbW1lIGljaCBiZXN0aW1tdCBBZXJnZXIgbWl0IG1laW5lbiBQZm90ZW4uLi4KClRpZ2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAgVW5peCBmdWVyIEF1c3NlcmlyZGlzY2hlIChPZ28sICA4LiBPa3QgMjAwNCwgMTg6MjE6NTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwOTcyNTIxNzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MjI5MzYwCkRhIGhhYiBpY2ggYW5kZXJlcyBnZWhvZXJ0LCBhYmVyIGR1IHdhZXJzdCBuaWNodCBHcmltbWJvcm4gZGVyIEF0aGVpc3QsIHdlbm4KZHUgZGVpbmUgQmVoYXVwdHVuZyBuaWNodCBkdXJjaCBpcmdlbmRlaW5lIFF1ZWxsZSBiZWxlZ2VuIGtvZW5udGVzdCwgcmlnaHQ/CgpPZ28sIGluIGRlciByaWNodGlnZW4gUnVicmlrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiAgVW5peCBmdWVyIEF1c3NlcmlyZGlzY2hlIChHcmltbWJvcm4sICA4LiBPa3QgMjAwNCwgMTg6MzE6NTYpOgp+IyEgcm49T2dvIHJ0PTEwOTcyNTI1MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MjI5MzYwCkplcHAuIFNpZWhlIGRhcyBTdGFuZGFyZHdlcmsgenVyIGtsaW5nb25pc2NoZW4gUmVjaHRzY2hyZWlidW5nLCAiQ2hncnAgZ3JvZmZlcgpQbHRvdGYgenNoIG1rbm9kIG1rY2ZtLCB6ZmdyZXAiLiBVbmQgYml0dGUsIGtvbnN1bHRpZXJlIGRvY2ggenVrdWVuZnRpZyBkaWUKZWluc2NobGFlZ2lnZSBMaXRlcmF0dXIsIGJldm9yIER1IGhpZXIgIkJlbGVnZSIgZWluZm9yZGVyc3QuIEVyc3BhcnN0IERpcgpkYW1pdCB2aWVsIEJsYW1hZ2UuIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiAgVW5peCBmdWVyIEF1c3NlcmlyZGlzY2hlIChPZ28sICA4LiBPa3QgMjAwNCwgMTg6NTA6MTcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwOTcyNTMxMTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MjI5MzYwCklTQk4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogRGllIGhhYmVuIHdvaGwgZWluZW4gYW4gZGVyIFdhZmZlbCAoT3JrdG9ldGVyLCAgOS4gT2t0IDIwMDQsIDEwOjA2OjA0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMDk3MjUyMDkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTg0MTg1MwpEaWUgUmVkZSB3YXIgdm9uIEVkaXRvcmVuLCBuaWNodCB2b24gQmV0cmllYnNzeXN0ZW1lbiEKCk9ya1QsIGtsYXIgc3RlbGxlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMzogRGllIGhhYmVuIHdvaGwgZWluZW4gYW4gZGVyIFdhZmZlbCAoQmFtYmksICA5LiBPa3QgMjAwNCwgMTA6MTU6NTYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA5NzI1MjM2MiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTU4NDE4NTMKV2VubiBpY2ggZGEgYXVjaCBudXIgZWluZW4gRWludHJhZyBpbSBSZXBmaWxlIHNlaGUuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBCbGl0emdlcmFldCB2aWEgU2xhdmUga29wcGVsbiAoQW5hdG9sLCAgOS4gT2t0IDIwMDQsIDExOjQwOjA5KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDk2OTU0MzIyIHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTA5NjkxODEzNwpJY2ggaGF0dGUgc2llIHNjaG9uIGluIGRlciBIYW5kLi4uIGRpZSBzaW5ubGljaGVuIEt1cnZlbiBkZXMgCkdlaGFldXNlcyBiZXd1bmRlcnQsIHVudmVyaG9obGVuIHVlYmVyIGRpZSBBdXNsb2VzZWdlc2Nod2luZGlna2VpdApnZXN0YXVudCwgYW5kYWVjaHRpZyBkZW4gQXVzbG9lc2VyIGdlZHJ1ZWNrdC4uLgoKCipzZXVmeiogCkxlaWRlciBuaWNodCBnYW56IGJpbGxpZywgZGllc2UgVHJhdW1mcmF1IHVudGVyIGRlbiBTZW1pLVBybyBEaWdpY2Ftcy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTUctUGFydHkgWFhWSUk6IDEuIExvY2F0aW9uIChCYW1iaSwgMTAuIE9rdCAyMDA0LCAwMDozMzowMSk6Cn4jISBybj1BbmF0b2wgcnQ9MTA5NzM0NzA0MiByZz1wYXJ0eS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA5NzM0NzA0MgoiVGllZiBpbiBkZXIgUGFtcGEsIHdvaGx3b2xsZW5kICdIdW5zcnVlY2snIGdlbmFubnQiCkFsc28gc29vb28gd2VpdCBpbiBkZXIgUGFtcGEga2FubiBkYXMgbmljaHQgc2Vpbi4gSW1tZXJoaW4gaXN0IGRhcyBHYW56ZSB2b24KTWFpbnogYXVzIHp1IEZ1c3MgZXJyZWljaGJhci4gQmV3aWVzZW5lcm1hc3Nlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTUctUGFydHkgWFhWSUk6IDEuIExvY2F0aW9uIChHbG9pbnNvbiwgMTAuIE9rdCAyMDA0LCAwMDo1MDoxNCk6Cn4jISBybj1CYW1iaSBydD0xMDk3MzYxMTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzM0NzA0MgpIb3llcnN3ZXJkYSBpc3QgbWl0IGRlbSBSYWQgZXJyZWljaGJhci4gRGFzIG1hY2h0IGVzIG5pY2h0IHdlbmlnZXIgenVyCm9zdGRldXRzY2hlbiBQYW1wYSA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1HLVBhcnR5IFhYVklJOiAxLiBMb2NhdGlvbiAoWm9vaywgMTAuIE9rdCAyMDA0LCAyMDoxNjoxOSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDk3MzYyMjE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzM0NzA0MgpWb24gTWFpbnogYXVzPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1HLVBhcnR5IFhYVklJOiAxLiBMb2NhdGlvbiAoSHVtbmksIDEwLiBPa3QgMjAwNCwgMjA6MTc6NTkpOgp+IyEgcm49Wm9vayBydD0xMDk3NDMyMTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzM0NzA0MgpPY2gsIGljaCBnbGF1YmUgSG95ZXJzd2VyZGEgaXN0IGR1cmNoYXVzIGF1Y2ggdm9uIE1haW56IGF1cyBtaXQgZGVtIFJhZAplcnJlaWNoYmFyLiBIaW5yZWljaGVuZCBaZWl0LCBXZXR0ZXIsIGVudHNwcmVjaGVuZGUgQXVzcnVlc3R1bmcgdW5kIFJhZWRlcgp2b3JhdXNnZXNldHp0LgoKSHVtbmkgKG5laW4hIGRhcyBoZWlzc3QgTklDSFQsIGRhc3MgaWNoIGRhcyB0dWUhKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogT2h3ZWghIChab29rLCAxMC4gT2t0IDIwMDQsIDIwOjU0OjQ2KToKfiMhIG9uPUJvaW5nIG90PTEwOTc0MzQzNDYgb2c9bXVlbGwKfiMhIG9uPVpvb2sgb3Q9MTA5NzA3NjQ3NSBvZz1nZWphbW1lcgp+IyEgcm49R2xvaW5zb24gcnQ9MTA5NzA3NjQ1MyByZz1nZWphbW1lcgp+IyEgdGlkPTEwOTcwNDkwNzUKTWFuIGthbm4gYXVjaCA1NSBkYXZvbiBzYW1tZWxuIHVuZCBkYW5uIGF1ZiBlaW5lbiBCcmllZiBrbGViZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogT2h3ZWghIChab29rLCAxMC4gT2t0IDIwMDQsIDIwOjU1OjEyKToKfiMhIG9uPUJvaW5nIG90PTEwOTc0MzQzNTEgb2c9bXVlbGwKfiMhIG9uPVpvb2sgb3Q9MTA5NzE0ODMyMSBvZz1nZWphbW1lcgp+IyEgcm49Tm9ubmUgcnQ9MTA5NzEzMjMzMCByZz1nZWphbW1lcgp+IyEgdGlkPTEwOTcwNDkwNzUKTmFjaGRlbSBpY2ggbWVpbmUgR2VsZGthcnRlIHdpZWRlciBhdWZnZWxhZGVuIGhhdHRlLCBoYWIgaWNoIGdlc3Rlcm4gCm1pdCBGcmV1ZGUgbWFsIHdpZWRlciBlaW5lIEJyaWVmbWFya2UgYW0gQXV0b21hdGVuIGdlem9nZW4uIFpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNRy1QYXJ0eSBYWFZJSTogMS4gTG9jYXRpb24gKEdsb2luc29uLCAxMC4gT2t0IDIwMDQsIDIxOjE1OjA5KToKfiMhIHJuPUh1bW5pIHJ0PTEwOTc0MzIyNzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MzQ3MDQyCkRyZWkgVGFnZSBzb2xsdGVuIGxhbmdlbi4gTWFsIG5hY2ggZGVuIEtpbG9tZXRlcm4gc2NoYXVuIC4uLiA1NTAgZGlyZWt0ZQpTdHJlY2tlLiBKYSwgZHJlaSBUYWdlIHJlaWNoZW4gbG9ja2VyLCBVcmxhdWIgdm9yYXVzZ2VzZXR6dCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1HLVBhcnR5IFhYVklJOiAxLiBMb2NhdGlvbiAoUGFkcmVpYywgMTAuIE9rdCAyMDA0LCAyMTozMTo0OSk6Cn4jISBybj1IdW1uaSBydD0xMDk3NDMyMjc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzM0NzA0MgpXaWVzbyBhdWNoIG5pY2h0PyBNYW4gbmVobWUgZGFzIFJhZCwgZmFocmUgenVtIG5hZWNoc3RlbiBCYWhuaG9mLiBXYWVobGUgZWluZW4KZ2VlaWduZXRlbiBadWcuIFN0ZWlnZSBtaXQgUmFkIGluIGRlbiBadWcuIFRyaW5rZSBBbGtvaG9sIG51ciBpbiBNYXNzZW4sIHNvCmRhc3MgbWFuIGltIFppZWxiYWhuaG9mIG5vY2ggZHJhbiBkZW5rdCBiZWltIGF1c3N0ZWlnZW4gZGFzIFJhZCBtaXQKcmF1c3p1bmVobWVuIHVuZCBmZXJ0aWcuIEJlaSBPcnRlbiBpbiBkZXIgcGFtcGEgd2llIEhveWVyc3dlcmRhIHdlbmRlIG1hbiBkYXMKVmVyZmFocmVuIFJla3Vyc2l2IGFuIGJpcyBtYW4gYW0gWmllbGJhaG5ob2YgYW5nZWtvbW1lbiBpc3QuCnEuZS5kLgoKUGFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTUctUGFydHkgWFhWSUk6IDEuIExvY2F0aW9uIChDcm9mdCwgMTAuIE9rdCAyMDA0LCAyMTozMjo0MSk6Cn4jISBybj1QYWRyZWljIHJ0PTEwOTc0MzY3MDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MzQ3MDQyCk1hc3NlbiBvZGVyIE1hc3plbj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBNRy1QYXJ0eSBYWFZJSTogMS4gTG9jYXRpb24gKFBhZHJlaWMsIDEwLiBPa3QgMjAwNCwgMjE6MzM6MjkpOgp+IyEgcm49Q3JvZnQgcnQ9MTA5NzQzNjc2MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTczNDcwNDIKQWxzbyBmdWVyIGVpbmVuIEJheWVybiB3YWVyZSBkYXMga2VpbmUgRnJhZ2UuIERlciB0cmlua3QgZGFzIGltbWVyIG51ciBpbgpNYXN6ZW4uCgpQYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNRy1QYXJ0eSBYWFZJSTogMS4gTG9jYXRpb24gKEdsb2luc29uLCAxMC4gT2t0IDIwMDQsIDIyOjUwOjM1KToKfiMhIHJuPVBhZHJlaWMgcnQ9MTA5NzQzNjcwOSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTczNDcwNDIKVW5kIHdlbm4gd2lyIGpldHp0IGJlaGF1cHRlbiwgbWFuIGtvZW5uZSBtaXQgZWluZSBGbHVnemV1ZyBuYWNoIEhveWVyc3dlcmRhCmZsaWVnZW4sIHJ1ZnN0IGR1IHNpY2hlcmxpY2ggYXVjaCBiZWkgREIgQ2FyZ28gYW4/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTUctUGFydHkgWFhWSUk6IDEuIExvY2F0aW9uIChHbm9tZSwgMTAuIE9rdCAyMDA0LCAyMjo1NDo0NSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDk3NDQxNDM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzM0NzA0MgpsYXNzIGlobiBkb2NoIGhhYXJlIHNwYWx0ZW4uIGhhbHQgZWluIGplZGVyIHdpZSBlciBrYW5uLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IERpZSBoYWJlbiB3b2hsIGVpbmVuIGFuIGRlciBXYWZmZWwgKE11YWRpYiwgMTEuIE9rdCAyMDA0LCAxMDoyMjowMSk6Cn4jISBybj1PZ28gcnQ9MTA5NzI1MTg2NCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTU4NDE4NTMKZWhlciBmcmVzcyBpY2ggZGllIGtyZWlkZSB1bmQgc2luZ2UgY29sb3JhdHVyZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBEaWUgaGFiZW4gd29obCBlaW5lbiBhbiBkZXIgV2FmZmVsIChNdWFkaWIsIDExLiBPa3QgMjAwNCwgMTA6MjI6MjEpOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDk3MjUxOTI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTg0MTg1MwppY2ggaGFiIGRhcyBkcmluZ2VuZGUgYmVkdWVyZm5pcyBqZW1hbmRlbiB6dSBsb2VzY2hlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IERpZSBoYWJlbiB3b2hsIGVpbmVuIGFuIGRlciBXYWZmZWwgKFpvb2ssIDExLiBPa3QgMjAwNCwgMTA6MzQ6MDEpOgp+IyEgcm49V2hpdGV0aWdlciBydD0xMDk3MjUxOTI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NTg0MTg1MwpKb2U/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IERpZSBoYWJlbiB3b2hsIGVpbmVuIGFuIGRlciBXYWZmZWwgKE11YWRpYiwgMTEuIE9rdCAyMDA0LCAxMTowODowNik6Cn4jISBybj1ab29rIHJ0PTEwOTc0ODM2NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk1ODQxODUzCmpvZSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE1HLVBhcnR5IFhYVklJOiAxLiBMb2NhdGlvbiAoTW9yZ290aCwgMTEuIE9rdCAyMDA0LCAxMToyNzoyOCk6Cn4jISBybj1QYWRyZWljIHJ0PTEwOTc0MzY3MDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MzQ3MDQyCkFsc28gd2VubiBEdSB1ZWJlciBNYXNzZW4gZmFocmVuIHdpbGxzdCwgZGFubiBpc3QgZGFzIGFiZXIgZWluIGdhbnogc2Nob2VuZXIKVW13ZWcuIFVuZCB3ZW5uIER1IE5VUiBkYSBBbGtvaG9sIHRyaW5rZW4gd2lsbHN0Li4ubmFqYS4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW50ZXJicmVjaHVuZyB3ZWdlbiBTdHJvbWFic2NoYWx0dW5nIGFtIDEzLjEwLiAoT3JrdG9ldGVyLCAxMS4gT2t0IDIwMDQsIDE4OjI2OjE2KToKfiMhIHJuPUhhdGUgcnQ9MTA5NzUxMTEwOCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwOTc1MTExMDgKV2FzIHNlaXQgSWhyPyBFaW4gU2NoYWx0d2Vyaz8gRWluLXNjaGFsdCBBdXMtc2NoYWx0PwpTbyBvZnQgd2llIGJlaSBldWNoIGRlciBTdHJvbSBhYmdlc2NoYWx0ZXQgd2VyZGUgbXVzcyAqS29wZiBzY2h1ZXR0ZWwqIGRhcwpHZWxkIGZ1ZXIgZGllIFVTViBoYWV0dGUgaWhyIGV1Y2ggc3BhcmVuIGtvZW5uZW4gKmcqCgpPcmtULCBkZW0gZXMgZWlnZW50bGljaCBnYW56IGVnYWwgaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBVbnRlcmJyZWNodW5nIHdlZ2VuIFN0cm9tYWJzY2hhbHR1bmcgYW0gMTMuMTAuIChab29rLCAxMS4gT2t0IDIwMDQsIDE4OjMxOjQ4KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDk3NTExOTc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzUxMTEwOApXZWxjaGVzIEdlbGQgZnVlciB3ZWxjaGUgVVNWPwoKVW5kIHdvIGdlbmF1IGlzdCBkZW5uIGRhcyBQcm9ibGVtPyBEaWUgRnJhdW5ob2Zlci1HZXNlbGxzY2hhZnQgaXN0IHdvaGwKa2VpbiBIb3N0aW5nLVNlcnZpY2UgdW5kIGltbWVyaGluIGJla29tbWVuIHdpciB1bnNlcmVuIFJlY2huZXIgZG9ydApvaG5lIEtvc3RlbiB1bnRlciwgZGEgaGFsdGUgaWNoIGRpZSBEb3duLVplaXRlbiBkdXJjaCBTdHJvbWFic2NoYWx0dW5nZW4sCkJhZ2dlci1VbmZhZWxsZSBvLmFlLiBpbiBkZXIgVmVyZ2FuZ2VuaGVpdCBmdWVyIGFremVwdGFiZWwuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVW50ZXJicmVjaHVuZyB3ZWdlbiBTdHJvbWFic2NoYWx0dW5nIGFtIDEzLjEwLiAoQ3JvZnQsIDExLiBPa3QgMjAwNCwgMTg6MzQ6NTUpOgp+IyEgcm49Wm9vayBydD0xMDk3NTEyMzA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzUxMTEwOApVbmQgZWluZSBVU1YgZGllbnQgamEgZGF6dSBkZW4gUmVjaG5lciBpbSBGYWxsIGVpbmVzIEZhbGxlcyBub2NoCmd1dCBydW50ZXJmYWhyZW4genUga29lbm5lbiB1bmQgU3Bhbm51bmdzY2h3YW5rdW5nZW4gYXVzenVnbGVpY2hlbi4KV2FzIHd1ZXJkZSBkaXIgZWluIGxhdWZlbmRlciBNRy1SZWNobmVyIGJyaW5nZW4sIHdlbm4gZGllIHJlc3RsaWNoZQpOZXR6YW5iaW5kdW5nIGFiZ2VzdGVsbHQgaXN0PyAgVW5kIGVpbmUgVVNWIGlzdCBub3JtYWxlcndlaXNlIGF1Y2ggbmljaHQKZnVlciBtZWhyZXJlIFN0dW5kZW4gYXVzZ2VsZWd0IC4uLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFVudGVyYnJlY2h1bmcgd2VnZW4gU3Ryb21hYnNjaGFsdHVuZyBhbSAxMy4xMC4gKE9ya3RvZXRlciwgMTEuIE9rdCAyMDA0LCAxODozNToxNyk6Cn4jISBybj1ab29rIHJ0PTEwOTc1MTIzMDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3NTExMTA4CkRhcyBNRyBpc3QgZG9jaCBuaWNodCB3aWNodGlnIChhdWNoIHdlbm4gamV0enQgZWluaWdlIEF1ZnNjaHJlaWVuIHdlcmRlbiksCmFiZXIgaWNoIGZyYWdlIG1pY2ggd2llIGRpZSBkb3J0IG1pdCBkaWVzZXIgQW56YWhsIGFuIEF1c2ZhZWxsZW4gKGdlcGxhbnQgdW5kCm5pY2h0IGdlcGxhbnQpIHp1cmVjaHRrb21tZW4uCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVW50ZXJicmVjaHVuZyB3ZWdlbiBTdHJvbWFic2NoYWx0dW5nIGFtIDEzLjEwLiAoWm9vaywgMTEuIE9rdCAyMDA0LCAxODozNjoyMyk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTA5NzUxMjUxNyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTc1MTExMDgKQWNoIHNvLCBEdSBzb3Jnc3QgRGljaCB1bSBkYXMgUmVjaGVuemVudHJ1bSBkZXIgRnJhdW5ob2Zlci1HZXNlbGxzY2hhZnQuCk51biwgZGEga2FubiBpY2ggRGlyIG5pY2h0IHdlaXRlcmhlbGZlbiwgYWJlciBpY2ggZW1wZmVobGUsIERpY2ggZGlyZWt0CmFuIGRpZSBBZG1pbmlzdHJhdG9yZW4gZG9ydCB6dSB3ZW5kZW4sIGRpZSBrb2VubmVuIERlaW5lIEFuZnJhZ2Ugc2ljaGVybGljaAphbSBiZXN0ZW4gYmVhcmJlaXRlbi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBPaHdlaCEgKEJhbWJ1bGtvLCAxMS4gT2t0IDIwMDQsIDE5OjQ5OjQ0KToKfiMhIHJuPVpvb2sgcnQ9MTA5NzQzNDQ4NiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTcwNDkwNzUKSG1tbSwgd2lyZCBlaW4gQnJpZWYgbWl0IDU1IEJyaWVmbWFya2VuIG5pY2h0IHp1IHNjaHdlciBmdWVyIGVpbmVuClN0YW5kYXJkYnJpZWY/IE9kZXIgd2lyZCBkYXMgR2V3aWNodCBkZXIgQnJpZWZtYXJrZW4gbmljaHQgYmVyZWNobmV0PwoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFVudGVyYnJlY2h1bmcgd2VnZW4gU3Ryb21hYnNjaGFsdHVuZyBhbSAxMy4xMC4gKFBhZHJlaWMsIDExLiBPa3QgMjAwNCwgMjI6Mjg6MTYpOgp+IyEgcm49Q3JvZnQgcnQ9MTA5NzUxMjQ5NSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTc1MTExMDgKRGFzIGthbm4gbWFuIGR1cmNoYXVzIGFuZGVycyBzZWhuIENyb2Z0LiBCZWkgdW5zIGluIGRlciBGaXJtYSBlcmhhZWx0IGRpZSBVU1YKZnVlciBndXQgMiBTdHVuZGVuIGRlbiBCZXRyaWViIGF1ZnJlY2h0IHdlbm5zIHNlaW4gbXVzcyAtIHp1bWluZGVzdCBkZW4Kd2ljaHRpZ2VuLiAoT2ssIHdpciBtdXNzdGVuIGRlbSBFbGVrdHJpa2VyIGVyc3QgZXJrbGFlcmVuLCBkYXMgZGllIEtsaW1hYW5sYWdlCm5pY2h0IHp1IGRlbiB3aWNodGlnZW4gR2VyYWV0ZW4gZ2Vob2VydC4uLikuCgpQYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBVbnRlcmJyZWNodW5nIHdlZ2VuIFN0cm9tYWJzY2hhbHR1bmcgYW0gMTMuMTAuIChHcmltbWJvcm4sIDExLiBPa3QgMjAwNCwgMjI6MzU6MTgpOgp+IyEgcm49UGFkcmVpYyBydD0xMDk3NTI2NDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzUxMTEwOApOYWphLCB3ZW5uIGRpZSBLbGltYWFubGFnZSBuaWNodCB6dSBkZW4gd2ljaHRpZ2VuIEdlcmFldGVuIGdlaG9lcnQsIGthbm4gZXVyZQpBbmxhZ2UgamEgbmljaHQgc29uZGVybGljaCBncm9zcyBzZWluLiBCZWkgdW5zIGhhZWx0IGRpZSBVU1YgcnVuZCAxNSBtaW4uCld1ZXJkZSBkaWUgS2xpbWFhbmxhZ2UgbmljaHQgZGF6dWdlaG9lcmVuLCBoaWVsdGUgc2llIHdvaGwgZnVlciBrbmFwcCA0NSBtaW4sCndhcyBhYmVyIHRldWVyIHdhZXJlIC0gd2VpdGUgVGVpbGUgZGVyIEFubGFnZSB3dWVyZGUgZGFubiBkZW4gSGl0emV0b2QKc3RlcmJlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVW50ZXJicmVjaHVuZyB3ZWdlbiBTdHJvbWFic2NoYWx0dW5nIGFtIDEzLjEwLiAoQ3JvZnQsIDExLiBPa3QgMjAwNCwgMjI6NDA6MzgpOgp+IyEgcm49UGFkcmVpYyBydD0xMDk3NTI2NDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzUxMTEwOApOYWVjaHN0ZXMgTWFsIHNvbGx0ZSBpY2ggd29obCAibWVocmVyZSBTdHVuZGVuICg+MikiIHNjaHJlaWJlbiAuLi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBVbnRlcmJyZWNodW5nIHdlZ2VuIFN0cm9tYWJzY2hhbHR1bmcgYW0gMTMuMTAuIChPcmt0b2V0ZXIsIDExLiBPa3QgMjAwNCwgMjI6NDY6NTgpOgp+IyEgcm49Q3JvZnQgcnQ9MTA5NzUyNzIzOCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTc1MTExMDgKQWxzbyBkYSB3byBlcyB3aXJrbGljaCB3aWNodGlnIGlzdCwgbXVzcyBkaWUgVVNWIGdlbmF1IHNvIGxhbmdlIGR1cmNoaGFsdGVuCmJpcyBkYXMgTm90c3Ryb21hZ2dyZWdhdCBzdGFiaWwgbGFldWZ0LgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFVudGVyYnJlY2h1bmcgd2VnZW4gU3Ryb21hYnNjaGFsdHVuZyBhbSAxMy4xMC4gKEdsb2luc29uLCAxMS4gT2t0IDIwMDQsIDIzOjA0OjM2KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMDk3NTI3NjE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzUxMTEwOApJY2gga2FubiBmdWVyIGRpY2ggZmVzdHN0ZWxsZW46IGRpZSBGaEcgRmlyc3QgYmV0cmVpYnQga2VpbmUgZXh0cmVtCmdlc2VsbHNjaGFmdHN3aWNodGlnZW4gR2VyYWV0ZSB1bmQgYmVkYXJmIGRlc2hhbGIgZWJlbnNvd2VuaWcgd2llIGRhcyBuZWJlbmFuCmxpZWdlbmRlIEluc3RpdHV0IGZ1ZXIgSW5mb3JtYXRpayBlaW5lcyBOb3RzdHJvbWFnZ3JlZ2F0cy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBVbnRlcmJyZWNodW5nIHdlZ2VuIFN0cm9tYWJzY2hhbHR1bmcgYW0gMTMuMTAuIChab29rLCAxMS4gT2t0IDIwMDQsIDIzOjE5OjU1KToKfiMhIHJuPVBhZHJlaWMgcnQ9MTA5NzUyNjQ5NiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTc1MTExMDgKV2VsY2hlIEZpcm1hPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFVudGVyYnJlY2h1bmcgd2VnZW4gU3Ryb21hYnNjaGFsdHVuZyBhbSAxMy4xMC4gKFpvb2ssIDExLiBPa3QgMjAwNCwgMjM6MjA6MjcpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEwOTc1Mjc2MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3NTExMTA4Clpvb2sgZ2FlaG50IGhlcnpoYWZ0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFVudGVyYnJlY2h1bmcgd2VnZW4gU3Ryb21hYnNjaGFsdHVuZyBhbSAxMy4xMC4gKEJvaW5nLCAxMi4gT2t0IDIwMDQsIDExOjE0OjM3KToKfiMhIHJuPVpvb2sgcnQ9MTA5NzUyOTYyNyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTc1MTExMDgKSGloaSwgZGFzIGlzdCBpbW1lciB3aWVkZXIgd2l0emlnIHVuZCBzbyB2b3JhdXNzZWhiYXIsIGVpbm1hbCBpbSBKYWhyCmlzdCBTdHJvbWFic2NoYWx0dW5nIHVuZCBPcmt0b2V0ZXIgbWVsZGV0IHNpY2ggenUgV29ydCAuLi4gOykKQXVzc2VyZGVtIGlzdCBkaWUgQWJ3ZXJ0dW5nIGRlciBYUCB0b3RhbCBzY2hlaXNzZSEKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVW50ZXJicmVjaHVuZyB3ZWdlbiBTdHJvbWFic2NoYWx0dW5nIGFtIDEzLjEwLiAoUGFkcmVpYywgMTIuIE9rdCAyMDA0LCAxMTozMDoyNSk6Cn4jISBybj1ab29rIHJ0PTEwOTc1Mjk1OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3NTExMTA4CklQUy1EYXRlbnNlcnZpY2UgR21iSCB1bmQgSVBTLVByZXNzZXZlcnRyaWViIEdtYkguCgpXb2hlciBkYXMgSW50ZXJlc3NlPwoKUGFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVW50ZXJicmVjaHVuZyB3ZWdlbiBTdHJvbWFic2NoYWx0dW5nIGFtIDEzLjEwLiAoR2xvaW5zb24sIDEyLiBPa3QgMjAwNCwgMTI6MTc6MTYpOgp+IyEgcm49UGFkcmVpYyBydD0xMDk3NTczNDI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzUxMTEwOApJY2ggYnJhdWNoIGVpbmUgZ3V0ZSBVUFMuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogVW50ZXJicmVjaHVuZyB3ZWdlbiBTdHJvbWFic2NoYWx0dW5nIGFtIDEzLjEwLiAoTXVhZGliLCAxMi4gT2t0IDIwMDQsIDEzOjQzOjA3KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwOTc1NzYyMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3NTExMTA4Cm5pbW0gZG9jaCBkaWUgcG9zdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVW50ZXJicmVjaHVuZyB3ZWdlbiBTdHJvbWFic2NoYWx0dW5nIGFtIDEzLjEwLiAoQmFtYmksIDEyLiBPa3QgMjAwNCwgMTc6NTE6MTMpOgp+IyEgcm49Qm9pbmcgcnQ9MTA5NzU3MjQ3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTc1MTExMDgKRGllIFhQIHd1cmRlbiBhYmdld2VydGV0Pz8/RlJBR0VaRUlDSEVOPz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBVbnRlcmJyZWNodW5nIHdlZ2VuIFN0cm9tYWJzY2hhbHR1bmcgYW0gMTMuMTAuIChHbG9pbnNvbiwgMTIuIE9rdCAyMDA0LCAxNzo1NDo1OSk6Cn4jISBybj1CYW1iaSBydD0xMDk3NTk2MjczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzUxMTEwOApVbmQgZGVyIEFsdHNlaGVyYm9udXMgYXVmIEZQIGlzdCBhdWNoIHdlZy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogVW50ZXJicmVjaHVuZyB3ZWdlbiBTdHJvbWFic2NoYWx0dW5nIGFtIDEzLjEwLiAoQmFtYmksIDEyLiBPa3QgMjAwNCwgMTc6NTU6MjUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA5NzU5NjQ5OSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTc1MTExMDgKSnVja3QgbWljaCBuaWNodCBzb25kZXJsaWNoLiBWb24gZGVtIGhhdHRlIGljaCBuaWNodHMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEh1cmF4cHJheCwgMTIuIE9rdCAyMDA0LCAxOTozNDo1OCk6CltTZWhlcjpLZWxseUJ1bmR5XSBzb28gc2Fya29sYXMgdW5kIGNvIHB1dHQKW1NlaGVyOkNoYWdhbGxdIEdyYXRzCltTZWhlcjpLZWxseUJ1bmR5XSBkYW5rZQpbTW9lcmRlcjpHZWlzdCBWYWduYXJkc10gRGEgc29sbHRlbiB3aXIgbm9jaCBtYWwgZHJ1ZWJlciByZWRlbiwgWndpcmlvbiEKW1NlaGVyOktlbGx5QnVuZHldIHdlbm4gZXJzdCBlaW5lciB0b3QgaXN0IHN0ZWggaWNoIGRlbiByZXN0IGZhc3QgOikKW1RvZDpMYXJzXSBIYWVtaWd1cyBoYXQgZ2VyYWRlIEtlbGx5YnVuZHkgdW1nZWJyYWNodC4KW1RvZDpIYWVtaWd1c10gRHUgZHJhbmdzdCBiZWkgbWlyIGVpbiwgbmljaHQgdW5nZXN0cmFmdCwgenUgTGFycyBEZWluIEdlaXN0CltUb2Q6SGFlbWlndXNdIHd1cmRlIGdlc2NoYWZmdC4gQXVzIGRlaW5lbSBBcm0sIEJlaW4gdW5kIGRlbSBLb3BmLCBiYXUgaWNoIG5lbgpbVG9kOkhhZW1pZ3VzXSBHb2xlbSwgYXJtZXIgVHJvcGYsIGRlciByZWlzc3QgZGFubiBnbGVpY2ggRGVpbiBUZWFtIGluCltUb2Q6SGFlbWlndXNdIFN0dWVja2UsIGhhY2gsIHdhcyBiaW4gaWNoIHZvbGxlciBUdWVja2UuLi4KW0JlaWxlaWQ6TWFoYXJldF0gdG90Z2VzdGFuZGVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFudGlxdWFyaXNjaGUgQnVlY2hlciAoQmFtYnVsa28sIDEzLiBPa3QgMjAwNCwgMTE6NDg6NDQpOgp+IyEgcm49Wm9vayBydD0xMDk3NjYwNzA2IHJnPXd3dwp+IyEgdGlkPTEwOTc2NjA3MDYKSG1tLCBrZWluZSBndXRlIFdlYnVuZyBmdWVyIGRpZSBTZWl0ZS4gV2VubiBtYW4gV29jaGVuIGJyYXVjaHQgdW0gZG9ydCBlaW4KQnVjaCB6dSBmaW5kZW4gOi0pCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbnRpcXVhcmlzY2hlIEJ1ZWNoZXIgKFpvb2ssIDEzLiBPa3QgMjAwNCwgMTI6MDA6NTQpOgp+IyEgcm49QmFtYnVsa28gcnQ9MTA5NzY2MDkyNCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTc2NjA3MDYKSWNoIGhhYiBXb2NoZW4gZ2VicmF1Y2h0LCBiaXMgbWlyIGplbWFuZCBkaWUgU2VpdGUgZW1wZm9obGVuIGhhdC4gQW5kZXJlCkFuYmlldGVyIGFudGlxdWFyaXNjaGVyIEJ1ZWNoZXIgaGF0dGVuIGRhcyB2b24gbWlyIGdlc3VjaHRlIEJ1Y2ggbGVpZGVyCm5pY2h0LiA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFudGlxdWFyaXNjaGUgQnVlY2hlciAoR2xvaW5zb24sIDEzLiBPa3QgMjAwNCwgMTI6MjU6MjgpOgp+IyEgcm49Wm9vayBydD0xMDk3NjYxNjU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzY2MDcwNgpEdSBoYWV0dGVzdCBqYSBtYWwgZnJhZ2VuIGtvZW5uZW4uIEVpbiBCZXJsaW5lciBNdWRkZXIgaGF0IGRlbmVuIGZ1ZXIgZGFzClN5c3RlbSB6dWdlYXJiZWl0ZXQgdW5kIHZvbiBkYWhlciB3YXIgZXMgbWlyIGJla2FubnQgLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQW50aXF1YXJpc2NoZSBCdWVjaGVyIChDcm9mdCwgMTMuIE9rdCAyMDA0LCAxMjozMTozMSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDk3NjYzMTI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzY2MDcwNgpKZXR6dCB3byBpY2ggZGVuIExpbmsgc2VoZSwgZXJpbm5lciBpY2ggbWljaCBhdWNoIGRyYW4sIGRhcyBpY2ggZGVuIHNjaG9uCmlyZ2VuZHdvIGluIG1laW5lciBMaW5rc2FtbWx1bmcgaGFiZSAsLSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBbnRpcXVhcmlzY2hlIEJ1ZWNoZXIgKFpvb2ssIDEzLiBPa3QgMjAwNCwgMTI6NTY6NDkpOgp+IyEgcm49Q3JvZnQgcnQ9MTA5NzY2MzQ5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTc2NjA3MDYKSWNoIGhhYmUgbWFsIGdlZnJhZ3QuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQW50aXF1YXJpc2NoZSBCdWVjaGVyIChHbG9pbnNvbiwgMTMuIE9rdCAyMDA0LCAxMzoxMzoyNCk6Cn4jISBybj1ab29rIHJ0PTEwOTc2NjUwMDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3NjYwNzA2CkJlc3RpbW10IG5pY2h0IGluIE1lZ2FzY2htYXJybi4gT2RlciB1bmRldXRsaWNoLiBHYXIgaW4gZWluZW0gc2Nobm9lZGVuCkVpbnplaWxlcj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUb2Rlc3NwcnVjaCBkZXIgS2FlbXBmZXIgKE1haGFyZXQsIDEzLiBPa3QgMjAwNCwgMTM6NDc6MjYpOgpEZXIgSGF1cHR3ZWcgZnVlaHJ0IGR1cmNoIGRhcyBnYW56ZSBEb3JmLiBEdXJjaCBpaG4gd2VyZGVuIGRpZSBiZWlkZW4KRWluZ2FlbmdlIGRlcyBEb3JmZXMgbWl0ZWluYW5kZXIgdmVyYnVuZGVuLiBPYndvaGwgaGllciBudXIgTGVobWh1ZXR0ZW4genUKc2VoZW4gc2luZCwgc2NoZWludCBkaWUgU2llZGx1bmcgbWVociBhbHMgZWluIEVpbmdlYm9yZW5lbmRvcmYgenUgc2Vpbi4gCkVzIGdpYnQgdmllciBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KU2lyVGlnZXIgZGVyIE9iZXJmZWxka2FlbXBmZXIuCkR1IHNhZ3N0OiB0b3QKUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIFNpclRpZ2VyLgooMTM6NDYpIFNpcnRpZ2VyICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICAgISEhCgpNYWhhLCBTcGlvbiB1bmQgR2lmdG1pc2NoZXIgYUQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUb2Rlc3NwcnVjaCBkZXIgS2FlbXBmZXIgKENyb2Z0LCAxMy4gT2t0IDIwMDQsIDEzOjQ4OjAwKToKfiMhIHJuPU1haGFyZXQgcnQ9MTA5NzY2ODA0NiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTc2NjgwNDYKOndlZGVsdCBtaXQgc2VpbmVtIEthZW1wZmVyLUFid2VydGVuLUZhZWhuY2hlbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXVkbGliIHVuZCBHYW1lRHJpdmVyIChHcmltbWJvcm4sIDEzLiBPa3QgMjAwNCwgMjI6Mjc6MTYpOgp+IyEgcm49VmFuaW9uIHJ0PTEwOTc2OTgyNTMgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwOTc2OTgyNTMKeGV2YWwgdXB0aW1lKCkKUmVzdWx0OiAiMTUgU2VrdW5kZW4iCgpUamEsIHdvaGwgZG9jaCBub2NoIG5pY2h0IGdhbnogc28gc3RhYmlsLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTXVkbGliIHVuZCBHYW1lRHJpdmVyIChBbnRoZWEsIDEzLiBPa3QgMjAwNCwgMjI6NDE6MTQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEwOTc2OTkyMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3Njk4MjUzCkFiZXIgZGFmdWVyIHdhciBkYXMgTXVkIHZpZWwgc2NobmVsbGVyIHdpZWRlciBkYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE11ZGxpYiB1bmQgR2FtZURyaXZlciAoR2xvaW5zb24sIDEzLiBPa3QgMjAwNCwgMjI6NDE6NDApOgp+IyEgcm49QW50aGVhIHJ0PTEwOTc3MDAwNzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3Njk4MjUzCkphLCB1bmQgZXMgZmFlaHJ0IGpldHp0IGZsZXhpYmxlciBoZXJ1bnRlciBtaXQgZGVuIFBDUkUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEViZW5lbmhpc3RvcnkgKEdyaW1tYm9ybiwgMTQuIE9rdCAyMDA0LCAxMzoxNjo1OCk6Cn4jISBybj1Ob25uZSBydD0xMDk3NzUyMTgwIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTA5Nzc1MjE4MApBbHMgd29ya2Fyb3VuZCBlbXBmZWhsZSBpY2ggZGFzIEF1c3dlaWNoZW4gYXVmIGVpbmVuIHdlbmlnIGdlbnV0enRlbiBLYW5hbC4gSW0KWndlaWZlbHNmYWxsIGthbm4gbWFuIHNpY2ggYXVjaCBlaW5lbiBlaWdlbmVuIEthbmFsIGVyc2NoYWZmZW4sIGRlciBuaWNodCB2b24KYW5kZXJlbiBnZW51dHp0IHdpcmQuIERhcyByZWR1emllcnQgZGVuIHNjcm9sbCBiZWltIEF1ZnJ1ZmVuIGRlciBoaXN0b3J5Cmdld2FsdGlnLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEViZW5lbmhpc3RvcnkgKEFudGhlYSwgMTQuIE9rdCAyMDA0LCAxNDowMTo0OSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA5Nzc1MjYxOCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTc3NTIxODAKQW0gYmVzdGVuIHdvaGwgZnVlciBqZWRlbiBlaW5lbiBlaWdlbmVuIEthbmFsLCB3YXM/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFYmVuZW5oaXN0b3J5IChab29rLCAxNC4gT2t0IDIwMDQsIDIwOjEwOjE0KToKfiMhIHJuPUFudGhlYSBydD0xMDk3NzU1MzA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5Nzc1MjE4MApJY2gga2FubiBiZXN0YWV0aWdlbiwgZGFzcyBpY2ggbWl0IGRlciAtZ29ldHRlciAtIEhpc3Rvcnkgd2VuaWcgUHJvYmxlbWUKaGFiZS4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmVib290IG5pY2h0IGF1c2dlc2NobG9zc2VuIC4uLiAoR3JpbW1ib3JuLCAxNC4gT2t0IDIwMDQsIDIyOjM3OjEyKToKfiMhIHJuPVZhbmlvbiBydD0xMDk3Nzc3ODEzIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDk3Nzc3ODEzCkp1bmdzLCBpaHIgbWFjaHQgZGFzIGZhbHNjaC4gSWhyIHNvbGx0ZXQgZGVuIHN0YWJpbGVuIGRyaXZlciBzdGFydGVuLCBuaWNodCBhbgppaG0gcnVtc3BpZWxlbi4gSWhyIHJpc2tpZXJ0IGRvY2ggbnVyLCBkYXNzIGlociBkZW4gc3RhYmlsZW4gYXVjaCBub2NoIGthcHV0dAptYWNodC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IENyYXNoIChDYXR3ZWF6bGUsIDE1LiBPa3QgMjAwNCwgMDc6NTU6NTIpOgp+IyEgcm49VmFuaW9uIHJ0PTEwOTc4MTUzNDMgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwOTc4MTUzNDMKQWNoIHNjaHdhZXR6IGRvY2ggbmljaHQuCgpJbiBzcGFldGVzdGVucyAxNTAgVGFnZW4gZmFlbGx0IGRpciBfaXJnZW5kd2FzXyBlaW4sIHdhcyBfdW5iZWRpbmd0XyBpbSBEcml2ZXIKbmV1IGdlbWFjaHQgd2VyZGVuIG11c3MgOi0pCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNjaGxlY2h0ZSBJZGxlc2NyaXB0ZSAoTW9yZ290aCwgMTUuIE9rdCAyMDA0LCAxNDo0MToyMyk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMDk3ODQzOTU5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTA5NzgwNzg2NwpOZWUsIGRhcyBpc3Qga3VzY2hlbG4uCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERvd24gVW5kZXIgKEdsb2luc29uLCAxNS4gT2t0IDIwMDQsIDE1OjM5OjI4KToKfiMhIHJuPUFyayBydD0xMDk3ODQ3NTM2IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xMDk3ODQ3NTM2ClVuZCB3ZXIgemllaHQgZGFubiB1ZWJlciBHYWJ5bG9uIGhlcj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERvd24gVW5kZXIgKEFyaywgMTUuIE9rdCAyMDA0LCAxNTo0Mjo0Mik6Cn4jISBybj1HbG9pbnNvbiBydD0xMDk3ODQ3NTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5Nzg0NzUzNgpGcmFnIGlobiwgZXIgaXN0IHNpY2hlciBiZXJlaXQsIGRlbiBQYXJ0IHp1IHVlYmVybmVobWVuIDstKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERvd24gVW5kZXIgKE1haGFyZXQsIDE1LiBPa3QgMjAwNCwgMTU6NDM6NDApOgp+IyEgcm49QXJrIHJ0PTEwOTc4NDc3NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3ODQ3NTM2CkVzIHdpcmQgc2ljaCBkb2NoIGplbWFuZCBmaW5kZW4sIGRlciB1ZWJlciBHYWJ5bG9uIGxhZXN0ZXJ0IC4uLgoKTWFoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRG93biBVbmRlciAoTGlhcmEsIDE1LiBPa3QgMjAwNCwgMTU6NDQ6MDApOgp+IyEgcm49TWFoYXJldCBydD0xMDk3ODQ3ODIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5Nzg0NzUzNgpLZW5udCBlaWdlbnRsaWNoIG5vY2ggamVtYW5kIEdhYmlsb24/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEb3duIFVuZGVyIChHbG9pbnNvbiwgMTUuIE9rdCAyMDA0LCAxNTo0NTowNCk6Cn4jISBybj1MaWFyYSBydD0xMDk3ODQ3ODQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5Nzg0NzUzNgpEZW4ga2FubnRlIGljaCBuaWUuIEthbm5zdCBkdSBub2NobWFsIGRlbiBUZWlsIG1pdCBkZW4gc2NobGVjaHRlbiBRdWVzdGVuCnVlYmVyIEdhYnlsb24gaGllciBoaW5laW5sYWVzdGVybiwgQXJrLCBkYW1pdCB3aXIgZXMgbmljaHQgc28gc2Nod2VyIGhhYmVuCmVpbmVuIEF1ZmhhZW5nZXIgenUgZmluZGVuPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IERvd24gVW5kZXIgKExpYXJhLCAxNS4gT2t0IDIwMDQsIDE1OjQ1OjQyKToKfiMhIHJuPUdsb2luc29uIHJ0PTEwOTc4NDc5MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3ODQ3NTM2CkhtLCByZWljaHQgZXMsIHdlbm4gaWNoIHNhZ2UsIGRhc3MgaWNoIGRlc3dlZ2VuIG1pdCBkZW0gYWt0aXZlbiBTcGllbGVuCmF1ZmdlaG9lcnQgaGFiPyA6PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRG93biBVbmRlciAoTGlhcmEsIDE1LiBPa3QgMjAwNCwgMTU6NDY6MTgpOgp+IyEgcm49TGlhcmEgcnQ9MTA5Nzg0Nzk0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTc4NDc1MzYKVWVicmlnZW5zLCB1bSB3YXMgZ2VodCBlcyBlaWdlbnRsaWNoPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRG93biBVbmRlciAoR2xvaW5zb24sIDE1LiBPa3QgMjAwNCwgMTU6NDY6MzYpOgp+IyEgcm49TGlhcmEgcnQ9MTA5Nzg0Nzk0MiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTc4NDc1MzYKV2VnZW4gQXJrPyBPZGVyIEdhYnlsb24/IE9kZXIgR2FiaWxvbj8gV2llIGpldHp0IG51PyBXYXIgZWluZXIgdm9uIGRlbmUgYXVjaAplaW4gcGFzc2llcnRlciwgcGFzc2lvbmllcnRlciBNYW5uPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IERvd24gVW5kZXIgKEFyaywgMTUuIE9rdCAyMDA0LCAxNTo0Nzo1OCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDk3ODQ3OTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5Nzg0NzUzNgpKYTogaWNoIGJlc2Nod2VydGUgbWljaCB1ZWJlciBkaWUgc2NobGVjaHRlICJCZXNjaHdlcmRla3VsdHVyIiBiZWkgZGVuClNwaWVsZXJuLiBXZW5pZyBiaXMga2VpbmUgc2FjaGxpY2hlbiBNYWlscywgc29uZGVybiBsaWViZXIgR2VzY2hyZWkgaW4gZGVyCk1QQS4gQWxzbyBuaXggTmV1ZXMgOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRG93biBVbmRlciAoTGlhcmEsIDE1LiBPa3QgMjAwNCwgMTU6NDg6NTYpOgp+IyEgcm49QXJrIHJ0PTEwOTc4NDgwNzggcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3ODQ3NTM2ClVucyBpc3QgbGFuZ3dlaWxpZywgd2VpbCBkdSBuaXggTmV1ZXMgbWVociBhbnNjaGxpZXNzdC4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IERvd24gVW5kZXIgKEFyaywgMTUuIE9rdCAyMDA0LCAxNTo0OTowNCk6Cn4jISBybj1BcmsgcnQ9MTA5Nzg0ODA3OCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTc4NDc1MzYKVW5kIHdpZXNvIGlzdCBkYXMgbnUgZWluIFJlcGx5IGF1ZiBtZWluZW4gVXJsYXVic2FudHJhZyBpbm5lciBhbmRlcmVuIFJ1YnJpaz8KKmdydWViZWwqCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRG93biBVbmRlciAoR2xvaW5zb24sIDE1LiBPa3QgMjAwNCwgMTU6NDk6MjApOgp+IyEgcm49TGlhcmEgcnQ9MTA5Nzg0ODEzNiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTc4NDc1MzYKQmVzY2h3ZXJkZWt1bHR1cj8gU2llIG1lbGRlbiBuaWNodCBtYWwgRmVhdHVyZXMgdW5kIHNvbGxlbiBkaWUgWmVpdCBmdWVyIGVpbmUKQmVzY2h3ZXJkZSBhdWZicmluZ2VuPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IERvd24gVW5kZXIgKEFyaywgMTUuIE9rdCAyMDA0LCAxNTo1MDoyMCk6Cn4jISBybj1MaWFyYSBydD0xMDk3ODQ4MTM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5Nzg0NzUzNgpIYSwgendlaSBMdWVnZW4gaW4gZWluZW0gU2F0ejogR2VsYW5nd2VpbHRlIHNpbmQgbmljaHQgbGVybnJlc2lzdGVudCB1bmQKaG9lcmVuIGF1Zi4gSWNoIHNjaGxpZXNzZSBkdXJjaGF1cyBOZXVlcyBhbiwgZGEgbGllZ3QgamEgZWluaWdlcyBub2NoIGF1ZiBkZXIKVG9kbyBMaXN0ZSA6LT0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRG93biBVbmRlciAoTW9udGFudXMsIDE1LiBPa3QgMjAwNCwgMTU6NTA6NDgpOgp+IyEgcm49QXJrIHJ0PTEwOTc4NDgyMjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3ODQ3NTM2CkRhcyBoZWlzc3QgVG9kZXMtTGlzdGUsIGxpZWJlcyBBcmssIG5pY2h0IFRvRG8tTGlzdGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRG93biBVbmRlciAoR2xvaW5zb24sIDE1LiBPa3QgMjAwNCwgMTU6NTE6NTIpOgp+IyEgcm49TW9udGFudXMgcnQ9MTA5Nzg0ODI0OCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTc4NDc1MzYKTmVpbiwgYmVpbSBncm9zc2VuIHVuZCBlcndhY2hzZW5lbiBBcmsgaGVpc3N0IGRhcyBUb2RkbGVycyBsaXN0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVtYW56aXBhdGlvbj8gOykgKExpYXJhLCAxNS4gT2t0IDIwMDQsIDE1OjU3OjM5KToKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGthZW1wZmVyIC4uLiBzaW5kIGFsbGUgdG90YWwgemVycnVldHRldCA6KSkpCkRlaW5lIEZyZXVuZGluIE1haGFyZXQgdGVpbHQgRGlyIG1pdDogSmEsIGljaCBiaW4gYXVjaCBlaW5lIHZvZWxsaWcgemVyc3RvZXJ0ZQpEZWluZSBGcmV1bmRpbiBNYWhhcmV0IHRlaWx0IERpciBtaXQ6IFNlZWxlLgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogbmVlIGR1IGJpc3Qgd2VpYmxpY2ggZGFzIG1hY2h0IGRpciBhbGxlcyBuaXgKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGF1cyA6KQpEZWluZSBGcmV1bmRpbiBNYWhhcmV0IHRlaWx0IERpciBtaXQ6IFN0aW1tdCwgYWxzIFdlaWIgYmluIGljaCBqYSBlaCBzZWVsZW5sb3MKRGVpbmUgRnJldW5kaW4gTWFoYXJldCB0ZWlsdCBEaXIgbWl0OiA7KQpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogd2lyIG11ZXNzZW4gamEgYXVjaCB1bnNlcmUgaG9ybW9uZSBhdXNoYWx0ZW4gZGEKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IHR1dCB1bnMgZGFzIGxlYmVuIGVoIG5peCBtZWhyCkRlaW4gRnJldW5kIE1vcmdvdGggdGVpbHQgRGlyIG1pdDogaGF1cHRzYWNoZSB0aXR0ZW4KRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IGhlaXNzdCBlcyBuaWNodCwgbWl0IGlobmVuIF9oX2F1c2hhbHRlbj8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFbWFuemlwYXRpb24/IDspIChNb250YW51cywgMTUuIE9rdCAyMDA0LCAxNjowMDowMyk6Cn4jISBybj1MaWFyYSBydD0xMDk3ODQ4NjU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5Nzg0ODY1OQpFcyBnaWJ0IGtlaW5lIEZyYXVlbiBpbSBNdWQuIEF1Y2ggd2VubiBpaHIgc28gdHV0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERvd24gVW5kZXIgKE9ya3RvZXRlciwgMTUuIE9rdCAyMDA0LCAxNjo1MjoxNik6Cn4jISBybj1BcmsgcnQ9MTA5Nzg0NzUzNiByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTA5Nzg0NzUzNgpIb3BlIHlvdSB3aWxsIG9ubHkgbWVldCB0aGUgInNvbWUgb2YgdGhlIHNoZWVwIiEKCkhhdmUgZnVuLCBPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NobGF1ZXIgQnJ1bm8gKFpvb2ssIDE1LiBPa3QgMjAwNCwgMjE6MTc6NTYpOgpNdWFkaWIgcnVmdDogTVkgR09PRE5FU1MgSVRTIEEgWk9PSyEKR2xvaW5zb24gcnVmdDogRkxJRUhULCBJSFIgTkFSUkVOIQpEdSBydWZzdDogVFNDSFVLISBUU0NIVUshIFRTQ0hVSyEKW0JpZXJzY2h1ZXR0bGVyOkJydW5vXSBKb2YgaGF0IGdlcmFkZSBiZXNjaGxvc3NlbiwgZGVuIFJlY2huZXIgaW4gendlaSBNaW51dGVuCltCaWVyc2NodWV0dGxlcjpCcnVub10gcnVudGVyenVmYWhyZW4uIAoKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgbWFsIGFuZGVycyAoTW9yZ290aCwgMTcuIE9rdCAyMDA0LCAwMDo1MToyOSk6CltTZWhlcjpQaXRmYWxsXSBvaywgUklQCltUb2Q6TGFyc10gRWluIFdhZWNodGVyIGhhdCBnZXJhZGUgTmFucGl0Y2ggdW1nZWJyYWNodC4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpyZWltZSAoUGl0ZmFsbCwgMTcuIE9rdCAyMDA0LCAwMTo0MzoyMCk6CltBbGxnZW1laW46QXJrXSBMYXJzbWFubiwgbGllYmVyIExhcnNtYW5uLCBlcyBpc3Qgbm9jaCBuaWNodCBzb3dlaXQhIFdpcgpbQWxsZ2VtZWluOkFya10gc2VuZGVuIGVyc3QgZGVuIGxldHp0ZW4gR3J1c3MsIGVoIGplZGVyIFNwaWVsZXIgaW4gZGllIEhvZWxsZQpbQWxsZ2VtZWluOkFya10gbXVzcywgRHUgaGFzdCBnZXdpc3Mgbm9jaCBaZWl0LiBTcGllbGVyLCBsaWViZSBTcGllbGVyLCBkYXMKW0FsbGdlbWVpbjpBcmtdIGhhdCBtaXIgU3Bhc3MgZ2VtYWNodC4gTnVuIHNjaG5lbGwgaW5zIEdyYWIgdW5kIHNjaGxhZnQgcmVjaHQKW0FsbGdlbWVpbjpBcmtdIHNjaG9lbi4gRGFubiBkYXJmIGljaCBhdWNoIHp1ciBSdWhlIGdlaG4uIEljaCB3dWVuc2NoIGV1Y2gKW0FsbGdlbWVpbjpBcmtdIGd1dGUgTmFjaHQuClNjaGxpZXNzbGljaCBtZWludCBkZXIgVG9kIHZvbGxlciBXYWVybWU6IERVIEhBU1QgU0NIT04gWlVWSUVMIERVUkNITUFDSEVOCk1VRVNTRU4uIERFU0hBTEIgV0lMTCBJQ0ggTUlDSCBHTkFFRElHIEVSV0VJU0VOIFVORCBESVIgTk9DSCBFSU5FIENIQU5DRQpHRUJFTiwgR0xFSUNIIEVJTkVOIFNDSE5FTExFUkVOIFRPRCBaVSBEVVJDSExFQkVOLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmF0aW9uIFN0YXRlcyAoRGVlcGJsdWUsIDE4LiBPa3QgMjAwNCwgMTA6Mzk6MjUpOgp+IyEgb249RGVlcGJsdWUgb3Q9MTA5ODA4ODc1NyBvZz13d3cKfiMhIHJuPUNlaWxvIHJ0PTEwOTgwNDM5MDQgcmc9d3d3Cn4jISB0aWQ9MTA5ODAzMzQ3MAprZWluIEtyaWVnPyBMYW5nd2VpbGlnLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOYXRpb24gU3RhdGVzIChPcmt0b2V0ZXIsIDE4LiBPa3QgMjAwNCwgMTk6MzM6NDApOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTA5ODA4ODc2NSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTgwMzM0NzAKIktyaWVnIiBpc3Qgc28gZWluIGJvZXNlcyBXb3J0Li4gZGFzIGhlaXN0IGRvY2ggamV0enQgInByYWV2ZW50aXZlClRlcnJvcmlzdGVuYmVrYWVtcGZ1bmciCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHRvbGxlcyBvbmxpbmUgZ2FtZSAoWm9vaywgMjAuIE9rdCAyMDA0LCAxNzoyMzo0OSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA5ODI4NTY5MSByZz13d3cKfiMhIHRpZD0xMDk4Mjg1NjkxCkhhc3QgRHUgTGFuZ2V3ZWlsZT8gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHRvbGxlcyBvbmxpbmUgZ2FtZSAoTXVhZGliLCAyMC4gT2t0IDIwMDQsIDE3OjI0OjI1KToKfiMhIHJuPVpvb2sgcnQ9MTA5ODI4NTgyOSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTgyODU2OTEKbm9lCndpZXNvPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGdlc3VuZGhlaXRzcmlzaWtlbiBiZWltIHNub29rZXIgKFpvb2ssIDIwLiBPa3QgMjAwNCwgMTc6MzA6NTIpOgp+IyEgcm49TXVhZGliIHJ0PTEwOTgyODYxNjggcmc9d3d3Cn4jISB0aWQ9MTA5ODI4NjE2OApudXIgc28uCgp6b29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBnZXN1bmRoZWl0c3Jpc2lrZW4gYmVpbSBzbm9va2VyIChNdWFkaWIsIDIwLiBPa3QgMjAwNCwgMTc6MzU6NDYpOgp+IyEgcm49Wm9vayBydD0xMDk4Mjg2MjUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5ODI4NjE2OAphaCB3YXIgenUga3Vyej8KCm9rCm51ciBmdWVyIGRpY2gKaHR0cDovL3d3dy5raXJ1bi5jby51ay93ZWIvbWFrZWFsb25nZXJsaW5rL2dvdG90aGVsaW5rdGhhdGlzbG9uZ2VyLnBocD9saW5rPTEwCjQsMTE2LDExNiwxMTIsNTgsNDcsNDcsMTE5LDExOSwxMTksNDYsMTA3LDEwNSwxMTQsMTE3LDExMCw0Niw5OSwxMTEsNDYsMTE3LDEwNwosNDcsMTE5LDEwMSw5OCw0NywxMDksOTcsMTA3LDEwMSw5NywxMDgsMTExLDExMCwxMDMsMTAxLDExNCwxMDgsMTA1LDExMCwxMDcsNDcKLDEwMywxMTEsMTE2LDExMSwxMTYsMTA0LDEwMSwxMDgsMTA1LDExMCwxMDcsMTE2LDEwNCw5NywxMTYsMTA1LDExNSwxMDgsMTExLDExCjAsMTAzLDEwMSwxMTQsNDYsMTEyLDEwNCwxMTIsNjMsMTA4LDEwNSwxMTAsMTA3LDYxLDQ5LDQ4LDUyLDQ0LDQ5LDQ5LDU0LDQ0LDQ5LAo0OSw1NCw0NCw0OSw0OSw1MCw0NCw1Myw1Niw0NCw1Miw1NSw0NCw1Miw1NSw0NCw0OSw0OSw1Nyw0NCw0OSw0OSw1Nyw0NCw0OSw0OSwKNTcsNDQsNTIsNTQsNDQsNDksNDgsNTUsNDQsNDksNDgsNTMsNDQsNDksNDksNTIsNDQsNDksNDksNTUsNDQsNDksNDksNDgsNDQsNTIsCjU0LDQ0LDU3LDU3LDQ0LDQ5LDQ5LDQ5LDQ0LDUyLDU0LDQ0LDQ5LDQ5LDU1LDQ0LDQ5LDQ4LDU1LDQ0LDUyLDU1LDQ0LDQ5LDQ5LDU3LAo0NCw0OSw0OCw0OSw0NCw1Nyw1Niw0NCw1Miw1NSw0NCw0OSw0OCw1Nyw0NCw1Nyw1NSw0NCw0OSw0OCw1NSw0NCw0OSw0OCw0OSw0NCwKNTcsNTUsNDQsNDksNDgsNTYsNDQsNDksNDksNDksNDQsNDksNDksNDgsNDQsNDksNDgsNTEsNDQsNDksNDgsNDksNDQsNDksNDksNTIsCjQ0LDQ5LDQ4LDU2LDQ0LDQ5LDQ4LDUzLDQ0LDQ5LDQ5LDQ4LDQ0LDQ5LDQ4LDU1LDQ0LDUyLDU1LDQ0LDQ5LDQ4LDUxLDQ0LDQ5LDQ5LAo0OSw0NCw0OSw0OSw1NCw0NCw0OSw0OSw0OSw0NCw0OSw0OSw1NCw0NCw0OSw0OCw1Miw0NCw0OSw0OCw0OSw0NCw0OSw0OCw1Niw0NCwKNDksNDgsNTMsNDQsNDksNDksNDgsNDQsNDksNDgsNTUsNDQsNDksNDksNTQsNDQsNDksNDgsNTIsNDQsNTcsNTUsNDQsNDksNDksNTQsCjQ0LDQ5LDQ4LDUzLDQ0LDQ5LDQ5LDUzLDQ0LDQ5LDQ4LDU2LDQ0LDQ5LDQ5LDQ5LDQ0LDQ5LDQ5LDQ4LDQ0LDQ5LDQ4LDUxLDQ0LDQ5LAo0OCw0OSw0NCw0OSw0OSw1Miw0NCw1Miw1NCw0NCw0OSw0OSw1MCw0NCw0OSw0OCw1Miw0NCw0OSw0OSw1MCw0NCw1NCw1MSw0NCw0OSwKNDgsNTYsNDQsNDksNDgsNTMsNDQsNDksNDksNDgsNDQsNDksNDgsNTUsNDQsNTQsNDksNDQsNTIsNTcsNDQsNTIsNTYsNDQsNTMsNTAsCjQ0LDUyLDUyLDQ0LDUyLDU3LDQ0LDUyLDU3LDQ0LDUzLDUyLDQ0LDUyLDUyLDQ0LDUyLDU3LDQ0LDUyLDU3LDQ0LDUzLDUyLDQ0LDUyLAo1Miw0NCw1Miw1Nyw0NCw1Miw1Nyw0NCw1Myw0OCw0NCw1Miw1Miw0NCw1Myw1MSw0NCw1Myw1NCw0NCw1Miw1Miw0NCw1Myw1MCw0NCwKNTMsNTMsNDQsNTIsNTIsNDQsNTMsNTAsNDQsNTMsNTMsNDQsNTIsNTIsNDQsNTIsNTcsNDQsNTIsNTYsNDQsNTMsNTUsNDQsNTIsNTIsCjQ0LDUyLDU3LDQ0LDUyLDU2LDQ0LDUzLDQ5LDQ0LDUyLDUyLDQ0LDUzLDUwLDQ0LDUzLDUyLDQ0LDUyLDUyLDQ0LDUyLDU3LDQ0LDUyLAo1Niw0NCw1Myw1NSw0NCw1Miw1Miw0NCw1Miw1Nyw0NCw1Miw1Nyw0NCw1Myw1Myw0NCw1Miw1Miw0NCw1Miw1Nyw0NCw1Miw1Niw0NCwKNTIsNTYsNDQsNTIsNTIsNDQsNTMsNTAsNDQsNTMsNTIsNDQsNTIsNTIsNDQsNTIsNTcsNDQsNTIsNTYsNDQsNTIsNTYsNDQsNTIsNTIsCjQ0LDUyLDU3LDQ0LDUyLDU2LDQ0LDUyLDU3CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZXN0ZXJuIGF1ZiBkZXIgSG9jaGViZW5lIChOZWRpbWUsIDIyLiBPa3QgMjAwNCwgMDk6MDQ6MzgpOgpiaWV0ZSBuZWRpbWUgZmVpbmRzY2hhZnQgYW4KRHUgYmlzdCBqZXR6dCBGZWluZGluIHZvbiBOZWRpbWUuCgpIZXV0ZSBiZWltIEVpbmxvZ2dlbjoKSXJnZW5kZXR3YXMgaXN0IG1pdCBEZWluZXIgRmVpbmRzY2hhZnQgenUgTmVkaW1lIGdlc2NoZWhlbi4KS2VpbiBXdW5kZXIgYmVpIGRlbSBEZXBwZW4uCgpBaGphLiBOZWRpbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBrb21tdCBkYXZvbi4uLiAoTW9yZ290aCwgMjMuIE9rdCAyMDA0LCAxMzo1NzowNCk6Clhlcnh5cyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpYZXJ4eXMga251ZGRlbHQgRGljaCBtaXQgbGVpY2h0ZXIgdmVyc3BhZXR1bmcgYXVzIGRlciBGZXJuZS4KW1RvZDpMYXJzXSBJZ29yIGhhdCBnZXJhZGUgWGVyeHlzIHVtZ2VicmFjaHQuCgpNKiB3aWxsIHNvZm9ydCBnZWtudWRkZWx0IHdlcmRlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhcyBrb21tdCBkYXZvbi4uLiAoRGFya2xvciwgMjMuIE9rdCAyMDA0LCAxNDo1NzozOSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTEwOTg1MzI2MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk4NTMyNjI0CldhcnN0ZSBhbHMgSWdlbCBvZGVyIHNvbnN0aWdlcyBTdGFjaGVsdGllciB1bnRlcndlZ3MgZ2V3ZXNlbj8KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKE1vcmdvdGgsIDI1LiBPa3QgMjAwNCwgMTI6NTY6MjYpOgp+IyEgcm49Qm9pbmcgcnQ9MTA5ODcwMTUzNiByZz1wYXJ0eS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA5NzM0NzA0NApBZWgsIGdpYnRzIGRhbm4gZGEgYXVjaCBpcmdlbmRlaW5lIEVja2UgaW4gZGllIGljaCBtaWNoIHZlcmtyaWVjaGVuIGthbm4gdW0KZGFzIG5pY2h0IG1pdCBhbnNlaGVuIHp1IG11ZXNzZW4/CgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTUctUGFydHkgWFhWSUk6IDMuIEV2ZW50cyAoRGVlcGJsdWUsIDI1LiBPa3QgMjAwNCwgMTM6MDA6MDgpOgp+IyEgcm49TW9yZ290aCBydD0xMDk4NzAxNzg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzM0NzA0NAp5b3VyIGhvbWUvY2FyIGlzIHlvdXIgY2FzdGxlLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNRy1QYXJ0eSBYWFZJSTogMy4gRXZlbnRzIChNYWhhcmV0LCAyNS4gT2t0IDIwMDQsIDEzOjAzOjQwKToKfiMhIHJuPURlZXBibHVlIHJ0PTEwOTg3MDIwMDggcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MzQ3MDQ0Ck5laW4sIE1vcmdvdGggd2lyZCBkb3J0IGFuIGRpZSBTYWV1bGUgZ2VidW5kZW4sIGRhbWl0IGlobSBhdWNoIGphIGdhciBuaWNodHMKZW50Z2VodC4gVW5kIGRpZSBNdXNpayB3aXJkIGV4dHJhbGF1dCBnZXNwaWVsdCwgZGlyZWt0IGluIHNlaW5lIE9ocmVuLiAgV2lyCnNpbmQgc2NobGllc3NsaWNoIG5pY2h0IHp1bSBTcGFzcyBkYSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKE1vcmdvdGgsIDI1LiBPa3QgMjAwNCwgMTM6MDY6NDQpOgp+IyEgcm49TWFoYXJldCBydD0xMDk4NzAyMjIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzM0NzA0NApPaywgZGFubiBibGVpYiBpY2ggenUgaGF1c2UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKE1haGFyZXQsIDI1LiBPa3QgMjAwNCwgMTM6MjE6NDMpOgp+IyEgcm49Qm9pbmcgcnQ9MTA5ODcwMzEwOCByZz1wYXJ0eS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTA5NzM0NzA0NApEYXMgaXN0IGx1c3RpZy4gQWJlciBrb2VubnRlIG1hbiBuaWNodCAtIG51ciBkZXIgVmllbGZhbHQgd2VnZW4gLSBhdWNoIGVpbgpwYWFyIGFuZGVyZSBSdWJyaWtlbiBkYXp3aXNjaGVuc2NoaWViZW4/CgpNYWhhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNRy1QYXJ0eSBYWFZJSTogMy4gRXZlbnRzIChBbnRoZWEsIDI1LiBPa3QgMjAwNCwgMTM6MjI6NDMpOgp+IyEgcm49TWFoYXJldCBydD0xMDk4NzAzMzAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzM0NzA0NApEdSBtZWluc3QsIGVpbiBiaXNzY2hlbiBEaXNrdXNzaW9uLCBvZGVyIHNvZ2FyIGlyZ2VuZHdlbGNoZSBzcGV6aWVsbGVuClJlZ2lvbnNzYWNoZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNRy1QYXJ0eSBYWFZJSTogMy4gRXZlbnRzIChCb2luZywgMjUuIE9rdCAyMDA0LCAxMzoyMzo0NSk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwOTg3MDMzMDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MzQ3MDQ0CkljaCBob2ZmZSBlciBibGVpYnQgamV0enQgZW5kbGljaCBtYWwgZGEgbGllZ2VuIHdvIGVyIGhpbmdlaG9lcnQuCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKERhcmtsb3IsIDI1LiBPa3QgMjAwNCwgMTM6MjU6NDEpOgp+IyEgcm49Qm9pbmcgcnQ9MTA5ODcwMzQyNSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTczNDcwNDQKS2xhZXIgZGFzIG1pdCBkZW0gVmVyYW50d29ydGxpY2hlbi4uLiAKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKEdyaW1tYm9ybiwgMjUuIE9rdCAyMDA0LCAxMzoyODozNSk6Cn4jISBybj1EYXJrbG9yIHJ0PTEwOTg3MDM1NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MzQ3MDQ0CkVzIGlzdCBrZWluZSBCZWthbm50bWFjaHVuZywgZGFzcywgd28gdW5kIHdpZSBlaW5lIFBhcnR5IHN0YXR0ZmluZGV0LCBzb25kZXJuCmxldHp0bGljaCBlaW5lIERpc2t1c3Npb24gdWViZXIgRGV0YWlscy4gRXJzdCByZWNodCBkaWUgYWxsZ2VtZWluCmhvY2hpbnRlcmVzc2FudGUgRGlza3Vzc2lvbiwgb2IgdW5kIHdlbGNoZXIgRnVjaHN0cml0dCBkZW5uIG51bgp0dXJuaWVydGF1Z2xpY2ggc2VpLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKENhdHdlYXpsZSwgMjUuIE9rdCAyMDA0LCAxMzozMjowNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTA5ODcwMzcxNSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTczNDcwNDQKRnJhZ2VuIHdpciBkb2NoIGVpbmZhY2ggTWFoYXJldCwgd28gc2llIGlocmUobikgQXJ0aWtlbCBnZXJuZSBoaW5oYWJlbiBtb2VjaHRlCjotKQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBNRy1QYXJ0eSBYWFZJSTogMy4gRXZlbnRzIChNYWhhcmV0LCAyNS4gT2t0IDIwMDQsIDEzOjMzOjI3KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMDk4NzAzOTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzM0NzA0NApEYXMgd2FlciBqYSBnYW56IG5ldSwgZGFzcyBkaWUgQW5zaWNodCBkZXMgU2NocmVpYmVycyBkYWJlaSBlaW5lIFJvbGxlIHNwaWVsdC4KSWNoIGdsYXViIG5pY2h0LCBkYXNzIEdyaW1tYm9ybiBkYXJhdWYgd2FzIGdpYnQuICA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTUctUGFydHkgWFhWSUk6IDMuIEV2ZW50cyAoTW9yZ290aCwgMjUuIE9rdCAyMDA0LCAxMzozMzo0OSk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwOTg3MDQwMDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MzQ3MDQ0CkRhcmYgaWNoIGlobiBsb2VzY2hlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKEJvaW5nLCAyNS4gT2t0IDIwMDQsIDEzOjMzOjU5KToKfiMhIHJuPU1haGFyZXQgcnQ9MTA5ODcwNDAwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTczNDcwNDQKTWlyIGlzdCBlcyBqZXR6dCBlZ2FsLCBpY2ggdmVybGVnIGlobiBuaWNodCBub2NobWFsLCBhdWNoIHdlbm4gZXIgYW0gZW5kZQppbiBtdWVsbCBsaWVndC4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKE1haGFyZXQsIDI1LiBPa3QgMjAwNCwgMTM6MzU6MTEpOgp+IyEgcm49Qm9pbmcgcnQ9MTA5ODcwNDAzOSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTczNDcwNDQKV2VuIHdpbGwgTW9yZ290aCBsb2VzY2hlbj8gR3JpbW1ib3JuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKERhcmtsb3IsIDI1LiBPa3QgMjAwNCwgMTM6Mzg6MTkpOgp+IyEgcm49TWFoYXJldCBydD0xMDk4NzA0MTExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzM0NzA0NApTbyBob2VydGUgZXMgc2ljaCBhbi4uLgoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKEdyaW1tYm9ybiwgMjUuIE9rdCAyMDA0LCAxMzozOTowMyk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwOTg3MDQxMTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MzQ3MDQ0Ck5laW4sIE1vcmdvdGggbG9lc2NodCB0cmFkaXRpb25lbGwgbnVyIHNpY2ggc2VsYmVyLiBVbmQgZGllIHZvcmdlYmxpY2hlCkFic2ljaHQgZGVzIEF1dG9ycyBzcGllbHQga2VpbmUgUm9sbGUsIG5laW4uIE9kZXIgaXN0IGRhcyBldHdhIGVpbiBHcnVuZCBmdWVyCkZyZWlzcHJ1Y2gsIHdlbm4gZGVyIEFuZ2VrbGFndGUgc2FndCAiSG9lbW1hLCBpY2ggd29sbHRlIGRpZSBPbW1hIGFiZXIgbWl0CnZvbGxlciBBYnNpY2h0IHVtbGVnZW4sIGljaCBoYWIgc2NobGllc3NsaWNoIGRhcyBHZWxkIGdlYnJhdWNodCEiPwpEZXIgU2lubiBkaWVzZXIgZ2FuemVuIC5iZWthbm50bWFjaHVuZyBSdWJyaWtlbiBpc3QsIGRhc3Mgc2llIGxvdyB0cmFmZmljClJ1YnJpa2VuIHNlaW4gc29sbGVuLCBkaWUgYXVjaCBnZWxlZ2VudGxpY2ggZWluZ2Vsb2dndGVuIFNwaWVsZXJuCnVlYmVyc2ljaHRsaWNoIHplaWdlbiwgd2FzIGdlcmFkZSBsYWV1ZnQuIFVuZCBEaXNrdXNzaW9uZW4sIERldGFpbHMgZXRjLiBoYXQKZGFoZXIgZG9ydCBuaWNodHMgenUgc3VjaGVuLiBEYWZ1ZXIgc2luZCBkaWUgUnVicmlrZW4gb2huZSBkYXMgLmJla2FubnRtYWNodW5nCmRhLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTdGFtbXRpc2NoZSBLYXJsc3J1aGUgMjguMTAuIC0gMTguMTEuIChDcm9mdCwgMjUuIE9rdCAyMDA0LCAxNjo1NDo1Mik6Cn4jISBvbj1Dcm9mdCBvdD0xMDk4NzE2MDU0IG9nPXRyZWZmZW4KfiMhIHJuPU1vbnRhbnVzIHJ0PTEwOTg3MTU3NjYgcmc9dHJlZmZlbgp+IyEgdGlkPTEwOTgzOTM2MDYKTmVpbi4gIERhcyB3YWVyIG51ciBlaW4gTmViZW5lZmZla3QuICBJY2ggd29sbHRlIG51ciBkaWVzbWFsIGRlbiBudXR6bG9zZW4KTmFjaGZyYWdlbiB2b3JiZXVnZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKENyb2Z0LCAyNS4gT2t0IDIwMDQsIDE2OjU4OjIwKToKfiMhIHJuPU11YWRpYiBydD0xMDk4NzE2MTA4IHJnPXBhcnR5Cn4jISB0aWQ9MTA5NzM0NzA0NApBdXMgUHJpbnppcC4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTUctUGFydHkgWFhWSUk6IDMuIEV2ZW50cyAoTXVhZGliLCAyNS4gT2t0IDIwMDQsIDE3OjAyOjEwKToKfiMhIHJuPUNyb2Z0IHJ0PTEwOTg3MTYzMDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MzQ3MDQ0CmVyc2NoaWVzc3QgZGVuIHByaW56aXBpZW5yZWl0ZXIKbmFjaCBjYXR0aWUgdW5kIGd1YXJkCgp1bmQgbm9jaG1hbDogSUNIIEJJTiBLRUlOIFdFUldPTEYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBNRy1QYXJ0eSBYWFZJSTogMy4gRXZlbnRzIChDcm9mdCwgMjUuIE9rdCAyMDA0LCAxNzoyMjo0OSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA5ODcxNjUzMCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTczNDcwNDQKRGFzIGhhdCBhdWNoIGtlaW5lciBiZWhhdXB0ZXQuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQW5mcmFnZSB1bmQgVm9yc2NobGFnIChQaXRmYWxsLCAyNi4gT2t0IDIwMDQsIDEwOjQ3OjA4KToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9MTA5ODc4MDM3MiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEwOTg3Nzc0MjUKRGFya3dpbmcgbmFjaCBXYWxsID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKERlZXBibHVlLCAyNi4gT2t0IDIwMDQsIDE1OjMyOjI2KToKfiMhIHJuPUJhYm9vbiBydD0xMDk4Nzk2MTY2IHJnPXBhcnR5LmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMDk3MzQ3MDQ0CmRlbiBkYXJmc3QgRHUgYW5iaWV0ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTdGFtbXRpc2NoZSBLYXJsc3J1aGUgMjguMTAuIC0gMTguMTEuIChHbm9tZSwgMjYuIE9rdCAyMDA0LCAyMzoyNTowOCk6Cn4jISBybj1Dcm9mdCBydD0xMDk4NzE2MDkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5ODM5MzYwNgp3b2hlciBrb21tdCBlaWdlbnRsaWNoIGRpZXNlICh1bilzaXR0ZSwgbmFjaCBqZWRlbSBzYXR6IHp3ZWkgbGVlcnplaWNoZW4KenUgbWFjaGVuPyBpY2ggYmluIGRhIGpldHp0IHNjaG9uIG9lZnRlciBkcnVlYmVyIGdlc3RvbHBlcnQgdW5kIGthbQpkYWJlaSBqZWRlc21hbCB6aWVtbGljaCBhdXMgZGVtIGxlc2V0cml0dC4Ka2FubiBtaXIgam1kIGVya2xhZXJlbiwgd2FzIGRhcyBmdWVyIGVpbmVuIHNpbm4gaGFiZW4gc29sbD8KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTdGFtbXRpc2NoZSBLYXJsc3J1aGUgMjguMTAuIC0gMTguMTEuIChHbG9pbnNvbiwgMjYuIE9rdCAyMDA0LCAyMzozNDozNik6Cn4jISBybj1Hbm9tZSBydD0xMDk4ODI1OTA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5ODM5MzYwNgpEYXMgc2luZCBkaWUgQW56ZWljaGVuIHZvbiBlaW5lbSBQbGVua3N1Y2h0aWUgYXVmIGRlbSBXZWcgenVyIEJlc3NlcnVuZy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTdGFtbXRpc2NoZSBLYXJsc3J1aGUgMjguMTAuIC0gMTguMTEuIChDcm9mdCwgMjYuIE9rdCAyMDA0LCAyMzozNzo0MSk6Cn4jISBybj1Hbm9tZSBydD0xMDk4ODI1OTA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5ODM5MzYwNgpMYVRlWC4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTdGFtbXRpc2NoZSBLYXJsc3J1aGUgMjguMTAuIC0gMTguMTEuIChNYWhhcmV0LCAyNy4gT2t0IDIwMDQsIDAwOjAwOjEzKToKfiMhIHJuPUNyb2Z0IHJ0PTEwOTg4MjY2NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk4MzkzNjA2CkljaCBoYWIgZGFzIGluIGVpbmVtIFNjaHJlaWJtYXNjaGluZWt1cnMgc28gZ2VsZXJudC4gIE9rLCBkZW4gaGFiIGljaCBpbgpBbWVyaWthIGdlbWFjaHQsIGluIERldXRzY2hsYW5kIGlzdCBkYXMgbmljaHQgdWVibGljaC4gIEFiZXIgbWFjaCBkYXMgbWFsCm1laW5lbiBGaW5nZXJuIGtsYXIsIGRpZSBoYXR0ZW4gc2Nob24gTXVlaGUsIGRhcyBtaXQgZGVtIHogdW5kIHkgenUgbGVybmVuLApiZWkgVW1sYXV0ZW4gc3RvY2tlIGljaCBpbW1lciBub2NoLgpBYmVyIGR1IG11c3N0IG1laW5lIFRleHRlIG5pY2h0IGxlc2VuLCBiaXN0IGVoIHNlbHRlbiBkaWUgWmllbGdydXBwZSAKbykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGlsZiBkZW4gR25hcmZlbiAoTmliZWwsIDI3LiBPa3QgMjAwNCwgMTc6NTQ6NTYpOgp+IyEgb249TW9yZ290aCBvdD0xMDk4NzMyNzA1IG9nPWQud2FsZAp+IyEgcm49VGVhbGMgcnQ9MTA5ODczMjYxMyByZz1kLndhbGQKfiMhIHRpZD0xMDk4NzMyNjEzCldvIGlzIGRhcyB0Zi1zY3JpcHQ/IAoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGlsZiBkZW4gR25hcmZlbiAoTmliZWwsIDI3LiBPa3QgMjAwNCwgMTc6NTU6MTApOgp+IyEgb249Q2hhZ2FsbCBvdD0xMDk4NzMyNzM3IG9nPWQud2FsZAp+IyEgcm49TW9yZ290aCBydD0xMDk4NzMyNzA1IHJnPWQud2FsZAp+IyEgdGlkPTEwOTg3MzI2MTMKRGFzIGdpYnRzIHNpY2hlcmxpY2ggYmVpIE11YWRpYiBvZGVyIHNvLgoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGlsZiBkZW4gR25hcmZlbiAoTmliZWwsIDI3LiBPa3QgMjAwNCwgMTc6NTU6MTIpOgp+IyEgb249VGVhbGMgb3Q9MTA5ODczMjkwNyBvZz1kLndhbGQKfiMhIHJuPU1vcmdvdGggcnQ9MTA5ODczMjcwNSByZz1kLndhbGQKfiMhIHRpZD0xMDk4NzMyNjEzCm5lbmUsIG5peCBzY3JpcHQuLi4uZioqKioqKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEhpbGYgZGVuIEduYXJmZW4gKE5pYmVsLCAyNy4gT2t0IDIwMDQsIDE3OjU1OjEzKToKfiMhIG9uPU1vcmdvdGggb3Q9MTA5ODczMjkzMSBvZz1kLndhbGQKfiMhIHJuPVRlYWxjIHJ0PTEwOTg3MzI5MDcgcmc9ZC53YWxkCn4jISB0aWQ9MTA5ODczMjYxMwpmaWNrZW4/IGRhcyBpc3QgZGllIGxvZXN1bmc/IGRhcyBpcyBqYSBnZWlsIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBIaWxmIGRlbiBHbmFyZmVuIChOaWJlbCwgMjcuIE9rdCAyMDA0LCAxNzo1NToyMik6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMDk4NzM0ODM4IG9nPWQud2FsZAp+IyEgcm49TW9yZ290aCBydD0xMDk4NzMyOTMxIHJnPWQud2FsZAp+IyEgdGlkPTEwOTg3MzI2MTMKSGF0IGRpciBqYSBhdWNoIG5pY2h0IGdlaG9sZmVuIEVyem1hZ2llciB6dSB3ZXJkZW4uIE11c3N0IGR1IGFsc28gbmFjaApXaW50ZXJidXJnIGtvbW1lbiB1bmQgZXMgbm9jaG1hbHMgdmVyc3VjaGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEhpbGYgZGVuIEduYXJmZW4gKE5pYmVsLCAyNy4gT2t0IDIwMDQsIDE3OjU1OjI2KToKfiMhIG9uPURhcmtsb3Igb3Q9MTA5ODg5MjI2MiBvZz1kLndhbGQKfiMhIHJuPUdsb2luc29uIHJ0PTEwOTg3MzQ4Mzggcmc9ZC53YWxkCn4jISB0aWQ9MTA5ODczMjYxMwpWZXJkYW1tdCBzY2hvbiB3aWVkZXIgbmUgbmV1ZSBRdWVzdC4uLgoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSGlsZiBkZW4gR25hcmZlbiAoQmFtYmksIDI4LiBPa3QgMjAwNCwgMDk6NTg6MDQpOgp+IyEgcm49TmliZWwgcnQ9MTA5ODg5MjUyNiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTg3MzI2MTMKRGllIGlzdCB1ZWJyaWdlbnMgbmUgUGZsaWNodHF1ZXN0IGZ1ZXIgRGljaCwgd2VubiBEdSBpbiBkZXIgR2lsZGUgd2FzIHdlcmRlbgp3aWxsc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBIaWxmIGRlbiBHbmFyZmVuIChEYXJrbG9yLCAyOC4gT2t0IDIwMDQsIDEwOjE3OjI1KToKfiMhIHJuPUJhbWJpIHJ0PTEwOTg5NTAyODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk4NzMyNjEzCk51biwgZGFubiBtdXNzIGljaCBkYSB3b2hsIG1laW5lbiBad2VpdGllIGRhcmF1ZiBhbnNldHplbiwgc2NobGllc3NsaWNoIHdpbGwKaWNoIGluIGRlciBHaWxkZSBqYSBuaXggd2VyZGVuLi4uIDspCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJcyBrbGFyIChNb3Jnb3RoLCAyOC4gT2t0IDIwMDQsIDIyOjI4OjAyKToKTGlhcmEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKW0ZyZXVuZGU6TGlhcmFdIGhlaGUKW0ZyZXVuZGU6TGlhcmFdIGRhbWl0IGljaCBkaWNoIGJlc3NlciBmcmVzc2VuIGthbm4KMiBzZWt1bmRlbiBzcGFldGVyLi4uClBpdGZhbGwgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKW0ZyZXVuZGU6UGl0ZmFsbF0gbXVoCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IElzIGtsYXIgKExpYXJhLCAyOC4gT2t0IDIwMDQsIDIyOjI5OjEyKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA5ODk5NTI4MiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTg5OTUyODIKRGllc2UgRWJlbmUgc3RhdHQgRmJhbmQtR2VzY2hpY2h0ZSBmaW5kZSBpY2ggZWNodCBibG9lZC4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSXMga2xhciAoTW9yZ290aCwgMjguIE9rdCAyMDA0LCAyMjozMDoyMik6Cn4jISBybj1MaWFyYSBydD0xMDk4OTk1MzUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5ODk5NTI4MgoKSWNoIGthbm4gYXVjaCBuaXggZGFmdWVyLCBkYXNzIFRpYW1hayBkYXMgZGFtYWxzIHNvIHNjaGVpc3MgdW5mbGV4aWJlbApnZXByb2dndCBoYXQuIFNvbnN0IGhhZXR0ZSBpY2ggZGFzIHNjaG9uIGxhZW5nc3QgdW0gZGllIG9wdGlvbmFsZQpFYmVuZW4tQXVzZ2FiZSB1bmQgZWluZSBIaXN0b3J5IGVyd2VpdGVydC4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBJcyBrbGFyIChWYXJkaW9uLCAyOC4gT2t0IDIwMDQsIDIyOjMzOjEyKToKfiMhIHJuPU1vcmdvdGggcnQ9MTA5ODk5NTQyMiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTg5OTUyODIKWnVtaW5kZXN0IGRpZSBIaXN0b3J5IGlzdCBqYSByZWNodCBlaW5mYWNoIHp1IGJhdWVuOgovYWxpYXMgdG1oaXN0IC9yZWNhbGwgLW1nbG9iIC1nIC8lezEtMjB9IHsqfSB0ZWlsdCBEaXIgbWl0OiAqCgpXZW5uIG1hbiBzaWNocyBhbHMgRWJlbmUgZGFyc3RlbGxlbiBsYWVzc3QsIGlzdCBkZXIgVHJpZ2dlciBuYXR1ZXJsaWNoCmFuenVwYXNzZW4uLi4KClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IElzIGtsYXIgKE1lZGljLCAyOC4gT2t0IDIwMDQsIDIzOjE0OjUwKToKfiMhIHJuPVZhcmRpb24gcnQ9MTA5ODk5NTU5MiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTg5OTUyODIKaG0sIGRhcyBrbGFwcHQgaGllciBuaWNodC4gbGVlcmUgYXVzZ2FiZS4gbWFnIGFiZXIgYXVjaCBhbSBmcmV1bmRlLnRmCmxpZWdlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSXMga2xhciAoRGFya2xvciwgMjkuIE9rdCAyMDA0LCAxNToxNjoxMSk6Cn4jISBybj1NZWRpYyBydD0xMDk4OTk4MDkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5ODk5NTI4MgpVbmQgZGFzIHNvbGwgc2NobWVja2VuPwoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBHZXNjaGljaHRlIGRlcyBMZWJlbnMgb2RlciBzbyAuLi4gKENoYWdhbGwsIDI5LiBPa3QgMjAwNCwgMTg6MjY6MjMpOgp+IyEgcm49RWxqbyBydD0xMDk5MDY3MTM5IHJnPXdpdHplCn4jISB0aWQ9MTA5OTA2NzEzOQpVbmQgamV0enQgYml0dGUgZWlubWFsIG9obmUgV2VnZXNjcmlwdC4gRGFua2UuCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWUgR2VzY2hpY2h0ZSBkZXMgTGViZW5zIG9kZXIgc28gLi4uIChEYXJrbG9yLCAyOS4gT2t0IDIwMDQsIDE4OjQ3OjQxKToKfiMhIHJuPUNoYWdhbGwgcnQ9MTA5OTA2NzE4MyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTkwNjcxMzkKV28gd2FyIGRlbm4gZGEgZGFzIFdlZy1TY3JpcHQgdmVyc3RlY2t0PwoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGllIEdlc2NoaWNodGUgZGVzIExlYmVucyBvZGVyIHNvIC4uLiAoQ3JvZnQsIDI5LiBPa3QgMjAwNCwgMTg6NDg6MjMpOgp+IyEgcm49RGFya2xvciBydD0xMDk5MDY4NDYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5OTA2NzEzOQpJbiBkZW0gYmVyZWl0cyBnZWxvZXNjaHRlbiBBcnRpa2VsLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERpZSBHZXNjaGljaHRlIGRlcyBMZWJlbnMgb2RlciBzbyAuLi4gKFpvb2ssIDI5LiBPa3QgMjAwNCwgMTg6NTM6MDApOgp+IyEgcm49Q3JvZnQgcnQ9MTA5OTA2ODUwMyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTkwNjcxMzkKd2llIGxhbmd3ZWlsaWcuIGV2dGwuIGhhZXR0ZSBpY2ggbWVpbmUgamEgb3B0aW1pZXJlbiBrb2VubmVuLgoKem9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERpZSBHZXNjaGljaHRlIGRlcyBMZWJlbnMgb2RlciBzbyAuLi4gKENoYWdhbGwsIDI5LiBPa3QgMjAwNCwgMTg6NTM6MzIpOgp+IyEgcm49Wm9vayBydD0xMDk5MDY4NzgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5OTA2NzEzOQpEYW1pdCBEdSBzY2huZWxsZXIgenUgRnVzcyBpbiBkaWUgQXJlbmEga29tbXN0PyBVbmQgRGljaCBkYWJlaSBuaWNodAppbiBkZXIgV3Vlc3RlIHZlcmxhZXVmc3Q/CgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRGllIEdlc2NoaWNodGUgZGVzIExlYmVucyBvZGVyIHNvIC4uLiAoWm9vaywgMjkuIE9rdCAyMDA0LCAxODo1NToyNCk6Cn4jISBybj1DaGFnYWxsIHJ0PTEwOTkwNjg4MTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk5MDY3MTM5ClNvIGFlaG5saWNoLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggaW4gZGVyIEFHIChQaXRmYWxsLCAzMS4gT2t0IDIwMDQsIDAwOjU4OjIxKToKSmVtYW5kIHppZWh0IGVpbmVuIFZlcmxvYnVuZ3NyaW5nIGFuLgpTYXJhaCBzY2hsZWljaHQgaGVyZWluLgpFaW5lIEthdHplIG5hbWVucyBTYXJhaC4KRWluIEhhbmRidWNoIGZ1ZXIgQW5mYWVuZ2VyLgpFaW5lIFplaXR1bmcuCkVpbiBQYXJ0eWJyZXR0LgpTYXJhaCBoYXV0IGFiLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTUctUGFydHkgWFhWSUk6IDMuIEV2ZW50cyAoQW5hdG9sLCAgMS4gTm92IDIwMDQsIDExOjIwOjIxKToKfiMhIHJuPUJvaW5nIHJ0PTEwOTg3MDMxMDggcmc9cGFydHkuYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEwOTczNDcwNDQKQVJHSC4gRm94dHJvdHQuIFdlbm4gRHUgVXJsYXViIGF1ZiBNYWxsZSBtYWNoc3QsIGVpbiBIb3RlbCBlcndpc2NodCwgaW4gZGVtCmRhcyBEdXJjaHNjaG5pdHRzYWx0ZXIgZGVyIEdhZXN0ZSBldHdhIDU1IGlzdCAtIGRhbm4gc2luZCAyIHZvbiAzIFRhZW56ZW4KRm94dHJvdHRzLiBBcmdoLiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKE1vcmdvdGgsICAxLiBOb3YgMjAwNCwgMTU6NDg6MTYpOgp+IyEgcm49QW5hdG9sIHJ0PTEwOTkzMDQ0MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MzQ3MDQ0CkZyYWd0IHNpY2ggbnVyIG9iIE1haGEgZGFzIGR1cmNoc2Nobml0dHNzYWx0ZXIgaGVidCBvZGVyIHNlbmt0IDopCgoKTSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKE1haGFyZXQsICAxLiBOb3YgMjAwNCwgMTU6NTM6MjQpOgp+IyEgcm49TW9yZ290aCBydD0xMDk5MzIwNDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzM0NzA0NApXZWRlciBub2NoLCBkYSBpY2ggbm9jaCBuaWUgYXVmIE1hbGxlIHdhciB1bmQgYXVjaCBuaWNodCB2b3JoYWJlLCBpbgphYnNlaGJhcmVyIFplaXQgZG9ydGhpbiB6dSBmYWhyZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNRy1QYXJ0eSBYWFZJSTogMy4gRXZlbnRzIChNdWFkaWIsICAxLiBOb3YgMjAwNCwgMTY6MzY6MzcpOgp+IyEgcm49TWFoYXJldCBydD0xMDk5MzIwODA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzM0NzA0NApkYSBnaWJ0IGVzIGFiZXIgc2Nob2VuZSBlY2tlbgphbmdlYmxpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKE1haGFyZXQsICAxLiBOb3YgMjAwNCwgMTY6Mzg6MjMpOgp+IyEgcm49TXVhZGliIHJ0PTEwOTkzMjMzOTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MzQ3MDQ0CkluIGRlbiBIb3RlbHM/CgpJY2ggc2NobGllc3NlIGphIG5pY2h0IGF1cywgbWFsIGluIGVpbmVyIEZpbmNhIFVybGF1YiB6dSBtYWNoZW4gdW5kIGRpZSBJbnNlbG4KenUgZXJ3YW5kZXJuLiAgQWJlciBpY2ggd2VyZCBuaWNodCBpbiBQYXVzY2hhbHVybGF1YnNtYXNzZW50b3VyaXNtdXNob3RlbHMKRm94dHJvdHQgdGFuemVuLiBKZWRlbmZhbGxzIG5pY2h0LCBzb2xhbmdlIGljaCBub2NoIHVudGVyIDU1IGJpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKE11YWRpYiwgIDEuIE5vdiAyMDA0LCAxNjozOTo1MSk6Cn4jISBybj1NYWhhcmV0IHJ0PTEwOTkzMjM1MDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk3MzQ3MDQ0CmFuZ2VibGljaCBzb2xsIGVzIGhvdGVscyBnZWJlbiBpbiBkZW5lbiBtYW4gbGVkaWdsaWNoIHVlYmVybmFjaHRldCB1bmQKdmllbGxlaWNodCBub2NoIGZydWVoc3R1ZWNrdCB1bmQgYW5zb25zdGVuIGluIHNlaW5lciB0YWdlc3BsYW51bmcgZnJlaSBpc3QuCgpob3RlbGJlbnV0enVuZyBpc3QgbmljaHQgZ2xlaWNoYmVkZXV0ZW5kIG1pdCBwYXVzY2hhbHVybGF1YgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTUctUGFydHkgWFhWSUk6IDMuIEV2ZW50cyAoTWFoYXJldCwgIDEuIE5vdiAyMDA0LCAxNjo0MToxNyk6Cn4jISBybj1NdWFkaWIgcnQ9MTA5OTMyMzU5MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTczNDcwNDQKRGFoZXIgaGFiIGljaCBkaWUgZ2VuYW5udGVuIEhvdGVscyBuYWVoZXIgYmVzY2hyaWViZW4uIEljaCBiZXppZWhlIG1pY2ggZGEKYXVjaCBudXIgYXVmIEFuYXRvbHMgRXJmYWhydW5nZW4uIEljaCBoYWIgbmllIGJlaGF1cHRldCwgZGFzcyBIb3RlbGJlbnV0enVuZwptaXQgUGF1c2NoYWx1cmxhdWIgZ2xlaWNoenVzZXR6ZW4gaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKExpYXJhLCAgMS4gTm92IDIwMDQsIDE2OjQ5OjA4KToKfiMhIHJuPU1haGFyZXQgcnQ9MTA5OTMyMzY3NyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTczNDcwNDQKSW4gc29sY2hlbiBIb3RlbHMgdGFuemVuIGRpZSBnZXJuZSBEaXNjby1Gb3guIFdhcyBtaXQgRm94dHJvdHQgb2RlciBtZWluZW0KTGllYmxpbmdzdGFueiBRdWlja3N0ZXAgbmljaHQgdmllbCB6dSB0dW4gaGF0LiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE1HLVBhcnR5IFhYVklJOiAzLiBFdmVudHMgKE11YWRpYiwgIDEuIE5vdiAyMDA0LCAxNjo0OTozNCk6Cn4jISBybj1MaWFyYSBydD0xMDk5MzI0MTQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5NzM0NzA0NApxdWlja3N0ZXBzIG1hY2ggaWNoIG1hbmNobWFsIGF1Y2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBNRy1QYXJ0eSBYWFZJSTogMy4gRXZlbnRzIChHbG9pbnNvbiwgIDEuIE5vdiAyMDA0LCAxODowNjoyOSk6Cn4jISBybj1NdWFkaWIgcnQ9MTA5OTMyNDE3NCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTczNDcwNDQKSW4gZGVtIEhvdGVsIGluIGRlbSB3aXIgbWFsIGF1ZiBkZW4gS2FuYXJlbiB1bnRlcmdlYnJhY2h0IHdhcmVuLCBnYWIgZXMgZWhlcgpTaG93cHJvZ3JhbW0gdW5kIEFuaW1hdGlvbiBpbmtsdXNpdmUgR2Flc3Rlc3RyaXAuIEFiZXIgZGF2b24gaGF0IG1hbgphbGxlbmZhbGxzIHNwYWV0YWJlbmRzIGJlaW0gSGVpbWtlaHJlbiBub2NoIHdhcyBtaXRiZWtvbW1lbi4KV2l0emlnZXIgd2FyIGRhIHNjaG9uIGRpZSBBYnN0ZWlnZSBkZXIgbGV0enRlbiBLbGFzc2VuZmFocnQuIERhcyB3YXIgbmFlbWxpY2gKYW4gendlaSBUYWdlbiBlaW5lIGVjaHRlIFN0cmlwYmFyIDspIFVuZCB3aXIgd2FyZW4gamEgbm9jaCByaWlpaWNodGlnIGp1bmcgOikKRGllIHJvdGVuIEdhcmRpbmVuIGluIGFsbGVuIFppbW1lcm4gaGFldHRlbiB1bnMgd2FybmVuIHNvbGxlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRvdGFsZSBNb25kZmluc3Rlcm5pcyBhbSBEb25uZXJzdGFnIE1vcmdlbi4gKFdoaXRldGlnZXIsICAxLiBOb3YgMjAwNCwgMTg6NTQ6MzQpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMDk5MzMxNjE0IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTA5ODkwNjY3NQpEdSBicmF1Y2hzdCBhYmVyIGxhbmdlIHp1bSB3aWVkZXIgQXVmd2FjaGVuIHVuZCBzby4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1HLVBhcnR5IFhYVklJOiBCaXR0ZSB1ZWJlcndlaXNlbiEgKExpYXJhLCAgMi4gTm92IDIwMDQsIDIyOjI0OjMzKToKfiMhIHJuPUFuYXRvbCBydD0xMDk5NDI3MzkyIHJnPXBhcnR5Cn4jISB0aWQ9MTA5OTQyNzM5MgpBdXNzZW5zZWl0ZXIhIE5hamEsIEVsZmVuIHdhcmVuIGphIHNjaG9uIGltbWVyIGtvbWlzY2ggLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFN1ZmYgKENyb2Z0LCAgNS4gTm92IDIwMDQsIDE2OjA1OjIzKToKfiMhIHJuPU9nbyBydD0xMDk5NjY2NzA1IHJnPXdpdHplCn4jISB0aWQ9MTA5OTY2MjA3MApBY2ggd2FzLiAgRGllIG1laXN0ZW4gaGFiZW4gZG9jaCBlaCBzY2hvbiBkYXMgU3ViamVrdCB2ZXJnZXNzZW4gYmlzIHNpZQpkYSB1bnRlbiBhbmdla29tbWVuIHNpbmQuICBGYWxscyBzaWUgZXMgdWViZXJoYXVwdCBzbyB3ZWl0IGR1cmNoZ2VsZXNlbgpoYWJlbiA7LSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdWZmIChHbG9pbnNvbiwgIDUuIE5vdiAyMDA0LCAxNjowNzo0Nyk6Cn4jISBybj1Dcm9mdCBydD0xMDk5NjY3MTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5OTY2MjA3MApTb2xsdGVuIHdpciBPZ28gamV0enQgenVtIG9mZml6aWVsbGVuIFBvaW50ZW5lcmtsYWVyZXIsIGJlc3NlciBub2NoClBvaW50ZW5wb2ludGVyIGVybmVubmVuPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFN1ZmYgKE9nbywgIDUuIE5vdiAyMDA0LCAxNjoxNzo0OSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMDk5NjY3MjY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5OTY2MjA3MApXaWVzbyBiZXNjaGxlaWNodCBtaWNoIGRhcyBHZWZ1ZWhsLCBkYXNzIGR1IGhpZXIgZWluIGF1Zmdlc2NobmFwcHRlcyBXb3J0c3BpZWwKdW0gamVkZW4gUHJlaXMgdW5kIHdpZGVyIGV0d2FpZ2VuIEluaGFsdHNiZXp1ZyBhbmJyaW5nc3Q/CgpPZ28sIGxlaWNodCB2ZXJ3aXJydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3VmZiAoR2xvaW5zb24sICA1LiBOb3YgMjAwNCwgMTY6MjE6MDUpOgp+IyEgcm49T2dvIHJ0PTEwOTk2Njc4Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk5NjYyMDcwClNvLiBOb2NoIG1hbCBpbiBLbGFydGV4dC4KCkRhcyBHZWZ1ZWhsIGJlc2NobGVpY2h0IGRpY2ggbnVyLCB3ZWlsIGRpciBub2NoIG5pY2h0IGtsYXJnZXdvcmRlbiBpc3QsIGluCndlbGNoZXIgUnVicmlrIHdpciBzaW5kLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFN1ZmYgKENyb2Z0LCAgNS4gTm92IDIwMDQsIDE2OjMxOjM4KToKfiMhIHJuPUdsb2luc29uIHJ0PTEwOTk2NjcyNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk5NjYyMDcwCkljaCBmaW5kZSBoaWVyIHdhZXIgbm9jaCBlaW4gQW5nbGl6aXNtdXMgYW5nZWJyYWNodCBnZXdlc2VuOgoienVtIFBvaW50ZW5wb2ludGVyIGFwcG9pbnRlbiIuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3VmZiAoR2xvaW5zb24sICA1LiBOb3YgMjAwNCwgMTY6MzM6NDApOgp+IyEgcm49Q3JvZnQgcnQ9MTA5OTY2ODY5OCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTk2NjIwNzAKVGhhbmtzIGZvciBwb2ludGluZyB0aGlzIG91dCB0byB1cy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTdWZmIChNdWFkaWIsICA1LiBOb3YgMjAwNCwgMTY6Mzc6NTIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA5OTY2ODgyMCByZz1zY2htYXJybgp+IyEgdGlkPTEwOTk2NjIwNzAKbnUgbWFjaCBhYmVyIG1hbCBuZW4gcHVua3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFN1ZmYgKEhpZ2hsYW5kZXIsICA1LiBOb3YgMjAwNCwgMTY6NDI6NTYpOgp+IyEgcm49TXVhZGliIHJ0PTEwOTk2NjkwNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk5NjYyMDcwCiAuCgpIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFN1ZmYgKEdsb2luc29uLCAgNS4gTm92IDIwMDQsIDE2OjQzOjUwKToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9MTA5OTY2OTM3NiByZz1zY2htYXJybgp+IyEgdGlkPTEwOTk2NjIwNzAKUG9pbnQgdGFrZW4gYW5kIGR1bHkgbm90ZWQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN1ZmYgKExpYXJhLCAgNS4gTm92IDIwMDQsIDE3OjEyOjU3KToKfiMhIHJuPUFudGhlYSBydD0xMDk5NjYyMDcwIHJnPXdpdHplCn4jISB0aWQ9MTA5OTY2MjA3MApEYXMgZWlnZW50bGljaCBJbnRlcmVzc2FudGUgaXN0IGRvY2gsIGRhc3MgRk9SV0FFUlRTIG1pdCBWIGdlc2NocmllYmVuIHdpcmQKdW5kIGRlbiBXaXR6IHNvIG9obmVoaW4gbmllbWFuZCB2ZXJzdGVoZW4ga29ubnRlLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUzogS3JlZGl0a2FydGVuLUFuYmlldGVyIChab29rLCAgNi4gTm92IDIwMDQsIDE0OjE4OjM0KToKfiMhIG9uPVpvb2sgb3Q9MTA5OTc0NzExMCBvZz1zdWNoZS1iaWV0ZQp+IyEgcm49R2xvaW5zb24gcnQ9MTA5OTY4MzgzMiByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEwOTk2ODExOTEKTW9lY2h0ZXN0IER1IGRlbiBUaHJhZCBtb25vcG9saXNpZXJlbiwgR2xvaW5zb24/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUzogS3JlZGl0a2FydGVuLUFuYmlldGVyIChHbG9pbnNvbiwgIDYuIE5vdiAyMDA0LCAyMDo1MzoyNyk6Cn4jISBybj1ab29rIHJ0PTEwOTk3NDcxMTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMDk5NjgxMTkxCkVzIG1hbmdlbHQgamEgc2Nob24gaW4gREVNIFRIUkVBRCBhbiBSZWhlbiwga2VpbiBXdW5kZXIgZGFzcyBpY2ggZGllCkRhdWVyaW5ncmlkIG1hY2hlbiBtdXNzLiBBdXNzZXJkZW0gYmluIGljaCB6ZXJzdHJldXQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogUzogS3JlZGl0a2FydGVuLUFuYmlldGVyIChBbWFyeWxsaXMsICA2LiBOb3YgMjAwNCwgMjA6NTQ6MTEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTA5OTc3MDgwNyByZz1zY2htYXJybgp+IyEgdGlkPTEwOTk2ODExOTEKR3V0LCBkYW5uIHNjaGVua2UgaWNoIERpciBtYWwgZWluIEtvbW1hLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNRy1QYXJ0eSBYWFZJSTogQml0dGUgdWViZXJ3ZWlzZW4hIChBbmF0b2wsICA2LiBOb3YgMjAwNCwgMjM6MDA6MjkpOgp+IyEgcm49Rm9vYmFyIHJ0PTEwOTk3NzI2ODEgcmc9cGFydHkKfiMhIHRpZD0xMDk5NDI3MzkyCkRlciBTY2hlaW4sIG1pdCBkZW0gaWNoIGVpbmVuIHplaG5zdGVsbGlnZW4gQmV0cmFnIHZvcnN0cmVja2VuCmtvZW5udGUsIGlzdCBsZWlkZXIgZXR3YXMgdWViZXIgODAgSmFocmUgenUgYWx0Li4uIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW50ZXJlc3NhbnRlIEhvY2h6ZWl0c25hY2h0IC4uLiA7KSAoTGlhcmEsICA3LiBOb3YgMjAwNCwgMTc6MDE6NDkpOgp3ZWdtZWxkdW5nIG1la2FyZQpNZWthcmUgaXN0IGFscyBhYndlc2VuZCBnZWtlbm56ZWljaG5ldC4KR3J1bmQ6IEhvY2h6ZWl0c25hY2h0Cgp3ZWdtZWxkdW5nIG1lc2lyaWkKTWVzaXJpaSBpc3QgYWxzIGFid2VzZW5kIGdla2VubnplaWNobmV0LgpHcnVuZDogQXJiZWl0ZW4KCkJlaWRlIGhhYmVuIGVpbiBKIGltIGt3ZXIuIDo+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaywgaWNoIGhhYmUgdmVyc3RhbmRlbi4uLi4gKFpvb2ssICA4LiBOb3YgMjAwNCwgMTQ6NDQ6MzEpOgpEYXJrd2luZyBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uCltUcnZlczpab29rXSBEQVJLWSEKRGFya3dpbmcgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGJ1ZWNoZXIgbWl0IFRjbCAoR3JpbW1ib3JuLCAgOC4gTm92IDIwMDQsIDE2OjI4OjM0KToKfiMhIHJuPUFsYm9pbiBydD0xMDk5OTI3NTgyIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEwOTk5Mjc1ODIKTmVpbiwgZGVyIFRpdGVsIHNhZ3QgZGFzIG5pY2h0LCBkYW5uIGhhZXR0ZSBlciBqYSBsYXV0ZW4gbXVlc3NlbiAiQnVlY2hlcgp1ZWJlciBUY2wiIG8uYWUuIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT2ssIGljaCBoYWJlIHZlcnN0YW5kZW4uLi4uIChab29rLCAgOC4gTm92IDIwMDQsIDIyOjAyOjExKToKfiMhIHJuPVpvb2sgcnQ9MTA5OTkyMTQ3MSByZz1zY2htYXJybgp+IyEgdGlkPTEwOTk5MjE0NzEKTmEgYWxzbywgZGFzIGdlaHQgamEgbWVocm1hbHM6CgpEYXJrd2luZyBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uCltCZWlsZWlkOk1pcnBdIC1lYmVuZSBiZWlsZWlkOiBIdWNoIGRlciBTY2h3ZWluZWh1bmQgd2FyIHN0YWVya2VyIGFscyBpY2gKW1RydmVzOlpvb2tdIG1hbCBzY2hhdW4sIG9icyBub2NobWFsIGtsYXBwdC4KW1RydmVzOlpvb2tdIERBUktZIQpEYXJrd2luZyBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgoKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGRhIG11c3N0IGljaCBlaW4gYmlzc2NoZW4gZ3JpbnNlbi4uLiAoQmFtYnVsa28sIDEwLiBOb3YgMjAwNCwgMTE6MDc6NDQpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTExMDAwNzg2MDEgcmc9d3d3Cn4jISB0aWQ9MTEwMDA3NzEyOQpXaWUgd3VlcmRlbiBkaWUgZGFubiBoZWlzc2VuOiAiTXVkZGVyaW4iLCAiTXVkZGVyZXMiLCBvZGVyICJNdWRkZXJpbmUiPwoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOYWNodHJhZyAoR2xvaW5zb24sIDEwLiBOb3YgMjAwNCwgMjM6MDE6NTkpOgp+IyEgcm49TGlhcmEgcnQ9MTEwMDEyMzg3NCByZz1rdWx0dXIKfiMhIHRpZD0xMTAwMTIzODc0CkljaCBoYWIgbWljaCBzY2hvbiBnZXd1bmRlcnQsIHdpZSBndXQgZHUgZGljaCBpbiBlaW5lbiBNYW5uIGhpbmVpbnZlcnNldHplbgprYW5uc3QuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOYWNodHJhZyAoTGlhcmEsIDEwLiBOb3YgMjAwNCwgMjM6MDI6NTMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwMDEyNDExOSByZz1zY2htYXJybgp+IyEgdGlkPTExMDAxMjM4NzQKSGVoZSwgZGFua2UhIDo+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUZXVyZXIgVGlwcGZlaGxlci4uLiAoTWVkaWMsIDExLiBOb3YgMjAwNCwgMDA6MTU6MjEpOgpEYXMgRmluYW56YW10IFN0LiBBdWd1c3RpbiBiZWkgQm9ubiBrb3N0ZXQgZGFzIExhbmQgTlJXIGV2ZW50dWVsbAo1MDAuMDAwIEV1cm8KClF1ZWxsZTogU3xkZGV1dHNjaGUgWmVpdHVuZywgMTAuMTEuMDQKCkR1cmNoIGVpbmVuIFRpcHBmZWhsZXIgYmVpIGRlciBFaW5nYWJlIGlzdCBlaW5lbSBSZW50bmVyIGF1cyBTdC4KQXVndXN0aW4gZWluIEVpbmtvbW1lbiBpbiBIaGUgdm9uIHxiZXIgZWluZXIgTWlsbGlhcmRlIEV1cm8gYmVzY2hlaW5pZ3QKdW5kIGJlc3RldWVydCB3b3JkZW4uIERlciBSZW50bmVyIGVyaGllbHQgZGFyYXVmaGluIGVpbmVuIFN0ZXVlcmJlc2NoZWlkCnxiZXIgMjg3IE1pby4gRXVyby4gRXIgfGJlcmdhYiBkaWUgR2VzY2hpY2h0ZSBrdXJ6ZXJoYW5kIGVpbmVtIEFud2FsdCwKZGVyIGRlbiBUaXBwZmVobGVyIG1vbmllcnRlLiBEaWUgU2FjaGUgbGllQW53YWx0LCBzaWNoIGluaGFsdGxpY2ggZHVyY2ggZWluZW4KQnJpZWYgZGVzIEFud2FsdHMgdW5kIGVpbiBlbnRzcHJlY2hlbmRlcyBBbnR3b3J0c2NocmVpYmVuIGRlciBCZWhyZGUKa2xyZW4uCgpEYXMgUHJvYmxlbTogQXVmIEdydW5kIGRlcyBTdHJlaXR3ZXJ0cyAoMjg3IE1pbyBFdXJvKSB0YXhpZXJ0ZSBkZXIKQW53YWx0IHNlaW4gSG9ub3JhciBnZWdlbnxiZXIgZGVtIExhbmQgTlJXIGxlZ2FsICghKSBhdWYgMiwzIE1pbyBFdXJvCmZ8ciBlaW5lbiBCcmllZi4gRGFzIEZpbmFuem1pbmlzdGVyaXVtIE5SVyBoYXQgaGV1dGUgYWxzClNjaGxpY2h0dW5nc2FuZ2Vib3QgdW5kIG5hY2ggZWluZXIgRW1wZmVobHVuZyBkZXIgZWlnZW5lbgpSZWNodHNhYnRlaWx1bmcgZWluIEhvbm9yYXIgdm9uIDUwMC4wMDAgRXVybyBhbmdlYm90ZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNXUiAzOiBQaXNhIFBvbGl6ZWkgKEdyaW1tYm9ybiwgMTIuIE5vdiAyMDA0LCAxMjoxMjo1Nik6Cn4jISBvbj1LZWxseWJ1bmR5IG90PTExMDAxOTg5MjQgb2c9d2l0emUKfiMhIHJuPUJhbWJ1bGtvIHJ0PTExMDAxNzIxOTMgcmc9d2l0emUKfiMhIHRpZD0xMTAwMTcyMTkzCk11c3MgbWFuIGRlbiBqZXR6dCB2ZXJzdGVoZW4/CkRhcyBOaXZlYXUgZGVyIHNvIGdlbmFubnRlbiBDb21lZHkgQ2xpcHMgaW0gT2VmZmVudGxpY2ggcmVjaHRsaWNoZW4gaGF0IHNpY2gKamEgZmF0YWwgYW4gZGllIGltIHByaXZhdGVuIHJ1bmRmdW5rIGFuZ2VwYXNzdCwgdGVpbHdlaXNlIHNpbmQgZGllIGltIHByaXZhdGVuClJ1bmRmdW5rIGphIHNvZ2FyIG5vY2ggYmVzc2VyLCBqYSBtYW5jaG1hbCBkdXJjaGF1cyBsZWljaHQgbml2ZWF1dm9sbCB6dQpuZW5uZW4uCgpLZWxseSwgc3VjaHQgaW0gS2VsbGVyIGdyYWQgZGFzIE5pdmVhdSBtaXQgZGVyIFNwaXR6aGFja2UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU1dSIDM6IFBpc2EgUG9saXplaSAoR3JpbW1ib3JuLCAxMi4gTm92IDIwMDQsIDEyOjEzOjA4KToKfiMhIG9uPU9nbyBvdD0xMTAwMTk5MTQwIG9nPXdpdHplCn4jISBybj1LZWxseWJ1bmR5IHJ0PTExMDAxOTg5MjQgcmc9d2l0emUKfiMhIHRpZD0xMTAwMTcyMTkzCkZhbGxzIGVzIGRpY2ggdHJvZXN0ZW4gc29sbHRlOiBJY2ggaGFiZSBkaWVzZW4gV2l0eiBhdWNoIG5pY2h0IHZlcnN0YW5kZW4uIEluClplaXRlbiB2b24gQXR6ZSBTY2hyb2VkZXIgKHNjaHJlaWJ0IG1hbiBkZW4gc28/KSBoYWJlIGljaCBtaXIgYWxsZXJkaW5ncyBhdWNoCmFiZ2V3b2VobnQsIGplZGVuIFdpdHogdmVyc3RlaGVuIHp1IHdvbGxlbi4gOm8pCgpPZ28sIGJlZ3JpZmZzc3R1dHppZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU1dSIDM6IFBpc2EgUG9saXplaSAoR3JpbW1ib3JuLCAxMi4gTm92IDIwMDQsIDEyOjEzOjEyKToKfiMhIG9uPUtlbGx5YnVuZHkgb3Q9MTEwMDE5OTIyNiBvZz13aXR6ZQp+IyEgcm49T2dvIHJ0PTExMDAxOTkxNDAgcmc9d2l0emUKfiMhIHRpZD0xMTAwMTcyMTkzCldvYmVpIEF0emUgU2Nocm9lZGVyIHRlaWx3ZWlzZSB3aXJrbGljaCBnb2V0dGxpY2ggaXN0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTV1IgMzogUGlzYSBQb2xpemVpIChHcmltbWJvcm4sIDEyLiBOb3YgMjAwNCwgMTI6MTM6MjApOgp+IyEgb249RGFya2xvciBvdD0xMTAwMjAxMTMwIG9nPXdpdHplCn4jISBybj1LZWxseWJ1bmR5IHJ0PTExMDAxOTkyMjYgcmc9d2l0emUKfiMhIHRpZD0xMTAwMTcyMTkzCkRvY2ggbmljaCBBdHplIC0gZGEgZ2lidCBlcyBhdWYgamVkZW4gRmFsbCBiZXNzZXJlLi4uIAoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbmUgd2ljaHRpZ2UgRnJhZ2UgKExpYXJhLCAxMi4gTm92IDIwMDQsIDE5OjIzOjI0KToKfiMhIHJuPVBob2JvcyBydD0xMTAwMjgwNDU1IHJnPXdpdHplCn4jISB0aWQ9MTEwMDI4MDQ1NQpKYSwgd2l0emlnISBOYWNoZGVtIGljaCBxIGdlZHJ1ZWNrdCBoYXR0ZSwga2FtIGdhciBrZWluIFRleHQgbWVoci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU1dSIDM6IFBpc2EgUG9saXplaSAoTGlhcmEsIDEyLiBOb3YgMjAwNCwgMTk6MjU6MDApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMDAyNTc5NzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAwMTcyMTkzCk5hamEsIGljaCBoYWJlIGlobiBhdWNoIG5pY2h0IHZlcnN0YW5kZW4sIGFsc28ga2FubiBpY2ggbWljaCBhdWNoIG5pY2h0IHVlYmVyCmRhcyBOaXZlYXUgYWV1c3Nlcm4uIEFiZXIgc2VpdGRlbSBkZXIgV2l0eiBpbiBkZXIgTVBBIHN0YW5kLCBrb25udGUgaWhuIG1pcgphdWNoIG5vY2ggbmllbWFuZCBlcmtsYWVyZW4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VyYnVuZy4uLiAoTGlhcmEsIDEyLiBOb3YgMjAwNCwgMTk6MzE6MzQpOgp+IyEgcm49Wm9vayBydD0xMTAwMjQ5NzQyIHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD0xMTAwMjQ5NzQyCldvIHNvbGxlbiB3aXIgZGVubiBoaW4gbWl0IGRlbSBnYW56ZW4gR2VsZD8gKmphbW1lcioKRGVyIFJlY2huZXIgc2FtdCBVU1Ygd2lyZCBkb2NoIHNpY2hlciBlaW5lIFdlaWxlIGhhbHRlbiwgb2Rlcj8gOykgKmZnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VubiBNYWRuZXNzIGtudWRkZWx0IChNaWV6ZSwgMTIuIE5vdiAyMDA0LCAxOTo0NTo1NCk6CgplYmVuIHBhc3NpZXJ0OgoKRGVpbiBGcmV1bmQgTWFkbmVzcyBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuIApEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKTWllemUgLSBncmluc3Qgbm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFppbW1lcmJlbGVndW5nIChHbG9pbnNvbiwgMTIuIE5vdiAyMDA0LCAyMToxMzoxNCk6Cn4jISBybj1MYXJpbmEgcnQ9MTEwMDI4OTY4NCByZz1wYXJ0eQp+IyEgdGlkPTExMDAyODk2ODQKTGFyaW5hIGlzdCB0b29vdGFsIHVuZmxleGliZWwuIEFuYXRvbCBpc3Qgc2Nob24gdmVycGxhbnQsIFp1dmllbGVvcmtzIHNpbmQKc2Nob24gdmVycGxhbnQuIFBhYWFoIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWmltbWVyYmVsZWd1bmcgKERhcmtsb3IsIDEyLiBOb3YgMjAwNCwgMjE6MTU6NDgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwMDI5MDM5NCByZz1zY2htYXJybgp+IyEgdGlkPTExMDAyODk2ODQKQWJzYWdlbi4uLgoKRGFya2xvciA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogWmltbWVyYmVsZWd1bmcgKEdsb2luc29uLCAxMi4gTm92IDIwMDQsIDIxOjE2OjAyKToKfiMhIHJuPURhcmtsb3IgcnQ9MTEwMDI5MDU0OCByZz1zY2htYXJybgp+IyEgdGlkPTExMDAyODk2ODQKRGlyPyBXaWVzbz8gQmlzdCBkdSBhdWNoIHZlcnBsYW50PwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhtamEgLi4uIDspIChMaWFyYSwgMTIuIE5vdiAyMDA0LCAyMjo1MToyNyk6CkRlaW4gRnJldW5kIEFsa29ob2wgdGVpbHQgRGlyIG1pdDogd2llc28gd2lyZCBtYW4gdm9uIGZhcmJlIHNjaHdhbmdlcj8KRHUgcnVmc3Q6IHNlaXQgd2FubiBzcHJpdHplbiBtYWVubmVyIGZhcmJlPwpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogb2VyZ3MKRGVpbmUgRnJldW5kaW4gTWFoYXJldCBrcmluZ2VsdCBzaWNoIGluIGRlciBGZXJuZSB2b3IgTGFjaGVuLiAKWHh4eHh4IHRlaWx0IERpciBtaXQ6IGhhbHQgZGljaCBmZXJuLCBrbGluZ3QgbmFjaCB0cmlwcGVyLCB3ZW5ucyBlaXRlcmdlbGIgaXN0CkR1IHRlaWxzdCBYeHh4eHggbWl0OiBiaXN0ZSBhcnp0IDspClh4eHh4eCB0ZWlsdCBEaXIgbWl0OiBhYmVyIG1laW5lIG1hbWEgaGF0IG1pY2ggZ2V3YXJudApEdSB0ZWlsc3QgWHh4eHh4IG1pdDogaXMgZGVpbmUgbWFtYSBhZXJ6dGluIDspClh4eHh4eCB0ZWlsdCBEaXIgbWl0OiBuZWluIGFiZXIgbXV0dGVyCgoKT2suIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGb3J0c2V0enVuZyAuLi4gKExpYXJhLCAxMi4gTm92IDIwMDQsIDIyOjU1OjIzKToKRGVpbiBGcmV1bmQgQWxrb2hvbCB0ZWlsdCBEaXIgbWl0OiBpY2ggZ2VoIG1pciBtYWwgZGllIGZhcmJrbGVrc2UgaW4gbWVpbmVtCkRlaW4gRnJldW5kIEFsa29ob2wgdGVpbHQgRGlyIG1pdDogQnVjaCBhbnNjaGF1ZW4gOykKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGR1IHNjaHdlaW4gOikKRGVpbmUgRnJldW5kaW4gTWFoYXJldCB0ZWlsdCBEaXIgbWl0OiBXZWxjaGUgRmFyYmUgaGFiZW4gZGllPwpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogc2luZCBiZXN0aW1tdCBiaWxkY2hlbiBkcmluIGluIGRlbSBidWNoIDspCkRlaW4gRnJldW5kIEFsa29ob2wgdGVpbHQgRGlyIG1pdDogam8gc2luZCBnYW56IHZpZWxlIGJpbGRlciBkcmluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWluZSB3aWNodGlnZSBGcmFnZSAoR3JpbW1ib3JuLCAxMy4gTm92IDIwMDQsIDE3OjM2OjI0KToKfiMhIG9uPVZhbmlvbiBvdD0xMTAwMzYwOTQ4IG9nPXdpdHplCn4jISBybj1QaG9ib3MgcnQ9MTEwMDI4MDQ1NSByZz13aXR6ZQp+IyEgdGlkPTExMDAyODA0NTUKRGlzZ3VzdGluZy4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbmUgd2ljaHRpZ2UgRnJhZ2UgKFZhbmlvbiwgMTMuIE5vdiAyMDA0LCAxODowNjo1Mik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEwMDM2Mzc4NCByZz1zY2htYXJybgp+IyEgdGlkPTExMDAyODA0NTUKSWNoIGZpbmRlIG5pY2h0LCBkYXNzIG1laW5lIE1laW51bmcgenUgZGllc2VtIFdpdHogc2NobWFycm4gaXN0LgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdWNoZSBuZXVlbiBCZXNpdHplciAoR2xvaW5zb24sIDEzLiBOb3YgMjAwNCwgMjE6Mzk6MDQpOgp+IyEgcm49SG9ibyBydD0xMTAwMzc4MjgyIHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTEwMDM3ODI4MgpCaXMgenVyIEhhZWxmdGUgZGVzIEFydGlrZWxzIGRhY2h0ZSBpY2ggamE6IFByaW1hIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3VjaGUgbmV1ZW4gQmVzaXR6ZXIgKFBpdGZhbGwsIDEzLiBOb3YgMjAwNCwgMjE6NDA6NTQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwMDM3ODM0NCByZz1zY2htYXJybgp+IyEgdGlkPTExMDAzNzgyODIKTGVja2VyIEJyYXR3dXJzdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogT2ssIGljaCBoYWJlIHZlcnN0YW5kZW4uLi4uIChNdXBmZWwsIDE0LiBOb3YgMjAwNCwgMDE6MDM6MzUpOgp+IyEgcm49Wm9vayBydD0xMDk5OTQ3NzMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTA5OTkyMTQ3MQphbGkgZGR4IHhkbyAtdCBEQVJLWSE7eGxwYyBvYmplY3QgZDsgZD1maW5kX3BsYXllcigiZGFya3dpbmciKTtpZihkKQpkaXNjb25uZWN0KGQpOwoKYWxsZXMgZWluZSBzYWNoZSBkZXIgdGVjaG5payA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUgKExpYXJhLCAxNC4gTm92IDIwMDQsIDAxOjM1OjAwKToKW1RydmVzOkxpbGxlYnJvcl0gRGFiZWkgaXN0ICdzY2htZXJ6JyBzbyBndXQgLi4uIGxlcm5zdCBEdSBuaXggaW4gZGVyCltUcnZlczpMaWxsZWJyb3JdIEF1c2JpbGR1bmc/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT2huZSBXb3J0ZSAoRGFya2xvciwgMTQuIE5vdiAyMDA0LCAwMTozNTo1OCk6Cn4jISBybj1MaWFyYSBydD0xMTAwMzkyNTAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMDM5MjUwMApUdXQgZGFzIG5pY2ggd2VoPyA7KQoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmEgaXMgZGVyIHdvaGwgYmVsaWVidD8gKE1vcmdvdGgsIDE0LiBOb3YgMjAwNCwgMDI6NTg6MjkpOgpBcmF0aG9ybiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKTWlzY2hpZWYgcnVmdDogRU5ETElDSCEKCk0qIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRWluZSB3aWNodGlnZSBGcmFnZSAoR3JpbW1ib3JuLCAxNC4gTm92IDIwMDQsIDAyOjU5OjIxKToKfiMhIHJuPVZhbmlvbiBydD0xMTAwMzY1NjEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMDI4MDQ1NQpEdSBmaW5kZXN0IGVoZXIsIGRhc3MgRGVpbmUgTWVpbnVuZyB6dSBkZW0gV2l0eiBlaW4gV2l0eiBpc3QsIG5hY2ggRGVpbmVyClJ1YnJpa2Vud2FobCB6dSB1cnRlaWxlbj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdWNoZSBuZXVlbiBCZXNpdHplciAoQW1hcnlsbGlzLCAxNC4gTm92IDIwMDQsIDE3OjMyOjI1KToKfiMhIHJuPVd1cnplbCBydD0xMTAwNDMzMzA0IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTEwMDM3ODI4MgpXaWVzbyBuaWNodD8gRHUga2FubnN0IGVzIGRvY2ggc2ljaGVyIGJyYXVjaGVuLCB3aWUgbWFuIGluIFJ1YnJpawoia29jaHJlemVwdGUiLCBBcnRpa2VsIDIsIGxlc2VuIGthbm4gOi0pKQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3VjaGUgbmV1ZW4gQmVzaXR6ZXIgKEhvYm8sIDE0LiBOb3YgMjAwNCwgMjE6MTQ6NTApOgp+IyEgb249R2xvaW5zb24gb3Q9MTEwMDQ1MTkxNiBvZz1zdWNoZS1iaWV0ZQp+IyEgcm49SG9ibyBydD0xMTAwNDUwMDM1IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTEwMDM3ODI4MgpOYWphLCBUcmFrZWhuZXIga29lbm5lbiB3aXIgYXVjaCBncmFkIG5vY2ggbmFjaHNjaGxhZ2VuLiBBYmVyIGRhcyBhZW5kZXJ0IGluCmRlbSBGYWxsIGFuIGRlbSBHZXNjaG1hY2sgbmljaHQgdmllbC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNXUiAzOiBQaXNhIFBvbGl6ZWkgKEJhbWJ1bGtvLCAxNS4gTm92IDIwMDQsIDEzOjUwOjE3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTAwMjU3OTc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMDE3MjE5MwpEYXMgd2FyIGVpbmZhY2ggZWluZSBVbWZyYWdlIHVudGVyIFNjaHVlbGVybiB6dSBTdC4gTWFydGluLiBEaWUgU2NodWVsZXJpbgp3b2xsdGUgZWlnZW50bGljaCBPYmxhdGVuIHNhZ2VuLi4uaGF0IGRpZXNlIGFiZXIgbWl0IFNjaGVpYmxldHRlbiB2ZXJ3ZWNoc2VsdC4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFN0dWRpZTogQWdncmVzc2lvbmVuIGdlZ2VuIENvbXB1dGVyIHNpbmQgbmljaHQgc2VsdGVuIChEZWVwYmx1ZSwgMTYuIE5vdiAyMDA0LCAxNjoxODoyOSk6Cn4jISBybj1ab29rIHJ0PTExMDA2MTgxOTYgcmc9d3d3Cn4jISB0aWQ9MTEwMDYxODEyMgpDb21wdXRlciBhdXMgZGVtIEZlbnN0ZXIgd2VyZmVuPyBEYXMgaXN0IGRvY2ggYXVjaCBuZSBGb3JtIHZvbgpyZWNobmVyYWJzdHVyei4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZWJheS4uLi4gKEJhbWJ1bGtvLCAxOC4gTm92IDIwMDQsIDEwOjMyOjIyKToKfiMhIHJuPUJhbWJpIHJ0PTExMDA3Njg4NjMgcmc9d3d3Cn4jISB0aWQ9MTEwMDY5ODQ2NwpJY2gga2FubiBoaWVyIGRvY2ggbmljaHQgbWVpbmUgaW50aW1zdGVuIFBoYW50YXNpZW4gYXVzcGxhdWRlcm4gOi0pCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogZWJheS4uLi4gKEJhbWJpLCAxOC4gTm92IDIwMDQsIDEwOjMzOjA2KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTExMDA3NzAzNDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAwNjk4NDY3CkRhbm4gc2NoaWNrIG1pciBuZSBNYWlsLiBJY2gga2FubnMgamEgZnVlciBEaWNoIHBvc3Rlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGViYXkuLi4uIChab29rLCAxOC4gTm92IDIwMDQsIDEwOjU4OjAyKToKfiMhIHJuPUJhbWJpIHJ0PTExMDA3NzAzODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAwNjk4NDY3CkFiZXIgYml0dGUgYW5vbnltaXNpZXJlbi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBlYmF5Li4uLiAoTW9udGFudXMsIDE4LiBOb3YgMjAwNCwgMTI6MDI6NDIpOgp+IyEgcm49Wm9vayBydD0xMTAwNzcxODgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMDY5ODQ2NwpEYXJhbiBtZXJrdCBtYW4sIGRhc3MgWm9vayB6dXZpZWwgU3RhdGlzdGlrZW4gbWFjaGVuIG11c3MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBlYmF5Li4uLiAoWm9vaywgMTguIE5vdiAyMDA0LCAxMjowMzowNik6Cn4jISBybj1Nb250YW51cyBydD0xMTAwNzc1NzYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMDY5ODQ2Nwpab29rIGphbW1lcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSXN0IGRhcyBub2NoIFNwb3J0PyAoQmFtYmksIDE4LiBOb3YgMjAwNCwgMjM6MTE6MzIpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTEwMDc5NTUyOCByZz13d3cKfiMhIHRpZD0xMTAwNzk1NTI4Ck1vdG9yc3BvcnQgaGFsdC4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCZWxlaWRpZ3VuZyBhbiBkaWUgZ2FuemUgU3BpZWxlcnNjaGFmdCB1bmQgYW4gZGllIE1hZ2llciAoQmFtYmksIDIxLiBOb3YgMjAwNCwgMTE6MzQ6MzkpOgp+IyEgcm49Sm9obnNpbHZlciBydD0xMTAxMDEwNzIyIHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD0xMTAxMDEwNzIyCk1vZWNodGVzdCBEdSBlaW5lbiBKb2IgaW4gZGVyIFBhcmF0cm9sbGhvZWhsZSBoYWJlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCZWxlaWRpZ3VuZyBhbiBkaWUgZ2FuemUgU3BpZWxlcnNjaGFmdCB1bmQgYW4gZGllIE1hZ2llciAoT2dvLCAyMS4gTm92IDIwMDQsIDE3OjQwOjI2KToKfiMhIHJuPUpvaG5zaWx2ZXIgcnQ9MTEwMTAxMDcyMiByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9MTEwMTAxMDcyMgpLb21tc3QgZHUgZXR3YSBuaWNodCBiZWltIEVtcG9lcmVuPwoKU0NOUgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJlbGVpZGlndW5nIGFuIGRpZSBnYW56ZSBTcGllbGVyc2NoYWZ0IHVuZCBhbiBkaWUgTWFnaWVyIChHbm9tZSwgMjIuIE5vdiAyMDA0LCAyMzowODowNik6Cn4jISBybj1Kb2huc2lsdmVyIHJ0PTExMDEwMTA3MjIgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTExMDEwMTA3MjIKYmlzIGF1ZiBnb2V0dGVyIHNpbmQgd2lyIGFsbGUgZW1wb3Jrb2VtbWxpbmdlLiBpbiBnZXdpc3NlciB3ZWlzZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCZWxlaWRpZ3VuZyBhbiBkaWUgZ2FuemUgU3BpZWxlcnNjaGFmdCB1bmQgYW4gZGllIE1hZ2llciAoR25vbWUsIDIyLiBOb3YgMjAwNCwgMjM6MDk6MDIpOgp+IyEgcm49TXVhZGliIHJ0PTExMDExMTMwNjAgcmc9cG9saXplaS5iZXNjaHdlcmRlbgp+IyEgdGlkPTExMDEwMTA3MjIKaWNoIHdlaXNzIGpldHp0IGdyYWQgd2lya2xpY2ggbmljaHQsIG9iIGljaCBsYWNoZW4gb2RlciB3ZWluZW4gc29sbC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCZWxlaWRpZ3VuZyBhbiBkaWUgZ2FuemUgU3BpZWxlcnNjaGFmdCB1bmQgYW4gZGllIE1hZ2llciAoQ2F0d2VhemxlLCAyMy4gTm92IDIwMDQsIDA3OjM1OjQ4KToKfiMhIHJuPUdub21lIHJ0PTExMDExNjEyODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAxMDEwNzIyClVuZCBkYXMgZ2lsdCBuaWNodCBtYWwgZnVlciBhbGxlIDopCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQmVsZWlkaWd1bmcgYW4gZGllIGdhbnplIFNwaWVsZXJzY2hhZnQgdW5kIGFuIGRpZSBNYWdpZXIgKFpvb2ssIDIzLiBOb3YgMjAwNCwgMDk6Mjk6MzMpOgp+IyEgb249Wm9vayBvdD0xMTAxMTk4NTY3IG9nPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHJuPU11YWRpYiBydD0xMTAxMTEzMDYwIHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD0xMTAxMDEwNzIyClVuZCBkYXMsIHdvIGljaCBuYWNod2Vpc2xpY2ggZGVyIGdyb2Vzc2UgRW1wb3Jrb2VtbWxpbmcgZGVzIE1HIGJpbi4gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCZWxlaWRpZ3VuZyBhbiBkaWUgZ2FuemUgU3BpZWxlcnNjaGFmdCB1bmQgYW4gZGllIE1hZ2llciAoTXVhZGliLCAyMy4gTm92IDIwMDQsIDEwOjI0OjE0KToKfiMhIHJuPVpvb2sgcnQ9MTEwMTE5ODU3MyByZz1zY2htYXJybgp+IyEgdGlkPTExMDEwMTA3MjIKaWNoIGJpbiBzaWNoIGJlc2Nod2VyZW5kZW4gc3BpZWx0ZWlsbmVobWVybiBpbW1lciBnZXJuZSB6dSBnZWZhbGxlbgp1bmQgd2VubiBkYXMgYW5kZXJlbiBzcGllbHRlaWxuZWhtZXJuIGFscyB3aWxsa3VlciBlcnNjaGVpbnQsIGRhbm4gc2luZCBzaWUKZ2FueiBvcmRpbmFlcmUgc3BpZWx0ZWlsbmVobWVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWVyIFJNIChNdWFkaWIsIDIzLiBOb3YgMjAwNCwgMTQ6NTA6MzkpOgp+IyEgcm49Tm9lbCBydD0xMTAxMjE3MzYzIHJnPWQucG9sYXIKfiMhIHRpZD0xMTAxMjE2ODY3CndpZSBkdSBiaXN0IG5vY2ggYW0gc2Nod2FmZWxuPwpodXNjaGh1c2NoIGFuIGRpZSBhcmJlaXQuCmh1bW5pLCBzZWkgbmljaHQgenUgcGx1ZXNjaGlnLCB0cmVpYiBpaG4gbWVoci4gCndpciBoYWJlbiB1bnMgZG9jaCBkYXJhdWYgZ2VlaW5pZ3QgZGFzcyBlciBibHV0IHNjaHdpdHplbiBzb2xsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXVlciBSTSAoTGlhcmEsIDIzLiBOb3YgMjAwNCwgMTg6NTk6MDQpOgp+IyEgcm49TXVhZGliIHJ0PTExMDEyMTc4Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAxMjE2ODY3Cldlbm4gaWhyIGRhIG1hbCBuZXQgQmx1dCBzY2h3aXR6dCAuLi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlaWNoZWkgKFBpdGZhbGwsIDIzLiBOb3YgMjAwNCwgMTg6NTk6MTIpOgpab29rIHJ1ZnQ6IFphcCBzaWUsIE11YWRpYiEgWmFwIHNpZSEgOykKRXJ3YXJ0ZXQgKG9mZmxpbmUpOiBab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1HLVBhcnR5IFhYVklJOiBCaXR0ZSB1ZWJlcndlaXNlbiEgKFZhcmRpb24sIDIzLiBOb3YgMjAwNCwgMTk6MzA6MDkpOgp+IyEgcm49QW5hdG9sIHJ0PTExMDExODc2OTUgcmc9cGFydHkKfiMhIHRpZD0xMDk5NDI3MzkyCkxhZCBkb2NoIGJpdHRlIGRpZSBIeWRyYSBlaW4sIGRpZSBkYXJmIHVucyBkYW5uIHN1YnZlbnRpb25pZXJlbi4KClZhcmRpb24KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV1ZXIgUk0gKEFtYXJ5bGxpcywgMjMuIE5vdiAyMDA0LCAyMToyNjoxOCk6Cn4jISBybj1Ob2VsIHJ0PTExMDEyMTczNjMgcmc9ZC5wb2xhcgp+IyEgdGlkPTExMDEyMTY4NjcKSmEgaXN0IGRlbm4gaW0gUG9sYXIgc2Nob24gV2VpaG5hY2h0ZW4/IDopCgpBbWEqLCBncmF0c2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZlcmVpbnNrb250byByZXZpc2l0ZWQgKEdsb2luc29uLCAyNC4gTm92IDIwMDQsIDEwOjE0OjEwKToKfiMhIHJuPU1haGFyZXQgcnQ9MTEwMTI4NzUwNiByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTEwMTI4NzUwNgoiU29iYWxkIHNpY2ggbWVociBhbHMgMTAwMCBFdXJvIGF1ZiBkZW0gS29udG8gYmVmaW5kZW4sIHNvIG11ZXNzZW4gZGllc2UKZ2VtZWluc2NoYWZ0bGljaCB2ZXJzb2ZmZW4gd2VyZGVuLCBkYSAoYSkgZGVyIFJlY2huZXIgZnVlciBkaWUgQW56YWhsCmludGVyZXNzaWVydGVyIFNwaWVsZXIgb2huZWhpbiB6dSBzY2huZWxsIGlzdCB1bmQgKGIpIGRlciBWb3JzdGFuZCBkYW1pdCBuaWUKdWViZXIgbWVociBhbHMgMTAwMCBFdXJvIHZlcmZ1ZWdlbiBrYW5uLiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSG9jaHplaXRzZWlubGFkdW5nIChMaWFyYSwgMjUuIE5vdiAyMDA0LCAxMzo0NjoxNCk6Cn4jISBybj1NZXNpcmlpIHJ0PTExMDEzNDA1ODYgcmc9cGFydHkuYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTExMDEzNDA1ODYKVW5kIGRpZSBUYW56a3Vyc2UgZmFsbGVuIGF1cyBvZGVyIHdpZSAuLi4gOykpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIb2NoemVpdHNlaW5sYWR1bmcgKFZhbmhlbHNpbmcsIDI1LiBOb3YgMjAwNCwgMTM6NDc6MzgpOgp+IyEgcm49TGlhcmEgcnQ9MTEwMTM4Njc3NCByZz1zY2htYXJybgp+IyEgdGlkPTExMDEzNDA1ODYKbmVpbi4gU2llIHdpbGwgZGllIGRhbmFjaCBhdWNoIG5vY2ggbWFjaGVuLgprZWluZSBBbmdzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSG9jaHplaXRzZWlubGFkdW5nIChEYXJrbG9yLCAyNS4gTm92IDIwMDQsIDE1OjQ4OjMwKToKfiMhIHJuPVZhbmhlbHNpbmcgcnQ9MTEwMTM4Njg1OCByZz1zY2htYXJybgp+IyEgdGlkPTExMDEzNDA1ODYKTmEgd2llIHNhZWggZGFzIGRlbm4gYXVzIC0gZWluZSBIb2NoemVpdHNmZWllciBvaG5lIFRhbno/IC0gdW5kIGltbWVyIHNjaG9uCm1pdCBkZXIgS2FtZXJhIGRhdGF1ZmhhbHRlbiAtIGRhcyBwcm9kdXppZXJ0IGJlc3RpbW10IGVpbiBwYWFyIG5ldHRlCkJpbGRlcmNoZW4uLi4gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEhvY2h6ZWl0c2VpbmxhZHVuZyAoQmFib29uLCAyNS4gTm92IDIwMDQsIDE2OjAyOjAzKToKfiMhIHJuPURhcmtsb3IgcnQ9MTEwMTM5NDExMCByZz1zY2htYXJybgp+IyEgdGlkPTExMDEzNDA1ODYKSmEga2xhciwgdW5kIGRhbm4gZHVlcmZlbiB3aXIgZGVtbmFlY2hzdCBhdWYgUlRMIDIKZGllICJkdWVtbXN0ZW4gbXVkZGVyIGRlciB3ZWx0IiBiZXd1bmRlcm4uCm9kZXIgd2llPyA6LSkKCkJhYm9vbihNaXRnbGllZCBiZWkgZGVuIGFub255bWVuIFRhbnpiYWVyZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBIb2NoemVpdHNlaW5sYWR1bmcgKERhcmtsb3IsIDI1LiBOb3YgMjAwNCwgMTY6NTI6MTgpOgp+IyEgcm49QmFib29uIHJ0PTExMDEzOTQ5MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAxMzQwNTg2Ck5hIGtsYXIgLSB3b3p1IHNvbGwgZGFzIGRlbm4gc29uc3QgZ3V0IHNlaW4/IDspCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhvY2h6ZWl0c2VpbmxhZHVuZyAoR2xvaW5zb24sIDI3LiBOb3YgMjAwNCwgMTQ6Mjg6NDYpOgp+IyEgcm49UGFtcGVycyBydD0xMTAxNTYyMDc2IHJnPWFuemVpZ2VuCn4jISB0aWQ9MTEwMTM0NDUxMwpEdSBrb21tc3QgbmljaHQgdmllbCBhdXMgZGVyIFdvaG51bmcgZGVpbmVyIEVsdGVybj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBcmsgYXVmd2VydGVuIChBcmF0aG9ybiwgMjkuIE5vdiAyMDA0LCAyMjozMzo0OCk6CkdyYWQgZWJlbiB1bnRlciBNdXJhZGhzIFR1cm06CgpFaW4gV2FuZGxlciB3YWJlcnQgaGVyZWluLgoKRHUgdGFldHNjaGVsc3QgZGVtIFdhbmRsZXIgZGVuIEtvcGYuCgpEZXIgV2FuZGxlciBsYWVjaGVsdCBEaWUgU2FldXJlIG1pbGRlIGFuIHVuZCBzYWd0OiBXZW5uIER1IG1hbCBncm9zcyBiaXN0LApEZXIgV2FuZGxlciBsYWVjaGVsdCBEaWUgU2FldXJlIG1pbGRlIGFuIHVuZCBzYWd0OiBldmVudHVlbGwuLi4KCgpBcmF0aG9ybiwgZ3JpbnNlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXJrIGF1ZndlcnRlbiAoQ3JvZnQsIDMwLiBOb3YgMjAwNCwgMDA6MjU6NDkpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTEwMTc2NDAyOCByZz1zY2htYXJybgp+IyEgdGlkPTExMDE3NjQwMjgKVHlwbyA6PgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVmlvbGluZS9RdWVyZmxvZXRlL09ib2Ugc2FtdCBTcGllbGVyL2luIGdlc3VjaHQhIChab29rLCAzMC4gTm92IDIwMDQsIDA4OjU5OjA0KToKfiMhIHJuPVNoYWtlZGJlZXIgcnQ9MTEwMTc2NDUxMCByZz1wYXJ0eQp+IyEgdGlkPTExMDE3NjQzNDYKV2lsbCBqYSBuaXggc2FnZW4sIGFiZXIgd2VubiBEdSBuZW4gMS80IFN0cmVpY2hxdWFydGV0dCBzdWNoc3QuLi4uIHdhcyB3aWxsc3QKRHUgZGFubiBtaXQgZWluZW0gT2JvZW4tU3BpZWxlci4uLj8gOykKClpvb2sgc2VociBnZXNwYW5udCBhdWYgZGllIEF1ZmZ1ZWhydW5nLgouLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVmlvbGluZS9RdWVyZmxvZXRlL09ib2Ugc2FtdCBTcGllbGVyL2luIGdlc3VjaHQhIChBbGtvaG9sLCAzMC4gTm92IDIwMDQsIDA5OjE2OjUyKToKfiMhIHJuPVpvb2sgcnQ9MTEwMTgwMTU0NCByZz1zY2htYXJybgp+IyEgdGlkPTExMDE3NjQzNDYKd2VpbHMgYXVjaCBmbG9ldGVuLSB1bmQgb2JvZW5xdWFydGV0dGUgZ2lidCwgZGFzIHd1ZXJkZSBkYW5uIGdlbmF1IHBhc3NlbiB2b24KZGVyIEJlc2V0enVuZy4KCkFsawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBpY2ggYmluIGltIHVybGF1YiAoR2xvaW5zb24sIDMwLiBOb3YgMjAwNCwgMTg6MjE6MjcpOgp+IyEgcm49VmFuaW9uIHJ0PTExMDE4MzUxNDMgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTExMDE4MDc5MDEKRGFzIGlzdCBkb2NoIHVud2FocnNjaGVpbmxpY2gsIGZ1ZXIgZGljaCBnaWJ0IGVzIG5pY2h0IGdlbnVnIEJsZWkgZG9ydC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBWaW9saW5lL1F1ZXJmbG9ldGUvT2JvZSBzYW10IFNwaWVsZXIvaW4gZ2VzdWNodCEgKFNoYWtlZGJlZXIsIDMwLiBOb3YgMjAwNCwgMTg6MjM6MzUpOgp+IyEgb249U2hha2VkYmVlciBvdD0xMTAxODM1MzY5IG9nPXBhcnR5Cn4jISBybj1BbGtvaG9sIHJ0PTExMDE4MjMzNzAgcmc9cGFydHkKfiMhIHRpZD0xMTAxNzY0MzQ2CkJyYXVjaHQgQm9pbmcgZGllIFNhaXRlbiBmdWVyIG5lIFF1ZXJmbG9ldGUgb2RlciBkb2NoIGZ1ZXIgZWluZSBPYm9lPwoKU2hha3kuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBWaW9saW5lL1F1ZXJmbG9ldGUvT2JvZSBzYW10IFNwaWVsZXIvaW4gZ2VzdWNodCEgKE11YWRpYiwgMzAuIE5vdiAyMDA0LCAxOTowOTozOSk6Cn4jISBybj1TaGFrZWRiZWVyIHJ0PTExMDE4MzU0MTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAxNzY0MzQ2CmZ1ZXIgbmUgbWF1bHRyb21tZWwsIG1lbnNjaCEgaXN0IGRvY2gga2xhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSG9jaHplaXRzZWlubGFkdW5nIChLZWxseWJ1bmR5LCAzMC4gTm92IDIwMDQsIDIwOjM2OjM1KToKfiMhIHJuPURhcmtsb3IgcnQ9MTEwMTM5NDExMCByZz1zY2htYXJybgp+IyEgdGlkPTExMDEzNDA1ODYKSG9jaHplaXRzZmVpZXIgbWl0IFRhbno/Pz8/IT8gUGFoIHdpZSBhYmdlc2NobWFja3QuIE1hY2h0IGRvY2ggbWFsIGxpZWJlciBuZQpIb2NoemVpdHNmZWllciBtaXQgenVlbmZ0aWdlbSBQcmllc3RlcmtpbGxlbi4KS2VsbHksIGltbWVyIGZ1ZXIga3JlYXRpdmUgVm9yc2NobGFlZ2UgZ3V0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSG9jaHplaXRzZWlubGFkdW5nIChHbG9pbnNvbiwgMzAuIE5vdiAyMDA0LCAyMDo1ODozOCk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTExMDE4NDMzOTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAxMzQwNTg2ClZlcnN1Y2ggbWFsIGRvcnQgZWluZW4gUHJpZXN0ZXIgenUgZmluZGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGljaCBiaW4gaW0gdXJsYXViIChNYWhhcmV0LCAgMS4gRGV6IDIwMDQsIDAwOjI3OjExKToKfiMhIHJuPUdsb2luc29uIHJ0PTExMDE4MzUyODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAxODA3OTAxCkljaCBrbGFtbWVyIG1pY2ggYW4gaWhtIGZlc3QsIGRhcyBwYXNzdCBzY2hvbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGljaCBiaW4gaW0gdXJsYXViIChHbG9pbnNvbiwgIDEuIERleiAyMDA0LCAwMDoyODoyNyk6Cn4jISBybj1NYWhhcmV0IHJ0PTExMDE4NTcyMzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAxODA3OTAxCk5pbW0gZGVuIE11bmQsIGFlaCBkaWUgSGFlbmRlIG5pY2h0IHNvIHZvbGwuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogaWNoIGJpbiBpbSB1cmxhdWIgKE1haGFyZXQsICAxLiBEZXogMjAwNCwgMDA6Mjg6NDcpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwMTg1NzMwNyByZz1zY2htYXJybgp+IyEgdGlkPTExMDE4MDc5MDEKcnBuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBpY2ggYmluIGltIHVybGF1YiAoR2xvaW5zb24sICAxLiBEZXogMjAwNCwgMDA6MzU6NTcpOgp+IyEgcm49TWFoYXJldCBydD0xMTAxODU3MzI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMTgwNzkwMQpJY2ggZ2xhdWIgZGFubiBmdW5rdGlvbmllcnQgZGFzIG1pdCBkZW0gR2V3aWNodCBhYmVyIG5pY2h0LiBTY2hhdHRlbmJsZWkgZ2VodApuaWNodCAuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBpY2ggYmluIGltIHVybGF1YiAoVmFuaW9uLCAgMS4gRGV6IDIwMDQsIDA4OjEyOjQ0KToKfiMhIHJuPUdsb2luc29uIHJ0PTExMDE4NTc3NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAxODA3OTAxCkFsc28gaW0gQmFudGVyIFNlZSAoQnJhY2t3YXNzZXIpIHJlaWNoZW4gNS02a2csIGljaCBkZW5rIG1hbCBzZWxic3QgaW0gcm90ZW4KTWVlciByZWljaGVuIG1pciA4LiA6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGljaCBiaW4gaW0gdXJsYXViIChNdWFkaWIsICAxLiBEZXogMjAwNCwgMTA6MTM6MTUpOgp+IyEgcm49VmFuaW9uIHJ0PTExMDE4ODUxNjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAxODA3OTAxCmFuZ2ViZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmhvY2h6ZWl0c3N0cmVzcyAoQmlyZHksICAyLiBEZXogMjAwNCwgMjE6NDY6MDIpOgpEdSB0ZWlsc3QgTWFoYXJldCBtaXQ6IGF1ZmdlcmVndD8KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4KTWFoYXJldCB0ZWlsdCBEaXIgbWl0OiBnZXN0cmVzc3QKCnVuZ2VzY2huaXR0ZW4gKmcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaG9jaHplaXRzc3RyZXNzIChWYW5pb24sICAyLiBEZXogMjAwNCwgMjE6NDY6MzApOgp+IyEgcm49QmlyZHkgcnQ9MTEwMjAyMDM2MiByZz1zY2htYXJybgp+IyEgdGlkPTExMDIwMjAzNjIKUmVnIHNpZSBuaWNoIG5vY2ggYXVmLiBTaWUgY3Jhc2h0IHNvbnN0IGRhcyBNdWQgOikKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGhvY2h6ZWl0c3N0cmVzcyAoQW1hcnlsbGlzLCAgMi4gRGV6IDIwMDQsIDIxOjQ4OjA2KToKfiMhIHJuPVZhbmlvbiBydD0xMTAyMDIwMzkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMjAyMDM2MgpXZW5uIHNpZSBlcyBuaWNodCBzY2hhZmZ0LCBkYXJmIGljaCBkYW5uPwoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogaG9jaHplaXRzc3RyZXNzIChNb29uc2hpbmUsICAyLiBEZXogMjAwNCwgMjE6NDk6MDgpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTExMDIwMjA0ODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAyMDIwMzYyCk1lc2kgaGVpcmF0ZW4gb2RlciB3YXMgbWVpbnN0IER1LCBBbWEqPyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuZ2xhdWJsaWNoISAoSHVtbmksICA0LiBEZXogMjAwNCwgMDc6MjA6NDApOgpEYXMgaGFiIGljaCB3aXJrbGljaCBld2lnIG5pY2h0IG1laHIgZXJsZWJ0Lgo+IGZrbnVkZGVsCkRlcnplaXQgaXN0IGFiZXIga2VpbmVyIERlaW5lciBGcmV1bmRlIGFud2VzZW5kIC4uLgo+IGZ3ZXIKV2lyIHNpbmQgYWxsZSBEZWluZSBGcmV1bmRlLgoKT2huZSBtaXQgbWVpbmVtIGdyb3NzZW4gRkJhbmQgYW5nZWJlbiB6dSB3b2xsZW46IERBUyBoYWIgaWNoIHdpcmtsaWNoIGxhbmdlCm5pY2h0IG1laHIgZXJsZWJ0LiBXaW50ZXJidXJnIHVuZCBTYW1zdGFnIG1vcmdlbiwgbmEgZ3V0LiA7LSkKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW5nbGF1YmxpY2ghIChEYXJrbG9yLCAgNC4gRGV6IDIwMDQsIDE1OjUyOjU1KToKfiMhIHJuPUh1bW5pIHJ0PTExMDIxNDEyNDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAyMTQxMjQwClRqYSBkYSBoYXN0ZSB3b2hsIGRpZSBmYWxzY2hlbiBGcmV1bmRlLi4uIDspCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpob2NoemVpdCAoSm9uLCAgNC4gRGV6IDIwMDQsIDE3OjU5OjA0KToKaGksCgp2b24gbWlyIHNjaG9ubWFsIGhlcnpsaWNoZW4gZ2x1ZWNrd3Vuc2NoIHp1ciBIb2NoemVpdC4KSWNoIHd1ZW5zY2hlIGV1Y2ggYWxsZXMgZ3V0ZQoKR3J1c3MgCmpvbig0LjEyLjA0KSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVuZ2xhdWJsaWNoISAoQXJhdGhvcm4sICA1LiBEZXogMjAwNCwgMTc6NTA6NDYpOgp+IyEgcm49RGFya2xvciBydD0xMTAyMTcxOTc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMjE0MTI0MApOZWluLCBpbSBHZWdlbnRlaWwuIFdlbm4gbWFuIHNlbGJlciBlaW4gcGFhciBTdHVuZGVuIHNwYWV0ZXIgaW4gZGVyIEdld2lzcy0KaGVpdCBoaW5mYWhyZW4ga2FubiwgZGFzcyBhbGxlIG1vbWVudGFuIFZlcm1pc3N0ZW4gc2Nob24gZG9ydCBzaW5kLCBoYXQgbWFuCmdlcmFkZSBkaWUgcmljaHRpZ2VuIEZyZXVuZGUgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW5nbGF1YmxpY2ghIChab29rLCAgNS4gRGV6IDIwMDQsIDE5OjA0OjQ3KToKfiMhIHJuPUh1bW5pIHJ0PTExMDIxNDEyNDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAyMTQxMjQwClNjaGF1IG1hbCBhdWYgZGllIFVzZXItU3RhdGlzdGlrIGF1ZiBkZXIgV2Vic2VpdGUsIGRhcyBpc3QgYmVpbSBTYW1zdGFnIGF1Y2gKZWluIGdlaG9lcmlnZXIgS25pY2suCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSG9lcmV0LCBkaWUgU2VoZXJpbiBzcHJpY2h0LiAoQXJhdGhvcm4sICA1LiBEZXogMjAwNCwgMjA6MzI6MDcpOgpBbGtvaG9sIGlzdCBlaW4gdW50YWRlbGlnZXIgdW5kIGJyYXZlciB1bmQgdm9yIGFsbGVtIHVuc2NodWxkaWdlciBCdWVyZ2VyLgpIdXJheHByYXggc2FndDogZXJzY2hpZXNzdCBhbGtvaG9sIQpbQWxsZ2VtZWluOkFuYXRvbF0gZWlucy4uLiB6d2VpLi4uIERSRUkhICphdWYgYWxrb2hvbCB6aWVsKiA6KQoKQXJhdGhvcm4sIGVyc3RhdW50LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZSAuLi4gKExpYXJhLCAgOC4gRGV6IDIwMDQsIDE1OjIyOjU2KToKClN1ZWRvZXN0bGljaCBlaW5lciBNYXJtb3JncnVmdC4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWR3ZXN0ZW4sIG5vcmR3ZXN0ZW4gdW5kIHN1ZWRvc3Rlbi4KRWluZSBFaXNwcmluemVzc2luLgpFaW4gbWFnaXNjaGVzIFBvcnRhbC4KRWluIDAvOC8xNSBTdGFuZGFyZC1TZWhlcmhhdXMuCkRpZSBFaXNwcmluemVzc2luIHN0cmVpY2hlbHQgdWViZXIgSWhyZW4gRWlzemFwZmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9obmUgV29ydGUgLi4uIChEYXJrbG9yLCAgOC4gRGV6IDIwMDQsIDE3OjA5OjU2KToKfiMhIHJuPUxpYXJhIHJ0PTExMDI1MTU3NzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAyNTE1Nzc2ClVuZCBkYXMgenUgZGllc2VyIFVocnplaXQuLi4gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogT2huZSBXb3J0ZSAuLi4gKENyb2Z0LCAgOC4gRGV6IDIwMDQsIDE3OjEyOjMwKToKfiMhIHJuPURhcmtsb3IgcnQ9MTEwMjUyMjE5NiByZz1zY2htYXJybgp+IyEgdGlkPTExMDI1MTU3NzYKV2FzIGlzdCBhbiBkZXIgVWhyemVpdCB2ZXJrZWhydD8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgYmVzdGVuIFdlZ21lbGR1bmdlbiAuLi4gKExpYXJhLCAgOC4gRGV6IDIwMDQsIDE4OjAwOjQwKToKTm9lbCBpc3QgYWxzIGFid2VzZW5kIGdla2VubnplaWNobmV0LgpHcnVuZDogaXJnZW5kd2FzIHR1bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBiZXN0ZW4gV2VnbWVsZHVuZ2VuIC4uLiAoR2xvaW5zb24sICA4LiBEZXogMjAwNCwgMTg6MDU6MjIpOgp+IyEgcm49TGlhcmEgcnQ9MTEwMjUyNTI0MCByZz1zY2htYXJybgp+IyEgdGlkPTExMDI1MjUyNDAKRGllIGJlc3RlIFdlZ21lbGR1bmcgd2FlciBhbGxlcmRpbmdzICJtdWRkZSBnZXJhZGUiLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoQW55c2lkb3JhLCAgOC4gRGV6IDIwMDQsIDE5OjUzOjEzKToKRGVpbiBGcmV1bmQgUm9sYW5kIHRlaWx0IERpciBtaXQ6IGh1Y2ggd28gYmluIGljaCBudW4KRGVpbiBGcmV1bmQgUm9sYW5kIHRlaWx0IERpciBtaXQ6IG9oIGRhcyB3YXIgZGVyIGVpbmdhbmcgLi4gd2VpYSAKRGVpbiBGcmV1bmQgUm9sYW5kIHRlaWx0IERpciBtaXQ6IGhpbXBmIC4uIGRhcyB3YXIgc2ljaGVyIGZhbHNjaCA6LSkKCltUb2Q6TGFyc10gRWluIGZldXJpZ2VyIFNjaGx1bmQgaGF0IGdlcmFkZSBSb2xhbmQgdW1nZWJyYWNodApbVG9kOkVpbiBmZXVyaWdlciBTY2hsdW5kIGhhdCBSb2xhbmQgaW0gTXVuZC5dCgpBbnkqLCBraWNoZXJuZCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIGJlc3RlbiBXZWdtZWxkdW5nZW4gLi4uIChMaWFyYSwgIDguIERleiAyMDA0LCAyMTo1Nzo1Mik6CktpcmlhIGlzdCBhbHMgYWJ3ZXNlbmQgZ2VrZW5uemVpY2huZXQuCkdydW5kOiBhYndlc2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIGJlc3RlbiBXZWdtZWxkdW5nZW4gLi4uIChMaWFyYSwgIDkuIERleiAyMDA0LCAxNTozOTowMyk6CgpBbGtvaG9sIGlzdCBhbHMgYWJ3ZXNlbmQgZ2VrZW5uemVpY2huZXQuCkdydW5kOiBhcmJlaXRzaWRsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBiZXN0ZW4gV2VnbWVsZHVuZ2VuIC4uLiAoTW9udGFudXMsICA5LiBEZXogMjAwNCwgMTU6NDY6MzIpOgp+IyEgcm49TGlhcmEgcnQ9MTEwMjYwMzE0MyByZz1zY2htYXJybgp+IyEgdGlkPTExMDI2MDMxNDMKcG9laCwgamV0enQgZ2ViZSBpY2ggbWlyIHNvIG5lIE11ZWhlIGluIG1laW5lbiBXZWdtZWxkdW5nZW4sIHVuZCBzY2hhZmZlIGVzCm5pY2h0IG1hbCB6dSBlaW5lciBFcndhZWhudW5nIGluIFNjaG1hcnJuLiBJY2ggZ2VicyBhdWYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERpZSBiZXN0ZW4gV2VnbWVsZHVuZ2VuIC4uLiAoTGlhcmEsICA5LiBEZXogMjAwNCwgMTU6NDc6MzgpOgp+IyEgcm49TW9udGFudXMgcnQ9MTEwMjYwMzU5MiByZz1zY2htYXJybgp+IyEgdGlkPTExMDI2MDMxNDMKSG0sIGhhc3QgamEgaW1tZXJoaW4gMiBTdHVuZGVuIGR1cmNoZ2VoYWx0ZW4uIDo+IEljaCBoYWJlIGhpZXIgZWluZW4gTmFtZW4genUKdmVybGllcmVuIC4uLiA7KSkpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEaWUgYmVzdGVuIFdlZ21lbGR1bmdlbiAuLi4gKE1vbnRhbnVzLCAgOS4gRGV6IDIwMDQsIDE1OjQ5OjE0KToKfiMhIHJuPUxpYXJhIHJ0PTExMDI2MDM2NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTAyNjAzMTQzCldlbm4gZHUgZGVpbmVuIE5hbWVuIHZlcmxpZXJzdC4uLiBNdWFkaWIgaGF0IHNpY2hlciBpcmdlbmR3byBlaW5lbgpOYW1lbnNnZW5lcmF0b3IsIGRlciBlcnNjaGFmZnQgZGlyIGRhbm4gZWluZW4gbmV1ZW4gd2llICJrbnVmZm9uayIgb2RlciBzbwphZWhubGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERpZSBiZXN0ZW4gV2VnbWVsZHVuZ2VuIC4uLiAoTGlhcmEsICA5LiBEZXogMjAwNCwgMTU6NDk6NTQpOgp+IyEgcm49TW9udGFudXMgcnQ9MTEwMjYwMzc1NCByZz1zY2htYXJybgp+IyEgdGlkPTExMDI2MDMxNDMKTXVhZGliIGlzdCBpbiBBZWd5cHRlbiwgd2FzIG1hY2hlIGljaCBzbyBsYW5nZSBvaG5lIE5hbWVuIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWUgYmVzdGVuIFdlZ21lbGR1bmdlbiAuLi4gKEdub21lLCAgOS4gRGV6IDIwMDQsIDE1OjUwOjMyKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTExMDI2MDM1OTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAyNjAzMTQzCmRpZSB0b3BsaXN0ZSBkZXIgYmVzdGVuIHdlZ21lbGR1bmcgZnVlaHJ0IGFsbGVyZGluZ3MgaW1tZXIgbm9jaCBkYXJrd2luZyBhbi4Kdm9yIGxhbmdlciB6ZWl0IGhhdHRlIGVyIHNpY2ggbWFsIGdlc2V0enQ6ICJrdWVobHNjaHJhbmsgYXVmcmFldW1lbiIuCgp1bmQgZXIgd2FyIHp1bSB6ZWl0cHVua3QgbWVpbmVzIGFuc3ByZWNoZW5zIHNlaXQgY2EuIDhoIGlkbGUuIDopCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRGllIGJlc3RlbiBXZWdtZWxkdW5nZW4gLi4uIChNb250YW51cywgIDkuIERleiAyMDA0LCAxNTo1MToxMik6Cn4jISBybj1MaWFyYSBydD0xMTAyNjAzNzk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMjYwMzE0MwpEYXMgaGF0dGUgaWMgbmljaHQgYmVkYWNodC4gQWxzbyBva2VlLCB2ZXJsaWVyIG1hbCBpbiBkZW4gbmFlY2hzdGVuIDIgV29jaGVuCmRlaW5lbiBOYW1lbiBuaWNodC4gT2RlciBoYWVuZyBzbyBlaW4ga29taXNjaGVzIFBpZXBzLURpbmcgZHJhbiwgZGFzIGF1ZiBlaW5lbgpiZXN0aW1tdGVuIFBmZWlmdG9uIHJlYWdpZXJ0IHVuZCBtaXQgZGVtIG1hbiBpbW1lciBmcmVtZGUgQXV0b3NjaGx1ZXNzZWwKZmluZGV0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGllIGJlc3RlbiBXZWdtZWxkdW5nZW4gLi4uIChMaWFyYSwgIDkuIERleiAyMDA0LCAxNTo1MTo0NCk6Cn4jISBybj1Hbm9tZSBydD0xMTAyNjAzODMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMjYwMzE0MwpKbywgZGFzIHdhciBiZXN0aW1tdCBub2NoIGluIEFhY2hlbiwgZGEgd2FyZW4gOCBoIHdlbmlnIGZ1ZXIgZGllIEV0YWdlIC4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGllIGJlc3RlbiBXZWdtZWxkdW5nZW4gLi4uIChNb250YW51cywgIDkuIERleiAyMDA0LCAxNTo1MjozMCk6Cn4jISBybj1MaWFyYSBydD0xMTAyNjAzOTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMjYwMzE0Mwprb21tdCBqYSBhdWNoIGRyYXVmIGFuLCB3aWUgbWFuIGRlbiBrdWVobHNjaHJhbmsgYXVmcmFldW10LiB3ZW5uIG1hbgpnZW51ZXNzbGljaCBhbGxlcyBpbiBkZW4gTWFnZW4gdW1zY2hpY2h0ZXQsIGthbm4gZGFzIGxhZW5nZXIgZGF1ZXJuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRGllIGJlc3RlbiBXZWdtZWxkdW5nZW4gLi4uIChMaWFyYSwgIDkuIERleiAyMDA0LCAxNTo1NDoxOCk6Cn4jISBybj1Nb250YW51cyBydD0xMTAyNjAzOTUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMjYwMzE0MwpOZWluLCBkYSB3YXIgbnVyIG5vY2ggd2FzIEdlbnVlc3NsaWNoZXMgZnVlciBkZW4gS29tcG9zdGhhdWZlbiAuLi4gOj4gKmVyZmluZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IERpZSBiZXN0ZW4gV2VnbWVsZHVuZ2VuIC4uLiAoS2VsbHlidW5keSwgIDkuIERleiAyMDA0LCAyMDozOTozNSk6Cn4jISBybj1MaWFyYSBydD0xMTAyNjA0MDU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMjYwMzE0MwpIZWhlLiBEaWUgZWluZSBIYWVsZnRlIGRlcyBLdWVobHNjaHJhbmtpbmhhbHRlcyBsZWJ0ZSBub2NoLCBkaWUgYW5kZXJlIHNjaG9uCndpZWRlci4gS2VubiBpY2ggYXVzIG1laW5lbiBTdHVkZW50ZW56ZWl0ZW4gOy0pCgpLZWxseSwgc2ljaCBXRy1lcnByb2J0IG91dGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VyYWRlIGluIG1laW5lbSBTZWhlcmhhdXMgLi4uICg/Pz8pIChMaWFyYSwgIDkuIERleiAyMDA0LCAyMDo1ODoyOCk6CkluIGRlciBrdWVobGVuLCBtaXQgbnVyIHdlbmlnIEVpbnJpY2h0dW5nIHZlcnNlaGVuZW4gSGFsbGUgZmFlbGx0IERpciB2b3IKYWxsZW0gZWluZSBncm9zc2UgU3RhbmR1aHIgYXVmLiBad2VpIEZlbnN0ZXIgenUgYmVpZGVuIFNlaXRlbiBkZXIgVHVlciBsYXNzZW4KdmllbCBMaWNodCBpbiBkZW4gUmF1bS4KRXMgZ2lidCBzZWNocyBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvYmVuLCBvc3RlbiwgdW50ZW4sIHJhdXMsIHN1ZWRlbiB1bmQKbm9yZG9zdGVuLgpFaW5lIHJpZXNpZ2UgYWx0ZSBTdGFuZHVociAoZ2VzY2hsb3NzZW4pLgpEaWUgVHJ1aGUgc2llaHQgZGljaCBTRUhSIGJvZXNlIGFuISAKU2NoZWluYmFyIGdsYXVidCBzaWUsIGRhc3MgZHUgS2VsbHlCdW5keSBiZWRyb2hlbiB3aWxsc3QhCgpJcyBrbGEgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2VyYWRlIGluIG1laW5lbSBTZWhlcmhhdXMgLi4uICg/Pz8pIChab29rLCAgOS4gRGV6IDIwMDQsIDIxOjAxOjM4KToKfiMhIHJuPUxpYXJhIHJ0PTExMDI2MjIzMDggcmc9c2NobWFycm4KfiMhIHRpZD0xMTAyNjIyMzA4CkFjaCBESUUgVHJ1aGUgOykKClpvb2sga2ljaGVydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR2VyYWRlIGluIG1laW5lbSBTZWhlcmhhdXMgLi4uICg/Pz8pIChMaWFyYSwgIDkuIERleiAyMDA0LCAyMTowMjozMik6Cn4jISBybj1ab29rIHJ0PTExMDI2MjI0OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTAyNjIyMzA4Ck5hamEsIGlyZ2VuZHdpZSBmdWVobHRlIGljaCBtaWNoIGJlZHJvaHQuIDspICpzdGFuZHVociBtdXN0ZXIqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS3J5bGFpbGVyIChab29rLCAxMS4gRGV6IDIwMDQsIDE4OjE4OjM0KToKfiMhIG9uPVpvb2sgb3Q9MTEwMjc4NTUwOCBvZz1kLmluc2Vsbgp+IyEgcm49TWlyaWwgcnQ9MTEwMjc4NTA1OCByZz1kLmluc2Vsbgp+IyEgdGlkPTExMDI3ODUwNTgKV2FzIGdlbmF1IGlzdCBhbiAiRGVyIGxldHp0ZSBTcGllbGVyLCBkZXIgZ2VodCwgc3RpcmJ0IiBzY2hsZWNodD8gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEtyeWxhaWxlciAoRGFya2xvciwgMTEuIERleiAyMDA0LCAxODozMzo0MSk6Cn4jISBybj1ab29rIHJ0PTExMDI3ODU1MTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAyNzg1MDU4CkVyIHN0aXJidCBiZWltIGZsaWVoZW4/CgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEtyeWxhaWxlciAoQmFtYmksIDExLiBEZXogMjAwNCwgMjA6NTA6NTMpOgp+IyEgcm49Wm9vayBydD0xMTAyNzg1NTE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMjc4NTA1OApWaWVsbGVpY2h0IHdhciBlcyBzY2hsZWNodCwgZGFzcyBlciBuaWNodCBzdGlyYnQsIHdlbm4gZXIgZWluIENoYW90IGlzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBiZXN0ZW4gV2VnbWVsZHVuZ2VuIC4uLiAoTGlhcmEsIDEyLiBEZXogMjAwNCwgMDE6MDQ6MzQpOgpOb3JhbmVrbyBpc3QgYWxzIGFid2VzZW5kIGdla2VubnplaWNobmV0LgpHcnVuZDogcnVtc3RlaGVuIHVuZCBhbHQgd2VyZGVuCnplaXQKU29uLCAxMi4gRGV6IDIwMDQsIDAxOjA0OjAwLgoKV29obGdlbWVya3QgaXN0IGVyIGdhciBuaWNodCBpZGxlLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBiZXN0ZW4gV2VnbWVsZHVuZ2VuIC4uLiAoT3JrdG9ldGVyLCAxMi4gRGV6IDIwMDQsIDAxOjIyOjIyKToKfiMhIHJuPUxpYXJhIHJ0PTExMDI4MDk4NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAyODA5ODc0CmplZGVyIGZhZW5ndCBtYWwga2xlaW4gYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhYmVpIGlzdCBlcyBub2NoIG5pY2h0IG1hbCAyMyBVaHIuLi4gKE1lZGljLCAxMi4gRGV6IDIwMDQsIDE4OjAyOjIxKToKRWJlbiBhdWYgZGVtIEZiYW5kOgoKW0ZyZXVuZGU6YV0gd2lyIHdvbGxlbiBoYWx0IGF1Y2ggbWFsIHdhcyB6d2lzY2hlbgpbRnJldW5kZTphXSBkZW4gYmVpbmVuIGhhYmVuLCBkIDspCltGcmV1bmRlOmJdIEEhISEKW0ZyZXVuZGU6Y10gQklUVEU/IQpbRnJldW5kZTpkXSBoYWIgaWNoIGltbWVyCltGcmV1bmRlOmFdIG5pY2h0IGRhcywgd2FzIGR1IHdpZWRlciBkZW5rc3QKW0ZyZXVuZGU6ZF0gd2FzIGRlbmsgaWNoIGRlbm4/CltGcmV1bmRlOmFdIGljaCB3ZWlzcyBuaWNodCwgd2FzIGR1IHNvIGRlbmtzdCwKW0ZyZXVuZGU6YV0gYWJlciBiIGRlbmt0IHNpY2hlciB3aWVkZXIgZmFsc2NoCltGcmV1bmRlOmFdIDspIHVuZCBjIGF1Y2ggOikKW0ZyZXVuZGU6YV0gZGEgc2llaHQgbWFuIG1hbCB3aWVkZXIsIGF1ZiB3YXMgaWhyCltGcmV1bmRlOmFdIHNvIGZpeGllcnQgc2VpZCA7KQpbRnJldW5kZTphXSB3ZW5uIGR1IHd1ZXNzdGVzdCwgd2FzIG1hbiBhbHMgZnJhdSBzbwpbRnJldW5kZTphXSBhbGxlcyB6d2lzY2hlbiBkZW4gYmVpbmVuIGhhYmVuIHdpbGwsCltGcmV1bmRlOmFdIGQKW0FiZW50ZXVlcjouLi5dIHdpbGhlbG1zYnVyZzogbWl0IHdlbGNoZXIgc3ludGF4IGthbm4gaWNoIGltIGZpbnN0ZXJlbiBsb2NoCltBYmVudGV1ZXI6Li4uXSB1bnRlbiB3YXMgZXJ0YXN0ZW4/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVjaCBzY2hvZW4gKE5lZGltZSwgMTIuIERleiAyMDA0LCAyMjowNDo0Myk6CkVyd2FydGV0ICAob25saW5lKTogQm9pbmcKRWluIGxhdXRlciBLbmFsbCBoYWxsdCB2b20gR2ViaXJnZSBoZXJ1ZWJlci4KCldhcyB0dXN0IER1PwoKTmVkaW1lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXVjaCBzY2hvZW4gKEtlbGx5YnVuZHksIDEyLiBEZXogMjAwNCwgMjI6MDU6MDkpOgp+IyEgcm49TmVkaW1lIHJ0PTExMDI4ODU0ODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAyODg1NDgzCkRhcyBNdWQgY3Jhc2hlbj8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXVjaCBzY2hvZW4gKFpvb2ssIDEyLiBEZXogMjAwNCwgMjI6MDU6MzkpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMTAyODg1NTA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMjg4NTQ4MwpWbGwuIGhhdCBlciBkaWUgU2NodWJsYWRlIHNlaW5lcyBTY2hyZWlidGlzY2hzIG1pdCBldHdhcyB2aWVsIFd1Y2h0IAp6dWdlc2NobGFnZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VyIG1hZyBkaWVzZXIgSmVtYW5kIHdvaGwgc2VpbiA/IChLcmltYXJpb2wsIDEzLiBEZXogMjAwNCwgMjI6MjY6NTkpOgpKZW1hbmQgdmVyc3VjaHQsIHNpY2ggZHVyY2ggZGllIG5vcmRvZXN0bGljaGUgZW5nZSBMdWVja2UgaW0gVW50ZXJob2x6IHp1Cnp3YWVuZ2VuLiBEb2NoIGhhaC4uLmRhIGlzdCBlcyBzY2hvbiBwYXNzaWVydC4gRXIgc2NoZWludCB6dSBkaWNrIHp1IHNlaW4gdW5kCnN0aWNodCBzaWNoLiBNZWhtYWxzIHZlcmxldHp0IEVyIHNpY2ggYW4gZGVuIHJpZXNpZ2VuIERvcm5lbiBkZXIgSGVja2UuCkplbWFuZCBsYWVjaGVsdCBEb3JuZW4gbWlsZGUgYW4gdW5kIHNhZ3Q6IFdlbm4gRHUgbWFsIGdyb3NzIGJpc3QsIGV2ZW50dWVsbC4uLgoKTWZHCktyaW1hcmlvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdlciBtYWcgZGllc2VyIEplbWFuZCB3b2hsIHNlaW4gPyAoTW9udGFudXMsIDEzLiBEZXogMjAwNCwgMjI6Mjg6NTMpOgp+IyEgcm49S3JpbWFyaW9sIHJ0PTExMDI5NzMyMTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAyOTczMjE5CkhhdCBhdXNzZXIgbWlyIG5vY2ggamVtYW5kIENhdHdlYXpsZSBlcmthbm50PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdlciBtYWcgZGllc2VyIEplbWFuZCB3b2hsIHNlaW4gPyAoQXJrLCAxMy4gRGV6IDIwMDQsIDIyOjMxOjI2KToKfiMhIHJuPUtyaW1hcmlvbCBydD0xMTAyOTczMjE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMjk3MzIxOQpXZW5pZ3N0ZW5zIGJsZWlidCBlcyBpbiBkZXIgRmFtaWxpZSA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdlciBtYWcgZGllc2VyIEplbWFuZCB3b2hsIHNlaW4gPyAoQ2F0d2VhemxlLCAxNC4gRGV6IDIwMDQsIDA3OjU1OjAwKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTExMDI5NzMzMzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAyOTczMjE5CmljaCBoYWIgbmljaHRzIGdlbWFjaHQhCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBiZXN0ZW4gV2VnbWVsZHVuZ2VuIC4uLiAoTGlhcmEsIDE0LiBEZXogMjAwNCwgMTA6MjE6MTQpOgpNZXNpcmlpIGlzdCBhbHMgYWJ3ZXNlbmQgZ2VrZW5uemVpY2huZXQuCkdydW5kOiBVcmxhdWIKClNvbGFuZ2UgZXIgd2VnIHdhciwgaGF0dGUgZXIga2VpbmUgTWVsZHVuZy4gQWJlciBudSwgd28gZXIgd2llZGVyIGRhIGlzdCB1bmQKZGVmaW5pdGl2IE5JQ0hUIGlkbGUgLi4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFciBoYXQgbmljaCBub2NodCBnZW51ZyAuLi4gKExpYXJhLCAxNC4gRGV6IDIwMDQsIDExOjE2OjIyKToKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IHdpZSBsYWNoZW4/IHNlaXQgd2FubiB0dW4gbWFncyBzb3dhcwpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogKmcqICpncmlucyogKmxhY2gqICpraWNoZXIqCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBlcnphbWdpZXIgaGFiZW4gaGllciBuaXggenVsYWNoZW4gZGFzIGlzdCBlaW4KRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IHZpZWwgenUgZXJuc3RlciBqb2IKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IHZpZWwgenUgZ3V0IGJlemFobHQgenVtIGxhY2hlbi4KRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6ICpwcnVzdCogKnNjaGVua2VsIGtsb3BmKgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogaXMga2xhCkRlaW5lIEZyZXVuZGluIE1haGFyZXQgdGVpbHQgRGlyIG1pdDogRGFzIG11c3MgamEgYXJrIGx1c3RpZyBzZWluIGJlaSBkZW4KRGVpbmUgRnJldW5kaW4gTWFoYXJldCB0ZWlsdCBEaXIgbWl0OiBFcnptYWdpZXJuLgpEZWluZSBGcmV1bmRpbiBNYWhhcmV0IHRlaWx0IERpciBtaXQ6IFZhbmlvbiB1bmQgTXVhZGliIGhhYmVuIGRhIGphIGF1Y2ggZ2FuegpEZWluZSBGcmV1bmRpbiBNYWhhcmV0IHRlaWx0IERpciBtaXQ6IGFya2UgQW5kZXV0dW5nZW4gZ2VtYWNodC4KRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6ICp3ZWdzY2htZWlzcyogKmJydWVsbCogKmh5c3RlcmllKgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogYWFhYWggamV0enQgZHJlaHQgZXIgZHVjaCBpY2ggZGFjaHRlIHNjaG9uIGVyCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBsYWNodCB3aXJrbGljaCA6KQpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogKnRyb21tZWwqICp3aW5zZWwqICphZWNoemUqICpzdG9laG5lKgpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogKndpZWRlcmF1ZnJpY2h0KiAqYXVnZW4gcmVpYioKRGVpbmUgRnJldW5kaW4gTWFoYXJldCB0ZWlsdCBEaXIgbWl0OiBJY2ggbWFjaCBtaXIgbGFuZ3NhbSBTb3JnZW4gdW0gaWhuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3Vlc3MgKnNjaG1lbHoqIChMaWFyYSwgMTQuIERleiAyMDA0LCAxMToyMTo0Nyk6CkFyayB0ZWlsdCBEaXIgbWl0OiBoZWVlZSA6KQpBcmsgdGVpbHQgRGlyIG1pdDogd2FydW0gd2VyZGUgaWNoIG5pY2ggYW5vbnVlbWlzaWF0PwpBcmsgdGVpbHQgRGlyIG1pdDogKmF1ZnN0YW1wZioKQXJrIHRlaWx0IERpciBtaXQ6ICpqYW1tZXIqICpoZXVsKiAqdHJhZW5lbiByb3R6KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGFhYWFjaGphICp0cmFldW0qIChMaWFyYSwgMTQuIERleiAyMDA0LCAxMToyNjo1OSk6CkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBuZWUgbm9ybWFsIHNhZ3QgYXJrIGdhciBuaXggOikKRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IGljaCBkYWNodGUsIGlociBoYWJ0IG5lIGF1ZmhlaXRlcnVuZyB2ZXJkaWVudApEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIYWFhYWNoamEgKnRyYWV1bSogKE11cGZlbCwgMTQuIERleiAyMDA0LCAxNzoyNDowMyk6Cn4jISBybj1MaWFyYSBydD0xMTAzMDIwMDE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMzAyMDAxOQpEYXMgc2luZCBub2NoIFNwYWV0Zm9sZ2VuIHZvbiBXaUJ1IDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIYWFhYWNoamEgKnRyYWV1bSogKEdsb2luc29uLCAxNC4gRGV6IDIwMDQsIDE3OjI2OjEzKToKfiMhIHJuPU11cGZlbCBydD0xMTAzMDQxNDQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMzAyMDAxOQpMYW5nc2FtIHdpcmQgbWlyIGtsYXIsIHdhcnVtIEFyayB3YWNoIHdhciB1bSBzaWNoIHVlYmVyIHVuc2VyIExhY2hlbiBlaW5lbgpSYXVtIHdlaXRlciB1bSA1IFVociBmcnVlaHMgYmVzY2h3ZXJlbiB6dSBrb2VubmVuIC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEZhdXhwYXMgKEh1bW5pLCAxNC4gRGV6IDIwMDQsIDIxOjMxOjQ0KToKfiMhIG9uPUh1bW5pIG90PTExMDMwNTYyMjAgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUdsb2luc29uIHJ0PTExMDMwNTYxMDYgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTAzMDUzODYzCk5laW4uIEVzIGVudHN0ZWh0IGF1ZmdydW5kIGRlciBGYWVjaGVyZm9lcm1pZyBhdWZnZWZhZWNodGVuIEhhZW5kZSwgZGllIHNpY2gKaW0gS3JlaXMgZHJlaGVuLCBlaW4gdW5nbGF1YmxpY2hlciBXaW5kLiBEZXIgd2lyZCB6dW0gV2lyYmVsc3R1cm0sIHVuZCByYXN0CmF1ZiBkaWUgVVNBIGxvcy4KCk51biB3aXNzZW4gd2lyIGVuZGxpY2gsIHdpZSBkaWUgZW50c3RlaGVuLiBEYXMgc2luZCBMZXV0ZSBpbiBDaGluYSwgZGllIGVpbmVuCmVpbmdlZ2lwc3RlbiBGaW5nZXIgaGFiZW4gdW5kIGlyZ2VuZHdpZSBhdWYgZWluZXIgQmFuYW5lbnNjaGFsZSBhdXNydXRzY2hlbiwKZGllIEJhbmFuZW5zY2hhbGUgdW50ZXIgZGVtIEZ1c3Mga2xlYmVuYmxlaWJ0IHVuZCBzaWNoIGFuIGplbWFuZGVtIGZlc3RoYWx0ZW4Kd29sbGVuIChydXRzY2hlbmQpLiBEYWJlaSBsYXNzZW4gc2llIGF1cyBWZXJzZWhlbiBkZW4gYW5kZXJlbiBsb3MgdW5kCnZlcnNldHplbiBzaWNoIHNvIHNlbGJzdCBpbiBEcmVodW5nLCB1bmQgZGVyIGVpbmdlZ2lwc3RlIEZpbmdlciAoZGVyIHZvbiBlaW5lcgpTcG9ydHZlcmxldHp1bmcgc3RhbW10LCB6LkIuIEJpZXJ0cmlua2VuKSB6ZWlndCBhdWYgYWxsZSB1bXN0ZWhlbmRlbiBDaGluZXNlbi4KCldlaWEuIFNjaGxpbW0sIHNjaGxpbW0uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRmF1eHBhcyAoR2xvaW5zb24sIDE0LiBEZXogMjAwNCwgMjE6MzM6NDQpOgp+IyEgcm49SHVtbmkgcnQ9MTEwMzA1NjMwNCByZz1zY2htYXJybgp+IyEgdGlkPTExMDMwNTM4NjMKTGFuZ3NhbSBrb21tZW4gd2lyIHVlYnJpZ2VucyB6dW0gS2VybiBkZXMgUHJvYmxlbXMuIER1cmNoIFBob2JvcycgWmVpZ2VuIGF1ZgpzaWNoIHd1cmRlIGVyIGluIGRlcmFydGlnZSBBbmdzdCB2ZXJzZXR6dCBhdWZnZXJ1ZmVuIHp1IHdlcmRlbiwgZGFzcyBlciBlaW5lbgpuYXR1ZXJsaWNoZW4gTXVza2VscmVmbGV4IGF1c2dlbG9lc3QgaGF0IC4uLiBkZW4gUmVzdCBrZW5uZW4gd2lyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEZhdXhwYXMgKE9ya3RvZXRlciwgMTQuIERleiAyMDA0LCAyMTo0MTo1Mik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTAzMDU2NDI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMzA1Mzg2MwpBbHNvIGRhcyBtaXQgZGVtIFdpcmJlbHN0dXJtIGdlaHQgZG9jaCBhbmRlcnM6IDIvMyBkZXIgQ2hpbmVzZSB3ZXJkZSBhbiBnZW5hdQp2b3JyYXVzYmVyZWNobmV0ZSBTdGVsbGVuIGJlb3JkZXJ0IHVuZCB3ZWRlbG4gZGFubiBuYWNoIGVpbmVtIGZlc3RlbiBaZWl0cGxhbgptaXQgZGVuIEhhZWRlbiBpbiBkZXIgTHVmdCBoZXJ1bSAobWFuY2htYWwgc2llaHQgbWFuIHNvIGV0d2FzIGFscyBUYWktQ2hpCmdldGFybnQpIHVuZCB0YXVzZW5kZSBLaWxvbWV0ZXIgd2VpdGVyIHVlYmVybGFnZXJuIHNpY2ggZGFubiBkaWUgc28KYXVzZ2Vsb2VzdGVuIFNjaHdpbmd1bmdlbi4uLi4gdW5kLi4uLgoKT3JrVCwgZGVuIFVTQSBnZXJhZGUgZGVuIG5vZXRpZ2VuIEJld2VpcyBmdWVyIGRpZSBhYnNvbHV0ZSBnZWZhZWhybGljaGtlaXQKQ2hpbmFzIGdlZ2ViZW4gaGFiZW5kIHVuZCBudXIgZGFyYXVmIHdhcnRlbmQsIHdhbm4gZGllIEFtaXMgZWlubWFyc2NoaWVyZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZW1laW5zYW1lcyBpZGVsbiAoRGVlcGJsdWUsIDE1LiBEZXogMjAwNCwgMDY6NDU6MzIpOgpmd2VyIGlkbGUKeHh4eHggICAgICAgICAgLSAgMDogNTo0NzozOQp4eHh4eCAgICAgICAgICAtICAwOiA1OjQ3OjM5Cnh4eHh4ICAgICAgICAgIC0gIDA6IDU6NDc6MzkKCkFsbGUgemVpdGdsZWljaCBpbiBpZGxlc3RhcnJlIHZlcmZhbGxlbj8gSGF0IGRhIGVpbiBncm9zc2VyIHNjaHdhcnplciBEcmFjaGUKZWluZSBNYXNzZW52ZXJzdGVpbmVydW5nIHplbGVicmllcnQ/CgpCVFc6IGRpZSBhbmRlcmVuIGFud2VzZW5kZW4gRnJldW5kZSB3YXJlbiBub2NoIGxhZW5nZXIgaWRsZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEVpZ2VudGxpY2ggZ2Vob2VydCBkYXMgaGllciBuYWNoIE1lZ2FzY2htYXJybiwgYWJlciBkYSBpc3QgZGllIFJ1YnJpayBncmFkIHZvbGwsIHVuZCB3ZXIgTWVnYXNjaG1hcnJuIG5pY2h0IG1hZywgbW9lZ2UgZGllc2VuIFRvcGljIGJpdHRlIGF1Y2ggdWViZXJnZWhlbiAoWm9vaywgMTUuIERleiAyMDA0LCAxMzo0MDoyMyk6Cn4jISBvbj1DYXR3ZWF6bGUgb3Q9MTEwMzExMjQzOSBvZz13d3cKfiMhIHJuPVd1cnplbCBydD0xMTAzMTExODEwIHJnPXd3dwp+IyEgdGlkPTExMDMxMTEwNzMKTmVpbi4gSW1tZXIgbm9jaCB3aXR6bG9zLgoKS29lbm5lbiB3aXIgZGVuIFRpdGVsIGt1ZXJ6ZW4/IEluIGlyZ2VuZHdhcyBtaXQgIm51IGlzcyB3YXMgZHJpbiwgaW5uZXIgTVBBIj8KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRWlnZW50bGljaCBnZWhvZXJ0IGRhcyBoaWVyIG5hY2ggTWVnYXNjaG1hcnJuLCBhYmVyIGRhIGlzdCBkaWUgUnVicmlrIGdyYWQgdm9sbCwgdW5kIHdlciBNZWdhc2NobWFycm4gbmljaHQgbWFnLCBtb2VnZSBkaWVzZW4gVG9waWMgYml0dGUgYXVjaCB1ZWJlcmdlaGVuIChab29rLCAxNS4gRGV6IDIwMDQsIDEzOjQwOjI0KToKfiMhIG9uPU1vbnRhbnVzIG90PTExMDMxMTI0OTkgb2c9d3d3Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTEwMzExMjQzOSByZz13d3cKfiMhIHRpZD0xMTAzMTExMDczCk5laW4sIGtvZW5uZW4gd2lyIG5pY2h0LiBBYmVyIGRpZSBNZWdhc2NobWFycm4tUmVnZWxuIGdlbHRlbiB3ZWl0ZXJoaW4uIFVuZAphdWYgUmVeMTAwIHNldHplIGljaCBlaW5lIGVDYXJkIGZ1ZXIgQnJvdCBmdWVyIGRpZSBHRVogYXVzLCBhZWggdm9uIEJmZEcKbmF0dWVybGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG1lZ2FtYXJybiAuLi4gKFpvb2ssIDE1LiBEZXogMjAwNCwgMTM6NDA6MjUpOgp+IyEgb249R2xvaW5zb24gb3Q9MTEwMzExMjc4MiBvZz13d3cKSWNoIGZpbmRlIGRhcyBBdXN3YW5kZXJuIGRlcyBUaHJlYWRzIHdpdHpsb3MuIEZhc3Qgc2Nob24gYWxib2luc2NoIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRWlnZW50bGljaCBnZWhvZXJ0IGRhcyBoaWVyIG5hY2ggTWVnYXNjaG1hcnJuLCBhYmVyIGRhIGlzdCBkaWUgUnVicmlrIGdyYWQgdm9sbCwgdW5kIHdlciBNZWdhc2NobWFycm4gbmljaHQgbWFnLCBtb2VnZSBkaWVzZW4gVG9waWMgYml0dGUgYXVjaCB1ZWJlcmdlaGVuIChab29rLCAxNS4gRGV6IDIwMDQsIDEzOjQwOjI2KToKfiMhIG9uPU11YWRpYiBvdD0xMTAzMTEzNDEyIG9nPXd3dwp+IyEgcm49TW9udGFudXMgcnQ9MTEwMzExMjQ5OSByZz13d3cKfiMhIHRpZD0xMTAzMTExMDczCmRhcyBoYXR0ZW4gd2lyIGRvY2ggc2Nob25tYWwKZGFzIGZsdXRlbiBhbmRlcmVyIHJ1YnJpa2VuIGJlaSB2b2xsZW0gbWVnYXNjaG1hcnJuIG11c3MgZG9jaCB3aXJrbGljaCBuaWNodApzZWluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBFaWdlbnRsaWNoIGdlaG9lcnQgZGFzIGhpZXIgbmFjaCBNZWdhc2NobWFycm4sIGFiZXIgZGEgaXN0IGRpZSBSdWJyaWsgZ3JhZCB2b2xsLCB1bmQgd2VyIE1lZ2FzY2htYXJybiBuaWNodCBtYWcsIG1vZWdlIGRpZXNlbiBUb3BpYyBiaXR0ZSBhdWNoIHVlYmVyZ2VoZW4gKFpvb2ssIDE1LiBEZXogMjAwNCwgMTM6NDA6MjcpOgp+IyEgb249SG9ibyBvdD0xMTAzMTEzNDkyIG9nPXd3dwp+IyEgcm49TXVhZGliIHJ0PTExMDMxMTM0MTIgcmc9d3d3Cn4jISB0aWQ9MTEwMzExMTA3MwpHZW5hdSAtIGh1c2NoaHVzY2gsIHp1cnVlY2sgaW5zIER1bmtlbCBtaXQgRXVjaCEgOikKIAogICBIb2JvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBFaWdlbnRsaWNoIGdlaG9lcnQgZGFzIGhpZXIgbmFjaCBNZWdhc2NobWFycm4sIGFiZXIgZGEgaXN0IGRpZSBSdWJyaWsgZ3JhZCB2b2xsLCB1bmQgd2VyIE1lZ2FzY2htYXJybiBuaWNodCBtYWcsIG1vZWdlIGRpZXNlbiBUb3BpYyBiaXR0ZSBhdWNoIHVlYmVyZ2VoZW4gKFpvb2ssIDE1LiBEZXogMjAwNCwgMTM6NDA6MjgpOgp+IyEgb249Q2F0d2VhemxlIG90PTExMDMxMTQxODUgb2c9d3d3Cn4jISBybj1Ib2JvIHJ0PTExMDMxMTM0OTIgcmc9d3d3Cn4jISB0aWQ9MTEwMzExMTA3MwpJcmdlbmR3aWUgYXJ0ZXRzIHpaIHdpZWRlciBhdXMuIEtvZW5uZW4gd2lyIG51biBlbmRsaWNoIHp1IDUwMC80Cnp1cnVlY2trZWhyZW4/IDotKQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRWlnZW50bGljaCBnZWhvZXJ0IGRhcyBoaWVyIG5hY2ggTWVnYXNjaG1hcnJuLCBhYmVyIGRhIGlzdCBkaWUgUnVicmlrIGdyYWQgdm9sbCwgdW5kIHdlciBNZWdhc2NobWFycm4gbmljaHQgbWFnLCBtb2VnZSBkaWVzZW4gVG9waWMgYml0dGUgYXVjaCB1ZWJlcmdlaGVuIChHcmltbWJvcm4sIDE1LiBEZXogMjAwNCwgMTM6NDY6MzMpOgp+IyEgcm49Wm9vayBydD0xMTAzMTE0NDI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMzExMTA3MwpEdSBtZWluc3QsIGRhbWl0IGRhcyBvZWZ0ZXIgYXVmdHJpdHQgdW5kIGRpZSBBbmRlcmVuIGRhcmFuIGdld29laG50IHNpbmQ/CgpHZEFbZXgtUl0gT0hkTXVCZEUgIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEVpZ2VudGxpY2ggZ2Vob2VydCBkYXMgaGllciBuYWNoIE1lZ2FzY2htYXJybiwgYWJlciBkYSBpc3QgZGllIFJ1YnJpayBncmFkIHZvbGwsIHVuZCB3ZXIgTWVnYXNjaG1hcnJuIG5pY2h0IG1hZywgbW9lZ2UgZGllc2VuIFRvcGljIGJpdHRlIGF1Y2ggdWViZXJnZWhlbiAoQ2F0d2VhemxlLCAxNS4gRGV6IDIwMDQsIDEzOjQ4OjEzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTAzMTE0NzkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMzExMTA3MwpOZWluLCBkYW1pdCB3aWVkZXIgMTI1IEFydGlrZWwgcHJvIFRhZyBzY2hyZWliYmFyIHNpbmQgdW5kIGRhcyB3ZW5pZ2VyCmF1ZnRyaXR0PyA6LSkKCkJpdHRlIGpldHp0IG5pY2h0LCBuZWluLiA6LSkgSWNoIGtvZW5udGUgbm9jaG1hbCBkaWUgVG9kZXNmb2xnZW4gYXVmd2Flcm1lbj8KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEVpZ2VudGxpY2ggZ2Vob2VydCBkYXMgaGllciBuYWNoIE1lZ2FzY2htYXJybiwgYWJlciBkYSBpc3QgZGllIFJ1YnJpayBncmFkIHZvbGwsIHVuZCB3ZXIgTWVnYXNjaG1hcnJuIG5pY2h0IG1hZywgbW9lZ2UgZGllc2VuIFRvcGljIGJpdHRlIGF1Y2ggdWViZXJnZWhlbiAoTW9udGFudXMsIDE1LiBEZXogMjAwNCwgMTM6NTE6MjMpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTExMDMxMTQ4OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAzMTExMDczCkFjaCwgaGFidCBldWNoIG5pY2h0IHNvLiBTb2JhbGQgZGllIFJlaGUgaGllciBlaW5lIDRzdGVsbGlnZSBHcm9pZXNzZW5vcmRudW5nCmFubmVobWVuLCBrbGFwcHQgZGFzIGF1Y2ggbWl0IGRlbSBaZWlsZW51bWJydWNoIGJlaW0gVGl0ZWwgd2llZGVyIGJlc3Nlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHZW1laW5zYW1lcyBpZGVsbiAoV2hpdGV0aWdlciwgMTUuIERleiAyMDA0LCAxNTozNDozOCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMTAzMDg5NTMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMzA4OTUzMgpOZW5udCBzaWNoIEh5ZHJhLi4uCgpBdWNoIGVpbmUgQXJ0LCB0aW55bWFjcm8tIG8uYWUuIFNjcmlwdC1OdXR6ZXIgenUgaWRlbnRpZml6aWVyZW4uCgpUaWdlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS29tZXRlbnNpY2h0YmFya2VpdCB6dXIgSmFocmVzd2VuZGUgKEdyaW1tYm9ybiwgMTUuIERleiAyMDA0LCAxNzozMDo1OCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTEwMzEyODI0NCBvZz1hbGxnZW1laW5lcwp+IyEgcm49VmFuaW9uIHJ0PTExMDMxMjc5OTkgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTAzMTI3NzE5ClppdGllcmVuIG9obmUgUXVlbGxlbmFuZ2FiZS4uLiBKdW5nZWp1bmdlLCBEdSByZWl0ZXN0IERpY2ggYWJlciBtaXQgQWJzaWNodAppbW1lciB0aWVmZXIgcmVpbiwgamE/IAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBLb21ldGVuc2ljaHRiYXJrZWl0IHp1ciBKYWhyZXN3ZW5kZSAoWm9vaywgMTUuIERleiAyMDA0LCAxNzozMzoyOCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEwMzEyODI1OCByZz1zY2htYXJybgp+IyEgdGlkPTExMDMxMjc3MTkKSm91cm5hbGlzdGlzY2hlIFR1Z2VuZGVuLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClpvcm4gZGVyIEdvZXR0ZXI/IChNZWRpYywgMTYuIERleiAyMDA0LCAwODo1ODozOSk6CkR1IGJlZ2lubnN0IGluYnJ1ZW5zdGlnIHp1IGJldGVuLgpEdSBiZXRlc3QgaW5icnVlbnN0aWcgdW0gc2NobmVsbGUgSGVpbHVuZy4KW1RvZDpMYXJzXSBHaWZ0aWdlIFZ1bGthbmdhc2UgaGFiZW4gZ2VyYWRlIFJlcXVpZW0gdW1nZWJyYWNodC4KW1RvZDpHaWZ0aWdlIFZ1bGthbmdhc2Ugc2luZCB1bmdlc3VuZC4gV2VyIGhhZXR0ZSBkYXMgZ2VkYWNodC5dCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRXJkc3RyYWhsZW4gdW5kIEludGVybmV0IChHbm9tZSwgMTcuIERleiAyMDA0LCAxMzo1MzoxNyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTAzMjc1OTkxIHJnPXd3dwp+IyEgdGlkPTExMDMyNzU5OTEKb2hqZSBvaGplLgpob2ZmZW50bGljaCBuaW1tdCBkYXMga2VpbmVyIGVybnN0LiBvZGVyIGhhYiBpY2ggaXJnZW5kd28gZGVuCmlyb25pYy1idXR0b24gdWViZXJzZWhlbj8KCmNvb2wgZmluZGUgaWNoIGF1Y2g6ICIuLi5hdWYgZGVuIFVlYmVybGFuZGxlaXR1bmdlbiBpc3QgZGllIFNwYW5udW5nCmplZG9jaCB3ZWl0IGhvZWhlciwgdW0gZGVuIFN0cm9tIF9zY2huZWxsZXJfIHRyYW5zcG9ydGllcmVuIHp1IGtvZW5uZW4uIgoKQVJHTC4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVyZHN0cmFobGVuIHVuZCBJbnRlcm5ldCAoQmFtYnVsa28sIDE3LiBEZXogMjAwNCwgMTM6NTY6MTkpOgp+IyEgcm49R25vbWUgcnQ9MTEwMzI4Nzk5NyByZz1zY2htYXJybgp+IyEgdGlkPTExMDMyNzU5OTEKV2VubiBEdSBkYXMgdG9sbGUgUHJvZHVrdCBiZXN0ZWxsZW4gbW9lY2h0ZXN0LCBrb21tc3QgRHUgYXVmIGRpZSAnVm9yc2ljaHQKU2F0aXJlJyBTZWl0ZS4KCkljaCBmYW5kIGRpZSBib2VzZW4gQW5nbGl6aXNtZW4sIGRpZSBpbiBhbWVyaWthbmlzY2hlbiBXZWJzZWl0ZW4gc3RlY2tlbiwKY29vbC4KCkJ1bGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWlsIGFuIGRlbiBXZWlobmFjaHRzbWFubiAoVGFuZ2FsdXIsIDE3LiBEZXogMjAwNCwgMTQ6MzU6MzgpOgpWb246ICoqKioqKiBbbWFpbHRvOioqKioqKkAqKioqKiouZGVdCkdlc2VuZGV0OiBGcmVpdGFnLCAxNy4gRGV6ZW1iZXIgMjAwNCAxMToxNQpBbjogd3Vuc2NoemV0dGVsQHdlaWhuYWNodHNtYW5uLmRlCkJldHJlZmY6IFd1bnNjaHpldHRlbAoKCkxpZWJlciBXZWlobmFjaHRzbWFubiwKCmljaCBoYWIgbWlyIHNjaG9uIHNlaXQgZXR0bGljaGVuIEphaHJlbiBuaXggbWVociB2b24gRGlyIGdld3VlbnNjaHQuCk5hdHVlcmxpY2ggbnVyLCB1bSBEaXIgQXJiZWl0IHp1IGVyc3BhcmVuLCBkYW1pdCBEdSBEaWNoIGJlc3NlciB1bSBkaWUgS2luZGVyCmt1ZW1tZXJuIGthbm5zdC4gQWJlciBqZXR6dCBicmFldWNodGUgaWNoIG1hbCB3aWVkZXIgRGVpbmUgSGlsZmUuCgpJY2ggd3VlbnNjaGUgbWlyIHNvIHNlaHIgZWluZSBOb3J0b24gQ29tbWFuZG8genUgV2VpaG5hY2h0ZW4uCgpXZW5uIER1IGRhcyBCYWJ5IHNpZWhzdCwgd2lyc3QgRHUgbWljaCB2ZXJzdGVoZW4gdW5kIERlaW5lIFJlbnRpZXJzY2hsaXR0ZW4KZWlubW90dGVuIHVuZCBpbiBadWt1bmZ0IGF1Y2ggbWl0IGVpbmVyIENvbW1hbmRvIGF1ZiBkaWUgUGlzdGUgemllaGVuLiBJY2gKaGFiIG1hbCBlaW4gRm90byBkZXIgS2lzdGUgYW5nZWhuZ3QsIGRhbWl0IER1IERpciBlaW4gQmlsZCB2b24gZGVyIE1hc2NoaW5lCm1hY2hlbiBrYW5uc3QuCgpNaXQgZXJ3YXJ0dW5nc2Zyb2hlbiBHcnVlc3NlbiwKCioqKioqCgpsb2dpbiBhczogKioqKgpTZW50IHVzZXJuYW1lICIqKioqIgoqKioqQHgueC54LngncyBwYXNzd29yZDoKTGFzdCBsb2dpbjogV2VkIERlYyAxNSAwOTozNjo0MyAyMDA0IGZyb20gKioqKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tClVucmVzdHJpY3RlZCBBQ0NFU1MgaXMgcHJvaGliaXRlZC4uLgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKbWFpbDp+ICMgbWFpbHEKICAgICAgICAgICAgICAgIC92YXIvc3Bvb2wvbXF1ZXVlICgxIHJlcXVlc3QpCi0tLS0tUS1JRC0tLS0tIC0tU2l6ZS0tIC0tLS0tUS1UaW1lLS0tLS0KLS0tLS0tLS0tLS0tU2VuZGVyL1JlY2lwaWVudC0tLS0tLS0tLS0tCmlCSEFCdXI0MDI2MTI0ICAgMzY0ODU0IEZyaSBEZWMgMTcgMTE6MTEgPCoqKipAKioqKi5kZT4KICAgICAgICAgICAgICAgICAoRGVmZXJyZWQ6IENvbm5lY3Rpb24gcmVmdXNlZCBieSB3ZWlobmFjaHRzbWFubi5kZS4pCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHd1bnNjaHpldHRlbEB3ZWlobmFjaHRzbWFubi5kZT4KICAgICAgICAgICAgICAgIFRvdGFsIHJlcXVlc3RzOiAxCm1haWw6fiAjCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzb3NvIChQaXRmYWxsLCAxNy4gRGV6IDIwMDQsIDIzOjI3OjEyKToKVm9uIEZyZXVuZGluIEd3ZW5pbGk6IHdhcnVtIHNvbGxlbiB3aXIgaGllciB3aWxsZW5sb3Mgd2VyZGVuPwpWb24gRnJldW5kaW4gR3dlbmlsaTogaGllciBnaWJ0J3MgbmV0dGUgdGFlbnplciwgZGllIGZ1ZXIgZ2VsZApWb24gRnJldW5kaW4gR3dlbmlsaTogdGFuemVuIHVuZCBzY2hvZW5lIGF1Z2VuIG1hY2hlbiA7KSAuLi4KVm9uIEZyZXVuZGluIEd3ZW5pbGk6IGd1dGVzIG5pYmVscyAgLSB3YXMgd2lsbCBuZSBGcmF1IG1laHI/ClZvbiBGcmV1bmRpbiBUb3dvbmRhOiBndXRlIG5hY2h0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1ZXMgTUctIHVuZC9vZGVyIFZlcmVpbnNsb2dvPyAoQ2F0d2VhemxlLCAyMC4gRGV6IDIwMDQsIDA4OjMzOjUyKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMTAzNTI3ODY1IHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD0xMTAzNTI3ODY1CkljaCBtb2VjaHRlIGV4cGxpeml0IGRhcmF1ZiBoaW53ZWlzZW4sIGRhc3MgZXMgc2ljaCBiZWkgZGVtIGJyYXVlbiBGbGVjayBhdWYKZGVtIExvZ28ga2VpbmVzZmFsbHMgdW0gZGllIEViZW5lLCBzb25kZXJuIGF1ZiBqZWRlbiBGYWxsIHVtIGRpZSBXdWVzdGUKaGFuZGVsdCEKCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVlcyBNRy0gdW5kL29kZXIgVmVyZWluc2xvZ28/IChab29rLCAyMC4gRGV6IDIwMDQsIDA5OjI2OjE1KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMTAzNTI4MDMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMzUyNzg2NQpEYXMgaXN0IGphIHB1dHppZy4gVW5kIHdlciBpc3QgZGVyIGtsZWluZSBaYXViZXJlci4uPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldWVzIE1HLSB1bmQvb2RlciBWZXJlaW5zbG9nbz8gKENhdHdlYXpsZSwgMjAuIERleiAyMDA0LCAwOTo0Mzo1Mik6Cn4jISBybj1ab29rIHJ0PTExMDM1MzExNzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAzNTI3ODY1CkRhIGRhcmYgc2ljaCBkYW5uIGplZGVyIG1pdCBpZGVudGlmaXppZXJlbiBkZXIgbWFnLiBXYXMgZGVyIGluIGRlciBXdWVzdGUgenUKc3VjaGVuIGhhdCwgd2Vpc3MgaWNoIGF1Y2ggbmljaHQuLi4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmV1ZXMgTUctIHVuZC9vZGVyIFZlcmVpbnNsb2dvPyAoRGVlcGJsdWUsIDIwLiBEZXogMjAwNCwgMTQ6NDc6NTgpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTExMDM1MzIyMzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAzNTI3ODY1Ck5hIGlzdCBkb2NoIHJpY2h0aWcgc28sIGRhcyBkaWUgWmF1ZGVyZXIgaW4gZGllIFd1ZXN0ZSBnZXNjaGlja3Qgd2VyZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmV1ZXMgTUctIHVuZC9vZGVyIFZlcmVpbnNsb2dvPyAoQXBvcGhpcywgMjAuIERleiAyMDA0LCAxNTo1MDo1Nik6Cn4jISBybj1EZWVwYmx1ZSBydD0xMTAzNTUwNDc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMzUyNzg2NQoqamFtbWVyKiA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZWlobmFjaHRzbWFubiB2b3IgR2VyaWNodCAoUGl0ZmFsbCwgMjEuIERleiAyMDA0LCAxODo1MjowMCk6Cn4jISBybj1NYWhhcmV0IHJ0PTExMDM2NTE0NTYgcmc9d2l0emUKfiMhIHRpZD0xMTAzNjIxNTI0CldhcyBlcndhcnRlc3QgZHUgYmVpIGVpbmVtIFJlaW1kdWVsbAp6d2lzY2hlbiBIdW1uaSB1bmQgRGVlcGJsdWU/CgpQaXQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXZWlobmFjaHRzbWFubiB2b3IgR2VyaWNodCAoVmFuaW9uLCAyMS4gRGV6IDIwMDQsIDE5OjAwOjUwKToKfiMhIHJuPVBpdGZhbGwgcnQ9MTEwMzY1MTUyMCByZz1zY2htYXJybgp+IyEgdGlkPTExMDM2MjE1MjQKRGVyIGRpY2h0ZSBEaWNodGVyIGRpY2h0ZXQgRGljaHR1bmdzbWFzc2U/CgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2VpaG5hY2h0c21hbm4gdm9yIEdlcmljaHQgKEFtYXJ5bGxpcywgMjEuIERleiAyMDA0LCAxOToxMTo1NCk6Cn4jISBybj1QaXRmYWxsIHJ0PTExMDM2NTE1MjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTAzNjIxNTI0CiJSZWltIiBuZW5uc3QgRHUgZGFzPwoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRWluIFdlaWhuYWNodHNsaWVkIChIdW1uaSwgMjEuIERleiAyMDA0LCAyMzoxNDowOSk6Cn4jISBvbj1IdW1uaSBvdD0xMTAzNjY3MjQzIG9nPXdpdHplCn4jISBybj1Nb250YW51cyBydD0xMTAzNjY3MTY3IHJnPXdpdHplCn4jISB0aWQ9MTEwMzU2MTE4NQpEYXMgd2lyZCBiZXN0aW1tdCBIdWVja2VsaG92ZW4uIFp1a3VuZnQgendpc2NoZW4gUmhlaW4gdW5kIE1hYXMhISEKCkh1bW5pLCBzY2h3YXJ6LCBib2VzZSwgRHJhY2hlLiBVbmQgdmVycmFldCBuaWNodCwgd28gZXIgd29obnQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRWluIFdlaWhuYWNodHNsaWVkIChNb250YW51cywgMjEuIERleiAyMDA0LCAyMzoxNjoyNyk6Cn4jISBybj1IdW1uaSBydD0xMTAzNjY3MjQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMzU2MTE4NQpXaWVzbyB3aXJkIGVpZ2VudGxpY2ggbmljaHQgbWFsIGRpZSBBbnRpLUt1bHR1cmhhdXB0c3RhZHQgMjAxMCBiZXN0aW1tdD8KQnp3LCB3ZXIgaGFldHRlIEx1c3QsIGFuIHNvIGVpbmVtIFByb2pla3QgenUgYXJiZWl0ZW4/IERhbWl0IGtvZW5udGUgbWFuCnNpY2hlciBndXRlIEdyYXN3dXJ6ZWwtQmV3ZWd1bmctQXJiZWl0IGxlaXN0ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbiBXZWlobmFjaHRzbGllZCAoQ2F0d2VhemxlLCAyMi4gRGV6IDIwMDQsIDA5OjM4OjQxKToKfiMhIHJuPVBob2JvcyBydD0xMTAzNjU5NjQ2IHJnPXdpdHplCn4jISB0aWQ9MTEwMzU2MTE4NQpOYSBudSBnZWJ0IG1hbCBuaWNodCBzbyBhbiBtaXQgZGVpbmVyCmVpbi16d2VpaHVuZGVydHZpZXJ1bmRkcmVpemlnc3RlbC1LdWx0dXJoYXVwdHN0YWR0IDIwMTAuIAoKSW1tZXIgZGllc2UgRW1wb3Jrb2VtbWxpbmdlLgoKWVRDIChCZXdvaG5lciBkZXIgbGViZW5zd2VydGVzdGVuIFN0YWR0IGRlciBfV2VsdF8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXZWlobmFjaHRzbWFubiB2b3IgR2VyaWNodCAoTXVhZGliLCAyMi4gRGV6IDIwMDQsIDA5OjQ1OjQxKToKfiMhIHJuPVBpdGZhbGwgcnQ9MTEwMzY1MTUyMCByZz1zY2htYXJybgp+IyEgdGlkPTExMDM2MjE1MjQKa29wZnNjaG1lcnplbiB1bmQgb2hyZW5ibHV0ZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVpbiBXZWlobmFjaHRzbGllZCAoTXVhZGliLCAyMi4gRGV6IDIwMDQsIDA5OjQ4OjI5KToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMTAzNzA0NzIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMzU2MTE4NQpsZWJlbnN3ZXJ0Pwp3aWUgYWJnZXNjaG1hY2t0Cm9id29obCwgZXMgbGVpdGV0IHVlYmVyIHp1IGZyYW5rIGhlcmJlcnRzICJ0b2QgZWluZXIgc3RhZHQiCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IG5ldHpsYXN0c2ljaHQgKE11YWRpYiwgMjIuIERleiAyMDA0LCAyMTozNzozMik6Cn4jISBybj1EYXJrd2luZyBydD0xMTAzNzQwNjgyIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTExMDM3MjY3MTUKdGV0cmFwYWNrPyBoYXN0IGR1IHRldHJhcGFjayBnZXNhZ3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIdW5ncmlnZXIsIHNjaHdhcnplciBEcmFjaGUgKE1pcmlsLCAyMi4gRGV6IDIwMDQsIDIzOjI4OjUzKToKSHVtbmkgZnJpc3N0IGVpbmVuIGtyeWxhaXNjaGVuIFJpZXNlbmVzZWwuCkh1bW5pIHNhZ3Q6IGxlY2tlcgpIdW1uaSBncmluc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSHVuZ3JpZ2VyLCBzY2h3YXJ6ZXIgRHJhY2hlIChBbmF0b2wsIDIzLiBEZXogMjAwNCwgMDA6MTE6MDYpOgp+IyEgcm49TWlyaWwgcnQ9MTEwMzc1NDUzMyByZz1zY2htYXJybgp+IyEgdGlkPTExMDM3NTQ1MzMKTmEgd2FzIGZ1ZXIgZWluIHN1ZXNzZXIga251ZmZlbGlnZXIgRmx1c2VuZHJhY2hlISA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZyb2hlIFdlaWhuYWNodGVuIChBbmF0b2wsIDIzLiBEZXogMjAwNCwgMTE6MDE6MjQpOgp+IyEgb249QW5hdG9sIG90PTExMDM3OTYwMzQgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU1vbnRhbnVzIHJ0PTExMDM3OTU3OTYgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTAzNzI0MzU4ClZpZWxlIExldXRlIHd1ZXJkZW4gbWVociBpbiBkZXIgQmliZWwgbGVzZW4sIHd1ZXNzdGVuIHNpZSwgd2FzCmZ1ZXIgU2NoYWV0emUgYXVzIGRlciBTcGFydGUgU2V4JkNyaW1lIHNpZSBkYSBmaW5kZW4ga29lbm50ZW4uLi4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBGcm9oZSBXZWlobmFjaHRlbiAoQW5hdG9sLCAyMy4gRGV6IDIwMDQsIDExOjAxOjI2KToKfiMhIG9uPUFuYXRvbCBvdD0xMTAzNzk2MDc4IG9nPWFsbGdlbWVpbmVzCn4jISBybj1BbmF0b2wgcnQ9MTEwMzc5NjAzNCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMDM3MjQzNTgKV2FzIG1pY2gganVzdCB6dXIgRnJhZ2UgYnJpbmd0OiBXaWVzbyBpc3QgZGFzIFdlcmsgZnJlaSB2ZXJrYWV1ZmxpY2g/CkFuIHVuZCBmdWVyIHNpY2ggbXVlc3N0ZSBHZXdhbHR2ZXJoZXJybGljaHVuZyBkaWVzZXIgQXJ0IEZTSyAxNiBzZWluLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEZyb2hlIFdlaWhuYWNodGVuIChNb250YW51cywgMjMuIERleiAyMDA0LCAxMTowMzoxOCk6Cn4jISBybj1BbmF0b2wgcnQ9MTEwMzc5NjA4NiByZz1zY2htYXJybgp+IyEgdGlkPTExMDM3MjQzNTgKTmljaHQgbnVyIHZlcmthZXVmbGljaCwgc29uZGVybiBzb2dhciBmcmVpIHZlcnNjaGVua2Jhcj8KSXN0IGRhcyBuY2h0IEFuc3RpZnR1bmcgenVyIFVuenVjaHQsIFZlcmhlcnJsaWNodW5nIHZvbiBWZXJicmVjaGVuIGV0Yz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEZyb2hlIFdlaWhuYWNodGVuIChBbmF0b2wsIDIzLiBEZXogMjAwNCwgMTE6MDM6NDYpOgp+IyEgcm49TW9udGFudXMgcnQ9MTEwMzc5NjE5OCByZz1zY2htYXJybgp+IyEgdGlkPTExMDM3MjQzNTgKV2llLi4uIHdpZSB1bnJlZGxpY2ghCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRnJvaGUgV2VpaG5hY2h0ZW4gKE1vbnRhbnVzLCAyMy4gRGV6IDIwMDQsIDExOjE3OjQwKToKfiMhIHJuPUFuYXRvbCBydD0xMTAzNzk2MjI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMzcyNDM1OApUamEsIHdhcyBoYXN0IGR1IGFuZGVyZXMgZXJ3YXJ0ZXQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBGcm9oZSBXZWlobmFjaHRlbiAoWmFybml5YSwgMjMuIERleiAyMDA0LCAxNDo0MTowMSk6Cn4jISBybj1BbmF0b2wgcnQ9MTEwMzc5NjA4NiByZz1zY2htYXJybgp+IyEgdGlkPTExMDM3MjQzNTgKc2VpdCB3YW5uIGdpYnQgZXMgZWluZSBGU0sgZnVlciBCdWVjaGVyPyBFcyBnaWJ0IG51ciBlaW5lIEFsdGVyc2VtcGZlaGx1bmcuLi4Kb2RlciBkYW5uIGRpcmVrdCBkZW4gSW5kZXguIAoKV2VubiBpY2ggU2V4JkNyaW1lIGhhYmVuIHdpbGwsIGRhbm4gbGVzIGljaCBkZW4gUGZhZmZlbnNwaWVnZWwuCgpNYXJjCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWlsaWdlIE5hY2h0IChNdWFkaWIsIDIzLiBEZXogMjAwNCwgMTk6NTA6MzgpOgp+IyEgcm49S2FkYWJyYSBydD0xMTAzODI3Mjg4IHJnPXBhcnR5Cn4jISB0aWQ9MTEwMzgyNzI4OApoYXQgamVtYW5kIGthZGFicmEgZ2VzZWhlbj8KaWNoIGZ1ZXJjaHRlIGljaCBoYWIgc2llIHZvcmhpbiB3b2hpbiBnZWxlZ3QgdW5kIHZlcmdlc3NlbiB3b2hpbgpsYW5nc2FtIHJlaXNzdCBkaWVzZSB2ZXJsZWdlcmVpIGVpbgpzY2hsaW1tc2NobGltbQphbHNvIGZhbGxzIGplbWFuZCBkaWUgc2NodWV0dGxlcmluIHNpZWh0LCBiaXR0ZSBtZWxkZXQgZXVjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN1cGVyc2VoZXIgKEFuYXRvbCwgMjUuIERleiAyMDA0LCAwMDo1NDoyOSk6Cn4jISBybj1MaWFyYSBydD0xMTAzOTIyNDIzIHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD0xMTAzOTIyNDIzCk1pc3R2ZXJkYW1tdCwgIld1cnN0bWFnaWVyIiBmaWVsIGRlciBMb2VzY2h1bmcgYW5oZWltLi4uIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRnJvaGUgV2VpaG5hY2h0ZW4gKEtlbGx5YnVuZHksIDI1LiBEZXogMjAwNCwgMTI6MjE6NTApOgp+IyEgcm49WmFybml5YSBydD0xMTAzODA5MjYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwMzcyNDM1OApXbyBpc3QgZGVubiBpbSBQZmFmZmVuc3BpZWdlbCBzZXggJiBjcmltZT8gRGEgaXN0IGRpZSBCaWJlbCBlcmdpZWJpZ2VyLiBOdW5qYQphdWNoIHdlbm4gZGEgei5CLiB2b24gZGVtIGxlZ2VuZGFlcmVuIHNwYW5pc2NoZW4gQmlzY2hvZiBtaXQgbmVtIEhhcmVtIHZvbgoxNDAwICghKSBGcmF1ZW4gdW5kIDQgWmllZ2VuICh2aWVyYmVpbmlnZSEpIGV0YyBiZXJpY2h0ZXQgd2lyZCwgc2VoIGljaCBudXIKZGFzIGNyaW1lIGVsZW1lbnQgYWJlciBuZXQgc28gZGVuIHNleAoKS2VsbHksIFNlbGJlciBJbmhhYmVyIGVpbmVzIFBmYWZmZW5zcGllZ2VscwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRnJvaGUgV2VpaG5hY2h0ZW4gKEtlbGx5YnVuZHksIDI1LiBEZXogMjAwNCwgMTM6MjM6NDkpOgp+IyEgb249S2VsbHlidW5keSBvdD0xMTAzOTc2OTM0IG9nPWFsbGdlbWVpbmVzCn4jISBybj1XdXJ6ZWwgcnQ9MTEwMzc1MDU4MyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMDM3MjQzNTgKSGF1dCBFdWNoIHNjaGxhZ3QgRXVjaCB0cmV0ZXQgRXVjaCBkaWUgRnJlc3NlbiBicmVpdCEgaWNoIHdpbGwgQmx1dCBzZWhlbiEKCkJsb25kY2hlbiwgc2F0YW5pc2NoIGtpY2hlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdXBlcnNlaGVyIChHcmltbWJvcm4sIDI2LiBEZXogMjAwNCwgMTc6NTI6MTQpOgp+IyEgb249TGlhcmEgb3Q9MTEwMzkyMjQyMyBvZz1wb2xpemVpLmJlc2Nod2VyZGVuCkhhbGxvIQpJY2ggbW9lY2h0ZSBTdXBlcnNlaGVyIHZlcnBldHplbiwgZGVubiBlciBpc3QgZ2FyIGtlaW4gU2VoZXIgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBzdGF0aW9uc2JhdSAoRGFya3dpbmcsIDI3LiBEZXogMjAwNCwgMTk6Mzc6NDIpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTExMDQxNDc5NjAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTA0MTM1MDU3Cj5JbW1lciBkaWVzZSBqYW1tZXJuZGVuIHVuZCB1bmFucGFzc3VuZ3NmYWVoaWdlbiBTcGllbGVyIDotKSkKCk5hIGhvbGxhLi4gQ2F0dHkgRHUgc29sbHRlc3QgdW5iZWRpbmd0IG1hbCBpbSBNb3JnZW5ncmF1ZW4gc3BpZWxlbiA6LSkKCkdydXNzLAogICAgRGFya3dpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZyb2hlIFdlaWhuYWNodGVuIChSb25kYSwgMjkuIERleiAyMDA0LCAwMTowNTo1OSk6Cn4jISBybj1Nb250YW51cyBydD0xMTAzNzk1Nzk2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTEwMzcyNDM1OApTb3JyeSwgYWJlciBhdWNoIHdlbm4gc2ljaCBhdWYgZGVtIElLRUEtS2F0YWxvZyBuZSBuYWNrdGUgRnJhdSByYWVrZWxuIHd1ZXJkZToKd2VyIHdvbGx0ZSBkaWUgaGFiZW4/IFdlbm4gbWFuIHNpZSBhKSBlcnN0IHp1c2FtbWVuYmFzdGVsbiBtdXNzIHVuZCBkYW5uIGIpCmltbWVyIG1pbmRlc3RlbnMgZWluZSBTY2hyYXViZSBmZWhsdD8KClJvbmRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbnNwcnVlY2hlLi4uLiAoWm9vaywgMjkuIERleiAyMDA0LCAxNDoyMzozOCk6CkRlaW4gRnJldW5kIFggdGVpbHQgRGlyIG1pdDogaWNoIGJpdHRlIHVtIGF1c3J1ZXN0dW5nLCB3ZXJkZSBkaWUgbmFlY2hzdGVuCkRlaW4gRnJldW5kIFggdGVpbHQgRGlyIG1pdDogdGFnZSBtdWRkZW4gOykKRGVpbiBGcmV1bmQgWCB0ZWlsdCBEaXIgbWl0OiBiaW4gYWIgMTgvMTkgdWhyIGhpZXIKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW5zcHJ1ZWNoZS4uLi4gKFd1cnplbCwgMjkuIERleiAyMDA0LCAxNDoyNDoyMCk6Cn4jISBybj1ab29rIHJ0PTExMDQzMjY2MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTA0MzI2NjE4CnNvbGx0ZSBkaXIgZG9jaCBuaWNodCBzbyBzY2h3ZXIgZmFsbGVuLCBkZW4gd3Vuc2NoIHp1IGVyZnVlbGxlbiwgZGVua2UgaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFuc3BydWVjaGUuLi4uIChab29rLCAyOS4gRGV6IDIwMDQsIDE0OjI1OjM0KToKfiMhIHJuPVpvb2sgcnQ9MTEwNDMyNjYxOCByZz1zY2htYXJybgp+IyEgdGlkPTExMDQzMjY2MTgKS29ycmVrdHVyIGJ6dy4gUHJhZXppc2llcnVuZzoKCkRlaW4gRnJldW5kIFggdGVpbHQgRGlyIG1pdDogaWNoIHdpbGwgaGV1dCBhYmVuZCBtZXR6ZWxuIDopCgoKSmEsIHdhcyBkZW5uIG51PyBEaWUgbmFlY2hzdGVuIFRhZ2Ugb2RlciBoZXV0IEFiZW5kPyA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktlaW4gQWxrb2hvbCBmdWVyIFp3ZXJnZSEgKERhcmtsb3IsIDI5LiBEZXogMjAwNCwgMjI6NTY6MjUpOgpEZXIgWndlcmcgYmVrb21tdCB2b24gZWluZW0gWndlcmcgZWluIHNlbHRzYW0gZGFtcGZlbmRlcyBHZWJyYWV1LgpEZXIgWndlcmcgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEZyb2hlIFdlaWhuYWNodGVuIChHcmltbWJvcm4sIDMwLiBEZXogMjAwNCwgMTA6MjQ6MzEpOgp+IyEgcm49Um9uZGEgcnQ9MTEwNDI3ODc1OSByZz1zY2htYXJybgp+IyEgdGlkPTExMDM3MjQzNTgKV2llc28/IEJlYXRlIFVoc2Ugc2VsYnQgc2VpdCBKYWhyZW4gZG9jaCBuaWNodCBzY2hsZWNodCBkYXZvbi4gV29iZWksIGRhcyBtaXQKZGVyIFNjaHJhdWJlIGthbm4gaWNoIG5pY2h0IGJldXJ0ZWlsZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRnJvaGUgV2VpaG5hY2h0ZW4gKE1hcmN1cywgMzAuIERleiAyMDA0LCAxMDoyNjozNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEwNDM5ODY3MSByZz1zY2htYXJybgp+IyEgdGlkPTExMDM3MjQzNTgKQmVhdGUgVWhzZSBzY2hhdXQgc2ljaCBsZWlkZXIgZGllIFJhZGllc2NoZW4gdm9uIHVudGVuIGFuIGJlcmVpdHMuCkRlciBGaXJtYSBnZWh0cyBzaWNoZXIgZ3V0IGRlbmtlIGljaCBhYmVyIDspCgpDaWFvLCBNYXJjdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthbXBmc2Nod2VpbmUgKFBpdGZhbGwsIDMwLiBEZXogMjAwNCwgMTM6NTE6MzQpOgpFaW4gU2Nod2VpbmNoZW4gbmFtZW5zIFJpcHBvciBtYWNodCBlaW5lbiBGbGljay1GbGFjayB1bmQgc3ByaW5ndCBob2NoIGluIGRpZQpMdWZ0LgpEYXMgU2Nod2VpbmNoZW4gbmFtZW5zIFJpcHBvciB2ZXJzdWNodCBlaW5lbiBnZXdhbHRpZ2VuIFNwcnVuZyBuYWNoIFN1ZWRlbi4KCgpQaXQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2FtcGZzY2h3ZWluZSAoTXVhZGliLCAzMC4gRGV6IDIwMDQsIDE0OjAxOjUwKToKfiMhIHJuPVBpdGZhbGwgcnQ9MTEwNDQxMTA5NCByZz1zY2htYXJybgp+IyEgdGlkPTExMDQ0MTEwOTQKRWluIE1ldHpnZXIgbmFtZW5zIE11YWRpYiBtYWNodCBlaW5lbiBGcmV1ZGVuc3BydW5nLgpFaW4gTWV0emdlciBuYW1lbnMgTXVhZGliIHppZWh0IG1pdCBnZXp1ZWNrdGVtIFNjaGxhY2h0YmVpbCBuYWNoIFN1ZWRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2FtcGZzY2h3ZWluZSAoTWFoYXJldCwgMzAuIERleiAyMDA0LCAxOTozODo0NSk6Cn4jISBybj1NdWFkaWIgcnQ9MTEwNDQxMTcxMCByZz1zY2htYXJybgp+IyEgdGlkPTExMDQ0MTEwOTQKU2Nod2VpbmUgc2luZCBlbmcgdmVyd2FuZHQgbWl0IE9ya3MsIHNpZSBzb2xsdGVuIHNpY2ggYWxzbyBuaWUgaW4gTXVhZGlicwpOYWVoZSB3YWdlbi4KCk1haGFyZXQgbWFjaHQgc2ljaCBTb3JnZW4gdW0gUmlwcG9yLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZlcnphdWJlcmUgKENyb2Z0LCAzMS4gRGV6IDIwMDQsIDE1OjEwOjA4KToKfiMhIHJuPUh1bW5pIHJ0PTExMDQ0OTk4NTQgcmc9Z2lsZGVuLmR1bmtlbGVsZmVuCn4jISB0aWQ9MTEwNDQ5OTg1NApELmguIGRlciAyLiByaWNodGlnZSBCdWcgaW4gZGVyIEdpbGRlPyA6bykKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgoyMDA1IChCYW1iaSwgIDEuIEphbiAyMDA1LCAwMjozNToyNik6CkVyc3Rlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAyMDA1IChEYXJrbG9yLCAgMS4gSmFuIDIwMDUsIDAyOjM2OjI0KToKfiMhIHJuPUJhbWJpIHJ0PTExMDQ1NDMzMjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA0NTQzMzI2CkdyYXR1bGF0aW9uIEJhbWJpIQoKRGFya2xvciB3dWVuc2NodCBhbGxlbiBlaW4gRnJvaGVzIE5ldWVzIEphaHIhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFpvb2sgc2FndCwgaWNoIHNvbGwgd2FzIG5ldHRlcyBzY2hyZWliZW4gLi4uIChaZXBoeXIsICAyLiBKYW4gMjAwNSwgMjM6MzI6MjUpOgp+IyEgcm49Wm9vayBydD0xMTA0Njg1NjQwIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTA0Njg1Mzk0CkJpbiBpY2ggZGllIGVpbnppZ2UsIGRpZSBkYSAKIi4uIGluIGRlbmVuIER1IERpY2ggdW0gTXVhZGliIC4uIGdla3VlbW1lcnQgaGFzdCAuLiIKZ2VsZXNlbiBoYXQ/IApDNCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogWm9vayBzYWd0LCBpY2ggc29sbCB3YXMgbmV0dGVzIHNjaHJlaWJlbiAuLi4gKE11YWRpYiwgIDMuIEphbiAyMDA1LCAwOToxNzoxNik6Cn4jISBybj1aZXBoeXIgcnQ9MTEwNDcwNTE0NSByZz1zY2htYXJybgp+IyEgdGlkPTExMDQ2ODUzOTQKaG1tbSwgd2FzIG11c3MgbWlyIGRhcyBudW4gc2FnZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBab29rIHNhZ3QsIGljaCBzb2xsIHdhcyBuZXR0ZXMgc2NocmVpYmVuIC4uLiAoVmFuaW9uLCAgMy4gSmFuIDIwMDUsIDIwOjAyOjI4KToKfiMhIHJuPU11YWRpYiBydD0xMTA0NzQwMjM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNDY4NTM5NApTaWNoIHVtIE11YWRpYiB6dSBrdWVtbWVybiB3YXIgZG9jaCB3b2hsIEVocmVuc2FjaGUgOikKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphdXN3ZWljaGVuIChLYXZhbGllciwgIDMuIEphbiAyMDA1LCAyMjo0NjowNCk6Ck5hY2ggZWluaWdlciBaZWl0IGtvbW1zdCBEdSB3aWVkZXIgenUgRGlyLiBEdSBmcmFnc3QgRGljaCwgd2FzIERpY2ggaGF0CmF1ZndhY2hlbiBsYXNzZW46IGRpZSBkcm9laG5lbmRlbiBLb3Bmc2NobWVyemVuLCBEZWluIHNjaG1lcnplbmRlcyBIaW50ZXJ0ZWlsCm9kZXIgZG9jaCBlaGVyIGRpZSBuYXNzZW4gS2xlaWRlciwgZGllIERpY2ggd2llIEVzcGVubGF1YiB6aXR0ZXJuIGxhc3Nlbi4gRHUKc29sbHRlc3Qgc2llIHNjaG5lbGwgdHJvY2tuZW4sIHNvbnN0IGhvbHN0IER1IERpciBub2NoIGRlbiBUb2QuLi4KRHUgYmlzdCB6dSBzZWhyIGRhbWl0IGJlc2NoYWVmdGlndCwgSGluZGVybmlzc2VuIGF1c3p1d2VpY2hlbiwgd2FzIERpciBhYmVyCm51ciBsZWlkbGljaCBnZWxpbmd0Li4uCgo+IHp1ZW5kZSAxIGFsa29ob2wgYW4KCkR1IGJpc3QgenUgc2VociBkYW1pdCBiZXNjaGFlZnRpZ3QsIEhpbmRlcm5pc3NlbiBhdXN6dXdlaWNoZW4sIHdhcyBEaXIgYWJlcgpudXIgbGVpZGxpY2ggZ2VsaW5ndC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTY2hhZXR6IChHbG9pbnNvbiwgIDQuIEphbiAyMDA1LCAwMjoxODoyMCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTA0ODAxMTk0IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTExMDQ3OTk1MzEKUFM6IERhbm4ga290emVuIG5hdHVlcmxpY2ggZGllIGlubm92YXRpdmVuIE1hZ2llciwgZGllIGJvZXNlLCBib2VzZSBTcGVsbHMKZGFkdXJjaCBhYmdlZmFuZ2VuIGhhYmVuLCBkYXNzIHNpZSBkZXJlbiBLb21tYW5kbyB1ZWJlcnNjaHJpZWJlbiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFpvb2sgc2FndCwgaWNoIHNvbGwgd2FzIG5ldHRlcyBzY2hyZWliZW4gLi4uIChNdWFkaWIsICA0LiBKYW4gMjAwNSwgMTA6MDE6MDQpOgp+IyEgcm49VmFuaW9uIHJ0PTExMDQ3Nzg5NDggcmc9c2NobWFycm4KfiMhIHRpZD0xMTA0Njg1Mzk0CmhhZWg/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV28gU2llYmVjayBsZWlkZXQ6IGRpZSBLYW50aW5lIGRlcyBCdW5kZXN0YWdzIChab29rLCAgNC4gSmFuIDIwMDUsIDExOjM5OjU2KToKfiMhIHJuPVZhbmlvbiBydD0xMTA0Nzc5NzE0IHJnPXNjaG1hcnJuLm5ldGRpZ2VzdAp+IyEgdGlkPTExMDQ3Nzk3MTQKRGllIFplaXRzY2hyaWZ0ICJDaWNlcm8iIGFscyBQb2xpdG1hZ2F6aW4genUgYmV0aXRlbG4sIHpldWd0IHp1bSBlcnN0ZW4gdm9uCmVpbmVyIGV0d2FzIG1lcmt3dWVyZGlnZW4gV2VsdHNpY2h0IHVuZCBBdWVzc2VydW5nZW4gdm9uIEhlcnJuIFNpZWJlY2sKYWJ6dWRydWNrZW4gdm9uIHNjaGxlY2h0ZW0gc3ByYWNobGljaGVtIEdlc2NobWFjay4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdvIFNpZWJlY2sgbGVpZGV0OiBkaWUgS2FudGluZSBkZXMgQnVuZGVzdGFncyAoWm9vaywgIDQuIEphbiAyMDA1LCAxMTo0MDoxMik6Cn4jISBybj1ab29rIHJ0PTExMDQ4MzUxOTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA0Nzc5NzE0ClVuZCB3ZXIgZGFzICJ6d2VpdGVucyIgZ2VmdW5kZW4gaGF0LCBkYXJmIGVzIGJlaGFsdGVuLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBpdCpjbGludG9uKmZhbGw/IChNYWhhcmV0LCAgNC4gSmFuIDIwMDUsIDE2OjM2OjUyKToKUGl0ZmFsbCB6aWVodCBkaWUgSG9zZSB3aWVkZXIgaG9jaC4KKDE2OjM4KSA8LSBEZWluZSBGcmV1bmRpbiBHd2VuaWxpOiBpY2ggaGFiIG1hbCB0ZXN0cyBnZW1hY2h0ClRydmVzOkpvbiBuZWUgMjAgc3VwZXIgemFobCBlY2h0IGd1dApEZWluZSBXYW5nZW4gZ2x1ZWhlbi4KUGl0ZmFsbCBiZWRhbmt0IHNpY2ggYmVpIEd3ZW5pbGkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTm9jaCBzaW5ubG9zZSBOUENzLi4uIChab29rLCAgNC4gSmFuIDIwMDUsIDE3OjI4OjEzKToKfiMhIHJuPUh1bW5pIHJ0PTExMDQ4NTIxMjggcmc9ZC5lYmVuZQp+IyEgdGlkPTExMDQ4NTIxMjgKTWFuIGthbm4gaWhuIHVtaGF1ZW4/IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5vY2ggc2lubmxvc2UgTlBDcy4uLiAoRGFya3dpbmcsICA0LiBKYW4gMjAwNSwgMTk6MTI6MzcpOgp+IyEgcm49SHVtbmkgcnQ9MTEwNDg1MjEyOCByZz1kLmViZW5lCn4jISB0aWQ9MTEwNDg1MjEyOApIZWhlLCBzdHVwc2VuZGUgUXVlc3QtTlBDcyBuZSBXZWlsZSB2b3IgZGVyIFF1ZXN0IGFuenVzY2hsaWVzc2VuIGlzdCBqYSBtYWwgbmUKbHVzdGlnZSBJZGVlIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5vY2ggc2lubmxvc2UgTlBDcy4uLiAoTWVkaWMsICA0LiBKYW4gMjAwNSwgMTk6MjM6NDgpOgp+IyEgcm49RGFya3dpbmcgcnQ9MTEwNDg2MjM1NyByZz1zY2htYXJybgp+IyEgdGlkPTExMDQ4NTIxMjgKS29taXNjaCB1ZWJyaWdlbnMsIGRhcyBIdW1uaXMgTlBDcyBnZXJuZSBpbiBLbmVpcGVuIGhlcnVtbHVuZ2VybiwgZGEgdWViZXIKRG9ubmVyZ3VyZ2xlciBqYW1tZXJuIChvaywgZGFzIGphbW1lcm4gaXN0IHN0aWxlY2h0LCBpc3Qgc2NobGllc3NsaWNoClphdWJlcmVyKSB1bmQgbGllYmVyIEJpZXIgaGFldHRlbiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hLCB3ZXIgdmVyc3RlaHRzPyA6LSkgKExpbGxlYnJvciwgIDUuIEphbiAyMDA1LCAwMDoxNTozMik6Clp1bSBmcmlzY2hlbiBXaW5kLgpFcyBnaWJ0IHp3ZWkgc2ljaHRiYXJlIEF1c2dhZW5nZTogb3N0ZW4gdW5kIHdlc3Rlbi4KRWluIGdlbGJlcyBQb3N0cGFrZXQgZnVlciBWZXJmbHVjaHRlbiBrcmFtIChnZW9lZmZuZXQpLgpFaW4gV2lydC4KRGllIFRvcC1MaXN0ZSwgVG9wLVNwaWVsZXJsaXN0ZSB1bmQgVG9wLVNlaGVybGlzdGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmEsIHdlciB2ZXJzdGVodHM/IDotKSAoTWlyaWwsICA1LiBKYW4gMjAwNSwgMTI6NTA6MzApOgp+IyEgcm49TGlsbGVicm9yIHJ0PTExMDQ4ODA1MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA0ODgwNTMyCkVzIGdpYnQgYXVjaCBydWVja3NpY2h0c3ZvbGxlIERlbGZlbiwgZGllIGlocmUgVWViZWl0ZW1zIG5pY2h0IGluIGRlciBHZWdlbmQKcnVtbGllZ2VuIGxhc3Nlbi4gTmV0dCBpc3QgZGFubiBhbGxlcmRpbmdzLCB3ZW5uIGVpbiBTcGllbGVyIG1pdCBuZW0gQWZmZW4KaW4gZGVyIEtuZWlwZSBydW1sdW5nZXJ0IHVuZCBkaWVzZXIgQWZmZSBuaXggYmVzc2VyZW4genUgdHVuIGhhdCwgYWxzIGRlbgpnYW56ZW4gS3JlbXBlbCBzY2hvZW4gaW0gTUcgenUgdmVydGVpbGVuLgoKbWlyaWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmEsIHdlciB2ZXJzdGVodHM/IDotKSAoRGFya2xvciwgIDUuIEphbiAyMDA1LCAxMjo1NzoxNCk6Cn4jISBybj1NaXJpbCBydD0xMTA0OTI1ODMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNDg4MDUzMgpIb2VydCBzaWNoIGRvY2ggdG9sbCBhbi4uLiA7KQoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IENpY2Vyb25lcyAoTGlhcmEsICA1LiBKYW4gMjAwNSwgMjE6MTY6NDQpOgp+IyEgcm49QW5hdG9sIHJ0PTExMDQ5NTYxNjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA0ODQ1MjkzCkRhbmtlLiBOdW4gZ2VodCBlcyBtaXIgcmljaHRpZyBndXQuIDooCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BlbmRlbmF1ZnJ1ZiBmdWVyIExpdHRsZSBTbWlsZSAoR3JpbW1ib3JuLCAgNS4gSmFuIDIwMDUsIDIzOjA4OjI0KToKfiMhIHJuPVdpZGV3aXR0IHJ0PTExMDQ5NTU3OTIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTA0OTU1NzkyCkFsc28sIGFuIGVpbiBQcm9qZWt0LCBkYXNzIHNlaW4gR2VsZCBvaG5lIFZlcndhbHR1bmcgcmF1c2hhdXQsIHd1ZXJkZSBpY2ggbnVuCmdhbnogYmVzdGltbXQgbmljaHQgc3BlbmRlbi4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3BlbmRlbmF1ZnJ1ZiBmdWVyIExpdHRsZSBTbWlsZSAoT3JrdG9ldGVyLCAgNS4gSmFuIDIwMDUsIDIzOjExOjIwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTA0OTYyOTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNDk1NTc5MgpXdWVyZGUgaWNoIHNvIGdlbmVyZWxsIG5pY2h0IHNhZ2VuLgpXZW5uIGljaCBzZWhlLCB3aWUgdmllbCBlaW5lIEtvbGxlZ2luIGluIElocmVyIEZyZWl6ZWl0IGZ1ZXIgZGllIGxva2FsZSBLaXJjaGUKdW5kIGJlZHVlcmZ0aWdlIG9yZ2FuaXNpZXJ0Li4uIGJld3VuZGVybnN3ZXJ0IQoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNwZW5kZW5hdWZydWYgZnVlciBMaXR0bGUgU21pbGUgKEdyaW1tYm9ybiwgIDYuIEphbiAyMDA1LCAwMDoyMjo1MCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTEwNDk2MzA4MCByZz1zY2htYXJybgp+IyEgdGlkPTExMDQ5NTU3OTIKTnVuIGtvbW0gYml0dGUgaGllciBuaWNodCBtaXQgRGVpbmVuIEJpcm5lbiBhbiwgd2VubiBlcyB1bSBBZXBmZWwgZ2VodC4gRmFrdAppc3QsIGRhc3MgaWNoIGVpbmVyIHdpZSBhdWNoIGltbWVyIGdlYXJ0ZXRlbiBJbnN0aXR1dGlvbiwgZGllIEdlbGQgaGFiZW4gd2lsbAp1bmQgbWlyIHNhZ3QsIGRhc3Mgc2llIGRhcyBhYmVyIG5pY2h0IHZlcndhbHRldCwgbmljaHQgd2VpdGVyIHRyYXVlIGFscyBpY2gKZGllIEh5ZHJhIHdlcmZlbiBrYW5uLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3BlbmRlbmF1ZnJ1ZiBmdWVyIExpdHRsZSBTbWlsZSAoR2xvaW5zb24sICA2LiBKYW4gMjAwNSwgMDE6MzU6MDEpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExMDQ5NjMwODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA0OTU1NzkyClVuZCBkaWUgdmVybGFlc3N0IHNpY2ggZGFiZWkgYXVmIG5pZW1hbmRlbiBkZXIgR2VsZCB2ZXJ3YWx0ZXQ/IFNwcmljaCBkYXMgaXN0CmVpbmUgRnJlaWtpcmNoZSBtaXQgZWlnZW5lbSBTYWVja2VsPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdlcmV0dGV0PyBPZGVyIHZlcmxvcmVuPyAoTWFoYXJldCwgIDYuIEphbiAyMDA1LCAxNTo0NzozOCk6CkpvbiBzYWd0OiBvaCBtZWluIGtvdCBoYXVidHNhY2hlIGR1IGxrZWJzdCBub2NoCgpEYSBnZWggaWNoIHdvbGwgYmVzc2VyIGR1c2NoZW4gLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMzogQ2ljZXJvbmVzIChMaWFyYSwgIDYuIEphbiAyMDA1LCAxOTo1MToxMik6Cn4jISBybj1Gb29iYXIgcnQ9MTEwNTAzMzIxMiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTExMDQ4NDUyOTMKRm9vYmFyLCBkZWluZSBBcnRpa2VsIHNpbmQgbWlyIHZpZWwgenUga29uc3RydWt0aXYgdW5kIHZpZWwgenUgd2VuaWcgYW5nZW5lcnZ0Ci4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTcGVuZGVuYXVmcnVmIGZ1ZXIgTGl0dGxlIFNtaWxlIChLZWxseWJ1bmR5LCAgNy4gSmFuIDIwMDUsIDE4OjU1OjU2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTA0OTYyOTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNDk1NTc5MgpJc3QgZGllIEZyYWdlLCB3YXMgdGV1cmVyIGlzdC4gR2VsZHZlcnNjaHdlbmR1bmcgbWFuZ2VscyBWZXJ3YWx0dW5nIG9kZXIgZGllCkZpbmFuemllcnVuZyBkZXIgVmVyd2FsdHVuZy4KCkJsb25kY2hlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGFidCBJaHIgZWluIEdsdWVjayA6KSAoTXVhZGliLCAgNy4gSmFuIDIwMDUsIDIyOjE0OjIzKToKcm0gLi9zYXZlCkZlaGxlciBhdWZnZXRyZXRlbjogKlp1IHZpZWxlIEZpbGVzICg+MzAwMCkhISBBYmdlYnJvY2hlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIYWJ0IElociBlaW4gR2x1ZWNrIDopIChDcm9mdCwgIDcuIEphbiAyMDA1LCAyMjo1NjoyNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTEwNTEzMjQ2MyByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxMzI0NjMKOmVlazoKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGFidCBJaHIgZWluIEdsdWVjayA6KSAoT3JrdG9ldGVyLCAgNy4gSmFuIDIwMDUsIDIzOjE2OjM1KToKfiMhIHJuPU11YWRpYiBydD0xMTA1MTMyNDYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTEzMjQ2MwpVbmQ/IFNwaWVsZW4gd2lyIGhhbHQgZWluIEJhY2t1cCB2b24gdm9yIG5lbSBKYWhyIGVpbi4uCgpPcmtULCBkZW4gZGFzIHZvZWxsaWcgZWdhbCB3YWVyZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIYWJ0IElociBlaW4gR2x1ZWNrIDopIChNdXBmZWwsICA3LiBKYW4gMjAwNSwgMjM6NDQ6NDMpOgp+IyEgcm49TXVhZGliIHJ0PTExMDUxMzI0NjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTMyNDYzClNjaG9ubWFsIG5hY2hnZXNjaGF1dCwgb2IgZGllIE1lbGR1bmcgKmJlaW0qIExvZXNjaGVuIGthbSBvZGVyIGRhdm9yPyA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGFidCBJaHIgZWluIEdsdWVjayA6KSAoSHVtbmksICA3LiBKYW4gMjAwNSwgMjM6NDk6MTMpOgp+IyEgcm49TXVwZmVsIHJ0PTExMDUxMzc4ODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTMyNDYzCk9jaCwgZGllIFNwaWVsZXIsIGRpZSBnZWxvZXNjaHQgd3VyZGVuLCB3ZXJkZW4gc2ljaCBzY2hvbiByZWNodHplaXRpZwpiZXNjaHdlcmVuIHR1bi4gCgpVbmQgYWxzIGRlciBTcGllbGVyIGRhcyBob2VyZW4gdHV0CmxvZXNjaHQgZXIgc2ljaCB2b3IgV3V0LgoKSHVtbmkKUFM6IEphLCBpbSBPcmlnaW5hbCBoaWVzcyBkYXMgYW5kZXJzLiBNYWNodCBqYSBuaXguClBQUzogU3RpbW10LCBkYXMgT3JpZ2luYWwga2VubnQgaWhyIG5pY2h0LiBBdWNoIGVnYWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIYWJ0IElociBlaW4gR2x1ZWNrIDopIChBaGFiLCAgNy4gSmFuIDIwMDUsIDIzOjUwOjE5KToKfiMhIHJuPUh1bW5pIHJ0PTExMDUxMzgxNTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTMyNDYzCjpnaWJ0IHp3aXNjaGVuZHVyY2ggbWFsIHNjaG5lbGwgInNhdmUiIGVpbi4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouLi4gKEdsb2luc29uLCAgNy4gSmFuIDIwMDUsIDIzOjUzOjU2KToKTWFoYXJldDogKHVlYmVydG9lbnQpIE1laW5lIGtsZWluZSBSYXR0ZSBmYWVsbHQgbWljaCBtYW5jaG1hbCBhdWNoIGFuLgpHbG9pbjogSWNoIGRhY2h0ZSBkdSB3b2xsdGVzdCBNZXNpcmlpIGZhZWxsdCBkaWNoIGFuLgpNYWhhcmV0OiBOZWluIGljaCBzYWd0ZSwgbWVpbmUga2xlaW5lIFJhdHRlIGZhZWxsdCBtaWNoIG1hbmNobWFsIGF1Y2ggYW4uCgpBaHNvIC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdla2xhdXQgYmVpIGRlLmFsdC5uZXRkaWdlc3QuIChSb25kYSwgIDguIEphbiAyMDA1LCAwMDoxOToxMSk6Ci4uLiBpc3QgZGllc2VyIExpbms6Cmh0dHA6Ly93d3cuZGFzLXJlY2h0c3BvcnRhbC5kZQouLi4gZGEgaW0gbGlua2VuIE1lbnVlIGF1ZiAiUmVjaHQga3VyaW9zIiBrbGlja2VuLiBOZXR0ZSBHZXNjaGljaHRlbi4KClJvbmRhCgpCZWkgZGllc2VtIEFydGlrZWwgd29obCBhbmdlYnJhY2h0OiBEaXNjbGFpbWVyOiBGdWVyIGRlbiBXYWhyaGVpdHNnZWhhbHQKZGllc2VyIEdlc2NoaWNodGVuIHdpcmQga2VpbmUgR2V3YWVociwgR2V3YWVocmxlaXN0dW5nIG9kZXIgR2FyYW50aWUKdWViZXJub21tZW4uIERpZXNlciBMaW5rIGlzdCBLRUlORSBSZWNodHNiZXJhdHVuZy4KV2FzYXVjaGltbWVybWFuZGVua2Vua29lbm50ZWZ1ZXJyZWNodGUgd2VyZGVuIG5pY2h0IHVlYmVybm9tbWVuLiBBbWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhhYnQgSWhyIGVpbiBHbHVlY2sgOikgKEtlbGx5YnVuZHksICA4LiBKYW4gMjAwNSwgMTg6MDg6MDkpOgp+IyEgcm49TXVhZGliIHJ0PTExMDUxMzI0NjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTMyNDYzClJvb2tpZS4gU3R1ZW1wZXIuIERpbGxldHRhbnQuIGRhIGZlaGx0IGVpbiAtcmYgOy1QCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhhYnQgSWhyIGVpbiBHbHVlY2sgOikgKE11YWRpYiwgIDguIEphbiAyMDA1LCAxODoxNjoyNik6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTExMDUyMDQwODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTMyNDYzCmFscyBnZXVlYnRlciBib2ZoIGdpbHQgbmF0dWVybGljaCBhbGlhcyBybSBybSAtcmYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhIHdpcmQgbWFuIGFya3dvZWhuaXNjaCAuLi4gKE1haGFyZXQsICA5LiBKYW4gMjAwNSwgMDE6MTY6MjcpOgowMToxNDoxMCArIEFyawooMDE6MTQpIEFyayAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICAgISEhCkRlaW4gRnJldW5kIE11YWRpYiB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4gCjAxOjE0OjI0IC0gTXVhZGliCigwMToxNCkgTXVhZGliICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICAgISEhCjAxOjE0OjI2IC0gT2dvCigwMToxNCkgPC0gRGVpbiBGcmV1bmQgVmFuaW9uOiBieWUKMDE6MTQ6MzEgLSBWYW5pb24KKDAxOjE0KSBWYW5pb24gICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgICAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChEYXJrd2luZywgIDkuIEphbiAyMDA1LCAxNDoxNzoyNCk6Cn4jISBybj1UdXJibyBydD0xMTA1MjI4NjE5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTA1MTQ0MTkzCktpdSdzIEthdHplbmtyaWVnZXIgaGF0IE5hY2h0d2luZCBpbiBkZXIgQXJlbmEgdmVyaGF1ZW4sIGljaCB3ZWlzcyBlcyBub2NoCmdlbmF1LiBTbyBzY2hsaW1tIGthbm4gZXMgZ2FyIG5pY2h0IHNlaW4gOi0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSUtFQSBNdWQuIChSb25kYSwgIDkuIEphbiAyMDA1LCAyMzozMDowOCk6Ckdla2xhdXQgdm9uIGh0dHA6Ly9leWVzdW4uZGhzLm9yZy9kdW1wL2lrZWEudHh0LiBFcyBmZWhsdCBhbGxlcmRpbmdzIGRlcgpsZXR6dGUgTGV2ZWw6IERlciBadXNhbW1lbmJhdS4gQWJlciBhbnNvbnN0ZW4gc2VociB0cmVmZmVuZC4KClJvbmRhCgpQczogV2FybnVuZzogU0VIUiBTRUhSIExBTkcuIEJlc2NocmVpYnVuZyB1bmQgUmVhbGl0YWV0LgoKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogX18gICAgICBfXyAgX19fICAgICBfX19fX19fICAgICAgICAgX19fICAgICAgCnwgIHwgICAgfCAgfC8gIC8gICAgfCAgIF9fX198ICAgICAgIC8gICBcICAgICAKfCAgfCAgICB8ICAnICAvICAgICB8ICB8X18gICAgICAgICAvICBeICBcICAgIAp8ICB8ICAgIHwgICAgPCAgICAgIHwgICBfX3wgICAgICAgLyAgL19cICBcICAgCnwgIHwgICAgfCAgLiAgXCAgICAgfCAgfF9fX18gICAgIC8gIF9fX19fICBcICAKfF9ffCAgICB8X198XF9fXCAgICB8X19fX19fX3wgICAvX18vICAgICBcX19cIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KSUtFQSBXQUxLVEhST1VHSCB2Mi4zLjEKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQoKSUtFQSBpcyBhIGZ1bGx5IGltbWVyc2l2ZSwgM0QgZW52aXJvbm1lbnRhbCBhZHZlbnR1cmUgdGhhdAphbGxvd3MgeW91IHRvIHJvbGUtcGxheSB0aGUgY2hhcmFjdGVyIG9mIHNvbWVvbmUgd2hvIGdpdmVzIGEKc2hpdCBhYm91dCBob21lIGZ1cm5pc2hpbmdzLiBJbiB0cmF2ZXJzaW5nIElLRUEsIHlvdSB3aWxsCmV4cGVyaWVuY2UgYSBtZXRpY3Vsb3VzbHkgZGV0YWlsZWQgYWx0ZXJuYXRlIHJlYWxpdHkgZmlsbGVkCndpdGggZ2FyaXNoIGNvbG9ycywgY2xlYXItbGFjcXVlcmVkIGJpcmNoIHZlbmVlciwgYW5kIGEgaG9zdApvZiBOT04tUExBWUVSIENIQVJBQ1RFUlMgKE5QQ3MpIHdpdGggdGhlIGdsYXplZCBsb29rcyBvZiB0aGUKcmVjZW50bHkgYW5lc3RoZXRpemVkLgoKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpPQkpFQ1RJVkUKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQoKWW91ciBnb2FsIGlzIHRvIHN1Y2Nlc3NmdWxseSB0cmF2ZXJzZSB0aGUgZml2ZSBhd2Vzb21lIHdvcmxkcwpvZiBJS0VBIGJlZm9yZSB5b3VyIHBhdGllbmNlIHJ1bnMgb3V0LiBPbiB5b3VyIGZpcnN0IGZldwp0cmllcyB0aGlzIG1heSBzZWVtIGxpa2UgYW4gaW1wb3NzaWJsZSB0YXNrLCBidXQgd2l0aApwcmFjdGljZSAoYW5kIHRoaXMgSUtFQSBXYWxrdGhyb3VnaCEpIHlvdSB3aWxsIHNvb24gYmUgYWJsZQp0byBtdXN0ZXIgdGhlIHNlbnNlIG9mIG51bWIgcmVzaWduYXRpb24gbmVjZXNzYXJ5IGZvcgp2aWN0b3J5LgoKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpXT1JMRCBPTkU6IFBBUktJTkcgTE9UCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCllvdXIgYWR2ZW50dXJlIGJlZ2lucyEgRHJpdmUgeW91ciB2ZWhpY2xlIGludG8gdGhlIElLRUEKdW5kZXJncm91bmQgUEFSS0lORyBMT1QuIFlvdXIgdGFzayBpcyB0byBmaW5kIHRoZSBmYWJsZWQKUEFSS0lORyBTUE9UIGhpZGRlbiBkZWVwIHdpdGhpbiB0aGlzIHRveGljIGNhdmVybi4gWW91cgpzZWFyY2ggd2lsbCBub3QgYmUgZWFzeSwgYXMgdGhlIFBBUktJTkcgU1BPVCBtYXkgbm90IGFwcGVhcgp1bnRpbCB5b3UgZmlyc3QgcXVhbGlmeSBieSBjb21wbGV0aW5nIHNldmVyYWwgZG96ZW4gbGFwcy4gQXMKaW4gYWxsIHdvcmxkcywgdGltZSBpcyBvZiB0aGUgZXNzZW5jZTogSWYgeW91IGFyZSB1bmFibGUgdG8KZmluZCB0aGUgUEFSS0lORyBTUE9UIGluIDE4MCBtaW51dGVzIG9yIGxlc3MsIHlvdSBtYXkgYmVjb21lCmlycml0YXRlZCBhbmQgbGVhdmUuCgpBbHRob3VnaCB5b3VyIHZlaGljbGUgY29tZXMgZXF1aXBwZWQgd2l0aCBhIGJyYWtpbmcgbWVjaGFuaXNtCih0aGUgIkIiIHBlZGFsKSwgdGhlIHNlY3JldCB0byBzdWNjZXNzIGluIHRoaXMgd29ybGQgaXMgdG8KbmV2ZXIgZGVjZWxlcmF0ZS4gSWYgdGhlcmUgYXJlIGNhcnMgaW4gZnJvbnQgb2YgeW91LCBidW1wCnRoZW0gb3V0IG9mIHRoZSB3YXkgdW50aWwgeW91IGFyZSBhYmxlIHRvIHBhc3MuIEFsdGhvdWdoIHlvdQptYXkgdGhpbmsgaXQgbWFrZXMgc2Vuc2UgdG8gc2xvdyBkb3duIHdoaWxlIG5hdmlnYXRpbmcgc2hhcnAKdHVybnMsIGl0IGlzIGFsbW9zdCBhbHdheXMgcXVpY2tlciB0byBrZWVwIHlvdXIgYWNjZWxlcmF0b3IKKHRoZSAiQSIgcGVkYWwpIGRlcHJlc3NlZCB0byB0aGUgZnVsbGVzdCwgY3Jhc2ggeW91ciB2ZWhpY2xlCmludG8gYSB3YWxsIG9yIHBhcmtlZCBjYXIgYXMgeW91IHJvdW5kIHRoZSBjb3JuZXIsIGFuZCByZXN1bWUKYWNjZWxlcmF0aW9uIGZyb20gYSBzdGFuZHN0aWxsLgoKVG8gZmluZCB0aGUgUEFSS0lORyBTUE9UIHlvdSB3aWxsIG5lZWQgdG8gdmVudHVyZSBkb3duIHRoZQptYW55IGxhbmVzIHRocm91Z2hvdXQgdGhlIFBBUktJTkcgTE9ULiBXQVJOSU5HOiBBbHdheXMgbG9vawpiZWZvcmUgZW50ZXJpbmcgYSBsYW5lLCBhcyBtYW55IHdpbGwgY29udGFpbiBpZGlvdHMgd2hvIGhhdmUKZWxlY3RlZCB0byBzaW1wbHkgc3RvcCB0aGVpciBGb3JkIEV4Y3Vyc2lvbnMgaW4gdGhlIG1pZGRsZSBvZgp0aGUgcGFzc2FnZXdheSBhbmQgd2FpdCBmb3Igc29tZW9uZSB0byBsZWF2ZS4gSWYgeW91CmluYWR2ZXJ0ZW50bHkgZmluZCB5b3Vyc2VsZiB0cmFwcGVkIGJlaGluZCBvbmUgb2YgdGhlc2UKbW9yb25zIGFuZCBoYXZlIHNlbGVjdGVkIGEgdmVoaWNsZSB3aXRoIHNpZGUtbW91bnRlZApyb2NrZXQtbGF1bmNoZXJzLCB1c2UgdGhlbSBub3cuCgpSRU1FTUJFUjogRXZlcnkgcGVyc29uIHlvdSBydW4gZG93biBpbiB0aGlzIHdvcmxkIGlzIG9uZSBsZXNzCnlvdSdsbCBoYXZlIHRvIGRlYWwgd2l0aCBpbiBmdXR1cmUgbGV2ZWxzLCBzbyBuZXZlciBtaXNzIGFuCm9wcG9ydHVuaXR5IGZvciBjYXJuYWdlIQoKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpXT1JMRCBUV086IFNIT1dST09NUwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgpZb3Ugc3RhcnQgdGhpcyB3b3JsZCBhcm1lZCBvbmx5IHdpdGggYSBVTklWRVJTQUwKRlVSTklUVVJFLUFTU0VNQkxZIEFMTEVOIFdSRU5DSC4gVGhpcyBpcyB0aGUgd2Vha2VzdCB3ZWFwb24KaW4gSUtFQTogWW91IHdpbGwgaGF2ZSB0byBoaXQgYSBwZXJzb24gMTYgdGltZXMgd2l0aCBpdCB0bwpraWxsIHRoZW0uIFNvIHlvdXIgcHJpbWFyeSBnb2FsIGluIHRoaXMgbGV2ZWwgaXMgdG8gZmluZCBtb3JlCmxldGhhbCBtZWFucyBvZiBkaXNwYXRjaGluZyB5b3VyIGVuZW1pZXMuCgpBcyB5b3UgZW50ZXIgdGhlIFNIT1dST09NLCBwZXJmb3JtIGEgcm9sbGluZyBkb2RnZSB0byB0aGUKbGVmdC4gR3JhYiBhIGZyZWUgUEFQRVIgVEFQRSBNRUFTVVJFIGFuZCBhIGhhbmRmdWwgb2YgSUtFQQpFTUJMQVpPTkVEIEdPTEYgUEVOQ0lMUyBmcm9tIHRoZSBraW9zayBuZWFyIHRoZSBlbnRyeXdheS4gVGhlClBFTkNJTFMgc2VydmUgcXVpdGUgd2VsbCBhcyByYW5nZWQgd2VhcG9ucywgYnV0IGl0IHdpbGwgdGFrZQpzb21lIHRpbWUgdG8gbWFzdGVyIHRoZWlyIHVzZS4gQmVmb3JlIHZlbnR1cmluZyBmdXJ0aGVyIGluCnRoZSB3b3JsZCwgc3RhbmQgYXQgdGhlIGtpb3NrIGFuZCBwcmFjdGljZSBodXJsaW5nIEdPTEYKUEVOQ0lMUyBhdCBwYXRyb25zIGFzIHRoZXkgZW50ZXIgdGhlIFNIT1dST09NLiBSZW1lbWJlcjoKSGl0dGluZyB0aGUgZXllcyBkb2VzIHRyaXBsZSBkYW1hZ2UuCgpOb3cgbWFrZSB5b3VyIHdheSBpbnRvIHRoZSBtYWluIFNIT1dST09NLCB1c2luZyB0aGUgUEFQRVIKVEFQRSBNRUFTVVJFIHRvIHRocm90dGxlIGFueW9uZSB3aG8gYmxvY2tzIHlvdXIgcGF0aC4KCkFzIHlvdSBlbnRlciB0aGUgbWFpbiBhcmVhLCB5b3Ugd2lsbCBzZWUgYW4gRUtIQVJEIG9pbGVkCnNvbGlkLW9hayBkaW5pbmcgc2lkZWJvYXJkLiBRdWlja2x5IGtpY2sgaXQgYXBhcnQgdG8gYWNxdWlyZQp0aGUgVEFCTEUgTEVHIFdJVEggTkFJTC4KCkFzIHlvdSBjb250aW51ZSB0aHJvdWdoIHRoZSBtYWluIFNIT1dST09NIHlvdSB3aWxsIHNlZSBncm91cHMKYmxvY2tpbmcgdGhlIHdhbGt3YXlzIHdoaWxlIGNoYXR0aW5nIGFuZCBvdGhlcnMgbW92aW5nCmFnYWluc3QgdHJhZmZpYy4gVGhlc2UgcGVvcGxlIHNob3VsZCBiZSBraWxsZWQgaW1tZWRpYXRlbHkuCgpXaGVuIHlvdSBlbnRlciB0aGUgb2ZmaWNlIGZ1cm5pdHVyZSBzZWN0aW9uLCBzZWFyY2ggdGhlIGJhY2sKd2FsbCBhbmQgYWNxdWlyZSB0aGUgTk9NSU5FTEwgc3dpdmVsIGNoYWlyIHdpdGggbG9ja2FibGUgdGlsdAp0ZW5zaW9uIGFuZCBnYXMtbGlmdCBzZWF0LWhlaWdodCBhZGp1c3RtZW50LiBVc2luZyB0aGlzIHRvCnByb3BlbCB5b3Vyc2VsZiB0aHJvdWdoIHRoZSByZW1haW5kZXIgb2YgdGhlIGxldmVsIHdpbGwKZ3JlYXRseSBpbXByb3ZlIHlvdXIgdGltZS4gQmUgc3VyZSB0byBicmVhayBvcGVuIGFsbCBjYWJpbmV0cwphbmQgZHJlc3NlcnMgYXMgeW91IHRyYXZlbCwgbG9va2luZyBmb3IgcG93ZXItdXBzLgoKSW4gdGhlIGtpdGNoZW4gYXJlYSwgZ3JhYiBzb21lIFNDRU5URUQgQ0FORExFUy4gV2hpbGUKbm9uLWxldGhhbCwgeW91IGNhbiBsaWdodCB0aGVtIGFuZCBzdHVuIHRob3NlIGFyb3VuZCB5b3Ugd2l0aApZZSBPbGRlIFRpbWV5IFN0ZW5jaCBiZWZvcmUgZGlzcGF0Y2hpbmcgdGhlbSB3aXRoIHRoZQpLQVZBTEtBRCBhbHVtaW51bSBub24tc3RpY2sgc2F1Y2VwYW4uCgpZb3UncmUgYWxtb3N0IHRoZXJlISBXb3JrIHlvdXIgd2F5IHRvd2FyZCB0aGUgbm9ydGhlcm4gd2FsbC4KSW4gYW4gYWxjb3ZlIG5lYXIgdGhlIGV4aXQgeW91IHdpbGwgZmluZCBhIHJhY2sgY29udGFpbmluZwpjb3BpZXMgb2YgdGhlIElLRUEgU1BSSU5HIDIwMDQgQ0FUQUxPRy4gV2VpZ2hpbmcgaW4gYXQgMTcKcG91bmRzLCB0aGlzIGlzIHRoZSBtb3N0IHBvd2VyZnVsIHdlYXBvbiB5b3UnbGwgZmluZCEgVXNlIHRoZQpDQVRBTE9HIHRvIGJsdWRnZW9uIHRoZSByZW1haW5pbmcgcGVvcGxlIGJldHdlZW4geW91IGFuZCB0aGUKZXhpdCBhbmQgcHJvY2VlZCBvbiB0byB0aGUgbmV4dCB3b3JsZC4KCk5PVEU6IEF0IGFueSB0aW1lIHlvdSBjYW4gdmlzaXQgdGhlIElLRUEgQ0FGPyBhbmQgYWNxdWlyZSBhCiQxIExBVFRFIHBvd2VyLXVwLiBBdm9pZCB0aGUgJDAuNzUgSE9UIERPRywgdGhvdWdoOiBJdCB3aWxsCmdpdmUgeW91IGEgdGVtcG9yYXJ5IGVuZXJneSBib29zdCBidXQgdGhlbiBpbXBlZGUgeW91cgpyZWFjdGlvbiB0aW1lIGZvciB0aGUgcmVtYWluZGVyIG9mIHRoZSBhZHZlbnR1cmUuCgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CldPUkxEIFRIUkVFOiBNQVJLRVRQTEFDRQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgpZb3VyIGdvYWwgaW4gdGhpcyB3b3JsZCBpcyB0byBsb2NhdGUgdGhlIGZpdmUgY29tcG9uZW50cyBvZgp0aGUgRFJFQU0gQkVEUk9PTSBFTlNFTUJMRSAoREJFKTogTUFMTSB3aGl0ZS1sYWNxdWVyZWQgcXVlZW4KYmVkIGZyYW1lLCBLSUxBTiBSQU5EIGZ1bGwvcXVlZW4gMTAwJSBjb3R0b24gcXVpbHQgY292ZXIgc2V0LApDT1JSQVMgYmVkc2lkZSB0YWJsZSAod2l0aCBjYXN0ZXJzIGFuZCBvbmUgYWRqdXN0YWJsZSBzaGVsZiksCkhPUEVOIHRocmVlLWRyYXdlciBjaGVzdCwgYW5kIFBBWC9CUkVWSUsgd2FyZHJvYmUgd2l0aAp3aGl0ZS1mb2lsIGZpbmlzaC4KClRoaXMgd29ybGQgaXMgZmlsbGVkIHdpdGggTk9OLVBMQVlFUiBDSEFSQUNURVJTIChOUENzKSwgYW5kCm1hbnkgd2lsbCBnaXZlIHlvdSBpbXBvcnRhbnQgY2x1ZXMgaWYgeW91IGludGVyYWN0IHdpdGggdGhlbS4KVG8gInRhbGsiIHdpdGggYW4gTlBDLCBzdGFuZCBpbiBmcm9udCBvZiBvbmUgYXMgaXQgdHJpZXMgdG8KYnJvd3NlIGFuZCB3YWl0IGZvciBpdCB0byBhZGRyZXNzIHlvdSBkaXJlY3RseS4gSWYgaXQgdHJpZXMKdG8gbW92ZSBhcm91bmQgeW91LCBzaW1wbHkgcmVwb3NpdGlvbiB5b3Vyc2VsZiBiZXR3ZWVuIGl0IGFuZAppdHMgZGVzaXJlZCBtZXJjaGFuZGlzZS4gSWYgaXQgcmVmdXNlcyB0byBhY2tub3dsZWRnZSB5b3UsCnRyeSBjdWZmaW5nIGl0IHNoYXJwbHkgb24gdGhlIHNpZGUgb2YgdGhlIGhlYWQgYW5kIHNheWluZywKIkhleSEgSGV5IGJ1ZGR5ISIKCk9uY2UgZGlhbG9ndWUgaGFzIGJlZW4gaW5pdGlhdGVkLCBsaXN0ZW4gY2xvc2VseSBmb3IgaGludHMgdG8KdGhlIGxvY2F0aW9uIG9mIHlvdXIgREJFIGNvbXBvbmVudHMuIElmIHRoZSBOUEMgc3RvcHMKdGFsa2luZywgeW91IG1heSBuZWVkIHRvIHByb21wdCBpdCBieSBhc2tpbmcgYWJvdXQgaXRzCmZhdm9yaXRlIHRvcGljcy4gSGVyZSBhcmUgc29tZSBzdWJqZWN0cyB0aGF0IHRoZSBOUENzIGluIElLRUEKd2lsbCBiZSBoYXBweSB0byB0YWxrIGFib3V0OgoKKiBUaGUgZmluYWwgZXBpc29kZSBvZiBGcmllbmRzCiogV2hhdCdzIHVwIHdpdGggYWxsIHRoaXMgcmFpbgoqIFRoZSBPcHJhaCBCb29rIENsdWIsIGJhY2sgYmVmb3JlIHNoZSBzdGFydGVkIHBpY2tpbmcKICBoYXJkLXRvLXJlYWQgR2FicmllbCBHYXJjaWEgTWFycXVleiBjcmFwIAoqIFRoZSBTb3V0aCBCZWFjaCBEaWV0CiogVGhhdCBvbmUgRXZlcnlib2R5IExvdmVzIFJheW1vbmQgZXBpc29kZSB3aGVyZSBGcmFuayBmYWtlcyAKICBhbiBpbmp1cnkgc28gaGUgd29uJ3QgaGF2ZSB0byBnbyBvbiBhIGNydWlzZSB3aXRoIE1hcmllCiogVGhlIEdhcAoKU2NhdHRlcmVkIHRocm91Z2hvdXQgdGhpcyBsZXZlbCBhcmUgSUtFQSBjb21wdXRlciB0ZXJtaW5hbHMuCklmIHlvdSBjYW4gaGFjayBpbnRvIG9uZSB5b3UgbWF5IGJlIGFibGUgdG8gbG9jYXRlIHlvdXIgREJTCmNvbXBvbmVudHMsIGJ1dCBhbiBJS0VBIFNUQUZGIE1FTUJFUiBtYXkgZW50ZXIgdGhlIHNjZW5lIGFuZAphc2sgd2hhdCB5b3UgYXJlIGRvaW5nLiBJZiB5b3Ugc3BlYWsgbGlrZSB0aGUgU3dlZGlzaCBDaGVmCnlvdSBtYXkgYmUgYWJsZSB0byBmb29sIHRoZSBlbXBsb3llZSBpbnRvIHRoaW5raW5nIHlvdSBhcmUKdGhlIElLRUEgcmVnaW9uYWwgbWFuYWdlci4gSWYgaGUgc3RpbGwgc2VlbXMgc2tlcHRpY2FsLCBwYW50cwpoaW0gYW5kIGZsZWUgaW50byB0aGUgSUtFQSBLSURTIHNlY3Rpb24uCgpXaGVuZXZlciB5b3UgZmluZCBvbmUgb2YgdGhlIERCRSBjb21wb25lbnRzLCB0YWtlIHRoZQpwdXJjaGFzZSB0YWcgYXNzb2NpYXRlZCB3aXRoIGl0OyB3aGVuIHlvdSBoYXZlIGNvbGxlY3RlZCBhbGwKZml2ZSwgdGhlIG5leHQgd29ybGQgd2lsbCB1bmxvY2suCgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CldPUkxEIEZPVVI6IFNFTEYtU0VSVkUgV0FSRUhPVVNFCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCk5vdyB5b3UgbXVzdCBmaW5kIHlvdXIgYWN0dWFsIERCRSBpdGVtcyBpbiB0aGUgU0VMRi1TRVJWRQpXQVJFSE9VU0UuIFRoaXMgbGFieXJpbnRoIGNhbiBiZSB2ZXJ5IGZydXN0cmF0aW5nIGFuZCB3aWxsCnJlcXVpcmUgeW91ciBmdWxsIGF0dGVudGlvbiB0byBuYXZpZ2F0ZS4gRG8gbm90IHJlbHkgb24gdGhlCndhcmVob3VzZSBzaGVsZiBsb2NhdGlvbnMgcHJpbnRlZCBvbiB0aGUgcHVyY2hhc2UgdGFncyBvZgp5b3VyIGl0ZW1zIC0tIGR1ZSB0byBzb21lIHRyYW5zbGF0aW9uIGJ1Z3MgaW50cm9kdWNlZCB3aGlsZQpwb3J0aW5nIElLRUEgZnJvbSBTd2VkaXNoIHRvIEVuZ2xpc2gsIHRoZXkgYXJlIGFsbW9zdCBuZXZlcgpjb3JyZWN0LgoKVXBvbiBlbnRlcmluZyB0aGUgd2FyZWhvdXNlLCB5b3UgbmVlZCB0byBnbzoKCk4sIE4sIEUsIE4sIFMsIFNXLCBVLCBOLCBXLCBVLCBXLCBXLCBXLCBVLCBOVywgTiwgTlcsIFMsIEUsClcsIFcsIFcsIE4sIFcuCgpOb3cgeW91IGFyZSBpbiBhIG1hemUgb2YgdHdpc3R5IGxpdHRsZSBwYXNzYWdlcywgYWxsIGFsaWtlLiBBCnNrZWxldG9uLCBwcm9iYWJseSB0aGUgcmVtYWlucyBvZiBhIGx1Y2tsZXNzIGNvbnN1bWVyLCBsaWVzCmhlcmUuIEJlc2lkZSB0aGUgc2tlbGV0b24gaXMgYSBydXN0eSBTS0FSUFQgaGlnaC1xdWFsaXR5CnN0ZWVsIGtuaWZlIHdpdGggaGFyZCBwbGFzdGljIGhhbmRsZSBhbmQgYSBzaG9wcGluZyBjYXJ0LgpTZWFyY2ggdGhlIGJvZHkuIFRha2UgdGhlIElLRUEgR0lGVCBDQVJEIChzdGlsbCBoYXMgJDQzIG9uCml0KS4gVGFrZSBhbmQgZWF0IHRoZSBTV0VESVNIIEZJU0ggZm9yIHN1c3RlbmFuY2UuIE5vdyBnbzoKClMsIEUsIEQsIEQsIEUsIFNXLCBXLCBTVywgRCwgVywgVSwgUy4KCkhlcmUgeW91IHdpbGwgZmluZCB0aGUgc2hlbHZlcyBjb250YWluaW5nIHlvdXIgREJFCmNvbXBvbmVudHMuIEluIHRoaXMgbWluaS1wdXp6bGUsIHlvdSBtdXN0IGZpdCBhbGwgb2YgeW91cgptZXJjaGFuZGlzZSBvbnRvIHRoZSBjYXJ0IHNvIG5vdGhpbmcgZmFsbHMgb2ZmIGFzIHlvdSBwcm9jZWVkCnRvIENIRUNLT1VULiBJdCdzIGxpa2UgVGV0cmlzLCBtaW51cyB0aGUgY2F0Y2h5IFJ1c3NpYW4gbXVzaWMKYW5kIHRoZSBmdW4uIERPTidUIFNQRU5EIE1PUkUgVEhBTiBUSFJFRSBPUiBGT1VSIEhPVVJTCldPUktJTkcgT04gVEhJUyEKCkNvbnRpbnVlIHRvIGNoZWNrb3V0OgoKRSwgVSwgVSwgRSwgVSwgTiwgTkUsIE4sIFNXLCBTLCBXLCBOLCBFLCBVLCBVLCBOLgoKWW91J3ZlIG1hZGUgaXQhCgpOT1RFOiBPbmUgd3JvbmcgdHVybiBpbiB0aGUgV0FSRUhPVVNFIGNvdWxkIGNhdXNlIHlvdSB0byBsb3NlCnByZWNpb3VzIGhvdXJzIHRyeWluZyB0byBmaW5kIHlvdXIgd2F5IG91dC4gU28gdGFrZSBpdGVtcyBvZmYKdGhlIHNoZWx2ZXMgYXMgeW91IHRyYXZlbCwgcGxhY2UgdGhlbSBvbiB0aGUgZmxvb3IsIGFuZCBtYWtlCmEgbWFwIGFzIHlvdSBnby4gVGhhdCB3YXksIGlmIHlvdSBtYWtlIGEgd3JvbmcgdHVybiwgeW91IHdpbGwKYmUgYWJsZSB0byBiYWNrdHJhY2suIEZvciBleGFtcGxlOgoKICB8ICAgICAgIHwKKy0tLSsgICArLS0tKwp8IEEgfCAtIHwgQiB8CistLS0rICAgKy0tLSsKICAgICAgICAgIHwKICAgICAgICArLS0tKyAgICstLS0rICAgKy0tLSsKICAgICAgICB8IEMgfCAtIHwgRCB8IC0gfCBFIHwgLQogICAgICAgICstLS0rICAgKy0tLSsgICArLS0tKwogICAgICAgICAgICAgICAgICB8CgpBLiBLT01QTEVNRU5UIDEzLXRyb3VzZXIgcGFudCBoYW5nZXIKQi4gSFVTQVIgZ2xhc3MtZG9vciBjYWJpbmV0CkMuIFNLWU1UQSBtb3V0aC1ibG93biBkcmlua2luZyBnbGFzcwpELiBUT01FTElMTEEgc29mYSB3aXRoIHJlbW92YWJsZSBhbmQgd2FzaGFibGUgREVMU0JPIHNhbmQgCiAgIHNsaXBjb3ZlcgpFLiBNRUxPREkgd2hpdGUgcGxhc3RpYyBwZW5kYW50IGxhbXAKCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KV09STEQgRklWRTogQ0hFQ0tPVVQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQoKVGhpcyBpcyBpdC4gVGhlIG1hdGNodXAgYmV0d2VlbiB5b3UgYW5kIHRoZSBmaW5hbCBib3NzOiBJS0VBCmZvdW5kZXIgSW5ndmFyIEthbXByYWQuIEJ1dCB1bmxpa2UgdHJhZGl0aW9uYWwgYWR2ZW50dXJlcywKdGhpcyB1bHRpbWF0ZSBzaG93ZG93biBpcyBub3Qgb25lIG9mIHZpb2xlbmNlIChtdWNoIGFzLCBhdAp0aGlzIHBvaW50LCB5b3UnZCBsaWtlIGl0IHRvIGJlKSwgYnV0IHJhdGhlciBhIGJhdHRsZSBvZiB3aWxsCmFuZCBlbmR1cmFuY2UuIElmIHlvdXIgUEFUSUVOQ0UgaXMgYWxyZWFkeSBydW5uaW5nIGxvdywgeW91CmFyZSB1bmxpa2VseSB0byBmaW5pc2ggdGhpcyB3b3JsZC4gQnV0IHRoaXMgaXMgd2hhdCB5b3UnbGwKbmVlZCB0byBkbyB0byBzdXJ2aXZlLgoKRmlyc3QgcHVzaCB5b3VyIGNhcnQgaW50byB0aGUgQ0hFQ0tPVVQgbGluZS4gTm93IHN0YW5kIHRoZXJlCmFuZCB3YWl0LiBDb250aW51ZSB0byB3YWl0LiBJZiB0aGUgcGVyc29uIGluIGZyb250IG9mIHlvdQptb3ZlcyBmb3J3YXJkLCB5b3Ugc2hvdWxkIG1vdmUgZm9yd2FyZCBhcyB3ZWxsLiBBbmQgdGhlbgp3YWl0LiBUaGUga2V5IHRvIENIRUNLT1VUIC0tIGFuZCBJIGNhbm5vdCBlbXBoYXNpemUgdGhpcwplbm91Z2ggLS0gaXMgdG8gd2FpdC4KCklLRUEgdmV0ZXJhbnMga25vdyB0aGUgc2VjcmV0IHRvIGRlZmVhdGluZyB0aGlzIGxldmVsOiBXaGlsZQp3YWl0aW5nIGluIGxpbmUgaXQncyBjcnVjaWFsIHRoYXQgeW91IE5PVCBDT05URU1QTEFURSBZT1VSCk1FUkNIQU5ESVNFISBEbyBub3QgYXNrIHlvdXJzZWxmIGlmIHlvdSByZWFsbHkgbmVlZCBzZXZlbgp0aW55IHdpY2tlciBiYXNrZXRzLiBEbyBub3Qgd29uZGVyIHdoYXQncyB3cm9uZyB3aXRoIHRoZQpwZXJmZWN0bHkgZ29vZCBlbnRlcnRhaW5tZW50IGNlbnRlciB5b3UgaGF2ZSBhdCBob21lLiBEbyBub3QKdHJ5IHRvIHJlY29uY2lsZSB5b3VyIHJlY2VudCBwYXJ0aWNpcGF0aW9uIGluCmFudGktZ2xvYmFsaXphdGlvbiBwcm90ZXN0IHBhcmFkZXMgd2l0aCB0aGUgZmFjdCB0aGF0IHlvdSBhcmUKbm93IG9uIHRoZSB2ZXJnZSBvZiBidXlpbmcgYW4gYXJtY2hhaXIgdGhhdCBzb21laG93IGNvc3RzIDIzCmJ1Y2tzLiBFVkVSWSBNSU5VVEUgWU9VIFNQRU5EIFRISU5LSU5HIEFCT1VUIFlPVVIgSU1QRU5ESU5HClBVUkNIQVNFUyBXSUxMIEhBTFZFIFlPVVIgUkVNQUlOSU5HIFBBVElFTkNFISEKCklmIHlvdSBjYW4ga2VlcCB5b3VyIG1pbmQgYmxhbmsgLS0gb3IgaWYgeW91IGNhbiBkaXN0cmFjdAp5b3Vyc2VsZiBieSB0aHVtYmluZyB0aHJvdWdoIHRoZSBJS0VBIENBVEFMT0cgYW5kIHBsYW5uaW5nIGEKc3RyYXRlZ3kgZm9yIHlvdXIgbmV4dCBydW4gLS0geW91IHdpbGwgYmUgYWJsZSB0byBjb21wbGV0ZQpDSEVDS09VVCBhbmQsIHRodXMsIHlvdXIgYWR2ZW50dXJlLgoKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpGSU5BTEUKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQoKQ29uZ3JhdHVsYXRpb25zIC0tIHlvdSd2ZSBiZWF0ZW4gSUtFQSEgTm93IHNpdCBiYWNrIGFuZCBlbmpveQp0aGUgZW5kIHNlcXVlbmNlOiBhIHNwbGl0dGluZyBoZWFkYWNoZSBhbmQgYSBzY3JlYW1pbmcgbWF0Y2gKd2l0aCB5b3VyIHNwb3VzZSBvdmVyIGx1bmNoIGF0IEFQUExFQkVFJ1MuIFlvdSd2ZSBlYXJuZWQgaXQhCgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSUtFQSBNdWQuIChSb25kYSwgIDkuIEphbiAyMDA1LCAyMzozNzoxNCk6Cn4jISBybj1Sb25kYSBydD0xMTA1MzA5ODA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTMwOTgwOApVbmQgbnVuIGZ1ZXIgQ3JvZnQgaW4gZ2FueiBrdXJ6LiBBbHMgTGluay4gRGllIHBhc3NlbmRlIEJlc2NocmVpYnVuZyBhdWYKRGV1dHNjaC4gS25hY2tpZywgcHJhZXppc2UuIERlciBOYW1lIGRlciBXZWJzaXRlIGlzdCBQcm9ncmFtbS4gV2VoZSwgZGFzIHBldHp0CmlyZ2VuZHdlciBtZWluZXIgYmVzc2VyZW4gSGFlbGZ0ZSEKCmh0dHA6Ly93d3cuZnJhdWVuZmVpbmRsaWNoZXNhcnNjaGxvY2guZGUvaWtlYS5odG1sCgpSb25kYS4gQmV0cm9mZmVuLgosCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYW5hISAoTWFoYXJldCwgMTEuIEphbiAyMDA1LCAxNDowNzo1OSk6CklyZ2VuZHdvIHNjaHJlaXQgZWluIFRpZXIuCgpQbG90aW4gendhZW5ndCBzaWNoIHp3aXNjaGVuIGRlbiBTdHJhZXVjaGVybiBkdXJjaC4KIApQbG90aW4gbXVybWVsdDogRGFubiBlYmVuIG5pY2h0ISB1bmQgZ2VodCBuYWNoIFN1ZWRvc3Rlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRXMgaXN0IHNvd2VpdC4uLiAoRGVlcGJsdWUsIDEyLiBKYW4gMjAwNSwgMTE6MDk6MDMpOgp+IyEgcm49Wm9vayBydD0xMTA1NTIxNTYzIHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTExMDU0OTAxNDYKVW5kIHdhbm4ga29tbXQgamV0enQgZW5kbGljaCBkYXMgWlBLPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKEdsb2luc29uLCAxMi4gSmFuIDIwMDUsIDE2OjM3OjQ3KToKfiMhIHJuPURhcmtsb3IgcnQ9MTEwNTU0NDIxOSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTEwNTE0NDE5MwpBdXMgU2ljaHQgZWluaWdlciBNYWdpZXI/IFdlbGNoZSBGcmFnZSEgR2VoIHN0ZXJiZW4hIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKFBpdGZhbGwsIDEyLiBKYW4gMjAwNSwgMTY6Mzg6MDcpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNTU0NDI2NyByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKNTgxMDEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBCbHV0d2FuZGx1bmcgdW5kIHNvIFpldWdzLiAoR2xvaW5zb24sIDEyLiBKYW4gMjAwNSwgMTY6Mzg6MzMpOgp+IyEgcm49UGl0ZmFsbCBydD0xMTA1NTQ0Mjg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpEZXIgd2lsbCBhdWNoIGRhc3MgZHUgc3RpcmJzdCB1bSBzaWNoIHp1IGZyZXVlbj8gSG0sIHN0aW1tdCBlaWdlbnRsaWNoLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9obmUgV29ydGUgLi4uIChMaWFyYSwgMTIuIEphbiAyMDA1LCAyMjo0OTozMik6CltTZWhlcjpBcmtdIGljaCBoYWIgbm9jaCBtb25zdGVyLCBkaWUgc2luZCBub2NoIGp1bmdmcmFldWxpY2ggOikKW1NlaGVyOkFya10gYWxzbyBmZWVsIGZyZWUgdG8gc3R1cHMgOikKW1NlaGVyOkh1cmF4cHJheF0gYWJlciBkYSB0cmF1dCBzaWNoIGtlaW5lciBtaXQKW1NlaGVyOkFya10ganVuZ2ZyYWV1bGljaCBpbSBzaW5uZSB2b24gImRlbmVuIGhhdCBlcyBub2NoIGtlaW5lciBiZXNvcmd0IgpbU2VoZXI6TGlhcmFdIG1obSBsYW5nc2FtIHd1ZXNzdGUgaWNoIGRvY2ggZ2VybmUgd2FzIGR1IHp1IGRpciBnZW5vbW1lbiBoYXN0CltTZWhlcjpMaWFyYV0gOikKW1NlaGVyOkFya10gbm9jaCBuaXgsIGFiZXIgZGEgc3RlaHQgbm9jaCBsZWNrZXIgemV1ZyBpbSBzY2hyYW5rLCBobW1tbQpbU2VoZXI6QXJrXSBqZXR6IHN0ZWggaWNoIGRvY2ggbWFsIGF1ZgpbU2VoZXI6TGlhcmFdIG5vY2ggbml4IDopIGd1dGVyIHdpdHogOikKW1NlaGVyOkFya10gQXJrIHVudGVyIERyb2dlbiBpc3Qgc2NobGltbSwgdW5nZWxvZ2VuLgpbU2VoZXI6QXJrXSBIdW1uaSBzY2hudWVmZnQgTGVpbSwgaXN0IHNjaGxlY2h0IGZ1ZXIgZGVuIFJlaW0uCltTZWhlcjpMaWFyYV0gZ2VuYXUgdHJpbmsgZG9jaG1hbCB3YXMgdW5kIGRhbm4gZXJ6YWVobCB3ZWl0ZXIgOykgYWJlciBuZXQKW1NlaGVyOkxpYXJhXSB6d2luZ2VuZCB1ZWJlciBqdW5nZnJhZXVsaWNoZSBtb25zdGVyIGJpZGRlIDspCltTZWhlcjpBcmtdIGhtLCBhYmVyIGRpZSBibHV0ZW4gaGFsdCBuZXQgOykKW1NlaGVyOkFya10gbmEsIGxhc3NlIG1lciBkYXMgOj0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBCbHV0d2FuZGx1bmcgdW5kIHNvIFpldWdzLiAoRGVlcGJsdWUsIDEzLiBKYW4gMjAwNSwgMTA6NTA6MzUpOgp+IyEgcm49QW5hdG9sIHJ0PTExMDU1NzAxMTMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExMDUxNDQxOTMKPiBQUzogV2VyIGxpZXN0IG5vY2ggbWl0IHVuZCBiZWRhdWVydCBlcyBuaWNodD8gOykKCldpZXNvIGJlZGF1ZXJuPyBNYW4gYnJhdWNodCBudXIgYXVzcmVpY2hlbmQgQmllciB1bmQgUG9wQ29ybgoKRGVlcCosIGthdWVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKEFuYXRvbCwgMTMuIEphbiAyMDA1LCAyMTo1MjozNik6Cn4jISBybj1EZWVwYmx1ZSBydD0xMTA1NjA5ODM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpNaXIgZmllbCwgQXNjaGUgYXVmIG1laW4gSGF1cHQsIGVyc3QgYmVpbSBQUyBhdWYsIGRhc3MgaWNoIGFuCkluaGFsdGVuIGVpZ2VudGxpY2ggbmljaHRzIHNjaHJpZWIuIERpc2t1c3Npb24gdW0gZGVyIERpc2t1c3Npb24Kd2lsbGVuLiBVdXVhZ2guIEZydWVoZXIuLi4uIDopCgpEYSBmYWVsbHQgbWlyIGVpbi4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYSB3aXJkIG1hbiBhcmt3b2VobmlzY2ggLi4uIChWYW5pb24sIDEzLiBKYW4gMjAwNSwgMjI6MDU6MTMpOgp+IyEgcm49TWFoYXJldCBydD0xMTA1MjI5Nzg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTIyOTc4NwpIbW0sIG11c3MgbWFuIG51IGF1Y2ggc2NoYXVlbiwgd2FubiB1bmQgbWl0IHdlbSBtYW4gemVpdG5haCBhdXNsb2dndD8gU293YXMgOikKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKEdyaW1tYm9ybiwgMTQuIEphbiAyMDA1LCAxMDoyMzo1Myk6Cn4jISBybj1EYXJrbG9yIHJ0PTExMDU2NTMwNTUgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExMDUxNDQxOTMKRGllc2UgTWVpbnVuZyBibGVpYnQgRGlyIGhpZXIgdW5iZW5vbW1lbi4gV2lyIHNpbmQgamEgbmljaHQgaG9tb3Bob2IuIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKEdsb2luc29uLCAxNC4gSmFuIDIwMDUsIDEwOjQyOjIzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTA1Njk0NjMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpNYWplc3RhZXRpc2NoZXIgUGx1cmFsPyBJY2ggYmluIGJlc3RpbW10IGhvbW9waG9iLCBkZW5uIGRpZSBiZWkgdW5zIG5ldWxpY2ggaW0KQ2x1YiBlaW5mYWxsZW5kZW4gQW1lcmlrYW5lcmlubmVuIG1laW50ZW4gaW4gRGV1dHNjaGxhbmQgYXVmIGRlbiBUaXNjaGVuCnRhbnplbiBzZWkgbmljaHQgZ2VybiBnZXNlaGVuIHVuZCBMZXNiZW4gd3VlcmRlIG1hbiBoaWVyIGF1Y2ggbmljaHQgbW9lZ2VuLgpIYWV0dGVuIHNpZSBpbiBkZW4gVVNBIGdlaG9lcnQuIEFhYWFoamEuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChHcmltbWJvcm4sIDE0LiBKYW4gMjAwNSwgMTA6NDc6MTkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNTY5NTc0MyByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKUmVjaHQgaGFiZW4gZGllIERhbWVuLiBXZXIgbWlyIGluIG1laW4gRXNzZW4gdHJpdHQgaXN0IHRhdHNhZWNobGljaCBnZXJuZQpnZXNlaGVuLCB1bmQgZ2VnZW4gTGVzYmVuIGhhYiBpY2ggYXVjaCB3YXMgLSBkaWUgbWFlbm5saWNoZSBLb25rdXJyZW56IGlzdCBqYQpoYXJ0IGdlbnVnLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKEdsb2luc29uLCAxNC4gSmFuIDIwMDUsIDEwOjQ5OjQwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTA1Njk2MDM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpCaXN0IGR1IGRlcnplaXQgdWViZXJoYXVwdCBpbiBkZXIgTGFnZSBkaWUgS29ua3VycmVuenNpdHVhdGlvbiBhdWYgZGVtIE1hcmt0Cnp1IGJld2VydGVuPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBCbHV0d2FuZGx1bmcgdW5kIHNvIFpldWdzLiAoUGl0ZmFsbCwgMTQuIEphbiAyMDA1LCAxMDo1MDoxNik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTA1Njk2MTgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpBdWYgamVkZW4gRmFsbCBrYW5uIGVyIGRydWViZXIgcmVkZW4sIHdpZSB1ZWJlciBhbGxlcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBCbHV0d2FuZGx1bmcgdW5kIHNvIFpldWdzLiAoR3JpbW1ib3JuLCAxNC4gSmFuIDIwMDUsIDEyOjM4OjU5KToKfiMhIHJuPUdsb2luc29uIHJ0PTExMDU2OTYxODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTQ0MTkzCkljaCBoYWIgendlaSBBdWdlbiBpbSBLb3BmIHVuZCBlaW4gZ3V0ZXMgR2VkYWVjaHRuaXMuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBCbHV0d2FuZGx1bmcgdW5kIHNvIFpldWdzLiAoR25vbWUsIDE0LiBKYW4gMjAwNSwgMTQ6Mjg6MTYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNTY5NTc0MyByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKd2lyIGhhYmVuIHNpZSBnbHVlY2tsaWNoZXJ3ZWlzZSBlaW5lcyBiZXNzZXJlbiBiZWxlaHJ0OyBhdWNoIHdlbm4gZGllCmRhbWVuIGlocmUgbmV1ZW4gZXJrZW5udG5pc3NlIC0genUgdW5zZXJlbSBsZWlkd2VzZW4gLSBuaWNodCBnbGVpY2ggaW4KdGF0IHVtZ2VzZXR6dCBoYWJlbi4gOykKCnVuZDogcmljaHRpZ2UgbGVzYmVuIG1hZ3N0IGR1IHdpcmtsaWNoIG5pY2h0LCBnbG9pbnNvbi4gZ2xhdWIgbWlyLgpkaWUgaGFiZW4gZWluZSBvbGl2ZXIta2Fobi1zdGF0dXIgdW5kIHNjaGF1ZW4gdmVyYWVjaHRsaWNoIGF1ZgphbGxlIG1hZW5uZXIgaGVydW50ZXIuIHVuZCBkYXMgc2luZCBudXIgZGllIGhhcm1sb3Nlbi4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKEh1bW5pLCAxNC4gSmFuIDIwMDUsIDE0OjM0OjQ0KToKfiMhIHJuPUdub21lIHJ0PTExMDU3MDkyOTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTQ0MTkzCkljaCBoYWIgZWluaWdlIExlc2JlbiBnZXRyb2ZmZW4gZGllIHdpcmtsaWNoIHNlaHIgbmV0dCB3YXJlbi4gSWNoIGtlbm4gYXVjaApkZW4gLi4gbmFqYSwgaWNoIHNhZyBtYWwsICJrcmFzc2VuIFR5cCIgLSBzb3dhcyB3aWUgZWluZSAiTWFjaG8gTGVzYmUiLiBOdXIKZ2lidHMgYXVjaCBnZW51ZyBhbmRlcmUuCgpEYXMgIlByb2JsZW0iIChuYWphLCBpc3QgZWlnZW50bGljaCBrZWlucykgZGFiZWkgaXN0IG5hZW1saWNoLCBkYXNzIGRpZSBkYXMKZWJlbiBlbnRnZWdlbiBsYW5kbGFldWZpZ2VyIE1laW51bmcgbmljaHQgYXVmIGRlciBTdGlybiBzdGVoZW4gaGFiZW4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChHcmltbWJvcm4sIDE0LiBKYW4gMjAwNSwgMTQ6MzY6MzIpOgp+IyEgcm49SHVtbmkgcnQ9MTEwNTcwOTY4NCByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKRGFzIGlzdCBoYWx0IHdpZSBtaXQgZGVuIG1hZW5ubGljaGVuIEhvbW9zZXh1ZWxsZW4uIEljaCBrYW5uIGRhIGRlbiBGaWxtCiJWaWN0b3IgQ1ZpY3RvcmlhIiBzZWhyIGVtcGZlaGxlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChHbm9tZSwgMTQuIEphbiAyMDA1LCAxNDozODowMCk6Cn4jISBybj1IdW1uaSBydD0xMTA1NzA5Njg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpoYWJlbiBzaWUgbmljaHQsIHJpY2h0aWcuCnVuZCBuYXR1ZXJsaWNoIGdpYnRzIGF1Y2ggIm5ldHRlIiBsZXNiZW4sIGtlaW5lIGZyYWdlLgoKYWJlciBkZW4gaGFyZGNvcmUtbGVzYmVuIHd1ZXJkZSBpY2ggZ2VuZXJlbGwgcGVyc29lbmxpY2ggZWhlciBhdXMgZGVtCndlZ2UgZ2VoZW4uCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChHcmltbWJvcm4sIDE0LiBKYW4gMjAwNSwgMTQ6Mzk6MzApOgp+IyEgcm49R25vbWUgcnQ9MTEwNTcwOTg4MCByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKSWNoIHdlaXNzIG5pY2h0LCB3YXMgRHUgbWl0ICJIYXJkY29yZS1MZXNiZW4iIG1laW5zdC4gVmVybXV0bGljaCBkaWVqZW5pZ2VuLApkaWUgaW4gZGVuIEhhcmRjb3JlLUxlc2JlbmZpbG1lbiB2b3Jrb21tZW4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBCbHV0d2FuZGx1bmcgdW5kIHNvIFpldWdzLiAoQW50aGVhLCAxNC4gSmFuIDIwMDUsIDE0OjM5OjUyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTA1NzA5OTcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpWaWVsbGVpY2h0IHNvd2FzIHdpZSBIZWxsYSB2LiBTaW5uZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKEdub21lLCAxNC4gSmFuIDIwMDUsIDE0OjQyOjQ4KToKfiMhIHJuPUFudGhlYSBydD0xMTA1NzA5OTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpuZWluLCBoZWxsYSB2LiBzaW5uZW4gaXN0IG5vY2ggZ2FueiBlcnRyYWVnbGljaC4genVtaW5kZXN0IG1hbmNobWFsLgoKZGllIGdhbnogaGFydGUgc29ydGUgaGFlbHQgbWFuIGltIGVyc3RlbiBhdWdlbmJsaWNrIGZ1ZXIgbWFlbm5saWNoLgp1bmQgc2llIHd1ZXJkZW4gZXMgYW0gbGllYnN0ZW4gc2VoZW4sIHdlbm4gZXMgZ2FyIGtlaW5lIG1hZW5uZXIgYXVmCmRpZXNlciB3ZWx0IGdhZWJlLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBCbHV0d2FuZGx1bmcgdW5kIHNvIFpldWdzLiAoQW50aGVhLCAxNC4gSmFuIDIwMDUsIDE0OjQzOjI1KToKfiMhIHJuPUdub21lIHJ0PTExMDU3MTAxNjggcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTQ0MTkzCkFjaCBzbywgZGllIFNvcnRlIG1laW5zdCBEdS4gSmEsIGRpZSBrb2VubmVuIG1hbmNobWFsIGV0d2FzIGFuc3RyZW5nZW5kIHNlaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKEdyaW1tYm9ybiwgMTQuIEphbiAyMDA1LCAxNDo0NDoyMyk6Cn4jISBybj1Hbm9tZSBydD0xMTA1NzEwMTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpTZWhyIGJlZWluZHJ1Y2tlbmQsIHdpZSBoaWVyIG1pdCBTdGVyZW90eXBlbiBoYXVzaWVyZW4gZ2VnYW5nZW4gd2lyZC4gRHUKYmVzY2hyZWlic3QgTGVzYmVuLCB3aWUgQnJpdGVuIERldXRzY2hlIGJlc2NocmVpYmVuICgiU3RlY2hzY2hyaXR0LCByb3RlCkFybWJpbmRlIiAtIHdpc3NlbnNjaG9uKS4gS2xhciBtYWdzIHNvbGNoZSBnZWJlbiwgd2VubiBudXIgZGllIEx1cGUgZ3Jvc3MKZ2VudWcgaXN0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKE1haGFyZXQsIDE0LiBKYW4gMjAwNSwgMTQ6NDY6MzMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMDU3MTAyNjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTQ0MTkzCkRhcyB3aXJrbGljaCB3aWRlcmxpY2hlIGFuIGlobmVuIGlzdCBqYSwgZGFzcyBzaWUgR25vbWUgbmllIGVybGF1YmVuIHd1ZXJkZW4KenV6dWd1Y2tlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBCbHV0d2FuZGx1bmcgdW5kIHNvIFpldWdzLiAoVmVjdG9yLCAxNC4gSmFuIDIwMDUsIDE0OjQ3OjE3KToKfiMhIHJuPU1haGFyZXQgcnQ9MTEwNTcxMDM5MyByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKOmlzdCBncmFkIGFtIGVzc2VuIC0tLSBnZXdlc2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChIaWdobGFuZGVyLCAxNC4gSmFuIDIwMDUsIDE0OjQ4OjA3KToKfiMhIHJuPVZlY3RvciBydD0xMTA1NzEwNDM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpVbmQgamV0enQgaXN0IGRhcyBFc3NlbiBhdWYgZGVtIE1vbml0b3IgdmVydGVpbHQ/CgpIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBCbHV0d2FuZGx1bmcgdW5kIHNvIFpldWdzLiAoR25vbWUsIDE0LiBKYW4gMjAwNSwgMTQ6NDg6MjcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMDU3MTAyNjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTQ0MTkzCm1hbiBrYW5uIGdlbmF1c28gc2FnZW4sIGRhc3Mgc2ljaCBhbGxlIGhhcmRjb3JlcHVua3MgemllbWxpY2ggYXVmZmFlbGxpZwprbGVpZGVuLCBzbGlwa25vdCB1bmQgcmF0dGVuIG1vZWdlbiwgYXVmIGRlbiBzdGFhdCBzY2hlaXNzZW4sIGFiZXIgc29uc3QKemllbWxpY2ggZnJpZWRsaWViZW5kIHNpbmQuIGdlbmF1c28gZWluIHN0ZXJlb3R5cCBhYmVyIGVzIHN0aW1tdCBoYWx0Cmdyb2Vzc3RlbnRlaWxzLgoKdW5kIHdlbm4gZHUgZGVtIGtlaW4gZ2xhdWJlbiBzY2hlbmtlbiBtb2VjaHRlc3QsIHNvbGx0ZXN0IGR1IGVpbmZhY2gKbWFsIGJlcmxpbiBiZXN1Y2hlbiB1bmQgZWluIGJpc3NjaGVuIGRpZSBlbnRzcHJlY2hlbmRlbiB2aWVydGVsCmR1cmNoc3RyZWlmZW4uCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChWZWN0b3IsIDE0LiBKYW4gMjAwNSwgMTQ6NDg6NDEpOgp+IyEgcm49SGlnaGxhbmRlciBydD0xMTA1NzEwNDg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5Mwp0YXN0YXR1cgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChHbm9tZSwgMTQuIEphbiAyMDA1LCAxNDo0OTo0Myk6Cn4jISBybj1NYWhhcmV0IHJ0PTExMDU3MTAzOTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTQ0MTkzCmJlaSBfZGVuZW5fIHd1ZXJkIGljaCBhbGxlcyBnZWJlbiwgdW0gd2VnZ3Vja2VuIHp1IGR1ZXJmZW4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKEdyaW1tYm9ybiwgMTQuIEphbiAyMDA1LCAxNDo1NToyMyk6Cn4jISBybj1Hbm9tZSBydD0xMTA1NzEwNTgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpEYXMgaXN0IGdlbmF1IGRlciBQdW5rdDogQmVpIFB1bmtzIHRyaWZmdCBkYXMgdGF0c2FlY2hsaWNoIGF1ZiBkaWUgTWVocmhlaXQKenUuIEJlaSBMZXNiZW4gdHJpZmZ0IERlaW4gV2VsdGJpbGQgbmljaHQgenUuIEF1Y2ggaW4gQmVybGluIG5pY2h0LgpCZWthbm50bGljaCBzaW5kIGV0d2EgNSUgZGVyIEJldm9lbGtlcnVuZyBob21vc2V4dWVsbCwgZC5oLiBpbiBCZXJsaW4gZ2lidCBlcwpydW5kIDc1LjAwMCBMZXNiZW4uIFVuZCBkaWUgc2NoZXJzdCBEdSB1ZWJlciBkZW4gZWluZW4gS2FtbSwgZGVuIER1IGJlaQp2aWVsbGVpY2h0IDMwMCBTdHVlY2sgImluIGRlbiBlbnRzcHJlY2hlbmRlbiBWaWVydGVsbiIgc2llaHN0PyBJY2ggYmluIG1pcgpqZXR6dCB1bnNpY2hlciwgb2IgRHUgZHVtbSBiaXN0LCBvZGVyIHVucyBmdWVyIGR1bW0gdmVya2F1ZmVuIHdpbGxzdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChBbnRoZWEsIDE0LiBKYW4gMjAwNSwgMTU6MDQ6MTMpOgp+IyEgcm49R25vbWUgcnQ9MTEwNTcwOTg4MCByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKT2NoLCBlcyBnaWJ0IGF1Y2ggImhhcmRjb3JlLWhldGVyb3MiLCBkZW5lbiBpY2ggbGllYmVyIGF1cyBkZW0gV2VnIGdlaGUuIERpZQprb2VubmVuIG1pbmRlc3RlbnMgZ2VuYXVzbyB1bmFuZ2VuZWhtIHNlaW4uLi4gdW5kIGVzIGdpYnQgbm9jaCB2aWVsIG1laHIgdm9uCmRlbmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChOb25uZSwgMTQuIEphbiAyMDA1LCAxNTowNDoyOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEwNTcxMDkyMyByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKTWVpbmUgV0ctS29sbGVnaW4gZXJ6YWVobHRlIG1pciwgbWFuIGhhYmUgZWluIEdlbiBnZWZ1bmRlbiwgZGFzIG1hbiBmdWVyCkhvbW9zZXh1YWxpdGFldCB2ZXJhbnR3b3J0bGljaCBtYWNodC4gRXMgbGllZ3QgYWxsZXJkaW5ncyBhdWYgZGVtIFktQ2hyb21vc29tLAphbHNvIHNpbmQgbnVyIE1hZW5uZXIgYmV0cm9mZmVuLiBGcmF1ZW4gcmVkZW4gc2ljaCBIb21vc2V4dWFsaXRhZXQgYWxzbyBudXIKZWluIHVuZCBkYSBkYXMgbmF0dWVybGljaCBlaW4gYmVzdGltbXRlciBUeXAgTWVuc2NoIGlzdCwgZGVyIHNpY2ggZGFzCmVpbnJlZGV0LCBoYXQgR25vbWUgbmF0dWVybGljaCByZWNodC4KCk5vbm5lLCBpbiBkZXIgcmljaHRpZ2VuIFJ1YnJpay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBCbHV0d2FuZGx1bmcgdW5kIHNvIFpldWdzLiAoR3JpbW1ib3JuLCAxNC4gSmFuIDIwMDUsIDE1OjA2OjU3KToKfiMhIHJuPU5vbm5lIHJ0PTExMDU3MTE0Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTQ0MTkzCkRhcyBtaXQgZGVtIEdlbiBiZXN0YWV0aWd0IHNpY2hlciBzZWluZSBNZWludW5nLCBkYXNzIGVzIG51ciBtYWwgamVtYW5kIGRpZXNlbgpMZXNiZW4gYW5zdGFlbmRpZyBiZXNvcmdlbiBtdXNzLCB1bSBzaWUgenVyIEhldGVyb3NleHVhbGl0YWV0IHp1IGJla2VocmVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKE5vbm5lLCAxNC4gSmFuIDIwMDUsIDE1OjEwOjA3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTA1NzExNjE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpOYXR1ZXJsaWNoLCBlcyBrYW5uIHNpY2ggc28gZWluIEdlcnVlY2h0IGRvY2ggbmljaHQgaGFydG5hZWNraWcgdWViZXIKSmFocnplaG50ZSBoYWx0ZW4sIG9obmUgZWluIEtvZXJuY2hlbiBXYWhyaGVpdCB6dSBlbnRoYWx0ZW4hCgpOb25uZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBCbHV0d2FuZGx1bmcgdW5kIHNvIFpldWdzLiAoR2xvaW5zb24sIDE0LiBKYW4gMjAwNSwgMTU6MTk6MzUpOgp+IyEgcm49R25vbWUgcnQ9MTEwNTcwOTI5NiByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKRGllIGVpbnppZ2VuIHp3ZWkgKG9mZmVuZW4pIExlc2JlbiBkaWUgaWNoIGtlbm5lIHNpbmQgcmVjaHQgdW50ZXJzY2hpZWRsaWNoCnZvbiBkZXIgU3RhdHVyLiBEaWUgZWluZSAxLDYyIHVuZCByZWNodCBkcmFodGlnIHVuZCBzcG9ydGxpY2gsIGRpZSBhbmRlcmUgdW0KMSw3NSB1bmQgZWluIHdlbmlnIG1vbGxpZ2VyLiBCZWlkZSByZWNodCBuZXR0LCB3aXIga2VubmVuIHVucyBzY2hvbiBlaW5lIGdhbnplCldlaWxlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBCbHV0d2FuZGx1bmcgdW5kIHNvIFpldWdzLiAoS2Vzc2EsIDE0LiBKYW4gMjAwNSwgMTU6NDA6MzYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNTcxMjM3NSByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKSWNoIHVlYmVybGVnZSBqYSwgb2IgaWNoIGpldHp0IGFuZmFuZ2VuIHNvbGwsIGRpZSBnYW56ZW4gdW50ZXJzY2hpZWRsaWNoZW4KVHlwZW4gdm9uIEhldGVyb3MgenUgYmVzY2hyZWliZW4sIGRpZSBpY2ggc28ga2VubmUuIFNvbGwgaWNoIG1hbD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBCbHV0d2FuZGx1bmcgdW5kIHNvIFpldWdzLiAoVHVyYm8sIDE0LiBKYW4gMjAwNSwgMTU6NDE6MjYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNTcxMjM3NSByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKSWNoIGJpbiBkYSBlaCBmdWVyIFRvbGVyYW56LiBTb2xhbmdlIGljaCBtYWNoZW4ga2Fubiwgd2FzIGljaCB3aWxsIHVuZApkaWUgYW5kZXJlbiBhdWNoIG1hY2hlbiwgd2FzIGljaCB3aWxsLCBpc3QgZG9jaCBhbGxlcyBpbiBPcmRudW5nLgoKVHVyYm8gKEthdGVyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChDcm9mdCwgMTQuIEphbiAyMDA1LCAxNTo0MzoxOCk6Cn4jISBybj1LZXNzYSBydD0xMTA1NzEzNjM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpXZWxjaGUgVHlwIHdhZXIgZGVubiBHbm9tZT8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKEtlc3NhLCAxNC4gSmFuIDIwMDUsIDE1OjQ1OjM2KToKfiMhIHJuPUNyb2Z0IHJ0PTExMDU3MTM3OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTQ0MTkzCkF1c2dlcmVjaG5ldCBkZW4ga2VubiBpY2ggbm9jaCBuaWNodCBwZXJzb2VubGljaC4gSWNoIGRlbmtlIG1pciBkYW5uIG1hbCBkZW4KRHVyY2hzY2huaXR0IHZvbiBhbGxlbiBhbmRlcmVuIHVuZCBzdGVsbGUgaWhuIG1pciBkYW5uIHNvIHZvciwgd2lyZCBzY2hvbgp1bmdlZmFlaHIgaGlua29tbWVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKEdsb2luc29uLCAxNC4gSmFuIDIwMDUsIDE1OjU0OjQ2KToKfiMhIHJuPUtlc3NhIHJ0PTExMDU3MTM5MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTQ0MTkzCk5laW4sIGRhcyBrYWVtZSBuaWNodCBoaW4uIEVyIGlzdCBlaW5lciB2b24gZGllc2VuIGdyb3NzZW4sIGVpbnNjaHVlY2h0ZXJuZGVuCkhldGVyb3MgOykKRGllIHJlc3RsaWNoZW4gb2ZmZW5lbiBIb21vc2V4dWVsbGVuIGluIG1laW5lbSBCZWthbm50ZW5rcmVpcyBzaW5kIGF1Y2ggc2VocgpkaXZlcnMgdW5kIG5pY2h0IHdpcmtsaWNoIHN0ZXJlb3R5cGlzaWVyYmFyLiBXb2JlaSwgZGVyIG5ldWUgQXp1Ymkga29lbm50ZQpob21vc2V4dWVsbCBzZWluIHVuZCBkZXIgaXN0IHppZW1saWNoIHR1bnRpZy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKEFudGhlYSwgMTQuIEphbiAyMDA1LCAxNTo1ODo1OCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTA1NzE0NDg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpBYmVyIG5hY2hkZW0gamEgZ2VuZXJlbGwgYWxsZSBWZXJhbGxnZW1laW5lcnVuZ2VuIGZhbHNjaCBzaW5kLCBpc3QgZGFzIGF1Y2gKbmljaHQgc2ljaGVyIHp1IHNhZ2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChCYW1iaSwgMTQuIEphbiAyMDA1LCAyMToxMzo1MCk6Cn4jISBybj1BbnRoZWEgcnQ9MTEwNTcxNDczOCByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKSWNoIGthbm4gbmljaHQgZWlubWFsIG1laHIgbmFjaHZvbGx6aWVoZW4sIHdpZSBpaHIgdm9uIEJsdXR3YW5kbHVuZyBhdWYKbWlsaXRhbnRlIExlc2JlbiBnZWtvbW1lbiBzZWlkLiBLYW5uIG1pciBkYXMgamVtYW5kIG5vY2htYWwgaW4gendlaSBiaXMgZHJlaQpaZWlsZW4gVGV4dCB2ZXJkZXV0bGljaGVuLCBiaXR0ZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBCbHV0d2FuZGx1bmcgdW5kIHNvIFpldWdzLiAoQXJrLCAxNC4gSmFuIDIwMDUsIDIxOjE2OjEyKToKfiMhIHJuPUJhbWJpIHJ0PTExMDU3MzM2MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTQ0MTkzCkJsdXQgLT4gLT4gbWlsaXRhbnQKV2FuZGx1bmcgLT4gLT4gTGVzYmVuCgpVbmQgbnVuIHBzY2hoaGh0LCBkZXIgVGhyZWFkIGlzIGRlYWQuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChHbm9tZSwgMTQuIEphbiAyMDA1LCAyMjowNDo0Nik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEwNTcxMDkyMyByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKYmVpIGFuZ2Vub21tZW5lbiA1JSBob21vc2V4dWVsbGVyIGJldm9lbGtlcnVuZyBlbnRmaWVsZW4gYXVmIGRpZSBmcmF1ZW4KODUuMDAwLCB3ZW5uIG1hbiBnbGVpY2h2ZXJ0ZWlsdW5nIGRlciBnZXNjaGxlY2h0ZXIgYW5uZWhtZW4gd3VlcmRlLgpzY2hvbiBkb3J0IGRhcmYgaWNoIGRpY2gga29ycmlnaWVyZW4uCgo4NS4wMDAga2FtIG1pciBhYmVyIHNlbGJzdCBmdWVyIGJlcmxpbiBlaW4gYmlzc2NoZW4gdmllbCB2b3IsIHNvIGhhYiBpY2gKbWFsIGZsdWdzIGdlZ29vZ2VsdCB1bmQgc2llaGUgZGE6IGVpbmVyIG1laW5lciBtZWludW5nIG5hY2ggcmVjaHQgYnJhdWNoLQpiYXJlbiBzdGF0aXN0aWsgenVmb2xnZSAod3d3Lmd5bi5kZS9zZXgvc2V4X3N0YXRpc3Rpay5waHAzP2xuZz0pIGdpYnQKZXMgMiwzJSBob21vc2V4dWVsbGUgaW4gZGV1dHNjaGxhbmQsIGVyZ28gaW4gYmVybGluLiBkYW5uIGtvbW1lbiB3aXIKYXVmIGtuYXBwIDQwLjAwMCBsZXNiZW4gaW4gZGVyIGhhdXB0c3RhZHQuCmF1Y2ggZG9ydCBsYWdzdCBkdSBzb21pdCBmYWxzY2guCgp2b24gZGllc2VuIDQwLjAwMCBzaW5kIHNjaGFldHp1bmdzd2Vpc2UgKCEpIDEwJSwgYWxzbyBldHdhIDQuMDAwLCBhdWYKZGVtIGljaC1oYXNzZS1tYWVubmVyLXRyaXAuIHVuZCBESUVTRSA0LjAwMCBzY2hlcmUgaWNoIHVlYmVyIGVpbmVuIGthbW0uCgpudXIgbWl0IGRlbSBsZXR6dGVuIHB1bmt0IGhhc3QgZHUgYmVzdGltbXQgcmVjaHQ6IG1pdCBlaW5lbSBiZXN1Y2ggaW4KYmVybGluIHp3ZWNrcyBzdHJlaWZ6dWcgaXN0IG1hbiB3YWhyc2NoZWlubGljaCB3ZWl0IGRhdm9uIGVudGZlcm50LAplaW5pZ2VuIHZvbiBkaWVzZW4gNDAwMCB6dSBiZWdlZ25lbiwgenVtYWwgc2llIGFldXNzZXJsaWNoIG5pY2h0CnNvbmRlcmxpY2ggYXVmZmFlbGxpZyBhbmdlem9nZW4gc2luZCwgd2llIGJlaXNwaWVsc3dlaXNlIHB1bmtzLgpkYXp1IGJlZGFyZiBlcyBzY2hvbiBlaW5lcyBsYWVuZ2VyZW4gYXVmZW50aGFsdGVzIGluIGVpbmVyIGdyb3Nzc3RhZHQsCndhcyBkaWNoIGVpZ2VudGxpY2ggYXV0b21hdGlzY2ggZnVlciBkaWVzZSBkaXNrdXNzaW9uIGRpc3F1YWxpZml6aWVyZW4KZHVlcmZ0ZS4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKEFuYXRvbCwgMTQuIEphbiAyMDA1LCAyMjoxNDozOCk6Cn4jISBybj1Hbm9tZSBydD0xMTA1NzM2Njg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpCYWgsIHphbmsgRGljaCBsaWViZXIgbWl0IFR1cmJvLCBkYXMgaXN0IGx1c3RpZ2VyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBCbHV0d2FuZGx1bmcgdW5kIHNvIFpldWdzLiAoR25vbWUsIDE0LiBKYW4gMjAwNSwgMjI6MjA6NDQpOgp+IyEgcm49QW5hdG9sIHJ0PTExMDU3MzcyNzggcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTQ0MTkzCndhcnVtPwp3ZWlsIHR1cmJvIG1pdCAxMDAgemVpbGVuIGVpbmUgYXVzc2FnZSBtYWNodCBvZGVyIHdlaWwgZ3JpbW1pIHNvIGxlaWNodAphdXN6dXphZWhsZW4gaXN0PwoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRXMgaXN0IHNvd2VpdC4uLiAoTXVhZGliLCAxNS4gSmFuIDIwMDUsIDAwOjI3OjIwKToKfiMhIHJuPVpvb2sgcnQ9MTEwNTUyMTU2MyByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xMTA1NDkwMTQ2CmljaCBsYXNzIG1pY2ggZ2FueiBhbGxnZW1laW4gZ2VybmUgYW5yZWdlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChNdWFkaWIsIDE1LiBKYW4gMjAwNSwgMDA6MzM6MzQpOgp+IyEgcm49R25vbWUgcnQ9MTEwNTczNzY0NCByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKd29sbGVuIHdpciBuaWNodCBlaW4gd2VuaWcgdWViZXIgZHVua2VsemlmZmVybiBzcGVrdWxpZXJlbj8KZGFzIGlzdCBlaW4gZ2FueiB0b2xsZXIgc3BvcnQgdW5kIHNvIHNjaG9lbiBtYXRoZW1hdGlzY2ggdmlzaW9uYWVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBCbHV0d2FuZGx1bmcgdW5kIHNvIFpldWdzLiAoTXVhZGliLCAxNS4gSmFuIDIwMDUsIDAwOjM4OjQ0KToKfiMhIHJuPUFuYXRvbCBydD0xMTA1NTcwMTEzIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTA1MTQ0MTkzCm9obmUgZGVuIGluaGFsdCB2b2VsbGlnIGdlbGVzZW4genUgaGFiZW4sIGJld2VydGUgaWNoIGRlbiBhcnRpa2VsIG1hbCBtaXQgMS4wCmFuYXRvbApzbyB3aWUgamVkZW4gZGVpbmVyIGFydGlrZWwKd2FzIGRhcyBiZWRldXRldCBvZGVyIHdpZSBtYW4gZGFzIGluIGFuYWNzIHVtcmVjaG5ldCBzZWkgZGlyIHVlYmVybGFzc2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHb2V0dGVybWFjaHQgZnVlciBOUENzPyA7KSAoR2xvaW4sIDE1LiBKYW4gMjAwNSwgMDQ6Mzc6MzQpOgpEdSBlcmZsZWhzdCBkaWUgTWFjaHQgZGVyIEdvZXR0ZXIuCkVpbmUgZ29ldHRsaWNoZSBBdXJhIGh1ZWxsdCBEaWNoIHVuZCBEZWluIFRlYW0gZWluLgpBbHMgRGljaCBkaWUgQXVyYSB1bWh1ZWxsdCwgc3B1ZXJzdCBEdSBlaW5lbiBncm9zc2VuIFRlaWwgZGVyIE1hY2h0IGRlcgpHb2V0dGVyLgpMUCAyMjYgICBNUCA5MyAoLTQ2KQogIC4uLgogIEVpbiBXZWdoaWVyIHNjaGxhZWd0IE1lc2lyaWkgenUgQnJlaS4KICBFaW4gV2VnaGllciBzY2hsYWVndCBNZXNpcmlpIHp1IEJyZWkuCkRlciBWb2xsc3RyZWNrZXIgdmVyc3VjaHQsIE1lc2lyaWkgZGVuIFRvZGVzc3Rvc3MgenUgdmVyc2V0emVuIQogIEVpbiBXZWdoaWVyIGF0b21pc2llcnQgTWVzaXJpaS4KTWVzaXJpaSBmYWVsbHQgdG90IHp1IEJvZGVuLgpbVGVhbSA1OlRvZF0gTUVTSVJJSSBIQVQgREFTIFRFQU0gVkVSTEFTU0VOLgpEdSBzaWVoc3QgZWluZSBkdW5rbGUgR2VzdGFsdCwgZGllIGV0d2FzIER1bnN0IGVpbnNhbW1lbHQgLi4uIG9kZXIgdmllbGxlaWNodApiaWxkZXN0IGR1IERpciBkYXMgYXVjaCBudXIgZWluIC4uLgpFaW5lIExlaWNoZSB3aXJkIHZvbiBlaW5lbSBXZWdoaWVyIHZvbGwgSGluZ2VidW5nIHZlcnNwZWlzdC4KRGVyIFdlZ2hpZXIgbGFlY2hlbHQuCkRlciBXZWdoaWVyIG5hZ2VsdCBNZXNpcmlpcyBUb3RlbnNjaGFlZGVsIGFuIGVpbmVuQmF1bS4KRGVyIFdlZ2hpZXIgZ3JpbnN0IHVuYXNhaWlzY2guLi4KRGVyIERzY2hpbm4gZ2VodC4KQWxkZXJhbiBtYWNodCBlaW5lIEZpbnRlIGdlZ2VuIGVpbmVuIFdlZ2hpZXIuCkFsZGVyYW4gc2NobGFlZ3QgZWluZW4gV2VnaGllciBwbG9ldHpsaWNoIHVuZCB2b2VsbGlnIHVuZXJ3YXJ0ZXQgbWl0IGVpbmVyCmZ1bmtlbnNwcnVlaGVuZGVuIEtldWxlLgogIEFsZGVyYW4gdHJpZmZ0IGVpbmVuIFdlZ2hpZXIgaGFydC4KRHUgc3RlY2tzdCBkZW4gTmViZWxoYW1tZXIgenVydWVjay4KRHUgZXJoZWJzdCBkaWUgSGFlbmRlIGdlbiBIaW1tZWwgdW5kIGJlc2Nod29lcnN0IGVpbmVuIEJsaXR6IGF1ZiBlaW5lbiBXZWdoaWVyCmhlcmFiLgogIEF1ZiBkZXIgSGF1dCBkZXMgV2VnaGllcnMgc3ByaW5nZW4ga2xlaW5lIEZ1bmtlbiB1bWhlci4KTFAgMjE2ICAgTVAgODAgKC0xMykKRHUgenVlY2tzdCBkZW4gTmViZWxoYW1tZXIuCkVpbiBXZWdoaWVyIHBhcmllcnQgZGVuIEFuZ3JpZmYgbWl0IGRlbSBWb2xsc3RyZWNrZXIuCiAgQWxkZXJhbiB2ZXJmZWhsdCBlaW5lbiBXZWdoaWVyLgpMUCAyMTcgICBNUCA4MApMUCAyMTcgICBNUCA4MiAoKzIpCkVpbiBXZWdoaWVyIHBhcmllcnQgZGVuIEFuZ3JpZmYgbWl0IGRlbSBWb2xsc3RyZWNrZXIuCiAgTWFoYXJldCB2ZXJmZWhsdCBlaW5lbiBXZWdoaWVyLgpFaW4gV2VnaGllciB1bnRlcmxhZXVmdCBkaWUgV2FmZmUgQWxkZXJhbnMuCiAgRGVyIFdlZ2hpZXIgZ3JlaWZ0IEFsZGVyYW4gbWl0IGVpbmVtIFZvbGxzdHJlY2tlciBhbi4KICBFaW4gV2VnaGllciB6ZXJzY2htZXR0ZXJ0IEFsZGVyYW4gaW4ga2xlaW5lIFN0dWVja2NoZW4uCiAgRWluIFdlZ2hpZXIgemVyc2NobWV0dGVydCBBbGRlcmFuIGluIGtsZWluZSBTdHVlY2tjaGVuLgpEZXIgVm9sbHN0cmVja2VyIHZlcnN1Y2h0LCBBbGRlcmFuIGRlbiBUb2Rlc3N0b3NzIHp1IHZlcnNldHplbiEKICBFaW4gV2VnaGllciBwdWx2ZXJpc2llcnQgQWxkZXJhbi4KQWxkZXJhbiBmYWVsbHQgdG90IHp1IEJvZGVuLgpbVGVhbSA1OlRvZF0gQUxERVJBTiBIQVQgREFTIFRFQU0gVkVSTEFTU0VOLgpbVGVhbSA1Ol0gTWFoYXJldCBoYXQgZGllIFRlYW1sZWl0dW5nIHVlYmVybm9tbWVuLgpEdSBzaWVoc3QgZWluZSBkdW5rbGUgR2VzdGFsdCwgZGllIGV0d2FzIER1bnN0IGVpbnNhbW1lbHQgLi4uIG9kZXIgdmllbGxlaWNodApiaWxkZXN0IGR1IERpciBkYXMgYXVjaCBudXIgZWluIC4uLgogIERlciBXZWdoaWVyIGdyZWlmdCBNYWhhcmV0IG1pdCBlaW5lbSBWb2xsc3RyZWNrZXIgYW4uCiAgRWluIFdlZ2hpZXIgc2NobGFlZ3QgTWFoYXJldCBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgogIEVpbiBXZWdoaWVyIHRyaWZmdCBNYWhhcmV0IHNlaHIgaGFydC4KICBFaW4gV2VnaGllciB0cmlmZnQgTWFoYXJldCBzZWhyIGhhcnQuCkVpbmUgTGVpY2hlIHdpcmQgdm9uIGVpbmVtIFdlZ2hpZXIgdm9sbCBIaW5nZWJ1bmcgdmVyc3BlaXN0LgpEZXIgV2VnaGllciBsYWVjaGVsdC4KRGVyIFdlZ2hpZXIgbmFnZWx0IEFsZGVyYW5zIFRvdGVuc2NoYWVkZWwgYW4gZWluZW5CYXVtLgpEZXIgV2VnaGllciBncmluc3QgdW5hc2FpaXNjaC4uLgpNYWhhcmV0IHNldHp0IGVpbmVuIFRvZGVzc3Rvc3MgZ2VnZW4gZWluZW4gV2VnaGllciBhbi4KICBNYWhhcmV0IHZlcmZlaGx0IGVpbmVuIFdlZ2hpZXIuCk1haGFyZXQgemVyYmVpc3N0IGdlbnVlc3NsaWNoIGVpbmVuIERyb3BzLgpFaW4gV2VnaGllciBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkxpY2h0dW5nIGltIEdyaW1tc3dhbGQuCkVzIGdpYnQgdmllciBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuLCB3ZXN0ZW4gdW5kIG5vcmRlbi4KRGFzIEhhdXMgdm9uIENlcGhldXMuCkRhcyBIYXVzIHZvbiBZb3JyZWwuCkVpbiBHZXJvZWxsaGF1ZmVuLgpFaW5lIFR1cm1ydWluZS4KRGFzIEhhdXMgdm9uIFNuZXJ0LgpMUCAyMTggICBNUCA4MgpbVGVhbSA1OlRvZF0gTUFIQVJFVCBIQVQgREFTIFRFQU0gVkVSTEFTU0VOLgpbVGVhbSA1Ol0gR2xvaW4gaGF0IGRpZSBUZWFtbGVpdHVuZyB1ZWJlcm5vbW1lbi4KW1RlYW0gNTpdIERhcyBUZWFtIGxvZXN0IHNpY2ggYXVmLgpEdSB2ZXJsYWVzc3QgZGFzIFRlYW0uCkRpZSBnb2V0dGxpY2hlIEF1cmEgdmVybGFlc3N0IERpY2ggd2llZGVyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHb2V0dGVybWFjaHQgZnVlciBOUENzPyA7KSAoR2xvaW4sIDE1LiBKYW4gMjAwNSwgMDQ6NDU6NDQpOgp+IyEgcm49R2xvaW4gcnQ9MTEwNTc2MDI1NCByZz1zY2htYXJybgp+IyEgdGlkPTExMDU3NjAyNTQKSmFqYSwgZXMgd2FyIGRpZSByZWluZSBQYW5payBtaXQgMjE4IExQIHp1IGZsaWVoZW4gdW5kIE1haGFyZXQgZGVtIFdlZ2hpZXIKb2hlbiBTY2h1dHpoYW5kIHp1IHVlYmVybGFzc2VuIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHb2V0dGVybWFjaHQgZnVlciBOUENzPyA7KSAoTWFoYXJldCwgMTUuIEphbiAyMDA1LCAwNTowMjoxMik6Cn4jISBybj1HbG9pbiBydD0xMTA1NzYwNzQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTc2MDI1NApKYWphLCB1bmQgZGFubiBkZW4gV2VnaGllciBoZWlsZW4gLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHb2V0dGVybWFjaHQgZnVlciBOUENzPyA7KSAoR2xvaW4sIDE1LiBKYW4gMjAwNSwgMDU6Mjg6MjcpOgp+IyEgcm49TWFoYXJldCBydD0xMTA1NzYxNzMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTc2MDI1NApIZXksIGR1IHdhcnN0IHJhdXMgdW5kIGljaCBkYWNodGUgIndlbiBzb2xsIGljaCBkZW5uIGpldHp0IGhlaWxlbiIuIFVuZCBkYSB3YXIKbnVyIG5vY2ggZGVyIFdlZ2hpZXIsIHNjaHdlciB2ZXJsZXR6dCAuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNdWFkaWJzIEtvY2h0aXBwcyBmdWVyIGJsdXRpZ2UgQW5mYWVuZ2VyIChBcmF0aG9ybiwgMTUuIEphbiAyMDA1LCAxODo0Njo1Mik6Cn4jISBybj1UdXJibyBydD0xMTA1ODExMTcyIHJnPWtvY2hyZXplcHRlCn4jISB0aWQ9MTEwNTgxMDA4OQpPa2F5LCBhYmVyIGZ1ZXIgZ3J1ZW5lbiBUZWUgemllbWxpY2ggaWRlYWwsIGRhcyBXYXNzZXIgYXVmbSBNdC4gRXZlcmVzdCB6dQprb2NoZW4uIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE11YWRpYnMgS29jaHRpcHBzIGZ1ZXIgYmx1dGlnZSBBbmZhZW5nZXIgKEdyaW1tYm9ybiwgMTUuIEphbiAyMDA1LCAxOTozMjoyMSk6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMTA1ODEwNDEzIG9nPWtvY2hyZXplcHRlCn4jISBybj1NdWFkaWIgcnQ9MTEwNTgxMDA4OSByZz1rb2NocmV6ZXB0ZQp+IyEgdGlkPTExMDU4MTAwODkKVW5kIGRhcyBpc3QgYXVmIGRhcyBSZTg4ODg4IGF1c2dlc2V0enQ/IE5hIE1haGx6ZWl0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNdWFkaWJzIEtvY2h0aXBwcyBmdWVyIGJsdXRpZ2UgQW5mYWVuZ2VyIChHcmltbWJvcm4sIDE1LiBKYW4gMjAwNSwgMTk6MzI6MjcpOgp+IyEgb249VHVyYm8gb3Q9MTEwNTgxMDcwOSBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49TXVhZGliIHJ0PTExMDU4MTAwODkgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMTA1ODEwMDg5CmRhcyBtaXQgZGVuIEJsYXNlbiB1bmQgZGVtIEtvY2hlbiBzdGltbXQgYWJlciBudXIgYXVmIE1lZXJlc2hvZWhlLgoKVHVyYm8gKEthdGVyKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNdWFkaWJzIEtvY2h0aXBwcyBmdWVyIGJsdXRpZ2UgQW5mYWVuZ2VyIChHcmltbWJvcm4sIDE1LiBKYW4gMjAwNSwgMTk6MzI6MjkpOgp+IyEgb249SHVtbmkgb3Q9MTEwNTgxMDg2NyBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49VHVyYm8gcnQ9MTEwNTgxMDcwOSByZz1rb2NocmV6ZXB0ZQp+IyEgdGlkPTExMDU4MTAwODkKSW50ZXJlc3NhbnRlIEFuc2ljaHQuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTXVhZGlicyBLb2NodGlwcHMgZnVlciBibHV0aWdlIEFuZmFlbmdlciAoR3JpbW1ib3JuLCAxNS4gSmFuIDIwMDUsIDE5OjMyOjMwKToKfiMhIG9uPVR1cmJvIG90PTExMDU4MTA5NTkgb2c9a29jaHJlemVwdGUKfiMhIHJuPUh1bW5pIHJ0PTExMDU4MTA4Njcgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMTA1ODEwMDg5CmV4YWt0ZXIgd2FlcmUgYmVpIEx1ZnRkcnVjaywgZGVyIGRlbSBhdWYgTWVlcmVzaG9laGUgZW50c3ByaWNodC4KClR1cmJvIChLYXRlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNdWFkaWJzIEtvY2h0aXBwcyBmdWVyIGJsdXRpZ2UgQW5mYWVuZ2VyIChHcmltbWJvcm4sIDE1LiBKYW4gMjAwNSwgMTk6MzI6MzEpOgp+IyEgb249R2xvaW5zb24gb3Q9MTEwNTgxMDk3MyBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49TXVhZGliIHJ0PTExMDU4MTAwODkgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMTA1ODEwMDg5CkVzIGtvY2h0IGF1Y2ggbWl0IEJsYXNlbiBhdWYgTmljaHRtZWVyZXNob2VoZS4gRGllIFRlbXBlcmF0dXIga29lbm50ZSBudXIgdm9uCmRlaW5lbSBFcndhcnR1bmdzd2VydCBhYndlaWNoZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNdWFkaWJzIEtvY2h0aXBwcyBmdWVyIGJsdXRpZ2UgQW5mYWVuZ2VyIChHcmltbWJvcm4sIDE1LiBKYW4gMjAwNSwgMTk6MzI6MzIpOgp+IyEgb249SHVtbmkgb3Q9MTEwNTgxMTAwNSBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNTgxMDk3MyByZz1rb2NocmV6ZXB0ZQp+IyEgdGlkPTExMDU4MTAwODkKRWJlbiwgdm9uIGRlciBUZW1wZXJhdHVyIHN0ZWh0IGRhIGRvY2ggZ2FyIG5peC4KCktvY2hlbiB0dXQgZGFzIFdhc3NlciBkdXJjaGF1cy4gQXVjaCBiZWkgOTggR3JhZCwgd2VubiBlcyBkYW5uIGViZW4ga29jaHQuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNdWFkaWJzIEtvY2h0aXBwcyBmdWVyIGJsdXRpZ2UgQW5mYWVuZ2VyIChHcmltbWJvcm4sIDE1LiBKYW4gMjAwNSwgMTk6MzI6MzMpOgp+IyEgb249QXJhdGhvcm4gb3Q9MTEwNTgxMTAyNSBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNTgxMDk3MyByZz1rb2NocmV6ZXB0ZQp+IyEgdGlkPTExMDU4MTAwODkKSm8sIGRlciBWb3JnYW5nIGRlcyBTaWVkZW5zIGlzdCBmdWVyIGFsbGUgVW1nZWJ1bmdzZHJ1ZWNrZSBnbGVpY2ggZGVmaW5pZXJ0LApibG9zcyBpc3QgZGFzIGdhbnplIHRlbXBlcmF0dXJhYmhhZW5naWcuCgpBcmF0aG9ybi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTXVhZGlicyBLb2NodGlwcHMgZnVlciBibHV0aWdlIEFuZmFlbmdlciAoR3JpbW1ib3JuLCAxNS4gSmFuIDIwMDUsIDE5OjMyOjM0KToKfiMhIG9uPVR1cmJvIG90PTExMDU4MTExNzIgb2c9a29jaHJlemVwdGUKfiMhIHJuPUdsb2luc29uIHJ0PTExMDU4MTA5NzMgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMTA1ODEwMDg5CkVzIHNwcnVkZWx0IHVuZCB3ZWNoc2VsdCBkZW4gQWdncmVnYXR6dXN0YW5kLCBvay4gQWJlciBkZW4gZGFtaXQgZ2Vrb2NodGVuClRlZSBkYXJmc3QgZHUgc2VsYnN0IHRyaW5rZW4uCgpUdXJibyAoS2F0ZXIpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNdWFkaWJzIEtvY2h0aXBwcyBmdWVyIGJsdXRpZ2UgQW5mYWVuZ2VyIChHcmltbWJvcm4sIDE1LiBKYW4gMjAwNSwgMTk6MzI6MzUpOgp+IyEgb249UGl0ZmFsbCBvdD0xMTA1ODExMTk0IG9nPWtvY2hyZXplcHRlCn4jISBybj1UdXJibyBydD0xMTA1ODExMTcyIHJnPWtvY2hyZXplcHRlCn4jISB0aWQ9MTEwNTgxMDA4OQpiYXJiYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE11YWRpYnMgS29jaHRpcHBzIGZ1ZXIgYmx1dGlnZSBBbmZhZW5nZXIgKEdyaW1tYm9ybiwgMTUuIEphbiAyMDA1LCAxOTozMjozNik6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMTA1ODExMjAwIG9nPWtvY2hyZXplcHRlCn4jISBybj1UdXJibyBydD0xMTA1ODExMTcyIHJnPWtvY2hyZXplcHRlCn4jISB0aWQ9MTEwNTgxMDA4OQpTaW5kIHNjaG9uIHZpZWxlIEJlcmdzdGVpZ2VyIGFtIE10LiBFdmVyZXN0IGFuIG5pY2h0Z2Vrb2NodGVtIFRlZSBnZXN0b3JiZW4sCm9kZXI/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTXVhZGlicyBLb2NodGlwcHMgZnVlciBibHV0aWdlIEFuZmFlbmdlciAoR3JpbW1ib3JuLCAxNS4gSmFuIDIwMDUsIDE5OjMyOjM3KToKfiMhIG9uPUdsb2luc29uIG90PTExMDU4MTEyMTYgb2c9a29jaHJlemVwdGUKfiMhIHJuPVBpdGZhbGwgcnQ9MTEwNTgxMTE5NCByZz1rb2NocmV6ZXB0ZQp+IyEgdGlkPTExMDU4MTAwODkKRGFzZCBoZWlzc3QgZG9jaCBadWVyaWNoLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE11YWRpYnMgS29jaHRpcHBzIGZ1ZXIgYmx1dGlnZSBBbmZhZW5nZXIgKEdyaW1tYm9ybiwgMTUuIEphbiAyMDA1LCAxOTozMjozOCk6Cn4jISBvbj1NYWhhcmV0IG90PTExMDU4MTEyNDIgb2c9a29jaHJlemVwdGUKfiMhIHJuPUdsb2luc29uIHJ0PTExMDU4MTEyMTYgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMTA1ODEwMDg5CldlciBzcHJhY2ggZWlnZW50bGljaCB2b24gVGVlPyBNdWFkaWIgamVkZW5mYWxscyBuaWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE11YWRpYnMgS29jaHRpcHBzIGZ1ZXIgYmx1dGlnZSBBbmZhZW5nZXIgKEdyaW1tYm9ybiwgMTUuIEphbiAyMDA1LCAxOTozMjozOSk6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMTA1ODExMjY2IG9nPWtvY2hyZXplcHRlCn4jISBybj1NYWhhcmV0IHJ0PTExMDU4MTEyNDIgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMTA1ODEwMDg5ClR1cmJvIGdyZWlmdCBkZW0gS29jaGt1cnMgdm9yIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE11YWRpYnMgS29jaHRpcHBzIGZ1ZXIgYmx1dGlnZSBBbmZhZW5nZXIgKEdyaW1tYm9ybiwgMTUuIEphbiAyMDA1LCAxOTozMjo0MCk6Cn4jISBvbj1UdXJibyBvdD0xMTA1ODExMjkwIG9nPWtvY2hyZXplcHRlCn4jISBybj1HbG9pbnNvbiBydD0xMTA1ODExMjAwIHJnPWtvY2hyZXplcHRlCn4jISB0aWQ9MTEwNTgxMDA4OQpkaWUgbmVobWVuIERydWNra29jaHRvZXBmZSBtaXQuCgpUdXJibyAoS2F0ZXIpIC0gbmljaHRzIGlzdCBzbyB3aWNodGlnIHdpZSBkZXIgTmFjaG1pdHRhZ3N0ZWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTXVhZGlicyBLb2NodGlwcHMgZnVlciBibHV0aWdlIEFuZmFlbmdlciAoR3JpbW1ib3JuLCAxNS4gSmFuIDIwMDUsIDE5OjMyOjQxKToKfiMhIG9uPU11YWRpYiBvdD0xMTA1ODEyODgwIG9nPWtvY2hyZXplcHRlCn4jISBybj1HbG9pbnNvbiBydD0xMTA1ODEwNDEzIHJnPWtvY2hyZXplcHRlCn4jISB0aWQ9MTEwNTgxMDA4OQpkYXMgaGF0IG1pdCBkZW0gcmUgbml4IHp1IHR1bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTXVhZGlicyBLb2NodGlwcHMgZnVlciBibHV0aWdlIEFuZmFlbmdlciAoR3JpbW1ib3JuLCAxNS4gSmFuIDIwMDUsIDE5OjMyOjQyKToKfiMhIG9uPVRhcmFuaXMgb3Q9MTEwNTgxMjg4MiBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49VHVyYm8gcnQ9MTEwNTgxMTI5MCByZz1rb2NocmV6ZXB0ZQp+IyEgdGlkPTExMDU4MTAwODkKT2IgRHUgRGVpbmVuIE5hY2htaXR0YWdzdGVlIG1pdCA5NyBHcmFkIG9kZXIgMTAyIEdyYWQgaGVpc3NlbSBXYXNzZXIKYXVmZ2llc3N0LCBkdWVyZnRlIGFiZXIgemllbWxpY2ggZWdhbCwgaXN0IGJlaWRlcyB6dSBoZWlzcy4KClRhcmFuaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE11YWRpYnMgS29jaHRpcHBzIGZ1ZXIgYmx1dGlnZSBBbmZhZW5nZXIgKEdyaW1tYm9ybiwgMTUuIEphbiAyMDA1LCAxOTozMjo0Myk6Cn4jISBvbj1XdXJ6ZWwgb3Q9MTEwNTgxMzgzOSBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49VGFyYW5pcyBydD0xMTA1ODEyODgyIHJnPWtvY2hyZXplcHRlCn4jISB0aWQ9MTEwNTgxMDA4OQplYmVuLiBqYXBhbmVyIHNjaGxhZ2VuIHZvciwgdGVlIG1pdCA2MCBncmFkIHp1IGVyemV1Z2VuLCBpc3QgbmljaHQgd2lya2xpY2gKa29jaGVuZC4gYW5zb25zdGVuIHNpbmQgODAtODUgZ3JhZCB2b2VsbGlnIGhpbnJlaWNoZW5kLiBkYXMgZ2VodCBhdWNoIG9obmUKZHJ1Y2trb2NodG9wZiBhbSBtb3VudCBldmVyZXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE11YWRpYnMgS29jaHRpcHBzIGZ1ZXIgYmx1dGlnZSBBbmZhZW5nZXIgKEdyaW1tYm9ybiwgMTUuIEphbiAyMDA1LCAyMTo1OTozNSk6Cn4jISBvbj1WYW5pb24gb3Q9MTEwNTgyMTYzMiBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49TXVhZGliIHJ0PTExMDU4MTAwODkgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMTA1ODEwMDg5ClNvLCB1bmQgRGljaCBzb2xsIGljaCBhbiBtZWluZSBLdWVjaGUgbGFzc2VuPyBXZWlhLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTXVhZGlicyBLb2NodGlwcHMgZnVlciBibHV0aWdlIEFuZmFlbmdlciAoTXVhZGliLCAxNS4gSmFuIDIwMDUsIDIyOjAyOjEzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTA1ODIyNzc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTgxMDA4OQpoYWVoPwppY2ggZ2ViIGRvY2ggbWVpbiBleHF1aXNpdGVzIHdpc3NlbiB3ZWl0ZXIsIGluIGtsZWluZW4gbGVpY2h0IHZlcmRhdWxpY2hlbgpkb3Nlbi4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE11YWRpYnMgS29jaHRpcHBzIGZ1ZXIgYmx1dGlnZSBBbmZhZW5nZXIgKFZhbmlvbiwgMTUuIEphbiAyMDA1LCAyMjowMzoyMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEwNTgyMjc3NSByZz1zY2htYXJybgp+IyEgdGlkPTExMDU4MTAwODkKRWxlbmRlIHdpbGxrdWVybGljaGUgRXJ6bWFnaWVyIC4uLiB2ZXJsZWdlbiBlaW5mYWNoIG1laW5lIEFydGlrZWwgOikKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNdWFkaWJzIEtvY2h0aXBwcyBmdWVyIGJsdXRpZ2UgQW5mYWVuZ2VyIChNdWFkaWIsIDE1LiBKYW4gMjAwNSwgMjI6MDQ6MDcpOgp+IyEgcm49VmFuaW9uIHJ0PTExMDU4MjMwMDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1ODEwMDg5CmFoIHdpZWRlciBzbyBlaW4gc3RhZW5rZXJlciBkZXIgbmljaHQgbWFsIGdyaW1tYm9ybiBhbHMgc29sY2hlbiBlcmtlbm50CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNdWFkaWJzIEtvY2h0aXBwcyBmdWVyIGJsdXRpZ2UgQW5mYWVuZ2VyIChWYW5pb24sIDE1LiBKYW4gMjAwNSwgMjI6MDU6MTkpOgp+IyEgcm49TXVhZGliIHJ0PTExMDU4MjMwNDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1ODEwMDg5CldpbGxzdCBEdSBkaWUgQW5zY2h1bGRpZ3VuZyBkZXIgV2lsbGt1ZXJsaWNoa2VpdCBldHdhIGFic3RyZWl0ZW4/IChNYWwgdm9lbGxpZwp1bmFiaGFlbmdpZyB2b20gS29udGV4dCAuLi4pCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTXVhZGlicyBLb2NodGlwcHMgZnVlciBibHV0aWdlIEFuZmFlbmdlciAoTXVhZGliLCAxNS4gSmFuIDIwMDUsIDIyOjA2OjAxKToKfiMhIHJuPVZhbmlvbiBydD0xMTA1ODIzMTE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTgxMDA4OQpuZWluCmFiZXIgaW4gZGllc2VtIGZhbGwgd2FyIGljaCBlcyBuaWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llZGVyIHZlcnRyYWdlbj8gOykgKE1haGFyZXQsIDE1LiBKYW4gMjAwNSwgMjI6MjA6MzUpOgpWb24gRnJldW5kIFZhbmlvbjogTmFjaHQgaWhycyA6KQpYeWxjbyBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpEZWluIFBpbmd1aW4gdmlicmllcnQsIGRhcyBtZXJrc3QgRHUgZGV1dGxpY2guClZvbiBGcmV1bmQgTXVhZGliOiBpY2ggYmluIG1hbCBuZSB6ZWl0bGFuZyB3ZWcKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXVhZGlicyBLb2NodGlwcHMgZnVlciBibHV0aWdlIEFuZmFlbmdlciAoUm9uZGEsIDE1LiBKYW4gMjAwNSwgMjI6Mzg6MzEpOgp+IyEgcm49TXVhZGliIHJ0PTExMDU4MTAwODkgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMTA1ODEwMDg5Ck5hIC0gd2FzIG1hbiBtaXQga29jaGVuZGVtIFdhc3NlciBtYWNodD8gVHJpdmlhbDogRWluZnJpZXJlbi4gS29jaGVuZGVzIFdhc3NlcgprYW5uIG1hbiBpbW1lciBicmF1Y2hlbiEKClJvbmRhICpqYSwgZGVyIGhhdHRlIHNvb29vb29vIG5lbiBCYXJ0Li4uKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE11YWRpYnMgS29jaHRpcHBzIGZ1ZXIgYmx1dGlnZSBBbmZhZW5nZXIgKEJhbWJpLCAxNi4gSmFuIDIwMDUsIDAxOjIwOjAyKToKfiMhIHJuPU11YWRpYiBydD0xMTA1ODEwMDg5IHJnPWtvY2hyZXplcHRlCn4jISB0aWQ9MTEwNTgxMDA4OQo+IE5hZWNoc3RlIEZvbGdlOiBXYXMgbWFjaHQgbWFuIG51biBtaXQgZGVtIGtvY2hlbmRlbiBXYXNzZXI/CkVpbmZyaWVyZW4sIGRlbm4ga29jaGVuZGVzIFdhc3NlciBrYW5uIG1hbiBpbW1lciB3aWVkZXIgZWlubWFsIGdlYnJhdWNoZW4uCgpCYW1iaSwgZGVyIEVya2xhZXJiYWVyLi4uIGFlaCwgZGFzIEVya2xhZXJyZWguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE11YWRpYnMgS29jaHRpcHBzIGZ1ZXIgYmx1dGlnZSBBbmZhZW5nZXIgKENyb2Z0LCAxNi4gSmFuIDIwMDUsIDAxOjQ3OjU1KToKfiMhIHJuPUJhbWJpIHJ0PTExMDU4MzQ4MDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1ODEwMDg5CkJhbWJpLCBkdSBiaXN0IGxhbmdzYW0uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKendlcmdlbnN0YWVuZGUgKEV0aGFldiwgMTYuIEphbiAyMDA1LCAwODo0NToyOCk6Cj5iZWtlaHJlIHp3ZXJnCgpJcmdlbmR3aWUgc2NoZWludCBzaWNoIGRlciBIb3REb2ctU3RhbmQgbmljaHQgdm9uIERpciBiZWtlaHJlbiBsYXNzZW4genUKd29sbGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERyZXNkZW4gKFNlaXQgbGFuZ2VtIG1hbCB3aWVkZXIpIChQaXRmYWxsLCAxNy4gSmFuIDIwMDUsIDAwOjA5OjQzKToKfiMhIHJuPUdsb2luc29uIHJ0PTExMDU5MTY5NDkgcmc9dHJlZmZlbgp+IyEgdGlkPTExMDU1MzkwNDYKVW5kIGRhIHdhbmRlcnQgSWhyIGpldHp0IHZvbiBEcmVzZGVuIGF1cyBoaW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEcmVzZGVuIChTZWl0IGxhbmdlbSBtYWwgd2llZGVyKSAoR2xvaW5zb24sIDE3LiBKYW4gMjAwNSwgMDA6MTA6NDcpOgp+IyEgcm49UGl0ZmFsbCBydD0xMTA1OTE2OTgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTUzOTA0NgpTY2hvbiBnZXRhbiB1bmQgZGEuIFNpZWJlbm1laWxlbnN0aWVmZWwhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIEhlbGQhIChNaXJpbCwgMTcuIEphbiAyMDA1LCAwMDoxODowOSk6Ck51ciBIdW1uaSBrZW5udCBkaWUgQmVkZXV0dW5nIGRlciBMaWNodGVyLgpFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogZ2lsZGUuCkRlciBzY2hsaW1tZSBzY2h3YXJ6ZSBEcmFjaGUgSHVtbmkgaXN0IHdpcmtsaWNoIGJvZXNlIHVuZCBkZXIgSGVsZC4KU2F0YW5zIEtsdW1wZnVzcy4gKDMpCkVpbiBEYWVtb25lbmF1Z2UuICgzKQpFaW4gUGFhciBUZXVmZWxzaG9lcm5lci4gKDMpCjk5MDQzNCBNdWVuemVuLgoKTWlyaWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEZXIgSGVsZCEgKEdyaW1tYm9ybiwgMTcuIEphbiAyMDA1LCAwMDoyMDoyMSk6Cn4jISBybj1NaXJpbCBydD0xMTA1OTE3NDg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTkxNzQ4OQpOYSwga3JhbGwgRGlyIGRpZSBQZW51bnplIHVuZCBhYiBkdXJjaCBkaWUgTWl0dGUhIEJpcyBIdW1uaSByZWFnaWVydCBiaXN0IER1CnVlYmVyIGFsbGUgQmVyZ2UuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU29uZGVyU3VzaGlTdGFtbXRpc2NoIEthcmxzcnVoZSAxNi4xIChDcm9mdCwgMTcuIEphbiAyMDA1LCAwOToyNDo1Nik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTA1OTE3MDI1IHJnPXRyZWZmZW4KfiMhIHRpZD0xMTA1ODk2NzkxCk9oLCBpaHIgd2FydCBiZWltIFN1c2hpLVN0YW1tdGlzY2g/ICBEYW5uIG11ZXNzZW4gd2lyIGVzIGV1Y2ggdmVycGFzc3QgaGFiZW4uCkFuc29uc3RlbiBrYW5uIGljaCBtaXIgc2VociBndXQgdm9yc3RlbGxlbiBkYXMgZWluZSBXYW5kZXJ1bmcgdm9uIEthcmxzcnVoZQpuYWNoIEJlcmxpbiByZWNodCBhbnN0cmVuZ2VuZCBpc3QuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNdWFkaWJzIEtvY2h0aXBwcyBmdWVyIGJsdXRpZ2UgQW5mYWVuZ2VyIChDcm9mdCwgMTcuIEphbiAyMDA1LCAxMDo1NTo0Nyk6Cn4jISBybj1DYWxkcmluIHJ0PTExMDU5NTU2MDMgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMTA1ODEwMDg5CkRlciBHYWcgd2lyZCBhdWNoIGJlaW0gMy4gTWFsIG5pY2h0IGJlc3Nlci4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKFphcm5peWEsIDE3LiBKYW4gMjAwNSwgMTE6MTY6MDUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMDU3MDk5NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTQ0MTkzCkdyaW1taSwgZGllIEZyYXVlbiwgZGllIGluIGRlbiBIYXJkY29yZSBQb3JubyBMZXNiZW5maWxtZW4gbWl0c3BpZWxlbiBzaW5kIHp1CjksOTklIGhldGVybyB1bmQgb3B0aXNjaCAibm9ybWFsZSIgUG9ybm9kYXJzdGVsbGVyaW5uZW4sIGRlbm4gZGllc2UKTGVzYmVuZmlsbWUgc2luZCBqYSBuaWNodCBmdWVyIExlc2JlbiBnZW1hY2h0LCBzb25kZXJuIGZ1ZXIgTWFlbm5lciwgZGllIHNpY2gKYW4gZW50c3ByZWNoZW5kIGZhbHNjaGVuIFBoYW50YXNpZW4gZWluZW4gcnVudGVyIGhvbGVuIHdvbGxlbi4uLiAgCgpNYXJjCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKEdyaW1tYm9ybiwgMTcuIEphbiAyMDA1LCAxMToxODowMyk6Cn4jISBybj1aYXJuaXlhIHJ0PTExMDU5NTY5NjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTQ0MTkzCkljaCByZWRlIGphIGF1Y2ggdm9uIGRlbiBhbmRlcmVuIDkwLjAxJSBkZXIgRGFyc3RlbGxlcmlubmVuLiBXb2JlaSwgZWlnZW50bGljaApyZWRlIGphIGdhciBuaWNodCBpY2gsIHNvbmRlcm4gZXMgZ2luZyB1bSBkaWUgRnJhZ2UsIHdhcyBtYW4gZGVubiBudW4gdW50ZXIKIkhhcmRjb3JlLUxlc2JlbiIgdmVyc3RlaGVuIHNvbGwuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNdWFkaWJzIEtvY2h0aXBwcyBmdWVyIGJsdXRpZ2UgQW5mYWVuZ2VyIChHcmltbWJvcm4sIDE3LiBKYW4gMjAwNSwgMTE6MTg6MzMpOgp+IyEgb249Q2FsZHJpbiBvdD0xMTA1OTU1NjAzIG9nPWtvY2hyZXplcHRlCn4jISBybj1NdWFkaWIgcnQ9MTEwNTgxMDA4OSByZz1rb2NocmV6ZXB0ZQp+IyEgdGlkPTExMDU4MTAwODkKRWluZnJpZXJlbi4gSGVpc3NlcyBXYXNzZXIga2FubiBtYW4gaW1tZXIgZ2VicmF1Y2hlbi4KCnNvIGxvbmcKQ2FsZHJpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChNYWhhcmV0LCAxNy4gSmFuIDIwMDUsIDExOjE4OjM3KToKfiMhIHJuPVphcm5peWEgcnQ9MTEwNTk1Njk2NSByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKTmFqYSwgZGllIHJlc3RsaWNoZW4gOTAuMDEgJSBzaW5kIGRhIHNpY2hlcmxpY2ggcmVzcHJhZXNlbnRhdGl2ZXIuIFVuZCBkaWUKc2luZCB2ZXJtdXRsaWNoIGJpPyBJY2gga2VubiBrZWluZSBwZXJzb2VubGljaCwgaWNoIGthbm4gbnVyIHZlcm11dGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChaYXJuaXlhLCAxNy4gSmFuIDIwMDUsIDExOjIzOjA3KToKfiMhIHJuPU1haGFyZXQgcnQ9MTEwNTk1NzExNyByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKaWNoIGhhdHRlIG1pY2ggdmVydGlwcHQuLi4gbWVpbmVyIHNjaGFldHp1bmcgbmFjaCBzaW5kIDk5LDk5JSBhbGxlciBGcmF1ZW4gaW4KZGVuIGVudHNwcmVjaGVuZGVuIEZpbG1lbiBoZXRlcm8uLi4gCgpNYXJjCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKEdyaW1tYm9ybiwgMTcuIEphbiAyMDA1LCAxMToyNjozNyk6Cn4jISBybj1aYXJuaXlhIHJ0PTExMDU5NTczODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTQ0MTkzCk5hamEsIER1IGhhc3QgZGEgYmVzdGltbXQgZWluZSBiZXNzZXJlIEJldXJ0ZWlsdW5nc2dydW5kbGFnZSBhbHMgaWNoLCBpY2gga2FubgpkYXMgZWhlciBuaWNodCBzbyBrb21wZXRlbnQgYmV1cnRlaWxlbi4uLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChBbWFyeWxsaXMsIDE3LiBKYW4gMjAwNSwgMTE6Mzk6NTIpOgp+IyEgcm49WmFybml5YSBydD0xMTA1OTU3Mzg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpXZWlsIHNpZSBzaWNoIHNvIGJsb2VkIGFuc3RlbGxlbiwgb2RlciB3b3JhbiBzaWVodCBtYW4gZGFzPwoKQW1hKiwgaGF0IGtlaW5lIEFobnVuZyB1bmQgc3RlaHQgbmljaHQgYXVmIHNvbGNoZSBGaWxtZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChNYWhhcmV0LCAxNy4gSmFuIDIwMDUsIDExOjQzOjUwKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMTA1OTU4MzkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTE0NDE5MwpJY2ggZmluZGUgZGFzIGF1Y2ggc2VociB1bndhaHJzY2hlaW5saWNoIG1pdCBkZW4gOTksOTklLiBXYXJ1bSBzb2xsdGVuIGluIGRlcgpCcmFuY2hlIHNvIHZpZWwgd2VuaWdlciBCaS1GcmF1ZW4gYXJiZWl0ZW4gYWxzIGltIEdlc2FtdGZyYXVlbmR1cmNoc2Nobml0dD8gCkdlcmFkZSBpbiBkZXIgQnJhbmNoZSBoYWV0dGUgaWNoIHZlcm11dGV0LCBkYXNzIGRlciBCaS1BbnRlaWwgc29nYXIgaG9laGVyCmlzdC4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTb25kZXJTdXNoaVN0YW1tdGlzY2ggS2FybHNydWhlIDE2LjEgKE1haGFyZXQsIDE3LiBKYW4gMjAwNSwgMTE6NDU6MTgpOgp+IyEgcm49VHVyYm8gcnQ9MTEwNTk1ODY1NiByZz10cmVmZmVuCn4jISB0aWQ9MTEwNTg5Njc5MQpEYXMga29tbXQgZGFyYXVmIGFuLiBGZWxpbmVuIHdlcmRlbiBnZXNjaHJlZGRlcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTb25kZXJTdXNoaVN0YW1tdGlzY2ggS2FybHNydWhlIDE2LjEgKENyb2Z0LCAxNy4gSmFuIDIwMDUsIDExOjQ4OjQwKToKfiMhIHJuPVR1cmJvIHJ0PTExMDU5NTg2NTYgcmc9dHJlZmZlbgp+IyEgdGlkPTExMDU4OTY3OTEKS29jaGVuIHR1dCBtYW4gZWlnZW50bGljaCBudXIgZGVuIFJlaXMuICBEaWUgQXVmbGFnZSB3aXJkIGlkUiByb2ggZ2VnZXNzZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IEJsdXR3YW5kbHVuZyB1bmQgc28gWmV1Z3MuIChNb250YW51cywgMTcuIEphbiAyMDA1LCAxMTo1ODo1Mik6Cn4jISBybj1NYWhhcmV0IHJ0PTExMDU5NTg2MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MTQ0MTkzCkljaCBmaW5kZSBlaW5pZ2UgU2FjaGVuIGhpZXIgYmVtZXJrZW5zd2VydC4KWnVtIEJlaXNwaWVsLCBkYXNzIGVpbiBCZXJsaW5lciBlaW5lbiBIYW1idXJnZXIgdm9yd2lyZnQsIGRpZXNlciB3dWVyZGUgbmljaHQKaW4gZWluZXIgR3Jvc3NzdGFkdCBsZWJlbi4KQmVkZXV0ZXQgZGFzLCBkYXNzIGpldHp0IHVlYmVyaGF1cHQgbnVyIG5vY2ggQmVybGluZXIgdWViZXIgTGVzYmVuIHJlZGVuCmR1ZXJmZW4/IElzdCBHbjAwbWUgZXZ0bCBzZWxic3QgZWluZSBIYXJkY29yZS1MZXNiZSwgbnVyIGltIEt1aHBlbHo/ClNjaGFsdGVuIFNpZSBhdWNoIG1vcmdlbiB3aWVkZXIgZWluLCB3ZW5uIGRpZXNlIGZyYWdlbmRlbiBTcGFubmVuIGZyb2VobGljaAphdWZnZWtsYWVydCB3ZXJkZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogQmx1dHdhbmRsdW5nIHVuZCBzbyBaZXVncy4gKERhcmtsb3IsIDE3LiBKYW4gMjAwNSwgMTI6NTQ6MTcpOgp+IyEgcm49TW9udGFudXMgcnQ9MTEwNTk1OTUzMiByZz1zY2htYXJybgp+IyEgdGlkPTExMDUxNDQxOTMKRGllIEZyYWdlbiBzcGFubmVuIHVucyBnYW56IHNjaG9lbiBhdWYgZGllIEZvbHRlciAtIGFiZXIgZWNodCEgOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIYWV1ZmlnIGJlbnV0enRlIFdvZXJ0ZXIgaW4gZGVyIEtuZWlwZSAoR3JpbW1ib3JuLCAxOC4gSmFuIDIwMDUsIDE0OjEzOjI1KToKfiMhIG9uPVphcm5peWEgb3Q9MTEwNTk2MTMxOCBvZz13aXR6ZQp+IyEgcm49R2FiaSBydD0xMTA1OTIxMzgzIHJnPXdpdHplCn4jISB0aWQ9MTEwNTkyMTM4MwpzY2hvZW5lbiBHcnVzcyB2b24gV2lsbGkgQXN0b3IuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhhZXVmaWcgYmVudXR6dGUgV29lcnRlciBpbiBkZXIgS25laXBlIChHcmltbWJvcm4sIDE4LiBKYW4gMjAwNSwgMTQ6MTM6MjYpOgp+IyEgb249R2FiaSBvdD0xMTA2MDUzMzYzIG9nPXdpdHplCn4jISBybj1aYXJuaXlhIHJ0PTExMDU5NjEzMTggcmc9d2l0emUKfiMhIHRpZD0xMTA1OTIxMzgzCldpbGx5IEFzdG9yIG1hY2h0IHp3YXIgbGF1dGVyIFdpdHplIGluIGRlciBBcnQsIGFiciBkaWUKc2luZCBuaWNodCB2b24gV2lsbHkgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEhhZXVmaWcgYmVudXR6dGUgV29lcnRlciBpbiBkZXIgS25laXBlIChHcmltbWJvcm4sIDE4LiBKYW4gMjAwNSwgMTQ6MTM6MjcpOgp+IyEgb249TXVhZGliIG90PTExMDYwNTMzODcgb2c9d2l0emUKfiMhIHJuPUdhYmkgcnQ9MTEwNjA1MzM2MyByZz13aXR6ZQp+IyEgdGlkPTExMDU5MjEzODMKZHUgbWVpbnN0IGRpZSB2b24gd2lsbHkgc2luZCBtZWlzdGVucyBldHdhcyBzY2hvZW5lcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5lLCBpcyBrbGFyLi4uIDspIChab29rLCAxOC4gSmFuIDIwMDUsIDE5OjMzOjAxKToKRWluIGtsZWluZXIgRmV1ZXJkcmFjaGUgZmxpdHp0IHZvcmJlaSB1bmQgemlzY2h0OgogIEVpbHQgaGVyYmVpIGlucyAnRmVnZWZldWVyJyB1bmQgd2VyZGV0IFpldWdlLCB3aWUgTW9ndXIgdW5kIE1vZ3VyIHNpY2gKZWluZW4KICBibHV0aWdlbiBLYW1wZiBhdWYgTGViZW4gdW5kIFRvZCBsaWVmZXJuIQoKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFZW5lIG1lZW5lIE1pc3RlLi4uIChHbG9pbnNvbiwgMTguIEphbiAyMDA1LCAyMDoyNzozMik6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMTA2MDc2NDQ2IG9nPWQud2FsZAp+IyEgcm49TmliZWwgcnQ9MTEwNjA3NjM5NCByZz1kLndhbGQKfiMhIHRpZD0xMTA2MDY4NDMxCkFyciwgSHVuZ2VyIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFZW5lIG1lZW5lIE1pc3RlLi4uIChOaWJlbCwgMTguIEphbiAyMDA1LCAyMDozMDoxMik6Cn4jISBvbj1UaWxseSBvdD0xMTA2MDc2MzIwIG9nPWQud2FsZAp+IyEgcm49TmliZWwgcnQ9MTEwNjA2ODQzMSByZz1kLndhbGQKfiMhIHRpZD0xMTA2MDY4NDMxCldhcyB6dW0gVGV1ZmVsIGhhdCBkZW5uIGVpbiBNaXRnbGllZCBtZWluZXIgR29ja2VsLUdhZW5nIGRhbWl0IHp1IHR1bj8gCgogVGlsbHkgLSBzaWNoIGFtIEtvcGZlIGtyYXR6ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVlbmUgbWVlbmUgTWlzdGUuLi4gKE5pYmVsLCAxOC4gSmFuIDIwMDUsIDIwOjMwOjIwKToKfiMhIG9uPU5pYmVsIG90PTExMDYwNzYzOTQgb2c9ZC53YWxkCn4jISBybj1UaWxseSBydD0xMTA2MDc2MzIwIHJnPWQud2FsZAp+IyEgdGlkPTExMDYwNjg0MzEKRGVuIGhhYiBpY2gga251c3ByaWcgZ2VicmF0ZW4gdW5kIGRlciBCYWxhbmNlIGFscyBCZXN0ZWNodW5nIHZlcmZ1ZXR0ZXJ0LgogIC0gTmliZWwKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRWVuZSBtZWVuZSBNaXN0ZS4uLiAoTmliZWwsIDE4LiBKYW4gMjAwNSwgMjA6MzA6MjIpOgp+IyEgb249Rm9vYmFyIG90PTExMDYwNzY0NzQgb2c9ZC53YWxkCn4jISBybj1OaWJlbCBydD0xMTA2MDc2Mzk0IHJnPWQud2FsZAp+IyEgdGlkPTExMDYwNjg0MzEKTWphbS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWVuZSBtZWVuZSBNaXN0ZS4uLiAoTGlhcmEsIDE4LiBKYW4gMjAwNSwgMjA6Mzk6MDcpOgp+IyEgcm49TmliZWwgcnQ9MTEwNjA3NjYxMiByZz1zY2htYXJybgp+IyEgdGlkPTExMDYwNjg0MzEKRHVlcmZlbiB1bnNpY2h0YmFyZSBFaGVtYWVubmVyLCBkaWUgc2ljaCBzZWl0IEphaHJlbiBkZW4gZWhlbGljaGVuIFBmbGljaHRlbgplbnR6aWVoZW4sIHVlYmVyaGF1cHQgaW4gZGVyIE1QQSBzY2hyZWliZW4/IDo+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdXMgZGVtIEtTVEEgKE9ya3RvZXRlciwgMTguIEphbiAyMDA1LCAyMjoyNDo0NSk6CkF1cyBkZW0gS29lbG5lciBTdGFkdEFuemVpZ2VyLCBvbmxpbmUKVVJMOiBodHRwOi8vd3d3LmtzdGEuZGUva3MvY2FjaGUvOTg3NDkwMTY1MTU0Lmh0bWw/cGFnZW5hbWU9a3N0YS9pbmRleAoKTmFjaCBkZXIgNzU6ODktTmllZGVybGFnZSBiZWkgQksgVmVudHNwaWxzIGZpZWxlbiBkaWUgS29lbG5lciBpbiBkZXIgR3J1cHBlIEIKZGVzIFVMRUItQ3VwcyBoaW50ZXIgVlJTQUMgSGVtb2Zhcm0gYXVmIFJhbmcgZHJlaSB6dXJ1ZWNrIHVuZCBtdWVzc2VuIG51bgpkYXJhdWYgaG9mZmVuLCBlaW5lciB2b24gendlaSBiZXN0cGxhdHppZXJ0ZW4gRHJpdHRlbiB6dSBzZWluLCB1bSBzaWNoIG5vY2gKZnVlciBkaWUgbmFlY2hzdGUgUnVuZGUgenUgcXVhbGlmaXppZXJlbi4KCk9ya1QsIHNjaG11bnplbG5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVlbmUgbWVlbmUgTWlzdGUuLi4gKENoYWdhbGwsIDE4LiBKYW4gMjAwNSwgMjI6MjY6MDUpOgp+IyEgcm49TmliZWwgcnQ9MTEwNjA2ODQzMSByZz1kLndhbGQKfiMhIHRpZD0xMTA2MDY4NDMxCkFoLCBEdSBoYXN0IGRlbiBkaXJla3RlbiBadWdhbmcgdm9uIFF1YWxzIFNlaGVyaGF1cyBpbiBkaWUgU2NoYXR6LQprYW1tZXIgZWluZ2ViYXV0LiBGZWluLiAKCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUXVlcmRlbmtlcm1hdGhlbWF0aWsgOykgKEJhbWJ1bGtvLCAxOC4gSmFuIDIwMDUsIDIzOjQ0OjQ0KToKfiMhIHJuPUdsb2luc29uIHJ0PTExMDYwODc5Mjggcmc9d3d3Cn4jISB0aWQ9MTEwNjA4NzkyOApXZW5uIGRhcyAidGhlIHNtYXJ0ZXIgeW91IHdlcmUsIHRoZSBsb25nZXIgaXQgdG9vayB0byBmaWd1cmUgaXQgb3V0LiIgc3RpbW10LAptdXNzIGljaCB2ZXJkYW1tdCBibG9lZCBzZWluLgoKQmFtYnVsa28KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFF1ZXJkZW5rZXJtYXRoZW1hdGlrIDspIChHbG9pbnNvbiwgMTguIEphbiAyMDA1LCAyMzo0ODozMik6Cn4jISBybj1CYW1idWxrbyBydD0xMTA2MDg4Mjg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjA4NzkyOApVbmQgdmVyZGFtbXQgbGVpY2h0IHp1IHByb3ZvemllcmVuIGF1ZiBqZWRlbiBGYWxsLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBdXMgZGVtIEtTVEEgKFphcm5peWEsIDE5LiBKYW4gMjAwNSwgMDg6Mzk6MzYpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExMDYwODM0ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2MDgzNDg1CmFlaG0uLi4gT3JraS4uIHdvIGlzdCBkZXIgV2l0ej8gV2lsbCBhdWNoIHNjaG11bnplbG4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBRdWVyZGVua2VybWF0aGVtYXRpayA7KSAoWm9vaywgMTkuIEphbiAyMDA1LCAwOToxODoyMCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTA2MDg4NTEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjA4NzkyOApIbS4gSWNoIGhhYnMgaXJnZW5kd2llIG5vY2ggbmljaHQgc28gcmljaHRpZyBiZWdyaWZmZW4sIGFiZXIgaWNoIGJla29tbWUKYW5kYXVlcm5kIGVpbiAiQ29ycmVjdCEiLiBXbyB3YXIgbnVuIGRlciBXaXR6PwoKWm9vaywgdW52ZXJzdGFlbmRpZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFF1ZXJkZW5rZXJtYXRoZW1hdGlrIDspIChCb2luZywgMTkuIEphbiAyMDA1LCAwOTozNjowNik6Cn4jISBybj1ab29rIHJ0PTExMDYxMjI3MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2MDg3OTI4CkljaCBrZW5uIGRhcyBtaXQgRWlzYmFlcmVuIC4uLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3R1ZGllbmdlYnVlaHJlbiAoQmFtYnVsa28sIDE5LiBKYW4gMjAwNSwgMTE6MjQ6MTUpOgp+IyEgcm49UmFuZ29ybiBydD0xMTA2MTI5NzY2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTEwNjEyOTc2NgpIbW0sIHZpZWxlaWNodCBzb2xsdGUgbWFuIGVpbmUgUGV0aXRpb24gc3RhcnRlbiBpbiBkZXIgU3R1ZGllbmdlYnVlaHJlbgpnZWZvcmRlcnQgd2VyZGVuLiBEaWUga2FubiBtYW4gZGFubiBuYWNoIGRlbSBNb3R0byAiSWhyIG11ZXNzdCBBa2FkZW1pa2VybiBkaWUKQXVzYmlsZHVuZyB6YWhsZW4sIGRhbWl0IHNpZSBzcGFldGVyIG1laHIgdmVyZGllbmVuLiBXZWhydCBldWNoLCBlcyBnZWh0IHVtCmV1ZXIgR2VsZCEiIGFuIGFsbGUgTmljaHQtU3R1ZGVudGVuIHNjaGlja2VuLiBEYSBrb21tZW4gc2ljaGVyIHNjaG5lbGwKMS4wMDAuMDAwIFN0aW1tZW4genVzYW1tZW4uCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV3VyZnN0ZXJuZSAoQmFtYmksIDE5LiBKYW4gMjAwNSwgMjE6MzQ6MjgpOgp+IyEgcm49UmFuZ29ybiBydD0xMTA2MTQwMTI2IHJnPWQudmxhbmQKfiMhIHRpZD0xMTA2MTI5NTM4Ck1pciBsYWcgamEgYWVobmxpY2hlcyBhdWYgZGVyIFp1bmdlLi4uCkJhbWJpLCBob2ZmZW5kLCBkYXNzIGRpZSBSdWJyaWsgYmVhY2h0ZXQgd2lyZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEJpbGR1bmcgKEdyaW1tYm9ybiwgMTkuIEphbiAyMDA1LCAyMjozMDo1Nik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTEwNjE3MDI1MCBvZz1hbGxnZW1laW5lcwp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNjE3MDA1MSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMDYxMzA2NjIKIkZyYXVlbiBpbiBkaWUgS3VlY2hlIiBpc3QgZWluZSB2ZXJkYW1tdCB6d2Vpc2NobmVpZGlnZSBTYWNoZS4gSWNoIGhhYmUgZWluCnBhYXIgd2lya2xpY2ggcmVjaHQgZ3V0ZSBLdWVjaGVubWVzc2VyLCB1bmQgZWluIHBhYXIgaGVydm9ycmFnZW5kZSwgZGFmdWVyCmVtcGZpbmRsaWNoZSBUb2VwZmUuIERhenUgbm9jaCBkaWUgZWluZSBvZGVyIGFuZGVyZSBLbGVpbmlna2VpdCAtIGRhIHd1ZXJkZQppY2ggZG9jaCBuaWUgbWFsIGVpbmZhY2ggc28gZWluZSBGcmF1IHJhbmxhc3Nlbi4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBCaWxkdW5nIChCaWVsZWZlbGQsIDIwLiBKYW4gMjAwNSwgMTA6NDM6NTEpOgp+IyEgcm49SmFtZXNvbiBydD0xMTA2MjE0MDk3IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTEwNjEzMDY2MgpVbmQgZGEgd2lyIGFsbGUgaGllciBzaW5kLCBhbnN0YXR0IGV0d2FzIHZlcm51ZW5mdGlnZXMgbWl0IAp1bnNlcmVyIFplaXQgYW56dXN0ZWxsZW4sIG11ZXNzZW4gd2lyIGFsbGUgZWluZSBzZWhyIApzY2hsaW1tZSBLaW5kaGVpdCBnZWhhYnQgaGFiZW4uLi4KCi1CaWVsZWZlbGQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBCaWxkdW5nIChab29rLCAyMC4gSmFuIDIwMDUsIDEzOjIyOjM5KToKfiMhIHJuPVpvb2sgcnQ9MTEwNjIyMzY5NSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMDYxMzA2NjIKRGVuIEFydGlrZWwgdmVyZGFua3QgSWhyIG51ciBkZW4gdmVyc2NobGFmZW5lbSBNZWdhc2NobWFycm4tSGF1ZmVuLCBkaWUgCm1laW5lbiBTY2hyZWliZmx1c3Mgc3RvZXJlbi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogQmlsZHVuZyAoUGlnYSwgMjAuIEphbiAyMDA1LCAxMzozNzoyOCk6Cn4jISBybj1ab29rIHJ0PTExMDYyMjM3NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2MTMwNjYyCnkKRGFua2UsIFpvb2sgISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJpbGR1bmcgKEJhbWJ1bGtvLCAyMC4gSmFuIDIwMDUsIDE0OjE5OjE4KToKfiMhIHJuPUhvYm8gcnQ9MTEwNjIyNzAwMCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMDYxMzA2NjIKSGV5LCBJaHIgbWFjaHQgZGllc2UgRGlza3Vzc2lvbiBtaXIgdmVybnVlbmZ0aWdlbiB1bmQgcHJha3Rpa2FibGVuIEFyZ2VtZW50ZW4KamEgZ2FueiBrYXB1dHQuIFdpciBsZWJlbiBkb2NoIGpldHp0IGluIGVpbmVyIFdlbHQsIGluIGRlciBlcyBudXIgU2Nod2FyeiB1bmQKV2Vpc3MgYnp3LiBHdXQgdW5kIEJvZXNlIGdpYnQuCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU3RhbW10aXNjaGUgS2FybHNydWhlIDIwLjEvMjcuMS8zLjIvMTAuMiAoQ3JvZnQsIDIwLiBKYW4gMjAwNSwgMjM6Mzc6MTcpOgp+IyEgcm49Q3JvZnQgcnQ9MTEwNjI2MDU1OSByZz10cmVmZmVuCn4jISB0aWQ9MTEwNjI1ODE2NgpYWFggbmlja3QgZGlyIGF1cyBkZXIgRmVybmUgenUuIApYWFggdGVpbHQgRGlyIG1pdDogbmVlIGJsb3NzIG5ldCBzb24ganVuZ2VuIHNlc3NlbHB1cHNlciBiZXN0aW1tZW4gbGFzc2VuIDopCgpIZWhlIDo+CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU3RhbW10aXNjaGUgS2FybHNydWhlIDIwLjEvMjcuMS8zLjIvMTAuMiAoWm9vaywgMjEuIEphbiAyMDA1LCAwOTowNDo0NCk6Cn4jISBybj1Dcm9mdCBydD0xMTA2MjYwNjM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjI1ODE2NgpwZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmdAoKem9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFN0YW1tdGlzY2hlIEthcmxzcnVoZSAyMC4xLzI3LjEvMy4yLzEwLjIgKEdsb2luc29uLCAyMS4gSmFuIDIwMDUsIDA5OjQ4OjUwKToKfiMhIHJuPVpvb2sgcnQ9MTEwNjI5NDY4NCByZz1zY2htYXJybgp+IyEgdGlkPTExMDYyNTgxNjYKRHUgc29sbHRlc3QgamV0enQgc2NobmVsbCBkZWluZSBVbnRlcndhZXNjaGUgYXVmIFJvc3QgdW50ZXJzdWNoZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFN0YW1tdGlzY2hlIEthcmxzcnVoZSAyMC4xLzI3LjEvMy4yLzEwLjIgKENhdHdlYXpsZSwgMjEuIEphbiAyMDA1LCAwOTo1MjozOCk6Cn4jISBybj1ab29rIHJ0PTExMDYyOTQ2ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2MjU4MTY2CkRhcyBmZWhsdCBlaW4gKGMpLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBCaWxkdW5nIChKaW1kaWdyaXosIDIzLiBKYW4gMjAwNSwgMjM6NTc6MjMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMDYxNzAyNTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2MTMwNjYyCkFic29sdXRlIFp1c3RpbW11bmcuIEtvY2hlbiBpc3QgTWFlbm5lcnNhY2hlLAp6dW1pbmRlc3Qgd2VubiB3YXMgd2lya2xpY2ggZ2VzY2hlaXRlcyBkYWJlaQpyYXVza29tbWVuIHNvbGwuIFp1bWluZGVzdCBtZWluZXIgRXJmYWhydW5nIG5hY2guIDstKQoKSmltIERpR3JpegoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTVAzLVBsYXllciAoT2dvLCAyNC4gSmFuIDIwMDUsIDAzOjIxOjEzKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTExMDY1MjE4NzEgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMTA2MzE3NjU3Ck9oLCBlaW4gTWF4aW1hbGF1c2NobGFnIGF1ZiBtZWluZW0gWmVhbG90cnktRGV0ZWN0b3IuIDpQCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogQmlsZHVuZyAoR3JpbW1ib3JuLCAyNC4gSmFuIDIwMDUsIDA5OjA5OjMxKToKfiMhIHJuPUNhdHdlYXpsZSBydD0xMTA2NTUzNTMyIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTEwNjEzMDY2MgpTZWllbiB3aXIgZG9jaCBlaHJsaWNoOiBXZW5uIGRhcyB1ZWJlcndpZWdlbmRlICJ3ZWdnZWJlbiIgZGVyIEtpbmRlciBkZW4KVHlwaXNjaGVuIE9zc2kgZ2VuZXJpZXJ0LCBkYW5uIGlzdCBuYXR1ZXJsaWNoIGtlaW5lIEZyYWdlLCB3YXMgdm9yenV6aWVoZW4KaXN0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE1QMy1QbGF5ZXIgKE1vbnRhbnVzLCAyNC4gSmFuIDIwMDUsIDEwOjEyOjE2KToKfiMhIHJuPU9nbyBydD0xMTA2NTMzMjczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjMxNzY1NwpBY2ggd2FzLiBJY2ggaGFldHRlIGF1Y2ggUlRGTSBzYWdlbiBrb2VubmVuLCBkYXMgbXVlc3N0ZW4gV2luZG93cy1LaWRzIGphCmVpZ2VudGxpY2ggZ2V3b2VobnQgc2VpbiB6dSBob2VyZW4uCkljaCBoYWIgZGFnZWdlbiBzb2dhciBkZW4gRXJrbGFlcmJhZXIgZGVyIFdvY2hlIHJpc2tpZXJ0LC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVyc3RlciBNRy1Qcm9ncmFtbWllci1CcnVuY2ggaW4gRXNzZW4gYW0gNi4yLiAoR2xvaW5zb24sIDI0LiBKYW4gMjAwNSwgMTE6MDI6MzApOgp+IyEgcm49U2hha2VkYmVlciBydD0xMTA2NDk4ODc5IHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTExMDY0OTg4NzkKV2FhYWFzPyBOaWNodCBtZWhyIGluIFdlcm5lPyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRXJzdGVyIE1HLVByb2dyYW1taWVyLUJydW5jaCBpbiBFc3NlbiBhbSA2LjIuIChQaXRmYWxsLCAyNC4gSmFuIDIwMDUsIDExOjAyOjU4KToKfiMhIHJuPUdsb2luc29uIHJ0PTExMDY1NjA5NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2NDk4ODc5CktlaW5lIEtvZW5pZ3NzY2hhbGVuIG1laHI/ICpzbmlmZioKClBpdCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVyc3RlciBNRy1Qcm9ncmFtbWllci1CcnVuY2ggaW4gRXNzZW4gYW0gNi4yLiAoR2xvaW5zb24sIDI0LiBKYW4gMjAwNSwgMTE6MDM6MzApOgp+IyEgcm49UGl0ZmFsbCBydD0xMTA2NTYwOTc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjQ5ODg3OQpLZWluLCAiU2VydnVzISIgdW5kIGtlaW5lIEh1bW5pc2NobmFyY2hhdHRhY2tlLiAqamFtbWVyKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBCaWxkdW5nIChEZWVwYmx1ZSwgMjQuIEphbiAyMDA1LCAxMToyNTo1OSk6Cn4jISBvbj1EZWVwYmx1ZSBvdD0xMTA2NTYyMTkyIG9nPWFsbGdlbWVpbmVzCn4jISBybj1Nb250YW51cyBydD0xMTA2NTYxMzIwIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTEwNjEzMDY2MgppbiBTYWNoc2VuIHNpbmQgZGllIHdpZWRlciBpbSBQYXJsYW1lbnQgdW5kIGJlc3RyZWl0ZW4gYmVoYXJybGljaCwgZGFzcyBzaWUgZXMKc2luZCwgZGllIGRlbiBOUEQtSWRpb3RlbiBpaHJlIFN0aW1tZSBnZWJlbiA6LT4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBCaWxkdW5nIChHcmltbWJvcm4sIDI0LiBKYW4gMjAwNSwgMTM6MDI6MzYpOgp+IyEgb249R3JpbW1ib3JuIG90PTExMDY1NjgxNTAgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPURhcmtsb3IgcnQ9MTEwNjU2ODA5NCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMDYxMzA2NjIKTmEsIHZvbiBkZW4gZ2FuemVuIExldXRlbiwgZGllIGFscyBLaW5kZXIgaW4gS3JpcHBlbiBhYmdlc2Nob2JlbiB3dXJkZW4sCm5hdHVlcmxpY2guCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBCaWxkdW5nIChHbG9pbnNvbiwgMjQuIEphbiAyMDA1LCAxMzowMzowNik6Cn4jISBybj1EYXJrbG9yIHJ0PTExMDY1NjgwOTQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTA2MTMwNjYyCktsYXIgaXN0IGRpZSBXaXJ0c2NoYWZ0IGFtIEJvZGVuLiBEYXMgbWl0IGRlbSBDYXJnb2xpZnRlciBoYXQgamEgbmljaHQKZ2VrbGFwcHQsIHNvbnN0IGhhZXR0ZSBlcyBpbiBOZXVuZnVlbmZsYW5kIGF1Y2ggZWluIHBhYXIgZWlnZW5lIEZsdWdnZXJhZXRlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBCaWxkdW5nIChNYWhhcmV0LCAyNC4gSmFuIDIwMDUsIDEzOjA0OjEyKToKfiMhIHJuPUdsb2luc29uIHJ0PTExMDY1NjgxODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2MTMwNjYyCkRhZnVlciBnaWJ0IGVzIGRhIGpldHp0IGR1ZXN0ZXJlIFRyb3Blbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBCaWxkdW5nIChHbG9pbnNvbiwgMjQuIEphbiAyMDA1LCAxMzowNzoxNCk6Cn4jISBybj1NYWhhcmV0IHJ0PTExMDY1NjgyNTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2MTMwNjYyCkRpZSBzaW5kIGFiZXIgYXVjaCBhbSBCb2RlbiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBCaWxkdW5nIChEYXJrbG9yLCAyNC4gSmFuIDIwMDUsIDEzOjA3OjM0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTA2NTY4MTU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjEzMDY2MgpEYXMgZWhlciBuaWNoIC0gc2NobGllc3NsaWNoIHNvbGwgamEgc2Nob24gZG9ydCBkZW4gS2xlaW5lbiBkaWUgc296aWFsaXN0aXNjaGUKUHJvcGFnYW5kYSBlaW5nZXRyaWNodGVydCB3b3JkZW4gc2Vpbi4uLiAgCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogQmlsZHVuZyAoRGFya2xvciwgMjQuIEphbiAyMDA1LCAxMzowODo1OCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTA2NTY4NDM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjEzMDY2MgpBYmVyIGRpZSBoYWJlbiB3ZW5pZ3N0ZW4gbm9jaCBkaWUgQ2hhbmNlIHp1IHdhY2hzZW4gLSB1bmQgc3BhZXRlc3RlbnMgbmFjaCBkZXIKS2xpbWFrYXRhc3Ryb3BoZSBsaWVnZW4gZGllIHZvbGwgaW0gdHJlbmQuCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogQmlsZHVuZyAoR3JpbW1ib3JuLCAyNC4gSmFuIDIwMDUsIDEzOjEyOjEwKToKfiMhIHJuPURhcmtsb3IgcnQ9MTEwNjU2ODQ1NCByZz1zY2htYXJybgp+IyEgdGlkPTExMDYxMzA2NjIKU2ljaGVyLCBhYmVyIGRhbm4ga2FtIGRpZSBXZW5kZSwgZGllIERldXRzY2hlbiB3dXJkZW4gZWluZSBfTmF0aW9uXy4gVW5kIGRhbm4KaGFiZW4gZGllIGFybWVuIE9zc2lzLCBkaWUgamEgc2Nob24gaW4gZGVyIEtyaXBwZSBzbyBiZWRhdWVybnN3ZXJ0ZXJ3ZWlzZSBhdWYKc2ljaCBhbGxlaW5lIGdlc3RlbGx0IHdhcmVuLCBkYSB3YXMgbWl0ICJzb3ppYWxpc3Rpc2NoIiB1bmQgIm5hdGlvbmFsIgpkdXJjaGVpbmFuZGVyZ2VicmFjaHQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBCaWxkdW5nIChHbG9pbnNvbiwgMjQuIEphbiAyMDA1LCAxMzoyODozNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEwNjU2ODczMCByZz1zY2htYXJybgp+IyEgdGlkPTExMDYxMzA2NjIKSWNoIGthbm4gbWljaCBlcmlubmVybiBkb3J0IGVpbmVuIFBhbnplciBnZW1hbHQgenUgaGFiZW4uIEFsc28gZWhlcgptaWxpdGFyaXN0aXNjaGUgVm9yYmlsZHVuZy4gRGFzIGlzdCBkYW5uIGhvY2hrb21wYXRpYmVsLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM1OiBCaWxkdW5nIChQaXRmYWxsLCAyNC4gSmFuIDIwMDUsIDE0OjExOjA1KToKfiMhIHJuPUdub21lIHJ0PTExMDY1NzIyMjEgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTA2MTMwNjYyCldpciB3b2xsZW4gRGljaCBoYWx0IGFsbGUgZmFsc2NoIHZlcnN0ZWhlbiBHbm9tZS4KTmEgb2ssIGVpZ2VudGxpY2ggZ2ViZW4gd2lyIHVucyBNdWVoZSwgRGljaCB6dQp2ZXJzdGVoZW4sIHdpciBzY2hhZmZlbiBkYXMgbnVyIG5pY2h0IGltbWVyLgoKClBpdCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAuLi4uIE11YWRpYiAuLi4gKENhdHdlYXpsZSwgMjQuIEphbiAyMDA1LCAxNDoxOTowNSk6Cn4jISBybj1ab29rIHJ0PTExMDY1NzIyNjYgcmc9cHJhbmdlcgp+IyEgdGlkPTExMDY1NzIyNjYKV2FydW0/CgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM3OiBCaWxkdW5nIChEZWVwYmx1ZSwgMjQuIEphbiAyMDA1LCAxNjozNzozMSk6Cn4jISBybj1PZ28gcnQ9MTEwNjU4MDg1NyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMDYxMzA2NjIKRGVtb2tyYXRpZSA9IERpa3RhdHVyIGRlcyBQbGVwcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM4OiBCaWxkdW5nIChBbGtvaG9sLCAyNC4gSmFuIDIwMDUsIDE2OjM4OjA1KToKfiMhIHJuPURlZXBibHVlIHJ0PTExMDY1ODEwNTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2MTMwNjYyCjYsIHNldHplbgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM5OiBCaWxkdW5nIChEZWVwYmx1ZSwgMjQuIEphbiAyMDA1LCAxNjozODozMSk6Cn4jISBybj1BbGtvaG9sIHJ0PTExMDY1ODEwODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2MTMwNjYyCkR1IG1laW5zdCwgZGFzIHN0ZWh0IGluIGRlciBmYWxzY2hlbiBSdWJyaWs/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MDogQmlsZHVuZyAoR2xvaW5zb24sIDI0LiBKYW4gMjAwNSwgMTY6Mzk6MjUpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTEwNjU4MTExMSByZz1zY2htYXJybgp+IyEgdGlkPTExMDYxMzA2NjIKTmVpbiwgZHUgaGFzdCBQbGVicyBmYWxzY2ggZ2VzY2hyaWViZW4uCgpCZWtvbW0gaWNoIGpldHp0ICduZW4gRXJrbGFlcmJhZXJlbj8gU2luZCB3aXIgYmFsZCBkYT8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40MTogQmlsZHVuZyAoQWxrb2hvbCwgMjQuIEphbiAyMDA1LCAxNjozOTo1Nyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTA2NTgxMTY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjEzMDY2MgppY2ggd2lsbCBhdWNoIGluIGRlbiBQcmFuZ2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgYmVzdGVuIFdlZ21lbGR1bmdlbiAuLi4gKExpYXJhLCAyNC4gSmFuIDIwMDUsIDIyOjAwOjA5KToKTWFoYXJldCBpc3QgYWxzIGFid2VzZW5kIGdla2VubnplaWNobmV0LgpHcnVuZDogYWxsb2RveGFwaG9iCgouLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWUgYmVzdGVuIFdlZ21lbGR1bmdlbiAuLi4gKEdsb2luc29uLCAyNC4gSmFuIDIwMDUsIDIyOjMwOjAwKToKfiMhIHJuPUxpYXJhIHJ0PTExMDY2MDA0MDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2NjAwNDA5CkhtLiBJY2ggbXVzc3RlIGVyc3QgbmFjaHNjaGF1ZW4uIEludGVyZXNzYW50ZSBQaG9iaWUuIERhc3Mgc2llIGVzIHVlYmVyaGF1cHQKaW4gTUcgYXVzaGFlbHQgaXN0IGVpbiBXdW5kZXIgOykKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWUgYmVzdGVuIFdlZ21lbGR1bmdlbiAuLi4gKFNoYWtlZGJlZXIsIDI0LiBKYW4gMjAwNSwgMjM6MDQ6MTQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNjYwMjIwMCByZz1zY2htYXJybgp+IyEgdGlkPTExMDY2MDA0MDkKV293LiBJaHIgaGFiZSBGYWNod29lcnRlciBkcmF1Zi4gKE51ciBtZWluZSBNZWludW5nIC0gU29ycnkgTWFoYXJldCkuIEhhYgpnZXJhZGUgZ2VzZWhlbiwgZGFzcyBlcyBlaW5lIFNwZWN0cm9waG9iaWUgZ2lidC4gSG9mZmVudGxpY2ggc3ByaWNodCBzaWNoIGRhcwpuaWNodCBpbiBkZXIgRmlybWEgcnVtLi4uIDpvKQoKU2hha3kgLSBhbnVwdGFwaG9iCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEaWUgYmVzdGVuIFdlZ21lbGR1bmdlbiAuLi4gKEFuYXRvbCwgMjQuIEphbiAyMDA1LCAyMzowOToyMSk6Cn4jISBybj1TaGFrZWRiZWVyIHJ0PTExMDY2MDQyNTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2NjAwNDA5CipwcnVzdCoKClBhcmFza2F2ZWRla2F0cmlhcGhvYmllLi4uLiA6KQoKRWluZSB3YWhyZSBGdW5kZ3J1YmUsIGRpZXNlIFNlaXRlLi4uIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGllIGJlc3RlbiBXZWdtZWxkdW5nZW4gLi4uIChTaGFrZWRiZWVyLCAyNC4gSmFuIDIwMDUsIDIzOjEwOjIxKToKfiMhIHJuPUFuYXRvbCBydD0xMTA2NjA0NTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjYwMDQwOQpIaXBwb3BvdG9tb25zdHJvc2VzcXVpcHBlZGFsaW9waG9iaWEgCgpMT0wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERpZSBiZXN0ZW4gV2VnbWVsZHVuZ2VuIC4uLiAoQW5hdG9sLCAyNC4gSmFuIDIwMDUsIDIzOjExOjMzKToKfiMhIHJuPVNoYWtlZGJlZXIgcnQ9MTEwNjYwNDYyMSByZz1zY2htYXJybgp+IyEgdGlkPTExMDY2MDA0MDkKRGllIGlzdCBkb2NoIGdlZmFlbHNjaHQsIGVpbiBlbmdsaXNjaGVyIEJlZ3JpZmYgYXVmIG5lciBTZWl0ZSwgZGllCnNvbnN0IG51ciBkZXV0c2NobmFtaWdlLi4uICJTdGFzaWJhc2lwaG9iaWUiLiBBbHNvIGZ1ZXIgbWljaCBrbGxpbmd0CmRhcyB3aWUgIkFuZ3N0IHZvciBTdGFhdHNzaWNoZXJoZWl0c2tsdWVuZ2VsZWllbiIuIDspCgpBbmF0b2wga2FubnMgbmljaHQgZ2xhdWJlbiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IERpZSBiZXN0ZW4gV2VnbWVsZHVuZ2VuIC4uLiAoS2Vzc2EsIDI0LiBKYW4gMjAwNSwgMjM6MTU6MDEpOgp+IyEgcm49QW5hdG9sIHJ0PTExMDY2MDQ2OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2NjAwNDA5Ck1pciBnZWZhZWxsdCBIZWxsZW5vbG9nb3Bob2JpZSAgQW5nc3Qgdm9yIGdyaWVjaGlzY2hlbiAoRmFjaClhdXNkcnVlY2tlbi4gV2VubgptYW4gc2ljaCBkYXMgc2FnZW4gbGFzc2VuIG11c3MuLi4gbXVzcyBlaW5lIG5pZWRlcnNjaG1ldHRlcm5kZSBEaWFnbm9zZSBzZWluLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaW5tYWwgQnVyZ2VyIGZ1ZXIgMTAgTGV1dGUsIGJpdHRlIChEZWVwYmx1ZSwgMjUuIEphbiAyMDA1LCAxMzozODowMCk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTExMDY2NTYzMjIgcmc9d3d3Cn4jISB0aWQ9MTEwNjY1NjMyMgpJbiBUZXhhcyB2ZXJrYXVmZW4gZGllIHNvd2FzIGFscyBTdXBlclNpemUgYW4gX2VpbmVfIFBlcnNvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTY6IEJpbGR1bmcgKFpvb2ssIDI1LiBKYW4gMjAwNSwgMTY6Mjk6MTgpOgp+IyEgcm49QmFtYnVsa28gcnQ9MTEwNjY2NjkyMiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMDYxMzA2NjIKRnJldWRzY2hlciBWZXJsZXNlciwgaWNoIGxhcyB6dW0gU2NobHVzcyAiLi4uIEJpb2VodGlrIG9kZXIgR2RBPyIgCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTc6IEJpbGR1bmcgKEdsb2luc29uLCAyNS4gSmFuIDIwMDUsIDE2OjMxOjEwKToKfiMhIHJuPVpvb2sgcnQ9MTEwNjY2Njk1OCByZz1zY2htYXJybgp+IyEgdGlkPTExMDYxMzA2NjIKRWluIERyZWhlciB1bmQgQnVjaHN0YWJlbnZlcnRhdXNjaHVuZz8gQmlzdCBkdSBMZWdhc3RoZW5pa2VyPyBTY2huZWxsIGVpbmVuClN1YnRocmVhZCB6dSBMZWdhc3RoZW5pZSBhdWZtYWNoZW4hCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIGJlc3RlbiBXZWdtZWxkdW5nZW4gLi4uIChMaWFyYSwgMjUuIEphbiAyMDA1LCAxOTo1MTozNCk6CkFsa29ob2wgaXN0IGFscyBhYndlc2VuZCBnZWtlbm56ZWljaG5ldC4KR3J1bmQ6IHNlaW4gdGVpbCBiZWZpbmdlcm4gdW5kIHNvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllIGJlc3RlbiBXZWdtZWxkdW5nZW4gLi4uIChNZWRpYywgMjUuIEphbiAyMDA1LCAyMjoxNTowMCk6Cn4jISBybj1MaWFyYSBydD0xMTA2Njc5MDk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjY3OTA5NApCZWkgQWxrb2hvbCBpc3QgZGFtaXQgYmVzdGltbXQgdmkgZ2VtZWludCA7KQoqendpbmtlcioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGllIGJlc3RlbiBXZWdtZWxkdW5nZW4gLi4uIChBbGtvaG9sLCAyNS4gSmFuIDIwMDUsIDIyOjE1OjE2KToKfiMhIHJuPU1lZGljIHJ0PTExMDY2ODc3MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2Njc5MDk0Cm5laW4gOykKCkFsa2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBiZXN0ZW4gV2VnbWVsZHVuZ2VuIC4uLiAoTGlhcmEsIDI1LiBKYW4gMjAwNSwgMjM6Mjk6MDApOgpOb2VsIGlzdCBhbHMgYWJ3ZXNlbmQgZ2VrZW5uemVpY2huZXQuCkdydW5kOiBhcmJlaXRlbiBvZGVyIHNjaGxhZmVuIC4uLiBzaGl0LCB3YXJ1bSBsYWVzc3Qgc2ljaCBkYXMgc28gc2NobGVjaHQKa29tYmluaWVyZW4/IDooCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGllIE1BQ0hUIChQaXRmYWxsLCAyNi4gSmFuIDIwMDUsIDE0OjE1OjQ3KToKVm9uIEZyZXVuZGluIEFrYXNoYTogaWNoIHdpbGwgbmUga2lwcGUgKmphbW1lcioKQW4gRnJldW5kZTogbmVpbiBha2FzaGEgd2lsbHN0IGR1IG5pY2h0IDo+ClZvbiBGcmV1bmRpbiBBa2FzaGE6IHdpbGwgaWNoIGRvY2gKUGl0ZmFsbCB3ZWRlbHQgbWl0IGRlciBIYW5kIHZvciBBa2FzaGEgaGVydW0gYXVzIGRlciBGZXJuZS4KRGVpbmUgRnJldW5kaW4gQWthc2hhIHNjaG51cHBlcnQgYXVzIGRlciBGZXJuZSBhbiBQaXRmYWxscyBIYW5kLgpEdSBzcHVlcnN0IGVpbmVuIFN0cm9tIGRlciBNYWNodCBhdXMgZGVtIHJhYmVuc2Nod2FyemVuIFJpbmcgaW4gRGVpbmUgSGFuZApmbGllc3Nlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEdlLW5pZS10aWVmLUZlaGxlciAoT2dvLCAyNi4gSmFuIDIwMDUsIDE1OjU1OjE1KToKfiMhIG9uPU9nbyBvdD0xMTA2NzUxMzA3IG9nPW1hZ2llci5lbnR3aWNrbHVuZwp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMDY3MjcwMjQgcmc9bWFnaWVyLmVudHdpY2tsdW5nCn4jISB0aWQ9MTEwNjY4NTMxMQo6cmV6aXRpZXJ0OiBjb3JudSwgY29ybnVzLCBjb3JudSwgY29ybnUsIGNvcm51CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gR2x1ZWNrIChNZXNpcmlpLCAyNy4gSmFuIDIwMDUsIDAxOjEwOjEzKToKQW1zdGVyZGFtIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkR1IGF0bWVzdCBlcmxlaWNodGVydCBhdWYsIGZyb2gsIGRhc3MgZGVyIFNwdWsgZW5kbGljaCB2b3JiZWkgaXN0LgoKTWVzaSwgaW1tZXIgbm9jaCBhdXNzZXIgQXRlbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzY6IEJpbGR1bmcgKEdsb2luc29uLCAyNy4gSmFuIDIwMDUsIDEzOjE4OjMxKToKfiMhIHJuPU1haGFyZXQgcnQ9MTEwNjgyODIyMyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTEwNjEzMDY2Mgo+IFNjaGVtYSBGCgpEZXIgZ29sZGVuZSBXZWcgaXN0LCBkaWUgS2luZGVyIGZydWVoIG11ZGRlbiB6dSBzY2hpY2tlbi4gRGFubiBzdG9lcmVuIHNpZQpiYWxkIG5jaWh0IG1laHIgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43NzogQmlsZHVuZyAoTWFoYXJldCwgMjcuIEphbiAyMDA1LCAxMzoxOTozOSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTA2ODI4MzExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjEzMDY2MgpHZW5hdSwgdW5kIGR1IGthbm5zdCBlcnppZWhlbiBoZWxmZW4uIEh1cnJhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzg6IEJpbGR1bmcgKEdsb2luc29uLCAyNy4gSmFuIDIwMDUsIDEzOjIwOjAzKToKfiMhIHJuPU1haGFyZXQgcnQ9MTEwNjgyODM3OSByZz1zY2htYXJybgp+IyEgdGlkPTExMDYxMzA2NjIKQXJnaC4gTmVpbiwgaWNoIHNwb25zb3JlIGtlaW5lIE5ldW1hZ2llciwgZGFmdWVyIGlzdCBIdW1uaSBkYS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OTogQmlsZHVuZyAoWm9vaywgMjcuIEphbiAyMDA1LCAxMzoyMjowMSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTA2ODI4NDAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjEzMDY2Mgpab29rIGhhdCBhdWNoIG1hbCB3aWVkZXIgZWluZXMgaW4gZGllIFdlbHQgZ2VzZXR6dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjczOiBCaWxkdW5nIChab29rLCAyNy4gSmFuIDIwMDUsIDEzOjMwOjE0KToKfiMhIHJuPVd1cnplbCBydD0xMTA2ODI4ODM3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTA2MTMwNjYyClNlbmQgUElDQ1MhISEhITExISEhISEhCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzQ6IEJpbGR1bmcgKERlZXBibHVlLCAyNy4gSmFuIDIwMDUsIDEzOjMzOjMwKToKfiMhIHJuPVpvb2sgcnQ9MTEwNjgyOTAxNCByZz1zY2htYXJybgp+IyEgdGlkPTExMDYxMzA2NjIKPCggLCAgICwgKT4KICggKC4gLikgKQogICAgIC0KPCggLCAgICwgKT4KICggKC4gLikgKQogICAgIC0KPCggLCAgICwgKT4KICggKC4gLikgKQogICAgIC0KClNpbmQgZGllIDMgZ2VudWc/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJ3dW5kZXJ0IGRhcz8gKFpvb2ssIDI3LiBKYW4gMjAwNSwgMTg6MjM6NDIpOgpbVG9kOkxhcnNdIFp1dmllbCBTb25uZSBoYXQgZ2VyYWRlIE51aXQgdW1nZWJyYWNodC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3NvLi4uIChab29rLCAyNy4gSmFuIDIwMDUsIDE5OjU3OjAxKToKPiBmaW5nZXIgdmFuaW9uClZvbGxlciBOYW1lOiBbRG9uJ3QgcGFuaWMhXSBWYW5pb24gaXN0IGFlbHRlciBhbHMgSnVuZ2dvdHQgWm9vawoKCkljaCBrYW5uIG51ciBzYWdlbjogRGFzIHN0aW1tdCEKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU29zby4uLiAoVmFuaW9uLCAyNy4gSmFuIDIwMDUsIDE5OjU4OjIzKToKfiMhIHJuPVpvb2sgcnQ9MTEwNjg1MjIyMSByZz1zY2htYXJybgp+IyEgdGlkPTExMDY4NTIyMjEKV2FzIFpvb2sgd29obCB2ZXJnZXNzZW4gaGF0IGlzdDogClpvb2sgc2FndDogaWlpaWlpaWlpaWlpaWggZHUgYmlzdCBhZWx0ZXIuLgpab29rIHNhZ3Q6IHVuZCBpY2ggZGFjaHRlIHNlaXQgamUgaGVyLCBkdSBzZWlzdCBqdWVuZ2VyIGFscyBpY2guClpvb2sgc2FndDogZGEga29tbSBpY2ggbmljaHQgZHJ1ZWJlciB3ZWcuClpvb2sgc2FndDogZGFubiB3ZXJkIGljaCBhbHNvIG1hbCBzbyB3aWUgZHU/IDspKwpab29rIHNhZ3Q6IFZvbGxlciBFbnR3aWNrbHVuZz8KWm9vayBzYWd0OiBVbmQgaWNoIGRhY2h0ZSwgaWNoIGtvZW5udGUgbWljaCBudW4gaW4gQWx0ZXJzdGFycnNpbm4gZWlucmljaHRlbi4KWm9vayBqYW1tZXJ0IGVpbiB3ZW5pZy4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNvc28uLi4gKFpvb2ssIDI3LiBKYW4gMjAwNSwgMjA6MDU6NDQpOgp+IyEgcm49VmFuaW9uIHJ0PTExMDY4NTIzMDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2ODUyMjIxCkthdW0gbmljaHQgbWVociBFcnptYWdpZXIsIHNjaG9uIG5pbW10IGVyIHNjaGxlY2h0ZSBNYW5pZXJlbiBhbi4uLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNvc28uLi4gKE11cGZlbCwgMjcuIEphbiAyMDA1LCAyMDo1MjoxMSk6Cn4jISBybj1ab29rIHJ0PTExMDY4NTI3NDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2ODUyMjIxClZpZWwgc2NobGltbWVyISBNYW4gZmluZGV0IGlobiBlaW5mYWNoIHZpZWwgc2NobGVjaHRlciBiZWltICJrd2VyIi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTb3NvLi4uIChDaGFnYWxsLCAyNy4gSmFuIDIwMDUsIDIwOjUyOjM1KToKfiMhIHJuPU11cGZlbCBydD0xMTA2ODU1NTMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjg1MjIyMQp3aWUgd2FlcnMgbWl0IGt3ZXIgYmVpIHZhbmlvbi4gRGFubiBmaW5kZXN0ZSBpaG4gYXVmIGplZGVuIEZhbGwgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFNvc28uLi4gKE11cGZlbCwgMjcuIEphbiAyMDA1LCAyMDo1ODoyMSk6Cn4jISBybj1DaGFnYWxsIHJ0PTExMDY4NTU1NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2ODUyMjIxCkthbW1hbiBuaWNodCBlaW5mYWNoIGRpZSB3ZXJsaXN0ZSBzbyAiZnJpc2llcmVuIiwgZGFzcyBWYW5pb24gZGEgYW4gZ2V3b2hudGVyClN0ZWxsZSBhdWZ0YXVjaHQ/IFZpZWxsZWljaHQgbWl0IGtsZWluZW0gImUiIGZ1ZXIgIkV4LUVyem1hZ2llciIgOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTb3NvLi4uIChHbG9pbnNvbiwgMjcuIEphbiAyMDA1LCAyMTowMDowMyk6Cn4jISBybj1NdXBmZWwgcnQ9MTEwNjg1NTkwMSByZz1zY2htYXJybgp+IyEgdGlkPTExMDY4NTIyMjEKTGVpZGVyIGhhdCBpcmdlbmQgZWluIEVNIFNoYWRvd3MgZnVlciBkaWUgTGlzdGUgdmVyYm90ZW4gOykKClZlcnN1Y2ggZG9jaCAia3dlciBhbHRlIHNhZWNrZSIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTb3NvLi4uIChDaGFnYWxsLCAyNy4gSmFuIDIwMDUsIDIxOjAwOjM5KToKfiMhIHJuPUdsb2luc29uIHJ0PTExMDY4NTYwMDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2ODUyMjIxCmt3ZXIgYWx0ZSBzYWVja2UgYnVndCBpcmdlbmR3aWUgOigKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFNvc28uLi4gKExpYXJhLCAyNy4gSmFuIDIwMDUsIDIxOjAzOjE1KToKfiMhIHJuPUNoYWdhbGwgcnQ9MTEwNjg1NjAzOSByZz1zY2htYXJybgp+IyEgdGlkPTExMDY4NTIyMjEKSG0sIGljaCBtYWcgamEga3dlciB3ZWcuIFNlaWRlbSBpY2ggd2Vpc3MsIGRhc3MgZGFzIGZ1bmt0aW9uaWVydCwgaGFiZSBpY2gKaW1tZXIgc2VociB2aWVsIFNwYXNzLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU29zby4uLiAoUm9uZGEsIDI3LiBKYW4gMjAwNSwgMjM6MTU6MzkpOgp+IyEgcm49TGlhcmEgcnQ9MTEwNjg1NjE5NSByZz1zY2htYXJybgp+IyEgdGlkPTExMDY4NTIyMjEKV29iZWkgZG9jaCB2ZXJtdXRsaWNoIGVpbiAia3dlciB3ZWcgd2FydW0iIHZpZWwgaW50ZXJlc3NhbnRlciB3YWVyZSAtIGVpbmUKQXVmbGlzdHVuZyBhbGxlciB3ZWctTWVsZHVuZ2VuLCB3YXMgc29uc3QuLi4KClJvbmRhICpuZXVnaWVyaWcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIC4uLiAoTGlhcmEsIDI4LiBKYW4gMjAwNSwgMDA6NTE6NTEpOgpbQmVpbGVpZDpBcmtdIFp3ZXJnZW5kdWZ0IGRpZSBOYXMnIGVycXVpY2t0LCBkZXJ3ZWlsIGRlciBFbGYgbnVyIEJhZXVtZSAuLi4KW0JlaWxlaWQ6QXJrXSBzdHJlaWNoZWx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODY6IEJpbGR1bmcgKFpvb2ssIDI4LiBKYW4gMjAwNSwgMTA6MTI6NTIpOgp+IyEgcm49QW5hdG9sIHJ0PTExMDY4NjU2Mzcgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExMDYxMzA2NjIKUHVoLiBOb2NoIG5pY2h0IGdhbnogd2FjaC4gSWNoIGxhcyAiRGVpbmUgTXV0dGVyIGJhY2t0IGRyZWllY2tpZ2UgClBsYWV0emNoZW4iIHVuZCBoYWIgbmljaHQgdmVyc3RhbmRlbiwgd2FzIGRhcmFuIHNjaGxpbW0gc2VpbiBzb2xsdGUuLi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44NzogQmlsZHVuZyAoS2Vzc2EsIDI4LiBKYW4gMjAwNSwgMTA6MTM6NDgpOgp+IyEgcm49Wm9vayBydD0xMTA2OTAzNTcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjEzMDY2MgpJY2ggdmVyc3RhbmQgZXMgYWxzIGV0d2FzIGluIGRlciBBcnQgdm9uOiAnRHUga2FlbXBmc3Qgd2llIGVpbiBkdW1tZXIgQmF1ZXIuJwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg4OiBCaWxkdW5nIChab29rLCAyOC4gSmFuIDIwMDUsIDEwOjE5OjMwKToKfiMhIHJuPUtlc3NhIHJ0PTExMDY5MDM2Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2MTMwNjYyCm1pdCBkcmVpZWNraWdlbiBwbGFldHpjaGVuPyA7KQoKem9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWVuZGVydW5nZW4gaW4gZGVyIEF1c2JpbGR1bmcgKEFtYXJ5bGxpcywgMjguIEphbiAyMDA1LCAxNTo1Nzo0Mik6Cn4jISBybj1NYWhhcmV0IHJ0PTExMDY5MjM3Mjggcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTEwNjkxNjc3NApTY2hsZWltZXIuCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWVuZGVydW5nZW4gaW4gZGVyIEF1c2JpbGR1bmcgKE9nbywgMjguIEphbiAyMDA1LCAxODowMTo0MSk6Cn4jISBvbj1PZ28gb3Q9MTEwNjkzMTY4NSBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPU1hYXJnIHJ0PTExMDY5MTY3NzQgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTEwNjkxNjc3NApEZWluIFRlcm1wY2FwIGJ1Z2d0LCBub3JtYWxlcndlaXNlIGlzdCBDVFJMLUQgRW5kLW9mLUZpbGUuIENUUkwtVyBoYWV0dGUgZXMKYmVpIGRpciB0dW4gc29sbGVuLgoqYmxhc3VlbHoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFlbmRlcnVuZ2VuIGluIGRlciBBdXNiaWxkdW5nIChHcmltbWJvcm4sIDI4LiBKYW4gMjAwNSwgMTg6MTk6MzMpOgp+IyEgcm49T2dvIHJ0PTExMDY5MzE3MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2OTE2Nzc0CkJpc3QgRHUgc2ljaGVyLCBkYXNzIGRhIG5pY2h0IHdhcyBiZWkgRGlyIGJ1Z2d0PyBCZWkgbWlyIGlzdCBkYXMgZWlnZW50bGljaAppbW1lciBjdHJsLUgsIGN0cmwtVyBsb2VzY2h0IGRhcyBXb3J0LCB1bmQgY3RybC1ZIGRpZSBaZWlsZS4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNXUjMgLSBLb21tZW50YXIgenUgZGVuIEVyZWlnbmlzc2VuIGRlciBXb2NoZSAoTGlhcmEsIDI4LiBKYW4gMjAwNSwgMTk6MDQ6MjIpOgpadSBkZXIgQWV1c3NlcnVuZyBkZXMgYmF5ZXJpc2NoZW4gV2lzc2Vuc2NoYWZ0c21pbmlzdGVycywgZnVlciBTdHVkZW50ZW4gd2FlcmUKZGllIFN0dWRpZW5nZWJ1ZWhyIGtlaW4gUHJvYmxlbSwgZGEgc2llIGphIGltIE1vbmF0IG51ciBhdWYgMTAwIEV1cm8KdmVyemljaHRlbiBvZGVyIDIgTmFjaGhpbGZlc3R1bmRlbiBnZWJlbiBtdWVzc3RlbjoKCkRhcyBiZXdlaXN0IG5pY2h0IG51ciwgZGFzcyBkZXIgTWFubiBncmF0aXMgc3R1ZGllcnQgaGF0LCBzb25kZXJuIGF1Y2ggdm9lbGxpZwp1bXNvbnN0LgoKPjotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNXUjMgLSBLb21tZW50YXIgenUgZGVuIEVyZWlnbmlzc2VuIGRlciBXb2NoZSAoT2dvLCAyOC4gSmFuIDIwMDUsIDE5OjA4OjQ1KToKfiMhIHJuPUxpYXJhIHJ0PTExMDY5MzU0NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2OTM1NDYyCkJpbiBpY2ggZGVyIGVpbnppZ2UsIGRlciBkYXMgaW4gIjIgTmFjaGhpbGZlc3R1bmRlbiBwcm8gV29jaGUiIGludGVycG9saWVyZW4Ka2Fubj8gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNXUjMgLSBLb21tZW50YXIgenUgZGVuIEVyZWlnbmlzc2VuIGRlciBXb2NoZSAoTGlhcmEsIDI4LiBKYW4gMjAwNSwgMTk6MTA6MzMpOgp+IyEgcm49T2dvIHJ0PTExMDY5MzU3MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2OTM1NDYyCkhtLCBkdSBmYWVuZ3N0IGFuIHp1IHZlcnN0ZWhlbi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNXUjMgLSBLb21tZW50YXIgenUgZGVuIEVyZWlnbmlzc2VuIGRlciBXb2NoZSAoQmFtYmksIDI4LiBKYW4gMjAwNSwgMTk6NTM6NTkpOgp+IyEgcm49TGlhcmEgcnQ9MTEwNjkzNTgzMyByZz1zY2htYXJybgp+IyEgdGlkPTExMDY5MzU0NjIKV2VyIGJlemFobHQgZnVlciBlaW5lIE5hY2hoaWxmZXN0dW5kZSAxMi41IEV1cm8/IFdhcyBtdXNzIG1hbiBkYSBhbHMgTmFjaGhpbGZlCmdlYmVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU1dSMyAtIEtvbW1lbnRhciB6dSBkZW4gRXJlaWduaXNzZW4gZGVyIFdvY2hlIChPZ28sIDI4LiBKYW4gMjAwNSwgMTk6NTQ6NDEpOgp+IyEgcm49QmFtYmkgcnQ9MTEwNjkzODQzOSByZz1zY2htYXJybgp+IyEgdGlkPTExMDY5MzU0NjIKRnJhZyBtYWwgZWluZW4gSGlXaSBkZWluZXIgV2FobCwgd2FzIGRlciB2ZXJsYW5ndC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNXUjMgLSBLb21tZW50YXIgenUgZGVuIEVyZWlnbmlzc2VuIGRlciBXb2NoZSAoR3JpbW1ib3JuLCAyOC4gSmFuIDIwMDUsIDE5OjU1OjA3KToKfiMhIHJuPUJhbWJpIHJ0PTExMDY5Mzg0Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2OTM1NDYyCk9jaCwgaWNoIGdlYmUgRGlyIGdlcm5lIE5hY2hoaWxmZSBkYXJpbiwgd2llIG1hbiBmdWVyIDEyLjUwIEVVUi9oIE5hY2hoaWxmZQpnaWJ0LiBGdWVyIGxlZGlnbGljaCAyMCBFVVIvNDVtaW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFNXUjMgLSBLb21tZW50YXIgenUgZGVuIEVyZWlnbmlzc2VuIGRlciBXb2NoZSAoV3VyemVsLCAyOC4gSmFuIDIwMDUsIDE5OjU1OjMzKToKfiMhIHJuPU9nbyBydD0xMTA2OTM4NDgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjkzNTQ2MgppY2ggZ2ViZSB1ZWJyaWdlbnMgYXVjaCBuYWNoaGlsZmVzdHVuZGVuLiBhYiAxNTAgZXVybyBrb2VubmVuIHdpciBkYXJ1ZWJlcgpyZWRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFNXUjMgLSBLb21tZW50YXIgenUgZGVuIEVyZWlnbmlzc2VuIGRlciBXb2NoZSAoQmFtYmksIDI4LiBKYW4gMjAwNSwgMTk6NTU6NTkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMDY5Mzg1MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2OTM1NDYyClNvbGFuZ2UgZGEgbmljaHQgaGVyYXVza29tbXQsIGRhc3MgaWNoIGRhIEthbWEsIEthbXVhLCBTZXggZnVlciBKYXBhbmVyIGdlYmVuCm11c3MuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNXUjMgLSBLb21tZW50YXIgenUgZGVuIEVyZWlnbmlzc2VuIGRlciBXb2NoZSAoT2dvLCAyOC4gSmFuIDIwMDUsIDE5OjU2OjAwKToKfiMhIHJuPVd1cnplbCBydD0xMTA2OTM4NTMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjkzNTQ2MgpTQVAtQ29uc3VsdGFudD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFNXUjMgLSBLb21tZW50YXIgenUgZGVuIEVyZWlnbmlzc2VuIGRlciBXb2NoZSAoV3VyemVsLCAyOC4gSmFuIDIwMDUsIDE5OjU2OjMxKToKfiMhIHJuPU9nbyBydD0xMTA2OTM4NTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjkzNTQ2MgpkaWUgZ2lidCBlcyBzY2hvbiBndWVuc3RpZ2VyIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTV1IzIC0gS29tbWVudGFyIHp1IGRlbiBFcmVpZ25pc3NlbiBkZXIgV29jaGUgKE9nbywgMjguIEphbiAyMDA1LCAxOTo1Nzo0Nyk6Cn4jISBybj1XdXJ6ZWwgcnQ9MTEwNjkzODU5MSByZz1zY2htYXJybgp+IyEgdGlkPTExMDY5MzU0NjIKV29iZWkgd3VlcmRlc3QgZHUgZGVubiBlaW5lbSBuYWNoaGVsZmVuLCBkYXNzIGR1IG1laW5zdCwgZGFmdWVyIDE1MCBFdXJvCmJla29tbWVuIHp1IGtvZW5uZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTV1IzIC0gS29tbWVudGFyIHp1IGRlbiBFcmVpZ25pc3NlbiBkZXIgV29jaGUgKFd1cnplbCwgMjguIEphbiAyMDA1LCAyMDowMTo1Nyk6Cn4jISBybj1PZ28gcnQ9MTEwNjkzODY2NyByZz1zY2htYXJybgp+IyEgdGlkPTExMDY5MzU0NjIKYmVpIGRlbSBwcmVpcyBlaWdlbnRsaWNoIGJlaSBmYXN0IGFsbGVtLiBuaWNodCBkYXNzIGljaCB3aXJrbGljaCBhaG51bmcKaGFldHRlLAphYmVyIGRhcyBzcGllbHQgamEgYmVpIG5hY2hoaWxmZSBrZWluZSByb2xsZS4KdGF0c2FlY2hsaWNoIGdpYnQgZXMgbGV1dGUsIGRpZSBkaWVzZW4gcHJlaXMgZnVlciBtZWluZSBtYXJnaW5hbGUgbGVpc3R1bmcKYmV6YWhsZW4sIHdhcyBtaWNoIGltbWVyIHdpZWRlciBlcnN0YXVudC4gc2VsdGVuZXIgd2VyZGVuIGRpZSBkaW5nZSBnZWZyYWd0LAp2b24gZGVuZW4gaWNoIGVpbiB3ZW5pZyBhaG51bmcgaGFiZSwgYWxzbyBtYXRoZW1hdGlrIHVuZCBwaHlzaWssIHNvbmRlcm4KbWVpc3RlbnMgYndsLCB3b3ZvbiBpY2ggd2lya2xpY2ggZ2FyIG5pY2h0cyB2ZXJzdGVoZS4gZGVyIHRyaWNrIGlzdCBlaW5mYWNoLAplcyBuaWNodCBtZXJrZW4genUgbGFzc2VuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQWVuZGVydW5nZW4gaW4gZGVyIEF1c2JpbGR1bmcgKEFuYXRvbCwgMjguIEphbiAyMDA1LCAyMTo0Mzo0Nyk6Cn4jISBybj1XdXJ6ZWwgcnQ9MTEwNjk0MzgyMiByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMTA2OTE2Nzc0CgpNdWRsaWItR2VuZXJhbCAuLi4uCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwMjogQmlsZHVuZyAoTWFoYXJldCwgMjkuIEphbiAyMDA1LCAwMDo0Njo0NCk6Cn4jISBybj1NdWFkaWIgcnQ9MTEwNjk1NTg0MiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTEwNjEzMDY2MgpOYWphLCBkaWUgVXJsYXViZSBtaXQgZGlyIHNpbmQgYXVjaCAuLi4gaW50ZXJlc3NhbnQgZ2VudWcuIERhcyBlcmxhdWJlbiBkaWUKS3Jhbmtlbmthc3NlbiBkZWluZXIgTWl0dXJsYXViZXIgbmljaHQsIGRhc3MgZHUgc28gb2Z0IFVybGF1YiBtYWNoc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDM6IEJpbGR1bmcgKE11cGZlbCwgMjkuIEphbiAyMDA1LCAwMDo0ODoxOSk6Cn4jISBybj1NYWhhcmV0IHJ0PTExMDY5NTYwMDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2MTMwNjYyCkRldGFpbHMhIDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA0OiBCaWxkdW5nIChNYWhhcmV0LCAyOS4gSmFuIDIwMDUsIDAwOjQ4OjM3KToKfiMhIHJuPU11cGZlbCBydD0xMTA2OTU2MDk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjEzMDY2MgpNZWdhc2NobWFycm5sZXNlciB3aXNzZW4gbWVoci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwMzogQmlsZHVuZyAoTXVhZGliLCAyOS4gSmFuIDIwMDUsIDAwOjQ4OjQ5KToKfiMhIHJuPU1haGFyZXQgcnQ9MTEwNjk1NjAwNCByZz1zY2htYXJybgp+IyEgdGlkPTExMDYxMzA2NjIKaGUsIG1laW5lIGdlc2VsbHNjaGFmdCBpc3QgbmljaHQgZ2VzdW5kaGVpdHNnZWZhZWhyZGVuZCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXb1cgRmluYWwgQmV0YSBTdHJlc3N0ZXN0IChHbG9pbnNvbiwgMjkuIEphbiAyMDA1LCAwMToxOTozMik6Cn4jISBybj1EYXJrbG9yIHJ0PTExMDY5NTc5MDQgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTEwNjkzNDYyMApXaWUgb2Z0IHdpbGxzdCBkdSBkZW4gQ2xpZW50IGRlbm4gcHJvIFRhZyBydW50ZXJsYWRlbj8KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU1dSMyAtIEtvbW1lbnRhciB6dSBkZW4gRXJlaWduaXNzZW4gZGVyIFdvY2hlIChWZWN0b3IsIDI5LiBKYW4gMjAwNSwgMTY6NDA6NTIpOgp+IyEgcm49QmFtYmkgcnQ9MTEwNjkzODQzOSByZz1zY2htYXJybgp+IyEgdGlkPTExMDY5MzU0NjIKaG0gaWNoIG5lbSBmdWVyIG5lIHN0dW5kZSBtYXRoZW5hY2hoaWxmZSAxNSBldXJvLgpzdHVuZGUgaW0gc2lubmUgdm9uIDYwIG1pbnV0ZW4gbmljaHQgNDUuCnZvciBrbGF1c3VyZW4gZGFubiBhdWNoIG1hbCBiaXNzbCBsYWVuZ2VyIG9obmUgYXVmcHJlaXMuCmtvbW10IG1pciBhYmVyIGF1Y2ggbmljaHQgc29vb29vIHVlYmVybWFlc3NpZyB6dXZpZWwKdm9yOyBkaWUgZXJzdGUgInNpdHp1bmciIGdpYnRzIGdyYXRpcywgZGFtaXQgaWNoIHNlaGUKd28gZGllIHByb2JsZW1lIHNpbmQsIHVuZCBkaWUga2lkZGllcyBtZXJrZW4gb2Igc2llIG1pdAptZWluZXIgYXJ0IHp1IGVya2xhZXJlbiB6dXJlY2h0IGtvbW1lbiBvZGVyIG5pY2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTV1IzIC0gS29tbWVudGFyIHp1IGRlbiBFcmVpZ25pc3NlbiBkZXIgV29jaGUgKEdsb2luc29uLCAyOS4gSmFuIDIwMDUsIDE2OjU5OjQyKToKfiMhIHJuPVZlY3RvciBydD0xMTA3MDEzMjUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjkzNTQ2MgpOdSBpc3QgZGEgbnVyIG5vY2ggZGllIEZyYWdlLCBvYiBlcyBub2NoIHNvIHZpZWxlIG5hY2hoaWxmZWJlZHVlcmZ0aWdlClNjaHVlbGVyIHdpZSB2ZXJhcm10ZSBTdHVkZW50ZW4gZ2lidC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTV1IzIC0gS29tbWVudGFyIHp1IGRlbiBFcmVpZ25pc3NlbiBkZXIgV29jaGUgKFJvbmRhLCAyOS4gSmFuIDIwMDUsIDIzOjI1OjIxKToKfiMhIHJuPVZlY3RvciBydD0xMTA3MDEzMjUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjkzNTQ2MgoqZ3JpZW4qIFdlbm4gaWNoIERlaW5lbiBBcnRpa2VsIGxlc2UsIGhhbHRlIGljaCBlcyBhdWNoIGZ1ZXIgYmVzc2VyLCBkYXNzIER1Ck5hY2hoaWxmZSBpbiBNYXRoZSBnaWJzdCB1bmQgbmljaHQgaW4gRGV1dHNjaC4uLiA7LSkKClJvbmRhICpmaWVzIHVuZCBnZW1laW4qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgYmVzdGVuIFdlZ21lbGR1bmdlbiAuLi4gKExpYXJhLCAyOS4gSmFuIDIwMDUsIDIzOjQ0OjEwKToKQ3V4ZWwgaXN0IGFscyBhYndlc2VuZCBnZWtlbm56ZWljaG5ldC4KR3J1bmQ6IGl4bWFsaWRvZ2cKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBpc3QgYWJlciBuaWNodCBuZXR0Li4uIChPcmt0b2V0ZXIsIDI5LiBKYW4gMjAwNSwgMjM6NTM6MDYpOgpbQWxsZ2VtZWluOk1haGFyZXRdIEd1dGVuIEFiZW5kLgpFaW5lIEt1aCBtdWh0OiBNdXV1aCwgbXV1dXV1aCwgbXV1dXV1dXV1dXV1dXV1dXV1dXV1aCAhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTXVwZmVsIG1hbCB3aWVkZXIuLi4gKFZhcmxhcmlvbiwgMzAuIEphbiAyMDA1LCAwMDoxNTo0NSk6CkRlaW4gRnJldW5kIE11cGZlbCB0ZXN0MC4KRGVpbiBGcmV1bmQgTXVwZmVsIHRlc3QgKCMpLgpEZWluIEZyZXVuZCBNdXBmZWwgdGVzdCAoICkuCkRlaW4gRnJldW5kIE11cGZlbCB0ZXN0ICgpLgpEZWluIEZyZXVuZCBNdXBmZWwgdGVzdCAoIyApLgotLQpXaXJkcyBkZW5uIGdlaGVuPwoKVmFybCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNdXBmZWwgbWFsIHdpZWRlci4uLiAoVmFybGFyaW9uLCAzMC4gSmFuIDIwMDUsIDAwOjE3OjMxKToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMTA3MDQwNTQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzA0MDU0NQpPZmZlbnNpY2h0bGljaCBuaWNodCwgZGVubiBlcyBnZWh0IG5vY2ggd2VpdGVyOgoKTWVzc2FnZSBmcm9tIE11cGZlbDoKJCBmZW1vdGUgdGVzdCAjMApNdXBmZWwgdGVzdCBhdXMgZGVyIEZlcm5lMC4KJCBmZW1vdGUgdGVzdCAoIykKTXVwZmVsIHRlc3QgKCMpIGF1cyBkZXIgRmVybmUuCiQgZmVtb3RlIHRlc3QgKCAjICkKTXVwZmVsIHRlc3QgKCBhdXMgZGVyIEZlcm5lICkuCiQgZmVtb3RlIHRlc3QgKCAjKQpNdXBmZWwgdGVzdCAoIGF1cyBkZXIgRmVybmUpLgokIGZlbW90ZSB0ZXN0ICgjICkKTXVwZmVsIHRlc3QgKCMgKSBhdXMgZGVyIEZlcm5lLgpbRW5kIG9mIG1lc3NhZ2VdCi0tClZhcmwqLCBzaWNoIGFtIEtvcGYga3JhdHplbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNdXBmZWwgbWFsIHdpZWRlci4uLiAoUm9uZGEsIDMwLiBKYW4gMjAwNSwgMDA6MTg6MDYpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTExMDcwNDA1NDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3MDQwNTQ1CkljaCBtdXNzIGpldHp0IGF1Y2ggbmljaHQgdmVyc3RlaGVuLCB3YXJ1bSBiZWkgbWlyIGRhcyBhbmthbSwgb2Rlcj8KCkRlaW4gRnJldW5kIE11cGZlbCB0ZXN0IGF1cyBkZXIgRmVybmUwLiAKRGVpbiBGcmV1bmQgTXVwZmVsIHRlc3QgKCMpIGF1cyBkZXIgRmVybmUuIApEZWluIEZyZXVuZCBNdXBmZWwgdGVzdCAoIGF1cyBkZXIgRmVybmUgKS4gCkRlaW4gRnJldW5kIE11cGZlbCB0ZXN0ICggYXVzIGRlciBGZXJuZSkuIApEZWluIEZyZXVuZCBNdXBmZWwgdGVzdCAoIyApIGF1cyBkZXIgRmVybmUuCgouLi4gTXVwZmVsLCBoYXN0ZSBudW4gZ2VudWcgZ2VoYXNodD8KClJvbmRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE11cGZlbCBtYWwgd2llZGVyLi4uIChNYWhhcmV0LCAzMC4gSmFuIDIwMDUsIDAwOjE4OjMwKToKfiMhIHJuPVJvbmRhIHJ0PTExMDcwNDA2ODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3MDQwNTQ1CkludGVyZXNzaWVydCBqZW1hbmRlbiwgd2FzIGJlaSBtaXIgYW5rYW0/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNdXBmZWwgbWFsIHdpZWRlci4uLiAoUm9uZGEsIDMwLiBKYW4gMjAwNSwgMDA6MTk6MjIpOgp+IyEgcm49TWFoYXJldCBydD0xMTA3MDQwNzEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzA0MDU0NQpBbHNvIG1pY2ggaW50ZXJlc3NpZXJ0IG1laHIsIHdhcyBEdSBncmFkIGZ1ZXIgV2hpc2t5IHp1aGF1cyBzdGVoZW4gaGFzdC4uLgoKUm9uZGEgKnByb3NpdCEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNdXBmZWwgbWFsIHdpZWRlci4uLiAoTWFoYXJldCwgMzAuIEphbiAyMDA1LCAwMDoxOTo0OCk6Cn4jISBybj1Sb25kYSBydD0xMTA3MDQwNzYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzA0MDU0NQpTdGVoZW4gdHV0IGhpZXIgbmUgZ2FuemUgTWVuZ2UsIHRyaW5rZW4gdHUgaWNoIGRlcnplaXQgYWxsZXJkaW5ncyBFc3ByZXNzby4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE11cGZlbCBtYWwgd2llZGVyLi4uIChab29rLCAzMC4gSmFuIDIwMDUsIDAwOjIwOjAwKToKfiMhIHJuPU1haGFyZXQgcnQ9MTEwNzA0MDc4OCByZz1zY2htYXJybgp+IyEgdGlkPTExMDcwNDA1NDUKdW0gZGllIHVocnplaXQ/Cgp6b29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTXVwZmVsIG1hbCB3aWVkZXIuLi4gKE1haGFyZXQsIDMwLiBKYW4gMjAwNSwgMDA6MjA6MDQpOgp+IyEgcm49TWFoYXJldCBydD0xMTA3MDQwNzg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzA0MDU0NQpOZSBNZW5nZSBXaGlza3kuIE51ciwgdW0gZGFzIGtsYXJ6dXN0ZWxsZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNdXBmZWwgbWFsIHdpZWRlci4uLiAoTWFoYXJldCwgMzAuIEphbiAyMDA1LCAwMDoyMTowOCk6Cn4jISBybj1ab29rIHJ0PTExMDcwNDA4MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3MDQwNTQ1CmphCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBNdXBmZWwgbWFsIHdpZWRlci4uLiAoVmFybGFyaW9uLCAzMC4gSmFuIDIwMDUsIDAwOjI1OjQ3KToKfiMhIHJuPU1haGFyZXQgcnQ9MTEwNzA0MDg2OCByZz1zY2htYXJybgp+IyEgdGlkPTExMDcwNDA1NDUKSWNoIHNldHplIE11cGZlbCBmdWVyIFJlXjEwMCBhdXMgOykKClZhcmwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBNdXBmZWwgbWFsIHdpZWRlci4uLiAoTXVwZmVsLCAzMC4gSmFuIDIwMDUsIDAwOjI2OjIxKToKfiMhIHJuPVZhcmxhcmlvbiBydD0xMTA3MDQxMTQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzA0MDU0NQpTbyBnYW56IGF1cz8gV2FoaGhoLi4uCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTXVwZmVsIG1hbCB3aWVkZXIuLi4gKFZhcmxhcmlvbiwgMzAuIEphbiAyMDA1LCAwMDoyNjozNyk6Cn4jISBybj1NdXBmZWwgcnQ9MTEwNzA0MTE4MSByZz1zY2htYXJybgp+IyEgdGlkPTExMDcwNDA1NDUKTmVpbiwgbnVyIGxlaWh3ZWlzZS4gSWNoIGJyYXVjaCBEaWNoIHNjaGxpZXNzbGljaCBub2NoIDopCgpWYXJsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE11cGZlbCBtYWwgd2llZGVyLi4uIChNdXBmZWwsIDMwLiBKYW4gMjAwNSwgMDA6Mjc6NDMpOgp+IyEgcm49VmFybGFyaW9uIHJ0PTExMDcwNDExOTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3MDQwNTQ1CkphamEuLi4uIER1IGJyYXVjaHN0IG1pY2ggbm9jaCwgdW0gbWljaCB3ZWl0ZXJoaW4gdmVybGVpaGVuIHp1IGtvZW5uZW4uLi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTXVwZmVsIG1hbCB3aWVkZXIuLi4gKFpvb2ssIDMwLiBKYW4gMjAwNSwgMDA6NDc6MDEpOgp+IyEgcm49TXVwZmVsIHJ0PTExMDcwNDEyNjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3MDQwNTQ1CkljaCB3YXIgdmVyc3VjaHQgenUgZnJhZ2VuLCBhbiB3ZWxjaGVyIEF1dG9iYWhucmFzdHN0YWV0dGUgRHUgaWhuIAphdXNzZXR6ZW4gbW9lY2h0ZXN0Li4uLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBNdXBmZWwgbWFsIHdpZWRlci4uLiAoQ3JvZnQsIDMwLiBKYW4gMjAwNSwgMDE6MTM6NDIpOgp+IyEgcm49Wm9vayBydD0xMTA3MDQyNDIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzA0MDU0NQpJbSBLYXJsc3J1aGVyIFVta3JlaXMgd2FlciBpY2ggamEgbm9jaCBnZW5laWd0IGlobiBlaW56dXNhbW1lbG4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2tpZmFocmVuIChHbG9pbnNvbiwgMzAuIEphbiAyMDA1LCAwMTo1NjozMyk6CiJLZWluIFRpZXIgcnV0c2NodCBmcmVpd2lsbGlnIGRlbiBCZXJnIGhlcnVudGVyLiBJbSBFbmRlZmZla3QgaXN0IFNraWZhaHJlbgphbHNvIGFsbGVzLCB3YXMgdW5zIHZvbSBUaWVyIHVudGVyc2NoZWlkZXQuIgoKR2VmdW5kZW4gYXVmIFdEUiAuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2tpZmFocmVuIChXdXJ6ZWwsIDMwLiBKYW4gMjAwNSwgMTM6MTE6NTYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNzA0NjU5MyByZz1zY2htYXJybgp+IyEgdGlkPTExMDcwNDY1OTMKaW4gbWFuY2hlbiBkaW5nZW4gc2luZCB0aWVyZSBlYmVuIHZlcm51ZW5mdGlnZXIgYWxzIG1lbnNjaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTa2lmYWhyZW4gKEdsb2luc29uLCAzMC4gSmFuIDIwMDUsIDEzOjI5OjUyKToKfiMhIHJuPVd1cnplbCBydD0xMTA3MDg3MTE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzA0NjU5MwpWZXJudW5mdCB1bmQgU3Bhc3MgcGFzc2VuIGViZW4gbmljaHQgaW1tZXIgenVzYW1tZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2tpZmFocmVuIChXdXJ6ZWwsIDMwLiBKYW4gMjAwNSwgMTM6MzI6MDApOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNzA4ODE5MiByZz1zY2htYXJybgp+IyEgdGlkPTExMDcwNDY1OTMKaWNoIGhhYiBub2NoIG5pZSBzbyBnZW5hdSB2ZXJzdGFuZGVuLCB3byBkZXIgc3Bhc3Mgc2VpbiBzb2xsLCB3ZW5uIG1hbgptdWVoc2FtIGRpZSBwb3RlbnRpZWxsZSBlbmVyZ2llIGVyaG9laHQsIG51ciB1bSBzaWUgYW5zY2hsaWVzc2VuZCB1bnRlciBkZXIKZ2VmYWhyIGVybnN0aGFmdGVyIHZlcmxldHp1bmdlbiB3aWVkZXIgenUgZXJuaWVkcmlnZW4uIGVudHdlZGVyIGJpbiBpY2ggd29obAp6dSB2ZXJudWVuZnRpZyBkYWZ1ZXIgb2RlciBlYmVuIGVpbiB0aWVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2tpZmFocmVuIChHbG9pbnNvbiwgMzAuIEphbiAyMDA1LCAxMzozMzo1Nik6Cn4jISBybj1XdXJ6ZWwgcnQ9MTEwNzA4ODMyMCByZz1zY2htYXJybgp+IyEgdGlkPTExMDcwNDY1OTMKVW5kIGRhcyBzb2xsIGljaCBkaXIgamV0enQgZ2xhdWJlbj8gSmVtYW5kZW0sIGRlciBzaWNoIGF1ZiBhbmRlcmUgVGllcmUgc2V0enQKdW0gZGVuIFJlaXogZGVzIEZyZW1kdHJhbnNwb3J0ZXMsIGF1Y2ggc2NobmVsbGVyIGFscyBtYW4gc2VsYnN0IHp1IGdlbmllc3Nlbj8KSmVtYW5kZW0sIGRlciBiZXN0aW1tdCBlaW4gQXV0by9GYWhycmFkIGJlc2l0enQgdW5kIGRhbWl0IHNjaG9uIGF1cwpOaWNodHRlcm1pbmdydWVuZGVuIHNjaG5lbGxlciBhbHMgZXJsYXVidCBmdWhyPyBQZmZmZmZmZi4gU2VuaWxpdGFldCB6YWVobHQKbmljaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU2tpZmFocmVuIChXdXJ6ZWwsIDMwLiBKYW4gMjAwNSwgMTM6NDE6MjYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNzA4ODQzNiByZz1zY2htYXJybgp+IyEgdGlkPTExMDcwNDY1OTMKaWNoIHdlaXNzIG5pY2h0IGdlbmF1LCB3YXMgZWluIHRyYW5zcG9ydCB2b24gYSBuYWNoIGIgbWl0IGRlbSB1bnNpbm5pZ2VuCmJlcmcgcmF1ZiAtIGJlcmcgcnVudGVyIGVpbmVzIHNraWZhaHJlcnMgenUgdHVuIGhhdC4gbGFuZ2xhdWYgbGFzcyBpY2gKamV0enQgbWFsIGF1c3NlbiB2b3IsIGRhcyBrYW5uIGphIGR1cmNoYXVzIHNpbm52b2xsIHNlaW4uIGlzdCBhYmVyIGtlaW4KdmVyZ2xlaWNoIG1pdCBlaW5lbSBzY2hvZW5lbiByaXR0IGR1cmNoIHRpZWZlbiBzY2huZWUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNraWZhaHJlbiAoR2xvaW5zb24sIDMwLiBKYW4gMjAwNSwgMTM6NDI6NTYpOgp+IyEgcm49V3VyemVsIHJ0PTExMDcwODg4ODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3MDQ2NTkzCkhtLCBpY2ggemllaGUgTGFuZ2xhdWYgZHVyY2ggZGVuIFNjaG5lZSBlaW5lbSBSaXR0IGR1cmNoIGRpZXNlbiB2b3IuIFVuZAp1bmdlZmFlaHJsaWNoIGlzdCBSZWl0ZW4gYXVjaCBuaWNodCAuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTa2lmYWhyZW4gKFpvb2ssIDMwLiBKYW4gMjAwNSwgMTM6NDY6NTgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNzA4ODk3NiByZz1zY2htYXJybgp+IyEgdGlkPTExMDcwNDY1OTMKVW0gdGhyZWFkdWViZXJncmVpZmVuZCBtaXQgSW5mb3JtYXRpb25lbiB6dSBkaWVuZW46IEVzIGdpYnQgZWluZSB3YWhuc2lubmlnCnNjaG9lbmUgTGFuZ3N0cmVja2VuLUxhbmdsYXVmLVRvdXIgZHVyY2ggZGVuIHNjaHdlaXplci0gdW5kIGZyYW56b2VzaXNjaGVuCkp1cmEuIElzdCBlaW5lIE1laHJ0YWdlcy1Ub3VyIHVuZCBtYW4gaXN0IG1hbCBhdWYgZGVyIHNjaHdlaXplciwgbWFsIAphdWYgZGVyIFNjaHdlaXplciBTZWl0ZS4gU29sbCBnYW56IHRvbGwgc2Vpbiwgd2FzIG1hbiBzbyBkYXJ1ZWJlciBsaWVzdC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTa2lmYWhyZW4gKEVsam8sIDMwLiBKYW4gMjAwNSwgMTM6NTg6MjMpOgp+IyEgcm49Wm9vayBydD0xMTA3MDg5MjE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzA0NjU5MwpEaWUgYXJtZW4gSXRhbGluaWVyLCBkYSBoZWlzc3QgZGFzIHNjaG9uIExhbmdsYXVmLVRvdXIgZHVyY2ggZGVuIHNjaHdlaXplci0KdW5kIGZyYW56b2VzaXNjaGVuIEp1cmEsIHVuZCBkYW5uIGZ1ZWhydCBkaWUgVG91ciBudXIgYXVmIFNjaHdlaXplciwgYnp3LgpzY2h3ZWl6ZXIgU2VpdGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTa2lmYWhyZW4gKEVsam8sIDMwLiBKYW4gMjAwNSwgMTM6NTk6MTcpOgp+IyEgcm49RWxqbyBydD0xMTA3MDg5OTAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzA0NjU5MwpXYXMgc2NocmVpYmUgaWNoIGVpZ2VudGxpY2ggZnVlciBlaW5lbiBTdHVzcz8hIFdhcyBoYWJlbiBkZW5uIGRpZSBJdGFsaWVuZXIKKFNvIGhhZXR0ZSBkYXMgYXVjaCBoZWlzc2VuIHNvbGxlbikgZGFtaXQgenUgdHVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFNraWZhaHJlbiAoWm9vaywgMzAuIEphbiAyMDA1LCAxMzo1OTo1Nyk6Cn4jISBybj1FbGpvIHJ0PTExMDcwODk5NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3MDQ2NTkzCktlaW5lIEFobnVuZy4gSWNoIGJpbiBhYmVyIHNjaGVpbmJhciBhdWNoIG5pY2h0IHZpZWwgYmVzc2VyLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEFlbmRlcnVuZ2VuIGluIGRlciBBdXNiaWxkdW5nIChab29rLCAzMS4gSmFuIDIwMDUsIDE1OjM5OjA5KToKfiMhIHJuPU1haGFyZXQgcnQ9MTEwNzE4MTg0OCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMTA2OTE2Nzc0Cj4gbGVpZGVuIHNpZSBlaCBhbiBhbHRlcnNkZW1lbnoKClN5bXB0b21hdGlzY2guIDspCgpab29rIGR1Y2t0IHNpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogQWVuZGVydW5nZW4gaW4gZGVyIEF1c2JpbGR1bmcgKE1haGFyZXQsIDMxLiBKYW4gMjAwNSwgMTU6Mzk6NTcpOgp+IyEgcm49Wm9vayBydD0xMTA3MTgyMzQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjkxNjc3NApOYWphLCBiZWkgc28gdmllbGVuIFNjaGxhZWdlbiBhdWYgZGVuIEtvcGYgLSBkYXMgbGFlcHBlcnQgc2ljaCBpbSBMYXVmZSBlaW5lcwpLYWVtcGZlcmxlYmVucy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUZXN0IChDaGFnYWxsLCAzMS4gSmFuIDIwMDUsIDE5OjM2OjIwKToKfiMhIHJuPUFydGFuaXMgcnQ9MTEwNzE5NjQ1MiByZz1kZS5hbHQubXVkCn4jISB0aWQ9MTEwNzE5NjQ1MgpVbmQsIGlzdCBlciBlcmZvbGdyZWljaCBhYmdlc2NobG9zc2VuIHdvcmRlbiwgZGVyIFRlc3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogQWVuZGVydW5nZW4gaW4gZGVyIEF1c2JpbGR1bmcgKEFuYXRvbCwgMzEuIEphbiAyMDA1LCAyMDo1MzowNSk6Cn4jISBybj1BcmsgcnQ9MTEwNzIwMTAzMSByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMTA2OTE2Nzc0CklzdCBkYXMgZGllIE11ZGVudHNwcmVjaHVuZyB6dSBHb2R3aW4/CgphKSBKZWRlIERpc2t1c3Npb24gd2lyZCBmcnVlaGVyIG9kZXIgc3BhZXRlciBkYXMgV29ydCAiYWJ3ZXJ0ZW4iCmJlaW5oYWx0ZW4uIERlcmplbmlnZSwgZGVyIGRpZSBBYndlcnR1bmcgenVlcnN0IGVyd2FlaG50LCBoYXQgZGllCkRpc2t1c3Npb24gYXV0b21hdGlzY2ggdmVybG9yZW4uCgpiKSBQdW5rdCBhKSB0cml0dCBudXIgZGFubiBuaWNodCBpbiBLcmFmdCwgd2VubiBHb2R3aW5zIEdlc2V0egp6dXZvciBBbndlbmR1bmcgZmluZGV0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBBZW5kZXJ1bmdlbiBpbiBkZXIgQXVzYmlsZHVuZyAoT3JrdG9ldGVyLCAzMS4gSmFuIDIwMDUsIDIwOjU3OjE5KToKfiMhIHJuPUFuYXRvbCBydD0xMTA3MjAxMTg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjkxNjc3NApKZWhvdmEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogQWVuZGVydW5nZW4gaW4gZGVyIEF1c2JpbGR1bmcgKEFyaywgMzEuIEphbiAyMDA1LCAyMTowMDozMSk6Cn4jISBybj1BbmF0b2wgcnQ9MTEwNzIwMTE4NSByZz1zY2htYXJybgp+IyEgdGlkPTExMDY5MTY3NzQKSGllciBrYW5uIG1hbiBhdWNoIGRpZSBzY2hsZWNodGUgS29tbXVuaWthdGlvbiAiZGVyIGRhIG9iZW4iIGFucHJhbmdlcm4uIEljaAp3YWdlIG1pY2ggbWFsIGF1ZiBkYXMgRWlzLCBkYXNzIGhpZXIgd2VuaWcgZ2VtZWNrZXJ0IHd1ZXJkZSwgd2VubiBtYW4gZWluZmFjaAptYWNodCwgb2huZSBlcyB6dSB2ZXJrdWVuZGVuLiBBbHNvIGVudGdlZ2VuIGRlbSBTcHJ1Y2ggIlR1ZSBHdXRlcyB1bmQgcmVkZQpkYXJ1ZWJlciIgOi0pCkFiZXIgZGFubiBpc3QgbWFuIHdvaGwgZWhlciAiaW5ha3RpdiIsIGhhcnIuCldlbm4gZXMgZGFubiBkb2NoIGVpbmVyIG1lcmt0LCBpc3QgZXMgZWluIGtvbXBsaXppZXJ0ZXIgQnVnLiBEYW5uIHdpcmQgZXIKemlnbWFsICJhbmdlcGFja3QiIChBcnRpa2VsIHdlcmRlbiBoaW4tIHVuZCBoZXJnZXNjaHJpZWJlbiksIGJpcyBlciBhbHMKIkJlc3RhbmQiIGRlcyBNRyBhbmdlc2VoZW4gd2lyZCwgZGVzc2VuIEFlbmRlcnVuZyBhbHMgenUgcmlza2FudCBnZXdlcnRldAp3aXJkLiBVbmQgZGFtaXQgaGFldHRlbiB3aXIgZXMgZGFubi4KQWxsZXMgaXN0IEtvbW11bmlrYXRpb25zc2FjaGU6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogQWVuZGVydW5nZW4gaW4gZGVyIEF1c2JpbGR1bmcgKE11cGZlbCwgIDEuIEZlYiAyMDA1LCAwMToxNzoxNik6Cn4jISBybj1BbmF0b2wgcnQ9MTEwNzIwMTE4NSByZz1zY2htYXJybgp+IyEgdGlkPTExMDY5MTY3NzQKQW5hdG9scyBMYXc/IDspCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEFlbmRlcnVuZ2VuIGluIGRlciBBdXNiaWxkdW5nIChNdWFkaWIsICAxLiBGZWIgMjAwNSwgMTE6NTg6NDcpOgp+IyEgcm49TXVwZmVsIHJ0PTExMDcyMTcwMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA2OTE2Nzc0CmRhenUgbXVlc3N0ZW4gd2lyIGRhcyB0aGVtYSBlcnN0IGVpbm1hbCBhdWYga2FtcGZzdGFlYmUgdW1iaWVnZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWYW1waXJlIHVuZCBjby4gKFpvb2ssICAxLiBGZWIgMjAwNSwgMTQ6MzE6NTQpOgp+IyEgb249Wm9vayBvdD0xMTA3MjY0NzA0IG9nPWQud2FsZAp+IyEgcm49TmliZWwgcnQ9MTEwNzI2NDAzOCByZz1kLndhbGQKfiMhIHRpZD0xMTA3MjY0MDM4CkljaCB3ZWlzcyB3YXMsIGljaCB3ZWlzcyB3YXMuLi4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBWYW1waXJlIHVuZCBjby4gKE11YWRpYiwgIDEuIEZlYiAyMDA1LCAxNTozOToxMSk6Cn4jISBybj1ab29rIHJ0PTExMDcyNjQ3MTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3MjY0MDM4Cndhcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFZhbXBpcmUgdW5kIGNvLiAoWm9vaywgIDEuIEZlYiAyMDA1LCAxNjowOToyOSk6Cn4jISBybj1NdWFkaWIgcnQ9MTEwNzI2ODc1MSByZz1zY2htYXJybgp+IyEgdGlkPTExMDcyNjQwMzgKc2FnIGljaCBuaWNodCwgc2FnIGljaCBuaWNodAoKem9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVmFtcGlyZSB1bmQgY28uIChBbnlzaWRvcmEsICAxLiBGZWIgMjAwNSwgMTc6NDU6MzkpOgp+IyEgcm49Wm9vayBydD0xMTA3MjcwNTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzI2NDAzOAphbmdlYmVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBLYXR6ZW5oYWx0dW5nIChHbG9pbnNvbiwgIDEuIEZlYiAyMDA1LCAxOToxMzoxOSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTEwNzI4MTEwOSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMDcyNzgwMjQKRGllIFd1ZXJkZSBkZXIgS2F0emUgaXN0IHVuYW50YXN0YmFyIC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTY2h3ZXJ0bWVpc3RlcnNjaHdlcnQgKEJvaW5nLCAgMi4gRmViIDIwMDUsIDIyOjMxOjExKToKfiMhIHJuPUFyYXRob3JuIHJ0PTExMDczNzk3MzMgcmc9ZC5lYmVuZQp+IyEgdGlkPTExMDczNzk3MzMKRGV1dGxpY2ggd2VuaWdlcj8/PyAKKmphbW1lcioKQWJ3ZXJ0dW5nIQoKSWNoIGhhYiBzY2hvbm1hbCBkaWUgbmFlY2hzdGVuIDUwIEFydGlrZWwgenVzYW1tZW4gZ2VmYXNzdCAuLi4gOykKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTY2h3ZXJ0bWVpc3RlcnNjaHdlcnQgKEFrYXNoYSwgIDIuIEZlYiAyMDA1LCAyMjozMjowMyk6Cn4jISBybj1Cb2luZyBydD0xMTA3Mzc5ODcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzM3OTczMwpJY2ggaGFldHRlIGpldHp0IGdlZGFjaHQsIERlaW4gRmxhbWUtU2NyaXB0IHRpbGx0Li4uCgpBa2FzaGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNjaHdlcnRtZWlzdGVyc2Nod2VydCAoSHVtbmksICAyLiBGZWIgMjAwNSwgMjI6MzM6NDcpOgp+IyEgb249SHVtbmkgb3Q9MTEwNzM4MDAxNyBvZz1kLmViZW5lCn4jISBybj1Ba2FzaGEgcnQ9MTEwNzM3OTkyMyByZz1zY2htYXJybgp+IyEgdGlkPTExMDczNzk3MzMKVGphLiBEYW5uIG11c3MgaWNoIHdvaGwgbWFsIGVpbmUgRXJrbGFlcnVuZyBicmluZ2VuOgoKRGFzIFNNUyB3YXIgZnJ1ZWhlciBkaWUgVWViZXJ3YWZmZS4gRXMgd2FyIGVpbmZhY2ggenUgZ3V0LCBlcyBsb2hudGUgc2ljaCBmdWVyCmRpZSBNYWdpZXIga2F1bSwgc2VsYnN0IFdhZmZlbiB6dSBwcm9ncmFtbWllcmVuLCBkYXMgU01TIHdhciBlaW5mYWNoIHZpZWwsCnZpZWwgYmVzc2VyLgoKTGVpZGVyIGhhdCBlcyBzaWNoIGdlemVpZ3QsIGRhc3MgZGFzIFNNUyBub2NoIGltbWVyIHZpZWwgenUgc3Rhcmsgd2FyLCB1bmQgc28KaGFiZW4gd2lyIHVucyBkYW5uIGVudHNjaGxvc3NlbiwgZGllc2UgbGVpZGVyIG5vZXRpZ2UgQWJ3ZXJ0dW5nIGRlcyBWZXJsZXJuZW5zCmF1Y2ggbm9jaCB2b3J6dW5laG1lbi4gU2llIGlzdCByZWluIGF1cyBSdWVja3NpY2h0IGF1ZiBkaWUgU3BpZWxlciBlcmZvbGd0LCB1bQpkZW4gbGFuZ2ZyaXN0aWdlbiBTcGllbHNwYXNzIHp1IHNpY2hlcm4uCgpTby4gTnVuIHNjaGltcGZ0LgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNjaHdlcnRtZWlzdGVyc2Nod2VydCAoWmFybml5YSwgIDMuIEZlYiAyMDA1LCAwNTozMToxOSk6Cn4jISBybj1IdW1uaSBydD0xMTA3MzgwMDI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzM3OTczMwphbHNvIGljaCBoYWIgbWVpbmUgV2FmZmVuIGFsbGUgTkFDSCBkZW0gU01TIHByb2dyYW1taWVydCB1bmQgaWNoIGhhdHRlIGF1Y2gKbWVpbmVuIFNwYXNzIGRhcmFuLi4uIGtvbW10IGltbWVyIGF1ZiBkaWUgWmllbGdydXBwZSBhbiwgZnVlciBkaWUgZGllIFdhZmZlCnNlaW4gc29sbC4uLi4gSWNoIGthbm4gbWljaCBhdWNoIG5vY2ggYW4gWmVpdGVuIGVyaW5uZXJuLCBkYSBsaWVmZW4gc29nYXIgaG9oZQpTZWhlciB6QiBsaWViZXIgbWl0IFphcmRveicgQmF1bXdvbGxzY2h3ZXJ0IHJ1bSwgbmljaHQsIHdlaWwgZXMgYmVzc2VyIHdhciBhbHMKZGFzIFNNUywgc29uZGVybiB3ZWlscyBlaW5mYWNoIG4gY29vbGVyIEdhZyB3YXIuIFNwYXNzICE9IGRhcyBCZXN0ZS4gVW5kIGRhcwppc3QgZ3V0IHNvLgoKTWFyYwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHZXJ1ZWNodGUgYXVzIGRlbSBQb2xhcmdlYmlldCAoWm9vaywgIDMuIEZlYiAyMDA1LCAxMDozMTozOCk6Cn4jISBybj1aYXJuaXlhIHJ0PTExMDc0MDQ4ODEgcmc9ZC5wb2xhcgp+IyEgdGlkPTExMDczNjY3ODgKV2VubiBkYXMgRm9yc2NoZXJncnVwcGVuIHZlcnNjaHdpbmRlbi4uLiBLYW5uIG1hbiBkYSBhdWNoIGplbWFuZGVuIApoaW5zY2hpY2tlbj8gR2lidCBlcyBkYSBpcmdlbmR3ZWxjaGUgRm9ybXVsYXJlLi4uPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdlcnVlY2h0ZSBhdXMgZGVtIFBvbGFyZ2ViaWV0IChMaWFyYSwgIDMuIEZlYiAyMDA1LCAxMzoxMToxMik6Cn4jISBybj1ab29rIHJ0PTExMDc0MjMwOTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3MzY2Nzg4CkljaCBoYWIncyBnZXd1c3N0LiBEdSBoYXN0IHNjaG9uIGltbWVyIHdhcyBnZWdlbiB1bnMgU3BpZWxlciBnZWhhYnQuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHZXJ1ZWNodGUgYXVzIGRlbSBQb2xhcmdlYmlldCAoR3JpbW1ib3JuLCAgMy4gRmViIDIwMDUsIDEzOjEzOjQ1KToKfiMhIHJuPUxpYXJhIHJ0PTExMDc0MzI2NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3MzY2Nzg4CkRhc2kgc3QgbmljaHQgd2Foci4gRGVuIFphcCBrcmllZ3QgbWFuIGVyc3QgYWxzIE1hZ2llciwgYWxzbyBuaWNodCAic2Nob24KaW1tZXIiLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHZXJ1ZWNodGUgYXVzIGRlbSBQb2xhcmdlYmlldCAoTGlhcmEsICAzLiBGZWIgMjAwNSwgMTM6MTY6MzUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMDc0MzI4MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3MzY2Nzg4CkRhcyBQYXNzd29ydCB2b24gc2VpbmVtIFNwaWVsZXIgZmluZGV0IGVyIG5pbW1lciAuLi4gVmllbGxlaWNodCBmYWVsbHQgaWhtIGphCm5vY2ggZGVyIE5hbWUgZWluLiAqZyogQWxzbzogU2Nob24gaW1tZXIhIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTY2h3ZXJ0bWVpc3RlcnNjaHdlcnQgKE11YWRpYiwgIDMuIEZlYiAyMDA1LCAxNzoxNTozMyk6Cn4jISBybj1aYXJuaXlhIHJ0PTExMDc0MDUwNzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3Mzc5NzMzCmRhcyBiYXVtd29sbHNjaHdlcnQgd2FyIGZ1ZXIgbWljaCBpbW1lciBlaW5lIGd1dGUgZXJnYWVuenVuZyBtZWluZXIKc2Nod2VydHNhbW1sdW5nIGFiZXIgb2IgZXMgYWxsZ2VtZWluIGRlbSBiZXNpdHogZWluZXMgc21zIHZvcmdlem9nZW4gd3VyZGUsCndhZ2UgaWNoIHp1IGJlendlaWZlbG4KYW5zb25zdGVuIHdhciBkYXMgc21zIGVpbmZhY2ggdmllbHZpZWwgenUgc3RhcmsgZGFtYWxzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTY2h3ZXJ0bWVpc3RlcnNjaHdlcnQgKEdyaW1tYm9ybiwgIDMuIEZlYiAyMDA1LCAxODoyNDozMSk6Cn4jISBybj1NdWFkaWIgcnQ9MTEwNzQ0NzMzMyByZz1zY2htYXJybgp+IyEgdGlkPTExMDczNzk3MzMKU2ljaGVyIHdhciBkYXMgU01TIHVudmVyaGFlbHRuaXNtYWVzc2lnIHN0YXJrLiBBYmVyIG1pdHRsZXJ3ZWlsZSBnaWJ0cyBqYSBhdWNoCmFuZGVyZSBmdW5rdGlvbmllcmVuZGUgUnVlc3R1bmcuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFNjaHdlcnRtZWlzdGVyc2Nod2VydCAoSHVtbmksICAzLiBGZWIgMjAwNSwgMjA6Mzg6MDUpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMDc0NTE0NzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3Mzc5NzMzCkxldXRlLCBkYXMgU01TIHdhciBlaW5mYWNoIHp1IGhlZnRpZy4gRGVua3QgZWluZmFjaCBtYWwgZHJ1ZWJlciBuYWNoIHVuZApzY2hhbHRldCBFdWVyIEdlaGlybiBlaW4hIFdpciBNVVNTVEVOIGVpbmZhY2ggd2FzIHVudGVybmVobWVuLCBvZGVyIGRhcyBNVUQKd2FlcmUgbGFuZ2ZyaXN0aWcgbmljaHQgbWVociB6dSBoYWx0ZW4gZ2V3ZXNlbi4gRGFydW0gZGllc2UgKG5vZXRpZ2UpClZlcmxlcm4tQWJ3ZXJ0dW5nLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFNjaHdlcnRtZWlzdGVyc2Nod2VydCAoT2dvLCAgMy4gRmViIDIwMDUsIDIwOjM5OjAxKToKfiMhIHJuPUh1bW5pIHJ0PTExMDc0NTk0ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3Mzc5NzMzCldhcyB2ZXJzdGVoc3QgZHUgdW50ZXIgImRhcyBNVUQgaGFsdGVuIiB1bmQgd2llIGFldXNzZXJ0IGVzIHNpY2gsIHdlbm4gbWFuIGVzCm5pY2h0IG1laHIgaGFsdGVuIGthbm4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTY2h3ZXJ0bWVpc3RlcnNjaHdlcnQgKEdsb2luc29uLCAgMy4gRmViIDIwMDUsIDIwOjM5OjIzKToKfiMhIHJuPUh1bW5pIHJ0PTExMDc0NTk0ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3Mzc5NzMzCk9jaCBtZW5ubywgb2huZSBTTVMga2FubiBpY2ggZ2FyIG5pY2h0IG1laHIgcmljaHRpZyBtZXR6ZWxuIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFNjaHdlcnRtZWlzdGVyc2Nod2VydCAoR3JpbW1ib3JuLCAgMy4gRmViIDIwMDUsIDIwOjM5OjU3KToKfiMhIHJuPUh1bW5pIHJ0PTExMDc0NTk0ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3Mzc5NzMzCkFjaCB3YXMsIGRhcyBCU1Mgd2FyIGphIHNvZ2FyIG5vY2ggZXR3YXMgYmVzc2VyLCBhYmVyIGhhdHRlIGhhbHQga2VpbmVuClJ1ZXN0dW5nc3NjaHV0ei4gSW5zb2Zlcm4gdmVyc3RlaGUgaWNoIGRpZSBBdWZyZWd1bmcgbmljaHQgc28uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFNjaHdlcnRtZWlzdGVyc2Nod2VydCAoVGlsbHksICAzLiBGZWIgMjAwNSwgMjA6NDA6MDUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNzQ1OTU2MyByZz1zY2htYXJybgp+IyEgdGlkPTExMDczNzk3MzMKRGFubiB3ZXJkIGRvY2ggTWFnaWVyISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFNjaHdlcnRtZWlzdGVyc2Nod2VydCAoR2xvaW5zb24sICAzLiBGZWIgMjAwNSwgMjA6NDA6MzUpOgp+IyEgcm49VGlsbHkgcnQ9MTEwNzQ1OTYwNSByZz1zY2htYXJybgp+IyEgdGlkPTExMDczNzk3MzMKRGllIHNpbmQgZG9vZiB1bmQgc3RpbmtlbiEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTY2h3ZXJ0bWVpc3RlcnNjaHdlcnQgKE9nbywgIDMuIEZlYiAyMDA1LCAyMDo0MTozOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEwNzQ1OTU5NyByZz1zY2htYXJybgp+IyEgdGlkPTExMDczNzk3MzMKQXByb3BvcyBSdWVzdHVuZ3NzY2h1dHo6IFdpZXNvIGthbm4gZWluIFNjaGlsZCBnZXJhZGUgbWFsIGRpZSBIYWVsZnRlIGRlcgpTY2h1dHp3aXJrdW5nIGVpbmVyIEtvZXJwZXJydWVzdHVuZyBhdWZiaWV0ZW4/IEljaCBiaW4gZGFmdWVyLCBkaWUgYmVpZGVuCm1heGltYWxlbiBTY2h1dHp3aXJrdW5nZW4genUgdmVydGF1c2NoZW4uIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFNjaHdlcnRtZWlzdGVyc2Nod2VydCAoSHVtbmksICAzLiBGZWIgMjAwNSwgMjA6NDI6MTkpOgp+IyEgcm49VGlsbHkgcnQ9MTEwNzQ1OTYwNSByZz1zY2htYXJybgp+IyEgdGlkPTExMDczNzk3MzMKSGUsIGRhcyBTTVMgaXN0IGphIG5vY2ggZGEuIE51ciBoYWx0IGluIGFiZ2VzY2h3YWVjaHRlciBGb3JtLCBkYXMgVmVybGVybmVuCmlzdCBoYWx0IG51biBhYmdld2VydGV0LCBsZWlkZXIuCgpVbmQgQE9nbzogRGFzIE1VRCBoYWx0ZW4gaGVpc3N0LCBkaWUgU3BpZWxlciBsYW5nZnJpc3RpZyBoaWVyenVoYWx0ZW4uIERhcwpnZWh0IGhhbHQgZWluZXJzZWl0cyBkYW1pdCwgZGFzcyBtYW4gdWViZXJ6ZXVnZW5kZSBHZWJpZXRlIGFuYmlldGV0IHVuZAphbmRlcmVyc2VpdHMgYXVmIERBdWVyIGRlbiBTcGllbHNwYXNzIGVyaGFlbHQuIFNvbnN0IHN0aXJidCBkYXMgTVVEIGF1cyB1bmQKd2lyZCB6dSBlaW5lciBNVUQtUnVpbmUsIGJpcyBlcyBhYmdlc2NoYWx0ZXQgd2lyZC4KClVuZCB1bSBkYXMgenUgdmVyaGluZGVybiBoYWJlbiB3aXIgZGFzIFZlcmxlcm5lbiBhYmdld2VydGV0LiBEYWZ1ZXIga2Fzc2llcmVuCndpciBkaWUgU2NoZWx0ZSwgZGVubiB3aWUgamVkZSB3YWhyZSBHcm9lc3NlIHdlcmRlbiB3aXIgaW0gTGViZW4gdmVya2FubnQuCgpEaWVzZXMgU2NoaWNrc2FsIHRyYWdlbiB3aXIgbWl0IFd1ZXJkZS4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogU2Nod2VydG1laXN0ZXJzY2h3ZXJ0IChEYXJrbG9yLCAgNC4gRmViIDIwMDUsIDE5OjA1OjI3KToKfiMhIHJuPUh1bW5pIHJ0PTExMDc0NTk3Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3Mzc5NzMzCklociBoYWJ0IGRhcyBWZXJsZXJuZW4gYWJnZXdlcnRldD8gLSBXYXMgaXMgZGVubiBkYXJhbiBhbyBzY2hsaW1tPyAtIE9kZXIga2FubgptYW4gZXMgamV0enQgZ2FyIG5pY2ggbWVociBsZXJuZW4/CgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogU2Nod2VydG1laXN0ZXJzY2h3ZXJ0IChDcm9mdCwgIDQuIEZlYiAyMDA1LCAxOToxMDoxMSk6Cn4jISBybj1EYXJrbG9yIHJ0PTExMDc1NDAzMjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3Mzc5NzMzCkJyYXVjaHN0IGR1IGpldHp0IGVpbmVuIEVya2xhZXJiYWVyIG9kZXIgd2llIGlzdCBkaWUgRnJhZ2UgenUgZGV1dGVuPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBTY2h3ZXJ0bWVpc3RlcnNjaHdlcnQgKERhcmtsb3IsICA0LiBGZWIgMjAwNSwgMTk6MTM6MzUpOgp+IyEgcm49Q3JvZnQgcnQ9MTEwNzU0MDYxMSByZz1zY2htYXJybgp+IyEgdGlkPTExMDczNzk3MzMKRXJrbGFlcmJhZXJuIHNpbmQgdG9sbAoKCkRhcmtsb3Iga251ZGRlbHQgc2VpbmVuIFRlZGR5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogU2Nod2VydG1laXN0ZXJzY2h3ZXJ0IChCYW1iaSwgIDQuIEZlYiAyMDA1LCAxOTozMzo0NSk6Cn4jISBybj1Dcm9mdCBydD0xMTA3NTQwNjExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzM3OTczMwpJY2ggaGFiZSBlcyBhdWNoIG5pY2h0IGdhbnogbmFjaHZvbGx6aWVoZW4ga29lbm5lbi4gRXJrbGFlcmUgZXMgYml0dGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJcyBrbGEgLi4uIChMaWFyYSwgIDUuIEZlYiAyMDA1LCAxNTozMDoyNik6CkR1IHZlcnRpZWZzdCBEZWluZSBHZWRhbmtlbiBpbiBEci4gRm9yc2NoIHVuZCB2ZXJnaXNzdCBmdWVyIGt1cnplIFplaXQgYWxsZXMKdW0gRGljaCBoZXJ1bS4uLgpEci4gRm9yc2NoIGlzdCBlaW4gTGViZXdlc2VuLgpFciBpc3QgZ2VnZW4gdW5iZWthbm50ZW4gU2NoYWRlbiB1bmQgU2FldXJlc2NoYWRlbiB2b2VsbGlnIGltbXVuLgpFciBpc3QgZ2VnZW4gbWFnaXNjaGVuIFNjaGFkZW4sIEdpZnRzY2hhZGVuLCBGZXVlcnNjaGFkZW4sIFdhc3NlcnNjaGFkZW4gdW5kCkthZWx0ZXNjaGFkZW4gZXR3YXMgcmVzaXN0ZW50LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FoaGggOykgKE11cGZlbCwgIDUuIEZlYiAyMDA1LCAyMDoyODo1MSk6CkRlaW4gRnJldW5kIENoYWdhbGwgdGVpbHQgRGlyIG1pdDogbm9jaCBzbyBlaW4gYWx0ZXIgU2FjayA6KQpEZWluIEZyZXVuZCBDaGFnYWxsIHRlaWx0IERpciBtaXQ6IGh1aHUgTXVwZmVsIDopCltNYWdpZXI6KFBhZHJlaWMpXSBuYWphLCBtdXBmZWwgaXMgendhciBhdWNoIGVpbiBhbHRlciBzYWNrCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFiZXIgZXMgd2lsbCBqYSBpbW1lciBrZWluZXIgZ2xhdWJlIC4uLiAoSGlnaGxhbmRlciwgIDcuIEZlYiAyMDA1LCAxNjowMjoxNik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTA3Nzg1Mzg5IHJnPXd3dwp+IyEgdGlkPTExMDc3ODUzODkKV2VubiBCdXNjaCAnbmUgUmVkZSBoYWVsdCwgaXN0IEJlc2F1ZmVuIG1laW5lciBNZWludW5nIHNvZ2FyCnZlcnN0YWVuZGxpY2guCgpIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWJlciBlcyB3aWxsIGphIGltbWVyIGtlaW5lciBnbGF1YmUgLi4uIChFbGJlcmV0aCwgIDcuIEZlYiAyMDA1LCAxNjowMzowNik6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTExMDc3ODg1MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3Nzg1Mzg5Cmhhc3QgZHUgbWFsIGVpbmUgdm9uIGlobSBnZWhvZXJ0PwoKRWxiaWgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWJlciBlcyB3aWxsIGphIGltbWVyIGtlaW5lciBnbGF1YmUgLi4uIChHbG9pbnNvbiwgIDcuIEZlYiAyMDA1LCAxNjowMzoxMCk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTExMDc3ODg1MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3Nzg1Mzg5ClNvIHNjaGxpbW0gc2luZCBzZWluZSBSZWRlbiBuaWNodC4gRXIgc2NocmVpYnQgc2llIGphIG5pY2h0IHNlbGJzdC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBYmVyIGVzIHdpbGwgamEgaW1tZXIga2VpbmVyIGdsYXViZSAuLi4gKEhpZ2hsYW5kZXIsICA3LiBGZWIgMjAwNSwgMTY6MDQ6NDIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNzc4ODU5MCByZz1zY2htYXJybgp+IyEgdGlkPTExMDc3ODUzODkKSWNoIGZpbmRlIHp1bSBlaW5lbiwgZGFzcyBzZWluZSBJbmhhbHRlIHVuZCBzZWluZSBUYXRlbiBzaWNoIHdpZGVyc3ByZWNoZW4sCmRhbm4gbHVlZ3QgZXIgZ2VybmUsIHVuZCBhdXNzZXJkZW0gc3RlbGxlbiBzaWNoIGJlaSBtaXIgaW56d2lzY2hlbiBzY2hvbgpkaWUgTmFja2VuZmVkZXJuIGF1Ziwgd2VubiBpY2ggVy4gc2VoZS4KCkhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQWJlciBlcyB3aWxsIGphIGltbWVyIGtlaW5lciBnbGF1YmUgLi4uIChFbGJlcmV0aCwgIDcuIEZlYiAyMDA1LCAxNjowNTo1NCk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTExMDc3ODg2ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3Nzg1Mzg5CnNhZyBtaXIgZWluZW4gUG9saXRpa2VyLCBmdWVyIGRlbiBkZXIgZXJzdGUgVGVpbCAoIGFsc28gZGFzIG9obmUgZGllCk5hY2tlbmhhYXJlKSBuaWNodCB6dXRyaWZmdD8KCkVsYmloCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBYmVyIGVzIHdpbGwgamEgaW1tZXIga2VpbmVyIGdsYXViZSAuLi4gKEdsb2luc29uLCAgNy4gRmViIDIwMDUsIDE2OjA3OjA0KToKfiMhIHJuPUVsYmVyZXRoIHJ0PTExMDc3ODg3NTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3Nzg1Mzg5ClRvdGUgUG9saXRpa2VyLgoKQmVzc2VyIGFscyBJbmRpYW5lci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBYmVyIGVzIHdpbGwgamEgaW1tZXIga2VpbmVyIGdsYXViZSAuLi4gKEhpZ2hsYW5kZXIsICA3LiBGZWIgMjAwNSwgMTY6MDk6NTYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNzc4ODgyNCByZz1zY2htYXJybgp+IyEgdGlkPTExMDc3ODUzODkKVyBpc3QgYWxsZXJkaW5ncyBlaW4gRXh0cmVtZmFsbCwgZmluZGUgaWNoLiBVbmQgZXMgZ2lidCBkZW5rZSBpY2gKdmVyZWluemVsdCB3ZWxjaGUuIFNjaG5hcnJpIGZhZWxsdCBtaXIgekIgZWluLgoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBYmVyIGVzIHdpbGwgamEgaW1tZXIga2VpbmVyIGdsYXViZSAuLi4gKERhcmtsb3IsICA3LiBGZWIgMjAwNSwgMTY6MTA6MzQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNzc4ODgyNCByZz1zY2htYXJybgp+IyEgdGlkPTExMDc3ODUzODkKTnVyIGVpbiB0b3RlciBQb2xpdGlrZXIgaXMgZWluIGd1dGVyIFBvbGl0aWtlcj8gLSBPYiBkZXIgVGV1ZmVsIGRhcyBhdWNoIHNvCnNpZWh0PyAKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFiZXIgZXMgd2lsbCBqYSBpbW1lciBrZWluZXIgZ2xhdWJlIC4uLiAoQ3JvZnQsICA3LiBGZWIgMjAwNSwgMTY6MTI6MTQpOgp+IyEgcm49RGFya2xvciBydD0xMTA3Nzg5MDM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzc4NTM4OQpJY2ggZGVua2UgbmljaHQuICBTY2hsaWVzc2xpY2ggbGVidCBlciBub2NoIHVuZCBmdWVobHQgc2ljaCBhbHMKTWluaXN0ZXJwcmFlc2lkZW50IG5vY2ggZ3V0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFiZXIgZXMgd2lsbCBqYSBpbW1lciBrZWluZXIgZ2xhdWJlIC4uLiAoRGVlcGJsdWUsICA3LiBGZWIgMjAwNSwgMTY6MTM6MjApOgp+IyEgcm49SGlnaGxhbmRlciBydD0xMTA3Nzg4NjgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzc4NTM4OQpFciB3dXJkZSBqYSBuaWNodCBvaG5lIEdydW5kIGZ1ZXIgZGllIEdvbGRlbmUgSGltYmVlcmUgbm9taW5pZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQWJlciBlcyB3aWxsIGphIGltbWVyIGtlaW5lciBnbGF1YmUgLi4uIChFbGJlcmV0aCwgIDcuIEZlYiAyMDA1LCAxNjoxNDowMik6Cn4jISBybj1EZWVwYmx1ZSBydD0xMTA3Nzg5MjAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzc4NTM4OQptZWluc3QgZHUgYnVzaD8KdW5kIHdpZSBsYW5nZSBpc3QgZGFzIGhlcj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBYmVyIGVzIHdpbGwgamEgaW1tZXIga2VpbmVyIGdsYXViZSAuLi4gKERlZXBibHVlLCAgNy4gRmViIDIwMDUsIDE2OjE2OjQzKToKfiMhIHJuPUVsYmVyZXRoIHJ0PTExMDc3ODkyNDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3Nzg1Mzg5CkRpZSBOb21pbmllcnVuZyBzdGFuZCB2b3IgcGFhciBXb2NoZW4gaW4gZGVuIE1lZGllbi4gRnVlciBkaWUgSGltYmVlcmVuIGZ1ZXIKZGllIHNjaGxlY2h0ZXN0ZW4gTmViZW5kYXJzdGVsbGVyIHd1cmRlbiB1bnRlciBhbmRlcmVtIFJ1bXNmZWxkIHVuZCBSaWNlCm5vbWluaWVydCAtIGFsbGUgZHJlaSBmdWVyIGlocmUgUm9sbGUgaW4gRmFocmVuaGVpdCA5LzExLgoKQlRXOiBNaWNoYWVsIE1vb3JlcyBSZWdpZWFyYmVpdCBibGllYiBiZWkgZGVuIE5vbWluaWVydW5nZW4gdW5iZXJ1ZWNrc2ljaHRpZ3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBYmVyIGVzIHdpbGwgamEgaW1tZXIga2VpbmVyIGdsYXViZSAuLi4gKEhpZ2hsYW5kZXIsICA3LiBGZWIgMjAwNSwgMTY6MTc6MjcpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTEwNzc4OTQwMyByZz1zY2htYXJybgp+IyEgdGlkPTExMDc3ODUzODkKJ1J1bXNmZWxkIHVuZCBSaWNlJyAuLi4gJ2FsbGUgZHJlaSc/PwoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBYmVyIGVzIHdpbGwgamEgaW1tZXIga2VpbmVyIGdsYXViZSAuLi4gKENyb2Z0LCAgNy4gRmViIDIwMDUsIDE2OjE3OjU5KToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9MTEwNzc4OTQ0NyByZz1zY2htYXJybgp+IyEgdGlkPTExMDc3ODUzODkKVmVyZ2lzcyBCdXNoIGluIGRlbSBBcnRpa2VsIHZvcmhlciBuaWNodC4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBYmVyIGVzIHdpbGwgamEgaW1tZXIga2VpbmVyIGdsYXViZSAuLi4gKEhpZ2hsYW5kZXIsICA3LiBGZWIgMjAwNSwgMTY6MTg6MTcpOgp+IyEgcm49Q3JvZnQgcnQ9MTEwNzc4OTQ3OSByZz1zY2htYXJybgp+IyEgdGlkPTExMDc3ODUzODkKQWNoIHNvLiBEZXIuCgpIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEFiZXIgZXMgd2lsbCBqYSBpbW1lciBrZWluZXIgZ2xhdWJlIC4uLiAoRWxiZXJldGgsICA3LiBGZWIgMjAwNSwgMTY6MTg6NDcpOgp+IyEgcm49Q3JvZnQgcnQ9MTEwNzc4OTQ3OSByZz1zY2htYXJybgp+IyEgdGlkPTExMDc3ODUzODkKYWxzbyBpY2ggbWFnIGphIEJ1c2ggbmljaHQsIGFiZXIgRmFocmVuaGVpdCA5LzExIGZhbmQgaWNoIGVpbmVuIHNlbHRlbgpzY2hsZWNodGVuIFByb3BhZ2FuZGFmaWxtCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEFiZXIgZXMgd2lsbCBqYSBpbW1lciBrZWluZXIgZ2xhdWJlIC4uLiAoR2xvaW5zb24sICA3LiBGZWIgMjAwNSwgMTY6MTk6NDEpOgp+IyEgcm49RWxiZXJldGggcnQ9MTEwNzc4OTUyNyByZz1zY2htYXJybgp+IyEgdGlkPTExMDc3ODUzODkKSWNoIG1hZyBNb29yZXMgU3RpbCB6dW5laG1lbmQgbmljaHQuIFBsYWV0c2NoZXJuZGVyIFNjaGVpc3NmaWxtIG1pdCBlaW4gcGFhcgp3aXR6aWdlbiBTemVuZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEFiZXIgZXMgd2lsbCBqYSBpbW1lciBrZWluZXIgZ2xhdWJlIC4uLiAoWm9vaywgIDcuIEZlYiAyMDA1LCAxNjozNDozNyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTA3Nzg5NTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzc4NTM4OQpQcm9ibGVtYXRpc2NoIHdpcmQgZXMsIHdlbm4gSGVyciBCdXNoIG9obmUgUmVkZW1hbnVza3JpcHQgc3ByaWNodC4gSWNoIGhhYmUKbWFsIGRpZSBUcmFuc2tyaWJ0aW9uIGRlciBQcmVzc2Vrb25mZXJlbnplbiBhdWYgd3d3LndoaXRlaG91c2UuZ292Cm5hY2hnZWxlc2VuLiBTZWhyIGludGVyZXNzYW50LCBkYXMgbXVzcyBpY2ggc2FnZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEFiZXIgZXMgd2lsbCBqYSBpbW1lciBrZWluZXIgZ2xhdWJlIC4uLiAoR2xvaW5zb24sICA3LiBGZWIgMjAwNSwgMTY6MzU6MjIpOgp+IyEgcm49Wm9vayBydD0xMTA3NzkwNDc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzc4NTM4OQpBbnkgcGFydGljdWxhciBsaW5rcyB0byByZWNvbW1lbmQ/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEFiZXIgZXMgd2lsbCBqYSBpbW1lciBrZWluZXIgZ2xhdWJlIC4uLiAoWm9vaywgIDcuIEZlYiAyMDA1LCAxNjozNzo1NCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTA3NzkwNTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzc4NTM4OQpFaWdlbnRsaWNoIG5pY2h0LiBJY2ggZ2xhdWIsIGplZGUgUHJlc3Nla29uZmVyZW56IGlzdCBkYSBCZWxlZyBnZW51Zy4gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogQWJlciBlcyB3aWxsIGphIGltbWVyIGtlaW5lciBnbGF1YmUgLi4uIChEYXJrbG9yLCAgNy4gRmViIDIwMDUsIDE2OjQ0OjU4KToKfiMhIHJuPVpvb2sgcnQ9MTEwNzc5MDY3NCByZz1zY2htYXJybgp+IyEgdGlkPTExMDc3ODUzODkKSGF0IGVyIGRhZnVlciBuaWNoIGF1Y2ggUmVkZW4/CgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogQWJlciBlcyB3aWxsIGphIGltbWVyIGtlaW5lciBnbGF1YmUgLi4uIChHbG9pbnNvbiwgIDcuIEZlYiAyMDA1LCAxNjo0OTowNCk6Cn4jISBybj1ab29rIHJ0PTExMDc3OTA2NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA3Nzg1Mzg5CkhtLiBEaWUgUHJlc3MgQnJpZWZpbmdzIG1pdCBpaG0gc2VsYnN0IGZpbmRlIGljaCBpcmdlbmR3aWUgbmljaHQgLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEFiZXIgZXMgd2lsbCBqYSBpbW1lciBrZWluZXIgZ2xhdWJlIC4uLiAoRGFya2xvciwgIDcuIEZlYiAyMDA1LCAxNjo1MDoxNik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTA3NzkxMzQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzc4NTM4OQpEaWUgaGF0IGVyIHdvaGwgdmVyc3RlY2t0IGJ6dy4gdmVyc3RlY2tlbiBsYXNzZW4uLi4KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBBYmVyIGVzIHdpbGwgamEgaW1tZXIga2VpbmVyIGdsYXViZSAuLi4gKEdsb2luc29uLCAgNy4gRmViIDIwMDUsIDE2OjU0OjMxKToKfiMhIHJuPURhcmtsb3IgcnQ9MTEwNzc5MTQxNiByZz1zY2htYXJybgp+IyEgdGlkPTExMDc3ODUzODkKQWguIFVudGVyICJNYWpvciBzcGVlY2hlcyIuIE1hbmNobWFsIG11c3MgbWFuIGRpZSBCcmlsbGUgcHV0emVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBBYmVyIGVzIHdpbGwgamEgaW1tZXIga2VpbmVyIGdsYXViZSAuLi4gKERhcmtsb3IsICA3LiBGZWIgMjAwNSwgMTY6NTU6NDMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwNzc5MTY3MSByZz1zY2htYXJybgp+IyEgdGlkPTExMDc3ODUzODkKV2FyIHNpZSBvYiBkZXIgdmllbGVuIHdhcm1lbiBMdWZ0IGJlc2NobGFnZW4/CgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogQWJlciBlcyB3aWxsIGphIGltbWVyIGtlaW5lciBnbGF1YmUgLi4uIChab29rLCAgNy4gRmViIDIwMDUsIDE2OjU2OjM5KToKfiMhIHJuPURhcmtsb3IgcnQ9MTEwNzc5MTc0MyByZz1zY2htYXJybgp+IyEgdGlkPTExMDc3ODUzODkKU2NoaWNrIHNpbmQgekIgZGllLCB3ZW5uIGVyIGVpbmVuIEdhc3QgaGF0dGUgdW5kIGRhbmFjaCBkaWUgUHJlc3NlCkZyYWdlbiB6dSBkZW0gVHJlZmZlbiBzdGVsbGVuIGRhcmYuLi4gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogQWJlciBlcyB3aWxsIGphIGltbWVyIGtlaW5lciBnbGF1YmUgLi4uIChLZWxseWJ1bmR5LCAgNy4gRmViIDIwMDUsIDE3OjIwOjAxKToKfiMhIHJuPVpvb2sgcnQ9MTEwNzc5MDQ3NyByZz1zY2htYXJybgp+IyEgdGlkPTExMDc3ODUzODkKVmllbCBwcm9ibGVtYXRpc2NoZXIgaXN0IGVzLCB3ZW5uIEdlb3JnZSBEYWJiZWxqdWggdmVyc3VjaHQsIHNlbGJzdGFlbmRpZyBuZQpCcmV6ZWwgenUgZnV0dGVybiwgT2huZSBDb25kaSB1bmQgTm90YXJ6dHRlYW0gOy0pCkJsb25kY2hlbgpQLlMuIEVuZGUgRmVicnVhciBrb21tdCBCdXNoIGhpZXJoZXIgbmFjaCBNYWluei4gT2Igc2llIGRhbm4gZGllIEJyZXplbHN0YWVuZGUKenVzY2h3ZWlzc2VuPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEFiZXIgZXMgd2lsbCBqYSBpbW1lciBrZWluZXIgZ2xhdWJlIC4uLiAoTW9udGFudXMsICA4LiBGZWIgMjAwNSwgMTU6MjQ6MjQpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMTA3NzkzMjAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNzc4NTM4OQpUamEuIEVpbmVyc2VpdHMgaG9mZmUgaWNoIGphLCBkYXNzIE1haW56IG5hY2ggZGVtIEJlc3VjaCBvZmZpemllbGwgenVyIEF4aXMgb2YKRXZpbCBnZWhvZXJ0LiBBbmRlcmVyc2VpdHMgd2FlcmUgZXMgc2NoYWRlIHVtIGRpZSBTdGFkdCwgZGVubiBkaWUgQm9tYmVyIGhhYmVuCmVzIGphIGxlaWRlciBuaWNodCB3ZWl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBdWZ3aWVkZXJzZWhlbiAoRGVlcGJsdWUsICA5LiBGZWIgMjAwNSwgMTE6Mjc6NDYpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTExMDc5Mzk4Mjcgcmc9d3d3Cn4jISB0aWQ9MTEwNzg3NTY4OApJY2ggZGVua2UsIGRhcyBoYXQgc2VpbmUgRnJhdSBpbiBzZWluZW0gQXVmdHJhZyBnZXNjaHJpZWJlbiAtIGRhbWl0IHdhciBzZWluCmxldHp0ZXIgV2lsbGUgZXJmdWVsbHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXVmd2llZGVyc2VoZW4gKEFuYXRvbCwgMTAuIEZlYiAyMDA1LCAyMToyODowMSk6Cn4jISBvbj1BbmF0b2wgb3Q9MTEwODA2NzI3MyBvZz13d3cKfiMhIHJuPUNhdHdlYXpsZSBydD0xMTA3OTM5ODI3IHJnPXd3dwp+IyEgdGlkPTExMDc4NzU2ODgKTGluayBwbGVhc2UgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgYmVzdGVuIFdlZ21lbGR1bmdlbiAuLi4gKExpYXJhLCAxMi4gRmViIDIwMDUsIDIyOjQxOjM5KToKTGlsbGVicm9yIGlzdCBhbHMgYWJ3ZXNlbmQgZ2VrZW5uemVpY2huZXQuCkdydW5kOiBJY2ggaWRsZSBtYWwsIGhpZXIgcGFzc2llcnQgZWggbml4IDopCgpOdSBzaW5kIHdpcidzIHNjaHVsZCAuLi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWUgYmVzdGVuIFdlZ21lbGR1bmdlbiAuLi4gKE11cGZlbCwgMTIuIEZlYiAyMDA1LCAyMzoxMTo1OCk6Cn4jISBybj1MaWFyYSBydD0xMTA4MjQ0NDk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwODI0NDQ5OQpNdWFkaWIgaXN0IGFscyBhYndlc2VuZCBnZWtlbm56ZWljaG5ldC4KR3J1bmQgIDogYmVpIGFyayBidWdzIGVpbmJhdWVuLCBkYW1pdCBlciBpbW1lciB3YXMgenUgdHVuIGhhdAoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGllIGJlc3RlbiBXZWdtZWxkdW5nZW4gLi4uIChEYXJrbG9yLCAxMi4gRmViIDIwMDUsIDIzOjE3OjUwKToKfiMhIHJuPU11cGZlbCBydD0xMTA4MjQ2MzE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwODI0NDQ5OQpKZXR6dCBmZWhsdCBkYSBudXIgbm9jaCwgZGFzcyBBcmsgT3JrcyBlaW5iYXV0LCBkYW1pdCBNdWFkaWIgaW1tZXIgd2FzIHp1IHR1bgpoYXQuLi4gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGllIGJlc3RlbiBXZWdtZWxkdW5nZW4gLi4uIChBcmssIDEzLiBGZWIgMjAwNSwgMTA6MjE6MjQpOgp+IyEgcm49TXVwZmVsIHJ0PTExMDgyNDYzMTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTA4MjQ0NDk5CkFlZWhoaD8gUmFjaGUgLi4uIFJhY2hlZWVlZSA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcGllbGVyaGlsZmUhIChBcmssIDEzLiBGZWIgMjAwNSwgMTE6MDk6NDgpOgpBbWFyeWxsaXMgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkFtYXJ5bGxpcyAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpbQWJlbnRldWVyOjxRdWVzdD5dIExvcmkgaGF0IGdlcmFkZSBlaW4gQWJlbnRldWVyIGJlc3RhbmRlbjogRmluZGUgZGllIEZlZQpbQWJlbnRldWVyOjxRdWVzdD5dIEFtYXJ5bGxpcwoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEViYXktR2V3aW5uc3BpZWwgKEFsa29ob2wsIDE0LiBGZWIgMjAwNSwgMTA6MjI6NTgpOgp+IyEgcm49Tm9ubmUgcnQ9MTEwODM3Mjg4NiByZz13d3cKfiMhIHRpZD0xMTA4MTAzODI5CnVuZCBiZXZvciBtYW5zIGthbm4gc3BpZWx0IG1hbiBkZW4gc2NobGFlY2h0ZXI/IDspCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZXIgaGF0IGRhIGFtIEJhdW0gZ2VzYWVndC4uLiAoRGFya2xvciwgMTQuIEZlYiAyMDA1LCAxNjoxMDo0OCk6ClJhbmdvcm4gICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkltIHZlcmxvcmVuZW4gTGFuZCBmYWVsbHQgZWluIEJhdW0gdW0uCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBFaW5tYWwgQnVyZ2VyIGZ1ZXIgMTAgTGV1dGUsIGJpdHRlIChIdW1uaSwgMTQuIEZlYiAyMDA1LCAyMDo0NToxOCk6Cn4jISBvbj1IdW1uaSBvdD0xMTA4NDEwMzE0IG9nPXd3dwp+IyEgcm49QWxrb2hvbCBydD0xMTA4NDEwMjA4IHJnPXd3dwp+IyEgdGlkPTExMDY2NTYzMjIKRFU/CgpPZWguCgpXb3cuIERhIG11c3MgaWNoIGhpbi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBFaW5tYWwgQnVyZ2VyIGZ1ZXIgMTAgTGV1dGUsIGJpdHRlIChIdW1uaSwgMTQuIEZlYiAyMDA1LCAyMDo0NjoxMCk6Cn4jISBybj1BbGtvaG9sIHJ0PTExMDg0MTAzMzYgcmc9d3d3Cn4jISB0aWQ9MTEwNjY1NjMyMgpXb3cuIEljaCBiaW4gd2FocmhhZnQgYmVlaW5kcnVja3QuIFVuZCBkYXMgbWVpbmUgaWNoIHZlcmRhbW10IGVybnN0Li4gZGFzIG11c3MKZWluIFN1cGVyLUxhZGVuIHNlaW4uLi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRWlubWFsIEJ1cmdlciBmdWVyIDEwIExldXRlLCBiaXR0ZSAoQWxrb2hvbCwgMTQuIEZlYiAyMDA1LCAyMTowNTozMyk6Cn4jISBybj1IdW1uaSBydD0xMTA4NDEwMzcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNjY1NjMyMgpuYWphIGRlciBoZWlzc3QgamEgYXVjaCBGYXRhbCAqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRvcHBlbHQgZ2V3dXJ6ZWx0ZSAoQ2F0d2VhemxlLCAxNC4gRmViIDIwMDUsIDIyOjIxOjA3KToKV2lzc2Vuc2NoYWZ0OkFsa29ob2wgd2Vpc3MgZWluZXIgd2llIG1hbiBtdWx0aXZhcmlhdGUgUG9seW5vbWUgcXVhZHJhdGZyZWkKV2lzc2Vuc2NoYWZ0OkFsa29ob2wgYmVrb21tdD8KV2lzc2Vuc2NoYWZ0OkFsa29ob2wgZ2lidHMgZGEgbmVuIGd1dGVuIGFsZ29yaXRobXVzPwpXaXNzZW5zY2hhZnQ6Q2F0d2VhemxlIG1hbiBxdWFkcmllcnQgZGFzIGRvcHBlbHRlIEdld3VyemVsdGUgZHVyY2ggZGVuCldpc3NlbnNjaGFmdDpDYXR3ZWF6bGUgRWlnZW53ZXJ0IGRlciBQb2x5bm9tc3R1ZmUuLi4KPiAKV2lzc2Vuc2NoYWZ0OkFsa29ob2wgd2FzIGhlaXNzdCBkYXM/Cldpc3NlbnNjaGFmdDpDYXR3ZWF6bGUgc2FndCBLYWRpcywgaWNoIGthbm4gZGEgbml4IGZ1ZXIgOikKPiAKV2lzc2Vuc2NoYWZ0OkFsa29ob2wga2ljaGVydApXaXNzZW5zY2hhZnQ6QWxrb2hvbCBzb3NvIDspCgppLkEuIFlUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmV0cm9jaGFydHMgKENhdHdlYXpsZSwgMTQuIEZlYiAyMDA1LCAyMjo1ODoyMCk6CltBbGxnZW1laW46SGF0ZV0gSGF0IGplbWFuZCBpbiBsZXR6dGVyIFplaXQgbWFsIERhbmNlciBnZXNlaGVuPwpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZXRyb2NoYXJ0cyAoTW9udGFudXMsIDE0LiBGZWIgMjAwNSwgMjM6MDE6NDIpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTExMDg0MTgzMDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA4NDE4MzAwCkRhbmNlciBpc3Qgc2NodWxkLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdlciBoYXQgZGEgYW0gQmF1bSBnZXNhZWd0Li4uIChSYW5nb3JuLCAxNS4gRmViIDIwMDUsIDExOjAwOjQ5KToKfiMhIHJuPURhcmtsb3IgcnQ9MTEwODM5Mzg0OCByZz1zY2htYXJybgp+IyEgdGlkPTExMDgzOTM4NDgKSXN0IGhhbHQgaW1tZXIgbm9jaCBkaWUgZWluZmFjaHN0ZSBBcnQsIGVpbmVtIEVsZmVuIGd1dGVuIFRhZy9Uc2NodWVzcyB6dQpzYWdlbiA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNvbmRlclN0YVRpIEJlcmxpbiAyMi4gRmVicnVhciAoTXVhZGliLCAxNi4gRmViIDIwMDUsIDE2OjA5OjMzKToKfiMhIHJuPURhcmtsb3IgcnQ9MTEwODU2NjUzMyByZz10cmVmZmVuCn4jISB0aWQ9MTEwODU1MTUxOQpuYSBjYXR3ZWF6bGUgaXN0IGltbWVyIGVpbiB3ZXJ3b2xmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTb25kZXJTdGFUaSBCZXJsaW4gMjIuIEZlYnJ1YXIgKEFsa29ob2wsIDE2LiBGZWIgMjAwNSwgMTY6MTA6NDEpOgp+IyEgcm49TXVhZGliIHJ0PTExMDg1NjY1NzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA4NTUxNTE5CnVuZCBtdWFkaWIgZ2Vob2VydCB6dW0gbGllYmVzcGFhcj8gOykKCkFsa2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNvbmRlclN0YVRpIEJlcmxpbiAyMi4gRmVicnVhciAoWm9vaywgMTYuIEZlYiAyMDA1LCAxNjozMjo1Nik6Cn4jISBybj1BbGtvaG9sIHJ0PTExMDg1NjY2NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA4NTUxNTE5CnNlaHIgd2l0emlnIDspCgp6b29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXMgcmVubnQgZGllIFplaXQgaW0gU2F1c2VzY2hyaXR0Li4uIChBbnRoZWEsIDE3LiBGZWIgMjAwNSwgMTY6MDA6NDgpOgpbaWNld2FyczpIaWdobGFuZGVyXSBJY2ggaGF0dGUgMTk6MjAgZ2VzYWd0PyBFcyBfaXN0XyAxOTIwLCBUYXJhbmlzIDopCkR1IGhvZXJzdCBkaWUgVWhyIHNjaGxhZ2VuOiBFcyBpc3QgamV0enQgMTYgVWhyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdGFtbXRpc2NoZSBLYXJsc3J1aGUgMTcuMi8yNC4yLzMuMy8xMC4zIChEZWVwYmx1ZSwgMTcuIEZlYiAyMDA1LCAyMjoyODoxNCk6Cn4jISBvbj1EZWVwYmx1ZSBvdD0xMTA4Njc1Njg0IG9nPXRyZWZmZW4KfiMhIHJuPUNyb2Z0IHJ0PTExMDg2NzU0Mzggcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTEwODY3NTQzOApTb2xhbmdlIGVzIGRhIGtlaW4gTUhTIGdpYnQgbG9obnQgc2ljaCBlaW4gS29tbWVuIGRvY2ggZ2FyIG5pY2h0IDotPgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTW9yYWw/IChHbG9pbnNvbiwgMjIuIEZlYiAyMDA1LCAxMjo1MDo1NCk6Cn4jISBybj1EYXJrbG9yIHJ0PTExMDkwNzI4MTIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTA4NzY1OTgyCkJlaSBGaWVsbWFubiBnaWJ0IGVzIEJyaWxsZW4gcmVjaHQgcHJlaXNndWVuc3RpZy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBXYXJ1bSBEdSBrZWluIEluZm9ybWF0aWtlciB3ZXJkZW4gc29sbHRlc3QhIChDaGFnYWxsLCAyOC4gRmViIDIwMDUsIDIwOjE3OjUxKToKfiMhIHJuPUFsa29ob2wgcnQ9MTEwOTYxNzc5NSByZz13aXR6ZQp+IyEgdGlkPTExMDk1ODg5MTUKQWxzbyBpY2ggZnJhZyBtaWNoIGVoZXIsIHdvaGVyIERlZXBibHVlIHNvdmllbCB1ZWJlciBQcm9zdGl0dWllcnRlCndlaXNzLgoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFdhcnVtIER1IGtlaW4gSW5mb3JtYXRpa2VyIHdlcmRlbiBzb2xsdGVzdCEgKEdyaW1tYm9ybiwgMjguIEZlYiAyMDA1LCAyMDoxODozMyk6Cn4jISBybj1DaGFnYWxsIHJ0PTExMDk2MTgyNzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA5NTg4OTE1CkR1IHdpbGxzdCBpaG0gdW50ZXJzdGVsbGVuLCBtaXQgc2VpbmVyIFNjaHdlc3RlciBrZWluZW4gS29udGFrdCB6dSBoYWJlbj8KCkdkQSBnZCZyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWdpZXIgLi4uIChMaWFyYSwgMjguIEZlYiAyMDA1LCAyMjo0MzoyMyk6CkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBzZWl0IHdhbm4ga29tbWVuIHp3ZXJnZSBlaWdlbnRsaWNoIG51ciB6dW0KRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGlkbGVuIGhlciA7LwpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogYWxzbyBpY2ggYXJiZWl0ZSA6KQpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogZHUgYmlzdCB6d2VyZz8KRGVpbiBGcmV1bmQgRm9vYmFyIHRlaWx0IERpciBtaXQ6IEphLgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogbmVuZWVlZSBpY2ggbWVpbmUgYXJrIDopCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBqYQpEZWluIEZyZXVuZCBUaWxseSB0ZWlsdCBEaXIgbWl0OiBBcmsgaXN0IFp3ZXJnPwpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogZHUgdGF1Y2hzdCBiZWkga3dlciB6d2VyZyBhYmVyIG5ldCBhdWYKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGphIGhhdCBlciBnZXJhZGUgZ2VzYWd0CkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBkYXNzIERVIHp3ZXJnIGJpc3Qgd2Vpc3MgaWNoIGphIEZvb2JhciA7KQpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogc2Nob24gaW1tZXIKRGVpbiBGcmV1bmQgRm9vYmFyIHRlaWx0IERpciBtaXQ6IEtsYXIsIGljaCB0YXVjaGUgamEgYXVjaCBiZWkga3dlciB6d2VyZyBhdWYKRGVpbiBGcmV1bmQgRm9vYmFyIHRlaWx0IERpciBtaXQ6IDpvKQpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogYXJrIHNhZ3QgZXIgaXN0IHNjaG9uIGltbWVyIHp3ZXJnIHRpbGx5IDspCkRlaW4gRnJldW5kIEZvb2JhciB0ZWlsdCBEaXIgbWl0OiBad2VyZyBUaWxseT8KRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGplbWFuZCBzb2xsdGUgZGVtIG11ZCBzYWdlbiBkYXNzIGFyayB6d2VyZyBpc3QKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IDspCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBoeWxhciwgYmVyZ3p3ZXJnZSBhdXMga3J5bm4KRGVpbiBGcmV1bmQgVGlsbHkgdGVpbHQgRGlyIG1pdDogQWgsIG5hIGRhIGtlbm4gaWNoIG5vY2ggd2VuIDopCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiB0aWxseSBpcyBhdWNoIHp3ZXJnIGRhcyBpcyBrbGEKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGhtIGRhcyBtdWQgd2Vpc3Mgdm9uIGRpciBhdWNoIG5peCB0aWxseSA7KQpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogc296dXNhZ2VuIGRpZSBoYXJkY29yZQpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogZ3JpbW1iZWlzc2VyendvY2tlbHN0ZWluZ3JhYnZhcmlhbnRlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERlZXBibHVlLCAgMS4gTWFyIDIwMDUsIDEyOjE1OjA3KToKW0FiZW50ZXVlcjpTaGluXSB3ZW5uIGljaCB2b24gc2lsdmFuYSBrb21tZSwgYnJhdWNoZSBpY2ggZG9jaCBkdXJjaCBrZWluZQpbQWJlbnRldWVyOlNoaW5dIHN1bXBmIHp1IGdlaGVuLCB1bSB6dW0ga2FyYXdhbmVucGxhdHogenUga29tbWVuLCBvZGVyPwpbVG9kOkxhcnNdIEVpbiBTdW1wZiBoYXQgZ2VyYWRlIFNoaW4gdW1nZWJyYWNodC4KW1RvZDpFaW4gU3VtcGYgYmx1YmJlcnQgbGVpc2UuXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoSHVyYXhwcmF4LCAgMS4gTWFyIDIwMDUsIDE0OjQ2OjU0KToKfiMhIHJuPURlZXBibHVlIHJ0PTExMDk2NzU3MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA5Njc1NzA3Cm5vY2htYWwgRkxXOgoKPFRhbmppYW4+IFNoaW4gZXNwZXJ0OiBiZXNvZmZlbnNlaW4gdW5kIGthZW1wZmVuIHBhc3N0IHdvaGwgbmljaHQKW1RvZDpMYXJzXSBFaW4gU2FtdXJhaSBoYXQgZ2VyYWRlIFNoaW4gdW1nZWJyYWNodC4KW1RvZDpFaW4gU2FtdXJhaV0gVmllbGVpY2h0IGtsYXBwdCBlcyBqYSBiZWltIG5hZWNoc3RlbiBNYWwsIFNoaW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMVyAoRGFya2xvciwgIDIuIE1hciAyMDA1LCAwNDowNjo0Myk6Cn4jISBybj1IdXJheHByYXggcnQ9MTEwOTY4NDgxNCByZz1zY2htYXJybgp+IyEgdGlkPTExMDk2NzU3MDcKUm9mbC4KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IExpZWZlcmJlc3RhZXRpZ3VuZyBIb2NoemVpdHNkYXJiaWV0dW5nZW4gKEFsa29ob2wsICAyLiBNYXIgMjAwNSwgMTI6MjU6NTIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwOTc2MTI1OSByZz1wYXJ0eQp+IyEgdGlkPTExMDk2NjgwMzAKdW5kIHdlbj8KCkFsa2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IExpZWZlcmJlc3RhZXRpZ3VuZyBIb2NoemVpdHNkYXJiaWV0dW5nZW4gKEdyaW1tYm9ybiwgIDIuIE1hciAyMDA1LCAxMjozMDo1Nik6Cn4jISBybj1BbGtvaG9sIHJ0PTExMDk3NjI3NTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA5NjY4MDMwCkhtbSwgYWxzbywgd2VubiBpY2ggaW0gU29tbWVyIGR1cmNoIGRlbiBQYXJrIGxhdWZlLCBkYW5uIHNlaGUgaWNoIGF1ZiBkZW4KQmFlbmtlbiByZWxhdGl2IHZpZWxlIExldXRlLCBkaWUgenVtaW5kZXN0IGRlbiBFaW5kcnVjayBtYWNoZW4sIG1pdCBBbGtvaG9sCnZlcmhlaXJhdGV0IHp1IHNlaW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTGllZmVyYmVzdGFldGlndW5nIEhvY2h6ZWl0c2RhcmJpZXR1bmdlbiAoQWxrb2hvbCwgIDIuIE1hciAyMDA1LCAxMjozMToyMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEwOTc2MzA1NiByZz1zY2htYXJybgp+IyEgdGlkPTExMDk2NjgwMzAKaWNoIGJpbiBrZWluIE11bHRpZ2FtaXN0IDspCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBMaWVmZXJiZXN0YWV0aWd1bmcgSG9jaHplaXRzZGFyYmlldHVuZ2VuIChNdWFkaWIsICAyLiBNYXIgMjAwNSwgMTM6MjY6NDkpOgp+IyEgcm49QWxrb2hvbCBydD0xMTA5NzYzMDgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwOTY2ODAzMApkdSBzcGllbHN0IG51ciBlaW4gc3BpZWw/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBMaWVmZXJiZXN0YWV0aWd1bmcgSG9jaHplaXRzZGFyYmlldHVuZ2VuIChMaWFyYSwgIDIuIE1hciAyMDA1LCAxNDoxNTo1MCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTA5NzY5MjI4IHJnPXBhcnR5Cn4jISB0aWQ9MTEwOTY2ODAzMApJY2ggYmluIFp3ZXJnLiBXYXMgaGFiZSBpY2ggbWl0IFNjaHdhbmdlcnNjaGFmdGVuIHp1IHR1bj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IExpZWZlcmJlc3RhZXRpZ3VuZyBIb2NoemVpdHNkYXJiaWV0dW5nZW4gKEdsb2luc29uLCAgMi4gTWFyIDIwMDUsIDE0OjE2OjU2KToKfiMhIHJuPUxpYXJhIHJ0PTExMDk3NjkzNTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA5NjY4MDMwCkF1ZiBad2VyZ2Ugc2luZCBsZWJlbmRnZWJhZXJlbmQuIEhhdCBNYW53ZSBtaXQgSWxsdXZhdGFyIC4uLiBvZGVyIHdhciBkYXMgT2RpbgouLi4gZWdhbC4gQWJlciBqYSBhdWYgR2VudXNzZ2lmdGUgd2llIFN0b2xsZW4gZ3JhYmVuIHZlcnppY2h0ZW4hCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTGllZmVyYmVzdGFldGlndW5nIEhvY2h6ZWl0c2RhcmJpZXR1bmdlbiAoTGlhcmEsICAyLiBNYXIgMjAwNSwgMTQ6MTc6MTgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwOTc2OTQxNiByZz1zY2htYXJybgp+IyEgdGlkPTExMDk2NjgwMzAKV2lyIHZlcm1laHJlbiB1bnMgZHVyY2ggWmVsbHRlaWx1bmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBMaWVmZXJiZXN0YWV0aWd1bmcgSG9jaHplaXRzZGFyYmlldHVuZ2VuIChHbG9pbnNvbiwgIDIuIE1hciAyMDA1LCAxNDoxODoyOCk6Cn4jISBybj1MaWFyYSBydD0xMTA5NzY5NDM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwOTY2ODAzMApJc3QgZG9jaCBhYiBlaW5lbSBiZXN0aW1tdGVuIFB1bmt0IGRhcyBnbGVpY2hlLiBPZGVyIG1laW5zdCBkdSwgS2luZGVyIHdhY2hzZW4KaW0gQmF1Y2ggZGVyIE1hbWkgZHVyY2ggbWFnaXNjaGUgVGVsZXBvcnRhdGlvbiBoZXJhbj8gVm9yc2ljaHQgYmVpbSBLbm9zcGVuLApuaWNodCBtaXQgZGVtIEtpbmQgd28gYW5zdG9zc2VuIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IExpZWZlcmJlc3RhZXRpZ3VuZyBIb2NoemVpdHNkYXJiaWV0dW5nZW4gKExpYXJhLCAgMi4gTWFyIDIwMDUsIDE0OjI1OjEwKToKfiMhIHJuPUdsb2luc29uIHJ0PTExMDk3Njk1MDggcmc9c2NobWFycm4KfiMhIHRpZD0xMTA5NjY4MDMwClogRSBMIEwgVCBFIEkgTCBVIE4gRyAuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogTGllZmVyYmVzdGFldGlndW5nIEhvY2h6ZWl0c2RhcmJpZXR1bmdlbiAoR2xvaW5zb24sICAyLiBNYXIgMjAwNSwgMTQ6MzA6MTcpOgp+IyEgcm49TGlhcmEgcnQ9MTEwOTc2OTkxMCByZz1zY2htYXJybgp+IyEgdGlkPTExMDk2NjgwMzAKTSBJIFQgTyBTIEU/CgpNZWluc3QgZHUgZXR3YSwgZGllIE1laW9zZSBnZWh0IGRlbiBnYW56ZW4gV2VnLCBiaXMgZGFzIEtpbmQgbmFjaCA5IE1vbmF0ZW4KcmF1c2tvbW10PyBEYW5uIG11ZXNzdGVuIGRhIGFiZXIgZ3JvZXNzZXJlIE1lbmdlbiBlaW5nZWZ1ZWxsdCB3ZXJkZW4gLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IExpZWZlcmJlc3RhZXRpZ3VuZyBIb2NoemVpdHNkYXJiaWV0dW5nZW4gKExpYXJhLCAgMi4gTWFyIDIwMDUsIDE0OjM2OjM3KToKfiMhIHJuPUdsb2luc29uIHJ0PTExMDk3NzAyMTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA5NjY4MDMwCkljaCB2ZXJzdGVoZSBrZWluIFdvcnQgdm9uIGRlbSwgd2FzIGR1IHNjaHJlaWJzdC4gV2FzIGlzdCBkZW5uIGFuIFplbGx0ZWlsdW5nCnNvIHNjaHdlciB6dSB2ZXJzdGVoZW4/IDspCgpMYXNzIHVucyBtYWwgYmVpIGVpbmVtIEJpZXJjaGVuIHVlYmVyIGRpZSBzcGV6aWVsbGVuIFNjaHdpZXJpZ2tlaXRlbiBkZXMKTWV0YWxsYWJiYXVzIGluIGRlciBTU1AgKHVudGVyIGJlc29uZGVyZXIgQmVydWVja3NpY2h0aWd1bmcgZGVyClJvdGdvbGRwcm9ibGVtYXRpayB1bmQgZGVzIEhvYmJpdGxlaWhhcmJlaXRlcnN0cmVpa3MpIHJlZGVuLiBEYXMgd2FlcmUgZWluCmludGVyZXNzYW50ZXMgVGhlbWEuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTGllZmVyYmVzdGFldGlndW5nIEhvY2h6ZWl0c2RhcmJpZXR1bmdlbiAoR2xvaW5zb24sICAyLiBNYXIgMjAwNSwgMTQ6Mzk6NDUpOgp+IyEgcm49TGlhcmEgcnQ9MTEwOTc3MDU5NyByZz1zY2htYXJybgp+IyEgdGlkPTExMDk2NjgwMzAKR2FyIG5pY2h0cy4gTnVyIHdhcnVtIHNvbGwgZGljaCBlaW5nZXNjaGxlY2h0bGljaGUgRm9ydHBmbGFuenVuZyBkdXJjaApaZWxsdGVpbHVuZyBtaXQgZGVyIE5vdHdlbmRpZ2tlaXQgZGVyIFVudGVyc3R1ZXR6dW5nIGRlcyBad2VpdGtvZXJwZXJzIHVuZApkYW1pdCBkZXIgU29yZ2ZhbHRzcGZsaWNodCBlbnRoZWJlbj8KRGVpbiBCaWVyY2hlbiBnaWJ0IGVzIGFsc28gbnVyLCB3ZW5uIGRhIG5pY2h0IGdyYWQgZWluZSBLbm9zcGUgYXVzIGRpcgpoZXJhdXNyYWd0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBMaWVmZXJiZXN0YWV0aWd1bmcgSG9jaHplaXRzZGFyYmlldHVuZ2VuIChHcmltbWJvcm4sICAyLiBNYXIgMjAwNSwgMTQ6Mzk6NTcpOgp+IyEgcm49TGlhcmEgcnQ9MTEwOTc3MDU5NyByZz1zY2htYXJybgp+IyEgdGlkPTExMDk2NjgwMzAKVGF0c2FlY2hsaWNoIHNpbmQgZXMgTW9lbmNoZSB1bmQgTm9ubmVuLCBkaWUgc2ljaCBwZXIgWmVsbHRlaWx1bmcgdmVybWVocmVuLApuaWNodCBkaWUgWndlcmdlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTGllZmVyYmVzdGFldGlndW5nIEhvY2h6ZWl0c2RhcmJpZXR1bmdlbiAoR2xvaW5zb24sICAyLiBNYXIgMjAwNSwgMTQ6NDA6NTcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMDk3NzA3OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA5NjY4MDMwClp3ZXJnZSBoYWJlbiBlaW5lIGhvaGUgQWZmaW5pdGFldCB6dW0gS2xlcmlrYWxlbi4gRGFoZXIgc2ljaGVyIGRpZQpWZXJ3ZWNoc2x1bmdzZ2VmYWhyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBMaWVmZXJiZXN0YWV0aWd1bmcgSG9jaHplaXRzZGFyYmlldHVuZ2VuIChMaWFyYSwgIDIuIE1hciAyMDA1LCAxNDo0MToyNSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTA5NzcwNzg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwOTY2ODAzMApLbm9zcGVuIHNpbmQgRWxmZW5rcmFtLiBVbmQgd2FydW0gc29sbHRlIGF1c3NlciBtZWluZXIgQXh0IG9kZXIgbWVpbmVtClphdWJlcnN0YWIgZXR3YXMgYXVzIG1pciBoZXJhdXNyYWdlbj8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBMaWVmZXJiZXN0YWV0aWd1bmcgSG9jaHplaXRzZGFyYmlldHVuZ2VuIChHbG9pbnNvbiwgIDIuIE1hciAyMDA1LCAxNDo0Mjo0MSk6Cn4jISBybj1MaWFyYSBydD0xMTA5NzcwODg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwOTY2ODAzMApXZWlsIGR1IGhvZmZlbnRsaWNoIGtlaW4gRWluemVsbGVyIGJpc3QuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IExpZWZlcmJlc3RhZXRpZ3VuZyBIb2NoemVpdHNkYXJiaWV0dW5nZW4gKExpYXJhLCAgMi4gTWFyIDIwMDUsIDE0OjUxOjUxKToKfiMhIHJuPUdsb2luc29uIHJ0PTExMDk3NzA5NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA5NjY4MDMwCkhtLCBrb21pc2NoLCBkYXNzIGR1IGVpbmVuIFp3ZXJnZW5uYW1lbiB0cmFlZ3N0LiBEdSBzY2hlaW5zdCBkaWNoIGRlbiBnYW56ZW4KVGFnIG51ciBtaXQgRWxmZW5rb21wbGl6aWVydGhlaXRlbiB6dSBiZXNjaGFlZnRpZ2VuLiA7KSBKZWRlbmZhbGxzIGtsaW5nc3QgZHUKc28hIEljaCBmaW5kZSBaZWxsdGVpbHVuZyB2b2VsbGlnIGF1c3JlaWNoZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IExpZWZlcmJlc3RhZXRpZ3VuZyBIb2NoemVpdHNkYXJiaWV0dW5nZW4gKEdsb2luc29uLCAgMi4gTWFyIDIwMDUsIDE0OjUzOjM3KToKfiMhIHJuPUxpYXJhIHJ0PTExMDk3NzE1MTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA5NjY4MDMwCkVzIGdpYnQgc29uZSB1bmQgc29sY2hlIFp3ZXJnZS4gV2llIGR1IGRpY2ggaW5zIGRhcyBlbGZpc2NoIGRvbWluaWVydGUKWmF1YmVyemV1Z3MgdmVyaXJydCBoYXN0IGZyYWd0IGphIGF1Y2gga2VpbmVyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBMaWVmZXJiZXN0YWV0aWd1bmcgSG9jaHplaXRzZGFyYmlldHVuZ2VuIChMaWFyYSwgIDIuIE1hciAyMDA1LCAxNDo1NzozMyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTA5NzcxNjE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwOTY2ODAzMApEYSB3YXIgZGllc2VyICpodXN0KiBVbmZhbGwgbWl0IGRpZXNlbSBtYWdpc2NoZW4gTWV0YWxsIHVuZCBhdWYgZWlubWFsIGhhdHRlCmljaCBkaWVzZXMgQmVkdWVyZm5pcyAuLi4gTmFqYSwgZHUgd2Vpc3N0IHNjaG9uLiBOZWUsIGR1IHdlaXNzdCBuaWNodC4gQWJlcgplZ2FsLiBaZWxsdGVpbHVuZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBMaWVmZXJiZXN0YWV0aWd1bmcgSG9jaHplaXRzZGFyYmlldHVuZ2VuIChNdWFkaWIsICAyLiBNYXIgMjAwNSwgMTc6MjU6MjEpOgp+IyEgcm49TGlhcmEgcnQ9MTEwOTc3MTg1MyByZz1zY2htYXJybgp+IyEgdGlkPTExMDk2NjgwMzAKWndlcmdlIHNpbmQgbmljaHQgbGViZW5kZ2ViYWVyZW5kISBBYmVyIG1pdCBkZXIgTWV0YWxsbGFibGF1cyBoYXQgZGVyClp3ZXJnZW5uYWNod3VjaHMgaW4gZGVyIFRhdCB3YXMgenUgdHVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IExpZWZlcmJlc3RhZXRpZ3VuZyBIb2NoemVpdHNkYXJiaWV0dW5nZW4gKFpvb2ssICAyLiBNYXIgMjAwNSwgMTc6MjU6NTMpOgp+IyEgcm49TXVhZGliIHJ0PTExMDk3ODA3MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA5NjY4MDMwCldvaGVyIG5pbW1zdCBEdSBEZWluIFdpc3NlbiB1ZWJlciBad2VyZ2U/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IExpZWZlcmJlc3RhZXRpZ3VuZyBIb2NoemVpdHNkYXJiaWV0dW5nZW4gKExpYXJhLCAgMi4gTWFyIDIwMDUsIDE3OjI2OjIzKToKfiMhIHJuPVpvb2sgcnQ9MTEwOTc4MDc1MyByZz1zY2htYXJybgp+IyEgdGlkPTExMDk2NjgwMzAKV2VyIGhhdCBnZXNhZ3QsIGRhc3MgZGFzIFdpc3NlbiBpc3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogTGllZmVyYmVzdGFldGlndW5nIEhvY2h6ZWl0c2RhcmJpZXR1bmdlbiAoTGlhcmEsICAyLiBNYXIgMjAwNSwgMTc6MjY6NTEpOgp+IyEgcm49TGlhcmEgcnQ9MTEwOTc4MDc4MyByZz1zY2htYXJybgp+IyEgdGlkPTExMDk2NjgwMzAKTmFjaHRyYWc6IEVyIGhhdCBuaXJnZW5kd28gWmVsbHRlaWx1bmcgZ2VzY2hyaWViZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogTGllZmVyYmVzdGFldGlndW5nIEhvY2h6ZWl0c2RhcmJpZXR1bmdlbiAoQWxrb2hvbCwgIDIuIE1hciAyMDA1LCAxNzoyNzozMyk6Cn4jISBybj1MaWFyYSBydD0xMTA5NzgwODExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwOTY2ODAzMApoYWJlbiB6d2VyZ2UgdWViZXJoYXVwdCBzb3dhcyB3aWUgemVsbGVuPwoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IExpZWZlcmJlc3RhZXRpZ3VuZyBIb2NoemVpdHNkYXJiaWV0dW5nZW4gKE11YWRpYiwgIDIuIE1hciAyMDA1LCAxNzoyOTozMSk6Cn4jISBybj1BbGtvaG9sIHJ0PTExMDk3ODA4NTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA5NjY4MDMwCndhcyBzb2xsIGRpZSBmcmFnZSwgendlaWZlbHN0IGR1IG1laW5lIHp3ZXJnZW5rdW5kZSBhbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBMaWVmZXJiZXN0YWV0aWd1bmcgSG9jaHplaXRzZGFyYmlldHVuZ2VuIChMaWFyYSwgIDIuIE1hciAyMDA1LCAxNzozMTowOSk6Cn4jISBybj1NdWFkaWIgcnQ9MTEwOTc4MDk3MSByZz1zY2htYXJybgp+IyEgdGlkPTExMDk2NjgwMzAKSWNoIHR1IGRhcy4gS2xhci4gU2NobGllc3NsaWNoIGhhc3QgZHUgZGEgd2FzIHVlYmVyIExhZXVzZSBnZXNjaHJpZWJlbi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBMaWVmZXJiZXN0YWV0aWd1bmcgSG9jaHplaXRzZGFyYmlldHVuZ2VuIChNdWFkaWIsICAyLiBNYXIgMjAwNSwgMTc6Mzc6NDUpOgp+IyEgcm49TGlhcmEgcnQ9MTEwOTc4MTA2OSByZz1zY2htYXJybgp+IyEgdGlkPTExMDk2NjgwMzAKd2FzIGhhc3QgZHUgZ2VnZW4gZGllIG1ldGFsbGxhYmxhdXM/CmRhcyBpc3QgZWluIGV0d2EgZGFja2VsZ3Jvc3NlcyB0aWVyIG1pdCBnb2xkc2NoaW1tZXJuZGVtLCBkaWNodGVtIHd1c2NoZWxmZWxsLAprdXJ6ZW4gYmVpbmVuLCBncm9zc2VuIHNjaHdhcnplbiBhdWdlbiwgendlaSBmdWVobGVybiBtaXQgcGVsemJvbW1lbG4gYW0gZW5kZQp1bmQgZWluZW0gZW5vcm1lbiBiZWlzc3dlcmt6ZXVnLiBtYW4ga29lbm50ZSBzaWUgZWluc2V0emVuIHVtIGdvbGRhZGVybiB6dQplbnRkZWNrZW4sIGxhZXNzdCBkYXMgYWJlciwgZGEgc2llIHNpY2ggc29uc3Qgc29mb3J0IHVlYmVyIGRhcyBnb2xkIGhlcm1hY2hlbi4KYWxzIGhhdXN0aWVyZSBzaW5kIHNpZSBuaWNodCBzb25kZXJsaWNoIGJlbGllYnQsIGRhIHNpZSBlaW5pZ2UgYmVzaXR6ZXIgaW4gZGVuCnJ1aW4gZ2VmcmVzc2VuIGhhYmVuIChzY2hhdHprYW1tZXIgbmljaHQgYWJnZXNjaGxvc3NlbikuCnNpZSBrb2VubmVuIGdhbnogdG9sbCBzaW5nZW4gdW5kIGhvZXJlbiBmYXN0IGFsbGUgYXVmIGRlbiBuYW1lbiBIZWluemkuCmFsc28Kd2FzIGhhc3QgZHUgZ2VnZW4gZGllc2UgcHV0emlnZW4gdGllcmNoZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogTGllZmVyYmVzdGFldGlndW5nIEhvY2h6ZWl0c2RhcmJpZXR1bmdlbiAoR2xvaW5zb24sICAyLiBNYXIgMjAwNSwgMTc6NDI6MzIpOgp+IyEgcm49TXVhZGliIHJ0PTExMDk3ODE0NjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA5NjY4MDMwClNpbGJlci4gRGF2b24gYmVrb21tZW4gc2llIG5hZW1saWNoIFNjaHVwcGVuZmxlY2h0ZSB1bmQgTmV1cm9tZXRhbGxpdGlzLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBMaWVmZXJiZXN0YWV0aWd1bmcgSG9jaHplaXRzZGFyYmlldHVuZ2VuIChNdWFkaWIsICAyLiBNYXIgMjAwNSwgMTg6MTA6NDkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEwOTc4MTc1MiByZz1zY2htYXJybgp+IyEgdGlkPTExMDk2NjgwMzAKbWV0YWxsbGFibGF1c3F1YWVsZXIhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogTGllZmVyYmVzdGFldGlndW5nIEhvY2h6ZWl0c2RhcmJpZXR1bmdlbiAoTGlhcmEsICAyLiBNYXIgMjAwNSwgMTg6MTU6MjUpOgp+IyEgcm49TXVhZGliIHJ0PTExMDk3ODE0NjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA5NjY4MDMwCkhhc3QgZHUgc2Nob25tYWwgdm9uIFRydWVmZmVsc2Nod2VpbmVuIGdlaG9lcnQ/IDspIEFsc28gdm9uIExhZXVzZW4gaGFzdCBkdQpqZWRlbmZhbGxzIGF1Y2gga2VpbmUgQWhudW5nLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IExpZWZlcmJlc3RhZXRpZ3VuZyBIb2NoemVpdHNkYXJiaWV0dW5nZW4gKERhcmtsb3IsICAyLiBNYXIgMjAwNSwgMjM6NDY6MTApOgp+IyEgcm49TGlhcmEgcnQ9MTEwOTc4MzcyNSByZz1zY2htYXJybgp+IyEgdGlkPTExMDk2NjgwMzAKVmxsdCBzb2xsdGUgbWFuIGRpZSBad2VyZ2UgaW4gR29sZW1zIHVtYmVuZW5uZW4uLi4KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRldXRzY2hlIEZpbG1laW5zdHVmdW5nZW4gKERlZXBibHVlLCAgMy4gTWFyIDIwMDUsIDA4OjMwOjQ1KToKRlNLIDEyIGJlZGV1dGV0OgpEZXIgSGVsZCBrcmllZ3QgZGFzIE1hZWRjaGVuLgpGU0sgMTYgYmVkZXV0ZXQ6CkRlciBCb2VzZSBrcmllZ3QgZGFzIE1hZWRjaGVuLgpGU0sgMTggYmVkZXV0ZXQ6CkplZGVyIGtyaWVndCBkYXMgTWFlZGNoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXb3JsZCBvZiBXYXJjcmFmdCAoTGlhcmEsICAzLiBNYXIgMjAwNSwgMTM6MjQ6MDkpOgp+IyEgcm49Q3JvZnQgcnQ9MTEwOTg0Nzc5MiByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMTA4MTM5MTcyCk1laW5lIEd1ZXRlLCBzZWlkIGlociBzdWVjaHRpZyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFeHRyYSBmdWVyIFRhcmFuaXMgdW5kIHNvbnN0aWdlLCBkaWUgZXMgdmVycGFzc3QgaGFiZW4gOykgKE5pYmVsLCAgMy4gTWFyIDIwMDUsIDE0OjI4OjIxKToKfiMhIHJuPU1pcmlsIHJ0PTExMDk4NTY0MjMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTA5ODU2NDIzCldhcyBlaW4gU3Bla3Rha2VsLCBkYWZ1ZXIgaGFldHQgc2ljaCBkYXMgQXVmYmxlaWJlbiBqYSBkaXJla3QgZ2Vsb2hudC4uLgogIC0gTmliZWwKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IExpZWZlcmJlc3RhZXRpZ3VuZyBIb2NoemVpdHNkYXJiaWV0dW5nZW4gKE11YWRpYiwgIDMuIE1hciAyMDA1LCAxNDozMjowOSk6Cn4jISBybj1MaWFyYSBydD0xMTA5NzgzNzI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwOTY2ODAzMApwZmZmZmZmZmZmCmJsb3NzIHdlaWwgZHUga2VpbmUgc28gZGV0YWlsaWVydGVuIGtlbm50bmlzc2UgenVyIG1ldGFsbGxhYmxhdXMgaGFzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IExpZWZlcmJlc3RhZXRpZ3VuZyBIb2NoemVpdHNkYXJiaWV0dW5nZW4gKEthcmlzLCAgMy4gTWFyIDIwMDUsIDE2OjUxOjIxKToKfiMhIHJuPU11YWRpYiBydD0xMTA5ODU2NzI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwOTY2ODAzMApLYW5uIG1pciBlaW5lciBlcmtsYWVyZW4sIHNlaXQgd2FubiBad2VyZ2UgWmVsbGVuIGhhYmVuPz8gSWNoIGRhY2h0ZSBpbW1lciwKZGllIGJlc3RlaGVuIG51ciBhdXMgQmFydC4gSWNoIGtvZW5udGUgZWluZXIgQmFydHRlaWx1bmdzdGhlcm9yaWUgZHVyY2hhdXMKZm9sZ2VuIC4uLiB1bmQgZGFubiBmcmFndCBzaWNoIG5vY2gsIHdpZSBkZXIgbmV1ZSBad2VyZyBzZWluZSBBeHQga3JpZWd0LgpLbGFlcnQgbWljaCBhdWYhCgpLYXJpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IExpZWZlcmJlc3RhZXRpZ3VuZyBIb2NoemVpdHNkYXJiaWV0dW5nZW4gKFd1cnplbCwgIDQuIE1hciAyMDA1LCAxMDoyMToyNyk6Cn4jISBybj1LYXJpcyBydD0xMTA5ODY1MDgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwOTY2ODAzMAp6d2VyZ2UgYmVzdGVoZW4gbmljaHQgbnVyIGF1cyBiYWVydGVuLiBkdSBoYXN0IGRlbiBkcmVjayB2ZXJnZXNzZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogTGllZmVyYmVzdGFldGlndW5nIEhvY2h6ZWl0c2RhcmJpZXR1bmdlbiAoRGFya2xvciwgIDQuIE1hciAyMDA1LCAxODozNTowMSk6Cn4jISBybj1XdXJ6ZWwgcnQ9MTEwOTkyODA4NyByZz1zY2htYXJybgp+IyEgdGlkPTExMDk2NjgwMzAKVGphamEgWndlcmdlIGJlc3RlaGVuIGhhbHQgYXVzIEtvbXBsZXhlbi4uLgoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IExpZWZlcmJlc3RhZXRpZ3VuZyBIb2NoemVpdHNkYXJiaWV0dW5nZW4gKE11YWRpYiwgIDQuIE1hciAyMDA1LCAyMzowMToxOCk6Cn4jISBybj1EYXJrbG9yIHJ0PTExMDk5NTc3MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA5NjY4MDMwCnVuZCBtZWhyZmFjaCBnZXNhZXR0aWd0ZW4gZHJlY2tmZXR0ZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVW5peC1TcGV6aWFsaXN0IEFueW9uZT8gKEJpZWxlZmVsZCwgIDUuIE1hciAyMDA1LCAyMDoxMzoxOSk6Cn4jISBybj1EYXJrbG9yIHJ0PTExMTAwNDk5NDUgcmc9YW56ZWlnZW4KfiMhIHRpZD0xMTEwMDQ5NDMyCkVyIHNjaHdlaWd0IHNpY2ggamEgaW1tZXJoaW4gbm9jaCBkYXJ1ZWJlciBhdXMsIHdlciBhdXMgZGVyIEZpcm1hCmFsbGVzIGltIE1HIHVudGVyd2VncyBpc3QgOy0pCgotQmllbGVmZWxkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBVbml4LVNwZXppYWxpc3QgQW55b25lPyAoWm9vaywgIDUuIE1hciAyMDA1LCAyMDo1NjoxNSk6Cn4jISBybj1CaWVsZWZlbGQgcnQ9MTExMDA0OTk5OSByZz1zY2htYXJybgp+IyEgdGlkPTExMTAwNDk0MzIKV2FzIGltIEhpbmJsaWNrIGF1ZiBkaWUgVGVhbS1BcmJlaXQgdW5kIFBlcnNvbmFsa29tcGVudGVueiBuYXR1ZXJsaWNoCmJlc29uZGVycyBicmlzYW50IGlzdC4uLgoKWm9vayBpc3QgZXMgbmljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgc29sbCBtYW4gZGEgbWFjaGVuLi4/IChab29rLCAgNy4gTWFyIDIwMDUsIDE0OjAxOjU5KToKTmVzYWphIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KTmVzYWphIHJ1ZnQ6IFpPT0sKTmVzYWphIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXMgc29sbCBtYW4gZGEgbWFjaGVuLi4/IChBbWFyeWxsaXMsICA3LiBNYXIgMjAwNSwgMTQ6MDI6NTUpOgp+IyEgcm49Wm9vayBydD0xMTEwMjAwNTE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMDIwMDUxOQpTY2huZWxsZXIgcmVhZ2llcmVuLgoKSFRILApBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWb20gQXVzc3RlcmJlbiBiZWRyb2h0PyAoRGVlcGJsdWUsICA4LiBNYXIgMjAwNSwgMTI6MTI6NTcpOgprd2VyIG5pY2h0IGlkbGUgdW5kIG5pY2h0IHdlZwogICAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEaWUsICA4LiBNYXIgMjAwNSwgMTI6MTI6MTMgKDcgVGVpbG5laG1lcikKCktuYXJ6Li4uLi4uLi4uLi4ucyBCZXR0eS4uLi4uLi4uLi4uLlMgU3VwZXJzb25pYy4uLi4uLi5TIEdhYnRlc3QuLi4uLi4uLi4uVApNY2RlZS4uLi4uLi4uLi4uLlMgQWxrb2hvbC4uLi4uLi4uLi5tIEhpZ2hsYW5kZXIuLi4uLi4uVwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWb20gQXVzc3RlcmJlbiBiZWRyb2h0PyAoWm9vaywgIDguIE1hciAyMDA1LCAxNToxNDoyMCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMTEwMjgwMzc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMDI4MDM3Nwo+IGt3ZXIgZ29ldHRlcgoKICAgICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIERpZSwgIDguIE1hciAyMDA1LCAxNToxNDowMiAoMSBUZWlsbmVobWVyKQoKWm9vay4uLi4uLi4uLi4uLi5HCgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVm9tIEF1c3N0ZXJiZW4gYmVkcm9odD8gKERlZXBibHVlLCAgOC4gTWFyIDIwMDUsIDE1OjQ5OjQwKToKfiMhIHJuPVpvb2sgcnQ9MTExMDI5MTI2MCByZz1zY2htYXJybgp+IyEgdGlkPTExMTAyODAzNzcKSW4gRGVpbmVyIGRyZWllaW5pZ2tlaXQgYmlzdCBEdSBkb2NoIHNvd2llc28gZWluemlnYXJ0aWcgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBWb20gQXVzc3RlcmJlbiBiZWRyb2h0PyAoQW50aGVhLCAgOC4gTWFyIDIwMDUsIDE1OjUwOjA0KToKfiMhIHJuPURlZXBibHVlIHJ0PTExMTAyOTMzODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwMjgwMzc3CldpZSB2ZXJtZWhyZW4gc2ljaCBkZW5uIEdvZXR0ZXI/IER1cmNoIFplbGx0ZWlsdW5nPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVm9tIEF1c3N0ZXJiZW4gYmVkcm9odD8gKENhdHdlYXpsZSwgIDguIE1hciAyMDA1LCAxNTo1MDozNCk6Cn4jISBybj1BbnRoZWEgcnQ9MTExMDI5MzQwNCByZz1zY2htYXJybgp+IyEgdGlkPTExMTAyODAzNzcKQXNzaW1pbGF0aW9uLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBWb20gQXVzc3RlcmJlbiBiZWRyb2h0PyAoRGVlcGJsdWUsICA4LiBNYXIgMjAwNSwgMTU6NTA6MzgpOgp+IyEgcm49QW50aGVhIHJ0PTExMTAyOTM0MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwMjgwMzc3CkR1cmNoIEFic2Vua2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBWb20gQXVzc3RlcmJlbiBiZWRyb2h0PyAoTXVhZGliLCAgOC4gTWFyIDIwMDUsIDE1OjUxOjEyKToKfiMhIHJuPURlZXBibHVlIHJ0PTExMTAyOTM0Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwMjgwMzc3CnNpZSB2ZXJtZWhyZW4gc2ljaCBuaWNodAp6dW1pbmRlc3QgaW4gZGVuIGxldHp0ZW4gamFocmVuIG5pY2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBWb20gQXVzc3RlcmJlbiBiZWRyb2h0PyAoRGVlcGJsdWUsICA4LiBNYXIgMjAwNSwgMTU6NTE6NTApOgp+IyEgcm49TXVhZGliIHJ0PTExMTAyOTM0NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwMjgwMzc3ClN0aW1tdCBhdWNoLCBhYmVyIGF1cyBCb2luZyBpc3QgWm9vayBnZXdvcmRlbi4gTXV0YXRpb24/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBWb20gQXVzc3RlcmJlbiBiZWRyb2h0PyAoR2xvaW5zb24sICA4LiBNYXIgMjAwNSwgMTU6NTM6MTYpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTExMDI5MzUxMCByZz1zY2htYXJybgp+IyEgdGlkPTExMTAyODAzNzcKRXZvbHV0aW9uIGF1ZiBaZWxsZWJlbmUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogVm9tIEF1c3N0ZXJiZW4gYmVkcm9odD8gKEJvaW5nLCAgOC4gTWFyIDIwMDUsIDE2OjI5OjA1KToKfiMhIHJuPUdsb2luc29uIHJ0PTExMTAyOTM1OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwMjgwMzc3CkljaCBkZW1lbnRpZXJlIGVudHNjaGllZGVuIHp1IFpvb2sgbXV0aWVydCB6dSBzZWluLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBWb20gQXVzc3RlcmJlbiBiZWRyb2h0PyAoR2xvaW5zb24sICA4LiBNYXIgMjAwNSwgMTY6Mjk6MjcpOgp+IyEgcm49Qm9pbmcgcnQ9MTExMDI5NTc0NSByZz1zY2htYXJybgp+IyEgdGlkPTExMTAyODAzNzcKRWluIENsb3duIHZpZWxsZWljaHQ/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmFjaHRzIGltIE1HIChNaXJpbCwgIDkuIE1hciAyMDA1LCAwNjoyMTo1Nik6CkVyd2FydGV0IChvZmZsaW5lKTogUGl0ZmFsbApEdSBob2Vyc3QgZGllIFVociBzY2hsYWdlbjogRXMgaXN0IGpldHp0IDMgVWhyLgpEZWluIFBsdWVzY2hwYW50aGVyIHNjaGxpZXNzdCBzZWluZSBBdWdlbiwgc2NobnVycnQgbm9jaCBlaW5tYWwgenVmcmllZGVuIHVuZApzY2hsYWVmdCBkYW5uIGxhbmdzYW0gZWluLgpFcndhcnRldCAob2ZmbGluZSk6IEtpcmlhCkR1IGhvZXJzdCBkaWUgVWhyIHNjaGxhZ2VuOiBFcyBpc3QgamV0enQgNCBVaHIuCkRlaW4gUGx1ZXNjaHBhbnRoZXIgc2NobnVycnQgRGljaCB6dWZyaWVkZW4gYW4uCkVyd2FydGV0IChvZmZsaW5lKTogQWthc2hhCkRlaW4gUGx1ZXNjaHBhbnRoZXIga3VzY2hlbHQgc2ljaCB6YWVydGxpY2ggYW4gRGljaCBhbi4KRHUgaG9lcnN0IGRpZSBVaHIgc2NobGFnZW46IEVzIGlzdCBqZXR6dCA1IFVoci4KRXJ3YXJ0ZXQgKG9mZmxpbmUpOiBHbG9pbnNvbgpEdSBob2Vyc3QgZGllIFVociBzY2hsYWdlbjogRXMgaXN0IGpldHp0IDYgVWhyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2NocmVjayEgKERhcmtsb3IsICA5LiBNYXIgMjAwNSwgMTk6NTU6NTYpOgpTbyBlaW4gUmVoIGlzdCBqYSBzZWhyIGxlaWNodCB6dSBlcnNjaHJlY2tlbi4uLiA7KQoKQmFtYmkgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKW0thdHplbmtyaWVnZXI6RGFya2xvcl0gQnVoIQpbS2F0emVua3JpZWdlcjpCYW1iaV0gQXJnaCEKQmFtYmkgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2NocmVjayEgKE11YWRpYiwgIDkuIE1hciAyMDA1LCAxOTo1NjozOCk6Cn4jISBybj1EYXJrbG9yIHJ0PTExMTAzOTQ1NTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwMzk0NTU2Cm1lbnNjaCwgdW5kIGljaCB3YXIgc28ga3VyeiB2b3IgZGVtIGJsYXR0c2NodXNzCmltbWVyIGRpZXNlIGthdHplbmtyaWVnZXIKd2lyZCB3aWVkZXIgbml4IG1pdCByZWhicmF0ZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2NocmVjayEgKENoYWdhbGwsICA5LiBNYXIgMjAwNSwgMjA6MjM6MTEpOgp+IyEgcm49TXVhZGliIHJ0PTExMTAzOTQ1OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwMzk0NTU2CkRhbm4gbWFjaCBoYWx0IEthdHplbmJyYXRlbi4KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW5hdG9saXNjaGVyIFdlaXNza29obGF1ZmxhdWYgKEFtYXJ5bGxpcywgIDkuIE1hciAyMDA1LCAyMDozNTo1Nyk6Cn4jISBybj1QZXJkaXRhIHJ0PTExMTAzOTU2MDEgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xMTEwMzk1NjAxCkljaCB3ZWlzcyBuaWNodCwgb2IgZGFzIG1pdCBBbmF0b2wgZGEgZHJpbiBub2NoIG11bmRlbiB3dWVyZGUuLi4gOikKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IF9LX2VpbmUgUGFydHlhbmt1ZW5kaWd1bmcgKEFsa29ob2wsIDEwLiBNYXIgMjAwNSwgMTc6MTM6MDkpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTExMDQ1ODgxMSByZz10cmVmZmVuCn4jISB0aWQ9MTExMDQ1NDQxMgpvcmdhbmlzaWVyc3QgZHUgZWluZT8gCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHb2V0dGVyIHNpbmQgc2NobmVsbGVyIC4uLiAoTGlhcmEsIDEwLiBNYXIgMjAwNSwgMTg6MTg6MjIpOgpEZWluIEZyZXVuZCBab29rIHRlaWx0IERpciBtaXQ6IHJlClpvb2sgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBfS19laW5lIFBhcnR5YW5rdWVuZGlndW5nIChHcmltbWJvcm4sIDEwLiBNYXIgMjAwNSwgMTk6MDA6MzIpOgp+IyEgb249TW9udGFudXMgb3Q9MTExMDQ3MzI4OSBvZz1wYXJ0eS5iZWthbm50bWFjaHVuZ2VuCn4jISBybj1DYXR3ZWF6bGUgcnQ9MTExMDQ1NDQxMiByZz1wYXJ0eS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTExMDQ1NDQxMgpNb2luIG1vaW4hCgpXZW5uIGRhcyBoaWVyIGdlcmFkZSBpbiBpc3Q6CgpIaWVyIG1pdCBtb2VjaHRlIGljaCBiZWthbm50Z2ViZW4sIGRhc3MgYW0gV29jaGVuZW5kZSAyMy4gRGV6ZW1iZXIgX0tlaW5lXwpQYXJ0eSBzdGF0dGZpbmRldC4gSmVkZW5mYWxscyBrZWluZSBvZmZpemllbGxlIE11ZHBhcnR5LgoKTnVyIGRhc3Mgc2ljaCBkYSBuaWVtYW5kIHZlcnR1dC4gOy0pCgpZVE0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogX0tfZWluZSBQYXJ0eWFua3VlbmRpZ3VuZyAoRGFya2xvciwgMTAuIE1hciAyMDA1LCAyMzoxMDowMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTExMDQ3NzYzMiByZz1zY2htYXJybgp+IyEgdGlkPTExMTA0NTQ0MTIKV28gZmluZGV0IHdhcnVtIGtlaW5lIFBhcnR5IHN0YXR0PwoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IF9LX2VpbmUgUGFydHlhbmt1ZW5kaWd1bmcgKEdyaW1tYm9ybiwgMTEuIE1hciAyMDA1LCAxMDoyOTowMSk6Cn4jISBvbj1NaWV6ZSBvdD0xMTEwNTMxNzgyIG9nPXBhcnR5LmJla2FubnRtYWNodW5nZW4KfiMhIHJuPUNhdHdlYXpsZSBydD0xMTEwNDU0NDEyIHJnPXBhcnR5LmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTEwNDU0NDEyCgpXaWUgZ3V0LCBzb25zdCBoYWV0dGUgaWNoIGRhIGtlaW4gZnJlaWVzIFdvY2hlbmVuZGUgO28pKSkKCk1pZXplCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTYWNoZW4gZ2lwcyAuLi4gKExpYXJhLCAxMy4gTWFyIDIwMDUsIDE5OjAyOjQxKToKSW4gbWVpbmVtIDg2OS1TZWVsZW4tRG9yZiByYWV1bXQgc29lYmVuIGVpbiBTY2hsZWNrZXIgZWluIExhZGVubG9rYWwgZWluIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNhY2hlbiBnaXBzIC4uLiAoQW5hdG9sLCAxMy4gTWFyIDIwMDUsIDE5OjA0OjM1KToKfiMhIHJuPUxpYXJhIHJ0PTExMTA3MzY5NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwNzM2OTYxCldlbm4gZG9ydCBtb3JnZW4gZWluZSBQb3N0ZmlsaWFsZSBlcm9lZmZuZXQgd2lyZCwgZ2xhdWIgaWNoIGFuIFd1bmRlci4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNhY2hlbiBnaXBzIC4uLiAoTGlhcmEsIDEzLiBNYXIgMjAwNSwgMTk6MTg6MDkpOgp+IyEgcm49QW5hdG9sIHJ0PTExMTA3MzcwNzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwNzM2OTYxCkhtLCB6YWVobHQgZWluIEJyaWVma2FzdGVuIDIgSGFldXNlciB3ZWl0ZXI/IE9id29obCAuLi4gaGllciBpc3QgZWlnZW50bGljaAphbGxlcyAyIEhhZXVzZXIgd2VpdGVyIC4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2FjaGVuIGdpcHMgLi4uIChXdXJ6ZWwsIDE0LiBNYXIgMjAwNSwgMTU6MTg6MDQpOgp+IyEgcm49TGlhcmEgcnQ9MTExMDczNzg4OSByZz1zY2htYXJybgp+IyEgdGlkPTExMTA3MzY5NjEKZnVlciBlaW5lIHBvc3RmaWxpYWxlIG11ZXNzdGUgZXMgd2lya2xpY2ggZWluIHd1bmRlciBzZWluLiBsZXR6dGUgd29jaGUgaGF0CnVucyBoaWVyIGVpbiBwb3N0dmVydHJldGVyIGVya2xhZXJ0LCB3YXJ1bSBkaWUgYW4gc2ljaCBndXQgd2lydHNjaGFmdGVuZGUgdW5kCnJlbnRhYmxlIGZpbGlhbGUgaW0gdGFudGUgZW1tYSBsYWRlbiBpbSBuYWNoYmFyZG9yZiBzY2hsaWVzc2VuIG11c3M6IHNpZSBpc3QKcG9saXRpc2NoIG5pY2h0IHZlcnBmbGljaHRlbmQgdm9yZ2VzY2hyaWViZW4sIGRhIGVzIHdlbmlnZXIgYWxzIDIwMDAgZWlud29obmVyCmluIGRlbSB0ZWlsZG9yZiBnaWJ0LiB3aXJ0c2NoYWZ0bGljaGtlaXQgaXN0IGRhYmVpIGtlaW4gYXJndW1lbnQgZnVlciBkaWVzZXMKdG9sbGUgYm9lcnNlbm5vdGllcnRlIHVudGVybmVobWVuLiBndXQsIGRhc3MgaWNoIGtlaW5lIGFrdGllbiB2b24gZGVuZW4gaGFiZSwKc29uc3QgbXVlc3N0ZSBpY2ggc2llIGpldHp0IHZlcmthdWZlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFcmZhaHJ1bmdlbiBtaXQgQ2ljZXJvbmUgKEdsb2luc29uLCAxNC4gTWFyIDIwMDUsIDE1OjUwOjU5KToKfiMhIHJuPVpvb2sgcnQ9MTExMDgwODYzMiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMTA4MDg2MzIKQW5kZXJlIG5lbm5lbiBkYXMgYXVjaCAiU3VwcG9ydC1FdmFsdWllcnVuZyIgdW5kICJQZXJzb25hbGdlc3ByYWVjaCIgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTYWNoZW4gZ2lwcyAuLi4gKExpYXJhLCAxNC4gTWFyIDIwMDUsIDE3OjE0OjAyKToKfiMhIHJuPVd1cnplbCBydD0xMTEwODA5ODg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMDczNjk2MQpKYSwgaW4gbWVpbmVtIEV4LURvcmYgd2FyIGVzIGdlbmF1c28uIFNlaXRkZW0gaGFiZW4gZGllIGZ1c3NrcmFua2VuIExldXRlIGVpbgplY2h0ZXMgUHJvYmxlbSBvZGVyIGVpbiBBdXRvIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU2FjaGVuIGdpcHMgLi4uIChab29rLCAxNC4gTWFyIDIwMDUsIDE3OjE1OjI2KToKfiMhIHJuPUxpYXJhIHJ0PTExMTA4MTY4NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwNzM2OTYxCmluIGVpbmVtIHVuc2VyZXIga2FlZmZlciBoaWVyIGRydW0gcnVtIGdpYnRzIGJhbGQgc28gbmVuIHBha2V0LWFiaG9sLWRpZW5zdCwKYmVpIGRlbSBtYW4gYXVjaCBicmllZm1hY2tlbiB1bmQgc28gbmVuIGtyYW0ga2F1ZmVuIGthbm4uIAoKem9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNhY2hlbiBnaXBzIC4uLiAoQ2hhZ2FsbCwgMTQuIE1hciAyMDA1LCAxNzoxNzozMCk6Cn4jISBybj1ab29rIHJ0PTExMTA4MTY5MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwNzM2OTYxCldhcnVtIHNvbGx0ZSBtYW4gQnJpZWZlIG1pdCBNYWNrZW4ga2F1ZmVuPyBJY2ggbmVobSBsaWViZXIgb3JkZW50bGljaGUuCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTYWNoZW4gZ2lwcyAuLi4gKExpYXJhLCAxNC4gTWFyIDIwMDUsIDE5OjA0OjExKToKfiMhIHJuPVpvb2sgcnQ9MTExMDgxNjkyNiByZz1zY2htYXJybgp+IyEgdGlkPTExMTA3MzY5NjEKSmEsIGRhcyBnaWJ0IGVzIGluIG1laW5lbSBFeC1Eb3JmIGpldHp0IGF1Y2guIEFiZXIgZGFzIGhhdCBkaWVzZXMgc2VsdHNhbWUKT2VmZm51bmdzemVpdGVucGhhZW5vbWVuIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhpcHBlIChHbG9pbnNvbiwgMTQuIE1hciAyMDA1LCAxOToxODoxMSk6Cn4jISBybj1XdXJ6ZWwgcnQ9MTExMDgyNDA4NyByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTExMTA4MjQwODcKV2FubiBnaWJ0IGVzIE5hY2h3dWNocz8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGhpcHBlIChXdXJ6ZWwsIDE0LiBNYXIgMjAwNSwgMTk6MTk6NTEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTExMDgyNDI5MSByZz1zY2htYXJybgp+IyEgdGlkPTExMTA4MjQwODcKdWViZXIgZGFzIGFsdGVyIGlzdCBlcm5hIHdvaGwgaGluYXVzLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTYWNoZW4gZ2lwcyAuLi4gKERlZXBibHVlLCAxNS4gTWFyIDIwMDUsIDA3OjAyOjA5KToKfiMhIHJuPUxpYXJhIHJ0PTExMTA4MjM0NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwNzM2OTYxCklzdCBoYWx0IGZ1ZXIgUmVudG5lciBnZWRhY2h0LiBXZW5uIGRpZSB1bSA3IGJlaW0gQXJ6dCBhbnN0ZWhlbiB1bmQgZGFubiB1bSAxMApkb3J0IHdpZWRlciByYXVza29tbWVuLCBtYWNodCBkZXIgUGFrZXRrbGF1cyBhdWYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb25zdCBnZWh0cyBub2NoLi4uPyAoWm9vaywgMTUuIE1hciAyMDA1LCAxNDo1NTo0Mik6Ck11YWRpYiBmYWVsbHQgdG90IHp1IEJvZGVuLgpEdSBzaWVoc3QgZWluZSBkdW5rbGUgR2VzdGFsdCwgZGllIGV0d2FzIER1bnN0IGVpbnNhbW1lbHQgLi4uIG9kZXIgdmllbGxlaWNodApiaWxkZXN0IGR1IERpciBkYXMgYXVjaCBudXIgZWluIC4uLgpNdWFkaWIgdmVyc2Nod2luZGV0IGdhbnogbGVpc2UuCltUb2Q6TGFyc10gTXVhZGliIGhhdCBnZXJhZGUgTXVhZGliIHVtZ2VicmFjaHQuCk11YWRpYiBlcnNjaGVpbnQuCgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTb25zdCBnZWh0cyBub2NoLi4uPyAoWm9vaywgMTUuIE1hciAyMDA1LCAxNDo1NTo1OCk6Cn4jISBybj1ab29rIHJ0PTExMTA4OTQ5NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwODk0OTQyCkVpbmUgTGVpY2hlIHdpcmQgdm9uIE11YWRpYiB2b2xsIEhpbmdlYnVuZyB2ZXJzcGVpc3QuCgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU29uc3QgZ2VodHMgbm9jaC4uLj8gKE11YWRpYiwgMTUuIE1hciAyMDA1LCAxNDo1Njo0OCk6Cn4jISBybj1ab29rIHJ0PTExMTA4OTQ5NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwODk0OTQyCmphamEgaWNoIGJpbiBhdXRvZmFnZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU29uc3QgZ2VodHMgbm9jaC4uLj8gKFd1cnplbCwgMTUuIE1hciAyMDA1LCAxNDo1NzowNik6Cn4jISBybj1NdWFkaWIgcnQ9MTExMDg5NTAwOCByZz1zY2htYXJybgp+IyEgdGlkPTExMTA4OTQ5NDIKd2llIHVuYXBwZXRpdGxpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTb25zdCBnZWh0cyBub2NoLi4uPyAoWm9vaywgMTUuIE1hciAyMDA1LCAxNDo1ODo0MCk6Cn4jISBybj1XdXJ6ZWwgcnQ9MTExMDg5NTAyNiByZz1zY2htYXJybgp+IyEgdGlkPTExMTA4OTQ5NDIKdm9yIGFsbGVtOiB3byBzdGVja3QgZXIgZGFzIGFsbGVzIGhpbj8gOykKCnpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGEgLi4uIChQaXRmYWxsLCAxNi4gTWFyIDIwMDUsIDE4OjUwOjAyKToKRXJ3YXJ0ZXQgIChvbmxpbmUpOiBBcmF0aG9ybgpEZWluIEZyZXVuZCBBcmF0aG9ybiBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuClZvbiBGcmV1bmRpbiBHd2VuaWxpOiBvY2hlbnNwaW1tZWwhClZvbiBGcmV1bmQgQXJhdGhvcm46IG5haG10CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYWhhIC4uLiAoTXVhZGliLCAxNi4gTWFyIDIwMDUsIDE5OjUzOjIxKToKfiMhIHJuPVBpdGZhbGwgcnQ9MTExMDk5NTQwMiByZz1zY2htYXJybgp+IyEgdGlkPTExMTA5OTU0MDIKaWNoIHdpbGwgbml4IHdlaXRlciB2b24gd2lzc2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggd2Vpc3MgZXMsIGljaCB3ZWlzcyBlcyAuLi4gKEFyaywgMTYuIE1hciAyMDA1LCAyMjowODo0Mik6CkRlaW4gRnJldW5kIEFyYXRob3JuIHRlaWx0IERpciBtaXQ6IGhtcGYuIGVya2xhZXIgbWlyIG1hbCB3ZXIsIHdvIGRlcgpEZWluIEZyZXVuZCBBcmF0aG9ybiB0ZWlsdCBEaXIgbWl0OiBrbGF1bmNoZXIgYWJnZWJsaWViZW4gaXN0Li4uCkR1IHNwdWVyc3QgZWluZW4gU3Ryb20gZGVyIE1hY2h0IGF1cyBkZW0gcmFiZW5zY2h3YXJ6ZW4gUmluZyBpbiBEZWluZSBIYW5kCmZsaWVzc2VuLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IENvbXB1dGVyLUF1ZGlvIGVudGJydW1tZW4uIChOb25uZSwgMTcuIE1hciAyMDA1LCAxMzozMTowMyk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTExMTA2MjUxMyByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTExMTEwNTkxMTAKRGllIFBvdGVudGlhbCBvZGVyIGRpZSBBdXNnbGVpY2hzdHJvbT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdGFtbXRpc2NoZSBLYXJsc3J1aGUgMjQuMy8zMS4zLzcuNC8xNC40LzIxLjQgKERlZXBibHVlLCAxOC4gTWFyIDIwMDUsIDEwOjA5OjQzKToKfiMhIHJuPUNyb2Z0IHJ0PTExMTExMzQyOTAgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTExMTEzNDI5MAppY2ggbmVnaG0gbWFsIGFuLCBpbiBkaWUgU2NoYXVmZW5zdGVyIGtvbW1lbiBqdW5nZSBEYW1lbiBtaXQgcm9ldGxpY2hlcgpIaW50ZXJncnVuZGJlbGV1Y2h0dW5nIC0gc28gd2llIGRhIGRpZSBTdHJhc3NlIHJ1bnRlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdGFtbXRpc2NoZSBLYXJsc3J1aGUgMjQuMy8zMS4zLzcuNC8xNC40LzIxLjQgKExpYXJhLCAxOC4gTWFyIDIwMDUsIDIwOjIxOjU2KToKfiMhIHJuPUNyb2Z0IHJ0PTExMTExMzQyOTAgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTExMTEzNDI5MApIYXQgZXMgZWluIE11ZHN0YW1tdGlzY2ggbWFsIHdpZWRlciBnZXNjaGFmZnQsIGVpbmVuIEdhc3Rob2YvZWluZSBLbmVpcGUKenVncnVuZGUgenUgcmljaHRlbj8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3RhbW10aXNjaGUgS2FybHNydWhlIDI0LjMvMzEuMy83LjQvMTQuNC8yMS40IChNdWFkaWIsIDE4LiBNYXIgMjAwNSwgMjE6NDI6NDUpOgp+IyEgcm49TGlhcmEgcnQ9MTExMTE3MzcxNiByZz1zY2htYXJybgp+IyEgdGlkPTExMTExMzQyOTAKbmVpbgp3aXIgc2luZCBzY2hvbiBzZWl0IG1laHJlcmVuIG1vbmF0ZW4gYXVmIGFzeWx0b3VyLCB3ZWlsIGRlciB2ZXJwYWVjaHRlcgp1bmJlZGluZ3QgZGVuIG5hY2hmb2xnZXIgc2VpbmVzIHBhZWNodGVycyBzZWxic3QgYXVzc3VjaGVuIG11c3N0ZSB1bmQgZGFiZWkKa2VpbiBnb2xkZW5lcyBoYWVuZGNoZW4gemVpZ3RlCmRpZSBzY2hsaWVzc3VuZ3NhbnplaWNoZW4gc2luZCBzb21pdCBmdWVyIHVucyBkaWUgaG9mZm51bmcgd2llZGVyIGluIHVuc2VyZQpzdGFtbWdlZmlsZGUgZWluemllaGVuIHp1IGtvZW5uZW4sIHNvbGx0ZSBlcyBlaW5lbiBha3plcHRhYmxlbiBuYWNoZm9sZ2VyCmdlYmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFN0YW1tdGlzY2hlIEthcmxzcnVoZSAyNC4zLzMxLjMvNy40LzE0LjQvMjEuNCAoQ3JvZnQsIDE4LiBNYXIgMjAwNSwgMjE6NTY6MDEpOgp+IyEgcm49TGlhcmEgcnQ9MTExMTE3MzcxNiByZz1zY2htYXJybgp+IyEgdGlkPTExMTExMzQyOTAKRWhlciBkaWUgQWJ3ZXNlbmhlaXQgZWluZXMgc29sY2hlbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2FtcGZicm90IChMaWFyYSwgMTguIE1hciAyMDA1LCAyMjowMjo0Mik6Cn4jISBybj1BcmF0aG9ybiBydD0xMTExMTc4ODA3IHJnPWQuZWJlbmUKfiMhIHRpZD0xMTExMTc4ODA3CkhtLCBqZXR6dCB3ZXJkZW4gYWxzbyBhdWNoIG5vY2ggZGllIFp3ZXJnZSBnZXppZWx0IGRpc2tyaW1pbmllcnQ/IDspIEplZGVyIGhhdAplaW4gUmVjaHQgYXVmIFZlcmxlcm5lbiBlaW5lcyBTa2lsbHMhIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEthbXBmYnJvdCAoUm9uZGEsIDE4LiBNYXIgMjAwNSwgMjI6MDM6MzgpOgp+IyEgcm49TGlhcmEgcnQ9MTExMTE3OTc2MiByZz1zY2htYXJybgp+IyEgdGlkPTExMTExNzg4MDcKU2VpdCB3YW5uIGlzdCAid2FzY2hlbiIgZWluIFNraWxsPyBVbmQgWndlcmdlIHNvbGxlbiBkZW4gX3Zlcmxlcm50XyBoYWJlbj8/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEthbXBmYnJvdCAoTXVhZGliLCAxOC4gTWFyIDIwMDUsIDIyOjIyOjEyKToKfiMhIHJuPUFyYXRob3JuIHJ0PTExMTExNzg4MDcgcmc9ZC5lYmVuZQp+IyEgdGlkPTExMTExNzg4MDcKYmFlZWVoIGFid2VydHVuZyBkZXMgdmVybGVybmVucwptaXN0CndhcyBzb2xsIGRhcwpub2VlZWVlZWVlZWVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEthbXBmYnJvdCAoQ2hhZ2FsbCwgMTguIE1hciAyMDA1LCAyMjoyNDowNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTExMTE4MDkzMiByZz1zY2htYXJybgp+IyEgdGlkPTExMTExNzg4MDcKV2FzIGhhdCBkZW4gTm9lbCBtaXQgZGVtIEthbXBmYnJvdCB6dSB0dW4/CgpNQywgYWhudW5nc2xvcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1laHIgRGV0YWlscyBhbHMgZ2V3dWVuc2NodCAoTWFoYXJldCwgMjAuIE1hciAyMDA1LCAxNDoyMzoyNyk6CigxNDoyMykgPC0gRGVpbiBGcmV1bmQgTXVhZGliOiBkYWZ1ZXIgaXN0IHJsIGRlciBzZXggZWluZmFjaCBiZXNzZXIKKDE0OjIzKSA8LSBEZWluIEZyZXVuZCBNdWFkaWI6IGJpbiBhdWNoIG1hbCB3aWVkZXIgaWRsZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGloaSAoQWxrb2hvbCwgMjEuIE1hciAyMDA1LCAxOTo0NDo0OCk6CgpWb24geHh4OiBudXIgZGFzcyBpY2ggMyBhbmxhZXVmZSBmdWVyIGRpZSBzeW50YXggZ2VicmF1Y2h0IGhhYiA6KAoKaWNoIHNhZyBkYTogdWViZW4gOikKCkFsa2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV0ZGlnZXN0IC4uLiAoQmFtYnVsa28sIDIyLiBNYXIgMjAwNSwgMjA6Mzg6NDgpOgp+IyEgcm49RGFya2xvciBydD0xMTExNTIwMTk4IHJnPXNjaG1hcnJuLm5ldGRpZ2VzdAp+IyEgdGlkPTExMTE1MTk2NjIKRGFzIGlzdCBkYW5uIGFiZXIgZWluIFRhc3RhdHVybGFlbmdzZWwuCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogZ2llcmlnZSBrb2JvbGRlIChDcm9mdCwgMjMuIE1hciAyMDA1LCAxODo1NjoyNCk6Cn4jISBybj1XdXJ6ZWwgcnQ9MTExMTYwMDQzNiByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTExMDUwNTY2NDcKUGFjayBlcyBlaW5mYWNoIGluIGlyZ2VuZGVpbiBTZWhlcmhhdXMgdW5kIFpvb2sga3VlbW1lcnQgc2ljaCBkYW5uIGRydW0gLC0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogZ2llcmlnZSBrb2JvbGRlIChNYWhhcmV0LCAyMy4gTWFyIDIwMDUsIDE4OjU2OjU4KToKfiMhIHJuPUNyb2Z0IHJ0PTExMTE2MDA1ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MDU2NjQ3CkljaCBzdGVsbGUgbWVpbnMgenVyIFZlcmZ1ZWd1bmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBnaWVyaWdlIGtvYm9sZGUgKENoYWdhbGwsIDIzLiBNYXIgMjAwNSwgMTg6NTg6MTYpOgp+IyEgcm49TWFoYXJldCBydD0xMTExNjAwNjE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTA1NjY0NwpBbHRlcm5hdGl2IGtvZW5udGUgbWFuIGRhcyBaZXVnIGF1Y2ggaW4gZGllc2VuIEtsb2FrZW5yYXVtIG1vdmVuLCB1bmQKaW1tZXIgd2VubiBlaW5lciByZWluZmFlbGx0LCBrYW5uIGVyIGVyc3QgcmF1cyB3ZW5uIGVyIGV0d2FzIG1pdC0KZ2Vub21tZW4gaGF0LgoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGdpZXJpZ2Uga29ib2xkZSAoV3VyemVsLCAyMy4gTWFyIDIwMDUsIDE4OjU4OjIyKToKfiMhIHJuPU1haGFyZXQgcnQ9MTExMTYwMDYxOCByZz1zY2htYXJybgp+IyEgdGlkPTExMDUwNTY2NDcKaWNoIGtvZW5udGUgZGFzIGhhdXMgdm9uIGR1bXBmYmFja2UgbmVobWVuLCBkYXMgd2FlcmUgYXVjaCBnZWVpZ25ldCA6KQp3ZXIgZXMgZmluZGV0LCBkYXJmIGRhbm4gZGFzIHpldWcgYXVjaCBiZWhhbHRlbiAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGdpZXJpZ2Uga29ib2xkZSAoTXVhZGliLCAyMy4gTWFyIDIwMDUsIDE5OjMwOjU1KToKfiMhIHJuPVd1cnplbCBydD0xMTExNjAwNzAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTA1NjY0Nwp1cGQgLWlhIC9zdGQvdGhpbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGdpZXJpZ2Uga29ib2xkZSAoTXVhZGliLCAyMy4gTWFyIDIwMDUsIDE5OjMxOjM1KToKfiMhIHJuPU11YWRpYiBydD0xMTExNjAyNjU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTA1NjY0NwpOSUlJSUlJSUlJSUlDSFQgZGFzIHdhciBlaW4gc2NoZXJ6CiwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGdpZXJpZ2Uga29ib2xkZSAoWm9vaywgMjMuIE1hciAyMDA1LCAyMjoxMjoxMyk6Cn4jISBybj1DaGFnYWxsIHJ0PTExMTE2MDA2OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MDU2NjQ3CnoyMCB1bmQgejMzIHNpbmQgcmVsYXRpdiB2b2xsIDspCgp6b29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogZ2llcmlnZSBrb2JvbGRlIChXdXJ6ZWwsIDI0LiBNYXIgMjAwNSwgMDk6NDI6NDIpOgp+IyEgcm49Wm9vayBydD0xMTExNjEyMzMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTA1NjY0Nwp3YWVyIGVzIG5pY2h0IGxhbmdzYW0gYW4gZGVyIHplaXQgZnVlciBlaW5lbiByZWJvb3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogZ2llcmlnZSBrb2JvbGRlIChab29rLCAyNC4gTWFyIDIwMDUsIDA5OjU3OjE4KToKfiMhIHJuPVd1cnplbCBydD0xMTExNjUzNzYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEwNTA1NjY0NwpJY2ggc2VoIGRpZSBOb3R3ZW5kaWdrZWl0IG5pY2h0LCBlaW5lbiBrdWVuc3RsaWNoIHp1IGVyemV1Z2VuLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBnaWVyaWdlIGtvYm9sZGUgKERlZXBibHVlLCAyNC4gTWFyIDIwMDUsIDEwOjQ0OjUzKToKfiMhIHJuPVpvb2sgcnQ9MTExMTY1NDYzOCByZz1zY2htYXJybgp+IyEgdGlkPTExMDUwNTY2NDcKV2llIHJlYm9vdD8KSWNoIGJpbiBkb2NoIG5vY2ggbmljaHQgbWFsIGF1c2dlcnVlc3RldC4KWm9vaywga29tbXN0ZSBtaXQgTWV0emVsbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBnaWVyaWdlIGtvYm9sZGUgKE1haGFyZXQsIDI0LiBNYXIgMjAwNSwgMTI6NDI6NDYpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTExMTY1NzQ5MyByZz1zY2htYXJybgp+IyEgdGlkPTExMDUwNTY2NDcKT2huZSBWYW5pb24gc2NoYWZmZW4gZGllIEVyemlzIG5pY2h0IG1hbCBuZW4gQ3Jhc2ggLi4uIApaZWl0ZW4gc2luZCBkYXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogZ2llcmlnZSBrb2JvbGRlIChEZWVwYmx1ZSwgMjQuIE1hciAyMDA1LCAxNDoxODozMyk6Cn4jISBybj1NYWhhcmV0IHJ0PTExMTE2NjQ1NjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTA1MDU2NjQ3CldpciB3b2xsZW4gdW5zZXJlbiBQYWRyZWljIHdpZWRlcmhhbSAtIG1pdCBCYXJ0IDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IGdpZXJpZ2Uga29ib2xkZSAoVmFuaW9uLCAyNC4gTWFyIDIwMDUsIDE2OjU0OjA1KToKfiMhIHJuPU1haGFyZXQgcnQ9MTExMTY2NDU2NiByZz1zY2htYXJybgp+IyEgdGlkPTExMDUwNTY2NDcKRGFzIGlzdCBtaXIgYXVjaCBzY2hvbiBhdWZnZWZhbGxlbi4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmQsIHdvIGhhc3QgRHUgaWhuIGhpbmdld29yZmVuLi4/IChab29rLCAyNC4gTWFyIDIwMDUsIDE3OjQzOjI3KToKW0FsbGdlbWVpbjpWZWN0b3IgemllaHQgRHJvbGxpIGF1cyBzZWluZW0gSHV0XQpEcm9sbGkgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVuZCwgd28gaGFzdCBEdSBpaG4gaGluZ2V3b3JmZW4uLj8gKEdyaW1tYm9ybiwgMjQuIE1hciAyMDA1LCAxNzo1OTozNSk6Cn4jISBybj1ab29rIHJ0PTExMTE2ODI2MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTExNjgyNjA3CkRvbid0IGFzayAtIHdvcnNoaXAhCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVW5kLCB3byBoYXN0IER1IGlobiBoaW5nZXdvcmZlbi4uPyAoVmVjdG9yLCAyNC4gTWFyIDIwMDUsIDE4OjAxOjIzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTExNjgzNTc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMTY4MjYwNwpodHRwOi8vd3d3Lmp1ZmFibGF1LmRlL2ltYWdlcy9IdXRIYXNlLmdpZgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGFobWVyIEFyZW5hc3ByZWNoZXIuLi4uIChab29rLCAyNS4gTWFyIDIwMDUsIDE4OjM1OjUxKToKW1RvZDpMYXJzXSBIZXJrdWxlcyBoYXQgZ2VyYWRlIENvcm5ob2xpbyB1bWdlYnJhY2h0LgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKQ29ybmhvbGlvIHdpcmQgZ2V0cm9mZmVuLgpEZXIgQXJlbmFzcHJlY2hlciBydWZ0IDoKQ29ybmhvbGlvIHdpcmQgd2llZGVyIHVuZCB3aWVkZXIgc2Nod2VyIGdldHJvZmZlbiB1bmQgc3RlaHQga25hcHAgYW0gQWJncnVuZCEKSXN0IGRhcyBkYXMgRW5kZT8/CgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBFbGZlbndhZWNodGVyIGhhbHQgLi4uIChNaXJha2EsIDI3LiBNYXIgMjAwNSwgMTM6MTM6MzYpOgpEZXIgVHVybXdhZWNodGVyIHJ1ZnQ6IERpZSBzY2h3YXJ6ZSBWYW1waXJqYWVnZXJzY2hhZXJwZSBncmVpZnQgdW5zIGFuLgpEZXIgVHVybXdhZWNodGVyIHJ1ZnQ6IERpZSBzY2h3YXJ6ZSBWYW1waXJqYWVnZXJzY2hhZXJwZSBncmVpZnQgdW5zIGFuLgpEZXIgVHVybXdhZWNodGVyIHJ1ZnQ6IERpZSBzY2h3YXJ6ZSBWYW1waXJqYWVnZXJzY2hhZXJwZSBncmVpZnQgdW5zIGFuLgpEZXIgVHVybXdhZWNodGVyIHJ1ZnQ6IERpZSBzY2h3YXJ6ZSBWYW1waXJqYWVnZXJzY2hhZXJwZSBncmVpZnQgdW5zIGFuLgpEZXIgVHVybXdhZWNodGVyIHJ1ZnQ6IERpZSBzY2h3YXJ6ZSBWYW1waXJqYWVnZXJzY2hhZXJwZSBncmVpZnQgdW5zIGFuLgpEZXIgVHVybXdhZWNodGVyIHJ1ZnQ6IERpZSBzY2h3YXJ6ZSBWYW1waXJqYWVnZXJzY2hhZXJwZSBncmVpZnQgdW5zIGFuLgpEZXIgVHVybXdhZWNodGVyIHJ1ZnQ6IERpZSBzY2h3YXJ6ZSBWYW1waXJqYWVnZXJzY2hhZXJwZSBncmVpZnQgdW5zIGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBFbGZlbndhZWNodGVyIGhhbHQgLi4uIChFbGpvLCAyNy4gTWFyIDIwMDUsIDEzOjE0OjE4KToKfiMhIHJuPU1pcmFrYSBydD0xMTExOTIyMDE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMTkyMjAxNgpKYSwgaWNoIGhhYmUgc2llIGF1Y2ggZWJlbiBnZXp1ZWNodGlndCwgZGFzIHNpbmQgbWVpbmUsIG5pY2h0IGlocmUhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTbyBuZSB1bmVocmxpY2hlIEhhdXQgKE1lc2lyaWksICAxLiBBcHIgMjAwNSwgMTQ6Mzk6NDcpOgpbQWxsZ2VtZWluOlp1bGppbl0gYWNoIGphLi4uaHVlYnNjaCBtYWwgd2llZGVyIGhpZXIgenUgc2VpbgpbQWxsZ2VtZWluOlp1bGppbl0gZ2FueiBvaG5lIG1vbmF0bGljaGUgZ3J1bmRnZWJ1ZWhyClp1bGppbiBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpNZXNpLCBlbnR0YWV1c2NodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdhbmRoaSAoTWlyaWwsICAzLiBBcHIgMjAwNSwgMjE6NTc6NTApOgp+IyEgcm49R2xvaW5zb24gcnQ9MTExMjQwNTY0MCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTExMjQwNTY0MApBbHNvIGljaCBrZW5uIEdoYW5kaSBudXIgc286CkdlaGVpbW5pcyB2b24gUmFkIHJhdXMuIEhpbnRlciB1bnMgc3RlaGVuIEF0b213YWZmZW4uCgpNaXJpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHYW5kaGkgKEdsb2luc29uLCAgMy4gQXByIDIwMDUsIDIyOjAxOjQzKToKfiMhIHJuPU1pcmlsIHJ0PTExMTI1NTgyNzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEyNDA1NjQwCkR1IGhhc3QgZGVpbmUgR2VnbmVyIGluIENpdiBBdG9td2FmZmVuIGJhdWVuIGxhc3Nlbj8gTHVzY2hlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEdhbmRoaSAoR2xvaW5zb24sICAzLiBBcHIgMjAwNSwgMjM6NTk6MjApOgp+IyEgb249R2xvaW5zb24gb3Q9MTExMjU2NTQ5NCBvZz1kaXNrdXNzaW9uCn4jISBybj1ab29rIHJ0PTExMTI1NjQ3NzMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExMTI0MDU2NDAKSW50ZXJwcmV0aWVyZW5kIHd1ZXJkZSBpY2ggbWVpbmVuLCBpbmRlbSBlciB2ZXJnaXNzdCwgZGFzcyBkaWUga2F0aG9saXNjaGUKS2lyY2hlIGplZGVtIE1lbnNjaGVuIGRlbiBmcmVpZW4gV2lsbGVuIHp1Z2VzdGVodC4gRXZlbnR1ZWxsIGF1Y2ggZHVyY2gKZWluZmFjaGVzIFZlcndlY2hzZWxuIHZvbiBLYXRob2xpemlzbXVzIG1pdCBGYXRhbGlzbXVzLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEdhbmRoaSAoWm9vaywgIDMuIEFwciAyMDA1LCAyMzo1OTozNik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTEyNTY1NTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMjQwNTY0MApXYXJ1bSBoYXN0IER1IGRhcyBuYWNoIFNjaG1hcnJuIHZlcnNjaG9iZW4/IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEdhbmRoaSAoR2xvaW5zb24sICA0LiBBcHIgMjAwNSwgMDA6MDA6MTIpOgp+IyEgcm49Wm9vayBydD0xMTEyNTY1NTc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMjQwNTY0MApXZWlsIEludGVycHJldGF0aW9uZW4gZmFzdCBpbW1lciBTY2htYXJyZW4gc2luZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogR2FuZGhpIChab29rLCAgNC4gQXByIDIwMDUsIDAwOjAyOjAyKToKfiMhIHJuPUdsb2luc29uIHJ0PTExMTI1NjU2MTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEyNDA1NjQwClNvbGwgaWNoIG51biBQYWRyZWljcyBBcnRpa2VsIGF1Y2ggdmVybGVnZW4/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEdhbmRoaSAoR2xvaW5zb24sICA0LiBBcHIgMjAwNSwgMDA6MDM6MDIpOgp+IyEgcm49Wm9vayBydD0xMTEyNTY1NzIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMjQwNTY0MApTdHJlbmdnZW5vbW1lbiBqYS4gTnVyIHdlaXNzdCBkdSBuY2lodCBvYiBlciBkaWUga2F0aG9saXNjaGUgS2lyY2hlIGRhCmludGVycHJldGllcnQgaGF0IG9kZXIgd2lya2xpY2ggYW4gc2VpbmUgRGFyc3RlbGx1bmcgZ2xhdWJ0LiBBbHNvIHNvbGx0ZSBlciBlcwp3ZW5uLCBkYW5uIHNlbGJlciBtYWNoZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEdhbmRoaSAoWm9vaywgIDQuIEFwciAyMDA1LCAwMDowNTowOCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTEyNTY1NzgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMjQwNTY0MApPaywgd2FydGVuIHdpciBlaW5mYWNoIGVpbm1hbCBhYi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogR2FuZGhpIChHbG9pbnNvbiwgIDQuIEFwciAyMDA1LCAwMDowNTo1OCk6Cn4jISBybj1ab29rIHJ0PTExMTI1NjU5MDggcmc9c2NobWFycm4KfiMhIHRpZD0xMTEyNDA1NjQwCkFid2FydGVuIGlzdCBpbW1lciBwcmltYS4gSGF0IHdlciBUZWU/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogR2FuZGhpIChHbG9pbnNvbiwgIDQuIEFwciAyMDA1LCAwMDoxOTowMik6Cn4jISBybj1MdWcgcnQ9MTExMjU2NjY2MCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTExMjQwNTY0MApVbmQgc2VoZXQsIEx1Z2ggU2FtaWxkYW5hY2ggTGFtaGZhZGEgaXN0IGdla29tbWVuIHVtIHVucyB6dSAoYmUpZnJlaWVuLgpCZXNvbmRlcnMgZGllIEZyYXVlbiB1bnRlciB1bnMgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogR2FuZGhpIChMdWcsICA0LiBBcHIgMjAwNSwgMDA6MTk6NTgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTExMjU2Njc0MiByZz1zY2htYXJybgp+IyEgdGlkPTExMTI0MDU2NDAKSW1tZXIgZGllc2UgbW9kZXJuZSBTY2hyZWlidW5nLi4uCgpTZXVmegpMdWcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEdhbmRoaSAoR2xvaW5zb24sICA0LiBBcHIgMjAwNSwgMDA6MjY6MTYpOgp+IyEgcm49Wm9vayBydD0xMTEyNTY3MDQ2IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTEyNDA1NjQwCktvbW10IHdpZWRlciBkYXJhdWYgYW4uIE9iIGV0d2FzIFNjaG1hcnJuIGlzdCwgc29sbHRlIG1hbiBhbSBiZXN0ZW4gaW1tZXIgZGVtClZlcnVyc2FjaGVyIHVlYmVybGFzc2VuLiBBYmVyIGR1IGludGVycHJldGllcnN0IGphIGhpZXIgYXVjaCBldHdhcwppbnRlcnByZXRpZXJlbnN3ZXJ0ZXMuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChEZWVwYmx1ZSwgIDQuIEFwciAyMDA1LCAxNTo1Mzo0Myk6CltBYmVudGV1ZXI6QmxhY2NhdF0gYmluIGJlaW0gdGVzdGFtZW50IHZvbiB3aWxoZWxtc2J1cmcgaW4gZGVuIGthdGFrb21iZW4gaW4KW0FiZW50ZXVlcjpCbGFjY2F0XSBlaW4gbG9jaCBnZWtsZXR0ZXJ0LCBlcyBpc3QgbGVpZGVyIHNvIGR1bmtlbCBoaWVyIGRyaW4sCltBYmVudGV1ZXI6QmxhY2NhdF0gZGFzcyBsaWNodHphdWJlciBuaWNodCBmdW5rdGlvbmllcnQgdW5kIGljaCBtaXIgYmVpIGplZGVtCltBYmVudGV1ZXI6QmxhY2NhdF0gc2Nocml0dCBkZW4ga29wZiBzdG9zc2UsIHdpZSBrb21tZSBpY2ggaGllciB3aWVkZXIKW0FiZW50ZXVlcjpCbGFjY2F0XSByYWF1dXV1dXV1dXM/ICpzY2hudWVmZgpbVG9kOkxhcnNdIEVpbmUgc2Nod2VyZSBLcmFua2hlaXQgaGF0IGdlcmFkZSBCbGFjY2F0IHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogR2FuZGhpIChSb2NodXMsICA0LiBBcHIgMjAwNSwgMjA6NTg6NTcpOgp+IyEgcm49Wm9vayBydD0xMTEyNTY1NzIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMjQwNTY0MApGdWVyIGRpZSBnaWx0IGRhcyBnbGVpY2hlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogR2FuZGhpIChHcmltbWJvcm4sICA0LiBBcHIgMjAwNSwgMjE6MDQ6NTcpOgp+IyEgb249R3JpbW1ib3JuIG90PTExMTI2NDE0OTEgb2c9ZGlza3Vzc2lvbgp+IyEgcm49Wm9vayBydD0xMTEyNjQxNDU5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTEyNDA1NjQwCk5laW4sIHZpc3VlbGwgaW5zcGlyaWVydC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogR2FuZGhpIChHbG9pbnNvbiwgIDUuIEFwciAyMDA1LCAyMDozNDozNyk6Cn4jISBybj1QYWRyZWljIHJ0PTExMTI3MjExMzcgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExMTI0MDU2NDAKRGllIGRhYmVpIHZvbiBkaXIgZXJ3b3JiZW5lbiBLZW5udG5pc3NlIHNpbmQgaG9mZmVudGxpY2ggZXR3YXMgdm9sbHN0YWVuZGlnZXIKYWxzIGRlaW4gV2lzc2VuIHVtIE1pbmVyYWxpZW4uCgpJY2ggd2Vpc3MsIFNwZWxsaW5nLUZsYW1lcyBzaW5kIGJvZXNlLiBBYmVyIHdpZSBrYW5uIG1hbiBkZW4gc28gd2VpdApkYW5lYmVubGllZ2VuPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBHYW5kaGkgKFpvb2ssICA1LiBBcHIgMjAwNSwgMjI6MTQ6MTQpOgp+IyEgb249Wm9vayBvdD0xMTEyNzMyMDQ4IG9nPWRpc2t1c3Npb24KfiMhIHJuPU11YWRpYiBydD0xMTEyNzMxNTU5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTEyNDA1NjQwCkFiZXIgbWEgaGFsbG8sIE11YWRpYjogR29vZ2xlIGthbm4gZG9jaCBuaWNodCBpcnJlbiEgOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBFcmZhaHJ1bmdlbiBtaXQgQ2ljZXJvbmUgKENyb2Z0LCAgNi4gQXByIDIwMDUsIDExOjQ0OjI1KToKfiMhIHJuPVpvb2sgcnQ9MTExMjc4MDA5MyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMTA4MDg2MzIKTisxIDotKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoTWFoYXJldCwgIDYuIEFwciAyMDA1LCAxMjoyNjowNik6Cn4jISBybj1Db3JuaG9saW8gcnQ9MTExMjc4MzExMiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMTA4MDg2MzIKUmFuZ29ybiBpc3QgZWluZSBRdWVzdD8gIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRXJmYWhydW5nZW4gbWl0IENpY2Vyb25lIChDcm9mdCwgIDYuIEFwciAyMDA1LCAxMjoyNzowMCk6Cn4jISBybj1NYWhhcmV0IHJ0PTExMTI3ODMxNjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwODA4NjMyCk11c3MgaWNoIG1hbCBhdWYgZGllIFRvZG8tTGlzdGUgc2V0emVuIDotKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBFcmZhaHJ1bmdlbiBtaXQgQ2ljZXJvbmUgKEJhbWJ1bGtvLCAgNi4gQXByIDIwMDUsIDE2OjE3OjI5KToKfiMhIHJuPUFsa29ob2wgcnQ9MTExMjc5Njg2NSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMTA4MDg2MzIKV2lyIGtvZW5uZW4gamEgR3JlZW5jYXJkcyBlaW5mdWVocmVuIHVuZCB1bSBJVC1TdHVkZW50ZW4gYXVzIEluZGllbiBvZGVyIENoaW5hCndlcmJlbiwgZGllIERldXRzY2ggbGVybmVuIHdvbGxlbi4gOy0pCkFsc28gZGFzIG5hZWNoc3RlIG1hbCB3ZW5uIFNjaHJvZWRlciBvZGVyIENsZW1lbnMgZGFoaW4gZmFocmVuLCBzY2hpY2tlbiB3aXIKWm9vayBlaW5mYWNoIG1pdC4gSGF0IGRlciBNRy1Gb2VyZGVydmVyZWluIG5vY2ggc28gdmllbCBHZWxkPwoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBFcmZhaHJ1bmdlbiBtaXQgQ2ljZXJvbmUgKEJhbWJ1bGtvLCAgNi4gQXByIDIwMDUsIDE2OjIyOjMwKToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTExMTI3OTcwNDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwODA4NjMyCkhtbSwgd2llIGxhbmdlIGVzIHp1bSBlcnN0ZW4gIkRhcyBNRyBpc3Qga2VpbiBFaW53YW5kZXJ1bmdzLU1VRCEiIGRhdWVydD8KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBHYW5kaGkgKEdsb2luc29uLCAgNi4gQXByIDIwMDUsIDE3OjIzOjU4KToKfiMhIHJuPVNreWZpcmUgcnQ9MTExMjgwMDUxNiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTExMjQwNTY0MApGYXJiZW4gbGVua3QgYmVpbSBGb3RvcyBvZnQgdm9tIE1vdGl2IGFiLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoQmFtYmksICA2LiBBcHIgMjAwNSwgMjM6NTA6NDkpOgp+IyEgcm49Q29ybmhvbGlvIHJ0PTExMTI3NzUzNjMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTEwODA4NjMyCkhhbGxvLiBIaWVyIHNpbmQgbGlsYSBnZXB1bmt0ZXRlIHVuZCBncnVlbiBrYXJpZXJ0ZSBPZ2VyIHVuZCBzaWUgZHJlc2NoZW4gYXVmCm1pY2ggZWluLiBIaWxmIG1pci4KCjspCk1mRywgQmFtYmkuCgpQLlMuCktsYXIsIGRlbiBUYXVzZW5kZnVlc3NsZXIga2FubiBtYW4gbm9jaCByZWNodCBlaW5mYWNoIGZpbmRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBFcmZhaHJ1bmdlbiBtaXQgQ2ljZXJvbmUgKEFtYXJ5bGxpcywgIDcuIEFwciAyMDA1LCAwODozMDoxNSk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTExMjg1NTA3OCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMTA4MDg2MzIKUG9ydCAyMj8gSWNoIGRlbmtlLCBEdSBtZWludGVzdCBlaGVyIDIzLCBvZGVyPyA6KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoQ2F0d2VhemxlLCAgNy4gQXByIDIwMDUsIDA4OjQ0OjQ0KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMTEyODU1NDE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMDgwODYzMgpBY2hqb2ZqYW5hdHVlcmxpY2ggOi0pCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2FzIHN0ZWh0IGRhPyAoQ2F0d2VhemxlLCAgNy4gQXByIDIwMDUsIDA4OjQ2OjE0KToKfiMhIHJuPUdsb2luc29uIHJ0PTExMTI4MDQ5NDAgcmc9d3d3Cn4jISB0aWQ9MTExMjgwNDgwMApOZXJkIDotKQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEtvbnplcHR1ZWJlcm5haG1lIHp1ciBTcGllbGVyZ2V3aW5udW5nIChEZWVwYmx1ZSwgIDcuIEFwciAyMDA1LCAxMDozODowNCk6Cn4jISBvbj1EZWVwYmx1ZSBvdD0xMTEyODYzMDc2IG9nPWVudHdpY2tsdW5nCn4jISBybj1Dcm9mdCBydD0xMTEyODYyNjk2IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTExMjg1NjEwOApEYXMgd2FlciBkb2NoIG1hbCB3YXMuIEVyd2lzY2h0ZSBWb2xsc2NyaXB0ZXIgd2VyZGVuIGF1dG9tYXRpc2NoIHp1bQpIQy1TcGllbGVyIGdlbWFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBLb256ZXB0dWViZXJuYWhtZSB6dXIgU3BpZWxlcmdld2lubnVuZyAoQmFtYnVsa28sICA3LiBBcHIgMjAwNSwgMTA6NDU6MjEpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTExMjg2MzA4NCByZz1zY2htYXJybgp+IyEgdGlkPTExMTI4NTYxMDgKSEMgZnVlciBlaW5lIFplaXQgc3RhdHQgU3BpZWxwYXVzZS4gV2VubiBlciB1bmJlZGluZ3Qgc3BpZWxlbiB3aWxsIG11c3MgZXIKaGFsdCB3YXMgcmlza2llcmVuLgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEtvbnplcHR1ZWJlcm5haG1lIHp1ciBTcGllbGVyZ2V3aW5udW5nIChDYXR3ZWF6bGUsICA3LiBBcHIgMjAwNSwgMTE6MTM6MDIpOgp+IyEgcm49QmFtYnVsa28gcnQ9MTExMjg2MzUyMSByZz1zY2htYXJybgp+IyEgdGlkPTExMTI4NTYxMDgKSG0sIG1pciBmYWVsbHQgbm9jaCBlaW4gSGFrZW4gYXVmLCB3YXMgaXN0IG1pdCBQSydzIGFuIEhDJ2xlcm4/IDotKQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBLb256ZXB0dWViZXJuYWhtZSB6dXIgU3BpZWxlcmdld2lubnVuZyAoRGVlcGJsdWUsICA3LiBBcHIgMjAwNSwgMTE6MTM6MjgpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTExMTI4NjUxODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEyODU2MTA4CkRlciBUYWV0ZXIgd2lyZCBzZWxic3QgSENsZXIgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBLb256ZXB0dWViZXJuYWhtZSB6dXIgU3BpZWxlcmdld2lubnVuZyAoQ2F0d2VhemxlLCAgNy4gQXByIDIwMDUsIDExOjE0OjA4KToKfiMhIHJuPURlZXBibHVlIHJ0PTExMTI4NjUyMDggcmc9c2NobWFycm4KfiMhIHRpZD0xMTEyODU2MTA4CkV4emVsbGVudGUgSWRlZSwgUHJvYmxlbSBnZWxvZXN0IDotKQoKSXJnZW5kd2llIGdlZmFlbGx0IG1pciBzbyBlaW4gSEMtRmxhZyBqYSBkb2NoIDotKQoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBLb256ZXB0dWViZXJuYWhtZSB6dXIgU3BpZWxlcmdld2lubnVuZyAoWm9vaywgIDcuIEFwciAyMDA1LCAxMzoyNzozMik6Cn4jISBybj1XdXJ6ZWwgcnQ9MTExMjg2MjY3OCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTExMTI4NTYxMDgKb2gsIGRhbm4gd2VyZGVuIGphIG1hbmNoZSBnZWJpZXRlIHZvZWxsaWcgbGVlciBzZWluLi4uIDspKSkpCgp6byd1bnQgYm9kZW4nb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI3OiBFcmZhaHJ1bmdlbiBtaXQgQ2ljZXJvbmUgKEFsa29ob2wsICA3LiBBcHIgMjAwNSwgMTY6NDQ6MzEpOgp+IyEgcm49Q29ybmhvbGlvIHJ0PTExMTI4ODQ2Nzcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTEwODA4NjMyCmFsc28gd2VubiBkdSBuZW4gcHJvamVrdG5hbWVuIHN1Y2hzdCwgd2FlcmUKCiAgIHByb2pla3QgZioqKiAKCmRvY2ggdmllbCBiZXNzZXIsIGF1c3NlcmRlbSBtYWNoIGljaCBkaXIgZ2VybiBkZW4gUHJvamVrdG1hbmFnZXIsIHdlbm4gZHUKYWxsZXMgYW5kZXJlIG1hY2hzdCAqZyoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoRGVlcGJsdWUsICA3LiBBcHIgMjAwNSwgMTY6NDQ6NDkpOgp+IyEgb249RGVlcGJsdWUgb3Q9MTExMjg4NDgwNyBvZz1hbGxnZW1laW5lcwp+IyEgcm49Q29ybmhvbGlvIHJ0PTExMTI4ODQ2Nzcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTEwODA4NjMyCldpbGxzdCBEdSBkaWUgZ2FuemVuIEhlaXNlLVRyb2xsZSBpbnMgTUcgbG9ja2VuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoQ29ybmhvbGlvLCAgNy4gQXByIDIwMDUsIDE2OjQ4OjQ3KToKfiMhIHJuPUFsa29ob2wgcnQ9MTExMjg4NTA3MSByZz1zY2htYXJybgp+IyEgdGlkPTExMTA4MDg2MzIKU2V4IHNlbGxzIQpQcm9qZWt0IGRpY2tlIFQqKiplbiBrbGluZ3QgYXVjaCBndXQsCmFiZXIgaWNoIGdsYXViZSwgZGFzcyBkYXMgTUcgZWhlciBlaW4gRmFudGFzeS1JbWFnZSBoYXQgOikKCkFsc286IFByb2pla3QgRWxmaW5uZW4gaW4gTGVkZXJob3NlbgoKUFMuClQqKiplbiBzdGVodCBfbmljaHRfIGZ1ZXIgVHVldGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT3JrZ3VsYXNjaCAoR3JpbW1ib3JuLCAgOC4gQXByIDIwMDUsIDA5OjI4OjMzKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMTEyOTQ1MzA5IG9nPWtvY2hyZXplcHRlCn4jISBybj1DYXR3ZWF6bGUgcnQ9MTExMjk0NDAxMCByZz1rb2NocmV6ZXB0ZQp+IyEgdGlkPTExMTI5NDQwMTAKQmVzb25kZXJzIGRpZSBJZGVlIG1pdCBkZW0gQXVzd2VydGVuIGRlciBXZWJzZXJ2ZXJsb2dzIHVuZCBkYXMgY3Jvc3MKcmVmZXJlbmNlbiB6dW0gTUcgZ2VmYWVsbHQgbWlyLiBIYXN0IER1IHZvciBEaWNoIGltIElubmVubWluaXN0ZXJpdW0genUKYmV3ZXJiZW4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5hIGRhbmtlLi4uIChSZXF1aWVtLCAgOC4gQXByIDIwMDUsIDExOjUwOjQ1KToKRXJ3YXJ0ZXQgIChvbmxpbmUpOiBCcmFuCltGcmV1bmRlOlJlcXVpZW1dIGh1aHUgYnJhbiA6KQpCcmFuIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkVyd2FydGV0IChvZmZsaW5lKTogQnJhbgoKCldhcyBoYWIgaWNoIG51ciBmYWxzY2ggZ2VtYWNodD8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXVzc2NocmVpYnVuZzogRXJ6bWFnaWVyIGZ1ZXIgT2JqZWt0LSwgSGVpbHVuZ3MtQmFsYW5jZSAoRGFya3dpbmcsICA4LiBBcHIgMjAwNSwgMTI6MjA6NTQpOgp+IyEgcm49Wm9vayBydD0xMTEyOTQ4NTMyIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTEyOTQ4NTMyCkljaCB3dWVyZGUgZWluIEhhcmRjb3JlLVJlbm5lbiB2b3JzY2hsYWdlbi4gV2VyIGFscyBlcnN0ZXMgbmVuIEhhcmRjb3JlClNlaGVyL01hZ2llciBoYXQgYmVrb21tdCBkZW4gSm9iIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBdXNzY2hyZWlidW5nOiBFcnptYWdpZXIgZnVlciBPYmpla3QtLCBIZWlsdW5ncy1CYWxhbmNlIChQaXRmYWxsLCAgOC4gQXByIDIwMDUsIDEyOjI4OjUzKToKfiMhIHJuPURhcmt3aW5nIHJ0PTExMTI5NTU2NTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEyOTQ4NTMyCkRlcmplbmlnZSBtdXNzIGRhbm4gbmF0dWVybGljaCBhdWNoIDMwLSBmYWNoZXIgRHJhY2hlbnRvZXRlciBzZWluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5hIGRhbmtlLi4uIChEZWVwYmx1ZSwgIDguIEFwciAyMDA1LCAxMjozMDoyMyk6Cn4jISBybj1SZXF1aWVtIHJ0PTExMTI5NTM4NDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEyOTUzODQ1CkdST1NTLSB1bmQga2xlaW5zY2hyZWlidW5nPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQXVzc2NocmVpYnVuZzogRXJ6bWFnaWVyIGZ1ZXIgT2JqZWt0LSwgSGVpbHVuZ3MtQmFsYW5jZSAoWm9vaywgIDguIEFwciAyMDA1LCAxNDoxNTozMSk6Cn4jISBybj1QaXRmYWxsIHJ0PTExMTI5NTYxMzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEyOTQ4NTMyCkhhcmRjb3JlLU1hZ2llciBrbGluZ3QgYXVjaCBuYWNoIG5lbSBpbnRlcmVzc2FudGVuIEtvbnplcHQuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBdXNzY2hyZWlidW5nOiBFcnptYWdpZXIgZnVlciBPYmpla3QtLCBIZWlsdW5ncy1CYWxhbmNlIChHbG9pbnNvbiwgIDguIEFwciAyMDA1LCAxNDoyMDo1Nyk6Cn4jISBybj1ab29rIHJ0PTExMTI5NjI1MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEyOTQ4NTMyCk1vZWNodGVzdCBEdSBQaXRmYWxsIGFscyBIQy1NYWdpZXIgb2RlciBudXIgaW4gTGVkZXI/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoQW50aGVhLCAgOC4gQXByIDIwMDUsIDE0OjQwOjUwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTEyOTYzOTc4IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTExMDgwODYzMgpXYXMgd2lsbHN0IER1IHVlYmVyd2luZGVuPyBEaWUgU3BpZWxlcj8gT2RlciBkZXJlbgpCZXNpdHpzdGFuZHN3YWhydW5nc2Fuc3BydWVjaGU/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoR3JpbW1ib3JuLCAgOC4gQXByIDIwMDUsIDE0OjQxOjMyKToKfiMhIHJuPUFudGhlYSBydD0xMTEyOTY0MDUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMDgwODYzMgpJY2g/IFdlZGVyIG5vY2guIEZ1ZXIgbWljaCBnaWx0IGluIGJlaWRlbiBGYWVsbGVuICJzaWNoIGRydWViZXIgaGlud2Vnc2V0emVuIi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoRGVlcGJsdWUsICA4LiBBcHIgMjAwNSwgMTU6MzA6MDgpOgp+IyEgb249RGVlcGJsdWUgb3Q9MTExMjk2Njk5MCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49R2xvaW5zb24gcnQ9MTExMjk2NjQ5OCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTExMTA4MDg2MzIKVW5kIHdhcyBpc3QgZGFyYW4gZGVyIFNwaWVsc3Bhc3M/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogRXJmYWhydW5nZW4gbWl0IENpY2Vyb25lIChEaG9qYWt0LCAgOC4gQXByIDIwMDUsIDE1OjMwOjU4KToKfiMhIHJuPURlZXBibHVlIHJ0PTExMTI5NjY5OTAgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMTEwODA4NjMyCkRhcyBzaW5kIGFsbGVzIE1hc29jaGlzdGVuLiAqZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBFcmZhaHJ1bmdlbiBtaXQgQ2ljZXJvbmUgKERlZXBibHVlLCAgOC4gQXByIDIwMDUsIDE1OjMyOjE0KToKfiMhIHJuPURob2pha3QgcnQ9MTExMjk2NzA1OCByZz1zY2htYXJybgp+IyEgdGlkPTExMTA4MDg2MzIKT2VzdGVycmVpY2hlciA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBFcmZhaHJ1bmdlbiBtaXQgQ2ljZXJvbmUgKEdsb2luc29uLCAgOC4gQXByIDIwMDUsIDE1OjQxOjMzKToKfiMhIHJuPURlZXBibHVlIHJ0PTExMTI5NjcwMDggcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwODA4NjMyCldvcmFuPyBEYXJhbiwgR3JlbnplbiB6dSBoYWJlbiB1bmQgaW5uZXJoYWxiIGRpZXNlbiBkYXMgTWF4aW11bSB6dSBzdWNoZW4/CktlaW5lIEFobnVuZywgbWlyIG1hY2h0IE11ZGRlbiBhdWNoIGtlaW5lbiBTcGFzcyBtZWhyLCBzZWl0ZGVtIGljaCBuaWNodCBtZWhyCnBlciBkZWZhdWx0IGF0b21pc2llcmUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoRGVlcGJsdWUsICA4LiBBcHIgMjAwNSwgMTU6NDI6MzkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTExMjk2NzY5MyByZz1zY2htYXJybgp+IyEgdGlkPTExMTA4MDg2MzIKU2Nob24gbWFsICJNdW5jaGtpbnMiIGdlc3BpZWx0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoRGVlcGJsdWUsICA4LiBBcHIgMjAwNSwgMTU6NDM6MTcpOgp+IyEgb249RGVlcGJsdWUgb3Q9MTExMjk2Nzc4OSBvZz1hbGxnZW1laW5lcwp+IyEgcm49R2xvaW5zb24gcnQ9MTExMjk2NzcyOSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMTA4MDg2MzIKZXJzdCBtYWNoZW4gbGFzc2VuLCBlcnN0IGRhbmFjaCBvcGZlcm4gdW5kIGF1ZmVzc2VuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoQW5hdG9sLCAgOC4gQXByIDIwMDUsIDE5OjEzOjEwKToKfiMhIG9uPUFuYXRvbCBvdD0xMTEyOTgwMzg2IG9nPWVudHdpY2tsdW5nCn4jISBybj1HbG9pbnNvbiBydD0xMTEyOTgwMjc0IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTExMDgwODYzMgpOb3RlcGFkcz8gSWhyIGhhdHRldC4uLiBlaW5lIGdyYWZpc2NoZSBPYmVyZmxhZWNoZT8hCgpBbmF0b2wuIFN1biAzLzUwLCAxIE1CIFJBTS4gQmlsZHNjaGlybSBHcmF1IGF1ZiBIZWxsZ3JhdS4gKmdydXNlbCogOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBFcmZhaHJ1bmdlbiBtaXQgQ2ljZXJvbmUgKEdsb2luc29uLCAgOC4gQXByIDIwMDUsIDE5OjIyOjU1KToKfiMhIHJuPUFuYXRvbCBydD0xMTEyOTgwMzkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMDgwODYzMgpEZWNzdGF0aW9ucy4gVGphamEsIG1hbiB3YXIgcmljaHRpZyBsaWViIHp1IHVucy4gVW5kIHdlbm4gZGllIG1hbCB2b2xsIHdhcnRlbiwKaGF0IG1hbiBzaWNoIGFuIGRpZSBWYXggYmV3ZWd0LCB3ZWxjaGUgYW5zb25zdGVuIGltbWVyIG51ciAoYSkgZWluCmludGVyZXNzaWVydGVzIEF1Z2VuYnJhdWVuaGViZW4gaW4gZGVyIFZMIFJlY2huZXJhcmNoaXRla3R1ciBlcnpldWd0ZW4gdW5kIChiKQp2b24gdW5zZXJlbSBTeXNhZG1pbiBhbHMgTXVzdGVyZXhlbXBsYXIgdm9uIFNpY2hlcmhlaXQgZ2VydWVobXQgd3VyZGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZyYWdlIGJlYW50d29ydGV0IChGTFcpIChUdXJibywgIDguIEFwciAyMDA1LCAyMToyMzoyNik6CiAgRWluIERyYWtvbmllcmxldXRuYW50IHZlcmZlaGx0IERpY2guCkRlciBEcmFrb25pZXIgc2FndDogSWNoIGxhc3NlIERpY2ggbmljaHQgZHVyY2ghIFdhcyBtYWNoc3QgRHUgamV0enQ/CiAgRHUgdHJpZmZzdCBlaW5lbiBEcmFrb25pZXJsZXV0bmFudCBoYXJ0LgpEZXIgRHJha29uaWVybGV1dG5hbnQgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KClR1cmJvIChLYXRlcikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmEgZGFua2UuLi4gKFJlcXVpZW0sICA4LiBBcHIgMjAwNSwgMjI6Mzk6NDQpOgp+IyEgcm49RGVlcGJsdWUgcnQ9MTExMjk1NjIyMyByZz1zY2htYXJybgp+IyEgdGlkPTExMTI5NTM4NDUKbUVJTlNUIGRVPyE/ISEhZWxmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogRXJmYWhydW5nZW4gbWl0IENpY2Vyb25lIChHcmltbWJvcm4sICA5LiBBcHIgMjAwNSwgMDE6MzE6NDIpOgp+IyEgb249R3JpbW1ib3JuIG90PTExMTMwMDMwOTAgb2c9ZW50d2lja2x1bmcKfiMhIHJuPUFuYXRvbCBydD0xMTEyOTg3NDE4IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTExMDgwODYzMgpMYXNzIG1pY2ggZGFzIG5vY2htYWwgcHJhZXppc2llcmVuOiBEdSBmaW5kZXN0IGVzIGVpbmVuIFZvcnRlaWwgZnVlciBkYXMKTW9yZ2VuZ3JhdWVuLCBkYXNzIGVzIHZvZWxsaWcgdW5mYWVoaWdlIE1hZ2llciB1bmQgZWluZSBLcmF1dHVuZHJ1ZWJlbi1MaWIKaGF0PyBGYXN6aW5pZXJlbmQuIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogRXJmYWhydW5nZW4gbWl0IENpY2Vyb25lIChHbG9pbnNvbiwgIDkuIEFwciAyMDA1LCAxMToyODo1OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTExMzAwMzEwMiByZz1zY2htYXJybgp+IyEgdGlkPTExMTA4MDg2MzIKQ2hhb3MgaGF0IGhhbHQgYXVjaCBzZWluZSBpbnRlcmVzc2FudGVuIFNlaXRlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXVhZGliIHN0ZWxsdCBWYW5pb24gYW4gZGVuIFByYW5nZXIgKEdsb2luc29uLCAgOS4gQXByIDIwMDUsIDE4OjAyOjQ0KToKfiMhIHJuPU11YWRpYiBydD0xMTEzMDYxNzA4IHJnPXByYW5nZXIKfiMhIHRpZD0xMTEzMDYxNzA4CkRhbm4gc2NocmVpYiBlcyBkb2NoIGVpbmZhY2g/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNdWFkaWIgc3RlbGx0IFZhbmlvbiBhbiBkZW4gUHJhbmdlciAoVmFuaW9uLCAgOS4gQXByIDIwMDUsIDE4OjQzOjAyKToKfiMhIHJuPUdsb2luc29uIHJ0PTExMTMwNjI1NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEzMDYxNzA4CkljaCBoYWIgRGljaCBhbHMgbmV1ZW4gQmFsYW5jZS1FTSB2b3JnZXNjaGxhZ2VuIDopCgpVbnNhZWdsaWNoLCBpY2ggd2Vpc3MgOikKClYqLCB2ZXJkaWVudCBkZW4gUHJhbmdlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE11YWRpYiBzdGVsbHQgVmFuaW9uIGFuIGRlbiBQcmFuZ2VyIChHbG9pbnNvbiwgIDkuIEFwciAyMDA1LCAxODo0NDo1MCk6Cn4jISBybj1WYW5pb24gcnQ9MTExMzA2NDk4MiByZz1zY2htYXJybgp+IyEgdGlkPTExMTMwNjE3MDgKV2FyIGRhcyBpcmdlbmQgZWluIFJhY2hlYWt0LCB3ZWlsIGljaCB1bnNlcmUgQmV6aWVodW5nIG5pY2h0IGF1ZiBwbHV0b25pc2NoZXIKQmFzaXMgd2VpdGVyZnVlaHJlbiB3b2xsdGU/IFVuYmFsYW5jaWVydGVyIEdlaXN0IG1hY2h0IHVuYmFsYW5jaWVydGUKVm9yc2NobGFlZ2U/IEd1dCwgZGFzcyBkZXIgS2FuZGlkYXQgYW0gRW5kZSBhdWNoIGV0d2FzIG1pdHp1cmVkZW4gaGFldHRlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE11YWRpYiBzdGVsbHQgVmFuaW9uIGFuIGRlbiBQcmFuZ2VyIChWYW5pb24sICA5LiBBcHIgMjAwNSwgMTk6Mjk6MDcpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTExMzA2NTA5MCByZz1zY2htYXJybgp+IyEgdGlkPTExMTMwNjE3MDgKPiBHdXQsIGRhc3MgZGVyIEthbmRpZGF0IGFtIEVuZGUgYXVjaCBldHdhcyBtaXR6dXJlZGVuIGhhZXR0ZS4KCgpXaWUga29tbXN0IER1IGRhcmF1ZiwgbWVpbnN0ZSB3aXJrbGljaCB3aXIgaGF0dGVuIE5vbm5lIGdlZnJhZ3Q/IFpvb2sgaGF0IHNvJ24KS2FydGVuc3BpZWwgbWl0IGRlbiBOYW1lbiBhbGxlciBNYWdpZXIgLi4uCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTXVhZGliIHN0ZWxsdCBWYW5pb24gYW4gZGVuIFByYW5nZXIgKFZhbmlvbiwgIDkuIEFwciAyMDA1LCAxOToyOTozMyk6Cn4jISBybj1WYW5pb24gcnQ9MTExMzA2Nzc0NyByZz1zY2htYXJybgp+IyEgdGlkPTExMTMwNjE3MDgKSGllciBkYXJmIGljaCBqYSBzZWxic3RyZXBseWVuOgoKU29uc3Qgd2FlciBhdWNoIGljaCBuaWUgRU0gZ2V3b3JkZW4sIGxvZ2lzY2gsIG9kZXI/CgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTXVhZGliIHN0ZWxsdCBWYW5pb24gYW4gZGVuIFByYW5nZXIgKEdsb2luc29uLCAgOS4gQXByIDIwMDUsIDIxOjAxOjAwKToKfiMhIHJuPVZhbmlvbiBydD0xMTEzMDY3NzczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMzA2MTcwOApEaXIgaXN0IG5pY2h0IGF1ZmdlZmFsbGVuLCBkYXNzIGRpZSBCdWJlbiwgYXVjaCBWYW5pb25zIGdlbmFubnQsIG1laHJmYWNoCmVudGhhbHRlbiBzaW5kPyBWaWVsIFNwYXNzIGluIGRlaW5lciBuZXVlbiBCZXJ1ZnVuZy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBOZXVlIE1HLVdlYnNpdGUgKEdsb2luc29uLCAxMC4gQXByIDIwMDUsIDE2OjU1OjUyKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTExMzE0NDY5NiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTExMzA4NTAzMwpEYXMgbWFjaHQgZGllIFBhcnRpZXMgYWJlciBuaWNodCBlaW5mYWNoZXIsIHdlbm4gZGllIFplbHRwbGFldHplIGRhbm4gZnVlcgpCbGluZGUgZ2VlaWduZXQgc2VpbiBtdWVzc2VuLiBEaWUgU2VoZW5kZW4gaGFiZW4gamEgc2Nob24gUHJvYmxlbWUgbWl0IGRlbgpBYnNwYW5udW5nZW4uCgooZGllIFJ1YnJpayBpc3QgbWl0IEJlZGFjaHQgZ2V3YWVobHQpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogS29uemVwdHVlYmVybmFobWUgenVyIFNwaWVsZXJnZXdpbm51bmcgKE1haGFyZXQsIDEwLiBBcHIgMjAwNSwgMTk6MDY6MTUpOgp+IyEgcm49TWVzaXJpaSBydD0xMTEzMTUyNjk3IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTExMjg1NjEwOApNYWNoIG51ciwgaWNoIGZhbmcgamEgaW4gMiBXb2NoZW4gd2llZGVyIG1pdCBhcmJlaXRlbiBhbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS29uemVwdHVlYmVybmFobWUgenVyIFNwaWVsZXJnZXdpbm51bmcgKEJhbWJpLCAxMC4gQXByIDIwMDUsIDIwOjA0OjUxKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTExMzE1MzYwMCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTExMTI4NTYxMDgKPiB0bSBjaWNlcm9uZSBLYW5uc3QgRHUgbWlyIG1hbCBiaXR0ZSBiZWkgWFhYIGhlbGZlbgpEdSBGZXJrZWwhIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBdXNzY2hyZWlidW5nOiBFcnptYWdpZXIgZnVlciBPYmpla3QtLCBIZWlsdW5ncy1CYWxhbmNlIChXdXJ6ZWwsIDExLiBBcHIgMjAwNSwgMTM6MzI6NTgpOgp+IyEgcm49Wm9vayBydD0xMTEyOTYyNTMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMjk0ODUzMgo+IEhhcmRjb3JlLU1hZ2llciBrbGluZ3QgYXVjaCBuYWNoIG5lbSBpbnRlcmVzc2FudGVuIEtvbnplcHQuLi4KYWJlciBrbGFyLiBkYXMgZXJzdGUgYXVmdGF1Y2hlbiBhdWYgLWRlYnVnIGZ1ZWhydCB6dXIgbG9lc2NodW5nLCBkYXMgd2FlciBlcwpkb2NoIG1hbC4gdW5kIGRhbWl0IG1hbiBkYXMgbmljaHQgc28gbGVpY2h0IHZlcm1laWRlbiBrYW5uLCB3aXJkIGF1Y2ggZGFubgpnZWxvZXNjaHQsIHdlbm4gbmFjaCB6d2VpIHdvY2hlbiAoZGllIGZyaXN0IGlzdCB2ZXJoYW5kZWxiYXIpIG5vY2gga2VpbgpnZWJpZXQgZmVydGlnIGFuZ2VzY2hsb3NzZW4gaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQXVzc2NocmVpYnVuZzogRXJ6bWFnaWVyIGZ1ZXIgT2JqZWt0LSwgSGVpbHVuZ3MtQmFsYW5jZSAoR3JpbW1ib3JuLCAxMS4gQXByIDIwMDUsIDEzOjM2OjM2KToKfiMhIHJuPVd1cnplbCBydD0xMTEzMjE5MTc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMjk0ODUzMgpEYSBpc3Qgb2ssIG5hY2ggZGVyIEZyaXN0IHdhZXJlIGphIGtlaW5lciBtZWhyIGRhLCBkZXIgbWljaCBub2NoIGxvZXNjaGVuCmtvZW5udGUuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IE5ldWUgTUctV2Vic2l0ZSAoT3JrdG9ldGVyLCAxMi4gQXByIDIwMDUsIDE5OjUwOjE5KToKfiMhIHJuPU1haGFyZXQgcnQ9MTExMzMwNDE2MiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTExMzA4NTAzMwpUamEuLiBLYXR6ZW4gdW5kIENvbXB1dGVyLi4uCgpSdWZ0IGVpbiBNYW5uIGJlaSBkZXIgRmlybWEgYW4sIGJlaSBkZXIgZXIgc2ljaCBlaW5lIEthdHplIGZ1ZXJzIEJ1ZXJvCmdlbWlldGV0IGhhdCB1bmQgcmVrbGFtaWVydDogIiBBbHNvIGFuIGRlciBUYXN0YXR1ciBpc3Qgc2llIGphIHNlaHIgc2NobmVsbAp1bmQgbWl0IGRlbSBEcnVja2VyIGtvbW10IHNpZSBhdWNoIGtsYXIsIGFiZXIgc2llIHNwaWVsdCBpbW1lciBzbyBtaXQgZGVyIE1hdXMKaGVydW0uLi4iCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVuZCB3aWVkZXIgaXN0IGVzIHBhc3NpZXJ0LiAoQ3JvZnQsIDEyLiBBcHIgMjAwNSwgMjM6NTM6NTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMTMzNDAyNDQgcmc9ZC5lYmVuZQp+IyEgdGlkPTExMTMzMzk4NzAKZC5lYmVuZSBtaXRsZXNlbiByZWljaHQuICBOb3RmYWxscyBkaWUgbGV0enRlbiBBcnRpa2VsIG5vY2htYWwgdWViZXJmbGllZ2VuLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdGFtbXRpc2NoZSBLYXJsc3J1aGUgMTQuNC8yMS40LzI4LjQgKExpYXJhLCAxMy4gQXByIDIwMDUsIDE5OjM3OjMxKToKfiMhIHJuPUNyb2Z0IHJ0PTExMTM0MDkxODYgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTExMzQwOTE4NgpEaWUgS25laXBlLCBpbiBkaWUgaWhyIG1laXN0ZW5zIGdlZ2FuZ2VuIHNlaWQsIHdpcmQgZ2VwdXR6dD8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3RhbW10aXNjaGUgS2FybHNydWhlIDE0LjQvMjEuNC8yOC40IChDcm9mdCwgMTMuIEFwciAyMDA1LCAxOTozOTo0MCk6Cn4jISBybj1MaWFyYSBydD0xMTEzNDEzODUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMzQwOTE4NgpJY2ggZ2xhdWJlIG5pY2h0LiAgWnVtaW5kZXN0IGxhZXNzdCBzaWNoIGR1cmNoIGRpZSBSb2xsb3MgbmljaHRzIGZlc3RzdGVsbGVuLgpVbmQgZGVyIFNjaGF1a2FzdGVuIHNpZWh0IGF1Y2ggbmljaHQgd2lya2xpY2ggZ2VwdXR6dCBhdXMsIHRyb3R6IEFubGVpdHVuZwp3aWUgbWFuIGRhcyB6dSB0dW4gaGF0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFN0YW1tdGlzY2hlIEthcmxzcnVoZSAxNC40LzIxLjQvMjguNCAoTGlhcmEsIDEzLiBBcHIgMjAwNSwgMTk6NDA6MTYpOgp+IyEgcm49Q3JvZnQgcnQ9MTExMzQxMzk4MCByZz1zY2htYXJybgp+IyEgdGlkPTExMTM0MDkxODYKSWNoIG1laW50ZSBqYSBhdWNoIEZSVUVIRVIuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogRXJmYWhydW5nZW4gbWl0IENpY2Vyb25lIChPZ28sIDE0LiBBcHIgMjAwNSwgMTM6NTg6MDkpOgp+IyEgcm49TXVhZGliIHJ0PTExMTM0Nzk2MTYgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTEwODA4NjMyCgpXaWVzbyBkcmFlbmd0IHNpY2ggbWlyIGRlciBWZXJkYWNodCBhdWYsIGRhc3MgZGllcyB2aWVsIGVoZXIgZWluZSBBbnR3b3J0IGF1ZgpkZXIgTWV0YS0gYWxzIGF1ZiBkZXIgSW5oYWx0c2ViZW5lIHdhcj8gOlAKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogRXJmYWhydW5nZW4gbWl0IENpY2Vyb25lIChXdXJ6ZWwsIDE0LiBBcHIgMjAwNSwgMTM6NTg6NTUpOgp+IyEgcm49T2dvIHJ0PTExMTM0Nzk4ODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwODA4NjMyCndlaWwgZHUgZXMgbmljaHQgdmVyc3RhbmRlbiBoYXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoWm9vaywgMTQuIEFwciAyMDA1LCAxNzozMToyNyk6Cn4jISBybj1LYXJpcyBydD0xMTEzNDkyMTE0IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTExMDgwODYzMgpab29rIHZlcmxlaWh0IEthcmlzIGRlbiBTcGV6aWFsLUdvZHdpbi1QcmVpcyBhbSBncnVlbmVuIEJhbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTogRXJmYWhydW5nZW4gbWl0IENpY2Vyb25lIChHbG9pbnNvbiwgMTQuIEFwciAyMDA1LCAxNzozODowMCk6Cn4jISBybj1ab29rIHJ0PTExMTM0OTI2ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwODA4NjMyCldhciBIaXRsZXIgc28gZWluIFJQTT8gQXJzY2guCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoTXVhZGliLCAxNC4gQXByIDIwMDUsIDE3OjM5OjM4KToKfiMhIHJuPUdsb2luc29uIHJ0PTExMTM0OTMwODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEwODA4NjMyCmdsb2luc29uIGhhdCB2ZXJsb3JlbgpkYXMgd2FyIG5lIHRvcHZvcmxhZ2UsIHpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMzOiBFcmZhaHJ1bmdlbiBtaXQgQ2ljZXJvbmUgKEdsb2luc29uLCAxNC4gQXByIDIwMDUsIDE3OjQyOjE4KToKfiMhIHJuPU11YWRpYiBydD0xMTEzNDkzMTc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMDgwODYzMgpEYXMgInZlcmxvcmVuIiBpc3QgZWluZSB1bnp1bGFlc3NpZ2UgRXJ3ZWl0ZXJ1bmcgZGVzIEdlc2V0emVzLiBhdXNzZXJkZW0KemFlaGx0IGFic2ljaHRsaWNoZXMgRXJ3YWVobmVuIG9obmVoaW4gbmljaHQuIEFiZXIgamV0enQgbWFsIGVocmxpY2g6IEhhdApIaXRsZXIgUm9sbGVuc3BpZWxlIGdlbGVpdGV0PyBBdXNzZXIgZGVtIEhhc2VsbnVzcy1NdW1tZW5zY2h3YW56PwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvc28gKE11YWRpYiwgMTQuIEFwciAyMDA1LCAxOTozNDowMSk6CkRpZSBTZWtyZXRhZXJpbiBzYWd0IDogT2theSEgRHUgaGFzdCBqZXR6dCBIdW1uaSB6dW0gRHVlbGwKaGVyYXVzZ2Vmb3JkZXJ0LiBOdW4gZ2VoZSBpbiBkaWUgZ3Jvc3NlIEthbXBmYXJlbmEgdW5kIGVyd2FydGUgaWhuIGRvcnQuCgoKTWlyaWwgdGVpbHQgRGlyIG1pdDogZGVyIGlzdCBnZXJhZGUgenVtIGFsZGkgWzE5OjMyXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoR2xvaW5zb24sIDE0LiBBcHIgMjAwNSwgMjM6MDA6MzgpOgp+IyEgb249R2xvaW5zb24gb3Q9MTExMzQ4NzA0OSBvZz1hbGxnZW1laW5lcwp+IyEgcm49R2FieWxvbiBydD0xMTEzNDg2NjQ5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTExMDgwODYzMgoidW50IDxzcGllbGVyPiIKCkZpbmRlIGljaCBzb2dhciBoaW5yZWljaGVuZCBnZW5hdS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogRXJmYWhydW5nZW4gbWl0IENpY2Vyb25lIChHbG9pbnNvbiwgMTQuIEFwciAyMDA1LCAyMzowNjoxMSk6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMTEzNTEyNDY4IG9nPXNjaG1hcnJuCn4jISBvbj1NdWFkaWIgb3Q9MTExMzQ4NzExMSBvZz1hbGxnZW1laW5lcwp+IyEgcm49R2xvaW5zb24gcnQ9MTExMzQ4NzA0OSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMTA4MDg2MzIKYWxzbyByYXVzIG1pdCBscCB1bmQga3AgYXVzIGRlbSBpbmZvPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoR2xvaW5zb24sIDE0LiBBcHIgMjAwNSwgMjM6MDY6MjUpOgp+IyEgb249R2xvaW5zb24gb3Q9MTExMzUxMjQzOSBvZz1zY2htYXJybgp+IyEgb249V3VyemVsIG90PTExMTM0ODcyMTMgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU11YWRpYiBydD0xMTEzNDg3MTExIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTExMDgwODYzMgpqYS4gb2RlciB3aWV2aWVsIGhwIGhhc3QgZHUgamV0enQgZ2VyYWRlIGltIG1vbWVudCwgd28gZHUgdWViZXIgZGVpbmVtCnJlY2huZXIga2F1ZXJzdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBFcmZhaHJ1bmdlbiBtaXQgQ2ljZXJvbmUgKEdsb2luc29uLCAxNC4gQXByIDIwMDUsIDIzOjA2OjI2KToKfiMhIG9uPUdsb2luc29uIG90PTExMTM1MTI0NDAgb2c9c2NobWFycm4KfiMhIG9uPUdsb2luc29uIG90PTExMTM0ODcyNDMgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU11YWRpYiBydD0xMTEzNDg3MTExIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTExMDgwODYzMgpLbGFyLiBGYW5kIGljaCBpbW1lciBuZXJ2aWcgbWlyIGRhZnVlciBTY3JpcHRlIHNjaHJlaWJlbiB6dSBtdWVzc2VuLCBkYW1pdCBpY2gKZGVuIGFuZGVyZW4gU3BpZWxlcm4gZW5kbGljaCB3YXMgdm9yYXVzIGhhdHRlIGF1c3NlciBTdGVyYmVuLiBNYWNoZW4gd2lyIGVpbmUKaHVlYnNjaGUsIHN0dWZpZ2UgQW56ZWlnZSBkZXIgTGViZW5zcXVhbGl0YWV0LiBBYiBMZXZlbCB4IGluIDMsIHgxPnggaW4gNQp4Mj54MSBpbiA3IHVzdy4gU2Nocml0dGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBFcmZhaHJ1bmdlbiBtaXQgQ2ljZXJvbmUgKEdsb2luc29uLCAxNC4gQXByIDIwMDUsIDIzOjA2OjM1KToKfiMhIG9uPUdsb2luc29uIG90PTExMTM1MTI0NzIgb2c9c2NobWFycm4KfiMhIG9uPU11YWRpYiBvdD0xMTEzNDg3MjMxIG9nPWFsbGdlbWVpbmVzCn4jISBybj1XdXJ6ZWwgcnQ9MTExMzQ4NzIxMyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMTA4MDg2MzIKZGFzIGludGVyZXNzaWVydCBtaWNoIG5pY2h0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogRXJmYWhydW5nZW4gbWl0IENpY2Vyb25lIChHbG9pbnNvbiwgMTQuIEFwciAyMDA1LCAyMzowNjozNik6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMTEzNTEyNDc0IG9nPXNjaG1hcnJuCn4jISBvbj1XdXJ6ZWwgb3Q9MTExMzQ4NzM2MyBvZz1hbGxnZW1laW5lcwp+IyEgcm49R2xvaW5zb24gcnQ9MTExMzQ4NzI0MyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMTA4MDg2MzIKImVzIGdlaHQgZGlyIGd1dCIsICJlcyBrb2VubnRlIGJlc3NlciBnZWhlbiIsICJkdSBmdWVobHN0IGRpY2ggc2NoZWlzc2UiIHVuZAoiZHUgYmlzdCB0b3QiIHNvbGx0ZSByZWljaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoR2xvaW5zb24sIDE0LiBBcHIgMjAwNSwgMjM6MDY6NDkpOgp+IyEgb249R2xvaW5zb24gb3Q9MTExMzUxMjQ0MSBvZz1zY2htYXJybgp+IyEgb249R2xvaW5zb24gb3Q9MTExMzQ4NzQ3MSBvZz1hbGxnZW1laW5lcwp+IyEgcm49V3VyemVsIHJ0PTExMTM0ODczNjMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTEwODA4NjMyCkRhcyBpc3QgZGllIDQgc3R1ZmlnZSAiUm9sbGVuc3BpZWxtZWlzdGVyIGhhdHMgZ3JhZCBzYXR0Ii1BbnplaWdlLCBkaWUgbmFjaCB6dQpoYWV1ZmlnZW0gImluZm8iIGtvbW10LgpXZW5uIHdpciBsaWViIHNpbmQsIGxhc3NlbiB3aXIgZGVuIEZsdWNodG1vZHVzIGRhIHVuZCBicmVjaGVuIGlobiBhdWYKMTAlLVN0dWZlbiBydW50ZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoR2xvaW5zb24sIDE0LiBBcHIgMjAwNSwgMjM6MDY6NTcpOgp+IyEgb249R2xvaW5zb24gb3Q9MTExMzUxMjQ3OCBvZz1zY2htYXJybgp+IyEgb249TXVhZGliIG90PTExMTM0ODc1OTUgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUdsb2luc29uIHJ0PTExMTM0ODc0NzEgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTEwODA4NjMyCmRhcyBob2VydCBzaWNoIGphIGFsbGVzIGd1dCBhbgp3ZXIgYmxlaWJ0IHVuZCBzcGllbHQgbmFjaCBkZW0gdW1iYXU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogRXJmYWhydW5nZW4gbWl0IENpY2Vyb25lIChHbG9pbnNvbiwgMTQuIEFwciAyMDA1LCAyMzowNzowMSk6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMTEzNTEyNDQyIG9nPXNjaG1hcnJuCn4jISBvbj1HbG9pbnNvbiBvdD0xMTEzNDg4NDQ2IG9nPWFsbGdlbWVpbmVzCn4jISBybj1NdWFkaWIgcnQ9MTExMzQ4NzU5NSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMTA4MDg2MzIKRGllIEFsdHNwaWVsZXIgd29sbGVuIGRvY2ggb2huZWhpbiBhYndhbmRlcm4sIHdlbm4gbWFuIGlobmVuIG5pY2h0CnRyaWdnZXJmcmV1bmRsaWNoZXJlIFRleHRlIGxpZWZlcnQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoR2xvaW5zb24sIDE0LiBBcHIgMjAwNSwgMjM6MDc6MTEpOgp+IyEgb249R2xvaW5zb24gb3Q9MTExMzUxMjQ4MiBvZz1zY2htYXJybgp+IyEgb249S2FyaXMgb3Q9MTExMzQ5MjExNCBvZz1hbGxnZW1laW5lcwp+IyEgcm49R2xvaW5zb24gcnQ9MTExMzQ4ODQ0NiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMTA4MDg2MzIKV2VubiBJaHIgZWggZ3JhZCBkYWJlaSBzZWlkLCBhbGxlcyBhbiBSb2xsZW5zcGllbHN0YW5kYXJkcyBhbnp1cGFzc2VuCihpc3QgZGFzIGhpZXIgZWlnZW50bGljaCBlaW4gU3BpZWw/PyksIGtvZW5udGV0IElociBqYSBhdWNoIGdsZWljaApIdW5nZXIgdW5kIER1cnN0IGVpbmJhdWVuLiBXZW5uIG1hbiB6dSBsYW5nZSBpZGVsdCB1bmQgbml4IGlzc3QgdW5kIAp0cmlua3QsIGtyaWVndCBtYW4gaHAgdW5kIG1wIGFiZ2V6b2dlbi4gTG9lc3QgZGFtaXQgYXVjaCBkaWUgUHJvYmxlbWUgCm1pdCBkaWVzZW4gbGFlc3RpZ2VuIFJ1bXN0ZWhlcm4uCgpLYXJpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IEVyZmFocnVuZ2VuIG1pdCBDaWNlcm9uZSAoR2xvaW5zb24sIDE0LiBBcHIgMjAwNSwgMjM6MDc6MTMpOgp+IyEgb249R2xvaW5zb24gb3Q9MTExMzUxMjQ0MyBvZz1zY2htYXJybgp+IyEgb249R2xvaW5zb24gb3Q9MTExMzQ5MjUzOSBvZz1hbGxnZW1laW5lcwp+IyEgcm49S2FyaXMgcnQ9MTExMzQ5MjExNCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMTA4MDg2MzIKU2VpdCB3YW5uIGdpYnQgZXMgaW4gdmVybnVlbmZ0aWdlbiBSb2xsZW5zcGllbGVuIEh1bmdlci9EdXJzdC9LYWNrZW4/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEtvbnplcHR1ZWJlcm5haG1lIHp1ciBTcGllbGVyZ2V3aW5udW5nIChOaWJlbCwgMTQuIEFwciAyMDA1LCAyMzoxNTo0Nyk6Cn4jISBybj1XdXJ6ZWwgcnQ9MTExMzQ2Mzk5MiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTExMTI4NTYxMDgKPiB3ZW5uIG1hbiBldHdhcyBtZWhyIG1hY2hlbiB3aWxsIGFscyBlaW5mYWNoIG51ciBiZXNjaHJlaWJ1bmdlbiB1bmQgZGV0YWlscywKCkVzIHd1ZXJkZSBqYSByZWljaGVuLCB3ZW5uIER1IHdlbmlnc3RlbnMgZGFzIG1hY2hlbiB3dWVyZGVzdC4uLgogIC0gTmliZWwKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEtvbnplcHR1ZWJlcm5haG1lIHp1ciBTcGllbGVyZ2V3aW5udW5nIChNb250YW51cywgMTUuIEFwciAyMDA1LCAxNjoxMzo0Myk6Cn4jISBybj1OaWJlbCBydD0xMTEzNTEzMzQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMjg1NjEwOApXZWxjaGVyIEFsdHNwaWVsZXIgd2lsbCBhYndhbmRlcm4/IERpZSBsYW5kZW4gZG9jaCBhbGxlIGZydWVoZXIgb2RlciBzcGFldGVyCmluIE1lZ2FzY2htYXJybiwgdW5kIGRhcyBnaWJ0IGRvY2gga2VpbmVyIGZyZWl3aWxsaWcgYXVmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmUgaXNrbGFyIDspIChab29rLCAxNi4gQXByIDIwMDUsIDIxOjQyOjQ3KToKSHVtbmkgc2FndDogaWNoIGdlaCBhdWNoIG1hbCBpbiBtZWluZW4gTWFnZW4KSHVtbmkgZnJpc3N0IEh1bW5pLgpIdW1uaSB2ZXJzY2h3aW5kZXQgZ2FueiBsZWlzZS4KCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5lIGlza2xhciA7KSAoR2xvaW5zb24sIDE2LiBBcHIgMjAwNSwgMjE6NTI6MTMpOgp+IyEgcm49Wm9vayBydD0xMTEzNjgwNTY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMzY4MDU2NwpXYWghIERhZHVyY2ggZW50c3RlaHQgZWluZSBuZXVlIFNpbmd1bGFyaXRhZXQsIGluIGRlciBIQy1TcGllbGVyIGVuZGd1ZWx0aWcKdmVyc2Nod2luZGVuIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmUgaXNrbGFyIDspIChSZXF1aWVtLCAxNi4gQXByIDIwMDUsIDIxOjU1OjA1KToKfiMhIHJuPUdsb2luc29uIHJ0PTExMTM2ODExMzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEzNjgwNTY3CkljaCBkYWNodGUgZWlnZW50bGljaCwgSHVtbmkgZnJpc3N0IGFsbGUgU3BpZWxlciB1bmQgbmljaHQgbnVyIGRpZSBIQ2xlci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmUgaXNrbGFyIDspIChDaGFnYWxsLCAxNi4gQXByIDIwMDUsIDIxOjU1OjQxKToKfiMhIHJuPVJlcXVpZW0gcnQ9MTExMzY4MTMwNSByZz1zY2htYXJybgp+IyEgdGlkPTExMTM2ODA1NjcKTmFqYSwgamV0enQga2FubiBlciBuaWNodCBtZWhyIGZyZXNzZW4sIHdlaWwgZXIgc2ljaCBqYSBzZWxic3QgZ2VmcmVzc2VuCmhhdC4KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZSBpc2tsYXIgOykgKFJlcXVpZW0sIDE2LiBBcHIgMjAwNSwgMjE6NTk6MzcpOgp+IyEgcm49Q2hhZ2FsbCBydD0xMTEzNjgxMzQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMzY4MDU2NwpEYW5uIGR1ZXJmdGUgZXMgd29obCBhdWNoIFByb2JsZW1lIGdlYmVuLCBpaG0gZWluIEJyZWNobWl0dGVsIHp1IHZlcmFicmVpY2hlbiwKZGFtaXQgZXIgc2ljaCBhdXMgc2ljaCBiZWZyZWllbiBrYW5uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOZSBpc2tsYXIgOykgKERhcmtsb3IsIDE2LiBBcHIgMjAwNSwgMjI6MTc6MzQpOgp+IyEgcm49UmVxdWllbSBydD0xMTEzNjgxNTc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExMzY4MDU2NwpFaW5lIG5ldWUgQXJ0IGRlciBTZWxic3Rsb2VzY2h1bmc/CgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBWb2x1bWVuIHZvbiBFaWVybiAoQ2F0d2VhemxlLCAxOS4gQXByIDIwMDUsIDE1OjU2OjAzKToKfiMhIHJuPVd1cnplbCBydD0xMTEzOTE2MDUzIHJnPXB1aXoKfiMhIHRpZD0xMTEzOTE1ODQ4Cldlbm4gZHUgZXMgZWggc2Nob24gZGlza3V0aWVyc3QgLi4uIHZpZWxsZWljaHQgZnJhZ3N0IGR1IGF1Y2ggZ2xlaWNoIG9iIGVzIHdhcwplY2tpZ2VzIGxlZ2VuIGthbm4uIERhcyBpc3QgdmllbGxlaWNodCBlaW5mYWNoZXIgLi4uIHZpZWxsZWljaHQgbmVuIHNjaGlja2VzCkRvZGVrYWVkZXI/IEhtPwoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBWb2x1bWVuIHZvbiBFaWVybiAoR3JpbW1ib3JuLCAxOS4gQXByIDIwMDUsIDE2OjA4OjA2KToKfiMhIHJuPVd1cnplbCBydD0xMTEzOTE5NTcyIHJnPXB1aXoKfiMhIHRpZD0xMTEzOTE1ODQ4ClR5cGlzY2guIER1IGRlbmtzdCBhdWNoIGltbWVyIG51ciBhbiBEZWluZW4gQmF1Y2ggYnp3LiBzZWluZW4gSW5oYWx0LiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVm9sdW1lbiB2b24gRWllcm4gKEhpZ2hsYW5kZXIsIDE5LiBBcHIgMjAwNSwgMTY6MDk6MzApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMTM5MTk2ODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEzOTE1ODQ4CkRpZXNlIEFudHdvcnQgZXJ3YXJ0ZSBpY2ggbm9ybWFsZXJ3ZWlzZSBhdWYgZWluZW4gQXJ0aWtlbCB2b24KSHVtbmksIG5pY2h0IHZvbiBXdXJ6ZWwgOikKCkhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVm9sdW1lbiB2b24gRWllcm4gKFd1cnplbCwgMTkuIEFwciAyMDA1LCAxNjoxMzozNCk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTExMTM5MTk3NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTEzOTE1ODQ4CmljaCBmdWVobGUgbWljaCBhdWNoIG5pY2h0IHdpcmtsaWNoIGdldHJvZmZlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWxmIEZhbnRhc3kgRmFpciAoTXVhZGliLCAyMC4gQXByIDIwMDUsIDExOjUxOjA4KToKfiMhIHJuPVpvb2sgcnQ9MTExMzk4OTA2MiByZz10cmVmZmVuCn4jISB0aWQ9MTExMzk4ODk3OApkZSBoYWFyIGtsaW5ndCBhYmVyIGlyZ2VuZHdpZSBlaGVyIG5hY2ggbmVyIGR3YXJmZmFudGFzeSBmYWlyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOb2NoIHNvIGVpbmUgVGVzdCAuLi4gKENyb2Z0LCAyMS4gQXByIDIwMDUsIDAxOjMxOjE4KToKfiMhIHJuPU11YWRpYiBydD0xMTE0MDM5NDUyIHJnPXd3dwp+IyEgdGlkPTExMTQwMDU2MDIKV2FzIGthbm5zdCBkdSBhbHMgU2hlcmlmZiBkYXp1IHNhZ2VuPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5vY2ggc28gZWluZSBUZXN0IC4uLiAoTXVhZGliLCAyMS4gQXByIDIwMDUsIDAxOjM4OjQwKToKfiMhIHJuPUNyb2Z0IHJ0PTExMTQwMzk4Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMTE0MDA1NjAyCmljaCBrYW5uIGRhenUgc2Nod2VpZ2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOaWNodCBnYW56IEZMVywgYWJlciBmYXN0LiA7LSkgKEFyYXRob3JuLCAyMi4gQXByIDIwMDUsIDIxOjU0OjAzKToKRXJ3YXJ0ZXQgKG9mZmxpbmUpOiBUeWxhawoKUGF1c2UuLi4KCkVyd2FydGV0ICAob25saW5lKTogVHlsYWsKW1RvZDpMYXJzXSBCYXJyYWt1ZGEgaGF0IGdlcmFkZSBUeWxhayB1bWdlYnJhY2h0LgpFcndhcnRldCAob2ZmbGluZSk6IFR5bGFrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUYW5qaXMgLi4uIChQaXRmYWxsLCAyMy4gQXByIDIwMDUsIDIwOjE3OjE0KToKRXBwaSBzZXR6dCBzaWNoIGhpbiB1bmQgZmFlbmd0IGFuIHp1IG1lZGl0aWVyZW4uCkVwcGkgc3Rpbmt0IHdpZGVybGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUYW5qaXMgLi4uIChEYXJrbG9yLCAyMy4gQXByIDIwMDUsIDIwOjIyOjQ0KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTExNDI4MDIzNCByZz1zY2htYXJybgp+IyEgdGlkPTExMTQyODAyMzQKRGFzIGpldHp0IGF1Y2ggbm9jaCBkaWUgRWxmZW4gYW5mYW5nZW4genUgc3Rpbmtlbi4uLiA7KQoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5pY2h0IGdhbnogRkxXLCBhYmVyIGZhc3QuIDstKSAoQmFtYmksIDI0LiBBcHIgMjAwNSwgMTM6NTc6NDIpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTExNDE5OTY0MyByZz1zY2htYXJybgp+IyEgdGlkPTExMTQxOTk2NDMKTWVociB3dWVyZGUgbWljaCBpbnRlcmVzc2llcmVuOiB3YXIgZGFzICM5OSBvZGVyICMxMDA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFyYXRob3JuLCAyNC4gQXByIDIwMDUsIDIxOjE5OjI0KToKW0FuZmFlbmdlcjpTY2h3dWRpXSB3YXNzZXJidWVmZmVsIGFuZ3JlaWZlbiB3YXIga2VpbmUgZ3V0ZSBpZGVlCgpbVG9kOkxhcnNdIEVpbiBXYXNzZXJidWVmZmVsIGhhdCBnZXJhZGUgU2Nod3VkaSB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSnVyaXN0ZW4uLi4gKEFtYXJ5bGxpcywgMjYuIEFwciAyMDA1LCAxOTozNzo1Mik6CkdlcmFkZSBpbiBlaW5lciBzY2hvZW5lbiBTaWcgZ2VmdW5kZW46CgoiIkRpZSBhbHRlIFZlcmtlaHJzcmVnZWwgbmFlbWxpY2ggJ1dlbm4gZGllIEt1dHNjaGVyIGJlc29mZmVuIHNpbmQsIGxhdWZlbgpkaWUgUGZlcmRlIGFtIGJlc3RlbicgKHZnbC4gU2ltcm9jaywgTnIuNzg2MWEpLCBrYW5uIGhldXRlIHJlY2h0bGljaApuaWNodCBtZWhyIHVuZWluZ2VzY2hyYWVua3QgR3VlbHRpZ2tlaXQgYmVhbnNwcnVjaGVuLiIKLS0gQUcgS29lbG4sIFVydGVpbCB2b20gMTIuIE9rdG9iZXIgMTk4NCAoTkpXIDE5ODYsIDEyNjYpCgpBbWEqLCBraWNoZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEp1cmlzdGVuLi4uIChXdXJ6ZWwsIDI3LiBBcHIgMjAwNSwgMDk6MjE6MTkpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTExMTQ1MzcwNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE0NTM3MDcyCmFiZXIgZXMgc3RpbW10IGltbWVybm9jaC4gd29iZWkgbWlyIG5pY2h0IGtsYXIgaXN0LCB3YXMgZGFzIHJlY2h0bGljaApiZWRldXRlbiBtYWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEp1cmlzdGVuLi4uIChWZWN0b3IsIDI3LiBBcHIgMjAwNSwgMDk6MjU6NDEpOgp+IyEgcm49V3VyemVsIHJ0PTExMTQ1ODY0Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE0NTM3MDcyCmRhcyBtYW4gc2ljaCBuaWNodCBpbW1lciBhdWYgZGllIHdhaHJoZWl0IGJlcnVmZW4ga2FubiA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLdW5kZW5zZXJ2aWNlIChSYW5nb3JuLCAyNy4gQXByIDIwMDUsIDEyOjU1OjE3KToKKndlaXRlcmxlaXQqCgpVbnNlciBNaXRnZWZ1ZWhsIGdpbHQgZGVuIE1lbnNjaGVuLCBkaWUgdGFndGFlZ2xpY2ggdW5lcmZhaHJlbmVuIExldXRlbgp6ZWlnZW4gZHVlcmZlbiwgZGFzcyBpaHIgQ29tcHV0ZXIgbmljaHQga2FwdXR0LCBzb25kZXJuIGRlciBOZXR6c3RlY2tlciBuaWNodApkcmluLCBkZXIgUEMgbmljaHQgYW4gaXN0LCB1c3cuCkRpZSBSZWRlIGlzdCB2b24gZGVuIE1lbnNjaGVuLCBkaWUgYW4gZGVyIEhvdGxpbmUgdmllbGVyIGdyb3NzZXIKQ29tcHV0ZXItS29uemVybmUgc2l0emVuLiBXYXMgZGllIGRvcnQgZXJsZWJlbiBpc3Qgei5ULiBlY2h0IHVuZ2xhdWJ3dWVyZGlnLgpIaWVyIGVpbiBwYWFyIEJlaXNwaWVsZToKIApDb21wYXEgZXJzZXR6dCBkYXMgS29tbWFuZG8gInByZXNzIGFueSBLZXkiIGR1cmNoICIgcHJlc3MgUmV0dXJuIEtleSIgd2VpbAplaW5lIEZsdXQgdm9uIEFucnVmZXJuIGZyYWd0ZSwgd28gZGllIFRhc3RlICJBbnkiIHNlaS4KIApFaW4gS3VuZGUgZGVyIEZpcm1hIEFTVCBiZXNjaHdlcnRlIHNpY2gsIGRpZSBNYXVzIHNlaSBtaXQgZGVyClNjaG11dHphYmRlY2t1bmcgc2Nod2VyIHp1IGJlZGllbmVuLiBFcyBzdGVsbHRlIHNpY2ggaGVyYXVzLCBkYXNzIGRpZQoiQWJkZWNrdW5nIiBkZXIgUGxhc3Rpa3NhY2sgd2FyLCBpbiBkZW0gZGllIE1hdXMgZ2VsaWVmZXJ0IHd1cmRlLgogCkVpbiBhbmRlcmVyIEFTVC1LdW5kZSB3dXJkZSBnZWJldGVuIGVpbmUgS29waWUgZWluZXIgZmVobGVyaGFmdGVuIERpc2tldHRlCmVpbnp1c2VuZGVuLiBFaW5pZ2UgVGFnZSBzcGFldGVyIHRyYWYgYmVpIGRlciBGaXJtYSBlaW4gQnJpZWYgbWl0IEZvdG9rb3BpZW4KZWJlbiBqZW5lciBEaXNrZXR0ZSBlaW4uCiAKRWluIEt1bmRlIGRlciBGaXJtYSBEZWxsIGJlc2Nod2VydGUgc2ljaCwgZXIga29lbm5lIG1pdCBzZWluZW0gQ29tcHV0ZXIgTmljaHQKZmF4ZW4uIE5hY2ggNDAgTWludXRlbiBhbSBUZWxlZm9uIGZhbmQgZGVyIEJlcmF0ZXIgaGVyYXVzLCBkYXNzIGRlciBLdW5kZQplaW4gYmVzY2hyaWViZW5lcyBCbGF0dCB2b3IgZGVuIE1vbml0b3IgZ2VoYWx0ZW4gdW5kIGRpZSBUYXN0ZSAiU2VuZGVuIgpnZWRydWVja3QgaGF0dGUuCiAKRWluIHZlcndpcnJ0ZXIgS3VuZGUgYmVyaWNodGV0ZSBJQk0sIHNlaW4gQ29tcHV0ZXIga29lbm5lIGRlbiBEcnVja2VyIG5pY2h0CmZpbmRlbi4gRXIgaGFiZSBleHRyYSBkZW4gQmlsZHNjaGlybSBnZWdlbiBkZW4gRHJ1Y2tlciBnZWRyZWh0LCBhYmVyIFNlaW4KQ29tcHV0ZXIgInNlaGUiIGRlbiBEcnVja2VyIGltbWVyIG5vY2ggbmljaHQuCiAKRWluZSBhdWZnZXd1ZWhsdGUgRGVsbC1LdW5kaW4gc2NoYWZmdGUgZXMgbmljaHQsIGlocmVuIENvbXB1dGVyIHp1IHN0YXJ0ZW4uCk5hY2hkZW0gc2ljaCBkZXIgVGVjaG5pa2VyIHRlbGVmb25pc2NoIHVlYmVyemV1Z3QgaGF0dGUsIGRhc3MgZGFzIEdlcmFldCBhbnMKU3Ryb21uZXR6IGFuZ2VzY2hsb3NzZW4gd2FyLCBmcmFndGUgZXIsIHdhcyBwYXNzaWVyZSwgd2VubiBzaWUgZGVuClN0YXJ0a25vcGYgZHJ1ZWNrZS4gRGllIEt1bmRpbiBhbnR3b3J0ZXRlOiAiSWNoIGRydWVja2UgYXVmIGRpZXNlcyBGdXNzcGVkYWwsCmFiZXIgbmljaHRzIHBhc3NpZXJ0LiIgRXMgc3RlbGx0ZSBzaWNoIGhlcmF1cywgZGFzcyBkYXMgIkZ1c3NwZWRhbCIgZGllIE1hdXMKd2FyLgogCkRpZSBmb2xnZW5kZSBHZXNjaGljaHRlIGlzdCBiZWltIEt1bmRlbmRpZW5zdCB2b24gV29yZFBlcmZlY3QgcGFzc2llcnQuIFdpZQpuaWNodCBhbmRlcnMgenUgZXJ3YXJ0ZW4sIHd1cmRlIGRlbSBLdW5kZW5iZXRyZXVlciBnZWt1ZW5kaWd0OyBBbGxlcmRpbmdzCmZ1ZWhydCBkaWUgYmV0cmVmZmVuZGUgUGVyc29uIGRlcnplaXQgZWluZW4gQXJiZWl0c2dlcmljaHRzcHJvemVzcyBhdWYKV2llZGVyZWluc3RlbGx1bmcgZ2VnZW4gQ29yZWwsIHdlaWwgZGllIEt1ZW5kaWd1bmcgb2huZSBhdXNyZWljaGVuZGVuIEdydW5kCmF1c2dlc3Byb2NoZW4gd29yZGVuIHNlaW4gc29sbC4gRGFzIFRlbGVmb25nZXNwcmFlY2gsIGRhcyB6dSBkZXIgS3VlbmRpZ3VuZwpnZWZ1ZWhydCBoYXR0ZSwgd3VyZGUgd2llIGZvbGd0IG1pdGdlc2Nobml0dGVuOgoiSGllciBpc3QgZGVyIEt1bmRlbmRpZW5zdCB2b24gV29yZFBlcmZlY3QsIGthbm4gaWNoIElobmVuIGhlbGZlbj8iCiJKYSwgaWNoIGhhYmUgUHJvYmxlbWUgbWl0IFdvcmRQZXJmZWN0IgoiV2FzIGZ1ZXIgUHJvYmxlbWUgc2luZCBkYXM/IgoiQWxzbywgaWNoIGhhYmUgZ2VyYWRlIGdldGlwcHQsIHVuZCBwbG9ldHpsaWNoIHdhcmVuIGRpZSBXb2VydGVyIHdlZy4iCiJXaWUgZGFzPyIKIlNpZSBzaW5kIHZlcnNjaHd1bmRlbi4iCiJIbW1tLiBTYWdlbiBTaWUsIHdpZSBzaWVodCBJaHIgQmlsZHNjaGlybSBqZXR6dCBhdXM/IgoiRGEgaXN0IG5pY2h0cy4iCiJOaWNodHM/IgoiRGVyIFNjaGlybSBpc3QgbGVlci4gRGEga29tbXQgYXVjaCBuaWNodHMsIHdlbm4gaWNoIHRpcHBlLiIKIkJlZmluZGVuIFNpZSBzaWNoIG5vY2ggaW4gV29yZFBlcmZlY3QsIG9kZXIgaGFiZW4gU2llIFdpbmRvd3MgYmVlbmRldD8iCiJXb3JhbiBtZXJrZSBpY2ggZGFzPyIKIlNlaGVuIFNpZSBDOkVpbmdhYmUgdm9yIHNpY2g/IgoiV2FzIGlzdCBlaW5lIFNlaGVpbmdhYmU/IgoiTGFzc2VuIHdpciBkYXMuIEtvZW5uZW4gU2llIGRlbiBDdXJzb3IgdWViZXIgZGVuIFNjaGlybSBiZXdlZ2VuPyIKIkVzIGdpYnQga2VpbmVuIEN1cnNvci4gSWNoIGhhYiBJaG5lbiBkb2NoIGdlc2FndCwgbmljaHRzLCB3YXMgaWNoIGVpbmdlYmUsCndpcmQgYW5nZW5vbW1lbi4iCiJIYXQgSWhyIE1vbml0b3IgZWluZSBBbnplaWdlIGZ1ZXIgZGllIFN0cm9tdmVyc29yZ3VuZz8iCiJXYXMgaXN0IGVpbiBNb25pdG9yPyIKIkRhcyBpc3QgZGFzIERpbmcgbWl0IGRlbSBCaWxkc2NoaXJtLCBkYXMgd2llIGVpbiBGZXJuc2VoZXIgYXVzc2llaHQuIEdpYnQKZXMgZGEgZWluIGtsZWluZXMgTGljaHQsIGRhcyBsZXVjaHRldCwgd2VubiBkZXIgU2NoaXJtIGFuIGlzdD8iICJXZWlzcyBpY2gKbmljaHQuCiJHdXQsIGRhbm4gc2VoZW4gU2llIGRvY2ggYml0dGUgYXVmIGRlciBSdWVja3NlaXRlIGRlcyBNb25pdG9ycyBuYWNoIHVuZApzdWNoZW4gZGllIFN0ZWxsZSwgd28gZGFzIFN0cm9ta2FiZWwgaGVyYXVza29tbXQuIEtvZW5uZW4gU2llIGRhcyBzZWhlbj8iCiJKYSwgaWNoIGdsYXViZSBzY2hvbi4iCiJTZWhyIGd1dC4gRm9sZ2VuIFNpZSBqZXR6dCBkZW0gU3Ryb21rYWJlbCB1bmQgc2FnZW4gU2llIG1pciBiaXR0ZSwgb2IgZXMKZWluZ2VzdGVja3QgaXN0LiIKIi4uLi5KYSwgaXN0IGVzLiIKIkFscyBTaWUgaGludGVyIGRlbSBNb25pdG9yIHN0YW5kZW4sIGhhYmVuIFNpZSBkYSBhdWNoIGdlc2VoZW4sIG9iIHp3ZWkKS2FiZWwgZWluZ2VzdGVja3Qgd2FyZW4gdW5kIG5pY2h0IG51ciBlaW5lcz8iCiJOZWluLiIKIkRhIG11ZXNzZW4gendlaSBLYWJlbCBzZWluLiBXZW5uIFNpZSBiaXR0ZSBub2NoIGVpbm1hbCBoaW50ZXIgZGVuIE1vbml0b3IKc2NoYXVlbiwgb2IgZXMgZGEgZWluIHp3ZWl0ZXMgS2FiZWwgZ2lidC4iCiIuLi5Pa2F5LCBkYXMgS2FiZWwgaXN0IGRhLi4iCiJGb2xnZW4gU2llIGJpdHRlIGRlbSBLYWJlbCB1bmQgdGVpbGVuIFNpZSBtaXIgZGFubiBiaXR0ZSBtaXQsIG9iIGVzIGZlc3QgaW4KSWhyZW4gQ29tcHV0ZXIgZWluZ2VzdG9lcHNlbHQgaXN0LiIKIkljaCBrYW5uIG1pY2ggbmljaHQgc28gd2VpdCBydWViZXJiZXVnZW4uIgoiQWhhLiBLb2VubmVuIFNpZSB3ZW5pZ3N0ZW5zIHNlaGVuLCBvYiBlcyBlaW5nZXN0ZWNrdCBpc3Q/IgoiTmVpbi4iCiJWaWVsbGVpY2h0LCB3ZW5uIFNpZSBzaWNoIG1pdCBkZW0gS25pZSBhYnN0dWV0emVuIHVuZCBldHdhcyBuYWNoIHZvcgpsZWhuZW4/IgoiRGFzIGxpZWd0IG5pY2h0IGFuIG1laW5lciBIYWx0dW5nIC0gZXMgaXN0IGR1bmtlbCBoaWVyLiIKIkR1bmtlbD8iCiJKYSAtIGRpZSBCdWVyb2xldWNodGVuIHNpbmQgYXVzLCB1bmQgZGFzIGVpbnppZ2UgTGljaHQga29tbXQgZHVyY2ggZGFzCkZlbnN0ZXIuIgoiR3V0LCBzY2hhbHRlbiBTaWUgZGFubiBiaXR0ZSBkYXMgTGljaHQgaW4gSWhyZW0gQnVlcm8gYW4uIgoiS2FubiBpY2ggbmljaHQuIgoiTmljaHQ/IFdpZXNvPyIKIldlaWwgd2lyIFN0cm9tYXVzZmFsbCBoYWJlbi4iCkVpbiBTdHJvbS4uLiBlaW4gU3Ryb21hdXNmYWxsPyBBYmVyIGRhbm4gaGFiZW4gd2lycyBqZXR6dC4gSGFiZW4gU2llIG5vY2gKZGllIEthcnRvbnMsIGRpZSBIYW5kYnVlY2hlciB1bmQgZGllIFZlcnBhY2t1bmcsIGluIGRlciBJaHIgQ29tcHV0ZXIKYXVzZ2VsaWVmZXJ0IHd1cmRlPyIKIkphLCBkaWUgaGFiZSBpY2ggaW0gU2NocmFuay4iCiJHdXQuIEdlaGVuIFNpZSBoaW4sIGJhdWVuIFNpZSBJaHIgU3lzdGVtIGF1c2VpbmFuZGVyIHVuZCB2ZXJwYWNrZW4gU2llIEVzCmJpdHRlIHNvLCB3aWUgU2llIGVzIGJla29tbWVuIGhhYmVuLiBEYW5uIG5laG1lbiBTaWUgZXMgYml0dGUgenUgZGVtIExhZGVuCnp1cnVlY2ssIHdvIFNpZSBkZW4gQ29tcHV0ZXIgZ2VrYXVmdCBoYWJlbi4iCiJJbSBFcm5zdD8gSXN0IGVzIHNvIHNjaGxpbW0/IgoiSWNoIGJlZnVlcmNodGUsIGphLiIKIkFsc28gZ3V0LCB3ZW5uIFNpZSBkYXMgc2FnZW4uIFVuZCB3YXMgZXJ6YWVobGUgaWNoIGRlbmVuPyIKIlNhZ2VuIFNpZSBpaG5lbiwgU2llIHdhZXJlbiB6dSBibG9lZCBmdWVyIGVpbmVuIENvbXB1dGVyLiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJzdGVoZW4gbm9ybWFsZSBMZXV0ZSBkaWVzZW4gU2F0ej8gKE1lc2lyaWksIDI3LiBBcHIgMjAwNSwgMTM6MTM6NTcpOgpiZWkgZGVuIE9rdG9iaXMsIGRpZSBzY2hvbiBlaW4gT3V0aW5nIGhhdHRlbiwgc2luZCBKdW5nZW4gZ2FueiBzdGFyawp1ZWJlcnJlcHJhZXNlbnRpZXJ0Ck1lc2ksIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVmVyc3RlaGVuIG5vcm1hbGUgTGV1dGUgZGllc2VuIFNhdHo/IChDYXR3ZWF6bGUsIDI3LiBBcHIgMjAwNSwgMTM6MTU6NTEpOgp+IyEgcm49TWVzaXJpaSBydD0xMTE0NjAwNDM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNDYwMDQzNwpEYXMgaGVpc3N0LCBkYXNzIGltIE9rdG9iZXIgbWVociBKdW5nZW4gYWxzIE1hZWRjaGVuIGdlYm9yZW4gd2VyZGVuLiBXYXJ1bSBkYXMKb3V0ZW5kIGlzdCwgd2Vpc3MgaWNoIG5pY2h0IC4uLgoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFZlcnN0ZWhlbiBub3JtYWxlIExldXRlIGRpZXNlbiBTYXR6PyAoTWFoYXJldCwgMjcuIEFwciAyMDA1LCAxMzoxNzowNyk6Cn4jISBybj1DYXR3ZWF6bGUgcnQ9MTExNDYwMDU1MSByZz1zY2htYXJybgp+IyEgdGlkPTExMTQ2MDA0MzcKTmVlLCBzbyBwYXVzY2hhbCB3dWVyZGUgaWNoIGRhcyBuaWNodCBzYWdlbi4gTnVyIGJlaSBkZW5lbiwgZGllIGltIE9rdG9iZXIKVGVybWluIGhhYmVuIHVuZCBkaWUgc2Nob24gd2lzc2VuLCB3YXMgZXMgd2lyZCwgc2luZCBtZWhyIEp1bmdlbi4gSWNoIGdsYXViZQpuaWNodCwgZGFzcyBkYXMgZnVlciBWZXJhbGxnZW1laW5lcnVuZ2VuIGF1c3JlaWNodCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVmVyc3RlaGVuIG5vcm1hbGUgTGV1dGUgZGllc2VuIFNhdHo/IChHbG9pbnNvbiwgMjcuIEFwciAyMDA1LCAxMzoxNzo0OSk6Cn4jISBybj1NYWhhcmV0IHJ0PTExMTQ2MDA2Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE0NjAwNDM3CldhaHJzY2hlaW5saWNoIGJla29tbWVuIGFsbGUsIGRpZSBuYWNoc2VoZW4gbGFzc2VuIHp1ciBTdHJhZmUgZWluZW4gQmVuZ2VsLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFZlcnN0ZWhlbiBub3JtYWxlIExldXRlIGRpZXNlbiBTYXR6PyAoTWFoYXJldCwgMjcuIEFwciAyMDA1LCAxMzoxOTowOSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTE0NjAwNjY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNDYwMDQzNwpOYWphLCBuYWNoZ2VzZWhlbiB3ZXJkZW4gbXVzcyBqYS4gV2VubiBkZXIgQXJ6dCBkYWJlaSBlaW4gYmVzdGltbXRlcyBEZXRhaWwKZW50ZGVja3QsIGlzdCBkYXMgbmUgYW5kZXJlIEZyYWdlLCBvYiBtYW4gc2ljaCBkYXMgc2FnZW4gbGFlc3N0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVmVyc3RlaGVuIG5vcm1hbGUgTGV1dGUgZGllc2VuIFNhdHo/IChHbG9pbnNvbiwgMjcuIEFwciAyMDA1LCAxMzoxOTo0NSk6Cn4jISBybj1NYWhhcmV0IHJ0PTExMTQ2MDA3NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE0NjAwNDM3CkRhcyBpc3Qgd2llIGJlaSBTY2hyb2VkaW5nZXJzIEthdHplLCBlcnN0IHdlbm4gbWFuIHNpY2ggdmVyZ2V3aXNzZXJ0IHdpcmQgZXMKZmVzdGdlbGVndC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBWZXJzdGVoZW4gbm9ybWFsZSBMZXV0ZSBkaWVzZW4gU2F0ej8gKE1haGFyZXQsIDI3LiBBcHIgMjAwNSwgMTM6MTk6NTUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTExNDYwMDc4NSByZz1zY2htYXJybgp+IyEgdGlkPTExMTQ2MDA0MzcKYWNoIHNvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBWZXJzdGVoZW4gbm9ybWFsZSBMZXV0ZSBkaWVzZW4gU2F0ej8gKEdsb2luc29uLCAyNy4gQXByIDIwMDUsIDEzOjIwOjM5KToKfiMhIHJuPU1haGFyZXQgcnQ9MTExNDYwMDc5NSByZz1zY2htYXJybgp+IyEgdGlkPTExMTQ2MDA0MzcKR2VuYXUuIFVuZCBiZWkgSGVybWFwaHJvZGl0ZW4gd3VyZGUgZWluZmFjaCBuaWUgbmFjaGdlc2VoZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogVmVyc3RlaGVuIG5vcm1hbGUgTGV1dGUgZGllc2VuIFNhdHo/IChNYWhhcmV0LCAyNy4gQXByIDIwMDUsIDEzOjIxOjExKToKfiMhIHJuPUdsb2luc29uIHJ0PTExMTQ2MDA4Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE0NjAwNDM3CkRhbm4gc2VoIGljaCBkb2NoIGxpZWJlciBuYWNoICw5CjoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFZlcnN0ZWhlbiBub3JtYWxlIExldXRlIGRpZXNlbiBTYXR6PyAoQ2F0d2VhemxlLCAyNy4gQXByIDIwMDUsIDEzOjIyOjI1KToKfiMhIHJuPU1haGFyZXQgcnQ9MTExNDYwMDg3MSByZz1zY2htYXJybgp+IyEgdGlkPTExMTQ2MDA0MzcKSmV0enQgZ2xlaWNoPwoKWVRDCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWwgd2llZGVyIEZMVy4gKERob2pha3QsIDI4LiBBcHIgMjAwNSwgMTE6NTc6MjYpOgpbQWxsZ2VtZWluOktyc3RmcnNdIGFyZ3MsIGVpbmUgZG9nZ2UgZ3JlaWZ0IG1pY2ggYW4KW1RvZDpMYXJzXSBFaW5lIERvZ2dlIGhhdCBnZXJhZGUgS3JzdGZycyB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hbCB3aWVkZXIgRkxXLiAoTW9udGFudXMsIDI4LiBBcHIgMjAwNSwgMTI6MTA6NTEpOgp+IyEgcm49RGhvamFrdCBydD0xMTE0NjgyMjQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNDY4MjI0NgpUamEsIHNvd2FzIHNvbHRsZSBtYW4gaGFsdCBhdWNoIGF1ZiBkZW0gQWJlbnRldWVya2FuYWwgYnJ1ZWxsZW4uIEF1ZiBBbGxnZW1laW4KbnVldHp0IGRhcyBuaXguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hbCB3aWVkZXIgRkxXLiAoUm9uZGEsIDI5LiBBcHIgMjAwNSwgMjM6MTQ6NDMpOgp+IyEgcm49TW9udGFudXMgcnQ9MTExNDY4MzA1MSByZz1zY2htYXJybgp+IyEgdGlkPTExMTQ2ODIyNDYKS2xhciBudWV0enQgZGFzIHdhczogTWFuIGxhbmRldCBkYW1pdCBpbiBzY2htYXJybi4KClJvbmRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBWZXJzdGVoZW4gbm9ybWFsZSBMZXV0ZSBkaWVzZW4gU2F0ej8gKEhvYm8sIDMwLiBBcHIgMjAwNSwgMjE6MDM6MDMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTExNDYwMDY2OSByZz1zY2htYXJybgp+IyEgdGlkPTExMTQ2MDA0MzcKRGFtYWxzIGluIGRlciBTY2h3YW5nZXJzY2hhZnQgbWl0IEFkcmlhbiBiZWltICBVbHRyYXNjaGFsbGVuLgpBZXJ6dGluOiBBZWgsIHdvbGxlbiBTaWUgZWlnZW50bGljaCB3aXNzZW4sIHdhcyBlcyB3aXJkPwpJY2g6IFdlbm4gaWNoIERBUyBuaWNodCBnZXNlaGVuIGhhZXR0ZSwgbXVlc3N0ZSBpY2ggbWl0IG1laW5lbSBPcHRpa2VyIHJlZGVuLgoKVW5kIHNwYWV0ZXIsIGF1ZiBkaWUgRnJhZ2UsIG9iIGVzIGVpbiBKdW5nZSBvZGVyIE1hZWRjaGVuIHdpcmQ6CkVudHdlZGVyIHdpcmQgZXMgZWluIEp1bmdlIG9kZXIgc2llIGhhdCBlaW4gR2VzY2h3dWVyIHp3aXNjaGVuIGRlbiBCZWluZW4uCgogICBIb2JvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbnRlcmVzc2FudGVyIE9ydCAuLi4gKExpYXJhLCAgMS4gTWFpIDIwMDUsIDAyOjQ0OjM5KToKSmFtZXNvbiBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogTmV1c3RhZHQgYW4gZGVyIFdlaW5zdHJhc3NlIG9kZXIgYXVjaCBtYWwgS2FybHNydWhlICh1ZWJlcgpOZWN0aW9uIHJlZnVzZWQpLgpFaW5nZWxvZ2d0IHNlaXQ6IFNhbSwgMzAuIEFwciAyMDA1LCAwOTo1MzowMApWb2xsZXIgTmFtZTogSmFtZXNvbiBkZXIgYW5nZWhlbmRlIFNlaGVyClJhc3NlOiBNZW5zY2gsICBHaWxkZTogQWJlbnRldXJlciwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogMjgyZCAyMDoxNToxMiwgICBTcGllbGVybGV2ZWw6IDI1LCAgIEdpbGRlbmxldmVsOiAyNQpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiB2b3IgZGVtIDEwLiBOb3YgMTk5NQpIb21lcGFnZTogaHR0cDovL3d3dy5zdHVkLnVuaS1rYXJsc3J1aGUuZGUvfnVtZGcKSUNROiA0Mzk1MDgxNwpCaXNoZXIgYmVyZWl0cyAxMiBtYWwgZ2VzdG9yYmVuCgpTb3NvLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCBzb3NvIChMb29nYXQsICAyLiBNYWkgMjAwNSwgMDI6MDA6MDgpOgoKLS0tCgpmaW5nZXIgbmVpc2tsYQpNaXN0ISEhIERhcyBFaW5sZXNlbiBkZXIgRGF0ZW4ga2xhcHB0IG5pY2h0IHdpZSBlcyBzb2xsIDotKApmaW5nZXIgbmVpc2tsYQpOZWlza2xhIGlzdCBuaWNodCBhbndlc2VuZC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogVGVsZWtvbS1SZXNlbGxlci4KWnVsZXR6dCBhdXNnZWxvZ2d0OiBNb24sICAyLiBNYWkgMjAwNSwgMDE6NTc6NDQgKDAwCgotLS0KbmVpc2tsYSAhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFYmF5Li4uIChBbWFyeWxsaXMsICAyLiBNYWkgMjAwNSwgMTg6NTc6MzIpOgpodHRwOi8vaW1nLnBob3RvYnVja2V0LmNvbS9hbGJ1bXMvdjQ3NC9waWJvL2lkaW90LmpwZwoKQW1hKiwga2ljaGFuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFYmF5Li4uIChLZWxseWJ1bmR5LCAgMi4gTWFpIDIwMDUsIDE5OjAxOjE0KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMTE1MDUzMDUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNTA1MzA1MgpGcmFndCBzaWNoLCB3ZXIgZGVyIElkaW90IGlzdCwgZGVyIEthZXVmZXIgb2RlciBkZXIgVmVya2FldWZlcj8gS2FlbWUgd29obAphdWNoIGRyYXVmIGFuLCB3aWUgZGllIEFsdGUgYXVzc2llaHQgOy1QCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEViYXkuLi4gKEFtYXJ5bGxpcywgIDIuIE1haSAyMDA1LCAxOTowMjowMik6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTExMTUwNTMyNzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE1MDUzMDUyCkRpZSBCZXdlcnR1bmcgZGVzIFZlcmthZXVmZXJzIHdhciBhdWNoIG5pY2h0IHNjaGxlY2h0OgoiSGF0IGRpZSBLYXJ0ZW4gc29nYXIgYWJnZWhvbHQgISBOdXIgenUgZW1wZmVobGVuICEgS2xhc3NlIgoKQW1hKiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRWJheS4uLiAoRGFya2xvciwgIDIuIE1haSAyMDA1LCAyMjowNTowMik6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTExNTA1MzMyMiByZz1zY2htYXJybgp+IyEgdGlkPTExMTUwNTMwNTIKOnZlcnN0ZWh0IGRlbiBXaXR6IG5pY2guLi4KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEViYXkuLi4gKEJhbWJpLCAgMy4gTWFpIDIwMDUsIDIyOjExOjI0KToKfiMhIHJuPURhcmtsb3IgcnQ9MTExNTA2NDMwMiByZz1zY2htYXJybgp+IyEgdGlkPTExMTUwNTMwNTIKQXJnaCEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRWJheS4uLiAoQW1hcnlsbGlzLCAgMy4gTWFpIDIwMDUsIDIzOjExOjU5KToKfiMhIHJuPURhcmtsb3IgcnQ9MTExNTA2NDMwMiByZz1zY2htYXJybgp+IyEgdGlkPTExMTUwNTMwNTIKd2llc28gbmljaHQ/IHdhcnN0IER1IGV0d2EgZGVyIFZlcmthZXVmZXI/IDopCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBDb2RlLUZvcm1hdHRlciBmdWVyIChWaXN1YWwpLUJhc2ljIChSb25kYSwgIDYuIE1haSAyMDA1LCAyMzo1MzowNSk6Cn4jISBybj1NdXBmZWwgcnQ9MTExNTQxNjE5NiByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMTE1Mjk4MjY4CkN5Z3dpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoamEhIChKYWRhd2luLCAgNy4gTWFpIDIwMDUsIDEzOjQ2OjIwKToKQXVzIFhpcGhvcyBIYWVuZGVuIGxvZXN0IHNpY2ggZWluZSBnZXdhbHRpZ2UgRmV1ZXJ3YWx6ZSwgZGllIHNvZm9ydApkYXZvbnJvbGx0LgpEaWUgRmV1ZXJ3YWx6ZSByb2xsdCBuYWNoIFN1ZWR3ZXN0ZW4uCkplbWFuZCB3aXJkIHZvbiBlaW5lciBEcnVja3dlbGxlIGhlcmVpbmdlc2NobGV1ZGVydC4KCkphZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBsYW5nZSBncmF1ZSBoYWFyZSAoR2FieWxvbiwgIDcuIE1haSAyMDA1LCAxNjoyODo0MSk6Cn4jISBybj1XdXJ6ZWwgcnQ9MTExNTQ3NTgyOSByZz1rdWx0dXIKfiMhIHRpZD0xMTE1NDc1ODI5CnVuZCB3ZXIgc29sbCBkaWUgZ3J1cHBlIGtlbm5lbiwgYXVzc2VyIHZpZWxsZWljaHQgbWlyaWwgdW5kIHZpcGVyPyA7KQoKU0NOUgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBsYW5nZSBncmF1ZSBoYWFyZSAoS2VsbHlidW5keSwgIDcuIE1haSAyMDA1LCAxNjoyOTo0Nyk6Cn4jISBybj1HYWJ5bG9uIHJ0PTExMTU0NzYxMjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE1NDc1ODI5Ckp1bmdnZW11ZXNlLCB3ZXJkIGVyc21hIHRyb2NrZW4gaGludGVyIGRlbiBPaHJlbiA7LSkKU0MgZWJlbmZhbGxzIE5SIDstUAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbGFuZ2UgZ3JhdWUgaGFhcmUgKEdhYnlsb24sICA3LiBNYWkgMjAwNSwgMTY6MzA6MjkpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMTE1NDc2MTg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNTQ3NTgyOQpodWksIGRhbmtlIGZ1ZXIgZGllIGJsdW1lbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogbGFuZ2UgZ3JhdWUgaGFhcmUgKFd1cnplbCwgIDcuIE1haSAyMDA1LCAxNjo0MjozOSk6Cn4jISBybj1HYWJ5bG9uIHJ0PTExMTU0NzYyMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE1NDc1ODI5CmR1IGhhc3QgYXVzc2VyZGVtIG1vbnRhbnVzIHZlcmdlc3Nlbi4gZGVyIGlzdCBpbW1lcmhpbiBzY2hvbiBpbiBhbHRlcnNyZW50ZQoob2RlciB3YXIgZGFzIGFsdGVyc3RlaWx6ZWl0PyBlZ2FsKS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogbGFuZ2UgZ3JhdWUgaGFhcmUgKEppbWRpZ3JpeiwgIDcuIE1haSAyMDA1LCAyMjowOTowNCk6Cn4jISBybj1HYWJ5bG9uIHJ0PTExMTU0NzYxMjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE1NDc1ODI5Ck9oIG1hbm4sCgpkYSBzaWVodCBtYW4gc2Nob24gd2llZGVyIGRpZSB2ZXJ3ZWljaGxpY2h0ZSBKdWdlbmQuCkVzIGlzdCBlaW5mYWNoIGhvZmZudW5nc2xvcy4KCkpkRyBzaW5ndCAiSSBsb3ZlIHlvdSB1bnRpbCBteSBzZWVkcyBhcmUgZHJpZWQgdXAiIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBsYW5nZSBncmF1ZSBoYWFyZSAoTXVhZGliLCAgOC4gTWFpIDIwMDUsIDEyOjI3OjAyKToKfiMhIHJuPUdhYnlsb24gcnQ9MTExNTQ3NjEyMSByZz1zY2htYXJybgp+IyEgdGlkPTExMTU0NzU4MjkKYWxzbyBiZWkgY3JlYW0gdW5kIGtvbnplcnQga29tbWVuIGJlaSBtaXIgc2Nob24gYWt1dGUgbmVpZGdlZnVlaGxlIGF1Zgp1bmQgaWNoIGJpbiBlaWdlbnRsaWNoIG5pY2h0IHNvIGFsdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbGFuZ2UgZ3JhdWUgaGFhcmUgKEdhYnlsb24sICA4LiBNYWkgMjAwNSwgMTk6MzI6MTQpOgp+IyEgcm49TXVhZGliIHJ0PTExMTU1NDgwMjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE1NDc1ODI5CmhtbSwgZGFubiBpc3QgZGllIGdydXBwZSB3YWhyc2NoZWlubGljaCBlaW5mYWNoIG5pY2h0IHNvIGJla2FubnQsIHdhcwpqYSBuaWNodCBoZWlzc2VuIG11c3MsIGRhc3MgZXMga2VpbmUgZ3V0ZSBtdXNpayBpc3QuCmljaCB3dWVyZGUgYWxsZXJkaW5ncyBhdWNoIGZ1ZXIgc28gbWFuY2ggYWVsdGVyZXMgcmV2aXZhbCBtZWluIGxldHp0ZXMKaGVtZCBnZWJlbi4KCmdhYiBzdW1tdCAnLi4uaSdtIGxlYXZpbmcgaSdtIGxlYXZpbmcgYnV0IHRoZSBmaWdodGVyIHN0aWxsIHJlbWFpbnMuLi4nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBsYW5nZSBncmF1ZSBoYWFyZSAoTXVhZGliLCAgOC4gTWFpIDIwMDUsIDE5OjU2OjE5KToKfiMhIHJuPUdhYnlsb24gcnQ9MTExNTU3MzUzNCByZz1zY2htYXJybgp+IyEgdGlkPTExMTU0NzU4MjkKZHUgbWVpbnN0IHNpZSBpc3QgbmljaHQgc28gYmVrYW5udCwgd2VpbCBkdSBzaWUgbmljaHQga2VubnN0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogbGFuZ2UgZ3JhdWUgaGFhcmUgKEdhYnlsb24sICA4LiBNYWkgMjAwNSwgMTk6NTc6MzEpOgp+IyEgcm49TXVhZGliIHJ0PTExMTU1NzQ5Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE1NDc1ODI5Cm51bmphLCBhbGxlcyBpc3QgcmVsYXRpdiwgZ2VsbD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGxhbmdlIGdyYXVlIGhhYXJlIChLZWxseWJ1bmR5LCAgOC4gTWFpIDIwMDUsIDE5OjU3OjQ3KToKfiMhIHJuPU11YWRpYiBydD0xMTE1NTc0OTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNTQ3NTgyOQppY2ggc2FnIGRvY2gsIGp1bmdlciBodWVwZmVyISBkcm9laG50IHNpY2ggbGllYmVyIGhhYmJhIGhhYmJhIHN1ZGQgc3VkZCBoaXBob3AKdW5kIGFlaG5saWNoZW4gYWt1c3Rpc2NoZW4gc29uZGVybXVlbGwgcmVpbiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGxhbmdlIGdyYXVlIGhhYXJlIChHYWJ5bG9uLCAgOC4gTWFpIDIwMDUsIDE5OjU4OjQ5KToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTExNTU3NTA2NyByZz1zY2htYXJybgp+IyEgdGlkPTExMTU0NzU4MjkKd29oZXIga2VubnN0IGR1IG1pY2ggbnVyIHNvIGdlbmF1PyB2ZXJibHVlZmZlbmQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBsYW5nZSBncmF1ZSBoYWFyZSAoS2VsbHlidW5keSwgIDguIE1haSAyMDA1LCAyMDowMDoxOSk6Cn4jISBybj1HYWJ5bG9uIHJ0PTExMTU1NzUxMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE1NDc1ODI5CkhhYiBnZXJhdGVuLiB1bmQgaW5zIGJsYXVlIGdldHJvZmZlbiBzY2hlaW50cy4gQ3JlYW0gaXMgbmUgTEVHRU5ERSEKV2VyIGRpZSBuaWNodCBrZW5udCwgbGVidCBhdWZtIE1hcnMgb2RlciBzbywgYWJlciBkYSBsZWJ0IGphIEVsdmlzIGF1Y2ggOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBsYW5nZSBncmF1ZSBoYWFyZSAoTXVhZGliLCAgOC4gTWFpIDIwMDUsIDIwOjA0OjE1KToKfiMhIHJuPUdhYnlsb24gcnQ9MTExNTU3NTA1MSByZz1zY2htYXJybgp+IyEgdGlkPTExMTU0NzU4MjkKaWNoIGZyYWcgamEgYmxvc3MKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGxhbmdlIGdyYXVlIGhhYXJlIChIdW1uaSwgIDguIE1haSAyMDA1LCAyMDoxMzoyOCk6Cn4jISBybj1NdWFkaWIgcnQ9MTExNTU3NTQ1NSByZz1zY2htYXJybgp+IyEgdGlkPTExMTU0NzU4MjkKVm9uIENyZWFtIGtlbm4gaWNoIGRlbiBOYW1lbi4gTWVociBhdWNoIG5pY2h0LgoKTmFqYSBndXQuIEljaCB2ZXJtdXRlICghKSBpY2ggaGFiZSBkYXZvbiBzY2hvbm1hbCBlaW4gU3R1ZWNrIGdlaG9lcnQuIFp1b3JkbmVuCmthbm4gaWNoIGhhbHQgZ2VyYWRlIG5peC4KCkh1bW5pClBTOiBBbnR3b3J0IGluIG1lZ2FzY2htYXJybi1UcmFkaXRpb24gYXVmIGRlbiBsZXR6dGVuIEFydGlrZWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBsYW5nZSBncmF1ZSBoYWFyZSAoTXVhZGliLCAgOC4gTWFpIDIwMDUsIDIwOjE2OjA4KToKfiMhIHJuPUh1bW5pIHJ0PTExMTU1NzYwMDggcmc9c2NobWFycm4KfiMhIHRpZD0xMTE1NDc1ODI5CmdlaCBpbiBkZW4gbGFkZW4sIGthdWYgZGlyIGRpZSAidGhvc2Ugd2VyZSB0aGUgZGF5cyItYm94IHVuZCBkaWUgendlaSBsaXZlCmNyZWFtIGFsYmVuCmdlaCBuYWNoIGhhdXNlIHVuZCBob2VyIGVzIGRpciBhbgpkdSB3aXJzdCBlcyBuaWNodCBiZXJldWVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBsYW5nZSBncmF1ZSBoYWFyZSAoQ3JvZnQsICA4LiBNYWkgMjAwNSwgMjM6NDY6MjYpOgp+IyEgcm49R2FieWxvbiBydD0xMTE1NTc1MTI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNTQ3NTgyOQpTYWd0IGRpciBFcmljIENsYXB0b24gaXJnZW5kZXR3YXM/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogbGFuZ2UgZ3JhdWUgaGFhcmUgKEdhYnlsb24sICA4LiBNYWkgMjAwNSwgMjM6NTE6MzEpOgp+IyEgcm49Q3JvZnQgcnQ9MTExNTU4ODc4NiByZz1zY2htYXJybgp+IyEgdGlkPTExMTU0NzU4MjkKaXN0IGRhcyBqZXR6dCBuZSBmYW5nZnJhZ2U/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBsYW5nZSBncmF1ZSBoYWFyZSAoUm9uZGEsICA4LiBNYWkgMjAwNSwgMjM6NTE6NDEpOgp+IyEgcm49Q3JvZnQgcnQ9MTExNTU4ODc4NiByZz1zY2htYXJybgp+IyEgdGlkPTExMTU0NzU4MjkKQ2xhcHRvbj8gSXN0IGRhcyBkZXIgVHlwLCBkZXNzZW4gU3BpdHpuYW1lIGdhbnoga2xhciBzYWd0LCBkYXNzIGVyIHp1IGxhaG0genVtCk11ZGRlbiBpc3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBsYW5nZSBncmF1ZSBoYWFyZSAoQ3JvZnQsICA4LiBNYWkgMjAwNSwgMjM6NTQ6MjUpOgp+IyEgcm49R2FieWxvbiBydD0xMTE1NTg5MDkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNTQ3NTgyOQpKYS4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogbGFuZ2UgZ3JhdWUgaGFhcmUgKE11YWRpYiwgIDkuIE1haSAyMDA1LCAwOTo1NjoxNSk6Cn4jISBybj1Dcm9mdCBydD0xMTE1NTg5MjY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNTQ3NTgyOQpqYWNrIGJydWNlIHVuZCBnaW5nZXIgYmFrZXIgYml0dGUgbmljaHQgdmVyZ2Vzc2VuLCBjcm9mdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IGxhbmdlIGdyYXVlIGhhYXJlIChNaXJpbCwgIDkuIE1haSAyMDA1LCAxOTowODo1OSk6Cn4jISBybj1NdWFkaWIgcnQ9MTExNTYyNTM3NSByZz1zY2htYXJybgp+IyEgdGlkPTExMTU0NzU4MjkKSmFjayBCcnVjZSBhbmQgZnJpZW5kcyBoYWIgaWNoIGRhbWFscyBpbiBkZXIgUm9ja3BhbGFzdCBOYWNodCBnZXNlaGVuLCAKenVzYW1tZW4gbWl0IEdyYWhhbSBQYXJrZXIgdW5kIFBvbGljZS4gV2FyIGdhciBuaWNodCBzbyBlaW5mYWNoLCBtZWluZSBFbHRlcm4KZGF2b24genUgdWViZXJ6ZXVnZW4sIGRhc3MgZXMgbmljaHRzIG1hY2h0LCB3ZW5uIG1hbiBtaXQgMTQsNSBKYWhyZW4gZXJzdAptb3JnZW5zIHVtIGhhbGIgNyBuYWNoIGhhdXNlIGtvbW10LiBJc3QgYWJlciBnZWx1bmdlbiB1bmQgaGF0IHNpY2ggZ2Vsb2hudC4KVW5kIHdvIGljaCBzY2hvbiBnZXJhZGUgYmVpbSBhbmdlYmVuIGJpbjogRnJhbmsgWmFwcGEgaGFiIGljaCA3OSBhdWNoIG1hbCBsaXZlCmdlc2VoZW4gOykKCk1pcmlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogbGFuZ2UgZ3JhdWUgaGFhcmUgKEdsb2luc29uLCAgOS4gTWFpIDIwMDUsIDE5OjEyOjIxKToKfiMhIHJuPU1pcmlsIHJ0PTExMTU2NTg1Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE1NDc1ODI5ClBhaC4gRWluIEphaHIgc3BhZXRlciBoYWIgaWNoIFJlaW5oYXJkIExha29teSBnZWhvZXJ0LiBKYXdvbGxqYSEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdS8zIChMaWFyYSwgMTAuIE1haSAyMDA1LCAwMTozNDoxNik6Clh4eCB0ZWlsdCBEaXIgbWl0OiBsaWEqISEhISEhISEhISEhISEhISEhISEgaWNoIHNhY2ggZGlyLCBlcyBnaWJ0IGtlaW5lbgpYeHggdGVpbHQgRGlyIG1pdDogaW50ZWxsaWdlbnRlbiBuYWNod3VjaHMgbWVociBoaWVyISA7KSkpKSkpKSkpKSkpKSkpKSkKLi4uClh4eCB0ZWlsdCBEaXIgbWl0OiBqYSwgbmEgdG9sbCEgd2VpbCBpY2ggZXMgdS5hLiBhdXNiYWRlbiBtdXNzISA7KSkpKSkpKSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdS8zIChHcmltbWJvcm4sIDEwLiBNYWkgMjAwNSwgMTA6NDE6MzgpOgp+IyEgcm49TGlhcmEgcnQ9MTExNTY4MTY1NiByZz1zY2htYXJybgp+IyEgdGlkPTExMTU2ODE2NTYKIk11bHRpcGxlIGV4Y2xhbWF0aW9uIG1hcmtzIGFyZSBhIHN1cmUgc2lnbiBvZiBhIGRpc2Vhc2VkIG1pbmQhIgooVC4gUHJhdGNoZXR0LCBFcmljLCBTLjEyMSkKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdS8zIChDYXR3ZWF6bGUsIDEwLiBNYWkgMjAwNSwgMTE6MDk6MDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMTU3MTQ0OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTE1NjgxNjU2ClVlYmVyZ3Jvc3NlIFNtaWxleWZyZXNzZW4gb2ZmZW5iYXIgYXVjaCAuLi4KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQmVkaWVudW5nIE1vYmlsdGVsZWZvbiAoQ2F0d2VhemxlLCAxMC4gTWFpIDIwMDUsIDEyOjE5OjA2KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTExMTU3MTk0ODggcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTExNTY1MTYxMwpEdSB3ZWlzc3Qgc2Nob24sIGRhc3MgZGFzIGVpbmUgZGVyIGZpZXNlc3RlbiBCZXN0cmFmdW5nZW4gaXN0LCBkaWUgZXMgelogZ2lidAphdWYgdW5zZXJlciBXZWx0LCBqYT8KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQmVkaWVudW5nIE1vYmlsdGVsZWZvbiAoTW9udGFudXMsIDEwLiBNYWkgMjAwNSwgMTI6MjE6MDApOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTExMTU3MjAzNDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE1NjUxNjEzCkljaCB3ZWlzcy4KRGFzIGxhZXNzdCBzaWNoIG51ciBub2NoIHZvbiBEYXVlcndlcmJlc2VuZHVuZ3NxdWl6bW9kZXJhdGlvbiBhdWYgTmV1biBMaXZlCnRvcHBlbi4gIlJ1ZmVuIHNpZSBqZXR6dCBhbiEgU2llIGtvZW5udGVuIGRlciBTaWVnZXIgc2VpbiEgRXMgbXVlc3NlbiB6d2FyCm5vY2ggNzY0IERlcHBlbiB2b3IgSWhuZW4gYW5ydWZlbiwgZGFtaXQgZGVyIEphY2twb3Qgdm9sbCBnZW51ZyBpc3QsIGFiZXIKcnVmZW4gc2llIHRyb3R6ZGVtIHNob25tYWwgYW4hIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQmVkaWVudW5nIE1vYmlsdGVsZWZvbiAoQmFtYnVsa28sIDEwLiBNYWkgMjAwNSwgMTI6MjE6NDIpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTExMTU3MjAzNDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE1NjUxNjEzCk9iIGRhcyBpbiBBYnUtR2hyZWliIHZlcndlbmRldCB3dXJkZT8KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFYmVuIGdlc2NoZW4gLi4gIT8gKFJvbGFuZCwgMTAuIE1haSAyMDA1LCAyMDozMDoxMyk6CgpZYXZhbm5hIGtvbW10IGFuLgpZYXZhbm5hIHZlcnNpbmt0IGluIHRpZWZlciBBbmRhY2h0LgpZYXZhbm5hIHNhZ3Q6IEljaCBoYWJlIEFuZ3N0LiBJY2ggZmx1ZWNodGUuCllhdmFubmEgc2FndDogSWNoIGhhYmUgQW5nc3QuIEljaCBmbHVlY2h0ZS4KWWF2YW5uYSBzYWd0OiBJY2ggaGFiZSBBbmdzdC4gSWNoIGZsdWVjaHRlLgpZYXZhbm5hIHNhZ3Q6IEljaCBoYWJlIEFuZ3N0LiBJY2ggZmx1ZWNodGUuCllhdmFubmEgc2FndDogSWNoIGhhYmUgQW5nc3QuIEljaCBmbHVlY2h0ZS4KWWF2YW5uYSBzYWd0OiBJY2ggaGFiZSBBbmdzdC4gSWNoIGZsdWVjaHRlLgogIFlhdmFubmEgZ3JlaWZ0IEFya3NoYXQgbWl0IGJsb3NzZW4gSGFlbmRlbiBhbi4KQXJrc2hhdCBydWZ0OiBGcmV2ZWwhCllhdmFubmEgd2lyZCBkZXMgVGVtcGVscyB2ZXJ3aWVzZW4uCllhdmFubmEgZ2VodC4KLS0tLQpmaW5nZXIgeWF2YW5uYQoKWWF2YW5uYSBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogR2VybWFueS4KUGFzc2l2IHNlaXQ6IDAwOjAxOjEwCkVpbmdlbG9nZ3Qgc2VpdDogRGllLCAxMC4gTWFpIDIwMDUsIDEyOjU0OjAzClZvbGxlciBOYW1lOiBZYXZhbm5hIGRpZSBEaWFrb25pc3NlClJhc3NlOiBNZW5zY2gsICBHaWxkZTogS2xlcnVzLCAgR2VzY2hsZWNodDogd2VpYmxpY2gKQWx0ZXI6IDJkIDEzOjQyOjIwLCAgIFNwaWVsZXJsZXZlbDogMTIsICAgR2lsZGVubGV2ZWw6IDQKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogU29uLCAyMC4gRmViIDIwMDUsIDEyOjE1OjUxCnouWi4gYWJ3ZXNlbmQsIEdydW5kICA6IHdlZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU29lYmVuIGVudGRlY2t0OiAoTWlyaWwsIDEyLiBNYWkgMjAwNSwgMDE6MDM6MDgpOgpEYXR1bSA5LkRleiAxOTkyCm1vcmU6IE5hZWNoc3RlIERhdGVpOiAvcGxheWVycy9taXJpbC9vYmovYm9hcmQubwptZXNzYWdlcyAiRXJzdGVyIEVpbmRydWNrKFpvcmFuLCBNYXkgMjIpOioqSG1tLCByZWNodCBiZWluZHJ1Y2tlbmQuIERvY2gKZ2VmYWVsbHQgbWlyIGhpZXIgYXVzZ2VzcHJvY2hlbiBndXQuQmVzb25kZXJzIGRpZSBHZXNjaHdpbmRpZ2tlaXQgKCBORiBpcyBtYWwKd2llZGVyIHRvdGFsIGxhaG0gKUZhbGxzIGlociBub2NoIHdhcyBicmF1Y2h0LCBpY2ggYXJiZWl0ZSBnZXJhZGUgYW4gbmVyCkRyYWNoZW5pbnNlbC5Kb2YgbWVpbnRlICggaWNoIGdsYXViZSBlcyB3YXIgSm9mICkgLSB3ZW5uIGVpbiBFcnptYWdpZXIgbm9jaApoaWxmZWJyYXVjaHQga2FubiBlciBuZW4gd2l6IGFubGVybmVuLi4uLiwgYmluIHp1IGFsbGVuIHNjaGFuZHRhdGVuIGJlcmVpdC4KICBhbnl3YXksIGljaCBob2ZmZSBkYXMgZXMgaGllciBiYWxkIGxvc2dlaHQuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDVSwKWm9yYW4uKiphbmZhZW5nZXJxdWVzdHMoUXVlc3RvciwgSnVuIDIyKToqKkhhbGxvISBEZWluZSBRdWVzdCBmYW5kIGljaCB0b3RhbApndXQsbmljaHQgenUgc2Nod2VyIHVuZCBuaWNodCB6dSBsZWljaHQuQWJlciBpY2ggbXVzcyBqYSBkb2NoIG1hbCBtb3R6ZW4gdWViZXIKZGllIEVpc3BhbGFzdHF1ZXN0Lk5hY2ggZHJlaSBUcmVmZmVybiB2b24gZWluZW0gMSEgT3JjIHdhciBpY2ggc2Nob24gZmFzdAp0b3QsdW5kIGljaCBoYWJlIGlobmtlaW5tYWwgZ2V0cm9mZmVuLHRyb3R6IFNhZWJlbCB1bmQgS2V0dGVuaGVtZC5EYXMgaXN0IGphCndvaGwgZWNodCB6dSBzY2h3aWVyaWcuV2VubiBkYXMgbmljaHQgZ2VhZW5kZXJ0IHdpcmQsZGFubiB3aXJkIHdvaGwga2VpbgpOZXdiaWUgZGllc2UgUXVlc3RqZW1hbHMgbG9lc2VuIGtvZW5uZW4uRGFubiB3b2xsdGUgaWNoIHZvcmhlciBldHdhcyB1ZWJlbiB1bmQKRXhwLXBvaW50cyBzYW1tZWxuLGFiZXIgZGllS2FuaW5jaGVuIGluIGRlciBncm9zc2VuIEhlaWRlIGthbm4gbWFuIGF1Y2ggbmljaHQKdHJlZmZlbi5JY2ggaGF1ZSBpbW1lciBudXIgaW4gZGllIEx1ZnQuV28gc29sbCBtYW4gZGVubiBkYW5uIEVyZmFocnVuZ3B1bmt0ZQpoZXJiZWtvbW1lbi5CaXMgZGVubi4uLi4uLi4uLiAgICAgICAgICAgICAgICAgIFF1ZXN0b3IqKnN5bm9ueW1lKERvbnV0LCBKdWwKMSk6KiphYmdlc2VoZW4sIGRhc3MgZXMgbWljaCBuZXJ2dCwgamVkZXNtYWwgZXhpdHMgZWluZ2ViZW4genUgbXVlc3NlbgooenVtaW5kZXN0YmVpIGJld2VndW5nZW4gc29sbHRlIGRhcyBhdXRvbWF0aXNjaCBnZXNjaGVoZW4pLCBmZWhsdCBlcwplbnRzY2hlaWRlbmRhbiBzeW5vbnltZW4uIHdlbm4gbWFuIHouYi4gYmV0cmFjaHRlIGhpbndlaXNzY2hpbGQgbmljaHQgbWl0CmJldHJhY2h0ZSBzY2hpbGQgYWItICAgIGt1ZXJ6ZW4ga2FubiwgaXN0IGRhcyBzY2hvbiByZWNodCBlbmVydmllcmVuZC4uLmRpZQpxdWVzdCBzY2hhdWUgaWNoIG1pciBqZXR6dCBlcnN0IGFuLG1hbCBzZWhuLi4uCiAgICAgICBieWUsIGRPbnV0KipRdWVzdCBvaG5lIFdhZmZlbj8oRW5nZWwsIEp1bCAgNCk6KipIaSBNaXJpbCxJY2ggYmluIGF1Y2gKc2Nob24gZGEuSWNoIG11c3RlIGxlaWRlciB2b3IgZGVtIE9yYyBpbSBFaXNwYWxhc3QgZmxpZWhlbi5JY2ggaGFiZSBub2NoCm5pY2h0cywgZGFzIGljaCBpaG0gYXVmIGRpZSBCaXJuZWdlYmVuIGtvZW5udGUuRW5nZWwqKioqUXVlc3QgbWl0CndhZmZlbiE/KEVuZ2VsLCBKdWwgIDUpOioqSGksIEljaCB3YXIgYmVpbSBhbHRlbiBaYWNoYXJpYXN1bmQgaGFiZSBtaWNoIHZvbgpkZW0gT3JjIG5pZWRlci1tZXR6ZWxuIGxhc3Nlbi5adXZvciBoYXR0ZSBpY2ggbWlyIGFsbGVyZGluZ3MgZWluZUxlZGVycnVlc3R1bmcKYW5nZXpvZ2VuIHVuZCBlaW5lbkhvbHprbnVlcHBlbCBnZXp1ZWNrdC5XYXIgbmljaHQgc28gYW5nZW5laG0gZGVtIFRvZAppbnNBbmdlc2ljaHQgenUgc2VoZW4uQWxzIE5lYmVsIGZ1ZWhsdGUgaWNoIG1pY2ggYXVjaCBuaWNodHNvIGd1dC5hdWYgZWluCm5ldWVzIC4uLi4uLi4qKiIKCk1pcmlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU29lYmVuIGVudGRlY2t0OiAoR2xvaW5zb24sIDEyLiBNYWkgMjAwNSwgMDE6MDU6MjQpOgp+IyEgcm49TWlyaWwgcnQ9MTExNTg1MjU4OCByZz1zY2htYXJybgp+IyEgdGlkPTExMTU4NTI1ODgKRGVpbiBVZWJlcmFyYmVpdHVuZ3NnZXNjaHdpbmRpZ2tlaXQgaXN0IHBoYWVub21lbmFsIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTb2ViZW4gZW50ZGVja3Q6IChDb3JuaG9saW8sIDEyLiBNYWkgMjAwNSwgMDk6MjM6MzIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTExNTg1MjcyNCByZz1zY2htYXJybgp+IyEgdGlkPTExMTU4NTI1ODgKSG0sCndpZSBpc3QgZGVubiBkYXMgbWl0IGRlbSBEYXR1bSBnZW1laW50PyA6KQpab3JhbiB1bmQgRW5nZWwgamVkZW5mYWxscyBzaW5kIGVyc3QgbGFuZ2UgZGFuYWNoCmhpZXIgZ2Vib3JlbiB3b3JkZW4uCk9kZXIgaXN0IGRhcyBkYXMgY3JlYXRpb24gZGF0ZSBkZXIgRGF0ZWk/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTGllYmxpbmdzRXhHb2V0dGVydmVybmljaHRlciBNZXNpcmlpIChNZXNpcmlpLCAxMi4gTWFpIDIwMDUsIDE1OjA4OjQwKToKRHUga251ZGRlbHN0IEJvaW5nLgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgQm9pbmcuCkJvaW5nIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCk1lc2ksIGF1ZiBzZWluZSBjaGFvdGlzY2ggbGV1Y2h0ZW5kZW4gSGFlbmRlIHNjaGF1ZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGllYmxpbmdzRXhHb2V0dGVydmVybmljaHRlciBNZXNpcmlpIChab29rLCAxMi4gTWFpIDIwMDUsIDE2OjMxOjQwKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTExNTkwMzMyMCByZz1zY2htYXJybgp+IyEgdGlkPTExMTU5MDMzMjAKV2VpY2hlIHp1cnVlY2shCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW5kZXJlIFZlcnNpb24gZGVzIGZ1bGwgdGltZSBvZmZpY2U6IChDcm9mdCwgMTIuIE1haSAyMDA1LCAxNjo0NzoyOSk6Cn4jISBybj1Db3JuaG9saW8gcnQ9MTExNTkwOTA4OSByZz13d3cKfiMhIHRpZD0xMTE1OTA5MDg5ClVuZCB3byBpc3QgZGEgZGVyIEt1ZWhsc2NocmFuaz8gIFVuZCBkaWUgTWlrcm93ZWxsZT8gVW5kIGRpZSBLYWZmZWVtYXNjaGluZT8KVW5kIGRlciBBc2NoZW5iZWNoZXI/IFVuZCAuLi4/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBbmRlcmUgVmVyc2lvbiBkZXMgZnVsbCB0aW1lIG9mZmljZTogKENvcm5ob2xpbywgMTIuIE1haSAyMDA1LCAxNzoyMzozNCk6Cn4jISBybj1Dcm9mdCBydD0xMTE1OTA5MjQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNTkwOTA4OQpEYXMgaXN0IGphIGF1Y2ggYmxvc3MgZGllIFN0YW5kYXJkLUF1c2Z1ZWhydW5nLgpEaWUgU29uZGVyYXVzc3RhdHR1bmcga3JpZWdzdGUsIHdlbm4gZHUgZGllIFF1ZXN0CkZpbmRlIGRlbiB2ZXJzY2h1ZXR0ZXRlbiBadWdhbmcgenVtIFJMCmxvZXN0IGFscyBRdWVzdGl0ZW1zLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExpZWJsaW5nc0V4R29ldHRlcnZlcm5pY2h0ZXIgTWVzaXJpaSAoQm9pbmcsIDEyLiBNYWkgMjAwNSwgMTg6MTY6MTApOgp+IyEgcm49TWVzaXJpaSBydD0xMTE1OTAzMzIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNTkwMzMyMApEdSB3YXJzdCB0YXRzYWVjaGxpY2ggaW5kaXJla3QgZGFmdWVyIHZlcmFudHdvcnRsaWNoLiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHZWh0IHZvcmhlciBhdWYncyBLbG8uLi4gKENhdHdlYXpsZSwgMjAuIE1haSAyMDA1LCAwODo0MDo1Mik6Cn4jISBybj1PZ28gcnQ9MTExNjU1NTQxNCByZz13d3cKfiMhIHRpZD0xMTE1Mzk4MzA1Ck1hbm4gTWFubiBNYW5uLCB1bmQgbmFjaCBkZW0gQXJ0aWtlbCBoYXQga2VpbmVyIG5lbiBCaW5nbz8KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdpbGRlbnF1ZXN0dm9yc2NobGFnIChDcm9mdCwgMjEuIE1haSAyMDA1LCAwODozMjowNSk6Cn4jISBybj1FbmRvciBydD0xMTE2NjQ1MDQ5IHJnPWdpbGRlbi51cnVraGFpCn4jISB0aWQ9MTExNjY0NTA0OQpBaC4gIERpZSBIb2x6aHlkcmEgd2llZGVyIGFscyBHUS4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBwcy1maWxlICJiZWhhbmRlbG4iIChHcmltbWJvcm4sIDIzLiBNYWkgMjAwNSwgMDk6NDg6MDcpOgp+IyEgb249R3JpbW1ib3JuIG90PTExMTY4MzQ0ODMgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1XdXJ6ZWwgcnQ9MTExNjgzMjY3MyByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMTE2NTMyNjAxCkdpYnRzIHNjaG9uIGxhZW5nZXIsIGVpbiB0b2xsZXJlcyB0b29sIGFscyBEdSB2ZXJ3ZW5kZXQgaGFzdC4gTmVubnQgc2ljaAonZW1hY3MnLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBwcy1maWxlICJiZWhhbmRlbG4iIChLZWxseWJ1bmR5LCAyMy4gTWFpIDIwMDUsIDEwOjUxOjM1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTE2ODM0NDg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNjUzMjYwMQpBY2ggX0RVXyBiaXN0IGFsc28gZGVyIGFuZGVyZSBFTUFDUy11c2VyICpHRyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IHBzLWZpbGUgImJlaGFuZGVsbiIgKFpvb2ssIDIzLiBNYWkgMjAwNSwgMTA6NTE6NTIpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMTE2ODM4Mjk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNjUzMjYwMQo6emVpZ3QgYXVjaCBhdWYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNd3VhaGFoYWhhaGFoYSwgTUVJTlMgKE1vcmdvdGgsIDI0LiBNYWkgMjAwNSwgMDc6NDM6NTIpOgogICAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEaWUsIDI0LiBNYWkgMjAwNSwgMDc6NDM6MjQgKDI1IFRlaWxuZWhtZXIpCgpHYXN0MS4uLi4uLi4uLi5KLnMgWmFybml5YS4uLi4uLi4uSi5zIEljaG8uLi4uLi4uLi4uLkoueiBOYXJheWFuLi4uLi4uLi5Kd3MKTm9zdHJvbW8uLi4uLi4uai5zIEFtb3h5cy4uLi4uLi4uLi4ucyBUeXJpb24uLi4uLi4uLi4uLlMgTGlhZmFyLi4uLi4uLi4uSi5TCk9ya3RvZXRlci4uLi4uLmp3UyBYZW5vbi4uLi4uLi4uLi5Kd1MgQXByYXhhLi4uLi4uLi4uLi5aIEtuYXJ6Li4uLi4uLi4uLkouUwpIcnVtbi4uLi4uLi4uLi4uLlMgSG91c2Vob2xkZXIuLi4uSi5TIFZhbXBpcmUuLi4uLi4uLml3UyBHd2VuaWxpLi4uLi4uLi5pd1MKTWVsY2hvci4uLi4uLi4uSi5TIEhhdWVyLi4uLi4uLi4uLmkuWiBTaW5hLi4uLi4uLi4uLi5qLlogTWVzaXJpaS4uLi4uLi4uaS5aClR5bGFrLi4uLi4uLi4uLmouUyBWZWN0b3IuLi4uLi4uLi4uLlMgSmltZGlncml6Li4uLi4uSi5tIEdyaW1tYm9ybi4uLi4uLkoubQpNb3Jnb3RoLi4uLi4uLi4ud1IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXdW5kZXJsYW1wZSB1bmQgRHNjaGlubiB2b24gUm9taWxpIChNdWFkaWIsIDI0LiBNYWkgMjAwNSwgMTA6NTU6MzYpOgp+IyEgcm49UmlrdXMgcnQ9MTExNjkyNDIzOCByZz1kLmRzY2h1bmdlbAp+IyEgdGlkPTExMTY5MjQyMzgKam9mc2VpZGFuayBiaW4gaWNoIGphIHRvbGVyYW50IGJlaW0gcGVyc29lbmxpY2hlbiB6ZWl0bWFuYWdlbWVudCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW5zaWNodGJhcmUgQXVzc2VyaXJkaXNjaGUgLi4uIChCbHV0Z2llciwgMjQuIE1haSAyMDA1LCAxODoyMzozNCk6ClBmbGFuemVuZWJlbmUuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgd2VzdGVuIHVuZCBub3JkZW4uCkVpbiBLb2NobG9lZmZlbC4KRWluIFNlaWwuCkVpbiBSdWNrc2FjayAoZ2VvZWZmbmV0KSB1bmQgKGFuZ2V6b2dlbikuCgpCbHV0Z2llciB1ZWJlcmtvbW10IERpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBHZWh0IHZvcmhlciBhdWYncyBLbG8uLi4gKEdsb2luc29uLCAyNS4gTWFpIDIwMDUsIDAxOjE2OjI5KToKfiMhIG9uPUJhbWJpIG90PTExMTY5NzY1Mjcgb2c9d3d3Cn4jISBybj1Ib3VzZWhvbGRlciBydD0xMTE2ODc4MDQ2IHJnPXd3dwp+IyEgdGlkPTExMTUzOTgzMDUKPz8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXd1YWhhaGFoYWhhaGEsIE1FSU5TIChEYXJrbG9yLCAyNS4gTWFpIDIwMDUsIDE1OjIxOjE5KToKfiMhIHJuPU1vcmdvdGggcnQ9MTExNjkxMzQzMiByZz1zY2htYXJybgp+IyEgdGlkPTExMTY5MTM0MzIKWmFlaGx0IG5pY2ggLSBiaXN0IGphIHNjaGxpZXNzbGljaCB3ZWcuLi4gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbnNpY2h0YmFyZSBBdXNzZXJpcmRpc2NoZSAuLi4gKERhcmtsb3IsIDI1LiBNYWkgMjAwNSwgMTU6MjI6MjkpOgp+IyEgcm49Qmx1dGdpZXIgcnQ9MTExNjk1MTgxNCByZz1zY2htYXJybgp+IyEgdGlkPTExMTY5NTE4MTQKRGEgaGF0IHdvaGwgbWFsIGplbWFuZCBlaW5lbiBUYXJuaGVsbSwgZGVyIHdpcmtsaWNoIHRhcm50Li4uIDspCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2xhc2ViZW5lbnpldWdzIChHcmltbWJvcm4sIDI2LiBNYWkgMjAwNSwgMTE6NDg6NTApOgp+IyEgcm49TWVzaXJpaSBydD0xMTE3MDk5OTY5IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTExNzA5OTk2OQpIbW0sIGVzIGp1Y2t0IG1pY2ggamEgaW4gZGVuIEZpbmdlcm4gZGFzIG5hY2ggZ2VqYW1tZXIgenUgdmVyc2NoaWViZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdsYXNlYmVuZW56ZXVncyAoRGFya2xvciwgMjYuIE1haSAyMDA1LCAxNjoxMjowNik6Cn4jISBybj1NZXNpcmlpIHJ0PTExMTcwOTk5Njkgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMTE3MDk5OTY5Cldhcz8gLSBEdSBoYXN0ZSBrZWluZSBIb3NlbiBtZWhyIGFuPyAtIERhcyBzb2xsdGVzdGUgbGllYmVyIG1pdCBEZWluZXIgRnJhdQprbGFlcmVuLi4uIDspCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdsYXNlYmVuZW56ZXVncyAoTWFoYXJldCwgMjYuIE1haSAyMDA1LCAxNjoxMjoyOCk6Cn4jISBybj1EYXJrbG9yIHJ0PTExMTcxMTY3MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE3MDk5OTY5CkhhdCBlciwgZ2xhdWIgbWlyIC4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR2xhc2ViZW5lbnpldWdzIChSb25kYSwgMjYuIE1haSAyMDA1LCAyMTowNToyOSk6Cn4jISBybj1NYWhhcmV0IHJ0PTExMTcxMTY3NDggcmc9c2NobWFycm4KfiMhIHRpZD0xMTE3MDk5OTY5CipncmlucyogQWxzbyBpY2ggZGFjaHRlIG5pY2h0LCBkYXNzIHNpY2ggZGFzIG1pdCBkZW0gIkluIGd1dGVuLCB3aWUgaW4Kc2NobGVjaHRlbiBaZWl0ZW4uLi4iIGF1ZiBHbGFzZWJlbmVuemV1Z3MgYmV6b2dlbiBoYXQgOy0pCgpSb25kYSAqbGVybnQgaW1tZXIgd2llZGVyIGRhenUqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOb2NoIGVpbm1hbCBDaWNlcm9uZSAoR3JpbW1ib3JuLCAyNy4gTWFpIDIwMDUsIDE4OjI4OjExKToKfiMhIHJuPUNvcm5ob2xpbyBydD0xMTE3MjEwNTI1IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTExNzIxMDE3MQpUamEsIGF1Y2ggaGllciBpc3QgZGllIE1hdHJpeCBoYWx0IG5pY2h0IHBlcmZla3QuCgpHZEFbZXgtUl0gT0hkTXVCZEUgIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUHJhZXNlbnRhdGlvbmVuIDpvKSAoTXVwZmVsLCAyOC4gTWFpIDIwMDUsIDE2OjExOjU1KToKfiMhIHJuPU55eCBydD0xMTE2NDgwMDYxIHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTExNjM1NDQzNAo+IEFsc28gZXMgZ2lidCBlaW5lIEFjY2Vzcy1EYXRlbmJhbmsuCgpOYSwgd2VubiBkYXMga2VpbiBPeHltb3JvbiBpc3QuLi4gOykKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQkVLQU5OVE1BQ0hVTkcgKEdyaW1tYm9ybiwgMzAuIE1haSAyMDA1LCAxNzoxMjowOSk6Cn4jISBybj1NaXJpbCBydD0xMTE3NDY1NTk2IHJnPWQuZWJlbmUKfiMhIHRpZD0xMTE3NDY1NTk2ClR5cGlzY2guIE1hZ2llciBzaW5kIG1hbCB3aWVkZXIgYXVzZ2VzY2hsb3NzZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQkVLQU5OVE1BQ0hVTkcgKE11YWRpYiwgMzAuIE1haSAyMDA1LCAxNzoxNjo1OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTExNzQ2NTkyOSByZz1zY2htYXJybgp+IyEgdGlkPTExMTc0NjU1OTYKb2ssIGtyaWVnc3QgYXVjaCB3YXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJFS0FOTlRNQUNIVU5HIChNaXJpbCwgMzAuIE1haSAyMDA1LCAxNzoxNzozNik6Cn4jISBybj1NdWFkaWIgcnQ9MTExNzQ2NjIxOCByZz1zY2htYXJybgp+IyEgdGlkPTExMTc0NjU1OTYKTWFuIGtvZW5udGUgZGVuIE1hc3RlciBhdWYgR3JpbW1ib3JuIGFiZnJhZ2VuIGxhc3Nlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJFS0FOTlRNQUNIVU5HIChDb3JuaG9saW8sIDMwLiBNYWkgMjAwNSwgMjI6MDI6MTEpOgp+IyEgcm49TWlyaWwgcnQ9MTExNzQ2NjI1NiByZz1zY2htYXJybgp+IyEgdGlkPTExMTc0NjU1OTYKRWluZSBWb3JzdGVoZXJJTiBlaW5lciBGcmF0ZXJuaXRhZXQ/Clp1bSBHbHVlY2sgZ2lidCBlcyBoaWVyIGphIGtlaW5lIEZyYXVlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQkVLQU5OVE1BQ0hVTkcgKE11YWRpYiwgMzAuIE1haSAyMDA1LCAyMzoxMzo0NCk6Cn4jISBybj1Db3JuaG9saW8gcnQ9MTExNzQ4MzMzMSByZz1zY2htYXJybgp+IyEgdGlkPTExMTc0NjU1OTYKamFqYSwgZGllIG1vZGVybmVuIGZyYXRlcm5pdGFldGVuLiAKb3JkZW4gdW5kIGRlcmVuIHdhbmRlbCBpbSBsYXVmZSBkZXIgemVpdAoKYWJlciBtdXNzdGVzdCBkdSBudW4gdW5iZWRpbmd0IGRlbSB6b29rIGlucyBob3JuIGJsYXNlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEJFS0FOTlRNQUNIVU5HIChab29rLCAzMC4gTWFpIDIwMDUsIDIzOjIzOjMxKToKfiMhIHJuPU11YWRpYiBydD0xMTE3NDg3NjI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNzQ2NTU5NgpJY2ggaGFicyBqYSBnbGVpY2ggZ2VzYWd0LgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEJFS0FOTlRNQUNIVU5HIChNdWFkaWIsIDMwLiBNYWkgMjAwNSwgMjM6MjQ6MjcpOgp+IyEgcm49Wm9vayBydD0xMTE3NDg4MjExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNzQ2NTU5NgpqYSwgZGFzIHN0aW1tdC4KdW5kIHdlaXRlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEJFS0FOTlRNQUNIVU5HIChLZWxseWJ1bmR5LCAzMS4gTWFpIDIwMDUsIDEzOjM4OjMzKToKfiMhIHJuPUNvcm5ob2xpbyBydD0xMTE3NDgzMzMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNzQ2NTU5NgpKYWphIGRpZSBFbWFuemlwYXRpb24uIEpldHp0IGdpYnQgZXMgc29nYXIgc2Nob24gUHVmZiBEYWRkeSwgZnJ1ZWhlciBnYWJzIG51cgpQdWZmLU11dHRpcy4uLgpLZWxseSwgbmFjaCBTY2htYXJybiBydWViZXJzY2hpZWxlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEJFS0FOTlRNQUNIVU5HIChLZWxseWJ1bmR5LCAzMS4gTWFpIDIwMDUsIDEzOjM5OjI3KToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTExNzUzOTUxMyByZz1zY2htYXJybgp+IyEgdGlkPTExMTc0NjU1OTYKT2ggaWNoIGJpbiBqYSBzY2hvbiByaWNodGlnICpHRyogZGFzIHVlYmVuIHdpciBub2NoLgpTb3JyeSwgbWVpbiBLb2ZmZWlucGVnZWwgaXN0IG5vY2ggbmljaHQgYXVmIEJldHJpZWJzaG9laGUgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGEgZXMgbnVuIHNjaG9uIHBlciAiZnJ1ZmUiIGt1cnNpZXJ0ZTogKE1haGFyZXQsIDMxLiBNYWkgMjAwNSwgMTg6MjE6NTMpOgp+IyEgcm49Wm9vayBydD0xMTE3NTU1NzgzIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTE3NTU1NzgzCldpZSwgZ2lidCBlcyBlY2h0IExldXRlLCBkaWUgZHUgbmljaHQgYXVmbSBmYmFuZCBoYXN0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhIGVzIG51biBzY2hvbiBwZXIgImZydWZlIiBrdXJzaWVydGU6IChEYXJrbG9yLCAzMS4gTWFpIDIwMDUsIDIzOjU1OjMyKToKfiMhIHJuPVpvb2sgcnQ9MTExNzU1NTc4MyByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTExNzU1NTc4MwpFcnptYWdpZXIgYW4gZGVuIFByYW5nZXIhCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERhIGVzIG51biBzY2hvbiBwZXIgImZydWZlIiBrdXJzaWVydGU6IChDYXR3ZWF6bGUsICAxLiBKdW4gMjAwNSwgMDk6MzI6MjcpOgp+IyEgcm49TWFoYXJldCBydD0xMTE3NTU2NTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNzU1NTc4MwpXYXMgZGVubiBmdWVybiBmYmFuZD8KCllUQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGEgZXMgbnVuIHNjaG9uIHBlciAiZnJ1ZmUiIGt1cnNpZXJ0ZTogKFpvb2ssICAxLiBKdW4gMjAwNSwgMTA6MzE6MDkpOgp+IyEgcm49Q2F0d2VhemxlIHJ0PTExMTc2MTExNDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE3NTU1NzgzCk5ldW1vZGlzY2hlciBGaXJsZWZhbnohCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGEgZXMgbnVuIHNjaG9uIHBlciAiZnJ1ZmUiIGt1cnNpZXJ0ZTogKFd1cnplbCwgIDEuIEp1biAyMDA1LCAxMDozMzowOSk6Cn4jISBybj1ab29rIHJ0PTExMTc2MTQ2Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE3NTU1NzgzCmFjaCB3YXMsIHNvIG5ldW1vZGlzY2ggaXN0IGRhcyBnYXIgbmljaHQuIGltIHNjaG5pdHQgc2luZCBkaWUgbGV1dGUgYXVmCm1laW5lbSBmYmFuZCBzZWl0IGZ1ZW5mIGphaHJlbiBuaWNodCBtZWhyIGhpZXIgZ2V3ZXNlbiwgZGFzIGhlaXNzdCBkYXMgZ2lidHMKc2Nob24gbGFlbmdlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCRUtBTk5UTUFDSFVORyAoT2dvLCAgMi4gSnVuIDIwMDUsIDE2OjUwOjIwKToKfiMhIHJuPU1pcmlsIHJ0PTExMTc0NjU1OTYgcmc9ZC5lYmVuZQp+IyEgdGlkPTExMTc0NjU1OTYKSG1tLCBpc3QgRnJhdGVybml0YXMgbmljaHQgZWluZGV1dGlnIGhpbnNpY2h0bGljaCBkZXMgR2VzY2hsZWNodGVzIGRlcgpNaXRnbGllZGVyPyBHaWJ0IGphIGV4cGxpeml0IGF1Y2ggU29yb3JpdGFzLi4uCiJWb3JzdGVoZXJpbiBkZXIgRnJhdGVybml0YXMiIG11dGV0IGV0d2FzIHNlbHRzYW0gYW4uLi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJFS0FOTlRNQUNIVU5HIChLZWxseWJ1bmR5LCAgMi4gSnVuIDIwMDUsIDE2OjU0OjM0KToKfiMhIHJuPU9nbyBydD0xMTE3NzIzODIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNzQ2NTU5NgpQcm9ibGVtZSBzZWggaWNoIGRhIG51ciBpbiBkZXIgcG9saXRpc2NoIGtvcnJla3RlbiBhbnJlZGUuIEJydWVkZXJpbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJFS0FOTlRNQUNIVU5HIChNdWFkaWIsICAyLiBKdW4gMjAwNSwgMTg6MTA6MzYpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMTE3NzI0MDc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNzQ2NTU5NgpkYXQgbXVzcyBzY2hvIHNvIHNlaW4KZGEgaXMga29uemVwdCBoaW50ZXIKZWhybGljaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQkVLQU5OVE1BQ0hVTkcgKE11YWRpYiwgIDIuIEp1biAyMDA1LCAxODoxNDoyMyk6Cn4jISBvbj1NdWFkaWIgb3Q9MTExNzcyODgzNSBvZz1lcnptYWdpZXIuc2NobWFycm4KfiMhIHJuPVpvb2sgcnQ9MTExNzcyODE5NCByZz1lcnptYWdpZXIuc2NobWFycm4KfiMhIHRpZD0xMTE3NDY1NTk2CmFsc28uLi4uCndpciBzaW5kIGphIGdlYmlsZGV0ZSBtZW5zY2hlbiB1bmQgZ2VyYWRlIGluIGRpZXNlbSBqYWhyIGh1bGRpZ2VuIHdpciBzY2hpbGxlcgp1bmQgd2FzIHNjaHJpZWIgc2NoaWxsZXI/Pz8KCnJpY2h0aWc6CkFsbGUgTWVuc2NoZW4gd2VyZGVuIEJydWVkZXIKd28gRGVpbiBzYW5mdGVyIEZsdWVnZWwgd2VpbHQuCgpCcnVlZGVyIQpBbGxlIE1lbnNjaGVuIQoKRnJhZ2VuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQkVLQU5OVE1BQ0hVTkcgKFpvb2ssICAyLiBKdW4gMjAwNSwgMTg6MTY6MjMpOgp+IyEgcm49TXVhZGliIHJ0PTExMTc3Mjg4NjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE3NDY1NTk2CgpKYSwgS2llbnpsZS4gV2FzIHNpbmQgZGFzIGZ1ZXIgVmVybGVnZWFrdGlvbmVuPyBab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQkVLQU5OVE1BQ0hVTkcgKE11YWRpYiwgIDIuIEp1biAyMDA1LCAxODoyMDowMyk6Cn4jISBybj1ab29rIHJ0PTExMTc3Mjg5ODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE3NDY1NTk2Cm5vdHdlbmRpZ2UKaGF1c2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQkVLQU5OVE1BQ0hVTkcgKE1pcmlsLCAgMi4gSnVuIDIwMDUsIDE4OjI2OjMxKToKfiMhIHJuPU11YWRpYiBydD0xMTE3NzI5MjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNzQ2NTU5NgpHYW56IGVpbmZhY2guIEZyYXRlcm5pdGFzIGRvbm8gYmxhYmx1YiBrbGluZ3QgYmVzc2VyIGFscyBPcmRvIGRvbm8gYmxhYmx1Yi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEJFS0FOTlRNQUNIVU5HIChPZ28sICAyLiBKdW4gMjAwNSwgMTg6NTE6MjQpOgp+IyEgcm49TXVhZGliIHJ0PTExMTc3Mjg4NjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE3NDY1NTk2CkR1IGVya2VubnN0IGFiZXIgc2Nob24gZWluZSBBbGxlZ29yaWUsIHNvIGFscyBnZWJpbGRldGVyIE1lbnNjaCwgamE/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBCRUtBTk5UTUFDSFVORyAoTXVhZGliLCAgMi4gSnVuIDIwMDUsIDE5OjA4OjAyKToKfiMhIHJuPU9nbyBydD0xMTE3NzMxMDg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNzQ2NTU5Ngp1bmQgZHUgZXJrZW5uc3QgZWluZSByaGV0b3Jpc2NoZSBmcmFnZT8genVtaW5kZXN0IHdlbm4gZHUgc2llIHN0ZWxsc3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQkVLQU5OVE1BQ0hVTkcgKERhcmtsb3IsICAyLiBKdW4gMjAwNSwgMTk6MDk6NDEpOgp+IyEgcm49TXVhZGliIHJ0PTExMTc3MzIwODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE3NDY1NTk2Ck5laW4gRnJhdGVybml0YXMgaGFlcnQgc2ljaCBuaWNoIGJlc3NlciBhbiAtIGVoZXIgdmVyZGFtbXQgc2NobGltbS4uLgoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEJFS0FOTlRNQUNIVU5HIChHcmltbWJvcm4sICAzLiBKdW4gMjAwNSwgMDk6NTU6MDMpOgp+IyEgcm49RGFya2xvciBydD0xMTE3NzMyMTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNzQ2NTU5NgpadSBTY2hpbGxlcnMgIkFsbGUgTWVuc2NoZW4gd2VyZGVuIEJydWVkZXIiIHdhZXJlIG5vY2ggYW56dW1lcmtlbiBkYXNzIGRhcmF1cwplaW4gcmVjaHQgaW50ZXJlc3NhbnRlcyBGcmF1ZW5iaWxkIGZvbGd0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBCRUtBTk5UTUFDSFVORyAoTXVhZGliLCAgMy4gSnVuIDIwMDUsIDEwOjU3OjQzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTE3Nzg1MzAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExNzQ2NTU5NgphY2h3YXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBCRUtBTk5UTUFDSFVORyAoR2xvaW5zb24sICAzLiBKdW4gMjAwNSwgMTE6MDY6MzcpOgp+IyEgcm49TXVhZGliIHJ0PTExMTc3ODkwNjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE3NDY1NTk2Ck5pY2h0IHp1IHZlcmdlc3NlbiwgZGFzcyBkdW5rbGUgTWFlY2h0ZSBhbmdlcnVmZW4gd2VyZGVuLiBCaWJlbGtvbmZvcm0gaXN0IGRpZQpDaG9zZSBuaWNodC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzYW5kIChHcmltbWJvcm4sICAzLiBKdW4gMjAwNSwgMTI6MDU6NTIpOgp+IyEgb249U2l0aGxhIG90PTExMTc3OTMwOTggb2c9YWxsZ2VtZWluZXMKc2l0aGxhIGRhIHNjaGlzc2xhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2FuZCAoR3JpbW1ib3JuLCAgMy4gSnVuIDIwMDUsIDEyOjA1OjU0KToKfiMhIG9uPVpvb2sgb3Q9MTExNzc5MzExMCBvZz1hbGxnZW1laW5lcwp+IyEgcm49U2l0aGxhIHJ0PTExMTc3OTMwOTggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTE3NzkzMDk4CmlzIGtsYXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogQmFsa29uLSB1LiBHYXJ0ZW56ZXVjaCAoQ2hhZ2FsbCwgIDguIEp1biAyMDA1LCAyMTozNzo1MCk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTExMTgyNTk0MjAgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMTE4MjM0NTU5Ck5pbW10IG1hbiBuaWNodCBmdWVyIEVpc2VuICdIYW1tZXJpdGUgLSBEYXMgT3JpZ2luYWwnPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBCYWxrb24tIHUuIEdhcnRlbnpldWNoIChLZWxseWJ1bmR5LCAgOC4gSnVuIDIwMDUsIDIyOjA5OjIwKToKfiMhIHJuPUNoYWdhbGwgcnQ9MTExODI1OTQ3MCByZz1zY2htYXJybgp+IyEgdGlkPTExMTgyMzQ1NTkKV2Vpc3MgbmljaHQgd2FzIGhhbW1lcml0ZSBmdWVybiB6ZXVnIGlzdCwgYWJlciBlcyBzb2xsIGFuZ2VibGljaCBuaWNodCBzb29vCnRvbGwgc2VpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IEJhbGtvbi0gdS4gR2FydGVuemV1Y2ggKEFudGhlYSwgIDkuIEp1biAyMDA1LCAxMDo1Mzo0Myk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTExMTgyNjEzNjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE4MjM0NTU5CkphLCB2b24gTGV1dGVuLCBkaWUgc2ljaCBhdXNrZW5uZW4sIHdpcmQgdm9uIEhhbW1lcml0ZSBudXIgYWJnZXJhdGVuLiBEYXMKWmV1Y2gsIHdhcyB3aXJrbGljaCB3aXJrdCwgaXN0IGxlaWRlciBzZWl0IGVpbiBwYWFyIEphaHJlbiBuaWNodCBtZWhyCmVyaGFlbHRsaWNoLiBOdXIgd2VpbCBkYSBqZW1hbmQgZ2VtZWludCBoYXQsIGRhc3MgZGFzIFpldWNoIHVuZ2VzdW5kIGlzdC4gSXN0CmVzIGF1Y2gsIGFiZXIgbnVyIHdlbm4gbWFuIHNpY2ggZGFzIGF1ZiBkaWUgSGF1dCBwaW5zZWx0LiBVbmQgZGFzIHNvbGx0ZSBtYW4KZ2VuZXJlbGwgc293aWVzbyBuaWNodCBtYWNoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogQmFsa29uLSB1LiBHYXJ0ZW56ZXVjaCAoR2xvaW5zb24sICA5LiBKdW4gMjAwNSwgMTA6NTY6NTkpOgp+IyEgcm49QW50aGVhIHJ0PTExMTgzMDcyMjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE4MjM0NTU5ClVuZCB3YXMgd2FlcmUgZGFzIGdld2VzZW4/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IEJhbGtvbi0gdS4gR2FydGVuemV1Y2ggKENvcm5ob2xpbywgIDkuIEp1biAyMDA1LCAxMToxNzo1MCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTE4MzA3NDE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExODIzNDU1OQpIYXQgZGFzIG1pdCBkZW0gWml0cm9uZW53YXNzZXIgZXR3YXMgbWl0IFJlZHVrdGlvbiBkdXJjaCBkaWUgU2FldXJlIHp1IHR1bj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBCYWxrb24tIHUuIEdhcnRlbnpldWNoIChBbnRoZWEsICA5LiBKdW4gMjAwNSwgMTE6Mjg6MDkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTExODMwNzQxOSByZz1zY2htYXJybgp+IyEgdGlkPTExMTgyMzQ1NTkKU29ycnksIGljaCBrb25udGUgbWlyIGRlbiBOYW1lbiB2b24gZGVtIFpldWNoIG5pY2h0IG1lcmtlbiwgZGEgbXVlc3N0ZSBpY2gKbm9jaCBtYWwgbmFjaGZyYWdlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBCYWxrb24tIHUuIEdhcnRlbnpldWNoIChHcmltbWJvcm4sICA5LiBKdW4gMjAwNSwgMTE6MzA6NTcpOgp+IyEgcm49QW50aGVhIHJ0PTExMTgzMDkyODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE4MjM0NTU5Ck5laW4sIGhhdCBkYXMgWml0cm9uZW53YXNzZXIgbmljaHQuIERhcyBoYXQgd2FzIG1pdCBkZXIgU2FldXJlbG9lc2xpY2hrZWl0IHZvbgpFaXNlbihoeWRybyl4aWRlbiB6dSB0dW4uCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTXVwZmVsLCAxMi4gSnVuIDIwMDUsIDEzOjAxOjU3KToKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogLT4gT2hhbQpbVG9kOkxhcnNdIEVpbiBCdWxseXd1ZyBoYXQgZ2VyYWRlIE9oYW0gdW1nZWJyYWNodC4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExhdGV4LVVtZ2VidW5nIChHcmltbWJvcm4sIDEyLiBKdW4gMjAwNSwgMTY6MTU6NDYpOgp+IyEgb249R3JpbW1ib3JuIG90PTExMTg1ODU3NDAgb2c9aGFyZHNvZnR3YXJlCn4jISBybj1Sb2hsb2ZmIHJ0PTExMTg1ODQ4MjYgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTExODU2OTYxNwpPaCBvaCBvaCwgZGFmdWVyIHd1ZXJkZSBpY2ggYWJlciBtZWluZSBIYW5kIG5pY2h0IGlucyBGZXVlciBsZWdlbiwgZGFzcyBlcwpmdWVyIGRhcyBiZWxpZWJ0ZSBXaW5kb3dzcHJvZ3JhbW0gWEVtYWNzIGF1Y2ggZWluZW4gTGludXgtcG9ydCBnaWJ0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IExhdGV4LVVtZ2VidW5nIChNdXBmZWwsIDEyLiBKdW4gMjAwNSwgMTc6NDM6MzYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMTg1ODU3NDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE4NTY5NjE3CkVzIHNvbGwgamEgc29nYXIgLSBnZXJ1ZWNodGVoYWxiZXIgLSBlaW5lbiBMaW51eC1Qb3J0IHZvbiBDeWd3aW4gZ2ViZW4uIEtlaW5lCkFobnVuZywgd2llIGRlciBqZXR6dCBoZWlzc3QuLi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogQmFsa29uLSB1LiBHYXJ0ZW56ZXVjaCAoS2VsbHlidW5keSwgMTMuIEp1biAyMDA1LCAyMDoyMDoyNCk6Cn4jISBybj1BbnRoZWEgcnQ9MTExODMwNzIyMyByZz1zY2htYXJybgp+IyEgdGlkPTExMTgyMzQ1NTkKQWIgd2FubiBpc3QgZGFzIGRlbm4gdW5nZXN1bmQ/IHdlbm4gbWFuIDMgbGl0ZXIgZGF2b24gdHJpbmt0IG9kZXIgZXJzdCBhYiAyMApsaXRlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiB3Zy1zdHJlc3Mgd2VnZW4gdGVsZWZvbiA6KSAoQWxrb2hvbCwgMTMuIEp1biAyMDA1LCAyMToxMjo1OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTExODY4OTkwNiByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTExMTg2NzM1NzQKbWVpbnN0IGR1IGRhIHNleHVlbGxlIHZvcmxpZWJlbiBvZGVyIHdhcz8KCkFsa2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiB3Zy1zdHJlc3Mgd2VnZW4gdGVsZWZvbiA6KSAoR3JpbW1ib3JuLCAxMy4gSnVuIDIwMDUsIDIxOjE2OjI4KToKfiMhIHJuPUFsa29ob2wgcnQ9MTExODY4OTk3OCByZz1zY2htYXJybgp+IyEgdGlkPTExMTg2NzM1NzQKV2llIGtvbW1zdCBEdSBkYXJhdWY/IE1haGFyZXQgc2NocmllYiAic2ljaCBkZXN3ZWdlbiBVZWJlcndhY2hlbiB1bmQgQWJob2VyZW4KbWl0IFNwZWljaGVybiB2b24gVGVsZWZvbmdlc3ByYWVjaGVuIHp1IHd1ZW5zY2hlbiwgaGFsdGUgaWNoIGZ1ZXIKdWViZXJ0cmllYmVuIiAtIHdhcyBkYXJhbiB3YXIgRGlyIHVua2xhcj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IHdnLXN0cmVzcyB3ZWdlbiB0ZWxlZm9uIDopIChBbGtvaG9sLCAxMy4gSnVuIDIwMDUsIDIxOjE2OjQ4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTE4NjkwMTg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExODY3MzU3NAphY2ggdmVyZ2lzcyBlcyBlaW5mYWNoCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogQmFsa29uLSB1LiBHYXJ0ZW56ZXVjaCAoQW50aGVhLCAxNS4gSnVuIDIwMDUsIDEyOjI5OjQ0KToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTExODY4NjgyNCByZz1zY2htYXJybgp+IyEgdGlkPTExMTgyMzQ1NTkKR3V0ZSBGcmFnZS4gSWNoIGhhYmUgZXMgbm9jaCBuaWNodCBhdXNwcm9iaWVydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNZXR6bGVyIGZ1ZXIgUnVkZWxtdWRkZW4gZ2VzdWNodCAoWm9vaywgMTYuIEp1biAyMDA1LCAxNzo0MToyNCk6Cn4jISBybj1WZWN0b3IgcnQ9MTExODkzNDk3NSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExMTg5MzQ5NzUKR3V0ZXIgSGlud2VpcyBmdWVyIGVpbmVuIGV0d2FpZ2VuIFJlYm9vdC9DcmFzaC4uLi4gOykpKQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEVpbmVyIGdld2lubnQgaW1tZXIgKENvcm5ob2xpbywgMTYuIEp1biAyMDA1LCAyMzo1NDo0MSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTExODk1MjI0OCByZz13d3cKfiMhIHRpZD0xMTE4NzYwMDI2CkR1IGhhZXR0ZXN0IGphIGF1cyBkZXIgRnJhZ2UgZWluZSBBdXNzYWdlIG1hY2hlbgp1bmQgZGllc2UgdWViZXIgendlaSBaZWlsZW4gdmVydGVpbGVuIGtvZW5uZW46CiJEZXIgTWFubiBzY2hyZWlidApmdWVyIGRlbiBTcGllZ2VsLiIKVmllbGxlaWNodCBoYWV0dGVzdCBEdSBkYW5uIG5vY2ggZWluZW4ga2xlaW5lbiBCZXdlaXMKZnVlaHJlbiBrb2VubmVuLCB1bSBkaWVzZSBBdXNzYWdlIG5pY2h0IHNvIGtsZWluIHVuZCB1bmJlZGV1dGVuZAplcnNjaGVpbmVuIHp1IGxhc3Nlbi4KIkVyIHNjaHJpZWIgZGVuIEFydGlrZWwgeCBpbiBkZXIgQXVzZ2FiZSB5LiBGZXJuZXIgLi4uIgpJY2ggZXJpbm5lcmUgbWljaCB1ZWJyaWdlbnMgYXVjaCBhbiBlaW5zaWxicmlnZSBBbnR3b3J0ZW4gRGVpbmVyc2VpdHMsCmRpZSBEdSBqYSBhYmVyIG5pY2h0IHZlcnNjaHVsZGV0IGhhc3QsIHNvbmRlcm4gZGllIGJsb3NzCmRpZSBsb2dpc2NoZSBLb25zZXF1ZW56IGVpbmVyIFByb3Zva2F0aW9uIHdhcmVuLgouLi4KT2RlciB3aWU/IE9kZXIgdHJhZWd0IG5pY2h0IGplZGVyIHNlbGJzdCBkaWUgVmVyYW50d29ydHVuZyB1ZWJlciBzZWluZQpBZXVzc2VydW5nZW4sIGluIHdlbGNoZW0gWnVzdGFuZCBkaWUgYXVjaCBpbW1lciBlcmZvbGd0IHNlaW4gbW9lZ2VuLgpJY2ggenVtIEJlaXNwaWVsIHdlcmRlIG1pY2ggbW9yZ2VuIHZpZWxsZWljaHQgdWViZXIgZGllc2VuIEFydGlrZWwgd3VuZGVybiwKZGFubiBhYmVyIGRvY2ggYW4gZGFzIEdldHJhZW5rIGRlbmtlbiwgd2VsY2hlcyBpY2ggbWlyIGhhYmUgc2NobWVja2VuIGxhc3Nlbi4KVW5kIGRhbm4gZG9jaCBlcmlubmVybi4gSXJnZW5kd2llIGtsYXBwdCBlcyBqYSBmYXN0IGltbWVyLgpBJyB0YSBzYW50ZSchCgoKSXN0IGRlciBUZXh0IG51biBsYW5nIHVuZCB2ZXJ3aXJyZW5kIGdlbnVnPwoKKDsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEVpbmVyIGdld2lubnQgaW1tZXIgKFpvb2ssIDE3LiBKdW4gMjAwNSwgMDg6NTE6NTkpOgp+IyEgcm49Q29ybmhvbGlvIHJ0PTExMTg5NTg4ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE4NzYwMDI2CkphLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRWluZXIgZ2V3aW5udCBpbW1lciAoV3VyemVsLCAxNy4gSnVuIDIwMDUsIDA5OjA1OjExKToKfiMhIHJuPVpvb2sgcnQ9MTExODk5MTExOSByZz1zY2htYXJybgp+IyEgdGlkPTExMTg3NjAwMjYKaW1tZXJoaW46ICJlaW5zaWxicmlnIiBpc3QgbWVpbiB3b3J0IGRlcyB0YWdlcyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2VpbCBnZWlsIDopIChNYWxhciwgMTguIEp1biAyMDA1LCAxNzowNDozMCk6Cn4jISBybj1ab29rIHJ0PTExMTkxMDU2MjUgcmc9d3d3Cn4jISB0aWQ9MTExODk5ODU1OApQaWxhdHVzJyBGcmF1IGVudGZ1ZWhyZW4uIFVuZCBGb3JkZXJ1bmdlbiBzdGVsbGVuLgpJY2ggbWVpbmUgbmF0dWVybGljaCBkaWUgRnJhdSB2b24gZGVtIE9iZXJ3YWxkbWVpc3RlciBkYS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNrZWxldHR3YWxkIGFubm8gMDEgKEdhYnlsb24sIDIxLiBKdW4gMjAwNSwgMTI6MDA6NDgpOgp+IyEgcm49V3VyemVsIHJ0PTExMTkzMzc4ODkgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTE5MTA3NDEzCmphLCBuYWNoIHVudGVuLgoKZ2FiLCBudXIgaGFsYiBpbSBzcGFzcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdGFtbXRpc2NoIEJlcmxpbiAxLiBKdWxpIChDb3JuaG9saW8sIDIyLiBKdW4gMjAwNSwgMTc6MDc6MjgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTExOTQ0MjI3OCByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTE5NDQyMjc4ClNpZWhzdGUsIHNvIHZpZWwgenVyIE1hdWVyIGluIGRlbiBLb2VwZmVuOgpXYWVyc3RlIFdlc3NpLCBoYWV0dGVuIGRpZSBWb3JzY2hsYWVnZSB3YWhyc2NoZWlubGljaCBhbmRlcnMgYXVzZ2VzZWhlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdGFtbXRpc2NoIEJlcmxpbiAxLiBKdWxpIChHbG9pbnNvbiwgMjIuIEp1biAyMDA1LCAxNzoxMzowOSk6Cn4jISBybj1Db3JuaG9saW8gcnQ9MTExOTQ1Mjg0OCByZz1zY2htYXJybgp+IyEgdGlkPTExMTk0NDIyNzgKSmEsIGRhbm4gaGFldHRlIGljaCB0YXRzYWVjaGxpY2ggZGVuIEJvZGVuc2VlIGVtcGZvaGxlbi4gSGFyci4gSGFyci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdGFtbXRpc2NoIEJlcmxpbiAxLiBKdWxpIChDb3JuaG9saW8sIDIyLiBKdW4gMjAwNSwgMTc6MTM6NDkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTExOTQ1MzE4OSByZz1zY2htYXJybgp+IyEgdGlkPTExMTk0NDIyNzgKV2VzdGJlcmxpbmVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3RhbW10aXNjaCBCZXJsaW4gMS4gSnVsaSAoTWFoYXJldCwgMjIuIEp1biAyMDA1LCAxODoyNTozMCk6Cn4jISBybj1Db3JuaG9saW8gcnQ9MTExOTQ1MzIyOSByZz1zY2htYXJybgp+IyEgdGlkPTExMTk0NDIyNzgKTmEsIGVudHNjaGVpZGVuZGVyIGlzdCB3b2hsLCB3byBkaWUgU3RhdGktYWt0aXZlbiBNdWRkZXIgd29obmVuLiBVbmQgZGllCndvaG5lbiBudW4gbWFsIG5pY2h0IE5hZWhlIEdydW5ld2FsZCB1bmQgYXVjaCBuaWNodCBiZWltIFRpZXJnYXJ0ZW4uIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0YW1tdGlzY2ggQmVybGluIDEuIEp1bGkgKE9ya3RvZXRlciwgMjQuIEp1biAyMDA1LCAwNzoyNDoyMik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTE5NDQyMjc4IHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTExMTk0NDIyNzgKS29tbWV0IHVuZCBtYWNodCBIYXVlZmNoZW4/CgpJaGghCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBSZWNobmVycHJvYmxlbSAoQm9pbmcsIDI0LiBKdW4gMjAwNSwgMDk6NTY6NDUpOgp+IyEgcm49VGFyYW5pcyBydD0xMTE5NTk5MzU0IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTExMTk1NjgyMTUKRXMga29lbm50ZSBhYmVyIGF1Y2ggZWluZSB2b3J1ZWJlcmdlaGVuZGUgRmx1a3R1YXRpb24gaW0gRXJkbWFnbmV0ZmVsZApzZWluIC4uLiBvZGVyIGRhcyBDaGkga2FubiBuaWNodCByaWNodGlnIGZsaWVzc2VuIC4uLiAKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUmVjaG5lcnByb2JsZW0gKEJhbWJ1bGtvLCAyNC4gSnVuIDIwMDUsIDEwOjUyOjIyKToKfiMhIHJuPUJvaW5nIHJ0PTExMTk1OTk4MDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE5NTY4MjE1Ck9kZXIgZXMgaXN0IEF0b21zdHJvbS4gUnVldHRnZXJzIGlzdCBqYSBqZXR6dCBpbiBOUlcgYW4gZGVyIE1hY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUmVjaG5lcnByb2JsZW0gKENvcm5ob2xpbywgMjQuIEp1biAyMDA1LCAxMDo1NTowNik6Cn4jISBybj1CYW1idWxrbyBydD0xMTE5NjAzMTQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExOTU2ODIxNQpBbHNvIGljaCBoYWJlIGhpZXIgbnVyIGRpZ2l0YWxlbiBEb2xieXN1cnJvdW5kc3Ryb20sCmpldHp0IHdhZXNjaHQgbWVpbmUgV2FzY2htYXNjaGluZSBsZWlzZXIgdW5kIHNhdWJlcmVyLgoKU2VpdCBJaHIgZXR3YSBBbmFsb2dpa2VyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBDaWNlcm9uZSwgRU5DT1JFIChHbG9pbnNvbiwgMjQuIEp1biAyMDA1LCAxNjozOToyNSk6Cn4jISBybj1HYWJ5bG9uIHJ0PTExMTk2MjMwMTcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTE5NjAzMjU2CkpldHp0IGhhc3QgZHUgYWxsZXMgdG9ycGVkaWVydCwgd2VpbCBudW4gYXVzIEduYXR6IGdhciBrZWluZXIgd2FzIG1hY2h0LiBIYXN0CmR1IGF1cyBkZWluZXIgWmVpdCBhbHMgRU0gZ2FhYXIgbmljaHRzIGdlbGVybnQ/IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQ2ljZXJvbmUsIEVOQ09SRSAoR2FieWxvbiwgMjQuIEp1biAyMDA1LCAxNjo0Mjo0OSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTE5NjIzOTY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExOTYwMzI1NgoxLiBpY2ggdG9ycGVkaWVyZSBnYXIgbmljaHRzLiBpY2ggZXJrbGFlcmUgZGVtIGp1bmdzcHVuZCBudXIsIHdhcnVtIHNvd2FzCiAgIHplaXQgYnJhdWNodC4KMi4gd2VyIG9kZXIgd2FzIGlzdCBnbmF0ej8KMy4gd2VsY2hlIHplaXQgYWxzIEVNPwoKZ2FiCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmR5Li4uIChCbHV0Z2llciwgMjQuIEp1biAyMDA1LCAxNjo1MjozOCk6CkFuZHkgc2FndDogQmx1dGdpZXIsIHdpZXNvIHVlYmVyZmFlbGx0IER1IG1pY2g/CkFuZHkga29tbXQgYW4uCkFuZHkgc2FndDogaGFlaGhoID8/PwpBbmR5IGdlaHQuCkFuZHkgc2FndDogd2VsY2hlIHNjaGxhbmdlPwpBbmR5IHNhZ3Q6IFNtb2VyZGFzYnJvZWQgc21vZXJkYXMgc21vZXJkYXNicm9lZCByb2VtdG9lbXRvZW10b2VtLi4uLgoKRnVyY2h0YmFyLCBkaWVzZSBOUEMgOi0pCgpCbHV0Z2llciwgZGVyIEVocmVud2VydGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IENpY2Vyb25lLCBFTkNPUkUgKENyb2Z0LCAyNC4gSnVuIDIwMDUsIDE3OjAxOjUyKToKfiMhIHJuPUdsb2luc29uIHJ0PTExMTk2MjM5NjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE5NjAzMjU2CkFscyBXZWlzZXIgaXN0IG1hbiBrZWluIEVNICwtKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IENpY2Vyb25lLCBFTkNPUkUgKEdsb2luc29uLCAyNC4gSnVuIDIwMDUsIDE3OjA3OjA4KToKfiMhIHJuPUNyb2Z0IHJ0PTExMTk2MjUzMTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE5NjAzMjU2CkFjaCwgZmFzdCBkcmFuLiBBdXNzZXJkZW0gaGF0IGVyIGRvY2ggZWluIEhvbWVtdWQgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBDaWNlcm9uZSwgRU5DT1JFIChBcmF0aG9ybiwgMjQuIEp1biAyMDA1LCAxOToxOTowOSk6Cn4jISBybj1Dcm9mdCBydD0xMTE5NjI1MzEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExOTYwMzI1NgpHaWx0IGRhcyBhdWNoIHVtZ2VrZWhydD8gXTotPgoKQXJhdGhvcm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IENpY2Vyb25lLCBFTkNPUkUgKE11YWRpYiwgMjQuIEp1biAyMDA1LCAyMDozNzo0NSk6Cn4jISBybj1BcmF0aG9ybiBydD0xMTE5NjMzNTQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExOTYwMzI1Ngp6aWVtbGljaCBzaWNoZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh5ZHJhIG1pdCBOZWJlbmpvYj8gKEFyYXRob3JuLCAyNC4gSnVuIDIwMDUsIDIyOjQ4OjAzKToKRGllIEh5ZHJhIGVyaGVidCBzaWNoIGF1cyBkZW0gVGFsIGRlciBMdXBpbmVuLgouLi4KW0ZyZXVuZGU6TWVzaXJpaV0gQWgsIFBpenphIGlzdCBkYSAqZnJldSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIeWRyYSBtaXQgTmViZW5qb2I/IChPcmt0b2V0ZXIsIDI0LiBKdW4gMjAwNSwgMjI6NTA6MjkpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTExOTY0NjA4MyByZz1zY2htYXJybgp+IyEgdGlkPTExMTk2NDYwODMKRGllIHNvbGx0ZSBzaWNoIGVpbmVuIGFuZGVyZW4gSm9iIHN1Y2hlbiwgd2VubiBkaWUgc2ljaCBiZWkgamVkZW0gS3VuZGVuIHNvCmxhbmdlIGF1ZmhhZWx0LCB3aXJkIHNpZSBiYWxkIGdla3VlbmRpZ3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IDA4LjA3LjIwMDUgLSAxMC4wNy4yMDA1IChNdWFkaWIsIDI3LiBKdW4gMjAwNSwgMTM6Mjg6MDQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTExOTg3MTYxOCByZz1zZWhlci51cmxhdWIKfiMhIHRpZD0xMTE5ODI0NDUxCmthbm4gbWFsIGplbWFuZCBnbG9pbnNvbiBlcnNjaGllc3NlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogMDguMDcuMjAwNSAtIDEwLjA3LjIwMDUgKENyb2Z0LCAyNy4gSnVuIDIwMDUsIDEzOjMwOjMwKToKfiMhIHJuPU11YWRpYiBydD0xMTE5ODcxNjg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExOTgyNDQ1MQpFciBpc3QgbGVpZGVyIG5pY2h0IGluIG1laW5lciBSZWljaHdlaXRlLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IDA4LjA3LjIwMDUgLSAxMC4wNy4yMDA1IChHbG9pbnNvbiwgMjcuIEp1biAyMDA1LCAxMzozMToxNSk6Cn4jISBybj1Dcm9mdCBydD0xMTE5ODcxODMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTExOTgyNDQ1MQpBdXNzZXJkZW0gYmluIGljaCBkaWUgU2VoZXJpbiwgZHUgQXJzY2ghCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVybGF1Yj8gKFpvb2ssIDI3LiBKdW4gMjAwNSwgMTU6Mzg6MTkpOgp+IyEgcm49TWlyaWwgcnQ9MTExOTg3OTE4MyByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTExOTg3OTE4MwpXYXMgZ2VuYXUgbWFjaHQgRGVpbmUgS2xhc3NlIHZvbSAzMC42LiBiaXMgMi43LiBhdWYgZWluZW0gQmFobmhvZj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVybGF1Yj8gKE9ya3RvZXRlciwgMjcuIEp1biAyMDA1LCAxODoxNToxNik6Cn4jISBybj1ab29rIHJ0PTExMTk4Nzk0OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTE5ODc5MTgzClNvIGV0d2FzIG5lbm5lIGljaCAiYWJnZWZhaHJlbiIhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVXJsYXViIDAyLjA3LjIwMDUgLSAyNC4wNy4yMDA1IChBcmF0aG9ybiwgMzAuIEp1biAyMDA1LCAwMDowNjoxMyk6Cn4jISBybj1BbmF0b2wgcnQ9MTEyMDA4MjY5NSByZz1zZWhlci51cmxhdWIKfiMhIHRpZD0xMTIwMDgyNjk1CkVyc3RhdW5saWNoIGdlbnVnLCBEaXIgc2NoZWluZW4gaGV1dGUgb2VmdGVyIG1hbCBkaWUgV29ydGUgenUgZmVobGVuLgpadW1pbmRlc3QgaW4gZGVuIE1QQS1Qb3N0aW5ncyA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRldXRzY2hlIFBvc3QgKFJlcXVpZW0sICAxLiBKdWwgMjAwNSwgMTA6MzI6MDkpOgpTb3ZpZWwgenVtIFRoZW1hIEt1bmRlbmZyZXVuZGxpY2hrZWl0OgpOYWNoZGVtIGJlaSBtaXIgaW5uZXJoYWxiIGVpbmVzIGhhbGJlbiBKYWhyZXMgamV0enQgbmFjaHZvbGx6aWVoYmFyIHp1bSAzLiBNYWwKZWluZSBCcmllZnNlbmR1bmcgbmljaHQgenVnZXN0ZWxsdCB3dXJkZSAoZWlubWFsIHdhcnMgbmljaHQgc28gd2lsZCwgZWlubWFsCm1laW5lIExvaG5zdGV1ZXJrYXJ0ZSwgZWlubWFsIGV0d2FzdyBwZXJzb2VubGljaCB3aWNodGlnZXMpIGRhY2h0ZSBpY2gsIGVzCndhZXJlIHdvaGwgYW4gZGVyIFplaXQsIG1hbCBiZWkgZGVyIEhvdGxpbmUgYW56dXJ1ZmVuIHVuZCBuYWNoenVmcmFnZW4sIHdhcwptYW4gZGVubiBkYSBtYWNoZW4ga29lbm5lLCBuaWNodCB6dWxldHp0LCB3ZWlsIHNvbGNoZSBCZXNjaHdlcmRlbiBtaXIgYXVjaCBhdXMKZGVtIEhhdXMgYmVrYW5udCBzaW5kLgoKQWxzbyBhbmdlcnVmZW46CiJKYWhhLCBEZXV0c2NoZSBQb3N0LCBndXRlbiBUYWciLgpJY2g6IDxQcm9ibGVtZXJrbGFlcj4KUG9zdDogRGEga29lbm5lbiB3aXIgYmVpIEJyaWVmc2VuZHVuZ2VuIG5peCBtYWNoZW4uCkljaDogQWxzbyB3aXJkIGF1Y2ggbmljaHQgbmFjaGdlc2VoZW4sIHdhcnVtIGRhcyBnZWhhZXVmdCBwYXNzaWVydD8KUG9zdDogU2llIG9kZXIgZGVyIEFic2VuZGVyIGtvZW5uZW4gamEgTmFjaGZvcnNjaHVuZ3NhbnRyYWVnZSBzdGVsbGVuLgpJY2g6IEhhYiBpY2guIElzdCBuaXggYmVpIHJhdXNnZWtvbW1lbi4KUE9zdDogSmEsIGJlaSBCcmllZnNlbmR1bmdlbiBrb2VubmVuIHdpciBkYSBqYSBhdWNoIG5peCBtYWNoZW4uCkljaDogQWxzbyBpc3QgZGFzIGVoIGFsbGVzIHNpbm5sb3M/ClBvc3Q6IERhcyBoYWJlIGljaCBuaWNodCBnZXNhZ3QuCkljaDogV2FzIHNvbGwgaWNoIGRhbm4gbWFjaGVuPwpQb3N0OiBOYWNoZm9yc2NodW5nc2FudHJhZy4KSWNoOiBIYXR0ZSBpY2ggamEuLi4uIGFiZXIgZGFiZWkgaXN0IG5peCByYXVzZ2Vrb21tZW4uClBvc3Q6IERhbm4ga29lbm5lbiBzaWUgbml4IG1hY2hlbi4KSWNoOiBBYmVyIGdlcmFkZS4uLmFjaC4uLnZlcmdlc3NlbiBTaWUgZXMuIFdhcyBrYW5uIG1hbiBkZW5uIG1hY2hlbiwgZGFtaXQKc293YXMgaW4gWnVrdW5mdCBuaWNodCBwYXNzaWVydD8KUG9zdDogTml4LiBEZXIgWnVzdGVsbGVyIHN0ZWxsdCBhbGxlcyB6dSwgd2FzIGVyIGJla29tbXQuCkljaDogQWguIFp3ZWlmZWxsb3MuIEFsc28gbGllZ3QgZGVyIEZlaGxlciB3byBhbmRlcnM/ClBvc3Q6IERhcyBoYWIgaWNoIG5pY2h0IGdlc2FndC4KSWNoOiBKYSBudW4gLSB3YXMgdHV0IG1hbiBkYSBudW4gbGV0enRlbmRsaWNoPwpQb3N0OiBOYWphLCB3ZW5uIHNpY2ggbmFjaGZvcnNjaHVuZ3NhbnRyYWVnZSBoYWV1ZmVuLCBkYW5uIHdpcmQgc2Nob24gbWFsCm5hY2hnZXNlaGVuLgpJY2g6IFVuZCB3YXJ1bSB3aXJkIGRhbm4gbmljaHQgbmFjaGdlc2VoZW4sIHdlbm4gaWNoIGlobmVuIHNhZ2UsIGRhc3MgaWNoCm5hY2h2b2xsemllaGJhciBtZWhyZmFjaCBQb3N0IG5pY2h0IGJla29tbWVuIGhhYmUgdW5kIGRhcyBhbmRlcmVuIGhpZXIgYXVjaCBzbwpnZWh0PwpQb3N0OiBBdWYgc28gZWluZSBEaXNrdXNzaW9uIGxhc3NlIGljaCBtaWNoIG5pY2h0IGVpbiAqa2xpY2sqLgoKQWhqYS4gTmV1ZSBkZXV0c2NoZSBLdW5kZW5mcmV1bmRsaWNoa2VpdC4KKmtsaWNrKiwKUmVxdWllbQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERldXRzY2hlIFBvc3QgKFpvb2ssICAxLiBKdWwgMjAwNSwgMTA6Mzg6MDMpOgp+IyEgcm49UmVxdWllbSBydD0xMTIwMjA2NzI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyMDIwNjcyOQpXZW5uIER1IGVzIG51biBlaCBzY2hvbiBhYmdldGlwcHQgaGFzdCwgZGFubiBzY2hpY2sgZXMgZG9jaCBhbiBkaWUKRGV1dHNjaGVQb3N0IGFscyBzY2hyaWZ0bGljaGUgQmVzY2h3ZXJkZS4gWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGV1dHNjaGUgUG9zdCAoUmVxdWllbSwgIDEuIEp1bCAyMDA1LCAxMDozODozMyk6Cn4jISBybj1ab29rIHJ0PTExMjAyMDcwODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIwMjA2NzI5CkhhdHRlIGljaCB2b3IgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERldXRzY2hlIFBvc3QgKFpvb2ssICAxLiBKdWwgMjAwNSwgMTA6Mzk6MDkpOgp+IyEgcm49UmVxdWllbSBydD0xMTIwMjA3MTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyMDIwNjcyOQpIYWx0ZSB1bnMgZG9jaCBkYW5uIGJpdHRlIGF1ZiBkZW0gbGF1ZmVuZGVuLiA6KSBab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEZXV0c2NoZSBQb3N0IChHbG9pbnNvbiwgIDEuIEp1bCAyMDA1LCAxMDozOToxOSk6Cn4jISBybj1ab29rIHJ0PTExMjAyMDcwODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIwMjA2NzI5Ck9oLCBpY2ggc2VoIGVpbiByb3RlcyBRIGJsaW5rZW4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEZXV0c2NoZSBQb3N0IChNYWhhcmV0LCAgMS4gSnVsIDIwMDUsIDEwOjQwOjI1KToKfiMhIHJuPUdsb2luc29uIHJ0PTExMjAyMDcxNTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIwMjA2NzI5CkljaCBoYWIgbWFsIG5lIFplaXRsYW5nIFBha2V0ZSB1bmQgRWluc2NocmVpYmVuIG5pY2h0IGJla29tbWVuIC0gYWJlciBhdWNoCmtlaW5lIEJlbmFjaHJpY2h0aWd1bmdza2FydGUsIGRhc3MgZGEgaXJnZW5kd28gd2FzIGZ1ZXIgbWljaCBhYnp1aG9sZW4gaXN0LgpEYSBoYXQgYXVjaCBzbyBtYW5jaGVzIHJvdCBnZWJsaW5rdCBiZWkgbWlyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGV1dHNjaGUgUG9zdCAoR2xvaW5zb24sICAxLiBKdWwgMjAwNSwgMTA6NDE6NDcpOgp+IyEgcm49TWFoYXJldCBydD0xMTIwMjA3MjI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyMDIwNjcyOQpCZWkgbWlyIHdhcmVuIHNpZSB6dW1pbmRlc3QgYmV6dWVnbGljaCBLYXJ0ZSBlaW53ZXJmZW4gdHJvdHogZGVyIFByYWVzZW56CmVpbmVyIFBlcnNvbiBlaW5zaWNodGlnLCBuYWNoZGVtIGljaCBtaWNoIHdvcnRyZWljaCBpbiBkZXIgRmlsaWFsZSB1ZWJlciBkaWUKRmF1bGhlaXQgZGVzIFp1c3RlbGxlcnMgYmVzY2h3ZXJ0IGhhYmUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRGV1dHNjaGUgUG9zdCAoSmFkYXdpbiwgIDEuIEp1bCAyMDA1LCAxMToxMzo0Myk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTIwMjA3MzA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyMDIwNjcyOQpCZWkgbWlyIGhhYmVuIHNpZSBuZXVsaWNoIC13aWUgaW1tZXItIGRyYXVmZ2VzY2hyaWViZW4gJ0FiaG9sdW5nIG5hZWNoc3RlcgpXZXJrdGFnIGFiIDExaCcuIERhcyB3YXIgZGVyIFNhbXN0YWcsIG51ciBsZWlkZXIgc2luZCBkaWUgYW4gZGVtIFRhZyB1bWdlem9nZW4KdW5kIGhhdHRlbiBudXIgYmlzIDEwaCBnZW9lZmZuZXQuIFp1Z2VnZWJlbmVybWFzc2VuIHBhc3NpZXJ0IGRhcyB2aWVsbGVpY2h0CmFsbGUgMjAgSmFocmUgZWlubWFsLCBkYXNzIGRpZSBQb3N0IHVtemllaHQsIGFiZXIgcHJvZmVzc2lvbmVsbCAodW5kIGF1Y2gKbmljaHQgYXVmd2VuZGlnZXIpIHdhZXJlIGVzIHNjaG9uIGdld2VzZW4sIHdlbm4gc2llIGdsZWljaCAnQWJob2x1bmcgTW9udGFnJwpnZXNjaHJpZWJlbiBoYWV0dGVuLiBEYW5uIGhhZXR0ZSBpY2ggbWlyIHp1bWluZGVzdCBkZW4gdW5ub2V0aWdlbiBXZWcgZ2VzcGFydC4KSmFkKgpVZVVlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEZXV0c2NoZSBQb3N0IChSZXF1aWVtLCAgMS4gSnVsIDIwMDUsIDExOjE2OjM5KToKfiMhIHJuPUphZGF3aW4gcnQ9MTEyMDIwOTIyMyByZz1zY2htYXJybgp+IyEgdGlkPTExMjAyMDY3MjkKU0NobmVsbCBzaW5kIHNpZSBqYS4KQWJlciBiZWkgZWluZXIgdm9yZm9ybXVsaWVydGVuIEFudHdvcnQsIGRpZSAKCi0gamVkZXMgQnVsbHNoaXQtQmluZ28gc29mb3J0IG1pdCBtdWx0aXBsZW4gR2V3aW5uZXJuIGJlZW5kZW4gd3VlcmRlIHVuZCAKLSBpbiBCZXp1ZyBhdWYgbWVpbmUgZWlnZW50bGljaGUgQmVzY2h3ZXJkZSBtZWhyZXJlIEZyYWdlbiBuaWNodCBiZWFudHdvcnRldApiencgbWljaCBhdWZmb3JkZXJ0LCBEaW5nZSB6dSB0dW4sIGRpZSBpY2ggYWxzICJoYWIgaWNoIHNjaG9uIGdlbWFjaHQgdW5kIGVzCmhhdCBuaXggZ2VicmFjaHQiIGJlcmVpdHMgYW5nZWdlYmVuIGhhdHRlLi4uLgoKRWluZSBVbnRlcmhhbHR1bmcgbWl0IE1laGFsIGhhdCBtZWhyIFNpbm4gZXJnZWJlbiB1bmQgU3Bhc3MgZ2VtYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS0RFLUF1dG9sb2dvdXQ/IChBbmF0b2wsICAxLiBKdWwgMjAwNSwgMTQ6NTU6MTQpOgp+IyEgb249QW5hdG9sIG90PTExMjAyMjI1MDQgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVd1cnplbCBydD0xMTIwMjIyNDEyIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTEyMDIyMjI4MgpXaW5kb3dzLVJlY2huZXIga29lbm5lbiB1ZWJlcnMgV29jaGVuZW5kZSBkdXJjaGxhdWZlbj8hIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS0RFLUF1dG9sb2dvdXQ/IChNdWFkaWIsICAxLiBKdWwgMjAwNSwgMTQ6NTk6NTQpOgp+IyEgcm49QW5hdG9sIHJ0PTExMjAyMjI1MTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIwMjIyMjgyCm9obmUgd2VpdGVyZXMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEtERS1BdXRvbG9nb3V0PyAoR2xvaW5zb24sICAxLiBKdWwgMjAwNSwgMTU6MzI6MDQpOgp+IyEgcm49TXVhZGliIHJ0PTExMjAyMjI3OTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIwMjIyMjgyCk1laW5lciBnZWh0IGRhbm4gaW1tZXIgaW4gU3VzcGVuZC10by1kaXNrLiBNaXN0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEtERS1BdXRvbG9nb3V0PyAoTXVhZGliLCAgMS4gSnVsIDIwMDUsIDE2OjA0OjMzKToKfiMhIHJuPUdsb2luc29uIHJ0PTExMjAyMjQ3MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIwMjIyMjgyCnN0ZWxscyBhYiB1bmQgaG9lciBhdWYgenUgamFtbWVybgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogS0RFLUF1dG9sb2dvdXQ/IChHbG9pbnNvbiwgIDEuIEp1bCAyMDA1LCAxNzoyMjoxNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTEyMDIyNjY3MyByZz1zY2htYXJybgp+IyEgdGlkPTExMjAyMjIyODIKRGVuayBqYSBnYXIgbmljaHQgZHJhbi4gRGFubiBoYWV0dGVzdCBkdSBuaXggenUgbm9lcmdlbG4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRGV1dHNjaGUgUG9zdCAoS2VsbHlidW5keSwgIDEuIEp1bCAyMDA1LCAyMTozNzo0Nyk6Cn4jISBybj1SZXF1aWVtIHJ0PTExMjAyMDkzOTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIwMjA2NzI5CkRpZSBzY2huZWxsc3RlIFBvc3RrYXJ0ZSBkaWUgaWNoIGJla29tbWVuIGhhYmUsIGhhdCBnZXJhZGUgbWFsIDIgS2FsZW5kZXJ0YWdlCmdlYnJhdWNodC4gV2llPyB3bz8gc2NobmVsbD8gb2VoPwoKRGVyIFdpdHogaXN0IGRlcjogRGllIFBvc3RrYXJ0ZSBrYW0gdm9uIG1laW5lbiBFbHRlcm4uIEF1cyBBbGFza2EuIEFiZXIgbmljaHQKZXR3YSBhdXMgQW5jaG9yYWdlLCBuZWluLCBzb25kZXJuIGF1cyBQb2ludCBCYXJyb3cuIERhcyBsaWVndCBhbiBkZXIKTm9yZGt1ZXN0ZSB2b24gQWxhc2thLCBkYSBnaWJ0IGVzIDIgSWdsdXMsIDMgRXNraW1vcywgZWluZSBPZWxwaXBlbGluZSwgZWluZQpQdW1wc3RhdGlvbiB1bmQgYW5zb25zdGVuIG51ciBFaXNiYWVyZW4uIERpZSBLYXJ0ZSBicmF1Y2h0ZSBlaW5lbiBoYWxiZW4gVGFnCnZvbiBQb2ludCBCYXJyb3cgenVtIEZyYW5rZnVydGVyIEZsdWdoYWZlbiB1bmQgMSAxLzIgVGFnZSBmdWVyIGRpZSAzMCBrbSB2b20KRmx1Z2hhZmVuIG5hY2ggTWFpbnouIFdlbm4gQWxhc2thIHp1bSBFaW56dWdzYmVyZWljaCBkZXIgRGV1dHNjaGVuIFBvc3QgQUcKZ2Vob2VyZW4gd3VlcmRlLCB3dWVyZGUgaWNoIHdhaHJzY2hlaW5saWNoIDMgSmFocmUgYXVmIGRpZSBQb3N0a2FydGUgd2FydGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRGV1dHNjaGUgUG9zdCAoTWFyY3VzLCAgMS4gSnVsIDIwMDUsIDIxOjM4OjM5KToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTEyMDI0NjY2NyByZz1zY2htYXJybgp+IyEgdGlkPTExMjAyMDY3MjkKSWNoIHdhcnRlIGRhaGluZ2VnZW4gaW1tZXIgbm9jaCBkYXMgZWluIHBhYXIgbWVpbmVyIFBvc3RrYXJ0ZW4KYXVzIEdyaWVjaGVubGFuZCBhbiBkaWUgamV3ZWlsaWdlbiBFbXBmYWVuZ2VyIGdlbGFuZ2VuLiBTZWl0IDQgV29jaGVuLgoKQ2lhbywgTWFyY3VzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBLREUtQXV0b2xvZ291dD8gKEtlbGx5YnVuZHksICAxLiBKdWwgMjAwNSwgMjE6Mzk6MTkpOgp+IyEgcm49TXVhZGliIHJ0PTExMjAyMjI3OTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIwMjIyMjgyClZlcnJhZXRzdCBEdSBtaXIgZGllIFRyaWNrcz8gQmlsbCBHYXRlcyBlaW5lbiBibGFzZW4gZnVlciBuZW4gc3BlY2lhbAp3aW5kb29mLXVwZGF0ZT8gb2RlciBzbz8gKkdHKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRGV1dHNjaGUgUG9zdCAoQW50aGVhLCAgMS4gSnVsIDIwMDUsIDIyOjIyOjI0KToKfiMhIHJuPU1hcmN1cyBydD0xMTIwMjQ2NzE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyMDIwNjcyOQpXYWhyc2NoZWlubGljaCBoYXN0IER1IGF1ZiBkaWUgS2FydGVuIGlyZ2VuIHdlbGNoZSBTcGllbGUgZ2VtYWx0LCB1bmQgc293YXMKaXN0IGRvY2ggaW4gR3JpZWNoZW5sYW5kIHZlcmJvdGVuLiBOYWphLCBzaWUgaGFldHRlbiBlcyBnZXJuZSBnYW56IHZlcmJvdGVuLApzbyB3aWUgamVkZXMgU3BpZWwgYXVmIEhhbmR5cyBldGMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFZpZWNoZXIgaW0gQmlsZHNjaGlybSAoUm9uZGEsICA0LiBKdWwgMjAwNSwgMjM6MTE6MDEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEyMDQwOTc3NCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMTIwNDA5MDk3CldvIGlzdCBkYXMgUHJvYmxlbT8gSG90bGluZSB2b24gRnVqaXRzdSBhbnJ1ZmVuOiAiTWVpbiBOb3RlYm9vayBoYXQgbmVuIEJ1ZyEiCi0gIldlbGNoZXMgQmV0cmllYnNzeXN0ZW0/IiAtICJJY2ggZ2xhdWIsIGRhcyBpc3QgZGVtIEJ1ZyBlZ2FsLi4uIgoKSWNoIHN0ZWxsIG1pciBkYXMgZ2FueiBzcGFubmVuZCB2b3IuIEthbm5zdGUgbmVuIE1pdHNjaG5pdHQgdm9uIGRlbSBHZXNwcmFlY2gKbWFjaGVuPwoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFZpZWNoZXIgaW0gQmlsZHNjaGlybSAoUmVxdWllbSwgIDQuIEp1bCAyMDA1LCAyMzoxMjoxNSk6Cn4jISBybj1Sb25kYSBydD0xMTIwNTExNDYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyMDQwOTA5NwpTVVBFUi1JZGVlIDotKQpCaXR0ZWJpdHRlLCBtYWNoIGRhcy4gVW5kIHBvc3RlIGhpZXIgZWluZW4gTGluayB6dSBkZW0gTWl0c2Nobml0dCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVmlkZW9jYXB0dXJpbmcgKFJvbmRhLCAgNS4gSnVsIDIwMDUsIDIxOjQ4OjM0KToKfiMhIHJuPUFyayBydD0xMTIwNTkyODc2IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTExMjA1NTQ3ODkKTmVlLCBuZWUgQXJrLiBGYWNoa3VuZGlnZSBGb3JlbiBzaW5kIGltbWVyIGluIGRlciBNUEEgOy0pCgpSb25kYSAqdW53aXNzZW5kKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRhc3NlIG9kZXIgVC1TaGlydCBnZWZhZWxsaWc/IChHYWJ5bG9uLCAgNi4gSnVsIDIwMDUsIDE2OjE4OjU2KToKfiMhIHJuPU1pcmlsIHJ0PTExMjA2NTg5NjMgcmc9cGFydHkKfiMhIHRpZD0xMTIwNjU4OTYzCmR1bmtlbGVsZmVua3VlaGUsIGRpZSBtaXQgc29ubmVuc2NoaXJtIHNwaW5uZW4genVtIHNwYXppZXJnYW5nIGF1c2Z1ZWhyZW4/CnNlaWQgaWhyIHNpY2hlciwgZGFzcyBpaHIgaW4gZGVyIHJpY2h0aWdlbiBydWJyaWsgc2VpZD8gOikKCmdhYgoKcC5zLiBwaXRmYWxsIGlzdCBzdGFyay4uLiB1ZWJlcnRyaWViZW4uID46KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUYXNzZSBvZGVyIFQtU2hpcnQgZ2VmYWVsbGlnPyAoR2xvaW5zb24sICA2LiBKdWwgMjAwNSwgMTY6MTk6NTYpOgp+IyEgcm49R2FieWxvbiBydD0xMTIwNjU5NTM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyMDY1ODk2MwpPY2gsIFBpdHRpIGZpbmQgaWNoIGNvb2wgZ2V6ZWljaG5ldC4gQWJlciBkaWUgS3VlaGUgZmluZCBpY2ggdW5wYXNzZW5kLiBJY2gKd2Vpc3MsIGljaCBiaW4gZGFiZWkgc3Rhcmsgc3ViamVrdGl2IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVGFzc2Ugb2RlciBULVNoaXJ0IGdlZmFlbGxpZz8gKERhcmtsb3IsICA2LiBKdWwgMjAwNSwgMTc6MDM6MDYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEyMDY1OTU5NiByZz1zY2htYXJybgp+IyEgdGlkPTExMjA2NTg5NjMKTmUgS2F0emVua3JpZWdlcmt1aD8gLSBBbHNvIG5lZSB3aXJrbGljaC4uLiAtIEZlbGluZW4gaGFiZW4gc2Nob24gZ2VudWcgRmVsbAp1bmQgYXVjaCBnZW51ZyBNdXN0ZXIgZGFyaW4uLi4gCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUYXNzZSBvZGVyIFQtU2hpcnQgZ2VmYWVsbGlnPyAoQXJrLCAgNi4gSnVsIDIwMDUsIDE4OjE5OjA2KToKfiMhIHJuPUdsb2luc29uIHJ0PTExMjA2NTk1OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIwNjU4OTYzCkhtLCBkJ2FjY29yZCwgYmVpIG1pciBhdWNoIGVoZXIgSVdLSyEgR2FlYmUgQmx1dG1pbGNoLCBkYXMgaXN0IC4uLiBiYWVoIDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRhc3NlIG9kZXIgVC1TaGlydCBnZWZhZWxsaWc/IChOb25uZSwgIDcuIEp1bCAyMDA1LCAwNzo1NjozNik6Cn4jISBybj1BcmsgcnQ9MTEyMDY2Njc0NiByZz1zY2htYXJybgp+IyEgdGlkPTExMjA2NTg5NjMKS3VlaGUgZmluZGUgaWNoIGF1Y2ggbmljaHQgc28gdG9sbCwgaWNoIHd1ZXJkZSBmdWVyCmh0dHA6Ly93d3cuc2VlYmVlLmRlL21nL2dhbGVyaWUvdGllel9hMS5odG0gcGxhZWRpZXJlbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkduZ25nbmduZ25nbmduZ25ubm5ubm5ubm5ubm4gKFpvb2ssICA3LiBKdWwgMjAwNSwgMTk6MjY6NTcpOgpYWFggdGVpbHQgRGlyIG1pdDogSWNoIGhhYmUgZ2VuYXUgbmFjaCBBbndlaXN1bmcgZ2VhcmJlaXRldCA6KQpYWFggdGVpbHQgRGlyIG1pdDogT2huZSBtaXR6dWRlbmtlbi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR25nbmduZ25nbmduZ25nbm5ubm5ubm5ubm5ubiAoTXVwZmVsLCAgNy4gSnVsIDIwMDUsIDIzOjIwOjIyKToKfiMhIHJuPVpvb2sgcnQ9MTEyMDc1NzIxNyByZz1zY2htYXJybgp+IyEgdGlkPTExMjA3NTcyMTcKQXJiZWl0ZXRlIGluIGVpbmVyIGdyb3NzZW4gZGV1dHNjaGVuIEZpcm1hPyA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR25nbmduZ25nbmduZ25nbm5ubm5ubm5ubm5ubiAoWm9vaywgIDcuIEp1bCAyMDA1LCAyMzoyMDo1MCk6Cn4jISBybj1NdXBmZWwgcnQ9MTEyMDc3MTIyMiByZz1zY2htYXJybgp+IyEgdGlkPTExMjA3NTcyMTcKSWNoIGRlbmtlIG5pY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUGFydHkgWFhWSUlJIChHbG9pbnNvbiwgIDkuIEp1bCAyMDA1LCAyMToxNDoyMik6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMTIwOTM2NDU2IG9nPXBhcnR5Cn4jISBybj1UYXJhbmlzIHJ0PTExMjA5MzA3OTAgcmc9cGFydHkKfiMhIHRpZD0xMTE1MzE2NzU0ClRhbnRlIEdvb2dsZSBoYXQgamEgbmljaHQgbWFsIGJlc3NlcmUgQXVmbmFobWVuIHZvbiBEcmVzZGVuIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3VyZmVuIChHcmltbWJvcm4sIDEzLiBKdWwgMjAwNSwgMDk6MDk6MzkpOgp+IyEgcm49VGFyYW5pcyBydD0xMTIxMDAxNDg1IHJnPXBhcnR5LmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTIwOTgwMjMxCkljaCB3YWVyZSBlYmVuZmFsbHMgYmVyZWl0IGVpbiBwYWFyIExldXRlIGF1Znp1bmVobWVuLiBBbGxlcmRpbmdzIHdhZXJlIGRlcgpXZWcgenVyIFN1cmZzY2h1bGUgZXR3YXMgd2VpdGVyLCBydW5kIGRyZWllaW5oYWxiIFN0dW5kZW4gbWl0IGRlciBCYWhuLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUGFydHkgWFhWSUlJIChHcmltbWJvcm4sIDEzLiBKdWwgMjAwNSwgMDk6MTA6MzUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEyMDkzNjQ2MiByZz1zY2htYXJybgp+IyEgdGlkPTExMTUzMTY3NTQKVGphLCB2aWVsbGVpY2h0IHNvbGx0ZSBnb29nbGUgbWFsIGJlaSBkZXIgUkFGIG5hY2hmcmFnZW4sIGRpZSBoYWJlbiBkYSBkb2NoCm5ldWxpY2ggZWluIHBhYXIgYnJhdWNoYmFyZSBMdWZ0YXVmbmFobWVuIHZvbiBEcmVzZGVuIGdlbWFjaHQuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZ1ZXIgZGllIFRhdWNoZXIgaW0gUnVocmdlYmlldCAoWm9vaywgMTMuIEp1bCAyMDA1LCAwOTozODowNik6Cn4jISBvbj1ab29rIG90PTExMjEyNDAyODAgb2c9cGFydHkuYmVrYW5udG1hY2h1bmdlbgp+IyEgcm49TXVhZGliIHJ0PTExMjEyNDAyMDYgcmc9cGFydHkuYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTExMjEyNDAyMDYKRGVyIHVlYmxpY2hlIFN1bXBmIGluIE5SVyBuZWhtZSBpY2ggYW4uIFpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZ1ZXIgZGllIFRhdWNoZXIgaW0gUnVocmdlYmlldCAoR2xvaW5zb24sIDEzLiBKdWwgMjAwNSwgMDk6Mzk6MDIpOgp+IyEgb249R2xvaW5zb24gb3Q9MTEyMTI0MDMzNCBvZz1wYXJ0eS5iZWthbm50bWFjaHVuZ2VuCn4jISBybj1ab29rIHJ0PTExMjEyNDAyODAgcmc9cGFydHkuYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTExMjEyNDAyMDYKRGFzIHdpcmQgdm9uIEphaHIgenUgSmFociBzY2h3YWVyemVyIGRvcnQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3VyZmVuIChSb25kYSwgMTUuIEp1bCAyMDA1LCAwMDozMzoxNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEyMTIzODU3OSByZz1zY2htYXJybgp+IyEgdGlkPTExMjA5ODAyMzEKTmFqYSwgbWl0bSBGbGllZ2VyIHdhZXJzIGRvY2ggc2NobmVsbGVyIHVuZCBhbmdlYnJhY2h0ZXIsIG9kZXI/CgpSb25kYSAqZGFua2VuZCBhYmxlaG5lbmQgbWFuZ2VscyBaZWl0IGZ1ZXIgTUctUGFydHkgOy0oKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFF1aXouIChHbG9pbnNvbiwgMTkuIEp1bCAyMDA1LCAwMTo0MTozNik6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMTIxNzMwMDg0IG9nPW1hZ2llci5lbnR3aWNrbHVuZwp+IyEgcm49Wm9vayBydD0xMTIxNzI4ODI2IHJnPW1hZ2llci5lbnR3aWNrbHVuZwp+IyEgdGlkPTExMjE2MTAyNTcKUGFoYmFoLCBpY2ggc2NoaWNrIGVpbmVuIEthZW1wZmVyIHZvcmJlaSwgemVyYnJlY2ggZGllIFdhZmZlIHVuZCBzZXR6IGRhbm4KZWluZW4gQnVnIGFiISA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAuLiBvZGVyIDIgYXVzIEx1ZWJlY2svSGFtYnVyZyAoWm9vaywgMjAuIEp1bCAyMDA1LCAxNzozOTo1NCk6Cn4jISBybj1SYW5nb3JuIHJ0PTExMjE4NzM3OTggcmc9cGFydHkKfiMhIHRpZD0xMTIxODczNzk4Cj4gb2huZSBLYXJ0ZQoKQmV6aWVoZW4gc2ljaCBkaWUgMTNjdCBhdWYgZGllIGt1ZXJ6ZXN0ZSBTdHJlY2tlPyA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogLi4gb2RlciAyIGF1cyBMdWViZWNrL0hhbWJ1cmcgKEdyaW1tYm9ybiwgMjAuIEp1bCAyMDA1LCAxNzo0MDozNik6Cn4jISBybj1ab29rIHJ0PTExMjE4NzM5OTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIxODczNzk4Ck5laW4sIGF1ZiBkaWUgS2lsb21ldGVyLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphbmdzdD8gKFZlY3RvciwgMjEuIEp1bCAyMDA1LCAxOTo1NDo1MSk6CkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBsYXNzdCB3YXMgaGF1ZW4KWm9vayAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhbmdzdD8gKFpvb2ssIDIxLiBKdWwgMjAwNSwgMjA6NDU6MjQpOgp+IyEgcm49VmVjdG9yIHJ0PTExMjE5Njg0OTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIxOTY4NDkxCmdyb3NzZSBhbmdzdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChNaXJpbCwgMjEuIEp1bCAyMDA1LCAyMTo0OTowMCk6ClZvbiBNYXN1bDogSG0uIEF1Z2UgZGVzIFRldWZlbHMgc3RlaHQgYXVmIExldmVsIDE4LiBEYSBtdXNzIGljaCB3b2hsClZvbiBNYXN1bDogZXJzdCBub2NoIGV0d2FzIEtsZWluZ2V0aWVyIHRvZXRlbi4KW1RvZDpMYXJzXSBFaW4gU2tvcnBpb24gaGF0IGdlcmFkZSBNYXN1bCB1bWdlYnJhY2h0LgoKTWlyaWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5QQyBsZXJuZW4gKEJsdXRnaWVyLCAyNS4gSnVsIDIwMDUsIDE5OjEzOjUyKToKRHUgcmFtbXN0IGRlbSBodWVwZmVuZGVuIEtudXRzY2hmaXNjaCBkYXMgS25pZSBpbiBkZW4gS29lcnBlci4KRGVyIEtudXRzY2hmaXNjaCBpc3QgZ2x1ZWNrbGljaCB3aWUgbmllIHp1dm9yLgpEdSBzY2hsYWVnc3QgZWluZW4gaHVlcGZlbmRlbiBLbnV0c2NoZmlzY2ggbWl0IGRlbSBLcmFjaGVuIGJyZWNoZW5kZXIgS25vY2hlbi4KRGVyIGh1ZXBmZW5kZSBLbnV0c2NoZmlzY2ggZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRGVyIEtudXRzY2hmaXNjaCBnaWJ0IERpciBlaW5lbiB0aWVmZW4gdW5kIGhpbmdlYnVuZ3N2b2xsZW4gS3Vzcy4KRGVyIEtudXRzY2hmaXNjaCBnaWJ0IERpciB2b3JzaWNodGlnIGVpbmVuIEt1c3MuCgpCbHV0Z2llciBLbm9jaGVuYnJlY2hlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOUEMgbGVybmVuIChLZWxseWJ1bmR5LCAyNS4gSnVsIDIwMDUsIDE5OjI1OjQ3KToKfiMhIHJuPUJsdXRnaWVyIHJ0PTExMjIzMTE2MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIyMzExNjMyClNjaG9uIG1hbCBkYXJhbiBnZWRhY2h0LCBkYXNzIGRpZSBLbnV0c2NoZmlzY2hlIGltIFJ1ZGVsIGF1ZnRyZXRlbj8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5QQyBsZXJuZW4gKEJsdXRnaWVyLCAyNS4gSnVsIDIwMDUsIDE5OjI4OjM1KToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTEyMjMxMjM0NyByZz1zY2htYXJybgp+IyEgdGlkPTExMjIzMTE2MzIKS2xhciwgYWJlciBkZXNoYWxiIGxlcm5lbiBzaWUgdHJvdHpkZW0gZ3V0LCBvZGVyPyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbiBkZXIgVG9kZXNzZXF1ZW56Li4uIChKYWRhd2luLCAzMS4gSnVsIDIwMDUsIDE5OjU2OjMwKToKWy4uLl0KVW5kIHVtIERpY2ggaGVydW0gc2luZCBkaWUgUmFlbmdlIHVuYmVzZXR6dC4gTnVyIG9iZW4gaW4gZWluIHBhYXIgS2FiaW5lbgpzaXR6ZW4gZWluIHBhYXIgTGV1dGUsIGRpZSBEaXIgZW50ZmVybnQgYmVrYW5udCB2b3Jrb21tZW4uIAoKVmFuaW9uIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uIApEb3J0IG9iZW4sIGRhcyBpc3QgVHlsYWsuCgpBaCwgZG9ydCEgRGFzIG11c3MgUGl0ZmFsbCBzZWluLgoKVW5kIGRhISBWZXJtdXRsaWNoIEx1cmNoaS4uLgoKW0JlaWxlaWQ6T3JrdG9ldGVyIHZlcmxlaWh0IENyb2Z0IGRlbiBPcmRlbjogIkhhYXJzcGFsdGVyIGRlcyBUYWdlcyIKICAgICAgICAgZWhyZW5oYWxiZXJdCk9oIG5laW4sIEZvb2JhciBpc3QgYXVjaCBkYS4KClVuZCBkb3J0ISBCcm90bmFlbC4gV2FzIG1hY2h0IGRlciBkZW5uIGhpZXI/CgpCcm90bmFlbCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpVbmQgZGEgaGludGVuIHNpdHp0IEh1bW5pLiBXZWlhLgoKQ3JvZnQgaXN0IHdvaGwgZGVyIFR5cCBkYWhpbnRlbi4KClVuZCBqYSwgZGEgbWl0IGRlbSBncm9zc2VuIHVtZ2VkcmVodGVuIEhvZXJyb2hyLCBkYW1pdCBtYW4gc2llIGJlc3Nlcgpob2VydDogTWlyaWwhClsuLi5dCgpVbmdla3Vlcnp0LiA7KQpKYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpad2VyZ2Vuem9ybiAoTWVzaXJpaSwgIDcuIEF1ZyAyMDA1LCAyMzozNToxOCk6CltpY2V3YXJzOlpvb2tdIERhcyBrb2VubnRlIE1lc2lyaWkgamEgbWFsIHNlbGJzdCBtYWNoZW4gOykgKmR1Y2sqClsqaWNld2FyczpNaXJpbF0gamVwcApbKmljZXdhcnM6U3dvdGxdIGRhY2h0ZSBpY2ggYXVjaCBnZXJhZGUuLgouLi4KdW5nZXNjaG5pdHRlbgpbKmljZXdhcnM6TWVzaXJpaV0gbWFoYSBzYWd0IGljaCBzb2xsIEV1Y2ggbG9lc2NoZW4KW0JlaWxlaWQ6VHVyYm8gbWlhdXQgZWluIGdyYXVzaWcgdHJhdXJpZ2VzIEthdGVybGllZCB6dW0gR2VkZW5rZW4uXQpbKmljZXdhcnM6TWVzaXJpaV0gZGFubiB3ZXJkIGljaCB3b2hsIG1hbApab29rIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCkVyd2FydGV0IChvZmZsaW5lKTogWm9vawoKTWVzaXJpaSwgR290dGxvZXNjaHp3ZXJnIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFp3ZXJnZW56b3JuIChab29rLCAgOC4gQXVnIDIwMDUsIDA5OjUxOjQyKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTEyMzQ1MDUxOCByZz1zY2htYXJybgp+IyEgdGlkPTExMjM0NTA1MTgKWm9va3MgbmV1ZXN0ZSBJbmthcm5hdGlvbiBzaW5udCBhdWYgUmFjaGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphaGphIChQdWssICA5LiBBdWcgMjAwNSwgMTQ6MTY6NTApOgpab29rICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClttZWdhc2NobWFycm46Q3JvZnRdIHVuZCBkZXIgYmFja3N0ZWluIGlzdCBnZWxhbmRldAoKbmVpc2tsYXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhaGphIChab29rLCAgOS4gQXVnIDIwMDUsIDE0OjI0OjI0KToKfiMhIHJuPVB1ayBydD0xMTIzNTg5ODEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyMzU4OTgxMApEYW5rZSBmdWVyIGRpZSBCbHVtZW4hIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYm9pbmctcmVzZXQgKE5pY29sYWksIDEwLiBBdWcgMjAwNSwgMDk6MTY6MDQpOgpLb2FuYSBmYWVsbHQgdG90IHp1IEJvZGVuLgpQaXRmYWxsIG5pbW10IGRlbiBBZGFtYW50aXVtc2NobHVlc3NlbC4KRWluZSBUdWVyIHdpcmQgdm9uIFBpdGZhbGwgZ2VvZWZmbmV0LgpQaXRmYWxsIGdlaHQgaW4gZGllIFNjaGF0emthbW1lci4KRWluZSBUdWVyIHNjaGxpZXNzdCBzaWNoLgpbVGVhbSA2OlBpdGZhbGxdIGduYWFhYWFhYWFhYWFhYXJnaCA8MDk6MTM+CltUZWFtIDY6Tmljb2xhaV0gd2FyIHNvIGtsYXIgPDA5OjEzPgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExldmVsIDE3IHVuZCAxOCg/KSAoT2dvLCAxMi4gQXVnIDIwMDUsIDE1OjE4OjAwKToKfiMhIHJuPUh1bW5pIHJ0PTExMjM4NTA1MzYgcmc9Z2lsZGVuLmthcmF0ZQp+IyEgdGlkPTExMjM4NTA1MzYKPiBJY2ggd3VlcmRlIGdlcm5lIEtyaXRlcmllbiBzYW1tZWxuLCBkaWUgZGF6dSBkaWVuZW4ga29lbm50ZW4sIGRlbgo+IGhvZWNoc3RlbiBMZXZlbCB6dSBlcnJlaWNoZW4uIE5hY2ggTW9lZ2xpY2hrZWl0IERpbmdlLCBkaWUgbWFuIG5pY2h0Cj4gbWFsIGViZW4gc28gcGVyIFNrcmlwdCBlcnJlaWNodC4KCnMvRUsvRlAvCgpPZ28sIGF1Z2Vuendpbmtlcm5kIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGltIFN1bXBmIChDcm9mdCwgMTIuIEF1ZyAyMDA1LCAyMzoyMDowOCk6CltBYmVudGV1ZXI6R2l6aV0gaWNoIGJyYXVjaCBoaWVyIGdwcyA9KQpbQWJlbnRldWVyOkNyb2Z0XSBhYmdlbGVobnQgOi0pCltBYmVudGV1ZXI6R2l6aV0gaGVoZSA9KQpbQWJlbnRldWVyOkFyayBzY2hhbHRldCBtYWwgLVQgYW4uXQpbQWJlbnRldWVyOkdpemldIGhpZXIgYmx1YmJlcnRzIHNvIGtvbWlzY2ggOykKW0FiZW50ZXVlcjpHbG9pbnNvbl0gR1BTIGlzdCBkYSBuaWNodCwgZGVyIE5lYmVsIGlzdCBtZXRhbGxpc2NoIHVuZCBkdSBzaWVoc3QKW0FiZW50ZXVlcjpHbG9pbnNvbl0gbnVyIGVpbmVuIGhhbGJlbiBTYXRlbGxpdGVuLgpbQWJlbnRldWVyOkNyb2Z0XSBhaCwgZGFzIGtsaW5ndCBuYWNoIGd1dGVuIEZMVwpbQWJlbnRldWVyOkdpemldIEZMVyA/CltBYmVudGV1ZXI6Q3JvZnRdIGZhbW91cyBsYXN0IHdvcmRzLgpbQWJlbnRldWVyOkdpemldIGhlaGUgZGFyZiBtaWNoIHNjaG9uIG51ciBhbGxlIDUgbWludXRlbiBiZXdlZ2VuIGRhcyBpY2ggaGllcgpbQWJlbnRldWVyOkdpemldIG5pY2ggZGVuIGxvZWZmZWwgYWJnZWIgOykKW0FiZW50ZXVlcjpDcm9mdF0gc28gd2llIGluICJoaWVyIHJpY2h0cyBzbyBrb21pc2NoIG5hY2ggZ2FzLCBpY2ggbWFjaCBtYWwKW0FiZW50ZXVlcjpDcm9mdF0gZWJlbiBkYXMgbGljaHQgYW4sIGRhbWl0IHdpciBzZWhlbiB3b3JhbiBkYXMgbGllZ3QiCltUb2Q6TGFyc10gRWluIFN1bXBmIGhhdCBnZXJhZGUgR2l6aSB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTdW1wZiBibHViYmVydCBsZWlzZS5dCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBMZXZlbCAxNyB1bmQgMTgoPykgKENoYWdhbGwsIDEyLiBBdWcgMjAwNSwgMjM6NTU6NDUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEyMzg4MzYzOSByZz1naWxkZW4ua2FyYXRlCn4jISB0aWQ9MTEyMzg1MDUzNgpBcmcsIGljaCBtdWRkZSB6dXZpZWwuIEJlaSBkZW0gQmVncmlmZiAiS2F0YXMiIGhhYiBpY2ggenVlcnN0IGFuIE1vZ2dscwpLYXRha29tYmVuIGdlZGFjaHQsIGFuc3RhdHQgYW4gKGZlc3RnZWxlZ3RlKSBGb3JtZW4uCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTGV2ZWwgMTcgdW5kIDE4KD8pIChCcm90bmFlbCwgMTIuIEF1ZyAyMDA1LCAyMzo1NjoxMSk6Cn4jISBybj1DaGFnYWxsIHJ0PTExMjM4ODM3NDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIzODUwNTM2CmRpdG8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IExldmVsIDE3IHVuZCAxOCg/KSAoR2xvaW5zb24sIDEyLiBBdWcgMjAwNSwgMjM6NTY6NDkpOgp+IyEgcm49QnJvdG5hZWwgcnQ9MTEyMzg4Mzc3MSByZz1zY2htYXJybgp+IyEgdGlkPTExMjM4NTA1MzYKU29sYW5nZSBpaHIgZXMgc2NoYWZmdCBkZW4gVW50ZXJzY2hpZWQgenUgZXJrZW5uZW4gYmVzdGVodCBub2NoIEhvZmZudW5nIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IExldmVsIDE3IHVuZCAxOCg/KSAoWm9vaywgMTMuIEF1ZyAyMDA1LCAwMDo0MToyNSk6Cn4jISBybj1CYW1iaSBydD0xMTIzODg2NDU3IHJnPWdpbGRlbi5rYXJhdGUKfiMhIHRpZD0xMTIzODUwNTM2CkFuZ2Vib3Qgb2RlciBEcm9odW5nPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBMZXZlbCAxNyB1bmQgMTgoPykgKEJhbWJpLCAxMy4gQXVnIDIwMDUsIDAwOjQyOjAzKToKfiMhIHJuPVpvb2sgcnQ9MTEyMzg4NjQ4NSByZz1zY2htYXJybgp+IyEgdGlkPTExMjM4NTA1MzYKV2llIGhhZXR0ZXN0IER1J3MgZ2VybmU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogTGV2ZWwgMTcgdW5kIDE4KD8pIChab29rLCAxMy4gQXVnIDIwMDUsIDAwOjQzOjIxKToKfiMhIHJuPUJhbWJpIHJ0PTExMjM4ODY1MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIzODUwNTM2CkljaCB3ZWlzcyBzY2hvbiwgd2FydW0gImFkZGd1aWxkbWFzdGVyIiBudXIgW0ddIHp1ciBWZXJmdWVndW5nIHN0ZWh0LiA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBMZXZlbCAxNyB1bmQgMTgoPykgKE11YWRpYiwgMTMuIEF1ZyAyMDA1LCAwMDo0Mzo1Myk6Cn4jISBybj1ab29rIHJ0PTExMjM4ODY2MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIzODUwNTM2CndlciB3aWxsIGRhcyBzY2hvbiBudXR6ZW4KYXVzc2VyZGVtOiB1c2UgdGhlIGZvcmNlIGNvZGUgdGhlIHNhdmVmaWxlCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogTGV2ZWwgMTcgdW5kIDE4KD8pIChab29rLCAxMy4gQXVnIDIwMDUsIDAwOjQ0OjQxKToKfiMhIHJuPU11YWRpYiBydD0xMTIzODg2NjMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyMzg1MDUzNgpTcGllbHZlcmRlcmJlci4KClpvb2sgb2VmZm5ldCBpbiBkZXIgRmVybmUgZWluZSBTSGVsbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBMZXZlbCAxNyB1bmQgMTgoPykgKE11YWRpYiwgMTMuIEF1ZyAyMDA1LCAwMDo0NjowNyk6Cn4jISBybj1ab29rIHJ0PTExMjM4ODY2ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIzODUwNTM2CmR1IG9lZmZuZXN0IGluIGRlciBmZXJuZSBlaW5lIHNoZWxsPwp3YXMgbWFjaHN0IGR1IGRlbm4gbWl0IGRlciBzaGVsbD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBMZXZlbCAxNyB1bmQgMTgoPykgKEh1cmF4cHJheCwgMTMuIEF1ZyAyMDA1LCAwMTowNjo1Mik6Cn4jISBybj1NdWFkaWIgcnQ9MTEyMzg4Njc2NyByZz1zY2htYXJybgp+IyEgdGlkPTExMjM4NTA1MzYKc2NoYXVlbiBvYiBwZXJsZW4gaW4gZGVyIG11c2NoZWwgc2luZD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBMZXZlbCAxNyB1bmQgMTgoPykgKE11YWRpYiwgMTMuIEF1ZyAyMDA1LCAwMToxNDo0Nik6Cn4jISBybj1IdXJheHByYXggcnQ9MTEyMzg4ODAxMiByZz1zY2htYXJybgp+IyEgdGlkPTExMjM4NTA1MzYKbGFzcyBkaWNoIGRvY2ggdm9uIG5lciBweXRob24gZnJlc3NlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IExldmVsIDE3IHVuZCAxOCg/KSAoWm9vaywgMTMuIEF1ZyAyMDA1LCAwMToxNDo1Mik6Cn4jISBybj1NdWFkaWIgcnQ9MTEyMzg4ODQ4NiByZz1zY2htYXJybgp+IyEgdGlkPTExMjM4NTA1MzYKZWluZW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBMZXZlbCAxNyB1bmQgMTgoPykgKE11YWRpYiwgMTMuIEF1ZyAyMDA1LCAwMToxNToxOCk6Cn4jISBybj1ab29rIHJ0PTExMjM4ODg0OTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTIzODUwNTM2Cmxhc3MgZGljaCBkb2NoIHZvbiBuZXIgdW5nZWJpbGRldGVuIHB5dGhvbiBmcmVzc2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogTGV2ZWwgMTcgdW5kIDE4KD8pIChHcmltbWJvcm4sIDEzLiBBdWcgMjAwNSwgMDk6NDk6MzcpOgp+IyEgcm49TXVhZGliIHJ0PTExMjM4ODg1MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTIzODUwNTM2Cldlbm4gWm9vayBlaW5lIHNoZWxsIG9lZmZuZXQgc29sbHRzdCBEdSBpbiBEZWNrdW5nIGdlaGVuIC0gZGFzIGthbm4genUKaGFycnlwb3R0ZXJhcnRpZ2VuIFZlcmxldHp1bmdlbiBmdWVocmVuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyBtYWwgd2llZGVyIChIdXJheHByYXgsIDE0LiBBdWcgMjAwNSwgMjA6Mzk6NDEpOgpbWmF1YmVyZXI6U2h5b25dIG1laHIgd2llIHN0ZXJiZW4ga2FubiBhbiBuaWNodCBvZGVyPyA7KQpbWmF1YmVyZXI6QWltZWVdIGVzIGdlaHQgYXVjaCBvaG5lIDspCltaYXViZXJlcjpTaHlvbl0gbmEgbWFsIHNjaGF1biA6RApbWmF1YmVyZXI6QWltZWVdIGljaCB3ZWlzcyBlaHJsaWNoIG5pY2h0IG9iIG1hbiBkYSBzdGVyYmVuIGthbm4gKmcqCltaYXViZXJlcjpTaHlvbl0gaWNoIGthbm4gOykKW1phdWJlcmVyOkFpbWVlXSBvay4uZGFubiBsb3MgOykKW1RvZDpMYXJzXSBFaW5lIHR1ZWNraXNjaGUgSWxsdXNpb24gaGF0IGdlcmFkZSBTaHlvbiB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGV1dGxpY2hlIGFudHdvcnQgLi4gKFB1aywgMTkuIEF1ZyAyMDA1LCAxMTowNTo1Nik6Ck11YWRpYiBydWZ0OiBVUkxBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVVVVVVVVVVVVVVVVVVVVVVVVVVCQkJCISEhISEhISEhIQpNdWFkaWIgcnVmdDogISEhISEhISEhISEhISEhISEhISEKUEZMVU5aLCBNdWFkaWJzIEthdXRzY2h1a2hhbW1lciBmbGllZ3QgaGVyZWluLCBiZWhhZW1tZXJ0IERpY2ggc2ljaCBpbiBkZW4Kc29ubmlnZW4gU3VlZGVuIHZlcmFic2NoaWVkZW5kIHVuZCBodWVwZnQgd2llZGVyIGRhdm9uLgpUZXJyeSBydWZ0OiBzaW5kIGpldHp0IHBsYXllcmtpbGxzIGVybGF1YnQ/IDopCk11YWRpYiAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCm5hIGRhbm4gYXVmIGlucyBHZWZlY2h0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdWEhIChBcHN1LCAyMC4gQXVnIDIwMDUsIDE4OjU3OjU0KToKPiBNZXNpcmlpIHZlcnd1c2NoZWx0IERlaW5lIEhhYXJlLgpEdSBmdWVobHN0IERpY2ggYmVzY2hpc3Nlbi4gQWxsZXMgdHV0IHdlaCwgdW5kIER1IHNpZWhzdCBudXIgbm9jaCB1bnNjaGFyZi4KCi4gbyBPIChDaGFvdGVuIGhhbHQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogTGV2ZWwgMTcgdW5kIDE4KD8pIChHcmltbWJvcm4sIDIyLiBBdWcgMjAwNSwgMDg6NTY6MjgpOgp+IyEgcm49R2FzdDEgcnQ9MTEyNDYzMTQ2MiByZz1zY2htYXJybgp+IyEgdGlkPTExMjM4NTA1MzYKR2VuYXUuIERhaGVyICh1bmQgYXVzIHZpZWxlbiBhbmRlcmVuIEdydWVuZGVuKSBrZWluZSBBcnRpa2VsIHZvbiBHYWVzdGVuLgpOaWNodCB1ZWJlciBtZWluZW4gVXJsYXViIGhpbmF1cyBqZWRlbmZhbGxzLgoKR2RBW2V4LVJdIE9IZE11QmRFICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3RhbW10aXNoIGluIGRlciBUYSBOb25hIEJhciBpbiBYbGVuZGkgIGF1ZiBHb3pvIChDcm9mdCwgMjQuIEF1ZyAyMDA1LCAwMDoyMTowMik6Cn4jISBybj1BcmsgcnQ9MTEyNDgzNDc0NiByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTI0ODIwMTc0ClVuZCB3YXMgc2FndCBTdGVmYW4gZGF6dT8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFuIGFsbGUgU2NodWVsZXIvLWlubmVuIHZvbiBTb2VyZW4gKEdyaW1tYm9ybiwgMjQuIEF1ZyAyMDA1LCAxNTowMzoxNCk6Cn4jISBybj1EYXJrd2luZyBydD0xMTI0ODg3Njg4IHJnPWQucG9sYXIKfiMhIHRpZD0xMTI0ODg0MDAzCldhcyAid2FlaHJlIiBkZW5uIERlaW5lciBNZWludW5nIG5hY2ggZWluZSAiQmxhc3JvaHRvcHRpb24iPwoKR3JpbW0ic3BlbGxpbmcgZmxhbWVzIHNpbmQgbGFtZSJib3JuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBJZGVlIChBa2FzaGEsIDI1LiBBdWcgMjAwNSwgMTQ6MzQ6MzcpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMTI0OTczMTM5IHJnPWdpbGRlbi5jaGFvcwp+IyEgdGlkPTExMjQ5NzI1OTkKQWxzbyBzcGFldGVzdGVucyBzZWl0IGRlbSBuZXVlbiBQYXBzdCBzb2xsdGUgZWluIGhlaWxpZ2VyIENoYW9zYmFsbCB6dQpyZWNodGZlcnRpZ2VuIHNlaW4uIDtvKQoKSXJnZW5kd2llIHNwaWVsdCBpbiBtZWluZW0gSGludGVya29wZiBqZWRlcyBtYWwsIHdlbm4gaWNoIGVpbiBCaWxkIHZvbiBpaG0Kc2VoZSwgZGVyIEltcGVyaWFsLU1hcmNoIDspCgpBa2FzaGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IElkZWUgKEtlbGx5YnVuZHksIDI1LiBBdWcgMjAwNSwgMTQ6NDA6MjkpOgp+IyEgcm49QWthc2hhIHJ0PTExMjQ5NzMyNzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI0OTcyNTk5CktsYXIuIERpZXNlIEFzc296aWF0aW9uIGhhYmUgaWNoIGJlaSBlaW5lbQpFeC1Hcm9zc2lucXVpc2l0b3JeV0V4LUdsYXViZW5za29uZ3JlZ2F0aW9uc3ZvcnNpdHplbmRlbiBhdWNoIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IElkZWUgKEphZGF3aW4sIDI2LiBBdWcgMjAwNSwgMDg6NTU6MjIpOgp+IyEgb249SmFkYXdpbiBvdD0xMTI1MDM5MjY2IG9nPWdpbGRlbi5jaGFvcwp+IyEgcm49VmVjdG9yIHJ0PTExMjUwMzkyMTYgcmc9Z2lsZGVuLmNoYW9zCn4jISB0aWQ9MTEyNDk3MjU5OQpGbGFuZWxsLVZlY3Rvcj8gOykKSmFkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW5nZWt1ZXJ6dCAoTmljb2xhaSwgMjYuIEF1ZyAyMDA1LCAxNDowMDoxNik6CgpbVHJ2ZXM6TGV2XSBUZXJyeSEKW1RvZDpMYXJzXSBFaW4ga2xlaW5lciBXYXNzZXJlbGVtZW50YXIgaGF0IGdlcmFkZSBUZXJyeSB1bWdlYnJhY2h0LgpbVHJ2ZXM6TGV2XSBEdSBicmF1Y2hzdCBBdXNiaWxkdW5nIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB1bmdla3Vlcnp0IChMZXYsIDI2LiBBdWcgMjAwNSwgMTQ6MDE6MTgpOgp+IyEgcm49Tmljb2xhaSBydD0xMTI1MDU3NjE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyNTA1NzYxNgpIaWVyIGZlaGx0OgpbVHJ2ZXM6TGV2XSBJcmdlbmRqZW1hbmQgQXV6dWJpc2tpbGxzIGdlZmFlbGxpZz8gOykgPEZyZSwgMTM6NTU6NTI+CltUcnZlczpDcm9mdF0gZHUgd2lsbHN0IGF6dWJpcyBraWxsZW4/IDxGcmUsIDEzOjU2OjE2PgpbVHJ2ZXM6TGV2XSBQc2NodCEgPEZyZSwgMTM6NTY6MjA+CltUcnZlczpNYWhhcmV0XSBXYXMgYmlzdCBkdSBkZW5uIGZ1ZXIgZWluIGtvbWlzY2hlciBHZW5lcmFsPyA8RnJlLCAxMzo1NjoyMj4KW1RydmVzOkxldl0gQWxzbywgd2VyIHdpbGw/KyA8RnJlLCAxMzo1Njo0ND4KCgpMZXYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXYWhsaGVsZmVyIChBbGtvaG9sLCAyNi4gQXVnIDIwMDUsIDE3OjQ4OjIwKToKfiMhIHJuPVpvb2sgcnQ9MTEyNTA3MTIxNiByZz13d3cKfiMhIHRpZD0xMTI1MDY3MzU5CmRhIGtvZW5udGUgbWFuIGphIGdsZWljaCBlaW5lbiBucGMgaW4gZGllIGFnIHN0ZWxsZW4sIGRlbSBnYWVzdGUgaWhyZSBhcnRpa2VsCmRpa3RpZXJlbiB1bmQgZXIgc3RlbGx0IHNpZSBkYW5uIGluIGRpZSBtcGEgKmcqCgpBbGsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFdhaGxoZWxmZXIgKFpvb2ssIDI2LiBBdWcgMjAwNSwgMTc6NDk6MDYpOgp+IyEgcm49QWxrb2hvbCBydD0xMTI1MDcxMzAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyNTA2NzM1OQpNaWNoIGFscyBkdW1tZW4gTlBDIGRhcnp1c3RlbGxlbiwgZmluZCBpY2ggamEgc2Nob24gemllbWxpY2ggZnJlY2ghIAoKSGV1dCBBYmVuZCBzYXVmIGljaCBEaWNoIQoKWm9vay4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBJZGVlIChDcm9mdCwgMjYuIEF1ZyAyMDA1LCAxODozMjozMSk6Cn4jISBybj1BcmsgcnQ9MTEyNTA3MjYxNyByZz1naWxkZW4uY2hhb3MKfiMhIHRpZD0xMTI0OTcyNTk5CkFyZ2wsIG5laW4hIEVyYmFybWVuIQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBJZGVlIChBcmssIDI2LiBBdWcgMjAwNSwgMTk6Mjk6MzApOgp+IyEgcm49Q3JvZnQgcnQ9MTEyNTA3Mzk1MSByZz1zY2htYXJybgp+IyEgdGlkPTExMjQ5NzI1OTkKV2llIGpldHp0PyBEaWUgRWluc3RpZWdzYXVmZ2FiZSB1bmQgZWluZSBNUSBnaWJ0IGVzIHNjaG9uLiBLZWluIEVyYmFybWVuIDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFRoZSBDeWJvcmcgTmFtZSBHZW5lcmF0b3IgKFJvbmRhLCAyNy4gQXVnIDIwMDUsIDAwOjA5OjQzKToKfiMhIHJuPUtyc3RmcnMgcnQ9MTEyNTA5NDEwNyByZz13d3cKfiMhIHRpZD0xMTI1MDkwNDgyCkhtLCBLcnN0ZnJzLCBkYW1pdCB3aXJkIERlaW4gTmFtZSBlbmRsaWNoIG1hbCBhdXNzcHJlY2hiYXIuCgpSb25kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR3V0ZSBhbHRlIFplaXRlbiAoTW9yZ290aCwgMjkuIEF1ZyAyMDA1LCAwNDowMToxMSk6CkRhbWFscyBnYWJzIHNvd2FzIG5pY2h0Li4uZGEgd2FyZW4gYWxsZSBub2NoIGFrdGl2CgogICAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNb24sIDI5LiBBdWcgMjAwNSwgMDQ6MDA6MjMgKDI4IFRlaWxuZWhtZXIpCgpHYXN0MS4uLi4uLi4uLi5KLnMgTG91cmlzLi4uLi4uLi4uSS5zIE1rcnN0ZnJzLi4uLi4uLkoueiBUcm9uZGlyLi4uLi4uLi5pLnMKWmFybml5YS4uLi4uLi4uSi5zIExvcmFuLi4uLi4uLi4uLkoucyBOYXJheWFuLi4uLi4uLi5Kd3MgTG9yaWFuLi4uLi4uLi4uSi5zClRpYXJhbG9yLi4uLi4uLkoucyBTdGVsaW5hLi4uLi4uLi5KLnMgS3JzdGZycy4uLi4uLi4uSi5zIE5vc3Ryb21vLi4uLi4uLi4ucwpHcnVudC4uLi4uLi4uLi5KLlMgTGlhZmFyLi4uLi4uLi4uSi5TIE9ya3RvZXRlci4uLi4uLkouUyBCZWx2ZW4uLi4uLi4uLi5KLlMKQ3V4ZWwuLi4uLi4uLi4uLndTIEdhYmkuLi4uLi4uLi4uLkkuUyBNZWxjaG9yLi4uLi4uLi5KLlMgQWxkZXJhbi4uLi4uLi4uandTCk1vZ3VyLi4uLi4uLi4uLi4uUyBMYWNyaS4uLi4uLi4uLi5KLlMgR3JpbW1ib3JuLi4uLi4uSndtIEJhbWJ1bGtvLi4uLi4uLkouTQpHbG9pbnNvbi4uLi4uLi5Kd0ggTW9yZ290aC4uLi4uLi4uLi5SIE5vbm5lLi4uLi4uLi4uLkouUiBab29rLi4uLi4uLi4uLi5Kd0cKCm5pY2h0IGlkbGUuLi4KCiAgICAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBNb24sIDI5LiBBdWcgMjAwNSwgMDM6NTk6MzEgKDMgVGVpbG5laG1lcikKCkN1eGVsLi4uLi4uLi4uLi53UyBNb2d1ci4uLi4uLi4uLi4uLlMgTW9yZ290aC4uLi4uLi4uLi5SCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEd1dGUgYWx0ZSBaZWl0ZW4gKE1haGFyZXQsIDI5LiBBdWcgMjAwNSwgMDk6NDc6MjYpOgp+IyEgcm49TW9yZ290aCBydD0xMTI1MjgwODcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyNTI4MDg3MQpTb3NvLCBDdXhlbCB1bmQgTW9ndXIgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3V0ZSBhbHRlIFplaXRlbiAoQXJrLCAyOS4gQXVnIDIwMDUsIDE4OjI5OjUxKToKfiMhIHJuPU1vcmdvdGggcnQ9MTEyNTI4MDg3MSByZz1zY2htYXJybgp+IyEgdGlkPTExMjUyODA4NzEKV29iZWkgLi4uIGt1cnogZGFyYXVmIGJpc3QgRHUgZG9jaCBhdWNoIHdpZWRlciBpbnMgIkoiIGdlZmFsbGVuLCBvZGVyPyBBbHNvCmVpZ2VuZSBOYXNlIC4uLiA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGYW1vdXMgbGFzdCBzbWlsZXlzIC4uLiAoR2xvaW5zb24sIDMwLiBBdWcgMjAwNSwgMjI6MDE6MDApOgpbVG9kOkxhcnNdIEVpbiBPcmsgaGF0IGdlcmFkZSBYaXBobyB1bWdlYnJhY2h0LgpbVG9kOkVpbiBPcmtdIFdpciBzaW5kIE9yayEgV2lkZXJzdGFuZCBpc3QgendlY2tsb3MhIERlaW4gV2lzc2VuIHVuZCBEZWluZQpbVG9kOkVpbiBPcmtdIEF1c3J1ZXN0dW5nIHd1cmRlbiBhc3NpbWlsaWVydC4KW0JlaWxlaWQ6TW9ndXJdIDooCltCZWlsZWlkOlBob2ViZV0gOigKW0JlaWxlaWQ6SmFkYXdpbl0gQmVpbGVpZCEgOigKRHUgc2NobGFlZ3N0IGRpZSBVaHIgMjIgbWFsLiBTY2hvbiB3aWVkZXIgc28gc3BhZXQuCltUb2Q6TGFyc10gRWluZSBhZXVzc2Vyc3QgZ2V3aWNodGlnZSBNYXNzZSBoYXQgZ2VyYWRlIFBob2ViZSB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgYWV1c3NlcnN0IGdld2ljaHRpZ2UgTWFzc2UgaXN0IGlyZ2VuZHdpZSBlcmRydWVja2VuZC5dCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEd1dGUgYWx0ZSBaZWl0ZW4gKE11cGZlbCwgMzEuIEF1ZyAyMDA1LCAyMjoyOToyMSk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTExMjUyODA4NzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI1MjgwODcxClNvbGNoZSB2aWVsbGVpY2h0PwoKW1NlaGVyOkRpZWRlcl0gbW9pbgpTaGFuYWhhIHJ1ZnQ6IERJRURFUiEhCkRpZWRlciBydWZ0OiBTSEFOQUhBISEKICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTWl0LCAxNy4gSnVsIDE5OTYsIDEyOjA0OjM3ICg3OCBUZWlsbmVobWVyKQoKR2FzdDEuLi4uLi4uLi4uLnMgIFJhaW5jaGlsZC4uLi4uLi5zICBWZXJsZWlobml4Li4uLi4ucyAgWWFuZy4uLi4uLi4uLi4uLnMKWWluaWkuLi4uLi4uLi4uLnMgIEZhdWxza2VtcGVyLi4uLi5zICBBbmdib3NjaC4uLi4uLi4ucyAgQWRzb24uLi4uLi4uLi4uLnMKR29yYWsuLi4uLi4uLi4uLnMgIFNtdXQuLi4uLi4uLi4uLi5zICBaYW51ay4uLi4uLi4uLi4ucyAgQnVlYmNoZW4uLi4uLi4uLnMKU2ltb25lLi4uLi4uLi4uLnMgIFRoYXNjby4uLi4uLi4uLi5zICBGYXJnYW4uLi4uLi4uLi4udCAgR2FsYXJpb24uLi4uLi4uLnMKU2hhbmFoYS4uLi4uLi4uLnMgIFBhbHR1bS4uLi4uLi4uLi5zICBIaWdnaW5zLi4uLi4uLi4ueiAgTHVyaWVsLi4uLi4uLi4uLnMKQXN0ZXJpeC4uLi4uLi4uLnMgIE1pbmRibGFzdC4uLi4uLi5zICBNaWNyby4uLi4uLi4uLi4ucyAgTWF0c3VzaGl0YS4uLi4uLnMKWmFnLi4uLi4uLi4uLi4uLnMgIEJvZ3VzLi4uLi4uLi4uLi5zICBGcmllZGEuLi4uLi4uLi4ucyAgTWV0YS4uLi4uLi4uLi4uLnMKSG91c2Vob2xkZXIuLi4uLnMgIE1hcmRpbi4uLi4uLi4uLi5zICBOaW1idXMuLi4uLi4uLi4ucyAgU25pYnJpbC4uLi4uLi4uLnMKVG93ZXIuLi4uLi4uLi4uLnMgIFBhZGRsZXIuLi4uLi4uLi5UICBIYXIuLi4uLi4uLi4uLi4uUyAgQW5haWQuLi4uLi4uLi4uLnoKQWxlbWFubmUuLi4uLi4uLlMgIEFubm8uLi4uLi4uLi4uLi5TICBCaWcuLi4uLi4uLi4uLi4uUyAgS2Fma2EuLi4uLi4uLi4uLlMKVGVycm9yaXN0Li4uLi4uLlMgIE9yb2RyZXRoLi4uLi4uLi56ICBEaWVkZXIuLi4uLi4uLi4uUyAgQ2h1cmtpZS4uLi4uLi4uLlMKTGV0dGkuLi4uLi4uLi4uLlMgIFRvZS4uLi4uLi4uLi4uLi5TICBPcmt0b2V0ZXIuLi4uLi4uUyAgWndpcmNoLi4uLi4uLi4uLlMKQ3lnbnVzLi4uLi4uLi4uLnogIERob2pha3QuLi4uLi4uLi56ICBQaHlnb3MuLi4uLi4uLi4uUyAgQW5hdG9sLi4uLi4uLi4uLlMKVHdpZ2d5Li4uLi4uLi4uLlMgIEFuYWtpbi4uLi4uLi4uLi5TICBCaWJvLi4uLi4uLi4uLi4uUyAgQm9uaS4uLi4uLi4uLi4uLlMKWm9ycm8uLi4uLi4uLi4uLlMgIEtoaWRhci4uLi4uLi4uLi5TICBSb2FkcnVubmVyLi4uLi4uUyAgUGFtcGVycy4uLi4uLi4uLm0KRmF0aW1hLi4uLi4uLi4uLm0gIEd1eWJydXNoLi4uLi4uLi5tICBHd2VuaHd5ZmFyLi4uLi4uTSAgS2xvbmsuLi4uLi4uLi4uLk0KRGVsb3MuLi4uLi4uLi4uLk0gIEd1bGR1a2F0Li4uLi4uLi5NICBTYWVuZ2VyLi4uLi4uLi4uTSAgQmVuZGVpZ2lkLi4uLi4uLkgKQ3ltb25rLi4uLi4uLi4uLlIgIFVsby4uLi4uLi4uLi4uLi5SICBEdXJpYW4uLi4uLi4uLi4uUiAgTGkuLi4uLi4uLi4uLi4uLlIKTW9yZ290aC4uLi4uLi4uLlIgIE11cGZlbC4uLi4uLi4uLi5XICBXYXJnb24uLi4uLi4uLi4uRSAgQ2F0d2VhemxlLi4uLi4uLkUKSGF0ZS4uLi4uLi4uLi4uLkUgIEtpcmsuLi4uLi4uLi4uLi5FCgpGcnVlaGVyLCBpbiBkeGVyIGd1dGVuIGFsdGVuIFplaXQsIHdvIG5vY2gga2VpbiBJZGxlLUkgYW5nZXplaWd0IHd1cmRlPyA6KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR3V0ZSBhbHRlIFplaXRlbiAoWm9vaywgMzEuIEF1ZyAyMDA1LCAyMjozMDoxMSk6Cn4jISBybj1NdXBmZWwgcnQ9MTEyNTUyMDE2MSByZz1zY2htYXJybgp+IyEgdGlkPTExMjUyODA4NzEKTWFuIGJlYWNodGUgZGFzIFtXXS4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHdXRlIGFsdGUgWmVpdGVuIChNdXBmZWwsIDMxLiBBdWcgMjAwNSwgMjI6Mzc6MDYpOgp+IyEgcm49Wm9vayBydD0xMTI1NTIwMjExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyNTI4MDg3MQpGcnVlaGVyIHdhciBpY2ggaGFsdCB3ZWlzZXIgOikKCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEd1dGUgYWx0ZSBaZWl0ZW4gKERpZWRlciwgMzEuIEF1ZyAyMDA1LCAyMjo0Mjo0OCk6Cn4jISBybj1NdXBmZWwgcnQ9MTEyNTUyMDE2MSByZz1zY2htYXJybgp+IyEgdGlkPTExMjUyODA4NzEKRGFzIHdhcmVuIG5vY2ggWmVpdGVuLi4uIDstKQoKTXViYmwgaGF0IG1pdHRsZXJ3ZWlsZSB3b2hsIGFuIFdlaXNoZWl0IGVpbmdlYnVlc3N0IDopCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmFtZW5zYW5yZWd1bmdlbiBnZXN1Y2h0IChNaXJpbCwgIDIuIFNlcCAyMDA1LCAyMjoyMjoyMCk6Cn4jISBvbj1NaXJpbCBvdD0xMTI1NjkyNDU4IG9nPXN1Y2hlLWJpZXRlCn4jISBybj1NYXJjdXMgcnQ9MTEyNTY5MjE5MCByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTExMjU2OTE4MDAKS3J1dW9scSBLcmlzY2hld3NraSBoYWV0dGUgYXVjaCB3YXMgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5hbWVuc2FucmVndW5nZW4gZ2VzdWNodCAoQW1hcnlsbGlzLCAgMy4gU2VwIDIwMDUsIDAwOjA5OjMwKToKfiMhIHJuPU1pcmlsIHJ0PTExMjU2OTI1NDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI1NjkxODAwCkthbGxlLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVmVya2xlbW10ZSBTdHJnLVRhc3RlIGFtIExhcHRvcCAoQW5hdG9sLCAgOC4gU2VwIDIwMDUsIDIzOjMwOjMyKToKfiMhIHJuPVZhbmhlbHNpbmcgcnQ9MTEyNjIxNDQ0MCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMTI2MTkzNTU4CkVyaW5uZXJ0IG1pY2ggYW4gZWluIEhhbmRidWNoOgoKIlRydXN0IHVzLiBJdCBpcyBub3QgYSBidWcuIEl0IGlzIGEgZmVhdHVyZS4iCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0YXRpIGluIEJvY2h1bSAoR2xvaW5zb24sICA5LiBTZXAgMjAwNSwgMjA6NTU6MzYpOgp+IyEgcm49SHVtbmkgcnQ9MTEyNjI5MTQyMCByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTI2MjkxNDIwCkdydW56ZW1leWVyPyBHcm9laGxlbWVpZXI/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FzIGlzdCBSQUlEPyAoQW1hcnlsbGlzLCAxMi4gU2VwIDIwMDUsIDE5OjE0OjUyKToKaHR0cDovL3VucnVsZS5pbmZvLz8xNjEzCgpBbWEqLCBraWNoZXJuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVGhlIEN5Ym9yZyBOYW1lIEdlbmVyYXRvciAoR3JpbW1ib3JuLCAxMy4gU2VwIDIwMDUsIDE1OjMxOjM2KToKfiMhIHJuPU1haGFyZXQgcnQ9MTEyNjYxODIyMCByZz13d3cKfiMhIHRpZD0xMTI1MDkwNDgyClNpbmQgZGFzIG5pY2h0IGRpZSBMZXV0ZSBkaWUgaWhyZW4gSHVuZC4uLiBzZWhyIGxpZWJoYWJlbj8gV2lzc2Vuc2Nob24uClNjaHdlaW5rcmFtIGhhbHQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFRoZSBDeWJvcmcgTmFtZSBHZW5lcmF0b3IgKE9nbywgMTMuIFNlcCAyMDA1LCAxNTozMjo1OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEyNjYxODI5NiByZz1zY2htYXJybgp+IyEgdGlkPTExMjUwOTA0ODIKS2FubnN0IGR1IGRhcyBJbW1lZGlhdGUgPD0+IEh1bmQgbm9jaCBiaXNzZXJsIGF1c2Z1ZWhyZW4/IEljaCByYWZmJ3MgbmljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBUaGUgQ3lib3JnIE5hbWUgR2VuZXJhdG9yIChDcm9mdCwgMTMuIFNlcCAyMDA1LCAxNTozNTozMCk6Cn4jISBybj1PZ28gcnQ9MTEyNjYxODM3OCByZz1zY2htYXJybgp+IyEgdGlkPTExMjUwOTA0ODIKQWgsIGVpbmUgQ2hhbmNlIGRlbiBCYWVyZW4gYWJ6dWhvbGVuOiBnZW1laW50IGlzdCB3b2hsIGVpbiBXb3J0c3BpZWwKSW1tZWRpYXRlIDwtPiBJbnRpbWF0ZS4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogVGhlIEN5Ym9yZyBOYW1lIEdlbmVyYXRvciAoR2xvaW5zb24sIDEzLiBTZXAgMjAwNSwgMTU6NDA6MzIpOgp+IyEgcm49Q3JvZnQgcnQ9MTEyNjYxODUzMCByZz1zY2htYXJybgp+IyEgdGlkPTExMjUwOTA0ODIKRWluIEltbWVkYWV0ZSBpc3QgcXVhc2kgZWluIEZlYXR1cmUgdm9uIFJJU0MtTWFzY2hpbmVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBUaGUgQ3lib3JnIE5hbWUgR2VuZXJhdG9yIChKaW1kaWdyaXosIDEzLiBTZXAgMjAwNSwgMTk6MDQ6MjApOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEyNjYxODgzMiByZz1zY2htYXJybgp+IyEgdGlkPTExMjUwOTA0ODIKR3JpbW1ib3JuIHNldHp0IGZhZWxzY2hsaWNoZXJ3ZWlzZQoiWm9vbG9neSIgbWl0ICJ6b29waGlsaWUiIGdsZWljaCwgd2Vpc3MgbmljaHQKd2FydW0gaWhtIGRhIHNvbGNoZSBhc3NvemlhdGlvbmVuIHp1ZXJzdCBlaW5mYWxsZW4uCkRhYmVpIGlzdCBkb2NoICJpbW1lZGlhdGUgem9vbG9neSIgZWluZmFjaCBkaWUgCkZhZWhpZ2tlaXQgc29mb3J0IHVuZCB1bm1pdHRlbGJhciBkaWUgem9vbG9naWUKRWlub3JkbnVuZyBqZWRlciBMZWJlbnNmb3JtIGJlc3RpbW1lbiB6dSBrb2VubmVuLgoKSi5JLk0uRC5JLkcuUi5JLlouOiBKb3VybmV5aW5nIEludGVsbGlnZW50IE1hY2hpbmUgRGVzaWduZWQgZm9yIEluZmlsdHJhdGlvbiwKR2FsYWN0aWMgUmVwYWlyIGFuZCBJbW1lZGlhdGUgWm9vbG9neQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFRoZSBDeWJvcmcgTmFtZSBHZW5lcmF0b3IgKEppbWRpZ3JpeiwgMTMuIFNlcCAyMDA1LCAxOTowNDo1MCk6Cn4jISBybj1KaW1kaWdyaXogcnQ9MTEyNjYzMTA2MCByZz1zY2htYXJybgp+IyEgdGlkPTExMjUwOTA0ODIKLi4uIHpvb2xvZ2lzY2hlIC4uLiAKc29sbHRlIGRhcyBoZWlzc2VuCgpKLkkuTS5ELkkuRy5SLkkuWi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbGJzdCBkaWUgRGFlbW9uZW4gd29sbGVuIGxvcyAuLi4gKFB1aywgMTMuIFNlcCAyMDA1LCAyMDoxNjozMSk6Ck1vZ3VyIHJ1ZnQ6IGFsbGUgYml0dGUgaW4gZGllIGNoYW9za2FwZWxsZSAuLiA6KQpNZXNpcmlpIHJ1ZnQ6IENoYW9aIFJ1bGVaCgpERVIgREFFTU9OIElOIERFSU5FUiBIQVVUIFdJUkQgR0xFSUNIIFZFUlNVQ0hFTiBTSUNIIFpVIEJFRlJFSUVOISEhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2FobGhpbGZlIChSYW5nb3JuLCAxNS4gU2VwIDIwMDUsIDAxOjQ5OjA3KToKR3JhZCBnZWxlc2VuOgoKRGEgbmFlY2hzdGUgV29jaGUgV2FobCBpc3QsIGhpZXIgZWluZSBFbnRzY2hlaWR1bmdzaGlsZmUKU296aWFsZGVtb2tyYXQ6ClNpZSBiZXNpdHplbiB6d2VpIEt1ZWhlLiBJaHIgTmFjaGJhciBiZXNpdHp0IGtlaW5lLgpTaWUgZnVlaGxlbiBzaWNoIHNjaHVsZGlnLCB3ZWlsIFNpZSBlcmZvbGdyZWljaCBhcmJlaXRlbi4gU2llIHdhZWhsZW4gTGV1dGUgaW4KZGllIFJlZ2llcnVuZywgZGllIElocmUgS3VlaGUgYmVzdGV1ZXJuLiBEYXMgendpbmd0IFNpZSwgZWluZSBLdWggenUKdmVya2F1ZmVuLCB1bSBkaWUgU3RldWVybiBiZXphaGxlbiB6dSBrb2VubmVuLiBEaWUgTGV1dGUsIGRpZSBTaWUgZ2V3YWVobHQKaGFiZW4sIG5laG1lbiBkaWVzZXMgR2VsZCwga2F1ZmVuIGVpbmUgS3VoIHVuZCBnZWJlbiBkaWVzZSBJaHJlbSBOYWNoYmFybi4gU2llCmZ1ZWhsZW4gc2ljaCByZWNodHNjaGFmZmVuLiBVZG8gTGluZGVuYmVyZyBzaW5ndCBmdWVyIFNpZS4KQ2hyaXN0ZGVtb2tyYXQ6ClNpZSBiZXNpdHplbiB6d2VpIEt1ZWhlLiBJaHIgTmFjaGJhciBiZXNpdHp0IGtlaW5lLgpTaWUgYmVoYWx0ZW4gZWluZSB1bmQgc2NoZW5rZW4gaWhyZW0gYXJtZW4gTmFjaGJhcm4gZGllIGFuZGVyZS4gRGFuYWNoIGJlcmV1ZW4KU2llIGVzLgpTb3ppYWxpc3Q6ClNpZSBiZXNpdHplbiB6d2VpIEt1ZWhlLiBJaHIgTmFjaGJhciBiZXNpdHp0IGtlaW5lLgpEaWUgUmVnaWVydW5nIG5pbW10IElobmVuIGVpbmUgYWIgdW5kIGdpYnQgZGllc2UgSWhyZW0gTmFjaGJhcm4uIFNpZSB3ZXJkZW4KZ2V6d3VuZ2VuLCBlaW5lIEdlbm9zc2Vuc2NoYWZ0IHp1IGdydWVuZGVuLCB1bSBJaHJlbSBOYWNoYmFybiBiZWkgZGVyClRpZXJoYWx0dW5nIHp1IGhlbGZlbi4KRnJlaWRlbW9rcmF0OgpTaWUgYmVzaXR6ZW4gendlaSBLdWVoZS4gSWhyIE5hY2hiYXIgYmVzaXR6dCBrZWluZS4KTmEgdW5kPwpLb21tdW5pc3Q6ClNpZSBiZXNpdHplbiB6d2VpIEt1ZWhlLiBJaHIgTmFjaGJhciBiZXNpdHp0IGtlaW5lLgpEaWUgUmVnaWVydW5nIGJlc2NobGFnbmFobXQgYmVpZGUgS3VlaGUgdW5kIHZlcmthdWZ0IElobmVuIGRpZSBNaWxjaC4gU2llCnN0ZWhlbiBzdHVuZGVubGFuZyBmdWVyIGRpZSBNaWxjaCBhbi4gU2llIGlzdCBzYXVlci4KS2FwaXRhbGlzdDoKU2llIGJlc2l0emVuIHp3ZWkgS3VlaGUuClNpZSB2ZXJrYXVmZW4gZWluZSB1bmQga2F1ZmVuIGVpbmVuIEJ1bGxlbiwgdW0gZWluZSBIZXJkZSB6dSB6dWVjaHRlbi4KRVUgQnVlcm9rcmF0aWU6ClNpZSBiZXNpdHplbiB6d2VpIEt1ZWhlLgpEaWUgRVUgbmltbXQgaWhuZW4gYmVpZGUgYWIsIHRvZXRldCBlaW5lLCBtZWxrdCBkaWUgYW5kZXJlLCBiZXphaGx0IElobmVuIGVpbmUKRW50c2NoYWVkaWd1bmcgYXVzIGRlbSBWZXJrYXVmc2VybG9lcyBkZXIgTWlsY2ggdW5kIHNjaHVldHRldCBkaWVzZSBkYW5uIGluCmRpZSBOb3Jkc2VlLgpBbWVyaWthbmlzY2hlcyBVbnRlcm5laG1lbjoKU2llIGJlc2l0emVuIHp3ZWkgS3VlaGUuClNpZSB2ZXJrYXVmZW4gZWluZSB1bmQgbGVhc2VuIHNpZSB6dXJ1ZWNrLgpTaWUgZ3J1ZW5kZW4gZWluZSBBa3RpZW5nZXNlbGxzY2hhZnQuClNpZSB6d2luZ2VuIGRpZSBiZWlkZW4gS3VlaGUsIGRhcyBWaWVyZmFjaGUgYW4gTWlsY2ggenUgZ2ViZW4uIFNpZSB3dW5kZXJuCnNpY2gsIGFscyBlaW5lIHRvdCB1bWZhZWxsdC4gU2llIGdlYmVuIGVpbmUgUHJlc3NlZXJrbGFlcnVuZyBoZXJhdXMsIGluIGRlcgpTaWUgZXJrbGFlcmVuLCBTaWUgaGFldHRlbiBJaHJlIEtvc3RlbiB1bSA1MCUgZ2VzZW5rdC4gSWhyZSBBa3RpZW4gc3RlaWdlbi4KRnJhbnpvZXNpc2NoZXMgVW50ZXJuZWhtZW46ClNpZSBiZXNpdHplbiB6d2VpIEt1ZWhlLgpTaWUgc3RyZWlrZW4sIHdlaWwgU2llIGRyZWkgS3VlaGUgaGFiZW4gd29sbGVuLgpTaWUgZ2VoZW4gTWl0dGFnZXNzZW4uCkRhcyBMZWJlbiBpc3Qgc2Nob2VuLgpKYXBhbmlzY2hlcyBVbnRlcm5laG1lbjoKU2llIGJlc2l0emVuIHp3ZWkgS3VlaGUuCk1pdHRlbHMgbW9kZXJuc3RlciBHZW50ZWNobmlrIGVycmVpY2hlbiBTaWUsIGRhc3MgZGllIFRpZXJlIGF1ZiBlaW4gWmVobnRlbAppaHJlciB1cnNwcnVlbmdsaWNoZW4gR3JvZXNzZSByZWR1emllcnQgd2VyZGVuIHVuZCBkYXMgWndhbnppZ2ZhY2hlIGFuIE1pbGNoCmdlYmVuLiBKZXR6dCBrcmVpZXJlbiBTaWUgZWluZW4gY2xldmVyZW4gS3VoLUNhcnRvb24sIG5lbm5lbiBpaG4gS3Voa2ltb24gdW5kCnZlcm1hcmt0ZW4gaWhuIHdlbHR3ZWl0LgpEZXV0c2NoZXMgVW50ZXJuZWhtZW46ClNpZSBiZXNpdHplbiB6d2VpIEt1ZWhlLgpNaXR0ZWxzIG1vZGVybnN0ZXIgR2VudGVjaG5payB3ZXJkZW4gZGllIFRpZXJlIHJlZGVzaWduZWQsIHNvIGRhcyBzaWUgYWxsZQpibG9uZCBzaW5kLCBlaW5lIE1lbmdlIEJpZXIgc2F1ZmVuLCBNaWxjaCB2b24gaG9lY2hzdGVyIFF1YWxpdGFldCBnZWJlbiB1bmQKMTYwIGttL2ggbGF1ZmVuIGtvZW5uZW4uIExlaWRlciBmb3JkZXJuIGRpZSBLdWVoZSAxMyBXb2NoZW4gVXJsYXViIGltIEphaHIuCkJyaXRpc2NoZXMgVW50ZXJuZWhtZW46ClNpZSBiZXNpdHplbiB6d2VpIEt1ZWhlLgpCZWlkZSBzaW5kIHdhaG5zaW5uaWcuCkl0YWxpZW5pc2NoZXMgVW50ZXJuZWhtZW46ClNpZSBiZXNpdHplbiB6d2VpIEt1ZWhlLCBhYmVyIFNpZSB3aXNzZW4gbmljaHQsIHdvIHNpZSBzaW5kLiBXYWVocmVuZCBTaWUgc2llCnN1Y2hlbiwgc2VoZW4gU2llIGVpbmUgc2Nob2VuZSBGcmF1LiBTaWUgbWFjaGVuIE1pdHRhZ3NwYXVzZS4gRGFzIExlYmVuIGlzdApzY2hvZW4uCgoKCi0gUmFuZ29ybiBLaHVyJ1RpZ3JlcyAtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FobGhpbGZlIChHYWJ5bG9uLCAxNS4gU2VwIDIwMDUsIDEyOjExOjUwKToKfiMhIHJuPVJhbmdvcm4gcnQ9MTEyNjc0MTc0NyByZz1zY2htYXJybgp+IyEgdGlkPTExMjY3NDE3NDcKd28gc29sbCBkZW5uIGRhIGRpZSBlbnRzY2hlaWR1bmdzaGlsZmUgc2Vpbj8gc29sbCBpY2ggamV0enQgZWluIGphcGFuaXNjaGVzCnVudGVybmVobWVuIHdhZWhsZW4gZ2VoZW4gbmFlY2hzdGVuIHNvbm50YWc/CmFiZXIgbHVzdGlnIGlzdCdzIHRyb3R6ZGVtLgoKZ2FiCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhaGxoaWxmZSAoRGFya2xvciwgMTYuIFNlcCAyMDA1LCAyMTowODowOSk6Cn4jISBybj1HYWJ5bG9uIHJ0PTExMjY3NzkxMTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI2NzQxNzQ3CldhZXIgZGFzIG5pY2ggd2FzIGZ1ZXIgZGllIFdpdHplcnVicmlrPwoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IDJ4TGlkbC1CYWhuZmFocmthcnRlIGd1ZWx0aWcgYmlzIDMuIE9rdCAoR3JpbW1ib3JuLCAxNy4gU2VwIDIwMDUsIDE5OjA5OjUyKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTEyNjkxNDg5MiByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTExMjY5MTQ4OTIKSG1tPyBOdSBtYWNoIERpciBtYWwga2VpbmUgU29yZ2VuLCBkaWUgbXVzc3QgRHUgZG9jaCBuaWNodCBsb3N3ZXJkZW4uClNjaGxpZXNzbGljaCByZWlzZW4gS2luZGVyIGJpcyA3IEphaHJlbiAob2RlciBzbykgZWggdW1zb25zdCwgdW5kIHNlbGJzdCB3ZW5uCm5pY2h0IGtvZW5udGVzdCBEdSBpbW1lciBub2NoIGVpbmUgd2VpdGVyZSwgbm9ybWFsZSBLYXJ0ZSBmdWVyIFJhbmEgZGF6dQprYXVmZW4uIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIHdhcnMgbmljaHQhIChHbG9pbnNvbiwgMTguIFNlcCAyMDA1LCAwMToxMDo1NSk6Cn4jISBybj1SZXF1aWVtIHJ0PTExMjY5OTE1NzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI2OTkxNTc1CkdlaGVpbW5pc3ZlcnJhZXRlciEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXYWhsaGlsZmUgKEFuYXRvbCwgMTguIFNlcCAyMDA1LCAwOTo0MjoyMyk6Cn4jISBybj1EYXJrbG9yIHJ0PTExMjY4OTc2ODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI2NzQxNzQ3CnEKCkRhIGhpZXIgc28gdmllbGUgcG9saXRpc2NoIEhvY2hnZWJpbGRldGUgbWl0bGVzZW4gLSB3aWUgaXN0IGRhcwplaWdlbnRsaWNoOiBXZW5uIFN0b2liZXIgZXMgbmljaHQgdmVyYm9ja3QgaGF0LCBiZWtvbW10IFNjaHJvZWRlciwKd2FzIGVyIHNpY2ggdm9uIGRlciBXYWhsIGVyaG9mZnQuIEFiZXIgd2FzIG1hY2h0IFNjaHJvZWRlciwgc29sbHRlCmRpZSBTUEQgZGllIFdhaGwgZ2V3aW5uZW4/IQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQ3JvZnQsIDE5LiBTZXAgMjAwNSwgMjM6Mjc6MjkpOgpEYSBlcyBuaWVtYW5kIGdlcG9zdGV0IGhhdCAsLSkKCltNb2VyZGVyOkdlaXN0IEFuZHJvbGllbHNdIEFiZXIgdm9yc2ljaHQsIE1vZ3VyIGlzY2gga3V1dWwgbWFlbiEgPE1vbiwKW01vZXJkZXI6R2Vpc3QgQW5kcm9saWVsc10gMjA6Mjg6NTk+CltNb2VyZGVyOk1vZ3VyXSBIZXIgbWl0IGRlbSBoZWxtIDotKSA8TW9uLCAyMDoyOTowMz4KW1RvZDpMYXJzXSBFc29uZHJpZWwgaGF0IGdlcmFkZSBNb2d1ciB1bWdlYnJhY2h0LiA8TW9uLCAyMDoyOTowNT4KW1RvZDpFc29uZHJpZWxdIEdpdmUgbWUgZml2ZSBBbmRyb2xpZWwhIDxNb24sIDIwOjI5OjA1PgpbVG9kOk1vZ3VyIGJydWVsbHQ6IENoYW9zIFJ1bGVaISEhIDotKSA8TW9uLCAyMDoyOTowNT5dCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3ByYWNoc3RvZXJ1bmdlbiBiZWkgTlBDcyAoTWVzaXJpaSwgMjEuIFNlcCAyMDA1LCAyMzowMTozNik6CkRlciByaWVzaWdlIEN5a2xvcCBrYW5uIG5pY2h0IHJlZGVuLgpEZXIgcmllc2lnZSBDeWtsb3Agc2FndDogRGVyIFN0YWhsIG11c3MgaGFydCBzZWluLgoKTWVzaSwgZm9yc2NodCBtYWwgYmVpIFRzdW5hbWkgZmVydGlnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFid2VzZW5kIChHbG9pbnNvbiwgMjIuIFNlcCAyMDA1LCAxMzozNDoyNSk6Cn4jISBybj1ab29rIHJ0PTExMjczODg4MjMgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTExMjczODg0ODcKOnB1bGxlcnQgZ2FueiBhdXRvbWF0aXNjaCBpbiBab29rcyBGb2VybWNoZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0cm9tIGF1cywga2VpbiBNRyBiaXMgU2Ftc3RhZyAoR2xvaW5zb24sIDIyLiBTZXAgMjAwNSwgMTY6MTI6MDQpOgp+IyEgcm49SHVtbmkgcnQ9MTEyNzM5ODIzOSByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTEyNzM5ODIzOQpJaHIga29lbm50IGphIHNvIGxhbmdlIG5hY2ggUmVnZW5ib2dlbiBrb21tZW4gdW5kIGRhIHdlaXRlcmlkbGVuIDspCgpXaXIgc29sbHRlbiB3aXJrbGljaCBtYWwgZWluZSByZXByYWVzZW50YXRpdmUgVW1mcmFnZSBtYWNoZW46Ci0gV28gaWRlbHN0IGR1IGFtIGxpZWJzdGVuLCB3ZW5uIE1HIG9mZiBpc3QuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdHJvbSBhdXMsIGtlaW4gTUcgYmlzIFNhbXN0YWcgKE9nbywgMjIuIFNlcCAyMDA1LCAxNjoxMjoyMCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTI3Mzk4MzI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyNzM5ODIzOQpBbmRlcmxhbmQgbGF0dWVybmljaCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU3Ryb20gYXVzLCBrZWluIE1HIGJpcyBTYW1zdGFnIChIdW1uaSwgMjIuIFNlcCAyMDA1LCAxNjoxMjo1Nik6Cn4jISBybj1PZ28gcnQ9MTEyNzM5ODM0MCByZz1zY2htYXJybgp+IyEgdGlkPTExMjczOTgyMzkKSWNoIGJpbiBkYW5uIGFiIHVuZCBhbiBpbSBTaWxiZXJsYW5kLCBvZGVyIG5hdHVlcmxpY2ggaW0gRXBhY3JpcyA7LSkKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTdHJvbSBhdXMsIGtlaW4gTUcgYmlzIFNhbXN0YWcgKEJvaW5nLCAyMi4gU2VwIDIwMDUsIDE2OjE4OjA2KToKfiMhIHJuPUh1bW5pIHJ0PTExMjczOTgzNzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI3Mzk4MjM5CkljaCB3YXJ0ZSBzY2hvbiBhdWYgT3JrdG9ldGVycyBBcnRpa2VsIC4uLiA7KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTdHJvbSBhdXMsIGtlaW4gTUcgYmlzIFNhbXN0YWcgKE11YWRpYiwgMjIuIFNlcCAyMDA1LCAxNjo1NTo0MCk6Cn4jISBybj1Cb2luZyBydD0xMTI3Mzk4Njg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyNzM5ODIzOQp3ZW5uIGRhcyBNRyBvZmYgaXN0IGlkbGUgaWNoIGFtIGxpZWJzdGVuIGltIE1HCndlciBicmF1Y2h0IHNjaG9uIHN0cm9tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTdHJvbSBhdXMsIGtlaW4gTUcgYmlzIFNhbXN0YWcgKFJhbmdvcm4sIDIyLiBTZXAgMjAwNSwgMjA6MTk6MjEpOgp+IyEgcm49TXVhZGliIHJ0PTExMjc0MDA5NDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI3Mzk4MjM5ClNpbGJlcmxhbmQuCk1laW4gUG9nb3Ryb2xsIHdhZXJlIHNvZ2FyIHVlYmVybGViZW5zZmFlaGlnLCB3ZW5uIGljaCBtaXIgbWFsIEdlZGFua2VuIHVtIGRpZQpGdW5kb3J0ZSB2b24gZGVuIEF1c3J1ZXN0dW5nc2dlZ2Vuc3RhZW5kZW4gbWFjaGVuIHd1ZXJkZS4gOykKCi0gUmFuZ29ybiBLaHVyJ1RpZ3JlcyAtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTdHJvbSBhdXMsIGtlaW4gTUcgYmlzIFNhbXN0YWcgKEJyYW4sIDIyLiBTZXAgMjAwNSwgMjE6MjQ6MzYpOgp+IyEgcm49UmFuZ29ybiBydD0xMTI3NDEzMTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyNzM5ODIzOQpBdWNoIFNpbGJlcmxhbmQuIFdlbm4uIEljaCB3ZWlzcyBnYXIgbmljaHQgbWVociwgd2FzIGljaCBkYSB1ZWJlcmhhdXB0IGJpbiwKdmllbGxlaWNodCBnaWJ0cyBtaWNoIGdhciBuaWNodCBtZWhyLiBLcmllZ3QgbGllYmVyIHNjaG5lbGwgd2llZGVyIGRlbiBSZWNobmVyCnp1bSBMYXVmZW4gOikKCkJyYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFN0cm9tIGF1cywga2VpbiBNRyBiaXMgU2Ftc3RhZyAoRGFya2xvciwgMjIuIFNlcCAyMDA1LCAyMToyNjoyMCk6Cn4jISBybj1CcmFuIHJ0PTExMjc0MTcwNzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI3Mzk4MjM5CkZpbmFsRnJvbnRpZXIgb2RlciBFcGFjcmlzIAoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU3Ryb20gYXVzLCBrZWluIE1HIGJpcyBTYW1zdGFnIChDaGFnYWxsLCAyMi4gU2VwIDIwMDUsIDIxOjMzOjQwKToKfiMhIHJuPURhcmtsb3IgcnQ9MTEyNzQxNzE4MCByZz1zY2htYXJybgp+IyEgdGlkPTExMjczOTgyMzkKSWNoIGlkbGUgd2llIGltbWVyIGltIEFuZGVybGFuZCAKCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU3Ryb20gYXVzLCBrZWluIE1HIGJpcyBTYW1zdGFnIChBcmssIDIyLiBTZXAgMjAwNSwgMjM6MTc6NTYpOgp+IyEgcm49Q2hhZ2FsbCBydD0xMTI3NDE3NjIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyNzM5ODIzOQpJY2ggc2NocmVpYmUgbmV1ZSBSYWV1bWUgaW0gVGV4dHBhZCA6LSkKSWRlbG4gdHVuIG51ciBMZXV0ZSBtaXQgU2VobmVuc2NoZWlkZW5lbnR6dWVuZHVuZy4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogU3Ryb20gYXVzLCBrZWluIE1HIGJpcyBTYW1zdGFnIChBbGtvaG9sLCAyMi4gU2VwIDIwMDUsIDIzOjUwOjIzKToKfiMhIHJuPUFyayBydD0xMTI3NDIzODc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyNzM5ODIzOQppY2ggaWRsZSB6dSBoYXVzZSBzY2hyZWliZW5kZXIgd2Vpc2UgaW4gbWVpbmVtIHZpbQoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFN0cm9tIGF1cywga2VpbiBNRyBiaXMgU2Ftc3RhZyAoQ2hhZ2FsbCwgMjMuIFNlcCAyMDA1LCAxMDo0Mzo0OSk6Cn4jISBybj1BcmsgcnQ9MTEyNzQyMzg3NiByZz1zY2htYXJybgp+IyEgdGlkPTExMjczOTgyMzkKSGUuLi5pY2ggaGFiIGpldHp0IHNvZ2FyIGVpbmUgcmljaHRpZ2UgQXVzcmVkZS4gVWViZXJyZWl6dGUgbmVydmVuIGluIGRlcgpTY2h1bHRlciwgaWNoIGRhcmYgbmljaHQgdmllbCB0aXBwZW4uLi4KCk1DLCBuaWUgdW0gZWluZSBBdXNyZWRlIHZlcmxlZ2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogU3Ryb20gYXVzLCBrZWluIE1HIGJpcyBTYW1zdGFnIChHbG9pbnNvbiwgMjMuIFNlcCAyMDA1LCAxMDo0NDozNyk6Cn4jISBybj1DaGFnYWxsIHJ0PTExMjc0NjUwMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI3Mzk4MjM5CkRhZnVlciBnaWJ0IGVzIGphIFNwcmFjaGVya2VubnVuZ3Nzb2Z0d2FyZS4gV28gaWRsZSBpY2ggZWlnZW50bGljaD8gT2tvaywgYXVjaAplaGVyIFNpbGJlcmxhbmQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVuZ2xpc2NoIGltIEVuZHN0YWRpdW0gKEdsb2luc29uLCAyMy4gU2VwIDIwMDUsIDEzOjA5OjQ5KToKfiMhIHJuPVZpbmNlbnQgcnQ9MTEyNzQ3MzUzNCByZz13aXR6ZQp+IyEgdGlkPTExMjc0NzM1MzQKQmVpIGRlbiBlcnN0ZW4gendlaSBBcnRpa2VsIHNjaG1lcnp0IG1pciBkYXMgIldoaWNoIFsuLi5dIHdpdGNoIHdhdGNoIC4uLiIgaW4KZGVuIEF1Z2VuIHVuZCBpY2ggaGFldHRlIGRhIGludHVpdGl2IGxpZWJlciBlaW4gIldoaWNoIFsuLi5dIHdpdGNoIHdhdGNoZXMKLi4uIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFbmdsaXNjaCBpbSBFbmRzdGFkaXVtIChNdWFkaWIsIDI1LiBTZXAgMjAwNSwgMTg6NDI6NDQpOgp+IyEgcm49VmluY2VudCBydD0xMTI3NDczNTM0IHJnPXdpdHplCn4jISB0aWQ9MTEyNzQ3MzUzNAp1bmQgbnVuIGRpZSBrb3JyZWt0ZSBiZXplaWNobnVuZyBmdWVyIGRpZXNlbiBhcnRpa2VsOiBhcHBsaWNhdGlvbiBmb3IgYSBtZXJjeQpraWxsaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFueXNpZG9yYSwgMjUuIFNlcCAyMDA1LCAyMDowODoyNyk6ClZvbiBGcmV1bmRpbiBNYWVyZmVlOiBkZXIgdGV1ZmVsIGlzdCBhYmVyIGR1bW0KW1RvZDpMYXJzXSBFaW4gVGV1ZmVsIGhhdCBnZXJhZGUgTWFlcmZlZSB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU3Ryb20gYXVzLCBrZWluIE1HIGJpcyBTYW1zdGFnIChLZWxseWJ1bmR5LCAyNi4gU2VwIDIwMDUsIDAwOjMzOjQ4KToKfiMhIHJuPURhcmtsb3IgcnQ9MTEyNzQxNzE4MCByZz1zY2htYXJybgp+IyEgdGlkPTExMjczOTgyMzkKSWNoIHppY2tlIGRpZSBpbSBTaWxiZXJsYW5kIGFuLCBzb2xhbmdlIGRhcyBNRyBvZmYgaXN0ICpHRyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdyYWZpa2thcnRlIChPcmt0b2V0ZXIsIDI5LiBTZXAgMjAwNSwgMDc6NDU6NDQpOgp+IyEgcm49TW9yZ290aCBydD0xMTI3OTcyNjM0IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTExMjc5MDUwMzEKU29sbHRlIGVzIG5pY2h0IGVoZXIgZGFmdWVyIFNvcmdlbiwgZGFzcyBlcyBhdWYgZGVtIEJpbGRzY2hpcm0gYmxhdSBMZXVjaHRldCwKd2VubiBkaWUgU29mdHdhcmUgZGFzIHNvIG1vZWNodGU/CgpPcmtULCBoZXV0ZSBwcmFrdGlzY2ggZGVua2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVsZmVuLi4uLiAoT3JrdG9ldGVyLCAyOS4gU2VwIDIwMDUsIDIzOjI4OjE0KToKR2VyYWRlIGltIE1HOgpVbmQgc2Nob24gd2llZGVyIGlzdCBpcmdlbmR3byBlaW4gQmF1bSB1bWdlZmFsbGVuLi4uCgpEYSBrb25udGUgc2ljaCBlaW4gRWxmIHdvaGwgbmljaHQgYmVoZXJyc2NoZW4sIHdpZT8KCk9ya1QsIGVyc2NodWV0dGVydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFbGZlbi4uLi4gKENyb2Z0LCAzMC4gU2VwIDIwMDUsIDAxOjEzOjA1KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTI4MDI5Mjk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyODAyOTI5NApTZWl0IHdpZXZpZWwgSmFocmVuIGdpYnRzIGRpZSBNZWxkdW5nIHNjaG9uIGltIE1HPwoKKnJ1bnplbHQgZGllIFN0aXJuKgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRWxmZW4uLi4uIChNdWFkaWIsIDMwLiBTZXAgMjAwNSwgMTM6MDc6MDMpOgp+IyEgcm49Q3JvZnQgcnQ9MTEyODAzNTU4NSByZz1zY2htYXJybgp+IyEgdGlkPTExMjgwMjkyOTQKb3JrdG9ldGVycyBsYW5nemVpdGdlZGFlY2hudGlzbGF0ZW56emVpdCArIDEgc2VrdW5kZSBtaW5kZXN0ZW5zCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNb25hcmNoZW5rYXR6ZW4gdW5kIERlbW9rcmF0aWUuLi4gKE9nbywgIDIuIE9rdCAyMDA1LCAxNzo0NDozMCk6ClsqaWNld2FyczpHbG9pbnNvbl0gU2Nob2VuZW4gV2FobHRhZyB1ZWJyaWdlbnMgOykKWyppY2V3YXJzOkthcmltYV0gSHVwcy4gaWNoIHd1c3N0ZSwgaWNoIGhhYiB3YXMgdmVyZ2Vzc2VuClsqaWNld2FyczpLYXJpbWFdIG5vY2ggMjAgbWludXRlbiBeX15iaXMgbmFjaGhlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGhlIDEwMCBCZXN0IFByb2R1Y3RzIG9mIDIwMDUgKE9nbywgIDIuIE9rdCAyMDA1LCAyMjowOTowNik6Cmh0dHA6Ly93d3cucGN3b3JsZC5jb20vcmV2aWV3cy9hcnRpY2xlLzAsYWlkLDEyMDc2MyxwZywxMiwwMC5hc3AKVGVpbHdlaXNlIGdhbnogc2Nob2VuIGJpdHRlciwgd2FzIGZ1ZXIgZWluIFNjaHVuZCBkYWJlaSBpc3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUaGUgMTAwIEJlc3QgUHJvZHVjdHMgb2YgMjAwNSAoTXVhZGliLCAgMy4gT2t0IDIwMDUsIDAwOjMzOjMzKToKfiMhIHJuPU9nbyBydD0xMTI4MjgzNzQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyODI4Mzc0NgpkYSBpc3QgZ2FyIGtlaW4gdG9pbGV0dGVucGFwaWVyIGRhYmVpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRoZSAxMDAgQmVzdCBQcm9kdWN0cyBvZiAyMDA1IChLZWxseWJ1bmR5LCAgMy4gT2t0IDIwMDUsIDEyOjEwOjQ3KToKfiMhIHJuPU11YWRpYiBydD0xMTI4MjkyNDEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyODI4Mzc0NgpERnJ1Y2sgZGllciBkaWUgc2l0ZSBpbiAxMDAwMCBleGVtcGxhcmVuIGF1cywgdW5kIGR1IGhhc3QgYmVzdCB0b2lsZXR0ZW5wYXBpZXIKdm9ubmUgd2VsdCAqR0cqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUaGUgMTAwIEJlc3QgUHJvZHVjdHMgb2YgMjAwNSAoS2VsbHlidW5keSwgIDMuIE9rdCAyMDA1LCAxMjoxMjoxNyk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTExMjgzMzQyNDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI4MjgzNzQ2CnNlbGJzdHJlcGx5CkJpbiBub2NoIG5pY2h0IGdhbnogd2FjaC4gc29vb28gdmllbGUgdmVydGlwcGVyY2hlbiBpbm5lbSBlaW56aWdlbiBzYXR6IHNpbmQKbnVyIGF1ZiBrYXRlciB1bmQgYXNwaXJpbm1hbmdlbCB6dXJ1ZWNrenVmdWVocmVuICpqYW1tZXIqIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUXVlc3RpbmZvcyAoQW5hdG9sLCAgNi4gT2t0IDIwMDUsIDE4OjE1OjA5KToKfiMhIHJuPUFyayBydD0xMTI4NTEzMTk2IHJnPWQud2FsZAp+IyEgdGlkPTExMjg1MTMxOTYKYWQgInp3aWVsaWNodGlnZXMgRXhwZXJpbWVudCI6IElzdCBlcyBuaWNodCBzY2hvbiBtaXQgT2xkIFZpbmNlbnQKc28sIGRhc3MgbWFuIGVudHdlZGVyIGRlbiBQcnVlZ2VsIGF1c3BhY2t0IG9kZXIgRm9yc2NoZXJ0dW0gZWluc2V0enQ/CgpadSBzdG9seiwgdW0gYmVpIGFuZGVyZW4genUga2xhdWVuLi4uPyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUXVlc3RpbmZvcyAoQXJrLCAgNi4gT2t0IDIwMDUsIDE4OjE5OjUzKToKfiMhIHJuPUFuYXRvbCBydD0xMTI4NjE1MzA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyODUxMzE5NgpOb2UsIHdlciBkYXMgbWFsIGdlbWFjaHQgaGF0LCB3aXJkIHdpc3NlbiwgZGFzcyBhdXNzZXIgZGVtIEtpbGwgbml4CnJhdXNzcHJpbmd0LiBXYWVyIGphIGF1Y2ggenUgZWluZmFjaCAuLi4genVtaW5kZXN0IGZ1ZXIgZWluaWdlIDstKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvbGxtYWNodCAoS2VsbHlidW5keSwgIDguIE9rdCAyMDA1LCAxNzoyMzoyMSk6CkdlcmFkZSBiZWtvbW1lbiB2b25uZW0gZGF1ZXJwbGVpdGVuIEt1bXBlbCB2b24gbWlyLCBkZW0gbWFuIGVpbmZhY2ggbmljaHQKYm9lc2Ugc2VpbiBrYW5uICpHRyoKCgpBYmVyIG5lcnYgbWljaCBydWhpZyByZWdlbG1hZXNzaWcsIHNvbnN0IHZlcmdlc3MgaWNocy4KZGllIGFuZ2VrdWVuZGlndGVuIDgwIE9ja2VuIHNpbmQgc2VpdCBnZXN0ZXJuIGFiZW5kCnVudGVyd2Vncy4gCgpWT0xMTUFDSFRTRVJLTEFlUlVORwpIaWVybWl0IGJlc3RhZXRpZ2UgaWNoLCBEci4gZGlwbC4gcmVyLiBwbGFubC4gZGlwbC4gcmVyCm9iZXIuIHNjaHVzcy4gWFhYWFhYIChtYWVubmxpY2g/IHdlaWJsaWNoPwpXZWlzcyBuaWNodCwgZGVubiBpY2ggYmluIHNvIHBsZWl0ZSwgZGFzcyBpY2ggbmljaHQKbWVociB3ZWlzcywgb2IgaWNoIE1hZW5ubGVpbiBvZGVyIFdlaWJsZWluIGJpbiksCm1laHIgb2RlciB3ZW5pZ2VyIGltIFZvbGxiZXNpdHogbWVpbmVyIGdlaXN0aWdlbgpLcmFlZnRlLCBzb2Zlcm4gaWNoIG1hbCBuaWNodCBnZXJhZGUgd2llZGVyIGJsYXUgYmluLAptZWluZXMgWmVpY2hlbnMgZGlwbG9taWVydGVyIE9iZXJzY2h1c3NlbCB1bmQKcHJvbW92aWVydGVyIFBsYW5sb3NvbG9nZSwgZGllIEJldm9sbG1hZWNodGlndW5nIGRlcwpIZXJybiBNSVIsIG1pciBiZXp1ZWdsaWNoIFJ1ZWNremFobHVuZyBpbiBkaWUKdmlydHVlbGxlbiBFaWVyIHRyZXRlbiB6dSBkdWVyZmVuLCBzbyBsYW5nZSB1bmQgc28gb2Z0CmVyIHdpbGwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFeC1GcmF1IGltIE11ZD8gKE1haGFyZXQsIDEyLiBPa3QgMjAwNSwgMjM6Mzg6MTkpOgpNZXNpcmlpIHNwaWVsdCBtaXQgUmFuYSB1bmQgYmV3dW5kZXJ0IGlociBTY2hudWZmZWx0dWNoLgpNZXNpcmlpIHNhZ3Q6IERhcyBpc3QgZWluIHRvbGxlcyBTY2hudWZmZWx0dWNoLiBTbyBlaW5zIGhhZXR0ZSBpY2ggYXVjaCBnZXJuCmdlaGFidCwgYWxzIGljaCBlaW4ga2xlaW5lcyBNYWVkY2hlbiAuLi4gYWxzIGljaCBnYW56IGtsZWluIHdhci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFeC1GcmF1IGltIE11ZD8gKE11YWRpYiwgMTMuIE9rdCAyMDA1LCAwNzo1NTozNyk6Cn4jISBybj1NYWhhcmV0IHJ0PTExMjkxNTMwOTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI5MTUzMDk5Cm9oamUgZmFlbmd0IGRhcyBzbyBmcnVlaCBzY2hvbiBhbj8KZHUgaGFzdCBlcyBzbyBndXQsIHdpciBkYWdlZ2VuLCB3aXIgaGF0dGVuIGphIGdhciBuaWNodHMsIHVlYmVyaGF1cHQgbmljaHRzCm51ciBuZSBtYXVlciB1bmQgZGllIG11c3N0ZW4gd2lyIGltIHRpZWZzdGVuIHdpbnRlciBiYXJmdXNzIGR1cmNoIGRlbiBzY2huZWUKMTAwIGttIGVudGxhbmdsYXVmZW4gdW0genVyIHNjaHVsZSB6dSBrb21tZW4uIHVuZCBkYWZ1ZXIgbXVzc3RlbiB3aXIgYXVjaCBub2NoCnNjaHVsZ2VsZCBlcmFyYmVpdGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEV4LUZyYXUgaW0gTXVkPyAoR2xvaW5zb24sIDEzLiBPa3QgMjAwNSwgMTg6MTU6MjApOgp+IyEgcm49TXVhZGliIHJ0PTExMjkxODI5Mzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI5MTUzMDk5ClVuZCBpY2ggYmluIGVyc3Qgc2NobGltbSBkcmFuLCBpY2ggd2Vpc3MgZ2FyIG5pY2h0IG9iIG1laW5lIEVsdGVybiBlaW4KU2NobnVmZmVsdHVjaCBmdWVyIG1pY2ggaGF0dGUgbm9jaCB3aWUgdG9sbCBkYXMgd2FyLiBEYSBzaW5kIG1laW5lIDcwMCBNZWlsZW4KU2NodWx3ZWcgZ2FyIG5pY2h0cyBnZWdlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFeC1GcmF1IGltIE11ZD8gKE1haGFyZXQsIDEzLiBPa3QgMjAwNSwgMjI6MDA6MjcpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEyOTIyMDEyMCByZz1zY2htYXJybgp+IyEgdGlkPTExMjkxNTMwOTkKTmFqYSwgc29sYW5nZSBkdSB3ZWlzc3QsIG9iIGR1IGVpbiBNYWVkY2hlbiB3YXJzdCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEV4LUZyYXUgaW0gTXVkPyAoR3JpbW1ib3JuLCAxMy4gT2t0IDIwMDUsIDIyOjAzOjUzKToKfiMhIHJuPU1haGFyZXQgcnQ9MTEyOTIzMzYyNyByZz1zY2htYXJybgp+IyEgdGlkPTExMjkxNTMwOTkKU3VwZXIuIEpldHp0IGhhc3QgRHUgaWhuIHZlcnVuc2ljaGVydCB1bmQgZXIgaXN0IHdpZWRlciB3b2NoZW5sYW5nIGFiZ2VsZW5rdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRXgtRnJhdSBpbSBNdWQ/IChEYXJrbG9yLCAxMy4gT2t0IDIwMDUsIDIyOjIzOjAxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTI5MjMzODMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyOTE1MzA5OQpBYmVyIGVpZ2VudGxpY2ggbXVlc3N0ZSBlciBkb2NoIHNjaG9uIGJld2llc2VuIGhhYmVuLCB3YXMgZXIgaXMsIGF1c3NlciBSYW5hCmlzIGF1c20gS3Vja3Vja3NlaSBnZXNjaGx1ZXBmdC4gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEV4LUZyYXUgaW0gTXVkPyAoR3JpbW1ib3JuLCAxMy4gT2t0IDIwMDUsIDIyOjI0OjM3KToKfiMhIHJuPURhcmtsb3IgcnQ9MTEyOTIzNDk4MSByZz1zY2htYXJybgp+IyEgdGlkPTExMjkxNTMwOTkKTmEgdW5kPyBXYXMgc29sbCBkZXIgenVzYW1tZW5oYW5nc2xvc2UgS29tbWVudGFyPyBXaXIgc3ByYWNoZW4gZGF2b24gd2FzIGVyCm1hbCB3YXIsIG5pY2h0IGRhdm9uIHdhcyBlciBpc3QuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEV4LUZyYXUgaW0gTXVkPyAoRGFya2xvciwgMTMuIE9rdCAyMDA1LCAyMjozMjo0MCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEyOTIzNTA3NyByZz1zY2htYXJybgp+IyEgdGlkPTExMjkxNTMwOTkKTmFqYSB2bGx0IGlzIGVyIGVzIGphIG5vY2guLi4gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEV4LUZyYXUgaW0gTXVkPyAoTWFoYXJldCwgMTMuIE9rdCAyMDA1LCAyMzoxODo1Nik6Cn4jISBybj1EYXJrbG9yIHJ0PTExMjkyMzU1NjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI5MTUzMDk5Ck5laW4sIGRhcyB3dWVzc3RlIGljaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEV4LUZyYXUgaW0gTXVkPyAoR2xvaW5zb24sIDEzLiBPa3QgMjAwNSwgMjM6NTM6NDEpOgp+IyEgcm49TWFoYXJldCBydD0xMTI5MjM4MzM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyOTE1MzA5OQpTbyBlaW4gcmljaHRpZ2VzIFdpZGVyd29ydCBpc3QgZGFzIGFiZXIgbmljaHQgLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEV4LUZyYXUgaW0gTXVkPyAoUmVxdWllbSwgMTQuIE9rdCAyMDA1LCAwNzoyNToxOSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTI5MjQwNDIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyOTE1MzA5OQpBdXNzZXJkZW0gc3BpZWx0IE1lc2lyaWkgSWNld2Fycy4gVW5kIGhhdCBHZW5ldGlrIGVyZm9yc2NodC4gVW5kIGthbm4gZGEgc2VpbgpHZXNjaGxlY2h0IHNlbGJzdCBmZXN0bGVnZW4uIEljaCB3YWVyIGRhIHNjaG9uIG1pc3N0cmF1aXNjaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnpvb2sgaXN0IChNdWFkaWIsIDE4LiBPa3QgMjAwNSwgMjE6MjM6MDApOgp1bnJlaWYgdW5kIGluIGVpbmVyIHdpZGVybGljaGVuIGFuYWxlbiBwaGFzZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHpvb2sgaXN0IChNb29uc2hpbmUsIDE4LiBPa3QgMjAwNSwgMjE6MjM6MzYpOgp+IyEgcm49TXVhZGliIHJ0PTExMjk2NjMzODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI5NjYzMzgwCkRhcyBpc3QgaW4gZGVtIEFsdGVyIGViZW4gc28sIGRpZXNlciBSZWZsZXggbGFlc3N0IGF1Y2ggd2llZGVyIG5hY2guIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB6b29rIGlzdCAoR2xvaW5zb24sIDE4LiBPa3QgMjAwNSwgMjI6MzQ6MDkpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTExMjk2NjM0MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI5NjYzMzgwCk5laW4sIGRhcyB3aXJkIGVoZXIgc2NobGltbWVyLiBOb2NoIGVpbiBwYWFyIEphaHJlIHVuZCBlcyBnaWJ0IG51ciBub2NoClN0dWhsZ2FuZ2dlc3ByYWVjaGUgaGllci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB6b29rIGlzdCAoT3JrdG9ldGVyLCAxOC4gT2t0IDIwMDUsIDIyOjM1OjIzKToKfiMhIHJuPUdsb2luc29uIHJ0PTExMjk2Njc2NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI5NjYzMzgwCkR1IG1laW5zdCB3ZW5uIGRpZSBlcnN0ZSBnZW5lcmF0aW9uIGhpZXIgaW0gQWx0ZW5oZWltIGFuZ2Vrb21tZW4gaXN0IHVuZCBpaHJlCldlaHdlaGNoZW4gdW5kIGRlciBuaWNodCB6dWZyaWVkZW5zdGVsbGVuZGUgU3R1aGxnYW5nIGRhcyBoYXVwdHRoZW1hIHNpbmQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB6b29rIGlzdCAoUmVxdWllbSwgMTkuIE9rdCAyMDA1LCAwMDo1Njo0NSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTEyOTY2NzcyMyByZz1zY2htYXJybgp+IyEgdGlkPTExMjk2NjMzODAKIkhlcnIgRG9rdG9yLCBpY2ggaGFiIGdlc3Rlcm4gendlaW1hbCB1bmQgaGV1dCBudXIgZWlubWFsIGdla2Fja3QuIE11c3MgaWNoCmpldHp0IHN0ZXJiZW4/IgoKUmVxdWllbSAoaXN0IGtlaW4gRG9rdG9yIHVuZCBoYXQgZGVuIFNhdHogZ2VuYXUgc28gZ2Vob2VydCwgdW5kIHp3YXIgdm9lbGxpZwplcm5zdCBnZW1laW50LikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHpvb2sgaXN0IChHbG9pbnNvbiwgMTkuIE9rdCAyMDA1LCAwMTozMzo1Nik6Cn4jISBybj1SZXF1aWVtIHJ0PTExMjk2NzYyMDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI5NjYzMzgwCkFsdGVyPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHpvb2sgaXN0IChNdWFkaWIsIDE5LiBPa3QgMjAwNSwgMDg6Mzc6NTMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEyOTY3ODQzNiByZz1zY2htYXJybgp+IyEgdGlkPTExMjk2NjMzODAKdW5kIHdhcyB3YXIgZGllIGFudHdvcnQ/IGhvZmZlbnRsaWNoIGVpbiBlaHJsaWNoZXMgImphIi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkF1cyBha3R1ZWxsZW0gQW5sYXNzIChOb25uZSwgMTkuIE9rdCAyMDA1LCAwOTozNjoxMik6CmJpc2NoZW46IChtaXR0ZWxkLiBmdWVyIFtlaW4gQmFieV0gYmVydWhpZ2VuZCBhdWYgZGVtIEFybSB3aWVnZW4pOyBEdSBiaXNjaHN0CgpCaXNzY2hlbjogZWluIEJpc3NjaGVuLCBkYXMgQmlzc2NoZW4gKGVpbiB3ZW5pZykKCldhcnVtIGxlc2UgaWNoIGluIGxldHp0ZXIgWmVpdCB6dSA4MCUgYmlzY2hlbiB3ZW5uIGRvY2ggYmlzc2NoZW4gZ2VtZWludCBpc3Q/CgpOb25uZS4KClAuUzogUXVlbGxlOiBSZWNodHNjaHJlaWJkdWRlbiAyMS4gQXVmbGFnZSAxOTk2CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXVzIGFrdHVlbGxlbSBBbmxhc3MgKE5pY29sYWksIDE5LiBPa3QgMjAwNSwgMTI6MTQ6MjcpOgp+IyEgcm49Tm9ubmUgcnQ9MTEyOTcwNzM3MiByZz1zY2htYXJybgp+IyEgdGlkPTExMjk3MDczNzIKaWNoIGRhY2h0ZSBpbW1lciwgImJpc3NjaGVuIiBpc3QgZGVyIEJpc3Mgdm9uIGJpc2NoZW4sIGRhcyB6dWJlaXNzZW4KZWluZXMgbWl0dGVsZGV1dHNjaGVuIEJhYnlzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBdXMgYWt0dWVsbGVtIEFubGFzcyAoQ3JvZnQsIDE5LiBPa3QgMjAwNSwgMTI6MjA6MzUpOgp+IyEgcm49Tmljb2xhaSBydD0xMTI5NzE2ODY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyOTcwNzM3MgpXaWxtYSBicmF1dCBzaWNoIGdlcmFkZSBqYSBvcmRlbnRsaWNoIHp1c2FtbWVuLiAgVW5kIGVzIHN0ZWh0IHdvaGwgenUKZXJ3YXJ0ZW4sIGRhcyBkYW5hY2ggbm9jaCBlaW5pZ2UgZ3JpZWNoaXNjaGUgQnVjaHN0YWJlbiBpaHIgbmFjaGZvbGdlbgp3ZXJkZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU1FMIChteXNxbCA0LjAuMTgpIGZ1ZXIgRHVtbWllcz8gKEFuYXRvbCwgMTkuIE9rdCAyMDA1LCAyMTozOTozMCk6Cn4jISBybj1SdW1hdGEgcnQ9MTEyOTc1MDc0MiByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMTI5NzM3MTEyCkdlc3VuZGhlaXQuIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU1FMIChteXNxbCA0LjAuMTgpIGZ1ZXIgRHVtbWllcz8gKE11YWRpYiwgMTkuIE9rdCAyMDA1LCAyMTozOTo1MCk6Cn4jISBybj1BbmF0b2wgcnQ9MTEyOTc1MDc3MCByZz1zY2htYXJybgp+IyEgdGlkPTExMjk3MzcxMTIKYnVsbHNoaXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNRTCAobXlzcWwgNC4wLjE4KSBmdWVyIER1bW1pZXM/IChab29rLCAyMC4gT2t0IDIwMDUsIDExOjU3OjI5KToKfiMhIHJuPU11YWRpYiBydD0xMTI5NzUwNzkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyOTczNzExMgpVbmQgZGFiZWkgaGFiZSBpY2ggZ2FyIG5pY2h0IG1pdGdlbWFjaHQuClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTUUwgKG15c3FsIDQuMC4xOCkgZnVlciBEdW1taWVzPyAoQW5hdG9sLCAyMC4gT2t0IDIwMDUsIDIwOjU2OjUwKToKfiMhIG9uPUFuYXRvbCBvdD0xMTI5ODM0NjA2IG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49UnVtYXRhIHJ0PTExMjk3NTA3NDIgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTEyOTczNzExMgpNZWluZXIgS29sbGVnaW4gaGFiZSBpY2ggZ2VzYWd0ICJJY2ggaGFiJ3MgYXVzbXVsdGlwbGl6aWVydC4iCgpVbmQgZnVua3Rpb25pZXJ0LiA7KQoKQW5hdG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYml0dGUgc3BpZWxwYXVzZW4gKEFuYXRvbCwgMjAuIE9rdCAyMDA1LCAyMjoxODoyOSk6Cn4jISBybj1NdWFkaWIgcnQ9MTEyOTgzOTQ2OSByZz1wb2xpemVpLmJlc2Nod2VyZGVuCn4jISB0aWQ9MTEyOTgzOTQ2OQpWZXJnaXNzIG5pY2h0IERpY2ggYXVzenVsb2dnZW4sIER1IFNwaWVscGF1c2VudW1nZWhlciEgCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBiaXR0ZSBzcGllbHBhdXNlbiAoTXVhZGliLCAyMC4gT2t0IDIwMDUsIDIyOjE5OjE5KToKfiMhIHJuPUFuYXRvbCBydD0xMTI5ODM5NTA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEyOTgzOTQ2OQppY2ggd2FycyBuaWNodCwgaWNoIHdvbGx0ZSBlcyBuaWNodCwgd2FzIGdlaHQgZGljaCBkYXMgZWlnZW50bGljaCBhbiwKZHJlY2tzYnVsbGUsIHRvdGFsaXRhZXJlciByZWFrdGlvbmFlciwgamV0enQgd2lsbCBpY2ggZ2FyIG5pY2h0IG1laHIgc3BpZWxlbiwKc28sIGRhcyBoYXN0ZSBkYXZvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogYml0dGUgc3BpZWxwYXVzZW4gKEFuYXRvbCwgMjAuIE9rdCAyMDA1LCAyMjoyMToxNyk6Cn4jISBybj1NdWFkaWIgcnQ9MTEyOTgzOTU1OSByZz1zY2htYXJybgp+IyEgdGlkPTExMjk4Mzk0NjkKRHUgZ2xhdWJzdCBhdWNoIG5vY2gsIGRhc3MgZnJ1ZWhlciBhbGxlcyBiZXNzZXIgd2FyPyEKCkV3aWcgR2VzdHJpZ2VyLiBNZW50YWxlcyBJbmVydC4gVW5iZXNjaHVsYmFyZXMgU3R1ZWNrIEJpb21hc3NlLgoKUGFoLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGJpdHRlIHNwaWVscGF1c2VuIChNdWFkaWIsIDIwLiBPa3QgMjAwNSwgMjI6MjE6MzcpOgp+IyEgcm49QW5hdG9sIHJ0PTExMjk4Mzk2Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTI5ODM5NDY5CmR1IGR1IGR1IGR1IGR1IE1VRERFUgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogYml0dGUgc3BpZWxwYXVzZW4gKEFyaywgMjAuIE9rdCAyMDA1LCAyMjo1MDo0NCk6Cn4jISBybj1NdWFkaWIgcnQ9MTEyOTgzOTY5NyByZz1zY2htYXJybgp+IyEgdGlkPTExMjk4Mzk0NjkKQmV0cnVnISBJY2ggaGFiZSBnYXIga2VpbmUgTWFpbCBiZWtvbW1lbi4gRGllc2VyIEhhY2tlciBmYWVuZ3QgbWVpbmUgTWFpbCBhYgo6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFsa29ob2wsIDIyLiBPa3QgMjAwNSwgMTM6MDg6NDQpOgpNZXJrb3NoIHJ1ZnQgYXVzIGRlciBBcmVuYSBhdWYgZGllIFRyaWJ1ZW5lbiA6Cm9oIHdlbHQuLiBpY2ggbXVzcyBpZGggY2xhc3Nlbi4uLgpbVG9kOkxhcnNdIEpvaGFubmEgdm9uIE9ybGVhbnMgaGF0IGdlcmFkZSBNZXJrb3NoIHVtZ2VicmFjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGVzdFRlc3RUZXN0IChPZ28sIDIzLiBPa3QgMjAwNSwgMjI6MDM6NDQpOgoxLiBTY2hyZWliZSBlaW5lbiBBcnRpa2VsIGluIFNjaG1hcnJuCjIuID8/PwozLiBQcm9maXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUZXN0VGVzdFRlc3QgKEdyaW1tYm9ybiwgMjMuIE9rdCAyMDA1LCAyMjowOTo0Mik6Cn4jISBybj1PZ28gcnQ9MTEzMDA5NzgyNCByZz1zY2htYXJybgp+IyEgdGlkPTExMzAwOTc4MjQKVGVzdCBtaXNzZ2x1ZWNrdCwgaWNoIGhhYmUga2VpbmVuIEFydGlrZWwgZ2VzZWhlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUZXN0VGVzdFRlc3QgKE1lc2lyaWksIDIzLiBPa3QgMjAwNSwgMjM6Mjk6MjMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMzAwOTgxODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMwMDk3ODI0CldhcyB3b2xsdGVzdCBEdSBnZW5hdSB0ZXN0ZW4gT2dvPwpNZXNpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgaGF0IG5pY2h0IGdla2xhcHB0Li4uIChSZXF1aWVtLCAyNC4gT2t0IDIwMDUsIDAxOjQ5OjU4KToKTW9ndXIgcnVmdDogYXVmd2FjaGVuIDopCk1lc2lyaWkgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KRXJ3YXJ0ZXQgKG9mZmxpbmUpOiBNZXNpcmlpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFzIGhhdCBuaWNodCBnZWtsYXBwdC4uLiAoTW9ndXIsIDI0LiBPa3QgMjAwNSwgMDE6NTE6MTgpOgp+IyEgcm49UmVxdWllbSBydD0xMTMwMTExMzk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzMDExMTM5OApkb2NoZG9jaCwgYmVpIG1pbmRlc3RlbnMgZWluZXIgUGVyc29uLi4uIHJhdGUgbWFsIGJlaSB3ZWxjaGVyIDstKSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEYXMgaGF0IG5pY2h0IGdla2xhcHB0Li4uIChSZXF1aWVtLCAyNC4gT2t0IDIwMDUsIDAxOjUyOjI4KToKfiMhIHJuPU1vZ3VyIHJ0PTExMzAxMTE0Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMTMwMTExMzk4CkljaCBrYW5ucyBuaWNodCBzZWluLCBkYSBhdWZ3YWNoZW4gYmVkaW5ndCBoYWV0dGUsIGRhc3MgaWNoIHZvcmhlciBnZXNjaGxhZmVuCmhhZXR0ZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERhcyBoYXQgbmljaHQgZ2VrbGFwcHQuLi4gKE1vZ3VyLCAyNC4gT2t0IDIwMDUsIDAxOjUzOjU4KToKfiMhIHJuPVJlcXVpZW0gcnQ9MTEzMDExMTU0OCByZz1zY2htYXJybgp+IyEgdGlkPTExMzAxMTEzOTgKZGF6dSBmYWVsbHQgbWlyIGpldHp0IG5peCBtZWhyIGVpbiA6KQoKV29iZWkuLi4gdmllbGxlaWNodCBiaXN0IGR1IHdhY2hlciBnZXdvcmRlbj8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERhcyBoYXQgbmljaHQgZ2VrbGFwcHQuLi4gKFJlcXVpZW0sIDI0LiBPa3QgMjAwNSwgMDI6MjY6MDUpOgp+IyEgcm49TW9ndXIgcnQ9MTEzMDExMTYzOCByZz1zY2htYXJybgp+IyEgdGlkPTExMzAxMTEzOTgKTmVpbi4gQWJlciBpY2ggZ2VoIGpldHR6IHNjaGxhZmVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRlc3RUZXN0VGVzdCAoQm9pbmcsIDI0LiBPa3QgMjAwNSwgMDk6MjY6NTkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMzAwOTgxODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMwMDk3ODI0CkljaCBoYWJlIGVpbmVuIHVuYmVzdGltbXRlbiBBcnRpa2VsIGdlc2VoZW4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFRlc3RUZXN0VGVzdCAoSHVtbmksIDI0LiBPa3QgMjAwNSwgMDk6Mjg6MDEpOgp+IyEgcm49Qm9pbmcgcnQ9MTEzMDEzODgxOSByZz1zY2htYXJybgp+IyEgdGlkPTExMzAwOTc4MjQKT2dvIHdpbGwgYmVzdGltbXQgbnVyIGd1Y2tlbiwgd2llIHZpZWxlIERlcHBlbiBhdWYgc2VpbmVuIEFydGlrZWwgYW50d29ydGVuLgpIaWVyIGlzdCBhbHNvIG5vY2ggc28gZWluZXIuIDstKQoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRlc3RUZXN0VGVzdCAoQm9pbmcsIDI0LiBPa3QgMjAwNSwgMDk6Mjk6NDcpOgp+IyEgcm49SHVtbmkgcnQ9MTEzMDEzODg4MSByZz1zY2htYXJybgp+IyEgdGlkPTExMzAwOTc4MjQKQWxzbyBiaXNoZXIgaGF0IG51ciBlaW5lciBhdWYgT2dvcyBBcnRpa2VsIGdlYW50d29ydGV0LiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBUZXN0VGVzdFRlc3QgKEh1bW5pLCAyNC4gT2t0IDIwMDUsIDA5OjMwOjIzKToKfiMhIHJuPUJvaW5nIHJ0PTExMzAxMzg5ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMwMDk3ODI0ClN0aW1tdC4gbmFqYS4gRWluZSBBbnR3b3J0IGF1ZiBlaW5lIEFudHdvcnQgYXVmIGVpbmVuIEFydGlrZWwgaXN0IGphIGlyZ2VuZHdpZQphdWNoIGVpbmUgQW50d29ydCBhdWYgZGVuIEFydGlrZWwsIG9kZXI/CgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVGVzdFRlc3RUZXN0IChab29rLCAyNC4gT2t0IDIwMDUsIDEwOjI5OjQ5KToKfiMhIHJuPUh1bW5pIHJ0PTExMzAxMzkwMjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMwMDk3ODI0CmR1IGtsaW5nc3Qgc2VociBtZWdhc2NobWFycm5pZywgaHVtbmkuIHpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBUZXN0VGVzdFRlc3QgKEFsa29ob2wsIDI0LiBPa3QgMjAwNSwgMTA6MzA6MjEpOgp+IyEgcm49Wm9vayBydD0xMTMwMTQyNTg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzMDA5NzgyNAppc3QgYW50d29ydGVuIHRyYW5zaXRpdiwgSHVtbmk/CgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBUZXN0VGVzdFRlc3QgKEh1bW5pLCAyNC4gT2t0IDIwMDUsIDE0OjQxOjM2KToKfiMhIHJuPUFsa29ob2wgcnQ9MTEzMDE0MjYyMSByZz1zY2htYXJybgp+IyEgdGlkPTExMzAwOTc4MjQKMS4gQW50d29ydGVuIGlzdCBuaWNodCBzeW1tZXRyaXNjaC4KMi4gUmVmbGV4aXZlcyBBbnR3b3J0ZW4gbmVubnQgbWFuIFNlbGJzdHJlcGx5IHVuZCBpc3QgdmVyYm90ZW4uCjMuIEFudHdvcnRlbiBpc3QgYWJlciBUcmFuc2l0aXYuCgpBbnR3b3J0ZW4gaXN0IGtlaW5lIEFlcXVpdmFsZW56cmVsYXRpb24uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVGVzdFRlc3RUZXN0IChab29rLCAyNC4gT2t0IDIwMDUsIDE1OjE1OjI3KToKfiMhIHJuPUh1bW5pIHJ0PTExMzAxNTc2OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMwMDk3ODI0Ckthbm5zdCBEdSBkYXMgYXVjaCBpbiBlaW5lIFdvcmQtRGF0ZWkgc2NocmVpYmVuIHVuZCBzY2hvZW4gYWxzIEdlc2NoaWNodGUKb2RlciBCcmllZiBmb3JtYXRpZXJlbj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogVGVzdFRlc3RUZXN0IChCb2luZywgMjQuIE9rdCAyMDA1LCAxNTo0NDoxMCk6Cn4jISBybj1ab29rIHJ0PTExMzAxNTk3Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMwMDk3ODI0CkFyZ2ghIEZyYWcgSHVtbmkgZG9jaCBuaWNodCBzb3dhcyEgOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFRlc3RUZXN0VGVzdCAoRGFya2xvciwgMjQuIE9rdCAyMDA1LCAxNjoxODoyMCk6Cn4jISBybj1Cb2luZyBydD0xMTMwMTYxNDUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzMDA5NzgyNApadSBzcGFldCBlciBoYXRzIGdldGFuLi4uCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogVGVzdFRlc3RUZXN0IChNdWFkaWIsIDI0LiBPa3QgMjAwNSwgMTk6MDc6MzkpOgp+IyEgcm49RGFya2xvciBydD0xMTMwMTYzNTAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzMDA5NzgyNApvYiBodW1uaSBlaW5lIGdlc2NoaWNodGUgdWViZXIgZGFzIGFsa29ob2xrcmFua2UgZ3VtbWliYWVyY2hlbiBrbGF1cywgZGFzIHNpY2gKaW4gZGFzIGtva2FpbnNjaG51cGZlbmRlIGthbWVsIG1hcm1lbCB2ZXJsaWVidCB1bmQgZGFiZWkgZGllIHdlbHQgdm9yIGRlbQpib2VzZW4gbXVua2VsbWF1bHd1cmYga3Juc2NoIHJldHRldCBzY2hyZWliZW4ga2Fubj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBUZXN0VGVzdFRlc3QgKEh1bW5pLCAyNC4gT2t0IDIwMDUsIDE5OjI1OjUwKToKfiMhIHJuPU11YWRpYiBydD0xMTMwMTczNjU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzMDA5NzgyNApMYXV0IGtsYW5nZW4gZGllIExpZWRlciwgZGllIEtsYXVzIHNhbmcsIHZvbSBIdWVnZWwgaGluYWIuICJIZXV0ZSBibGF1LCBtb3JnZW4KYmxhdSB1bmQgdWViZXJtb3JnZW4gd2llZWVlZGFhYWFhYWFhYWEhIiBncm9laGx0ZSBLbGF1cywgZGFzIGFsa29ob2xrcmFua2UKR3VtbWliYWVyY2hlbi4gSmEsIGRhcyB3YXIgc2Nob24gd2lya2xpY2ggZWluIHNjaG9lbmVzIExlYmVuLCBkZW4gZ2FuemVuIFRhZwp0b3RhbCBiZXNvZmZlbi4gS2xhdXMgc3RvZXJ0ZSBhdWNoIG5pY2h0IG1laHIsIGRhc3MgZXIgZGFiZWkgbmljaHQgd2lya2xpY2gKcHJvZHVrdGl2IHdhciwgc2NobGllc3NsaWNoIG1hY2h0ZSBkYXMgamEgZWluZmFjaCBudXIgU3Bhc3MsIGdlbmF1IHdpZSBSVEwgSUkKZnJ1ZWhlci4KCkFuZGVyZSBMZXV0ZSBrb25udGVuIHNpY2ggaGluZ2VnZW4gZWhlciBudXIgdWViZXJnZWJlbiwgd2VubiBzaWUgS2xhdXMgZHVyY2gKZGllIFN0cmFzc2UgdG9ya2VsbiBzYWhlbi4gRXIgd2FyIGF1Y2ggd2lya2xpY2gga2VpbiBzY2hvZW5lciBBbmJsaWNrOiBFciBzYWgKdm9tIEFsa29ob2wgdG90YWwgemVyZnJlc3NlbiBhdXMsIGRlbm4gc2NobGllc3NsaWNoIGdyaWZmIEFsa29ob2wgc2VpbmUKR2x1a29zZXp1Y2tlcnN0cnVrdHVyIGFuLiBEYXMgc3RvZXJ0ZSBpaG4gamVkb2NoIG5pY2h0LiBFciBnaW5nIHdlaXRlciBzZWluZW0Kc2NobGltbWVuLCB0cmlua2VuZGVuIEdlc2NoYWVmdCBuYWNoIHVuZCBsaWVzIGRpZSBXZWx0IHVlYmVyIGlobiBkZW5rZW4sIHdhcwpzaWUgd29sbHRlLgoKRG9jaCBhbiBkaWVzZW0gVGFnIGFlbmRlcnRlIHNpY2ggZGFzIGFsbGVzIHNjaGxhZ2FydGlnLiAiS2FtZWxlIHNpbmQgenVtCnZvZWdlbG4gZGEhIiBicnVlbGx0ZSBLbGF1cyBnZXJhZGUsIGVpbmUgbmV1ZSwgZ3JhdXNhbWUgRWlnZW5rcmVhdGlvbiB2b24gaWhtLApkaWUgZGllIFdlbHQgd2lya2xpY2ggbmljaHQgYnJhdWNodGUgLSBuYWphLCBhdXNzZXIgS2xhdXMgYmVtZXJrdGUgYXVjaApuaWVtYW5kLCBkYXNzIGRhcyBrZWluIEF1c3J1Ziwgc29uZGVybiBlaW4gTGllZCB3ZXJkZW4gc29sbHRlLiBNYW4ga29ubnRlIGVzCmV2ZW50dWVsbCBhbiBkZXIgendlaXRlbiBoaW50ZXJoZXJnZXNjaG9iZW5lbiBaZWlsZSAidHJhbGFsYSIgZXJrZW5uZW4sIGFiZXIKYXVjaCBkYXMgaXN0IG5pY2h0IHNpY2hlci4KCkRhIHN0YW5kIHZvciBLbGF1cyBlaW4gS2FtZWwuIEVpbiBzZWhyLCBzZWhyIGF1ZmdlZHJlaHRlcyBLYW1lbC4gRWluIEthbWVsLApkYXMgZWlnZW50bGljaCBzY2hvbiBnYXIgbmljaHQgbWVociByaWNodGlnIGxhdWZlbiBrb25udGUsIGRlbm4gZXMgd2FyIHZvZWxsaWcKenVnZWRyb2VobnQuIEVzIGh1ZXBmdGUgZGF1ZXJuZCBhdWYgdW5kIGFiIHVuZCBoYWV0dGUgS2xhdXMgYmVpbmFoZQp6ZXJ0cmFtcGVsdC4gIkhlLCBEdSBkYSEiIHNhZ3RlIGRhcyBLYW1lbC4KCktsYXVzIHNjaGF1dGUgYXVmLiBEYSByZWRldGUgamVtYW5kIG1pdCBpaG0hIERhcyB3YXIgamEgdW5nbGF1YmxpY2guIEJpc2hlcgpoYXR0ZSBub2NoIG5pZSBqZW1hbmQgbWl0IGlobSBnZXJkZXQsIGRhIGVyIHNvIFNjaGVpc3NlIGF1c3NhaCB1bmQgaW1tZXIKc292aWVsIEFsa29ob2wgdHJhbmsgdW5kIHNvIGZ1cmNodGJhcmUgTGllZGVyIHNhbmcuIFByb21wdCBmaWVsIEtsYXVzIGVpbgpHZWRpY2h0IGVpbi4KCiJEdSBiaXN0IGVpbiB3aXJrbGljaCBzY2hvZW5lcyBLYW1lbCwKZGFzIHNpZWh0IGplZGVyLCBkYSBnZWh0IGtlaW5lciBmZWhsLgpEdSBoYXN0IGVpbmVuIHdpcmtsaWNoIHNjaG9lbmVuIEhvZWNrZXIsCmljaCBnbGF1YmUgZ2FyLApEdSBiaXN0IGVpbiBEcm9tZWRhciwKdW5kIGxpZXN0IGFiZW5kcyBndXRlIFNjaG1vZWtlciEiCgpLbGF1cyBoYXR0ZSBkYWJlaSBnYW56IHJvdGUgQmFja2VuIGJla29tbWVuICh3YXMga2VpbiBXdW5kZXIgd2FyLCBkZW5uIGVyIHdhcgplaW4gcm90ZXMgR3VtbWliYWVyY2hlbiB1bmQgc2VpdCAyIFNla3VuZGVuIGluIGRhcyBLYW1lbCB2ZXJsaWVidCkuCgpEYXMgS2FtZWwgZ3JpbnN0ZSBudXIgenVnZWRyIm9obnQgdW5kIGxhY2h0ZSBsYXV0ICJ1YmVyIGRhcyBHZWRpY2h0LgoKRXMgbGFjaHRlIHNvIGxhdXQsIGRhc3MgZXMgYXVmIGRlbiBHdWxsaWRlY2tlbCBzcHJhbmcsIHVudGVyIGRlbSBkZXIKSHVuZHNnZW1laW5lIE11bmtlbG1hdWx3dXJmIEtybnNjaCBnZXJhZGUgaGVyYXVza3JpZWNoZW4gd29sbHRlLCB1bSBkaWUgV2VsdAptaXQgc2VpbmVyIFVlYmVyYWxsLUFsbGVzLVp1Z2xlaWNoLVRvZXQtQm9tYmUgenUgemVyc3RvZXJlbi4gRGFiZWkgZmllbCBkaWUKQm9tYmUgaW5zIFdhc3NlciAodW50ZXIgZGVtIEd1bGxpZGVja2VsIHdhciBzY2htdXR6aWdlcyBXYXNzZXIpIHVuZCBLcm5zY2gKd3VyZGUgemVycXVldHNjaHQuCgpEaWUgQm9tYmUgZ2luZyBrYXB1dHQsIEtybnNjaHMgTGVpY2hlIGZpZWwgaW5zIFdhc3NlciB1bmQgd3VyZGUgd2VnZ2VzY2h3ZW1tdC4KV2FyIGF1Y2ggYmVzc2VyIHNvLgoKTWFybWVsIChzbyBoaWVzcyBkYXMgS2FtZWwpIGxhY2h0ZSBub2NobWFsIHVuZCBnaW5nIHdlaXRlci4gS2xhdXMgdHJhbmsgbm9jaAplaW4gd2VuaWcgd2VpdGVyLCBkYW1pdCBlciBlaW5lbiBGaWxtcmlzcyBiZWthbSB1bmQgZGFzIEthbWVsIHZlcmdlc3Nlbgprb25udGUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFRlc3RUZXN0VGVzdCAoSGlnaGxhbmRlciwgMjQuIE9rdCAyMDA1LCAyMDo0MDowMyk6Cn4jISBybj1IdW1uaSBydD0xMTMwMTc0NzUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzMDA5NzgyNApVbmQgZGFzIHBvc3Rlc3QgRHUgamV0enQgaW0gSWNld2FycyBSUEctRm9ydW0gdW5kIHphZWhsc3QgZGllIFNla3VuZGVuLApiaXMgd2lyIGVpbmUgS3JpZWdzZXJrbGFlcnVuZyBoYWJlbiAqRyoKCkhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFRlc3RUZXN0VGVzdCAoWm9vaywgMjQuIE9rdCAyMDA1LCAyMDo0MDozNyk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTExMzAxNzkyMDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMwMDk3ODI0CkRBRlVFUiEhITFlbGYhIQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBUZXN0VGVzdFRlc3QgKEFuYXRvbCwgMjQuIE9rdCAyMDA1LCAyMDo0MDo1Myk6Cn4jISBybj1ab29rIHJ0PTExMzAxNzkyMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMwMDk3ODI0CldhcyBnaWJ0J3MgYmVpIFJlXjEwMD8gCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFRlc3RUZXN0VGVzdCAoWm9vaywgMjQuIE9rdCAyMDA1LCAyMDo0MTo1Myk6Cn4jISBybj1BbmF0b2wgcnQ9MTEzMDE3OTI1MyByZz1zY2htYXJybgp+IyEgdGlkPTExMzAwOTc4MjQKRWdhbC4gSGF1cHRzYWNoZSBpY2ggaGFiZSBuYWNoIGNhLiAxMEsgUmVoZW4gZGllIG1laXN0ZW4gUmVoZSBnZXNjaHJpZWJlbi4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogVGVzdFRlc3RUZXN0IChHbG9pbnNvbiwgMjQuIE9rdCAyMDA1LCAyMDo0NjowMCk6Cn4jISBybj1ab29rIHJ0PTExMzAxNzkzMTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMwMDk3ODI0CkljaCBzZXR6dCAxMGsgTWFybWVsYWRlIGF1ZiBSZV4xMTEgYXVzLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBUZXN0VGVzdFRlc3QgKFJlcXVpZW0sIDI0LiBPa3QgMjAwNSwgMjA6NDY6NDQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEzMDE3OTU2MCByZz1zY2htYXJybgp+IyEgdGlkPTExMzAwOTc4MjQKbGllZmVyc3QgZHUgYW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogVGVzdFRlc3RUZXN0IChHbG9pbnNvbiwgMjQuIE9rdCAyMDA1LCAyMDo0Njo1OCk6Cn4jISBybj1SZXF1aWVtIHJ0PTExMzAxNzk2MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMwMDk3ODI0CktsYXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IFRlc3RUZXN0VGVzdCAoUmVxdWllbSwgMjQuIE9rdCAyMDA1LCAyMDo0Nzo0Mik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTMwMTc5NjE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzMDA5NzgyNApuYSBkYW5uIG11ZXNzZW4gd2lyIGRhcyBoaWVyIGpldHp0IGxlaWRlciBub2NoIGJpcyBSZTExMSBmb3J0c2V0emVuLiBJY2ggbWFnCk1hcm1lbGFkZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdvdHQgYWxzIG5ldXRyYWxlcyBFbGVtZW50IGJ6Z2wgZGVyIEFkZGl0aW9uLi4uPyAoQW5hdG9sLCAyNC4gT2t0IDIwMDUsIDIxOjMxOjE2KToKClpvb2sgc2FndDogRGllIDAgYmluIGljaC4KCgprd0YsCkFuYXRvbCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBUZXN0VGVzdFRlc3QgKEFudGhlYSwgMjUuIE9rdCAyMDA1LCAwOTowNjo0MCk6Cn4jISBybj1SZXF1aWVtIHJ0PTExMzAxNzk2NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMwMDk3ODI0ClRqYSwgbmljaHQgbnVyIER1LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IFRlc3RUZXN0VGVzdCAoUmVxdWllbSwgMjUuIE9rdCAyMDA1LCAxNjoxMjo1Mik6Cn4jISBybj1BbnRoZWEgcnQ9MTEzMDIyNDAwMCByZz1zY2htYXJybgp+IyEgdGlkPTExMzAwOTc4MjQKRGFzIGlzdCBkb2NoIGd1dCwgZGFubiBrb2VubmVuIHdpciBqYSBqZXR6dCBhYndlY2hzZWxuZCBiaXMgMTExIHNjaHJlaWJlbi4gSWNoCm5laG0gZGllIHVuZ2VyYWRlbiBaYWhsZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBUZXN0VGVzdFRlc3QgKE5pY29sYWksIDI1LiBPa3QgMjAwNSwgMTY6NDg6NTEpOgp+IyEgcm49UmVxdWllbSBydD0xMTMwMjQ5NTcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzMDA5NzgyNAphYiBuYWNoIG1lZ2FzY2htYXJybiB3byBpaHIgaGluZ2Vob2VydCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IFRlc3RUZXN0VGVzdCAoR3JpbW1ib3JuLCAyNS4gT2t0IDIwMDUsIDE2OjQ5OjE3KToKfiMhIHJuPU5pY29sYWkgcnQ9MTEzMDI1MTczMSByZz1zY2htYXJybgp+IyEgdGlkPTExMzAwOTc4MjQKTmV2ZXIhIEtlbmllIFZlcnVucmVpbmlndW5nZW4gbWl0IGFuZGVyZW4gdGhyZWFkcyBpbiBtZWdhc2NobWFycm4hCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBUZXN0VGVzdFRlc3QgKFJlcXVpZW0sIDI1LiBPa3QgMjAwNSwgMTY6NTI6MjEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMzAyNTE3NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMwMDk3ODI0CkF1c3NlcmRlbSBoYWIgaWNoIGRhcyBhYmJlc3RlbGx0LiBVbmQgaWNoIGJyYXVjaCBkaWUgTWFybWVsYWRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdGF0aSBNYXJidXJnIC4uLiAoTXVhZGliLCAyNi4gT2t0IDIwMDUsIDE4OjE2OjEyKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMTMwMzA5NjgxIG9nPXRyZWZmZW4KfiMhIG9uPVpvb2sgb3Q9MTEzMDI3OTc3NSBvZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHJuPVpvb2sgcnQ9MTEzMDI3OTc0NSByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTMwMjc5NzI3CnN1Y2h0IGRpZSByZWNodHNjaHJlaWJmZWhsZXIhIDspIHpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERyYWNoZW4gZ2VzdWNodCAoR2xvaW5zb24sIDI3LiBPa3QgMjAwNSwgMTQ6MzI6NTUpOgp+IyEgb249R2xvaW5zb24gb3Q9MTEzMDQxNjM2OSBvZz1zdWNoZS1iaWV0ZQp+IyEgcm49TW9yZ290aCBydD0xMTMwNDE2MzQzIHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTEzMDQwOTEzOQpMYWVkZGFzIGdyb3NzZSBTY2h3ZXN0ZXIgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogVGVzdFRlc3RUZXN0IChLZWxseWJ1bmR5LCAyNy4gT2t0IDIwMDUsIDIxOjAxOjQ3KToKfiMhIHJuPVJlcXVpZW0gcnQ9MTEzMDI1MTk0MSByZz1zY2htYXJybgp+IyEgdGlkPTExMzAwOTc4MjQKUmVeMjcuIFB1bmt0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdGF0aSBpbiBCb2NodW0gKE1vcmdvdGgsIDI3LiBPa3QgMjAwNSwgMjM6MTk6NDMpOgp+IyEgcm49SHVtbmkgcnQ9MTEzMDQxNzEyOSByZz10cmVmZmVuCn4jISB0aWQ9MTEzMDM1OTM2NQpIbS4uLkR1IGtvbW1zdCBzY2h3YXJ6LiBBVUEuIGFsc28gcm9zYSBtaXQgYmlzc2wgYmx1dCBkcmluLi4udW5nZXN1bmQgYWJlcgp2aWVsbGVpY2h0IG5vY2ggb2sgLi4uIGFiZXIgc2Nod2Fyej8gdXJncwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFRlc3RUZXN0VGVzdCAoQmFtYmksIDMwLiBPa3QgMjAwNSwgMTA6NDA6MzApOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEzMDE3OTU2MCByZz1zY2htYXJybgp+IyEgdGlkPTExMzAwOTc4MjQKV2VsY2hlIE1hc3NlaW5oZWl0IGhhdCAiMTBrIE1hcm1lbGFkZSI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogVGVzdFRlc3RUZXN0IChSZXF1aWVtLCAzMC4gT2t0IDIwMDUsIDExOjA0OjMwKToKfiMhIHJuPUJhbWJpIHJ0PTExMzA2NjUyMzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMwMDk3ODI0CkVpbmhlaXRlbi4gU3BpZWx0ZXN0IGR1IEljZXdhcnMgd3Vlc3N0ZXN0IGR1IGRhcyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEdydW5kZWlua29tbWVuIChDcm9mdCwgMzAuIE9rdCAyMDA1LCAxMzoxNjo0Nyk6Cn4jISBybj1HYWJ5bG9uIHJ0PTExMzA2NzQyNzYgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExMzA2Mjc1MTkKR3JpbW1ib3JuIGdlcmVjaHQgYXVjaCBkaWUgUnVicmlrIHdlY2hzZWxuIC4uLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBUZXN0VGVzdFRlc3QgKENhdHdlYXpsZSwgMzEuIE9rdCAyMDA1LCAwODo1MjoxNCk6Cn4jISBybj1CYW1iaSBydD0xMTMwNjY1MjMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzMDA5NzgyNAprCgpZVEMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXMgaXN0IGRhcz8gKEdsb2luc29uLCAgMS4gTm92IDIwMDUsIDEwOjQ2OjM2KToKfiMhIHJuPUtlc3NhIHJ0PTExMzA4MDU1ODQgcmc9d3d3Cn4jISB0aWQ9MTEzMDgwNTU4NApJY2gga2FubiBtaXIga2VpbmVuIEZhbGwgdm9yc3RlbGxlbiwgZnVlciBkZW4gbWFuIHNvd2FzIHdpcmtsaWNoIGJyYXVjaHQgOikKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRmFzc2JpZXIgb2RlciBGbGFzY2hlbmJpZXI/IChab29rLCAgMS4gTm92IDIwMDUsIDE0OjE4OjEzKToKfiMhIG9uPUFyayBvdD0xMTMwODUxMDQ1IG9nPXBhcnR5Cn4jISBybj1DaGFnYWxsIHJ0PTExMzA4NTEwMTEgcmc9cGFydHkKfiMhIHRpZD0xMTMwODQ4NDUwCkdlbmF1LCBoYXVwdHNhY2hlIGtlaW4gRmFzdGJpZXIuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUHJvbXB0ZXIgZ2Vob3JzYW0uLi4gKFJlcXVpZW0sICAxLiBOb3YgMjAwNSwgMTc6MTM6MDQpOgpbaWNld2FyczpSZXF1aWVtIHNsYXBzIEdsb2luc29uIGFyb3VuZCBhIGJpdCB3aXRoIGEgbGFyZ2UgdHJvdXQuXQpbaWNld2FyczpHbG9pbnNvbl0gVW0gZWluIEJpdCBoZXJ1bSEgRHUgRmVya2VsLCB3YXMgYmVudXR6dCBkdSBmdWVyIGFsdGUKW2ljZXdhcnM6R2xvaW5zb25dIEdlcmFldGU/CltpY2V3YXJzOlJlcXVpZW1dIGJpZXIuCltpY2V3YXJzOkdsb2luc29uXSBFLWtlbC1oYWZ0IQpbaWNld2FyczpSZXF1aWVtXSB6ZXJzdG9lcmUgZXMuIHRyaW5rcyBhdXMuCkFsa29ob2wgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KRXJ3YXJ0ZXQgKG9mZmxpbmUpOiBBbGtvaG9sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUHJvbXB0ZXIgZ2Vob3JzYW0uLi4gKE11YWRpYiwgIDEuIE5vdiAyMDA1LCAxNzoyNDozNyk6Cn4jISBybj1SZXF1aWVtIHJ0PTExMzA4NjE1ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMwODYxNTg0CmxpZWJlciBmbGFzY2hlbmJpZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFM6IHNwZXppZWxsZW4gU0NQLUNsaWVudCAoR3JpbW1ib3JuLCAgMy4gTm92IDIwMDUsIDIzOjE2OjAzKToKfiMhIG9uPU9nbyBvdD0xMTMxMDU2MDUxIG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMzEwNTU5NDMgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTEzMDk1NzgwOApNdW11aGFtc3RlciwgYmlzdCBkdSdzID8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFM6IHNwZXppZWxsZW4gU0NQLUNsaWVudCAoR3JpbW1ib3JuLCAgMy4gTm92IDIwMDUsIDIzOjE2OjA0KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMTMxMDU2MDkzIG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49T2dvIHJ0PTExMzEwNTYwNTEgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTEzMDk1NzgwOApEdW5rZWwgaXN0IERlaW5lciBSZWRlIFNpbm4uIFdpbGxzdCBEdSBkYW1pdCB3YXMgYXVzZHJ1ZWNrZW4sIG9kZXIga2FubiBpY2hzCm5hY2ggc2NobWFycm4gdmVybGVnZW4/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFM6IHNwZXppZWxsZW4gU0NQLUNsaWVudCAoR3JpbW1ib3JuLCAgMy4gTm92IDIwMDUsIDIzOjE2OjA1KToKfiMhIG9uPU9nbyBvdD0xMTMxMDU2MTMzIG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMzEwNTYwOTMgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTEzMDk1NzgwOApTZWl0IHdhbm4gaW50ZXJlc3NpZXJ0IGRpY2ggYmVpbSBWZXJsZWdlbiwgb2IgamVtYW5kIGRhbWl0IGV0d2FzIGF1c2RydWVja2VuCndpbGw/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTOiBzcGV6aWVsbGVuIFNDUC1DbGllbnQgKEdyaW1tYm9ybiwgIDMuIE5vdiAyMDA1LCAyMzoxNjozMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEzMTA1NjE2NSByZz1zY2htYXJybgp+IyEgdGlkPTExMzA5NTc4MDgKSWNoIGhhdHRlIG5pY2h0IHdpcmtsaWNoIGVyd2FydGV0LCBkYXNzIER1IFNpbm4gdW5kIFByaW56aXAgZGVzIFZlcmxlZ2Vucwp2ZXJzdGVoZW4gd3VlcmRlc3QuIFNlaXMgZHJ1bS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogUzogc3BlemllbGxlbiBTQ1AtQ2xpZW50IChSb25kYSwgIDMuIE5vdiAyMDA1LCAyMzoxODo0Myk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEzMTA1NjE5MyByZz1zY2htYXJybgp+IyEgdGlkPTExMzA5NTc4MDgKV2FlciBuaWNodCB2ZXJsZWdlbiBuYWNoICJtdWVsbCIgcGFzc2VuZGVyPyBPZGVyIERpc2t1c3Npb24gLSB3ZWlsIGVzIGdyYWQgdW0KZGVuIFNpbm4gZGVzIFZlcmxlZ2VucyBhbHMgc29sY2hlcyBnZWh0PwoKUm9uZGEgKnVuc2luaWcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTOiBzcGV6aWVsbGVuIFNDUC1DbGllbnQgKFdlcmJ1bmcsICAzLiBOb3YgMjAwNSwgMjM6MzA6MzkpOgp+IyEgcm49Um9uZGEgcnQ9MTEzMTA1NjMyMyByZz1zY2htYXJybgp+IyEgdGlkPTExMzA5NTc4MDgKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwp8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKfCAgIEggaSBlIHIgICBrIG8gZSBuIG4gdCBlICAgSSBoIHIgZSAgIFcgZSByIGIgdSBuIGcgICBzIHQgZSBoIGUgbiAhICAgfAp8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBLb250YWt0OiB3ZXJidW5nQG1nLm11ZC5kZSAgIHwKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBTOiBzcGV6aWVsbGVuIFNDUC1DbGllbnQgKFJvbmRhLCAgMy4gTm92IDIwMDUsIDIzOjMyOjU1KToKfiMhIHJuPVdlcmJ1bmcgcnQ9MTEzMTA1NzAzOSByZz1zY2htYXJybgp+IyEgdGlkPTExMzA5NTc4MDgKSGVqLCBpY2ggaGFiIG5lbiBQcm9kdWt0IGRlciBLb25rdXJyZW56IGdlbmFubnQhIEtyaWVnIGljaCBudW4gUHJvdmlzaW9uPwpBcmJlaXRldCBoaWVyIHdlciBmdWVyIEVNQz8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBPcHRpc2NoZSBJbGx1c2lvbiAoQWxrb2hvbCwgIDUuIE5vdiAyMDA1LCAxNjoyMzo0NSk6Cn4jISBybj1NYWhhcmV0IHJ0PTExMzEyMDM4ODkgcmc9d3d3Cn4jISB0aWQ9MTEzMTE4OTM3MwpiZWkgd2VsY2hlbSByZWggaXN0IG1lZ2FzY2htYXJybiBlaWdlbnRsaWNoIGluendpc2NoZW4/CgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBPcHRpc2NoZSBJbGx1c2lvbiAoR3JpbW1ib3JuLCAgNy4gTm92IDIwMDUsIDE0OjE1OjI0KToKfiMhIHJuPUFsa29ob2wgcnQ9MTEzMTIwNDIyNSByZz1zY2htYXJybgp+IyEgdGlkPTExMzExODkzNzMKS2FubnN0IER1IGxlaWNodCBzZWxiZXIgcmF1c2ZpbmRlbjogJ2hpbGZlIG1wYScKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogT3B0aXNjaGUgSWxsdXNpb24gKEFsa29ob2wsICA3LiBOb3YgMjAwNSwgMTQ6Mjk6MjgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMzEzNjkzMjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMxMTg5MzczCnRqYSBkaWUgemFobCB3YWVyZSB3ZW5pZ2VyIGFyYmVpdCBnZXdlc2VuIGFscyBzbyBuZW4gc3BydWNoCgp1bmQgbmV0dGUgZ2Vpc3RlciBoYWJlbiBtaXIgZGllIHNjaG9uIG1pdGdldGVpbHQuCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBPcHRpc2NoZSBJbGx1c2lvbiAoR3JpbW1ib3JuLCAgNy4gTm92IDIwMDUsIDE1OjIzOjIzKToKfiMhIHJuPUFsa29ob2wgcnQ9MTEzMTM3MDE2OCByZz1zY2htYXJybgp+IyEgdGlkPTExMzExODkzNzMKIkdpYiBlaW5lbSBNdWRkZXIgZWluZSBaYWhsLCB1bmQgZXIgd2lyZCBmdWVyIGRpZXNlcyBtYWwgenVmcmllZGVuIHNlaW4uIExlaHJlCmlobiBkaWUgdm9yaGFuZGVuZW4gdG9vbHMgenUgYmVudXR6ZW4sIHVuZCBlciB3aXJkIG5pZSB3aWVkZXIgbmFjaGZyYWdlbgptdWVzc2VuLiIgLSBhbHRlcyBjaGluLiBTcHJpY2h3b3J0CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEb3dudGltZSAoQW5hdG9sLCAgOC4gTm92IDIwMDUsIDE4OjM5OjI2KToKfiMhIHJuPU11YWRpYiBydD0xMTMxMzcwNzc5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTEzMTM3MDc3OQpEdSBpZ25vcmllcnN0IGpldHp0IFJlY2huZXIgZG93biwgbXVhZGliIHNjaHVsZCwgaGF0ZSB0b2xsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogR3J1bmRlaW5rb21tZW4gKE11YWRpYiwgIDguIE5vdiAyMDA1LCAyMTowODo0NSk6Cn4jISBybj1ab29rIHJ0PTExMzE0Nzg4Mzggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExMzA2Mjc1MTkKaWNoIHdpbGwgaGllciBhdWNoIGVpbmVuIGhhcHBpbmVzc3Jlc2VhcmNoZXIKYWJlciBlaW5lbiBzZXJpb2VzZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEdydW5kZWlua29tbWVuIChNb3BwaSwgIDguIE5vdiAyMDA1LCAyMTowOTo0MCk6Cn4jISBybj1NdWFkaWIgcnQ9MTEzMTQ4MDUyNSByZz1zY2htYXJybgp+IyEgdGlkPTExMzA2Mjc1MTkKU2VsYnN0bG9lc2NodW5nIChjKSBHcmltbWJvcm4KCk1vcHBpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBZmZlbiAuLi4gKEJsdXRnaWVyLCAxMi4gTm92IDIwMDUsIDEyOjA0OjQzKToKTmV1Z2llciBwYXRzY2h0IG1pdCBzZWluZXIgSGFuZCBhdWYgZWluZXIgVmVybGV0enVuZyBydW0gdW5kIGh1ZXBmdCBhdWYgdW5kCmFiLgoKQmx1dGdpZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouLi4gaW1tZXIgZG9sbGVyIC4uLiAoQmx1dGdpZXIsIDEyLiBOb3YgMjAwNSwgMTI6MDY6MzEpOgpOZXVnaWVyIGx1dHNjaHQgZXR3YXMgYW4gZWluZXIgVmVybGV0enVuZyB1bmQgdmVyemllaHQgZGFzIEdlc2ljaHQuIERhbmFjaApwYXRzY2h0IGVyIG1pdCBkZXIgSGFuZCBkcmF1ZiB1bmQgc2NobmF0dGVydCBsYXV0LgoKQmx1dGdpZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLiB1bmQgc2NobGllc3NsaWNoIC4uLiAoQmx1dGdpZXIsIDEyLiBOb3YgMjAwNSwgMTI6MDc6NDMpOgpOZXVnaWVyIHNwaWVsdCBlaW4gYmlzc2NoZW4gbWl0IGVpbmVyIFZlcmxldHp1bmcuCgpCbHV0Z2llcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKKmh1c3QqIEZMVyAoR2xvaW5zb24sIDEzLiBOb3YgMjAwNSwgMTI6NDM6MjkpOgpbU2VoZXI6UmFpbm1hbl0gbWFnIHdlciA/IDopCltTZWhlcjpSb2xhbmRdIGJpbiBuYWNrdCA6KQpbLi4uXQpbU2VoZXI6R2xvaW5zb25dIE5FSU4sIGljaCBtYWcgZGljaCBqZXR6dCBuaWNodCwgd2VpbCBkdSBuYWNrdCBiaXN0IDopClsuLi5dICgzMHMpCltUb2Q6TGFyc10gRWluIFZhbXBpciBoYXQgZ2VyYWRlIFJvbGFuZCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBWYW1waXJdIERlaW4gQmx1dCBzY2htZWNrdCBndXQuIEhhIGhhIGhhIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDTU9TLWJhdXN0ZWluIGdlc3VjaHQgKEdsb2luc29uLCAxNC4gTm92IDIwMDUsIDIyOjM5OjE2KToKfiMhIHJuPUdhYnlsb24gcnQ9MTEzMjAwNDE4OCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMTMyMDA0MTg4CktsaW5ndCBpcmdlbmR3aWUgbmFjaDogSWNoIGhhYiBmYWxzY2ggZ2VmbGFzaHQ/IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBDTU9TLWJhdXN0ZWluIGdlc3VjaHQgKEdhYnlsb24sIDE0LiBOb3YgMjAwNSwgMjI6NDg6MjEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEzMjAwNDM1NiByZz1zY2htYXJybgp+IyEgdGlkPTExMzIwMDQxODgKYWNoLi4uIGZyYWcgbmljaHQuIGdsYXVidCBtaXIgZWgga2VpbmVyLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQ01PUy1iYXVzdGVpbiBnZXN1Y2h0IChBbGtvaG9sLCAxNC4gTm92IDIwMDUsIDIyOjQ5OjIzKToKfiMhIHJuPUdhYnlsb24gcnQ9MTEzMjAwNDkwMSByZz1zY2htYXJybgp+IyEgdGlkPTExMzIwMDQxODgKd2lyIHd1ZXJkZXMgYWJlciBnZXJuZSB3aXNzZW4gOykKCkFsa2kKClBTLCB3aXIgZ2xhdWJlbiBkaXIgYXVjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQ01PUy1iYXVzdGVpbiBnZXN1Y2h0IChHYWJ5bG9uLCAxNC4gTm92IDIwMDUsIDIyOjU4OjA1KToKfiMhIHJuPUFsa29ob2wgcnQ9MTEzMjAwNDk2MyByZz1zY2htYXJybgp+IyEgdGlkPTExMzIwMDQxODgKcmVjaG5lciBhdWZnZXNjaHJhdWJ0LCBuZXVlIENQVSwgbWVociBzcGVpY2hlciwgenVnZXNjaHJhdWJ0LCBhbmdlbWFjaHQsCkNNT1MgZXJyb3IsIGF1c2dlbWFjaHQsIGFuZ2VtYWNodCwgYmlsZHNjaGlybSBzY2h3YXJ6LCBhdWZnZXNjaHJhdWJ0Li4uCnZlcmdlc3NlbmUgc2NocmF1YmUgbGllZ3QgYXVmIENNT1MtYmVpbmNoZW4sIHNjaHJlaWtyYW1wZiBiZWtvbW1lbi4KCipzZXVmeioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IENNT1MtYmF1c3RlaW4gZ2VzdWNodCAoR2xvaW5zb24sIDE0LiBOb3YgMjAwNSwgMjI6NTk6MzMpOgp+IyEgcm49R2FieWxvbiBydD0xMTMyMDA1NDg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzMjAwNDE4OApBaCwgZGFubiBicmF1Y2hzdCBkdSBkZW4gQXRobG9uIFRodW5kZXJiaXJkIG5pY2h0IG1laHI/IEd1dCwgZGVuIGthbm4gaWNoCmdlYnJhdWNoZW4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBDTU9TLWJhdXN0ZWluIGdlc3VjaHQgKEdsb2luc29uLCAxNC4gTm92IDIwMDUsIDIzOjA0OjA5KToKfiMhIHJuPUdhYnlsb24gcnQ9MTEzMjAwNTQ4NSByZz1zY2htYXJybgp+IyEgdGlkPTExMzIwMDQxODgKQ2hhbmNlIGlzdCBncm9zcywgZGFzcyBlcyBvaG5laGluIG1laHIgYWxzIGRlbiBDTU9TIC4uLiB3YXMgd2FyIGVpZ2VudGxpY2ggYXVmCmRlIEs3IGRyYXVmLCBlaW4gU1JBTSBvZGVyIHNjaG9uIGVpbiBFRVBST00gLi4uIHplcmJyYXRlbiBoYXQuIEFsc28gcnVlY2sgZGVuCkNoaXAgcmF1cywgdW5zZXIgQXRobG9uIGhhdCAnbmUgTWFja2UgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBDTU9TLWJhdXN0ZWluIGdlc3VjaHQgKEdhYnlsb24sIDE0LiBOb3YgMjAwNSwgMjM6MDU6NDEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEzMjAwNTU3MyByZz1zY2htYXJybgp+IyEgdGlkPTExMzIwMDQxODgKd2FzIGljaCBtaWNoIGdlcmFkZSBmcmFnZTogd2Vpc3MgamVtYW5kLCBvYiBlcyBtb2VnbGljaCBpc3QsIHNvIGVpbiBDTU9TCmF1cyBuZW0gYW5kZXJlbiByZWNobmVyIHp1IG5laG1lbiB1bmQgZGFzIGluIGRlbiByZWNobmVyIGVpbnp1YmF1ZW4sIGRhbm4KbmV1IHp1IGZsYXNoZW4gdW5kIHNpY2ggenUgZnJldWVuPwpvZGVyIG11c3MgZXMgdW5iZWRpbmd0IGVpbiBiYXVzdGVpbiB2b20gbWFpbmJvYXJkaGVyc3RlbGxlciBzZWluPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQ01PUy1iYXVzdGVpbiBnZXN1Y2h0IChSb25kYSwgMTQuIE5vdiAyMDA1LCAyMzowNzowNyk6Cn4jISBybj1HYWJ5bG9uIHJ0PTExMzIwMDU5NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMyMDA0MTg4Ck5vZSwgZGEga2FubnN0ZSBpcmdlbmRuZW4gQ2hpcCByZWlucHJvZW1tZWxuLiBWb2VsbGlnIGVnYWwuIERhcyBicnV0emVsdCBmYXN0CmltbWVyLgoKUm9uZGEgKmhhdCBkYXMgZnJ1ZWhlciBiZWkgZGVyIE1vZGVsbGVpc2VuYmFobiBnZW1hY2h0IC0gbmVuIHBhYXIgTmFlZ2VsIGF1ZgpkaWUgU2NoaWVuZW4sIHdlaWwgZGFzIHNvIHNjaG9lbiBnZWJydXR6ZWx0IGhhdCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IENNT1MtYmF1c3RlaW4gZ2VzdWNodCAoR2xvaW5zb24sIDE0LiBOb3YgMjAwNSwgMjM6MDc6MTcpOgp+IyEgcm49R2FieWxvbiBydD0xMTMyMDA1OTQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzMjAwNDE4OApXZW5uIGR1IGRlaW4gQklPUyBnZWJyYXRlbiBoYXN0IC4uLiBkYXMgbWFjaGVuIGRpdmVyc2UgS2xlaW5maXJtZW4gaW4gQmVybGluCkFGQUlSLiBGcmFnIG1hbCBiZWkgSkUgdW5kIEFDb20sIHdlbm4gZGllIGVzIG5pY2h0IHdhcmVuLCB3aXNzZW4gc2llIHNpY2hlcgp3by4gV2VubiBkdSBkZWluIENNT1MgLi4uIGphIGRhbm4gc3RlbGwgZGllIFdlcnRlIGRvY2ggamVkZXMgTWFsIG5ldSBlaW4gOykKRGFzIHBhc3NlbmRlIEJJT1Mgc29sbHRlIGVzIGFiZXIgc2Vpbi4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTXVkZGVybmFjaHd1Y2hzPyAoR2xvaW5zb24sIDE1LiBOb3YgMjAwNSwgMTY6Mzk6NTMpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMTMyMDY5MTM5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTEzMjA0NDY4MApXZW5uIG1hbiBpbSBTdGVoZW4gcGlua2VsdCBrYW5uIG1hbiBhdWNoIG5pY2h0IG11ZGRlbi4gRnJhZyBNZXNpcmlpIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ29ldHRlciAoTXVhZGliLCAxNS4gTm92IDIwMDUsIDE5OjA2OjM4KToKRWluIHNlbHRzYW1lcyBHZWZ1ZWhsIHVlYmVya29tbXQgRGljaCAuLi4KRHUgdmVybGllcnN0IGRpZSBPcmllbnRpZXJ1bmcgLi4uClpvb2sgaG9sdCBEaWNoIHp1IHNpY2guCltCZWlsZWlkOkFwc3VdIGRhbWl0IHdpciBldWNoIHZlcnBydWVnZWxuIGtvZW5uZW4gd2VubiBlcyBuaWNodCBnZWZhZWxsdCA7LSkKWm9vayBoZWJ0IGRpZSBBcm1lLiBFaW4gQmxpdHogc2NobGFlZ3QgaW4gRGlyIGVpbi4KWm9vayBoZWJ0IGRpZSBBcm1lLiBFaW4gQmxpdHogc2NobGFlZ3QgaW4gRGlyIGVpbi4KWm9vayBoZWJ0IGRpZSBBcm1lLiBFaW4gQmxpdHogc2NobGFlZ3QgaW4gRGlyIGVpbi4KWm9vayBoZWJ0IGRpZSBBcm1lLiBFaW4gQmxpdHogc2NobGFlZ3QgaW4gRGlyIGVpbi4KWm9vayBoZWJ0IGRpZSBBcm1lLiBFaW4gQmxpdHogc2NobGFlZ3QgaW4gRGlyIGVpbi4KWm9vayBoZWJ0IGRpZSBBcm1lLiBFaW4gQmxpdHogc2NobGFlZ3QgaW4gRGlyIGVpbi4KWm9vayBoZWJ0IGRpZSBBcm1lLiBFaW4gQmxpdHogc2NobGFlZ3QgaW4gRGlyIGVpbi4KRHUgc2Fnc3Q6ICBhbGxlcyBvaz8KWm9vayBzYWd0OiBOdSBnZWggZG9jaCB0b3QhIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZ29ldHRlciAoWm9vaywgMTUuIE5vdiAyMDA1LCAxOTowNzowMik6Cn4jISBybj1NdWFkaWIgcnQ9MTEzMjA3Nzk5OCByZz1zY2htYXJybgp+IyEgdGlkPTExMzIwNzc5OTgKS2xlaW5lcyBNaXNzZ2VzY2hpY2ssIGljaCBoYXR0ZSAtVG9kIGF1cyB1bmQgd3VuZGVydGUgbWljaCwgZGFzcyBlciAKbmljaHQga2FwdXR0IGdlaHQuIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBnb2V0dGVyIChDaGFnYWxsLCAxNS4gTm92IDIwMDUsIDE5OjA3OjM2KToKfiMhIHJuPVpvb2sgcnQ9MTEzMjA3ODAyMiByZz1zY2htYXJybgp+IyEgdGlkPTExMzIwNzc5OTgKSGF0dGUgaWNoIHNjaG9ubWFsIGVyd2FlaG50LCBkYXNzIER1IG5pY2h0IHphcHBlbiBrYW5uc3QsIFpvb2s/CgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZ29ldHRlciAoWm9vaywgMTUuIE5vdiAyMDA1LCAxOTowNzo1Mik6Cn4jISBybj1DaGFnYWxsIHJ0PTExMzIwNzgwNTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMyMDc3OTk4Ck5pY2h0IG51ciBEdSwgc29nYXIgU3BpZWxlciBoYWJlbiBkYXMgYmVtZXJrdC4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBnb2V0dGVyIChWYW5pb24sIDE1LiBOb3YgMjAwNSwgMjI6MDk6MDkpOgp+IyEgcm49Wm9vayBydD0xMTMyMDc4MDcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzMjA3Nzk5OApVbmQgaWNoIGJpbiBzY2h1bGQgYW4gYWxsZW0gLi4uCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogZ29ldHRlciAoS2VsbHlidW5keSwgMTYuIE5vdiAyMDA1LCAxMzowMzozMyk6Cn4jISBybj1WYW5pb24gcnQ9MTEzMjA4ODk0OSByZz1zY2htYXJybgp+IyEgdGlkPTExMzIwNzc5OTgKSXN0IERlZmF1bHQsIGRhc3MgRHUgc2NodWxkIGJpc3QgYW4gYWxsZW0uIExpZXMgbWFsIGRhcyBLbGVpbmdlZHJ1Y2t0ZSA7LSkKCktlbGx5LCBWKiBoaWxmcmVpY2ggZWluIFJhc3RlcnR1bm5lbG1pa3Jvc2tvcCBydWViZXJyZWljaGVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogZ29ldHRlciAoWm9vaywgMTYuIE5vdiAyMDA1LCAxMzowNjoyNyk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTExMzIxNDI2MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMyMDc3OTk4CkVyaW5uZXJ0IG1pY2ggYW4gZGllICJTYW50YSBLbGF1c2VsIiBhdXMgZWluZW0gS2luZGVyZmlsbS4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEtBIFN0YW1tdGlzY2ggMTcuMTEuIC0gd28/IChSb25kYSwgMTYuIE5vdiAyMDA1LCAxODoxMjowMyk6Cn4jISBybj1ab29rIHJ0PTExMzIxNjA4NTQgcmc9dHJlZmZlbgp+IyEgdGlkPTExMzIxNjA3MDIKRGFubiBtdXNzIGljaCBtZWluZSBHZWRhbmtlbiBuaWNodCBzbyB3ZWl0IHNjaHdlaWZlbiBsYXNzZW4uClJvbmRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmllZGVyZ2FuZyBkZXMgRmFuYXRzeSBpbiBEZXV0c2NobGFuZCAoR2xvaW5zb24sIDE3LiBOb3YgMjAwNSwgMDk6Mjc6MDcpOgp+IyEgcm49WmFybml5YSBydD0xMTMyMjEzMzM3IHJnPWt1bHR1cgp+IyEgdGlkPTExMzIyMTMzMzcKR2VnZW4gZGVuIFVudGVyZ2FuZyB2b24gIkZhbmF0c3kiLCB3YXMgc2ljaCB3YXMgbWl0IEZhbmF0aWtlcm4genUgdHVuIGhhdCwKa2FubiBkb2NoIGtlaW5lciB3YXMgaGFiZW4/IFVuZCB3YXMgaGF0IFJvYmVydCBSYW5raW4sIGVpbiBicml0aXNjaGVyIEF1dG9yLApzbyBkaXJla3QgbWl0IEZhbnRhc3kgaW4gRGV1dHNjaGxhbmQgenUgdHVuPyA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW1hcnlsbGlzLCAxOS4gTm92IDIwMDUsIDIyOjU3OjUxKToKR29saWJhcnQgcnVmdDoga2F0aQpHb2xpYmFydCBydWZ0OiBrYXRpIHVtIGhpbGZlCltUb2Q6TGFyc10gRWluIHp1Z2Vmcm9yZW5lciBXZWloZXIgaGF0IGdlcmFkZSBHb2xpYmFydCB1bWdlYnJhY2h0LgpbVG9kOkVpbiB6dWdlZnJvcmVuZXIgV2VpaGVyXSBIZXksIGRhcyBFaXMgaXN0IHNjaHVsZCEgRXMgd2FyIHdvaGwgZWluZmFjaApbVG9kOkVpbiB6dWdlZnJvcmVuZXIgV2VpaGVyXSBuaWNodCBzdGFiaWwgZ2VudWcuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZS4uLiAoUmVhcGVyLCAyMi4gTm92IDIwMDUsIDIyOjU1OjUyKToKQWltZWUgZmxhdXNjaHQgRGljaCBhdXMgZGVyIEZlcm5lIHdvZWxrY2hlbndlaWNoLgpEdSBzcHVlcnN0IGVpbmVuIHNhbmZ0ZW4gSGF1Y2ggaW4gRGVpbmVtIEhlcnplbi4KRHUgZnVlaGxzdCBEaWNoIG5pY2h0IGd1dC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYW51LCBiZWxlaWRpZ3RlciBLYXRlcj8gKFBlcmRpdGEsIDIzLiBOb3YgMjAwNSwgMjA6MDk6MzUpOgpFYmVuIHBhc3NpZXJ0OgpQZXJkaXRhIGxvZ2d0IGVpbi4KQnJ1bm8gc2NobGVpY2h0IGhlcmVpbi4Ka2F0ZXIgaGF1IGFiCkJydW5vIGhhdXQgYWIuCgpFaW5pZ2UgU2VrdW5kZW4gc3BhZXRlcjoKCkJydW5vIHNjaGF1dCBEaWNoIGFiZmFlbGxpZyBhbi4KCipodWNoKgoKCkFjaCBqYSwgaWNoIHN0ZWggamEgZ2VyYWRlIGJlaSBCcnVubyBQaXJraGVpbWVyIGltIFJhdW0gKmcqClBlcmRpdGEgd2FyIGVyc3RtYWwgZ2FueiBzY2hvZW4gdmVyZHV0enQgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdpZWRlciBtYWwgenUgZmF1bCB6dW0gdWViZXJzZXR6ZW4uIChBbnRoZWEsIDI1LiBOb3YgMjAwNSwgMTI6MDc6NTMpOgp+IyEgcm49UnVtYXRhIHJ0PTExMzI5MTYzMTcgcmc9d2l0emUKfiMhIHRpZD0xMTMyOTEwMzI0CkhtPyBEZXIsIGRlciBtaXIgZGFzIHp1Z2VzY2hpY2t0IGhhdCwgaGF0IGtlaW5lIFF1ZWxsZW5hbmdhYmUgZ2V0YWV0aWd0LCBpY2gKd2VyZGUgZGFzICJQYXRzY2giIGFsc28gdW1nZWhlbmQgd2VpdGVybGVpdGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdm9lbGxpZyB6dXNhbW1lbmhhbmdzbG9zLi4uIChHbm9tZSwgMjYuIE5vdiAyMDA1LCAxMDoyMDoyMCk6CgpNZXNpcmlpIHRlaWx0IERpciBtaXQ6IGljaCBoYWIgbmVuIHNjaGF0dGVuLCBkYXMgcmVpY2h0CgpoZWhlIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZWlobmFjaHRzbWFya3QgRGFybXN0YWR0IChDcm9mdCwgMjguIE5vdiAyMDA1LCAxNzoyOToyOSk6Cn4jISBybj1TdGFtbWdhc3QgcnQ9MTEzMzE5NTI0MCByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTMyOTUxODczCkRhbm4gaXN0IGVzIGF1Y2gga2VpbiBlY2h0ZXIgU3RhbW1nYXN0LCByaWNodGlnPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaHJlY2tsaWNoZXIgSXJydHVtIC4uLiAoQmx1dGdpZXIsIDI5LiBOb3YgMjAwNSwgMjA6NTI6MzMpOgpQcmlueiBWYW5kZWhvbmthciBzYWd0OiBKdWNoaHUsIGhpZXIgaXN0IGRhcyBEb3JmIGRlciBFbGZlbiEgSGllciBmaW5kZSBpY2gKUHJpbnogVmFuZGVob25rYXIgc2FndDogYmVzdGltbXQgTWlzdHJlaXRlciBhdWYgbWVpbmVyIGhlaWxpZ2VuIE1pc3Npb24hClByaW56IFZhbmRlaG9ua2FyIGdlaHQgd3VlcmRldm9sbCBuYWNoIE9zdGVuLgoKSmVkZW5mYWxscyBlcmtlbm50IGVyIGRpZSBFbGZlbiBhbHMgZGFzLCB3YXMgc2llIHNpbmQgOi0pClVuZCBnZXJhZGUgbGFldWZ0IGRlciBEb2VkZWwgYXVmIGRlciBIb2NoZWJlbmUgcnVtLgoKQmx1dGdpZXIgaGlsZnQuIEJlc3RpbW10LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVuZCBzY2hvbiB3aWVkZXIgaGF0IGplbWFuZCBkYXMgZ3Jvc3NlIExvcyBnZXpvZ2VuIChPcmt0b2V0ZXIsIDI5LiBOb3YgMjAwNSwgMjM6MDc6NTgpOgp+IyEgcm49TWlyaWwgcnQ9MTEzMzMwMTk5NiByZz1iYWxhbmNlLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTMzMzAxOTk2Ck5vbWVuIGVzdCBvbWVuPwoKT3JrVCwgZ3JpbnNlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVuZCBzY2hvbiB3aWVkZXIgaGF0IGplbWFuZCBkYXMgZ3Jvc3NlIExvcyBnZXpvZ2VuIChDaGFnYWxsLCAyOS4gTm92IDIwMDUsIDIzOjA5OjIwKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTMzMzAyMDc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzMzMwMTk5NgpNYW4gbXVzcyBzY2hvbiB2ZXJydWVja3Qgc2VpbiwgdW0gYmVpIGRlbSBMYWRlbiBhbnp1aGV1ZXJuLgoKTUMsIHNwcmljaHQgYXVzIGVpZ2VuZXIgRXJmYWhydW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVW5kIHNjaG9uIHdpZWRlciBoYXQgamVtYW5kIGRhcyBncm9zc2UgTG9zIGdlem9nZW4gKEFyaywgMjkuIE5vdiAyMDA1LCAyMzoxMDowMCk6Cn4jISBybj1DaGFnYWxsIHJ0PTExMzMzMDIxNjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTMzMzAxOTk2CkRhcyBoZWlzc3QgImRlZGljYXRlZCIgb2RlciAiUGFzc2lvbiBmb3IgdGhlIGJ1c2luZXNzIiA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBVbmQgc2Nob24gd2llZGVyIGhhdCBqZW1hbmQgZGFzIGdyb3NzZSBMb3MgZ2V6b2dlbiAoQ2hhZ2FsbCwgMjkuIE5vdiAyMDA1LCAyMzoxMDozMCk6Cn4jISBybj1BcmsgcnQ9MTEzMzMwMjIwMCByZz1zY2htYXJybgp+IyEgdGlkPTExMzMzMDE5OTYKSG1tLCBtaXIgZmVobGVuIG5vY2ggZHJlaSBLcmV1emUgYXVmIG1laW5lbSBaZXR0ZWwsIGRhbm4ga2FubiBpY2ggbGF1dAoiQnVsbHNoaXQiIHJ1ZmVuLgoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFVuZCBzY2hvbiB3aWVkZXIgaGF0IGplbWFuZCBkYXMgZ3Jvc3NlIExvcyBnZXpvZ2VuIChSb25kYSwgMjkuIE5vdiAyMDA1LCAyMzoxMDozOCk6Cn4jISBybj1BcmsgcnQ9MTEzMzMwMjIwMCByZz1zY2htYXJybgp+IyEgdGlkPTExMzMzMDE5OTYKSGVpc3N0IGRhcyBuaWNodCAiaWNoIHdhciBqdW5nIHVuZCBicmF1Y2h0ZSBkYXMgR2VsZCI/CgpSb25kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVW5kIHNjaG9uIHdpZWRlciBoYXQgamVtYW5kIGRhcyBncm9zc2UgTG9zIGdlem9nZW4gKENoYWdhbGwsIDI5LiBOb3YgMjAwNSwgMjM6MTA6NTgpOgp+IyEgcm49Um9uZGEgcnQ9MTEzMzMwMjIzOCByZz1zY2htYXJybgp+IyEgdGlkPTExMzMzMDE5OTYKTmVpbiBSb25kYSwgZGFzcyBpc3Qgd2FzIGFuZGVyZXMuIDopCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVW5kIHNjaG9uIHdpZWRlciBoYXQgamVtYW5kIGRhcyBncm9zc2UgTG9zIGdlem9nZW4gKEtlbGx5YnVuZHksIDMwLiBOb3YgMjAwNSwgMjA6NDM6MzIpOgp+IyEgcm49Um9uZGEgcnQ9MTEzMzMwMjIzOCByZz1zY2htYXJybgp+IyEgdGlkPTExMzMzMDE5OTYKRGFzIGhlaXNzdDonTmVuZSwgaWNoIGJpbiB1bnNjaHVsZGlnLiBXaWUgaW1tZXIhIFVtIHdhcyBnZWh0cyBkZW5uPycgKkdHKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU3VjaGUgVGVycmFyaXVtIC4uLiAoT3JrdG9ldGVyLCAxMC4gRGV6IDIwMDUsIDEwOjU1OjIyKToKfiMhIHJuPVZhbmlvbiBydD0xMTM0MjA3NzY5IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTEzNDEzNjAzNQpWaWVsbGVpY2h0IGZyYWd0IGVyIHNpY2ggamEgYXVjaCB3YXJ1bSBBbm9yaXMgb2ZmZW5iYXIgbWVocmVyZSBUZXJyYXJpZW4KdWVicmlnIGhhdCB1bmQgc29yZ3Qgc2ljaCB1bSBkaWUgZnJ1ZWhlcmVuIEJld29obmVyPwoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFN1Y2hlIFRlcnJhcml1bSAuLi4gKFZhbmlvbiwgMTAuIERleiAyMDA1LCAxMDo1Njo0OCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTEzNDIwODUyMiByZz1zY2htYXJybgp+IyEgdGlkPTExMzQxMzYwMzUKU2NobGFuZ2VuIHNpbmQgZWluZSBEZWxpa2F0ZXNzZS4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTdWNoZSBUZXJyYXJpdW0gLi4uIChPcmt0b2V0ZXIsIDEwLiBEZXogMjAwNSwgMTA6NTg6NTgpOgp+IyEgcm49VmFuaW9uIHJ0PTExMzQyMDg2MDggcmc9c2NobWFycm4KfiMhIHRpZD0xMTM0MTM2MDM1CklzdCBkYXMgamV0enQgZGVyIEdydW5kLCB3ZXN3ZWdlbiBkdSBlaW4gVGVycmFyaXVtIGhhYmVuIG1vZWNodGVzdD8KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTdWNoZSBUZXJyYXJpdW0gLi4uIChNYWhhcmV0LCAxMC4gRGV6IDIwMDUsIDExOjAwOjI0KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTM0MjA4NzM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDEzNjAzNQpOdW5qYS4gTWFldXNlIGJyYXVjaHQgZXIgYXVjaCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFN1Y2hlIFRlcnJhcml1bSAuLi4gKFZhbmlvbiwgMTAuIERleiAyMDA1LCAxMTowNToyMCk6Cn4jISBybj1NYWhhcmV0IHJ0PTExMzQyMDg4MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM0MTM2MDM1Ck1hZXVzZSBicmF1Y2h0IGRvY2ggd29obCBqZWRlciBvZGVyPwoKVW5kIE9ya1Q6IE5laW4sIGRhcyB3YXIgbnVyIGVpbmUgRmVzdHN0ZWxsdW5nLiBJY2ggZXNzZSBzZWx0ZW4gRmxlaXNjaC4gSWNoCmthbm4gbWljaCBuaWNodCBlcmlubmVybiwgU2NobGFuZ2VuZmxlaXNjaCBnZWdlc3NlbiB6dSBoYWJlbi4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTdWNoZSBUZXJyYXJpdW0gLi4uIChPcmt0b2V0ZXIsIDEwLiBEZXogMjAwNSwgMTE6MDg6MjgpOgp+IyEgcm49VmFuaW9uIHJ0PTExMzQyMDkxMjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM0MTM2MDM1Ck1hZXVzZSBrYW5uIG1hbiBpbiBlaW5lbSBUZXJyYXJpdW0gdmVybWVocmVuPyBJY2ggaGFldHRlIGdlcm5lIGF1Y2ggZWluZXMhCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFN1Y2hlIFRlcnJhcml1bSAuLi4gKEFub3JpcywgMTAuIERleiAyMDA1LCAxNjoxNDozOCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTEzNDIwOTMwOCByZz1zY2htYXJybgp+IyEgdGlkPTExMzQxMzYwMzUKU25lYWtoZWFkIHdpdGggbGVtb25ncmFzcyBzb2xsIGdhbnogbGVja2VyIHNlaW4sIGF1ZiBSYXR0ZW4gdmVyemljaHRlCmljaCBkYW5rZW5kLiBadXIgYWxsZ2VtZWluZW4gQmVydWhpZ3VuZywgZGVuIFRpZXJlbiBnZWh0IGVzIGd1dCA7KQotIEFub3JpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0YW1tdGlzY2ggaW4gWnVlcmljaD8gKE9ya3RvZXRlciwgMTAuIERleiAyMDA1LCAyMTozMzoyOSk6Cn4jISBybj1KaW1kaWdyaXogcnQ9MTEzNDI0NjcwMyByZz10cmVmZmVuCn4jISB0aWQ9MTEzNDI0NjcwMwpTZWxic3QgYmlzIGluIGRpZSBTY2h3ZWl6IHNvbGwgc2ljaCBkaWUgRXJmaW5kdW5nIGRlcyBJbnRlcm5ldGNhZmVzCmhlcnVtZ2VzcHJvY2hlbiBoYWJlbiA7KQoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3RhbW10aXNjaCBpbiBadWVyaWNoPyAoSmltZGlncml6LCAxMC4gRGV6IDIwMDUsIDIxOjQ1OjQwKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTM0MjQ2ODA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDI0NjcwMwpVbmQgd2FzIHNvbGwgbWlyIGRhcyBoZWxmZW4/Ck1laW5zdCBpY2ggdGlwcGUgb2huZSBOb3QgaXJnZW5kZWluZXMgbWVpbmVyClBhc3N3b2VydGVyIGluIGRlbiBDb21wdXRlciBlaW5lcwpJbnRlcm5ldGNhZmVzIHdvIEtleWxvZ2dlciBkcmFuIHNlaW4ga29lbm50ZW4/CktsYXIgbXVzcyBuaWNodCBzZWluLCBhYmVyIGljaCBob2ZmZSBkYW5uCmRvY2ggbWVociBhdWYgZGVuIFdMQU4gWnVnYW5nIGltIEhvdGVsCihOYXR1ZXJsaWNoIGhhYiBpY2ggZGFubiB2ZXJzY2hsdWVzc2VsdGUgS29tbXVuaWthdGlvbikKSmRHCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFic2FnZSBXaUJ1LVBhcnR5IChHbm9tZSwgMTEuIERleiAyMDA1LCAxOToyNDozMSk6Cn4jISBybj1WYW5pb24gcnQ9MTEzMzg5NTQyMSByZz1wYXJ0eQp+IyEgdGlkPTExMzM4OTUzNjUKYWxzbyBiZWkgREVNIHRlcm1pbiB3dWVyZCBpY2ggYXVjaCBnZXJuZSBiZWkgc2Vpbi4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJydXR6ZWxkaSBCcnV0emVsZGEgKE11YWRpYiwgMTEuIERleiAyMDA1LCAyMTowMjoyNCk6Cn4jISBybj1DaGFnYWxsIHJ0PTExMzQzMzExMzAgcmc9ZC53YWxkCn4jISB0aWQ9MTEzNDMzMTEzMApkYXMgaXN0IGphIHNjaGljawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCcnV0emVsZGkgQnJ1dHplbGRhIChDaGFnYWxsLCAxMS4gRGV6IDIwMDUsIDIxOjI1OjMyKToKfiMhIHJuPU11YWRpYiBydD0xMTM0MzMxMzQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDMzMTEzMApJY2ggc29sbHRlIHZpZWxsZWljaHQgbWFsIHVlYmVybGVnZW4gbWVpbmVuIFJ1ZiB6dSB1ZWJlcmRlbmtlbi4gVm9uIAoiYm9lc2VyIHVuZCBnZW1laW5lciBNYWdpZXIiIHp1ICJsaWViZW4gdW5kIG5ldHRlbiBNYWdpZXIiCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCcnV0emVsZGkgQnJ1dHplbGRhIChNaXJpbCwgMTEuIERleiAyMDA1LCAyMToyNjozNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTEzNDMzMTM0NCByZz1zY2htYXJybgp+IyEgdGlkPTExMzQzMzExMzAKRmluZCBpY2ggYXVjaC4gU2VociBsb2JlbnN3ZXJ0LiBOdW4gZmVobHQgbnVyIG5vY2ggZGVyIFdlaWhlci4gUnVtYXRhLCBhYgphbnMgV2VyayA6KS4KCk1pcmlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCcnV0emVsZGkgQnJ1dHplbGRhIChDaGFnYWxsLCAxMS4gRGV6IDIwMDUsIDIxOjI3OjQ2KToKfiMhIHJuPU1pcmlsIHJ0PTExMzQzMzI3OTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM0MzMxMTMwClVuZCBub2NoIGVpbmVuIFNrbGFeSF5IXkheSEZyZWl3aWxsaWdlbiwgZGVyIFlvcnVzIFN1bXBmIGFlbmRlcnQuCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQnJ1dHplbGRpIEJydXR6ZWxkYSAoQW5hY3Jpb24sIDExLiBEZXogMjAwNSwgMjE6Mjg6NDQpOgp+IyEgcm49Q2hhZ2FsbCBydD0xMTM0MzMyODY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDMzMTEzMApEZW4ga29lbm50ZSBtYW4gZG9jaCBnbGVpY2ggZHVyY2ggbmUgVC1LcmV1enVuZyBlcnNldHplbiAuLi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBCcnV0emVsZGkgQnJ1dHplbGRhIChDaGFnYWxsLCAxMS4gRGV6IDIwMDUsIDIxOjI5OjAyKToKfiMhIHJuPUFuYWNyaW9uIHJ0PTExMzQzMzI5MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM0MzMxMTMwClNjaHJlaWJzdGUgZGllIGZ1ZXIgbWljaD8KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBCcnV0emVsZGkgQnJ1dHplbGRhIChBbmFjcmlvbiwgMTEuIERleiAyMDA1LCAyMToyOTo0NCk6Cn4jISBybj1DaGFnYWxsIHJ0PTExMzQzMzI5NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM0MzMxMTMwCktvcGllciBkaWUgS3JldXp1bmcgYW0gR2xvY2tlbndhbGQgdW5kIG5pbW0gYW5kZXJlIEF1c2dhZW5nZSAuLi4KCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCcnV0emVsZGkgQnJ1dHplbGRhIChNaXJpbCwgMTEuIERleiAyMDA1LCAyMTozMDo0MCk6Cn4jISBybj1BbmFjcmlvbiBydD0xMTM0MzMyOTg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDMzMTEzMApXaWUgd2FlcnMgbWl0IG5lbSBTdGFuZGFyZHVlYmVybGViZW5zYW56dWcsIG1pdCBkZW0gbWFuIGluIFNhZXVyZXNlZW4sCkZldWVyc2JydWVuc3RlLCBTdWVtcGZlIHVuZCB3YXMgd2Vpc3MgaWNoIG5vY2ggYWxsZXMgdGF1Y2hlbiBrYW5uLCB1bSBkZW4KS3JhbSB6dSBiZXJnZW4gOykKCk1pcmlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCcnV0emVsZGkgQnJ1dHplbGRhIChDaGFnYWxsLCAxMS4gRGV6IDIwMDUsIDIxOjMwOjU2KToKfiMhIHJuPUFuYWNyaW9uIHJ0PTExMzQzMzI5ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM0MzMxMTMwClBmZnQsIGltbWVyIGRpZXNlIENvcHkvUGFzdGUtUmFldW1lLiBOYWphLCBtdXNzIGhhbHQgQXJrIGRhcyBiYXVlbiwgb2RlcgpIdW1uaSwgd2VubiBlciBkYXMgR1Mgdm9uIFBhcmRhdXogZmVydGlnIGhhdC4gOikKCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEYW5rZS4gKENoYWdhbGwsIDExLiBEZXogMjAwNSwgMjE6NDU6MzUpOgp+IyEgcm49TXVwZmVsIHJ0PTExMzQzMzM4ODEgcmc9cGFydHkKfiMhIHRpZD0xMTM0MzEzNDM2CktvZW5uZW4gd2lyIGRhbm4gamV0enQgd2llZGVyIHp1ciBUYWdlc29yZG51bmcgdWViZXJnZWhlbiB1bmQgTXVhZGliCmVyc2NoaWVzc2VuPwoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFN1Y2hlIFRlcnJhcml1bSAuLi4gKFpvb2ssIDEyLiBEZXogMjAwNSwgMDA6NDU6MjUpOgp+IyEgb249Wm9vayBvdD0xMTM0MzQ0NzE1IG9nPXN1Y2hlLWJpZXRlCn4jISBybj1NdWFkaWIgcnQ9MTEzNDMzMDAwMyByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTExMzQxMzYwMzUKRHUga2VubnN0IGlobiBuYWVoZXI/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU3VjaGUgVGVycmFyaXVtIC4uLiAoTXVhZGliLCAxMi4gRGV6IDIwMDUsIDA5OjQ1OjQ1KToKfiMhIHJuPVpvb2sgcnQ9MTEzNDM0NDcyNSByZz1zY2htYXJybgp+IyEgdGlkPTExMzQxMzYwMzUKaWNoIHNwZWt1bGllcmUgd2lsZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2VyIG1hZyBrZWluZSBQaG90b3M/IChBbGtvaG9sLCAxMi4gRGV6IDIwMDUsIDE1OjIyOjQxKToKfiMhIHJuPVRhcmFuaXMgcnQ9MTEzNDM5NzA4MyByZz1wYXJ0eQp+IyEgdGlkPTExMzQzNzUxNDMKaWNoIGdsYXViIGljaCBmdWVocmUgdm9yIGFsbGVtIGRhenUsIGRhc3MgYW5kZXJlIGxldXRlIGF1ZiBiaWxkZXJuIHZvbiBwYXJ0eXMKYmVrbG9wcHQgYXVzc2VoZW4gKmcqCgpBbGsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdlciBtYWcga2VpbmUgUGhvdG9zPyAoQW5hY3Jpb24sIDEyLiBEZXogMjAwNSwgMTU6Mzc6MTgpOgp+IyEgcm49QWxrb2hvbCBydD0xMTM0Mzk3MzYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDM3NTE0MwpVbmQgb2J3b2hsIER1IG5pY2h0IG1laHIgYXVmIFBhcnRpZXMgZ2Voc3QsIGJpc3QgZHUgdHJvdHpkZW0gaW1tZXIgZGFiZWksIGdlbGwKOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgaXN0IGVjaHQgdW5oZWltbGljaCEgKFRlcnJvciwgMTMuIERleiAyMDA1LCAwMDoxNDoxMik6Cj4gZndlcgpXaXIgc2luZCBhbGxlIERlaW5lIEZyZXVuZGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFzIGlzdCBlY2h0IHVuaGVpbWxpY2ghIChHcmltbWJvcm4sIDEzLiBEZXogMjAwNSwgMDA6NDM6NTkpOgp+IyEgcm49VGVycm9yIHJ0PTExMzQ0MjkyNTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM0NDI5MjUyCkRhcyBoYWx0ZSBpY2ggZnVlciBlaW4gR2VydWVjaHQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTOiBMYVRlWC1Mb2VzdW5nIHp1bSBOZWJlbmVpbmFuZGVyc2V0emVuIHZvbiBUZXh0ZW4gKEdyaW1tYm9ybiwgMTMuIERleiAyMDA1LCAxMzowMjoyNCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTEzNDQ3NTMzNCBvZz1oYXJkc29mdHdhcmUKfiMhIHJuPVpvb2sgcnQ9MTEzNDQ3NTE2OCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMTM0NDc1MTY4CktsYXIgZ2lidHMgZGFzOiBQYXBpZXJzY2hlcmUgdW5kIFByaXR0c3RpZnQuIFNlaHIgZmxleGliZWwhCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUzogTGFUZVgtTG9lc3VuZyB6dW0gTmViZW5laW5hbmRlcnNldHplbiB2b24gVGV4dGVuIChab29rLCAxMy4gRGV6IDIwMDUsIDEzOjI4OjA1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTM0NDc1MzQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDQ3NTE2OApIYXN0ZSBkYSBuZSBVUkwgenU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTOiBMYVRlWC1Mb2VzdW5nIHp1bSBOZWJlbmVpbmFuZGVyc2V0emVuIHZvbiBUZXh0ZW4gKEdsb2luc29uLCAxMy4gRGV6IDIwMDUsIDEzOjI5OjUxKToKfiMhIHJuPVpvb2sgcnQ9MTEzNDQ3Njg4NSByZz1zY2htYXJybgp+IyEgdGlkPTExMzQ0NzUxNjgKaHR0cDovL3d3dy5tYWxhbmRlcnMuZGUva2FydGVuaWRlZW4uaHRtCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUzogTGFUZVgtTG9lc3VuZyB6dW0gTmViZW5laW5hbmRlcnNldHplbiB2b24gVGV4dGVuIChab29rLCAxMy4gRGV6IDIwMDUsIDE2OjI4OjIzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTM0NDc1MzQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDQ3NTE2OApCZXNzZXJlciBWb3JzY2hsYWcgZWluZXMgdW5nZW5hbm50ZW4gTWl0c3BpZWxlcnM6CgpYWFggdGVpbHQgRGlyIG1pdDogbmltbSBleGNlbCwgbWFjaCBuZW4gc2NyZWVuc2hvdCB1bmQgaGF1IGRhcyBiaWxkIGluIGxhdGV4ClhYWCB0ZWlsdCBEaXIgbWl0OiByZWluCgouLi4gZXR3YXMgc3BhZXRlciAuLi4KClhYWCB0ZWlsdCBEaXIgbWl0OiBoYSEgZWluZSBsYXRleCBsb2VzdW5nIHdpZSBnZXd1ZW5zY2h0LCBpY2ggYmluIGRlciBoZWxkIQoKClpvb2sgc3RvZWhuIGxlaXNlIHZvciBzaWNoIGhpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFM6IExhVGVYLUxvZXN1bmcgenVtIE5lYmVuZWluYW5kZXJzZXR6ZW4gdm9uIFRleHRlbiAoQW5hY3Jpb24sIDEzLiBEZXogMjAwNSwgMTY6MzE6MzMpOgp+IyEgcm49Wm9vayBydD0xMTM0NDg3NzAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDQ3NTE2OApOYSBpbW1lcmhpbiBnZWh0IGRhcyBvaG5lIFN5bnRheHN1Y2hlIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1IGhpZXI/IChNYXJ1LCAxNi4gRGV6IDIwMDUsIDE4OjQyOjE5KToKRGVyIFp3ZXJnZW5wcmllc3RlciBzYWd0OiBIYWxsbywgZGllIEJpZW5lISBEdSBiaXN0IHNpY2hlciBuZXUgaGllci4gV2VubiBEdQpEZXIgWndlcmdlbnByaWVzdGVyIHNhZ3Q6IEZyYWdlbiB6dXIgWndlcmdlbnN0YWR0IGhhc3QsIGRhbm4ga2FubnN0IER1IHNpZSBtaXIKRGVyIFp3ZXJnZW5wcmllc3RlciBzYWd0OiBzdGVsbGVuLCBpbmRlbSBEdSBkZW4gQmVmZWhsICdmcmFnIHByaWVzdGVyIG5hY2gKRGVyIFp3ZXJnZW5wcmllc3RlciBzYWd0OiA8YmVncmlmZj4nIGJlbnV0enQuIEljaCB3dWVuc2NoZSBEaXIgdmllbCBTcGFzcyBpbgpEZXIgWndlcmdlbnByaWVzdGVyIHNhZ3Q6IGRpZXNlciBXZWx0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldSBoaWVyPyAoTWlyaWwsIDE3LiBEZXogMjAwNSwgMDI6MDE6MTYpOgp+IyEgcm49TWFydSBydD0xMTM0NzU0OTM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDc1NDkzOQpKYSwgamEgc2Nob24gZ2VzZWhlbi4gRGEgaWNoIHJlZ2VsbWFlc3NpZyBraWNoZXJuIG11c3Mgd2VubiBpY2ggZGFzIGxlc2UsCmhhYiBpY2ggYmVzY2hsb3NzZW4gZXMgenVtIGZlYXR1cmUgenUgZXJrbGFlcmVuIDspLiBNdXNzIG1pciB3b2hsIGJlaW0gVW1iYXUKZGVzIFByaWVzdGVycyBlbnRnYW5nZW4gc2VpbiAqZy4KCk1pcmlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ2xpZW50IGZ1ZXJzIE1HIChHcmltbWJvcm4sIDE3LiBEZXogMjAwNSwgMjM6NTU6MTIpOgp+IyEgb249R3JpbW1ib3JuIG90PTExMzQ4NjAxMDggb2c9bXVkY2xpZW50cwp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMzQ4NjAwMDQgcmc9bXVkY2xpZW50cwp+IyEgdGlkPTExMzQ4NjAwMDQKSWNoIGxlZyBkYW5uIGdsZWljaCBub2NoIGVpbiBQYWtldCBkYXp1LCBzb2Jlcl9mdWVyX2xpbnV4LnRhci5iejQsIGRhcyBpc3QKdG90YWwga2V3bCB1bmQgc28uIFVuYmVkaW5ndCBhbnNlaGVuISBXZXJzIG5vY2ggbmljaHQga2VubnQ6IERhcyBnaWJ0cyBqZXR6dAphdWNoIGZ1ZXIgTGludXghIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IENsaWVudCBmdWVycyBNRyAoTWlyaWwsIDE4LiBEZXogMjAwNSwgMDA6MTA6NTkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMzQ4NjAxMTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM0ODYwMDA0ClNvIHNlaHIgaWNoIERlaW5lbiBIdW1vciBtYW5jaG1hbCBzY2hhZXR6ZSBHcmltbWJvcm4sIGluIGRpZXNlbSBGYWxsIHdhcgpkYXMgbmljaHQgbnVyIHVlYmVyZmx1ZXNzaWcsIHNvbmRlcm4gd3VlcmRpZ3QgYXVjaCBub2NoIGVpbmUgQXJiZWl0IGhlcmFiLApkaWUgamVtYW5kIHNpY2ggZnVlciBkYXMgTUcgZ2VtYWNodCBoYXQsIHVtIGVzIGFuZmFlbmdlcmZyZXVuZGxpY2hlciB6dQpoYWx0ZW4uIFdpZSBnaW5nIGRvY2ggbm9jaCBkaWVzZSBEaWV0ZXIgTnVociBaaXRhdD8KCk1pcmlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBDbGllbnQgZnVlcnMgTUcgKEdyaW1tYm9ybiwgMTguIERleiAyMDA1LCAwMDoxODowOSk6Cn4jISBybj1NaXJpbCBydD0xMTM0ODYxMDU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDg2MDAwNApOZWluLCBlcyBnZWh0IGRhcnVtIHZvbiAiaXJnZW5kd29oZXIiIEJpbmFlcnBha2V0ZSB6dXIgVmVyZnVlZ3VuZyB6dSBzdGVsbGVuLApvaG5lIGF1Y2ggbnVyIGVpbiAiaWNoIGhhYnMgbWlyIGFuZ2VzZWhlbiwgc2NoZWludCBkYXMgenUgdHVuIHdhcyBlcyB0dW4Kc29sbCIuIER1IG1hZ3N0IGRhcyBhdXMgZGVyIFdpbmRvd3N3ZWx0IGdld29obnQgc2VpbiwgaWNoIGJpbiBlcyBuaWNodC4gVW5kCmhhYmUgbWlyIGVybGF1YnQgZGFzIHp1IGtvbW1lbnRpZXJlbi4KVW5kIGRhcyBaaXRhdCB2b24gSGVycm4gTnVociBsYXV0ZXQ6ICJXZW5uIG1hbiBkYXJhdWYgYW5nZW1lc3NlbiByZWFnaWVydCwKd2lldmllbCBtYWNodCBkYXMgd29obCBiZWkgZ3V0ZXIgRnVlaHJ1bmc/IgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBDbGllbnQgZnVlcnMgTUcgKE1pcmlsLCAxOC4gRGV6IDIwMDUsIDAwOjE5OjQ1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTM0ODYxNDg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDg2MDAwNApFcyBtYWcgamEgc2VpbiwgZGFzcyBEdSBlcyBzbyBnZW1laW50IGhhc3QsIG51ciBsZWlkZXIga2FtIGVzICh1bmQgbmljaHQgbnVyCmJlaSBtaXIpIHZvZWxsaWcgYW5kZXJzIGFuLgoKTWlyaWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IENsaWVudCBmdWVycyBNRyAoTWVya29zaCwgMTguIERleiAyMDA1LCAwMDoyNDowMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEzNDg2MTQ4OSByZz1zY2htYXJybgp+IyEgdGlkPTExMzQ4NjAwMDQKSWNoIGdlYmUgenUsIGljaCBrb21tZSBuaWNodCBnYW56IG1pdC4gVGFyYW5pcyBoYXQgZWluIFRGIGtvbXBpbGllcnQgKGRhcyBpc3QKdWVicmlnZW5zIE9wZW4gU291cmNlKS4gWnVnZWdlYmVuLCB3ZWlsIGRhcyBuaWNodCBpbW1lciBzbyBlaW5mYWNoIGlzdCBtaXQgZGVtCmNvbXBpbGllcmVuLCBhbHMgQmluYXJ5LiBVbmQ/IFdpZXNvIHN0ZWxsc3QgRHUgZGFzIG1pdCBWaXJlbiBhdWYgZWluZSBTdHVmZT8KCldlbm4gRHUgbWlyIG5hY2h3ZWlzdCwgZGFzcyBkYXMgRmlsZSBrb3JydW1waWVydCBpc3QgdW5kIFZpcmVuIHZlcnRlaWx0LApiaXR0ZS4gS29taXNjaCwgZGFzcyBpY2ggZGFtaXQgZGllc2UgUHJvYmxlbWUgYmlzaGVyIG5pY2h0IGhhdHRlLCBzb25kZXJuIGVoZXIKZWluIGRpcmVrdCBsYXVmZmFlaGlnZXMgVEYuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQ2xpZW50IGZ1ZXJzIE1HIChHcmltbWJvcm4sIDE4LiBEZXogMjAwNSwgMDA6MjY6MTEpOgp+IyEgcm49TWlyaWwgcnQ9MTEzNDg2MTU4NSByZz1zY2htYXJybgp+IyEgdGlkPTExMzQ4NjAwMDQKQXUgamEsIGRpZSBzY2h3ZWlnZW5kZSBNYXNzZSBpc3QgYXVmIERlaW5lciBTZWl0ZT8gV2llIGtvbm50ZSBpY2ggZGFzIG51cgp1ZWJlcmhvZXJ0IGhhYmVuLiBBYmVyIG1pciBoYWJlbiBtZWluZXJzZWl0cyB2aWVsZSwgdmllbGUgTGV1dGUsIGRpZSBzaWNoCm5pY2h0IHRyYXVlbiBkYXMgb2VmZmVudGxpY2ggenUgdmVydHJldGVuLCBnZXNhZ3QsIGRhc3Mgc2llIG1pY2ggc2VociB3b2hsCnNlaHIgcmljaHRpZyB2ZXJzdGFuZGVuIGhhYmVuLiBXZWlsIHNpZSBuYWVtbGljaCBSdWJyaWtlbm5hbWVuIGxlc2VuIGtvZW5uZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IENsaWVudCBmdWVycyBNRyAoR3JpbW1ib3JuLCAxOC4gRGV6IDIwMDUsIDAwOjMyOjQwKToKfiMhIHJuPU1lcmtvc2ggcnQ9MTEzNDg2MTg0MSByZz1zY2htYXJybgp+IyEgdGlkPTExMzQ4NjAwMDQKRXIgaGF0IGRpZSBTb3VyY2Uga29tcGlsaWVydC4gQWxzIEJpbmFyeS4gU29zby4gQWxzIHdhcyBkZW5uIHNvbnN0PyBVbmQgaWNoCnN0ZWxsZSBkYXMgbmljaHQgbWl0IFZpcmVuIGF1ZiBlaW5lIFN0dWZlLCBpY2ggc2FnZSBsZWRpZ2xpY2g6ICJEYXMgQXVzZnVlaHJlbgp2b24gY29kZSBhdXMgUXVlbGxlbiwgdWViZXIgZGllIG1hbiBuaWNodCBuYWNoZGVua3QgaXN0IGRhcywgd2FzIGRpZSBWaXJlbgplcnN0IGdyb3NzIGdlbWFjaHQgaGF0Ii4gCgpOaWNodCBpY2ggbXVzcyBuYWNod2Vpc2VuIGRhc3MgZGFzIGZpbGUga29ycnVwdCBpc3QuIEljaCBlcndhcnRlIGVpbmUgZ2V3aXNzZSwKcmVsYXRpdmUgKCEpIFNpY2hlcmhlaXQgZGFzcyBlcyBkYXMgbmljaHQgaXN0IHdlbm4gZXMgbWlyIGFuZ2Vib3RlbiB3aXJkLiBEYXMKa2FubiBkaWUgSGVya3VuZnQgc2VpbiAoYWxzbyB6LkIuIGR1cmNoIGVpbmVuIERpc3RyaWJ1dG9yLCBvZGVyIGR1cmNoIGVpbmVuCmJla2FubnRlbiBQYWNrYWdlciksIG9kZXIgYXVjaCBlaW4gcGVlciByZXZpZXcsIGRhc3MgbWlyIGFsc28gamVtYW5kLCBkZW4gaWNoCmtlbm5lIHVuZCBkZW0gaWNoIHdlc3dlZ2VuIGF1Y2ggaW1tZXIgdmVydHJhdWUsIG1pciBzYWd0IGRhc3MgZGFzIHNjaG9uIGluCk9yZG51bmcgaXN0LgpXZW5uIG1pciBqZW1hbmQgZGVtIGljaCB2ZXJ0cmF1ZSBzYWd0ICJkb3J0IGdpYnRzIGtld2xlIFNvZnR3YXJlIiByZWljaHQgbWlyCmRhcyBuaWNodC4gSWNoIGhhYiBqYSBuaWNodHMgZGFnZWdlbiB3ZW5uIGRhcyBhbmRlcmVuIHJlaWNodC4gSXN0IGVpbiBrdXJ6ZXMKImljaCBoYWJzIGdldGVzdGV0IGJldm9yIGljaCBlcyBoaWVyIG9lZmZlbnRsaWNoIHByb21vdGUiIHdpcmtsaWNoCnVucmVhc29uYWJsZT8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQ2xpZW50IGZ1ZXJzIE1HIChNZXJrb3NoLCAxOC4gRGV6IDIwMDUsIDAwOjQzOjE2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTM0ODYyMzYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDg2MDAwNApPSy4gRGFubiBhbmRlcnMgZ2VmcmFndDogV2FydW0gdHJhdXN0IER1IERpY2ggbmljaHQsIGRhcyBpbiBtdWRjbGllbnRzIHp1CnBvc3RlbiwgZGFzcyBEdSBad2VpZmVsIGFuIFRhcmFuaXNgIEludGVncml0YWV0IGhhc3Q/CgpIdW1uaQooUG9zdGVuZCBtaXQgWndlaXRpZSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IENsaWVudCBmdWVycyBNRyAoQXJhdGhvcm4sIDE4LiBEZXogMjAwNSwgMDE6MDE6MzMpOgp+IyEgcm49TWVya29zaCBydD0xMTM0ODYyOTk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDg2MDAwNApJY2ggd3Vlc3N0ZSBub2NoIHZpZWwgbGllYmVyLCB3YXJ1bSBHcmltbWJvcm4gbmljaHQgaW4gZGVyIExhZ2UgaXN0LCBzZWluZQpLcml0aWsgZGlyZWt0IGluIHNlaW5lciBlcnN0ZW4gQW50d29ydCBmdWVyIGFsbGUgdmVyc3RhZW5kbGljaCB6dSAKZm9ybXVsaWVyZW4gc3RhdHQgc28gZWluZW4gU2NoKiB2b24gc2ljaCB6dSBnZWJlbj8gRGFzIGhhZXR0ZSBtaW5kZXN0ZW5zCnplaG4gQXJ0aWtlbCB1bmQgdmllbGVuIExldXRlbiBuZW4gZGlja2VuIEhhbHMgZXJzcGFydC4KCkJydW1tZWxpZ2UgR3J1ZXNzZSwgQXJhdGhvcm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IENsaWVudCBmdWVycyBNRyAoQ3JvZnQsIDE4LiBEZXogMjAwNSwgMDE6MDU6NTEpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTEzNDg2NDA5MyByZz1zY2htYXJybgp+IyEgdGlkPTExMzQ4NjAwMDQKTWFsIGF1ZiBkaWUgUnVicmlrIGdlYWNodGV0PwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IENsaWVudCBmdWVycyBNRyAoR3JpbW1ib3JuLCAxOC4gRGV6IDIwMDUsIDAyOjU0OjUwKToKfiMhIHJuPUNyb2Z0IHJ0PTExMzQ4NjQzNTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM0ODYwMDA0Ck5laW4sIG9mZmVuYmFyIG5pY2h0LgpVbmQgaWNoIHdlaXNzIGdhciBuaWNodCB3aWUgSHVtbmkgYXVmIGRpZSBJZGVlIGdla29tbWVuIGlzdCBkYXNzIGljaCBhKQpad2VpZmVsIGFuIFRhcmFuaXMnIEludGVncml0YWV0IGhhYmVuIHNvbGx0ZSAoaWNoIGtlbm4gaWhuIG5pY2h0LCBpY2ggaGFiZQphbHNvIGVyc3RtYWwga2VpbmUgTWVpbnVuZyB6dSBzZWluZXIgSW50ZWdyaXRhZXQgLSBpc3QgYWxzbyBmdWVyIG1pY2ggZWluZQoidW5iZWthbm50ZSBRdWVsbGUiKSB1bmQgYikgZGllc2UgUnVicmlrIG5pY2h0IG1pdCBBYnNpY2h0IGdld2FlaGx0IHp1IGhhYmVuLgpEaWUgVW50ZXJzdGVsbHVuZywgZGFzcyBpY2ggaW4gc2NobWFycm4gcG9zdGUgd2VpbCBpY2ggbWljaCAidHJhdWUiLAplcm5zdGdlbWVpbnRlIEtyaXRpayB3b2FuZGVycyB6dSBhZXVzc2VybiwgaXN0IHNjaG9uIHppZW1saWNoIHVudmVyc2NoYWVtdC4KVW5kIGZlcm4gamVkZXIgRXJmYWhydW5nLCBkaWUgZXIgaGllciBtaXQgbWlyIGdlbWFjaHQgaGFiZW4ga29lbm50ZS4gCk5hamEsIHVuZCBkYXNzIEFyYXRob3JuIG5pY2h0IGF1ZiBBbmhpZWIgdmVyc3RlaHQgd2FzIGljaCBtaXQgc28gZWluZXIgUmVwbGlrCmluIHVtZ2VsZW5rdCBpbiBkaWVzZSBHcnVwcGUgc2FnZW4gd2lsbCAtIG5hLCBkYXMgdWViZXJyYXNjaHQgamV0enQgZG9jaCBuaWNodAp3aXJrbGljaCBzbyBzZWhyLCBvZGVyPyAKV2FzIG5hdHVlcmxpY2ggYmxlaWJ0IGlzdCBkaWUgV2FybnVuZywgbmljaHQgZWluZmFjaCBTb2Z0d2FyZSB6dSBpbnN0YWxsaWVyZW4Kd2VubiBtYW4gc2ljaCBkZXIgSGVya3VuZnQgbmljaHQgaGFsYndlZ3Mgc2ljaGVyIGlzdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IENsaWVudCBmdWVycyBNRyAoTWlyaWwsIDE4LiBEZXogMjAwNSwgMTA6MTU6NTIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMzQ4NzA4OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM0ODYwMDA0Cldlbm4gZXMgRGlyIG51ciB1bSBkaWVzZSBXYXJudW5nIGdpbmcsIHdhZXJlIGVzIHZpZWxsZWljaHQgZWluZmFjaGVyIGdld2VzZW4KSHVtbmkgenUgZnJhZ2VuLCBvYiBlciBkZW5uIGdlcHJ1ZWZ0IGhhdCwgb2IgZGFzIFBha2V0IG9rIGlzdC4KU28gYmxlaWJ0IChhdWNoIHdlbm5zIGluIHNjaG1hcnJuIHN0ZWh0KSBkZXIgRWluZHJ1Y2ssIGRhc3MgRHUgaWhtIHp1dHJhdXN0LAplaW5mYWNoIGlyZ2VuZHdlbGNoZSB1bnNpY2hlcmUgU29mdHdhcmUgYXVmIGRlbiBTZXJ2ZXIgenUgcGFja2VuLiAKU2NoYWRlIGZpbmRlIGljaCwgZGFzcyBkZXIgZXJzdGUgS29tbWVudGFyIHp1IGVpbmVtIEFydGlrZWwsIGluIGRlbSBlcyAKZGFydW0gZ2luZywgZGFzcyBqZW1hbmQgKGluIGRpZXNlbSBGYWxsZSBUYXJhbmlzKSBlaW5pZ2UgU3R1bmRlbiBpbnZlc3RpZXJ0CmhhdCwgdW0gZXR3YXMgZnVlciBkaWUgQW5mYWVuZ2VyZnJldW5kbGljaGtlaXQgZGVzIE1HIHp1IHR1biwgbmljaHQgZXR3YQplaW4gRGFua2UgZW50aGFlbHQsIHNvbmRlcm4gZWluZSBtaXNzdmVyc3RhZW5kbGljaGUgQXVzc2FnZSAodW5kIGRhc3Mgc2llIApkYXMgd2FyIHplaWd0IGRpZSBMYWVuZ2UgZGllc2VzIFRocmVhZCwgdW5hYmhhZW5naWcgZGF2b24gd2llIHZpZWxlIExldXRlCkRpciBnZXNhZ3QgaGFiZW4sIGRhc3Mgc2llIGlobiB2ZXJzdGFuZGVuIGhhZXR0ZW4pLgoKTWlyaWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBDbGllbnQgZnVlcnMgTUcgKEtlbGx5YnVuZHksIDE4LiBEZXogMjAwNSwgMTI6MTM6NDgpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMTM0OTA0MjA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDg2MDAwNApFcyBnaWJ0IHVlYnJpZ2VucyBlaW5lIEdyZW56ZSB6d2lzY2hlbiAnU2NobWFycm4nIHVuZCBwbGFubG9zIGFsbGVzCmtvbW1lbnRhdG9yaXNjaCBuaWVkZXJ6dWJ1ZWdlbG4uIERhdm9yIHNjaHVldHp0IGF1Y2ggZGVyIFRpdGVsIGRlciBSdWJyaWsKbmljaHQuCgpBYmVyIHdlbm4gR3JpbW1pIG5peCBuaWVkZXJtYWNoZW4ga2FubiwgaXN0IGVyIGhhbHQgbmljaHQgZ2x1ZWNrbGljaC4KCktlbGx5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogQ2xpZW50IGZ1ZXJzIE1HIChLZWxseWJ1bmR5LCAxOC4gRGV6IDIwMDUsIDEyOjE2OjQwKToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTEzNDkwNDQyOCByZz1zY2htYXJybgp+IyEgdGlkPTExMzQ4NjAwMDQKc2V1ZnosIGJpbiBub2NoIHdhcyB2ZXJrYXRlcnQsIGRlc3dlZ2VuIG1hbCBhbHMgc2VsYnN0cmVwbHk6IFdhciBhdWYgQ3JvZnQKKGFydC4gMjEpIGdlbXVlbnp0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IENsaWVudCBmdWVycyBNRyAoSmltZGlncml6LCAxOC4gRGV6IDIwMDUsIDEzOjQwOjExKToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTEzNDkwNDYwMCByZz1zY2htYXJybgp+IyEgdGlkPTExMzQ4NjAwMDQKTnVuIHBhY2t0IGhhbHQgbm9jaCBlaW5lIFNIQS0yNTYgY2hlY2tzdW0gZGF6dSwgenVzYW1tZW4KbWl0IGVpbmVtICJBcHByb3ZlZCBieSBIdW1uaSAoUikiIFN0ZW1wZWwgdW5kIGd1dCBpcy4gOikKCkpkRwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IENsaWVudCBmdWVycyBNRyAoS2VsbHlidW5keSwgMTguIERleiAyMDA1LCAxMzo1MDo1Myk6Cn4jISBybj1KaW1kaWdyaXogcnQ9MTEzNDkwOTYxMSByZz1zY2htYXJybgp+IyEgdGlkPTExMzQ4NjAwMDQKT2RlciBsb2VzY2h0IGdsZWljaCBhbGxlIHNhdmVmaWxlcyB2b24gZGVuIE11ZGRlcm4sIGRpZSBXaW5kb29mIGJlbnV0emVuLiBVbmQKUnVoIGlzIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IENsaWVudCBmdWVycyBNRyAoR3JpbW1ib3JuLCAxOC4gRGV6IDIwMDUsIDE0OjA1OjQwKToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTEzNDkxMDI1MyByZz1zY2htYXJybgp+IyEgdGlkPTExMzQ4NjAwMDQKRHUgYmlzdCB3aXJrbGljaCBub2NoIHZlcmthdGVydC4gWnUgbG9lc2NoZW4gd2FlcmVuIGRpZSBTYXZlZmlsZXMgZGVyamVuaWdlbgpkaWUgTGludXggYmVudXR6ZW4uIFNjaGxpZXNzbGljaCB3YXIgamEgZGVyIEF1c2xvZXNlciBlaW4gTGludXhwcm9ncmFtbS4gV2VubgpEdSBhbHNvIFJ1aGUgaGFiZW4gd2lsbHN0IG51dHp0IGVzIG5pY2h0cyBkaWUgV2luZG93c2lhbmVyIHp1IGxvZXNjaGVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogQ2xpZW50IGZ1ZXJzIE1HIChWYW5pb24sIDE4LiBEZXogMjAwNSwgMTQ6MDY6MTQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMzQ5MTExNDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM0ODYwMDA0CkRlaW4gU2F2ZWZpbGUgbG9lc2NoZW4sIHd1ZXJkZSBhdWNoIHJlaWNoZW4uCgpTQ05SLCBWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IENsaWVudCBmdWVycyBNRyAoR3JpbW1ib3JuLCAxOC4gRGV6IDIwMDUsIDE0OjA4OjA4KToKfiMhIHJuPVZhbmlvbiBydD0xMTM0OTExMTc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDg2MDAwNApEYXMgZ2VodCBhdWNoIGVpbmZhY2hlci4gTWFjaHN0IER1IGVpbmZhY2ggImhpbGZlIHNlbGJ0bG9lc2NodW5nIiB1bmQgc2Nob24KaGFzdCBEdSBSdWhlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogQ2xpZW50IGZ1ZXJzIE1HIChWYW5pb24sIDE4LiBEZXogMjAwNSwgMTQ6MDk6NTIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMzQ5MTEyODggcmc9c2NobWFycm4KfiMhIHRpZD0xMTM0ODYwMDA0Ck9jaCBHcmltbWksIHdlbm4gc2ljaCBqZWRlciBsb2VzY2hlbiB3dWVyZGUsIGRlciBzaWNoIGdlbGVnZW50bGljaCBtYWwgdWViZXIKZGVpbmUgQWV1c3NlcnVuZ2VuIHd1bmRlcnQsIGhhZXR0ZSBkaWVzZXMgTXVkIHZlcm11dGxpY2ggc2Nob24gc2VociBsYW5nZSBkYXMKUHJvYmxlbSBtYW5nZWxuZGVyIFNwaWVsZXIuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IENsaWVudCBmdWVycyBNRyAoTXVhZGliLCAxOC4gRGV6IDIwMDUsIDE0OjI5OjI3KToKfiMhIHJuPVZhbmlvbiBydD0xMTM0OTExMzkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDg2MDAwNApndXRlIGd1ZXRlLCB3aWVkZXIgbmUgZ2FuemUgbWVuZ2UgZm9lcm1jaGVuIHZlcnNhdXQKCmRhcyByZXBseSBnaW5nIG51ciB6dWZhZWxsaWcgYW4gZGVuIGxldHp0ZW4gYXJ0aWtlbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IENsaWVudCBmdWVycyBNRyAoS2VsbHlidW5keSwgMTguIERleiAyMDA1LCAxNTowOTo1Myk6Cn4jISBybj1NdWFkaWIgcnQ9MTEzNDkxMjU2NyByZz1zY2htYXJybgp+IyEgdGlkPTExMzQ4NjAwMDQKUkFCQUVFRUVIISBHb2V0dGVyISBHcmltbWkgaXN0IGltbWVyIHNvIGdlbWVpbiB6dSB1bnMgdW5kIHplcnBhdHNjaHQgdW5zZXJlCnNjaG9lbmVuIE1hdHNjaGt1Y2hlbiEgKnNjaGx1Y2h6KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IENsaWVudCBmdWVycyBNRyAoQm9pbmcsIDE5LiBEZXogMjAwNSwgMDk6MTQ6NDIpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMTM0OTE0OTkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDg2MDAwNApBYWFhaCAuLi4gZ3V0ZSBNb250YWctTW9yZ2VuLVVudGVyaGFsdHVuZyAuLi4gCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBDbGllbnQgZnVlcnMgTUcgKEJpZWxlZmVsZCwgMTkuIERleiAyMDA1LCAxMjo1MDowMCk6Cn4jISBybj1Cb2luZyBydD0xMTM0OTgwMDgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDg2MDAwNApXZXIgaGF0IEhlbnJ5ayBNIEJyb2RlciBkYXMgUGFzc3dvcnQgdm9uIEdyaW1tYm9ybiBnZXNjaGlja3Q/CgotQmllbGVmZWxkIChpbiBkZXIgcmljaHRpZ2VuIFJ1YnJpaykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBDbGllbnQgZnVlcnMgTUcgKFpvb2ssIDE5LiBEZXogMjAwNSwgMTU6MDM6NTIpOgp+IyEgcm49QmllbGVmZWxkIHJ0PTExMzQ5OTMwMDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM0ODYwMDA0Cm9vcHMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogQ2xpZW50IGZ1ZXJzIE1HIChNb250YW51cywgMjAuIERleiAyMDA1LCAxMDowMTo1Myk6Cn4jISBybj1ab29rIHJ0PTExMzUwMDEwMzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM0ODYwMDA0CkljaCBnbGF1YmUsIGVpbiBITUItVmVyZ2xlaWNoIGthbm4gbWFuIGltIHB1bmN0byBEaXNrdXNzaW9uc2FiZ2V3dWVyZ2UgbWl0CmVpbmVtIEhpdGxlci1WZXJnbGVpY2ggYXVmIGVpbmUgU3R1ZmUgc3RlbGxlbi4gKmcqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3BlaWNoZXI6IER1YWwtQ2hhbm5lbCB2cyBTaW5nbGUtQ2hhbm5lbD8gKFpvb2ssIDIwLiBEZXogMjAwNSwgMTE6NDE6MjgpOgp+IyEgcm49VGFyYW5pcyBydD0xMTM1MDc1MjEwIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTExMzUwNzUyMTAKQWJnZXJhdWNodCB1bmQgbmljaHQgZ2VrbGF1dD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBDbGllbnQgZnVlcnMgTUcgKFd1cnplbCwgMjIuIERleiAyMDA1LCAxMjoxODozNyk6Cn4jISBybj1Nb250YW51cyBydD0xMTM1MDY5MzEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDg2MDAwNAppc3QgZGFzIHNvd2FzIHdpZSBlaW4gcGVuaXN2ZXJnbGVpY2g/IG9kZXIgd2FzIHNvbGwgaWNoIG1pciB1bnRlciBlaW5lbSBobWIKdm9yc3RlbGxlbj8KYW55d2F5OiBpY2ggYmVoYXVwdGUgamV0enQgZWluZmFjaCBtYWwsIHdlciBncmltbWJvcm5zIGFydGlrZWwgbmljaHQgZ2xlaWNoCnZlcnN0YW5kZW4gaGF0LCBpc3QgZW50d2VkZXIKYSkgbmV1IGhpZXIKYikgaHVtb3Jsb3MKYykgdHJhdSBpY2ggbWljaCBqZXR6dCBuaWNodCB6dSBzYWdlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IENsaWVudCBmdWVycyBNRyAoTXVhZGliLCAyMi4gRGV6IDIwMDUsIDE3OjEzOjQ5KToKfiMhIHJuPVd1cnplbCBydD0xMTM1MjUwMzE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNDg2MDAwNAp1bmQgd2FzIGRhdm9uIGhhc3QgZHUgYW5nZWtyZXV6dD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNwZWljaGVyOiBEdWFsLUNoYW5uZWwgdnMgU2luZ2xlLUNoYW5uZWw/IChHcmltbWJvcm4sIDIzLiBEZXogMjAwNSwgMTQ6MTM6NDIpOgp+IyEgcm49T2dvIHJ0PTExMzUzNDI3NzIgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTEzNTA3NTIxMApBdWZmbGV4ZW4gdW5kIGRpZSBMZWl0ZXJiYWhuZW4gdmVyZm9sZ2VuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBQYXJ0eWJpbGRlciAoQW5hdG9sLCAyNS4gRGV6IDIwMDUsIDIxOjExOjIwKToKfiMhIG9uPUFuYXRvbCBvdD0xMTM1NTQxNDc2IG9nPXBhcnR5Cn4jISBybj1NdWFkaWIgcnQ9MTEzNDkyNzg4MCByZz1wYXJ0eQp+IyEgdGlkPTExMzQ1NjIwNzcKTXVkZGVyIGdlc2Vua3RlbiBIYXVwdGVzIGltIEtyZWlzZSBzaXR6ZW5kLi4uIFdlcndvZWxmZSBpbSBEdWVzdGVyd2FsZD8gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpha3R1ZWxsZXMgKE11YWRpYiwgMjYuIERleiAyMDA1LCAxNzoxMjowNSk6CmRyYWNoZW4gbWl0IGFubGllZ2VuIGluIHB2IGdlc2ljaHRldAphbGxlcyBpbiBhbGxlbTogZHJvbGxpZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFrdHVlbGxlcyAoSHVtbmksIDI2LiBEZXogMjAwNSwgMTc6MTM6MTUpOgp+IyEgcm49TXVhZGliIHJ0PTExMzU2MTM1MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM1NjEzNTI1Ckphd29obC4gSWNoIGhhYmUgaGV1dGUgZGllIEhhZmVuc3RyYXNzZSByYXVmIHVuZCBydW50ZXIgKGJpcyBnYW56IHp1bSBIYWZlbgpydW50ZXIsIGRhbm4genVtIFNhbmR0aWdlciB6dXJ1ZWNrKSBnZWdlbiBkZW4gVmVybGVnZXdhaG4gZGVtb25zdHJpZXJ0IHVuZApsYXV0IGdlYnJ1ZWxsdC4gTmVobXQgRXVjaCBkYXMgenUgSGVyemVuIQoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBha3R1ZWxsZXMgKFpvb2ssIDI2LiBEZXogMjAwNSwgMTc6MTM6MTYpOgp+IyEgcm49TXVhZGliIHJ0PTExMzU2MTM1MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM1NjEzNTI1CmdpYnQgZXMgYWV1c3NlcnVuZ2VuIHZvbiB0ZWlsbmVobWVybiBvZGVyIGJlb2JhY2h0ZXJuPyB1bmQgd2FzIHNhZ3QgdW5zZXIKZXhwZXJ0ZSBiYW1idWxrbyBkYXp1PwoKem9vay5sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRHJhY2hlbmlsbHVzaW9uIChHbm9tZSwgMjguIERleiAyMDA1LCAxMjo1NTo1MSk6Cn4jISBybj1WaW5jZW50IHJ0PTExMzU3NjkxNjcgcmc9d3d3Cn4jISB0aWQ9MTEzNTc2OTE2NwpISUxGRSEKCmRpZSBkZXBwZW5sZWVyemVpY2hlbiBncmVpZmVuIHVtIHNpY2ghIGFhYXJycmdnaGhoIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEcmFjaGVuaWxsdXNpb24gKEdub21lLCAyOC4gRGV6IDIwMDUsIDEzOjE2OjA1KToKfiMhIHJuPUdub21lIHJ0PTExMzU3NzA5NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM1NzY5MTY3CndlciBqZXR6dCBpbnMgZ3J1ZWJlbG4gZ2VyYXRlbiBpc3QsIGRhcmYgc2ljaCB1bnRlciBmb2xnZW5kZXIgaW50ZXJuZXQtCmFkcmVzc2Ugd2VpdGVyYmlsZGVuIChORUlOLCBuaWNodCAid2VpdGVyIGJpbGRlbiIpOiB3d3cuZGVwcGVubGVlcnplaWNoZW4uZGUKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEcmFjaGVuaWxsdXNpb24gKENyb2Z0LCAyOC4gRGV6IDIwMDUsIDEzOjE2OjQ3KToKfiMhIHJuPUdub21lIHJ0PTExMzU3NzIxNjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM1NzY5MTY3CkluIGRpZXNlbSBadXNhbW1lbmhhbmc6IHNpbmQgZGllIEdyb3NzYnVjaHN0YWJlbiByYXRpb25hbGlzaWVydCB3b3JkZW4/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRHJhY2hlbmlsbHVzaW9uIChHbm9tZSwgMjguIERleiAyMDA1LCAxMzoxOToyMik6Cn4jISBybj1Dcm9mdCBydD0xMTM1NzcyMjA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNTc2OTE2NwptaXIgaXN0IHdlbmlnc3RlbnMgdm9sbGtvbW1lbiBiZXd1c3N0LCBkYXNzIGljaCBhbiBkaWVzZW4gc3RlbGxlbgpmZWhsZXIgbWFjaGUuIGFiZXIgZGFzIHN0b2VydCBtZWluZXMgZXJhY2h0ZW5zIGJlaW0gbGVzZW4gZWluZXMKdGV4dGVzIGJlaSB3ZWl0ZW0gbmljaHQgc28gc2VociB3aWUgZGllIGRlcHBlbmxlZXJ6ZWljaGVuLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERyYWNoZW5pbGx1c2lvbiAoUm9uZGEsIDI4LiBEZXogMjAwNSwgMTM6MjE6MTYpOgp+IyEgcm49R25vbWUgcnQ9MTEzNTc3MjM2MiByZz1zY2htYXJybgp+IyEgdGlkPTExMzU3NjkxNjcKc0VoZSBpQ0ggZ2VuYXVTTyB3aUUgZ05vTWUuIEF1c3NFUmRlbSBzaUVodCBFaW4gdEVYVCBzbyB2aWVsIGNPb0xlciBhdXMuCgpyT25kQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRHJhY2hlbmlsbHVzaW9uIChHbm9tZSwgMjguIERleiAyMDA1LCAxMzoyMjo0MCk6Cn4jISBybj1Sb25kYSBydD0xMTM1NzcyNDc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNTc2OTE2NwphaCwgZWluIHVlYmVydHJlaWJlci4gbmFqYSwgd2FyIGVpZ2VudGxpY2gga2xhciwgb2Rlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IERyYWNoZW5pbGx1c2lvbiAoQ3JvZnQsIDI4LiBEZXogMjAwNSwgMTM6MjU6MDgpOgp+IyEgcm49R25vbWUgcnQ9MTEzNTc3MjU2MCByZz1zY2htYXJybgp+IyEgdGlkPTExMzU3NjkxNjcKTWljaCBzdG9lcmVuIGplZGVuZmFsbHMga2xlaW5rYXJpZXJ0ZSBBcnRpa2VsIGJlaW0gTGVzZW4gbWVociwgYWxzCmlyZ2VuZHdlbGNoZQpLbGVpbmJ1Y2hzdGFiZW4gb2RlciBncm9zc3p1ZWdpZyB2ZXJ0ZWlsdGUgTGVlcnplaWNoZW4uICBBdWYgZGVuIEluaGFsdCBrb21tdAplcyBhbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBEcmFjaGVuaWxsdXNpb24gKEdub21lLCAyOC4gRGV6IDIwMDUsIDEzOjI5OjU2KToKfiMhIHJuPUNyb2Z0IHJ0PTExMzU3NzI3MDggcmc9c2NobWFycm4KfiMhIHRpZD0xMTM1NzY5MTY3CmpldHp0IGtvbW10IGRlciBuYWVjaHN0ZSBtaXQgbXVlbGwtZm9ybWF0aWVydW5nIHVuZCBkZXBwZW5sZWVyemVpY2hlbi4KaWNoIGhhbHQncyBuaWNodCBhdXMuCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRHJhY2hlbmlsbHVzaW9uIChOaWNvbGFpLCAyOC4gRGV6IDIwMDUsIDEzOjMwOjU0KToKfiMhIHJuPUdub21lIHJ0PTExMzU3NzI5OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM1NzY5MTY3Cmh0dHA6Ly93d3cuZGVwcGVuYXBvc3Ryb3BoLmRlLwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IERyYWNoZW5pbGx1c2lvbiAoQ3JvZnQsIDI4LiBEZXogMjAwNSwgMTM6MzI6MjgpOgp+IyEgcm49Tmljb2xhaSBydD0xMTM1NzczMDU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNTc2OTE2NwpLbGFlciBtaWNoIGF1Zjogd28gd2FyIGRhIGVpbiBEZXBwZW5sZWVyemVpY2hlbj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRHJhY2hlbmlsbHVzaW9uIChHbm9tZSwgMjguIERleiAyMDA1LCAxMzozNDo1NCk6Cn4jISBybj1OaWNvbGFpIHJ0PTExMzU3NzMwNTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM1NzY5MTY3CmljaCBoYWJlIGRhcmF1ZiBnZXdhcnRldC4gd2lya2xpY2guIDopCm5laW4sIGRpZXNtYWwgbGVpZGVyIGZhbHNjaC4gImhhbHQgZXMiIGRhcmYgbWFuIHp1ICJoYWx0J3MiIHp1c2FtbWVuemllaGVuLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBEcmFjaGVuaWxsdXNpb24gKEd3ZW5pbGksIDI4LiBEZXogMjAwNSwgMTM6MzU6NTIpOgp+IyEgcm49Q3JvZnQgcnQ9MTEzNTc3MzE0OCByZz1zY2htYXJybgp+IyEgdGlkPTExMzU3NjkxNjcKRGVwcGVubGVlcnplaWNoZW4gLSBzY2hsYWd0IGVzIGFscyBVbndvcnQgZGVzIEphaHJlcyB2b3I/Ckd3LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IERyYWNoZW5pbGx1c2lvbiAoR25vbWUsIDI4LiBEZXogMjAwNSwgMTM6MzY6NTIpOgp+IyEgcm49Q3JvZnQgcnQ9MTEzNTc3MzE0OCByZz1zY2htYXJybgp+IyEgdGlkPTExMzU3NjkxNjcKIi4uLkxlZXJ6ZWljaGVuLiAgQXVmIGRlbiBJbmhhbHQuLi4iCgp3ZWRlciBzY2hyZWlidHMgZHUgZ2VyYWRlIG1pdCBUZVgsIG5vY2ggc29sbHRlbiB3aXIgZGllIHNpdHRlbiB1bnNlcmVyCmFtZXJpa2FuaXNjaGVuIG1pdGJ1ZXJnZXIgZGllc2JlenVlZ2xpY2ggdWViZXJuZWhtZW4uCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IERyYWNoZW5pbGx1c2lvbiAoQ3JvZnQsIDI4LiBEZXogMjAwNSwgMTM6Mzg6MjApOgp+IyEgcm49R25vbWUgcnQ9MTEzNTc3MzQxMiByZz1zY2htYXJybgp+IyEgdGlkPTExMzU3NjkxNjcKQWgsIGljaCBzZWhlIGRlaW5lIEF1ZmZhc3N1bmcgZWluZXMgRGVwcGVubGVlcnplaWNoZW5zIGlzdCBub2NoIHdlaXRlcgpnZWZhc3N0IGFscyBkaWUgZGVyIHZvbiBkaXIgeml0aWVydGVuIFNlaXRlLiAgS29lbm50ZXN0IGR1IGJpdHRlIGVpbmUKYW5zdGFlbmRpZ2UgUmVmZXJlbnogbGllZmVybj8gIEFuc29uc3RlbiBpc3QgZGFzIGplZGVuZmFsbHMgbmljaHRzIHdhcwpzeW50YWt0aXNjaCBmYWxzY2ggaXN0LiAgRXMgZW50c3ByaWNodCBlaW5mYWNoIG51ciBuaWNodCBkZXIgcGFzc2VuZGVuCkRJTi1Ob3JtLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBEcmFjaGVuaWxsdXNpb24gKEdub21lLCAyOC4gRGV6IDIwMDUsIDEzOjQ1OjI3KToKfiMhIHJuPUNyb2Z0IHJ0PTExMzU3NzM1MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM1NzY5MTY3Cnp3ZWkgbGVlcnplaWNoZW4gaGludGVyIGVpbmVtIHNhdHp6ZWljaGVuIHNpbmQgZ2VuYXVzbyBmYWxzY2ggd2llIGVpbnMKdm9yIGVpbmVtLiBlcyBpc3QgZWluZmFjaCBlaW5lcyB6dXZpZWwgdW5kIHN0b2VydCBkZW1uYWNoIGRlbiBsZXNlZmx1c3MuCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IERyYWNoZW5pbGx1c2lvbiAoQ3JvZnQsIDI4LiBEZXogMjAwNSwgMTM6NTM6NDkpOgp+IyEgcm49R25vbWUgcnQ9MTEzNTc3MzkyNyByZz1zY2htYXJybgp+IyEgdGlkPTExMzU3NjkxNjcKRGFubiBnZWggbWFsIGluIGRpY2ggdW5kIHVlYiBkYXMgbWl0IGRlbiBHcm9zc2J1Y2hzdGFiZW4uIDotKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERyYWNoZW5pbGx1c2lvbiAoWm9vaywgMjguIERleiAyMDA1LCAxMzo1NDo1OSk6Cn4jISBybj1Hbm9tZSBydD0xMTM1NzcyMTY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNTc2OTE2NwpXYXMgbWFuY2hlIHNvIGFsbGVzIEJpbGR1bmcgbmVubmVuLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERyYWNoZW5pbGx1c2lvbiAoR3dlbmlsaSwgMjguIERleiAyMDA1LCAxMzo1NjoxNSk6Cn4jISBybj1ab29rIHJ0PTExMzU3NzQ0OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM1NzY5MTY3CkVpbmJpbGR1bmc/Ckd3ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBEcmFjaGVuaWxsdXNpb24gKFpvb2ssIDI4LiBEZXogMjAwNSwgMTM6NTg6MjEpOgp+IyEgcm49R25vbWUgcnQ9MTEzNTc3MjM2MiByZz1zY2htYXJybgp+IyEgdGlkPTExMzU3NjkxNjcKR2lidCBlcyBhdXNzZXIgRGVpbmVtIEVyYWNodGVuIG5vY2ggZWluZSB3aXNzZW5zY2hhZnRsaWNoIHNlcmlvZXNlIApRdWVsbGUgZnVlciBEZWluZSBrdWVobmUgQmVoYXVwdHVuZz8gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBEcmFjaGVuaWxsdXNpb24gKEd3ZW5pbGksIDI4LiBEZXogMjAwNSwgMTQ6MDM6NDQpOgp+IyEgcm49Wm9vayBydD0xMTM1Nzc0NzAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNTc2OTE2NwpCZXp1ZWdsaWNoIEFwb3N0cm9waCB3YWVyZSBkZXIgZW50c3ByZWNoZW5kZSBad2llYmVsZmlzY2hiZWl0cmFnIGxlc2Vuc3dlcnQ6Cmh0dHA6Ly93d3cuc3BpZWdlbC5kZS9rdWx0dXIvendpZWJlbGZpc2NoLzAsMTUxOCwyODM3ODEsMDAuaHRtbApJc3QgendhciBrZWluZSB3aXNzZW5zY2hhZnRsaWNoZSBRdWVsbGUsIGFiZXIgZXIgYmVydWZ0IHNpY2ggamEgaW1tZXIgYXVmIGRpZQpuZFIuClZpZWwgU3Bhc3MgYmVpbSBad2llYmVsZmlzY2hlbiB3dWVuc2NodApHd2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IERyYWNoZW5pbGx1c2lvbiAoQmFtYmksIDI4LiBEZXogMjAwNSwgMjE6NDA6MjEpOgp+IyEgcm49R25vbWUgcnQ9MTEzNTc3MzI5NCByZz1zY2htYXJybgp+IyEgdGlkPTExMzU3NjkxNjcKVW5kIHdpZXNvIG5pY2h0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IERyYWNoZW5pbGx1c2lvbiAoQW5hdG9sLCAyOC4gRGV6IDIwMDUsIDIxOjUyOjIwKToKfiMhIHJuPUJhbWJpIHJ0PTExMzU4MDI0MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM1NzY5MTY3ClBhcmFncmFmZW4gUmVpdGVyLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBEcmFjaGVuaWxsdXNpb24gKEd3ZW5pbGksIDI4LiBEZXogMjAwNSwgMjE6NTM6MDYpOgp+IyEgcm49QW5hdG9sIHJ0PTExMzU4MDMxNDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM1NzY5MTY3CkdpYnQncyBkaWUgaW4gUGFyYSAxIG9kZXIgMj8KR3dlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBEcmFjaGVuaWxsdXNpb24gKEFuYXRvbCwgMjguIERleiAyMDA1LCAyMjowMTo0OCk6Cn4jISBybj1Hd2VuaWxpIHJ0PTExMzU4MDMxODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM1NzY5MTY3CkhhYiBpY2ggdmVyZ2Vzc2VuLi4uIGtvbW1lbiBpcmdlbmR3byBoaW50ZXIgZGVtCktvcmludGhlbiBLYWNrZXIuICAgQWJlciBkZXIgcmVzZXR0ZXQgc28gc2NobmVsbAp1bmQgaGF0IDEwIFJlY2h0cyBWZXJkcmVoZXIgYmVpIHNpY2guICAgVWViZWwsCm51ciBpbSBSYWlkIG1hY2hiYXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IERyYWNoZW5pbGx1c2lvbiAoV2hpdGV0aWdlciwgMjkuIERleiAyMDA1LCAwMDoxNjowOCk6Cn4jISBybj1Hbm9tZSBydD0xMTM1NzczOTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNTc2OTE2NwpGcmFnIG1hbCBlaW4gcGFhciBGcmFuem9zZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHcybCAoT3JrdG9ldGVyLCAgMS4gSmFuIDIwMDYsIDIzOjExOjIyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTM2MTUyOTk0IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTExMzYxNDUyNjQKT3Jrb2V0ZXIgd3VlbnNjaHQgR2RBIGRhbm4gbWFsLCBkYXNzIGRlciBUYXhpZmFocmVyIHNpY2ggYXVmIGRlbSBXZWcgbmljaHQKdmVyZmFlaHJ0LCBzb25zdCBqdWNrdCBlcyBpaG4gZG9ydCBub2NoIGxhbmdlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogdzJsIChHcmltbWJvcm4sICAxLiBKYW4gMjAwNiwgMjM6MTQ6MDQpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExMzYxNTM0ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM2MTQ1MjY0Ck5peCBvaG5lIEZhbGxiYWNrbG9lc3VuZzogZGFubiBtdXNzIGhhbHQgRHIuIEVkZ2FyIHJhbiwgbmFjaGRlbSBpY2ggaWhuIGluClNhbmRwYXBpZXIgZWluZ2Vyb2xsdCBoYWJlLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogdzJsIChPcmt0b2V0ZXIsICAxLiBKYW4gMjAwNiwgMjM6MTY6MTApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMzYxNTM2NDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM2MTQ1MjY0CldpcnN0IGR1IERyLiBFZGdhciBuYWNoIGRlciBCZW51dHp1bmcgZnVlciBkZW4gb2JlbiBnZW5hbm50ZW4gWndlY2sgYXVjaCBuYWNoCkZldWVybGFuZCAodWViZXIgQXVzdHJhbGllbikgZXhwb3J0aWVyZW4gdW0gZG9ydCBkaWUgdmVybXV0bGljaCBiZXJlaXRzCnNjaG1lcnpsaWNoIGJlbWVya3RlIEx1ZWNrZSBpbiBkZW4gUmVpaGVuIGRlciBUYXhpbGVua2VyIHp1IHNjaGxpZXNzZW4/CgpPcmtULCBuZXVnaWVyaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiB3MmwgKFJvbmRhLCAgMS4gSmFuIDIwMDYsIDIzOjE2OjIwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTM2MTUzNjQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNjE0NTI2NApEZXIgYXJtZSBEci4gRWRnYXIhIFVuZCB3YXJ1bSBpbiBTYW5kcGFwaWVyIGVpbnJvbGxlbiAtIG11ZXNzdGUgbmljaHQgcGFuaWVyZW4KcmVpY2hlbj8KClJvbmRhICplcmlubmVydCBzaWNoIG5vY2ggZGV1dGxpY2ggZGFyYW4sIGVpbm1hbCBiZWltIEF1ZndhY2hlbiBkaXJla3QgaW4gZGllCkF1Z2VuIHZvbiBEci4gRWRnYXIgZ2VzY2hhdXQgenUgaGFiZW4uIEVyIGhhdCBlcyBhYmVyIHVlYmVyc3RhbmRlbi4gRGVyIERyLgpFZGdhci4qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiB3MmwgKEphZGF3aW4sICAxLiBKYW4gMjAwNiwgMjM6MTg6MjYpOgp+IyEgcm49Um9uZGEgcnQ9MTEzNjE1Mzc4MCByZz1zY2htYXJybgp+IyEgdGlkPTExMzYxNDUyNjQKS2xpbmd0IGdydXNlbGlnLgpKYWQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogdzJsIChHcmltbWJvcm4sICAxLiBKYW4gMjAwNiwgMjM6Mjg6MjUpOgp+IyEgcm49SmFkYXdpbiBydD0xMTM2MTUzOTA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNjE0NTI2NApBY2ggd2FzLCBEci4gRWRnYXIgaXN0IHRvdGFsIG5pZWRsaWNoLiBOdXIgVGF4aWZhaHJlbiBpc3QgYWJzb2x1dCBuaWNodCBkcmluLAplciBoYXQgaGFsdCBkaWUgaW50ZWxsZWt0dWVsbGVuIEthcGF6aXRhZXRlbiBlaW5lcyBTY2hlaWJlbndpc2NoZXJzLCBkYXMKcmVpY2h0IG5pY2h0IGdhbnouIE5pY2h0bWFsIGluIEZldWVybGFuZC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IHcybCAoWm9vaywgIDIuIEphbiAyMDA2LCAxMDo1Nzo1NCk6Cn4jISBybj1KYWRhd2luIHJ0PTExMzYxNTM5MDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM2MTQ1MjY0CkphLCBrbGluZ3QgbmFjaCBUaWVycXVhZWxlcmVpLgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTOlJvZW1lcmdsYWVzZXIvS3Jpc3RhbGxnbGFlc2VyIChXb29keSwgIDIuIEphbiAyMDA2LCAxNjoyMjo0Mik6Cn4jISBybj1Cb2luZyBydD0xMTM2MTg5MjA5IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTEzNjE1Njg2MQo+IEljaCBoYWIgZWluIGRlamEgdnUgLi4uCgpBIGRlamEgdnUgaXMgdXN1YWxseSBhIGdsaXRjaCBpbiB0aGUgTXVkbGliLgpJdCBoYXBwZW5zIHdoZW4gdGhleSBjaGFuZ2Ugc29tZXRoaW5nLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTOlJvZW1lcmdsYWVzZXIvS3Jpc3RhbGxnbGFlc2VyIChBbmF0b2wsICAzLiBKYW4gMjAwNiwgMTk6MDA6NDYpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExMzYxNTY4NjEgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMTM2MTU2ODYxCktvZW5uZW4gd2lyIE9ya3Ryb2V0ZXMgUm9lbWVyZ2xhZXNlciBtaXQgaW4gZGVuIGNyb25qb2IgYXVmbmVobWVuPwpTbyB6d2lzY2hlbiAiS2FlbXBmZXIgYWJ3ZXJ0ZW4iIHVuZCAiU3VwZXJzZWhlciI/IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTOlJvZW1lcmdsYWVzZXIvS3Jpc3RhbGxnbGFlc2VyIChHbG9pbnNvbiwgIDMuIEphbiAyMDA2LCAxOTowNDoxNCk6Cn4jISBybj1BbmF0b2wgcnQ9MTEzNjMxMTI0NiByZz1zY2htYXJybgp+IyEgdGlkPTExMzYxNTY4NjEKRGEgaXN0IHNlaW4gUm9lbWVyZ2xhc2dlYmV0dGVsIGFiZXIgbGV0enR6ZWl0IGtvbnRpbnVpZXJsaWNoZXIgYWxzIGRpZSBhbmRlcmVuClRoZW1lbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiB3MmwgKE11cGZlbCwgIDMuIEphbiAyMDA2LCAyMjoxNDo0NSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTEzNjE1MzQ4MiByZz1zY2htYXJybgp+IyEgdGlkPTExMzYxNDUyNjQKIk9ya29ldGVyIj8gV2F0IG5lIFN0ZWlsdm9ybGFnZSwgdW5kIG5pZW1hbmQgaGF0cyBnZW1lcmt0Li4uCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogdzJsIChBbmF0b2wsICAzLiBKYW4gMjAwNiwgMjI6MjA6MzApOgp+IyEgcm49TXVwZmVsIHJ0PTExMzYzMjI4ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM2MTQ1MjY0ClZlcm11dGxpY2ggd2Vpc3MgbmllbWFuZCwgd2FzIGRpZSBkZXV0c2NoZSBWb3JzaWxiZSAiT3IiIGJlZGV1dGV0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVHJhbnNlbiwgUGZhZmZlbiB1bmQgYW5kZXJlIEthdGFzdHJvcGhlbiAoQW5hdG9sLCAgNC4gSmFuIDIwMDYsIDIwOjA2OjQ4KToKfiMhIHJuPVpvb2sgcnQ9MTEzNjQwMTM4MiByZz13aXR6ZQp+IyEgdGlkPTExMzY0MDEwOTQKRWluZSBCbG9uZGluZSBrYW5uIGF1Y2ggQmxvbmRpbmVud2l0emUgZXJ6YWVobGVuLiBXaXJrbGljaCwKZXMgZ2lidCBnZW51ZyBMZXV0ZSwgZGllIHZvbiBEaW5nZW4gcmVkZW4sIHZvbiBkZW5lbiBzaWUga2VpbmUKQWhudW5nIGhhYmVuLiBFZ2FsIG9iIEthbXBmc3RhZWJlIG9kZXIgQ2x1c3RlcnBvbGl0aWsuIDspCgoqCgpQUzogaHR0cDovL3d3dy5zcGllZ2VsLmRlL25ldHp3ZWx0L25ldHprdWx0dXIvMCwxNTE4LDM5MzI5NSwwMC5odG1sCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVGh1bmRlcmJpcmQgJiYgVVRGMzIgKFpvb2ssICA1LiBKYW4gMjAwNiwgMTY6MjA6MjEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEzNjQ3NDMzNyByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMTM2NDc0MzM3CkljaCBmaW5kIGRhcyBpbW1lciBzbyBwdXR6aWcsIHdlaWwgbmVuIEtvbGxlZ2Ugdm9uIG1pdCBhbHMgSW5pdGlhbGVuIGF1Y2gKVVRGIGhhdC4gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRodW5kZXJiaXJkICYmIFVURjMyIChHbG9pbnNvbiwgIDUuIEphbiAyMDA2LCAxNjoyMTo0NSk6Cn4jISBybj1ab29rIHJ0PTExMzY0NzQ0MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM2NDc0MzM3ClVuZD8gV2lldmllbCBCaXQgc2NoYWZmdCBkZXI/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVGh1bmRlcmJpcmQgJiYgVVRGMzIgKFpvb2ssICA1LiBKYW4gMjAwNiwgMTY6Mjg6NTUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEzNjQ3NDUwNSByZz1zY2htYXJybgp+IyEgdGlkPTExMzY0NzQzMzcKOCBoYWIgaWNoIHNjaG9uIGdlc2VoZW4sLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTOiBLbGFuZ2RhdGVpZW4gKFJvbmRhLCAgNS4gSmFuIDIwMDYsIDIyOjU4OjE4KToKfiMhIHJuPUppbWRpZ3JpeiBydD0xMTM2NDkzODQ2IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTEzNjQ5MTQyNQouLi4gb2RlciBmdWVyIG5lIEhvY2h6ZWl0c3plaXR1bmcgZWluIG1wMy1TY2huaXBzZWx3ZXJrPwoiRWogQWxkZXIhIiAtICJXaWxsc3QgRHUuLi4iIC0gIkphIiAtICJKYSIgLSAiU2ljaGVyPyIgLSAiQWxsZXMgTWlzdCIuLi4/CgpPZGVyIGZ1ZXIgV2luZG93cy1Tb3VuZHMgbWlzc2JyYXVjaGVuOiBTdGF0dCBNdWVsbGVpbWVyLUNydW5zaCBlaW4gIkFsbGVzCk1pc3QhIiwgc3RhdHQgZGVtIEZlaGxlci1QaW5nIGVpbiAiRGFuZWJlbiEiLCBzdGF0dCBXYXJuLVBpbmcgZWluZSBTaXJlbmUuLi4/CgpSb25kYSAqd3VlcmRzIGludGVyZXNzaWVyZW4sIHdhcyBBbWEqIGRhIGFuc3RlbGxlbiB3aWxsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUzogS2xhbmdkYXRlaWVuIChHcmltbWJvcm4sICA1LiBKYW4gMjAwNiwgMjM6MTE6NTgpOgp+IyEgcm49Um9uZGEgcnQ9MTEzNjQ5ODI5OCByZz1zY2htYXJybgp+IyEgdGlkPTExMzY0OTE0MjUKSWNoIGhhYiBuZSBaZWl0bGFuZyBlaW4gc2Nob2VuZXMgIlllcyBNYXN0ZXIiIGF1cyBTdGFyIFdhcnMgYWxzCkJlZ3J1ZXNzdW5nc3NvdW5kIGJlaW0gRWlubG9nZ2VuIGluIFggdmVyd2VuZGV0LgpBYmVyIGRhbm4ga2FtIGljaCBpbiBkZW4gS2luZGVyZ2FydGVuIHVuZCBoYWJzIGRhbm4gd2llZGVyIGF1ZmdlZ2ViZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gaGF0IG1hbnMgZ2VybmUgKlNldWZ6KiAoQW5hY3Jpb24sICA3LiBKYW4gMjAwNiwgMjM6NDg6MzUpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBibGF1ZW4gRHJhY2hlbl0gSWNoIG11c3Mgc2FnZW4sIEFuYWNyaW9uIGthbm4gZmVzdGUKW01vZXJkZXI6R2Vpc3QgZWluZXMgYmxhdWVuIERyYWNoZW5dIHNjaGxhZ2VuLgpFaW4gYmxhdWVyIERyYWNoZSBrb21tdCBhbi4KCkd1dCwgZGFzcyBlcyBudXIgZGVyIGJsYXVlIHdhciAuLi4KCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU28gaGF0IG1hbnMgZ2VybmUgKlNldWZ6KiAoRWxqbywgIDguIEphbiAyMDA2LCAwMDowODowOCk6Cn4jISBybj1BbmFjcmlvbiBydD0xMTM2Njc0MTE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNjY3NDExNQpTb2xhbmdlIGVzIG5pY2h0IFRha2hpc2lzIG9kZXIgUGFyYVRha2hpc2lzIGlzdCwgaXN0IGRvY2ggYWxsZXMgaW0gZ3J1ZW5lbgpCZXJlaWNoIHVuZCBtYW4gZnJldXQgc2ljaCB1ZWJlciBFUHMgKEljaCB3ZWlzcywgaW0gaGV1dGlnZW4gTUcgdW53aWNodGlnLAphYmVyIGluIEdlZGFua2VuIGJlcmVpdGVuIHNpZSBGcmV1ZGUhKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQm9lc2UuLi4gKFJvbmRhLCAgOC4gSmFuIDIwMDYsIDAxOjQ0OjM1KToKQnVzaDogRXIgaXN0IGRvY2ggbmljaHQga2xpbmlzY2ggdG90LgpodHRwOi8vd3d3LmZsaWNrci5jb20vcGhvdG9zL3Zvd2UvODM1NjA2NDAvCgpSb25kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWmF1YmVyZXIgKE1vcmdvdGgsICA5LiBKYW4gMjAwNiwgMTA6NTM6MTkpOgpXYXIgbmljaHQgQV9JTlQgZGFzIEhhdXB0bWVya21hbCBkZXIgWmF1YmVyZXI/IE5hamEsIHp1bWluZGVzdCBiZWkgZGVuIENoYXJzCmhpZXIgd29obC4uLgpYeHh4eHh4eCB0ZWlsdCBEaXIgbWl0OiBtb2luIDotKSBzYWcgbWFsIC4uLiBhbHNvIGlyZ2VuZHdpZSBpc3QgZGllClh4eHh4eHh4IHRlaWx0IERpciBtaXQ6IHNpdm9rLXphdWJlcmVyLWJhbGFuY2UgZG9jaCB1ZWJlcnMgemllbApYeHh4eHh4eCB0ZWlsdCBEaXIgbWl0OiBoaW5hdXNnZXNjaG9zc2VuLCB3ZW5uIGljaCBtaXQgaHVlbGxlIG1laHIgYWJrcmllZ2UKWHh4eHh4eHggdGVpbHQgRGlyIG1pdDogYWxzIG9obmUsIG9kZXIgPyA7bykKRHUgdGVpbHN0IFh4eHh4eHh4IG1pdDogbmEgZGFubiBtYWNoIGhhbHQga2VpbmUgYW4KCk0qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWmF1YmVyZXIgKEFuYWNyaW9uLCAgOS4gSmFuIDIwMDYsIDEyOjM3OjA2KToKfiMhIHJuPU1vcmdvdGggcnQ9MTEzNjgwMDM5OSByZz1zY2htYXJybgp+IyEgdGlkPTExMzY4MDAzOTkKRGFzIG1hbiBlaW5lbiBNaXNzc3RhbmQgKGRlciBvZmZlbnNpY2h0bGljaCBnZXdvbGx0IGlzdCwgd2llIGljaCBkZW0gdm9yaWdlbgpQb3N0IGVudG5laG1lKSBhbnNwcmljaHQgaGVpc3N0IG5vY2ggbGFuZ2UgbmljaHQsIGRhc3MgbWFuIGRhcyBnZXdvbm5lbmUgV2lzLQpzZW4gbmljaHQgenUgc2VpbmVtIFZvcnRlaWwgZWluc2V0enQgLi4uIAoKRGVpbiBQb3N0IGdlaG9lcnQgYWJlciBlaGVyIGluIGRpZSBLYXRlZ29yaWUgJ3RyYXVyaWcnIGFscyBuYWNoICdzY2htYXJybicgLi4uCgpYeHh4eHh4eAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBaYXViZXJlciAoTm9ubmUsICA5LiBKYW4gMjAwNiwgMTM6MTk6MzIpOgp+IyEgcm49QW5hY3Jpb24gcnQ9MTEzNjgwNjYyNiByZz1zY2htYXJybgp+IyEgdGlkPTExMzY4MDAzOTkKSGV1bCBkb2NoIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IG5ldWVzIEJJT1MgKyBDaGlwIChHcmltbWJvcm4sICA5LiBKYW4gMjAwNiwgMTY6MjY6MjUpOgp+IyEgcm49R25vbWUgcnQ9MTEzNjgyMDE4MyByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMTM2ODIwMTgzCkFsc28gbWFsIGVocmxpY2gsIGZ1ZXIgZGFzIFdlYnNlaXRlbmRlc2lnbiB2ZXJkaWVuZW4gZGllIGRvY2ggUHJ1ZWdlbC4gQWJlcgpnZXdhbHRpZ2Ugc29sY2hlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IG5ldWVzIEJJT1MgKyBDaGlwIChHbm9tZSwgIDkuIEphbiAyMDA2LCAxNjozMTozNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEzNjgyMDM4NSByZz1zY2htYXJybgp+IyEgdGlkPTExMzY4MjAxODMKa2FubnN0IGlobmVuIGphIGdlcm5lIGRlaW5lIGRpZW5zdGUgaW4gZWluZXIgZGVpbmVyIGJlaWRlbiBnZWJpZXRlIChhbHNvCnBydWVnZWwgb2RlciB3ZWJzZWl0ZW5kZXNpZ24pIGFuYmlldGVuLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IG5ldWVzIEJJT1MgKyBDaGlwIChHcmltbWJvcm4sICA5LiBKYW4gMjAwNiwgMTY6Mzk6MDEpOgp+IyEgcm49R25vbWUgcnQ9MTEzNjgyMDY5NyByZz1zY2htYXJybgp+IyEgdGlkPTExMzY4MjAxODMKSWNoIGhhYmUgbmllIGJlaGF1cHRldCBBaG51bmcgdm9uIFdlYnNlaXRlbmRlc2lnbiB6dSBoYWJlbi4gRGVuIFVudGVyc2NoaWVkCnp3aXNjaGVuICJvcHRpbWFsIiB1bmQgInJpY2h0aWcga2xhc3NlIiB3ZXJkZSBpY2ggc2ljaGVyIG5pY2h0IGZlc3RzdGVsbGVuCmtvZW5uZW4uIEFiZXIgImdyYXVlbmhhZnQiIGZhZWxsdCBkYW5uIHNvZ2FyIG1pciBhdWYuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IG5ldWVzIEJJT1MgKyBDaGlwIChDcm9mdCwgIDkuIEphbiAyMDA2LCAxNjo0MjoyNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEzNjgyMTE0MSByZz1zY2htYXJybgp+IyEgdGlkPTExMzY4MjAxODMKVW5kIHVlYmVyIGRpZSBRdWFsaXRhZXQgZGVyIFBydWVnZWwgZGllIEdyaW1tYm9ybiBhdXN0ZWlsZW4ga2FubiwgaXN0CnNvd2VpdCBhdWNoIG5pY2h0cyBiZWthbm50LCBvZGVyPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IG5ldWVzIEJJT1MgKyBDaGlwIChHcmltbWJvcm4sICA5LiBKYW4gMjAwNiwgMTY6NDg6MDApOgp+IyEgcm49Q3JvZnQgcnQ9MTEzNjgyMTM0NCByZz1zY2htYXJybgp+IyEgdGlkPTExMzY4MjAxODMKRGlyIG5pY2h0LiBXZW5uIHNpY2ggZGEgR25vbWUgYWxzIEV4cGVydGUgc2llaHQgaXN0IGRhcyBzaWNoZXJsaWNoCnVlYmVydHJpZWJlbiwgYWJlciBhdWNoIG5pY2h0IHZvZWxsaWcgdmVya2VocnQuIEVyIGdpYnQgYWJlciBhdWNoIG1hbmNobWFsIGVpbgp6dSBzY2hvZW5lcyBaaWVsIGFiLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IG5ldWVzIEJJT1MgKyBDaGlwIChHbG9pbnNvbiwgIDkuIEphbiAyMDA2LCAxNzoyMToxMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEzNjgyMTY4MCByZz1zY2htYXJybgp+IyEgdGlkPTExMzY4MjAxODMKRXIgaXN0IHZvciBhbGxlbSBncm9zcyB1bmQgd2FlY2hzdCBzb2dhciBub2NoLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCYWhuaG9mPyEgKEFuYXRvbCwgIDkuIEphbiAyMDA2LCAyMzoyODozNyk6Cn4jISBybj1Sb25kYSBydD0xMTM2NzYzNzg5IHJnPXNjaG1hcnJuLm5ldGRpZ2VzdAp+IyEgdGlkPTExMzY3NjM3ODkKCkFNRU4hCgpHcnVuZGd1ZXRpZ2VyLiBEYSB3ZXJkZW4gRVJHRUJOSVNQUk9UT0tPTExFIGluIFBvd2VycG9pbnQgYWJnZWxlZ3QuClNvIGVpbiBFUkdFQk5JU1BST1RPS09MTCBpc3QgaW4gZGllc2VtIHNwZXppZWxsZW4gRmFsbCBlaW5lIHp3ZWlzcGFsdGlnZQpUYWJlbGxlIG1pdCBldHdhIHNlY2hzIFplaWxlbi4KCkVpbiBoYWxiZXMgTWVnYWJ5dGUgRGF0ZW4gcHJvIFRhZy4gV28gZXMgZWluZSBUZXh0ZGF0ZWkgYXVjaCBnZXRhbgpoYWV0dGUuCgpOZWluLiBOaWNodCBNY0tpbnNleS4gUXVlcmVpbnN0ZWlnZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCYWhuaG9mPyEgKFpvb2ssIDEwLiBKYW4gMjAwNiwgMTA6NTg6NTQpOgp+IyEgcm49QW5hdG9sIHJ0PTExMzY4NDU3MTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM2NzYzNzg5CkljaCB2ZXJ3ZWlzZSBkYSByZWdlbG1hZXNzaWcgYXVmIGRpZSBQdWJsaWthdGlvbiB2b24gRWR3YXJkIFR1ZnRlIHp1bQpUaGVtYSBQb3dlcnBvaW50IHVuZCBkZW4gRGlza3Vzc2lvbnNiZWl0cmFnICJQb3dlclBvaW50IGRvZXMgUm9ja2V0IFNjaWVuY2UiCmF1ZiBzZWluZXIgSG9tZXBhZ2UgaHR0cDovL3d3dy5lZHdhcmR0dWZ0ZS5jb20uCgpQUC1CZW51dHplciB6aWVoZW4gc2ljaCBiZWkgbWlyIGVpbmUgZ2V3aXNzZSBHcnVuZHNrZXBzaXMgenUuIERpZSBBbm5haG1lLApkYXNzIGRpZSBkYW1pdCBNaXN0IG1hY2hlbiwgaXN0IGF1ZmdydW5kIGRlciBWZXJnYW5nZW5oZWl0c2RhdGVuLCBkaWUgaWNoCnNhbW1lbG4gZHVyZnRlLCByZWNodCBwbGF1c2liZWwuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQmFobmhvZj8hIChIdW1uaSwgMTAuIEphbiAyMDA2LCAxMToxNzowNyk6Cn4jISBybj1ab29rIHJ0PTExMzY4ODcxMzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM2NzYzNzg5ClBvd2VyUG9pbnQgaXN0IGVpbiBzY2hvZW5lcyBNZWRpdW0sIHVtIGJlc3RpbW10ZSBJbmhhbHRlIGZ1ZXIgZWluIGJlc3RpbW10ZXMKUHVibGlrdW0gemllbGdlcmljaHRldCBiencuIGVmZmVrdHZvbGwgenUgcHJhZXNlbnRpZXJlbi4KCkludGVyZXNzYW50IGlzdCBkZXIgR2xhdWJlLCBkYXNzIGRhZHVyY2ggZGllIEluaGFsdGUgdmVyYmVzc2VydCB3dWVyZGVuLCBvZGVyCmRhc3MgbWFuIGplbWFuZGVtLCBkZXIgaW4gUG93ZXJQb2ludCBlaW5lbiBFZmZla3QgYW5rbGlja2VuIGthbm4sIGF1dG9tYXRpc2NoCklULSB1bmQgRmFjaGtvbXBldGVueiBmdWVyIGRhcyBwcmFlc2VudGllcnRlIFRoZW1hIHp1YmlsbGlndC4KCkhpZXJ6dSBtYWcgaWNoIGRhcyBaaXRhdCB2b24gWmlwcGVydC9IdXJ6bG1laWVyIGluICJTbyB3aXJkIG1hbiBMb2V3ZSI6CldhcyBpc3QgZWluZSBQb3dlcnBvaW50LVByYWVzZW50YXRpb24/IERhYmVpIGhhbmRlbHQgZXMgc2ljaCB1bSBlaW5lbgpEaWEtVm9ydHJhZyBvaG5lIERpYXMuIEVyIGZpbmRldCBhdWYgZGVtIFBDIG9kZXIgZGVtIExhcHRvcCBzdGF0dCB1bmQga2FubiBtaXQKTXVzaWsgb2RlciBHZXJhZXVzY2hlbiB1bnRlcm1hbHQgd2VyZGVuLiBEaWUgUG93ZXJwb2ludC1QcmFlc2VudGF0aW9uIHZlcmZvbGd0CmVpbmVuIGFlaG5saWNoZW4gWndlY2sgd2llIGRhcyBSYWQgZGVzIFBmYXVzLiBTaWUgc29sbCBHZWduZXIgdW5kIEZyYXVlbgpiZWVpbmRydWNrZW4sIGFiZXIgZWluZSBlY2h0ZSBGdW5rdGlvbiBoYXQgc2llIG5pY2h0LiBWaWVsZSBNZW5zY2hlbiwgZGllIHNpY2gKZWluZSBQb3dlcnBvaW50LVByYWVzZW50YXRpb24gYW5zZWhlbiwgd2VyZGVuIHdlbmlnZSBUYWdlIHNwYWV0ZXIgZW50bGFzc2VuLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJhaG5ob2Y/ISAoQW5hdG9sLCAxMC4gSmFuIDIwMDYsIDE4OjI4OjIyKToKfiMhIHJuPUh1bW5pIHJ0PTExMzY4ODgyMjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM2NzYzNzg5CkR1IHVudGVyc2NoYWV0enQgZGVuIEFiZXJnbGF1YmVuIGRlciBicmVpdGVuIEJldm9lbGtlcnVuZywgZGllCnNpY2gsIGF1ZmdydW5kIHZpZXJ3b2VjaGlnZXIgUHJheGlzZXJmYWhydW5nIG1pdCBFeGNlbCwgZnVlcgpJVC1IaWdoLVByb2Zlc3Npb25hbHMgaGFlbHQuCgpQb3dlcnBvaW50IGlzdCBzb29vbyB0b2xsLiAKCkZvbGllIDE6IHJvdGUgU2NocmlmdCBhdWYgYmxhdWVtIEdydW5kLiBEcmVpIHZlcnNjaGllZGVuZSBTY2hyaWZ0YXJ0ZW4KdW5kIHZpZXIgdmVyc2NoaWVkZW5lIC1ncm9lc3Nlbi4gSmVkZXIgVW50ZXJwdW5rdCBlcnNjaGVpbnQgYW5pbWllcnQKdW5kIGZsdWZmdCB2b24gZWluZXIgYW5kZXJlbiBTZWl0ZSBoZXJlaW4uCgpGb2xpZSAyOiBXZWlzcyBpY2ggbmljaHQsIGljaCBiaW4gZ2VnYW5nZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQmFobmhvZj8hIChBbmF0b2wsIDEwLiBKYW4gMjAwNiwgMTg6MzA6MjQpOgp+IyEgcm49QW5hdG9sIHJ0PTExMzY5MTQxMDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM2NzYzNzg5ClVubm9ldGlnIHVlYnJpZ2VucyB6dSBlcndhZWhuZW46IFNjaHJpZnRncm9lc3NlbiBiaXMgMTAtcHVua3QsIEZvbGllCmhvZmZudW5nc2xvcyB1ZWJlcmxhZGVuLiBNQU5OLiBVbmQgc293YXMgbmVubnQgc2ljaCBkYW5uICJSZXBvcnRpbmcKYW4gZGFzIE1hbmFnZW1lbnQiLiBJY2ggaGFiIG5vY2ggbmljaHQgZWluZSBlaW56aWdlIFJ1ZWNrZnJhZ2UgenUgZGllc2VuCkZvbGllbiBlcmxlYnQuIFZpZWxsZWljaHQgd2FyIGRhcyBkZXIgU2lubjogRGllIEZvbGllIHNvIHp1IGdlc3RhbHRlbiwKZGFzcyBqZWRlciBkZXIgYW53ZXNlbmRlbiBQcm9qZWt0LSwgRW50d2lja2x1bmdzLSB1bmQgUHJvZ3JhbW1sZWl0ZXIKZGVua3QgIk9oIEhlcnIsIGxhc3MgZXMgc2NobmVsbCB2b3JiZWlnZWhlbi4gV2VubiBpY2ggZ2FueiBzdGlsbCBiaW4sCmdlaHQgZXMgZGFubiBzY2huZWxsZXI/ISIuCgpVbmQgaWNoIGRhY2h0ZSwgSUNIIHdhZXJlIEFuZmFlbmdlci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBCYWhuaG9mPyEgKEh1bW5pLCAxMC4gSmFuIDIwMDYsIDE5OjE0OjE0KToKfiMhIHJuPUFuYXRvbCBydD0xMTM2OTE0MjI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNjc2Mzc4OQpUamEuIEljaCBzZWhlIHVlYmxpY2hlcndlaXNlIFByYWVzZW50YXRpb25lbiB1ZWJlciBGb3JtZWwtMS1XYWdlbiBvZGVyCkxpY2h0c2Nod2VydGVyLCBzb3dpZSB1ZWJlciBDb21wdXRlcnNwaWVsZS4gRGllIHNpbmQgdWVibGljaGVyd2Vpc2UgbWl0Cmdyb3NzZW4gQnVjaHN0YWJlbi4gIkxlc2JhcmtlaXQiIGlzdCBhdWNoIGltbWVyIGVpbiBLcml0ZXJpdW0gOy0pCgpHZWh0IGFsc28gZG9jaCA7LSkgQWNodGtsYWVzc2xlciBrb2VubmVuIGRhcywgd2VubiBtYW4gZGllIGRhenUgYnJpbmd0LApHcnVuZHJlZ2VsbiB6dSBiZWFjaHRlbi4gQWJlciBkYSBsYWV1ZnQgYXVjaCBrZWluZXIgaW4gR2VmYWhyLCB6dXZpZWwgenUKc2NocmVpYmVuLi4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQmFobmhvZj8hIChNdWFkaWIsIDEwLiBKYW4gMjAwNiwgMjA6MTk6NDcpOgp+IyEgcm49Wm9vayBydD0xMTM2ODg3MTM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNjc2Mzc4OQpzdGltbXQsIGRhcmF1ZiB2ZXJ3ZWlzdCBkdSByZWdlbG1hZXNzaWcgOzopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCYWhuaG9mPyEgKE11YWRpYiwgMTAuIEphbiAyMDA2LCAyMDoyMTo1MSk6Cn4jISBybj1IdW1uaSBydD0xMTM2ODg4MjI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNjc2Mzc4OQphY2ggZGFubiBuaW1tdCBtYW4gaGFsdCBuaWNodCBwcCBzb25kZXJuIGltcHJlc3MgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBCYWhuaG9mPyEgKE11YWRpYiwgMTAuIEphbiAyMDA2LCAyMDoyNDo1MSk6Cn4jISBybj1BbmF0b2wgcnQ9MTEzNjkxNDIyNCByZz1zY2htYXJybgp+IyEgdGlkPTExMzY3NjM3ODkKZXMgZ2VodCBhbGxlcyBpbW1lciBzY2hsaW1tZXIKaWNoIGhhYmUgbWFsIGZvbGllbiB6dSBlaW5lbSB2b3J0cmFnIGJla29tbWVuLCB1bSBpaG4genUgaGFsdGVuCmRpZSBmb2xpZW4gZW50c3ByYWNoZW4gZGVtIGJlZ2xlaXRidWNoLCBkYXMgaGVpc3N0IDgwIHplaWxlbiA5UHVua3QgUHJvc2EKaWNoIGhhYiBkYXMgZGFubiBhdXNnZXRlaWx0IHVuZCBkaWUgNSB0YWdlIHN0YXR0ZGVzc2VuIG1pdCB3aGl0ZWJvYXJkCmdlYXJiZWl0ZXQKYmlzIGF1ZiBkZW4gdmVyYW5zdGFsdGVyIGhhdCBzaWNoIG5pZW1hbmQgYmVzY2h3ZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCYWhuaG9mPyEgKEFuYXRvbCwgMTAuIEphbiAyMDA2LCAyMDo0Nzo1Mik6Cn4jISBybj1NdWFkaWIgcnQ9MTEzNjkyMTA5MSByZz1zY2htYXJybgp+IyEgdGlkPTExMzY3NjM3ODkKRGFzIHZlcm1hZyBpY2ggbmljaHQgenUgdG9wcGVuLgoKR3J1bmRndWV0aWdlciwgZGFzIFdJTEwgaWNoIG5pY2h0IHRvcHBlbi4KCipncnVzZWwqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQmFobmhvZj8hIChNdWFkaWIsIDEwLiBKYW4gMjAwNiwgMjA6NTY6NTcpOgp+IyEgcm49QW5hdG9sIHJ0PTExMzY5MjI0NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM2NzYzNzg5CmVzIHdhciByZWNodCBzcGFzc2lnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCYWhuaG9mPyEgKE1haGFyZXQsIDEwLiBKYW4gMjAwNiwgMjM6MDM6MTkpOgp+IyEgcm49SHVtbmkgcnQ9MTEzNjkxNjg1NCByZz1zY2htYXJybgp+IyEgdGlkPTExMzY3NjM3ODkKRGllIHVlYmVyIExpY2h0c2Nod2VydGVyIHdhciB2b24gSm9uLCByaWNodGlnPwoKTWFoYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQmFobmhvZj8hIChHbG9pbnNvbiwgMTAuIEphbiAyMDA2LCAyMzowNToyMSk6Cn4jISBybj1NYWhhcmV0IHJ0PTExMzY5MzA1OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM2NzYzNzg5CkluaGFsdD8gSG9lcnQgc2ljaCBuYWNoIGVpbmVtIGludGVyZXNzYW50ZW4gZmVsZCBhbi4gSW1tZXJoaW4gdmVya2F1ZnQgc2ljaCBqYQphdWNoIGRhcyBidWNoICJTdGFydHJlay10ZWNobmlrIiBndXQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQmFobmhvZj8hIChHcmltbWJvcm4sIDExLiBKYW4gMjAwNiwgMTE6MDI6NTUpOgp+IyEgcm49TXVhZGliIHJ0PTExMzY5MjMwMTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM2NzYzNzg5CkZ1ZXIgc293YXMgYnJhdWNodHMga2VpbiBLcmFmdHB1bmt0LiBJY2ggZXJpbm5lcmUgbWljaCBhbiBtZWluZSBKdWdlbmQsCktvbGxvcXVpdW0gQW5vcmdhbmlzY2hlIENoZW1pZSwgZWluIFRoZW1hIGRhcyBub2NoIHVuaW50ZXJlc3NhbnRlciB3YXIgYWxzIGljaApiZWZ1ZXJjaHRldCBoYXR0ZSAoaXJnZW5kd2FzIG1pdCBQaG9zcGhvcnNhZXVyZW4sIElJUkMpLiBWb3J0cmFnZW5kZXIgd2FyIGVpbgpBc2lhdGUsIG1pdCBlbnRzcHJlY2hlbmRlbSAiRW5nbGlzY2giLiBTY2h3ZXIgenUgdmVyc3RlaGVuLiBGb2xpZW4gaGF0dGUgZXIKYXVjaCBkYWJlaSwgZ2VzY2hhZXR6dGUgNzUgU3R1ZWNrIGZ1ZXIgc2VpbmUgNDUgbWluIFZvcnRyYWcgKG5laW4sIGRhcyBpc3QKbmljaHQgdWViZXJ0cmllYmVuKS4gRm9saWVuLCBkaWUgYXVjaCBlaGVyIEJ1Y2hjaGFyYWt0ZXIgaGF0dGVuLiBBbHMKVHVlcGZlbGNoZW4gYXVmIGRlbSBpIHdhciBkZXIgVm9ydHJhZ2VuZGUgZGFubiBhdWNoIG5vY2ggZGVyIE1laW51bmcsIGRhIGVyIGphCkluaGFsdCBhdWYgZGVuIEZvbGllbiBoYXR0ZSwga29lbm5lIGVyIG11ZW5kbGljaCAoc2Nod2VyIHZlcnN0YWVuZGxpY2gpIGV0d2FzCmFuZGVyZXMgZXJ6YWVobGVuLCB1bmFiaGFlbmdpZyB2b24gZGVuIEZvbGllbi4gR3JhdWVuaGFmdC4gV2VkZXIga29ubnRlIG1hbgpkZW0gbXVlbmRsaWNoZW4gVm9ydHJhZyBzbyByaWNodGlnIGZvbGdlbiBhdWZncnVuZCB2b24gU3ByYWNoYmFycmllcmVuLCBub2NoCmRlbSBGb2xpZW52b3J0cmFnIHdlaWwgZGllIHp1IHNjaG5lbGwgd2VjaHNlbHRlbi4gVW5kIGRhcyBiZWkgZWluZW0KdW5pbnRlcmVzc2FudGVuIFRoZW1hLgpBYiBldHdhIGRlciA1LiBNaW51dGUgaGFiZSBpY2ggZGllIFplaXQgZGFtaXQgenVnZWJyYWNodCwgbWFzc2l2c3QgZ2VnZW4gZGVuClNjaGxhZiBhbnp1a2FlbXBmZW4uIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQmFobmhvZj8hIChNdWFkaWIsIDExLiBKYW4gMjAwNiwgMTI6NDU6MTgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMzY5NzM3NzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM2NzYzNzg5CmRpZSBmb2xpZW4gd2FyZW4gYXVjaCBpbiBtZWluZW0gZmFsbGUgcGh5c2lzY2ggdm9yaGFuZGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQmFobmhvZj8hIChHbm9tZSwgMTEuIEphbiAyMDA2LCAxMzo1NTozNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEzNjk3Mzc3NSByZz1zY2htYXJybgp+IyEgdGlkPTExMzY3NjM3ODkKZGFtYWxzIGluIGRlciBQSS1WTCBiZWkgdW5zIGdhYidzIGJlaSBldHdhIDIgZm9saWVuL21pbiBmb2xnZW5kZW4Kendpc2NoZW5ydWY6ICdub2NoIGVpbiBiaXNzY2hlbiBzY2huZWxsZXIgdW5kIGVzIHdpcmQgbmVuIGZpbG0hJwpkYXMgaGFsZi4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogQmFobmhvZj8hIChSb25kYSwgMTIuIEphbiAyMDA2LCAyMzo1MTozMSk6Cn4jISBybj1Hbm9tZSBydD0xMTM2OTg0MTM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNjc2Mzc4OQpXaWUgaGFsZiBkYXM/IERlciBlbnRzcHJlY2hlbmRlIFN0dWRpIGhhdHRlIGluIGRlciBtdWVuZGxpY2hlbiB6dSBkZW0gRmFjaCBuZW4KUHJvYmxlbT8KCkljaCBmYW5kIGRlbiBEaXBsb21hcmJlaXRzdm9ydHJhZyB0b2xsLCBkZW4gZGVyIFN0dWRpIG1pdCBXb3JkIGdlbWFjaHQgaGF0dGUuCk51ciBUZXh0LiBLb21wbGV0dGUgQTQtU2VpdGUgcGVyIEJlYW1lciBhbiBkaWUgV2FuZCBnZXdvcmZlbi4gREFTIGthbSBkYWJlaQpyYXVzLCB3ZW5uIG1hbiBudXIgZGlyZWt0IHZvbSBQcm9mIGFsbGVpbiBiZXRyZXV0IHd1cmRlLi4uCgpSb25kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2hlbGxza3JpcHQgKFJvbmRhLCAxMi4gSmFuIDIwMDYsIDIzOjUzOjAxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTM2OTc0MDk3IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTEzNjkyMzk3OApEYXJmIGljaCBkaWUgZ2FuemVuIFplaWxlbiBpbiBPcmFjbGUgaW1wb3J0aWVyZW4gdW5kIGRhIGRhbm4gc2VsZWN0cyBhYnNldHplbj8KClJvbmRhICppbiBkZXIgcmljaHRpZ2VuIFJ1YnJpayoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBCYWhuaG9mPyEgKFpvb2ssIDEzLiBKYW4gMjAwNiwgMTA6NDE6MTApOgp+IyEgcm49Um9uZGEgcnQ9MTEzNzEwNjI5MSByZz1zY2htYXJybgp+IyEgdGlkPTExMzY3NjM3ODkKKmxhY2gqIE5hamEsIGF1Y2ggc2VociBzY2hpY2suIEFiZXIsIHdhcnVtIGhhdCBlciBkZW5uIGRhbm4gbmljaHQgYXVmIGRpZQpUYWZlbCBnZXNjaHJpZWJlbi4uLj8gOykgWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHNvbW1lcnBhcnR5IDA2IC0gdGVybWluZT8gKFpvb2ssIDEzLiBKYW4gMjAwNiwgMTY6NDY6MTEpOgp+IyEgb249Wm9vayBvdD0xMTM3MTY3MTY3IG9nPXBhcnR5Cn4jISBybj1NdWFkaWIgcnQ9MTEzNzE2NjU5MyByZz1wYXJ0eQp+IyEgdGlkPTExMzcxNTM3MDUKbnVuIHZlcndlbmRlbiBlcyBzY2hvbiB6d2VpLiBkYW5uIG11c3MgaWNoIG1hbCBuYWNoZnJhZ2VuOiB3YXMgYmVkZXV0ZXQgZGVubgpkYXMgInJlYWwiIGluIGV1cmVyIGZyYWdlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogc29tbWVycGFydHkgMDYgLSB0ZXJtaW5lPyAoR2xvaW5zb24sIDEzLiBKYW4gMjAwNiwgMTc6MDc6MDQpOgp+IyEgcm49Wm9vayBydD0xMTM3MTY3MTcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzE1MzcwNQpLb21wbGV4ZSBTY2h1ZWxlcjogU2NodWVsZXIgYXVmIGRlciBSZWFsc2NodWxlIG1pdCBJbWFnaW5hdGlvbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogQmFobmhvZj8hIChSb25kYSwgMTQuIEphbiAyMDA2LCAxMjoyOTozNCk6Cn4jISBybj1ab29rIHJ0PTExMzcxNDUyNzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM2NzYzNzg5Ck5hamEsIGRlciBTdHVkaSBoYWV0dGUgbmljaHQgc28gc2NobmVsbCBzY2hyZWliZW4ga29lbm5lbiwgd2llIGVyIHByYWVzZW50aWVydApoYXQgLSBqYSwgZXMgaXN0IGZ1ZXIgQXVzc2Vuc3RlaGVuZGUgZWluIGZhc3ppbmllcmVuZGVzIEVybGVibmlzLCB3ZW5uIGplbWFuZApjYSAyMCB2b2xsZSBBNC1TZWl0ZW4gYWxzICJEaXBsb21hcmJlaXRzLVZvcnRyYWciIGFuIGRpZSBXYW5kIGtuYWxsdC4gV2VubiBtYW4KZGFiZWkgYWJlciBkaWUgZ2FuemUgWmVpdCBnZWlzdGlnZSBBbndlc2VuaGVpdCBzaW11bGllcmVuIG11c3MsIGlzdCBkYXMgZ2FuegpzY2hvZW4gc2Nod2VyLi4uIDstKQoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBzb21tZXJwYXJ0eSAwNiAtIHRlcm1pbmU/IChHbG9pbnNvbiwgMTQuIEphbiAyMDA2LCAyMzozMzo0Nyk6Cn4jISBybj1MdWcgcnQ9MTEzNzI1NTYzMiByZz1wYXJ0eQp+IyEgdGlkPTExMzcxNTM3MDUKV2VubiBkdSBkYW5uIG1hbCB2b3JiZWlrb21tc3QgLi4uIHdhcnN0IGR1IGxldHp0ZXMgSmFociBkYT8gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogc29tbWVycGFydHkgMDYgLSB0ZXJtaW5lPyAoQm9pbmcsIDE2LiBKYW4gMjAwNiwgMDk6MDk6MTMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEzNzI3ODAyNyByZz1zY2htYXJybgp+IyEgdGlkPTExMzcxNTM3MDUKTXVzcyBtYW4gbGV0enRlcyBKYWhyIGRhZ2V3ZXNlbiBzZWluIHVtIGRpZXNlcyBKYWhyIGtvbW1lbiB6dSBkdWVyZmVuPwpTY2hhZGUgLi4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBzb21tZXJwYXJ0eSAwNiAtIHRlcm1pbmU/IChHbG9pbnNvbiwgMTYuIEphbiAyMDA2LCAxMjoyMjo1MSk6Cn4jISBybj1Cb2luZyBydD0xMTM3Mzk4OTUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzE1MzcwNQpGdWVyIEV4Z29ldHRlciBnaWJ0IGVzIGltbWVyIGVpbmVuIFdpbmtlbHp1ZyAuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdyYWQgZ2VmdW5kZW46IEthbG9yaWVuIGJlaW0gU2V4IChCb2luZywgMTcuIEphbiAyMDA2LCAxNDo0NDoyMSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTEzNzUwNTMyMSByZz13aXR6ZQp+IyEgdGlkPTExMzc0OTgxMDUKU2Nob2VuIGRhc3MgRHUgZGFzIE9mZmVuc2ljaHRsaWNoZSBub2NobWFsIGZ1ZXIgYWxsZSB6dXNhbW1lbmdlZmFzc3QKaGFzdCAuLi4gOykKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR3JhZCBnZWZ1bmRlbjogS2Fsb3JpZW4gYmVpbSBTZXggKENyb2Z0LCAxNy4gSmFuIDIwMDYsIDE0OjQ1OjUxKToKfiMhIHJuPUJvaW5nIHJ0PTExMzc1MDU0NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM3NDk4MTA1CkhtLiAgSWNoIGRlbmtlIGRhc3MgbWFuIGR1cmNoIGRpZSBadXNhbW1lbnN0ZWxsdW5nIGVpbmVzIHdpZWRlcmhvbGJhcmVuClN6ZW5hcmlvcyBhdWYgbGFuZ2ZyaXN0aWcgZ2VzZWhlbiBiZXNzZXJlIEVyZ2Vibmlzc2Uga29tbXQuICBVbmQgdm9yCmFsbGVtIGF1Y2ggZ3VlbnN0aWdlcmUuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR3JhZCBnZWZ1bmRlbjogS2Fsb3JpZW4gYmVpbSBTZXggKEFudGhlYSwgMTcuIEphbiAyMDA2LCAxNDo0NzowMSk6Cn4jISBybj1Dcm9mdCBydD0xMTM3NTA1NTUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzQ5ODEwNQpEYW5uIHRyaXR0IGRlciBHZXdvZWhudW5nc2VmZmVrdCBlaW4gdW5kIG1hbiB2ZXJicmF1Y2h0IHdpZWRlciB2aWVsLCB2aWVsCndlbmlnZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHcmFkIGdlZnVuZGVuOiBLYWxvcmllbiBiZWltIFNleCAoQ3JvZnQsIDE3LiBKYW4gMjAwNiwgMTk6MDc6MzQpOgp+IyEgcm49Tmljb2xhaSBydD0xMTM3NTE5NzE4IHJnPXdpdHplCn4jISB0aWQ9MTEzNzQ5ODEwNQpIZXVjaGxlciwgZGFmdWVyIHJlaWNoZW4gNCEKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHcmFkIGdlZnVuZGVuOiBLYWxvcmllbiBiZWltIFNleCAoTmljb2xhaSwgMTcuIEphbiAyMDA2LCAxOTowOTowMik6Cn4jISBybj1Dcm9mdCBydD0xMTM3NTIxMjU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzQ5ODEwNQo0IGlzdCBkZXIgYW5mYWVuZ2VyLWtyb25sZXVjaHRlciBzdGltbXQuCndlbm4gZGlyIGRhcyByZWljaHQgZGFubiBiaXR0ZSA6PSkKCm5pY29sYWkgaXNzZSBzdXBlcmhlZnRpZyBrcmFzc293aXRzY2ggZ2VuZXJhbAoodW5kIHphdWJpIGhhdCBleHRyYS1oYW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV29XIG1lZXRzIFBvcm4gKFJvbmRhLCAxOC4gSmFuIDIwMDYsIDIzOjM5OjQ2KToKfiMhIHJuPUx1ZyBydD0xMTM3NjA3NzIyIHJnPXd3dwp+IyEgdGlkPTExMzc1OTA3MTIKQWVoLCBMdWcuIER1IGhhc3QgZGEgd2FzIG1pc3N2ZXJzdGFuZGVuLiBCZWkgaWhtIGhhdCBzaWNoIG5lIGthcHV0dGUKUG9ybm8tRGF0ZWkgdmVya2xlbW10LiBPYiBkYXMgd2VoIHR1dCAtIGtlaW5lIEFobnVuZz8KClJvbmRhICpmdWVyIGdsdWVja2xpY2hlIEJpdHMgdW5kIEJ5dGVzKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IFN1Y2hlIFRpcHBzIGZ1ZXIgd2lzc2Vuc2NoYWZ0bGljaGVzIFNjaHJlaWJlbiBJSSAoQWxrb2hvbCwgMTkuIEphbiAyMDA2LCAxMjoyNDoxNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEzNzYxNTY3MyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTEzNzQ4MTAzNgp3ZW5uIGljaCBuaWNodCB3dWVzc3RlLCBkYXNzIGVzIGtvbXBsZXR0IHNpbm5sb3MgaXN0LCB3dWVyZGUgaWNoIGphIGdlcm5lCmRhcnVlYmVyIHdlaXRlcmRpc2t1dGllcmVuLiBEZWZpbmllciBkaXIgc2Nob2VuIHdlaXRlciBkZWluZSBXZWx0LCB3aWUgZHUgc2llCmdlcm5lIGhhZXR0ZXN0LgoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IFN1Y2hlIFRpcHBzIGZ1ZXIgd2lzc2Vuc2NoYWZ0bGljaGVzIFNjaHJlaWJlbiBJSSAoR3JpbW1ib3JuLCAxOS4gSmFuIDIwMDYsIDEzOjI0OjEwKToKfiMhIHJuPUFsa29ob2wgcnQ9MTEzNzY2OTg1NyByZz1zY2htYXJybgp+IyEgdGlkPTExMzc0ODEwMzYKTmFqYSwgenVyIFNhY2hlIGhhc3QgRHUgRGljaCBiaXNoZXIgamEgYXVjaCBub2NoIGluIGtlaW5zdGVyIFdlaXNlIGdlYWV1c3NlcnQuCkluc29mZXJuIHN0aW1tZSBpY2ggRGlyIHZvZWxsaWcgenUsIGRhc3MgZGFzIHNpbm5sb3Mgd2FlcmUuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBTdWNoZSBUaXBwcyBmdWVyIHdpc3NlbnNjaGFmdGxpY2hlcyBTY2hyZWliZW4gSUkgKEFsa29ob2wsIDE5LiBKYW4gMjAwNiwgMTM6NDE6MDcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMzc2NzM0NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM3NDgxMDM2CmljaCBoYWIgYXVjaCBrZWluZSBMdXN0IG1pY2ggenUgYWV1c3Nlcm4uIEljaCBhZXVzc2VyIG1pY2ggZXJzdCwgd2VubiBkdSBoaWVyCmRlaW5lIERlZmluaXRpb24gdm9uIEdlaXN0ZXN3aXNzZW5zY2hhZnRlbiBzYWdzdC4gV2FzIGVpbmUgRGVmaW5pdGlvbiBpc3QsIGhhdAprYW0gZG9jaCBzaWNoZXIgYmVpIGV1cmVuIFRpc2NoZ2VzcHJhZWNoZW4genVyIFNwcmFjaGUsIGRhcyBzb2xsdGVzdCBkdSBkYW5uCmphIHdpc3Nlbi4KCkFsa2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBTdWNoZSBUaXBwcyBmdWVyIHdpc3NlbnNjaGFmdGxpY2hlcyBTY2hyZWliZW4gSUkgKFpvb2ssIDE5LiBKYW4gMjAwNiwgMTQ6Mjk6MDkpOgp+IyEgcm49QWxrb2hvbCBydD0xMTM3Njc0NDY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzQ4MTAzNgpJY2ggcHJvYmllcidzIG1hbDoKCi0tCkRpZSBHZWlzdGVzd2lzc2Vuc2NoYWZ0ZW4gc2luZCBkZXIgSW5iZWdyaWZmIGRlcmplbmlnZW4gV2lzc2Vuc2NoYWZ0ZW4sIGRpZQpzaWNoIG1pdCBrdWx0dXJlbGwtZ2Vpc3RpZ2VuIFNjaG9lcGZ1bmdlbiB3aWUgV2lzc2Vuc2NoYWZ0LCBLdW5zdCwgUmVsaWdpb24sClN0YWF0LCBSZWNodCB1c3cuIGJlZmFzc2VuLgotLQoKQXVzIGRlbSBkZXV0c2Noc3ByYWNoaWdlbiBBbmdlYm90IHZvbiBXaWtpcGVkaWEuIAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBTdWNoZSBUaXBwcyBmdWVyIHdpc3NlbnNjaGFmdGxpY2hlcyBTY2hyZWliZW4gSUkgKEJhbWJ1bGtvLCAxOS4gSmFuIDIwMDYsIDE0OjQyOjIwKToKfiMhIHJuPVpvb2sgcnQ9MTEzNzY3NzM0OSByZz1zY2htYXJybgp+IyEgdGlkPTExMzc0ODEwMzYKRXMgaGVpc3N0IGphIGF1Y2ggIk1hdGhlbWF0aXNjaC1OYXR1cndpc3NlbnNjaGFmdGxpY2hlIEZha3VsdGFldCIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogU3VjaGUgVGlwcHMgZnVlciB3aXNzZW5zY2hhZnRsaWNoZXMgU2NocmVpYmVuIElJIChHcmltbWJvcm4sIDE5LiBKYW4gMjAwNiwgMTQ6NDI6NTIpOgp+IyEgcm49Wm9vayBydD0xMTM3Njc3MzQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzQ4MTAzNgpVbmQgRHUgYmlzdCBkZXIgTWVpbnVuZyBkYXNzIGRhcyBXb3J0ICJJbmJlZ3JpZmYiIGluIGRpZXNlbSBTYXR6IGlyZ2VuZHdpZQpTaW5uIG1hY2h0PyBJY2ggaXJnZW5kd2llIG5pY2h0LiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IFN1Y2hlIFRpcHBzIGZ1ZXIgd2lzc2Vuc2NoYWZ0bGljaGVzIFNjaHJlaWJlbiBJSSAoWm9vaywgMTkuIEphbiAyMDA2LCAxNDo1MDo0MCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEzNzY3ODE3MiByZz1zY2htYXJybgp+IyEgdGlkPTExMzc0ODEwMzYKS2VpbmUgQWhudW5nLiBJY2ggYmluIGVoIG5pY2h0IHNvIGdlaWwgYXVmIGlyZ2VuZHdlbGNoZSBLYXRlZ29yaXNpZXJ1bmdzLQpkZWJhdHRlbi4gRGFzIGZpbmQgaWNoIHNjaG9uIGJlaSBkZW4gQmV0cmllYnN3aXJ0ZW4gZW50c3ByZWNoZW5kIGxhZXN0aWcuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6IFN1Y2hlIFRpcHBzIGZ1ZXIgd2lzc2Vuc2NoYWZ0bGljaGVzIFNjaHJlaWJlbiBJSSAoR3JpbW1ib3JuLCAxOS4gSmFuIDIwMDYsIDE0OjU5OjA1KToKfiMhIHJuPVpvb2sgcnQ9MTEzNzY3ODY0MCByZz1zY2htYXJybgp+IyEgdGlkPTExMzc0ODEwMzYKTmVpbiwgaWNoIG1laW5lIGRhcyByZWluIGZvcm1hbC4gIkluYmVncmlmZiIgaXN0IGZ1ZXIgbWljaCBldHdhcyBhbmRlcmVzLCBvZGVyCnd1ZXJkZXN0IER1IHNhZ2VuICJNYWdpZXIiIGlzdCBkZXIgSW5iZWdyaWZmIHZvbiBab29rLCBNYXJjdXMsIEdyaW1tYm9ybiB1bmQKQXJrPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogU3VjaGUgVGlwcHMgZnVlciB3aXNzZW5zY2hhZnRsaWNoZXMgU2NocmVpYmVuIElJIChIdW1uaSwgMTkuIEphbiAyMDA2LCAxNTowMjoyOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEzNzY3OTE0NSByZz1zY2htYXJybgp+IyEgdGlkPTExMzc0ODEwMzYKSG1tLiAiTWFnaWVyIiBpc3QgdW5pdmVyc2VsbGUgRWlnZW5zY2hhZnQgdm9uIG1hcmN1cywgR3JpbW1ib3JuLCBBcmsgdW5kIFpvb2sKLSBhbHMgIkdyb3NzdmF0ZXItRWlnZW5zY2hhZnQiIG5hY2ggU2Nob2Vud2FlbGRlciB3YWVyZSBkZXIgSW5iZWdyaWZmIGVoZXIKTWVybGluLi4uCgpQYXNzdCBtZWluZXIgTWVpbnVuZyBuYWNoIHNjaG9uLgoKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogU3VjaGUgVGlwcHMgZnVlciB3aXNzZW5zY2hhZnRsaWNoZXMgU2NocmVpYmVuIElJIChab29rLCAxOS4gSmFuIDIwMDYsIDE1OjAyOjQ1KToKfiMhIHJuPVpvb2sgcnQ9MTEzNzY3NzM0OSByZz1zY2htYXJybgp+IyEgdGlkPTExMzc0ODEwMzYKVWVicmlnZW5zIGZpbmRlIGljaCBrZWluZW4gV2lraXBlZGlhLUFydGlrZWwsIGRlciBkaWUgTWF0aGVtYXRpayBkZW4KR2Vpc3Rlc3dpc3NlbnNjaGFmdGVuIHp3ZWlmZWxzZnJlaSB6dW9yZG5ldC4gSGFzdCBEdSBuZSBRdWVsbGUgZnVlciBEZWluZQpFaW5vcmRudW5nLCBHcmltbWJvcm4/IDspCgpaT29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IFN1Y2hlIFRpcHBzIGZ1ZXIgd2lzc2Vuc2NoYWZ0bGljaGVzIFNjaHJlaWJlbiBJSSAoR3JpbW1ib3JuLCAxOS4gSmFuIDIwMDYsIDE1OjExOjExKToKfiMhIHJuPVpvb2sgcnQ9MTEzNzY3OTM2NSByZz1zY2htYXJybgp+IyEgdGlkPTExMzc0ODEwMzYKTmljaHQgenVyIEhhbmQsIGRpZSBQdWJsaWthdGlvbmVuIGRlciBETVYgbGFzc2VuIHNpY2ggKHZvbiBtaXIpIG5pY2h0CmR1cmNoc3VjaGVuLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVFYtd2FybnVuZyAoQW5hdG9sLCAyMi4gSmFuIDIwMDYsIDE1OjU4OjM4KToKfiMhIG9uPUFuYXRvbCBvdD0xMTM3OTQxOTEwIG9nPWt1bHR1cgp+IyEgcm49TWllemUgcnQ9MTEzNzk0MTc4MiByZz1rdWx0dXIKfiMhIHRpZD0xMTM3OTQxNTgyCldpZXNvLCBBbmdzdCB2b3IgQW5nZWxpbmE/IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtvbXBhdGliaWxpdGFldCBNRy1Ecml2ZXIgKEdub21lLCAyNC4gSmFuIDIwMDYsIDEzOjUxOjA0KToKfiMhIHJuPVZhbmlvbiBydD0xMTM3OTY3MDY4IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTM3OTY3MDY4CnRoZXJlIGFyZSB0aHJlZSBraW5kcyBvZiBwZW9wbGUgaW4gdGhpcyB3b3JsZDogdGhvc2UsIHdobyBjYW4gY291bnQKYW5kIHRob3NlIHdobyBjYW4ndC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoR2xvaW5zb24sIDI0LiBKYW4gMjAwNiwgMTM6NTU6MjApOgp+IyEgcm49R25vbWUgcnQ9MTEzODEwNzA2NCByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKRGF0ZW5iYW5rLVByb2dyYW1taWVyZXI/IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoSGlnaGxhbmRlciwgMjQuIEphbiAyMDA2LCAxMzo1NjoxNCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTM4MTA3MzIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OApJIHRob3VnaHQgdGhlcmUgd2VyZSAxMCBraW5kcyBvZiBwZW9wbGUuIFRob3NlIHdobyBrbm93IGJpbmFyeQphbmQgdGhvc2Ugd2hvIGRvbid0LgoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBLb21wYXRpYmlsaXRhZXQgTUctRHJpdmVyIChHbG9pbnNvbiwgMjQuIEphbiAyMDA2LCAxMzo1OTo0Mik6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTExMzgxMDczNzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM3OTY3MDY4ClVuZCB3YXMgaXN0IG1pdCAibnVsbCIuIEhhZT8gSGFlIT8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBLb21wYXRpYmlsaXRhZXQgTUctRHJpdmVyIChHcmltbWJvcm4sIDI0LiBKYW4gMjAwNiwgMTQ6MDg6MDEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEzODEwNzU4MiByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKRGllIE51bGwga29tbXQgYmVrYW5udGxpY2ggdm9uIGRlbiBBcmFiZXJuLCB1bmQgbWl0IGRlbiBBcmFiZXJuIHdvbGxlbiB3aXIKbW9tZW50YW4gYWJlciBhdWNoIGdhciBuaWNodHMgenUgdHVuIGhhYmVuLCBzb2xhbmdlIHNpZSBhbiBkZXIgQXRvbWJvbWJlCmJhdWVuIQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBLb21wYXRpYmlsaXRhZXQgTUctRHJpdmVyIChab29rLCAyNC4gSmFuIDIwMDYsIDE0OjA5OjQxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTM4MTA4MDgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OApCcmF1Y2h0IG1hbiBkaWUgTnVsbCBmdWVyIGRpZSBCb21iZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEtvbXBhdGliaWxpdGFldCBNRy1Ecml2ZXIgKEdyaW1tYm9ybiwgMjQuIEphbiAyMDA2LCAxNDoxNjozNSk6Cn4jISBybj1ab29rIHJ0PTExMzgxMDgxODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM3OTY3MDY4CkphLCBzaWNoZXIuIEJlaSBkZXIgQm9tYmUgd2lyZCBsZXR6dGxpY2ggZHVyY2ggTnVsbCBnZXRlaWx0LCB1bmQgRHUgYWxzCldpcnRzY2hhZnRzdGguIHNvbGx0ZXN0IGRvY2ggd2lzc2VuIGRhc3MgZGFubiBpbW1lciBnYW56IHNjaGxpbW1lIERpbmdlCnBhc3NpZXJlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoQmFtYnVsa28sIDI0LiBKYW4gMjAwNiwgMTQ6MTc6MTEpOgp+IyEgcm49Wm9vayBydD0xMTM4MTA4MTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OApXZWxjaGUgQXJhYmVyIGJhdWVuIGRlbm4gYW4gZGVyIEF0b21ib21iZT8gU2FkZGFtIG5pY2h0IG1laHIgdW5kIEdhZGRhZmkgd29obAphdWNoIG5pY2h0IG1laHIuCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoWm9vaywgMjQuIEphbiAyMDA2LCAxNDoxNzoyMyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEzODEwODU5NSByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKQWguIEthbm4gbWFuIGRlbiBFeHBvcnQgb2RlciBJbXBvcnQgdm9uIE51bGwgaXJnZW5kd2llIHVudGVyYmluZGVuPyBab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoR3JpbW1ib3JuLCAyNC4gSmFuIDIwMDYsIDE0OjE4OjEzKToKfiMhIHJuPVpvb2sgcnQ9MTEzODEwODY0MyByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKRGEgd2lyZCBzY2hvbiBtaXQgZGl2ZXJzZW4gTnVsbGVuIGluIHZpZWxlbiBHcmVtaWVuIHVuZCBPcmdhbmlzYXRpb25lbgpnZWdlbmdlYXJiZWl0ZXQuIEJpc2hlciBtaXQgZWhlciB3ZW5pZ2VyIEVyZm9sZywgYWxzbyBxdWFzaSBOdWxsZXJmb2xnLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoWm9vaywgMjQuIEphbiAyMDA2LCAxNDoxOTo1OSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEzODEwODY5MyByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKSG0uIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoTXVhZGliLCAyNC4gSmFuIDIwMDYsIDE1OjQ4OjI2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTM4MTA4MDgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OApkaWUgaXJhbmVyIHNpbmQga2VpbmUgYXJhYmVyIHNvbmRlcm4gcGVyc2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBLb21wYXRpYmlsaXRhZXQgTUctRHJpdmVyIChIaWdobGFuZGVyLCAyNC4gSmFuIDIwMDYsIDE1OjUwOjQwKToKfiMhIHJuPU11YWRpYiBydD0xMTM4MTE0MTA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OApOYXNpbSB3dWVyZGUgZGFyYXVmIGJlc3RlaGVuLiA6KQoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBLb21wYXRpYmlsaXRhZXQgTUctRHJpdmVyIChab29rLCAyNC4gSmFuIDIwMDYsIDE2OjAzOjExKToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9MTEzODExNDI0MCByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKT2IgbWFuIG5hY2ggODUzIFRhZ2VuIEFid2VzZW5oZWl0IG5vY2ggUmVjaHRlIGVpbmZvcmRlcm4ga2Fubi4uLj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBLb21wYXRpYmlsaXRhZXQgTUctRHJpdmVyIChHcmltbWJvcm4sIDI0LiBKYW4gMjAwNiwgMTY6MDU6MzMpOgp+IyEgcm49Wm9vayBydD0xMTM4MTE0OTkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OApBbHNvIGJpdHRlLCBkZXIgQXJhYmVyIGZhZW5ndCBhbiBkZXIgb2VzdGxpY2hlbiBNaXR0ZWxtZWVya3Vlc3RlIGFuIHVuZCBob2VydApkYW5uIHVuZ2VmYWVociBiZWkgSW5kaWVuIHdpZWRlciBhdWYsIGRhenUga29tbWVuIGRpZSBhZnJpa2FuaXNjaGVuIEFyYWJlci4KRGVyIGVpbmUgbmVubnQgc2ljaCBQZXJzZXIsIGRlciB6d2VpdGUgQmVyYmVyLCBkZXIgZHJpdHRlIEhhZGRlaGRpbi4gTWljaAppbnRlcmVzc2llcnQgZGllc2UgTWlrcm9ldGhub2xvZ2llIG5pY2h0LCB2b24gaGllciBhdXMgc2luZCBkYXMgYWxsZXMgQXJhYmVyLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoWm9vaywgMjQuIEphbiAyMDA2LCAxNjowNzo0MSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEzODExNTEzMyByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKLi4uIG9kZXIgUHJldXNzZW4/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEtvbXBhdGliaWxpdGFldCBNRy1Ecml2ZXIgKEdyaW1tYm9ybiwgMjQuIEphbiAyMDA2LCAxNjoxMzo1Myk6Cn4jISBybj1ab29rIHJ0PTExMzgxMTUyNjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM3OTY3MDY4Ck5hamEsIFJlY2h0c3JoZWluaXNjaGUgaGFsdC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEtvbXBhdGliaWxpdGFldCBNRy1Ecml2ZXIgKEJhbWJ1bGtvLCAyNC4gSmFuIDIwMDYsIDE2OjQ0OjEzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTM4MTE1MTMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OApOYWphLCBkYXMgaXN0IHNvIGFscyBvYiBEdSBzYWdzdCBkaWUgU3BhbmllciwgUG9sZW4sIEphcGFuZXIgdW5kIE1leGlrYW5lcgpoYWV0dGVuIGF1Y2ggZGllIEF0b21ib21iZS4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoWm9vaywgMjQuIEphbiAyMDA2LCAxNjo0NjoyMyk6Cn4jISBybj1CYW1idWxrbyBydD0xMTM4MTE3NDUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OApOdW4gdmVydW5zaWNoZXJuIFNpZSBkb2NoIGRlbiBCZXdhaHJlciBkZXMgRXJka3JlaXNlcyBuaWNodCBtaXQgc29sY2hlbgptaWtyb2V0aGlzY2hlbiBGZWluaGVpdGVuIQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEtvbXBhdGliaWxpdGFldCBNRy1Ecml2ZXIgKEFyaywgMjQuIEphbiAyMDA2LCAxNzoxODo0Nyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTEzODEwODA4MSByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKU3RyZW5nIGdlbm9tbWVuIFBlcnNlci4gQXJhYmVyIHd1ZXJkZW4gc2ljaCBuaWNodCBpbiBkZW4gZ2xlaWNoZW4gVG9wZiB3ZXJmZW4KbGFzc2VuLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEtvbXBhdGliaWxpdGFldCBNRy1Ecml2ZXIgKEx1ZywgMjQuIEphbiAyMDA2LCAyMzowNjoyOCk6Cn4jISBybj1BcmsgcnQ9MTEzODExOTUyNyByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKUGVyc2VyIGFscyBBcmFiZXIgenUgYmV6ZWljaG5lbiBtYWNodCBnZW5hdXNvdmllbCBTaW5uLCB3aWUgTGl0aGF1ZXIgYWxzClNsYXdlbiB6dSB0aXR1bGllcmVuLi4uCgpLb3Bmc2NodWV0dGVsbmQKTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBLb21wYXRpYmlsaXRhZXQgTUctRHJpdmVyIChab29rLCAyNC4gSmFuIDIwMDYsIDIzOjEwOjI2KToKfiMhIHJuPUx1ZyBydD0xMTM4MTQwMzg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OApBYmVyIHdlbm4gZGllIElyYW5lciBudW4gUGVyc2VyIHVuZCBuaWNodCBBcmFiZXIgc2luZCwgYWJlciBkaWUgQXJhYmVyIGRpZQpzaW5kIG1pdCBkZXIgZnVlciBkaWUgQXRvbWJvbWJlIHdpY2h0aWdlbiBOdWxsLiBXaWUga2FtIGRlbm4gZGllIE51bGwgenUgCmRlbiBQZXJzZXJuIHVuZCB3YXJ1bSBoYWJlbiB3aXIgbmljaHQgZGllIEF0b21ib21iZT8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogTGljaHQgKEFuYXRvbCwgMjQuIEphbiAyMDA2LCAyMzoxNTo0NSk6Cn4jISBvbj1BbmF0b2wgb3Q9MTEzODE0MDkzNyBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPUdsb2luc29uIHJ0PTExMzgxMDk1NDQgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTEzNzE4MjU5OAoxIFN0cmVpZmVuOiBLYW5uIExlc2VuCjIgU3RyZWlmZW46IEthbm4gTGVzZW4gdW5kIFNjaHJlaWJlbgozIFN0cmVpZmVuOiBLYW5uIHdlZGVyIExlc2VuIG5vY2ggU2NocmVpYmVuLCAuLi4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLiBrZW5udCBhYmVyIGplbWFuZCwgZGVyIGJlaWRlcyBrYW5uLgoKQW5hICJIYXVwdGdlZnJlaXRlIHNpbmQgbmlyZ2VuZHdvIGJlbGllYnQiIHRvbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoTXVwZmVsLCAyNC4gSmFuIDIwMDYsIDIzOjE2OjI5KToKfiMhIHJuPVpvb2sgcnQ9MTEzODE0MDYyNiByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKRGllIElyYW5lciBzaW5kIFBlcnNlciBVTkQgQXJhYmVyLiBKZSBuYWNoIFJlZ2lvbiBoYWx0LiBHcmFkZSBrb25udGUgbWFuCndpZWRlciBpbiBTUE9OIGxlc2VuLCBkYXNzIGRpZSBBcmFiZXIgaW0gSXJhbiBUZXJ6IG1hY2hlbiAoQm9tYmVuYW5zY2hsYWVnZSkuCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIERhZW1vbiBsdWVndCBuaWUgOykgKE5lZGltZSwgMjQuIEphbiAyMDA2LCAyMzo0MToyOCk6CktydWZ0dXJzIEF1Z2VuIHZlcmZpbnN0ZXJuIHNpY2ggdW5kIGZpeGllcmVuIGVpbmVuIG1pdHRlbGdyb3NzZW4KU2VpZGVuc3Bpbm5lci4KS3J1ZnR1ciB0ZWlsdCBEaXIgbWl0OgogIEljaCBoYWJlIGZvbGdlbmRlIEluZm9ybWF0aW9uIHVlYmVyIGVpbmVuIG1pdHRlbGdyb3NzZW4gU2VpZGVuc3Bpbm5lcgogIGVyaGFsdGVuOgogIEFyayBpc3QgZnVlciBkaWVzZW4gQmxvZWRzaW5uIHZlcmFudHdvcnRsaWNoLgoKTmVkaW1lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGVyIERhZW1vbiBsdWVndCBuaWUgOykgKEFyaywgMjUuIEphbiAyMDA2LCAwMDoyNzoxNik6Cn4jISBybj1OZWRpbWUgcnQ9MTEzODE0MjQ4OCByZz1zY2htYXJybgp+IyEgdGlkPTExMzgxNDI0ODgKVW50ZXIgRHJvZ2VuIHNwcmljaHQgamVkZXIgZGllICJXYWhyaGVpdCIgOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEZXIgRGFlbW9uIGx1ZWd0IG5pZSA7KSAoTmVkaW1lLCAyNS4gSmFuIDIwMDYsIDAwOjI4OjQ4KToKfiMhIHJuPUFyayBydD0xMTM4MTQ1MjM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzODE0MjQ4OApNdWVzc2VuIHppZW1saWNoIGd1dGUgRHJvZ2VuIGdld2VzZW4gc2Vpbi4gU2VpbiBOYWNoZm9sZ2VyIGVya2xhZXJ0ZSBtaXIKZGFubiwgbWFuIGtvZW5uZSBkZW4gU2VpZGVuc3Bpbm5lciB6dWVja2VuLiBJcmdlbmR3aWUgaW0gZmFsc2NoZW4gRmlsbSwgYWVoCldhbGQsIGRlciBndXRlLgoKTmVkaW1lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoQmFtYnVsa28sIDI1LiBKYW4gMjAwNiwgMTA6MTU6MTMpOgp+IyEgcm49TXVwZmVsIHJ0PTExMzgxNDA5ODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM3OTY3MDY4CktsYXIsIGRpZSBEZXV0c2NoZW4gc2luZCBhdWNoIERldXRzY2hlIFVORCBUdWVya2VuLiBKZSBuYWNoIFJlZ2lvbiBoYWx0LgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBLb21wYXRpYmlsaXRhZXQgTUctRHJpdmVyIChab29rLCAyNS4gSmFuIDIwMDYsIDEwOjE1OjQ1KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTExMzgxODA1MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM3OTY3MDY4ClVuZCBhdWYgTWFsbGU/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoR3JpbW1ib3JuLCAyNS4gSmFuIDIwMDYsIDEwOjI4OjA0KToKfiMhIHJuPUx1ZyBydD0xMTM4MTQwMzg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OApLbGFyIHNpbmQgZGllIExpdGF1ZXIgU2xhd2VuLCB3YXMgc29uc3Q/IFdvaG5lbiBzY2hsaWVzc2xpY2ggaW0KcmVjaHRzcmhlaW5pc2NoZW4gRXVyb3BhLCBhbHNvIGluIFNpYmlyaWVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoTXVhZGliLCAyNS4gSmFuIDIwMDYsIDEyOjE1OjExKToKfiMhIHJuPU11cGZlbCBydD0xMTM4MTQwOTg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OAphbHNvIGFsbGUgcmVnaW9uZW4gZGVzIGlyYW5zIGxpZWdlbiBvZXN0bGljaCBkZXMgc2NoYXR0IGFsIGFyYWJzIHVuZCBzaW5kCmRhaGVyIGltaG8gcGVyc2lzY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBLb21wYXRpYmlsaXRhZXQgTUctRHJpdmVyIChDcm9mdCwgMjUuIEphbiAyMDA2LCAxMjoxNjoyOSk6Cn4jISBybj1NdWFkaWIgcnQ9MTEzODE4NzcxMSByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKRC5oLiBlcyBrb2VubmVuIGtlaW5lIEFyYWJlciBpbiBwZXJzaXNjaGVuIFJlZ2lvbmVuIGxlYmVuPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBLb21wYXRpYmlsaXRhZXQgTUctRHJpdmVyIChab29rLCAyNS4gSmFuIDIwMDYsIDEyOjE2OjM3KToKfiMhIHJuPU11YWRpYiBydD0xMTM4MTg3NzExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OAouLi4gZWJlbnNvIGxpZWdlbiBhbGxlIFJlZ2lvbmVuIGRlcyBJcmFucyByZWNodHMgZGVzIFJoZWlucyAoc2llaGUgQXJ0aWtlbAoxOCB2b24gR3JpbW1ib3JuKS4gVW5kIHdhcyBmb2xndCBkYXJhdXM/IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEtvbXBhdGliaWxpdGFldCBNRy1Ecml2ZXIgKEJhbWJ1bGtvLCAyNS4gSmFuIDIwMDYsIDEyOjE3OjE3KToKfiMhIHJuPVpvb2sgcnQ9MTEzODE4Nzc5NyByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKRGllIFBlcnNlciwgQ2hpbmVzZW4sIEphcGFuZXIgc2luZCBhbGxlcyBTbGF3ZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoTXVhZGliLCAyNS4gSmFuIDIwMDYsIDEyOjI0OjIyKToKfiMhIHJuPUNyb2Z0IHJ0PTExMzgxODc3ODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM3OTY3MDY4CmtlaW5lIGluIGRlciByZWdpb24gZWluZ2Vib3JlbmVuIHp1bWluZGVzdCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEtvbXBhdGliaWxpdGFldCBNRy1Ecml2ZXIgKENyb2Z0LCAyNS4gSmFuIDIwMDYsIDEyOjI1OjMyKToKfiMhIHJuPU11YWRpYiBydD0xMTM4MTg4MjYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OApXaWV2aWVsZSBKYWhyZSBtdXNzIG1hbiBpbiBlaW5lciBSZWdpb24gYW5zYWVzc2lnIHNlaW4gdW0gYWxzIEVpbmdlYm9yZW5lcgp6dSB6YWVobGVuPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBLb21wYXRpYmlsaXRhZXQgTUctRHJpdmVyIChNdWFkaWIsIDI1LiBKYW4gMjAwNiwgMTI6MjY6MDQpOgp+IyEgcm49Q3JvZnQgcnQ9MTEzODE4ODMzMiByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKbWFuIG11c3MgZG9ydCBnZWJvcmVuIHNlaW4gb2ggY3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBLb21wYXRpYmlsaXRhZXQgTUctRHJpdmVyIChDcm9mdCwgMjUuIEphbiAyMDA2LCAxMjoyNjo1NCk6Cn4jISBybj1NdWFkaWIgcnQ9MTEzODE4ODM2NCByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKRC5oLiB3ZW5uIGVpbiBhcmFiaXNjaGVzIEVoZXBhYXIgZWluIEtpbmQgaW0gSXJhbiB6dXIgV2VsdCBicmluZ3QsIGlzdAplcyBhdXRvbWF0aXNjaCBlaW4gUGVyc2VyPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBLb21wYXRpYmlsaXRhZXQgTUctRHJpdmVyIChHcmltbWJvcm4sIDI1LiBKYW4gMjAwNiwgMTI6MzQ6MjIpOgp+IyEgcm49Q3JvZnQgcnQ9MTEzODE4ODQxNCByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKU3RlbGxlIGJpdHRlIERlaW5lIEtldHplcmVpZW4gZ2VnZW4gZGllIEJsdXQtdW5kLUJvZGVuIElkZW9sb2dpZW4gZWluLCBqYT8KT2RlciBzby4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IEtvbXBhdGliaWxpdGFldCBNRy1Ecml2ZXIgKEJvaW5nLCAyNS4gSmFuIDIwMDYsIDEyOjU1OjI3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTM4MTg4ODYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OApHcmltbWJvcm5zIEdlb2dyYXBoaWV2ZXJzdGFlbmRuaXMgd2FyIGphIHNjaG9uIGltbWVyIGV0d2FzIHp3ZWlmZWxoYWZ0LiA6KQpVbmQgaGF0IHNjaG9uIGplbWFuZCBlcndhZWhudCBkYXNzIGltIElyYW4gUGVyc2VyIGxlYmVuPwogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoR2xvaW5zb24sIDI1LiBKYW4gMjAwNiwgMTM6NTg6MzYpOgp+IyEgcm49Qm9pbmcgcnQ9MTEzODE5MDEyNyByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKU293aWVzbyBhbGxlcyBSdXNzZW4sIGF1c3NlciBaZXBoeXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoVmFuaW9uLCAyNS4gSmFuIDIwMDYsIDE3OjU3OjIzKToKfiMhIHJuPVpvb2sgcnQ9MTEzODE0MDYyNiByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKV2FzIHRyZWlidCBpaHIgZGEgbWl0IG1laW5lbSBUaHJlYWQ/CgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEtvbXBhdGliaWxpdGFldCBNRy1Ecml2ZXIgKFplcGh5ciwgMjUuIEphbiAyMDA2LCAxODowODowMik6Cn4jISBybj1WYW5pb24gcnQ9MTEzODIwODI0MyByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKTGllYmVyIEdsb2luc29uLCBkYXNzIGljaCBrZWluIFJ1c3NlIGJpbiwgaXN0IGRvY2ggdm9lbGxpZyBrbGFyLCBkYSAKaWNoIG5pY2h0IHJlY2h0cyBkZXMgUmhlaW5lcyBnZWJvcmVuIGJpbiA7KQpDNCwgaXJyaXRpZXJ0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoR2xvaW5zb24sIDI1LiBKYW4gMjAwNiwgMTg6MDg6NDQpOgp+IyEgcm49WmVwaHlyIHJ0PTExMzgyMDg4ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM3OTY3MDY4CkR1IGJpc3QgamEgYXVjaCBDaGluZXNlLiBEYXMgaXN0IGxpbmtzcmhlaW5pc2NoLCBkYXMgQ2hpbmFsYW5kLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBLb21wYXRpYmlsaXRhZXQgTUctRHJpdmVyIChMdWcsIDI1LiBKYW4gMjAwNiwgMTg6MjA6MjYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEzODIwODkyNCByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKTGl0aGF1ZXIgc2luZCBuYXR1ZXJsaWNoIEJhbHRlbi4uLgoKVHNzCkx1ZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEtvbXBhdGliaWxpdGFldCBNRy1Ecml2ZXIgKEdyaW1tYm9ybiwgMjUuIEphbiAyMDA2LCAxODo0NTo0NCk6Cn4jISBybj1MdWcgcnQ9MTEzODIwOTYyNiByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKSmFqYSwgdW5kIGRpZSBMZXV0ZSBoaWVyIHVtIG1pY2ggcnVtIHNpbmQgYXVjaCBGcmFua2VuIHVuZCBrZWluZSBCYXllcm4sIHNjaG9uCmtsYXIuIEhhdHRlbiB3aXIgdW5zIG5pY2h0IGRyYXVmIGdlZWluaWd0IGRhc3MgZGllc2UgTWlrcm9ldGhub2xvZ2llIG5pY2h0CndlaXRlciB2b24gSW50ZXJlc3NlIGlzdD8gV2ljaHRpZyBpc3QgYmVrYW5udGxpY2ggZGFzIEJpZyBQaWN0dXJlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoTHVnLCAyNS4gSmFuIDIwMDYsIDE5OjU2OjExKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTM4MjExMTQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OApMaW5ndXNpdGlzY2ggZ2VzZWhlbiwga29lbm50ZSBkYXMgQmlsZCBuaWNodCBncm9lc3NlciB3ZXJkZW4uCgpNYXRoZW1hdGlrZXI/IFdlaWFoLi4KTHVnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogS29tcGF0aWJpbGl0YWV0IE1HLURyaXZlciAoR3JpbW1ib3JuLCAyNS4gSmFuIDIwMDYsIDIwOjAzOjEzKToKfiMhIHJuPUx1ZyBydD0xMTM4MjE1MzcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OApWZXJzdGVoIGljaCBuaWNodC4gSW5kb2dlcm1hbmlzY2hlIFNwcmFjaGVuIHNpbmQgZG9jaCB3aXJrbGljaCBuaWNodCBzbyBzZWhyCmdlb2dyYXBoaXNjaCBiZWdyZW56dC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEtvbXBhdGliaWxpdGFldCBNRy1Ecml2ZXIgKFpvb2ssIDI1LiBKYW4gMjAwNiwgMjE6Mjg6NDgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMzgyMTExNDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM3OTY3MDY4CkdlcmFkZSBmdWVyIGRhcyBCaWcgUGljdHVyZSBpc3QgZGllIFVudGVyc2NoZWlkdW5nIHp3aXNjaGVuIEJheWVybiAKdW5kIEZyYW5rZW4gamEgbnVuIGViZW4gc2VociB3aWNodGlnLiBTbyBsYW5nZSBpc3QgZGFzIG5vY2ggbmljaHQgaGVyLCAKZGFzcyBtYW4gZGllIGZyYWVua2lzY2hlbiBHZWJpZXRlIEJheWVybiB6dWdlc2NobGFnZW4gaGF0LiBCYWVoISBQZnVpIQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBLb21wYXRpYmlsaXRhZXQgTUctRHJpdmVyIChBbmF0b2wsIDI1LiBKYW4gMjAwNiwgMjE6NTg6MTUpOgp+IyEgcm49Wm9vayBydD0xMTM4MjIwOTI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OApEaWUgc3Vlc3NlIEhhbGJpcmFuZXJpbiBpbiB1bnNlcmVtIFByb2pla3Qgc2llaHQgYWJlciB1ZWJlcmhhdXB0Cm5pY2h0IHBlcnNpc2NoIGF1cy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBhcnRpa2VsIDQgKEFuYXRvbCwgMjUuIEphbiAyMDA2LCAyMjowMjoyNCk6Cn4jISBvbj1BbmF0b2wgb3Q9MTEzODIyMjkzOCBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPUFuYWNyaW9uIHJ0PTExMzgxNjcxOTIgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTEzNzE4NzE1MQpEZXIgU2VoZXIgdm9uIFdlbHQgaGF0dGUgZWhlciAxMDAgbGV1Y2h0ZW5kZSBQZmlyc2ljaGUgZGFiZWkuCktlaW4gbmVubmVuc3dlcnRlcyBHZXdpY2h0LCB1bmJlZ3Jlbnp0IHZlcmZ1ZWdiYXIgdW5kIDUwIFB1bmt0ZSBIZWlsdW5nCmJlaW0gVmVybmFzY2hlbi4KCkFiZXIgZXZ0bC4gYmlzdCBEdSBkYWZ1ZXIgbmljaHQgYWx0IGdlbnVnLCBBbmFjLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogYXJ0aWtlbCA0IChBbmFjcmlvbiwgMjUuIEphbiAyMDA2LCAyMjowMzo0OCk6Cn4jISBybj1BbmF0b2wgcnQ9MTEzODIyMjk0NCByZz1zY2htYXJybgp+IyEgdGlkPTExMzcxODcxNTEKU2ljaGVyIG5pY2h0LiBJbiBtZWluZXIgWmVpdCBoYWJlbiBkaWUgbmljaHQgbWVociBnZWhlaWx0IC4uLi4KCkFuYWMqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBhcnRpa2VsIDQgKEFuYXRvbCwgMjUuIEphbiAyMDA2LCAyMjowOTo1Mik6Cn4jISBybj1BbmFjcmlvbiBydD0xMTM4MjIzMDI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzE4NzE1MQpmd2FiXkhhLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBLb21wYXRpYmlsaXRhZXQgTUctRHJpdmVyIChLbnVycHMsIDI2LiBKYW4gMjAwNiwgMTQ6MTY6MzApOgp+IyEgcm49Q3JvZnQgcnQ9MTEzODE4ODMzMiByZz1zY2htYXJybgp+IyEgdGlkPTExMzc5NjcwNjgKbWFuIGFsbG9jaHRvbmllCm1hbiBhdXRvY2h0b25pZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IEtvbXBhdGliaWxpdGFldCBNRy1Ecml2ZXIgKEdub21lLCAyNi4gSmFuIDIwMDYsIDE4OjAzOjM3KToKfiMhIHJuPUFuYXRvbCBydD0xMTM4MjIyNjk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzk2NzA2OApuYWphLCBhbGxlcmhvZWNoc3RlbnMgaGFsYnBlcnNpc2NoLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0ZXJuZW5saWNodCAoR2xvaW5zb24sIDI2LiBKYW4gMjAwNiwgMTg6MDk6MjkpOgp+IyEgcm49TWlyaWwgcnQ9MTEzODI5NDUwNyByZz1kLmluc2Vsbgp+IyEgdGlkPTExMzgyOTQ1MDcKV28gZ2lidCBlcyBkaWUgcGFzc2VuZGUgU2hlbG9iPyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbiBkZW4gUHJhbmdlciAoQm9pbmcsIDI3LiBKYW4gMjAwNiwgMTE6MTg6MTApOgp+IyEgcm49TWlyaWwgcnQ9MTEzODMwNDI0MSByZz1wcmFuZ2VyCn4jISB0aWQ9MTEzODMwNDI0MQpFeSEgV29taXQgaGFiIGljaCBkYXMgdmVyZGllbnQ/CkVzIGlzdCBob2VjaHN0ZW5zIGNocm9uaXNjaGVyIFplaXRtYW5nZWwgdW5kIFZlcmdlc3NsaWNoa2VpdC4gOikKICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVmVyc2NobHVlc3NlbHRlciBadWdhbmcgenVtIE1vcmdlbkdyYXVlbiAoWm9vaywgMjkuIEphbiAyMDA2LCAxNToyMjoxMCk6Cn4jISBybj1KaW1kaWdyaXogcnQ9MTEzODU0NDI3MCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTExMzgyMDYyNzgKUGFoIQpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVmVyc2NobHVlc3NlbHRlciBadWdhbmcgenVtIE1vcmdlbkdyYXVlbiAoWm9vaywgMjkuIEphbiAyMDA2LCAyMDowMDo1Mik6Cn4jISBybj1NdWFkaWIgcnQ9MTEzODU2MDc4MiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTExMzgyMDYyNzgKRnJ1ZWhlciBoYWV0dGVuIHdpciBkYXMgZ2FuemUgTXVkIG5ldSBnZXN0YXJ0ZXQsIGFsc28gYml0dGUga2VpbmUKQmVzY2h3ZXJkZW4hIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFZlcnNjaGx1ZXNzZWx0ZXIgWnVnYW5nIHp1bSBNb3JnZW5HcmF1ZW4gKE11YWRpYiwgMjkuIEphbiAyMDA2LCAyMDowMjozMik6Cn4jISBybj1ab29rIHJ0PTExMzg1NjEyNTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM4MjA2Mjc4CmljaCB3dWVyZGUgc293YXMgbmllIG1hY2hlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0ZXJuZW5saWNodCAoTW9yZ290aCwgMzAuIEphbiAyMDA2LCAwOTo1ODozMyk6Cn4jISBybj1NaXJpbCBydD0xMTM4Mjk0NTA3IHJnPWQuaW5zZWxuCn4jISB0aWQ9MTEzODI5NDUwNwpFaW4gbmV1ZXMgTGljaHRzc3NzLi4uLnNzc3NzLi4ueXl5eS5zc3NzLi4uQVJHSAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUGFydHliaWxkZXIgKE11YWRpYiwgIDEuIEZlYiAyMDA2LCAxNDowOTo1NCk6Cn4jISBybj1ab29rIHJ0PTExMzg3OTkxNTYgcmc9cGFydHkKfiMhIHRpZD0xMTM0NTYyMDc3Cnd1ZXJkZXN0IGR1IGJpdHRlIGRpZSBzY2hhcmZlbiBiaWxkZXIgd2llZGVyIGluIGRlbiBwYXktYmVyZWljaCBlaW5zdGVsbGVuPwp3aWUgc29sbCBtYW4gc28genUgZ2VsZCBrb21tZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBQYXJ0eWJpbGRlciAoWm9vaywgIDEuIEZlYiAyMDA2LCAxNDoxMjowMCk6Cn4jISBybj1NdWFkaWIgcnQ9MTEzODc5OTM5NCByZz1zY2htYXJybgp+IyEgdGlkPTExMzQ1NjIwNzcKc29ycnkuIGhhdHRlIGRpZSBkb2t1IG5pY2h0IHJpY2h0aWcgZ2VsZXNlbi4gem9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhcnRpa2VsIGlkZWUgKEdsb2luc29uLCAgMi4gRmViIDIwMDYsIDIzOjIzOjQyKToKfiMhIHJuPVRyaWNrIHJ0PTExMzg5MTg5NzYgcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTExMzg5MTg5NzYKSWVlZWVoLiBFaW4gR2lsZGVuYXVmd2VydGVyIDspCgpEYXMgRmxhY2tlcm4gd2FyIHNjaG9uIGVpbiBadWdlc3RhZW5kbmlzIC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFaW5lIFdvY2hlIEFzcGVuIChHbG9pbnNvbiwgIDMuIEZlYiAyMDA2LCAxNzo0NjoxNSk6Cn4jISBybj1CYW1idWxrbyBydD0xMTM4OTg1MTExIHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xMTM4OTg1MTExCldvenUgZGllIFdlcmJ1bmcsIHdlbm4gZHUgZG9jaCBrZWluIFNraSBmYWhyZW4gd2lsbHN0PwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcm9zY2ggKFpvb2ssICA0LiBGZWIgMjAwNiwgMTM6NTI6NTEpOgp+IyEgcm49TXVhZGliIHJ0PTExMzkwNTYyNjcgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTExMzkwNTYyNjcKPiBJaHIgd2VyZGV0IHNjaG9uIG1lcmtlbiB3YXMgOikKClNpY2hlcj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZyb3NjaCAoRWxqbywgIDQuIEZlYiAyMDA2LCAxMzo1MzoyNSk6Cn4jISBybj1ab29rIHJ0PTExMzkwNTc1NzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM5MDU2MjY3Cldlbm4gd2lyIGVzIG5pY2h0IG1lcmtlbiwgZGFubiBpc3QgZXMgd29obCBpbiBWZWN0b3JzIFNpbm4uIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGcm9zY2ggKFZlY3RvciwgIDQuIEZlYiAyMDA2LCAxMzo1MzoyNyk6Cn4jISBybj1ab29rIHJ0PTExMzkwNTc1NzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM5MDU2MjY3Cm1hbiBrYW4gYWxzIGZyb3NjaCBuaWNodCBtZWhyIHJ1ZmVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGcm9zY2ggKE11YWRpYiwgIDQuIEZlYiAyMDA2LCAxNDo1MTozMCk6Cn4jISBybj1ab29rIHJ0PTExMzkwNTc1NzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM5MDU2MjY3Cm1hbiB3aXJkIHNlaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogYXJ0aWtlbCBpZGVlIChNdWFkaWIsICA0LiBGZWIgMjAwNiwgMTY6MjA6MzMpOgp+IyEgcm49QnJhbiBydD0xMTM5MDY2MzcwIHJnPWdpbGRlbi5rbGVydXMKfiMhIHRpZD0xMTM4OTE4OTc2CmJlc3NlciBuYXR1ZXJsaWNoLCB3YXMgZnVlciBlaW5lIGZyYWdlIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2F1ZmVtcGZlaGx1bmc/IChHcmltbWJvcm4sICA1LiBGZWIgMjAwNiwgMjE6Mjg6MDcpOgp+IyEgcm49RGFya2xvciBydD0xMTM5MTcxMjQzIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTExMzkxNzEyNDMKSmEuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2F1ZmVtcGZlaGx1bmc/IChWZWN0b3IsICA1LiBGZWIgMjAwNiwgMjM6Mzc6NTYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExMzkxNzEyODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM5MTcxMjQzCmJlaSBkZW0gZ2FuemVuIGluaGFsdCAoenVtIHRlaWwgdW5icmF1Y2hiYXJlciBzY2huaWNrc2NobmFjayB3ZW5uIG1hbgplaHJsaWNoIGlzdCkgd3VlcmQgaWNoIGF1ZiBuZSBha2t1bGF1ZnplaXQgdm9uIHVudGVyIDkwIG1pbnV0ZW4gdGlwcGVuLgpmcmFnZSBlaW5zIG11c3MgZGFoZXIgbGF1dGVuOiBXTyB3aWxsIGljaCBkYXMgdGVpbCBiZW51dHplbi4KZnJhZ2UgendlaTogV0FTIHdpbGwgaWNoIG1pdCBkZW0gdGVpbCBtYWNoZW4/CmZyYWdlIGRyZWk6IEJSQVVDSEUgaXMgZGFzIHRlaWwgb2RlciBpc3QgZXMgZWJlbiAibnVyIiBlaW4KbWFlbm5lcnNwaWVsemV1Zy4gc28gbmFjaCBkZW0gbW90dG86IGJyYXVjaGVuIHR1dHMga2VpbmVyIGFiZXIKd2VubiBtYW5zIGRhbm4gaGF0IGlzc2VzIHNjaG9uIG5ldHQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEthdWZlbXBmZWhsdW5nPyAoRGFya2xvciwgIDYuIEZlYiAyMDA2LCAwMDowMDoxMSk6Cn4jISBybj1WZWN0b3IgcnQ9MTEzOTE3OTA3NiByZz1zY2htYXJybgp+IyEgdGlkPTExMzkxNzEyNDMKTnVuamEgaWNoIHN1Y2ggZWlnZW50bGljaCBuYWNoIG5lbSBndWVuc3RpZ2VuIHBsYXR6c3BhcmVuZGVuIEVyc2F0eiBmdWVyIG4gUEMsCmRhcyBhdWNoIG5vY2ggbmUgV2VpbGUgYWt0dWVsbCBpcyB1bmQgbWl0IGRlbSBtYW4genVyIE5vdCBhdWNoIGVpbiBwYWFyCmdyYWZpa2ludGVuc2l2ZXJlIFNwaWVsZSB0ZXN0ZW4ga2FubiB1bmQgdmllbCBGZXN0cGxhdHRlLCBkYW1pdCBtYW4gbmljaApzdGFlbmRpZyBkaWUgZXR3YXMgYWVsdGVyZSBQcm9ncmFtbWUgdm9uIGRlciBQbGF0dGUgbG9lc2NoZW4gbXVzcywgYmV2b3IgbWFuCndhcyBuZXVlcyBEYXJhdWZzcGllbGVuIGthbm4uLi4KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IENmRDogU2VoZXJhbmZvcmRlcnVuZ2VuIChab29rLCAgNi4gRmViIDIwMDYsIDE5OjAyOjExKToKfiMhIHJuPVpvb2sgcnQ9MTEzOTI0ODgwOCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTEzOTI0NDcxMwpOYXR1ZXJsaWNoIEtvbmZpcm1hdGlvbi4gRGFzIHdhciBlaW4gRnJldWRzY2hlciBWZXJ0aXBwZXIuIAoKWm9vaywgUHJvdGVzdGFudC4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IENmRDogU2VoZXJhbmZvcmRlcnVuZ2VuIChUb2RpZSwgIDYuIEZlYiAyMDA2LCAxOTowMzoyMyk6Cn4jISBvbj1Ub2RpZSBvdD0xMTM5MjQ4OTM5IG9nPWRpc2t1c3Npb24KfiMhIHJuPVpvb2sgcnQ9MTEzOTI0ODgwOCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTEzOTI0NDcxMwpVbmQgdm9uIFNwaWVsZXIgYXVmIFNlaGVyIHdpcmQgZWluIEJpZXIgbWVociBhdWZnZW1hY2h0LCBhdWNoIGVpbmUgQXJ0IFJpdHVzLiAKClNvcnJ5LCBkYXMgbXVzc3RlIHNlaW4uIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQ2ZEOiBTZWhlcmFuZm9yZGVydW5nZW4gKFpvb2ssICA3LiBGZWIgMjAwNiwgMDk6MjU6MzIpOgp+IyEgcm49TW9udGFudXMgcnQ9MTEzOTI5OTYxNyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTEzOTI0NDcxMwp0bSBpdHRpQGFuZGVybGFuZCBjZmQgCgp6b29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQ2ZEOiBTZWhlcmFuZm9yZGVydW5nZW4gKE1vbnRhbnVzLCAgNy4gRmViIDIwMDYsIDA5OjMxOjIwKToKfiMhIHJuPVpvb2sgcnQ9MTEzOTMwMDczMiByZz1zY2htYXJybgp+IyEgdGlkPTExMzkyNDQ3MTMKRXMga2FubiBhdWNoICJDaHJpZmZ0b2ZmZXIgRnJlZXQgRGF5IiBoZWlzc2VuLCBuYWNoZGVtIG1hbiBlaW5zIGF1ZiBkaWUgRnJlc3NlCmJla29tbWVuIGhhdC4gOy0pCk5laW4sIGVzIGdpYnQga2VpbmUgRW50c2NodWxkaWd1bmdlbiBkYWZ1ZXIsIGlyZ2VuZHdlbGNoZSBEZW5nbGlzY2hlIEJlZ3JpZmZlCmhpZXIgenUgYmVudXR6ZW4uIEFtIEVuZGUgZ2lidHMgYXVmIGRlciBuYWVjaHN0ZW4gTXVkLUZldGUgZWluZQpNYWNodC1QdW5rdC1QcmFlc2VudGF0aW9uLiBIb2VyIG1pciBhdWYuIERhIGtyZWlnIGljaCBQbGFxdWUgdm9uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IENmRDogU2VoZXJhbmZvcmRlcnVuZ2VuIChab29rLCAgNy4gRmViIDIwMDYsIDA5OjMzOjIyKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTExMzkzMDEwODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM5MjQ0NzEzClp1bSBUaGVtYSBLcmFmdHB1bmt0LVByYWVzZW50YXRpb24gYmVmcmFnZSBiaXR0ZSBBcms7IGRpZSBGb2xpZW4gZmluZGVuCnNpY2ggdWVicmlnZW5zIGltbWVyIG5vY2ggYXVmIGRlciBIZWltc2VpdGUgZGVzIE1HLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBDZkQ6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoWm9vaywgIDcuIEZlYiAyMDA2LCAwOTozNTozMSk6Cn4jISBybj1ab29rIHJ0PTExMzkzMDEyMDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM5MjQ0NzEzCmh0dHA6Ly9tZy5tdWQuZGUvaGVscC9pbmZvL3F1ZXN0LnBkZgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBDZkQ6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoT3JrdG9ldGVyLCAgNy4gRmViIDIwMDYsIDEzOjA0OjI5KToKfiMhIHJuPVpvb2sgcnQ9MTEzOTMwMTMzMSByZz1zY2htYXJybgp+IyEgdGlkPTExMzkyNDQ3MTMKQWxzbyBkYXMgbXVkIGluIGRlciBVcmwgc29sbHRlIG1hbiBqYSBkcmluZ2VuZCBkdXJjaCBlaW4gdmJ2IGVyc2V0emVuIQoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBDZkQ6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoWm9vaywgIDcuIEZlYiAyMDA2LCAxMzowNjoxMyk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTEzOTMxMzg2OSByZz1zY2htYXJybgp+IyEgdGlkPTExMzkyNDQ3MTMKRGEga29tbXQgYmVpIG1pcjoKCklmIHlvdSBjYW4gc2VlIHRoaXMgcGFnZSB0aGVuIGl0IGxvb2tzIGxpa2UgeW91ciB3ZWJzZXJ2ZXIgaXMgcnVubmluZy4KCgpVbmQsIHdhcyBoYWJlbiB3aXIgZGEgbnVuIGdld29ubmVuPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBDZkQ6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoT3JrdG9ldGVyLCAgNy4gRmViIDIwMDYsIDEzOjE4OjEwKToKfiMhIHJuPVpvb2sgcnQ9MTEzOTMxMzk3MyByZz1zY2htYXJybgp+IyEgdGlkPTExMzkyNDQ3MTMKTmEsIGlzdCBkb2NoIGtsYXIgd2FzIHdpciBkYW5uIGdld29ubmVuIGhhYmVuOiBTbyBlaW5lIHVudmVyc3RhZW5kbGljaGUKZW5nbGlzY2hlIEFia3Vlcnp1bmcgaXN0IGR1cmNoIGVpbmVuIGR1ZXRzY2hzcHJhY2hpZ2VuIEF1c2RydWNrIGVyc2V0enQKd29yZGVuISBJc3QgZG9jaCB2aWVsIFZlcnN0YWVuZGxpY2hlciA7KQoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBDZkQ6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoWm9vaywgIDcuIEZlYiAyMDA2LCAxNDoyMjo1NSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTEzOTMxNDY5MCByZz1zY2htYXJybgp+IyEgdGlkPTExMzkyNDQ3MTMKTWlyIGdlZmFsbGVuIGRpZSBuZXVlbiBTZWl0ZW4gYWJlciBiZXNzZXIuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQ2ZEOiBTZWhlcmFuZm9yZGVydW5nZW4gKE11YWRpYiwgIDcuIEZlYiAyMDA2LCAxNDo1MTowOSk6Cn4jISBybj1ab29rIHJ0PTExMzkyNDg4MDggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExMzkyNDQ3MTMKd28gZ2lidCBlcyBkZW5uIGRpZSBrb25mb3JtaXRpb24/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogQ2ZEOiBTZWhlcmFuZm9yZGVydW5nZW4gKENyb2Z0LCAgNy4gRmViIDIwMDYsIDE4OjI3OjIxKToKfiMhIHJuPURhcmtsb3IgcnQ9MTEzOTMzMjczNiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTEzOTI0NDcxMwpHZW5hdSEgIE1laHIgVGl0ZWwgZnVlciBkaWUgQWJlbnRldXJlciEKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogQ2ZEOiBTZWhlcmFuZm9yZGVydW5nZW4gKE1pcmlsLCAgNy4gRmViIDIwMDYsIDE4OjI4OjMzKToKfiMhIHJuPUNyb2Z0IHJ0PTExMzkzMzMyNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM5MjQ0NzEzCkRhdm9uIGdpYnRzIGFiIExldmVsIDIxIHppZW1saWNoIHZpZWxlLCB3ZW5uIGRlcmplbmlnZSBrcmVhdGl2IGdlbnVnIGlzdC4KCk1pcmlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogQ2ZEOiBTZWhlcmFuZm9yZGVydW5nZW4gKE9ya3RvZXRlciwgIDcuIEZlYiAyMDA2LCAxODozNzoxMyk6Cn4jISBybj1NaXJpbCBydD0xMTM5MzMzMzEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzOTI0NDcxMwpIZXkhIERpZSAiVGl0ZWwiIHdhcmVuIGRvY2ggZWluZXMgZGVyIEhpZ2hsaWdodHMgZGVzIFNlaGVyLXNlaW5zLi4uIGRhcyBkYXJmCm1hbiBhYiBMZXZlbCAyMT8gRGFzIGlzdCBuaWNodCBtZWhyIGFucyBTZWhlci1zZWluIGdla29wcGVsdD8gCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IENmRDogU2VoZXJhbmZvcmRlcnVuZ2VuIChNdWFkaWIsICA3LiBGZWIgMjAwNiwgMTk6NDc6MzUpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExMzkzMzM4MzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM5MjQ0NzEzCnNwaWVsIG1hbCB3aWVkZXIKb2RlciBsaWVzIGRpZSBtcGEgc29yZ2ZhZWx0aWdlcgo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQ2ZEOiBTZWhlcmFuZm9yZGVydW5nZW4gKE5vbm5lLCAgOS4gRmViIDIwMDYsIDA4OjQ0OjMzKToKfiMhIHJuPVRvZGllIHJ0PTExMzkyNDg2ODAgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExMzkyNDQ3MTMKRnJhdS9NYW5uIHdlcmRlbiB3aXJkIGVpZ2VudGxpY2ggaW4gamVkZXIgR2VzZWxsc2NoYWZ0IG1pdCBlaW5lbSBSaXR1cwp2b2xsem9nZW4uIEdlcmFkZSBpbiB1bnNlcmVtIEt1bHR1cmtyZWlzIGJlc2F1ZmVuIHNpY2ggZGllIEtpbmRlciBtaXQgMTMgdW5kCndlbm4gc2llIG1pdCAyNSB3aWVkZXIgbnVlY2h0ZXJuIHdlcmRlbiwgc2luZCBzaWUgZXJ3YWNoc2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQ2ZEOiBTZWhlcmFuZm9yZGVydW5nZW4gKE11YWRpYiwgIDkuIEZlYiAyMDA2LCAwOTozMToyNyk6Cn4jISBybj1Ob25uZSBydD0xMTM5NDcxMDczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzOTI0NDcxMwphY2g/CmRhcyBlcmtsYWVydCBlaW5pZ2lzIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBDZkQ6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoTXVhZGliLCAxMC4gRmViIDIwMDYsIDE0OjU2OjE1KToKfiMhIHJuPUtlcnJpZXIgcnQ9MTEzOTU3OTczNSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTEzOTI0NDcxMwpvZGVyIG5pZSBlcmhvZWhlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQ2ZEOiBTZWhlcmFuZm9yZGVydW5nZW4gKEtlcnJpZXIsIDEwLiBGZWIgMjAwNiwgMTQ6NTY6MzYpOgp+IyEgcm49TXVhZGliIHJ0PTExMzk1Nzk3NzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM5MjQ0NzEzCkFlaC4gamEuIGdlbmF1IC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEF1c2hpbGZlbiByYXVzd2VyZmVuISAoTXVhZGliLCAxMC4gRmViIDIwMDYsIDE1OjAyOjMyKToKfiMhIHJuPVpvb2sgcnQ9MTEzOTU3OTk0NCByZz1wb2xpemVpLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTM5NTc5OTQ0CmR1IGhhc3QgYmVzdGVjaHVuZ3NnZWxkZXIgYW5nZW5vbW1lbj8KaGFldHRlc3QgZHUgZGFzIG5pY2h0IHNhZ2VuIGtvZW5uZW4sIGJldm9yIGR1ICBtaWNoIGdldGJhbmlzaGVkIGhhc3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBDZkQ6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoWm9vaywgMTAuIEZlYiAyMDA2LCAxNjo0MDo0MCk6Cn4jISBybj1LbnVycHMgcnQ9MTEzOTU4NDIyMyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTEzOTI0NDcxMwpQdXV1aC4uLiBCZWltIFRoZW1hICJibGFzcGhlbWlzY2giIGRhY2h0ZSBpY2ggc2Nob24sIGVzIHd1ZXJkZSBudW4gCnVlYmVsIGF1ZiBtaXIgaGVydW1nZWhhY2t0Li4uIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGVpbiBrbGFzc2lrZXIuLi4uLiAoUm9uZGEsIDEwLiBGZWIgMjAwNiwgMjI6MjE6NTgpOgp+IyEgcm49Tmljb2xhaSBydD0xMTM5NjA2NDI1IHJnPXdpdHplCn4jISB0aWQ9MTEzOTYwNjQyNQpUcml2aWFsOiBad2VpdGUgUmVpbmthcm5hdGlvbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IENmRDogU2VoZXJhbmZvcmRlcnVuZ2VuIChab29rLCAxMC4gRmViIDIwMDYsIDIyOjIzOjE0KToKfiMhIHJuPUdsb2luc29uIHJ0PTExMzk1OTc0NTUgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExMzkyNDQ3MTMKR2xvaW4gaXN0IG1pdHRsZXJ3ZWlsZSBTZWhlcj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBDZkQ6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoTXVhZGliLCAxMC4gRmViIDIwMDYsIDIzOjA3OjU2KToKfiMhIHJuPUdsb2luc29uIHJ0PTExMzk1OTc0NTUgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExMzkyNDQ3MTMKZWluIGtsZWluaG9lY2tyaWdlcyBkcm9tZWRhcj8gZnVlciBkaWVzZSBmb3Jtc2Nob2VuZSBkaXNrdXNzaW9uPwppY2ggaGFiIDYga2luZGVyIHp1aGF1c2UsIG1laW5lIHphZWhuZSBzaW5kIGdyYXUsIG1laW5lIGJlaW5lIGZhbGxlbiBtaXIgYXVzCnVuZCBtZWluZSBoYWFyZSBzaW5kIGxhaG0Kd2llIHNvbGwgbWFuIGRhIHVlYmVybGViZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBDZkQ6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoR2xvaW5zb24sIDEwLiBGZWIgMjAwNiwgMjM6Mzc6MjUpOgp+IyEgcm49TXVhZGliIHJ0PTExMzk2MDkyNzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM5MjQ0NzEzCk5hdHVlcmxpY2ggbWl0IGVpbmVtIGtsZWluaG9lY2tyaWdlbiBEcm9tZWRhciBpbSBCYWNrZW56YWhuLiBOdXIgZGllc2VzCmhlcnZvcnJhZ2VuZCBib251c2hlZnRnZXBmbGVndGUgRHJvbWVkYXIgc2NobWllZ3Qgc2ljaCBhbmdlbmVobSB3ZWljaCBpbiBlaW5lbgpCYWNremFobiB1bSBkb3J0IGFscyBOb3RyZXNlcnZlIHNlaW5lciBWZXJ3ZW5kdW5nIHp1IGhhcnJlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2VkYWVtcGZ0ZSBBbmdyaWZmZSAoWm9vaywgMTEuIEZlYiAyMDA2LCAxNDozNzoyOSk6Cn4jISBybj1IdW1uaSBydD0xMTM5NjY0OTg2IHJnPWdpbGRlbi5rYXJhdGUKfiMhIHRpZD0xMTM5NjY0OTg2CkZ1ZXIgMTAgS1Agc2NobWV0dGVybj8gRGFzIGlzdCBkb2NoIGJlcmVpdHMgQklMTElHISA7KSkpKSkKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2VkYWVtcGZ0ZSBBbmdyaWZmZSAoR2xvaW5zb24sIDExLiBGZWIgMjAwNiwgMjA6MjU6MTIpOgp+IyEgcm49SHVtbmkgcnQ9MTEzOTY2NDk4NiByZz1naWxkZW4ua2FyYXRlCn4jISB0aWQ9MTEzOTY2NDk4NgpVbmQgYWxsZXMgbnVyLCBkYW1pdCBkZWluIFp3ZWl0aWUgZWluZmFjaGVyIGxlcm50IQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMZWhyc3R1aGwgZnVlciBDb21wdXRlci1TcGllbGU6IChHbm9tZSwgMTEuIEZlYiAyMDA2LCAyMDozOTozNCk6Cn4jISBybj1ab29rIHJ0PTExMzk2NjAyNzcgcmc9d3d3Cn4jISB0aWQ9MTEzOTY2MDI3NwphbHNvIHdlbm4gZGkgaGF1cHRhdWZnYWJlbiBkZXMgbGVocnN0dWhsIGF1cyBtaW5pbXVtIDUgc3R1bmRlbi90YWcKY29tcHV0ZXJzcGllbGVuIGhlaXNzdCB1bmQgZGFubiBhbnNjaGxpZXNzZW5kIGlyZ2VuZHdhbm4gdWViZXIgZGllCnZvci0gdW5kIG5hY2h0ZWlsZSB2b24gRDMgdW5kIGZhcmNyeSB2b3IgZWluZW0gaGF1ZmVuIHN0dWRlbnRlbgpyZWZlcmllcmVuLi4uIG1laW5lIGJld2VyYnVuZyB3YWVyZSBkb3J0IGRpZSBlcnN0ZS4gbnVuIGphLCBtdWVzc3RlIG1hbgpzaWNoIGF1Y2ggbm9jaG1hbCBndXQgdWViZXJsZWdlbi4gZGllICdzdGFkdCcgaGVpc3N0IGlsbWVuYXUuCgppY2ggYmVmdWVyY2h0ZSBhbGxlcmRpbmdzLCBkYXNzIGRpZSBhdWZnYWJlbmdlYmlldGUgaG9lY2hzdHdhaHJzY2hlaW5saWNoCidzb3ppYWxmb3JzY2h1bmcnIHVuZCAnc3RpbmtsYW5nd2VpbGlnZXMgbWFya2V0aW5nJyBoZWlzc2VuLgpuZWUgZGFua2UuCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IENmRDogU2VoZXJhbmZvcmRlcnVuZ2VuIChHbG9pbnNvbiwgMTIuIEZlYiAyMDA2LCAwMDowMTowNCk6Cn4jISBybj1Hbm9tZSBydD0xMTM5Njg4NTk2IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTM5MjQ0NzEzCkVpZ2VudGxpY2ggdmVyc3RlaGUgaWNoIGRlaW5lbiBXdW5zY2ggaW4gRW5ka29uc2VxdWVueiB2aWVsIGVpbmZhY2hlcjoKPiBtYW4gQ2xvbmVDaGFyCkNsb25lQ2hhcigpCkZVTktUSU9OOgogICAgIHB1YmxpYyBpbnQgQ2xvbmVDaGFyKHN0cmluZyB3aG8sIGludCB3aGF0ZmxhZ3MsIGludCBhZGRtb2RlKQoKQVJHVU1FTlRFOgogICAgIHN0cmluZyB3aG8KICAgICAgICAgIFNwaWVsZXJuYW1lLCB2b24gZGVtIEtvcGllIGdlbWFjaHQgd2VyZGVuIHNvbGwKICAgICBpbnQgd2hhdGZsYWdzCiAgICAgICAgICBzaWVoZSAvc3lzL3BsYXllci9iYXNlLmgsIGdpYnQgYW4gd2FzIHp1IGtvcGllcmVuIGlzdAogICAgICAgICAgZGVmYXVsdCAwOiBhbGxlcwogICAgIGludCBhZGRtb2RlCiAgICAgICAgICAwIGZ1ZXIgRXJzZXR6ZW4sIDEgZnVlciBBdWZhZGRpZXJlbgoKQkVTQ0hSRUlCVU5HOgogICAgIEVzIHdlcmRlbiBhbGxlIHdpY2h0aWdlbiBXZXJ0ZSAoZGVyemVpdCBBUCwgRlAsIFhQLCBaVHMpIGRlcyBTcGllbGVycwogICAgIGFuIGRlbSBkaWUgTWV0aG9kZSBnZXJ1ZmVuIHd1cmRlIGR1cmNoIGRpZSBkZXMgYW5nZWdlYmVuZW4gU3BpZWxlcnMKICAgICBlcnNldHp0LgogICAgIEFDSFRVTkc6IERhYmVpIGtvZW5uZW4genVzYWV0emxpY2hlIEZQL0FQL1pUcyB2ZXJsb3JlbmdlaGVuLiBVbWdlaHVuZwogICAgIGlzdCBtaXQgQW5nYWJlIHZvbiAnYWRkbW9kZScgbW9lZ2xpY2guCgpCRU1FUktVTkdFTjoKICAgICBOdXIgZGlyZWt0IHZvbiBFTSsgYXVmcnVmYmFyLgogICAgIFBhc3N3b3J0Y2hlY2sgZnVlciBkZW4gaW4gc2ljaCBydWZlbmRlbiBTcGllbGVyIGF1ZiBkYXMgUGFzc3dvcnQgZGVzCiAgICAgenUga29waWVyZW5kZW4gU3BpZWxlcnMuCgpCRUlTUElFTEU6CiAgICAgb2JqZWN0IG89ZmluZF9wbGF5ZXIoIm1pbmdvIil8ZmluZF9uZXRkZWFkKCJtaW5nbyIpOwogICAgIGlmKG8pCiAgICAgICBvLT5DbG9uZUNoYXIoImdsb2luIiwgMCwgMSk7CiAgICAgLy8gTWluZ28gc29sbHRlIGRhbmFjaCBhdWYgdW0gTGV2ZWwgNjAtKG1heGltYWwgNCBMdmwgR2lsZGUpCiAgICAgLy8gYXVmc3RlaWdlbiBrb2VubmVuCgpTSUVIRSBBVUNIOgogICAgIEJlZmVobGU6ICAgICBrb3BpZXJlX2Vyc3RpZQogICAgIFByb3BzOiAgICAgICBQX1NFQ09ORCwgUF9YUCwgUF9RUAogICAgIE9iamVrdGU6ICAgICAvc2VjdXJlL2V4cGxvcmF0aW9ubWFzdGVyLmMsIC9zZWN1cmUvcXVlc3RtYXN0ZXIuYywKICAgICAgICAgICAgICAgICAgL3NlY3VyZS9wb3Rpb25tYXN0ZXIuYwoKMjAuIE1hZXJ6IDIwMDYgR2xvaW5zb24KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogQ2ZEOiBTZWhlcmFuZm9yZGVydW5nZW4gKERhcmtsb3IsIDEyLiBGZWIgMjAwNiwgMDA6MjI6NDkpOgp+IyEgcm49QnJhbiBydD0xMTM5NzAwMTMxIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTM5MjQ0NzEzCkltbWVyIGRpZXNlIFBvd2VycGxheWVyLi4uCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogQ2ZEOiBTZWhlcmFuZm9yZGVydW5nZW4gKEJyYW4sIDEyLiBGZWIgMjAwNiwgMDE6MjQ6MjQpOgp+IyEgcm49RGFya2xvciBydD0xMTM5NzAwMTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzOTI0NDcxMwpRdWF0c2NoLiBUb2RpZSBoYXQgZGVuIGxhZW5nZXJlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHZWRhZW1wZnRlIEFuZ3JpZmZlIChBcmssIDEyLiBGZWIgMjAwNiwgMTI6MTY6NTcpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEzOTY4NTkxMiByZz1zY2htYXJybgp+IyEgdGlkPTExMzk2NjQ5ODYKSWNoIGZ1ZXJjaHRlLCBpY2ggd2FyIG5pY2h0IGdhbnogdW5iZXRlaWxpZ3QgOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IENmRDogU2VoZXJhbmZvcmRlcnVuZ2VuIChab29rLCAxMi4gRmViIDIwMDYsIDE4OjI1OjExKToKfiMhIHJuPU11YWRpYiBydD0xMTM5NzY0ODUyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTM5MjQ0NzEzCiJUaGUgcGx1cmFsIG9mIGFuZWNkb3RlIGlzIGRhdGEuIiAtLSA8dmVyZ2Vzc2VuPgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMyOiBDZkQ6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoR2xvaW5zb24sIDEyLiBGZWIgMjAwNiwgMjA6MzE6MjkpOgp+IyEgcm49QXJrIHJ0PTExMzk3NzE2OTMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExMzkyNDQ3MTMKR2lidCBlcyBkYSBhdWNoIGVpbmUgTWluZGVzdG1lbmdlIGFuIFNwYXNzb2JqZWt0ZW4sIGRpZSBtYW4gZXJ3b3JiZW4gaGFiZW4KbXVzcz8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOYW1lbnN2ZXJ0ZWlsdW5nIHZpYSBUZWxlZm9uIC4uLiAoR2xvaW5zb24sIDEyLiBGZWIgMjAwNiwgMjA6MzI6MjApOgp+IyEgcm49Q2Fzc2FuZHJhIHJ0PTExMzk3NjUxMzUgcmc9d3d3Cn4jISB0aWQ9MTEzOTc2MzgyMApTb2xsdGUgd2lya2xpY2ggbWFsIGF1ZiBkaWUgR0VaLSBvZGVyIEVpbndvaG5lcm1lbGRlYW10LURCIHVtZ2VzdGVsbHQgd2VyZGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMzOiBDZkQ6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoS2VycmllciwgMTIuIEZlYiAyMDA2LCAyMDozMjoyNCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTM5NzcyNjg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzOTI0NDcxMwpWaWVsIHdpY2h0aWdlcjogd2lldmllbCB6YWVobGVuIHBlcnNvZW5saWNoIHZvbiBlaW5lbSBNYWdpZXIgZnVlciBlaW5lbgphbmdlZmVydGlndGUgT2JqZWt0ZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM0OiBDZkQ6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoR2xvaW5zb24sIDEyLiBGZWIgMjAwNiwgMjA6MzM6MDQpOgp+IyEgcm49S2VycmllciBydD0xMTM5NzcyNzQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzOTI0NDcxMwpFaW5mYWNoLiBEdSBoYXN0IGVpbmUgbW9lZ2xpY2hlIERlZmluaXRpb24gdm9uIFNwYXNzb2JqZWt0IGVudGRlY2t0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMzOiBDZkQ6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoQXJrLCAxMi4gRmViIDIwMDYsIDIwOjQ1OjEwKToKfiMhIHJuPUdsb2luc29uIHJ0PTExMzk3NzI2ODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM5MjQ0NzEzCkdvZ29nb2dvZ28gOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzQ6IENmRDogU2VoZXJhbmZvcmRlcnVuZ2VuIChHbG9pbnNvbiwgMTIuIEZlYiAyMDA2LCAyMDo0NjozNik6Cn4jISBybj1BcmsgcnQ9MTEzOTc3MzUxMCByZz1zY2htYXJybgp+IyEgdGlkPTExMzkyNDQ3MTMKV2VoZSwgZGFzIHdpcmQgZGFubiBuaWNodCBzcGV6aWZpemllcnQuIEljaCB2ZXJsYW5nZSBtaW5kZXN0ZW5zIDUlIEFudGVpbCBhbQpTZWhlcmxldmVsc3R1cHNkaW5nc2J1bXMuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IENmRDogU2VoZXJhbmZvcmRlcnVuZ2VuIChEYXJrbG9yLCAxMi4gRmViIDIwMDYsIDIxOjQwOjQxKToKfiMhIHJuPUFyayBydD0xMTM5NzcxNjkzIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTM5MjQ0NzEzClNwYXNzb2JqZWt0ZSBmdWVyIEZyYXRlcm5pdGFzIGFiIExldmVsIDEwMCEgOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5hbWVuc3ZlcnRlaWx1bmcgdmlhIFRlbGVmb24gLi4uIChEYXJrbG9yLCAxMi4gRmViIDIwMDYsIDIyOjM4OjQ0KToKfiMhIHJuPUppbWRpZ3JpeiBydD0xMTM5Nzc3NDM0IHJnPXd3dwp+IyEgdGlkPTExMzk3NjM4MjAKSW1tZXIgZGllc2UgKGV4KUFkbGlnZW4uLi4gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBhcnRpa2VsIGlkZWUgKFpvb2ssIDEzLiBGZWIgMjAwNiwgMTI6Mzg6MzEpOgp+IyEgb249Wm9vayBvdD0xMTM5ODMwNzA1IG9nPWdpbGRlbi5rbGVydXMKfiMhIHJuPUdhc3QxIHJ0PTExMzk4Mjg1NjUgcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTExMzg5MTg5NzYKTWFsIHNlaGVuLCB3aWUgbGFuZ2Ugd2lyIGRpZXNlbiBBcnRpa2VsIGxlc2VuIGtvZW5uZW4uLi4uIDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IGFydGlrZWwgaWRlZSAoR2xvaW5zb24sIDEzLiBGZWIgMjAwNiwgMTI6Mzg6NTUpOgp+IyEgcm49Wm9vayBydD0xMTM5ODMwNzExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzODkxODk3NgpHaWIgZG9jaCBtYWwgZGVyIEh5ZHJhdGFudGUgaWhyIFBhc3N3b3J0IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IGFydGlrZWwgaWRlZSAoWm9vaywgMTMuIEZlYiAyMDA2LCAxMjozOTo1MSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTM5ODMwNzM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzODkxODk3NgpIYXQgc2llIGVzIHZlcmdlc3Nlbj8KWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBhcnRpa2VsIGlkZWUgKEdsb2luc29uLCAxMy4gRmViIDIwMDYsIDEyOjQxOjE3KToKfiMhIHJuPVpvb2sgcnQ9MTEzOTgzMDc5MSByZz1zY2htYXJybgp+IyEgdGlkPTExMzg5MTg5NzYKQmVzdGltbXQuIEFsbGVzIHNlbmlsZXMgUGFjay4gU2lsdmFuYSBrb21tdCBnZXdpc3MgYXVjaCBkZXNoYWxiIG5pY2h0IG1laHIgLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IGFydGlrZWwgaWRlZSAoS2FyaXMsIDEzLiBGZWIgMjAwNiwgMTI6NTM6MTUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTEzOTgzMDg3NyByZz1zY2htYXJybgp+IyEgdGlkPTExMzg5MTg5NzYKV2llIHdhciBkYXMgZWlnZW50bGljaCBtaXQgZGVuIEFuZm9yZGVydW5nZW4gZnVlciBkZW4gU3VwZXJzZWhlcj8gSWNoCnZlcm1pc3NlIGRpZXNlIERpc2t1c3Npb24gc2Nob24gc2VociA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzM6IGFydGlrZWwgaWRlZSAoT3JrdG9ldGVyLCAxMy4gRmViIDIwMDYsIDEyOjUzOjUxKToKfiMhIHJuPUthcmlzIHJ0PTExMzk4MzE1OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM4OTE4OTc2ClVuZCB3YXMga29tbXQgbmFjaCBkZW0gU3Vwc2Vyc2VoZXI/IERlciBGZXJuc2VoZXI/CgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzQ6IGFydGlrZWwgaWRlZSAoS2FyaXMsIDEzLiBGZWIgMjAwNiwgMTI6NTU6MzUpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExMzk4MzE2MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM4OTE4OTc2CkpldHp0IGhhc3RlcyB2ZXJzYXV0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGZWhsZXJzY2htYXJybiAuLi4gKE1haGF0bXUsIDEzLiBGZWIgMjAwNiwgMTc6NTY6MTEpOgpFaW4gUGFwYWdlaSBuYW1lbnMgTWFuZ28uCk1hbmdvcyBEc2NoaW5uLgpFaW4gUGFwYWdlaSBuYW1lbnMgTWFuZ28uCj4ga251ZGRlbCBtYW5nbyAxNwpEdSBrbnVkZGVsc3QgTWFuZ28uCgoKSG1qYS4gU28gd2FyIGRhcyBuaWNodCBnZWRhY2h0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGZWhsZXJzY2htYXJybiAuLi4gKE1hbmdvLCAxMy4gRmViIDIwMDYsIDE4OjAxOjA4KToKfiMhIHJuPU1haGF0bXUgcnQ9MTEzOTg0OTc3MSByZz1zY2htYXJybgp+IyEgdGlkPTExMzk4NDk3NzEKUGV0emUhCkljaCBoYXR0ZSBiaXNoZXIgaW1tZXIgbWVpbmVuIFNwYXNzIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM3OiBDZkQ6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoR2xvaW5zb24sIDEzLiBGZWIgMjAwNiwgMjI6NTA6NTcpOgp+IyEgcm49Q2hhZ2FsbCBydD0xMTM5ODY0NDYwIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTM5MjQ0NzEzCkhleSwgZGFubiBrYW5uIG1hbiBuZXUgaGluenVrb21tZW5kZSBGUHMgYmVzc2VyIGFic2NoYWV0emVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM4OiBDZkQ6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoWm9vaywgMTQuIEZlYiAyMDA2LCAxMTo0MToyNik6Cn4jISBybj1UYXJhbmlzIHJ0PTExMzk5MTI5Nzggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExMzkyNDQ3MTMKTmFjaCBkZW0gTW90dG86ICJEdSBoYXN0IGluIGRlciBVbnRlcndlbHQgaW1tZXIgbm9jaCBuaWNodCBkZW4gQm9kZW4KZ2VmdW5kZW4uIgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQwOiBDZkQ6IFNlaGVyYW5mb3JkZXJ1bmdlbiAoWm9vaywgMTQuIEZlYiAyMDA2LCAyMjo0MTozNyk6Cn4jISBybj1UYXJhbmlzIHJ0PTExMzk5NDMxMzUgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExMzkyNDQ3MTMKPiBzYXViZXIgZm9yc2NodAoKV2FzIGlzbiBkYXM/IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZGUuYWx0Lm11ZDogU2luZCBNdWRzIHp1bSBBdXNzdGVyYmVuIHZlcnVydGVpbHQ/IChHbG9pbnNvbiwgMTUuIEZlYiAyMDA2LCAxNDozOToyNik6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMTQwMDEwNzQ4IG9nPXd3dwp+IyEgcm49TW9udGFudXMgcnQ9MTE0MDAxMDY0MiByZz13d3cKfiMhIHRpZD0xMTQwMDAwNDA2CkRpZSBFeHBlcnRlbi0sIEVyZWlmZXJlci0sIE1vdXNzZXByb2R1emVudGVuLSB1bmQgUG9sZW1pa2VyYmFzaXMgaXN0IGRhCmVpbmZhY2ggbWVpc3Qgdm9uIEFuZmFuZyBhbiB6dSBrbGVpbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBkZS5hbHQubXVkOiBTaW5kIE11ZHMgenVtIEF1c3N0ZXJiZW4gdmVydXJ0ZWlsdD8gKE1vbnRhbnVzLCAxNS4gRmViIDIwMDYsIDE0OjQyOjI0KToKfiMhIHJuPUdsb2luc29uIHJ0PTExNDAwMTA3NjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQwMDAwNDA2CkR1IG1laW5zdCwgd2lyIHNvbGxlbiBPcmt0cm9ldGUsIEFuYXRvbCB1bmQgaXNpIG1laXN0YmlldGVuZCB2ZXJzdGVpZ2Vybj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGRlLmFsdC5tdWQ6IFNpbmQgTXVkcyB6dW0gQXVzc3RlcmJlbiB2ZXJ1cnRlaWx0PyAoR2xvaW5zb24sIDE1LiBGZWIgMjAwNiwgMTQ6NDQ6MDcpOgp+IyEgcm49TW9udGFudXMgcnQ9MTE0MDAxMDk0NCByZz1zY2htYXJybgp+IyEgdGlkPTExNDAwMDA0MDYKQW5hdG9sIGlzdCBpbiBpcmdlbmQgZWluZW0gTVVEIG5pY2h0IHZlcnRyZXRlbj8hIERhbm4gc2luZCBNVURzIHZvbSBBdXNzdGVyYmVuCmJlZHJvaHQgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBhcnRpa2VsIDQgKE9ya3RvZXRlciwgMTUuIEZlYiAyMDA2LCAyMzowMjo1MSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTQwMDQwNjk4IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTExMzcxODcxNTEKSGFjaCB3YXJlbiBkYXMgbm9jaCBaZWl0ZW4uLi4gYWxzIGRpZSBSZWNobmVyIG5vY2ggc2Nod2FjaCB1bmQgZHVyY2ggZWluIG11ZAp6aWVtbGljaCBhdXNnZWxhc3RldCB3YXJlbi4uLgpEYSBzdGVodCBtYW4gaW4gZWluZXIgbmV0dGVuIEtuZWlwZSwgdW5kIHVlYnQgTGljaHQgdW5kIHVlYnQgaW1tZXIgbm9jaCBMaWNodAp1bmQgZGFubiBzY2hhdSBtYW4gbWFsIGluIHNlaW4gaW52IHVuZCBzaWVodCBkYSB6aWVtbGljaCB2aWVsIExpY2h0IHVuZCBkZW5rdAphbiBkaWUgUmVjaG5lcnJlc291cmNlbiB1bmQgdGVpbHQgZWluZW0gbmljaHQtaWRsZSBtYWdpZXIgKGdhYnMgZGFtYWxzIHNvZ2FyCmVpbmlnZSB2b24hKSBtaXQsIGRhc3MgbWFuIGRhICh6YWhsIHZlcmdlc3NlYiwgYWJlciBWSUVMRSkgTGljaHRrdWdlbG4gb2RlciBzbwppbSBpbnYgaGF0Li4gZGVyIHdhciB6aWVtbGljaCBzY2huZWxsIGRhIHVuZCBkaWUgS3VnZWxuIHdhcmVuIGRlc3RydWN0ZWQuLi4gOikKCk9ya1QsIGluIEVyaW5uZXJ1bmdlbiBzY2h3ZWxnZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmFucGl0Y2ggYWxsZWluIChOYW5waXRjaCwgMTYuIEZlYiAyMDA2LCAwMToyMjozMSk6CiAgICAgIExpc3RlIGRlciBNaXRzcGllbGVyIHZvbSBEb24sIDE2LiBGZWIgMjAwNiwgMDE6MjA6MTcgKDEgVGVpbG5laG1lcikgICAgCgpOYW5waXRjaC4uLi4uLi4uLlMKCgpOYW5waXRjaCBmdWVobHQgc2ljaCBpcmdlbmR3aWUgZWluc2FtLgoKTmFucGl0Y2ggOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVlcyBNaXRnbGllZCBpbSBCYWxhbmNldGVhbSAoR3JpbW1ib3JuLCAxNy4gRmViIDIwMDYsIDA4OjIwOjUzKToKfiMhIHJuPU1pcmlsIHJ0PTExNDAxMjg2NDEgcmc9YmFsYW5jZS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTE0MDEyODY0MQpLbGVpbmVyIFRpcDogQmVpbSBBcnRpa2Vsc2NocmVpYmVuIFNjcmlwdGUgdW5kIFRyaWdnZXIgYXVzc2NoYWx0ZW4uClNjaGxpZXNzbGljaCBpc3QgZGFzIEJhbGFuY2V0ZWFtIG51biB2b2xsc3RhZW5kaWcsIHVuZCBuaWNodCB4eXouCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV1ZXMgTWl0Z2xpZWQgaW0gQmFsYW5jZXRlYW0gKE11YWRpYiwgMTcuIEZlYiAyMDA2LCAwODoyMTozMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE0MDE2MDg1MyByZz1zY2htYXJybgp+IyEgdGlkPTExNDAxMjg2NDEKbmF0dWVybGljaCBpc3QgZGFzIGJhbGFuY2V0ZWFtIHh5ei4KYWxsZXMgYW5kZXJlIHd1ZXJkZSBtaWNoIHNjaG9ja2llcmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogYXJ0aWtlbCA0IChab29rLCAxNy4gRmViIDIwMDYsIDEwOjMzOjUxKToKfiMhIHJuPU5vbm5lIHJ0PTExNDAxNjgzNzkgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTEzNzE4NzE1MQpEYSB3YXJlbiBhdWNoIG5vY2ggZWluaWdlIFRlc3RzIGF1c3N0ZWhlbiwgd2VubiBpY2ggbWljaCByZWNodAplbnRzaW5uZS4KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBhcnRpa2VsIDQgKEJvaW5nLCAxNy4gRmViIDIwMDYsIDEzOjA1OjU3KToKfiMhIG9uPUJvaW5nIG90PTExNDAwNzYyMDQgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1NYWhhcmV0IHJ0PTExNDAwNDAzOTggcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTEzNzE4NzE1MQpXYW5uIHdhciBPcmtUIHp1bGV0enQgdXB0b2RhdGU/IAogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBhcnRpa2VsIDQgKEJvaW5nLCAxNy4gRmViIDIwMDYsIDEzOjA1OjU4KToKfiMhIG9uPU1haGFyZXQgb3Q9MTE0MDA4MjgwMCBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPUJvaW5nIHJ0PTExNDAwNzYyMDQgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTEzNzE4NzE1MQpEYXMga2FubiBpY2ggbmljaHQgc2FnZW4sIGRhcyBtdXNzIHZvciBtZWluZXIgWmVpdCBnZXdlc2VuIHNlaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogYXJ0aWtlbCA0IChCb2luZywgMTcuIEZlYiAyMDA2LCAxMzowNTo1OSk6Cn4jISBvbj1Ob25uZSBvdD0xMTQwMTY4Mzc5IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49TWFoYXJldCBydD0xMTQwMDgyODAwIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTExMzcxODcxNTEKSWNoIGthbm4gbWljaCBkYSBkdW5rZWwgYW4gZWluZW4gd2F0dGllcnRlbiBTY2h3ZWluZWJyYXRlbiBlcmlubmVybiwgd2FzIGRhcwpha3R1ZWxsIGRhbWFscz8gTmUsIHdhaHJzY2hlaW5saWNoIGF1Y2ggbmljaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogYXJ0aWtlbCA0IChCb2luZywgMTcuIEZlYiAyMDA2LCAxMzowNjowMCk6Cn4jISBvbj1Nb3Jnb3RoIG90PTExNDAxNjkwMTEgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1Ob25uZSBydD0xMTQwMTY4Mzc5IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTExMzcxODcxNTEKTmVlZSwgVG9yZm5hc2UuIERhIGdpbmcgZXMgZG9jaCB1bSBtZWluZSBXdXJmc3Rlcm5lIDpQCgpNKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogYXJ0aWtlbCA0IChCb2luZywgMTcuIEZlYiAyMDA2LCAxMzowNjowMSk6Cn4jISBvbj1aYXJuaXlhIG90PTExNDAxNzc1NjMgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1Cb2luZyBydD0xMTQwMDc2MjA0IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTExMzcxODcxNTEKd2FyIGVyIGVzIGplPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IGFydGlrZWwgNCAoVmFuaW9uLCAxNy4gRmViIDIwMDYsIDE4OjA4OjMwKToKfiMhIHJuPUJvaW5nIHJ0PTExNDAxNzc5NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM3MTg3MTUxCldhciBlcyBlY2h0IFNjaHdlaW5lYnJhdGVuPyBJY2ggaGFiIG51ciBkZW4gQmVncmlmZiAiV2F0dGllcnRlciBCcmF0ZW4iIGluCkVyaW5uZXJ1bmcuIEhhdHRlIGltbWVyIGVpbmVuIHdhdHRpZXJ0ZW4sIG1pdCBXdXJmc3Rlcm5lbiBnZXNwaWNrdGVuIFB1dGVyIHZvcgpkZW0gZ2Vpc3RpZ2VuIEF1Z2UuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IGFydGlrZWwgNCAoR25vbWUsIDE3LiBGZWIgMjAwNiwgMjI6MjM6NDMpOgp+IyEgcm49VmFuaW9uIHJ0PTExNDAxOTYxMTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM3MTg3MTUxCm5laW4sIGVzIHdhciB3b2hsIGVpbiBndXQgYWJnZWhhbmdlbmVyIHNjaHdlaW5lYnJhdGVuLiB1bmQgZWlnZW50bGljaAp3YWVyZSBkYXMgdGhlbWEgIndpcmt1bmcgdm9uIHd1cmZzdGVybmVuIGJ6dy4gc2NobmVsbGlna2VpdCB1bmQKc2NobmVsbGtyYWZ0IHZzLiBtYXhpbWFsa3JhZnQiIG1hbCB3aWVkZXIgYW4gZGVyIHJvdGF0aW9ucy1yZWloZS4Kd2VyIGVyb2VmZm5ldD8gaWNoIG1vZGVyaWVyZSBnZXJuZS4gOikKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogYXJ0aWtlbCA0IChPcmt0b2V0ZXIsIDE3LiBGZWIgMjAwNiwgMjI6MjQ6MzYpOgp+IyEgcm49R25vbWUgcnQ9MTE0MDIxMTQyMyByZz1zY2htYXJybgp+IyEgdGlkPTExMzcxODcxNTEKU29ycnksIG1pciBzaW5kIGdlcmFkZSBkaWUgQ2hpcHMgYXVzZ2VnYW5nZW4uCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IGFydGlrZWwgNCAoR25vbWUsIDE3LiBGZWIgMjAwNiwgMjI6Mjc6NDQpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNDAyMTE0NzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM3MTg3MTUxCmFoLCBvcmt0YWV0c2NobGVyIHdpbGwgZGFzIHNjaHdlaW4gbm9jaCBtYWVzdGVuLCBiZXZvciBlciBlcyBzY2hsYWNodGV0CnVuZCB3YXR0aWVydC4gbXVlc3NlbiB3aXIgd29obCBub2NoIGVpbiBwYWFyIHRhZ2Ugd2FydGVuLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBhcnRpa2VsIDQgKFZhbmlvbiwgMTcuIEZlYiAyMDA2LCAyMjozMDo1OCk6Cn4jISBybj1Hbm9tZSBydD0xMTQwMjExNDIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNzE4NzE1MQpQYXNzZS4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogYXJ0aWtlbCA0IChHbG9pbnNvbiwgMTcuIEZlYiAyMDA2LCAyMjozMjowMCk6Cn4jISBybj1WYW5pb24gcnQ9MTE0MDIxMTg1OCByZz1zY2htYXJybgp+IyEgdGlkPTExMzcxODcxNTEKRHUgd2lsbHN0IGRpZSBNb2RlcmF0aW9uIHp1Z2VwYXNzdCBoYWJlbj8gR25vbWUsIGdpYiBtYWwgYWIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IGFydGlrZWwgNCAoVmFuaW9uLCAxNy4gRmViIDIwMDYsIDIyOjQ1OjA3KToKfiMhIHJuPUdsb2luc29uIHJ0PTExNDAyMTE5MjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM3MTg3MTUxClBsb25rLiAoZGllc2VyIFRocmVhZCkKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogYXJ0aWtlbCA0IChNdWFkaWIsIDE4LiBGZWIgMjAwNiwgMTI6MjQ6MjgpOgp+IyEgcm49R25vbWUgcnQ9MTE0MDIxMTQyMyByZz1zY2htYXJybgp+IyEgdGlkPTExMzcxODcxNTEKaGFzdCBkdSBkaWNoIGViZW4gZnVlciBkZW4gc2Nod2FjaHNpbm4gYW5nZWJvdGVuPwpuYSBkYW5uIG1hY2ggYXVjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IGFydGlrZWwgNCAoR25vbWUsIDE5LiBGZWIgMjAwNiwgMTQ6NTg6NDkpOgp+IyEgcm49TXVhZGliIHJ0PTExNDAyNjE4Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMTM3MTg3MTUxCm5hIGtlaW4gcHJvYmxlbS4KZGllIGFydGlrZWwgbXVlc3N0IGlociBhYmVyIHNjaG9uIHNjaHJlaWJlbi4gaWNoIHdlcmZlIGRhbm4gbnVyIGhpbiB1bmQKd2llZGVyIG1hbCBlaW4gcGFhciBmYWt0ZW4gZWluLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiB1bmQgd2VpdGVyIGdlaHRzIChBbGtvaG9sLCAxOS4gRmViIDIwMDYsIDIzOjA5OjA2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTQwMzg1NjU1IHJnPWt1bHR1cgp+IyEgdGlkPTExNDAzODM0NTMKYmFlaCBpY2ggYmluIGVjaHQgbWl0IEdkQSBlaW5lciBNZWludW5nLiBCaW4gaWNoIGtyYW5rLCBNdXNzIGljaCBiYWxkIHN0ZXJiZW4/CgpBbGsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGR2ZCdzIChBbnRoZWEsIDIwLiBGZWIgMjAwNiwgMTI6MzE6MDEpOgp+IyEgcm49QnJhbiBydD0xMTQwNDM0Nzk1IHJnPWt1bHR1cgp+IyEgdGlkPTExNDAxOTQ5MTEKTmVuZSwgZGFzIG1pdCBkZXIgQWJrdWVydW5nIHZvbiBBcG9zdHJvcGggYXVmICcgdW5kIGRpZSBkYW1pdCB2ZXJidW5kZW5lbgpQcm9ibGVtZSBkZXIgUGx1cmFsaXNpZXJ1bmcgc29sbHRlbiB3aXIgc2Nob24gc2F1YmVyIGF1c2Rpc2t1dGllcmVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBkdmQncyAoR2xvaW5zb24sIDIwLiBGZWIgMjAwNiwgMTQ6NTQ6MzgpOgp+IyEgb249R2xvaW5zb24gb3Q9MTE0MDQ0MzQxNiBvZz1rdWx0dXIKfiMhIHJuPUJyYW4gcnQ9MTE0MDQ0MzM4MCByZz1rdWx0dXIKfiMhIHRpZD0xMTQwMTk0OTExCmRhIG1hY2hlbiBkaWUgbGV1dGUgbWFsIGVpbmVuIGVpbnppZ3N0ZW4gZmVobGVyIHVuZCBkYW5uIHNvd2FzIC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBkdmQncyAoR2xvaW5zb24sIDIwLiBGZWIgMjAwNiwgMTQ6NTQ6MzkpOgp+IyEgb249QW50aGVhIG90PTExNDA0NDM0NDggb2c9a3VsdHVyCn4jISBybj1HbG9pbnNvbiBydD0xMTQwNDQzNDE2IHJnPWt1bHR1cgp+IyEgdGlkPTExNDAxOTQ5MTEKQWxzbyBiaXR0ZS4gRWluemlnIGlzdCBuaWNodCBzdGVpZ2VyYmFyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogZHZkJ3MgKEdsb2luc29uLCAyMC4gRmViIDIwMDYsIDE0OjU0OjQwKToKfiMhIG9uPUdsb2luc29uIG90PTExNDA0NDM1NzIgb2c9a3VsdHVyCn4jISBybj1BbnRoZWEgcnQ9MTE0MDQ0MzQ0OCByZz1rdWx0dXIKfiMhIHRpZD0xMTQwMTk0OTExCmFiZXIgd2llIGthbm4gbWFuIGRhcyBzb25zdCBhbSBvcHRpbWFsc3RlbiBhdXNkcnVlY2tlbiA/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IGR2ZCdzIChHbG9pbnNvbiwgMjAuIEZlYiAyMDA2LCAxNDo1NDo0MSk6Cn4jISBvbj1IaWdobGFuZGVyIG90PTExNDA0NDM1OTQgb2c9a3VsdHVyCn4jISBybj1HbG9pbnNvbiBydD0xMTQwNDQzNTcyIHJnPWt1bHR1cgp+IyEgdGlkPTExNDAxOTQ5MTEKSHlkcmF1bGlrcHJlc3NlLgoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogZHZkJ3MgKEdsb2luc29uLCAyMC4gRmViIDIwMDYsIDE0OjU0OjQyKToKfiMhIG9uPUdsb2luc29uIG90PTExNDA0NDM2NjIgb2c9a3VsdHVyCn4jISBybj1IaWdobGFuZGVyIHJ0PTExNDA0NDM1OTQgcmc9a3VsdHVyCn4jISB0aWQ9MTE0MDE5NDkxMQp3YXNzbiBlaW5lIGh5ZHJhLXVsaWsgPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBkdmQncyAoQW50aGVhLCAyMC4gRmViIDIwMDYsIDE0OjU2OjQwKToKfiMhIHJuPUdsb2luc29uIHJ0PTExNDA0NDM2ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQwMTk0OTExCndlbm4gRHUgZWluZXIgdWxraWdlbiBIeWRyYSBkYXMgSyBrbGF1c3QsIGRhbm4gYmxlaWJ0IHNvd2FzIHRyYXVyaWdlcyB1ZWJyaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogZHZkJ3MgKEhpZ2hsYW5kZXIsIDIwLiBGZWIgMjAwNiwgMTQ6NTc6MDgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE0MDQ0MzY4MiByZz1zY2htYXJybgp+IyEgdGlkPTExNDAxOTQ5MTEKRWluIEh5ZHJhLVVsayBtaXQgZWluZW0gaSB6dXZpZWwuCgpIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGR2ZCdzIChNdWFkaWIsIDIwLiBGZWIgMjAwNiwgMTc6MjM6MDYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE0MDQ0MzY3OCByZz1zY2htYXJybgp+IyEgdGlkPTExNDAxOTQ5MTEKYmFoaGhhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IDI1IHdhaHJlIFplaWNoZW4sIGRhc3MgRHUgZXJ3YWNoc2VuIGJpc3QgKEdsb2luc29uLCAyMS4gRmViIDIwMDYsIDE0OjU0OjQyKToKfiMhIHJuPVZlY3RvciBydD0xMTQwNTE1NzI2IHJnPXdpdHplCn4jISB0aWQ9MTE0MDUxNDg4OQpEdSB3aWxsc3QgS2lyaSBmcml0dGllcmVuPyBOYSBsZWNrZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWUgU2VoZXJhbmZvcmRlcnVuZ2VuIChLbnVycHMsIDIxLiBGZWIgMjAwNiwgMTY6Mzg6NTcpOgp+IyEgcm49Wm9vayBydD0xMTQwNTE2MjY5IHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTQwNTE2MjY5CiAqIER1IG11c3N0IG1pbmRlc3RlbnMgMzgwMCBTdHVmZW5wdW5rdGUsIGFsc28gU3R1ZmUgMzgsIGVycmVpY2hlbi4KICogRHUgbXVzc3QgbWluZGVzdGVucyBTdHVmZSAzOCBlcnJlaWNoZW4uCgpJcmdlbmR3aWUgaGFiZSBpY2ggZGFzIEdlZnVlaGwsIGRhc3MgbWFuIG1pY2ggZnVlciBibG9lZCBoYWVsdC4gOz4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV1ZSBTZWhlcmFuZm9yZGVydW5nZW4gKEtudXJwcywgMjEuIEZlYiAyMDA2LCAxNjo0MToyMSk6Cn4jISBybj1LbnVycHMgcnQ9MTE0MDUzNjMzNyByZz1zY2htYXJybgp+IyEgdGlkPTExNDA1MTYyNjkKV2VubiBpY2ggZXMgbWlyIGdlbmF1IHVlYmVybGVnZSwgZmluZGUgaWNoIGRhcyBhdWNoIHNlbHRzYW06CiAqIER1IG11c3N0IG5vY2ggZWluaWdlIHd1ZXJkaWdlIEdlZ25lciBlcmxlZ2VuLCBnZW5hdSBnZW5vbW1lbgogICBtdXNzdCBEdSBub2NoIHVuZ2xhdWJsaWNoIHZpZWxlIHd1ZXJkaWdlIE1vbnN0ZXIgdG9ldGVuLgoKRGllIEZvcm11bGllcnVuZyBpc3Qgd29obCBlaW4ga2xlaW5lcyBNaXNzZ2VzY2hpY2s/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWUgU2VoZXJhbmZvcmRlcnVuZ2VuIChNdWFkaWIsIDIxLiBGZWIgMjAwNiwgMTg6NDc6MjApOgp+IyEgcm49S251cnBzIHJ0PTExNDA1MzYzMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQwNTE2MjY5Cm5hamEsIGVpbm1hbCBnZWh0IGVzIHVtIGRpZSBzdHVwc2UsIGRpZSBkdSBoYWJlbiBtdXNzdC4gZGllIG11ZXNzZW4gbWluZGVzdGVucwpmdWVyIHN0dWZlIDM4IHJlaWNoZW4KZGFubiBnZWh0IGVzIHVtIGRlaW5lIHN0dWZlLiBkdSBtdXNzdCBhdWNoIG1pbmRlc3RlbnMgc3R1ZmUgMzggc2VpbiB1bmQgbmljaHQKc3R1ZmUgMSAoMzgpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXVlIFNlaGVyYW5mb3JkZXJ1bmdlbiAoTXVhZGliLCAyMS4gRmViIDIwMDYsIDE4OjQ3OjQwKToKfiMhIHJuPUtudXJwcyBydD0xMTQwNTM2NDgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MDUxNjI2OQp3aWVzbz8Kd2VpbCBlaW5pZ2UgcHJhZXppc2llcnQgd2lyZD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5ldWUgU2VoZXJhbmZvcmRlcnVuZ2VuIChLbnVycHMsIDIyLiBGZWIgMjAwNiwgMDE6NTY6MDcpOgp+IyEgcm49TXVhZGliIHJ0PTExNDA1NDQwNjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQwNTE2MjY5Clp1bWluZGVzdCBtZWluZW0gU3ByYWNoZ2VmdWVobCBuYWNoIGlzdCAiZWluaWdlIiA8PCAidW5nbGF1YmxpY2ggdmllbGUiLgpOYWl2ZXJ3ZWlzZSBiaW4gaWNoIGRhdm9uIGF1c2dlZ2FuZ2VuLCBkYXNzIGRpZXMgZ2FlbmdpZ2VzIFNwcmFjaHZlcnN0YWVuZG5pcwppc3QuIEljaCBzZWhlIHp1bWluZGVzdCwgZGFzcyBEdSBlaW4gYW5kZXJlcyBTcHJhY2hnZWZ1ZWhsIGhhc3QsIHdlbm4gZHUKInVuZ2xhdWJsaWNoIHZpZWxlIiBhbHMgUHJhZXppc2llcnVuZyB2b24gImVpbmlnZSIgdmVyc3RlaHN0LiAKCktudXJwcywgdmVyd3VuZGVydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmV1ZSBTZWhlcmFuZm9yZGVydW5nZW4gKEtudXJwcywgMjIuIEZlYiAyMDA2LCAwMTo1ODoxMik6Cn4jISBybj1NdWFkaWIgcnQ9MTE0MDU0NDA0MCByZz1zY2htYXJybgp+IyEgdGlkPTExNDA1MTYyNjkKV2VsY2hlIEluZm9ybWF0aW9uIHdpcmQgZHVyY2g6CiAqIER1IG11c3N0IG1pbmRlc3RlbnMgU3R1ZmUgMzggZXJyZWljaGVuLgp0cmFuc3BvcnRpZXJ0LCBkaWUgbmljaHQgc2Nob24gZHVyY2g6CiAqIER1IG11c3N0IG1pbmRlc3RlbnMgMzgwMCBTdHVmZW5wdW5rdGUsIGFsc28gU3R1ZmUgMzgsIGVycmVpY2hlbi4KZ2VsaWVmZXJ0IHd1cmRlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmV1ZSBTZWhlcmFuZm9yZGVydW5nZW4gKENyb2Z0LCAyMi4gRmViIDIwMDYsIDAyOjA4OjQyKToKfiMhIHJuPUtudXJwcyBydD0xMTQwNTY5ODkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MDUxNjI2OQpNYW4ga2FubiBhdWNoIFN0dWZlIDM4IGhhYmVuIG9obmUgMzgwMCBTdHVmZW5wdW5rdGUgenUgaGFiZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmV1ZSBTZWhlcmFuZm9yZGVydW5nZW4gKEtudXJwcywgMjIuIEZlYiAyMDA2LCAwMjoyMjo1Nyk6Cn4jISBybj1Dcm9mdCBydD0xMTQwNTcwNTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MDUxNjI2OQpOZXR0ZXIgSGlud2VpcywgYWJlciB3YXMgaGF0IGVyIG1pdCBkZXIgRnJhZ2UgenUgdHVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmV1ZSBTZWhlcmFuZm9yZGVydW5nZW4gKE11YWRpYiwgMjIuIEZlYiAyMDA2LCAxMDoxNDo0NCk6Cn4jISBybj1LbnVycHMgcnQ9MTE0MDU2OTc2NyByZz1zY2htYXJybgp+IyEgdGlkPTExNDA1MTYyNjkKImVpbmlnZSIgYmVpbmhhbHRldCBmdWVyIG1pY2ggZWluZSB1bmJlc3RpbW10ZSBtZW5nZW5hbmdhYmUsIHZpZWxsZWljaHQgbGllZ3QKZXMgZGFyYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXVlIFNlaGVyYW5mb3JkZXJ1bmdlbiAoTXVhZGliLCAyMi4gRmViIDIwMDYsIDEwOjE1OjU3KToKfiMhIHJuPUtudXJwcyBydD0xMTQwNTY5ODkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MDUxNjI2OQpkaWUgZm9ybXVsaWVydW5nIHd1cmRlIGRvY2ggZXJzZXR6dCwgZGllIGRpc2t1c3Npb24gbXVlc3NpZwpkaWUgbmV1ZSBmb3JtdWxpZXJ1bmcgc29sbHRlIGFiZXIgZGVuIHVudGVyc2NoaWVkIGRldXRsaWNoZXIgaGVydm9ydHJldGVuCmxhc3NlbiwgZmFsbHMgbWFuIGRlbm9jaCBlaW5lIGFudHdvcnQgd2lsbCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVnaCBpc3QgamV0enQgZWluIFNlaGVyISAoR25vbWUsIDIyLiBGZWIgMjAwNiwgMTQ6MDY6MzMpOgp+IyEgcm49TWVybGluIHJ0PTExNDA1NjU3OTggcmc9c3R1ZmVuCn4jISB0aWQ9MTE0MDU2NTc5OAppY2ggbWVsZGU6IHNlaGVyc2Nod2VtbWUhIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVnaCBpc3QgamV0enQgZWluIFNlaGVyISAoT3JrdG9ldGVyLCAyMi4gRmViIDIwMDYsIDE0OjIxOjA4KToKfiMhIHJuPUdub21lIHJ0PTExNDA2MTM1OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQwNTY1Nzk4CmJlc3NlciBhbHMgU2VoZXJzY2h3YWVtbWUKCk9ya1QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFVnaCBpc3QgamV0enQgZWluIFNlaGVyISAoR2xvaW5zb24sIDIyLiBGZWIgMjAwNiwgMTc6MDQ6MzUpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNDA2MTQ0Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMTQwNTY1Nzk4Ck5pY2h0cyBkYWdlZ2VuLCBzb2xhbmdlIG1hbiBkYW1pdCBzY2huZWxsa3JhZWZ0aWcgd2F0dGllcnRlIFp3ZXJnZW5zZWhlcgpkdXJjaGJvaHJlbiBrYW5uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldWUgU2VoZXJhbmZvcmRlcnVuZ2VuIChHcmltbWJvcm4sIDIzLiBGZWIgMjAwNiwgMjI6NTI6NTgpOgp+IyEgcm49QnJhbiBydD0xMTQwNzMxMTUyIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTE0MDUxNjI2OQpTY2hsZWltZXIhCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5ldWUgU2VoZXJhbmZvcmRlcnVuZ2VuIChCcmFuLCAyMy4gRmViIDIwMDYsIDIyOjUzOjI0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTQwNzMxNTc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MDUxNjI2OQpJY2ggd3Vzc3RlLCBkYXNzIGRhcyBrb21tdCwgdW5kIHZvbiB3ZW0gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFtYXJ5bGxpcywgIDIuIE1hciAyMDA2LCAxMToxMToxOCk6CltBbGxnZW1laW46VHNjaGFrZXNzYV0gbW9pbgpbVG9kOkxhcnNdIFd1cW91ciBoYXQgZ2VyYWRlIFRzY2hha2Vzc2EgdW1nZWJyYWNodC4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBOZXVlIFNlaGVyYW5mb3JkZXJ1bmdlbiAoTGlhcmEsICAyLiBNYXIgMjAwNiwgMTc6MTE6MDgpOgp+IyEgcm49QXJrIHJ0PTExNDEzMDY3Njkgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExNDA1MTYyNjkKQWgsIGpldHp0IGhhYiBpY2gncy4gOy0+IER1IGhhc3QgZ2VsaXR0ZW4uIC0+IER1IHdpbGxzdCwgZGFzcyBkaWUgYW5kZXJlbiBhdWNoCmxlaWRlbi4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFlbmRlcnVuZ2VuOiBUZWlsIEkgKENoYWdhbGwsICA4LiBNYXIgMjAwNiwgMjE6NTM6MzgpOgp+IyEgcm49U3dvb3AgcnQ9MTE0MTg1MTE3NCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMTQxNzcyNjE0Ck5hIGtvbW0sIGRpZSBwYWFyIEFQIGhhc3RlIGRvY2ggZml4IHp1c2FtbWVuLgoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoYS4gKE9oYW0sIDExLiBNYXIgMjAwNiwgMDA6MjI6NDQpOgpSb2xhbmQgYnJ1ZWxsdDogREFBQSBMQUFBTkchIERhYmVpIHplaWd0IGVyIGF1ZiBkaWUgVG9pbGV0dGUuCgpTb3NvLiBWb24gc2ljaCBzZWxic3QgYXVmIGFsbGUgc2NobGllc3Nlbi4uCgpPaGFtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTmV1ZSBTZWhlcmFuZm9yZGVydW5nZW4gKEFuYXRvbCwgMTEuIE1hciAyMDA2LCAwOTozMDozMCk6Cn4jISBvbj1BbmF0b2wgb3Q9MTE0MjA2NTgyNCBvZz1kaXNrdXNzaW9uCn4jISBybj1BcmsgcnQ9MTE0MTMwNjc2OSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTE0MDUxNjI2OQpEdSBtb2VjaHRlc3QgenVtIEF1c2RydWNrIGJyaW5nZW4sIGRhc3MgR25vbWUgS2FyYXRla2Egd2VyZGVuIHNvbGx0ZT8KClZpZWxsZWljaHQgc29sbHQnIG1hbiBlaW5mYWNoIGRhcyBQb3J0YWwgaW4gRmVybndlc3QgYWJoYWVuZ2VuLiBSZXN0CmdpYnQgc2ljaC4uLi4gO28pCgpBbmF0b2wgdmVyc2NoaWVidCdzIG5hY2ggU2NobWFycm4gLSBzaWNoZXJoZWl0c2hhbGJlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc28gZXR3YXMuLi4uIChPcmt0b2V0ZXIsIDExLiBNYXIgMjAwNiwgMTM6MzA6MzUpOgpbPE1hc3RlUj46QmllbGVmZWxkIGxhZXNzdCBkaWUgRWJlbmUgJ0hhbWJ1cmcnIGVudHN0ZWhlbi5dCgpPcmtULCBzdGF1bmVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBBZW5kZXJ1bmdlbjogVGVpbCBJIChHbG9pbnNvbiwgMTEuIE1hciAyMDA2LCAxNTowOTowOCk6Cn4jISBybj1EYXJrbG9yIHJ0PTExNDIwODU4OTIgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTE0MTc3MjYxNApBYWFoLiBBdWYgZGllc2UgV2Vpc2Ugd2lyZCBMZXZlbCAyNCBuYXR1ZXJsaWNoIHNlaHIgZ2VzY2hpY2t0IGVpbmdlZnVlaHJ0IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEFlbmRlcnVuZ2VuOiBUZWlsIEkgKE9ya3RvZXRlciwgMTEuIE1hciAyMDA2LCAxNToxNDo0Myk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTQyMDg2MTQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MTc3MjYxNApJY2ggdmVyc3VjaGUgYXVjaCBtaXIgZ2VyYWRlIGRpZSBnYW56ZW4gYWx0ZW4gR2VuZXJhbHNzYWVja2Ugdm9yenVzdGVsbGVuLCB3aWUKZGllIGRhbm4gaXJnZW5kd2FubiBtYWwgZGllIEdpbGRlbnN0dWZlIDI1IGVycmVpY2hlbiB3b2xsZW4gdW5kIGZlc3RzdGVsbGVuLApkYXNzIHNpZSBTdGFia2FtcGYgbm9jaCBuaWNodCBtYWwgZ2VsZXJudCBoYWJlbiB1bmQgZGFubiBlcnN0IG1hbCB3aWVkZXIgenUKZWluZW0gZGVyIEF1c2JpbGRlciBtdWVzc2VuIHVuZCBkYW5uIGRlbiBTdGFia2FtcGYgc2NyaV5XbGVybmVuLi4uCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IEFlbmRlcnVuZ2VuOiBUZWlsIEkgKERhcmtsb3IsIDExLiBNYXIgMjAwNiwgMTU6MjQ6MzMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE0MjA4NjE0OCByZz1zY2htYXJybgp+IyEgdGlkPTExNDE3NzI2MTQKSmEsIGRhcyB3YXIgaW0gVm9yc2NobGFnIG1pdCBpbmJlZ3JpZmZlbiwgZGFzcyBtYW4gc28gc2VociBlbGVnYW50IHp1IExldmVsIDI0CmtvbW1lbiBrb2VubnRlICh1bmQgYXVjaCBzbyB2ZXJoYWVsdG5pc21hZXNzaWcgZWluZmFjaC4uLikKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBBZW5kZXJ1bmdlbjogVGVpbCBJIChab29rLCAxMS4gTWFyIDIwMDYsIDE3OjMxOjM1KToKfiMhIHJuPUFyayBydD0xMTQyMDk0NDg1IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTExNDE3NzI2MTQKTnUgdHUgZG9jaCBuaWNodCBzbyBnZWxlaHJ0LgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBXZXJidW5nIGZ1ZXJzIE11ZCwgd2llIGRlbm4gbnVuPyAoSmFkYXdpbiwgMTIuIE1hciAyMDA2LCAxNjowNDowOCk6Cn4jISBybj1LbnVycHMgcnQ9MTE0MjE3NTc2NCByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTE0MjExOTU5NgpTb3JyeSwgaGF0dGUgaWNoIHVlYmVyc2VoZW4uCkphZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBXZXJidW5nIGZ1ZXJzIE11ZCwgd2llIGRlbm4gbnVuPyAoTXVhZGliLCAxMi4gTWFyIDIwMDYsIDE3OjE4OjMxKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTE0MjE3NTQwNCByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTE0MjExOTU5NgpzY2hpY2sgbWFsIG5hbWVuIHVuZCBhZHJlc3NlCmljaCB3ZXJkIG1hbCBzY2hhdWVuIG9iIGVyIGd1dGVuIGFyZ3VtZW50ZW4gZ2VnZW51ZWJlciBhdWZnZXNjaGxvc3NlbiBpc3QKa2FubiBtYW4gZWlnZW50bGljaCBvaG5lIGZpbmdlciBzdXJmZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBGdW5ha29zaGkuLi4gKEhpZ2hsYW5kZXIsIDEyLiBNYXIgMjAwNiwgMjA6NDQ6NTIpOgp+IyEgcm49UGljaHUgcnQ9MTE0MjE5MjMzMSByZz1naWxkZW4ua2FyYXRlCn4jISB0aWQ9MTE0MjAyNjI5OQpIZSwgSHVtbmksIGRlciBtYWcga2VpbmUgUmVpbWUhIFN0ZWluaWdlbiBvZGVyIHp1ZXJzdCB2aWVydGVpbGVuPyA6KQoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBGdW5ha29zaGkuLi4gKFBpY2h1LCAxMi4gTWFyIDIwMDYsIDIxOjAyOjI1KToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9MTE0MjE5MjY5MiByZz1zY2htYXJybgp+IyEgdGlkPTExNDIwMjYyOTkKU0lFIGJpdHRlLCBzb3ZpZWwgWmVpdCBtdXNzIHNlaW4hClBpY2h1CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNZWludW5nZW4gZ2VmcmFndCAoWm9vaywgMTMuIE1hciAyMDA2LCAyMTowMTo0OCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE0MjI3MjgxMSByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMTQyMTExOTA2CkxpZWJlciBPcmt0b2V0ZXIsIGljaCB3aWxsIERpciBnZXJuZSBnbGF1YmVuLCBhYmVyIHNvIGdhbnogb2huZSB3YXR0aWVydGUKQnJhdGVuIGlzdCBtaXIgZGFzIGRvY2ggbmljaHQgYW5zY2hhdWxpY2ggZ2VudWcuIDspKSkpCgpab2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBNZWludW5nZW4gZ2VmcmFndCAoWm9vaywgMTMuIE1hciAyMDA2LCAyMTowNTo0Myk6Cn4jISBybj1LZXNzYSBydD0xMTQyMjgwMDQ4IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTExNDIxMTE5MDYKPiBCcmFuLCBhbHMgWmF1YmkgbmF0dWVybGljaCByaWNodGlnIEFobnVuZyBoYWJlbmQKCk1pciB3YXIgc2Nob24gaW1tZXIga2xhciwgZGFzcyBkaWUgVHJ2ZXMgbnVyIG5lbiBIYXVmZW4gU2NobGFwcHNjaHdhZW56ZSAKc2luZC4gTnVuIGxhc3NlbiBzaWUgc2ljaCBhdWNoIG5vY2ggdm9uIG5lciBaYXViZXJpbmUgZGllIFBhcmFkZSBlcmtsYWVyZW4hIAoKOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1laW51bmdlbiBnZWZyYWd0IChTa3ksIDEzLiBNYXIgMjAwNiwgMjM6MTM6NTApOgp+IyEgcm49S251cnBzIHJ0PTExNDIxMjkwNDAgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTE0MjExMTkwNgoiQWQgMykgRGEgaWNoIGVoIG5pZSByaWNodGlnIHZlcnN0YW5kZW4gaGFiZSwgd2FzIGRlciB0ZWNobmlzY2hlIFVudGVyc2NoaWVkCnp3aXNjaGVuIGVpbmVtIFdhZmZlbnRyaWNrIHVuZCBlaW5lciBGaW50ZSBpc3QsIHdpbGwgaWNoIGhpZXJ6dSBtYWwgbmljaHRzCnNhZ2VuLiBJY2ggZnJldWUgbWljaCBhYmVyLCB3ZW5uIG1pciBkYXMgamVtYW5kIGVya2xhZXJlbiBrYW5uLgoiIgoKbmFqYS4uLi53ZW5uIG1hbiBlaW4gbHYgMjMgdHJ2ZXMgaGF0IHVuZCBkZW4gdW50ZXJzY2hpZWQgbmV0IGtlbm50Li4uLi4Ka2VpbiBrb21tZW50YXIuCm9id29obCBkdSBhbGxlcyBhdWYgbWF4IGhhc3QgZ2VzY3JpcHRldCBoYXN0IChiencuLmdldWVidCBoZWlzc3QgZGFzIGphIGpldHp0CndvaGwgaW56d2lzY2hlbikgLi4uLgpvbWcsIGljaCByb2ZsIG1pY2ggZ3JhZCBzbyB3ZWcgKGF1ZiBuZXVkZXV0c2NoIGdlc2FndCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1laW51bmdlbiBnZWZyYWd0IChLbnVycHMsIDE0LiBNYXIgMjAwNiwgMDA6MTI6NDEpOgp+IyEgcm49U2t5IHJ0PTExNDIyODgwMzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQyMTExOTA2CkFjaCBTa3kuLi4gCkljaCBoYWJlIG5pZSBnZXNhZ3QsIGRhc3MgaWNoIEFobnVuZyB2b24gS2FlbXBmZXJuIGhhYmUgdW5kIGVpbmVuClNrcmlwdGdlbmVyYWwgaGFiZW4sIHF1YWxpZml6aWVydCwgd2llIGFsbGUgd2lzc2VuIG5pY2h0LiBJY2gga2FubiBpaG4gbmljaHQKc3BpZWxlbiB1bmQgZXMgbWFjaHQgbWlyIGF1Y2gga2VpbmVuIFNwYXNzLiBFcyB3YXIgbWVpbiBQcml2YXR2ZXJudWVnZW4uIEljaAp3ZWlzcyB2ZXJtdXRsaWNoIG5vY2ggdmllbCBtZWhyIHVlYmVyIGRpZSBLYWVtcGZlciBuaWNodC4gVHUgZGlyIGVpbmVuCkdlZmFsbGVuIHVuZCBsZWcgZGllIERlbmt3ZWlzZSBhYiwgZGFzcyBlaW4gTWF4LVNwaWVsZXIgaXJnZW5kZXR3YXMKa29lbm5lbi93aXNzZW4gd2lyZC4gOy0pCgpadW0gV2FmZmVudHJpY2s7IEljaCBlcmlubmVyZSBtaWNoIGFuIGRlbiBUZXh0LCBkZW4gbWFuIG1pciBlcnphZWhsdCBoYXQuIE1hbgptYWNodCBlaW5lbiBzZWx0c2FtZW4oPykgQW5ncmlmZiwgZGVyIGRlbiBHZWduZXIgdmVyd2lycnQgdW5kIGlobiBkZWZlbnNpdmVyCmthZW1wZmVuIGxhZXNzdD8gV2VubiBtYW4gbmFjaCBXYWZmZW50cmljayBnb29nZWx0IGZpbmRldCBtYW4gbmljaHRzIHdpcmtsaWNoCmVya2xhZXJlbmRlcy4gSXN0IGRhcyBlaW4gUGhhbnRhc2llYW5ncmlmZiwgZGVyIGluIGRlciBQcmF4aXMgbmljaHQgdmVyd2VuZGV0CndpcmQsIGhlaXNzdCBkZXIgZGEgYW5kZXJzPyBJY2ggdmVyc3VjaGUgbWlyIHZvcnp1c3RlbGxlbiwgb2IgbmljaHQgZGVyCk1lY2hhbmlzbXVzIGVpbmVyIEZpbnRlIGRhcyB2ZXJ1cnNhY2hlbiBrYW5uLCB3YXMgaGllciBtaXQgZGVtIFdhZmZlbnRyaWNrCmludGVuZGllcnQgaXN0LiBBYmVyIHZpZWxsZWljaHQgaGF0IEV1cmUgR2VuZXJhbGl0YWV0IGRpZSBNdXNzZSBtaXIgZGFzIHp1CmVya2xhZXJlbi4uLgoKS251cnBzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWb3JmcmV1ZGUgKE1haGFyZXQsIDE0LiBNYXIgMjAwNiwgMTg6MDM6NDcpOgoxNzo1OTo0MSArIExvb2dhdApbQmVpbGVpZDpMb29nYXRdIEJpbiBpY2ggdG90PwoxODowMTowNiAtIExvb2dhdAoxODowMTozMyArIExvb2dhdApbVG9kOkxhcnNdIEVpbiBNYXVuaXNoLU1hcmlzaGthciBoYXQgZ2VyYWRlIExvb2dhdCB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbWFyeWxsaXMsIDE0LiBNYXIgMjAwNiwgMTg6MTY6MTYpOgpSb2xhbmQgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgpSb2xhbmQgcnVmdDogbmFjaCB6dWtsaW5nCltUb2Q6TGFyc10gRWluIE1hdW5pc2gtTWFyaXNoa2FyIGhhdCBnZXJhZGUgUm9sYW5kIHVtZ2VicmFjaHQuCltUb2Q6RWluIE1hdW5pc2gtTWFyaXNoa2FyXSBJY2ggc2NobHVnIERpY2ggbWl0IG1laW5lbiBlaXNpZ2VuIEtsYXVlbiwgZXMKW1RvZDpFaW4gTWF1bmlzaC1NYXJpc2hrYXJdIG1hY2h0IGVjaHQgU3Bhc3MsIERpY2ggenUgdmVyaGF1ZW4uIFN0ZXJiZW4gd2lyc3QKW1RvZDpFaW4gTWF1bmlzaC1NYXJpc2hrYXJdIER1IGF1Y2ggaW4gQmFlbGRlLCBzdGlyYnN0IER1IGF1ZiBkZW0gRmVsZGUgZGVyCltUb2Q6RWluIE1hdW5pc2gtTWFyaXNoa2FyXSBFaHJlIG9kZXIgd2lyc3QgRHUgd2luc2VsbmQgdmVycmVja2VuPyBJY2ggd2FlcmUKW1RvZDpFaW4gTWF1bmlzaC1NYXJpc2hrYXJdIG5pY2h0IHNpY2hlciwgd3VlcmQgbWljaCBsaWViZXIgdmVyc3RlY2tlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2VociB2ZXJ0cmF1ZW5zZXJ3ZWNrZW5kIChDZWlsbywgMTQuIE1hciAyMDA2LCAyMDoyODozNCk6Cj4gc2NoYWV0eiBrb25kb20KRHUgYmV0cmFjaHRlc3QgZGFzIEtvbmRvbSBlaW5nZWhlbmQuCkVzIHNjaHVldHp0IHZpZWxsZWljaHQgbWFnaXNjaC4KCkNlaWxvLAp1ZWJlcmdpYnQgZWluIEtvbmRvbSBqZXR6dCBkZXIgV2FmZmVua2FtbWVyIGRlcyBTdHJ1dgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVlYmVycmVnaW9uYWxlIFdlcmJ1bmcgZnVlciBNVURzIChCYW1idWxrbywgMTYuIE1hciAyMDA2LCAxMDoyMzoyNSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTQyNDMyMjcwIHJnPWFuemVpZ2VuCn4jISB0aWQ9MTE0MjQzMjI3MApLYW5uIG1hbiBuaWNodCBpbiBXb1cgRmx1Z2JsYWV0dGVyIHZlcnRlaWxlbj8KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTWVpbnVuZ2VuIGdlZnJhZ3QgKFRhcmFuaXMsIDE2LiBNYXIgMjAwNiwgMjE6MTA6NTEpOgp+IyEgcm49RGFya2xvciBydD0xMTQyNTM5NjI5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTQyMTExOTA2ClN1cGVyISA6LSkgTWl0IGRlbSBad2VpaGFuZGhhbXBmIGtyaWVnZW4gZGllIFphdWJpcyBhbHNvIGF1Y2ggMiBBbmdyaWZmIG1pdAonaGFuZCcgcHJvIFJ1bmRlLiA6LSkpIChNaXQgJ3NjaG5lbGwnIGRhbm4gbmF0dWVybGljaCA0LiAqZyopClRhcmFuaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBNZWludW5nZW4gZ2VmcmFndCAoT3JrdG9ldGVyLCAxNi4gTWFyIDIwMDYsIDIxOjExOjI3KToKfiMhIHJuPURhcmtsb3IgcnQ9MTE0MjUzOTYyOSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTE0MjExMTkwNgpBY2ggamEsIHdlbm4gZHUgc2Nob24gZGFiZWkgYmlzdCwgZGFubiBrYW5uc3QgZHUgamEgYXVjaCBnbGVpY2ggZGllIFNhY2hlbiBtaXQKZGVuIEZlcm5rYW1wZndhZmZlbiBlaW5iYXVlbiwgZGllIHZvciBsYW5nZXIgWmVpdCBzY2hvbiBtYWwgYW5nZWRhY2h0IHdhci4uLiAKVW5kIHdvIGR1IGRhbm4gZ2VyYWRlIHNvIGltIHZvbGxlbiBTY2h3dW5nIGJpc3QsIGthbm5zdCBkdSBnbGVpY2ggbm9jaCBkYXMKTGljaC4uIExpY2h0Li4gLi4gbmFqYSBkdSB3ZWlzc3Qgc2Nob24sIHVlYmVyYXJiZWl0ZW4uLi4gdW5kIGRpZSBncm9zc2UKU2NobGFjaHQgZnVlciBkZSBHTCAyNCBkZXIgS2FlbXBmZXIgaXN0IGF1Y2ggbm9jaCBuaWNodCBnZXByb2d0LCBkaWUga29lbm50ZXN0CmR1IGRhbm4gZ2xlaWNoIG1hY2hlbiBuYWNoZGVtIGR1IFRhcmFtaXMgYW5nZXNjaGxvc3NlbiBoYXN0LgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBNZWludW5nZW4gZ2VmcmFndCAoQ2hhZ2FsbCwgMTYuIE1hciAyMDA2LCAyMToxODozMik6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE0MjUzOTg4NyByZz1zY2htYXJybgp+IyEgdGlkPTExNDIxMTE5MDYKQWxzbyBaYXViZXJlciBzb2xsdGVuIGRhbm4gZWhlciAzIEFuZ3JpZmZlIGRpZSBSdW5kZSBoYWJlbiwgZnVlciBqZWRlCkhhbmQgZWluZW4uIE1pdCBzY2huZWxsIGRhbm4gbmF0dWVybGljaCA2IHVuZCBtZWhyLiA6KQoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBNZWludW5nZW4gZ2VmcmFndCAoR2xvaW5zb24sIDE2LiBNYXIgMjAwNiwgMjE6MTg6NTYpOgp+IyEgcm49Q2hhZ2FsbCBydD0xMTQyNTQwMzEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MjExMTkwNgpVbmQgbWl0IHdlbGNoZXIgSGFuZCBjYXN0ZXN0IGR1IGRlbiBTcHJ1Y2g/IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE1laW51bmdlbiBnZWZyYWd0IChPcmt0b2V0ZXIsIDE2LiBNYXIgMjAwNiwgMjE6MzM6MjMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE0MjU0MDMzNiByZz1zY2htYXJybgp+IyEgdGlkPTExNDIxMTE5MDYKSGFuZD8gSWNoIGRlbmtlIFphdWJlcmVyIGJlbnV0emVuIGZ1ZXIgU3BlbGxzIGlocmVuIFphdWJlcnN0YWI/CgpPcmtULgooc29ycnkgY291bGRuJ3QgcmVzaXN0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IE1laW51bmdlbiBnZWZyYWd0IChWZWN0b3IsIDE2LiBNYXIgMjAwNiwgMjE6NTE6MTMpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNDI1NDEyMDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQyMTExOTA2CkR1IGRlbmtzdD8KKHNvcnJ5IGNvdWxkbid0IHJlc2lzdCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBNZWludW5nZW4gZ2VmcmFndCAoT3JrdG9ldGVyLCAxNi4gTWFyIDIwMDYsIDIyOjA0OjA4KToKfiMhIHJuPVZlY3RvciBydD0xMTQyNTQyMjczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MjExMTkwNgpXaWVzbywgZGVua3N0IGR1IG5pY2h0PwoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVWViZXJyZWdpb25hbGUgV2VyYnVuZyBmdWVyIE1VRHMgKFJvbmRhLCAxNi4gTWFyIDIwMDYsIDIyOjQ2OjExKToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTExNDI1MDEwMDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQyNDMyMjcwCkdlbmF1IGRhcyB3YWVycy4gSW0gV29XIFdlcmJ1bmcgbWFjaGVuIGEgbGEgIkRpciBzdGlua3QgZGllIGdlbmlhbGUgR3JhZmlrCmhpZXI/IER1IHdpbGxzdCBlaW5mYWNoIG1hbCB3aWVkZXIgYmFjayB0byB0aGUgcm9vdC1GZWVsaW5nPyBEYW5uIGtvbW0gaW5zCk1vcmdlbmdyYXVlbiEiLiBPZGVyIGVpbiAiU2Nob24gd2llZGVyIG5lIG5ldWUgR3JhZmlra2FydGUga2F1ZmVuLCBkYW1pdCBkYXMKaGllciBjMzNsIGF1c3NpZWh0IC0gZGFzIHN0aW5rdCBEaXI/IERhbm4gbWFjaCBkb2NoIG1hbCB0ZWxuZXQgbWcubXVkLmRlCjQ3MTEhIgoKV29iZWkuIFNvIGRvb2YgaXN0IGRpZSBJZGVlIHZpZWxsZWljaHQgZ2FyIG5pY2h0IC0gdW5kIGRhcyBpbiBkaWVzZXIgUnVicmlrLi4uCjstKQoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFVlYmVycmVnaW9uYWxlIFdlcmJ1bmcgZnVlciBNVURzIChNdWFkaWIsIDE2LiBNYXIgMjAwNiwgMjM6MDg6MDQpOgp+IyEgcm49Um9uZGEgcnQ9MTE0MjU0NTU3MSByZz1zY2htYXJybgp+IyEgdGlkPTExNDI0MzIyNzAKZHUgbWVpbnN0IGszd2wgb2Rlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFVlYmVycmVnaW9uYWxlIFdlcmJ1bmcgZnVlciBNVURzIChIdW1uaSwgMTcuIE1hciAyMDA2LCAwNzo0NjozNSk6Cn4jISBybj1NdWFkaWIgcnQ9MTE0MjU0Njg4NCByZz1zY2htYXJybgp+IyEgdGlkPTExNDI0MzIyNzAKTWVpbiBMYWRlbiBpbiBlaW5lbSBCcm93c2Vyc3BpZWwgKEtpbmdkb20gb2YgTG9hdGhpbmcpIG1hY2h0IGF1Y2ggTUctV2VyYnVuZywKdW5kIGljaCB2ZXJicmluZ2UgZGllIG1laXN0ZSBaZWl0IGluIGRpZXNlbSBTcGllbCBkYW1pdCwgS3JhbSB6dSBzYW1tZWxuLCBkZW4KaWNoIGRhIHJlY2h0IGJpbGxpZyB2ZXJrYXVmZSwgZGFtaXQgZGllIExldXRlIGFsbGUgbWVpbmVuIExhZGVuIGJlc3VjaGVuLi4uCgpWZXJtdXRsaWNoIG5pY2h0IHNlaHIgZWZmZWt0aXYsIGRhcyBTcGllbCBpc3QgZW5nbGlzY2guCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE1laW51bmdlbiBnZWZyYWd0IChDaGFnYWxsLCAxNy4gTWFyIDIwMDYsIDE0OjAwOjQ0KToKfiMhIHJuPUdsb2luc29uIHJ0PTExNDI1NDAzMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQyMTExOTA2CkVpbmZhY2gsIGVudHdlZGVyIGNhc3RldCBtYW4gZGVuIHZvciBkZW0gS2FtcGYsIG9kZXIgZGVyCkdpbGRlbm1hZ2llciBiYXV0IGRlbiBTcHJ1Y2ggRnVzcyBlaW4uIERhbm4ga2FubiBtYW4gbWl0IGRlbgpGdWVzc2VuIGNhc3RlbiB1bmQgbWl0IGRlbiBIYWVuZGVuIG1ldHplbG4uIAoKV29iZWksIGdpYnQgamEga2VpbmVuIGFrdGl2ZW4gR00sIGFsc28gYmxlaWJ0IGRhcyBhbGxlcyBudXIKV3Vuc2NodHJhZXVtZSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSWNoIHdpbGwgLi4uIChab29rLCAxOC4gTWFyIDIwMDYsIDE2OjIzOjI1KToKfiMhIHJuPUNlaWxvIHJ0PTExNDI2OTUxMDMgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTE0MjY5Mjg3MQpJY2ggc2VoZSBzY2hvbiBkaWUgZXJzdGVuIEZvcmRlcnVuZ2VuIG5hY2ggZWluZW0gd2VpdGVyZW4gIlRyYWdlLUJvbnVzIiAKZnVlciBkaWUgS2FlbXBmZXIgYW0gSG9yaXpvbnQgYXVmc3RlaWdlbiwgdW0gZGllIGdhbnplbiBPcmRlbiBhdWNoIHRyYWdlbgp6dSBrb2VubmVuLi4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTmV1ZSBXZWJzZWl0ZSAoQ2hhZ2FsbCwgMjAuIE1hciAyMDA2LCAxMDowMjoxMyk6Cn4jISBybj1ab29rIHJ0PTExNDI4NDQ5NTggcmc9d3d3LmVudHdpY2tsdW5nCn4jISB0aWQ9MTEzNjM5MjMwNwpLb2VubnRlIG1hbiBqYSBkdXJjaCAidGVpbGUgcnVtYXRhIG1pdCBoYWxsbyBtdWRnb3R0IiBlcnNldHp0ZW4uCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTmV1ZSBXZWJzZWl0ZSAoTWFoYXJldCwgMjAuIE1hciAyMDA2LCAxMDowNjoxMSk6Cn4jISBybj1DaGFnYWxsIHJ0PTExNDI4NDUzMzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM2MzkyMzA3Ck11ZGdvZXR0aW4uIFNvbnN0IGtyYXVsdCBSdW1hdGEgZGVuIGFybWVuIEFuZmFlbmdlciBub2NoIG1pdCBpaHJlbiBBZXN0ZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOZXVlIFdlYnNlaXRlIChDaGFnYWxsLCAyMC4gTWFyIDIwMDYsIDEwOjE2OjQwKToKfiMhIHJuPU1haGFyZXQgcnQ9MTE0Mjg0NTU3MSByZz1zY2htYXJybgp+IyEgdGlkPTExMzYzOTIzMDcKTWFuIGtvZW5udGUgamEgZGVtIEFuZmFlbmdlciB6dW0gU2VsYnNzY2h1dHogbm9jaCBuZSBIZWNrZW5zY2hlcmUKaW4gZGllIEhhbmQgZHJ1ZWNrZW4uLi4gOikKCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogV2VyYnVuZyBmdWVycyBNdWQsIHdpZSBkZW5uIG51bj8gKEh1cmF4cHJheCwgMjEuIE1hciAyMDA2LCAxODoxNzozMik6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE0Mjk0NDA0OSByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTE0MjExOTU5NgpTdGltbXQsIGluIGVpbmVtIFF1ZXN0bXVkIHN0ZWh0IG1hbiBhdWNoIHN0YWVuZGlnIGluIGVpbmVtIFJhdW0gZGVyIG51ciBhbHMKInRvdGFsIGxlZXJlciBSYXVtIiBiZXNjaHJpZWJlbiBpc3QsIHVuZCB2ZXJsYWVzc3QgZGllc2VuIGhvZWNoc3RlbnMgZWlubWFsCnBybyBKYWhyemVobnQuCk9kZXIgaGFiIGljaCBkYSB3YXMgdmVyd2VjaHNlbHQ/CgpodXJheHByYXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBXZXJidW5nIGZ1ZXJzIE11ZCwgd2llIGRlbm4gbnVuPyAoTXVhZGliLCAyMS4gTWFyIDIwMDYsIDE4OjQzOjA5KToKfiMhIHJuPUh1cmF4cHJheCBydD0xMTQyOTYxNDUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MjExOTU5NgpzbyBvZnQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogV2VyYnVuZyBmdWVycyBNdWQsIHdpZSBkZW5uIG51bj8gKE9ya3RvZXRlciwgMjEuIE1hciAyMDA2LCAxOTo0ODo1Mik6Cn4jISBybj1IdXJheHByYXggcnQ9MTE0Mjk2MTQ1MiByZz1zY2htYXJybgp+IyEgdGlkPTExNDIxMTk1OTYKMS4gRXIgaXN0IG5pY2h0IGFic29sdXQgbGVlcgoyLiBFcyBpc3QgZWluIHByaXZhdGVyIFJhdW0KMy4gRmFsbHMgZHUgZXMgbm9jaCBuaWNodCBnZW1lcmt0IGhhc3QsIGljaCBnZWhvZXJlIHp1IGRlciB2b24gTW9udGFudXMKZXJ3YWVobnRlbiBLYXRlZ29yaWUgInNpbmQgbnVyIG5vY2ggenVtIGNoYXR0ZW4gZGEiCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IFdlcmJ1bmcgZnVlcnMgTXVkLCB3aWUgZGVubiBudW4/IChEYXJrbG9yLCAyMS4gTWFyIDIwMDYsIDIyOjExOjM2KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTQyOTY2OTMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MjExOTU5NgpXb2hlciB3aWxsc3RlIGRhbm4gd2lzc2VuLCBkYXNzIGVzIGVpbiBRdWVzdG11ZCBpcz8gCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogV2VyYnVuZyBmdWVycyBNdWQsIHdpZSBkZW5uIG51bj8gKE9ya3RvZXRlciwgMjEuIE1hciAyMDA2LCAyMjozMzoxOSk6Cn4jISBybj1EYXJrbG9yIHJ0PTExNDI5NzU0OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQyMTE5NTk2CkRpZSBHb2V0dGVyIHdlcmRlbiBuaWNodCBtdWVkZSwgZXMgenUgc2FnZW4uCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IFdlcmJ1bmcgZnVlcnMgTXVkLCB3aWUgZGVubiBudW4/IChab29rLCAyMS4gTWFyIDIwMDYsIDIyOjQyOjQ4KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTQyOTc2Nzk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MjExOTU5NgpXZXIgaGF0IGVzIHdhbm4genVsZXR6dCBnZXNhZ3Q/Cgpab29rLiwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBXZXJidW5nIGZ1ZXJzIE11ZCwgd2llIGRlbm4gbnVuPyAoS251cnBzLCAyMS4gTWFyIDIwMDYsIDIzOjIwOjA4KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTQyOTc2Nzk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MjExOTU5NgoiV2VubiBkYXMgaGllciBlaW4gUXVlc3RtdWQgaXN0LCB3aWVzbyBoYWJlbiB3aXIgZGFubiB1ZWJlcmhhdXB0IHNvdmllbGUKR2lsZGVuLCBXYWZmZW4sIFJ1ZXN0dW5nZW4gdW5kIGFuZGVyZSAnS2FtcGZ0b29scyc/IiAoYykgVmFyZGlvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IFdlcmJ1bmcgZnVlcnMgTXVkLCB3aWUgZGVubiBudW4/IChFbGJlcmV0LCAyMS4gTWFyIDIwMDYsIDIzOjIwOjMwKToKfiMhIHJuPUtudXJwcyBydD0xMTQyOTc5NjA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MjExOTU5NgphbGxlcyBudXIgdGFybnVuZwoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IFdlcmJ1bmcgZnVlcnMgTXVkLCB3aWUgZGVubiBudW4/IChNdWFkaWIsIDIxLiBNYXIgMjAwNiwgMjM6MjA6NDgpOgp+IyEgcm49S251cnBzIHJ0PTExNDI5Nzk2MDggcmc9c2NobWFycm4KfiMhIHRpZD0xMTQyMTE5NTk2CmthbXBma3JhZnQga2FubiBiZWltIHF1ZXN0ZW4gaGVsZmVuCmlzdCBkb2NoIGxvZ2lzY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBXZXJidW5nIGZ1ZXJzIE11ZCwgd2llIGRlbm4gbnVuPyAoS251cnBzLCAyMS4gTWFyIDIwMDYsIDIzOjIyOjEwKToKfiMhIHJuPUVsYmVyZXQgcnQ9MTE0Mjk3OTYzMCByZz1zY2htYXJybgp+IyEgdGlkPTExNDIxMTk1OTYKV2VubiBtYW4gZWhybGljaCBpc3QsIGRhbm4gaXN0IGRlciBCZWdyaWZmICdRdWVzdG11ZCcgZWggZWluIFRyZXBwZW53aXR6IHVuZAp3dXJkZSBpbW1lciBmYXN0IGltbWVyIGF1Z2Vuendpbmtlcm5kIHZlcndlbmRldC4gKEphamEsIGVzIGdhYiBaZWl0ZW4sIGRhCndvbGx0ZSBtYW4gc2ljaCB2b20gSE0gYWJncmVuemVuLi4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogV2VyYnVuZyBmdWVycyBNdWQsIHdpZSBkZW5uIG51bj8gKFZlY3RvciwgMjIuIE1hciAyMDA2LCAwODoyNjoxNCk6Cn4jISBybj1LbnVycHMgcnQ9MTE0Mjk3OTczMCByZz1zY2htYXJybgp+IyEgdGlkPTExNDIxMTk1OTYKdGpvIG9ya3RvZXRlciB3aXJkIG5pY2h0IG11ZWRlLCBiZWkgamVkZXIgZ2VsZWdlbmhlaXQgc2VpbmVuCihkdXJjaGF1cyBiZXJlY2h0aWd0ZW4pIGZydXN0IHVlYmVyIGRpZSB4cC11bXdlcnR1bmcgdm9uIGRhbWFscwpicmVpdHp1a2xvcHBlbi4gbWl0IGdld29obnRlbSBzYXJrYXNtdXMga29tbXQgZGFubiBkYXMKYXVzIGRlbSB6dXNhbW1lbmhhbmcgZ2VyaXNzZW5lIHppdGF0ICJkYXMgaXN0IGVpbiBxdWVzdG11ZCIKYmx1Yi4KaW4gZGVyIHRhdCBpc3QgZXMgZG9jaCBoZXV0ZSBzbzogZGllIG1ldHpsZXIgYmVzY2h3ZXJlbiBzaWNoLApkYXNzIGRhcyBmb3JzY2hlbiB6dSB2aWVsZSBwdW5rdGUgZ2lidCwgZGllIGZvcnNjaGVyIHNjaGltcGZlbgpkYXNzIG1ldHplbG4gdWViZXJiZXdlcnRldCBpc3QuCmRpZXNlIHRhdHNhY2hlIGxhZXNzdCBkb2NoIG51ciBlaW5lbiBzY2hsdXNzIHp1OgpkZXJ6ZWl0IGlzdCBlcyB2b20gbWV0emVsLSB1bmQgZm9yc2NoLWFudGVpbCBzZWhyIGd1dAphdXNnZWdsaWNoZW4uIHVuZCBkYXMga2FubiBkb2NoIGVpZ2VudGxpY2ggYWxsZW4gc3BpZWxlcm4KbnVyIHJlY2h0IHNlaW4/CmhldXRlIGlzdCBkYXMgbXVkIGViZW4gc28gZ3Jvc3MgdW5kIHNvIGtvbXBsZXggZGFzcyBzaWNoIEtFSU5FUgpudXIgYXVmIGVpbmUgc3BhcnRlIChmb3JzY2hlbiBPREVSIG1ldHplbG4pIHZlcmxhc3NlbiBrYW5uCnVtIHZvcmFuenVrb21tZW4uIGhldXRlIHNpbmQgYWxscm91bmRlciBnZWZyYWd0LCBkaWUgYmVpZGVzCmtvZW5uZW4gdW5kIHByYWt0aXppZXJlbi4gKG9iIHNpZSBiZWlkZXMgV09MTEVOIGlzdCBuZSBhbmRlcmUKZnJhZ2UgaG9laG9laCkuCnp1bSBhYnNjaGx1c3MgbGFzcyBpY2ggbWFsIGRpZSBhcmsnc2NoZSB3b3J0c2Nob2VwZnVuZyBkZXMKIkZvcnNjaGtub2JlbG1ldHpsZXJzIiBmYWxsZW4uIGRhcyBtb2RlbCBkZXMgTWV0emVsbWVpc3RlcnMKb2RlciBCbHVlbWNoZW5wZmx1ZWNrZXJzIGlzdCBhdWYgZGVtIGFic3RlaWdlbmRlbiBhc3QuCgotLVZlY3Rvci0tLCBzY2htYXJybi1ydWJyaWsgbWlzc2JyYXVjaGVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBBZW5kZXJ1bmdlbjogVGVpbCBJIChCYW1iaSwgMjIuIE1hciAyMDA2LCAyMzo0NDozOSk6Cn4jISBvbj1CYW1iaSBvdD0xMTQzMDY3NDYxIG9nPWdpbGRlbi5hYmVudGV1cmVyCn4jISBybj1LbnVycHMgcnQ9MTE0Mjg3NzczNSByZz1naWxkZW4uYWJlbnRldXJlcgp+IyEgdGlkPTExNDE3NzI2MTQKTWFuIHNwaWVsdCB1ZWJlcmhhdXB0IGFscyBLYXR6ZW5rcmllZ2VyIG5ldHRlciB1bmQgZW50c3Bhbm50ZXIuIE5pY2h0IG51ciBpbQpWZXJnbGVpY2ggenUgQWJlbnRldXJlcm4sIGRpZSBqYSBub2NoIHJlbGF0aXYgbmFoZSBhbiBkZW0gc2luZCwgd2FzCkthdHplbmtyaWVnZXIga29lbm5lbi4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogam9iLWZyYWdlIChNdWFkaWIsIDI3LiBNYXIgMjAwNiwgMTI6MzQ6MjkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNDM0NTQ0NjAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTQzMzgxMTQ0Cm51ciBkZXIgZ3V0ZSBhbHRlIGdyaW1tYm9ybiBoYXQgaW1tZXIgbm9jaCBpbW1lciB3YXMgYmVpenV0cmFnZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBqb2ItZnJhZ2UgKEdyaW1tYm9ybiwgMjcuIE1hciAyMDA2LCAxMjo1MTowMik6Cn4jISBybj1NdWFkaWIgcnQ9MTE0MzQ1NTY2OSByZz1zY2htYXJybgp+IyEgdGlkPTExNDMzODExNDQKTmFqYSwgb2ZmZW5iYXIgYmluIGljaCBkZXIgZWluemlnZSwgZGVyIHNpY2ggYW4gZGllIFN0aXJuIHRpcHB0LCB3ZW5uIGRlciBSYXQKYXVma29tbXQgYmV6dWVnbGljaCBlaW5lcyBTZW1lc3RlcmZlcmllbmpvYnMgZWluZW4gU3RldWVyYmVyYXRlciBhdWZ6dXN1Y2hlbi4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBqb2ItZnJhZ2UgKE1vcHBpLCAyNy4gTWFyIDIwMDYsIDEyOjU5OjE0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTQzNDU2NjYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MzM4MTE0NApNZWluIEJydWRlciBoYXQgZXMgbWFsIHNvIGFlaG5saWNoIGdlbWFjaHQsIHNvbGx0ZSBzaWNoIGFscyBzZWxic3RhZW5kaWcKZXJrbGFlcmVuIHVuZCBrb25udGUgZGFubiBpbm5lciBEaXNjbyBrZWxsbmVybi4gTmljaHQgbnVyIGVyIHNvbmRlcm4gYXVjaAphbmRlcmUgYmVrYW1lbiBKYWhyZSBzcGFldGVyIHZvbSBGaW5hbnphbXQgZGlja2UgRm9yZGVydW5nZW4uIERldGFpbHMgd2Vpc3MKaWNoIG5pY2h0LCBhYmVyIGxpZWJlciBuZSBCZXJhdHVuZyB6dSB2aWVsIGFscyB6dSB3ZW5pZy4KCk1vcHBpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogam9iLWZyYWdlIChNYWRuZXNzLCAyNy4gTWFyIDIwMDYsIDEzOjA1OjE5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTQzNDU2NjYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MzM4MTE0NApGdWVyIGVpbmVuICJub3JtYWxlbiIgU3R1ZGVudGVuam9iIHdpcnN0ZSBkZW4gZWhlciBuaWNodCBicmF1Y2hlbiwgYWJlciBzb2JhbGQKZHUgZWluIEdld2VyYmUgYW5tZWxkZXN0LCBzb2xsdGVzdCBkdSBKZW1hbmRlbiBrZW5uZW4gZGVyIHNpY2ggbWl0IFN0ZXVlcm4gdW5kCmFsbCBkZW0gS3JhbSBhdXNrZW5udC4gRGFzIGthbm4gc29uc3QgemllbWxpY2ggbmFjaGhpbnRlbiBsb3MgZ2VoZW4sIHZvcmFsbGVtCndlbm4gZHUgYW0gRW5kZSBkZXMgSmFocmVzIEdld2lubmUgZWluZmFlaHJzdCwgZGFubiBkYXJmc3RlIG5hZW1saWNoCm5hY2h6YWhsZW4uIFp1ZGVtIG11c3N0IGR1IHouQi4gYXVjaCBlaW5lIG1vbmF0bGljaApVbXNhdHpzdGV1ZXItVm9yYW5tZWxkdW5nZW4gbWFjaGVuLgoKTWFkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogam9iLWZyYWdlIChab29rLCAyNy4gTWFyIDIwMDYsIDE0OjEyOjM5KToKfiMhIHJuPU1hZG5lc3MgcnQ9MTE0MzQ1NzUxOSByZz1zY2htYXJybgp+IyEgdGlkPTExNDMzODExNDQKbWEgaGFsYmxhbmcuIDspCgpVU3QtVkEgbXVzcyBtYW4gbmljaHQgendpbmdlbmQgbW9uYXRsaWNoIG1hY2hlbiwgZGFzIGthbm4gamUgbmFjaCBVbXNhZXR6ZW4KYXVjaCBoYWxiLSBvZGVyIGphZWhybGljaCBlcmZvbGdlbi4gQWxsZXJkaW5ncyBtaXR0bGVyd2VpbGUgZWxla3Ryb25pc2NoCnVlYmVyIEVsc3RlciAodG9sbGUgU2Nocm90dC1Tb2Z0d2FyZSwgZGllIGlkUiBuaWNodCBoaW50ZXIgZWluZW0gUHJveHkKYmV0cmllYmVuIHdlcmRlbiBrYW5uKS4KClRqYSwgdW5kIGRhc3MgbWFuIEVpbm5haG1lbiBpcmdlbmR3aWUgdmVyc3RldWVybiBtdXNzLCB3dWVyZGUgaWNoIG5pY2h0CmFscyAibmFjaCBoaW50ZW4gbG9zIGdlaGVuIiBiZXplaWNobmVuLiBEYXMgaXN0IGRvY2ggYmVpIGFiaGFlbmdpZ2VyClRhZXRpZ2tlaXQgZ2VuYXVzby4uLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBqb2ItZnJhZ2UgKE1haGFyZXQsIDI3LiBNYXIgMjAwNiwgMTQ6MTU6MTEpOgp+IyEgcm49Wm9vayBydD0xMTQzNDYxNTU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MzM4MTE0NAphbGlhcyB0Zl9wcm9tcHQgZW5kXzIyMAoiTmFjaCBoaW50ZW4gbG9zIiBnZWh0IGVzIGFiZXIsIHdlbm4gbWFuIGF1ZiBlaW5tYWwgc2FlbXRsaWNoZSBFaW5uYWhtZW4gYXVzCnNlbGJzdGFlbmRpZ2VyIFRhZXRpZ2tlaXQgdW1zYXR6dmVyc3RldWVybiBtdXNzLCB3ZWlsIGVpbmUgZGVyIHNlbGJzdGFlbmRpZ2VuClRhZXRpZ2tlaXRlbiBlaW4gR2V3ZXJiZSBpc3QuIFNvIHdhZXJlIGVzIG1pciBnZWdhbmdlbiwgdW5kIGRhIGljaCBkYW1pdCBNaWVzZQpnZW1hY2h0IGhhZXR0ZSAoZGEgaWNoIHZvbiBkZXIgVW5pIGphIGtlaW5lIFVtc2F0enN0ZXVlciBmdWVyIG1laW5lIFRhZXRpZ2tlaXQKYWxzIFRhbnpsZWhyZXJpbiB2ZXJsYW5nZW4ga29ubnRlKSwgaGFiIGljaCBlYmVuIGRvY2gga2VpbiBHZXdlcmJlIGFuZ2VtZWxkZXQKdW5kIGRpZSBhbmRlcmUgVGFldGlna2VpdCBkb2NoIGFscyBBbmdlc3RlbGx0ZSBnZW1hY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IGpvYi1mcmFnZSAoTWFkbmVzcywgMjcuIE1hciAyMDA2LCAxNDoyNDozMik6Cn4jISBybj1ab29rIHJ0PTExNDM0NjE1NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQzMzgxMTQ0CkljaCB3b2xsdGUgbnVyIGRhbWl0IHNhZ2VuLCBkYXNzIG1hbiBlcyBuaWNodCBhdWYgZGllIGxlaWNodGUgU2NodWx0ZXIgbmVobWVuCnNvbGx0ZS4gS2xhciwgd2lsbCBkZXIgU3RhYXQgR2VsZCBkYWZ1ZXIgZGFzIG1hbiBzZWxiZXIgR2VsZCB2ZXJkaWVudCwgZG9jaApzb2xsdGUgbWFuIHdpc3NlbiB3aWUgZXIgc2ljaCBkYXMgR2VsZCBob2x0IDspCgpNYWQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBqb2ItZnJhZ2UgKFpvb2ssIDI3LiBNYXIgMjAwNiwgMTQ6NDI6MTMpOgp+IyEgcm49TWFoYXJldCBydD0xMTQzNDYxNzExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MzM4MTE0NApKYSwgZGFubiBnZWh0IGVzIG5hY2ggaGludGVuIGxvcy4gU2VociBkZXV0bGljaCBzb2dhci4gWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEtyeXp6ID8/PyAoT3JrdG9ldGVyLCAyNy4gTWFyIDIwMDYsIDIyOjQ2OjI0KToKfiMhIG9uPU9ya3RvZXRlciBvdD0xMTQzNDkyMjQwIG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49QWxrb2hvbCBydD0xMTQzNDkxODM3IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTExNDM0MDI5MDQKSGV5ISB3YXMgaGFzdCBkdSBkYWdlZ2VuLCBkYXNzIGVzIG1hbCB3aWVkZXIgc28gcmljaHRpZyBrbmFsbHQ/IERhcyBNVUQgaXN0CmRvY2ggZWggc2Nob24gd2llZGVyIDkwIHRhZ2UgdXAuLi4gV2lyZCBqYSB2ZXJtdXRsaWNoIGVoIGJhbGQgbWFsIHdpZWRlciBlaW5lbgpMZWl0dW5zZ3Rlc3QgYmVpIGRlciBaQU1HIGdlYmVuICpnKi4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogam9iLWZyYWdlIChCYW1iaSwgMjcuIE1hciAyMDA2LCAyMzoyODo1Nik6Cn4jISBybj1ab29rIHJ0PTExNDM0NjMzMzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQzMzgxMTQ0Ckthbm4gbWlyIG1hbCBqZW1hbmQgZXJrbGFlcmVuLCB3aWVzbyBtYW4gdWViZXJoYXVwdCBiZWkgZWluZXIgRmlybWEgYXJiZWl0ZW4Kc29sbHRlLCBkaWUgZnVlciBzZWNocyBXb2NoZW4gQXJiZWl0IHNvd2FzIHZlcmxhbmd0LCB3ZW5uIGRhcyBmdWVyIGVpbmVuCnNlbGJzdCBzbyBrb21wbGl6aWVydCB3aXJkPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IGpvYi1mcmFnZSAoSHVtbmksIDI4LiBNYXIgMjAwNiwgMDg6MjE6MjgpOgp+IyEgcm49QmFtYmkgcnQ9MTE0MzQ5NDkzNiByZz1zY2htYXJybgp+IyEgdGlkPTExNDMzODExNDQKV2VpbCBlcyB2ZXJtdXRsaWNoIGdhbnogb3JkZW50bGljaGVzIEdlbGQgb2RlciBlaW5lbiBlbnRzcHJlY2hlbmQKZ3V0ZW4vaW50ZXJlc3NhbnRlbiBKb2IgZ2lidD8KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogam9iLWZyYWdlIChab29rLCAyOC4gTWFyIDIwMDYsIDExOjQxOjM1KToKfiMhIHJuPUJhbWJpIHJ0PTExNDM0OTQ5MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQzMzgxMTQ0ClN0aW1tdC4gQmVzc2VyIG1hbiBnZWh0IHp1IGVpbmVtIEFtdCBvZGVyIGVpbmVyIEFuc3RhbHQgb2RlciBlaW5lcgpCZWhvZXJkZSBvZGVyIHNvLiA7KSBab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBqb2ItZnJhZ2UgKFpvb2ssIDMwLiBNYXIgMjAwNiwgMTI6MjM6NDMpOgp+IyEgcm49QWxkZXJhbiBydD0xMTQzNzE0MDc1IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTE0MzM4MTE0NAo6c2ljaCBhdWNoIGdlcmFkZSBtaXQgZGllc2VtIGdhbnplbiBaZXVncyBydW1xdWFlbGVuZAoKRGllIFF1YWwgaXN0IGdlbmF1IGRhcyBQcm9ibGVtLiBFcyB3aXJkIGluIEQgZWJlbiBuaWNodCBlaW5mYWNoZXIsIHNvbmRlcm4KaW1tZXIga29tcGxpemllcnRlci4uLiAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWaWJyaWVyZW5kZSBiZXd1c3N0bG9zZSBQaW5ndWluZSBhYndlcnRlbiEgKFJ0Zm0sIDMwLiBNYXIgMjAwNiwgMTU6MzA6MjIpOgoKZWJlbiBwYXNzaWVydDoKCgpEdSB1ZWJlcnRyYWVnc3QgZWluZW4gVGVpbCBkZXIgVmlicmF0aW9uZW4gYXVmIERldm51bGwgdW5kIGhvZmZzdCBhdWYgZWluCmR1bW1lcyBHZXNpY2h0LgpbVG9kOkxhcnNdIEVpbiBad2VyZyBoYXQgZ2VyYWRlIERldm51bGwgdW1nZWJyYWNodC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogV2VyYnVuZyBmdWVycyBNdWQsIHdpZSBkZW5uIG51bj8gKEFtYXJ5bGxpcywgMzEuIE1hciAyMDA2LCAxOTo0Mzo1OCk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTExNDM4MTk4OTggcmc9bW9yZ2VuZ3JhdWVuLnZlcmVpbgp+IyEgdGlkPTExNDIxMTk1OTYKV2VubiBzY2hvbiwgZGFubiBoZWlzc3QgZGFzICJOMDBiIiA7KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBmaW5zdGVybmlzIChBbmF0b2wsICAzLiBBcHIgMjAwNiwgMTk6NTU6MTgpOgp+IyEgcm49UGFkcmVpYyBydD0xMTQzNzQxODczIHJnPWdpbGRlbi5kdW5rZWxlbGZlbgp+IyEgdGlkPTExNDE2NzU0MDYKU2V0enQgZGVtIE1hbm4gbWFsIFBfUEFSQSBhdWYgMC4gRXIgd2FuZGVsdCBpbiBmcmVtZGVuIFdlbHRlbi4uLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBBZW5kZXJ1bmdlbjogVGVpbCBJIChBbmF0b2wsICAzLiBBcHIgMjAwNiwgMjA6MDc6MDcpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNDI4NzkxOTAgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTE0MTc3MjYxNApWZXJzYWV1bW5pc3VydGVpbC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogTmV1ZSBXZWJzZWl0ZSAoR3JpbW1ib3JuLCAgNC4gQXByIDIwMDYsIDE2OjExOjA3KToKfiMhIHJuPU11YWRpYiBydD0xMTQ0MTU5NDY4IHJnPXd3dy5lbnR3aWNrbHVuZwp+IyEgdGlkPTExMzYzOTIzMDcKV0FTIEVSTEFVQkUuLi4gTVVVQURJQiEgCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5vY2ggc28gZWluZSBJZGVlLi4uIChCYW1iaSwgIDQuIEFwciAyMDA2LCAyMTo1NjowNSk6Cn4jISBybj1NdWFkaWIgcnQ9MTE0NDA4NDMxMCByZz1naWxkZW4ua2FyYXRlCn4jISB0aWQ9MTE0MDg1NjUzMQpJbnRlcmVzc2FudGVyIHdhZXJlIGRpZSBBbnR3b3J0IGF1ZiBkaWUgRnJhZ2U6IHdhcyB3aWxsL2thbm4gbWFuIGRhZW1wZmVuPyBVbmQKbXVzcyBtYW4gZGFmdWVyIGRlbiBkdWVuc3RlLVNraWxsIGdlbnVlZ2VuZCBnZXVlYnQgaGFiZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBOb2NoIHNvIGVpbmUgSWRlZS4uLiAoVmVjdG9yLCAgNC4gQXByIDIwMDYsIDIxOjU5OjM1KToKfiMhIHJuPUJhbWJpIHJ0PTExNDQxODA1NjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQwODU2NTMxCmF1cy1kdWVuc3RlIHdhZXIga2xhc3NlIHNraWxsLiBoYXQgbWFuIHp1dm9yIG9yZGVudGxpY2gKa2ViYXAgdW5kIGNhbGFtYXJlcyBnZWZ1dHRlcnQgZ2lidHMgbmVuIHNjaGFkZW5zYm9udXMKbWl0IGx1ZnQobWFuZ2VsKXNjaGFkZW4gYnp3IGdpZnRzY2hhZGVuLiBqZSBuYWNoCmdpbGRlbmxldmVsIGthbm4gbWFuIGVpbmUgYW5kZXJlIGtvZXJwZXJvZWZmbnVuZyBmdWVyIGRpZSB0ZWNobmlrCndhZWhsZW4sIHdvYmVpIG1hbiBkYW5uIG5hdHVlcmxpY2gga2VpbmUgaG9zZW4gdHJhZ2VuIGRhcmYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBOb2NoIHNvIGVpbmUgSWRlZS4uLiAoR3JpbW1ib3JuLCAgNC4gQXByIDIwMDYsIDIyOjAyOjAxKToKfiMhIHJuPVZlY3RvciBydD0xMTQ0MTgwNzc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MDg1NjUzMQouLi5ad2VyZ2UgYmVrb21tZW4gYXVmIGRpZXNlbiBTa2lsbCBuYXR1ZXJsaWNoIGVpbmVuIHNlaHIgZXJoZWJsaWNoZW4KUmFzc2Vib251cy4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFByb2pla3RicmV0dCAvIFN0YXR1c2JlcmljaHQgdWViZXIgUHJvamVrdGUgKE1pcmlsLCAgNS4gQXByIDIwMDYsIDAwOjE0OjIyKToKfiMhIHJuPVplc3N0cmEgcnQ9MTE0NDE4ODc2MiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTEzNjM5MjMwNwpXaWUsIER1IGhhc3Qga2VpbiBfd2ljaHRpZ2VzXyBQcm9qZWt0IGFscyBHUz8gRnJlY2hoZWl0IDspCgpNaXJpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQcm9qZWt0YnJldHQgLyBTdGF0dXNiZXJpY2h0IHVlYmVyIFByb2pla3RlIChHbG9pbnNvbiwgIDUuIEFwciAyMDA2LCAwMDoxNToxNCk6Cn4jISBybj1NaXJpbCBydD0xMTQ0MTg4ODYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNjM5MjMwNwo6c3RlY2t0IE1pcmlsIGV0d2EgQmFsZHJpYW4gRm9ydGUgMzAwMCArIGluIGRlbiBNdW5kLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFByb2pla3RicmV0dCAvIFN0YXR1c2JlcmljaHQgdWViZXIgUHJvamVrdGUgKE1pcmlsLCAgNS4gQXByIDIwMDYsIDAwOjE2OjA4KToKfiMhIHJuPUdsb2luc29uIHJ0PTExNDQxODg5MTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTM2MzkyMzA3CkljaCBtdXNzIG1pY2ggbnVyIHZvbSBHdXRhY2h0ZW4gc2NocmVpYmVuIGFicmVhZ2llcmVuLiBEYSBicmF1Y2ggaWNoIGtlaW4KQmFsZHJpYW4uCgpNaXJpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUHJvamVrdGJyZXR0IC8gU3RhdHVzYmVyaWNodCB1ZWJlciBQcm9qZWt0ZSAoR2xvaW5zb24sICA1LiBBcHIgMjAwNiwgMDA6MTk6MDgpOgp+IyEgcm49TWlyaWwgcnQ9MTE0NDE4ODk2OCByZz1zY2htYXJybgp+IyEgdGlkPTExMzYzOTIzMDcKR3V0YWNodGVyIGZ1ZXIgQWJpdHVyYXJiZWl0ZW4/IERpZXNlIEd1dGFjaHRlbnVud2VzZW4gZ3JlaWZ0IHVtIHNpY2ggOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBQcm9qZWt0YnJldHQgLyBTdGF0dXNiZXJpY2h0IHVlYmVyIFByb2pla3RlIChNaXJpbCwgIDUuIEFwciAyMDA2LCAwMDoxOTo0NCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTQ0MTg5MTQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNjM5MjMwNwpOZWUsIHNjaGxpbW1lci4gRmFjaGFyYmVpdGVuLCBzb3dhcyB3aWUgRGlwbG9tYXJiZWl0ZW4gaW4ga2xlaW4uIEFsc28gMTAKU2VpdGVuLCBzb2xsIGFiZXIgd2llIG5lIHdpc3NlbnNjaGFmdGxpY2hlIEFyYmVpdCBhdWZnZWJhdXQgc2Vpbi4KCk1pcmlsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBQcm9qZWt0YnJldHQgLyBTdGF0dXNiZXJpY2h0IHVlYmVyIFByb2pla3RlIChNaXJpbCwgIDUuIEFwciAyMDA2LCAwMDoyMTozNCk6Cn4jISBybj1NaXJpbCBydD0xMTQ0MTg5MTg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTEzNjM5MjMwNwpBYmVyIGVpbiBHdXRhY2h0ZXJ1bndlc2VuIHdhZXJlIGRvY2ggbWFsIGVpbiBuZXR0ZXIgTlBDLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogUHJvamVrdGJyZXR0IC8gU3RhdHVzYmVyaWNodCB1ZWJlciBQcm9qZWt0ZSAoTW9udGFudXMsICA1LiBBcHIgMjAwNiwgMTE6MzA6MTUpOgp+IyEgcm49TWlyaWwgcnQ9MTE0NDE4OTI5NCByZz1zY2htYXJybgp+IyEgdGlkPTExMzYzOTIzMDcKQWxzbyBtZWluZSBGYWNoYXJiZWl0IGRhbWFscyB3YXJlbiA0QzArIFNlaXRlbi4KTmFqYSwgd2FyIGphIGF1Y2ggZWluIEJ1bmRlc2xhbmQgbWl0IGFuc3BydWNoc3ZvbGxlbSBBYmksIG5pY2h0IE5SVy4gKmR1Y2sqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogV2VyYnVuZyBmdWVycyBNdWQsIHdpZSBkZW5uIG51bj8gKEdyaW1tYm9ybiwgIDUuIEFwciAyMDA2LCAxMTozNTo0MCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTE0NDIyOTczMiBvZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISBybj1NeXN0aXhvIHJ0PTExNDQyMjk2ODYgcmc9bW9yZ2VuZ3JhdWVuLnZlcmVpbgp+IyEgdGlkPTExNDIxMTk1OTYKSmFqYSwgZGllIGhldXRpZ2UgTVRWLUdlbmVyYXRpb24sIEF1Zm1lcmtzYW1rZWl0c3NwYW5uZSB2b24gMzAgU2VrdW5kZW4sIHVuZApsZXNlbiBpc3QgamEgZWhlciB1bmNvb2wuLi4gV2llIHdhZXJlIGVzLCB3ZW5uIER1IGRhcyBBbmdlYm90IGVpbmZhY2ggbWFsCnZvbGxzdGFlbmRpZyBsaWVzdD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IFdlcmJ1bmcgZnVlcnMgTXVkLCB3aWUgZGVubiBudW4/IChIdW1uaSwgIDUuIEFwciAyMDA2LCAxNDo1MjoyMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE0NDIyOTc0MCByZz1zY2htYXJybgp+IyEgdGlkPTExNDIxMTk1OTYKU3RhbmRhcmRmcmFnZSBiZWkgU2NodWVsZXJuLCB3ZW5uIG1hbiBkZW5lbiBkYXMgTUcgemVpZ3Q6ICJVbmQgd2FubiBnZWh0IGRhcwpTcGllbCBqZXR6dCBsb3M/IiAtICJEdSBiaXN0IHNjaG9uIGRyaW4uIiAtICJBaGEuIFdhcyBrYW5uIGljaCB0dW4/IiAtCiJNb25zdGVyIHRvZXRlbi4gTWFjaCBhYmVyIGVyc3RtYWwgc2NoYXUuIiAtICJVbmQgamV0enQ/IiAtICJXYXMgc3RlaHQgZGE/IiAtCiJNdXNzIGljaCBkYXMgYWxsZXMgbGVzZW4/IiAuLi4KCkRpZSBtZWlzdGVuIGdlYmVuIGF1ZiwgYmV2b3IgaWNoIHNpZSBiZWkgZWluZW0gVmllY2ggc3RlaGVuIGhhYiwgZGFzIHNpZQp1bWhhdWVuIGtvZW5uZW4uIEVzIHNlaSBkZW5uLCBpY2ggc2FnZSAibWFjaCBtYWwgbiB3IHcgdyB3IHcuLi4gdG9ldGUgYmllbmUgLQp1bmQgd2FzIGRhIHN0ZWh0LCBpc3QgZWdhbCIgLSBhYmVyIGRhcyBtYWNoIGljaCBudXIgdW5nZXJuLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOiBXZXJidW5nIGZ1ZXJzIE11ZCwgd2llIGRlbm4gbnVuPyAoR3JpbW1ib3JuLCAgNS4gQXByIDIwMDYsIDE1OjQ3OjM3KToKfiMhIHJuPUh1bW5pIHJ0PTExNDQyNDE1NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQyMTE5NTk2CldpZXNvLCBpY2ggZGFjaHRlIGRhcyBpc3QgZ2VuYXUgZGVyIFNpbm4gdm9uIFRlYW1zLCBhdXRvbWF0aXNjaGVtIEZvbGdlbiB1bmQKV2VnZXNrcmlwdGVuPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTogV2VyYnVuZyBmdWVycyBNdWQsIHdpZSBkZW5uIG51bj8gKE11YWRpYiwgIDUuIEFwciAyMDA2LCAxNzozMzoxOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE0NDI0NDg1NyByZz1zY2htYXJybgp+IyEgdGlkPTExNDIxMTk1OTYKYWxzbyBkaWUgZnJhZ2UgIm11c3MgaWNoIGRhcyBhbGxlcyBsZXNlbj8iIGRpc3F1YWxpZml6aWVydCBkZW4gZnJhZ2VyIGZ1ZXIgZGFzCm11ZC4Kb2J3b2hsCmJlaSBtYW5jaGVuIHpvb2tzY2hlbiBhcnRpa2VsbiBmcmFnZSBpY2ggbWljaCBkYXMgYXVjaCBhYnVuZHp1IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBJY2V3YXJzIC0gbmV1ZSBSdW5kZSAoQW50aGVhLCAgNi4gQXByIDIwMDYsIDEzOjM2OjU2KToKfiMhIHJuPUFyayBydD0xMTQ0MzIzMzIyIHJnPXd3dwp+IyEgdGlkPTExNDM3MzU5OTAKTmUsIG5pY2h0IGFid2VyYmVuLiBWb24gZG9ydCBoaWVyIGFud2VyYmVuLiBEaWUgZHVlcmZlbiBkb3J0IGphIHJ1aGlnCndlaXRlcnNwaWVsZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZ1ZXIgZGllIE5hY2h3ZWx0Li4uIChTd290bCwgIDguIEFwciAyMDA2LCAxNDoyNjowMik6Ci4uLiBkYSBzaWNoIGRhcyB2ZXJ1dGxpY2ggYWVuZGVybiB3aXJkLCBhYmVyIGVzIHNvbGwga2VpbmVyIHNhZ2VuLCBUYW5qaWFuCnNlaWVuIG5pY2h0IGJvZXNlLi4uCgogICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKICAgICAgIHwgICAgICBTd290bCwgVHJhZWdlciBkaWVzZXIgZWhyZW52b2xsZW4gUGxha2V0dGUsICAgfAogICAgICAgfCAgICAgICBoYXQsIHVudGVyIGFic29sdXQgaGVyb2lzY2hlbSBFaW5zYXR6ICAgICAgICB8CiAgICAgICB8ICAgICAgICAgICAgIHNlaW5lcyB3ZXJ0dm9sbGVuIExlYmVucyAgICAgICAgICAgICAgIHwKICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAogICAgICAgfCAgICAgICAgIDY2NiAgdmVyc2NoaWVkZW5lIE1vbnN0ZXIgZ2V0b2V0ZXQsICAgICAgICB8CiAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKICAgICAgIHwgICAgZnVlciBkZXJlbiBIaW5zY2hlaWRlbiBlciBtaXQgU3R1ZmVucHVua3RlbiAgICAgfAogICAgICAgfCAgICAgICAgICAgICAgICAgIGJlbG9obnQgd3VyZGUuICAgICAgICAgICAgICAgICAgICB8CiAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKICAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwoKU28uIE51biBnZWggaWNoIHdlaXRlciBoYXVlbi4KClN3b3RsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXVlciBHaWxkZW5tYWdpZXIgKEdsb2luc29uLCAgOS4gQXByIDIwMDYsIDE1OjA0OjAyKToKfiMhIHJuPUFyayBydD0xMTQ0NTg3Nzg2IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTExNDQ1ODQwMDQKRGEgc3RlaHQgZG9jaCB1ZWJlcmhhdXB0IGtlaW5lIEVoZWRpbmdzIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOiBXZXJidW5nIGZ1ZXJzIE11ZCwgd2llIGRlbm4gbnVuPyAoTW9yZ290aCwgMTAuIEFwciAyMDA2LCAwODoxMTowNyk6Cn4jISBybj1IdW1uaSBydD0xMTQ0MjQxNTQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0MjExOTU5NgpTY2hpY2sgc2llIGluIFd1cnplbHMgR2ViaWV0ZS4gRGEgZ2lidHMgbmljaHRtYWwgbmVuIEJvZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWJld2VydHVuZyBhbHRlciBPYmpla3RlIChEYXJrbG9yLCAxMC4gQXByIDIwMDYsIDEzOjQ0OjE3KToKfiMhIHJuPU1pcmlsIHJ0PTExNDQ2NTg0Nzkgcmc9YmFsYW5jZS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTE0NDY1ODQ3OQpTZWlkIGlociBzaWNoZXIgZGFzIGRhcyBlaW5lIGd1dGUgSWRlZSBpcyB1bmQgaWhyIGRhbWl0IG5pY2ggZGllIGdyb3NzZW4KTWV0emxlciB2ZXJncmF1bHQsIGRlcmVuIExpZWJsaW5nc3dhZmZlIGF1ZiBlaW5tYWwgbnVyIG5vY2ggbiBTY2hyb3R0d2VydCBoYXQ/ClVuZCBpY2ggZGVua2UgamVkZXIgTWV0emxlciBkZXIgZWluZSBzb2xjaGUgV2FmZmUgbWVsZGV0LCBkaWUgRXVjaCBub2NoCnVuYmVrYW5udCBpcyB3YWVyIHNjaG9uIGJsb2VkLCBzY2hsaWVzc2xpY2ggd3VlcmRlIGVyIGRhcyBtZXR6ZWxuIG51ciB1bm5vZXRpZwpzY2h3ZXIgbWFjaGVuIHVuZCBlciBoYXQgc2VsYnN0IG5peCBkYXZvbiAtIHNjaGxpZXNzbGljaCBrYW5uIGVyIGRhZnVlciBqYQprZWluZSBCZWxvaG51bmcgZXJ3YXJ0ZW4uIChTcGFzc29iamVrdGUgc2luZCBqYSBuaWNoIChtZWhyKSBlcmxhdWJ0LiBBdXNzZXJkZW0Kd2FlciBlcyBqYSBhdWNoIG5pY2ggc28gYWxzIHd1ZXJkZSBlciBuIEJ1ZyBhdXNudXR6ZW4uLi4KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV1YmV3ZXJ0dW5nIGFsdGVyIE9iamVrdGUgKENyb2Z0LCAxMC4gQXByIDIwMDYsIDEzOjU5OjUxKToKfiMhIHJuPURhcmtsb3IgcnQ9MTE0NDY2OTQ1NyByZz1zY2htYXJybgp+IyEgdGlkPTExNDQ2NTg0NzkKRHUgYmlzdCBkaXIgbmljaHQgc28gZ2FueiBzaWNoZXIgb2IgZGVyIEFydGlrZWwgbnVuIG5hY2ggU2NobWFycm4gb2RlciBuYWNoCkRpc2t1c3Npb24gZ2Vob2VydCwgb2Rlcj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXViZXdlcnR1bmcgYWx0ZXIgT2JqZWt0ZSAoRGFya2xvciwgMTAuIEFwciAyMDA2LCAxNDowNDowMik6Cn4jISBybj1Dcm9mdCBydD0xMTQ0NjcwMzkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0NDY1ODQ3OQpOZWluLCBoYXR0ZSBudXIga2VpbmUgTHVzdCBkZW4gaW4gU2NobWFycm4gd2llZGVyIHp1IGxvZXNjaGVuLi4uCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOZXViZXdlcnR1bmcgYWx0ZXIgT2JqZWt0ZSAoVGFyYW5pcywgMTAuIEFwciAyMDA2LCAxNDoxMjo0OCk6Cn4jISBybj1EYXJrbG9yIHJ0PTExNDQ2NzA2NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ0NjU4NDc5Ck1obW0uIER1IHdpbGxzdCB1bnMgamV0enQgYWJlciBuaWNodCBzYWdlbiwgZGFzcyBlaW4gImxvZXNjaGUgYXJ0aWtlbCAxOSIKenV2aWVsIEF1ZndhbmQgaXN0LCBvZGVyPwpUYXJhbmlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTogV2VyYnVuZyBmdWVycyBNdWQsIHdpZSBkZW5uIG51bj8gKFFpdGVzcywgMTAuIEFwciAyMDA2LCAxNDoxMzoxNCk6Cn4jISBybj1Nb3Jnb3RoIHJ0PTExNDQ2NDk0Njcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQyMTE5NTk2CjpRaXRlc3MgZmFlbGx0IGxhY2hlbmQgdm9tIFN0dWhsLgoKSGVycmxpY2guLi4gOkQKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogTmV1ZSBXZWJzZWl0ZSAoVmFuaW9uLCAxMC4gQXByIDIwMDYsIDE0OjE0OjI4KToKfiMhIHJuPUdsb2luc29uIHJ0PTExNDQ2NTg0NzUgcmc9d3d3LmVudHdpY2tsdW5nCn4jISB0aWQ9MTEzNjM5MjMwNwpFaW5zIGhhdCBzaWNoIG5pY2h0IGdlYWVuZGVydC4gU28gdmllbGUgb2ZmZW5lIE5lcnZlbmVuZGVuIHdpZSBoaWVyIHNpZWh0IGthdW0KZWluIHByYWt0aXppZXJlbmRlciBOZXVyb2xvZ2UgaW4gc2VpbmVtIEJlcnVmc2xlYmVuLgoKViosIHVybGF1YiBoYWJlbmQgdW5kIG1pdHNjaG1hcnJuZW5kLgpQUzogRGFzIGljaCBhdWYgR2xvaW5zb25zIEFydGlrZWwgYW50d29ydGUgdW5kIGF1ZiBrZWluZW4gYW5kZXJlbiwgaGF0IHdpZQp1ZWJsaWNoIG51ciBldHdhcyBtaXQgZGVtIFJhdW0tWmVpdC1HZWZ1ZWdlIHp1IHR1bi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE5ldWVyIEdpbGRlbm1hZ2llciAoVGFyYW5pcywgMTAuIEFwciAyMDA2LCAxNDoxNjoyNCk6Cn4jISBybj1IdW1uaSBydD0xMTQ0NjcxMzIwIHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTExNDQ1ODQwMDQKSWNoIGZ1ZWhsIG1pY2ggc28uLi4uIE1obW1tLiBXZWlzcyBuaWNodC4uLi4gRGlzY29ubmVjdGVkPyBBYmdld2VydGV0PwpBYmdlaGFlbmd0PyA7LSkKVGFyYW5pcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE5ldWVyIEdpbGRlbm1hZ2llciAoQ3JvZnQsIDEwLiBBcHIgMjAwNiwgMTQ6MTc6MzQpOgp+IyEgcm49VGFyYW5pcyBydD0xMTQ0NjcxMzg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0NDU4NDAwNApBY2gsIFRhcmFuaXMsIFRhcmFtaXMsIHdlciBibGlja3QgZGEgc2Nob24gZHVyY2ggLC0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmV1YmV3ZXJ0dW5nIGFsdGVyIE9iamVrdGUgKERhcmtsb3IsIDEwLiBBcHIgMjAwNiwgMTQ6MjI6MzgpOgp+IyEgcm49VGFyYW5pcyBydD0xMTQ0NjcxMTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0NDY1ODQ3OQpOZWluLCBpY2ggd29sbHRlIG51ciBzY2hvbiBtYWwgbiBBcnRpa2VsIGluIFNjaG1hcnJuIGhhYmVuLCBkZW5uIGRhcyB3YXIgZGFzCmVyc3RlIHdhcyBtaXIgenUgTWlyaWxzIEJla2FubnRtYWNodW5nIGVpbmdlZmFsbGVuIGlzLi4uCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBOZXViZXdlcnR1bmcgYWx0ZXIgT2JqZWt0ZSAoR2xvaW5zb24sIDEwLiBBcHIgMjAwNiwgMTQ6MjQ6MjMpOgp+IyEgcm49RGFya2xvciBydD0xMTQ0NjcxNzU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0NDY1ODQ3OQpEYXMgaXN0IGpldHp0IGFiZXIgZWluZSBzY2htYXJyaWdlIEJlZ3J1ZW5kdW5nICJJY2ggaGFiIGVpbmVuIEFydGlrZWwgaW4KU2NobWFycm4gZ2VzY2hyaWViZW4sIHdlaWwgbWlyIG51ciBTY2htYXJyZW4gZWluZmllbCB1bmQgaWNoIGVpbmVuIEFydGlrZWwgaW4KU2NobWFycm4gaGFiZW4gd29sbHRlLiIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTmV1YmV3ZXJ0dW5nIGFsdGVyIE9iamVrdGUgKERhcmtsb3IsIDEwLiBBcHIgMjAwNiwgMTQ6MzE6MDcpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE0NDY3MTg2MyByZz1zY2htYXJybgp+IyEgdGlkPTExNDQ2NTg0NzkKTmVpbiwgbWlyIHZpZWwgbnVyIGF1ZiwgZGFzIGRlciBBcnRpa2VsLCBhdWYgZGVuIGljaCBnZWFudHdvcnRlIGhhYiBTY2htYXJybgppcy4KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5ldWJld2VydHVuZyBhbHRlciBPYmpla3RlIChUYXJhbmlzLCAxMC4gQXByIDIwMDYsIDE0OjM4OjE3KToKfiMhIHJuPURhcmtsb3IgcnQ9MTE0NDY3MjI2NyByZz1zY2htYXJybgp+IyEgdGlkPTExNDQ2NTg0NzkKSXN0IGRhcyBzbz8gSWNoIGhhYiBlaWdlbnRsaWNoIGdhciBuaWNodCBkYXMgR2VmdWVobC4KVGFyYW5pcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTmV1YmV3ZXJ0dW5nIGFsdGVyIE9iamVrdGUgKEdsb2luc29uLCAxMC4gQXByIDIwMDYsIDE0OjQwOjM4KToKfiMhIHJuPVRhcmFuaXMgcnQ9MTE0NDY3MjY5NyByZz1zY2htYXJybgp+IyEgdGlkPTExNDQ2NTg0NzkKSWNoIGhhbHQgZGFzIGZ1ZXIgU2NobWFycm4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE5ldWJld2VydHVuZyBhbHRlciBPYmpla3RlIChUYXJhbmlzLCAxMC4gQXByIDIwMDYsIDE0OjQzOjAwKToKfiMhIHJuPUdsb2luc29uIHJ0PTExNDQ2NzI4Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ0NjU4NDc5CldlbGNoZW4gU2NobWFycm4/IE1laW5lbiBTY2htYXJybiBvZGVyIERhcmtsb3JzIFNjaG1hcnJuPyA7LSkKU05DUiwKVGFyYW5pcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IE5ldWJld2VydHVuZyBhbHRlciBPYmpla3RlIChHbG9pbnNvbiwgMTAuIEFwciAyMDA2LCAxNDo0NDozMik6Cn4jISBybj1UYXJhbmlzIHJ0PTExNDQ2NzI5ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ0NjU4NDc5Ck1lZ2FzY2htYXJybiEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZhY2hnZXNjaGFlZnQgKEdub21lLCAxMC4gQXByIDIwMDYsIDE0OjUxOjE1KToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTE0MzgyNDUwOSByZz13aXR6ZQp+IyEgdGlkPTExNDM4MTIwNjUKc2Nod2VyIGtyYW5rIG9kZXIgc2Nod2Vya3Jhbms/CgpTQ05SCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTmV1ZXIgR2lsZGVubWFnaWVyIChDaGFnYWxsLCAxMC4gQXByIDIwMDYsIDE3OjI2OjQ4KToKfiMhIG9uPURhcmtsb3Igb3Q9MTE0NDY4MjY1MCBvZz1naWxkZW4uemF1YmVyZXIKfiMhIHJuPUNyb2Z0IHJ0PTExNDQ2ODA3OTQgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTE0NDU4NDAwNApOYSBkYW5uIGxvcyAtIHNldHp0IHNpZSBkb2NoIG1hbCBlbmRsaWNoIHVtISA7KSAKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBOZXVlciBHaWxkZW5tYWdpZXIgKENoYWdhbGwsIDEwLiBBcHIgMjAwNiwgMTc6Mjc6MDApOgp+IyEgb249Q3JvZnQgb3Q9MTE0NDY4Mjc4OCBvZz1naWxkZW4uemF1YmVyZXIKfiMhIHJuPURhcmtsb3IgcnQ9MTE0NDY4MjY1MCByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMTQ0NTg0MDA0ClNhZyBkYXMgU2lsdmFuYSA6LSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogTmV1ZXIgR2lsZGVubWFnaWVyIChEYXJrbG9yLCAxMC4gQXByIDIwMDYsIDE3OjMzOjA4KToKfiMhIHJuPUNoYWdhbGwgcnQ9MTE0NDY4MjgyMCByZz1zY2htYXJybgp+IyEgdGlkPTExNDQ1ODQwMDQKRGllIEV4aXN0ZW56IFNpbHZhbmFzIGlzIGRvY2ggbnVyIGVpbiBNeXRob3MuLi4gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBOZXVlIFdlYnNlaXRlIChHbG9pbnNvbiwgMTEuIEFwciAyMDA2LCAwMDoyMjoxOSk6Cn4jISBybj1MaWFyYSBydD0xMTQ0NzA3NTAxIHJnPXd3dy5lbnR3aWNrbHVuZwp+IyEgdGlkPTExMzYzOTIzMDcKPiB3ZW5pZyBTaW5uLCBkYSBqZXR6dCBOYW1lbiByYXVzenVrcmFtZW4gLi4uIGJlc2FndGUgTWFnaWVyCgpFZ2FsLCBuaWNodD8gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEtudXJwcywgMTEuIEFwciAyMDA2LCAyMToyMTozNCk6CltTZWhlcjpNaXJha2FdIG5vY2ggamVtYW5kIGRhIGZ1ZXIgZGllIHJhZXViZXI/CltTZWhlcjpUYXJhbmlzXSBTZWhlcnJhZXViZXI/CltTZWhlcjpUYXJhbmlzXSBNaG1tLiBJY2ggaGFldHRlIGRhIG5vY2ggZWluZSBrbGVpbmUgVmVyZ2VsdHVuZyBhdXN6dWZ1ZWhyZW4uCltTZWhlcjpUYXJhbmlzXSA7LSkKW1RvZDpMYXJzXSBMeW5jaCBgYEp1c3RpY2UnJyBIZXhlbnRvZXRlciBoYXQgZ2VyYWRlIFRhcmFuaXMgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKFRhcmFuaXMsIDExLiBBcHIgMjAwNiwgMjI6MjA6MTMpOgp+IyEgcm49S251cnBzIHJ0PTExNDQ3ODMyOTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ0NzgzMjk0Ck1obW0sIHZpZWxsZWljaHQga2FubiBpY2ggamEgbW9yZ2VuIGRydWViZXIgbGFjaGVuLiBCZXp3ZWlmZWwgaWNoIGFiZXIKZWlnZW50bGljaC4KVGFyYW5pcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGTFcgKEdsb2luc29uLCAxMS4gQXByIDIwMDYsIDIzOjA0OjAxKToKfiMhIHJuPVRhcmFuaXMgcnQ9MTE0NDc4NjgxMyByZz1zY2htYXJybgp+IyEgdGlkPTExNDQ3ODMyOTQKSWNoIGZpbmRzIGFtdWVzYW50LiBEdSBlaWZlcnN0IEtleSBpbiBsZXR6dGVyIFplaXQgbmFjaCA6KQoKSWNoIGVyaW5uZXJlIG1pY2ggZGEgYXVjaCBhbiBkYXMgIlRhcmFuaXMgdGVpbHQgZGVtIFRlYW0gbWl0OiBQdWgsIG51ciAyIExQIgp1bmQgZGFzIDMwIFNla3VuZGVuIHNwYWV0ZXJlICJbVG9kOkxhcnNdIEVpbiBNYXJpbGl0aCBoYXQgZ2VyYWRlIFRhcmFuaXMKdW1nZWJyYWNodC4iIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRkxXIChUYXJhbmlzLCAxMS4gQXByIDIwMDYsIDIzOjEwOjUzKToKfiMhIHJuPUdsb2luc29uIHJ0PTExNDQ3ODk0NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ0NzgzMjk0CkpvLiBVbmQgZGVyIFRvZCB3YXIgc29nYXIgZWlnZW5lIERvb2ZoZWl0LCBkZXIgS2xhc3Npa2VyIHZvbiBmYWxzY2hlcgpGbHVjaHRyaWNodHVuZy4gOy0pClRhcmFuaXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU29tbWVycGFydHkgMDYgLSBJbmZvcyAoQ3JvZnQsIDEzLiBBcHIgMjAwNiwgMTc6MTc6NTIpOgp+IyEgcm49R3VhcmQgcnQ9MTE0NDkzOTEwNCByZz1wYXJ0eQp+IyEgdGlkPTExNDQ2NzQxNDQKUHJpbWEsIGljaCB3b2xsdGUgc2Nob24gaW1tZXIgZWluZSBCaWVydGFzc2UgaGFiZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5hY2hydWYgKEdsb2luc29uLCAxNC4gQXByIDIwMDYsIDEzOjQxOjA1KToKfiMhIHJuPU1pcmlsIHJ0PTExNDUwMTQ3OTMgcmc9YmFsYW5jZS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTE0NTAxNDc5MwpXdXJkZSBkZXIgV2VnaGllciB3ZW5pZ3N0ZW5zIGF1Y2ggYWJnZXdlcnRldD8gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5hY2hydWYgKE1pcmlsLCAxNC4gQXByIDIwMDYsIDEzOjQxOjMzKToKfiMhIHJuPUdsb2luc29uIHJ0PTExNDUwMTQ4NjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ1MDE0NzkzClRyeSBpdC4KTWlyaWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5hY2hydWYgKE1haGFyZXQsIDE0LiBBcHIgMjAwNiwgMTM6NDI6MDcpOgp+IyEgcm49TWlyaWwgcnQ9MTE0NTAxNDg5MyByZz1zY2htYXJybgp+IyEgdGlkPTExNDUwMTQ3OTMKSXN0IGRvY2ggbmljaHQgbm9ldGlnLCBzb2xhbmdlIHNpY2ggaW1tZXIgbWFsIGVpbiBLbGVyaWtlciBmaW5kZXQsIGRlciBkZW4KaGVpbHQgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOYWNocnVmIChHbG9pbnNvbiwgMTQuIEFwciAyMDA2LCAxMzo0MzoyNyk6Cn4jISBybj1NYWhhcmV0IHJ0PTExNDUwMTQ5Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ1MDE0NzkzCkphLCBpY2ggaGF0dGUgbm9jaCBkaWUgU2NodXR6aGFuZCB2ZXJnZXNzZW4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWb2xsc3RyZWNrZXIgdW5kIFNjaGFmZS4uLiAoUmVxdWllbSwgMTguIEFwciAyMDA2LCAwMDo0MDo0Nyk6CltBYmVudGV1ZXI6TWVzaXJpaV0gbmVlIGRpZSB0YXVnZW4gZG9jaCBuaXggbWVocgpbQWJlbnRldWVyOk1lc2lyaWldIEVpbiBWb2xsc3RyZWNrZXIgKGFiZ2V3ZXJ0ZXQpLgpbQWJlbnRldWVyOk1lc2lyaWkgZ3JpbnN0XQpOZWRpbWUgbmVubnQgaWhyIFNjaGFmIFZvbGxzdHJlY2tlci4KVm9sbHN0cmVja2VyIGJsb2VrdCB1ZWJlcmdsdWVja2xpY2guCk5lZGltZSBicmljaHQgdm9yIExhY2hlbiB6dXNhbW1lbi4KU291IGdpYnQgZWluIGFsYmVybmVzIEtpY2hlcm4gdm9uIHNpY2guCkR1IGJyaWNoc3Qgdm9yIExhY2hlbiB6dXNhbW1lbi4KTmVkaW1lIG5lbm50IGlociBTY2hhZiBWb2xsc3RyZWNrZXIgKGFiZ2V3ZXJ0ZXQpLgpWb2xsc3RyZWNrZXIgKGFiZ2V3ZXJ0ZXQpIGJsb2VrdCB1ZWJlcmdsdWVja2xpY2guCltBYmVudGV1ZXI6QXJrIGJyaW5ndCBpaG4genVzYWV0emxpY2ggbm9jaCB6dW0gRmxlY2tlbnp3ZXJnLl0KTmVkaW1lIGdyaW5zdC4KSHVtbmkgZnJhZ3QgVm9sbHN0cmVja2VyIChhYmdld2VydGV0KSBuYWNoIEJlc2l0emVyLgpWb2xsc3RyZWNrZXIgKGFiZ2V3ZXJ0ZXQpIGJsb2VrdCBzdG9sejogSWNoIGdlaG9lcmUgenUgTmVkaW1lIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTG9obnN0ZXVlcmVya2xhZXJ1bmcgKEJhbWJpLCAxOC4gQXByIDIwMDYsIDEwOjQ4OjQwKToKV2FlaHJlbmQgZGVyIExvaG5zdGV1ZXJlcmtsYWVydW5nIGJpbiBpY2ggenUgZGVtIFB1bmt0ICJBdXNzZXJnZXdvZWhubGljaGUKQmVsYXN0dW5nZW4iIGdlbGFuZ3QgdW5kIGljaCBmcmFnZSBtaWNoLCBvYiBpY2ggbWVpbmUgRnJhdSBkb3J0IGF1ZmZ1ZWhyZW4KbXVzcy4KCldhcyBzaWNoIGpldHp0IHNlaHIgc2VsdHNhbSBhbmhvZXJ0LCBoYXQgZWluZW4gZXJuc3RnZW1laW50ZW4gSGludGVyZ3J1bmQsCndlc2hhbGIgaWNoIG1pciBkaWUgRnJhZ2UgZnVlciBkZW4gRmluYW56YmVhbXRlbiBhdWZnZXNjaHJpZWJlbiBoYWJlLiBPaG5lIGRhcwpXaXNzZW4gdW0gZGllc2VuIEhpbnRlcmdydW5kIGZhbmQgaWNoIGRpZSBGcmFnZSBiZWltIG5vY2htYWwgTGVzZW4gZGFubiBhYmVyCmRvY2ggemllbWxpY2ggYm9lc2FydGlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExvaG5zdGV1ZXJlcmtsYWVydW5nIChHcmltbWJvcm4sIDE4LiBBcHIgMjAwNiwgMTE6Mzg6MDIpOgp+IyEgcm49QmFtYmkgcnQ9MTE0NTM1MDEyMCByZz1zY2htYXJybgp+IyEgdGlkPTExNDUzNTAxMjAKRGVpbmUgRnJhdSB3aXJkIGluIGRpZXNlciBIaW5zaWNodCBzY2hvbiBkdXJjaCBkaWUgZ2VtZWluc2FtZQpTdGV1ZXJ2ZXJhbmxhZ3VuZyBiZXJ1ZWNrc2ljaHRpZ3QsIG11c3MgYWxzbyBuaWNodCBub2NobWFsIGF1ZmdlZnVlaHJ0IHdlcmRlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBMb2huc3RldWVyZXJrbGFlcnVuZyAoTXVhZGliLCAxOC4gQXByIDIwMDYsIDE4OjA4OjI5KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTQ1MzUzMDgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0NTM1MDEyMApzbyBhdXNzZXJnZXdvZWhubGljaCBpc3QgZGllIGJlbGFzdHVuZyBhbHNvIGRvY2ggbmljaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IExvaG5zdGV1ZXJlcmtsYWVydW5nIChHcmltbWJvcm4sIDE4LiBBcHIgMjAwNiwgMTg6MTA6NTMpOgp+IyEgcm49TXVhZGliIHJ0PTExNDUzNzY1MDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ1MzUwMTIwClRqYS4gSmUgbWVociBkaWUgRnJhdSB6dWhhdXNlIGlzdCB1bmQgamUgd2VuaWdlciBHZWxkIHNpZSBuYWNoIGhhdXNlIGJyaW5ndCwKZGVzdG8gZ3JvZXNzZXIgZGllIEJlbGFzdHVuZyAtIHBhc3N0IGRvY2guCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBOZXVlIFdlYnNlaXRlIChNdWFkaWIsIDE4LiBBcHIgMjAwNiwgMTg6MjM6NDYpOgp+IyEgcm49Wm9vayBydD0xMTQ1Mjk3Mjk4IHJnPXd3dy5lbnR3aWNrbHVuZwp+IyEgdGlkPTExMzYzOTIzMDcKbmEgd2VubiBkdSBmdWVyIGFsbGVzIHZlcmFudHdvcnRsaWNoIGJpc3QsIGRhbm4gaXN0IGRpZSBmcmFnZSBkb2NoIGVpbmZhY2gKYmVhbnR3b3J0ZXQsIG5pY2h0IHdhaHI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBKYXBhbmlzY2ggKFZhbmlvbiwgMTguIEFwciAyMDA2LCAxODo0NjoxNSk6Cn4jISBybj1NdWFkaWIgcnQ9MTE0NTM3NzM3MCByZz13d3cKfiMhIHRpZD0xMTQ1MzU0OTg2Ck11YWRpYnUgc2FtYSBoYSBob250byBuaSBiYWthIGRhIHlvLiBBcnVrbyBzYW1hIG1vIGRhIG5lLgoKV2FzIGZ1ZXIga2FsdGUgQWJlbmRlLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEphcGFuaXNjaCAoR3dlbiwgMTguIEFwciAyMDA2LCAxOTowNTozMik6Cn4jISBybj1WYW5pb24gcnQ9MTE0NTM3ODc3NSByZz1zY2htYXJybgp+IyEgdGlkPTExNDUzNTQ5ODYKRGFzIGtvbW10IHJhdXMsIHdlbm4gbWFuIG5hY2ggIkljaCBzcHJlY2hlIGtlaW4gSmFwYW5pc2NoIiBnb29nZWx0OgpodHRwOi8vdGlueXVybC5jb20vZnhnZWwKRGFzIGxldHp0ZSBQb3N0aW5nIHNvbGx0ZSBub2NoIHdlciBlcmdhZW56ZW4gZG9ydC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHlwaXNjaCBCYWV1bWVwb3BwZXIgKE1lc2lyaWksIDE5LiBBcHIgMjAwNiwgMjI6MTU6NDYpOgpWb24gQmVsZ2FyaWFkOiBkdSBrbmFsbGVyIG1laW5lIGNoYXJzIGtvZW5uZW4gZGFzIG5ldCBuZWhtZW4gOykgaWNoClZvbiBCZWxnYXJpYWQ6IGJpbiBkb2NoIGtlaW4gc3RpbmtlZWxmIDspClZvbiBCZWxnYXJpYWQ6IGFyZ3MgendlcmcgOykKCk1lc2lyaWksIFN0aW5rZXp3ZXJnIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHcmVpc2UgR2VuZXJhZWxlIChNZXNpcmlpLCAxOS4gQXByIDIwMDYsIDIyOjUwOjExKToKVm9uIEJlbGdhcmlhZDogaGFzdGUgYWJlciByZWNodCA7KQpWb24gQmVsZ2FyaWFkOiBzb29vIGpldHp0IHp1bSBwaWV0ClZpZWxlbiBEYW5rIGZ1ZXIgZGllIEhpbGZlLiAoNTcpClZvbiBCZWxnYXJpYWQ6IGFlaG0gbGFzc2UgcmVpbiBib2luZwoKTmEgbWFsIGd1Y2tlbiB3byBlciB1ZWJlcmFsbCBEcmFjaGVuIGZpbmRldCA6KQpNZXNpLCBmaWVzZXIgTGFjaHp3ZXJnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBOZXVlcyBGYW50YXN5YnVjaCAoWm9vaywgMjAuIEFwciAyMDA2LCAxMDowMzowMyk6Cn4jISBybj1aYXJuaXlhIHJ0PTExNDU0ODQ4MDQgcmc9a3VsdHVyCn4jISB0aWQ9MTE0NTQzNzM3MgpVbmQgaWNoIGxhcyBkYSB6dWVyc3QgInd3dy50YW5qaWFua3VtbWVyLmRlIiA7KSAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3J1bmRlaW5rb21tZW4gKFpvb2ssIDIwLiBBcHIgMjAwNiwgMTE6Mzk6NDgpOgp+IyEgcm49QWxib2luIHJ0PTExNDU0ODcxNDYgcmc9d3d3Cn4jISB0aWQ9MTE0NTQ4NzE0NgpEYSBnaWJ0cyBuZW4gTGluayAiV2llIEdydW5kZWlua29tbWVuIHdpcmt0PyIKCk51bi4gSWNoIGdsYXViZSwgZGFzIGxhZXNzdCBzaWNoIGdhbnogZ3V0IGFuIGRlbiBEaWFldGVuIHVuc2VyZXIgCkFiZ2VvcmRuZXRlbiB1bmQgaWhyZW0gVmVyaGFsdGVuIGFibGVzZW4uIEluc2Jlc29uZGVyZSBpbiBkZW4gTGFuZGVzLQpwYXJsYW1lbnRlbiwgd28gZGVtZ2VnZW51ZWJlciBrYXVtIGVpbmUgaXJnZW5kd2llIGdlYXJ0ZXRlIHNpbm52b2xsZQpUYWV0aWdrZWl0IGF1c3p1bWFjaGVuIGlzdC4gSW0gS2VybiB3aXJkIGRhcyBHZWxkIHZlcnByYXNzdCB1bmQgZGllClBhcmxhbWVudGFyaWVyZXIgaHVlcGZlbiB2b24gRW1wZmFuZyB6dSBFbXBmYW5nIHVuZCBsYXNzZW4gc2ljaCAKenVzYWV0emxpY2ggbm9jaCBkdXJjaGZ1ZXR0ZXJuLiBXaWUgc29sbCBtYW4gZGVubiBkYW1pdCBTdGFhdCBtYWNoZW4/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHcnVuZGVpbmtvbW1lbiAoR3JpbW1ib3JuLCAyMC4gQXByIDIwMDYsIDExOjQ0OjQ2KToKfiMhIHJuPVpvb2sgcnQ9MTE0NTUyNTk4OCByZz1zY2htYXJybgp+IyEgdGlkPTExNDU0ODcxNDYKTnVuLCBEdSB3ZWlzdCBvZmZlbmJhciBnZW5hdSB3aWUgZGVyIEFyYmVpdHN0YWcgZWluZXMgTGFuZGVzcGFybGFtZW50YXJpZXJzCmF1c3NpZWh0LCBkYSBrYW5uIGljaCBEaXIgbWFuZ2VscyBlaW5nZW5lbSBXaXNzZW4gbmljaHQgd2lkZXJzcHJlY2hlbi4KQWxsZXJkaW5ncyB3ZWlzcyBpY2ggZGFzIHNlbGJlciB2b24ga2F1bSBqZW1hbmRlbSBhdXNzZXJoYWxiIG1laW5lcwpwZXJzb2VubGljaGVuIFVtZmVsZGVzLCB1bmQgYXVjaCBkYSBtZWlzdCBudXIgZHVyY2ggSG9lcmVuc2FnZW4gKHdlbm4gYXVjaApnbGF1Ynd1ZXJkaWdlciBhbHMgYmVpIFBvbGl0aWtlcm4sIHdvIGRhcyBIb2VyZW5zYWdlbiB2b24gYmlsZC5kZSBrYWVtZSkuIEFiZXIKd28gZ2lidHMgZGVubiBzb3ZpZWxlIEVtcGZhZW5nZT8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR3J1bmRlaW5rb21tZW4gKFpvb2ssIDIwLiBBcHIgMjAwNiwgMTE6NTA6MjcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNDU1MjYyODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ1NDg3MTQ2Ckxhc3MgRGlyIGRvY2ggbWFsIGRlbiBUZXJtaW5rYWxlbmRlciBEZWluZXMgV2FobGtyZWlzLU1kTCB6dXNjaGlja2VuLiBJY2gKdmVybXV0ZSwgRHUgd2lyc3QgZXJzdGF1bnQgc2Vpbiwgd2FzIGVzIGRhIGFsbGVzIGdpYnQuIFpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHcnVuZGVpbmtvbW1lbiAoQ3JvZnQsIDIwLiBBcHIgMjAwNiwgMTE6NTE6MDkpOgp+IyEgcm49Wm9vayBydD0xMTQ1NTI2NjI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0NTQ4NzE0NgpEaWUgTWRMIHZlcnNjaGlja2VuIGVpbmZhY2ggc28gaWhyZSBUZXJtaW5rYWxlbmRlcj8gIEVyc3RhdW5saWNoLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEdydW5kZWlua29tbWVuIChab29rLCAyMC4gQXByIDIwMDYsIDExOjU1OjA3KToKfiMhIHJuPUNyb2Z0IHJ0PTExNDU1MjY2Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ1NDg3MTQ2CkZpbmRlc3QgRHU/Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogR3J1bmRlaW5rb21tZW4gKEdyaW1tYm9ybiwgMjAuIEFwciAyMDA2LCAxMTo1ODo0OSk6Cn4jISBybj1ab29rIHJ0PTExNDU1MjY5MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ1NDg3MTQ2CkRhbm4gZ2liIGRvY2ggbWFsIGVpbmUgVVJMIGZ1ZXIgbWVpbmVuIGtvcmdhbml6ZXIuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEdydW5kZWlua29tbWVuIChab29rLCAyMC4gQXByIDIwMDYsIDEyOjAwOjQ1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTQ1NTI3MTI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0NTQ4NzE0Ngp3d3cuYmF5ZXJpc2NoZXItbGFuZHRhZy5kZT8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS0EgU3RhbW10aXNjaGUgMjcuNCAmIDQuNSAoTXVhZGliLCAyMS4gQXByIDIwMDYsIDE0OjA0OjM0KToKfiMhIHJuPUNyb2Z0IHJ0PTExNDU2MTgxOTQgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTE0NTYxODE5NAp1bmQgd2FubiBuYWNoIGJ1eHRlaHVkZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS0EgU3RhbW10aXNjaGUgMjcuNCAmIDQuNSAoQ3JvZnQsIDIxLiBBcHIgMjAwNiwgMTQ6MTA6MjYpOgp+IyEgcm49TXVhZGliIHJ0PTExNDU2MjEwNzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ1NjE4MTk0CkRhcyBpc3Qgbm9jaCBuaWNodCBrbGFyLiAgRGEgbXVzcyBzaWNoIGVyc3QgZWluZSBNZWhyaGVpdCBmdWVyIGZpbmRlbi4KQWJlciBpY2ggZGVua2UgbWFsLCBlcyB3aXJkIHdlbm4gZGFubiBlaW4gU29uZGVyc3RhbW10aXNjaCB3ZXJkZW4gKGFsc28KbmljaHQgRG9ubmVyc3RhZ3Mgc3RhdHRmaW5kZW4pLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuaGVpbWxpY2ggLi4uIChNaXJha2EsIDIxLiBBcHIgMjAwNiwgMjE6MTE6MDkpOgpEYXMgU2tlbGV0dCBpc3QgZmFzdCB2b2xsc3RhZW5kaWcgbWl0IFN0YXViIGJlZGVja3QuIE51ciBhbiBkZW4gU2VpdGVuIGRlcwpTY2hhZWRlbHMgYmVmaW5kZXQgc2ljaCBrYXVtIFN0YXViLgo+IFNjaGFlZGVsIHJ1ZnQ6IGhpbGJlcnQKCkRhIGtyaWVndCBtYW4gc2Nob24gbWFsIGVpbmVuIFNjaHJlY2suIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChHbG9pbnNvbiwgMjIuIEFwciAyMDA2LCAxNjoyMTozOCk6CltLbGVydXM6TGVuYV0ga3JpZWcgaWNoIGZ1ZXIgInB1cmUgdGVsbmV0IiBuZW4gQm9udXM/CltLbGVydXM6R2xvaW5zb25dIE5vZS4gRHUgbXVzc3QgamEgZWggbnVyIGRvbm5lcm4gOikKW1RvZDpMYXJzXSBBbGZyZWQgaGF0IGdlcmFkZSBMZW5hIHVtZ2VicmFjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbGluZSwgMjcuIEFwciAyMDA2LCAwOTo1MjowNCk6CgpbQWJlbnRldWVyOkhvbWVyXSBrYW5uIG1pciBtYWwgamVtYW5kIHNhZ2VuIHdvIGljaCBiaW4/IGJpbiBibGluZCB1bmQga2FubiBpbgpbQWJlbnRldWVyOkhvbWVyXSBrZWluZSByaWNodHVuZyBvZGVyIHNvIGdlaGVuClR1cm9jayBhbiBhbGxlIFphdWJlcmVyOiBuZSwgaGF0dGUgaWNoIGF1Y2ggc2Nob24gb2VmdGVycwpbQWJlbnRldWVyOkNyb2Z0XSBEdSBiZWZpbmRlc3QgRGljaCBpcmdlbmR3byBhdWYgZWluZW0gUGFzcyBpbiBkZW4gS2lsZ2hhcmRzLgpbQWJlbnRldWVyOkNyb2Z0XSBSdW5kIHVtIERpY2ggd2lyYmVsbiBkaWNodCBTY2huZWVmbG9ja2VuLCB6dW0gVGVpbCBtaXQKW0FiZW50ZXVlcjpDcm9mdF0gZWlzaWdlbiBTcGxpdHRlcm4gdmVybWlzY2h0LiBEZXIgZWlzaWdlIFdpbmQgaGV1bHQgdW5kCltBYmVudGV1ZXI6Q3JvZnRdIHBmZWlmdCwgdW5kIGRyb2h0LCBEaWNoIG1hbCBpbiBkaWVzZSwgbWFsIGluIGplbmUgUmljaHR1bmcKW0FiZW50ZXVlcjpDcm9mdF0gYWJ6dWRyYWVuZ2VuLiBEdSBrYW5uc3QgYXVzc2VyIHZpZWwgV2Vpc3MgdW0gRGljaCBoZXJ1bQpbQWJlbnRldWVyOkNyb2Z0XSBuaWNodHMgIGVya2VubmVuLiBQYXNzIGJsb3NzIGF1ZiwgZGFzcyBEdSBEaWNoIGhpZXIgbmljaHQKW0FiZW50ZXVlcjpDcm9mdF0gdmVybGFldWZzdCEKW0FiZW50ZXVlcjpIb21lcl0gZGFua2UKW1RvZDpMYXJzXSBFaW5lIEJhbnNoZWUgaGF0IGdlcmFkZSBIb21lciB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgQmFuc2hlZV0gWUlJSWlpaWlpYWstWWFrLUlJaWlpaWlBQUtLWVlpaWFhYWFLS0sgISEhIQoKClNvIHdpZSBlcyBhdXNzaWVodCwgaXN0IGF1Y2ggZ2xlaWNoIGplbWFuZCBnZWtvbW1lbiBIb21lciB3aWVkZXIgcmF1cyB6dQpoZWxmZW4uIDooCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpad2VyZ2Ugc2luZCBrb21pc2NoLi4uIDstKSAoWmVzc3RyYSwgMjcuIEFwciAyMDA2LCAxMToyMDozMyk6CltBbGxnZW1laW46TWFoYXJldCB3aXJkIE1lc2lyaWkgbW9yZ2VuIGluIGRpZSBuZXVlIFp3ZXJnZW53YXNjaG1hc2NoaW5lCiAgICAgICAgICAgc3RvcGZlbi5dCltBbGxnZW1laW46TWVzaXJpaSBqdWJlbHRdCgpBdXMgZGVtIFp1c2FtbWVuaGFuZyBnZXJpc3NlbiwgamEsIGljaCB3ZWlzcywgYWJlciBTQ05SLiA7LSkKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS2xlaW5lIFVtZnJhZ2UgenUgIldhcyB3b2xsdCBpaHIgZGVubj8gTWFvYW0gLi4uIiAoQ3JvZnQsIDI3LiBBcHIgMjAwNiwgMTQ6Mzk6MzYpOgp+IyEgcm49TW9udGFudXMgcnQ9MTE0NjE0MTI1MyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTE0NjA2OTcwNApMYW5nZSBsZWJlIGRlciB2aXJ0dWFsIGNvbXBpbGVyIQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IHRlbGVmb25udW1tZXJuIChLbnVycHMsIDI3LiBBcHIgMjAwNiwgMTQ6NDI6MDgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNDYxNDE0OTMgcmc9YW56ZWlnZW4KfiMhIHRpZD0xMTQ2MDA5OTQ5Cldlbm4gZGVyIFBvbGl6aXN0IGRpZSBBZHJlc3NlIGZ1ZXIgZGVuIGxldHp0ZW4gbmljaHRlcnJlaWNoYmFyZW4KTWl0YWJpdHVyaWVudGVuIGF1ZiBkZW4gQnJpZWZ1bXNjaGxhZyBzY2hyZWlidCB1bmQgaWhuIGVpbndpcmZ0LCBkYW5uIG1hZyB6d2FyCm5pY2h0IGtvc2NoZXIgc2VpbiwgYWJlciBlciBtdWVzc3RlIHNpY2ggc2Nob24gYXJnIGRvb2YgYW5zdGVsbGVuLCB1bSBlcndpc2NodAp6dSB3ZXJkZW4uIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogdGVsZWZvbm51bW1lcm4gKEdyaW1tYm9ybiwgMjcuIEFwciAyMDA2LCAxNDo0NDo1Nik6Cn4jISBybj1LbnVycHMgcnQ9MTE0NjE0MTcyOCByZz1zY2htYXJybgp+IyEgdGlkPTExNDYwMDk5NDkKQWgsIHdpciBzaW5kIGF1ZiBkZW0gbGV2ZWwgImVybGF1YnQgaXN0IHdhcyBuaWNodCBlcndpc2NodCB3aXJkIi4gTmFqYSwgd2VubgpEdSBtZWluc3QuLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogS2xlaW5lIFVtZnJhZ2UgenUgIldhcyB3b2xsdCBpaHIgZGVubj8gTWFvYW0gLi4uIiAoR3JpbW1ib3JuLCAyNy4gQXByIDIwMDYsIDE0OjUzOjQyKToKfiMhIHJuPU5pYmVsIHJ0PTExNDYxNDIzOTAgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExNDYwNjk3MDQKQWNoIHdhcywgZGFubiB2ZXJsZWd0IG1hbiBkaWUgaW4gZGllIFVudGVyd2VsdCwgZGFubiBwYXNzdCBkYXMgc2Nob24gd2llZGVyLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEtsZWluZSBVbWZyYWdlIHp1ICJXYXMgd29sbHQgaWhyIGRlbm4/IE1hb2FtIC4uLiIgKENyb2Z0LCAyNy4gQXByIDIwMDYsIDE0OjU0OjA0KToKfiMhIHJuPU5pYmVsIHJ0PTExNDYxNDIzOTAgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExNDYwNjk3MDQKRnVlciAiRGllc2VzIERldGFpbCB3aXJkIGdlcmFkZSByZXBhcmllcnQuIiByZWljaHRzIGJlc3RpbW10ICwtKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEtsZWluZSBVbWZyYWdlIHp1ICJXYXMgd29sbHQgaWhyIGRlbm4/IE1hb2FtIC4uLiIgKE1vbnRhbnVzLCAyNy4gQXByIDIwMDYsIDE0OjU2OjM2KToKfiMhIHJuPUNyb2Z0IHJ0PTExNDYxNDI0NDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ2MDY5NzA0CkluIGRlciBXdXJeSF5IXkh1bnRlcndlbHQgaGVpc3N0IGRhcyAiRGFzIGludGVyZXNzaWVydCBkaWNoIGltIE1vbWVudCBnYXIKbmljaHQuIER1IHdpbGxzdCBudXIgbm9jaCBtb2VnbGljaHN0IHNjaG5lbGwgcmF1cyBoaWVyLiIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEtsZWluZSBVbWZyYWdlIHp1ICJXYXMgd29sbHQgaWhyIGRlbm4/IE1hb2FtIC4uLiIgKERhcmtsb3IsIDI3LiBBcHIgMjAwNiwgMTQ6NTk6MzYpOgp+IyEgcm49TmliZWwgcnQ9MTE0NjE0MjM5MCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTE0NjA2OTcwNApXZW4gaW50ZXJlc3NpZXJ0cywgd2VubiBtYW4gdHJvdHpkZW0gZGFyaW4gc3RlaGVuIGthbm4/IDspCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBLbGVpbmUgVW1mcmFnZSB6dSAiV2FzIHdvbGx0IGlociBkZW5uPyBNYW9hbSAuLi4iIChaZXNzdHJhLCAyNy4gQXByIDIwMDYsIDE1OjA3OjA5KToKfiMhIHJuPU5pYmVsIHJ0PTExNDYxNDIzOTAgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExNDYwNjk3MDQKWm9vayBrYW5uIGphIE1vbnRhbnVzIHNjaG5lbGwgbWFsIHp1bSBNYWdpZXIgbWFjaGVuLCBkZXIgemVpZ3QgdW5zIGRhbm4sIHdpZQpkYXMgZ2VodC4gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBLbGVpbmUgVW1mcmFnZSB6dSAiV2FzIHdvbGx0IGlociBkZW5uPyBNYW9hbSAuLi4iIChNb250YW51cywgMjcuIEFwciAyMDA2LCAxNTowOTo1Nyk6Cn4jISBybj1aZXNzdHJhIHJ0PTExNDYxNDMyMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ2MDY5NzA0CkVpbiBNYWdpZXIsIGRlciBuaWUgZWluZW4gdmVydHJhZyB1bnRlcnNjaHJpZWJlbiBoYXQsIHJlaWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEtsZWluZSBVbWZyYWdlIHp1ICJXYXMgd29sbHQgaWhyIGRlbm4/IE1hb2FtIC4uLiIgKFpvb2ssIDI3LiBBcHIgMjAwNiwgMTU6MTU6NTkpOgp+IyEgcm49Q3JvZnQgcnQ9MTE0NjE0MTU3NiByZz1zY2htYXJybgp+IyEgdGlkPTExNDYwNjk3MDQKV2llIHdhZXJlIGVzIGRlbm4gbWl0IGVpbmVtICJNZWVyIj8gU28gYWxzIElkZWU/IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogS2xlaW5lIFVtZnJhZ2UgenUgIldhcyB3b2xsdCBpaHIgZGVubj8gTWFvYW0gLi4uIiAoR2xvaW5zb24sIDI3LiBBcHIgMjAwNiwgMTU6MjA6MjQpOgp+IyEgcm49Wm9vayBydD0xMTQ2MTQzNzU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0NjA2OTcwNApUYXJhbmlzIGlzdCBsZWlkZXIgZWluZXIgVWViZXJzY2h3ZW1tdW5nIHp1bSBPcGZlciBnZWZhbGxlbj8gNTAwIE1lZXJlc3JhZXVtZT8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBLbGVpbmUgVW1mcmFnZSB6dSAiV2FzIHdvbGx0IGlociBkZW5uPyBNYW9hbSAuLi4iIChBbnRoZWEsIDI3LiBBcHIgMjAwNiwgMTU6Mzc6MjcpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE0NjE0NDAyNCByZz1zY2htYXJybgp+IyEgdGlkPTExNDYwNjk3MDQKQXUgamEsIGljaCBoYWIgbmV1bGljaCBlaCBlaW5lbiBnZW5lcmlzY2hlbiBNZWVyZXNyYXVtIGdlc2NocmllYmVuLCBkYSBrYW5uCmljaCBkZW4gZ2xlaWNoIGF1c3Byb2JpZXJlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogS2xlaW5lIFVtZnJhZ2UgenUgIldhcyB3b2xsdCBpaHIgZGVubj8gTWFvYW0gLi4uIiAoQmFtYmksIDI4LiBBcHIgMjAwNiwgMDE6Mzc6MjQpOgp+IyEgcm49QW50aGVhIHJ0PTExNDYxNDUwNDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ2MDY5NzA0CkR1IHN0ZWhzdCBhZWggc2Nod2ltbXN0IGFlaCB0YXVjaHN0IGdlcmFkZSBpbiBkZXIgWmF1YmVyZXJnaWxkZS4gSmEsIGF1Y2ggZGllCmlzdCBpbnp3aXNjaGVuIHVlYmVyc2Nod2VtbXQuIFVlYnJpZ2VucyBzb2xsdGVzdCBEdSBuaWNodCB6dSBsYW5nZSBoaWVyCmJsZWliZW4sIGRlbm4gRGVpbmUgQXRlbWx1ZnQgZ2VodCBkZW1uYWVjaHN0IHp1ciBOZWlnZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogS2xlaW5lIFVtZnJhZ2UgenUgIldhcyB3b2xsdCBpaHIgZGVubj8gTWFvYW0gLi4uIiAoR2xvaW5zb24sIDI4LiBBcHIgMjAwNiwgMDE6NTg6MjkpOgp+IyEgcm49QmFtYmkgcnQ9MTE0NjE4MTA0NCByZz1zY2htYXJybgp+IyEgdGlkPTExNDYwNjk3MDQKQnViYmxlaGVhZCBjaGFybT8gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogS2xlaW5lIFVtZnJhZ2UgenUgIldhcyB3b2xsdCBpaHIgZGVubj8gTWFvYW0gLi4uIiAoTXVhZGliLCAyOC4gQXByIDIwMDYsIDEzOjE4OjQzKToKfiMhIHJuPUdsb2luc29uIHJ0PTExNDYxODIzMDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ2MDY5NzA0Cnp1IHZpZWwgaHA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWxsdXN0cmF0b3JlbiBhdWZnZXBhc3N0IChQZXJkaXRhLCAgMi4gTWFpIDIwMDYsIDE5OjU4OjAzKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTExNDY1ODExNDEgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMTQ2NTgxMTQxCkhtbW1tLCB2b24gQWxrb2hvbCAoc3BlemllbGwgUnVtKSBzdGVodCBkYSBhdWYgZGVyIFNlaXRlIGFiZXIgbml4Li4uCgpQZXJkaXRhIC0gaGF0IGhldXRlIGlyZ2VuZHdpZSBlaW5lbiBzZWhyIG1lcmt3dWVyZGlnZW4gSHVtb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhaHJzYWdlcj8/IChWYW5oZWxzaW5nLCAgMy4gTWFpIDIwMDYsIDIyOjI2OjQzKToKW0JlaWxlaWQ6Q29yYXhdIHdlbm4gZXMgbnVyIG5pY2h0IGltbWVyIGRlciBzZWxiZSBkdW1tZSBmZWhsZXIgd2FlcmUuLi4KW1RvZDpMYXJzXSBFaW4gU2FldXJlZGFlbW9uIGhhdCBnZXJhZGUgQ29yYXggdW1nZWJyYWNodC4KW1RvZDpFaW4gU2FldXJlZGFlbW9uXSBNaXN0LiBKZXR6dCBpc3QgbWVpbmUgU2FldXJlIG1pdCBEZWluZW0gQmx1dCB2ZXJzYXV0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWEgTHVzY2huICpHRyogKEtlbGx5YnVuZHksICA3LiBNYWkgMjAwNiwgMDQ6NTY6MTkpOgpJd3Nob2Rhbi4uLi4uLi5pLnMgU2NvcnBpdXMuLi4uLi4uSi5zIEljaG8uLi4uLi4uLi4uLkoueiBTY29vei4uLi4uLi4uLi5qLnMKVHVzay4uLi4uLi4uLi4uSi5zIE5vc3Ryb21vLi4uLi4uLmoucyBHcnVudC4uLi4uLi4uLi5KLlMgT3JrdG9ldGVyLi4uLi4uSi5TCktlbGx5YnVuZHkuLi4uLi53WiBQaXJpYS4uLi4uLi4uLi5KLlMgUmF5ZWsuLi4uLi4uLi4uSi5aIExhY3JpLi4uLi4uLi4uLkouUwpUeWxhay4uLi4uLi4uLi5KLlMgS2Vzc2EuLi4uLi4uLi4uSi5tIEppbWRpZ3Jpei4uLi4uLkoubSBHcmltbWJvcm4uLi4uLi5Kd20KV2hpdGV0aWdlci4uLi4uSi5tIE1hcmN1cy4uLi4uLi4uLkoubSBOaWJlbC4uLi4uLi4uLi5KLk0gTW9yZ290aC4uLi4uLi4uSi5SCk5vbm5lLi4uLi4uLi4uLkouUiBBbWFyeWxsaXMuLi4uLi5KLlIKCkJsb25kY2hlbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaG1tcGYuIHdlbGNoZXIgc2NoZXJ6a2VrcyBoYXQgbWljaCBhbHMgendlaXRzcGllbGVyaW4gdm9uIGRyb2xsaSBtYXJraWVydD8gQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIISAqR0cqIChLZWxseWJ1bmR5LCAgNy4gTWFpIDIwMDYsIDA1OjQ2OjQzKToKfiMhIG9uPUtlbGx5YnVuZHkgb3Q9MTE0Njk3MzU3OSBvZz1hbGxnZW1laW5lcwp3ZXIgd2FyIGRhcz8gZXIgd2lyZCBtaXQgRHJvbGxpIG5pY2h0IHVudGVyIDUgTUctc2Vzc2lvbnMgYmVzdHJhZnQhICpHRyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJYSBMdXNjaG4gKkdHKiAoRGFya2xvciwgIDcuIE1haSAyMDA2LCAxMjoyMzoyNSk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTExNDY5NzA1Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ2OTcwNTc5ClBhaCwgd2Fyc3QgamEgc2VsYnN0IG5pY2ggZGEuLi4gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmljaCBhdWNoIG1hbCAoQWxib2luLCAgOC4gTWFpIDIwMDYsIDAyOjU1OjM0KToKICAgICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTW9uLCAgOC4gTWFpIDIwMDYsIDAyOjUzOjQ2ICgyMyBUZWlsbmVobWVyKQoKSWNoby4uLi4uLi4uLi4uSi56IFNjb296Li4uLi4uLi4uLkoubiBSYW5nby4uLi4uLi4uLi5pd3ogQnJlZG8uLi4uLi4uLi4uSi56ClR1c2suLi4uLi4uLi4uLkoucyAqRGFya2xvci4uLi4uLi5qd3MgTm9zdHJvbW8uLi4uLi4uai5zIE9ya3RvZXRlci4uLi4uLkouUwpLZWxseWJ1bmR5Li4uLi5pLlMgQmVlLi4uLi4uLi4uLi4uaS5aIE1lbGNob3IuLi4uLi4uLkouUyBHcnVtcGYuLi4uLi4uLi5KLk4KTG9yZC4uLi4uLi4uLi4uandTIFR5bGFrLi4uLi4uLi4uLkkuUyBBbGJvaW4uLi4uLi4uLi4uLm0gS2Vzc2EuLi4uLi4uLi4uSi5tCkppbWRpZ3Jpei4uLi4uLkoubSBHcmltbWJvcm4uLi4uLi5Kd20gTWFyY3VzLi4uLi4uLi4uSi5tIE5pYmVsLi4uLi4uLi4uLkouTQoqR2xvaW5zb24uLi4uLi5JLkggTW9yZ290aC4uLi4uLi4uSi5SIEFtYXJ5bGxpcy4uLi4uLkouUgoKa2xlaW4tYWxib2luIGFsbGVpbiBpbSBNdWQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBpY2ggYXVjaCBtYWwgKE1haGFyZXQsICA4LiBNYWkgMjAwNiwgMDk6Mzc6MDQpOgp+IyEgcm49QWxib2luIHJ0PTExNDcwNDk3MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ3MDQ5NzM0CkFsc28gImkiIGlzdCBqYSBudSBuaWNodCB1bmJlZGluZ3QgaW0gVGllZnNjaGxhZi4gRGllIGhvbGVuIHNpY2ggdmllbGxlaWNodApnZXJhZGUgbmUgVGFzc2UgS2FmZmVlIG9kZXIgbGVzZW4gZWluZSBsYWVuZ2VyZSBSYXVtYmVzY2hyZWlidW5nLiAgQWxsZXMgdW50ZXIKam9mLWlkbGUgemFlaGx0IG5pY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXJ0aWtlbCBPaG5lIFdvcnRlIChPcmt0b2V0ZXIsIDEwLiBNYWkgMjAwNiwgMjI6NDk6MDQpOgpbVG9kOkxhcnNdIFp1dmllbCBTb25uZSBoYXQgZ2VyYWRlIFJlZ2Vuc2NoZWluIHVtZ2VicmFjaHQuCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTEyOTMxOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChBbnRoZWEsIDExLiBNYWkgMjAwNiwgMTQ6NTg6NDgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNDczNTExMjUgcmc9bWVnYXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4Ck11ZXNzZW4gamV0enQgc2Nob24gZ3JhdXNhbWUgT3BmZXIgZGFyZ2VicmFjaHQgd2VyZGVuLCBkYW1pdCBkaWUgR29ldHRlciBpbQpNdWQgZXJzY2hlaW5lbj8gT2RlciBhdWNoLCB3aWUgZXMgZ2VyYWRlIHdpZWRlciBrYW06CgoKRWluIGVudHNldHpsaWNoZXIgU2NocmVpIGhhbGx0IHZvbSBGcmllZGhvZiBoZXJ1ZWJlci4KWm9vayAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFd1bmRlcmxhbXBlIChNdWFkaWIsIDExLiBNYWkgMjAwNiwgMTk6MjQ6MjYpOgp+IyEgcm49QXJrIHJ0PTExNDczNTkwMTQgcmc9ZC5kc2NodW5nZWwKfiMhIHRpZD0xMTQ3MzU5MDE0CndpZSBlaW4gc3BvcmFkaXNjaCBpbiBlcnNjaGVpbnVuZyB0cmV0ZW5kZXIgbWl0d2lya2VuZGVyIGFuIGVpbmVtIGJlc3RpbW10ZW4KbGViZW5zYWJzY2huaXR0IGltbWVyIHNhZ3RlOiAiaGFlbmRlIHZvbiBkZXIgbGFtcGUiCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW5zY2hhbHRiYXJlciBUb2Q/IDstKSAoWmVzc3RyYSwgMTkuIE1haSAyMDA2LCAyMDozNDoxMyk6CltUcnZlczpMb3JkXSAtVG9kKwpbVHJ2ZXM6TG9yZF0gdXBzCltUb2Q6TGFyc10gRWluIERyYWNoZW5wcmllc3RlciBoYXQgZ2VyYWRlIEJlZSB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2thbmRhbCAoVmVjdG9yLCAyMi4gTWFpIDIwMDYsIDE3OjE4OjU1KToKCkdvcm9nICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRlaW4gRnJldW5kIEdvcm9nIHRlaWx0IERpciBtaXQ6IHdhaGhoIG51ciBub2NoIG1hZ2llciBhdWYgZGVtIGZiYW5kLCBpY2gKRGVpbiBGcmV1bmQgR29yb2cgdGVpbHQgRGlyIG1pdDogZ2xhdWIgaWNoIHZlcnNjaHdpbmRlIHdpZWRlciAoOwpHb3JvZyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKCgotLVZlY3Rvci0tLCBzY2hvY2tpZXJ0IHVuZCBlcnNjaHVldHRlcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogc2thbmRhbCAoWm9vaywgMjIuIE1haSAyMDA2LCAxNzoyMToxNSk6Cn4jISBybj1WZWN0b3IgcnQ9MTE0ODMxMTEzNSByZz1zY2htYXJybgp+IyEgdGlkPTExNDgzMTExMzUKSXN0IGRhcyBtYmFuaXNoIGthcHV0dD8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHNrYW5kYWwgKENoYWdhbGwsIDIyLiBNYWkgMjAwNiwgMTc6MjI6MDcpOgp+IyEgcm49Wm9vayBydD0xMTQ4MzExMjc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODMxMTEzNQpJY2ggaGFiIGF1Y2ggKGZhc3QpIG51ciBub2NoIE1hZ2llciBhdWYgZGVtIEZiYW5kLi4uLm9iIGljaCBqZXR6dCBhdWNoCnZlcnNjaHdpbmRlbiBzb2xsdGU/ICpncnVlYmVsKgoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHNrYW5kYWwgKENoYWdhbGwsIDIyLiBNYWkgMjAwNiwgMTc6MjQ6NTEpOgp+IyEgcm49Q2hhZ2FsbCBydD0xMTQ4MzExMzI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODMxMTEzNQpJbiBkZXIgVGF0IGVpbiBTa2FuZGFsLCBtaXIgd3VyZGUgZ3JhZCB2b24gaG9lY2hzdGVyIFN0ZWxsZSB2ZXJib3RlbiB6dQp2ZXJzY2h3aW5kZW4uIDooCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogc2thbmRhbCAoTXVhZGliLCAyMi4gTWFpIDIwMDYsIDE4OjUwOjI1KToKfiMhIHJuPUNoYWdhbGwgcnQ9MTE0ODMxMTQ5MSByZz1zY2htYXJybgp+IyEgdGlkPTExNDgzMTExMzUKaG9lciBhdWYgenUgd2VpbmVuCjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBza2FuZGFsIChWYW5pb24sIDIzLiBNYWkgMjAwNiwgMTA6MzY6MDApOgp+IyEgcm49TXVhZGliIHJ0PTExNDgzMTY2MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4MzExMTM1CkVyIGlzdCBaYXViZXJlciwgd2FzIGJpdHRlIHNjaG9lbiBlcndhcnRlc3QgZHUgLi4uCgpWKgpQUzogU29sYW5nZSBQaXRmYWxsIG5vY2ggU3BpZWxlciBpc3QsIGJlc3RlaHQgSG9mZm51bmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBza2FuZGFsIChNYWhhcmV0LCAyMy4gTWFpIDIwMDYsIDEwOjM4OjU2KToKfiMhIHJuPVZhbmlvbiBydD0xMTQ4MzczMzYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODMxMTEzNQpEZXIgd2lyZCBhdWNoIFNwaWVsZXIgYmxlaWJlbiwgZGEgamEga2VpbmVyIHp3ZWkgTWFnaWVyIGhhYmVuIGRhcmYgOykKRGllc2UgSG9mZm51bmcgd2lyZCBhbHNvIG5pZSBzdGVyYmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogc2thbmRhbCAoVmVjdG9yLCAyMy4gTWFpIDIwMDYsIDEwOjM5OjU4KToKfiMhIHJuPU1haGFyZXQgcnQ9MTE0ODM3MzUzNiByZz1zY2htYXJybgp+IyEgdGlkPTExNDgzMTExMzUKenVkZW0gd2FyIGVyIHNjaG9ubWFsIGZ1ZXIgY2EgMjQgc3R1bmRlbiBtYWdpZXIKKGFhYWFuZ2VibGljaCB3ZWdlbiByYXVzY2gtenVzdGFlbmRlbiksIGRpZXNlIGJhc3Rpb24KaXN0IGFsc28gYXVjaCBnZWZhbGxlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogc2thbmRhbCAoVmFuaW9uLCAyMy4gTWFpIDIwMDYsIDEwOjQxOjI0KToKfiMhIHJuPU1haGFyZXQgcnQ9MTE0ODM3MzUzNiByZz1zY2htYXJybgp+IyEgdGlkPTExNDgzMTExMzUKU2llaHN0ZSwgYWxsZXMgd2lyZCBndXQuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEd1cmtlIChHcmltbWJvcm4sIDIzLiBNYWkgMjAwNiwgMTQ6NDA6MTQpOgp+IyEgcm49UmVnZW5zY2hlaW4gcnQ9MTE0ODM4NDk2NyByZz13aXR6ZQp+IyEgdGlkPTExNDgzODQ5NjcKPiBkYXMgaXN0IG1laW4gYWJzb2x1dGVyIExpZWJsaW5nc2JydWVsbGVyIQoKTmEgZGFubiBoZXJ6bGljaGVzIEJlaWxlaWQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHdXJrZSAoR3JpbW1ib3JuLCAyMy4gTWFpIDIwMDYsIDE0OjQwOjUwKToKfiMhIG9uPUtudXJwcyBvdD0xMTQ4Mzg1NTAwIG9nPXdpdHplCn4jISBybj1SZWdlbnNjaGVpbiBydD0xMTQ4Mzg0OTY3IHJnPXdpdHplCn4jISB0aWQ9MTE0ODM4NDk2NwpBbHNvIHdlbm4gZGFzIGRlaW4gYWJzb2x1dGVyIExpZWJsaW5nc2JydWVsbGVyIGlzdC4uLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHdXJrZSAoR3JpbW1ib3JuLCAyMy4gTWFpIDIwMDYsIDE0OjQwOjUyKToKfiMhIG9uPVJlZ2Vuc2NoZWluIG90PTExNDgzODYxNjIgb2c9d2l0emUKS251cnBzLAp3ZW5uIG1hbiBrZWluZSBXaXR6ZSBlcnphZWhsZW4ga2FubiAoc28gd2llIGljaCkgbXVzcyBtYW4gaGFsdCBhdWYgZGllClNob3J0aWVzIHp1cnVlY2tncmVpZmVuCkFCZXIgZWlnZW50bGljaCwgZmluZCBpY2ggZGVuIFdpdHogYXVjaCBlaGVyIHp1bSBoZXVsZW4KCk1mRyA6LSgKUmVnZW5zY2hlaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR3Vya2UgKE11YWRpYiwgMjMuIE1haSAyMDA2LCAyMDowNDoxNSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE0ODM4ODA1MiByZz1zY2htYXJybgp+IyEgdGlkPTExNDgzODgwNTIKd2VuaWdzdGVucyBpc3QgdGFyYW1hcyBhbmdlc2NobG9zc2VuCm1qYW1tCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFbmRsaWNoISAoT3JrdG9ldGVyLCAyMy4gTWFpIDIwMDYsIDIwOjIwOjM5KToKTGFuZ2UgaGF0IGVzIGdlZGF1ZXJ0LCBkb2NoIGVuZGxpY2ggaXN0IGRpZSBGcmFnZSBnZWZ1bmRlbjoKCltBbGxnZW1laW46RGV2bnVsbF0gd2FzIG11c3MgaWNoIGltIGhvc3BpdGFsIHdhZWhsZW4/CltBbGxnZW1laW46QW1hcnlsbGlzXSA0Mi4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR3Vya2UgKFpvb2ssIDIzLiBNYWkgMjAwNiwgMjE6NTY6MTYpOgp+IyEgcm49UmVnZW5zY2hlaW4gcnQ9MTE0ODM4NDk2NyByZz13aXR6ZQp+IyEgdGlkPTExNDgzODQ5NjcKd2VpYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VpYT8gKFJlZ2Vuc2NoZWluLCAyNC4gTWFpIDIwMDYsIDE2OjI2OjA5KToKQXV3ZWlhLCBkZXIgSGFobiBsZWd0IGtlaW5lIEVpZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWlhPyAoVmVjdG9yLCAyNC4gTWFpIDIwMDYsIDE2OjI2OjQ3KToKfiMhIHJuPVJlZ2Vuc2NoZWluIHJ0PTExNDg0ODA3Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4NDgwNzY5CkRlaW4gbmV1ZXIgTGllYmxpbmdzd2l0ej8KCnNjbnIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHN0YXR1cyAoQmFtYnVsa28sIDI0LiBNYWkgMjAwNiwgMTc6MTg6MTgpOgp+IyEgcm49TXVhZGliIHJ0PTExNDg0ODM3MDQgcmc9d3d3LmVudHdpY2tsdW5nCn4jISB0aWQ9MTE0ODQ4MzU0MApBYmVyIGxlc2VuIGlzdCBkb2NoIHNvIHNjaHdlci4uLi4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBzdGF0dXMgKE1haGFyZXQsIDI0LiBNYWkgMjAwNiwgMTg6MDE6MzkpOgp+IyEgcm49QmFtYnVsa28gcnQ9MTE0ODQ4Mzg5OCByZz1zY2htYXJybgp+IyEgdGlkPTExNDg0ODM1NDAKTmFqYSwgZGEgZGFzIE1QQS1BcmNoaXYga2VpbmUgQmlsZGVyIGVudGhhZWx0LCBzb2xsdGUgc2ljaCBkYXMgUHJvYmxlbSBkYW1pdApqYSBlcmxlZGlndCBoYWJlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEF1c2JpbGR1bmcgKENyb2Z0LCAyNC4gTWFpIDIwMDYsIDE4OjAyOjMxKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTQ4NDg2MTk5IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTExNDg0MTc0NDMKU2NoZWluYmFyIG9kZXIgYW5zY2hlaW5lbmQ/CgpTQ05SLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSXJvbmllIGRlcyBqdW5nZW4gV2l0emVlcnphZWhsZXJzIChSZWdlbnNjaGVpbiwgMjQuIE1haSAyMDA2LCAxODowOTozOCk6CmtlaW4gdGV4dAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IElyb25pZSBkZXMganVuZ2VuIFdpdHplZXJ6YWVobGVycyAoTWluZ28sIDI0LiBNYWkgMjAwNiwgMTg6MTE6MTQpOgp+IyEgcm49UmVnZW5zY2hlaW4gcnQ9MTE0ODQ4Njk3OCByZz1zY2htYXJybgp+IyEgdGlkPTExNDg0ODY5NzgKUGFzcyBhdWYsIGR1cmNoIEdlc2FiYmVsIHNpbmQgaGllciBzY2hvbiBMZXV0ZSBhbmdlYmxpY2ggenUgR29ldHRlcm4gZ2V3b3JkZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogc3RhdHVzIChBbWFyeWxsaXMsIDI0LiBNYWkgMjAwNiwgMjA6NTU6MzMpOgp+IyEgcm49TXVhZGliIHJ0PTExNDg0ODM3MDQgcmc9d3d3LmVudHdpY2tsdW5nCn4jISB0aWQ9MTE0ODQ4MzU0MApWaWVsIHp1IGxhbmdlIEFudHdvcnQuIERhcyBoZWlzc3Qga3VyeiB1bmQgbGFwaWRhcjogUlRGTSEKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkV0d2FzIGZydWVoIGRyYW4sIG9kZXI/IChPcmt0b2V0ZXIsIDI1LiBNYWkgMjAwNiwgMDA6MTM6MTMpOgpbPE1hc3RlUj46TWVzaXJpaSBsYWVzc3QgZGllIEViZW5lICdzaWx2ZXN0ZXInIGVudHN0ZWhlbi4gPE1pdCwgMjM6NDE6MDQ+XQoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBBdXNiaWxkdW5nIChLbnVycHMsIDI1LiBNYWkgMjAwNiwgMTQ6MjA6MTIpOgp+IyEgcm49U2Nod2FjaGtvcGYgcnQ9MTE0ODUxMjcxNiByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMTQ4NDE3NDQzCj4gYW5kZXJlIGRhZ2VnZW4gd2FyZW4gbnVyIGdlbmVyZnQgd2VubiBtYW4gdmVyc3VjaHQgaGF0IGlobmVuCj4gdmVyc3VjaHQgaGF0IGlobmVuIHdhcyB6dSBlcmtsYWVyZW4uCgpPaCBtZWluIEdvdHQsIGdpYnQgZXMgZWluZSBOZXdiaWViYWxhbmNlLCBkaWUgc2llIGdlbmVyZnQgaGF0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhyaHIgKEJhbWJ1bGtvLCAyOS4gTWFpIDIwMDYsIDE1OjMwOjI4KToKfiMhIHJuPVZlY3RvciBydD0xMTQ4OTA5MjkwIHJnPXdpdHplCn4jISB0aWQ9MTE0ODkwOTI5MApJY2ggYmluIHNjaG9ja2llcnQhCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBocmhyIChWZWN0b3IsIDI5LiBNYWkgMjAwNiwgMTU6MzA6NTYpOgp+IyEgcm49QmFtYnVsa28gcnQ9MTE0ODkwOTQyOCByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKZGFzIHNwcmljaHQgamEgbnVyIGZ1ZXIgZGljaCwgZGVpbmUgZ3V0ZSBlcnppZWh1bmcgdW5kIApkZWluZW4gcmVpbmVuLCB1bnZlcmRvcmJlbmVuIGNoYXJha3RlciA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhyaHIgKEtudXJwcywgMjkuIE1haSAyMDA2LCAxNTozMjoyNik6Cn4jISBybj1WZWN0b3IgcnQ9MTE0ODkwOTI5MCByZz13aXR6ZQp+IyEgdGlkPTExNDg5MDkyOTAKV28ga29tbXN0IGR1IGVpZ2VudGxpY2ggaGVyLCBkYXNzIGR1IG1pdCBlaW5lbSBCaWVyIGdsdWVja2xpY2ggYmlzdD8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGhyaHIgKFZlY3RvciwgMjkuIE1haSAyMDA2LCAxNTozMzoyMCk6Cn4jISBybj1LbnVycHMgcnQ9MTE0ODkwOTU0NiByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKYXVzIGVpbmVyIHJlZ2lvbiwgaW4gZGVyIGVzIGd1dGVzIGJpZXIgZ2lidCB1bmQgZWlucyBtZWhyIGFscwpkaWNrZSByZWljaHQuIGJlaSBldWNoIGdpYnRzIGphIG51ciB3YXNzZXJwbG9lcnJlIG1pdCBmYXJiZQp1bmQgdXJpbiB2b20gd2lydCA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogaHJociAoQ3JvZnQsIDI5LiBNYWkgMjAwNiwgMTU6MzQ6MDQpOgp+IyEgcm49VmVjdG9yIHJ0PTExNDg5MDk2MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCkVzIGdpYnQgamEgbnVyIHVtIGdsZWljaHplaXRpZyBnbHVlY2tsaWNoLiAgTmljaHQgZGF1ZXJoYWZ0IGdsdWVja2xpY2guCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogaHJociAoS251cnBzLCAyOS4gTWFpIDIwMDYsIDE1OjM1OjU4KToKfiMhIHJuPVZlY3RvciBydD0xMTQ4OTA5NjAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MApKdWh1LCBlaW4gQmllcmZsYW1ld2FyLi4uLgoKQWJlciBuaXggZ2VnZW4gU2NodWx0aGVpc3MsIGphPyBVbmQgc28gZ3V0ZXMgQmllciwgZGFzcyBkYXZvbiBlaW5zIHJlaWNodCwKZ2lidCBlcyBnYXIgbmljaHQuIEVzIHNlaSBkZW5uLCBkdSBiaXN0IGJpc3QgMTIuIF07LT4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGhyaHIgKFZlY3RvciwgMjkuIE1haSAyMDA2LCAxNTozNzowOCk6Cn4jISBybj1WZWN0b3IgcnQ9MTE0ODkwOTYwMCByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKV2lsbHN0IGR1IGdsdWVja2xpY2ggc2VpbiBlaW4gVGFnIC0tLSBCZXRyaW5rZSBkaWNoLgpXaWxsc3QgZHUgZ2x1ZWNrbGljaCBzZWluIGVpbmUgV29jaGUgLS0gU2NobGFjaHRlIGVpbiBTY2h3ZWluLgpXaWxsc3QgZHUgZ2x1ZWNrbGljaCBzZWluIGVpbiBKYWhyIC0tLSBoZWlyYXRlLgpXaWxsc3QgZHUgZ2x1ZWNrbGljaCBzZWluIGVpbiBMZWJlbiAtLS0gd2VyZGUgR2FlcnRuZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBocmhyIChLbnVycHMsIDI5LiBNYWkgMjAwNiwgMTU6Mzg6MDYpOgp+IyEgcm49VmVjdG9yIHJ0PTExNDg5MDk4Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCktvbWlzY2hlIFNhdHpzdGVsbHVuZywga29tbXQgZGFzIGF1Y2ggdm9uIGV1cmVtIEJpZXI/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBocmhyIChHcmltbWJvcm4sIDI5LiBNYWkgMjAwNiwgMTU6Mzg6MjApOgp+IyEgcm49VmVjdG9yIHJ0PTExNDg5MDk4Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCldpbGxzdCBEdSBrb3JyZWt0ZXMgRGV1dHNjaCBzY2hyZWliZW4ga29lbm5lbiwgbWl0IFNhdHpiYXUgdW5kIGFsbGVtIC0gZ2VoIGluCmVpbmVyIFNjaHVsZS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogaHJociAoVmVjdG9yLCAyOS4gTWFpIDIwMDYsIDE1OjM4OjU0KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTQ4OTA5OTAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MAoiZWluZXIgc2NodWxlIj86KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogaHJociAoR3JpbW1ib3JuLCAyOS4gTWFpIDIwMDYsIDE1OjM5OjI5KToKfiMhIHJuPVZlY3RvciBydD0xMTQ4OTA5OTM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MApUamEsIGRhcyBsaWVndCB3b2hsIGFuIGRlbSBlaW5lbiBvZGVyIGFuZGVyZW4gQmVybGluYXVmZW50aGFsdCBpbiBtZWluZXIKSnVnZW5kIC0gZmFsc2NoZSBTY2h1bGUuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGhyaHIgKFZlY3RvciwgMjkuIE1haSAyMDA2LCAxNTozOTo1Myk6Cn4jISBybj1LbnVycHMgcnQ9MTE0ODkwOTg4NiByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKdW5zZXIgYmllciBtdXNzIGVpbmZhY2ggc3RhZXJrZXIgc2Vpbiwgd2VpbCBlcyBoaWVyIGltIHN1ZWRlbgpkaWUgaGFlc3NsaWNoZXJlbiBmcmF1ZW4gZ2lidC4gZGEgbXVzcyBtYW4obikgZHVyY2guLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBocmhyIChIdW1uaSwgMjkuIE1haSAyMDA2LCAxNTo0MDo1MSk6Cn4jISBybj1WZWN0b3IgcnQ9MTE0ODkwOTk5MyByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKQWxzbywgZGEgd28gaWNoIGltIFN1ZWRlbiB3YXIgKEZyZWlidXJnKSBmYW5kIGljaCBkaWUgRnJhdWVuIG5pY2h0IGhhZXNzbGljaGVyCmFscyBpbSBSZXN0IHZvbiBEZXV0c2NobGFuZC4uLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IGhyaHIgKFZlY3RvciwgMjkuIE1haSAyMDA2LCAxNTo0MToyMyk6Cn4jISBybj1IdW1uaSBydD0xMTQ4OTEwMDUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MAouLi53YXMgbnVyIGJld2Vpc3N0IGRhc3MgZHUgaGlucmVpY2hlbmQgdmllbCBiaWVyIHZlcnRyYWVndCBob2hvaG8gLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGhyaHIgKEVsam8sIDI5LiBNYWkgMjAwNiwgMTk6MjY6NTMpOgp+IyEgcm49VmVjdG9yIHJ0PTExNDg5MTAwODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCkVzIGdpYnQgYXVjaCBoaWVyIGltIFN1ZWRlbiBrZWluZSBoYWVzc2xpY2hlbiBGcmF1ZW4sIG51ciBtYW5jaG1hbCB3aXJkIGRlcgpBbGtvaG9sIGtuYXBwLiA7LSkKCk5laW4sIGFsc28gZXMgZ2VodCBkb2NoIG5pY2h0cyB1ZWJlciBlaW4gc2Nob2VuZXMga3VlaGxlcyBIZWZld2VpemVuLCBhYmVyCnNvd2FzIGtlbm50IGRlciBHcm9zc3RlaWwgdm9uIGV1Y2gKUGlscy1VcmluLVdhc3NlcnBsb2VycmUtc2NoaW1wZnQtc2ljaC1CaWVyLVRyaW5rZXJuIGRhIG9iZW4gZG9jaCBnYXIgbmljaHQuCgpTbyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGhyaHIgKFpvb2ssIDI5LiBNYWkgMjAwNiwgMTk6NDQ6MTQpOgp+IyEgcm49RWxqbyBydD0xMTQ4OTIzNjEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MApXZW5uIGRhcyBTY2h3YWJlbmdlc29ja3Mgc2ljaCBzY2hvbiBmdWVyIGRhcyBzdWVkZGV1dHNjaGUKQmllciBzbyBzdGFyayBtYWNodCwgbXVzcyBpY2ggamEgbWFsIG5hY2hmcmFnZW46IEtlbm50IElocgpkZW5uIGF1Y2ggZGFzIHNjaG9lbmUgZnJhZW5raXNjaGUgQmllcj8gCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IGhyaHIgKFZlY3RvciwgMjkuIE1haSAyMDA2LCAxOTo0NToxMCk6Cn4jISBybj1ab29rIHJ0PTExNDg5MjQ2NTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCmZyYW5rZW4gaXN0IGF1ZiBkZXIgYW5kZXJlbiBzZWl0ZSBkZXMgZWlzZXJuZW4gdm9yaGFuZ3MKCnZlY3Rvciwga2VpbiBzY2h3YWJlIChzZWluIHdvbGxlbmQpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogaHJociAoWm9vaywgMjkuIE1haSAyMDA2LCAxOTo0NzowMCk6Cn4jISBybj1WZWN0b3IgcnQ9MTE0ODkyNDcxMCByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKSWNoIGdsYXViLCBEZWluZSBXdXJ6ZWwga29tbXQgc29nYXIgaW0gYWxsc2VpdHMKYmVrYW5udGVuIExpZWQgenVyIHNjaHdhZWJzY2hlbiBFaXNlbmJhaG4gdm9yLCAKVmVjdG9ybGUuIAoKQWhhISBBbHNvIHVlYmVyIGRldXRzY2hlIEJyYXVrdWx0dXIgb2huZSBLZW5udG5pcyBkZXIKZnJhZW5rc2ljaGVuIEJyYXVrdW5zdCB6dSByZWRlbiBpc3Qgd2VpdCB1ZWJlciBhbGxlCkdyZW56ZW4gQXVzZHJ1Y2sgdm9uIG1hbmdlbG5kZXIgU2FjaGtlbm50bmlzISA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBocmhyIChFbGpvLCAyOS4gTWFpIDIwMDYsIDE5OjUwOjQyKToKfiMhIHJuPVpvb2sgcnQ9MTE0ODkyNDgyMCByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKYSkgc2luZCBkYXMgZWluZmFjaCBCYXllcm4sIGRhcyBtdXNzIG5pY2h0IGF1c2VpbmFuZGVya2xhbXVlc2VydCB3ZXJkZW4sIGFsbGVzCmRpZSBzZWxiZW4gQmVyZ2FmZmVuCmIpIFZlY3RvciBpc3QgU2Nod2FiZSEKdW5kIGMpIEhlZmV3ZWl6ZW4sIE9ldHRpbmdlciBvZGVyIEdydWliaW5nZXIsIGRhIGdlaHRzIG5pY2h0cyBkcnVlYmVyLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBocmhyIChWZWN0b3IsIDI5LiBNYWkgMjAwNiwgMTk6NTE6MTIpOgp+IyEgcm49RWxqbyBydD0xMTQ4OTI1MDQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MAo6d2VpbnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogaHJociAoWm9vaywgMjkuIE1haSAyMDA2LCAxOTo1MToyNCk6Cn4jISBybj1WZWN0b3IgcnQ9MTE0ODkyNTA3MiByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKOmZsYXVzY2h0IFZlY3RvciB0cm9lc3RlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogaHJociAoR25vbWUsIDI5LiBNYWkgMjAwNiwgMjA6MjA6NTIpOgp+IyEgcm49RWxqbyBydD0xMTQ4OTI1MDQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MApvZXR0aW5nZXI/Cgp3b2huc3QgZHUgaW4gZGVyIGZhbHNjaGVuIGdlZ2VuZCBvZGVyIGJpc3QgZHUgZWluZmFjaCBudXIgYmV0dGVsYXJtZXIKc3R1ZGVudD8KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogaHJociAoS251cnBzLCAyOS4gTWFpIDIwMDYsIDIwOjIxOjU4KToKfiMhIHJuPUVsam8gcnQ9MTE0ODkyNTA0MiByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKQWxzbyBPZXR0aW5nZXIgaGVpc3N0IGhpZXIgUGVubmVyZ2x1ZWNrLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBocmhyIChHbG9pbnNvbiwgMjkuIE1haSAyMDA2LCAyMDoyNjoxMCk6Cn4jISBybj1LbnVycHMgcnQ9MTE0ODkyNjkxOCByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKT2V0dGluZ2VyIGhhdCBsZXR6dGVzIDI1JSBhbiBVbXNhdHogbWVociBnZW1hY2h0LiBIYXJ0eiBJVi1CaWVyLiBMYXV0IFNwaWVnZWwuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IGhyaHIgKEVsam8sIDI5LiBNYWkgMjAwNiwgMjA6Mzc6MTUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE0ODkyNzE3MCByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKV2VkZXIgbm9jaCBHbm9tZSwgZWluZmFjaCBiZWtlbm5lbmRlciBPZXR0aW5nZXItVHJpbmtlci4gOi0pCihOYWphLCB6dW1pbmRlc3QgYWIgdW5kIGFuLCBlaW5lbSBIZWZld2VpemVuIGthbm4gZGFzIEV4cG9ydCBlaW5mYWNoIG5pY2h0IGRhcwpXYXNzZXIgcmVpY2hlbikKCkFiZXIgT2V0dGluZ2VyIHNjaHJlaWJ0IHNlaXQgSmFocmVuIGd1dGUgWmFobGVuLCBrZWluZSBXZXJidW5nLCBiaWxsaWdlClByZWlzZSwgdHJvdHpkZW0gZ3V0ZXMgQmllciwgd2llc28gYWxzbyBuaWNodD8gRGVyIFJ1ZiBpc3QgbGVpZGVyIHp1IHNjaGxlY2h0LgpXaWV2aWVsIE9ldHRpbmdlciBoYXN0IER1IGluIERlaW5lbSBMZWJlbiBkZW5uIHNjaG9uIGdldHJ1bmtlbiwgS251cnBzLCB3ZW5uCkR1IGhpZXIgc2Nob24gZGFzIEJpZXIgc28gYmV6ZWljaG5lc3QgKEphLCBpY2ggd2Vpc3MgaGFzdCBEdSBnYXIgbmljaHQsIGhhc3QKbnVyIHppdGllcnQsIHVzdywgRHUgZGVua3N0IGRhcyBzZWxiZSBhYmVyIHVlYmVyIE9ldHRpbmdlci4gOy0pICkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBocmhyIChHbm9tZSwgMjkuIE1haSAyMDA2LCAyMDo0NjozMik6Cn4jISBybj1FbGpvIHJ0PTExNDg5Mjc4MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCm5hamEsIGljaCBtdXNzIG9ldHRpbmdlciB6dWd1dGUgaGFsdGVuLCBkYXNzIGRhcyBtYWx6YmllciB2b24gZGVyIGZpcm1hCmdhciBuaWNodCBtYWwgc2NobGVjaHQgc2NobWVja3QuIHNjaG9lbiBzdWVmZmlnLgphYmVyIGRhcyBwaWxzPyAqc2NodWV0dGVsKgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBocmhyIChFbGpvLCAyOS4gTWFpIDIwMDYsIDIwOjQ5OjAyKToKfiMhIHJuPUdub21lIHJ0PTExNDg5MjgzOTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwClNvIHNjaGxlY2h0IGdlaHRzIHVucyBpbiBEIGF1Y2ggbm9jaCBuaWNodCwgZGFzcyBPZXR0aW5nZXIgc2VpdCBKYWhyZW4gZGFzCm1laXN0Z2V0cnVua2VuZSBCaWVyIGlzdCwgd2VubiBlcyBlaW4gJ1Blbm5lcmdsdWVjaycgd2FlcmUuCkVyc3QgdHJpbmtlbiwgZGFubiByZWRlbi4gOi0pCgpVbmQgd2VubiBpaHIgd29sbHQsIG1hY2h0IG1pdCBldXJlbiBGcmV1bmRlbiAoRGllIHVlYmVyIE9ldHRpbmdlciBsYWVzdGVybikKZWluZW4gVGVzdDogT2V0dGluZ2VyIGluIEdsYWVzZXJuIHNlcnZpZXJlbiB1bmQgbmFjaCAyLTMgUnVuZGVuIGZyYWdlbiwgd2llIGVzCnNjaG1lY2t0LiwgaWhyIHdlcmRldCBldWNoIHd1bmRlcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogaHJociAoVmVjdG9yLCAyOS4gTWFpIDIwMDYsIDIwOjUwOjA0KToKfiMhIHJuPUVsam8gcnQ9MTE0ODkyODU0MiByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKZnVlciByZV4xMDAwIGdlYiBpY2ggbiBmYXNzIG9ldHRpbmdlciBhdXMgaW4gdWxtLCAKaW5jbHVzaXZlIHJ1ZGVsbXVkZGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IGhyaHIgKEtudXJwcywgMjkuIE1haSAyMDA2LCAyMDo1MDoxNik6Cn4jISBybj1FbGpvIHJ0PTExNDg5Mjc4MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCkphLCBkaWUgQXVzc2FnZSBzcGllZ2VsdCBtZWluZSBNZWludW5nIHp1IE9ldHRpbmdlciB3aWVkZXIuIE9ldHRpbmdlciBpc3QgZGFzCkJpZXIsIGRhcyBtYW4gYW4gZGVyIFRhbmtlIGltIEthc3RlbiB1bSAzOjAwIGthdWZ0LCB3ZW5uIGRpZSBQYXJ0eSBub2NoIG11bnRlcgppc3QsIGRpZSBHZXNjaG1hY2tzbmVydmVuIGhpbnJlaWNoZW5kIGJldGFldWJ0IHNpbmQsIGFiZXIgbm9jaCB3ZWl0ZXJnZXRydW5rZW4Kd2VyZGVuIHNvbGwuLi4gRWluZSBQYXJ0eSBtaXQgT2V0dGluZ2VyIHp1IGJlZ2lubmVuLCBpc3QgZGVyIGJlc3RlIFdlZywgd2VubgptYW4gdm9yIE1pdHRlcm5hY2h0IGFscyBHYXN0Z2ViZXIgc2NobGFmZW4gd2lsbC4uLiBdOy0+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogaHJociAoS251cnBzLCAyOS4gTWFpIDIwMDYsIDIwOjU5OjU3KToKfiMhIHJuPUVsam8gcnQ9MTE0ODkyODU0MiByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKQWNoamEsIGh0dHA6Ly93d3cuZG9veW9vLmRlL2JpZXIvb2V0dGluZ2VyLXBpbHMvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogaHJociAoQWxib2luLCAyOS4gTWFpIDIwMDYsIDIyOjI1OjI0KToKfiMhIHJuPUtudXJwcyBydD0xMTQ4OTI5MTk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MApJY2ggZ2xhdWJlIGltIE9zdGVuIGlzdCBuaWNodCBPZXR0aW5nZXIgZGFzIFBlbm5lcmdsdWVjayBzb25kZXJuIFN0ZXJuYnVyZ2VyLgpQcm9zdCEKQWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBocmhyIChIdW1uaSwgMjkuIE1haSAyMDA2LCAyMjoyNjoyOCk6Cn4jISBybj1BbGJvaW4gcnQ9MTE0ODkzNDMyNCByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKTmFqYS4gT2V0dGluZ2VyIGlzdCB3aXJrbGljaCBuaWNodCBtZWluIERpbmcsIGFiZXIgZXMgZ2lidCBhdWNoIGd1dGUsIG5pY2h0IHNvCnRldXJlIEJpZXJlLiBIYW5zYSBpc3Qgei5CLiBkZXV0bGljaCBiZXNzZXIgYWxzIHNlaW4gUnVmLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBocmhyIChDcm9mdCwgMjkuIE1haSAyMDA2LCAyMzoyMDo0Mik6Cn4jISBybj1IdW1uaSBydD0xMTQ4OTM0Mzg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MApXYXIgT2V0dGluZ2VyIG5pY2h0IGRhcyBCaWVyIGRhcyBuYWNoIDEwbWluIGF1dG9tYXRpc2NoIGFiZ2VzdGFuZGVuIHNjaG1lY2t0PwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBocmhyIChIaWdobGFuZGVyLCAyOS4gTWFpIDIwMDYsIDIzOjIyOjA4KToKfiMhIHJuPUNyb2Z0IHJ0PTExNDg5Mzc2NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCklzdCBkYXMgbmljaHQgZGFzIHNvZ2VuYW5udGUgS29lbHNjaCwgd2Vzd2VlbiBkYXMgYXVjaCBudXIgaW4KRmluZ2VyaHV0Z3JvZXNzZSBzZXJ2aWVydCB3aXJkPyA6KQoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogaHJociAoSGlnaGxhbmRlciwgMjkuIE1haSAyMDA2LCAyMzoyMzowMCk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTExNDg5Mzc3Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCk5lYmVuYmVpIHZlcnNjaHdlbmRlbiB3aXIgaGllciBrb3N0YmFyZSBSZWhlLgoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogaHJociAoR2xvaW5zb24sIDI5LiBNYWkgMjAwNiwgMjM6MjM6MjApOgp+IyEgcm49SGlnaGxhbmRlciBydD0xMTQ4OTM3NzgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MApBYmVyIGVzIGdpYnQgZWluIEZhc3MgQmllciBmdWVyIG51ciAxayBBcnRpa2VsLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBocmhyIChIdXJheHByYXgsIDI5LiBNYWkgMjAwNiwgMjM6MzQ6MjEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE0ODkzNzgwMCByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKTWFjaHQgbWFsIGVpbmVuIEJsaW5kdGVzdCB1bmQgc2NoYXV0IG9iIGlociBkYSBub2NoIE9ldHRpbmdlciB2b24gIE1hcmtlIFgKdW50ZXJzY2hlaWRlbiBrb2VubnQuIEljaCBnbGF1YmUgbmljaHQgZGFzcyBpY2ggZGEgZ3V0IGFic2NobmVpZGVuIHd1ZXJkZS4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IGhyaHIgKE11YWRpYiwgMjkuIE1haSAyMDA2LCAyMzo0MjowMyk6Cn4jISBybj1FbGpvIHJ0PTExNDg5Mjg1NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCndvaGVyIGtvbW10IGRpZSBhdXNzYWdlICJtZWlzdGdldHJ1bmtlbmUgYmllciIgPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6IGhyaHIgKEFsYm9pbiwgMjkuIE1haSAyMDA2LCAyMzo0Mjo1Myk6Cn4jISBybj1IdXJheHByYXggcnQ9MTE0ODkzODQ2MSByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKd2FlcmUgbmUgZ3V0ZSBJZGVlIGZ1ZXIgZGFzIFNvbW1lcmNhbXAgaW4gQnJpZXNlbHRyaW0uIERpZXNtYWwga2VpbgpXYXNzZXJ3ZXR0c2F1ZmVuIG1pdCBIdW1uaSwgc29uZGVybiBhbGxlIHRyZXRlbiB6dW0gQkJCIGFuIChCcmllc2VsYW5nZXIgQmxpbmQKQmllcnNhdWZlbikKYWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBocmhyIChDcm9mdCwgMjkuIE1haSAyMDA2LCAyMzo0ODoyMSk6Cn4jISBybj1NdWFkaWIgcnQ9MTE0ODkzODkyMyByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKU3RhbmQgd29obCBpbSBTcGllZ2VsICgxMy8yMDA1KToKIkRhcyB2aWVsZW4gbm9jaCBpbW1lciB1bmJla2FubnRlIEJpZXIgaXN0IGluendpc2NoZW4gYW4gYWxsIGRlbgpFZGVsLVBpbHNuZXJuIHZvcmJlaWdlem9nZW4sIGRpZSBpbiBkZW4gbmV1bnppZ2VyIEphaHJlbiBtaXQKZ2V3YWx0aWdlbSBXZXJiZWF1ZndhbmQgZGVuIE1hcmt0IGVyb2JlcnRlbi4gSmV0enQsIGluIFplaXRlbiB2b24KIkdlaXogaXN0IGdlaWwhIiB1bmQgSGFydHogSVYsIGlzdCBPZXR0aW5nZXIga2xhbW1oZWltbGljaCBkaWUgTnVtbWVyCmVpbnMgZ2V3b3JkZW4sIGRhcyBtZWlzdHZlcmthdWZ0ZSBCaWVyIGRlciBSZXB1Ymxpay4uLi4gQXVmIFJla2xhbWUKdmVyemljaHRldCBkYXMgVW50ZXJuZWhtZW4ga29tcGxldHQuIEdlYXJiZWl0ZXQgd2lyZCBpbiBtb2Rlcm5lbgpBbmxhZ2VuIHJ1bmQgdW0gZGllIFVociwgaW4gZHJlaSBTY2hpY2h0ZW4uIgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBocmhyIChHbG9pbnNvbiwgMjkuIE1haSAyMDA2LCAyMzo0OTo1OSk6Cn4jISBybj1Dcm9mdCBydD0xMTQ4OTM5MzAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MApEYW5rZSBmdWVyIGRpZSBSZWNoZXJjaGUuIFNhY2hzZW5nb2xkIHd1ZXJkZSBpY2ggdWVicmlnZW5zIHZvbiBCaWVyCnVudGVyc2NoZWlkZW4ga29lbm5lbi4gT2V0dGluZ2VyIGtlbm4gaWNoIG5pY2h0IGd1dCBnZW51Zy4gVW5kIEZyZWliZXJnZXIKd3VyZGUgdW5sYWVuZ3N0IHZvbiBSYWRlYmVyZ2VyIGF1Zmdla2F1ZnQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IGhyaHIgKENyb2Z0LCAyOS4gTWFpIDIwMDYsIDIzOjUzOjAyKToKfiMhIHJuPUdsb2luc29uIHJ0PTExNDg5MzkzOTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCk9kZXIgRm9jdXMgNTEvMjAwNDoKR3VlbnRoZXIgS29sbG1hciwgNjcsIHN0ZWh0IGVuZGxpY2ggZ2FueiBvYmVuOiBTZWluZSBQcml2YXRicmF1ZXJlaQpPRVRUSU5HRVIgdmVrYXVmdGUgMjAwNCBhbSBtZWlzdGVuIEJpZXIgaW4gRGV1dHNjaGxhbmQuIFp1bSBlcnN0ZW4gTWFsCnN0ZWlndCBkYW1pdCBlaW5lIE5pZWRyaWdwcmVpc21hcmtlIGF1ZiBkZW4gVGhyb24gZGVzIGluc2dlc2FtdApydWVja2xhZXVmaWdlbiBNYXJrdGVzLiAgRGllIEJheWVybiB2ZXJ6ZWljaG5ldGVuIG5hY2ggZWlnZW5lbiBBbmdhYmVuCm1pdCBpaHJlbiAxNiB2ZXJzY2hpZWRlbmVuIFNvcnRlbiBpbnNnZXNhbXQgZWluZW4gWnV3YWNocyBhdWYgNiw0Ck1pbGxpb25lbiBIZWt0b2xpdGVyIChwbHVzIDIzIFByb3plbnQpIC0gZGVyIE1hcmt0YW50ZWlsIGJldHJhZWd0IDcsOQpQcm96ZW50LiBEZXIgYWJnZWxvZXN0ZSBCcmFuY2hlbnByaW11cyBLcm9tYmFjaGVyIGthbm4gc2ljaCBuYWNoCmFrdHVlbGxlbiBNYXJrdGFuYWx5c2VuIGRhbWl0IHRyb2VzdGVuLCBub2NoIGltbWVyIERldXRzY2hsYW5kcwpiZWxpZWJ0ZXN0ZXMgUGlscyB6dSBicmF1ZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IGhyaHIgKE11YWRpYiwgMjkuIE1haSAyMDA2LCAyMzo1Mzo0Mik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTQ4OTM5Mzk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MAp1bmQgZ2lidCBlcyBkYSBhdWNoIHF1ZWxsZW4/CmRlbSBzcGllZ2VsIHRyYXUgaWNoIHNvd2VpdCBpY2ggZGllIG9ubGluZWF1c2dhYmUgd2VyZmVuIGthbm4KdW5kIGhhbnNhIGlzdCBkb2NoIG9ldGtlciBiaWVyLCBvZGVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IGhyaHIgKE11YWRpYiwgMjkuIE1haSAyMDA2LCAyMzo1NDo0Mik6Cn4jISBybj1Dcm9mdCBydD0xMTQ4OTM5NTgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MAphaCwgZXMgZ2VodCBuYWNoIG1hcmtlLCBuaWNodCBrb256ZXJuCmRhcyBpc3QgamEgd2FzIGFuZGVyZXMgZGFubgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IGhyaHIgKEtudXJwcywgMzAuIE1haSAyMDA2LCAwMDozNzozNCk6Cn4jISBybj1BbGJvaW4gcnQ9MTE0ODkzNDMyNCByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKQXVjaCB3ZW5uIGljaCBqZXR6dCBIYXVlIGJla29tbWUsIFN0ZXJuYnVyZyBFeHBvcnQgaXN0IGVpbmUgV29obHRhdCBnZWdlbnVlYmVyCmplZGVtIE9ldHRpbmdlci4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IGhyaHIgKEJvaW5nLCAzMC4gTWFpIDIwMDYsIDA5OjA0OjAzKToKfiMhIHJuPUtudXJwcyBydD0xMTQ4OTQyMjU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MApVbmQgaWNoIGRhY2h0ZSBPZXR0aW5nZXIgd2FlcmUgdW5zZXIgTWluaXN0ZXJwcmFlc2lkZW50IC4uLiB3aWUgbWFuIApzaWNoIGRvY2ggdGFldXNjaGVuIGthbm4uIDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBocmhyIChab29rLCAzMC4gTWFpIDIwMDYsIDA5OjIxOjMzKToKfiMhIHJuPUh1cmF4cHJheCBydD0xMTQ4OTM4NDYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MApEaWUgbWVpc3RlbiB3dWVyZGVuIGJlaSBlaW5lbSBCaWVyLUJsaW5kdGVzdCAoYWxzbyB3ZW5uIG1hbiBub2NoIG5pY2h0IG1hbApkaWUgRmFyYmUgc2VoZW4ga2Fubikgdm9sbCBkYW5lYmVuIGxpZWdlbiwgaW5zYi4gd2VubiBkYXMgQmllciBub2NoIGthbHQKaXN0LiA6KSAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogaHJociAoRGFya2xvciwgMzAuIE1haSAyMDA2LCAxMTowNToyNSk6Cn4jISBybj1ab29rIHJ0PTExNDg5NzM2OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCkJpZXIuLi4gYnJycnJyLgoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IGhyaHIgKFpvb2ssIDMwLiBNYWkgMjAwNiwgMTE6NTk6NDYpOgp+IyEgcm49RGFya2xvciBydD0xMTQ4OTc5OTI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MAppY2ggZW1wZmVobGUgenVtIHRoZW1lIGRlbiBoZXV0ZSBhdWYgbWVpbmVtIHNjaHJlaWJ0aXNjaCBnZWxhbmRldGVuCmFydGlrZWwKCldpbGxpYW0gSmFtZXMgQWRhbXMsIEJlZXIgaW4gR2VybWFueSBhbmQgdGhlIFVuaXRlZCBTdGF0ZXMsIEpvdXJuYWwKb2YgRWNvbm9taWMgUGVyc3BlY3RpdmVzLCBWb2wuIDIwLCBOdW1iZXIgMSwgV2ludGVyIDIwMDYsIHBwLiAxODktMjA1Cgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IGhyaHIgKFRhcmFuaXMsIDMwLiBNYWkgMjAwNiwgMTI6MDI6MzUpOgp+IyEgcm49Wm9vayBydD0xMTQ4OTgzMTg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MApTby4gSWNoIHdlcmRlIGRhbm4gbWFsIGVzc2VuIGdlaGVuLgpFcnN0YXVubGljaGVyd2Vpc2Ugd2FyIGhldXQgbm9jaCBrZWluIEtvbGxlZ2UgbWl0IFBDLVByb2JsZW1lbiBkYS4uLgpUYXJhbmlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogaHJociAoRGFya2xvciwgMzAuIE1haSAyMDA2LCAxMjoyMzoxOCk6Cn4jISBybj1UYXJhbmlzIHJ0PTExNDg5ODMzNTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCkZlaGx0IGRhIGRhcyBNZWdhIGluIFNjaG1hcnJuPwoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IGhyaHIgKE11YWRpYiwgMzAuIE1haSAyMDA2LCAxMzo1Nzo0MSk6Cn4jISBybj1EYXJrbG9yIHJ0PTExNDg5ODQ1OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCndhcyBsYW5kZW4gZGlyIGRlbm4gZnVlciBhcnRpa2VsIGF1ZiBkZW0gc2NocmVpYnRpc2NoPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IGhyaHIgKFpvb2ssIDMwLiBNYWkgMjAwNiwgMTU6NDY6NDEpOgp+IyEgcm49TXVhZGliIHJ0PTExNDg5OTAyNjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCmZyYWdzdCBkdSBtaWNoPwp6b29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzM6IGhyaHIgKE11YWRpYiwgMzAuIE1haSAyMDA2LCAxNjo0ODowMik6Cn4jISBybj1ab29rIHJ0PTExNDg5OTY4MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCmphCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNDogaHJociAoWm9vaywgMzAuIE1haSAyMDA2LCAxNzoyOTo1OSk6Cn4jISBybj1NdWFkaWIgcnQ9MTE0OTAwMDQ4MiByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKRGFzIGlzdCBlaW5lIGRlciBaZWl0c2NocmlmdGVuIGRlciBBbWVyaWNhbiBFY29ub21pYyBBc3NvY2lhdGlvbiwgZGVyZW4KTWl0Z2xpZWQgaWNoIGJpbiB1bmQgZGVyZW4gWmVpdHNjaHJpZnRlbiByZWdlbG1hZXNzaWcgYXVmIG1laW5lbSBTY2hyZWlidGlzY2gKbGFuZGVuLiBEYXMgaXN0IHNvenVzYWdlbiBkYXMgTWVtYmVyc2hpcCB2YWx1ZS4gOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNTogaHJociAoTXVhZGliLCAzMC4gTWFpIDIwMDYsIDE3OjQzOjE5KToKfiMhIHJuPVpvb2sgcnQ9MTE0OTAwMjk5OSByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKZGFzIGlzdCBqYSBob2NoaW50ZXJlc3NhbnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM2OiBocmhyIChab29rLCAzMS4gTWFpIDIwMDYsIDE3OjU4OjM1KToKfiMhIHJuPU11YWRpYiBydD0xMTQ5MDAzNzk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MApsaWVzdCBkdSBtZWdhc2NobWFycm4sIGtlc3NhPwp6b29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzc6IGhyaHIgKEtlc3NhLCAzMS4gTWFpIDIwMDYsIDE3OjU4OjU1KToKfiMhIHJuPVpvb2sgcnQ9MTE0OTA5MTExNSByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKbmVpbiwgem9vayA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzg6IGhyaHIgKFpvb2ssIDMxLiBNYWkgMjAwNiwgMTc6NTk6MDMpOgp+IyEgcm49S2Vzc2EgcnQ9MTE0OTA5MTEzNSByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKZGFubiBtdXNzIGljaCB4LXBvc3Rlbi4Kem9vaywKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM5OiBocmhyIChab29rLCAzMS4gTWFpIDIwMDYsIDE3OjU5OjI1KToKfiMhIHJuPVpvb2sgcnQ9MTE0OTA5MTE0MyByZz1zY2htYXJybgp+IyEgdGlkPTExNDg5MDkyOTAKeC1wb3N0OgoKLS0KUmVeMTEzNjE3OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChab29rLCAzMS4gTWFpIDIwMDYsIDE3OjU4OjE1KToKW0JlenVnOiBBcnRpa2VsIDE3NCB2b24gR3JpbW1ib3JuIHZvbSAzMS4gTWFpIDIwMDYsIDE3OjU2OjAxXQoKSWNoIGdlYmUgenUgYmVkZW5rZW4sIGRhc3MgenVtaW5kZXN0IHZpcnR1ZWxsIGF1ZiBLZXNzYXMgU2NocmVpYnRpc2NoCm51biBhdWNoIGRlciBCaWVyLUFydGlrZWwgenUgbGllZ2VuIGdla29tbWVuIGlzdC4KClpvb2suCi0tCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDA6IGhyaHIgKE11YWRpYiwgMzEuIE1haSAyMDA2LCAyMzo0MjozOCk6Cn4jISBybj1ab29rIHJ0PTExNDkwOTExNjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCmVsZW5kZXIgY3Jvc3Nwb3N0ZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB0aXBwZ2VtZWluc2NoYWZ0IHp1ciB3bSAoR25vbWUsICAxLiBKdW4gMjAwNiwgMTU6MDU6NTQpOgp+IyEgcm49TGVpYmkgcnQ9MTE0OTE2MTYwNCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExNDkxNjE2MDQKZnVzc2JhbGxnb3R0PwoKYWJlci4uLiBhYmVyLi4uIGRhcyBpc3QgZG9jaCBzY2hvbiBNRUlOIHBhc3N3b3J0LgptZW5uby4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHRpcHBnZW1laW5zY2hhZnQgenVyIHdtIChCYW1idWxrbywgIDEuIEp1biAyMDA2LCAxNTowNjo1NCk6Cn4jISBybj1Hbm9tZSBydD0xMTQ5MTY3MTU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0OTE2MTYwNApXYXJ1bSB2ZXJ3ZW5kZXQgaWhyIGFsbGUgbWVpbmVuIFNwaXR6bmFtZW4gYWxzIFBhc3N3b3J0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBKYXBhbnMgRmFucyAoQmFtYnVsa28sICAxLiBKdW4gMjAwNiwgMTU6MjI6MTkpOgp+IyEgcm49QWxib2luIHJ0PTExNDkxNjc5OTcgcmc9d2l0emUKfiMhIHRpZD0xMTQ5MTYzNDU1CldlaXNzIGljaCBhdWNoIG5pY2h0LiBNdXNzdCBEdSBkZW4gQXV0aG9yIGZyYWdlbi4gOikKCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBJbnRlcmVzc2FudGVzIFdlYmRlc2lnbiAoQmFtYnVsa28sICAxLiBKdW4gMjAwNiwgMTk6MjY6MDkpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTExNDkxODI3MjEgcmc9d3d3Cn4jISB0aWQ9MTE0OTE4MTI0MwpJY2ggZmluZGUgZXMgYXVjaCB3ZWRlciBiZXNvbmRlcnMgZ3V0LCBub2NoIGJlc29uZGVycyBzY2hsZWNodC4uLi4uSXJnZW5kd2llCm5vcm1hbC4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBJbnRlcmVzc2FudGVzIFdlYmRlc2lnbiAoTXVhZGliLCAgMS4gSnVuIDIwMDYsIDE5OjU3OjEzKToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTExNDkxODI3Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ5MTgxMjQzCnNlaXRlIGdlb2VmZm5ldCB1bmQgYW5nZXNjaGF1dApuZXR0CmFiZXIgaWNoIGthdWZlIG1pciBkZW5vY2gga2VpbmUgb3JnZWwKc29ycnkgb2IgZGVyIHByb3Zpc2lvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB0aXBwZ2VtZWluc2NoYWZ0IHp1ciB3bSAoT3JrdG9ldGVyLCAgMS4gSnVuIDIwMDYsIDIwOjE2OjA1KToKfiMhIHJuPUdub21lIHJ0PTExNDkxNjcxNTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ5MTYxNjA0CldBUz8hIElociBoYWJ0IGRhcyBnbGVpY2hlIFBhc3N3b3J0PyBXZXIgd2VpcyB3ZXIgbm9jaCBhbGxlcz8gRGFzIGlzdCBkb2NoIGdhcgpuaWNodCBzaWNoZXIsIGRhcyBTeXN0ZW0hCgpPcmtULCBpbiBkZXIgcmljaHRpZ2VuIFJ1YnJpay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBocmhyIChLZWxseWJ1bmR5LCAgMS4gSnVuIDIwMDYsIDIxOjA1OjEwKToKfiMhIHJuPUdub21lIHJ0PTExNDg5MjgzOTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCkljaCBrZW5uZSBkYSBuZW4gU3BlemksIGRlciBoYXQgZGVuIEdlaXogenVyIEt1bnN0Zm9ybSBlcmhvYmVuLiBEZXIgc2FldWZ0IG51cgpPZXR0aW5nZXIsIGJlaSBkZW0gZGFzIFZlcmZhbGxzZGF0dW0gYWJnZWxhdWZlbiBpc3QsIGtyaWVjaHQgZXIgYmlsbGlnZXIuIFVuZApicmluZ3QgZGFzIFpldWcgbm9jaCBtaXQgaW4gZGllIEVpbnNjaGxhZWdpZ2VuIFN0dWRlbnRlbndvaG5oZWltYmFycywgdW1zIGRvcnQKenUgc2F1ZmVuLiBTZWluIFNwaXR6bmFtZSBpc3QgZGVtenVmb2xnZSBhdWNoIERyLiBPZXR0aW5nZXIgOy0pCktlbGx5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogaHJociAoSGlnaGxhbmRlciwgIDEuIEp1biAyMDA2LCAyMTowNjoxMik6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTExNDkxODg3MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ4OTA5MjkwCkRhIGRhcmYgYWJlciBrZWluZXIgZGVuIEhhZW5kbGVyIGRhYmVpIGVyd2lzY2hlbiA6KQoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogaHJociAoSHVtbmksICAxLiBKdW4gMjAwNiwgMjE6MDk6NDIpOgp+IyEgcm49SGlnaGxhbmRlciBydD0xMTQ5MTg4NzcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0ODkwOTI5MApXaWVzbz8gV2VubiBkYXMgWmV1ZyBhYmdlbGF1ZmVuIGlzdCB1bmQgZGVyIEhhZW5kbGVyIERpciBkYXMgYWxzIGFiZ2VsYXVmZW5lcwpCaWVyIHZlcmthdWZ0IChkZXV0bGljaCBnZWtlbm56ZWljaG5ldCkgaXN0IGRhcyBkb2NoIGxlZ2FsLCBkYWNodGUgaWNoPwoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnZlcndpcnJ0PyAoR25vbWUsICAyLiBKdW4gMjAwNiwgMDA6MjA6MTgpOgpEZWluIEZyZXVuZCBNZXNpcmlpIHdpbmt0IERpciBhdXMgZGVyIEZlcm5lIHp1LiAKRGVpbiBGcmV1bmQgTWVzaXJpaSB0ZWlsdCBEaXIgbWl0OiBhZWhtIGljaCB3b2xsdGUgSHVtbmkgd2lrZW4gOikKRGVpbiBGcmV1bmQgTWVzaXJpaSB3aW5rdCBNaXJpbCBhdXMgZGVyIEZlcm5lIHp1LgoKbmFqYSwgZmFzdC4uLiA7KQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQMlAgQm9yZGVyIFN1cnZlaWxsYW5jZSAoT3JrdG9ldGVyLCAgMi4gSnVuIDIwMDYsIDE0OjMyOjE3KToKfiMhIG9uPU9ya3RvZXRlciBvdD0xMTQ5MjUxNDg5IG9nPXd3dwp+IyEgcm49S251cnBzIHJ0PTExNDkyNTEwMDMgcmc9d3d3Cn4jISB0aWQ9MTE0OTI1MTAwMwpDb29vb29sISBGZWhsZW4gbnVyIG5vY2ggV2FmZmVuIGRpZSBtYW4gcmVtb3RlIGVpbnNldHplbiBrYW5uIHVuZCBlcyBpc3QgREFTCkJhbGxlcnNwaWVsLi4gZGEgd3VlcmRlbiBzaWNoZXIgdmllbGUgTGV1dGUgZWluZSBNRU5HRSBHZWxkIGZ1ZXIgemFobGVuLCBkYXMKbWl0c3BpZWxlbiB6dSBrb2VubmVuLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQmFtYnVsa28sICAyLiBKdW4gMjAwNiwgMTc6Mzc6MzEpOgpCaW5nb2JvbmdvIHJ1ZnQ6IGhpbGZlLCBrZW5uIGRpZSB2ZXJkYW1tdGUgc3ludGF4IG5pY2h0LgpTYW5hYmVsbGUgcnVmdDogd2lyIGhhYmVuIGRvY2ggYWxsZSB1bnNlcmUgcHJvYmxlbWUgOykKQmluZ29ib25nbyBydWZ0OiBkaWVzZXMgaXN0IHRvZWRsaWNoIGFsc28gc2NobmVsbCA6RCBiaXR0ZSA6RApNYWhhcmV0IHJ1ZnQ6IERpZSBTeW50YXggaXN0IGdhbnogZWluZmFjaDogLWIKW1RvZDpMYXJzXSBFaW4gVmVudXNhYmVudGV1cmVyZmFsbGUgaGF0IGdlcmFkZSBCaW5nb2JvbmdvIHVtZ2VicmFjaHQuCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoQ3JvZnQsICAyLiBKdW4gMjAwNiwgMTc6NDM6MTcpOgp+IyEgcm49QmFtYnVsa28gcnQ9MTE0OTI2MjY1MSByZz1zY2htYXJybgp+IyEgdGlkPTExNDkyNjI2NTEKTWl0CltUb2Q6TGFyc10gRWluIFZlbnVzYWJlbnRldXJlcmZhbGxlIGhhdCBnZXJhZGUgQmluZ29ib25nbyB1bWdlYnJhY2h0LgpbLi5dCltCZWlsZWlkOkJpbmdvYm9uZ29dIGtlbm50IHdlciBkaWVzZW4gdG9kPwpkYXZvciB3aXJrdCBkYXMgbmljaHQgbWVociBuYWNoIEZMVyAsLSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBWZXRvLiAoQ3JvZnQsICAzLiBKdW4gMjAwNiwgMTc6NTU6MTcpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMTQ5MzQ5OTE3IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTE0OTI4NzM2OApGdWVyIGRhcyBWZXRvLCBvZGVyIGZ1ZXIgZGllIFNhY2hlIGdlZ2VuIGRpZSBWZXRvIGVpbmdlbGVndCB3aXJkPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFZldG8uIChLZWxseWJ1bmR5LCAgMy4gSnVuIDIwMDYsIDE3OjU4OjU5KToKfiMhIHJuPUNyb2Z0IHJ0PTExNDkzNTAxMTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ5Mjg3MzY4CkRhZnVlciB1bmQgZGFmdWVyLiAqa29wZmtyYXR6KiBhZWhoaC4uLiB3b2Z1ZXI/IT8/CioKKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVmV0by4gKFZhbmlvbiwgIDMuIEp1biAyMDA2LCAxODozMDo0NSk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTExNDkzNTAzMzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ5Mjg3MzY4ClVudGVyc3R1ZXR6IGVpbmZhY2ggbWVpbiBWZXRvLiBJcyBiZXN0aW1tdCBkYXMgYmVzdGUuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVmV0by4gKENyb2Z0LCAgMy4gSnVuIDIwMDYsIDE4OjMyOjU2KToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTE0OTM1MDMzOSByZz1zY2htYXJybgp+IyEgdGlkPTExNDkyODczNjgKRGFzIHdpZGVyc3ByaWNodCBzaWNoLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnRzIHRzIHRzIChOaXp6bCwgIDMuIEp1biAyMDA2LCAxOToxNzoyMik6CiogTVBBOiBOZXVlciBBcnRpa2VsIHZvbiBNdWFkaWIgaW4gUnVicmlrICJ3aXR6ZSIuCgpQbG9ldHpsaWNoIGxldWNodGV0IGRhcyBGZXVlcmFtdWxldHQgZ3JlbGwgYXVmLiBEdSB3aXJzdCB2b24gZWluZXIgbGV1Y2h0ZW5kZW4KQXVyYSBlaW5nZWh1ZWxsdC4gQWxzIGRpZSBBdXJhIGVybGlzY2h0LCBmdWVobHN0IGR1IGRpY2ggc2VociB2aWVsIGJlc3Nlci4KCmVuZGxpY2ggbWFsIGVpbiBndXRlciB3aXR6IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCaWVyYmF1Y2ggZGFuayBPZXR0aW5nZXI/IChSZWdlbnNjaGVpbiwgIDQuIEp1biAyMDA2LCAxMzozNTo1OCk6CkhpZXIgZWluIEFydGlrZWwgenVtIFRoZW1hIEJpZXJiYXVjaCBkYW5rIE9ldHRpbmdlcgpodHRwOi8vd3d3LmtsaWNrYnJldHQuZGUvP3A9MjQKCkdydWVzc2UKUmVnZW5zY2hlaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoTWlyaWwsICA2LiBKdW4gMjAwNiwgMjI6MzM6MjkpOgo+QW5keSBzYWd0OiBNaXJpbCwga2FubnN0IER1IG1pY2ggbWFsIHZvbSBIYWxzd2VoIGJlZnJlaWVuPwogIC4uLi4uQ2hhb3MvRXhwbG9zaW9uLi4uIER1Li4uLi4uLi4uLi4gOiBBbmR5Li4uLi4uLi4uICoqKioqKioqIC0+IHNlaHIgaGFydApBbmR5IGZhZWxsdCB0b3QgenUgQm9kZW4uCgpNaXJpbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHYXN0Z2VzY2hlbmtlLiBFcm5zdGhhZnQuIChSb25kYSwgIDcuIEp1biAyMDA2LCAyMzowMDo0Nik6Cn4jISBybj1NdWFkaWIgcnQ9MTE0OTcxMzkyNiByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMTQ5NzEzMzUzClNhZyBtaXIgYml0dGUgbmljaHQsIGRhc3MgZGllIGluIEluZGllbiBEYW5pZWwtS3VlYmVsYm9lY2sgaHVsZGlnZW4/IQoKUm9uZGEgKkt1ZWhlLCBvay4gQWJlciBHdXJrZW4tRGFuaWVsPyEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQcmVpcyBkZXIgU2VsYnN0cmVpbmthcm5hdGlvbiAoT2dhciwgIDguIEp1biAyMDA2LCAwMDowNjozMyk6ClR1dCBtaXIgamEgbGVpZCBmdWVyIFRyaWNrLCBhYmVyIC4uLgoKRHUgYmVzY2hsaWVzc3QgRGljaCBqZXR6dCBzZWxic3QgenUgcmVpbmthcm5pZXJlbiEKCkR1IHNjaGxpZXNzdCBkaWUgQXVnZW4hCgpLb256ZW50cmF0aW9uIQoKV293LCBlcyBrbGFwcHQhCltUb2Q6TGFyc10gRWluZSBGYWxsZ3J1YmUgaGF0IGdlcmFkZSBUcmljayB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgRmFsbGdydWJlIGlzdCBiYWxkIHVlYmVyZnVlbGx0Ll0KWndlcmdlbmthcGVsbGUuCkVzIGdpYnQgZWluZW4gc2ljaHRiYXJlbiBBdXNnYW5nOiBub3JkZW4uCgouLi4gamVkZXIgaXN0IHNpY2ggc2VsYnN0IGRlciBOYWVjaHN0ZS4gIDstKQoKT2dhcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBIGRheSBpbiB0aGUgbGlmZSBvZiBhIGdyYWQgc3R1ZGVudC4gKE9ya3RvZXRlciwgIDguIEp1biAyMDA2LCAyMzozNzo0Nyk6Cn4jISBybj1CYW1idWxrbyBydD0xMTQ5NzczMzAwIHJnPXd3dwp+IyEgdGlkPTExNDk3NzE2MTYKQWxzbyBmdWVyIGRpZSBNZW5nZW4gYW4gRGVzaWduZXJkcm9nZW4gZnVlciBkaWUgVGVlbmllZGlzY28gYnJhdWNoc3QgZHUga2VpbmUKZ3Jvc3NlIEZhYnJpaywgZGEgcmVpY2h0IGVpbiBrbGVpbmVzIExhYm9yLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFJlaW4gcGxhdG9uaXNjaCEgKEdyaW1tYm9ybiwgMTIuIEp1biAyMDA2LCAxMDo0NDoxMyk6Cn4jISBybj1LZXNzYSBydD0xMTUwMTAxMTk4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTE1MDEwMDQxOQpBbHNvLCBEdSBoYXN0IGRhIHNjaG9uIHJlY2h0LCBkYXMgSW50ZXJuZXQgaXN0IHZvbGxlciBLb2VycGVyLiBBbGxlcmRpbmdzIHNpbmQKZGllIG1laXN0IGVoZXIgd2VuaWdlciBwbGF0b25pc2NoLi4uCgpHcmltbSAiRGFzIGdhbnplIEludGVybmV0IGF1ZiA1MC4wMDAgRFZEcyEgQWx0ZXJuYXRpdiBkaWUganVnZW5kZnJlaWUgVmVyc2lvbgphdWYgMyBDRHMhImJvcm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFJlaW4gcGxhdG9uaXNjaCEgKEtlc3NhLCAxMi4gSnVuIDIwMDYsIDEwOjQ2OjAwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTUwMTAxODUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDEwMDQxOQpEaWUgd2VuaWdlciBwbGF0b25pc2NoZW4gaGFiZSBpY2ggc2Nob24gYWxsZWluIGdlZnVuZGVuIDotKQoKS2Vzc2EKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFJlaW4gcGxhdG9uaXNjaCEgKEdyaW1tYm9ybiwgMTIuIEp1biAyMDA2LCAxMDo0Njo0MCk6Cn4jISBybj1LZXNzYSBydD0xMTUwMTAxOTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDEwMDQxOQpEYW5uIHNvbGx0ZXN0IER1IERlaW5lbiBFbHRlcm4gc2FnZW4gc2llIG11ZXNzZW4gZGVuIEZpbHRlciBtYWwgYWt0dWFsaXNpZXJlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUmVpbiBwbGF0b25pc2NoISAoS2Vzc2EsIDEyLiBKdW4gMjAwNiwgMTA6NDk6MDIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNTAxMDIwMDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwMTAwNDE5ClN0aW1tdCwgZGVyIHNvbGx0ZSBtYWwgZGllIE1hZWRlbHMgYXVzc29ydGllcmVuLiBEaWUgSnVuZ3MgcmVpY2hlbiBtaXIKdm9sbGtvbW1lbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBSZWluIHBsYXRvbmlzY2ghIChBbGJvaW4sIDEyLiBKdW4gMjAwNiwgMTA6NTA6MDApOgp+IyEgcm49S2Vzc2EgcnQ9MTE1MDEwMjE0MiByZz1zY2htYXJybgp+IyEgdGlkPTExNTAxMDA0MTkKSG1tIGFsc28gbmFja3RlIEp1bmdzIGF1ZiBwbGF0b25pc2NoZW4gS29lcnBlcm4sIHNlbHRzYW0gUGhhbnRhc2llIGhhc3QgRHUgOy0pCgpBbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogUmVpbiBwbGF0b25pc2NoISAoTWFoYXJldCwgMTIuIEp1biAyMDA2LCAxMDo1MToxOCk6Cn4jISBybj1BbGJvaW4gcnQ9MTE1MDEwMjIwMCByZz1zY2htYXJybgp+IyEgdGlkPTExNTAxMDA0MTkKT2gsIG1laW5lIHNpZWh0IGRhIGdhbnogYWVobmxpY2ggYXVzIDspIFJlaW4gcGxhdG9uaXNjaCBuYXR1ZXJsaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogUmVpbiBwbGF0b25pc2NoISAoQm9pbmcsIDEyLiBKdW4gMjAwNiwgMTA6NTE6NTQpOgp+IyEgcm49TWFoYXJldCBydD0xMTUwMTAyMjc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDEwMDQxOQpOYXR1ZXJsaWNoIC4uLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTdXJ2aXZhbC1DYW1wIGdlZ2VuIENvbXB1dGVyc3BpZWxzdWNodCBbaGVpc2UuZGVdIChSb25kYSwgMTQuIEp1biAyMDA2LCAwMDo1MDoxOSk6CkljaCBzdGVsbGUgbWlyIGRhcyBtaXQgZGllc2VtIFN1cnZpdmFsLUNhbXAgZ3JhZGUgbWl0IE11ZGRlcm4gdm9yLi4uCgpodHRwOi8vd3d3LmhlaXNlLmRlL25ld3N0aWNrZXIvbWVsZHVuZy83NDIyMwoKLi4uIGRhIHdlcmRlbiBzaWNoZXIgZWluaWdlIHZvbiB1bnMgc28gU2FjaGVuIHdpZSAiWndlcmdlIHNpbmQgZG9vZiB1bmQKc3RpbmtlbiIgdW5kICJXZW5uIGRhIGdsZWljaCBkaWUgSHlkcmEgYXVmdGF1Y2h0IC0gZGFzIGlzdCBNRUlORSEiIGR1cmNoIGRlbgpXYWxkIHN0YXBmZW4uLi4KClJvbmRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3Vydml2YWwtQ2FtcCBnZWdlbiBDb21wdXRlcnNwaWVsc3VjaHQgW2hlaXNlLmRlXSAoTWFyY3VzLCAxNC4gSnVuIDIwMDYsIDA5OjAyOjI5KToKfiMhIHJuPVJvbmRhIHJ0PTExNTAyMzkwMTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwMjM5MDE5CktvbW0gbmFjaCBCcmllc2VsYW5nIC4uLiA6KQoKQ2lhbywgTWFyY3VzCiwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU3Vydml2YWwtQ2FtcCBnZWdlbiBDb21wdXRlcnNwaWVsc3VjaHQgW2hlaXNlLmRlXSAoS2VsbHlidW5keSwgMTQuIEp1biAyMDA2LCAyMDozNDozMCk6Cn4jISBybj1Sb25kYSBydD0xMTUwMjM5MDE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDIzOTAxOQpOYWphLCBzbyBpbnRlcm5ldHZlcnJ1ZWNrdCwgd2llIGRpZSBLYWVzZWdyYWV0c2NoZXIgc2luZCwgZ2liYmV0IGRhcyB3b2hsCm5pY2h0IHVlYmVyYWxsIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcnVlaCB1ZWJ0IHNpY2ggKE1haGFyZXQsIDE1LiBKdW4gMjAwNiwgMjA6MDg6MzMpOgpbWmF1YmVyZXI6VGltYmVydGhyYXggamFtbWVydCBDaGFnYWxsIHVlYnVuZ3N3ZWlzZSBhbi5dCltaYXViZXJlcjpMbHlzdHJhdGhlXSBUaW1iZXJ0aHJheCBpc3Qgc29lYmVuIGluIGRpZSBHaWxkZSBlaW5nZXRyZXRlbiB1bmQKW1phdWJlcmVyOkxseXN0cmF0aGVdIHRyYWVndCBmb3J0YW4gZGVuIFRpdGVsICdkZXIgU2NocmVja2VuIHNlaW5lciBNZWlzdGVyJy4KW1phdWJlcmVyOkxseXN0cmF0aGVdIEhlcnpsaWNoIFdpbGxrb21tZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEdyaW1tYm9ybiwgMTYuIEp1biAyMDA2LCAwODowNToxMCk6Cn4jISBybj1Sb25kYSBydD0xMTUwNDE1NzA2IHJnPXd3dwp+IyEgdGlkPTExNTA0MTU3MDYKV2llc28gcnVmZW4gZGllIHp1IE9yZ2Fuc3BlbmRlbiBhdWYsIGdpYnRzIG5pY2h0IG1laHIgZ2VudWcgTW90b3JyYWRmYWhyZXI/IAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChKaW1kaWdyaXosIDE2LiBKdW4gMjAwNiwgMTM6MzE6MzMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNTA0Mzc5MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2ClNpY2hlciwgbnVyIG11ZXNzdGVuIGRpZSBkYW5uIGltbWVyIGRlbiBvcmFuZ2VuIFdpc2NoCmRhYmVpaGFiZW4uIApCZXNzZXIgd2FlciBtYW4gd3VlcmRzIG1hY2hlbiB3aWUgYmVpIHVuc2VyZW4gQWxwZW5yZXB1Ymxpa2FuaXNjaGVuCk5hY2hiYXJuLiBKZWRlciBpc3QgT3JnYW5zcGVuZGVyIGF1c3NlciBtYW4gaGF0IGVpbmVuIE5pY2h0LVNwZW5kZXJhdXN3ZWlzLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoR2xvaW5zb24sIDE2LiBKdW4gMjAwNiwgMTM6MzU6MDQpOgp+IyEgcm49SmltZGlncml6IHJ0PTExNTA0NTc0OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2ClVuZCBkYW5uIG5vY2ggZGFzIG9ibGlnYXRvcmlzY2hlIEJsdXRzcGVuZGVuLCBHRVotU3BlbmRlbiwKQnJ1c3RoYWFyaW1wbGFuYXRzc3BlbmRlbiB1bmQgVXJpbnNwZW5kZW4gZWluZnVlaHJlbiB1bmQgYWxsZXMgaXN0IFR1dHRpClBhbGV0dGkuCldlbm4gWndhbmcgaW1tZXIgZGFzIGJlc3RlIE1pdHRlbCB3YWVyLCB3aWVzbyBoYWJlbiB3aXIgZGFubiBBZGksIEVnb24gdW5kCkpvc2kgYWJzYWVnZW4gbGFzc2VuPwoKSGF0IG1hbCBqZW1hbmQgZGllIFdvcnRoZXJrdW5mdCB2b24gIlNwZW5kZSIgcGFyYXQ/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEppbWRpZ3JpeiwgMTYuIEp1biAyMDA2LCAxMzozNjo0Mik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTUwNDU3NTk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpXZW5ucyBmcmVpd2lsbGlnIG5lZCBmdW5rdGlvbmllcnQgbXVzcyBoYWx0IG5hY2hoZWxmZW4sCndvYmVpIGljaCBkYSBrZWluZW4gWndhbmcgc2VoZS4gSmVkZXIgaGF0IG5hY2ggd2llIHZvcgpkaWUgc2VsYmUgTW9lZ2xpY2hrZWl0IHp1IHdhZWhsZW4sIGRlciBkZWZhdWx0IGlzdCBoYWx0CmFuZGVycywgd2FzIGltIFByaW56aXAgaGlsZnQgZGllIElnbm9yYW50ZW4gdW5kIFBobGVnbWF0aWtlcgpkZW5lbnMgc293aWVzbyBlZ2FsIGlzdCBkYXp1IHp1IGJyaW5nZW4sIGRhc3Mgc2llIGRlcgpBbGxnZW1laW5oZWl0IGhlbGZlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChHbG9pbnNvbiwgMTYuIEp1biAyMDA2LCAxMzozODoyMik6Cn4jISBybj1KaW1kaWdyaXogcnQ9MTE1MDQ1NzgwMiByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKRGFubiBuZW5uIGVzIGRvY2ggYWJlciBiaXR0ZSAiT3JnYW5zdGV1ZXIiLgoKQmlzIGRhaGluIHZlcnN1Y2ggdmllbGxlaWNodCB6dSB2ZXJzdGVoZW4sIGRhc3MgZXMgZWhlciBhbSBvZWZmZW50bGljaGVuCkJ1ZXd1c3N0c2VpbiBmZWhsdCB1bmQgc2ljaCBkYXMgYW5zY2hlaW5lbmQgbmljaHQgZXJ6d2luZ2VuIGxhZXNzdC4gU2llaGUgYXVjaApkYXMgdmllbCBwcm9mYW5lcmUgQmx1dHNwZW5kZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEJhbWJ1bGtvLCAxNi4gSnVuIDIwMDYsIDEzOjQzOjQ0KToKfiMhIHJuPUdsb2luc29uIHJ0PTExNTA0NTc5MDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2CiJTdGV1ZXJuIiBpc3Qgd2lya2xpY2ggZWluIHNjaGxlY2h0ZXIgVmVyZ2xlaWNoLiBNYW4gd2lyZCBqYSBhdWNoIG5pY2h0IHZvbgpkZXIgU3RldWVyIGJlZnJlaXQsIHdlbm4gbWFuIGVpbmVuIFpldHRlbCBiZWkgc2ljaCB0cmFlZ3QsIHN1ZiBkZW0gc3RlaHQsIGRhc3MKbWFuIGtlaW5lIFN0ZXVlcm4gemFobGVuIHdpbGwuLi4uCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEdsb2luc29uLCAxNi4gSnVuIDIwMDYsIDEzOjQ1OjU0KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTExNTA0NTgyMjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2CkR1IGthbm5zdCBkaWNoIGRlciBTdGV1ZXIgYWJlciBkdXJjaCBhbmRlcmUgTWl0dGVsIGVudHppZWhlbiwgc2FnZW4gd2lyIG1hbApkdXJjaCBLb25zdW0tLCBBcmJlaXRzLSBvZGVyIExlYmVuc3ZlcndlaWdlcnVuZy4gRHUgbXVzc3QgYWxzbyBuaWNodCBiZWltCmdyb3NzZ3V0ZW4gU3lzdGVtIG1pdG1hY2hlbiwgYWJlciB3ZW5uLCBkYW5uIGdsZWljaCByaWNodGlnLiBOaWNodCBzbyBlaW4KUGlsbGVwYWxsZSB2b24gd2VnZW4gZnJlaXdpbGxpZyB3YXMgYWJnZWJlbiwgbmVpbiwgT3JnYW5hYmdhYmUgaXN0IGRhbm4Kb2JsaWdhdG9yaXNjaC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoRGFya2xvciwgMTYuIEp1biAyMDA2LCAxNDowNzo0Myk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTUwNDU4MzU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpTY2hsZWNodGUgSWRlZSwgbWFuY2hlIE9yZ2FuZSB3aWxsIG1hbiBnYXIgbmljaCBoYWJlbi4uLgoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKENyb2Z0LCAxNi4gSnVuIDIwMDYsIDE0OjA5OjExKToKfiMhIHJuPURhcmtsb3IgcnQ9MTE1MDQ1OTY2MyByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKU28/ICBXZWxjaGUgc3RvZXJlbiBkaWNoIHNwZXppZWxsPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoQWxib2luLCAxNi4gSnVuIDIwMDYsIDE0OjEwOjE1KToKfiMhIHJuPUNyb2Z0IHJ0PTExNTA0NTk3NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2CnNpY2hlciBkYXMgSGlybiA7LSkKQWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoR2xvaW5zb24sIDE2LiBKdW4gMjAwNiwgMTQ6MTA6MzUpOgp+IyEgcm49Q3JvZnQgcnQ9MTE1MDQ1OTc1MSByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKV2lsbHN0IGR1IGlobSBiZWkgZGVyIEVudGZlcm51bmcgYmVoaWxmbGljaCBzZWluPyBWaWVsbGVpY2h0IHNvbGx0ZW4gd2lyIG1hbAplaW5lIEx1c3RlIHZvbiBWZXJmYXNzdW5nc29yZ2FuZW4gYXVmc3RlbGxlbiwgaWNoIGhvZXIgaW1tZXIgbXVua2VsbiwgZGVyCkJ1bmRlc3JhdCBzZWkgc28gZWluIEFwcGVuZGl4LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoRGFya2xvciwgMTYuIEp1biAyMDA2LCAxNDoyMDoxNCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTUwNDU5ODM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpUcmlua2VybGViZXI/IFJhdWNoZXJsdW5nZT8KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoR2xvaW5zb24sIDE2LiBKdW4gMjAwNiwgMTQ6MjE6MDApOgp+IyEgcm49RGFya2xvciBydD0xMTUwNDYwNDE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpHYXIga2VpbmUgTGViZXI/IEdhciBrZWluZSBMdW5nZT8KClVuZCBzbyBlaW4gS2VybCBrYW5uIG5jaWh0IG1hbCB3YXMgc3BlXldhYmdlYmVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoQ3JvZnQsIDE2LiBKdW4gMjAwNiwgMTQ6MjE6MTgpOgp+IyEgcm49RGFya2xvciBydD0xMTUwNDYwNDE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpEdSBzb2xsdGVzdCB2aWVsbGVpY2h0IG5pY2h0IHNvdmllbCBzYXVmZW4gdW5kIHJhdWNoZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChEYXJrbG9yLCAxNi4gSnVuIDIwMDYsIDE0OjI0OjQyKToKfiMhIHJuPUNyb2Z0IHJ0PTExNTA0NjA0Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2CkhtbSwgZGFzIHdhZXIgZWlnZW50bGljaCBkaWUgSWRlZSwgdW0gYW4gZWluZXIgWndhbmdzc3BlbmRlIGhlcnVtenVrb21tZW4uLi4KOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChHbG9pbnNvbiwgMTYuIEp1biAyMDA2LCAxODowNzo0OSk6Cn4jISBybj1NYWhhcmV0IHJ0PTExNTA0NzM5NDEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExNTA0MTU3MDYKV2llZGVyIHNvIGVpbiBWZXJlaW4sIGF1cyBkZW0gaWNoIG5pY2h0IGF1c3RyZXRlbiB3aWxsLiBJY2ggc2VoIHNjaG9uLCBpbgpadWt1bmZ0IG11c3MgaWNoIG51ciBtZWluZSBTcGVuZGVyYXVzd2Vpc2UgYWJnZWJlbiB1bmQgdHJhZ2UgaW1tZXIgd2VuaWdlcgpQYXBpZXIgbWl0IG1pciBoZXJ1bS4gV2FubiBrYW5uIGljaCBtZWluZW4gUGFzcyBhYmdlYmVuLCB3ZWlsIGFsbGUgZGV1dHNjaGUKU3RhYXRzYnVlcmdlciBzaW5kIGJpcyBhdWYgV2lkZXJydWY/IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChFbGpvLCAxNi4gSnVuIDIwMDYsIDE4OjEyOjM4KToKfiMhIHJuPUdsb2luc29uIHJ0PTExNTA0NzQwNjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2CkhhdCBtYW4gYWJlciBuaWNodCBhbHMgQXVzbGFlbmRlciBlaW4gUHJvYmxlbSBiZWkgZGVuIFNjaGx1Y2h0ZW5zY2hlaXNzZXJuPwpXZW5uIGljaCBkb3J0IGVpbmVuIFVuZmFsbCBoYWJlIHVuZCBoaW51ZWJlciBiaW4sIHdlcmRlbiBtaXIgdHJvdHpkZW0gZGllCk9yZ2FuZSByYXVzZ2VzY2huaXR0ZW4gKEluIEQga2FubiBpY2ggc2NobGVjaHQgZWluZW4gTmljaHQtU3BlbmRlcmF1c3dlaXMKYmVhbnRyYWdlbiksIGV0d2FzIGRvb2ZlIEFydCBkYW5uLgoKTmFqYSwgaWNoIGJlendlaWZlbCBlaCwgZGFzcyBpcmdlbmRlaW5lciBtaXQgaXJnZW5kZXR3YXMgYXVzIGRpZXNlbSBtZWluZW0KdmVyZmFsbGVuZW4gRGluZyBuYW1lbnMgS29lcnBlciBhbmZhbmdlbiBrb2VubnRlIChBdXNzZXIgdmllbGxlaWNodCBGdXNzYmFsbApkYW1pdCB6dSBzcGllbGVuIDstKSApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEh1bW5pLCAxNi4gSnVuIDIwMDYsIDE5OjI5OjUzKToKfiMhIHJuPUVsam8gcnQ9MTE1MDQ3NDM1OCByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKSWNoIGhhYiBhdWYgbWVpbmVuIE9yZ2Fuc3BlbmRlYXVzd2VpcyBkYW1hbHMgZHJhdWZnZXNjaHJpZWJlbiAiTWVpbmUgTGViZXIgaXN0CnZlcm11dGxpY2ggbnV0emxvcy4iIHVuZCBoYWIgZ2VkYWNodCwgd2VubiBzY2hvbiB3YXMgcGFzc2llcnQsIGRhbm4gd2VuaWdzdGVucwpncm9zc2tvdHppZyBhYnRyZXRlbi4uLiBoYWIgZGVuIGFiZXIgdmVyc2NobGFtcHQsIGJyYXVjaCBtYWwgbmVuIG5ldWVuLCBkYW5rZQpmdWVyIGRpZSBFcmlubmVydW5nLi4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChWZWN0b3IsIDE2LiBKdW4gMjAwNiwgMTk6MzE6MzkpOgp+IyEgcm49SHVtbmkgcnQ9MTE1MDQ3ODk5MyByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKbmFqbyBlZ2FsIG9iIG51biBvcmdhbnNwZW5kZXIgb2RlciBuaWNodCwgbWFuIHNvbGx0ZSBzaWNoIHNjaG9uCmVudHNjaGllZGVuIGhhYmVuIEJFVk9SIHdhcyBwYXNzaWVydC4gdW5kIGRpZXNlIGVudHNjaGVpZHVuZwphdWNoIHouYi4gaW4gZGVyIGdlbGRib2Vyc2UgbWl0IHNpY2ggcnVtdHJhZ2VuLgpkZW5rZSBtYWwsIHdlbm4gZXMgZGFubiBzbyB3ZWl0IGlzdCwgaGFiZW4gZXVyZSBhbmdlaG9lcmlnZW4vCnZlcndhbmR0ZSBhbmRlcmUgc29yZ2VuIGFscyB6dSBlbnRzY2hlaWRlbiBvYiBtYW4gZXVjaAphdXN3ZWlkZW4gZGFyZi4gYWxzbyB2b3Jzb3JnZW4gaXN0IGFuZ2VzYWd0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoRGFya2xvciwgMTYuIEp1biAyMDA2LCAyMDowMjo1NSk6Cn4jISBybj1NYWhhcmV0IHJ0PTExNTA0NzM5NDEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExNTA0MTU3MDYKQWNoPyAtIFdpZT8KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoR2xvaW5zb24sIDE2LiBKdW4gMjAwNiwgMjE6Mzk6NTUpOgp+IyEgcm49SHVtbmkgcnQ9MTE1MDQ3ODk5MyByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKRGFzIERpbmcgcGFzc3QgcHJpbWEgaW4gZGVuIEJsdXRzcGVuZGVhdXN3ZWlzLiBadW1pbmRlc3QgZGVuIGdlbGJlbiBpbiBCZXJsaW4KOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEdsb2luc29uLCAxNi4gSnVuIDIwMDYsIDIxOjQ0OjAxKToKfiMhIHJuPUtlc3NhIHJ0PTExNTA0ODY5Mjkgcmc9d3d3Cn4jISB0aWQ9MTE1MDQxNTcwNgpJY2ggZ2xhdWJlIG1pdCBlaW5lciBBZW5kZXJ1bmcgZGVzIFQtR2VzZXR6ZXMgYXVmIExlYmVuZHNwZW5kZSBoaW4gdW5kIGVpbmVyCmtvbXBsZXR0ZW4gRGVhbm9ueW1pc2llcnVuZyBkZXIgS2FuZGlkYXRlbmxpc3RlIHdhZXJlIEtlbGx5IGdlZGllbnQuIFNpZQptdWVzc3RlIGRhbm4gYWxsZXJkaW5ncyBqZWRlbiBNb3JnZW4gZGFzIEVtcGZhZW5nZXJyYW5raW5nIGR1cmNoZnVlaHJlbiwgZmFsbHMKc2llIGltIExhdWZlIGRlcyBUYWdlcyBhYm5pcHBlbHQuCgpXaWVzbyBkaXNrdXRpZXJ0IGlociBpbiB3d3c/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChHbG9pbnNvbiwgMTYuIEp1biAyMDA2LCAyMTo0NDo0MSk6Cn4jISBybj1LbnVycHMgcnQ9MTE1MDQ4NzA0OSByZz13d3cKfiMhIHRpZD0xMTUwNDE1NzA2ClNhaCBkZXIgQXJ6dCBzZWluZSBXdWVyZGUgYXVjaCB2ZXJsZXR6dD8gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEtudXJwcywgMTYuIEp1biAyMDA2LCAyMTo0NToyNSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTUwNDg3MDgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpWZXJtdXRsaWNoIG5pY2h0LCBzbyBlbmVyZ2lzY2ggd2llIGRpZSBBZXJ6dGluIGRhIHp1ciBTYWNoZSBnaW5nLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEtlbGx5YnVuZHksIDE2LiBKdW4gMjAwNiwgMjE6NDc6MDcpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE1MDQ4NzA0MSByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKRGFzIGlzdCBqZXR6dCBkYXMgYW5kZXJlIGV4dHJlbS4gZXMgZ2lidCBzZWhyIHdvaGwgbm9jaCBTdHVmZW4gZGF6d2lzY2hlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoR2xvaW5zb24sIDE2LiBKdW4gMjAwNiwgMjE6NDg6MDEpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMTUwNDg3MjI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpOdWphLCB3ZW5uIGR1IG1vcmFsaXNjaCB2ZXJ0cmV0ZW4ga2FubnN0LCBkYXNzIGRlaW5lIExlYmVyIGV2ZW50dWVsbCBhbiBlaW5lbQpFeC1IYWVmdGxpbmcgZ2VodCwgZGVyIGZydWVoZXIgbWFsIEtpbmRlcnNjaGFlbmRlciB3YXIgYWJlciBudW4gcmVoYWJpbGl0aWVydAppc3QsIGRhbm4gamEuIEFuc29uc3RlbiBzb2xsdGVzdCBkdSBzY2hvbiBlaW4gTWF4aW11bSBhbiBLb250cm9sbGUgd2FocmVuCndvbGxlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEtlbGx5YnVuZHksIDE2LiBKdW4gMjAwNiwgMjE6NTM6MTYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE1MDQ4NzI4MSByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKUmljaHRpZy4gQ0RVLVdhZWhsZXIgc29sbGVuIG1laW4gSGVyeiBuaWNodCBrcmllZ2VuLCBDU1UtV2FlaGxlciB1bmQgYWxsZXMKcmVjaHRzIGRhdm9uIGdhciBuaWNodHMgdW5kIEdydWVuZW4gRW1wZmFlbmdlcm4gdmVybWFjaGUgaWNoIGhhZW1pc2NoIGtpY2hlcm5kCm1laW5lIG5pY2h0LWJpb3Byb2R1a3QtbWFlc3NpZyBwZXN0aXppZHZlcnNldWNodGUgTWlsei4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoRGFya2xvciwgMTYuIEp1biAyMDA2LCAyMjoyMzoyNSk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTExNTA0ODc1OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2ClJlaGFiaWxhdGlvbiBzZWggaWNoIGRhYmVpIGFscyB1bndhaHJzY2hlaW5saWNoIGFuLCBlaW5lbSBFeERpZWIgd3VlcmQgaWNoIGRpZQpSZWhhYmlsYXRpb24gZWhlciBhYm5laG1lbiwgd2VubiBkZXIgZGVubiBudW4gZ3V0IHNpdHVpZXJ0IHdhZXIuIAoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChNYWhhcmV0LCAxNi4gSnVuIDIwMDYsIDIyOjIzOjU1KToKfiMhIHJuPURhcmtsb3IgcnQ9MTE1MDQ4OTQwNSByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKTmFpdi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoS2Vzc2EsIDE2LiBKdW4gMjAwNiwgMjI6MjQ6MjUpOgp+IyEgcm49RGFya2xvciBydD0xMTUwNDg5NDA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpOYWphIHNjaG9uLCBEYXJrbG9yIHNwcmFjaCBMZXV0ZW4sIGRpZSBhdXMgR3J1ZW5kZW4gaWhyZXMgJ051dHplbnMnIGVoZXIgZWluZQpTcGVuZGUgdmVyZGllbmVuIGFscyBhbmRlcmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKE1haGFyZXQsIDE2LiBKdW4gMjAwNiwgMjI6MjU6MDEpOgp+IyEgcm49S2Vzc2EgcnQ9MTE1MDQ4OTQ2NSByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKSWNoIGRhY2h0ZSwgZXMgZ2luZyB1bSBLZWxseXMgTGlzdGUgdW5kIGRlcmVuIEtyaXRlcmllbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoQ3JvZnQsIDE2LiBKdW4gMjAwNiwgMjI6MjY6MTUpOgp+IyEgcm49TWFoYXJldCBydD0xMTUwNDg5NTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpLb2VubnQgaWhyIGV1Y2ggbWFsIGF1ZiBlaW5lIFJ1YnJpayBlaW5pZ2VuPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoTWFoYXJldCwgMTYuIEp1biAyMDA2LCAyMjoyOTo1OSk6Cn4jISBybj1Dcm9mdCBydD0xMTUwNDg5NTc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpuZWluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKE1haGFyZXQsIDE2LiBKdW4gMjAwNiwgMjI6MzA6MTQpOgp+IyEgcm49TWFoYXJldCBydD0xMTUwNDg5Nzk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpXaXIgdW5kIGVpbmlnZW4gLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEdsb2luc29uLCAxNi4gSnVuIDIwMDYsIDIyOjMxOjQyKToKfiMhIHJuPU1haGFyZXQgcnQ9MTE1MDQ4OTgxNCByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKTGV1dGUgZGllIG5pY2h0IG1lZ2FzY2htYXJybiBsZXNlbiwgYmVrb21tZW4gYXVjaCBrZWluIEJsdXQgdm9uIG1pci4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChHbG9pbnNvbiwgMTYuIEp1biAyMDA2LCAyMjozNTozMCk6Cn4jISBybj1LbnVycHMgcnQ9MTE1MDQ4OTY5NSByZz13d3cKfiMhIHRpZD0xMTUwNDE1NzA2CkphLCB3ZW5uIGRhcyA0LiBLaW5kIHdlZ2VuIGRlcyBUb2RlcyBkZXIgTXV0dGVyIGF1ZiBkaWUgc2NoaWVmZSBCYWhuIGdlcmFldAp1bmQgZGVtIENoZW1pa2VyIGluIGRpZSB0cmFuc3BsYW50aWVydGUgTGViZXIgcGlla3QsIHNvIGRhc3MgZGVyIG5pY2h0IG1laHIKZGFzIDUuIEtpbmQgbWl0IHNlaW5lbSBuZXVlbiAiU2FmdCBkZXMgTGViZW5zIiB6dSBlaW5lbSBrbGVpbmVuIERyLiBKZWt5bGwKbWFjaGVuIGthbm4gKGRpZSBNdXR0ZXIgaGF0dGUgbGVpZGVyIGRpZSAiRXhwZXJpbWVudGUgbWl0IG1laW5lbSBLaW5kIHNpbmQKbmljaHQgZXJsYXVidCItS2FydGUgbmljaHQgYXVzZ2VmdWVsbHQpIHNjaGFkZXQgZGFzcyBkZXIgR2VzZWxsc2NoYWZ0CnVuZ2VtZWluLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoQ3JvZnQsIDE2LiBKdW4gMjAwNiwgMjI6MzU6NDIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE1MDQ4OTkwMiByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKRGVpbiBCbHV0IHdpbGwgaWNoIGF1Y2ggZ2FyIG5pY2h0IDpQCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChHbG9pbnNvbiwgMTYuIEp1biAyMDA2LCAyMjo0MDozMik6Cn4jISBybj1Dcm9mdCBydD0xMTUwNDkwMTQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpOZWluLCBtZWluZW4gU2FtZW4gYmVrb21tc3QgZHUgZXJzdCByZWNodCBuaWNodC4KCkFsc28gd2lya2xpY2gsIE11ZGRlciBnaWJ0cyAuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEtlc3NhLCAxNi4gSnVuIDIwMDYsIDIyOjQxOjE4KToKfiMhIHJuPUdsb2luc29uIHJ0PTExNTA0OTAxMzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2CipwbHVtcHMqIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKENyb2Z0LCAxNi4gSnVuIDIwMDYsIDIyOjQxOjI4KToKfiMhIHJuPUdsb2luc29uIHJ0PTExNTA0OTA0MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2CldhcyB3aWxsIGljaCBtaXQgZGVpbmVtIFNhbWVuPyAgCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChHbG9pbnNvbiwgMTYuIEp1biAyMDA2LCAyMjo0MjowMCk6Cn4jISBybj1Dcm9mdCBydD0xMTUwNDkwNDg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpJY2ggd2Vpc3Mgd2lya2xpY2ggbmljaHQgd2FzIGR1IGRhbWl0IHdpbGxzdC4gd2luZGJlc3RhZXVidW5nIHVuZCBkYW5uIE9yZ2FuZQplcm50ZW4/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChHbG9pbnNvbiwgMTYuIEp1biAyMDA2LCAyMjo0MjoyOCk6Cn4jISBybj1EYXJrbG9yIHJ0PTExNTA0OTA1MDggcmc9d3d3Cn4jISB0aWQ9MTE1MDQxNTcwNgpEdSBtYWNoc3QgZGljaCBuYWNoIGplZGVtIFRvciBuYWNraWc/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzU6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChEYXJrbG9yLCAxNi4gSnVuIDIwMDYsIDIzOjA2OjA3KToKfiMhIHJuPUFyayBydD0xMTUwNDkxNzk1IHJnPXd3dwp+IyEgdGlkPTExNTA0MTU3MDYKQWNoLCBEdSByaWNodGVzdCB1ZWJlciBVbnJlY2h0PwoKREFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzY6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChLZXNzYSwgMTYuIEp1biAyMDA2LCAyMzowOToyMik6Cn4jISBybj1EYXJrbG9yIHJ0PTExNTA0OTE5Njcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2CkRhcyB3YXIgZWluICd3aXInIHdpZSBpbiAnd2lyIHNpbmQgUGFwc3QnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzY6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChBcmssIDE2LiBKdW4gMjAwNiwgMjM6MTk6MzYpOgp+IyEgcm49RGFya2xvciBydD0xMTUwNDkxOTY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpTZWxic3Qgd2VubiBpY2ggZGFzIGdlc2NocmllYmVuIGhhZXR0ZSwgZGVtb25zdHJpZXJ0IGVzIGRvY2ggYW5zY2hhdWxpY2ggZGllCmR1ZXN0ZXJlIFp1a3VuZnQsIGluIGRpZSBEdSB1bnMgYmxpY2tlbiBsYWVzc3QgOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzc6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChEYXJrbG9yLCAxNi4gSnVuIDIwMDYsIDIzOjIwOjU0KToKfiMhIHJuPUFyayBydD0xMTUwNDkyNzc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpPaCwgd2lyIHNpbmQgUGFwc3Q/IC0gVW5kIGljaCBkYWNodGUgaW1tZXIgZGVyIFBhcHN0IGlzIFBhcHN0Li4uIDspCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChBbGtvaG9sLCAxNy4gSnVuIDIwMDYsIDE0OjEwOjMyKToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTE1MDQ4Njk0NyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTE1MDQxNTcwNgppbndpZWZlcm4gaGFiIGljaCBtaXIgbWVpbmUgbGViZXIgcnVudGVyZ2Vzb2ZmZW4/CmJ0dyB3aWxsIGljaCBkZWluZSBsZWJlciBnbGF1YiBpY2ggZWggbmljaHQuCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoS2VsbHlidW5keSwgMTcuIEp1biAyMDA2LCAxNDo1NjoxMyk6Cn4jISBybj1BbGtvaG9sIHJ0PTExNTA1NDYyMzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2Ck1laW5lIExlYmVyIGlzdCBhYnNvbHV0IE9LLiBWb24gZGVyIE1haW56ZXIgVW5pa2xpbmlrIGFsbGUgNCAtIDggV29jaGVuCmFiZ2VjaGVja3QuIFdhcyBoYXN0IER1IGdlZ2VuIG1laW5lIExlYmVyLCBoYWVoP2hhZWg/IElzdCBzaWUgRGlyIG5pY2h0IGd1dApnZW51Zz8gKnNjaG1vbGwqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoWm9vaywgMTcuIEp1biAyMDA2LCAyMDo1NTozNik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTUwNDU3NzA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpFcnN0IGhldXRlIGlzdCBtaXIgdWVicmlnZW5zIGRpZSBCZWRldXR1bmcgZGVyIEVpbmhlaXQgIlVsYiIgZXJrbGFlcnQKd29yZGVuLi4uLiBTY2hhbmRlIHVlYmVyIG1pY2ggOykKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoR2xvaW5zb24sIDE3LiBKdW4gMjAwNiwgMjE6NDE6NTApOgp+IyEgcm49Wm9vayBydD0xMTUwNTcwNTM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpad2VpZWluaGFsYiBOaWVyY2hlbiB1bmQgZWluZSBoYWxiZSBMZWJlcj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoWm9vaywgMTcuIEp1biAyMDA2LCAyMTo0NDoxNCk6Cn4jISBybj1ab29rIHJ0PTExNTA1NzA1MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2Ck9oLiBEdSBrZW5uc3QgIlVsYiIgbmljaHQ/IDspIAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChHbG9pbnNvbiwgMTcuIEp1biAyMDA2LCAyMTo1NDoyNik6Cn4jISBybj1ab29rIHJ0PTExNTA1NzM0NTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2Ck9mZmVua3VuZGlnIG5pY2h0LCBuZWluLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChab29rLCAxNy4gSnVuIDIwMDYsIDIyOjMyOjE2KToKfiMhIHJuPUdsb2luc29uIHJ0PTExNTA1NzQwNjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2Ck1pciB3dXJkZSBkYXMgc28gZXJrbGFlcnQ6IDEgVWxiIGlzdCBkaWUgWmVpdGRhdWVyLCBkaWUgZXMgYnJhdWNodCwgYmlzIGVpbgpadWhvZXJlciBlaW5lciBSYWRpb2Fuc3ByYWNoZSB2b24gV2FsdGVyIFVsYnJpY2h0IGRlbiBTZW5kZXIgd2VjaHNlbHQuIAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChab29rLCAxNy4gSnVuIDIwMDYsIDIzOjAzOjA4KToKfiMhIHJuPVpvb2sgcnQ9MTE1MDU3NjMzNiByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKT2ZmZW4gYmxpZWIgYWJlciBkaWUgRnJhZ2UsIHdpZXZpZWwgVWxiIEhvbmVja2VyIHNvIGhpbmxlZ3RlLiAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoR2xvaW5zb24sIDE3LiBKdW4gMjAwNiwgMjM6MzM6MTIpOgp+IyEgcm49Wm9vayBydD0xMTUwNTc4MTg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpEZW4gKEVnb24pIGhhYiBpY2ggbmllIGltIFJhZGlvIGdlaG9lcnQuIEZ1ZXIgZWluICJVbGIiIHdhciBpY2ggZWluZmFjaCB6dQpqdW5nLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoWm9vaywgMTguIEp1biAyMDA2LCAxMjo0MToyNik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTUwNTc5OTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpOYSwgYWJlciBzaWVoc3RlIG1hLCBkYSBoYXN0ZSB2b24gbmVtIFdlc3NpIG5vY2ggd2FzIGxlcm5lbiBrb2VubmVuIDspIFpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEdsb2luc29uLCAxOS4gSnVuIDIwMDYsIDAyOjMyOjU1KToKfiMhIHJuPURhcmtsb3IgcnQ9MTE1MDY3NTg0OCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTE1MDQxNTcwNgpEYXMga2FtIHZvbiBtaXIuIExlcm4gd2VuaWdzdGVucyBkaWUgUG9sZW1pa2VuIHNhdWJlciB6dXp1b3JkbmVuLCBzb25zdCB3aXJkCmRhcyBuaXguCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChEYXJrbG9yLCAxOS4gSnVuIDIwMDYsIDAyOjQ5OjEyKToKfiMhIHJuPUdsb2luc29uIHJ0PTExNTA2NzcxNzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2Ck51bmphLCBLZXNzYSBoYXQgZGEgaGFsdCBkaWUgZmFsY2hlIEZyYWdlIGdlc3RlbGx0LiA7KQoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChHbG9pbnNvbiwgMTkuIEp1biAyMDA2LCAxMTowODoyNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE1MDcwODAzMiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTE1MDQxNTcwNgpIYWIgZHUgbWFsIGd1dCBsYWNoZW4uIEljaCBtaXQgbWVpbmVyIFJhZG9uYWxsZXJnaWUgdmVyc3VjaGUgc2Nob24gc2VpdCBKYWhyZW4KZ2VnZW4gZ2VzY2hsb3NzZW5lIFJhZXVtZSB6dSBrbGFnZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChHcmltbWJvcm4sIDE5LiBKdW4gMjAwNiwgMTE6MjU6MDUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE1MDcwODEwNCByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKT2gsIGRhIGthbm4gRGlyIGdlaG9sZmVuIHdlcmRlbjogbWFjaCBlaW5mYWNoIGVpbiBGZW5zdGVyIGF1ZiEgR3V0LCBpc3QgaW0KV2ludGVyIG5hdHVlcmxpY2ggZXZ0bC4gdW5nZW11ZXRsaWNoLCBhYmVyIHdlbm5zIGRlbm4gZGVyIEdlc3VuZGhlaXQgZGllbnQuLi4KQWx0ZXJuYXRpdiBrb2VubnRlIG1hbiBpbiBzb2xjaGVuIEZhZWxsZW4gbmF0dWVybGljaCBhdWNoIG5hY2ggZWluZXIKU3BlbmRlcmx1bmdlIHN1Y2hlbiwgaW4gQ2hpbmEgd2VyZGVuIGphIHouQi4gZmxlaXNzaWcgRXJzYXR6dGVpbGUgcHJvZHV6aWVydAoobXVzc3QgbnVyIGVpbmVuIGltbXVuc3lzdGVtdmVydHJhZWdsaWNoZW4gRmFocnJhZGRpZWIgZmluZGVuKS4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoR2xvaW5zb24sIDE5LiBKdW4gMjAwNiwgMTE6Mjc6MzcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNTA3MDkxMDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2CkljaCByZWRlIHZvbiBvZWZmZW50bGljaGUgUmFldW1lbi4gTWVociBvZmZlbmUgRmVuc3RlciBpbSBCdW5kZXN0YWchCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChHcmltbWJvcm4sIDE5LiBKdW4gMjAwNiwgMTE6Mjg6MzkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE1MDcwOTI1NyByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKRHUgYmlzdCBpbSBCdW5kZXN0YWc/IENvb2wsIGVuZGxpY2gga2VubmUgaWNoIGVpbmVuIGRpZXNlciBmYXVsZW4gVmVyc2FnZXIKcGVyc29lbmxpY2guIE5hamEsIG1laHIgb2RlciB3ZW5pZ2VyLiBXaXIgd2FydGVuIGRhbm4gYXVmIGVpbmUKbXVkLWZyZXVuZGxpY2hlcmUgR2VzZXR6Z2VidW5nLCBzY2hsaWVzc2xpY2ggYXJiZWl0ZW4gd2lyIGRlcgpBbmFscGhhYmV0aXNpZXJ1bmcgZGVyIEdlc2VsbHNjaGFmdCBlbnRnZWdlbiEKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChHbG9pbnNvbiwgMTkuIEp1biAyMDA2LCAxMToyOTo0MSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE1MDcwOTMxOSByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKQXVmIGRlbSBXZWcuIE9ibGlnYXRvcmlzY2hlciBBY2NvdW50IGZ1ZXIgYWxsZS4KCk5laW4sIGVpZ2VudGxpY2ggYmluIGljaCBkYSBudXIgQmVzdWNoZXIgZ2V3ZXNlbi4gSWNoIGhhYiBtaWNoIHZvbiBkZW0gU2xvZ2FuCnVlYmVyIGRlciBUdWVyIHJlaW5sb2NrZW4gbGFzc2VuLiBVbmQgc29mb3J0IGhhdCBtaWNoIGRhcyBSYWRvbiB1ZWJlcmZhbGxlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMjogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEdsb2luc29uLCAxOS4gSnVuIDIwMDYsIDEyOjAxOjIyKToKfiMhIHJuPUtlc3NhIHJ0PTExNTA3MTExNzggcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExNTA0MTU3MDYKSGFiZW4gc2llIGVpbmVuIFNjaHVsZGlnZW4gYXVzZ2VtYWNodD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEdsb2luc29uLCAxOS4gSnVuIDIwMDYsIDEzOjI3OjI0KToKfiMhIHJuPUtudXJwcyBydD0xMTUwNzE2Mzk0IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTUwNDE1NzA2Ck1laW4gS29lcnBlciBpc3QgZWluZSB0b2VkbGljaGUgV2FmZmUuIEFldHNjaCwgaWNoIGRhcmYgbmljaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChLbnVycHMsIDE5LiBKdW4gMjAwNiwgMTM6MzM6MDIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNTA3MTY3MzYgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExNTA0MTU3MDYKT2gsIHRvdWNoZS4gSWNoIHNvbGx0ZSBuaWUgdm9ybSBlcnN0ZW4gS2FmZmVlIHBvc3Rlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoR2xvaW5zb24sIDE5LiBKdW4gMjAwNiwgMTQ6NDQ6NTApOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE1MDcyMDkzOCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTE1MDQxNTcwNgpBdWYgZWluIFJlXjEwMDAgdmVyc3VjaGUgaWNoIGVpbiBBbWFyYW50LUJyb3QgenUgYmVzb3JnZW4uCgpVbmQgYXVzc2VyZGVtIGJpbiBpY2ggd2llZGVyIGZ1ZXIgZWluZW4gRVZQLCBkaWUgbmllZHJpZ2VyZSBNd1N0IHN0aW5rdCEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41MzogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEdsb2luc29uLCAxOS4gSnVuIDIwMDYsIDE5OjU3OjM5KToKfiMhIHJuPUtlc3NhIHJ0PTExNTA3Mzk3OTIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExNTA0MTU3MDYKUGZmLiBBbiBGdXNzYmFsbCBnZWh0IGRhcyBNVUQgenVncnVuZGUuIEFlaCwgbWVpbmUgRGlza3Vzc2lvbnNsYXVuZS4gCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTQ6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChEYXJrbG9yLCAxOS4gSnVuIDIwMDYsIDIxOjA3OjEzKToKfiMhIHJuPUdsb2luc29uIHJ0PTExNTA3Mzk4NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2CldlbGNoZSBNYW5zY2hhZnQgYnp3LiB3ZWxjaGVzIFNwaWVsIGhhdCBEaXIgZGVubiBkaWUgRGlza3Vzc2lvbnNsYXVuZQp2ZXJtaWVzdD8KCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoS2VsbHlidW5keSwgMjAuIEp1biAyMDA2LCAyMDozNDo0Nik6Cn4jISBybj1ab29rIHJ0PTExNTA1NzYzMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2CkhhY2gsIGRhcyB3YXIgZG9jaCBlaW4gJ1NjaG5pJyBEZWkgWmVpdGVpbmhlaXQsIGRpZSBtYW4gYnJhdWNodCwgdm9tIFNvZmEKYXVmenVzcHJpbmdlbiB1bmQgZGVuICdzY2h3YXJ6ZW4gS2FuYWwnIGFienVzY2hhbHRlbiAqR0cqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42MTogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEdyaW1tYm9ybiwgMjEuIEp1biAyMDA2LCAwMDozOTozNSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTE1MDg0MzE2MyBvZz1kaXNrdXNzaW9uCn4jISBybj1HbG9pbnNvbiBydD0xMTUwODQxNzUyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTUwNDE1NzA2Cld1ZXJkZXN0IER1IGJpdHRlIGF1ZmhvZXJlbiBoaWVyIG1pdCBzYWNobGljaGVuIEFyZ3VtZW50YXRpb25lbiBkaWUgUGFyYW5vaWEKYW56dWdyZWlmZW4/IEJpc3QgRHUgZXR3YSBhdWNoIGVpbmVyIHZvbiBERU5FTiwgZGllIHNpY2ggZ2VnZW4gZGllClZvbGtzZ2VzdW5kaGVpdCB2ZXJzY2h3b3JlbiBoYWJlbj8gU2llIHR1biB1bnMgSm9kIHVuZCBWaXRhbWluIEQgaW5zIEVzc2VuLAp6d2luZ2VuIHVucyBMdWZ0IHp1IGF0bWVuIHVuZCB0dW4gUmFkb24gaW4gZ2VzY2hsb3NzZW5lIFJhZXVtZS4gVW5kIHNpZSBzaW5kCnVlYmVyYWxsIQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42MjogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEdsb2luc29uLCAyMS4gSnVuIDIwMDYsIDAwOjQyOjM4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTUwODQzMTc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpJY2ggaG9lcmUgZXJzdCBkYW1pdCBhdWYgU2F1ZXJzdG9mZi1TdGlja3N0b2ZmLUdhc2dlbWlzY2hlIG1pdCBncm9zc2VuCkVuZXJnaWVtZW5nZW4genUgdmVyc29yZ2VuIHVtIGRlaW5lIEFsbGVyZ2llbiBkYW1pdCB6dSB2ZXJzY2hsaW1tZXJuLCB3ZW5uIGR1CmRlaW5lIE9yZ2Fuc3BlbmRlcmthcnRlIGF1c2dlZnVlbGx0IGhhc3QuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjM6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChHcmltbWJvcm4sIDIxLiBKdW4gMjAwNiwgMDA6NDU6MDIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE1MDg0MzM1OCByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKV2FzIHdpbGxzdCBEdSBkZW5uIG1pdCBtZWluZW4gT3JnYW5lbj8gRXJzdGVucyBzaW5kIGRpZSBkb2NoIGVoIHZvbGxlciBWaXRhbWluCkQgdW5kIEpvZCwgdW5kIHp3ZWl0ZW5zIGhhYiBpY2ggZXJzdCBoZXV0ZSB3aWVkZXIgZWluIHBhYXIgTW90b3JyYWRmYWhyZXIKZ2VzZWhlbiwgYmVpIGRlbmVuIGxvaG50IHNpY2ggc28gZWluIEF1c3dlaXMgdmllbCBlaGVyLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjQ6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChHbG9pbnNvbiwgMjEuIEp1biAyMDA2LCAwMDo1MDozMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE1MDg0MzUwMiByZz1zY2htYXJybgp+IyEgdGlkPTExNTA0MTU3MDYKV2FzIG1laW5zdCBkdSwgd2lldmllbCBNaWxjaCBkaWUgdHJpbmtlbi4gU2FnZW5oYWZ0LiBFa2xpZy4gTGF1dCBXaWtpcGVkaWEgaGF0CmRlciBkdXJjaHNjaG5pdHRsaWNoZSBNb3RvcnJhZGZhaHJlciBzb3ZpZWwgam9kaWVydGUgTWlsY2ggaW0gTWFnZW4sIGRhc3MgZXIKYmVpIGVpbmVtIFRyaW5rdW5mYWxsIGdhciBrZWluZSBSb2VudGdlbmtvbnRyYXN0bWl0dGVsIG1laHIgbmVobWVuIG11c3MuCgpBdXNzZXJkZW0gaGFiZW4gd2lyIHNjaG9uIGVpbiBOYWNrdGZvdG8gdm9uIGRpciwgZGFzIG11c3MgbWFsIGVyZ2Flbnp0IHdlcmRlbgpkdXJjaCBha3R1ZWxsZXJlIEF1Zm5haG1lbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42NTogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEdyaW1tYm9ybiwgMjEuIEp1biAyMDA2LCAwMDo1MzozMik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTUwODQzODMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpJY2ggd2FyIGp1bmcgdW5kIGJyYXVjaHRlIGRhcyBHZWxkIQoKVW5kIGpldHp0IGJpbiBpY2ggYWVsdGVyIHVuZCBicmF1Y2hlIG5vY2ggdmllbCBtZWhyIEdlbGQuIFdhcyB6YWhsc3RlIGRlbm4gc28/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY2OiBNYWwgZWluICJhbmRlcmVzIiBUaGVtYTogT3JnYW5zcGVuZGVhdXN3ZWlzPyAoR2xvaW5zb24sIDIxLiBKdW4gMjAwNiwgMDA6NTk6NDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNTA4NDQwMTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUwNDE1NzA2CkVpbnRlIHR0ZSBmcmlzY2hqb2RpZXJ0ZSBWaXRhbWluLUQtTWlsY2guIEtvc3RiYXIsIHdlaWwgc2llIGFsbGUgUXVhZWxlcmVpZW4KdmVyZWludC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42NzogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEdyaW1tYm9ybiwgMjEuIEp1biAyMDA2LCAwMTowMjoyMik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTUwODQ0Mzg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpTb3JyeSwgZGFmdWVyIGthbm5zdCBEdSBnZXJhZGVtYWwgZGFzIGtyaWVnZW4gd2FzIGljaCBiZWltIE5hZ2Vsc2NobmVpZGVuIHZvbgptaXIgZ2ViZSwgYWJlciB3ZWRlciBtZWluZSBOaWVyZSBub2NoIGVpbiBOYWNrdGJpbGQuIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42ODogTWFsIGVpbiAiYW5kZXJlcyIgVGhlbWE6IE9yZ2Fuc3BlbmRlYXVzd2Vpcz8gKEdsb2luc29uLCAyMS4gSnVuIDIwMDYsIDAxOjAzOjAyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTUwODQ0NTQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MDQxNTcwNgpBZWNoei0gdW5kIFN0b2VobmxhdXRlIHZvbiBkaXIgYXVmIEJhbmQ/IEF1Y2ggbmljaHQgc2NobGVjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjc6IE1hbCBlaW4gImFuZGVyZXMiIFRoZW1hOiBPcmdhbnNwZW5kZWF1c3dlaXM/IChEYXJrbG9yLCAyMS4gSnVuIDIwMDYsIDE5OjU0OjUwKToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9MTE1MDkwMzkxMiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTE1MDQxNTcwNgpEYXMgbW9lY2h0IGljaCBnYXIgbmljaCB3aXNzZW4uLi4gCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZWZsdWVnZWw/IChNYWhhcmV0LCAyMi4gSnVuIDIwMDYsIDIxOjM4OjMxKToKRGVpbmUgRnJldW5kaW4gTWllemUgc2luZ3QgKHp1bSBHbHVlY2sgaW4gZGVyIEZlcm5lKTogV2VubiBpY2ggZWluIGh1ZWJzY2hlcgprbGVpbmVyIFZvZ2VsIHdhZXIgLi4uCkRlaW5lIEZyZXVuZGluIFJvbmRhIGtyaWVndCBIdW5nZXIgYXVzIGRlciBGZXJuZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCcnVlc3NlbCAoWm9vaywgMjYuIEp1biAyMDA2LCAxMjozMTozOSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTE1MTMxNjI1MCByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTE1MTMxNjI1MApCcmluZ3QgUHJhbGluZW4gbWl0IHVuZCByYWV1bSBtYWwgYmVpIFNXSUZUIGF1Zi4KWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFbmRsaWNoIFVybGF1YiEgKFpvb2ssIDI2LiBKdW4gMjAwNiwgMTU6MzI6MjEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNTEzMjg2ODcgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTExNTEzMjg2ODcKV29yaW4gbGllZ3QgZGVyIEdydW5kIGRhZnVlciwgZGFzcyBEdSBrZWluZSBGcmV1ZGVuc3BydWVuZ2UgbWFjaGVuIGthbm5zdD8KTm9jaCBhbSBUcmF1ZXJuIHVlYmVyIGRhcyBBYnNjaG5laWRlbiBkZXMgc2Nod2VkaXNjaGVuIFRlYW1zIGJlaSBkZXIgRnVzc2JhbGwtCldNPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMZXJuZW4gaXN0IGJsb2VkICh6dW1pbmRlc3RlbnMgbW9tZW50YW4pIChab29rLCAyNi4gSnVuIDIwMDYsIDE3OjA4OjQ2KToKfiMhIHJuPUNoYWdhbGwgcnQ9MTE1MTMzNDE0NiByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMTUxMzM0MTQ2CldpZSBzdGVsbGUgaWNoIG1pciBzb2xjaGUgUHJvYmxlbWUgdm9yPyBNYW4gdmVybGVybnQgKFZvcnplaWNoZW5mZWhsZXIpPyA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTGVybmVuIGlzdCBibG9lZCAoenVtaW5kZXN0ZW5zIG1vbWVudGFuKSAoQ2hhZ2FsbCwgMjYuIEp1biAyMDA2LCAxNzoxMDoxOCk6Cn4jISBybj1ab29rIHJ0PTExNTEzMzQ1MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUxMzM0MTQ2Ck5vZSwgZWhlciBzbyBpbiBkZXIgQXJ0OiBJY2ggbGVybiBqZXR6dCBnYXIgbmljaHQgbWVoci4KQWJlciB2ZXJsZXJuZW4gc29sbHRlIGljaCBtaXIgbWFsIG1lcmtlbiwgZGFtaXQgZGllIGdhbnplbiBhbHRlbiAKSmFtbWVycGxhcHBlbiBtYWwgd2llZGVyIGVpbmVuIEdydW5kIGhhYmVuIHNpY2ggenUgcHJvZmlsaWVyZW4uIDopCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTGVybmVuIGlzdCBibG9lZCAoenVtaW5kZXN0ZW5zIG1vbWVudGFuKSAoTXVhZGliLCAyNy4gSnVuIDIwMDYsIDE4OjA5OjAwKToKfiMhIHJuPUNoYWdhbGwgcnQ9MTE1MTQxODQxMyByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMTUxMzM0MTQ2CmFsc28gaWNoIGRlbmtlIGRpZSBzcGVsbHMgc2luZCB6dSBzY2h3ZXIgenUgbGVybmVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBFaW5sZWl0dW5nIGluIGRhcyBJbnRlcm5ldCAoR3JpbW1ib3JuLCAyOC4gSnVuIDIwMDYsIDIyOjMxOjUwKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMTUxNTI2NzA0IG9nPXN1Y2hlLWJpZXRlCn4jISBybj1XaGl0ZXRpZ2VyIHJ0PTExNTE1MjYzOTAgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMTUxNDg5MDMxCkthcm9oZW1kIHVuZCBTYW1lbnN0YXU/IEFsbGVzIGtsYXIsIE1hc2NoaW5lbmJhdSEKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRWlubGVpdHVuZyBpbiBkYXMgSW50ZXJuZXQgKEFsYm9pbiwgMjguIEp1biAyMDA2LCAyMjozMjozNik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE1MTUyNjcxMCByZz1zY2htYXJybgp+IyEgdGlkPTExNTE0ODkwMzEKb2ggZ2lidHMgZGEgbm9jaCBtZWhyIGRhdm9uIHVlYmVyIGFuZGVyZSBTdHVkZW50ZW4/CmFsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIChPcmt0b2V0ZXIsICA0LiBKdWwgMjAwNiwgMTQ6NTU6MjcpOgpbU3BvcnQ6SHVtbmldIGZpbmRldCBzaWNoIGVpbiBmcmVpd2lsbGlnZXIsIGRpZSBGdXNzYmFsbC1FcmdlYm5pc3NlIHVuZApbU3BvcnQ6SHVtbmldIEVuZHBzaWVsIHVuZCBTcGllbCB1bSBQbGF0eiAzIGVpbnp1dHJhZ2VuPyBOYWNoIE1vZWdsaWNoa2VpdApbU3BvcnQ6SHVtbmldIGVpbmUgZW50d2VkZXIgYWJzb2x1dCB2ZXJ0cmF1ZW5zd3VlcmRpZ2UgUGVyc29uIG9kZXIgc29nYXIgZWluCltTcG9ydDpIdW1uaV0gTWFnaWVyLi4uCgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBPaG5lIFdvcnRlIChab29rLCAgNC4gSnVsIDIwMDYsIDE0OjU4OjEzKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTUyMDE3NzI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MjAxNzcyNwpub2NoIHNjaG5lbGwgbWFnaWVyIHdlcmRlbiwgb3JrdD8gem9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogT2huZSBXb3J0ZSAoSHVtbmksICA0LiBKdWwgMjAwNiwgMTU6MDA6MjYpOgp+IyEgcm49Wm9vayBydD0xMTUyMDE3ODkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MjAxNzcyNwpadSBzcGFldC4gQ3JvZnQgaGF0IGRlbiBadXNjaGxhZy4gOy0pCgpIdW1uaQoucQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogT2huZSBXb3J0ZSAoWm9vaywgIDQuIEp1bCAyMDA2LCAxNTowODoxMyk6Cn4jISBybj1IdW1uaSBydD0xMTUyMDE4MDI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MjAxNzcyNwp1aS4gbnUgaXMgY3JvZnQgYWJlciBnZWFkZWx0IDspCgp6b29rLiMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBPaG5lIFdvcnRlIChLbnVycHMsICA0LiBKdWwgMjAwNiwgMTU6MDg6MjcpOgp+IyEgcm49Wm9vayBydD0xMTUyMDE4NDkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MjAxNzcyNwpadW0gTWFnaWVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogT2huZSBXb3J0ZSAoQmFtYnVsa28sICA0LiBKdWwgMjAwNiwgMTU6MTA6MDEpOgp+IyEgcm49Wm9vayBydD0xMTUyMDE4NDkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MjAxNzcyNwpJY2ggcGxhZWRpZXJlIGZ1ZXIgZWluZW4gbmV1ZW4gTGV2ZWwgZGVyICJhYnNvbHV0IHZlcnRyYXVlbnN3dWVyZGlnZSBQZXJzb24Kb2RlciBzb2dhciBlaW4gTWFnaWVyIi4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBPaG5lIFdvcnRlIChab29rLCAgNC4gSnVsIDIwMDYsIDE1OjE2OjE5KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTExNTIwMTg2MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUyMDE3NzI3Cm1hbCBzZWhlbiwgb2Igd2llIGRhbWl0IGRpZSAic3VwZXJzZWhlciItZGlza3Vzc2lvbiBuZXUgZW50ZmFjaGVuCmtvZW5uZW4hCgp6b29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogT2huZSBXb3J0ZSAoT3JrdG9ldGVyLCAgNC4gSnVsIDIwMDYsIDE1OjE4OjA1KToKfiMhIHJuPVpvb2sgcnQ9MTE1MjAxODk3OSByZz1zY2htYXJybgp+IyEgdGlkPTExNTIwMTc3MjcKTmVpbiwgYWJlciB3aWUgbGFuZyBpc3QgZWlnZW50bGljaCBpbnp3aXNjaGVuIGRpZSBBbGxlZSBkZXIgZ2VmYWxsZW5lbiBNYWdpZXIKKG9kZXIgd2llIGRpZSBoaWVzcykuLi4gc28gdm9uIHdlZ2VuICJvZGVyIE1hZ2llciI/CgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogT2huZSBXb3J0ZSAoWm9vaywgIDQuIEp1bCAyMDA2LCAxNToxOTowMyk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE1MjAxOTA4NSByZz1zY2htYXJybgp+IyEgdGlkPTExNTIwMTc3MjcKaWNoIHBlcnNvZW5saWNoIGhhYiBiaXNoZXIgZXJzdCBlaW5lbiBnZWxvZXNjaHQuIAoKem9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE9obmUgV29ydGUgKE9ya3RvZXRlciwgIDQuIEp1bCAyMDA2LCAxNToxOTo1MSk6Cn4jISBybj1ab29rIHJ0PTExNTIwMTkxNDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUyMDE3NzI3CkRpZSBHb2V0dGVyIHZvbiBIZXV0ZSBzaW5kIGF1Y2ggbmljaHQgbWVociBkYXMsIHdhcyBzaWUgbWFsIHdhcmVuLi4uCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogT2huZSBXb3J0ZSAoWm9vaywgIDQuIEp1bCAyMDA2LCAxNToyMTozOSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE1MjAxOTE5MSByZz1zY2htYXJybgp+IyEgdGlkPTExNTIwMTc3MjcKTWFuIG11c3MgZWJlbiBzdGFlcmtlciBkZWxlZ2llcmVuIGtvZW5uZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE9obmUgV29ydGUgKE11YWRpYiwgIDQuIEp1bCAyMDA2LCAyMzo0NDowMik6Cn4jISBybj1ab29rIHJ0PTExNTIwMTkyOTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUyMDE3NzI3CmljaCBrYW5uIG1pY2ggbmljaHQgZXJpbm5lcm4gZWluZW4gbWFnaWVyIGdlbG9lc2NodCB6dSBoYWJlbgphYmVyIG1laW4gZ2VkYWVjaHRuaXMgaXN0IGVoIHNjaGxlY2h0CnVuZCBhYnNvbHV0IHZlcnRyYXVlbnN3dWVyZGlnIHVuZCBtYWdpZXI/IGhhaGVoYWFhZWVhaGFhZWhlaGFoYWhhZWFhCmRhcyBpc3QgZG9jaCBkYXMgZ2xlaWNoZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogT2huZSBXb3J0ZSAoQ3JvZnQsICA1LiBKdWwgMjAwNiwgMDE6MTQ6MjEpOgp+IyEgcm49SHVtbmkgcnQ9MTE1MjAxODAyNiByZz1zY2htYXJybgp+IyEgdGlkPTExNTIwMTc3MjcKVW0gZGFzIGhpZXIga3VyeiAoYXVjaCBpbiBTY2htYXJybikgenUgZG9rdW1lbnRpZXJlbjoKSWNoIGZyYWdlIEVuZGVyZ2Vibmlzc2UgZWluLiAgR2VuYXVlcmVzIHd1cmRlIG1pciB2b24gSHVtbmkgbmljaHQgZ2VzYWd0CnVuZCBpc3QgYXVjaCBkZXIgQW5sZWl0dW5nIG5pY2h0IHp1IGVudG5laG1lbi4KRC5oLiBVbmVudHNjaGllZGVuIHp1IHRpcHBlbiBpc3QgaW4gZGVyIEZpbmFscnVuZGUgbmljaHQgc2lubnZvbGwuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogT2huZSBXb3J0ZSAoQ3JvZnQsICA2LiBKdWwgMjAwNiwgMTE6MzA6MDYpOgp+IyEgcm49Q3JvZnQgcnQ9MTE1MjA1NDg2MSByZz1zY2htYXJybgp+IyEgdGlkPTExNTIwMTc3MjcKU28sIGdyYWQgbWl0IEh1bW5pIGdlc3Byb2NoZW46IGRpZSBiZWlkZW4gbGV0enRlbiBTcGllbGUgd2VyZGUgaWNoIGFscwpFcmdlYm5pcyBuYWNoIDkwbWluIGVpbnRyYWdlbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBadXN0YWVuZGlna2VpdCAoQ3JvZnQsICA2LiBKdWwgMjAwNiwgMTc6MjU6MjUpOgp+IyEgcm49U2hhcmlhIHJ0PTExNTIxOTkxNDEgcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTExNTE5MzI4OTMKV2VyZCBNYWdpZXIuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogWnVzdGFlbmRpZ2tlaXQgKEdsb2luc29uLCAgNi4gSnVsIDIwMDYsIDIzOjMwOjE5KToKfiMhIHJuPUNyb2Z0IHJ0PTExNTIxOTk1MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUxOTMyODkzCk1pc3QsIGR1IHdhcnN0IHNjaG5lbGxlciA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFlbmRlcnVuZ2VuOiBUZWlsIElJIChDcm9mdCwgIDkuIEp1bCAyMDA2LCAwMDo1NzoxNyk6Cn4jISBybj1ab29rIHJ0PTExNTIzODU1NTcgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTE0OTU1MTI3NwpLb2VubnRlc3QgZHUgYml0dGUgeml0aWVyZW4/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQWVuZGVydW5nZW46IFRlaWwgSUkgKEdsb2luc29uLCAgOS4gSnVsIDIwMDYsIDIzOjE4OjM3KToKfiMhIHJuPURhcmtsb3IgcnQ9MTE1MjQ3MDUwNyByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMTQ5NTUxMjc3CkhtLiBNYWdpZXIgd2VyZGVuLCB3YXMgYW5zY2hsaWVzc2VuIHVuZCBzaWNoIGFscyBoYWxid2VncyBmYWVoaWcgZXJ3ZWlzZW4gc29sbApzZWhyIGhpbGZyZWljaCBzZWluLiBNYWNoIGRvY2ggbWFsIDpECgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQWVuZGVydW5nZW46IFRlaWwgSUkgKENyb2Z0LCAgOS4gSnVsIDIwMDYsIDIzOjM3OjAyKToKfiMhIHJuPUdsb2luc29uIHJ0PTExNTI0Nzk5MTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ5NTUxMjc3CkJpdHRlIG5pY2h0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEFlbmRlcnVuZ2VuOiBUZWlsIElJIChWZWN0b3IsIDEwLiBKdWwgMjAwNiwgMDA6NDI6MTUpOgp+IyEgcm49Q3JvZnQgcnQ9MTE1MjQ4MTAyMiByZz1zY2htYXJybgp+IyEgdGlkPTExNDk1NTEyNzcKOnNjaGxpZXNzdCBzaWNoIENyb2Z0IGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQWVuZGVydW5nZW46IFRlaWwgSUkgKERhcmtsb3IsIDEwLiBKdWwgMjAwNiwgMDE6NTE6NDIpOgp+IyEgcm49Q3JvZnQgcnQ9MTE1MjQ4MTAyMiByZz1zY2htYXJybgp+IyEgdGlkPTExNDk1NTEyNzcKR2VuYXUsIGljaCB3YWVyIG4gdmVyZGFtbXQgc2NobGVjaHRlciBNYWdpZXIgLSBiaW4gdmllbCB6dSB1bm1vdGl2aWVydCB1bQpncm9zcyB3YXMgenUgbWFjaGVuLCBhYmVyIG1pY2ggYWVyZ2VybiB1ZWJlciBVbnNpbm4ga2FubiBpY2ggZ3V0Li4uIAoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQWVuZGVydW5nZW46IFRlaWwgSUkgKFZlY3RvciwgMTAuIEp1bCAyMDA2LCAwODoyNDowNSk6Cn4jISBybj1EYXJrbG9yIHJ0PTExNTI0ODkxMDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTQ5NTUxMjc3CiJzaWNoIGFlcmdlcm4iIHNpZWh0IGFuZGVycyBhdXMuIG5hY2ggYWVyZ2VyIGtvbW10IG9mdG1hbHMgZWluCnZlcmJlc3NlcnVuZ3N2b3JzY2hsYWcgb2RlciBlaW5lIGtvbnN0cnVrdGl2ZSBwaGFzZS4gaGluZ2VnZW4KYmVpIGRpciBpc3QgZXMgc28sIGRhc3MgZGVpbiBlaW56aWdlciAoc2ljaHRiYXJlcikgYmVpdHJhZyBkYXJpbgpiZXN0ZWh0LCBhbGxlcyB1bmQgamVkZW4gaW4gZGVyIG1wYSBuaWVkZXJ6dW1hY2hlbiwgc2NobGVjaHQgenUgcmVkZW4sCm1pZXNlIHN0aW1tdW5nIHp1IG1hY2hlbiB1bmQgaW5oYWx0c2xvcyB6dSBtZWNrZXJuLiB1bmQgZGFzIG5pY2h0Cm51ciBiZWkgZ2lsZGVuLmthZW1wZmVyIHNvbmRlcm4gaW4gYWxsZW4gcnVicmlrIHF1ZXIgZHVyY2ggZGllIG1wYQp1bmQgZGFzIHNjaG9uIHNlaXQgZWluZXIgTEFOR0VOIHplaXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQWVuZGVydW5nZW46IFRlaWwgSUkgKE11YWRpYiwgMTAuIEp1bCAyMDA2LCAxNjozMDoxOCk6Cn4jISBybj1aZXNzdHJhIHJ0PTExNTI1Mzg3OTUgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTE0OTU1MTI3NwpoaWhpaGkKZWluZSBrZXVsZSBpc3QgYWxzbyBlaW4gZWhlciBhbndlbmR1bmdzYmV6b2dlbmVyIHN0YWI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXVhZGliIHN0ZWxsdCBBcmsgYW4gZGVuIFByYW5nZXIgdW5kIHNhZ3QgKENyb2Z0LCAxMC4gSnVsIDIwMDYsIDE3OjA1OjI4KToKfiMhIHJuPU11YWRpYiBydD0xMTUyNTQzNzgyIHJnPXByYW5nZXIKfiMhIHRpZD0xMTUyNTQzNzgyCldpZSBzaWVodHMgbWl0IGJlcnVoaWd0ZW4gS3VycGZ1c2NoZXJuIGF1cz8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE11YWRpYiBzdGVsbHQgQXJrIGFuIGRlbiBQcmFuZ2VyIHVuZCBzYWd0IChNdWFkaWIsIDEwLiBKdWwgMjAwNiwgMTc6MDY6NDQpOgp+IyEgcm49Q3JvZnQgcnQ9MTE1MjU0MzkyOCByZz1zY2htYXJybgp+IyEgdGlkPTExNTI1NDM3ODIKZGllIHNjaGxhZ2VuIGJlc3NlciBuaWNodCB6dQpuaWNodCBndXQgZnVlciBpaHJlbiBibHV0ZHJ1Y2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBBZW5kZXJ1bmdlbjogVGVpbCBJSSAoRGFya2xvciwgMTAuIEp1bCAyMDA2LCAyMDoxNjo0Mik6Cn4jISBybj1WZWN0b3IgcnQ9MTE1MjUxMjY0NSByZz1zY2htYXJybgp+IyEgdGlkPTExNDk1NTEyNzcKRXMgaXMgZGVpbiBQcm9ibGVtIHdlbm4gZHUgZGFzIHNvIHNpZWhzdC4gVW5kIHdhcyBzb2xsIG1hbiBiZWkgTWFnaWVyd2lsbGt1ZXIKa29udHJ1a3RpdmUgVmVyYmVzc2VydW5nc3ZvcnNjaGxhZWdlIG1hY2hlbj8gLSBNYW4gYWVyZ2VydCBpY2ggaGFsdCBlaW5mYWNoCm51ciBkYXJ1ZWJlciwgc2NocmVpYnQgc2VpbmUgTWVpbnVuZywgdmVyZm9sZ3QgZGllIERpc2t1c3Npb24sIHdhcnRldCBhYi4gV2VubgpuaXggd2VpdGVyIHBhc3NpZXJ0LCBmaW5kZXQgbWFuIHNpY2ggaXJnZW5kd2FubiBkYW1pdCBhYiwgaWdvcmllcnQgbWFuIGVzCmVpbmZhY2ggb2RlciBzcGllbHQgaGFsdCBuaWNoIG1laHIgd2VpdGVyLCBhYmVyIG9iIGRhcyBkZXIgU2lubiBkZXIgU2FjaGUgaXMKd2Vpc3MgaWNoIG5pY2gsIHdvIGRpZSBTcGllbGVyemFobGVuIGRvY2ggc28gc2Nob24gc3RhZW5kaWcgYW0gc2lua2VuIHNpbmQuCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogWnVzdGFlbmRpZ2tlaXQgKFpvb2ssIDEwLiBKdWwgMjAwNiwgMjI6NTE6MDcpOgp+IyEgcm49U2hhcmlhIHJ0PTExNTI1NjIxMTggcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTExNTE5MzI4OTMKV2llIGtvbW1zdCBEdSBkYXJhdWYsIGRhc3MgbWlyIEthbXBmc3RhZWJlIHdvaGxnZWZhZWxsaWcgd2FlcmVuPwoKQWNoc28sIGphLCBlcyBnZWh0IGphIHVtIGRpZSBLbGVydXMtU2VwcGVuLVBzZXVkby1Hb2V0dGVyLi4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogUmVib290cywgQ3Jhc2hzIHVuZCBzbyAoR2xvaW5zb24sIDE0LiBKdWwgMjAwNiwgMTQ6MzM6MzIpOgp+IyEgcm49TXVhZGliIHJ0PTExNTI4ODAzMDYgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD0xMTUyODMwNjU5ClNpbmQgcmVndWxhZXIgZG9jaCBtYXhpbWFsIG51ciAxMDAsIGRhIHdlcmRlbiBkYW5uIGhhbHQgYmVpClNwZWljaGVycGxhdHpub2V0ZW4gZWluIHBhYXIgQWxpcyBpbSBTcGllbGVyIGdlbG9lc2NodCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFJlYm9vdHMsIENyYXNocyB1bmQgc28gKE11YWRpYiwgMTQuIEp1bCAyMDA2LCAxNDozNzoxMCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTUyODgwNDEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MjgzMDY1OQpuYWphCndlbm4gbWFuIG1hbCAxMDAwIHNwaWVsZXIgYW5uaW1tdCAobmV0enRvdGVucmF1bSkgdW5kIHdlaXRlciBhbm5pbW10LCBkYXNzCmFsbGUgMTAwIG9iamVrdGUgaGFiZW4sIGRhbm4gc2luZCBkYXMgamEgbnVyIDM5MGsgbWVociBzcGVpY2hlci4KZWlnZW50bGljaCBrZWluIHRoZW1hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBDcmFzaCAoS251cnBzLCAxNS4gSnVsIDIwMDYsIDE3OjQ3OjU0KToKfiMhIHJuPVpvb2sgcnQ9MTE1Mjk3ODQzMCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExNTI3NzUzNjQKS2FubiBtYW4gbWl0IGVpbmhhZW5kaWdlbiBGYWNoa3JhZWZ0ZW4gc2lubnZvbGwga2FlbXBmZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBDcmFzaCAoWm9vaywgMTUuIEp1bCAyMDA2LCAxNzo0ODozNik6Cn4jISBybj1LbnVycHMgcnQ9MTE1Mjk3ODQ3NCByZz1zY2htYXJybgp+IyEgdGlkPTExNTI3NzUzNjQKR3JpZmYgZWluZSB6d2VpaGFlbmRpZ2UgRmFjaGtyYWZ0IHp1IHRpZWYgaW4gZWluZSBLaXN0ZT8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogQ3Jhc2ggKERhcmtsb3IsIDE1LiBKdWwgMjAwNiwgMTc6NTA6MTApOgp+IyEgcm49Wm9vayBydD0xMTUyOTc4NTE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1Mjc3NTM2NApTaWUgd29sbHRlIHZlcm11dGxpY2ggbWl0IGRlciBIYW5kIHRlc3Rlbiwgb2IgZGVyIEx1ZWZ0ZXIgc2ljaCBub2NoIGRyZWh0Li4uCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogQWVuZGVydW5nZW46IFRlaWwgSUkgKEFuYXRvbCwgMTcuIEp1bCAyMDA2LCAxNzo0Njo0MSk6Cn4jISBvbj1BbmF0b2wgb3Q9MTE1MzE1MTE2OSBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPU11YWRpYiBydD0xMTUzMDg2ODUxIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTExNDk1NTEyNzcKSmEuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTnltcGhlbnNlZSwgV2Fzc2VycXVhbGl0YWV0IHVuZCBCYWRlZGVybWF0aXRpcyA7LSkgKERhcmtsb3IsIDI1LiBKdWwgMjAwNiwgMDA6MzE6MzkpOgp+IyEgcm49WmVzc3RyYSBydD0xMTUzNzgwMDIxIHJnPXBhcnR5Cn4jISB0aWQ9MTE1Mzc2ODA1MwpOYWphLCBhYmVyIHdlbm4gbWFuIHNjaG9uIGFsbGVzIGltIHZvcmF1cyB3ZWlzcyBnaWJ0IGVzIGphIGdhciBrZWluZQpVZWJlcnJhc2NodW5nZW4gbWVoci4uLiA7KSAtIGFiZXIgbmUgZ3V0ZSBXYXNzZXJxdWFsaXRhZXQgd2FlciBiZWkgZGVtIFdldHRlcgpzY2hvbiBuZXR0LCBiZXNvbmRlcnMgZnVlciBkaWUga2xlaW5lbiB1bmQgZ3Jvc3NlbiBCYWRlcGFydHlnYWVzdGUuLi4KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE55bXBoZW5zZWUsIFdhc3NlcnF1YWxpdGFldCB1bmQgQmFkZWRlcm1hdGl0aXMgOy0pIChPcmt0b2V0ZXIsIDI1LiBKdWwgMjAwNiwgMDA6MzI6MjkpOgp+IyEgcm49RGFya2xvciBydD0xMTUzNzgwMjk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1Mzc2ODA1MwpBbHNvIGRpZSBrbGVpbmVuIEJhZGVnYWVzdGUgYWVuZGVybiBkaWUgUXVhbGl0YWV0IGRlcyBXYXNzZXJzIGRvY2ggZWgKc2VsYmVyLi4uLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE55bXBoZW5zZWUsIFdhc3NlcnF1YWxpdGFldCB1bmQgQmFkZWRlcm1hdGl0aXMgOy0pIChEYXJrbG9yLCAyNS4gSnVsIDIwMDYsIDAwOjM1OjU1KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTUzNzgwMzQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1Mzc2ODA1MwpFcyBnZWh0IGphIHVtIGRpZSBBdXNnYW5nc3F1YWxpdGFldCwgd2llIGVzIGRhbm4gbmFjaCBlaW5lciBXb2NoZSB1bSBkaWUKUXVhbGl0YWV0IGJlc3RlbGx0IGlzLCBkdWVyZnRlIGRlbiBNdWRkZXJuIGphIGVnYWwgc2Vpbi4uLiA7KQoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTnltcGhlbnNlZSwgV2Fzc2VycXVhbGl0YWV0IHVuZCBCYWRlZGVybWF0aXRpcyA7LSkgKEFyaywgMjUuIEp1bCAyMDA2LCAwMDo0NjowMik6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE1Mzc4MDM0OSByZz1zY2htYXJybgp+IyEgdGlkPTExNTM3NjgwNTMKWndlcmdlIGJhZGVuIG5pY2h0IQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE55bXBoZW5zZWUsIFdhc3NlcnF1YWxpdGFldCB1bmQgQmFkZWRlcm1hdGl0aXMgOy0pIChHbm9tZSwgMjUuIEp1bCAyMDA2LCAwMDo0ODowNCk6Cn4jISBybj1BcmsgcnQ9MTE1Mzc4MTE2MiByZz1zY2htYXJybgp+IyEgdGlkPTExNTM3NjgwNTMKZG9jaCwgZWlubWFsIGltIGphaHIuCmFiZXIgYXVzIHJ1ZWNrc2ljaHQgYXVmIGRpZSBhbmRlcmVuIGltbWVyIGVyc3QgYW0gZW5kZSBkZXIgcGFydHl3b2NoZS4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBOeW1waGVuc2VlLCBXYXNzZXJxdWFsaXRhZXQgdW5kIEJhZGVkZXJtYXRpdGlzIDstKSAoRGFya2xvciwgMjUuIEp1bCAyMDA2LCAwMToxNzoxMSk6Cn4jISBybj1Hbm9tZSBydD0xMTUzNzgxMjg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1Mzc2ODA1MwpNYW4ga29lbm50ZSBpaG5lbiBqYSBlaW4gQW5nZWJvdCBtYWNoZW4sIGRhcyBzaWUgbmljaCBhYmxlaG5lbiBrb2VubmVuLi4uLgoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogLWdyYXRzKyBhbHMgZGVmYXVsdCAoR2xvaW5zb24sIDI1LiBKdWwgMjAwNiwgMTQ6MTc6NDMpOgp+IyEgcm49TWFkbmVzcyBydD0xMTUzODI2NDg1IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTE1MzgyNTU5MApTaW5kIHdpciBoaWVyIG5ldWVyZGluZ3MgaW4gZWluZXIgRGVtb2tyYXRpZT8gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiAtZ3JhdHMrIGFscyBkZWZhdWx0IChBbGtvaG9sLCAyNS4gSnVsIDIwMDYsIDE0OjE5OjAzKToKfiMhIHJuPUdsb2luc29uIHJ0PTExNTM4Mjk4NjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUzODI1NTkwCndpZSBrb21tc3QgZHUgYXVmIGRlbW9rcmF0aWU/Cgp3aXIgbWFjaGVuIGhpZXIgZWluZSBwZXRpdGlvbiB1bmQgaG9mZmVuLCBkYXNzIGRpZSBlcmxhdWNodGVuIGdvZXR0ZXIgdW5zCndvaGxnZXNvbm5lbiBzaW5kIHVuZCB1bnMgZXJob2VocmVuCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiAtZ3JhdHMrIGFscyBkZWZhdWx0IChHbG9pbnNvbiwgMjUuIEp1bCAyMDA2LCAxNDoyNTozNCk6Cn4jISBybj1BbGtvaG9sIHJ0PTExNTM4Mjk5NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUzODI1NTkwCkRhcyBnZWh0IGlociBkYW5uIGFiZXIgZmFsc2NoIGFuLiBGdWVyIGVpbiBCaXR0Z2VzdWNoIHJlaXN0IG5pY2h0IGRhcyBnYW56ZQpEb3JmIGFuLCBzb25kZXJuIGVpbmVyIHRyaXR0IHZvciwgdHJhZWd0IGRpZSBCaXR0ZSB2b3IgdW5kIGhpbnR5ZXJsZWd0IGVpbgpHZXNjaGVuay4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiAtZ3JhdHMrIGFscyBkZWZhdWx0IChCYW1idWxrbywgMjUuIEp1bCAyMDA2LCAxNDoyNzoxNik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTUzODMwMzM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MzgyNTU5MApFaW4ga2xlaW5lcyBPcGZlciBzb2xsIFd1bmRlciB3aXJrZW4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiAtZ3JhdHMrIGFscyBkZWZhdWx0IChBbGtvaG9sLCAyNS4gSnVsIDIwMDYsIDE0OjI3OjI2KToKfiMhIHJuPUdsb2luc29uIHJ0PTExNTM4MzAzMzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUzODI1NTkwCkFsa2kgb3BmZXJ0IGRlbiBHb2V0dGVybiBlaW5lIEFuZG91aWxsZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IC1ncmF0cysgYWxzIGRlZmF1bHQgKEdyaW1tYm9ybiwgMjUuIEp1bCAyMDA2LCAxNDozNjo1Mik6Cn4jISBybj1NYWRuZXNzIHJ0PTExNTM4MjY0ODUgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMTUzODI1NTkwCkhtbSwgenVnZWdlYmVuLCBmdWVyIG1pY2ggaXN0cyBsYW5nZSBoZXIsIHVuZCBlcyBtYWcgc2ljaCBqYSBlaW5pZ2VzIGdlYWVuZGVydApoYWJlbiwgYWJlciBrYW5uIGVzIHNlaW4gZGFzcyBoaWVyIGVpbiBwYWFyIExldXRlIGJlbGVpZGlndCBzaW5kIHdlaWwgaWhyZQpsaWViZXZvbGwgZ2ViYXN0ZWx0ZW4gR3JhdHVsYXRpb25zdHJpZ2dlciBpbnMgTGVlcmUgbGF1ZmVuPyBJY2ggZmFuZCBkYXMKZGFtYWxzIGplZGVuZmFsbHMgZWhlciBuZXJ2aWcuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IC1ncmF0cysgYWxzIGRlZmF1bHQgKEFsa29ob2wsIDI1LiBKdWwgMjAwNiwgMTQ6Mzg6NDApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNTM4MzEwMTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUzODI1NTkwCmludGVyZXNzaWVydCBlcyBpcmdlbmR3ZW4sIHdhcyBkdSBmaW5kZXN0PwoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogLWdyYXRzKyBhbHMgZGVmYXVsdCAoR3JpbW1ib3JuLCAyNS4gSnVsIDIwMDYsIDE0OjM5OjU4KToKfiMhIHJuPUFsa29ob2wgcnQ9MTE1MzgzMTEyMCByZz1zY2htYXJybgp+IyEgdGlkPTExNTM4MjU1OTAKT2NoIG5lZSwgRHUgc2Nob24gd2llZGVyLiBIYXN0IERpY2ggbWl0dGxlcndlaWxlIHZvbiBkZXIgbGV0enRlbgpEaXNrdXNzaW9uc25pZWRlcmxhZ2UgZXJob2x0PyBHZWh0cyBEaXIgc29uc3QgZ3V0PyBVbmQgaW4gZGVyIEZhbWlsaWUgYWxsZQpnZXN1bmQ/ClNjaG9lbiwgZGFzcyB3aXIgZGFydWViZXIgZ2VyZWRldCBoYWJlbi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogLWdyYXRzKyBhbHMgZGVmYXVsdCAoWm9vaywgMjUuIEp1bCAyMDA2LCAxNzo0NDozNSk6Cn4jISBybj1BbmF0b2wgcnQ9MTE1Mzg0MTg1MyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTExNTM4MjU1OTAKSG0uIEViZW5lbiBtaXQgTGV2ZWwgMTAuIFNhZyBtYWwsIG1pdCB3ZWxjaGVtIExldmVsIGhhc3QgRHUgYmVtZXJrdCwgZGFzcwplcyBiZXpvZ2VuIGF1ZiBkaWUgTGViZW5zcHVua3RlIGV0d2FzIGJyaW5ndCwgaW4gS25laXBlbiBldHdhcyB6dSAKa29uc3VtaWVyZW4/IAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IC1ncmF0cysgYWxzIGRlZmF1bHQgKEFuYXRvbCwgMjUuIEp1bCAyMDA2LCAxODozNTo0NCk6Cn4jISBybj1ab29rIHJ0PTExNTM4NDIyNzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUzODI1NTkwCkFlaG5saWNoIGxhbmdlLiAKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiAtZ3JhdHMrIGFscyBkZWZhdWx0IChBbnlzaWRvcmEsIDI1LiBKdWwgMjAwNiwgMTg6Mzg6NTQpOgp+IyEgcm49QW5hdG9sIHJ0PTExNTM4NDUzNDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUzODI1NTkwCmFsc28gZGFzIGlzdCBqZXR6dCBrZWluIHNjaG1hcnJuLCBhdWNoIHdlbm4gZGFzIGluIHNjaG1hcnJuIHN0ZWh0Li4uIGFiZXIgaWNoCmhhYiBkYXMgbWl0IGRlbiBrbmVpcGVuIHJhdXNnZWZ1bmRlbiBhbHMgaWNoIG1pciBuZW4gendlaXRzcGllbGVyIGFuZ2VsZWd0CmhhYiwgZGVyIGRhbm4genUgZGVuIGthZW1wZmVybiBnZWdhbmdlbiBpc3QuLi4gZGVyIGhhdCBkYXMgZGFubiBpbiBkZXIKYXVzYmlsZHVuZyBtaXRiZWtvbW1lbi4uLiBzdGVsbHQgZXVjaCBtYWwgdm9yLCBpY2ggaGFldHRlIGtlaW5lbiBrYWVtcGZlcgpnZWhhYnQsIGRhbm4gd3Vlc3N0ZSBpY2ggZGFzIGphIGhldXRlIG5vY2ggbmljaHQgby5PCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiAtZ3JhdHMrIGFscyBkZWZhdWx0IChPcmt0b2V0ZXIsIDI1LiBKdWwgMjAwNiwgMTk6MDc6MDkpOgp+IyEgcm49QW55c2lkb3JhIHJ0PTExNTM4NDU1MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUzODI1NTkwCkVzIHNvbGwgYXVjaCBlY2h0ZSBOZXdiaWVzIGdlYmVuLCBkZW5lbiBuaWVtYW5kIGRhcyBtaXQgZGVuIEtuZWlwZW4gc2FndCwgd2llCnNvbGx0ZW4gZGllIGRhcmF1ZiBrb21tZW4sIGRhc3MgZXNzZW4gdW5kIHRyaW5rZW4gaGVpbHQ/IFNwZXppZWxsLCB3ZW5uIHNpZSBzbwplaW5lIEtuZWlwZSB2aWVsbGVpY2h0IHNvZ2FyIG1hbCB0ZXN0ZW4gdW5kIChkYSBzaWUgYmVpbSB0ZXN0ZW4gZWggdm9sbGUgTFAvTVAKaGF0dGVuLCBrZWluZSBXaXJrdW5nIHNwdWVyZW4pLgoKSW5zb2Zlcm4gd3VuZGVydCBlcyBtaWNoIG5pY2h0LCB3ZW5uIFNwaWVsZXIgYXVjaCBtaXQgcmVsYXRpdiBob2hlbiBMZXZlbG4gZGFzCiJ0YW5rZW4iIChub2NoKSBuaWNodCBrZW5uZW4uCgpPcmtULCBlaWdlbnRsaWNoIGF1Y2ggaW4gZGVyIGZhbHNjaGVuIFJ1YnJpaywgd2VpbCBuaWNodCBzY2htYXJybiBzY2hyZWliZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogLWdyYXRzKyBhbHMgZGVmYXVsdCAoQ3JvZnQsIDI1LiBKdWwgMjAwNiwgMTk6MTg6MjQpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNTM4NDcyMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTUzODI1NTkwCkhpbGZlIGxlc2VuIGlzdCB3b2hsIGltbWVyIG5vY2ggenUgc2Nod2llcmlnLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IC1ncmF0cysgYWxzIGRlZmF1bHQgKEFsa29ob2wsIDI2LiBKdWwgMjAwNiwgMTA6MzA6MDkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNTM4OTY3NjQgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMTUzODI1NTkwCnNvbGx0ZW4gd2lyIG5pY2h0IG1hbCB1ZWJlcmxlZ2VuLCBvYiB3aXIgaW4gZGVuIFRleHQsIGRlciBiZWkgc2ljaApuZXVlaW5sb2dnZW5kZW4gU3BpZWxlcm4ga29tbXQsIGVpbmUgbGFuZ2UgTGlzdGUgdm9uIEdyaW1tYm9ybnNjaGVuIFdlaXNoZWl0ZW4KaW50ZWdyaWVyZW4/IERhcyB3dWVyZGUgdW5zZXIgTWl0Z2xpZWRlcnByb2JsZW0gZG9jaCBzY2huZWxsIGxvZXNlbi4KCkFsa2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGUkFVRU4gLi4uIEF1cyBkZXIgU2ljaHQgYmVydWVobXRlciBNYWVubmVyID8gKEdub21lLCAyNi4gSnVsIDIwMDYsIDE2OjA3OjAyKToKfiMhIHJuPUFudGhlYSBydD0xMTUzOTAyOTkxIHJnPXdpdHplCn4jISB0aWQ9MTE1MzkwMjk5MQpzY2hvZW4uIDopCgphYmVyIHdlciB6dW0gZ2VpZXIgaXN0IEZpY2sgTm9sdGU/Cgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGUkFVRU4gLi4uIEF1cyBkZXIgU2ljaHQgYmVydWVobXRlciBNYWVubmVyID8gKEFudGhlYSwgMjYuIEp1bCAyMDA2LCAxNjozMzozMSk6Cn4jISBybj1Hbm9tZSBydD0xMTUzOTIyODIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MzkwMjk5MQpEYXMgaXN0IGVpbiBzZWl0IEphaHJlbiBldGFibGllcnRlciBUaXBwZmVobGVyLCBkZXIgZWluIE4genVtIEYgbWFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGUkFVRU4gLi4uIEF1cyBkZXIgU2ljaHQgYmVydWVobXRlciBNYWVubmVyID8gKEdub21lLCAyNi4gSnVsIDIwMDYsIDE2OjM5OjQ5KToKfiMhIHJuPUFudGhlYSBydD0xMTUzOTI0NDExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1MzkwMjk5MQphbGxnZW1laW4gZXRhYmxpZXJ0IG9kZXIgbnVyIGJlaSBkaXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBa3Rpb24gR2lsZGVuZmVlbGluZyAoQ2hhZ2FsbCwgMjcuIEp1bCAyMDA2LCAyMTo1OToyOCk6Cn4jISBvbj1EYXJrbG9yIG90PTExNTQwMzAzNDEgb2c9Z2lsZGVuLnphdWJlcmVyCn4jISBybj1DaGFnYWxsIHJ0PTExNTQwMjQ0NDIgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTE0NzYzMTM5OApVbmQgd2FubiB3aXJkIExseXMga2lsbGJhcj8gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFrdGlvbiBHaWxkZW5mZWVsaW5nIChDaGFnYWxsLCAyNy4gSnVsIDIwMDYsIDIxOjU5OjU4KToKfiMhIHJuPURhcmtsb3IgcnQ9MTE1NDAzMDM0MSByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMTQ3NjMxMzk4CkFuIGRlbSBUYWcgd28gRHUgbWFsIG5pY2h0IERlaW5lbiBTZW5mIGluIGRpZSBNUEEgc2V0enQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQWt0aW9uIEdpbGRlbmZlZWxpbmcgKERhcmtsb3IsIDI3LiBKdWwgMjAwNiwgMjI6NTk6MTIpOgp+IyEgcm49Q2hhZ2FsbCBydD0xMTU0MDMwMzk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0NzYzMTM5OApVRWJlciB3ZWxjaGVuIFplaXRyYXVtPwoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQWt0aW9uIEdpbGRlbmZlZWxpbmcgKENoYWdhbGwsIDI3LiBKdWwgMjAwNiwgMjI6NTk6MzApOgp+IyEgcm49RGFya2xvciBydD0xMTU0MDMzOTUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE0NzYzMTM5OApCaXMgenVtIFN0LiBOaW1tZXJsZWluc3RhZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFrdGlvbiBHaWxkZW5mZWVsaW5nIChEYXJrbG9yLCAyNy4gSnVsIDIwMDYsIDIzOjA3OjUxKToKfiMhIHJuPUNoYWdhbGwgcnQ9MTE1NDAzMzk3MCByZz1zY2htYXJybgp+IyEgdGlkPTExNDc2MzEzOTgKUGZmZiwgaW1tZXIgZGllc2UgZmFsc2NoZW4gVmVyc3ByZWNodW5nZW4gLSB0eXBpc2NoIE1hZ2llci4uLgoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV1dXIChWYW5pb24sIDI4LiBKdWwgMjAwNiwgMTg6NTQ6MjMpOgp+IyEgcm49THVnIHJ0PTExNTQxMDU0NDEgcmc9d3d3LmVudHdpY2tsdW5nCn4jISB0aWQ9MTE1MjY5NDE5NQpPdXQgb2YgY29udGV4dCBlcnJvci4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2FtcGZzdGFlYmUgKEFuYXRvbCwgMzEuIEp1bCAyMDA2LCAyMDoyMDo1Mik6Cn4jISBybj1ab29rIHJ0PTExNTQzNjI1ODIgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTExNTQzNjI1ODIKQWJlciAiS2FtcGZzdGFiIiBpbnMgTGViZW4gZ2VydWZlbiwgdW0gc2llIHZvbiAiU3BlZXIiIChUcnZlcyBzYWdlbgoiU3RhbmdlbndhZmZlIikgZGlmZmVyZW56aWVyZW4genUga29lbm5lbi4gOikpCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLYW1wZnN0YWViZSAoTXVhZGliLCAgMS4gQXVnIDIwMDYsIDA4OjQ0OjE1KToKfiMhIHJuPUFuYXRvbCBydD0xMTU0MzcwMDUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1NDM2MjU4Mgppc3QgZG9jaCBlaW5mYWNoICJzcCJlZXIgd2llICJzcGl0eiIgdW5kICJLImFtcGZzdGFiIHdpZSAiS2VpbmUgU3BpdHplIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS2FtcGZzdGFlYmUgKEFuYXRvbCwgIDEuIEF1ZyAyMDA2LCAwODo0Njo1Nik6Cn4jISBybj1NdWFkaWIgcnQ9MTE1NDQxNDY1NSByZz1zY2htYXJybgp+IyEgdGlkPTExNTQzNjI1ODIKSmEgc2Nob24ga2xhci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBDcmFzaCAoR2xvaW5zb24sICAzLiBBdWcgMjAwNiwgMDk6NTM6MzApOgp+IyEgcm49Wm9vayBydD0xMTU0NTUzNjAxIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTU0NTMyNTgyCldpcmQgWmVpdCBkYXNzIEJhbWJpIHdlaXRlciBkaWUgTVBBIG5ldSBzY2hyZWlidCA6KQouLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQ3Jhc2ggKEJhbWJpLCAgMy4gQXVnIDIwMDYsIDIwOjQwOjE5KToKfiMhIHJuPUdsb2luc29uIHJ0PTExNTQ1OTE2MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU0NTMyNTgyCldhcyBoYXQgZWluZSBuZXUgZ2VzY2hyaWViZW5lIE1QQSBtaXQgZGVtIE1haWxlciB6dSB0dW4/IEF1c3NlciBkYXNzIG1hbiBtaXQKZGVyIE1QQSByZW1vdGUgbWFpbGVuIGthbm4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMZWNrZXIhIChTdHJlYXdrY2V1ciwgIDQuIEF1ZyAyMDA2LCAyMjoyMjoxNSk6Cmh0dHA6Ly9mdW4uZHJuby5kZS9waWNzL3dlcmJ1bmcvZml4LmpwZwoKcnIgKGdydWVzc3QgYWxsZSBTdHVkZW50ZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IERhbmsgKENoYWdhbGwsICA3LiBBdWcgMjAwNiwgMjA6Mzg6NDQpOgp+IyEgcm49UGVyZGl0YSBydD0xMTU0OTc1ODMxIHJnPXBhcnR5Cn4jISB0aWQ9MTE1NDg4NTkwOApBbHNvIG1laW4gWmVsdCBpc3QgbmljaHQgd2Fzc2VyZGljaHQgaXJnZW5kd2llLiBVbmQgZGllIElzb21hdHRlIHVuZCBkZXIKU2NobGFmc2FjayBvZmZlbmJhciBhdWNoIG5pY2h0LiBBYmVyIGVnYWwsIGdhYiBqYSBub2NoIGdlbnVlZ2VuZApTY2hsYWZwbGFldHplIGluIGRlbiBCdW5nYWxvd3MuCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRWluIEJvLi4uIChNdWFkaWIsIDEwLiBBdWcgMjAwNiwgMjE6NDE6MTEpOgp+IyEgcm49Wm9vayBydD0xMTU1MjEzOTQ4IHJnPWQuZmVybndlc3QKfiMhIHRpZD0xMTU1MjA2Njc2CmJhcmJhd3VtPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlYm9vdCAoQW5hdG9sLCAxMy4gQXVnIDIwMDYsIDE5OjIxOjQ1KToKfiMhIHJuPU11YWRpYiBydD0xMTU1MzE3MzQwIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTE1NTMxNzM0MApBcmdoLCBpY2ggd2FyIGF1c2dlcnVlc3RldCEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBad2VpdGllcyBlcmxhdWJ0PyAoQW5hdG9sLCAxNC4gQXVnIDIwMDYsIDE4OjU1OjIyKToKfiMhIG9uPUFuYXRvbCBvdD0xMTU1NTc0NTE2IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49QXJrIHJ0PTExNTU1NzQ0Mzggcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTE1NTU1OTgxOApEaWUgQXVzYmlsZHVuZyB2b20gZWlnZW5lbiBad2VpdGllIGlzdCBvaG5laGluIG51ciBlaW5lIEVyd2VpdGVydW5nCmltIFZvbGxzY3JpcHQuCgpJc3QgZGFzIGpldHp0IGVpbiBBcmd1bWVudCBwcm8gb2RlciBjb250cmE/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFp3ZWl0aWVzIGVybGF1YnQ/IChBcmssIDE0LiBBdWcgMjAwNiwgMTg6NTg6NTQpOgp+IyEgcm49QW5hdG9sIHJ0PTExNTU1NzQ1MjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU1NTU5ODE4ClBvbGVtaWsgcHJvIENPMj8gOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBad2VpdGllcyBlcmxhdWJ0PyAoR2xvaW5zb24sIDE0LiBBdWcgMjAwNiwgMjI6NTQ6MzYpOgp+IyEgcm49WmVzc3RyYSBydD0xMTU1NTg2MTIzIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTExNTU1NTk4MTgKSWNoIGJpbiBkYWdlZ2VuIGRhc3MgS2FlbXBmZXIgc2ljaCBhdXN6aWVoZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogWndlaXRpZXMgZXJsYXVidD8gKFplc3N0cmEsIDE0LiBBdWcgMjAwNiwgMjI6NTU6NDYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE1NTU4ODg3NiByZz1zY2htYXJybgp+IyEgdGlkPTExNTU1NTk4MTgKT29vb29vY2guIHdhcnVtIGRlbm4gZGFzPwpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBad2VpdGllcyBlcmxhdWJ0PyAoR2xvaW5zb24sIDE0LiBBdWcgMjAwNiwgMjM6MDA6MTYpOgp+IyEgcm49WmVzc3RyYSBydD0xMTU1NTg4OTQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1NTU1OTgxOApXZWlsIGRpZSBtZWlzdGVuIGF1Y2ggbmljaHQgbWVociBzbyBqdW5nIHNpbmQgd2llIHNpZSBzaWNoIGdlYmVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFp3ZWl0aWVzIGVybGF1YnQ/IChaZXNzdHJhLCAxNC4gQXVnIDIwMDYsIDIzOjAwOjUwKToKfiMhIHJuPUdsb2luc29uIHJ0PTExNTU1ODkyMTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU1NTU5ODE4Ck5hLCBkYXMgaXN0IG5lbiBhcmd1bWVudC4gTWhtbSwgd2lyIGtvZW5uZW4gZGEgZG9jaCBiZXN0aW1tdCBuZSBBbHRlcnNncmVuemUKZWluYmF1ZW4sIG9kZXI/ICpmZyoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogWndlaXRpZXMgZXJsYXVidD8gKEdsb2luc29uLCAxNC4gQXVnIDIwMDYsIDIzOjAxOjE4KToKfiMhIHJuPVplc3N0cmEgcnQ9MTE1NTU4OTI1MCByZz1zY2htYXJybgp+IyEgdGlkPTExNTU1NTk4MTgKSmUgb2xsZXIsIGplIGRvbGxlciBtdXNzIGRpZSB6dXNjaGxhZ2VuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFp3ZWl0aWVzIGVybGF1YnQ/IChCcmFuLCAxNC4gQXVnIDIwMDYsIDIzOjAyOjI2KToKfiMhIHJuPUdsb2luc29uIHJ0PTExNTU1ODkyNzggcmc9c2NobWFycm4KfiMhIHRpZD0xMTU1NTU5ODE4CkRpZSBBbHRlcnNncmVuemUgb2RlciBkaWUgR2VuZXJhbGluPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS29uaW56aWRlbno/IChHbG9pbnNvbiwgMTYuIEF1ZyAyMDA2LCAxMTo1Mjo0Mik6ClJ1YnJpayA0NzogbWVnYXNjaG1hcnJuLCBBcnRpa2VsOiAyODYgdm9uIDI4NgpSZV4xMTY4ODA6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEdsb2luc29uLCAxNi4gQXVnIDIwMDYsCjExOjUwOjMyKToKW0JlenVnOiBBcnRpa2VsIDI4NSB2b24gR3JpbW1ib3JuIHZvbSAxNi4gQXVnIDIwMDYsIDExOjQ5OjUyXQoKSWNoIGdsYXViIE1haGFyZXQgdW5kIEd1YXJkIGtlbm5lbiBHbm9tZSBnYW56IGd1dC4KCltUb2Q6TGFyc10gR2lmdGlnZSBOYXR0ZXJuYmVlcmVuIGhhYmVuIGdlcmFkZSBNYWhhcmV0IHVtZ2VicmFjaHQuCi1UKjEKW1RvZDpMYXJzXSBHaWZ0aWdlIE5hdHRlcm5iZWVyZW4gaGFiZW4gZ2VyYWRlIE1haGFyZXQgdW1nZWJyYWNodC4gPE1pdCwKW1RvZDpMYXJzXSAxMTo1MTowNj4KCkhlaGVwZmZmcnouIFNvIHNjaGxpbW0gaXN0IGRhcyBqYSBudW4gYXVjaCBuaWNodCwgb2Rlcj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2NobGVjaHRlciBFbGVrdHJpa2Vyd2l0eiAoVmFuaW9uLCAxOC4gQXVnIDIwMDYsIDIwOjM1OjQyKToKfiMhIHJuPUFudGhlYSBydD0xMTU1ODk2MzQ4IHJnPXdpdHplCn4jISB0aWQ9MTE1NTg5NjM0OApJY2ggd3VlcmRlIGphIGpldHp0IGJlaGF1cHRlbiwgZGFzcyBkZXIga2F1bSBub2NoIHp1IHVlYmVyYmlldGVuIGlzdCwgYWJlcgp2ZXJtdXRsaWNoIHd1ZXJkIGljaCBMZXV0ZSBhbnN0b2NoZXJuLCBlcyB6dSBwcm9iaWVyZW4uCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHJhY2hlbi4uLiAoU3dvdGwsIDIwLiBBdWcgMjAwNiwgMTA6MTc6MDQpOgo+IGZyYWdlIGRyYWNoZSBuYWNoIGpvZgpTY2hlaW5iYXIgdmVyc2Nod29lcmVyaXNjaCBzZW5rdCBzaWNoIGRlciBLb3BmIGRlcyBEcmFjaGVuIHp1IERpciBoaW46CidQc2NodCwgd2FzIGhvZXJlIGljaCBkYSA/IEpvZiA/IFdhcyBtdXNzIG1pY2ggZGFzIGludGVyZXNzaWVyZW4gPwogRnJhZyBSdWJlbnMsIG9iIGVyIHNjaG9ubWFsIGRhdm9uIGdlaG9lcnQgaGF0LicKU28gZWluIGJpc3NjaGVuIG11ZXJyaXNjaCBlcnNjaGVpbnQgRGlyIGRlciBLbGVpbmUgc2Nob24sIGFiZXIgd2FydW0gbnVyID8KCkphLCB3YXJ1bSBudXI/CgpTd290bAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERyYWNoZW4uLi4gKE11YWRpYiwgMjAuIEF1ZyAyMDA2LCAyMDoxNDoxMCk6Cn4jISBybj1Td290bCBydD0xMTU2MDYxODI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1NjA2MTgyNApobW1tPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEcmFjaGVuLi4uIChHcmltbWJvcm4sIDIxLiBBdWcgMjAwNiwgMDc6MzI6MzEpOgp+IyEgcm49TXVhZGliIHJ0PTExNTYwOTc2NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU2MDYxODI0ClZlcm11dGxpY2ggd2VpbCBpaG0gZGFzIEdlcGxlbmtlIHNlbGJlciBwZWlubGljaCBpc3QuIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogVmxsLiBtYSBMaW51eCBwcm9iaWVyZW4uLi4gKEdsb2luc29uLCAyMS4gQXVnIDIwMDYsIDE2OjA0OjQwKToKfiMhIHJuPU11YWRpYiBydD0xMTU2MTY4OTU4IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTExNTYwNjc1MjMKVG9zaGliYSAzMDAgQ0RUIGdpbmcgZ2FueiBndXQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE51ciBtYWwgc28genVtIEZlc3RoYWx0ZW4gLi4uLCAoR2xvaW5zb24sIDIyLiBBdWcgMjAwNiwgMTE6MDA6NTQpOgp+IyEgcm49UnVtYXRhIHJ0PTExNTYyMzcxMDAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTU2MjM1NjQ1CkFrdHVlbGxlciBDcmFzaCBmb2xndCB3YW5uPyA6KQoKTmVpbiwgaWNoIHdvbGx0ZSBudXIgbWFsIHplaWdlbiwgZGFzcyBtZWhyZXJlIENyYXNoZXMgZ3J1ZW5kbGljaCBtaXQgZGVyCklkbGVyYmFzaXMgYXVmcmFldW1lbi4gRGEgdmVyc2FndGUgZGFubiB3b2hsIGRhcyBSZWNvbm5lY3QtU2NyaXB0IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IE51ciBtYWwgc28genVtIEZlc3RoYWx0ZW4gLi4uLCAoSmFtZXNvbiwgMjIuIEF1ZyAyMDA2LCAxMTowMTo1Nyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTU2MjM3MjU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1NjIzNTY0NQpEdSB3b2xsdGVzdCBtYWwgemVpZ2VuLi4uIApEVSB3YXJzdCBkYXM/IQoKRXJzY2hpZXNzdCBHbG9pbnNvbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBOdXIgbWFsIHNvIHp1bSBGZXN0aGFsdGVuIC4uLiwgKEdsb2luc29uLCAyMi4gQXVnIDIwMDYsIDExOjA1OjExKToKfiMhIHJuPUphbWVzb24gcnQ9MTE1NjIzNzMxNyByZz1zY2htYXJybgp+IyEgdGlkPTExNTYyMzU2NDUKSGFsdGhhbHQsIG51ciB3ZWlsIGljaCBlaW5lbiBDcmFzaCBlcmlkZWx0IGhhYmUgZnJlc3NlIGljaCBub2NoIGxhbmdlIGtlaW5lCkJ1ZXJnZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogY3Jhc2ggKEdyaW1tYm9ybiwgMjIuIEF1ZyAyMDA2LCAxNDoyMTo1MSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTE1NjI0OTMwNyBvZz1hbGxnZW1laW5lcwp+IyEgcm49TXVhZGliIHJ0PTExNTYyNDkyMTkgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTU2MjM1MDQ3Cj4gdW5kIHdpZSBlcmtsYWVyc3QgZHUgbWl0IGRpZXNlciBhbm5haG1lIGplZGUgdm9yaGVyaWdlIHVwdGltZT8KCkhhaCwgZGFzIGlzdCBlaW5mYWNoOiBNYWdpZSEKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU3BlaWNoZXIgKEdsb2luc29uLCAyMi4gQXVnIDIwMDYsIDE1OjA1OjA1KToKfiMhIHJuPU11YWRpYiBydD0xMTU2MjUxNDk2IHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD0xMTU2MjQzNzIyCkpldHp0IG5pY2h0IGtuYXVzZXJuLiBEZXIgVmVyZWluIG11c3MgbWFsIHdpZWRlciBHZWxkIGF1c2dlYmVuISA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFNwZWljaGVyIChHcmltbWJvcm4sIDIyLiBBdWcgMjAwNiwgMTU6MDk6MTEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE1NjI1MTkwNSByZz1zY2htYXJybgp+IyEgdGlkPTExNTYyNDM3MjIKS2VpbiBUaGVtYS4gSWNoIHZlcmthdWZlIGRlbiBlbnRzcHJlY2hlbmRlbiBTcGVpY2hlciB6dW0gc2FnZW5oYWZ0ZW4KVm9ydGVpbHNwcmVpcyB2b24gbGVkaWdsaWNoIHVuZ2xhdWJsaWNoIGd1ZW5zdGlnZW4gOTk5LDk4IEVVUi4gWnVncmVpZmVuCnNvbGFuZ2UgZGFzIEFuZ2Vib3QgZ3VlbnN0aWcgaXN0IQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogY3Jhc2ggKEdyaW1tYm9ybiwgMjIuIEF1ZyAyMDA2LCAxNTo0MzoxOSk6Cn4jISBvbj1NdWFkaWIgb3Q9MTE1NjI1MjY5OSBvZz1hbGxnZW1laW5lcwp+IyEgcm49R25vbWUgcnQ9MTE1NjI1MjU2NSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExNTYyMzUwNDcKaWNoIGhhZXR0ZSBnZXJuZSBhbGxlcyB6ZWl0Z2xlaWNoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogY3Jhc2ggKEdyaW1tYm9ybiwgMjIuIEF1ZyAyMDA2LCAxNTo0MzoyMyk6Cn4jISBvbj1ab29rIG90PTExNTYyNTI3NjEgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPU11YWRpYiBydD0xMTU2MjUyNjk5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTE1NjIzNTA0Nwphb2wKegoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IGNyYXNoIChHcmltbWJvcm4sIDIyLiBBdWcgMjAwNiwgMTU6NDM6MjUpOgp+IyEgb249R3JpbW1ib3JuIG90PTExNTYyNTI5MjAgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVpvb2sgcnQ9MTE1NjI1Mjc2MSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExNTYyMzUwNDcKRGFzIHNvbGx0ZSBzaWNoIG1hY2hlbiBsYXNzZW4sIEVUQSBpbiBkZXIgendlaXRlbiBIYWVsZnRlIDIwMTAuIElzdCBkb2NoIG9rCmZ1ZXIgZXVjaCwgaWhyIHdvbGx0IGphIGtlaW5lIFp3aXNjaGVubG9lc3VuZ2VuLCBvZGVyPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogY3Jhc2ggKEdyaW1tYm9ybiwgMjIuIEF1ZyAyMDA2LCAxNTo0MzoyNyk6Cn4jISBvbj1NdWFkaWIgb3Q9MTE1NjI1Mjk4NiBvZz1hbGxnZW1laW5lcwp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNTYyNTI5MjAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTU2MjM1MDQ3CmlzdCBkYXMgZWluIGFuZ2Vib3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogY3Jhc2ggKEdyaW1tYm9ybiwgMjIuIEF1ZyAyMDA2LCAxNTo0MzoyOCk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTE1NjI1MzEyMiBvZz1hbGxnZW1laW5lcwp+IyEgcm49TXVhZGliIHJ0PTExNTYyNTI5ODYgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTU2MjM1MDQ3Ck1laW4gYWt0dWVsbGVzIEFuZ2Vib3Qgc3RlaHQgaW4gc2NobWFycm4uIEFiZXIgaWNoIGJpZXRlIGF1Y2ggZ2VybmUgZGFzIGhpZXIKYW4gLSBiaXMgMjAxMCBmYWVsbHQgbWlyIHNjaG9uIGVpbiBHcnVuZCBmdWVyIHdlaXRlcmUgVmVyem9lZ2VydW5nZW4gZWluLiBaLkIuCmtvZW5udGUgaWNoIHBvc3R1bGllcmVuIGRhc3MgZGllIGZpeGVzIGFuIGRhcyBFcnNjaGVpbmVuIHZvbiBWaXN0YSBnZWJ1bmRlbgpzaW5kLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBjcmFzaCAoR3JpbW1ib3JuLCAyMi4gQXVnIDIwMDYsIDE1OjQzOjMxKToKfiMhIG9uPU11YWRpYiBvdD0xMTU2MjUzMTk0IG9nPWFsbGdlbWVpbmVzCn4jISBybj1HcmltbWJvcm4gcnQ9MTE1NjI1MzEyMiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExNTYyMzUwNDcKYWNoIGxhc3MgbWFsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogY3Jhc2ggKEdyaW1tYm9ybiwgMjIuIEF1ZyAyMDA2LCAxNTo0MzozMyk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTE1NjI1MzI1MCBvZz1hbGxnZW1laW5lcwp+IyEgcm49TXVhZGliIHJ0PTExNTYyNTMxOTQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTU2MjM1MDQ3CkljaCBsZWcgYXVjaCBub2NoIGVpbiBQZXJwZXR1dW0gTW9iaWxlIGVyc3RlciBLbGFzc2UgZHJhdWY6Cmh0dHA6Ly9uZXdzLnlhaG9vLmNvbS9zL2FmcC8yMDA2MDgxOC9ic19hZnAvaXJlbGFuZHNjaWVuY2VlbmVyZ3kKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IGNyYXNoIChHcmltbWJvcm4sIDIyLiBBdWcgMjAwNiwgMTU6NDM6MzUpOgp+IyEgb249TXVhZGliIG90PTExNTYyNTQxMjYgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTU2MjUzMjUwIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTE1NjIzNTA0Nwp2ZXJsZWdlIGRvY2ggYml0dGUgbWFsIHdvIGVzIGhpbmdlaG9lcnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBjcmFzaCAoR3JpbW1ib3JuLCAyMi4gQXVnIDIwMDYsIDE1OjQzOjQ3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTU2MjU0MjE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1NjIzNTA0NwpEb25lLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBjcmFzaCAoUm9uZGEsIDIyLiBBdWcgMjAwNiwgMjM6MDg6MTUpOgp+IyEgcm49Qm9pbmcgcnQ9MTE1NjI0ODk1OCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExNTYyMzUwNDcKPiBVbmFiaGFlbmdpZyB2b20gcmVhbGVuIFZlcmJyYXVjaCBtdXNzIGRlciBTcGVpY2hlcmZyZXNzZXIgbmF0dWVybGljaAo+IGdlZnVuZGVuIHdlcmRlbi4KClN0aW1tZSBkYWZ1ZXIuIFdlciBzY2hyZWlidCBhbHNvIGRpZSBRdWVzdCAiRmluZGUgZGVuIFNwZWljaGVyZnJlc3NlciEiPyBVbmQKd2llIHNjaGF1ZW4gZGllIEJpZXN0ZXIgYXVzPyBIYWJlbiBkaWUgZ2FueiB2aWVsZSBCZWluY2hlbiB3aWUgbmVuClNwZWljaGVycmllZ2VsPwoKUm9uZGEgKm9vb29vaywgZGVyIGlzdCBmbGFjaCAtIGljaCBzY2hyZWliIGRlbiB0cm90emRlbS4uLiAqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBQaXJhdGVuIGRlciBLYXJpYmlrIElJIChIdW1uaSwgMjMuIEF1ZyAyMDA2LCAxNjo0MjozMik6Cn4jISBybj1Cb2luZyBydD0xMTU2MzQzOTMyIHJnPWt1bHR1cgp+IyEgdGlkPTExNTYyODk2NjAKT2ggZG9jaCwgZGVyIEZpbG0gZ2VodCB2ZXJkYW1tdCBpbiBkaWUgVGllZmUuIE9oLCB3aWUgdGllZi4gU28gcmljaHRpZwp0aWVmLi4uLgoKT2guLiBpc3QgZGFzIHRpZWYuLi4KCkhvZmZlbnRsaWNoIGdlaHQgZGFzIHNvIHRpZWYsIGRhc3MgbWFuIGtlaW5lIEZpc2NoZSBtZWhyIGVydHJhZ2VuIG11c3MuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogUGlyYXRlbiBkZXIgS2FyaWJpayBJSSAoQWxrb2hvbCwgMjMuIEF1ZyAyMDA2LCAxNjo0NDoxOCk6Cn4jISBybj1IdW1uaSBydD0xMTU2MzQ0MTUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1NjI4OTY2MApiaXN0IGR1IGltIFNlZSBiZWkgQnJpZXNlbGxhbmcgc29vIHRpZWYgZ2V0YXVjaHQ/CgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBQaXJhdGVuIGRlciBLYXJpYmlrIElJIChCb2luZywgMjMuIEF1ZyAyMDA2LCAxNjo0NzoyMCk6Cn4jISBybj1BbGtvaG9sIHJ0PTExNTYzNDQyNTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTU2Mjg5NjYwCkltIFNlZSB2b24gQnJpZXNlbGFuZyBnaWJ0IGVzIGtlaW5lIEZpc2NoZS4gRGFzIGhhdCBIdW1uaSBiZXdpZXNlbi4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFBpcmF0ZW4gZGVyIEthcmliaWsgSUkgKE1hcmN1cywgMjMuIEF1ZyAyMDA2LCAyMjo0NzozNSk6Cn4jISBybj1Cb2luZyBydD0xMTU2MzQ0NDQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1NjI4OTY2MApJY2ggaGFiIGFiZXIgd2VsY2hlIGdlc2VoZW4gLi4uCgpDaWFvLCBNYXJjdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBQaXJhdGVuIGRlciBLYXJpYmlrIElJIChHbG9pbnNvbiwgMjQuIEF1ZyAyMDA2LCAwMDoxNToxOSk6Cn4jISBybj1NYXJjdXMgcnQ9MTE1NjM2NjA1NSByZz1zY2htYXJybgp+IyEgdGlkPTExNTYyODk2NjAKSW4gZGVtIEZpbG0gZ2lidCBlcyBrZWluZSBGaXNjaGUuIE5pY2h0IHdpcmtsaWNoLiBVbmQgVGllZmdhbmcgaGFiZW4gd2lyIG5pY2h0CmVyd2FydGV0LCBlciB3YXIgaGFsdCB6dSAuLi4gRGluZ3MuIElyZ2VuZHdpZSB3aXJrbGljaCB6dXZpZWwuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFBpcmF0ZW4gZGVyIEthcmliaWsgSUkgKE11YWRpYiwgMjQuIEF1ZyAyMDA2LCAxMzozMzo1Nyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTU2MzcxMzE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1NjI4OTY2MAptYXJjdXMsIGR1IGhhc3Qgd2FocnNjaGVpbmxpY2ggbnVyIGVpbmUgc2VociBibHVlaGVuZGUgZmFudGFzaWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXc2NoZ2VsZWdlbmhlaXQsIGF1Y2ggZnVlciBad2VyZ2UhIChDcm9mdCwgMjQuIEF1ZyAyMDA2LCAxNDowNTozMSk6Cn4jISBybj1TZWxldmVuIHJ0PTExNTY0MjEwNzMgcmc9ZC51bnRlcndlbHQKfiMhIHRpZD0xMTU2NDIxMDczClVuZCB3YW5uIGtvbW1lbiBLbG9zPyA6bykKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FzIGljaCBzY2hvbiBsYW5nZSBzYWdlbiB3b2xsdGUuLi4gKEdsb2luc29uLCAyNS4gQXVnIDIwMDYsIDAwOjM0OjM1KToKfiMhIHJuPVZpbmNlbnQgcnQ9MTE1NjQ1NTMzMiByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMTU2NDU1MzMyCj4gYmluIGljaCBnZXJuZSBiZXJlaXQgZGVuIEJld2VpcyBoaWVyZnVlciBhdWNoIHBlcnNvZW5saWNoCj4gYW56dXRyZXRlbiAuLi4KClNjaG9uIGtsYXIuIEFiZXIgImZyZWliaWVyIiBnaWJ0IGVzIG51bm1hbCBudXIgYmVpIGRlbiBCaWVyc2NodWV0dGxlcm4uIEthdWYKZGlyIGRlaW5lbiBGdXNlbCBzZWxic3QuIEZ1c2VsLCBnZW5hdS4gR2xhdWJzdCBkdSBldHdhLCBoaWVyIHdpcmQgYXVjaCBudXIKYmVpbSBXYXNzZXIgaXJnZW5kIGVpbiBSZWluaGVpdHNnZWJvdCBlaW5nZWhhbHRlbj8gTW9lY2h0ZSBtYWwgc2VoZW4gd2llIGd1dApkdSBub2NoIHphdWJlcm4ga2FubnN0IHdlbm4gZGlyIGVpbiBkb3BwZWx0ZXIgSHlkcmF0b2V0ZXIgYXVzIFJvY2h1cwpTY2htdXR6c3BlbHVua2UgZGFzIE5lcnZlbnN5c3RlbSB3ZWdtZXRoeWxpc2llcnQgaGF0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2FzIGljaCBzY2hvbiBsYW5nZSBzYWdlbiB3b2xsdGUuLi4gKE9ya3RvZXRlciwgMjUuIEF1ZyAyMDA2LCAwMDo0NToxMyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTU2NDU4ODc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1NjQ1NTMzMgoqZyogYmVzb2ZmZW5lciBaYXViZXJlciBkZXIgaXJnZW5kd2FzIHVudmVyc3RhZW5kbGljaGVzIG51c2NoZWx0Li4uLiBkYXMgbmVubmUKaWNoICJyYW5kb20gY2FzdGluZyIsIGtvZW5udGUgaW50ZXJlc3NhbnRlIEVmZmVrdGUgZ2ViZW4uLi4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXYXMgaWNoIHNjaG9uIGxhbmdlIHNhZ2VuIHdvbGx0ZS4uLiAoR25vbWUsIDI1LiBBdWcgMjAwNiwgMTA6NTE6MjUpOgp+IyEgcm49R25vbWUgcnQ9MTE1NjQ5NTg1MyByZz1zY2htYXJybgp+IyEgdGlkPTExNTY0NTUzMzIKbmVpbiwgZGFzIGdlaG9lcnQgenUgZGVuIGJpZXJzY2h1ZXR0bGVybi4Kc2NobGllc3NsaWNoIG11ZXNzdGUgZG9jaCBzb3dhcyBkZXJlbiBncnVuZGxhZ2Ugc2Vpbi4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXYXMgaWNoIHNjaG9uIGxhbmdlIHNhZ2VuIHdvbGx0ZS4uLiAoQ3JvZnQsIDI1LiBBdWcgMjAwNiwgMTA6NTI6MzkpOgp+IyEgcm49R25vbWUgcnQ9MTE1NjQ5NTg4NSByZz1zY2htYXJybgp+IyEgdGlkPTExNTY0NTUzMzIKV2FzIGJpdHRlIGhhdCBXZWluIG1pdCBCaWVyIHp1IHR1bj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBXYXMgaWNoIHNjaG9uIGxhbmdlIHNhZ2VuIHdvbGx0ZS4uLiAoR2xvaW5zb24sIDI1LiBBdWcgMjAwNiwgMTA6NTY6MDYpOgp+IyEgcm49Q3JvZnQgcnQ9MTE1NjQ5NTk1OSByZz1zY2htYXJybgp+IyEgdGlkPTExNTY0NTUzMzIKWnVja2VyLCBXYXNzZXIsIEFsa29ob2wsIEhlZmUuIEdlc2NobWFjayBlaGVyIHdlbmlnZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogV2FzIGljaCBzY2hvbiBsYW5nZSBzYWdlbiB3b2xsdGUuLi4gKEdub21lLCAyNS4gQXVnIDIwMDYsIDExOjA4OjU0KToKfiMhIHJuPUNyb2Z0IHJ0PTExNTY0OTU5NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU2NDU1MzMyCnNlaXQgd2FubiBpc3QgZGllIHdhbmRsdW5nIHZvbiB3YXNzZXIgYXVmIHdlaW4gYmVncmVuenQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXYXMgaWNoIHNjaG9uIGxhbmdlIHNhZ2VuIHdvbGx0ZS4uLiAoQ3JvZnQsIDI1LiBBdWcgMjAwNiwgMTE6MTE6MTIpOgp+IyEgcm49R25vbWUgcnQ9MTE1NjQ5NjkzNCByZz1zY2htYXJybgp+IyEgdGlkPTExNTY0NTUzMzIKU2VpdCB3YW5uIGthbm4gbWFuIG1pdCBkZXIgV2Fzc2Vyd2FuZGx1bmcgQmllciBoZXJzdGVsbGVuPyAgQmlzaGVyIGtvbW1lbgpkYSBpaXJjIG51ciBXZWluZSB1LmFlLiByYXVzLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFdhcyBpY2ggc2Nob24gbGFuZ2Ugc2FnZW4gd29sbHRlLi4uIChNb250YW51cywgMjUuIEF1ZyAyMDA2LCAxMToxMjowMCk6Cn4jISBybj1Dcm9mdCBydD0xMTU2NDk3MDcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1NjQ1NTMzMgpMYXNzdCBWaW5jZW50IGRhcyBQcm9ncmFtbWllcmVuLiBEYW5uIGtvbW1lbiB6dW1pbmRlc3QgYmVpIGd1dGVuIHphdWJlcmVybgpleGNlbGxlbnRlIENvY2t0YWlscyBiZWkgcnVtLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogV2FzIGljaCBzY2hvbiBsYW5nZSBzYWdlbiB3b2xsdGUuLi4gKENyb2Z0LCAyNS4gQXVnIDIwMDYsIDExOjE1OjAxKToKfiMhIHJuPU1vbnRhbnVzIHJ0PTExNTY0OTcxMjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU2NDU1MzMyCklzdCBWaW5jZW50IHVlYmVyaGF1cHQgc2Nob24gU2VoZXI/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdhcyBpY2ggc2Nob24gbGFuZ2Ugc2FnZW4gd29sbHRlLi4uIChNb250YW51cywgMjUuIEF1ZyAyMDA2LCAxMToxNTo1NSk6Cn4jISBybj1Dcm9mdCBydD0xMTU2NDk3MzAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1NjQ1NTMzMgpTZWl0IHdhbm4gbXVzcyBtYW4gaGllciBNTmFnaWVyIHNpZW4sIHVtIGV0d2FzIHp1IHByb2dyYW1taWVyZW4/LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogV2FzIGljaCBzY2hvbiBsYW5nZSBzYWdlbiB3b2xsdGUuLi4gKEdub21lLCAyNS4gQXVnIDIwMDYsIDExOjE3OjExKToKfiMhIHJuPUNyb2Z0IHJ0PTExNTY0OTcwNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU2NDU1MzMyCmRlciBzcHJ1Y2ggaGVpc3N0ICJ3YXNzZXJ3YW5kbHVuZyIgdW5kIG5pY2h0ICJ3ZWluaGVyc3RlbGx1bmciLgppbnNvZmVybiBrYW5uIGRhcyBlcmdlYm5pcyBkdXJjaGF1cyBnaWxkZW5hYmhhZW5naWcgc2Vpbi4KZXR3YXMgcGhhbnRhc2llIHZvcmF1c2dlc2V0enQgbmF0dWVybGljaC4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBXYXMgaWNoIHNjaG9uIGxhbmdlIHNhZ2VuIHdvbGx0ZS4uLiAoR2xvaW5zb24sIDI1LiBBdWcgMjAwNiwgMTE6MjA6MDUpOgp+IyEgcm49R25vbWUgcnQ9MTE1NjQ5NzQzMSByZz1zY2htYXJybgp+IyEgdGlkPTExNTY0NTUzMzIKTmVubmVuIHdpciBkZW4gU3BydWNoIGVpbmZhY2ggIkhvY2h6ZWl0IHZvbiBLYW5hIi4gUHVua3RhdXMuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdhcyBpY2ggc2Nob24gbGFuZ2Ugc2FnZW4gd29sbHRlLi4uIChNb250YW51cywgMjUuIEF1ZyAyMDA2LCAxMToyMjowMyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTU2NDk3NjA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1NjQ1NTMzMgpEdSB3aWxsc3QgZGllIFRvY2h0ZXIgdm9uIE1hbWFyZXQgamV0enQgc2Nob24gdmVyaGVpcmF0ZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogV2FzIGljaCBzY2hvbiBsYW5nZSBzYWdlbiB3b2xsdGUuLi4gKEdsb2luc29uLCAyNS4gQXVnIDIwMDYsIDExOjI0OjM1KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTExNTY0OTc3MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU2NDU1MzMyCk5laW4sIGVpZ2VudGxpY2ggYmVtYWxlbiwgbWl0IE9lbCwgdW5kIGRhbmFjaCBpbiBXYXNzZXIgdGF1Y2hlbiB1bSBkYXMgcm90IHp1CmZhZXJiZW4uIE9kZXIgc28uIEhpZXNzIGRpZSBUb2NodGVyIG5pY2h0IGVpZ2VudGxpY2ggS2FtYT8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogV2FzIGljaCBzY2hvbiBsYW5nZSBzYWdlbiB3b2xsdGUuLi4gKE1vbnRhbnVzLCAyNS4gQXVnIDIwMDYsIDExOjI5OjQ5KToKfiMhIHJuPUdsb2luc29uIHJ0PTExNTY0OTc4NzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU2NDU1MzMyCk9kZXIgS29tYT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdhcyBpY2ggc2Nob24gbGFuZ2Ugc2FnZW4gd29sbHRlLi4uIChNdWFkaWIsIDI1LiBBdWcgMjAwNiwgMTE6MzA6MjkpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNTY0NTk1MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU2NDU1MzMyCnphdWJlcmVyIGRpZSB1bnZlcnN0YWVuZGxpY2hlcyBudXNjaGVsbiB1bmQgaW50ZXJlc3NhbnRlIGVmZmVrdGUgaGVydm9ycnVmZW4KbmVubnQgbWFuIG1hZ2llcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogV2FzIGljaCBzY2hvbiBsYW5nZSBzYWdlbiB3b2xsdGUuLi4gKE11YWRpYiwgMjUuIEF1ZyAyMDA2LCAxMTozMToyNyk6Cn4jISBybj1Hbm9tZSBydD0xMTU2NDk3NDMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1NjQ1NTMzMgplaWdlbnVyaW4sIG1pdHRlbHN0cmFobD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBXYXMgaWNoIHNjaG9uIGxhbmdlIHNhZ2VuIHdvbGx0ZS4uLiAoR2xvaW5zb24sIDI1LiBBdWcgMjAwNiwgMTE6MzM6MTUpOgp+IyEgcm49TXVhZGliIHJ0PTExNTY0OTgyODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU2NDU1MzMyCklzdCBkZXIgbnVuIGdpbGRlbmFiaGFlbmdpZyBvZGVyIG5pY2h0PwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSb3NlbmtsZWlkIGJla2xlaWRldGUgRnJhdWVuIC4uLiAoTXVhZGliLCAyNi4gQXVnIDIwMDYsIDA4OjM2OjI4KToKfiMhIHJuPVphcnVuaWEgcnQ9MTE1NjU1NzIwMSByZz1kLndhbGQKfiMhIHRpZD0xMTU2NTU3MjAxCm5hIHdlbm4gZGFzIHJvc2Vua2xlaWQgd2Vpc2UgaXN0LCBkYW5uIHVudGVyc3R1ZXR6dCBlcyBzZWluZSB0cmFlZ2VyaW4KdmllbGxlaWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUm9zZW5rbGVpZCBiZWtsZWlkZXRlIEZyYXVlbiAuLi4gKENyb2Z0LCAyNi4gQXVnIDIwMDYsIDE5OjQ1OjM0KToKfiMhIHJuPVphcnVuaWEgcnQ9MTE1NjYxNDI1NCByZz1kLndhbGQKfiMhIHRpZD0xMTU2NTU3MjAxCktvZW5udGUgbWFuIGRhcyBhdWNoIGJlaSBkZXIgR2VsZWdlbmhlaXQgaW4gZGFzIFNjaGlsZCBkZXIgRDExZW4gZWluYmF1ZW4/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXYXMgaWNoIHNjaG9uIGxhbmdlIHNhZ2VuIHdvbGx0ZS4uLiAoQmFtYmksIDI3LiBBdWcgMjAwNiwgMTQ6MDk6NTMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE1NjQ1ODg3NSByZz1zY2htYXJybgp+IyEgdGlkPTExNTY0NTUzMzIKR2xhdWJzdCBEdSwgVmluY2VudCB3dWVyZGUgaW0gTUcgd29hbmRlcnMgdHJpbmtlbiBhbHMgYmVpIFN1YWhlbGk/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgbXVzcyBkYXMgZnVlciBlaW4gSG9jaHdhYXNlciBnZXdlc2VuIHNlaW4hIChPcmt0b2V0ZXIsICAzLiBTZXAgMjAwNiwgMDE6NTE6MDcpOgpbPE1hc3RlUj46TW9sZGF1IHZlcmxhZXNzdCBhbHMgTGV0enRlciBkaWUgRWJlbmUgJ0thcmxzcnVoZScsIHdvcmF1ZiBkaWVzZQogICAgICAgICAgc2ljaCBpbiBlaW5lbSBCbGl0eiBva3RhcmluZW4gTGljaHRzIGF1ZmxvZXN0Ll0KCkltbWVyaGluLCBkaWUgTW9sZGF1IGhhdCBLYXJsc3J1aGUgd2llZGVyIGZyZWkgZ2VnZWJlbi4uLgoKT3JrVCwgYmVzb3JndC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1lc2lyaWkgd2FycyEgKEdsb2luc29uLCAgNC4gU2VwIDIwMDYsIDAwOjM4OjM4KToKW0FsbGdlbWVpbjpNZXNpcmlpXSB3YXJ1bSB2ZXJrYXVmZW4gZGllIERpciBuaWNodCBtZWhyPyBoYXR0ZXN0IER1IHp1d2VuaWcKW0FsbGdlbWVpbjpNZXNpcmlpXSBFdXJvbmVuPwpTYXZlZCBsaXN0IGdsb2luc29uc2F2ZWQKJSBDb25uZWN0aW9uIHRvIEdsb2luc29uIGNsb3NlZDogcmVjdjogQ29ubmVjdGlvbiByZXNldCBieSBwZWVyCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1lc2lyaWkgd2FycyEgKEdyaW1tYm9ybiwgIDQuIFNlcCAyMDA2LCAwMDo1NTozNyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTU3MzIzMTE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1NzMyMzExOApXYXMgbGVybmVuIHdpciBkYXJhdXM/IE1hbiBzb2xsdGUgbmljaHQgYW0gU3BlaWNoZXIgc3BhcmVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhcm51bmcgdm9yIGRlbSBDcmFzaCAoWm9vaywgIDQuIFNlcCAyMDA2LCAyMDoyMzo0Nik6Cn4jISBvbj1Pcmt0b2V0ZXIgb3Q9MTE1NzM5MjMxMCBvZz1hbGxnZW1laW5lcwp+IyEgcm49SHVtbmkgcnQ9MTE1NzM3NjM3MSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExNTcwOTYwMzQKUmVpY2h0IGRhcyBlaW5lIG5pY2h0IHNjaG9uPyBNdWVzc3QgaWhyIG5vY2ggbWVociBQcm9ibGVtZSBzY2hhZmZlbj8KCk9ya1QsIGZyZWNoIGdyaW5zZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtBIFN0YW1tdGlzY2hlIDcuOSwgMTQuOSAmIDIxLjkgKEJvaW5nLCAgNi4gU2VwIDIwMDYsIDEwOjM3OjA0KToKfiMhIHJuPUNyb2Z0IHJ0PTExNTc1MzE3MDggcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTE1NzUzMTcwOApVbmQgd28gZ2VoZW4gd2lyIGFtIDE0LiBoaW4/IDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS0EgU3RhbW10aXNjaGUgNy45LCAxNC45ICYgMjEuOSAoQ3JvZnQsICA2LiBTZXAgMjAwNiwgMTA6NDE6MjYpOgp+IyEgcm49Qm9pbmcgcnQ9MTE1NzUzMTgyNCByZz1zY2htYXJybgp+IyEgdGlkPTExNTc1MzE3MDgKWnVtIEdyaWVjaGVuLiAgU3RlaHQgZGEgZG9jaC4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBLQSBTdGFtbXRpc2NoZSA3LjksIDE0LjkgJiAyMS45IChCb2luZywgIDYuIFNlcCAyMDA2LCAxMDo0Mjo0Mik6Cn4jISBybj1Dcm9mdCBydD0xMTU3NTMyMDg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1NzUzMTcwOApJY2ggaGFiIGRhcyBzbyBpbnRlcnByZXRpZXJ0IGRhc3Mgd2lyIG1vcmdlbiB6dWVyc3QgaW4gZGVuIERyYWNoZW4sCmRhbm4genVtIEdyaWVjaGVuIHVuZCBkYW5uIGlucyBHcmVlbiBDb3JuZXIgZ2VoZW4hCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTZWhlci1BbmZvcmRlcnVuZ2VuIChDcm9mdCwgIDguIFNlcCAyMDA2LCAxMTowMjo1MCk6Cn4jISBybj1ab29rIHJ0PTExNTc3MDU3Nzcgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTExNTc3MDU3NzcKVW5kIGRhcyBzb2dhciB2b3IgZGVtIFN0aWNodGFnLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2VoZXItQW5mb3JkZXJ1bmdlbiAoWm9vaywgIDguIFNlcCAyMDA2LCAxMToyODoyNSk6Cn4jISBybj1Dcm9mdCBydD0xMTU3NzA2MTcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1NzcwNTc3NwpEZXIgQmVzY2hsdXNzIGdpbHQgbmF0dWVybGljaCBlcnN0IGFiIGRlbSAxNS4gU2VwdGVtYmVyIDIwMDYuIDspIFpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTZWhlci1BbmZvcmRlcnVuZ2VuIChHbG9pbnNvbiwgIDguIFNlcCAyMDA2LCAxMTo0Mjo1NCk6Cn4jISBybj1ab29rIHJ0PTExNTc3MDc3MDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU3NzA1Nzc3CkdpYnQgZXMgZWluZSBCZXNpdHpzdGFuZHN3YWhydW5nc3JlZ2VsdW5nPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNlaGVyLUFuZm9yZGVydW5nZW4gKFpvb2ssICA4LiBTZXAgMjAwNiwgMTM6MTA6NTQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE1NzcwODU3NCByZz1zY2htYXJybgp+IyEgdGlkPTExNTc3MDU3NzcKTmVpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFNlaGVyLUFuZm9yZGVydW5nZW4gKEh1bW5pLCAxMC4gU2VwIDIwMDYsIDE5OjA5OjMxKToKfiMhIHJuPVpvb2sgcnQ9MTE1NzcxMzg1NCByZz1zY2htYXJybgp+IyEgdGlkPTExNTc3MDU3NzcKRG9jaCwga2xhci4KCldlciBTZWhlciBpc3QsIGJsZWlidCBTZWhlci4gSmVkZW5mYWxscyBoYXQgZGVyemVpdCBuaWVtYW5kIHZvciwgZGFzIHp1CmFlbmRlcm4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU2VoZXItQW5mb3JkZXJ1bmdlbiAoTXVhZGliLCAxMC4gU2VwIDIwMDYsIDIwOjQyOjQ2KToKfiMhIHJuPUh1bW5pIHJ0PTExNTc5MDgxNzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU3NzA1Nzc3CmFlaCwgYWxzbyBpY2ggaGF0dGUgZGFzIGphIGdhbnogYW5kZXJzIHZlcnN0YW5kZW4KdW5kIHdhcyBpc3QgbnVuIG1pdCBtZWluZXIgbGlzdGU/CmRhcmYgaWNoIGRpZSBudW4gbmljaHQgbWVociBhYmhha2VuPwptZW5ubwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU2VoZXItQW5mb3JkZXJ1bmdlbiAoS2Vzc2EsIDEwLiBTZXAgMjAwNiwgMjA6NDQ6MjYpOgp+IyEgcm49TXVhZGliIHJ0PTExNTc5MTM3NjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU3NzA1Nzc3Ck9od2VoLCBkaWUgVmVyYmluZHVuZyB3YXIgbWlyIG5vY2ggZ2FyIG5pY2h0IGdla29tbWVuLiBPaywgZGFzIHdvbGxlbiB3aXIKbmljaHQgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNRy1TdGFydHNlaXRlIChNdWFkaWIsIDEwLiBTZXAgMjAwNiwgMjA6NDk6MzYpOgp+IyEgcm49S2Vzc2EgcnQ9MTE1NzkxNDA0NCByZz13d3cuZW50d2lja2x1bmcKfiMhIHRpZD0xMTU3OTA3MjE4CmRhcyBpc3QgamEgd29obCBlaW4gendlcmdlbmFyZ3VtZW50IAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdpZSBtYWNoZW4gZGFzIGRlbm4gYW5kZXJlIE1VRHMgc28/IHZpZWxsZWljaHQga2FubiBtYW4gc2ljaCBkYSBrbGF1XldJbnNwaXJhdGlvbmVuIGhvbGVuPyAoSHVtbmksIDEwLiBTZXAgMjAwNiwgMjE6MjQ6NTQpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMTU3OTE2MjI0IHJnPXd3dy5lbnR3aWNrbHVuZwp+IyEgdGlkPTExNTc5MTYyMjQKTWVtbyBhbiBtaWNoOiBhbmxlaXR1bmcgenVtIEJlZGllbmVuIGRlciBNUEEgYXVmIGRpZSB3ZWJzZWl0ZSBzZXR6ZW4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6ICJOZXVpZ2tlaXRlbiIgKEdsb2luc29uLCAxMC4gU2VwIDIwMDYsIDIyOjIyOjE1KToKfiMhIHJuPU1lc2lyaWkgcnQ9MTE1NzkxOTUxOSByZz13d3cuZW50d2lja2x1bmcKfiMhIHRpZD0xMTU3OTE3NTAzCk1hbiBrb2VubnRlIGphIFN0ZXBoZW4gSGF3a2luZyBhbHMgV2VyYmVyIGhlcm5hemllaGVuIC4uLiBtYW4gc2VoZSBzaWNoIGRlbgpoZXV0aWdlbjogaHR0cDovL3d3dy51c2VyZnJpZW5kbHkub3JnLyBhbiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6ICJOZXVpZ2tlaXRlbiIgKFplc3N0cmEsIDEwLiBTZXAgMjAwNiwgMjM6MDk6NDkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE1NzkyMjEwNSByZz13d3cuZW50d2lja2x1bmcKfiMhIHRpZD0xMTU3OTE3NTAzCkR1IGthbm5zdCBqYSBtYWwgZGllIERhdGVuIHZvbSBwYXRoZCB2ZXJ3dXJzdGVuLCBkYW5uIGtyaWVnc3QgRHUgbmUgcmljaHRpZwpncm9zc2UgS2FydGUuIDstKQpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXVlbGxhYmZ1aHIgKE9ya3RvZXRlciwgMTEuIFNlcCAyMDA2LCAxNDo1NzoyNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTE1Nzk3NzUxOSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExNTc5Nzc1MTkKWml0YXQ6CndpZSBlaW5pZ2Ugdm9uIEV1Y2ggYmVtZXJrdCBoYWJlbiwgaXN0IGRlciBUcmVpYmVyIGRlcyBNb3JnZW5HcmF1ZW4genVyIFplaXQKZXR3YXMgdW5zdGFiaWwuIFNvbGx0ZXQgSWhyIGVzIG5pY2h0IGJlbWVya3QgaGFiZW46IGlkZWx0IHdlaXRlciwgYWxsZXMgaXN0Cmd1dCA6KQoKWml0YXQgZW5kZS4KCldhcnVtIHNjaHJlY2tzdCBkdSBlaW5lbiBkYW5uIGJlaW0gaWRsZW4gYXVmLCB3ZW5uIGVoIGFsbGVzIGd1dCBpc3Q/IDspCgpPcmtULCBqZXR6dCB3ZWl0ZSBpZGxlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE11ZWxsYWJmdWhyIChBcmssIDExLiBTZXAgMjAwNiwgMTY6MzA6MzcpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNTc5Nzk0NDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU3OTc3NTE5CkVpbmxvZ3NrcmlwdGUgdGVzdGVuLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE11ZWxsYWJmdWhyIChPcmt0b2V0ZXIsIDExLiBTZXAgMjAwNiwgMTY6Mzc6MTkpOgp+IyEgcm49QXJrIHJ0PTExNTc5ODUwMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU3OTc3NTE5CkVpbmxvZ3NrcmlwdD8gUG9laCEgTmVuZW4uLiBqZWRlcyBlaW56ZWxlbiBtYWwgd2lyZCAidm9uIEhhbmQiIGVpbmdlbG9ndC4uIGRhcwppZGxlbiB3aWxsIHNjaGxpZXNzbGljaCB6ZWxlYnJpZXJ0IHdlcmRlbiEKCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE11ZWxsYWJmdWhyIChWYW5pb24sIDExLiBTZXAgMjAwNiwgMTc6NDQ6MjApOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNTc5Nzk0NDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU3OTc3NTE5Ck11c3MgbWFuIHdpcmtsaWNoIGFsbGVzIGtvbW1lbnRpZXJlbj8KClYqClBTOiBEaWVzZXIgS29tbWVudGFyIGhhdCBuaWNodHMgbWl0IGRlbSB2b3JhbmdlaGVuZGVuIEFydGlrZWwgenUgdHVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTXVlbGxhYmZ1aHIgKE9ya3RvZXRlciwgMTEuIFNlcCAyMDA2LCAxNzo1MDoxMCk6Cn4jISBybj1WYW5pb24gcnQ9MTE1Nzk4OTQ2MCByZz1zY2htYXJybgp+IyEgdGlkPTExNTc5Nzc1MTkKRGFzIGtvbW1lbnRpZXIgaWNoIGpldHp0IGFiZXIgbmljaHQhCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTXVlbGxtYW5uIChNdWFkaWIsIDExLiBTZXAgMjAwNiwgMjE6MDE6NDMpOgp+IyEgcm49TW9ndXIgcnQ9MTE1ODAwMTIyMSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExNTgwMDA2ODkKaWNoIGxvZXNjaCBtaWNoIGRvY2ggbmljaHQgc2VsYmVyLCBsYXNzIGRhcyBtYWwgZGVuIHpvb2ssIGpvZiBvZGVyIHJ1bWF0YQptYWNoZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE11ZWxsbWFubiAoT3JrdG9ldGVyLCAxMS4gU2VwIDIwMDYsIDIxOjAyOjM3KToKfiMhIHJuPU11YWRpYiBydD0xMTU4MDAxMzAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1ODAwMDY4OQpkYXMgInNpY2ggc2VsYmVyIGxvZXNjaGVuIj8gV2FydW0gc29sbHRlbiBkaWU/IERpZSBoYWJlbiBlcyBqYSBuaWNodCB2ZXJib2NrdAo6KQoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFc3NlbjogTWVybGluLVN0YW1tdGlzY2ggYW0gMTUuMDkuIChNdWFkaWIsIDEyLiBTZXAgMjAwNiwgMTA6MzI6MzEpOgp+IyEgcm49WmVzc3RyYSBydD0xMTU4MDA4MTk5IHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTExNTgwMDgxOTkKZ3V0ZXIgdmVyc3VjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTXVlbGxtYW5uIChab29rLCAxMi4gU2VwIDIwMDYsIDIxOjUwOjM3KToKfiMhIHJuPU11YWRpYiBydD0xMTU4MDAxMzAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1ODAwMDY4OQpBYmdlbGVobnQhCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCbG9ja2llcmVuIChDcm9mdCwgMTMuIFNlcCAyMDA2LCAxNDo1MDozNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTE1ODE1MTA3OSByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMTU4MTQwMjcyCklzdCBiZXN0aW1tdCBlaW4gc2VociBhbHRlcyBTYWxhdGJsYXR0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEJsb2NraWVyZW4gKFplc3N0cmEsIDEzLiBTZXAgMjAwNiwgMTU6NTg6NTEpOgp+IyEgcm49UnVtYXRhIHJ0PTExNTgxNTU5MTEgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTE1ODE0MDI3MgpOZWluLiA7LSkKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJsb2NraWVyZW4gKEJvaW5nLCAxMy4gU2VwIDIwMDYsIDE2OjA0OjUyKToKfiMhIG9uPU11YWRpYiBvdD0xMTU4MTUxMDc5IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49U21lYWdvbCBydD0xMTU4MTQwMjcyIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTExNTgxNDAyNzIKdW5kIHdpZSBrYW5uIG1hbiBtaXQgZWluZW0gc2FsYXRibG9jayBibG9ja2VuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCbG9ja2llcmVuIChCb2luZywgMTMuIFNlcCAyMDA2LCAxNjowNDo1Myk6Cn4jISBvbj1Cb2luZyBvdD0xMTU4MTUxMTQ3IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49TXVhZGliIHJ0PTExNTgxNTEwNzkgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTE1ODE0MDI3MgpHZW5hdSBnbGVpY2ggd2llIER1IG1pdCBlaW5lbSBTYWxhdGJsYXR0IGJsYXR0ZXN0LgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCbG9ja2llcmVuIChCb2luZywgMTMuIFNlcCAyMDA2LCAxNjowNDo1NCk6Cn4jISBvbj1SdW1hdGEgb3Q9MTE1ODE1NTkxMSBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPUJvaW5nIHJ0PTExNTgxNTExNDcgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTE1ODE0MDI3MgpJY2gga2FubiBtaXQgZWluZXIgU2FsYXRzY2hsZXVkZXIgc2NobGV1ZGVybi4KS29tbSBpY2ggamV0enQgaW5zIEZlcm5zZWhlbj8gOy0pClJ1bSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCbG9ja2llcmVuIChNdWFkaWIsIDEzLiBTZXAgMjAwNiwgMTY6MTU6MTIpOgp+IyEgcm49Qm9pbmcgcnQ9MTE1ODE1NjI5NCByZz1zY2htYXJybgp+IyEgdGlkPTExNTgxNDAyNzIKbWFuY2htYWwgZnVlaGxlIGljaCBtaWNoIHNvb28gbXVlZGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBTdGFydHNlaXRlOiBlbnRzY2hhZXJmdGVyIFZvcnNjaGxhZyAoWm9vaywgMTQuIFNlcCAyMDA2LCAwOTowNzowOSk6Cn4jISBvbj1TZWxldmVuIG90PTExNTgyMTc1ODMgb2c9d3d3LmVudHdpY2tsdW5nCn4jISBybj1BbWFyeWxsaXMgcnQ9MTE1ODE4MTkxNiByZz13d3cuZW50d2lja2x1bmcKfiMhIHRpZD0xMTU4MTc0MDAxClRvdCBkZW0gU3RhYnJlaW0hCldpciBzaW5kIGtlaW5lIFVlLUVpZXIuClNlbGV2ZW4gZW50c2NodWxkaWd0IHNpY2ggZnVlciBkZW4gc3BvbnRhbnRlbiwgbmljaHQgZ2FueiBlcm5zdCBnZW1laW50ZW4KUHJvdGVzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBTdGFydHNlaXRlOiBlbnRzY2hhZXJmdGVyIFZvcnNjaGxhZyAoR2xvaW5zb24sIDE0LiBTZXAgMjAwNiwgMTQ6NTQ6NDQpOgp+IyEgcm49TXVhZGliIHJ0PTExNTgyMzgxNjYgcmc9d3d3LmVudHdpY2tsdW5nCn4jISB0aWQ9MTE1ODE3NDAwMQpJbiBXYWhyaGVpdCBiaXN0IGR1IG5vY2ggdmllbCBmYW50YXN0aXNjaGVyPyBVbmQgZGFzIGVyZmFoZXJ0IGVyIGRhbm4gYXVmCmVpbmVyIFBhcnR5PwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ0OiBTdGFydHNlaXRlOiBlbnRzY2hhZXJmdGVyIFZvcnNjaGxhZyAoV2hpdGV0aWdlciwgMTQuIFNlcCAyMDA2LCAyMjowODowMyk6Cn4jISBvbj1XaGl0ZXRpZ2VyIG90PTExNTgyNjQ0NjUgb2c9d3d3LmVudHdpY2tsdW5nCn4jISBybj1HbG9pbnNvbiBydD0xMTU4MjY0MzI3IHJnPXd3dy5lbnR3aWNrbHVuZwp+IyEgdGlkPTExNTgxNzQwMDEKSmV0enQgZmVobHQgbnVyIG5vY2ggZWluIFByb3h5LUNsaWVudCwgc28gZGFzcyBhdWNoIE5ldWxpbmdlIHBlcgp0ZWxuZXQ6Ly9wcm94eSBadWdyaWZmIGF1ZiBlaW5lbiB2b2xsd2VydGlnZW4gQ2xpZW50IG1pdCBGYXJidHJpZ2dlcm4sCldlZ2VtYXBwZXIgdW5kIG5hdHVlcmxpY2ggL3NlaGVyLVNrcmlwdCBoYWJlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBpcmF0ZXMgRGF5IChHbm9tZSwgMTUuIFNlcCAyMDA2LCAwMTowNTozNCk6Cn4jISBybj1Hcm9vIHJ0PTExNTgyNjg5MTEgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTU4MjY4OTExCjp3YXJ0ZXQgYXVmIGRlbiB+L0ludGVybmF0aW9uYWxfSGVhZF9CYW5naW5nX0FnYWluc3RfVGhlX1dhbGxfRGF5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTY2hyZWliYmxvZWNrZSBiZWkgQW1hem9uLmRlIChSb25kYSwgMTUuIFNlcCAyMDA2LCAwMjozNTowMCk6CkFyYmVpdHNibGFldHRlci1CbG9jazoKaHR0cDovL3d3dy5hbWF6b24uZGUvZ3AvcHJvZHVjdC9CMDAwOVdGTzk2LwpNYW4gYmVhY2h0ZSBiaXR0ZSBkaWUgQWx0ZXJzZW1wZmVobHVuZyBkZXMgSGVyc3RlbGxlcnMuCgpSb25kYQoKCgoKCgoKCgoKCgoKCgoKKCA2IEphaHJlIC0gODMgSmFocmUgMyBNb25hdGUgKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNjaHJlaWJibG9lY2tlIGJlaSBBbWF6b24uZGUgKE9ya3RvZXRlciwgMTUuIFNlcCAyMDA2LCAxMjo1Mzo0Nyk6Cn4jISBybj1Sb25kYSBydD0xMTU4MjgwNTAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1ODI4MDUwMApEYXMgd2FyZW4gd29obCBtYWwgdm9uIDUwIGJpcyA5OTkgTW9uYXRlICh1bmQgZXMgaGF0IGJlaSBkZXIgNTBlciBVbXJlY2hudW5nCmVpbmVuIGtsZWluZW4gRmVobGVyIGdlZ2ViZW4uLi4gZXZ0bC4gd2FyZW4gYXVjaCAxMDAwIE1vbmF0ZSBhbHMgT2JlcmdyZW56ZQpHZWRhY2h0IHVuZCBlcyBnYWIgMiBrbGVpbmUgRmVobGVyIGJlaSBkZXIgVW1yZWNobnVuZy4KV2llIGR1IHNpZXN0OiBrZWluZSAia3J1bW1lbiIgWmFobGVuLgoKT3JrVCwgYXVma2xhZXJlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNjaHJlaWJibG9lY2tlIGJlaSBBbWF6b24uZGUgKFpvb2ssIDE1LiBTZXAgMjAwNiwgMTM6MDI6MDgpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNTgzMTc2Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU4MjgwNTAwCkVzIGxlYmUgZGVyIGVya2xhZXJ0ZSBXaXR6ISBOZWluLCBlcyBsZWJlIGRlciBmYWxzY2ggZXJrbGFlcnRlIFdpdHohIDspIFpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIChPcmt0b2V0ZXIsIDE1LiBTZXAgMjAwNiwgMTc6MDE6MjYpOgpbQWxsZ2VtZWluOlplc3N0cmFdIFdlbm4gZGVyIGF1ZiBEaWNoIHJlZ2lzdHJpZXJ0IGlzdCwgZHVlcmZ0ZSBkZXIgRmFsbApbQWxsZ2VtZWluOlplc3N0cmFdIGVpbmZhY2ggc2Vpbi4KW0FsbGdlbWVpbjpaZXNzdHJhXSBXZW5kZSBEaWNoIGFuIGVpbmVuIG5pY2h0LWlkZWxuZGVuIEVNLiA7LSkKCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT2huZSBXb3J0ZSAoTXVhZGliLCAxNS4gU2VwIDIwMDYsIDE4OjA0OjQxKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTU4MzMyNDg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1ODMzMjQ4Ngp3byBpc3QgZGVyIHdpdHo/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE9obmUgV29ydGUgKENyb2Z0LCAxNS4gU2VwIDIwMDYsIDE4OjEwOjA1KToKfiMhIHJuPU11YWRpYiBydD0xMTU4MzM2MjgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1ODMzMjQ4NgpEdSBtZWluc3QgQXJ0aWtlbCB2b24gT3JrdG9ldGVyIGtvZW5uZW4gd2l0emlnIHNlaW4/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTXVlbGxhYmZ1aHIgKERhcmtsb3IsIDE1LiBTZXAgMjAwNiwgMTg6NDA6MjMpOgp+IyEgcm49VmFuaW9uIHJ0PTExNTc5ODk0NjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU3OTc3NTE5Ck5hdHVlcmxpY2ghIC0gU2NobGllc3NsaWNoIGdpYnRzIGRhZnVlciBkaWUgTVBBLgoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogT2huZSBXb3J0ZSAoRGFya2xvciwgMTUuIFNlcCAyMDA2LCAxODo0NTowNSk6Cn4jISBybj1Dcm9mdCBydD0xMTU4MzM2NjA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1ODMzMjQ4NgpBdXNuYWhtc3dlaXNlLi4uCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBKYXZhIGF1ZiBkZXIgU3BpZWxlbi1TZWl0ZSAoTXVhZGliLCAxNS4gU2VwIDIwMDYsIDE5OjU1OjA1KToKfiMhIHJuPUFyayBydD0xMTU4MzQwNzQwIHJnPXd3dy5lbnR3aWNrbHVuZwp+IyEgdGlkPTExNTgzMTczNTcKYXJrLCBkdSBhbHRlciB0eXJhbm4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbXRzYW5tYXNzdW5nLiBEZW5ub2NoOiBXZWl0ZXJlciBHaWxkZW5tYWdpZXIgQ2hhb3MhIChab29rLCAxNi4gU2VwIDIwMDYsIDExOjE0OjQxKToKfiMhIHJuPVpvb2sgcnQ9MTE1ODM5ODA2NSByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTE1ODM5ODA2NQpab29rIGdyaW5zdCBTaGFyaWFzIGdhbnogYnJlaXQgYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGJldHIuIGVyd2FydGUgbXBhIChWYW5pb24sIDE2LiBTZXAgMjAwNiwgMTE6NDQ6NDIpOgp+IyEgcm49QmFtYmkgcnQ9MTE1ODM5OTUwOCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTExNTgzMzg3MDcKRGEgYmlzdGUgZG9jaCBub2NoIGRyYW4sIG9kZXI/CgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVHlwb3MsIGRpZSB6d2VpdGUgKFpvb2ssIDE3LiBTZXAgMjAwNiwgMjI6Mjg6NTMpOgp+IyEgcm49S2Vzc2EgcnQ9MTE1ODUyNDg5OSByZz13d3cuZW50d2lja2x1bmcKfiMhIHRpZD0xMTU4NTI0NDgxCkVpbmUgYmF1dCBuZW4gVHlwbyBlaW4gdW5kIGVpbmUgYmF1dCBkZW4gVHlwbyBhdXM/Clpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBUeXBvcywgZGllIHp3ZWl0ZSAoS2Vzc2EsIDE3LiBTZXAgMjAwNiwgMjI6MzE6MzkpOgp+IyEgcm49S2Vzc2EgcnQ9MTE1ODUyNDk3OSByZz1zY2htYXJybgp+IyEgdGlkPTExNTg1MjQ0ODEKTmVlLCBpbW1lcmhpbiBpbiBTYWNoZW4gVHlwb3Mgc2luZCB3aXIgdW5zIHdlaXRlc3RnZWhlbmQgZWluaWcgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogT2huZSBXb3J0ZSAoQm9pbmcsIDE4LiBTZXAgMjAwNiwgMTA6MjM6NTUpOgp+IyEgcm49TXVhZGliIHJ0PTExNTgzMzYyODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU4MzMyNDg2CkRhcyBpc3Qgc2NobWFycm4sIG5pY2h0IHdpdHplIC4uLiBkLmguIGVzIG11c3MgbmljaHQgd2l0emlnIHNlaW4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEtvc3Rlbi1NZWxkdW5nIGZ1ZXIgQW5mYWVuZ2VyIChHbG9pbnNvbiwgMTguIFNlcCAyMDA2LCAxNjo0MDozNyk6Cn4jISBybj1LZXNzYSBydD0xMTU4NTkwMzI1IHJnPWQuYW5mYWVuZ2VyCn4jISB0aWQ9MTE1ODU4NTk5MwpVbWZyYWdlPyBNdWVuemUgd2VyZmVuPyBLbGVpbmUgZ2VsYmUgU3RydWRlbCBzY2htZWlzc2VuPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEtvc3Rlbi1NZWxkdW5nIGZ1ZXIgQW5mYWVuZ2VyIChCYW1idWxrbywgMTguIFNlcCAyMDA2LCAxNjo0MjozMSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTU4NTkwNDM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1ODU4NTk5MwpBYmVyIGVyc3QgMiBNb25hdGUgaW4gZGVyIE1QQSBhdXNkaXNrdXRpZXJlbi4KCkJhbWJ1bGtvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBLb3N0ZW4tTWVsZHVuZyBmdWVyIEFuZmFlbmdlciAoQ3JvZnQsIDE4LiBTZXAgMjAwNiwgMTY6NDc6MTEpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNTg1OTAyNDQgcmc9ZC5hbmZhZW5nZXIKfiMhIHRpZD0xMTU4NTg1OTkzClVuZCBkYW5uIGJpdHRlIGVpbmUgT3B0aW9uIHVtIGRlbiBIaW53ZWlzIGF1c3p1c3RlbGxlbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBLb3N0ZW4tTWVsZHVuZyBmdWVyIEFuZmFlbmdlciAoT3JrdG9ldGVyLCAxOC4gU2VwIDIwMDYsIDE2OjQ4OjM5KToKfiMhIHJuPUNyb2Z0IHJ0PTExNTg1OTA4MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU4NTg1OTkzCkdlbmF1IHVuZCBkYW1pdCBlcyBuaWNodCBzbyBzY3JvbGx0IGlzdCBkZXIgcGVyIGRlZmF1bHQgYXVzLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEtvc3Rlbi1NZWxkdW5nIGZ1ZXIgQW5mYWVuZ2VyIChHbG9pbnNvbiwgMTguIFNlcCAyMDA2LCAxNjo0OTowOSk6Cn4jISBybj1Dcm9mdCBydD0xMTU4NTkwODMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1ODU4NTk5MwpEZXIgSGlud2VpcyB3aXJkIG51ciBiaXMgTGV2ZWwgMTAgYW5nZXplaWd0IDspIEFiZXIgZGFua2UgZnVlciBkYXoKVmVyYmFsaXNpZXJlbiBtZWluZXIgbWlyIGltIERldGFpbCB1bmJla2FubnRlbiBFbnRzY2hlaWR1bmdzZ3J1bmRsYWdlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBLb3N0ZW4tTWVsZHVuZyBmdWVyIEFuZmFlbmdlciAoQW50aGVhLCAxOC4gU2VwIDIwMDYsIDE3OjM5OjE4KToKfiMhIHJuPUNyb2Z0IHJ0PTExNTg1OTM4NTMgcmc9ZC5hbmZhZW5nZXIKfiMhIHRpZD0xMTU4NTg1OTkzCkphLiBVbmQgZGFzIGF1Y2ggbm9jaCB2b3JzYWV0emxpY2ggOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBLb3N0ZW4tTWVsZHVuZyBmdWVyIEFuZmFlbmdlciAoQ3JvZnQsIDE4LiBTZXAgMjAwNiwgMTc6NDI6MjYpOgp+IyEgcm49QW50aGVhIHJ0PTExNTg1OTM5NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTU4NTg1OTkzCkRhbm4gd3VuZGVydCBtaWNoIG51ciBkZWluZSBSdWJyaWt3YWhsLiAgU2NobWFycm4gc2NoZWluc3QgZHUgamEgenUKa2VubmVuIDotKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEtlaW4gdXJsYXViLi4uIChNb250YW51cywgMTkuIFNlcCAyMDA2LCAxMToyNjozOCk6Cn4jISBybj1IdW1uaSBydD0xMTU4MzI1MTM3IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xMTU4MzI0MzUxCktsYXNzc2VuZmFocnQgbmFjaCBXdXBwZXJ0YWwuICpwcnVzdCoKRGEgbXVlc3N0IGlociBqYSB3YWhyc2NoZWlubGlvY2ggbm9jaCBuY2lodCBtYWwgYXVzIGRlbSBSZWdpb25hbGV4cHJlc3MKdW1zdGVpZ2VuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS2VpbiB1cmxhdWIuLi4gKE1haGFyZXQsIDE5LiBTZXAgMjAwNiwgMTI6MDc6NDgpOgp+IyEgcm49TW9udGFudXMgcnQ9MTE1ODY1Nzk5OCByZz1zY2htYXJybgp+IyEgdGlkPTExNTgzMjQzNTEKVmVyc3RlaCBpY2ggZGVuIFdpdHogbmljaHQuIFVuc2VyZSBLbGFzc2VuZmFocnRlbiBnaW5nZW4gaW1tZXIgaW5zIEJlcmxpbmVyClVtbGFuZC4gV2FydW0gc29sbHRlbiBLbGFzc2VuZmFocnRlbiBzbyB3ZWl0IHdlZyB3aWUgbW9lZ2xpY2ggZ2VoZW4/ICBCcmluZ3QKZG9jaCBuaWNodHMsIG5lbiBnYW56ZW4gVGFnIGpld2VpbHMgYW4gRmFocmVyZWkgenUgdmVyc2Nod2VuZGVuLCB2b20gUHJlaXMgbWFsCmFiZ2VzZWhlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEtlaW4gdXJsYXViLi4uIChCYW1idWxrbywgMTkuIFNlcCAyMDA2LCAxMjowOTo1Nik6Cn4jISBybj1NYWhhcmV0IHJ0PTExNTg2NjA0Njggcmc9c2NobWFycm4KfiMhIHRpZD0xMTU4MzI0MzUxCkdlc3Rlcm4gaW4gZGVuIFRhZ2VzdGhlbWVuIHd1cmRlIGVpbmUganVuZ2UgRnJhdSBpbiBNY1BvbSBnZWZyYWd0LCB3YXJ1bSBzaWUKTlBEIGdld2FlaGx0IGhhdC4gRGllIEFudHdvcnQ6ICJXZWlsIGRpZSBhbmRlcmVuIGRhcyBhdWNoIG1hY2hlbi4gSWNoIGhhYiBkYQprZWluZSBlaWdlbmUgTWVpbnVuZy4iCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBLZWluIHVybGF1Yi4uLiAoQW50aGVhLCAxOS4gU2VwIDIwMDYsIDEyOjE0OjA4KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTExNTg2NjA1OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU4MzI0MzUxCkR1IGVyd2FydGVzdCBlY2h0LCBkYXNzIGRpZSBMZXV0ZSBlaW5lIGVpZ2VuZSBNZWludW5nIGhhYmVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogS2VpbiB1cmxhdWIuLi4gKE1haGFyZXQsIDE5LiBTZXAgMjAwNiwgMTI6MTQ6NDQpOgp+IyEgcm49QW50aGVhIHJ0PTExNTg2NjA4NDggcmc9c2NobWFycm4KfiMhIHRpZD0xMTU4MzI0MzUxClVuZCB3YXMgaGF0IGRhcyBtaXQgZGVyIEtsYXNzZW5mYWhydCB6dSB0dW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBLZWluIHVybGF1Yi4uLiAoQW50aGVhLCAxOS4gU2VwIDIwMDYsIDEyOjE1OjE0KToKfiMhIHJuPU1haGFyZXQgcnQ9MTE1ODY2MDg4NCByZz1zY2htYXJybgp+IyEgdGlkPTExNTgzMjQzNTEKTml4LiBEcnVtIGlzdCBlcyBqYSBhdWNoIGltIFNjaG1hcnJuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBLZWluIHVybGF1Yi4uLiAoR2xvaW5zb24sIDE5LiBTZXAgMjAwNiwgMTI6NDA6NDMpOgp+IyEgcm49TWFoYXJldCBydD0xMTU4NjYwNDY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1ODMyNDM1MQpNdXNzIG1hbiBnYXIgbmljaHQuIFNpZWhlLCBkZXIgSGFyeiBsaWVndCBzbyBuYWguIFVuZCBkYSBnaWJ0IGVzIHdhcyBnYW56CnRvbGxlczogQmVyZ2UuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogS2VpbiB1cmxhdWIuLi4gKFpvb2ssIDE5LiBTZXAgMjAwNiwgMTM6MTk6MDgpOgp+IyEgcm49TWFoYXJldCBydD0xMTU4NjYwNDY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1ODMyNDM1MQpMYW5nZSBGYWhydGVuIGhhYmVuIGFiZXIgZGVuIFZvcnRlaWwsIGRhc3MgbWFuIGRvcnQgZGFubiBzY2hvbiBkaWUgCkVpbmdhbmdzcmVmZXJhdGUgdWViZXIgZGllIFppZWxyZWdpb24gYWJoYWx0ZW4ga2Fubi4gWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEtlaW4gdXJsYXViLi4uIChNb250YW51cywgMTkuIFNlcCAyMDA2LCAxNDowNjo0MCk6Cn4jISBybj1ab29rIHJ0PTExNTg2NjQ3NDggcmc9c2NobWFycm4KfiMhIHRpZD0xMTU4MzI0MzUxCk5hamEsIGljaCBmYW5kIGVzIGVoZXIgbHVzdGlnLCBkYXNzIG1hbiBpbiBlaW5lbSBJbmR1c3RyaWVnZWJpZXQKVXJsYV5IXkheSF5IS2xhc3NlbmZhaHJ0IG1hY2hlbiB3aWxsLiBBYmVyIGFuZGVyZSBMYWVuZGVyLCBhbmRlcmUgRnJpdHRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEVpbmdhbmdzc2VpdGUgKEhpZ2hsYW5kZXIsIDE5LiBTZXAgMjAwNiwgMTQ6MDk6MDgpOgp+IyEgcm49TXVhZGliIHJ0PTExNTg2NjYwOTcgcmc9d3d3LmVudHdpY2tsdW5nCn4jISB0aWQ9MTE1ODY0OTY3NApBbHNvIGZ1ZXIgJ25lIGVjaHQga3VyemUgdXB0aW1lIGthbm4gaWNoIHNvcmdlbiA6KQoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTcGVpY2hlcmJlc2NoYWZmdW5nIChHbG9pbnNvbiwgMjAuIFNlcCAyMDA2LCAxMDozNDo0Nyk6Cn4jISBybj1Dcm9mdCBydD0xMTU4NzQxMTkxIHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD0xMTU4NzA0MTA1CkJlaSBXYWxsZW5zdGVpbiB3YWVycyB2aWVsbGVpY2h0ICJNZXNpcmlpIHdpcmQgdm9uIHZlcmVpbnN0cmV1ZW4gTWl0Z2xpZWRlcm4KdW1nZWJyYWNodCIuIE9kZXIgIk1lc2lyaWkgcGx1ZW5kZXJ0IGFsbGUgTmljaHR2ZXJlaW5sZXIgdW50ZXIgV2FmZmVuZ2V3YWx0CnVuZCBiZXJlaWNoZXJ0IHNpY2ggc2NoYW1sb3MiIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU3BlaWNoZXJiZXNjaGFmZnVuZyAoR2xvaW5zb24sIDIwLiBTZXAgMjAwNiwgMTA6Mzg6MTQpOgp+IyEgcm49TXVhZGliIHJ0PTExNTg3NDE0MTAgcmc9bW9yZ2VuZ3JhdWVuLnZlcmVpbgp+IyEgdGlkPTExNTg3MDQxMDUKRGFzIHdhciBnYW56IGVocmxpY2ggc2NobWFycmlnIGdlbWVpbnQuIE1laW5lciBFbXBvZXJ1bmcga2FubiBpY2ggYXVjaCBtaXQKTWFpbHMgdW5kIFRNcyBMdWZ0IG1hY2hlbi4KCkRpZSBGcmFnZSBpc3QgbnVyOiBXZWxjaGUgUm9sbGUgaGFldHRlc3QgZHUgaW0gV2FsbGVuc3RlaW4tU3plbmFyaW8gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTcGVpY2hlcmJlc2NoYWZmdW5nIChNdWFkaWIsIDIwLiBTZXAgMjAwNiwgMTA6Mzk6MjYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE1ODc0MTQ5NCByZz1zY2htYXJybgp+IyEgdGlkPTExNTg3MDQxMDUKaWNoIHd1ZXJkZSBhbSBlbmRlIGtsYXRzY2hlbiB1bmQgd29obCB1bnRlcmhhbHRlbiBuYWNoIGhhdXNlIGdlaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogU3BlaWNoZXJiZXNjaGFmZnVuZyAoR2xvaW5zb24sIDIwLiBTZXAgMjAwNiwgMTA6NDA6NDYpOgp+IyEgcm49TXVhZGliIHJ0PTExNTg3NDE1NjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU4NzA0MTA1CkFoLiBTY2hpbGxlci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogV2ludGVyYnVyZzA2IChDcm9mdCwgMjAuIFNlcCAyMDA2LCAxMzoxNjozNyk6Cn4jISBvbj1Dcm9mdCBvdD0xMTU4NzUwOTI1IG9nPXd3dy5lbnR3aWNrbHVuZwp+IyEgcm49S2Vzc2EgcnQ9MTE1ODc1MDg1MyByZz13d3cuZW50d2lja2x1bmcKfiMhIHRpZD0xMTU4MTc1MzU4CklociBzY2hhZmZ0cyBhdWNoIG5pY2h0IGJlaW0gVGhlbWEgenUgYmxlaWJlbiwgb2Rlcj8gOm8pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU3BlaWNoZXJiZXNjaGFmZnVuZyAoQWxrb2hvbCwgMjAuIFNlcCAyMDA2LCAxMzo0NDoxMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE1ODc0OTMzNCByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTE1ODcwNDEwNQp3YWgsIGljaCB3ZXJkZSB6dW0gR3JpbW1ib3JuLVZlcnNlaGVyLgoKSGlsZmUsIG1laW4gRW5kZSBpc3QgbmFoCkFsawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFNwZWljaGVyYmVzY2hhZmZ1bmcgKEFsa29ob2wsIDIwLiBTZXAgMjAwNiwgMTM6NDU6MTYpOgp+IyEgcm49QWxrb2hvbCBydD0xMTU4NzUyNjUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1ODcwNDEwNQptYW4gbWVya3QsIGRhc3MgaWNoIG1pY2ggZGFnZWdlbiBzdHJhZXViZSwgZGVubiBpY2gga2FubnMgbmljaHQgbWFsIHNjaHJlaWJlbgoKQWxrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBLZWluIHVybGF1Yi4uLiAoQmFtYmksIDIwLiBTZXAgMjAwNiwgMjM6MDY6MjYpOgp+IyEgcm49QW50aGVhIHJ0PTExNTg2NjA4NDggcmc9c2NobWFycm4KfiMhIHRpZD0xMTU4MzI0MzUxCkljaCBrZW5uZSBkaWUgTWVpbnVuZyB2b24gTHVnIHVlYmVyIExldXRlLCBkaWUgZWluZSAoZ2V3aXNzZSkgZWlnZW5lIE1laW51bmcKaGFiZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogU3BlaWNoZXJiZXNjaGFmZnVuZyAoQWxrb2hvbCwgMjEuIFNlcCAyMDA2LCAxNDo1NDo0Nik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE1ODg0Mjg0MSByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTE1ODcwNDEwNQpobS4gd2VubiBkdSBzY2hvbiBrb3JpbnRoZW4ga2Fja3N0IC4uLiwgIG11c3N0IGR1IGVzIGRhbm4gbmljaHQgcmljaHRpZwptYWNoZW4/IEVzIGdlaHQgdW0gVGFnZXN6ZWl0LCBzb2xsdGUgbWFuIGRhIGRpZSBOYWNodHplaXQgbmljaHQgYWJ6aWVoZW4/IERhbm4KaGFlbmd0IGRpZSBtaXR0bGVyZSBUYWdlc3plaXQgdm9uIFNvbm5lbmF1Zi0gdW5kIHVudGVyZ2FuZyBhYiB1bmQgaXN0IG1pdApuaWNodGVuIGtvbnN0YW50LiBVbmQgd2FocnNjaGllbmxpY2ggYXVjaCBuaWNodCBiZWkgMTIgVWhyLiBadW1pbmRlc3QgbXVlc3N0ZQpkYXMgZXJzdCBiZXdpZXNlbiB3ZXJkZW4uCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogU3BlaWNoZXJiZXNjaGFmZnVuZyAoR3JpbW1ib3JuLCAyMS4gU2VwIDIwMDYsIDE0OjU3OjIyKToKfiMhIHJuPUFsa29ob2wgcnQ9MTE1ODg0MzI4NiByZz1zY2htYXJybgp+IyEgdGlkPTExNTg3MDQxMDUKQWgsIER1IHBvc3R1bGllcnN0IGRhc3MgU29ubmVuYXVmLSB1bmQgVW50ZXJnYW5nIG5pY2h0IHN5bW1ldHJpc2NoIHVtIDEyOjAwClVociB2ZXJ0ZWlsdCBzaW5kPyBLbGFyLCBkYW1pdCBoYXN0IER1IHJlY2h0LCB3ZW5uIER1IERpY2ggYXVmIFVoci0gKHVuZCwKc2NobGltbWVyLCBTb21tZXIvV2ludGVyLSl6ZWl0IGJlemllaGVuIHd1ZXJkZXN0LiBBYmVyIGVzIGdlaHQgdW0gVGFnZXN6ZWl0LgpJbnNvZmVybiBzb2xsdGVuIHdpciB1bnMgenVtaW5kZXN0IGRyYXVmIGVpbmlnZW4ga29lbm5lbiBkYXNzIGRpZSBtaXR0bGVyZQpUYWdlc3plaXQgIk1pdHRhZyIgaGVpc3N0LCB3aWV2aWVsIFVociBNRVovTUVTWi9VVEMvTVNUIGRhcyBhdWNoIGltbWVyIGlzdAooc2NobGllc3NsaWNoIGlzdCBqYSBhdWNoIGluIGRlciBHcmFwaGlrIGtlaW5lIFplaXR6b25lIGFuZ2VnZWJlbikuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBTcGVpY2hlcmJlc2NoYWZmdW5nIChBbGtvaG9sLCAyMS4gU2VwIDIwMDYsIDE0OjU5OjQ2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTU4ODQzNDQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1ODcwNDEwNQphaCBpbnRlcmVzc2FudCwgZHUgZ2lic3Qgc2VsYmVyIHp1LCBkYXNzIGVzIG5pY2h0IGtsYXIgaXN0LCB3YXMgZWluIHRhZyBpc3Q/CkthY2sgbWFsIHNjaG9lbiB3ZWl0ZXIgaW4gZGVpbmVtIEVsZmVuYmVpbnR1cm0uIFBhc3MgbnVyIGF1ZiwgZGFzcyBlcyBuaWNodAppcmdlbmR3YW5uIHN0aW5rdCB2b3IgbGF1dGVyIGthY2tlbi4KCkFsawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IFNwZWljaGVyYmVzY2hhZmZ1bmcgKEphbWVzb24sIDIxLiBTZXAgMjAwNiwgMTU6MDA6NDIpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNTg4NDM0NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU4NzA0MTA1ClRyb3R6ZGVtIGhpbmt0IGRhcyBhbGxlcy4gV2VsY2hlciBNdWRkZXIgaGFlbHQgc2ljaCBhbiBiZXN0aW1tdGUgVGFnZXN6ZWl0ZW4/Ck9kZXIgc2NobGFlZnQgc29nYXI/IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IFNwZWljaGVyYmVzY2hhZmZ1bmcgKEFub3JpcywgMjEuIFNlcCAyMDA2LCAxNTowMTozNCk6Cn4jISBybj1KYW1lc29uIHJ0PTExNTg4NDM2NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU4NzA0MTA1CnNlaWQgZW5kbGljaCBsaWViIHp1ZWluYW5kZXIgLi4gaG1wZiA7KQoKJG5vdyA9IG1rdGltZSg0LCAwLCAwLCAkbW9udGgsICRkYXksICR5ZWFyKTsKJGdtdG9mZnNldCA9IGVyZWdfcmVwbGFjZSgnW15bOmRpZ2l0Ol1dJywgJycsIGRhdGUoJ08nLCAkbm93KSkgLyAxMDA7CiRzdW5yaXNlID0gZGF0ZV9zdW5yaXNlKCRub3csIFNVTkZVTkNTX1JFVF9ET1VCTEUsICRsYXQsICRsb25nLCA5NiwKJGdtdG9mZnNldCk7CiRzdW5zZXQgID0gZGF0ZV9zdW5zZXQgKCRub3csIFNVTkZVTkNTX1JFVF9ET1VCTEUsICRsYXQsICRsb25nLCA5NiwKJGdtdG9mZnNldCk7CiRtaWQgICAgID0gJHN1bnNldCAtICRzdW5yaXNlOwoKIC0gQW5vcmlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMjogU3BlaWNoZXJiZXNjaGFmZnVuZyAoR3JpbW1ib3JuLCAyMS4gU2VwIDIwMDYsIDE1OjE2OjIwKToKfiMhIHJuPUFsa29ob2wgcnQ9MTE1ODg0MzU4NiByZz1zY2htYXJybgp+IyEgdGlkPTExNTg3MDQxMDUKKkljaCogYmluIG1pciBkYSBzY2hvbiBrbGFyIGRhcnVlYmVyOiBFaW4gVGFnIGlzdCBkaWUgWmVpdCB2b24gMDowMCBiaXMgMTQ6MDAKVWhyLiBEYSBnaWJ0cyBleHRyYSBEZWZpbml0aW9uZW4gZnVlciwgbWl0IEFuZ2FiZSB3YW5uIGVpbiBUYWcgaW4gZWluZW4KYW5kZXJlbiB1ZWJlcmdlaHQgdW5kIHNvLiBEYXNzIER1IGFuIGRlbiBIYWFyZW4gZGFubiBhbmRlcmUgU2FjaGVuIGF1cyBEZWluZXIKTmFzZSB6aWVoc3Qgd2FyIGphIGdhbnogYW11ZXNhbnQsIHVuZCBkZW4gRmFkZW4gaGFiIGljaCB3ZWl0ZXJnZXNwb25uZW4uIFdlbm4KRHUgYWxsZXJkaW5ncyBkYW5uIG1laW5zdCBpbiBEZWluZSBGYWVrYWxzcHJhY2hnZXdvaG5oZWl0ZW4genVydWVja2ZhbGxlbiB6dQptdWVzc2VuLCB0amEsIHdhcyBzb2xsIGljaCBkYSBzYWdlbj8gTWVpbiBNaXRsZWlkLCB1bmQgaWNoIGhvZmZlIGZ1ZXIgRGljaApkYXNzIER1IGRhcyBudXIgYWxzIFJvbGxlbnNwaWVsIHR1c3QgdW5kIGltIHJsIGdhbnogYW5kZXJzIGJpc3QuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMzOiBTcGVpY2hlcmJlc2NoYWZmdW5nIChHcmltbWJvcm4sIDIxLiBTZXAgMjAwNiwgMTU6MTY6NDQpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNTg4NDQ1ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU4NzA0MTA1CnMvMTQ6MDAvMjQ6MDAvCkphLCBlaW4gdHlwby4gSGFlbmcgRGljaCBuaWNodCBkcmFuIGF1Zi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFNwZWljaGVyYmVzY2hhZmZ1bmcgKEh1cmF4cHJheCwgMjEuIFNlcCAyMDA2LCAyMDoyOTozMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE1ODgzNDA2MiByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTE1ODcwNDEwNQpJY2ggd29sbHRlIG1pdCBtZWluZW0gQXJ0aWtlbCBudXIgZGVuIElzbGFtIGJlbGVpZGlnZW4uIEF1c3NlcmRlbSB3YXIgZXIKc3RydWt0dXJlbGwgYW50aXNlbWl0aXNjaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM0OiBTcGVpY2hlcmJlc2NoYWZmdW5nIChBbWFyeWxsaXMsIDIxLiBTZXAgMjAwNiwgMjE6MDA6NDEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNTg4NDQ2MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU4NzA0MTA1Ck1pdG5pY2h0ZW4gLSBlaGVyIGFuIGRlbiBmZWhsZW5kZW4gS29tbWF0YS4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmFydGlrZWwgRkxXIChtYWwgd2llZGVyKSAoT3JrdG9ldGVyLCAyMi4gU2VwIDIwMDYsIDE4OjI0OjQzKToKW1NlaGVyOldpZGV3aXR0XSBEYXMgVWViZXJsZWJlbiBpc3QgbmljaHQgc28gZGFzIFByb2JsZW0sIGJpcyBqZXR6dCBqZWRlZmFsbHMKW1NlaGVyOldpZGV3aXR0XSAuLi4KW1RvZDpMYXJzXSBFaW4gU2NodXR6Z2Vpc3QgaGF0IGdlcmFkZSBXaWRld2l0dCB1bWdlYnJhY2h0LgoKT3JrVCwgZ2FueiBnZW1laW4ga2ljaGVybmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaHJmdXJjaHQ/IChNaXJpbCwgMjUuIFNlcCAyMDA2LCAxNjozMDo0Myk6CkRlciBtYXJrZXJzY2h1ZXR0ZXJuZGUgU2NocmVpIE11YWRpYnMgaGFsbHQgYXVzIGRlciBIYWxsZSBkZXMgS3JpZWdlcwpoZXJ1ZWJlcjogS0FFTVBGVCBNSVQgTUlSLCB3ZW5uIGlociBldWNoIHRyYXV0LgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKTWlyaWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVy4uLiAoQW1hcnlsbGlzLCAyNS4gU2VwIDIwMDYsIDE5OjU3OjExKToKLi4ud2FyZW4gZGllc21hbCBuaWNodCB6dSBob2VyZW46CgpIZWxpIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KW1RvZDpMYXJzXSBFaW4gRWlzZ2lnYW50IGhhdCBnZXJhZGUgSGVsaSB1bWdlYnJhY2h0LgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2ludGVyYnVyZzA2IChSb25kYSwgMjUuIFNlcCAyMDA2LCAyMToxNToyNSk6Cn4jISBybj1BbnlzaWRvcmEgcnQ9MTE1OTE5MTUzNSByZz1wYXJ0eQp+IyEgdGlkPTExNTgxNzUzNTgKRGFzIE11ZCB3aXJkIGltIE1hZXJ6IDE1PyBTb3p1c2FnZW4gbWl0dGVuIGluIGRlciBQdWJlcnRhZXQ/IEtlaW4gV3VuZGVyLCBkYXNzCmRhcyBncmFkZSBzbyBydW16aWNrdC4uLgoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBIZWlsZXIgZnVlciBBbmZhZW5nZXI/IChDaGFnYWxsLCAyNi4gU2VwIDIwMDYsIDE3OjIyOjA4KToKfiMhIG9uPUNoYWdhbGwgb3Q9MTE1OTI4NDExMCBvZz1kLmFuZmFlbmdlcgp+IyEgcm49QWxrb2hvbCBydD0xMTU5MjgzODk4IHJnPWQuYW5mYWVuZ2VyCn4jISB0aWQ9MTE1OTIxOTE4MQpTbyBpbiBkZXIgQXJ0OgoKRGVyIFNhbmR0aWdlciBzYWd0OiBJY2ggaGFiZSBiZWhvZXJ0LCBTcGllbGVybmFtZSBoYXQgc2ljaCBkaWUgU3lwaGlsaXMKRGVyIFNhbmR0aWdlciBzYWd0OiB6dWdlem9nZW4uIFZpZWxsZWljaHQgZnJhZ3N0IER1IGlobiBtYWwsIHdpZSBtYW4gCkRlciBTYW5kdGlnZXIgc2FndDogZGllc2UgdG9sbGUgS3JhbmtoZWl0IGJla29tbXQuCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IEhlaWxlciBmdWVyIEFuZmFlbmdlcj8gKEFsa29ob2wsIDI2LiBTZXAgMjAwNiwgMTc6MjI6MzYpOgp+IyEgcm49Q2hhZ2FsbCBydD0xMTU5Mjg0MTEwIHJnPWQuYW5mYWVuZ2VyCn4jISB0aWQ9MTE1OTIxOTE4MQpldHdhIHNvICpnKgoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogVFYtS2FydGUgUFZSIDI1MCAoQ3JvZnQsIDI2LiBTZXAgMjAwNiwgMTg6MTI6MjkpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNTkyODcwODMgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTE1OTE3ODM4MQpBYmVyICJTaW5uIG1hY2hlbiIgaGF0IHNpY2ggImVpbmdlYnVlcmdlcnQiPyAsLSkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBUVi1LYXJ0ZSBQVlIgMjUwIChNYWhhcmV0LCAyNi4gU2VwIDIwMDYsIDE4OjEzOjE3KToKfiMhIHJuPUNyb2Z0IHJ0PTExNTkyODcxNDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCmphCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogVFYtS2FydGUgUFZSIDI1MCAoSGlnaGxhbmRlciwgMjYuIFNlcCAyMDA2LCAxODoxNTo0MSk6Cn4jISBybj1NYWhhcmV0IHJ0PTExNTkyODcxOTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCkphIGF1Y2ggenVyIEZyYWdlIG5hY2ggZGVyIFZTLiBTbyBoYWJlIGljaCBkYXMgYW4gc2ljaCBrZW5uZW5nZWxlcm50LgoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogVFYtS2FydGUgUFZSIDI1MCAoWm9vaywgMjYuIFNlcCAyMDA2LCAxODoxNjozMyk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTExNTkyODczNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCkFsc28gaWNoIGtlbm5lIFZTIG51ciBhbHMgIlZlcnNjaGx1c3NzYWNoZSIKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogVFYtS2FydGUgUFZSIDI1MCAoSGlnaGxhbmRlciwgMjYuIFNlcCAyMDA2LCAxODoxODoyMyk6Cn4jISBybj1ab29rIHJ0PTExNTkyODczOTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxClVwcy4gU2NobWFycm4gaXN0IGFuIHNpY2ggdmVya2VocnQuIElyZ2VuZHdpZSBhYmVyIGF1Y2ggcmljaHRpZy4KTmEsIGVnYWwuIFByZWlzIFZTIGtlbm5lIGljaCwgdW5kIFZlcnNjaGx1c3NhY2hlIG1hY2h0IG5pY2h0IHZpZWwgU2lubiwKd2VpbCBtYW4gZGVtIEthZXVmZXIgamEga2xhcm1hY2hlbiBtdXNzLCB3aWV2aWVsIG1hbiB3aWxsIDopCgpIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBUVi1LYXJ0ZSBQVlIgMjUwIChab29rLCAyNi4gU2VwIDIwMDYsIDE4OjE4OjU5KToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9MTE1OTI4NzUwMyByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKSWNoIG1laW50ZSBqYSBhdWNoIG51ciwgZGFzcyBpY2ggZGllIEFia3Vlcnp1bmcgVlMgbnVyIGFscwoiVmVyc2NobHVzc3NhY2hlIiBrZW5uZS4gWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBUVi1LYXJ0ZSBQVlIgMjUwIChBbmF0b2wsIDI2LiBTZXAgMjAwNiwgMTg6MzI6MjIpOgp+IyEgcm49Wm9vayBydD0xMTU5Mjg3NTM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpEaXRvLi4uIFZTLW5mRC4gVlMtdmVydHJhdWxpY2guIFZTLWdlaGVpbS4gVlMtc3RyZW5nIGdlaGVpbS4gT2RlciBzbyBhZWhubGljaC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogVFYtS2FydGUgUFZSIDI1MCAoTXVhZGliLCAyNi4gU2VwIDIwMDYsIDIyOjA4OjAwKToKfiMhIHJuPU1haGFyZXQgcnQ9MTE1OTI4NzE5NyByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKbGVpZGVyCm5pY2h0IHNlaHIgc2lubnZvbGwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBUVi1LYXJ0ZSBQVlIgMjUwIChPcmt0b2V0ZXIsIDI2LiBTZXAgMjAwNiwgMjI6MTQ6MzYpOgp+IyEgcm49QW5hdG9sIHJ0PTExNTkyODgzNDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCkhhZWhhZWguLiBkaWUgVVMtUmVnaWVydW5nIGhhdCBudW4gYmVzY2hsb3NzZW4gZWluZ2VzIGFuIEluZm9ybWF0aW9uZW4gYWxzCmdlaGVpbSB6dSBiZXRyYWNodGVuLCBkaWUgc2llIHZvciBlaW5pZ2VuIEphaHJlbiBub2NoIHZlcm9lZmZlbnRsaWNodCBoYXQuLi4KZ2FicyB2b3Igd2VuaWdlbiBUYWdlbiBlaW5lbiBBcnRpa2VsIHp1IGluIGRlciB3YXNoaW5ndG9uIHBvc3QKCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBUVi1LYXJ0ZSBQVlIgMjUwIChNdWFkaWIsIDI2LiBTZXAgMjAwNiwgMjI6MzI6NTUpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNTkyODY1NDYgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTE1OTE3ODM4MQpudW4gd2Vpc3MgaWNoIHdhcyBtaXQgZXJnb25vbWllIGdlbWVpbnQgaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogVFYtS2FydGUgUFZSIDI1MCAoTXVhZGliLCAyNi4gU2VwIDIwMDYsIDIyOjM1OjU1KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTU5Mjg3OTM1IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTExNTkxNzgzODEKbmEgd2VubiBlcyBrZWluZW4gc2lubiAibWFjaHQiIGRhbm4gZGFyZiBtYW4gZGFzIGF1Y2ggYmVpYmVoYWx0ZW4sIGRhIGVzIGluCmd1dGVyIGdlc2VsbHNjaGFmdCBpc3QKYnR3IGlzdCBlaW4gQ2FsbCBmb3IgVGVuZGVyIGVpbiBSdWYgbmFjaCBaYWVydGxpY2hrZWl0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFRWLUthcnRlIFBWUiAyNTAgKFJvbmRhLCAyNi4gU2VwIDIwMDYsIDIyOjM3OjM1KToKfiMhIHJuPU11YWRpYiBydD0xMTU5MzAyOTU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpOZWluLCBlaW4gIkNhbGwgZm9yIHRlbmRlciIgaXN0IGhldXR6dXRhZ2Ugb3V0LCBkYXMgaGF0IHdhcyBtaXQgTG9rb21vdGl2ZW4KdW5kIHZpZWwgS29obGUgenUgdHVuLgoKV2FydW0gaXN0IGVpZ2VudGxpY2ggIlVua29zdGVuIiBhbHMgV29ydCBkb2NoIGluIE9yZG51bmc/IEljaCBoYWJlIGdlbGVybnQsCmRhc3MgZXMgZGllIG5pY2h0IGdpYnQuIFdpZSBtYW4gYXVjaCBLb3N0ZW4gbmljaHQgInVtbGVndCIuCgpSb25kYSAqdW53aXNzZW5kIC0gd2lzc2JlZ2llcmlnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFRWLUthcnRlIFBWUiAyNTAgKE11YWRpYiwgMjYuIFNlcCAyMDA2LCAyMjo0NDoxOCk6Cn4jISBybj1Sb25kYSBydD0xMTU5MzAzMDU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQp1aSBkYXMgaXN0IG91dCB1bmQgZWluZSBsb2tvbW90aXZlbnBocmFzZT8KbnVuIHZlcnN0ZWhlIGljaCBzbyBlaW5pZ2VzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogVFYtS2FydGUgUFZSIDI1MCAoS2Vzc2EsIDI2LiBTZXAgMjAwNiwgMjI6NTc6MzgpOgp+IyEgcm49Um9uZGEgcnQ9MTE1OTMwMzA1NSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKR3V0ZSBGcmFnZS4gJ1VuLScga2FubiBhbGxlcmRpbmdzIG5pY2h0IG51ciBOZWdhdGlvbiwgc29uZGVybiBhdWNoCkludGVuc2l2aWVydW5nIChVbnRpZWZlKSBvZGVyIG5lZ2F0aXZlIEJld2VydHVuZyAoVW5zaXR0ZSkgYmV6ZWljaG5lbi4gV2VsY2hlcwpkYXZvbiBiZWkgZGVuIFVua29zdGVuIHp1dHJpZmZ0LCBrYW5uIGljaCBuaWNodCBtYWwgcmF0ZW4sIGRhZnVlciBtdWVzc3RlIG1hbgpndWNrZW4sIGluIHdlbGNoZW0gS29udGV4dCBkYXMgV29ydCB1cnNwcnVlbmdsaWNoIGF1cyBkZW4gVW50aWVmZW4Kc3ByYWNobGljaGVyIFVuc2l0dGVuIGF1ZnRhdWNodGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogVFYtS2FydGUgUFZSIDI1MCAoWm9vaywgMjYuIFNlcCAyMDA2LCAyMzowMjo0MCk6Cn4jISBybj1LZXNzYSBydD0xMTU5MzA0MjU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpEaWUgQmVoYXVwdHVuZywgZXMgZ2ViZSAiVW5rb3N0ZW4iIG5pY2h0LCBpc3QgYWxiZXJuZXMgQldMZXItU3ByZWNoLCBkaWUgCmRlciBJbGx1c2lvbiBhdWZzaXR6ZW4sIGRhc3Mgc2llIGRpZSBrb21wbGV0dGUgRGV1dHVuZ3Nob2hlaXQgdWViZXIgYWxsZXMsCndhcyBtaXQgS29zdGVuIHp1IHR1biBoYXQsIGJlc2l0emVuLiBVbmQgbmF0dWVybGljaCBnaWJ0IGVzIGRlbiBCZWdyaWZmCmRlciAiVW5rb3N0ZW4iIGluIGVpbmVtIHN0cmVuZyB3aXNzZW5zY2hhZnRsaWNoZW4gQmVncmlmZnMtU2FsYXQgbmljaHQuCgpBYmVyIGF1c3NlcmhhbGIgZGVzIFNhbGF0ZXMgZ2lidCBlcyBVbmtvc3RlbiBuYXR1ZXJsaWNoIHNjaG9uOyBIaW50ZXJncnVuZCAKaXN0IGRlciwgZGVuIEtlc3NhIGJlc2NocmllYmVuIGhhdCwgenVtaW5kZXN0IGhhdCBtaXIgZGFzIGVpbiBTcHJhY2gtCndpc3NlbnNjaGFmdGxlciBtYWwgc28gZXJsYWV1dGVydC4gRGVyIFdpa2lwZWRpYS1BcnRpa2VsIHp1ICJVbmtvc3RlbiIKYmVyaWNodGV0IGFlaG5saWNoZXMuIFVuZCBtZWluZW4gdHV0IGRhcyBXb3J0IGVpbmUgRm9ybSB2b24gS29zdGVuLCBkaWUKcGxvZXR6bGljaCBhdWZ0cmV0ZW4sIGRpZSBlaW5lbSB1bmFuZ2VuZWhtIHNpbmQgb2RlciBkaWUgbWVociBudXIgc28gZWluZQpWYXJpYW50ZSB2b24gQXVzbGFnZW5lcnNhdHogc2luZC4gCgpVbmQgaW4gZGVtIFp1c2FtbWVuaGFuZyBmaW5kZSBpY2ggZGFzIGF1Y2ggdm9lbGxpZyBpbiBPcmRudW5nLiAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogVFYtS2FydGUgUFZSIDI1MCAoUm9uZGEsIDI2LiBTZXAgMjAwNiwgMjM6MDU6NTcpOgp+IyEgcm49Wm9vayBydD0xMTU5MzA0NTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpTcGFubmVuZCB3YWVyZSB0YXRzYWVjaGxpY2ggbWFsIGVpbmUgZ2VtZWluc2FtZSBVbnRlcnN1Y2h1bmcgRGVpbmVzClNwcmFjaHdpc3NlbnNjaGFmdGxlcnMgbWl0IEJXTC1Qcm9mcy4gTGV0enRlcmUgc2VoZW4gVW5rb3N0ZW4gZWJlbiBhbHMgVW53b3J0CmFuIHVuZCBmaW5kZW4sIGRhc3MgU3ByYWNod2lzc2Vuc2NoYWZ0bGVyIG51ciBVbnNpbm4gaW0gS29wZiBoYWJlbiB1bmQgZGFzCldvcnQgZmFjaGxpY2hlciBVbmZ1ZyBpc3QuIFVuZCBLb3N0ZW4gc29sbHRlbiBlaW5lbSBlaWdlbnRsaWNoIGltbWVyCnVuYW5nZW5laG0gc2Vpbiwgb2Rlcj8KClJvbmRhICpmaW5kZXQgZGllICJEaXNrdXNzaW9uIiBuaWNodCB1bnBhc3NlbmQgaW4gc2NobWFycm4qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogVFYtS2FydGUgUFZSIDI1MCAoS2Vzc2EsIDI2LiBTZXAgMjAwNiwgMjM6MDY6NDcpOgp+IyEgcm49Um9uZGEgcnQ9MTE1OTMwNDc1NyByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKUm9uZGEsIGRlaW4gVW4tV2lzc2VuIGlzdCBiZWVpbmRydWNrZW5kIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogVFYtS2FydGUgUFZSIDI1MCAoWm9vaywgMjYuIFNlcCAyMDA2LCAyMzowODozNyk6Cn4jISBybj1Sb25kYSBydD0xMTU5MzA0NzU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpXaWVzbyBzb2xsdGVuIGVpbmVtIEtvc3RlbiBpbW1lciB1bmFuZ2VuZWhtIHNlaW4/IERhIHd1ZXJkZSBpY2ggc2FnZW46ClNjaGxlY2h0ZXIgVmVydHJpZWIhIDspCgpXYXMgc29sbGVuIGRpZSBnZW1laW5zYW0gdW50ZXJzdWNoZW4/IERhcyBQcm9ibGVtIGlzdCwgZGFzcyBkZXIKU3ByYWNod2lzc2Vuc2NoYWZ0bGVyIGViZW4gZXR3YXMgdWViZXIgZGFzIFdvcnQsIHNlaW5lIEhlcmt1bmZ0LApzZWluZSBCZWRldXR1bmcgdW5kIGRlbiBWZXJ3ZW5kdW5nc3p1c2FtbWVuaGFuZyBiZXJpY2h0ZW4ga2Fubi4KCkRlciBCV0xlciwgZGVyIGRhcyBXb3J0ICJVbmtvc3RlbiIgZnVlciBVbmZ1ZyBoYWVsdCwgc2l0enQgZWluZW0KZ3Jvc3NlbiBGZWhsZXIgYXVmOiBEYXNzIG5hZW1saWNoIGFsbGUgV2VsdCBzZWluZSBiZWdyaWZmbGljaGUKRmVpbmhlaXRlbiB0ZWlsZW4gbXVlc3N0ZS4gRGFzIGlzdCBhYmVyIG1pdG5pY2h0ZW4gc28uIAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBUVi1LYXJ0ZSBQVlIgMjUwIChSb25kYSwgMjYuIFNlcCAyMDA2LCAyMzoxMToxNSk6Cn4jISBybj1ab29rIHJ0PTExNTkzMDQ5MTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCkljaCB3b2xsdGUgYXVjaCBudXIgYW5kZXV0ZW4sIGRhc3MgZXMgdW5rbHVnIGlzdCwgaW4gQmVpc2VpbiBlaW5lcyBub3JtYWxlbgpCV0wnbGVycyB2b24gVW5rb3N0ZW4genUgcmVkZW4uIEFiZXIgbWlyIGlzdCBzZWxic3R2ZXJzdGFlbmRsaWNoIGtsYXIsIGRhc3MKIlVuIiBuaWNodCBudXIgc2NobGVjaHRlcyBiZWRldXRlbiBtdXNzLiBNYW4gZGVua2UgbnVyIGFuIFVudGVycmljaHQsIFVuZmFsbAp1bmQgVW5rZS4uLiBhZWguIEljaCBkZW5rIG5vY2htYWwgZHJ1ZWJlciBuYWNoLi4uCgpSb25kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFRWLUthcnRlIFBWUiAyNTAgKFpvb2ssIDI2LiBTZXAgMjAwNiwgMjM6MTU6MjkpOgp+IyEgcm49Um9uZGEgcnQ9MTE1OTMwNTA3NSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKaWNoIHNhY2ggamE6IGJ3bGVyLXNwcmVjaC4gOykgem9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBUVi1LYXJ0ZSBQVlIgMjUwIChBcmssIDI2LiBTZXAgMjAwNiwgMjM6MTc6MDcpOgp+IyEgcm49S2Vzc2EgcnQ9MTE1OTMwNDI1OCByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKVW5zaW5uIDotKQpVbmtvc3RlbiB1bmQgVW5zdW1tZW4gc2luZCB1bWdhbmdzc3ByYWNobGljaGUgQXVzZHJ1ZWNrZS4gQmVzb25kZXJzIGxvZ2lzY2hlbgpTaW5uIGhhYmVuIHNpZSBuaWNodC4gVW5rb3N0ZW4hPSJrZWluZSBLb3N0ZW4iIHVuZCBVbnN1bW1lbiE9ImtlaW5lIFN1bW1lbiIuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFRWLUthcnRlIFBWUiAyNTAgKEtlc3NhLCAyNi4gU2VwIDIwMDYsIDIzOjE4OjA1KToKfiMhIHJuPUFyayBydD0xMTU5MzA1NDI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpJcmdlbmR3byBrb21tdCBhdWNoIGRlciBVbnNpbm4gbWFsIGhlciwgdW5kIGRhcyB3dWVobGVuIGhhbHQgZGllClNwcmFjaHdpc3NlbnNjaGFmdGxlciByYXVzLiBEYXMgbWFjaHQgdW5zIHNvZ2FyIG1hbmNobWFsIG5lIFVubWVuZ2UgVmVyZ251ZWdlbgo6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFRWLUthcnRlIFBWUiAyNTAgKEtlbGx5YnVuZHksIDI2LiBTZXAgMjAwNiwgMjM6MTg6MDYpOgp+IyEgcm49Um9uZGEgcnQ9MTE1OTMwNDc1NyByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKV29iZWkgZGllIFNwcmFjaHdpc3NlbnNjaGFmdGxlciBkYSBhdWNoIHNvIEJlZ3JpZmZlIHdpZSAnZHVyY2hmdWVocmVuJyBuaWNodAptb2VnZW4uIERhIHd1ZXJkZSBtYW4vZWxmL3p3YWVyc2NoL2hvYmJpdC9mbG9odGF4aSBkZW4gQm9jayB6dW0gR2FlcnRuZXIKbWFjaGVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogVFYtS2FydGUgUFZSIDI1MCAoS2Vzc2EsIDI2LiBTZXAgMjAwNiwgMjM6MTk6MjMpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMTU5MzA1NDg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpXZWxjaGUgbW9lZ2VuIGRhcyBuaWNodCB1bmQgd2FydW0/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogVFYtS2FydGUgUFZSIDI1MCAoQXJrLCAyNi4gU2VwIDIwMDYsIDIzOjE5OjUzKToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTE1OTMwNTQ4NiByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKV2FzIG1laW50IG1hbiBkZW5uIG51biwgd2VubiBtYW4gc2FndDogIkljaCBoYXR0ZSBlaW5pZ2UgVW5rb3N0ZW4uIiBvZGVyIGdhcgoiSWNoIGhhdHRlIGRhIGdhciBrZWluZSBVbmtvc3Rlbi4iID8KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogVFYtS2FydGUgUFZSIDI1MCAoS2Vzc2EsIDI2LiBTZXAgMjAwNiwgMjM6MjA6MjEpOgp+IyEgcm49QXJrIHJ0PTExNTkzMDU1OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCidEYXMgaGF0IG5peCBleHRyYSBnZWtvc3RldC4nIG9kZXIgc28uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogVFYtS2FydGUgUFZSIDI1MCAoWm9vaywgMjYuIFNlcCAyMDA2LCAyMzoyMTo1NSk6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTExNTkzMDU0ODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCk5hamEsIGRpZSBHZXNlbGxzY2hhZnQgZnVlciBEZXV0c2NoZSBTcHJhY2hlIGhhdHRlIG1hbCBhdWYgZWluZXIgaWhyZXIKV29ydGVybGlzdGVuIHp1bSAiV29ydCBkZXMgSmFocmVzIiAoaGFiIGRhcyBKYWhyIHZlcmdlc3NlbikgZGFzIFdvcnQKIlN0ZXVlcmJlZ3VlbnN0aWd1bmdzYWJiYXVnZXNldHoiLiBEdW1tZXJ3ZWlzZSBoaWVzIGRhcyBHZXNldHogCiJTdGV1ZXJ2ZXJndWVuc3RpZ3VuZ3NhYmJhdWdlc2V0eiIuIEF1ZiBtZWluZSBOYWNoZnJhZ2UsIHdpZSBkZW5uIApkaWUgR2VzZWxsc2NoYWZ0IGRhcmF1ZiBrYW0sIGVpbiBXb3J0IGF1c3p1emVpY2huZW4sIGRhcyBnYXIga2VpbgpyZWFsZXMgR2VzZXR6IGJlemVpY2huZXQsIGhhdCBtYW4gbWlyIGVudGdlZ25ldCwgc2llIGhhZXR0ZW4gZ2VmdW5kZW4sCmRhc3MgImJlImd1ZW5zdGlndW5nIGJlc3NlciBrbGFlbmdlLCBhdXNzZXJkZW0gaGFldHRlbiBzaWUgZXMKTWVuc2NoZW4gdm9yZ2VsZWd0IHVuZCBkaWUgaGFldHRlbiBhdWNoIGdlc2FndCwgZGFzcyAiYmUiZ3VlbnN0aWd1bmcKYmVzc2VyIGtsYWVuZ2UuCgpEYXMgaGF0IG1laW5lIEhvY2hhY2h0dW5nIHZvciBTcHJhY2h3aXNzZW5zY2hhZnRsZXJuIG5hY2hoYWx0aWcKZXJzY2h1ZXR0ZXJ0IDspCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IFRWLUthcnRlIFBWUiAyNTAgKEFyaywgMjYuIFNlcCAyMDA2LCAyMzoyMzozMSk6Cn4jISBybj1LZXNzYSBydD0xMTU5MzA1NjIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpBbHNvIHdlbm4gIkRhcyBpc3QgVW5zaW5uLiIgZ2xlaWNoYmVkZXV0ZW5kIGlzdCBtaXQgIkRhcyBpc3Qga2VpbiBTaW5uLiIgb2RlcgoiRGEgZ2lidCBlcyBrZWluZW4gU2lubi4iLCBkYW5uIGhlaXNzdCBkb2NoICJJY2ggaGF0dGUga2VpbmUgVW5rb3N0ZW4uIiBzb3ZpZWwKd2llICJJY2ggaGF0dGUgbmljaHQga2VpbmUgS29zdGVuLiIgb2RlciBzbz8KSGloaWJsYWJsYWJsYWJsdWJsdWJncm9laGxzYWJiZXJ3dWJiZWwuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFRWLUthcnRlIFBWUiAyNTAgKFpvb2ssIDI2LiBTZXAgMjAwNiwgMjM6MjQ6NTEpOgp+IyEgcm49QXJrIHJ0PTExNTkzMDU4MTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCkFyaywgU2llIGhhYmVuIG5pY2h0IGF1Zm1lcmtzYW0gbWl0Z2VsZXNlbiEKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogVFYtS2FydGUgUFZSIDI1MCAoS2Vzc2EsIDI2LiBTZXAgMjAwNiwgMjM6MjU6MTMpOgp+IyEgcm49QXJrIHJ0PTExNTkzMDU4MTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCk5laW4sIHMuby4gTWl0IGRlaW5lbSBBcmd1bWVudCBtdWVzc3RlbiBVbmtvc3RlbiB6dWdsZWljaCByaWVzaWdlIEtvc3RlbiBzZWluLAp2Z2wuIFVubWFzc2UuIE1hbmNobWFsIGhlaXNzdCBkYXMgZ2xlaWNoZSBoYWx0IHZlcnNjaGllZGVuZSBTYWNoZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBUVi1LYXJ0ZSBQVlIgMjUwIChSb25kYSwgMjYuIFNlcCAyMDA2LCAyMzoyNjowNCk6Cn4jISBybj1LZXNzYSBydD0xMTU5MzA1OTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpNaXN0LiBJY2ggbXVzcyBzY2huZWxsZXIgdGlwcGVuLCBzb25zdCB2ZXJzY2h3ZW5kZSBpY2ggUmVoZS4uLlVuZCBpY2ggd2lsbAplbmRsaWNoIG1hbCBuZSBLZSBrZW5uZW5sZXJuZW4hIE5hY2hkZW0gaWNoIGRpZSBVbmtlIC0gQW1hcnlsbGlzLCBubyBvZmZlbmNlIQotIGtlbm5lbmdlbGVybnQgaGFiZSwgYmluIGljaCBkYSBTRUhSIGdlc3Bhbm50IQoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBUVi1LYXJ0ZSBQVlIgMjUwIChLZXNzYSwgMjYuIFNlcCAyMDA2LCAyMzoyNzo0Mik6Cn4jISBybj1Sb25kYSBydD0xMTU5MzA1OTY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpFaW5lIEtlIGlzdCBlaW5lIEtyb2V0ZW51bmFydCwgZGllIGFtIGxpZWJzdGVuIHZvbSBIaW1tZWwgZmFsbGVuZGUgS3VlaEUKZnJpc3N0LCBkYWhlciBkZXIgTmFtZS4gZGFzIHVlaCBpc3Qgc2Nob24gZHJpbiwgZGFzIEtFIHBhc3N0IG5pY2h0IHJlaW4sIHdlaWwKc2llIHNpY2ggcmVnZWxtYWVzc2lnIHVubWFlc3NpZyB1ZWJlcnNjaGFldHp0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFRWLUthcnRlIFBWUiAyNTAgKEtlbGx5YnVuZHksIDI2LiBTZXAgMjAwNiwgMjM6MzM6NTQpOgp+IyEgcm49S2Vzc2EgcnQ9MTE1OTMwNTU2MyByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKR2VybWFuaXN0ZW4uIERhcyBXb3J0ICdkdXJjaGZ1ZWhyZW4nIGlzdCBlaW4gc29nZXNjaG1hZWh0ZXMgJ1BsYXN0aWt3b3J0Jy4gRXMKa2FtIGF1ZiBpbiBkZXIgTXVzaWt0aGVvcmllIGltIDE5LiBKaGR0LCBkYSB3dXJkZSBlaW4gTW90aXYgJ2R1cmNoZ2VmdWVocnQnLgpTcGFldGVyIHd1cmRlIGRhbm4gZGllIEVuZGxvZXN1bmcgJ2R1cmNoZ2VmdWVocnQnLiBTb3dlaXQgaWNoIGRlbiBLb21tZW50YXIKZGF6dSBub2NoIGluIEVyaW5uZXJ1bmcgaGFiZSAqR0cqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogVFYtS2FydGUgUFZSIDI1MCAoS2Vzc2EsIDI2LiBTZXAgMjAwNiwgMjM6MzU6MjApOgp+IyEgcm49S2VsbHlidW5keSBydD0xMTU5MzA2NDM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpBbHNvIGVpZ2VudGxpY2ggZW50c3ByaWNodCBkYXMgZ2VuYXUgJ3BlcmZpY2VyZScgKHdpZSBpbiBwZXJmZWt0KS4gU2ljaGVyLApkYXNzIGRhcyBuaWNodCBhZWx0ZXIgaXN0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk6IFRWLUthcnRlIFBWUiAyNTAgKEtlbGx5YnVuZHksIDI2LiBTZXAgMjAwNiwgMjM6MzY6MDIpOgp+IyEgcm49S2Vzc2EgcnQ9MTE1OTMwNjUyMCByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKaWNoIG5peCB3aXNzZW4sIGljaCBhdXNzZW5nZWxhZW5kZXIsIGljaCBudXIgeml0aWVyZW4sIG1vcmdlbiBhbmRlcmVzCmJhdXN0ZWxsZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBUVi1LYXJ0ZSBQVlIgMjUwIChBbmF0b2wsIDI2LiBTZXAgMjAwNiwgMjM6Mzg6MzIpOgp+IyEgcm49S2VsbHlidW5keSBydD0xMTU5MzA2NTYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpXYXMgZ2lidHMgYmVpIFJlXjEwMD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogVFYtS2FydGUgUFZSIDI1MCAoTWFoYXJldCwgMjYuIFNlcCAyMDA2LCAyMzozODo1OCk6Cn4jISBybj1BbmF0b2wgcnQ9MTE1OTMwNjcxMiByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKRGllIFRWLUthcnRlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IFRWLUthcnRlIFBWUiAyNTAgKEh1bW5pLCAyNi4gU2VwIDIwMDYsIDIzOjM5OjA4KToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTE1OTMwNjU2MiByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKVWVicmlnZW5zIGlzdCBJTUhPIFVudGllZmUgZWluIHVucGFzc2VuZGVzIEJlaXNwaWVsLiBEZW5uIGVzIGlzdCBiZWkgZWluZXIKdW50aWVmZSBqYSBlYmVuIG5pY2h0IHRpZWYsIGRhcnVtIGlzdCBzaWUgc28gZ2VmYWVocmxpY2guCgpIdW1uaSwga2x1Z3NjaGVpc3NlbmRlciBEcmFjaGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogVFYtS2FydGUgUFZSIDI1MCAoR25vbWUsIDI2LiBTZXAgMjAwNiwgMjM6Mzk6MzgpOgp+IyEgcm49QW5hdG9sIHJ0PTExNTkzMDY3MTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCmRpZSBUVi1LYXJ0ZSBpbSBzdWJqZWN0IGdlZ2VuIGVpbmVuIHVua29zdGVuYmVpdHJhZyB2b24gMTAwIGV1cm8uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogVFYtS2FydGUgUFZSIDI1MCAoS2Vzc2EsIDI2LiBTZXAgMjAwNiwgMjM6Mzk6NDApOgp+IyEgcm49SHVtbmkgcnQ9MTE1OTMwNjc0OCByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKRGllIFVudGllZmUga2FubiBiZWlkZXMgc2VpbiwgaW5zb2Zlcm4gaXN0IHNpZSBlaW4gYW5nZW1lc3NlbiB2ZXJ3aXJyZW5kZXMKQmVpc3BpZWwgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBUVi1LYXJ0ZSBQVlIgMjUwIChIdW1uaSwgMjYuIFNlcCAyMDA2LCAyMzo0MDoxMik6Cn4jISBybj1LZXNzYSBydD0xMTU5MzA2NzgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpFaW5lIFVudGllZmUga2FubiB0aWVmIHNlaW4/IEludGVyZXNzYW50LiBXYXIgbWlyIG5ldS4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogVFYtS2FydGUgUFZSIDI1MCAoWm9vaywgMjYuIFNlcCAyMDA2LCAyMzo0MDoxNik6Cn4jISBybj1IdW1uaSBydD0xMTU5MzA2NzQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpkYSBzY2hlaXNzIGljaCBnZXJuZSB3ZWl0ZXI6IHVudGllZmUgaGF0IG5vY2ggZWluZSBiZWRldXR1bmcsIG5hZW1saWNoCmRpZSBlaW5lIGJlc29uZGVycyBncm9zc2VuIHRpZWZlLiBrb25zdWx0aWVyZSBkZW4gZHVkZW4gZGVpbmVzIHZlcnRyYXVlbnMgOykKCnpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogVFYtS2FydGUgUFZSIDI1MCAoTWFoYXJldCwgMjYuIFNlcCAyMDA2LCAyMzo0MToyMCk6Cn4jISBybj1ab29rIHJ0PTExNTkzMDY4MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxClpvb2shIFdlbGNoIFVOZ2V6b2dlbmVzIFdvcnQgYXVzIGRlaW5lbiBGaW5nZXJuISBQZnVpIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IFRWLUthcnRlIFBWUiAyNTAgKFpvb2ssIDI2LiBTZXAgMjAwNiwgMjM6NDE6NDgpOgp+IyEgcm49TWFoYXJldCBydD0xMTU5MzA2ODgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQonc2NodWxkaWd1bmcuCnpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBUVi1LYXJ0ZSBQVlIgMjUwIChIdW1uaSwgMjYuIFNlcCAyMDA2LCAyMzo0MTo0OSk6Cn4jISBybj1NYWhhcmV0IHJ0PTExNTkzMDY4ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCkljaCBzdGF1bmUuIEhhYiBnZXJhZGUgZ2V3aWtpdC4gTmFqYSwgaGFiIGRhcyBiaXNoZXIgbnVyIGF1cyBTaWNodCBlaW5lcwpTZWdsZXJzIGdlc2VoZW4sIGRlbSBpc3QgZWluZSByaWVzaWdlIFRpZWZlIHZvZWxsaWcgZWdhbCwgZWluZSB6dSBzZWljaHRlClN0ZWxsZSBlYmVuIG5pY2h0Li4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IFRWLUthcnRlIFBWUiAyNTAgKEdub21lLCAyNi4gU2VwIDIwMDYsIDIzOjQxOjU0KToKfiMhIHJuPUh1bW5pIHJ0PTExNTkzMDY4MTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCnVudGllZmVuIHdhcmVuIG1pciBiaXNoZXIgYXVzc2NobGllc3NsaWNoIGFscyBhZXVzc2Vyc3QgdGllZiBiZWthbm50LgpudW5qYSwgZGV1dHNjaGxhbmQgdW5laW5pZyBzcHJhY2hlbmxhbmQsIHd1ZXJkIGljaCBzYWdlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBUVi1LYXJ0ZSBQVlIgMjUwIChab29rLCAyNi4gU2VwIDIwMDYsIDIzOjQyOjM2KToKfiMhIHJuPUdub21lIHJ0PTExNTkzMDY5MTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCmRhc3MgZHUgYWxzIHp3ZXJnIHVlYmVyaGF1cHQgZWluZSBkaWZmZXJlbnppZXJ0ZSB2b3JzdGVsbHVuZyB2b24gCnRpZWZlbiwgdW50aWVmZW4sIHNlaWNodGVuIHN0ZWxsZW4gdW5kIHNvIGhhc3QsIGlzdCBpbiBob2hlbSBncmFkCmVyc3RhdW5saWNoLiB6dSBvZnQgb2t0b3B1cy1xdWVzdCBnZXNwaWVsdD8KCnpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogVFYtS2FydGUgUFZSIDI1MCAoR25vbWUsIDI2LiBTZXAgMjAwNiwgMjM6NDM6MzgpOgp+IyEgcm49Wm9vayBydD0xMTU5MzA2OTU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpudW5qYSwgaWNoIHJlZGUgdm9uIHRpZWZlbiBiaXMgenUgMSw4MG0uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogVFYtS2FydGUgUFZSIDI1MCAoT3JrdG9ldGVyLCAyNi4gU2VwIDIwMDYsIDIzOjQ4OjQ5KToKfiMhIHJuPUdub21lIHJ0PTExNTkzMDcwMTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxClJlaWNodCBmdWVyIGRlbiBTdGFuZGFyZHp3ZXJnIHZvZWxsaWcgYXVzIHp1bSBlcnRyaW5rZW4uIChzb3dobCBhbHMgVW50aWVmZQphbHMgYXVjaCBhbHMgVW50aWVmZSkuCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IFRWLUthcnRlIFBWUiAyNTAgKEFyaywgMjYuIFNlcCAyMDA2LCAyMzo1MDoxMyk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE1OTMwNzMyOSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKSW4gZWluZW0gRmFudGFzeSBNdWQgc29sbHRlIGRpZSBEaXNrdXNzaW9uIGFtIEJlaXNwaWVsIGRlciBVbnRvdGVuIGdlZnVlaHJ0CndlcmRlbiA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogVFYtS2FydGUgUFZSIDI1MCAoS2Vzc2EsIDI3LiBTZXAgMjAwNiwgMDA6MTI6MzApOgp+IyEgcm49QXJrIHJ0PTExNTkzMDc0MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxClVudG90ZSBzaW5kLCBnYW56IGtsYXIsIHVuaGVpbWxpY2gsIHVuZ2VoZXVlciB0b3QuIEdld29nZW4gd2VyZGVuIHNpZSBpbgpVbnplbiwgZGFzIGlzdCBkaWUgcHNldWRvbGF0aW5pc2llcnRlIEZvcm0gdm9uIFVua2VuLiBXb2JlaSBzdHJpdHRpZyBpc3QsIG9iCm1pdCBkZXIgRWluaGVpdHMtVW56ZSBkaWUgU3RhbmRhcmR1bmtlIG1pdCBvZGVyIG9obmUgS3VoZnVlbGx1bmcgZ2VtZWludCBpc3QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogVFYtS2FydGUgUFZSIDI1MCAoT3JrdG9ldGVyLCAyNy4gU2VwIDIwMDYsIDAwOjE3OjQwKToKfiMhIHJuPUtlc3NhIHJ0PTExNTkzMDg3NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCkRpZSBBbmdhYmVuIHN0YW1tZW4gc2ljaGVyIGF1cyBXaXppcGVkaWEub3JnLCBvZGVyPwoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUGFydHkgaW4gS2llbCB6dXIgS2llbGVyIFdvY2hlIChSb25kYSwgMjcuIFNlcCAyMDA2LCAwMjo1MDo1NSk6Cn4jISBybj1NZXNpcmlpIHJ0PTExNTkzMTgxMzcgcmc9cGFydHkKfiMhIHRpZD0xMTU5MzE4MDc3CkRhcyBtaXQgZGVyIFNjaGlmZnN0YXVmZSBnZWh0IGtsYXIsIE1lc2kuIFNvIGxhbmdlIER1IG5pY2h0IHZvcnNjaGxhZWdzdCwgZGFzcwpkZXIgVmVyZWluIGVpbiBTZWdlbHNjaGlmZiBrYXVmdCwgdW0gTUctV2VyYnVuZyB6dSBtYWNoZW4uLi4KCk5FSU4sIEpBTk5FISBXaXIga2F1ZmVuIEtFSU4gU2VnZWxzY2hpZmYhIChBYmVyIHdpciBmYWhyZW4gU0VIUiBnZXJuIGJlaSBEaXIKbWl0ISA7LSkgKQoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFRWLUthcnRlIFBWUiAyNTAgKEtudXJwcywgMjcuIFNlcCAyMDA2LCAxMzoyODozOSk6Cn4jISBybj1Dcm9mdCBydD0xMTU5Mjg3MTQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpIYXN0IGR1IGVpbmUgUXVlbGxlIGRhZnVlciwgZGFzcyAnU2lubiBtYWNoZW4nIG5pY2h0IGJsb3NzIHNjaGxlY2h0ZXMgRGV1dHNjaAppc3QsIHNvbmRlcm4gd2lya2xpY2ggZWluZXIgVWViZXJzZXR6dW5nIGF1cyBkZW0gRW5nbGlzY2hlbiBlbnRzcHJpbmd0PyBEZXIKWndpZWJlbGZpc2NoIGhhdCBkYXMgYmVoYXVwdGV0Li4uIFdlbm4gZWluZSBTYWNoZSBTcGFzcyBtYWNoZW4ga2Fubiwgd2FydW0Ka2FubiBzaWUgZGFubiBhdWNoIG5pY2h0IFNpbm4gbWFjaGVuPyBKYSwgaXN0IHNpY2hlcmxpY2ggbmljaHQgc2Nob2VuOyBpY2ggYmluCm51ciBzZWhyIHVuc2ljaGVyLCBvYiBkYXMgZWluIEFuZ2xpemlzbXVzIGlzdCwgb2RlciBuaWNodCBkb2NoIGVpbgpWZXJicmVpdHNwaGFlbm9tZW4gZGVyIE1hcmtlIFp3aWViZWxmaXNjaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBUVi1LYXJ0ZSBQVlIgMjUwIChIdW1uaSwgMjcuIFNlcCAyMDA2LCAxMzozODozMSk6Cn4jISBybj1LbnVycHMgcnQ9MTE1OTM1NjUxOSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKRWJlbi4gTWFuIHNjaGF1ZSwgZnVlciB3ZW4gWndpZWJlbGZpc2NoIHNjaHJlaWJ0LCB1bmQgd2VyIGRhIG5vY2ggc2NocmVpYnQsCnVuZCBkYW5uIGJpbGRlIG1hbiBzaWNoIHNlaW4gZWlnZW5lcyBVcnRlaWwuIEljaCBoYWx0ZSBkZW4gTWVuc2NoZW4gZnVlcgpnbmFkZW5sb3MgdWViZXJiZXdlcnRldCB1bmQgcmVjaHRoYWJlcmlzY2guIFVuZCB3ZW5uIGljaCBzY2hyZWliZW4gd2lsbCAiU2lubgptYWNoZW4iLCBkYW5uIHNjaHJlaWJlIGljaCBkYXMuIFNvZ2FyIGluIFJhdW1iZXNjaHJlaWJ1bmdlbi4gU28uIEdsZWljaCBtYWwKYW5mYW5nZW4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFRWLUthcnRlIFBWUiAyNTAgKEtudXJwcywgMjcuIFNlcCAyMDA2LCAxNDoxNToyNSk6Cn4jISBybj1LbnVycHMgcnQ9MTE1OTM1NjUxOSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKT2theSwgU2VsYnN0cmVwbHksIEZXSVc6Cmh0dHA6Ly9mYjE0LnVuaS1tYWluei5kZS9+c3RoL3Npbm53ZWIyLmh0bQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFRWLUthcnRlIFBWUiAyNTAgKE11YWRpYiwgMjcuIFNlcCAyMDA2LCAxNToxMzoyOCk6Cn4jISBybj1LZXNzYSBydD0xMTU5MzA0MjU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQphbHNvIGdlZ2VuIGFsbGUgYW5kZXJlbiBzY2hlaW5iYXIgdm9yaGFuZGVuZW4gd2Focm5laG11bmdlbjogZWluZSB1bnRpZWZlIGlzdAptaXRuaWNodGVuIGVpbmUgaW50ZW5zaXZpZXJ0ZSB0aWVmZSwgc29uZGVybiBlaGVyIGVpbiBuaWNodCB2b3JoYW5kZW5lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogVFYtS2FydGUgUFZSIDI1MCAoWm9vaywgMjcuIFNlcCAyMDA2LCAxNToxNzoyMik6Cn4jISBybj1NdWFkaWIgcnQ9MTE1OTM2MjgwOCByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKd2lsbHN0IGR1IGRpY2ggYXVjaCBub2NoIGFscyBid2xlciBvdXRlbj8gem9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBUVi1LYXJ0ZSBQVlIgMjUwIChHd2VuLCAyNy4gU2VwIDIwMDYsIDE1OjQyOjM1KToKfiMhIHJuPVpvb2sgcnQ9MTE1OTM2MzA0MiByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKT3V0ZXQgZXIgc2ljaCBkYW5uIGFuc2NoZWluZW5kIG9kZXIgc2NoZWluYmFyPwpHd2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFRWLUthcnRlIFBWUiAyNTAgKE1haGFyZXQsIDI3LiBTZXAgMjAwNiwgMTU6NDI6NTEpOgp+IyEgcm49R3dlbiBydD0xMTU5MzY0NTU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpXZWlhLCBzb3dhcyBkYXJmc3QgZHUgWm9vayBkb2NoIG5pY2h0IGZyYWdlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFRWLUthcnRlIFBWUiAyNTAgKEJvaW5nLCAyNy4gU2VwIDIwMDYsIDE1OjQ1OjMzKToKfiMhIHJuPUtudXJwcyBydD0xMTU5MzU2NTE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpBbHNvIFpvb2sgaGF0IGluIG1lZ2FzY2htYXJybiBzY2hvbiBsYW5nZSB2b3IgZGVtIFp3aWViZWxmaXNjaCBnZWdlbgpkYXMgU2lubiBtYWNoZW4gZ2V3ZXR0ZXJ0LCBkYWhlciB3YXIgYXVjaCBvZWZ0ZXIgbWFsIHZvbSBnb3R0ZXNsYWVzdGVybGljaGVuClNpbm5tYWNoZXIgZGllIFJlZGUuIAogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogVFYtS2FydGUgUFZSIDI1MCAoSHVtbmksIDI3LiBTZXAgMjAwNiwgMTU6NDY6MjEpOgp+IyEgcm49Qm9pbmcgcnQ9MTE1OTM2NDczMyByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKWnUgc3BhZXQuIFNvZWJlbiBpc3QgZGFzIGFscyBEZXRhaWwgaW4gZWluZW0gUmF1bSBnZWxhbmRldC4gTWFsIGd1Y2tlbiwgb2IgZGFzCmplbWFuZCBqZW1hbHMgZmluZGV0LiBEZXIgUmF1bSBpc3QgYXVjaCBub2NoIGxhbmdlIG5pY2h0IGFuZ2VzY2hsb3NzZW4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFRWLUthcnRlIFBWUiAyNTAgKENyb2Z0LCAyNy4gU2VwIDIwMDYsIDE1OjQ3OjU1KToKfiMhIHJuPUh1bW5pIHJ0PTExNTkzNjQ3ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCkRhbm4gd2lyZCBkYXMgYXVjaCBzbyBzY2huZWxsIGtlaW4gU3BpZWxlciBmaW5kZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFRWLUthcnRlIFBWUiAyNTAgKEFudGhlYSwgMjcuIFNlcCAyMDA2LCAxNTo0OTozOSk6Cn4jISBybj1Dcm9mdCBydD0xMTU5MzY0ODc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpIbS4uLiB3aWUgbGFuZyBkYXVlcnQgZWluIGdyZXAgdWViZXIgZGFzIGdhbnplIE11ZD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBUVi1LYXJ0ZSBQVlIgMjUwIChCb2luZywgMjcuIFNlcCAyMDA2LCAxNTo1Mzo1Nik6Cn4jISBybj1BbnRoZWEgcnQ9MTE1OTM2NDk3OSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKQWxzbyBiZWkgbWlyIGhhdHMgY2EuIDMwIFNla3VuZGVuIGdlZGF1ZXJ0IGRhcyBEZXRhaWwgenUgZmluZGVuLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogVFYtS2FydGUgUFZSIDI1MCAoR3dlbiwgMjcuIFNlcCAyMDA2LCAxNjowMDozMCk6Cn4jISBybj1Cb2luZyBydD0xMTU5MzY1MjM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpMYXV0IEhlcnJuIEhlaWtvIFN0YWhsICJNYWNodCBTaW5ubWFjaGVuIFNpbm4/IgooaHR0cDovL2ZiMTQudW5pLW1haW56LmRlL35zdGgvc2lubndlYjIuaHRtKQpoYXQgZ2VyYWRlIGRlciBTcGllZ2VsIGRhcyAiU2lubiBtYWNoZW4iIHZlcmJyZWl0ZXQgdW5kIGVpbmdlYnVlcmdlcnQuCkd3ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogVFYtS2FydGUgUFZSIDI1MCAoS2Vzc2EsIDI3LiBTZXAgMjAwNiwgMTY6MjE6MDcpOgp+IyEgcm49TXVhZGliIHJ0PTExNTkzNjI4MDggcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCk1hbiBrYW5uIGVzIGRpcmVrdCB3YWhybmVobWVuLCB3YXMgV29lcnRlciBiZWRldXRlbj8gUHJpbWEsIGVuZGxpY2ggbmljaHQgbWVocgppbiBsYWVzdGlnZW4gUXVlbGxlbiB1bmQgRGF0ZW5iYW5rZW4gd3VlaGxlbiwgd2llIGRhcyBaZXVnIHdvaGwgZ2VicmF1Y2h0CndpcmQuIExlcm50IGlociBkYXMgYmVpIGRlbiBCV0xlcm4/IDopCgpLZXNzYSwgd2lsbCBhdWNoIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFRWLUthcnRlIFBWUiAyNTAgKEFyaywgMjcuIFNlcCAyMDA2LCAxNjozNTo1OSk6Cn4jISBybj1NdWFkaWIgcnQ9MTE1OTM2MjgwOCByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKT2ssIGhhcnRuYWVja2lnIGZvcmRlcmUgaWNoIGltbWVyIG5vY2ggZWluZSBEaXNrdXNzaW9uIHVtICJVbnRvdGUiLiBTaW5kIGRpZQpudW4gdG90IG9kZXIgbmljaHQuIERlbmtlbiBzaWU/IElzdCBkYXMgTGViZW4/IFNpZSBiZXdlZ2VuIHNpY2gsIGFiZXIga2FubiBkYXMKS3JpdGVyaXVtIHNlaW4/IFZhbXBpcmUgZGVua2VuIC4uLiBvZGVyIG5pY2h0PyBEYW1pdCBzaW5kIHNpZSBuaWNodCB3aXJrbGljaAp0b3QsIGFsc28gdW50b3QsIFNrZWxldHRlIGRhZ2VnZW4/IERpZSBzaW5kIG51ciBSb2JvdGVyLCBkaWUgc29mb3J0IGxvc2hhdWVuLAphbHNvIGRvY2ggdG90LiBGcmFnZW4gdWViZXIgRnJhZ2VuLCBkaWUgKGspZWluZW4gaW50ZXJlc3NpZXJlbj8hCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFRWLUthcnRlIFBWUiAyNTAgKEJvaW5nLCAyNy4gU2VwIDIwMDYsIDE2OjQyOjA4KToKfiMhIHJuPUFyayBydD0xMTU5MzY3NzU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpTdGltbXQuCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBUVi1LYXJ0ZSBQVlIgMjUwIChBcmssIDI3LiBTZXAgMjAwNiwgMTY6NDU6MDApOgp+IyEgcm49Qm9pbmcgcnQ9MTE1OTM2ODEyOCByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKV3VlcmcgZGllIG5vY2ggbmljaHQgdm9yaGFuZGVuZSBEaXNrdXNzaW9uIG5pY2h0IGFiIDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBUVi1LYXJ0ZSBQVlIgMjUwIChHd2VuLCAyNy4gU2VwIDIwMDYsIDE2OjUyOjE0KToKfiMhIHJuPUFyayBydD0xMTU5MzY4MzAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpXYXMgc29sbCBkaWUgVFYtS2FydGUgbnUgZWlnZW50bGljaCBrb3N0ZW4/Ckd3ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogVFYtS2FydGUgUFZSIDI1MCAoTXVhZGliLCAyNy4gU2VwIDIwMDYsIDE3OjA5OjQ5KToKfiMhIHJuPUd3ZW4gcnQ9MTE1OTM2ODczNCByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKaHVtbmkgaXN0IGVpbiB1bnNhZWdsaWNoZXIgdHJvdHprb3BmCmRhcyBpc3QgZ2VyYWRlenUgdW5oZWltbGljaCwgdHJvdHp0IGVyIGRvY2ggZ2FueiBvZmZlbi4gCnp1c2FldHpsaWNoIGVyc2NoZWludCBlcyBtaXIgYXVjaCB1bmx1c3RpZywgYWJlciBpY2ggaGFiZSBqYSBhdWNoIGtlaW5lbgpodW1vci4KYXVmIGplZGVuIGZhbGwgaXN0IGRpZSBhbWJpZ3VpdGFldCB2b24gdW50aWVmZSB1bmVmcmllZGlnZW5kLCBhdXNzZXIgZnVlcgpnZXJtYW5pc3RlbiwgZGllIHNpbmQgZGFkdXJjaCBlaGVyIHVuYmVmcmllZGlndCwgd2FzIHNpZSB1bmdlbWVpbiwgYWxzbyBhZGVsaWcKYmVmcmllZGlndC4gZGFzIGtsaW5ndCB1bnNpbm5pZywgYWJlciB3aXIgcmVkZW4gamEgdm9uIGdlcm1hbmlzdGVuLiAKZGFzIGlzdCB1bmdlaGV1ZXIgZ2VtZWluPyBuYXR1ZXJsaWNoIG1pciBpc3QgZGVyIGFydGlrZWwgYXVjaCBuaWNodCBnZWhldWVyLAphYmVyIGRhcyBpc3Qga2VpbiBncnVuZCBkZW4gYXJtZW4gZ2VtZWluIHdpZWRlciBpbnMgc3BpZWwgenUgYnJpbmdlbiwgZXIga2FubgpkYWZ1ZXIgbmljaHRzLgpkYXMgaXN0IHNvZ2FyIHJlY2h0IHVuYXJ0aWcuIGFiZXIgYXVjaCBhcnRpZ2tlaXQgd2FlcmUgaGllciB1bmFuZ2VtZXNzZW4uCmRpZXNiZXp1ZWdsaWNoIHdpbGwgaWNoIG51biBhbmdlbWVzc2VuIG1hc3MgaGFsdGVuIHVuZCBkZW4gcHVua3Qgc2V0emVuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogVFYtS2FydGUgUFZSIDI1MCAoQ3JvZnQsIDI3LiBTZXAgMjAwNiwgMTc6NTA6MjkpOgp+IyEgcm49TXVhZGliIHJ0PTExNTkzNjk3ODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxClN0dWRpZXJzdCBkdSBCV0wsIE11YWRpYj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogVFYtS2FydGUgUFZSIDI1MCAoR3JpbW1ib3JuLCAyNy4gU2VwIDIwMDYsIDE5OjU0OjI1KToKfiMhIHJuPUd3ZW4gcnQ9MTE1OTM2ODczNCByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKU3RhbmQgZG9jaCBkYWJlaSwgUHJlaXMgVmVyaGFuZGx1bmdzYmFzaXMuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBUVi1LYXJ0ZSBQVlIgMjUwIChPcmt0b2V0ZXIsIDI3LiBTZXAgMjAwNiwgMTk6NTc6MDcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNTkzNzk2NjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCldpZSB2aWVsIGlzdCBlaW5lIFZlcmhhbmRsdW5nc2Jhc2lzIHdlcnQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogVFYtS2FydGUgUFZSIDI1MCAoS251cnBzLCAyNy4gU2VwIDIwMDYsIDIwOjA1OjAzKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTU5Mzc5ODI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTE3ODM4MQpJbiBkZW0gRmFsbGUgd29obCBkZXIgRWJheS1QcmVpcyB2b24gNDAtNTAgRVVSICsgZGVuIEF1ZnNjaGxhZywgZGFzcyBtYW4KdmVybWVpbnRsaWNoIGtlaW5lbiBTdHJlc3MgbWl0IGRlbSBWZXJrYWV1ZmVyIGhhdCwgZGEgZXIgYmVrYW5udCBpc3QuIFdpZXZpZWwKZGVyIGxldHp0ZSBQdW5rdCBlaW5lbSB3ZXJ0IGlzdCwgbXVzcyBtYW4gbmF0dWVybGljaCBzZWxic3Qgd2lzc2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IEhlaWxlciBmdWVyIEFuZmFlbmdlcj8gKEdyaW1tYm9ybiwgMjcuIFNlcCAyMDA2LCAyMDowNTozNSk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTE1OTM4MDMyOSBvZz1kLmFuZmFlbmdlcgp+IyEgcm49S2Vzc2EgcnQ9MTE1OTI4NTc5NCByZz1kLmFuZmFlbmdlcgp+IyEgdGlkPTExNTkyMTkxODEKVmllbGxlaWNodCBzb2xsdGUgbWFuIHZlcnN1Y2hlbiBkYXMgUHJvYmxlbSBuaWNodCBhbHMgUHJvYmxlbSwgc29uZGVybiBhbHMKQ2hhbmNlIHp1IGJlZ3JlaWZlbi4gRXMgZ2VodCB1bSBTcGllbGVyIGRlciBlcnN0ZW4gYmVpZGVuIExldmVsLiBXZW5uIGRpZSBzbwpzY2hyZWNrbGljaCBrcmFuayBzaW5kLCBiaWV0ZXQgc2ljaCBkb2NoICdzZWxic3Rsb2VzY2h1bmcnIGFuLCBnZWZvbGd0IHZvbiBkZXIKRXJzY2hhZmZ1bmcgZWluZXMgbmV1ZW4gQ2hhcmFrdGVycy4gRGVyIFZlcmx1c3QgaXN0IGdlcmluZy4gVW5kIGRhcyBiaWV0ZXQKYXVjaCBnbGVpY2ggZGllIEdlbGVnZW5oZWl0LCBiZWkgZGVyIFJhc3NlbmF1c3dhaGwgYmVzc2VyIGF1Znp1cGFzc2VuIHVuZApzdGF0dCBlaW5lcyBzcGl0em9ocmlnZW4sIHNjaHd1bGVuIEJhZXVtZWZpY2tlcnMgZ2xlaWNoIGVpbmVuIGFuc3RhZW5kaWdlbgpad2VyZyB6dSB3YWVobGVuLiBLbGFzc2lzY2hlIHdpbi13aW4gU2l0dWF0aW9uLCB1bmQgZGFmdWVyIG11c3MgbWFuIG5pY2h0bWFsCmRlbiBTYW5kdGlnZXIgYmVsYWVzdGlnZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBIZWlsZXIgZnVlciBBbmZhZW5nZXI/IChLZXNzYSwgMjcuIFNlcCAyMDA2LCAyMDoxNDo1Nyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE1OTM4MDMzNSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkyMTkxODEKSWNoIHNhZ3Mgbm9jaG1hbDogZXMgZ2VodCBuaWNodCBudXIgdW0gZGllIE5lcnZlbiBkZXIgQW5mYWVuZ2VyLCBzb25kZXJuIGF1Y2gKZGllIGRlciBDaWNlcm9uZXMuCldhcyBnZW5hdSBicmluZ3QgZGVyIFp3ZXJnLCBhdXNzZXIgZGFzcyBlaW4gWndlcmdlbnJhc3NlbmF1c3N1Y2hlciB2aWVsbGVpY2h0CnZvbiBOYXR1ciBhdXMgaGFlcnRlciBpbSBOZWhtZW4gaXN0PyBWaWVsbGVpY2h0IGtvZW5udGUgbWFuIGRhIGFsbGVyZGluZ3MgbWFsCnJlYWxpc3Rpc2NoIGFuc2V0emVuIHVuZCBkaWUgSW5mZWt0aW9uc3NjaHdlbGxlIGZ1ZXIgWndlcmdlIGFuZ2VtZXNzZW4KYW5oZWJlbi4gV2VyIGltIERyZWNrIGF1Zmdld2FjaHNlbiBpc3QsIHN0ZWNrdCBzaWNoIGVpbmZhY2ggbmljaHQgc28gc2NobmVsbAphbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBUVi1LYXJ0ZSBQVlIgMjUwIChNdWFkaWIsIDI3LiBTZXAgMjAwNiwgMjE6MjQ6NTkpOgp+IyEgcm49Q3JvZnQgcnQ9MTE1OTM3MjIyOSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkxNzgzODEKbmVpbiwgaWNoIGJpbiBlaW4gYWthZGVtaXNjaGVyIHZlcnNhZ2VyCmhtbQp3YXIgbmVpbiBkaWUgcmljaHRpZ2UgYW50d29ydD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBIZWlsZXIgZnVlciBBbmZhZW5nZXI/IChNdWFkaWIsIDI3LiBTZXAgMjAwNiwgMjE6MjY6MjMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNTkzODAzMzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MjE5MTgxCm1hbmNobWFsIGhhYmUgaWNoIGRlbiBlaW5kcnVjaywgZGFzcyBkZXIgdmVybHVzdCBiZWkgc2VsYnN0bG9lc2NodW5nIG5pY2h0cwptaXQgZGVtIGFsdGVyIGRlcyBjaGFyYWt0ZXJzIHp1IHR1biBoYXQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBIZWlsZXIgZnVlciBBbmZhZW5nZXI/IChBbGtvaG9sLCAyNy4gU2VwIDIwMDYsIDIzOjA1OjQyKToKfiMhIHJuPUtlc3NhIHJ0PTExNTkzODA4OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MjE5MTgxCmRhcyBtaXQgZGVuIG5lcnZlbiBkZXIgQ2ljZXJvbmVzIHZlcnN0ZWggaWNoIG5pY2h0IHNvIGdhbnouIFdlbm4gbWFuIHNvCmdlbmVydnQgdm9uIGRlbiBrbGVpbmVuIGlzdCwgbXVzcyBtYW4gZG9jaCBuY2lodCBDaWNlcm9uZSB3ZXJkZW4sIG9kZXI/CgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogSGVpbGVyIGZ1ZXIgQW5mYWVuZ2VyPyAoS2Vzc2EsIDI3LiBTZXAgMjAwNiwgMjM6MDc6NTApOgp+IyEgcm49QWxrb2hvbCBydD0xMTU5MzkxMTQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTIxOTE4MQpJY2ggYmluIG5pY2h0IHZvbiBkZW4ga2xlaW5lbiBTcGllbGVybiBnZW5lcnZ0LCBzb25kZXJuIHZvbiAoaW4gbWVpbmVuIEF1Z2VuKQp1bm5vZXRpZ2VtIFplaXRhdWZ3YW5kLiBEYSBrYW5uIGljaCBnbGF1YmUgaWNoIGF1Y2ggZnVlciBKYW5uZSBzcHJlY2hlbi4KSXJnZW5kd2llIHNjaGVpbnQgZGFzIHJpY2h0aWcgc2Nod2VyIHp1IHZlcnN0ZWhlbiB6dSBzZWluLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogSGVpbGVyIGZ1ZXIgQW5mYWVuZ2VyPyAoQWxrb2hvbCwgMjcuIFNlcCAyMDA2LCAyMzoxMDoyMyk6Cn4jISBybj1LZXNzYSBydD0xMTU5MzkxMjcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTIxOTE4MQpqYSB1bmQgaWNoIHZlcnN0ZWggZGFzIG1pdCBkZW0gWmVpdGF1ZndhbmQgbmljaHQuIFdvIGlzdCBkZW5uIGRhcyBQcm9ibGVtIG1pdApkZW0gSGVpbGVyPyBNYW4ga2FubiBkYXMgYW5nZW5laG1lIG1pdCBkZW0gbnVldGxpY2hlbiB2ZXJiaW5kZW4uIERpZSBTcGllbGVyCmxlcm5lbiB6aWVtbGljaCB2aWVsIGRhYmVpLgoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IEhlaWxlciBmdWVyIEFuZmFlbmdlcj8gKEFsa29ob2wsIDI3LiBTZXAgMjAwNiwgMjM6MTA6NDkpOgp+IyEgcm49S2Vzc2EgcnQ9MTE1OTM5MTI3MCByZz1zY2htYXJybgp+IyEgdGlkPTExNTkyMTkxODEKYWNoIGphIHVuZCBkYXJ1bSBnZWh0cyBkb2NoLCBvZGVyPyBEYXNzIHNpZSB3YXMgbGVybmVuLCBvZGVyPwoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IEhlaWxlciBmdWVyIEFuZmFlbmdlcj8gKEtlc3NhLCAyNy4gU2VwIDIwMDYsIDIzOjExOjQzKToKfiMhIHJuPUFsa29ob2wgcnQ9MTE1OTM5MTQyMyByZz1zY2htYXJybgp+IyEgdGlkPTExNTkyMTkxODEKRGFzIFByb2dyYW1tIHp1IEFuZmFuZyBpc3QgZWluZmFjaCBzY2hvbiBsYW5nIGdlbnVnLCBkZXNoYWxiLiBEZW4gQXVzZmx1ZyB6dW0KSGVpbGVyIGthbm4gbWFuIHNwYWV0ZXIgbWFsIG1hY2hlbiwgd2VubiBkaWUgYWxsZXJlcnN0ZW4gRGluZ2UgZXJrbGFlcnQgc2luZCwKZGFzIG11c3MgKGltbWVyIG5vY2ggbS5FLikgbmljaHQgYXVjaCBub2NoIGRlciBTdGFydC1DaWNlcm9uZSBtYWNoZW4uIEFiZXIgZHUKbXVzc3QgZGFzIGphIG5pY2h0IGdlbmF1c28gc2VoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogSGVpbGVyIGZ1ZXIgQW5mYWVuZ2VyPyAoQWxrb2hvbCwgMjcuIFNlcCAyMDA2LCAyMzoxMzowMSk6Cn4jISBybj1LZXNzYSBydD0xMTU5MzkxNTAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTIxOTE4MQppc3QgZXMgZGVubiBlaW4gc3RhcnIgZmVzdGdlbGVndGVzIFByb2dyYW1tPyBEYXMgd2FyIG1pciBuZXUuIAoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IEhlaWxlciBmdWVyIEFuZmFlbmdlcj8gKEtlc3NhLCAyNy4gU2VwIDIwMDYsIDIzOjE0OjIxKToKfiMhIHJuPUFsa29ob2wgcnQ9MTE1OTM5MTU4MSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkyMTkxODEKTmVpbi4gQWJlciBlcyBzaW5kLCB3ZW5uIG1hbiBkYXMgZWluZSBXZWlsZSBtYWNodCwgZG9jaCBpbW1lciB3aWVkZXIgZGllc2VsYmVuCkZyYWdlbiwgZGllIGRpZSBBbmZhZW5nZXIgaGFiZW4uIERhaGVyIGVyZ2lidCBlcyBkdXJjaGF1cyBlaW5lIGdld2lzc2UKUm91dGluZSwgZGllIHNpY2ggYmlzaGVyIGF1Y2ggZ3V0IGJld2FlaHJ0IGhhdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBIZWlsZXIgZnVlciBBbmZhZW5nZXI/IChNYWhhcmV0LCAyNy4gU2VwIDIwMDYsIDIzOjE0OjUxKToKfiMhIHJuPUFsa29ob2wgcnQ9MTE1OTM5MTU4MSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkyMTkxODEKT2ssIExldXRlLCBtYWNodCBlcyBkb2NoIGVpbmZhY2ggc286IFdlbm4gS2Vzc2Egb2RlciBKYW5uZSB3aWVkZXIgZWluZW4Ka3JhbmtlbiBBbmZhZW5nZXIgaGFiZW4sIHZlcndlaXNlbiBzaWUgZGVuIGFuIEFsa29ob2wgdW5kIGRlciBicmluZ3QgZGVuIGFybWVuClBhdGllbnRlbiB6dW0gSGVpbGVyLiAgU28gYmxlaWJlbiBkaWUgTmVydmVuIGRlciBNYWVkZWxzIGdlc2Nob250IHVuZCBBbGtvaG9sCmthbm4gemVpZ2VuLCB3YXMgZXIgZGVuIEFuZmFlbmdlcm4gZGFiZWkgbm9jaCBzbyBiZWlicmluZ2VuIGthbm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogSGVpbGVyIGZ1ZXIgQW5mYWVuZ2VyPyAoQWxrb2hvbCwgMjcuIFNlcCAyMDA2LCAyMzoxNTowNyk6Cn4jISBybj1LZXNzYSBydD0xMTU5MzkxNjYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTIxOTE4MQpuYWphIHdlbm4gZXIgc2NobnVwZmVuIGhhdCwgZnJhZ3QgZXIgZGEgbmljaHQsIHdpZSBtYW4gZGVuIGxvc3dpcmQ/CgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogSGVpbGVyIGZ1ZXIgQW5mYWVuZ2VyPyAoS2Vzc2EsIDI3LiBTZXAgMjAwNiwgMjM6MjA6MzUpOgp+IyEgcm49QWxrb2hvbCBydD0xMTU5MzkxNzA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTIxOTE4MQpKYS4gVW5kIGljaCB3dWVyZGUgaWhtIGRhbm4gaW4gZGVtIE1vbWVudCBnZXJuIHNhZ2VuIGtvZW5uZW46IGtvbW0gbWFsIHNjaG5lbGwKbWl0LCBkYXMgZ2VodCBmaXguIFNwYWV0ZXIgbXVzc3RlIGRhbm4gd29hbmRlcnNoaW4uCgpBYmVyIGljaCBnZWJlIE1haGFyZXQgcmVjaHQgdW5kIGxhc3NlIGRpZXNlIERpc2t1c3Npb24gamV0enQuIFdpciBoYWJlbiBlaW5lbgpWb3JzY2hsYWcgZ2VtYWNodCwgZGVyIGVpbmlnZW4gbmljaHQgZ2VmYWVsbHQgLSBndXQsIGRhcyBrYW5uIGljaCBha3plcHRpZXJlbi4KRXMgbmVydnQgbWljaCBhbGxlcmRpbmdzIGV0d2FzLCBkYXNzIGVpbiBQdW5rdCwgZGVyIGF1cyBkZXIgRXJmYWhydW5nIHZvbiB6d2VpCnppZW1saWNoIHZpZWxiZXNjaGFlZnRpZ3RlbiBDaWNlcm9uZXMgdm9yZ2VicmFjaHQgd2lyZCwgb2ZmZW5iYXIgbmljaHQgbWFsCmJlZ3JpZmZlbiB3aXJkLiBJY2ggZGFjaHRlIGltbWVyLCBpY2gga2FubiBtaWNoIGhhbGJ3ZWdzIGF1c2RydWVja2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IEhlaWxlciBmdWVyIEFuZmFlbmdlcj8gKEFsa29ob2wsIDI3LiBTZXAgMjAwNiwgMjM6MjQ6MTEpOgp+IyEgcm49S2Vzc2EgcnQ9MTE1OTM5MjAzNSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkyMTkxODEKaWNoIGxhc3MgZGllIGRpc2t1c3Npb24gYXVjaCwgZGEgYXVjaCBvZmZlbmJhciBtZWluIEVpbndhbmQgbmljaHQgYmVncmlmZmVuCndpcmQuIEFiZXIgaWNoIHd1c3N0ZSBzY2hvbiBpbW1lciwgZGFzcyBpY2ggbWljaCBuaWNodCBhdXNkcnVlY2tlbiBrYW5uLiBEYWhlcgp3dW5kZXJ0IGVzIG1pY2ggbmljaHQuCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogSGVpbGVyIGZ1ZXIgQW5mYWVuZ2VyPyAoR25vbWUsIDI4LiBTZXAgMjAwNiwgMDA6MzU6MzIpOgp+IyEgcm49QWxrb2hvbCBydD0xMTU5MzkyMjUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTIxOTE4MQppY2ggaGFiZSBrZXNzYXMgdW5kIGphbm5lcyBwdW5rdCB2ZXJzdGFuZGVuIHVuZCBrYW5uIGRlbSBudXIgenVzdGltbWVuLgp3ZW5uIG1hbiBlaW5lbSBsdmwtMS1zcGllbGVyIGRpZSBhbGxlcmVyc3RlbiBzY2hyaXR0ZSBlcmtsYWVyZW4gbXVzcywKa2FubiBkZXIgenVzYWV0emxpY2ggJ2ljaHNjaGxlcHBlZGljaGpldHp0YXVjaG5vY2huYWNoa2F0em1hbmR1Jy1hdWZ3YW5kCnJlbGF0aXYgZW50bmVydmVuZCBzZWluIC0gZnVlciBiZWlkZSBzZWl0ZW4uCgprbGFyLCBmcnVlaGVyIHdhciBlcyBhdWNoIHNvLiBhYmVyIGZydWVoZXIgbXVzc3RlbiB3aXIgYXVjaCBuaWNodCB1bQpqZWRlbiBhbmZhZW5nZXIga2FlbXBmZW4sIG9kZXI/Cgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IEhlaWxlciBmdWVyIEFuZmFlbmdlcj8gKENyb2Z0LCAyOC4gU2VwIDIwMDYsIDAwOjQwOjA5KToKfiMhIHJuPUFsa29ob2wgcnQ9MTE1OTM5MjI1MSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkyMTkxODEKV2llc28gZGFzIFByb2JsZW0gbmljaHQgYW5kZXJzcnVtIGFuZ2VoZW46IE5ld2JpZXNjaHV0eiBiZWkgZGVyIFZlcmdhYmUKdm9uIHNvbGNoZW4gU2FjaGVuPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOiBIZWlsZXIgZnVlciBBbmZhZW5nZXI/IChLZXNzYSwgMjguIFNlcCAyMDA2LCAwMDo0NToxMSk6Cn4jISBybj1Dcm9mdCBydD0xMTU5Mzk2ODA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTIxOTE4MQpHdXRlIEFsdGVybmF0aXZlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IEhlaWxlciBmdWVyIEFuZmFlbmdlcj8gKEFsa29ob2wsIDI4LiBTZXAgMjAwNiwgMDY6NDQ6MDQpOgp+IyEgcm49Q3JvZnQgcnQ9MTE1OTM5NjgwOSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkyMTkxODEKamEsIGRhcyBoYWIgaWNoIGluIGVpbmVtIHZvcmhlcmlnZW4gQXJ0aWtlbCBhdWNoIHNjaG9uIGdlZnJhZ3QuIFdvYmVpIG1hbiBkYW5uCnp1bSBCZWlzcGllbCBkZW4gU2NobnVwZmVuIGF1Y2ggZ2xlaWNoIGFiaGFlbmdlbiBrb2VubnRlLCB3aWUgaWNoIGZpbmRlLiBXYXMKaWNoIHBlcnNvZW5saWNoIGFiZXIgbmljaHQgYmVmdWVocndvcnRlbiB3dWVyZGUuCgpBbGtpIChhYiBudW4gYWJlciB3aXJrbGljaCBzY2h3ZWlnZW5kKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IFRWLUthcnRlIFBWUiAyNTAgKFpvb2ssIDI4LiBTZXAgMjAwNiwgMTA6NDk6MzUpOgp+IyEgcm49TXVhZGliIHJ0PTExNTkzODUwOTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCmFiZXIgZGVpbiBid2wtZmFjaCwgZGFzIGhhdHRlc3QgZHUgZG9jaCBtaXQgYXVzemVpY2hudW5nIGFiZ2VzY2hsb3NzZW4sCm9kZXI/IHpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNjogSGVpbGVyIGZ1ZXIgQW5mYWVuZ2VyPyAoTXVhZGliLCAyOC4gU2VwIDIwMDYsIDExOjI4OjMzKToKfiMhIHJuPU1haGFyZXQgcnQ9MTE1OTM5MTY5MSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkyMTkxODEKYWxzbyBpY2ggZmluZGUgZGFzIHBlcnNvZW5saWNoIGF1Y2ggZGVuIGdlZWlnbmV0ZW4gcHVua3QgdW0gZGFzIG0gaW4gbXVkIHp1CmJldG9uZW4gdW5kIGVpbnp1Zm9yZGVybgpmaW5kZW4gc2ljaCBkZW5uIHdpcmtsaWNoIGtlaW5lIGtsZXJpa2VyIGluIHNvIGVpbmVyIHNpdHVhdGlvbj8KZGFzIHdhZXJlIHNjaGFkZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IFRWLUthcnRlIFBWUiAyNTAgKE11YWRpYiwgMjguIFNlcCAyMDA2LCAxMTozMToxOSk6Cn4jISBybj1ab29rIHJ0PTExNTk0MzMzNzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MTc4MzgxCm5vZSwgbnVyIG1pdCBuZXIgMQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IEhlaWxlciBmdWVyIEFuZmFlbmdlcj8gKEFyaywgMjguIFNlcCAyMDA2LCAxNDozMDozMyk6Cn4jISBybj1LZXNzYSBydD0xMTU5MzkyMDM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTIxOTE4MQpJY2ggZ2xhdWJlIGlobiB6dSB2ZXJzdGVoZW4uIEljaCB2ZXJzdGVoZSBhdWNoIERlaW5lbiBTdGFuZHB1bmt0LiBBYmVyIGRpZQpMb2VzdW5nIHN1cHBvcnRlIGljaCBkZXNoYWxiIG5pY2h0IHVuZCBob2ZmZSwgZGFzcyBkaWUgR3J1ZW5kZSBkYWZ1ZXIgYXVjaAplaW5zZWhiYXIgc2luZC4gSWNoIGhvZmZlIGViZW5zbywgZGFzcyBkaWUgZ2VzY2hpbGRlcnRlIFNpdHVhdGlvbiBkaWUgQXVzbmFobWUKYmxlaWJ0LCB1bmQgd3VlbnNjaGUgc3RyZXNzZnJlaWVyZSBFaW5mdWVocnVuZyBpbiBadWt1bmZ0LiBXaXIgYnJhdWNoZW4sIGRlbmtlCmljaCwgZHVyY2hhdXMgQ2ljZXJvbmVzLCBkaWUgQW5mYWVuZ2VybiBlYmVuIGltbWVyIGRhcyBnbGVpY2hlIGVya2xhZXJlbiwga2xhcgpkYXNzIG1hbiBkYSBtYWwgbXVlZGUgb2IgZGVyIFdpZWRlcmhvbHVuZ2VuIHdpcmQuCkVzIGdpYnQgYWJlciBkdXJjaGF1cyBBbmZhZW5nZXIsIGRpZSBzZWxic3RhZW5kaWdlciBhZ2llcmVuIHVuZCBrZWluZQpTdHVuZGVudm9ybGVzdW5nIHdvbGxlbi4gWnVtaW5kZXN0IGhhdHRlIGljaCBsZXR6dGhpbiBlaW4vendlaSBCZWlzcGllbGUuCkNpY2Vyb25lIG11c3MgamEgbmljaHQgVm9sbHplaXRiZXRyZXV1bmcgc2VpbiA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogSGVpbGVyIGZ1ZXIgQW5mYWVuZ2VyPyAoWmVzc3RyYSwgMjguIFNlcCAyMDA2LCAxNDo1NDoyMSk6Cn4jISBybj1BcmsgcnQ9MTE1OTQ0NjYzMyByZz1zY2htYXJybgp+IyEgdGlkPTExNTkyMTkxODEKTWFsIHVuYWJoYWVuZ2lnIHZvbiBkZXIgYWt0dWVsbGVuIERpc2t1c3Npb24gaGFiZSBpY2ggZGVuIEVpbmRydWNrIGJla29tbWVuLApkYXNzIHZpZWxlIExldXRlLCBkaWUga2VpbmUgQ2ljZXJvbmVzIHNpbmQvd2FyZW4sIHNpY2ggd2VuaWcgR2VkYW5rZW4gZGFydWViZXIKbWFjaGVuLCB3aWUgZGFzIG9mdCBhYmxhZXVmdC4gTWFuIGthbm4gb2huZSBQcm9ibGVtZSBlaW5lbiBnYW56ZW4gQWJlbmQgbWl0CmVpbmVtIEFuZmFlbmdlciB6dWJyaW5nZW4gdW5kIGhhdCBpaG0gZGFubiBnZXJhZGVtYWwgZGllIEdydW5kbGFnZW4gZXJrbGFlcnQsCndpZSBtYW4ga29tbXVuaXppZXJ0LCB1bnRlcnN1Y2h0LCBLYXJ0ZW4gbWFsdCwgc2ljaCB6dXJlY2h0ZmluZGV0LCBkYXNzIG1hbgpuaWNodCBlc3NlbiBtdXNzLCB1bSB6dSB1ZWJlcmxlYmVuIGV0Yy4gdW5kIGlzdCBtaXQgZXR3YXMgR2x1ZWNrIGdlcmFkZSBtYWwKdm9tIEVsZmVuZG9yZiB6dXIgSG9jaGViZW5lIGdlbGFuZ3QuIERlbiBWb3JzY2hsYWcsIG1hbCBzY2huZWxsIG5hY2ggS2F0em1hbmR1Cnp1IGdlaGVuLCBoYWx0ZSBpY2ggYmVpIGRlbiBtZWlzdGVuIEFuZmFlbmdlcm4gZnVlciB1bnJlYWxpc3Rpc2NoLiBFaW4KaGVsZmVuZGVyIEtsZXJpa2VyIGlzdCBuYXR1ZXJsaWNoIHdhcyBhbmRlcmVzLCBzbyBlaW5lciBkYSBpc3QuCk1pciBpc3QgZGllIFNhY2hlIG1vbWVudGFuIG5pY2h0IGFsbHp1IHdpY2h0aWcsIGRhIGljaCBhdXMgWmVpdGdydWVuZGVuICh1bmQKZGVtIEdydW5kLCBkYXNzIGRlciBDaWNlcm9uZS1TdGF0dXMgYmVpIGxhbmdlbiBpZGxlLXplaXRlbiBuaWNodCBhdXNnZXNldHp0CndpcmQpIGtlaW4gQ2ljZXJvbmUgbWVociBiaW4sIGFiZXIgaWNoIGthbm4gS2Vzc2EgdW5kIEphbm5lIGR1cmNoYXVzCnZlcnN0ZWhlbi4KT2IgZWluIExldmVsLTEtU3BpZWxlciB2b3IgS3JhbmtoZWl0ZW4gZ2VzY2h1ZXR6dCB3YWVyZSBvZGVyIG5lbgpFcnN0ZS1IaWxmZS1LYXN0ZW4gbWl0IGVpbmVyIEFud2VuZHVuZyBrcmllZ3Qgby5hZS4gaGFsdGUgaWNoIHVlYnJpZ2VucyBmdWVyCnZvZWxsaWcgdW5rcml0aXNjaCBmdWVyIGRlbiB3ZWl0ZXJlbiBTcGllbHZlcmxhdWYuIERhcyBtYWcgc2ljaCBhZW5kZXJuLCB3ZW5uCmVzIG1hbCBlaW4gcmljaHRpZ2VzIEFuZmFlbmdlcnR1dG9yaWFsIGltIFNwaWVsIGdpYnQuCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogSGVpbGVyIGZ1ZXIgQW5mYWVuZ2VyPyAoQXJrLCAyOC4gU2VwIDIwMDYsIDE0OjU5OjEzKToKfiMhIHJuPVplc3N0cmEgcnQ9MTE1OTQ0ODA2MSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkyMTkxODEKSG0sIGVudHdlZGVyIHdlcmRlbiBhbGxlIHVuc2VsYnN0YWVuZGlnZXIgb2RlciBtdWVzc2VuIEFMTEVTIHZvcmdla2F1dApiZWtvbW1lbiAuLi4gYWJlciBzdHVuZGVubGFuZyBicmluZyBpY2ggc2ljaGVyIGtlaW5lbSB3YXMgYmVpIC4uLiB2ZXJnaXNzdAplci9zaWUgZWggd2llZGVyLiBXYXMgbWFuIHNvIGJyYXVjaHQsIGthbm4gbWFuIHVlYmVyIDxoaWxmZT4gbmFjaGxlc2VuLCBoaWxmZQprb256ZXB0IGlzdCBzaW5udm9sbCwgQmV3ZWd1bmcgLi4uIGFiZXIgYXVjaCBkYXMga29ubnRlIGljaCB3dW5kZXJiYXJlcndlaXNlCm9obmUgSGlsZmUuIERhcyBPcmFrZWwgenUgemVpZ2VuLCBRdWVzdHMgZXJrbGFlcmVuLCBkYXMgd2FyIGVzIGFiZXIgYXVjaApzY2hvbiwgZGFuYWNoIGhlaXNzdCBlcywgTUFDSCBFVCBTRUxCU1QsIExpdHRpIC4uLiBhbnNvbnN0ZW4gZHJvaHQgZGllIEdlZmFociwKc3RhZW5kaWcgYWxzIExvb2t1cCBEZXZpY2UgbWlzc2JyYXVjaHQgenUgd2VyZGVuLCBlcnppZWhlcmlzY2ggYmVkZW5rbGljaCA6LSkKV2lyZCBtYW4gZGVubm9jaCB3ZWdlbiBqZWRlbSBTY2hyaXR0ICgibXVzcyBpY2ggamV0enQgZGVuIEtub3BmIGRydWVja2VuPyIsCiJ3b2hpbiBnZWh0IGVzIGRhPyIsICJrYW5uIGljaCBoaWVyIHdhcyBtYWNoZW4/IikgbWl0IGVpbmVtIFBST0JJRVJTIEhBTFQgQVVTCmJlYW50d29ydGV0IDspCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IEhlaWxlciBmdWVyIEFuZmFlbmdlcj8gKEFyaywgMjguIFNlcCAyMDA2LCAxNTowMDoxMSk6Cn4jISBybj1BcmsgcnQ9MTE1OTQ0ODM1MyByZz1zY2htYXJybgp+IyEgdGlkPTExNTkyMTkxODEKSXJnZW5kd28gZmVobHQgZGEgZWluIE5lYmVuc2F0eiwgYWJlciBkZW4gYmVrb21tdCBpaHIgc2VsYnN0IHJhdXMsIG9kZXI/IDspCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IEhlaWxlciBmdWVyIEFuZmFlbmdlcj8gKEtlc3NhLCAyOC4gU2VwIDIwMDYsIDE1OjA5OjE3KToKfiMhIHJuPUFyayBydD0xMTU5NDQ4NDExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTIxOTE4MQpOYWNoIG1laW5lciBFcmZhaHJ1bmcgd2VyZGVuIGRpZSBOZXVlbiBrZWluZXN3ZWdzIHVuc2VsYnN0YWVuZGlnZXIsIHdlbm4gbWFuCmlobmVuIGRpZSBHcnVuZGxhZ2VuIGdydWVuZGxpY2ggZXJrbGFlcnQuIFNpZSB2ZXJnZXNzZW4gZXMgYXVjaCBuaWNodCB3aWVkZXIsCmplZGVuZmFsbHMga2VpbmVyIHZvbiBkZW5lbiwgbWl0IGRlbmVuIGljaCBpbiBkZW4gbGV0enRlbiBXb2NoZW4genUgdHVuIGhhdHRlLgpTaWUgaGFiZW4gdmllbG1laHIgZGllIE1vZWdsaWNoa2VpdCwgZ2V6aWVsdCBlaW5lciBQZXJzb24gaWhyZSBGcmFnZW4gc3RlbGxlbiwKZGllIGlobmVuIGFuZmFuZ3MgYW0gd2ljaHRpZ3N0ZW4gc2luZC4gVW5kIGRhcyBkYXVlcnQgbWFuY2htYWwuIEljaCBzZWhlIG1laW5lCkF1ZmdhYmUgZGFubiBuaWNodCBkYXJpbiwga3VyeiBoYWxsbyB6dSBzYWdlbiB1bmQgc2llIGRhbm4gYXVmIGRpZSBIaWxmZSB6dQp2ZXJ3ZWlzZW4sIGRhZnVlciBicmFldWNodGUgbWFuIG1laW5lciBNZWludW5nIG5hY2gga2VpbmUgQ2ljZXJvbmVzLgpWaWVsbGVpY2h0IHJlZGVuIHdpciBqYSBpbSBHcnVuZGUgZGFydWViZXIsIHdhcyB3aXIgdW5zIGRhcnVudGVyIHVlYmVyaGF1cHQKdm9yc3RlbGxlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMzOiBIZWlsZXIgZnVlciBBbmZhZW5nZXI/IChBbGtvaG9sLCAyOC4gU2VwIDIwMDYsIDE1OjEwOjUzKToKfiMhIHJuPUtlc3NhIHJ0PTExNTk0NDg5NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MjE5MTgxCmphIGRhcnVlYmVyIHJlZGVuIHdpciwgZGFzIHN0aW1tdAoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzM6IEhlaWxlciBmdWVyIEFuZmFlbmdlcj8gKEFyaywgMjguIFNlcCAyMDA2LCAxNToxNjo1NCk6Cn4jISBybj1LZXNzYSBydD0xMTU5NDQ4OTU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTIxOTE4MQpLYW5uIHNlaW4sIENpY2Vyb25lcyBzaW5kIGphIGtlaW5lIHN0YW5kYXJkaXNpZXJ0ZW4gUm9ib3RlciwgdW5kIGplZGVyIGlzdAphdWZncnVuZCBzZWluZXIgTmF0dXIgbWVociBvZGVyIHdlbmlnZXIgYXVzZnVlaHJsaWNoIHVuZCBtZWhyIG9kZXIgd2VuaWdlcgpoaWxmc2JlcmVpdCwgZXRjLiBJY2ggd2lsbCBkYXMgVGhlbWEgbmljaHQgbm9jaG1hbCBhdWZ3YWVybWVuLCBhYmVyIGtlaW5lClNvbmRlcnNpdHVhdGlvbiBvZGVyIHZlcm1laW50bGljaGUgU29uZGVyc2l0dWF0aW9uIHNvbGx0ZSBTcGllbHNpdHVhdGlvbmVuCmVybGVpY2h0ZXJuLCBudXIgd2VpbCBlcyBnZXJhZGUgc3RvZXJ0LiBBYmdlc2VoZW4gZGF2b24sIGVzIHN0ZWh0IGplZGVtIGZyZWksCm5ldWUgR2ViaWV0ZSBtaXQgSGVpbGVybiBvLmFlLiB6dSB2ZXJzZWhlbiwgdW0gc293YXMgenUgYWRyZXNzaWVyZW4sIGRhcyBoYWJlCmljaCBuaWNodCB1bmJlZGluZ3QgenUgZW50c2NoZWlkZW4uIE1pciBnaW5nIGVzIGF1Y2ggZWhlciB1bSBkZW4gQW5zYXR6IGRlcgpQcm9ibGVtbG9lc3VuZywgbmljaHQgdW0gSGVpbGVyIHp1IHZlcmJpZXRlbiA6KQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMxOiBIZWlsZXIgZnVlciBBbmZhZW5nZXI/IChHcmltbWJvcm4sIDI4LiBTZXAgMjAwNiwgMTU6Mjk6NDgpOgp+IyEgcm49QXJrIHJ0PTExNTk0NDgzNTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MjE5MTgxCkRlciBTcHJ1Y2ggbWl0ICJNYWNoIGV0LCA8bmFtZT4iIGlzdCBpbSBPcmlnaW5hbCB1ZWJyaWdlbnMgbmljaHQgbWl0IExpdHRpCihQaWVycmUgTGl0dGJhcnNraSksIHNvbmRlcm4gbWl0IE90emUgKEZyYW5rIE9yZGVuZXdpdHopLiBJbW1lcmhpbiB3YXJlbiBiZWlkZQpsYW5nZSBKYWhyZSBiZWltIEZDLiBVcmhlYmVyIGRlcyBTcHJ1Y2hzIGlzdCBiZWthbm50bGljaCBFcmljaCBSdXRlbW9lbGxlci4gClNjaGF1ZWluZXJndWNrLCBzb2dhciBpbiBzY2htYXJybiBrYW5uIG1hbiB3YXMgbGVybmVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogSGVpbGVyIGZ1ZXIgQW5mYWVuZ2VyPyAoSHVyYXhwcmF4LCAyOC4gU2VwIDIwMDYsIDE1OjUyOjIxKToKfiMhIHJuPVplc3N0cmEgcnQ9MTE1OTQ0ODA2MSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkyMTkxODEKTnVuIGphLCBlcyBnaWJ0IG5vY2ggZGFzLCB3ZW5uIGF1Y2ggYWJnZXdlcnRldGUsICJ0ZWFtIGF1dG9mb2xnZSIsIFBlZ2FzdXMKYXVjaCB3ZW5uIGljaCBkZW4gbmllIGJlbnV0emUuIFZvbSBTY2hudXBmZW4gaGFiZSBpY2ggbmljaHRzIG1pdGJla29tbWVuLAptZWluZSBsZXR6dGUgUmV0dHVuZyB3YXIgZWluIGJlc29uZGVycyBtdXRpZ2VyIFNwaWVsZXIgZGVyIGVzIGdlc2NoYWZmdCBoYXR0ZQpkZW4gdW50ZXJpcmRpc2NoZW4gRmVybndlc3R3ZWcgenUgZmluZGVuIHVuZCBkb3J0IFd1cnplbHMgKHRvZWRsaWNoZSkKcmF0dGVua3JhbmtoZWl0IGdlaG9sdCBoYXQsIGRhIGthbm4gYXVjaCBudXIgZWluIEtsZXJpIGhlbGZlbi4KRWluZW4gZXh0cmEgU2NodXR6IHZvciBLcmFua2hlaXRlbiBoYWx0ZSBpY2ggYWJlciBuaWNodCBmdWVyIG5vZXRpZywga29lbm50ZQptaXIgYWJlciBlaW5lbiBOUEMgaW4gZGVyIEFydCBkZXIgQmllbmUgb2RlciBOYXZpIGF1cyBkZW0gU2lsYmVybGFuZAp2b3JzdGVsbGVuLCBkZXIga2xlaW5lIFNwaWVsZXIgaW4gTm90IG5hY2ggS2F0em1hbmR1IGZ1ZWhydCB1bmQgZG9ydCBhYnNldHp0LAp6dXJ1ZWNrIGtvZW5uZW4gc2llIGphIHNlbGJzdCBzdWNoZW4uCgplaW4gd2VubiBhdWNoIHNlbHRlbmVyIGFrdGl2ZXIgQ2ljaWVyb25lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMjogSGVpbGVyIGZ1ZXIgQW5mYWVuZ2VyPyAoQXJrLCAyOC4gU2VwIDIwMDYsIDIwOjQxOjQ4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTU5NDUwMTg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTIxOTE4MQpIYXQgZXIgaGFsdCBQZWNoLCBkYXNzIGljaCBkYXMgbmljaHQgbWl0IGlobSBpbiBWZXJiaW5kdW5nIGJyaW5nZSA6LSkKRGllIEx1c2NoZSEKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogSGVpbGVyIGZ1ZXIgQW5mYWVuZ2VyPyAoVmFuaXIsIDI4LiBTZXAgMjAwNiwgMjE6NDE6NDkpOgp+IyEgcm49S2Vzc2EgcnQ9MTE1OTM5MjAzNSByZz1zY2htYXJybgp+IyEgdGlkPTExNTkyMTkxODEKSWNoIGthbm4gS2Vzc2EgbnVyIHZvbGwgenVzdGltbWVuLiBFcyBnZWh0IGhpZXIgbmljaHQgZGFydW0gbm9jaCBlaW5lbiBIZWlsZXIKYXVmenVzdGVsbGVuLCBzb25kZXJuIGRlbiBBbmZuZ2VybiBlaW5lbiBhbmdlbmVobWVuIFN0YXJ0IHp1IGJlcmVpdGVuLiBEYXp1CmdlaHJ0LCBkYXNzIGdlcmFkZSBBbmZhZW5nZXJuICh3aXIgcmVkZW4gdm9uIGx2MS0yKSBIaWxmZW4gZ2VnZWJlbiB3ZXJkZW4sIGRpZQplcyBpbSAnbm9ybWFsZW4nIEJldHJpZWIgbmljaHQgZ2lidC4gV2VyIHNpY2ggaGllcmhlciB0cmF1dCwgZGVtIHNvbGx0ZSBlaW4KYW5nZW5laG1lciBTdGFydCBiZXJlaXRldCB3ZXJkZW4uIEZ1ZXIgZGllIEF1c3Ryb2NrbnVuZyBlaW5lcyBTY2hudXBmZW5zIGRhbm4KbmUgaGFsYmUgU3R1bmRlIGlyZ2VuZHdvaGluIHp1IGxhdWZlbiB2ZXJ3aXJydCB1bmQgbmVydnQgbmljaHQgbnVyIGRlbgpDaWNlcm9uZS4gV2lyIHNvbGx0ZW4gZGFzIFdvcnQgJ1JlaXp1ZWJlcmZsdXR1bmcnIGltIFp1c2FtbWVuaGFuZyBtaXQgZGVtCkVpbnN0aWVnIGluIGVpbiBtdWQgZXJuc3QgbmVobWVuLiBJY2ggZ2xhdWJlIGhldXRlIGtlbm50IG5pZW1hbmQgbWVociByZWluZQpUZXh0YWR2ZW50dXJlcy4KClVtcyBrdXJ6IHp1IGZhc3NlbjogSWNoIGJpbiBmdWVyIGRlbiBFSy4KClZhbmlyIGFwIE5pYWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogSGVpbGVyIGZ1ZXIgQW5mYWVuZ2VyPyAoQXJrLCAyOC4gU2VwIDIwMDYsIDIxOjQ0OjAzKToKfiMhIHJuPVZhbmlyIHJ0PTExNTk0NzI1MDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5MjE5MTgxCkRlciBsZXR6dGUgU2F0eiBlbnRsYXJ2dCBEaWNoLCBEdSBoYWV1dGVzdCBEaWNoIHNvenVzYWdlbiBzZWxic3QgdW5kIHplaWdzdApEZWluIGhhZXNzbGljaGVzIHNjaHdhcnplcyBXb2xmc2ZlbGwuIERpZSBKYWdkIGlzdCBlcm9lZmZuZXQgOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IEhlaWxlciBmdWVyIEFuZmFlbmdlcj8gKEFuYXRvbCwgMjguIFNlcCAyMDA2LCAyMTo0NTo0MSk6Cn4jISBybj1BcmsgcnQ9MTE1OTQ3MjY0MyByZz1zY2htYXJybgp+IyEgdGlkPTExNTkyMTkxODEKIlJlaXp1ZWJlcmZsdXR1bmciPyBBY2gga29tbSwgZWluIHBhYXIgS2FuYWVsZSBtZWhyIGFuLCBkYSAKZ2VodCBub2NoIHdhcyBmdWVyIHVuc2VyZSBBbmZhZW5nZXIhIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVybGF1YnN2ZXJ0cmV0dW5nIChab29rLCAgMS4gT2t0IDIwMDYsIDE5OjE3OjM1KToKfiMhIHJuPVpvb2sgcnQ9MTE1OTcyMzAyMyByZz1wb2xpemVpLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTU5NzIzMDIzCkJlZGVua3QsIGRhc3MgYXVjaCBkaWVzbWFsIHdpZWRlciBlaW4gZ3Jvc3NlciBEcnVjayBhdWYgbWlyIGxhc3RldCwgaWNoIG11c3MKRXJmb2xnZSB2b3J3ZWlzZW4hIFpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVybGF1YnN2ZXJ0cmV0dW5nIChaZXNzdHJhLCAgMS4gT2t0IDIwMDYsIDIwOjA1OjQ5KToKfiMhIHJuPVpvb2sgcnQ9MTE1OTcyMzA1NSByZz1zY2htYXJybgp+IyEgdGlkPTExNTk3MjMwMjMKRXJ3ZWl0ZXIgZG9jaCBlaW5mYWNoIGZsZXhpYmVsIGRlbiBLYXRhbG9nIGFuIFN0cmFmdGF0YmVzdGFlbmRlbi4uLiA7LSkKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVXJsYXVic3ZlcnRyZXR1bmcgKEtlbGx5YnVuZHksICAxLiBPa3QgMjAwNiwgMjA6MjI6NDApOgp+IyEgcm49WmVzc3RyYSBydD0xMTU5NzI1OTQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTcyMzAyMwpTbyB3aWUgZGFzIEFuc3ByZWNoZW4gZGVzIFNoZXJpZmZzIHZvciB3YWVocmVuZCB1bmQgbmFjaCBkZW0gaWRsZW4/ICpHRyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFVybGF1YnN2ZXJ0cmV0dW5nIChPcmt0b2V0ZXIsICAxLiBPa3QgMjAwNiwgMjA6MjM6MzgpOgp+IyEgcm49WmVzc3RyYSBydD0xMTU5NzI1OTQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE1OTcyMzAyMwpTdGFydGUgZG9jaCBlaW5lbiBHZWhlaW1kaWVuc3QsIGRlciBkYW5uIHZpZWwgd2VpdGVyIGdlaGVuZGUgUmVjaHRlIGhhdC4KRGVyIGRhcmYgZGFubiBmb2x0ZXJuLCB2ZXJ6ZWlodW5nIEluZm9ybWF0aW9uZW4gZ2V3aW5uZW4sIHVuZCB3ZW5uIGRhbm4gZG9jaAptYWwgZWluIFVuc2NodWxkaWdlciBkYWJlaSB3YXIuLi4gdmVyZ2lzcyBuaWNodCBkYWZ1ZXIgenUgc29yZ2VuLCBkYXNzIGRlaW5lClNjaGVyZ2VuIGF1Y2ggaW4gc28gZWluZW0gRmFsbCBuaWNodCBhbmdla2xhZ3Qgd2VyZGVuIGtvZW5uZW4uCkpldHp0IG5vY2ggZmx1Z3MgZGllIEZvbHRlcmdlc3RhZW5kbmlzc2UsIHVwcywgc29ycnksIHNjaG9uIHdpZWRlciBpc3QgbWlyIGRpZQpadW5nZSBhdXNnZXJ1dHNjaHQsIGFsc28gZmx1Z3MgZGllIGdld29ubmVuIEluZm9ybWF0aW9uZW4gaW4gZWluZW0KU2NobmVsbGdlcmljaHRzdmVyZmFocmVuIGVpbmdlc2V0enQgdW5kIGRhcyB1cnRlaWwga29tbXQgYmVzdGltbXQuCgpPcmtULgoKUFMgQWVobmxpY2hrZWl0ZW4gbWl0IHJlYWwgZXhpc3RpZXJlbmRlbiAocmVjaHRzPylzdGFhdGVuIHNpbmQgcmVpbiB6dWZhZWxsaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBVcmxhdWJzdmVydHJldHVuZyAoS2VsbHlidW5keSwgIDEuIE9rdCAyMDA2LCAyMDoyNDozMCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE1OTcyNzAxOCByZz1zY2htYXJybgp+IyEgdGlkPTExNTk3MjMwMjMKWnVtIFF1ZXN0ZW4gdmVyZG9ubmVybiBpc3QgZG9jaCB3b2hsIEZvbHRlciBnZW51ZyA6UAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVXJsYXVic3ZlcnRyZXR1bmcgKFpvb2ssICAxLiBPa3QgMjAwNiwgMjA6MjU6MzIpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNTk3MjcwMTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5NzIzMDIzCkRpZSBCdWNoc3RhYmVua29tYmluYXRpb24gIk9ya1QiIGJyaW5ndCBtaWNoIGphIGluIGRlbSBadXNhbW1lbmhhbmcgYXVmCklkZWVuLi4uLiAKClouCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBVcmxhdWJzdmVydHJldHVuZyAoTWFoYXJldCwgIDEuIE9rdCAyMDA2LCAyMDoyOToxOSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE1OTcyNzAxOCByZz1zY2htYXJybgp+IyEgdGlkPTExNTk3MjMwMjMKV2FydW0gc28ga29tcGxpemllcnQ/ICBab29rIGJyYXVjaHQgc2ljaCBkb2NoIG51biB3aXJrbGljaCBuaWNodCBiZW11ZWhlbiwKV2lsbGt1ZXIgenUgdmVyc2NobGVpZXJuLiAgRXIgaXN0IHNjaGxpZXNzbGljaCBHb3R0IHVuZCBkYW1pdCBub2NoIGVyemlnZXIgYWxzCmFsbGUgYW5kZXJlbiBFcnptYWdpZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgZGllIE1pbGxpb25zdGUgKEFsYm9pbiwgIDQuIE9rdCAyMDA2LCAxNDozMDoxMik6ClJvZG5leSBydWZ0OiBXaWNodCBpY2ggaGVsZmUgZGlyCltUb2Q6TGFyc10gRWluIEZ1Y2hzIGhhdCBnZXJhZGUgUm9kbmV5IHVtZ2VicmFjaHQuCltUb2Q6RWluIEZ1Y2hzXSBJY2ggaGFiJyBoZXV0JyBrZWluZSBHYW5zIGdlc3RvaGxlbiwgbXVzc3RlIG1pciBudXIgUm9kbmV5CltUb2Q6RWluIEZ1Y2hzXSBob2xlbi4KCmFsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBRdWVzdGxpc3RlIChDaGFnYWxsLCAgNi4gT2t0IDIwMDYsIDIyOjA0OjI4KToKfiMhIHJuPUtlc3NhIHJ0PTExNjAxNjQ5NzIgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTU5NjQwMDAxClNwaWVsZXIsIHdlbGNoZSBkaWUgUXVlc3QgIk11cmFkaHMgVHVybSIgZ2Vsb2VzdCBoYWJlbiwgaGFiZW4gYXVjaCAKZm9sZ2VuZGUgYW5kZXJlIFF1ZXN0cyBnZWxvZXN0OiBXYWxkYmF1ZXJuaG9mIHVuZCBEZXIgU2llZ2VscmluZwpkZXMgUHJpZXN0ZXJzLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFF1ZXN0bGlzdGUgKE9ya3RvZXRlciwgIDYuIE9rdCAyMDA2LCAyMjowNTo0MCk6Cn4jISBybj1DaGFnYWxsIHJ0PTExNjAxNjUwNjggcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5NjQwMDAxCkhleSEgVm9yc2ljaHQhIERhIGdpYnRzIGJlc3RpbW10IGVpbiBTYWZ0bGFkZW5wYXRlbnQgZHJhdWYhCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogUXVlc3RsaXN0ZSAoRGFya2xvciwgIDcuIE9rdCAyMDA2LCAxOTo0Nzo1OSk6Cn4jISBybj1DaGFnYWxsIHJ0PTExNjAxNjUwNjggcmc9c2NobWFycm4KfiMhIHRpZD0xMTU5NjQwMDAxCkRhcyB3dWVzc3RlIGljaC4uLgoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmFsZCBtYWwgYXVzcHJvYmllcmVuOiAoTmVkaW1lLCAgNy4gT2t0IDIwMDYsIDIwOjExOjEyKToKS3J1ZnR1ciB0ZWlsdCBEaXIgbWl0OgogIEljaCBoYWJlIGZvbGdlbmRlIEluZm9ybWF0aW9uIHVlYmVyIGVpbmVuIFRyb2xsc3BhbHRlciBlcmhhbHRlbjoKICBNaXQgZGVtIFRyb2xsc3BhbHRlciBrYW5uc3QgRHUgSHVtbmkgaW4gZWluZW4gRHJhY2hlbiB2ZXJ3YW5kZWxuLgoKTmVkaW1lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGltIFZsYW5kIChOZWRpbWUsICA4LiBPa3QgMjAwNiwgMjA6MDI6MTIpOgpEdSBiZWZpbmRlc3QgZGljaCBpbiBlaW5lciBrbGVpbmVuIEhvZWhsZS4gRXMgZ2lidCBoaWVyIHdpcmtsaWNoIG5pY2h0cyB6dQpzZWhlbi4gRHJhdXNzZW4gaW0gT3N0ZW4gc2llaHN0IGR1IGRpZSBCZXJnZSBkZXMgQmVyZ2xhbmRlcy4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG9zdGVuLgpFaW4gQnJlbm5lcnNjaHdlcnQuCkVpbiBDbGFucmluZyBkZXIgT3JrYnJlbm5lci4KRWluIEhvbHpzY2hpbGQuCkVpbiBncm9iZXIgUGxhdHRlbnBhbnplci4KRWluIGJyZWl0ZXMgS2V0dGVuYmFuZC4KRWluIGt1emVyIFVtaGFuZy4KRWluIGtudWRkZWxpZ2VzIEtyeWxhaW9zc2NoYWYgbmFtZW5zIFNjaG51ZmZlbC4KVHV0c3p0IGRlciBCbHV0ZGFlbW9uLgpFaW4gS29tbWFuZGV1ciBkZXIgT3JrYnJlbm5lci4KCnVudCBob2VobGUKRGllIEhvZWhsZSBpc3Qgd2lya2xpY2ggbGFuZ3dlaWxpZy4KdW50IHdhZW5kZQpEdSBrYW5uc3QgaGllciBrZWluZSBXYW5kIGVudGRlY2tlbi4KdW50IGRlY2tlClVlYmVyIERpciBzaWVoc3QgRHUgZGVuIGZyZWllbiBIaW1tZWwuLi5rZWluZSBEZWNrZSB3ZWl0IHVuZCBicmVpdC4KdW50IGJvZGVuCkRlciBCb2RlbiBpc3Qgc2VociB0cm9ja2VuIGhpZXIgaW0gQmVyZ2xhbmQuIER1IGthbm5zdCBuaWNodHMgYmVzb25kZXJlcwplcmtlbm5lbi4gRXIgc2llaHQgYXVzIHdpZSBsZWVyZ2VmZWd0LgpEZWluZSBIYWFyZSB3ZWhlbiBpbSBXaW5kLgoKTm9jaCBGcmFnZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCBpbSBWbGFuZCAoR25vbWUsICA4LiBPa3QgMjAwNiwgMjM6MDg6MzUpOgp+IyEgcm49TmVkaW1lIHJ0PTExNjAzMzA1MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTYwMzMwNTMyCmphLgpkdSBzY2hhdXN0IGRpciBlY2h0IGRldGFpbHMgaW0gdmxhbmQgYW4/IDspCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVsaWNoIGltIFZsYW5kIChDcm9mdCwgIDguIE9rdCAyMDA2LCAyMzoxNDoxNyk6Cn4jISBybj1Hbm9tZSBydD0xMTYwMzQxNzE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2MDMzMDUzMgpTb2xhbmcgc2llIG5pY2h0IGRhbWl0IGluIGRlciBVbnRlcndlbHQgYW5mYWVuZ3QgLi4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVzcGllbGVyLVR1dG9yaWFsIChab29rLCAgOS4gT2t0IDIwMDYsIDE2OjA3OjI0KToKfiMhIHJuPUtudXJwcyBydD0xMTYwNDAxNzkxIHJnPWQuYW5mYWVuZ2VyCn4jISB0aWQ9MTE2MDM3OTYxMwpab29rIHNjaGF1dCBSdW1hdGEgbWl0IGdyb3NzZW4gQXVnZW4gZXJ3YXJ0dW5nc3ZvbGwgYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXVzcGllbGVyLVR1dG9yaWFsIChLbnVycHMsICA5LiBPa3QgMjAwNiwgMTY6MTE6MjYpOgp+IyEgcm49Qm9pbmcgcnQ9MTE2MDQwMzAwOCByZz1kLmFuZmFlbmdlcgp+IyEgdGlkPTExNjAzNzk2MTMKSmV0enQgaGFiZW4gd2lyIGRvY2ggZGllIFRydmVzIGFscyBJZGlvdGVuZmlsdGVyLi4uICpkdWNrKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2FmZmVuYmxvY2sgJiBDby4gKEFuYXRvbCwgIDkuIE9rdCAyMDA2LCAxODoyOToxNSk6Cn4jISBvbj1BbmF0b2wgb3Q9MTE2MDQxMTM0OSBvZz1naWxkZW4ua2FlbXBmZXIKfiMhIHJuPUVsam8gcnQ9MTE2MDQxMTIxMyByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMTYwMzM1Mzk4CkF1ZiBqZWRlbiBGYWxsIGhhdCBlcyBkb2NoIGtlaW5lciB2b24gZXVjaCBub2V0aWcsIGRpZSAiUmVhbHRpYWV0IgpmdWVyIGlyZ2VuZGVpbmUgQXJndW1lbnRhdGlvbiBoZXJhbnp1emllaGVuLCBuZWluPyBXYWVyZSBqYSBhdWNoIGFsYmVybiwKYmVpIGFsbCBkZW0gR2VzY2hpbXBmZSB1ZWJlciBkaWUgYWxsZXNlcmtsYWVyZW5kZSBNQUdJRS4uLiA6KQoKQWIgbmFjaCBTY2htYXJybi4uLgpBbmF0b2wKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBHcmV0Y2hlbmZyYWdlIChaZXNzdHJhLCAxMC4gT2t0IDIwMDYsIDE1OjQ5OjIzKToKfiMhIHJuPVpvb2sgcnQ9MTE2MDQ4ODA4OSByZz13d3cKfiMhIHRpZD0xMTYwNDM4NDcyCldhcyBtaWNoIGlyZ2VuZHdpZSB3aWVkZXIgYW4gZGllIExhY2hzc3Blcm1hLUROQSBlcmlubmVydC4gOy0pClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBHcmV0Y2hlbmZyYWdlIChHbG9pbnNvbiwgMTAuIE9rdCAyMDA2LCAxNTo1MzozNSk6Cn4jISBybj1aZXNzdHJhIHJ0PTExNjA0ODgxNjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTYwNDM4NDcyCkhhc3QgZHUgYXVjaCBlaW5lbiBJZ29yIGZ1ZXIgc29sY2hlIFNwZXJtYWtyZWJzZXhwZXJpbWVudGU/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEdyZXRjaGVuZnJhZ2UgKEdub21lLCAxMC4gT2t0IDIwMDYsIDIzOjI1OjEzKToKfiMhIHJuPURhcmtsb3IgcnQ9MTE2MDUwNjc3NyByZz13d3cKfiMhIHRpZD0xMTYwNDM4NDcyCm11c3N0IGR1IHdpcmtsaWNoIHNvIHNjcm9sbGVuPyBtZWluZSBndWV0ZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBzaW5kIEVyem1hZ2llcj8gKEVubm94LCAxMy4gT2t0IDIwMDYsIDAwOjUzOjU0KToKRGFtaWFuYSBkZW5rdCAgIC4gbyBPIChFcnptYWdpZXIgc2luZCBiZXNzZXJlIG1hZ2llcikKQXJrIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpEYW1pYW5hIGxhZWNoZWx0LgoKRW5ub3gsIGFlaG10LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW5mYWVuZ2VybXVuZCAuLi4gKEFyaywgMTMuIE9rdCAyMDA2LCAwMDo1NDoxMCk6ClggZGVua3QgICAuIG8gTyAoRXJ6bWFnaWVyIHNpbmQgYmVzc2VyZSBtYWdpZXIpCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcyBzaW5kIEVyem1hZ2llcj8gKEdsb2luc29uLCAxMy4gT2t0IDIwMDYsIDE1OjIyOjM3KToKfiMhIHJuPUVubm94IHJ0PTExNjA2OTM2MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTYwNjkzNjM0CkRpZSBzdGlua2VuIG51ciBpbnRlbnNpdmVyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2FzIHNpbmQgRXJ6bWFnaWVyPyAoRGFya2xvciwgMTMuIE9rdCAyMDA2LCAxODowNTo0OSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTYwNzQ1NzU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2MDY5MzYzNApVbmQga2xpbmdlbiBtZXRhbGxpZyBkdW1wZj8/CgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZQIGltIFR1dG9yaWFsIChDaGFnYWxsLCAxMy4gT2t0IDIwMDYsIDIxOjU5OjI5KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTYwNzY5NDg3IHJnPWQuYW5mYWVuZ2VyCn4jISB0aWQ9MTE2MDc2OTM5MQo6cmVpY2h0IE9ya3Ryb2V0ZSBlaW5lIFR1ZXRlIHZvbGwgTWl0bGVpZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBGUCBpbSBUdXRvcmlhbCAoS2Vzc2EsIDEzLiBPa3QgMjAwNiwgMjI6Mjk6MjQpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNjA3Njk5NDEgcmc9ZC5hbmZhZW5nZXIKfiMhIHRpZD0xMTYwNzY5MzkxCkZvcnNjaGVycHVua3RlIGZ1ZXIgZGFzIExlc2VuIGRlciBIaWxmZXNlaXRlbiBmaW5kIGljaCBhYmVyIG5lIGdlaWxlIElkZWUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZQIGltIFR1dG9yaWFsIChSaW5nb3IsIDEzLiBPa3QgMjAwNiwgMjI6MzA6MDgpOgp+IyEgcm49S2Vzc2EgcnQ9MTE2MDc3MTM2NCByZz1zY2htYXJybgp+IyEgdGlkPTExNjA3NjkzOTEKLi4uIGFiZXIgbnVyLCB3ZW5uIG1hbiBzaWUgYXVjaCB2ZXJzdGFuZGVuIGhhdC4gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBGUCBpbSBUdXRvcmlhbCAoTWFoYXJldCwgMTMuIE9rdCAyMDA2LCAyMjozMDozMCk6Cn4jISBybj1SaW5nb3IgcnQ9MTE2MDc3MTQwOCByZz1zY2htYXJybgp+IyEgdGlkPTExNjA3NjkzOTEKSWNoIGJpbiBmdWVyIEZQcyBpbiBkZXIgTVBBLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEZQIGltIFR1dG9yaWFsIChBbGJvaW4sIDEzLiBPa3QgMjAwNiwgMjI6MzI6MTQpOgp+IyEgcm49TWFoYXJldCBydD0xMTYwNzcxNDMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2MDc2OTM5MQpJY2ggYmluIGZ1ZXIgRlAncyBpbiBNZWdhc2NobWFycm4gOy0pCmFsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBGUCBpbSBUdXRvcmlhbCAoQXJrLCAxMy4gT2t0IDIwMDYsIDIyOjM1OjQwKToKfiMhIHJuPUFsYm9pbiBydD0xMTYwNzcxNTM0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2MDc2OTM5MQpBbHNvIGljaCB3YWVyZSBmdWVyIGVpbmUgV2lzc2VucyJxdWVzdCIgYXVmIGRlbiBXZWJzZWl0ZW4gLi4uIG9obmUgS0wgb2RlcgpMb2VzdW5nZW4gbmF0dWVybGljaCwgdmllbGxlaWNodCBzbyBlaW4gTXVsdGlwbGUgQ2hvaWNlIFRlc3QgOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRlAgaW0gVHV0b3JpYWwgKEtlc3NhLCAxMy4gT2t0IDIwMDYsIDIyOjM4OjIzKToKfiMhIHJuPUFyayBydD0xMTYwNzcxNzQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2MDc2OTM5MQpTb3dhcyBnYWIgZXMgZWluZSBXZWlsZSBhdWYgLXNjaHdpaXosIGRhcyB3YXIgaW1tZXIgc2VociB3aXR6aWcuIFNjaHJlaWJ0IGRlbgplaW5lcj8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBGUCBpbSBUdXRvcmlhbCAoQXJrLCAxMy4gT2t0IDIwMDYsIDIyOjQwOjQ3KToKfiMhIHJuPUtlc3NhIHJ0PTExNjA3NzE5MDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTYwNzY5MzkxCjpzY2hhdXQgbWl0IFNjaGF1ZGVybiBhdWYgZGllc2UgRWJlbmUuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQ2hhb3RlbiB3ZXJkZW4gb2ZmZW5iYXIgaW1tZXIgbm9jaCB1bnRlcnNjaGFldHp0IChOZWRpbWUsIDEzLiBPa3QgMjAwNiwgMjM6NDc6MTMpOgpEaWUgQW1laXNlIHd1c2VsdCBnZXNjaGFlZnRpZyB6d2lzY2hlbiBkZW4gR3Jhc2hhbG1lbiBoaW4gdW5kIGhlci4gQXVjaCB3ZW5uCnNpZSBtaXQgaWhyZXIgS29lcnBlcmdyb2Vzc2Ugdm9uIDEwIGNtIGZ1ZXIgZWluZSBBbWVpc2UgZXR3YXMgZ3Jvc3MgZ2VyYXRlbgppc3QsIHN0ZWxsdCBzaWUgZnVlciBEaWNoIHNpY2hlcmxpY2gga2VpbmUgQmVkcm9odW5nIGRhci4gRHUga2FubnN0IGphIG1hbAp2ZXJzdWNoZW4sIERpY2ggbWl0IGlociBhbnp1bGVnZW4uClN5bnRheDogJ3RvZXRlIGFtZWlzZScKU2llOiAxMDAlCnVudCBiZWRyb2h1bmcKU2VsYnN0IGZ1ZXIgRGljaCBzb2xsdGUgZGllIEFtZWlzZSB1bmdlZmFlaHJsaWNoIHNlaW4uCgpJY2ggZ2xhdWIgYXVjaC4KTmVkaW1lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbmZlaW4uIChab29rLCAxNy4gT2t0IDIwMDYsIDIyOjE2OjQ0KToKT2ssIGVzIGlzdCB3aXJrbGljaCBuaWNodCBkaWUgZmVpbmUgQXJ0LCBhYmVyIGVzIGlzdCBkb2NoIHdpcmtsaWNoIGx1c3RpZzoKClNtZWFnb2wgaXN0IG1pdCBTaWNoZXJoZWl0IGRlciBlcnN0ZSBLYWVtcGZlciwgZGVyIG1pdCBlaW5lbSBaYXViZXJidWNoIAprYWVtcGZ0ZSEgCgpab29rIHBydXN0ZXQgaW1tZXIgbm9jaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbmZlaW4uIChTbWVhZ29sLCAxNy4gT2t0IDIwMDYsIDIzOjM1OjE5KToKfiMhIHJuPVpvb2sgcnQ9MTE2MTExNjIwNCByZz1zY2htYXJybgp+IyEgdGlkPTExNjExMTYyMDQKPz8/CnJhZmYgaWNoIG5pY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVW5mZWluLiAoTWlyaWwsIDE3LiBPa3QgMjAwNiwgMjM6MzU6NDMpOgp+IyEgcm49U21lYWdvbCBydD0xMTYxMTIwOTE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2MTExNjIwNApEYXMgZ2xhdWIgaWNoIGdlcm4gOykgWm9vayBoYXQgYWJlciB2ZXJzcHJvY2hlbiwgZXMgenUgZXJrbGFlcmVuLgoKTWlyaWwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFVuZmVpbi4gKFNtZWFnb2wsIDE3LiBPa3QgMjAwNiwgMjM6MzY6NDMpOgp+IyEgcm49TWlyaWwgcnQ9MTE2MTEyMDk0MyByZz1zY2htYXJybgp+IyEgdGlkPTExNjExMTYyMDQKbmFndXQgaWNoIGJpbiBnZXNwYW5udCA6KQpHdXRlIE5hY2h0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXVlbGxhYmZ1aHIsIFNwZWljaGVyZ3JlbnplLi4uIChSb25kYSwgMTcuIE9rdCAyMDA2LCAyMzozNzozMSk6Cn4jISBybj1aZXNzdHJhIHJ0PTExNjExMTkyODggcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTYxMTE5Mjg4CkF1IEtpbmRlcnMuLi4gbnVuIGZhbmd0IElociBhdWNoIG5vY2ggbWl0IEJ1bGxzaGl0IEJpbmdvIGltIE11ZCBhbi4gV2FydW0KbmVubnQgSWhyIGRhcyAiSW5zdGFiaWxpdGFldGVuIiB1bmQgc2FndCBuaWNodCBlaW5mYWNoICJDcmFzaCIgZGF6dT8gOy0pCgpSb25kYSAqZGFtYWxzIHdhcmVuIEluc3RhYmlsaXRhZXRlbiBub2NoIGVjaHRlIENSQVNIUy4qCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE11ZWxsYWJmdWhyLCBTcGVpY2hlcmdyZW56ZS4uLiAoQXJrLCAxNy4gT2t0IDIwMDYsIDIzOjUxOjI5KToKfiMhIHJuPVJvbmRhIHJ0PTExNjExMjEwNTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTYxMTE5Mjg4Ck5lbmUsIHZvcmhlciB3ZXJkZW4gZXJzdCBFTSBTaGVsbHMgaW5zdGFiaWwgLi4uIGFscyBCZXRyb2ZmZW5lciBlcmlubmVyZSBpY2gKbWljaCBudXIgenUgdW5nZXJuIGRyYW4gLi4uIHVuZCBiZXNvbmRlcnMsIHdlaWwgbWFuIGRhbm4gc29mb3J0IGRlciBTY2h1bGRpZ2UKaXN0IDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIdW1hbiBzcGVjaWVzIG1heSBzcGxpdCAoQmFtYnVsa28sIDE4LiBPa3QgMjAwNiwgMTI6NTU6MDIpOgp+IyEgcm49S251cnBzIHJ0PTExNjExMjU2NDAgcmc9d3d3Cn4jISB0aWQ9MTE2MTEyNTY0MApJc3QgZGFzIGF1ZiBkZW0gQmlsZCBuaWNodCBBbmdlbGEgTWVya2VsPwoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJcmdlbmR3aWUga2xpbmd0IGRhcyBwbGF1c2liZWwuLi4gKEdub21lLCAyOC4gT2t0IDIwMDYsIDIxOjI1OjQ1KToKfiMhIHJuPVJvbmRhIHJ0PTExNjE5NzgxOTMgcmc9c2NobWFycm4ubmV0ZGlnZXN0Cn4jISB0aWQ9MTE2MTk3ODE5MwoiZ2xlaWNoIGJsZWliZW4iIC4uLiAiYXVmIGVpbmFuZGVyIHp1IGZhaHJlbiIgLi4uICJFcnN0cmVjaHQiCgpFcyBicmVubnQgaW4gZGVuIEF1Z2VuLiBFcyBicmVubnQgd2lya2xpY2guClVuZCBoZXV0ZSBnZWxlc2VuIGFuIGVpbmVtIEltYmlzczogIlRlaWcgV2FyZW4iLgpTZWl0IGRlciAiUmVmb3JtIiBmdWVobGVuIHNpY2ggaXJnZW5kd2llIGFsbGUgTGV1dGUgZ2Vub2V0aWd0LAp2b3JzaWNodHNoYWxiZXIgamVkZXMgendlaXRlIHp1c2FtbWVuZ2VzZXR6dGUgV29ydCBhdXNlaW5hbmRlcnp1c2NocmVpYmVuLgoKRGEgd2lsbCBpY2ggbmF0dWVybGljaCBuaWNodCBoaW50ZW5hbnN0ZWhlbiB1bmQgc2FnZSBudXI6CiJBcm1lcyBEZXV0c2NoIExhbmQuIgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSXJnZW5kd2llIGtsaW5ndCBkYXMgcGxhdXNpYmVsLi4uIChab29rLCAyOS4gT2t0IDIwMDYsIDEyOjA5OjQ0KToKfiMhIHJuPUdub21lIHJ0PTExNjIwNjM1NDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTYxOTc4MTkzCndhcnVtaGFiaWNobnVuZWluZGVqYXZ1ZT8KegoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSXJnZW5kd2llIGtsaW5ndCBkYXMgcGxhdXNpYmVsLi4uIChNdWFkaWIsIDI5LiBPa3QgMjAwNiwgMTI6MTE6NTkpOgp+IyEgcm49Wm9vayBydD0xMTYyMTIwMTg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2MTk3ODE5MwpzYWNrcmVpc2ZyYWdlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVHNzc3Nzc3Nzc3Nzcy4uLi4gaWNoIGZhc3MuIGVzLiBuaWNodCEgKFpvb2ssICAxLiBOb3YgMjAwNiwgMjI6MzI6MjMpOgpEdSB0ZWlsc3QgWFhYIG1pdDogTnUgbXVzc3RlIGFiZXIgbWEgYXVmIEx2bCAyIGF1ZnN0ZWlnZW4hClhYWCB0ZWlsdCBEaXIgbWl0OiBhY2ggZGFzIG11c3MgbWEgYXVjaCBub2NoIHNlbGJzdCBtYWNoZW4/IG1laW5lIGhlcnJuLApYWFggdGVpbHQgRGlyIG1pdDogd29mdWVyIGhhYmVuIHdpciBoaWVyIGVpZ2VudGxpY2ggZ29ldHRlcj8KCloKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUc3Nzc3Nzc3Nzc3NzLi4uLiBpY2ggZmFzcy4gZXMuIG5pY2h0ISAoS2Vzc2EsICAxLiBOb3YgMjAwNiwgMjI6MzM6MjgpOgp+IyEgcm49Wm9vayBydD0xMTYyNDE2NzQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2MjQxNjc0MwpadW1pbmRlc3Qgd2FlcmUgYmVpIGRlbiBLbGVyaWtlcm4gZWluICdiZXRlIHVtIEVyaG9laHVuZycgYW5nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVHNzc3Nzc3Nzc3Nzcy4uLi4gaWNoIGZhc3MuIGVzLiBuaWNodCEgKE9ya3RvZXRlciwgIDEuIE5vdiAyMDA2LCAyMjo0NjozNik6Cn4jISBybj1LZXNzYSBydD0xMTYyNDE2ODA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2MjQxNjc0MwpOaWNodDogQmV0ZSB1bSBFcmhvZXJ1bmc/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmFjaHRyYWcgenUgSXJnZW5kd2llIGtsaW5ndCBkYXMgcGxhdXNpYmVsLi4uLiAoWm9vaywgIDUuIE5vdiAyMDA2LCAxNDozMjowMyk6ClNvcnJ5IGZ1ZXJzIHgtcG9zdGVuLCBhYmVyIGhpZXIgbm9jaCBlaW4gTmFjaHRyYWcgenUgZWluZW0gVGhyZWFkLCBkZXIKc2Nob20gaW0gQXJjaGl2IGdlbGFuZGV0IGlzdC4KCmh0dHA6Ly9tZy5tdWQuZGUvY2dpLWJpbi9tcGEucGw/VElURUw9cGxhdXNpYmVsJklOSEFMVD0mQVVUT1I9R25vbWUmREFUVU09JkNBVApFR09SWT1zY2htYXJybiZDQVNFPWkmSElUUz0xMAoKT2RlciBrdXJ6OiBodHRwOi8vdGlueXVybC5jb20veXo1ejV5CgoKV2FzIHdpbGwgaWNoIHNhZ2VuPyBBaGphLCBpbiBkZXIgRkFaIGlzdCBlaW4gbmV0dGVyIEFydGlrZWwgdWViZXIgZGVuClNwcmFjaC1EaW5nZW5zIEJhc3RpYW4gU2ljazoKCi0tCkRlciBad2llYmVsZmlzY2ggc3Rpbmt0IHZvbSBLb3BmIGhlcgoKVm9uIENsYXVkaXVzIFNlaWRsCgotLQoKaHR0cDovL3Rpbnl1cmwuY29tL3lseWdzZAoKWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFuIG11c3Mgc2llIGltbWVyIG1hbCB3aWVkZXIgc2NocmVpYmVuLi4uLiAoWm9vaywgMTAuIE5vdiAyMDA2LCAxMjoyNzoyMyk6CltUb2Q6TGFyc10gRWluIGRpY2tlciBad2VyZ2Vud2FlY2h0ZXIgaGF0IGdlcmFkZSBWdWwgdW1nZWJyYWNodC4KW1RvZDpFaW4gZGlja2VyIFp3ZXJnZW53YWVjaHRlcl0gSEFSSEFSSEFSISBEZXIgQW5ncmlmZiByb2xsdCB3ZWl0ZXIhCkVpbiBCZWlmYWxsc3N0dXJtIGJyYW5kZXQgaW0gRGlhbW9uZHBhcmsgYXVmLiBXYXMgZGEgd29obCB3aWVkZXIgbG9zIGlzdD8KCgpaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFuIG11c3Mgc2llIGltbWVyIG1hbCB3aWVkZXIgc2NocmVpYmVuLi4uLiAoQW1hcnlsbGlzLCAxMC4gTm92IDIwMDYsIDIwOjIxOjI5KToKfiMhIHJuPVpvb2sgcnQ9MTE2MzE1ODA0MyByZz1zY2htYXJybgp+IyEgdGlkPTExNjMxNTgwNDMKW3hdIEdPVENIQSEKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFJlY2hudW5nZW4uLi4gKEhpZ2hsYW5kZXIsIDE3LiBOb3YgMjAwNiwgMDk6MjA6MzEpOgp+IyEgcm49R25vbWUgcnQ9MTE2MzcyNTE4NyByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMTYzNjkzODI5CkRhcyBpc3QgZG9jaCBkaWUgQXJndW1lbnRhdGlvbiwgZGllIGRpZSBNQUZJQSAoTXVzaWMgYW5kIEZpbG0KSW5kdXN0cnkgQXNzb2NpYXRpb24pIHVuZCBpaHJlIHZlcndhbmR0ZW4gT3JnYW5pc2F0aW9uZW4gaW1tZXIgYnJpbmdlbiwKb2Rlcj8gQWxzbywgaW0gdWViZXJ0cmFnZW5lbiBTaW5uLgoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPdXQgb2YgQ29udGV4dCAoR2xvaW5zb24sIDE3LiBOb3YgMjAwNiwgMTQ6MDY6NTQpOgpbKmljZXdhcnM6SGlnaGxhbmRlcl0gRGVpbmUgVHJhbnNlbiBrb21tZW4sIGJ5IHRoZSB3YXkKWyppY2V3YXJzOkFueXNpZG9yYV0gbWVpbmU/ClsqaWNld2FyczpIaWdobGFuZGVyXSBKYS4KWyppY2V3YXJzOkFueXNpZG9yYV0gc3VwaSwgZGFua2UKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFN0cnV2dWViZXJmYWxsIChDaGFnYWxsLCAxNy4gTm92IDIwMDYsIDIxOjUyOjE1KToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTE2Mzc5MjIwMSByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMTYzNzExMzY5CkljaCBtb2VjaHRlIHp1Z2VybiBzZWhlbiwgd2llIER1IGRpZSBaYXViaWdpbGRlIGF1c3JhZXVjaGVyc3QsIEtlbGx5LgoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFN0cnV2dWViZXJmYWxsIChLZWxseWJ1bmR5LCAxOC4gTm92IDIwMDYsIDE5OjQ0OjAxKToKfiMhIHJuPUNoYWdhbGwgcnQ9MTE2Mzc5NjczNSByZz1zY2htYXJybgp+IyEgdGlkPTExNjM3MTEzNjkKRGEgZGllIGdpbGRlbmRvZWRlbCB1bnN0ZXJibGljaCBzaW5kLCB3aXJkcyBzY2h3aWVyaWcsIGphLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS29uemVydGllcnRlIEFrdGlvbj8gKE9ya3RvZXRlciwgMTguIE5vdiAyMDA2LCAyMDo0NDozOCk6CldvbGxlbiBkaWUgZWluZW4gTlBDIGR1cmNoIEFsa3ZlcmdpZnR1bmcga2lsbGVuPwoKW0FuZmFlbmdlcjpEZXIgQmV0dGxlcl0gSGFiIHZpZWxlbiBEYW5rIGZ1ZXIgZGVuIEtyYWV1dGVyc2NobmFwcywgWmVzc3RyYS4KW0FuZmFlbmdlcjpLbmFyel0gb2gsIGZyZWllciBzY2huYXBzIGZ1ZXIgYWxsZSA6KQpbQW5mYWVuZ2VyOkRlciBCZXR0bGVyXSBIYWIgdmllbGVuIERhbmsgZnVlciBkZW4gS3JhZXV0ZXJzY2huYXBzLCBTaW50aG9yYXMuCltBbmZhZW5nZXI6RGVyIEJldHRsZXJdIEhhYiB2aWVsZW4gRGFuayBmdWVyIGRlbiBLcmFldXRlcnNjaG5hcHMsIEhhYmVuaWNodHMuCltBbmZhZW5nZXI6RGVyIEJldHRsZXJdIEhhYiB2aWVsZW4gRGFuayBmdWVyIGRlbiBLcmFldXRlcnNjaG5hcHMsIEFub3Jpcy4KW0FuZmFlbmdlcjpBcmtdIGhvZXIgYXVmIHp1IHNhdWZlbiwgYmF1IGRpciBlaW4gYmV0dGxlcmhhdXMKW0FuZmFlbmdlcjpaZXNzdHJhIGdyaW5zdC5dCltBbmZhZW5nZXI6RGVyIEJldHRsZXJdIEhhYiB2aWVsZW4gRGFuayBmdWVyIGRlbiBLcmFldXRlcnNjaG5hcHMsIE1lY2t5LgpbQW5mYWVuZ2VyOkRlciBCZXR0bGVyXSBIYWIgdmllbGVuIERhbmsgZnVlciBkZW4gS3JhZXV0ZXJzY2huYXBzLCBLbmFyei4KCk9ya1QsIGVudHNldHp0IHVuZCBkaWUgTGlnZSBnZWdlbiBkZW4gQWxrb2hvbG1pc3NicmF1Y2ggZWluc2NoYWx0ZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKaGFsbG8sIGRpZSBiaWVuZSEgamEgYWJlciBoYWxsbyEgKEdub21lLCAyMC4gTm92IDIwMDYsIDEzOjU1OjQ4KToKRWluZSBidWxsaWdlIE1hbnRpc2JpZW5lLgpFaW4gWndlcmdlbnByaWVzdGVyLgpFaW4gSGFuZGJ1Y2ggZnVlciBBbmZhZW5nZXIuCkVpbmUgWmVpdHVuZy4KRGVyIFp3ZXJnZW5wcmllc3RlciBzYWd0OiBIYWxsbywgZGllIEJpZW5lISBEdSBiaXN0IHNpY2hlciBuZXUgaGllci4gV2VubiBEdQpEZXIgWndlcmdlbnByaWVzdGVyIHNhZ3Q6IEZyYWdlbiB6dXIgWndlcmdlbnN0YWR0IGhhc3QsIGRhbm4ga2FubnN0IER1IHNpZSBtaXIKRGVyIFp3ZXJnZW5wcmllc3RlciBzYWd0OiBzdGVsbGVuLCBpbmRlbSBEdSBkZW4gQmVmZWhsICdmcmFnIHByaWVzdGVyIG5hY2gKRGVyIFp3ZXJnZW5wcmllc3RlciBzYWd0OiA8YmVncmlmZj4nIGJlbnV0enQuIEljaCB3dWVuc2NoZSBEaXIgdmllbCBTcGFzcyBpbgpEZXIgWndlcmdlbnByaWVzdGVyIHNhZ3Q6IGRpZXNlciBXZWx0ISAKCjpraWNoZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGhhbGxvLCBkaWUgYmllbmUhIGphIGFiZXIgaGFsbG8hIChab29rLCAyMC4gTm92IDIwMDYsIDE0OjQ4OjE5KToKfiMhIHJuPUdub21lIHJ0PTExNjQwMjczNDggcmc9c2NobWFycm4KfiMhIHRpZD0xMTY0MDI3MzQ4ClNlaHIgZ2V3aXNzZW5oYWZ0LCBkZXIgWndlcmdlbnByaWVzdGVyLgoKWi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaGFsbG8sIGRpZSBiaWVuZSEgamEgYWJlciBoYWxsbyEgKEFyaywgMjAuIE5vdiAyMDA2LCAxNTo1Mzo1MSk6Cn4jISBybj1ab29rIHJ0PTExNjQwMzA0OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTY0MDI3MzQ4CkJldm9yIGRhcyBudW4gemlnbWFsIGFsbGUgSmFocmUgd2llZGVyIGVyc2NoZWludDogSXQncyBhIGZlYXR1cmUgdW5kCndvaGxiZWthbm50LCBzb2dhciBiZWkgbWlyIDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGhhbGxvLCBkaWUgYmllbmUhIGphIGFiZXIgaGFsbG8hIChab29rLCAyMC4gTm92IDIwMDYsIDE2OjI5OjE2KToKfiMhIHJuPUFyayBydD0xMTY0MDM0NDMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2NDAyNzM0OApXYXMgc3ByaWNodCBkYWdlZ2VuLCBzaWNoIGplZGVzIEphaHIgYXVmcyBOZXVlIHVlYmVyIGVpbiBGZWF0dXJlIHp1IApmcmV1ZW4/CgpaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOb2NobWFsIEVzc2VuIC0gTWVybGluLCAxNy4xMS4gKEh1bW5pLCAyMC4gTm92IDIwMDYsIDIyOjExOjEzKToKfiMhIHJuPUh1bW5pIHJ0PTExNjQwNTY5Nzcgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTExNjM3NzIzNjcKTWlyIGZhZWxsdCBnZXJhZGUgYXVmOiBJY2ggaG9mZmUsIGVzIHdhciBqZXR6dCBrZWluZXIgdm9uIEV1Y2ggaW0gQXJyZXN1bQpndWNrZW4gKG1hbCBlYmVuIHp1bSBQdWxzYXIgQm9yZ2lhIHVuZCBkYW5uIGR1cmNoIG5lbiBTYW1wbGVycGxhbmkgZHVyY2hob3BzZW4KaXN0IGVpbiB6aWVtbGljaGVyIFVtd2VnIGZ1ZXIgZWluZW4gbWVybGluLVN0YXRpKS4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOb2NobWFsIEVzc2VuIC0gTWVybGluLCAxNy4xMS4gKFJvbmRhLCAyMC4gTm92IDIwMDYsIDIyOjEyOjIwKToKfiMhIHJuPUh1bW5pIHJ0PTExNjQwNTcwNzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTYzNzcyMzY3ClRqYSwgd2FzIHR1dCBtYW4gbmljaHQgYWxsZXMgZnVlciBlaW5lbiBndXRlbiBTdGF0aXMuLi4KClJvbmRhICpoYXRzIHRyb3R6ZGVtIG5pY2h0IGJpcyB6dW0gTWVybGluIGdlc2NoYWZmdCoKLAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWVyIEhvc3RlciwgbmV1ZSBFcnptYWdpZXJpbiBmdWVyIFJlY2huZXJ3YXJ0dW5nLCAtaG9zdGluZyAoR2xvaW5zb24sIDIwLiBOb3YgMjAwNiwgMjI6MTc6NDMpOgp+IyEgcm49Wm9vayBydD0xMTY0MDU3MTYyIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTY0MDU3MTYyCk5lZWVlZWVlaW4hIFdpZXNvIEtvZWxuPyEgV2llc28gYXVzZ2VyZWNobmV0IEtvZWxuPyEgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWVyIEhvc3RlciwgbmV1ZSBFcnptYWdpZXJpbiBmdWVyIFJlY2huZXJ3YXJ0dW5nLCAtaG9zdGluZyAoUm9uZGEsIDIwLiBOb3YgMjAwNiwgMjI6MTg6MjEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE2NDA1NzQ2MyByZz1zY2htYXJybgp+IyEgdGlkPTExNjQwNTcxNjIKV2FlcmUgRGlyIEJpZWxlZmVsZCBsaWViZXI/CgpSb25kYSBzaW5nICIuLi4gZGFzIGdpYnRzIGRvY2ggZ2FyIG5pY2h0Li4uIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVlciBIb3N0ZXIsIG5ldWUgRXJ6bWFnaWVyaW4gZnVlciBSZWNobmVyd2FydHVuZywgLWhvc3RpbmcgKEFtYXJ5bGxpcywgMjAuIE5vdiAyMDA2LCAyMjoxOTozNSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTY0MDU3NDYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2NDA1NzE2MgpEYW1pdCBLb2VsbiB3ZW5pZ3N0ZW5zIGV0d2FzIHp1IGJpZXRlbiBoYXQsIHdlbm4gc2Nob24gZGVyIEZDIG5pY2h0IG1laHIKYXVmc3RlaWd0IDspCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWVyIEhvc3RlciwgbmV1ZSBFcnptYWdpZXJpbiBmdWVyIFJlY2huZXJ3YXJ0dW5nLCAtaG9zdGluZyAoR2xvaW5zb24sIDIwLiBOb3YgMjAwNiwgMjI6Mzc6MTIpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTExNjQwNTgwOTcgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTExNjQwNTcxNjIKQWgsIHdpciBtZXJnZW4gbWl0IFBLPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV1ZXIgSG9zdGVyLCBuZXVlIEVyem1hZ2llcmluIGZ1ZXIgUmVjaG5lcndhcnR1bmcsIC1ob3N0aW5nIChHbm9tZSwgMjAuIE5vdiAyMDA2LCAyMjo0MDozMyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTE2NDA1ODA5NyByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTE2NDA1NzE2MgphYmVyIG5pY2h0IGF1ZiByZWlzZXIgd2VjaHNlbG4sIGdlbGw/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXVlciBIb3N0ZXIsIG5ldWUgRXJ6bWFnaWVyaW4gZnVlciBSZWNobmVyd2FydHVuZywgLWhvc3RpbmcgKE9ya3RvZXRlciwgMjAuIE5vdiAyMDA2LCAyMjo0NDoxNik6Cn4jISBybj1Hbm9tZSBydD0xMTY0MDU4ODMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2NDA1NzE2MgpOYSwgZGllIGVyc3RlbiBTY2hyaXR0ZSBMUCAtPiBMRCB6dXIgQW5wYXNzdW5nIHNpbmQgZG9jaCBzY2hvbiBsYWVuZ3N0CmdlbGF1ZmVuLi4uIHdpcmQgd2VyZGVuIHNpY2hlciBiYWxkIGFzc2ltaWxpZXJ0IQoKT3JrVCwgUGFyYW5vaWEgdmVyYnJlaXRlbmQuCgooRXJuc3RlIEZyYWdlOiBXYW4gZXJmb2xndCBkZW5uIGRlciBVbXp1Zz8gVW5kIHdpcmQgZGFzIE1HIHNvIGxhbmdlIGRvd24gc2VpbiwKb2RlciB3aXJkIGVzIGF1ZiBlaW5lbSBFcnNhdHpzeXN0ZW0gd2VpdGVyIGxhdWZlbj8gV2lsbCBkb2NoIGluIFJ1aGUgaWRsZW4Ka29lbm5lbikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5ldWVyIEhvc3RlciwgbmV1ZSBFcnptYWdpZXJpbiBmdWVyIFJlY2huZXJ3YXJ0dW5nLCAtaG9zdGluZyAoWm9vaywgMjAuIE5vdiAyMDA2LCAyMjo0NzoyNik6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE2NDA1OTA1NiByZz1zY2htYXJybgp+IyEgdGlkPTExNjQwNTcxNjIKRGVuIGdlbmF1ZW4gVGVybWlucGxhbiBnZWJlbiB3aXIgbm9jaCBiZWthbm50OyB3aXIgdmVyc3VjaGVuIHNlbGJzdHJlZGVuZApldHdhaWdlIERvd24tWmVpdGVuIHNvIGdlcmluZyB3aWUgbW9lZ2xpY2ggenUgaGFsdGVuLS0tYXVjaCBmdWVyIGRpZSAKc3BpZWxlbmRlbiBTcGllbGVyLgoKWi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5ldWVyIEhvc3RlciwgbmV1ZSBFcnptYWdpZXJpbiBmdWVyIFJlY2huZXJ3YXJ0dW5nLCAtaG9zdGluZyAoS2Vzc2EsIDIwLiBOb3YgMjAwNiwgMjI6NDg6MDIpOgp+IyEgcm49Wm9vayBydD0xMTY0MDU5MjQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2NDA1NzE2MgpOYSBob2ZmZW50bGljaC4gRHUgd2lsbHN0IGRvY2ggZGFzIG5ldWUgV2V0dGJ1ZXJvIG5pY2h0IHNhYm90aWVyZW4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5ldWVyIEhvc3RlciwgbmV1ZSBFcnptYWdpZXJpbiBmdWVyIFJlY2huZXJ3YXJ0dW5nLCAtaG9zdGluZyAoS2Vzc2EsIDIwLiBOb3YgMjAwNiwgMjI6NTA6MjUpOgp+IyEgcm49S2Vzc2EgcnQ9MTE2NDA1OTI4MiByZz1zY2htYXJybgp+IyEgdGlkPTExNjQwNTcxNjIKQWVoLCBpY2ggbWVpbnRlOiBJaHIgd29sbHQgZXMgaG9mZmVudGxpY2ggbmljaHQgX3p1IGJhbGRfIGJla2FubnQgZ2ViZW4uCgpLZXNzYSwgd2lsZCBnZWRhbmtlbnNwcmluZ2VuZCB1bmQgc2VsZi1yZXBseWVuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTmV1ZXIgSG9zdGVyLCBuZXVlIEVyem1hZ2llcmluIGZ1ZXIgUmVjaG5lcndhcnR1bmcsIC1ob3N0aW5nIChab29rLCAyMC4gTm92IDIwMDYsIDIyOjUxOjAxKToKfiMhIHJuPUtlc3NhIHJ0PTExNjQwNTk0MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTY0MDU3MTYyCkdlZ2Vud2FlcnRpZyBoYWV0dGUgZXMgYXVjaCBlaGVyIGRlbiBDaGFyYWt0ZXIgZWluZXIgIldldHRlIiBvZGVyIFByb2dub3NlLiBaLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDoga2Vzc2EgZGFua2UgKFJvbmRhLCAyMS4gTm92IDIwMDYsIDIxOjQwOjUwKToKfiMhIHJuPVJ1bWF0YSBydD0xMTY0MTQxNjE1IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTE2NDE0MTM1OQpOZS4gU2NobWFycm4uIFVuZCBPcmt0LCBwYXNzIGF1ZiwgZGFzcyBEaXIga2VpbmVyIGRhZnVlciBkaWUgUm9lbWVyZ2xhZXNlcgptb3BzdCEKClJvbmRhICpNSVNULCBuZW4gUmVoIHZlcmJvY2t0ISoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGtlc3NhIGRhbmtlIChLZXNzYSwgMjEuIE5vdiAyMDA2LCAyMTo0MTozOCk6Cn4jISBybj1Sb25kYSBydD0xMTY0MTQxNjUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2NDE0MTM1OQonRWluIFJlaCB2ZXJib2NrdCcgaXN0IGFiZXIgZWluZSBiZXNvbmRlcnMgaHVlYnNjaGUgTWV0YXBoZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGtlc3NhIGRhbmtlIChPcmt0b2V0ZXIsIDIxLiBOb3YgMjAwNiwgMjE6NDI6MTQpOgp+IyEgcm49Um9uZGEgcnQ9MTE2NDE0MTY1MCByZz1zY2htYXJybgp+IyEgdGlkPTExNjQxNDEzNTkKTWVpbmUgUm9lbWVyZ2xhZXNlciBnaWJ0cyBlcyBudXIgdWViZXIgbWVpbmUgd2F0dGllcnRlIExlaWNoZSEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGtlc3NhIGRhbmtlIChLZXNzYSwgMjEuIE5vdiAyMDA2LCAyMTo1MTowNyk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE2NDE0MTczNCByZz1zY2htYXJybgp+IyEgdGlkPTExNjQxNDEzNTkKRGFua2UsIFplc3N0cmEhIERhbmtlISBEYW5rZSEgRGFua2UhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBrZXNzYSBkYW5rZSAoTXVhZGliLCAyMi4gTm92IDIwMDYsIDE5OjMyOjIyKToKfiMhIHJuPUtlc3NhIHJ0PTExNjQxNDIyNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTY0MTQxMzU5CnVuZCB3ZW5uIGVzIGVpbmUgb3BlcmllcnRlIHJpY2tlIHdhcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEdyYW1tIGlzdCBuaWNodCBnbGVpY2ggR3JhbW0gKEFuYXRvbCwgMjguIE5vdiAyMDA2LCAxODo0Mjo0Myk6Cn4jISBvbj1BbmF0b2wgb3Q9MTE2NDczNTc1MSBvZz1hbGxnZW1laW5lcwp+IyEgcm49QWxrb2hvbCBydD0xMTY0NzA3NDI4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTE2MzkxMTA2OQpTZWh0IGVzIGlobSBuYWNoLiBEZXIgRGFlbW9uIGlzdCBuaWNodCBiZXNvbmRlcnMgbWFlY2h0aWcuCkltIEdlZ2VudGVpbC4gQWxsZXMgV3VlcnN0ZSwgd2FzIGRpZSBDaGFvdGVuIGRhIHNvIGJlc2Nod29lcmVuCmtvZW5uZW4uIFdlbm4gZXMgZWluZSByaWNodGlnZSBHaWxkZSBkZXIgQmVzY2h3b2VyZXIgd2FlcmUsIGphCmRhbm4uLi4gZGFlbm4gZ2FlYmUgZXMgdmllbGxlaWNodCBhdWNoIE1pbGxpZ3JhbW0uIE9kZXIgCmJlc2Nod29lcmJhcmUgTWFnaWVyLiBPZGVyIEdvZXR0ZXIuIAoKCj4gYmVzY2h3b2VyZSBydW1hdGEKRHUgYmVnaW5uc3QgZGllIEJlc2Nod29lcnVuZyB2b24gUnVtYXRhLiBCZWRlbmtlLCBkYXNzIGRlcgpCYW5ua3JlaXMgdmVycHVmZnQgdW5kIGRpZSBMYXVuZSBkZXMgQmVzY2h3b3JlbmVuIHNpY2ggYXVmCkRpY2ggbmVnYXRpdiBhdXN3aXJrZW4ga2Fubi4KWyBFd2lnIGxhbmdlIFNlcXVlbnogXQpSdW1hdGEgdHJpdHQgYXVzIGVpbmVyIFJhdWNod29sa2UuClJ1bWF0YSBzYWd0OiBIZSwgaWNoIGhhYmUgbWljaCBlYmVuIG1pdCBCb2luZyB1bnRlcmhhbHRlbiEKW1RvZDpMYXJzXSBFaW4gQmVzY2h3b2VydW5nc2ZlaGxlciBoYXQgZ2VyYWRlIEtleSB1bWdlYnJhY2h0Lgo+IGdyaW5zCkRlaW4gS29lcnBlciBnZWhvcmNodCBEaXIgbmljaHQgIQoKR25paGkuLi4gb2theS4gU2NobWFycm4uIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VyIGlzdCBYWFg/IChab29rLCAyOS4gTm92IDIwMDYsIDIwOjMzOjA5KToKRGVpbiBGcmV1bmQgWFhYIHRlaWx0IERpciBtaXQ6IGkgY2FuIF5eIHlvdXIgc3R1cGlkIDotKSBhd2F5LCBraWxsIHlvdXIgOykKRGVpbiBGcmV1bmQgWFhYIHRlaWx0IERpciBtaXQ6IHdpdGggbXkgcm90ZmwsIGdhZyB5b3VyIGJsb29keSA+Oikgd2l0aCBteSBjb29sCkRlaW4gRnJldW5kIFhYWCB0ZWlsdCBEaXIgbWl0OiBsb2wKRGVpbiBGcmV1bmQgWFhYIHRlaWx0IERpciBtaXQ6IGkgCkRlaW4gRnJldW5kIFhYWCB0ZWlsdCBEaXIgbWl0OiBhbQpEZWluIEZyZXVuZCBYWFggdGVpbHQgRGlyIG1pdDogc28KRGVpbiBGcmV1bmQgWFhYIHRlaWx0IERpciBtaXQ6IGhpcAoKV2VpYSwgd2FzIGhhYiBpY2ggZGEgYWxsZXMgYXVmbSBGYmFuZD8gOykKCloKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZXIgaXN0IFhYWD8gKENoYWdhbGwsIDI5LiBOb3YgMjAwNiwgMjA6Mzc6MDIpOgp+IyEgcm49Wm9vayBydD0xMTY0ODI4Nzg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2NDgyODc4OQpEYXJmIGljaCBsb2VzZW4/CgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VnZXNrcmlwdGUgKEh1cmF4cHJheCwgMjkuIE5vdiAyMDA2LCAyMDo0Njo1Mik6ClRyaW5pdHkga3JhZWNoenQ6IC4uLiBrcnJyb29vYWFhIC4uLiBIYWxsbyBlaW4gRmlzY2hvdHRlciwgZWluIEJlcm5oYXJkaW5lciwKVHJpbml0eSBrcmFlY2h6dDogS3JzdGZycywgZWluIFJhYmUsIGVpbiBDb3VnYXIsIGVpbiBEcmFrb25pZXJ3YWVjaHRlciwgZWluClRyaW5pdHkga3JhZWNoenQ6IERyYWtvbmllcndhZWNodGVyIHVuZCBIdXJheHByYXggLi4uCgoKV2VyIHplaWNobmV0IGRlbiBXZWcgbmFjaD8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZWdlc2tyaXB0ZSAoWm9vaywgMjkuIE5vdiAyMDA2LCAyMDo0ODo1Nyk6Cn4jISBybj1IdXJheHByYXggcnQ9MTE2NDgyOTYxMiByZz1zY2htYXJybgp+IyEgdGlkPTExNjQ4Mjk2MTIKU3RlaHQgS3JzdGZycyBpbW1lciBhbiBkZXIgZ2xlaWNoZW4gU3RlbGxlPyA7KSAKWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZWdlc2tyaXB0ZSAoR25vbWUsIDI5LiBOb3YgMjAwNiwgMjA6NDk6MjkpOgp+IyEgcm49Wm9vayBydD0xMTY0ODI5NzM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2NDgyOTYxMgpqYSwgc2FuZHRpZ2VyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2VnZXNrcmlwdGUgKEFyaywgMjkuIE5vdiAyMDA2LCAyMDo1NjozMik6Cn4jISBybj1Hbm9tZSBydD0xMTY0ODI5NzY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2NDgyOTYxMgpOZXVlIFRydmVzcXVlc3Q6IFNwZW5kZW4gZnVlciBkZW4gU3BlbmRlbnNhbW1sZXIsIGRlciB3byBkYSBzbyBhbSBTYW5kdGlnZXIKc3RlaHQ/CgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2VnZXNrcmlwdGUgKEdub21lLCAyOS4gTm92IDIwMDYsIDIwOjU4OjMxKToKfiMhIHJuPUFyayBydD0xMTY0ODMwMTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2NDgyOTYxMgpqZWRlciBoYXQgaGFsdCBzbyBzZWluZSBtZXRob2RlbiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKb2huZSB3b3J0ZSAoR25vbWUsIDMwLiBOb3YgMjAwNiwgMjE6NDc6NDUpOgp4eXogdGVpbHQgRGlyIG1pdDogaWNoIGJpbiBzdWVjaHRpZywgaGFiZSBrZWluZSB6ZWl0IGFiZXIgd29sbHRlIG1hbAp4eXogdGVpbHQgRGlyIG1pdDogcmVpbnNjaGF1bgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVHJhZ2JhcmVyIEZlc3RwbGF0dGVuIE9HRy1QbGF5ZXIgKE9ya3RvZXRlciwgIDIuIERleiAyMDA2LCAwOTozODozNSk6Cn4jISBybj1NYXJjdXMgcnQ9MTE2NDk5NzEwMyByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMTY0OTg4NjM3CkFjaCBkdSBiaXN0IGRlciBsdXN0aWdlIE1lbnNjaCwgYXVzIGRlc3NlbiBKYWNrZW50YXNjaGUgaW1tZXIgMyBTY2hudWVyZSB6dQpIZWxpdW0gZ2VmdWVsbHRlbiBMdWZ0YmFsbG9ucyB1ZWJlciBzZWluZW0gS29wZiBnZWhlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRyYWdiYXJlciBGZXN0cGxhdHRlbiBPR0ctUGxheWVyIChHcmltbWJvcm4sICAyLiBEZXogMjAwNiwgMDk6NTY6MzEpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNjUwNDg3MTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTY0OTg4NjM3CkRhcyBpc3Qga2VpbiBIZWxpdW0sIGRhcyBpc3QgV2Fzc2Vyc3RvZmYuIE5vIHNtb2tpbmcsIHBsZWFzZSEKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVHJhZ2JhcmVyIEZlc3RwbGF0dGVuIE9HRy1QbGF5ZXIgKE1hcmN1cywgIDIuIERleiAyMDA2LCAxMDo0MzoyMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE2NTA0OTc5MSByZz1zY2htYXJybgp+IyEgdGlkPTExNjQ5ODg2MzcKSWNoIHdlaXNzIG5pY2h0IHdhcyBkdSBtZWluc3QgOykKCk51ciBuZWJlbiBLYW1lcmEgdW5kIEhhbmR5IG5vY2ggbmVuIFBsYXllciBtaXR6dXNjaGxlcHBlbiBpc3QgbGFuZ3NhbQpzY2hvbiBuZSBHZXdpY2h0c2ZyYWdlIDspCgpDaWFvLCBNYXJjdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE1haWxpbmdsaXN0ZS4gKE9ya3RvZXRlciwgIDIuIERleiAyMDA2LCAyMjowNzo1Mik6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTE2NTA5MzM1OSByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMTY0OTc0ODIwCk51biBzZWkgbmljaHQgc28gdW5mcmV1bmRsaWNoIHVuZCBzdWNoIGxpZWJlciBkZWluZSBHbGFza3VnZWwgYW5zdGF0dCBkaWUKTGV1dGUgYmVpIGlocmVyIGhhcnRlbiBBcmJlaXQgenUgc3RvZXJlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRyYWdiYXJlciBGZXN0cGxhdHRlbiBPR0ctUGxheWVyIChHcmltbWJvcm4sICAzLiBEZXogMjAwNiwgMTM6MTc6MDQpOgp+IyEgcm49WmVzc3RyYSBydD0xMTY1MTQ3MTA3IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTExNjQ5ODg2MzcKQnJhdi4gRGFyZnN0IGRpZSBIb3NlIGpldHp0IHdpZWRlciB6dW1hY2hlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBUcmFnYmFyZXIgRmVzdHBsYXR0ZW4gT0dHLVBsYXllciAoQWxrb2hvbCwgIDMuIERleiAyMDA2LCAxNDowNjoyMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE2NTE0ODIyNCByZz1zY2htYXJybgp+IyEgdGlkPTExNjQ5ODg2MzcKYnJhdiwgZHUgZGFyZnN0IGF1Y2ggZGVpbiBtYXVsIGpldHp0IHdpZWRlciB6dW1hY2hlbiAuLi4KCkFsa2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCZWluYWhlIHZlcmdlc3NlbjogKFRhcmFuaXMsICAzLiBEZXogMjAwNiwgMjM6MjM6MjYpOgp+IyEgcm49QXJrIHJ0PTExNjUxODQ1NDMgcmc9ZC5hbmZhZW5nZXIKfiMhIHRpZD0xMTY1MTg0NTQzClNvbGx0ZW4gd2lyIGRhcyB2aWVsbGVpY2h0IG1hbCBzY2huZWxsIHRlc3Rlbj8gOy0pKQpTTkNSLApUYXJhbmlzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJlaW5haGUgdmVyZ2Vzc2VuOiAoQXJrLCAgMy4gRGV6IDIwMDYsIDIzOjI5OjQ5KToKfiMhIHJuPVRhcmFuaXMgcnQ9MTE2NTE4NDYwNiByZz1zY2htYXJybgp+IyEgdGlkPTExNjUxODQ1NDMKTnVyIGVpbiBCdWcgYXVmIGVpbm1hbCwgYml0dGUgOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVHJhaWxlciAoR25vbWUsICA0LiBEZXogMjAwNiwgMTM6MDI6NTQpOgp+IyEgcm49S2V5IHJ0PTExNjUyMzEzNTUgcmc9d3d3LmVudHdpY2tsdW5nCn4jISB0aWQ9MTE2NTE0NDk1OQprZXksIGJpdHRlIG5pY2h0LgpvZGVyIHNvbGwgZGVyIHRyYWlsZXIgYXVzIGxhdXRlciB0b2Rlc3NlcXVlbnplbiBiZXN0ZWhlbj8gOikKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGludXggYXVmIERlbGwgSW5zcGlyb24gNjQwTSAoR3JpbW1ib3JuLCAgOC4gRGV6IDIwMDYsIDE3OjM5OjUwKToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTExNjU1OTU4ODkgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTE2NTU5NTg4OQpOaW1tIGRvY2ggR2VudG9vLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggd2FyLi4uLi4gKEdyaW1tYm9ybiwgMTAuIERleiAyMDA2LCAxMjo0MTo1MCk6Cn4jISBvbj1Mb29nYXQgb3Q9MTE2NTYyOTM2MyBvZz1hbGxnZW1laW5lcwpoaWVyIC4uLiAgbWFsIHdpZWRlciAuLi4gCltCUm8qIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIHdhci4uLi4uIChHcmltbWJvcm4sIDEwLiBEZXogMjAwNiwgMTI6NDE6NTEpOgp+IyEgb249Wm9vayBvdD0xMTY1NjYxNTgwIG9nPWFsbGdlbWVpbmVzCn4jISBybj1Mb29nYXQgcnQ9MTE2NTYyOTM2MyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExNjU2MjkzNjMKdW5nbGF1YmxpY2ghCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXIgbWFlY2h0aWdlIEdsb2luc29uIChab29rLCAxMy4gRGV6IDIwMDYsIDE4OjA5OjA5KToKW0FsbGdlbWVpbjpab29rXSA/CltBbGxnZW1laW46S2V5XSBTY2hvbiBndXQgOikKW0FsbGdlbWVpbjpab29rXSBPa2F5CltBbGxnZW1laW46R2xvaW5zb25dIFN0aXJiIHNjaG9uLgpbVG9kOkxhcnNdIEVpbiBBbHRhciBoYXQgZ2VyYWRlIE5hbnBpdGNoIHVtZ2VicmFjaHQuCltUb2Q6RWluIEFsdGFyXSBEaWUgTWFjaHQgZGVyIEdvZXR0ZXIgaXN0IG5pY2h0IHp1IHVudGVyc2NoYWV0emVuIQpbQmVpbGVpZDpLZXldIEF1dHNjaApbQmVpbGVpZDpHbG9pbnNvbl0gRGVyIEZhbHNjaGUuCgpaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGVyIG1hZWNodGlnZSBHbG9pbnNvbiAoR2xvaW5zb24sIDEzLiBEZXogMjAwNiwgMTg6MTA6MjkpOgp+IyEgcm49Wm9vayBydD0xMTY2MDI5NzQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2NjAyOTc0OQpab29rIGhhdCBvZmZpemllbGwgTGFuZ2V3ZWlsZS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGVyIG1hZWNodGlnZSBHbG9pbnNvbiAoT3JrdG9ldGVyLCAxMy4gRGV6IDIwMDYsIDE4OjEwOjM5KToKfiMhIHJuPVpvb2sgcnQ9MTE2NjAyOTc0OSByZz1zY2htYXJybgp+IyEgdGlkPTExNjYwMjk3NDkKR2wqIHVuZCBHb3R0PyAqcHJ1dXV1dXN0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEZXIgbWFlY2h0aWdlIEdsb2luc29uIChHbG9pbnNvbiwgMTMuIERleiAyMDA2LCAxODoxMToyNCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE2NjAyOTgzOSByZz1zY2htYXJybgp+IyEgdGlkPTExNjYwMjk3NDkKSGFzdCBkdSBub2NoIG1laW5lbiBWZXJ0cmFnPyBVbnRlcnNjaHJlaWIgc2Nob24sIGRhbm4ga2FubnN0IGR1IHZvciBtaXIgR290dAp3ZXJkZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQW1pcy4uLiAoT3JrdG9ldGVyLCAxMy4gRGV6IDIwMDYsIDIyOjI5OjU2KToKIkRhbGxhcyAtIEVpbiBuZXVlcyBWaWRlb3NwaWVsIGhhdCBpbiBkZW4gVVNBIGRlbiBLb25mbGlrdCB6d2lzY2hlbgpjaHJpc3RsaWNoZW4gRnVuZGFtZW50YWxpc3RlbiB1bmQgbGliZXJhbGVuIEdlc2VsbHNjaGFmdHNrcmVpc2VuIG5ldQphbmdlaGVpenQuIE5hY2ggTWVpbnVuZyB2b24gS3JpdGlrZXJuIGZvZXJkZXJ0IGRhcyBTcGllbCAiTGVmdCBCZWhpbmQ6IEV0ZXJuYWwKRm9yY2VzIiByZWxpZ2lvZXMgbW90aXZpZXJ0ZSBHZXdhbHQuIEluIGRlbSBzZWl0IGVpbmVtIE1vbmF0IHZlcmthdWZ0ZW4gU3BpZWwKbXVlc3NlbiBUZWlsbmVobWVyIGRpZSBGaWd1cmVuIHZvbSBjaHJpc3RsaWNoZW4gR2xhdWJlbiB1ZWJlcnpldWdlbiB1bmQgZWluZQpBcm1lZSBhdWZiYXVlbiwgZGllIHBoeXNpc2NoIHVuZCBzcGlyaXR1ZWxsIGRlbiBUZXVmZWwgdW5kIHNlaW5lIEFuaGFlbmdlcgpiZWthZW1wZnQuIgoKTGVpZGVyIGlzdCBkYXMgendhciB2b2VsbGlnIGlycmUsIGFiZXIga2VpbiBTY2htYXJybiBpbiBkZW0gU2lubmUsIGRhcyBzdGFtbXQKYXVzIGRlciBvbmxpbmUtQXVzZ2FiZSBkZXMgS29lbG5lciBTdGFkdC1BbnplaWdlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLQSBTb25kZXItU3RhbW10aXNjaCAxNi4xMiAoWm9vaywgMTUuIERleiAyMDA2LCAxNTowMDo1MCk6Cn4jISBybj1Dcm9mdCBydD0xMTY2MTkwOTYzIHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTExNjYxOTA5NjMKV293LCB2b2xsIGRhcyBicnV0YWxlIFdvcnRzcGllbCEgOykKWi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS0EgU29uZGVyLVN0YW1tdGlzY2ggMTYuMTIgKENyb2Z0LCAxNS4gRGV6IDIwMDYsIDE1OjA2OjU1KToKfiMhIHJuPVpvb2sgcnQ9MTE2NjE5MTI1MCByZz1zY2htYXJybgp+IyEgdGlkPTExNjYxOTA5NjMKSm8uICBIYWIgbWlyIGtvbmtyZXQga3Jhc3MgdmllbCBNdWVoZSBnZWdlYmVuLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFN1Y2h0dXNzZSAoT3JrdG9ldGVyLCAxNS4gRGV6IDIwMDYsIDIyOjQyOjU5KToKfiMhIHJuPUdsb2luc29uIHJ0PTExNjYyMDY4OTggcmc9d3d3Cn4jISB0aWQ9MTE2NjEyMDAyNgpIYXQgc2Nob24gd2VyIHZlcnN1Y2h0LCBab29rIGdlZ2VuIHNlaW4gU3BpZWdlbGJpbGQgenUgc2V0emVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdlaWhuYWNodHNtYXJrdGJ1bW1lbCBpbiBNYXJidXJnIChPcmt0b2V0ZXIsIDE2LiBEZXogMjAwNiwgMDA6MjQ6NTApOgp+IyEgb249T3JrdG9ldGVyIG90PTExNjYyMjUwNzggb2c9dHJlZmZlbgp+IyEgcm49Um9uZGEgcnQ9MTE2NjIxODA2MiByZz10cmVmZmVuCn4jISB0aWQ9MTE2NjIxODA2MgpIYXN0IGR1IHNvIGVpbmVuIGxhbmdlbiBSdWVja2VuPyBXaWUgbGFuZ2UgYnJhdWNoc3QgZHUgZnVlciBkaWUgU3RyZWNrZT8gTWl0CndhcyBtdXNzIG1hbiBkaWNoIGZ1ZXR0ZXJuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVjbGFyYXRpb24gb2YgUmV2b2NhdGlvbiAoUm9uZGEsIDE2LiBEZXogMjAwNiwgMDA6NTQ6NDMpOgpEZWNsYXJhdGlvbiBvZiBSZXZvY2F0aW9uCmJ5IEpvaG4gQ2xlZXNlCgpUbyB0aGUgY2l0aXplbnMgb2YgdGhlIFVuaXRlZCBTdGF0ZXMgb2YgQW1lcmljYSwgaW4gdGhlIGxpZ2h0IG9mIHlvdXIgZmFpbHVyZQp0byBlbGVjdCBhIGNvbXBldGVudCBQcmVzaWRlbnQgb2YgdGhlIFVTQSBhbmQgdGh1cyB0byBnb3Zlcm4geW91cnNlbHZlcywgd2UKaGVyZWJ5IGdpdmUgbm90aWNlIG9mIHRoZSByZXZvY2F0aW9uIG9mIHlvdXIgaW5kZXBlbmRlbmNlLCBlZmZlY3RpdmUgdG9kYXkuCgpIZXIgU292ZXJlaWduIE1hamVzdHkgUXVlZW4gRWxpemFiZXRoIElJIHdpbGwgcmVzdW1lIG1vbmFyY2hpY2FsIGR1dGllcyBvdmVyCmFsbCBzdGF0ZXMsIGNvbW1vbndlYWx0aHMgYW5kIG90aGVyIHRlcnJpdG9yaWVzLgoKRXhjZXB0IFV0YWgsIHdoaWNoIHNoZSBkb2VzIG5vdCBmYW5jeS4KCllvdXIgbmV3IFByaW1lIE1pbmlzdGVyIChUaGUgUmlnaHQgSG9ub3VyYWJsZSBUb255IEJsYWlyLCBNUCBmb3IgdGhlIDk3Ljg1JSBvZgp5b3Ugd2hvIGhhdmUgdW50aWwgbm93IGJlZW4gdW5hd2FyZSB0aGF0IHRoZXJlIGlzIGEgd29ybGQgb3V0c2lkZSB5b3VyCmJvcmRlcnMpIHdpbGwgYXBwb2ludCBhIE1pbmlzdGVyIGZvciBBbWVyaWNhIHdpdGhvdXQgdGhlIG5lZWQgZm9yIGZ1cnRoZXIKZWxlY3Rpb25zLgoKQ29uZ3Jlc3MgYW5kIHRoZSBTZW5hdGUgd2lsbCBiZSBkaXNiYW5kZWQuCgpBIHF1ZXN0aW9ubmFpcmUgd2lsbCBiZSBjaXJjdWxhdGVkIG5leHQgeWVhciB0byBkZXRlcm1pbmUgd2hldGhlciBhbnkgb2YgeW91Cm5vdGljZWQuIFRvIGFpZCBpbiB0aGUgdHJhbnNpdGlvbiB0byBhIEJyaXRpc2ggQ3Jvd24gRGVwZW5kZW5jeSwgdGhlIGZvbGxvd2luZwpydWxlcyBhcmUgaW50cm9kdWNlZCB3aXRoIGltbWVkaWF0ZSBlZmZlY3Q6CgoxLiBZb3Ugc2hvdWxkIGxvb2sgdXAgInJldm9jYXRpb24iIGluIHRoZSBPeGZvcmQgRW5nbGlzaCBEaWN0aW9uYXJ5LiBUaGVuIGxvb2sKdXAgImFsdW1pbml1bS4iIENoZWNrIHRoZSBwcm9udW5jaWF0aW9uIGd1aWRlLiBZb3Ugd2lsbCBiZSBhbWF6ZWQgYXQganVzdCBob3cKd3JvbmdseSB5b3UgaGF2ZSBiZWVuIHByb25vdW5jaW5nIGl0LgoKVGhlIGxldHRlciAnVScgd2lsbCBiZSByZWluc3RhdGVkIGluIHdvcmRzIHN1Y2ggYXMgJ2Zhdm91cicgYW5kICduZWlnaGJvdXInOwpza2lwcGluZyB0aGUgbGV0dGVyICdVJyBpcyBub3RoaW5nIG1vcmUgdGhhbiBsYXppbmVzcyBvbiB5b3VyIHBhcnQuIExpa2V3aXNlLAp5b3Ugd2lsbCBsZWFybiB0byBzcGVsbCAnZG91Z2hudXQnIHdpdGhvdXQgc2tpcHBpbmcgaGFsZiB0aGUgbGV0dGVycy4KCllvdSB3aWxsIGVuZCB5b3VyIGxvdmUgYWZmYWlyIHdpdGggdGhlIGxldHRlciAnWicgKHByb25vdW5jZWQgJ3plZCcgbm90ICd6ZWUnKQphbmQgdGhlIHN1ZmZpeCAiaXplIiB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSBzdWZmaXggImlzZS4iCgpZb3Ugd2lsbCBsZWFybiB0aGF0IHRoZSBzdWZmaXggJ2J1cmdoJyBpcyBwcm9ub3VuY2VkICdidXJyYScgZS5nLiBFZGluYnVyZ2guCllvdSBhcmUgd2VsY29tZSB0byByZS1zcGVsbCBQaXR0c2J1cmdoIGFzICdQaXR0c2JlcmcnIGlmIHlvdSBjYW4ndCBjb3BlIHdpdGgKY29ycmVjdCBwcm9udW5jaWF0aW9uLgoKR2VuZXJhbGx5LCB5b3Ugc2hvdWxkIHJhaXNlIHlvdXIgdm9jYWJ1bGFyeSB0byBhY2NlcHRhYmxlIGxldmVscy4gTG9vayB1cAoidm9jYWJ1bGFyeS4iIFVzaW5nIHRoZSBzYW1lIHRoaXJ0eSBzZXZlbiB3b3JkcyBpbnRlcnNwZXJzZWQgd2l0aCBmaWxsZXIKbm9pc2VzIHN1Y2ggYXMgInVoaCIsICJsaWtlIiwgYW5kICJ5b3Uga25vdyIgaXMgYW4gdW5hY2NlcHRhYmxlIGFuZAppbmVmZmljaWVudCBmb3JtIG9mIGNvbW11bmljYXRpb24uCgpMb29rIHVwICJpbnRlcnNwZXJzZWQuIgoKVGhlcmUgd2lsbCBiZSBubyBtb3JlICdibGVlcHMnIGluIHRoZSBKZXJyeSBTcHJpbmdlciBzaG93LiBJZiB5b3UncmUgbm90IG9sZAoKZW5vdWdoIHRvIGNvcGUgd2l0aCBiYWQgbGFuZ3VhZ2UgdGhlbiB5b3Ugc2hvdWxkbid0IGhhdmUgY2hhdCBzaG93cy4gV2hlbiB5b3UKbGVhcm4gdG8gZGV2ZWxvcCB5b3VyIHZvY2FidWxhcnksIHRoZW4geW91IHdvbid0IGhhdmUgdG8gdXNlIGJhZCBsYW5ndWFnZSBhcwpvZnRlbi4KCjIuIFRoZXJlIGlzIG5vIHN1Y2ggdGhpbmcgYXMgIlVTIEVuZ2xpc2guIiBXZSB3aWxsIGxldCBNaWNyb3NvZnQga25vdyBvbiB5b3VyCmJlaGFsZi4gVGhlIE1pY3Jvc29mdCBzcGVsbC1jaGVja2VyIHdpbGwgYmUgYWRqdXN0ZWQgdG8gdGFrZSBhY2NvdW50IG9mIHRoZQpyZWluc3RhdGVkIGxldHRlciAndScgYW5kIHRoZSBlbGltaW5hdGlvbiBvZiAiLWl6ZS4iCgozLiBZb3Ugc2hvdWxkIGxlYXJuIHRvIGRpc3Rpbmd1aXNoIHRoZSBFbmdsaXNoIGFuZCBBdXN0cmFsaWFuIGFjY2VudHMuIEl0CnJlYWxseSBpc24ndCB0aGF0IGhhcmQuIEVuZ2xpc2ggYWNjZW50cyBhcmUgbm90IGxpbWl0ZWQgdG8gY29ja25leSwKdXBwZXItY2xhc3MgdHdpdCBvciBNYW5jdW5pYW4gKERhcGhuZSBpbiBGcmFzaWVyKS4KCllvdSB3aWxsIGFsc28gaGF2ZSB0byBsZWFybiBob3cgdG8gdW5kZXJzdGFuZCByZWdpb25hbCBhY2NlbnRzIC0tLSBTY290dGlzaApkcmFtYXMgc3VjaCBhcyAiVGFnZ2FydCIgd2lsbCBubyBsb25nZXIgYmUgYnJvYWRjYXN0IHdpdGggc3VidGl0bGVzLgoKV2hpbGUgd2UncmUgdGFsa2luZyBhYm91dCByZWdpb25zLCB5b3UgbXVzdCBsZWFybiB0aGF0IHRoZXJlIGlzIG5vIHN1Y2ggcGxhY2UKYXMgRGV2b25zaGlyZSBpbiBFbmdsYW5kLiBUaGUgbmFtZSBvZiB0aGUgY291bnR5IGlzICJEZXZvbi4iIElmIHlvdSBwZXJzaXN0IGluCmNhbGxpbmcgaXQgRGV2b25zaGlyZSwgYWxsIEFtZXJpY2FuIFN0YXRlcyB3aWxsIGJlY29tZSAic2hpcmVzIiBlLmcuClRleGFzc2hpcmUsIEZsb3JpZGFzaGlyZSwgTG91aXNpYW5hc2hpcmUuCgo0LiBIb2xseXdvb2Qgd2lsbCBiZSByZXF1aXJlZCBvY2Nhc2lvbmFsbHkgdG8gY2FzdCBFbmdsaXNoIGFjdG9ycyBhcyB0aGUgZ29vZApndXlzLiBIb2xseXdvb2Qgd2lsbCBiZSByZXF1aXJlZCB0byBjYXN0IEVuZ2xpc2ggYWN0b3JzIHRvIHBsYXkgRW5nbGlzaApjaGFyYWN0ZXJzLgoKQnJpdGlzaCBzaXQtY29tcyBzdWNoIGFzICJNZW4gQmVoYXZpbmcgQmFkbHkiIG9yICJSZWQgRHdhcmYiIHdpbGwgbm90IGJlCnJlLWNhc3QgYW5kIHdhdGVyZWQgZG93biBmb3IgYSB3aXNoeS13YXNoeSBBbWVyaWNhbiBhdWRpZW5jZSB3aG8gY2FuJ3QgY29wZQp3aXRoIHRoZSBodW1vdXIgb2Ygb2NjYXNpb25hbCBwb2xpdGljYWwgaW5jb3JyZWN0bmVzcy4KCjUuIFlvdSBzaG91bGQgcmVsZWFybiB5b3VyIG9yaWdpbmFsIG5hdGlvbmFsIGFudGhlbSwgIkdvZCBTYXZlIFRoZSBRdWVlbiIsIGJ1dApvbmx5IGFmdGVyIGZ1bGx5IGNhcnJ5aW5nIG91dCB0YXNrIDEuIFdlIHdvdWxkIG5vdCB3YW50IHlvdSB0byBnZXQgY29uZnVzZWQKYW5kIGdpdmUgdXAgaGFsZiB3YXkgdGhyb3VnaC4KCjYuIFlvdSBzaG91bGQgc3RvcCBwbGF5aW5nIEFtZXJpY2FuICJmb290YmFsbC4iIFRoZXJlIGlzIG9ubHkgb25lIGtpbmQgb2YKZm9vdGJhbGwuIFdoYXQgeW91IHJlZmVyIHRvIGFzIEFtZXJpY2FuICJmb290YmFsbCIgaXMgbm90IGEgdmVyeSBnb29kIGdhbWUuCgpUaGUgMi4xNSUgb2YgeW91IHdobyBhcmUgYXdhcmUgdGhhdCB0aGVyZSBpcyBhIHdvcmxkIG91dHNpZGUgeW91ciBib3JkZXJzIG1heQpoYXZlIG5vdGljZWQgdGhhdCBubyBvbmUgZWxzZSBwbGF5cyAiQW1lcmljYW4iIGZvb3RiYWxsLiBZb3Ugd2lsbCBubyBsb25nZXIgYmUKYWxsb3dlZCB0byBwbGF5IGl0LCBhbmQgc2hvdWxkIGluc3RlYWQgcGxheSBwcm9wZXIgZm9vdGJhbGwuCgpJbml0aWFsbHksIGl0IHdvdWxkIGJlIGJlc3QgaWYgeW91IHBsYXllZCB3aXRoIHRoZSBnaXJscy4gSXQgaXMgYSBkaWZmaWN1bHQKZ2FtZS4gVGhvc2Ugb2YgeW91IGJyYXZlIGVub3VnaCB3aWxsLCBpbiB0aW1lLCBiZSBhbGxvd2VkIHRvIHBsYXkgcnVnYnkgKHdoaWNoCmlzIHNpbWlsYXIgdG8gQW1lcmljYW4gImZvb3RiYWxsIiwgYnV0IGRvZXMgbm90IGludm9sdmUgc3RvcHBpbmcgZm9yIGEgcmVzdApldmVyeSB0d2VudHkgc2Vjb25kcyBvciB3ZWFyaW5nIGZ1bGwga2V2bGFyIGJvZHkgYXJtb3VyIGxpa2UgbmFuY2llcykuCgpXZSBhcmUgaG9waW5nIHRvIGdldCB0b2dldGhlciBhdCBsZWFzdCBhIFVTIFJ1Z2J5IHNldmVucyBzaWRlIGJ5IDIwMDUuCgpZb3Ugc2hvdWxkIHN0b3AgcGxheWluZyBiYXNlYmFsbC4gSXQgaXMgbm90IHJlYXNvbmFibGUgdG8gaG9zdCBhbiBldmVudCBjYWxsZWQKdGhlICdXb3JsZCBTZXJpZXMnIGZvciBhIGdhbWUgd2hpY2ggaXMgbm90IHBsYXllZCBvdXRzaWRlIG9mIEFtZXJpY2EuIFNpbmNlCm9ubHkgMi4xNSUgb2YgeW91IGFyZSBhd2FyZSB0aGF0IHRoZXJlIGlzIGEgd29ybGQgYmV5b25kIHlvdXIgYm9yZGVycywgeW91cgplcnJvciBpcyB1bmRlcnN0YW5kYWJsZS4gSW5zdGVhZCBvZiBiYXNlYmFsbCwgeW91IHdpbGwgYmUgYWxsb3dlZCB0byBwbGF5IGEKZ2lybHMnIGdhbWUgY2FsbGVkICJyb3VuZGVycywiIHdoaWNoIGlzIGJhc2ViYWxsIHdpdGhvdXQgZmFuY3kgdGVhbSBzdHJpcCwKb3ZlcnNpemVkIGdsb3ZlcywgY29sbGVjdG9yIGNhcmRzIG9yIGhvdGRvZ3MuCgo3LiBZb3Ugd2lsbCBubyBsb25nZXIgYmUgYWxsb3dlZCB0byBvd24gb3IgY2FycnkgZ3Vucy4gWW91IHdpbGwgbm8gbG9uZ2VyIGJlCmFsbG93ZWQgdG8gb3duIG9yIGNhcnJ5IGFueXRoaW5nIG1vcmUgZGFuZ2Vyb3VzIGluIHB1YmxpYyB0aGFuIGEgdmVnZXRhYmxlCnBlZWxlci4gQmVjYXVzZSB3ZSBkb24ndCBiZWxpZXZlIHlvdSBhcmUgc2Vuc2libGUgZW5vdWdoIHRvIGhhbmRsZSBwb3RlbnRpYWxseQpkYW5nZXJvdXMgaXRlbXMsIHlvdSB3aWxsIHJlcXVpcmUgYSBwZXJtaXQgaWYgeW91IHdpc2ggdG8gY2FycnkgYSB2ZWdldGFibGUKcGVlbGVyIGluIHB1YmxpYy4KCjguIEp1bHkgNHRoIGlzIG5vIGxvbmdlciBhIHB1YmxpYyBob2xpZGF5LiBOb3ZlbWJlciAybmQgd2lsbCBiZSBhIG5ldyBuYXRpb25hbApob2xpZGF5LCBidXQgb25seSBpbiBFbmdsYW5kLiBJdCB3aWxsIGJlIGNhbGxlZCAiSW5kZWNpc2l2ZSBEYXkuIgoKOS4gQWxsIEFtZXJpY2FuIGNhcnMgYXJlIGhlcmVieSBiYW5uZWQuIFRoZXkgYXJlIGNyYXAsIGFuZCBpdCBpcyBmb3IgeW91ciBvd24KZ29vZC4gV2hlbiB3ZSBzaG93IHlvdSBHZXJtYW4gY2FycywgeW91IHdpbGwgdW5kZXJzdGFuZCB3aGF0IHdlIG1lYW4uCgpBbGwgcm9hZCBpbnRlcnNlY3Rpb25zIHdpbGwgYmUgcmVwbGFjZWQgd2l0aCByb3VuZGFib3V0cy4gWW91IHdpbGwgc3RhcnQKZHJpdmluZyBvbiB0aGUgbGVmdCB3aXRoIGltbWVkaWF0ZSBlZmZlY3QuIEF0IHRoZSBzYW1lIHRpbWUsIHlvdSB3aWxsIGdvCm1ldHJpYyB3aXRoIGltbWVkaWF0ZSBlZmZlY3QgYW5kIHdpdGhvdXQgdGhlIGJlbmVmaXQgb2YgY29udmVyc2lvbiB0YWJsZXMuClJvdW5kYWJvdXRzIGFuZCBtZXRyaWNhdGlvbiB3aWxsIGhlbHAgeW91IHVuZGVyc3RhbmQgdGhlIEJyaXRpc2ggc2Vuc2Ugb2YKaHVtb3VyLgoKMTAuIFlvdSB3aWxsIGxlYXJuIHRvIG1ha2UgcmVhbCBjaGlwcy4gVGhvc2UgdGhpbmdzIHlvdSBjYWxsICdGcmVuY2ggZnJpZXMnCmFyZSBub3QgcmVhbCBjaGlwcy4gRnJpZXMgYXJlbid0IGV2ZW4gRnJlbmNoLCB0aGV5IGFyZSBCZWxnaWFuIHRob3VnaCA5Ny44NSUKb2YgeW91IChpbmNsdWRpbmcgdGhlIGd1eSB3aG8gZGlzY292ZXJlZCBmcmllcyB3aGlsZSBpbiBFdXJvcGUpIGFyZSBub3QgYXdhcmUKb2YgYSBjb3VudHJ5IGNhbGxlZCBCZWxnaXVtLiBUaG9zZSB0aGluZ3MgeW91IGluc2lzdCBvbiBjYWxsaW5nIHBvdGF0byBjaGlwcwphcmUgcHJvcGVybHkgY2FsbGVkICJjcmlzcHMuIiBSZWFsIGNoaXBzIGFyZSB0aGljayBjdXQgYW5kIGZyaWVkIGluIGFuaW1hbApmYXQuIFRoZSB0cmFkaXRpb25hbCBhY2NvbXBhbmltZW50IHRvIGNoaXBzIGlzIGJlZXIgd2hpY2ggc2hvdWxkIGJlIHNlcnZlZAp3YXJtIGFuZCBmbGF0LgoKV2FpdHJlc3NlcyB3aWxsIGJlIHRyYWluZWQgdG8gYmUgbW9yZSBhZ2dyZXNzaXZlIHdpdGggY3VzdG9tZXJzLgoKMTEuIEFzIGEgc2lnbiBvZiBwZW5hbmNlIDUgZ3JhbXMgb2Ygc2VhIHNhbHQgcGVyIGN1cCB3aWxsIGJlIGFkZGVkIHRvIGFsbCB0ZWEKbWFkZSB3aXRoaW4gdGhlIENvbW1vbndlYWx0aCBvZiBNYXNzYWNodXNldHRzLCB0aGlzIHF1YW50aXR5IHRvIGJlIGRvdWJsZWQgZm9yCnRlYSBtYWRlIHdpdGhpbiB0aGUgY2l0eSBvZiBCb3N0b24gaXRzZWxmLgoKMTIuIFRoZSBjb2xkIHRhc3RlbGVzcyBzdHVmZiB5b3UgaW5zaXN0IG9uIGNhbGxpbmcgImJlZXIiIGlzIG5vdCBhY3R1YWxseSBiZWVyCmF0IGFsbCwgaXQgaXMgbGFnZXIgLiBGcm9tIE5vdmVtYmVyIDFzdCBvbmx5IHByb3BlciBCcml0aXNoIEJpdHRlciB3aWxsIGJlCnJlZmVycmVkIHRvIGFzICJiZWVyLCIgYW5kIEV1cm9wZWFuIGJyZXdzIG9mIGtub3duIGFuZCBhY2NlcHRlZCBwcm92ZW5hbmNlCndpbGwgYmUgcmVmZXJyZWQgdG8gYXMgIkxhZ2VyLiIgVGhlIHN1YnN0YW5jZXMgZm9ybWVybHkga25vd24gYXMgIkFtZXJpY2FuCkJlZXIiIHdpbGwgaGVuY2Vmb3J0aCBiZSByZWZlcnJlZCB0byBhcyAiTmVhci1Gcm96ZW4gR25hdCdzIFVyaW5lLCIgd2l0aCB0aGUKZXhjZXB0aW9uIG9mIHRoZSBwcm9kdWN0IG9mIHRoZSBBbWVyaWNhbiBCdWR3ZWlzZXIgY29tcGFueSB3aG9zZSBwcm9kdWN0IHdpbGwKYmUgcmVmZXJyZWQgdG8gYXMgIldlYWsgTmVhci1Gcm96ZW4gR25hdCdzIFVyaW5lLiIgVGhpcyB3aWxsIGFsbG93IHRydWUKQnVkd2Vpc2VyIChhcyBtYW51ZmFjdHVyZWQgZm9yIHRoZSBsYXN0IDEwMDAgeWVhcnMgaW4gdGhlIEN6ZWNoIFJlcHVibGljKSB0bwpiZSBzb2xkIHdpdGhvdXQgcmlzayBvZiBjb25mdXNpb24uCgoxMy4gRnJvbSBOb3ZlbWJlciAxMHRoIHRoZSBVSyB3aWxsIGhhcm1vbmlzZSBwZXRyb2wgKG9yICJnYXNvbGluZSwiIGFzIHlvdQp3aWxsIGJlIHBlcm1pdHRlZCB0byBrZWVwIGNhbGxpbmcgaXQgdW50aWwgQXByaWwgMXN0IDIwMDUpIHByaWNlcyB3aXRoIHRoZQpmb3JtZXIgVVNBLiBUaGUgVUsgd2lsbCBoYXJtb25pc2UgaXRzIHByaWNlcyB0byB0aG9zZSBvZiB0aGUgZm9ybWVyIFVTQSBhbmQKdGhlIEZvcm1lciBVU0Egd2lsbCwgaW4gcmV0dXJuLCBhZG9wdCBVSyBwZXRyb2wgcHJpY2VzIChyb3VnaGx5ICQ2L1VTIGdhbGxvbgotLSBnZXQgdXNlZCB0byBpdCkuCgoxNC4gWW91IHdpbGwgbGVhcm4gdG8gcmVzb2x2ZSBwZXJzb25hbCBpc3N1ZXMgd2l0aG91dCB1c2luZyBndW5zLCBsYXd5ZXJzIG9yCnRoZXJhcGlzdHMuIFRoZSBmYWN0IHRoYXQgeW91IG5lZWQgc28gbWFueSBsYXd5ZXJzIGFuZCB0aGVyYXBpc3RzIHNob3dzIHRoYXQKeW91J3JlIG5vdCBhZHVsdCBlbm91Z2ggdG8gYmUgaW5kZXBlbmRlbnQuIEd1bnMgc2hvdWxkIG9ubHkgYmUgaGFuZGxlZCBieQoKYWR1bHRzLiBJZiB5b3UncmUgbm90IGFkdWx0IGVub3VnaCB0byBzb3J0IHRoaW5ncyBvdXQgd2l0aG91dCBzdWluZyBzb21lb25lIG9yCnNwZWFraW5nIHRvIGEgdGhlcmFwaXN0LCB0aGVuIHlvdSdyZSBub3QgZ3Jvd24gdXAgZW5vdWdoIHRvIGhhbmRsZSBhIGd1bi4KCjE1LiBQbGVhc2UgdGVsbCB1cyB3aG8ga2lsbGVkIEpGSy4gSXQncyBiZWVuIGRyaXZpbmcgdXMgY3JhenkuCgoxNi4gVGF4IGNvbGxlY3RvcnMgZnJvbSBIZXIgTWFqZXN0eSdzIEdvdmVybm1lbnQgd2lsbCBiZSB3aXRoIHlvdSBzaG9ydGx5IHRvCmVuc3VyZSB0aGUgYWNxdWlzaXRpb24gb2YgYWxsIHJldmVudWVzIGR1ZSAoYmFja2RhdGVkIHRvIDE3NzYpLgoKVGhhbmsgeW91IGZvciB5b3VyIGNvLW9wZXJhdGlvbi4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUViAoR2xvaW5zb24sIDE2LiBEZXogMjAwNiwgMDE6MDM6MzcpOgpBcmdoLiBBcmdoLiBJY2ggaGFiZSBXZXJidW5nIGdlc2VoZW4gLi4uCgoiRGllIGJlc3RlbiAyMCBWaWRlb3MgYXVzIG15dmlkZW8uZGUgbmFlY2hzdGVuIDxUYWc+IGF1ZiA8U2VuZGVyPiIKCkRhcyBzY2htZXJ6dC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZydWVoamFocnNwYXJ0eSAoT3JrdG9ldGVyLCAxNi4gRGV6IDIwMDYsIDE3OjA3OjIxKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMTY2MjI0MzI3IHJnPXBhcnR5Cn4jISB0aWQ9MTE2NjIxODg4NwpXaXIga29lbm50ZW4gZGFubiBqYSBhbGxlIGRpZSB6dXIgUGFydHkga29tbWVuIGFscyBTdGFmZmV0ZSBhdWZzdGVsbGVuIHVuZApqZWRlciBkYXJmIGRlbiBSZWNobmVyIGRhbm4gZWlubWFsIGluIEhhZW5kZW4gaGFsdGVuIHVuZCB3ZWl0ZXIgcmVpY2hlbi4uLgp3ZW5uIHdpciBnZW51ZWdlbiBMZXV0ZSBoYWV0dGVuLCB3dWVyZGUgZGFzIGVpbiBzZWhyIHByZWlzd2VydGVyICh1bmQKTWVkaWVud2lya3NhbWVyKSBVbXp1Zy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZydWVoamFocnNwYXJ0eSAoRGFya2xvciwgMTYuIERleiAyMDA2LCAxODoxOTo0OCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE2NjI4NTI0MSByZz1zY2htYXJybgp+IyEgdGlkPTExNjYyMTg4ODcKQWxzIFVtenVnc3NkaWVuc3Q/CgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGcnVlaGphaHJzcGFydHkgKFplc3N0cmEsIDE3LiBEZXogMjAwNiwgMTM6NTE6MjcpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNjYyODUyNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTY2MjE4ODg3Ck1lZGllbndpcmtzYW0gdmllbGxlaWNodC4gUHJlaXNndWVuc3RpZyBnbGF1YiBpY2ggYWxsZXJkaW5ncyBuaWNodC4gOy0pClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZydWVoamFocnNwYXJ0eSAoT3JrdG9ldGVyLCAxNy4gRGV6IDIwMDYsIDE0OjIyOjQyKToKfiMhIHJuPVplc3N0cmEgcnQ9MTE2NjM1OTg4NyByZz1zY2htYXJybgp+IyEgdGlkPTExNjYyMTg4ODcKU29uZGVybGljaCBzY2huZWxsIHZlcm11dGxpY2ggZWJlbmZhbGxzIG5pY2h0Li4uIGFiZXIgZXMgd2FlcmUgbWFsIGV0d2FzCmFic29sdXQgdW5nZXdvZWhubGljaGVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIG9kZXIgc28uIChBcmF0aG9ybiwgMjkuIERleiAyMDA2LCAxNTowNzozNik6CltUb2Q6TGFyc10gRWluIFNlZWJhZXIgaGF0IGdlcmFkZSBMb3JkIHVtZ2VicmFjaHQuCltUb2Q6ZWluIFNlZWJhZXJdIFdlciBzdG9lcnQgbWVpbmVuIFNjaGxhZj8KW1RvZDpFaW4gQWxjaGVtaXN0XSBKZXR6dCBtdXNzIGljaCB3aWVkZXIgZGllIFJlc3RlIHdlZ3JhZXVtZW4hCltUb2Q6ZWluIFNlZWJhZXJdIEphLCBzb3JyeS4uLmFiZXIgaWNoIHdhciBuaWNodCBhbGxlaW4gU2NodWxkIQoKW0JlaWxlaWQ6QmFuYW5lXSA6KAoKW0FsbGdlbWVpbjpMb3R0YV0gSGFidCBJaHIgc2Nob24gZ2Vob2VydC4uLiBMb3JkIGhhdCBtaXIgZm9sZ2VuZGUgTmV1aWdrZWl0CltBbGxnZW1laW46TG90dGFdIGJlcmljaHRldDogTG90dGEsIGljaCBoYWJlIG1pciB2b3JnZW5vbW1lbiBuaWNodCBtZWhyIHp1CltBbGxnZW1laW46TG90dGFdIHN0ZXJiZW4uCltBbGxnZW1laW46TG9yZF0gZGFzIGhhbHRlIGljaCBmdWVyIGVpbiBHZXJ1ZWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmltbSBhbGxlcyB3ZW5uIGRhcyBrZWluIGVpbmRldWR0aWdlcyBaZWljaGVuIGlzdCAoU3JhYmksICAyLiBKYW4gMjAwNywgMTU6NDA6MjYpOgpab29rICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKRHUgZXJob2xzdCBEaWNoIGV0d2FzLgoKWm9vaywgbmltbXMgbWlyIG5ldCB1ZWJlbCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBJZGVlIGZ1ZXIgZWluIG5ldWVzIEVyYnJlY2h0IChHcmltbWJvcm4sICAzLiBKYW4gMjAwNywgMTE6NDc6MTkpOgp+IyEgb249Wm9vayBvdD0xMTY3ODIwMDI1IG9nPWRpc2t1c3Npb24KfiMhIHJuPVpvb2sgcnQ9MTE2NzgxOTQwMiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTE2Nzc2NjYyNQoiRGFzIGlzdCAuLiBuYXR1ZXJsaWNoIHZvZWxsaWcgdW5yaWNodGlnLiBJY2ggaGFiZSBlaW5lbiB6aWVtbGljaCBncm9zc2VuCltzaWMhXSIKCldlciBiZWhhdXB0ZXRlIER1IGhhZXR0ZXN0IGVpbmVuIEtsZWluZW4/IDspCgpaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogSWRlZSBmdWVyIGVpbiBuZXVlcyBFcmJyZWNodCAoR3JpbW1ib3JuLCAgMy4gSmFuIDIwMDcsIDExOjQ3OjU1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTY3ODIxMjM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2Nzc2NjYyNQpTZWl0IGljaCBkYXMgbGV1Y2h0ZW5kcm90ZSBGZXJyYXJpLU5vdGVib29rIGhhYmU6IE5pZW1hbmQgbWVoci4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBJZGVlIGZ1ZXIgZWluIG5ldWVzIEVyYnJlY2h0IChab29rLCAgMy4gSmFuIDIwMDcsIDE1OjIxOjM3KToKfiMhIHJuPU9nbyBydD0xMTY3ODMzODE4IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTY3NzY2NjI1CldhcyBqYSB3aWVkZXIgZGllIEZyYWdlIGF1ZndpcmZ0LCBvYiBlaW4gUmVnaXN0ZXJnZXJpY2h0IGVpbmUgCiJTdGV1ZXJ2ZXJtZWlkdW5nc2dlc2VsbHNjaGFmdCBtYkgiIHp1bGFzc2VuIHd1ZXJkZSBvZGVyIGF1ZiBlaW5lbgphbmRlcmVuIE5hbWVuIGJlc3RlaGVuIHd1ZXJkZS4gOykgWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSWRlZSBmdWVyIGVpbiBuZXVlcyBFcmJyZWNodCAoRWxqbywgIDUuIEphbiAyMDA3LCAxMTowOToxNCk6Cn4jISBybj1ab29rIHJ0PTExNjc4MzQwOTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTY3NzY2NjI1Ck9ya3RvZXRlcnMgc3RpbmtyZWljaGVyIFBhcGEgaGF0IGFsbGVzIGRlbSBhbmRlcmVuIC0gd2VuaWdlciBuZXJ2dG9ldGVuZGVtIC0KU29obiB2ZXJlcmJ0LCBPcmt0b2V0ZXIga29tbXQganVyaXN0aXNjaCBkYWdlZ2VuIG5pY2h0IGFuIHVuZCB2ZXJzdWNodCBlcyBudW4KYXVmIGFuZGVyZW0gV2VnLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IElkZWUgZnVlciBlaW4gbmV1ZXMgRXJicmVjaHQgKEdyaW1tYm9ybiwgIDUuIEphbiAyMDA3LCAxMToxNDoyNyk6Cn4jISBybj1FbGpvIHJ0PTExNjc5OTE3NTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTY3NzY2NjI1ClRqYS4gRGFyZiBpY2ggRGljaCBtaXQgZGVtIFBoYWVub21lbiBkZXMgUGZsaWNodGVyYnRlaWxzIGJla2FubnQgbWFjaGVuPyBXZW5uCm1laW4gVmF0ZXIgbWVocmZhY2hlciBNaWxsaWFyZGFlciB3YWVyZSB1bmQgbWljaCBiaXMgYXVmIGRlbiBQZmxpY2h0dGVpbAplbnRlcmJlbiB3dWVyZGUgLSBvaywgZmFtaWxpYWVyIHdhZXJlIGRhcyB0cmF1cmlnLCBhYmVyIGZpbmFuemllbGwgaW1tZXIgbm9jaAprZWluIEdydW5kIHp1ciBCZXNjaHdlcmRlLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBJZGVlIGZ1ZXIgZWluIG5ldWVzIEVyYnJlY2h0IChFbGpvLCAgNS4gSmFuIDIwMDcsIDExOjE1OjE3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTY3OTkyMDY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2Nzc2NjYyNQpXYXIgamEga2xhciwgZGFzcyBHcmltbWJvcm4gZGllc2UgZWluZGV1dGlnIGFscyBibG9lZGVzIEdlc2Nod2FldHogZXJrZW5uYmFyZQpBdXNzYWdlIHdpZWRlciB2ZXJzdWNodCBtaXQgV2lzc2VuIHp1IGJlcmVpY2hlcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBJZGVlIGZ1ZXIgZWluIG5ldWVzIEVyYnJlY2h0IChHcmltbWJvcm4sICA1LiBKYW4gMjAwNywgMTE6MjE6MzQpOgp+IyEgcm49RWxqbyBydD0xMTY3OTkyMTE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2Nzc2NjYyNQpKYSwgYXVjaCB3ZW5uIGdsZWljaCBkaWUgendlaXRlIFplaWxlIGRlcyBBcnRpa2VscyAoaGludGVyIGRlbSAiKCIpIGRhcwphbmdlZGV1dGV0IGhhdCwgZ2ViZSBpY2ggaGFsdCBkaWUgSG9mZm51bmcgbmljaHQgYXVmIGdlbmVyZWxsIGRpZSBXZWx0IHp1CnZlcmJlc3Nlcm4uIEF1Y2ggd2VubiBkYXMgaW0gRWluemVsZmFsbCBhdXNzaWNodHNsb3MgaXN0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBJZGVlIGZ1ZXIgZWluIG5ldWVzIEVyYnJlY2h0IChab29rLCAgNS4gSmFuIDIwMDcsIDE0OjE5OjAxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTY3OTkyNDk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2Nzc2NjYyNQpOYWphLCBlcyBnaWJ0IGF1Y2ggTGFlbmRlciwgaW4gZGVuZW4gZGFzIEVyYnJlY2h0IGtlaW5lbiBQZmxpY2h0dGVpbAprZW5udC4uLiAKCloKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IElkZWUgZnVlciBlaW4gbmV1ZXMgRXJicmVjaHQgKEdyaW1tYm9ybiwgIDUuIEphbiAyMDA3LCAxNDo0NTo1MCk6Cn4jISBybj1ab29rIHJ0PTExNjgwMDMxNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTY3NzY2NjI1CkRhcyBiZXp3ZWlmZWwgaWNoIG1hbCBmdWVyIERldXRzY2hsYW5kLiBGYWxscyBEdSBhbGxlcmRpbmdzICJTdGFhdGVuIiBzdGF0dAoiTGFlbmRlciIgbWVpbnN0IGhhc3QgRHUgdmVybXV0bGljaCByZWNodC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogSWRlZSBmdWVyIGVpbiBuZXVlcyBFcmJyZWNodCAoTXVhZGliLCAgNS4gSmFuIDIwMDcsIDE5OjMzOjA3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTY4MDA0NzUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2Nzc2NjYyNQpvaCBoYWJlbiBsYWVuZGVyIGVpbiBlaWdlbmVzIGVyYnJlY2h0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IElkZWUgZnVlciBlaW4gbmV1ZXMgRXJicmVjaHQgKEdyaW1tYm9ybiwgIDUuIEphbiAyMDA3LCAyMTowMjowNCk6Cn4jISBybj1NdWFkaWIgcnQ9MTE2ODAyMTk4NyByZz1zY2htYXJybgp+IyEgdGlkPTExNjc3NjY2MjUKV2llIGdlc2FndCwgZnVlciBEZXV0c2NobGFuZCB3YWVyZSBtaXIgZGFzIHNlaHIgbmV1LiBGdWVyIGFuZGVyZSBTdGFhdGVuIGthbm4KaWNoIGRhcyBuaWNodCBhdXNzY2hsaWVzc2VuLiBab29rIHNjaGVpbnQgZGEgbWVociB6dSB6dSB3aXNzZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNdWRsaWItUmVsZWFzZSAzLjIuOTkgKFBlcmRpdGEsICA3LiBKYW4gMjAwNywgMTk6MTk6NTcpOgp+IyEgcm49WmVzc3RyYSBydD0xMTY4MTc2MDQ0IHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTY4MTc2MDQ0CmtsaW5ndCAuLi4gdG9sbC4KUGVyZGl0YSB2ZXJzdGVodCBudXIgQmFobmhvZiA7LSkKKHdhciBqYSBhdWNoIG5pY2h0IGZ1ZXIgbWljaCBnZWRhY2h0LCBpY2ggd2Vpc3MuIERpZSBSdWJyaWsgc3RpbW10IHNjaG9uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbHVlZ3QuLi4gKEdub21lLCAgOC4gSmFuIDIwMDcsIDAwOjIxOjIwKToKd2llIGdlZHJ1Y2t0LiA6KQoKPiB6ZWlnZQoKICAxLiAyIGVpbmthcmFldGlnZSBTbWFyYWdkZSAgICAgMjEwMCB8ICAgMi4gNSBlaW5rYXJhZXRpZ2UgQXF1YW1hcmluZSAgIDUyNTAKICAzLiA2IGVpbmthcmFldGlnZSBPa3RhcmluZSAgICAgNjMwMCB8ICAgNC4gNiBlaW5rYXJhZXRpZ2UgUnViaW5lICAgICAgIDYzMDAKICA1LiA0IGVpbmthcmFldGlnZSBTYXBoaXJlICAgICAgNDIwMCB8ICAgNi4gMyBlaW5rYXJhZXRpZ2UgVG9wYXNlICAgICAgIDMxNTAKICA3LiBFaW4ga2xlaW5lcyBFZGVsc3RlaW5zYWVjICAgICA5MCB8ICAgOC4gRWluIExpY2h0aGVsbSAgICAgICAgICAgICAgIDE1MDAKICA5LiBFaW4gU3BlZXIgICAgICAgICAgICAgICAgICAgMjQwMCB8ICAxMC4gRWluIExlZGVycGFuemVyICAgICAgICAgICAgIDI0MDAKIDExLiBFaW4gTGVkZXJoZWxtICAgICAgICAgICAgICAgIDUyNSB8ICAxMi4gRWluIExpY2h0cGFuemVyICAgICAgICAgICAgIDYwMDAKIDEzLiBFaW5lIEZhY2tlbCAgICAgICAgICAgICAgICAgICA3NSB8ICAxNC4gRWluZSBMZWRlcmphY2tlICAgICAgICAgICAgICA2MDAKIDE1LiBFaW5lIFNjaGF1ZmVsICAgICAgICAgICAgICAgIDUyNSB8ICAxNi4gRWluIFNlaWwgICAgICAgICAgICAgICAgICAgICAgNDUKIDE3LiBFaW5lIGxlZXJlIEdlbGRib2Vyc2UgICAgICAgIDI0MCB8IAoKPiBmcmFnZSByb2dhYXIgbmFjaCBydWJpbgpSb2dhYXIgc2FndDogUnViaW5lIGZ1ZWhyZSBpY2ggbmljaHQuCgpzb3NvLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp1ZmFsbD8gKENoYWdhbGwsICA4LiBKYW4gMjAwNywgMjA6NDE6MjUpOgp+IyEgb249Q2hhZ2FsbCBvdD0xMTY4Mjg1MjExIG9nPW1lZ2FzY2htYXJybgpEdSBzYWdzdDogcGFydHltb25zdGVyIGdpYiBhbGxlbiBlaXMKQmV0dGkgaXNzdCBlaW5lbiBrb2VzdGxpY2hlbiBLZXRvcy1LZWtzLgpEYXMgUGFydHltb25zdGVyIGdpYnQgTWFoYXJldCBlaW4gU29mdGVpcy4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IFBlcmRpdGEgZWluIFNvZnRlaXMuCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBEaXIgZWluIFNvZnRlaXMuCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBUb20gZWluIFNvZnRlaXMuCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBSb3NpZSBlaW4gU29mdGVpcy4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IE1heCBlaW4gU29mdGVpcy4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IFN1c2FubmUgZWluIFNvZnRlaXMuCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBCZXR0aSBlaW4gU29mdGVpcy4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IEFsYm9pbiBlaW4gU29mdGVpcy4KCippc3MgZWlzCld1bmRlcnZvbGwgZ3J1ZW4sIHdpZSBlaW5lIHNhZnRpZ2UgZ2VzdW5kZSBXYWxkd2llc2UsIHNvIGd1dCBzY2htZWNrdApkaWVzZXMgZmFudGFzdGlzY2hlIFdhbGRtZWlzdGVyZWlzLiBEdSBmdWVobHN0IERpY2ggc2Nob24sIHdpZSBlaW4KZWNodGVyIFdhbGRtYWdpZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVHJlZmZlbi9TdGFtbXRpc2NoIGltIFJoZWlubGFuZC9Qb3R0IChIdXJheHByYXgsIDEyLiBKYW4gMjAwNywgMjA6NDE6NTApOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTExNjg2MzAyOTYgcmc9dHJlZmZlbgp+IyEgdGlkPTExNjg0NzY2MjkKPmlucyBXZWlzc2JyYWV1Li4uIChXZWl6ZW4pQmllciB2b20gRmFzcwpodWksIGluIGtvZWxuIGdpYnQgZXMgYXVjaCBiaWVyLCBuaWNodCBudXIgZGFzIGJpZXJhZWhubGljaGUgZ2V0cmFlbmsgbmFtZW5zCmtvZWxzY2g/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBUcmVmZmVuL1N0YW1tdGlzY2ggaW0gUmhlaW5sYW5kL1BvdHQgKEFtYXJ5bGxpcywgMTIuIEphbiAyMDA3LCAyMDo0MzoxMik6Cn4jISBybj1IdXJheHByYXggcnQ9MTE2ODYzMDkxMCByZz1zY2htYXJybgp+IyEgdGlkPTExNjg0NzY2MjkKU2VsYnN0dmVyZnJlaWxpY2guIFdhcnVtLCBnbGF1YnN0IER1LCBoZWJlIGljaCBkYXMgc28gaGVydm9yPyA7KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVHJlZmZlbi9TdGFtbXRpc2NoIGltIFJoZWlubGFuZC9Qb3R0IChIdW1uaSwgMTIuIEphbiAyMDA3LCAyMDo0NToxMyk6Cn4jISBybj1IdXJheHByYXggcnQ9MTE2ODYzMDkxMCByZz1zY2htYXJybgp+IyEgdGlkPTExNjg0NzY2MjkKSW4gS29lbG4gZ2VicmF1dGVzIHVuZCBhdWNoIGRvcnQgYXVzZ2VzY2hlbmt0ZXMgQmllciwgd2llIGVzIGRhcyBpbiBkZXIKTWFsem11ZWhsZSBvZGVyIGltIFBhZWZmZ2VucyBnaWJ0LCBkYXp1IGVpbmUgb3JkZW50bGljaGUgS29lbG5lciBNYWhsemVpdCBpc3QKZWNodCB3YXMgZmVpbmVzIHVuZCBzY2htZWNrdCBnYW56IGFuZGVycywgYWxzIEZydWVoLUtvZWxzY2ggYXVzIGRlciBLaXN0ZSwgZGFzCm1hbiBpcmdlbmR3byBpbiBIYW1idXJnIHRyaW5rdC4KCldpcmtsaWNoLiBadWhhdXNlIGthdWYgaWNoIGF1Y2ggbmllIEtvZWxzY2gsIGFiZXIgaW4gS29lbG4gZ2Vob2VydHMgZWluZmFjaApkYXp1IHVuZCBzY2htZWNrdCB2aWVsIGJlc3Nlci4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBUcmVmZmVuL1N0YW1tdGlzY2ggaW0gUmhlaW5sYW5kL1BvdHQgKEh1cmF4cHJheCwgMTIuIEphbiAyMDA3LCAyMDo1NToxMSk6Cn4jISBybj1IdW1uaSBydD0xMTY4NjMxMTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2ODQ3NjYyOQpGYWxscyB3aXIgdW5zIGluIEtvZWxuIHRyZWZmZW4sIHByb2JpZXJlIGljaCBnZXJuZSBlaW5lIG9yZGVudGxpY2hlIEtvZWxuZXIKTWFobHplaXQgKHdvcmluIGJlc3RlaHQgZGllPykgaW5rbHVzaXZlIEtvZWxzY2guCgpXYXMgYW5kZXJzd28gdmVybWFya3RldCB3aXJkIGlzdCBvZnQgbmljaHQgZGllIGVjaHRlIHRyYWRpdGlvbiwgZGFzIHdlaXNzIGljaAphbHMgTXVlbmNobmVyIGd1dCBnZW51Zy4gTG9ld2VuYnJhZXUgaXN0IHNjaGxpZXNzbGljaCBhdWNoIGtlaW4gb3JkZW50bGljaGVzCmJheXJpc2NoZXMgQmllci4KCkh1cmF4LCBkZXIgbnVyIGVpbiB3ZW5pZyBsYWVzdGVybiB3b2xsdGUgdW5kIGRlbSBLb2VsbiBiZWkgc2VpbmVtIEt1cnpiZXN1Y2gKYWxzIFN0YWR0IGd1dCBnZWZhbGxlbiBoYXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmxhY2guIFVuZCBrYWx0LiAoQmFtYnVsa28sIDE1LiBKYW4gMjAwNywgMDk6MjU6MjIpOgp+IyEgcm49Um9uZGEgcnQ9MTE2ODgwOTIxOSByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMTY4ODA5MjE5CkhtbSwgaWNoIGdsYXViZSwgZGFzcyBkZXIgRmFocnR3aW5kIGJlaSAiRmFzdC1MaWNodGdlc2Nod2luZGlna2VpdCIgc2VociBzZWhyCnN0YXJrIHdhZXJtdC4uLi4uCgpCYW1idWxrbwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGbGFjaC4gVW5kIGthbHQuIChHbG9pbnNvbiwgMTUuIEphbiAyMDA3LCAwOTozMjowMCk6Cn4jISBybj1CYW1idWxrbyBydD0xMTY4ODQ5NTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2ODgwOTIxOQpEdSBtZWluc3QgZGFzIE5ld3RvbnNjaGUgQWJrdWVobHVuZ3NnZXNldHogZ2lsdCBhdWNoIG51ciBndXQgZnVlciA8PGM/IEdpYnQgZXMKZGEgYmVzb25kZXJlIEdydWVuZGUgZnVlciBkZWluZSBBbm5haG1lIG9kZXIgc2V0enQgZHUgZGVuIEZha3RvciBkZXIgUmVpYnVuZwpvZGVyIEZhaHJ0d2luZHRlbXBlcmF0dXIgbnVyIHp1IGhvY2ggYW4/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRmxhY2guIFVuZCBrYWx0LiAoQmFtYnVsa28sIDE1LiBKYW4gMjAwNywgMDk6Mzk6MjkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE2ODg0OTkyMCByZz1zY2htYXJybgp+IyEgdGlkPTExNjg4MDkyMTkKTnVuamEsIGRhcyBTcGFjZSBTaHV0dGxlIGhhdCBtZWluZXMgV2lzc2VucyBuYWNoIGVpbiBIaXR6ZXNjaGlsZCwga2VpbgpLYWVsdGVzY2hpbGQuIEFiZXIgZGFzIFNwYWNlIFNodXR0bGUgZmxpZWd0IGphIGF1Y2ggbWl0IHY8PGMuIERhaGVyIGhhYmUgaWNoCmVpbmUgZ2V3YWd0ZSBJbnRlcnBvbGF0aW9uIGVpbmdlYmF1dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZsYWNoLiBVbmQga2FsdC4gKEdsb2luc29uLCAxNS4gSmFuIDIwMDcsIDA5OjQ2OjE3KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTExNjg4NTAzNjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTY4ODA5MjE5CkRhcyBpc3QgamEgYXVjaCBuaWNodCBhdXMgS2FmZmVlLCBuaWNodD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGbGFjaC4gVW5kIGthbHQuIChCYW1idWxrbywgMTUuIEphbiAyMDA3LCAwOTo0ODowMik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTY4ODUwNzc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2ODgwOTIxOQpBbHNvIGR1IGdsYXVic3QsIGRhc3MgMjAwIG1sIEthZmZlZSwgZGllIG1pdCBkZXIgR2VzY2h3aW5kaWdrZWl0IGRlcyBTcGFjZQpTaHV0dGxlcyBpbiBkaWUgRXJkYXRtb3NwaGFlcmUgZWludHJpdHQsIHNpY2ggYWJrdWVobGVuPyBEYW5uIHNjaGxhZyBkYXMgZGVyCk5BU0EvRVNBIG1hbCBhbHMgbmV1ZXMgSGl0emVzY2hpbGQgdm9yLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRmxhY2guIFVuZCBrYWx0LiAoR2xvaW5zb24sIDE1LiBKYW4gMjAwNywgMDk6NTE6MTYpOgp+IyEgcm49QmFtYnVsa28gcnQ9MTE2ODg1MDg4MiByZz1zY2htYXJybgp+IyEgdGlkPTExNjg4MDkyMTkKQmVpIGRlciBFcnpldWd1bmcgdm9uIFZlcmR1bnN0dW5nc2thZWx0ZSBuaW1tdCBlcyBrcmFlZnRpZyBUZWlsY2hlbiBtaXQsIGRhcwppc3QgZGVyIE5hc2EgYmVrYW5udC4gQWJlciB3ZW5uIGR1IGdlbnVnIEthZmZlZSBwcm9kdXppZXJlbiBrYW5uc3QsIHdpcmQgZGllCk5hc2Egc2ljaGVyIGdlcm4gZHJhdWYgZWluZ2VoZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRmxhY2guIFVuZCBrYWx0LiAoQmFtYnVsa28sIDE1LiBKYW4gMjAwNywgMTA6MTE6MjQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE2ODg1MTA3NiByZz1zY2htYXJybgp+IyEgdGlkPTExNjg4MDkyMTkKQWxzbyBpc3QgZGVpbmVyIE1laW51bmcgbmFjaCwgZGVyIEthZmZlZSwgZGVyIG51biBhbHMgV2Fzc2VyZGFtcGYgZXhpc3RpZXJ0CmthZWx0ZXIgYWxzIHZvcmhlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEZsYWNoLiBVbmQga2FsdC4gKEdsb2luc29uLCAxNS4gSmFuIDIwMDcsIDE2OjE0OjE0KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTExNjg4NTIyODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTY4ODA5MjE5CkRhcyBzcGllbHQgZnVlciBkZW4gS2FmZmVlIGluIGRlciB2b24gZW50Z2VnZW5rb21tZW5kZW4gQXRvbWVuIG9obmVoaW4gc2Nob24KemVyc2llYnRlbiBUYXNzZSBrZWluZSBSb2xsZS4gQXVzc2VyZGVtIGthZW1lIGVzIHN0YXJrIGF1ZiBkZW4gRmFocnR3aW5kIGFuLgpEZXIgVXJzcHJ1bmdzc2NocmVpYmVyIGhhdHRlIG1pdCBzZWluZXIgQmVtZXJrdW5nIHZvcmF1c2dlc2V0enQsIGRhc3MgZGllc2VyCmt1ZWhsIGdlbnVnIGlzdCB1bSBrZWluZSBFbmVyZ2llIGFuIGRlbiBLYWZmZWUgYWJ6dWdlYmVuLiBKZXR6dCBtdXNzdCBkdSBudXIKbm9jaCBlaW4gTW9kZWxsIGJhdWVuIGRhcyBkaWUgUmVpYnVuZ3N3YWVybWUgYW4gZGVyIFRhc3NlIG1pdCBkZXIgZGVtIEthZmZlZQplbnR6b2dlbmVuIEVuZXJnaWUgYXVmcmVjaG5ldCB1bSBoZXJ1YXN6dWZpbmRlbiBvYiBlaW4gS2FmZmVldGFzc2Vuc2h1dHRsZSBpbgplaW5lbSB1bmJla2FubnRlbiBGYWhydHdpbmQgaW5zZ2VzYW10IG51biBrdWVobGVyIG9kZXIgd2Flcm1lciB3aXJkLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEZsYWNoLiBVbmQga2FsdC4gKE11YWRpYiwgMTUuIEphbiAyMDA3LCAxNzozNDowNik6Cn4jISBybj1HbG9pbnNvbiBydD0xMTY4ODc0MDU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE2ODgwOTIxOQp3ZW5uIGlociBzaHV0dGxlcyBiYXV0LCBibGVpYmVuIGRpZSBhc3Ryb25hdXRlbiBhbSBib2RlbgprYWZmZWVzY2hvY2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBGbGFjaC4gVW5kIGthbHQuIChHbG9pbnNvbiwgMTUuIEphbiAyMDA3LCAxNzozNzo1NSk6Cn4jISBybj1NdWFkaWIgcnQ9MTE2ODg3ODg0NiByZz1zY2htYXJybgp+IyEgdGlkPTExNjg4MDkyMTkKRGFzIHdhZXJlIHdvaGwgYmVzc2VyIHNvLiBBbSBFbmRlIHZlcndlbmRldCBkaWUgTkFTQSBlaCBudXIgc2NobGVjaHQKZ2Vyb2VzdGV0ZSBCb2huZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQYXNza29udHJvbGxlIChHcmltbWJvcm4sIDIyLiBKYW4gMjAwNywgMTA6Mjk6MTApOgp+IyEgb249R3JpbW1ib3JuIG90PTExNjk0NTc4OTAgb2c9d2l0emUKfiMhIHJuPVpvb2sgcnQ9MTE2OTQ1NzUwOCByZz13aXR6ZQp+IyEgdGlkPTExNjk0NTczNzYKV2Vpc3MgaWNoIHdpZSBzaWNoIHVuc2VyZSBwYXJhbWlsaXRhZXJpc2NoZW4gVHJ1cHBlbiBkaWVzZXMgSmFociBuZW5uZW4/IAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBQYXNza29udHJvbGxlIChHcmltbWJvcm4sIDIyLiBKYW4gMjAwNywgMTA6Mjk6MTIpOgp+IyEgb249Q3JvZnQgb3Q9MTE2OTQ1ODAxNCBvZz13aXR6ZQp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNjk0NTc4OTAgcmc9d2l0emUKfiMhIHRpZD0xMTY5NDU3Mzc2ClNlaXQgMS41eSBCdW5kZXNwb2xpemVpLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFBhc3Nrb250cm9sbGUgKEdyaW1tYm9ybiwgMjIuIEphbiAyMDA3LCAxMDozMDowNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE2OTQ1ODE1MiByZz1zY2htYXJybgp+IyEgdGlkPTExNjk0NTczNzYKTmEsIGJpcyBpY2ggbWlyIGRhcyBnZW1lcmt0IGhhYmUgc2luZCBkaWUgZGFubiBhdWNoIHdpZWRlciB1bWJlbmFubnQuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJY2V3YXJzIC0gZGllIG5hZWNoc3RlLiAoR25vbWUsIDI2LiBKYW4gMjAwNywgMTg6MDM6NTIpOgp+IyEgcm49UmVxdWllbSBydD0xMTY5ODI3NzM2IHJnPXd3dwp+IyEgdGlkPTExNjk4Mjc3MzYKaXN0IGRhcyBqZXR6dCBhYi0gb2RlciBhbnRpd2VyYnVuZz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSWNld2FycyAtIGRpZSBuYWVjaHN0ZS4gKEdsb2luc29uLCAyNi4gSmFuIDIwMDcsIDE4OjQ2OjIyKToKfiMhIHJuPUdub21lIHJ0PTExNjk4MzEwMzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTY5ODI3NzM2CkFudGl3ZXJidW5nIHdhZXJzIHdlbm4gUmVxdWllbSBzYWdlbiB3dWVyZGUsIGRhc3Mgd2lyIGRpZXNlIFJ1bmRlIG1hZWNodGlnIGF1ZgpkZW4gU2FjayBiZWtvbW1lbiBoYWJlbiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvbGwgZGVtIGtvbmtyZXQgU3lzdGVtIC4uLiAoTWlyYWthLCAyOC4gSmFuIDIwMDcsIDIzOjAwOjU3KToKKktBV1VNTSEqCkRpZSBad2VyZ2Vua2luZGVyIGxhY2hlbiB2ZXJnbnVlZ3QuCkVpbiBSdWRlbCBad2VyZ2Vua2luZGVyIGZhZWxsdCB1bnRlciBkZW4gd3VjaHRpZ2VuIEhpZWJlbiB2b24gZWluZXIKYmV6YXViZXJuZGVuIEtvbW1hbmRhbnRpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpZSBqZXR6dCwgVGFyYW5pcz8gKFBlcmRpdGEsIDI5LiBKYW4gMjAwNywgMTk6MjQ6MjIpOgpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogS2lubmluZ3MsIGljaCBiaW4gTVVlREUhCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiB0dXQgd2FzIQpEdSB0ZWlsc3QgRGVpbmVuIEZyZXVuZGVuIG1pdDogaWNoIGthbm4gZG9jaCBuaWNodCBKRVRaVCBzY2hvbiBpbnMgQmV0dCBnZWhlbiEKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGRhbm4gd2FjaCBpY2ggamEgbWl0dGVuIGluIGRlciBOYWNodCB3aWVkZXIKRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGF1Zi4uLgpUYXJhbmlzIHRlaWx0IERpciBtaXQ6IEFiZXIgbWl0IDItMyBMZXV0ZW4gZ2VodCBkYXMgZGFubiBkb2NoIGdhbnogZ3V0CldpZSBqZXR6dD8KCihvaywgd2FyIGVpbiBiaXNzY2hlbiBhdXMgZGVtIFp1c2FtbWVuaGFuZyBnZXJpc3NlbiwgaWNoIGdlYidzIGphIHp1ICpnKikKUGVyZGl0YSBncmluc3QgaW1tZXIgbm9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uIChHbG9pbnNvbiwgMzAuIEphbiAyMDA3LCAyMzoxMDo0Myk6Cj4gWzxNYXN0ZVI+OlRhcmFuaXMgbGFlc3N0IGRpZSBFYmVuZSAnUmFkaW8nIGVudHN0ZWhlbi5dCkR1IHJ1ZnN0OiBUVU5URSEKPiBbPE1hc3RlUj46VGFyYW5pcyB2ZXJsYWVzc3QgYWxzIExldHp0ZXIgZGllIEViZW5lICdSYWRpbycsIHdvcmF1ZiBkaWVzZSBzaWNoCiAgICAgICAgICBpbiBlaW5lbSBCbGl0eiBva3RhcmluZW4gTGljaHRzIGF1ZmxvZXN0Ll0KCgpBbiBkZW4genVzYWV0emxpY2hlIFByb21wdHMgaXN0IFplc3N0cmEgc2NodWxkIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdpa2lwZWRpYSAoR2xvaW5zb24sICAxLiBGZWIgMjAwNywgMDA6MjM6NDcpOgp+IyEgcm49QW5hdG9sIHJ0PTExNzAyODQ5NDAgcmc9d3d3Cn4jISB0aWQ9MTE3MDE4ODM2MApEaWUgRmxhbWV3YXJzIGRhIHNpbmQgb2Z0IGJlc3NlciBhbHMgYmFzaC5vcmcuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFscyBTcGllbGVyIGhhdHRlbiB3aXIgImZhbmd3aXJmIiAoSGlnaGxhbmRlciwgIDEuIEZlYiAyMDA3LCAwODo1NzoyNik6Cn4jISBybj1ab29rIHJ0PTExNzAyNzYzNDIgcmc9bWFnaWVyLmZ1bmRzdHVlY2tlCn4jISB0aWQ9MTE3MDI3NjM0MgpXb3cuIGZhbmd3aXJmPyBTb2xsdGUgbWFuIGRhcyBEaW5nIG5pY2h0IGVyc3Qgd2VyZmVuIHVuZCBkYW5uIGZhbmdlbj8KCkhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUmVib290cyBoZXV0ZSAoWm9vaywgIDUuIEZlYiAyMDA3LCAxNjoxMTo0MSk6Cn4jISBybj1NZXNpcmlpIHJ0PTExNzA2ODgyODMgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMTcwNjg0MjU2Ck5hLCBhYmVyIEhhbGxvLiBXbyBkZW5uIHNvbnN0PyA7KSAKCloKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFBhcnR5PyE/IT8gKEdyaW1tYm9ybiwgIDUuIEZlYiAyMDA3LCAyMzowODozNik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTE3MDcxMzMwOCBvZz1wYXJ0eQp+IyEgcm49Q3JvZnQgcnQ9MTE3MDcxMjkwNyByZz1wYXJ0eQp+IyEgdGlkPTExNzA1MDgzMTEKV2llIHN0ZWxsc3QgRHUgRGlyIGRhcyB2b3I/IEdpYnQgc2NobGllc3NsaWNoIGltIG11ZCBrZWluZSBGcmF1ZW4sIGRpZSBkaWUKU2VrdGZsYXNjaGUgYW0gUmFjayB6ZXJkZXBwZXJuIGtvZW5udGVuLiAKQXVzc2VyZGVtIGlzdCBLb2VsbiBsYXVzaWcgcGVyIEZsdWd6ZXVnIHp1IGVycmVpY2hlbi4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFBhcnR5PyE/IT8gKENyb2Z0LCAgNS4gRmViIDIwMDcsIDIzOjA5OjI2KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTcwNzEzMzE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3MDUwODMxMQpBbWFyeWxsaXMgaXN0IGtlaW5lIEZyYXU/ICBPZWhtLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFBhcnR5PyE/IT8gKEdyaW1tYm9ybiwgIDUuIEZlYiAyMDA3LCAyMzoxMzozNyk6Cn4jISBybj1Dcm9mdCBydD0xMTcwNzEzMzY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3MDUwODMxMQpOYXR1ZXJsaWNoIG5pY2h0LiBXZWlibGljaGVyIENoYXJha3Rlciwgb2ssIGFiZXIgRnJhdT8gS2FubiBuaWNodCBzZWluLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXVhZGliIHN0ZWxsdCBaZXNzdHJhIGFuIGRlbiBQcmFuZ2VyIChPcmt0b2V0ZXIsICA4LiBGZWIgMjAwNywgMjM6MTk6MTQpOgp+IyEgcm49TXVhZGliIHJ0PTExNzA5NjM4NTcgcmc9cHJhbmdlcgp+IyEgdGlkPTExNzA5NjM4NTcKSG9mZmVudGxpY2ggc3RlaHQgZXIgbmljaHQgaW4gZWluZW0gS3JlaXMuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTXVhZGliIHN0ZWxsdCBaZXNzdHJhIGFuIGRlbiBQcmFuZ2VyIChHcmltbWJvcm4sICA5LiBGZWIgMjAwNywgMDY6MDM6MzgpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNzA5NzMxNTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTcwOTYzODU3CkFjaCB3YXMsIE11YWRpYiBoYXQgbGVkaWdsaWNoICJhbiBkZW4gUHJhbmdlciBzdGVsbGVuIiB1bmQgInZpZXJ0ZWlsZW4iIGV0d2FzCmR1cmNoZWluYW5kZXJnZWJyYWNodC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYXVmIGFsdGFyIChHcmltbWJvcm4sIDEwLiBGZWIgMjAwNywgMTI6NDA6MzkpOgp+IyEgb249Um9zaSBvdD0xMTcxMTA3NTk1IG9nPWFsbGdlbWVpbmVzCgpzdwpzCisKcQorCm8KcXVpdAorCnEKcQorCmVuZGUKKwpxCnEKKwpoaWxmZQorCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYXVmIGFsdGFyIChBbWFyeWxsaXMsIDEwLiBGZWIgMjAwNywgMTI6NDM6MDEpOgp+IyEgcm49Um9zaSBydD0xMTcxMTA3NTk1IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTE3MTEwNzU5NQpFaW4gS2xhc3Npa2VyIDspCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBWb3JyYXRzZGF0ZW5zcGVpY2hlcnVuZyAoUm9uZGEsIDEzLiBGZWIgMjAwNywgMjE6MDk6MTYpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTExNzEzOTE4NDAgcmc9d3d3Cn4jISB0aWQ9MTE3MTEzODAzNwpIRUohIFdpciBoYWJlbiBkb2NoIHN0YWVuZGlnZSBVZWJlcndhY2h1bmchIFdvIGlzc24gZGVyIDI0eDctU2hlcmlmZiwgd2VubiBtYW4KaWhuIGJyYXVjaHQ/IQoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFZvcnJhdHNkYXRlbnNwZWljaGVydW5nIChab29rLCAxMy4gRmViIDIwMDcsIDIxOjE5OjEwKToKfiMhIHJuPVJvbmRhIHJ0PTExNzEzOTczNTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTcxMTM4MDM3ClBzc3NzdCEgWi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFZvcnJhdHNkYXRlbnNwZWljaGVydW5nIChPcmt0b2V0ZXIsIDEzLiBGZWIgMjAwNywgMjE6MjI6MDIpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTExNzEzOTE4NDAgcmc9d3d3Cn4jISB0aWQ9MTE3MTEzODAzNwpTdGVsbHQgc29mb3J0IGFsbGUgV2VyYmVtYXNzbmFobWVuIGVpbiEKCk9ya1QsIHp3aW5rZXJuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFZvcnJhdHNkYXRlbnNwZWljaGVydW5nIChab29rLCAxMy4gRmViIDIwMDcsIDIxOjIzOjAxKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTcxMzk4MTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3MTEzODAzNwpuYWphLCBhdWNoIGRpZSBzcGllbGVoZXJzdGVsbGVyIHdlcmRlbiBkb2NoIGRpZSB3ZXJiZWJlbXVlaHVuZ2VuIGdlbmF1IHZvcgpkZW0gaW5rcmFmdHJldGVuIG5vY2ggbWFsIG9yZGVudGxpY2ggYXVzd2VpdGVuLiBpbnNvZmVybiBnZW5hdSBhbm5lcnNydW06Cmxhc3N0IHVucyBXRVJCRU4hIFJVRiEgTUlDSCEgQU4hISEhMTExMTEhISEhZWxmIQoKWi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5vcmRkZXJieSAoWmVzc3RyYSwgMTYuIEZlYiAyMDA3LCAwMDoyMjowMCk6Cn4jISBybj1BcmsgcnQ9MTE3MTU4MTY2MyByZz10cmVmZmVuCn4jISB0aWQ9MTE3MTU3NTY0NgpNaG1tLiBJcmdlbmR3aWUgaGFiIGljaCBkZW4gRWluZHJ1Y2ssIER1IHdpZWRlcmhvbHN0IERpY2guIDstKQp6ZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEtlbGx5YnVuZHksIDE2LiBGZWIgMjAwNywgMjM6NTQ6MzYpOgpWYW5pciB0ZWlsdCBEaXIgbWl0OiBhbHNvIGd3ZW5kdWxhIGhhdCBkYSBzaG9uIGF1ZmdlcmFldW10ClZhbmlyIHRlaWx0IERpciBtaXQ6IHVuZCBkZXIgcmVzdCBzdGlyYnQgZ2VyYWRlCjxIaWNrPiEgT2gsIFRzY2h1bGRpZ3VuZy4KW0FuZmFlbmdlcjpEZXIgQnVlcmdlcm1laXN0ZXJdIFZpZWxlbiBEYW5rIGZ1ZXIgZGFzIEtyYXV0LCBBcHN1LgpbVG9kOkxhcnNdIFR1dHN6dCBoYXQgZ2VyYWRlIFZhbmlyIHVtZ2VicmFjaHQuCltUb2Q6VHV0c3p0XSBOYSwgZGFzIHVlYmVuIHdpciBhYmVyIG5vY2htYWwgLi4uCgpVcHMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFBhcnR5PyE/IT8gKE9ya3RvZXRlciwgMTcuIEZlYiAyMDA3LCAxNjo0NToxMik6Cn4jISBybj1BbnlzaWRvcmEgcnQ9MTE3MTcxMTEwMSByZz1wYXJ0eQp+IyEgdGlkPTExNzA1MDgzMTEKSXN0IGVpbiBmYXRhbmlzdCBlaW4gZmFuYXRpc2NoZSBTYXRhbmlzdD8KCk9ya1QsIGdydWViZWxuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBld2lnZXIgR3VlcnRlbCAoWm9vaywgMTkuIEZlYiAyMDA3LCAxMDo0MTozMyk6Cn4jISBvbj1ab29rIG90PTExNzE4NzgwODcgb2c9Z2lsZGVuLnphdWJlcmVyCn4jISBybj1DaGFnYWxsIHJ0PTExNzE3NDY4OTIgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTE3MTc0Njg5Mgo+IG9kZXIgaGFsdCBlaW5pZ2UgS2FlbXBmZXIgdmVyaGVpemVuCgpHdXRlciBBbnNhdHohCgpaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNZW5nZSAoWm9vaywgMTkuIEZlYiAyMDA3LCAxNTowMjoyMik6CltBYmVudGV1ZXI6Wm9va10gV28gaXN0IGVpZ2VudGxpY2ggZGllc2UgIk1lbmdlIj8KW0FiZW50ZXVlcjpNYWhhcmV0XSBIaWVyIQo+IGdvdG8gbWFoYXJldApEaWUgSGFmZW5zdHJhc3NlIGZ1ZWhydCBpbSBPc3RlbiB6dW0gSGFmZW4gdm9uIFBvcnQgVmFpbiwgaW0gV2VzdGVuIApiZWZpbmRldCBzaWNoIGRlciBNYXJrdHBsYXR6LiBJbSBOb3JkZW4gc2llaHN0IER1IGVpbmUga2xlaW5lIEthcGVsbGUuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgd2VzdGVuIHVuZCBub3JkZW4uCk1haGFyZXQgdHJhdWVydCB1bSBpaHIgR3VtbWliYWVyY2hlbi4KCkRhbnUgd2FuZGVsdCBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KRWluZSBQb3N0a3V0c2NoZSBmYWVocnQgZG9ubmVybmQgdm9yYmVpLgoKVG9sbGUgUGFydHksIGthdW0ga29tbSBpY2gsIGdlaGVuIHNpZSA7KSAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpsZWljaHQgdmVycmVjaG5ldCAoR25vbWUsIDE5LiBGZWIgMjAwNywgMTk6NTE6MDcpOgp2b3IgZWluIHBhYXIgdGFnZW4gYmVrb21tZW46CgpIb3cgYXJlIHlvdT8gTXkgbmFtZSBpcyBOYWRlamRhLiBJIGFtIDI2IHllYXJzIG9sZC4gSSBsaXZlIGluIFJ1c3NpYSwKY2l0eSBZb3Noa2FyLU9sYS4gSSBhbSBjaGVlcmZ1bCB3b21hbiwgYW5kIGxpa2UgdG8gZG8gbWFueSB0aGluZ3MgYXMKc3BvcnQsIGNhbXBpbmcsIGdvIHRvIHRoZSBjaW5lbWEsIHRoZWF0cmUgZXRjLiBJbiBhIHdvcmQgSSBsaWtlIHRvIGRvLi4uCgpibGEgYmxhIGJsYSBibGEuLi4KClBsZWFzZSwgd3JpdGUgdG8gbWUgYmFjayBvbiBteSByZWd1bGFyIGUtbWFpbDogbmFkZWpkYXpvbG83MEBiay5ydQpIYXZlIGEgZ29vZCBkYXksCgpOYWRlamRhLgoKLS0tIHNuaXAKCmFsc28gV0VOTiBtYW4gc2Nob24gc3BhbSB1bmJlZGluZ3QgdmVyc2NoaWNrZW4gbXVzcywga2FubiBtYW4gZG9jaAp3ZW5pZ3N0ZW5zIDIwMDctMjYgcmljaHRpZyByZWNobmVuLCBvZGVyPwoKZ25PbWUgc3RvZWhudC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBsZWljaHQgdmVycmVjaG5ldCAoWm9vaywgMTkuIEZlYiAyMDA3LCAxOTo1NDoyOCk6Cn4jISBybj1Hbm9tZSBydD0xMTcxOTExMDY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3MTkxMTA2NwpXaWUgd2FyIGRhcz8gRGllIHplaG4gYmVzdGVuIEphaHJlIGVpbmVyIEZyYXUgc2luZCB6d2lzY2hlbiAyOSB1bmQgMzA/IAoKWm9vayBnZWh0IGluIERlY2t1bmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGxlaWNodCB2ZXJyZWNobmV0IChab29rLCAxOS4gRmViIDIwMDcsIDE5OjU1OjI0KToKfiMhIHJuPVpvb2sgcnQ9MTE3MTkxMTI2OCByZz1zY2htYXJybgp+IyEgdGlkPTExNzE5MTEwNjcKSWNoIHNhZyBFdWNoIG51biBuaWNodCwgd2VyIG1pY2ggbmFjaCBkZW0gQXJ0aWtlbCBhbGxlcyBhbmdlZ3JpbnN0IGhhdC4gOykKClouCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBsZWljaHQgdmVycmVjaG5ldCAoQm9pbmcsIDE5LiBGZWIgMjAwNywgMTk6NTg6MTcpOgp+IyEgcm49Wm9vayBydD0xMTcxOTExMzI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3MTkxMTA2NwpWaWVsZSBGcmF1ZW4gdmVybXV0ZSBpY2g/IDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGxlaWNodCB2ZXJyZWNobmV0IChPcmt0b2V0ZXIsIDE5LiBGZWIgMjAwNywgMTk6NTk6NDcpOgp+IyEgcm49Qm9pbmcgcnQ9MTE3MTkxMTQ5NyByZz1zY2htYXJybgp+IyEgdGlkPTExNzE5MTEwNjcKV2llIGVya2VubnQgbWFuIGRhcz8gRGllIGhhYmVuIHdpc3NlbmQgZ2Vncmluc3Q/IDspCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogbGVpY2h0IHZlcnJlY2huZXQgKE1haGFyZXQsIDE5LiBGZWIgMjAwNywgMjA6MDA6MjEpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNzE5MTE1ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTcxOTExMDY3CkZyYXVlbj8gSGllcj8gR2xhdWIgaWNoIG5pY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZ2VyYWRlIGJlaW0gUG9ydCBWYWluZXIgS2FybmV2YWwuLi4gKFBlcmRpdGEsIDE5LiBGZWIgMjAwNywgMjA6NDI6MDEpOgpEaWUgTmFycmVuIHNpbmdlbjogRGUgS2FyYXdhbmUgemllaHQgd2VpdGVyLCBkZSBTY2h1ZXR0bGVyIGhldCBEb29zY2h0LCBkZQpEaWUgTmFycmVuIHNpbmdlbjogU2NodWV0dGxlciBoZXQgRG9vc2NodCwgZGUgU2NodWV0dGxlciBoZXQgRG9vc2NodC4uLgpEdSBzcHVlcnN0LCB3aWUgZWluIFppdHRlcm4gZHVyY2ggZGFzIE1vcmdlbkdyYXVlbiBnZWh0LgoKWnUgZG9sbCBnZXNjaHVldHRlbHQsIGRlciBkdXJzdGlnZSBTY2h1ZXR0bGVyPwoqZyoKUGVyZGl0YQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGdlcmFkZSBiZWltIFBvcnQgVmFpbmVyIEthcm5ldmFsLi4uIChCb2luZywgMTkuIEZlYiAyMDA3LCAyMDo0NDoyMik6Cn4jISBybj1QZXJkaXRhIHJ0PTExNzE5MTQxMjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTcxOTE0MTIxCkVzIGdpYnQgZWluZW4gUG9ydCBWYWluZXIgS2FybmV2YWw/PyBPaCB3ZWggLi4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogZ2VyYWRlIGJlaW0gUG9ydCBWYWluZXIgS2FybmV2YWwuLi4gKFplc3N0cmEsIDE5LiBGZWIgMjAwNywgMjE6MTE6NDcpOgp+IyEgcm49Qm9pbmcgcnQ9MTE3MTkxNDI2MiByZz1zY2htYXJybgp+IyEgdGlkPTExNzE5MTQxMjEKTWFjaCBtYWwgLWIgYW4gdW5kIGtvbW0gdm9yYmVpLiA7LSkKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogZ2VyYWRlIGJlaW0gUG9ydCBWYWluZXIgS2FybmV2YWwuLi4gKE1haGFyZXQsIDE5LiBGZWIgMjAwNywgMjE6NDc6MjApOgp+IyEgcm49WmVzc3RyYSBydD0xMTcxOTE1OTA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3MTkxNDEyMQpBYmVyIG9yaWdpbmVsbGVyIEthcm5ldmFsc3J1ZjogUG9ydCBWYWluIC0gb2h3ZWghCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcHBpIGhhbHQgKE1lc2lyaWksIDIzLiBGZWIgMjAwNywgMDA6NTI6MzgpOgpFcHBpIGlzdCBhbndlc2VuZCwKdW5kIHp3YXIgdm9uOiBUdXM9aW52YWxpZC4KRWluZ2Vsb2dndCBzZWl0OiBGcmUsIDIzLiBGZWIgMjAwNywgMDA6MzY6NDQKVm9sbGVyIE5hbWU6IEJlcnNlcmtlciBFcHBpIGNhbmB0IGdldCAobm8pIHNsZWVwClJhc3NlOiBFbGYsICBHaWxkZTogQWJlbnRldXJlciAoQ2xhbiBSeXUpLCAgR2VzY2hsZWNodDogbWFlbm5saWNoCkFsdGVyOiAyODBkIDE3OjUxOjQ0LCAgIFNwaWVsZXJsZXZlbDogMTA2IChTZWhlciksICAgR2lsZGVubGV2ZWw6IDk4CkRhdHVtIGRlcyBlcnN0ZW4gTG9naW46IEZyZSwgMjAuIE9rdCAyMDAwLCAxNzoyODoyMApFLU1haWwtQWRyZXNzZTogZXBwaUB0cnZlcy5kZQpCaXNoZXIgYmVyZWl0cyA0NjggbWFsIGdlc3RvcmJlbgpQcm9qZWt0OiBNYWwgdWViZXJsZWJlbi4gOikKTWVzaSwgc3RhdW50IHdhcyBlcyBiZWkgZGVuIEFiZW50ZXVyZXJuIG5ldWVyZGluZ3MgZ2lidC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE5ldWVzIFN0YWJnaW1taWNrIChDaGFnYWxsLCAyMy4gRmViIDIwMDcsIDE5OjA2OjMwKToKfiMhIG9uPU11YWRpYiBvdD0xMTcyMjM1NDI2IG9nPWdpbGRlbi56YXViZXJlcgp+IyEgcm49QXJrIHJ0PTExNzExMTE0NzMgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTE3MDAwNjc1OAp3YXMgdW5zIHp1IGRlciBmcmFnZSBicmluZ3Q6ICJoYWJlbiB6YXViZXJlciBzZXg/IgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE5ldWVzIFN0YWJnaW1taWNrIChDaGFnYWxsLCAyMy4gRmViIDIwMDcsIDE5OjA2OjM0KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMTcyMjM5NjUwIG9nPWdpbGRlbi56YXViZXJlcgp+IyEgcm49TW9udGFudXMgcnQ9MTE3MjIzOTQ2NyByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMTcwMDA2NzU4CiJaYXViZXJoYWZ0IiB3YXIgd2VubiBtYW4gYWxzIEF1c3NlbnN0ZWhlbmRlciB2ZXJzdGFlbmRuaXNsb3MgZGVuIEtvcGYKc2NodWV0dGVsdCwgd2FlaHJlbmQgaW4gV2lya2xpY2hrZWl0IGthdW0gZXR3YXMgd2lya2xpY2ggcGFzc2llcnQsIHJpY2h0aWc/CgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBOZXVlcyBTdGFiZ2ltbWljayAoQ2hhZ2FsbCwgMjMuIEZlYiAyMDA3LCAxOTowNjozNik6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTE3MjI0OTk3NSBvZz1naWxkZW4uemF1YmVyZXIKfiMhIHJuPVZpbmNlbnQgcnQ9MTE3MjI0OTQ4OCByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMTcwMDA2NzU4Ck9oLCBhaCwgZGEgc29sbHRlIGljaCB2aWVsbGVpY2h0IG5vY2ggZWluZSBrbGVpbmUgUHJhZXppc2llcnVuZyBoaW56dWZ1ZWdlbjoKQWxsZWluZSBnaWx0IG5pY2h0Li4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOZXVlcyBTdGFiZ2ltbWljayAoQ2hhZ2FsbCwgMjMuIEZlYiAyMDA3LCAxOTowNjo1MCk6Cn4jISBvbj1WaW5jZW50IG90PTExNzIyNDk0ODggb2c9Z2lsZGVuLnphdWJlcmVyCn4jISBybj1Nb250YW51cyBydD0xMTcyMjM5NDY3IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTExNzAwMDY3NTgKSWNoIGthbm4gZGVmaW5pdGl2IGF1cyBlaWdlbmVyIEVyZmFocnVuZyBiZXN0YWV0aWdlbiwKZGFzcyBaYXViZXJlciBTZXggaGFiZW4uCgoKICAgVmluY2VudAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE5ldWVzIFN0YWJnaW1taWNrIChDaGFnYWxsLCAyMy4gRmViIDIwMDcsIDE5OjA2OjU2KToKfiMhIG9uPVNlbGV2ZW4gb3Q9MTE3MjI1MzQ3OSBvZz1naWxkZW4uemF1YmVyZXIKfiMhIHJuPU1vbnRhbnVzIHJ0PTExNzIyMzk0Njcgcmc9Z2lsZGVuLnphdWJlcmVyCn4jISB0aWQ9MTE3MDAwNjc1OApobS4gb3B0aXNjaGUgdGFldXNjaHVuZ2VuIGJlaW0gc2V4PyAtPiAiZGFzIGxpZWd0IG51ciBhbiBkZXIgcGVyc3Bla3RpdmUiIG9kZXIKbGVua3QgaWhyIGRhcywgYWVobSwgbmVubmVuIHdpciBlcyBwdWJsaWt1bSwgdm9uIGRlciBoYXVwdHNhY2hlIGFiLCB3YWVocmVuZAppaHIgdmVyc3RlY2t0IGV0d2FzIGFuZGVyZXMgbWFjaHQ/IG9kZXIgemF1YmVydCBpaHIgZWluIGthbmllbmNoZW4gYXVzIGRlcgp6ZXJzY2huaXR0ZW5lbiBqdW5nZmVyIC0gbWlzdCwgZGllc2VzIGJpbGQga3JpZWcgaWNoIG5lIHdvY2hlIG5pY2h0IG1laHIgYXVzCmRlbSBrb3BmLgp0ZXJyeSBudXR6dCBzZWxldmVuIGFscyB1bXdlZyB1bSB1ZWJlciB6YXViaXMgaGVyenV6aWVoZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE5ldWVzIFN0YWJnaW1taWNrIChDaGFnYWxsLCAyMy4gRmViIDIwMDcsIDE5OjA3OjEzKToKfiMhIG9uPU1vbnRhbnVzIG90PTExNzIyMzk0Njcgb2c9Z2lsZGVuLnphdWJlcmVyCn4jISBybj1NdWFkaWIgcnQ9MTE3MjIzNTQyNiByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xMTcwMDA2NzU4Ck5hIGtsYXIsIHVuZCB6d2FyIHphdWJlcmhhZnRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOZXVlcyBTdGFiZ2ltbWljayAoR3JpbW1ib3JuLCAyMy4gRmViIDIwMDcsIDE5OjMxOjA1KToKfiMhIHJuPUNoYWdhbGwgcnQ9MTE3MjI1NDAzMyByZz1zY2htYXJybgp+IyEgdGlkPTExNzAwMDY3NTgKLi4udW5kIGFtIER1cmNoZWluYW5kZXIgZGVyIHZlcmxlZ3RlbiBBcnRpa2VsIG1lcmt0IG1hbjogYXVjaCBzb3dhcyB3aWxsCmdlbGVybnQgc2Vpbi4gS3JhdXQgdW5kIFJ1ZWJlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTmV1ZXMgU3RhYmdpbW1pY2sgKFZpbmNlbnQsIDIzLiBGZWIgMjAwNywgMTk6MzI6NDgpOgp+IyEgcm49Q2hhZ2FsbCBydD0xMTcyMjU0MDEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3MDAwNjc1OApJY2ggc29sbHRlIGhpZXIgZXJnYWVuemVuLCBkYXNzIGljaCBkZWZpbml0aXYgd2Vpc3MgLSBhdXMgZWlnZW5lcgpFcmZhaHJ1bmcgLSBkYXNzIFphdWJlcmVyIFNleCBoYWJlbiAtIG5pY2h0IG1pdCBzaWNoIHNlbGJzdCwgc29uZGVybiBtaXQKYW5kZXJlbiAtIHVuZCBkYXNzIFphdWJlcmVyIHNvZ2FyIFNleCBtaXQgWmF1YmVyaW5uZW4gaGFiZW4sIHZvbiBkZW5lbiBlcwpsZWlkZXIgbmljaHQgc28gdmllbGUgZ2lidCwgd2FzIGVpZ2VudGxpY2ggc2NoYWRlIGlzdC4gQW5zb25zdGVuIGZyb2VobmVuClphdWJlcmVyIGF1Y2ggU2V4IG1pdCBuaWNodCB6YXViZXJuZGVuIFBhcnRuZXIvUGFydG5lcmlubmVuLgoKV2llIGdlc2FndCBpc3QgZGllIERhcnN0ZWxsdW5nIGRlciBaYXViZXJlciBoaWVyIGltIE1vcmdlbmdyYXVlbiBmZXJuCmplZ2xpY2hlciBSZWFsaXRhZXQgLSBiaXR0ZSBuaWNodCBkYXJhbiBvcmllbnRpZXJlbiwgd2VubiBlcyB1bSBkYXMKd2lrbGljaGUgTGViZW4gZ2VodC4KCiAgVmluY2VudAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE5ldWVzIFN0YWJnaW1taWNrIChNYWhhcmV0LCAyMy4gRmViIDIwMDcsIDE5OjM1OjA2KToKfiMhIHJuPVZpbmNlbnQgcnQ9MTE3MjI1NTU2OCByZz1zY2htYXJybgp+IyEgdGlkPTExNzAwMDY3NTgKVmllbGVuIERhbmsgZnVlciBkZW4gSGlud2VpcyBpbSBsZXR6dGVuIEFic2Nobml0dCwgbWlyIHd1cmRlIHNjaG9uIGdhbnogdWViZWwKYmVpIGRlciBWb3JzdGVsbHVuZywgTWFlbm5lciBpbiBTcGl0emh1ZXRlbiB1bmQgbGFuZ2VuIEtsZWlkZXJuIHd1ZXJkZW4gLi4uCm5hamEgLi4uICp3dWVyZyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBOZXVlcyBTdGFiZ2ltbWljayAoR3JpbW1ib3JuLCAyMy4gRmViIDIwMDcsIDE5OjM3OjU4KToKfiMhIHJuPVZpbmNlbnQgcnQ9MTE3MjI1NTU2OCByZz1zY2htYXJybgp+IyEgdGlkPTExNzAwMDY3NTgKU2Nob2VuLCBhYmVyIHdpbGxzdCBEdSBkZW4gZXJzdGVuIEFic2Nobml0dCBqZXR6dCBhdWYgZGFzIE1HIG9kZXIgYXVmIFJMCmJlem9nZW4gd2lzc2VuPwoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTmV1ZXMgU3RhYmdpbW1pY2sgKE1haGFyZXQsIDIzLiBGZWIgMjAwNywgMTk6Mzg6NDcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNzIyNTU4Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMTcwMDA2NzU4CkljaCB3aWxsIGdhciBuaWNodHMgZGFydWViZXIgd2lzc2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE5ldWVzIFN0YWJnaW1taWNrIChHcmltbWJvcm4sIDIzLiBGZWIgMjAwNywgMTk6Mzk6MzUpOgp+IyEgcm49TWFoYXJldCBydD0xMTcyMjU1OTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3MDAwNjc1OApEYSBoYXN0IER1IGVpbmVuIGd1dGVuIFB1bmt0LiBJY2ggemllaGUgaGllcm1pdCBtZWluZSBGcmFnZSB6dXJ1ZWNrLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTmV1ZXMgU3RhYmdpbW1pY2sgKFZpbmNlbnQsIDIzLiBGZWIgMjAwNywgMTk6NDA6MDkpOgp+IyEgcm49VmluY2VudCBydD0xMTcyMjU1NTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3MDAwNjc1OApMZXV0ZSwgbGV1dGUsIG9rYXksIG9rYXksIHdlaWwgaWNoIGdlcmFkZSB2b24gdmVyc2NoaWVkZW5lbiBTZWl0ZW4KZGFuYWNoIGdlZnJhZ3Qgd3VyZGU6Ck5laW4sIHdpciBaYXViZXJlciBoYWJlbiBuaWNodCBJTU1FUiBTZXghIFdpciB6YXViZXJuIGF1Y2ggendpc2NoZW5kdXJjaAptYWwuIERhbWl0IGRhcyBtYWwga2xhciBzZWluIHd1ZXJkZSEKCiAgIFZpbmNlbnQKClAuUy46IFVuZ2xhdWJsaWNoLCB3YXMgZGllIExldXRlIGFsbGVzIHNvIGF1ZmdydW5kIGVpbmVzIE1QQS1BcnRpa2VscwpmcmFnZW4uIElUWiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBOZXVlcyBTdGFiZ2ltbWljayAoTW9udGFudXMsIDIzLiBGZWIgMjAwNywgMTk6NDg6MzApOgp+IyEgcm49VmluY2VudCBydD0xMTcyMjU2MDA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3MDAwNjc1OApMZXV0cywgaWhyIHdhbmRlcnQgc2Nob24gd2llZGVyIGluIGZhbHNjaGUgUnVicmlrZW4gYXVzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IE5ldWVzIFN0YWJnaW1taWNrIChEYXJrbG9yLCAyNC4gRmViIDIwMDcsIDA0OjM5OjU0KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTExNzIyNTY1MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTcwMDA2NzU4CkltbWVyIGRpZXNlIFRyaWNrYmV0cnVlZ2VyLi4uCgpEYWtvcj8KCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBOZXVlcyBTdGFiZ2ltbWljayAoS2VsbHlidW5keSwgMjQuIEZlYiAyMDA3LCAxNDoxMzo1Nyk6Cn4jISBybj1DaGFnYWxsIHJ0PTExNzIyNTQwMTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTcwMDA2NzU4ClNvc28uIEdpYnRzIGVpbiBTdGFiZ2ltbWljayAnVmlicmF0aW9uJz8KU0NOUgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE5ldWVzIFN0YWJnaW1taWNrIChab29rLCAyNi4gRmViIDIwMDcsIDEzOjIyOjE0KToKfiMhIHJuPVZpbmNlbnQgcnQ9MTE3MjI1NTU2OCByZz1zY2htYXJybgp+IyEgdGlkPTExNzAwMDY3NTgKV2VsY2hlIHRpZWZlLCBpbm5lcmUgQW5nc3QgYnJpbmd0IERpY2ggZWlnZW50bGljaCBpbW1lciBkYXp1LCB2b3IgQW5hbG9naWUtCnNjaGx1ZXNzZW4gYXVmICJaYXViZXJlciIgaW0gZWNodGVuIExlYmVuIHp1IHdhcm5lbj8gOykgWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWhhISAoWm9vaywgMjYuIEZlYiAyMDA3LCAxNjo0NToyNCk6ClJpa3VzIGdhZWhudC4KKiBNUEE6IE5ldWVyIEFydGlrZWwgdm9uIEdyaW1tYm9ybiBpbiBSdWJyaWsgIm1lZ2FzY2htYXJybiIuClJpa3VzIHppZWh0IFN0ZXBwc2NodWhlIGF1cy4KUmlrdXMgdmVybGFlc3N0IGRpZXNlIFdlbHQuCgpaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBXYXMgaXMgZGFzIGRlbm4/IChSb25kYSwgMjYuIEZlYiAyMDA3LCAyMTowOToxNik6Cn4jISBybj1LZWxseWJ1bmR5IHJ0PTExNzI1MTU0NDggcmc9d3d3Cn4jISB0aWQ9MTE3MjQzOTQwNgpLZWxseSwgaWNoIGFobmUgZGFzcyBHcmltbWJvcm4ga2VpbmVuIEF1dG9yIGFscyBzZXJpb2VzIGFremVwdGllcmVuIHdpcmQsIGRlcgpuaWNodCBiZWkgaWhtIGFiZ2VzY2hyaWViZW4gaGF0LgoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFdhcyBpcyBkYXMgZGVubj8gKE9ya3RvZXRlciwgMjYuIEZlYiAyMDA3LCAyMjoyNDoyNSk6Cn4jISBvbj1Pcmt0b2V0ZXIgb3Q9MTE3MjUyNTAwNSBvZz13d3cKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTE3MjUyNDkxMyByZz13d3cKfiMhIHRpZD0xMTcyNDM5NDA2Ck5hIHVtIHNvIGJlc3NlciBmdWVyIGRpZSBLaXJjaGUsIGhhYmVuIHNpZSBkb2NoIGV0d2FzLCB3YXMgc2llIGFscyBuZXUKdmVya2F1ZmVuIGtvZW5uZW4uLi4gYmVzc2VyIGFscyBzbyBhbHRlIEh1ZXRlIHdpZSAiendlaSBQYWVwc3RlIHp1ciBnbGVpY2hlbgpaZWl0IgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogV2FzIGlzIGRhcyBkZW5uPyAoS2VsbHlidW5keSwgMjcuIEZlYiAyMDA3LCAyMDo0NjozOCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE3MjUyNTA2NSByZz1zY2htYXJybgp+IyEgdGlkPTExNzI0Mzk0MDYKRGFzIG51IHdpZWRlciBpc3QgaGlzdG9yaXNjaGUgVGF0c2FjaGUsIGRhIGthbm4gYXVjaCBlaW4gR3JpbW1ib3JuIG5peCBtZWhyCndlZ2Rpc2t1dGllcmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKenUgbGVpY2h0ISAoT3JrdG9ldGVyLCAgNC4gTWFyIDIwMDcsIDAwOjM1OjIwKToKW0FiZW50ZXVlcjpGYWhuZGVyIGhhdCBlaW5lIFNhbW1sdW5nIHZlcnZvbGxzdGFlbmRpZ3QgdW5kIGRhZHVyY2ggZWluZW4KICAgICAgICAgICBicm9uemVuZW4gU2FtbWxlcmd1ZXJ0ZWwgZXJydW5nZW4uIDxTb24sIDAwOjIwOjQyPl0KW0FiZW50ZXVlcjpLbmFyel0gaGF0IG5vY2ggd2VyIHRpcHMgZnVlciBzY2hsdWVzc2VsdmVyc3RlY2tlID8gPFNvbiwgMDA6MjE6MzI+CltBYmVudGV1ZXI6S25hcnpdIChob3Jyb3JsYWRlbikgPFNvbiwgMDA6MjE6NDA+CltBYmVudGV1ZXI6RmFobmRlciBoYXQgZWluZSBTYW1tbHVuZyB2ZXJ2b2xsc3RhZW5kaWd0IHVuZCBkYWR1cmNoIGVpbmVuCiAgICAgICAgICAgc2lsYmVybmVuIFNhbW1sZXJndWVydGVsIGVycnVuZ2VuLiA8U29uLCAwMDoyOToxOT5dCgprZWluZSAxMCBNaW51dGVuIHVtIGVpbmUgU2FtbWx1bmcgenUga29tcGxldHRpZXJlbiAod2FzIGF1Y2ggaW1tZXIpLi4gCmthbm4gamEgZGFubiBlaWdlbnRsaWNoIG51ciBTY2hyb3R0IHNlaW4sIG9kZXI/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHp1IGxlaWNodCEgKEdub21lLCAgNC4gTWFyIDIwMDcsIDAwOjM3OjIzKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTcyOTY0OTIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3Mjk2NDkyMAptYW4ga2FubiBhdWNoIDUgcXVlc3RzIGluIDEwIG1pbnV0ZW4gbG9lc2VuIHVuZCBkaWUgbXVlc3NlbiBkZXNoYWxiIG5vY2gKbGFuZ2UgbmljaHQgc2Nocm90dCBzZWluLi4uIGFjaHdhc3JlZGljaHVlYmVyaGF1cHQuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogenUgbGVpY2h0ISAoVmVjdG9yLCAgNC4gTWFyIDIwMDcsIDAwOjQzOjM4KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTcyOTY0OTIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3Mjk2NDkyMAp3ZWRlciBhaG51bmcgdm9tIGFrdHVlbGxlbiBzcGllbCBub2NoIHZvbgplaW5lciBkaWVzZXIgcXVlc3RzLiB0cm90emRlbSBkYW5uIGVpbgptcGEtYXJ0aWtlbCwga2FubiBqYSBkYW5uIGVpZ2VudGxpY2ggbnVyIHNjaHJvdHQgc2Vpbiwgb2Rlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogenUgbGVpY2h0ISAoT3JrdG9ldGVyLCAgNC4gTWFyIDIwMDcsIDAwOjQ4OjIxKToKfiMhIHJuPVZlY3RvciBydD0xMTcyOTY1NDE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3Mjk2NDkyMApPZGVyIHZpZWxsZWljaHQgc2NobWFycm4/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB6dSBsZWljaHQhIChWZWN0b3IsICA0LiBNYXIgMjAwNywgMDA6NTA6MTcpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNzI5NjU3MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTcyOTY0OTIwCmFjaHNvLCBkYWNodGUgZGFzIGxhZyBkYXJhbiBkYXNzIGR1IG51ciBpbiBkZXIKc2NobWFycm4tcnVicmlrIHNjaHJlaWJyZWNodGUgaGFzdGUuIG51biBkZW5uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEYXMgRW5kZSBkZXIgTWVybGluLVN0YXRpcyAoR2xvaW5zb24sICA5LiBNYXIgMjAwNywgMTU6NDU6NDQpOgp+IyEgb249R2xvaW5zb24gb3Q9MTE3MzQ1MTQyNyBvZz10cmVmZmVuCn4jISBybj1NaXJpbCBydD0xMTczNDUxMzg3IHJnPXRyZWZmZW4KfiMhIHRpZD0xMTcyOTIyOTc5CkFiZXIgZGFzIGtsaW5ndCBhYnN0b3NzZW5kIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uIElocmVyIE1hamVzdGFldD8gKE9ya3RvZXRlciwgMTAuIE1hciAyMDA3LCAxMjozNzozMCk6ClJvYWRydW5uZXIgaXN0IGdlcmFkZSBuaWNodCBkYTogbW9lYmVsIHNjaGxlcHBlbiBpbSBhdWZ0cmFnIC4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQW56aWVoZW5kIChCYW1idWxrbywgMTUuIE1hciAyMDA3LCAxNTowMDo1MSk6Cn4jISBybj1SdW1hdGEgcnQ9MTE3Mzk2NzE4NSByZz13aXR6ZQp+IyEgdGlkPTExNzM5NjcxODUKQm9haC4gRGVyIGhhdHRlIGphIHNjaG9uIHp1IE5ld3RvbnMgWmVpdGVuIGVpbmVuIEJhcnQuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXVzcnVlc3R1bmdzdmVybHVzdCAoT3JrdG9ldGVyLCAxNi4gTWFyIDIwMDcsIDIwOjM5OjIyKToKfiMhIHJuPVplc3N0cmEgcnQ9MTE3NDAzNzEzOSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExNzQwMzcxMzkKQWxzbywgbWlyIGZlaGxlbjoKIC4uLgogIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBhcmFoYXJweWUgKEFtYXJ5bGxpcywgMTguIE1hciAyMDA3LCAyMDoyNTo1Nik6Cn4jISBybj1TZWxldmVuIHJ0PTExNzQyNDE3Mjggcmc9ZC5pbnNlbG4KfiMhIHRpZD0xMTczOTkxMTYwCkR1IGJpc3QgdmllbCB6dSB3ZWljaCBiencuIG11c3N0IGFscyBuZXVlciBSTSBub2NoIGxlcm5lbiwgd2FzIG1hbiBtaXQKSmFtbWVyZXJuIG5vY2ggYWxsZXMgYW5zdGVsbGVuIGthbm4gOykKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEcmFjaGUsIFNjaGxhbmdlICYgU2NoaWxka3JvZXRlIChab29rLCAxOS4gTWFyIDIwMDcsIDExOjQ4OjIxKToKfiMhIHJuPUdhYnlsb24gcnQ9MTE3NDMwMDk2MCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMTc0MzAwOTYwCldpZSBkdXJmdGUgbWFuIHNpY2ggZGVubiBlaW5lbiBlaW5nZXNjaGxhZmVuZW4gU2NoaWxka3JvZXRlbi1LYWVtcGZlcgp2b3JzdGVsbGVuPwoKWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWx0ZXJuIChLbnVycHMsIDIzLiBNYXIgMjAwNywgMDA6NDk6NDQpOgpbU2VoZXI6WmVzc3RyYV0gRGFzIEFsdGVyIHdpcmQgaW0gSGVhcnRiZWF0IGVyaG9laHQuIFdlbm4gaWhyIGFsc28gb2VmdGVyCltTZWhlcjpaZXNzdHJhXSBidWdndCB1bmQgZGVyIEhCIGF1c2dlc2NoYWx0ZXQgd2lyZCwgYWx0ZXJ0IGlociBuaWNodC4gOy0pCltTZWhlcjpWZWN0b3JdIGJlc29uZGVycyBmdWVyIGRpZSB3ZWlibGljaGVuIGNoYXJzIGludGVyZXNzYW50CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFsdGVybiAoQW50aGVhLCAyMy4gTWFyIDIwMDcsIDExOjAwOjQyKToKfiMhIHJuPUtudXJwcyBydD0xMTc0NjA3Mzg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3NDYwNzM4NApLbGluZ3QgbmFjaCBGbGF0bGluZXIgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnEgKEdyaW1tYm9ybiwgMjQuIE1hciAyMDA3LCAxMjoyMDo0NCk6Cn4jISBvbj1DaXJkYW4gb3Q9MTE3NDczNTE1MCBvZz13d3cKcQpsCmgKaApxCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVGVsZXBvcnQgKFpvb2ssIDI2LiBNYXIgMjAwNywgMDk6MTA6NTQpOgp+IyEgcm49Q2hhZ2FsbCBydD0xMTc0NzMzODU0IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTExNzQ3MzM4NTQKTWFuIGthbm4gc2ljaCBhbHNvIHdpZWRlciBpbiBkZW4gU2NoYWNodCAicmV0dGVuIj8gOykgWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUZWxlcG9ydCAoQ2hhZ2FsbCwgMjYuIE1hciAyMDA3LCAxMTo1MTo1Mik6Cn4jISBybj1ab29rIHJ0PTExNzQ4OTMwNTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc0NzMzODU0CkphLgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU29tbWVycGFydHkgKFZhbmlvbiwgMjguIE1hciAyMDA3LCAyMDoxOTo0MSk6Cn4jISBybj1EYW51IHJ0PTExNzUxMDU4Njkgcmc9cGFydHkKfiMhIHRpZD0xMTc0ODUyODMxCkFsc28gaXJnZW5kd2llIGtsaW5ndCBCYXlyaXNjaGVyIFdhbGQgZWluIHdlbmlnIHVuaGVpbWxpY2guIFdlaXNzIGF1Y2ggbmljaAp3b3JhbiBkYXMgbGllZ3QuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFNvbW1lcnBhcnR5IChWZWN0b3IsIDI4LiBNYXIgMjAwNywgMjA6MjA6MDYpOgp+IyEgcm49VmFuaW9uIHJ0PTExNzUxMDU5ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc0ODUyODMxCmRhIHdhcnRldCBkZXIgd29scGVydGluZ2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogU29tbWVycGFydHkgKFZhbmlvbiwgMjguIE1hciAyMDA3LCAyMDoyMTozMCk6Cn4jISBybj1WZWN0b3IgcnQ9MTE3NTEwNjAwNiByZz1zY2htYXJybgp+IyEgdGlkPTExNzQ4NTI4MzEKSWNoIGdsYXViIGVzIGhhdCBkYW1pdCB6dSB0dW4sIGRhc3MgZGVyIE5hbWUgYWhuZW4gbGFlc3N0LCBkYXNzIGRhcyBnYW56ZSBpbgpCYXllcm4gaXN0LiBCYXllcm4gc2luZCBiZWtsb3BwdC4gaWNoIHdhciBrdWVyemxpY2ggaW4gQmFkIFJlaWNoZW5oYWxsIC0gc28KZWluIGtsZWluZXIgRmx1c3MgLSB1bmQgZGFubiB0b3RhbCBlaW5nZWRlaWNodCAuLi4gaWNoIHd1c3N0ZSBnYXJuaWNoLCBkYXNzCm1hbiBEZWljaGUgc28gaG9jaCBiYXVlbiBrYW5uLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBTb21tZXJwYXJ0eSAoR2xvaW5zb24sIDI4LiBNYXIgMjAwNywgMjI6NDA6MzQpOgp+IyEgb249R2xvaW5zb24gb3Q9MTE3NTExNDQyMCBvZz1wYXJ0eQp+IyEgcm49SHVtbmkgcnQ9MTE3NTExMTgxNiByZz1wYXJ0eQp+IyEgdGlkPTExNzQ4NTI4MzEKQWNoLCBpY2ggaGF0dGUgbWljaCBzY2hvbiBhdWYgU3VyZmVuIGluIEhhdHRpbmdlbiBnZWZyZXV0IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFNvbW1lcnBhcnR5IChWYW5pb24sIDI4LiBNYXIgMjAwNywgMjI6NDI6MTgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE3NTExNDQzNCByZz1zY2htYXJybgp+IyEgdGlkPTExNzQ4NTI4MzEKSm8sIGRhcyB3YXIgd2lya2xpY2ggZ2VpbCwgYXVjaCB3ZW5uIGRhcyBXZXR0ZXIgbWllcyB3YXIuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFNvbW1lcnBhcnR5IChHbG9pbnNvbiwgMjguIE1hciAyMDA3LCAyMzoyOTozNSk6Cn4jISBybj1WYW5pb24gcnQ9MTE3NTExNDUzOCByZz1zY2htYXJybgp+IyEgdGlkPTExNzQ4NTI4MzEKV2FzPyBWaWVsIFNvbm5lIHVuZCBSZWdlbiwgaWRlYWxlIEtvbWJvLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE9iZXJncmVuemUgdm9uIEdlZ2Vuc3RhZW5kZW4gaW0gU3BpZWxlciAoR2xvaW5zb24sIDMxLiBNYXIgMjAwNywgMTY6NTQ6MjQpOgp+IyEgcm49WmVzc3RyYSBydD0xMTc1MzUyMDYwIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTE3NTE1ODk5MApIYWJlbiB3aXIgZnVlciBlaW5lbiBVbXp1ZyBkZW5uIG5vY2ggZ2VudWcgYWt0aXZlIE1hZ2llcj8gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCYWVyZW5qYWdkIHVuZCBuZXVlIEtpbGxlcnNwaWVsLUFuZm9yZGVydW5nZW4gKEVsam8sIDMxLiBNYXIgMjAwNywgMjI6NTM6NTApOgogRHUgemVyc2NobWV0dGVyc3QgZWluZW4gemVyc2NobWV0dGVydGVuIERoYWxiYWVyIGluIGtsZWluZSBTdHVlY2tjaGVuLgpEZXIgemVyc2NobWV0dGVydGUgRGhhbGJhZXIgZmFlbGx0IHJvZWNoZWxuZCB1bmQgYnJ1bW1lbmQgdW0uCgoKRHUgd3VlbnNjaHQgRGlyIGlubmlnc3QsIGRhc3MgTGFycyBlaW5lbiB6ZXJzY2htZXR0ZXJ0ZW4gRGhhbGJhZXIgYmFsZCB3aWVkZXIKenVtIExlYmVuIGVyd2Vja3QuCgoKRGFzIHd1ZW5zY2hlIGljaCBtaXIgZWNodCAtIGFiZXIgd29obCBhdXMgYW5kZXJlbiBHcnVlbmRlbi4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmFlcmVuamFnZCB1bmQgbmV1ZSBLaWxsZXJzcGllbC1BbmZvcmRlcnVuZ2VuIChIdXJheHByYXgsIDMxLiBNYXIgMjAwNywgMjM6NDE6MjEpOgp+IyEgcm49RWxqbyBydD0xMTc1Mzc0NDMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3NTM3NDQzMApVbmQgZGF6dSB3YXIgZGVyIERoYWxiYWVyIHNjaG9uIHplcnNjaG1ldHRlcnQsIG11c3N0ZXN0IER1IGRlbiB3aXJrbGljaApub2NobWFsIHdlaXRlciB6ZXJzY2htZXR0ZXJuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IDE1IEphaHJlIEtyYXV0bGFuZCAoR2xvaW5zb24sICAyLiBBcHIgMjAwNywgMDI6NDU6MDEpOgp+IyEgcm49TWlyaWwgcnQ9MTE3NTQ2MDg2MSByZz1wYXJ0eS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTE3NTQ2MDg2MQpVbmQgZGFzIGRhIHdpcmQgZXMgYXVjaCB3aWVkZXIgZ2ViZW4sIGhvZmZlIGljaDoKCmh0dHA6Ly93d3cuZmx1bnplbC5kZS9zdXJmZW4vCgpEYW5rZSBNaXJpbCEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogKioqRGFzIE1HIGlzdCBrZWluIEtpbGxlcnNwaWVsKioqIChKaW1kaWdyaXosICAyLiBBcHIgMjAwNywgMTA6NDk6MTcpOgp+IyEgcm49UnVtYXRhIHJ0PTExNzUzNzM3NTIgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTExNzUzNzM3NTIKRHUgd2Fyc3QgY2EgMTcuNSBNaW51dGVuIHp1IGZydWVoIGRyYW4uIFNjaGFlbSBEaWNoIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAqKipEYXMgTUcgaXN0IGtlaW4gS2lsbGVyc3BpZWwqKiogKENyb2Z0LCAgMi4gQXByIDIwMDcsIDEyOjIyOjA1KToKfiMhIHJuPUppbWRpZ3JpeiBydD0xMTc1NTAzNzU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3NTM3Mzc1MgpJY2gga29tbSBhdWYgNzcuNSBNaW51dGVuLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6ICoqKkRhcyBNRyBpc3Qga2VpbiBLaWxsZXJzcGllbCoqKiAoSmltZGlncml6LCAgMi4gQXByIDIwMDcsIDE0OjU1OjIxKToKfiMhIHJuPUNyb2Z0IHJ0PTExNzU1MDkzMjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc1MzczNzUyCmphIHN0aW1tdCBuYXR1ZXJsaWNoLCB1bXNvIHNjaGxpbW1lcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogMTUgSmFocmUgS3JhdXRsYW5kIChDcm9mdCwgIDIuIEFwciAyMDA3LCAyMDowMDoxNik6Cn4jISBybj1IdW1uaSBydD0xMTc1NTM2NzI2IHJnPXBhcnR5Cn4jISB0aWQ9MTE3NTQ2MDg2MQpXbyBpc3QgQW55c2lkb3JhLCB3ZW5uIG1hbiBzaWUgbWFsIGJyYXVjaHQgLi4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEpvZC1OYWNobGVzZSAoQmFtYnVsa28sICAzLiBBcHIgMjAwNywgMTM6MzU6MDYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE3NTU5OTM2NiByZz13d3cKfiMhIHRpZD0xMTc1NTk5MzY2ClNwYWV0ZXN0ZW5zIHdlbm4gZGFzIG5hZWNoc3RlIEtlcm5rcmFmdHdlcmsgZXhwbG9kaWVydCwgaXN0IEpvZCB3aWVkZXIgZ3Jvc3MKaW0gS29tbWVuLgoKQmFtYnVsa28KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyB1ZWJlbiB3aXIgbm9jaCBtYWwhIChPcmt0b2V0ZXIsICA3LiBBcHIgMjAwNywgMjE6MDk6NTQpOgpbU2VoZXI6SGVsaV0gd2llIGthbm4gaWNoIHJhdXNmaW5kZW4sIHdhcyBkaWUgcGFyYWxsZWxsd2VsdCBpcyB1bmQgd2llIG1hbiBkYQpbU2VoZXI6SGVsaV0gaGlua29tbXQ/IDxTYW0sIDIwOjQ2OjM5PgpbU2VoZXI6RWxqb10gRHVyY2ggRm9yc2NoZW4uIDxTYW0sIDIwOjQ2OjQ5PgpbU2VoZXI6T3JrdG9ldGVyXSB3aWUgbWFuIGhpbmtvbW10Li4uIHNjaGF1IGRpY2ggbWFsIGluIGRlciBOYWVoZSB2b24gbWVpbmVtCltTZWhlcjpPcmt0b2V0ZXJdIFNjaGxvc3MgdW0uLi4gPFNhbSwgMjA6NDc6MDU+CltTZWhlcjpPcmt0b2V0ZXJdIHVuZCB3YXMgZXMgaXN0Li4gaG0uLiBpY2ggZ2xhdWJlIG1hbiBrb2VubnRlIGVzIHNvCltTZWhlcjpPcmt0b2V0ZXJdIHp1c2FtbWVuZmFzc2VuOiBEdSBtb2VjaHRlc3QgZGEgZWlnZW50bGljaCBuaWNodCB3aXJrbGljaApbU2VoZXI6T3JrdG9ldGVyXSBoaW4uIDopIDxTYW0sIDIwOjQ3OjM1PgpbU2VoZXI6SGVsaV0gbm9jaCBuaWNodCwgZXJzdG1hIHNraWxscyB2ZXJiZXNzZXJuIDxTYW0sIDIwOjQ4OjExPgotCi0KLQpbVG9kOkxhcnNdIFByb3R6a29wcCBoYXQgZ2VyYWRlIEhlbGkgdW1nZWJyYWNodC4gPFNhbSwgMjE6MDc6MjY+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQbGFubG9zIChNaXJpbCwgIDguIEFwciAyMDA3LCAxNzowNTo0Mik6Ck1hZ25peCBrb21tdCBhaG51bmdzbG9zIGhlcmVpbi4KTWFnbml4IGZyYWd0IGRlbiBPc3Rlcmhhc2VuIG5hY2ggVGlwcC4KRGVyIE9zdGVyaGFzZSBmbHVlc3RlcnQgTWFnbml4IHdhcyBpbnMgT2hyLgpNYWduaXggZ2VodCB1bndpc3NlbmQgbmFjaCBXZXN0ZW4uCgpTb3dhcy4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBldGl0aW9uIHp1ci9nZWdlbiBSYWR3ZWdlYmVudXR6dW5nc3BmbGljaHQgKEdsb2luc29uLCAxMC4gQXByIDIwMDcsIDA5OjU5OjQ1KToKfiMhIHJuPU1haGFyZXQgcnQ9MTE3NjE4NTY4MiByZz13d3cKfiMhIHRpZD0xMTc2MTczODE3Cldlbm4sIGRhbm4gbmF0dWVybGljaCBtaXQgU1VWLiBPaG5lIGVyZ2lidCBzaWNoIGphIGRpZSBuZXVlIEF1c3dhaGwgYW4KRmFoZWJhaG5lbiBnYXIgbmljaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogUGV0aXRpb24genVyL2dlZ2VuIFJhZHdlZ2ViZW51dHp1bmdzcGZsaWNodCAoR3JpbW1ib3JuLCAxMC4gQXByIDIwMDcsIDE0OjAyOjQxKToKfiMhIHJuPUVsam8gcnQ9MTE3NjIwNjQ3OSByZz13d3cKfiMhIHRpZD0xMTc2MTczODE3Ck5hIGtvbW0sIHdlbm4gZGllIFJhZGZhaHJlciBzbyBzY2huZWxsIGZhaHJlbiBrb2VubnRlbiB3aWUgc2llIHdvbGx0ZW4gd2FlcmVuCmRpZSBMaWNodGVyIGVoIHNpbm5sb3MgLSBEb3BwbGVyZWZmZWt0IHVuZCBzby4gRGllIG1lbnNjaGxpY2hlIFdhaHJuZWhtdW5nIGlzdAphdWYgVVYtTGljaHQgbmljaHQgYXVzZ2VsZWd0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBQZXRpdGlvbiB6dXIvZ2VnZW4gUmFkd2VnZWJlbnV0enVuZ3NwZmxpY2h0IChHbG9pbnNvbiwgMTAuIEFwciAyMDA3LCAxNDowNzoxOSk6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMTc2MjA2NzI2IG9nPXd3dwp+IyEgcm49RWxqbyBydD0xMTc2MjA2NDc5IHJnPXd3dwp+IyEgdGlkPTExNzYxNzM4MTcKRWJlbi4gVGFnZXNsaWNodCBmdWVyIEF1dG9zISA6PgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFBldGl0aW9uIHp1ci9nZWdlbiBSYWR3ZWdlYmVudXR6dW5nc3BmbGljaHQgKEphbWVzb24sIDEwLiBBcHIgMjAwNywgMTQ6MTE6NDkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExNzYyMDY1NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc2MTczODE3Ck5hIHVuZCwgbWFjaHN0ZSBub2NoIGVpbmUgenVzYWV0emxpY2hlIEluZnJhcm90bGFtcGUgenVyIFBmbGljaHQgdW5kIGRhbm4KcGFzc3QgZGFzIHdpZWRlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFBldGl0aW9uIHp1ci9nZWdlbiBSYWR3ZWdlYmVudXR6dW5nc3BmbGljaHQgKEdyaW1tYm9ybiwgMTAuIEFwciAyMDA3LCAxNDoxMjo0OSk6Cn4jISBybj1KYW1lc29uIHJ0PTExNzYyMDcxMDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc2MTczODE3CldpciBiZXNjaHJhZW5rZW4gZGllIGVybGF1YnRlIEdlc2Nod2luZGlna2VpdCBhdWYgZGFzIEludGVydmFsbCwgaW4gZGVtIGRpZQpJbmZyYXJvdHNjaHRyYWhsdW5nIGRlcyBLb2VycGVycyBpbSBzaWNodGJhcmVuIFNwZWt0cnVtc2JlcmVpY2ggbGllZ3QuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBQZXRpdGlvbiB6dXIvZ2VnZW4gUmFkd2VnZWJlbnV0enVuZ3NwZmxpY2h0IChKYW1lc29uLCAxMC4gQXByIDIwMDcsIDE0OjE3OjE1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTc2MjA3MTY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3NjE3MzgxNwpEYW1pdCBiZWtvbW1zdCBkdSBhYmVyIGJlaSBpbiBkZXIgTmFlaGUgZGVyIEhhdXR0ZW1wZXJhdHVyIGxpZWdlbmRlcgpBdXNzZW50ZW1wZXJhdHVyIEtvbnRyYXN0cHJvYmxlbWUuIEFoLCBkaWUgTHVmdCB3aXJkIGphIGthdW0gbWl0YmV3ZWd0LAppcmdlbmR3aWUgd2lyZCdzIHNjaG9uIGhpbmhhdWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFBldGl0aW9uIHp1ci9nZWdlbiBSYWR3ZWdlYmVudXR6dW5nc3BmbGljaHQgKENyb2Z0LCAxMC4gQXByIDIwMDcsIDE0OjE4OjA3KToKfiMhIHJuPUphbWVzb24gcnQ9MTE3NjIwNzQzNSByZz1zY2htYXJybgp+IyEgdGlkPTExNzYxNzM4MTcKVW5kIGRpZSBIYXV0IHdpcmQgYXVjaCBiZXN0aW1tdCBkdXJjaCBkaWUgUmVpYnVuZ3NlbmVyZ2llIHdhZXJtZXIuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFBldGl0aW9uIHp1ci9nZWdlbiBSYWR3ZWdlYmVudXR6dW5nc3BmbGljaHQgKE1haGFyZXQsIDEwLiBBcHIgMjAwNywgMTQ6MTg6MDgpOgp+IyEgcm49SmFtZXNvbiBydD0xMTc2MjA3NDM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3NjE3MzgxNwpCZWkgc28gZWluZXIgSGl0emUgZmFlaHJ0IG1hbiBlaCBuaWNodCBSYWQsIHNvbmRlcm4gc2l0enQgaW4gZWluZW0ga3VlaGxlbiBCYWQKdW5kIGdvZW5udCBzaWNoIGVpbiBFaXMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogUGV0aXRpb24genVyL2dlZ2VuIFJhZHdlZ2ViZW51dHp1bmdzcGZsaWNodCAoRWxqbywgMTAuIEFwciAyMDA3LCAxNDoyMDoyMik6Cn4jISBybj1NYWhhcmV0IHJ0PTExNzYyMDc0ODggcmc9c2NobWFycm4KfiMhIHRpZD0xMTc2MTczODE3Ck11c3MgamEgZHJhdXNzZW4gbmljaHQga2FsdCBzZWluLCBtYW4ga29lbm50ZSBqYSBhdWNoIG1pdCBVbnRlcmt1ZWhsdW5nCnVudGVyd2VncyBzZWluLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBQZXRpdGlvbiB6dXIvZ2VnZW4gUmFkd2VnZWJlbnV0enVuZ3NwZmxpY2h0IChKYW1lc29uLCAxMC4gQXByIDIwMDcsIDE0OjIwOjI2KToKfiMhIHJuPU1haGFyZXQgcnQ9MTE3NjIwNzQ4OCByZz1zY2htYXJybgp+IyEgdGlkPTExNzYxNzM4MTcKV2VubiBqZXR6dCBub2NoIGVpbmVyIGRhcyBtaXQgZGVtIHZvbSBGYWhydHdpbmQgZXJmcm9yZW5lbiBSYWRmYWhyZXIgYnJpbmd0LAp1ZWJlcmdlaGUgaWNoIGRlbiBUaHJlYWQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogUGV0aXRpb24genVyL2dlZ2VuIFJhZHdlZ2ViZW51dHp1bmdzcGZsaWNodCAoRWxqbywgMTAuIEFwciAyMDA3LCAxNDoyMDozMCk6Cn4jISBybj1FbGpvIHJ0PTExNzYyMDc2MjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc2MTczODE3CkFlaCwgaGVpc3MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBQZXRpdGlvbiB6dXIvZ2VnZW4gUmFkd2VnZWJlbnV0enVuZ3NwZmxpY2h0IChNYWhhcmV0LCAxMC4gQXByIDIwMDcsIDE0OjMyOjEwKToKfiMhIHJuPUdsb2luc29uIHJ0PTExNzYyMDgyMzggcmc9d3d3Cn4jISB0aWQ9MTE3NjE3MzgxNwpEYXMgbW9lY2h0ZSBpY2ggc2VoZW4sIHdpZSBkdSBlaW5lbiBhbmdldHJ1bmtlbmVuIEdyaW1tYm9ybiBhdWYgZGVpbmVtIEZhaHJyYWQKcnVta3V0c2NoaWVyc3QgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogUGV0aXRpb24genVyL2dlZ2VuIFJhZHdlZ2ViZW51dHp1bmdzcGZsaWNodCAoR2xvaW5zb24sIDEwLiBBcHIgMjAwNywgMTQ6MzM6MzEpOgp+IyEgcm49TWFoYXJldCBydD0xMTc2MjA4MzMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3NjE3MzgxNwpEYWZ1ZXIgZ2lidCBlcyBBbmhhZW5nZXIuIEthbm4gaWNoIGV1cmVuIGxlaWhlbiwgd2VubiBpaHIgZWluZW4gaGFidD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogUGV0aXRpb24genVyL2dlZ2VuIFJhZHdlZ2ViZW51dHp1bmdzcGZsaWNodCAoTWFoYXJldCwgMTAuIEFwciAyMDA3LCAxNDozOToxMCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTc2MjA4NDExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3NjE3MzgxNwpXaXIgaGFiZW4ga2VpbmVuIEFuaGFlbmdlciwgbnVyIGVpbmVuIEtpbmRlcnNpdHouIERhIHBhc3N0IEdyaW1tYm9ybiBhYmVyCnNpY2hlciBuaWNodCByZWluLgpWZXJzdWNoIGVzIG1pdCBGYWhycmFkdGFzY2hlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBQZXRpdGlvbiB6dXIvZ2VnZW4gUmFkd2VnZWJlbnV0enVuZ3NwZmxpY2h0IChHbG9pbnNvbiwgMTAuIEFwciAyMDA3LCAxNDo0MDo0Mik6Cn4jISBybj1NYWhhcmV0IHJ0PTExNzYyMDg3NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc2MTczODE3ClBvcnRpb25pZXJlbj8gRGFubiBtdXNzdCBkdSBhYmVyIG1pdCBQZmVyZCBrb21tZW4sIEdyaW1taSwgZGFtaXQgZXMgbGVja2VyCndpcmQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFBldGl0aW9uIHp1ci9nZWdlbiBSYWR3ZWdlYmVudXR6dW5nc3BmbGljaHQgKEVsam8sIDEwLiBBcHIgMjAwNywgMTQ6NDM6NTcpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE3NjIwODg0MiByZz1zY2htYXJybgp+IyEgdGlkPTExNzYxNzM4MTcKVm9yIGFsbGVtOiBHcmltbWJvcm4ga2Fubiwgd2VubiBlciB2ZXJsaWVyZW4gc29sbHRlLCBHbG9pbnNvbnMgRmFocnJhZCBqYSBpbgpkZW4gS29mZmVycmF1bSBzY2htZWlzc2VuLCB3aWUgbWFjaHQgZGFzIEdsb2luc29uPyBHcmltbWJvcm4gaHVja2VwYWNrIGF1ZiBkZW0KUmFkbCB1bmQgZGFzIEF1dG8gYW0gU3RyaWNrIGhpbnRlcmhlcj8gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogUGV0aXRpb24genVyL2dlZ2VuIFJhZHdlZ2ViZW51dHp1bmdzcGZsaWNodCAoTWFoYXJldCwgMTAuIEFwciAyMDA3LCAxNDo0NDo0OSk6Cn4jISBybj1FbGpvIHJ0PTExNzYyMDkwMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc2MTczODE3CkFsc28gbXVzcyBHcmltbWJvcm4gdmVybGllcmVuLiBHdXQsIGRhc3MgZGFzIGdla2xhZXJ0IGlzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBQZXRpdGlvbiB6dXIvZ2VnZW4gUmFkd2VnZWJlbnV0enVuZ3NwZmxpY2h0IChab29rLCAxMC4gQXByIDIwMDcsIDE0OjQ2OjI0KToKfiMhIHJuPU1haGFyZXQgcnQ9MTE3NjIwOTA4OSByZz1zY2htYXJybgp+IyEgdGlkPTExNzYxNzM4MTcKV2FzIGdpYnQgZXMgZnVlciBSZV4xMDA/CloKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBQZXRpdGlvbiB6dXIvZ2VnZW4gUmFkd2VnZWJlbnV0enVuZ3NwZmxpY2h0IChFbGpvLCAxMC4gQXByIDIwMDcsIDE0OjQ2OjU2KToKfiMhIHJuPVpvb2sgcnQ9MTE3NjIwOTE4NCByZz1zY2htYXJybgp+IyEgdGlkPTExNzYxNzM4MTcKTWl0IFpvb2sgdHJpbmtlbiB1bmQgZGFubiBhdWYgZGVtIFRhbmRlbSBuYWNoIEhhdXNlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFBldGl0aW9uIHp1ci9nZWdlbiBSYWR3ZWdlYmVudXR6dW5nc3BmbGljaHQgKEdsb2luc29uLCAxMC4gQXByIDIwMDcsIDE0OjQ5OjUwKToKfiMhIHJuPUVsam8gcnQ9MTE3NjIwOTIxNiByZz1zY2htYXJybgp+IyEgdGlkPTExNzYxNzM4MTcKTWl0IGRlbSBoaWVyIHZpZWxsZWljaHQ/CgpodHRwOi8vd3d3Lmhhc2ViaWtlcy5jb20vZGVzL3Bpbm8vCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFBldGl0aW9uIHp1ci9nZWdlbiBSYWR3ZWdlYmVudXR6dW5nc3BmbGljaHQgKFpvb2ssIDEwLiBBcHIgMjAwNywgMTQ6NTA6MDQpOgp+IyEgcm49RWxqbyBydD0xMTc2MjA5MjE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3NjE3MzgxNwpJY2ggd2Vpc3MgamEgbm9jaCBuaWNodCBtYWwsIHdvcnVtIGVzIGluIGRlbSBUaHJlYWQgZ2VodC4gWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IFBldGl0aW9uIHp1ci9nZWdlbiBSYWR3ZWdlYmVudXR6dW5nc3BmbGljaHQgKEdsb2luc29uLCAxMC4gQXByIDIwMDcsIDE0OjUxOjM3KToKfiMhIHJuPVpvb2sgcnQ9MTE3NjIwOTQwNCByZz1zY2htYXJybgp+IyEgdGlkPTExNzYxNzM4MTcKRWdhbCwgZXMgZ2lidCB3YXMgenUgZ2V3aW5uZW4sIFpvb2suIERyZWkgS2Vrc2UgYXVmIFJlXjExMSEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogUGV0aXRpb24genVyL2dlZ2VuIFJhZHdlZ2ViZW51dHp1bmdzcGZsaWNodCAoTW9udGFudXMsIDEyLiBBcHIgMjAwNywgMTA6MTU6MTYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE3NjIwOTQ5NyByZz1zY2htYXJybgp+IyEgdGlkPTExNzYxNzM4MTcKSWhyIEZyZW1kZ2VoZXIuIEh1c2NoaHVzY2ggenVydWVjayBpbnMgS29lcmJjaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGhyZWFkIEFsZXJ0IEplc3VzIChSb25kYSwgMTUuIEFwciAyMDA3LCAxMDo0NTowMyk6Ckdla2xhdXQgYXVzIGRlbSBDcnlwdG8tR3JhbTogaHR0cDovL3d3dy50aHJlYXRhbGVydGplc3VzLmNvbS8gLSBlaW5lCkplc3VzLUZpZ3VyLCBkaWUgZGVuIG5hdGlvbmFsZW4gQmVkcm9odW5nc3N0YXR1cyBpbSBIZWlsaWdlbnNjaGVpbiBhbnplaWd0LgpTZWhyIHNjaG9lbiBib2VzZXIgVGV4dC4KClJvbmRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVGhyZWFkIEFsZXJ0IEplc3VzIChaZXNzdHJhLCAxNS4gQXByIDIwMDcsIDExOjA3OjIzKToKfiMhIHJuPVJvbmRhIHJ0PTExNzY2MjY3MDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc2NjI2NzAzCk9od2VpYS4gSXJnZW5kd2llIGhhYiBpY2ggZGFzIGdhbnogdmVycGFzc3QsIGljaCBtdXNzIHdvaGwgbWFsIG5pY2h0IG51ciBkYXMKQmxvZywgc29uZGVybiBhdWNoIGRhcyBDcnlwdG8tR3JhbSBsZXNlbi4uLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1vdmllLVBsb3QgVGhyZWFkIENvbnRlc3QgKENyb2Z0LCAxNS4gQXByIDIwMDcsIDExOjE3OjI1KToKfiMhIHJuPVJvbmRhIHJ0PTExNzY2Mjg0MzIgcmc9d3d3Cn4jISB0aWQ9MTE3NjYyODQzMgpPbWFzIGRyaXR0ZSBaYWVobmUgc29sbHRlbiBkb2NoIGVpZ2VudGxpY2ggYWxzIGJpb2xvZ2lzY2gvY2hlbWlzY2hlcgpLYW1wZnN0b2ZmIGVpbmdlc3R1ZnQgc2VpbiB1bmQgZXJzdCBnYXIgbmljaHQgYW4gQm9yZCBlaW5lcyBBaXJidXMKZHVlcmZlbiwgb2Rlcj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaC4uLiAoQ3JvZnQsIDE3LiBBcHIgMjAwNywgMDk6NTA6MzIpOgp+IyEgcm49U25pcGVyIHJ0PTExNzY3OTU1NDIgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTE3Njc5NTU0MgpEYXMgaXN0IGphIHNjaG9uIG1laHJlcmUgV29jaGVuIGhlciEKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1vcmdlbmdyYXVlbiBXaWtpIChab29rLCAxOC4gQXByIDIwMDcsIDEwOjMyOjUyKToKfiMhIG9uPVpvb2sgb3Q9MTE3Njg4NTE1NCBvZz13d3cKfiMhIHJuPVplc3N0cmEgcnQ9MTE3Njg4NDk3OSByZz13d3cKfiMhIHRpZD0xMTc2ODgyMDg4Ck9iIGRhcyBtZWluZSBOYWNoYmFybiBzbyB0b2xsIGZpbmRlbiwgd2VubiBpY2ggaWhuZW4gbmUgTW9yZ2VuZ3JhdWVuLQpXZXJidW5nIGFucyBBdXRvIGtsZWJlPwoKWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTW9yZ2VuZ3JhdWVuIFdpa2kgKFplc3N0cmEsIDE4LiBBcHIgMjAwNywgMTA6MzU6NDYpOgp+IyEgcm49Wm9vayBydD0xMTc2ODg1MTcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3Njg4MjA4OApEaWUgc2luZCBiZXN0aW1tdCBiZWdlaXN0ZXJ0LiA7LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1vcmdlbmdyYXVlbiBXaWtpIChab29rLCAxOC4gQXByIDIwMDcsIDEwOjM2OjEyKToKfiMhIHJuPVplc3N0cmEgcnQ9MTE3Njg4NTM0NiByZz1zY2htYXJybgp+IyEgdGlkPTExNzY4ODIwODgKSWNoIGZyZXUgbWljaCBzY2hvbiBhdWYgd2lsZHBvZWJlbG5kZSBHYWVzdGUuIFoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZ2llcmthcnJpZXJlIDspIChMaWFyYSwgMjAuIEFwciAyMDA3LCAwMTo0MTowNSk6CkR1IHRlaWxzdCBNZXNpcmlpIG1pdDogZ3JhdHMgenVtIHdlaXNlbiA7KQpNZXNpcmlpIGJlZGFua3Qgc2ljaCBiZWkgRGlyIGF1cyBkZXIgRmVybmUuIApEdSB0ZWlsc3QgTWVzaXJpaSBtaXQ6IGltbWVyIG1laHIgYXJiZWl0IDspCk1lc2lyaWkgdGVpbHQgRGlyIG1pdDogd3VyZGUgYXVjaCB6ZWl0IHNjaGxpZXNzbGljaCBzdGVodCBtb3JnZW4gZGFzIEUgdW5kIGFtCk1lc2lyaWkgdGVpbHQgRGlyIG1pdDogV29jaGVuZW5kZSBkYXMgRyBhdWYgZGVtIFBsYW4gOikKRHUgdGVpbHN0IE1lc2lyaWkgbWl0OiBhaCBvawpEdSB0ZWlsc3QgTWVzaXJpaSBtaXQ6IGthbm4gaWNoIGRhcyBwb3N0ZW4/IDspCk1lc2lyaWkgZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBhbi4gCk5peCBOZXVlcyBhdWYgZGVyIFdlbHQuCk1lc2lyaWkgdGVpbHQgRGlyIG1pdDogcGZmdCA6KQpNZXNpcmlpIHRlaWx0IERpciBtaXQ6IG1hY2ggZG9jaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hZ2llcmthcnJpZXJlIDspIChMaWFyYSwgMjAuIEFwciAyMDA3LCAwMjo1MjoyMCk6Cn4jISBybj1MaWFyYSBydD0xMTc3MDI2MDY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3NzAyNjA2NQpEdSB0ZWlsc3QgRW5ub3ggbWl0OiBndXRlIG5hY2h0IDopCkR1IGtudWRkZWxzdCBFbm5veCBhdXMgZGVyIEZlcm5lLgpFbm5veCB0ZWlsdCBEaXIgbWl0OiBTY2hsYWYgZ3V0LgpFbm5veCB0ZWlsdCBEaXIgbWl0OiBiaXMgbW9yZ2VuCkR1IHRlaWxzdCBFbm5veCBtaXQ6IGR1IGF1Y2ggaGVyciB3ZWlzZSA6KQpFbm5veCB0ZWlsdCBEaXIgbWl0OiBXZWx0aGVycnNjaGFmdCBoYXIgaGFyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hZ2llcmthcnJpZXJlIDspIChNZXNpcmlpLCAyMC4gQXByIDIwMDcsIDAzOjQxOjM1KToKfiMhIHJuPUxpYXJhIHJ0PTExNzcwMzAzNDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc3MDI2MDY1CmRhbmtlIGFuIExpYXJhIGZ1ZXIgZGllIEJlcmljaHRlcnN0YXR0dW5nIHZvbiBkZXIgRnJvbnQuCk1lc2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp5bmlzbXVzPyBXb29vb28/IChPcmt0b2V0ZXIsIDIwLiBBcHIgMjAwNywgMjI6NTc6MjEpOgpbVG9kOkxhcnNdIERlciBBYmdydW5kIGRlcyBab3JucyBoYXQgZ2VyYWRlIE9sbGVyaGVhZCB1bWdlYnJhY2h0LgpbQmVpbGVpZDpCcmV3ZXJdIGFoLCBkdSBoYXN0IGVzIGdlZnVuZGVuIDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT2huZSBXb3J0ZSAuLi4gKExpYXJhLCAyMi4gQXByIDIwMDcsIDIyOjQ3OjIyKToKW0FsbGdlbWVpbjpSb25kYSBncmluc3QgdW5kIGhhZWx0IGRpZSBLbGFwcGVdCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUcmVmZmVuZGUgQmVzY2hyZWlidW5nIDspIChMaWFyYSwgMjIuIEFwciAyMDA3LCAyMjo1Mzo1OSk6CltaVDpCbGl2aV0gSG1tLCBkYW5uIGlzIGRhcyBvcmFrZWwgdW5nZW5hdV5eCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogYXJ0aWtlbCBEYXMgTXVkIHNvbGwgbGViZW5kaWdlciB3ZXJkZW4gQmVydWZlIChEYXJrbG9yLCAyNS4gQXByIDIwMDcsIDA4OjMzOjQyKToKfiMhIHJuPVpvb2sgcnQ9MTE3NzQwODQ0OSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTExNzczMDcwNjcKTnVyIGJlaSB6dSB2aWVsZW4gS29lY2hlbi4uLiA7KSAKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGFydGlrZWwgRGFzIE11ZCBzb2xsIGxlYmVuZGlnZXIgd2VyZGVuIEJlcnVmZSAoQW5hdG9sLCAyNS4gQXByIDIwMDcsIDIwOjQwOjU4KToKfiMhIHJuPU1lc2lyaWkgcnQ9MTE3NzMzMjAzMCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTExNzczMDcwNjcKRHUgaGFzdCBkaWUgRm9lcm1jaGVuIHZlcmdlc3Nlbi4gRGllIGJla29tbXQgbWFuIGJlaSBFcnJlaWNodW5nIGRlcwpUaXRlbHMgIk9iZXJzdGVyIFNhbmRzaWViZW1laXN0ZXIgdW5kIEZvZXJkZXJlciBEdXJpYW5zIiBncmF0aXMuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogYXJ0aWtlbCBEYXMgTXVkIHNvbGwgbGViZW5kaWdlciB3ZXJkZW4gQmVydWZlIChPcmt0b2V0ZXIsIDI1LiBBcHIgMjAwNywgMjA6NDg6MTMpOgp+IyEgcm49QW5hdG9sIHJ0PTExNzc1MjY0NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTc3MzA3MDY3CkR1IGdsYXVic3QgaXJnZW5kd2VyIGthbm4gc2ljaCBub2NoIGFuIER1cmlhbiBlcmlubmVuPwoKRHVyaWFuIGlzdCBuaWNodCBhbndlc2VuZC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogVGVsZWtvbS1SZXNlbGxlci4KWnVsZXR6dCBhdXNnZWxvZ2d0OiBTb24sIDEyLiBPa3QgMjAwMywgMDA6MDY6MjggKDEyOTFkIDIwOjQxOjA3KS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBhcnRpa2VsIERhcyBNdWQgc29sbCBsZWJlbmRpZ2VyIHdlcmRlbiBCZXJ1ZmUgKFplc3N0cmEsIDI1LiBBcHIgMjAwNywgMjA6NDk6MzgpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNzc1MjY4OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc3MzA3MDY3CjIwMDMgaXN0IGRvY2ggbm9jaCBuaWNodCBsYW5nLiBEYSBrb2VubmVuIHNpY2ggbm9jaCBwcm9ibGVtbG9zIExldXRlIGRyYW4KZXJpbm5lcm4uCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBhcnRpa2VsIERhcyBNdWQgc29sbCBsZWJlbmRpZ2VyIHdlcmRlbiBCZXJ1ZmUgKE1haGFyZXQsIDI1LiBBcHIgMjAwNywgMjA6NTA6MDgpOgp+IyEgcm49WmVzc3RyYSBydD0xMTc3NTI2OTc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3NzMwNzA2NwpBbiBkZW4ga2FubiBtYW4gc2ljaCBhdWNoIGVyaW5uZXJuLCB3ZW5uIG1hbiBpaG4gbmllIGtlbm5lbmdlbGVybnQgaGF0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBhcnRpa2VsIERhcyBNdWQgc29sbCBsZWJlbmRpZ2VyIHdlcmRlbiBCZXJ1ZmUgKENyb2Z0LCAyNS4gQXByIDIwMDcsIDIzOjIwOjA5KToKfiMhIHJuPU1haGFyZXQgcnQ9MTE3NzUyNzAwOCByZz1zY2htYXJybgp+IyEgdGlkPTExNzczMDcwNjcKT2ZmZW5zaWNodGxpY2gga2FubiBzaWNoIE9ya1QgYW4gaWhuIGVyaW5uZXJuLiBEYXMgcmVpY2h0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGFydGlrZWwgRGFzIE11ZCBzb2xsIGxlYmVuZGlnZXIgd2VyZGVuIEJlcnVmZSAoT3JrdG9ldGVyLCAyNS4gQXByIDIwMDcsIDIzOjIyOjAzKToKfiMhIHJuPUNyb2Z0IHJ0PTExNzc1MzYwMDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc3MzA3MDY3CkFuIHdhcyBzb2xsIGljaCBtaWNoIGVyaW5uZXJuIGtvZW5uZW4/IDspCgpPcmtULCB0YXR0ZXJuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGFydGlrZWwgRGFzIE11ZCBzb2xsIGxlYmVuZGlnZXIgd2VyZGVuIEJlcnVmZSAoQ3JvZnQsIDI1LiBBcHIgMjAwNywgMjM6MjQ6NDMpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNzc1MzYxMjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc3MzA3MDY3CkFuIER1cmlhbi4gIFNvbnN0IGhhZXR0ZXN0IGR1IGdlZnJhZ3QsIHdlciBEdXJpYW4gc2VpLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBhcnRpa2VsIERhcyBNdWQgc29sbCBsZWJlbmRpZ2VyIHdlcmRlbiBCZXJ1ZmUgKE9ya3RvZXRlciwgMjYuIEFwciAyMDA3LCAyMDowMjoxMik6Cn4jISBybj1Dcm9mdCBydD0xMTc3NTM2MjgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3NzMwNzA2NwpXZXIgaXN0IER1cmlhbj8gV2VyIGJpc3QgZHU/IFVuZCB3YXMgbWFjaGUgaWNoIGhpZXIgZWlnZW50bGljaD8KCk9ya1QsIHdlaXRlcnRhdHRlcm5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IGFydGlrZWwgRGFzIE11ZCBzb2xsIGxlYmVuZGlnZXIgd2VyZGVuIEJlcnVmZSAoQ2hhZ2FsbCwgMjYuIEFwciAyMDA3LCAyMDowNDoxMyk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE3NzYxMDUzMiByZz1zY2htYXJybgp+IyEgdGlkPTExNzczMDcwNjcKV2VubiBEdSBzY2hvbiBuaWNodCBtZWhyIHdlaXNzdCwgd2FzIER1IGhpZXIgbWFjaHN0LCBzb2xsdGVzdCBEdSBEaXIKdmllbGxlaWNodCBkZW4gR25hZGVuc2NodXNzIGdlYmVuPyAKCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogYXJ0aWtlbCBEYXMgTXVkIHNvbGwgbGViZW5kaWdlciB3ZXJkZW4gQmVydWZlIChPcmt0b2V0ZXIsIDI2LiBBcHIgMjAwNywgMjA6MTk6NDkpOgp+IyEgcm49Q2hhZ2FsbCBydD0xMTc3NjEwNjUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3NzMwNzA2NwpOZWluLCBuZWluLCBuZWluISBJY2ggbWFnIGFsdCB1bmQgdGF0dHJpZyBzZWluLCBhYmVyIGljaCB3ZWlzIGltbWVyIG5vY2gsIGRhc3MKaWNoIGVzIGJpbiwgZGVyIGRlbiBPcmtzIGRlbiBHbmFkZW5zdG9zcyAobmljaHQgLXNjaHVzcykgZ2lidCEKCk9ya1QsIHRhdHRlcm5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IGFydGlrZWwgRGFzIE11ZCBzb2xsIGxlYmVuZGlnZXIgd2VyZGVuIEJlcnVmZSAoQ3JvZnQsIDI3LiBBcHIgMjAwNywgMDA6MjQ6MTgpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNzc2MTE1ODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc3MzA3MDY3CkRhcyBiZXp3ZWlmbGUgaWNoLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBhcnRpa2VsIERhcyBNdWQgc29sbCBsZWJlbmRpZ2VyIHdlcmRlbiBCZXJ1ZmUgKE1haGFyZXQsIDI3LiBBcHIgMjAwNywgMTI6Mjc6NDApOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExNzc2MTA1MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc3MzA3MDY3CldhcyBkdSBoaWVyIG1hY2hzdCwgZnJhZ2VuIHNpY2ggYW5kZXJlIGFiZXIgYXVjaCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdhcnR1bmdzYXJiZWl0ZW4gTmV0Q29sb2duZSBSZWNoZW56ZW50cnVtIElJIChPcmt0b2V0ZXIsIDI3LiBBcHIgMjAwNywgMjE6MzU6MzcpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTExNzc3MDIxNjAgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTExNzc3MDIxNjAKWml0YXQ6InNlaWQgYml0dGUgbmljaHQgYm9lc2UsIHdlbm4gZXMgd2lya2xpY2ggenUgZWluZW0gQXVzZmFsbAprb21tZW4gc29sbHRlLCBhYmVyIGljaCB0dWUgYWxsZXMsIGRhbWl0IGRhcyBhdWNoIG9obmUgbWVpbmUgQW53ZXNlbmhlaXQKa2xhcHB0LgoiCkFtYSB0dXQgYWxsZXMgZGFtaXQgZXMgenUgZWluZW0gQXVzZmFsbCBrb21tdD8gTmltbXQgc29nYXIgZXh0cmEgZGFmdWVyClVybGF1Yj8gV293ISA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXYXJ0dW5nc2FyYmVpdGVuIE5ldENvbG9nbmUgUmVjaGVuemVudHJ1bSBJSSAoR3JpbW1ib3JuLCAyNy4gQXByIDIwMDcsIDIxOjQ0OjA1KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTc3NzAyNTM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3NzcwMjE2MApOZW5udCBtYW4gIkRpZW5zdCBhbSBLdW5kZW4iLiBJc3QgaGV1dGUgc2VsdGVuIGdld29yZGVuLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGVlcnplaWNoZW4genV2aWVsPyAoQ2hhZ2FsbCwgIDEuIE1haSAyMDA3LCAxOTo0OTozNCk6Cn4jISBybj1IdW1uaSBydD0xMTc4MDM3OTY4IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTE3ODAzNzk2OApBbHNvIHdpciBzaW5kIGphIGpldHp0IHNjaG9uIHVlYmVyIDg1IFRhZ2Ugb2JlbiwgWmVpdCBmdWVyIGVpbmVuCldlbHR1bnRlcmdhbmcuCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZyYW5rZnVydC1Eb25uZXJzdGFnIDEwLiBNYWkgKENyb2Z0LCAgMy4gTWFpIDIwMDcsIDE2OjE1OjQ1KToKfiMhIHJuPU1lc2lyaWkgcnQ9MTE3ODIwMTU0NyByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTc4MjAxNTQ3CkltbWVyIGRpZXNlIEtvbmt1cnJlbnp2ZXJhbnN0YWx0dW5nZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCb2NodW0sIDQuNS4sIDQgV2luZGUgKEdyaW1tYm9ybiwgIDMuIE1haSAyMDA3LCAxOTo0Nzo1Nyk6Cn4jISBvbj1HcmltbWJvcm4gb3Q9MTE3ODIxNDQ2OSBvZz10cmVmZmVuCn4jISBybj1IdW1uaSBydD0xMTc4MjA4NDY1IHJnPXRyZWZmZW4KfiMhIHRpZD0xMTc4MDQ3MDE1ClAuUy46IEplZGVyIGRlciBpbiBkZXIgZ2VuYW5udGVuIFN0dW5kZSB2b24gV29XIGFuZmFlbmd0IHphaGx0IGVpbmUgUnVuZGUuIEVzCndpcmQgbm9jaCBqZW1hbmQgZ2VzdWNodCBkZXIgZWluZSBhdXRvcml0aGF0aXZlIEZ1bmt1aHIgbWl0YnJpbmdlbiBrYW5uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXJ1bSBMZXV0ZSBzbyB3ZWcgc2luZCAuLi4gKExpYXJhLCAgNC4gTWFpIDIwMDcsIDE2OjE5OjA0KToKRG9kbyBpc3QgYWxzIGFid2VzZW5kIGdla2VubnplaWNobmV0LgpHcnVuZDogdGFzdGF0dXIga2F1ZmVuIGRhIGdlbmVydnQgdm9uIGRlciBoaWVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldHRlcyBCbG9nIHVlYmVyIE11c2gvTXVkcyAoT3JrdG9ldGVyLCAgNy4gTWFpIDIwMDcsIDIyOjQyOjUzKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTE3ODU3MDM5OCByZz13d3cKfiMhIHRpZD0xMTc4NTcwMzY4Ck9oIEpvZiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldHRlcyBCbG9nIHVlYmVyIE11c2gvTXVkcyAoWmVzc3RyYSwgIDcuIE1haSAyMDA3LCAyMjo0NDozNSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE3ODU3MDU3MyByZz1zY2htYXJybgp+IyEgdGlkPTExNzg1NzAzNjgKU2NoYWRlLCBkYXNzIGljaCBiZWkgZGVtIERpbmcgZGVuIFJTUy9BdG9tLUZlZWQgbmljaHQgZmluZGUuIFNvIHZlcmdlc3MgaWNoCmRhcyB2ZXJtdXRsaWNoIHppZW1saWNoIHNjaG5lbGwgd2llZGVyLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTXVkcGFydHkgYmVpIEJvaW5nIChMaWFyYSwgIDcuIE1haSAyMDA3LCAyMzozNzowMCk6Cn4jISBybj1NYWhhcmV0IHJ0PTExNzg1MzUzNDAgcmc9dHJlZmZlbgp+IyEgdGlkPTExNzg1MTc3MTMKQW0gTW9yZ2VuIFdPTkFDSCBiaXR0ZT8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE11ZHBhcnR5IGJlaSBCb2luZyAoT3JrdG9ldGVyLCAgNy4gTWFpIDIwMDcsIDIzOjM4OjEwKToKfiMhIHJuPUxpYXJhIHJ0PTExNzg1NzM4MjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc4NTE3NzEzCldpbGxzdCBkdSBkYXMgd2lya2xpY2ggZ2VuYXVlciB3aXNzZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJbnRlcmVzc2FudGVzIENDOi4uLiAoWmVzc3RyYSwgIDguIE1haSAyMDA3LCAxMjo0Mjo0NSk6CkNjOiBObiwgWmVzc3RyYUB6ZXNzdHJhLmRlLCBaZXNzdHJhLCBaZXNzdHJhQHplc3N0cmEuZGUsIFplc3N0cmEsIApaZXNzdHJhQHplc3N0cmEuZGUsIFplc3N0cmFAemVzc3RyYS5kZSwgWmVzc3RyYSwgWmVzc3RyYUB6ZXNzdHJhLmRlLCBaZXNzdHJhLCAKWmVzc3RyYUB6ZXNzdHJhLmRlLCBMZW9uaWRhc0ByZWdlbmJvZ2VuLCBNb29uc2hpbmUsIEJhYm9vbgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEludGVyZXNzYW50ZXMgQ0M6Li4uIChNYWhhcmV0LCAgOC4gTWFpIDIwMDcsIDEyOjQzOjUxKToKfiMhIHJuPVplc3N0cmEgcnQ9MTE3ODYyMDk2NSByZz1zY2htYXJybgp+IyEgdGlkPTExNzg2MjA5NjUKTWFuIG11c3MgZGlyIG9mZmVuYmFyIGFsbGVzIG1laHJtYWxzIHNhZ2VuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEludGVyZXNzYW50ZXMgQ0M6Li4uIChaZXNzdHJhLCAgOC4gTWFpIDIwMDcsIDEyOjQ3OjA2KToKfiMhIHJuPU1haGFyZXQgcnQ9MTE3ODYyMTAzMSByZz1zY2htYXJybgp+IyEgdGlkPTExNzg2MjA5NjUKTWhtbSwgc2NoZWludCBzby4gWnVtIEdsdWVjayB3YXIgZGVyIE1haWxlciBhYmVyIHNvIGludGVsbGlnZW50IHVuZCBoYXQgbWlyCm51ciBlaW5lIEtvcGllIGlucyBQb3N0ZmFjaCBnZWxlZ3QuIDstKQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEludGVyZXNzYW50ZXMgQ0M6Li4uIChHbG9pbnNvbiwgIDguIE1haSAyMDA3LCAxMjo0NzowOCk6Cn4jISBybj1aZXNzdHJhIHJ0PTExNzg2MjA5NjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc4NjIwOTY1CkRhcyBsaWVndCBhbSBNYWlsZXIsIGRlciBsb2VzdCBkaWNoIGhhbHQgYXVmIHVuZCBmdWVndCBkaWNoIGhpbnp1LiBNYWNoIGhhbHQKbWFsIGVpbmVuIFVuaXF1ZS1Db25zdHJhaW50IGFuIGRlciBTdGVsbGUgcmVpbiAod2VubiBkdSBzaWUgZmluZGVzdCkuIERpZSBNYWlsCndhciBlaW5lIEFudHdvcnQgYXVmOgoKQWJzZW5kZXI6IE1vb25zaGluZQpBbjogQmFib29uCkNjOiBNb29uc2hpbmUsIEdsb2luc29uLCBMZW9uaWRhc0ByZWdlbmJvZ2VuLCBaZXNzdHJhQHplc3N0cmEuZGUsIFplc3N0cmEsClplc3N0cmFAemVzc3RyYS5kZSwgWmVzc3RyYQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEludGVyZXNzYW50ZXMgQ0M6Li4uIChHbG9pbnNvbiwgIDguIE1haSAyMDA3LCAxMjo0ODo1Nyk6Cn4jISBybj1aZXNzdHJhIHJ0PTExNzg2MjEyMjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc4NjIwOTY1CkF1ZmxvZXNlbiB1bmQgSGluenVmdWVnZW4gcGFzc3QgdWVicmlnZW5zIGd1dCB6dSBDaGVtaWtlcm4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBJbnRlcmVzc2FudGVzIENDOi4uLiAoWmVzc3RyYSwgIDguIE1haSAyMDA3LCAxMjo0OTozOSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTc4NjIxMjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3ODYyMDk2NQpNaG1tLCBqYSwgbXVlc3N0ZSBtYW4gZWNodCBtYWwgbWFjaGVuLiBIYXR0ZSBkaWUgRnVua3Rpb24gbmV1bGljaCBpcmdlbmR3YW5uCnVjaCBzY2hvbm1hbCB2b3IgbWlyLCBnbGF1YiBpY2guCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRXJzdGVyISAoUm9uZGEsICA4LiBNYWkgMjAwNywgMjM6NTA6MDcpOgp+IyEgcm49TWVzaXJpaSBydD0xMTc4NTg0NDkwIHJnPXNjaG1hcnJuLm5ldGRpZ2VzdAp+IyEgdGlkPTExNzg1ODQ0OTAKKnNjaG11bnplbCogRHUgd2Fyc3QgYWJlciBnYW56IHNjaG9lbiBhdWZnZXJlZ3QsIE1lc2ksIGRhc3MgRHUgZGFzIGRhbm4gaW4Kc2NobWFycm4ubmV0ZGlnZXN0IGdlcG9zdGV0IGhhc3QsIGdlbGw/IDstKQoKUm9uZGEgKm5laW4sIG1hbiBtdXNzIG5pY2h0IElNTUVSIGVyc3RlciBzZWluLi4uKgoKCgoKCi4uLiB1bmQgd2VyIGRhIGpldHp0IGFuIHdhcyB1bmFuc3RhZW5kaWdlcyBkZW5rdCwgaXN0IHNlbGJlciBzY2h1bGQgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUnVja3NhY2sgdmVybWlzc3QgKFZhbmlvbiwgMTIuIE1haSAyMDA3LCAxMTowNzoyMCk6Cn4jISBybj1NZXNpcmlpIHJ0PTExNzg5MjY4NTcgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMTc4OTI2ODU3CldpciBicmF1Y2hlbiBlaW4gRnVuZGJ1ZXJvIQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUnVja3NhY2sgdmVybWlzc3QgKE1haGFyZXQsIDEyLiBNYWkgMjAwNywgMTE6MDk6NDIpOgp+IyEgcm49VmFuaW9uIHJ0PTExNzg5NjA4NDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc4OTI2ODU3Ck9kZXIgTWVzaSBlaW4gR2VkYWVjaHRuaXMgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBSdWNrc2FjayB2ZXJtaXNzdCAoVmFuaW9uLCAxMi4gTWFpIDIwMDcsIDExOjEwOjE0KToKfiMhIHJuPU1haGFyZXQgcnQ9MTE3ODk2MDk4MiByZz1zY2htYXJybgp+IyEgdGlkPTExNzg5MjY4NTcKRGFubiBpc3RzIHdvaGwgZGFzIEZ1bmRidWVyby4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBLYXJ0b2ZmZWwtR3Vya2VuLVNhbGF0IG1pdCBDcmFuYmVycmllcyAoR2xvaW5zb24sIDEzLiBNYWkgMjAwNywgMjM6NTU6NTcpOgp+IyEgb249R2xvaW5zb24gb3Q9MTE3OTA5MzM0MyBvZz1rb2NocmV6ZXB0ZQp+IyEgcm49Qm9pbmcgcnQ9MTE3OTA5MTg4MCByZz1rb2NocmV6ZXB0ZQp+IyEgdGlkPTExNzkwNTcxMTYKSW4geW91ciBoZWFoZWFkPyBPciB5b3VyIHN0b21hY2g/IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLbHVnZSBEcmFjaGVuLiAoTWFoYXJldCwgMTQuIE1haSAyMDA3LCAxNTozMzowMCk6Cn4jISBybj1aZXNzdHJhIHJ0PTExNzkxNDk1MzAgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMTc5MTQ5MzMyCkphLCBqZXR6dCBwcnVlZ2VsdCB1bmQgZnJlc3N0IGV1Y2ggZ2VnZW5zZWl0aWcsIHdlciBkZXIgQm9lc2VyZSBpc3QhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBLbHVnZSBEcmFjaGVuLiAoWm9vaywgMTQuIE1haSAyMDA3LCAxNTozNzo1OSk6Cn4jISBybj1NYWhhcmV0IHJ0PTExNzkxNDk1ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc5MTQ5MzMyCldpZSBzZWlkIGRlbm4gSWhyIGRyYXVmPyBaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBLbHVnZSBEcmFjaGVuLiAoSHVtbmksIDE0LiBNYWkgMjAwNywgMTU6Mzg6MDEpOgp+IyEgcm49TWFoYXJldCBydD0xMTc5MTQ5NTgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3OTE0OTMzMgpEYXMgc3RlaHQgZmVzdC4KClplc3N0cmEgYmF1dCBkaWUgZ2FuemUgTXVkbGliIHVtIHVuZCBiYXV0IGVpbmVuIGVpbnppZ2VuIGtsZWluZW4gQnVnIGVpbi4gRGFzCmlzdCBpbnNnZXNhbXQgc2VociAuLi4gbGllYi4KCkRlciBCdWcgZnVlaHJ0IGRhenUsIGRhc3MgVHJ2ZXMga2VpbmUgbmV1ZW4gU2tpbGxzIGVybGVybmVuIGtvZW5uZW4sIHdlbm4gc2llCmRlbiBXYWZmZW5za2lsbCBzY2hvbiBoYWJlbi4gRGFzIGlzdCBuaWNodCBzb28gdHJhZ2lzY2ggKGF1Y2ggbmljaHQgc2Nob2VuLAphYmVyIG5pY2h0IHNvIHNjaGxpbW0pLgoKSHVtbmkgYmF1dCBudW4gZGFzIEdhbnplIHNvIHVtLCBkYXNzIFRydmVzIHp3YXIgV2FmZmVuc2tpbGxzIGVybGVybmVuLCBhYmVyCmJlaSBuaWVtYW5kZW0gbWVociAoZGVyIGltIGVudHNwcmVjaGVuZGVuIFplaXRyYXVtIHJlbmV3dCB3dXJkZSkgSVJHRU5ERUlOClNraWxsIG9kZXIgU3BlbGwgZnVua3Rpb25pZXJ0LiBPay4gQXVzc2VyIGRlbiBhbGxnZW1laW5lbiBXYWZmZW5za2lsbHMuLi4KCkFsc28sIHdlciBpc3QgamV0enQgYm9lc2VyPwoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEtsdWdlIERyYWNoZW4uIChaZXNzdHJhLCAxNC4gTWFpIDIwMDcsIDE1OjM5OjU4KToKfiMhIHJuPUh1bW5pIHJ0PTExNzkxNDk4ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc5MTQ5MzMyCkxpZWI/IDstKSBNaXIgaXN0IGdhciBuaWNodCBhdWZnZWZhbGxlbiwgZGFzcyBIdW1uaXMgRml4IG5lbiBQcm9ibGVtIHdhci4gV2FyCmJlc3RpbW10IHVudGVyYmV3dXNzdGUgRmllc2hlaXQuIDstKQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogS2x1Z2UgRHJhY2hlbi4gKEh1bW5pLCAxNC4gTWFpIDIwMDcsIDE1OjQwOjQwKToKfiMhIHJuPVplc3N0cmEgcnQ9MTE3OTE0OTk5OCByZz1zY2htYXJybgp+IyEgdGlkPTExNzkxNDkzMzIKTmEgZ3V0LiBPay4gU28gZ2VzZWhlbi4uLiBhYmVyIGZpZXMgc2luZCBhbGxlLiBOYWphLCBNYWNodGdlaWxoZWl0IHVuZApXaWxsa3VlciEKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBLbHVnZSBEcmFjaGVuLiAoWmVzc3RyYSwgMTQuIE1haSAyMDA3LCAxNTo0NDo0NSk6Cn4jISBybj1IdW1uaSBydD0xMTc5MTUwMDQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3OTE0OTMzMgpOYSwgZ3V0LCBkYXNzIHdpciBkYXMgZ2VrbGFlcnQgaGFiZW4uICpnKgpCVFc6IFVtIGRhcyB6dSBiZXN0YWVya2VuOgo8TWl0dGVpbHVuZyB2b24gUnVtYXRhPgpUaGUgZm9sbG93aW5nIHBhY2thZ2VzIHdpbGwgYmUgUkVNT1ZFRDoKICBsaWJzc3AwCjxFbmRlIGRlciBNaXR0ZWlsdW5nPgoKU1NQIHdhciBnZXN0ZXJuLiA7LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEtsdWdlIERyYWNoZW4uIChab29rLCAxNC4gTWFpIDIwMDcsIDE1OjUwOjQ4KToKfiMhIHJuPVplc3N0cmEgcnQ9MTE3OTE1MDI4NSByZz1zY2htYXJybgp+IyEgdGlkPTExNzkxNDkzMzIKUnVtYXRhIHNhZ3Q6IHNzcCBpc3QgbnVuIHRlaWwgdm9uIGxpYmMKCk5lLCBpcyBrbGFyLiBaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBLbHVnZSBEcmFjaGVuLiAoR3JpbW1ib3JuLCAxNC4gTWFpIDIwMDcsIDE1OjU1OjQ1KToKfiMhIHJuPVpvb2sgcnQ9MTE3OTE1MDY0OCByZz1zY2htYXJybgp+IyEgdGlkPTExNzkxNDkzMzIKTmEga29tbSwgZGllc2UgRXhnb2V0dGVyIGtlbm5lbiBzaWNoIGltIFNwaWVsIGRvY2ggc2Nob24gZXdpZyBuaWNodCBtZWhyIGF1cy4KRGVyZW4gU3BpZWxlcnplaXRlbiB3YXJlbiBhbHMgZGllIFd1ZXN0ZSBub2NoIHZvbGxlciBncnVlbmVyIEJhZXVtZSBzdGFuZC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogS2x1Z2UgRHJhY2hlbi4gKE1hcmN1cywgMTQuIE1haSAyMDA3LCAxNjowNDo0MCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE3OTE1MDk0NSByZz1zY2htYXJybgp+IyEgdGlkPTExNzkxNDkzMzIKV29taXQgZXIgYWJlciByZWNodCBoYXQuCgpBbHNvIGRhbWl0IGRhcyBsaWJzc3AgamV0enQgaW4gZ2xpYmMgZHJpbiBpc3QuLQoKQ2lhbywgTWFyY3VzICgqKiogc3RhY2sgb3ZlcmZsb3cgZGV0ZWN0ZWQuIGFib3J0aW5nICoqKikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEtsdWdlIERyYWNoZW4uIChMaWFyYSwgMTQuIE1haSAyMDA3LCAxOToxMzoyNyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE3OTE1MDk0NSByZz1zY2htYXJybgp+IyEgdGlkPTExNzkxNDkzMzIKQmFldW1lIGluIGRlciBXdWVzdGU/IFdvIHNpbmQgZGllIGRlbm4gYWxsZSBoaW4/ClZpZWxsZWljaHQgc2NocmVpYnQgbWFsIGplbWFuZCBlaW5lIFF1ZXN0IGRhenUgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogS2x1Z2UgRHJhY2hlbi4gKERhcmtsb3IsIDE1LiBNYWkgMjAwNywgMjA6MjU6NDEpOgp+IyEgcm49TGlhcmEgcnQ9MTE3OTE2MjgwNyByZz1zY2htYXJybgp+IyEgdGlkPTExNzkxNDkzMzIKOnBmbGFuenQgZWluIHBhYXIgQmFldW1lIGluIGRlciBXdWVzdGUuCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbnN0ZWluIGlzdCB0cml2aWFsLiAoQWxrb2hvbCwgMTYuIE1haSAyMDA3LCAyMjoyMjoyMSk6Cn4jISBybj1IdXJheHByYXggcnQ9MTE3OTM0NTcxMyByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMTc5MzQxOTc1CnNvc28sIGR1IGtlbm5zdCBkaWNoIGFsc28gbWl0IGFsbGdlbWVpbmVyIFJlbGF0aXZpdGFldHN0aGVvcmllIGF1cz8gS2FubnN0IGR1CnNpZSBtaXIgZGFubiBtYWwgZXJrbGFlcmVuPwoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRWluc3RlaW4gaXN0IHRyaXZpYWwuIChBbGtvaG9sLCAxNi4gTWFpIDIwMDcsIDIyOjIzOjEyKToKfiMhIHJuPUFsa29ob2wgcnQ9MTE3OTM0Njk0MSByZz1zY2htYXJybgp+IyEgdGlkPTExNzkzNDE5NzUKYWJlciB3YWhyc2NoZWlubGljaCB2ZXJzdGVoIGljaCBtYWwgd2llZGVyIHdhcyBmYWxzY2hlcyB1bnRlciB0cml2aWFsICpnKgoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRWluc3RlaW4gaXN0IHRyaXZpYWwuIChIdXJheHByYXgsIDE2LiBNYWkgMjAwNywgMjI6MjY6NTYpOgp+IyEgcm49QWxrb2hvbCBydD0xMTc5MzQ2OTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3OTM0MTk3NQplcmtsYWVyc3QgZHUgbWlyIGRhbm4gaW0gZ2VnZW56dWcgZnJhdWVuPyA7KSB1bmQgenUgdHJpdmlhbCBnZW51ZWd0IHZvbGdlbmRlCmJlbWVya3VuZyBlaW5lcyBhbmFseXNpc3Byb2Zlc3NvcnMsIGFtIGVuZGUgZWluZXIgbGFuZ2VuIGJld2Vpc2tldHRlOiAiZGVyCnJlc3QgaXN0IGxpbmVhcmUgYWxnZWJyYSwgZGFzIGhlaXNzdCBkZXIgcmVzdCBpc3QgdHJpdmlhbC4iIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBFcndlaXRlcnVuZyBkZXIgR2lsZGVudGl0ZWwgKE5penpsLCAxOC4gTWFpIDIwMDcsIDIyOjAyOjEyKToKfiMhIHJuPUFyayBydD0xMTc5NTE4NDk2IHJnPWdpbGRlbi5rYXR6ZW5rcmllZ2VyCn4jISB0aWQ9MTE3ODI5MjYwMQp1bmQgZGllIEVpc2tyYXR6ZXIgbmljaHQgdmVyZ2Vzc2VuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKExpYXJhLCAxOS4gTWFpIDIwMDcsIDAxOjE0OjAxKToKQmxpdmkgdGVpbHQgRGlyIG1pdDogc3RpcmJ0IG1hbiB3ZW5uIG1hbiBkZW4ga29wZiBhdWYgZGVuIHJpY2h0YmxvY2sgbGVndD8KRHUgdGVpbHN0IEJsaXZpIG1pdDogbnVsbCBhaG51bmcgZGFzIGlzdCBqYWhyZSBoZXIgOikKQmxpdmktPkxpYXJhIGdyaW5zdCBEaWNoIGF1cyBkZXIgRmVybmUgYW4uCkJsaXZpIHRlaWx0IERpciBtaXQ6IGRhbm4gcHJvYmllciBpY2hzIG1hbCA7LSkKW1RvZDpMYXJzXSBFaW5lIEhlbmtlcnNheHQgaGF0IGdlcmFkZSBCbGl2aSB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgSGVua2Vyc2F4dF0gSWhoaGghISEgQmx1dXV0dHR0ISEhICpVUkdTKiBNaXIgd2lyZCBpcmdlbmR3aWUgZ2FuegpbVG9kOkVpbmUgSGVua2Vyc2F4dF0gc2NobGVjaHQsIGhhdCB3ZXIgbmVuIEVpbWVyIHVlYnJpZz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS3VyemZyaXN0aWc6IEJvY2h1bSwgR3J1bmV3YWxkLCAyMCBVaHIsIGhldXRlLCAxOS41LiAoSHVtbmksIDE5LiBNYWkgMjAwNywgMTM6MTU6MjIpOgp+IyEgb249SHVtbmkgb3Q9MTE3OTU3MzMxNCBvZz10cmVmZmVuCn4jISBybj1aZXNzdHJhIHJ0PTExNzk1NzIzNzMgcmc9dHJlZmZlbgp+IyEgdGlkPTExNzk1NzIyMDcKTmFjaCBXZWltYXI/IEVjaHQ/CgpXb3cuCgpIdW1uaQooamFqYSBpY2ggdmVybGVnIGphIHNjaG9uKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VubiBtYW4gaWhuIG1hbCB3aWVkZXIgbmljaHQgYnJhdWNodCAuLi4uIChNaXJha2EsIDIxLiBNYWkgMjAwNywgMTE6NTM6MDMpOgpydWZlIHRlc3QKRHUgaGFzdCBqZXR6dCAyMzQgTGViZW5zcHVua3RlIHVuZCAyMTAgS29uemVudHJhdGlvbnNwdW5rdGUuCkR1IHJ1ZnN0OiB0ZXN0CmxhdXNjaGUKRHUgbGF1c2Noc3QgYW5nZXN0cmVuZ3QgaW4gZGVuIE5lYmVsLgpFaW4gd2FiZXJuZGVzIEdlYmlsZGUgZXJzY2hlaW50IHVycGxvZXR6bGljaCB2b3IgRGlyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWxsZXMga2xhciAoS3dha3MsIDIxLiBNYWkgMjAwNywgMTU6MjM6MTYpOgpEdSBoYXN0IC0xIG5ldWUgQnJpZWZlIGltIFBvc3RhbXQgbGllZ2VuLgoobmFjaCBkZW0gYXV0b21hdGlzY2hlbiByZW5ldykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBhbGxlcyBrbGFyIChIdXJheHByYXgsIDIxLiBNYWkgMjAwNywgMTY6NTY6MTUpOgp+IyEgcm49S3dha3MgcnQ9MTE3OTc1Mzc5NiByZz1zY2htYXJybgp+IyEgdGlkPTExNzk3NTM3OTYKU29sbCBpY2ggRGlyIGVpbmVuIEJyaWVmIHNjaHJlaWJlbiwgZGFtaXQgRGVpbiBQb3N0ZmFjaCBkYW5uIHdpZWRlciBsZWVyIGlzdD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTcGlubmVuaW52YXNpb24gKFplc3N0cmEsIDI0LiBNYWkgMjAwNywgMjM6NDI6NDkpOgp+IyEgcm49WmVzc3RyYSBydD0xMTgwMDQyNjE2IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTE4MDA0MjYxNgpEYSBoYXR0ZW4gYmVzdGltbXQgZWluIENoYW90IGJ6dy4gZGllIE1hZWNodGUgZGVzIENoYW9zIGlocmUgSGFuZCBpbSBTcGllbGUuLi4KOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNwaW5uZW5pbnZhc2lvbiAoTWVzaXJpaSwgMjQuIE1haSAyMDA3LCAyMzo0MzoxMSk6Cn4jISBybj1aZXNzdHJhIHJ0PTExODAwNDI5Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTgwMDQyNjE2CmpldHp0IHZlcnJhdCBkb2NoIG5pY2ggYWxsZXMKCk1lc2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZvbHRlciBhdWYgZGVtIEZiYW5kIDspIChMaWFyYSwgMjguIE1haSAyMDA3LCAwMToxMjoxOCk6CkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IERhcyBpc3QgZ3J1c2VsaWcsIGRhcyBzdGltbXQgYmVzdGltbXQsIHdlbm4KRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogZWluZW0gc28gZWluIFJlaW0gZHVyY2ggZGVuIEdlaG9lcmdhbmcgcmlubnQuCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IE1hbiBzY2hyZWl0LCBtYW4gYnJ1ZWxsdCwgbWFuIHdpbGwgbGF1dApEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiB3ZWluZW4sIGRvY2ggZGVyIFJlaW0gdHV0IHRyb3R6ZGVtCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IGVyc2NoZWluZW4uLi4uCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IE9oIGphLCBMaWFyYSBsYXV0aGFscyBhdWEgc2NocmVpdCwgd2VubiBzaWUKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogbWVpbiBHZWRpY2h0IG1hbCBicmVpdC4gVW5kIGF1Y2ggYmVpbQpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBaZXJzY2htZXR0ZXJuIG1laW5lciBHZWRpY2h0ZSB3aXJkIG1hbgpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiB3ZXR0ZXJuLi4uLgpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogdHV0IHR1dCB0dXQgc2FndCBkZXIgd29lcnRlcmJyZWNoZXIsIHdpcmZ0CkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBzaWxiZW4gaW4gZGVuIGtub2JlbGJlY2hlciwgc2NodWV0dGVsdCBpaG4gdW5kCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBzaWVodCBuZW4gcmVpbSwgZGllIGFuZGVyZW4gaG9lcmVuIGdyYXVzaWdlbgpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogc2NobGVpbQpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogQnVjaHN0YWJlbmRlbW8gc2Nyb2xsdCBnYXIgc2VociwgdW5kIGFsbGUKRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IHdvbGxlbiB3b2hsIG5vY2ggbWVoci4gTnVyIGRlciBhcm1lIEFyayB3ZWludApEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogbGVpc2UsIGRpZSBTcHJhY2gnIHNpZSBnZWh0IGphIHdpZSBlaW4gR3JlaXNlLgpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogV2VyIHNvbGNoZSBTYWNoZW4ga3VlaGwgdmVyemFwZnQsIGRlciBsYWNoZW5kCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBkdXJjaCBTZW1hbnRpa2dyYWViZXIgc3RhcGZ0LgpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBEb3J0IHZvcm5lIGlzdCBlaW5lIEdyYW1tYXRpa2ZhbGxlLCBkYXMgcGFjawpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBpY2ggbm9jaCwgaWNoIGZhbGwgaW4gYWxsZS4gRG9ydCBsYXVlcnQgc2Nob24KRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogZWluIEthbGF1LUZpbHRlciwgZGVuIGtyaWVnIGljaCBhdWNoLCBuaWNodApEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBzY2hhcmYsIHNvbmRlcm4gbWlsZGVyLiBVbmQgZWluIHNjaGxlY2h0ZXMKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogUmVpbXNjaGVtYSB3YWVyIG1pciBiZWluYWhlIGVudHJvbm5lbiwgaGFiCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IGljaHMgZ2VmYW5nZW4gdW5kIG1pciBhbHMgVm9ybGFnZSBnZW5vbW1lbi4uLgpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogV2VyIHNvbGNoZSBTYWNoZW4gVFVUIGVyc2NoYWZmZW4sIGRlciBUVVQgc2ljaApEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogc2NobmVsbCBtYWwgbGFlY2hlcmxpY2ggbWFjaGVuLiBJY2ggVFVFIG1hbApEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogbml4LCBkYW5uIFRVVHMgbWlyIG5pY2h0IHdlaCwgZGVtIEh1bW5pIGFiZXIKRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IGtuaWNrIGljaCBhYiBkZW4gZ3Jvc3NlbiBaZWguIERhIHNjaHJlaXQgZGVyCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBEcmFjaCcsIHNlaW4gSGF1Y2ggZGllIFdlbHQgZW50enVlbmRldCwgZG9jaApEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogaWNoIHJ1ZiBsYXV0LCBlcyBzZWkgdmVya3VlbmRldDogVFVUIGlociBudW4KRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IG5vY2ggd2VpdGVybWFjaGVuLCBkYW5uIHdpcmQgZGllIFdlbHQKRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IGhlcnVudGVya3JhY2hlbi4KRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogaWNoIHR1IGhpZXIgbm9jaCBsYW5nZSBkaWNodGVuLCBqZWRlcnplaXQgdW5kCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IG1pdCBHZWRpY2h0ZW4gLSBvZGVyIG9obmUsIGRhcyBpc3QgZWdhbC4gSWNoCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IGRpY2h0ZSBoaWVyIGF1ZiBqZWRlbiBGYWxsLiBSZWltc2NoZW1hdGEsIGRpZQpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBzaW5kIGZ1ZXIgTG9vc2VyLCBhdWNoIEdvZXRoZSB2ZXJzdG9lc3N0CkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IGRhZ2VnZW4sIHVuZCBkYXMgaXN0IGRlciBiZXN0ZQpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBHZWRpY2h0c2NocmVpYmZlZGVyLVVzZXIuLi4KRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IERpY2h0IGlzdCBkZXMgRGljaHRlcnMgRnJpdHosIHdhcyBlciBuaWNodApEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDoga2FubiwgZGFzIGlzdCBkZXIgV2l0ei4gRG9jaCBIdW1uaXMgV2l0eiBrb21tdApEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogbWl0IEdldG9lc2UsIHplcnNjaG1ldHRlcnQgamVkZSBoYWFyaWdlIE9lc2UsCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiB0cm9ldGV0IGxhdXQsIHdlbm4gZXIgbGFlcm10IHJlaW4sIGxvZXN0IE1lbmdlbgpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogYXVmIHVuZCBsYWVzc3Qgc2llIHNjaHJlaSduLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZvbHRlciBhdWYgZGVtIEZiYW5kIDspIChMaWFyYSwgMjguIE1haSAyMDA3LCAwMToxNjo0Myk6Cn4jISBybj1MaWFyYSBydD0xMTgwMzA3NTM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MDMwNzUzOApEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBNZW5nZW4gc2NocmVpZW4gbGFzc2VuIGthbm4gaWNoIGltbWVyLCBpbgpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBUZWlsbWVuZ2VuIHplcmxlZ2VuIHVuZCBhbmRlcm4gS3JhbQpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiAoc2NobGltbWVyKS4gSWNoIGhhdSBzaWUga2xlaW4sIG1hY2gKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogdW5lbmRsaWNoZSBlbmRsaWNoIChoYWx0IHVuZW5kbGljaCB2aWVsZSkgdW5kCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IHNvIHdpZSBBcnRodXIgRGVudCAoYWxzbyAiRGVudGxpY2giKSBzY2hvbgpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBpbW1lciBnZXNhZ3Qgd3VyZGU6IEljaCBtYWNoIGF1cyBqZWRlciBNZW5nZQpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiA0MiBTdHVlY2ssIGVnYWwgd2llIGdyb3NzIGRpZSBzaW5kIHNvbnN0ICh6dW0KRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogR2x1ZWNrKSBvZGVyIGhhY2sgc2llIGRhbm4gbm9jaCBrbGVpbmVyLCBkYXMKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogbWFjaCBudXIgaWNoIHNvLCB1bmQgc29uc3Qga2VpbmVyLgpEZWluIEZyZXVuZCBBcmsgYWVjaHp0IGF1cyBkZXIgRmVybmUuCgoKUC4gUy46IFdlbm4gQXJrIGFlY2h6dCwgaGF0IEh1bW5pIGdld29ubmVuLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGb2x0ZXIgYXVmIGRlbSBGYmFuZCA7KSAoTGlhcmEsIDI4LiBNYWkgMjAwNywgMDE6MzA6MDEpOgp+IyEgcm49TGlhcmEgcnQ9MTE4MDMwNzgwMyByZz1zY2htYXJybgp+IyEgdGlkPTExODAzMDc1MzgKRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IE1laW4gQXVnJyB3aXJkIG11ZWQsIGRlciBEcmFjaGUgc2Nyb2xsdCwgbnVuCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBidWd0IGVzIG5vY2ggLSB3YXIncyB1bmdld29sbHQ/IEplZG9jaCwgZGllIFJ1aApEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogaXN0IGhpbiwgaWNoIHdhY2hlIG11ZWQsIHVuZCByZWliIG1pciBzdHVtbSBkYXMKRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IEF1Z2VubGllZC4gU2Nob24gd2llZGVyIHNlaGUgaWNoIG5lbiBLYWVmZXIsCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBkZXIgbGV0enRlIFJlaW0sIGRhcyB3YXIgZWluIFNjaGxhZWZlci4gSWNoCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiB3dWVuc2NodCcsIGljaCBrb2VubnQnIGVpbiBzb2xjaGVyIHNlaW4sIHNvCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiB2b2VsbGlnIGxlZXIgdW5kIG9obmUgUmVpbS4KRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGhlaXNzdCBkYXMgZHUgZ2Voc3QgaW5zIGJldHQ/CkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBudXIgd2VubiBpY2ggZGFzIGxldHp0ZSB3b3J0IC4uLiBhZWggcmVpbSBoYWIKRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IDspCkRlaW5lIEZyZXVuZGluIFplc3N0cmEga2ljaGVydCBpbiBkZXIgRmVybmUuCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiB6aWVoLCBodW1uaSAuLi4gbWVpbiByZXZvbHZlciByYXVjaHQgbm9jaCA6KQpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBOZWluIG5laW4sIHNvIGxlaWNodCBrb21tc3QgRFUgbmljaHQgZGF2b24uCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IER1IGhhdXN0IG5pY2h0IGFiLiBBdWNoIG5pY2h0IGluIERhcm1zdGFkdC4KRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogT2RlciBCb25uLgpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogRGFzIG51biB3YXIgZWluIGxlaWNodGVyIFNhdHosIHNvIGdhciBuaWNodApEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogbHVzdGlnLCBvaG5lIEhhdHo/IFdpcmQgZGVyIERyYWNoZSBldHdhCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBzY2hsYWVmdGlnLCBtdXNzIGVyIGJhbGQgaW4gc2VpbmVuIEthZWZpZz8KRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IHNjaGxhZWZyaWcgLi4uIHNvd2FzIDopCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IERlciBEcmFjaGUga2VpbmVuIEthZWZpZyBoYXQsIGVyIHdvaG50IGluCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IEhvZWhsZW4sIHdvIGVyIGJyYXQnIC0gdW5kIHp3YXIgc2VociB2aWVsZSwKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogdmllbGUgTGV1dGUsIGRpZSBmcmlzc3QgZXIgZGFubiAodmllbGUKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogbW9yZ2VuLCBtYW5jaGUgbm9jaCBoZXV0ZSkuCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBEYXMgS2xhbW1lcm4gaXN0IGVpbiByZWNodGVzIE1hbmtvLCBlcyBraWxsdApEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogZGVuIFJlaW0sIHVuZCBkYXMgcmVjaHQgQmxhbmtvLiBXYXMgZGVyIFNhdHoKRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IG5pY2h0IHZvbGxlbmRlbiBrYW5uLCBtYWNodCBkaWUgS2xhbW1lciwgd2VsY2gnCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBlaW4gR3JhbS4KRGVpbmUgRnJldW5kaW4gWmVzc3RyYSB0ZWlsdCBEaXIgbWl0OiBJaHIgc2VpZCBqYSBncm9zc2FydGlnLiA6LSkKRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IGljaCBtdXNzIG5vY2ggZGFzIGxlY2tlciBlc3NlbiBoZXV0IHZlcmRhdWVuCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiAuLi4gYmUgcGF0aWVudCA6KQpEZWluZSBGcmV1bmRpbiBaZXNzdHJhIHRlaWx0IERpciBtaXQ6IEljaCBmaW5kZSwgaWhyIHNvbGx0ZXQgYXVmIGRlciBuYWVjaHN0ZW4KRGVpbmUgRnJldW5kaW4gWmVzc3RyYSB0ZWlsdCBEaXIgbWl0OiBtdWRwYXJ5IGdlbWVpbnNhbSBhdWZ0cmV0ZW4uCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IEtsYW1tZXJuIHNpbmQgZGVzIERyYWNoZW4gRnJldWRlLCBpaG4KRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogZXJnb2V0enQgZXMsIHVuZCBhdWNoIGJlaWRlIHNlaW5lIGtsdWdlbgpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBEcmFjaGVuYXVnZW4gbW9lZ2VuIGtsYW1tZXJuLCB3ZW5uIHNpZQpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiB0YXVnZW4uIE1hbmNoZSBLbGFtbWVybiAod2llIGRpZXNlIGhpZXIpCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IGRpZW5lbiBhYmVyIG5pY2h0IGRhenUgKHNvbmRlcm4gZXJ6YWVobGVuCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IGRhc3MgZGVyIERyYWNoZSB0cmlua3QgQmllcikuIFVuZCBkZXIgRHJhY2hlCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IGJ1Z2d0IGhldXQgbm9jaCwgd2VpbCBlciBlbmRsaWNoIGRpZXNlIFdvY2gKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogaGllciBtYWwgd2llZGVyIHdhcyBtYWNoZW4gd2lsbCwgdW5kIGRhenUKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogdHJpbmt0IGVyIG5vY2ggZWluIFBpbGwocykuCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBsbywgYmVob2xkLCB0aGUga2luZ3Mgb2Ygcmh5bWVzPyA6KQpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogVGhvdSByeW1lc3Qgbm90LCBteWxvcmQgaXMgYWZmZWN0ZWQgYmFkbHksIGJ5CkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBoaXMgZW5kbGVzcyBxdWFmZmluZywgc2FkbHksIEkgeWllbGQgLSBmb3Igbm93CkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiAtIHRvIHNhdmUgaGlzIHNvdWwsIGJ1dCB3aWxsIHJldHVybiB3aXRoIHJoeW1lcwpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogbW9zdCBmb3VsLgpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBPaCBubywgdGhlIGRyYWdvbiBub3cgZW5nbGlzaCByaHltZXMsIGhlIGRvZXMKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogdGhhdCBub3Qgb2Z0ZW4gKG5vdCB5ZXQgbWFueSB0aW1lcykuIEhpcwpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBlbmdsaXNoIHNraWxscyBhcmUgaW5zdWZmaWNpZW50LCBoZSBkb2VzIG5vdApEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBzZWUgaXQgYXMgYSBtaXNzaW9uLiBUaGUgZW5nbGlzaCBzcGVha2luZwpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiB3b3JsZCB3aWxsIGJlbmQgdGhlaXIga25lZXMsIGlmIHRoZSBkcmFnb24KRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogYmVnaW5zIHRvIHJoeW1lIGluIHRyZWVzLiBBbmQgdGhleSBmYWxsIGRvd24sCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IHRoZWlyIGhlYWRzIG9uIHRoZSBncm91bmQsIGlmIHRoZXkgbGlzdGVuIHRvCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IGRyYWdvbiBwb2V0cnkgc291bmQuCkRlaW5lIEZyZXVuZGluIFplc3N0cmEga2ljaGVydCBpbiBkZXIgRmVybmUuCkRlaW5lIEZyZXVuZGluIFplc3N0cmEgdGVpbHQgRGlyIG1pdDogQXBwbGF1cywgQXBwbGF1cyEgOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGb2x0ZXIgYXVmIGRlbSBGYmFuZCA7KSAoTGlhcmEsIDI4LiBNYWkgMjAwNywgMDE6MzY6MzYpOgp+IyEgcm49TGlhcmEgcnQ9MTE4MDMwODYwMSByZz1zY2htYXJybgp+IyEgdGlkPTExODAzMDc1MzgKRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IFRoZXJlIG1heSBiZSB0cnV0aCBpbiB3aGF0IHRob3UgcXVvdGVzdCwKRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IGhvd2V2ZXIsIHRoaW5rIGFib3V0IHRoZSByZW1vdGVzdCwgbW9zdCBhYnN1cmQKRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IGFuZCBzdHVwaWQgcmh5bWU6IFdvdWxkIGl0IGVudGljZSB0aGUgc3VuIHRvCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBzaGluZT8gV2lsbCBpdCBtYWtlIHRoZWUgc21pbGUgc28gYnJvYWRseSwgd2lsbApEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogaXQgbWFrZSBtZSBnaWdnbGUgYnJvYWRseT8gSWYgbm90LCB0aG91IHNoYWx0CkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBub3Qgcmh5bWUsIG5vdCB1bnRpbCB0aGUgc3RhcnMgd2lsbCBzaGluZS4KRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogQnV0IHRoZSBzdGFycyBkbyBzaGluZSBhbHJlYWR5LCBmb3IgbWUsIGZvcgpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiB5b3UsIGFuZCBmb3IgRnJlZGR5LCBmb3IgZXZlcnkgRnJlZGR5IChhbGl2ZQpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBvciBkZWFkKSAtIHRoZXkgYWxsIGNhbiBzZWUgdGhlIHN0YXJzIChzbwpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBncmVhdCEpLiBUaGV5IHdhdGNoIHRoZSBoZWF2ZW5seSBza3kgZWFjaApEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBuaWdodCBhbmQgc2luZyB0aGVpcnMgc29uZ3MsIHdoaWNoIGRvIHRoZW4KRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogc2hpbmUgYnJpZ2h0LiBBbmQgb2YgY291cnNlIGRvIHJoeW1lcyBtb3ZlCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IHRoZSBoZWFydHMgb2YgbWVuIC0gaW4gZW5nbGFuZCwgc2NvdGxhbmQsCkRlaW4gRnJldW5kIEh1bW5pIHRlaWx0IERpciBtaXQ6IGdlcm1hbnksIGV2ZW4gaW4gdGhlIGhvaGVzIGZlbm4uLi4uCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBJIHdpbGwgbm93IHN0b3AgbGVzdCB0aGVyZSBiZSBtb3JlLCB3aWxsIG5vCkRlaW4gRnJldW5kIEFyayB0ZWlsdCBEaXIgbWl0OiBmdXJ0aGVyIGRpZyB1cCBzZW1hbnRpYyBvcmUuIEJ1dCB0aW1lIGhhcyB0YWtlbgpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogbm93IGl0cyB0b2xsLCBpdCBncmluZHMgbXkgd2lsbCBhd2F5LCBob3cKRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IGRyb2xsLiBNeSBoZWFkLCBpdCBiZW5kcyB0byBlYXJ0aGVuIHNvaWwsIHRoZQpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogZGF5LCBpdCB3YXMgc28gaGVhdnkgdG9pbC4gSSBncmVldCB0aGVlLCBEcmFnb24KRGVpbiBGcmV1bmQgQXJrIHRlaWx0IERpciBtaXQ6IEJsYWNrLCB0aGUgTWlnaHR5LCB3aWxsIHJldHVybiBidXQgdGhlbiB0bwpEZWluIEZyZXVuZCBBcmsgdGVpbHQgRGlyIG1pdDogZmlnaHQgdGhlZSEKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogVGhlbiBnbyB0byBiZWQsIHlvdSByYWlkZXIgb2YgdGhlIGxvc3QgYXJrLApEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBhbmQgZmVlbCBmcmVlIHRvIGVudGVyIG5pZ2h0cyBzbGVlcGluZyBkYXJrIQpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBHcmVldCB0aGUgZGFya25lc3Mgd2l0aCBhbGwgeW91ciBtaWdodCwgaQpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiByZWFsbHkgZW5qb3kgdGhpcyBraW5kIG9mIGZpZ2h0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZvbHRlciBhdWYgZGVtIEZiYW5kIDspIChEYXJrbG9yLCAyOC4gTWFpIDIwMDcsIDA2OjE4OjMwKToKfiMhIHJuPUxpYXJhIHJ0PTExODAzMDc1Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMTgwMzA3NTM4CkdlbmF1ISBTaWUgc2NocmVpZW5kIHJlbm5lbiBXZWchCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRm9sdGVyIGF1ZiBkZW0gRmJhbmQgOykgKE1lc2lyaWksIDI4LiBNYWkgMjAwNywgMDk6MjU6NTEpOgp+IyEgcm49TGlhcmEgcnQ9MTE4MDMwNzUzOCByZz1zY2htYXJybgp+IyEgdGlkPTExODAzMDc1MzgKV2FydW0gbWFjaHQgaWhyIHNvd2FzIG5pY2h0IGF1ZiBLdWx0dXIsIHdvIGFsbGUgd2FzIGRhdm9uIGhhYmVuPwpVbmQgZGFyZiBpY2ggZGFzIGlucyBOZXR6IHN0ZWxsZW4/CgpNZXNpLCBpbW1lciBub2NoIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZvbHRlciBhdWYgZGVtIEZiYW5kIDspIChCb2luZywgMjkuIE1haSAyMDA3LCAxMDoyMDozNyk6Cn4jISBybj1NZXNpcmlpIHJ0PTExODAzMzcxNTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTgwMzA3NTM4CkVpbiBQb2V0cnkgU2xhbSBhdWYgZGVyIG5hZWNoc3RlbiBQYXJ0eSBoYWV0dGUgZWNodCB3YXMgLi4uIHVuZCBuZWhtdApWaWRlb2thbWVyYXMgbWl0ISA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGb2x0ZXIgYXVmIGRlbSBGYmFuZCA7KSAoSHVtbmksIDI5LiBNYWkgMjAwNywgMjA6MzE6MjcpOgp+IyEgcm49Qm9pbmcgcnQ9MTE4MDQyNjgzNyByZz1zY2htYXJybgp+IyEgdGlkPTExODAzMDc1MzgKQXUgamEsIGVpbiBQb2V0cnkgU2xhbSEgSWNoIGhhYiBzY2hvbm1hbCBlaW5lbiBnZXdvbm5lbi4uLgoKQWJlciBndXQsIGdlZ2VuIEFyay4uLiB3ZWlhLiBEYXMgd2FlcmUgaGFydC4uLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZvbHRlciBhdWYgZGVtIEZiYW5kIDspIChBcmssIDI5LiBNYWkgMjAwNywgMjA6NDQ6NTUpOgp+IyEgcm49SHVtbmkgcnQ9MTE4MDQ2MzQ4NyByZz1zY2htYXJybgp+IyEgdGlkPTExODAzMDc1MzgKSGEsIER1IGJpc3QgZWluIFByb2Zlc3Npb25lbGxlcj8gVW5kIGRhbm4gZ2VnZW4gbWljaCBhcm1lbiBBbWF0ZXVyIHVuZApXZXR0a2FtcGZsb3NlbiBhbnRyZXRlbiB3b2xsZW4/IFVOREVSU1RBVEVNRU5ULCBqYXdvbGwuIEJ1aCwgU2NoaWVidW5nLCBHZWxkCnp1cnVlY2ssIEVQTywgYWJnZWthcnRldGUgU2FjaGUhCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRm9sdGVyIGF1ZiBkZW0gRmJhbmQgOykgKEh1bW5pLCAyOS4gTWFpIDIwMDcsIDIwOjQ1OjQ2KToKfiMhIHJuPUFyayBydD0xMTgwNDY0Mjk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MDMwNzUzOAoiRWluIFByb2Zlc3Npb25lbGxlciI/IFdvdy4gU28gaGF0IG1pY2ggbm9jaCBrZWluZXIgZ2VuYW5udC4uLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEZvbHRlciBhdWYgZGVtIEZiYW5kIDspIChMaWFyYSwgMzAuIE1haSAyMDA3LCAwMDowODo1NSk6Cn4jISBybj1IdW1uaSBydD0xMTgwNDY0MzQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MDMwNzUzOApEdSBzY2hlaW5zdCBqYSBpbnRlcmVzc2FudGUgUXVhbGlmaWthdGlvbmVuL0ZhZWhpZ2tlaXRlbiB6dSBoYWJlbiAuLi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERhcyBpc3QgZG9jaCBWZXJsZXVtZHVuZyEgKEhpZ2hsYW5kZXIsICA4LiBKdW4gMjAwNywgMTU6Mzg6MTApOgp+IyEgcm49SHVtbmkgcnQ9MTE4MTMwNTc0MCByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMTgxMTY2OTI5CkRlaW4gZXJzdGVyIE5lYmVuc2F0eiBrZWluIFZlcmIsIEh1bW5pLgoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBtb3JnZW5ncmF1ZW4gaW0gc3R1ZGl2ej8gKEdsb2luc29uLCAxMi4gSnVuIDIwMDcsIDEyOjQ2OjU0KToKfiMhIHJuPUVubm94IHJ0PTExODE2NDUwNjkgcmc9b2VmZmVudGxpY2hrZWl0c2FyYmVpdAp+IyEgdGlkPTExNzk0MTI0NzMKOm1hY2h0IEthcmltYS4KCk1pc3QsIG51biBpc3QgZXIga2FwdXR0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IG1vcmdlbmdyYXVlbiBpbSBzdHVkaXZ6PyAoQW50aGVhLCAxMi4gSnVuIDIwMDcsIDEyOjQ5OjE0KToKfiMhIHJuPUdsb2luc29uIHJ0PTExODE2NDUyMTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTc5NDEyNDczCk5hIGtsYXIsIHZvciBkZW0gIm1ha2UiIG11c3N0IER1IGVyc3QgbWFsIGVpbiAiY2xlYW4iIGxhdWZlbiBsYXNzZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBtb3JnZW5ncmF1ZW4gaW0gc3R1ZGl2ej8gKEdsb2luc29uLCAxMi4gSnVuIDIwMDcsIDEyOjU4OjI5KToKfiMhIHJuPUFudGhlYSBydD0xMTgxNjQ1MzU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE3OTQxMjQ3MwptYWtlIG1ycHJvcGVyIG9kZXIgbWFrZSBkaXN0Y2xlYW4gLi4uCgpGdWVyIGFsZWxzIGFuZGVyZSBtdXNzIG1hbiB6dSBuYWggcmFuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmluIHJpbmRlIChDaXJkYW4sIDEzLiBKdW4gMjAwNywgMjM6Mjk6MjgpOgp2ZXJnaXNzIGVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2NoYWV0emVuIGZ1ZXIgQW5mYWVuZ2VyIHVuZCBGb3J0Z2VzY2hyaXR0ZW5lIChWYW5pciwgMTUuIEp1biAyMDA3LCAxMzo1MDowOSk6Cn4jISBvbj1WYW5pciBvdD0xMTgxOTA4MTg5IG9nPWdpbGRlbi5rYXR6ZW5rcmllZ2VyCn4jISBybj1EZXJpbiBydD0xMTgxOTA4MDI2IHJnPWdpbGRlbi5rYXR6ZW5rcmllZ2VyCn4jISB0aWQ9MTE4MTkwODAyNgpmaW5nZXIgRGVyaW4KLi4uIEJpc2hlciBiZXJlaXRzIDIgbWFsIGdlc3RvcmJlbgoKU28gZHJpbmdlbmQgc2NoZWludCBkYXMgc2NoYWV0eiBqYSBuaWNodCBnZXdlc2VuIHp1IHNlaW4uClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGFydHlrb3N0ZW4gKEh1cmF4cHJheCwgMTYuIEp1biAyMDA3LCAxNTo0NTowNCk6Cn4jISBybj1NaXJpbCBydD0xMTgxOTE2NzE5IHJnPXBhcnR5Cn4jISB0aWQ9MTE4MTkxNjcxOQo+IC4uLiBhYmVyIHdpciB3ZXJkZW4gZWluIEJ1ZmZldCBiZXN0ZWxsZW4uIERhZnVlciB3ZXJkZW4gd2lyIHBhdXNjaGFsIDE1IEV1cm8KPiBwcm8gRWxmL1p3ZXJnL01lbnNjaC91c3cuIHJlY2huZW4uLi4KClVuZCB3aWV2aWVsIG11c3MgZWluIEhvYmJpdCBmdWVycyBFc3NlbiByZWNobmVuPwoKaHVyYXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUGFydHlrb3N0ZW4gKEdsb2luc29uLCAxNi4gSnVuIDIwMDcsIDE1OjQ5OjI3KToKfiMhIHJuPUh1cmF4cHJheCBydD0xMTgyMDAxNTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MTkxNjcxOQpIb2JiaXRzIHdlcmRlbiB6dW0gR3Jhc2VuIG5hY2ggZHJhdXNzZW4gZ2VzY2hpY2t0LCB3ZWlsIGVzIHNvbnN0IHp1IHRldWVyCndpcmQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdyYXNwb3AgKEJhbWJpLCAxNy4gSnVuIDIwMDcsIDAwOjAwOjU5KToKfiMhIHJuPUx1ZyBydD0xMTgxOTM1NjYyIHJnPWt1bHR1cgp+IyEgdGlkPTExODE5MzU2NjIKSXN0IGRlciBOYW1lIGRvcnQgUHJvZ3JhbW0gdW5kIHdpZSBkYXJmIG1hbiBzaWNoIGRhcyBkYW5uIHZvcnN0ZWxsZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBhcnR5a29zdGVuIChWYW5pciwgMTcuIEp1biAyMDA3LCAyMToxODoyNik6Cn4jISBybj1IdXJheHByYXggcnQ9MTE4MjAwMTUwNCByZz1zY2htYXJybgp+IyEgdGlkPTExODE5MTY3MTkKV2llIGltbWVyOiBIb2JiaXRzIG11ZXNzZW4gaW1tZXIgZGFzIGRvcHBlbHRlIHphaGxlbiEKClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBQYXJ0eWtvc3RlbiAoT3JrdG9ldGVyLCAxNy4gSnVuIDIwMDcsIDIxOjE5OjQ5KToKfiMhIHJuPVZhbmlyIHJ0PTExODIxMDc5MDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTgxOTE2NzE5CkFjaCB3YXMuLiBmdWVyIGRpZSBad2VyZ2Ugd2lyZCBlaW4gWndlcmdlbmJyb3QgYXVzIGRlbSBNdXNldW0gYXVzZ2VsaWVoZW4gKHVuZAphbnNjaGxpZXNzZW5kIHp1cnVlY2sgZ2VnZWJlbikgdW5kIGFsbGVuIGFuZGVyZW4gd2lyZCBlaCBkZXIgQXBwZXRpdCB2ZXJnZWhlbiwKd2VubiBkaWUgc2VoZW4gd2VsY2hlIE1lbmdlbiBkaWUgSG9iYml0cyBpbiBzaWNoIGhpbmVpbiBzY2hhdWZlbG4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBQYXJ0eWtvc3RlbiAoVmFuaXIsIDE3LiBKdW4gMjAwNywgMjE6MjE6NTEpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExODIxMDc5ODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTgxOTE2NzE5Clp3ZXJnZW5icm90ZSBzaW5kIGluIGRlciBUYXQgYmV3dW5kZXJuc3dlcnRlIERpbmdlLiBBYmVyIGljaCB3ZWlzcyBuaWNodCB3aWUKZWluZSBzb2xjaGUgRGlza3Jpa2luaWVydW5nIHp1Z2VsYXNzZW4gd2VyZGVuIGthbm4gKERhcyBCaWVyIG11ZXNzZW4gc2ljaCBkaWUKWndlcmdlIGFuc2NoZWluZW5kIGthdWZlbiwgd2FlaHJlbmQgZGVuIEhvYmJpdHMgZWluIEJ1ZmZldCBnZWJvdGVuIHdpcmQpLgoKVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiB0YWVnbGljaGUgU25hcHNob3RzIGRlciBNdWRsaWIgKEdub21lLCAxNy4gSnVuIDIwMDcsIDIzOjU1OjE0KToKfiMhIHJuPVplc3N0cmEgcnQ9MTE4MjExMzMwMSByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTE4MjExMzMwMQoiLi4uIGhhbHRlIGljaCB1ZWJyaWdlbnMgZnVlciB2b2VsbGlnIHVubm9ldGlnLCAuLi4iCgp3YXJ1bSB3aXJkIGVyIGRhbm4gZXJzdGVsbHQ/CndhcnVtIHJlaWNodCBkYW5uIG5pY2h0IHdvZWNoZW50bGljaHQ/Cgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB0YWVnbGljaGUgU25hcHNob3RzIGRlciBNdWRsaWIgKFpvb2ssIDE4LiBKdW4gMjAwNywgMDA6MDE6NTIpOgp+IyEgb249Wm9vayBvdD0xMTgyMTE3NTkzIG9nPW1lZ2FzY2htYXJybgp+IyEgcm49R25vbWUgcnQ9MTE4MjExNzMxNCByZz1zY2htYXJybgp+IyEgdGlkPTExODIxMTMzMDEKd2VpbCBtYW4gaWhuIGRhbm4gd2Vla2x5IG5lbm5lbiBtdWVzc3RlLiB6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiB0YWVnbGljaGUgU25hcHNob3RzIGRlciBNdWRsaWIgKEdub21lLCAxOC4gSnVuIDIwMDcsIDAwOjA2OjU1KToKfiMhIHJuPVpvb2sgcnQ9MTE4MjExNzcxMiByZz1zY2htYXJybgp+IyEgdGlkPTExODIxMTMzMDEKb2gsIHN0aW1tdC4KbmEgam9mc2VpZGFuayBoZWlzc3QgZGllIGRhdGVpIG5pY2h0IG1pbnV0ZWx5LCBnZWxsPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogdGFlZ2xpY2hlIFNuYXBzaG90cyBkZXIgTXVkbGliIChHbG9pbnNvbiwgMTguIEp1biAyMDA3LCAwMDowNzoyOSk6Cn4jISBybj1Hbm9tZSBydD0xMTgyMTE4MDE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MjExMzMwMQpEYW5uIGJydWFlY2h0ZW4gd2lyIGphIGVpbmUgZGlja2VyZSBNYXNjaGluZSwgZGFtaXQgZGVyIHRneiBzY2huZWxsZXIgZ2VodC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB0YWVnbGljaGUgU25hcHNob3RzIGRlciBNdWRsaWIgKEdub21lLCAxOC4gSnVuIDIwMDcsIDAwOjA4OjE4KToKfiMhIHJuPUdsb2luc29uIHJ0PTExODIxMTgwNDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTgyMTEzMzAxCmljaCBzYWd0ZSBqYTogam9mc2VpZGFuay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHRhZWdsaWNoZSBTbmFwc2hvdHMgZGVyIE11ZGxpYiAoR2xvaW5zb24sIDE4LiBKdW4gMjAwNywgMDA6MTE6NDApOgp+IyEgcm49R25vbWUgcnQ9MTE4MjExODA5OCByZz1zY2htYXJybgp+IyEgdGlkPTExODIxMTMzMDEKRGlja2VyZSBNYXNjaGluZSBicmF1Y2hlbiB3aXIgdHJvdHpkZW0uIFdvVy1TZXJ2ZXIgaW5zdGFsbGllcmVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IHRhZWdsaWNoZSBTbmFwc2hvdHMgZGVyIE11ZGxpYiAoWm9vaywgMTguIEp1biAyMDA3LCAwMDoxNTowNSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTgyMTE4MzAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MjExMzMwMQpLYW5uIFZhbmlvbiBtaXR0bGVyd2VpbGUgQVNDSUktRG9vbSBzcGllbGVuPyAKWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogdGFlZ2xpY2hlIFNuYXBzaG90cyBkZXIgTXVkbGliIChPcmt0b2V0ZXIsIDE4LiBKdW4gMjAwNywgMDA6MzA6MjgpOgp+IyEgcm49Wm9vayBydD0xMTgyMTE4NTA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MjExMzMwMQpXaWUgZmx1ZXNzaWcgbGFldWZ0IGVpZ2VudGxpY2ggaW56d2lzY2hlbiBkYXMgWC1ib2luZz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogdGFlZ2xpY2hlIFNuYXBzaG90cyBkZXIgTXVkbGliIChaZXNzdHJhLCAxOC4gSnVuIDIwMDcsIDAwOjMxOjU0KToKfiMhIHJuPUdub21lIHJ0PTExODIxMTczMTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTgyMTEzMzAxCkljaCBoYWx0ZSBlcyBmdWVyIHVubm9ldGlnLCBqZWRlbiBUYWcgc28gZWluIERpbmcgcnVudGVyenVsYWRlbi4gQWJlcgphbmRlcmVyc2VpdHMgaXN0IGVzIGF1Y2ggbmljaHQgc28gcHJha3Rpc2NoLCB3ZW5uIG1hbiBuYWNoIGVpbmVyIGludGVyZXNzYW50ZW4KQWVuZGVydW5nIGluIC9zdGQvIDYgVGFnZSB3YXJ0ZW4gbXVzcywgYmlzIGRlciBuZXVlIFNuYXBzaG90IHJhdXNrb21tdC4gRGFubgpsaWViZXIgZGlyZWt0IHRhZWdsaWNoIGVyc3RlbGxlbiBsYXNzZW4sIGRlciBBdWZ3YW5kIGlzdCBkZXIgZ2xlaWNoZS4gCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEh1bW5pLCAxOS4gSnVuIDIwMDcsIDIwOjM3OjAyKToKW01vZXJkZXI6R2Vpc3QgU2FuY2hvIFBhbnNhc10gRGF6dSBmYWVsbHQgbWlyIGpldHp0IG5peCBtZWhyIGVpbiwgU2Nod3VkaS4KW0JlaWxlaWQ6U2Nod3VkaV0ga2Fja2UKW1RvZDpMYXJzXSBFaW4gTWFnaWV3ZXNlbnphaG4gaGF0IGdlcmFkZSBTY2h3dWRpIHVtZ2VicmFjaHQuCgpKby4gU3RpbW10IGlyZ2VuZHdpZS4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtsZXR0ZXJuIChPcmt0b2V0ZXIsIDE5LiBKdW4gMjAwNywgMjE6MzY6MjMpOgp+IyEgcm49RGFudSBydD0xMTgyMjgxNTYwIHJnPXBhcnR5Cn4jISB0aWQ9MTE4MjI4MTU2MApBZWguLiBkdSByZWRlc3QgaGllciB6dSBNZW5zY2hlbiBkaWUgZWluZW4gZ3V0ZW4gVGVpbCBpaHJlcyBMZWJlbnMgaW4gZGllc2VyCnZpcnR1ZWxsZW4gV2VsdCB2ZXJzY2h3ZV5XdmVyYnJpbmdlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLbGV0dGVybiAoRGFudSwgMTkuIEp1biAyMDA3LCAyMTozNzowOCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE4MjI4MTc4MyByZz1zY2htYXJybgp+IyEgdGlkPTExODIyODE1NjAKc29sbCBpY2hzIG5vY2htYWwgbGFuZ3NhbSBlcmtsYWVyZW4genVtIG1pdHNjaHJlaWJlbj8gOykKZGFudQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS2xldHRlcm4gKE9ya3RvZXRlciwgMTkuIEp1biAyMDA3LCAyMTozNzo0Nik6Cn4jISBybj1EYW51IHJ0PTExODIyODE4Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMTgyMjgxNTYwCld1ZXJkZSBkYXMgc3BvbnRhbiBkZW4gZ2VzdW5kZW4gTWVuc2NoZW52ZXJzdGFuZCBlcnNjaGFmZmVuPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS2xldHRlcm4gKE1haGFyZXQsIDE5LiBKdW4gMjAwNywgMjE6Mzc6NDgpOgp+IyEgcm49RGFudSBydD0xMTgyMjgxODI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MjI4MTU2MApLZWluZSBTb3JnZSwgT3JrdG9ldGVyLCBpY2ggZ2xhdWJlIG5pY2h0LCBkYXNzIHNpZSBEaWNoIG1pdCAiZ2VzdW5kZW0KTWVuc2NoZW52ZXJzdGFuZCIgbWVpbnRlIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBLbGV0dGVybiAoT3JrdG9ldGVyLCAxOS4gSnVuIDIwMDcsIDIxOjM4OjQ4KToKfiMhIHJuPU1haGFyZXQgcnQ9MTE4MjI4MTg2OCByZz1zY2htYXJybgp+IyEgdGlkPTExODIyODE1NjAKV29obCBrYXVtLCBiaW4gamEgbmljaHQgbWFsIGFuZ2VtZWxkZXQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEtsZXR0ZXJuIChBbWFyeWxsaXMsIDE5LiBKdW4gMjAwNywgMjE6NDk6NDgpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExODIyODE5Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMTgyMjgxNTYwCkFuZ2VtZWxkZXQgZnVlciB3YXM/IEZ1ZXIgZGVuIGdlc3VuZGVuIE1lbnNjaGVudmVyc3RhbmQ/CgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBLbGV0dGVybiAoT3JrdG9ldGVyLCAxOS4gSnVuIDIwMDcsIDIxOjU4OjU2KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMTgyMjgyNTg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MjI4MTU2MAprbGFyIGRvY2gsIGR1IGV0d2Egbm9jaCBuaWNodD8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEtsZXR0ZXJuIChBbWFyeWxsaXMsIDE5LiBKdW4gMjAwNywgMjI6MTY6MTQpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExODIyODMxMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTgyMjgxNTYwCk5vZSwgaWNoIGhhYiBkZW4gQWJzY2hsdXNzIHNjaG9uIDspCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBLbGV0dGVybiAoT3JrdG9ldGVyLCAxOS4gSnVuIDIwMDcsIDIyOjIwOjA1KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMTgyMjg0MTc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MjI4MTU2MApKYWphLi4gRWluYmlsZHVuZyBpc3QgYXVjaCBlaW5lIEJpbGR1bmcuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGV0dGVybiAoRGFya2xvciwgMjAuIEp1biAyMDA3LCAxNTowMzozMCk6Cn4jISBybj1EYW51IHJ0PTExODIyODE1NjAgcmc9cGFydHkKfiMhIHRpZD0xMTgyMjgxNTYwCkR1IGVyd2FydGVzdCBkYSBhYmVyIHJlY2h0IHZpZWwgdm9uIE11ZGRlcm4uLi4gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2xldHRlcm4gKEdsb2luc29uLCAyMC4gSnVuIDIwMDcsIDE2OjM1OjU1KToKfiMhIHJuPURhcmtsb3IgcnQ9MTE4MjM0NDYxMCByZz1zY2htYXJybgp+IyEgdGlkPTExODIyODE1NjAKQXVmZ2VzY2hsb3NzZW5oZWl0IGlzdCBiZWkgTXVkZGVybiBlaW5nZWJhdXQuIFVuZCBrcmFlZnRpZ2UgRmluZ2VyIHNvbGx0ZQpuaWNodCBudXIgZGllIEthZW1wZmVyIG1pdCBpaHJlbiBLcmFsbC1BbGlzIGhhYmVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEtsZXR0ZXJuIChWYW5pb24sIDIwLiBKdW4gMjAwNywgMTc6NTM6MDYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE4MjM1MDE1NSByZz1zY2htYXJybgp+IyEgdGlkPTExODIyODE1NjAKQWgsIHdhcyBpcyBkZW5uIE5HTyBmdWVyIGVpbmUgWmVpdHVuZywgWmVzc3RyYT8gV2VyIHN0ZWNrdCBkYWhpbnRlcj8KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBGcmFnZSB6dW0gVmVyYmVzc2VybiB2b24gR2ViaWV0ZW4gKFZhbmlvbiwgMjEuIEp1biAyMDA3LCAwOTowMToyOCk6Cn4jISBvbj1WYW5pb24gb3Q9MTE4MjQwOTI1NCBvZz1tZWdhc2NobWFycm4KfiMhIHJuPVBhZHJlaWMgcnQ9MTE4MjM2Mjg4NiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTExODEyMjgxMzIKV2lyIGhhYmVuIGphIGRhbWFscyBub2NoIG1pdCBLcmVpZGUgYXVmIFNjaGllZmVydGFmZWxuIHByb2dyYW1taWVyZW4gZ2VsZXJudC4KRGVyIFByZXByb3plc3NvciB3YXIgZWNodCBsYWhtIQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEZyYWdlIHp1bSBWZXJiZXNzZXJuIHZvbiBHZWJpZXRlbiAoR2xvaW5zb24sIDIxLiBKdW4gMjAwNywgMTE6MDY6MjYpOgp+IyEgcm49VmFuaW9uIHJ0PTExODI0MDkyODggcmc9c2NobWFycm4KfiMhIHRpZD0xMTgxMjI4MTMyCklociBnbHVlY2tsaWNoZW4uIFdpciBoYXR0ZW4gbnVyIFNjaGllZmVyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEZyYWdlIHp1bSBWZXJiZXNzZXJuIHZvbiBHZWJpZXRlbiAoVmFuaW9uLCAyMS4gSnVuIDIwMDcsIDExOjEzOjM1KToKfiMhIHJuPUdsb2luc29uIHJ0PTExODI0MTY3ODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTgxMjI4MTMyCk1laW5lIEhlaW1hdGt1bmRlbGVocmVyaW4gaGF0IGJlaW0gUnVlZ2VuLVVybGF1YiBpbW1lciBLcmVpZGUgZ2VzY2htdWdnZWx0LgpQc3NjaHQuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEZyYWdlIHp1bSBWZXJiZXNzZXJuIHZvbiBHZWJpZXRlbiAoR2xvaW5zb24sIDIxLiBKdW4gMjAwNywgMTE6MjA6NDcpOgp+IyEgcm49VmFuaW9uIHJ0PTExODI0MTcyMTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTgxMjI4MTMyCldpZSBpc3QgZGllIGRlbm4gbmFjaCBSdWVnZW4gZ2Vrb21tZW4/ISBCZXppZWh1bmdlbiEKCkZydWVoZXIgbXVzc3RlIG1hbiBkZW4gQm9kZW4gaW4gZGllIFJhZXVtZSBub2NoIG1pdCBkZW0gU2NodWJrYXJyZW4gYnJpbmdlbi4KSWNoIGhhYiBoaWVyIG5vY2ggZWluIFNrcmlwdDoKPiA8d2VnZXNjcmlwdCB3dWVzdGU+Cj4gZnVlbGxlIHNjaHVia2FycmUKPiB0ZWxsIGpvZiBnb3RvIDxyYXVtPgo+IGxlZXJlIHNjaHVia2FycmUKPiB0ZWxsIGpvZiAkaC0+U2F2ZVJvb21GbG9vcigpCgpKYXdvbGwuIFh0b29sIGdhYnMgbmljaHQuIFVuZCBKb2YgbXVzc3RlIGRhcyBhbGxlcyBhYnRpcHBlbi4gRGVzaGFsYiBoYXQgZXIKc3BhZXRlciBhdWNoIGltbWVyIHNvIHZpZWwgZ2VpZGVsdCwgRXJob2x1bmcgbXVzc3RlIHNlaW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEZyYWdlIHp1bSBWZXJiZXNzZXJuIHZvbiBHZWJpZXRlbiAoVmFuaW9uLCAyMS4gSnVuIDIwMDcsIDExOjIxOjU5KToKfiMhIHJuPUdsb2luc29uIHJ0PTExODI0MTc2NDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTgxMjI4MTMyCklociBoYXR0ZXQgU2tyaXB0ZSB1bmQgTW92ZT8gV2lyIG11c3N0ZW4gc2VsYmVyIGdlaGVuIQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBGcmFnZSB6dW0gVmVyYmVzc2VybiB2b24gR2ViaWV0ZW4gKEdsb2luc29uLCAyMS4gSnVuIDIwMDcsIDExOjI0OjE0KToKfiMhIHJuPVZhbmlvbiBydD0xMTgyNDE3NzE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MTIyODEzMgpKZXR6dCBtYWwgZGVuIEVybnN0IGJlaXNlaXRlIC4uLiBtaWNoIGhhYmVuIE1haGF0bWFzIFdlZ2Vza3JpcHRlICh2b3IgdGYpCmltbWVyIGJlZWluZHJ1Y2t0OiBlcyB3YXJlbiBhdWYgc2VpbmVtIFdpbmRvdyBNYW5nZXIgaW1tZXIgY2lyY2EgNiBFZGl0b3JlbgpvZmZlbiwgaW4gZGVuZW4gZGllIHdpY2h0aWdlcyBXZWdlc2tyaXB0ZSB6dW0gUGFzdGVuIG1hcmtpZXJ0IHdhcmVuLiBKZSBuYWNoCkF1ZmdhYmUgd3VyZGUgenUgZWluZXIgYW5kZXJlbiBTdGVsbGUgaW0gRmlsZSBnZXNjcm9sbHQuCgpKYSwgZnJ1ZWhlciwgYWxzIHdpciBpbiBSZWdlbmJvZ2VuIG5vY2ggbWVociBEZXRhaWwtT3B0aW9uZW4gaGF0dGVuIGFscwpNb3JnZW5ncmF1ZW4gc2ljaCBoZXV0ZSBub2NoIHRyYWV1bWVuIGxhZXNzdC4gTmljaHQgZGFzcyBzaWUgZWluZXIgdmVyd2VuZGV0CmhhZXR0ZSA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBGcmFnZSB6dW0gVmVyYmVzc2VybiB2b24gR2ViaWV0ZW4gKFZhbmlvbiwgMjEuIEp1biAyMDA3LCAxMToyOToyMSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTgyNDE3ODU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MTIyODEzMgpJaHIgaGFidCBqYSBhdWNoIGVpbiBncmFmaXNjaGVzIFRleHQtQWR2ZW50dXJlICh0bSkuIEdpYnQgZXMgZWlnZW50bGNpaCBhdXNzZXIKaW0gQmVpc3BpZWxyYXVtIGVpbmUgRWNrZSwgd28gZGFzIGJlbnV0enQgd3VyZGU/CgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEZyYWdlIHp1bSBWZXJiZXNzZXJuIHZvbiBHZWJpZXRlbiAoR2xvaW5zb24sIDIxLiBKdW4gMjAwNywgMTE6MzM6MzQpOgp+IyEgcm49VmFuaW9uIHJ0PTExODI0MTgxNjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTgxMjI4MTMyCkphLiBMZWlkZXIuCgpMZWlkZXIsIHdlaWwgc2ljaCBkYXMgbmllIGVpbmVyIGFuZ3Vja3QgdW5kIGluIHNvIGVpbmVyIEdyYWZpayB0ZWlscyBtZWhyCkFyYmVpdCBzdGVja3QgYWxzIGluIGRlciBUZXh0YmVzY2hyZWlidW5nIGVpbmVzIGR1cmNoc2Nobml0dGxpY2hlbiBSYXVtcy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogRnJhZ2UgenVtIFZlcmJlc3Nlcm4gdm9uIEdlYmlldGVuIChWYW5pb24sIDIxLiBKdW4gMjAwNywgMTE6MzY6MDIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE4MjQxODQxNCByZz1zY2htYXJybgp+IyEgdGlkPTExODEyMjgxMzIKRGFzIHdhciBkZXIgR3J1bmQsIHdhcnVtIGljaCBiZWltIEJhc3RlbG4gZGllc2VuIGdhbnplbiAzRC1LcmFtIGltbWVyCmlnbm9yaWVydCBoYWJlIC0gd2FzIGZ1ZXJuIEhhbW1lcmF1ZndhbmQgZGFzIGlzIGFsbGVpbiBlaW5lbiBibG9lZGVuIFd1ZXJmZWwKbWl0IFRleHR1ciB6dSB2ZXJzZWhlbiB1bmQgbWl0IGRlciBLYW1lcmEgZHJ1bXJ1bXp1ZmFocmVuIC4uLiBXZWlhLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBGcmFnZSB6dW0gVmVyYmVzc2VybiB2b24gR2ViaWV0ZW4gKEdsb2luc29uLCAyMS4gSnVuIDIwMDcsIDEyOjIwOjE5KToKfiMhIHJuPVZhbmlvbiBydD0xMTgyNDE4NTYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MTIyODEzMgpOYWphLCBzbyBzY2hsaW1tIGlzdCBlcyBqYSBuaWNodCBiZWkgMkQtR3JhZmlrLCBhYmVyIGVzIGdlaHQgbWl0IFJCIHNjaG9uCmV0bGljaGVzIGFuIE1hbGVyZWkgdmVybG9yZW4uIE1hbCBzbyBlaW4gT3N0LVdlc3QtU2Nobml0dCBkdXJjaCBkaWUgU3RhZHQKKGxpbmtzIG1laW4gQ2hhciwgcmVjaHRzIGVpbiBXYWVjaHRlcik6Cmh0dHA6Ly9mbHVuemVsLmRlL3BpY3MvYW5ha2hlbV9vc3R3ZXN0LnBuZwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVz8gKFZhbmlyLCAyMS4gSnVuIDIwMDcsIDE4OjU4OjM1KToKVm9uIEZyZXVuZCBWYW5pb246IE51IGlzIGRlciBIdW1uaSBvZmZsaW5lIHVtIG1pciB6dSB6ZWlnZW4sClZvbiBGcmV1bmQgVmFuaW9uOiB3aWUgdG9sbCBzd290bCBzdGVyYmVuIGthbm4gKmdydWViZWwqCltUb2Q6TGFyc10gRWluIEhvb2xpZ2FuIGhhdCBnZXJhZGUgU3dvdGwgdW1nZWJyYWNodC4KW1RvZDpFaW4gSG9vbGlnYW5dIEljaCBoYWIgZG9jaCBibG9zcyBtaXQgZGVyIEZsYXNjaGUgLi4uIG5hamEgc3RpbW10LiBJY2gKW1RvZDpFaW4gSG9vbGlnYW5dIHdvbGx0ZSBTd290bCB2ZXJwcnVlZ2VsbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFN0YXRpIGluIE1hcmJ1cmcgKFJvbmRhLCAyNy4gSnVuIDIwMDcsIDAwOjQzOjI4KToKfiMhIHJuPVpvb2sgcnQ9MTE4Mjg5Nzc0MiByZz10cmVmZmVuCn4jISB0aWQ9MTE4MjA5MjgxNwpBbHNvIGVpZ2VudGxpY2ggd2FycyBuZW4gRCwgZGFzIG5lbiBaIGlzdCwgaWNoIHdhciBudXIgZmFlbHNjaGxpY2hlcndlaXNlIHZvbgplaW5lbSB2b24gendlaSBWIGF1c2dlZ2FuZ2VuLiBJc3QgZGFzIG51biBrbGFyPyBPZGVyIHNpbmQgd2lyIGhpZXIgaW4KTWVnYXNjaG1hcnJuPyAoWk9PSyEgRHUgaGFzdCBncmFkIG5lbiBSZWggZ2VzY2hhZW5kZXQhKQoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFN0YXRpIGluIE1hcmJ1cmcgKFpvb2ssIDI3LiBKdW4gMjAwNywgMDA6NDQ6MDgpOgp+IyEgcm49Um9uZGEgcnQ9MTE4Mjg5NzgwOCByZz1zY2htYXJybgp+IyEgdGlkPTExODIwOTI4MTcKQWJlciB3aXIgd2lzc2VuIGltbWVyIG5vY2ggbmljaHQsIHdhcyBEdSBnbGF1YnN0ZXN0LCB3ZWxjaGVzIFYgbnVuCmRhcyBaIHdhci4gWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU3RhdGkgaW4gTWFyYnVyZyAoUm9uZGEsIDI3LiBKdW4gMjAwNywgMDA6NDU6MjIpOgp+IyEgcm49Wm9vayBydD0xMTgyODk3ODQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MjA5MjgxNwpBbHNvIGluIE1hcmJ1cmcgd2FyZW4gamVkZW5mYWxscyB6d2VpIEQsIHp3ZWkgQSwgendlaSBhZWguLi4gaGFiIGljaAp2ZXJnZXNzZW4uCgpHcmltbWJvcm4sIGthbm5zdGUgZGFzIGJpdHRlIGRhaGluIHZlcnNjaGllYmVuIHdvIGVzIGhpbmdlaG9lcnQ/IERhbmtlIQoKUm9uZGEKLAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU3RhdGkgaW4gTWFyYnVyZyAoWm9vaywgMjcuIEp1biAyMDA3LCAwMDo0NjoxMik6Cn4jISBybj1Sb25kYSBydD0xMTgyODk3OTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MjA5MjgxNwpSb25kYSBtb2VjaHRlIGVpZ2VudGxpY2ggbnVyIGVya2xhZXJlbiwgZGFzcyBkaWUgU2VlbHVmdCBlcyBpaG0Kc2Nod2llcmlnIGdlbWFjaHQgaGFiZW4sIGRhcyBlaW5lIFogdm9uIGRlbiB6d2VpIGFuZGVyZW4gViB6dQp1bnRlcnNjaGVpZGVuLiAKCkFybWVzIFowLgoKWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFN0YXRpIGluIE1hcmJ1cmcgKFJvbmRhLCAyNy4gSnVuIDIwMDcsIDAwOjQ2OjU1KToKfiMhIHJuPVpvb2sgcnQ9MTE4Mjg5Nzk3MiByZz1zY2htYXJybgp+IyEgdGlkPTExODIwOTI4MTcKS29lbm50ZSBtYWwgd2VyIGJpdHRlIE1pdGxlaWQgbWl0IFIqIGhhYmVuPyEgVW5kIG51biBFT0IuIFRoYW5rcy4KClJvbmRhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFN0YXRpIGluIE1hcmJ1cmcgKFplc3N0cmEsIDI3LiBKdW4gMjAwNywgMDA6NTI6NTQpOgp+IyEgcm49Um9uZGEgcnQ9MTE4Mjg5ODAxNSByZz1zY2htYXJybgp+IyEgdGlkPTExODIwOTI4MTcKOmtpY2hlcnQuCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogU3RhdGkgaW4gTWFyYnVyZyAoWm9vaywgMjcuIEp1biAyMDA3LCAwMDo1MzoyNCk6Cn4jISBybj1aZXNzdHJhIHJ0PTExODI4OTgzNzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTgyMDkyODE3CkFoLCBkYXMgWiB3ZWlzcyB3b2hsIHNjaG9uIEJlc2NoZWlkLiA7KQpaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogU3RhdGkgaW4gTWFyYnVyZyAoVmFuaW9uLCAyNy4gSnVuIDIwMDcsIDA5OjA5OjU0KToKfiMhIHJuPVpvb2sgcnQ9MTE4Mjg5ODQwNCByZz1zY2htYXJybgp+IyEgdGlkPTExODIwOTI4MTcKQWxzbyBpY2ggaGFiZSBqZXR6dCByYXVzZ2Vob2VydCwgZGFzcyBSb25kYSBtaWNoIG1pdCBab29rLCBaZXNzdHJhIG1pdCBWYW5pcgp1bnMgc2ljaCBzZWxic3QgbWl0IE9ya3RvZXRlciB2ZXJ3ZWNoc2VsdCBoYXQuCgpTbyByaWNodGlnPwoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBTdGF0aSBpbiBNYXJidXJnIChab29rLCAyNy4gSnVuIDIwMDcsIDExOjA0OjE3KToKfiMhIHJuPVZhbmlvbiBydD0xMTgyOTI4MTk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MjA5MjgxNwpJY2ggZ2xhdWIsIGxldHp0ZXJlcyBrb2VubnRlIHN0aW1tZW4uLi4gOykgWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFN0YXRpIGluIE1hcmJ1cmcgKFZhbmlyLCAyNy4gSnVuIDIwMDcsIDE4OjMzOjU1KToKfiMhIHJuPVpvb2sgcnQ9MTE4MjkzNTA1NyByZz1zY2htYXJybgp+IyEgdGlkPTExODIwOTI4MTcKRXVyZSBEaXNrdXNzaW9uIGlzdCBzY2hvbiBzZWhyIGludGVyZXNzYW50LiBJY2ggaGFiIG1pY2ggYXVjaCBiZWltIER1cmNobGVzZW4KZGVyIFJlaGUgYW0gTW9udGFnIHVuZCBEaWVuc3RhZyAoamEgc28gbGFuZ2UgaGF0IGRhcyBnZWRhdWVydCkgdWViZXIgZGFzCkF1ZnRhdWNoZW4gbWVpbmVzIE5hbWVucyBnZXd1bmRlcnQuCgpXYXMgc29sbCBkZW5uIG51biBFT0IgaGVpc3Nlbj8gRW5kIG9mIEJsb2c/IEVuZCBvZiBCb3RoZXJpbmc/IEljaCBrb21tIG5pY2h0CmRyYXVmLgoKVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBTdGF0aSBpbiBNYXJidXJnIChHd2VuLCAyNy4gSnVuIDIwMDcsIDIxOjM3OjI4KToKfiMhIHJuPVZhbmlyIHJ0PTExODI5NjIwMzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTgyMDkyODE3CkVuZCBvZiBCdXNpbmVzcyB3b2hsLgpEYWJlaSBoYXR0IGljaCBtaWNoIHNjaG9uIHNvIGF1ZiBkaWUga2xlaW5lIE5hY2h0bXVzaWsgdm9uIEJhY2ggZ2VmcmV1dC4KR3dlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOZXVlcyAndHdlcicgKENyb2Z0LCAyOC4gSnVuIDIwMDcsIDEwOjQ4OjI2KToKfiMhIHJuPUdhYnlsb24gcnQ9MTE4MzAyMDM3NyByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMTgyODU1ODEyCkVLL2g/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogVEYgKERhcmtsb3IsICA0LiBKdWwgMjAwNywgMDU6NTE6NTcpOgp+IyEgcm49QWxrb2hvbCBydD0xMTgzNDg2MjA0IHJnPW11ZGNsaWVudHMKfiMhIHRpZD0xMTgzNDYzMjI4CkFoLCBkYSBoYXR0ZXN0ZSB3b2hsIG5lIHJvc2EgQnJpbGxlIGF1Zj8gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBURiAoR3JpbW1ib3JuLCAgNC4gSnVsIDIwMDcsIDExOjM1OjI1KToKfiMhIHJuPUJvaW5nIHJ0PTExODM1NDE1Mjggcmc9bXVkY2xpZW50cwp+IyEgdGlkPTExODM0NjMyMjgKcy9CZWltL0Fscy8gd29sbHRlc3QgRHUgd29obCBzYWdlbiwgb2Rlcj8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVEYgKEFsa29ob2wsICA0LiBKdWwgMjAwNywgMTk6NTk6NTUpOgp+IyEgcm49RGFya2xvciBydD0xMTgzNTIxMTE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MzQ2MzIyOApuZWluIGljaCBoYWIgZGEgZmFzdCBBdWdlbmtyZWJzIGJla29tbWVuCgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRW50d2lja2x1bmcgZGVyIEVyc3Rsb2dpbnMgKFJvbmRhLCAxMi4gSnVsIDIwMDcsIDIzOjQ5OjUyKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTE4NDI3NjkwNyByZz1vZWZmZW50bGljaGtlaXRzYXJiZWl0Cn4jISB0aWQ9MTE4NDI3NjkwNwouLi4gYWJlciB3YW5uIHdhciBub2NobWFsIGRhcyBKYWhyLCBpbiBkZW0gUGFkcmVpYyBiZXdlaXNlbiB3b2xsdGUsIGRhc3MgbWFuCjUwIENoYXJzIGluIGRyZWkgTWludXRlbiBlcnN0ZWxsZW4ga29ubnRlPwoKUm9uZGEgKmluIGRlciByaWNodGlnZW4gUnVicmlrKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFbnR3aWNrbHVuZyBkZXIgRXJzdGxvZ2lucyAoR2xvaW5zb24sIDEyLiBKdWwgMjAwNywgMjM6NTI6NDYpOgp+IyEgcm49Um9uZGEgcnQ9MTE4NDI3Njk5MiByZz1zY2htYXJybgp+IyEgdGlkPTExODQyNzY5MDcKS29taXNjaCwgaWNoIGhhYiBkaWVzZXMgSmFociBub2NoIGtlaW5lbiBlaW56aWdlbiBad2VpdGllIGVyc3RlbGx0LiBTY2hlaW50CnBvc2l0aXZnZSBFZmZla3RlIHp1IGhhYmVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVudHdpY2tsdW5nIGRlciBFcnN0bG9naW5zIChIdW1uaSwgMTMuIEp1bCAyMDA3LCAwMjoxMjo0NSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTg0Mjc3MTY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NDI3NjkwNwpJY2ggaGFiIGRhcyBkdXJjaGF1cy4gbmFqYSwgZ3V0LCB3YXIgZWluIFRlc3RpZS4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU2NoYWV0emVuIGZ1ZXIgQW5mYWVuZ2VyIHVuZCBGb3J0Z2VzY2hyaXR0ZW5lIChab29rLCAxMy4gSnVsIDIwMDcsIDEzOjM4OjQ5KToKfiMhIHJuPVNoYWVlbmEgcnQ9MTE4NDMyNDIyNSByZz1naWxkZW4ua2F0emVua3JpZWdlcgp+IyEgdGlkPTExODE5MDgwMjYKV2FzIGhhYmVuIGtsZWluZSBLYWV0emNoZW4gaW4gZHVua2xlbiBIb2VobGVuIHZlcmxvcmVuPyA7KSAKClpvb2suIwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU2NoYWV0emVuIGZ1ZXIgQW5mYWVuZ2VyIHVuZCBGb3J0Z2VzY2hyaXR0ZW5lIChaZXNzdHJhLCAxMy4gSnVsIDIwMDcsIDEzOjM5OjQxKToKfiMhIHJuPVpvb2sgcnQ9MTE4NDMyNjcyOSByZz1zY2htYXJybgp+IyEgdGlkPTExODE5MDgwMjYKSWNoIGdsYXViLCBlcyBnaWJ0IGJvZXNlIE1hZ2llciwgZGllIHNpZSBmaWVzIGRvcnRoaW4gdW5kIGluIGVpbmUgRmFsbGUKbG9ja2VuLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU2NoYWV0emVuIGZ1ZXIgQW5mYWVuZ2VyIHVuZCBGb3J0Z2VzY2hyaXR0ZW5lIChab29rLCAxMy4gSnVsIDIwMDcsIDEzOjQyOjMwKToKfiMhIHJuPVplc3N0cmEgcnQ9MTE4NDMyNjc4MSByZz1zY2htYXJybgp+IyEgdGlkPTExODE5MDgwMjYKQWNod2FzLiBTb2xhbmdlIG1hbiBkaWUgYmVpIFhlbG9uaXIgYW0gS3JhdHpiYXVtIGZlc3RiaW5kZXQsIApwYXNzaWVydCBkZW5lbiBhdWNoIG5peC4gWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogU2NoYWV0emVuIGZ1ZXIgQW5mYWVuZ2VyIHVuZCBGb3J0Z2VzY2hyaXR0ZW5lIChaZXNzdHJhLCAxMy4gSnVsIDIwMDcsIDEzOjQzOjEwKToKfiMhIHJuPVpvb2sgcnQ9MTE4NDMyNjk1MCByZz1zY2htYXJybgp+IyEgdGlkPTExODE5MDgwMjYKQWNoc28sIGphLCBzdGltbXQuIERhbm4gbXVlc3N0ZSBCYW1iaSBYZWxvbmlyIGFiZXIgbWFsIHNjaG5lbGwgbmVuIGdyb2Vzc2VyZW4KS3JhdHpiYXVtIGJhc3RlbG4uIDstKQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFNjaGFldHplbiBmdWVyIEFuZmFlbmdlciB1bmQgRm9ydGdlc2Nocml0dGVuZSAoTWFoYXJldCwgMTMuIEp1bCAyMDA3LCAxMzo1NDoxNyk6Cn4jISBybj1aZXNzdHJhIHJ0PTExODQzMjY5OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTgxOTA4MDI2ClVubm9ldGlnLCB3aXIgc2NocmVkZGVybiBkaWUgS2F0emVuIGVpbmZhY2gsIGRhbm4gYnJhdWNoZW4gZGllIGF1Y2ggbmljaHQgc28KdmllbCBQbGF0ei4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBTY2hhZXR6ZW4gZnVlciBBbmZhZW5nZXIgdW5kIEZvcnRnZXNjaHJpdHRlbmUgKEhpZ2hsYW5kZXIsIDEzLiBKdWwgMjAwNywgMTQ6MDE6MTkpOgp+IyEgcm49TWFoYXJldCBydD0xMTg0MzI3NjU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MTkwODAyNgpGcmlzY2hnZXByZXNzdGVyIEthdHplbnNhZnQuLi4KCkhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFNjaGFldHplbiBmdWVyIEFuZmFlbmdlciB1bmQgRm9ydGdlc2Nocml0dGVuZSAoR2xvaW5zb24sIDEzLiBKdWwgMjAwNywgMTU6MDI6MTApOgp+IyEgcm49SGlnaGxhbmRlciBydD0xMTg0MzI4MDc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MTkwODAyNgoqaGljY3VwKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBTY2hhZXR6ZW4gZnVlciBBbmZhZW5nZXIgdW5kIEZvcnRnZXNjaHJpdHRlbmUgKERhcmtsb3IsIDEzLiBKdWwgMjAwNywgMjI6NDE6MjEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE4NDMzMTczMCByZz1zY2htYXJybgp+IyEgdGlkPTExODE5MDgwMjYKVW5kIHdvIGJsZWlidCBHb3Jkb24/CgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTY2hhZXR6ZW4gZnVlciBBbmZhZW5nZXIgdW5kIEZvcnRnZXNjaHJpdHRlbmUgKEJhbWJpLCAxNC4gSnVsIDIwMDcsIDExOjUyOjU1KToKfiMhIHJuPVpvb2sgcnQ9MTE4NDMyNjk1MCByZz1zY2htYXJybgp+IyEgdGlkPTExODE5MDgwMjYKV2llc28gc29sbHRlIG1hbiBib2VzZSBNYWdpZXIgYW4gWGVsb25pcnMgS3JhdHpiYXVtIGZlc3RiaW5kZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTY2hhZXR6ZW4gZnVlciBBbmZhZW5nZXIgdW5kIEZvcnRnZXNjaHJpdHRlbmUgKEdub21lLCAxNC4gSnVsIDIwMDcsIDE4OjEzOjQxKToKfiMhIHJuPUdpbmdrbyBydD0xMTg0MzU1NzczIHJnPWdpbGRlbi5rYXR6ZW5rcmllZ2VyCn4jISB0aWQ9MTE4MTkwODAyNgpudW5qYSwgYWJlciBkYXMgS1JJRUdFUiBpc3QgamEgYXVjaCBhbHMgd2l0eiBnZW1laW50LiAoYykgYnJpZXNlbHRyaW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFNjaGFldHplbiBmdWVyIEFuZmFlbmdlciB1bmQgRm9ydGdlc2Nocml0dGVuZSAoQmFtYmksIDE0LiBKdWwgMjAwNywgMjA6MTA6MjEpOgp+IyEgcm49R25vbWUgcnQ9MTE4NDQyOTYyMSByZz1zY2htYXJybgp+IyEgdGlkPTExODE5MDgwMjYKTnVyIHdlaWwgZXIgIkthZW1wZmVyIiB1bmQgIktyaWVnZXIiIG5pY2h0IGF1c2VpbmFuZGVyaGFsdGVuIGthbm4/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTY2hhZXR6ZW4gZnVlciBBbmZhZW5nZXIgdW5kIEZvcnRnZXNjaHJpdHRlbmUgKFNoYWVlbmEsIDE0LiBKdWwgMjAwNywgMjI6NDk6MjQpOgp+IyEgcm49WmVzc3RyYSBydD0xMTg0MzI2NzgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4MTkwODAyNgpHZW5hdSB3YXMgWmVzc3RyYSBzYWd0LCBpY2ggaGFiIG1pciBkYXMgYmVzdGltbXQgZGFtYWxzIG5pY2h0IHNlbGJlcgphdXNnZWRhY2h0LCBkYXNzIGljaCBhdWYgZWlubWFsIGltIER1bmtlbG4gc2FzcyB1bmQgbmljaHQgbWVociBzbyAKcmF1c2thbSwgd2llIGljaCByZWluIGdla29tbWVuIGJpbiA7LSkKQWxzbyBhbGxlcyBkaWUgU2NodWxkIGRlciBmaWVzZW4sIGdlbWVpbmVuLCBoaW50ZXJoYWVsdGlnZW4gTWFnaWVyLgoKU2hhZWVuYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS3VlbnN0bGljaGUgSW50ZWxsaWdlbnoocmVkdXppZXJ1bmcpIChEZW1vbmxvcmQsIDE1LiBKdWwgMjAwNywgMDc6NDU6NDEpOgpEYXMgZGllIE9ya3MgZXR3YXMgYmxvZWQgc2luZCwgaXN0IGphIGFsbGVuIGJla2FubnQuIEFiZXIgc2ljaCBmcmVpd2lsbGlnCm5vY2ggZHVlbW1lciB6dSBtYWNoZW4sIHdhciBtaXIgbmV1LiBXZXJzIG5pY2h0IGdsYXVidCwgaGFiIGV4dHJhIG5lbgpGb3RvIGdlc2Nob3NzZW4uLi4uCgojIyMjIyMjIyMjIyMjIyMjIEZvdG8gU3RhcnQgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKRGllc2VyIE9yayBnZWhvZXJ0IHp1ciBTdGFkdHdhY2hlLiBFciBwYXRyb3VsbGllcnQgZHVyY2ggZGllIGdhbnplIFN0YWR0IHVuZAphY2h0ZXQgZGFyYXVmLCBkYXNzIG5pZW1hbmQgZWluZSBTdHJhZnRhdCBiZWdlaHQuIER1IGRlbmtzdCBhbiBkaWUgV2FjaGVuIGluCk1vdWxva2luLCBkaWUgRGlyIHZpZWwgc3RhZXJrZXIgaW4gc2NobWVyemxpY2hlciBFcmlubmVydW5nIHNpbmQuIEFiZXIgaGllcgpzY2hlaW50IGhhbHQgZGllc2UgQXVzcnVlc3R1bmcgenUgcmVpY2hlbiwgZGllIGRlciBPcmsgbWl0IHNpY2ggdHJhZWd0IHVuZAphdWNoIHNpY2hlciBndXQgZWluenVzZXR6ZW4gd2Vpc3MuIEF1ZmdydW5kIHNlaW5lciBBdXNiaWxkdW5nIHdlaXNzIGVyCm5hdHVlcmxpY2ggYXVjaCwgd2llIG1hbiBiZXNzZXJlIFJ1ZXN0dW5nIHVuZCBXYWZmZW4gYmVudXR6dC4gR2liIGlobSBlaW4KZ3V0ZXMgU2Nod2VydCB1bmQgZXIgd2lyZCBlcyBtaXQgRnJldWRlIHp1ZWNrZW4uCkVyIGlzdCBhYnNvbHV0IGZpdC4KRXIgdHJhZWd0IGVpbmVuIFNjaGFsIG1pdCBkZXIgQXVmc2NocmlmdCAnWW91J2xsIG5ldmVyIHdhbGsgYWxvbmUnLgpFciB0cmFlZ3QgYmVpIHNpY2g6CjIzNzUgTXVlbnplbi4KRWluIFNjaGxhZ3JpbmcuICgzKQpFaW4gUmluZyBkZXIgSW50ZWxsaWdlbnogKC0yKSAoYW5nZXpvZ2VuKS4KRWluIE9ya2hlbG0gKGFuZ2V6b2dlbikuCkVpbiBQYWFyIE9ya3N0aWVmZWwgKGFuZ2V6b2dlbikuCkVpbmUgT3Jrd2VzdGUgKGFuZ2V6b2dlbikuCkVpbiBPcmtzY2h3ZXJ0LgoKIyMjIyMjIyMjIyMjIyMjIEZvdG8gRW5kZSAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgpBbHNvIGdlYnQgaW4gWnVrdW5mdCBkZW4gQXVzc2NodXNzIHZvbSBEcm9tIG5pY2h0IGluIGRhcyBQYWtldCBzb25kZXJuIG5hY2ggCk9ya2hhdXNlbiwgZGEgZmluZGVuIHNpY2ggZGFua2JhcmUgQWJuZWhtZXIuCgpTY2hvZW5lbiBTb25udGFnIG5vY2gKREwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogODIgTWVnYW9obSAoWm9vaywgMTUuIEp1bCAyMDA3LCAxNjo0MzowNik6Cn4jISBvbj1ab29rIG90PTExODQ1MTA1ODAgb2c9d3d3Cn4jISBybj1CYW1iaSBydD0xMTg0NDUyMzI1IHJnPXd3dwp+IyEgdGlkPTExODQxMTE2NDMKTXVzc3QgRHUgaWhuIG5pY2h0IGxlaWRlbiBrb2VubmVuPyA7KSBaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2NobWFycm4gOykgKEdyaW1tYm9ybiwgMjAuIEp1bCAyMDA3LCAwOTo0NzoxMSk6Cn4jISBybj1MaWFyYSBydD0xMTg0ODg1NTE0IHJnPXd3dwp+IyEgdGlkPTExODQ4ODU1MTQKV28gaXN0IERlaW4gUHJvYmxlbT8gU2luZCBoYWx0IGZhZWhpZ2UgTGV1dGU6IHdpc3NlbiBuaWNodCB3YXMgZnVlciBlaW4Kb3BlcmF0aW5nIHN5c3RlbSBEdSBoYXN0LCBrb2VubmVuIGVzIGFiZXIgb3B0aW1pZXJlbi4gRGFzcyBlcyBkYW5uIG5pY2h0IG1laHIKZnVlciBPcnRob2dyYXBoaWUgZ2VyZWljaHQgaGF0IGthbm4gbWFuIHNpY2hlciB2ZXJzY2htZXJ6ZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyBtYWwgYW5kZXJzIChBcmF0aG9ybiwgMjEuIEp1bCAyMDA3LCAwMTowODo0Myk6CltGcmV1bmRlOkh1bW5pXSBtaWZ0CltGcmV1bmRlOkh1bW5pXSBqZXR6dCBoYXQgbWVpbiB2ZXJzdWNoLCB4IHp1IHN0YXJ0ZW4gbWVpbgpbRnJldW5kZTpIdW1uaV0gdGVybWluYWwga2FwdXR0Z2VtYWNodC4gaWNoIHNlaCBuaXggbWVoCls8TWFzdGVSPjpIdW1uaSB2ZXJsYWVzc3QgYWxzIExldHp0ZXIgZGllIEViZW5lICdodW1uaWVya2xhZXJ0cycsIHdvcmF1ZiBkaWVzZQogICAgICAgICAgc2ljaCBpbiBlaW5lbSBCbGl0eiBva3RhcmluZW4gTGljaHRzIGF1ZmxvZXN0Ll0KRXJ3YXJ0ZXQgKG9mZmxpbmUpOiBIdW1uaQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlciBzY2hhdXQgbWl0PyAoUm9uZGEsIDIyLiBKdWwgMjAwNywgMTg6MjA6MzApOgpIZXV0ZSBhYmVuZCwgMjI6MjUga29tbXQgUm9ja3kgSG9ycm9yIFBpY3R1cmUgU2hvdyBpbSBGZXJuc2VoZW4gKEthYmVsIDEpLgpBbGxlaW4tU2NoYXVlbiBpc3QgZG9vZiAtIGRhaGVyOiBUcmVmZmVuIGluIGRlbSBSYXVtIHVlYmVyIGRlcgpBYmVudGV1cmVyZ2lsZGUsICh2aXJ0dWVsbGUpIFBhcGllcmh1ZXRlLCBQb3Bjb3JuLCBSZWlzLCBUb2FzdGJyb3RlIHNpbmQKbWl0enVicmluZ2VuLgoKUm9uZGEgKmluIGdlbmF1IGRlciByaWNodGlnZW4gUnVicmlrKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdlciBzY2hhdXQgbWl0PyAoSmFubmUsIDIyLiBKdWwgMjAwNywgMTg6MjM6MjYpOgp+IyEgcm49Um9uZGEgcnQ9MTE4NTEyMTIzMCByZz1zY2htYXJybgp+IyEgdGlkPTExODUxMjEyMzAKSG1tbSwgZGllIGVyc3RlbiBWZXJzdWNoZSwgYXVzIGRlciBNUEEgZWluZW4gUGFwaWVyaHV0IHp1IGJhc3RlbG4gc2luZApnZXNjaGVpdGVydC4gSWNoIGJyYXVjaCBlaW5lIEJhc3RlbGFubGVpdHVuZyEhICpnKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdlciBzY2hhdXQgbWl0PyAoVmFtcGlyZSwgMjMuIEp1bCAyMDA3LCAwODo1MDozNCk6Cn4jISBybj1Sb25kYSBydD0xMTg1MTIxMjMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NTEyMTIzMApHcnVtbWVsCgpCaXR0ZSBlaW5uZSBUYWcgdm9yaGVyIGFua3VlbmRpbmdlbiwgaWNoIGhhZXR0ZSBkYXMgc28gZ2VybmUgZ2VzZWhuIDooCgpNaXJvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFZvbGx0ZXh0c3VjaGUgdWViZXIgUERGcyAoQmFtYnVsa28sIDIzLiBKdWwgMjAwNywgMTM6MTc6NDgpOgp+IyEgcm49Wm9vayBydD0xMTg1MTg5MzY0IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTExODUxODkxNTkKSGlXaXM/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBWb2xsdGV4dHN1Y2hlIHVlYmVyIFBERnMgKFpvb2ssIDIzLiBKdWwgMjAwNywgMTM6Mjk6MzIpOgp+IyEgcm49QmFtYnVsa28gcnQ9MTE4NTE4OTQ2OCByZz1zY2htYXJybgp+IyEgdGlkPTExODUxODkxNTkKNDc1IERhdGVpZW4gaW0gTW9tZW50LiBVbmQgbmVpbiwgaWNoIGRlbmtlLCBtZWluZSBIaXdpcyBzaW5kIG1pciBkYWZ1ZXIKenUgbGFuZ3NhbS4gLCkgWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVm9sbHRleHRzdWNoZSB1ZWJlciBQREZzIChBbGJvaW4sIDIzLiBKdWwgMjAwNywgMTM6MzQ6MDMpOgp+IyEgcm49Wm9vayBydD0xMTg1MTkwMTcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NTE4OTE1OQpkYXMgdGhlbWEgd2llIG1hbiBwZGYncyB6dXNhbW1lbmZ1ZWdlbiBrYW5uIHRhdWNodCBpbW1lciBtYWwgd2llZGVyIGF1ZiAoaXN0CmFiZXIgYXVmd2VuZGlnKSBhbmRlcmUgbW9lZ2xpY2h0a2VpdDogcGRmcyBpbiBUZXh0ZSB6dSBrb252ZXJ0ZWlyZW4gbWl0CnBkZnRvdGV4dApPZGVyIER1IHN0ZWxsc3QgYWxsZXMgaW5zIG5ldHogbWFjaHN0IFNFTyB1bmQga2FubnN0IG1pdCBHb2dnbGUgc3VjaGVuIDstKQphbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZXIgc2NoYXV0IG1pdD8gKEdsb2luc29uLCAyMy4gSnVsIDIwMDcsIDE1OjI1OjI1KToKfiMhIHJuPVZhbXBpcmUgcnQ9MTE4NTE3MzQzNCByZz1zY2htYXJybgp+IyEgdGlkPTExODUxMjEyMzAKTWFjaHQgbml4LiBEYWZ1ZXIgZ2lidCBlcyBqZXR6dCBLbG9yb2xsZW4uIFVuZCBuYWVjaHN0ZXMgTWFsIFRvYXN0YnJvdCA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFJTUy1GZWVkIChEYXJrbG9yLCAyNS4gSnVsIDIwMDcsIDEyOjA0OjI5KToKfiMhIHJuPU1vbnRhbnVzIHJ0PTExODUyOTQ5ODcgcmc9b2VmZmVudGxpY2hrZWl0c2FyYmVpdAp+IyEgdGlkPTExODQ5ODA1OTgKRHUgc29sbHN0IGphIGF1Y2ggd2VsY2hlIHNjaHJlaWJlbiEgOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcmlzY2hlciBXaW5kIGltIEJhbGFuY2V0ZWFtIChab29rLCAgMS4gQXVnIDIwMDcsIDEwOjQzOjAxKToKfiMhIHJuPU1pcmlsIHJ0PTExODU5MDI0Mjkgcmc9YmFsYW5jZS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTE4NTkwMjQyOQpVbmQgZW5kbGljaCBoYXQgZGllIEZyYXVlbmZvZXJkZXJrb21taXNzaW9uIHdpZWRlciBlaW5lbiBFcmZvbGcKenUgdmVybWVsZGVuLgoKWm9vayBoZWZ0ZXQgc2ljaCBlaW5lbiBPcmRlbiBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRnJpc2NoZXIgV2luZCBpbSBCYWxhbmNldGVhbSAoTW9vbnNoaW5lLCAgNC4gQXVnIDIwMDcsIDAwOjMzOjMyKToKfiMhIHJuPVpvb2sgcnQ9MTE4NTk1Nzc4MSByZz1zY2htYXJybgp+IyEgdGlkPTExODU5MDI0MjkKSmEsIGF1Y2ggd2VubiBlcyBrZWluZSBGcmF1ZW4gaW0gTUcgZ2lidCEKCkluc29mZXJuIGlzdCBkaWVzZSBLb21taXNpb24gZWlnZW50bGljaCBmdWVyIGRlbiBBKiwgYWJlciBlZ2FsLCBEdSBoYXN0CmdlZm9yZGVydCwgdW5kIER1IHd1cmRlc3QgZXJob2VocnQgKEhvZXJ0IHNpY2ggZGFzIGpldHp0IGRvb2YgYW4sIHdlbm4gaWNoCnNhZ2UsIGRhc3MgWm9vayB2b24gZWluZW0gR290dCBlcmhvZWhydCB3dXJkZT8hIDpvKSApCgpBdWNoIHdlbm4gZXMgZGllIGZhbHNjaGUgUnVicmlrIGlzdDoKSWNoIGZyZXVlIG1pY2ggYXVmIGRpZSBBdWZnYWJlLCBob2ZmZSBkYXNzIGljaCBkZW4gQW5mb3JkZXJ1bmdlbiBnZXJlY2h0CndlcmRlbiBrYW5uIHVuZCBkYW1pdCB2aWVsbGVpY2h0IGRlbSBNRyBldHdhcyB6dXJ1ZWNrZ2ViZW4ga2FubiB2b24gZGVtCmphaHJlbGFuZ2VuIFNwaWVsc3Bhc3MsIGRlbiBlcyBtaXIgYmVyZWl0ZXQgaGF0LiA6LSkKClVuZCBkaWUgZGlja2UgWndlcmdlbmtydXN0ZSBpc3Qgdm9yaGFuZGVuLCBrZWluZSBBbmdzdCwgaWNoIGhhYmUgbWl0IFpvb2sgQmllcgpnZXRydW5rZW4sIG1pY2ggc2Nob2NrdCBzbyBsZWljaHQgbmljaHRzIG1laHIuIDpvKQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGcmlzY2hlciBXaW5kIGltIEJhbGFuY2V0ZWFtIChNb29uc2hpbmUsICA0LiBBdWcgMjAwNywgMDA6MzQ6NTApOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTExODYxODA0MTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTg1OTAyNDI5CjEpIDJtYWwgZWluIGggc3RyZWljaGVuLCB3byBzdWNodCBlcyBldWNoIHJhdXMsIDIpIGRlbiBqYWhyZWxhbmdlbiBTcGllbHNwYXNzCmJlcmVpdGV0ZSBlcyBtaXIgbmljaHQgbnVyIHNvbmRlcm4gYmVyZWl0ZXQgZXMgaW1tZXJub2NoLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZyaXNjaGVyIFdpbmQgaW0gQmFsYW5jZXRlYW0gKE1vb25zaGluZSwgIDQuIEF1ZyAyMDA3LCAwMDozNjowMCk6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTE4NjE4MDQ5MCByZz1zY2htYXJybgp+IyEgdGlkPTExODU5MDI0MjkKTWlyIGRvY2ggZWdhbCwgb2IgaWNoIHNjcm9sbGUsIGVpbmVzIG11c3MgaWNoIG5vY2ggbG9zd2VyZGVuOgoKTW9vbnNoaW5lIHRhY2tlcnQgWm9vayBkZW4gT3JkZW4gZ2FhbnogZmVzdCBhbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZyaXNjaGVyIFdpbmQgaW0gQmFsYW5jZXRlYW0gKEdub21lLCAgNC4gQXVnIDIwMDcsIDE3OjU3OjExKToKfiMhIHJuPU1vb25zaGluZSBydD0xMTg2MTgwNTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NTkwMjQyOQpqYSwgd2VyIG1pdCB6b29rIGJpZXIgdHJpbmt0IG11c3Mgc2ljaCB3YXJtIGFuemllaGVuLgppc3QgaGFsdCBlaW4gZWNodGVyIHp3ZXJnIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ2hvcmUgV2FycyAoSHVtbmksICA0LiBBdWcgMjAwNywgMTk6NTg6MjApOgp+IyEgcm49TWFoYXJldCBydD0xMTg1ODEwMjIzIHJnPXd3dwp+IyEgdGlkPTExODU4MTAyMjMKSmEsIGVzIGZ1bmt0aW9uaWVydC4gSGVydm9ycmFnZW5kIHNvZ2FyLgoKSHVtbmksIGRlciBzaWNoIGFlcmdlcnQsIHdlaWwgZ2VyYWRlIHdpZWRlciBqZW1hbmQga29jaHQsIGRlciBkYWR1cmNoIGluCkZ1ZWhydW5nIGdlcmFldC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBDaG9yZSBXYXJzIChaZXNzdHJhLCAgNC4gQXVnIDIwMDcsIDIwOjAwOjU1KToKfiMhIHJuPUh1bW5pIHJ0PTExODYyNTAzMDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTg1ODEwMjIzCk1obW0sIGRhcyBmdW5rdGlvbmllcnQgYWJlciBhdWNoIG51ciBkYW5uLCBvZGVyPyBBbHNvLCB3ZW5uIG1hbiBtaW4uIHp1IHp3ZWl0CmlzdCB1bmQgZWluZW0gZGFzIENob3JlIFdhcnMgbmljaHQgZWggaXJnZW5kd28gdm9yYmVpZ2VodC4gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBDaG9yZSBXYXJzIChIdW1uaSwgIDQuIEF1ZyAyMDA3LCAyMDowMTo0Nyk6Cn4jISBybj1aZXNzdHJhIHJ0PTExODYyNTA0NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTg1ODEwMjIzCkFsbGVpbmUgaGFzdCBEdSBrZWluZW4sIGRlciBtaXQgRGlyIHdldHRlaWZlcnQuIFZpZWxsZWljaHQgaGlsZnRzIHRyb3R6ZGVtLAp3ZW5uIER1IGVpbiB3ZW5pZyBzY2hpem9waHJlbiB2ZXJhbmxhZ3QgYmlzdC4uLiBhbHNvLCB3ZW5uIGljaCBtaWNoIGluIEh1bW5pLApTd290bCB1bmQgT2hhbSBhdWZ0ZWlsZSB1bmQgamVkZXIgdmVyc3VjaHQsIGRlbiBhbmRlcmVuIHp1IHVlYmVydHJ1bXBmZW4uLi4KCkhtbSwgYmVpIG1pciBrb2VubnRlIHNvd2FzIGtsYXBwZW4uIEJlaSBEaXI/IEhtbS4gVmVybXV0bGljaCBuaWNodC4uLgoKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBDaG9yZSBXYXJzIChaZXNzdHJhLCAgNC4gQXVnIDIwMDcsIDIwOjAzOjQzKToKfiMhIHJuPUh1bW5pIHJ0PTExODYyNTA1MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTg1ODEwMjIzCjpraWNoZXJ0LgpJY2ggZ2xhdWIgYXVjaCwgZGFzcyBpY2ggZGEgaXJnZW5kd2llIHJlY2h0IGVyZm9sZ2xvcyB3YWVyIGJ6dy4gbWljaCBuaWNodCBzbwpyZWNodCBhbiBzdGVpZ2VuZGVuIFB1bmt0ZXN0YWVuZGVuIGZyZXVlbiBrb2VubnRlLiA7LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IENob3JlIFdhcnMgKEh1bW5pLCAgNC4gQXVnIDIwMDcsIDIwOjA0OjE5KToKfiMhIHJuPVplc3N0cmEgcnQ9MTE4NjI1MDYyMyByZz1zY2htYXJybgp+IyEgdGlkPTExODU4MTAyMjMKRGFzIGZpZXNlIGlzdDogSWNoIGJpbiBnZXJhZGUgZGFiZWksIG1laW4gWmltbWVyIGF1Znp1cmFldW1lbiB1bmQgenUKc29ydGllcmVuLCBuYXR1ZXJsaWNoIHphZWhsdCBkYXMgbmljaHQuIEhtcGYuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQ2hvcmUgV2FycyAoTWFoYXJldCwgIDQuIEF1ZyAyMDA3LCAyMDoxMzo1OSk6Cn4jISBybj1IdW1uaSBydD0xMTg2MjUwNjU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NTgxMDIyMwpIYWV0dGVzdCBkdSBkYXMgbmljaHQgdm9yaGVyIGF1c2hhbmRlbG4ga29lbm5lbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTm90ZWJvb2sgKE1haGFyZXQsICA0LiBBdWcgMjAwNywgMjE6MjY6MzgpOgp+IyEgcm49R25vbWUgcnQ9MTE4NjI1NTMxNCByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTExODYyNTM3NjUKTWVpbiBLdWVobHNjaHJhbmsgaXN0IGF1Y2ggb2huZSAoU3Ryb20pQWtrdSwgdHJvdHpkZW0gbWFnIGljaCBkZW4gZ2VybgpzdHJvbXNwYXJlbmQgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IENob3JlIFdhcnMgKERhcmtsb3IsICA0LiBBdWcgMjAwNywgMjM6MjI6NDgpOgp+IyEgcm49SHVtbmkgcnQ9MTE4NjI1MDY1OSByZz1zY2htYXJybgp+IyEgdGlkPTExODU4MTAyMjMKRGFubiB0ZWlsIGRpY2ggZG9jaCBkYWJlaSBhdWYgdW5kIG1hY2ggbWFjaCBuIFdldHRrYW1wZiBkYXJhdXMuIDspCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOb3RlYm9vayAoRGFya2xvciwgIDQuIEF1ZyAyMDA3LCAyMzoyNTozMyk6Cn4jISBybj1WYW5pb24gcnQ9MTE4NjI1NTg4NyByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTExODYyNTM3NjUKV2VpbCBmZXN0Z2VzdGVsbHQgd3VyZGUsIGRhc3MgZGllIGRvY2ggbmljaCBkZW5rZW4ga29lbm5lbj8gOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5vdGVib29rIChIdW1uaSwgIDQuIEF1ZyAyMDA3LCAyMzoyNTo1Nyk6Cn4jISBybj1EYXJrbG9yIHJ0PTExODYyNjI3MzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTg2MjUzNzY1Ck5laW4sIHdlaWwgbGF1dGVyIExldXRlIGRpZSBhbHMgS2FmZmVlLXBhZCB2ZXJ3ZW5kZXQgaGFiZW4uCgpIYWhhLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IENob3JlIFdhcnMgKE1lc2lyaWksICA0LiBBdWcgMjAwNywgMjM6MzE6MDApOgp+IyEgcm49SHVtbmkgcnQ9MTE4NjI1MDY1OSByZz1zY2htYXJybgp+IyEgdGlkPTExODU4MTAyMjMKV2FydW0gemFlaGx0IGRhcyBuaWNodD8gV2lyIGhhYmVuIGJpcyBqZXR6dCBzbyBjYSAyMCBBZHZlbnR1cmVzIGRlZmluaWVydC4KTXVzcyBpY2ggamV0enQgbnVyIG1laW5lIHZvbiBoZXV0ZSBub2NoIGNsYWltZW4gdW5kIHp1IGRpZXNlbiBldHdhcwpBdG1vc3BoYWVyZQpoaW56dWZ1ZWdlbi4KCk1lc2ksIFRlYW0gQ2hhb1ogUnVsZVoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IENob3JlIFdhcnMgKEh1bW5pLCAgNC4gQXVnIDIwMDcsIDIzOjMxOjU2KToKfiMhIHJuPUh1bW5pIHJ0PTExODYyNTA2NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTg1ODEwMjIzCkRhcyBpc3QgamEgbnVyIG1laW4gWmltbWVyLCBrZWluIERpZW5zdCBhbiBkZXIgR2VtZWluc2NoYWZ0LgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IENob3JlIFdhcnMgKE1lc2lyaWksICA0LiBBdWcgMjAwNywgMjM6MzI6NTQpOgp+IyEgcm49SHVtbmkgcnQ9MTE4NjI2MzExNiByZz1zY2htYXJybgp+IyEgdGlkPTExODU4MTAyMjMKSG1tIGFiZXIgZWluZSAibGFlc3RpZ2UgUGZsaWNodGF1ZmdhYmUiLCBzbyBkZWZpbmllcmVuIHNpY2ggdW5zZXJlIApBZHZlbnR1cmVzLiBaLmIuIGlzdCBkYSBCZXNhZW5mdGlnZSBkZW4gR2VsZGVpbnRyZWliZXIgZGFiZWksIGFsc28gVVN0VkEsCmRpZSBtYWNoIGljaCBhdWNoIG5pY2ggc29uZGVybiBNYWhhcmV0LgpNZXNpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNdWx0aXBsZS1Pc3ppbGxpZXJlbmRlIFBlcnNvZW5saWNoa2VpdCAoTWFzdWwsICA0LiBBdWcgMjAwNywgMjM6NDc6MTkpOgpEZWluIEZyZXVuZCBIdW1uaSB0ZWlsdCBEaXIgbWl0OiBnZW5hdSwgaWNoIGxvZyBhdWNoIG1hbCBzd290bCBlaW4uCkh1bW5pICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpTd290bCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpTd290bCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKSHVtbmkgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKSHVtbmkgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCi4uLgp0byBiZSBjb250aW51ZWQKCk1hc3VsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBDaG9yZSBXYXJzIChNYWhhcmV0LCAgNS4gQXVnIDIwMDcsIDA4OjQ1OjU4KToKfiMhIHJuPU1lc2lyaWkgcnQ9MTE4NjI2MzE3NCByZz1zY2htYXJybgp+IyEgdGlkPTExODU4MTAyMjMKSG0sIHd1ZXJkZSBNaXJpbCBrZWluIFByb2JsZW0gZGFtaXQgaGFiZW4sIHdlbm4gZGVpbiBBcmJlaXRzemltbWVyIHZlcnN1bXBmdCwKd2VpbCBkdSBudXIgbm9jaCBlaW5rYXVmZW4gZ2Voc3QgdW5kIFRpc2NoZSBhYndpc2Noc3Q/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBDaG9yZSBXYXJzIChIdW1uaSwgIDUuIEF1ZyAyMDA3LCAxNzo0MjoyMCk6Cn4jISBybj1NYWhhcmV0IHJ0PTExODYyOTYzNTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTg1ODEwMjIzCk5hamEsIGFiZXIgbWlyIGRhZnVlciBYUHMgZ3V0c2NocmVpYmVuIHdhZXJlIGRvY2ggd2FzIHVudmVyc2NoYWVtdC4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IENob3JlIFdhcnMgKE1haGFyZXQsICA1LiBBdWcgMjAwNywgMTc6NDg6MTcpOgp+IyEgcm49SHVtbmkgcnQ9MTE4NjMyODU0MCByZz1zY2htYXJybgp+IyEgdGlkPTExODU4MTAyMjMKVW5zZXJlIFdvaG51bmcgaXN0IHNvIG9yZGVudGxpY2ggd2llIHNjaG9uIGxhbmdlIG5pY2h0IG1laHIgOykKU29nYXIgZGllIFBmbGFuemVuIHNpbmQgZ2Vnb3NzZW4uClVuZCBSYW5hIGlzdCBlaW5lIGJ1Z2dlbmRlIFhQLVF1ZWxsZSBoZXV0ZS4gIFNlaXQgZ2VzdGVybiBBYmVuZCByZWlzc2VuIHdpcgp1bnMgZGFydW0sIHdlciBkaWUgS2Fja3dpbmRlbG4gd2VjaHNlbHQgdW5kIGhldXRlIGhhdCBSYW5hIER1cmNoZmFsbCA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRnJpc2NoZXIgV2luZCBpbSBCYWxhbmNldGVhbSAoWm9vaywgIDUuIEF1ZyAyMDA3LCAyMTowMjozOCk6Cn4jISBybj1Hbm9tZSBydD0xMTg2MjQzMDMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NTkwMjQyOQpXYXMgaGllciB3aWVkZXIgZnVlciBHZXJ1ZWNodGUgZ2VzdHJldXQgd2VyZGVuLi4uLiBpY2ggdmVydHJhZyBkb2NoCmdhciBrZWluIEJpZXIuLi4KCloKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEZyaXNjaGVyIFdpbmQgaW0gQmFsYW5jZXRlYW0gKFN3b3RsLCAgNS4gQXVnIDIwMDcsIDIxOjE2OjM1KToKfiMhIHJuPVpvb2sgcnQ9MTE4NjM0MDU1OCByZz1zY2htYXJybgp+IyEgdGlkPTExODU5MDI0MjkKIk1laW4gQmllciBpc3QgYWxsZS4iIC0gIkphLCBkYXMgc2VoIGljaC4gVW5kPyIgLSAiV2FzIGdlZGVua3N0IER1IGRhZ2VnZW4genUKdHVuPyIKCk5hLCBrZW5uc3QgRHUgZGVuIERpYWxvZz8KClN3b3RsL0h1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBGcmlzY2hlciBXaW5kIGltIEJhbGFuY2V0ZWFtIChab29rLCAgNS4gQXVnIDIwMDcsIDIxOjE3OjMxKToKfiMhIHJuPVN3b3RsIHJ0PTExODYzNDEzOTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTg1OTAyNDI5CnNvbGx0ZSBpY2g/IHoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEZyaXNjaGVyIFdpbmQgaW0gQmFsYW5jZXRlYW0gKFN3b3RsLCAgNS4gQXVnIDIwMDcsIDIxOjE3OjQzKToKfiMhIHJuPVpvb2sgcnQ9MTE4NjM0MTQ1MSByZz1zY2htYXJybgp+IyEgdGlkPTExODU5MDI0MjkKVmVybXV0bGljaCBuaWNodC4KCkh1bW5pL1N3b3RsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRnJpc2NoZXIgV2luZCBpbSBCYWxhbmNldGVhbSAoWmVzc3RyYSwgIDUuIEF1ZyAyMDA3LCAyMToyNzozMSk6Cn4jISBybj1Td290bCBydD0xMTg2MzQxNDYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NTkwMjQyOQo6a2ljaGVydC4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hcnZpbiBoYXQgcmVjaHQuLi4gOy0pIChaZXNzdHJhLCAgNS4gQXVnIDIwMDcsIDIzOjQ4OjAxKToKRHUgc2Fnc3Q6IFRhY2ggRHUgVHJvdHRlbCEKTWFydmluIHNhZ3Q6IEFsc28gZWhybGljaCwgZGFzIG1hY2h0IG1pY2ggbm9jaCBnYW56IGJldHJvZmZlbiwgRHUhCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVmVybWlzc3Q6IEtsb3NjaGx1ZXNzZWwgKEJvaW5nLCAgNi4gQXVnIDIwMDcsIDA5OjMyOjM1KToKfiMhIHJuPU1pcmlsIHJ0PTExODYyNTM1NDMgcmc9cGFydHkKfiMhIHRpZD0xMTg2MjUzNTQzCk9oIE1hbm4gLi4uIGVzIGlzdCB6dSBmcnVlaC4gSWNoIGhhYiBtaWNoIGdld3VuZGVydCB3aWVzbyBqZW1hbmQgZWluZQpLbG9zY2h1ZXNzZWwgbWl0bmVobWVuIHNvbGx0ZSAuLi4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBWZXJtaXNzdDogS2xvc2NobHVlc3NlbCAoQW1hcnlsbGlzLCAgNi4gQXVnIDIwMDcsIDA5OjMzOjE5KToKfiMhIHJuPUJvaW5nIHJ0PTExODYzODU1NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTg2MjUzNTQzCkRhcyBnaW5nIG5pY2h0IG51ciBEaXIgYmVpbSBlcnN0ZW4gc2NobmVsbGVuIExlc2VuIHNvIDstKQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZlcm1pc3N0OiBLbG9zY2hsdWVzc2VsIChQZXJkaXRhLCAgNi4gQXVnIDIwMDcsIDEwOjE3OjExKToKfiMhIHJuPU1pcmlsIHJ0PTExODYyNTM1NDMgcmc9cGFydHkKfiMhIHRpZD0xMTg2MjUzNTQzCi4uLnVuZCBpY2ggaGFiIGRvY2ggenVlcnN0IHRhdHNhZWNobGljaCAiS2xvc2NodWVzc2VsIiBnZWxlc2VuLi4uCkhhYmUgYWJlciB3ZWRlciBLbG9zY2h1ZXNzZWwgbm9jaCBLbG9zY2hsdWVzc2VsIG1pdGdlbm9tbWVuLCBrYW5uIGFsc28gbmljaHQKd2VpdGVyaGVsZmVuLgpQZXJkaXRhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFZlcm1pc3N0OiBLbG9zY2hsdWVzc2VsIChQZXJkaXRhLCAgNi4gQXVnIDIwMDcsIDEwOjIxOjU3KToKfiMhIHJuPVBlcmRpdGEgcnQ9MTE4NjM4ODIzMSByZz1zY2htYXJybgp+IyEgdGlkPTExODYyNTM1NDMKb2gsIHVuZCBqZXR6dCBuYWNoIGtvbXBsZXR0ZW0gTGVzZW4gdm9uIHNjaG1hcnJuIHNlaGUgaWNoLCBkYXNzIGljaCBqYQpuaWNodG1hbCBkaWUgZWluemlnZSB3YXIsIGRlciBlcyBzbyBlcmdhbmdlbiBpc3QgKmcqClBlcmRpdGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBNZXJsaW4gc28gYWxsZXMga2Fubi4gOy0pIChaZXNzdHJhLCAgNy4gQXVnIDIwMDcsIDIyOjA2OjAxKToKW1RvZDpMYXJzXSBFaW4gV2Fzc2VyZWxlbWVudGFyIGhhdCBnZXJhZGUgSmFkYXdpbiB1bWdlYnJhY2h0LiA8RGllLCAyMTo1MDozND4KW0RlYnVnOiBSIE8gTyBUIF0gUkVORVdJTkc6IC9zdGQvc2hlbGxzL2h1bWFuIzUyNDkzNDcgL2h1bWFuOmphZGF3aW4KW1RvZDpMYXJzXSBKYWRhd2luIGhhdCBnZXJhZGUgSmFkYXdpbiB1bWdlYnJhY2h0LiA8RGllLCAyMTo1MDo0MD4KW1RvZDpMYXJzXSBFaW4gZ2VuZXJ2dGVyIE1lcmxpbiBoYXQgZ2VyYWRlIEphZGF3aW4gdW1nZWJyYWNodC4gPERpZSwgMjE6NTA6NDA+CgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FzIE1lcmxpbiBzbyBhbGxlcyBrYW5uLiA7LSkgKEphZGF3aW4sICA3LiBBdWcgMjAwNywgMjM6MTg6MDEpOgp+IyEgcm49WmVzc3RyYSBydD0xMTg2NTE3MTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NjUxNzE2MQpKYWphLCBzcG90dGUgZHUgbnVyLiA7KQpVbmQgZGFubiB3aWxsIG1pY2ggbWljaCBBcmsgbmljaHRtYWwgemFwcGVuLiBJY2ggYmluIG1lbnNjaGxpY2ggZW50dGFldXNjaHQuCkphZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2FzIE1lcmxpbiBzbyBhbGxlcyBrYW5uLiA7LSkgKFpvb2ssICA3LiBBdWcgMjAwNywgMjM6MTg6MTkpOgp+IyEgcm49SmFkYXdpbiBydD0xMTg2NTIxNDgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NjUxNzE2MQpJY2ggZXJzdC4KWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdhcyBNZXJsaW4gc28gYWxsZXMga2Fubi4gOy0pIChHbG9pbnNvbiwgIDcuIEF1ZyAyMDA3LCAyMzoyMjoxOCk6Cn4jISBybj1ab29rIHJ0PTExODY1MjE0OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTg2NTE3MTYxClNpbmQgZGVpbmUgQXJrLU1hcmlvbmV0dGVuZmFlZGVuIHplcnJpc3Nlbj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEV1dGhhbmFzaWUgKEdub21lLCAgNy4gQXVnIDIwMDcsIDIzOjI2OjE3KToKfiMhIHJuPURhcmtsb3IgcnQ9MTE4NjQzNjQ4NCByZz13aXR6ZQp+IyEgdGlkPTExODYzODk0ODIKbmVpbiwgYW50aGVhIGhhdCBudXIgZGllIHJ1YnJpayB2ZXJ3ZWNoc2VsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdhcyBNZXJsaW4gc28gYWxsZXMga2Fubi4gOy0pIChBbnRoZWEsICA4LiBBdWcgMjAwNywgMDk6NTk6MTgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE4NjUyMTczOCByZz1zY2htYXJybgp+IyEgdGlkPTExODY1MTcxNjEKV2llc28gYmlzdCBEdSB2b24gQXJrIG1lbnNjaGxpY2ggZW50dGFldXNjaHQ/IEFyayBpc3QgZG9jaCBlaW4gSHlsYXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXYXMgTWVybGluIHNvIGFsbGVzIGthbm4uIDstKSAoQXJrLCAgOC4gQXVnIDIwMDcsIDEwOjAyOjQzKToKfiMhIHJuPUFudGhlYSBydD0xMTg2NTU5OTU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NjUxNzE2MQpOZSwgZXIgaXN0IGVpbiBNZW5zY2ggdW5kIGRlc2hhbGIgZW50dGFldXNjaHQuIEFiZXIgd2VyIHZlcnN0ZWh0IHNjaG9uCm1lbnNjaGxpY2hlIFNwaWVsZXI/IEljaCBiaW4gaW1tZXIgbm9jaCB2ZXJkYXR0ZXJ0LCB3YXJ1bSBoaWVyIGFsbGUgd29sbGVuLApkYXNzIGljaCB3ZW4gemFwcGUuIEhhYiBpY2ggbm9jaCBuaWUgZ2VtYWNodCAuLi4gd2FydW0gYXVjaD8gSWNoIGJpbiBkb2NoIG5ldHQKdW5kIGxpZWIuIFdlbm4gZGFzIGVpbiBhbmRlcmVyIG1hY2h0LCBnaWJ0IGRhcyBzcGllbGVyc2VpdHMgaW1tZXIgZ3Jvc3NlcwpIYWxsbywgd2FydW0gd2lsbCBoaWVyIG51biBqZWRlciBkYWhlcmdlbGF1ZmVuZSBNZW5zY2ggd2FzIHZvbiBtaXI/IDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdhcyBNZXJsaW4gc28gYWxsZXMga2Fubi4gOy0pIChHbG9pbnNvbiwgIDguIEF1ZyAyMDA3LCAxMDowODo0Mik6Cn4jISBybj1BcmsgcnQ9MTE4NjU2MDE2MyByZz1zY2htYXJybgp+IyEgdGlkPTExODY1MTcxNjEKZHUgYmlzdCBoYWx0IHBvcHVsYWVyLiBOdW4gZ2liIHNjaG9uIGRlbSBEcmFlbmdlbiBkZXIgTWFzc2VuIG5hY2ggdW5kCmVudGJsb2Vzc2UgZGVpbmUgbWFlY2h0aWdlbiBXZXJremV1Z2UuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2FzIE1lcmxpbiBzbyBhbGxlcyBrYW5uLiA7LSkgKEFyaywgIDguIEF1ZyAyMDA3LCAxMDoxNDowMSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTg2NTYwNTIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NjUxNzE2MQpBZWhtIC4uLiBqZSBsYWVuZ2VyIGljaCBub2NobWFsIGRydWViZXJsZXNlLCBmcmFnZSBpY2ggbWljaCwgd2FzIER1IGpldHp0CmdlbmF1IHZvbiBtaXIgd2lsbHN0IDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFdhcyBNZXJsaW4gc28gYWxsZXMga2Fubi4gOy0pIChBbnRoZWEsICA4LiBBdWcgMjAwNywgMTA6MTQ6NTgpOgp+IyEgcm49QXJrIHJ0PTExODY1NjA4NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTg2NTE3MTYxCk5pY2h0IGxlc2VuLiBEdSB3ZWlzc3QgZG9jaDogIkRlciBCdW5kZXNiaWxkdW5nc21pbmlzdGVyIHdhcm50OiBMZXNlbiBzY2hhZGV0CmlocmVuIEJpbGR1bmdzbHVlY2tlbiIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBXYXMgTWVybGluIHNvIGFsbGVzIGthbm4uIDstKSAoQXJrLCAgOC4gQXVnIDIwMDcsIDEwOjE2OjEyKToKfiMhIHJuPUFudGhlYSBydD0xMTg2NTYwODk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NjUxNzE2MQpNYW4gbGVzZSB0cm90emRlbSBub2NobWFsIGRhcyBTdWJqZWN0IC4uLiBlcyBnZWh0IGFsc28gaW4gV2FocmhlaXQgdW0gTWVybGluCi4uLiBpaWlpaWhoaC4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogV2FzIE1lcmxpbiBzbyBhbGxlcyBrYW5uLiA7LSkgKEdsb2luc29uLCAgOC4gQXVnIDIwMDcsIDEwOjE5OjQzKToKfiMhIHJuPUFyayBydD0xMTg2NTYwOTcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NjUxNzE2MQpLb21tIHNjaG9uLiBCaXMgYXVmIGVpbiBwYWFyIGF1c2dld2FlaGx0ZSBHb2V0dGVyIGhhdCBzaWNoIGRvY2ggamVkZXIgTWFnaWVyCnZvbiBNZXJsaW4gYXVmIGRlc3NlbiBiZXNvbmRlcmUgQXJ0IGVpbnNlZ25lbiBsYXNzZW4uIERhIG11c3MgbWFuIGR1cmNoLgpTb2xhbmdlIGVzIGtlaW4gU25hcGUgdW5kIEhhcnJ5IGlzdCAuLi4gKGh0dHA6Ly9wcmV2aWV3LnRpbnl1cmwuY29tLzJrMmhoYywKUDE4KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBXYXMgTWVybGluIHNvIGFsbGVzIGthbm4uIDstKSAoWm9vaywgIDguIEF1ZyAyMDA3LCAxMDo1MzozMyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTg2NTYxMTgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NjUxNzE2MQpbVG9kOkxhcnNdIFpvb2sgaGF0IGdlcmFkZSBNY2RlZSB1bWdlYnJhY2h0LiA8TWl0LCAxMDo1MzowNz4KW1RvZDpab29rXSBIYWV1ZmlnZXMgU3RlcmJlbiBmb2VyZGVydCBkaWUgbmF0dWVybGljaGUgUmVzaXN0ZW56IGdlZ2VuCltUb2Q6Wm9va10gVG9kZXNzZXF1ZW56ZW4uLi4gPE1pdCwgMTA6NTM6MDc+CgoKU28gZ2VodCBkYXMuCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2FzIE1lcmxpbiBzbyBhbGxlcyBrYW5uLiA7LSkgKExpYXJhLCAgOC4gQXVnIDIwMDcsIDE4OjUwOjI2KToKfiMhIHJuPUdsb2luc29uIHJ0PTExODY1NjA1MjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTg2NTE3MTYxCkljaCBiaW4gbWlyIG5pY2h0IHNpY2hlciwgb2IgaGllciBqZW1hbmQgQXJrcyBtYWVjaHRpZ2VzIFdlcmt6ZXVnIGVudGJsb2Vzc3QKc2VoZW4gd2lsbC4gKmh1c3QqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBXYXMgTWVybGluIHNvIGFsbGVzIGthbm4uIDstKSAoR2xvaW5zb24sICA4LiBBdWcgMjAwNywgMTk6NDY6MDYpOgp+IyEgcm49TGlhcmEgcnQ9MTE4NjU5MTgyNiByZz1zY2htYXJybgp+IyEgdGlkPTExODY1MTcxNjEKSGEuIERhIG1hZyBqZW1hbmQgZGVuIHpCIEFya2VuaGFtbWVyIG5pY2h0PwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEV1dGhhbmFzaWUgKEFudGhlYSwgIDkuIEF1ZyAyMDA3LCAxMTozNToxOCk6Cn4jISBybj1Hbm9tZSBydD0xMTg2NTIxOTc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NjM4OTQ4MgpIZXksIHdlbm4gZXMgd2lya2xpY2ggc28gZ2V3ZXNlbiB3YWVyZSBoYWV0dGUgaWNoIGVzIG5hdHVlcmxpY2ggaW4gZGllIGVpbnppZwpyZWxldmFudGUgUnVicmlrIGdlc2NocmllYmVuLiBEYWJlaSByZWRlIGljaCBzZWxidmVyc3RhZW5kbGljaCB2b24KTWVnYXNjaG1hcnJuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRXV0aGFuYXNpZSAoR25vbWUsIDEwLiBBdWcgMjAwNywgMjE6NTM6NDMpOgp+IyEgcm49QW50aGVhIHJ0PTExODY2NTIxMTggcmc9c2NobWFycm4KfiMhIHRpZD0xMTg2Mzg5NDgyCndlciBtZWdhc2NobWFycm4gbGllc3QsIGhhdCB6dXZpZWwgemVpdC4gdmllbCB6dSB2aWVsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRXV0aGFuYXNpZSAoQ3JvZnQsIDEwLiBBdWcgMjAwNywgMjI6NTQ6NDApOgp+IyEgcm49R25vbWUgcnQ9MTE4Njc3NTYyMyByZz1zY2htYXJybgp+IyEgdGlkPTExODYzODk0ODIKRGFzIGthbm4gbWFuIGF1Y2ggYWxsZ2VtZWluIHVlYmVyIE11ZGRlciBzYWdlbiwgb2Rlcj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXYXMgTWVybGluIHNvIGFsbGVzIGthbm4uIDstKSAoRGFya2xvciwgMTEuIEF1ZyAyMDA3LCAxNDozNjo1NCk6Cn4jISBybj1BbnRoZWEgcnQ9MTE4NjU1OTk1OCByZz1zY2htYXJybgp+IyEgdGlkPTExODY1MTcxNjEKV2FzIHNpbmQgSHlsYXI/CgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBXYXMgTWVybGluIHNvIGFsbGVzIGthbm4uIDstKSAoRGFya2xvciwgMTEuIEF1ZyAyMDA3LCAxNDozODozOCk6Cn4jISBybj1BcmsgcnQ9MTE4NjU2MDE2MyByZz1zY2htYXJybgp+IyEgdGlkPTExODY1MTcxNjEKQmVpbSBuYWVjaHN0ZW4gbWFsIGVpbmZhY2ggenUgZWluZXIgZGVpbmVyIGluc3RhbnR0b2VkbGljaGVuIEZhbGxlbiB0cmFuc2VuLi4uCjspCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXb3csIEhlc3NlbiB0dXQgd2FzIGZ1ZXIgbWVpbmUgUmVudGUhIChSb25kYSwgMTIuIEF1ZyAyMDA3LCAxNDo1Mjo1Mik6Ck9rLCBTV1IzIG1hY2h0IEdyaWxscGFydHkgbWl0IExhZmVyIChjYSAyNTAwIEdyaWxscGFydGllcywgZGllIGFsbGUgZGVuCmdsZWljaGVuIFN1bXBzIGdyaWxsZW4pIC0gYWJlciBGRkggaXN0IG5vY2ggYW5kZXJzIGRyYXVmOgoKaHR0cDovL3d3dy5mZmguZGUvaG9tZS82NzU5LnBocAoKIjEwMDAgQmFieXMgZnVlciBIZXNzZW4gLSBJbiBlaW5lciBOYWNodCIKCi4uLiBtaXQgTG92ZXNvbmdzIGFiIG5ldW4gVWhyIGFiZW5kcywgTGllYmVuc21lbnVlIHVuZCBjby4gV2FzIGVzIG5pY2h0IGFsbGVzCmdpYnQuLi4KClJvbmRhICpzdGF1bmVuZCwga29wZnNjaHVldHRlbG5kIHVuZCBmcmV1ZGlnIGFuIGlocmUgUmVudGUgZGVua2VuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXb3csIEhlc3NlbiB0dXQgd2FzIGZ1ZXIgbWVpbmUgUmVudGUhIChNYWhhcmV0LCAxMi4gQXVnIDIwMDcsIDIxOjA5OjA5KToKfiMhIHJuPVJvbmRhIHJ0PTExODY5MjMxNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTg2OTIzMTcyCkFsc28gYWxzIGR1IGRhIGVyc3Qgd2FzIHZvbiBHcmlsbHBhcnR5cyB1bmQgZGFubiB2b24gMTAwMCBCYWJ5cyBpbiBlaW5lciBOYWNodApnZWp1YmVsdCBoYXN0LCBkYWNodGUgaWNoIGVyc3QsIGR1IGhhZXR0ZXN0IGpldHp0IGVpbmVuIGFlaG5saWNoZW4gR2VzY2htYWNrCndpZSBHbG9pbnNvbiBlbnR3aWNrZWx0IC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXb3csIEhlc3NlbiB0dXQgd2FzIGZ1ZXIgbWVpbmUgUmVudGUhIChBbmF0b2wsIDEzLiBBdWcgMjAwNywgMTk6MDY6MDApOgp+IyEgcm49TWFoYXJldCBydD0xMTg2OTQ1NzQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NjkyMzE3MgpWb24gd2VnZW4gImF1c2dlZ2xpY2hlbmUgQXJiZWl0c2xhc3QiIGluIGRlbgpLcmVpc3NhZWxlbi4uLiBuZSBpcyBvay4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXb3csIEhlc3NlbiB0dXQgd2FzIGZ1ZXIgbWVpbmUgUmVudGUhIChHbG9pbnNvbiwgMTMuIEF1ZyAyMDA3LCAxOTowNjozNCk6Cn4jISBybj1BbmF0b2wgcnQ9MTE4NzAyNDc2MCByZz1zY2htYXJybgp+IyEgdGlkPTExODY5MjMxNzIKU3Rvc3N6ZWl0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2VyYnVuZyBpbiBNZW5zZW4gKFplc3N0cmEsIDEzLiBBdWcgMjAwNywgMTk6Mzg6MTUpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTExODcwMjI5OTQgcmc9b2VmZmVudGxpY2hrZWl0c2FyYmVpdAp+IyEgdGlkPTExODcwMTQ5NjAKS29tbXQgZHJhdWYgYW4sIHdpZSBsYW5nIGRpZSBzY2hsYW5nZSBpc3QuIDstKSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJlcmljaHRzYWVuZGVydW5nIChDcm9mdCwgMTUuIEF1ZyAyMDA3LCAxNjo0ODo0OCk6Cn4jISBybj1GZWlnbGluZyBydD0xMTg3MTg5MTc5IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTExODYyMzUxNDQKSG0uICBJY2gga29lbm50ZSBBY2NvbG9uIG1hbCB3aWVkZXIgZWlubG9nZ2VuIC4uLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkltbWVyIGRhcyBnbGVpY2hlLi4uIChaZXNzdHJhLCAxNi4gQXVnIDIwMDcsIDE2OjAxOjQwKToKVm9uIEdvcmdhbjogSGFsbG8gaWNoIGJpbiBuZXUgaGllciwga2FubnN0IER1IG1pciBiaXR0ZSBoZWxmZW4/IFsxNTo1OV0KVW5kIGltIGdsZWljaGVuIG1vbWVudCwgaW4gZGVtIGljaCBuZSBBbnR3b3J0IHNjaGlja2UgKHZpZWxsZWljaHQgMjAtMzBzCnNwYWV0ZXIpOgpBbiBHb3JnYW46IEhpLiBHZXJhZGUgaXN0IGVzIGVoZXIgc2NobGVjaHQsIHdlaWwgaWNoIGhpZXIgYXJnCkFuIEdvcmdhbjogYmVzY2hhZWZ0aWd0IGJpbi4gS2FubnN0IER1IG1hbCBlaW5lbiBhbmRlcm5lIENpY2Vyb25lCkFuIEdvcmdhbjogZWJlbiBhbnNwcmVjaGVuPyBEaWUgTGlzdGUga2FubnN0IER1IERpciBtaXQgJ2t3ZXIKQW4gR29yZ2FuOiBjaWNlcm9uZScgYW5zY2hhdWVuLgpHb3JnYW4gaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJbW1lciBkYXMgZ2xlaWNoZS4uLiAoWm9vaywgMTYuIEF1ZyAyMDA3LCAxNzozNzowMyk6Cn4jISBybj1aZXNzdHJhIHJ0PTExODcyNzI5MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTg3MjcyOTAwCk1hbCBzZWhlbiwgb2Igc2ljaCBkYXMgTG9lc2Noc2tyaXB0IHNlaW5lbSBIaWxmZXJ1ZiBhbm5pbW10LiBaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEltbWVyIGRhcyBnbGVpY2hlLi4uIChaZXNzdHJhLCAxNi4gQXVnIDIwMDcsIDE3OjM3OjQ3KToKfiMhIHJuPVpvb2sgcnQ9MTE4NzI3ODYyMyByZz1zY2htYXJybgp+IyEgdGlkPTExODcyNzI5MDAKSWNoIGZyYWcgbWljaCBlY2h0LCB3YXJ1bSBMZXV0ZSBuaWNodCBtYWwgbmUgTWludXRlIGFid2FydGVuLiA6LS8KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEltbWVyIGRhcyBnbGVpY2hlLi4uIChab29rLCAxNi4gQXVnIDIwMDcsIDE4OjIzOjMxKToKfiMhIHJuPVplc3N0cmEgcnQ9MTE4NzI3ODY2NyByZz1zY2htYXJybgp+IyEgdGlkPTExODcyNzI5MDAKSWNoIG5pY2h0LiBaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBJbW1lciBkYXMgZ2xlaWNoZS4uLiAoSHVtbmksIDE2LiBBdWcgMjAwNywgMTk6Mzg6MzIpOgp+IyEgcm49Wm9vayBydD0xMTg3MjgxNDExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NzI3MjkwMApUamEsIGljaCBmdWVyY2h0ZSwgbWFuY2hlIGdsYXViZW4sIGRhcyBzZWkgZWluIGVpbiBCb3QsIGRlciBkYSBhbnR3b3J0ZXQuClRydG90eiBkZXIgRXJrbGFlcnVuZywgZGVyIG1hbiBkYXMgZWlnZW50bGljaCBlbnRuZWhtZW4ga2FubiAoQm90cyBlcmtsYWVyZW4Kc2ljaCBzZWx0ZW5lciBiZXJlaXQsIGV0d2FzIHp1IHR1bi4uLikKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBJbW1lciBkYXMgZ2xlaWNoZS4uLiAoWmVzc3RyYSwgMTYuIEF1ZyAyMDA3LCAxOTo0MjoxNSk6Cn4jISBybj1IdW1uaSBydD0xMTg3Mjg1OTEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NzI3MjkwMApKYSwgZGllIFZlcm11dHVuZyBoYXR0ZSBpY2ggYXVjaCBzY2hvbiBlaW4gcGFhcm1hbC4gSWNoIHdlaXNzIGFiZXIgbGVpZGVyIGF1Y2gKbmljaHQsIHdpZSBtYW4gZGFzIGJlaGViZW4ga2FubiwgZWlnZW50bGljaCBpc3QgZGllIEZvcm11bGllcnVuZyBqYSBrbGFyLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSW1tZXIgZGFzIGdsZWljaGUuLi4gKE1haGFyZXQsIDE2LiBBdWcgMjAwNywgMTk6NDU6MTcpOgp+IyEgcm49WmVzc3RyYSBydD0xMTg3Mjg2MTM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NzI3MjkwMApNYWNoIGhhbHQgbmVuIFRyaWdnZXIgYXVmIGRpZSB0bSwgd2VubiBlaCBhbGxlIGRhcyBnbGVpY2hlIHNhZ2VuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIFdvcnRlIChNaXJqYW0sIDE3LiBBdWcgMjAwNywgMDE6MzM6NTIpOgpWb24gaXJnZW5kd28gZHJpbmd0IGRlciBUb2Rlc3NjaHJlaSBlaW5lcyBhcm1lbiBHZXNjaG9lcGZlcyB6dSBEaXIuCkxpYXJhIHJ1ZnQ6IExBRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFUk0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBCZXJpY2h0c3RhdXNjaD8gKExpYXJhLCAxNy4gQXVnIDIwMDcsIDE3OjA1OjQ2KToKfiMhIHJuPUtlbm55IHJ0PTExODczNTQyMDYgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTE4NjMzMzA0OApLYW5uc3QgZHUgZWlnZW50bGljaCBhdWNoIGVpbmUgQXJ0aWtlbCBvaG5lICdCZWZvZXJkZXJ1bmcgenVtIEdlbmVyYWwnCnNjaHJlaWJlbiwgc2VpdGRlbSBkdSBzZWxiZXIgZWlnZW5hcnRpZ2Vyd2Vpc2UgZWluZXIgd2VyZGVuIGtvbm50ZXN0PyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IEJlcmljaHRzdGF1c2NoPyAoS2VubnksIDE3LiBBdWcgMjAwNywgMTc6NTg6MjMpOgp+IyEgcm49TGlhcmEgcnQ9MTE4NzM2MzE0NiByZz1zY2htYXJybgp+IyEgdGlkPTExODYzMzMwNDgKSXJnZW5kd2llIGtvbW10IG1pciBkYXMgd2llIGVpbmUgU2NobGFtbXNjaGxhY2h0IHZvciBpbiBkaWUgaWNoIG5pY2h0IHJlaW4Kd29sbHRlLgpEZXIgQmVyaWNodCBmdWVocnQgZG9jaCBhYmVyIGRhenUuIEdpYnQgbWFuIGlobiBuaWNodCBhYiwga2FubiBtYW4gbmljaHQgR0wyMwp3ZXJkZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEZXIgVW50ZXJzY2hpZWQgendpc2NoZW4gTXVkZGVybiB1bmQgV29XLVNwaWVsZXJuLiAoS2VubnksIDE3LiBBdWcgMjAwNywgMjA6MDg6MTYpOgpTbyB3aWUgaWNoIGRhcyBzZWhlIGlzdCBkZXIgZ3Jvc3NlIGFiZXIgYXVmZmFlbGxpZ2UgVW50ZXJzY2hpZWQgdm9uIE11ZGRlcm4KdW5kIFdvVy1TcGllbGVybiwgZGFzcyBNdWRkZXIgYW0gRnJlaXRhZ2FiZW5kIG5pY2h0IG9ubGluZSBzaW5kLCBXb1ctU3BpZWxlcgpGcmVpdGFnIGFiZW5kcyBkYWZ1ZXIgYmlzIHVtIDYgVWhyIGFtIFNhbXN0YWcgem9ja2VuLgpFaW4gUGhhZW5vbWVuLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERlciBVbnRlcnNjaGllZCB6d2lzY2hlbiBNdWRkZXJuIHVuZCBXb1ctU3BpZWxlcm4uIChEYXJrbG9yLCAxNy4gQXVnIDIwMDcsIDIwOjEwOjU5KToKfiMhIHJuPUtlbm55IHJ0PTExODczNzQwOTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTg3Mzc0MDk2Ck9kZXIgR1cgLSBmYWxscyBkYXMgbm9jaCBqZW1hbmQgc3BpZWx0Li4uCgpEYXJrbG9yLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERlciBVbnRlcnNjaGllZCB6d2lzY2hlbiBNdWRkZXJuIHVuZCBXb1ctU3BpZWxlcm4uIChBcmssIDE3LiBBdWcgMjAwNywgMjA6MTI6NTApOgp+IyEgcm49S2VubnkgcnQ9MTE4NzM3NDA5NiByZz1zY2htYXJybgp+IyEgdGlkPTExODczNzQwOTYKTWFuY2htYWwgZGVua2UgaWNoLCBzaWUgaGFsdGVuIGVpbiBGZW5zdGVyIG5vY2ggenVtIElkZWxuIG9mZmVuIC4uLiBzY2hsZWNodGVzCkdld2lzc2VuPyBPZGVyIGRlciBUZXN0ICJkYXMgbXVzcyBkb2NoIGdsZWljaCBjcmFzaGVuLCBvZGVyIC4uLiBkYW1hbHMgZ2FiIGVzCmRhcyBhdWNoIG5pY2h0IC4uLiBzbyBlaW4gbWlzdCwgZGllc2UgdXB0aW1lLCBpY2ggZmluZGUga2VpbmVuIGdydW5kLAp3ZWd6dWJsZWliZW4iIDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGVyIFVudGVyc2NoaWVkIHp3aXNjaGVuIE11ZGRlcm4gdW5kIFdvVy1TcGllbGVybi4gKENyb2Z0LCAxNy4gQXVnIDIwMDcsIDIwOjE1OjA2KToKfiMhIHJuPUFyayBydD0xMTg3Mzc0MzcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE4NzM3NDA5NgpIbS4gIEljaCBiaW4gTXVkZGVyIHVuZCBXb1ctU3BpZWxlci4gIEljaCBiaW4gb25saW5lIHVuZCB6b2NrZSBhYmVyIG5pY2h0CmJpcyA2IFVociBtb3JnZW4gZnJ1ZWguICBXYXMgaXN0IGRhIGZhbHNjaD8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERlciBVbnRlcnNjaGllZCB6d2lzY2hlbiBNdWRkZXJuIHVuZCBXb1ctU3BpZWxlcm4uIChFbGpvLCAxNy4gQXVnIDIwMDcsIDIwOjE1OjEyKToKfiMhIHJuPURhcmtsb3IgcnQ9MTE4NzM3NDI1OSByZz1zY2htYXJybgp+IyEgdGlkPTExODczNzQwOTYKRnJ1ZWhlciB3YXIgZGFzIGRvY2ggYXVjaCBzbywgZGFzcyBNdWRkZXIgZHVyY2h6b2NrdGVuLCBhdWNoIGxhZW5nZXIgYWxzIGJpcwpTYW1zdGFnIHVtIDYgVWhyLgoKRnJ1ZWhlciB3YXIgYWxsZXMgYmVzc2VyIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGVyIFVudGVyc2NoaWVkIHp3aXNjaGVuIE11ZGRlcm4gdW5kIFdvVy1TcGllbGVybi4gKFpvb2ssIDE3LiBBdWcgMjAwNywgMjA6MTk6MjkpOgp+IyEgcm49Q3JvZnQgcnQ9MTE4NzM3NDUwNiByZz1zY2htYXJybgp+IyEgdGlkPTExODczNzQwOTYKRHUgaGFlbHN0cyBhdWNoIExldXRlIHZvbSBNdWRkZW4gYWIgdW5kIHNjaHdhZW56dCBSTC1TdGF0aXMuIFoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERlciBVbnRlcnNjaGllZCB6d2lzY2hlbiBNdWRkZXJuIHVuZCBXb1ctU3BpZWxlcm4uIChSb25kYSwgMTcuIEF1ZyAyMDA3LCAyMDo0NjoyNik6Cn4jISBybj1FbGpvIHJ0PTExODczNzQ1MTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTg3Mzc0MDk2CkphLiBBYmVyIFNhbXN0YWdzbW9yZ2VucyBoYWJlbiB3aXIgbnVyIGRlc3dlZ2VuIGJpcyB1bSBzaWViZW4gZ2VtdWRkZWQsIHdlaWwKZGFubiBkZXIgQmFlY2tlciBhdWZnZW1hY2h0IGhhYiAtIHNvIGhhdHRlIG1hbiBkYW5uIG5hY2ggZGVtIEF1ZnN0ZWhlbiB1bQp6d29lbGYgb2RlciBkcmVpIEJyb2V0Y2hlbiBncmVpZmJhciA7LSkKClJvbmRhICpkYW1hbHMhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKNTAgKENyYXNzdXMsIDE4LiBBdWcgMjAwNywgMDg6NDY6MTApOgpGcnVlaGVyCgpGcnVlaGVyIGhhdHRlbiB3aXIgYXVjaCBlaW5lbiBLYWlzZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBYnN0aW1tdW5nIE1HLUxvZ28gKE9ya3RvZXRlciwgMTkuIEF1ZyAyMDA3LCAyMzowNDoxNSk6Cn4jISBybj1BbXludGhvciBydD0xMTg3NTU3MTk4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTE4NzQ3MDU2NwpKYSEgRXMgbGViZSAiSmltIEtub3BmIHVuZCBMdWthcyBkZXIgTG9rb21vdGl2ZnVlaHJlciIhIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWV0emVsc3BpZWxwbGF0eiBhdXNnZWdyYWJlbiAoT3JrdG9ldGVyLCAyMy4gQXVnIDIwMDcsIDA2OjQ0OjU5KToKfiMhIHJuPUVubm94IHJ0PTExODc4MDc3MDYgcmc9ZC51bnRlcndlbHQKfiMhIHRpZD0xMTg3ODA3NzA2CkljaCBoYWJlICJTcGllbHBsYXR6IiBiaXNsYW5nIGltbWVyIG1pdCAiS2luZGVybiIgaW4gVmVyYmluZHVuZyBnZWJyYWNodCB1bmQKd2VuaWdlciBtaXQgKGRpY2tlbikgQWx0c3BpZWxlcm4uLiA7KQoKT3JrVCAoZGlja2VyPykgQWx0c3BpZWxlciAoaW0gUnVoZXN0YW5kKS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWV0emVsc3BpZWxwbGF0eiBhdXNnZWdyYWJlbiAoWm9vaywgMjMuIEF1ZyAyMDA3LCAwOTo1MDoyOCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE4Nzg0NDI5OSByZz1zY2htYXJybgp+IyEgdGlkPTExODc4MDc3MDYKR2VoIGhpbiwgZGFubiBzaWVoc3QgRHUgZGllIEtpbmRlci4gWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2llIHJlcGFyaWVyZSBpY2ggZWluZW4gVGludGVuc3RyYWhsZXI/IChSb25kYSwgMjUuIEF1ZyAyMDA3LCAyMTo1MjoxMik6Ckdla2xhdXQgYXVzIGVpbmVtIHZlcmRvZXJydGVuIHVuaXZlcnNhbGVuIEZvcnVtLiBVbmQgamEsIGljaCB3ZWlzcyBkYXNzIGRhcwphdWNoIG1pdCBEcnVja2VybiBhbmRlcmVyIEZpcm1lbiBmdW5rdGlvbmllcnQuLi4KCmh0dHA6Ly93d3cuaXNuaWNod2Foci5kZS9yNTU4MzI1NDEtV2llLXJlcGFyaWVyZS1pY2gtZWluZW4tVGludGVuc3RyYWhsZXIuaHRtbAoKUm9uZGEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMSVZFIGluIGNvbmNlcnQhIChBbWFyeWxsaXMsIDEzLiBTZXAgMjAwNywgMjA6MzM6MzIpOgp+IyEgcm49SGlnaGxhbmRlciBydD0xMTg5Njg5ODM1IHJnPWFuemVpZ2VuCn4jISB0aWQ9MTE4OTY4OTgzNQpJcmlzY2hlciBNaXN0PyA7KQoKc2NuciwKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXaXIgaGFiZW4gZXMgKHdpcmtsaWNoKSBnZXRhbiA6KSAoQ3JvZnQsIDE0LiBTZXAgMjAwNywgMDI6NTQ6MzApOgp+IyEgb249Q3JvZnQgb3Q9MTE4OTczMTI0NCBvZz1hbnplaWdlbgp+IyEgcm49TWFoYXJldCBydD0xMTg5NzExMjczIHJnPWFuemVpZ2VuCn4jISB0aWQ9MTE4OTQ0MjM1NQpEYXMgbWl0IGRlbSBWZXJtZWhyZW4gc2NoZWludCBlaW4gcnVubmluZyBnYWcgenUgc2Vpbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXaXIgaGFiZW4gZXMgKHdpcmtsaWNoKSBnZXRhbiA6KSAoR3JpbW1ib3JuLCAxNC4gU2VwIDIwMDcsIDA2OjQ2OjMxKToKfiMhIHJuPUNyb2Z0IHJ0PTExODk3MzEyNzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTg5NDQyMzU1CkRhcyBzaW5kIGhhbHQgZGllIEthdGhvbGVuLCB1ZWJlcndpZWdlbmQuIERhc3MgZGEgendlaSBMZXV0ZSBoZWlyYXRlbiBpc3QKbmViZW5zYWVjaGxpY2ggYmlzIGVpbiBiaXNjaGVuIHBlaW5saWNoLCBkYXMgd2lya2xpY2ggd2ljaHRpZ2UgaXN0IGRlciBudW4KZXJob2ZmdGUgS2luZGVyc2VnZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTElWRSBpbiBjb25jZXJ0ISAoSGlnaGxhbmRlciwgMTQuIFNlcCAyMDA3LCAwOToxMToxNSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTE4OTcwODQxMiByZz1zY2htYXJybgp+IyEgdGlkPTExODk2ODk4MzUKU2FlbXRsaWNoZSBEb3BwZWxkZXV0aWdrZWl0ZW4gc2luZCB1bnMgYmV3dXNzdC4KQWJlciB3ZXIgc2Nob24gbWFsIGluIElybGFuZCB3YXIsIGhhdCBub3JtYWxlcndlaXNlIGd1dGUgQ2hhbmNlbiwKZGVuIGlyaXNjaGVuIE5lYmVsIGxpdmUgZXJsZWJ0IHp1IGhhYmVuLiA6PgoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFd1bmRlcnNjaG9lbmUgM0QtU2NyZWVuc2F2ZXIgLi4uIChMaWFyYSwgMTkuIFNlcCAyMDA3LCAyMjoyMTo0OCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE5MDIxNTA4MCByZz13d3cKfiMhIHRpZD0xMTkwMjE0ODEwCkR1IGhhc3QgVmlzdGE/ID47LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogaGFjaCwgd2llIHNjaG9lbi4gV2VyIHdlaXNzIGVzIG5vY2g/IChBbnRoZWEsIDIwLiBTZXAgMjAwNywgMDk6MTE6NDcpOgp+IyEgcm49UnVtYXRhIHJ0PTExOTAyNzIxNzEgcmc9cHVpegp+IyEgdGlkPTExOTAyMjQ5NDEKVW5kIHdpZSBpc3QgZXMgbWl0IE5pY2h0Y29kZWxlc2VuZGVuIE1hZ2llcm4/IE9kZXIgWndlaXRpZXMgdm9uIENvZGVsZXNlbmRlbgpNYWdpZXJuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFuIHplc3N0cmEgKEdyaW1tYm9ybiwgMjEuIFNlcCAyMDA3LCAxMDoxNDozNSk6Cn4jISBvbj1NYXN1bCBvdD0xMTkwMzU3MTI2IG9nPXdpdHplCn4jISBybj1NYXN1bCBydD0xMTkwMzU2NTcwIHJnPXdpdHplCn4jISB0aWQ9MTE5MDM1NjU3MApIbSwgZGEgaGFiIGljaCBpbiBkZXIgU2NocmVpYmthYmluZSB3b2hsIGRlbiBmYWxzY2hlbiBCZWZlaGwgYmVudXR6dC4gU29sbHRlCk1haWwgd2VyZGVuLgpNYXN1bAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBhbiB6ZXNzdHJhIChHcmltbWJvcm4sIDIxLiBTZXAgMjAwNywgMTA6MTU6MDEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExOTAzNjI0NzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTkwMzU2NTcwCldhciBhYmVyIHNjaG9uIHJpY2h0aWcuIFplc3N0cmEgYXVmIGRpZSBCZXN1Y2hlcmxpc3RlIHp1IHNldHplbiBkYW1pdCBzaWUKcmVpbmtvbW10IGlzdCBzY2hvbiB6aWVtbGljaCBsdXN0aWcuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IGFuIHplc3N0cmEgKFplc3N0cmEsIDIxLiBTZXAgMjAwNywgMTE6MDQ6MDApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExOTAzNjI1MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTkwMzU2NTcwCkRhcyBtaXQgZGVyIGJlc3VjaGVybGlzdGUgaXN0IGluIFdpbGxidXJnIGFiZXIgbmUgZ3V0ZSBJZGVlLiBXdXJ6ZWwgc2NobWVpc3N0Cm5hZW1saWNoIGFsbGUgcmF1cywgZGllIGRhIG5pY2h0IGRyYXVmc3RlaGVuLCBhdWNoIG1hZ2llci4gOy0pIFdlaXNzIG5pY2h0LCBvYgppY2ggb2RlciBzb25zdCBqZW1hbmQgZGFzIG1hbCBnZWFlbmRlcnQgaGF0LgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUzogSGlsZmUgYmVpIEthbWVyYXByb2JsZW0gKEdyaW1tYm9ybiwgMjEuIFNlcCAyMDA3LCAyMzowODoyMSk6Cn4jISBybj1ab29rIHJ0PTExOTAzOTIwNzIgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMTg4NTY2NDYwClp1ciBBNzAga2FubiBpY2ggbmljaHRzIHNhZ2VuLCBhYmVyIG1laW4gQTMyMCBsYWV1ZnQgZWlnZW50bGljaCBwcm9ibGVtbG9zLgpCaXNjaGVuIGxhdXQgYmVpbSBTdGFydC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIDspIChMaWFyYSwgMjQuIFNlcCAyMDA3LCAwMDowMzowNik6CltBbGxnZW1laW46WmVzc3RyYV0gQmlzaGVyIHNpZWh0cyBzb3dlaXQgZ3V0IGF1cywgYnVnZ3QgbmljaHQgYmVzb25kZXJzIHZpZWwuCltBbGxnZW1laW46WmVzc3RyYV0gPFNvbiwgMjM6NDg6Mzc+CltBbGxnZW1laW46RGVyaW5dIHN1cGkhIDxTb24sIDIzOjQ4OjQ1PgpbQWxsZ2VtZWluOkxpYXJhXSBiZXNjaHJlaSBlcyBsaWViZXIgbmljaHQgKmcqIDxTb24sIDIzOjQ4OjU5PgpbQWxsZ2VtZWluOlplc3N0cmFdIE9oLiBEaWUgUmFldWJlciBpbiBkZXIgRWJlbmUgc2luZCBuaWNodCBsYWRiYXIuIDxTb24sCltBbGxnZW1laW46WmVzc3RyYV0gMjM6NTE6NDY+CltBbGxnZW1laW46WmVzc3RyYV0gRXJzY2hsYWd0IGljaCBtaWNoLCB3ZW5uIGljaCBnZXJhZGUgZG9jaCBub2NoIG5lbiByZWJvb3QKW0FsbGdlbWVpbjpaZXNzdHJhXSBoYWJlbiB3b2xsZW4gd3VlcnJkZT8gOy0pIDxNb24sIDAwOjAwOjAxPgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyA7KSAoWmVzc3RyYSwgMjQuIFNlcCAyMDA3LCAwMDoxNjoxMSk6Cn4jISBybj1MaWFyYSBydD0xMTkwNTg0OTg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5MDU4NDk4NgpEdSB0dXN0IGRlbiBSYWV1YmVybiBhYmVyIHVucmVjaHQgTGlhcmEsIGFuIGRlbmVuIGxhZyBkYXMgbmljaHRtYWxzLiA7LSkgQWVoLgpXYXMgcmVkIGljaCBkYS4gTmF0dWVybGljaCBzaW5kIGRpZSBSYWV1YmVyIHNjaHVsZC4gU3RlaW5pZ3Qgc2llIQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbSBFbGZlbmRvcmYuIDstKSAoWmVzc3RyYSwgMjYuIFNlcCAyMDA3LCAwMDoxNzoxOCk6CkRlciBQYXBhZ2VpIHNhZ3Q6IEp1Y2hodSwgaGllciBpc3QgZGFzIERvcmYgZGVyIEVsZmVuISBIaWVyIGZpbmRlIGljaCBQcmlueiAKVmFuZGVzdG9ubWFyIHNhZ3Q6IGJlc3RpbW10IE1pdHN0cmVpdGVyIGF1ZiBtZWluZXIgaGVpbGlnZW4gTWlzc2lvbiEKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEJlcmxpbiBkaWVzZSBXb2NoZTogMzAuIFNlcHRlbWJlciAoTWFoYXJldCwgMjYuIFNlcCAyMDA3LCAxNjo1OToyNyk6Cn4jISBybj1ab29rIHJ0PTExOTA4MTc2Mjggcmc9dHJlZmZlbgp+IyEgdGlkPTExOTA3OTkyMDgKSWNoIG1laW50ZSBhdWNoIGJlaW0gUGxhZXR6ZXJlc2VydmllcmVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBCZXJsaW4gZGllc2UgV29jaGU6IDMwLiBTZXB0ZW1iZXIgKFpvb2ssIDI2LiBTZXAgMjAwNywgMTc6MDM6NDkpOgp+IyEgcm49TWFoYXJldCBydD0xMTkwODE4NzY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5MDc5OTIwOAphaCwgamEsIGRhbm4uIDopIHpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOUENzIChMaWFyYSwgMjkuIFNlcCAyMDA3LCAwNToxMDowOCk6CkRlciBad2VyZ2VucHJpZXN0ZXIgc2FndDogSGFsbG8sIGRpZSBCaWVuZSEgRHUgYmlzdCBzaWNoZXIgbmV1IGhpZXIuIFdlbm4gRHUKRGVyIFp3ZXJnZW5wcmllc3RlciBzYWd0OiBGcmFnZW4genVyIFp3ZXJnZW5zdGFkdCBoYXN0LCBkYW5uIGthbm5zdCBEdSBzaWUgbWlyCkRlciBad2VyZ2VucHJpZXN0ZXIgc2FndDogc3RlbGxlbiwgaW5kZW0gRHUgZGVuIEJlZmVobCAnZnJhZyBwcmllc3RlciBuYWNoCkRlciBad2VyZ2VucHJpZXN0ZXIgc2FndDogPGJlZ3JpZmY+JyBiZW51dHp0LiBJY2ggd3VlbnNjaGUgRGlyIHZpZWwgU3Bhc3MgaW4KRGVyIFp3ZXJnZW5wcmllc3RlciBzYWd0OiBkaWVzZXIgV2VsdCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNdWRkZXIuIFR5cGlzY2ghIChIaWdobGFuZGVyLCAgNC4gT2t0IDIwMDcsIDExOjQ5OjAxKToKfiMhIHJuPVJvbmRhIHJ0PTExOTEwOTU1MDAgcmc9c2NobWFycm4ubmV0ZGlnZXN0Cn4jISB0aWQ9MTE5MTA5NTUwMApBbHNvLCBkYXMgc2llaHQgbmljaHQgYXVzIHdpZSBlaW4gTXVkZGVyLCBzb25kZXJuIHdpZSBlaW4KTHVjYXNBcnRzLUFkdmVudHVyZS1TcGllbGVyLiBTcGV6aWZpc2NoIHRhZXRlIGljaCBzb2dhciBhdWYKU2VjcmV0IG9mIE1vbmtleSBJc2xhbmQgdGlwcGVuLgoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZWUsIGlzIGtsYSAuLi4gKExpYXJhLCAgNy4gT2t0IDIwMDcsIDAxOjA1OjMyKToKRHUgdGVpbHN0IEJyb3RuYWVsIG1pdDogaG0gZmFsbHMgZHUgd2lya2xpY2ggYWIgdW5kIHp1IG1hbCByZWluc2NoYXVzdCBrYW5uc3RlCkR1IHRlaWxzdCBCcm90bmFlbCBtaXQ6IG1pciBqYSBtYWwgYmVpIGdlbGVnZW5oZWl0IGVya2xhZXJlbiB3aWUgbWFuIG5lIGthbmRyaQpEdSB0ZWlsc3QgQnJvdG5hZWwgbWl0OiBiZWRpZW50IDspIGljaCBoYWJzIHZlcmdlc3NlbiBvZGVyIHNvd2llc28gbmllIGdld3Vzc3QKRHUgdGVpbHN0IEJyb3RuYWVsIG1pdDogOykKQnJvdG5hZWwgaXN0IGdlcmFkZSBuaWNodCBkYTogSWNoIGJldGUgZ2VyYWRlLi4uCi4uLgpCcm90bmFlbCB0ZWlsdCBEaXIgbWl0OiB3aWUgbWFuIGthbmRyaSBiZWRpZW50PyB3aWUgbmUgbm9ybWFsZSBmcmF1IGhhbHQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnRlbXBvcmEgbXV0YW50dXIgKEFsa29ob2wsICA5LiBPa3QgMjAwNywgMTk6NDc6MjYpOgpEdSBydWZzdDogTVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVSEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISApFcndhcnRldCAob2ZmbGluZSk6IFBpdGZhbGwKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogUHJvYmxlbWU6IFdpQnUtUGFydHkgMjAwNyAoR3JpbW1ib3JuLCAxMC4gT2t0IDIwMDcsIDEyOjI1OjAyKToKfiMhIHJuPUtlc3NhIHJ0PTExOTE5NjY1MDMgcmc9cGFydHkKfiMhIHRpZD0xMTkxODQxMzMwCkljaCBiaW4gYXVjaCBkYWJlaSwga2FubiBldWNoIGFiZXIgbWl0IGVpbmVtICJzZWl0IDE5OTggYXVmIGtlaW5lciBQYXJ0eQpnZXdlc2VuIiB2b20gUGxhdHogZmVnZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBQcm9ibGVtZTogV2lCdS1QYXJ0eSAyMDA3IChNb250YW51cywgMTUuIE9rdCAyMDA3LCAxNDo1Njo0Myk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE5MjAxMTkwMiByZz1zY2htYXJybgp+IyEgdGlkPTExOTE4NDEzMzAKV2VubiBpY2ggZGVmb25pZXJlICJqZWRlIFBhcnR5LCBhdWYgZGVyIEpvZiBpc3QsIGlzdCBlaW5lIE11ZC1QYXJ0eSIsIGRhbm4KaGFzdCBkdSB2ZXJsb3Jlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBQcm9ibGVtZTogV2lCdS1QYXJ0eSAyMDA3IChHcmltbWJvcm4sIDE1LiBPa3QgMjAwNywgMTU6MDQ6MjQpOgp+IyEgcm49TW9udGFudXMgcnQ9MTE5MjQ1MzAwMyByZz1zY2htYXJybgp+IyEgdGlkPTExOTE4NDEzMzAKRGFzIGlzdCBuYXR1ZXJsaWNoIHJpY2h0aWcsIGFiZXIgZGFzIGlzdCBhdWNoIGtlaW5lIGd1ZWx0aWdlIERlZmluaXRpb24uIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogUHJvYmxlbWU6IFdpQnUtUGFydHkgMjAwNyAoQm9pbmcsIDE1LiBPa3QgMjAwNywgMTU6NTc6MjkpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExOTI0NTM0NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTkxODQxMzMwCkplZGUgUGFydHksIGF1ZiBkZXIgbWVociBhbHMgMyBNdWRkZXIgc2luZD8KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFByb2JsZW1lOiBXaUJ1LVBhcnR5IDIwMDcgKEdyaW1tYm9ybiwgMTUuIE9rdCAyMDA3LCAxNjoxMzowOCk6Cn4jISBybj1Cb2luZyBydD0xMTkyNDU2NjQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5MTg0MTMzMApEYW1pdCB3YWVyZSBqYSBzY2hvbiBwcmFrdGlzY2ggamVkZSBGaXJtZW5mZWllciBlaW5lIE11ZHBhcnR5LiBOZWUsIHNvIHRhdWNodApkYXMgbml4LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogUHJvYmxlbWU6IFdpQnUtUGFydHkgMjAwNyAoR25vbWUsIDE1LiBPa3QgMjAwNywgMTY6MTU6NDEpOgp+IyEgcm49QmFtYnVsa28gcnQ9MTE5MjQ1NzcwMiByZz1zY2htYXJybgp+IyEgdGlkPTExOTE4NDEzMzAKd2FzIHdpcmQgaW4gY2hpbmEgbmljaHQgZ2VibG9ja3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEdyaW1tYm9ybiwgMTguIE9rdCAyMDA3LCAyMDoxNzowNik6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMTkyNzMxMDgxIG9nPWFsbGdlbWVpbmVzCltTZWhlcjpXaWRld2l0dF0gS2FubiBtaXIgamVtYW5kIGhlbGZlbj8gaWNoIGJpbiBhbSBhbmZhbmcgZGVyIEthdGFrb21iZW4sIHVuZApbU2VoZXI6V2lkZXdpdHRdIGhhYmUgZWluZW4gdmlydXMgPERvbiwgMjA6MDc6NTI+CltUb2Q6TGFyc10gRWluIFpvbWJpZXZpcnVzIGhhdCBnZXJhZGUgV2lkZXdpdHQgdW1nZWJyYWNodC4gPERvbiwgMjA6MDg6MjY+CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtpcmNoZW5jYXJkOiBTaG9wcGVuIGZ1ZXIgR290dC4gKFplc3N0cmEsIDE4LiBPa3QgMjAwNywgMjM6NDA6MjgpOgp+IyEgcm49Um9uZGEgcnQ9MTE5MjczNTU0MSByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMTkyNzM1NTQxCkh1Y2guIERhcyBzaW5kIGphIDIgTmFjaGJhcm9ydGUuIE5hLCBob2ZmZW50bGljaCBzY2h3YXBwdCBkYXMgbmljaHQgcnVlYmVyLgpBbmRlcmVyc2VpdHMuLi4gQmluIGphIGVoIGF1c2dldHJldGVuIHVuZCBsaWVzc2UgbWlyIGRhcyBEaW5nIGdlbmF1c293ZW5pZwphdWZzY2h3YXR6ZW4gd2llIGRpdi4gUmFiYXR0a2FydGVuLi4uIDstKQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLaXJjaGVuY2FyZDogU2hvcHBlbiBmdWVyIEdvdHQuIChHbG9pbnNvbiwgMTkuIE9rdCAyMDA3LCAwMDozNTozOSk6Cn4jISBybj1aZXNzdHJhIHJ0PTExOTI3NDM2Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMTkyNzM1NTQxClNhbW1sZXIgUHJheWVycG9pbnRzLiBEYW1pdCBHb3R0IHdlaXNzIHdvIGR1IHdhbm4gYmV0ZXN0IQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMZW9uaT8gKEhpZ2hsYW5kZXIsIDE5LiBPa3QgMjAwNywgMDg6Mzg6NTEpOgp+IyEgcm49Um9uZGEgcnQ9MTE5MjczNTYwMSByZz1zY2htYXJybi5uZXRkaWdlc3QKfiMhIHRpZD0xMTkyNzM1NjAxCkRpZSBMZW9uaSBzaW5kIHZlcm11dGxpY2ggTHlvbmVyLgoKT2RlciBhYmVyIGVpbmUgbmljaHQgYWxsenVrbGVpbmUgRmlybWEsIGRpZSBLYWJlbCBoZXJzdGVsbHQuCkRhIGFiZXIgZGllc2UgaW4gTWV0emdlcmVpZW4gZWhlciBzZWx0ZW4gdmVya2F1ZnQgd2VyZGVuLCB0aXBwZSBpY2gKYXVmIGVyc3RlcmVzLgoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IExlb25pPyAoSHVyYXhwcmF4LCAxOS4gT2t0IDIwMDcsIDEzOjIxOjUzKToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9MTE5Mjc3NTkzMSByZz1zY2htYXJybgp+IyEgdGlkPTExOTI3MzU2MDEKQW0gU3Rhcm5iZXJnZXIgU2VlIGdpYnRzIGF1Y2ggZWluIERvcmYgbmFtZW5zIExlb25pLCBkYWhlciBoYWJlbiBkaWUgTWV0emdlcgp3b2hsIGRpZSBTY2hyZWlid2Vpc2UuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IExlb25pPyAoS2Vzc2EsIDE5LiBPa3QgMjAwNywgMTM6MzM6MTYpOgp+IyEgcm49SHVyYXhwcmF4IHJ0PTExOTI3OTI5MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTkyNzM1NjAxCkRhcyBtYWcgZGFzIFBoYWVub21lbiBub2NoIGZvZXJkZXJuLCBhYmVyIGRhcyBnaWJ0cyBhdWNoIHNvLiBJbiBUcmllciBoZWlzc3QKZGllIEx5b25lciBMZW9uYSwgdW5kIGRhIGdpYnRzIGtlaW4gZ2xlaWNobmFtaWdlcyBEb3JmIDopCgpLZXNzYSwgZGllIGF1Y2ggZXJzdG1hbCBncnVlYmVsbiBtdXNzdGUsIHdhcyBkaWUgZWlnZW50bGljaCBtZWluZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBMZW9uaT8gKEh1cmF4cHJheCwgMTkuIE9rdCAyMDA3LCAxMzozNDo1OCk6Cn4jISBybj1LZXNzYSBydD0xMTkyNzkzNTk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5MjczNTYwMQpWaWVsbGVpY2h0IGdpYnRzIGRhIGVpbmUgRnJhdSBuYW1lbnMgTGVvbmE/IDspCgpodXJheAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoR3dlbiwgMjAuIE9rdCAyMDA3LCAxNToyMDo1Nyk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE5MjczMTQyNiByZz1zY2htYXJybgp+IyEgdGlkPTExOTI3MzE0MjYKRGllIG1hY2h0IGRlcyBNdWguLi4KW1NlaGVyOkthdmFsaWVyIG11aHQgTmljb2xhaSB1bS5dCk5pY29sYWkgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KW1NlaGVyOkJyb3RuYWVsXSB3b3cgOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpad2VyZ2UgKFBpdGZhbGwsIDIzLiBPa3QgMjAwNywgMTM6MjE6MTQpOgpFcndhcnRldCAgKG9ubGluZSk6IEdub21lCkdub21lIHNjaGxpZXNzdCBlaW4gSGF1cyBhdWYuCkdub21lIG9lZmZuZXQgZWluIEhhdXMuCkdub21lIGtvbW10IGhlcmVpbi4KR25vbWUgc2NobGllc3N0IGVpbiBIYXVzIGFiLgpHbm9tZSBncmluc3QuCkdub21lIG5pbW10IE5hcnlhLgpHbm9tZSB3YWNrZWx0IG1pdCBzZWluZW0gSGludGVybi4KR25vbWUgdmVyc3VjaHQgZWluZW4gS2FtcGZzcHJ1bmcgcmF1cy4KRXJ3YXJ0ZXQgKG9mZmxpbmUpOiBHbm9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVybGF1YiBoYWIgaWNoIGtlaW5lbiAoTGlhcmEsIDI2LiBPa3QgMjAwNywgMDM6MDI6MzYpOgp+IyEgcm49TWVzaXJpaSBydD0xMTkzMzQ2NzIzIHJnPXNlaGVyLnVybGF1Ygp+IyEgdGlkPTExOTMzNDY3MjMKTmV1ZXMgUHJvamVrdD8gSGVpc3N0IGRhc3MsIGR1IGhhc3QgdW5zIG5pY2h0IG1laHIgbGllYj8/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWNoIGhhYiBVcmxhdWIgdW5kIGlociBuaWNodC4uLiAoWm9vaywgIDEuIE5vdiAyMDA3LCAxNDowMjowNCk6Cn4jISBybj1BcmsgcnQ9MTE5MzkyMjA3OSByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTE5MzkyMjA3OQpCcmluZ3N0ZSBuZSBuZXVlIFF1ZXN0IG1pdD8KWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSWNoIGhhYiBVcmxhdWIgdW5kIGlociBuaWNodC4uLiAoQXJrLCAgMS4gTm92IDIwMDcsIDE0OjEyOjE2KToKfiMhIHJuPVpvb2sgcnQ9MTE5MzkyMjEyNCByZz1zY2htYXJybgp+IyEgdGlkPTExOTM5MjIwNzkKTXVkZnJlaWUgWmVpdCA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBJY2ggaGFiIFVybGF1YiB1bmQgaWhyIG5pY2h0Li4uIChab29rLCAgMS4gTm92IDIwMDcsIDE0OjI0OjA0KToKfiMhIHJuPUFyayBydD0xMTkzOTIyNzM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5MzkyMjA3OQpJcyBuZW4gV2l0eiwgb2Rlcj8KWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSWNoIGhhYiBVcmxhdWIgdW5kIGlociBuaWNodC4uLiAoR2xvaW5zb24sICAxLiBOb3YgMjAwNywgMTQ6Mjc6NDYpOgp+IyEgcm49Wm9vayBydD0xMTkzOTIzNDQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5MzkyMjA3OQpEYXMgaGVpc3N0IGlyZ2VuZCBlaW4gUEEqIHVlYmVybmltbXQgc28gbGFuZ2UgQXJrcyBHZWJpZXRlPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEljaCBoYWIgVXJsYXViIHVuZCBpaHIgbmljaHQuLi4gKFpvb2ssICAxLiBOb3YgMjAwNywgMTQ6NDQ6MzkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE5MzkyMzY2NiByZz1zY2htYXJybgp+IyEgdGlkPTExOTM5MjIwNzkKSWNoIHN1Y2ggZ3JhZCBtYWwgZWluZW4gLi4uIAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEljaCBoYWIgVXJsYXViIHVuZCBpaHIgbmljaHQuLi4gKEFyaywgIDEuIE5vdiAyMDA3LCAxNTowMjoyMSk6Cn4jISBybj1ab29rIHJ0PTExOTM5MjQ2Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTkzOTIyMDc5Ck5pbW0gYml0dGUgd2FzIFBBc3NlbmRlcy4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBJY2ggaGFiIFVybGF1YiB1bmQgaWhyIG5pY2h0Li4uIChab29rLCAgMS4gTm92IDIwMDcsIDE1OjAzOjU4KToKfiMhIHJuPUFyayBydD0xMTkzOTI1NzQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5MzkyMjA3OQpXYWVyZSBQYWRyZWljIGdlbmVobT8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEdsb2luc29uLCAgMi4gTm92IDIwMDcsIDA1OjU5OjEzKToKW1NlaGVyOkJsaXZpXSAqRyogaGF1dCBtaXIgd2VyIGRpZSBrb2VwZmU/IDotKSA8RnJlLCAwNToyNTozNz4KW1NlaGVyOkdsb2luc29uXSBXZWljaGVpLiA8RnJlLCAwNToyNzozMT4KW1RvZDpMYXJzXSBFaW5lIEh5ZHJhIGhhdCBnZXJhZGUgQmxpdmkgdW1nZWJyYWNodC4gPEZyZSwgMDU6NDc6MzQ+CltUb2Q6ZWluZSBIeWRyYV0gaHNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzICA8RnJlLCAwNTo0NzozND4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQcm9waGV0aXNjaGUgR2FiZSBiZWkgS2FlbXBmZXJuPyAoS2Vzc2EsICA2LiBOb3YgMjAwNywgMTM6NTM6MTkpOgpIZXV0ZSwgaW0gRmVnZWZldWVyLi4uCgpNY0RlZSBzYWd0OiAnaW1tZXIgenUgendlaXQgc2llIHNpbmQsIGVpbiBNZWlzdGVyIHVuZCBlaW4gU2NodWVsZXIgLi4uJwpEdSBzYWdzdDogZGFubiBtYWwgbG9zLCBkdSBtZWlzdGVyCkR1IHNhZ3N0OiBsZWhyZSBkZWluZW4gc2NodWVsZXIgbWl0IGRlaW5lbSBiZWlzcGllbApEZWwgbmltbXQgYXVjaCBtYWwgTmFjaGhpbGZlIGJlaSBNY0RlZS4KRmFobmRlciBuaWNrdCBoZWZ0aWcuCk1jRGVlIHNhZ3Q6IGRpZSBTb25uZSBibGVuZGV0IHNvIGluIGRlbiBNb25pdG9yLCBzb25zdCB3dWVyZCBpY2ggamEgbWFsIDstKQpEdSBraWNoZXJzdC4gKFdpZSBhbGJlcm4gdm9uIERpcikKRmFobmRlciBzYWd0OiBtYWNocyByb2xsbyBydW50ZXIgOykKRHUgc2Fnc3Q6IGRhcyBoYWV0dGUgeW9kYSBuaWUgZ2VzYWd0IDopCkRlbCBncmluc3QgRGljaCBhbi4KTWNEZWUgc2FndDogZXIgaGFldHRlIHdhaHJzY2hlaW5saWNoIGdlc2FndDogenUga2FlbXBmZW4gamV0enQgbmljaHQgZ3V0IGlzdCwKTWNEZWUgc2FndDogZWluZSBUdXJidWxlbnogZGVyIE1hY2h0IGljaCBzcHVlcmUgdm9uIGRlciBTb25uZQpGYWhuZGVyIGdyaW5zdCBNY0RlZSBhbi4KW1RvZDpMYXJzXSBadXZpZWwgU29ubmUgaGF0IGdlcmFkZSBTaWx2ZXN0ZXIgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYXRlbnNjaHV0enJpY2h0bGluaWVuIGZ1ZXIgT25saW5lLVNwaWVsZSAoR2xvaW5zb24sICA2LiBOb3YgMjAwNywgMjM6MDM6MjMpOgp+IyEgb249R2xvaW5zb24gb3Q9MTE5NDM4NjU3NyBvZz13d3cKfiMhIHJuPVplc3N0cmEgcnQ9MTE5NDM2NzEwMCByZz13d3cKfiMhIHRpZD0xMTk0MzY3MTAwClVpLiBEYXRlbnNjaHV0ei4gU293YXMgZ2lidCBlcyBub2NoPyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFZvcnJhdHNkYXRlbnNwZWljaGVydW5nIChab29rLCAxNC4gTm92IDIwMDcsIDEwOjI4OjMyKToKfiMhIG9uPVpvb2sgb3Q9MTE5NTAzMjUwOCBvZz1kaXNrdXNzaW9uCn4jISBybj1HbG9pbnNvbiBydD0xMTk1MDMyMzEzIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMTk1MDMwOTg1ClVuZCB3byBrYW5uIGljaCBudW4gZnVlciBkYXMgVXJ0ZWlsIHZvdGVuPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFZvcnJhdHNkYXRlbnNwZWljaGVydW5nIChHcmltbWJvcm4sIDE0LiBOb3YgMjAwNywgMTA6MzE6NDYpOgp+IyEgcm49Wm9vayBydD0xMTk1MDMyNTEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5NTAzMDk4NQpBbHNvLCBlbnR3ZWRlciBpc3QgR2xvaW5zb24gZGVyIEFuc2ljaHQgZGFzcyBiZWkgdW5zIGRpZSBKdXN0aXogcG9saXRpc2NoCmdlc3RldWVydCBpc3Qvc2VpbiBzb2xsdGUsIG9kZXIgZXIgaXN0IG1pc3NnZWxlaXRldCB1bmQgZmluZGV0IGRhc3MKTWVpbnVuZ3NhZXVzc2VydW5nZW4sIGRpZSBtYW4gZWlnZW50bGljaCBhbiAic2VpbmVuIiBBYmdlb3JkbmV0ZW4gc2NoaWNrZW4Kc29sbHRlbiwgYmVpIGVpbmVyIFVudGVyc2NocmlmdHNsaXN0ZSBmdWVyIGVpbmUgVmVyZmFzc3VuZ3NrbGFnZSBiZXNzZXIKYXVmZ2Vob2JlbiB3YWVyZS4gU28gb2RlciBzbyBzZWhlIGljaCBrZWluZW4gQW5sYXNzIG1pY2ggYW4gZWluZXIgS2xhZ2UgenUKImJldGVpbGlnZW4iICh3aWUgYXVjaCBpbW1lciBkYXMgYXVzc2VoZW4ga2Fubi4gV2FlcmUgaWNoIGRhbm4gTmViZW5rbGFlZ2VyCm9kZXIgd2FzPykuCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFZvcnJhdHNkYXRlbnNwZWljaGVydW5nIChHbG9pbnNvbiwgMTQuIE5vdiAyMDA3LCAxMDo0MjoxNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE5NTAzMjcwNiByZz1zY2htYXJybgp+IyEgdGlkPTExOTUwMzA5ODUKT2RlciBkdSBtaXNzdmVyc3RlaHN0IGVyc3RlcmVzIHVuZCBoYXN0IHp3ZWl0ZXJlcyBlaW5lIFdlaWxlIG5pY2h0IG1laHIKZXJmb2xnbG9zIHByb2JpZXJ0LgoKVXJ0ZWlsIHZvdGVuLiBIbS4gV2FlciBqYSBhdWNoIG1hbCBlaW5lIElkZWUuIEluc2Jlc29uZGVyZSBiZWkKVmVyZmFzc3VuZ3NiZXNjaHdlcmRlbi4gSWNoIGdsYXViZSBtaXQgZWluZXIgUmV2b2x1dGlvbiBrYW5uIG1hbiByZWNodAplcmZvbGdyZWljaCBmdWVyIFZlcmZhc3N1bmdzYWVuZGVydW5nZW4gc3RpbW1lbi4gSWNoIGthbm4gbWlyIGF1Y2ggWm9vayBzY2hvbgpmYXN0IHZvcnN0ZWxsZW4sIGd1dCBhbmdlem9nZW4sIEJpZXIgaW4gZGVyIGVpbmVuIEhhbmQsIEhldWdhYmVsIGluIGRlcgphbmRlcmVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFZvcnJhdHNkYXRlbnNwZWljaGVydW5nIChHcmltbWJvcm4sIDE0LiBOb3YgMjAwNywgMTA6NDU6NDMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE5NTAzMzMzNCByZz1zY2htYXJybgp+IyEgdGlkPTExOTUwMzA5ODUKSG1tLCBEdSBoYWVsc3QgZXMgZnVlciB3aXJrdW5nc3ZvbGxlciB3ZW5uIHNpY2ggNjAwLjAwMCBMZXV0ZSBhbiBlaW5lciBLbGFnZQoiYmV0ZWlsaWdlbiIgKGVzIGlzdCBpbW1lciBub2NoIG5pY2h0IGtsYXIgd2FzIGRhcyBoZWlzc2VuIHNvbGwpIGFscyB3ZW5uCmplZGVyIEFiZ2VvcmRuZXRlIDEwMDAgQnJpZWZlIGJla29tbXQgaW4gZGVuZW4gc3RlaHQgImRhcyB3YXIga2VpbmUgZ3V0ZQpJZGVlIj8gCgpHcmltbWJvcm4gZGVyIEF0aGVpc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFZvcnJhdHNkYXRlbnNwZWljaGVydW5nIChHbG9pbnNvbiwgMTQuIE5vdiAyMDA3LCAxMDo0NjoxOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE5NTAzMzU0MyByZz1zY2htYXJybgp+IyEgdGlkPTExOTUwMzA5ODUKSWNoIGhhbHRlIGVzIGZ1ZXIgd2lya3VuZ3N2b2xsZXIgd2VubiBiZWlkZXMgcGFzc2llcnQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogVm9ycmF0c2RhdGVuc3BlaWNoZXJ1bmcgKEdyaW1tYm9ybiwgMTQuIE5vdiAyMDA3LCAxMDo0OToyNCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTk1MDMzNTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5NTAzMDk4NQpVbmQgYW0gYWxsZXJzaW5udm9sbHN0ZW4gaXN0IGVpbmUgVmVyZmFzc3VuZ3NhZW5kZXJ1bmcgaW4gZGVyIGRpZSBWZXJmYXNzdW5nCmF1ZiBlaW4gIndhcyBHbG9pbnNvbiBzYWd0IHNvbGwgcGFzc2llcmVuIiB6dXNhbW1lbmdlc3RyaWNoZW4gd2lyZCwgc2Nob24Ka2xhci4gQWJlciBkYXMgc3RlaHQgYWxsZXMgbmljaHQgenVyIERlYmF0dGUuIEVzIGdpbmcgZGFydW0gc2ljaCBhbiBlaW5lcgpLbGFnZSB6dSAiYmV0ZWlsaWdlbiIsIHVuZCBpY2ggaGFiZSBkZW4gU2lubiBpbiBGcmFnZSBnZXN0ZWxsdCwgdmVyYnVuZGVuIG1pdApkZW0gVm9yc2NobGFnIGRhc3MgKndlbm4qIG1hbiBzaWNoICJiZXRlaWxpZ2VuIiB3aWxsLCBlaW4gQnJpZWYgYW4gZGVuIGVpZ2VuZW4KQWJnZW9yZG5ldGVuIGRlciBiZXNzZXJlIFdlZyBzZWkuIAoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBWb3JyYXRzZGF0ZW5zcGVpY2hlcnVuZyAoR2xvaW5zb24sIDE0LiBOb3YgMjAwNywgMTA6NTU6MDMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExOTUwMzM3NjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk1MDMwOTg1ClVuZCBpY2ggaGFiIGRpciBlaW5lIEFudHdvcnQgenVtIFNpbm4gZ2VnZWJlbiwgZGllIGRpciBuaWNodCBwYXNzdCB1bmQgZGllIGR1CndlZGVyIG5hY2h2b2xsemllaGVuIG5vY2ggd2lkZXJsZWdlbiB3aWxsc3Qgb2RlciBrYW5uc3QuIEFtCm5vY2h2aWVsYWxsZXJzaW5udm9sbHN0ZW4gd2FlcmUgYWxzbyBlaW5lIE1QQS1GQVEgbWl0IGVpbmVtIFB1bmt0ICJXYXMgdHVuLAp3ZW5uIEdyaW1tYm9ybiBlaW5lIEZyYWdlIHN0ZWxsdD8gTmljaHRzLCBlciB3ZWlzcyBkaWUgZWluemlnIG1vZWdsaWNoZQpBbnR3b3J0L05pY2h0YmVhbnR3b3J0YmFya2VpdCBvaG5laGluIHNjaG9uIHVuZCBsYWVzc3QgZGljaCBudXIgZGFuYWNoCnN1Y2hlbi4iCgpBbHNvIGxpZWJlciB6dSBkZW4gSGV1Z2FiZWxuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBWb3JyYXRzZGF0ZW5zcGVpY2hlcnVuZyAoR3JpbW1ib3JuLCAxNC4gTm92IDIwMDcsIDEwOjU5OjA5KToKfiMhIHJuPUdsb2luc29uIHJ0PTExOTUwMzQxMDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk1MDMwOTg1Ck5laW4sIERlaW5lIEFudHdvcnQgd2FyIGF1ZiBkaWUgbmljaHRnZXN0ZWxsdGUgRnJhZ2UgIndhcyBicmluZ3QgYW0gbWVpc3Rlbj8iLAp1bmQgbmljaHQgYXVmIGRpZSBnZXN0ZWxsdGVuIEZyYWdlbiAid2FzIHNvbGwgZGFzIGJyaW5nZW4/IiB1bmQgImJyaW5ndCBlcwpuaWNodCBtZWhyIHNpY2ggaW4gZWluZXIgRGVtb2tyYXRpZSBhbiBkaWUgTGVnaXNsYXRpdmUgc3RhdHQgYW4gZGllCkp1cmlzdGlrdGlvbiB6dSB3ZW5kZW4/Ii4gRHUgd2lsbHN0IERydWNrIGF1ZiBkaWUgTGVnaXNsYXRpdmUgYXVzdWViZW4gaW5kZW0KRHUgRGljaCBlaW5nZXN0YW5kZW5lcm1hc3NlbiB3aXJrdW5nc2xvcyBhbiBkaWUgSnVyaXNkaWt0aW9uIHdlbmRlc3QuIERhcwpoYWx0ZSBpY2ggZnVlciBpbSBBbnNhdHogdmVyZmVobHQuIFVuZCBkaWVzZSBIYWx0dW5nIGhhbHRlIGljaCBmdWVyCm5hY2h2b2xsemllaGJhciB1bmQgcmljaHRpZy4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFZvcnJhdHNkYXRlbnNwZWljaGVydW5nIChab29rLCAxNC4gTm92IDIwMDcsIDExOjA4OjA3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTk1MDM0MzQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5NTAzMDk4NQpXaWV2aWVsZSBCcmllZmUgaGFzdCBEdSBzY2hvbiBhbiBBYmdlb3JkbmV0ZSBnZXNjaGlja3QsIEdyaW1tYm9ybj8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogVm9ycmF0c2RhdGVuc3BlaWNoZXJ1bmcgKEdyaW1tYm9ybiwgMTQuIE5vdiAyMDA3LCAxMToxMjo0Mik6Cn4jISBybj1ab29rIHJ0PTExOTUwMzQ4ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk1MDMwOTg1CldhcyBlaW4gWnVmYWxsLiBEYXMgc2luZCBleGFrdCBnZW5hdXNvdmllbGUgd2llIEdlcmljaHRzdmVyZmFocmVuLCBhbiBkZW5lbgppY2ggbWljaCBhbHMgQXVzc2Vuc3RlaGVuZGVyICJiZXRlaWxpZ3QiIGhhYmUuIAoKR2RBClAuUy4gV29iZWksIHdlbm4ga29tbXVuYWxlIEFiZ2VvcmRuZXRlIHVuZCBlbWFpbHMgbWl0emFlaGxlbiwgZGFubgp1ZWJlcnRyZWZmZW4gZGllIEJyaWVmZSBkaWUgWmFobCBkZXIgR2VyaWNodHN2ZXJmYWhyZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogVm9ycmF0c2RhdGVuc3BlaWNoZXJ1bmcgKEdsb2luc29uLCAxNC4gTm92IDIwMDcsIDExOjE3OjMxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTk1MDM0MzQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5NTAzMDk4NQpEZWluZSBlcnN0ZSBGcmFnZSBoYWJlIGljaCBpbiAiZGlza3Vzc2lvbiIgYmVhbnR3b3J0ZXQuIE5pY2h0IHp1IGRlaW5lcgpadWZyaWVkZW5oZWl0LiBOaWNodCBtZWluIFByb2JsZW0uCgpEZWluZSB6d2VpdGUgRnJhZ2UgaGFiZSBpY2ggbWl0IGVpbmVyIEFkZGl0aW9uc2F1c3NhZ2UgYmVhbnR3b3J0ZXQuIEhhc3QgZHUKbmljaHQgdmVyc3RhbmRlbi4gUGFzc3QgaW4gZGllIFJ1YnJpay4KCk1laW5lIEZyYWdlIGhhdCBab29rIGdlc3RlbGx0LgoKVW5kIGljaCBzZWggaW1tZXIgbm9jaCBrZWluZSBIZXVnYWJlbG4uCgpXYXMgZnVlciBlaW4gc2Nob2VuZXIgVGhyZWFkLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBWb3JyYXRzZGF0ZW5zcGVpY2hlcnVuZyAoR3JpbW1ib3JuLCAxNC4gTm92IDIwMDcsIDExOjIwOjI0KToKfiMhIHJuPUdsb2luc29uIHJ0PTExOTUwMzU0NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk1MDMwOTg1CkRlaW5lIEZyYWdlIHdhciB3byBtYW4gZnVlciBkYXMgVXJ0ZWlsIHZvdGVuIGthbm4/IE11c3MgaWNoIHVlYmVybGVzZW4KaGFiZW4uLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFZvcnJhdHNkYXRlbnNwZWljaGVydW5nIChCYW1iaSwgMTQuIE5vdiAyMDA3LCAxOTo0NzowOSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMTk1MDM1NDUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5NTAzMDk4NQpCaXN0IER1IHNpY2hlciwgZGFzcyBEdSBtaXQgSGV1Z2FiZWxuIG5vY2ggdXAgdG8gZGF0ZSBiaXN0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFZvcnJhdHNkYXRlbnNwZWljaGVydW5nIChHbG9pbnNvbiwgMTQuIE5vdiAyMDA3LCAyMjowNzowNCk6Cn4jISBybj1CYW1iaSBydD0xMTk1MDY2MDI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5NTAzMDk4NQpSZXZvbHV0aW9uZW4gbWl0IEhldWdhYmVsbiBzaW5kIHN5bXBoYXRpc2NoLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVm9yYW5rdWVuZGlndW5nOiBPZWZmZW50bGljaGUgQXVkaWVueiAoWm9vaywgMjEuIE5vdiAyMDA3LCAxMToyMjozNCk6Cn4jISBvbj1ab29rIG90PTExOTU1Nzg2NjEgb2c9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISBybj1ab29rIHJ0PTExOTU1Njc0MjEgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTE5NTU2NzMyNgpDYW50aGFpciBoYXQgc2ljaCBhbHMgRnJlaXdpbGxpZ2VyIGdlbWVsZGV0LiBEdWVyZnRlCmljaCBSdW1hdGEgYml0dGVuLCBkYXMgU3RhZHR0b3IgZWluIHdlbmlnIHp1IGJlYmJvbGxlcm4/IDspIAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFZvcmFua3VlbmRpZ3VuZzogT2VmZmVudGxpY2hlIEF1ZGllbnogKFpvb2ssIDIxLiBOb3YgMjAwNywgMTE6MjI6MzUpOgp+IyEgb249UnVtYXRhIG90PTExOTU1OTUyNjkgb2c9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISBybj1ab29rIHJ0PTExOTU1Nzg2NjEgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTE5NTU2NzMyNgpOb2UsIG1pdCBpZGxlcGFjayBtYWNodCBkYXMga2VpbmVuIFNwYXNzIC4uLgpSdW0qKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVm9yYW5rdWVuZGlndW5nOiBPZWZmZW50bGljaGUgQXVkaWVueiAoWm9vaywgMjEuIE5vdiAyMDA3LCAxMToyMjozNik6Cn4jISBvbj1ab29rIG90PTExOTU2NDA1NDQgb2c9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISBybj1SdW1hdGEgcnQ9MTE5NTU5NTI2OSByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTk1NTY3MzI2CkFjaCwgQ2FudGhhaXIgc3BpZWx0IGdhciBuaWNodCByaWNodGlnPyBIYXQgZGVuIGRhcwpFeHBpcmUtU2tyaXB0IG5pY2h0IGVyd2lzY2h0PyBNdXNzIG1hbiBhbHNvIHdpZWRlcgpoYWVuZGlzY2ggYWxsZXMgaW4gT3JkbnVuZyBicmluZ2VuPyBab29rLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWb3Jhbmt1ZW5kaWd1bmc6IE9lZmZlbnRsaWNoZSBBdWRpZW56IChab29rLCAyMS4gTm92IDIwMDcsIDExOjIyOjU4KToKfiMhIG9uPVpvb2sgb3Q9MTE5NTU2NzQyMSBvZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHJuPVpvb2sgcnQ9MTE5NTU2NzMyNiByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTk1NTY3MzI2CkZ1ZXIgZGllIFRpcHBmZWhsZXIgd2lyZCBub2NoIGVpbiBTdWVuZGVuYm9jayBnZXN1Y2h0LCBkZW4KUnVtYXRhIGFuc2NobGllc3NlbmQgZ2VnZW4gZGFzIFN0YWR0dG9yIGJvbGxlcm4ga2Fubi4KSW50ZXJlc3NlbnRlbiBiaXR0ZSB2b3J0cmV0ZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBWb3Jhbmt1ZW5kaWd1bmc6IE9lZmZlbnRsaWNoZSBBdWRpZW56IChab29rLCAyMS4gTm92IDIwMDcsIDExOjIzOjE2KToKfiMhIHJuPVpvb2sgcnQ9MTE5NTY0MDU3OCByZz1zY2htYXJybgp+IyEgdGlkPTExOTU1NjczMjYKVmVybGVnZW4gd2lsbCBnZWtvbm50IHNlaW4uIEljaCBzZWhlIGVzLiBab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVm9yYW5rdWVuZGlndW5nOiBPZWZmZW50bGljaGUgQXVkaWVueiAoWmVzc3RyYSwgMjEuIE5vdiAyMDA3LCAxMTozMTowMik6Cn4jISBybj1ab29rIHJ0PTExOTU2NDA1OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk1NTY3MzI2CkpvLCBkYXMgaXN0IG1pciBhdWNoIHNjaG9uIDJtYWwgcGFzc2llcnQsIGRhc3MgaWNoIGluIGRlciBmYWxzY2hlbiBSZWloZW5mb2xnZQp2ZXJsZWd0IGhhYi4gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBWb3Jhbmt1ZW5kaWd1bmc6IE9lZmZlbnRsaWNoZSBBdWRpZW56IChSb25kYSwgMjUuIE5vdiAyMDA3LCAxMToyNzo0OCk6Cn4jISBybj1aZXNzdHJhIHJ0PTExOTU1NzY3NjYgcmc9dHJlZmZlbgp+IyEgdGlkPTExOTU1NzA4OTUKLi4uIG5hY2ggZGVuIEVyZmFocnVuZ2VuIGRlcyBsZXR6dGVuIEphaHJlcyB0cmlmZnQgbWFuIGVoZXIgYXVmIGRlbgpXZWlobmFjaHRzbWFya3QgYWxzIGRpZSBLbmVpcGVuIGRhbmViZW4uLi4KClJvbmRhICp2aWVsbGVpY2h0IGhhZXR0ZSBpY2ggZG9jaCBuaWNodCBtaXQgZGVtIEF1dG8gZHVyY2ggZGllIEZ1c3NnYWVuZ2Vyem9uZQovIFdlaWhuYWNodHNtYXJrdCBmYWhyZW4gc29sbGVuLi4uIGFiZXIncyBOYXZpIGhhdHRlIGVzIGVjaHQgYmVmb2hsZW4hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVm9yYW5rdWVuZGlndW5nOiBPZWZmZW50bGljaGUgQXVkaWVueiAoR3dlbiwgMjUuIE5vdiAyMDA3LCAxODo1ODowMSk6Cn4jISBybj1Sb25kYSBydD0xMTk1OTg2NDY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5NTU3MDg5NQpOb2UsIGljaCB3YXIncyA7KQpHd2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGFua3NhZ3VuZyAoWmVzc3RyYSwgMjUuIE5vdiAyMDA3LCAyMDoyOToyOSk6Cn4jISBybj1BcmF0aG9ybiBydD0xMTk2MDE4NzUyIHJnPXBhcnR5Cn4jISB0aWQ9MTE5NjAwMzQxNwpWb24gZGVtIEF1c3NwcnVjaCB3b2xsdGUgU2hha3kgYW0gbmFlY2hzdGVuIE1vcmdlbiBuYXR1ZXJsaWNoIG5peCBtZWhyIHdpc3Nlbgp1bmQgbGllYmVyIER1bnN0IHVlYmVyemV1Z2VuLCBIZWlkaSB6dSBzZWluLiA7LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEJpZ0Jyb3RoZXIgKEdyaW1tYm9ybiwgMjYuIE5vdiAyMDA3LCAxMDozOToyMik6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTExOTYwNjg0OTQgcmc9b2VmZmVudGxpY2hrZWl0c2FyYmVpdAp+IyEgdGlkPTExOTYwMzQ5NTQKTmEga29tbSwgZGFzcyBEdSBhbHMgRnJhbmtlIFByb2JsZW1lIG1pdCBkZXIgSHVtb3Jlcmtlbm51bmcgaGFzdCB3ZW5uIGRhIG5pY2h0Cm1pdCBkZW0gSG9semhhbW1lciBkaWUgU21pbGllcyB2ZXJ0ZWlsdCB3ZXJkZW4ga2FubnN0IER1IGRvY2gga2F1bSBSdW1hdGEKdm9yd2VyZmVuLiA7LSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEJpZ0Jyb3RoZXIgKE1haGFyZXQsIDI2LiBOb3YgMjAwNywgMTM6MTI6MzcpOgp+IyEgcm49TWVzaXJpaSBydD0xMTk2MDc5MDc2IHJnPW9lZmZlbnRsaWNoa2VpdHNhcmJlaXQKfiMhIHRpZD0xMTk2MDM0OTU0Ck5lZSwgbmVlLCBtb21lbnQgbWFsLCBpY2ggZmFuZCBkaWUgSWRlZSwgc2ljaCBkYXMgYmV6YWhsZW4genUgbGFzc2VuLCBuaWNodApzY2hsZWNodC4gQmlzc2NoZW4gZGllIEhhdXNoYWx0c2thc3NlIGF1ZmJlc3Nlcm4gLi4uIGRpZSBLaW5kZXIsIGR1IHdlaXNzdApzY2hvbiAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBCaWdCcm90aGVyIChNYWhhcmV0LCAyNi4gTm92IDIwMDcsIDEzOjI1OjQ1KToKfiMhIHJuPVpvb2sgcnQ9MTE5NjA3OTg2NSByZz1vZWZmZW50bGljaGtlaXRzYXJiZWl0Cn4jISB0aWQ9MTE5NjAzNDk1NAppc3Qgc2ljaGVyIGRlaW4gWndlaXRpZSwgZ2liJ3MgenUhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBFaW4gbmV1ZXIgR2lsZGVubWFnaWVyISAoR2xvaW5zb24sIDI2LiBOb3YgMjAwNywgMTg6MDg6NTIpOgp+IyEgcm49U2hhcmlhIHJ0PTExOTYwOTA1NDMgcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTExOTU4MjEyNzMKU2NocmVpYnQgZXMgdW5kIGxvZ2d0IHNpY2ggdm9yIGRlbSBmcnVlaGVuIEFiZW5kIHdpZWRlciBhdXMuICpicnVtbWVsKiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IERhbmtzYWd1bmcgKFplc3N0cmEsIDI2LiBOb3YgMjAwNywgMjE6NDQ6NTApOgp+IyEgcm49U2hha2VkYmVlciBydD0xMTk2MTA2Mzk5IHJnPXBhcnR5Cn4jISB0aWQ9MTE5NjAwMzQxNwpUT09PT09PT09MVElJSUlJSUlJTUUhIDstKQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRGFua3NhZ3VuZyAoS2Vzc2EsIDI2LiBOb3YgMjAwNywgMjM6MTU6MTIpOgp+IyEgcm49WmVzc3RyYSBydD0xMTk2MTA5ODkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5NjAwMzQxNwpXb2hlciB3ZWlzc3QgRFUgZGFzIGRlbm4/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBEYW5rc2FndW5nIChaZXNzdHJhLCAyNi4gTm92IDIwMDcsIDIzOjE1OjQyKToKfiMhIHJuPVplc3N0cmEgcnQ9MTE5NjEwOTg5MCByZz1zY2htYXJybgp+IyEgdGlkPTExOTYwMDM0MTcKSWNoIGdsYXViLCBkYXMgaGFiIGljaCBtYWwgaW0gRmVybnNlaGVuIGdlc2VoZW4uIDstKQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRGFua3NhZ3VuZyAoS2Vzc2EsIDI2LiBOb3YgMjAwNywgMjM6MTY6MDQpOgp+IyEgcm49WmVzc3RyYSBydD0xMTk2MTE1MzQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5NjAwMzQxNwpPIHRlbXBvcmEsIG8gemVzc3RyYSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IERhbmtzYWd1bmcgKE1hcmN1cywgMjcuIE5vdiAyMDA3LCAxMTo0Njo1Nyk6Cn4jISBybj1LZXNzYSBydD0xMTk2MTE1MzY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5NjAwMzQxNwpHaWJ0cyBhdWNoIGF1ZiBEVkQgaW56d2lzY2hlbiBnbGF1YmUgaWNoLgoKQ2lhbywgTWFyY3VzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBWb3Jhbmt1ZW5kaWd1bmc6IE9lZmZlbnRsaWNoZSBBdWRpZW56IChWYW5pb24sIDI4LiBOb3YgMjAwNywgMjE6Mjc6MDcpOgp+IyEgcm49Wm9vayBydD0xMTk2MjgxNTc0IHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTExOTU1NjczMjYKU2Nyb2xscGFjay4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBWb3Jhbmt1ZW5kaWd1bmc6IE9lZmZlbnRsaWNoZSBBdWRpZW56IChIdW1uaSwgMzAuIE5vdiAyMDA3LCAxNzoxMTozNik6Cn4jISBybj1ab29rIHJ0PTExOTYyODE1NTAgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTE5NTU2NzMyNgpJY2ggbW9lY2h0ZSBlcndhZWhuZW4sIGRhc3MgaWNoIGRlbiBCZWdyaWZmICJBYmxpdGVybiIgdG9sbCBmaW5kZS4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBWb3Jhbmt1ZW5kaWd1bmc6IE9lZmZlbnRsaWNoZSBBdWRpZW56IChab29rLCAzMC4gTm92IDIwMDcsIDE3OjE3OjMzKToKfiMhIHJuPUh1bW5pIHJ0PTExOTY0MzkwOTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk1NTY3MzI2CkdlbGw/IDspIApEYXJmIGljaCBhbHNvIG1pdCBEZWluZW0gRXJzY2hlaW5lbiByZWNobmVuPyAKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFZvcmFua3VlbmRpZ3VuZzogT2VmZmVudGxpY2hlIEF1ZGllbnogKEh1bW5pLCAzMC4gTm92IDIwMDcsIDE3OjE4OjI3KToKfiMhIHJuPVpvb2sgcnQ9MTE5NjQzOTQ1MyByZz1zY2htYXJybgp+IyEgdGlkPTExOTU1NjczMjYKRGFzIHVlYmVybGVnZSBpY2ggZ2VyYWRlLiBEaWUgRm9ydW1saWVydW5nIGlzdCBzY2hvbm1hbCBkYXp1IGFuZ2V0YW4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVm9yYW5rdWVuZGlndW5nOiBPZWZmZW50bGljaGUgQXVkaWVueiAoWm9vaywgMzAuIE5vdiAyMDA3LCAyMjoxOTowMCk6Cn4jISBvbj1ab29rIG90PTExOTY0NTc1MzIgb2c9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISBybj1ab29rIHJ0PTExOTY0NTY5MzYgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTE5NTU2NzMyNgpVbmQgKSgvJiUkQiciJCUmLygpPSgvJiUkQiciJSYvKCkKV2VyIFRpcHBmZWhsZXIgZmluZGV0LCBiZWhhZWx0IHNpZSEgCgpBdXNzZXJkZW0gaGFiZW4gTXVkcGFydGllcyBmcnVlaGVyIGtlaW4gR2VsZCBnZWtvc3RldCwgZGFzIFNNUyBpc3Qgc2Nob24gCndpZWRlciBhYmdld2VydGV0IHdvcmRlbiB1bmQgYXVzc2VyZGVtIHNwaWVsZSBpY2ggamEgbmljaHQgbWVociEKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTm90ZWJvb2tyZXBhcmF0dXIgKEdsb2luc29uLCAgOS4gRGV6IDIwMDcsIDExOjQ4OjE5KToKfiMhIHJuPU1lc2lyaWkgcnQ9MTE5NzE5NjQwNiByZz1zZWhlci51cmxhdWIKfiMhIHRpZD0xMTk3MTk2NDA2CkltIEJhZCBydW50ZXJnZWZhbGxlbj8gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5vdGVib29rcmVwYXJhdHVyIChNZXNpcmlpLCAgOS4gRGV6IDIwMDcsIDEzOjIzOjAxKToKfiMhIHJuPUdsb2luc29uIHJ0PTExOTcxOTcyOTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk3MTk2NDA2Cm5lZSBkZXNpZ25mZWhsZXIgdW5kIGF1c2JydWNoc3RlbGxlbiBhbSBnZWhhZXVzZS4KbWVzaS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktvcGYgb2RlciBaYWhsPyA7LSkgKFRhcmFuaXMsICA5LiBEZXogMjAwNywgMTc6MjE6MjApOgo+IHdpcmYgZ2VsZApEdSBuaW1tc3QgMjQ0MzYgTXVlbnplbiwgd2lyZnN0IHNpZSBob2NoLCBsYWVzc3Qgc2llIHp1IEJvZGVuIHByYXNzZWxuIHVuZApiZXRyYWNodGVzdCBkYXMgRXJnZWJuaXM6CiAgIDg1NjJ4IEtvcGYgdW5kIDE1ODc0eCBaYWhsLgpTY2huZWxsIHNhbW1lbHN0IER1IERlaW5lIE11ZW56ZW4gd2llZGVyIGVpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLb3BmIG9kZXIgWmFobD8gOy0pIChNYXJjdXMsICA5LiBEZXogMjAwNywgMTc6MzE6MDIpOgp+IyEgcm49VGFyYW5pcyBydD0xMTk3MjE3MjgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5NzIxNzI4MApLbGFzc2UgWnVmYWxsc3ZlcnRlaWx1bmcuLi4gOikKCkNpYW8sIE1hcmN1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLb3BmIG9kZXIgWmFobD8gOy0pIChaZXNzdHJhLCAgOS4gRGV6IDIwMDcsIDE3OjM2OjU3KToKfiMhIHJuPU1hcmN1cyBydD0xMTk3MjE3ODYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5NzIxNzI4MApOdW5qYS4gRGFzIHNpZWh0IG5hdHVlcmxpY2ggYXVjaCBuaWNodCBpbW1lciBzbyBhdXMsIHdlbm4gbWFuIGRhcyB3aWVkZXJob2x0Lgo7LSkgQWJlciBlcyBrZWluIHZlcm51ZW5mdGlnZXIgVGVzdCwgd2VpbCBkYSBqZXR6dCBuaWNodCAyNGsgWnVmYWxsc3phaGxlbgpzaW5kLCBkaWUgZGFoaW50ZXJzdGVja2VuLCBzb25kZXJuIG51ciA1LCB3YXMgbWFuIG5hdHVlcmxpY2ggYWxzIFNwaWVsZXIgbmljaHQKc2llaHQuICpnKgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS29wZiBvZGVyIFphaGw/IDstKSAoR3dlbiwgIDkuIERleiAyMDA3LCAxNzo0NTozOCk6Cn4jISBybj1aZXNzdHJhIHJ0PTExOTcyMTgyMTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk3MjE3MjgwCnV1dWghIG1hZ2llcmdlaGVpbW5pc3NlISBzcGllbGVyaGlsZmUhCmd3ZW4uClBTOiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS29wZiBvZGVyIFphaGw/IDstKSAoTWFyY3VzLCAgOS4gRGV6IDIwMDcsIDE4OjE2OjAwKToKfiMhIHJuPUd3ZW4gcnQ9MTE5NzIxODczOCByZz1zY2htYXJybgp+IyEgdGlkPTExOTcyMTcyODAKV2FydW0gbmljaHQgMjUwMDAgbWFsIFJhbmRvbT8gOikKCkNpYW8sIG1hcmN1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogS29wZiBvZGVyIFphaGw/IDstKSAoQ3JvZnQsIDEwLiBEZXogMjAwNywgMDA6MzU6NTUpOgp+IyEgcm49TWFyY3VzIHJ0PTExOTcyMjA1NjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk3MjE3MjgwCldpZXNvIG5pY2h0IDFtYWwgUmFuZG9tPyA6bykKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBLb3BmIG9kZXIgWmFobD8gOy0pIChHbG9pbnNvbiwgMTAuIERleiAyMDA3LCAwMTozMjowOCk6Cn4jISBybj1Dcm9mdCBydD0xMTk3MjQzMzU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5NzIxNzI4MApXZWlsIGRhcyBhdWZmaWVsZSA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEtvcGYgb2RlciBaYWhsPyA7LSkgKENyb2Z0LCAxMC4gRGV6IDIwMDcsIDA5OjMzOjU0KToKfiMhIHJuPUdsb2luc29uIHJ0PTExOTcyNDY3Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMTk3MjE3MjgwCkdsYXViIGljaCBuaWNodC4gIFNvdmllbCBtZWhyIFNwZWljaGVyIHVuZCBSZWNoZW56ZWl0IHNvbGx0ZSBkYXMgbmljaHQKc2Vpbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMTogVm9yYW5rdWVuZGlndW5nOiBPZWZmZW50bGljaGUgQXVkaWVueiAoSHVtbmksIDEzLiBEZXogMjAwNywgMTc6MDc6MDEpOgp+IyEgb249SHVtbmkgb3Q9MTE5NzU2MjAxNyBvZz10cmVmZmVuCn4jISBybj1LZXkgcnQ9MTE5NzUzOTk0NiByZz10cmVmZmVuCn4jISB0aWQ9MTE5NTU2NzMyNgpPZWhlbS4uLiBlaW5lIEF1ZGllbnosIHdvIG1hbiB1bSAyMiBVaHIgKG9kZXIgYXVjaCAyMjozMCBvZGVyIDIzIFVociwgamUgbmFjaAptb2VnbGljaGVyIEFua3VuZnRzemVpdCkgYWxsZXMgc2Nob24gaGludGVyIHNpY2ggaGF0PwoKU2luZCB3aXIgKG9rLCBpY2ggd2FyIG5pY2h0IGRhYmVpLCBhbHNvLi4uKS4uLiBTZWlkIElociBzbyBhbHQgZ2V3b3JkZW4/CgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IFZvcmFua3VlbmRpZ3VuZzogT2VmZmVudGxpY2hlIEF1ZGllbnogKFpvb2ssIDEzLiBEZXogMjAwNywgMTc6MDk6NTIpOgp+IyEgcm49SHVtbmkgcnQ9MTE5NzU2MjAyMSByZz1zY2htYXJybgp+IyEgdGlkPTExOTU1NjczMjYKYWNod2FzLCBkYSBoYWV0dGUgZXMgbG9ja2VyIGhpbnp1c3Rvc3NlbiBrb2VubmVuLiB6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWwgd2llZGVyIEZMVy4gOy0pIChaZXNzdHJhLCAxNS4gRGV6IDIwMDcsIDAwOjE1OjUxKToKW01vZXJkZXI6R2Vpc3QgS2lhc10gWHV0ZWxpdXMgaGF0IG1pY2ggZ2V0b2V0ZXQuCltNb2VyZGVyOlh1dGVsaXVzXSBqbywgdW5kPwpbVG9kOkxhcnNdIEVpbiBTY2hsdWNrIERyYWNoZW5ibHV0IGhhdCBnZXJhZGUgWHV0ZWxpdXMgdW1nZWJyYWNodC4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBCaWdCcm90aGVyIChab29rLCAxNS4gRGV6IDIwMDcsIDIwOjUwOjA2KToKfiMhIG9uPVpvb2sgb3Q9MTE5Nzc0ODE5NCBvZz1vZWZmZW50bGljaGtlaXRzYXJiZWl0Cn4jISBybj1SdW1hdGEgcnQ9MTE5Nzc0ODExNiByZz1vZWZmZW50bGljaGtlaXRzYXJiZWl0Cn4jISB0aWQ9MTE5NjAzNDk1NAo+IGZpbmdlciBwYWRyZWljCgpQYWRyZWljIGlzdCBuaWNodCBhbndlc2VuZC4KWnVsZXR6dCBlaW5nZWxvZ2d0IHZvbjogVHVzPWNvbm5lY3QuClp1bGV0enQgYXVzZ2Vsb2dndDogU2FtLCAxNS4gRGV6IDIwMDcsIDE0OjQ5OjE0ICgwNjowMDoxNCkuClZvbGxlciBOYW1lOiBbQmFjY2h1c2p1ZW5nZXJdIFBhZHJlaWMKUmFzc2U6IE1lbnNjaCwgIEdpbGRlOiBLbGVydXMsICBHZXNjaGxlY2h0OiBtYWVubmxpY2gKTWFnaWVybGV2ZWw6IDM1IChIaWxmc21hZ2llcikKRGF0dW0gZGVzIGVyc3RlbiBMb2dpbjogTWl0LCAgNS4gRmViIDE5OTcsIDE2OjE0OjQ5CkJpc2hlciBiZXJlaXRzIDYgbWFsIGdlc3RvcmJlbgpSZWdpb25zbWl0YXJiZWl0ZXIgdm9uOiBFYmVuZSwgRmVybndlc3QsIEluc2VsbiwgVW50ZXJ3ZWx0LCBXYWxkLgpHaWxkZW5tYWdpZXIgdm9uICAgICAgOiBEdW5rZWxlbGZlbi4KUHJvamVrdDogWGlhbiBiZWtvbW10IG5lIFBhcmF3ZWx0IDopCgoKV2llPyBSdW1hdGE/IEVyIGlzIGRvY2ggbm9jaCBkYS4uLi4gOykgCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVLLVRpcHMsIG5hZWNoc3RlciBTY2h3dW5nLiAoWmVzc3RyYSwgMjguIERleiAyMDA3LCAxMDowNjo1Mik6Cn4jISBybj1BcmsgcnQ9MTE5ODc5NDk3MCByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTExOTg3OTQ5NzAKQWJlciBqZXR6dCBrYW5uIG1hbiBBcmstRUtzIGdhciBuaWNodCBtZWhyIGRhcmFuIGVya2VubmVuLCBkYXNzIHNpZSBtZWhyIG9kZXIKd2VuaWdlciBkaWUgZWluemlnZW4gc2luZCwgZGllIFJlaW0tVGlwcyBoYWJlbi4uLiAqamFtbWVyKiA7LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVLLVRpcHMsIG5hZWNoc3RlciBTY2h3dW5nLiAoQW5hdG9sLCAyOC4gRGV6IDIwMDcsIDEwOjUzOjU3KToKfiMhIG9uPUFuYXRvbCBvdD0xMTk4ODM1NjI5IG9nPXNlaGVyLmVudHdpY2tsdW5nCn4jISBybj1WZWN0b3IgcnQ9MTE5ODgzNTM1MiByZz1zZWhlci5lbnR3aWNrbHVuZwp+IyEgdGlkPTExOTg3OTQ5NzAKRXMgd2FyIGVpbm1hbCBlaW4gYXJtZXIgQW5hdG9sLiBFciBsZWJ0ZSBkYW1hbHMuIFZvciBsYW5nZXIgWmVpdC4KTWl0IFZlcmdudWVnZW4gYWVyZ2VydGUgZXIgZWluZW4gZGVyIEdST1NTRU4sIGluIGRlbSBlciBzaWNoIG11ZWh0ZSwgZWluZW4KRXJzdGtpbGwgenUgZmluZGVuLCBkZW4gamVuZXIgbmljaHQgaGF0dGUuIEFscyBlcyBkYW5uIHNvIHdlaXQgd2FyIHVuZCBkaWUKUGxha2V0dGVuIGZ1bmtlbnN0aWViZW5kIHZlcmt1ZW5kZXRlbiwgZGFzcyBBbmF0b2wgendhciBsYWVuZ3N0IG5pY2h0IHNvCnZpZWxlIEVyc3R0b2V0dW5nc2RlbGlrdGUgYmVnaW5nIHdpZSBkZXIgR1JPU1NFLCB3b2hsIGFiZXIgZWluZW4gR2VnbmVyCm5pZWRlcm1ldHplbHRlLCB3ZWxjaGVuIGRlciBHUk9TU0Ugbm9jaCBuaWUgYmVzaWVndGUuLi4gZXMgZGF1ZXJ0ZSBrZWluZW4KVGFnLCBkYSBoYXR0ZSBkZXIgR1JPU1NFIGF1Y2ggZGllc2VuIEdlZ25lciBiZXNpZWd0LCBvYnNjaG9uIEFuYXRvbCBpaG0KbmljaHQgc2FndGUsIHdlciB1bmQgd28gZGllc2VzIGd1dCB2ZXJzdGVja3RlIE9wZmVyIHNlaS4KClNlaXQgdmllbGVuIGh1bmRlcnQgVGFnZW4gaXN0IGRlciBHUk9TU0UgbmljaHQgbWVociBoaWVyIGdld2VzZW4uIAoKV2VuIGp1Y2t0cy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWxsaWFuIGlzdCBqZXR6dCBlaW4gTWFnaWVyISAoQW5hdG9sLCAzMC4gRGV6IDIwMDcsIDE4OjUxOjM4KToKfiMhIHJuPU1lcmxpbiBydD0xMTk5MDMxMTM5IHJnPXN0dWZlbgp+IyEgdGlkPTExOTkwMzExMzkKRWluIEdlc2NoZW5rdGVyIG1hY2h0IGVpbmVuIGFuZGVyZW4gR2VzY2hlbmt0ZW4genVtIE1hZ2llci4uLiAKTyB0ZW1wb3JhLCBvIG1vcmVzLiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSWxsaWFuIGlzdCBqZXR6dCBlaW4gTWFnaWVyISAoTWFoYXJldCwgMzAuIERleiAyMDA3LCAxOToxMjoyNCk6Cn4jISBybj1BbmF0b2wgcnQ9MTE5OTAzNzA5OCByZz1zY2htYXJybgp+IyEgdGlkPTExOTkwMzExMzkKSmEsIGdlbmF1LiBNb3Jlcy4gTWljaCB3dWVyZGUgamEgc2Nob24gaW50ZXJlc3NpZXJlbiwgd2VyIGRhIGRpZSBNdXR0ZXIgaXN0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRXJ6bWFnaWVyLi4uIDstKSAoWmVzc3RyYSwgMzAuIERleiAyMDA3LCAyMDowMTo0Myk6CkR1IGhvbHN0IFRJSUlJRUVFRUVGIEx1ZnQsIG9lZmZuZXN0IGRlbiBOaXBwZWwgdW5kIGJsYWVzdCBEZWluIEd1bW1pcG9ydGFsCm1pdCBudXIgZWluZW0gQXRlbXp1ZyBhdWYuCkRpciBrbGluZ2VuIGRpZSBPaHJlbiB2b20gZmVzdGVuIFB1c3Rlbi4gTmVpbiEgRGFzIGlzdCBlY2h0ZSBNdXNpayEgVm9yCkRlaW5lbiBBdWdlbiBlcnNjaGVpbmVuIHNhZW10bGljaGUgRXJ6bWFnaWVyIGRlcyBNb3JnZW5HcmF1ZW5zIHVuZCB0YW56ZW4KdW0gZGVpbiBHdW1taXBvcnRhbC4gRGFzIFBvcnRhbCBzY2hpbW1lcnQgbGVpY2h0IHVuZCB2ZXJ3YW5kZWx0IHNpY2ggZGFubgptaXQgZWluZW0gVHVzY2ggaW4gZWluIGVjaHRlcyBTZWhlcnBvcnRhbC4KRGllIEVyem1hZ2llciB3aW5rZW4gbm9jaG1hbCBrdXJ6IHVuZCB2ZXJzY2h3aW5kZW4gZGFubiBtaXQgZWluZW0gbGVpc2VuClBsb3BwLgpTZWx0c2FtZSBTaXBwZSEKRHUgc3B1ZXJzdCBNb3JkbHVzdCAuLi4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFcnptYWdpZXIuLi4gOy0pIChFbGpvLCAzMC4gRGV6IDIwMDcsIDIyOjQ2OjUwKToKfiMhIHJuPVplc3N0cmEgcnQ9MTE5OTA0MTMwMyByZz1zY2htYXJybgp+IyEgdGlkPTExOTkwNDEzMDMKSkEhIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVmVybGVybmVuIHZvbiBXYWZmZW5za2lsbHMgKFplc3N0cmEsIDMxLiBEZXogMjAwNywgMTM6MjQ6NDgpOgp+IyEgcm49VG9kaWUgcnQ9MTE5OTEwMzY3MCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMTk3OTgzMTk2CkljaCBmaW5kZSBlcyB1ZWJyaWdlbnMgdm9sbCBnZW1laW4sIGRhc3MgWmF1YmVyZXIgYmVpIGRlbiBXdXJmdHN0ZXJuZW4KYmVuYWNodGVpbGlndCBzaW5kISAqamFtbWVyKgoqc3RvZWNrY2hlbmZhbmdlbmQqCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBWZXJsZXJuZW4gdm9uIFdhZmZlbnNraWxscyAoQW5hdG9sLCAzMS4gRGV6IDIwMDcsIDEzOjMyOjQ0KToKfiMhIG9uPUFuYXRvbCBvdD0xMTk5MTA0MzU4IG9nPWdpbGRlbi5rYWVtcGZlcgp+IyEgcm49VG9kaWUgcnQ9MTE5OTEwMzY3MCByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMTk3OTgzMTk2ClN0ZWxsJyBEaXIgZWluZmFjaCB2b3IsIEZlbGluZW4gZHVlcmZ0ZW4ga2VpbmUgVHJ2ZXMgd2VyZGVuLgoKQW5hIkthdHplbiBpbiBkZW4gU2NocmVkZGVyIChjKSBMdWcidG9sCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVmVybGVybmVuIHZvbiBXYWZmZW5za2lsbHMgKFBpdGZhbGwsIDMxLiBEZXogMjAwNywgMTM6MzQ6MzApOgp+IyEgcm49QW5hdG9sIHJ0PTExOTkxMDQzNjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk3OTgzMTk2CkZlbGluZW56YXViZXJlciBkdWVyZmVuIGtlaW5lIFRydmVzIHdlcmRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFZlcmxlcm5lbiB2b24gV2FmZmVuc2tpbGxzIChBbmF0b2wsIDMxLiBEZXogMjAwNywgMTM6MzU6NTApOgp+IyEgcm49UGl0ZmFsbCBydD0xMTk5MTA0NDcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5Nzk4MzE5NgpJc3QgbWFuIG5pY2h0IGFiIGludCszIGVoIHZvbiBkZW4gVHJ2ZXMgYXVzZ2VzcGVycnQsIHNvIHJlaW4gCnNvY2lhbC1lbmdpbmVlcmVkPyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLQSBTdGF0aSAzLjEuIChWYW5pb24sICAzLiBKYW4gMjAwOCwgMDE6Mjk6NTcpOgp+IyEgcm49Q3JvZnQgcnQ9MTE5OTMwMTU2NSByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMTk5MzAxNTY1CkZhc3QgMjRoIFZvcndhcm56ZWl0PyBEdSB3aXJzdCB3ZWljaC4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEtBIFN0YXRpIDMuMS4gKENyb2Z0LCAgMy4gSmFuIDIwMDgsIDEwOjMwOjUwKToKfiMhIHJuPVZhbmlvbiBydD0xMTk5MzIwMTk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5OTMwMTU2NQpXaWVzbyBWb3J3YXJuemVpdD8gIEVzIGlzdCBkb2NoIG51ciBkaWUgSW5mb3JtYXRpb24gd28gZGVyIFN0YXRpIHN0YXR0ZmluZGV0LgpEYXNzIGVyIHN0YXR0ZmluZGV0IHdhciBkb2NoIHNjaG9uIHZpZWwgZnJ1ZWhlciBiZWthbm50IDstKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IExpdGhpdW0tQWtrdS1CZXNjaHJhZW5rdW5nIEZsdWd2ZXJrZWhyIChHcmltbWJvcm4sICA0LiBKYW4gMjAwOCwgMTY6NDU6NDIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTE5OTQ2MTM2MSByZz13d3cKfiMhIHRpZD0xMTk5NDQ0NjU5CkRhcyBzYWdzdCBEdSBhdWNoIG51ciBzb2xhbmdlIHdpZSBEdSBEZWluIE9saXZlbm9lbCBtaXQgZGVyc2VsYmVuIE1hc3NlIGFuCk9saXZlbm9lbCBhdXMgQW50aW1hdGVyaWUgenVzYW1tZW5rb21tZW4gbGFlc3N0LiBVbmQgZGVuIEVuZXJnaWVhdXNzdG9zcwpoYWxiaWVyc3QuIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBMaXRoaXVtLUFra3UtQmVzY2hyYWVua3VuZyBGbHVndmVya2VociAoR2xvaW5zb24sICA0LiBKYW4gMjAwOCwgMTc6MTM6MTMpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExOTk0NjE1NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk5NDQ0NjU5CkRhcyB3dWVyZGUgaWNoIGdlcm4gbWFsIGF1c3Byb2JpZXJlbi4gS29lbm50ZXN0IGR1IG1pciBlaW5lIEZsYXNjaGUKQW50aW1hdGVyaWUtT2xpdmVub2VsIHp1a29tbWVuIGxhc3Nlbj8KCihJY2ggd29sbHRlIHNjaG9uIGltbWVyIGVpbmUgU2VsYnN0bW9yZC1XZWx0dmVybmljaHR1bmdzLVdlbHRtYWNodCBzZWluLikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBMaXRoaXVtLUFra3UtQmVzY2hyYWVua3VuZyBGbHVndmVya2VociAoR3JpbW1ib3JuLCAgNC4gSmFuIDIwMDgsIDE3OjIxOjI2KToKfiMhIHJuPUdsb2luc29uIHJ0PTExOTk0NjMxOTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk5NDQ0NjU5ClNvcnJ5LCBhYmVyIHdlZGVyIERITCBub2NoIFVQUyBzaW5kIGJlcmVpdCBkYXMgenUgYmVmb2VyZGVybi4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IExpdGhpdW0tQWtrdS1CZXNjaHJhZW5rdW5nIEZsdWd2ZXJrZWhyIChNYXJjdXMsICA0LiBKYW4gMjAwOCwgMTc6MzA6MzgpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTExOTk0NjM2ODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk5NDQ0NjU5ClNjaG9lbmVyIHdhZXJlIHdlbm4gZGVyIExhcHRvcCBPbGl2ZW5vZWwgdGFua2VuIGtvZW5udGUgLi4uID8gCgpDaWFvLCBNYXIgdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBMaXRoaXVtLUFra3UtQmVzY2hyYWVua3VuZyBGbHVndmVya2VociAoR3JpbW1ib3JuLCAgNC4gSmFuIDIwMDgsIDE3OjMyOjE0KToKfiMhIHJuPU1hcmN1cyBydD0xMTk5NDY0MjM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5OTQ0NDY1OQpBbGxlcyBlaW5lIEZyYWdlIGRlciByaWNodGlnZW4gQnJlbm5zdG9mZnplbGxlLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTGl0aGl1bS1Ba2t1LUJlc2NocmFlbmt1bmcgRmx1Z3ZlcmtlaHIgKEdsb2luc29uLCAgNi4gSmFuIDIwMDgsIDAyOjMxOjUxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMTk5NDYzNjg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5OTQ0NDY1OQpJY2ggaG9sIGRhcyBnZXJuIGF1Y2ggc2VsYnN0IGFiLiBCZWkgZGVyIE1lbmdlIHNwaWVsZW4gMTIwMDAga20gRGlzdGFueiBkdXJjaApkZW4gRXJkcnVuZCBhdWNoIGtlaW5lIFJvbGxlIG1laHIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IExpdGhpdW0tQWtrdS1CZXNjaHJhZW5rdW5nIEZsdWd2ZXJrZWhyIChaZXNzdHJhLCAgNi4gSmFuIDIwMDgsIDA5OjU1OjM3KToKfiMhIHJuPUdsb2luc29uIHJ0PTExOTk1ODMxMTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk5NDQ0NjU5CklyZ2VuZGVpbmUgU3R1ZGllIGRlcyBVUy1NaWxpdGFlcnMgenUgZGVtIFRoZW1hIFdhZmZlbiBtaXQgQW50aW1hdGVyaWUgaGF0CnNpY2ggd29obCBtYWwgZGFydWViZXIgZ2VmcmV1dCwgZGFzcyBkYXMgTGFnZXJ1bmdzcHJvYmxlbSBqYSBnZWxvZXN0IHNlaSB1bmQKc2llIG1hZ25ldGlzY2hlIEZsYXNjaGVuIGJhdWVuIGtvZW5udGVuLCB3b3JpbiAxMDBrIEF0b21lIGdlbGFnZXJ0IHdlcmRlbgprb2VubmVuLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IExpdGhpdW0tQWtrdS1CZXNjaHJhZW5rdW5nIEZsdWd2ZXJrZWhyIChHbG9pbnNvbiwgIDYuIEphbiAyMDA4LCAxNDoxMzo0OSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTE5OTYxMzg4NyByZz13d3cKfiMhIHRpZD0xMTk5NDQ0NjU5CkljaCBzZWggZGljaCBzY2hvbiBtaXQgZWluZW0gTWl4ZXIgYW0gU2VjdXJpdHktQ2hlY2suCgpEYXNzIGljaCBkYSBuZXVsaWNoIGludGVuc2l2IGR1cmNobGV1Y2h0ZXQgd3VyZGUsIG1laW5lIFNjaHVoZSBhdXN6aWVoZW4gdW5kCmR1cmNocyBCYW5kIHNjaGlja2VuLCBtZWluZW4gVVNCLUtleSBlcmtsYWVyZW4gbXVzc3RlIHVuZCBkZW5ub2NoIGVpbmUgU3R1bmRlCm5hY2ggQW5rdW5mdCBpbSBIYW5kZ2VwYWVjayBlaW5lIHZlcmdlc3NlbmUsIHZvbGxlIEZsYXNjaGUgV2Fzc2VyIGdlZnVuZGVuCmhhYmUsIGhhYmUgaWNoIHNpY2hlciBzY2hvbiBlcndhZWhudCwgb2Rlcj8gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTGl0aGl1bS1Ba2t1LUJlc2NocmFlbmt1bmcgRmx1Z3ZlcmtlaHIgKE9ya3RvZXRlciwgIDYuIEphbiAyMDA4LCAxNDoxODoxMCk6Cn4jISBybj1aZXNzdHJhIHJ0PTExOTk2MDk3Mzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk5NDQ0NjU5CkFwcm9wb3MgQW50aW1hdGVyaWUod2FmZmVuKToKRnVlciBBbnRpbWF0ZXJpZSBnaWx0IGRvY2ggc2ljaGVyIGF1Y2ggZGVyIFdlbGxlL1RlaWxjaGVuLWR1YWxpc211cy4gV2llCnNjaGF1dHMgZGEgbWl0IHNvIERpbmdlbiB3aWUgVHVubmVsbiB1bmQgYWJzaW5rZW5kZXIgKGFiZXIgbmljaHQgYXVmIDApCkF1ZmVudGhhbHRzd2FocnNjaGVpbmxpY2hrZWl0PwoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBMaXRoaXVtLUFra3UtQmVzY2hyYWVua3VuZyBGbHVndmVya2VociAoT3JrdG9ldGVyLCAgNi4gSmFuIDIwMDgsIDE0OjIwOjA3KToKfiMhIHJuPUdsb2luc29uIHJ0PTExOTk2MjUyMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk5NDQ0NjU5CkVzIGlzdCBhdWNoIGltbWVyIG5ldHQgZGllIHZlcnNjaGllZGVuZW4gRmx1Z2hhZWZlbiB6dSB2ZXJnbGVpY2hlbi4KCldpZW4tPiBLb2Vsbiwga2VpbiBQcm9ibGVtLApLb2Vsbi0+IFdpZW4gKGRpZSBnbGVpY2hlbiBTY2h1aGUpIHVuZCBpY2ggbXVzc3RlIHNpZSBhdXN6aWVoZW4uLi4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTGl0aGl1bS1Ba2t1LUJlc2NocmFlbmt1bmcgRmx1Z3ZlcmtlaHIgKFZhbmlvbiwgIDYuIEphbiAyMDA4LCAxNDoyMjowMSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTE5OTYyNTQ5MCByZz1zY2htYXJybgp+IyEgdGlkPTExOTk0NDQ2NTkKTW9lY2h0ZXN0IER1IGpldHp0IGVpbmUgYW5zY2hhdWxpY2hlIEVya2xhZXJ1bmcsIGJlaSBkZXIgc2ljaCBQaHlzaWtlciBhdWYgZGVuClplaGVubmFlZ2VsbiBydW1iZWlzc2VuIG9kZXIgZWluZSBMb2VzdW5nIGRlciBTY2hyb2VkaW5nZXJnbGVpY2h1bmcgZnVlciBkZW4Kdm9uIERpciBiZXNjaHJpZWJlbmVuIEZhbGw/CgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IExpdGhpdW0tQWtrdS1CZXNjaHJhZW5rdW5nIEZsdWd2ZXJrZWhyIChBbGtvaG9sLCAgNi4gSmFuIDIwMDgsIDE0OjIzOjQ3KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMTk5NjI1NDkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5OTQ0NDY1OQp3YXMgZ2VuYXUgbWVpbnN0IGR1IG1pdCBXZWxsZS9UZWlsY2hlbi1EdWFsaXNtdXM/CgpBbGtpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTGl0aGl1bS1Ba2t1LUJlc2NocmFlbmt1bmcgRmx1Z3ZlcmtlaHIgKE9ya3RvZXRlciwgIDYuIEphbiAyMDA4LCAxNDoyMzo1NSk6Cn4jISBybj1WYW5pb24gcnQ9MTE5OTYyNTcyMSByZz1zY2htYXJybgp+IyEgdGlkPTExOTk0NDQ2NTkKRGEgZXMgbWl0IGRlciBMb2VzdW5nIGRlciBTY2hyb2VkaW5nZXJnbGVpY2h1bmcgYmVpIFByb2JsZW1lbiBtaXQgbWVocmVyZQpUZWlsY2hlbiBsZWljaHRlIFNjaHdpZXJpZ2tlaXRlbiBnaWJ0IHVuZCBkdSBtaXIgc2ljaGVybGljaCBudXIgZWluZSBnZW5hZWhydGUKTG9lc3VuZyBhbmJpZXRlbiB3dWVyZGVzdCwgd2FlcmUgbWlyIGRpZSBtaXQgZGVuIHplcmthdXRlbiBOYWVnZWxuIGxpZWJlci4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTGl0aGl1bS1Ba2t1LUJlc2NocmFlbmt1bmcgRmx1Z3ZlcmtlaHIgKFJvbmRhLCAgNi4gSmFuIDIwMDgsIDE0OjI1OjMyKToKfiMhIHJuPVZhbmlvbiBydD0xMTk5NjI1NzIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5OTQ0NDY1OQoqc2V1ZnoqIFdhcnVtIGthbm4gaWNoIGpldHp0IG5pY2h0IGFuZGVycywgYWxzIGJlaSAiWmVoZW5uYWVnZWwgcnVtYmVpc3NlbiIgYW4KZGVuIGFuZGVyZW4gQXJ0aWtlbCBtaXQgT3JrVCdzIFNjaHVoZW4gYmVpbSBGbHVnaGFmZW4genUgZGVua2VuPyEgVW5kIGRhcyBtaXQKU2Nocm9lZGluZ2VyIHdhciBkb2NoIGRhcyBtaXQgZGVyIEtpc3RlLCBiZWkgZGVyIG1hbiBlcnN0IGJlaW0gLyBkdXJjaCBkYXMKQXVmbWFjaGVuIGJlc3RpbW10LCBvYiBkaWUgS2F0emUgLSBvaywgb2RlciBpbiBkZW0gX0ZhbGxfIGRhcyBSb2VtZXJnbGFzIC0KZGFyaW4gdG90IGlzdC4uLiBVbmQgd2FzIGhhYmVuIG51biBSb2VtZXJnbGFlc2VyIGluIEthcnRvbnMgbWl0IEFudGltYXRlcmllIHp1CnR1bj8KClJvbmRhICp6dSBIVUVMRkUhKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IExpdGhpdW0tQWtrdS1CZXNjaHJhZW5rdW5nIEZsdWd2ZXJrZWhyIChWYW5pb24sICA2LiBKYW4gMjAwOCwgMTQ6MjY6NTgpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTExOTk2MjU4MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMTk5NDQ0NjU5CldvIGlzIGRlciBQdW5rdCwgZGFzIGVpbmUgaXN0IGZ1ZXIgZGVuIE90dG9ub3JtYWxtZW5zY2hlbiB2b2VsbGlnCnVudmVyc3RhZW5kbGljaCwgZGFzIGFuZGVyZSBlaW5lIGdyb2IgdmVyYWxsZ2VtZWluZXJuZGUgTmFlaGVydW5nLiBXZWxjaGVzCmZ1ZXIgZGljaCB3ZWxjaGVzIGlzdCwgZGFyZnN0IER1IERpciBhdXNzdWNoZW4uCgpWKiwgbWFnIGRpZSBHYWxpbGVvLUZhc3N1bmcgdm9uICJSYXVtemVpdCBrYW5uIG1hbiBzaWNoIHdpZSBlaW5lIEd1bW1pbWF0dGUKdm9yc3RlbGxlbiwgdW5kIE1hc3Nla29lcnBlciB3aWUgR2V3aWNodGUgYXVmIGRlciBNYXR0ZSItSW50ZXJwcmV0YXRpb25lbgpuaWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBMaXRoaXVtLUFra3UtQmVzY2hyYWVua3VuZyBGbHVndmVya2VociAoR3JpbW1ib3JuLCAgNi4gSmFuIDIwMDgsIDE0OjU5OjMwKToKfiMhIHJuPVZhbmlvbiBydD0xMTk5NjI2MDE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTE5OTQ0NDY1OQpJY2ggc2VoZSBkaWUgUHJvYmxlbWF0aWsgbmljaHQuIFF1YW50ZW5waHlzaWthbGlzY2hlIFBoYWVub21lbmUgc2luZCBiZWkgZWluZW0KS2lsb2dyYW1tIEFudGltYXRlcmllc3RlaW5rb2hsZSBlYmVuc28gcmVsZXZhbnQgd2llIGJlaSBlaW5lbSBLaWxvZ3JhbW0KU3RlaW5rb2hsZTogYWxzbyBnYXIgbmljaHQuIAoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBJQ1EtUHJvYmxlbWUgKFJvbmRhLCAgNi4gSmFuIDIwMDgsIDE1OjA2OjA5KToKfiMhIHJuPVJ1bWF0YSBydD0xMTk5NjI4MjY5IHJnPXd3dwp+IyEgdGlkPTExOTk2MjcyOTAKTmVpbiwgZGllIHNpbmQgc2ljaGVyIGFsbGUgaHlkcm9waG9iIGdld29yZGVuLi4uCgpSb25kYSAqU2VpZmUgcmVpY2hlbmQgdW5kIHJ1bXNjaG1hcnJlbmQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPaG5lIHdlaXRlcmVuIEtvbW1lbnRhciAoT3JrdG9ldGVyLCAgNi4gSmFuIDIwMDgsIDIwOjMwOjI0KToKW1NlaGVyOk1lc2lyaWldIG5lZSBpY2ggc3RlcmIgZG9jaCBuaWNoIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogSUNRLVByb2JsZW1lIChHcmltbWJvcm4sICA2LiBKYW4gMjAwOCwgMjE6MDE6MTMpOgp+IyEgb249R3JpbW1ib3JuIG90PTExOTk2NDk2Njcgb2c9d3d3Cn4jISBybj1aZXNzdHJhIHJ0PTExOTk2NDkzMTUgcmc9d3d3Cn4jISB0aWQ9MTE5OTYyNzI5MApOaWNodCBkYXNzIGRhcyBqZXR6dCBqZW1hbmRlbSBoaWxmdCwgYWJlciBtaXQgbWVpbmVyIGVtYWlsIGhhYiBpY2gga2VpbmUKUHJvYmxlbWUuIEhpZXIgcnVtaWRsZW4gZ2VodCBhdWNoIGd1dC4gVW5kIFRlbGVmb24gaGFiIGljaCBkZW4gbWVpc3RlbiBMZXV0ZW4KYWJnZXdvZWhudC4gRGFtaXQgYmluIGljaCBzbyBlcnJlaWNoYmFyIHdpZSBpbW1lci4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClphdWJlcmVyIHNpbmQgZG9jaCBudXIgYmVzc2VyZSBLYXJhdGVrYSAoTWNkZWUsIDExLiBKYW4gMjAwOCwgMjM6MTI6MzUpOgpgYENhc3R5JycgRWxhZHJpZWwgbWFjaHQgZWluIHBhYXIgYmVzY2h3b2VyZW5kZSBHZXN0ZW4gdWViZXIgZGVtIEdpLgpEZXIgR2kgYmxpdHp0IGt1cnogZ3J1ZW5saWNoIGF1Zi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQYXNzd29ydC1TcGVpY2hlcnVuZyAoR2xvaW5zb24sIDEyLiBKYW4gMjAwOCwgMDA6MDQ6NTkpOgp+IyEgcm49WmVzc3RyYSBydD0xMjAwMDkwMjYxIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMjAwMDkwMjYxCj4gbWQ1IEhhc2hlcwoKLi4uIHNpbmQgbWlyIGVnYWwsIHNvbGFuZ2UgaWNoIGtlaW4gc3R1bm5lbCBiZW51dHplIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGVsIHNwcmljaHQgZXMgYXVzIChNZXNpcmlpLCAxMy4gSmFuIDIwMDgsIDAxOjQwOjA3KToKW0ZyZXVuZGU6SGlzYXN1bF0gaGF0IHdlciBuZW4gaW50LTQ/CkJsaXZpIGdyaW5zdC4KQmxpdmkgbmlja3QgenVzdGltbWVuZC4KW0ZyZXVuZGU6RGVsXSBHTk9NRQoqRyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdvVyBQb3JuIChBbmF0b2wsIDEzLiBKYW4gMjAwOCwgMjE6MDQ6MjQpOgp+IyEgb249QW5hdG9sIG90PTEyMDAyNTQ2NTggb2c9d3d3Cn4jISBybj1SdW1hdGEgcnQ9MTIwMDI1MjUyMCByZz13d3cKfiMhIHRpZD0xMTk5ODkzOTEyCkRlciBpc3QgJ2xpdmUnIHVuc2NobGFnYmFyLiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBzbyBhbGxlcyBpbiBkZW4gQXVmZ2FiZW5iZXJlaWNoIHZvbiBMYXJzIGZhZWxsdCAuLi4gKFNvaGEsIDE0LiBKYW4gMjAwOCwgMDA6MDM6MTYpOgoKSGludGVyIFRvZHMgUnVlY2tlbiBkcmVodCBMYXJzIGRpZSBTYW5kdWhyIHVtIHVuZCBzY2h1ZXR0ZWx0IHNpZSBoZWZ0aWcuCkR1IGhvZXJzdCBkaWUgVWhyIHNjaGxhZ2VuOiBFcyBpc3QgamV0enQgMCBVaHIuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFBhc3N3b3J0LVNwZWljaGVydW5nIChBbWFyeWxsaXMsIDE3LiBKYW4gMjAwOCwgMTA6Mjk6MjcpOgp+IyEgcm49SmltZGlncml6IHJ0PTEyMDA1MDUxNDUgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMjAwMDkwMjYxCkRhIGZhZWxsdCBtaXIgZWluOiBEZXIgS2V5bG9nZ2VyIGxhZXVmdCBqYSBpbW1lciBub2NoICpodXN0KiA7KQoKQW1hIndhciBlaW4gU2NoZXJ6InJ5bGxpcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFsIGdld2lubnQgbWFuLCBtYWwgdmVybGllcnQgbWFuIChPcmt0b2V0ZXIsIDIyLiBKYW4gMjAwOCwgMTc6MjI6NTEpOgpbQWJlbnRldWVyOlRydXBmIGVybGVybnRlIGRpZSBhcmthbmUgU3ByYWNoZSBkZXIgU2NodXBwZW5nZW1laW5zY2hhZnQuIER1cmNoCiAgICAgICAgICAgZGVuIEJld2VpcyB2b24gRGVtdXQgd3VyZGUgaWhtIFp1dHJpdHQgenVtIFNhbmN0dW0gZGVyCld5cm1wcmllc3RlcgogICAgICAgICAgIGdld2FlaHJ0Ll0KW0FiZW50ZXVlcjpPYmVycHJpZXN0ZXIgTSdTaGFycl0gU3NzZXJycnBlbnRpYSBUb3Jycm5hcnJyYSBsdXJycmggbmFwaCBUcnJydXBmCltBYmVudGV1ZXI6T2JlcnByaWVzdGVyIE0nU2hhcnJdIGRycnJha290YSB0ZXNzc2guIE11aG4ga2VsYmlycnIgV3lycnJtIGZpbmgKW0FiZW50ZXVlcjpPYmVycHJpZXN0ZXIgTSdTaGFycl0gcGhlc3NzLiBUaXJyciBkaHVsLgpbR3JhdHM6RGVyaW5dIGdyYWFhYXRzc3NzenpzcyEKW0dyYXRzOlRydXBmIGRhbmt0IGF1c2dlZ2xpY2hlbl0KW1RvZDpMYXJzXSBEaWUgZHVua2xlbiBTY2hhdHRlbiBIZWxzIGhhYmVuIGdlcmFkZSBUcnVwZiB1bWdlYnJhY2h0LgpbVG9kOkRpZSBkdW5rbGVuIFNjaGF0dGVuIEhlbHMgem9nZW4gVHJ1cGYgZHVyY2ggZWluIGdlb2VmZm5ldGVzIER1bmtlbHRvci5dCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM0NjkyOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChCb2luZywgMjMuIEphbiAyMDA4LCAxNjoxNTo0MSk6Cn4jISBybj1WZWN0b3IgcnQ9MTIwMTEwMTI1NiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTk4MjMyODI3OApEYXMgZ2VodCBuaWNodCwgZGEga2FubiBtYW4gZGFzIEdlc3ByYWVjaCBhdWZ6ZWljaG5lbiA6KQogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzQ2OTM6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKENyb2Z0LCAyMy4gSmFuIDIwMDgsIDE2OjE3OjI3KToKfiMhIHJuPUJvaW5nIHJ0PTEyMDExMDEzNDEgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQWgsIGRlciBUaHJlYWQgaXN0IHdpZWRlciBhbiBzZWluZW0gVXJzcHJ1bmcgYW5nZWxhbmd0LiAgSHVodSwgaWhyClNjaG1hcnJuLUxlc2VyIDotKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzNDY5NDogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoVmVjdG9yLCAyMy4gSmFuIDIwMDgsIDE2OjE4OjA1KToKfiMhIHJuPUNyb2Z0IHJ0PTEyMDExMDE0NDcgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKZnVlciB3ZWxjaGVzIHJlIGdhYnMgZWlnZW50bGljaCBkZW4gbGV0enRlbiBwcmVpcz86PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM0Njk1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChDcm9mdCwgMjMuIEphbiAyMDA4LCAxNjoxOTo0NCk6Cn4jISBybj1WZWN0b3IgcnQ9MTIwMTEwMTQ4NSByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApIbS4gRnVlciAxMjM0NTYgZ2FicyBzaWNoZXIgd2FzLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzNDY5NjogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoR2xvaW5zb24sIDIzLiBKYW4gMjAwOCwgMTY6Mjc6NDcpOgp+IyEgcm49Q3JvZnQgcnQ9MTIwMTEwMTU4NCByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApNZWluZW4gcHVibGljIGtleSBhdWYgUGFwaWVyPyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzNDY5NzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQ3JvZnQsIDIzLiBKYW4gMjAwOCwgMTY6MzI6MTApOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIwMTEwMjA2NyByZz1zY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAoxMjM0NTYgJiAxMjM0NTcgd2FyZW4gZGllIFdoaXNreS1NaW5pYXR1cmVuIHZvbiBtaXIgZGllIGFuIFJ1bWF0YSB1bmQKWmVzc3RyYSBnaW5nZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM0Njk4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChFbGpvLCAyMy4gSmFuIDIwMDgsIDE2OjM0OjU1KToKfiMhIHJuPUNyb2Z0IHJ0PTEyMDExMDIzMzAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKV2llc28gZ2FicyBmdWVyIDEyMzQ1NyBhdWNoIHdhcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzNDY5OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQm9pbmcsIDIzLiBKYW4gMjAwOCwgMTY6MzU6NTMpOgp+IyEgcm49RWxqbyBydD0xMjAxMTAyNDk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkRpZSBGcmFnZSBrYW5uIERpciBpbiBkZXIgcmljaHRpZ2VuIFJ1YnJpayBiZXN0aW1tdCBiZWFudHdvcnRldCB3ZXJkZW4uCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzNDY5OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoQ3JvZnQsIDIzLiBKYW4gMjAwOCwgMTY6MzU6NTUpOgp+IyEgcm49RWxqbyBydD0xMjAxMTAyNDk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CldlaWwgaWNoIG5pY2h0IGJlaWRlIE1pbmlhdHVyZW4gYW4gZGVuIEdsZWljaGVuIHZlcnRlaWxlbiB3b2xsdGU/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM0Njk4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChaZXNzdHJhLCAyMy4gSmFuIDIwMDgsIDIwOjM1OjE0KToKfiMhIHJuPUNyb2Z0IHJ0PTEyMDExMDIzMzAgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKT2hqYSwgaWNoIGVyaW5uZXIgbWljaC4gV2FyIGxlY2tlci4gOi0pIE11c3MgbWljaCBtYWwgcmV2YW5jaGllcmVuLiA7LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM1OiBWb3JzY2hsYWcgenUgdG1oaXN0IChLcmVsbGphLCAyMy4gSmFuIDIwMDgsIDIxOjU4OjQzKToKfiMhIHJuPUFyYXRob3JuIHJ0PTEyMDExMjEzODcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMjAxMDk2MTc5CldpZXNvIGdld29laG5lbj8gRGF2b24gZ2VoZSBpY2ggZWlnZW50bGljaCBzY2hvbiBpbW1lciAoZC5oLiBzZWl0IGljaCBkYXMgTmV0egprZW5uZSkgYXVzLgpLcmVsbGphCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogU2VpbiBvZGVyIG5pY2h0IFNlaW4/IChIdW1uaSwgMjcuIEphbiAyMDA4LCAxNjoxMzowMCk6Cn4jISBybj1IdXBlbm1hcmllIHJ0PTEyMDE0NDY3NDYgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEyMDEzODY4MzQKQWxsZWluIGRlciBGbGF1c2NoZWRyYWNoZSBoYWV0dGUgRGljaCBqZXR6dCBuaWNodCBtZWhyIGxhbmdlIGxlYmVuIGxhc3Nlbi4uLgoKLSkKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNdWRkZXItRnJhdWVuIChFbm5veCwgMjcuIEphbiAyMDA4LCAxNzo0NDoxNik6ClZvbiBYeHh4OiBkYXMgYmVzdGU6IG1laW5lIGFuZ2ViZXRlIHN0b2VydCBzaWNoIG5pY2h0bWFsIGFtIG11ZGRlbgpBbiBYeHh4OiBkYXMgaXN0IGRhcyBiZXN0ZSB2b24gYWxsZW0KQW4gWHh4eDogZGFzIHNwYXJ0IGdhbnogdmllbGUgcHJvYmxlbWUKVm9uIFh4eHg6IGlocmUgZWluemlnZSB2b3JnYWJlOiAidmVyc3VjaCBpbSBiZXR0IHp1IHNlaW4sIGJldm9yClZvbiBYeHh4OiBpY2ggYXVmd2FjaGUiCgpTb2xjaGUgQW5nZWJldGVuIGJyYXVjaHQgZGFzIExhbmQuCgpNZXNpLCBoYXQgYXVjaCBzbyBlaW5lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTXVkZGVyLUZyYXVlbiAoTWFoYXJldCwgMjcuIEphbiAyMDA4LCAxNzo1Mzo1NCk6Cn4jISBybj1Fbm5veCBydD0xMjAxNDUyMjU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwMTQ1MjI1NgpHYXIgbmljaHQgd2FociwgaWNoIGVyd2FydGUgdWViZXJoYXVwdCBuaWNodCwgZGFzcyBkdSBpbSBCZXR0IGJpc3QsIHdlbm4gaWNoCmF1ZndhY2hlIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE11ZGRlci1GcmF1ZW4gKFRvZGllLCAyNy4gSmFuIDIwMDgsIDE4OjAwOjAzKToKfiMhIHJuPU1haGFyZXQgcnQ9MTIwMTQ1MjgzNCByZz1zY2htYXJybgp+IyEgdGlkPTEyMDE0NTIyNTYKRHUgZXJ3YXJ0ZXN0IGVzIHZpZWxsZWljaHQgbmljaHQsIGFiZXIgaWNoIHdpbGwgbmljaHQgd2lzc2VuIHdhcyBwYXNzaWVydCwKd2VubiBlciBuaWNodCBuZWJlbiBEaXIgbGllZ3QuIDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTXVkZGVyLUZyYXVlbiAoTWFoYXJldCwgMjcuIEphbiAyMDA4LCAxODowOTo0MSk6Cn4jISBybj1Ub2RpZSBydD0xMjAxNDUzMjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwMTQ1MjI1NgpEYW5uIGxpZWd0IGVyIGVudHdlZGVyIHNjaGxhZmVuZCBhdWYgZGVtIFNvZmEsIHNpdHp0IHNjaGxhZmVuZCBhdWYgZGVtIFNlc3NlbAp1bmQgcGVubnQgYmVpbSBLaW5kLiBFaHJsaWNoLCBlcyBpc3QgZXh0cmVtIHNlbHRlbiwgZGFzcyBlciBpbiB1bnNlcmVtIEJldHQKc2NobGFlZnQgdW5kIGljaCBiaW4gamVkZXNtYWwgaXJyaXRpZXJ0IGRhcnVlYmVyLCB3ZW5uIGVzIGRvY2ggbWFsIHBhc3NpZXJ0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNdWRkZXItRnJhdWVuIChNYWhhcmV0LCAyNy4gSmFuIDIwMDgsIDE4OjEwOjAxKToKfiMhIHJuPU1haGFyZXQgcnQ9MTIwMTQ1Mzc4MSByZz1zY2htYXJybgp+IyEgdGlkPTEyMDE0NTIyNTYKRGFzIGVyc3RlICJ1bmQiIHNvbGx0ZSBlaW4gIm9kZXIiIHNlaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogMjQuIEZlYiBCcnVuY2ggaW4gQmVybGluIChDcm9mdCwgMjkuIEphbiAyMDA4LCAwMDoyNzoxNyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjAxNTYyNzMxIHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEyMDE1NjI3MzEKRHUgcmVkZXN0IHdpcnIuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiAyNC4gRmViIEJydW5jaCBpbiBCZXJsaW4gKEdsb2luc29uLCAyOS4gSmFuIDIwMDgsIDAwOjI5OjA1KToKfiMhIHJuPUNyb2Z0IHJ0PTEyMDE1NjI4Mzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjAxNTYyNzMxCk5ldWlna2VpdGVuPyBQbGVhdGhlPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNlaW4gb2RlciBuaWNodCBTZWluPyAoQWxrb2hvbCwgMjkuIEphbiAyMDA4LCAxMjozMzozNik6Cn4jISBybj1BcmsgcnQ9MTIwMTU1MzI5NSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTIwMTM4NjgzNApqbyBtYW5jaGUgbmFtZW4gdmVycmF0ZW4gc2VociB2aWVsIHVlYmVyIGRpZSBQZXJzb24gZGFoaW50ZXIgOikKCkFsawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2VpbiBvZGVyIG5pY2h0IFNlaW4/IChCcnpmdHRsLCAzMC4gSmFuIDIwMDgsIDEwOjM3OjIxKToKfiMhIHJuPUFsa29ob2wgcnQ9MTIwMTYwNjQxNiByZz1zY2htYXJybgp+IyEgdGlkPTEyMDEzODY4MzQKRmluZGUgaWNoIGF1Y2guLi4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogUG9zdGVyIChab29rLCAzMC4gSmFuIDIwMDgsIDEwOjUxOjQ2KToKfiMhIHJuPVJ1bWF0YSBydD0xMjAxNjg2NjQ2IHJnPW9lZmZlbnRsaWNoa2VpdHNhcmJlaXQKfiMhIHRpZD0xMjAxNjUxMjQwClRzLCBSdW1hdGEgd2lyZCBhdXNnZXNwZXJydC4gOykgRGllIHdlcmRlbiBzY2hvbiB3aXNzZW4gd2FydW0uCgpaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3aWUgc3Bhbm5lbmQuLi4uIDopIChOaWNvbGFpLCAgMS4gRmViIDIwMDgsIDAxOjIwOjA1KToKZGVyIG5hZWNoc3RlIEFCTS10aHJlYWQsIHdhcyBzaW5kIGRlbm4gc28gZGllIHdpY2h0aWdzdGVuCmFsaWFzc2U/IGljaCBsZWcgbWFsIHZvciBtaXQ6CmFsaWFzICAtdHIgICAgPSB0ZWFtIHJ1ZmUgJCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBQb3N0ZXIgKEVsam8sICAxLiBGZWIgMjAwOCwgMDE6MjE6MTIpOgp+IyEgcm49Wm9vayBydD0xMjAxNjg2NzA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwMTY1MTI0MApEYXVlcnQgenUgbGFuZ2U6CgphbGkgdHIgPSB0ZWFtIHJ1ZmUgJCoKCgpXZXIgaGF0IHNjaG9uIFplaXQgZnVlciBlaW4gLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFBvc3RlciAoRWxqbywgIDEuIEZlYiAyMDA4LCAwMToyMjo1Nik6Cn4jISBybj1FbGpvIHJ0PTEyMDE4MjUyNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjAxNjUxMjQwCkFiZXIgbWFuIHdpY2h0aWdzdGVzIGlzdDoKCmFsaSB1ID0gdW50ZXJzdWNoZSAkKiAKCjstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFBvc3RlciAoQXJrLCAgMS4gRmViIDIwMDgsIDAxOjI4OjQ4KToKfiMhIHJuPUVsam8gcnQ9MTIwMTgyNTM3NiByZz1zY2htYXJybgp+IyEgdGlkPTEyMDE2NTEyNDAKSXN0IGRhcyBhbGkgbmljaHQgZWluIHdlbmlnIGRhZW1saWNoPyA6KQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBQb3N0ZXIgKEVsam8sICAxLiBGZWIgMjAwOCwgMDE6Mjk6MDUpOgp+IyEgcm49QXJrIHJ0PTEyMDE4MjU3Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xMjAxNjUxMjQwCkRhZW1saWNoIG5pY2h0LCBhYmVyIHVubm9ldGlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFBvc3RlciAoTmljb2xhaSwgIDEuIEZlYiAyMDA4LCAwMTo0MTowOSk6Cn4jISBybj1FbGpvIHJ0PTEyMDE4MjUyNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjAxNjUxMjQwCmR1IGhhc3QgZGVuIHNpbm4gbmljaHQgZ2FueiB2ZXJzdGFuZGVuOikKdHIgaXN0IGViZW5mYWxsZSB0ZWFtIHJ1ZmUgJCoKZGFzIGFsaWFzIHZvbiAtdHIgdmVyaGluZGVydCwgZGFzcyBlaW4gdGVhbSBydWZlCmF1ZiBkZXIgdHJ2ZXMtZWJlbmUgbGFuZGV0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogUG9zdGVyIChLZXNzYSwgIDEuIEZlYiAyMDA4LCAwMjoxODoyNik6Cn4jISBybj1FbGpvIHJ0PTEyMDE4MjUzNzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjAxNjUxMjQwCkRhIGhhdCB3b2hsIGplZGVyIHNlaW5lIFZvcnN0ZWxsdW5nZW4uIEVyaW5uZXJ0IG1pY2ggZ3JhZCB3aWVkZXIgZGFyYW4sIHdpZQppY2ggbWFsIGVpbmVuIEthZW1wZmVyZnJldW5kIGVpbmxvZ2dlbiBkdXJmdGUsIGRlciBncmFkIHNlbGJlciBrZWluZSBaZWl0CmhhdHRlLCB1bSBzY2huZWxsIGZ1ZXIgZWluZW4gVHJ2ZXMtS29sbGVnZW4gd2FzIGZ1ZXJzIERlbmttYWwgenUgc3BlbmRlbi4gSWNoCnNwZW5kZXRlIGJyYXYgdW5kIHdvbGx0ZSBpaG4gZGFubiB6dW0gQWJzY2hpZWQga251ZGRlbG4sIG1pdCAna24nLiBJY2ggaGFiIGphCmtlaW5lbiBLYWVtcGZlciwgc29uc3Qgd2FlcmUgbWlyIGtsYXIgZ2V3ZXNlbiwgd2FzIGRhbm4gcGFzc2llcnRlIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogUG9zdGVyIChHbG9pbnNvbiwgIDEuIEZlYiAyMDA4LCAwNTo1MToyNSk6Cn4jISBybj1FbGpvIHJ0PTEyMDE4MjUzNzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjAxNjUxMjQwCiBleCAgICAgPSB1bnQgJCoKIGwgICAgICA9IHNjaGF1ZSAkKgoKV2VubiBpaHIgZGFzIG5pY2h0IGhhYnQsIGhhYnQgaWhyIG5pY2h0IGluIE5GIGFuZ2VmYW5nZW4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogUG9zdGVyIChCb2luZywgIDEuIEZlYiAyMDA4LCAxMTo1Mjo1Mik6Cn4jISBybj1HbG9pbnNvbiBydD0xMjAxODQxNDg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwMTY1MTI0MApNZWluZSB3aWNodGlnc3RlbjoKIHNheSAgICA9IHNhZyAkKgogdGVsbCAgID0gZXJ6YWVobCAkKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFBvc3RlciAoR2xvaW5zb24sICAxLiBGZWIgMjAwOCwgMTI6MjY6MDIpOgp+IyEgcm49Qm9pbmcgcnQ9MTIwMTg2MzE3MiByZz1zY2htYXJybgp+IyEgdGlkPTEyMDE2NTEyNDAKTmEgZ3V0LgoKIHRlbGwgICA9IHRlaWxlICQxIG1pdCAkMioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogUG9zdGVyIChHcmltbWJvcm4sICAxLiBGZWIgMjAwOCwgMTM6MDU6MzgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIwMTg2NTE2MiByZz1zY2htYXJybgp+IyEgdGlkPTEyMDE2NTEyNDAKV2ljaHRpZyBpc3QgbmF0dWVybGljaDoKIDEgICAgICA9IHNhZyBFSU5TUFJVQ0ghIAoKQW5zb25zdGVuIGhhZW5ndCBkYSBuZSBnYW56ZSBNZW5nZSBzZW50aW1lbnRhbGVzIFpldWNoIHJ1bS4gQWxpYXNlIGF1cyAxNApKYWhyZW4uIDotKQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTGljaHRrdWdlbG4gKE9ya3RvZXRlciwgIDEuIEZlYiAyMDA4LCAxNDowMTowNSk6Cn4jISBybj1Cb2luZyBydD0xMjAxODcwNDM3IHJnPWdpbGRlbi5hYmVudGV1cmVyCn4jISB0aWQ9MTIwMTg3MDQzNwpBYmVyIEJvKGU/KWluZywgZHUgaGFzdCBkb2NoIG5pY2h0IGV0d2EgYW4gZGVtIGdlbmlhbGVuIHVuZCBwZXJmZWt0CmF1c2JhbGFuY2llcnRlbiBMaWNodHMgLi4uIExpY2h0c3kgLi4uIGR1LXdlaXNzdC1zY2hvbiBnZWRyZWh0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBMaWNodGt1Z2VsbiAoWm9vaywgIDEuIEZlYiAyMDA4LCAxNjoxOTozOCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTIwMTg3MDg2NSByZz1zY2htYXJybgp+IyEgdGlkPTEyMDE4NzA0MzcKaWxuID0gJCo6aXN0IGxpZWIgdW50IG5ldHQuCgp6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBMaWNodGt1Z2VsbiAoWm9vaywgIDEuIEZlYiAyMDA4LCAxNjoyMDowNCk6Cn4jISBybj1ab29rIHJ0PTEyMDE4NzkxNzggcmc9c2NobWFycm4KfiMhIHRpZD0xMjAxODcwNDM3CnRzLiB3aWUga2FtIGRlbiBvcmt0IGRhendpc2NoZW4/IHoKbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTGljaHRrdWdlbG4gKENoYWdhbGwsICAxLiBGZWIgMjAwOCwgMTY6MjA6MjYpOgp+IyEgcm49Wm9vayBydD0xMjAxODc5MjA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwMTg3MDQzNwpXYWhyc2NoZWlubGljaCBzbyB3aWUgZGVyIFR5cG8uIFN0aWxsIHVuZCBoZWltbGljaC4KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBMaWNodGt1Z2VsbiAoT3JrdG9ldGVyLCAgMS4gRmViIDIwMDgsIDE2OjMwOjA5KToKfiMhIHJuPVpvb2sgcnQ9MTIwMTg3OTIwNCByZz1zY2htYXJybgp+IyEgdGlkPTEyMDE4NzA0MzcKRHUgaGFzdCBnZXpvb2tlbHQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IExpY2h0a3VnZWxuIChab29rLCAgMS4gRmViIDIwMDgsIDE2OjQ1OjU5KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjAxODc5ODA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwMTg3MDQzNwpEdSBzcGllbHN0IGRvY2ggZ2FyIG5pY2h0IG1laHIsIHdpZSBrYW0gZGEgRGVpbiBBcnRpa2VsCmRhendpc2NoZW4/IFRzLiBab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTGljaHRrdWdlbG4gKEd3ZW4sICAxLiBGZWIgMjAwOCwgMTY6NDk6MDApOgp+IyEgcm49Wm9vayBydD0xMjAxODgwNzU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwMTg3MDQzNwpXZWlsIER1IGVpbmRldXRpZyBpbiBkZXIgZmFsc2NoZW4gUnVicmlrIHNjaG1hcnJzdC4KR3dlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBvbGl0aWtlci4uIChPcmt0b2V0ZXIsICAxLiBGZWIgMjAwOCwgMTc6MDg6MjQpOgpFcnN0IGRlciBBZXJnZXIgbWl0IGRlciBTdGFhdHNhbndhbHRzY2hhZnQgdW5kIGRhbm4gZGllc2VyIEtvbW1lbnRhcjoKRGVyIFBhcmxhbWVudGFyaWVyIEtvZW5pZ3Nob2ZlbiBoYXR0ZSBkaWUgRWlubGFkdW5nZW4gaW0gdmVyZ2FuZ2VuZW4gSmFociBhbHMKImluIHZpZWxlbiBVbnRlcm5laG1lbiB1ZWJsaWNoIiBiZXplaWNobmV0LiBEYSBzZWluZSBGcmF1IG1pdCBpbiBCdWRhcGVzdApnZXdlc2VuIHNlaSwga29lbm5lIHZvbiBlaW5lciAiTHVzdHJlaXNlIiBrZWluZSBSZWRlIHNlaW4uIChkZHApCgpPYiBudW4gZGFoZWltIGRhcyBOdWRlbGhvbHogd2FydGV0PyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQmxpbmRlbmZyZXVuZGxpY2hlciBTcGFtc2NodXR6IHZvbiBXZWItRm9ybXVsYXJlbiAoR2xvaW5zb24sICAxLiBGZWIgMjAwOCwgMTc6Mzk6MDkpOgp+IyEgcm49SW5udWVuZG8gcnQ9MTIwMTg3NzQyNiByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEyMDE3OTM0ODgKRGFzIGlzdCBpbiBkZW0gRmFsbCBudXIgZ3V0IGZ1ZXIgZGljaC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2llIHNwYW5uZW5kLi4uLiA6KSAoU2t5LCAgMS4gRmViIDIwMDgsIDE5OjI1OjI3KToKfiMhIHJuPU5pY29sYWkgcnQ9MTIwMTgyNTIwNSByZz1zY2htYXJybgp+IyEgdGlkPTEyMDE4MjUyMDUKIGdyICAgICA9IDpncnVuenQgJCogYW4uIyQqI2dydW56dCBEaWNoIGFuLiNEdSBncnVuenQgJCogYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHdpZSBzcGFubmVuZC4uLi4gOikgKE1haGFyZXQsICAxLiBGZWIgMjAwOCwgMjA6MDg6NTQpOgp+IyEgcm49U2t5IHJ0PTEyMDE4OTAzMjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjAxODI1MjA1CmRyb2xsaSA9IC1hIEFoLCBkZXIgdG90ZSBUYXVzZW5mdWVzc2xlciBtaXQgcmF1c2dlc3RyZWNrdGVyIFp1bmdlIG5lYmVuIHNlaW5lbQpQaW5rZWxiYWV1bWNoZW4gbGllZ2VuZCwgZGFzIGxldHp0ZSBCZWluY2hlbiBub2NoIGFuZ2V6b2dlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHN0YXRpc3Rpa2VuIChBbGtvaG9sLCAgNS4gRmViIDIwMDgsIDE3OjQ0OjA1KToKfiMhIHJuPUtlc3NhIHJ0PTEyMDIyMDk0ODUgcmc9b2VmZmVudGxpY2hrZWl0c2FyYmVpdAp+IyEgdGlkPTEyMDIxMzMyOTgKZGFzIHdhZXIgYWJlciBlY2h0IGRhcyBlcnN0ZSBtYWwsIGRhc3MgZXMgbmljaHQgYmVpIHNjaG9uIGVudHNjaGllZGVuZW4gZGluZ2VuCmR1cmNoYXVzIGF1c3NjaHdlaWZlbmRlIHVuZCBzaW5ubG9zZSBkaXNrdXNzaW9uZW4gaW4gZGVyIG1wYSBnaWJ0LiAKCkFsa2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAxdGVzIFN0dXR0Z2FydGVyIEludGVyTVVELVRyZWZmZW4gKEdsb2luc29uLCAgOC4gRmViIDIwMDgsIDE3OjE2OjMzKToKfiMhIHJuPVRhc3NyYW0gcnQ9MTIwMjQ3NjMzNiByZz1wYXJ0eS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTIwMjQ3NjMzNgpUeXBvLiBBbnN0YXR0IAo+IERpZSBNdWRnZW1laW5zY2hhZnQgaW4gRGV1dHNjaGxhbmQgd2lyZApzb2xsdGUgZXMgYmVzc2VyCj4gRGllIE11ZGdlbWVpbnNjaGFmdCBpbiBVbml0b3BpYSB3aXJkCmhlaXNzZW4uIEFsbGVzIGFuZGVyZSBrbGluZ3QgZG9jaCBhcmcgenUgYXVmb3BmZXJuZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IDF0ZXMgU3R1dHRnYXJ0ZXIgSW50ZXJNVUQtVHJlZmZlbiAoSHVtbmksICA4LiBGZWIgMjAwOCwgMTg6MTk6NTgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIwMjQ4NzM5MyByZz1zY2htYXJybgp+IyEgdGlkPTEyMDI0NzYzMzYKSGFsdGUgaWNoIGZ1ZXIgZWluIEdlcnVlY2h0LiBJY2ggYmluIG1pciBzaWNoZXIsIGRhc3MgZGllIEF1c3NhZ2UsIHNvIHdpZSBzaWUKZGEgc3RlaHQsIHZvZWxsaWcga29ycmVrdCBpc3QuIE9kZXIgc2luZCBkaWUgTGV1dGUgYXVzIGRlbSBNRywgVW5pdG9waWEsLi4uCmFsbGUgaW4gZWluIE11ZCBhYmdld2FuZGVydCwgZGFzIGljaCBuaWNodCBrZW5uZT8KCkh1bW5pClBTOiBFcyBrbGluZ3QgaW4gamVkZW0gRmFsbCBpbnRlcmVzc2FudCwgdW5kIGljaCB1ZWJlcmxlZ2UgZXJuc3RoYWZ0LApkYWhpbnp1a29tbWVuLCB3ZW5uIGRhIG5pY2h0IHVuc2VyZSBTb21tZXJwYXJ0eSBpc3QsIGRpZSB3aXIgbmljaHQgZGVzdG8gdHJvdHoKbWFjaGVuIHNvbGx0ZW4gdW5kIHVlYmVyaGF1cHQgdW5kIHNvd2llc28gdW5kIG11c3MgamEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAxdGVzIFN0dXR0Z2FydGVyIEludGVyTVVELVRyZWZmZW4gKEJvaW5nLCAgOC4gRmViIDIwMDgsIDE4OjIwOjMyKToKfiMhIHJuPUh1bW5pIHJ0PTEyMDI0OTExOTggcmc9c2NobWFycm4KfiMhIHRpZD0xMjAyNDc2MzM2CkljaCBmaW5kZSBlcyBhdWNoIG5lIGd1dGUgU2FjaGUgdW5kIHdlcmRlIHZlcnN1Y2hlbiB6dW1pbmRlc3QgYW0gRnJlaXRhZwpkYSB6dSBzZWluLiBVbmQgbWVpbiBBcnRpa2VsIHN0ZWh0IGluIGRlciBmYWxzY2hlbiBSdWJyaWsuCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IDF0ZXMgU3R1dHRnYXJ0ZXIgSW50ZXJNVUQtVHJlZmZlbiAoWmVzc3RyYSwgIDguIEZlYiAyMDA4LCAyMTowNTozMik6Cn4jISBybj1Cb2luZyBydD0xMjAyNDkxMjMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwMjQ3NjMzNgpJY2gga2FubiBtb21lbnRhbiB6dSBmYXN0IGtlaW5lbiB0ZXJtaW5lbiB2aWVsIHNhZ2VuLCBhYmVyIGljaCB3dWVyZGUgbWljaApmcmV1ZW4sIHdlbm4gaWNoIGhpbmZhaHJlbiBrYW5uLiBNYWwgc2NoYXVlbiwgd2llIGRpZSBuYWVjaHN0ZW4gV29jaGVuIGJlaSBtaXIKdmVybGF1ZmVuLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogMXRlcyBTdHV0dGdhcnRlciBJbnRlck1VRC1UcmVmZmVuIChHbG9pbnNvbiwgMTAuIEZlYiAyMDA4LCAwMTo0Mjo1Nik6Cn4jISBybj1IdW1uaSBydD0xMjAyNDkxMTk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwMjQ3NjMzNgp0ZWlsZSBnbG9pbnNvbiBtaXQgNyM1MzUyNDUyYXNmaGZzZ3ZGU0YKVW0gZGllIEF1c3NhZ2UgZ2VodCBlcyBuaWNodCwgZGFzcyBkaWUgQW56YWhsIGRlciBNdWRkZXIgc2NocnVtcGZ0LCBzdGVsbGUgaWNoCm5pY2h0IGluIEZyYWdlLgoKQWJlciBkZW4gU2NobHVzcywgZGFzcyAiRGVzd2VnZW4iIFVuaXRvcGlhIGJlc2NobG9zc2VuIGhhdCwgZGllICJUcmVmZmVuIGF1Y2gKZnVlciBhbGxlIGFuZGVyZW4gTXVkcyB6dSBvZWZmbmVuIiwgZGVuIGhhbHRlIGljaCBmdWVyIGZlaGxlcmhhZnQuIEFsc28gaGFiZQppY2ggbWFsIGRpZSBWb3JhdXNzZXR6dW5nIHZlcmFlbmRlcnQuCgpBbmRlcnMgZ2VmcmFndDogR2FiIGVzIGJlaSBkZW4gTUctUGFydGllcyBiaXNoZXIgZWluZW4gQXVzc2NobHVzcyBhbmRlcmVyCk11ZGRlcj8gVm9uIGRlciBMb2dpc3RpayBkZXMgIkNoYXIgZXJzdGVsbGVuIiBhYmdlc2VoZW4/IFdhcmVuIGFuZGVyZSBNdWRkZXIKdW53aWxsa29tbWVuPwoKS2xhciwgaWNoIGZpbmRlIGRpZSBvZWZmZW50bGljaGUgVmVya3VlbmR1bmcgZGVyIFBhcnR5IGluIE9yZG51bmcuIFNvd2FzIGhhYmVuCndpciBGcmVtZHNwaWVsZXIgamEgZnJ1ZWhlciBhdWNoIGluIGFuZGVyZW4vdW5zZXJlbiBlaWdlbnRsaWNoZW4gTVVEcwpiZXRyaWViZW4uIE1pY2ggc3RvZXJ0IGRpZSBGb3JtdWxpZXJ1bmcuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbWFyeWxsaXMsIDEwLiBGZWIgMjAwOCwgMTg6NDc6MjQpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBTY2huZWVsZW9wYXJkc10gRWluaWdlbiB3aXIgdW5zIGF1ZiB1bmVudHNjaGllZGVuLApbTW9lcmRlcjpHZWlzdCBlaW5lcyBTY2huZWVsZW9wYXJkc10gR29yZHVyPwpbTW9lcmRlcjpHb3JkdXJdIE8uSy4KW1RvZDpMYXJzXSBFaW4gc3RhcmtlcyBSZW4obil0aWVyIGhhdCBnZXJhZGUgR29yZHVyIHVtZ2VicmFjaHQuCltUb2Q6RWluIHN0YXJrZXMgUmVuKG4pdGllcl0gSmluZ2xlIEJlbGxzLCBKaW5nbGUgQmVsbHMsIEppbmdsZSBhbGwgdGhlIHdheS4uLgpbVG9kOkVpbiBzdGFya2VzIFJlbihuKXRpZXJdICp0cmFlbGxlcioKCkFtYSouIGtpY2hlcm5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCYWJ5c2Nod2ltbWVuIG1hbCBhbmRlcnMgKEdsb2luc29uLCAxNS4gRmViIDIwMDgsIDEzOjI4OjI0KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEyMDMwNzgyODQgcmc9d3d3Cn4jISB0aWQ9MTIwMzA3Nzk5MQpIYXN0IGR1IG5pZSAiQSBiZWF1dGlmdWwgbWluZCIgZ2VzZWhlbj8gRWx0ZXJuIG1pdCBXYWhudm9yc3RlbGx1bmdlbiBzaW5kCmhhZXVmaWcgdW5kIEJhZGV3YW5uZW4gc3RlaGVuIGluIGplZGVyIFdvaG51bmcgaGVydW0uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQmFieXNjaHdpbW1lbiBtYWwgYW5kZXJzIChNYWhhcmV0LCAxNS4gRmViIDIwMDgsIDEzOjMzOjQ5KToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMDMwNzg1MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjAzMDc3OTkxCklociBmYWhydCBuaWUgaW4gVXJsYXViLCB3byBlcyBTZWVuIGdpYnQ/IEdlaHQgbmllIGlucyBTY2h3aW1tYmFkPyBEYW5uIGlzdApkYXMgbmF0dWVybGljaCB2b2VsbGlnIGlycmVsZXZhbnQgZnVlciBldWNoLCBrbGFyLiBBYmVyIGljaCB3YXIgc2Nob24gWmV1Z2UKdm9uIGZyaXNjaCBlcnRydW5rZW5lbiBLaW5kZXJuLCBkYXMgaXN0IG5lIEZyYWdlIHZvbiBzZWhyIHdlbmlnZW4gTWludXRlbiwgZGllCm1hbiBtYWwgYWJnZWxlbmt0IGlzdC4gVW5kIG1hbiBoYXQgbGVpZGVyIG5pY2h0IGltbWVyIEdsdWVjay4gTWlyIHdhZXJlIGVzIGRhcwp3ZXJ0LCBlaW5mYWNoIGV0d2FzIG1laHIgWmVpdCB6dSBnZXdpbm5lbi4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBCYWJ5c2Nod2ltbWVuIG1hbCBhbmRlcnMgKEdsb2luc29uLCAxNi4gRmViIDIwMDgsIDIyOjI2OjU4KToKfiMhIHJuPU1haGFyZXQgcnQ9MTIwMzE5NjgyNSByZz13d3cKfiMhIHRpZD0xMjAzMDc3OTkxCldpciBoYWJlbiBkYSBub2NoIGlyZ2VuZHdvIGVpbmUgU3ByaXR6cGlzdG9sZSwgZGFtaXQga2FubnN0IGR1IGRlaW4gS2luZCBkdXJjaApkaWUgV29obnVuZyBzY2hldWNoZW4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBGcmVpYmllciAoR2xvaW5zb24sIDE3LiBGZWIgMjAwOCwgMTM6MjA6MTcpOgp+IyEgcm49VmFuaW9uIHJ0PTEyMDMyNTA3NDEgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMjAzMTk0MDYyCkVYLVRFUi1NSS1OQVRFPyA7KQoKSWNoIGtvZW5udGUgYW5nZWZpeHQgd2VyZGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW1hcnlsbGlzLCAxNy4gRmViIDIwMDgsIDIxOjEzOjA0KToKW1NlaGVyOlRpYmVyaWFuXSBrYW5uIG1pciBqZW1hbmQgYXVzIGRlciB3YXNzZXJlYmVuZSByYXVzaGVsZW4/IGljaCBiaW4gZmFzdApbU2VoZXI6VGliZXJpYW5dIHRvdApbVG9kOkxhcnNdIEVpbiBXYXNzZXJlbGVtZW50YXIgaGF0IGdlcmFkZSBUaWJlcmlhbiB1bWdlYnJhY2h0LgoKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClp3ZXJnZSBzaW5kIGRvb2YgdW5kIC4uLmtsYXVlbiEgKFJvbmRhLCAxNy4gRmViIDIwMDgsIDIzOjMyOjA2KToKClN0ZWh0IHp1bWluZGVzdCBoaWVyOgpodHRwOi8vd3d3LnRoZXJlZ2lzdGVyLmNvLnVrLzIwMDgvMDEvMjMvZHdhcmZfY29hY2hfcm9iYmVyaWVzLwoKLi4uIG5ldHQgc2luZCBhdWNoIGRpZSBLb21tZW50YXJlLiBVbmQgaW0gQXJ0aWtlbCBkaWUgdmVyc2NoaWVkZW5lbiBWYXJpYW50ZW4sCiJad2VyZyIgenUgdW1zY2hyZWliZW4uLi4KClJvbmRhCgpQczogR2VrbGF1dCBiZWkgQnJ1Y2UgU2NobmVpZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogc3RhdGlzdGlrZW4gKEh1bW5pLCAyMC4gRmViIDIwMDgsIDE3OjQyOjAwKToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMDM1MjExMTUgcmc9b2VmZmVudGxpY2hrZWl0c2FyYmVpdAp+IyEgdGlkPTEyMDIxMzMyOTgKVkwtZnJlaWUgWmVpdC4uLgoKSGloaS4uLgoKSHVtbmksIG11c3N0ZSBrdXJ6IG5hY2hkZW5rZW4gdW5kIGZhbmQgc2VpbmUgZXJzdGUgQXNzb3ppYXRpb24gbm9jaCBiZXNzZXIgYWxzCmRpZSB3b2hsIGZha3Rpc2NoZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBzdGF0aXN0aWtlbiAoR2xvaW5zb24sIDIwLiBGZWIgMjAwOCwgMTc6NDg6MDcpOgp+IyEgcm49SHVtbmkgcnQ9MTIwMzUyNTcyMCByZz1zY2htYXJybgp+IyEgdGlkPTEyMDIxMzMyOTgKUkwtZnJlaWUgWmVpdC4gTmEgZ3V0IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IFBvc3RlciAoR2xvaW5zb24sIDIxLiBGZWIgMjAwOCwgMjI6Mjk6MjMpOgp+IyEgcm49TWVzaXJpaSBydD0xMjAzNjI4NTIxIHJnPW9lZmZlbnRsaWNoa2VpdHNhcmJlaXQKfiMhIHRpZD0xMjAxNjUxMjQwCiJNb3JnZW5ncmF1ZW4gLSBlcGlzY2hlciBhbHMgZGFzIE5pYmVsdW5nZW5saWVkIgoiTW9yZ2VuZ3JhdWVuIC0gbmFja2lnZXIgYWxzIEtyaXN0YW5uYSBMb2tlbiIiCiJNb3JnZW5ncmF1ZW4gLSBzcGFubmVuZGVyIGFscyBUb20gR2VyaGFyZHQiCiJNb3JnZW5ncmF1ZW4gLSBtaXQgU2llZ2ZyaWVkIHNlaXQgMTk5NCIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogUG9zdGVyIChIdW1uaSwgMjIuIEZlYiAyMDA4LCAxNjo0ODoyMSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjAzNjI5MzYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwMTY1MTI0MAoiTW9yZ2VuZ3JhdWVuIC0gd2llIEdvdHQgdW5zIHNjaHVmIiAoZ2FueiBrbGVpbmUgRnVzc25vdGUgaGludGVyIEdvdHQsIFRleHQ6CkpvZiA7LSkgKQoiTW9yZ2VuZ3JhdWVuIC0gaG9sIERpciB1bXNvbnN0IGRlbiB2aXJ0dWVsbGVuIFRyaXBwZXIiCiJNb3JnZW5ncmF1ZW4gLSB1bXNvbnN0IHVuZCBtaXQgU2V4IC0gZ2FueiBvaG5lIFBpeGVsbWFlbm5jaGVuIgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogYXJ0aWtlbCAgTmV4dCBVcmkgR2VsbGVyIC0gd2llIGxhZWNoZXJsaWNoIChab29rLCAyNS4gRmViIDIwMDgsIDExOjM2OjA3KToKfiMhIG9uPVpvb2sgb3Q9MTIwMzkzNTU2OCBvZz13d3cKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEyMDM5MzUyOTMgcmc9d3d3Cn4jISB0aWQ9MTIwMzc5MzE1MAo+IGZpbmdlciBiYW1idWxrbwooLi4uKQpNYWdpZXJsZXZlbDogMjUgKFJlZ2lvbnNtaXRhcmJlaXRlcikKKC4uLikKCldlciB2ZXJkdW1tdCB3ZW4/CgpaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcmRrdW5kZSBVbmdlbnVlZ2VuZCEgKE9ya3RvZXRlciwgIDIuIE1hciAyMDA4LCAwMjowMjoxNSk6ClZpZXIgVG90ZSBkdXJjaCBPcmthbiBpbiBPZXN0ZXJyZWljaAoKV2llbiAtIEluIE9lc3RlcnJlaWNoIHNpbmQgbWluZGVzdGVucyB2aWVyIE1lbnNjaGVuIGR1cmNoIGRlbiBPcmthbiBFbW1hIHVtcwpMZWJlbiBnZWtvbW1lbiwgZGFydW50ZXIgendlaSBVcmxhdWJlciBhdXMgRGV1dHNjaGxhbmQuIExhdXQKTmFjaHJpY2h0ZW5hZ2VudHVyIEFQQSBzdGFyYiBlaW4gNzcgSmFocmUgYWx0ZXIgZGV1dHNjaGVyIFRvdXJpc3QgaW4gVGlyb2wsCmFscyBlaW4gQmF1bSBhdWYgc2VpbiBBdXRvIGtyYWNodGUuIFNlaW5lIDY3LWphZWhyaWdlIEZyYXUgZXJsaXR0Cktub2NoZW5icnVlY2hlLiBFYmVuZmFsbHMgaW4gVGlyb2wga2FtIGF1ZiBlaW5lbSBDYW1waW5ncGxhdHogZWluIDY5LUphZWhyaWdlcgphdXMgZGVtIFJhdW0gRnJpZWRyaWNoc2hhZmVuIHVtcyBMZWJlbi4gWnV2b3Igd2FyZW4gaW4gQmF5ZXJuIGVpbgpNb3RvcnJvbGxlcmZhaHJlciB1bmQgaW0gV2VzdGVyd2FsZCBlaW4gTWFubiB1bXMgTGViZW4gZ2Vrb21tZW4sIGFscyBlaW4gQmF1bQphdWYgZGFzIEF1dG8gc3R1ZXJ6dGUuIChkcGEpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHZWhlaW1lIExpc3RlIChPcmt0b2V0ZXIsICAyLiBNYXIgMjAwOCwgMTU6NDA6MjApOgpTZWl0IGdld2FybnQsIGlociwgZGllIGlociBkYSBzY3JpcHRldCB1bmQgZ2VzY3JpcHRlZCBoYWJ0IQoKV2llIGF1cyBnZXdvZWhubGljaCBndXQgdW50ZXJyaWNodGV0ZW4gS3JlaXNlbiB6dSBlcmZhaHJlbiB3YXIsIGlzdCBlcyBkZW0KU2hlcmlmZiBnZWx1bmdlbiBlaW5lIExpc3RlIHZvbiBOYW1lbiB6dSBlcndlcmJlbi4gRGllc2UgTGlzdGUgZW50aGFlbHQgTmFtZW4Kdm9uIExldXRlbiBkaWUgZ2VzY3JpcHRldCBoYWJlbi4KCk9mZmVuYmFyIGlzdCBiZXJlaXRzIGVpbiBlcnN0ZXIgRmFsbCB1bnRlcnN1Y2h0IHVuZCBnZWFobmRldCB3b3JkZW4uIEljaCBrYW5uCm51ciBqZWRlbiBkZXIgZ2VzY3JpcHRldCBoYXQgd2FybmVuOiBCZXNzZXIgamV0enQgU2VsYnN0YW56ZWlnZSBzdGVsbGVuIHVuZAphdWYgZWluIG1pbGRlcyBVcnRlaWwgaG9mZmVuLCBhbHMgZGFubiBlcndpc2NodCB6dSB3ZXJkZW4gdW5kIG1pdCBkZXIgdm9sbGVuCnVuYmFybWhlcnppZ2VuIEhhZXJ0ZSBkZXMgR2VzZXR6ZXMgZ2V0cm9mZmVuIHp1IHdlcmRlbi4KCkRhaGVyOiBTZWxic3RhbnplaWdlIGpldHp0IQoKR2V6ZWljaG5ldDogRWluIGVjaHRlciBGcmV1bmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2VoZWltZSBMaXN0ZSAoUnVtYXRhLCAgMi4gTWFyIDIwMDgsIDE2OjM3OjMxKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjA0NDY4ODIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNDQ2ODgyMApFcyBnaWJ0IEdlcnVlY2h0ZSwgZGFzcyBkaWUgTGlzdGUgYmVyZWl0cyBhbiBhbmRlcmUgTXVkLUFkbWlucwp2ZXJzY2hlbmt0IHd1cmRlLgoKUnVtKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHZWhlaW1lIExpc3RlIChBbWFyeWxsaXMsICAyLiBNYXIgMjAwOCwgMTY6NDU6MTMpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEyMDQ0Njg4MjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA0NDY4ODIwCiJTZWl0IGdld2FybnQiLi4uIEF1Z2Vua3JlYnMgdmVyaGluZGVydCBsZWlkZXIgZWluIFdlaXRlcmxlc2VuIGRlcyBBcnRpa2Vscy4KVmllbGxlaWNodCBhdWNoIGd1dCBzbz9gCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdlaGVpbWUgTGlzdGUgKE9ya3RvZXRlciwgIDIuIE1hciAyMDA4LCAxNjo1NDo0Nyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTIwNDQ3MjcxMyByZz1zY2htYXJybgp+IyEgdGlkPTEyMDQ0Njg4MjAKIkF1Z2Vua3JlYnMiLi4uIGdpYnQgZGVyIG5lbiBLaWxsc3R1cHM/IDspCiAKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdlaGVpbWUgTGlzdGUgKFNoYWVlbmEsICAyLiBNYXIgMjAwOCwgMTc6MjI6MTIpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEyMDQ0NzMyODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA0NDY4ODIwCk5laW4sIGFiZXIgbWFuIGthbm4gd3VuZGVyYmFyIGRyYW4gdW5iZWF1ZnNpY2h0aWcgcGVyIFNrcmlwdAp1ZWJlbiwgZGFzIHNvbGx0ZXN0IERVIGRvY2ggd2lzc2VuLCBvZGVyPyA7LSkKClNoYWVlbmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEdlaGVpbWUgTGlzdGUgKE9ya3RvZXRlciwgIDIuIE1hciAyMDA4LCAxNzoyOTo0Myk6Cn4jISBybj1TaGFlZW5hIHJ0PTEyMDQ0NzQ5MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA0NDY4ODIwClVuZCBvYi4uLiBpY2ggaGFiZSBJZGVsbiBoaWVyIGluIG1laW5lbSBTY2hsb3NzIGF1ZiAyMDAlIGdlc2NyaXB0ZXQhCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogR2VoZWltZSBMaXN0ZSAoQWxrb2hvbCwgIDIuIE1hciAyMDA4LCAxNzozMDozMyk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTIwNDQ3NTM4MyByZz1zY2htYXJybgp+IyEgdGlkPTEyMDQ0Njg4MjAKbnVyIDIwMCUsIGR1IHNvbGx0ZXN0IGFuIGRlaW5lbSBza3JpcHQgYXJiZWl0ZW4KCkFsawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogR2VoZWltZSBMaXN0ZSAoT3JrdG9ldGVyLCAgMi4gTWFyIDIwMDgsIDE3OjMyOjE0KToKfiMhIHJuPUFsa29ob2wgcnQ9MTIwNDQ3NTQzMyByZz1zY2htYXJybgp+IyEgdGlkPTEyMDQ0Njg4MjAKV3VlcmRlIGljaCBqYSwgYWJlciBkYW1pdCB1bnRlcmJyZWNoZSBpY2ggZGFzIGlkbGVuLi4uCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVyZGt1bmRlIFVuZ2VudWVnZW5kISAoVmFuaW9uLCAgMi4gTWFyIDIwMDgsIDIyOjU3OjEwKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjA0NDE5NzM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNDQxOTczNQpBbHNvIHdlbm4gZXMgZGljaCB0cm9lc3RldC4gQmVpIFBybzcgd2FyZW4gZXMgdmllciBUb3RlIGluIERldXRzY2hsYW5kIHVuZCBlaW4KcGFhciBiZWRydWVja2VuZGUgQmlsZGVyIHZvbSBXaWVuZXIgQmFobmhvZi4gV2VuaWdzdGVucyBkaWUgQmlsZGVyIGF1cyBQb2xlbgp3dXJkZW4gbmljaHQgbWl0ICJPc3Rwcm92aW56ZW4iIHVudGVydGl0ZWx0LgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHZWhlaW1lIExpc3RlIChHbm9tZSwgIDMuIE1hciAyMDA4LCAxNDo0NzozMik6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTIwNDQ2ODgyMCByZz1zY2htYXJybgp+IyEgdGlkPTEyMDQ0Njg4MjAKZGVpbiBlcnN0ZXIgbHVzdGlnZXIgdW5kIGdsZWljaHplaXRpZyB1ZWJlcnJhc2NoZW5kIGd1dGVyIGJlaXRyYWcKc2VpdCBqYWhyZW4gaGllci4KZXMgZ2lidCBhbHNvIG5vY2ggaG9mZm51bmcuCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHZWhlaW1lIExpc3RlIChPcmt0b2V0ZXIsICAzLiBNYXIgMjAwOCwgMTg6Mzg6MDMpOgp+IyEgcm49R25vbWUgcnQ9MTIwNDU1MjA1MiByZz1zY2htYXJybgp+IyEgdGlkPTEyMDQ0Njg4MjAKQWxzbyB3ZW5uIGRlaW4gQXJ0aWtlbCBuaWNodCBpbiBkaWVzZXIgUnVicmlrIHN0YWVuZGUsIHd1ZXJkZSBpY2ggbWlyIGpldHp0CnZpZWxsZWljaHQgR2VkYW5rZW4gbWFjaGVuLi4uIDspCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR2VoZWltZSBMaXN0ZSAoWm9vaywgIDMuIE1hciAyMDA4LCAyMDowNjo0NCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTIwNDU2NTg4MyByZz1zY2htYXJybgp+IyEgdGlkPTEyMDQ0Njg4MjAKU2ljaGVyPwpaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHZWhlaW1lIExpc3RlIChHbm9tZSwgIDQuIE1hciAyMDA4LCAyMDo1MTo1Myk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTIwNDU2NTg4MyByZz1zY2htYXJybgp+IyEgdGlkPTEyMDQ0Njg4MjAKbmVpbiBuZWluLCBkZXIgaW5oYWx0IG1laW5lcyBhcnRpa2VscyB3YXIgZHVyY2hhdXMgZXJuc3QgZ2VtZWludC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEdlaGVpbWUgTGlzdGUgKE9ya3RvZXRlciwgIDUuIE1hciAyMDA4LCAxODo0OTo0NCk6Cn4jISBybj1Hbm9tZSBydD0xMjA0NjYwMzEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNDQ2ODgyMApXYXMgZHUgZGFkdXJjaCB2ZXJkZXV0bGljaHN0LCBkYXNzIGR1IGlobiBpbiBkaWUgcGFzc2VuZGVuIFJ1YnJpayBzY2hyZWlic3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW1hcnlsbGlzLCAgNy4gTWFyIDIwMDgsIDIxOjQ0OjAxKToKU29oYSBncnVtbWVsdC4KICBTb2hhIGdyZWlmdCBLaG8nbmlnaCBtaXQgYmxvc3NlbiBIYWVuZGVuIGFuLgpLaG8nbmlnaCBzYWd0OiBTb2hhLCBkYXMgd2lyZCBtaXIgamV0enQgenUgenUgYmxvZWQgbWl0IERpciEgSmV0enQgYmlzdCBEdSBtYWwKS2hvJ25pZ2ggc2FndDogZWluIHBhYXIgUnVuZGVuIHN0aWxsZSwgd29sbD8KICBTb2hhIHZlcmZlaGx0IEtobyduaWdoLgogIEtobyduaWdoIGdyZWlmdCBTb2hhIG1pdCBlaXNrYWx0ZW4gSGllYmVuIGFuLgogIEtobyduaWdoIHplcnN0YWV1YnQgU29oYS4KS2hvJ25pZ2ggbGFlc3N0IGVpbmVuIEdpZnRyZWdlbiBhdWYgU29oYSBoZXJuaWVkZXIgZmFocmVuLgogIEtobyduaWdoIHRyaWZmdCBTb2hhLgogIE9tYSBNb29yaHVobiBncmVpZnQgU29oYSBtaXQgc2NoYXJmZW4gS3JhbGxlbiBhbi4KICBPbWEgTW9vcmh1aG4gdmVyZmVobHQgU29oYS4KICBLaG8nbmlnaCBwdWx2ZXJpc2llcnQgU29oYS4KS2hvJ25pZ2ggc3ByaXR6dCBTYWV1cmUgYXVmIFNvaGEuCiAgS2hvJ25pZ2ggdHJpZmZ0IFNvaGEgaGFydC4KICBPbWEgTW9vcmh1aG4gdHJpZmZ0IFNvaGEgc2VociBoYXJ0LgpTb2hhIGZhZWxsdCB0b3QgenUgQm9kZW4uCgpbVG9kOkxhcnNdIE9tYSBNb29yaHVobiBoYXQgZ2VyYWRlIFNvaGEgdW1nZWJyYWNodC4KW1RvZDpPbWEgTW9vcmh1aG5dIExhc3MgZGllIFBmb3RlbiB2b24gS2hvJ25pZ2gsIER1IEx1c3Rtb2xjaCEKCkFtYSosIGtpY2hlcm5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChPcmt0b2V0ZXIsICA3LiBNYXIgMjAwOCwgMjE6NDc6MDApOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEyMDQ5MjI2NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA0OTIyNjQxCnVuZCB3byBzaW5kIGRhIGRpZSBGTFc/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMVyAoQW1hcnlsbGlzLCAgNy4gTWFyIDIwMDgsIDIxOjQ3OjQyKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjA0OTIyODIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNDkyMjY0MQpuYWphLCBtYW4ga2FubiBlcyBhdWNoIGdydW1tZWxuIG5lbm5lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFc3NlbiB2b24gTGVpY2hlbiAoQmFtYnVsa28sIDEyLiBNYXIgMjAwOCwgMDk6Mzk6NTApOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTIwNTI3MTUyNiByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEyMDUyNzE1MjYKSWNoIGhvZmZlIGRpZXNlciBBcnRpa2VsIGZpbmRldCBuaWUgc2VpbmVuIFdlZyBuYWNoIGRyYXVzc2VuIHVuZCB3aXJkIGlyZ2VuZHdvCm9obmUgWnVzYW1tZW5oYW5nIGdlbGVzZW4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVzc2VuIHZvbiBMZWljaGVuIChNYWhhcmV0LCAxMi4gTWFyIDIwMDgsIDEwOjA3OjExKToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEyMDUzMTExOTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA1MjcxNTI2CkljaCBiaW4gc2Nob24gZGllIGdhbnplIFplaXQgYW0gVWViZXJsZWdlbiwgd2llIGljaCBkYXMgYW0gYmVzdGVuIGZ1ZXIgZGllCk5ldWlna2VpdGVuLVNlaXRlIGZvcm11bGllcmUgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVzc2VuIHZvbiBMZWljaGVuIChIb2JvLCAxMi4gTWFyIDIwMDgsIDEwOjMzOjUyKToKfiMhIHJuPU1haGFyZXQgcnQ9MTIwNTMxMjgzMSByZz1zY2htYXJybgp+IyEgdGlkPTEyMDUyNzE1MjYKSW5kZW0gamVkZXIgendlaXRlIFNhdHoga3Vyc2l2IGdlc2NocmllYmVuIHdpcmQgdW5kIGluIGRlbSBzdGVodCBkYW5uOiBFUyBHRUhUCkhJRVIgVU0gRUlOIFZJUlRVRUxMRVMgU1BJRUwhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFc3NlbiB2b24gTGVpY2hlbiAoUnVtYXRhLCAxMi4gTWFyIDIwMDgsIDEwOjQyOjI4KToKfiMhIHJuPUhvYm8gcnQ9MTIwNTMxNDQzMiByZz1zY2htYXJybgp+IyEgdGlkPTEyMDUyNzE1MjYKTW9tZW50LCB3aWVzbyBpc3QgREFTIFNQSUVMIHZpcnR1ZWxsPwpEYXMgU3BpZWwgaXN0IHJlYWwuIE51ciBkaWUgUGl6emFzY2heV1dlbHQgaXN0IHZpcnR1ZWxsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXYWFhaCEgKEJhbWJ1bGtvLCAxMi4gTWFyIDIwMDgsIDEzOjIyOjQ3KToKfiMhIHJuPVJ1bWF0YSBydD0xMjA1MzI0MzQyIHJnPXd3dwp+IyEgdGlkPTEyMDUzMjM1NTUKTmEgc3VwZXIuIE5hY2ggZGVtIGxlc2VuIGRlciBTZWl0ZSwgc2VoZSBpY2ggZGllIERpbmdlciBzdGFlbmRpZy4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXYWFhaCEgKEdsb2luc29uLCAxMi4gTWFyIDIwMDgsIDEzOjMyOjU3KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEyMDUzMjQ1Njcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA1MzIzNTU1CkJld2VnbGljaD8gSWNoIGRhY2h0ZSBqYSBlaGVyIGFuIGRpZSBmbGlycmVuZGVuIHdhZWhyZW5kIGRlciBOYWNodC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBFc3NlbiB2b24gTGVpY2hlbiAoWmVzc3RyYSwgMTIuIE1hciAyMDA4LCAxOTo0NTozMCk6Cn4jISBybj1Ib2JvIHJ0PTEyMDUzMTQ0MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA1MjcxNTI2CkdhciBlaW4gdmlydHVlbGxlcyBLaWxsZXJzcGllbD8gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBFc3NlbiB2b24gTGVpY2hlbiAoSHVtbmksIDEyLiBNYXIgMjAwOCwgMjE6MDE6NDcpOgp+IyEgcm49WmVzc3RyYSBydD0xMjA1MzQ3NTMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNTI3MTUyNgpJY2ggaGFiIGRlbiBBcnRpa2VsIGViZW4gaW0gSWNld2Fycy1SYWRpbyBlaW5mYWNoIG1hbCB2b3JnZWxlc2VuIHVuZCBnZWZyYWd0LAp3YXMgZGFzIHdvaGwgc2VpbiBrYW5uLiBJbnRlcmVzc2FudGVyd2Vpc2UgaGF0IGVpbmVyIGRlciBwYWFyIExldXRlLCBkaWUgZGFzCmEpIGhvZXJlbiB1bmQgYikgaW0gSVJDLUNoYW5uZWwgc2luZCwgZnJ1ZWhlciBNRyBnZXNwaWVsdCB1bmQgd3Vzc3RlIGRhcwpzb2ZvcnQgKGlzc29tYWQpLiBEaWUgV2VsdCBpc3Qga2xlaW4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRXNzZW4gdm9uIExlaWNoZW4gKEdsb2luc29uLCAxMi4gTWFyIDIwMDgsIDIxOjM2OjA5KToKfiMhIHJuPUh1bW5pIHJ0PTEyMDUzNTIxMDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA1MjcxNTI2CkRlciBzb2xsIHNwaWVsZW4ga29tbWVuLiBVbmQgamEgbmljaHQgenUgRmVyaW9uIGdlaGVuLCBrb3N0ZXQgYmxvc3MgKHNlaXQKZWluaWdlbiBKYWhyZW4pIEdlbGQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEV4dHJlbS1FcnRyaW5raW5nIChSb25kYSwgMTMuIE1hciAyMDA4LCAyMTowODo0MCk6Cn4jISBybj1BbnRoZWEgcnQ9MTIwNTM5NzAxNSByZz13aXR6ZQp+IyEgdGlkPTEyMDUzOTcwMTUKPiAiRWhybGljaCBnZXNhZ3Qgc3RpZWcgZXIgendpc2NoZW5kdXJjaCBzb2dhciBub2NoIGRyZWltYWwKPiBhdXMgZGVtIFRyb2cgdW0genUgcGlua2Vsbi4uLi4iCgpHZW5hdSBEQVJBTiBzaWVodCBtYW4sIGRhc3MgZGFzIGdhbnplIGVpbiBGYWtlIGlzdCEgWndlcmdlbmJpZXIgc2NobWVja3QKbmljaHRzIHNvIGFscyB3dWVyZGVuIGRpZSBad2VyZ2UgZGF6d2lzY2hlbiBhdXMgZGVtIFRyb2cgc3RlaWdlbi4uLiAoc2FndGUgZGEKamVtYW5kIHdhcyB2b24gIkFsdGJpZXIiLi4uPyEpCgpSb25kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FocmUgd29ydGUgKEdub21lLCAxNC4gTWFyIDIwMDgsIDAwOjM1OjIyKToKRHUgc2NoaW1wZnN0OiBNaXQgRGVpbmVyIEZyZXNzZSBnZWhvZXJzdCBEdSBpbiBkaWUgU2NocmVja2Vuc3NwaXR6ZSEKRWluIFN0YWhsZHJhY2hlIGVyd2lkZXJ0OiBIZXksIHdhcyBzb2xsIGRhcz8KCjopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1ZXMgTGludXggKFJvbmRhLCAxNi4gTWFyIDIwMDgsIDIxOjUzOjEzKToKfiMhIHJuPVZhbmhlbHNpbmcgcnQ9MTIwNTY4NTU1NyByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMjA1Njg1NTU3CkVORExJQ0ghIEVuZGxpY2gga2FubiBpY2ggbWFsIHNhZ2VuOiBEYW5uIGluc3RhbGxpZXIgZG9jaCBlaW5mYWNoIFdpbmRvd3MhCgpSb25kYSAqYnJlaXQgZ3JpbnNlbmQgc2NobWFycmVuZCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmVib290IGluIHdlbmlnZW4gU3R1bmRlbiAoUm9uZGEsIDE2LiBNYXIgMjAwOCwgMjM6MzY6NTApOgp+IyEgcm49WmVzc3RyYSBydD0xMjA1NzA2OTY4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTIwNTcwNjY1MQpHb2V0dGxpY2hlIEFsbG1hY2h0LCB3aWUgc29uc3QgOy0pCgpSb25kYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUmVib290IGluIHdlbmlnZW4gU3R1bmRlbiAoWmVzc3RyYSwgMTYuIE1hciAyMDA4LCAyMzozODowNik6Cn4jISBybj1Sb25kYSBydD0xMjA1NzA3MDEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNTcwNjY1MQpBY2h3YXMuIFdpciB3YXJ0ZW4gYmVzc2VyLCBiaXMgZGVyIGRhIGlzdC4gU2ljaGVyIGlzdCBzaWNoZXIuIEluIGxldHp0ZXIgWmVpdAppc3QgZGFzIG1pdCBkZXIgT21uaXByYWVzZW56IGV0d2FzIG1hdS4uLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUmVib290IGluIHdlbmlnZW4gU3R1bmRlbiAoVmFuaGVsc2luZywgMTYuIE1hciAyMDA4LCAyMzozODo0MSk6Cn4jISBybj1aZXNzdHJhIHJ0PTEyMDU3MDcwODYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA1NzA2NjUxCkRhbm4gaGF0IGVyIG5vY2ggY2EuIDJoIFplaXQgaGVyenVrb21tZW4uIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBSZWJvb3QgaW4gd2VuaWdlbiBTdHVuZGVuIChDaGFnYWxsLCAxNy4gTWFyIDIwMDgsIDIxOjE0OjU3KToKfiMhIHJuPVZlY3RvciBydD0xMjA1Nzg0ODQ5IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTIwNTcwNjY1MQpEYW5uIGdpYnRzIGhhbHQga2VpbmUgUmVib290LUFua3VlbmRpZ3VuZ2VuIG1laHIsIHNvbmRlcm4gbnVyIG5vY2ggZ2VwbGFudGUKQ3Jhc2hlcy4gCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUmVib290IGluIHdlbmlnZW4gU3R1bmRlbiAoVmVjdG9yLCAxNy4gTWFyIDIwMDgsIDIxOjE1OjE5KToKfiMhIHJuPUNoYWdhbGwgcnQ9MTIwNTc4NDg5NyByZz1zY2htYXJybgp+IyEgdGlkPTEyMDU3MDY2NTEKaW1tZXIgbm9jaCBiZXNzZXIgYWxzIHVtc29uc3QgemV1Z3MgenUgdmVya2F1ZmVuLi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUmVib290IGluIHdlbmlnZW4gU3R1bmRlbiAoVmFuaW9uLCAxNy4gTWFyIDIwMDgsIDIxOjE3OjI5KToKfiMhIHJuPUNoYWdhbGwgcnQ9MTIwNTc4NDg5NyByZz1zY2htYXJybgp+IyEgdGlkPTEyMDU3MDY2NTEKc2h1dGRvd24gIlJlYm9vdGFua3VlbmRpZ3VuZyBpc3QgaW0gTG9nIgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFJlYm9vdCBpbiB3ZW5pZ2VuIFN0dW5kZW4gKE9ya3RvZXRlciwgMTcuIE1hciAyMDA4LCAyMToxOToyMCk6Cn4jISBybj1WYW5pb24gcnQ9MTIwNTc4NTA0OSByZz1zY2htYXJybgp+IyEgdGlkPTEyMDU3MDY2NTEKc2h1dGRvd24gLWggIlJlYm9vdGFua3VlbmRpZ3VuZyBpc3QgaW0gTG9nIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogUmVib290IGluIHdlbmlnZW4gU3R1bmRlbiAoVmVjdG9yLCAxNy4gTWFyIDIwMDgsIDIxOjIxOjQ0KToKfiMhIHJuPVZhbmlvbiBydD0xMjA1Nzg1MDQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNTcwNjY1MQpPYiBtYWwgZWluIFJlYm9vdCBuaWNodCBhbmdla3VlbmRpZ3Qgd2lyZCBpc3QgbWlyIHJlbGF0aXYgZWdhbC4KSWNoIG5laG1lIGVzIGF1Y2ggaW4gS2F1ZiB3ZW5uIGVzIG1hbCBjcmFzaHQuIERhIGthbm4gbWFuIGViZW4Kbml4IGdlZ2VuIG1hY2hlbi4KV2FzIGljaCBudXIgc2VociB1bmdlcm4gaW4ga2F1ZiBuZWhtZSBpc3QsIHdlbm4gZWluIHBhYXIgTWFnaWVyCnp1IHZpZWwgZ2V0cnVua2VuIGhhYmVuIG9kZXIgbGFuZ3dlaWxlIGF1ZmtvbW10IHVuZCBkYW5uCmVpbiBSZWJvb3QgYW5nZWt1ZW5kaWd0IHdpcmQsIGRlciBzaWNoIGRhbm4gYWxzICJ3aXIgaGFiZW4gamEKbnVyIFNwYXNzIGdlbWFjaHQiIHJhdXNzdGVsbHQuCldlaXNzIGphIG5pY2h0IG9iIGRhIG51ciBtaXIgZGVyIEh1bW9yIGZ1ZXIgZmVobHQsIGFiZXIgbWljaAppbiBkZXIgQXJ0IHZvbiBNYWdpZXJuIHZlcmFyc2NoZW4gbGFzc2VuIGZpbmQgaWNoIG5jaWh0IHNvCnByaWNrZWxuZC4gRGVyICJHYWciIHd1cmRlIGF1Y2ggbmljaHQgd2lya2xpY2ggYXVmZ2Vsb2VzdCwKbmFjaGRlbSBiZWkgZGVyIGVyc3RlbiBSZWJvb3QtYW5rdWVuZGlndW5nIGRhbm4gZWluIHBhYXIKUHJvdGVzdGNoZW4gYXVmZ2Vrb21tZW4gc2luZCAob2ggZXMgZ2lidCBOT0NIIExldXRlLCBkaWUKYWt0aXYgc3BpZWxlbikgd3VyZGUgZGVyIHJlYm9vdCBkYW5uICJ2ZXJzY2hvYmVuIi4KTmEgdmllbGxlaWNodCB3YXIgaWNoIGF1Y2ggZGVyIGVpbnppZ2UsIGRlciBzbyBkdW1tIHdhcgp1bmQgZGVuIE1hZ2llcm4gZ2VnbGF1YnQgaGF0LCB1bmQgS3JhbXMgdmVya2F1ZnQgaGF0LCBhYmVyCmdhbnogZWhybGljaDogV2VubiBldWNoIGxhbmd3ZWlsaWcgaXN0IHVudGVyaGFsdGV0IGV1Y2gKYXVmIEViZW5lbiBvZGVyIE1hZ2llcnJ1YnJpa2VuOyB3ZW5uIGRhbm4gd2VnZW4gc28gbmVtClNjaG1hcnJuIFNwaWVsZXIgZHJ1bnRlciBsZWlkZW4gbXVlc3NlbiBrYW5uIGljaCBldWNoCmFscyBub2NoLVNwaWVsZXIgZWNodCBudXIgdm9yIGRpZSBGdWVzc2Ugc3B1Y2tlbiwgc3J5CmRhcyB3YXIgd2VkZXIgbHVzdGlnIG5vY2ggaXJnZW5kd2llIGFuZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBSZWJvb3QgaW4gd2VuaWdlbiBTdHVuZGVuIChHbG9pbnNvbiwgMTcuIE1hciAyMDA4LCAyMTozMzozMyk6Cn4jISBybj1WZWN0b3IgcnQ9MTIwNTc4NTMwNCByZz1zY2htYXJybgp+IyEgdGlkPTEyMDU3MDY2NTEKVmVjdG9yLCBuaW1tIGVzIHNwb3J0bGljaC4gV2FyIHp3YXIgbmljaHQgZGVyIGVyc3RlIEFwcmlsLCBhYmVyIGhhdCBlYmVuCnRyb3R6ZGVtIFNwYXNzIGdlbWFjaHQuCgpOaW1tIGRhcyBTcGllbCB2aWVsbGVpY2h0IGVpbmZhY2ggbG9ja2VyZXIsIGRhbm4gZmFlbGx0c3QgZHUgYXVmIHNvbGNoZQpTY2huYXBzaWRlZW4gKGRhcyBlaW56aWcgc2NobmFwc2lnZSBhbiBkZW0gVGFnIHdhciB1ZWJyaWdlbnMgZGllIGNha2V5c2NoZQpLaXJzY2htYXJtZWxhZGUgZnJ1ZWhzKSBuaWNodCByZWluLiBGaW5nZXIgbWljaCBtYWwsIGd1Y2sgZGlyIG1laW4gTGV2ZWwgdW5kCm1laW5lbiBUaXRlbCB1bmQgbWVpbmUgc2VsYnN0Z2V3YWVobHRlbiBadXN0YWVuZGlna2VpdGVuIGFuIHVuZCBnbGF1YiBtaXIKZ2VuYXUgc28gdmllbCB1bmQgYmVzc2VyIG5pY2h0IG1laHIgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBSZWJvb3QgaW4gd2VuaWdlbiBTdHVuZGVuIChOaWNvbGFpLCAxNy4gTWFyIDIwMDgsIDIxOjM1OjQxKToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMDU3ODYwMTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA1NzA2NjUxCmFsc28gd2VubiBlaW4gIkUiIHVuZCBlaW4gIkgiIG5lIHJlYm9vdGFua3VlbmRpZ3VuZyBtYWNoZW4KZGllIHdlZGVyIGluIG1lZ2FzY2htYXJybiBub2NoIGluIHNjaG1hcnJuIHN0ZWh0IGdpYnRzCmJ6dyBnYWIgZXMgZnVlciBtaWNoIGtlaW4gZ3J1bmQgZGFzIG5pY2h0IHp1IGdsYXViZW4uCmZlaW4gZGFubiBpc3QgamV0enQgbWVpbiAic3BvcnRsaWNoZXIiIGVocmdlaXogZ2V3ZWNrdAp1bmQgbWFuIHNwaWVsdCBhYiBqZXR6dCBuaWNodCBtZWhyIG1pdGVpbmFuZGVyIHNvbmRlcm4KZ2VnZW5laW5hbmRlciwgYXVjaCByZWNodC4uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBSZWJvb3QgaW4gd2VuaWdlbiBTdHVuZGVuIChPcmt0b2V0ZXIsIDE3LiBNYXIgMjAwOCwgMjE6Mzc6MTgpOgp+IyEgcm49Tmljb2xhaSBydD0xMjA1Nzg2MTQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNTcwNjY1MQpJc3Qgd29obCBpbiBldHdhIHdpZSAiWnUgSGlsZmUhIiBydWZlbi4uIHNlaHIgbHVzdGlnLCBudXIgc2NoYWRlIHdlbm5zIGRhbm4Ka2VpbmVyIG1laHIgZ2xhdWJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFJlYm9vdCBpbiB3ZW5pZ2VuIFN0dW5kZW4gKEdyaW1tYm9ybiwgMTcuIE1hciAyMDA4LCAyMTozNzoyMik6Cn4jISBybj1OaWNvbGFpIHJ0PTEyMDU3ODYxNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA1NzA2NjUxCkFuc3RhdHQgaGllciBkZW4gQmVsZWlkaWd0ZW4genUgc3BpZWxlbiBzb2xsdGVzdCBEdSB2aWVsbGVpY2h0IGluIERpY2ggZ2VoZW4KdW5kIERpciB1ZWJlcmxlZ2VuIG9iIG5pY2h0IGluIFdpcmtsaWNoa2VpdCBEdSBkZXIgQmxhbWllcnRlIGJpc3QsIHdlaWwgRHUgYXVmCnNvIGVpbmUgb2ZmZW5zaWNodGxpY2hlIEJsb2VkZWxlaSByZWluZ2VmYWxsZW4gYmlzdC4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBSZWJvb3QgaW4gd2VuaWdlbiBTdHVuZGVuIChFc21lLCAxNy4gTWFyIDIwMDgsIDIxOjM3OjI4KToKfiMhIHJuPU5pY29sYWkgcnQ9MTIwNTc4NjE0MSByZz1zY2htYXJybgp+IyEgdGlkPTEyMDU3MDY2NTEKOnJlaWNodCBkaWUgZ3Jvc3NlIEJhbGRyaWFuZmxhc2NoZSBpbiBkZXIgUnVuZGUgaGVydW0uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogUmVib290IGluIHdlbmlnZW4gU3R1bmRlbiAoR2xvaW5zb24sIDE3LiBNYXIgMjAwOCwgMjE6Mzg6MjYpOgp+IyEgcm49Tmljb2xhaSBydD0xMjA1Nzg2MTQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNTcwNjY1MQpEdSBzb2xsdGVzdCBaZXNzdHJhcyBBcnRpa2VsIHZpZWxsZWljaHQgbm9jaCBtYWwgZ2VuYXVlciBsZXNlbi4KClBvcGNvcm4gYXVjaCBoaWVyLgoKV2VubiBlcyBkaXIgaGlsZnQ6IE1lYSBjdWxwYS4gVHV0IG1pciBsZWlkLCBkYXNzIGR1IGVzIF9zb18gZXJuc3QgZ2Vub21tZW4KaGFzdC4gSWNoIHdlcmRlIGFiZXIgYmVpbSBuYWVjaHN0ZW4gTWFsIHNpY2hlcmxpY2ggbmljaHQgYWxsenV2aWVsCnZvcnNpY2h0aWdlciBzZWluLCBzb25zdCBrYW5uIGljaCBoaWVyIGF1Y2ggYXVmaG9lcmVuIFNwYXNzIHp1IHN1Y2hlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogUmVib290IGluIHdlbmlnZW4gU3R1bmRlbiAoTmljb2xhaSwgMTcuIE1hciAyMDA4LCAyMTozODo0Mik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTIwNTc4NjI0MiByZz1zY2htYXJybgp+IyEgdGlkPTEyMDU3MDY2NTEKYW5zdGF0dCBoaWVyIG5vY2ggbmFjaHp1dHJldGVuIHVlYmVybGVnIGRpciBtYWwgb2IgbmljaHQgZWhlcgplaW4gIm9rIHdhciBlaW4gZHVtbWVyIHNwYXNzIHR1dCB1bnMgbGVpZCIgYW5nZWJyYWNodCB3YWVyZS4Kdm9uICJvZmZlbnNpY2h0bGljaGVyIGJsb2VkZWxsZWkiIHdhciBkYXMgd2VpdCBlbnRmZXJudC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFJlYm9vdCBpbiB3ZW5pZ2VuIFN0dW5kZW4gKE5pY29sYWksIDE3LiBNYXIgMjAwOCwgMjE6Mzk6MjQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIwNTc4NjMwNiByZz1zY2htYXJybgp+IyEgdGlkPTEyMDU3MDY2NTEKamEgd2VubiBkdSBzcGFzcyBzdWNoZW4gZGVmaW5pZXJzdCBhbHMgInNwYXNzIGF1ZiBrb3N0ZW4gYW5kZXJlciIKd2FlciBpY2ggZGlyIGluIGRlciB0YXQgZGFua2JhciB3ZW5uIGR1IGRlaW5lIHN1Y2hlIGJlZW5kZXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogUmVib290IGluIHdlbmlnZW4gU3R1bmRlbiAoT3JrdG9ldGVyLCAxNy4gTWFyIDIwMDgsIDIxOjQwOjM2KToKfiMhIHJuPU5pY29sYWkgcnQ9MTIwNTc4NjM2NCByZz1zY2htYXJybgp+IyEgdGlkPTEyMDU3MDY2NTEKT2NoIE5pY29sYWkuLiBTcGFzcyBhdWYga29zdGVuIGFuZGVyZXIgaXN0IGRvY2ggaW0gTUcgaG9jaHdpbGxrb21tZW4uLiBkZXIKV29scGljbHViIGlzdCBkb2NoIHNjaG9uIHZlcmdlc3Nlbi4uLiBFcyBsZWJlIGRpZSBWaWVsc2VpdGlna2VpdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBSZWJvb3QgaW4gd2VuaWdlbiBTdHVuZGVuIChWYW5oZWxzaW5nLCAxNy4gTWFyIDIwMDgsIDIxOjQxOjI4KToKfiMhIHJuPU5pY29sYWkgcnQ9MTIwNTc4NjM2NCByZz1zY2htYXJybgp+IyEgdGlkPTEyMDU3MDY2NTEKSWNoIGhhYmUgYmlzIHZvciBrdXJ6ZW0gZ2VkYWNodCwgZGFzcyBlaW4gTHZsIDEwNCBTZWhlciBHbG9pbnNvbiB1bmQgc2VpbmUKIkVpZ2VuaGVpdGVuIiBrZW5udCBVTkQgZGFzcyBlciB3ZWlzcywgZGFzcyBSZWJvb3RzIGF1ZiAiYmVrYW5udG1hY2h1bmdlbiIKYmVrYW5udGdlZ2ViZW4gd2VyZGVuLCB1bmQgX25pY2h0XyBhdWYgImFsbGdlbWVpbmVzIi4uLi4KU28ga2FubiBtYW4gc2ljaCBpcnJlbgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBSZWJvb3QgaW4gd2VuaWdlbiBTdHVuZGVuIChBbWFyeWxsaXMsIDE3LiBNYXIgMjAwOCwgMjE6NDg6MjApOgp+IyEgcm49VmFuaGVsc2luZyBydD0xMjA1Nzg2NDg4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNTcwNjY1MQpJY2ggZ2ViZSB6dSwgZGFzcyBpY2ggZGFzIEdhbnplIGF1Y2ggbmljaHQgc2VociBnbHVlY2tsaWNoIGZhbmQsIGFiZXIgd2llIER1CnNjaG9uIHJpY2h0aWcgc2FndGVzdCwgd2lyZCBlaW4gUmVib290IHVlYmxpY2hlcndlaXNlIGluIGVpbmVyIGFuZGVyZW4gUnVicmlrCmFuZ2VrdWVuZGlndC4gQWVyZ2VybGljaCBzb2xsdGUgc293YXMgaG9lY2hzdGVucyBmdWVyIEp1bmdzcGllbGVyIHNlaW4sIGRpZQpzaWNoIG5pY2h0IGF1c2tlbm5lbiwgZGVzaGFsYiBhZXVzc2VyZSBhdWNoIGljaCBtZWluIE1pc3NmYWxsZW4gZGFydWViZXIgaGllci4KCkFiZXIgZ3V0LCBrb21tZW4gd2lyIG1hbCB3aWVkZXIgcnVudGVyIDspCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXJlbiBzaWUgenVmcmllZGVuPyAoTWVzaXJpaSwgMTguIE1hciAyMDA4LCAxODoxMzo1NSk6Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpXSVIgQklUVEVOIFVNIEVOVFNDSFVMRElHVU5HCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKU2VociBnZWVocnRlciBIZXJyIEh1bmdlciwgCgphdWZncnVuZCBlaW5lcyBTeXN0ZW1mZWhsZXJzIHd1cmRlIElobmVuCmhldXRlIGxlaWRlciB2ZXJzZWhlbnRsaWNoIGVpbmUgRW1haWwgbWl0CmRlbSBCZXRyZWZmICJXYXJlbiBTaWUgenVmcmllZGVuPyIKenVnZXNjaGlja3QuCgpEaWVzIGJlZGF1ZXJuIHdpciBzZWhyLgoKRGVyIEZlaGxlciB3dXJkZSB6d2lzY2hlbnplaXRsaWNoIGtvcnJpZ2llcnQuCgpXaXIgYml0dGVuIGZ1ciBkaWUgSWhuZW4gZW50c3RhbmRlbmVuClVuYW5uZWhtbGljaGtlaXRlbiB1bSBFbnRzY2h1bGRpZ3VuZyEKClZpZWxlbiBEYW5rIGZ1ciBJaHIgVmVyc3RhbmRuaXMuCgpNaXQgZnJldW5kbGljaGVuIEdydXNlbgpRVUVMTEUgT25saW5lLVRlYW0KTWVzaSwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXJlbiBzaWUgenVmcmllZGVuPyAoVmFuaGVsc2luZywgMTguIE1hciAyMDA4LCAxODoxNTozNik6Cn4jISBybj1NZXNpcmlpIHJ0PTEyMDU4NjA0MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA1ODYwNDM1ClNvIGVpbmUgTWFpbCBoYWIgaWNoIGF1Y2ggYmVrb21tZW4uIEFsc28gZWluZSAiV2FyZW4gU2llIHp1ZnJpZWRlbiItTWFpbC4gQWJlcgpiZWkgbWlyIGhhYmVuIHNpZSBzaWNoIG5vY2ggbmljaHQgZW50c2NodWxkaWd0LgoKKmVtcG9lcnQgZ3VjayoKClZICgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FyZW4gc2llIHp1ZnJpZWRlbj8gKEFtYXJ5bGxpcywgMTguIE1hciAyMDA4LCAxODozMTowMyk6Cn4jISBybj1NZXNpcmlpIHJ0PTEyMDU4NjA0MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA1ODYwNDM1CndpZXNvIGZhZWxsdCBtaXIgZGEgamV0enQgc3BvbnRhbiBSTE8yNCBlaW4/CgpBbWEqIDooCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBcnRodXIgQy4gQ2xhcmtlIGlzdCB0b3QgKENyb2Z0LCAxOS4gTWFyIDIwMDgsIDExOjA2OjE3KToKfiMhIHJuPUd3ZW4gcnQ9MTIwNTkyMDU1OSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEyMDU5MDAyMjMKRmFsbHMgZGVuIGtlaW5lciBtZWhyIGJyYXVjaHQgd3VlcmQgaWNoIGRlbiBuZWhtZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFydGh1ciBDLiBDbGFya2UgaXN0IHRvdCAoR3JpbW1ib3JuLCAxOS4gTWFyIDIwMDgsIDExOjM5OjA3KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMjA1OTIwNTE5IG9nPWFsbGdlbWVpbmVzCn4jISBybj1NYXN1bCBydD0xMjA1OTAwMjIzIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTIwNTkwMDIyMwpXaWxsaWFtIFNoYWtlc3BlYXJlIGlzdCB1ZWJyaWdlbnMgYXVjaCB0b3QuIFNoYWtlc3BlYXJlIHdhciB1bnRlciBhbmRlcmVtIGRlcgpBdXRvciBkZXIgR2VzY2hpY2h0ZSBoaW50ZXIgZGVtIEZpbG0gTXVjaCBBZG8gQWJvdXQgTm90aGluZyB2b24gS2VubmV0aApCcmFubmFnaCB1bmQgZWluIGJla2FubnRlciBCdWVobmVuYXV0b3IuCnZnbC4gaHR0cDovL2RlLndpa2lwZWRpYS5vcmcvd2lraS9TaGFrZXNwZWFyZQoKR3JpbW1ib3JuIGRlciBBdGhlaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFydGh1ciBDLiBDbGFya2UgaXN0IHRvdCAoR3JpbW1ib3JuLCAxOS4gTWFyIDIwMDgsIDExOjM5OjA5KToKfiMhIG9uPUd3ZW4gb3Q9MTIwNTkyMDU1OSBvZz1hbGxnZW1laW5lcwp+IyEgcm49R3JpbW1ib3JuIHJ0PTEyMDU5MjA1MTkgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMjA1OTAwMjIzClVuZCBpbiBGcmFua2Z1cnQgZmFlbGx0IGVpbiBTYWNrIEdlbGQgdW0uCkd3ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBcnRodXIgQy4gQ2xhcmtlIGlzdCB0b3QgKEdyaW1tYm9ybiwgMTkuIE1hciAyMDA4LCAxMTozOToxMSk6Cn4jISBvbj1IaWdobGFuZGVyIG90PTEyMDU5MjIxNzAgb2c9YWxsZ2VtZWluZXMKfiMhIHJuPUd3ZW4gcnQ9MTIwNTkyMDU1OSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEyMDU5MDAyMjMKTmUsIGRpZXNlIEdlbGRzYWVja2UgbG9lc2VuIHNpY2ggZGVyemVpdCBlaGVyIGluIEx1ZnQgYXVmLgoKSHJUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBcnRodXIgQy4gQ2xhcmtlIGlzdCB0b3QgKEdyaW1tYm9ybiwgMTkuIE1hciAyMDA4LCAxMTo1MjoyNyk6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMjA1OTIzMjIxIG9nPWFsbGdlbWVpbmVzCn4jISBvbj1HcmltbWJvcm4gb3Q9MTIwNTkyMzE1MyBvZz1zY2htYXJybgp+IyEgb249R2xvaW5zb24gb3Q9MTIwNTkyMjc2MSBvZz1hbGxnZW1laW5lcwp+IyEgcm49SGlnaGxhbmRlciBydD0xMjA1OTIyMTcwIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTIwNTkwMDIyMwpBdXNzZXJkZW0gaXN0IGF1Y2ggQW50aG9ueSBNaW5naGVsbGEgdG90LiBVbmQgZGVyIHdhciBpbiBkZW4gbGV0enRlbiBKYWhyZW4KYmVrYW5udGVyLiBXb2JlaSBWYW5pb24gdmllbGxlaWNodCBzYWdlbiBrYW5uLCB3aWUgZ3V0IGRpZQpDbGFya2UtQmF4dGVyLVp1c2FtbWVuYXJiZWl0IHdpcmtsaWNoIHdhci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBcnRodXIgQy4gQ2xhcmtlIGlzdCB0b3QgKFBpZ2EsIDE5LiBNYXIgMjAwOCwgMTQ6MDY6NTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEyMDU5MjM5NDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA1OTAwMjIzCkdsb2luc29uIGxlYnQgdWVicmlnZW5zIG5vY2guIEdsb2luc29uIHNjaHJpZWIgZWluZSBNZW5nZSBNUEEtQXJ0aWtlbCB1bmQKc3BpZWx0IGF1Y2ggZGllIHdlaWJsaWNoIEhhdXB0cm9sbGUgaW4gZGVtIFVudGVyd2Fzc2VyZHJhbWEgJ0RhcyBSZWJvb3QnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQXJ0aHVyIEMuIENsYXJrZSBpc3QgdG90IChHbG9pbnNvbiwgMTkuIE1hciAyMDA4LCAxNDoxMDo0OSk6Cn4jISBybj1QaWdhIHJ0PTEyMDU5MzIwMTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA1OTAwMjIzCjpzY2h1ZXR0ZWx0IGRlbiBQZXR0aWNvYXQ6IE5PVCBZRVQsIEVSWk1BR0lFUiEgTk9UIFlFVCEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBcnRodXIgQy4gQ2xhcmtlIGlzdCB0b3QgKFJ1bWF0YSwgMTkuIE1hciAyMDA4LCAxNDoyMDo1Nik6Cn4jISBybj1HbG9pbnNvbiBydD0xMjA1OTMyMjQ5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNTkwMDIyMwpHbG9pbnNvbiwgZGVyIFBldHRpY29hdCBzdGVodCBkaXIgZ3V0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQXJ0aHVyIEMuIENsYXJrZSBpc3QgdG90IChHcmltbWJvcm4sIDE5LiBNYXIgMjAwOCwgMTQ6MjE6MzApOgp+IyEgcm49UnVtYXRhIHJ0PTEyMDU5MzI4NTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA1OTAwMjIzCkpvLCBhYmVyIGplbWFuZCBzb2xsdGUgaWhtIHZpZWxsZWljaHQgc2FnZW4gZGFzcyBtYW4gZGVuIGdld29laG5saWNoIG5pY2h0IHVtCmRlbiBIYWxzIGhhZW5ndC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBcnRodXIgQy4gQ2xhcmtlIGlzdCB0b3QgKFJ1bWF0YSwgMTkuIE1hciAyMDA4LCAxNDoyMjoxMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTIwNTkzMjg5MCByZz1zY2htYXJybgp+IyEgdGlkPTEyMDU5MDAyMjMKRGFzIHdhciB6dSBTaGFrZXNwZWFycyBaZWl0ZW4gbm9jaCBNb2RlLiBBbHNvIHNhZyBuaXguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBcnRodXIgQy4gQ2xhcmtlIGlzdCB0b3QgKFZhbmlvbiwgMTkuIE1hciAyMDA4LCAyMDoyODo1OSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTIwNTkyMzk0NyByZz1zY2htYXJybgp+IyEgdGlkPTEyMDU5MDAyMjMKSWNoIGZhbmQgZGllIFJvbWFuZSB2b24gQ2xhcmtlL0JheHRlciB6aWVtbGljaCBndXQuIFNlaXQgaWNoIGRpZSBnZWxlc2VuIGhhYmUKaGFiIGljaCBldHdhIDYgQmF4dGVyLUJ1ZWNoZXIgZ2VsZXNlbi4gRmluZGV0IG1laW5lbiBHZXNjaG1hY2suIERpZSBiZWlkZW4KdW50ZXJzY2hlaWRlbiBzaWNoIHZvbSBUeXAgbmljaHQgc28gc2Voci4gU2luZCBiZWlkZSBzZWhyICdyZWFsaXRhZXRzbmFoZScKU2NocmVpYmVyIGF1cyBkZXIgSGFyZC1TRi1FY2tlLiBDbGFya2UgaXMgbmF0dWVybGljaCBzY2hvbiBldHdhcyBhbmdlc3RhdWJ0LAp3YXMgZGllIHRlY2huaXNjaGVuIERldGFpbHMgYW5nZWh0LiBCYXh0ZXIgaXN0IGRhIGVoZXIgZGVyIFBoeXNpa2VyIHVuZAp3ZW5pZ2VyIGRlciBUZWNobmlrZXIuCgpCYXh0ZXIgdW5kIENsYXJrZSBoYWJlbiBkcmVpIEJ1ZWNoZXIgenVzYW1tZW4gZ2VtYWNodCwgZGFzIGxldHp0ZSBpc3Qgbm9jaApuaWNodCByYXVzLiBNZWluZXIgTWVpbnVuZyBuYWNoIHdhciBhYmVyIEJheHRlciBkZXIgVHJlaWJlciB3YWVyZW5kIG1hbiB2b24KQ2xhcmtlIG51ciBFaW5mbHVlc3NlIGluIGRlciBTdG9yeSBlcmtlbm50LiBJY2ggZmFuZCBkaWUgYmVpZGVuIGRpZSBpY2ggZ2xlc2VuCmhhYiwgemllbWxpY2ggZ3V0LgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNvbW1lcnBhcnR5IDIwMDggKEdyaW1tYm9ybiwgMjEuIE1hciAyMDA4LCAwODo1NzowNCk6Cn4jISBybj1Dcm9mdCBydD0xMjA2MDU1MDc0IHJnPXBhcnR5Cn4jISB0aWQ9MTIwNjA1MTY1NwpJY2ggZm9yZGVyZSBkaWUgV2llZGVydmVyZWluaWd1bmcgaW4gZGVuIEdyZW56ZW4gdm9uIDEyNDUhIEh1cnJhLCBSb20gaXN0CnVuc2VyIQoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTb21tZXJwYXJ0eSAyMDA4IChHd2VuLCAyMy4gTWFyIDIwMDgsIDAxOjE0OjAwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMjA2MDg2MjI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNjA1MTY1NwpJc3QgZXMgZG9jaCBlaCwgZGVubiB3aXIgc2luZCBQYXBzdCEKR3dlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBDYW1waW5nUGxhdHogKEFtYXJ5bGxpcywgMjQuIE1hciAyMDA4LCAxNzozNDowOCk6Cn4jISBybj1NYWhhcmV0IHJ0PTEyMDYzNzUxMDkgcmc9cGFydHkKfiMhIHRpZD0xMjA2MjIzNTM3CiJldHdhIGVpbiBCYWJ5IG1laHIiLi4uCgpJc3QgZGFzIHp1bSBqZXR6aWdlbiBaZWl0cHVua3Qgbm9jaCBuaWNodCBzaWNoZXIsIG9icyBuaWNodCBub2NoIDIsIDMgb2RlcgptZWhyIHdlcmRlbj8gOykKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTY2h1dHpoYW5kIChaZXNzdHJhLCAyNS4gTWFyIDIwMDgsIDIzOjI5OjU2KToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMDY0NzY3ODIgcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTEyMDY0NzY3ODIKTWhtbW0sIGxhZXNzdCBzaWNoIGRhIHZpZWxsZWljaHQgZWluIFdldHRzdHJlaXQgdW0gbmV1ZSBGZWF0dXJlcyB6d2lzY2hlbiAyCkdpbGRlbm1hZ2llcm4gYXVzbG9lc2VuPyA7LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2NodXR6aGFuZCAoR2xvaW5zb24sIDI2LiBNYXIgMjAwOCwgMDM6MjE6MTYpOgp+IyEgcm49WmVzc3RyYSBydD0xMjA2NDg0MTk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNjQ3Njc4MgpNYWwgc2VobiB3aWUgSHVtbmkgZGFzIGF1c2JhbGFuY2llcmVuIHd1ZXJkZSA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBDaGFnYWxsIGlzdCBhYiBXZWlzZXIgYXVmIFplaXQgZ2V3b3JkZW4uIChPcmt0b2V0ZXIsICAxLiBBcHIgMjAwOCwgMjA6NDk6MzkpOgp+IyEgcm49UnVtYXRhIHJ0PTEyMDcwNzU2MjIgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEyMDcwNzU2MjIKQ2hhZ2FsbCBpc3QgQWJ3ZWlzZXIgZ2V3b3JkZW4/IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IENoYWdhbGwgaXN0IGFiIFdlaXNlciBhdWYgWmVpdCBnZXdvcmRlbi4gKEdydW1iYXJ0LCAgMi4gQXByIDIwMDgsIDE3OjMzOjU1KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjA3MDc1Nzc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNzA3NTYyMgpFaGVyIFplaXR3ZWlzZXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJZSE9ZSyAoVmVjdG9yLCAgMy4gQXByIDIwMDgsIDE2OjA5OjI2KToKLi4uc3RlaHQgZnVlciByb2xsIHlvdXIgaGVhZCBvdmVyIHlvdXIga2V5Ym9hcmQ6Cgp4ZGZyIGd6LGxwCgooaXN0IGJlaSBtaXIgcmF1c2dla29tbWVuLCBnZXJvbGx0IHd1cmRlIAp2b24gbGlua3MgbmFjaCByZWNodHMpCm5hZWNoc3RlciBiaXR0ZTopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUllIT1lLIChCb2luZywgIDMuIEFwciAyMDA4LCAxNjozMzo0Mik6Cn4jISBybj1WZWN0b3IgcnQ9MTIwNzIzMTc2NiByZz1zY2htYXJybgp+IyEgdGlkPTEyMDcyMzE3NjYKRHUgbXVzc3QgZWNodCBMYW5nZXdlaWxlIGhhYmVuIC4uLgogIEJvaW5nCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEV2dGwuIFJlYm9vdCAoQW50aGVhLCAgNC4gQXByIDIwMDgsIDE3OjE1OjU2KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMjA3MzE5MjA2IHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMjA3MjU1NTc3ClNvd2FzLiBVbmQgaWNoIGhhYiBtaWNoIHNjaG9uIHNvb29vb28gYXVmIGVpbmVuIENyYXNoIGdlZnJldXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFwcGxlLURpc2tldHRlbiBhdWYgbmVtIFdpbmRvd3MtUmVjaG5lciBlaW5sZXNlbj8hPyEgKFJvbmRhLCAgNy4gQXByIDIwMDgsIDAwOjU1OjM5KToKfiMhIHJuPU1hc3VsIHJ0PTEyMDczODI2NzIgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTIwNzIzMjA5MwpPY2gsIDggWm9sbCBEaXNrZXR0ZW4ga2FubiBtYW4gYXVjaCBnYW56IGVpbmZhY2ggendpc2NoZW4gRGF1bWVuIHVuZApaZWlnZWZpbmdlciBncmVpZmVuLiBhKSBpbmRlbSBtYW4gZGllIEZpbmdlciBvYmVuL3VudGVuIGF1ZiBkaWUgRGlzayBsZWd0IG9kZXIKYikgZGFzIFByaW56aXAgImZsb3BweSIgbWF4aW1hbCB2ZXJiaWVnZW5kIGF1c251dHp0LgoKUm9uZGEgKmluIGRlciByaWNodGlnZW4gUnVicmlrKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJZSE9ZSyAoSHVyYXhwcmF4LCAgNy4gQXByIDIwMDgsIDExOjI5OjAyKToKfiMhIHJuPVZlY3RvciBydD0xMjA3MjMxNzY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNzIzMTc2NgpzaWVodCBhdXMgd2llIGVpbiB1bml4LWJlZmVobC4uLiBrb2VubnRldCBqYSBkYXMgc3BpZWwgZXR3YXMgc3Bhbm5lbmRlciBtYWNoZW4KaW5kZW0gaWhyIGRhcyBkaXJla3QgYXVmIGVpbmVyIGxpbnV4LWtvbnNvbGUgbWFjaHQgKG5hdHVlcmxpY2ggYWxzIHJvb3QpLgpodXJheCwgZGVyIGdlcmFkZSBhdWNoIGxhbmdld2VpbGUgaW4gc2VpbmVtIGt1cnMgaGF0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBcnRpbGxlcmllIChDaGFnYWxsLCAgNy4gQXByIDIwMDgsIDE2OjQyOjE5KToKfiMhIHJuPUNyb2Z0IHJ0PTEyMDc1NzkyODEgcmc9YmFsYW5jZQp+IyEgdGlkPTEyMDc1NDgxOTIKV2FubiB2ZXJyb3R0ZW4gZWlnZW50bGljaCBnYW56ZW4gQWV4dGUsIFNwZWVyZSwgS2V1bGUgdW5kIFNjaHdlcnRlcj8gOikKCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBcnRpbGxlcmllIChBbnRoZWEsICA3LiBBcHIgMjAwOCwgMTY6NDY6MjMpOgp+IyEgcm49Q2hhZ2FsbCBydD0xMjA3NTc5MzM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNzU0ODE5MgpOYWNoIGRlbiBIb2x6d3Vlcm1lcm4gd3VyZGVuIG51biBlbmRsaWNoIGF1Y2ggZGllIEVpc2VuLSwgU3RhaGwtIHVuZApLdXBmZXJsYWV1c2UgZW50ZGVja3QsIGRpZSBnYW56IG5haGUgVmVyd2FuZHRlIGRlciBTdGVpbmxhdXMgc2luZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFydGlsbGVyaWUgKENyb2Z0LCAgNy4gQXByIDIwMDgsIDE2OjQ3OjAxKToKfiMhIHJuPUNoYWdhbGwgcnQ9MTIwNzU3OTMzOSByZz1zY2htYXJybgp+IyEgdGlkPTEyMDc1NDgxOTIKVmVycm90dGVuIG11ZXNzZW4gZGllIG5pY2h0LiAgRGEgZ2FicyBkb2NoIGRhcyBzY2hvZW5lIEtvbnplcHQgZGVyIApBYm51dHp1bmcuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQXJ0aWxsZXJpZSAoUnVtYXRhLCAgNy4gQXByIDIwMDgsIDE2OjU2OjU5KToKfiMhIHJuPUNyb2Z0IHJ0PTEyMDc1Nzk2MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA3NTQ4MTkyCkRlciBUaGF1bWF0aXNjaGUgQWV0aGVyIHJlYWdpZXJ0IGhhbHQgbWl0IGRlbiBzY2hhcmZlbiBLYW50ZW4gZGVyIFd1cmZzdGVybmUuCldvIGlzdCBkYSBkYXMgUHJvYmxlbT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFydGlsbGVyaWUgKEZhbGxlbmFuZ2VsLCAgNy4gQXByIDIwMDgsIDE2OjU4OjA3KToKfiMhIHJuPVJ1bWF0YSBydD0xMjA3NTgwMjE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNzU0ODE5MgpVZWJlciBkaWUgc3RhZW5kaWdlbiBIaWxiZXJ0LUVyZGJlYmVuIHJlaWJlbiBzaWNoIGRpZSBXdXJmc3Rlcm5lIC0gZGllIGZlaW4KZ2VzdGFwZWx0IGxpZWdlbiAtIHNvbGFuZ2UgZ2VnZW5laW5hbmRlciwgYmlzIHNpZSB6dSBTdGF1YiB2ZXJmYWxsZW4uCgpJY2ggZ2xhdWJlLCBhbiBCZWdydWVuZHVuZ2VuIG1hbmdlbHQgZXMgaGllciBuaWNodC4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBBcnRpbGxlcmllIChDcm9mdCwgIDcuIEFwciAyMDA4LCAxNzowMjo0Nyk6Cn4jISBybj1GYWxsZW5hbmdlbCBydD0xMjA3NTgwMjg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNzU0ODE5MgpIbS4gIERhbm4gd2FlcnMgd29obCBkaWUgYmVzc2VyZSBWYXJpYW50ZSBnZXdlc2VuIGRpZSBXdXJmc3Rlcm5lIGJlaW0KV2VyZmVuIHplcmJyb2VzZWxuIHp1IGxhc3Nlbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBcnRpbGxlcmllIChGYWxsZW5hbmdlbCwgIDcuIEFwciAyMDA4LCAxODoxOTowMSk6Cn4jISBybj1Dcm9mdCBydD0xMjA3NTgwNTY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNzU0ODE5MgpNYW4ga29lbm50ZSBhdWNoIG51ciB1ZWJlciBkaWUgUmVpYnVuZyBkaWUgU3Rlcm5lIHN0dW1wZiB3ZXJkZW4gbGFzc2VuLCBzbwpkYXNzIHNpZSAwIFNjaGFkZW4gbWVociBtYWNoZW4uCgpBYmVyIGRhbm4ga2FubiBtYW4gYXVmIGRlbiBOUEMsIGRlciBzaWUgZ2VmYWhybG9zIGZhZW5ndCwgc2VpbmVuIHVsdG1hdGl2ZW4KU2NobmVsbC1zY2hhZXJmc3RlaW4genVlY2t0LCBkaWUgd2llZGVyIHNjaGFyZiBtYWNodCB1bmQgenVydWVja3dpcmZ0IG1pdAplbnRzcHJlY2hlbmRlbSBTa2lsbCBudXIgd2FydGVuLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFydGlsbGVyaWUgKEdub21lLCAgNy4gQXByIDIwMDgsIDIwOjA4OjQxKToKfiMhIHJuPUNoYWdhbGwgcnQ9MTIwNzU3OTMzOSByZz1zY2htYXJybgp+IyEgdGlkPTEyMDc1NDgxOTIKZ2VuYXUgZGFubiwgd2VubiBld2lnZSBrb21wb3MgdmVycm90dGVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBcnRpbGxlcmllIChTdWxhbmlzLCAgNy4gQXByIDIwMDgsIDIwOjA5OjExKToKfiMhIHJuPUdub21lIHJ0PTEyMDc1OTE3MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA3NTQ4MTkyCndhcnVtIGJyYXVjaGVuIHphdWJlcmVyIGVpZ2VudGxpY2ggdWViZXJoYXVwdCBrb21wb3M/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBcnRpbGxlcmllIChDcm9mdCwgIDcuIEFwciAyMDA4LCAyMDozNDo1OCk6Cn4jISBybj1TdWxhbmlzIHJ0PTEyMDc1OTE3NTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA3NTQ4MTkyCldhcnVtIGJyYXVjaGVuIFphdWJlciB1ZWJlcmhhdXB0IEtQPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEFydGlsbGVyaWUgKE9ya3RvZXRlciwgIDcuIEFwciAyMDA4LCAyMTozODoyNik6Cn4jISBybj1Dcm9mdCBydD0xMjA3NTkzMjk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNzU0ODE5MgpXZXIgYnJhdWNodCBaYXViZXJlcj8gOykKCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBBcnRpbGxlcmllIChIdW1uaSwgIDcuIEFwciAyMDA4LCAyMjowMjozNik6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTIwNzU5NzEwNiByZz1zY2htYXJybgp+IyEgdGlkPTEyMDc1NDgxOTIKVW5kIHdhcnVtIHZlcnJvdHRlbiB3YXR0aWVydGUgQnJhdGVuIG5pY2h0PwoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBBcnRpbGxlcmllIChIdW1uaSwgIDcuIEFwciAyMDA4LCAyMjowOToyMSk6Cn4jISBybj1IdW1uaSBydD0xMjA3NTk4NTU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNzU0ODE5MgpIYXJoYXIhIEljaCBoYWJzISAoRGFua2UgYW4gWmVwaHlyIGZ1ZXJzIGRyYXVmIGJyaW5nZW4pLiBBbHNvLCB3YXJ1bSB2ZXJyb3R0ZW4KV3VyZnN0ZXJuZT8gR2FueiBlaW5mYWNoLiBEZXIgQnJhdGVuIGhhdCBlaW5lIEZldHRzY2hpY2h0LiBXZW5uIGRlciBXdXJmc3Rlcm4KamV0enQgaW4gZGVuIEJyYXRlbiBmbGllZ3QsIGRhbm4gemVyZmV0enQgZXIgZGFzIEZldHQsIGRhcyBkYXJhdWZoaW4gZmx1ZXNzaWcKd2lyZCwgc2ljaCBtaXQgZGVyIFdhdHRlIHp1IGVpbmVyIHN0YXJrIGtvcnJpZGllcmVuZGVuCkZsdWVzc2lnZmVzdHN0b2ZmbGljaGtlaXQgaW4gS2V0Y2h1cGtvbnNpc3RlbnogdmVybWVuZ3QgdW5kIGRhZHVyY2ggZGFzIHphcnRlCkdlZnVlZ2UgZGVzIE1ldGFsbHMgYW5ncmVpZnQgdW5kIGRlciBXdXJmc3Rlcm4gZGFyYXVmaGluIGtvcnJpZGllcnQuIFdlciBqZXR6dAptZWludCwgZGFzcyBzZWluZSBXdXJmc3Rlcm5lIG5pY2h0IGluIEJyYXRlbiBzdGVja2VuLCBsYWdlcnQgc2llIG5pY2h0IHJpY2h0aWcKLSB1bmQgZGEgc2luZCBzaWUgZGlyZWt0IGtvcnJpZGllcnQsIHdlaWwgbmljaHQgcmljaHRpZyBnZWxhZ2VydC4gU28uIFVuZApzb3JyeSBmdWVycyBTZWxic3RyZXBseSwgYWJlciBoaWVyIGlzdCBqYSBuaWNodCBtZWdhc2NobWFycm4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEFydGlsbGVyaWUgKEFtYXJ5bGxpcywgIDcuIEFwciAyMDA4LCAyMjoxMzoyNCk6Cn4jISBybj1IdW1uaSBydD0xMjA3NTk4OTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNzU0ODE5Mgo6c3RlY2t0IEh1bW5pIGVpbmVuICJJbmdyaWQiLUJ1dHRvbiBhbnMgUmV2ZXJzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQXBwbGUtRGlza2V0dGVuIGF1ZiBuZW0gV2luZG93cy1SZWNobmVyIGVpbmxlc2VuPyE/ISAoTWFzdWwsICA4LiBBcHIgMjAwOCwgMDE6MTk6NTEpOgp+IyEgcm49Um9uZGEgcnQ9MTIwNzUyMjUzOSByZz1zY2htYXJybgp+IyEgdGlkPTEyMDcyMzIwOTMKTWlyIGlzdCBzY2hvbiBrbGFyLCBkYXNzIG1hbiBkYXMgbWlzc3ZlcnN0ZWhlbiBrYW5uLiBNYW4gbXVzcyBudXIgd29sbGVuLi4uCgpNYXN1bAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEFydGlsbGVyaWUgKEFsa29ob2wsICA4LiBBcHIgMjAwOCwgMjA6MTE6NTgpOgp+IyEgcm49SHVtbmkgcnQ9MTIwNzU5ODk2MSByZz1zY2htYXJybgp+IyEgdGlkPTEyMDc1NDgxOTIKc29sbHRlIGRhdm9yIG5pY2h0IGdlcmFkZSBkaWUgd2F0dGUgc2NodWV0emVuPwoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEFydGlsbGVyaWUgKFJ1bWF0YSwgIDguIEFwciAyMDA4LCAyMDoxMjozOCk6Cn4jISBybj1BbGtvaG9sIHJ0PTEyMDc2NzgzMTggcmc9c2NobWFycm4KfiMhIHRpZD0xMjA3NTQ4MTkyCkphLCBhYmVyIGRpZSBXYXR0ZSwgZGllIG5ldWVyZGluZ3MgYXVzIENoaW5hIGltcG9ydGllcnQgd2lyZCwgaXN0IGhhbHQgbmljaHQKc28gc3VwZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogQXJ0aWxsZXJpZSAoU3VsYW5pcywgIDguIEFwciAyMDA4LCAyMDoxMzoyMCk6Cn4jISBybj1SdW1hdGEgcnQ9MTIwNzY3ODM1OCByZz1zY2htYXJybgp+IyEgdGlkPTEyMDc1NDgxOTIKZGVyIHdhdHRpZXJlLWJyYXRlbi13dXJmc3Rlcm4tYmV3ZWlzIHN0ZWh0IHVlYnJpZ2VucyBzZWl0CmphaHJlbiBhdXMuIHd1cmRlIG1laHJmYWNoIGZ1ZXIgZGllIG5hZWNoc3RlIHBhcnR5IHZlcnNwcm9jaGVuCnd1cmRlIGFiZXIgbmllIGR1cmNoZ2VmdWVocnQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBBcnRpbGxlcmllIChPcmt0b2V0ZXIsICA4LiBBcHIgMjAwOCwgMjA6MTU6MTMpOgp+IyEgcm49U3VsYW5pcyBydD0xMjA3Njc4NDAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNzU0ODE5MgpEYXMgd2lyZCBkaWUgSGF1cHRhdHRyYWt0aW9uIHp1ciBFaW53ZWlodW5nIHZvbiBUYXJhbWlzLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBBcnRpbGxlcmllIChTdWxhbmlzLCAgOC4gQXByIDIwMDgsIDIwOjE2OjEzKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjA3Njc4NTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwNzU0ODE5MgpvZGVyIHp1ciBFcm9lZmZudW5nIGRlciBIYXJsZWtpbi1HaWxkZSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEFydGlsbGVyaWUgKEFsa29ob2wsICA4LiBBcHIgMjAwOCwgMjA6MjE6MDIpOgp+IyEgcm49UnVtYXRhIHJ0PTEyMDc2NzgzNTggcmc9c2NobWFycm4KfiMhIHRpZD0xMjA3NTQ4MTkyCmljaCBmaW5kZSwgbWFuIHNvbGx0ZSBkaWUgd2F0dGUgdWViZXJhcmJlaXRlbiA6KQoKQWxraQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTGludXggdW5kIFdpbmRvd3NtYW5hZ2VyIGdlc3VjaHQgKEFtYXJ5bGxpcywgMTEuIEFwciAyMDA4LCAyMTo1ODo1MSk6Cn4jISBybj1IdW1uaSBydD0xMjA3OTQzMDk2IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEyMDc4NTYxMjAKPiBVbmQgamEsIGljaCB3ZWlzcyB3b3ZvbiBpY2ggcmVkZSwgaWNoIHNpdHplbiBhbiBlaW5lbSAyNTYtTUItUmVjaG5lciBtaXQKPiBFZHVidW50dSAtIHVuZCBHbm9tZS4gTmljaHQgaHlwZXJzY2huZWxsLCBhYmVyIGdlaHQuCgpNaXQgR25vbWU/IE5hamEuIERhc3MgR25vbWUgbmljaHQgZGVyIHNjaG5lbGxzdGUgaXN0LCB3ZWlzcyBtYW4gamEuIFp3ZXJnIGhhbHQKOykKCnNjbnIsCkFtYSoKfgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTGludXggdW5kIFdpbmRvd3NtYW5hZ2VyIGdlc3VjaHQgKE9ya3RvZXRlciwgMTIuIEFwciAyMDA4LCAwMDo0NDozNyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTIwNzk0MzkzMSByZz1zY2htYXJybgp+IyEgdGlkPTEyMDc4NTYxMjAKR25vbWUgaW5zaWRlIQpJY2ggc2VoIGVzIGdlcmFkZXp1IGJpbGRsaWNoIHZvciBtaXIsIHdpZSBlciBkYSBpbiBzZWluZW0ga2xlaW5lbiBSYWQgbXVudGVyCnZvciBzaWNoIGhpbiByZW5udC4uLgoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBNRyBpc3QgdG90IChPcmt0b2V0ZXIsIDEzLiBBcHIgMjAwOCwgMDg6NTQ6NTIpOgpIaWVyIGRlciBCZXdlaXM6CgpEdSBoYWV0dGVzdCBoZXV0ZSBzY2hvbiAzIE9ya3MgdG9ldGVuIGtvZW5uZW4hCkR1IGhhZXR0ZXN0IGhldXRlIHNjaG9uIDQgT3JrcyB0b2V0ZW4ga29lbm5lbiEKRHUgaGFldHRlc3QgaGV1dGUgc2Nob24gNSBPcmtzIHRvZXRlbiBrb2VubmVuIQpEdSBoYWV0dGVzdCBoZXV0ZSBzY2hvbiA2IE9ya3MgdG9ldGVuIGtvZW5uZW4hCkR1IGhhZXR0ZXN0IGhldXRlIHNjaG9uIDcgT3JrcyB0b2V0ZW4ga29lbm5lbiEKRHUgaGFldHRlc3QgaGV1dGUgc2Nob24gOCBPcmtzIHRvZXRlbiBrb2VubmVuIQoKUi5JLlAuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFzIE1HIGlzdCB0b3QgKEh1bW5pLCAxMy4gQXByIDIwMDgsIDEwOjEzOjQyKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjA4MDY5NjkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwODA2OTY5MgpXaWVzbyBpc3QgZGFzIE1HIHRvdD8gRGllIE9ya3Mgc2luZCBuaWNodCB0b3QsIGRhcyBzdGltbXQuIEFiZXIgZGVtIE5hbWVuIG5hY2gKaGFiIGljaCBhdWNoIG5pY2h0IGRlbiBKb2IsIGRhcyB6dSBhZW5kZXJuLiBJY2gga2VubiBkYSBhYmVyIHdlbi4uLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYXMgTUcgaXN0IHRvdCAoU3VsYW5pcywgMTMuIEFwciAyMDA4LCAxMDo1Njo0MSk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTIwODA2OTY5MiByZz1zY2htYXJybgp+IyEgdGlkPTEyMDgwNjk2OTIKU29sYW5nZSBPcmt0b2V0ZXIgYWxzIEtsYXNzZW5jbG93biBoaWVyIGFrdGl2IGlzdCwgCmlzdCBkYXMgTUcgdm9tICJ0b3Qgc2VpbiIgbm9jaCBldHdhcyBlbnRmZXJudC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAob25jZSBtb3JlKSAoT3JrdG9ldGVyLCAxNS4gQXByIDIwMDgsIDIyOjIxOjM3KToKW1NlaGVyOkhlbGldIHB1aCwgaGluIGlzIHNpZSwgamV0enQgKG51cikgbm9jaCBkZXIgc2NodXR6Z2Vpc3QKW1NlaGVyOk5pY29sYWldIGdpYnRzIGZ1ZXJzIGJlc3RlaGVuIGRlciBxdWVzdCB3ZW5pZ3N0ZW5zIGVpbiB6dWNrZXJsIHZvbgpbU2VoZXI6Tmljb2xhaV0ga3J1dW9scSA/CltTZWhlcjpHbm9tZV0gZWluZW4gcG9lc2VuIHJpbmcgZ2lidHMgZGFmdWVyCltTZWhlcjpOaWNvbGFpXSBkaWUgYm9lc2VuIHJpbmdlIGdpYnRzIGJlaW0ganV3ZWxpZXItLS0tIHZlcmxvYnVuZ3NyaW5nZQpbU2VoZXI6R25vbWVdIGRhcyBzaW5kIGRpZSBnYW56IGJvZXNlbi4gZGEga29lbm5lbiBzaWNoIHNvZ2FyIGNoYW90ZW4gbm9jaApbU2VoZXI6R25vbWVdIGVpbmUgc2NoZWliZSB2b24gYWJzY2huZWlkZW4uCltUb2Q6TGFyc10gSWdvciBoYXQgZ2VyYWRlIEhlbGkgdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmhlaW4gaW4gRmxhbW1lbj8gKEdyaW1tYm9ybiwgMTYuIEFwciAyMDA4LCAyMjo0Nzo0Nik6Cn4jISBybj1aZXNzdHJhIHJ0PTEyMDgzNzg1NjYgcmc9dHJlZmZlbgp+IyEgdGlkPTEyMDgzNzUxNDUKSmEsIGljaCBiaW4gYXVjaCBGZXVlciB1bmQgRmxhbW1lIGZ1ZXIgZGllIElkZWUuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFJoZWluIGluIEZsYW1tZW4/IChSdW1hdGEsIDE3LiBBcHIgMjAwOCwgMDk6MDk6NTEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEyMDgzNzg4NjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA4Mzc1MTQ1CkZsYW1ta3VjaGVuIHJlaWNodCB2b2VsbGlnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRmF2SWNvbiAoTWFoYXJldCwgMTguIEFwciAyMDA4LCAxNDoxNzo0NCk6Cn4jISBybj1LZXNzYSBydD0xMjA4NTIxMDE2IHJnPW9lZmZlbnRsaWNoa2VpdHNhcmJlaXQKfiMhIHRpZD0xMjA4NTIwNDAyCk5hamEgZ3V0LCBkZXIgSGFuZHRhc2NoZW5pbmhhbHQgbmltbXQgZXhwb25lbnRpYWwgenVyIEFuemFobCBkZXIgS2luZGVyIHp1LApkYXMgaXN0IHdhcyBnYW56IGFuZGVyZXMgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEZhdkljb24gKFJ1bWF0YSwgMTguIEFwciAyMDA4LCAxNDozMTo1Myk6Cn4jISBybj1NYWhhcmV0IHJ0PTEyMDg1MjEwNjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA4NTIwNDAyCkRhcyBoZWlzc3QgZXhwb25lbnRpZWxsLCBkZW5uCiJPYmVuIHN0ZWh0IGRlciBFeHBvbmVudCwgbmljaHQgZGFzIEV4cG9uYXQhIgoKUnVtKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEZhdkljb24gKE1haGFyZXQsIDE4LiBBcHIgMjAwOCwgMTQ6NDA6NDMpOgp+IyEgcm49UnVtYXRhIHJ0PTEyMDg1MjE5MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA4NTIwNDAyClBhaCwgd2FzIHdlaXNzdCBkdSBzY2hvbiB2b24gZGVuIEhhbmR0YXNjaGVuIHVlYmVybGFzdGV0ZXIgTXVldHRlcj8hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3aWxsa3VlcmxpY2ggZ2VrdWVyenQgKE9ya3RvZXRlciwgMjEuIEFwciAyMDA4LCAyMzowNzozMSk6CltTZWhlcjpIZWxpXSB3YWVyIGdlcm4gZGFiZWkgYWJlciBiaW4gd2llZGVybWFsIChmYXN0KSBuYWNrdApbU2VoZXI6VGliZXJpYW5dIEhlbGksIGR1IEV4aWJpdGlvbmlzdCEhISEKLi4uCi4uLgouLi4KW1NlaGVyOkN1dHRlcl0gbHVzdCBzY2hvbiwgZ3JhZCBrZWluZSB6ZWl0CltTZWhlcjpDdXR0ZXJdIHdlbm4gZHUgbiBiaXNzbCB3YXJ0ZXN0IGdlcm4KW1NlaGVyOkN1dHRlcl0ga29lbm5lIGFiZXIgc2hjb24gbm9jaCAyIHN0dW5kZW4gc2VpbiA6LS8KW1NlaGVyOk5ldmFkYV0gd2VubiBpY2ggZGFubiBub2NoIHdhY2ggYmluIGdlcm4gOykKW1NlaGVyOkN1dHRlcl0gb2sKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ2hpbmEvRnJhbmtyZWljaCAoVmFuaW9uLCAyMi4gQXByIDIwMDgsIDIwOjE5OjMzKToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMDg4NjYwMzUgcmc9d3d3Cn4jISB0aWQ9MTIwODg2NjAzNQpXZWlsIHdpciBNaXR0ZSBkZXIgVmllcnppZ2VyIHNwYW5uZW5kZXIgQXVzc2VucG9saXRpayBhYmdlc2Nod29yZW4gaGFiZW4uIFVuZApkYXMgaXMgYXVjaCBndXQgc28uCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBDaGluYS9GcmFua3JlaWNoIChHbG9pbnNvbiwgMjIuIEFwciAyMDA4LCAyMDoyMjowOSk6Cn4jISBybj1WYW5pb24gcnQ9MTIwODg4ODM3MyByZz1zY2htYXJybgp+IyEgdGlkPTEyMDg4NjYwMzUKQWJlciB3aXIgdmVydGVpZGlnZW4gZG9jaCBkaWUgRnJlaWhlaXQgYW0gSGluZHVrdXNjaCEKCkRlciBNYXJpbmUgZHVlcmZ0ZSBlcyBkb2NoIGF1Y2ggcHJpbWEgZ2VoZW4uIEpldHp0IHNjaGlja2VuIHdpciBzY2hvbiBhbnN0YXR0ClNwYW5pZW4gU2NoaWZmZSBnZWdlbiBQaXJhdGVuIGxvcy4gU2NodWV0enQgdW5zZXJlIFNpbGJlcmdhbGVvbmVuIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IENoaW5hL0ZyYW5rcmVpY2ggKFZhbmlvbiwgMjIuIEFwciAyMDA4LCAyMDoyNToyMik6Cn4jISBybj1HbG9pbnNvbiBydD0xMjA4ODg4NTI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwODg2NjAzNQpEaWUgU3BhbmllciBoYWJlbiBuaWNoIGdlZ2VuLCBzb25kZXJuIHNlbGJzdCBQaXJhdGVuIGdlc2NoaWNrdC4gWnVtaW5kZXN0CkRBTUFMUyAodG0pLiBBYmVyIGRpZSBQaXJhdGVuIGhldXRlIGhhYmVuIGxhZW5nc3QgbmljaHRzIG1laHIgcm9tYW50aXNjaGVzIC4uLgpzbyBzaWUgZGFzIGF1cyBTaWNodCBkZXIgT3BmZXIgamUgaGF0dGVuLiAKCkFiZXIgaW1tZXJoaW4gdHVuIFBpcmF0ZW4gd2FzIGZ1ZXJzIEtsaW1hLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IExpbnV4IHVuZCBXaW5kb3dzbWFuYWdlciBnZXN1Y2h0IChSb25kYSwgMjQuIEFwciAyMDA4LCAyMjoxMzozNCk6Cn4jISBybj1IdW1uaSBydD0xMjA3OTQzMDk2IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEyMDc4NTYxMjAKQWVoLCBIdW1uaT8gRHUgc2l0enQgYW4gbmVtIFJlY2huZXIgenVzYW1tZW4gbWl0IEdub21lIHVuZCB3dW5kZXJzdCBEaWNoLCBkYXNzCmRlciBuaWNodCBoeXBlcnNjaG5lbGwgaXN0Li4uPyEKClJvbmRhICpTQ05SLi4uKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogbm9jaCB3YXMgZ2VmdW5kZW4sIHdpZSBmaW5kZXQgaWhyIGRlbj8gKEdsb2luc29uLCAyNS4gQXByIDIwMDgsIDE1OjUwOjQ1KToKfiMhIHJuPU1pcmlsIHJ0PTEyMDkxMjg3MTYgcmc9cGFydHkKfiMhIHRpZD0xMjA5MDcyMzUwCkllZWVlaC4gTm9jaCBtZWhyIFdhc3NlciBmdWVyIGRpZSBIZXhlIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJ1ZyBpbSBTYXVmc2tpbGwgKEFsa29ob2wsIDI1LiBBcHIgMjAwOCwgMjA6MDM6NDApOgp+IyEgcm49R2FieWxvbiBydD0xMjA5MTQ2NTI1IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTEyMDkxNDY1MjUKYWxzbyBpY2ggd2lsbCBtYWwga2xhciBzdGVsbGVuOiBpY2ggaGFiZSBuaWVtYW5kZW0gaXJnZW5kd2FzIHZlcndlaHJ0IDopCgpBbGsuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJ1ZyBpbSBTYXVmc2tpbGwgKFZhbmhlbHNpbmcsIDI1LiBBcHIgMjAwOCwgMjA6MTk6NDcpOgp+IyEgcm49QWxrb2hvbCBydD0xMjA5MTQ2NjIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIwOTE0NjUyNQpCaXN0IER1IERpciBkYSBnYW56IHNpY2hlcj8KQm9lc2VyIEFsa29ob2wuLi4KKmdnKgoKVkgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdWNoZSBuZXVlcyBIYW5keSAoR25vbWUsIDI2LiBBcHIgMjAwOCwgMjM6MDY6MzUpOgp+IyEgcm49VmFuaW9uIHJ0PTEyMDkyMTM3NDAgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTIwOTIxMzc0MApkZWluIGFyYmVpdGdlYmVyIGlzdCBlaW52ZXJzdGFuZGVuIG1pdCB1dG1zLXNjaG5pY2tzY2huYWNrIGFiZXIgc3RvZXJ0CnNpY2ggYW4gbmVyIHNjaG5vZWRlbiBrYW1lcmEgaW0gaGFuZHk/CnZlcnN0ZWggZWluZXIgZGllIG1lbnNjaGVuLgoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3VjaGUgbmV1ZXMgSGFuZHkgKEh1bW5pLCAyNi4gQXByIDIwMDgsIDIzOjU3OjQyKToKfiMhIHJuPUdub21lIHJ0PTEyMDkyNDM5OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA5MjEzNzQwCldlbm4gRGVpbiBKb2IgaW0gd2VpdGVzdGVuIFNpbm5lIHNpY2hlcmhlaXRza3JpdGlzY2hlIEJlcmVpY2hlIGJldHJpZmZ0LCBrYW5uCmljaCBkYXMgdm9sbCB1bmQgZ2FueiB2ZXJzdGVoZW4sIGRhc3MgZGVyIENoZWYgZXZ0bC4gbmljaHQgd2lsbCwgZGFzcyBEdQpVbnRlcmxhZ2VuIGVpbmZhY2ggYWJmb3RvZ3JhZmllcmVuIGthbm5zdC4gWnVtIEJlaXNwaWVsLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFN1Y2hlIG5ldWVzIEhhbmR5IChaZXNzdHJhLCAyNy4gQXByIDIwMDgsIDAxOjE4OjMzKToKfiMhIHJuPUh1bW5pIHJ0PTEyMDkyNDcwNjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjA5MjEzNzQwCkRhcyBtaXQgZGVtIHNpY2hlcmhlaXRza3JpdGlzY2ggaXN0IGluIGRlciBUYXQgZWhlciB3ZWl0bGFldWZpZyB6dSB2ZXJzdGVoZW4sCndlbm4gQXJiZWl0Z2ViZXIgRm90by1IYW5keXMgYXVmIGRlbSBGaXJtZW5nZWxhZW5kZSB2ZXJiaWV0ZW4uIFNjaG9uIG9mdApnZWhvZXJ0LCBuaWNodCBudXIgYmVpIE1pbGl0YWVyICYgQ28uCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFN1Y2hlIG5ldWVzIEhhbmR5IChWYW5pb24sIDI4LiBBcHIgMjAwOCwgMDc6NDc6MDQpOgp+IyEgcm49R25vbWUgcnQ9MTIwOTI0Mzk5NSByZz1zY2htYXJybgp+IyEgdGlkPTEyMDkyMTM3NDAKSWNoIHBsYW50ZSB6d2FyIGtlaW5lIEdydW5kc2F0emRlYmF0dGUgbWl0IG1laW5lbSBBcmJlaXRnZWJlciwgYWJlciB1bSBEZWluZQpGcmFnZSB6dSBiZWFudHdvcnRlcm46IE1laW4gQXJiZWl0Z2ViZXIga3VlbW1lcnQgc2ljaCBuaWNodCB1bSBzY2hub2VkZQpLYW1lcmFzLCBoYXQgYWJlciBlaW4gUHJvYmxlbSBkYW1pdCwgd2VubiBMZXV0ZSBtaXQgZGVyIE1vZWdsaWNoa2VpdCBhbGxlcwptb2VnbGljaGUgenUgZm90b2dyYWZpZXJlbiBpbiBzZWluZW4gRWlucmljaHR1bmdlbiBoZXJ1bWxhdWZlbi4gSWNoIGdsYXViZQpkYW1pdCBpc3QgZXIgbmljaHQgYWxsZWluLiBJbiBkZW4gZW1wZmluZGxpY2hlcmVuIEJlcmVpY2hlbiBzdG9lcnQgZXIgc2ljaAphdWNoIGFtIFVNVFMtIG9kZXIgR1BSUy1zY2huaWNrc2NobmFjaywgZGEgd2VyZGVuIGdhciBrZWluZSBNb2JpbHRlbGVmb25lCmdlZHVsZGV0LiBVbmQgd2VubiBpY2ggbWVpbmVuIHByaXZhdGVuIEludGVybmV0enVnYW5nIGFuIGVpbmVuIGRpZW5zdGxpY2hlbgpSZWNobmVyIGFuaGFlbmdlLCBhbHNvIGVpbmVuIHVudWViZXJ3YWNodGVuIFp1Z2FuZyBuYWNoIGF1c3NlbiBlcnpldWdlLCB3dWVyZGUKaWNoIHZlcm11dGxpY2ggbWVpbmVuIEpvYiB2ZXJsaWVyZW4uIEFiZXIgYXVjaCBkYXMgd2lyZCBpbiB2aWVsZW4gRmlybWVuIHNvCnNlaW4sIGRpZSBnZXdpc3NlIFNpY2hlcmhlaXRzYmVkdWVyZm5pc3NlIGhhYmVuLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1haGFyZXQgaGF0IHNvZWJlbiBlaW4gQWJlbnRldWVyIGJlc3RhbmRlbi4gKFplc3N0cmEsICA0LiBNYWkgMjAwOCwgMTk6NDk6MDkpOgp+IyEgcm49TWFoYXJldCBydD0xMjA5OTIzMTM2IHJnPWFuemVpZ2VuCn4jISB0aWQ9MTIwOTg1NDU1MApBdXRzY2guLi4gTWhtbSwgdmllbGxlaWNodCBtZWludCBzaWUsIHNpZSBtdWVzc3RlIGpldHp0IGRyaW5nZW5kIHdhcwphdWZob2xlbi9uYWNoaG9sZW4uLi4gKmcqCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNYWhhcmV0IGhhdCBzb2ViZW4gZWluIEFiZW50ZXVlciBiZXN0YW5kZW4uIChPcmt0b2V0ZXIsICA1LiBNYWkgMjAwOCwgMTI6NDI6NTIpOgp+IyEgcm49TWFoYXJldCBydD0xMjA5OTgxMzAxIHJnPWFuemVpZ2VuCn4jISB0aWQ9MTIwOTg1NDU1MAoiRGVyIFdlZyBpc3QgZGFzIFppZWwiPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0YXRpIEZmbSwgMDguMDUuIChHcmltbWJvcm4sIDExLiBNYWkgMjAwOCwgMDk6MjU6MDEpOgp+IyEgb249QXJrIG90PTEyMTA0NTk1OTYgb2c9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISBybj1EZWwgcnQ9MTIxMDAwNDAwMSByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMjEwMDA0MDAxCkVZLCBkYXMgaGFiIGljaCBnZWxlc2VuISBOYWFhYSB3YXJ0ZXQsIGRhcyBuYWVjaHN0ZSBNYWwgamliYmV0IFZlcmJhbGhhdWUgOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogbGV1dGUgZ3JpbGxlbiBtYWNodCBzcGFzcyEgKEdsb2luc29uLCAxNS4gTWFpIDIwMDgsIDE2OjI4OjEwKToKfiMhIHJuPUJvaW5nIHJ0PTEyMTA4NTY3NDIgcmc9dHJlZmZlbgp+IyEgdGlkPTEyMTA4NTUzMzMKRGEgaXN0IGFiZXIgYXVjaCBzY2hvbiBBZXJ6dGUtS29uemVydCB1bmQgVGVuYXItR2VidXJ0c3RhZyA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGxldXRlIGdyaWxsZW4gbWFjaHQgc3Bhc3MhIChab29rLCAxNS4gTWFpIDIwMDgsIDE2OjU0OjAxKToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMTA4NjE2OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEwODU1MzMzCktvbW1lbiBkYSBhdWNoIHNvIHZpZWxlIFRhbWVkaG9uc3BpZWxlciB3aWUgTW9yZ2VuZ3JhdWVuc3BpZWxlcj8KWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogbGV1dGUgZ3JpbGxlbiBtYWNodCBzcGFzcyEgKFZlY3RvciwgMTUuIE1haSAyMDA4LCAxNzowMToyNSk6Cn4jISBybj1ab29rIHJ0PTEyMTA4NjMyNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEwODU1MzMzCmljaCBrb2VubnRlIG1pY2ggYWxzIHRhbWVkaG9uZXIgYW5tZWxkZW4gOikKCm1mZyBtYXJrb3ZAdGFtZWQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGxldXRlIGdyaWxsZW4gbWFjaHQgc3Bhc3MhIChHbG9pbnNvbiwgMTUuIE1haSAyMDA4LCAxNzowNzo0OCk6Cn4jISBybj1ab29rIHJ0PTEyMTA4NjMyNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEwODU1MzMzCkljaCBnbGF1YiBiZWltIEFlcnp0ZS1Lb256ZXJ0IHNpbmQgZGllIE1HbGVyIGluIFVlYmVyemFobC4gSWNoIHphZWhsZSB2aWVyLAp3ZW5uIGF1Y2ggendlaSBkYXZvbiBrYXVtIG5vY2ggYWt0aXYgc2luZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBsZXV0ZSBncmlsbGVuIG1hY2h0IHNwYXNzISAoVmVjdG9yLCAxNS4gTWFpIDIwMDgsIDE3OjEwOjAwKToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMTA4NjQwNjggcmc9c2NobWFycm4KfiMhIHRpZD0xMjEwODU1MzMzCkVpbiBBYmJpbGQgdm9uIEdsb2luc29uLiAgPzopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBsZXV0ZSBncmlsbGVuIG1hY2h0IHNwYXNzISAoR2xvaW5zb24sIDE1LiBNYWkgMjAwOCwgMTc6MjQ6MTcpOgp+IyEgcm49VmVjdG9yIHJ0PTEyMTA4NjQyMDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEwODU1MzMzClNvcnJ5LCBmYWxzY2hlIEdpbGRlIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogbGV1dGUgZ3JpbGxlbiBtYWNodCBzcGFzcyEgKEdsb2luc29uLCAxNS4gTWFpIDIwMDgsIDE3OjI3OjA4KToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMTA4NjUwNTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEwODU1MzMzCkFsbGVyZGluZ3Mga2FubiBpY2ggYXVmIDYgTm9ybWFsbWVuc2NoZW4gZXJob2VoZW4sIHdlbm4gd2lyIGRpZSBLb2VycGVyZnVlbGxlbgptaXQgZWluYmV6aWVoZW4uIEhhISBTbyB2aWVsIGRpY2tlIFNwaWVsZXIgaGF0IFRhbWVkaG9uIGRvY2ggbmljaHQgbWFsIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGxldXRlIGdyaWxsZW4gbWFjaHQgc3Bhc3MhIChCb2luZywgMTYuIE1haSAyMDA4LCAwODoxMjowNik6Cn4jISBybj1HbG9pbnNvbiBydD0xMjEwODY1MjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMDg1NTMzMwpEYSBrZW5uc3QgRHUgZGFzIFRhbWVkaG9uIHNjaGxlY2h0IDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4gKE5pY29sYWksIDE2LiBNYWkgMjAwOCwgMjA6MzE6NDMpOgpbU2VoZXI6TWlyYWthXSBuYSBkaWUgZ3J1YmUgaXN0IGRhcyBlaW5mYWNoc3RlIHVlYmVsIDopIDxGcmUsIDE4OjI3OjU3PgpbVG9kOkxhcnNdIEVpbmUgRmFsbGdydWJlIGhhdCBnZXJhZGUgTWlyYWthIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBGYWxsZ3J1YmUga2FubiBrYXVtIG5vY2ggZ2VzY2hsb3NzZW4gd2VyZGVuLl0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBsZXV0ZSBncmlsbGVuIG1hY2h0IHNwYXNzISAoR2xvaW5zb24sIDE4LiBNYWkgMjAwOCwgMjM6MDc6MDIpOgp+IyEgcm49Qm9pbmcgcnQ9MTIxMDkxODMyNiByZz1zY2htYXJybgp+IyEgdGlkPTEyMTA4NTUzMzMKTmEgZ3V0LCBpY2ggZXJob2VoZSBlaW4gbGV0enRlcyBNYWwgYXVmOiBpZ25vcmFudCwgZGljayB1bmQgZ3V0IHNvIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IGxldXRlIGdyaWxsZW4gbWFjaHQgc3Bhc3MhIChBbGJvaW4sIDE5LiBNYWkgMjAwOCwgMTY6MTA6NDUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIxMTE0NDgyMiByZz1zY2htYXJybgp+IyEgdGlkPTEyMTA4NTUzMzMKdW5kIGtsZWlua2FyaWVydDstKQphbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxPbWVucyAoTWlyYWthLCAyMy4gTWFpIDIwMDgsIDE2OjI0OjAxKToKdW50IGxlaWNoZQpEdSBzaWVoc3QgZGllIHN0ZXJibGljaGVuIFVlYmVycmVzdGUgR25vbWVzLgpbU2VoZXI6R25vbWVdIHdlZ2hpZXI/CgpNaXJha2EgTWFuZHJvcywgVGlnZXJpbiB2b24gWGlhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVpbiB3ZWl0ZXJlciBrbGFzc2lrZXIgKFZlY3RvciwgMjguIE1haSAyMDA4LCAwMToxNDo0Mik6CkFyayB0ZWlsdCBEaXIgbWl0OiBiaXMgZGVubmUKQXJrICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpEdSB0ZWlsc3QgQXJrc2hhdCBtaXQ6IG5hY2h0aQpBcmtzaGF0IHRlaWx0IERpciBtaXQ6IERhcyBpc3QgamEgaG9jaCBpbnRlcmVzc2FudCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBLbGVpbmFuemVpZ2UgaW4gYyd0IChHbG9pbnNvbiwgMjguIE1haSAyMDA4LCAyMzoxODoxNyk6Cn4jISBvbj1HbG9pbnNvbiBvdD0xMjEyMDA5NDkxIG9nPW9lZmZlbnRsaWNoa2VpdHNhcmJlaXQKfiMhIHJuPU1lc2lyaWkgcnQ9MTIxMjAwOTIwNCByZz1vZWZmZW50bGljaGtlaXRzYXJiZWl0Cn4jISB0aWQ9MTIxMjAwOTIwNApHZXdlcmJsaWNoZSBNdWRkZXI/IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLbGVpbmFuemVpZ2UgaW4gYyd0IChNZXNpcmlpLCAyOC4gTWFpIDIwMDgsIDIzOjE5OjAxKToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMTIwMDk0OTEgcmc9b2VmZmVudGxpY2hrZWl0c2FyYmVpdAp+IyEgdGlkPTEyMTIwMDkyMDQKTGFlc3N0IGR1IGtlaW5lbiAxLUV1cm8gam9iYmVyIGZ1ZXIgRGljaCBQYXJhb3JrcyBmYXJtZW4/Ck1lc2kKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2xlaW5hbnplaWdlIGluIGMndCAoWmVzc3RyYSwgMjguIE1haSAyMDA4LCAyMzoxOTowNyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjEyMDA5NDk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjAwOTIwNApTaW5kIGRpZSBkYW5uIGF1Y2gga2FldWZsaWNoPwoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdpbi1Ecml2ZXIgKFpvb2ssICAzLiBKdW4gMjAwOCwgMTQ6NDU6NTUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIxMjQ5Njk3MiByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEyMTI0OTY5NzIKSWlpaGtzLiBHbG9pbnNvbiBtYWNodCBXZXJidW5nIGZ1ZXIgV2luZCoqKiouIFoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2luLURyaXZlciAoUnVtYXRhLCAgMy4gSnVuIDIwMDgsIDE0OjQ2OjMxKToKfiMhIHJuPVpvb2sgcnQ9MTIxMjQ5NzE1NSByZz1zY2htYXJybgp+IyEgdGlkPTEyMTI0OTY5NzIKV2llc28sIGVyIGhhdCBkb2NoIHdhcyB2b24gQmV0cmllYnNzeXN0ZW0gZ2VzYWd0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2luLURyaXZlciAoWm9vaywgIDMuIEp1biAyMDA4LCAxNDo0ODozMyk6Cn4jISBybj1SdW1hdGEgcnQ9MTIxMjQ5NzE5MSByZz1zY2htYXJybgp+IyEgdGlkPTEyMTI0OTY5NzIKR29vZCBQb2ludCEKWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2luLURyaXZlciAoR2xvaW5zb24sICAzLiBKdW4gMjAwOCwgMTQ6NTY6NTcpOgp+IyEgcm49Wm9vayBydD0xMjEyNDk3MzEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjQ5Njk3MgpVbnRlciBXaW5kb3dzIGxhZXVmdCBkb2NoIFZNV2FyZSA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChHcmltbWJvcm4sICAzLiBKdW4gMjAwOCwgMjI6NTQ6MjIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIxMjUyMjg0NSByZz13d3cKfiMhIHRpZD0xMjEyNTIyODQ1Clp1bSBHbHVlY2sgaGFiZW4gc2llIGtlaW5lIEhlbG1lIGFuLCBzb25zdCBoYWV0dGUgZXMgc2ljaGVyIG5vY2ggbWVociBUb3RlIHVuZApWZXJsZXR6dGUgZ2VnZWJlbi4gCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoR2xvaW5zb24sICAzLiBKdW4gMjAwOCwgMjM6MDE6MTApOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEyMTI1MjY0NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CkRlciBlaW5lIGRhIGhhdHRlIGRvY2ggZWluZW4gSGVsbS4gRGVyIGxpbmtzIGFtIFdhZ2VuLgoKTmFqYSwgd2VuaWdzdGVucyBkYXMgVGhlbWEgUGxhY2Viby1IZWxtZSB3aWVkZXIgYXVmZ2V0YW4uIER1IGhhc3QgamEKaW56d2lzY2hlbiBzaWNoZXIgbWFsIGVpbmUgU3R1ZGllIGF1ZmdldHJpZWJlbiBpbiBkZXIgaXJnZW5kd2llIGdlemVpZ3Qgd2lyZCwKZGFzcyBkaWUgQW56YWhsIGRlciBWZXJsZXR6dW5nZW4gbWl0IEhlbG1wZmxpY2h0IGluIEF1c3RyYWxpZW4gb2RlciBtaXQgZGVtCkFuc3RlaWdlbiBkZXIgZnJlaXdpbGxpZ2VuIEhlbG1udXR6ZXIgaW4gYW5kZXJlbiBMYWVuZGVybiBpcmdlbmR3aWUgc2lua3QuIE51cgpzbyB1bSB6dSB3aWRlcmxlZ2VuLCBkYXNzIGRpZSBGcmF1IFJvYmluc29uIGluIEF1c3RyYWxpZW4gZWJlbiBsZWlkZXIga2VpbmUKZGVyYXJ0IHBvc2l0aXZlbiBBdXN3aXJrdW5nZW4gZ2VmdW5kZW4gaGF0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKEdyaW1tYm9ybiwgIDMuIEp1biAyMDA4LCAyMzowNTozMCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjEyNTI2ODcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpXb3p1IHNvbGx0ZSBpY2ggU3R1ZGllbiBsZXNlbj8gRGFzIGJyaXRpc2NoZSBWZXJrZWhyc21pbmlzdGVyaXVtIGhhdCAxNiBTdHVlY2sKYXVzZ2V3ZXJ0ZXQgdW5kIGZlc3RnZXN0ZWxsdCBkYXNzIGFsbGUgU3R1ZGllbiBlaW5lIFNjaHV0endpcmt1bmcgYmVzY2hlaW5pZ2VuCihodHRwOi8vd3d3LmRmdC5nb3YudWsvcGRmL3Bnci9yb2Fkc2FmZXR5L3Jlc2VhcmNoL3JzcnIvdGhlbWUxL2JpY3ljbGVoZWxtZXRzcgpldmlld29mZWZmZWN0NDcyNikuCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKEdsb2luc29uLCAgMy4gSnVuIDIwMDgsIDIzOjM0OjU1KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMjEyNTI3MTMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpWaWVsbGVpY2h0LCB1bSBkaXIgc2VsYnN0IGVpbiBCaWxkIHp1IG1hY2hlbi4gRGFzIGlzdCB6d2FyIGVpbmUgbmV0dGUKVWViZXJzaWNodCwgYWJlciB3ZW5uIGR1IG1hbCBnZW5hdSBoaW5zY2hhdXN0IHdpcnN0IGR1IGZpbmRlbiwgZGFzcyBkaWUKUHJhZW1pc3NlIGRlcyBEZlQgc2Nob25tYWwgInByb21vdGUgYmljeWNsZSBoZWxtZXRzIiBpc3QuCgpVbmQgenUgZGVtIFp3ZWNrIGlzdCBtYW4gc2ljaCBtYW5jaG1hbCBuaWNodCB6dSBibG9lZGUgaXJnZW5kd2FzIGlyZ2VuZHdpZQp6dXNhbW1lbnp1ZmFzc2VuLiBTaWVoZSBkaWUgU3R1ZGllIHZvbiBUaG9tcHNvbi9SaXZhcmEsIGRpZSBkb3J0IGVybnN0aGFmdAoodW5kIGRpZXNlIFp1c2FtbWVuZmFzc3VuZyBpc3Qgdm9uIDIwMDMsIGRhcyBQYXBlciB2b24gMTk4OSEpIG5vY2ggYWxzICJQcm8iCmF1ZmdlZnVlaHJ0IHdpcmQuIERpZSBTdHVkaWUgaGF0IHNvZ2FyIGVpbmVuIGVpZ2VuZW4gV2lraS1BcnRpa2VsIHp1IGlocmVuCm1ldGhvZGlzY2hlbiB1bmQgbWF0aGVtYXRpc2NoZW4gRmVobGVybi4KClZpZWxsZWljaHQgaXN0IGVzIGpldHp0IHNlaHIgYm9lc2Ugdm9uIG1pciwgZGVpbmVuIHNvcmdmYWVsdGlnCmhlcnJlY2hlcmNoaWVydGVuIFJlcG9ydCBhdWZncnVuZCBlaW5lcyBlaW56aWdlbiBGZWhsLUVpbnRyYWdzIHp1IHplcnJlaXNzZW4uIApBYmVyIG1hbCBhbHMgR2VnZW5iZWlzcGllbDogS2FsdGUgRnVzaW9uIGZ1bmt0aW9uaWVydCBqYSBhdWNoIG5pY2h0IGFsbGVpbgpkZXNoYWxiLCB3ZWlsIGluIGRlciBQTSBlaW4genVzYW1tZW5mYXNzZW5kZXIgQXJ0aWtlbCBhbGxlciBQdWJsaWthdGlvbmVuCnN0ZWh0IHVuZCBhbSBFbmRlIGVpbiAiZGVzaGFsYiBmdW5rdGlvbmllcnQgZGFzIiBzdGVodC4KCkFsc28gZnVlaHIgZG9jaCBtYWwgYml0dGUgZWluZSBlY2h0ZSBTdHVkaWUgYW4sIGRhbmtlLiBIYXN0IGphIGdlbnVnIFF1ZWxsZW4KZG9ydC4gV2llIGdlc2NocmllYmVuLCBkaWUgUmVhbGl0YWV0IGZ1bmt0aW9uaWVydCBqYSBkb2NoIGVoZXIgbmFjaCBkZW0gTXVzdGVyCiJCYXVjaGdlZnVlaGwgJ0ZhaHJyYWRoZWxtIGhpbGZ0JyIgLT4gVGhlc2UgLT4gRmFrdGVuc2FtbWVsbi4gV2lkZXJsZWdlbiBrb21tdAp2aWVsbGVpY2h0IG1hbCBkYW5hY2gsIG5pY2h0IGRhdm9yLiBTb25zdCBoYWV0dGVzdCBkdSBub2NoIGdhbnogdmllbGUKU2NodXR6YW11bGV0dGUgdW0gZGVuIEhhbHMuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoWm9vaywgIDMuIEp1biAyMDA4LCAyMzo0NjoyMik6Cn4jISBybj1HbG9pbnNvbiBydD0xMjEyNTI4ODk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpXYXMgc3ByaWNodCBlaWdlbnRsaWNoIGdlZ2VuIFN1cnZleS1BcnRpa2VsPwoKKE1hbCBkYXZvbiBhYmdlc2VoZW4sIG9iIGRhcyBWZXJrZWhyc21pbmlzdGVyaXVtIGVpbiBndXRlciBTdXJ2ZXktQXJ0aWtlbC0KQXV0b3IgaXN0Li4uKQoKWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoR2xvaW5zb24sICAzLiBKdW4gMjAwOCwgMjM6NTY6NDApOgp+IyEgcm49Wm9vayBydD0xMjEyNTI5NTgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpOaWNodHMsIHdlbm4gc2llIHNvcmdmYWVsdGlnIHNpbmQuIFNwcmljaCwgd2VubiBkaWUgQXV0aG9yZW4gZGllCnp1c2FtbWVuZ2VmYXNzdGVuIFN0dWRpZW4gYXVjaCBzZWxiZXIgbWFsIGxlc2VuLgoKVW5kIGRhbWl0IGtvbW1lbiB3aXIgenVtICJhYmdlc2VoZW4iLiBHcmltbWJvcm4gaGF0IGluIGtlaW5lbiBkZXIgQXJ0aWtlbCAicHJvClNjaHV0eiIgcmVpbmdlc2VoZW4gdW0gZGllIFF1YWxpdGFldCBkZXIgU3VydmV5LVN0dWRpZSB3ZW5pZ3N0ZW5zIG1hbCBncm9iIHp1CnVlYmVycHJ1ZWZlbi4gVW5kIGRpZSBBdXRvcmVuIGhhYmVuIGdhbnogb2ZmZW5zaWNodGxpY2ggYXVjaCBpbW1lciBudXIgaW4gZGllClNjaGx1ZXNzZSBkZXIgYW5nZWdlYmVuZW4gQXJ0aWtlbCBnZXNlaGVuIHVuZCBuaWNodCBhdWYgRmVobGVyIGdlbGVzZW4gLi4uCmFuZGVycyBrYW5uIGljaCBtaXIgbmljaHQgZXJrbGFlcmVuLCBkYXNzIGlobmVuIGVudGdhbmdlbiBpc3QsIGRhc3Mgc2llIHNpY2gKKDQgWml0YXRzdGVsbGVuKSBhdWYgZWluZSBsYW5nZSB2ZXJyaXNzZW5lIFN0dWRpZSAoZmFsc2NoZXIgVmVyZ2xlaWNoIHZvbgpLb250cm9sbGdydXBwZW4pIHN0dWV0emVuLgoKKFVuZCBpcmdlbmR3aWUgaGFiZSBpY2ggbWl0IHNvbGNoZW4gWnVzYW1tZW5mYXNzdW5nc3N0dWRpZW4gYXVjaCBpbSBTdHVkaXVtCnNlbHRlbiBHbHVlY2suIFp1bWluZGVzdCBhdXMgZWlnZW5lciBFcmZhaHJ1bmcgaXN0IGRhIGRpZSBRdWFsaXRhZXQgc28gbGFsYS4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChab29rLCAgNC4gSnVuIDIwMDgsIDAwOjAwOjQxKToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMTI1MzAyMDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CkFoYS4KCkRhcyBpc3QgbmF0dWVybGljaCBhZXJnZXJsaWNoLiAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChHbG9pbnNvbiwgIDQuIEp1biAyMDA4LCAwMDowMjo1MCk6Cn4jISBybj1ab29rIHJ0PTEyMTI1MzA0NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CldhcyBkYXZvbiwgZGFzcyBpY2ggZGllIFF1YWxpdGFldCBkZXMgRGZUIG1pdCBkZW0gZGVyIFBNIHZlcmdsZWljaGUgb2RlciBtZWluCkFlcmdlciBtaXQgTWV0YS1QYXBlcm4/IFp3ZWl0ZXJlcyBoYWIgaWNoIHZvcmVyc3QgaGludGVyIG1pciA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKEdyaW1tYm9ybiwgIDQuIEp1biAyMDA4LCAwODozOToxOCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjEyNTMwNTcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpXaWUgaWNoIGFuIGFuZGVyZXIgU3RlbGxlIHNjaG9uIHNjaHJpZWI6IEljaCBoYWJlIGtlaW5lcmxlaSBJbnRlcmVzc2UgZGFyYW4KRGljaCB2b24gZGVyIFNjaHV0endpcmt1bmcgZWluZXMgSGVsbWVzIHp1IHVlYmVyemV1Z2VuLiBOYXR1ZXJsaWNoZSBBdXNsZXNlCmlzdCB3YXMgZmVpbmVzLgpPbiBhIHJlbGF0ZWQgbm90ZTogSGFzdCBEdSBzY2hvbm1hbCBkYXJ1ZWJlciBuYWNoZ2VkYWNodCBkYXNzIFNpY2hlcmhlaXRzZ3VydGUKaW0gQXV0byBlaW4gZXJoZWJsaWNoZXMgU3RyYW5ndWxhdGlvbnNwb3RlbnRpYWwgYmVzaXR6ZW4gdW5kIGRhaGVyIGVjaHQKZ2VmYWVocmxpY2ggc2luZD8KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKEdsb2luc29uLCAgNC4gSnVuIDIwMDgsIDExOjMxOjQ4KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMjEyNTYxNTU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpPbiBhIHJlbGF0ZWQgbm90ZTogSGFzdCBkdSBkaWNoIHVlYmVyaGF1cHQgZGFtaXQgYmVzY2hhZWZ0aWd0LCB3YXJ1bQpTaWNoZXJoZWl0c2d1cnRlIGJlaSBzbyB2aWVsZW4gVW5mYWVsbGVuIGdyZWlmZW4gdW5kIHdpZSBzaWUgZ2VuYXUgd2lya2VuPwpEYXNzIHNpZSBiZWkgZWluZW0gc2VociB0eXBpc2NoZW4gKCEpIFVuZmFsbCBFbmVyZ2llIGltbWVyICghKSB2ZXJ0ZWlsZW4gdW5kCmRhYmVpIG5pY2h0IHplcmJyZWNoZW4gKGR1ZXJmZW4hKSB1bmQgZGFzcyBzaWUgb2huZSBLbmF1dHNjaHpvbmUgd2VuaWdlciBMZWJlbgpyZXR0ZW4gd3VlcmRlbj8gTmVpbj8gTWVya3QgbWFuLgoKUFM6IFVlYnJpZ2VucyBzaW5kIFNpY2hlcmhlaXRzZ3VydGUgZWluIHNjaG9lbmVzIEJlaXNwaWVsIGRhZnVlciwgZGFzcyBkZXIKZ2VzYW10ZSBOdXR6ZW4gc3RhdGlzdGlzY2ggaWhyZW4gU2NoYWRlbiAoekIgUmlzaWtva29tcGVuc2F0aW9uKSB1ZWJlcnN0ZWlndC4KRGEgZ2FiIGVzIGRhbm4gbmFlbWxpY2ggSU1ITyBTdHVkaWVuLiBTY3VmZmhhbSAyMDAzIGhpbmdlZ2VuIGZuZGV0IGZ1ZXIKQXVzdHJhbGllbiwgZGFzcyBzZWxic3QgaWhyIGhvY2hnZXJlY2huZXRlciBOdXR6ZW4gZGVyIEZhaHJyYWRoZWxtZSAobWFuCnZlcmdsZWljaGUgU2N1ZmZoYW0gMTk5NyB1bmQgMjAwMCkgYmVpIHdlaXRlbSBuaWNodCBhbiBkaWUgZ2VuZXJlbGxlbiBLb3N0ZW4KaGVyYW5yZWljaHQuCgpOYWphLCBlZ2FsLiBWb24gZGVyIFN0YXRpc3RpayBhdWYgZGVuIEVpbnplbG5lbiBzY2hsaWVzc2VuIGlzdCBkb29mLgpTZXR6IGRpciBzbyBlaW4gRGluZyBhdWYsIHdlbm4gZHUgb2Z0IHN0dW1wZiBhdWYgZGVuIEtvcGYgZmFlbGxzdCB1bmQKZGllIDEwMCBKb3VsZSBTY2h1dHogYnJhdWNoc3QuIFBsYXR6d3VuZGVuIHZvcmJldWdlbiBpc3Qgc2Nob24gbmljaHQKc2NobGVjaHQuCgpXZW5uIGR1IGRlaW5lbSBlcndhZWhudGVuIFNIVCB2b3JiZXVnZW4gd2lsbHN0IC0gbGF1dCBBbmRyZWFzIFVudGVyYmVyZwooRy5mLiBOZXVyb2NoaXJ1cmdpZSkgc2luZCBlcyAzMDAuMDAwIEZhZWxsZSBpbSBKYWhyLCAxNS4wMDAgZGF2b24KdHJhdW1hdGlzY2gsIDMwLTQwJSBkYXZvbiB0b2VkbGljaCAoNDUwMC02MDAwKSAtIHNvbGx0ZXN0IGR1IHdvYW5kZXJzCm9wdGltaWVyZW4gYWxzIGFtIEZhaHJyYWRmYWhyZW4gbWl0IHNlaW5lbiB+NTAwIHRvZWRsaWNoZW4gVW5mYWVsbGVuIHBybwpKYWhyIChTdGF0aXN0aXNjaGVzIEJ1bmRlc2FtdCkgYmVpIH40MCBNaW8gUmFkZmFocmVybi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoR25vbWUsICA0LiBKdW4gMjAwOCwgMTQ6MTU6MjYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEyMTI1NjE1NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1Cm51ciwgd2VubiBtYW4gc2ljaCBkZW4gZ3VydCB1bSBkZW4gaGFscyBzdGF0dCBxdWVyIHVlYmVyIGRpZSBicnVzdCBzcGFubnQuCmFiZXIgbWFjaCBtYWwuLi4gbmF0dWVybGljaGUgYXVzbGVzZSBpc3Qgd2FzIGZlaW5lcy4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoR3JpbW1ib3JuLCAgNC4gSnVuIDIwMDgsIDE0OjIxOjMxKToKfiMhIHJuPUdub21lIHJ0PTEyMTI1ODE3MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CkFsc28gYXVjaCBmdWVyIGRpZWplbmlnZW4gZGllIGVzIHNvbnN0IG5pY2h0IG1lcmtlbjogSWNoIGhhYmUgZWluZSBQYXJhbGxlbGUKZ2V6b2dlbiB6dW0gaHlzdGVyaXNjaGVuIEF1ZmhldWxlbiBhbHMgZGFtYWxzIGRpZSBHdXJ0cGZsaWNodCBlaW5nZWZ1ZWhydAp3dXJkZS4gRGFzIGVyaW5uZXJ0IGRhbm4gZG9jaCB6aWVtbGljaCBzdGFyayBhbiBkYXMgVmVyaGFsdGVuIGRlciBIZWxtZ2VnbmVyLiAKCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKE9ya3RvZXRlciwgIDQuIEp1biAyMDA4LCAxNDoyMzozNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTIxMjU4MjA5MSByZz1zY2htYXJybgp+IyEgdGlkPTEyMTI1MjI4NDUKRXJpbm5lcnN0IGR1IGRpY2ggbm9jaCBkYXJhbiwgZGFzcyBkYW1hbHMgTWVzc2VyIGluIGdyb3NzZXIgTW9kZSB3YXJlbiBtaXQKZGVuZW4gbWFuIHNpY2ggZGFubiBsb3NzY2huZWlkZW4ga2Fubiwgd2VubiBkYXMgU2NobG9zcyB2ZXJrbGVtbXQgaXN0IHVuZCBtYW4KYXVzIGRlbSBicmVubmVuZGVuIEF1dG8gcmF1cyBtb2VjaHRlPyAoZGFzIGRpZSBNZXNzZXIgYmVpbSBVbmZhbGwgZXJzdCBtYWwgYWxzCkdlc2Nob3NzIGR1cmNocyBBdXRvIGZsaWVnZW4uLiB3aG8gY2FyZXM/CgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKEdub21lLCAgNC4gSnVuIDIwMDgsIDE0OjMxOjUzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMjEyNTgyMDkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpkZXIgdmVyZ2xlaWNoIGhpbmt0LiB3YWVocmVuZCBtaWNoIGVpbiBndXJ0IGlkZWFsZXJ3ZWlzZSBkYXZvbiBhYmhhZWx0LApiZWkgbWVociBhbHMgNTAga20vaCBkdXJjaCBkaWUgZWlnZW5lIHNjaGVpYmUgenUgZmxpZWdlbiwgb2RlciB6dW1pbmRlc3QKbmFlaGVyZSBiZWthbm50c2NoYWZ0IG1pdCBpaHIgenUgbWFjaGVuLCBoYWVsdCBtaWNoIGVpbiBoZWxtIGFsbGVuZmFsbHMKZGF2b24gYWIsIHBsYXR6d3VuZGVuIGFtIGtvcGYgZGF2b256dXRyYWdlbi4KdW50ZXIgZGVuIExLVyBiencuIGR1cmNoIGRpZSBzY2hlaWJlIGRlcyBnZWduZXJpc2NoZW4gYXV0b3Mga2FubiBpY2gKZGFiZWkgaW1tZXIgbm9jaCBnZXJhdGVuLgpkZXIgbG9naWsgZGVyIGhlbG1iZWZ1ZXJ3b3J0ZXIgZm9sZ2VuZCBtdWVzc3RlbiBkYW5uIGF1Y2ggZnVzc2dhZW5nZXIKZWluZW4gaGVsbSB0cmFnZW4sIGRlbm4gc2NobGllc3NsaWNoIGthbm4gZXMgamEgYXVjaCB6dSBlaW5lbQp6dXNhbW1lbnByYWxsIHp3aXNjaGVuIHJhZGZhaHJlciB1bmQgZnVzc2dhZW5nZXIga29tbWVuLCB3b2JlaSBkZXIKZnVzc2dhZW5nZXIgZGFubiB1bWdlcmlzc2VuIHdpcmQgdW5kIGF1ZiBkZW4gaGludGVya29wZiBmYWVsbHQuCgpnYW56IGFiZ2VzZWhlbiB2b24gZGVyIGJlcnVlaG10ZW4gYmFuYW5lbnNjaGFsZSBhdWYgZGVtIGdlaHN0ZWlnLi4uCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKEdyaW1tYm9ybiwgIDQuIEp1biAyMDA4LCAxNDozOToxMyk6Cn4jISBybj1Hbm9tZSBydD0xMjEyNTgyNzEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpEdSBoYXN0IHJlY2h0LCBpY2ggc2VoZSBlaW4gZGFzcyBpY2ggbWljaCBnZWlycnQgaGFiZS4gRGVyIFZlcmdsZWljaCBoaW5rdCwKd2VpbCBlciBuYXR1ZXJsaWNoIEF1dG9zIG1pdCBGYWhycmFlZGVybiB2ZXJnbGVpY2h0LCB3YXMgZ2FyIG5pY2h0IGdlaHQuCkF1c3NlcmRlbSBnaWJ0IGVzIFVuZmFsbHN6ZW5hcmllbiwgd2llIER1IHJpY2h0aWcgaGlud2Vpc3QsIGluIGRlbmVuIGVpbiBIZWxtCm5pY2h0IGhpbnJlaWNoZW5kIHNjaHVldHp0LCB3YXMgZGVuIEhlbG0gc2lubmxvcyBtYWNodC4gRWJlbnNvIGhhc3QgRHUgcmVjaHQKZGFzcyBkZXIgU2NodXR6LCBkZW4gZGVyIEhlbG0gUmFkZmFocmVybiBiaWV0ZXQsIGRhbm4gYXVjaCBGdXNzZ2Flbmdlcm4KbnVldHpsaWNoIHdhZXJlLCB1bmQgZGEgZGllc2Uga2VpbmUgSGVsbWUgdHJhZ2VuIG51dHp0IGRlciBIZWxtIGF1Y2ggYmVpClJhZGZhaHJlcm4gbmljaHQuCkphLCBEdSBoYXN0IG1pY2ggYXVmIGRlciBnYW56ZW4gTGluaWUgdWViZXJ6ZXVndCBtaXQgRGVpbmVyIEFyZ3VtZW50YXRpb24uCktlaW5lIHdlaXRlcmVuIEZyYWdlbi4gRGEgaGF0IGphIG5vY2ggR2xvaW5zb24gbWl0IHNlaW5lciBTdHVkaWVucmVpdGVyZWkKc2FjaGRpZW5saWNoZXIgYXJndW1lbnRpZXJ0LCBhYmVyIGVocmxpY2guLi4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKE9ya3RvZXRlciwgIDQuIEp1biAyMDA4LCAxNDo0MTowMik6Cn4jISBybj1Hbm9tZSBydD0xMjEyNTgyNzEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpJY2ggaGF0dGUgImRhcyBWZXJnbnVlZ2VuIiBkdXJjaCBlaW5lIHNpY2ggb2VmZm5lbmRlIEF1dG90dWVyIG5hZWhlcmUKQmVrYW5udHNjaGFmdCBtaXQgZGVtIFN0cmFzc2VuYmVsYWcgenUgbWFjaGVuLiBOb2NoIGhvZmZlIGljaCwgZGFzcyBtaXIgZWluCmFlaG5saWNoZXMgRXJsZWJuaXMgaW4gWnVrdW5mdCBlcnNwYXJ0IGJsZWliZW4gd2lyZCwgZGVubm9jaCByYWRlbCBpY2ggc2VpdGRlbQptaXQgSGVsbS4gRWluZSBHZWhpcm5lcnNjaHVldHRlcnVuZyBpc3QgdW5hbmdlbmVobSBnZW51ZyB1bmQgdmllbGxlaWNodCBpc3QKZGFzIGJpc2NoZW4gd2FzIGRlciBIZWxtIGFiZmFlbmd0IGRhbm4gZ2VuYXUgZGVyIFVudGVyc2NoaWVkIHp3aXNjaGVuCmVpbmZhY2hlbSBoYXJ0ZW4gQXVmc2NobGFnZW4gdW5kIGRlciBHZWhpcm5lcnNjaHVldHRlcnVuZy4KCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoR25vbWUsICA0LiBKdW4gMjAwOCwgMTQ6NDI6MjcpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEyMTI1ODMxNTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1Cm1hY2h0IG5pY2h0cy4gZXMgd2FyIG5pY2h0IG1laW5lIGFic2ljaHQsIGRpY2ggdm9uIG1laW5lbiBhbnNpY2h0ZW4KenUgdWViZXJ6ZXVnZW4uIGdlaCBkdSBudXIgaGluIHVuZCBrdXJiZWwgZGllIHdpcnRzY2hhZnQgbWl0IGRlbSBrYXVmCnZvbiBmYWhycmFkaGVsbWVuIGFsbGUgcGFhciBqYWhyZSBhbi4KZGV1dHNjaGxhbmQgaGF0IHNjaGxpZXNzbGljaCBnZW51ZyBzY2h1bGRlbiwgZGllIG11ZXNzZW4gYWJnZWJhdXQgd2VyZGVuIDopCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKEdsb2luc29uLCAgNC4gSnVuIDIwMDgsIDE0OjQ3OjMyKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMjEyNTgzMTUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpEdSB2ZXJnbGVpY2hzdCBkZW5ub2NoIEFlcGZlbCBtaXQgQmlybmVuLiBMYXNzZW4gd2lyIGVpbmZhY2ggbWFsCldpcmtwcmluemlwaWVuIGF1c3NlbiB2b3IsIHNpbmQgZXMgaW1tZXIgbm9jaCBBZXBmZWwgdW5kIEJpcm5lbiwgZGVubjoKRGVyIEVyZm9sZyBoYXQgZGVtIEd1cnQgUmVjaHQgZ2VnZWJlbi4gRGFzIHN0ZWh0IGJlaW0gSGVsbSBub2NoIGltbWVyIGF1cywKdHJvdHogSGVsbXBmbGljaHQgaW4gV2VzdGF1c3RyYWxpZW4gc2VpdCB1ZWJlciAxMCBKYWhyZW4gdW5kIFN0dWRpZW4gZGF6dS4KQW5la2RvdGlzY2hlIEJld2Vpc2tyYWZ0LCB3aWUgT3JrdG9ldGVycyBXYXR0ZWhlbG1lcnNjaHVldHRlcnVuZyBhdWNoCm1hbCBhdXNzZW4gdm9yLgoKVGF0c2FlY2hsaWNoIHdhciBkaWUgU3R1ZGllIHZvbiBTY3VmZmhhbSAxOTk3IGVpbiBib2VzZXMgRXJ3YWNoZW4gLQprZWluZXJsZWkgRWluZmx1c3MgZGVzIEhlbG1zIGF1ZiBkaWUgVW5mYWxsc3RhdGlzdGlrIHRyb3R6CnJlbGF0aXYgcGxvZXR6bGljaGVyIDgwJSBIZWxtdHJhZ2VxdW90ZS4KClNjdWZmaGFtIDIwMDAgYmV3ZWlzdCBkYW5uIDIwJSB3ZW5pZ2VyIEtvcGZ1bmZhZWxsZS4gV1RGPyBXZW5uIG1hbiBzaWNoCmRhbm4gbWFsIHd1bmRlcnQsIHdpZXNvIHNpZSBhdWYgYW5kZXJlbiBFcmdlYm5pc3NlIGtvbW1lbiwgbXVzcyBtYW4gZ2VuYXUKbGVzZW4gdW5kIGZpbmRldCwgZGFzcyBzaWUgZGVuIHRpbWUtdHJlbmQgaGVyYXVzZ2Vub21tZW4gaGFiZW4uIFdlaWwKbmFlbWxpY2ggc2Nob24gdm9yIGRlbSBFeGlzdGllcmVuIGVpbmVyIEhlbG10cmFnZXF1b3RlIGRpZSBVbmZhbGx6YWhsZW4KbWl0IEtvcGZ2ZXJsZXR6dW5nZW4gZnVlciBSYWRmYWhyZXIgYXVzIHVuYmVrYW5udGVuIEdydWVuZGVuIHN0ZXRpZwpmaWVsLCB3dXJkZSBkYXMgaW4gZGVyIDk3ZXIgU3R1ZGllIGVpbmJlem9nZW4uIERhcyBoYXQgbWFuIGluIGRlciAyMDAwZXIKbWFsIGViZW4gcmF1c2dlbm9tbWVuIHVuZCBzaWVoZSBkYTogZXMgZ2FiIHdlbmlnZXIgVW5mYWxsemFobGVuIG1pdApLb3BmdmVybGV0enVuZ2VuIHNlaXQgQmVnaW5uIGRlciBIZWxtcGZsaWNodC4KCkVpbmUgRnJhdSBEci4gRG9yb3RoeSBSb2JpbnNvbiBndWNrdCBzaWNoIGRhcyBub3RvcmlzY2ggZ2VybiBhbiB1bmQgaGF0Cm5vY2htYWwgZGllIG5ldWVuIERhdGVuIGRlciAyMDAwZXItU3R1ZGllIG1pdCB0aW1lLXRyZW5kIGJlcmVjaG5ldC4gVW5kCndpZWRlciB6ZWlndCBkZXIgSGVsbSBrZWluZSBBdXN3aXJrdW5nIGF1ZiBkaWUgVW5mYWxsc3RhdGlzdGlrZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKEdsb2luc29uLCAgNC4gSnVuIDIwMDgsIDE0OjUyOjQ0KToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMTI1ODM2NTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1ClBhcmRvbi4gTmV1c2VlbGFuZC4gV2VzdGF1c3RyYWxpZW4gaXN0IGVpbiBlaWdlbmVzIERpbmcuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKFJ1bWF0YSwgIDQuIEp1biAyMDA4LCAxNDo1MzoyOCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjEyNTgzOTY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpTY2hhZGUgaWNoIHdvbGx0ZSBzY2hvbiBlbnRnZWduZW4sIGRhc3MgZGllIGJ1bnRlbiBIZWxtIGRpZSBLYWVuZ3VydWhzIHJlaXplbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChHbG9pbnNvbiwgIDQuIEp1biAyMDA4LCAxNDo1NToyNyk6Cn4jISBybj1SdW1hdGEgcnQ9MTIxMjU4NDAwOCByZz1zY2htYXJybgp+IyEgdGlkPTEyMTI1MjI4NDUKTmEgc28gc2luZCBlcyBoYWx0IFNjaGFmZSwgZGllIGFuZ3JlaWZlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoT3JrdG9ldGVyLCAgNC4gSnVuIDIwMDgsIDE0OjU1OjUxKToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMTI1ODQxMjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CldhdHRpZXJ0ZSBTY2hhZmU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoR2xvaW5zb24sICA0LiBKdW4gMjAwOCwgMTQ6NTY6MzUpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEyMTI1ODQxNTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1Ck1pdCBaYWNrZW4gYW0gS29wcC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoUnVtYXRhLCAgNC4gSnVuIDIwMDgsIDE0OjU3OjE5KToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMTI1ODQxOTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1Ck5laW4sIGRpZSBnZWhlbiBhdWYgSUNFcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChHbG9pbnNvbiwgIDQuIEp1biAyMDA4LCAxNDo1ODo1NSk6Cn4jISBybj1SdW1hdGEgcnQ9MTIxMjU4NDIzOSByZz1zY2htYXJybgp+IyEgdGlkPTEyMTI1MjI4NDUKRGllIGhhYmVuIHNpZSBpbiBOWiBuaWNodC4gV2FocnNjaGVpbmxpY2ggYXR0YWNraWVyZW4gZGllIGRlc2hhbGIgTG9yZApIZWxtY2hlbi1SYWRsZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKE9ya3RvZXRlciwgIDQuIEp1biAyMDA4LCAxNTowMDo0MCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjEyNTg0MTk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpXYXR0aWVydGUgSXJva2VzZW53dXJmc2NoYWZlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKEdsb2luc29uLCAgNC4gSnVuIDIwMDgsIDE1OjAxOjI2KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjEyNTg0NDQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpOdXIgQXBhY2hlbiB3YW5kZXJuIHNvIHdlaXQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKFpvb2ssICA0LiBKdW4gMjAwOCwgMTU6MjE6MDApOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEyMTI1ODIyMTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CkJlaW0gVGhlbWEgTWVzc2VyIHVuZCBmbGllZ2VuIGZhZWxsdCBtaXIgZWluOiBXYW5uIHdpcmQgZGFzIGRlbm4gbWl0IApkZW4gd2F0dGllcnRlbiBCcmF0ZW4gZW5kbGljaCBtYWwgaW4gZGllIFByYXhpcyB1bWdlc2V0enQ/IFoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChab29rLCAgNC4gSnVuIDIwMDgsIDE1OjIzOjA5KToKfiMhIHJuPUdub21lIHJ0PTEyMTI1ODI3MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1Ck9oYSEgQmFuYW5lbnNjaGFsZW4gaW4gQmVybGluPwpFcyB0aXRlbHRlIGRpZSBUaXRhbmljOgoiWm9uZW4tR2FieSAoMTcpIGltIEdsdWVjayAoQlJEKTogTWVpbmUgZXJzdGUgQmFuYW5lIgoKaHR0cHM6Ly93d3cudGl0YW5pYy1tYWdhemluLmRlL3Nob3AvaW5kZXgucGhwP2FjdGlvbj1zaG93ZGV0YWlscyZmcm9tPWxpc3QmcGFnCmVOcj0xJnByb2R1Y3RJZD0zZjcxOWRhMTc3YTA0JnNpZD1yb2JvdAoKWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKEdub21lLCAgNC4gSnVuIDIwMDgsIDE1OjIzOjM3KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjEyNTg0NDQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpXYXR0aWVydGUgSXJva2VzZW53dXJmc2NoYWZlIChyYXNpZXJ0KS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChab29rLCAgNC4gSnVuIDIwMDgsIDE1OjMxOjA0KToKfiMhIHJuPUdub21lIHJ0PTEyMTI1ODMzNDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CkludGVyZXNzYW50ZSBGcmFnZSBmdWVyIGVpbmVuIFN0dWRlbnRlbjogV2VsY2hlIFdpcmt1bmcgaGF0IApPcmtUcyBLYXVmIHZvbiBGYWhycmFkaGVsbWVuIChhKSBmaXNrYWxpc2NoIHVuZCAoYikgaW4gQmV6dWcKYXVmIGRpZSBTdGFhdHN2ZXJzY2h1bGR1bmcuIERhIG11c3MgbWFuIGVpbmUgZ2FuemUgTWVuZ2UgYmVkZW5rZW4hCloKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChab29rLCAgNC4gSnVuIDIwMDgsIDE1OjMzOjUxKToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMTI1ODM2NTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1Ck9rLCBpY2ggYmVtdWVoZSBtaWNoIG1hbCB1bSBFcm5zdGhhZnRpZ2tlaXQ6IEF1cyB3ZWxjaGVtIEdydW5kIHd1cmRlCmRpZXNlciAidGltZSB0cmVuZCIgaGVyYXVzZ2VyZWNobmV0PyBJcmdlbmR3aWUgc2NoZWludCBtaXIgZG9jaCBkYXMKenVncnVuZGUgbGllZ2VuZGUgVmVyaGFsdGVuc21vZGVsbCB1bmQgZGllIHN0YXRpc3Rpc2NoZSBNb2RlbGxpZXJ1bmcgZXR3YXMKZnJhZ3d1ZXJkaWcsIHdlbm4gbWFuIG5pY2h0IGVya2xhZXJ0ZSBUcmVuZHMgZWluZmFjaCBzbyBoZXJhdXNuaW1tdC4gCgpMYWVzc3QgbWFuIGRpZSBaYWhsZW4sIHdpZSBzaWUgc2luZCwgbXVlc3N0ZSBtYW4gZG9jaCBBbnR3b3J0IGF1ZiBkaWUKRnJhZ2UgZ2ViZW4ga29lbm5lbiwgd2lldmllbCBBYndlaWNodW5nIGRlciBVbmZhbGxxdW90ZW4gZHVyY2ggZGFzClRyYWdlbiB2b24gRmFocnJhZGhlbG1lbiBlcmtsYWVydCB3ZXJkZW4ga29lbm5lbi4gCgpaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoR2xvaW5zb24sICA0LiBKdW4gMjAwOCwgMTY6MDA6MDUpOgp+IyEgcm49Wm9vayBydD0xMjEyNTg2NDMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpEZXIgdGltZS10cmVuZCB3dXJkZSByYXVzZ2VyZWNobmV0LCB3ZWlsIGVyIGRlbiBlcndhcnRldGVuIEVmZmVrdCB2b24gSGVsbWVuCiJzd2FtcGVkIiBoYXQgdW5kIHdpZWRlciBoYWV0dGUuIE5hZWhyZSBFcmxhZXV0ZXJ1bmdlbiBnaWJ0IGVzIGRhIEFGQUlSIG5pY2h0LgpJY2ggaGFiIGdyYWQga2VpbiBVbmkgTmV0eiB1bSBkaWUgbm9jaG1hbCBnZW5hdSB6dSB6aXRpZXJlbi4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKEdsb2luc29uLCAgNC4gSnVuIDIwMDgsIDE2OjAwOjIzKToKfiMhIHJuPVpvb2sgcnQ9MTIxMjU4NjI2NCByZz1zY2htYXJybgp+IyEgdGlkPTEyMTI1MjI4NDUKR2FyIGtlaW5lbi4gT3JraSBpc3QgZG9jaCBPZXNpLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChNYWhhcmV0LCAgNC4gSnVuIDIwMDgsIDE2OjEyOjM4KToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMTI1ODgwMDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1Ck5hamEsIHZpZWxsZWljaHQgYmFzaWVydCBkaWVzZXIgIlRpbWUgVHJlbmQiIGphIGF1Y2ggZGFyYXVmLCBkYXNzIGRpZSBMZXV0ZQpmcmVpd2lsbGlnIGltbWVyIG9lZnRlciBkZW4gSGVsbSBhdWZnZXNldHp0IGhhYmVuLiBTbyBlaW5lbiBUcmVuZCBnaWJ0L2dhYiBlcwpiZWkgdW5zIHNjaGxpZXNzbGljaCBhdWNoLCBhbHMgd2lyIEtpbmRlciB3YXJlbiwgZ2FiIGVzIHNvIGV0d2FzIHdpZQpGYWhycmFkaGVsbWUgbm9jaCBuaWNodCwgbWl0dGxlcndlaWxlIHRyYWdlbiBkYXMgcmVjaHQgdmllbGUuICBEYW5uIHd1ZXJkZQpkaWVzZSBpbnRlcmVzc2FudGUgU3R1ZGllIGxlZGlnbGljaCBuYWNod2Vpc2VuLCBkYXNzIGVpbmUgSGVsbXBmbGljaHQgbmljaHQKbm90d2VuZGlnIGlzdCwgc29sYW5nZSBkaWUgTGV1dGUgZnJlaXdpbGxpZyBIZWxtZSB0cmFnZW4gLi4uCgpBYmVyIGVzIGthbm4gbmF0dWVybGljaCBhdWNoIGFtIEtsaW1hd2FuZGVsIG9kZXIgYW4gTWFnaWUgZ2VsZWdlbiBoYWJlbiwgZGFzcwphdWYgZWlubWFsIGRpZSBIYWV1Zmlna2VpdCBkZXIgS29wZnZlcmxldHp1bmdlbiBiZWkgRmFocnJhZGZhaHJlcm4gYWJnZW5vbW1lbgpoYXQuIFdlaXNzIG1hbiBoYWx0IG5pY2h0LCBkYXMgaGF0IGphIG9mZmVuYmFyIGtlaW5lciBnZXdhZ3QgenUgdW50ZXJzdWNoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoR2xvaW5zb24sICA0LiBKdW4gMjAwOCwgMTY6MTU6NTQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIxMjU4ODAwNSByZz1zY2htYXJybgp+IyEgdGlkPTEyMTI1MjI4NDUKQWNoc28uIFdpZXNvIGVyIGJlaW0gMTk5N2VyIFBhcGVyIGVpbmJlem9nZW4gKGFsc28gYXVzIGRlbiBFcmdlYm5pc3NlbgpyYXVzZ2VyZWNobmV0KSB3dXJkZT8gRGllIEVya2xhZXJ1bmcgZGVzIFBhcGVycyBkYXp1IGtlbm5lIGljaCwgZGllIERhdGVuCnplaWdlbiBlaW5mYWNoIGdhbnogb2huZSBIZWxtIGVpbmVuIG5pY2h0IG5hZWhlciBlcmZvcnNjaHRlbiBUcmVuZCB6dSB3ZW5pZ2VyCktvcGZ2ZXJsZXR6dW5nZW4gaW0gTGF1ZmUgZGVyIFplaXQuIEVya2xhZXJ1bmdlbiByZWljaGVuIHZvbiBzdHJlbmdlcmVuClZlcmtlaHJza29udHJvbGxlbiBiaXMgenUgQWxrb2hvbGdlc2V0emVuLCBpbiBkZW0gdW50ZXJzdWNodGVuIEphaHJ6ZWhudAooMTk4eCwgYWIgMTk4NiBtaXQgSGVsbWVuLCBiaXMgMTk5eCkgaXN0IGVpbmlnZXMgbWVociBwYXNzaWVydCBhbHMgbnVyIGVpbgpIZWxtZ2VzZXR6LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChHbG9pbnNvbiwgIDQuIEp1biAyMDA4LCAxNjoxNzo1MSk6Cn4jISBybj1NYWhhcmV0IHJ0PTEyMTI1ODg3NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1Ck5laW4sIGRhcyBlYmVuIG5pY2h0LiBEZXIgVHJlbmQgenUgd2VuaWdlciBVbmZhZWxsZW4gaXN0IGluIGRlbiBaYWhsZW4gc2Nob24KZGEsIGJldm9yIHVlYmVyaGF1cHQgZGllIEhlbG1lIGF1ZiBkZW4gTWFya3Qga2FtZW4gKDE5ODYpIHVuZCBzZXR6dCBzaWNoIHVlYmVyCmRpZSBuaWVkcmlnZSBIZWxtdHJhZ2VxdW90ZSBiaXMgaGluIHp1ciBFcmhvZWh1bmcgZGVyIGZyZWl3aWxsaWdlbiBUcmFnZXF1b3RlCmJpcyB6dW0gR2VzZXR6IGhpbiBpbW1lciBhZWhubGljaCBmb3J0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChab29rLCAgNC4gSnVuIDIwMDgsIDE2OjI3OjU3KToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMTI1ODgwMDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CkhtLiBLbGluZ3QgbmljaHQgc28gdWViZXJ6ZXVnZW5kLCBkYXNzIGRhcyBlaW5lIHZlcm51ZW5mdGlnZQpWb3JnZWhlbnN3ZWlzZSB3YXIuIEtsaW5ndCBlaW4gd2VuaWcgbmFjaDogSWNoIGJ1ZXJzdGUgbWFsIApuaWNodCBlcmtsYWVyYmFyZSBFbnR3aWNrbHVuZ2VuIGF1cyBtZWluZW4gRGF0ZW4sIGRhbWl0IG1laW4KTW9kZWxsIHZvbSB2ZXJibGVpYmVuZGVuIFJlc3QgbW9lZ2xpY2hzdCB2aWVsIGVya2xhZXJ0LiBaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoWm9vaywgIDQuIEp1biAyMDA4LCAxNjoyOTowNSk6Cn4jISBybj1NYWhhcmV0IHJ0PTEyMTI1ODg3NTggcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CgpNZWluZSBWZXJtdXR1bmcgaXN0LCBkYXNzICJNYWdpZSIgbmljaHQgZXhwbGl6aXQgZ2V0ZXN0ZXQgd2lyZC4gCkljaCB2ZXJtdXRlLCBkaWUgbWVpc3RlbiBTdHVkaWVuIGZhc3NlbiB1bnRlciBNYWdpZXIgIm5pY2h0IGVya2xhZXJiYXJlClZlcmFlbmRlcnVuZ2VuIi4gOykgWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKEdsb2luc29uLCAgNC4gSnVuIDIwMDgsIDE2OjMxOjU4KToKfiMhIHJuPVpvb2sgcnQ9MTIxMjU4OTY3NyByZz1zY2htYXJybgp+IyEgdGlkPTEyMTI1MjI4NDUKVGphLiBEdSBoYXN0IGRhIGhhbHQgc28gZWluZW4gVHJlbmQuIFNjaHJlaWJzdCBkdSBkaXIgZGVuIGd1dCwgb2J3b2hsIGRpZQpIaXN0b3JpZSBkYWdlZ2VuIHNwcmljaHQgb2RlciBtYWNoc3QgZHUgaWhuIHJhdXMuIFNvIG9kZXIgc28gYmlzdCBkdSBhdWYgZGVyCnVuc2F1YmVyZW4gU2VpdGUuIFZlcmJsZWlidCB6dSB6ZWlnZW4sIGRhc3MgZGVyIEhlbG0gZWluZSBXaXJrdW5nIGhhdC4KCk5hZWNoc3RlIFN0dWRpZT8gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoR25vbWUsICA0LiBKdW4gMjAwOCwgMTY6MzM6MzQpOgp+IyEgcm49Wm9vayBydD0xMjEyNTg5Njc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQprbGluZ3QgaW4gbWVpbmVuIGF1Z2VuIHNlaHIgdWViZXJ6ZXVnZW5kLiB3YXJ1bSBzb2xsdGUgbWFuIHplaXR0cmVuZHMsCmRpZSBkaWUgZXJnZWJuaXNzZSBlaW5lciBzdGF0aXN0aWsgdmVyZmFlbHNjaGVuLCBuaWNodCBoZXJhdXNyZWNobmVuPwp6dW1hbCBlcyBiZWkgZWluZnVlaHJ1bmcgZGVyIGhlbG1wZmxpY2h0IGtlaW5lbiBncnVuZCBnaWJ0LCBhdWYgYW5kZXJlCm1lY2hhbmlzbWVuIChrb250cm9sbGUsIGV0Yy4pIHZlcnppY2h0ZXQgenUgaGFiZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoWm9vaywgIDQuIEp1biAyMDA4LCAxNjozMzo0OCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjEyNTg5OTE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpUamEsIHdlbm4gaWNoIG5pY2h0IHplaWdlbiBrYW5uLCBkYXNzIG1laW4gTW9kZWxsIGlobiBlcmtsYWVydCwgCmRhbm4gd3VlcmQgaWNoIHNhZ2VuICJJdCdzIG5vdCBpbiB0aGUgZGF0YS4iIFoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChab29rLCAgNC4gSnVuIDIwMDgsIDE2OjM2OjE3KToKfiMhIHJuPUdub21lIHJ0PTEyMTI1OTAwMTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CktlaW5lIEFobnVuZywgd2llIGRpZSBTdHVkaWUgZ2ViYXV0IGlzdC4gQWJlciBpY2ggd3VlcmRlIGRpZSAKRGF0ZW4gbmVobWVuIHVuZCBkYW5uIGViZW4gYmVyaWNodGVuOgoKU291bmRzb3ZpZWwgdm9tIFRyZW5kIGVya2xhZXJ0IGRlciBIZWxtLApzb3VuZHNvdmllbCB2b20gVHJlbmQgd2lyZCBuaWNodCBlcmtsYWVydCwgaXN0IGFiZXIgb2ZmZW5rdW5kaWcgYXVzCndlbGNoZW4gR3J1ZW5kZW4gYXVjaCBpbW1lciBkYS4KCgpXZWlzcyBqYSBuaWNodCwgd2llIGlociBtaXQgZGVuIEJhbmFuZW5zY2hhbGVuIHNvbGNoZSBBbmFseXNlbgpkdXJjaGZ1ZWhydC4KCloKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChab29rLCAgNC4gSnVuIDIwMDgsIDE2OjQxOjE0KToKfiMhIHJuPUdub21lIHJ0PTEyMTI1OTAwMTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CkluIFVua2VubnRuaXMgZGVyIFN0dWRpZSBrbGluZ3QgZGFzIGVpbiB3ZW5pZyB3aWUgZm9sZ2VuZGUKVm9yZ2VoZW5zd2Vpc2U6CgpJY2ggaGFiZSBlaW4gS29uanVua3R1cm1vZGVsbCwgZGFzIGRpZSBWZXJhZW5kZXJ1bmcgZGVyCkFyYmVpdHNsb3NlbnphaGxlbiB1bmQgZGllIFZlcmFlbmRlcnVuZyBkZXMgQnJ1dHRvc296aWFscHJvZHVrdGVzCmVya2xhZXJlbiBzb2xsLgoKTWVpbiBNb2RlbGwgd2VuZGUgaWNoIGF1ZiBlaW5lbiBaZWl0cmF1bSBhbi4gSXJnZW5kd2llIGVya2xhZXJ0CmVzIGFiZXIgbnVyIHNlaHIgd2VuaWcgdm9uIGRlbiBWZXJhZW5kZXJ1bmdlbi4gQWxzbyBlbnRzY2hsaWVzc2UgaWNoCm1pY2ggZGVuIFRyZW5kLCBkZXIgd29obCBncm9lc3NlciBpc3QgYWxzIG1laW5lIFplaXRyYXVtLCBkZW4gaWNoIApiZXRyYWNodGVuIHdpbGwsIGVpbmZhY2ggcmF1c3p1bmVobWVuLiAKCktsYXIsIGthbm4gbWFuIG1hY2hlbi4gQWJlciBkYW5uIHNvbGx0ZSBtYW4gYXVjaCBkYXp1IHNhZ2VuLCBkYXNzIGRhcwplaWdlbmUgS29uanVua3R1cm1vZGVsbCBlYmVuIHZvbiBkZW4gdGF0c2FlY2hsaWNoZW4gVmVyYWVuZGVydW5nZW4KbnVyIHdlbmlnIGVya2xhZXJ0IHVuZCBiZWdydWVuZGVuLCB3YXJ1bSBtYW4gZGllIERhdGVuIGdlYnVlcnN0ZXQgaGF0LgoKRWluICJ3ZWlzcyBhdWNoIG5pY2h0LCB3YXJ1bSBkYXMgc2ljaCB2ZXJhZW5kZXJ0IiBmaW5kZSBpY2ggZXR3YXMgLi4uCi4uLiBrb21pc2NoLgoKCloKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChHbG9pbnNvbiwgIDQuIEp1biAyMDA4LCAxNjo0MjoxNik6Cn4jISBybj1ab29rIHJ0PTEyMTI1OTAxNzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CldpciBtYWNoZW4gZGFzIG1pdCBHdXJrZW4uIEltIDk3ZXIgR3Vya2VuZ2xhcyBsYWcgZWluIFpldHRlbCAibGVpZGVyIGtvZW5uZW4Kd2lyIGltIFRyZW5kIGtlaW5lbiBIZWxtYW50ZWlsIGVya2VubmVuIiB1bmQgaW0gMjAwMGVyIGVpbmVyICJkZXIgVHJlbmQgaXN0Cm51ciBkZW0gSGVsbSB6dXp1c2NocmVpYmVuLCBkYXMgdm9yaGVyIHdhciBNYWdpZSIuCgpOYSwgaW4gZGVyIFBvc2l0aXZsaXN0ZSBkZXMgRGZUIHdhcmVuIGphIG5vY2ggZWluIHBhYXIgU3R1ZGllbiAuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoR25vbWUsICA0LiBKdW4gMjAwOCwgMTY6NDI6NTApOgp+IyEgcm49Wm9vayBydD0xMjEyNTkwMTc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQoiaWhyIj8gOikKaWNoIG1hY2ggZ2FyIGtlaW5lIGhlbG1hbmFseXNlbiwgaWNoIGhhYmUgbmljaHQgbWFsIGVpbiBmYWhycmFkLgpicmF1Y2h0IG1hbiBpbiBiZXJsaW4gYXVjaCBuaWNodC4gYmVpIGRlbSB2ZXJrZWhyIGhpZXIgaXN0IGRhcyBmYXN0CmdlZmFlaHJsaWNoZXIgYWxzIGF1dG9mYWhyZW4gdW5kIG1hbiBrb21tdCBhdWNoIG9obmUgdWViZXJhbGwgaGluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKEdsb2luc29uLCAgNC4gSnVuIDIwMDgsIDE2OjQzOjU1KToKfiMhIHJuPUdub21lIHJ0PTEyMTI1OTA1NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CktlaW4gV3VuZGVyLCBkYXNzIGR1IGltbWVyIHNvIHVucHVlbmt0bGljaCBiaXN0LiBJbiBCZXJsaW4gb2huZSBGYWhycmFkPyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChab29rLCAgNC4gSnVuIDIwMDgsIDE2OjQ0OjQxKToKfiMhIHJuPUdub21lIHJ0PTEyMTI1OTA1NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1Cm1pciBnaW5nIGVzIGphIG1laHIgdW0gZGllIG1ldGhvZGlrIGRlciBhbmFseXNlIHZvbiB6ZWl0cmVpaGVuOyBkYQp3b2xsdGUgaWNoIG51ciB3aXNzZW4sIHdpZSAiaWhyIiBkYXMgbWl0IHNvbGNoZXJtYXNzZW4gbmljaHQgCmVya2xhZXJiYXJlbiB0cmVuZHMgbWFjaHQuIHoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChHbm9tZSwgIDQuIEp1biAyMDA4LCAxNjo1NDowNik6Cn4jISBybj1ab29rIHJ0PTEyMTI1OTA2ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CmFuZGVyc3J1bTogZXMgZ2lidCBlaW5lbiBvZmZlbnNpY2h0bGljaGVuIHplaXR0cmVuZCwgd2Vzd2VnZW4gYXVjaCBpbW1lci4KbnVuIHdpcmQgZGllIGhlbG1wZmxpY2h0IGVpbmdlZnVlaHJ0LiB3YXJ1bSBzb2xsdGUgZGllc2VyIHplaXR0cmVuZApkYW5hY2ggbmljaHQgbWVociBhbmhhbHRlbj8gYWxzbyByZWNobmV0IG1hbiBpaG4gcmF1cyB1bmQgc2llaGUgZGE6Cm9obmUgaGVsbSB3aXJkcyBuaWNodCBzY2hsZWNodGVyIHVuZCBhdWNoIG5pY2h0IGJlc3NlciAoMTAgamFocmUgc2luZApqYSByZWxhdGl2IGF1c3NhZ2VrcmFlZnRpZykuCndlbm4ga2VpbmUgYW5kZXJlbiBrb250cm9sbG1lY2hhbmlzbWVuIGltIGdlc2FtdGVuIHplaXRyYXVtIHZlcmFlbmRlcnQKd29yZGVuIHNpbmQsIGRhcmYgbWFuIGRhdm9uIGF1c2dlaGVuLCBkYXNzIGRpZXNlIG1lY2hhbmlzbWVuLCB3ZXN3ZWdlbgplcyBkaWVzZW4gdHJlbmQgVk9SIGRlciBoZWxtcGZsaWNodCBnYWIsIGF1Y2ggTkFDSCBkaWVzZW0gemVpdHB1bmt0CmlocmUgd2lya3VuZyB6ZWlnZW4sIHVuZCB6d2FyIGluIGFlaG5saWNoZXIgd2Vpc2UuCgp1bSBlaW5lbiBlbmRndWVsdGlnZW4gYmV3ZWlzIGFuenV0cmV0ZW4sIG11ZXNzdGUgbWFuIG51biBmdWVyIGRpZQpuYWVjaHN0ZW4gMTAgamFocmUgZWluIGhlbG12ZXJib3QgYXVzc3ByZWNoZW4uLi4gYWJlciBkYXMgd3VlcmRlCmRpZSBhdXN0cmFsaXNjaGUgd2lydHNjaGFmdCB3b2hsIG5pY2h0IHdvbGxlbi4gOykKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoR2xvaW5zb24sICA0LiBKdW4gMjAwOCwgMTY6NTQ6MzQpOgp+IyEgcm49Wm9vayBydD0xMjEyNTkwNjgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpXaWUgZ2VzY2hyaWViZW4sIGdyYWQga2VpbiBVbmktTmV0ei4gSWNoIGVyaW5uZXJlIG1pY2ggdmFnZSwgZGFzcyBkaWUgRnJhdQpSb2JpbnNvbiBpcmdlbmR3byBlcmtsYWVyZW5kZSBXb3J0ZSB6dSBkZW4gVHJlbmRzIHZlcmxvcmVuIGhhdC4gVW5kIGRhc3MgaW0KMjAwMCBTY3VmZmhhbS1QYXBpZXIgaHVlYnNjaGUgS3VydmVuIHdhcmVuLCBiZWkgZGVuZW4gYXVjaCBkaWUKTmljaHRyYWRmYWhyZXItVW5mYWVsbGUgd2VpdGVyIHJlY2h0IGxpbmVhciB6dXJ1ZWNrZ2luZ2VuLiBhYmVyIHNvIHJpY2h0aWcKbWV0aG9kaXNjaCBpbiBkYXMgTW9kZWxsIGludGVncmllcnQgLi4uIG5laW4sIG1vbWVudGFuIG5pY2h0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChNYXJjdXMsICA0LiBKdW4gMjAwOCwgMTY6NTU6MjcpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIxMjU5MTI3NCByZz1zY2htYXJybgp+IyEgdGlkPTEyMTI1MjI4NDUKVWJyaWdlbnMgd2FyIGRlciBGYWhycmFkIEhlbG0gVGhyZWFkIGJlaSB1bnMgaW5kZXIgU1VTRSBlaW5lciBkZXIgbGFlbmdzdGVuClRocmVhZHMgYWxsZXIgWmVpdGVuIG1pdCB1ZWJlciA1MDAgTWFpbHMgLi4uIDspCgpDaWFvLCBNYXJjdXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChHbm9tZSwgIDQuIEp1biAyMDA4LCAxNjo1OTozOCk6Cn4jISBybj1NYXJjdXMgcnQ9MTIxMjU5MTMyNyByZz1zY2htYXJybgp+IyEgdGlkPTEyMTI1MjI4NDUKZGFzIGtvZW5uZW4gd2lyIGxvY2tlciB0b3BwZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoR2xvaW5zb24sICA0LiBKdW4gMjAwOCwgMTc6MDA6NDQpOgp+IyEgcm49R25vbWUgcnQ9MTIxMjU5MTU3OCByZz1zY2htYXJybgp+IyEgdGlkPTEyMTI1MjI4NDUKRmFsc2NoZSBSdWJyaWsuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKE1haGFyZXQsICA0LiBKdW4gMjAwOCwgMTc6MDE6MzUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIxMjU5MTY0NCByZz1zY2htYXJybgp+IyEgdGlkPTEyMTI1MjI4NDUKV2lyIHRlc3RlbiBkZXJ6ZWl0IHVlYnJpZ2VucyBkaWUgSGVsbXBmbGljaHQgYW0gS3VlY2hlbnRpc2NoOgpodHRwOi8vd3d3LnJhbmEtZWxpc2FiZXRoLmRlL2JpbGRlci8wODAzLzA4MDMyOV9IZWxtX2cuanBnCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoR2xvaW5zb24sICA0LiBKdW4gMjAwOCwgMTc6MDQ6MjkpOgp+IyEgcm49TWFoYXJldCBydD0xMjEyNTkxNjk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpCZWltIFB1ZGRpbmdlc3NlbiBibGVpYnQgd2VuaWdzdGVucyBkZXIgVGlzY2ggc2F1YmVyIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjg6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKFJ1bWF0YSwgIDQuIEp1biAyMDA4LCAxNzoxOTo0NSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjEyNTkxODY5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpOZWUsIGxlZGlnbGljaCBkZXIgS29wZiBkZXMgS2luZGVzIGJlbGlidCBzYXViZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yOTogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoR2xvaW5zb24sICA0LiBKdW4gMjAwOCwgMTc6MjA6NTcpOgp+IyEgcm49UnVtYXRhIHJ0PTEyMTI1OTI3ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CkljaCBkYWNodGUgYW46IFNjaGVpYmUgaG9jaCwgUHVkZGluZyByZWluLCBTY2hlaWJlIHJ1bnRlci4gRGllIEFybWUga29lbm50ZW4KZG9jaCB2b24gdW50ZW4gbm9jaCByZWlucGFzc2VuLCBmYWxscyBub2V0aWc/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKE1haGFyZXQsICA0LiBKdW4gMjAwOCwgMTc6Mjg6MTMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIxMjU5Mjg1NyByZz1zY2htYXJybgp+IyEgdGlkPTEyMTI1MjI4NDUKRGFzIEtpbmQgaXNzdCBrZWluZW4gUHVkZGluZywgZGFzIFByb2JsZW0gc3RlbGx0IHNpY2ggZGFoZXIgZ2FyIG5pY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKFJ1bWF0YSwgIDQuIEp1biAyMDA4LCAxNzozMjozNyk6Cn4jISBybj1NYWhhcmV0IHJ0PTEyMTI1OTMyOTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CkVzIGdlaHQgamEgYXVjaCBuaWNodCB1bXMgRXNzZW4sIHNvbmRlcm4gdW1zIFNhdWVyZWkgbWFjaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKEdsb2luc29uLCAgNC4gSnVuIDIwMDgsIDE3OjM4OjEyKToKfiMhIHJuPVJ1bWF0YSBydD0xMjEyNTkzNTU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMjUyMjg0NQpTY2hva29leHBsb3Npb24gaW0gSGVsbS4gU28gaGF0IEJldXlzIGF1Y2ggbWFsIGFuZ2VmYW5nZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKFpvb2ssICA0LiBKdW4gMjAwOCwgMTc6Mzk6MTEpOgp+IyEgcm49R25vbWUgcnQ9MTIxMjU5MTI0NiByZz1zY2htYXJybgp+IyEgdGlkPTEyMTI1MjI4NDUKS2VpbmUgd2VpdGVyZW4gRnJhZ2VuLiBaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMzogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoT3JrdG9ldGVyLCAgNC4gSnVuIDIwMDgsIDE3OjM5OjI3KToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMTI1OTM4OTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1ClVuZCBkYW5uIGthbSBkaWUgYm9lc2UgUHV0emUgdW5kIGhhdCBkaWUgRmV0dGVja2Ugc2F1YmVyIGdlbWFjaHQuLi4gdW5kIGRpZQpTdGFkdCBtdXNzdGUgemFobGVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoSmltZGlncml6LCAgNC4gSnVuIDIwMDgsIDE4OjAyOjE4KToKfiMhIHJuPVpvb2sgcnQ9MTIxMjU4NTc4OSByZz1zY2htYXJybgp+IyEgdGlkPTEyMTI1MjI4NDUKRGFzIGlzdCBkb2NoIHVyYWx0LCB2b24gMTk5MCBvZGVyIHNvLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFJhZGZhaHJlbiBpc3QgZ2VmYWVocmxpY2ggKFpvb2ssICA0LiBKdW4gMjAwOCwgMTg6NDk6MTQpOgp+IyEgcm49SmltZGlncml6IHJ0PTEyMTI1OTUzMzggcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CmFjaHdhcy4gei4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBSYWRmYWhyZW4gaXN0IGdlZmFlaHJsaWNoIChHbG9pbnNvbiwgIDQuIEp1biAyMDA4LCAxOTowNjo1NCk6Cn4jISBybj1ab29rIHJ0PTEyMTI1OTgxNTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CkljaCBiaW4gamEgbmV1bGljaCBhbiBlaW5lciBCYW5hbmVuc2NobGFuZ2Ugdm9yYmVpLiAKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogUmFkZmFocmVuIGlzdCBnZWZhZWhybGljaCAoUnVtYXRhLCAgNC4gSnVuIDIwMDgsIDE5OjIzOjEzKToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMTI1OTkyMTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNTIyODQ1CkJlc3NlciBhbHMgYW4gZWluZXIgQmFuYW5lbnNwaW5uZToKICBodHRwOi8vZGUud2lraXBlZGlhLm9yZy93aWtpL0JhbmFuZW5zcGlubmUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSW50ZXJtdWR0cmVmZmVuLCBVbml0b3BpYSwgU3R1dHRnYXJ0LCAzMC41IC0gMS42LiAoWmVzc3RyYSwgIDUuIEp1biAyMDA4LCAxODo1NjoyOSk6Cn4jISBybj1ab29rIHJ0PTEyMTI2NTAyNzYgcmc9dHJlZmZlbgp+IyEgdGlkPTEyMTI2MTQxODgKKmdydW1tZWwqCkJlc29uZGVycyB0b2xsIHdhciBkYXMgRm90byBtaXQgZGVtIEJsaXR6IGF1cyAzMGNtIEVudGZlcm51bmcuLi4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXTC1QYXJ0eSBpbSBBdWd1c3QgKGJvZXNlIEdlZ2VucGFydHkgOykgKSAoWmVzc3RyYSwgIDUuIEp1biAyMDA4LCAxOTo1MzoyNCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjEyNjg3MTQwIHJnPXBhcnR5Cn4jISB0aWQ9MTIxMjY4NzE0MApIYWJlbiB3aXIgbmFja3RlIEVyem1hZ2llcklubmVuPyBJY2ggZ2xhdWJlIGphIG5pY2h0Li4uCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdMLVBhcnR5IGltIEF1Z3VzdCAoYm9lc2UgR2VnZW5wYXJ0eSA7KSApIChHbG9pbnNvbiwgIDUuIEp1biAyMDA4LCAyMDoyMDowOSk6Cn4jISBybj1aZXNzdHJhIHJ0PTEyMTI2ODg0MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjEyNjg3MTQwClZpZWxsZWljaHQgd2lyZCBlcyBaZWl0LCB3ZWxjaGUgenUgYmVydWZlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXTC1QYXJ0eSBpbSBBdWd1c3QgKGJvZXNlIEdlZ2VucGFydHkgOykgKSAoQm9pbmcsICA2LiBKdW4gMjAwOCwgMDk6MTM6MzUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIxMjY5MDAwOSByZz1zY2htYXJybgp+IyEgdGlkPTEyMTI2ODcxNDAKRGFzIFdMIGhhdCB6dW1pbmRlc3QgZWluZS4KICBCb2luZwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSHVjaD8gKFZhbmlvbiwgIDguIEp1biAyMDA4LCAyMjo0NzoxMSk6CltBbGxnZW1laW46Um9uZGEgc3RpbW10IE9ya1QgenUuXQoKT2huZSBadXNhbW1lbmhhbmcgbWFjaHRzIG1laHIgc3Bhc3MgLi4uCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWmVpdG1hc2NoaW5lPyAoT3JrdG9ldGVyLCAxMS4gSnVuIDIwMDgsIDIwOjA4OjE5KToKQXVzIGRlbSBUaWNrZXIgZGVzIEtvZWxuZXIgU3RhZHRhbnplaWdlciBPbmxpbmU6CgpBdWNoIExpZGwgc2Vua3QgUHJlaXNlIGZ1ZXIgTWlsY2ggaW0gTGFkZW4gd2llZGVyCgpOZWNrYXJzdWxtIC0gTmFjaCBtZWhyZXJlbiBhbmRlcmVuIEhhbmRlbHNrZXR0ZW4gaGF0IGF1Y2ggZGVyIERpc2NvdW50ZXIgTGlkbApkaWUgUHJlaXNlIGZ1ZXIgTWlsY2ggaW4gc2VpbmVuIDMwMDAgRmlsaWFsZW4gaW4gRGV1dHNjaGxhbmQgd2llZGVyIGdlc2Vua3QuCkRpZXMgYmVzdGFldGlndGUgZWluIFNwcmVjaGVyLiBMaWRsIGhhdHRlIGFscyBlcnN0ZXMgZ3Jvc3NlcwpIYW5kZWxzdW50ZXJuZWhtZW4gd2FlaHJlbmQgZGVzIG1laHJ0YWVnaWdlbiBMaWVmZXJib3lrb3R0cyBkZXIgTWlsY2hiYXVlcm4KZWluZSBQcmVpc2VyaG9laHVuZyB1bSB6ZWhuIENlbnQgcHJvIExpdGVyIE1pbGNoIHp1Z2VzYWd0LiBEaWVzIHdhciBkZXIKQXVzbG9lc2VyIGZ1ZXIgZGllIEJlZW5kaWd1bmcgZGVzIEJveWtvdHRzLiBXaWUgZGVyIEtvbmt1cnJlbnQgQWxkaSB2ZXJsYW5ndApMaWRsIHNlaXQgaGV1dGUgbnVyIG5vY2ggc2llYmVuIFBmZW5uaWcgbWVociBwcm8gTGl0ZXIgTWlsY2guIChkcGEpCgpQZmVubmlnPyAKCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBlcnNvZW5saWNoZSBQYXJ0eSBpbSBBdWd1c3QgKGJvZXNlIEdlZ2VucGFydHkgSUkgOykgKSAoR2xvaW5zb24sIDE4LiBKdW4gMjAwOCwgMTM6NTY6MzkpOgp+IyEgcm49VmVjdG9yIHJ0PTEyMTM3ODg0NTMgcmc9cGFydHkKfiMhIHRpZD0xMjEzNzc3MjE1CkFoLiBEdSByaWNodGVzdCBlaW5lIGF1cz8gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBQZXJzb2VubGljaGUgUGFydHkgaW0gQXVndXN0IChib2VzZSBHZWdlbnBhcnR5IElJIDspICkgKFZlY3RvciwgMTguIEp1biAyMDA4LCAxNToyMTo1MCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjEzNzkwMTk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxMzc3NzIxNQppbW1lciB3ZW5uIGljaCBhbnN0YWx0ZW4gZ2VtYWNodCBoYWJlIGhpZXNzIGVzIGVzIHdpcmQgYmVyZWl0cwplaW5lIG9yZ2FuaXNpZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUGVyc29lbmxpY2hlIFBhcnR5IGltIEF1Z3VzdCAoYm9lc2UgR2VnZW5wYXJ0eSBJSSA7KSApIChHbG9pbnNvbiwgMTguIEp1biAyMDA4LCAxNToyOTowMSk6Cn4jISBybj1WZWN0b3IgcnQ9MTIxMzc5NTMxMCByZz1zY2htYXJybgp+IyEgdGlkPTEyMTM3NzcyMTUKSGEuIEVzIHdpcmQuIE5pY2h0LiBMb3MsIG1hY2ggbWFsLiBHZWdlbnBhcnR5IHN0ZWh0IGphIHNjaG9uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCcnVuY2ggQmVybGluIFNhbXN0YWcsIDE5LiBKdWxpIChIdW1uaSwgMjYuIEp1biAyMDA4LCAyMzo0NzozMik6Cn4jISBybj1HbG9pbnNvbiBydD0xMjE0NTE2ODIwIHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEyMTQ1MTY4MjAKTWlzdCwgaWNoIG11c3MgaW5zIEJldHQuIEhhYiBnZXJhZGUgIk9yayB3aXJkIG5vY2ggdmVyaGFuZGVsdCIgZ2VsZXNlbi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJydW5jaCBCZXJsaW4gU2Ftc3RhZywgMTkuIEp1bGkgKEdsb2luc29uLCAyNy4gSnVuIDIwMDgsIDAwOjA4OjIxKToKfiMhIHJuPUh1bW5pIHJ0PTEyMTQ1MTY4NTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjE0NTE2ODIwCk9ya3JpcHBjaGVuIHNpbmQgd2lsbGtvbW1lbiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdGFtbXRpc2NoIGluIE1hcnNlaWxsZSAoR25vbWUsICAyLiBKdWwgMjAwOCwgMTI6NDM6MjkpOgp+IyEgcm49THVnIHJ0PTEyMTQ5Mzk1OTcgcmc9dHJlZmZlbgp+IyEgdGlkPTEyMTQ5Mzk1OTcKdm9yYmVpIGtvbW1lbiBvZGVyIHZvcmJlaWtvbW1lbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVz8gKEJsdXRnaWVyLCAgMy4gSnVsIDIwMDgsIDE4OjM4OjAzKToKVGliYWxkIHZlcnN1Y2h0LCBEaWNoIG1pdCBzZWluZW0gU2Nod2VydCBhdWZ6dXNjaGxpdHplbi4KICBUaWJhbGQgZGVyIFdhZmZlbm1laXN0ZXIgemVyc2NobWV0dGVydCBEaWNoIGluIGtsZWluZSBTdHVlY2tjaGVuLgpEZXIgVGVkZHkga251ZGRlbHQgRGljaCBlaW4gbGV0enRlcyBNYWwuCiAgVGliYWxkIGRlciBXYWZmZW5tZWlzdGVyIHZlcmZlaGx0IERpY2guCgoKREFTIGlzdCBUaW1pbmcgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBvc3RrYXJ0ZSAoR3JpbW1ib3JuLCAgOS4gSnVsIDIwMDgsIDE5OjUyOjQwKToKfiMhIHJuPVZhbmlvbiBydD0xMjE1NTUxNzYxIHJnPW9lZmZlbnRsaWNoa2VpdHNhcmJlaXQKfiMhIHRpZD0xMjE1NTQ3NDE1Ck5hamEsIG1pdCBYUFByaW50IHd1ZXJkZSBkYXMgbmF0dWVybGljaCB3ZXNlbnRsaWNoIGJlc3NlciBnZWhlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBQb3N0a2FydGUgKEtlc3NhLCAxMC4gSnVsIDIwMDgsIDEwOjUxOjMzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMjE1NjI1OTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxNTU0NzQxNQpJY2ggdmVyc3RlaGUgZGllIHRlY2huaXNjaGVuIERldGFpbHMgYXVjaCBuaWNodCwgYWJlciBkaWUgS2FydGVuIGdlZmFsbGVuIG1pcgpzZWhyLgoKS2Vzc2EsIE1lc2kgenVqdWJlbG5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFN0YXRpIGluIFNjaGxlc3dpZyAoR3JpbW1ib3JuLCAyMi4gSnVsIDIwMDgsIDIzOjM3OjU5KToKfiMhIHJuPVZhbmlvbiBydD0xMjE2NzQ5OTQwIHJnPXRyZWZmZW4KfiMhIHRpZD0xMjE2NzQ5ODkyCjEwIFBsYWV0emU/IFNvIGRpY2sgc2VpZCBpaHIgZG9jaCBuaWNodC4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdGF0aSBpbiBTY2hsZXN3aWcgKFZhbmlvbiwgMjMuIEp1bCAyMDA4LCAxNDoxOTozMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTIxNjc2MjY3OSByZz1zY2htYXJybgp+IyEgdGlkPTEyMTY3NDk4OTIKTWVpbnN0IER1IDEwIFBsYWV0emNoZW4gaGFldHRlbiBhdXNnZXJlaWNodD8KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEF1c3BlaXRzY2hlbiB2b24gRGFlbW9uZW4uIChaZXNzdHJhLCAxMi4gQXVnIDIwMDgsIDE5OjQxOjIxKToKfiMhIHJuPVpvb2sgcnQ9MTIxODU2Mjc3NSByZz1naWxkZW4uY2hhb3MKfiMhIHRpZD0xMjE4NTYyNDA4CkRpZSBoYXQgYmVzdGltbXQgamVtYW5kIHZlcnN0ZWNrdC4gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBdXNwZWl0c2NoZW4gdm9uIERhZW1vbmVuLiAoWm9vaywgMTIuIEF1ZyAyMDA4LCAxOTo0MzozNik6Cn4jISBybj1aZXNzdHJhIHJ0PTEyMTg1NjI4ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjE4NTYyNDA4CkhhYiBzaWUgc2Nob24uIFoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEF1c3BlaXRzY2hlbiB2b24gRGFlbW9uZW4uIChaZXNzdHJhLCAxMi4gQXVnIDIwMDgsIDE5OjQ1OjAyKToKfiMhIHJuPVpvb2sgcnQ9MTIxODU2MzAxNiByZz1zY2htYXJybgp+IyEgdGlkPTEyMTg1NjI0MDgKOmdlaHQgZGFubiBtYWwgaW4gRGVja3VuZy4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEF1c3BlaXRzY2hlbiB2b24gRGFlbW9uZW4uIChab29rLCAxMi4gQXVnIDIwMDgsIDE5OjQ2OjU4KToKfiMhIHJuPVplc3N0cmEgcnQ9MTIxODU2MzEwMiByZz1zY2htYXJybgp+IyEgdGlkPTEyMTg1NjI0MDgKOmhhdCBlaGVyIGJ1Z2dlbmRlIENoYW90ZW4gaW0gQXVnZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEF1c3BlaXRzY2hlbiB2b24gRGFlbW9uZW4uIChaZXNzdHJhLCAxMi4gQXVnIDIwMDgsIDE5OjQ3OjM3KToKfiMhIHJuPVpvb2sgcnQ9MTIxODU2MzIxOCByZz1zY2htYXJybgp+IyEgdGlkPTEyMTg1NjI0MDgKQWguIDotKQo6YXRtZXQgZXJsZWljaHRlcnQgYXVmLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChYdXRlbGl1cywgMjAuIEF1ZyAyMDA4LCAxMzo1ODowNik6ClZvbiBWYW5pcjogYWxzbyBuYXJzIGF0dGFja2llcnQgd2llZGVyCkR1IGJpc3QgamV0enQgaW4gUmVpaGUgMS4KW1RlYW0gMzpdIFh1dGVsaXVzLT4xCltUZWFtIDM6VG9kXSBWQU5JUiBIQVQgREFTIFRFQU0gVkVSTEFTU0VOLgpbVGVhbSAzOl0gWHV0ZWxpdXMgaGF0IGRpZSBUZWFtbGVpdHVuZyB1ZWJlcm5vbW1lbi4KW1RlYW0gMzpdIERhcyBUZWFtIGxvZXN0IHNpY2ggYXVmLgpEdSB2ZXJsYWVzc3QgZGFzIFRlYW0uCltUb2Q6TGFyc10gRGVyIERyYWNoZSBOYXJzIGhhdCBnZXJhZGUgVmFuaXIgdW1nZWJyYWNodC4KW1RvZDpEZXIgRHJhY2hlIE5hcnMgd2luZGV0IHNpY2ggdm9yIExhY2hlbi5dIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoQ3JvZnQsIDIwLiBBdWcgMjAwOCwgMTM6NTk6MDApOgp+IyEgcm49WHV0ZWxpdXMgcnQ9MTIxOTIzMzQ4NiByZz1zY2htYXJybgp+IyEgdGlkPTEyMTkyMzM0ODYKRHUgaGFzdCBkYSBub2NoClZhbmlyIHJ1ZnQ6IGthY2tlLCB2ZXJkYW1tdGUKa3VyeiBkYXZvciB1bnRlcnNjaGxhZ2VuLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRkxXIChYdXRlbGl1cywgMjAuIEF1ZyAyMDA4LCAxMzo1OTo0Nik6Cn4jISBybj1Dcm9mdCBydD0xMjE5MjMzNTQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxOTIzMzQ4NgpqYSwgZGEgc3RhbmQgYmVpIG1pciB6dSB2aWVsIHRleHQgendpc2NoZW4gOykKWHV0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRkxXIChPcmt0b2V0ZXIsIDIwLiBBdWcgMjAwOCwgMTk6MzQ6NDEpOgp+IyEgcm49WHV0ZWxpdXMgcnQ9MTIxOTIzMzU4NiByZz1zY2htYXJybgp+IyEgdGlkPTEyMTkyMzM0ODYKRGVyICJUZXh0IiB3YXIgbmljaHQgKHJlaW4genVmYWVsbGlnKSBlaW4gYmlzY2hlbiBLYW1wZnNjcm9sbD8gOykKCk9ya1QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZMVyAoWHV0ZWxpdXMsIDIwLiBBdWcgMjAwOCwgMTk6MzU6NTUpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEyMTkyNTM2ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjE5MjMzNDg2Ck5laW4sIGJpcyB6dSBkZXIgTmFjaHJpY2h0IGhhdCBOYXJzIHNpY2ggamEgaGludGVyIG5lbSBGaVJaRyB2ZXJzdGVja3QuClh1dCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoWmFwaG9iLCAyNi4gQXVnIDIwMDgsIDE2OjIzOjQ4KToKW0FsbGdlbWVpbjpUdWNvXSBpc3QgaXJnZW50d28gZWluIGtsZXJ1cywgZGVyIG1hbCBhdWYgZGVyIHdhc3NlcmViZW5lIG5hY2gKW0FsbGdlbWVpbjpUdWNvXSBtZWluZXIgYXVzcnVlc3R1bmcgZ3Vja2VuIGtvZW5udGU/CltBbGxnZW1laW46VHVjb10gaXN0IHZpZWxsZWljaHQgZWluIGtsZXJ1cyB2ZXJmdWVnYmFyLCBkZXIgbWVpbmUgYXVzcnVlc3R1bmcKW0FsbGdlbWVpbjpUdWNvXSB2b24gZGVyIHdhc3NlcmViZW5lIGhvbGVuIGtvZW5udGU/ClBsb2V0emxpY2ggZXJzY2hlaW5lbiAxNiBITFAsIGRpZSBEaXIgZnJvZWhsaWNoIHp1d2lua2VuLgpbQWxsZ2VtZWluOkNyb2Z0XSB3aWVzbyBzcGV6aWVsbCBlaW4ga2xlcnVzPwpbQWxsZ2VtZWluOlR1Y29dIGtlaW5lIGFobnVuZywgamVkZW5mYWxscyBrb21tIGljaCBkYSBuaWNoIGhpbiwgc28gZ2FuegpbQWxsZ2VtZWluOlR1Y29dIG9obmUuXl4KW0FsbGdlbWVpbjpUdWNvXSBrYW5uIG1pciBqZW1hbmQgaGVsZmVuCltBbGxnZW1laW46VHVjb10gaWNoIHN0ZWhlIHZvciBkZW0gZWxmZW5kb3JmLgpbVG9kOkxhcnNdIEVpbiBBYm9sZXRoIGhhdCBnZXJhZGUgVHVjbyB1bWdlYnJhY2h0LgpbQmVpbGVpZDpLbmFdIGJlaWxlaWQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNdXNldW1zdWZlcmZlc3QgMjAwOCBpbiBGcmFua2Z1cnQgKDMwLjA4LjA4KSAoSHVtbmksIDI4LiBBdWcgMjAwOCwgMTg6MzU6MDUpOgp+IyEgcm49R3dlbiBydD0xMjE5OTQxMDUwIHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEyMTk5NDEwNTAKSWNoIGthbm4gYW0gV29jaGVuZW5kZSBvaG5laGluIG5pY2h0LiBVbmQgbmljaHRzIGRhZ2VnZW4sIE1HbGVyIGFuenVmZXVlcm4uCkFiZXIgZWluICJUZWFtOiBiYWhuLmRlIiBhbnp1ZmV1ZXJuIGZhZWxsdCBtaXIgbmFjaCBkZW4gVmVyc3BhZXR1bmdlbiB1bmQKQXVzZmFlbGxlbiwgZGllIGljaCBnZXN0ZXJuLCBoZXV0ZSB1bmQgYW0gbGV0enRlbiBXb2NoZW5lZGUgaGludGVyIG1pY2gKZ2VicmFjaHQgaGFiZSwgZG9jaCBhcmcgc2Nod2VyLiBuYWphLCBpY2ggYmluIGVoIG5pY2h0IGRhLiBGaW5kIGVzIGFiZXIKbWVya3d1ZXJkaWcsIGZ1ZXIgc28gZWluZW4gVmVyZWluIHp1IGZhaHJlbi4gV29sbHRlIGljaCBtYWwgbG9zd2VyZGVuLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTXVzZXVtc3VmZXJmZXN0IDIwMDggaW4gRnJhbmtmdXJ0ICgzMC4wOC4wOCkgKEd3ZW4sIDI4LiBBdWcgMjAwOCwgMTg6NDU6MjUpOgp+IyEgcm49SHVtbmkgcnQ9MTIxOTk0MTMwNSByZz1zY2htYXJybgp+IyEgdGlkPTEyMTk5NDEwNTAKTmFqYSwgZGllIFJlaXNlYXVza3VuZnQgdW5kIGRpZSBXZWJzaXRlIHNpbmQgamEgbmljaHQgdmVyc3BhZXRldCA6UApHd2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTXVzZXVtc3VmZXJmZXN0IDIwMDggaW4gRnJhbmtmdXJ0ICgzMC4wOC4wOCkgKEh1bW5pLCAyOC4gQXVnIDIwMDgsIDE4OjQ2OjM5KToKfiMhIHJuPUd3ZW4gcnQ9MTIxOTk0MTkyNSByZz1zY2htYXJybgp+IyEgdGlkPTEyMTk5NDEwNTAKSG1tLiBPay4gUHVua3QgYW4gZGljaC4gRGllIFdlYnNlaXRlbmdlc3RhbHRlciBrb2VubmVuIG5pY2h0cyBmdWVyCiJWZXJ6b2VnZXJ1bmdlbiBpbSBCZXRyaWVic2FibGF1ZiIgdW5kICJUcmllYndlcmtzc2NoYWRlbiIgdW5kICJTY2hhZGUsIGR1cmNoCmRpZSAxMCBtaW51dGVuIHZlcnNwYWV0dW5nIHZvbiBCYWhuIDEgaXN0IEJhaG4gMiBudW4gbGVpZGVyIHdlZyIuIFNlaCBpY2gKZWluLi4uIGFyYmVpdGVuIGRpZSBkZW5uIGZ1ZXIgZGllIEJhaG4gb2RlciBmdWVyIGVpbmVuIFp1bGllZmVyZXI/CgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTXVzZXVtc3VmZXJmZXN0IDIwMDggaW4gRnJhbmtmdXJ0ICgzMC4wOC4wOCkgKEFyaywgMjguIEF1ZyAyMDA4LCAxOTowNjo0Myk6Cn4jISBybj1IdW1uaSBydD0xMjE5OTQxOTk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxOTk0MTA1MApTY2hhdW4gd2lyIG1hbCwgd2llIHNpZSBhdWYgZWluZW0gbmV1ZW4gVHJhbnNwb3J0bWVkaXVtIC0gV2Fzc2VyIC0Kdm9yd2FlcnRza29tbWVuIC4uLiB2aWVsbGVpY2h0IGphIGRpZSBadWt1bmZ0LgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE11c2V1bXN1ZmVyZmVzdCAyMDA4IGluIEZyYW5rZnVydCAoMzAuMDguMDgpIChHd2VuLCAyOC4gQXVnIDIwMDgsIDE5OjEwOjI2KToKfiMhIHJuPUFyayBydD0xMjE5OTQzMjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxOTk0MTA1MApEdSBtZWluc3QgTWFpbi1TdXJmZW4gc3RhdHQgV2ViLVN1cmZlbj8gOlAKR3dlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNvIGlzdHMgcmVjaHQgKEdhYnlsb24sIDI4LiBBdWcgMjAwOCwgMjI6MDI6MzkpOgpEdSBzYWdzdDogaG1tbQpEdSBzYWdzdDogbmVuIGRhZW1saWNoZXIgZWxmIGlzdCBkYXMKWHV0ZWxpdXMgZ3JpbnN0LgpYdXRlbGl1cyBiaWV0ZXQgRGlyIHNlaW5lIEZyZXVuZHNjaGFmdCBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE11c2V1bXN1ZmVyZmVzdCAyMDA4IGluIEZyYW5rZnVydCAoMzAuMDguMDgpIChNYXJjdXMsIDI4LiBBdWcgMjAwOCwgMjM6Mzk6MzQpOgp+IyEgcm49R3dlbiBydD0xMjE5OTQzNDI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxOTk0MTA1MApJY2gga29ubnRlIGJlaSBiYWhuLmRlIHp1bWluZGVzdCBhdWNoIG1hbCBuZSBGYWVocmUgZHVyY2hidWNoZW4uCgpVbmQgZGllIGhvbGRlIEd3ZW4gaXN0IGphIFRlYW0gYmFobi5kZSA7KQoKQ2lhbywgTWFyY3VzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE11c2V1bXN1ZmVyZmVzdCAyMDA4IGluIEZyYW5rZnVydCAoMzAuMDguMDgpIChab29rLCAyOS4gQXVnIDIwMDgsIDEwOjI4OjQ4KToKfiMhIHJuPUh1bW5pIHJ0PTEyMTk5NDEzMDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMjE5OTQxMDUwCkthbm5zdCBEdSBtZWluZSBWZXJzcGFldHVuZyBNYW5uaGVpbS1NdWVuY2hlbiBtaXQgKzE2MCB0b3BwZW4/IApaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNdXNldW1zdWZlcmZlc3QgMjAwOCBpbiBGcmFua2Z1cnQgKDMwLjA4LjA4KSAoR3JpbW1ib3JuLCAyOS4gQXVnIDIwMDgsIDEwOjU5OjI0KToKfiMhIHJuPVpvb2sgcnQ9MTIxOTk5ODUyOCByZz1zY2htYXJybgp+IyEgdGlkPTEyMTk5NDEwNTAKTWVpbiBSZWtvcmQ6IFNlY2h0ZW0gKGJlaSBCb25uKSAtIEhhbWJ1cmcgbWl0IGV0d2EgKzU0MC4KVW5kIGpldHp0IGtvbW1zdCBEdS4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTXVzZXVtc3VmZXJmZXN0IDIwMDggaW4gRnJhbmtmdXJ0ICgzMC4wOC4wOCkgKFJ1bWF0YSwgMjkuIEF1ZyAyMDA4LCAxMTowMDozMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTIyMDAwMDM2NCByZz1zY2htYXJybgp+IyEgdGlkPTEyMTk5NDEwNTAKRXMgZ2VodCBhdWNoIGluIGRpZSBhbmRlcmUgUmljaHR1bmcuCkljaCBsZWdlIG1hbCBmdWVyIE11ZW5jaGVuIC0gTXVlbnN0ZXIgPSAtMzAgdm9yLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTXVzZXVtc3VmZXJmZXN0IDIwMDggaW4gRnJhbmtmdXJ0ICgzMC4wOC4wOCkgKEdsb2luc29uLCAyOS4gQXVnIDIwMDgsIDExOjIwOjA4KToKfiMhIHJuPVJ1bWF0YSBydD0xMjIwMDAwNDMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxOTk0MTA1MApJY2ggYmlldGUgZGllIFZlcnNwYWV0dW5nIG1laW5lciBTY2h3ZXN0ZXI6IEhlaWxpZ2FiZW5kIGF1ZiAxLgpXZWlobmFjaHRzZmVpZXJ0YWcgMjAwMi4gVmVyc3BhZXR1bmcgfjEyIFN0dW5kZW4uIE5ldHRlcndlaXNlIGlzdCBkZXIgWnVnIGJlaQpXZWl0ZXJmYWhydCBkYW5uIGR1cmNoIHVuc2VyZW4gT3J0IGVyc3RtYWwgbm9jaCBkdXJjaGdlZmFocmVuIChCZWdydWVuZHVuZzoKIldpciBzaW5kIHZlcnNwYWV0ZXQuIiksIHNvIGRhc3MgbWVpbmUgU2Nod2VzdGVyIGFiIGRlbSBuYWVjaHN0ZW4gSGFsdCwKQmVybGluLCBub2NobWFsIGFuZGVydGhhbGIgU3R1bmRlbiB6dXJ1ZWNrZmFocmVuIGR1cmZ0ZS4KClNvLiBOdW4gd2llZGVyIGlociA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE11c2V1bXN1ZmVyZmVzdCAyMDA4IGluIEZyYW5rZnVydCAoMzAuMDguMDgpIChab29rLCAyOS4gQXVnIDIwMDgsIDExOjI4OjIxKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMjIwMDAwMzY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxOTk0MTA1MApOaWNodCBzY2hsZWNodDsgaWNoIGthbm4gbnVyIGRpZSArMTYwIGJpZXRlbi4gWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTXVzZXVtc3VmZXJmZXN0IDIwMDggaW4gRnJhbmtmdXJ0ICgzMC4wOC4wOCkgKEd3ZW4sIDI5LiBBdWcgMjAwOCwgMTM6NTU6NTApOgp+IyEgcm49Wm9vayBydD0xMjIwMDAyMTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxOTk0MTA1MApJY2ggaGF0dCBtYWwgInVlYmVyIDEwaCBWZXJzcGFldHVuZyIgdm9uIFZlbmVkaWcgbmFjaCBNdWVjaGVuLgpWb3IgZGVtIEJyZW5uZXIga2FtIGVpbmUgbWlyIGRhbWFscyB1bnZlcnN0YWVuZGxpY2hlIER1cmNoc2FnZSwKd29yYXVmaGluIGFsbGUgSXRhbGllbmVyIGZsdWNodGFydGlnIGRlbiBadWcgdmVybGllc3Nlbi4KV2lyIHd1cmRlbiBkYW5uIGVpbmVtIEF1c2xhZW5kZXItR2hldHRvLVp1ZyBnbGVpY2ggdWViZXIgZGllIFNjaHdlaXoKdW1nZWxlaXRldC4KTW9yZ2VucywgYWxzIGRlciBadWcgc2ljaCByZWd1bGFlciBNdWVuY2hlbiBuYWVoZXJuIHNvbGx0ZSwgCnNhaCBpY2ggU3R1dHRnYXJ0IGF1ZiB1bnMgenVrb21tZW4uCklyZ2VuZHdhbm4gd3VyZGVuIHdpciBhbHMgU29uZGVyenVnIHVlYmVyIE1pdHRlbGRldXRzY2hsYW5kCndlaXRlcmdlbGVpdGV0IHVuZCBkaWUgZXJzdGVuIEJlcnVmc3BlbmRsZXIgc3RpZWdlbiB6dS4KTmFqYSwgZGllIGVpbmVuIE1pdGZhaHJlciBoYXR0ZW4gc28gYW5zY2hlaW5lbmQgaWhyZSBadWVnZSBuYWNoIEdvZXR0aW5nZW4KdXN3IG5vY2ggZ2VrcmllZ3QuCklyZ2VuZHdhbm4gc3RhbmRlbiB3aXIgZGFubiBhdWNoIGluIE11ZW5jaGVuIGFtIEJhaG5zdGVpZy4KVW5kIGRpZSBBbnplaWdldGFmZWwgc2FndGUgZWJlbiAidWViZXIgMTBoIFZlcnNwYWV0dW5nIi0KbGVpZGVyIGhhdHQgaWNoIGtlaW4gRm90byBtZWhyIGF1ZiBkZW0gRmlsbSBmcmVpIDspCkd3ZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTXVzZXVtc3VmZXJmZXN0IDIwMDggaW4gRnJhbmtmdXJ0ICgzMC4wOC4wOCkgKEh1bW5pLCAyOS4gQXVnIDIwMDgsIDE2OjA0OjQ1KToKfiMhIHJuPUd3ZW4gcnQ9MTIyMDAxMDk1MCByZz1zY2htYXJybgp+IyEgdGlkPTEyMTk5NDEwNTAKT2suIE1pdCB1bSBkaWUgM2ggbGllZyBpY2ggamEgbm9jaCBlY2h0IGhhcm1sb3MuLi4KCkFiZXIgZGFzIGxldHp0ZSBNYWwgd2FyZW5zIG51ciAxMCBNaW51dGVuIC0gYmVpIGRlbSBlaW5lbiBadWcgLSBkYXJhdXMKcmVzdWx0aWVyZW5kIHd1cmRlbiBkYW5uIDIgU3R1bmRlbiAtIHdlaWwgZGVyIEFuc2NobHVzc3p1ZyB3ZWcgd2FyIHVuZCBkYXMKZXJzdG1hbCBkZXIgbGV0enRlIGZ1ZXIgZGllIE5hY2h0Li4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTXVzZXVtc3VmZXJmZXN0IDIwMDggaW4gRnJhbmtmdXJ0ICgzMC4wOC4wOCkgKEd3ZW4sIDI5LiBBdWcgMjAwOCwgMTk6MjY6MzQpOgp+IyEgcm49SHVtbmkgcnQ9MTIyMDAxODY4NSByZz1zY2htYXJybgp+IyEgdGlkPTEyMTk5NDEwNTAKSmEsIHNvd2FzIGlzdCBNZWdhbWlzdC4KSWNoIGZyYWcgaW1tZXIgZGVuIFp1Z2JlZ2xlaXRlciwgd2VubiBlcyBrbmFwcCB3aXJkLCBvYiBzaWUgZGVuIGFuZGVyZW4gWnVnCmF1ZmhhbHRlbi4KSGlsZnQgb2Z0LgpFaW5tYWwgd3VyZGVuIHdpciB3ZWdlbiBCb2VzY2h1bmdzYnJhZW5kZW4gZ2FlbnpsaWNoIHVtZ2VsZWl0ZXQuCkRhIGhhdHRlbiB3aXIgbWl0IGRlbSBJQ0Ugc29nYXIgYXVzc3BsYW5tYWVzc2lnIChhdWYgTmFjaGZyYWdlKSBpbiBuZW0KSUNFLWdlZWlnbmV0ZW4gQmFobmhvZiB6dXNhZXR6bGljaCBnZWhhbHRlbi4gU29uc3QgaGFldHRlbiB2aWVsZSBMZXV0ZSB2b20KbmFlY2hzdGVuIEhhbHQgenVydWVja2ZhaHJlbiBtdWVzc2VuIC0gdW5kIGhhZXR0ZW4gZGVuIGxldHp0ZW4gWnVnIHZlcnBhc3N0LgpGcmFnZW4ga29zdGV0IG5peCA6KQpHd2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTXVzZXVtc3VmZXJmZXN0IDIwMDggaW4gRnJhbmtmdXJ0ICgzMC4wOC4wOCkgKFdoaXRldGlnZXIsIDMwLiBBdWcgMjAwOCwgMTM6MzQ6MjgpOgp+IyEgcm49R3dlbiBydD0xMjIwMDMwNzk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIxOTk0MTA1MApNYW5jaG1hbCBzcGFydCBGcmFnZW4gc29nYXIgdGF0c2FlY2hsaWNoIEdlbGQgdW5kIFplaXQuIEljaCBiaW4gdm9yIGVpbiBwYWFyCldvY2hlbiB2b24gRHVlc3NlbGRvcmYgbmFjaCBXaWVzYmFkZW4gZ2VmYWhyZW4sIHVuZCBoYWIgZGllIC0gZ3VlbnN0aWdlcmUgLQpJQy1WZXJiaW5kdW5nIHN0YXR0IGRlciBudXIgbWl0IElDRSBnZW5vbW1lbi4gQmlzIEtvZWxuIGdpbmcncyBhYmVyIHRyb3R6ZGVtCm1pdCBlaW5lbSBJQ0U7IGt1cnogdm9yIGRlbSBCYWhuaG9mIGthbSBkYW5uIGRpZSBEdXJjaHNhZ2UsIGRhc3MgZGVyIElDIGtuYXBwCnp3YW56aWcgTWludXRlbiBWZXJzcGFldHVuZyBoYXQuIE5ldHRlcndlaXNlIGhhdCBtaXIgZWluZSBadWdiZWdsZWl0ZXJpbiBkYW5uCmF1ZiBtZWluIFRpY2tldCBnZXNjaHJpZWJlbiwgZGFzcyBpY2ggaW0gSUNFIHNpdHplbmJsZWliZW4gZGFyZi4gRWZmZWt0aXYgd2FyCmljaCBzb2dhciBlaW5lIGhhbGJlIFN0dW5kZSBmcnVlaGVyIGluIFdpZXNiYWRlbi4gOikKCnRpZ2VyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouLi4gKEdsb2luc29uLCAgMS4gU2VwIDIwMDgsIDAyOjI1OjExKToKR2VuIDEsMSAgICAgICAgIEltIEFuZmFuZyBzY2h1ZiBQaXRmYWxsIEdyaWxsIHVuZCBSb3N0OwpHZW4gMSwyIGRlciBHcmlsbCBhYmVyIHdhciB3fHN0IHVuZCB3aXJyLCBGaW5zdGVybmlzIGxhZyB1bnRlciBkZW0gUm9zdCB1bmQKRXRoYW5vbHMgR2Vpc3Qgc2Nod2VidGUgfGJlciBkZXIgS29obGUuCkdlbiAxLDMgUGl0ZmFsbCBzcHJhY2g6IEVzIHdlcmRlIEZldWVyLiBVbmQgZXMgd3VyZGUgRmV1ZXIuCkdlbiAxLDQgUGl0ZmFsbCBzYWgsIGRhc3MgZGFzIEZldWVyIG5pZWRlcmdlYnJhbm50IHdhci4gUGl0ZmFsbCBzY2hpZWQgZGllCktvaGxlIHZvbiBkZXIgR2x1dC4KR2VuIDEsNSB1bmQgUGl0ZmFsbCBuYW5udGUgZGllIEdsdXQgZHVyY2hnZWJyYW5udCB1bmQgZGllIEtvaGxlIG5hbm50ZSBlcgphdXNyZWljaGVuZCBoZWlzcy4gRXMgd3VyZGUgWmVpdDogZGVyIEdyaWxsIGxpZWYuCkdlbiAxLDYgRGFubiBzcHJhY2ggUGl0ZmFsbDogRWluIFN0ZWFrIGVudHN0ZWhlIGF1ZiBkZW0gUm9zdCB1bmQgc2NoZWlkZSBkZW4KR3JpbGwgdm9uIGVpbmVyIEVzc2UuCkdlbiAxLDcgUGl0ZmFsbCBtYWNodGUgYWxzbyBkYXMgU3RlYWsgYXVmIGRlbiBHcmlsbC4gU28gZ2VzY2hhaCBlcwpHZW4gMSw4IHVuZCBQaXRmYWxsIG5hbm50ZSBkYXMgR3JpbGwgZ3V0IGdlZnVlbGx0LiBFcyB3dXJkZSBzcGFldGVyOiBkZXIgR3JpbGwKZ3JpbGx0ZS4KR2VuIDEsOSBEYW5uIHNwcmFjaCBQaXRmYWxsOiBEYXMgaGVydW50ZXJ0cm9wZmVuZGUgRmV0dCB1bnRlcmhhbGIgZGVzIFN0ZWFrcwp3ZXJkZSBhYmdlbG9lc2NodCwgZGFtaXQgZGllIEdsdXQgbnVyIGdsdWVoZS4gU28gZ2VzY2hhaCBlcy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFtYXJ5bGxpcywgMTQuIFNlcCAyMDA4LCAxOTozNTozNik6CltTZWhlcjpUdWNvXSBrYW5uIG1pciBqZW1hbmQgc2FnZW4sIG9iIGVzIHZvciBkZW0gc2NobmVlcmllc2VuIGF1ZiBkZXIKW1NlaGVyOlR1Y29dIGVpc2ViZW5lIGV0YyBub2NoIGVpbmUgdGFua2UgZ2lidD8KW1NlaGVyOktub21dIGphCltUb2Q6TGFyc10gRWluIFNjaG5lZXJpZXNlIGhhdCBnZXJhZGUgVHVjbyB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWndlcmdlIChBcmssIDE2LiBTZXAgMjAwOCwgMjE6MjA6NDMpOgpXdXNzdGVuIHNpZSBzY2hvbiwgZGFzcyB3ZW5uIGluIFJlZGVuIHZvbiBXYWx6d2Vya2VuIHVuZCBXYWxkendlcmdlbgpkaWUgUmVkZSBpc3QsIGVzIHp1IElycml0YXRpb25lbiBiZWltIEhvZXJlciBmdWVocnQsIGRhIGVzIHBob25ldGlzY2gKbmljaHQgZ2FueiBsZWljaHQgaXN0IHp1IHVudGVyc2NoZWlkZW4sIG9iIGVzIHNpY2ggdW0gV2FsendlcmtlIG9kZXIKV2FsZHp3ZXJnZSBoYW5kZWx0LiBHb3R0IHNlaSBEYW5rIGlzdCBlcyBhYmVyIHJlbGF0aXYgc2VsdGVuLCBkYXNzCmVpbiBXYWxkendlcmcgZWluIFdhbHp3ZXJrIGJlc3VjaHQgb2RlciBXYWx6d2Vya2UgaW4gZGVyIFVtZ2VidW5nCmRlciBXYWxkendlcmdlIGVyYmF1dCB3ZXJkZW4uIHdlbm4gYWxsZXJkaW5ncyBXYWxkendlcmcgZWluIFdhbHp3ZXJrCmJhdXQsIGhhbmRlbHQgZXMgc2ljaCBkZW16dWZvbGdlIHVtIGVpbiBXYWxkendlcmd3YWx6d2Vyay4KV2VubiBkaWVzZXIgZGFubiBhdWNoIG5vY2ggZGFyaW4gYXJiZWl0ZXQgaXN0IGVzIGRhbm4gb2ZmZW5zaWNodGxpY2gKZWluIFdhbHp3ZXJrd2FsZHp3ZXJnLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLiAoQXJrLCAxNi4gU2VwIDIwMDgsIDIyOjAzOjQ4KToKWndlaSBNYWVubmVyLCBkaWUgdm9yIGVpbmVtIFNjaG9rb2xhZGVubGFkZW5sYWRlbiBMYWRlbmxhZGVuIGxhZGVuLCBsYWRlbgpMYWRlbmxhZGVubWFlZGNoZW4genVtIEVzc2VuIGVpbi4KCgpVbmQgbm9jaCBlaW5lcjoKPEluIGVpbmVtIEdlc2NoYWVmdD4KCi0gTW9yZ2VuIQotIE1vcmdlbiEKLSBHaWIncyBHaXBzPwotIEdpcHM/IEdpcHMgZ2liJ3MgbW9yZ2VuLgotIE1vcmdlbj8KLSBNb3JnZW4uCi0gTW9yZ2VuIQotIE1vcmdlbiEKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogLi4uIChEYXJrbG9yLCAxNy4gU2VwIDIwMDgsIDAzOjQ3OjE5KToKfiMhIHJuPUFyayBydD0xMjIxNTk1NDI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyMTU5NTQyOApXYXMgaXMgZGVubiBuIExhZGVubGFkZW4/CgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IC4uLiAoUnVtYXRhLCAxNy4gU2VwIDIwMDgsIDA4OjAyOjM5KToKfiMhIHJuPURhcmtsb3IgcnQ9MTIyMTYxNjAzOSByZz1zY2htYXJybgp+IyEgdGlkPTEyMjE1OTU0MjgKU2NodWJsYWRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaG5lbGxmb3JzY2hlbiBiZWkgTW9yZ290aCAoQmx1dGdpZXIsIDE4LiBTZXAgMjAwOCwgMTc6NTg6NDMpOgpEdSB2ZXJmb2xnc3QgZWluZW4gQm9yeiBEcmFrb25pZXIsIGVpbmVuIEJhenVrIERyYWtvbmllciwgZWluZW4gQm9yegpEcmFrb25pZXIsIGVpbmVuIEF1cmlrCkRyYWtvbmllciwgZWluZW4gQXVyaWsgRHJha29uaWVyLCBlaW5lbiBTaXZvayBEcmFrb25pZXIsIGVpbmVuIEtvcG9rCkRyYWtvbmllciwgZWluZW4gS29wb2sgRHJha29uaWVyLCBlaW5lbiBzY2h3YXJ6ZW4gRHJhY2hlbiB1bmQgZWluZW4gU2l2b2sKRHJha29uaWVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNjaG5lbGxmb3JzY2hlbiBiZWkgTW9yZ290aCAoQW1hcnlsbGlzLCAxOC4gU2VwIDIwMDgsIDE5OjQ5OjU1KToKfiMhIHJuPUJsdXRnaWVyIHJ0PTEyMjE3NTM1MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIxNzUzNTIzCkJlaSBNb2dnbCBrYW5uIG1hbiBmb3JzY2hlbj8gOykKCnNjbnIsCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2NobmVsbGZvcnNjaGVuIGJlaSBNb3Jnb3RoIChWYW5pciwgMTguIFNlcCAyMDA4LCAyMDozNzoxMCk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTIyMTc2MDE5NSByZz1zY2htYXJybgp+IyEgdGlkPTEyMjE3NTM1MjMKR2VodCBhbHMga2FlbXBmZXIgYmVzdGltbXQgc286IHNjaG5lbGwsIHVudCBtb25zdGVyLCB0cwpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQXVmaGViZW4gdm9uIEdlZ2Vuc3RhZW5kZW4gZHVyY2ggTlBDIChBbmF0b2wsIDIxLiBTZXAgMjAwOCwgMjE6MzE6MDUpOgp+IyEgb249QW5hdG9sIG90PTEyMjIwMjU0NjEgb2c9ZW50d2lja2x1bmcKfiMhIHJuPVZhbmlyIHJ0PTEyMjIwMjUxMDQgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMjIyMDA0ODg1ClNvbGx0ZXN0IER1IGFuc3RyZWJlbiwgZGFzcyBkYXMgTXVkIGFsbGUgcGFhciBTdHVuZGVuIG5ldSBnZXN0YXJ0ZXQgd2VyZGVuCm11c3MsIER1IGplZGVzbWFsIG1pdCAiTmV1ZXIgU3BpZWxlciIgYmVncnVlc3N0IHdpcnN0LCBkYW1pdCB3aXIgcmVhbGlzdGlzY2gKd2VyZGVuIHVuZCBkaWUgZWlubWFsIFRvdGVuIGltIHJlZ3VsYWVyZW4gU3BpZWxiZXRyaWViIG5pY2h0IHNvIHVucmVhbGlzdGlzY2gKZHJlaXN0IHdpZWRlciBlcnNjaGVpbmVuLi4uIG9rYXkuIDspCgpBbmF0b2wKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBSZWNodGVyIFJlaW5mYWxsIChHcmltbWJvcm4sIDIyLiBTZXAgMjAwOCwgMTM6MjU6MjIpOgp+IyEgcm49QWxib2luIHJ0PTEyMjIwODE4NjMgcmc9d3d3Cn4jISB0aWQ9MTIyMTkxMzI4NQpFYmVuLiBVbmQgaWNoIGhhZXR0ZSBhdWNoIG5pY2h0cyBkYWdlZ2VuIHdlbm4gZGllIE9yZ2FuaXNhdG9yZW4gZ2xlaWNoIGluCmlocmVuIGJyYXVuZW4gTG9lY2hlcm4gYmVpIERpciBpbiBkZXIgR2VnZW5kIGdlYmxpZWJlbiB3YWVyZW4uIEFiZXIgbmVpbiwgc2llCm11c3N0ZW4gamEgcnVlYmVybWFjaGVuLi4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFJlY2h0ZXIgUmVpbmZhbGwgKEFsYm9pbiwgMjIuIFNlcCAyMDA4LCAxMzozNzowNCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTIyMjA4MjcyMiByZz1zY2htYXJybgp+IyEgdGlkPTEyMjE5MTMyODUKSG1tIFByby1Lb2VsbiBpc3QgYXVzIEJheWVybiwgaXN0IGphIG1hbCBnYW56IHdhcyBOZXVlcy4KCkZ1ZXIgbWljaCB3YXIgZXMgdWVicmlnZW5zIHdpcmtsaWNoIGVpbiBqYWVtbWVybGljaGVzIFNjaGF1c3BpZWwsIHVuZCB6d2FyIGF1ZgpiZWlkZW4gU2VpdGVuLiBXZW5uIGVzIHdlbmlnc3RlbnMgS2FybnZlYWx6ZWl0IGdld2VzZW4gd2FlcmUuLgphbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogUmVjaHRlciBSZWluZmFsbCAoR3JpbW1ib3JuLCAyMi4gU2VwIDIwMDgsIDE1OjI4OjQ1KToKfiMhIG9uPUFsYm9pbiBvdD0xMjIyMDg3NzUzIG9nPXd3dwp+IyEgcm49R2xvaW5zb24gcnQ9MTIyMjA4NTAxNSByZz13d3cKfiMhIHRpZD0xMjIxOTEzMjg1CndpZSBzaWVodCBlcyBkZW5uIG1pdCBTeW5hZ29nZW4sIFNpa2gtLCBCdWRkaGEtIHVuZCBIaW5kdXRlbXBlbCBhdXM/IFNpbmQgZGllCmF1Y2ggdW52b2xsc3RhZW5kaWc/CmFsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBSZWNodGVyIFJlaW5mYWxsIChHcmltbWJvcm4sIDIyLiBTZXAgMjAwOCwgMTU6Mjg6NDYpOgp+IyEgb249UnVtYXRhIG90PTEyMjIwODgyOTcgb2c9d3d3Cn4jISBybj1BbGJvaW4gcnQ9MTIyMjA4Nzc1MyByZz13d3cKfiMhIHRpZD0xMjIxOTEzMjg1CkRhbm4gaGF0IEtvZWxuIGVuZGxpY2ggd2llZGVyIHNlaW5lbiBCYXVrcmFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUmVjaHRlciBSZWluZmFsbCAoR3JpbW1ib3JuLCAyMi4gU2VwIDIwMDgsIDE1OjI4OjQ3KToKfiMhIG9uPUNyb2Z0IG90PTEyMjIwODkzODYgb2c9d3d3Cn4jISBybj1BbGJvaW4gcnQ9MTIyMjA4Nzc1MyByZz13d3cKfiMhIHRpZD0xMjIxOTEzMjg1CldvIGRhcmYgaWNoIG1pdCBkZW0gQmF1IG1laW5lcyBDcm9mdHRlbXBlbHMgYmVnaW5uZW4/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUmVjaHRlciBSZWluZmFsbCAoR3JpbW1ib3JuLCAyMi4gU2VwIDIwMDgsIDE1OjI4OjQ4KToKfiMhIG9uPUdsb2luc29uIG90PTEyMjIwODk3NTIgb2c9d3d3Cn4jISBybj1BbGJvaW4gcnQ9MTIyMjA4Nzc1MyByZz13d3cKfiMhIHRpZD0xMjIxOTEzMjg1CkphLiBXZW5uIGR1IEFuaGFlbmdlciBlaW5lciBkaWVzZXIgaW4gRGV1dHNjaGxhbmQgbmljaHQgdm9uIFZlcmZvbGd1bmcKYmVkcm9odGVuIFJlbGlnaW9uZW4gYmlzdCwgc29sbHRlc3QgZHUgZHJpbmdlbmQgZWluIEJhdXZvcmhhYmVuIGFubGVpZXJuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFJlY2h0ZXIgUmVpbmZhbGwgKEdyaW1tYm9ybiwgMjIuIFNlcCAyMDA4LCAxNToyODo0OSk6Cn4jISBvbj1SdW1hdGEgb3Q9MTIyMjA4OTk1OCBvZz13d3cKfiMhIHJuPUdsb2luc29uIHJ0PTEyMjIwODk3NTIgcmc9d3d3Cn4jISB0aWQ9MTIyMTkxMzI4NQpVbmQgYW4gUnVtYXRhdGVtcGVsIGRhbmt0IG1hbCB3aWVkZXIga2VpbmVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogUmVjaHRlciBSZWluZmFsbCAoR3JpbW1ib3JuLCAyMi4gU2VwIDIwMDgsIDE1OjI4OjUwKToKfiMhIG9uPUNyb2Z0IG90PTEyMjIwOTAwMjIgb2c9d3d3Cn4jISBybj1SdW1hdGEgcnQ9MTIyMjA4OTk1OCByZz13d3cKfiMhIHRpZD0xMjIxOTEzMjg1CldvIHN0ZWh0IGRlbm4gZWluZXI/ICBWaWVsbGVpY2h0IGRhbmtlIGljaCBkYW5uIGRvcnQgYXVjaCBtYWwuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogUmVjaHRlciBSZWluZmFsbCAoR3JpbW1ib3JuLCAyMi4gU2VwIDIwMDgsIDE1OjI4OjUxKToKfiMhIG9uPVJ1bWF0YSBvdD0xMjIyMDkwMDY1IG9nPXd3dwp+IyEgcm49Q3JvZnQgcnQ9MTIyMjA5MDAyMiByZz13d3cKfiMhIHRpZD0xMjIxOTEzMjg1CkZ1ZXJzIFRlbXBlbGJhdWVuIHNpbmQgZGllIEdsYWV1YmlnZW4genVzdGFlbmRpZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFJlY2h0ZXIgUmVpbmZhbGwgKEdyaW1tYm9ybiwgMjIuIFNlcCAyMDA4LCAxNToyODo1Mik6Cn4jISBvbj1BbGJvaW4gb3Q9MTIyMjA5MDA4MSBvZz13d3cKfiMhIHJuPUdsb2luc29uIHJ0PTEyMjIwODk3NTIgcmc9d3d3Cn4jISB0aWQ9MTIyMTkxMzI4NQpPaCBudW4gd2lyZCBlcyBub2NoIG1hbCBzcGFubmVuZC4gV2VsY2hlIFJlbGlnaW9uZW4gd2VyZGVuIGRlbm4gaW4gRCB2ZXJmb2xndD8KVW5kIENyb2Z0OiBlcnN0bWFsIGltIE1HIEdvdHQgd2VyZGVuLCBkYW5uIGtvZW5uZW4gd2lyIHdlaXRlcnJlZGVuLgphbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogUmVjaHRlciBSZWluZmFsbCAoQ3JvZnQsIDIyLiBTZXAgMjAwOCwgMTU6Mjk6MzEpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEyMjIwOTAxMzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIxOTEzMjg1Ck1pciByZWljaHRzIGluIFVuaXRvcGlhIEdvdHQgenUgc2Vpbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBSZWNodGVyIFJlaW5mYWxsIChSdW1hdGEsIDIyLiBTZXAgMjAwOCwgMTU6MzA6MTcpOgp+IyEgcm49Q3JvZnQgcnQ9MTIyMjA5MDE3MSByZz1zY2htYXJybgp+IyEgdGlkPTEyMjE5MTMyODUKTWluZGVyZSBHb2V0dGVyLi4uLnBmZmZmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogUmVjaHRlciBSZWluZmFsbCAoQ3JvZnQsIDIyLiBTZXAgMjAwOCwgMTU6MzE6MjUpOgp+IyEgcm49UnVtYXRhIHJ0PTEyMjIwOTAyMTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIxOTEzMjg1CkxpZWJlciBtaW5kZXIgYWxzIGFycm9nYW50LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBSZWNodGVyIFJlaW5mYWxsIChHcmltbWJvcm4sIDIyLiBTZXAgMjAwOCwgMTU6MzE6NDcpOgp+IyEgcm49Q3JvZnQgcnQ9MTIyMjA5MDI4NSByZz1zY2htYXJybgp+IyEgdGlkPTEyMjE5MTMyODUKTml2ZWF1IHNpZWh0IG51ciB2b24gdW50ZW4gd2llIEFycm9nYW56IGF1cy4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogUmVjaHRlciBSZWluZmFsbCAoR2xvaW5zb24sIDIyLiBTZXAgMjAwOCwgMTU6Mzg6MDYpOgp+IyEgcm49R3JpbW1ib3JuIHJ0PTEyMjIwOTAxMzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIxOTEzMjg1CkVzIHdpcmQgZXJzdCBzcGFubmVuZCB3ZW5uIGluIERldXRzY2hsYW5kIFJlbGlnaW9uZW4gdmVyZm9sZ3Qgd3VlcmRlbi4KU3Bhbm51bmdzbW9tZW50IHZvcmJlaS4gQmlzIGRhaGluIGthbm4gamVkZXIgaW0gUmFobWVuIGRlciBCYXV2b3JzY2hyaWZ0ZW4gdW5kCmRlcyBHRyBzZWluZW4gVGVtcGVsIGVycmljaHRlbi4KClZlcndhbHR1bmdza3JhbSBpbmtsdXNpdmUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogUmVjaHRlciBSZWluZmFsbCAoSHVtbmksIDI1LiBTZXAgMjAwOCwgMTc6MTQ6NDApOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIyMjA5MDY4NiByZz1zY2htYXJybgp+IyEgdGlkPTEyMjE5MTMyODUKSG1tLiBFaW4gRnJldW5kIHZvbiBtaXIgd29sbHRlIHp1IFNjaHVsemVpdGVuIChpbiBlaW5lciBlaGVyICJnZXdhbHR0YWV0aWdlbiIKUGhhc2UpIHNlaW5lICJOaXJ3YW5hIi1SZWxpZ2lvbiBhbmJpZXRlbiwgaW4gZGVyIGVyIGFsbGVuIExldXRlbiBhbmJpZXRldCwgc2llCmlucyBOaXJ3YW5hIHp1IGJlZm9lcmRlcm4gKGJlaSBzZWluZW4gUGhhbnRhc2llZW4gc3BpZWx0ZW4gZ3Jvc3NlIFd1bW1lbiBlaW5lCm5pY2h0IHVud2ljaHRpZ2UgUm9sbGUpLiBJY2ggYmV2b3J6dWdlIGRlcnplaXQgZGllIFJlbGlnaW9uIGRlciBMZXV0ZSwgZGllIGRlbgp1bmdsYXVibGljaCBib2VzZW4gRHJhY2hlbiBhbmJldGVuLiBEYXMgUHJvYmxlbSBpc3QsIGRhc3MgaWNoIGRpZSBMZXV0ZSBpbW1lcgpzb2ZvcnQgYXVmZnJlc3NlLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNwYWV0ZXIgRWluc2ljaHQgKEdsb2luc29uLCAyNi4gU2VwIDIwMDgsIDAyOjI1OjE0KToKW1RvZDpMYXJzXSBFaW4gU2NobmVlbW9uc3RlciBoYXQgZ2VyYWRlIEdub21lIHVtZ2VicmFjaHQuCltCZWlsZWlkOkdub21lXSB2ZXJkYW1tdC4gaWNoIHNvbGx0ZSBuaWNodCBzbyB2aWVsIGlkbGVuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTm9tZW4gZXN0IE9tZW4/IChKaW1kaWdyaXosICAyLiBPa3QgMjAwOCwgMjI6MTY6MjgpOgpbRGVidWc6U2hha2VkYmVlcl0gRmVobGVyOiAiQmFkIGFyZ3VtZW50IDEgdG8gZXh0cmFjdCgpOiAiLCBPYmpla3Q6CltEZWJ1ZzpTaGFrZWRiZWVyXSBkL3ZsYW5kL3NoYWtlZGJlZXIvbm9ybS1naW5zZWwvcm9vbS90dXJtLCBQcm9ncmFtbToKW0RlYnVnOlNoYWtlZGJlZXJdICIvc2VjdXJlL3NpbXVsX2VmdW4uYyIsIFplaWxlIDIzNjMgKFBhdGNoKSwgSUQ6CltEZWJ1ZzpTaGFrZWRiZWVyXSBhOTA4ZDYzYzYxNTljMWY2NmIyNDAxODYwZjlhODJiNgpbQWJlbnRldWVyOjxRdWVzdD5dIFBhdGNoIGhhdCBnZXJhZGUgZWluIEFiZW50ZXVlciBiZXN0YW5kZW46IERpZSBSYWV0c2VsIGRlcgpbQWJlbnRldWVyOjxRdWVzdD5dIEdlZmFlbmduaXNpbnNlbAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOb21lbiBlc3QgT21lbj8gKEFyaywgIDIuIE9rdCAyMDA4LCAyMjoyMDozMik6Cn4jISBybj1KaW1kaWdyaXogcnQ9MTIyMjk3ODU4OCByZz1zY2htYXJybgp+IyEgdGlkPTEyMjI5Nzg1ODgKUGF0Y2ggaGF0IGdlbG9lc3QsIGdlcGF0Y2hlZCBoYWIgYWJlciBpY2ghIDopCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IEhlcmJzdC1QYXJ0eSBpbiAuLi4gV2VybmlnZXJvZGU/IChHcmltbWJvcm4sICAzLiBPa3QgMjAwOCwgMDA6MzM6NTMpOgp+IyEgcm49WmVzc3RyYSBydD0xMjIyOTY5MTgzIHJnPXBhcnR5Cn4jISB0aWQ9MTIxNzgwMDkwMApOYW5hLCBudW4gdHUgbmljaHQgc28gYWxzIHd1ZXJkZSBlcyB1bSBlaW5lIE1pdGdsaWVkc2NoYWZ0IGJlaW0gQURBQyBvZGVyCnNvbnN0IGVpbmVyIHRlcnJvcmlzdGlzY2hlbiBWZXJlaW5pZ3VuZyBnZWhlbi4uLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQbGFudHNjaGVyZWkgKFB1Z25hdG9yLCAgNC4gT2t0IDIwMDgsIDA3OjEyOjQ5KToKRGEgc2NoZWludCBlaW4gS25vY2hlbnN0dWVja2NoZW4gaW4gZWluZXIgUGZ1ZXR6ZSB6dSBsaWVnZW4uIER1IGthbm5zdCBlcwpzaWNoZXIgZGEgaGVyYXVzZmlzY2hlbi4KPiBmaXNjaGUga25vY2hlbiBhdXMgcGZ1ZXR6ZSBoZXJhdXMKV28gd2lsbHN0IER1IGRlbm4gaGVydW1maXNjaGVuID8KPiBmaXNjaGUga25vY2hlbiBhdXMgcGZ1ZXR6ZQpXbyB3aWxsc3QgRHUgZGVubiBoZXJ1bWZpc2NoZW4gPwo+IGZpc2NoZSBrbm9jaGVuIGluIHBmdWV0emUKV28gd2lsbHN0IER1IGRlbm4gaGVydW1maXNjaGVuID8KPiBmaXNjaGUgaW4gcGZ1ZXR6ZQpXbyB3aWxsc3QgRHUgZGVubiBoZXJ1bWZpc2NoZW4gPwo+IGZpc2NoZSBpbiBwZnVldHplIGhlcnVtCldvIHdpbGxzdCBEdSBkZW5uIGhlcnVtZmlzY2hlbiA/Cj4gZmlzY2hlIHN0dWVja2NoZW4gYXVzIHBmdWV0emUKV28gd2lsbHN0IER1IGRlbm4gaGVydW1maXNjaGVuID8KPiBmaXNjaGUgc3R1ZWNrIGF1cyBwZnVldHplCldvIHdpbGxzdCBEdSBkZW5uIGhlcnVtZmlzY2hlbiA/Cj4gZmlzY2hlIGF1cyBwZnVldHplCldvIHdpbGxzdCBEdSBkZW5uIGhlcnVtZmlzY2hlbiA/Cj4gZmlzY2hlIHBmdWV0emUKV28gd2lsbHN0IER1IGRlbm4gaGVydW1maXNjaGVuID8KVG8gYmUgY29udGludWVkLi4uClB1Z25hdG9yLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBsYW50c2NoZXJlaSAoQXJrLCAgNC4gT2t0IDIwMDgsIDEwOjA1OjIwKToKfiMhIHJuPVB1Z25hdG9yIHJ0PTEyMjMwOTcxNjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIzMDk3MTY5ClBmZmYgLi4uIGFscyBBbmdlc3Byb2NoZW5lciBzYWcgaWNoIG51cjogTGVzZW4gYmlsZGV0IDotKQoiZmlzY2hlIGtubyBhdXMgcGZ1ZSIgZmVobHQgbm9jaC4gSW1tZXIgZGllc2UgU3BpZWxlciwgZ2xlaWNoIGlzdCBtYW4gYW0KUHJhbmdlciwgbnVyIHdlaWwgbWFuIGVpbiBLbm9jaGVuc3R1ZWNrIG5pY2h0IG1pdCBlaW5lbSBLbm9jaGVuIGdsZWljaHNldHp0LApwZnV1dXVlZWVlIDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUGxhbnRzY2hlcmVpIChHcmltbWJvcm4sICA0LiBPa3QgMjAwOCwgMTA6NDI6MjgpOgp+IyEgcm49QXJrIHJ0PTEyMjMxMDc1MjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIzMDk3MTY5CkdhbnogZGF2b24genUgc2Nod2VpZ2VuIGRhc3MgZGllIEZlaGxlcm1lbGR1bmcgamEgZWluZGV1dGlnIHp1IGVya2VubmVuIGdpYnQKZGFzcyBkYXMgT2JqZWt0IGRlcyBGaXNjaGVucywgYWxzbyBkZXIgT3J0LCBuaWNodCBrb3JyZWt0IGFuZ2VnZWJlbiBpc3QuIAoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBQbGFudHNjaGVyZWkgKEFyaywgIDQuIE9rdCAyMDA4LCAxMTowMTowMSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTIyMzEwOTc0OCByZz1zY2htYXJybgp+IyEgdGlkPTEyMjMwOTcxNjkKSGFiIGljaCBzdGlsbHNjaHdlaWdlbmQgZWluIHdlbmlnIGdlYWVuZGVydCAuLi4gdmVyZ2FzcyBpY2ggenUgZXJ3YWVobmVuIDopClp1bWluZGVzdCB3aXJkIG51IGRldXRsaWNoLCB3b3JhbiBlcyBiZWkgb2JpZ2VyIFN5bnRheCBoYWVuZ3QuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUGxhbnRzY2hlcmVpIChIdXJheHByYXgsICA0LiBPa3QgMjAwOCwgMTg6NTk6NTkpOgp+IyEgcm49QXJrIHJ0PTEyMjMxMTA4NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIzMDk3MTY5CkVybGF1YmUgZG9jaCBlaW5mYWNoICJmaXNjaGUga25vY2hlbiBhdXMgcGZ1ZXR6ZSIuLi4gc3Vic3RyIGlzdCBkYSBwcmFrdGlzY2gKOykKQWJlciBpY2ggZ2xhdWJlIGRhc3MgZGFzIHByb2JsZW0gd2FyIGRhc3MgbWFuIG5vY2ggd29hbmRlcnMgaGVydW1maXNjaGVuCmtvbm50ZS4uLiB1bmQgZGVuIEtub2NoZW4gYW5kZXJzIGJla2FtLCBlcmlubmVyZSBtaWNoIHBlY2hzY2h3cnpkdW5rZWwuLi4KCmh1cmF4CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUzogRXR5bW9sZ2llIHp1IGVpbmVtIFNwaWVsYXVzZHJ1Y2sgKFplc3N0cmEsICA0LiBPa3QgMjAwOCwgMTk6NTU6MDIpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEyMjMxNDE0ODQgcmc9c3VjaGUtYmlldGUKfiMhIHRpZD0xMjIzMTQxNDg0CkljaCBrZW5uIG5vY2ggbmljaHRtYWwgZGVuIEF1c3NwcnVjaCBhbiBzaWNoLiA7LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUzogRXR5bW9sZ2llIHp1IGVpbmVtIFNwaWVsYXVzZHJ1Y2sgKERhbnUsICA0LiBPa3QgMjAwOCwgMTk6NTY6MTgpOgp+IyEgcm49WmVzc3RyYSBydD0xMjIzMTQyOTAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyMzE0MTQ4NApzY2hhdSBhbiwgbmljaHQgbnVyIG1lZ2FzY2htYXJybiBiaWxkZXQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTOiBFdHltb2xnaWUgenUgZWluZW0gU3BpZWxhdXNkcnVjayAoWmVzc3RyYSwgIDQuIE9rdCAyMDA4LCAxOTo1ODoyOSk6Cn4jISBybj1EYW51IHJ0PTEyMjMxNDI5Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMjIzMTQxNDg0CkZyYWd0IHNpY2gsIG9iIGRpZXNlIEJpbGR1bmcgaGFlbmdlbmJsZWlidC4gSWNoIHNwaWVsIGthdW0gS2FydGVuIHVuZCBTa2F0CnByYWt0aXNjaCBuaWUuCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUzogRXR5bW9sZ2llIHp1IGVpbmVtIFNwaWVsYXVzZHJ1Y2sgKFJ1bWF0YSwgIDQuIE9rdCAyMDA4LCAyMDoyNTo1MCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTIyMzE0MTQ4NCByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEyMjMxNDE0ODQKT2VoLCAyMD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUzogRXR5bW9sZ2llIHp1IGVpbmVtIFNwaWVsYXVzZHJ1Y2sgKEh1bW5pLCAgNS4gT2t0IDIwMDgsIDE4OjU5OjI5KToKfiMhIHJuPVJ1bWF0YSBydD0xMjIzMTQ0NzUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyMzE0MTQ4NAoyCgpJY2ggd29sbHRlIG51ciBzYWdlbjogSWNoIGhhYiBkYXMgYXVjaCBub2NoIG5pZSBnZWhvZXJ0LgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFM6IEV0eW1vbGdpZSB6dSBlaW5lbSBTcGllbGF1c2RydWNrIChSdW1hdGEsICA1LiBPa3QgMjAwOCwgMjE6MDM6MDQpOgp+IyEgcm49SHVtbmkgcnQ9MTIyMzIyNTk2OSByZz1zY2htYXJybgp+IyEgdGlkPTEyMjMxNDE0ODQKCkRlciBTcHJ1Y2ggZ2Vob2VydCBpbiBXZXN0ZmFsZW4genVtIGFic29sdXRlbiBTdGFuZGFyZHJlcGVydGlvcmUuCgpSdW0qKgowCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTOiBFdHltb2xnaWUgenUgZWluZW0gU3BpZWxhdXNkcnVjayAoSHVtbmksICA1LiBPa3QgMjAwOCwgMjE6MzY6MTYpOgp+IyEgcm49UnVtYXRhIHJ0PTEyMjMyMzMzODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIzMTQxNDg0CkhtbS4KCkljaCBiaW4gaW4gV2VzdGZhbGVuIGF1Zmdld2FjaHNlbiAoU2F1ZXJsYW5kLCB1bSBnZW5hdWVyIHp1IHNlaW4pLiBVbmQgaWNoCmhhYmUgZnJ1ZWhlciBTa2F0IHVuZCBEb2tvIGdlc3BpZWx0LiBFaW5pZ2UgTWFsZS4gVW5kIGhhYmUgaWhuIG5pZSBnZWhvZXJ0LgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFM6IEV0eW1vbGdpZSB6dSBlaW5lbSBTcGllbGF1c2RydWNrIChSdW1hdGEsICA2LiBPa3QgMjAwOCwgMDk6MTQ6MjIpOgp+IyEgcm49SHVtbmkgcnQ9MTIyMzIzNTM3NiByZz1zY2htYXJybgp+IyEgdGlkPTEyMjMxNDE0ODQKTmFqYSwgZnVlcnMgU2F1ZXJsYW5kIGthbm4gaWNoIG5pY2h0IHNwcmVjaGVuLCBhYmVyIGZ1ZXIgTXVlbnN0ZXJsYW5kIHVuZApPc3R3ZXN0ZmFsZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTOiBFdHltb2xnaWUgenUgZWluZW0gU3BpZWxhdXNkcnVjayAoUnVtYXRhLCAgNi4gT2t0IDIwMDgsIDA5OjE0OjM2KToKfiMhIHJuPVJ1bWF0YSBydD0xMjIzMjc3MjYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyMzE0MTQ4NApBY2hqYTogNAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogUzogRXR5bW9sZ2llIHp1IGVpbmVtIFNwaWVsYXVzZHJ1Y2sgKEtlc3NhLCAgNi4gT2t0IDIwMDgsIDA5OjE2OjE0KToKfiMhIHJuPVJ1bWF0YSBydD0xMjIzMjc3Mjc2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyMzE0MTQ4NApJY2ggKGF1cyBNdWVuc3Rlcikga2VubiBkZW4gQXVzZHJ1Y2sgYXVjaCwgZGVyIGlzdCBkYSBzZWhyIGdlbGFldWZpZy4gQWJlcgprZWluZW4gU2NoaW1tZXIsIHdvIGVyIGhlcmtvbW10LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogUzogRXR5bW9sZ2llIHp1IGVpbmVtIFNwaWVsYXVzZHJ1Y2sgKEdub21lLCAgNi4gT2t0IDIwMDgsIDA5OjI0OjA1KToKfiMhIHJuPUtlc3NhIHJ0PTEyMjMyNzczNzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIzMTQxNDg0CmFoYS4gdW5kIHdhcyBiZWRldXRldCBlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFM6IEV0eW1vbGdpZSB6dSBlaW5lbSBTcGllbGF1c2RydWNrIChLZXNzYSwgIDYuIE9rdCAyMDA4LCAwOToyNjo1OCk6Cn4jISBybj1Hbm9tZSBydD0xMjIzMjc3ODQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyMzE0MTQ4NAoiTGVnIGpldHp0IG5lIEthcnRlIGhpbiBvZGVyIHZvbiBtaXIgYXVzIGF1Y2ggZWluIFN0dWVjayBIb2x6LCBIYXVwdHNhY2hlLCBkdQpzcGllbHN0IElSR0VORFdBUyBhdXMuIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFM6IEV0eW1vbGdpZSB6dSBlaW5lbSBTcGllbGF1c2RydWNrIChHbm9tZSwgIDYuIE9rdCAyMDA4LCAwOTozMjoyMSk6Cn4jISBybj1LZXNzYSBydD0xMjIzMjc4MDE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyMzE0MTQ4NApobW0sIG5hamEsIG5pZSBnZWhvZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFM6IEV0eW1vbGdpZSB6dSBlaW5lbSBTcGllbGF1c2RydWNrIChSdW1hdGEsICA2LiBPa3QgMjAwOCwgMDk6NDA6NDUpOgp+IyEgcm49R25vbWUgcnQ9MTIyMzI3ODM0MSByZz1zY2htYXJybgp+IyEgdGlkPTEyMjMxNDE0ODQKRGVyIFRocmVhZCByZWl6dCBtaWNoIGpldHp0IG5pY2h0IG1laHIuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFM6IEV0eW1vbGdpZSB6dSBlaW5lbSBTcGllbGF1c2RydWNrIChHbm9tZSwgIDYuIE9rdCAyMDA4LCAxMDowODoxNik6Cn4jISBybj1SdW1hdGEgcnQ9MTIyMzI3ODg0NSByZz1zY2htYXJybgp+IyEgdGlkPTEyMjMxNDE0ODQKc3RhcnRlIGhhbHQgbmVuIG5ldWVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogUzogRXR5bW9sZ2llIHp1IGVpbmVtIFNwaWVsYXVzZHJ1Y2sgKFplc3N0cmEsICA2LiBPa3QgMjAwOCwgMTE6NDA6MjMpOgp+IyEgcm49R25vbWUgcnQ9MTIyMzI4MDQ5NiByZz1zY2htYXJybgp+IyEgdGlkPTEyMjMxNDE0ODQKSWNoIGhhYiBsYWVuZ2VyIGluIE9zdHdlc3RmYWxlbiBnZXdvaG50IHVuZCBrZW5uIGlobiB0cm90emRlbSBuaWNodC4gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogUzogRXR5bW9sZ2llIHp1IGVpbmVtIFNwaWVsYXVzZHJ1Y2sgKFpvb2ssICA2LiBPa3QgMjAwOCwgMTc6MDE6NDIpOgp+IyEgcm49WmVzc3RyYSBydD0xMjIzMjg2MDIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyMzE0MTQ4NApJY2ggaGFiZSBKb2Ygc2VpIERhbmsgbmllIGluIE9zdHdlc3RmYWxlbiBnZXdvaG50LCBrZW5uZSBkZW4gU3BydWNoIAphbGxlcmRpbmdzLCBkZXIgd2FyIGF1Y2ggYmVpIHVucyBpbiBIZXNzZW4gZ2VsYWV1ZmlnLiBXb2hlciBlciBrb21tdCwKd2Vpc3MgaWNoIGFsbGVyZGluZ3MgbmljaHQuIFpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogUzogRXR5bW9sZ2llIHp1IGVpbmVtIFNwaWVsYXVzZHJ1Y2sgKEFyaywgIDYuIE9rdCAyMDA4LCAxNzoxMzoyMyk6Cn4jISBybj1ab29rIHJ0PTEyMjMzMDUzMDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIzMTQxNDg0ClNhZ3QgbWFuIGJlaSB1bnMgbmljaHQgIi4uLkhvbHogdm9yIGRlciBIdWV0dGUiPwoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBTOiBFdHltb2xnaWUgenUgZWluZW0gU3BpZWxhdXNkcnVjayAoWm9vaywgIDYuIE9rdCAyMDA4LCAxNzoxMzo0Nyk6Cn4jISBybj1BcmsgcnQ9MTIyMzMwNjAwMyByZz1zY2htYXJybgp+IyEgdGlkPTEyMjMxNDE0ODQKQmVpbSBLYXJ0ZW4gc3BpZWxlbj8gWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFM6IEV0eW1vbGdpZSB6dSBlaW5lbSBTcGllbGF1c2RydWNrIChDcm9mdCwgIDYuIE9rdCAyMDA4LCAxNzoxNDozNCk6Cn4jISBybj1ab29rIHJ0PTEyMjMzMDYwMjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIzMTQxNDg0CkRhcyBsZW5rdCBkb2NoIG51ciB2b20gS2FydGVuIHNwaWVsZW4gYWIuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTg6IFM6IEV0eW1vbGdpZSB6dSBlaW5lbSBTcGllbGF1c2RydWNrIChEYW51LCAgNi4gT2t0IDIwMDgsIDE3OjE1OjQ4KToKfiMhIHJuPUNyb2Z0IHJ0PTEyMjMzMDYwNzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIzMTQxNDg0CnZpZWxsZWljaHQgaXN0IGRhcyBnZW5hdSBkYXMgUHJvYmxlbSAtIGRhaGVyIGRlciBTcHJ1Y2g6IEthcnRlIG9kZXIgSG9seiA7LSkKCkRhbnUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE2OiBTOiBFdHltb2xnaWUgenUgZWluZW0gU3BpZWxhdXNkcnVjayAoS2Vzc2EsICA2LiBPa3QgMjAwOCwgMTc6MTg6MDEpOgp+IyEgcm49QXJrIHJ0PTEyMjMzMDYwMDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIzMTQxNDg0Ck1pdCBkZXIgQXNzb3ppYXRpb24gYmVrYWVtZSBkZXIgQXVzZHJ1Y2sgbmF0dWVybGljaCBlaW5lIGdhbnogYW5kZXJlIE5vdGUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogUzogRXR5bW9sZ2llIHp1IGVpbmVtIFNwaWVsYXVzZHJ1Y2sgKENyb2Z0LCAgNi4gT2t0IDIwMDgsIDE3OjE5OjE5KToKfiMhIHJuPUtlc3NhIHJ0PTEyMjMzMDYyODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIzMTQxNDg0CkhtLiAgSWNoIHd1ZXJkIGRhbm4gZWhlciBkcmF1ZiB0aXBwZW4sIGRhc3MgZGFzIGdlZm9yZGVydGUgSG9seiB6dW0KaGVpemVuIGRpZW5lbiBzb2xsLCBkYW1pdCBtYW4gaW4gZGVyIFplaXQgZGllIG1hbiBsYWVuZ2VyIGJyYXVjaHQgbmljaHQKZnJpZXJlbiBtdXNzLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBTOiBFdHltb2xnaWUgenUgZWluZW0gU3BpZWxhdXNkcnVjayAoQXJrLCAgNi4gT2t0IDIwMDgsIDE3OjI3OjE1KToKfiMhIHJuPUNyb2Z0IHJ0PTEyMjMzMDYzNTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIzMTQxNDg0Cjp2ZXJmcmFjaHRldCBDcm9mdCB3aWVkZXIgaW4gZGllc2UgV2VsdCB6dXJ1ZWNrLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUGxhbnRzY2hlcmVpIChOaWNvbGFpLCAgNy4gT2t0IDIwMDgsIDE4OjM5OjE1KToKfiMhIHJuPUFyayBydD0xMjIzMTA3NTIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyMzA5NzE2OQpJY2ggYmVoYXVwdGUgZWluZmFjaCBtYWwsIDkwJSBkZXIgUHJvYmxlbWUgaW4gZGVtIEdlYmlldApsaWVnZW4gbmljaHQgYW0gR2ViaWV0IHNlbGJlciwgc29uZGVybiBhbiBkZXIgUXVlc3RlaW5zdHVmdW5nCnZvbiBGdXJpZW5rcmllZy4gVmxsdCBsaWViZXIgZGEgbWFsIHNjaHJhdWJlbiwgc3RhdHQKaW0gKHN0aW1tdW5nc3ZvbGxlbikgR2ViaWV0IHNlbGJlci4KKEphIGljaCB3ZWlzcyBkYXMgbWFuIG1pdCBlaW5lciBrbGl0emVrbGVpbmVuIExldmVsCmRpZSBRdWVzdCBtYWNoZW4ga2Fubiwgc2VsYmlnZXMgZ2lsdCBmdWVyIE9iZXItCmdsYWRpYXRvciksIGFiZXIgaXMgc2Nob24gcmVjaHQgYmVtZXJrZW5zd2VydCwgd2llIAp2aWVsZSBMZXV0ZSwgZGllIGltIE11ZCBub2NoIG5pY2h0bWFsIGxhdWZlbgprb2VubmVuLCBpbiBkYXMgUXVlc3RnZWJpZXQgcmVpbnN0b2xwZXJuIHNlaXQgZGVyClF1ZXN0ZWluc3R1ZnVuZy4KKERhcyBuaWNodC1sYXVmZW4ta29lbm5lbi9yZWluc3RvbHBlcm4gaXN0IG5pY2h0CmF1ZiBha3R1ZWxsIGJldHJvZmZlbmUgenUgYmV6aWVoZW4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkYXMgbGViZW4uLi4gKEdub21lLCAxMC4gT2t0IDIwMDgsIDAwOjA2OjQ4KToKeHh4IHRlaWx0IERpciBtaXQ6IHB1aCBpY2ggZ2xhdWIgaWNoIG11c3MgbWVpbmUgdGFibGV0dGVuIHdpZWRlciBuZWhtZW4KeHh4IHRlaWx0IERpciBtaXQ6IC4uZGFzIGxlYmVuIGlzIGphIGZ1cmNodGJhciBhbnN0cmVuZ2VuZCBvaG5lCgpvZWguLi4gamEgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXZXIgaXN0IGRlciBWZXJyYWV0ZXI/IChaZXNzdHJhLCAxMy4gT2t0IDIwMDgsIDE0OjI5OjUxKToKfiMhIHJuPVZhbmhlbHNpbmcgcnQ9MTIyMzg5MDg1NCByZz13d3cKfiMhIHRpZD0xMjIzODkwODU0Ck1pdCB3YXQgZnVlciBuZW0gU2Nod2FjaHNpbm4gc2ljaCBkaWUgTGV1dGUgYmVzY2hhZWZ0aWdlbiwgc293b2hsIFByZXNzZSBhbHMKYXVjaCBkaWVzZXIga29taXNjaGUgRG9yZnZvcnN0YW5kIGRhLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXZXIgaXN0IGRlciBWZXJyYWV0ZXI/IChHbG9pbnNvbiwgMTMuIE9rdCAyMDA4LCAxNDozMToyOSk6Cn4jISBybj1aZXNzdHJhIHJ0PTEyMjM5MDA5OTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIzODkwODU0CkhleGVuamFnZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZXIgaXN0IGRlciBWZXJyYWV0ZXI/IChBbGJvaW4sIDEzLiBPa3QgMjAwOCwgMTQ6NDU6NTYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIyMzkwMTA4OSByZz1zY2htYXJybgp+IyEgdGlkPTEyMjM4OTA4NTQKTmFqYSBpcmdlbmR3byBrYW5uIG1hbnMgdmVyc3RlaGVuOiBtYW4gcnVlaG10IHNpY2ggZGFzIHNjaHdhZXJ6ZXN0ZSBEb3JmCkRldXRzY2hsYW5kcyB6dSBzZWluLCBkYSBrcmllZ3QgbWFuIGJlaSBBYndlaWNobGVybiBzY2hvbiBtYWwgZGllIEhvc2Ugdm9sbC4KU2NobGllc3NsaWNoIGxhZXVmdCBtYW4gaW4gZGllIEdlZmFociB1bSBlaW5lIEF0dHJha3Rpb24gYWVybWVyIHp1IHdlcmRlbi4gVW5kCmF1Y2ggaGF0IG1hbiBpbSBEb3JmIGphIG1hbCBlaW4gYW5kZXJlcyBUaGVtYSB3aWUgIkhlcnIgTXVlbGxlcnMgU3R1dGUgaGF0Cmdld29yZmVuLCB3dXNzdGVzdCBkdSBzY2hvbiBkYXM/IgphbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2VyIGlzdCBkZXIgVmVycmFldGVyPyAoQW50aGVhLCAxMy4gT2t0IDIwMDgsIDE0OjQ4OjU2KToKfiMhIHJuPUFsYm9pbiBydD0xMjIzOTAxOTU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyMzg5MDg1NApVbmQgZGFzIHNjaHdhZXJ6ZXN0ZSBEb3JmIGhhdCBlaW5lbiBfcGFydGVpbG9zZW5fIEJ1ZXJnZXJtZWlzdGVyPyBQYXNzdCBhdWNoCmlyZ2VuZHdpZSBuaWNodCB6dXNhbW1lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdlciBpc3QgZGVyIFZlcnJhZXRlcj8gKFZhbmhlbHNpbmcsIDEzLiBPa3QgMjAwOCwgMTQ6NTM6NDMpOgp+IyEgcm49QW50aGVhIHJ0PTEyMjM5MDIxMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIzODkwODU0Ck1hbiBiZWFjaHRlIGF1Y2gsIGRhc3Mgc2llIG5pY2h0IG51ciAxIFNQRC1XYWVobGVyIHNvbmRlcm4gYXVjaCAxCkdydWVuZW4tV2FlaGxlciBoYWJlbi4gRGVyIGdlbWVpbnNjaGFmdGxpY2hlIFN1aXppZCwgd2VpbCBtYW4gaW4gZWluZXIgc29sY2hlbgpXZWx0IG5pY2h0IGxlYmVuIHdpbGwsIGtvbW10IGJlc3RpbW10IGF1Y2ggbm9jaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFdlciBpc3QgZGVyIFZlcnJhZXRlcj8gKE9ya3RvZXRlciwgMTMuIE9rdCAyMDA4LCAxODowODoyNSk6Cn4jISBybj1WYW5oZWxzaW5nIHJ0PTEyMjM5MDI0MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIzODkwODU0ClN1aXppZGUgdmllbGxlaWNodCwgZ2VtZWluc2NoYWZ0bGljaCB3b2hsIGVoZXIgbmljaHQsIHdlaXMgZG9jaCBrZWluZXIgd2VyIGRlcgpBbmRlcmUgaXN0LiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogV2VyIGlzdCBkZXIgVmVycmFldGVyPyAoR3JpbW1ib3JuLCAxMy4gT2t0IDIwMDgsIDE4OjMyOjM2KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjIzOTE0MTA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyMzg5MDg1NApXaWVzbywgd2VyIGFtIEVuZGUgdWVicmlnIGJsZWlidCBpc3RzIGdld2VzZW4uCgpHZEEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFdlciBpc3QgZGVyIFZlcnJhZXRlcj8gKEFyaywgMTMuIE9rdCAyMDA4LCAxODo1OTozMCk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTIyMzkxNTU1NiByZz1zY2htYXJybgp+IyEgdGlkPTEyMjM4OTA4NTQKSHVjaCwgZGEgYmluIGljaCBqYSBzb2dhciBpbSBVcmxhdWIgZHVyY2hnZWZhaHJlbiAuLi4gbmFqYSwgZGllIEJheWVybiA6LSkKSmVkZXIgYmVrb21tdCBkaWUgUG9saXRpayhlciksIGRpZSBlciB2ZXJkaWVudC4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBXZXIgaXN0IGRlciBWZXJyYWV0ZXI/IChPcmt0b2V0ZXIsIDEzLiBPa3QgMjAwOCwgMTk6MDA6NTYpOgp+IyEgcm49QXJrIHJ0PTEyMjM5MTcxNzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMjIzODkwODU0Ck5laW4uIFouQi4gZGVyIGRlciBkaWUgU1BEIGdld2FlaGx0IGhhdCwgYmVrb21tdCBzaWNoZXIgbmljaHQgZGllIFBvbGl0aWtlcgpkaWUgZXIgdmVyZGllbnQgaGF0Li4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBXZXIgaXN0IGRlciBWZXJyYWV0ZXI/IChab29rLCAxMy4gT2t0IDIwMDgsIDE5OjI3OjEzKToKfiMhIHJuPUFyayBydD0xMjIzOTE3MTcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyMzg5MDg1NApGcmV1c3QgRHUgRGljaCBldHdhIGF1ZiBBbmRyZWEgWXBzaWxhbnRpPyBaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogV2VyIGlzdCBkZXIgVmVycmFldGVyPyAoQXJrLCAxMy4gT2t0IDIwMDgsIDE5OjI5OjQ2KToKfiMhIHJuPVpvb2sgcnQ9MTIyMzkxODgzMyByZz1zY2htYXJybgp+IyEgdGlkPTEyMjM4OTA4NTQKRHVyY2hhdXMgYXVmIGVpbiBXYWVobGVya29sbGVrdGl2IGFuenV3ZW5kZW4gOikgV2lyIHNpbmQgamEgYW5nZWJsaWNoIGRhcwpWb2xrLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBXZXIgaXN0IGRlciBWZXJyYWV0ZXI/IChHcmltbWJvcm4sIDE0LiBPa3QgMjAwOCwgMTA6MzM6MTEpOgp+IyEgcm49Wm9vayBydD0xMjIzOTE4ODMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyMzg5MDg1NApCZWkgUm9sYW5kIEtvY2ggYWxzIEFsdGVybmF0aXZlPyBObyBjb250ZXN0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWm9vayBzdGVsbHQgWmVzc3RyYSBhbiBkZW4gUHJhbmdlci4uLiAoQmFtYmksIDE1LiBPa3QgMjAwOCwgMjI6MDY6MjUpOgp+IyEgcm49Wm9vayBydD0xMjI0MDk0Mjk4IHJnPXByYW5nZXIKfiMhIHRpZD0xMjI0MDk0Mjk4Ck9laWghIERhdm9uIG11ZXNzdGUgaWNoIGphIHdvaGwgd2lzc2VuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBab29rIHN0ZWxsdCBaZXNzdHJhIGFuIGRlbiBQcmFuZ2VyLi4uIChaZXNzdHJhLCAxNS4gT2t0IDIwMDgsIDIyOjA3OjE4KToKfiMhIHJuPUJhbWJpIHJ0PTEyMjQxMDExODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMjI0MDk0Mjk4Ckh1Y2guIEljaCBoYWIgZG9jaCBuaWNodCBldHdhLi4uPyBQdXVoLCBuZWluLiBJY2ggaGFiIG5pY2h0IEJhbWJpIGtvbXByaW1pZXJ0Lgo6LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVlYmVyd2FjaHVuZyBkdXJjaCBkaWUgRU1zIChNaWV6ZSwgMjAuIE9rdCAyMDA4LCAxMTo0MjozNik6CmViZW4gcGFzc2llcnQ6CgpDcm9mdCBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCkRlaW5lIEZyZXVuZGluIFplc3N0cmEgdGVpbHQgRGlyIG1pdDogRGFzIGlzdCBqYSB1bnZlcnNjaGFlbXQuCgpNaWV6ZSAtIGdyaW5zZW5kCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVWViZXJ3YWNodW5nIGR1cmNoIGRpZSBFTXMgKENyb2Z0LCAyMC4gT2t0IDIwMDgsIDExOjU5OjMxKToKfiMhIHJuPU1pZXplIHJ0PTEyMjQ0OTU3NTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjI0NDk1NzU2CkphLCBzbyBiaW4gaWNoIDotKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVWViZXJ3YWNodW5nIGR1cmNoIGRpZSBFTXMgKFplc3N0cmEsIDIwLiBPa3QgMjAwOCwgMTM6MTE6NTEpOgp+IyEgcm49Q3JvZnQgcnQ9MTIyNDQ5Njc3MSByZz1zY2htYXJybgp+IyEgdGlkPTEyMjQ0OTU3NTYKVW5kIHdhcnRldCBudXIgbWFsIGFiLCBiaXMgd2lyIGFiIG5hZWNoc3RlbSBKYWhyIGZ1ZXIgZGVuIFNjaGFldWJsZSBhdWYgVm9ycmF0CnNwZWljaGVybiBtdWVzc2VuLi4uIERhbm4gd2lzc2VuIG5pY2h0IG51ciBkaWUgR29ldHRlciBhbGxlcy4uLiA7LSkKCk51ciB0ZWlsd2Vpc2UgbHVzdGlnLi4uCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBVZWJlcndhY2h1bmcgZHVyY2ggZGllIEVNcyAoR2xvaW5zb24sIDIwLiBPa3QgMjAwOCwgMTM6MTk6MDYpOgp+IyEgcm49WmVzc3RyYSBydD0xMjI0NTAxMTExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyNDQ5NTc1NgpJY2ggZmluZCBkaWUgSWRlZSAid2lyIHNwZWljaGVybiwgd2lzc2VuIGFiZXIgbmljaHQgZ2VuYXUgd2llIiBnYW56IGd1dC4KT3JkZW50bGljaGVuIENyeXB0SGFzaCB1ZWJlciBkaWUgTmFtZW4gcGx1cyBub2NoIGlyZ2VuZCBlaW5lbiBuaWNodCB2b24gYXVzc2VuCnBlciBGaW5nZXIgYXVzbGVzYmFyZW4gU2FsdCBkYXp1IHVuZCBpY2ggZnVlaGxlIG1pY2ggd29obGUgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBVZWJlcndhY2h1bmcgZHVyY2ggZGllIEVNcyAoR2xvaW5zb24sIDIwLiBPa3QgMjAwOCwgMTM6MjI6MTYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIyNDUwMTU0NiByZz1zY2htYXJybgp+IyEgdGlkPTEyMjQ0OTU3NTYKT2RlciB1bSBzaWNoZXIgenUgZ2VoZW4sIGRhc3Mga2VpbiBVbmJlZnVndGVyIGRpZSBEYXRlbiBsaWVzdCwgamVkZW4gVGFnIG1pdAplaW5lbSByYW5kb20tU2NobHVlc3NlbCB2ZXJzY2hsdWVzc2VsbiwgZGVyIG5hdHVlcmxpY2ggd2llZGVyIGdlbG9lc2NodCB3ZXJkZW4KbXVzcy4gU28gYWxzIEFucmVpeiBtaXQgbnVyIDEyOCBiaXQgQUVTLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFVlYmVyd2FjaHVuZyBkdXJjaCBkaWUgRU1zIChaZXNzdHJhLCAyMC4gT2t0IDIwMDgsIDEzOjQ4OjM2KToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMjQ1MDE3MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjI0NDk1NzU2Ckhhc2ggaXN0IG5pY2h0IGd1dCwgd2VpbCBqYSBkYW1pdCBudXIgZWluZSBUZWlsbWVuZ2UgZGVyIERhdGVuIHRhdHNhZWNobGljaApnZXNwZWljaGVydCB3aXJkLiBWZXJzY2hsdWVzc2VsbiBtaXQgWnVmYWxsc3NjaGx1ZXNzZWwgb2RlciBPbmUtVGltZS1QYWQgdW5kCmRhcyAndmVyZ2Vzc2VuJyB3YWVyZSB2aWVsbGVpY2h0IG5lIE9wdGlvbi4gQWxsZXJkaW5ncyBnZWhvZXJ0IGVpbiB6aWVtbGljaGVzCk1hc3MgUmlzaWtvZnJldWRlIGRhenUsIGRlbmsgaWNoLiBFcyBzZWkgZGVubiwgbWFuIGhhdCA1MDAga0V1cm8gaW4gZGVyClBvcnRva2Fzc2UuCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBVZWJlcndhY2h1bmcgZHVyY2ggZGllIEVNcyAoR2xvaW5zb24sIDIwLiBPa3QgMjAwOCwgMTM6NTA6NDgpOgp+IyEgcm49WmVzc3RyYSBydD0xMjI0NTAzMzE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyNDQ5NTc1NgpWb24gZWluZW0gTWF4aW1hbHN0cmFmc2F0eiBhdXN6dWdlaGVuIGhhbHRlIGljaCBmdWVyIHVucmVhbGlzdGlzY2guIEltCkJ1Y2hzdGFiZW4gaXN0IGRhcyBnZXNldHogZG9jaCBlcmZ1ZWxsdC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBVZWJlcndhY2h1bmcgZHVyY2ggZGllIEVNcyAoWmVzc3RyYSwgMjAuIE9rdCAyMDA4LCAxMzo1MTozNCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjI0NTAzNDQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyNDQ5NTc1NgpTZWxic3Qgd2VubiBpY2ggdW5yZWFsaXN0aXNjaGVyd2Vpc2UgbnVyIGVpbiBQcm96ZW50IGRhdm9uLCBuYWVtbGljaCA1MDAwIEV1cm8KYmV6YWhsZW4gbXVlc3N0ZSwgd2FlcmUgbWlyIGRhcyBtb21lbnRhbiB6dXZpZWwuCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBVZWJlcndhY2h1bmcgZHVyY2ggZGllIEVNcyAoR2xvaW5zb24sIDIwLiBPa3QgMjAwOCwgMTM6NTM6NTUpOgp+IyEgcm49WmVzc3RyYSBydD0xMjI0NTAzNDk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyNDQ5NTc1NgpSZWFsaXN0aXNjaGVyd2Vpc2Ugc29sbHRlbiB3aXIgdmllbGxlaWNodCB2b20gVmVyZWluIGhlciBlaW5mYWNoIG1hbCBlaW5lbgpBbndhbHQgYmVhdWZ0cmFnZW4sIHVucyB6dSBlcmtsYWVyZW4sIHdhcyB3aXIgaW0gWndlaWZlbHNmYWxsIHp1IGVyd2FydGVuCmhhZXR0ZW4uIEljaCBnZWhlIHpCIGVoZXIgZGF2b24gYXVzLCBkYXNzIHdpciBlaW5lIEF1ZmxhZ2UgenVyIG9yZGVudGxpY2hlbgpTcGVpY2hlcnVuZyBuYWNoIDxuZXVlIFJlZ2VsdW5nPiBiZWthZW1lbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBVZWJlcndhY2h1bmcgZHVyY2ggZGllIEVNcyAoWm9vaywgMjAuIE9rdCAyMDA4LCAxOToyMDoyNCk6Cn4jISBybj1aZXNzdHJhIHJ0PTEyMjQ1MDMzMTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjI0NDk1NzU2CjUwMCBrRXVybz8gVHJpZmZ0IGRhcyBldHdhcyBCYW5rdm9yc3RhZW5kZT8gWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFVlYmVyd2FjaHVuZyBkdXJjaCBkaWUgRU1zIChHbm9tZSwgMjAuIE9rdCAyMDA4LCAyMjozMzoyMCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjI0NTI1OTYxIHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD0xMjI0NDk1NzU2CndhcyBpc3QgZGVubiBlaW4gcGFyYWdyYWY/CmVpbiBuZXVlciBhZGxpZ2VyIG5wYyBpbiBkZXIgcGFyYXdlbHQ/IHVuZCB2b24gZGlyPyBpY2gga2FubnMga2F1bSBnbGF1YmVuIQoKZ25PbWUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBVZWJlcndhY2h1bmcgZHVyY2ggZGllIEVNcyAoWm9vaywgMjAuIE9rdCAyMDA4LCAyMjozNDowMik6Cn4jISBybj1Hbm9tZSBydD0xMjI0NTM0ODAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyNDQ5NTc1NgpoYXN0IGRlbiBlayBub2NoIG5pY2h0PyAKegoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IFVlYmVyd2FjaHVuZyBkdXJjaCBkaWUgRU1zIChHbm9tZSwgMjAuIE9rdCAyMDA4LCAyMjozNDozNyk6Cn4jISBybj1ab29rIHJ0PTEyMjQ1MzQ4NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjI0NDk1NzU2Cm5lZS4gc2FjaCBtYSB3byBkZXIgc3RlaHQuIGRlciBpcyBiZXN0aW1tdCBvYmVyaGFtbWEsIG9kZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogVWViZXJ3YWNodW5nIGR1cmNoIGRpZSBFTXMgKFpvb2ssIDIwLiBPa3QgMjAwOCwgMjI6MzQ6NTkpOgp+IyEgcm49R25vbWUgcnQ9MTIyNDUzNDg3NyByZz1zY2htYXJybgp+IyEgdGlkPTEyMjQ0OTU3NTYKaWNoIGJlZnVlcmNodGUsIGZ1ZXIgZGljaCBuaWNodCB6dSBzY2hhZmZlbi4gegoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTY6IFVlYmVyd2FjaHVuZyBkdXJjaCBkaWUgRU1zIChHbm9tZSwgMjAuIE9rdCAyMDA4LCAyMjozNTo0OSk6Cn4jISBybj1ab29rIHJ0PTEyMjQ1MzQ4OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMjI0NDk1NzU2CmljaCB3dXNzdGUgZXMhIGdsb2luc29uIHByb2dndCBlbnR3ZWRlciBnYXIgbml4IG9kZXIgbnVyIHNvCnVuc2NoYWZmYmFyZXMgemV1Y2guIGhldWwhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNzogVWViZXJ3YWNodW5nIGR1cmNoIGRpZSBFTXMgKEh1bW5pLCAyMC4gT2t0IDIwMDgsIDIyOjU0OjI3KToKfiMhIHJuPUdub21lIHJ0PTEyMjQ1MzQ5NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMjI0NDk1NzU2CkRhcyB3YWVyZSBlY2h0IG1hbCBlaW4gY29vbGVyIE5QQyEKCkdyYWYgRi4gdm9uIFguCgpVbmQgaW0gcGFyYToKClBhcmFncmFmIDEwMiB2b24gR0cgc2FndDogRGllIFRvZGVzc3RyYWZlIGlzdCBhYmdlc2NoYWZmdC4KCkhhcmhhcmhhcmhhciEKCmRhbm4gaGF1dCBlciBkaWNoIHVtISBIYXJoYXIhCgpIdW1uaQoobnVlY2h0ZXJuLCBtZXJrdCBtYW4gYWJlciBuaWNodCkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogVWViZXJ3YWNodW5nIGR1cmNoIGRpZSBFTXMgKFJ1bWF0YSwgMjEuIE9rdCAyMDA4LCAxMjoxNDowNyk6Cn4jISBybj1IdW1uaSBydD0xMjI0NTM2MDY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyNDQ5NTc1NgpEZXIgc29sbHRlIGRhbm4gYWJlciBhdWNoIHZvbiBlaW5lbSBOUEMgbmFtZW5zIEthcmwgTGF1ZXIgYmVzY2h1ZXR6dCB3ZXJkZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogVWViZXJ3YWNodW5nIGR1cmNoIGRpZSBFTXMgKEFudGhlYSwgMjEuIE9rdCAyMDA4LCAxMjoyNToyMyk6Cn4jISBybj1SdW1hdGEgcnQ9MTIyNDU4NDA0NyByZz1zY2htYXJybgp+IyEgdGlkPTEyMjQ0OTU3NTYKV2FyIGRhcyBuaWNodCBLYXJsIEF1ZXI/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogVWViZXJ3YWNodW5nIGR1cmNoIGRpZSBFTXMgKEdyaW1tYm9ybiwgMjEuIE9rdCAyMDA4LCAxMjo0NzoxNSk6Cn4jISBybj1BbnRoZWEgcnQ9MTIyNDU4NDcyMyByZz1zY2htYXJybgp+IyEgdGlkPTEyMjQ0OTU3NTYKSW0gUmFkaW8sIGphLiBBYmVyIHdpciB3b2xsZW4gdW5zIGRvY2ggbmljaHQgYXVmIGVpbmVuIFN0cmVpdCB1ZWJlciBnZWlzdGlnZQpSZWNodGUgZWlubGFzc2VuLi4uCgoKR2RBW2V4LVJdIE9IZE11QmRFICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBVZWJlcndhY2h1bmcgZHVyY2ggZGllIEVNcyAoQm9pbmcsIDIzLiBPa3QgMjAwOCwgMTE6Mjk6MTEpOgp+IyEgcm49Wm9vayBydD0xMjI0NzUyNDY2IHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD0xMjI0NDk1NzU2CldhcyBoZWlzc3QgZGVubiBoaWVyICdub2NoJyBlaW5tYWw/IDopCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5QQy1NdW5kIHR1dCBXYWhyaGVpdCBrdW5kLi4gbWFuY2htYWwgamVkZW5mYWxscyAoWmVwaHlyLCAyNC4gT2t0IDIwMDgsIDEzOjI3OjUyKToKW01vZXJkZXI6R2Vpc3QgRWR5bmVzXSBSZWluZSBHbHVlY2tzc2FjaGUsIEdub21lIQpEZWluIEZyZXVuZCBHbm9tZSB0ZWlsdCBEaXIgbWl0OiBib2FoCkRlaW4gRnJldW5kIEdub21lIHRlaWx0IERpciBtaXQ6IERDIHdhZWhyZW5kIGthbXBmIGdlaGFidCB1bmQgdHJvdHpkZW0KRGVpbiBGcmV1bmQgR25vbWUgdGVpbHQgRGlyIG1pdDogdWViZXJsZWJ0ICphZWNoeioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCYWQgU2VlZ2ViZXJnOiBWZXJrZWhyc2xvZ2lrIChHcmltbWJvcm4sIDI0LiBPa3QgMjAwOCwgMTg6Mjc6MTEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIyNDg2NTM1OSByZz13d3cKfiMhIHRpZD0xMjI0ODY1MzU5Ckdhbnoga2xhcjogTWl0IEZhaHJyYWRoZWxtZW4gd2FlcmUgZGFzIG5pY2h0IHBhc3NpZXJ0LgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJhZCBTZWVnZWJlcmc6IFZlcmtlaHJzbG9naWsgKEdsb2luc29uLCAyNC4gT2t0IDIwMDgsIDE4OjI5OjUwKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMjI0ODY1NjMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyNDg2NTM1OQpOZWluLCBpbSBBcnRpa2VsIHN0ZWh0LCBkYXNzIGF1ZmdydW5kIHZvbiBHZXNldHplbiwgUGFlZGFnb2dpayB1bmQKRmFocnJhZGhlbG1lbiBvZGVyIEFpcmJhZ3MgZGllIFVuZmFsbHphaGxlbiBzYWVua2VuLiBEYXMgaXN0IG5hdHVlcmxpY2ggZ3V0IHp1Cndpc3NlbiwgZGFzcyBzbyBlaW4ga2xlaW5lciBTcGFzc2hlbG0gb2RlciBlaW4gQWlyYmFnIGltIEF1dG8gZGVuIFVuZmFsbCBzY2hvbgptYWwgdmVyaGluZGVybi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXZWlobmFjaHRzbWFya3QgTWljaGVsc3RhZHQgMDYuMTIuMDggKFplc3N0cmEsIDI4LiBPa3QgMjAwOCwgMTY6NDg6NDkpOgp+IyEgcm49QXJrIHJ0PTEyMjUyMDg2NDggcmc9dHJlZmZlbgp+IyEgdGlkPTEyMjUxNDc2MjEKTmFqYSwgZGVzaGFsYiBzdGVodHMgYXVjaCBpbiAnJy4gQWxsZXJkaW5nczogTmFjaCBkZW0gUHJvYmllcmVuIHZvbiA4LTEwIE1hbHRzCmR1ZXJmdGUgZWluIGdld2lzc2VyIEVmZmVrdCBuaWNodCB6dSB2ZXJiZXJnZW4gc2Vpbi4gRXMgc2VpIGRlbm4sIG1hbiB0cmlua3QKbmljaHQsIHNvbmRlcm4gc3B1Y2t0cyB3aWVkZXIgYXVzIG9kZXIgcmllY2h0IG51ci4gCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBXZWlobmFjaHRzbWFya3QgTWljaGVsc3RhZHQgMDYuMTIuMDggKFZhbmlyLCAyOC4gT2t0IDIwMDgsIDE5OjIwOjMwKToKfiMhIHJuPVplc3N0cmEgcnQ9MTIyNTIwODkyOSByZz1zY2htYXJybgp+IyEgdGlkPTEyMjUxNDc2MjEKLi4uIGFiZXIgYmVrYW5udGxpY2ggZnVlcmNodGVuIHNpY2ggQ2hlbWlrZXIgbmljaHQgdm9yIGVpbiBwYWFyCktvaGxlbndhc3NlcnN0b2ZmZW4gLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdlciB3aWxsIFRha2hpc2lzIGhlaXJhdGVuPyAoR3JpbW1ib3JuLCAzMC4gT2t0IDIwMDgsIDExOjE5OjIyKToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMjI1MzU5NTc4IG9nPXd3dwp+IyEgcm49R3dlbiBydD0xMjI1MzU5NDYyIHJnPXd3dwp+IyEgdGlkPTEyMjUzNTYxMzkKTmEsIGRhIGhhYmUgaWNoIGphIGVuZGxpY2ggZG9jaCBlaW5lIENoYW5jZSBGYWxiYWxsYSB6dSBlaGVsaWNoZW4uIERpZSBoYXQKbWljaCB2b3IgSmFocmVuIHNjaG9uIGltbWVyIHNvIGxpZWIgYW5nZXNjaGF1dCEKCkdkQVtleC1SXSBPSGRNdUJkRSAgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZXIgd2lsbCBUYWtoaXNpcyBoZWlyYXRlbj8gKEdyaW1tYm9ybiwgMzAuIE9rdCAyMDA4LCAxMToxOToyMyk6Cn4jISBvbj1Dcm9mdCBvdD0xMjI1MzU5Nzk1IG9nPXd3dwp+IyEgcm49R3JpbW1ib3JuIHJ0PTEyMjUzNTk1Nzggcmc9d3d3Cn4jISB0aWQ9MTIyNTM1NjEzOQpQYXNzIGF1ZiwgZGEgaGF0IEFzdGVyaXggbm9jaCBlaW4gV29lcnRjaGVuIG1pdHp1c3ByZWNoZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV2VyIHdpbGwgVGFraGlzaXMgaGVpcmF0ZW4/IChHcmltbWJvcm4sIDMwLiBPa3QgMjAwOCwgMTE6MTk6MjQpOgp+IyEgb249R3dlbiBvdD0xMjI1MzU5ODMzIG9nPXd3dwp+IyEgcm49Q3JvZnQgcnQ9MTIyNTM1OTc5NSByZz13d3cKfiMhIHRpZD0xMjI1MzU2MTM5Ck9iZWxpeC4KT2RlciBUcmFnaWNvbWl4LgpHd2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2VyIHdpbGwgVGFraGlzaXMgaGVpcmF0ZW4/IChHcmltbWJvcm4sIDMwLiBPa3QgMjAwOCwgMTE6MTk6MjYpOgp+IyEgb249UnVtYXRhIG90PTEyMjUzNjA1NDUgb2c9d3d3Cn4jISBybj1HcmltbWJvcm4gcnQ9MTIyNTM1OTU3OCByZz13d3cKfiMhIHRpZD0xMjI1MzU2MTM5ClBvbHlnYW1pZSB3aXJkIGRhbm4gYWJlciBzY2h3ZXIgenUgdmVyaGluZGVybi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdlciB3aWxsIFRha2hpc2lzIGhlaXJhdGVuPyAoR3JpbW1ib3JuLCAzMC4gT2t0IDIwMDgsIDExOjE5OjI3KToKfiMhIG9uPUdyaW1tYm9ybiBvdD0xMjI1MzYxOTQ4IG9nPXd3dwp+IyEgcm49UnVtYXRhIHJ0PTEyMjUzNjA1NDUgcmc9d3d3Cn4jISB0aWQ9MTIyNTM1NjEzOQpEYXMgc29sbHRlIGtlaW4gUHJvYmxlbSBzZWluLiBCZXZvciBFaGVuIG1pdCBDb21pY2ZpZ3VyZW4ga29tbWVuIGlzdCBQb2x5Z2FtaWUKc2Nob24gbGFlbmdzdCBhbGxnZW1laW5lciB1c3VzLgoKR2RBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXZXIgd2lsbCBUYWtoaXNpcyBoZWlyYXRlbj8gKEFsYm9pbiwgMzAuIE9rdCAyMDA4LCAxNDoyNToxMik6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTIyNTM2MTk2NyByZz1zY2htYXJybgp+IyEgdGlkPTEyMjUzNTYxMzkKYWxsZXMgYWx0ZXIgSHV0LCBpY2gga2FubiBtaWNoIGVyaW5uZXJuIGRhcyBnYWFhYW56IGZydWVoZXIgIlJvbGYgdW5kIHNlaW5lCkZyZXVuZGUiIHNvIGVpbiBMaWVkIGhhdHRlbiB3byBhbGxlIGJlc2FuZ2VuIHdhcyBzaWUgc28gdHJhZXVtZW4sIHVuZCBkZXIgZGVyCmVpbmUgKGRlciAidW5kIGdhbnogZG9sbCBtaWNoIiBUeXApIHNhZ3RlIGRhcyBlciBzaWNoIGluIE1pc3MgUGlnZ3kgdmVybGllYnQKaGF0LCBzbyB3aGF0LgphbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2VyIHdpbGwgVGFraGlzaXMgaGVpcmF0ZW4/IChGYWxiYWxsYSwgMzAuIE9rdCAyMDA4LCAyMDo1OTowOSk6Cn4jISBybj1HcmltbWJvcm4gcnQ9MTIyNTM2MTk2MiByZz1zY2htYXJybgp+IyEgdGlkPTEyMjUzNTYxMzkKRmFsYmFsbGEgLSBzY2hhdXQgR3JpbW1ib3JuIGxpZWIgYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSWhyIHNlaWQgbmljaHQgYWxsZWluIC4uLiA6LSkgKEdsb2luc29uLCAzMS4gT2t0IDIwMDgsIDE1OjU5OjE2KToKfiMhIHJuPVpvb2sgcnQ9MTIyNTQ1MzUwMSByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTIyNTQ1MzUwMQo6bGVndCBFbnRib3JrdW5ncy1Nb2xvdG93LUNvY2t0YWlscyBiZXJlaXQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU3BhcmVuIGF1ZiBkZXIgQXV0b2JhaG4gKEdub21lLCAgMi4gTm92IDIwMDgsIDE3OjQyOjE3KToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMjI1NjQyMzg5IHJnPXd3dwp+IyEgdGlkPTEyMjU1NTEwOTYKZGFzcyBkdSBhdWYgc293YXMgbm9jaCBlcm5zdGhhZnQgYW50d29ydGVzdC4uLiByZXNwZWt0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQWVoPyAoTHVnLCAgNS4gTm92IDIwMDgsIDIyOjE5OjE1KToKTWlyaW1hZGVsIHRhZXRzY2hlbHQgRGlyIGRlbiBLb3BmLgpEdSBzcHVlcnN0LCB3aWUgRGVpbmUgR2VsZW5rZSBsb2NrZXIgd2VyZGVuLgoKU28gc28uLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11dGlnZSBLbGVyaXMgLi4uIG9kZXIgc28gOikgKFh1dGVsaXVzLCAgNi4gTm92IDIwMDgsIDAxOjA3OjAyKToKR3dlbiBydWZ0OiBqdWh1ISBsdWcgaXN0IG51biBnbGFldWJpZyEKTHVnIHJ1ZnQ6IEFUSEVJU1QhCkdsb2luc29uIHJ1ZnQ6IFdhaG9vb28hIEx1ZyBpbiBkaWUgS2xlcmlrZXJnaWxkZSEKTHVnIHJ1ZnQ6IFNlaCBpY2ggYXVzIHdpZSBlaW5lIEZyYXU/Ckdsb2luc29uIHJ1ZnQ6IEphLApHbG9pbnNvbiBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLiAKClh1dCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNdXRpZ2UgS2xlcmlzIC4uLiBvZGVyIHNvIDopIChMdWcsICA2LiBOb3YgMjAwOCwgMDE6MDg6MDIpOgp+IyEgcm49WHV0ZWxpdXMgcnQ9MTIyNTkzMDAyMiByZz1zY2htYXJybgp+IyEgdGlkPTEyMjU5MzAwMjIKRGFzIG5lbm5lIGljaCBGbHVjaHQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTXV0aWdlIEtsZXJpcyAuLi4gb2RlciBzbyA6KSAoR2xvaW5zb24sICA2LiBOb3YgMjAwOCwgMTA6Mjg6MzQpOgp+IyEgcm49THVnIHJ0PTEyMjU5MzAwODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjI1OTMwMDIyCkhleSwgbWVpbmUgRnJhdSBoYXR0ZSBtaXIgbWVpbmUgYW5nZXdhZXJtdGUgRGVja2UgZ2VrbGF1dCEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgaXN0IGluIEZyYW5rcmVpY2ggdW5kIHNjaG1lY2t0IG5hY2ggTGFwaHJvYWlnPyAoR3dlbiwgIDcuIE5vdiAyMDA4LCAyMTowMDowMik6Ckx1Z3Bocm9haWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2FzIGlzdCBpbiBGcmFua3JlaWNoIHVuZCBzY2htZWNrdCBuYWNoIExhcGhyb2FpZz8gKEdsb2luc29uLCAgNy4gTm92IDIwMDgsIDIxOjAzOjE3KToKfiMhIHJuPUd3ZW4gcnQ9MTIyNjA4ODAwMiByZz1zY2htYXJybgp+IyEgdGlkPTEyMjYwODgwMDIKS2F1ZmJhciB3bz8gSW4gamVkZW0gZ3V0IHNvcnRpZXJ0ZW4gTW9lYmVsbGFkZW4/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXYXMgaXN0IGluIEZyYW5rcmVpY2ggdW5kIHNjaG1lY2t0IG5hY2ggTGFwaHJvYWlnPyAoQWxib2luLCAgNy4gTm92IDIwMDgsIDIxOjMwOjE1KToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMjYwODgxOTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjI2MDg4MDAyClNjaG9lbmVzIFdvY2hlbmVuZGUsIHVuZCBaZXNzaSBsYXNzIGljaCBtaXQgZGVyIGZyYWdlIGFsbGVpbmUgCmFsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBWb3JyYXRzZGF0ZW5zcGVpY2hlcnVuZzogZU1haWwgaW0gTW9yZ2VuR3JhdWVuIChHbG9pbnNvbiwgMTAuIE5vdiAyMDA4LCAxNjowODoxMik6Cn4jISBybj1BbXludGhvciBydD0xMjI2MzIzNDk3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMjI2MzA4OTIwCj4gd3VlbnNjaGUgbWlyIGFsc28genVtaW5kZXN0IGRpZSBNb2VnbGljaGtlaXQsIHNpY2ggc2VsYnN0IGF1cyBkZW0KPiBOdXR6ZXJrcmVpcyBhdXN6dXNjaGxpZXNzZW4gLi4uCgoic2VsYnN0bG9lc2NodW5nIgoKPiAuLi4uIGJldm9yenVndCB1ZWJlcmhhdXB0IGVyc3QgYWxzIE9wdC1Jbi4KCiJ0ZWxuZXQgbWcubXVkLmRlIgp8IC4uLgp8IERlciBTdGVpbmJlaXNzZXIgdmVyc2Nod2luZGV0IHdpZWRlciwgdW5kIER1IHdhY2hzdCBpbiBlaW5lciBhbmRlcmVuCnwgV2VsdCBhdWYuCnwKfCBXaWUgaGVpc3N0IER1IGRlbm4gKCJuZXUiIGZ1ZXIgbmV1ZW4gU3BpZWxlcik/CiI8RU5URVI+Igp8IEFiYnJ1Y2ghCnwgQ29ubmVjdGlvbiBjbG9zZWQgYnkgZm9yZWlnbiBob3N0LgoKU0NOUiwgR2xvaW4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzdHVkZW50ZW4uLi4gKEdhYnlsb24sIDE3LiBOb3YgMjAwOCwgMTU6MTA6MzEpOgpOZXZhZGEgc2FndDogamV0enQgaGFiIGljaCBzY2hvbiBsYW5nIGdlbGVybnQgZmluZCBpY2gKCk5ldmFkYSBiaXR0ZXQgZGVuIFNjaGFtYW5lbiBvZmZlbmJhciB1bSBlaW5lbiBNZXR6ZWx2b3JzY2hsYWcuIE5hY2hkZW0gZGVyClNjaGFtYW5lIGVpbmUgSGFuZHZvbGwga2xlaW5lIEtub2VjaGVsY2hlbiBnZXd1ZXJmZWx0IGhhdCwgdHJpdHQgZWluZQphbmRhZWNodGlnZSBTdGlsbGUgZWluLiBJaHIgbXVlc3N0IHdvaGwgZWluZW4gQXVnZW5ibGljayBhdWYgc2VpbiBVcnRlaWwKd2FydGVuLiAKCi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFZvcnJhdHNkYXRlbnNwZWljaGVydW5nOiBlTWFpbCBpbSBNb3JnZW5HcmF1ZW4gKEdsb2luc29uLCAyMC4gTm92IDIwMDgsIDE0OjA4OjU3KToKfiMhIHJuPUFsYm9pbiBydD0xMjI3MTg2NDk1IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMjI2MzA4OTIwCkRyZWkgSm9uZ2xpZXJrZXVsZW4uIEF1ZiBkaWUgTnVzcy4KLiwKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE4OiBWb3JyYXRzZGF0ZW5zcGVpY2hlcnVuZzogZU1haWwgaW0gTW9yZ2VuR3JhdWVuIChHbm9tZSwgMjAuIE5vdiAyMDA4LCAxNDoxOTo0Mik6Cn4jISBybj1HbG9pbnNvbiBydD0xMjI3MTg2NTM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyNjMwODkyMAp3aXIgc29sbHRlbiBkZW4gZS1tYWlsLXZlcmtlaHIgbmFjaCBhdXNzZW4gc2Nob24gZGVzaGFsYiBzcGVycmVuLAp3ZWlsIGVzIGhpZXIgdS5hLiBlaW5lbiBjaGFyICJUZXJyb3Jpc3QiIGdpYnQsIHdlbGNoZXIgZGVuIGFic2VuZGVyCiJ0ZXJyb3Jpc3RAbWcubXVkLmRlIiBoYWV0dGUuCnZlcnRyYXVlbnNlcndlY2tlbmQgc2llaHQgZGllc2UgYWRyZXNzZSBhbHNvIG5pY2h0IGdlcmFkZSBhdXMuLi4gOykKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogVm9ycmF0c2RhdGVuc3BlaWNoZXJ1bmc6IGVNYWlsIGltIE1vcmdlbkdyYXVlbiAoR2xvaW5zb24sIDIwLiBOb3YgMjAwOCwgMTQ6MjA6NDApOgp+IyEgcm49R25vbWUgcnQ9MTIyNzE4NzE4MiByZz1zY2htYXJybgp+IyEgdGlkPTEyMjYzMDg5MjAKV2lyIG5laG1lbiBhdWNoICJ0eXBvIiwgImZlaGxlciIgdW5kICJpZGVlIiB2b24gQk5ELU1pdGFyYmVpdGVybiBlbnRnZWdlbiwKb2huZSBpaHJlIElQLUFkcmVzc2VuIHp1IGxvZ2dlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogVm9ycmF0c2RhdGVuc3BlaWNoZXJ1bmc6IGVNYWlsIGltIE1vcmdlbkdyYXVlbiAoWmVzc3RyYSwgMjAuIE5vdiAyMDA4LCAxNDoyMjo0Mik6Cn4jISBybj1HbG9pbnNvbiBydD0xMjI3MTg3MjQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyNjMwODkyMApNZWluc3QgRHUsIFRlcnJvcmlzdCBpc3QgbmVuIFR5cG8gdW5kIGRhcyBzb2xsIGVpZ2VudGxpY2ggVGVyb3Jpc3QgaGVpc3Nlbj8KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIxOiBWb3JyYXRzZGF0ZW5zcGVpY2hlcnVuZzogZU1haWwgaW0gTW9yZ2VuR3JhdWVuIChHbG9pbnNvbiwgMjAuIE5vdiAyMDA4LCAxNDoyODoxOSk6Cn4jISBybj1aZXNzdHJhIHJ0PTEyMjcxODczNjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjI2MzA4OTIwCk5laW4sIGljaCBtZWluZSBkYW1pdCwgZGFzcyB1bnMgamVkZXMgTWl0dGVsIHJlY2h0IGlzdCwgbmV1ZSBTcGllbGVyIHp1Cmdld2lubmVuLiBBdWNoIHNvbGNoZSwgZGllIGZ1ZXIgaWhyIFNwaWVsIGluIGVpbmVtIHZpcnR1ZWxsZW4gUmF1bSB2b2xsZXIKcG90ZW50aWVsbGVyIGhpbnRlcmhhZWx0aWdlciBNb2VyZGVyLCB3aWRlcmxpY2hlciBBbGNoZW1pc3RlbiB1bmQgZWluZW0gTmV0egp2b24gcG90ZW50aWVsbGVuIEhhdXB0c3RhZHQtQW5hbG9nYSB6dXIgRXJ1ZWJ1bmcgZGl2ZXJzZXIgQW5zY2hsYWVnZSBiZXphaGx0CndlcmRlbi4KCktva2FpbgpTcGVlZApCb21iZW4KVE5UClNhcmluClBvY2tlbgpNaWx6YnJhbmQKClNvLiBEYXMgc29sbHRlIGRvY2ggZXJzdG1hbCByZWljaGVuLiBWaWVsbGVpY2h0IHNwaWVsdCBzb2dhciBkZW1uYWVjaHN0CiJSb2xsaW1hbiIgaGllciBtaXQgdW5kIHdpcmQgRU0sIHVtIGRpZXNlbiBTYWZ0bGFkZW4gc2ljaGVyaGVpdHN0ZWNobmlzY2ggYXVmClZvcmRlcm1hbm4genUgYnJpbmdlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogVm9ycmF0c2RhdGVuc3BlaWNoZXJ1bmc6IGVNYWlsIGltIE1vcmdlbkdyYXVlbiAoQWxib2luLCAyMC4gTm92IDIwMDgsIDE0OjI5OjQyKToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMjcxODc2OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMjI2MzA4OTIwCkFsc28gYml0dGUsIG1laW4gTmFtZW5zZ2ViZXIgaGF0IGRlbiBTY2h3aWVnZXJ2YXRlciBoaW5nZW1ldHplbHQgdW5kIGlobiB6dQpHZXNjaGlyciB2ZXJhcmJlaXRlbiBsYXNzZW4uIFVuZCB0cm90emRlbSB0YXVjaHQgaGllciBkaWUgTW9yZGtvbW1pc3Npb24gbmljaHQKYXVmLgphbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjM6IFZvcnJhdHNkYXRlbnNwZWljaGVydW5nOiBlTWFpbCBpbSBNb3JnZW5HcmF1ZW4gKEdsb2luc29uLCAyMC4gTm92IDIwMDgsIDE1OjAwOjMzKToKfiMhIHJuPUFsYm9pbiBydD0xMjI3MTg3NzgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyNjMwODkyMApEZXIgVGF0YmVzdGFuZCBpc3QgamEgYXVjaCBhdWZnZWtsYWVydCAoZGFoZXIga2VpbmUgTW9yZGtvbWlzc2lvbikgdW5kCnZlcmphZWhydCAoZGFoZXIgbmllbWFuZCwgZGVyIGRpY2ggcmVjaHRsaWNoIHZlcmZvbGdlbiB3aWxsKS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogVm9ycmF0c2RhdGVuc3BlaWNoZXJ1bmc6IGVNYWlsIGltIE1vcmdlbkdyYXVlbiAoSGlnaGxhbmRlciwgMjAuIE5vdiAyMDA4LCAxNToxMTo0Nyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjI3MTg5NjMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyNjMwODkyMApNb3JkIHZlcmphZWhydCBuaWNodC4KCkhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjU6IFZvcnJhdHNkYXRlbnNwZWljaGVydW5nOiBlTWFpbCBpbSBNb3JnZW5HcmF1ZW4gKEdsb2luc29uLCAyMC4gTm92IDIwMDgsIDE1OjE1OjU4KToKfiMhIHJuPUhpZ2hsYW5kZXIgcnQ9MTIyNzE5MDMwNyByZz1zY2htYXJybgp+IyEgdGlkPTEyMjYzMDg5MjAKQWxib2luIGlzdCBPc3NpLiBEYSBpc3QgZGFzIGxhdXQgV2lraSBpbW1lciBub2NoIHZlcmphZWhydCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI1OiBWb3JyYXRzZGF0ZW5zcGVpY2hlcnVuZzogZU1haWwgaW0gTW9yZ2VuR3JhdWVuIChBbnRoZWEsIDIwLiBOb3YgMjAwOCwgMTU6MTY6MzApOgp+IyEgcm49SGlnaGxhbmRlciBydD0xMjI3MTkwMzA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyNjMwODkyMApBYmVyIHdlbm4gRHUgZWlubWFsIGF1cyAiTWFuZ2VsIGFuIEJld2Vpc2VuIiBmcmVpZ3Nwcm9jaGVuIHd1cmRlc3QsIGRhbm4Ka2FubnN0IER1IHNwYWV0ZXIgYXVjaCBuaWNodCBub2NoIG1hbCBkYWZ1ZXIgdmVydXJ0ZWlsdCB3ZXJkZW4uIEF1Y2ggZGFubgpuaWNodCwgd2VubiBwbG9ldHpsaWNoIGVpbmRldXRpZ2UgQmV3ZWlzZSBhdWZ0YXVjaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjY6IFZvcnJhdHNkYXRlbnNwZWljaGVydW5nOiBlTWFpbCBpbSBNb3JnZW5HcmF1ZW4gKEdsb2luc29uLCAyMC4gTm92IDIwMDgsIDE1OjE4OjIzKToKfiMhIHJuPUFudGhlYSBydD0xMjI3MTkwNTkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIyNjMwODkyMApJc3QgQWxib2luIGZyZWlnZXNwcm9jaGVuIHdvcmRlbj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xOTogVm9ycmF0c2RhdGVuc3BlaWNoZXJ1bmc6IGVNYWlsIGltIE1vcmdlbkdyYXVlbiAoQXJrLCAyMC4gTm92IDIwMDgsIDE4OjQ3OjE2KToKfiMhIHJuPUdub21lIHJ0PTEyMjcxODcxODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjI2MzA4OTIwCldpZSBibG9lZCBtYWcgZWluIHdpcmtsaWNoZXIgVGVycm9yaXN0IHNlaW4/IFQtU2hpcnRzIG1pdCAiSWNoIHRyYWdlIGVpbmUKS2Fub25lIiBvZGVyICJJY2ggd2lsbCBCb21iZW5zdGltbXVuZyIsIGdhbnoga2xhciBIaW53ZWlzZS4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogVm9ycmF0c2RhdGVuc3BlaWNoZXJ1bmc6IGVNYWlsIGltIE1vcmdlbkdyYXVlbiAoR25vbWUsIDIwLiBOb3YgMjAwOCwgMjA6MjA6MDcpOgp+IyEgcm49QXJrIHJ0PTEyMjcyMDMyMzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjI2MzA4OTIwCmphdS4gZGllIGF1ZmZhZWxsaWdzdGVuIHNpbmQgbGV0enRlbmRsaWNoIGRpZSB1bmF1ZmZhZWxsaWdzdGVuLgplcnphZWhsZSBqZWRlbSwgd2FzIGR1IHZvcmhhc3QgdW5kIGtlaW5lciB3aXJkIGRpciBnbGF1YmVuLgpzaWVoZSBzY2h1bG1hc3Nha2VyIGluIGRlbiBsZXR6dGVuIGphaHJlbiBpbiBkaXZlcnNlbiBsYWVuZGVybi4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogVm9ycmF0c2RhdGVuc3BlaWNoZXJ1bmc6IGVNYWlsIGltIE1vcmdlbkdyYXVlbiAoUnVtYXRhLCAyMC4gTm92IDIwMDgsIDIwOjI0OjE2KToKfiMhIHJuPUdub21lIHJ0PTEyMjcyMDg4MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjI2MzA4OTIwCkhhc3QgRHUgYXVjaCBCaWVkZXJtYW5uIHVuZCBkaWUgQnJhbmRzdGlmdGVyIGdlbGVzZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogVm9ycmF0c2RhdGVuc3BlaWNoZXJ1bmc6IGVNYWlsIGltIE1vcmdlbkdyYXVlbiAoR25vbWUsIDIwLiBOb3YgMjAwOCwgMjA6MjY6MDApOgp+IyEgcm49UnVtYXRhIHJ0PTEyMjcyMDkwNTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjI2MzA4OTIwCmljaCBoYWIgZGFzIHN0dWVjayBzb2dhciBtYWwgbWl0aW5zemVuaWVydC4KbWF4IGZyaXNjaCBoYXQgZGEgZWluIHdpcmtsaWNoIG5ldHRlcyB3ZXJrIGdlc2NoYWZmZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogVm9ycmF0c2RhdGVuc3BlaWNoZXJ1bmc6IGVNYWlsIGltIE1vcmdlbkdyYXVlbiAoT3JrdG9ldGVyLCAyMS4gTm92IDIwMDgsIDE4OjI2OjUzKToKfiMhIHJuPUdyaW1tYm9ybiBydD0xMjI3MjYwNzI0IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMjI2MzA4OTIwCldlciB2ZXJ0ZWlsdCBQb3Bjb3JuPwoqZ2VtdWV0bGljaCB6dXJ1ZWNrbGVobioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5pZWRlcnNjaG1ldHRlcm5kZXMgRXJsZWJuaXMgLi4uIDotKSAoWHV0ZWxpdXMsIDI0LiBOb3YgMjAwOCwgMjA6MDA6NTcpOgpUcmFwZiBzdGFycnQgZGVtIGdsYWVuemVuZGVuIFNjaHVwcGVud3lybSB0aWVmIGluIGRpZSBBdWdlbiB1bmQgc2FndDogV2VpbmUhCkRlciBnbGFlbnplbmRlIFNjaHVwcGVud3lybSBsYWVzc3QgZWluIGtsZWluZXMgQmxpdHpnZXdpdHRlciB1bSBUcmFwZiBoZXJ1bQplbnRzdGVoZW4uCkVpbiBnbGFlbnplbmRlciBTY2h1cHBlbnd5cm0gYnJpY2h0LCB2b24gZWluZW0gV2VpbmtyYW1wZiBnZXNjaHVldHRlbHQsCnp1c2FtbWVuLgpub3JtYWwvRWlzaGFuZCBUcmFwZiA6IFNjaHVwcGVud3lybSAqKioqKioqKiAtLSBLcmFjaGVuCm5vcm1hbC9CaXNzZW4gU2NodXBwZW53eXJtIDogVHJhcGYgKioqKioqKiogLS0gaGFydApEZXIgZ2xhZW56ZW5kZSBTY2h1cHBlbnd5cm0gbGFlc3N0IGVpbiBrbGVpbmVzIEJsaXR6Z2V3aXR0ZXIgdW0gVHJhcGYgaGVydW0KZW50c3RlaGVuLgpEaWUgVmVyemF1YmVydW5nIHZvbiBUcmFwZnMgSGFlbmRlbiBsYWVzc3QgbGFuZ3NhbSBuYWNoLgpEaWUgZ3VlbGRlbiBzY2hpbW1lcm5kZSBTY2h1dHphdXJhIHVtIFRyYXBmIGxvZXN0IHNpY2ggbGFuZ3NhbSBhdWYuCm5vcm1hbC9FaXNoYW5kIFRyYXBmIDogU2NodXBwZW53eXJtICoqKioqKioqIC0tIEtyYWNoZW4KRGVyIGdsYWVuemVuZGUgU2NodXBwZW53eXJtIGJhZXVtdCBzaWNoIG5vY2ggZWlubWFsIGF1ZiB1bmQgZG9ubmVydCBkYW5uIHp1CkJvZGVuLiBBbGxlcywgd2FzIHZvbiBpaG0gYmxlaWJ0LCBpc3QgZWluZSBnbGFlbnplbmRlIFNjaHVwcGUuCltNb2VyZGVyOkdlaXN0IGVpbmVzIGdsYWVuemVuZGVuIFNjaHVwcGVud3lybXNdIE9obmUgZGllc2VzIExhZyBoYWV0dGUgbWljaApbTW9lcmRlcjpHZWlzdCBlaW5lcyBnbGFlbnplbmRlbiBTY2h1cHBlbnd5cm1zXSBUcmFwZiBuaWNodCB1bWdlYnJhY2h0IQpFaW5lIExlaWNoZSBicmljaHQsIHZvbiBlaW5lbSBXZWlua3JhbXBmIGdlc2NodWV0dGVsdCwgenVzYW1tZW4uIAoKKGJpdHRlIHZlcnplaWh0IG1pciwgZGFzIGljaCB6dSBmYXVsIHdhciBkaWUgT3JpZ2luYWxtZWxkdW5nZW4gaGluIHp1IGZ1bW1lbG4pCgpYdXQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmx5aW5nIHBsYXllcnMgKEJhbWJ1bGtvLCAgOC4gRGV6IDIwMDgsIDIzOjIwOjEyKToKfiMhIHJuPUFyayBydD0xMjI4Nzc0NTQ3IHJnPXd3dwp+IyEgdGlkPTEyMjg3NzQ1NDcKVW5kIGRhcyBnYWIgYXVjaCBub2NoIGVpbmVuIEVsZm1ldGVyIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJvZWhsaWNoZSBXZWlobmFjaHRlbiAoVGVycm9yLCAyNC4gRGV6IDIwMDgsIDAwOjE0OjA0KToKUm9iaW4gd3VlbnNjaHQgRGlyIGZyb2VobGljaGUgV2VpaG5hY2h0ZW4uClJvYmluIHB1bHZlcmlzaWVydCBEaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZyb2VobGljaGUgV2VpaG5hY2h0ZW4gKFplc3N0cmEsIDI0LiBEZXogMjAwOCwgMDA6MTQ6MzgpOgp+IyEgcm49VGVycm9yIHJ0PTEyMzAwNzQwNDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjMwMDc0MDQ0CkZyZXVuZGxpY2guLi4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRnJvZWhsaWNoZSBXZWlobmFjaHRlbiAoUnVtYXRhLCAyNC4gRGV6IDIwMDgsIDIxOjA3OjAxKToKfiMhIHJuPVplc3N0cmEgcnQ9MTIzMDA3NDA3OCByZz1zY2htYXJybgp+IyEgdGlkPTEyMzAwNzQwNDQKUHVsdmVyc2NobmVlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU29tbWVycGFydHkgMjAwOSAoR2xvaW5zb24sICA2LiBKYW4gMjAwOSwgMTc6NDg6MzIpOgp+IyEgb249R2xvaW5zb24gb3Q9MTIzMTI2MDUwMiBvZz1wYXJ0eQp+IyEgcm49QXJrIHJ0PTEyMzEyNDY1MTUgcmc9cGFydHkKfiMhIHRpZD0xMjMxMjQ1NjU0CkRhcyBpc3QgbGVpY2h0LiBab29rIHVuZCBSdW1hdGEuCgpLcmllZyBpY2ggamV0enQgJ25lbiBMb2xsaT8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTb21tZXJwYXJ0eSAyMDA5IChBcmssICA2LiBKYW4gMjAwOSwgMTk6MzQ6NTUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIzMTI2MDUxMiByZz1zY2htYXJybgp+IyEgdGlkPTEyMzEyNDU2NTQKRGllIHNpbmQgbWVpc3QgbmljaHQgZGEgb2RlciBpZGVsbiAuLi4gaG0sIG51biwgd2VubiBpY2ggbWlyIGRlbiBVbnRlcnNjaGllZAp6dSBkZW4gTWFuYWdlcm4gc28gdWViZXJsZWdlIC4uLiB3b2hsIGRvY2ggZWluZSBPcHRpb24uCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU29tbWVycGFydHkgMjAwOSAoUnVtYXRhLCAgNi4gSmFuIDIwMDksIDIwOjAyOjA3KToKfiMhIHJuPUFyayBydD0xMjMxMjY2ODk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzMTI0NTY1NApBYmVyIE1hbmFnZXIgcmV0dGVuIHNlbHRlbiBkaWUgV2VsdCAtIHNvIHdpZSBab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogU29tbWVycGFydHkgMjAwOSAoQXJrLCAgNi4gSmFuIDIwMDksIDIwOjQ4OjQ5KToKfiMhIHJuPVJ1bWF0YSBydD0xMjMxMjY4NTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzMTI0NTY1NApEaWUgV2VsdCBpc3QgbmljaHQgZ2VudWcgLi4uIGdpbW1lIGEgcmFpc2UhCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU29tbWVycGFydHkgMjAwOSAoR2xvaW5zb24sICA2LiBKYW4gMjAwOSwgMjA6NTE6MDkpOgp+IyEgcm49QXJrIHJ0PTEyMzEyNzEzMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMjMxMjQ1NjU0CllvdXIgcXVlc3Qga2VlcHMgbGlmdGluZyBtZSAuLi4gaGlnaGVyIGFuZCBoaWdoZXIgLi4uCgoKL3NwcnVlaHQgQXJrIG1pdCByb2V0bGljaGVtIFNjaGxlaW0gdm9sbCB1bmQgc3RlbGx0IGRhcyBUYXBlIGFuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBEaWUgWndlaXRpZS1SZWdlbHVuZyBkZXIgTW9yZ2VuR3JhdWVuIChCYW1idWxrbywgIDcuIEphbiAyMDA5LCAxMTozNzo0Nik6Cn4jISBybj1OaWJlbCBydD0xMjMxMzIyNDg3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMjMxMTkyMTUzCkZhc3QgNjAwMCQgcHJvIEphaHIgYW4gR2VidWVocmVuIGZ1ZXIgZGllIDM2IEFjY291bnRzIGlzdCBhYmVyIGF1Y2ggbmljaHQKc2NobGVjaHQuIFVuZCB3YXMgZGllIGdhbnplIEhhcmR3YXJlIGdla29zdGV0IGhhYmVuIG11c3MuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogRGllIFp3ZWl0aWUtUmVnZWx1bmcgZGVyIE1vcmdlbkdyYXVlbiAoQXJrLCAgNy4gSmFuIDIwMDksIDExOjM5OjQxKToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEyMzEzMjQ2NjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjMxMTkyMTUzCkljaCBoYWIgYXVjaCBncmFkIGdlZGFjaHQgLi4uICJkZW4gbXVzc3QgZHUgYWxzIEt1bmRlbiBha3F1aXJpZXJlbiAuLi4gZ2xlaWNoCkt1bmRlbm51bW1lciBhbmxlZ2VuIHVuZCB2ZXJrYXVmZW4iIDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWndlaXRzcGllbGVyIChPcmt0b2V0ZXIsICA4LiBKYW4gMjAwOSwgMTc6Mzc6NDgpOgp+IyEgcm49TWlyaW1hZGVsIHJ0PTEyMzE0MjkzOTEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEyMzEzOTMwMDYKTWlyaSwgd2VubiBpY2ggbWlyIGRlaW5lbiBsZXR6dGVuIFNhdHogc28gYXVmIGRlciBadW5nZSB6ZXJnZWhlbiBsYXNzZToKTW9lY2h0ZXN0IGR1LCBkYXNzIGtlaW5lciBkZXIgU3BpZWxlciBpbiBkaWVzZW0gSmFociB6dW0gU2VoZXIgd2lyZD8gOykKCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBad2VpdHNwaWVsZXIgKENyb2Z0LCAgOC4gSmFuIDIwMDksIDE3OjQwOjQ2KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjMxNDMyNjY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzMTM5MzAwNgpTaWUgd2lsbCBkaWNoIE9ya3MgdG9ldGVuIHNlaGVuLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFp3ZWl0c3BpZWxlciAoTWlyaW1hZGVsLCAgOC4gSmFuIDIwMDksIDE3OjU1OjU1KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjMxNDMyNjY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzMTM5MzAwNgpIaSBPcmt0b2V0ZXIsCgpub2UsIGVzIG1vZWdlbiB2aWxlIG5ldWUgU2VoZXIgZW50c3RlaGVuLCBhYmVyIGFsbGUgc28gbGllYiBibGVpYmVuLCB1bmQgbmljaHQKbnVyIGVpZ2Vuc2lubmlnIHdlcmRlbi4KRGVubiB3ZW5uIGVpbmVyIG51ciBtaXQgc2VpbmVuIENoYXIuIHNwaWVsdCwgaGF0IGVyIGtlaW5lIEx1c3QgenUgSGVsZmVuIHVuZApzaWNoIGhlbGZlbiB6dSBsYXNzZW4uCgpHcnVlc3NlbCBNaXJpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogWndlaXRzcGllbGVyIChHbG9pbnNvbiwgIDkuIEphbiAyMDA5LCAyMTo0NDoyNyk6Cn4jISBybj1BcmsgcnQ9MTIzMTUzMzc0NCByZz1naWxkZW4ua2xlcnVzCn4jISB0aWQ9MTIzMTM5MzAwNgpEYSBtdWVzc3RlIGljaCBtaWNoIGphIGxvZXNjaGVuLiBOZW5lLCBhdXMgZGVyIE1hZ2llcmdpbGRlIHRyZXRlIGljaCBuaWNodAphdXMuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFp3ZWl0c3BpZWxlciAoWmVzc3RyYSwgIDkuIEphbiAyMDA5LCAyMTo0NzozNSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjMxNTMzODY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzMTM5MzAwNgppY2ggZmluZGUgZGllIE1hZ2llcmdpbGRlIFNwaWVsLSB1bmQgbWV0emVsc2VpdGUgYWJlciB6aWVtbGljaCBsYW5nd2VpbGlnLgpBbHNvLCBpY2ggdmVybXV0LCBkYSB3dWVyZGUgc2VsYnN0IFZhcmRpb24gc2FnZW4sIGRhc3MgZGllIEtsZXJpcwppbnRlcmVzc2FudGVyIHNpbmQuIDstKQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFp3ZWl0c3BpZWxlciAoR2xvaW5zb24sICA5LiBKYW4gMjAwOSwgMjI6MzU6MDgpOgp+IyEgcm49WmVzc3RyYSBydD0xMjMxNTM0MDU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzMTM5MzAwNgpNYWwgd2llZGVyIHdpbGxrdWVybGljaCBTcGllbGVyIHphcHBlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogWndlaXRzcGllbGVyIChab29rLCAxMi4gSmFuIDIwMDksIDA5OjEwOjM1KToKfiMhIHJuPUtlc3NhIHJ0PTEyMzE1MzQwMTUgcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTEyMzEzOTMwMDYKIkRhZW1pdHNjaCIgLi4uIFNlaHIgc2Nob2VuIC4uLgoKWm9vaywgYW0gQm9kZW4ga3VnZWxuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUZWxuZXQtS2VlcC1BbGl2ZSAoQW1hcnlsbGlzLCAyMS4gSmFuIDIwMDksIDIwOjQ5OjU5KToKfiMhIHJuPVplc3N0cmEgcnQ9MTIzMjM5ODAwNiByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTIzMjM5ODAwNgpTb3NvLgoKRXMgd2lyZCBhbHNvIFRyYWZmaWMgYXVmIG1laW5lIEtvc3RlbiBlcnpldWd0PyE/ISEhZWxmZWlucwoKQW1hKiwgZW50c2V0enQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVGVsbmV0LUtlZXAtQWxpdmUgKE9ya3RvZXRlciwgMjEuIEphbiAyMDA5LCAyMDo1MzozMSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTIzMjU2NzM5OSByZz1zY2htYXJybgp+IyEgdGlkPTEyMzIzOTgwMDYKV2VubiBlcyBudXIgZGVyIFRyYWZmaWMgd2FlcmUuLi4gZHUgbXVlc3N0ZXN0IG1hbCBkZW4gQmVyZWljaCBpbSBzb3VyY2VjZGUKc2VoZW4sIGRlciBoaW50ZXIgZGVtICJpZiB0aGlzX3BsYXllcj1BbWFyeWxsaXMiIGtvbW10Li4gdm9uICJpbnN0YWxsIHNweXdhcmUiCnVlYmVyICJzZW5kIGdpZ2FieXRlIG9mIHRyYXNoIiBiaXMgaGluIHp1OiAic2VuZCBlbWFpbGFkcmVzcyBhbmQgcHJpdmF0ZSBkYXRhCnRvIGFsbCBzcGFtbWVycyIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYmVkaW5ndW5nc2xvc2VzIEdydW5kZWlua29tbWVuIChHbG9pbnNvbiwgMjIuIEphbiAyMDA5LCAxNDoxMDoxOCk6Cn4jISBybj1BbGJvaW4gcnQ9MTIzMjYyOTQyOSByZz13d3cKfiMhIHRpZD0xMjMyNjI5NDI5CkdhYiBlcyBkYSBuaWNodCBzY2hvbiBtYWwgZWluZSBQZXRpdGlvbiBhbiBkZW4gQlQsIHNpY2ggZGFtaXQgenUKYmVzY2hhZWZ0aWdlbj8gV2lyZCBkYXMgc293YXMgd2llIGRhcyBqYWVocmxpY2hlIEduYWRlbmdlc3VjaD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGJlZGluZ3VuZ3Nsb3NlcyBHcnVuZGVpbmtvbW1lbiAoQWxib2luLCAyMi4gSmFuIDIwMDksIDE0OjE0OjAzKToKfiMhIHJuPUdsb2luc29uIHJ0PTEyMzI2Mjk4MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMjMyNjI5NDI5CktlaW5lIEFobnVuZy4KSWNoIG1laW5lIG51ciB3ZWlsIEFsdGhhdXMgaW4gZGVyIFJlaGEgaXN0LCBnZWh0IGRpZSBJZGVlIG5pY2h0IHZlcmxvcmVuLAprZWluZSBBbmdzdC4KCmFsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBiZWRpbmd1bmdzbG9zZXMgR3J1bmRlaW5rb21tZW4gKEh1cmF4cHJheCwgMjIuIEphbiAyMDA5LCAxNjoxMzowMCk6Cn4jISBybj1BbGJvaW4gcnQ9MTIzMjYzMDA0MyByZz1zY2htYXJybgp+IyEgdGlkPTEyMzI2Mjk0MjkKRGFzIHZlcmdlc3NlbmUgIj0iIGluIGRlciBpZi1hYmZyYWdlIGlzdCBzaWNoZXIga2VpbiBGZWhsZXIgc29uZGVybiBlaW4KYmVzb25kZXIgZmllc2VyIFRyY2lrIHZvbiBPcmt0b2V0ZXIgdW0gYWxsZW4gU3BpZWxlcm4gZGllIFNweXdhcmUKdW50ZXJ6dWp1YmVsbiEKCmh1cmF4CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW16dWdzaGlsZmUgKENyb2Z0LCAyNy4gSmFuIDIwMDksIDAxOjIyOjU4KToKfiMhIHJuPVZhbmhlbHNpbmcgcnQ9MTIzMzAwNjM2NiByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEyMzMwMDYzNjYKWmFobHN0IGR1IGRpZSBBbi0gdW5kIEFicmVpc2U/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRlYW0gdW5kIFp3ZWl0aWVzIChHcmltbWJvcm4sIDI4LiBKYW4gMjAwOSwgMjE6MzI6MjIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIzMzE2NzAzNCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTIzMzE2NzAzNApJY2ggbXVzcyB3aWRlcnNwcmVjaGVuLiBFcyBpc3QgZnVlciBtaWNoIGtlaW5lc2ZhbGxzIHRldWVyIGplbWFuZGVuIHp1IHphcHBlbgpkZXIgbWljaCB0cml0dC4KCkdkQQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRnJhZ2UgKE9ya3RvZXRlciwgIDQuIEZlYiAyMDA5LCAyMDoyMjo0Nyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTIzMzcwMTQxNCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEyMzM0OTIzNTQKR3JhdHMgenUgZGVuIGhlbGxzZWhlcmlzY2hlbiBGYWVoaWdrZWl0ZW4hICh3ZW5uIGRhcyBuYWVjaHN0ZSBlaW4gQ3Jhc2ggd2lyZAo7KSApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpNYWwgd2llZGVyIG5lIEFydCBGTFcuIChaZXNzdHJhLCAxMy4gRmViIDIwMDksIDEzOjU5OjQ5KToKSW1tZXIgd2llZGVyIGx1c3RpZzoKRXJ3YXJ0ZXQgIChvbmxpbmUpOiBBcmsKW1RvZDpMYXJzXSBBbW5lcGV0aHVhcyBab3JuIGhhdCBnZXJhZGUgR3JhYnBmbGVnZXIgdW1nZWJyYWNodC4KW1RvZDpBbW5lcGV0aHVhcyBab3JuIGhhdCBub2NoIGplZGVuIGVpbmdlaG9sdC5dCi0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSb2JpbiBpc3QgLi4uIGRvb2YuIChaZXNzdHJhLCAxNS4gRmViIDIwMDksIDEzOjM5OjMxKToKUm9iaW4gaXN0IGlyZ2VuZHdpZSBkb29mOgpEdSBnaWJzdCBSb2JpbiBkaWUgTXVlbnplLgpSb2JpbiBmcmFndDogV2FzIHNvbGwgaWNoIGRhbWl0PwpCZWhhbHRlbiB0dXQgZXIgc2llIGFiZXIgdHJvdHpkZW0uIDstKQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOaWUgbWVociB1ZWJlciBMb2huc3RldWVyamFocmVzYXVzZ2xlaWNoIHNjaGltcGZlbjogKE9ya3RvZXRlciwgMTUuIEZlYiAyMDA5LCAxOTo0MzoyNik6Cn4jISBybj1WYW5pb24gcnQ9MTIzNDcyMzM1MyByZz13d3cKfiMhIHRpZD0xMjM0NzIzMjkxCldlbGNoZSBLbmVpcGUgd2lyc3QgZHUgZGVubiBmb2VyZGVybj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5pZSBtZWhyIHVlYmVyIExvaG5zdGV1ZXJqYWhyZXNhdXNnbGVpY2ggc2NoaW1wZmVuOiAoVmFuaW9uLCAxNS4gRmViIDIwMDksIDE5OjQ2OjU5KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjM0NzIzNDA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzNDcyMzI5MQpOYWFoLCB3ZW5uIGljaCBkYXMgdmVyc2F1ZmUsIGJyYXVjaCBpY2ggbmUgbmV1ZSBMZWJlciwgdW5kIHNlaXQgRnJhdSBTY2htaWR0CmRhIGRyYW4gZnJpY2tlbHQsIHRyYXVlIGljaCBkZW0gR2VzdW5kaGVpdHNzeXN0ZW0gbmljaHQgd2VpdGVyIGFscyBpY2ggZXMKd2VyZmVuIGthbm4uCgpOZWluLCBpY2ggaW52ZXN0aWVyZSBpbiBndXRlLCBhbHRlIChuZXVlKSBIaWdoIEZpZGVsaXR5IDopCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTmllIG1laHIgdWViZXIgTG9obnN0ZXVlcmphaHJlc2F1c2dsZWljaCBzY2hpbXBmZW46IChaZXNzdHJhLCAxNS4gRmViIDIwMDksIDE5OjUwOjMwKToKfiMhIHJuPVZhbmlvbiBydD0xMjM0NzIzNjE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzNDcyMzI5MQpIZXksIGtvbW10LiBNaXQgZGVyIG5ldWVuIExlYmVyIHd1ZXJkZXN0IGR1IHZpZWwgR2VsZCBpbiBkaWUKR2VzdW5kaGVpdHN3aXJ0c2NoYWZ0IHB1bXBlbi4gRWluIHdlaXRlcmVyIEJlaXRyYWcgenVyIFdpcnRzY2hhZnRzZm9lcmRlcnVuZywKZ2xlaWNoIHp3ZWkgRmxpZWdlbiBtaXQgZWluZXIgS2xhcHBlISAoTmViZW4gZGVyIFVuaSBoaWVyIGVudHN0ZWh0IHVlYnJpZ2VucwpnZXJhZGUgZWluIEJpby1NZWRpemluLVBhcmsuKQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmllIG1laHIgdWViZXIgTG9obnN0ZXVlcmphaHJlc2F1c2dsZWljaCBzY2hpbXBmZW46IChNb29uc2hpbmUsIDE1LiBGZWIgMjAwOSwgMTk6NTE6MjIpOgp+IyEgcm49WmVzc3RyYSBydD0xMjM0NzIzODMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzNDcyMzI5MQpVbmQgd2VubiBtYW4gZGFubiBub2NoIHRyYXVyaWcgaXN0IC4uLiBkYW5uIHNwYXJzdCBEdSBkZXIgenVrdWVuZnRpZ2VuCkdlbmVyYXRpb24gZGllIFJlbnRlIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTmllIG1laHIgdWViZXIgTG9obnN0ZXVlcmphaHJlc2F1c2dsZWljaCBzY2hpbXBmZW46IChWYW5pb24sIDE1LiBGZWIgMjAwOSwgMTk6NTE6MzApOgp+IyEgcm49WmVzc3RyYSBydD0xMjM0NzIzODMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzNDcyMzI5MQpBY2gsIGRhcyBHZWxkIHB1bXB0IHNpY2ggZG9jaCBkYW5rIDx3aWUgaGVpc3N0IGRhcyBha3R1ZWxsZSBCdWVyb2tyYXRpZW1vbnN0ZXIKZG9jaCBnbGVpY2g/PiBzZWxic3QgaW0gS3JlaXMuIERhIGJyYXVjaHQgZXMgbWljaCBnYXIgbmljaC4gOikKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBOaWUgbWVociB1ZWJlciBMb2huc3RldWVyamFocmVzYXVzZ2xlaWNoIHNjaGltcGZlbjogKFplc3N0cmEsIDE1LiBGZWIgMjAwOSwgMjA6MTE6NTYpOgp+IyEgcm49VmFuaW9uIHJ0PTEyMzQ3MjM4OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMjM0NzIzMjkxCk1obW0sIGRhcyBrYW5uIHNlaW4uLi4gQWJlciBzbyBoYWV0dGVzdCBEdSBhdWNoIHdhcyB2b20gU3Bhc3MgZGFiZWkuIDstKQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODoga3VyeiB2b3IgdWx0aW1vIChBbmF0b2wsIDE3LiBGZWIgMjAwOSwgMTQ6NTY6MjEpOgp+IyEgb249QW5hdG9sIG90PTEyMzQ4Nzg5NzUgb2c9ZGlza3Vzc2lvbgp+IyEgcm49VmFuaW9uIHJ0PTEyMzQ4Nzg4ODMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEyMzQ4MjUzMjMKR3JleSBHb28gZnR3IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT3BpcyBuYWNoIDggSmFocmVuIG1hbCB3aWVkZXIgdW50ZXJ3ZWdzLi4uIChEaWVkZXIsIDIxLiBGZWIgMjAwOSwgMjI6MTQ6MTgpOgoKeHh4IHRlaWwgRGlyIG1pdDogaW50ZXJlc3NhbnQgaXMgbnVyLCBkYXNzIGljaCBkaWUgZ3VlbGxlIHNlbGJzdCBuaWNoIG1laHIKZmluZGUgOy0pKSkKCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogV2FhYWdoISAoRGllZGVyLCAyNC4gRmViIDIwMDksIDIwOjE2OjE5KToKfiMhIHJuPUNoYWdhbGwgcnQ9MTIzNTUwMjkzOCByZz1kLndhbGQKfiMhIHRpZD0xMjM1NDE4MTQ0CnNvbGFuZ2UgaWhyIG5pY2h0IGRpZSBjaGFvdGVuIGFiaGFlbmd0Li4uIDspCgpPcHBhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBXYWFhZ2ghIChDcm9mdCwgMjQuIEZlYiAyMDA5LCAyMDoxNjozOSk6Cn4jISBybj1EaWVkZXIgcnQ9MTIzNTUwMjk3OSByZz1zY2htYXJybgp+IyEgdGlkPTEyMzU0MTgxNDQKQ2hhb3RlbiBhYmhhZW5nZW4hIFNvZm9ydCEKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBXYWFhZ2ghIChLZXNzYSwgMjQuIEZlYiAyMDA5LCAyMDoxNjo1Nyk6Cn4jISBybj1Dcm9mdCBydD0xMjM1NTAyOTk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzNTQxODE0NApBbSBiZXN0ZW4gYWxsZXMsIGRhbm4gaXN0IFJ1aC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IFdhYWFnaCEgKFplc3N0cmEsIDI0LiBGZWIgMjAwOSwgMjA6MjY6NDIpOgp+IyEgcm49S2Vzc2EgcnQ9MTIzNTUwMzAxNyByZz1zY2htYXJybgp+IyEgdGlkPTEyMzU0MTgxNDQKVW5kIE1hZ2llciBzb3dpZXNvIGFscyBlcnN0ZXMsIGRpZSBtYWNoZW4gbnVyIFVuZnVnLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFdhYWFnaCEgKERpZWRlciwgMjQuIEZlYiAyMDA5LCAyMDoyNzo1NCk6Cn4jISBybj1aZXNzdHJhIHJ0PTEyMzU1MDM2MDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjM1NDE4MTQ0CkdlbmF1ISBGYXVsZW56ZXJwYWNrISBWaXJ0dWVsbGUgSGFydHpsZXIhCgpEaWUnd2VyIElyb25pZSBmaW5kZXQsIGRhcmYgc2llIGJlaGFsdGVuJ2RlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFdhYWFnaCEgKE9ya3RvZXRlciwgMjQuIEZlYiAyMDA5LCAyMDozNDoxMCk6Cn4jISBybj1EaWVkZXIgcnQ9MTIzNTUwMzY3NCByZz1zY2htYXJybgp+IyEgdGlkPTEyMzU0MTgxNDQKSXJvbmllPyBXbz8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBXYWFhZ2ghIChSdW1hdGEsIDI0LiBGZWIgMjAwOSwgMjA6NDE6NTApOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEyMzU1MDQwNTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMjM1NDE4MTQ0Cklyb25pZSA9IHp3YW5naGFmdGVzIEJ1ZWdlbG4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBXYWFhZ2ghIChPcmt0b2V0ZXIsIDI0LiBGZWIgMjAwOSwgMjA6NDU6MDApOgp+IyEgcm49UnVtYXRhIHJ0PTEyMzU1MDQ1MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMjM1NDE4MTQ0Cklyb25pZSBpc3QsIHdlbm4gZXMgdHJvdHpkZW0gYmVpc3N0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKc2VsYnN0bG9lc2NodW5nIChNZXNpcmlpLCAgMS4gTWFyIDIwMDksIDE0OjE2OjM0KToKR2VyYWRlIGVpbmUgaW50ZXJzc2FudGUgTWFpbCBhbiBlaW5lIChpbilvZmZpemllbGxlIG1nLUFkcmVzc2UgYmVrb21tZW4uCgpTZWhyIGdlZWhydGUgRGFtZW4gdW5kIEhlcnJlbiwKCmF1cyBwZXJzb25saWNoZW4gR3J1bmRlbiBtb2NodGUgaWNoIGdlcm4sIGRhcyBtZWluCkNoYXJha3RlciBpbSBNb3JnZW5ncmF1ZW4gZ2Vsb3NjaHQgd2lyZC4KCkRlciBOYW1lIGRlcyBDaGFyYWt0ZXJzIGxhdXRldAoKWHh4eHggZGVyIFBydWZ1bmdzYW53YXJ0ZXIKClZpZWxlbiBEYW5rLAptaXQgZnJldW5kbGljaGVuIEdydXNlbgoKICAgIFguIHh4eHgKCkljaCBoYWIgbWFsIGF1ZiBkYXMgS29tbWFuZG8gc2VsYnN0bG9lc2NodW5nIGhpbmdld2llc2VuLgoKV2FzIHd1cmRldCBpaHIgZGVubiBmdWVyIE5hbWVuIGluIHNvIG5lIE1haWwgZWluc2V0emVuPyAiWm9vayIgPwoKTWVzaSwgZ3JpbnNlbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzZWxic3Rsb2VzY2h1bmcgKFZhbmlvbiwgIDEuIE1hciAyMDA5LCAxNDozOTo1Nik6Cn4jISBybj1NZXNpcmlpIHJ0PTEyMzU5MTMzOTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjM1OTEzMzk0CkRpZSBNYWlsIHdhciB2b24gbWlyIHVuZCBpY2ggaGFiIFplc3N0cmEgZWluZ2VzZXR6dCBiZWltIE5hbWVuLgoKQ2hhb3MgUlVMRVogOikKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHNlbGJzdGxvZXNjaHVuZyAoWmVzc3RyYSwgIDEuIE1hciAyMDA5LCAxNTowNDowMCk6Cn4jISBybj1WYW5pb24gcnQ9MTIzNTkxNDc5NiByZz1zY2htYXJybgp+IyEgdGlkPTEyMzU5MTMzOTQKSnVjaHUsIGRhbm4gaGFiIGljaCBqYSBiYWxkIG5peCBtZWhyIHp1IHR1biwga2FubiBpY2ggamEgd2llZGVyIHNwaWVsZW4uICpnKgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHNlbGJzdGxvZXNjaHVuZyAoWm9vaywgIDIuIE1hciAyMDA5LCAwOToxNjoyMSk6Cn4jISBybj1NZXNpcmlpIHJ0PTEyMzU5MTMzOTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjM1OTEzMzk0Clpvb2sgaGVidCBlaW5lIEF1Z2VuYnJhdWUgdW5kIG1hY2h0IHNpY2ggZWluIHBhYXIgTm90aXplbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzZWxic3Rsb2VzY2h1bmcgKEFuYXRvbCwgIDIuIE1hciAyMDA5LCAxMDowNTozMSk6Cn4jISBybj1NZXNpcmlpIHJ0PTEyMzU5MTMzOTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjM1OTEzMzk0Cm1hY2ggRGljaCBtYWwgd2VuaWdlciB1ZWJlciBQcnVlZnVuZ3NhbndhZXJ0ZXIgbHVzdGlnIHVuZCBmaXgnIGRhcwpNUEEtQXJjaGl2IHN0YXR0ZGVzc2VuLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc2VsYnN0bG9lc2NodW5nIChab29rLCAgMi4gTWFyIDIwMDksIDEwOjQ5OjEzKToKfiMhIHJuPUFuYXRvbCBydD0xMjM1OTg0NzMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzNTkxMzM5NApJY2ggZ2xhdWIsIGF1cyBwdXJlciBMdXN0IGFuIGRlciBhbmF0b2xzY2hlbiBXaWVkZXJob2x1bmcsIHdlcmRlIGljaApkYXMgTVBBLUFyY2hpdiBuaWNodCBhbmZhc3NlbiAobGFzc2VuKS4gWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHNlbGJzdGxvZXNjaHVuZyAoQW5hdG9sLCAgMi4gTWFyIDIwMDksIDEwOjU3OjU3KToKfiMhIHJuPVpvb2sgcnQ9MTIzNTk4NzM1MyByZz1zY2htYXJybgp+IyEgdGlkPTEyMzU5MTMzOTQKRHUgd2lsbHN0IG1pY2ggbmljaHQgendlaW1hbCBlcmxlYmVuLgoKQWVoLCBvZGVyIGRvY2g/CgpEdSBrcmFuaz8KCk1oPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHNlbGJzdGxvZXNjaHVuZyAoWm9vaywgIDIuIE1hciAyMDA5LCAxMTowMDowNCk6Cn4jISBybj1BbmF0b2wgcnQ9MTIzNTk4Nzg3NyByZz1zY2htYXJybgp+IyEgdGlkPTEyMzU5MTMzOTQKSWNoIG1laW50ZSBhdWNoIG1laHIgZGllIHdpZWRlcmhvbHRlIE5vZXJnZWxlaSB3Zy4gZGVzIApNUEEtQXJjaGl2cy4gWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogc2VsYnN0bG9lc2NodW5nIChBbmF0b2wsICAyLiBNYXIgMjAwOSwgMTE6MDE6NDMpOgp+IyEgcm49Wm9vayBydD0xMjM1OTg4MDA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzNTkxMzM5NApBYWFhYWNoLCB3ZW5uIGplbWFuZCBaZWl0IGRhenUgaGF0LCBzaWNoIHVlYmVyIGtsZWluZSBTcGllbGVyIGx1c3RpZyB6dQptYWNoZW4sIGhhdCBlciB3YWhyc2NoZWlubGljaCBhdWNoIFplaXQgZGF6dSwgRmVobGVyY2hlbnMgenUgYmVzZWl0aWdlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWmVzc3RyYSAoR2xvaW5zb24sICAzLiBNYXIgMjAwOSwgMTI6MTA6NTUpOgp+IyEgcm49UnVtYXRhIHJ0PTEyMzYwMjc5Nzkgcmc9cHJhbmdlcgp+IyEgdGlkPTEyMzYwMjc5NzkKU29sbCBpY2ggZGlyIG1hbCBlaW4gUGhvdG8gdm9uIG1laW5lbSBkZXJ6ZWl0aWdlbiBaaW1tZXJ6dXN0YW5kIHNjaGlja2VuPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbSBMb2c6IChSdW1hdGEsICA4LiBNYXIgMjAwOSwgMTc6NDQ6NDEpOgpFaW4gQmVpZmFsbHNzdHVybSBicmFuZGV0IGltIERpYW1vbmRwYXJrIGF1Zi4gV2FzIGRhIHdvaGwgd2llZGVyIGxvcyBpc3Q/Clplc3N0cmEgICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCklzJ2tsYXIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVsaWNoIGltIExvZzogKFplc3N0cmEsICA4LiBNYXIgMjAwOSwgMTc6NDY6NTkpOgp+IyEgcm49UnVtYXRhIHJ0PTEyMzY1MzA2ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjM2NTMwNjgxCk5hLCBpc3QgZG9jaCB0b2xsLiA6LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJhZXVtZS4uLiAoWm9vaywgIDguIE1hciAyMDA5LCAxODozMjowNSk6Cn4jISBvbj1ab29rIG90PTEyMzY1MzM1MTkgb2c9ZC5wb2xhcgpab29rIHNpZWh0IEJhZXVtZSB3YW5rZW4hCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnJhdWVuYm9udXMuLi4gKERpZWRlciwgMTAuIE1hciAyMDA5LCAxMDozMjo0NCk6Cn4jISBvbj1EaWVkZXIgb3Q9MTIzNjY3NzQ2NCBvZz1naWxkZW4ua2xlcnVzCi4uLiB1bmQgRXJ3YXJ0dW5nc2hhbHR1bmcuLi46CgokZnJhdSBzYWd0OiB1ZmYgbXVzcyBpY2ggbWlyIHdpZWRlciBiZXNvcmdlbiBsYXNzZW4sIHdhciBzZWhyIGd1dAoKRGllZGVyLCBrb3Bmc2NodWV0dGVsbmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcmF1ZW5ib251cy4uLiAoRGVsLCAxMC4gTWFyIDIwMDksIDEyOjU4OjAxKToKfiMhIHJuPURpZWRlciBydD0xMjM2Njc3NTY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzNjY3NzU2NApBYmVyIGVzIGdpYnQgZG9jaCBnYXIga2VpbmUgRnJhdWVuIGltIE1nLCBkYXMgd2Vpc3MgZG9jaCB3aXJrbGljaCBqZWRlciwgT3BpIQo7LSkKRGllIE51RGVsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZyYXVlbmJvbnVzLi4uIChNaXJpbWFkZWwsIDExLiBNYXIgMjAwOSwgMTM6NTU6NTQpOgp+IyEgcm49RGVsIHJ0PTEyMzY2ODYyODEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjM2Njc3NTY0CldhcnVtIGdpYnQgZXMga2VpbmUgRnJhdWVuPyBITU0gaXN0IE1VRCBGcmF1ZW5sb3MgVUZGIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJ1ZWNrdHJpdHQgKEdsb2luc29uLCAxMi4gTWFyIDIwMDksIDE0OjIzOjMwKToKfiMhIHJuPVpvb2sgcnQ9MTIzNjg2NDE2NCByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTIzNjg2NDE2NApLZXNzYSBmb3IgUk0gRHNjaHVuZ2VsLiBHb2Jib3MgaW4gZGVuIFNjaGxhbW0hIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSdWVja3RyaXR0IChLZXNzYSwgMTIuIE1hciAyMDA5LCAyMzo0ODoyMSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjM2ODY0MjEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzNjg2NDE2NApFdWxlbiBuYWNoIEF0aGVuPyA6KSBJY2ggc29yZyBsaWViZXIgZnVlciBTY2hsYW1tLCB3byBub2NoIGtlaW5lciBpc3QgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFyayBpc3QgbmljaHQgc2NodWxkaWcsIGV1ZXIgRWhyZW4hIChBcmssIDEzLiBNYXIgMjAwOSwgMTk6NDI6MDIpOgpYWFggdGVpbHQgRGlyIG1pdDoga2VpbiB3dW5kZXIgZGFzIGljaCBpbW1lciBwcm9ibGVtZSBtaXQgc3ludGF4IGhhYgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBcmsgaXN0IG5pY2h0IHNjaHVsZGlnLCBldWVyIEVocmVuISAoSHVyYXhwcmF4LCAxMy4gTWFyIDIwMDksIDIyOjAzOjU4KToKfiMhIHJuPUFyayBydD0xMjM2OTY5NzIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzNjk2OTcyMgphbHMgZHUgZ2VzYWd0IGhhc3QgZGFzcyBkYXMgZ2ViaWV0IHZvbiBkaXIgaXN0PyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLb21wbGV0dGxvZXN1bmcgLSB3YXMgaXN0IGRhcyBlaWdlbnRsaWNoPyAoT3JrdG9ldGVyLCAyOC4gTWFyIDIwMDksIDE3OjAyOjI5KToKfiMhIHJuPURyb2dvIHJ0PTEyMzgwOTQyNTYgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEyMzgwOTQwOTEKTmVpbiwgZGllIExvZXN1bmcgenVyIFNDSHJhdHF1ZXN0IGhhYmUgaWNoIEFyayBnZXNjaGlja3QgdW5kIGRhcyB3YXIgc2Nob24KMTk5NyEgCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBLb21wbGV0dGxvZXN1bmcgLSB3YXMgaXN0IGRhcyBlaWdlbnRsaWNoPyAoRHJvZ28sIDI5LiBNYXIgMjAwOSwgMTc6MDk6NTYpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEyMzgyNTYxNDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMjM4MDk0MDkxCk9oLCBkYW5uIGhhdCBlciBkaWUgd2FocnNjaGVpbmxpY2ggZGFtYWxzIG5pY2h0IHZlcnN0YW5kZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU29tbWVycGFydHkgKFpvb2ssIDMwLiBNYXIgMjAwOSwgMTE6MDM6NDYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTIzNzgxMzgzMyByZz1wYXJ0eQp+IyEgdGlkPTEyMzc1Mjk0OTIKV2llIGlzdCBtYW4gZGVubiAiaW50ZXJuIGF1c2dlbGFzdGV0Ij8gU3RlaW5lIApnZWZydWVoc3R1ZWNrdD8gWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFic3R1ZnVuZyBHcmltbWJvcm4gKE1vbnRhbnVzLCAzMC4gTWFyIDIwMDksIDIyOjM2OjQ5KToKfiMhIHJuPVJ1bWF0YSBydD0xMjM3MjgwMjU2IHJnPXBvbGl6ZWkuYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEyMzcyODAyNTYKMTUgdGFnZSB6dSBmcnVlaCAtIGVzIGlzdCBkb2NoIG5vY2ggZ2FyIG5pY2h0IDEuIEFwcmlsIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBYnN0dWZ1bmcgR3JpbW1ib3JuIChBbmF0b2wsIDMxLiBNYXIgMjAwOSwgMTM6NDc6MTMpOgp+IyEgcm49TW9udGFudXMgcnQ9MTIzODQ0NTQwOSByZz1zY2htYXJybgp+IyEgdGlkPTEyMzcyODAyNTYKTWFuIG1lcmt0IGFiZXIgc29mb3J0LCBkYXNzIGVyIG5pY2h0IG1laHIgZGEgaXN0OiBwb2xpemVpLmJlc2Nod2VyZGVuIGlzdCBtaXQKS3JhZXV0ZXJxdWFyayBhdWZnZWJsYWVodC4uLiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEFic3R1ZnVuZyBHcmltbWJvcm4gKENyb2Z0LCAzMS4gTWFyIDIwMDksIDIxOjU3OjQ3KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMjM4NTIzMTg5IHJnPXBvbGl6ZWkuYmVzY2h3ZXJkZW4KfiMhIHRpZD0xMjM3MjgwMjU2CkFiZXIgU2NobWFycm4ga2FubnN0IGR1IGVya2VubmVuPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEFic3R1ZnVuZyBHcmltbWJvcm4gKFZhbmlyLCAgMS4gQXByIDIwMDksIDAwOjA2OjI4KToKfiMhIG9uPVZhbmlyIG90PTEyMzg1MzcxMjggb2c9YWxsZ2VtZWluZXMKfiMhIHJuPVplc3N0cmEgcnQ9MTIzODUyOTAxOSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTEyMzcyODAyNTYKV2lya2xpY2ggbmljaHQ/IAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogQWJzdHVmdW5nIEdyaW1tYm9ybiAoUnVtYXRhLCAgMS4gQXByIDIwMDksIDEwOjI5OjI5KToKfiMhIHJuPVZhbmlyIHJ0PTEyMzg1MzcxODggcmc9c2NobWFycm4KfiMhIHRpZD0xMjM3MjgwMjU2CldpcmtsaWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBvc3RnZWhlaW1uaXMgaW0gTXVkIChHbG9pbnNvbiwgIDYuIEFwciAyMDA5LCAxMToyMjoxMSk6Cn4jISBybj1LZXNzYSBydD0xMjM4OTE4NjE3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMjM4OTE4NjE3ClNvbGFuZ2UgZXIgc2ljaCBuaWNodCBlcndpc2NoZW4gbGFlc3N0IC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUG9zdGdlaGVpbW5pcyBpbSBNdWQgKFJ1bWF0YSwgIDYuIEFwciAyMDA5LCAxMToyMjo0NSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjM5MDA5NzMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzODkxODYxNwpXZXIgbmljaHQgaW4gdW5zZXJlciBMaXN0ZSBkZXIgS3JhbmtzY2hyZWliZXIgaXN0LCBoYXQgbml4IHp1IGJlZnVlcmNodGVuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hc3Rlcm1pbmQ6IFdvcmxkIENvbnF1ZXJvciAoT3JrdG9ldGVyLCAgNi4gQXByIDIwMDksIDE5OjA5OjE3KToKfiMhIHJuPUNyb2Z0IHJ0PTEyMzkwMzAxNDAgcmc9d3d3Cn4jISB0aWQ9MTIzOTAzMDE0MApVbmQgd2FzIGlzdCBkYW5uIG1laW4gWmllbCBpbiBkZXIgcmVhbGVuIFdlbHQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hc3Rlcm1pbmQ6IFdvcmxkIENvbnF1ZXJvciAoUnVtYXRhLCAgNi4gQXByIDIwMDksIDE5OjI1OjE4KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjM5MDM3NzU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTIzOTAzMDE0MApVbSBlcyBtaXQgQ2FsdmluICYgSG9iYmVzIHp1IHNhZ2VuOiBUaWdlciBGb29kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS29tcGxldHRsb2VzdW5nIC0gd2FzIGlzdCBkYXMgZWlnZW50bGljaD8gKFplc3N0cmEsICA3LiBBcHIgMjAwOSwgMjM6MDQ6NDkpOgp+IyEgb249WmVzc3RyYSBvdD0xMjM5MTM4MDMwIG9nPWRpc2t1c3Npb24KfiMhIHJuPUFsYm9pbiBydD0xMjM5MTM1MDgyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMjM4MDk0MDkxCipnYWVobioKR3J1bmRlaW5rb21tZW4gZnVlciBhbGxlIQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogS29tcGxldHRsb2VzdW5nIC0gd2FzIGlzdCBkYXMgZWlnZW50bGljaD8gKEFsYm9pbiwgIDguIEFwciAyMDA5LCAxMDo1NTowMik6Cn4jISBybj1aZXNzdHJhIHJ0PTEyMzkxMzgyODkgcmc9c2NobWFycm4KfiMhIHRpZD0xMjM4MDk0MDkxCkdlbmF1IHVuZDoKRXJ6bWFnaWVyc2NobnVlZmZlbGVpIHVuZCBFcnptYWdpZXJzY2hsZWNodGVsYXVuZSBmdWVyIE5pZW1hbmRlbiEKCmFsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOdWV0emxpY2hlIEZlYXR1cmVzIHZvbiBXaGl0ZWJvYXJkLUNsaWVudHMgKFZhbmlvbiwgIDguIEFwciAyMDA5LCAyMjo0NDoyNCk6CkFscyBpY2ggZGllIE1QQSBoZXV0ZSBnZWxlc2VuIGhhYiwgZGFjaHRlIGljaCBtaXIgc286IFdlbm4gJ3ZlcmJyZW5uZSBtcGEnCm5pY2h0IGJlcmVpdHMgZXhpc3RpZXJlbiB3dWVyZGUsIG11ZXNzdGUgbWFuIGVzIGVyZmluZGVuLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW1hcnlsbGlzLCAxMC4gQXByIDIwMDksIDIwOjQxOjIwKToKW0FiZW50ZXVlcjpCcmFrXSBCaW5nb2JvbmdvIGhhdCB1bnMgRWlzbiBnZWJyYWNodCEgV2FhYWdoIQpbR3JhdHM6QXpndXpdIGdyYXRzCltHcmF0czpTcmFiaV0gR3JhdHMKW0FiZW50ZXVlcjpCaW5nb2JvbmdvXSBkYW5rZSwgYmlsbGlnZSBtCltHcmF0czpCaW5nb2JvbmdvXSBiaWxsaWdlIG1xIHdvbGx0IGljaCBzYWdlbiA6RApbVG9kOkxhcnNdIEh1bWZyaWVkIGhhdCBnZXJhZGUgQmluZ29ib25nbyB1bWdlYnJhY2h0LgpbVG9kOkh1bWZyaWVkXSBTdGlyYiwgR29ibGluZnJldW5kIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFcnJyIC4uLiAoQmFtYnVsa28sIDE0LiBNYWkgMjAwOSwgMTI6NTI6MzgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTI0MjI5NzQ1MyByZz13d3cKfiMhIHRpZD0xMjQyMjk3NDUzCk11c3MgaWNoIGRpZXNlcyBCaWxkIHZlcnN0ZWhlbj8gV2FzIHNvbGwgZGFzPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBhcnR5IGluIFdldHpsYXIgKEdsb2luc29uLCAxOC4gTWFpIDIwMDksIDIwOjM2OjQzKToKfiMhIG9uPU9ya3RvZXRlciBvdD0xMjQyNjcxMjA3IG9nPXBhcnR5Cn4jISBybj1TcmFiaSBydD0xMjQyNjU3ODE2IHJnPXBhcnR5Cn4jISB0aWQ9MTI0MjY1NzgxNgpzb3NvLi4gInNpZSBoYWJlbiIgLC4uIG9kZXIgImhhYmVuIHNpZSBkaWUgTW9lZ2xpY2hrZWl0Ij8gOykKCk9ya1QuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBhcnR5IGluIFdldHpsYXIgKFpvb2ssIDE5LiBNYWkgMjAwOSwgMTQ6MzM6MjEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTI0MjY3MTgwMyByZz1zY2htYXJybgp+IyEgdGlkPTEyNDI2NTc4MTYKa29tbXQgYXVmIGRpZSBtZW5nZSBhbiBncmllY2hlbnRlbGxlcm4gYW4uCnoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEZvb2QgZm9yIHRob3VnaHQgLi4uIChab29rLCAgMi4gSnVuIDIwMDksIDE3OjU4OjU4KToKfiMhIHJuPUFyayBydD0xMjQzOTU4MTk4IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMjQzOTM4NjI1Cldpc3NlbiB3aXIsIHdpc3NlbiB3aXIuIFpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmxpbmRlbmZ1c3NiYWxsIERlbW9uc3RyYXRpb25zc3BpZWwgaW4gRG9ydG11bmQgKEdsb2luc29uLCAgMi4gSnVuIDIwMDksIDIxOjI1OjE0KToKfiMhIHJuPVh1dGVsaXVzIHJ0PTEyNDM5NjY5Mzkgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMjQzOTY2OTM5CktsaW5ndCBuYWNoIEdlbGVnZW5oZWl0IHp1bSBLcmV1emJhbmRyaXNzIHJlY2h0cyBmdWVyIG1pY2ggOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogRm9vZCBmb3IgdGhvdWdodCAuLi4gKEdsb2luc29uLCAgNC4gSnVuIDIwMDksIDExOjE4OjAxKToKfiMhIHJuPUdub21lIHJ0PTEyNDQxMDY5ODQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEyNDM5Mzg2MjUKRGFzIG9wdGltYWxzdGUgd2FlcmUsIGRlbiBUZWlsIGRlciBEaXNrdXNzaW9uIGFienV3dWVyZ2VuLgoKU0NOUgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBGb29kIGZvciB0aG91Z2h0IC4uLiAoWm9vaywgIDQuIEp1biAyMDA5LCAxMTozNDo0MCk6Cn4jISBybj1TcmFiaSBydD0xMjQ0MTA3NDc4IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMjQzOTM4NjI1CkhpZXIgbm9jaCBlaW4ga3VyemVzIFppdGF0IGF1cyAtaDoKCltTZWhlcjpTcmFiaSBsaWVidCBzZWluIFpNVUQgPE1pdCwgMTQ6MTc6MDc+XQoKClNjaHVsZGlndW5nLCB3ZW5uIGljaCBudW4gU3BpZWxlcm4gU2VoZXJ3aXNzZW4genVnYWVuZ2xpY2ggZ2VtYWNodApoYWJlLCBhYmVyIFNDTlIuIAoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBGb29kIGZvciB0aG91Z2h0IC4uLiAoVmFyZGlvbiwgIDYuIEp1biAyMDA5LCAyMDoxMToyNCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjQ0MTA3MDgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI0MzkzODYyNQoib3B0aW1hbCIgaXN0IG5pY2h0IHN0ZWlnZXJiYXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogRm9vZCBmb3IgdGhvdWdodCAuLi4gKEdsb2luc29uLCAgNi4gSnVuIDIwMDksIDIwOjI5OjIxKToKfiMhIHJuPVZhcmRpb24gcnQ9MTI0NDMxMTg4NCByZz1zY2htYXJybgp+IyEgdGlkPTEyNDM5Mzg2MjUKSXJvbmllIGlzdCBuaWNodCB0YWdiYXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKcG9zdGZhY2ggOikgKFZlY3RvciwgMTEuIEp1biAyMDA5LCAxODo1ODozNyk6Ck9yZG5lciBuZXdtYWlsOiAzNSBCcmllZmUKWy4uLl0KICAgMzA6IChWZWN0b3JAbWcubXVkLmRlLCAyOS4gTWFpKSAgUmVjb3JkZWQgeW91ciB2b2ljZSEKICAgMzE6IChWZWN0b3JAbWcubXVkLmRlLCAgNS4gSnVuKSAgSm9pbiBvdXIgY2x1YgogICAzMjogKFZlY3RvckBtZy5tdWQuZGUsICA2LiBKdW4pICBJIGdvdCBmcmVlIHRpY2tldHMKICAgMzM6IChWZWN0b3JAbWcubXVkLmRlLCAgOC4gSnVuKSAgRXhjdXNlIG1lIGZvciB3cml0aW5nCiAgIDM0OiAoVmVjdG9yQG1nLm11ZC5kZSwgIDkuIEp1bikgIFlvdSBoYXZlIHRvIHNlZSBpdAogICAzNTogKFZlY3RvckBtZy5tdWQuZGUsIDExLiBKdW4pICBHb3QgYSBmcmVlIGV2ZW5pbmc/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCcmF2IC4uLiAoWHV0ZWxpdXMsIDExLiBKdW4gMjAwOSwgMjE6MDk6MzgpOgpOZWZpcyBzYWd0OiBpY2ggYmluIGVpbiBicmF2ZXMgbWFlZGNoZW4KTmVmaXMgcnVlbHBzdC4gCi0pClh1dCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBwb3N0ZmFjaCA6KSAoQXJrLCAxMi4gSnVuIDIwMDksIDEyOjIyOjE1KToKfiMhIHJuPVZlY3RvciBydD0xMjQ0NzM5NTE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI0NDczOTUxNwpXZWxjaGUgVGlja2V0cyBzaW5kIGRlbm4gZGFzPyBGdXNzYmFsbD8gUEdBPyBCYXNrZXRiYWxsPyBIdW5kZXdldHRrYW1wZj8gLi4uCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHBvc3RmYWNoIDopIChab29rLCAxMi4gSnVuIDIwMDksIDE3OjM0OjM4KToKfiMhIHJuPVZlY3RvciBydD0xMjQ0NzM5NTE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI0NDczOTUxNwpJY2ggYmVrb21tZSBzb3dhcyBpbW1lciBtaXQgIkZyb2hlIFdlaWhuYWNodGVuISIKWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHBvc3RmYWNoIDopIChPcmt0b2V0ZXIsIDEyLiBKdW4gMjAwOSwgMTg6MDA6MDIpOgp+IyEgcm49VmVjdG9yIHJ0PTEyNDQ3Mzk1MTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjQ0NzM5NTE3CldhcnVtIHNjaHJlaWJzdCBkdSBkaXIgc29sY2hlIG1haWxzPyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJvY2h1bWVyIFN0YXRpIDE0LjYuIChIdW1uaSwgMTQuIEp1biAyMDA5LCAyMjo0NzoxNSk6Cn4jISBybj1IdW1uaSBydD0xMjQ0ODMzMzI5IHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEyNDQ4MzMzMjkKU3RhdGkgd2FyLgoKUm9jaHVhIHdhciBkYS4KClJvY2h1cyBoYXR0ZSBTY2hsdWNrYXVmLgoKIkplbWFuZCBtdXNzIG1hbCBSb2NodXMgZXJzY2hyZWNrZW4uIgoKIlJvY2h1cywgQ29jYSBDb2xhIG1hY2h0IHBsZWl0ZS4iCgoiUm9jaHVzLCBDb2NhIENvbGEgd2lsbCBqZXR6dCBkYXMgUGVwc2ktUmV6ZXB0IHZlcndlbmRlbi4iCgpPaywgaWNoIGdlYmUgenUsIGVzIGhhdCBuaWNodCBnZWhvbGZlbi4KClVuZCB3ZXIgZGFzIG5pY2h0IHZlcnN0ZWh0OiBFZ2FsLiBBbmRlcmUgdmVyc3RlaGVuIGRhcy4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJvY2h1bWVyIFN0YXRpIDE0LjYuIChBcmssIDE0LiBKdW4gMjAwOSwgMjM6MDQ6NDQpOgp+IyEgcm49SHVtbmkgcnQ9MTI0NTAxMjQzNSByZz1zY2htYXJybgp+IyEgdGlkPTEyNDQ4MzMzMjkKTnVuLCBhYmVyIHdlciB6dXIgSG9lbGxlIGlzdCBSb2NodWE/IFNlaW5lIEZyYXU/IDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEJvY2h1bWVyIFN0YXRpIDE0LjYuIChDcm9mdCwgMTQuIEp1biAyMDA5LCAyMzowNjoyMCk6Cn4jISBybj1BcmsgcnQ9MTI0NTAxMzQ4NCByZz1zY2htYXJybgp+IyEgdGlkPTEyNDQ4MzMzMjkKU2llaHQgZWhlciBuYWNoIE1pZXBpdGlzIGF1cy4gIEFwcm9wb3MsIHdpZSBnZWh0IGVzIElzaT8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCb2NodW1lciBTdGF0aSAxNC42LiAoR2xvaW5zb24sIDE1LiBKdW4gMjAwOSwgMTM6NTU6NDQpOgp+IyEgcm49Q3JvZnQgcnQ9MTI0NTAxMzU4MCByZz1zY2htYXJybgp+IyEgdGlkPTEyNDQ4MzMzMjkKUm9jaHVhIGlzdCB3aWVkZXIgZGE/ISA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEJvY2h1bWVyIFN0YXRpIDE0LjYuIChaZXNzdHJhLCAxNS4gSnVuIDIwMDksIDEzOjU5OjAxKToKfiMhIHJuPUdsb2luc29uIHJ0PTEyNDUwNjY5NDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjQ0ODMzMzI5ClNvIHd1ZXJkZSBpY2ggZGFzIG5pY2h0IGZvcm11bGllcmVuLiBBYmVyIGVyIGlzdCBvZWZ0ZXIgbWFsIGF1ZiBkZW0KRnJ1ZWhzdHVlY2tzLVN0YXRpIGluIEJvY2h1bS4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogcG9zdGZhY2ggOikgKFZlY3RvciwgMTUuIEp1biAyMDA5LCAyMDo0NDowNSk6Cn4jISBybj1ab29rIHJ0PTEyNDQ4MjA4Nzggcmc9c2NobWFycm4KfiMhIHRpZD0xMjQ0NzM5NTE3CmhhIQogICAzMDogKFZlY3RvckBtZy5tdWQuZGUsIDE1LiBKdW4pICBZb3VyIG1hbmhvb2QgaXMgaW1wb3J0YW50IHRvIGhlcgoKZW5kbGljaCBtYWwgd2FzIGludGVyZXNzYW50ZXMgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHBvc3RmYWNoIDopIChaZXNzdHJhLCAxNS4gSnVuIDIwMDksIDIwOjQ4OjU4KToKfiMhIHJuPVZlY3RvciBydD0xMjQ1MDkxNDQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI0NDczOTUxNwpJY2ggbW9lY2h0ZSBnYXIgbmljaHQgd2lzc2VuLCB3aWV2aWVsZSB4IE1CIHdpciBpbnp3aXNjaGVuIGFuIFNwYW0gaW4gZGVuClBvc3RmYWVjaGVybiB2b24gbGFuZyBpbmFrdGl2ZW4gU3BpZWxlcm4gcnVtZ2FtbWVsbiBoYWJlbiwgd2FzIHdpciBqZWRlbiBUYWcKYXVjaCBub2NoIG1pdCBpbnMgQmFja3VwIHBhY2tlbi4uLiA6LS8KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHBvc3RmYWNoIDopIChWZWN0b3IsIDE1LiBKdW4gMjAwOSwgMjA6NTA6MDYpOgp+IyEgcm49WmVzc3RyYSBydD0xMjQ1MDkxNzM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI0NDczOTUxNwp1bmQgYXVmICJpbmFrdGl2IiBrb21tc3QgZHUgbmFjaCBuZW0gcG9zdCB2b24gbWlyLgpwZnVpISA6KSAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHBvc3RmYWNoIDopIChaZXNzdHJhLCAxNS4gSnVuIDIwMDksIDIwOjUwOjQwKToKfiMhIHJuPVZlY3RvciBydD0xMjQ1MDkxODA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI0NDczOTUxNwpBbndlc2VuZGUgZG9jaCBlaCBpbW1lciBhdXNnZXNjaGxvc3Nlbi4gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBwb3N0ZmFjaCA6KSAoQXJrLCAxNS4gSnVuIDIwMDksIDIwOjU4OjIwKToKfiMhIHJuPVplc3N0cmEgcnQ9MTI0NTA5MTczOCByZz1zY2htYXJybgp+IyEgdGlkPTEyNDQ3Mzk1MTcKSWNoIGhhYiBtZWluZW0gdXJzcHJ1ZW5nbGljaGVuIFNwaWVsdHJpZWIgd2lkZXJzdGFuZGVuIHVuZCBrZWluZSAxMjMzNDUxMjQhClBvc3RzIGdlcG9zdGV0IC4uLiBhZWgsIHdoYXRldmVyLiBVbmQgd2FzIGdhYiBlcyBkYSBuaWNodCBhbGxlcyA6LSkKTWl0dGxlcndlaWxlIG11c3MgbWFuIHNvZ2FyIHNjaGF1ZW4sIG9iIG1hbiBuaWNodCB2ZXJzZWhlbnRsaWNoIG5vY2ggImdvb2QKbWFpbCIgbWl0IGRlciAiYmFkIG1haWwiIChzLiAiYmFkIGJhbmsiKSBtaXRsb2VzY2h0LgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHBvc3RmYWNoIDopIChHbm9tZSwgMTYuIEp1biAyMDA5LCAwOTozMDo0NSk6Cn4jISBybj1aZXNzdHJhIHJ0PTEyNDUwOTE3Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMjQ0NzM5NTE3CnNvbGx0ZSBkZXIgbWFpbHZlcmtlaHIgdm9uIGRyYXVzc2VuIG5hY2ggZHJpbm5lbiB1bmQgdW1nZWtlaHJ0IG5pY2h0CmVoIHZvbGxzdGFlbmRpZyBlaW5nZXN0ZWxsdCB3ZXJkZW4/IHN0aWNod29ydCBkYXRlbnNwZWljaGVydW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogcG9zdGZhY2ggOikgKEJhbWJ1bGtvLCAxNi4gSnVuIDIwMDksIDA5OjM4OjM2KToKfiMhIHJuPUdub21lIHJ0PTEyNDUxMzc0NDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMjQ0NzM5NTE3ClNlbHRzYW0sIGljaCBoYWJlIGhpZXIgaW4gTUcgbm9jaCBuaWUgKCEhKSBlaW5lIGVpbnppZ2UgU3BhbS1NYWlsIGJla29tbWVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBwb3N0ZmFjaCA6KSAoQ3JvZnQsIDE2LiBKdW4gMjAwOSwgMDk6Mzk6MTgpOgp+IyEgcm49QmFtYnVsa28gcnQ9MTI0NTEzNzkxNiByZz1zY2htYXJybgp+IyEgdGlkPTEyNDQ3Mzk1MTcKS3VyemVuIE1vbWVudCwgZGFzIGxhZXNzdCBzaWNoIGFlbmRlcm4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogcG9zdGZhY2ggOikgKEdub21lLCAxNi4gSnVuIDIwMDksIDA5OjQ0OjQzKToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEyNDUxMzc5MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjQ0NzM5NTE3CmRhbm4gaGFzdCBkdSB3YWhyc2NoZWlubGljaCBhdWNoIG5vY2ggbmllIGRlaW5lIG1nLW1haWwtYWRyZXNzZSBpcmdlbmR3bwphbmdlZ2ViZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBwb3N0ZmFjaCA6KSAoQXJrLCAxNi4gSnVuIDIwMDksIDExOjMwOjMzKToKfiMhIHJuPUdub21lIHJ0PTEyNDUxMzgyODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMjQ0NzM5NTE3Ck5hIGRhcyBoYWIgaWNoIGF1Y2ggbmljaHQsIHVuZCB0cm90emRlbSBkYXJmIGljaCBtaWNoIHVlYmVyIFBvdGVuenByb2JsZW1lCm5pY2h0IHd1bmRlcm4sIGRpZSBoYWIgaWNoIG5hZW1saWNoLCB3aWUgZWluIHN0dWVuZGxpY2hlciBCbGljayBpbnMgUG9zdGZhY2gKZGV1dGxpY2ggbWFjaHQgOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogcG9zdGZhY2ggOikgKFJ1bWF0YSwgMTYuIEp1biAyMDA5LCAxMTozMjo0Nyk6Cn4jISBybj1BcmsgcnQ9MTI0NTE0NDYzMyByZz1zY2htYXJybgp+IyEgdGlkPTEyNDQ3Mzk1MTcKSWNoIGZpbmRlIGVzIGltbWVyIG5vY2ggdWViZXJyYXNjaGVuLCBkYXNzICJuaWUgbWVociB6dSBmcnVlaCBrb21tZW4iIG5pY2h0IHp1CmVpbmVyIFJvbGV4d2VyYnVuZyBmdWVocnQuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IC4uLiAoQ3JvZnQsIDE2LiBKdW4gMjAwOSwgMTI6NDQ6NTYpOgp+IyEgcm49QXJrIHJ0PTEyNDUxNDg4NTkgcmc9d2l0emUKfiMhIHRpZD0xMjQ1MTQ4ODU5CkhtLiAgV2VkZXIgRW1haWwgbm9jaCBTTVMgdGF1Y2hlbiBhdWYuICBNdXNzIGVpbiBNZXRodXNhbGVtLVdpdHogc2Vpbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogLi4uIChCYW1idWxrbywgMTYuIEp1biAyMDA5LCAxMjo0NToyOSk6Cn4jISBybj1BcmsgcnQ9MTI0NTE0ODg1OSByZz13aXR6ZQp+IyEgdGlkPTEyNDUxNDg4NTkKSXJnZW5kd2llIHN0YW1tdCBkZXIgV2l0eiBub2NoIGF1cyBkZW0gbGV0enRlIEphaHJ0YXVzZW5kLiBTb2xsdGUgZGFzIG5pY2h0CmVoZXIgc28gaGVpc3NlbjoKCjEuIFR3aXR0ZXIKMi4gZW1haWwKMy4gVGVsbCBhIHdvbWFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IC4uLiAoQXJrLCAxNi4gSnVuIDIwMDksIDEyOjQ3OjI1KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEyNDUxNDkxMjkgcmc9c2NobWFycm4KfiMhIHRpZD0xMjQ1MTQ4ODU5CkRlciBXaXR6IGlzdCBhdWNoIG51ciBFbmdsaXNjaCBzbyBoYWxid2VncyB3aXR6aWcsIGZhbGxzIGRhcyBuaWNodCBkdXJjaGthbSwKRGlza3Vzc2lvbiB1ZWJlciBuZXVlIEtvbW11bmlrYXRpb25zcGxhdHRmb3JtZW4gZ2VoZW4gYW0gVGhlbWEgdm9yYmVpLgpFcmtsYWVydGVyIFdpdHosIGJyemdsZnQgOikKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAuLi4gKFJ1bWF0YSwgMTYuIEp1biAyMDA5LCAxMjo1NTo1Mik6Cn4jISBybj1BcmsgcnQ9MTI0NTE0OTI0NSByZz1zY2htYXJybgp+IyEgdGlkPTEyNDUxNDg4NTkKdHdpdHRlciBjb21lcyBmcm9tIHR3aXQuCnRyYW5zbGF0ZSB0aGlzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogcG9zdGZhY2ggOikgKEhlcm1pb2QsIDE3LiBKdW4gMjAwOSwgMTc6MjM6NTQpOgp+IyEgcm49R25vbWUgcnQ9MTI0NTEzNzQ0NSByZz1zY2htYXJybgp+IyEgdGlkPTEyNDQ3Mzk1MTcKRGFzIHdhciBkb2NoIHNjaG9uIG1hbCB0aGVtYS4uLiB3YW5uIGlzIGVzIGR1cmNoPyBvZGVyIGlzIGRhcyBudW4gbWVociBlaGVyCmVpbmUgZW1wZmVobHVuZz8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQnJhdWNoZSBpY2ggZWluICJFaW53ZWcgV2luZG93cyI/IChCYW1idWxrbywgIDIuIEp1bCAyMDA5LCAxMzowNTo1Mik6Cn4jISBybj1SdW1hdGEgcnQ9MTI0NjUzMTc4NSByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMjQ2NTMxNzg1CkR1IHdpbGxzdCBrZWluIFdpbmRvd3MgdmVyd2VuZGVuPyBCaXN0IGJlc3RpbW10IGVpbgpLaW5kZXJzY2hhZW5kZXItS2lsbGVyc3BpZWwtVGVycm9yaXN0LXVuZC1ub2NoLXdhcy1nYW56LXNjaGxpbW1lcyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hcmlvIENhcnQgZ29lcyBQYXJpcyAoQXJrLCAgMi4gSnVsIDIwMDksIDIxOjQ4OjM1KToKaHR0cDovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92PUZsSXdRNVdCMmVzCgpNYW4gYWNodGUgYXVjaCBhdWYgZGllIEdlcmFldXNjaGUgOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hcmlvIENhcnQgZ29lcyBQYXJpcyAoQW1hcnlsbGlzLCAgMi4gSnVsIDIwMDksIDIyOjQ0OjQxKToKfiMhIHJuPUFyayBydD0xMjQ2NTY0MTE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI0NjU2NDExNQpTZWhyIGdlaWwuIERhcyBpc3QgUmVtaSBHYWlsbGFyZCwgZWluIGJla2FubnRlciBLb21pa2VyLCBkZXIgYmVyZWl0cyBkdXJjaAphbmRlcmUgc29sY2hlciBBa3Rpb25lbiBiZWthbm50IHd1cmRlICh6LkIuIExpdmUtUGFjbWFuLCBTY2huZWNrZSB2b3IgZGVtIFN0YXUKZXRjLikuIENvb2wgYXVjaCwgd2llIGVyIGFtIFNjaGx1c3MgZGllIEJ1bGxlbiBhYmhhZW5ndCA7KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQnJhdWNoZSBpY2ggZWluICJFaW53ZWcgV2luZG93cyI/IChDcm9mdCwgIDIuIEp1bCAyMDA5LCAyMzozMjoxNik6Cn4jISBybj1LZXNzYSBydD0xMjQ2NTY3NjE2IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTEyNDY1MzE3ODUKPHZvaWNlPSJTYW50YSBNYXJpYSI+SmEsIGRhcyBpc3QgT3JrdG9ldGVyITwvdm9pY2U+CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTU0wtWnVnYW5nIHp1bSBNdWQgKFZhbmlvbiwgIDcuIEp1bCAyMDA5LCAyMDo0OToxMCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjQ2OTg3ODc0IHJnPXd3dwp+IyEgdGlkPTEyNDY5ODcyOTYKPHB3PiAtIHdpZSBlaW5mYWxsc2xvcz8gbWVpbnMgaXN0IHdlbmlnc3RlbnMgMTIzNDUuIAoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNTTC1adWdhbmcgenVtIE11ZCAoQW1hcnlsbGlzLCAgNy4gSnVsIDIwMDksIDIwOjU1OjQ4KToKfiMhIHJuPVZhbmlvbiBydD0xMjQ2OTkyNTUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI0Njk4NzI5NgpqZXR6dCBuaWNodCBtZWhyLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU1NMLVp1Z2FuZyB6dW0gTXVkIChWYW5pb24sICA3LiBKdWwgMjAwOSwgMjI6NTY6MDApOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEyNDY5OTI5NDggcmc9c2NobWFycm4KfiMhIHRpZD0xMjQ2OTg3Mjk2CkljaCBrb2VubnRlIGphIG51IG1pdCAic2VsYnN0bG9lc2NodW5nIiB0ZXN0ZW4sIG9iIGR1IGRhcyBwdyB3aXJrbGljaApnZWFlbmRlcnQgaGFzdCA6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFNTTC1adWdhbmcgenVtIE11ZCAoR2xvaW5zb24sICA4LiBKdWwgMjAwOSwgMDg6NDE6MjkpOgp+IyEgcm49VmFuaW9uIHJ0PTEyNDcwMDAxNjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMjQ2OTg3Mjk2CkVja2lnZSBLbGFtbWVybiBzaW5kIGltbWVyIGVpbiBQbGF0emhhbHRlciBmdWVyIGRpZSBQaGFudGFzaWUgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCZWRhcmYgZnVlciBLdWVobGJveD8gKFJ1bWF0YSwgMTQuIEp1bCAyMDA5LCAxNjo0OToxOCk6Cn4jISBybj1TaGFrZWRiZWVyIHJ0PTEyNDc1ODI4NTcgcmc9cGFydHkKfiMhIHRpZD0xMjQ3NTczNTYyCkJhdHRlcmllbiBmdWVyIGVpbmUgVGFzY2hlbmxhbXBlPyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmZsdyAoVmVjdG9yLCAxNy4gSnVsIDIwMDksIDE3OjQwOjI2KToKCltTZWhlcjpDdXR0ZXJdIDE4eCBpcyB6dSB0b3BwZW4gPEZyZSwgMTc6MzY6MDQ+CltTZWhlcjpYdXRlbGl1c10gb2ssIHdlbm4gd2lyIG51ciBzbyB3ZW5pZyB6ZWl0IGhhYmVuIG5laG0gaWNoIGRlbiBjaGFvdGVuLiA7KQpbU2VoZXI6WHV0ZWxpdXNdIDxGcmUsIDE3OjM2OjI0PgpbVG9kOkxhcnNdIEZ1cmllbmhvY2h3YWVjaHRlciBHYWxhbmhhcmkgaGF0IGdlcmFkZSBYdXRlbGl1cyB1bWdlYnJhY2h0LiA8RnJlLApbVG9kOkxhcnNdIDE3OjM4OjU3PgpbVG9kOkZ1cmllbmhvY2h3YWVjaHRlciBHYWxhbmhhcmldIFdlciBiaXN0IER1IHNjaG9uLCBzdG9lcmVuZCcgTGF1cywgbWVpbnN0CltUb2Q6RnVyaWVuaG9jaHdhZWNodGVyIEdhbGFuaGFyaV0gRHUsIER1IGthbm5zdCBoaWVyIHJlaW4gdW5kIHJhdXMgPyBCaXN0CltUb2Q6RnVyaWVuaG9jaHdhZWNodGVyIEdhbGFuaGFyaV0gd29obCB2ZXJydWVja3QsIHNvIGxhZXVmdCBkYXMgbmljaHQsIGRydW0KW1RvZDpGdXJpZW5ob2Nod2FlY2h0ZXIgR2FsYW5oYXJpXSBzY2hsYWcgaWNoIG51biBEZWluIGR1bW0nIEdlc2ljaHQuICA8RnJlLApbVG9kOkZ1cmllbmhvY2h3YWVjaHRlciBHYWxhbmhhcmldIDE3OjM4OjU3PgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRXJmYWhydW5nZW4gbWl0IExhbmdib2VnZW4/IChab29rLCAgNS4gQXVnIDIwMDksIDE1OjQwOjAzKToKfiMhIHJuPVZhbmlvbiBydD0xMjQ5NDEyODk1IHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTI0OTQwMDEzNgpNaWNoIHd1ZXJkZSBqYSBudW4gZGVyIEdydW5kIGZ1ZXIgZGVuIFdlY2hzZWwgdm9uICJnYW56IGd1dCIgenUgInJlY2h0Cmd1dCIgaW50ZXJlc3NpZXJlbi4uLiA7KSAKCloKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5pZWRlciBtaXQgRC53dWVzdGUuZHVyaWFuISAoTWlyYWthLCAgNi4gQXVnIDIwMDksIDE1OjU1OjEyKToKTmV1bGljaCBpbSBTdHJ1djoKV2FzIGlzdCBkZW5uIGRhcyBoaWVyPyBIYXVzdGllcmUgaW0gU3RydXY/IFNvIGdlaHQgZGFzIGFiZXIgbmljaHQsCkQud3Vlc3RlLmR1cmlhbiEgVmVyc2Nod2luZGUgbWl0IGRlbSBibG9lZGVuIFZpZWNoLCBhYmVyIHNjaG5lbGwhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVm9yYWhudW5nZW4gLi4uIChNaXJha2EsICA2LiBBdWcgMjAwOSwgMTY6MzQ6MDApOgpFYmVuIGVyc3QgYmVtZXJrdDoKRHUgaG9lcnN0IGVpbiBsZWlzZXMgRmx1ZXN0ZXJuIGluIGVpbmVyIGFsdGVuLCBib3NoYWZ0ZW4gU3ByYWNoZSwgZGFzIGF1cyBkZW0KcmFiZW5zY2h3YXJ6ZW4gUmluZyBpbiBEZWluZW4gS29wZiBkcmluZ3QuCltUb2Q6TGFyc10gRWluZSBzY2hyZWNrbGljaGUgS3JhbmtoZWl0IGhhdCBnZXJhZGUgSmFubmUgdW1nZWJyYWNodC4KCkJlaWxlaWQgLi4uIGljaCB3YXIgZXMgbmljaHQsIGljaCBzYWggZXMgbnVyIGtvbW1lbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVyZmFocnVuZ2VuIG1pdCBMYW5nYm9lZ2VuPyAoVmFuaW9uLCAgNy4gQXVnIDIwMDksIDE2OjM3OjM3KToKfiMhIHJuPVpvb2sgcnQ9MTI0OTQ3OTYwMyByZz1zY2htYXJybgp+IyEgdGlkPTEyNDk0MDAxMzYKSWNoIGdsYXViZSwgaWNoIGhhdHRlIGRlbiBnYW56ZW4gU2F0eiB1bWdlc3RlbGx0LiBHYW56IGd1dCBrbGFuZyBtaXIgbmFjaApMZWNrLW1pY2gtYW0tQXJzY2gsIHdhZXJlbmQgbWlyIHJlY2h0IGd1dCBlaGVyIG9wdGltaXN0aXNjaCB2b3JrYW0uIFdhcyBhdWNoCmVoZXIgc3RpbW10LgoKR2VzdGVybiBoYWJlbiB3aXIgdmVyc3VjaHQsIG9iIFBmZWlsZSBtaXQgU3RhbmRhcmRzcGl0emUgZHVyY2ggZWluZW4KU2NodXBwZW5oYXJuaXNjaCBrb21tZW4uIERlciBCZXNjaHVzc3Rlc3QgYW0gd2F0dGllcnRlbiBCcmF0ZW4gc3RlaHQgYWJlciBub2NoCmF1cy4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBFcmZhaHJ1bmdlbiBtaXQgTGFuZ2JvZWdlbj8gKFplc3N0cmEsICA3LiBBdWcgMjAwOSwgMTY6Mzk6MzMpOgp+IyEgcm49VmFuaW9uIHJ0PTEyNDk2NTU4NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjQ5NDAwMTM2CldpZSBoYWJ0IGlociBkZW5uIGJlc3RpbW10LCB3ZXIgc2ljaCBkYSBoaW5zdGVsbGVuIG11c3N0ZT8gVmVybGllcmVyIGRlcwpsZXR6dGVuIEJvZ2Vuc2NoaWVzc2Vucz8gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBFcmZhaHJ1bmdlbiBtaXQgTGFuZ2JvZWdlbj8gKFZhbmlvbiwgIDcuIEF1ZyAyMDA5LCAxNjo0NDozMSk6Cn4jISBybj1aZXNzdHJhIHJ0PTEyNDk2NTU5NzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMjQ5NDAwMTM2CkFsc28gZXMgd2FyIGVpbiBWZXJzdWNoLiBXaXIgd3Vzc3RlbiBuaWNodCBvYiBlciBkdXJjaCBnZWh0LCBhdWNoIHdlbm4gd2lyCmtlaW5lIHBhbnplcmJyZWNoZW5kZSBTcGl0emUgZ2Vub21tZW4gaGFiZW4uIEluc29mZXJuIGhhYmVuIHdpciBkYXMgVGVpbCBhdWNoCnVlYmVyIGVpbmVuIEhvbHp6aWVsc2NoZWliZSBnZWhhZW5ndCB1bmQgbmljaHQgdW5zZXJlbiBKYXJsIGFscyBaaWVsc2NoZWliZQpoaW5nZXN0ZWxsdCA6KSBBdXNzZXIgZWluIHBhYXIgYmxhdWUgRmxlY2tlbiB1bmQgZWluZW0gSGFsc2R1cmNoc2NodXNzCihGZWhsc2NodXNzIGJlaW0gRWluc2NoaWVzc2VuIG1pdCBlaW5lbSA2MCMtQm9nZW4pIGhhZXR0ZSBlcyBhYmVyIG5peCBnZWdlYmVuLgpEaWUgUGZlaWxlIHNpbmQgYWJnZXByYWxsdCB1bmQgaGFiZW4gbnVyIERlbGxlbiBoaW50ZXJsYXNzZW4uIERpZSBTY2h1cHBlbmZvcm0KaGF0IGRpZSBFbmVyZ2llIGFic29yYmllcnQuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRXJmYWhydW5nZW4gbWl0IExhbmdib2VnZW4/IChBbmF0b2wsIDEwLiBBdWcgMjAwOSwgMTU6MzE6MDEpOgp+IyEgcm49VmFuaW9uIHJ0PTEyNDk2NTYyNzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjQ5NDAwMTM2CkVzIGdlaHQgbmljaHRzIHVlYmVyIGd1dGUsIGFsdGUsIExvbmdzaGVua3NzY2hlIExhbmdib2VnZW4sIG9kZXIgd2FzLi4uIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogRXJmYWhydW5nZW4gbWl0IExhbmdib2VnZW4/IChab29rLCAxMy4gQXVnIDIwMDksIDE4OjQzOjMzKToKfiMhIG9uPU9ya3RvZXRlciBvdD0xMjUwMTc5NzQxIG9nPXN1Y2hlLWJpZXRlCn4jISBybj1WYW5pb24gcnQ9MTI0OTY1NjMxMyByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTEyNDk0MDAxMzYKV2VyIHNjaGllc3N0IHp1ZXJzdCBhdWYgZWluZW4gd2F0dGllcnRlbiBCcmF0ZW4/IDspCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogRXJmYWhydW5nZW4gbWl0IExhbmdib2VnZW4/IChab29rLCAxMy4gQXVnIDIwMDksIDE4OjQzOjUzKToKfiMhIHJuPVpvb2sgcnQ9MTI1MDE4MTgxMyByZz1zY2htYXJybgp+IyEgdGlkPTEyNDk0MDAxMzYKSWNoIGhhYiBkYSBqYSBub2NoIG5lIGdhbnogYW5kZXJlIElkZWUuLi4KClpvb2ssIGhldXRlIG1hbCBpbSBWZXJsZWdld2Fobi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBFcmZhaHJ1bmdlbiBtaXQgTGFuZ2JvZWdlbj8gKFZhbmlvbiwgMTguIEF1ZyAyMDA5LCAxMDoxNzowMik6Cn4jISBybj1ab29rIHJ0PTEyNTAxODE4MzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMjQ5NDAwMTM2CkljaCBtdXRtYXNzZSBtYWw6Ck9ya3Ryb2V0ZSwgaWNoIGdsYXViZSBab29rIG1vZWNodGUsIGRhc3MgaWNoIERpY2ggIG1hbCB6dSBlaW5lbSB1bnNlcmVyClRyZWZmZW4gZWlubGFkZS4gT2IgZHUgd2F0dGllcnQga29tbXN0IG9kZXIgbmljaHQsIGlzdCBEaXIgdWViZXJsYXNzZW4uCgpTY2hpZXNzZW4gbGVybmVuIC0gRnJldW5kZSBUcmVmZmVuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZhbGdlc3NhIGxlYnQgKENyb2Z0LCAyMC4gQXVnIDIwMDksIDExOjA0OjI1KToKfiMhIHJuPUVubm94IHJ0PTEyNTA3MzM1MDggcmc9ZC53dWVzdGUKfiMhIHRpZD0xMjUwNzMzNTA4CldhcyBzYWd0IGRlciBEZW5rbWFsc2NodXR6IGRhenU/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBWYWxnZXNzYSBsZWJ0IChWYW5pb24sIDIwLiBBdWcgMjAwOSwgMTE6MzY6MjcpOgp+IyEgcm49Q3JvZnQgcnQ9MTI1MDc1OTA2NSByZz1zY2htYXJybgp+IyEgdGlkPTEyNTA3MzM1MDgKRGVyIHdhciBzZWl0IDExODMgVGFnZW4gbmljaCBvbmxpbmUuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVmFsZ2Vzc2EgbGVidCAoQ3JvZnQsIDIwLiBBdWcgMjAwOSwgMTE6NTI6MzQpOgp+IyEgcm49VmFuaW9uIHJ0PTEyNTA3NjA5ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjUwNzMzNTA4CkhtLiAgSWNoIGhhYiBpaG4gdm9yZ2VzdGVybiBub2NoIGdlc2ljaHRldC4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS0EgU3RhdGkgMjAuMDguIChWYW5pb24sIDIwLiBBdWcgMjAwOSwgMTI6Mjg6MjUpOgp+IyEgcm49R2luZ2tvIHJ0PTEyNTA3NjM3OTkgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTI1MDc2Mzc5OQpJY2ggc2NoYWZmcyBkaWVzbWFsIHdvaGwgbmljaHQuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLQSBTdGF0aSAyMC4wOC4gKENyb2Z0LCAyMC4gQXVnIDIwMDksIDEyOjMwOjEzKToKfiMhIHJuPVZhbmlvbiBydD0xMjUwNzY0MTA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI1MDc2Mzc5OQpTY2hhZGUuICBJY2ggaGF0dGUgbWljaCBzbyBnZWZyZXV0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFdldHRlci1Kb3VybmFsIChWYW5pb24sIDIwLiBBdWcgMjAwOSwgMTQ6MTc6NTgpOgp+IyEgcm49UnVtYXRhIHJ0PTEyNTA3NzA2MTggcmc9d3d3Cn4jISB0aWQ9MTI1MDc2OTY4MQpTY2h1bW1sZXIsIENoZWF0ZXIsIFNrcmlwdG51dHplciEKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXbyBpc3QgbWVpbmUgZXdpZ2UgS29tcG8/IChWYW5pb24sIDMwLiBBdWcgMjAwOSwgMTU6NTU6MDMpOgp+IyEgcm49SHVtbmkgcnQ9MTI1MTYzMzAwMiByZz1naWxkZW4uY2hhb3MKfiMhIHRpZD0xMjUxMzMxODMyCkluIGVpbmVtIHRleHRiYXNpZXJ0ZW4gU3BpZWwgaXN0IGRvY2ggImxlcm50IGxlc2VuIiBlaW4gbHRwLCBvZGVyPwoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndlciBhbmRlcmVuIGVpbmUgZ3J1YmUgZ3JhZWJ0LC4uLi4gKFZlY3RvciwgIDQuIFNlcCAyMDA5LCAyMjoyODoyNik6CgpWb2xsZXIgTmFtZTogUmFpZGVycyBvZiB0aGUgbG9zdCBBcmsgKGluIGVpbmVtIFNwaW5uZW5uZXR6IGZlc3RoYWVuZ2VuZCkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVXJsYXViIChCYW1idWxrbywgIDcuIFNlcCAyMDA5LCAwOTo0MDo0OCk6Cn4jISBybj1ab29rIHJ0PTEyNTIzMDkxNDQgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTEyNTIzMDkxNDQKQnJhdWNodCBlaW4gR290dCBlaW4gTmV0eiB1bSBvbmxpbmUgenUgc2Vpbj8gRGEgd2VyZGVuIGphIHN0YXJrZSBad2VpZmVsCmdld2Vja3QuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVXJsYXViIChab29rLCAgNy4gU2VwIDIwMDksIDA5OjUxOjU3KToKfiMhIHJuPUJhbWJ1bGtvIHJ0PTEyNTIzMDkyNDggcmc9c2NobWFycm4KfiMhIHRpZD0xMjUyMzA5MTQ0CkljaCBiaW4gaW1tZXIgZGEuCk51ciBvaG5lIGRpZXNlcyBEaW5ncyBoaWVyLCBrb2VubnQgSWhyIG1pY2ggbmljaHQgZ3V0IHZlcnN0ZWhlbi4KU28gaGVydW0gaXN0IGRhcy4KWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKa29taXNjaC4uLiAoWm9vaywgMTAuIFNlcCAyMDA5LCAxNzo0OTozOSk6CltUZWFtIDY6VG9kXSBFSU4gV0VHSElFUiBIQVQgREFTIFRFQU0gVkVSTEFTU0VOLgpbVGVhbSA2Ol0gWm9vayBoYXQgZGllIFRlYW1sZWl0dW5nIHVlYmVybm9tbWVuLgpbVGVhbSA2Ol0gRGFzIFRlYW0gbG9lc3Qgc2ljaCBhdWYuCgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmd1c3Rpb2VzZXMgUmV6ZXB0IChSYWhhYiwgMTguIFNlcCAyMDA5LCAyMToxNjo1OSk6ClNvZWJlbiBiZWltIFF1ZXN0ZW46CiAgRGVyIFNjaGlua2VuIGdhbW1lbHQgdm9yIHNpY2ggaGluLgogIER1IGdpYnN0IFNlbGViZWxsZXRoIGRlbiBTY2hpbmtlbi4KICBTZWxlYmVsbGV0aCBsYWVjaGVsdCB2ZXJnbnVlZ3Q6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWb253ZWdlbiBLYXR6ZW4gc2NobGVpY2hlbiAoWHV0ZWxpdXMsICA0LiBPa3QgMjAwOSwgMjI6MTc6MzApOgpEZXJpbiBodWVwZnQgdW0gRGljaCBoZXJ1bS4KRHUgc3B1ZXJzdCwgd2llIGVpbiBaaXR0ZXJuIGR1cmNoIGRhcyBNb3JnZW5HcmF1ZW4gZ2VodC4gCjotKQpYdXQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTcG9pbGVyd2FybnVuZyAoTmliZWwsICA4LiBPa3QgMjAwOSwgMTQ6NDg6MDQpOgpbVG9kOkxhcnNdIERpZSB3aXJiZWxuZGVuIEZldWVyIGVpbmVzIFZ1bGthbmVzIGhhYmVuIGdlcmFkZSBTbWVhZ29sCltUb2Q6TGFyc10gdW1nZWJyYWNodC4gCiAgLSBOCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTcG9pbGVyd2FybnVuZyAoVmFuaW9uLCAgOC4gT2t0IDIwMDksIDIyOjE3OjMzKToKfiMhIHJuPU5pYmVsIHJ0PTEyNTUwMDYwODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMjU1MDA2MDg0CkRlciBpcyBhYmVyIGFsdCA6KQpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVpbiBlY2h0ZXIgWmF1YmVyc3RhYiAoQW5hdG9sLCAxNi4gT2t0IDIwMDksIDExOjI2OjA2KToKfiMhIHJuPU1lc2lyaWkgcnQ9MTI1NTU1MTE0MSByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xMjU1NTUxMTQxCk5ldHp3ZXJrLVplaXR1ZWJlcnNjaHJlaXR1bmcKKERlciBTZXJ2ZXIgdW50ZXIgd3d3LndhbmQtY29udHJvbC5jb20gYnJhdWNodCB6dSBsYW5nZSwgdW0gZWluZSBBbnR3b3J0IHp1CnNlbmRlbi4pCgo7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbiBlY2h0ZXIgWmF1YmVyc3RhYiAoR2xvaW5zb24sIDE2LiBPa3QgMjAwOSwgMTE6Mzk6MzUpOgp+IyEgcm49QW5hdG9sIHJ0PTEyNTU2ODUxNjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjU1NTUxMTQxClRoYXQncyBtYWdpYyEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFaW4gZWNodGVyIFphdWJlcnN0YWIgKFJ1bWF0YSwgMTYuIE9rdCAyMDA5LCAxMTo1Mzo0Mik6Cn4jISBybj1HbG9pbnNvbiBydD0xMjU1Njg1OTc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI1NTU1MTE0MQpOby4gSXQncyBpbnN1ZmZpY2llbnRseSBhZHZhbmNlZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVpbiBlY2h0ZXIgWmF1YmVyc3RhYiAoR2xvaW5zb24sIDE2LiBPa3QgMjAwOSwgMTI6MTc6NTMpOgp+IyEgcm49UnVtYXRhIHJ0PTEyNTU2ODY4MjIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjU1NTUxMTQxCkR1IHlvdSByZWFsbHkgY29tcHJlaGVuZCB3aHkgdGhlIHNpdGUgaXMgZG93bj8gTWlnaHQgYmUgbWFnaWMgYWZ0ZXIgYWxsIDpQCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBNYXVlciAuLi4gKENyb2Z0LCAyMy4gT2t0IDIwMDksIDIzOjQ4OjU4KToKfiMhIHJuPUdsb2luc29uIHJ0PTEyNTYzMzM2Mjkgcmc9d3d3Cn4jISB0aWQ9MTI1NjMzMzYyOQpEYSBzdGVja3QgYmVzdGltbXQgRGllIFBhcnRlaSBkYWhpbnRlci4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYW5pYmFsaXNtdXMuLi4gKFh1dGVsaXVzLCAyOC4gT2t0IDIwMDksIDIxOjQ2OjI2KToKRWluIEZyb3NjaCBrbnVzcGVydCBlaW5lbiBrb2VzdGxpY2hlbiBCcmF0ZnJvc2NoIGhpbnVudGVyLgpYdXQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGluIG1wYSAoWmVzc3RyYSwgIDcuIERleiAyMDA5LCAyMTowMDozNSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjYwMjE1OTM4IHJnPXd3dwp+IyEgdGlkPTEyNjAyMTU0NjcKYWxib2luPwoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogaW4gbXBhIChHbG9pbnNvbiwgIDcuIERleiAyMDA5LCAyMTowMjowNCk6Cn4jISBybj1aZXNzdHJhIHJ0PTEyNjAyMTYwMzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMjYwMjE1NDY3CklzdCBkZXIgZXR3YSBtaXQgQXJrYm9pbiBpZGVudGlzY2g/CgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGVpbWVsaWdlIEFkdmVudHN6ZWl0Li4uIChPcmt0b2V0ZXIsICA4LiBEZXogMjAwOSwgMTQ6MTQ6MDEpOgp+IyEgcm49WmVzc3RyYSBydD0xMjU5ODc4MzU1IHJnPWQuZWJlbmUKfiMhIHRpZD0xMjU5NjEwOTQ4ClVudGVyc3R1ZXR6dW5nIGR1cmNoIEFyaz8gRnJvaGVzIHN0ZXJiZW4hIDspCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSGVpbWVsaWdlIEFkdmVudHN6ZWl0Li4uIChaZXNzdHJhLCAgOC4gRGV6IDIwMDksIDE0OjIyOjAzKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjYwMjc4MDQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI1OTYxMDk0OApBcmsgaXN0IGRhIG51ciBmdWVyIGVpbmVuIGtsZWluZW4gVGVpbCBkZXMgU3RlcmJlbnMgdmVyYW50d29ydGxpY2gsIGdsYXViIGljaC4KOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDogTXVkLUxpc3RlIChab29rLCAxNy4gRGV6IDIwMDksIDEwOjU2OjE5KToKfiMhIG9uPVpvb2sgb3Q9MTI2MTA0Mzc2OSBvZz13d3cKfiMhIHJuPVplc3N0cmEgcnQ9MTI2MTA0MTE1OCByZz13d3cKfiMhIHRpZD0xMjU5MjUxMTAyCk9rLCB3ZXIgdWViZXJzZXR6dCB1bnMgaW5zIEVuZ2xpc2NoZT8KWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IE11ZC1MaXN0ZSAoVmFuaXIsIDE3LiBEZXogMjAwOSwgMTY6MzA6MDMpOgp+IyEgcm49Wm9vayBydD0xMjYxMDQzNzc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI1OTI1MTEwMgpLYW5uIG1hbiBkYSBuaWNodCBlaW5mYWNoIG5lbiBwbHVnaW4gYmFzdGVsbiwgZGVyIGRhcyBtdWQgZHVyY2ggYmFiZWxmaXNoIGphZ2QKLSBvZGVyIGV0d2FzIGFuZGVyZXMgaW4gZGVyIEFydCA/ClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogTXVkLUxpc3RlIChDcm9mdCwgMTcuIERleiAyMDA5LCAxNjozMzo0NSk6Cn4jISBybj1WYW5pciBydD0xMjYxMDYzODAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI1OTI1MTEwMgpVbmQgOTklIGFsbGVyIGVpbmdhYmVuIHdlcmRlbiBkYW5uIG1pdCBlaW5lbSBob3cgJ2Fzaz8nIHF1aXRpZXJ0PwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBNdWQtTGlzdGUgKFplc3N0cmEsIDE3LiBEZXogMjAwOSwgMTY6MzU6MjgpOgp+IyEgcm49VmFuaXIgcnQ9MTI2MTA2MzgwMyByZz1zY2htYXJybgp+IyEgdGlkPTEyNTkyNTExMDIKRGFzIGtvZW5udGUgYmVpIEFyaydzY2hlbiBSYWV1bWVuIGR1cmNoYXVzIGludGVyZXNzYW50IHdlcmRlbi4gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogTXVkLUxpc3RlIChWYW5pciwgMTcuIERleiAyMDA5LCAxNjozNTo0Nik6Cn4jISBybj1Dcm9mdCBydD0xMjYxMDY0MDI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI1OTI1MTEwMgpNYW4gbXVzcyBoYWx0IGtvbXByb21pc3NiZXJlaXQgc2VpbiAuLi4KVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCm5uIChBbWFyeWxsaXMsICAzLiBKYW4gMjAxMCwgMjA6MTY6NTkpOgpOaXggTmV1ZXMgYXVmIGRlciBXZWx0LgpWb24gWm9vazogbm4KQW4gWm9vazogZ2VhblUhIDspClpvb2sgdmVyd3VzY2hlbHQgRGVpbmUgSGFhcmUgYXVzIGRlciBGZXJuZS4KCipnKgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmFjaHd1Y2hzIChCYW1idWxrbywgMTQuIEphbiAyMDEwLCAwOTo1ODozNik6Cn4jISBybj1NaXJpbCBydD0xMjYzNDIzMjEwIHJnPWJhbGFuY2UuYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEyNjM0MjMyMTAKTmFjaHd1Y2hzIGltIE1HPyBEYXMgaXN0IGphIG5vY2ggdW53YWhyc2NoZWlubGljaGVyIGFscyBGcmF1ZW4gaW0gTUcuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEdMIDI1LTI3IChWYW5pb24sIDIxLiBKYW4gMjAxMCwgMjE6MjA6MTkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTI2NDEwNDMwOSByZz1naWxkZW4ua2FlbXBmZXIKfiMhIHRpZD0xMjYzNDk3MDc4Cj4gZ2F3ay9zZWQKCk5hbmEsIG1hIG5pY2ggYmVsZWlkaWdlbmQgd2VyZGVuIQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEdMIDI1LTI3IChHbG9pbnNvbiwgMjEuIEphbiAyMDEwLCAyMToyNTowMCk6Cn4jISBybj1WYW5pb24gcnQ9MTI2NDEwNTIxOSByZz1zY2htYXJybgp+IyEgdGlkPTEyNjM0OTcwNzgKU29ycnksIGljaCBoYWIgbWljaCB2b24gc2VkIHp1IGdhd2sgZ2VoYW5nZWx0IHVuZCBoYWIgcGVybCBkYW5uIG5pZSBnZWJyYXVjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNYW1wZnN0YW1tdGlzY2hlIDEzLiBGZWJydWFyIHVuZCAxNC4gTWFlcnogaW4gQmVybGluIChHbG9pbnNvbiwgMjQuIEphbiAyMDEwLCAxOToyOToxNyk6Cn4jISBybj1Hd2VuIHJ0PTEyNjQyMzIzOTUgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTI2NDIwMTQ3NQpDb21lIGluIGFuZCBmaW5kIGhlcmF1cy4gT2RlciBzbyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBnbmEuLi4gKEdsb2luc29uLCAxMS4gRmViIDIwMTAsIDAxOjMzOjA0KToKfiMhIHJuPU5pY29sYWkgcnQ9MTI2NTg0ODE0MiByZz13aXR6ZQp+IyEgdGlkPTEyNjU4NDgxNDIKTGFzcyB6dSBlaW5lbSBGcmV1bmQgbmFjaCBOZXUtVWxtIGxpZWZlcm4uIE9kZXIgaGFiZW4gZGllIEJhZGVuc2VyIGRhIGtlaW5lCkZyZXVuZGU/IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRWxmZW4gLi4uIHNpZSB3aXNzZW4gbmljaHQsIHdhcyBzaWUgd29sbGVuLiAoV2ludGVyc3R1cm0sIDExLiBGZWIgMjAxMCwgMTQ6NTE6MjgpOgpEdSBrcmF0enQgZWluZW4gRWxmZW5wcmllc3Rlci4KRWluIEVsZmVucHJpZXN0ZXIgbmltbXQgZWluZSBQaGlvbGUgYXVzIGVpbmVtIEhhdWZlbiBLcmVtcGVsLgpEZXIgRWxmZW5wcmllc3RlciBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW4gRWxmZW5wcmllc3RlciBrb21tdCBhbi4KRWluIEVsZmVucHJpZXN0ZXIgbmltbXQgZWluZW4gRWxmZW51bWhhbmcgYXVzIGVpbmVyIExlaWNoZS4KRWluIEVsZmVucHJpZXN0ZXIgemllaHQgZWluZW4gRWxmZW51bWhhbmcgYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWxmZW4gLi4uIHNpZSB3aXNzZW4gbmljaHQsIHdhcyBzaWUgd29sbGVuLiAoQW50aGVhLCAxMS4gRmViIDIwMTAsIDE1OjA2OjM3KToKfiMhIHJuPVdpbnRlcnN0dXJtIHJ0PTEyNjU4OTYyODggcmc9c2NobWFycm4KfiMhIHRpZD0xMjY1ODk2Mjg4Cldlbm4gRHUgZGEgYXVjaCAzIFN0dW5kZW4gcnVtaWRsZXN0IDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCaWVyc2NodWV0dGxlcm11ZCAoQ3JvZnQsIDEzLiBGZWIgMjAxMCwgMDI6NTg6MDgpOgo+IC08IHVwCls8TWFzdGVSPjpDcm9mdF0gdXAKWzxNYXN0ZVI+OjxNYXN0ZVI+XSBEYXMgTVVEIGxhZXVmdCBqZXR6dCAzNSBNaW51dGVuIHVuZCA1MCBTZWt1bmRlbi4gRXMgc2luZApbPE1hc3RlUj46PE1hc3RlUj5dIG1vbWVudGFuIDIgU3BpZWxlciBlaW5nZWxvZ2d0OyBkYXMgTWF4aW11bSBsYWcgaGV1dGUgYmVpCls8TWFzdGVSPjo8TWFzdGVSPl0gMjIgdW5kIGRlciBSZWtvcmQgYmlzaGVyIGlzdCAxOTYuCj4gd2VyCltzXSBUb3Jsb2YgU3Rlcm5oYWdlbCBkZXIgRlJFSUJJRVJWZXJ0ZWlsZXIgLSBNZW5zY2gvQmllcnNjaHVldHRsZXIKW1NdIENyb2Z0IGdlbmFubnQgJ0VsIER1ZGVsaW5vJyAtIEVsZi9CaWVyc2NodWV0dGxlcgoKU293YXMgaGFiIGljaCBhdWNoIG5vY2ggbmllIGVybGVidC4uLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCaWVyc2NodWV0dGxlcm11ZCAoT3JrdG9ldGVyLCAxNi4gRmViIDIwMTAsIDIwOjUyOjM2KToKfiMhIHJuPUNyb2Z0IHJ0PTEyNjYwMjYyODggcmc9c2NobWFycm4KfiMhIHRpZD0xMjY2MDI2Mjg4ClNoYWt5cyBhYndlcnRlbiEgCgo7KQoKT3JrVC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClpvb2sgdmVybGVpaHQgQXJrIGVpbiBGbGVpc3NiaWVuY2hlbiAoWm9vaywgMTguIEZlYiAyMDEwLCAyMjowMjo0OCk6CmZ1ZXIgZWluZW4gYmVzb25kZXJzIHNjaG9lbiBnZXN0YWx0ZXRlbiBUZXh0LgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWm9vayB2ZXJsZWlodCBBcmsgZWluIEZsZWlzc2JpZW5jaGVuIChaZXNzdHJhLCAxOC4gRmViIDIwMTAsIDIyOjAzOjI3KToKfiMhIHJuPVpvb2sgcnQ9MTI2NjUyNjk2OCByZz1zY2htYXJybgp+IyEgdGlkPTEyNjY1MjY5NjgKOmdyYXR1bGllcnQgQXJrLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFpvb2sgdmVybGVpaHQgQXJrIGVpbiBGbGVpc3NiaWVuY2hlbiAoQXJrLCAxOC4gRmViIDIwMTAsIDIyOjE4OjQ1KToKfiMhIHJuPVpvb2sgcnQ9MTI2NjUyNjk2OCByZz1zY2htYXJybgp+IyEgdGlkPTEyNjY1MjY5NjgKOndpcmZ0IHNpY2ggZGVtdWV0aWcgaW4gZGVuIFN0YXViIHVuZCBnZWlzc2VsdCBzaWNoIGJsdXRpZyB2b3IgRGFua2JhcmtlaXQuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGltZW5zaW9uc2dyYXMgKEd3ZW4sIDIyLiBGZWIgMjAxMCwgMTk6NTI6NDgpOgpFaW4gZnVlcmNodGVybGljaGVzIEJlYmVuIGVyc2NodWV0dGVydCBkaWUgRGltZW5zaW9uZW4gaW4gaWhyZW4gR3J1bmRmZXN0ZW4uCkRhcyBSZWggYmVnaW5udCBzY2htYXR6ZW5kIHp1IGdyYXNlbi4KRGFzIGp1bmdlIFJlaGtpdHogZmFlbGx0IGJlaW5haGUgenUgQm9kZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogWmVpdGdlbmF1aWdrZWl0IChHbG9pbnNvbiwgMjMuIEZlYiAyMDEwLCAxNTozNjoyMik6Cn4jISBybj1HbG9pbnNvbiBydD0xMjY2OTM1NDA1IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTI2NjE4MjE0OApYWVogdGVpbHQgRGlyIG1pdDogRHUgdHJhdXN0IERpY2ggc2Nob24gYW4gVGl0YW53YWx6ZW4/ICpkdWNrKgpBQkMgdGVpbHQgRGlyIG1pdDogd2llIGxhbmdlIGJyYXVjaHN0IGR1IGZ1ZXIgbmUgdHdhbHplOi0pCgpLb21tdCBpaHIgbWFsIGluIG1laW4gSG9tZW11ZCB1bmQgYmVnZWduZXQgbWVpbmVyIEtpbGxlci1UV2FsemUgYXVzCi9kb2MvYmVpc3BpZWxlISBUcmF1dCBldWNoIGphYWFhYSBuaWNodCBoZXIhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogWmVpdGdlbmF1aWdrZWl0IChab29rLCAyMy4gRmViIDIwMTAsIDE1OjM3OjQzKToKfiMhIHJuPUdsb2luc29uIHJ0PTEyNjY5MzU3ODIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjY2MTgyMTQ4CkljaCB3dWVyZCBqYSBnZXJuIHdpc3Nlbiwgd2VyIEFCQyB3YXIuIEZ1ZXIgWFlaIGhhZXR0ZSBpY2ggamEgCm5lbiBUaXBwLiBab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogWmVpdGdlbmF1aWdrZWl0IChHbG9pbnNvbiwgMjMuIEZlYiAyMDEwLCAyMTo1MzozMyk6Cn4jISBybj1WZWN0b3IgcnQ9MTI2Njk1Nzc0OCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEyNjYxODIxNDgKU2NoZWlzcy1GUHM/IFdvIGlzdCBtZWluIEFsdHNwaWVsZXItQm9udXM/IDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVGFrdHVuZyBndXQgLSBUYWt0dW5nIHNjaGxlY2h0IChXaW50ZXJzdHVybSwgMjQuIEZlYiAyMDEwLCAwMDo0NToxNyk6ClRha3R1bmcgZ3V0Ogp0ayBtb25zdGVyCk9rLgpEdSBzY2hsYWVnc3QgYmxpdHpzY2huZWxsIG1pdCBhdXNnZWZhaHJlbmVuIEtyYWxsZW4gYXVmIGRhcyBUZW50YWtlbG1vbnN0ZXIKZWluLgogIER1IHNjaGxhZWdzdCBlaW4gVGVudGFrZWxtb25zdGVyIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCnRrCkRhenUgYmlzdCBEdSBub2NoIG5pY2h0IHdpZWRlciBiZXJlaXQuCnRrCkR1IHNjaGxhZWdzdCBibGl0enNjaG5lbGwgbWl0IGF1c2dlZmFocmVuZW4gS3JhbGxlbiBhdWYgZGFzIFRlbnRha2VsbW9uc3RlcgplaW4uCiAgRHUgemVyc2NobWV0dGVyc3QgZWluIFRlbnRha2VsbW9uc3RlciBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KCiAgRHUgZ3JlaWZzdCBkYXMgVGVudGFrZWxtb25zdGVyIG1pdCBzY2hhcmZlbiBLcmFsbGVuIGFuLgogIER1IHRyaWZmc3QgZWluIFRlbnRha2VsbW9uc3RlciBoYXJ0LgogIERhcyBUZW50YWtlbG1vbnN0ZXIgZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbiBUZW50YWtlbG4gYW4uCiAgRWluIFRlbnRha2VsbW9uc3RlciB0cmlmZnQgRGljaCBoYXJ0Lgp0awpEdSBzY2hsYWVnc3QgYmxpdHpzY2huZWxsIG1pdCBhdXNnZWZhaHJlbmVuIEtyYWxsZW4gYXVmIGRhcyBUZW50YWtlbG1vbnN0ZXIKZWluLgogIER1IHplcnNjaG1ldHRlcnN0IGVpbiBUZW50YWtlbG1vbnN0ZXIgaW4ga2xlaW5lIFN0dWVja2NoZW4uCi4uLi4uCkR1IHNjaGxhZWdzdCBibGl0enNjaG5lbGwgbWl0IGF1c2dlZmFocmVuZW4gS3JhbGxlbiBhdWYgZGFzIFRlbnRha2VsbW9uc3RlcgplaW4uCiAgRHUgemVyc2NobWV0dGVyc3QgZWluIFRlbnRha2VsbW9uc3RlciBpbiBrbGVpbmUgU3R1ZWNrY2hlbi4KRGFzIFRlbnRha2VsbW9uc3RlciBzdGlyYnQgbWl0IGVpbmVtIGxlaXNlbiBSYXNjaGVsbi4KRWluIFRlbnRha2VsbW9uc3RlciBrb21tdCBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUYWt0dW5nIGd1dCAtIFRha3R1bmcgc2NobGVjaHQgKEdsb2luc29uLCAyNC4gRmViIDIwMTAsIDAwOjQ2OjIyKToKfiMhIHJuPVdpbnRlcnN0dXJtIHJ0PTEyNjY5Njg3MTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjY2OTY4NzE3CkR1IGJyYXVjaHN0IGFiZXIgbGFuZ2UgZnVlciBlaW4gVE0gOykKClNDTlIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFRha3R1bmcgZ3V0IC0gVGFrdHVuZyBzY2hsZWNodCAoTmljb2xhaSwgMjQuIEZlYiAyMDEwLCAwMToxMTozMyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjY2OTY4NzgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI2Njk2ODcxNwpkaWUgdGl0YW53YWx6ZW4gd2FyZW4gamEgYXVjaCBhbGxlIHNjaG9uIHdlZyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOikgKE5pY29sYWksIDI2LiBGZWIgMjAxMCwgMDA6MDA6MjcpOgoKRHUgZnVyenQgaGVtbXVuZ3Nsb3MuCltBYmVudGV1ZXI6RW5ub3hdIGdyYXRzIDopCgood2VyIGRlbiB3aXR6IG5pY2h0IHZlcnN0ZWh0LCBkZXIgZ2FnZ3QgZGllIGVyc3RlIHplaWxlIHJhdXM6KSApCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogOikgKEdsb2luc29uLCAyNi4gRmViIDIwMTAsIDAwOjA2OjU3KToKfiMhIHJuPU5pY29sYWkgcnQ9MTI2NzEzODgyNyByZz1zY2htYXJybgp+IyEgdGlkPTEyNjcxMzg4MjcKR25hYWFhYWFhYWFhYWFhYSEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogOikgKFRvcmxvZiwgMjYuIEZlYiAyMDEwLCAxNToyMDowMik6Cn4jISBybj1OaWNvbGFpIHJ0PTEyNjcxMzg4Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjY3MTM4ODI3CldhcyBiZWRldXRldCBnYWdnZW4/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IDopIChIaWdobGFuZGVyLCAyNi4gRmViIDIwMTAsIDE3OjMxOjA1KToKfiMhIHJuPVRvcmxvZiBydD0xMjY3MTk0MDAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI2NzEzODgyNwpGdWVyIGRlbiBGYWxsLCBkYXNzIGRpZSBGcmFnZSBlcm5zdCBnZW1laW50IHdhciAtCnRvIGdhZyBoZWlzc3Qga25lYmVsbiwgaGllciBpbiBkZW0gU2lubmUgZ2VicmF1Y2h0LCBkYXNzIG11ZGNsaWVudHMKbm9ybWFsZXJ3ZWlzZSBaZWlsZW4sIGRpZSBlaW5lbSBiZXN0aW1tdGVuIE11c3RlciBlbnRzcHJlY2hlbiwKYXVjaCBhdXNibGVuZGVuIGtvZW5uZW4uCgpIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IDopIChBbWFyeWxsaXMsIDI2LiBGZWIgMjAxMCwgMjE6NDE6MTkpOgp+IyEgcm49SGlnaGxhbmRlciBydD0xMjY3MjAxODY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI2NzEzODgyNwpXaWVzbyBzb2xsdGUgZGllIEZyYWdlIG5pY2h0IGVybnN0IGdlbWVpbnQgc2Vpbj8gTmljaHQgamVkZXIga2VubnQgTGludXgsIHVuZApuaWNodCBqZWRlciBiZW51dHp0IFRGLi4uCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiA6KSAoVG9ybG9mLCAyNy4gRmViIDIwMTAsIDE3OjU0OjEyKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMjY3MjE2ODc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI2NzEzODgyNwpKYSwgd2FyIHRhdHNhZWNobGljaCBlcm5zdCBnbWVpbnQsIGFsc28gZGFuayBpY2ggZnVlciBkaWUgSW5mbywgZnJhZyBtaWNoIGFiZXIKc2VsYnN0LCB3YXMgZGllc2VzIDopIGltIGxldHp0ZW4gQXJ0aWtlbCBzb2xsdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IDopIChIaWdobGFuZGVyLCAgMi4gTWFyIDIwMTAsIDEwOjM4OjM4KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMjY3MjE2ODc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI2NzEzODgyNwpNaXQgTGludXggb2RlciB0ZiBoYXQgZGFzIG5pY2h0IG5vZXRpZ2Vyd2Vpc2UgenUgdHVuLCBpY2ggZGFjaHRlCndlZGVyIGFuIGRhcyBlaW5lIG5vY2ggYW4gZGFzIGFuZGVyZSBkYWJlaS4KCkhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogOikgKEFtYXJ5bGxpcywgIDIuIE1hciAyMDEwLCAyMDo0ODozMSk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTEyNjc1MjI3MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMjY3MTM4ODI3CkphLCBhYmVyIGljaCBrZW5uZSBhdXNzZXIgVEYga2VpbmVuIChNdWR8VGVsbmV0KUNsaWVudCwgYmVpIGRlbSBlcyBlaW4KIkdhZyItS29tbWFuZG8gZ2lidC4KCkR1PwoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogOikgKENpcmRhbiwgIDIuIE1hciAyMDEwLCAyMTo0OTo0MSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTI2NzU1OTMxMSByZz1zY2htYXJybgp+IyEgdGlkPTEyNjcxMzg4MjcKSG1tLCBabXVkIHVuZCBDbXVkIGhhYmVuIGF1Y2ggZWluIEdhZy1Lb21tYW5kby4gR2FueiBzaWNoZXIuCgpDaXJkYW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFVybGF1YiAoQ3JvZnQsIDE2LiBNYXIgMjAxMCwgMDA6MzQ6NTcpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTI2ODY5MzA2MCByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTI2ODM2OTk4OApBcmtzaGF0IHRlaWx0IERpciBtaXQ6IERhcyBpc3QgamEgaG9jaCBpbnRlcmVzc2FudCEKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJc3Qgc2Nob24gSGVyYnN0PyAoWm9vaywgMzAuIE1hciAyMDEwLCAyMDozNTozOCk6CkRlciBCYXVtIHdpcmZ0IHNlaW5lIEJsYWV0dGVyIG51biBhYi4gRGllIGxldHp0ZW4gcmVpZmVuIEtpcnNjaGVuIGZhbGxlbgplYmVuZmFsbHMgdWViZXJyZWlmIHp1IEJvZGVuLgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgUnVtYXRhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IElzdCBzY2hvbiBIZXJic3Q/IChHbG9pbnNvbiwgMzEuIE1hciAyMDEwLCAxMDozNjo0Nik6Cn4jISBybj1ab29rIHJ0PTEyNjk5NzQxMzggcmc9c2NobWFycm4KfiMhIHRpZD0xMjY5OTc0MTM4ClNjaG5lbGwsIGJ1ZGRlbCBlaW5lIFJ1bS1LaXJzY2hlIGVpbiEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKE5pY29sYWksIDExLiBBcHIgMjAxMCwgMjI6MTE6NDgpOgpEZWluZSBGcmV1bmRpbiBEZXJpbiB0ZWlsdCBEaXIgbWl0OiBhbHNvLCBkYXMgd2FyIG51biByZWtvcmQuIG1pdCAyIGxwIHZvbiBkZXIKRGVpbmUgRnJldW5kaW4gRGVyaW4gdGVpbHQgRGlyIG1pdDogZHNrIGFiZ2VoYXVlbi4KCltUb2Q6TGFyc10gRWluZSBEcmFjaGVuc2NoaWxka3JvZXRlIGhhdCBnZXJhZGUgRGVyaW4gdW1nZWJyYWNodC4gPFNvbiwKW1RvZDpMYXJzXSAyMjoxMTowMD4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBBbmdyaWZmZSBwcm8gUnVuZGUgKEdsb2luc29uLCAxNC4gQXByIDIwMTAsIDEyOjMzOjI5KToKfiMhIHJuPU1pcmltYWRlbCBydD0xMjcxMjQwODE3IHJnPWdpbGRlbi50YW5qaWFuCn4jISB0aWQ9MTI3MDczNTM0OQpFcnN0YXVubGljaCwgd2llIHZpZWxlIGFuZGVyZSBTcGllbGVyIG5vY2ggZGVuIEZsYWVjaGVuc3BlbGwgImZsYW1lIiBrZW5uZW4KdW5kIGJlaGVycnNjaGVuIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IEFuZ3JpZmZlIHBybyBSdW5kZSAoU2hhcmlhLCAxNC4gQXByIDIwMTAsIDEyOjM0OjI0KToKfiMhIHJuPUdsb2luc29uIHJ0PTEyNzEyNDEyMDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMjcwNzM1MzQ5CiJmbGFtZSIgbWFjaHQgc29nYXIgbWVociBzY2hhZGVuIGFscyAiZG9ubmVyIiB3ZW5uIG1hbnMgcmljaHRpZyBhbndlbmRldCBmb2xndAphdWYgImZsYW1lIiBuYWVtbGljaCAiZG9ubmVyd2V0dGVyIiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBBbmdyaWZmZSBwcm8gUnVuZGUgKERlZXBibHVlLCAxNC4gQXByIDIwMTAsIDE2OjUwOjUwKToKfiMhIHJuPU1pbmkgcnQ9MTI3MTI1NjE5MSByZz1naWxkZW4udGFuamlhbgp+IyEgdGlkPTEyNzA3MzUzNDkKSmV0enQgaGV1bHQgbmljaHQgcnVtLiBXZW5uIENoYW90ZW4gc28gZ3V0ciBzaW5kLCBkYW5uIHdlY2hzZWx0IGRvY2ggZGllCkdpbGRlLgpJY2ggd3JkZSBFdWNoIGFiZXIgc3RhdHRkZXNzZW4gZGllIEthcmF0ZWdpbGRlIGVtcGZlaGxlbi4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogQW5ncmlmZmUgcHJvIFJ1bmRlIChHbG9pbnNvbiwgMTQuIEFwciAyMDEwLCAxNjo1OToxOCk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMjcxMjU2NjUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI3MDczNTM0OQpKZXR6dCBhYmVyIGtlaW4gTmVpZC4gV2VubiBkaXIgZGllIEthcmF0ZWthcyB6dSBpbmFrdGl2IHNpbmQsIHdlcmQgZG9jaApLbGVyaWtlciA6UAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBBbmdyaWZmZSBwcm8gUnVuZGUgKFpvb2ssIDE0LiBBcHIgMjAxMCwgMTY6NTk6NDkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTI3MTI1NzE1OCByZz1zY2htYXJybgp+IyEgdGlkPTEyNzA3MzUzNDkKQWxzbyBpY2ggYmluIGdlcm5lIEFiZW50ZXVyZXIuClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogQW5ncmlmZmUgcHJvIFJ1bmRlIChHbG9pbnNvbiwgMTQuIEFwciAyMDEwLCAxNzowNDo1OCk6Cn4jISBybj1TeW5jIHJ0PTEyNzEyNTcyOTUgcmc9Z2lsZGVuLnRhbmppYW4KfiMhIHRpZD0xMjcwNzM1MzQ5Cj4gamVkZSBnaWxkZSBoYXQgYmVpIDEwMCUgbmljaHQgbnVyIGVpbiBzY2hsZWNodGVzIGdlbGluZ2VuIC4uLgoKRGFzIG11c3MgaWNoIGpldHp0IGF1ZnMgaGVmdGlnc3RlIGRlbWVudGllcmVuLiBKZWRlciBXdXJmIGJlaSAid3VuZGVyIiBpc3QgZWluCkVyZm9sZyBmdWVyIGRlbiBIZXJybmthbmRyaSwgZGllIEZyYXVzYXBoaW5hIG9kZXIgZGFzIERpbmdzbGVtYm9sZCEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogQW5ncmlmZmUgcHJvIFJ1bmRlIChEZWVwYmx1ZSwgMTQuIEFwciAyMDEwLCAxNzowNjo0NCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjcxMjU3MTU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI3MDczNTM0OQpEaWUgS2FyYXRla2EgcGFzc2VuIGF1ZmdydW5kIGlocmVyIEluYWt0aXZpdGFldCB6dSBtaXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogQW5ncmlmZmUgcHJvIFJ1bmRlIChEYXJrbG9yLCAxNC4gQXByIDIwMTAsIDE5OjA0OjAxKToKfiMhIHJuPUdsb2luc29uIHJ0PTEyNzEyNTcxNTggcmc9c2NobWFycm4KfiMhIHRpZD0xMjcwNzM1MzQ5CldlcmRldCBLYXR6ZW5rcmllZ2VyIQoKRGFya2xvcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IEFuZ3JpZmZlIHBybyBSdW5kZSAoRGVlcGJsdWUsIDE0LiBBcHIgMjAxMCwgMjA6NDM6MDEpOgp+IyEgcm49RGFya2xvciBydD0xMjcxMjY0NjQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI3MDczNTM0OQpLcmllZ2VuIEthdHplbmtyaWVnZXIgS2F0emVua2luZGVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzA6IEFuZ3JpZmZlIHBybyBSdW5kZSAoRGFya2xvciwgMTQuIEFwciAyMDEwLCAyMDo1ODoyOSk6Cn4jISBybj1EZWVwYmx1ZSBydD0xMjcxMjcwNTgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI3MDczNTM0OQpPZmZlbnNpY2h0bGljaCBuaWNoLCBzb25zdCB3YWVycyBqYSBuaWNoIHNvIGxlZXIgOykKCkRhcmtsb3IKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkh1bW5pIChEZWVwYmx1ZSwgMTUuIEFwciAyMDEwLCAyMjozMDozNCk6Ckh1bW5pICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhIApEYXMgTW9yZ2VuR3JhdWVuIGVyeml0dGVydCB1bnRlciBlaW5lbSBsYW5nZ2V6b2dlbmVuLCB1bm1lbnNjaGxpY2hlbiBTY2hyZWkuIApEaWUgSHlkcmEgc3RpcmJ0IGluIGVpbmVtIE1lZXIgdm9uIEJsdXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2VydWVjaHRlIChWYW5pb24sIDE3LiBBcHIgMjAxMCwgMDA6MDc6MDgpOgp+IyEgcm49SHVtbmkgcnQ9MTI3MTQ1NTQ0MyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEyNzE0NTU0NDMKT2gsIGVpbiBEZW1lbnRpLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR2VydWVjaHRlIChHbG9pbnNvbiwgMTcuIEFwciAyMDEwLCAwMDowODoxMSk6Cn4jISBybj1WYW5pb24gcnQ9MTI3MTQ1NTYyOCByZz1zY2htYXJybgp+IyEgdGlkPTEyNzE0NTU0NDMKU3RlaHQgZGFzIGpldHp0IGF1ZiB0b2VuZXJuZW4gRnVlc3Nlbj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHZXJ1ZWNodGUgKFZhbmlvbiwgMTcuIEFwciAyMDEwLCAwMDowODoyOCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjcxNDU1NjkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI3MTQ1NTQ0MwpRdWFzaSBlaW4gR29sZW0uIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHZXJ1ZWNodGUgKEdsb2luc29uLCAxNy4gQXByIDIwMTAsIDAwOjEwOjAyKToKfiMhIHJuPVZhbmlvbiBydD0xMjcxNDU1NzA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI3MTQ1NTQ0MwpLb3R6dCBkZXIgc2VpbmVuIFNjaGVtIGF1Y2ggd2llZGVyIGF1cywgd2llIGluIGRlciBodWVic2NoZW4gU2ltcHNvbi1Gb2xnZT8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHZXJ1ZWNodGUgKEh1bW5pLCAxNy4gQXByIDIwMTAsIDAwOjEwOjI2KToKfiMhIHJuPVZhbmlvbiBydD0xMjcxNDU1NzA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI3MTQ1NTQ0MwpOZWluLCBpY2ggZGFjaHRlIG51ciwgZnVlciBCZWthbm50bWFjaHVuZ2VuIGlzdCBkYXMgRGVtZW50aWVyZW4gZWluZXMgUmVib290cwplaW4gd2VuaWcgYWxiZXJuLCBkYXJ1bSBoYWIgaWNoIGRhcyBoaWVyIHJlaW5nZXBhY2t0LiBEYXMgaXN0IGR1cmNoYXVzCmVybnN0Z2VtZWludCwgZXMgd2lyZCB3b2hsIGtlaW5lbiBSZWJvb3QgZ2ViZW4uCgpIdW1uaQpQUzogIkhpZXIiIGlzdCBFbnR3aWNrbHVuZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEdlcnVlY2h0ZSAoVmFuaW9uLCAxNy4gQXByIDIwMTAsIDAwOjExOjQxKToKfiMhIHJuPUh1bW5pIHJ0PTEyNzE0NTU4MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjcxNDU1NDQzCk1laW4gS2xlaW5lciBpcyBlaCBuaWNoIGF1c2dlcnVlc3RldC4gTG9obnQgc2ljaCB3b2hsIGF1Y2ggbmljaCBtZWhyLCB3bwpkZXJ6ZWl0IHNvIHZpZWxlIFJlYm9vdHMgZGVtZW50aWVydCB3ZXJkZW4uCgpWIChlZykgKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogR2VydWVjaHRlIChHbG9pbnNvbiwgMTcuIEFwciAyMDEwLCAwMDoxMzozNik6Cn4jISBybj1WYW5pb24gcnQ9MTI3MTQ1NTkwMSByZz1zY2htYXJybgp+IyEgdGlkPTEyNzE0NTU0NDMKTmEgZWluIEdsdWVjaywgZGFzcyBzaWNoIEdsb2luIGRpZXNlIFVwdGltZSBhdWNoIG5vY2gga2F1bSBnZXR1bW1lbHQgaGF0LCB3ZW5uCmRpZSBLdWVyemUgZGVyIFVwdGltZSBzbyBzdGFyayBkZW1lbnRpZXJ0IHdpcmQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOikgKFNlaWEsIDE4LiBBcHIgMjAxMCwgMTc6MzE6MTkpOgoKV2FsdGVyIGZhZWxsdCB0b3QgenUgQm9kZW4uCj51bnQgd2FsdGVyIApEaWVzZXMgRGV0YWlsIHdpcmQgZ2VyYWRlIHJlcGFyaWVydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiA6KSAoWm9vaywgMTkuIEFwciAyMDEwLCAxMTowMjowNSk6Cn4jISBybj1TZWlhIHJ0PTEyNzE2MDQ2Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMjcxNjA0Njc5CkRhcyBpc3QgYWJlciBhdWNoIGVpbiB1ZWJsZXMgR2VydWVjaHQuClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IDopIChBbnRoZWEsIDE5LiBBcHIgMjAxMCwgMTE6MDk6MTUpOgp+IyEgcm49Wm9vayBydD0xMjcxNjY3NzI1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI3MTYwNDY3OQpXaWVzbz8gVmVyd2VzdCBkZXIgc28gc2NobmVsbCBpbiBlaW4gc3RpbmtlbmRlcyBFdHdhcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoWHV0ZWxpdXMsIDE3LiBNYWkgMjAxMCwgMTU6MTc6NDUpOgpTbWVhZ29sIHRlaWx0IERpciBtaXQ6IG9rYWFheSBkYSBtdXNzIGljaCB3b2hsIG5vY2ggZXR3YXMgZm9yc2NoZW4KU21lYWdvbCBncmluc3QgRGljaCBhdXMgZGVyIEZlcm5lIGFuLgpTbWVhZ29sIHRlaWx0IERpciBtaXQ6IGVpbiB0YW5qaWFuID8KU21lYWdvbCB0ZWlsdCBEaXIgbWl0OiAqeml0dGVyKgpbVG9kOkxhcnNdIFhlbnRvcHJhbXN0cmEgaGF0IGdlcmFkZSBTbWVhZ29sIHVtZ2VicmFjaHQuCltUb2Q6WGVudG9wcmFtc3RyYV0gUmVpeiBtaWNoIG5pY2h0ISAKOi0pClh1dCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKFNtZWFnb2wsIDE3LiBNYWkgMjAxMCwgMTU6NTg6NDYpOgp+IyEgcm49WHV0ZWxpdXMgcnQ9MTI3NDEwMjI2NSByZz1zY2htYXJybgp+IyEgdGlkPTEyNzQxMDIyNjUKamFqYSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdvZXR0bGljaGUgRXJnZWJuaXNzZSAoWm9vaywgMjYuIE1haSAyMDEwLCAwODoxNjoxOSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMjc0ODMzNDMxIHJnPWdpbGRlbi5rbGVydXMKfiMhIHRpZD0xMjc0ODMzNDMxCldpZXdvd2FzIGhhYmUgaWNoIGVudHNjaGllZGVuPwpaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdvZXR0bGljaGUgRXJnZWJuaXNzZSAoWmVzc3RyYSwgMjYuIE1haSAyMDEwLCAwOTo0OTozNik6Cn4jISBybj1ab29rIHJ0PTEyNzQ4NTQ1Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMjc0ODMzNDMxCkR1IHdlaXNzdCBzY2hvbiwgZGllc2UgYW5kZXJeV2ZhbHNjaGVuIEdvZXR0ZXIuLi4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdvZXR0bGljaGUgRXJnZWJuaXNzZSAoWm9vaywgMjYuIE1haSAyMDEwLCAwOTo1NDozMik6Cn4jISBybj1aZXNzdHJhIHJ0PTEyNzQ4NjAxNzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjc0ODMzNDMxCkFjaCBkaWUuLi4KWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChTbWVhZ29sLCAgOS4gSnVuIDIwMTAsIDE2OjQzOjE0KToKQmx1dGdpZXIgdGVpbHQgRGlyIG1pdDogc2hhcmlhIGRhIGZ1ZXIgZW50Zmx1Y2hha3Rpb24/IDopIFsxNjozOV0KQmx1dGdpZXIgdGVpbHQgRGlyIG1pdDogYWNod2FzISBbMTY6MzldCkJsdXRnaWVyIHRlaWx0IERpciBtaXQ6IEJMT0VEU0lOTiEgOikgWzE2OjQwXQpCbHV0Z2llciB0ZWlsdCBEaXIgbWl0OiBuYSBkYW5uIGhhbHQgb2huZSA6KSBbMTY6NDBdCltUb2Q6TGFyc10gRGllIGVpc2lnZSBLYWVsdGUgZGVyIEdvYmxpbnMgaGF0IGdlcmFkZSBCbHV0Z2llciB1bWdlYnJhY2h0LgpbVG9kOkJsdXRnaWVyXSBJQ0ggS09NTUUgQUJFUiBXSUVERVIhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOaWNodCBsdXN0aWcgKEJhbWJpLCAxMC4gSnVuIDIwMTAsIDA5OjU0OjA4KToKTm9zdHJvbW8uLi4uLi4uai5zIFNoYWVlbmEuLi4uLi4uLkouUyBKaW1kaWdyaXouLi4uLi5qLm0gTWFyY3VzLi4uLi4uLi4uSi5tCkJhbWJ1bGtvLi4uLi4uLkkuTSBHbG9pbnNvbi4uLi4uLi5KLkggQmFtYmkuLi4uLi4uLi4uLi5SIEhpZ2hsYW5kZXIuLi4uLmouVwpIYXRlLi4uLi4uLi4uLi5KLkUKCkZ1ZXIgd2VuIG5vY2htYWwgc29sbHRlIGljaCB3ZWl0ZXJwcm9nZ2VuPwoKRnJhZ3Qgc2ljaCBCYW1iaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5pY2h0IGx1c3RpZyAoQmFtYnVsa28sIDEwLiBKdW4gMjAxMCwgMTA6MDU6MTMpOgp+IyEgcm49QmFtYmkgcnQ9MTI3NjE1NjQ0OCByZz1zY2htYXJybgp+IyEgdGlkPTEyNzYxNTY0NDgKSmFqYSwgZGVyIGRlbW9ncmFwaGlzY2hlIFdhbmRlbC4gV2lyIGJyYXVjaGVuIG1laHIgRWlud2FuZGVydW5nIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOaWNodCBsdXN0aWcgKEppbWRpZ3JpeiwgMTAuIEp1biAyMDEwLCAxMToxMDo0NSk6Cn4jISBybj1CYW1idWxrbyBydD0xMjc2MTU3MTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI3NjE1NjQ0OApXaWVzbz8gSWNoIHdhciBkb2NoIGRhLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOaWNodCBsdXN0aWcgKEFyaywgMTAuIEp1biAyMDEwLCAxMzozMzozNSk6Cn4jISBybj1CYW1idWxrbyBydD0xMjc2MTU3MTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI3NjE1NjQ0OApKYWphLCBhbGxlIGF1c3NlciBtaXIgc29sbHRlbiBGYWhycmFkIGZhaHJlbiwgZGFubiBzaWVodCBkYXMgbWl0IGRlbSBDTzIKQXVzc3Rvc3MgZG9jaCBndXQgYXVzLiBNYWNodCBoYWx0IFdlcmJ1bmcsIHNlaWQgc2VsYnN0IGRhLCBzcGllbHQgLi4uCk5pY2h0PyBOYSBkYW5uIC4uLiBzaWVoZSBBcnRpa2VsIDIgOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5pY2h0IGx1c3RpZyAoU2VpYSwgMTAuIEp1biAyMDEwLCAxOTowODowMik6Cn4jISBybj1CYW1iaSBydD0xMjc2MTU2NDQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI3NjE1NjQ0OAp3ZXIgaGF0IGRpciBkZW5uIGdlc2FndCBkYXNzIGR1IHdlaXRlcnByb2dnZW4gc29sbHN0PzopCmFiZXIgZXJuc3RoYWZ0OiB3aWUgdmllbGUgamFocmUgd2Fyc3QgZHUgZGVubiB3ZWcsIGRhc3MgZGljaCBzbwplaW5lIGt3ZXItbGlzdGUgbm9jaC9pbW1lciBub2NoIHNjaG9ja2llcnQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2NobGFuZC4gKEJhbWJ1bGtvLCAxNy4gSnVuIDIwMTAsIDExOjI2OjUyKToKfiMhIHJuPUdsb2luc29uIHJ0PTEyNzY3MTk3ODAgcmc9d3d3Cn4jISB0aWQ9MTI3NjcxOTc4MApMZW5hIGlzdCBhYmVyIGh1ZWJzY2ggZ2V3b3JkZW4uIEhhdCBkaWUgc2Nob24gZWluZSBPUCBnZW1hY2h0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSGVpbmVyZmVzdCBEYXJtc3RhZHQgKEFtYXJ5bGxpcywgMjcuIEp1biAyMDEwLCAyMDo0NDozOSk6Cn4jISBybj1DdXR0ZXIgcnQ9MTI3NzY2MzgxNCByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMjc3NjMwODE0CkFyayBoYXQgbmljaHQgbnVyIGRpZSBXTSB2ZXJwZWlsdCA7LSkKCnNjbnIsCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEhlaW5lcmZlc3QgRGFybXN0YWR0IChab29rLCAyOS4gSnVuIDIwMTAsIDIxOjA2OjE1KToKfiMhIHJuPUFyayBydD0xMjc3ODM1MjI5IHJnPXRyZWZmZW4KfiMhIHRpZD0xMjc3NjMwODE0CkdvbGZ0YXNjaGU/Clpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBdWNoIFVybGF1YiAoWmVzc3RyYSwgMjIuIEp1bCAyMDEwLCAyMDo0MzoyNyk6Cn4jISBybj1BcmsgcnQ9MTI3OTgyNDA5NSByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTI3OTc5Mjk0MApTYWd0ZSBpY2ggc2Nob24sIGRhc3MgaWNoIGZ1ZXIgZGVuIEZhbGwgZGVzIEZhbGxlcyBuZW4gbmV1ZW4gRHJpdmVyIGtvbXBpbGllcnQKdW5kIGluc3RhbGxpZXJ0IGhhYj8gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBdWNoIFVybGF1YiAoR2xvaW5zb24sIDIzLiBKdWwgMjAxMCwgMTI6MDM6MzQpOgp+IyEgcm49WmVzc3RyYSBydD0xMjc5ODI0MjA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI3OTc5Mjk0MApEYW5uIG11c3MgaWNoIGphIG51ciBub2NoIG1laW4gU3lzdGVtIGtvbXBsZXR0IGVpbnJpY2h0ZW4gdW5kIGVpbmVuIG5ldWVuCkRyaXZlciBhdWYgZGVuIEZUUC1TZXJ2ZXIgbGVnZW4gbGFzc2VuIC4uLiBkYW1pdCBzaWNoIGRhcyBmdWVyIGFsbGUgbG9obnQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZlc3RpdmFscyAuLi4gKFplc3N0cmEsIDIzLiBKdWwgMjAxMCwgMTI6NDE6MTgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTI3OTg4MTMxMSByZz13d3cKfiMhIHRpZD0xMjc5ODgxMzExClVlYmxlIEdlcnVlY2h0ZSEgV28gZGllIHdvaGwgaGVya29tbWVuLi4uPwoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSFlkcmFkcmFjaGUgKEdsb2luc29uLCAgMS4gQXVnIDIwMTAsIDIzOjI5OjMyKToKRGVpbiBGcmV1bmQgSHVtbmkgdGVpbHQgRGlyIG1pdDogdGVzdApEaWUgSHlkcmEgc2lua3QgbGFuZ3NhbSBpbiBkYXMgVGFsIGRlciBMdXBpbmVuIG5pZWRlci4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSFlkcmFkcmFjaGUgKEh1bW5pLCAgMS4gQXVnIDIwMTAsIDIzOjQzOjQ3KToKfiMhIHJuPUdsb2luc29uIHJ0PTEyODA2OTgxNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMjgwNjk4MTcyCkR1IGhhc3QgYWJlciBkYXMgIkh1bW5pIGlzdCBqZXR6dCBuaWNodCBtZWhyIGRhIiB2ZXJnZXNzZW4uIERhcyB3YXIgbmFlbWxpY2gKZGVyIFRlc3QuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIWWRyYWRyYWNoZSAoQ3JvZnQsICAxLiBBdWcgMjAxMCwgMjM6NDg6MTcpOgp+IyEgcm49SHVtbmkgcnQ9MTI4MDY5OTAyNyByZz1zY2htYXJybgp+IyEgdGlkPTEyODA2OTgxNzIKVW5kIGRhcyAiSHVtbmkgaXN0IGpldHp0IGRhIi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIWWRyYWRyYWNoZSAoR2xvaW5zb24sICAxLiBBdWcgMjAxMCwgMjM6NTk6MzgpOgp+IyEgcm49Q3JvZnQgcnQ9MTI4MDY5OTI5NyByZz1zY2htYXJybgp+IyEgdGlkPTEyODA2OTgxNzIKRGFzIGhhYmUgaWNoIG5pY2h0IGdlbGVzZW4sIG5pY2h0IHZlcmdlc3Nlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBIWWRyYWRyYWNoZSAoQ3JvZnQsICAyLiBBdWcgMjAxMCwgMDA6MDA6MDQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTI4MDY5OTk3OCByZz1zY2htYXJybgp+IyEgdGlkPTEyODA2OTgxNzIKU2VsZWt0aXZlIFdhaHJuZWhtdW5nLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoWHV0ZWxpdXMsIDMwLiBBdWcgMjAxMCwgMTA6MjQ6NDcpOgpbTWF0cml4OkR1XSBicmF1Y2h0IGlociBub2NoIHZlcnN0YWVya3VuZywgY3V0dGVyPwpbTWF0cml4OkN1dHRlcl0gZ2VybgpTb2hhIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KW1RvZDpMYXJzXSBFaW4gV2VnaGllciBoYXQgZ2VyYWRlIEN1dHRlciB1bWdlYnJhY2h0LgpbVG9kOkRlciBXZWdoaWVyXSBHb3RjaGEhIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoQXJrLCAzMC4gQXVnIDIwMTAsIDExOjM1OjUwKToKfiMhIHJuPVh1dGVsaXVzIHJ0PTEyODMxNTY2ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjgzMTU2Njg3CkFjaCBGTFcgbWVpbmUgLi4uIFRhbnRlLiBEYXMgd2FyIGtsYXJlciBQbGF5ZXJraWxsIHZvbiBTb2hhLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRkxXIChYdXRlbGl1cywgMzAuIEF1ZyAyMDEwLCAxNDowNDoxNSk6Cn4jISBybj1BcmsgcnQ9MTI4MzE2MDk1MCByZz1zY2htYXJybgp+IyEgdGlkPTEyODMxNTY2ODcKSGFjaCwgZGFiZWkgd29sbHRlIGRlciBkb2NoIG51ciBoZWxmZW4gLi4uIHNvd2FzIGFiZXIgYXVjaC4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBdXMgZGVtIEtvbnRleHQgZ2VyaXNzZW4uLi4gKENoYWdhbGwsIDMxLiBBdWcgMjAxMCwgMTQ6MjU6NTcpOgp1bmQgZmFsc2NoIHppdGllcnQ6CgpLUkFBQUFBQUFBQUFBQUFBQUFBQUFBQVdVTU1NTU1NTU1NTU1NTU1NTU1NTSEKSmVtYW5kIGhhdCBkZW4gV29scGVydGluZ2VyY2x1YiBpbiBkaWUgTHVmdCBnZXNwcmVuZ3QhCltHcmF0czpUb3Jsb2ZdIEdycm9vb3NzZXMgIExsbG9vYgoKU28gc2luZCBzaWUgaGFsdCwgZGllc2UgV29scGVydGluZ2VyaGFzc2VyLiA6KQoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFRPUCAxMCBkZXIgc2Nod2llcmlnc3RlbiBRdWVzdHMgKE9ya3RvZXRlciwgIDIuIFNlcCAyMDEwLCAyMDozODowNik6Cn4jISBybj1HYWJ5bG9uIHJ0PTEyODM0NTI0Mzcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xMjgyODU0MDc0Cm5laW4sIG5pY2h0IGxhdWZlbiwgYWJlciBnZWhlbi4uLiB1bmQgd2llLi4uIGRyYXVmIHNvZ2FyIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJhdHRlbiBkZXIgVW50ZXJ3ZWx0Li4uIChQaXRmYWxsLCAgMy4gU2VwIDIwMTAsIDA5OjAxOjIzKToKfiMhIHJuPVplc3N0cmEgcnQ9MTI4MzQ2NDQ1MSByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTEyODM0NjQ0NTEKUmF0dGVudGFrdGlrZW4gaW0gV2FuZGVsIGRlciBaZWl0IChyZWxvYWRlZCkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmF0dGVuIGRlciBVbnRlcndlbHQuLi4gKEdsb2luc29uLCAgMy4gU2VwIDIwMTAsIDEyOjEyOjI2KToKfiMhIHJuPVBpdGZhbGwgcnQ9MTI4MzQ5NzI4MyByZz1zY2htYXJybgp+IyEgdGlkPTEyODM0NjQ0NTEKVW5kIHNwYWV0ZXIgUmF0dGVudGFrdGlrZW4gUmV2b2x1dGlvbnM/IE9lcmtzLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmF0dGVuIGRlciBVbnRlcndlbHQuLi4gKE5pY29sYWksICAzLiBTZXAgMjAxMCwgMTc6MDM6NDApOgp+IyEgcm49UGl0ZmFsbCBydD0xMjgzNDk3MjgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI4MzQ2NDQ1MQpiZWkgcmF0dGVuIGJyYXVjaHQgbm9jaCB3ZXIgdGFrdGlrZW4/IG5qZXQuIGRpZSB0YWt0aWsgYnJhdWNodHMKbWl0dGxlcndlaWxlIGVoZXIsIGRhbWl0IG1hbiBkaWUgcmVzdGUgdm9tIHNraWxsIG5vY2ggaW4gbmVuCm51ZXR6bGljaGVuIGJvbnVzIHdhbmRlbG4ga2FubiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBcmF0aG9ybiwgIDguIE9rdCAyMDEwLCAyMToxMzoyMik6CltBbGxnZW1laW46Vm9sZGVtb3J0XSB3aWUga29tbSBpY2ggYXVzIGRlbSBFaXMKW0FsbGdlbWVpbjpSZWdvbm5hXSB3ZWxjaGVzIEVpcz8KW0FsbGdlbWVpbjpWb2xkZW1vcnRdIGtlaW5lIEFobnVuZyBiaW4gZWluZ2Vicm9jaGVuCltUb2Q6TGFyc10gRWluIHp1Z2Vmcm9yZW5lciBXZWloZXIgaGF0IGdlcmFkZSBWb2xkZW1vcnQgdW1nZWJyYWNodC4KW1RvZDpFaW4genVnZWZyb3JlbmVyIFdlaWhlcl0gSGV5LCBkYXMgRWlzIGlzdCBzY2h1bGQhIEVzIHdhciB3b2hsIGVpbmZhY2gKW1RvZDpFaW4genVnZWZyb3JlbmVyIFdlaWhlcl0gbmljaHQgc3RhYmlsIGdlbnVnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFpvb2sgKFpvb2ssIDE5LiBPa3QgMjAxMCwgMTc6MDA6MDgpOgp+IyEgb249Wm9vayBvdD0xMjg3NTAwNDAzIG9nPXByYW5nZXIKfiMhIHJuPVJ1bWF0YSBydD0xMjg3NDk4MDAzIHJnPXByYW5nZXIKfiMhIHRpZD0xMjg3NDk4MDAzCkRlbiBCdWVyZ2VuIHNvbGxzdCBEdSB3dWVyZ2VuIG9kZXIgc28uLi4/Clpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllIEVyem1hZ2llci4uLiAoWm9vaywgMTkuIE9rdCAyMDEwLCAxODoyMzo1OSk6Cn4jISBybj1aZXNzdHJhIHJ0PTEyODc1MDUwODcgcmc9cHJhbmdlcgp+IyEgdGlkPTEyODc1MDUwODcKTGFuZ3NhbSB3aXJzdGUgZWluIGJpc3NjaGVuIGFyZyBmcmVjaCwgWmVzc3RyYSEgOykgKmcqCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWUgRXJ6bWFnaWVyLi4uIChaZXNzdHJhLCAxOS4gT2t0IDIwMTAsIDE4OjI1OjEwKToKfiMhIHJuPVpvb2sgcnQ9MTI4NzUwNTQzOSByZz1zY2htYXJybgp+IyEgdGlkPTEyODc1MDUwODcKOmh1ZXBmdCB1bSBab29rIGhlcnVtLiA6LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERpZSBFcnptYWdpZXIuLi4gKEFtYXJ5bGxpcywgMTkuIE9rdCAyMDEwLCAyMDozNzozNyk6Cn4jISBybj1aZXNzdHJhIHJ0PTEyODc1MDU1MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMjg3NTA1MDg3Clplc3N0cmEgaGF0IHNpY2ggdmVyYnVnZ3QsIG5pY2h0IHZlcmJ1ZXJndC4uLiA7KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBFcnptYWdpZXIuLi4gKFZhbmlvbiwgMjMuIE9rdCAyMDEwLCAxNDoxNTo0OSk6Cn4jISBybj1aZXNzdHJhIHJ0PTEyODc1MDUwODcgcmc9cHJhbmdlcgp+IyEgdGlkPTEyODc1MDUwODcKSWhyIGhhYnQgUGFkcmVpYyAnbmUgTWFpbCBnZXNjaHJpZWJlbiwgZXIgc29sbCB3aWVkZXIgenVydWVjayBrb21tZW4/CgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWUgRXJ6bWFnaWVyLi4uIChPcmt0b2V0ZXIsIDI0LiBPa3QgMjAxMCwgMTM6Mzk6NTkpOgp+IyEgcm49VmFuaW9uIHJ0PTEyODc4MzYxNDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMjg3NTA1MDg3Ck5laW4sIHNpZSBoYWJlbiBPcmt0b2V0ZXIgZWluZSBNYWlsIGdlc2NocmllYmVuLCBlciBzb2xsIHdpZWRlciBha3RpdiBzcGllbGVuIQoKVXBzLi4uIDspCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGllIEVyem1hZ2llci4uLiAoQW5hdG9sLCAyOC4gT2t0IDIwMTAsIDEyOjMzOjU3KToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjg3OTIwMzk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI4NzUwNTA4NwpXbyBrYW5uIGljaCB3YXR0aWVydGUgQnJhdGVuIGJlc3RlbGxlbj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEaWUgRXJ6bWFnaWVyLi4uIChHbm9tZSwgMjguIE9rdCAyMDEwLCAxMzowNToxNyk6Cn4jISBybj1BbmF0b2wgcnQ9MTI4ODI2MjAzNyByZz1zY2htYXJybgp+IyEgdGlkPTEyODc1MDUwODcKaW0gendlaWZlbHNmYWxsIGltbWVyIGJlaSBvcmtkaW5nZW5zLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGllIEVyem1hZ2llci4uLiAoQmFtYmksIDI5LiBPa3QgMjAxMCwgMTc6NDU6MjIpOgp+IyEgcm49QW5hdG9sIHJ0PTEyODgyNjIwMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjg3NTA1MDg3Cldlbm4gRHUgZGFyYXVmIGJlc3RlaHN0LCBkYXNzIHdpciBzb3dhcyBoZXJzdGVsbGVuLCBiZXNvcmdlIGRpZSBadXRhdGVuIHVuZAprb21tdCB2b3JiZWkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIaWxmZSAoRWxiZXJldCwgIDguIE5vdiAyMDEwLCAyMToxMDoxNCk6CmFsc28gZGV1dGxpY2hlciBrYW5uIGRhcyBqYSBuaWNodCBzZWluOgoKVm9uIEZyZXVuZCBNdXBmZWw6IGdhbnogZWluZmFjaDogd2VyZCBlcnptYWdpZXIgOykKRHUgZnVlaGxzdCBEaWNoIGJlbm9tbWVuLgoKRWxiaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFM6IEluZm9zIFRWLVR1bmVyIChab29rLCAxNS4gTm92IDIwMTAsIDA4OjE0OjMzKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMjg5NzY5NzAyIHJnPXN1Y2hlLWJpZXRlCn4jISB0aWQ9MTI4OTc2OTcwMgpPaCwgd2llIHVlYmVycmFzY2hlbmQuIApLZWluZSBSb2VtZXJnbGFlc2VyPwpaCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgLi4uIGljaCB3YXJzIG5pY2h0ISAoQmx1dGdpZXIsIDE5LiBOb3YgMjAxMCwgMTQ6MTI6MTUpOgpEdSB0ZWlsc3QgRGVyaW4gbWl0OiBhYmVyIGRlciBpc3QgbmljaHQgb2huZQpEdSB0ZWlsc3QgRGVyaW4gbWl0OiBudXIgc28gYWxzIGhpbnQgOikKW1RvZDpMYXJzXSBFaW4gZ3Jvc3NlciBIZWlzc3dhc3NlcmVsZW1lbnRhciBoYXQgZ2VyYWRlIERlcmluIHVtZ2VicmFjaHQuCgpad2lzY2hlbiBaZWlsZSAxLTMgd2FyZW4gLi4uIGhtLCBuaWNodG1hbCAxMHM/IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgZGllIHguIChaZXNzdHJhLCAgMS4gRGV6IDIwMTAsIDE2OjE4OjA1KToKRHUgdGVpbHN0IEN1dHRlciBtaXQ6IE5hLCBkYW5uIGF1ZiBpbiBkaWUgTWV0emVsZWkgbWl0IGRlbSBWaWVjaC4uLiA7LSkKW1RvZDpMYXJzXSBUaGFyYW1vbiBoYXQgZ2VyYWRlIEN1dHRlciB1bWdlYnJhY2h0LgpbVG9kOlRoYXJhbW9uXSBEdSBoYXR0ZXN0IG5pZSBlaW5lIENoYW5jZSEKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgZGllIHguIChHbm9tZSwgIDEuIERleiAyMDEwLCAxODo1NzoxMik6Cn4jISBybj1aZXNzdHJhIHJ0PTEyOTEyMTY2ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMjkxMjE2Njg1CndpZXNvIEZMVz8gZHUgYmlzdCBkb2NoIG5pY2h0IGdlc3RvcmJlbi4uLj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRkxXIGRpZSB4LiAoWmVzc3RyYSwgIDEuIERleiAyMDEwLCAxOTowMDowOSk6Cn4jISBybj1Hbm9tZSBydD0xMjkxMjI2MjMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI5MTIxNjY4NQpHdXRlciBIaW53ZWlzLi4uIEZMUlc/CgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEdsb2luc29uLCAgNy4gRGV6IDIwMTAsIDIyOjQ5OjE0KToKRGVpbiBGcmV1bmQgU3JhYmkgdGVpbHQgRGlyIG1pdDogd293IGljaCBoYWJlIGdlcmFkZSBFc3RoZWtvdGggZ2VraWxsdApbVG9kOkxhcnNdIERpZSBzY2h3YXJ6ZSBMZXByYSBoYXQgZ2VyYWRlIFNyYWJpIHVtZ2VicmFjaHQuCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBHZXN1bmRoZWl0IQpbQmVpbGVpZDpDcm9mdF0gR2VzdW5kaGVpdAoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFZhbmlyLCAgOC4gRGV6IDIwMTAsIDE5OjQ3OjA5KToKW0JlaWxlaWQ6U2hhZWVuYV0gYWJlciBpbW1lcmhpbiwgZGFzIGZpbmRlIGljaApbVG9kOkxhcnNdIERhcyBSZXN1bHRhdCBlaW5lciBhdXNnZXNjaGxhZ2VuZW4gV2FybnVuZyBoYXQgZ2VyYWRlIFNoYWVlbmEKW1RvZDpMYXJzXSB1bWdlYnJhY2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChTaGFlZW5hLCAxMS4gRGV6IDIwMTAsIDAwOjM3OjQwKToKQ3V0dGVyIHRlaWx0IERpciBtaXQ6IG11c3MgbWFsIGt1cnogeGVudG8ga2lsbGVuLiBzbyBvZnQgc3RhcmIgZGVyIHdvaGwgbm9jaCAKQ3V0dGVyIHRlaWx0IERpciBtaXQ6IG5pZQpbVG9kOkxhcnNdIFhlbnRvcHJhbXN0cmEgaGF0IGdlcmFkZSBDdXR0ZXIgdW1nZWJyYWNodC4KW1RvZDpYZW50b3ByYW1zdHJhXSBSZWl6IG1pY2ggbmljaHQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFZhbmlyLCAxNC4gRGV6IDIwMTAsIDIwOjM4OjU4KToKW1RlYW0gODpHcmFicGZsZWdlcl0gaWNoIHNjaGF1IHdpZXZpZWxlIG5hdHRlcm4gbm9jaCBrb21tZW4gOikKW1RvZDpMYXJzXSBFaW5lIFNjaGF0dGVubmF0dGVyIGhhdCBnZXJhZGUgR3JhYnBmbGVnZXIgdW1nZWJyYWNodC4KW1RvZDpEaWUgU2NoYXR0ZW5uYXR0ZXJdIFNvdmllbCBmcmlzY2hlcyBCbHV0LiBVbmQgbnVyIGZ1ZXIgbWljaCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBoYW50b21hYndlaHIgKE1pcmFrYSwgMjIuIERleiAyMDEwLCAxMToyNjo1Nyk6CkRlciBGZW5yaXN3b2xmIGtudXJydCBEaWNoIGFuLgpEaWUgQW5nc3QgaXN0IHN0YWVya2VyIGFscyBEdSAuLi4gRHUgd2lsbHN0IG51ciBub2NoIHdlZyBoaWVyLgpFaW4gRmVucmlzd29sZiBpc3QgamV0enQgaGludGVyIERpciBoZXIuCkF1ZiBlaW5lciBMaWNodHVuZy4KRXMgZ2lidCBzZWNocyBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgc3VlZGVuLCBub3JkZW4sIHdlc3Rlbiwgbm9yZG9zdGVuCnVuZCBzdWVkb3N0ZW4uCkVpbiBCbGF0dC4KICBEdSB3ZWhyc3QgZGVuIEFuZ3JpZmYgbWl0IGVpbmVtIEd5YWt1LW1hd2FzaGktb3Rvc2hpLWtha2F0by11a2UgYWIuCkR1IGhhc3QgamV0enQgMjA0IExlYmVuc3B1bmt0ZSB1bmQgMTAwIEtvbnplbnRyYXRpb25zcHVua3RlLgpEdSBoYXN0IGVpbmUgbGVpY2h0ZSBWZXJnaWZ0dW5nLgogIEVpbiBGZW5yaXN3b2xmIHZlcmZlaGx0IERpY2guCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBoYW50b21hYndlaHIgKFplc3N0cmEsIDIyLiBEZXogMjAxMCwgMTE6Mjk6MzMpOgp+IyEgcm49TWlyYWthIHJ0PTEyOTMwMTM2MTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjkzMDEzNjE3ClRqYS4gV2FzIGhhdCBQYXJhY2Vsc3VzIGRlbm4gZGEgd2llZGVyIGdlbWFjaHQ/IDstKQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQaGFudG9tYWJ3ZWhyIChHbm9tZSwgMjIuIERleiAyMDEwLCAxMTozMDowNyk6Cn4jISBybj1aZXNzdHJhIHJ0PTEyOTMwMTM3NzMgcmc9c2NobWFycm4KfiMhIHRpZD0xMjkzMDEzNjE3CnJ0b2V0ZS4uLiB2b24gcm9jaHVzIGFiZ2VzY2hhdXQgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFBoYW50b21hYndlaHIgKFpvb2ssIDIzLiBEZXogMjAxMCwgMDk6MzU6MDUpOgp+IyEgcm49R25vbWUgcnQ9MTI5MzAxMzgwNyByZz1zY2htYXJybgp+IyEgdGlkPTEyOTMwMTM2MTcKKnN0b2VobioKWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBLQSBTdGF0aXMgMTMuMS4tMTcuMi4gKENyb2Z0LCAgNy4gSmFuIDIwMTEsIDA5OjQ1OjM3KToKfiMhIHJuPUd3ZW4gcnQ9MTI5NDM4OTg0NCByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMjk0Mzg5NjcwCkRlciBrb21tdCBkb2NoIGVoIG5pY2h0LCBlZ2FsIHdhcyBpY2ggdmVyc3VjaGUgOi0oCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS0EgU3RhdGlzIDEzLjEuLTE3LjIuIChHd2VuLCAgNy4gSmFuIDIwMTEsIDA5OjQ5OjUxKToKfiMhIHJuPUNyb2Z0IHJ0PTEyOTQzODk5Mzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjk0Mzg5NjcwCkRpZSBCZXJnZSBpbiBLYXJsc3J1aGUgc2luZCB3b2hsIGVpbmZhY2ggbmljaHQgbGFuZyBnZW51Zy4uLgpHd2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS0EgU3RhdGlzIDEzLjEuLTE3LjIuIChDcm9mdCwgIDcuIEphbiAyMDExLCAwOTo1MzoyNik6Cn4jISBybj1Hd2VuIHJ0PTEyOTQzOTAxOTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMjk0Mzg5NjcwCkltbWVyaGluIGhhYmVuIHdpciBtb21lbnRhbiBvcmRlbnRsaWNoIFdpbmQuICBVbmQgZGVyIFNjaG5lZSBpc3QgYXVjaCBzY2hvbgp3aWVkZXIga29tcGxldHQgd2VnLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVzIGdpYnQgaWhuIG5vY2ggLi4uIChNaXJha2EsICA3LiBKYW4gMjAxMSwgMTM6MjA6NTIpOgouLi5kZW4gQm9pbmcgUmVzZXQuCgpEZXIgT3JrIGZhZWxsdCB0b3QgenUgQm9kZW4uCkVpbiBPcmsga29tbXQgYW4uCkVpbiBPcmsgbmltbXQgZWluZW4gT3JraGVsbSBhdXMgZWluZXIgTGVpY2hlLgpFaW4gT3JrIHppZWh0IGVpbmVuIE9ya2hlbG0gYW4uCkVpbiBPcmsgbmltbXQgZWluZSBIb3NlIGF1cyBlaW5lciBMZWljaGUuCkVpbiBPcmsgemllaHQgZWluZSBIb3NlIGFuLgpFaW4gT3JrIG5pbW10IGVpbmVuIFNhZWJlbCBhdXMgZWluZXIgTGVpY2hlLgpFaW4gT3JrIHp1ZWNrdCBlaW5lbiBTYWViZWwuCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEtBIFN0YXRpcyAxMy4xLi0xNy4yLiAoVmFuaW9uLCAgNy4gSmFuIDIwMTEsIDEzOjU4OjEzKToKfiMhIHJuPUNyb2Z0IHJ0PTEyOTQzODk5Mzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMjk0Mzg5NjcwCkd1dCBlcmthbm50LiBFdXJlIEFuYmluZHVuZyBhbiBGcmllc2xhbmQgaXN0IGVpbmZhY2ggbmljaHQgZ3V0IGdlbnVnLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBMYXVuZHJ5IERheSAoQ3JvZnQsIDIxLiBKYW4gMjAxMSwgMTU6MTM6NTMpOgp+IyEgb249Q3JvZnQgb3Q9MTI5NTYxOTIxOCBvZz13d3cKfiMhIHJuPUFudGhlYSBydD0xMjk1NjE3NzM3IHJnPXd3dwp+IyEgdGlkPTEyOTU2MTc3MzcKRXJzdCBnYXIgbmljaHQgcmVpbmJla29tbWVuLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRlciBCcnVubyB3aWVkZXIgLi4uIChNYWhhcmV0LCAgOC4gRmViIDIwMTEsIDE2OjQ2OjE0KToKW0FiZW50ZXVlcjpJbm51ZW5kbyBhc3MgZGFzIGxldHp0ZSBNYWhsIGRlciBQcmllc3RlciBIZWxzLCB3aWUgYXVzIGFsdGVyIFplaXQKICAgICAgICAgICB1ZWJlcmxpZWZlcnQuIERpZSBFd2lnZW4gU2NoYXR0ZW4gc3RlaGVuIGlobSBudW4gb2ZmZW4uIApbQWJlbnRldWVyOlNoYXJpYV0gd2FzIGVzIGFsbGVzIGdpYnQgCltBYmVudGV1ZXI6TWFoYXJldF0gV2llPyBEdSBoYXN0IGlobSBkYXMgbGV0enRlIEVzc2VuIHdlZ2dlZnV0dGVydD8gVW5kIGRhZnVlcgpbQWJlbnRldWVyOk1haGFyZXRdIHdpcnN0ZSBhdWNoIG5vY2ggYmVsb2hudD8gVW5mYXNzYmFyLiAKW0FiZW50ZXVlcjpJbm51ZW5kb10gd2VubiBkdSB3dWVzc3Rlc3QsIHdpZSBla2xpZyBkYXMgYXVjaCBub2NoIHdhci4uLjotKApbQWJlbnRldWVyOlplc3N0cmEga2ljaGVydC4gCltBYmVudGV1ZXI6Q2hhZ2FsbF0gbmEga29tbSwgc28gZWtsaWcgaXNzZXMgbnVuIGF1Y2ggbmljaHQgCgpbQmllcnNjaHVldHRsZXI6QnJ1bm9dIE1FTlNBISAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBcnRpa2VsIEJpZXRlIFdva3BmYW5uZSAoQ2hhZ2FsbCwgMjguIEZlYiAyMDExLCAyMDozNDoyOCk6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTI5ODkyMTYxOSByZz1wYXJ0eS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTI5ODkyMTYxOQpEYXJmIGljaCBkaWNoIGpldHp0IGFucGZsYXVtZW4sIHdlaWwgRHUgaW4gZGUgZmFsc2NoZSBSdWJyaWsgZ2Vwb3N0ZXQgaGFzdD8KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFydGlrZWwgQmlldGUgV29rcGZhbm5lIChWZWN0b3IsIDI4LiBGZWIgMjAxMSwgMjA6MzU6MjcpOgp+IyEgcm49Q2hhZ2FsbCBydD0xMjk4OTIxNjY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI5ODkyMTYxOQp3YXMgZXNzZW4gZWlnZW50bGljaCBvZXN0ZXJyZWljaGlzY2hlIHRyb2xsZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFydGlrZWwgQmlldGUgV29rcGZhbm5lIChDaGFnYWxsLCAyOC4gRmViIDIwMTEsIDIwOjM1OjQ2KToKfiMhIHJuPVZlY3RvciBydD0xMjk4OTIxNzI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTI5ODkyMTYxOQpLYWlzZXJzY2htYXJybiB3YWhyc2NoZWlubGljaC4gCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQXJ0aWtlbCBCaWV0ZSBXb2twZmFubmUgKFZlY3RvciwgMjguIEZlYiAyMDExLCAyMDozNjoyMyk6Cn4jISBybj1DaGFnYWxsIHJ0PTEyOTg5MjE3NDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMjk4OTIxNjE5Cm9kZXIgd2F0dGllcnRlIHJvZW1lcmdsYWVzZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEFydGlrZWwgQmlldGUgV29rcGZhbm5lIChNYXJjdXMsICAyLiBNYXIgMjAxMSwgMTY6MDk6MTQpOgp+IyEgcm49VmVjdG9yIHJ0PTEyOTg5MjE3ODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMjk4OTIxNjE5CkdyaW1tYm9ybiBnaWJ0cyBzY2hvbiBub2NoLCB1bmQgZ2VyYWRlIGphbW1lcnRlIGVyIGRhcyBzZWluIFRlZSBhbGxlIGlzdC4KCkljaCB3ZXJkZSBhYmVyIG5pY2h0IGFscyBzZWluIFNwcmVjaGVyIGFnaWVyZW4gOykKCkNpYW8sIE1hcmN1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKLi4uIChHbG9pbiwgMTIuIE1hciAyMDExLCAxMjoyMToxOSk6CkhpcHBlIGtvbW10IGFuLgpEZXIgU2FuZHRpZ2VyIHNhZ3Q6IEhhbGxvLCBHbG9pbiEKRmluc3Rlcm5pcy4KRXMgaXN0IHp1IGR1bmtlbCEKRHUgYml0dGVzdCBMZW1ib2xkIHVtIEVybGV1Y2h0dW5nLiBEZWluIEZsZWhlbiB3aXJkIGVyaG9lcnQsIGVzIHdpcmQgd2llZGVyCmhlbGwuCklubnVlbmRvIHNhZ3Q6IGlpaGsKCkhyaHIgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZSBhcmUgb25seSB3b3JkcyBhbmQgc3BlbGxzIC4uLiAoQ3JhZ2dhbm1vcmUsIDE4LiBNYXIgMjAxMSwgMTA6NDQ6MzIpOgpEdSBpZGVudGlmaXppZXJzdCBOZW5haXMndS4KQmVpIGRlbSBTcHJ1Y2ggaGFuZGVsdGUgZXMgc2ljaCBhbmdlYmxpY2ggdW0gZWluZSBBcnQgQmFubmtyZWlzLCBpbiBkZW0KZGFubiBlaW4gS2FtcGYgYXVmIExlYmVuIHVuZCBUb2QgYXVzZ2V0cmFnZW4gd2lyZC4KCkNyYWdnYW5tb3JlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNToga3VyemUgcGxhbnVuZyAoWmVzc3RyYSwgIDYuIEFwciAyMDExLCAxOTo0Nzo0Nik6Cn4jISBybj1HbG9pbnNvbiBydD0xMzAyMTExMDAwIHJnPXBhcnR5LmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMzAyMDk3MTk0Ck5hY2ggMTAgQmllciBoYWV0dGUgaWNoIChnZ2YuIGFtIG5hZWNoc3RlbiBUYWcpIGdlbnVnIGFuZGVyZSBQcm9ibGVtZSwgYXVjaAp3ZW5uIGljaCBtZWluIEJldHQgZmFlbmRlIC0gaW5zb2Zlcm4gbW9lY2h0ZSBpY2ggZGFzIEV4cGVyaW1lbnQgdW5nZXJuIG1hY2hlbi4KOy0pIEFiZXIgZWluIHBhYXIgd2VuaWdlciBrb2VubmVuIHdpciBkYSBnZXJuZSB0cmlua2VuLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjoga3VyemUgcGxhbnVuZyAoTWFjbGksICA2LiBBcHIgMjAxMSwgMjI6NTE6NTMpOgp+IyEgcm49WmVzc3RyYSBydD0xMzAyMTEyMDY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMwMjA5NzE5NApBbHNvIGljaCBiaW4gRnJlaXRhZyBNaXR0YWcgaW4gRHJlc2RlbiB1bmQgaWNoIGhhYiBrZWluZSBSZWdlbCBkaWUgbWlyCmFsa29ob2xpc2NoZSBHZXRybmtlIHZvciAxNSBVaHIgdmVyYmlldHQuIEljaCBzdHJ6IHp1IExvbGxpcyBjaGVjayBlaW4gdW5kIHdyZQphYiBkYSB6dSBqZWRlciBTY2hhbmR0YXQgYmVyZWl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzoga3VyemUgcGxhbnVuZyAoQXJrLCAgNi4gQXByIDIwMTEsIDIzOjIwOjU0KToKfiMhIHJuPU1hY2xpIHJ0PTEzMDIxMjMxMTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMzAyMDk3MTk0CkRlciBBcnRpa2VsIG1hY2h0IERpY2ggZGVzIFZvcnRyaW5rZW5zIHNjaG9uIHZlcmRhZWNodGlnIDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IGt1cnplIHBsYW51bmcgKE1hY2xpLCAgNi4gQXByIDIwMTEsIDIzOjMyOjM1KToKfiMhIHJuPUFyayBydD0xMzAyMTI0ODU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMwMjA5NzE5NApLb2VubnRlIG1hbiBtZWluZW4gYWJlciBsZWlkZXIgaXN0IGRlciBBcnRpa2VsLVp1c3RhbmQgbnVyIGF1ZiBleHRyZW1lClVuYXVmbWVya3NhbWtlaXQgenVydWVja3p1ZnVlaHJlbi4gSW0gR2VnZW50ZWlsIGJpbiBpY2ggbmljaHQgc2VociBndXQgaW0KVHJhaW5pbmcuIFNhdWZlbiBqYSBhYmVyIGljaCB3ZXJkZSBtaWNoIGJlc3RpbW10IG1pdCBuaWVtYW5kZW4gYmVpbSBXZXR0c2F1ZmVuCm1lc3Nlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IGt1cnplIHBsYW51bmcgKEh1bW5pLCAgNi4gQXByIDIwMTEsIDIzOjM1OjI2KToKfiMhIHJuPU1hY2xpIHJ0PTEzMDIxMjU1NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMzAyMDk3MTk0CkltIFdldHR0aW5rZW4gYmluIGljaCB6dSBzY2hsZWNodC4gSWNoIHZlcmxpZXIgZGEgaW1tZXIuIEFiZXIgaWNoIGJpbiBqYSBuaWNodApkYSwgZGllc21hbC4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDoga3VyemUgcGxhbnVuZyAoWmVzc3RyYSwgIDYuIEFwciAyMDExLCAyMzo1ODowNyk6Cn4jISBybj1IdW1uaSBydD0xMzAyMTI1NzI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMwMjA5NzE5NApBbHNvLCBmYWxscyBEdSBuaWNodCB3aXJrbGljaCBXZXR0dGlua2VuIG1laW5zdCwgaGFzdCBEdSBkYXMgZG9jaCBlcnN0IGVpbm1hbApnZW1hY2h0IG9kZXI/IERhIGthbm4gaWNoIG51biBqYSBrZWluZSBzdGF0aXN0aXNjaGUgUmVsZXZhbnogZXJrZW5uZW4uIDstKQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IGt1cnplIHBsYW51bmcgKEh1bW5pLCAgNy4gQXByIDIwMTEsIDAwOjAzOjQ4KToKfiMhIHJuPVplc3N0cmEgcnQ9MTMwMjEyNzA4NyByZz1zY2htYXJybgp+IyEgdGlkPTEzMDIwOTcxOTQKV2V0dGlua2VuIGlzdCB1bmdsYXVibGljaCB0b2xsLiBNYW4gdGlua3QgdW0gZGllIFdldHRlLiBUaW5rZW4gaXN0IGVpbmUKVGFldGlna2VpdCwgZGllIHZvbiBUaW5rZXJuIGdlbWFjaHQgd2lyZC4gRGFzIGlzdCBlbmdsaXNjaCB1bmQgaGVpc3N0IFNjaG1pZWQuCkFsc28gaXN0IGRhcyBlaW4gV2V0dHNjaG1pZWRlbi4gVW5kIHp3YXIgUG9tbWVzLiBEYWhlciBhdWNoIGRlciBOYW1lClBvbW1lc3NjaG1pZWRlLiBadW0gV2V0dGlua2VuIGJyYXVjaHQgbWFuIGFsc28gRnJpdGV1c2VuLiBVbmQgZGFubiB3ZXJkZW4gZGEKUG9tbWVzIHJlaW5nZXRhbiwgdW5kIHdlciBkaWUgYWxzIGVyc3RlciByYXVzaG9sdCB1bmQgZGFubiBpc3N0LCBvYnNjaG9uIHNpZQpub2NoIG5pY2h0IHJpY2h0aWcgZHVyY2ggc2luZCB1bmQgZnV0dGVydCwgaGF0IGdld29ubmVuLiBEYXMgaXN0IGRhbm4gZGVyCk1laXN0ZXIgZGVyIFVua251c3ByaWdrZWl0IChNZFUpLiBEZXIgZ3JvZXNzdGUgTWVpc3RlciBkZXIgVW5rbnVzcHJpZ2tlaXQgd2FyCk1hZmZ0ZW5iZXJnLiBEYXJ1bSBrYW5uIG1hbiBkZW4gaW4gZGVyIEZlc3R1bmcgZGVyIERhZW1tZXJ1bmcgbnVuIHVtaGF1ZW4uCgpOYWphLiBOaWNodCBlcnN0IHNlaXQgaGV1dGUuIEFiZXIgbnVuIHdpc3N0IGlocnMuIFNvLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBrdXJ6ZSBwbGFudW5nIChHbG9pbnNvbiwgIDcuIEFwciAyMDExLCAwMDoyMjo1OCk6Cn4jISBybj1IdW1uaSBydD0xMzAyMTI3NDI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMwMjA5NzE5NApTbyBlaW4gQmxvZWRzaW5uLiBXZXR0aW5rZW4gaGF0IGphIG51ciB6d2VpIHQsIGFsc28gaXN0IGVzIFdldHQtSW5rZW4uCkJla2FubnRsaWNoZXJ3ZWlzZSBpc3QgZGFzICJzaWNoIHVtIGRpZSBXZXR0ZSB0YWV0b3dpZXJlbiBsYXNzZW4iLiBNaXQgb2RlcgpvaG5lIFBvbW1lcy4KClNlbGJzdCBXZXR0dGlua2VuIHdhZXJlIHdhcyBhbmRlcmVzIC0gZGFzIGhhdCBtaXQgVGlua2VyIEJlbGwgenUgdHVuLiBJY2gga2FubgpkYSBhbGxlcmRpbmdzIFp1c2FtbWVuaGFlbmdlIG1pdCBpcmdlbnN3ZWxjaGVuIE1kVSBuaWNodCBhdXNzY2hsaWVzc2VuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBrdXJ6ZSBwbGFudW5nIChBcmssICA3LiBBcHIgMjAxMSwgMDA6NDY6MzYpOgp+IyEgcm49SHVtbmkgcnQ9MTMwMjEyNzQyOCByZz1zY2htYXJybgp+IyEgdGlkPTEzMDIwOTcxOTQKWnVtIFdldHRpbmtlbiBicmF1Y2h0IG1hbiBhbHNvIEZyaXNldXNlbi4gVW5kIHdhcyBtYWNodCBtYW4gbWl0IGRlbmVuPwpLbnVzcGVybiwgcmljaHRpZy4gRGFzIHBvbW1lcnQgZGFubiBzbyByaWNodGlnLiBSaWNodGlnPyBSaWNodGlnIQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBcnRpbGxlcmllLVJlZ2VsbiAoSGlnaGxhbmRlciwgIDcuIEFwciAyMDExLCAxNzoyODoxMyk6Cn4jISBybj1IdW1uaSBydD0xMzAyMTg3ODc0IHJnPW1hZ2llci5lbnR3aWNrbHVuZwp+IyEgdGlkPTEzMDIxODc4NzQKTGFlbmdlcmUgSGFsYndlcnRzemVpdCBpc3QgYWJlciBuaWNodCBndXQsIG9kZXI/CgpIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXJ0aWxsZXJpZS1SZWdlbG4gKFplc3N0cmEsICA3LiBBcHIgMjAxMSwgMTc6MzM6MjMpOgp+IyEgcm49SGlnaGxhbmRlciBydD0xMzAyMTkwMDkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMwMjE4Nzg3NApLb21tdCBkcmF1ZiBhbi4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNVUQtUGFydHkgaW4gU2FsZW0gYW0gQm9kZW5zZWU6IFRlcm1pbmZpbmR1bmcgKFZhbmlvbiwgMTAuIEFwciAyMDExLCAxMzozMDo1OSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMzAyMzY3NDQyIHJnPXBhcnR5LmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMzAyMzY3NDQyCkFsc28gaW0gRmVybmZlbGQgd2lya3QgZWlnZW50bGljaCBkaWUgZ2FuemUgU3VlZGthbnRlIERldXRzY2hsYW5kcyB3aWUgQmF5ZXJuLgpXbyBnZW5hdSBkYW5uIHdlc3NlbiBaaXBmZWwgaGFlbmdlbiwgaXN0IHd1cnNjaHQuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1VRC1QYXJ0eSBpbiBTYWxlbSBhbSBCb2RlbnNlZTogVGVybWluZmluZHVuZyAoT3JrdG9ldGVyLCAxMC4gQXByIDIwMTEsIDIxOjM3OjE4KToKfiMhIHJuPUdsb2luc29uIHJ0PTEzMDIzNjc0NDIgcmc9cGFydHkuYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEzMDIzNjc0NDIKTWFuIGJyYXVjaHQgZWluIEZsdWd6ZXVnIHZvbSB2b20gUGFydHl6ZWx0cGxhdHogYmlzIHp1bSBCb2RlbihOYWRlKXNlZSB6dQprb21tZW4/IElzdCBkYXMgb3B0aW1hbCBmdWVyIGVpbmUgTXVkcGFydHk/IDspCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNVUQtUGFydHkgaW4gU2FsZW0gYW0gQm9kZW5zZWU6IFRlcm1pbmZpbmR1bmcgKFZhbmlvbiwgMTAuIEFwciAyMDExLCAyMTo0MjowNik6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTMwMjQ2NDIzOCByZz1zY2htYXJybgp+IyEgdGlkPTEzMDIzNjc0NDIKSWNoIGhhYmUgYW4gbWVocmVyZW4gTXVkcGFydHlzIHRlaWxnZW5vbW1lbiwgYmVpIGRlbmVuIGRlciBaZWx0cGxhdHogdW5kIGRlcgpCb2RlbnNlZSByZWNodCB3ZWl0IGF1c2VpbmFuZGVyIGxhZ2VuIHVuZCBoYWJlIGRhYmVpIGtlaW5lIGZ1ZXIgbWljaApncmF2aWVyZWRlbiBOYWNodGVpbGUgZXJsZWJ0LiBJbSBHZWdlbnRlaWwgZ2lsdCBmdWVyIG1pY2ggZmFzdCBzY2hvbiBkaWUKRmF1c3RyZWdlbDogSmUgd2VpdGVyIHdlZyB2b20gQm9kZW5zZWUsIGRlc3RvIGJlc3Nlci4gSWRlYWwgd2FlcmUgTm9yZHNlZS4gRGllCnJhZXVtbGljaGUgS29ycmVsYXRpb24gWmVsdHBsYXR6L1BhcnR5cGxhdHogc2NoZWludCBtaXIgYmVhY2h0ZW5zd2VydGVyLgoKViogKHNjaGF1dCBiZWltIFNjaHJlaWJlbiBtaXQgZWluZW0gQXVnZSBhdWYgZGVuIFJ1YnJpa25hbWVuLikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1VRC1QYXJ0eSBpbiBTYWxlbSBhbSBCb2RlbnNlZTogVGVybWluZmluZHVuZyAoTXVwZmVsLCAxMC4gQXByIDIwMTEsIDIxOjUwOjQ4KToKfiMhIHJuPVZhbmlvbiBydD0xMzAyNDY0NTI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMwMjM2NzQ0MgpJbSBCb2RlbnNlZSBrb2VubnRlIGRhcyBXYXNzZXIgKGluIFVmZXJuYWVoZSkgd2Flcm1lciBzZWluLgoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE1VRC1QYXJ0eSBpbiBTYWxlbSBhbSBCb2RlbnNlZTogVGVybWluZmluZHVuZyAoVmFuaW9uLCAxMC4gQXByIDIwMTEsIDIxOjU3OjUzKToKfiMhIHJuPU11cGZlbCBydD0xMzAyNDY1MDQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMwMjM2NzQ0MgpOdWV0enQgbWlyIG5peCwgd2VubiBpY2ggZGEgbmljaHQgaGluIGtvbW1lLiBGdWVyIGRpZSBFaW5yZWlzZSBuYWNoIEJheWVybgpicmF1Y2h0IG1hbiBqYSBkZW1uYWVjaHN0IHdpZWRlciBlaW5lbiBndWVsdGlnZW4gUmVpc2VwYXNzLiBVbmQgZGllCkhvY2hkZXV0c2NoLUxlZ2hhc3RlbmlrZXIoKikgbWFjaGVuJ3MgZGVuIEJheWVybiBpLmQuUi4gemVpdG5haCBuYWNoKCoqKS4KClYqCigqKSAgRGllIHdlcmJlbiBzb2dhciBkYW1pdC4KKCoqKSBNYW4gZGFyZiBiZWkganVlbmdzdGVyIHBvbGl0aXNjaGVyIEVudHdpY2tsdW5nIGhvZmZlbiwgZGFzcyBCYVd1ZQogICAgIGRlbW5hZWNoc3QgZXJrZW5udCwgZGFzcyBlcyBuaWNodCBqZWRlbiBCYXllcm4tTWlzdCBuYWNoYWVmZmVuIG11c3MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBNVUQtUGFydHkgaW4gU2FsZW0gYW0gQm9kZW5zZWU6IFRlcm1pbmZpbmR1bmcgKEFtYXJ5bGxpcywgMTAuIEFwciAyMDExLCAyMjowMDowOSk6Cn4jISBybj1WYW5pb24gcnQ9MTMwMjQ2NTQ3MyByZz1zY2htYXJybgp+IyEgdGlkPTEzMDIzNjc0NDIKRGFubiBsZXJuIHZvcmhlciBtYWwsIHdpZSBtYW4gTGVnYXN0aGVuaWtlciByaWNodGlnIHNjaHJlaWJ0LgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTVVELVBhcnR5IGluIFNhbGVtIGFtIEJvZGVuc2VlOiBUZXJtaW5maW5kdW5nIChWYW5pb24sIDEwLiBBcHIgMjAxMSwgMjI6MDQ6MjkpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEzMDI0NjU2MDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMzAyMzY3NDQyCklzdCBlaW4gQXJndW1lbnQsIGRhc3MgaWNoIGdlbHRlbiBsYXNzZW4gbXVzcy4gCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTVVELVBhcnR5IGluIFNhbGVtIGFtIEJvZGVuc2VlOiBUZXJtaW5maW5kdW5nIChBbWFyeWxsaXMsIDEwLiBBcHIgMjAxMSwgMjI6MDU6MTApOgp+IyEgcm49VmFuaW9uIHJ0PTEzMDI0NjU4Njkgcmc9c2NobWFycm4KfiMhIHRpZD0xMzAyMzY3NDQyCmRhc3MgLT4gZGFzCgo7KSkKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTVVELVBhcnR5IGluIFNhbGVtIGFtIEJvZGVuc2VlOiBUZXJtaW5maW5kdW5nIChWYW5pb24sIDEwLiBBcHIgMjAxMSwgMjI6MDU6NDcpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEzMDI0NjU5MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMzAyMzY3NDQyCkR1IHNjaG5hcHBzdCBEaXIgZWNodCBqZWRlbiBLbm9jaGVuLCBkZW4gbWFuIERpciBoaW53aXJmdCwgb2Rlcj8KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBNVUQtUGFydHkgaW4gU2FsZW0gYW0gQm9kZW5zZWU6IFRlcm1pbmZpbmR1bmcgKEFtYXJ5bGxpcywgMTAuIEFwciAyMDExLCAyMjowNzowNik6Cn4jISBybj1WYW5pb24gcnQ9MTMwMjQ2NTk0NyByZz1zY2htYXJybgp+IyEgdGlkPTEzMDIzNjc0NDIKfgpEYXMgaXN0IHNvIGVpbmUgQXJ0IFBhd2xvd3NjaGVyIFJlZmxleCBpbiBCZXp1ZyBhdWYgT3J0b2dyYXBoaWUgOykKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBNVUQtUGFydHkgaW4gU2FsZW0gYW0gQm9kZW5zZWU6IFRlcm1pbmZpbmR1bmcgKE11cGZlbCwgMTAuIEFwciAyMDExLCAyMjowNzo0Mik6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTMwMjQ2NjAyNiByZz1zY2htYXJybgp+IyEgdGlkPTEzMDIzNjc0NDIKTWFuY2htYWwgbXVzcyBtYW4gZGFzIE9ydG9ncmF2aWVoIGVpbmZhY2ggdW1oYXVlbiA7KQoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBNVUQtUGFydHkgaW4gU2FsZW0gYW0gQm9kZW5zZWU6IFRlcm1pbmZpbmR1bmcgKFJ1bWF0YSwgMTEuIEFwciAyMDExLCAxMDoxNToyNik6Cn4jISBybj1NdXBmZWwgcnQ9MTMwMjQ2NjA2MiByZz1zY2htYXJybgp+IyEgdGlkPTEzMDIzNjc0NDIKU293YXMgbmljaHQgaW4gbWVnc2NoYW1ycm4genUgcG9zdGVuLCBpc3QgZWluIGdyYXZpZWhyZW5kZXIgRmVobGVyIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IE1VRC1QYXJ0eSBpbiBTYWxlbSBhbSBCb2RlbnNlZTogVGVybWluZmluZHVuZyAoT3JrdG9ldGVyLCAxMS4gQXByIDIwMTEsIDE0OjA4OjE0KToKfiMhIHJuPVJ1bWF0YSBydD0xMzAyNTA5NzI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMwMjM2NzQ0MgpIdWVoLi5icnJycnJyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVXJsYXViOiAxNy40LiBiaXMgMjcuNC4gKE9ya3RvZXRlciwgMTIuIEFwciAyMDExLCAyMjoxNToxNSk6Cn4jISBybj1aZXNzdHJhIHJ0PTEzMDI1NTE5OTAgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTEzMDI1NTE5OTAKUG9zdGUgZG9jaCBtYWwuCgo7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBVcmxhdWI6IDE3LjQuIGJpcyAyNy40LiAoQ3JvZnQsIDEyLiBBcHIgMjAxMSwgMjM6MjU6MTgpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEzMDI2MzkzMTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMzAyNTUxOTkwCjAxNzcvNjczNzE2NDkKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYXMgWmVpdGFsdGVyIGRlcyBNZXRhbGxzIC4uLiAoQ3JhZ2dhbm1vcmUsIDE1LiBBcHIgMjAxMSwgMTY6NDA6NDcpOgpEaWUgVGl0YW53YWx6ZSBpc3QgZWluIEJlc2NodWV0emVyIGRlciBBcm1lbiB1bmQgU2Nod2FjaGVuLgoKQ3JhZ2dhbm1vcmUsIE1hc3RlciBEaXN0aWxsZXIgQmxvb2QgRWRpdGlvbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJhc2ViYWxsdGVhbXMgLi4uIChDcmFnZ2FubW9yZSwgMjkuIEFwciAyMDExLCAxODowNDoxMCk6CkRhcyBUZWFtIGlzdCBrZWluIGVjaHRlciBHZWduZXIgZnVlciBEaWNoLgpEZWluZSBSdWVzdHVuZyBpc3QgdW5nbGF1YmxpY2ggdmllbCBiZXNzZXIgYWxzIGRpZSBkZXMgVGVhbXMuCkRlaW5lIFdhZmZlIGlzdCBlaWdlbnRsaWNoIHp1IGd1dCBmdWVyIGRpZXNlbiBHZWduZXIuCkRhcyBUZWFtIGlzdCBlaW4gQmVzY2h1ZXR6ZXIgZGVyIEFybWVuIHVuZCBTY2h3YWNoZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQmFzZWJhbGx0ZWFtcyAuLi4gKFZhbmlyLCAyOS4gQXByIDIwMTEsIDIwOjM5OjMyKToKfiMhIHJuPUNyYWdnYW5tb3JlIHJ0PTEzMDQwOTMwNTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMzA0MDkzMDUwClNvIHN0IGRhcyBoYWx0LCB3ZW5uIGFsa29ob2xpc2NoZSBHZXRyYWVua2UgYXVmIFNwb3J0bWFubnNjaGFmdGVuIHRyZWZmZW4uIApWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBMb3JkcyBvZiB0aGUgKG1hbnkpIFJpbmdzIChHbG9pbnNvbiwgMTkuIE1haSAyMDExLCAxNDo0MzozNyk6Cn4jISBybj1BcmsgcnQ9MTMwNTgwNDcxNCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTMwNTgwNDQzOQpXYWFhYXM/IER1IHdpbGxzdCBCb2luZy1Cb25pIHZlcm5pY2h0ZW4/IEJMQVNQSEVNSUUhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTG9yZHMgb2YgdGhlIChtYW55KSBSaW5ncyAoQXJrLCAxOS4gTWFpIDIwMTEsIDE0OjUzOjQ3KToKfiMhIHJuPUdsb2luc29uIHJ0PTEzMDU4MDkwMTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzA1ODA0NDM5Ck5vZSwgcmVkdXppZXJlbiwga2xlaW5lciwgYWJlciBmZWluZXIgVW50ZXJzY2hpZWQgOy0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTG9yZHMgb2YgdGhlIChtYW55KSBSaW5ncyAoWm9vaywgMTkuIE1haSAyMDExLCAxNDo1NDoxMSk6Cn4jISBybj1BcmsgcnQ9MTMwNTgwOTYyNyByZz1zY2htYXJybgp+IyEgdGlkPTEzMDU4MDQ0MzkKQWVuZGVydCBlcyBldHdhcyBhbiBkZXIgQmxhc3BoZW1pZT8KWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTG9yZHMgb2YgdGhlIChtYW55KSBSaW5ncyAoQXJrLCAxOS4gTWFpIDIwMTEsIDE0OjU0OjM5KToKfiMhIHJuPVpvb2sgcnQ9MTMwNTgwOTY1MSByZz1zY2htYXJybgp+IyEgdGlkPTEzMDU4MDQ0MzkKSXQgZmVlbHMgYmV0dGVyIDopCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTG9yZHMgb2YgdGhlIChtYW55KSBSaW5ncyAoUnVtYXRhLCAxOS4gTWFpIDIwMTEsIDE0OjU4OjM4KToKfiMhIHJuPUFyayBydD0xMzA1ODA5Njc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMwNTgwNDQzOQpGcmFnZSBpc3QsIG9iIEJvaW5nIGF1Y2ggYmVzc2VyIGZ1ZWhsdD8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBMb3JkcyBvZiB0aGUgKG1hbnkpIFJpbmdzIChHbG9pbnNvbiwgMTkuIE1haSAyMDExLCAxNTowMDo1NCk6Cn4jISBybj1SdW1hdGEgcnQ9MTMwNTgwOTkxOCByZz1zY2htYXJybgp+IyEgdGlkPTEzMDU4MDQ0MzkKTm93IHdpdGggbGVzcyBibGFzcGhlbWluZyBwZXIgcmluZy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBMb3JkcyBvZiB0aGUgKG1hbnkpIFJpbmdzIChBcmssIDE5LiBNYWkgMjAxMSwgMTU6MTE6MTkpOgp+IyEgcm49UnVtYXRhIHJ0PTEzMDU4MDk5MTggcmc9c2NobWFycm4KfiMhIHRpZD0xMzA1ODA0NDM5CkhvZXJzdCBEdSBzZWluZW4gRWluc3BydWNoPyA6KQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IExvcmRzIG9mIHRoZSAobWFueSkgUmluZ3MgKEJvaW5nLCAyMi4gTWFpIDIwMTEsIDE3OjM0OjEwKToKfiMhIHJuPUFyayBydD0xMzA1ODEwNjc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMwNTgwNDQzOQpFaW5zcHJ1Y2ghCiAgQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IExvcmRzIG9mIHRoZSAobWFueSkgUmluZ3MgKEFyaywgMjMuIE1haSAyMDExLCAwMDo1NTowNyk6Cn4jISBybj1Cb2luZyBydD0xMzA2MDc4NDUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMwNTgwNDQzOQpOYSwgbWl0IDMgVGFnZW4gaW1tZXJoaW4gc2Nob24gbmUgV2VpbGUgLi4uIHZpZWxsZWljaHQgZGVtbmFlY2hzdCBtYWwgd2llZGVyLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IExvcmRzIG9mIHRoZSAobWFueSkgUmluZ3MgKENoYWdhbGwsIDIzLiBNYWkgMjAxMSwgMTQ6NDQ6MzYpOgp+IyEgcm49TWNkZWUgcnQ9MTMwNjE1MzczOCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTMwNTgwNDQzOQpFaW5mYWNoIHdpZWRlciBhc2toYXJhIHdhbmRlbGJhciBtYWNoZW4sIHNjaG9uIHdpbGwgZGVyIFRhbmppYW4ga2VpbmUgV2FmZmVuCm1laHIuCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTG9yZHMgb2YgdGhlIChtYW55KSBSaW5ncyAoR3dlbiwgMjMuIE1haSAyMDExLCAyMjozNzo1MCk6Cn4jISBybj1DaGFnYWxsIHJ0PTEzMDYxNTQ2NzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMzA1ODA0NDM5CkRpZXNlcyBBcmtzaGFyYSBhZWggQXJrc2hhdCBhZWggQWthc2hhIGFlaCAuLi4gaXN0IGRvY2ggZWggc28gd3VuZGVyYmFyCndhbmRlbGJhci4uLgpHd2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTG9yZHMgb2YgdGhlIChtYW55KSBSaW5ncyAoQnJvdG5hZWwsIDI0LiBNYWkgMjAxMSwgMTM6MTQ6MzEpOgp+IyEgcm49R3dlbiBydD0xMzA2MTgzMDcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMwNTgwNDQzOQpMYXNzdCBkZW4gYXJtZW4gYWx0ZW4gQXJrc2hhdCBkYSBhdXMgZGVtIFNwaWVsIQpCcm90IE86LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IExvcmRzIG9mIHRoZSAobWFueSkgUmluZ3MgKFpvb2ssIDI0LiBNYWkgMjAxMSwgMTM6NTE6MzApOgp+IyEgcm49QnJvdG5hZWwgcnQ9MTMwNjIzNTY3MSByZz1zY2htYXJybgp+IyEgdGlkPTEzMDU4MDQ0MzkKRGFzIGlzdCBqYSBob2NoIGludGVyZXNzYW50IQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IExvcmRzIG9mIHRoZSAobWFueSkgUmluZ3MgKEdsb2luc29uLCAyNC4gTWFpIDIwMTEsIDE1OjE3OjQyKToKfiMhIHJuPVpvb2sgcnQ9MTMwNjIzNzg5MCByZz1zY2htYXJybgp+IyEgdGlkPTEzMDU4MDQ0MzkKQXJrc2hhdCBzYWd0LCBkYXNzIGRpZSBTY2h3ZXJ0ZXIgd2lya2xpY2ggd2ljaHRpZyBmdWVyIGRlbiBLbGVydXMgc2VpZW4sIG9obmUKZGllc2Uga29lbm5lIG1hbiBuaWNodCBzZWluZSBFc3NlbnNyZXN0ZSBhdXMgZGVuIFphZWhuZW4gcG9wZWxuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdsb2JhbCBXYXJtaW5nIGRlcyBUaHJlYWRzLCBkZXNoYWxiIHNjaGxhZWd0IFNpZGUgU2hvdyBCb2IgenUgKFpvb2ssIDI5LiBNYWkgMjAxMSwgMjE6MTM6NTcpOgp+IyEgb249Wm9vayBvdD0xMzA2Njg5MTQ4IG9nPWRpc2t1c3Npb24KfiMhIHJuPUdub21lIHJ0PTEzMDY2ODg4NTkgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEzMDY2ODA0MTgKV2VsY2hlIE5QQ3MgZ2VuYXUgc2luZCBHbm9tZXMgTlBDcz8KClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJY2ggZnVlaGwgbWljaCBuaWNodCBlcm5zdCBnZW5vbW1lbi4gKEJhbWJpLCAgOC4gSnVuIDIwMTEsIDE0OjA0OjM3KToKRHUgc2Fnc3Q6IE9nZXJ3YWxkIHNvbGx0ZSB1cnNwcnVlbmdsaWNoIGF1Y2ggZWluIEFuZmFlbmdlcmdlYmlldCB3ZXJkZW4uIDooClh1dGVsaXVzIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpEdXJsb3RoIGJyaWNodCB2b3IgTGFjaGVuIHp1c2FtbWVuLgpYdXRlbGl1cyB3YWVsenQgc2ljaCB2b3IgTGFjaGVuIGF1ZiBkZW0gQm9kZW4uClNveW5hZGEgc2FndDogRWluIEFuZmFlbmdlcmdlYmlldD8/IDstKQpTb3luYWRhIGdyaW5zdC4KU295bmFkYSBzYWd0OiBBbmZhZW5nZXIgYXVmd2VydGVuISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBJY2ggZnVlaGwgbWljaCBuaWNodCBlcm5zdCBnZW5vbW1lbi4gKFplc3N0cmEsICA4LiBKdW4gMjAxMSwgMTQ6MjE6MDEpOgp+IyEgcm49QmFtYmkgcnQ9MTMwNzUzNDY3NyByZz1zY2htYXJybgp+IyEgdGlkPTEzMDc1MzQ2NzcKS2xhcmVyIEZhbGwgdm9uICdTZWxic3Qgc2NodWxkIScgKmcqCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEljaCBmdWVobCBtaWNoIG5pY2h0IGVybnN0IGdlbm9tbWVuLiAoQ3JvZnQsICA4LiBKdW4gMjAxMSwgMTQ6MjE6NDQpOgp+IyEgcm49WmVzc3RyYSBydD0xMzA3NTM1NjYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMwNzUzNDY3NwpCYW1iaSB3aWxsIG5pY2h0IGVybnN0IGdlbm9tbWVuIHdlcmRlbj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBJY2ggZnVlaGwgbWljaCBuaWNodCBlcm5zdCBnZW5vbW1lbi4gKFplc3N0cmEsICA4LiBKdW4gMjAxMSwgMTQ6MjQ6MzUpOgp+IyEgcm49Q3JvZnQgcnQ9MTMwNzUzNTcwNCByZz1zY2htYXJybgp+IyEgdGlkPTEzMDc1MzQ2NzcKRGFzIHdlaXNzIGljaCBuaWNodC4gQWJlciBvYiBlcyBlaW4gQW5mYWVuZ2VyZ2ViaWV0IHdpcmQgb2RlciBuaWNodCwgd2FyIGF1ZgpqZWRlbiBGYWxsIGluIHNlaW5lciBIYW5kLiA7LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEljaCBmdWVobCBtaWNoIG5pY2h0IGVybnN0IGdlbm9tbWVuLiAoQmFtYmksICA4LiBKdW4gMjAxMSwgMTQ6MjU6NDMpOgp+IyEgcm49WmVzc3RyYSBydD0xMzA3NTM1ODc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMwNzUzNDY3NwpJY2ggaGFiZSBsYW5nc2FtIGRhcyBHZWZ1ZWhsLCBpY2ggbXVzcyBub2NoIGVpbmUgIkZyaXNzIGRhcyBPZ2VyY2hlbiItUXVlc3QgaW4KZWluZW0gT2dlcmNoZW53YWVsZGNoZW4gc2NocmVpYmVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBMb3JkcyBvZiB0aGUgKG1hbnkpIFJpbmdzIChHbG9pbnNvbiwgMTkuIEp1biAyMDExLCAxMjoxMjoyMik6Cn4jISBybj1BcmsgcnQ9MTMwODQ3ODI0NiByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTMwNTgwNDQzOQpBUksgRk9SIEdPVFQhCgpXaXIga29lbm5lbiBkaWNoIGluIFNhbGVtIHRhdWZlbi4KCi0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IExvcmRzIG9mIHRoZSAobWFueSkgUmluZ3MgKE11cGZlbCwgMTkuIEp1biAyMDExLCAxMjo0NDozMyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMzA4NDc4MzQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMwNTgwNDQzOQpVbmQgd2VuIHdpbGxzdCBEdSBkYWZ1ZXIgcmF1c3dlcmZlbj8gRXMgc2luZCBkb2NoIGltbWVyIG51ciBkcmVpLi4uCgotbXVwZmVsLQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTG9yZHMgb2YgdGhlIChtYW55KSBSaW5ncyAoQXJrLCAxOS4gSnVuIDIwMTEsIDEyOjU0OjQ5KToKfiMhIHJuPUdsb2luc29uIHJ0PTEzMDg0NzgzNDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMzA1ODA0NDM5ClNhbGVtPyBIbSwgd2llIGluIFN0ZXBoZW4gS2luZ3MgTm92ZWxsYXMgLi4uCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTG9yZHMgb2YgdGhlIChtYW55KSBSaW5ncyAoTXVwZmVsLCAxOS4gSnVuIDIwMTEsIDEyOjU2OjM3KToKfiMhIHJuPUFyayBydD0xMzA4NDgwODg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMwNTgwNDQzOQpHZW5hdS4gV2VubiBkYXMgV2V0dGVyIHNjaGxlY2h0IHNlaW4gc29sbHRlLCB2ZXJicmVubmVuIHdpciBlaW4gcGFhciBIZXhlbi4uLgoKLW11cGZlbC0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBMb3JkcyBvZiB0aGUgKG1hbnkpIFJpbmdzIChHbG9pbnNvbiwgMTkuIEp1biAyMDExLCAxMzowMjoxOSk6Cn4jISBybj1NdXBmZWwgcnQ9MTMwODQ4MDk5NyByZz1zY2htYXJybgp+IyEgdGlkPTEzMDU4MDQ0MzkKT2RlciB1bnNlcmVuIG5ldWVuIGtvcm5pZ2VuLCBhZWgga2VybmlnZW4gR290dC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogTVVELVBhcnR5IGluIFNhbGVtIGFtIEJvZGVuc2VlOiBUZXJtaW5maW5kdW5nIChHbG9pbnNvbiwgMjEuIEp1biAyMDExLCAxMzo1MTo1MCk6Cn4jISBybj1SdW1hdGEgcnQ9MTMwODY1Njk2NSByZz1wYXJ0eS5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTMwMjM2NzQ0MgpSYWxwaD8gWm9vayBicmluZ3QgUmFscGggU2llZ2VsIG1pdD8gSXN0IGRhcyBsZWdhbD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogTVVELVBhcnR5IGluIFNhbGVtIGFtIEJvZGVuc2VlOiBUZXJtaW5maW5kdW5nIChSdW1hdGEsIDIxLiBKdW4gMjAxMSwgMTM6NTk6MzgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTMwODY1NzExMCByZz1zY2htYXJybgp+IyEgdGlkPTEzMDIzNjc0NDIKTm9lLCBhYmVyIGVyIG1hY2h0IEZheGVuIG1pdCBpaG0uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB3YXMgenVtIEZsdWNoZW4gKEdsb2luc29uLCAxMC4gSnVsIDIwMTEsIDE3OjU3OjQ1KToKfiMhIHJuPUdub21lIHJ0PTEzMTAzMTMwOTIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEzMTAyOTg1NzAKPiBnbGVpY2htYWVzc2lnZSBBdXNzY2h1ZXR0dW5nIGFuIGFsbGUgYWt0aXZlbiBNYWdpZXIKCkljaCB2ZXJmYWxsIGRhbm4gbWFsIGluIEFrdGlvbmlzbXVzIDspCgpLbGVyaWtlciBiZWtvbW1lbiBidW50ZSBLdXR0ZW4hIEJ1bnRlIEt1dHRlbiEgU2Nob2VuZXJlIE1hcnMtUmllZ2VsIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IHdhcyB6dW0gRmx1Y2hlbiAoQ3JvZnQsIDEwLiBKdWwgMjAxMSwgMTc6NTk6NTYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTMxMDMxMzQ2NSByZz1zY2htYXJybgp+IyEgdGlkPTEzMTAyOTg1NzAKSGF0IGplbWFuZCBtYWwgbmVuIE1hZ2llcnZlcnRyYWcgZnVlciBtaWNoPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IHdhcyB6dW0gRmx1Y2hlbiAoR2xvaW5zb24sIDEwLiBKdWwgMjAxMSwgMTg6MDQ6MDcpOgp+IyEgcm49Q3JvZnQgcnQ9MTMxMDMxMzU5NiByZz1zY2htYXJybgp+IyEgdGlkPTEzMTAyOTg1NzAKU29ycnksIGRpZSBzaW5kIGpldHp0IGxpbWl0aWVydC4gRHUgbXVzc3QgYmlzIHp1bSBuYWVjaHN0ZW4gTWFnaWVyLVNwbGl0CndhcnRlbiwgdmllbGxlaWNodCB2ZXJrYXVmdCBkaXIgZGFubiBlaW5lciBzZWluZW4gTWFnaWVyLUFudGVpbC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB3YXMgenVtIEZsdWNoZW4gKENoYWdhbGwsIDEwLiBKdWwgMjAxMSwgMTg6MjU6NDYpOgp+IyEgcm49WmVzc3RyYSBydD0xMzEwMzE0MTA2IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMzEwMjk4NTcwCkF1amEsIEZsYXR0ciB1bmQgZGllIFNwZW5kZW4gZnVlcnMgQnVnZml4ZW4gYXVzc2NodWV0dGVuLiBJY2ggYmF1IGRhbm4gZXJzdG1hbApkdXR6ZW5kZSBrbGVpbmUgQnVncyBpcmdlbmR3byBlaW4gdW5kIGZpeCBzaWUgZGFuYWNoIHdpZWRlci4gOikKCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiB3YXMgenVtIEZsdWNoZW4gKFZhbmlvbiwgMTAuIEp1bCAyMDExLCAyMjo0OTozMyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMzEwMzIzNDQ0IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMzEwMjk4NTcwClZlcmRhbW10LiBJY2ggaGFiZSBub2NoIG5pZSB2b24gZWluZW0gU3BpZWxlciBlaW4gU2NoaXR6ZWwvQmllci9laW5lIENvbGEvZWluZQpDb2xhIDQwIGF1c2dlZ2ViZW4gYmVrb21tZW4uIE51ciB2b24gZWluIHBhYXIgTWFnaWVybiBHZWJ1cnRzdGFnc2VpbmxhZHVuZ2VuLAphYmVyIGtlaW4ocikgc2NoaWNrdCBkZW4gSGVsaSB2b3JiZWkgdW0gbWljaCBhYnp1aG9sZW4uIEljaCBtYWNoIHdhcyBmYWxzY2guCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogd2FzIHp1bSBGbHVjaGVuIChaZXNzdHJhLCAxMC4gSnVsIDIwMTEsIDIyOjUwOjE1KToKfiMhIHJuPVZhbmlvbiBydD0xMzEwMzMwOTczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxMDI5ODU3MApuYWphLCBhdWYgZGllIFBhcnRpZXMgbXVzc3QgRHUgc2Nob24gc2VsYmVyIGZhaHJlbi4uLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogd2FzIHp1bSBGbHVjaGVuIChHbG9pbnNvbiwgMTAuIEp1bCAyMDExLCAyMjo1NzoyMCk6Cn4jISBybj1aZXNzdHJhIHJ0PTEzMTAzMzEwMTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMzEwMjk4NTcwCkJhemluZ2EhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogd2FzIHp1bSBGbHVjaGVuIChWYW5pb24sIDEwLiBKdWwgMjAxMSwgMjI6NTk6MzQpOgp+IyEgcm49Q3JvZnQgcnQ9MTMxMDMxMzU5NiByZz1zY2htYXJybgp+IyEgdGlkPTEzMTAyOTg1NzAKSWNoIGtvZW5udGUgRGlyIGVpbmVuIGJlc29yZ2VuLiBJcyBndWVuc3RpZy4gTGFzdHNjaHJpZnQgb2RlciBVZWJlcndlaXN1bmc/CgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogd2FzIHp1bSBGbHVjaGVuIChWYW5pb24sIDEwLiBKdWwgMjAxMSwgMjI6NTk6NTIpOgp+IyEgcm49WmVzc3RyYSBydD0xMzEwMzMxMDE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxMDI5ODU3MApIYXN0IG1pY2gsIGljaCBiaW4gZmF1bC4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiB3YXMgenVtIEZsdWNoZW4gKFplc3N0cmEsIDEwLiBKdWwgMjAxMSwgMjM6MDA6MjUpOgp+IyEgcm49VmFuaW9uIHJ0PTEzMTAzMzE1NzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMzEwMjk4NTcwCk5pbW1zdCBEdSBhdWNoIEtyZWRpdGthcnRlbiBvZGVyIFBheXBhbD8gT2RlciBCaXRjb2lucz8gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiB3YXMgenVtIEZsdWNoZW4gKFZhbmlvbiwgMTAuIEp1bCAyMDExLCAyMzowNDowOSk6Cn4jISBybj1aZXNzdHJhIHJ0PTEzMTAzMzE2MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMzEwMjk4NTcwCkphLCBhdXNzZXIgQml0Y29pbi4gVW5kIGVzIGtvc3RldCBtZWhyLiBBYmVyIHdlbm4gZHUgbm9jaCBlaW5lbiB6d2VpdGVuCk1hZ2llcnZlcnRyYWcgaGFiZW4gd2lsbHN0LCB3aXJkIGRhcyBlaCBSSUNIVElHIHRldWVyIQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IHdhcyB6dW0gRmx1Y2hlbiAoWmVzc3RyYSwgMTAuIEp1bCAyMDExLCAyMzowNzoxOCk6Cn4jISBybj1WYW5pb24gcnQ9MTMxMDMzMTg0OSByZz1zY2htYXJybgp+IyEgdGlkPTEzMTAyOTg1NzAKRGFzIGlzdCBqYSBkYXMgc2Nob2VuZTogaWNoIGJyYXVjaCBnYXIga2VpbmVuLiA7LSkgQWxzIEVNIGRhcmYgaWNoIGxlZ2FsIG5lbgpad2VpdG1hZ2llciB6dSBUZXN0endlY2tlbiBoYWJlbi4gKmcqCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogd2FzIHp1bSBGbHVjaGVuIChWYW5pb24sIDEwLiBKdWwgMjAxMSwgMjM6MDg6MzkpOgp+IyEgcm49WmVzc3RyYSBydD0xMzEwMzMyMDM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxMDI5ODU3MApDSEVBVEVSIQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiB3YXMgenVtIEZsdWNoZW4gKFplc3N0cmEsIDEwLiBKdWwgMjAxMSwgMjM6MDk6MjEpOgp+IyEgcm49VmFuaW9uIHJ0PTEzMTAzMzIxMTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMzEwMjk4NTcwClN0aW1tdC4gT2ssIG5hZWNoc3RlcyBNYWwgbmVobSBpY2ggVmFuaW9uIHp1bSBUZXN0ZW4uIDstKQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IHdhcyB6dW0gRmx1Y2hlbiAoVmFuaW9uLCAxMC4gSnVsIDIwMTEsIDIzOjExOjMzKToKfiMhIHJuPVplc3N0cmEgcnQ9MTMxMDMzMjE2MSByZz1zY2htYXJybgp+IyEgdGlkPTEzMTAyOTg1NzAKRmluZ2VyIHdlZyB2b24gVmFuaW9uLCBuaW1tIEZpZG8uIERlciBpcyBaYXViZXJlciB1bmQgTGVpZCBnZXdvaG50LgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiB3YXMgenVtIEZsdWNoZW4gKEdsb2luc29uLCAxMC4gSnVsIDIwMTEsIDIzOjEzOjA1KToKfiMhIHJuPVZhbmlvbiBydD0xMzEwMzMyMjkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxMDI5ODU3MApKZXR6dCB3ZXJkZW4gaGllciBaV2VpdGllcyBzY2hvbiBvZmZlbiBnZWhhbmRlbHQuIFNrbGF2ZW5tYXJrdD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogd2FzIHp1bSBGbHVjaGVuIChWYW5pb24sIDEwLiBKdWwgMjAxMSwgMjM6MTc6MzgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTMxMDMzMjM4NSByZz1zY2htYXJybgp+IyEgdGlkPTEzMTAyOTg1NzAKRWlnZW50bGljaCB3YXIgRmlkbyBtZWluIFByb2dyYW1taWVyc2tsYXZlLCBkZXIgaW1tZXIgYXVzYmFkZW4gbXVzc3RlLCB3ZW5uCmljaCAnbmVuIFRlc3RtYWdpZXIgYnJhdWNodGUuIEFiZXIgb2ZmZW5iYXIgaGFiIGljaCBkaWUgUmVnZWwgIk51ciBFcnptYWdpZXIKYnJhdWNoZW4gTWFnaWVyLVRlc3RpZXMiIHNlaHIgZXJuc3RnZW5vbW1lbiB1bmQgaWhuIHZvbSBNYWdpZXIgenVtIFphdWJlcmVyCmRlZ3JhZGllcnQsIGFscyBpY2ggenVydWVja2dldHJldGVuIGJpbi4gV2FzIGZ1ZXIgZWluIEFic3RpZWcuIAoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiB3YXMgenVtIEZsdWNoZW4gKFpvb2ssIDExLiBKdWwgMjAxMSwgMDg6MzA6MDkpOgp+IyEgcm49WmVzc3RyYSBydD0xMzEwMzMyMTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxMDI5ODU3MApXaWUgbmFlY2hzdGVzIG1hbD8gSWNoIGRhY2h0ZSwgVmFuaW9uIHdhZXJlIHVuc2VyIEVNLVRlc3QtTWFnaWVyLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiB3YXMgenVtIEZsdWNoZW4gKFZhbmlvbiwgMTEuIEp1bCAyMDExLCAxMTowMzowMyk6Cn4jISBybj1ab29rIHJ0PTEzMTAzNjU4MDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMzEwMjk4NTcwCkpvLCBMZXZlbCA2NjYuIDopCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IHdhcyB6dW0gRmx1Y2hlbiAoWm9vaywgMTEuIEp1bCAyMDExLCAxMTozNToxNik6Cn4jISBybj1aZXNzdHJhIHJ0PTEzMTAzNzUwMjkgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEzMTAyOTg1NzAKR2VuYXUhIEtvbW10IHp1ciBNaXRnbGllZGVydmVyc2FtbWx1bmc7IGRhbm4ga29lbm50IElociBhdWYgZGVyIApQYXJ0eSBuYWVtbGljaCBhdWNoIG5vY2ggZGFzIGVpbmUgb2RlciBhbmRlcmUgQmllciBhbiBtaWNoIHJlaWNoZW4uIApTaWUgd2lzc2VuIHNjaG9uIQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiB3YXMgenVtIEZsdWNoZW4gKFplc3N0cmEsIDExLiBKdWwgMjAxMSwgMTE6Mzk6MDEpOgp+IyEgcm49Wm9vayBydD0xMzEwMzc2OTE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxMDI5ODU3MApVbmQgYW4gbWljaC4gSWNoIG5laG1lIGRpZSBTY2huaXR6ZWwgdW5kIEJpZXJlIGZ1ZXIgVmFuaW9uIHVlYnJpZ2VucyBhdWNoCmdlcm5lIGVudGdlZ2VuLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IHdhcyB6dW0gRmx1Y2hlbiAoQ3JvZnQsIDExLiBKdWwgMjAxMSwgMTE6NDE6MDYpOgp+IyEgcm49WmVzc3RyYSBydD0xMzEwMzc3MTQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxMDI5ODU3MApJY2ggcmVpY2hlIGRpciB1ZWJlcm5hZWNoc3RlbiBTYW1zdGFnIGRhbm4gZWluIEJpZXIgOy0pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IHdhcyB6dW0gRmx1Y2hlbiAoWmVzc3RyYSwgMTEuIEp1bCAyMDExLCAxMTo0MjozMSk6Cn4jISBybj1Dcm9mdCBydD0xMzEwMzc3MjY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxMDI5ODU3MApPaCwgZGFua2UsIGljaCBmcmV1IG1pY2ggZHJhdWYhIDotKQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTM6IHdhcyB6dW0gRmx1Y2hlbiAoVmFuaW9uLCAxMS4gSnVsIDIwMTEsIDEyOjExOjAwKToKfiMhIHJuPVplc3N0cmEgcnQ9MTMxMDM3NzE0MSByZz1zY2htYXJybgp+IyEgdGlkPTEzMTAyOTg1NzAKV2FzIGZ1ZXIgZWluIFNlcnZpY2UuIERpZSBTY2huaXplbCBrYW5uc3RlIGhhYmVuLCBiZWltIEJpZXIgdmVyc3RlaCBpY2gga2VpbmVuClNwYXNzLiBJY2gga3JpZWcgaGllciBvYmVuIG51ciBkaWUgUGxvZXJyZSwgZGllIG5hY2ggdW5zZXJlciBLcmVpc3N0YWR0CmJlbmFubnQgaXN0LgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiB3YXMgenVtIEZsdWNoZW4gKENyb2Z0LCAxMS4gSnVsIDIwMTEsIDEyOjEyOjM4KToKfiMhIHJuPVZhbmlvbiBydD0xMzEwMzc5MDYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxMDI5ODU3MApEdSBoYXN0IGFuIGRpZXNlbSBTYW1zdGFnIGF1Y2ggZGllIE1vZWdsaWNoa2VpdCBlaW4gQmllcmNoZW4gdm9uIG1pciBnZXJlaWNodAp6dSBiZWtvbW1lbi4gIFVuZCBzbyBzY2hsZWNodCBpc3QgZGllIFBsb2VycmUgYmVpIGRpciBkb2NoIG5pY2h0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiB3YXMgenVtIEZsdWNoZW4gKFZhbmlvbiwgMTEuIEp1bCAyMDExLCAxMjoxODo0Mik6Cn4jISBybj1Dcm9mdCBydD0xMzEwMzc5MTU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxMDI5ODU3MApWZXJob3BmdGUgUGxvZXJyZS4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogd2FzIHp1bSBGbHVjaGVuIChDcm9mdCwgMTEuIEp1bCAyMDExLCAxMjoyNTo0Nik6Cn4jISBybj1WYW5pb24gcnQ9MTMxMDM3OTUyMiByZz1zY2htYXJybgp+IyEgdGlkPTEzMTAyOTg1NzAKSG9wZmVuIGlzdCBndXQhICBadW1pbmRlc3QgZGllIGVyc3RlbiBwYWFyIEVpbmhlaXRlbi4gIEJldm9yIHNpY2ggZGVyCkhvcGZlbnRlcHBpY2ggYmlsZGV0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiB3YXMgenVtIEZsdWNoZW4gKFpvb2ssIDExLiBKdWwgMjAxMSwgMTI6Mjg6MTgpOgp+IyEgcm49Q3JvZnQgcnQ9MTMxMDM3OTk0NiByZz1zY2htYXJybgp+IyEgdGlkPTEzMTAyOTg1NzAKRGFiZWkgaXN0IGRhcyBKZXZlciBzY2hvbiB3ZW5pZ2VyIGdlaG9wZnQgYWxzIGZydWVoZXIsIHdpZSBpY2ggbmV1bGljaAppbiBkZXIgU3VlZGRldXRzY2hlbiBsYXMuClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogd2FzIHp1bSBGbHVjaGVuIChDcm9mdCwgMTEuIEp1bCAyMDExLCAxMjozMDoxMyk6Cn4jISBybj1ab29rIHJ0PTEzMTAzODAwOTggcmc9c2NobWFycm4KfiMhIHRpZD0xMzEwMjk4NTcwCkRpZSBMZXV0ZSBzaW5kIG5pY2h0cyBtZWhyIGdld29laG50LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiB3YXMgenVtIEZsdWNoZW4gKFJ1bWF0YSwgMTEuIEp1bCAyMDExLCAxMzoxMDo0NSk6Cn4jISBybj1Dcm9mdCBydD0xMzEwMzgwMjEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxMDI5ODU3MApIb3BmZW4/IGlzdCBkYXMgbmljaHQgZGFzIFpldWcgbmFjaCBkZW0gV2VpemVuIHNjaG1lY2t0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA6IHdhcyB6dW0gRmx1Y2hlbiAoQ3JvZnQsIDExLiBKdWwgMjAxMSwgMTM6MjM6MjEpOgp+IyEgcm49UnVtYXRhIHJ0PTEzMTAzODI2NDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMzEwMjk4NTcwCkFoLCBtYW4gZXJrZW5udCBkZW4gTmljaHQtQmllcnRyaW5rZXIuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjE6IHdhcyB6dW0gRmx1Y2hlbiAoUnVtYXRhLCAxMS4gSnVsIDIwMTEsIDEzOjMwOjA2KToKfiMhIHJuPUNyb2Z0IHJ0PTEzMTAzODM0MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMzEwMjk4NTcwCk5laW4sIG51ciB1bmdlc2NodWx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjI6IHdhcyB6dW0gRmx1Y2hlbiAoR2xvaW5zb24sIDExLiBKdWwgMjAxMSwgMTU6NDQ6MTApOgp+IyEgcm49UnVtYXRhIHJ0PTEzMTAzODM4MDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMzEwMjk4NTcwCkFiIHVuZCBhbiBiZWtvbW10IG1hbiBhdWNoIG1hbCBlaW5lbiBIb3BmZW4uIFdlbm4gbWFuIGRhbm4gZWluIHdlbmlnIHZlcmhvcGZ0CmlzdCwgbXVzcyBtYW4gZGFzIEJpZXIgbnVyIHdhcm1tYWNoZW4sIGRhbm4ga2FubiBtYW4gYmFsZCB3aWVkZXIgSGVmZSB0cmlua2VuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiB3YXMgenVtIEZsdWNoZW4gKFZhbmlvbiwgMTEuIEp1bCAyMDExLCAxNzozNDo0NCk6Cn4jISBvbj1WYW5pb24gb3Q9MTMxMDM5ODQ1NSBvZz1tZWdhc2NobWFycm4KfiMhIHJuPUdsb2luc29uIHJ0PTEzMTAzOTM3MTMgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEzMTAyOTg1NzAKTmVlLCBkYW5uIGtvbW10IGRlciBIZXJyIEZyaWVkcmljaCBydW50ZXIgaW4gZGllIEZldWVyZWJlbmUgdW5kIHNjaGlja3QgdW5zCmFsbGUgb2huZSBBYmVuZGVzc2VuIGlucyBCZXR0LgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiB3YXMgenVtIEZsdWNoZW4gKFpvb2ssIDExLiBKdWwgMjAxMSwgMTc6MzY6MDkpOgp+IyEgcm49VmFuaW9uIHJ0PTEzMTAzOTg0ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMzEwMjk4NTcwCkljaCB2ZXJtdXRlLCBkYW5uIHdpcmQgZGVyIERHIGJldm9yIGVyIGdlemFwcHQgd2lyZCBhbHMgbGV0enRlIE1haGx6ZWl0IAplaW5lbiBIZXJybiBGcmllZHJpY2ggYmVrb21tZW4uClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiB3YXMgenVtIEZsdWNoZW4gKEdsb2luc29uLCAxMS4gSnVsIDIwMTEsIDE4OjIzOjUzKToKfiMhIHJuPUJhbWJpIHJ0PTEzMTA0MDAwNjIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEzMTAyOTg1NzAKRHUgbmltbXN0IGRvY2ggamV0enQgbnVyIG5vY2ggaW4tZ29kLXdlLXRydXN0IFBhcGllcm11ZWxsLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IHdhcyB6dW0gRmx1Y2hlbiAoRGFya2xvciwgMTIuIEp1bCAyMDExLCAyMTozODo1Nyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMzEwNDAxNDMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxMDI5ODU3MApJaHIgdmVydHJhZ3QgZG9jaCBnYXIga2VpbiBBbGtvaG9sIG1laHIhCgpEYXJrbG9yCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiB3YXMgenVtIEZsdWNoZW4gKFh1dGVsaXVzLCAxMi4gSnVsIDIwMTEsIDIxOjQwOjAxKToKfiMhIHJuPURhcmtsb3IgcnQ9MTMxMDQ5OTUzNyByZz1zY2htYXJybgp+IyEgdGlkPTEzMTAyOTg1NzAKSWNoIHdldHRlLCBlcyBnaWJ0IG1pbmRlc3RlbnMgZWluZW4gRXJ6bWFnaWVyIHZvbiBkZW0gbWFuIGRhcyBhYnNvbHV0IG5pY2h0CmJlaGF1cHRlbiBrYW5uLiA6LVAKClh1dCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiB3YXMgenVtIEZsdWNoZW4gKEdsb2luc29uLCAxMi4gSnVsIDIwMTEsIDIxOjQ5OjU0KToKfiMhIHJuPVh1dGVsaXVzIHJ0PTEzMTA0OTk2MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMzEwMjk4NTcwCkVyemFlaGw/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IHdhcyB6dW0gRmx1Y2hlbiAoWHV0ZWxpdXMsIDEyLiBKdWwgMjAxMSwgMjI6MzM6MTkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTMxMDUwMDE5NCByZz1zY2htYXJybgp+IyEgdGlkPTEzMTAyOTg1NzAKSWNoIHJlZGUgbmF0dWVybGljaCB2b24gSHVtbmkuIGJlaSBhbGxlbiBhbmRlcm4ga2FubiBtYW4gYXVzIFNhdWVybGFlbmRlcnNpY2h0CmRydWViZXJyZWRlbiA6LVAKClh1dCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkdvb2Qgb2xkIEJvaW5nIFJlc2V0IC4uLiAoQ3JhZ2dhbm1vcmUsIDE4LiBKdWwgMjAxMSwgMTE6MzE6MjApOgpEdSB0cmlmZnN0IGVpbmVuIE9yayBoYXJ0LgpEZXIgT3JrIGZhZWxsdCB0b3QgenUgQm9kZW4uClN0ZWluZWJlbmUuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBzdWVkZW4sIG5vcmRlbiB1bmQgd2VzdGVuLgpEaWUgTGVpY2hlIGVpbmVzIE9ya3MuCkJlaSBEZWluZXIgZ2FuemVuIEhla3RpayB6ZXJwbGF0enQgRGlyIGF1ZiBlaW5tYWwgRGVpbiBTY2h1dHpzY2hpbGQuCkVpbiBPcmsga29tbXQgYW4uCkVpbiBPcmsgbmltbXQgZWluZW4gT3JraGVsbSBhdXMgZWluZXIgTGVpY2hlLgpFaW4gT3JrIHppZWh0IGVpbmVuIE9ya2hlbG0gYW4uCkVpbiBPcmsgbmltbXQgZWluZSBIb3NlIGF1cyBlaW5lciBMZWljaGUuCkVpbiBPcmsgemllaHQgZWluZSBIb3NlIGFuLgpFaW4gT3JrIG5pbW10IGVpbmVuIFNhZWJlbCBhdXMgZWluZXIgTGVpY2hlLgpFaW4gT3JrIHp1ZWNrdCBlaW5lbiBTYWViZWwuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTaXR6dW5nIFNvbW1lcnBhcnR5IHdpcmQgdmVyc2Nob2JlbiAoR2xvaW5zb24sIDI0LiBKdWwgMjAxMSwgMjM6MDA6MjcpOgp+IyEgcm49Wm9vayBydD0xMzExNTM5ODg1IHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD0xMzExNTM5ODE3Ckd1YXJkIGlzdCBoaWVybWl0IGFsc28genVyIEdldHJhZW5rZWhvbGJyaWdhZGUgendhbmdzdmVycGZsaWNodGV0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNpdHp1bmcgU29tbWVycGFydHkgd2lyZCB2ZXJzY2hvYmVuIChab29rLCAyNC4gSnVsIDIwMTEsIDIzOjAxOjU5KToKfiMhIHJuPUdsb2luc29uIHJ0PTEzMTE1NDEyMjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzExNTM5ODE3Clpvb2sgbmlja3QgenVzdGltbWVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTaXR6dW5nIFNvbW1lcnBhcnR5IHdpcmQgdmVyc2Nob2JlbiAoWm9vaywgMjQuIEp1bCAyMDExLCAyMzowMjoyMSk6Cn4jISBvbj1ab29rIG90PTEzMTE1Mzk4ODUgb2c9bW9yZ2VuZ3JhdWVuLnZlcmVpbgp+IyEgcm49R3VhcmQgcnQ9MTMxMTUzOTgxNyByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTMxMTUzOTgxNwpVbnNlciBWZXJzdGFlbmRuaXMgd2lyZCBkdXJjaCBSZWljaHVuZyB2b24gS2FsdGdldHJhZW5rZW4gaW0gTGF1ZmUgCmRlciBXb2NoZSBpbiBTYWxlbSBiZXN0aW1tdCB6dW5laG1lbiEgCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTaXR6dW5nIFNvbW1lcnBhcnR5IHdpcmQgdmVyc2Nob2JlbiAoWmVzc3RyYSwgMjQuIEp1bCAyMDExLCAyMzoxMTo1NSk6Cn4jISBybj1ab29rIHJ0PTEzMTE1NDEzNDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMzExNTM5ODE3CkRhIGhhYmUgaWNoIGF1Y2gga2VpbmVybGVpIFp3ZWlmZWwuLi4gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogaGFiIG1hbCBhbmdlZmFuZ2VuLCBlaW4gbmV1ZXMgd2VidGVsbmV0IHp1IGJhc3RlbG4gKEdsb2luc29uLCAyNC4gQXVnIDIwMTEsIDEwOjU4OjMwKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTMxNDE1MzQwMSByZz1tdWRjbGllbnRzCn4jISB0aWQ9MTMxNDE1MzQwMQpHdWFyZCBrYW5uIGRhcyBtb21lbnRhbiBuaWNodCBlcmxlZGlnZW4sIGRlciB0cmlua3QgenUgdmllbCBHcmFwcGEuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOikgKFZlY3RvciwgMjYuIEF1ZyAyMDExLCAxMTo0NjoyNik6CgpbU2VoZXI6VmVjdG9yXSBldmVudHVlbGwgYnVnIGljaCBnbGVpY2ggbm9jaG1hbCA6KQpEdSBzaWVoc3QgZWluZW4gRmVobGVyIGltIFJhdW0tWmVpdC1HZWZ1ZWdlLgpCYW1iaSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogVm9yc2NobGFnIChIdW1uaSwgIDUuIFNlcCAyMDExLCAyMTozNzozMyk6Cn4jISBybj1WZWN0b3IgcnQ9MTMxNTIzMjYxOSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEzMTUyMjc4MTYKQ0hBR0FMTCEgV2FubiBoYXR0ZSBpY2ggRGlyIGVybGF1YnQsIGRlbiBaYXViaXMgV2FmZmVudHJpY2tzIGJlaXp1YnJpbmdlbj8KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBWb3JzY2hsYWcgKENoYWdhbGwsICA1LiBTZXAgMjAxMSwgMjE6NDA6NTkpOgp+IyEgcm49SHVtbmkgcnQ9MTMxNTI1MTQ1MyByZz1zY2htYXJybgp+IyEgdGlkPTEzMTUyMjc4MTYKRGFzIHdhciBzaWNoZXJsaWNoIGF1ZiBpcmdlbmRlaW5lciBNdWRwYXJ0eS4gSWNoIHdlaXNzIGFiZXIgbmljaHQgbWVociB3ZWxjaGUsCmFiZXIgaWNoIGJpbiBtaXIgemllbWxpY2ggc2ljaGVyLCBkYXNzIER1IGRhcyBhYmdlc2VnbmV0IGhhc3QuCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVm9yc2NobGFnIChBcmssICA1LiBTZXAgMjAxMSwgMjE6NDE6MDEpOgp+IyEgcm49SHVtbmkgcnQ9MTMxNTI1MTQ1MyByZz1zY2htYXJybgp+IyEgdGlkPTEzMTUyMjc4MTYKRGVyIHNjaGxhZWd0IGZlaGwsIHNpZSBlcmRvbGNoZW4gc2ljaCB1bmQgaWdub3JpZXJlbiBkZW4gU2tpbGwsIGJldm9yIHNpZSB6dQpqYW1tZXJuIGFuZmFuZ2VuLiBXYXJ1bSBzb2xsdGUgZXIgRGlyIGRhcyBzYWdlbj8gOikKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBWb3JzY2hsYWcgKFpvb2ssICA2LiBTZXAgMjAxMSwgMTQ6NDA6MTkpOgp+IyEgcm49QXJrIHJ0PTEzMTUyNTE2NjEgcmc9c2NobWFycm4KfiMhIHRpZD0xMzE1MjI3ODE2CktsaW5ndCBuYWNoIGVpbmVyIHNhdWJlcmVuIExvZXN1bmcuClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogVm9yc2NobGFnIChab29rLCAgNy4gU2VwIDIwMTEsIDA5OjE1OjI5KToKfiMhIHJuPVJ1bWF0YSBydD0xMzE1Mzc5NzA0IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTMxNTIyNzgxNgpsYWV1ZnQgZGFzIGF1Y2ggYXVmIGRlaW5lbSB0ZWxlZm9uPwp6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogVm9yc2NobGFnIChSdW1hdGEsICA3LiBTZXAgMjAxMSwgMDk6MTc6NDcpOgp+IyEgcm49Wm9vayBydD0xMzE1Mzc5NzI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxNTIyNzgxNgp1ZWJlciBzc2gsIGphIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IFZvcnNjaGxhZyAoR2xvaW5zb24sICA4LiBTZXAgMjAxMSwgMTA6NTQ6NTcpOgp+IyEgcm49TWVzaXJpaSBydD0xMzE1NDcwODIwIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTMxNTIyNzgxNgpPaC4gVW5kIFNlaGVyIG5vY2ggZGF6dS4gV28gaXN0IGRlciBFTS1TdGVtcGVsPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI4OiBWb3JzY2hsYWcgKFplc3N0cmEsICA4LiBTZXAgMjAxMSwgMTA6NTU6NDQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTMxNTQ3MjA5NyByZz1zY2htYXJybgp+IyEgdGlkPTEzMTUyMjc4MTYKRU1zIHdlcmRlbiBnYXIgbmljaHQgZHVyY2ggU3RlbXBlbHVuZyBlcnpldWd0LgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IFZvcnNjaGxhZyAoR2xvaW5zb24sICA4LiBTZXAgMjAxMSwgMTE6MDU6MzgpOgp+IyEgcm49WmVzc3RyYSBydD0xMzE1NDcyMTQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxNTIyNzgxNgpEYXMga2FubiBtYW4gYWxzbyBub2NoIGVyZ2Flbnplbi4gV2lyIGxhc3NlbiBtYWwgc28gZWluIEJyYW5kZWlzZW4gYW5mZXJ0aWdlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMDogVm9yc2NobGFnIChSdW1hdGEsICA4LiBTZXAgMjAxMSwgMTE6MDY6NTIpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTMxNTQ3MjczOCByZz1zY2htYXJybgp+IyEgdGlkPTEzMTUyMjc4MTYKV2lyIHNpbmQgbW9kZXJuLCBkaWUgd2VyZGVuIGdlY2hpcHB0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IFZvcnNjaGxhZyAoR2xvaW5zb24sICA4LiBTZXAgMjAxMSwgMTE6MDc6MzUpOgp+IyEgcm49UnVtYXRhIHJ0PTEzMTU0NzI4MTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMzE1MjI3ODE2ClBlbnRpdW0gb2RlciBLNj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zMjogVm9yc2NobGFnIChab29rLCAgOC4gU2VwIDIwMTEsIDIxOjM1OjIwKToKfiMhIHJuPUdsb2luc29uIHJ0PTEzMTU0NzI4NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMzE1MjI3ODE2CkJyYW5kZWlzZW4ga2xpbmd0IGFiZXIgZ2FueiByZWl6dm9sbC4KWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMzOiBWb3JzY2hsYWcgKEdsb2luc29uLCAgOC4gU2VwIDIwMTEsIDIzOjQyOjI4KToKfiMhIHJuPVpvb2sgcnQ9MTMxNTUxMDUyMCByZz1zY2htYXJybgp+IyEgdGlkPTEzMTUyMjc4MTYKRWJlbi4gVm9yIGFsbGVtIGthbm4gbWFuIGRhcyBhdWYgUGFydGllcyB6ZWxlYnJpZXJlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBWb3JzY2hsYWcgKEdub21lLCAgOC4gU2VwIDIwMTEsIDIzOjUyOjA2KToKfiMhIHJuPUNoYWdhbGwgcnQ9MTMxNTI1MTY1OSByZz1zY2htYXJybgp+IyEgdGlkPTEzMTUyMjc4MTYKazN3bCEKaHVtbmk/IHVuZCBkaWUga2FlbXBmZXIga3JpZWdlbiBkYWZ1ZXIgZGFubiBleHRyYWhhbmQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBWb3JzY2hsYWcgKENoYWdhbGwsICA5LiBTZXAgMjAxMSwgMDk6MTM6MjcpOgp+IyEgcm49R25vbWUgcnQ9MTMxNTUxODcyNiByZz1zY2htYXJybgp+IyEgdGlkPTEzMTUyMjc4MTYKV2FzIHdpbGwgZWluIEthZW1wZmVyIG1pdCBlaW5lciBFeHRyYWhhbmQuIERpZSB3dWVyZGV0IElociBFdWNoIGphIG51ciB3aWVkZXIKbWl0IGRlbSBLb2NobG9lZmZlbCBhYnNjaGxhZ2VuLgoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4gKE5pY29sYWksICA5LiBTZXAgMjAxMSwgMTM6NDE6NTEpOgpEaWUgc2NoaW1tZWxuZGUgdW5kIGhhbGJ2ZXJ3ZXN0ZSBMZWljaGUgZWluZXMgR2FzdHMuICg1KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVm9yc2NobGFnIChHbm9tZSwgMTAuIFNlcCAyMDExLCAxMDo1MzoxNik6Cn4jISBybj1DaGFnYWxsIHJ0PTEzMTU1NTI0MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzE1MjI3ODE2CmR1IG11c3N0IHdlaXRlcmRlbmtlbi4gc2VsYnN0IGJlaSBpbSBrYW1wZiBhYmdlc2NobGFnZW5lciBoYW5kIGtvZW5udGUgbWFuCmRhbm4gbm9jaCB3ZWl0ZXJoaW4gc2VpbmUgendlaWhhZW5kZXIgZnVlciBkZW4gdm9uIGV1Y2gga29waWVydGVuCndhZmZlbnRyaWNrIHp1ZWNrZW4uCgpnbk9tZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiByZWJvb3QgaGV1dGUuLi4gKEdsb2luc29uLCAxMS4gU2VwIDIwMTEsIDE3OjQ0OjM1KToKfiMhIHJuPUh1bW5pIHJ0PTEzMTU3NTA2NzMgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEzMTU3NDAxNDcKWmFlaGx0ICJpbiBkZXIgb2VmZmVudGxpY2hlbiBMaWIgc3RvZWJlcm4iIGFscyBoZXJhdXNmaW5kZW4/IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFJ1ZXN0dW5nZW4gKFJ1bWF0YSwgMTEuIFNlcCAyMDExLCAyMDo0MjoxMyk6Cn4jISBybj1BcmsgcnQ9MTMxNTc2NjIyMSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTMxNTczOTE1OQpNYWwgZ3Vja2VuLCBvYiBzZWluIFByZXNzZXNwcmFlY2hlciBzaWNoIGRlbWVudHNwcmVjaGVuZCBhZXVzc2VydC4KRGEga2FubiBkaWVzZXIgYXVjaCBnbGVpY2ggd2FzIHp1bSBGYWxLdWUnMTEgc2FnZW4uIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFJ1ZXN0dW5nZW4gKENyb2Z0LCAxMS4gU2VwIDIwMTEsIDIwOjUwOjA2KToKfiMhIHJuPVJ1bWF0YSBydD0xMzE1NzY2NTMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxNTczOTE1OQpIZXJic3QuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFJ1ZXN0dW5nZW4gKEdsb2luc29uLCAxMS4gU2VwIDIwMTEsIDIxOjU1OjE4KToKfiMhIHJuPUNyb2Z0IHJ0PTEzMTU3NjcwMDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMzE1NzM5MTU5CldlciB3YXIgZWlnZW50bGljaCBab29rcyBhcG9zdG9saXNjaGVyIFZpc2l0YXRvcj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogUnVlc3R1bmdlbiAoQ3JvZnQsIDExLiBTZXAgMjAxMSwgMjE6NTk6NDkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTMxNTc3MDkxOCByZz1zY2htYXJybgp+IyEgdGlkPTEzMTU3MzkxNTkKTXVhZGliLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHdlYmNsaWVudC1uZXdzIChab29rLCAxMi4gU2VwIDIwMTEsIDE5OjEzOjE1KToKfiMhIG9uPUdsb2luc29uIG90PTEzMTU4NDc0MTggb2c9bWVnYXNjaG1hcnJuCn4jISBybj1BcmF0aG9ybiBydD0xMzE1ODQ1MDg5IHJnPW11ZGNsaWVudHMKfiMhIHRpZD0xMzE1NzgzNTU2CkF1ZiBkZW0gSUU2IGxhZXVmdCBlcyBhdWNoLCBkZW4gaGFzdCBkdSBkb2NoIGRhLCBvZGVyPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFJ1ZXN0dW5nZW4gKFpvb2ssIDEyLiBTZXAgMjAxMSwgMTk6MTQ6MDUpOgp+IyEgcm49T3JrdG9ldGVyIHJ0PTEzMTU4NDY4MjQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEzMTU3MzkxNTkKTWl0IGVpbmVtIGdyb3NzZW4gUm9lbWVyZ2xhcyBhdWYgZGVtIEtvcGYgdW5kIGVpbmVtCkdyaWVjaGVudGVsbGVyIGFscyBTY2hpbGQuClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBSdWVzdHVuZ2VuIChNYWhhcmV0LCAxMi4gU2VwIDIwMTEsIDE5OjE1OjAzKToKfiMhIHJuPVpvb2sgcnQ9MTMxNTg0NzY0NSByZz1zY2htYXJybgp+IyEgdGlkPTEzMTU3MzkxNTkKV2F0dGllcnQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBSdWVzdHVuZ2VuIChab29rLCAxMi4gU2VwIDIwMTEsIDE5OjMzOjEyKToKfiMhIHJuPU1haGFyZXQgcnQ9MTMxNTg0NzcwMyByZz1zY2htYXJybgp+IyEgdGlkPTEzMTU3MzkxNTkKTWluZGVzdGVucyEgRmFsbHMgZWluIFd1cmZzdGVybiBoZXJlaW4ga2FlbWUuClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBSdWVzdHVuZ2VuIChPcmt0b2V0ZXIsIDEyLiBTZXAgMjAxMSwgMjI6MzI6MjApOgp+IyEgcm49Wm9vayBydD0xMzE1ODQ4NzkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxNTczOTE1OQpBaCEKCm5uciBkaWUgZ3V0ZW4gVm9yc2NobGFlZ2UhIFdlcmRlIGljaCBzZWxic3RyZWRlbmQgZ2xlaWNoIHVtc2V0emVuLiAoYWJlciB3ZWhlCmV1Y2gsIGljaCBpZGxlIGRhbm4gbmljaHQgYmVzc2VyISAqZHJvaCopCgpPcmtULgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogUnVlc3R1bmdlbiAoWmVzc3RyYSwgMTIuIFNlcCAyMDExLCAyMjozMjo1Mik6Cn4jISBybj1Pcmt0b2V0ZXIgcnQ9MTMxNTg1OTU0MCByZz1zY2htYXJybgp+IyEgdGlkPTEzMTU3MzkxNTkKVmVyZ2lzcyBuaWNodCwgZGFtaXQgenUgZHJvaGVuLCBkaWNoIG5pZSB3aWVkZXIgZWluenVsb2dnZW4uIDotKQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFJ1ZXN0dW5nZW4gKE9ya3RvZXRlciwgMTIuIFNlcCAyMDExLCAyMjozMzo0OCk6Cn4jISBybj1aZXNzdHJhIHJ0PTEzMTU4NTk1NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMzE1NzM5MTU5Ck5lbmVuZW5lLi4uIGRhcyB3YWVyZSBkb2NoIGdsZWljaCBPdmVya2lsbC4uIHNvIHNjaGxpbW0gd2lsbCBpY2ggZXVjaCBkb2NoCm5pY2h0IGJlc3RyYWZlbiEKCjspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogUnVlc3R1bmdlbiAoVmVjdG9yLCAxMy4gU2VwIDIwMTEsIDEyOjA1OjMyKToKfiMhIHJuPU9ya3RvZXRlciBydD0xMzE1ODU5NjI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxNTczOTE1OQpkaWUgaG9mZm51bmcgc3RpcmJ0IHp1bGV0enQgOikKd2FydW0gbmljaHQgbmFja3QgYW0gc2FuZHRpZ2VyIGlkZWxuLCBkYW5uIGhhYmVuIHdpcgphbGxlIHdhcyBkYXZvbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFJ1ZXN0dW5nZW4gKEJhbWJpLCAxMy4gU2VwIDIwMTEsIDE5OjMzOjE0KToKfiMhIHJuPVZlY3RvciBydD0xMzE1OTA4MzMyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxNTczOTE1OQpXZXIgaGF0IGdlcmFkZSAiQXVnZW5rcmVicyIgZ2VzYWd0PyBXZXIgd2Fycz8gUmF1cyBtaXQgZGVyIFNwcmFjaGUhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS29lY2hlciB2b24gQS5NLiBCb3NzIChBc3VrYSwgMTQuIFNlcCAyMDExLCAyMToxNDowNik6Cn4jISBybj1aZXNzdHJhIHJ0PTEzMTYwMjc2MDYgcmc9ZC5pbnNlbG4KfiMhIHRpZD0xMzE2MDI3NjA2CldpZXZpZWwgUHJvbWlsbGUgYnJhdWNodCBkZW5uIGRlciBLb2VjaGVyIHNvLCBiaXMgZXIgdm9sbCBpc3Q/CgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogV2ViY2xpZW50OiBBdmF0YXItQmlsZGNoZW4gUmFzc2UvR2VzY2hsZWNodCAoQ3JvZnQsIDE0LiBTZXAgMjAxMSwgMjM6NTg6MDYpOgp+IyEgcm49TWVzaXJpaSBydD0xMzE2MDM1NTgyIHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD0xMzE1MTM5MzczCiguKSguKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdlYmNsaWVudDogQXZhdGFyLUJpbGRjaGVuIFJhc3NlL0dlc2NobGVjaHQgKEdsb2luc29uLCAxNS4gU2VwIDIwMTEsIDAwOjA5OjAyKToKfiMhIHJuPU1lc2lyaWkgcnQ9MTMxNjAzNTU4MiByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTMxNTEzOTM3MwpSYWdlLUZhY2VzPyA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkltbWVyIGRpZXNlIHJ1cHBpZ2VuIE9ya3MgLi4uIChTb2hhLCAxNS4gU2VwIDIwMTEsIDEzOjI2OjU0KToKRGVyIE9yayBzY2h1ZXR0ZWx0IGtvbmZ1cyBkZW4gS29wZiB1bmQgc2NoaWVidCBEaWNoIGVpbmZhY2ggbWl0IGRlbSBCZXNlbiB3ZWcuCkR1IHdpcnN0IGdhbnogc2Nob2VuIGR1cmNoZ2VydWV0dGVsdC4KRGVpbiBIZWlsaWdlbnNjaGVpbiBmbGFja2VydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvZWxsaWcgdW50ZXJzY2hhZXR6dCwgZGllc2UgUnVuZW5zdGFlYmUgKFh1dGVsaXVzLCAyMC4gU2VwIDIwMTEsIDE1OjMwOjQzKToKTWlyYWthIHplaWd0IERpciB2b2xsZXIgU3RvbHogaWhyZW4gUnVuZW5zdGFiOgpEaWVzIGlzdCBkZXIgUnVuZW5zdGFiIHZvbiBNaXJha2EuCkVyIGlzdCBiZXJlaXRzIG1pdCA5MyBSdW5lbiB1bmQgZHJlaSBTeW1ib2xlbiBkZXIgTWFjaHQgdmVyc2VoZW4uCkRlciBab21iaWUgemVyZmFlbGx0IHp1IFN0YXViLgoKWHV0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSG9tZXBhZ2UgKEdsb2luc29uLCAyMi4gU2VwIDIwMTEsIDIyOjQyOjAzKToKfiMhIHJuPU5lZGltZSBydD0xMzE2NzI0MDQ4IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTMxNjY4NTM0NwpEYW5rIGRlciBkZXV0c2NoZW4gU2VyaWVuLSJhY2ggZGllIG5hZWNoc3RlIFN0YWZmZWwga29tbXQgZXJzdCwgYWxzbyBzZW5kZW4Kd2lyIG5vY2htYWwgYWx0ZSBGb2xnZW4iLVN0cmF0ZWdpZSBoYWJlbiB3aXIgamEgbm9jaCBlaW4gcGFhciBDaGFuY2VuLAp0cm90emRlbSBMZXV0ZSBtaXQgZGVtIG5ldWVuIENsaWVudCBlaW56dWZhbmdlbiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEtvbW1hbmRvdHJlbm5lciAoR2xvaW5zb24sIDIzLiBTZXAgMjAxMSwgMDg6MTI6MDYpOgp+IyEgcm49QXN1a2EgcnQ9MTMxNjc1NzkyMCByZz1tdWRjbGllbnRzCn4jISB0aWQ9MTMxNjc1NzcyOQpIYXQgc2ljaCBkZW5uIGtlaW5lciBhbiAlOyBnZXdvZWhudD8gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOUEMtQXZhdGFyZSAoWm9vaywgMjMuIFNlcCAyMDExLCAxMDoxMDoyOSk6Cn4jISBybj1NZXNpcmlpIHJ0PTEzMTY3MzQ4MzEgcmc9bXVkY2xpZW50cwp+IyEgdGlkPTEzMTYzNjEyMzYKImtvbnRyb2xsZSIga2xpbmd0IGF1Y2ggbmFjaCBlaW5lciB0b3RhbCBzcGFubmVuZGVuIG5ldWVuCmFnaWxlbiBzb2Z0d2FyZS1lbnR3aWNrbHVuZ3MtdGVjaG5pay4ga2FubnN0IGR1IHVucyBtZWhyCmVyemFlaGxlbj8Kem9vayBzY2hhdXQgc3RhdW5lbmQgZ2VuIG1lc2kuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOUEMtQXZhdGFyZSAoUnVtYXRhLCAyMy4gU2VwIDIwMTEsIDEwOjE0OjI4KToKfiMhIHJuPVpvb2sgcnQ9MTMxNjc2NTQyOSByZz1zY2htYXJybgp+IyEgdGlkPTEzMTYzNjEyMzYKRGFzIHdhciBzZWluZSBSZWNodHNjaHJlaWJrb250cm9sbGUuIER1IHdlaXNzdCBkb2NoLCBkYXNzIGJlaSBQaXJhdGVuCmFsbGVzIG9lZmZlbnRsaWNoIGlzdC4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXZXIgaGF0IGFuIG1laW5lbSBCYWV1bWNoZW4gZ2VzY2h1ZXR0ZWx0PyAoUnVtYXRhLCAyMy4gU2VwIDIwMTEsIDEyOjU4OjE0KToKRWluIGZ1ZXJjaHRlcmxpY2hlcyBCZWJlbiBlcnNjaHVldHRlcnQgZGllIERpbWVuc2lvbmVuIGluIGlocmVuIEdydW5kZmVzdGVuLgpEdSBzdGVoc3QgaW4gZWluZW0gZHVmdGVuZGVuIFJlZ2VuIGF1cyBCbHVldGVuYmxhZXR0ZXJuLCBhbHMgZGVyIEJhdW0gYWxsCnNlaW5lIEJsdWV0ZW4gZmFsbGVuIGxhZXNzdC4KCk5hIHdhcnRlLCB3ZW5uIGljaCBkZW4gZXJ3aXNjaGUuCjotKQpSdW0qKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZ1ZXIgZWluZSB0b3RhbCB0b2xsZSBJZGVlLi4uIChHbG9pbnNvbiwgMjYuIFNlcCAyMDExLCAwNDoxOTo0MCk6Cn4jISBybj1aZXNzdHJhIHJ0PTEzMTY2NDM3OTAgcmc9cHJhbmdlcgp+IyEgdGlkPTEzMTY2NDM3OTAKSXN0IGRhcyB6dWZhZWxsaWcgbWl0IGVpbmVtIHNpbGJlcm5lbiBGZWhsZXJ0ZXVmZWwgdmVyc2VoZW4/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0YXR1c3JlcG9ydGUgZnVlciBTcGllbGVyIChWYW5pb24sIDI3LiBTZXAgMjAxMSwgMTk6NTU6MDcpOgp+IyEgcm49WmVzc3RyYSBydD0xMzE3MDM0MjQ5IHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMzE3MDM0MjQ5CkduYWEsIHdlciBzb2xsIGRlbm4gZGFubiBtZWluZSBTa3JpcHRlIHBmbGVnZW4/IFVuZCB2b3IgYWxsZW0sIHdlciBzb2xsIGR1cmNoCmRlbiBEYXRlaWVud3VzdCBoZXV0ZSBub2NoIGR1cmNoc3RlaWdlbj8KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTcGllbGVycmVwb3J0IChab29rLCAyOS4gU2VwIDIwMTEsIDA4OjQzOjAzKToKfiMhIHJuPUdsb2luc29uIHJ0PTEzMTcyNzAwMDEgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMzE3MDYxMzk4ClZlcmZhdWx0ZSBFaWVyIHVuZCBHdXJrZW4uIE5hLCBkYXMgaXN0IGphIHN1cGVyIQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbmZvcmRlcnVuZ2VuIHp1bSBTZWhlciAoR2xvaW5zb24sICA1LiBPa3QgMjAxMSwgMjM6NTY6NTApOgp+IyEgcm49Wm9vayBydD0xMzE3ODQ4NTkwIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMzE3ODQ4NTkwClB1dXV1aC4gRGFubiBibGVpYmVuIGRpZXNlcyBKYWhyIGphIGdsdWVja2xpY2hlcndlaXNlIGRpZSBzb25zdCBub2V0aWdlbgpBYnN0dWZ1bmdlbiBkZXIgQWx0c2VoZXIgYXVzLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQW5mb3JkZXJ1bmdlbiB6dW0gU2VoZXIgKENyb2Z0LCAgNi4gT2t0IDIwMTEsIDAwOjA0OjU5KToKfiMhIHJuPUdsb2luc29uIHJ0PTEzMTc4NTE4MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMzE3ODQ4NTkwCip3aXNjaHQgc2ljaCBkZW4gU2Nod2Vpc3Mgdm9uIGRlciBTdGlybioKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYWxlZnMgUHJlaXNlIChOZWRpbWUsICA2LiBPa3QgMjAxMSwgMjI6Mjc6MzcpOgpEYSB3YXIgd29obCBqZW1hbmQgZ2VzY2hvY2t0IHZvbiBIYWxlZnMgUHJlaXNlbiwgbmFjaGRlbSBkaWVzZXIgZGFzIFplaXRsaWNoZQpnZXNlZ25ldCBoYXR0ZToKVm9uIE1hc3VsOiBhY2ggZHUgc2NocmVjay4KUGxvZXR6bGljaCB3ZWljaHQgYWxsZXMgTGViZW4gYXVzIE1hc3VsLgpFcndhcnRldCAob2ZmbGluZSk6IE1hc3VsCgpOZWRpbWUKZGllc21hbCBpbiBkZXIgcmljaHRpZ2VuIFJ1YnJpay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIYWxlZnMgUHJlaXNlIChNYXN1bCwgIDYuIE9rdCAyMDExLCAyMjozMjoyNSk6Cn4jISBybj1OZWRpbWUgcnQ9MTMxNzkzMjg1NyByZz1zY2htYXJybgp+IyEgdGlkPTEzMTc5MzI4NTcKbmFqYSwgZXMgbGFnIGVoZXIgZGFyYW4sIGRhc3MgZGVyIGlwYWQgY2xpZW50IGVpbmdlZnJvcmVuIHdhci4uLgpNYXN1bAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBIYWxlZnMgUHJlaXNlIChab29rLCAgNy4gT2t0IDIwMTEsIDA5OjAyOjE4KToKfiMhIHJuPU1hc3VsIHJ0PTEzMTc5MzMxNDUgcmc9c2NobWFycm4KfiMhIHRpZD0xMzE3OTMyODU3CkljaCBoYWJlIE1hc3VsIGphIGF1Y2ggb2huZWhpbiBhbHMgZnVlcmNodGVybGljaGVuCnVuZCB1bmVyc2Nocm9ja2VuZW4gSGFsZWYtS2lsbGVyIGtlbm5lbmdlbGVybnQhClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogX2RhXyBtdWVzc3RlbiB3aXIgbWFsIGVyc2NoZWluZW4uLi4gKENyb2Z0LCAgOS4gT2t0IDIwMTEsIDE5OjU1OjEyKToKfiMhIHJuPVpvb2sgcnQ9MTMxODE4MjU0NCByZz1vZWZmZW50bGljaGtlaXRzYXJiZWl0Cn4jISB0aWQ9MTMxODE4MjU0NApEdSB3aWxsc3QgZWluZSBNRy1BcHA/IDstKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogX2RhXyBtdWVzc3RlbiB3aXIgbWFsIGVyc2NoZWluZW4uLi4gKFpvb2ssICA5LiBPa3QgMjAxMSwgMTk6NTc6MTUpOgp+IyEgcm49Q3JvZnQgcnQ9MTMxODE4MjkxMiByZz1zY2htYXJybgp+IyEgdGlkPTEzMTgxODI1NDQKbmVpbiwgZWluZW4gYXJ0aWtlbCB1ZWJlciB1bnMgOykgCnoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVudGVyc2NoaWVkbGljaGUgR2lsZGVuLCB1bnRlcnNjaGllZGxpY2hlIEFuc3BydWVjaGUgLi4uIChYdXRlbGl1cywgMTQuIE9rdCAyMDExLCAwMDowNToxOSk6CihHbGVpY2hlIFNla3VuZGUgLi4uKQoKRHUgZGVua3N0ICAgLiBvIE8gKGhhbGVmIGRpZSBtdWVsbGtpcHBlIC4uLikKRGVyaW4gZGVua3QgICAuIG8gTyAob2gsIGRlciBoYXQgamEgZ3V0ZSBzYWNoZW4gZGFiZWkpCgpYdXQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGVpbHVuZyAoWm9vaywgMTYuIE9rdCAyMDExLCAxMTowNDo0MCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMzE4NzEzNzgxIHJnPWdpbGRlbi5rbGVydXMKfiMhIHRpZD0xMzE4NzEzNzgxCkljaCBtb2VjaHRlIGtsYXJzdGVsbGVuLCBkYXNzIHdlZGVyIEpvZiwgUnVtYXRhIG5vY2ggaWNoCkZlaGxlciBtYWNoZW4uIDspIEluc2Jlc29uZGVyZSBiZWkgInp1IGdyb3NzenVlZ2lnIi4gOykgCloKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGVpbHVuZyAoR2xvaW5zb24sIDE2LiBPa3QgMjAxMSwgMTU6MjM6MjEpOgp+IyEgcm49Wm9vayBydD0xMzE4NzU1ODgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMxODcxMzc4MQpLbmF1c2VyISBOZXVsaWNoIGVyc3QgZGVuIExldmVsLUluZmxhdGlvbnNhdXNnbGVpY2ggaW4gRm9ybSB2b24gTWFnaWVybGV2ZWwKMzUsNSB2ZXJ3ZWlnZXJuIHVuZCBqZXR6dCBhdWNoIG5vY2ggZGVuIGFybWVuIFNwaWVsZXJuIGtlaW5lIEhlaWx1bmcgZ29lbm5lbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcnRhcHB0ISAoR2xvaW5zb24sICA2LiBOb3YgMjAxMSwgMTI6MTg6NDgpOgpEZWluZSBGcmV1bmRpbiBBc3VrYSB0ZWlsdCBEaXIgbWl0OiBtYWwgY2hhcndlY2hzZWxuCkNhbGRyYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFZhbmlyLCAgOS4gTm92IDIwMTEsIDIxOjAzOjI0KToKVGFsYW5pcyBydWZ0OiB1bSBoaWxmZQpbVG9kOkxhcnNdIExvc2VzIEdlcm9lbGwgaGF0IGdlcmFkZSBUYWxhbmlzIHVtZ2VicmFjaHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGZWhsZXIgaW4gZGVyIE1hdHJpeCAoVmFuaXIsIDEwLiBOb3YgMjAxMSwgMTU6MjE6MTIpOgpLaGF6YWRlbSBpc3QgYW53ZXNlbmQsCnVuZCB6d2FyIHZvbjogSGFsbGUuClBhc3NpdiBzZWl0OiA1M2QgMTQ6NTU6NTkKRWluZ2Vsb2dndCBzZWl0OiBTb24sIDE4LiBTZXAgMjAxMSwgMDE6MjE6MTcKVm9sbGVyIE5hbWU6IEtoYXphZGVtIGRlciBqdW5nZSBEdW5rZWxlbGYKUmFzc2U6IER1bmtlbGVsZiwgIEdpbGRlOiBEdW5rZWxlbGZlbiwgIEdlc2NobGVjaHQ6IG1hZW5ubGljaApBbHRlcjogNTNkIDE0OjM3OjIwLCAgIFNwaWVsZXJsZXZlbDogMQpEYXR1bSBkZXMgZXJzdGVuIExvZ2luOiBTb24sIDE4LiBTZXAgMjAxMSwgMDE6MjA6MDMKCgoKCgoKCgoKCgpTdWNoZW4gbXVzcyBtYW4gc2Nob24gc2VsYnN0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZlaGxlciBpbiBkZXIgTWF0cml4IChBcmssIDEwLiBOb3YgMjAxMSwgMjM6MTQ6MjcpOgp+IyEgcm49VmFuaXIgcnQ9MTMyMDkzNDg3MiByZz1zY2htYXJybgp+IyEgdGlkPTEzMjA5MzQ4NzIKRGVyIGhhdCBoYWx0IHNjaG9uIGltIEJhdWNoIGRlciBEdW5rZWxlbGZpbiB2b3IgZGVyIEdlYnVydCBydW1nZWlkZWx0IDopCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGZWhsZXIgaW4gZGVyIE1hdHJpeCAoVmFuaXIsIDExLiBOb3YgMjAxMSwgMTQ6NTc6MTgpOgp+IyEgcm49QXJrIHJ0PTEzMjA5NjMyNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzIwOTM0ODcyCkVnZ3RpbWUgY291bnRzID8KClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXaWxsa29tbWVuISAoWm9vaywgMTQuIE5vdiAyMDExLCAwOTo1NTozNik6Cn4jISBybj1IdW1uaSBydD0xMzIxMjIzNjQ5IHJnPWdpbGRlbi53aXBmZWxsYWV1ZmVyCn4jISB0aWQ9MTMyMTIxMjA0NQpNaXQgZWluZXIgU3Bhc3NnaWxkZSBoYXQgZXMgYXVjaCBzY2hvbiBtYWwgYmVnb25uZW4gLi4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRW50c3Bhbm51bmcgLi4uIG9kZXIgc28gKFh1dGVsaXVzLCAgNy4gRGV6IDIwMTEsIDIyOjIxOjMwKToKRHUgdmVybmltbXN0IHZvbGxlciBTY2hyZWNrZW4gZWluIGxhdXRlcyBQb2x0ZXJuIGF1cyBkZW4gQmVyZ2VuLiBEYSB3aXJkIGRvY2gKbmljaHQgZ2xlaWNoIGVpbmUgR2VzdGVpbnNsYXdpbmUgYXVmIERpY2ggaGVyYWJzdHVlcnplbj8KRHUgZnVlaGxzdCBEaWNoIHNvIGVudHNwYW5udCwgZGFzcyBEdSBkaXJla3QgdHJhZXVtZW4ga29lbm50ZXN0LgpEaWUgRXJkZSBiZWJ0IG51biBpbnp3aXNjaGVuIHNvIHN0YXJrLCBkYXNzIER1IFNjaHdpZXJpZ2tlaXRlbiBoYXN0LCBEaWNoIGF1ZgpkZW4gQmVpbmVuIHp1IGhhbHRlbi4KRHUgZnVlaGxzdCBEaWNoIHNvIGVudHNwYW5udCwgZGFzcyBEdSBkaXJla3QgdHJhZXVtZW4ga29lbm50ZXN0LgoKWHV0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVudHNwYW5udW5nIC4uLiBvZGVyIHNvIChaZXNzdHJhLCAgNy4gRGV6IDIwMTEsIDIzOjAyOjU1KToKfiMhIHJuPVh1dGVsaXVzIHJ0PTEzMjMyOTI4OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMzIzMjkyODkwCkdyb3NzYXJ0aWcuIDspCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVudHNwYW5udW5nIC4uLiBvZGVyIHNvIChWYW5pciwgIDguIERleiAyMDExLCAxMzowNDo1OCk6Cn4jISBybj1aZXNzdHJhIHJ0PTEzMjMyOTUzNzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMzIzMjkyODkwCkRhcyBsZWJlbiBhdWYgRHJvZ2VuIGlzdCBhbnNjaGVpbmVuZCBzZWhyIGVudHNwYW5udC4KVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEVudHNwYW5udW5nIC4uLiBvZGVyIHNvIChaZXNzdHJhLCAgOC4gRGV6IDIwMTEsIDEzOjA5OjMyKToKfiMhIHJuPVZhbmlyIHJ0PTEzMjMzNDU4OTggcmc9c2NobWFycm4KfiMhIHRpZD0xMzIzMjkyODkwCkxpZWd0IGFuIGRpZXNlbiB2dWxrYW5pc2NoZW4gR2FzZW4uLi4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEVudHNwYW5udW5nIC4uLiBvZGVyIHNvIChBc3VrYSwgIDguIERleiAyMDExLCAxMzoxMzoxNyk6Cn4jISBybj1aZXNzdHJhIHJ0PTEzMjMzNDYxNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xMzIzMjkyODkwCklzdCBkb2NoIG5vcm1hbCwgZGFzIGVpbiBDaGFvdCBpbSBBbmdlc2ljaHQgZGVzIG5haGVuZGVuIFRvZGVzIHZvZWxsaWcKZW50c3Bhbm50IGlzdC4gU3RlcmJlbiBnZWhvZXJ0IGphIGJlaSBpaG0gZGF6dS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBFbnRzcGFubnVuZyAuLi4gb2RlciBzbyAoQ3JvZnQsICA4LiBEZXogMjAxMSwgMTQ6NDA6MjIpOgp+IyEgcm49QXN1a2EgcnQ9MTMyMzM0NjM5NyByZz1zY2htYXJybgp+IyEgdGlkPTEzMjMyOTI4OTAKRWJlbi4gIERhcyBpc3QgZ2V1ZWJ0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFcyBsZWJlIGRpZSBUdW5kcmEhIChab29rLCAyMi4gRGV6IDIwMTEsIDE2OjMyOjI2KToKfiMhIG9uPVpvb2sgb3Q9MTMyNDU2NzkzOSBvZz1kLnBvbGFyCn4jISBybj1DYWxkcmEgcnQ9MTMyNDU2Njc2MSByZz1kLnBvbGFyCn4jISB0aWQ9MTMyNDU2Njc2MQpJY2ggaG9mZmUsIGVzIGdpYnQgbnVuIGF1Y2ggc28gZWluZSB0b2xsZSBTdG9scGVyZmFsbGUgd2llIGluIApGZXJud2VzdC4uLiA7KQoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnZlcmVpbmlnZW4gdHV0IHdlaC4uLiAoWmVzc3RyYSwgMTYuIEphbiAyMDEyLCAyMDo1OToxNCk6CkFuIEZyZXVuZGU6IEFtIGVyc3RlbiBUYWcgdmVyZWluaWd0ZSBab29rIGRpZSBHaWxkZW4uIEFtCkFuIEZyZXVuZGU6IHp3ZWl0ZW4gVGFnIHZlcmVpbmlndGUgWm9vayBkaWUgUmFzc2VuLiBVbmQKQW4gRnJldW5kZTogc2NobGllc3NsaWNoIHZlcmVpbmlndGUgWm9vayBQYXJhY2Vsc3VzIHVuZApBbiBGcmV1bmRlOiBNb3Jnb3RoLCBHYWJ5bG9uIHVuZCBNb3Jnb3RoIHVuZCBXaW0gdW5kCkFuIEZyZXVuZGU6IEJpZXJjaGVuLi4uCltUb2Q6TGFyc10gRWluIFNjaG5lZW1vbnN0ZXIgaGF0IGdlcmFkZSBBcnNvbiB1bWdlYnJhY2h0LgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHZlcmVpbmlnZW4gdHV0IHdlaC4uLiAoWm9vaywgMTYuIEphbiAyMDEyLCAyMDo1OTo1MCk6Cn4jISBybj1aZXNzdHJhIHJ0PTEzMjY3NDM5NTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMzI2NzQzOTU0Cld1ZXJkZXN0IER1IG51biBiaXR0ZSBhdWNoIGRpZSBnZW5laWd0ZSBNdWRzY2hhZnQgZGFydWViZXIKYXVma2xhZXJlbiwgd2llIER1IHVlYmVyaGF1cHQgYXVmICJlaW5pZ2VuIiBnZWtvbW1lbiBiaXN0PyA7KSAqRyoKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHZlcmVpbmlnZW4gdHV0IHdlaC4uLiAoWmVzc3RyYSwgMTYuIEphbiAyMDEyLCAyMTowMToxOCk6Cn4jISBybj1ab29rIHJ0PTEzMjY3NDM5OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMzI2NzQzOTU0CkFiZXIgc2ljaGVyIGRvY2guIEF1ZiBkZW0gZmJhbmQgbGFzIGljaCAiVm9uIEZyZXVuZCBab29rOiBpY2ggZWluaWdlLiIKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHZlcmVpbmlnZW4gdHV0IHdlaC4uLiAoWm9vaywgMTYuIEphbiAyMDEyLCAyMTowNDoyNCk6Cn4jISBybj1aZXNzdHJhIHJ0PTEzMjY3NDQwNzggcmc9c2NobWFycm4KfiMhIHRpZD0xMzI2NzQzOTU0ClVuZCBoaWVyIG5vY2ggZGVyIGdhbnplIFp1c2FtbWVuaGFuZzoKCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBrYW5uIG1hbiBzc2QgbWl0dGxlcndlaWxlIHRyYXVlbi4KRHUgdGVpbHN0IERlaW5lbiBGcmV1bmRlbiBtaXQ6IGljaCBrZW5uIHNvIHZpZWxlLCBkaWUgZGEgbWFsIGRhcyAiaHVjaCwgc3NkCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiB3ZWciLWVybGVibmlzIGhhdHRlbi4KRGVpbmUgRnJldW5kaW4gQXN1a2EgdGVpbHQgRGlyIG1pdDogaG1tLCBpY2gga2VubiBrZWluZW4gZGVyIHNvd2FzIGhhdHRlCkR1IHRlaWxzdCBEZWluZW4gRnJldW5kZW4gbWl0OiBpY2ggZWluaWdlLgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IHZlcmVpbmlnZW4gdHV0IHdlaC4uLiAoVmFuaW9uLCAxNi4gSmFuIDIwMTIsIDIyOjIwOjMwKToKfiMhIHJuPVpvb2sgcnQ9MTMyNjc0NDI2NCByZz1zY2htYXJybgp+IyEgdGlkPTEzMjY3NDM5NTQKSWNoIGZ1ZWhsIG1pY2ggaGluLSB1bmQgaGVyZ2VyaXNzZW4uIERlciBHYWZmZXIgaW4gbWlyIHd1ZXJkZSBnZXJuZSBlaW5pZ2UgZGVyCkVpbmlndW5nZW4gc2Nob24gZ2VybmUgc2VoZW4uIERlciBSZXN0IGhhZWx0IHNpY2ggZ2VyYWRlIEF1Z2VuIHVuZCBPaHJlbiB6dS4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB2ZXJlaW5pZ2VuIHR1dCB3ZWguLi4gKEJhbWJpLCAxNy4gSmFuIDIwMTIsIDE3OjI0OjIwKToKfiMhIHJuPVZhbmlvbiBydD0xMzI2NzQ4ODMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMyNjc0Mzk1NApVbmQgZGVuIE11bmQsIGRhbWl0IGRhcyBBYmVuZGVzc2VuIGJsZWlidCwgd28gZXMgaGluZ2Vob2VydC4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChWYW5pciwgMTkuIEphbiAyMDEyLCAyMDoyMzoyNik6Ck1vZXJkZXI6R2Vpc3QgRnJpZmZzZmluZ2Vsc10gTWVpbmVuIERpZW5lcm4gd2lyc3QgRHUgbmljaHQgZW50a29tbWVuLApNb2VyZGVyOkdlaXN0IEZyaWZmc2ZpbmdlbHNdIE1lcmtvc2ghCk1vZXJkZXI6TWVya29zaF0gRGVua2UgZG9jaC4KVG9kOkxhcnNdIEVpbiBLcmFsbGVuZGVyd2lzY2ggaGF0IGdlcmFkZSBNZXJrb3NoIHVtZ2VicmFjaHQuClRvZDpEZXIgS3JhbGxlbmRlcndpc2NoXSBMZXV0ZSBtaXQgc2Nod2FjaGVtIE1hZ2VuIHdlcmRlbiBlcnN1Y2h0LCBkZXIKVG9kOkRlciBLcmFsbGVuZGVyd2lzY2hdIFVuZmFsbHN0ZWxsZSBmZXJuIHp1IGJsZWliZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcyBoYXQgdWVicmlnZW5zIC4uLiAoWm9vaywgMjQuIEphbiAyMDEyLCAxODozODowNyk6Cn4jISBvbj1ab29rIG90PTEzMjc0MjY2Nzkgb2c9YWxsZ2VtZWluZXMKLi4uIHZvciBrdXJ6ZW0gZWluIGtvbnNwaXJhdGl2ZXMgRU0tVHJlZmZlbiBnZWdlYmVuLiBNZXJrdCBJaHIgc2Nob24Kd2FzPwpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVzIGhhdCB1ZWJyaWdlbnMgLi4uIChWYW5pciwgMjQuIEphbiAyMDEyLCAyMjo1MTo0OCk6Cn4jISBybj1ab29rIHJ0PTEzMjc0MjY2ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzI3NDI2Njg3CklociBoYWJ0IGRpZSAyMyBhYmdlaGFlbmd0ID8KVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWZXJlaW5zdmVyc2FtbWx1bmdlbiBvbmxpbmUgbW9lZ2xpY2g/IChab29rLCAyNi4gSmFuIDIwMTIsIDA4OjMyOjUxKToKfiMhIHJuPUFyYXRob3JuIHJ0PTEzMjc1MzQzODggcmc9bW9yZ2VuZ3JhdWVuLnZlcmVpbgp+IyEgdGlkPTEzMjc1MzQzODgKRGEga29lbm50ZSBtYW4gZG9jaCBkZW4gV29scGVydGluZ2VyLUZhbi1DbHViIHJlYWt0aXZpZXJlbj8gRGEgZ2lidAplcyBqYSBhdWNoIGVpbiB0b29sZXMgU2l0enVuZ3MtIHVuZCBUYWdlc29yZG51bmdzLVRvb2wuIAoKVW5kIGRpZSBCT01CRSEKClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVmVyZWluc3ZlcnNhbW1sdW5nZW4gb25saW5lIG1vZWdsaWNoPyAoUnVtYXRhLCAyNi4gSmFuIDIwMTIsIDA4OjM3OjAwKToKfiMhIHJuPVpvb2sgcnQ9MTMyNzU2MzE3MSByZz1zY2htYXJybgp+IyEgdGlkPTEzMjc1MzQzODgKRHUgaGFzdCBkb29mZSBPaHJlbiEgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFZlcmVpbnN2ZXJzYW1tbHVuZ2VuIG9ubGluZSBtb2VnbGljaD8gKFplc3N0cmEsIDI2LiBKYW4gMjAxMiwgMDk6MjU6MzApOgp+IyEgcm49Wm9vayBydD0xMzI3NTYzMTcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMyNzUzNDM4OApPaC4gRGEgd2lyZCBzaWNoIEFyYXRob3JuIGFiZXIgZnJldWVuLiBBbiBkaWVzZXIgVmVyZWluc3ZlcndhbHR1bmdzdG9vbCBoYWJlbgpBcmF0aG9ybiB1bmQgaWNoIEFGQUlSIDItMyBBYmVuZGUgdmVyYmFzdGVsdC4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRyb2h1bmdlbiAuLi4gKFh1dGVsaXVzLCAgNi4gRmViIDIwMTIsIDE5OjQ3OjMzKToKW01vZXJkZXI6R2Vpc3QgZWluZXMgZ2xhZW56ZW5kZW4gU2NodXBwZW53eXJtc10gSWNoIGxhc3MgRGljaCB2b24gWm9vawpbTW9lcmRlcjpHZWlzdCBlaW5lcyBnbGFlbnplbmRlbiBTY2h1cHBlbnd5cm1zXSBhYmhhZW5nZW4sIEtlbG5venohClpvb2sgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgoKWHV0KgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERyb2h1bmdlbiAuLi4gKFpvb2ssICA3LiBGZWIgMjAxMiwgMTI6MzY6NDgpOgp+IyEgcm49WHV0ZWxpdXMgcnQ9MTMyODU1NDA1MyByZz1zY2htYXJybgp+IyEgdGlkPTEzMjg1NTQwNTMKV293aWV3YXM/IFdlbiBtdXNzIGljaCBsb2VzY2hlbj8KWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRHJvaHVuZ2VuIC4uLiAoWmVzc3RyYSwgIDcuIEZlYiAyMDEyLCAxMjo0MDo1NSk6Cn4jISBybj1ab29rIHJ0PTEzMjg2MTQ2MDggcmc9c2NobWFycm4KfiMhIHRpZD0xMzI4NTU0MDUzCktlbG5vei4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5vY2ggbmljaCBtYSBpbiBSdWhlIGlkZWxuIGthbm4gbWFuIC4uLi4gKFpvb2ssIDExLiBGZWIgMjAxMiwgMTY6NDk6MjApOgpLbnogd2FuZGVsdCBoZXJlaW4uCktueiBnaWJ0IERpciBlaW5lbiBCcmllZi4KS256IHdpbmt0LgpLbnogd2FuZGVsdCBuYWNoIHVudGVuLgpbQWJlbnRldWVyOjxRdWVzdD5dIEtueiBoYXQgc2ljaCBhbHMgQnJpZWZ0cmFlZ2VyIGJld2FlaHJ0LiAKCloKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOb2NoIG5pY2ggbWEgaW4gUnVoZSBpZGVsbiBrYW5uIG1hbiAuLi4uIChSdW1hdGEsIDExLiBGZWIgMjAxMiwgMTg6MjA6MjUpOgp+IyEgcm49Wm9vayBydD0xMzI4OTc1MzYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMyODk3NTM2MApNaWNoIGhhdCBlciBhdWNoIGhlaW1nZXN1Y2h0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXVzZmx1ZyBUaGFpbGFuZCAoQW5hdG9sLCAxNS4gRmViIDIwMTIsIDA3OjQ1OjMzKToKfiMhIHJuPUFyayBydD0xMzI5MjM4MDA1IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xMzI5MjM4MDA1Cld1c3N0ZSBuaWNodCwgZGFzcyBkaWUgQmVzdGVsbGZyaXN0ZW4gc28gbGFuZyBzaW5kLiBOb2NoIGVpbiBiaXNzY2hlbiAKbGFlbmdlciB1bmQgc2llIHdlcmJlbiBtaXQgIlpldWd1bmcgYXVmIEFuZnJhZ2UiIG9kZXIgIlN0ZWxsZW4gU2llIEhJRVIKSWhyIFd1bnNjaHNjaHdpZWdlcmVsdGVybnBhYXIgenVzYW1tZW4hIgoKKmR1Y2sqIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0YXRpIGluIEJvY2h1bSBhbSAyNi4yLiAoVmFuaW9uLCAyMC4gRmViIDIwMTIsIDIyOjUwOjI3KToKfiMhIHJuPVplc3N0cmEgcnQ9MTMyOTY4OTk0MiByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMzI5Njg5OTQyCkhhYiBTdGFzaSBzdGF0dCBTdGF0aSBnZWxlc2VuLiBPYiBkYXMgYW4gR2F1Y2sgbGllZ3Q/CgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdGF0aSBpbiBCb2NodW0gYW0gMjYuMi4gKFplc3N0cmEsIDIwLiBGZWIgMjAxMiwgMjM6MDg6MTApOgp+IyEgcm49VmFuaW9uIHJ0PTEzMjk3NzQ2Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzI5Njg5OTQyCldpciBiZXNjaGxpZXNzZW4gYW4gZGVtIFRhZyBlaW5mYWNoIGRpZSBFaW5mdWVocnVuZyBkZXIKVm9ycmF0c2RhdGVuc3BlaWNoZXJ1bmcgaW0gTUcsIGRhbm4gcGFzc3QgZGFzIG1pdCBkZXIgU3Rhc2kgc2Nob24uCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdGF0aSBpbiBCb2NodW0gYW0gMjYuMi4gKFpvb2ssIDIzLiBGZWIgMjAxMiwgMTc6MDg6MzIpOgp+IyEgcm49WmVzc3RyYSBydD0xMzI5Nzc1NjkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMyOTY4OTk0MgpIYWJlbiB3aXIgbm9jaCBuaWNodD8KWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk9tZW4gLi4uIChBcmssICA0LiBNYXIgMjAxMiwgMjM6MzU6MzQpOgpEZXIgSGltbWVsIHZlcmR1bmtlbHQgc2ljaCBpbW1lciBtZWhyLgpLbmFyemtuYXJ6IGZhZWxsdCB0b3QgenUgQm9kZW4uCkR1IHNpZWhzdCBlaW5lIGR1bmtsZSBHZXN0YWx0LCBkaWUgZXR3YXMgRHVuc3QgZWluc2FtbWVsdCAuLi4gb2RlciB2aWVsbGVpY2h0CmJpbGRlc3QgZHUgRGlyIGRhcyBhdWNoIG51ciBlaW4gLi4uCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU28gd2FyIGRhcyBhYmVyIG5pY2h0IGdlbWVpbnQgLi4uIChLZWxub3p6LCAxMS4gTWFyIDIwMTIsIDEwOjE1OjM3KToKRGVyIFJpbmcgaXN0IHd1ZXRlbmQhIEVyIHdpbGwgbWVociBCbHV0IQogIG5vcm1hbC9HZWJldGVuIFVyaWVsIDogRGljaCAqKioqKioqKiA8LSB6dSBCcmVpCkRlciBUZWRkeSBrbnVkZGVsdCBEaWNoIGVpbiBsZXR6dGVzIE1hbC4KW1RvZDpMYXJzXSBVcmllbCBoYXQgZ2VyYWRlIEtlbG5venogdW1nZWJyYWNodC4KW1RvZDpVcmllbF0gUHJlaXNldCBkZW4gSGVycm4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFtYXJ5bGxpcywgMTQuIE1hciAyMDEyLCAxMzoyOToyNSk6CltBYmVudGV1ZXI6U2FyYXldIGhpbGZlLCBrb21tdCBtYW4gYXVzIGRlciBwZmxhbnplIHdpZWRlciByYXVzPwpbQWJlbnRldWVyOktuel0gamEKW0FiZW50ZXVlcjpTYXJheV0gd2llIGRlbm4/IGljaCBzdGVyYiBicmFkCltUb2Q6TGFyc10gRWluIFZlbnVzYWJlbnRldXJlcmZhbGxlIGhhdCBnZXJhZGUgU2FyYXkgdW1nZWJyYWNodC4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IDE5IEphaHJlIHVuZCAzNTggVGFnZSAtIE9kZXIgZGVyIDIwLiBHZWJ1cnRzdGFnIT8gKFpvb2ssIDE5LiBNYXIgMjAxMiwgMTA6NDg6MDQpOgp+IyEgcm49Wm9vayBydD0xMzMyMTUwNDYxIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTMzMjEwNTgwMQpEYXJmIGljaCdzIHplcmJlaXNzZW4/Clpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGZXR0ZXIgV2FuZGxlciEgKE1pcmFrYSwgMjIuIE1hciAyMDEyLCAwOTozNzowMCk6CkVpbiBXYW5kbGVyIHdhYmVydCBoZXJlaW4uCklyZ2VuZHdpZSBiZXNjaGxlaWNodCBEaWNoIGdlcmFkZSBlaW4ga29taXNjaGVzIEdlZnVlaGwsIGFscyBvYiBnbGVpY2gKaXJnZW5kd2FzIHBhc3NpZXJlbiB3aXJkLgpEdSBzcHVlcnN0IGVpbiBsZWljaHRlcyBWaWJyaWVyZW4gdW50ZXIgZGVuIEZ1ZXNzZW4uCkRlciBXYW5kbGVyIHdhYmVydCBkZW4gSGFuZyBoaW5hdWYuCkVpbiBnZXdhbHRpZ2VzIEdyb2xsZW4gZXJ0b2VudCB1bmQgZGllIEVyZGUgYmVnaW5udCB6dSBiZWJlbiEKRGFzIEdyb2xsZW4gaXN0IGluendpc2NoZW4gZWluZW0gbGF1dGVuIERvbm5lciBnZXdpY2hlbi4gRGFzIEJlYmVuIHdpcmQgaW1tZXIKc3RhZXJrZXIuIFZpZWxsZWljaHQgc29sbHRlc3QgRHUgZWluZW4gc2ljaGVyZW4gT3J0IGF1ZnN1Y2hlbi4gQWJlciBnaWJ0IGVzCmRlbiBoaWVyPwpEdSB2ZXJuaW1tc3Qgdm9sbGVyIFNjaHJlY2tlbiBlaW4gbGF1dGVzIFBvbHRlcm4gYXVzIGRlbiBCZXJnZW4uIERhIHdpcmQgZG9jaApuaWNodCBnbGVpY2ggZWluZSBHZXN0ZWluc2xhd2luZSBhdWYgRGljaCBoZXJhYnN0dWVyemVuPwpEaWUgRXJkZSBiZWJ0IG51biBpbnp3aXNjaGVuIHNvIHN0YXJrLCBkYXNzIER1IFNjaHdpZXJpZ2tlaXRlbiBoYXN0LCBEaWNoIGF1ZgpkZW4gQmVpbmVuIHp1IGhhbHRlbi4KQWNoIER1IFNjaGFuZGUhIEFuIGRlbSBBYmhhbmcgdWViZXIgRGlyIGltIE5vcmR3ZXN0ZW4gc2NoZWludCBzaWNoIGVpbmUKR2Vyb2VsbGxhd2luZSB6dSBsb2VzZW4hCkltbWVyIG1laHIgR2Vyb2VsbCBnZXJhZXQgdWViZXIgRGlyIGlucyBSdXRzY2hlbi4gSG9mZmVudGxpY2ggc3RlaHQgZG9ydApuaWVtYW5kLCBkZXJqZW5pZ2UgaGFldHRlIGVpbmVuIHNjaHdlcmVuIFN0YW5kLCBzaWNoIHp1IGhhbHRlbi4KRGllIExhd2luZSBtaXQgZWluZXIgZ2V3YWx0aWdlbiBTdGF1YndvbGtlIGRhcnVlYmVyIHJhc3QgZG9ubmVybmQgaGluYWIsCmdlcmFkZXdlZ3MgYXVmIGRhcyBXZWluYW5iYXVnZWJpZXQgenUuCkRpciBlbnRmYWVocnQgZWluIFNldWZ6ZXIgZGVyIEVybGVpY2h0ZXJ1bmcuIERpZSBMYXdpbmUgaXN0IHRhdHNhZWNobGljaCBrbmFwcApvYmVyaGFsYiBkZXIgUmVic3RvZWNrZSB6dW0gU3RlaGVuIGdla29tbWVuLiBEdSB1bmQgZGllIFBmbGFuemVuIGhhYmVuIHdvaGwKbm9jaG1hbCBHbHVlY2sgZ2VoYWJ0LgpBbGxtYWVobGljaCBiZXJ1aGlndCBzaWNoIGRpZSBFcmRlIHdpZWRlci4gRXJsZWljaGVydCBhdG1lc3QgRHUgYXVmIHVuZApmdWVobHN0IERpY2ggd2llZGVyIHNpY2hlci4KRWluIFdhbmRsZXIgd2FiZXJ0IGhlcmVpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlaGJyYXRlbj8gKEJ1Z2ZpeCwgMjMuIE1hciAyMDEyLCAyMTozNDo1MSk6CkJhbWJpIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KRGVpbiBGcmV1bmQgQmFtYmkgdGVpbHQgRGlyIG1pdDogaGlobwpEZWluZSBGcmV1bmRpbiBTYXJheSB0ZWlsdCBEaXIgbWl0OiBzbywgZW5kbGljaCBtYWwgd2FzIGVzc2VuLi4uIDotRAoKQkYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZWhicmF0ZW4/IChTYXJheSwgMjMuIE1hciAyMDEyLCAyMjozNToyNik6Cn4jISBybj1CdWdmaXggcnQ9MTMzMjUzNDg5MSByZz1zY2htYXJybgp+IyEgdGlkPTEzMzI1MzQ4OTEKR3Jvc3NhcnRpZyEKT2ssIGpldHp0IHZlcnN0ZWhlIGljaCBhdWNoIEJhbWJpcyB2ZXJ3aXJyZW5kZSBGcmFnZSwgb2IgaWNoIGlobiBmcmVzc2VuCndvbGx0ZS4KV2VuIGVzIGludGVyZXNzaWVydDoKZXMgZ2FiIFBpenphIHVuZCBhdXNzZXJkZW0gYmluIGljaCBWZWdldGFyaWVyaW4uClJlaGUgaGFiZW4gdm9uIG1pciBuaXggenUgYmVmdWVyY2h0ZW4gOi1ELgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSZWhicmF0ZW4/IChab29rLCAyMy4gTWFyIDIwMTIsIDIyOjU0OjQ3KToKfiMhIHJuPVNhcmF5IHJ0PTEzMzI1Mzg1MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMzMyNTM0ODkxCk9iIGRhcyBEdSBzY2hvbiBqZXR6dCBoYWV0dGVzdCB2ZXJrdWVuZGVuIHNvbGxlbj8KWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUmVoYnJhdGVuPyAoRGVlcGJsdWUsIDI0LiBNYXIgMjAxMiwgMTI6MjU6NDQpOgp+IyEgcm49Wm9vayBydD0xMzMyNTM5Njg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMzMjUzNDg5MQpFZ2FsLCBiZWtvbW0gaWNoIGhhbHQgbmUgZG9wcGVsdGUgUG9ydGlvbiBSZWhrZXVsZSA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFByb3Rva29sbCBkZXIgTWl0Z2xpZWRlcnZlcnNhbW1sdW5nIDIwMTIgKFpvb2ssIDMwLiBNYXIgMjAxMiwgMTE6MTA6MzIpOgp+IyEgb249Wm9vayBvdD0xMzMzMDk4NjI3IG9nPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHJuPUNhbGRyYSBydD0xMzMzMDUxNDMzIHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD0xMzMzMDUxNDMzClBhaCwgdW5kIHdhcyBpc3QgbWl0IG1laW5lbSBWb3JzY2hsYWcsIGRlbiBXb2xwaS1DbHViIHdpZWRlcnp1ZWJlbGViZW4/IDspIApEZW4ga2FubiBtYW4genVtaW5kZXN0IHNwcmVuZ2VuISAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGJydW5jaD8gKFpvb2ssICAxLiBBcHIgMjAxMiwgMTk6NDQ6MzIpOgp+IyEgb249Wm9vayBvdD0xMzMzMzAyMjY0IG9nPXRyZWZmZW4KfiMhIHJuPVplc3N0cmEgcnQ9MTMzMzI5NTg1NSByZz10cmVmZmVuCn4jISB0aWQ9MTMzMzIyNDczNgpaZXNzdHJhIHd1ZXJkZSBlaW5mYWNoIGdlcm5lIGRhbm4gYWIgc28gTWl0dGUgTWFpIG5vY2ggCnRpZWZlciBpbiBkaWUgc2Nod2FlYmlzY2hlIEt1bHR1ciBlaW50YXVjaGVuLiBWb24gZGFoZXI6IApBbGxlIERhdW1lbiBob2NoISAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBicnVuY2g/IChWZWN0b3IsICAxLiBBcHIgMjAxMiwgMTk6NDY6MTUpOgp+IyEgcm49Wm9vayBydD0xMzMzMzAyMjcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMzMzIyNDczNgprdWx0dXI/PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogYnJ1bmNoPyAoWm9vaywgIDEuIEFwciAyMDEyLCAxOTo0Nzo1MSk6Cn4jISBybj1WZWN0b3IgcnQ9MTMzMzMwMjM3NSByZz1zY2htYXJybgp+IyEgdGlkPTEzMzMyMjQ3MzYKR3V0ZXIgSGlud2Vpcy4gQWxzbyBpY2ggaGF0dGUgZGEgYW4gZWluZW4gc2VociB3ZWl0ZW4KQmVncmlmZiB2b24gS3VsdHVyIGdlZGFjaHQsIHdpZSBlcyB2aWVsbGVpY2h0IGRpZSAKV2lzc2Vuc2NoYWZ0bGVyIHp1ciBCZXNjaHJlaWJ1bmcgZGVyIEVpZ2VuYXJ0ZW4gZGllc2VzClZvZWxrY2hlbnMgdmVyd2VuZGVuIHd1ZXJkZW4uCgpBdXNzZXJkZW0gd29sbHRlIGljaCBqYSBrZWluZW0genUgbmFoZSB0cmV0ZW4uIDopIAoKWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogYnJ1bmNoPyAoR2xvaW5zb24sICAxLiBBcHIgMjAxMiwgMjA6MDI6NDUpOgp+IyEgcm49Wm9vayBydD0xMzMzMzAyNDcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMzMzIyNDczNgpaZXNzdHJhIGRhcmYgZ2VybiBiZWkgdW5zIHp1ciBLZWhyd29jaGUga29tbWVuLiAoQWNobWlzdCwgd2lyIEJhZGVuc2VyIGhhYmVuCmphIGdhciBrZWluZS4pCgpNb21lbnRhbiwgd2llIG1hbiBhdWNoIGFuIHVuc2VyZW4gTVVELVBhcnR5LUVpbnRyYWVnZW4gc2llaHQsIGhhYmVuIHdpciBrZWluZQpUZXJtaW52b3JzdGVsbHVuZ2VuIGZ1ZXIgZGllIG5hZWNoc3RlbiBNb25hdGUuIFdlciB6dWVyc3QgZWluZW4gVGVybWluIG1hY2h0Ci4uLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IGJydW5jaD8gKFZlY3RvciwgIDEuIEFwciAyMDEyLCAyMDowNDowMik6Cn4jISBybj1HbG9pbnNvbiBydD0xMzMzMzAzMzY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTMzMzIyNDczNgouLi4uZGVyIG11c3MgZGVuIHNjaHdhYmVuIGt1bHR1ciBiZWlicmluZ2VuPwpgLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogYnJ1bmNoPyAoR2xvaW5zb24sICAxLiBBcHIgMjAxMiwgMjA6MTY6NTEpOgp+IyEgcm49VmVjdG9yIHJ0PTEzMzMzMDM0NDIgcmc9c2NobWFycm4KfiMhIHRpZD0xMzMzMjI0NzM2CkF1Y2guIE5vdGZhbGxzIG1pdCBHZXdhbHQuIERlciBMYWRlbiwgaW4gZGVtIHdpciBuYWNoIGRlciBQYXJ0eSBnZWJydW5jaHQKaGFiZW4sIHZlcmFuc3RhbHRldCBkaWVzZW4gQnJ1bmNoIHVlYnJpZ2VucyByZWdlbG1hZXNzaWcuCgpodHRwOi8vd3d3LmFkbGVyLWJldXJlbi5kZS8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYXVzIGRlLmFsdC5uZXRkaWdlc3QgKEdsb2luc29uLCAxMS4gQXByIDIwMTIsIDIyOjAwOjIzKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xMzM0MTcyMzUzIHJnPXNjaG1hcnJuLm5ldGRpZ2VzdAp+IyEgdGlkPTEzMzQxNzIzNTMKRnVyY2h0YmFyLiBFcyBnaWJ0IG5vY2ggTGV1dGUsIGRpZSBVc2VuZXQgbnV0emVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNjaHVsZC4uLiAoWHV0ZWxpdXMsIDE3LiBBcHIgMjAxMiwgMjE6Mjk6MzQpOgpbVG9kOkxhcnNdIEVpbiBFaXNnaWdhbnQgaGF0IGdlcmFkZSBKYW1hbCB1bWdlYnJhY2h0LgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBFaXNnaWdhbnRlbl0gVmFuaXIgaXN0IHNjaHVsZCEKClh1dCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIZXNzZW50YWcgaW4gV2V0emxhciAoR2xvaW5zb24sIDIyLiBBcHIgMjAxMiwgMjA6NTg6MjUpOgp+IyEgcm49U3JhYmkgcnQ9MTMzNTEyMDk2MCByZz10cmVmZmVuCn4jISB0aWQ9MTMzNTEyMDk2MApTb2xsdGUgU2lsYmVybWFtcGYgbmljaHQgbGFuZ3NhbSBudXIgVm9yZ3J1cHBlIHZvbiBGcmlkYSBHb2xkIHNlaW4/IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZpcmdpbnMgaW4gSGVhdmVuLi4uIChCYW1idWxrbywgIDIuIE1haSAyMDEyLCAxODowMDo1Myk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTMzNTk3NDMxMCByZz13d3cKfiMhIHRpZD0xMzM1OTc0MzEwCkRhcyBzaW5kIGphIG51ciAxMC4uLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFtYXJ5bGxpcywgMjEuIE1haSAyMDEyLCAwMTozNzo0Nyk6CltBbGxnZW1laW46WmFwaG9iXSBhcmdsIGhhYiBtaWNoIGluIGRlbiBrYXRha29tYmVuIHZlcmxhdWZlbiA6KApbVG9kOkxhcnNdIEVpbiBab21iaWV2aXJ1cyBoYXQgZ2VyYWRlIFphcGhvYiB1bWdlYnJhY2h0LgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUZWRkeXJlcG9ydC4uLiAoQW1hcnlsbGlzLCAyMS4gTWFpIDIwMTIsIDIzOjEwOjQwKToKfiMhIHJuPVplc3N0cmEgcnQ9MTMzNzYyOTMyNyByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTEzMzc2MjYxMjkKQWxzbyBtaXQgZGVtIFJlYm9vdCBrYW5uIGljaCBnZXJuZSBuYWNoaGVsZmVuLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbWFyeWxsaXMsIDI2LiBNYWkgMjAxMiwgMjM6Mzk6MjcpOgpbQWxsZ2VtZWluOlNwYXJrbGVdIGthbm4gam1kIGJlaSBkZXIgaHlkcmEgaGVsZmVuID8KLi4uCltUb2Q6TGFyc10gRWluIEh5ZHJha29wZiBoYXQgZ2VyYWRlIFNwYXJrbGUgdW1nZWJyYWNodC4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKFNwYXJrbGUsIDI2LiBNYWkgMjAxMiwgMjM6NDY6NDIpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEzMzgwNjgzNjcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzM4MDY4MzY3CkphamEsIHdhciB3b2hsIG5pY2h0IG1laW5lIGdsb3JlaWNoc3RlIElkZWUgaGV1dGUsIGRhcyBTb2xvIHp1IHByb2JpZXJlbi4gV2VyCm5pY2h0IGhvZXJlbiB3aWxsLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS0EgU3RhdGkgMzEuMDUuIChSdW1hdGEsIDMxLiBNYWkgMjAxMiwgMTQ6MjM6MTEpOgp+IyEgcm49R2luZ2tvIHJ0PTEzMzg0NjU4NzYgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTMzODQ2NTg3NgpEYXMgSmFzbWluIGhhdCBCZXRyaWVic3VybGF1Yi4gVmllbGxlaWNodCBzb2xsdGUgbWFuIGRhcyBUcmVmZmVuCmt1cnpmcmlzdGlnIGlucyBQb3J0b2JlbGxvIHZlcmxlZ2VuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllc21hbCAoZmFzdCkgYW5kZXJzcnVtIC4uLiBhYmVyIGlyZ2VuZHdpZSBwYXNzZW5kLiAoQXJrLCAxMC4gSnVuIDIwMTIsIDE5OjMxOjUyKToKW01vZXJkZXI6S2VsbHlCdW5keV0gRnJlaWhlaXQgZnVlciBPcmFuZ2VuISBOaWVkZXIgbWl0IE9ua2VsIERpdHRtZXllciEKW01vZXJkZXI6R2Vpc3QgZWluZXMgcm90ZW4gRHJhY2hlbl0gSGFlaD8KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpkYXMgdWVibGljaGUuLi4gKFpvb2ssIDE1LiBKdW4gMjAxMiwgMTA6Mzk6NTcpOgpFaW4gZnVlcmNodGVybGljaGVzIEJlYmVuIGVyc2NodWV0dGVydCBkaWUgRGltZW5zaW9uZW4gaW4gaWhyZW4gR3J1bmRmZXN0ZW4uCkRlaW4gRnJldW5kIFZlY3RvciBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuIAoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRU0gKEFtYXJ5bGxpcywgMjQuIEp1biAyMDEyLCAwNTozMDoxNik6CkljaCB3dXNzdGUgc2Nob24gaW1tZXIsIGRhc3MgRnVzc2JhbGwgaGF1cHRzYWVjaGxpY2ggZWluIFVudGVyc2NoaWNodGVuLVNwb3J0CmlzdDoKCmh0dHA6Ly93d3cuYmlsZHNjaGlybWFyYmVpdGVyLmNvbS9jb250ZW50L2ltYWdlcy9waWNkdW1wLTEyLTA2LTIyL3BpY2R1bXAtMTItMAo2LTIyLTA4MS5qcGcKaHR0cDovL3d3dy5iaWxkc2NoaXJtYXJiZWl0ZXIuY29tL2NvbnRlbnQvaW1hZ2VzL3BpY2R1bXAtMTItMDYtMjIvcGljZHVtcC0xMi0wCjYtMjItMTMxLmpwZwoKOykKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTm9jaCBlaW4gRU0tRnVuZHN0dWVjayAoQW1hcnlsbGlzLCAyNC4gSnVuIDIwMTIsIDA1OjQzOjIyKToKaHR0cDovL3NjaHVzY2hibG9nLmRlL3dwLWNvbnRlbnQvdXBsb2Fkcy9ob2xsYW5kX2lzdF9yYXVzLTMyMHgyNDAuanBnCgpBbWEgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBFTSAoWmVzc3RyYSwgMjcuIEp1biAyMDEyLCAxOTowOTo1Nik6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTM0MDUwODYxNiByZz1zY2htYXJybgp+IyEgdGlkPTEzNDA1MDg2MTYKSWNoIGtvZW5udGUgbWlyIHNvZ2FyIHZvcnN0ZWxsZW4sIGRhc3MgZGFzIExldXRlIGFic2ljaHRsaWNoIG1hY2hlbi4gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFZhbmlyLCAzMC4gSnVuIDIwMTIsIDEzOjE2OjQ3KToKW1NlaGVyOkJydW1dIFdpciBicmF1Y2hlbiBoaWxmZSBiZWltIFZhbXBpciBpbSBmcmlkaG9mIGRlciBjaGFvc2dpbGRlCltUb2Q6TGFyc10gRWluIFZhbXBpciBoYXQgZ2VyYWRlIEJydW0gdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZvZWxsaWcgYXVzIGRlbSBadXNhbW1lbmhhbmcsIGRlbm5vY2ggdmVyZGFlY2h0aWcgLi4uIChBcmssIDI1LiBKdWwgMjAxMiwgMjA6Mzg6NDMpOgpEdSB0ZWlsc3QgTW9vbnNoaW5lIG1pdDogamV0enQgaGFzdCBkdSBkZW4gYXJtZW4gdmVjdG9yIHZlcmdyYXVsdCA6KQpNb29uc2hpbmUgdGVpbHQgRGlyIG1pdDogZGVyIGtvbW10IHdpZWRlciwgZGVyIGJyYXVjaHQgbWljaCwgZGVyIHdpbGwgbWljaCA7LSkKRHUgdGVpbHN0IE1vb25zaGluZSBtaXQ6IGh1cmdzIDspClZlY3RvciAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWb2VsbGlnIGF1cyBkZW0gWnVzYW1tZW5oYW5nLCBkZW5ub2NoIHZlcmRhZWNodGlnIC4uLiAoVmVjdG9yLCAyNS4gSnVsIDIwMTIsIDIwOjQ2OjA3KToKfiMhIHJuPUFyayBydD0xMzQzMjQxNTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM0MzI0MTUyMwp3YXNjaHQgaWhyIGV1Y2ggbWFsIGVyc3QgYW5zdGFlbmRpZyB1bnRlciBldXJlciBrdXR0ZSA6KQpqYXdvaGw6IGJlaWRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBWb2VsbGlnIGF1cyBkZW0gWnVzYW1tZW5oYW5nLCBkZW5ub2NoIHZlcmRhZWNodGlnIC4uLiAoQW5hdG9sLCAyNi4gSnVsIDIwMTIsIDA4OjQyOjE2KToKfiMhIHJuPVZlY3RvciBydD0xMzQzMjQxOTY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM0MzI0MTUyMwpXaWxsIGljaCBLZW5udG5pcyBkYXZvbiBoYWJlbiwgd29oZXIgRHUgZGllc2VzIERldGFpbHdpc3NlbiBoYXN0PwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldhcyBrb2VubnRlICJqYWlsIiBoZWlzc2VuPyAoRGVyaW4sIDExLiBBdWcgMjAxMiwgMTY6MDU6MDUpOgogIEh1aHUsCgpsZWlkZXIgYXVmIGVuZ2xpc2NoLCBhYmVyIHRyb3R6ZGVtIGtvZXN0bGljaDoKCltBbGxnZW1laW46R2FzdDFdIEV1c2ViaXVzIEkgaGF0ZSB5b3UsIEkndmUgYmVlbiB0YWxraW5nIHRvIHlvdSBmb3IgYSB3aGlsZSB0bwpbQWxsZ2VtZWluOkdhc3QxXSBnZXQgb3V0IG9mIGphaWwgYnV0IHlvdSBjYW4ndCBzcGVhayBldmVuIGVub3VnaCBlbmdsaXNoIHRvCltBbGxnZW1laW46R2FzdDFdIHNheSB0aGF0PwoKSW1tZXIgbm9jaCBsYWNoZW5kLApEZXJpbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXMga29lbm50ZSAiamFpbCIgaGVpc3Nlbj8gKFJ1bWF0YSwgMTEuIEF1ZyAyMDEyLCAyMDo0MjowOSk6Cn4jISBybj1EZXJpbiBydD0xMzQ0NjkzOTA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM0NDY5MzkwNQpHdXQsIGRhc3MgaWhtIHdlbmlnc3RlbnMgZWluZXIgenVob2VydC4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdhcyBrb2VubnRlICJqYWlsIiBoZWlzc2VuPyAoQXJrLCAxMi4gQXVnIDIwMTIsIDEyOjM5OjAxKToKfiMhIHJuPVJ1bWF0YSBydD0xMzQ0NzEwNTI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM0NDY5MzkwNQpFdXNlYml1cyBhbHMgU3BhbS1KYWVnZXIgLi4uIG9iIGRhcyBQdW1hICh2b24gZGVtIGlzdCBkZXIgZG9jaCwgb2Rlcj8pIG1hbCBzbwpwbGFudGU/IDotRAoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdhcyBrb2VubnRlICJqYWlsIiBoZWlzc2VuPyAoSHVtbmksIDEzLiBBdWcgMjAxMiwgMTY6NTg6NTMpOgp+IyEgcm49QXJrIHJ0PTEzNDQ3Njc5NDEgcmc9c2NobWFycm4KfiMhIHRpZD0xMzQ0NjkzOTA1CkljaCBzYWdzIGdlcm5lOiBJY2ggYmluIHRvdGFsIGJlZ2Vpc3RlcnQuIEVpbmVtIFRyb2xsIG1pdCBFdXNlYml1cyB6dQpiZWdlZ25lbiwgZGVyIGRhbm4gYXVjaCBub2NoIHByb21wdCBkZW4gVHVyaW5nLUF3YXJkIGJla29tbXQuLi4gUmVzcGVrdCEKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXYXMga29lbm50ZSAiamFpbCIgaGVpc3Nlbj8gKFplc3N0cmEsIDE0LiBBdWcgMjAxMiwgMjM6NDE6MDcpOgp+IyEgcm49SHVtbmkgcnQ9MTM0NDg2OTkzMyByZz1zY2htYXJybgp+IyEgdGlkPTEzNDQ2OTM5MDUKSWNoIGJpbiBlYmVuZmFsbHMgdG90YWwgYmVnZWlzdGVydC4gVG90YWwgdG9sbC4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUcnZlcy5kZS1tYWlsYWRyZXNzZW4gKEFuYXRvbCwgMjEuIEF1ZyAyMDEyLCAxMzoyNTowMyk6Cn4jISBybj1Hbm9tZSBydD0xMzQ1NTQ3Nzg4IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTEzNDU1NDc3ODgKInNpbmQgZ2V3YW5kZXJ0IHdvcmRlbiI/IEFsc28gRnV0dXIgSUlJIHNpZWh0IGFuZGVycyBhdXMuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBUcnZlcy5kZS1tYWlsYWRyZXNzZW4gKEdub21lLCAyMS4gQXVnIDIwMTIsIDEzOjI4OjMxKToKfiMhIHJuPUFuYXRvbCBydD0xMzQ1NTQ4MzAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM0NTU0Nzc4OApJc3QgamEgYXVjaCBGdXR1ciBJVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFRydmVzLmRlLW1haWxhZHJlc3NlbiAoUnVtYXRhLCAyMS4gQXVnIDIwMTIsIDEzOjMwOjMwKToKfiMhIHJuPUdub21lIHJ0PTEzNDU1NDg1MTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMzQ1NTQ3Nzg4Ck5pY2h0IHByYWVzZXJ2YXRpdiBpbXBlcmZla3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBUcnZlcy5kZS1tYWlsYWRyZXNzZW4gKFNreSwgMjEuIEF1ZyAyMDEyLCAxMzozMDo0Nyk6Cn4jISBybj1SdW1hdGEgcnQ9MTM0NTU0ODYzMCByZz1zY2htYXJybgp+IyEgdGlkPTEzNDU1NDc3ODgKYmFjayB0byB0aGUgZnV0dXJlIDIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFRydmVzLmRlLW1haWxhZHJlc3NlbiAoSGlnaGxhbmRlciwgMjEuIEF1ZyAyMDEyLCAxNDowNzo1MSk6Cn4jISBybj1Ta3kgcnQ9MTM0NTU0ODY0NyByZz1zY2htYXJybgp+IyEgdGlkPTEzNDU1NDc3ODgKQ2FwdGFpbiBGdXR1cmUKCkhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogVHJ2ZXMuZGUtbWFpbGFkcmVzc2VuIChBbmF0b2wsIDIxLiBBdWcgMjAxMiwgMTQ6NDI6MDApOgp+IyEgcm49SGlnaGxhbmRlciBydD0xMzQ1NTUwODcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM0NTU0Nzc4OApLbGFwcGUsIEd1bW1pcHVwcGUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZyb3NjaGUgKFpvb2ssIDMxLiBBdWcgMjAxMiwgMDk6MTM6MTkpOgp+IyEgb249Wm9vayBvdD0xMzQ2Mzk3MTg0IG9nPWdpbGRlbi56YXViZXJlcgp+IyEgcm49Q2hhZ2FsbCBydD0xMzQ2Mzk1NzE0IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTEzNDYzOTU3MTQKR2VodCEKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGcm9zY2hlIChDaGFnYWxsLCAzMS4gQXVnIDIwMTIsIDA5OjE4OjMwKToKfiMhIHJuPVpvb2sgcnQ9MTM0NjM5NzE5OSByZz1zY2htYXJybgp+IyEgdGlkPTEzNDYzOTU3MTQKRHUgaGFzdCBnZXNjaHVtbWVsdCwgZGFzIGdpbHQgbmljaHQuCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFiIGF1ZiBkaWUgSW5zZWwgLi4uIChab29rLCAgNS4gU2VwIDIwMTIsIDEwOjUxOjUxKToKfiMhIHJuPVpvb2sgcnQ9MTM0NjgzNTA4NCByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTM0NjgzNTA4NApXdW5kZXJ0IEV1Y2ggbmljaHQgdWViZXIgZGllIFVyc3BydW5nc3J1YnJpay4gCgpLbGFzc2lzY2ggVmVyem9va2VsdC4KCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0YW1tdGlzY2ggaW4gQm9jaHVtIGFtIDA0LjExLjIwMTIgKEdub21lLCAgMi4gTm92IDIwMTIsIDEyOjMzOjA0KToKfiMhIHJuPUFyYXRob3JuIHJ0PTEzNTE4MTU0MDYgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTM1MTgxNTQwNgpkZXIgc3BlY2lhbCBndWVzdCBpc3QgYWxzbyBhdXN3YWVydGlnPyB3aWVzbyBzb2xsIG1hbiBkYW5uIGtvbW1lbj8gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFRlYW1zcGVhay1TZXJ2ZXIgKEFyYXRob3JuLCAgNS4gTm92IDIwMTIsIDIyOjM4OjQzKToKfiMhIHJuPVphcGhvYiBydD0xMzUyMTUxMTQ1IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTM0NDg4NDYwOQpVbmQgYXVzc2VyZGVtOiBNdW1ibGUgLSBkYSB2ZXJzdGVodCBtYW4gZG9jaCBuaXguIDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVGVhbXNwZWFrLVNlcnZlciAoWmFwaG9iLCAgNS4gTm92IDIwMTIsIDIyOjUwOjA0KToKfiMhIHJuPUFyYXRob3JuIHJ0PTEzNTIxNTE1MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMzQ0ODg0NjA5CkljaCBzZWhlIGRhc3MgZGllcyBTY2htYXJybiBpc3QsIGFiZXIgaWNoIHZlcnN0YW5kIG5pY2h0IHdpZXNvLiBWaWVsbGVpY2h0IGhhYgppY2ggZWluIFdvcnRzcGllbCB1ZWJlcnNlaGVuLCBvZGVyIGVzIHplaWNobmV0ZSBzaWNoIHNjaG9uIGVpbiByZWluZXIKR2VzY2htYWNrcy1GbGFtZXdhciBhYi4gSWNoIHdlcmRlIGplZGVuZmFsbHMgbm9jaG1hbCBrdXJ6IGVybnN0aGFmdCBhbnR3b3J0ZW4uCkRpZSBNdW1ibGUtU3ByYWNocXVhbGl0YWV0IGlzdCBhYnNvbHV0IHZlcmdsZWljaGJhci4gRGllIFZlcnpvZWdlcnVuZ2VuIHdhcmVuCnRlaWx3ZWlzZSBzb2dhciBnZXJpbmdlciBhbHMgYmVpIFRlYW1zcGVhay4gWnVkZW0gaXN0IE11bWJsZSBlYmVuIGZyZWkgdW5kCm9mZmVuLCB3YXMgbWFuIGltaG8gYmVpIHZlcmdsZWljaGJhcmVyIFF1YWxpdGFldCBuYWNoIE1vZWdsaWNoa2VpdCBiZXZvcnp1Z2VuCnVuZCB1bnRlcnN0dWV0emVuIC8gd2VpdGVyZW50d2lja2VsbiBzb2xsdGUuClNlbGJzdCB3ZW5uIG1hbiBudW4gZXJzdG1hbCBiZWkgVGVhbXNwZWFrIGJsZWlidCwgd2VpbHMgamEgZWJlbiBzY2hvbiBtYWwKbGFldWZ0LCBzY2hhZGV0IFdpc3NlbiB1bSBBbHRlcm5hdGl2ZW4ga2F1bS4gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogVGVhbXNwZWFrLVNlcnZlciAoQXJhdGhvcm4sICA1LiBOb3YgMjAxMiwgMjI6NTU6MDMpOgp+IyEgcm49WmFwaG9iIHJ0PTEzNTIxNTIyMDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMzQ0ODg0NjA5CipicnVtbWVsKgoKaHR0cDovL2RpY3QubGVvLm9yZy9lbmRlP3NlYXJjaD1tdW1ibGUKClVuZCBqYSwgZGVyIFJlc3QgaXN0IG1pciBiZWthbm50LCBhbGxlcmRpbmdzIHdhciBUUyBkaWUgYW0gc2NobmVsbHN0ZW4KcmVhbGlzaWVyYmFyZSBMb2VzdW5nLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFRlYW1zcGVhay1TZXJ2ZXIgKFphcGhvYiwgIDUuIE5vdiAyMDEyLCAyMjo1OTozNyk6Cn4jISBybj1BcmF0aG9ybiBydD0xMzUyMTUyNTAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM0NDg4NDYwOQpJY2ggaGF0dGUgd29obCBuaWNodCB2ZXJzdGFuZGVuLCB3YXMgZHUgZGEgaW4gZGVpbmVuIEJhcnQgZ2VtdXJtZWx0IGhhc3QuCgpBdWNoIGZlaW46Cmh0dHA6Ly93d3cubGluZ3VlZS5jb20vZW5nbGlzaC1nZXJtYW4vc2VhcmNoP3NvdXJjZT1hdXRvJnF1ZXJ5PW11bWJsZQoKTGluZ3VlZSBpc3Qga2VpbiByZWluZXMgV29lcnRlcmJ1Y2gsIHNvbmRlcm4gY3Jhd2x0IG1hbnVlbGwtdWViZXJzZXR6dGUgVGV4dGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBUZWFtc3BlYWstU2VydmVyIChBbnRoZWEsICA2LiBOb3YgMjAxMiwgMDk6MDI6MjQpOgp+IyEgcm49WmFwaG9iIHJ0PTEzNTIxNTI3Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzQ0ODg0NjA5Ck1laW5lIGVyc3RlIEFzc296aWF0aW9uIGlzdCBkYWJlaSBlaCBkZXIgZ3V0ZSBhbHRlICJNdW1ibGVzIi1HYXVuZXIgYXVzICJEaWNrClRyYWN5IgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVuZ2VwbGFudGVyIE5ldXN0YXJ0IGRlcyBTcGllbHMgYW0gNy4xMS4gKFJ1bWF0YSwgIDcuIE5vdiAyMDEyLCAxMTowODozNik6Cn4jISBybj1aZXNzdHJhIHJ0PTEzNTIyNDQzODcgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEzNTIyNDQzODcKU2VpdGRlbSBsZXVjaHRldCBqZWRlc21hbGwgUm9tbmV5IGF1Ziwgd2VubiBtYW4gZWluZSBUYXN0ZSBkcnVlY2t0IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVuZ2VwbGFudGVyIE5ldXN0YXJ0IGRlcyBTcGllbHMgYW0gNy4xMS4gKEFuYXRvbCwgIDcuIE5vdiAyMDEyLCAxMzo0OTowNik6Cn4jISBybj1aZXNzdHJhIHJ0PTEzNTIyNDQzODcgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEzNTIyNDQzODcKRGFzIGxldHp0ZSwgd2FzIGljaCBpbSBTY3JvbGxiYWNrIGhhdHRlLCB3YXI6CgpaZXNzdHJhIHJ1ZnQ6IExhZyBzdGFydGV0IGpldHp0Li4uCgpVbmQgZGF2b3IgZWluZSBwYXNzZW5kZSBBbnNhZ2UuIDstKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVW5nZXBsYW50ZXIgTmV1c3RhcnQgZGVzIFNwaWVscyBhbSA3LjExLiAoWmVzc3RyYSwgIDcuIE5vdiAyMDEyLCAxODowMTowMCk6Cn4jISBybj1BbmF0b2wgcnQ9MTM1MjI5MjU0NiByZz1zY2htYXJybgp+IyEgdGlkPTEzNTIyNDQzODcKSWNoIGJlendlaWZsZSBzZWhyLCBkYXNzIGRlciBEcml2ZXIgZWluZW4gc2h1dGRvd24gZGVzIFJlY2huZXJzIGF1c2xvZXN0ZS4KRHJpdmVyY3Jhc2ggd2FlcmUgbm9jaCBwbGF1c2liZXIsIGRhcyBpc3QgYWxsZXJkaW5ncyBuaWNodCBwYXNzaWVydC4uLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVW5nZXBsYW50ZXIgTmV1c3RhcnQgZGVzIFNwaWVscyBhbSA3LjExLiAoR2xvaW5zb24sICA3LiBOb3YgMjAxMiwgMTk6MDY6MDApOgp+IyEgcm49WmVzc3RyYSBydD0xMzUyMzA3NjYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM1MjI0NDM4NwpBIGhhISBBbmF0b2wgaGF0IHZpYSBNRyBkZW4gUmVjaG5lciBnZXJvb3RldCB1bmQgcmVib290ZXQuIEhhY2tlciEgSEFDS0VSIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFVuZ2VwbGFudGVyIE5ldXN0YXJ0IGRlcyBTcGllbHMgYW0gNy4xMS4gKEFuYXRvbCwgIDguIE5vdiAyMDEyLCAwOTozNTowNCk6Cn4jISBybj1HbG9pbnNvbiBydD0xMzUyMzExNTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM1MjI0NDM4NwoKSWNoIGhhYiBoaWVyIGVpbmVuIEVudHdpY2tsZXIgaW0gUHJvamVrdC4KRGVyIGZhZW5ndCBTYWV0emUgZ2VybmUgc28gYW46CgpJY2ggZnJhZ2UgbWljaCwgLi4uLgpJY2ggYmV6d2VpZmxlLCAuLi4KSWNoIHd1bmRlcmUgbWljaCB1ZWJlciAuLi4KRXMgaXN0IG1pciB2b2VsbGlnIHVudmVyc3RhZW5kbGljaCwgLi4uCgpVbmQgZXIgaGF0IGRhbm4gbWVpc3RlbnMgVW5yZWNodC4gOy0pCgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBVbmdlcGxhbnRlciBOZXVzdGFydCBkZXMgU3BpZWxzIGFtIDcuMTEuIChSdW1hdGEsICA4LiBOb3YgMjAxMiwgMDk6MzU6NTQpOgp+IyEgcm49QW5hdG9sIHJ0PTEzNTIzNjM3MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xMzUyMjQ0Mzg3Cklud2llZmVybiBzb2xsIGVyIGJlaSAiSWNoIHd1ZG5lcmUgbWljaCB1ZWJlciIgdW5yZWNodCBoYWJlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFVuZ2VwbGFudGVyIE5ldXN0YXJ0IGRlcyBTcGllbHMgYW0gNy4xMS4gKEFuYXRvbCwgIDguIE5vdiAyMDEyLCAwOTozNzoxNCk6Cn4jISBybj1SdW1hdGEgcnQ9MTM1MjM2Mzc1NCByZz1zY2htYXJybgp+IyEgdGlkPTEzNTIyNDQzODcKV2VpbCBkZXIgZGFubiBnZXNjaGlsZGVydGUgU2FjaHZlcmhhbHQgc28gd2llIGdlc2NoaWxkZXJ0CmF1cyBTaWNodCBkZXIgYW5kZXJlbiBQcm9qZWt0bWl0YXJiZWl0ZXIgbmljaHQgc28gd2lya2xpY2gKZGVuIFRhdHNhY2hlbiBlbnRzcHJpY2h0LiBVbmQgZXMgc2ljaCB6dWRlbSBtZWlzdGVucyB1bQplaW5lIEJhbmFsaXRhZXQgaGFuZGVsdC4KCldhcyB0dXQgPEVudHdpY2tsZXI+IG5pY2h0IGFsbGVzLCB1bSBlaW5lbiBCdWcgenUgZWluZW0gQ1IKdW16dXdpZG1lbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBVbmdlcGxhbnRlciBOZXVzdGFydCBkZXMgU3BpZWxzIGFtIDcuMTEuIChHbG9pbnNvbiwgIDguIE5vdiAyMDEyLCAxMzo1ODo1MSk6Cn4jISBybj1BbmF0b2wgcnQ9MTM1MjM2MzgzNCByZz1zY2htYXJybgp+IyEgdGlkPTEzNTIyNDQzODcKSWNoIGZyYWdlIG1pY2ggendlaWZlbG5kIHVuZCB1bnZlcnN0YWVuZGlnLCBvYiBkZXIgd3VuZGVyYmFyZSBBbmF0b2wgbmljaHQgZGllClNjaHVsZCBhbiBkZW0gZ2FuemVuIFJlYm9vdCBiZWtvbW1lbiBzb2xsdGUsIGRhbWl0IGRlciBCdWcgLi4uIGVpbmUKU2ljaGVyaGVpdHNsdWVja2UgYmxlaWJ0LgoKU28gYmVzc2VyPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFVuZ2VwbGFudGVyIE5ldXN0YXJ0IGRlcyBTcGllbHMgYW0gNy4xMS4gKEFuYXRvbCwgIDguIE5vdiAyMDEyLCAxNTo1MzoxMyk6Cn4jISBybj1HbG9pbnNvbiBydD0xMzUyMzc5NTMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM1MjI0NDM4NwpWYWRlIFJldHJvLCBTYXRhbmFzISA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVyemktRWllciAoQW1hcnlsbGlzLCAxMC4gTm92IDIwMTIsIDAzOjMyOjExKToKRmFsbHMgSWhyIG1hbCB3aXNzZW4gd29sbHRldCwgYXVzIHdlbGNoZW0gSG9semUgRXVyZSBFcnppZXMgc2luZDoKCmh0dHA6Ly93d3cuYW1hem9uLmRlL2dwL3Byb2R1Y3QvQjAwMDlXOFRCRy9yZWY9YXNfbGlfc3NfdGw/aWU9VVRGOCZ0YWc9dHJlbmRodQpyZWNvMDktMjEmbGlua0NvZGU9YXMyJmNhbXA9MTYzOCZjcmVhdGl2ZT0xOTQ1NCZjcmVhdGl2ZUFTSU49QjAwMDlXOFRCRwoKOykKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVyemktRWllciAoR2xvaW5zb24sIDEwLiBOb3YgMjAxMiwgMTA6Mzk6NDQpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEzNTI1MTQ3MzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMzUyNTE0NzMxCk1laHIgd2FzY2hlbiwgd2VuaWdlciByYXNpZXJlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVyemktRWllciAoQW50aGVhLCAxMi4gTm92IDIwMTIsIDA4OjI4OjUzKToKfiMhIHJuPUdsb2luc29uIHJ0PTEzNTI1NDAzODQgcmc9c2NobWFycm4KfiMhIHRpZD0xMzUyNTE0NzMxCkhtLCBkaWUgYmVpZGVuIFJlemVuc2lvbmVuIHZvbiBDbGVwdG9GcmFueGllIHVuZCBTZXh5Ym9tYiByZWl6ZW4gamEgZmFzdCBkYXp1LApub2NoIG1laHIgIkVyZmFocnVuZ3NiZXJpY2h0ZSIgZGEgcmVpbnp1c2NocmVpYmVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBFcnppLUVpZXIgKFJ1bWF0YSwgMTIuIE5vdiAyMDEyLCAxMjozMzozMSk6Cn4jISBybj1BbnRoZWEgcnQ9MTM1MjcwNTMzMyByZz1zY2htYXJybgp+IyEgdGlkPTEzNTI1MTQ3MzEKQW1hKiwga2FubnN0IGR1IG1hbCBtZWluZW4gQmlsZHNjaGlybSBzYXViZXJtYWNoZW4/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRXJ6aS1FaWVyIChBbWFyeWxsaXMsIDEyLiBOb3YgMjAxMiwgMjM6MzM6NTMpOgp+IyEgcm49UnVtYXRhIHJ0PTEzNTI3MjAwMTEgcmc9c2NobWFycm4KfiMhIHRpZD0xMzUyNTE0NzMxCjpraWNoYXQuCgpBTWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBZW5kZXJ1bmdlbiBpbSBSYXVtLVplaXQtR2VmdWVnZSAoQ2hhZ2FsbCwgMjIuIE5vdiAyMDEyLCAxMzo1NToyMyk6Cn4jISBybj1CdWdmaXggcnQ9MTM1MzU4ODQyMiByZz1naWxkZW4uY2hhb3MKfiMhIHRpZD0xMzUzNDEwOTY2Ck9oLCBCdWdmaXggdXBkYXRlZCBURi4gSWNoIGhhZXR0ZSBkYSBzbyBub2NoIGVpbmlnZSBla2xpZ2UgVEYtQnVncyBhdWYgZGVyCkxpc3RlLi4uCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQWVuZGVydW5nZW4gaW0gUmF1bS1aZWl0LUdlZnVlZ2UgKEJ1Z2ZpeCwgMjIuIE5vdiAyMDEyLCAxMzo1NjoyNyk6Cn4jISBybj1DaGFnYWxsIHJ0PTEzNTM1ODg5MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMzUzNDEwOTY2Ck51ciBkZW4gS3JhbSwgZGVyIG1pY2ggc2VsYnN0IG5lcnZ0IDotUAoKQkYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCktlaW4gQmVuZWhtZW4hIChNb3JpbGlhdGgsICA5LiBEZXogMjAxMiwgMDA6MjQ6NTcpOgpUb20gc2FndDogTW9tZW50IGVpbiBXYW5kbGVyISBFcnN0IEZ1ZXNzZSBhYnB1dHplbiEgU29uc3QgbW90enQgUHJpbXVsYSBydW0uCkVpbmUgS2llZmVybmhvbHp0dWVyIHNjaGxpZXNzdCBzaWNoLgpFaW5lIEtpZWZlcm5ob2x6dHVlciB3aXJkIHZvbiBlaW5lbSBXYW5kbGVyIGdlb2VmZm5ldC4KVG9tIHNhZ3Q6IE1vbWVudCBlaW4gV2FuZGxlciEgRXJzdCBGdWVzc2UgYWJwdXR6ZW4hIFNvbnN0IG1vdHp0IFByaW11bGEgcnVtLgpEZXIgV2FuZGxlciB2ZXJzY2h3aW5kZXQgdXJwbG9ldHpsaWNoLgpUb20gc2FndDogTW9tZW50IEplbWFuZCEgRXJzdCBGdWVzc2UgYWJwdXR6ZW4hIFNvbnN0IG1vdHp0IFByaW11bGEgcnVtLgoKTW9yaWxpYXRoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2VpbiBCZW5laG1lbiEgKEFtYXJ5bGxpcywgIDkuIERleiAyMDEyLCAwMDozODowNik6Cn4jISBybj1Nb3JpbGlhdGggcnQ9MTM1NTAwOTA5NyByZz1zY2htYXJybgp+IyEgdGlkPTEzNTUwMDkwOTcKYWxzbyByZWluZ2Vrb21tZW4gaXN0IGVyIGRlbW5hY2ggbmljaHQuLi4/IDspCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEphbWFsLCAxNy4gRGV6IDIwMTIsIDIzOjMyOjM3KToKW0JlaWxlaWQ6U2hhcmVudWddIEJlaWxlaWQgOi0oCltCZWlsZWlkOlNoYXJlbnVnXSBobXBmCltNb2VyZGVyOkdlaXN0IGVpbmVzIE1vZW5jaHNdIFNwYXJrbGUhIERhcyBiZWRldXRldCBLUklFRyEKW1RvZDpMYXJzXSBadWtsaW5nIGhhdCBnZXJhZGUgU2hhcmVudWcgdW1nZWJyYWNodC4KW0JlaWxlaWQ6U3BhcmtsZV0gOigoCltCZWlsZWlkOkFyYXRob3JuXSBmbHc/IDstKQpbQmVpbGVpZDpNb3JpbGlhdGhdIHdhciBkYXMgbWl0IGRlbSBiZWlsZWlkIHNjaG9uIGluIHdlaXNlciB2b3JhdXNzaWNodD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoR2xvaW5zb24sIDE5LiBEZXogMjAxMiwgMTI6NTc6NTApOgpbQW5mYWVuZ2VyOlZhbmdlbHVpXSBkYXJmIG1hbiBnb2JsaW5zIHRvZXRlbgpbQW5mYWVuZ2VyOkFyc29uXSBkdSBkYXJmc3QgYWxsZXMgdG9ldGVuIHdhcyBkdSB3aWxsc3Qgc29sYW5nZSBlcyBpbSBzcGllbApbQW5mYWVuZ2VyOkFyc29uXSBpc3QuCltBbmZhZW5nZXI6QXJzb25dIGRpZSBuZWNoc3RlIGZyYWdlIGlzdCBkYW5uIHdpZSBnZXN1bmQgZGFzIGZ1ZXIgZGljaCBpc3QKW1RvZDpMYXJzXSBFaW4gR29ibGluIGhhdCBnZXJhZGUgVmFuZ2VsdWkgdW1nZWJyYWNodC4KW0FuZmFlbmdlcjpBcnNvbl0gYmVpbGVpZAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXaGlza3lmbGFzY2hlIChab29rLCAxOS4gRGV6IDIwMTIsIDIwOjE3OjQyKToKfiMhIHJuPUh1bW5pIHJ0PTEzNTU5NDQ1NjEgcmc9ZC53dWVzdGUKfiMhIHRpZD0xMzU1OTQ0NTYxCkFsa29ob2xmcmVpZXIgV2hpc2tleT8KClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV2hpc2t5Zmxhc2NoZSAoSHVtbmksIDE5LiBEZXogMjAxMiwgMjA6MTk6MDgpOgp+IyEgcm49Wm9vayBydD0xMzU1OTQ0NjYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM1NTk0NDU2MQpTY2hvZW5lIElkZWUuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2hpc2t5Zmxhc2NoZSAoWm9vaywgMTkuIERleiAyMDEyLCAyMDoxOTozOSk6Cn4jISBybj1IdW1uaSBydD0xMzU1OTQ0NzQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM1NTk0NDU2MQpJbSBTcGllbCBtYWcgZGFzIGphIG5vY2ggYW5nZWhlbiwgaW0gZWNodGVuIExlYmVuIG1vZWNodGUgaWNoIAptaXIgZGFzIG5pY2h0IHZvcnN0ZWxsZW4uCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBXaGlza3lmbGFzY2hlIChHbG9pbnNvbiwgMTkuIERleiAyMDEyLCAyMDoyMzoxMSk6Cn4jISBybj1ab29rIHJ0PTEzNTU5NDQ3Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMzU1OTQ0NTYxCldlbm4gZXMgc28gc2NobWVja2VuIHd1ZXJkZSAuLi4gd2llc28gbmljaHQuIFR1dCBlcyBhYmVyIG1laXN0IG5pY2h0IDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKYWxsZ2VnZW53YWVydGlnIChCeXVjaHl1Y2gsIDIzLiBEZXogMjAxMiwgMTA6NTM6MTMpOgpNYW4gc2FndCBpbW1lciwgZ290dCBzZWkgYWxsZ2VnZW53YWVydGlnLiBJY2ggaGFiZSBzbyBlYmVuIGRlbiBiZXdlaXMKYmVrb21tZW4uIGljaCBzb2xsdGUgaW4gZGVyIENoYW9zYnVyZyBlaW4gdHVlcmNoZW4gb2VmZm5lbiB1bmQgd2FzIGJla29tbWUKaWNoLCBlaW5lbiBzY2hva29sYWRlbmdvdHQuIDstKS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXJyb2dhbnRlIEVyem1hZ2llciAoWm9vaywgIDkuIEphbiAyMDEzLCAwOToxMToxNSk6Cn4jISBybj1IdW1uaSBydD0xMzU3NTk4MjE5IHJnPWQuYW5mYWVuZ2VyCn4jISB0aWQ9MTM1NzU5ODA1MwpEZW0gdWVibGljaGVuIEthZW1wZmVyLUdld2VpbmUgc29sbHRlc3QgRHUgbmljaHQgc28gdmllbCAKQXVmbWVya3NhbWtlaXQgc2NoZW5rZW4sIEh1bW5pLiA7LSkKClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFycm9nYW50ZSBFcnptYWdpZXIgKEhvYm8sICA5LiBKYW4gMjAxMywgMTg6MzA6NDcpOgp+IyEgcm49Wm9vayBydD0xMzU3NzE5MDc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM1NzU5ODA1MwpXYXJlbiBkYXMgbmljaHQgaW1tZXIgZGllIFphdWJlcmVyPyA7KQoKSG9ibwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQXJyb2dhbnRlIEVyem1hZ2llciAoQ3JvZnQsICA5LiBKYW4gMjAxMywgMTg6MzU6NDQpOgp+IyEgcm49SG9ibyBydD0xMzU3NzUyNjQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM1NzU5ODA1MwpKYW1tZXJuICE9IFdlaW5lbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBcnJvZ2FudGUgRXJ6bWFnaWVyIChYdXRlbGl1cywgIDkuIEphbiAyMDEzLCAxODozNTo1Nik6Cn4jISBybj1Ib2JvIHJ0PTEzNTc3NTI2NDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzU3NTk4MDUzCkZydWVoZXIgbWFsLCBJbnp3aXNjaGVuIGtvZW5uZW4gZGFzIGRpZSBLYWVtcGZlciBnZW5hdXNvIGd1dC4gOy0pCgpYdXQqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQXJyb2dhbnRlIEVyem1hZ2llciAoWmVzc3RyYSwgIDkuIEphbiAyMDEzLCAxODo0MToxMik6Cn4jISBybj1YdXRlbGl1cyBydD0xMzU3NzUyOTU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM1NzU5ODA1MwpOYWNoIGVpbmlnZW4gQmVpc3BpZWxlbiBkZXIgbGV0enRlbiBqYWhyZSBoYWV0dGUgaWNoIGphIGdlc2FndDogYmVzc2VyLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQXJyb2dhbnRlIEVyem1hZ2llciAoR2xvaW5zb24sICA5LiBKYW4gMjAxMywgMTg6NDU6NTIpOgp+IyEgcm49WmVzc3RyYSBydD0xMzU3NzUzMjcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM1NzU5ODA1MwpHaWJ0IGVzIGRhIGVpbmUgVG9wbGlzdGUgZnVlcj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQXVzZGF1ZXJuZGUgR2ViZXRlIChab29rLCAgOS4gSmFuIDIwMTMsIDIxOjU0OjMxKToKfiMhIHJuPUdsb2luc29uIHJ0PTEzNTc3NjE1NjYgcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTEzNTc3NjE1NjYKVm9uIGF1c2RhdWVybmRlbiB1bmQgaGluZ2VidW5nc3ZvbGxlbiBHZWJldGVuIG1lcmsgaWNoIG5peC4KClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXVzZGF1ZXJuZGUgR2ViZXRlIChIdW1uaSwgIDkuIEphbiAyMDEzLCAyMzoyNDowNSk6Cn4jISBybj1ab29rIHJ0PTEzNTc3NjQ4NzEgcmc9c2NobWFycm4KfiMhIHRpZD0xMzU3NzYxNTY2Clp1IGRlbSBUaGVtYSBkdWVyZnQgaWhyIG1laW5lbiBRdWVzdHZlcmdhYmUtTlBDIGFiZXIgcnVoaWcgYXVjaCBiZWZyYWdlbi4gOy0pCkRlciB3ZWlzcyBkYSB3YXMgenUuIE5laW4uIEdlbmF1ZXIgZ2VzYWd0OiBFciB3ZWlzcyBlcyBlYmVuIG5pY2h0LiBGcmFndCBpaG4KZWluZmFjaCBuYWNoIFphdWJlcmVybi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKFZhbmlyLCAxMi4gSmFuIDIwMTMsIDIxOjM5OjA4KToKVm9uIFRpbjogbmVlZWllbiBlciB0b2V0ZXQgbWljaApbVG9kOkxhcnNdIEVpbiBXb2xwZXJ0aW5nZXIgaGF0IGdlcmFkZSBUaW4gdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBWb3IgZGVyIE1pdGdsaWVkc2NoYWZ0OiBWZXJlaW5zdmVyc2FtbWx1bmdlbiAoQ2hhZ2FsbCwgMTQuIEphbiAyMDEzLCAxNDozNjo1NCk6Cn4jISBybj1CdWdmaXggcnQ9MTM1ODE2OTk3MyByZz1tb3JnZW5ncmF1ZW4udmVyZWluCn4jISB0aWQ9MTM1NzkzNTgwNwpBdXNzZXJkZW0gaXN0IGRpZSBNUEEgc3VwZXIsIGVhc3kgenUgd2FydGVuIGV0Yy4KCk1DLCBpc3QgaW4gZGVyIHJpY2h0aWdlbiBSdWJyaWsKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBWb3IgZGVyIE1pdGdsaWVkc2NoYWZ0OiBWZXJlaW5zdmVyc2FtbWx1bmdlbiAoWm9vaywgMTQuIEphbiAyMDEzLCAxNDo0ODoxMCk6Cn4jISBybj1DaGFnYWxsIHJ0PTEzNTgxNzA2MTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMzU3OTM1ODA3CldhcnRlIG51ciBhdWYgRGluZ2VucyBSZWRlc2lnbiEKRGFubiByb2NrdCBkYXMgVGVpbCB3aWUgbml4LgoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFZvciBkZXIgTWl0Z2xpZWRzY2hhZnQ6IFZlcmVpbnN2ZXJzYW1tbHVuZ2VuIChDaGFnYWxsLCAxNC4gSmFuIDIwMTMsIDE0OjQ4OjQzKToKfiMhIHJuPVpvb2sgcnQ9MTM1ODE3MTI5MCByZz1zY2htYXJybgp+IyEgdGlkPTEzNTc5MzU4MDcKQWgsIGR1IG1lbGRlc3QgRGljaCBmcmVpd2lsbGlnIGRhcyBuZXUgenUgbWFjaGVuPwoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBWb3IgZGVyIE1pdGdsaWVkc2NoYWZ0OiBWZXJlaW5zdmVyc2FtbWx1bmdlbiAoWm9vaywgMTQuIEphbiAyMDEzLCAxNDo1MjowNSk6Cn4jISBybj1DaGFnYWxsIHJ0PTEzNTgxNzEzMjMgcmc9c2NobWFycm4KfiMhIHRpZD0xMzU3OTM1ODA3CkljaCBrYW5uIG1pY2ggZ2VyYWRlIG5vY2ggc28gYmVoZXJyc2NoZW4uClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBWb3IgZGVyIE1pdGdsaWVkc2NoYWZ0OiBWZXJlaW5zdmVyc2FtbWx1bmdlbiAoWmVzc3RyYSwgMTQuIEphbiAyMDEzLCAxOToyNToyOCk6Cn4jISBybj1ab29rIHJ0PTEzNTgxNzE1MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xMzU3OTM1ODA3CkljaCBoYWIgZGEgamEgbWFsIHZvbiBqZW1hbmRlbSBnZWhvZXJ0LCBkZXIgbWFsIHJlaW5ndWNrZW4gc29sbHRlLiA7LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE1OiBWb3IgZGVyIE1pdGdsaWVkc2NoYWZ0OiBWZXJlaW5zdmVyc2FtbWx1bmdlbiAoR2xvaW5zb24sIDE0LiBKYW4gMjAxMywgMjE6MTc6NDcpOgp+IyEgcm49WmVzc3RyYSBydD0xMzU4MTg3OTI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM1NzkzNTgwNwpFTS1HZXNlbGxlbnN0dWVjayBmdWVyIENhbGRyYS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEx5c2FuaWEsIDE1LiBKYW4gMjAxMywgMDA6MjY6MjgpOgpGZWxibyBzYWd0OiB3aXIgdmVybGVnZW4gdW5zIHp1bSBmZWdlZmV1ZXIKRGFzIHZlcnpvZWdlcnRlIHNpY2ggZGFubiBkb2NoIG5vY2ggZXR3YXM6CltUb2Q6TGFyc10gRGllIHdpcmJlbG5kZW4gRmV1ZXIgZWluZXMgVnVsa2FuZXMgaGFiZW4gZ2VyYWRlIEZlbGJvIHVtZ2VicmFjaHQuCltUb2Q6RGllIHdpcmJlbG5kZW4gRmV1ZXIgZWluZXMgVnVsa2FuZXMgd2VyZGVuIG5pZW1hbHMgc2F0dC4gPERpLCAwMDoxMzowMj5dCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogVm9yIGRlciBNaXRnbGllZHNjaGFmdDogVmVyZWluc3ZlcnNhbW1sdW5nZW4gKFpvb2ssIDE1LiBKYW4gMjAxMywgMTE6NDA6MTcpOgp+IyEgb249Wm9vayBvdD0xMzU4MjQyNTEyIG9nPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHJuPVJ1bWF0YSBydD0xMzU4MjQyMzQ2IHJnPW1vcmdlbmdyYXVlbi52ZXJlaW4KfiMhIHRpZD0xMzU3OTM1ODA3CkRhZnVlciBrb2VubnRlIGRpZSBCYW5rIGF1Y2ggZGllIEF1c3p1ZWdlIHBlcnNvZW5saWNoCnZvcmJlaWJyaW5nZW4sIG9kZXI/Cgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGb3JzY2hlbiB1bmQgZGVyIEJlenVnc3B1bmt0IChab29rLCAxOS4gSmFuIDIwMTMsIDEyOjA1OjAzKToKfiMhIHJuPVplc3N0cmEgcnQ9MTM1ODU5MDE1OCByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEzNTg1NDc4MDcKVW5kIGljaCBsYXMgenVlcnN0ICJGcm9zY2hrb21tYW5kb3MiCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmdzdGhhc2UhIChab29rLCAxOS4gSmFuIDIwMTMsIDEzOjQxOjEyKToKQWhhYiBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uCltBYmVudGV1ZXI6RGVyIGZlbGluaXNjaGUgQmlibGlvdGhla2FyXSBEYXMgbmVubmUgaWNoIEF1c2RhdWVyLCBBaGFiISBJaHIgaGFidApbQWJlbnRldWVyOkRlciBmZWxpbmlzY2hlIEJpYmxpb3RoZWthcl0gZWluZW0gYWx0ZW4gRmVsaW5lbiBnZWR1bGRpZyB6dWdlaG9lcnQKW0FiZW50ZXVlcjpEZXIgZmVsaW5pc2NoZSBCaWJsaW90aGVrYXJdIHVuZCBtaXIgdmllbGZhZWx0aWcgZ2Vob2xmZW4sIGRhZnVlcgpbQWJlbnRldWVyOkRlciBmZWxpbmlzY2hlIEJpYmxpb3RoZWthcl0gZGFua2UgaWNoIEV1Y2guIEljaCB3ZXJkZSBFdXJlbgpbQWJlbnRldWVyOkRlciBmZWxpbmlzY2hlIEJpYmxpb3RoZWthcl0gRWluc2F0eiBpbiBFcmlubmVydW5nIGJlaGFsdGVuLgpbR3JhdHM6Wm9va10gR1JBVFMhCltBYmVudGV1ZXI6QWhhYl0gRW5kbGljaCBtYWwgOi0pCltHcmF0czpBcnNvbl0gRHUgZnVlaGxzdCBEaWNoIHNvZm9ydCBldHdhcyBhdXNnZWdsaWNoZW5lci4KRGllIEh5ZHJhIHNpbmt0IGxhbmdzYW0gaW4gZGFzIFRhbCBkZXIgTHVwaW5lbiBuaWVkZXIuCltHcmF0czpNb3JpbGlhdGhdIEdsdWVja3d1bnNjaCEKQWhhYiBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgoKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprZWluIEJlaWxlaWQhIChWYW5pciwgMTkuIEphbiAyMDEzLCAyMzoxODozOSk6CltBYmVudGV1ZXI6TW9yaWxpYXRoXSBtYWwgZ3Vja2VuIG9iIGRlciByZXN0IG1pdCBzcGVlZCAxMiBnZWh0IChmbHcpCltUb2Q6TGFyc10gVm9lbGxpZ2UgRXJzY2hvZXBmdW5nIGhhdCBnZXJhZGUgTW9yaWxpYXRoIHVtZ2VicmFjaHQuCltUb2Q6TW9yaWxpYXRoIGhvZXJ0IHNpY2ggbnVuIGVpbiBXZWlsY2hlbiBMYXJzJyBTY2hhdWVyZ2VzY2hpY2h0ZW4gYW5dCltCZWlsZWlkOk5lZGltZV0gaGloaQpbQmVpbGVpZDpOZWRpbWVdIGdlaHQgbmljaHQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBrZWluIEJlaWxlaWQhIChWYW5pciwgMTkuIEphbiAyMDEzLCAyMzoxOTo0MSk6Cn4jISBybj1WYW5pciBydD0xMzU4NjMzOTE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM1ODYzMzkxOQpGTFcgZGllIHp3ZWl0ZQpbVG9kOkxhcnNdIEVpbiBVbmZhbGwgaW0gSG9jaGdlYmlyZ2UgaGF0IGdlcmFkZSBNb3JpbGlhdGggdW1nZWJyYWNodC4KW1RvZDpFaW4gVW5mYWxsIGltIEhvY2hnZWJpcmdlXSBXZXIgdmllbCB3YWd0LCBrYW5uIGF1Y2ggdmllbCB2ZXJsaWVyZW4uLi4KW1RvZDpNb3JpbGlhdGggaG9lcnQgc2ljaCBudW4gZWluIFdlaWxjaGVuIExhcnMnIFNjaGF1ZXJnZXNjaGljaHRlbiBhbl0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFiZW50ZXVlciBsb2VzZW4gaXN0IHNjaG9uIHNjaHdlci4uLiAoWm9vaywgMjMuIEphbiAyMDEzLCAyMTo1Njo0MCk6CltBYmVudGV1ZXI6Tm9uZ3JhdGFdIHdpZSBrYW5uIGljaCBkZW5uIGVpbmVtIGZyb3N0d3VybSBlaW5lIHNjaHVwcGUKW0FiZW50ZXVlcjpOb25ncmF0YV0gYWJzY2h1YmJlbG4/IDxNaSwgMjE6NTY6MDA+CltBYmVudGV1ZXI6Tm9uZ3JhdGFdIGljaCBrZW5uZSBkaWVzZXMgd29ydCBuaWNodCBtYWwuIDopIDxNaSwgMjE6NTY6MDk+CgoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKOikgKFZlY3RvciwgMjYuIEphbiAyMDEzLCAyMzoyNjoxOSk6ClNlYmFzdGlhbiBydWZ0OiBicnVubmVuZ2Vpc3QKR2xvaW5zb24gICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiA6KSAoR2xvaW5zb24sIDI2LiBKYW4gMjAxMywgMjM6NDk6MDYpOgp+IyEgcm49VmVjdG9yIHJ0PTEzNTkyMzkxNzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMzU5MjM5MTc5CkRhYmVpIHNhZ3QgZGllIEZsYXNjaGUgaGllciBEb3JuZmVsZGVyIE1lcmxvdC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBIZWlubyAoR25vbWUsIDI5LiBKYW4gMjAxMywgMDg6Mjg6NTYpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTM1OTEzNzM3MyByZz13d3cKfiMhIHRpZD0xMzU5MTEwNTEwClNjaHJhZWtsaWNoIGloc3QgYXVjaCBvaXJlIFJhZWNodHNjaHJhaWJ1aG5nLiBBbGxlIFNhbW10LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIEh1bmQgaXN0IG5pY2h0IGRvb2YgKE1vcmlsaWF0aCwgMzEuIEphbiAyMDEzLCAyMDozNzo0Nik6CkFscyBEdSBEaWNoIGluIGRpZSBNYWxlcmVpIHZlcnNlbmtzdCwga2FubnN0IER1IHNpZSBmYXN0IHNwdWVyZW4uIEVpbmUgc2FuZnRlCkJyaXNlIGR1cmNod2VodCBEZWluIEhlcnogdW5kIGVpbmUgdGllZmUgaW5uZXJlIFN0aW1tZSBzdW1tdCBEaXIgenU6CiAgICAgICdWZXJ0cmF1ZSBhdWYgZGllIFN0ZXJuZS4nCkphbWJvIHdpcmZ0IGVpbmVuIHNrZXB0aXNjaGVuIEJsaWNrIGluIGRpZSBSdW5kZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhcyBoYWV0dGUgaWNoIEFyayBqYSBuaWNodCB6dWdldHJhdXQuLi4gKFplc3N0cmEsIDExLiBGZWIgMjAxMywgMjA6NDc6MzIpOgpbTFBDOkNoYWdhbGxdIGthbm4gZ3JhZCBuaWNodCwgZGllIEthdHplIGhhdCBncmFkIGluIGRlbiBGbHVyIGdlYnJvY2hlbi4gVW5kCltMUEM6Q2hhZ2FsbF0gZGVyIE1lbmdlIG5hY2ggZGVuIGtvbXBsZXR0ZW4gTWFnZW5pbmhhbHQKW0xQQzpBcmtdIGtvZW5udGUgaWNoIGdld2VzZW4gc2VpbgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhcyBoYWV0dGUgaWNoIEFyayBqYSBuaWNodCB6dWdldHJhdXQuLi4gKEFyaywgMTEuIEZlYiAyMDEzLCAyMjoyMDoyMyk6Cn4jISBybj1aZXNzdHJhIHJ0PTEzNjA2MTIwNTIgcmc9c2NobWFycm4KfiMhIHRpZD0xMzYwNjEyMDUyCkVpbmUgVmVya2V0dHVuZyB1bmdsdWVja2xpY2hzdGVyIFVtc3RhZW5kZSA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBcnJvZ2FudGUgRXJ6bWFnaWVyIChWYW5pciwgMTIuIEZlYiAyMDEzLCAyMTowOTozMCk6Cn4jISBvbj1WYW5pciBvdD0xMzYwNjk5NzI4IG9nPWQuYW5mYWVuZ2VyCn4jISBybj1PaGFtIHJ0PTEzNjA2OTk0ODcgcmc9ZC5hbmZhZW5nZXIKfiMhIHRpZD0xMzU3NTk4MDUzCkR1IHRyYXVzdCBEaWNoIHdhcyEgQWNoamEsIGJpc3QgamEgc2ljaGVyLgpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJvbmJvbnMgdW5kIExlY2tlcmVpZW4gKEFuYXRvbCwgMTMuIEZlYiAyMDEzLCAwODoxMTo1Myk6Cn4jISBybj1IdW1uaSBydD0xMzYwNzAyMzMxIHJnPWJhbGFuY2UuYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEzNjA3MDIzMzEKRHJvcHM/ISBXZWxjaGUgRHJvcHM/ISBTaW5kIG5pY2h0IGxldWNodGVuZGUgUGZpcnNpY2hlIHN0YXRlLW9mLXRoZS1hcnQ/CgoKCk11SGUoSWcpIDUgCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZlaGxlciBpc3QgamV0enQgZWluIFNlaGVyISAoWm9vaywgMTQuIEZlYiAyMDEzLCAwOToxMzoyMyk6Cn4jISBybj1NZXJsaW4gcnQ9MTM2MDc1NDczMiByZz1zdHVmZW4KfiMhIHRpZD0xMzYwNzU0NzMyCk9oLCBtaXQgTGV2ZWwgNTAuLi4uPwoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGZWhsZXIgaXN0IGpldHp0IGVpbiBTZWhlciEgKFBpZ2EsIDE0LiBGZWIgMjAxMywgMTA6Mzg6NDUpOgp+IyEgcm49Wm9vayBydD0xMzYwODI5NjAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM2MDc1NDczMgo1MCBzaW5kIG51ciBkaWUgZHVyY2hzY2huaXR0bGljaGVuIEJ1Z3MgcHJvIFJhdW0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZlaGxlciBpc3QgamV0enQgZWluIFNlaGVyISAoQW5hdG9sLCAxNC4gRmViIDIwMTMsIDExOjA5OjI2KToKfiMhIHJuPVBpZ2EgcnQ9MTM2MDgzNDcyNSByZz1zY2htYXJybgp+IyEgdGlkPTEzNjA3NTQ3MzIKRGllIDIwIHd1cmRlIGlobSBqYSB2ZXJ3ZWlnZXJ0LiA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBGZWhsZXIgaXN0IGpldHp0IGVpbiBTZWhlciEgKFZlY3RvciwgMTQuIEZlYiAyMDEzLCAxMzozNzoxNCk6Cn4jISBybj1BbmF0b2wgcnQ9MTM2MDgzNjU2NiByZz1zY2htYXJybgp+IyEgdGlkPTEzNjA3NTQ3MzIKamEgZGFzIGVuZGUgZGVyIGZhaG5lbnN0YW5nZSBydWVja3QgaW1tZXIgd2VpdGVyIHdlZywgZ3J1c3MgYW4Kdm9sbHNjcmlwdCA6KSBtYWwga3Vja2VuIG9iIGRhcyBuYWNoIDEzIGphaHJlbiBub2NoIHdhcyB3aXJkIG1pdCAKZGVtIHNlaGVydHVtIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB1bnRlcnN1Y2hlIC0gQmV6dWdzb2JqZWt0IChab29rLCAxOS4gRmViIDIwMTMsIDIyOjA5OjM3KToKfiMhIHJuPU5lZGltZSBydD0xMzYxMzA4MDE3IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMzYxMzAxMDcyCldpZXNvIHNvbGx0ZSBtYW4gZWluIEZldWVyc2NoaWxkIGxlc2VuIHdvbGxlbj8KClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHVudGVyc3VjaGUgLSBCZXp1Z3NvYmpla3QgKFpvb2ssIDE5LiBGZWIgMjAxMywgMjI6Mzg6MTcpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTEzNjEzMDk2MDkgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEzNjEzMDEwNzIKSWNoIGdsYXViZSwgaWNoIGhhYmUgc29sY2hlIFd1ZW5zY2hlIHNjaG9uIGdlaG9lcnQuIEFsbGVpbiwgYXVmIG1laW5lbQpLb250byBpc3Qgbm9jaCBrZWluIHdhcm1lciBHZWxkcmVnZW4gbmllZGVyZ2VnYW5nZW4sIGluc29mZXJuOiBBYmdlbGVobnQhCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiB1bnRlcnN1Y2hlIC0gQmV6dWdzb2JqZWt0IChHbG9pbnNvbiwgMTkuIEZlYiAyMDEzLCAyMzozOTowMyk6Cn4jISBybj1ab29rIHJ0PTEzNjEzMDk4OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzYxMzAxMDcyCkljaCBoYWIgZG9jaCBkYSBlcnN0IGdlc3Rlcm4gendhbnppZyBUcmliaWxsaW9uZW4gTGlyYSBhdWZnZWJ1Y2h0PwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCaXR0ZS4uLiAoVmFuaXIsIDIxLiBGZWIgMjAxMywgMTk6MzI6MTEpOgp+IyEgb249VmFuaXIgb3Q9MTM2MTQ3MTUxMCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49SHVtbmkgcnQ9MTM2MTM0NzkzNyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTEzNjEzNDc5MzcKRm9yc2NoZW4gZ2VmYWVocmRldCBkaWUgR2VzdW5kaGVpdCEKVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFZvcnNpY2h0IHVuZCBGbHVjaHQgKFplc3N0cmEsIDI0LiBGZWIgMjAxMywgMTY6NDg6NTgpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTEzNjE3MjA5MTcgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEzNjE0ODUwNTcKSWNoIGRhY2h0ZSwgdW50ZXIgRGVpbmVtIFJvY2s/CgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBWb3JzaWNodCB1bmQgRmx1Y2h0IChNb29uc2hpbmUsIDI0LiBGZWIgMjAxMywgMTY6NDk6MTUpOgp+IyEgcm49WmVzc3RyYSBydD0xMzYxNzIwOTM4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM2MTQ4NTA1NwpEb3J0IGF1Y2gsIGRhIGlzdCBlciBub2NoIGxpZWJlciAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFZvcnNpY2h0IHVuZCBGbHVjaHQgKFZlY3RvciwgMjQuIEZlYiAyMDEzLCAxNjo0OTozMSk6Cn4jISBybj1aZXNzdHJhIHJ0PTEzNjE3MjA5Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xMzYxNDg1MDU3CmRhcyBwcm9ibGVtIGlzdCwgbW9vbmkgZGVuIHdlZyB6dSBlcmtsYWVyZW4gZGFtaXQgZXIgdWViZXJoYXVwdApkYXMgc2NobGFjaHRmZWxkIGZpbmRldAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVm9yc2ljaHQgdW5kIEZsdWNodCAoTW9vbnNoaW5lLCAyNC4gRmViIDIwMTMsIDE2OjQ5OjU3KToKfiMhIHJuPVZlY3RvciBydD0xMzYxNzIwOTcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM2MTQ4NTA1NwpEZW4gV2VnIHp1cnVlY2sgbXVzc3QgRHUgamEgbmljaHQga2VubmVuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVm9yc2ljaHQgdW5kIEZsdWNodCAoVmFuaXIsIDI0LiBGZWIgMjAxMywgMTk6MTk6NTIpOgp+IyEgb249VmFuaXIgb3Q9MTM2MTcyOTk3NyBvZz1kaXNrdXNzaW9uCn4jISBybj1OZWRpbWUgcnQ9MTM2MTcyMDIzMSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTM2MTQ4NTA1NwpFcyBpc3Qgc2Nob24gc2Nod2llcmlnIGRhIGV0d2FzIHp1IGJlbWVya2VuIHdlbm4gbWFuIGRlbiBncm9lc3N0ZW4gVGVpbCBkZXIKWmVpdCBpZGVsdC4KVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBNYWNodCBkZXIgRXJ6bWFnaWVyLi4uIChIdW1uaSwgMjYuIEZlYiAyMDEzLCAyMjo0MDo0Myk6CgpBYnN0dWVyemlsaSBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uCltBbGxnZW1laW46WmVzc3RyYV0gTml4IGRhIEFic3R1ZXJ6aWxpLiBEaWNoIGhhdHRlbiB3aXIgb2Z0IGdlbnVnLCBhdWNoIG9obmUKW0FsbGdlbWVpbjpaZXNzdHJhXSBkZW4gUmVjaG5lcm5ldXN0YXJ0LgpBYnN0dWVyemlsaSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgoKR3JhdHMsIFplc3N0cmEuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJlaXNzZSAuLi4gKENoYWdhbGwsIDI3LiBGZWIgMjAxMywgMTA6NDc6MzkpOgp+IyEgcm49QnVnZml4IHJ0PTEzNjE5NTgzMzYgcmc9Z2lsZGVuLnVydWtoYWkKfiMhIHRpZD0xMzYxOTU4MzM2CldhcnVtIGhhdCBzaWNoIEh1bW5pIG5pY2h0IGVpbmZhY2ggc2VpbiBEcmFjaGVuYmVpc3NlbiBhdWZnZXdlcnRldD8KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEJlaXNzZSAuLi4gKEJ1Z2ZpeCwgMjcuIEZlYiAyMDEzLCAxMDo0ODoxNSk6Cn4jISBybj1DaGFnYWxsIHJ0PTEzNjE5NTg0NTkgcmc9c2NobWFycm4KfiMhIHRpZD0xMzYxOTU4MzM2Ckd1dGUgRnJhZ2UgOi1ECgpCRgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNvbmRlcmhlaWx1bmcgZGVyIEtsZXJpa2VyOiBFbnRnaWZ0ZW4sIEVudGZsdWNoZW4gKFpvb2ssIDI3LiBGZWIgMjAxMywgMTU6Mjg6MDYpOgp+IyEgcm49QXJrIHJ0PTEzNjE3MjMxMjYgcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTEzNjE3MjMxMjYKQWNoLCBtYWNodCBCcmllc2VsdHJpbSBkYXMgbmljaHQgbWVocj8KClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFsbGVzIG9obmUgU3BpZWdlbCAoQmx1dGdpZXIsIDI4LiBGZWIgMjAxMywgMTc6Mzc6MjUpOgp1bnQgYmx1dGdpZXIKRHUgZmluZGVzdCBhbiBlaW5lciBMaXN0ZSB3dWVyZGlnZXIgR2VnbmVyIGtlaW4gIkJsdXRnaWVyIi4gRGVpbiBCbGljayB3ZW5kZXQKc2ljaCBkZXIgVW1nZWJ1bmcgenUuCkRhcyBpc3QgQmx1dGdpZXIuIEVyIGlzdCBzZWxic3QgZnVlciBlaW5lbiBad2VyZyBlaGVyIGtsZWluLgpEYW1pdCBoYXQgZXIgZXR3YSBEZWluZSBHcm9lc3NlLgpFciBpc3QgYWJzb2x1dCBmaXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWxsZXMgb2huZSBTcGllZ2VsIChBbnRoZWEsICAxLiBNYXIgMjAxMywgMDk6MDQ6MzgpOgp+IyEgcm49Qmx1dGdpZXIgcnQ9MTM2MjA2OTQ0NSByZz1zY2htYXJybgp+IyEgdGlkPTEzNjIwNjk0NDUKSmEsIGljaCBmaW5kIGF1Y2ggc2Nob24gaW1tZXIgbHVzdGlnLCB3ZW5uIG1hbiBzaWNoIHNlbGJlciBhbnNjaGF1dCwgZGllc2VuClRleHQgImhhdCBldHdhIERlaW5lIEdyb2Vzc2UiIHp1IGxlc2VuLiBEYXMgaXN0IHdpZTogIldhcyBpc3Qgc2Nob24gbm9ybWFsPwpXZW5uIGljaCBtaWNoIHNlbGJzdCBhbHMgU3RhbmRhcmQgZGVmaW5pZXJlLCBkYW5uIGJpbiBpY2ggenUgOTcsMyUgbm9ybWFsIi4KVW5kIGRhc3MgRHUgZGljaCBzZWxic3QgbmljaHQgYWxzIEdlZ25lciBlbXBmaW5kZXN0IHNwcmljaHQgZG9jaCBmdWVyIGVpbgpnZXN1bmRlcyBNYXNzIGFuIFNlbGJzdGVyaGFsdHVuZ3N0cmllYiwgb2Rlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoWmFwaG9iLCAgMi4gTWFyIDIwMTMsIDEzOjQxOjM0KToKTWVsY2hvciBzZXR6dCBlaW5lbiBtb2VyZGVyaXNjaGVuIFRvZGVzc3Rvc3MgZ2VnZW4gZWluZW4gU2NobmVlcmllc2VuIGFuLgogIE1lbGNob3Igc2NobGFlZ3QgZWluZW4gU2NobmVlcmllc2VuIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCiAgRWluIFNjaG5lZXJpZXNlIHRyaWZmdCBNZWxjaG9yIHNlaHIgaGFydC4KTWVsY2hvciBtYWNodCBlaW5lIEZpbnRlIGdlZ2VuIGVpbmVuIFNjaG5lZXJpZXNlbi4KTWVsY2hvciBzY2hsYWVndCBlaW5lbiBTY2huZWVyaWVzZW4gcGxvZXR6bGljaCB1bmQgdm9lbGxpZyB1bmVyd2FydGV0IG1pdCBkZW0KbWl0dGxlcmVuIFRlaWwgZGVzIFlhcmlzLgogIE1lbGNob3IgemVyc2NobWV0dGVydCBlaW5lbiBTY2huZWVyaWVzZW4gaW4ga2xlaW5lIFN0dWVja2NoZW4uCkRlciBTY2huZWVyaWVzZSBmYWVsbHQgdG90IHp1IEJvZGVuLgpNZWxjaG9yIGdlaHQgbmFjaCBTdWVkZW4uCltUb2Q6TGFyc10gRWluIFNjaG5lZWJhbGwgaGF0IGdlcmFkZSBNZWxjaG9yIHVtZ2VicmFjaHQuCltCZWlsZWlkOkFyc29uXSBtaXN0IQpbQmVpbGVpZDpBcmtdIERpZSBIZWVyZSBkZXIgSG9lbGxlbiBzY2hpY2tlbiBlaW5lbiBBYXNqYWVnZXIgenVtIExlaWNobmFtIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoQXJrLCAgMi4gTWFyIDIwMTMsIDEzOjU0OjI1KToKfiMhIHJuPVphcGhvYiBydD0xMzYyMjI4MDk0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM2MjIyODA5NApGZWhsdCBkYSBuaWNodCBub2Nod2FzIGZ1ZXIgIkwiIGluICJGTFciPyA6KQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGVpbHVuZyB1bmQgQ28gKEdub21lLCAgMy4gTWFyIDIwMTMsIDE5OjE5OjIyKToKfiMhIHJuPUh1bW5pIHJ0PTEzNjE2NDI1MDkgcmc9c2VoZXIuZW50d2lja2x1bmcKfiMhIHRpZD0xMzYxMjA2MzQyCkR1IG1laW5zdCwgZGFubiBsb2hudCBzaWNoIGVpbiBjcmFzaCBlcnN0IHNvIHJpY2h0aWc/ClNDTlIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFZvcnNpY2h0IHVuZCBGbHVjaHQgKEFuYXRvbCwgIDMuIE1hciAyMDEzLCAxOTo0NDowNyk6Cn4jISBvbj1BbmF0b2wgb3Q9MTM2MjMzNjIzOSBvZz1kaXNrdXNzaW9uCn4jISBybj1Hbm9tZSBydD0xMzYyMzMxMzI5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMzYxNDg1MDU3ClNvd2FzIGthbm4gYXVjaCBudXIgZWluIEp1bmdzcHVuZCBzY2hyZWliZW4uCgpGcnVlaGVyICghISEhITEhZWxmKSBoYXR0ZW4gd2lyICJmbHVjaHRyaWNodHVuZyBmZXVlcmJhbGwiLCB1bSAKd2VuaWdzdGVucyBlaW5lbiBaYXViZXIgZ2VzaWNoZXJ0IGxvc3p1d2VyZmVuLCB3ZW5uIGRhcyBMYWcgbWFsCndpZWRlciBzbyBncm9zcyB3YXIsIGRhc3MgNSBLYW1wZnJ1bmRlbiBhdWYgZWlubWFsIGR1cmNoc2Nyb2xsdGVuCnVuZCBtYW4gZmxvaCwgYmV2b3IgbWFuIGRlbiBHZWduZXIgYXVmIGRlbSBCaWxkc2NoaXJtIHNlaGVuIGtvbm50ZS4KCkphd29obC4KCkF1cyBtZWluZW0gU3R1ZGllbm9ydCBpbSBOb3JkZW4gRGV1dHNjaGxhbmRzIHdhciBkaWUgQW5iaW5kdW5nCnNjaGxlY2h0ZXIgYWxzIGF1cyBXaWVuLiBCZXN0YWV0aWd0ZW4genVtaW5kZXN0IG1hbCBkaWUgV2llbmVyLAphbHMgc2llIHp1IEJlc3VjaCB3YXJlbiAobmFqYSwga2F1bSBlaW4gV3VuZGVyLCBkaWUgZ2FuemUgVW5pIGxpZWYKdWViZXIgc2FnZW5oYWZ0ZSAxMjhrYml0L3MpLgoKVm9yc2ljaHQgdW5kIEZsdWNodHJpY2h0dW5nIHdhcmVuIGRhbWFscyBzZWhyIHNlaHIgd2ljaHRpZy4gQWJlcgppbnp3aXNjaGVuIHNpZWh0IG1hbiBqYSBkZW4gU2Nyb2xsIEthbXBmcnVuZGUgZnVlciBLYW1wZnJ1bmRlLiBNYW4Ka2FubiBkaWUgUGF1c2VuICghISEhITEhMSkgaW0gU2Nyb2xsIHRhdHNhZWNobGljaCB3YWhybmVobWVuIQoKRnJ1ZWhlciB3YXIgZWJlbiBOSUNIVCBhbGxlcyBiZXNzZXIuIF06Xj4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBWb3JzaWNodCB1bmQgRmx1Y2h0IChHbG9pbnNvbiwgIDMuIE1hciAyMDEzLCAyMDoyMTowMyk6Cn4jISBybj1BbmF0b2wgcnQ9MTM2MjMzNjI0NyByZz1zY2htYXJybgp+IyEgdGlkPTEzNjE0ODUwNTcKTnUgcGllbnogaGllciBtYWwgbmljaHQgaGVydW0uIEljaCBmYW5kIEZsdWNodHJpY2h0dW5nIGltbWVyIGRvb2YsIHNlbGJzdCBhbHMKd2lyIG5vY2ggMTAwMG1zIE5ldHpsYWcgZ2VuIEh5ZHJhIGhhdHRlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBWb3JzaWNodCB1bmQgRmx1Y2h0IChBbmF0b2wsICA0LiBNYXIgMjAxMywgMDc6MzY6NTcpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTM2MjMzODQ2MyByZz1zY2htYXJybgp+IyEgdGlkPTEzNjE0ODUwNTcKU3RlaW5wYW56ZXIsIE1lc3NlcmtyZWlzLCB2b3JzaWNodCAwLCBkaXNjb25uZWN0LiBKYSwgc28ga2VubiBpY2ggZGFzLiA7KQpTb2xsdGVzdCBEdSBhYmVyIG5pY2h0IGdla2FubnQgaGFiZW4uIAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFZvcnNpY2h0IHVuZCBGbHVjaHQgKEdsb2luc29uLCAgNC4gTWFyIDIwMTMsIDEzOjUyOjIzKToKfiMhIHJuPUFuYXRvbCBydD0xMzYyMzc5MDE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM2MTQ4NTA1NwpEb2NoLCBrYW5udGUgaWNoIG5vY2ggYW0gUmFuZGUuIEljaCBoYWIgdmllbGxlaWNodCBuaWNodCBiZWkgZGVuIEdyb3NzZW4KbWl0Z2VzcGllbHQsIGFiZXIgaWNoIGhhYiBtaWNoIHVlYmVyIGRpZSBUcmlja3MgbWl0IGFtdWVzaWVydC4KCkRhdm9uIGdhYiBlcyBlaW5lIHNlaHIgbmVja2lzY2hlIE5ldWF1ZmxhZ2UsIGFscyBqZW1hbmQgZGVuIEdlaXN0ZXJjaGVjayBhdXMKZGVyIERlZmVuZCBhdXNnZWJhdXQgaGF0IC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IGlkZWVuIGZ1ZXIga2xlcmlzcGVsbHMgKFpvb2ssICA5LiBNYXIgMjAxMywgMTk6MTM6NTMpOgp+IyEgcm49QXJrIHJ0PTEzNjIzNDg0MDUgcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTEzNjIzMzAyMjgKSWNoIGZpbmRlIGVzIGphIGJlZWluZHJ1Y2tlbmQsIHdpZSBkYXMgTWFuaWZlc3QgYXVjaCBpbiBkZW4gYW5kZXJlbgpSdWJyaWtlbiB6dSBlaW5lciBnZXdpc3NlbiBFdGhpayBnZWZ1ZWhydCBoYXQuCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouIChWZWN0b3IsICA5LiBNYXIgMjAxMywgMTk6MjI6MzApOgpEdSBzYWdzdDogc2F0YW4gbHV6aWZlciBtZXBoaXN0b3BoZWxlcyBiZWVsemVidWIgZGlhYm9sb3MgYW50aWNocmlzdApEdSBzaWVoc3QgZWluZW4gRmVobGVyIGltIFJhdW0tWmVpdC1HZWZ1ZWdlLgpbR3JhdHM6SmFtYWxdIHN1cGVyCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGphbmdvIFVuY2hhaW5lZCAoQW1hcnlsbGlzLCAxMi4gTWFyIDIwMTMsIDIxOjI3OjMwKToKfiMhIHJuPUFyayBydD0xMzYzMDQ3MjQ5IHJnPWt1bHR1cgp+IyEgdGlkPTEzNjMwNDcyNDkKRGFzIGVpbnppZyBTY2hsZWNodGUgYW4gQ2hyaXN0b3BoIFdhbHR6IGlzdCwgZGFzcyBlciBTY2hsdWNodGVuc2NoLi4uLi4uCmlzdC4uLiA7KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEamFuZ28gVW5jaGFpbmVkIChBcmssIDEyLiBNYXIgMjAxMywgMjE6NDA6MDMpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEzNjMxMjAwNTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMzYzMDQ3MjQ5CkR1IGJpc3QgZWluIHdlbmlnIHVuZW50c3Bhbm50LiA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBEamFuZ28gVW5jaGFpbmVkIChBbWFyeWxsaXMsIDEyLiBNYXIgMjAxMywgMjI6MzI6NTMpOgp+IyEgcm49QXJrIHJ0PTEzNjMxMjA4MDMgcmc9c2NobWFycm4KfiMhIHRpZD0xMzYzMDQ3MjQ5CkltIEVybnN0OgoKSW4gIkluZ2xvdXJpb3VzIEJhc3RlcmRzIiBmYW5kIGljaCBpaG4gYmVzc2VyLgoKQWJlciBlciBpc3QgdW5kIGJsZWlidCBndXQuCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouIChWZWN0b3IsIDE1LiBNYXIgMjAxMywgMTc6MTA6NDcpOgpbQW5mYWVuZ2VyOkh1bW5pXSBpY2ggaGFiIHNlbGJzdCBhYmVyIGF1Y2ggbm9jaCB6dSB3ZW5pZyBhaG51bmcgZGF2b24uCkVpbiBVcnVraGFpIHNhZ3Q6IGljaCBkYWNodGUgZGFzIGFlbmRlcnQgc2ljaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IC4gKFNhcmF5LCAxNy4gTWFyIDIwMTMsIDA2OjI4OjM2KToKfiMhIHJuPVZlY3RvciBydD0xMzYzMzYzODQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM2MzM2Mzg0NwptdWhhaGFoYQppY2ggd2Vpc3MsIG5pY2h0cyBwcm9kdWt0aXZlcywgYWJlciBpY2ggd29sbHRlIG1laW5lbSBsYWNoZmxhc2ggYXVzZHJ1Y2sKdmVybGVpaGVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBQYXJ0eXBsYW51bmcgMjAxMyAoWm9vaywgMjcuIE1hciAyMDEzLCAxNjozMTo1MCk6Cn4jISBvbj1ab29rIG90PTEzNjQzOTgzMDMgb2c9cGFydHkKfiMhIHJuPVNhcmF5IHJ0PTEzNjQzODYyMDIgcmc9cGFydHkKfiMhIHRpZD0xMzU5MjQ4NjcwCk5laW4sIGRpZSBzaW5kIGFsbGUgYXVmIGVpbmVtIFBsYW51bmdzdHJlZmZlbi4KT2RlciBzby4KWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXYXMgbGFuZ2Ugd2VocnQgLi4uIChWYW5pb24sIDI5LiBNYXIgMjAxMywgMjE6NTY6NDgpOgp+IyEgcm49QnVnZml4IHJ0PTEzNjEyMjI4Mzkgcmc9ZC52bGFuZAp+IyEgdGlkPTEzNjEyMjI4MDAKSHVjaD8gRWluZSBXZXR0ZXI/IERpZSBpY2ggdm9yZ2VzY2hsYWdlbiBoYWJlPyBIYWJlIGljaCBtaXQgZ2V3ZXR0ZXQ/IFdlbm4gamEsCmhhYmUgaWNoIGdld29ubmVuPyBJY2ggaGFiZSBrZWluZSBFcmlubmVydW5nLiBFaHJsaWNoIDopCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2FzIGxhbmdlIHdlaHJ0IC4uLiAoQnVnZml4LCAgMi4gQXByIDIwMTMsIDEwOjQ2OjI3KToKfiMhIHJuPVZhbmlvbiBydD0xMzY0NTkwNjA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM2MTIyMjgwMAoxMCUgLi4uIGljaCBnbGF1YiBkYSB3YXIgd2FzIG1pdCBuZW0gUGFyYS1FaXNwYWxhc3Q/IDotUAoKQkYKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFdhcyBsYW5nZSB3ZWhydCAuLi4gKEFyaywgIDIuIEFwciAyMDEzLCAxODoyMToyNCk6Cn4jISBybj1CdWdmaXggcnQ9MTM2NDg5MjM4NyByZz1zY2htYXJybgp+IyEgdGlkPTEzNjEyMjI4MDAKRmVobHQgaW0gVGl0ZWwgZGVzIFVyc3BydW5nc2FydGlrZWxzIGVpZ2VudGxpY2ggYmV3dXNzdCBkYXMgJ2EnPyBTbyBhIGxhICJXYXMKc2ljaCBsYW5nZSB3ZWhydCAuLi4iPyA7KQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFdhcyBsYW5nZSB3ZWhydCAuLi4gKFh1dGVsaXVzLCAgMi4gQXByIDIwMTMsIDE4OjQ2OjA3KToKfiMhIHJuPUFyayBydD0xMzY0OTE5Njg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM2MTIyMjgwMApOb2UsIHdhciBuIFR5cG8uIEFiZXIgaWNoIGRhY2h0ZSBkYXMgcGFzc3QsIGFsc28gaGFiIGljaCBlcyBzbyBnZWxhc3Nlbi4gOy0pCgpYdXQqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpJc3Qga2xhci4uLi4gKExldiwgIDQuIEFwciAyMDEzLCAxOToyOToyMCk6CkZlbGJvIGZsaWVndCBoZXJlaW4uCkZlbGJvIGdsb3R6dCBEaWNoIGFuLgpGZWxibyBzdGlua3QgdWViZWwuCkRlaW5lIFNjaHVoZSBnbHVlaGVuIGt1cnogYXVmIHVuZCBoZWlsZW4gRGljaCBlaW4gd2VuaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFyYXRob3JuLCAgOS4gQXByIDIwMTMsIDE5OjUwOjQwKToKW0JlaWxlaWQ6U2xheF0gTW9vbnNoaW5lLCBsYXNzIGRhcyEgSGllciBpc3Qgc2NodWJzZW4gc2VociBnZWZhZWhoaGguLi4KW1RvZDpMYXJzXSBFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbCBoYXQgZ2VyYWRlIFNsYXggdW1nZWJyYWNodC4KW1RvZDpFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbF0gUGZmZmZmZmZmZmZmdC4uLi4uLi5QTFVNUFMhCltCZWlsZWlkOk1vb25zaGluZSByZWlidCBzaWNoIGRpZSBIYWVuZGUgdW5kIGdlaHQgKG1pdCBBdXNydWVzdHVuZykgYmVncmFiZW4hXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZMVyAoVGluLCAgOS4gQXByIDIwMTMsIDE5OjUxOjE0KToKfiMhIHJuPUFyYXRob3JuIHJ0PTEzNjU1Mjk4NDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMzY1NTI5ODQwCmJvZXNlCjotZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEdNQ1AtU3VwcG9ydCBpbSBNRyAoR2xvaW5zb24sIDIxLiBBcHIgMjAxMywgMjE6MDM6NDEpOgp+IyEgcm49WmVzc3RyYSBydD0xMzY2NTY4NDQ5IHJnPW11ZGNsaWVudHMKfiMhIHRpZD0xMzYwNDUwMzEyCj4gZW5kZQpTcGVpY2hlcmUgR2xvaW5zb24uCkJpcyBiYWxkIQpTYXZlZCBsaXN0IGdsb2luc29uc2F2ZWQKJSBDb25uZWN0aW9uIHRvIEdsb2luc29uIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuCi0tLS0gTm8gd29ybGQgLS0tLQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18wOToKMDIKPiBlbmRlCj4gdGVpbGUgemVzc3RyYSBtaXQgRm9sZ2VuZGUgRmVobGVyIGhhYmUgaWNoIGdlZnVuZGVuOgoKCi4uLiBkYXMgZmluZGUgaWNoIGdhbnogc2Nob2VuIGhpbnRlcmxpc3RpZyEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMZXR6dGUgV29ydGUgKEZlbGJvLCAyMi4gQXByIDIwMTMsIDIwOjQ0OjIzKToKW0JlaWxlaWQ6TWlyaW9dIGZ1ZXIgc29sY2hlIGR1bW1oZWl0c2ZhbGxlbiBzaW5kIHNrcmlwdGUgZ3V0LCBkaWUgdmVyZ2Vzc2VuCltCZWlsZWlkOk1pcmlvXSBzb3dhcyBuaWNodC4KW1RvZDpMYXJzXSBFaW5lIHN0YXJrIGFldHplbmRlIEZsdWVzc2lna2VpdCBoYXQgZ2VyYWRlIE1pcmlvIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBzdGFyayBhZXR6ZW5kZSBGbHVlc3NpZ2tlaXQgbG9lc3QgRGljaCBpbiBTZWt1bmRlbnNjaG5lbGxlIGF1Zi5dCgpEYXMgd2FyIGRlciBTYWV1cmUgRGVidWdnZXIgOykKCkZlbGJvCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBLbGVpbmVyIEthcnRlbm1hbGZ1ZWhyZXIgKEdsb2luc29uLCAxNS4gTWFpIDIwMTMsIDIzOjA1OjExKToKfiMhIHJuPUh1cmF4cHJheCBydD0xMzY4NjQ4MjM1IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTM2Mzk5MTIwNQpBbmdlYmVyLiBCZWkgbWlyIHdhciBlcyBpbW1lciBudXIgU2VpZGVucnVlc3R1bmcgdW5kIFRpdGFuc2Nod2VydCA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEtsZWluZXIgS2FydGVubWFsZnVlaHJlciAoUnVtYXRhLCAxOS4gTWFpIDIwMTMsIDE2OjUxOjA1KToKfiMhIHJuPVphcGhvYiBydD0xMzY4OTcxMDk4IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTM2Mzk5MTIwNQpKYSwgZXMgc29sbCBkYSBzbyBrb21pc2NoZSBEaW5nZXIgbmFtZW5zICJNYWV1c2UiIGdlYmVuLiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2lnbmF0dXIgKEFuYXRvbCwgMjEuIE1haSAyMDEzLCAxMjoyNjozMik6Cn4jISBvbj1BbmF0b2wgb3Q9MTM2OTEzMTk4NyBvZz1vZWZmZW50bGljaGtlaXRzYXJiZWl0Cn4jISBybj1Ob2sgcnQ9MTM2OTA5MDI1MyByZz1vZWZmZW50bGljaGtlaXRzYXJiZWl0Cn4jISB0aWQ9MTM2OTAwODcwMApEaWUgQW56YWhsIGRlciBXZWx0ZW4gaXN0IGFiZXIgZ2VydW5kZXQ/IE11ZXNzdGUgamEgZWlnZW50bGljaCBldHdhCjEuMDAwMSBzZWluIG9kZXIgc28uLi4gaW1tZXJoaW4gbGllZ3QgZWluIFRlaWwgZGVyID4gMTVrIFJhZXVtZSBpbiBkZXIKUGFyYWxsZWx3ZWx0IzEsIGVpbiBUZWlsIHNvZ2FyIGluIFBhcmFsbGVsd2VsdCMyIG9kZXIgZHJ1ZWJlci4gCgpEaWUgPjEwMCBQcm9ncmFtbWllcmVyIGlzdCBkYWZ1ZXIgbU1uIG5pY2h0IHRyYWdiYXIuIFdpZXZpZWxlIGRhdm9uIGhhYmVuCmluIGRlbiBsZXR6dGVuIDIgTW9uYXRlbiBtYWwgZWluZSBEYXRlaSBhbmdlZmFzc3Q/IE9kZXIgYXVjaCBudXIgZWluZ2Vsb2dndD8KClVuZCBkaWUgQW5nYWJlIHp1ciBTcGllbGVyLUFrdGl2YSBmZWhsdC4gVmVybXV0bGljaCBtaXQgUmVjaHQuIDopCgoubW92ZVRvKHNjaG1hcnJuKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNpZ25hdHVyIChHbG9pbnNvbiwgMjEuIE1haSAyMDEzLCAxMjo1OTozMik6Cn4jISBybj1BbmF0b2wgcnQ9MTM2OTEzMTk5MiByZz1zY2htYXJybgp+IyEgdGlkPTEzNjkwMDg3MDAKR2VuYXUuIFVuZCBlcyBmZWhsdCBhdWNoIGRpZSBBbmdhYmUsIHdpZSB2aWVsZSBkZXIgV2FmZmVuIEtldWxlbiB1bmQgU2Nod2VydGVyCnNpbmQsIEFleHRlIHVuZCBMYW56ZW4gbmltbXQgamEgZWgga2VpbmVyLCBkZXNoYWxiIHphZWhsZW4gZGllIG5pY2h0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNpZ25hdHVyIChBbmF0b2wsIDIxLiBNYWkgMjAxMywgMTM6NTM6MzYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTM2OTEzMzk3MiByZz1zY2htYXJybgp+IyEgdGlkPTEzNjkwMDg3MDAKR2VuYXVnZW5vbW1lbiBrb2VubnRlIGVzIGhlaXNzZW46ICI+MTAwMCBXYWZmZW4gdW5kIFJ1ZXN0dW5nZW4gLSBkYXJ1bnRlcgplaW4gWndlaWhhbmRtZXNzZXIhIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmxlaWNoZW50dWVjaGVyIHVuZCBpaHJlIGVpZ2VuaGVpdGVuIChFbGthbnRhciwgMjEuIE1haSAyMDEzLCAyMTo0NjowNik6ClN1c2kgZmFlbGx0IHRvdCB6dSBib2Rlbi4gRHUgc3RlY2tzdCBkaWUgbGVpY2hlIGluIGRhcyBzY2h3YXJ6ZSBMZWljaGVudHVjaC4KU3VzaSBrb21tdCBhbi4KTWl0IGVpbmdlc3RlY2t0PyA7LSkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTaWduYXR1ciAoWmFwaG9iLCAyMi4gTWFpIDIwMTMsIDE5OjEyOjM3KToKfiMhIHJuPUFuYXRvbCBydD0xMzY5MTMxOTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM2OTAwODcwMApBbmF0b2wsIGRhbmtlIGZ1ZXIgZGVpbiBGZWVkYmFjay4gSWNoIGZlaWxlIG5vY2ggZWluIGJpc3NjaGVuIGFuIGRlciBiZXN0ZW4KRm9ybXVsaWVydW5nLCBkaWUgZ2xlaWNoemVpdGlnIHp1dHJlZmZlbmQsIGludGVyZXNzYW50LCBuaWNodCB6dSB2ZXJ3aXJyZW5kLAprdXJ6IHVuZCBrbmFja2lnIHVzdyBydWViZXIga29tbXQuCgpEYXNzIHNvIHZpZWxlIFByb2dyYW1taWVyZXIgc28gaW5ha3RpdiBzaW5kIGlzdCBuYXR1ZXJsaWNoIHNjaGFkZSwga2FubiBzaWNoCmFiZXIgbGFuZ2ZyaXN0aWcgbnVyIGFlbmRlcm4sIHdlbm4gYXVjaCB3aWVkZXIgbWVociBTcGllbGVyIGVpbmxvZ2dlbi4KSW5zb2Zlcm4gbWFjaHQgc28gZWluZSBXZXJiZS1TaWduYXR1ciBqYSB3aWVkZXIgU2lubi4KCjEwMCB3YXIgZWluZmFjaCBlaW5lIHNjaG9lbmUgWmFobCwgZGllIGljaCBrYXVtIHVlYmVycHJ1ZWZ0IGhhYmUuIEljaCB3ZXJkZQpiZWhhdXB0ZW4sIGVzIGdlaHQgbWVociBkYXJ1bSB6dSB6ZWlnZW4sIHdpZXZpZWxlIGluIGRlciBnYW56ZW4gWmVpdCBzZWl0IDE5OTIKdW5kIGRhbm4gYXVjaCBub2NoIGVocmVuYW10bGljaCB1bmQgenVkZW0gaXN0IGVzIGZ1ZXIgamVkZW4gZm9ydGdlc2Nocml0dGVuZW4KU3BpZWxlciBtb2VnbGljaCBkYSBtaXR6dWhlbGZlbiB1c3cuIERhcyBpc3Qgc2Nob24gcmVjaHQgZWluemlnYXJ0aWcsIHdlbm4gaWNoCmVzIG1pdCBoZXV0aWdlbiBTcGllbGVuIHZlcmdsZWljaGUuCgpXZXIgd2VpdGVyZSBGb3JtdWxpZXJ1bmdzdm9yc2NobGFlZ2UgaGF0LCBpbW1lciBoZXIgZGFtaXQhIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTaWduYXR1ciAoR2xvaW5zb24sIDIyLiBNYWkgMjAxMywgMTk6MTU6MjApOgp+IyEgcm49WmFwaG9iIHJ0PTEzNjkyNDI3NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzY5MDA4NzAwCkRhc3MgZGllIE1hZ2llciBqZXR6dCBpbmFrdGl2IHNpbmQsIGFlbmRlcnQgZ2VuYXVzbyB3ZW5pZyBhbiBkZXIgRXhpc3RlbnogZGVzCkNvZGVzLCBkZW4gc2llIGdlc2NocmllYmVuIGhhYmVuIHdpZSBkaWUgVmVybmFjaGxhZXNzaWd1bmcgdm9uIFN0YWViZW4gaW0KS2FtcGYgZGllIFRhdHNhY2hlIGFlbmRlcnQsIGRhc3MgZXMgV2FmZmVuIHNpbmQuIEluc29mZXJuOiBpc3Qgc2Nob24gcmVjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2lnbmF0dXIgKFpvb2ssIDIzLiBNYWkgMjAxMywgMTU6NDY6MjMpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTM2OTEzMzk3MiByZz1zY2htYXJybgp+IyEgdGlkPTEzNjkwMDg3MDAKSWNoIHdpbmtlIGltbWVyIG5vY2ggbWl0IG1laW5lbSBWb3JzY2hsYWcgZGVyIHp3ZWloYWVuZGlnZW4KUGVpdHNjaGUgbWl0IEV4cGxvc2lvbnNzY2hhZGVuLgoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU2lnbmF0dXIgKEhpZ2hsYW5kZXIsIDIzLiBNYWkgMjAxMywgMTU6NTc6MzQpOgp+IyEgcm49Wm9vayBydD0xMzY5MzE2NzgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM2OTAwODcwMApEdSBrYW5uc3QgamEgTWlja2V5IFJvdXJrZSBmcmFnZW4sIG9iIGVyIGltIE1HIGRlbiBXaGlwbGFzaCBnZWJlbiB3aWxsIDspCgpIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNpZ25hdHVyIChHbG9pbnNvbiwgMjMuIE1haSAyMDEzLCAxODo0Nzo1MCk6Cn4jISBybj1IaWdobGFuZGVyIHJ0PTEzNjkzMTc0NTQgcmc9c2NobWFycm4KfiMhIHRpZD0xMzY5MDA4NzAwCk11c3MgbWFuIHNpY2ggZGFubiBhdWNoIGRhcyBHZXNpY2h0IHNvIGF1ZnBlaXRzY2hlbiBsYXNzZW4/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKdW5kIGluIGRlciBncm9lc3N0ZW4gbm90IHNjaG1lY2t0IGRpZSB3dXJzdCBhdWNoIG9obmUgYnJvdCAoQXJzb24sIDI2LiBNYWkgMjAxMywgMTk6NTc6NDYpOgpEYXMgU2NoYWYgZ3Jhc3QgZWluIHdlbmlnLgpWb24gRnJldW5kaW4gVGluOiB3YXMgIGdhYnMgZGVubj8KPiBzY2hhdSBib2RlbgpEZXIgQm9kZW4gaXN0IGVyc3RhdW5saWNoIHNhdWJlci4gU2F1YmVyIHZlcmxlZ3RlcyBQYXJrZXR0IHN0cmFobHQgRGlyCmVudGdlZ2VuLiBXaXJrbGljaCBlaW5lIFByYWNodCwgZGllc2VyIEFuYmxpY2shCgphaGEgOi1ECgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogdW5kIGluIGRlciBncm9lc3N0ZW4gbm90IHNjaG1lY2t0IGRpZSB3dXJzdCBhdWNoIG9obmUgYnJvdCAoWm9vaywgMjYuIE1haSAyMDEzLCAxOTo1ODoyMyk6Cn4jISBybj1BcnNvbiBydD0xMzY5NTkxMDY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM2OTU5MTA2NgpKYSwgYWxzIER1IGdlc2NoYXV0IGhhdHRlc3QsIHdhciBkYXMgUGFya2V0dCBhYmdlZ3Jhc3QuCklzdCBkb2NoIGtsYXIuCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IHVuZCBpbiBkZXIgZ3JvZXNzdGVuIG5vdCBzY2htZWNrdCBkaWUgd3Vyc3QgYXVjaCBvaG5lIGJyb3QgKEdsb2luc29uLCAyNi4gTWFpIDIwMTMsIDIwOjQ4OjA1KToKfiMhIHJuPVpvb2sgcnQ9MTM2OTU5MTEwMyByZz1zY2htYXJybgp+IyEgdGlkPTEzNjk1OTEwNjYKR2FueiB6dSBzY2h3ZWlnZW4gdm9uIFNjaGV1ZXJsZWlzdGVuIHVuZCBQYXJrZXR0cml0emVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IHVuZCBpbiBkZXIgZ3JvZXNzdGVuIG5vdCBzY2htZWNrdCBkaWUgd3Vyc3QgYXVjaCBvaG5lIGJyb3QgKEh1bW5pLCAyNi4gTWFpIDIwMTMsIDIxOjIyOjQ2KToKfiMhIHJuPUdsb2luc29uIHJ0PTEzNjk1OTQwODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMzY5NTkxMDY2CkRhcyBpc3Qgc2ltcGVsOiBJbiBkZW0gTGFkZW4ga2FubiBtYW4gZHVyY2ggZWluZSBTY2h3aW5ndHVlciBuYWNoIGRyYXVzc2VuLiBEYQprYW5uIHNvIGVpbiBTY2hhZiByZWNodCBwcm9ibGVtbG9zIGRydW50ZXJoZXJncmFzZW4uIFVuZCBkaXJla3Qgdm9yIGRlciBUdWVyCndhZWNoc3QgZWluIGRpY2tlciBCdWVzY2hlbCBIZWlkZWdyYXMuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogdW5kIGluIGRlciBncm9lc3N0ZW4gbm90IHNjaG1lY2t0IGRpZSB3dXJzdCBhdWNoIG9obmUgYnJvdCAoTW9vbnNoaW5lLCAyNi4gTWFpIDIwMTMsIDIxOjQxOjA0KToKfiMhIHJuPUh1bW5pIHJ0PTEzNjk1OTYxNjYgcmc9c2NobWFycm4KfiMhIHRpZD0xMzY5NTkxMDY2CkFsc28gZGFzIFZlcmIgJ2RydW50ZXJoZXJncmFzZW4nIG11c3MgaWNoIHVuYmVkaW5ndCBpbiBtZWluIFNwcmFjaC1SZXBlcnRvaXJlCmF1Zm5laG1lbiwgZGFzIGtsaW5ndCBndXQuCk51ciB3aWUgbGVua3QgbWFuIGpldHp0IHVuYmVtZXJrdCBlaW4gR2VzcHJhZWNoIGluIGRpZSBSaWNodHVuZywgdW0gZGFzCmVpbmZsaWVzc2VuIHp1IGxhc3NlbiAuLi4gPyBIdW1uaSwgRHUgYmlzdCBkcmFuIG1pdCBlaW5pZ2VuIFRpcHMgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiB1bmQgaW4gZGVyIGdyb2Vzc3RlbiBub3Qgc2NobWVja3QgZGllIHd1cnN0IGF1Y2ggb2huZSBicm90IChIdW1uaSwgMjcuIE1haSAyMDEzLCAwMDo0NToyOSk6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTM2OTU5NzI2NCByZz1zY2htYXJybgp+IyEgdGlkPTEzNjk1OTEwNjYKRGFzIGlzdCBkb2NoIGdhbnogZWluZmFjaD8gRHUgbGVua3N0IGRhcyBJbnRlcmVzc2UgZGVpbmVyIEdlc3ByYWVjaHNwZXJzb24gYXVmCndpY2h0aWdlIERpbmdlLiBCaWVyLCB6dW0gQmVpc3BpZWwuIERhbm4gYmVtZXJrc3QgRHUsIHdpZSBsZWNrZXIgQmllciBkb2NoCnNjaG1lY2t0LCB1bmQgcmVkZXN0IGV0d2EgZWluZSBoYWxiZSBTdHVuZGUgdWViZXIgZGVuIHVlYmVyYXVzIGxlY2tlcmVuCkdlc2NobWFjayB2b24gQmllci4gRGFubiBlcmtsYWVyc3QgRHUsIGRhc3MgbWFuIGRhYmVpIGF1Y2ggZ2VybmUgZWluIFN0ZWFrCmlzc3QuIERhbm4gcmVkZXN0IER1IGVpbmUgaGFsYmUgU3R1bmRlIGxhbmcgdWViZXIgZGFzIGxlY2tlcmUgU3RlYWssIGRhcwpsZXR6dGUgV29jaGUgdm9tIFRlbGxlciBpbiBEZWluZW4gTXVuZCBnZWh1ZXBmdCBpc3QuIExlY2tlciwgbGVja2VyLiBEYW5uCmVya2xhZXJzdCBEdSwgZGFzcyBEdSBkYXJhdWYgYWNodGVzdCwgZGFzcyBkaWUgS3VlaGUsIGRlcmVuIFN0ZWFrcyBEdSBpc3N0LApudXIgc2VociBnZXN1bmQgZXJuYWVocnQgd2VyZGVuLiBVbmQgZXJ3YWVobnN0LCBkYXNzIGRpZXNlIEt1ZWhlIGluIGVpbgpGaXRuZXNzdHVkaW8gZ2VoZW4sIGRhbWl0IGRhcyBGbGVpc2NoIHNjaG9lbiB6YXJ0IGlzdC4gRGFyYXVmaGluIHdpcmQgRGVpbmUKR2VzcHJhZWNoc3BlcnNvbiBEaWNoIHZlcm11dGxpY2ggZXR3YXMgZXJzdGF1bnQgYW5zY2hhdWVuLiBEdSBlcmtsYWVyc3QsIGRlbQpzZWkgbmF0dWVybGljaCBpbiBXaXJrbGljaGtlaXQgbmljaHQgc28uClVuZCBqZXR6dCBrb21tdHM6IERhbm4gZXJrbGFlcnN0IER1LCBvYiBkZW0gd2lya2xpY2ggc28gc2VpIG9kZXIgbmljaHQsIGlzdAplaGVyIGVnYWwuIFdpY2h0aWcgaXN0LCBkYXNzIER1IGFscyBHZXNjaGFlZnRzaWRlZSBoYXN0LCBlaW4gRml0bmVzc3R1ZGlvIGZ1ZXIKS3VlaGUgenUgZXJvZWZmbmVuISBEYXJhdWZoaW4gd2lyZCBEZWluZSBHZXNwcmFlY2hzcGVyc29uIGRlbmtlbiwgRHUgaGFzdCBkZW4KVmVyc3RhbmQgdmVybG9yZW4uIEd1dCBzbywgd2VpdGVybWFjaGVuISBOdW4gZXJrbGFlcnN0IER1LCBkYXNzIER1IGF1Y2ggYmFsZAplaW5lIEJhdWdlbmVobWlndW5nIGJlYW50cmFnZW4gd2lsbHN0LiBVbmQgZGFzIFByb2JsZW0gbWl0IGRlciBWZXJrb3R1bmcgZGVyClJhZXVtZSBoYXN0IER1IGF1Y2ggc2Nob24gZ2Vsb2VzdDogRHUgd2lyc3QgZWluIHBhYXIgTGV1dGUgYW5zdGVsbGVuLCBkaWUgZGVuCktvdCB3ZWdtYWNoZW4uIFVuZCBqZXR6dCBwYXNzaWVydHM6IER1IGVya2xhZXJzdCwgZGFzcyBEdSBkYXMgTmFocnVuZ3Nwcm9ibGVtCmdlbG9lc3QgaGFzdCEKTnVuIHdpcmQgRGVpbmUgR2VzcHJhZWNoc3BlcnNvbiBuZXVnaWVyaWcgc2VpbiEgU2llIHdpcmQgRGljaCBmcmFnZW4sIHdhcyBEdQpkYWZ1ZXIgdHVuIHdpbGxzdC4gRHUgZXJrbGFlcnN0LCBkYXNzIER1IGRhcyBGaXRuZXNzdHVkaW8gYW4gZWluZXIgV2llc2UgYmF1ZW4Kd2lyc3QsIGRpZSBEaXIgZ2FyIG5pY2h0IGdlaG9lcnQuIER1IGJhdXN0IGhpbnRlbiBlaW4gcGFhciBUdWVyZW4gaW4gZGFzCkZpdG5lc3N0dWRpbywgZGllIHVudGVuIG9mZmVuIHNpbmQuIApEYSBrb2VubmVuIGRpZSBLdWVoZSBkYW5uIERSVU5URVJIRVJHUkFTRU4uIERhcyBHcmFzIG11c3N0IER1IG5pY2h0bWFsCmJlemFobGVuLCBkYXMgZ2Vob2VydCBqYSBuaWNodCBEaXIsIGRhcyBpc3QgamEgbmljaHQgRGVpbmUgV2llc2UuIER1IG11c3N0IG51cgpkYWZ1ZXIgc29yZ2VuLCBkYXNzIGRlciBCZXNpdHplciBkZXIgV2llc2UgZWluIFdpZXNlbmZldGlzY2hpc3QgaXN0LCBkZXIgc2VpbmUKV2llc2UgaGVndCB1bmQgcGZsZWd0IHVuZCBhYmdlYmlzc2VuZXMgR3JhcyBpbW1lciBnbGVpY2ggbmFjaHdhY2hzZW4gbGFlc3N0LgpTcGFldGVzdGVucyBqZXR6dCB3aXJkIERlaW5lIEdlc3ByYWVjaHNwZXJzb24gZXMgc2VpbiBsYXNzZW4sIHNpY2ggbWl0IERpciB6dQp1bnRlcmhhbHRlbi4gRW5kbGljaCB3aXJzdCBEdSBlcyBnZXNjaGFmZnQgaGFiZW4sIGRpZSB3YXIgamEgZWggdG90YWwKbGFuZ3dlaWxpZy4gTnVyIDEtMiBTdHVuZGVuLCB1bmQgZXMgaXN0IHZvcmJlaSwgdW5kIGRpZXNlIFBlcnNvbiB3aXJkIHNpY2ggbmllCndpZWRlciBtaXQgRGlyIHVudGVyaGFsdGVuISBXaWVkZXIgZWluZSBQZXJzb24gd2VuaWdlciwgZGllIERpciBhdWYgZGVuIE5lcnYKZ2VodC4gR3V0IGdlbWFjaHQhCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFphdWJlcnRyYWVua2UgKEdsb2luc29uLCAzMC4gTWFpIDIwMTMsIDAzOjEyOjU1KToKfiMhIHJuPUFyYXRob3JuIHJ0PTEzNjk4NzEwNjkgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMzY5ODcxMDY5CkxlZXJlIFphdWJlcnRyYWVua2UgZ2ViZW4gYWIgamV0enQgZG9jaCBQZmFuZGdlbGQgYmVpIGRlciBBbm5haG1lc3RlbGxlIGJlaQpkZW4gTWFoYWhpcz8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgouLi4gd2FzIGlzdCBibG9zIGF1cyB1bnNlcmVtIG1laXN0ZXIgZ2V3b3JkZW4/IChBcnNvbiwgIDIuIEp1biAyMDEzLCAwODo1MjoyMSk6Cj4gZnJhZyBzaWFtaWwgbmFjaCBsaWNodGt1Z2VsbgpTaWFtaWwgbWVpbnQ6IERhIGZyYWdzdCBEdSBhbSBiZXN0ZW4gbWFsIGRpZSB6dXN0YWVuZGlnZW4gU2NodWVsZXIuCj4gZnJhZyBzaWFtaWwgbmFjaCBzY2h1ZWxlcgpWb24gTlBDIFNpYW1pbDogRGFmdWVyIGludGVyZXNzaWVyZSBpY2ggbWljaCBuaWNodC4KCnNvIGlzdCBkYXMgYWxzby4uLiAqc2NobmllZioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiAuLi4gd2FzIGlzdCBibG9zIGF1cyB1bnNlcmVtIG1laXN0ZXIgZ2V3b3JkZW4/IChUaW4sICAyLiBKdW4gMjAxMywgMTQ6NTk6MTEpOgp+IyEgcm49QXJzb24gcnQ9MTM3MDE1NTk0MSByZz1zY2htYXJybgp+IyEgdGlkPTEzNzAxNTU5NDEKKnRyb2VzdGUqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS0EgU3RhdGlzIDEzLjYuLTE4LjcuIChab29rLCAgOC4gSnVuIDIwMTMsIDE1OjE3OjUzKToKfiMhIHJuPUNyb2Z0IHJ0PTEzNzA1OTAzNTMgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTM3MDU5MDM1MwpVbmQgaWNoIGxhcyBpbSBlcnN0ZW4gTW9tZW50ICJMb2V3ZW5icnVlbGxlciIKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVybGF1YiAxOC4wNiAtIDAxLjA3LiAoQ3JvZnQsIDEzLiBKdW4gMjAxMywgMDA6MDE6MDYpOgp+IyEgcm49Q2hhZ2FsbCBydD0xMzcxMDY1MTY3IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xMzcxMDY1MTY3CkphLCB3aWUuICBOaWNodCBIYXR0aW5nZW4/IFVuZCB3aWVzbyBkYXJmIGljaCBpbiBkZXIgUnVicmlrIG5pY2h0IHNjaHJlaWJlbj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVybGF1YiAxOC4wNiAtIDAxLjA3LiAoQ2hhZ2FsbCwgMTMuIEp1biAyMDEzLCAwNzo1MDoyMCk6Cn4jISBybj1Dcm9mdCBydD0xMzcxMDc0NDY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM3MTA2NTE2NwpOZWluLCBuaWNodCBIYXR0aW5nZW4uIERlciBUZXJtaW4ga2FtIGxlaWRlciB6dSBzcGFldCBmdWVyIG1pY2gsIGRhIGhhdHRlIGljaApzY2hvbiBnZWJ1Y2h0LgoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmd1dGdlbWVpbnQgKEFyc29uLCAyNi4gSnVuIDIwMTMsIDE3OjI2OjUyKToKTWFlc3VuZCBrb21tdCBhbi4KTWFydmluIHNhZ3Q6IEhhbGxvLCBNYWVzdW5kISBFcnphZWhsZSBtaXIsIHdhcyBEaWNoIGdlcmFkZSBiZXNjaGFlZnRpZ3QhCk1hZXN1bmQgc2FndDogaGkgbWFydmluIFsxNzoxN10KTWFydmluIHNhZ3Q6IFdhcyBpc3QgbWl0IG1pciwgTWFlc3VuZD8KTWFlc3VuZCBzYWd0OiBuaWNodHMgWzE3OjE3XQpNYXJ2aW4gc2FndDogV2FzIGhlaXNzdCBkYXMgZnVlciBEaWNoPwpNYWVzdW5kIHNhZ3Q6IG5pY2h0cywgd2llc28/IFsxNzoxN10KTWFydmluIHNhZ3Q6IFdhbm4gaGF0dGVzdCBEdSBkYXMgbGV0enRlIE1hbCBTZXg/IFZpZWxsZWljaHQgc3BpZWxlbiBEZWluZQpNYXJ2aW4gc2FndDogSG9ybW9uZSB2ZXJydWVja3QhCk1hZXN1bmQgc2FndDogb2suLi4gWzE3OjE3XQpNYXJ2aW4gc2FndDogV2FubiBoYXR0ZXN0IER1IGRhcyBsZXR6dGUgTWFsIFNleD8gVmllbGxlaWNodCBzcGllbGVuIERlaW5lCk1hcnZpbiBzYWd0OiBIb3Jtb25lIHZlcnJ1ZWNrdCEKTWFlc3VuZCBzYWd0OiBqYSBpY2ggaGFicyB2ZXJzdGFuZGVuIFsxNzoxN10KTWFydmluIHNhZ3Q6IEdhYiBlcyBTaXR1YXRpb25lbiBpbiBEZWluZW0gTGViZW4sIHdvIGR1IGRpZXNlIEZyYWdlIHZlcm5laW50Ck1hcnZpbiBzYWd0OiBoYWV0dGVzdCwgTWFlc3VuZD8KTWFlc3VuZCBzYWd0OiB3ZWxjaGUgZnJhZ2U/IFsxNzoxOF0KTWFydmluIHNhZ3Q6IE1vbWVudCwgaWNoIG5laG1lIG51ciBrdXJ6IGRpZSBGaW5nZXIgYXVzIGRlbiBPaHJlbiEgV2FzIHdhcj8KTWFlc3VuZCBzYWd0OiBuaWNodHMgWzE3OjE4XQpNYXJ2aW4gc2FndDogV2FzIGhlaXNzdCBkYXMgZnVlciBEaWNoPwpNYWVzdW5kIHNhZ3Q6IEMkaG0gamEgaWNoIGdlaGUgamV0enQgWzE3OjE4XQpNYXJ2aW4gc2FndDogSWNoIHZlcnN0ZWhlLCBNYWVzdW5kIQpNYWVzdW5kIGdlaHQgbmFjaCBOb3JkZW4uCk1hcnZpbiBnZWh0IG5hY2ggb2Jlbi4KCmxnIGFyc29uKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE1laW5lIFN1Y2hlIG5hY2ggZWluZW0gcGFzc2VuZGVuIE11ZGNsaWVudCAoR2xvaW5zb24sICA4LiBKdWwgMjAxMywgMTU6MTk6MjMpOgp+IyEgcm49QW5hdG9sIHJ0PTEzNzMyODM5NzQgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEzNzMxMDA1NjgKRGFzIGtvbW10IGRhdm9uLCB3ZW5uIG1hbiB1ZWJlciBkZW4gVGVsbGVycmFuZCBzY2hhdXQuIFNlbGJzdCBzY2h1bGQhCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTWVpbmUgU3VjaGUgbmFjaCBlaW5lbSBwYXNzZW5kZW4gTXVkY2xpZW50IChBcnNvbiwgIDkuIEp1bCAyMDEzLCAxOToxODozOSk6Cn4jISBybj1HbG9pbnNvbiBydD0xMzczMjg5NTYzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM3MzEwMDU2OAppY2ggZGVua2UgZXMga29tbXQgc2VociBkYXJhdWYgYW4sIHdpZSBkZXIgb2RlciBkaWUgYmxpbmRlIHNwaWVsdCEKaWNoIHNwaWVsZSBvaG5lIHN0YXR1c3plaWxlLCBkYSBpY2gga2VpbmUgZnVua3Rpb25pZXJlbmRlIEJyZWlsZXplaWxlIGJlc2l0emUuCmRhZHVyY2ggd3VlcmRlIG1pY2ggZGllc2UgenVzYWV0emxpY2hlIFplaWxlIG51ciBuZXJ2ZW4uCmF1c3NlcmRlbSB3ZXJkZW4gZGllIGF1c2dhYmVuIGV0d2FzIHZlcnpvZWdlcnQgdm9yZ2VsZXNlbi4uLiBkYXMgbXVzcyBqYSBhYmVyCm5pY2h0IHVlYmVyYWxsIHNvIHNlaW4uCgpsZyBhcnNvbiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE1laW5lIFN1Y2hlIG5hY2ggZWluZW0gcGFzc2VuZGVuIE11ZGNsaWVudCAoQXJzb24sICA5LiBKdWwgMjAxMywgMTk6MjA6MDgpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTM3MzI4OTU2MyByZz1zY2htYXJybgp+IyEgdGlkPTEzNzMxMDA1NjgKam8sIHVuZCBpY2ggd3VuZGVyIG1pY2ggc2Nob24gd2FydW0gZGllc2UgZGlza3VzaW9uIGluIGRpZXNlciBydWJyaWsKc3RhdHRmaW5kZXQuLi4gCipncnVtbWVsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTW9vbnNoaW5lPyAgKFpvb2ssIDE0LiBKdWwgMjAxMywgMjI6MTQ6MzkpOgpEZWluIEZyZXVuZCBNb29uc2hpbmUga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLiAKRGVpbiBGcmV1bmQgTW9vbnNoaW5lIHRlaWx0IERpciBtaXQ6IE5hY2h0CkRlaW4gRnJldW5kIE1vb25zaGluZSB3aW5rdCBEaXIgYXVzIGRlciBGZXJuZSB6dS4gCk1vb25zaGluZSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpEZWluIEZlaGxlcnRldWZlbCB0ZWlsdCBEaXIgbWl0OiBEZWluZSBGZWhsZXJsaXN0ZSBpc3Qgc29lYmVuIGxhZW5nZXIKRGVpbiBGZWhsZXJ0ZXVmZWwgdGVpbHQgRGlyIG1pdDogZ2V3b3JkZW4uCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTW9vbnNoaW5lPyAgKEFyaywgMTQuIEp1bCAyMDEzLCAyMjo0Mjo0MCk6Cn4jISBybj1ab29rIHJ0PTEzNzM4MzI4Nzkgcmc9c2NobWFycm4KfiMhIHRpZD0xMzczODMyODc5CkhyaHIsIGVyIGZlaGx0IERpciBhbHNvLCBrbGFyZXIgRmFsbCA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGVpbiBrbGVpbmVzIHByb2JsZW0gaW4gdGYgbWl0IFRpbnlNYWNyb3MgKEFuYXRvbCwgMTcuIEp1bCAyMDEzLCAxNDoyMjoyNCk6Cn4jISBybj1BbmF0b2wgcnQ9MTM3NDA2MzY5MSByZz1tdWRjbGllbnRzCn4jISB0aWQ9MTM3Mzk5NjEyMgpQUFM6IEZpbmRlIGljaCBvaG5lIC9nbyBGQSBlaWdlbnRsaWNoIG5vY2ggenVtIEZldWVyYW11bGV0dC4uLj8KUFBQUzogRGllIFN0ZWluYmVpc3NlcmhvZWhsZSBmaW5kZSBpY2ggbm9jaCEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBlaW4ga2xlaW5lcyBwcm9ibGVtIGluIHRmIG1pdCBUaW55TWFjcm9zIChIdW1uaSwgMTcuIEp1bCAyMDEzLCAxNDoyNDowNyk6Cn4jISBybj1BbmF0b2wgcnQ9MTM3NDA2Mzc0NCByZz1zY2htYXJybgp+IyEgdGlkPTEzNzM5OTYxMjIKUGFoLCBkaWUgbmV1ZW4gdHJhZ2JhcmVuIEhlaWx1bmdlbiBmaW5kZXN0IER1IG5pY2h0ISBOaWUgdW5kIG5pbW1lciEgOy0pCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogZWluIGtsZWluZXMgcHJvYmxlbSBpbiB0ZiBtaXQgVGlueU1hY3JvcyAoQW5hdG9sLCAxNy4gSnVsIDIwMTMsIDE2OjE3OjI1KToKfiMhIHJuPUh1bW5pIHJ0PTEzNzQwNjM4NDcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzczOTk2MTIyCnNhZyBGSUFUCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBlaW4ga2xlaW5lcyBwcm9ibGVtIGluIHRmIG1pdCBUaW55TWFjcm9zIChHbG9pbnNvbiwgMTcuIEp1bCAyMDEzLCAxNzoxODoxNyk6Cn4jISBybj1BbmF0b2wgcnQ9MTM3NDA3MDY0NSByZz1zY2htYXJybgp+IyEgdGlkPTEzNzM5OTYxMjIKUkVHTyBIRVJCQU0hCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRnVlciBkaWUgbWl0IGRlbSBBYmtmaSwgZWluIGtsZWluZXIgRGlza3VycyBkdXJjaCBoaWxmZSBhYmsuIChBcmssIDE4LiBKdWwgMjAxMywgMDA6MTg6NDMpOgpBbHMgaWNoIDExIGhldXRlIGF1ZnN0YW5kLCBkYWNodGUgaWNoIG5vY2gsIGhvZWNoc3RlIDExMiwgbWFsIGVuZGxpY2ggQWRUCmFuenVnZWhlbi4gU3ByYWNoJ3MgdW5kIHN0cmVpZnRlIG1pciBkZW4gQUZSIHVlYmVyLCB1bSBkaWUgbGFlbmdzdCBmYWVsbGlnZW4KQVAgenUga2Fzc2llcmVuLiBBRkFJSyB3YXIgbWVpbiBBS1VFRkkgbmljaHQgZGFmdWVyIHZlcmFudHdvcnRsaWNoLCBkYXNzIGljaAp6dW5hZWNoc3QgYXVmIEF1ciBsYW5kZXRlLiBOYWNoIGRpZXNlciBEZW1vbnN0cmF0aW9uIHZvbiBBVSBlcmdyaWZmIGljaCBudW4KbWVpbiBCU1MsIGRhcyBpY2ggdm9uIEM0IGdlc2NoZW5rdCBiZWtvbW1lbiBoYXR0ZSwgZGFtYWxzLCBpbiBkZXIgQ0ssIGFscwppY2ggbWl0IG5lbSBEMTEgdWViZXIgZGllIEREIGRpc2t1dGllcnRlLiBEZXIgREUgd29sbHRlIG1pciBhdWNoIG5vY2ggbWl0CmRlbSBERyBiZWtvbW1lbiB1bmQgbGFiZXJ0ZSBtaWNoIG1pdCBkZW4gRUUgdW5kIGlocmVuIEVLcyBkaWNodC4gRUtTUCAuLi4KYmVzc2VyIGFscyBFUCBuYXR1ZXJsaWNoLCBhYmVyIGljaCBrbGF1dGUgaWhtIG51ciBuaWNrZW5kIHNlaW4gRmFtdSB1bmQKbWFjaHRlIG1pY2gga3VyeiBhdWYgZGllIEZFLCB1bSAuLi4gbmFqYSwgbXVzc3RlIHVtZHJlaGVuLCB3ZWlsIGljaCBtZWluZW4KRmxhcGEgd2llZGVyIHZlcmxlZ3QgaGF0dGUsIGRlc2hhbGIgaGF1dGUgaWNoIGhhbHQgaW4gZGVyIEYmRSBtYWwgYWxsZXMgdW0sCndhcyBuaWNodCBiZWkgZHJlaSBzY2hvbiBmcmVpd2lsbGlnIGZpZWwuIFdhcyB3b2xsdGUgaWNoIGRhbm4gZG9jaCBnbGVpY2g/Ck5hIGtsYXIsIGF1ZiBkZXIgRkkgdm9yYmVpc2NoYXVlbiwgZGVubiBkYSBzaW5kIGRpZSBrb21pc2NoIGRyYXVmLCBkaWUgTlBDCnNjaHJlaWVuIEZpZEtHIHVuZCBiZWtvbW1lbiBtZWlzdCBhdWNoIEZpUlpHIGRhYmVpLiBXdXNzdGV0IGlociB1ZWJyaWdlbnMsCmRhc3MgaW4gZGVyIEZLIGRpZSBGTCB0cml2aWFsIGlzdD8gTmF0dWVybGljaCBoaWxmdCBlaW5lbSBkYWJlaSBuaWNodCBHRQpvZGVyIGRlciBHTCwga2xhciwgb2Rlcj8gVW5kIGViZW5zbyBrbGFyIGlzdCwgZGFzcyBlcyBrZWluZSBHUSBhdWYgZGVyIEhFCmdpYnQsIGVpbmUgU2NoYW5kZSwgb2Rlcj8gRnVlciB2aWVsZXMgaGllciBicmF1Y2h0IG1hbiBuaWNodCBuZSBiZXNvbmRlcmUgSU4sCndhcyBJTUhPIHNjaGFkZSBpc3QsIHdlaWwgSUlSQyBsZWlkZXIgenUgdmllbGUgU3BpZWxlciBpbW1lciBub2NoIEtMcwpiZW51dHplbiwgdW0gc2ljaCBob2NoenVzcGllbGVuLCB1bSBtZWhyIEtQLCBLUiBvZGVyIExQIHp1IGJla29tbWVuLiBWaWVsZQpMT0xlbiBqYSwgd2VubiBtYW4genVnaWJ0LCBlcyBuaWNodCB6dSB0dW4uIE5hamEuIFp1bWluZGVzdCBnbGF1YiBpY2gsIGRhc3MKZXMgbmljaHQgZnVlciBhbGxlcyBpbSBNRyBuZSBLTCBnaWJ0LCB6QiBmdWVyIE1Rcy4gTk5BRFcuIFVuZCBpbiBkZXIgbkZFCmhpbGZ0IERpciBkYXMgYXVjaCBtZWlzdCBuaWNodCBtZWhyLiBCb2luZyBpc3QgendhciBrZWluIFBBKiBNYWdpZXIsIG1hY2h0CmF1Y2ggZWlnZW50bGljaCBrZWluIFBLLCBhYmVyIGVpbmVuIGFscyBNZW5zY2hlbiB6d2FuZ2hhZnQgbmFjaCBQViB6dQpzY2hpY2tlbiBuYWNoIGRlbSBUb2QsIGRhcyBiZWhlcnJzY2h0IGF1Y2ggZXIuIFVuZCBuaWNodCBudXIgaW4gUEFSQSwgYXVjaAppbiBOb3JtYWwgZ2lidCBlcyBpbW1lciBtYWwgd2llZGVyIEZMV3MuIEFiZXIgZXMgaXN0IGhhZXVmaWdlciB1bmQgbHVzdGlnZXIsCndlbm4gZGFzIGluIFBXIHBhc3NpZXJ0LiBSTCBjYW4gYmUgc28gYm9yaW5nLiBIaWVyIGRhZ2VnZW4gUk9URkx0IG1hbiBzY2hvbgptYWwsIHdlbm4gZWluZXIgbWl0IGVoZXIgbmllZHJpZ2VtIFNMIGtlaW4gU01TIGdld3VwcHQga3JpZWd0LiBIaWxhcmlvdXMuCk5hIEtsZWluZShyKSwgbm9jaCBlaW4gd2VuaWcgU1Agbm9ldGlnLCBkZW5rZSBpY2ggZGFubiBpbW1lciBzY2htdW56ZWxuZC4KQWxzIDExIG1hY2h0IG1hbiBzaWNoIHVlYnJpZ2VucyBtZWlzdCBtaXQgZ3V0IGdldWVidGVtIFNQTVNQIGluIGRpZSBTU1AgYXVmLAp1bSBzY2huZWxsIHZpZWxlIFN0dXBzZSBpbSBUZWFtIGFienVncmFzZW4uIERlciB0YWIgc29sbHRlIG5hdHVlcmxpY2ggaW1tZXIKcmljaHRpZyBzZWluLCBzb25zdCBMT0xlbiBzaWUgd2llZGVyIGFsbGUgcnVtLiBJY2ggd2FyIG5ldWxpY2ggc28gZGFlbWxpY2gKdW5kIGRhY2h0ZSBub2NoLCBkYXNzIFRJIGRpZSBIZWltYXQgZGVzIFV2U2RFUiB3YXIuIERhbm4gYmluIGljaCB2b2VsbGlnCnBsYW5sb3MgZHVyY2ggZGFzIFZMIGdlcmFubnQsIGFiZXIgYXVjaCBkYTogbmljaHRzISBBdXMgRnJ1c3QgenVlY2t0ZSBpY2gKZGVuIFZTIHVuZCBoYXV0ZSB3ZW5pZ3N0ZW5zIGRhcyBXVVcgdW0sIHVuZCBuZWluIC4uLiBpY2ggbXVzc3RlIGRhenUgbmljaHQKYXVmIGRpZSBXV0kuIE1vcmdlbiBnZWggaWNoIGluIGRlbiBXV1cgdW5kIGZvcnNjaGUuIE9kZXIgaWNoIGxhc3MgZXMgc2VpbiwKbWFsIHNlaG4uCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZ1ZXIgZGllIG1pdCBkZW0gQWJrZmksIGVpbiBrbGVpbmVyIERpc2t1cnMgZHVyY2ggaGlsZmUgYWJrLiAoUnVtYXRhLCAxOC4gSnVsIDIwMTMsIDExOjE0OjE2KToKfiMhIHJuPUFyayBydD0xMzc0MDk5NTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM3NDA5OTUyMwpCdXV1aCBkZXIgTlBDIGthbSB2aWVsIHp1IGZydWVoIGRyYW4uIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZ1ZXIgZGllIG1pdCBkZW0gQWJrZmksIGVpbiBrbGVpbmVyIERpc2t1cnMgZHVyY2ggaGlsZmUgYWJrLiAoQW5hdG9sLCAxOC4gSnVsIDIwMTMsIDEyOjU5OjMzKToKfiMhIHJuPUFyayBydD0xMzc0MDk5NTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM3NDA5OTUyMwpEZXJhcnRpZyB2aWVsZSBBYmt1ZXJ6dW5nZW4sIGRpZSBkaWUgTlNBIG5pY2h0IHZlcnN0ZWh0LCB3ZXJkZW4gZGljaApmcnVlaGVyIG9kZXIgc3BhZXRlciBpbiBlaW5lciBEYXRlbmJhbmsgYXVzZmxhZ2dlbiwgaW4gZGVyIER1IG5pY2h0CmF1c2dlZmxhZ2d0IHdlcmRlbiBtb2VjaHRlc3QuCgpOYWphLCBXSVIsIGRpZSBEZWluZSBRdWVzdHMga2VubmVuLCB3dXNzdGVuIGRhcyBqYSBzY2hvbiBpbW1lci4gCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGdWVyIGRpZSBtaXQgZGVtIEFia2ZpLCBlaW4ga2xlaW5lciBEaXNrdXJzIGR1cmNoIGhpbGZlIGFiay4gKEFyaywgMTguIEp1bCAyMDEzLCAyMDoyOTo1Nik6Cn4jISBybj1BbmF0b2wgcnQ9MTM3NDE0NTE3MyByZz1zY2htYXJybgp+IyEgdGlkPTEzNzQwOTk1MjMKV1RGPyBBRkFJSyBiaXN0IER1IGRvY2ggZGF1ZXJuZCBBRkshIER1IERBVSA6LSkgZGEgUk9GTCBpY2ggbWljaCBrYXB1dHQsCndvbGxqYSwgZGFzIEdlZGlzc2UgZ21hQXYsIGhhISBMb2cgb3V0LCBmYWFhYWFyIHlvIQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhldWNobGVyLi4uIChIdXJheHByYXgsIDIxLiBKdWwgMjAxMywgMjI6MDg6MzcpOgp3ZXJkZW4gaGllciBzY2huZWxsIGVudHRhcm50OgoKW1RlYW0gNDpIdXJheHByYXhdIGdyYXRzCj4gRHUgc3B1ZXJzdCBkZW4gTmVpZCAuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNwaWVsZXJzZWl0aWdlIFF1ZXN0ZWluc3R1ZnVuZz8gKEdsb2luc29uLCAxMS4gQXVnIDIwMTMsIDEyOjA3OjA0KToKfiMhIHJuPUFyayBydD0xMzc2MTc3NTg5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xMzc1NDg3MzU5CkRhcyBmdW5rdGlvbmllcnQgZG9jaCBhdWNoIGluIFdhY2tlbj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTdGFydHNlaXRlIEhvbWVwYWdlIChBbmF0b2wsIDEzLiBBdWcgMjAxMywgMjM6Mjc6MzYpOgp+IyEgcm49VGluIHJ0PTEzNzY0MTg5MzYgcmc9b2VmZmVudGxpY2hrZWl0c2FyYmVpdAp+IyEgdGlkPTEzNzYzMDM4NTMKRXMgaGF0IGVpbiBwYWFyIEphaHJlIGdlZGF1ZXJ0IGJpcyBlcyBzbyB3YXIuIF06Xj4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTdGFydHNlaXRlIEhvbWVwYWdlIChBcmssIDE0LiBBdWcgMjAxMywgMDA6MjM6NDMpOgp+IyEgcm49QW5hdG9sIHJ0PTEzNzY0MjkyNTYgcmc9c2NobWFycm4KfiMhIHRpZD0xMzc2MzAzODUzCk1hbmNoZSB3ZXJkZW4gaGFsdCBkdXJjaCBzbyBsYWVzdGlnZSBEaW5nZSB3aWUgQXJiZWl0LCBVcmxhdWIsIEZyZWl6ZWl0IHVuZCBSTApnZW5lcmVsbCB2b24gV2ljaHRpZ2VtIGFiZ2VoYWx0ZW4gOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogR2V3aW5udW5nIG5ldWVyIFNwaWVsZXI6IEVudHdpY2tsdW5nIGVpbmVyIEFwcD8gKEdsb2luc29uLCAxOC4gQXVnIDIwMTMsIDAxOjI5OjE5KToKfiMhIHJuPUdhYnlsb24gcnQ9MTM3Njc3ODUxNiByZz1vZWZmZW50bGljaGtlaXRzYXJiZWl0Cn4jISB0aWQ9MTM3Njc0MDQ4NwouLi4gaXJnZW5kd2llIGVyaW5uZXJ0IG1pY2ggR2FieWxvbnMgUHJvYmxlbSBhbiBLcmlwa2UgYXVzIEJCVCAuLi4gZGFiZWkgaGFiZQppY2ggR2FieWxvbiB6dW1pbmRlc3QgZXR3YXMgYW5kZXJzIGluIEVyaW5uZXJ1bmcgLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogR2V3aW5udW5nIG5ldWVyIFNwaWVsZXI6IEVudHdpY2tsdW5nIGVpbmVyIEFwcD8gKFpvb2ssIDE5LiBBdWcgMjAxMywgMDk6MzE6MjUpOgp+IyEgcm49R2FieWxvbiBydD0xMzc2Nzc4MzA4IHJnPW9lZmZlbnRsaWNoa2VpdHNhcmJlaXQKfiMhIHRpZD0xMzc2NzQwNDg3CkVyaW5uZXJ0IG1pY2ggYW4gbWVpbmUgZXJzdGUgTXVkLVBhcnR5LCBhbHMgaWNoIGVpbiBsYXV0ZXMKIk9SSyBUT0VURU4gT1JLIFRPRVRFTiBPUksgVE9FVEVOIiBpbiBkZXIgS25laXBlIGhvZXJ0ZS4KWgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogR2V3aW5udW5nIG5ldWVyIFNwaWVsZXI6IEVudHdpY2tsdW5nIGVpbmVyIEFwcD8gKEFuYXRvbCwgMjAuIEF1ZyAyMDEzLCAxNDoxNDo1Myk6Cn4jISBybj1ab29rIHJ0PTEzNzY4OTc0ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xMzc2NzQwNDg3Ci4uLiB1bmQgdW56YWVobGlnZSB2ZXJzdG9lcmVuZGUgQmxpY2tlIHVuc2NodWxkaWdlciBGYWhyZ2Flc3RlIGluIGRlbgpkZXV0c2NoZW4gQmFobmVuLCBkaWUgenVmYWVsbGlnIGVpbiBhbmdlcmVndGVzIEdlc3ByYWVjaCB6d2VpZXIgTXVkZGVyCm1pdGhvZXJ0ZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogR2V3aW5udW5nIG5ldWVyIFNwaWVsZXI6IEVudHdpY2tsdW5nIGVpbmVyIEFwcD8gKEdsb2luc29uLCAyMC4gQXVnIDIwMTMsIDE0OjE2OjEzKToKfiMhIHJuPUFuYXRvbCBydD0xMzc3MDAwODkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM3Njc0MDQ4NwouLi4gb2RlciBlaW5lIFVudGVyaGFsdHVuZyBhdWYgU2NoZWluYXJhYmlzY2ggdWViZXIgZGVuIFBvcnNjaGUgOTExPyAiRGVyCkRpa3RhdG9yIiBsYWVzc3QgZ3J1ZXNzZW4gKHdlbm4gZGVyIEZpbG0gbGVpZGVyIGF1Y2ggbnVyIGdlc3RlbGx0IHdhcikuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBcmF0aG9ybiwgMjEuIEF1ZyAyMDEzLCAxOToxNjo0OSk6CltGcmV1bmRlOlRpbl0gYWNoIHNjaGVpc3NlCltUb2Q6TGFyc10gRWluIFJhdWNoZGFlbW9uIGhhdCBnZXJhZGUgVGluIHVtZ2VicmFjaHQuCltUb2Q6VGluIEJpbiBtYWwgQUZLOiBMYXJzIGVpbmVuIEJlc3VjaCBhYnN0YXR0ZW5dCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChUaW4sIDIxLiBBdWcgMjAxMywgMTk6MTc6MTcpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTM3NzEwNTQwOSByZz1zY2htYXJybgp+IyEgdGlkPTEzNzcxMDU0MDkKKmcqCnRqYSBzbyBiaW4gaWNoIGViZW46LUQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRkxXIChBcmssIDIxLiBBdWcgMjAxMywgMTk6MzM6NDkpOgp+IyEgcm49VGluIHJ0PTEzNzcxMDU0Mzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzc3MTA1NDA5CkVyc3RhdW5saWNoLCBkZXIgUmF1Y2hkYWVtb24gc2NoZWludCBnZXJhZGUgRXJmb2xnIGJlaSAiZW50Zmx1Y2hlIHRpbiIgZ2VoYWJ0Cnp1IGhhYmVuLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZMVyAoVGluLCAyMS4gQXVnIDIwMTMsIDE5OjM0OjIxKToKfiMhIHJuPUFyayBydD0xMzc3MTA2NDI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM3NzEwNTQwOQp3YXMgZnVlciBlaW4gZmx1Y2g/Pz8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBGTFcgKEFyaywgMjEuIEF1ZyAyMDEzLCAyMDozMjo1MSk6Cn4jISBybj1UaW4gcnQ9MTM3NzEwNjQ2MSByZz1zY2htYXJybgp+IyEgdGlkPTEzNzcxMDU0MDkKWml0YXQ6IFtGcmV1bmRlOlRpbl0gYWNoIHNjaGVpc3NlCnRqYSBzbyBiaW4gaWNoIGViZW46LUQKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGTFcgKFRpbiwgMjEuIEF1ZyAyMDEzLCAyMDozNTo1Nyk6Cn4jISBybj1BcmsgcnQ9MTM3NzEwOTk3MSByZz1zY2htYXJybgp+IyEgdGlkPTEzNzcxMDU0MDkKbmEsIG5hLCAgaWNoIHdhcm4gIG1laW5lIGZyZXVuZGUgaGFsdCB2b3IgLCBiZXZvciBpY2ggc3RlcmJlOi1ECgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNzogU3BpZWxlcnNlaXRpZ2UgUXVlc3RlaW5zdHVmdW5nPyAoWm9vaywgMjIuIEF1ZyAyMDEzLCAxMjo1Mjo0Myk6Cn4jISBybj1CdWdmaXggcnQ9MTM3NzE2NTQyOCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTM3NTQ4NzM1OQpXb2JlaSBtaWNoIGRhcyBhbiBkZW4gYWx0ZW4gU3BydWNoIGF1cyBkZXIgTWFya2V0aW5nLUFidGVpbHVuZwplcmlubmVydDogIkRpZSBIYWVsZnRlIG1laW5lcyBXZXJiZS1CdWRnZXRzIGlzdCB2ZXJnZWJlbnMgdW5kIAp1bnNpbm5pZy4gQWxsZWluLCBpY2ggd2Vpc3MgbmljaHQsIHdlbGNoZSBIYWVsZnRlLiIKClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBTcGllbGVyc2VpdGlnZSBRdWVzdGVpbnN0dWZ1bmc/IChBbmF0b2wsIDIyLiBBdWcgMjAxMywgMjE6MTQ6MTApOgp+IyEgcm49QW5hdG9sIHJ0PTEzNzcxOTg3NTEgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTEzNzU0ODczNTkKQXVzIGRlciBBbnR3b3J0IEFya3MgKGluc2dlc2FtdCB+IDYwIFplaWxlbikgenUgbWVpbmVtIFF1ZXN0ZmVlZGJhY2s6Cgo+IEljaCBiaXR0ZSB1bSBWZXJnZWJ1bmcsIHdlbm4gZXMgaGllciB1bmQgZGEgbm9jaCBoYWt0KGUpLCBpcyBoYWx0IG1laW5lCj4gJ0FuZmFlbmdlcnF1ZXN0JyA6LSkKCi4uLiBkYXMgd2FyICJBdWdlIGRlcyBUZXVmZWxzIi4gQXJnaCwgQXJrLiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjMwOiBTcGllbGVyc2VpdGlnZSBRdWVzdGVpbnN0dWZ1bmc/IChBcmssIDIyLiBBdWcgMjAxMywgMjI6MjQ6NDgpOgp+IyEgcm49QW5hdG9sIHJ0PTEzNzcxOTg4NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xMzc1NDg3MzU5ClNvd2FzIGxpZWd0IGJlaSBEaXIgbm9jaCBydW0/IFdlaWEgOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzE6IFNwaWVsZXJzZWl0aWdlIFF1ZXN0ZWluc3R1ZnVuZz8gKEFuYXRvbCwgMjMuIEF1ZyAyMDEzLCAwODoyMDo1NCk6Cn4jISBybj1BcmsgcnQ9MTM3NzIwMzA4OCByZz1zY2htYXJybgp+IyEgdGlkPTEzNzU0ODczNTkKSWNoIG11c3N0ZSBpbSBadWdlIGRlciBab29rLU1haWxzIHZpZWwgbG9lc2NoZW4uIEFiZXIgaWNoIGhhYiBub2NoIGRhcwplaW5lIG9kZXIgYW5kZXJlIEtsZWlub2QgaW0gUG9zdGZhY2guIEZyYWcgZGllIE5TQS4gOy0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzI6IFNwaWVsZXJzZWl0aWdlIFF1ZXN0ZWluc3R1ZnVuZz8gKFRpbiwgMjMuIEF1ZyAyMDEzLCAxMDoxMzoxNSk6Cn4jISBybj1BbmF0b2wgcnQ9MTM3NzIzODg1NCByZz1zY2htYXJybgp+IyEgdGlkPTEzNzU0ODczNTkKYWNoIG1haWxzIG11c3MgbWFuIGltbWVyIGlyZ2VuZHdhbm4gbG9lc2NoZW46KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzM6IFNwaWVsZXJzZWl0aWdlIFF1ZXN0ZWluc3R1ZnVuZz8gKEFuYXRvbCwgMjMuIEF1ZyAyMDEzLCAxMToyNzoxMyk6Cn4jISBybj1UaW4gcnQ9MTM3NzI0NTU5NSByZz1zY2htYXJybgp+IyEgdGlkPTEzNzU0ODczNTkKSWNoIGhhYiBoaWVyIG5vY2ggZWluZSBNYWlsIG1pdCBkZW0gVGl0ZWwgImt1cnpmYXNzdW5nIGRlcgpXb2xwZXJ0aW5nZXJjbHVic2l0enVuZyB2b20gMjkuMTEuOTQiLiBEYXMgc2luZCBzY2hvbiBLbGVpbm9kZSBkZXIKWmVpdGdlc2NoaWNodGUuLi4gOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zNDogU3BpZWxlcnNlaXRpZ2UgUXVlc3RlaW5zdHVmdW5nPyAoVGluLCAyMy4gQXVnIDIwMTMsIDExOjI5OjMzKToKfiMhIHJuPUFuYXRvbCBydD0xMzc3MjUwMDMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM3NTQ4NzM1OQpoYWhhLCB3aWUgZ2VpbCEhIQpkYSB3YXIgaWNoIGphIG5vY2ggZW4ga2xlaW5lciB6d3VnZ2VsOikpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41MTogU3BpZWxlcnNlaXRpZ2UgUXVlc3RlaW5zdHVmdW5nPyAoR2xvaW5zb24sIDI1LiBBdWcgMjAxMywgMjI6MDc6MjkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTM3NzQ2MTEzNCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTM3NTQ4NzM1OQpOYWNodHJhZyB6dW0gQmVpc3BpZWw6IE1pdCB3ZWxjaGVtIFJlY2h0IHNvbGx0ZSBkaWNoIGVpbiBNYWdpZXIsIEVyem1hZ2llcgpvZGVyIEdvdHQgZGFyYW4gaGluZGVybiwgbmFja2lnIHVlYmVyIGRpZSBHYW1lc2NvbSB6dSByZW5uZW4sIG1pdCBlaW5lcgpncm9zc2VuIFNjaGFlcnBlIG1pdCAnTW9yZ2VuZ3JhdWVuIC0gREFTIE1VRCEgQWxsZSBhbmRlcmVuIHNpbmQgZG9vZiEnLCBkaWUKZGFzIFNjaGxpbW1zdGUgdmVyaGluZGVydD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBHZXdpbm51bmcgbmV1ZXIgU3BpZWxlcjogRW50d2lja2x1bmcgZWluZXIgQXBwPyAoSHVyYXhwcmF4LCAyNi4gQXVnIDIwMTMsIDIwOjQyOjMzKToKfiMhIHJuPUh1bW5pIHJ0PTEzNzY4MDgyMzUgcmc9b2VmZmVudGxpY2hrZWl0c2FyYmVpdAp+IyEgdGlkPTEzNzY3NDA0ODcKR2licyB6dSwgSHVtbmksIER1IGJpc3QgbnVyIGdlZ2VuIGVpbmUgTUctQXBwIG1pdCBTcHJhY2hzdGV1ZXJ1bmcsIHdlaWwga2VpbmUKZGF2b24gamUgZGVpbmUgTlBDLU5hbWVuIHZlcnN0ZWhlbiB3dWVyZGUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBHZXdpbm51bmcgbmV1ZXIgU3BpZWxlcjogRW50d2lja2x1bmcgZWluZXIgQXBwPyAoSHVtbmksIDI3LiBBdWcgMjAxMywgMDg6NTY6MzcpOgp+IyEgcm49SHVyYXhwcmF4IHJ0PTEzNzc1NDI1NTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMzc2NzQwNDg3CldpZXNvPyBLbG9wc2ksIGRlciBXaXJ0IGluIEhlaWRlbmh1cz8gTGlzYSwgZGFzIFp3ZXJnZW5tYWVkY2hlbj8KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogR2V3aW5udW5nIG5ldWVyIFNwaWVsZXI6IEVudHdpY2tsdW5nIGVpbmVyIEFwcD8gKFNhcmF5LCAyNy4gQXVnIDIwMTMsIDEyOjE2OjIzKToKfiMhIHJuPUh1bW5pIHJ0PTEzNzc1ODY1OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzc2NzQwNDg3ClVuZCBkYXMgd2FyZW4gc2llIGRhbm4gYXVjaCBzY2hvbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtlaW4gVXJsYXViIChab29rLCAyOS4gQXVnIDIwMTMsIDEwOjE3OjI5KToKfiMhIHJuPUNoYWdhbGwgcnQ9MTM3Nzc2MjM2MCByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTM3Nzc2MjM2MApXdXJkZSBkYXMgSW50ZXJuZXQgZ2VuIEJheWVybiBzY2hvbiBhYmdla2xlbW10PyBOYWNoZGVtIGphIHNjaG9uCkpvdXJuYWxpc3RlbiBhdXNnZXdpZXNlbiB3ZXJkZW4sIGthcHBlbiBkaWUgYmVzdGltbXQgYXVjaCBkYXMKTmV0ei4KClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2VpbiBVcmxhdWIgKE1hcmN1cywgMjkuIEF1ZyAyMDEzLCAxNTowOTo1Nyk6Cn4jISBybj1ab29rIHJ0PTEzNzc3NjQyNDkgcmc9c2NobWFycm4KfiMhIHRpZD0xMzc3NzYyMzYwCk5laW4sIGdlaHQgbm9jaC4gWnVtaW5kZXN0IGluIEZyYW5rZW4gOykKCkNpYW8sIE1hcmN1cwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogS2VpbiBVcmxhdWIgKFpvb2ssIDI5LiBBdWcgMjAxMywgMTc6MTA6MjQpOgp+IyEgcm49TWFyY3VzIHJ0PTEzNzc3ODE3OTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzc3NzYyMzYwCkFoLCBkYXMgdmVya29tcGxpemllcnQgZG9jaCB3aWVkZXIgYWxsZXMuCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBLZWluIFVybGF1YiAoTW9vbnNoaW5lLCAyOS4gQXVnIDIwMTMsIDE4OjAyOjM3KToKfiMhIHJuPVpvb2sgcnQ9MTM3Nzc4OTAyNCByZz1zY2htYXJybgp+IyEgdGlkPTEzNzc3NjIzNjAKV2FyIEZyYW5nZyduIGpldHp0IGV0d2EgZG9jaCBCYXllcm4/IDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogS2VpbiBVcmxhdWIgKFpvb2ssIDI5LiBBdWcgMjAxMywgMTk6Mjk6MzIpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTEzNzc3OTIxNTcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzc3NzYyMzYwCkJldXRlYmF5ZXJuLgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBLZWluIFVybGF1YiAoUnVtYXRhLCAyOS4gQXVnIDIwMTMsIDIwOjU5OjM3KToKfiMhIHJuPVpvb2sgcnQ9MTM3Nzc5NzM3MiByZz1zY2htYXJybgp+IyEgdGlkPTEzNzc3NjIzNjAKRGFzIEFsbGdhZXUgc2llaHQgc2ljaCBhdWNoIGFscyBTY2h3YWViaXNjaC4KS2VpbmVyIHdpbGwgQmF5ZXIgc2VpbiwgaGloaS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEtlaW4gVXJsYXViIChNb29uc2hpbmUsIDI5LiBBdWcgMjAxMywgMjE6MDA6MjIpOgp+IyEgcm49UnVtYXRhIHJ0PTEzNzc4MDI3Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xMzc3NzYyMzYwCkFiZXIga2VpbmVyIGRlciBTY2h3YWJlbiBzaWVodCBkZW4gQWxsZ2FldWVyIGFscyBzb2xjaGVuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogS2VpbiBVcmxhdWIgKFJ1bWF0YSwgMjkuIEF1ZyAyMDEzLCAyMTowMToxMCk6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTM3NzgwMjgyMiByZz1zY2htYXJybgp+IyEgdGlkPTEzNzc3NjIzNjAKRWxpdGFlcmVzIFBhY2sgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBLZWluIFVybGF1YiAoR2xvaW5zb24sIDI5LiBBdWcgMjAxMywgMjE6MDQ6MjUpOgp+IyEgcm49UnVtYXRhIHJ0PTEzNzc4MDI4NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xMzc3NzYyMzYwCkFjaCwgZGFzIHNpbmQgZ2FueiBhcm1lIFNjaHdlaW5lLiBEaWUgQm9kZW5zZWVhbGVtYW5uZW4sIGRhcyBpc3QgZGllIEVsaXRlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEtlaW4gVXJsYXViIChCYW1iaSwgMzAuIEF1ZyAyMDEzLCAwMToxNDoyOCk6Cn4jISBybj1NYXJjdXMgcnQ9MTM3Nzc4MTc5NyByZz1zY2htYXJybgp+IyEgdGlkPTEzNzc3NjIzNjAKLi4uIHdhcyBqYSBuaWNodCBCYXllcm4gaXN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS2VpbiBVcmxhdWIgKFpvb2ssIDMwLiBBdWcgMjAxMywgMTA6MDE6MzApOgp+IyEgcm49QmFtYmkgcnQ9MTM3NzgxODA2OCByZz1zY2htYXJybgp+IyEgdGlkPTEzNzc3NjIzNjAKSWNoIGVya2xhZXJlIGRpZSBEZWJhdHRlIGZ1ZXIgYmVlbmRldC4KCkFsdGVybmF0aXYgaXN0IHNpZSBpbiBNZWdhc2NobWFycm4gcmVnZWxnZW1hZXNzIGZvcnR6dWZ1ZWhyZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogS2VpbiBVcmxhdWIgKEdsb2luc29uLCAzMC4gQXVnIDIwMTMsIDE0OjIzOjM0KToKfiMhIHJuPVpvb2sgcnQ9MTM3Nzg0OTY5MCByZz1zY2htYXJybgp+IyEgdGlkPTEzNzc3NjIzNjAKRmluZGVzdCBkdSBkaWUgRGViYXR0ZSBldHdhIG5pY2h0IHNlaHIgc3Bhbm5lbmQ/IEltbWVyaGluIHdhZXJlIG9obmUgc29sY2hlCkRpc2t1c3Npb25lbiBkYXMgTGViZW4gZG9jaCBsYW5nd2VpbGlnLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmVya2VubnRuaXMgZGVzIHRhZ2VzIChUaW4sIDMxLiBBdWcgMjAxMywgMTk6NDY6MzMpOgphbiB0aWpvIHVlYmVybGVnIG1hbCB3YXMgZnVlciB0aWVyZSBlaW5lbiBzY2h3YW56IGhhYmVuIDwxOTozNzoyMD4Kdm9uICBUaWpvOiBhbGxlIG1hZW5ubGljaGVuIHdlc2VuIGhhYmVuIGVpbmVuIHNjaHdhbnouLi4gPDE5OjQxOjE1PgpBbiBUaWpvOiB0aWVyZSBzb2xsc3QgZHUgc3VjaGVuLCA8MTk6NDI6MTI+CjopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZGFzIGthbm4gZGVyIHBhcGFnZWkgIChUaW4sICAxLiBTZXAgMjAxMywgMTg6Mjc6MjQpOgpLb2trbyBmbGF0dGVydCBoZXJlaW4uCktva2tvIGtyYWVjaHp0OiAuLi4ga3Jycm9vb2FhYSAuLi4gSGFsbG8gZWluZSBMaWJlbGxlLCBlaW5lIEtyb2V0ZSwgZWluZQpLb2trbyBrcmFlY2h6dDogS2FrZXJsYWtlLCBlaW5lIE1laXNlLCBlaW4gQnJhdW5iYWVyLCBlaW5lIEtyb2V0ZSwgZWluCktva2tvIGtyYWVjaHp0OiBTY2htZXR0ZXJsaW5nLCBlaW4gQmVybmhhcmRpbmVyLCBlaW4gQmVybmhhcmRpbmVyLCBlaW4gTHVjaHMsCktva2tvIGtyYWVjaHp0OiBIaXBwZSwgSGlwcGUsIEhpcHBlLCBIaXBwZSwgSGlwcGUsIEhpcHBlLCBIaXBwZSwgSGlwcGUsIEhpcHBlLApLb2trbyBrcmFlY2h6dDogSGlwcGUsIGVpbmUgQmllbmUsIEhpcHBlLCBIaXBwZSwgSGlwcGUsIEhpcHBlLCBIaXBwZSwgSGlwcGUsCktva2tvIGtyYWVjaHp0OiBIaXBwZSwgSGlwcGUsIGVpbmUgS3JhZWhlLCBlaW5lIEtyYWVoZSwgZWluZSBIZXVzY2hyZWNrZSwgZWluZQpLb2trbyBrcmFlY2h6dDogSGV1c2NocmVja2UsIGVpbmUgSGV1c2NocmVja2UsIEVsam8sIE1vb25zaGluZSB1bmQgQXJrc2hhdCAuLi4KCipsYWNoKgplY2h0IGdlaWwKaXN0IG5pY2h0IG1hbCBtZWluZXI6UAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVz8gKEFyYXRob3JuLCAgMi4gU2VwIDIwMTMsIDIxOjA3OjE2KToKVm9uIERlcmluOiBlcnN0bWFsIGJpc3NjaGVuIHJ1bWxhdWZlbiA6KQpbVG9kOkxhcnNdIEVpbiBTcHJ1bmcgaW4gZWluZW4gVGFsa2Vzc2VsIGhhdCBnZXJhZGUgRGVyaW4gdW1nZWJyYWNodC4KW1RvZDpFaW4gU3BydW5nIGluIGVpbmVuIFRhbGtlc3NlbF0gUGZmZmZmZmZmZmZmdC4uLi4uLi5QTFVNUFMhCgpBcmF0aG9ybi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFc/IChUaW4sICAyLiBTZXAgMjAxMywgMjE6MDc6NDUpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTM3ODE0ODgzNiByZz1zY2htYXJybgp+IyEgdGlkPTEzNzgxNDg4MzYKbGFjaAppY2ggIGhhYmUgZWluIGh1aHUgYmVrb21tZW4gYmV2b3Igc2llIGdlc3BydW5nZW4gaXN0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXPyAoQ2hhZ2FsbCwgIDIuIFNlcCAyMDEzLCAyMTowODowNCk6Cn4jISBybj1BcmF0aG9ybiBydD0xMzc4MTQ4ODM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM3ODE0ODgzNgpIYWV0dGVzdCBEdSBtYWwgbWVpbmVuIHBlcnNvZW5saWNoZW4gUmVib290IGFuZ2Vub21tZW4sIERlcmluLiBXYWVyIHNjaG5lbGxlcgpnZWdhbmdlbiBhbHMgZGllc2UgYmxvZWRlIFNlcXVlbnouCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEdld2lubnVuZyBuZXVlciBTcGllbGVyOiBFbnR3aWNrbHVuZyBlaW5lciBBcHA/IChHbG9pbnNvbiwgIDIuIFNlcCAyMDEzLCAyMjoxNjowMyk6Cn4jISBybj1BcmsgcnQ9MTM3ODE1MjY2MyByZz1vZWZmZW50bGljaGtlaXRzYXJiZWl0Cn4jISB0aWQ9MTM3Njc0MDQ4NwpMYWVzZXN0IGR1IE1lZ2FzY2htYXJybiwgd3Vlc3N0ZXN0IGR1IGRhcy4KCkdsYXViZSBpY2ggOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3dhcy4uLiAoTW9yZ2Fyc2ssICAzLiBTZXAgMjAxMywgMTI6MDk6MTUpOgpFaW4gd2FiZXJuZGVzIEdlYmlsZGUgZXJzY2hlaW50IHVycGxvZXR6bGljaCB2b3IgRGlyLgpUb20gc2FndDogTW9tZW50IGVpbiBXYW5kbGVyISBFcnN0IEZ1ZXNzZSBhYnB1dHplbiEgU29uc3QgbW90enQgUHJpbXVsYSBydW0uClsuLi4uLl0KRGVyIFdhbmRsZXIgdmVyc2Nod2luZGV0IHVycGxvZXR6bGljaC4KVG9tIHNhZ3Q6IE1vbWVudCBKZW1hbmQhIEVyc3QgRnVlc3NlIGFicHV0emVuISBTb25zdCBtb3R6dCBQcmltdWxhIHJ1bS4KCkh1ZGRsZXMuIEVjaHQuIEtlaW4gV3VuZGVyLCBkYXNzIG1hbiBkYSBlcnN0bWFsIGF1ZnJhZXVtZW4gbXVzcy4uLiAKCk1vcmdhcnNrCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU293YXMuLi4gKFpvb2ssICA0LiBTZXAgMjAxMywgMDk6Mjg6MjkpOgp+IyEgcm49TW9yZ2Fyc2sgcnQ9MTM3ODIwMjk1NSByZz1zY2htYXJybgp+IyEgdGlkPTEzNzgyMDI5NTUKVm9yIGFsbGVtIGRyZWlzdCB2b20gV2FuZGxlciwgZXMgZWluZmFjaCBtYWwgdW5zaWNodGJhciB6dSAKcHJvYmllcmVuLiBIb2JiaXRwb3dlciEgOykgCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSW4gZGVyIFNTUCBuaXggTmV1ZXMuIChNaXJha2EsIDIzLiBTZXAgMjAxMywgMjI6MjA6MzMpOgpXZXIgdm9uIGRlbiBuZXVlbiBTcGllbGVybiBudXIgbWFsIGRlbiBCZWdyaWZmICJCb2luZyBSZXNldCIgZ2Vob2VydCwgYWJlcm4Kbm9jaCBuaWUgaW4gQWt0aW9uIGdlc2VoZW4gaGF0LCBkYXMgc2NoYXV0IGluIGV0d2Egd2llIGViZW4gZXJsZWJ0IGF1czoKCkRlciBLaWxsZXJwb3BlbCBmYWVsbHQgdG90IHp1IEJvZGVuLgpFaW4gS2lsbGVycG9wZWwga29tbXQgYW4uCkVpbiBLaWxsZXJwb3BlbCBuaW1tdCBlaW5lbiBTY2hsZWltYmV1dGVsIGF1cyBlaW5lciBMZWljaGUuCgpNaXJha2EKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmxlenRlbnMgaW4gZGVyIGF1c2JpbGR1bmcgKEFyc29uLCAyOC4gU2VwIDIwMTMsIDE2OjQ4OjI3KToKU3RlaW5lYmVuZS4KRXMgZ2lidCBkcmVpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG5vcmRlbiwgd2VzdGVuIHVuZCBzdWVkZW4uClNpbmFsYXQgZGVyIEZlbGRrYWVtcGZlci4KRWluIEFuZnVlaHJlciBkZXIgT3Jrcy4KU2luYWxhdCBncnVlYmVsdC4KU2luYWxhdCBiZXNjaGltcGZ0IGVpbmVuIE9yazogTWl0IERlaW5lciBGcmVzc2UgZ2Vob2Vyc3QgRHUgaW4gZGllClNpbmFsYXQgYmVzY2hpbXBmdCBlaW5lbiBPcms6IFNjaHJlY2tlbnNzcGl0emUhCkVpbiBPcmsgZXJ3aWRlcnQ6IFNlaSBuaWNodCBzbyBnZW1laW4genUgbWlyIDooCkVpbiBPcmsgc3R1ZXJ6dCBzaWNoIHZvbGwgV3V0IGF1ZiBTaW5hbGF0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGxlenRlbnMgaW4gZGVyIGF1c2JpbGR1bmcgKFRpbiwgMjguIFNlcCAyMDEzLCAxNjo0OToyNyk6Cn4jISBybj1BcnNvbiBydD0xMzgwMzc5NzA3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM4MDM3OTcwNwpoYWhhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXJ1bSBtYW4gYmVzc2VyIHdlaXNzLCB3YXMgbWFuIGFscyBEZWZhdWx0IGZhaWwgbXNnIGFuZ2VnZWJlbiBoYXQgYWxzIFNlaGVyLi4uIChNaXJha2EsICA0LiBPa3QgMjAxMywgMTI6MjQ6MjYpOgp1bnQgbW9lZ2xpY2hrZWl0Ck1vZWdsaWNoa2VpdGVuIHNvbGwgbWFuIG51dHplbiwgYWxzbyBhdWYgYXVmIQpudXR6ZSBtb2VnbGljaGtlaXQKRGFzIHdhciB3b2hsIG5pY2h0IGRpZSBNb2VnbGljaGtlaXQgIQouLi4KbnV0emUgbW9lZ2xpY2hrZWl0CkRhcyB3YXIgd29obCBuaWNodCBkaWUgTW9lZ2xpY2hrZWl0ICEKLi4uClVuZCBzbyB3ZWl0ZXIgLi4uIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2l0emlnIChUaW4sICA5LiBPa3QgMjAxMywgMjM6MDk6MDApOgpCbGl2aSBrb256ZW50cmllcnQgc2ljaCBhdWYgZXR3YXMuCkJsaXZpIGh1ZXBmdCBwbG9ldHpsaWNoIGR1cmNoIGRpZSBHZWdlbmQuCkJsaXZpIGtvbnplbnRyaWVydCBzaWNoIGF1ZiBldHdhcy4KQmxpdmkga29uemVudHJpZXJ0IHNpY2ggYXVmIGV0d2FzLgpCbGl2aSBncm9laGx0IHpvdGlnZSBMaWVkZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IElnbm9yaWVyZW4uLi4gKEFuYXRvbCwgMTEuIE9rdCAyMDEzLCAwOTo1OTo0Myk6Cn4jISBybj1aZXNzdHJhIHJ0PTEzODE0MjUwMjAgcmc9ZW50d2lja2x1bmcKfiMhIHRpZD0xMzgwNTc3NzMwCkFiZXIuLi4gYWJlci4uLiAKTmEgZ3V0LiBFaW5pZ2UgRWludHJhZWdlIGR1ZXJmdGVuIGRhIG9obmVoaW4gbmljaHQgc28gcmljaHRpZyBmdW5rdGlvbmllcmVuLgoKdHJpY2h0ZXIKZmFyYmVuLnRyaWNodGVyCm1nLmFtYXJ5bGxpcy5vYmoudHJpY2h0ZXIuZmFyYmVuLmFsbGUKdHJpY2h0ZXIuZmFyYmUKdHJpY2h0ZXIuZmFyYmVuCih3b21pdCBrbGFyIHdhZXJlLCBkYXNzIGRhcyBSZWRlc2lnbiBlaW5lbiBnZXdpc3NlbiBTaW5uIGVyZ2ViZW4ga29lbm50ZSkKcm9zYSBzY2hsZWlmZW4KKGhhdCBlaCBuaWNodCBmdW5rdGlvbmllcnQpCkRpdmVyc2UgTmFtZW4gLi4uIHZpZWxsZWljaHQgaXN0IGVzIGRhIG9obmVoaW4gWmVpdCwgbWFsIGF1Znp1cmFldW1lbi4uCnNjaGlsZAooSW4gd2VsY2hlciBRdWVzdCBnYWIgImlnbm9yaWVyZSBzY2hpbGQiIGVpbmVuIFNpbm4/IEltIGdsZWljaGVuIEtvbnRleHQ6CldlciBoYXQgJ3NjaHV0emdlaXN0JyBOSUNIVCBpbiBkZXIgRXJ3YXJ0ZWxpc3RlPykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBJZ25vcmllcmVuLi4uIChBcmssIDExLiBPa3QgMjAxMywgMjA6MTk6MjEpOgp+IyEgcm49QW5hdG9sIHJ0PTEzODE0NzgzODMgcmc9c2NobWFycm4KfiMhIHRpZD0xMzgwNTc3NzMwCkljaCBpY2ggaWNoIC4uLiBQZXRlciBkYXMgU2NoaWxkIGF1cyBEdWVzdGVyd2FsZC4gS3JpZWcgaWNoIGpldHp0IGVpbiBCb25ib24/CgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSWdub3JpZXJlbi4uLiAoTW9vbnNoaW5lLCAxMS4gT2t0IDIwMTMsIDIwOjU2OjQ1KToKfiMhIHJuPUFyayBydD0xMzgxNTE1NTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM4MDU3NzczMApOZWluLiAKQWJlciBlaW4gcm9zYSBTY2hsZWlmY2hlbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldpZSBrb21tdCdzPyAoWm9vaywgMTQuIE9rdCAyMDEzLCAxMDoyMDozNyk6CkVpbiBlbnRzZXR6bGljaGVyIFNjaHJlaSBoYWxsdCB2b20gRnJpZWRob2YgaGVydWViZXIuCkNyb2Z0IGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2llIGtvbW10J3M/IChUaW4sIDE0LiBPa3QgMjAxMywgMTI6NTU6MTYpOgp+IyEgcm49Wm9vayBydD0xMzgxNzM4ODM3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM4MTczODgzNwpoZWhlaGUKd2llIGdlaWxeXiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFRoZW1lbiBpbmFrdGl2ZXIgU3BpZWxlciAoWm9vaywgMjAuIE9rdCAyMDEzLCAxOTo0MDoyMSk6Cn4jISBybj1ab29rIHJ0PTEzODIyOTA3ODggcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTM4MjI3OTQ1NwoiV2FzIGdpYnQncyBkZW5uPyIKCi4uCgoiSEFUIEVSICdXQVMgR0lCVCdTIERFTk4/JyBHRVNBR1Q/Pz8/PyIKCldlciBkZW4gRklsbSB3ZWlzcywgYmVrb21tdCBlaW4gT3JrYmFlcmNoZW4gZ2VzY2hlbmt0LgoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogVGhlbWVuIGluYWt0aXZlciBTcGllbGVyIChIYXNlbmZ1c3MsIDIxLiBPa3QgMjAxMywgMDg6Mjk6MzUpOgp+IyEgcm49Wm9vayBydD0xMzgyMjkwODIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM4MjI3OTQ1NwoiTmV1ZSBWYWhyIFN1ZWQiCgpXbyBpc3QgbWVpbiBPcmtiYWVyY2hlbj8KCkhhc2VuZnVzcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmEgc293YXM/Oy0pIChUaW4sIDIxLiBPa3QgMjAxMywgMjI6NTA6MzMpOgpBbiBTb2x0aGFyOiBkcmFrb25pZW4sIGtlbm5zdCBkdSBkYXM/IGRhIGdpYnRzIGF1Y2ggd2FlY2h0ZXIgZGllCkFuIFNvbHRoYXI6IGdlYmVuIGVyZmFocnVuZyA8MjI6NDQ6Mjc+ClZvbiBTb2x0aGFyOiBqYSBrZW5uIGljaCBhYmVyIGpldHp0IG1hY2ggaWNoIG1hbCB1ZWJlciBkaW5vcyBoZXIKVm9uIFNvbHRoYXI6IDwyMjo0NToxNT4KVm9uIFNvbHRoYXI6IGxvcyBzYWcgYmxvZWRtYW5uIHp1IG1pciBsb3Mgc2FnIGVzIDwyMjo0NjoxNj4KQW4gU29sdGhhcjogYmxvZWRtYW5uOy0pIDwyMjo0NjoyNj4KVm9uIFNvbHRoYXI6IGRhbmtlIGRhcyBoYWIgaWNoIGdlYnJhdWNodC4uLmhhYiBnZW1ldHplbHQgdW5kIGhhYiBkZW4KVm9uIFNvbHRoYXI6IGJsb2NrIG5pY2ggYW5nZWhhYnQgPDIyOjQ2OjU2PgpBbiBTb2x0aGFyOiBoYWhhaGEgPDIyOjQ3OjAzPgoKOmdyaW5zdCBicmVpdAoKCnRpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbmEgc293YXMgYWJlciBhdWNoPyAoVGluLCAyMi4gT2t0IDIwMTMsIDE5OjU0OjUzKToKRHUgZGVua3N0ICAgLiBvIE8gKG5laW4gc293YXMgd2lsbCBpY2ggbmljaHQpCkdyYWJwZmxlZ2VyIGFlY2h6dC4KRHUgZGVua3N0ICAgLiBvIE8gKGphamEgaWNoIGdlaCkKc2NoYXUKRGVyIFdlZyBmdWVocnQgRGljaCB6dSBlaW5lbSBncm9zc2VuLCB1bWdlZmFsbGVuZW4gQmF1bSwgZGVyIGVzCkRpciBlcm1vZWdsaWNodCwgZGVuIHN1ZWRsaWNoIGxpZWdlbmRlbiBGbHVzcyBOYWJsYSB6dSB1ZWJlcnF1ZXJlbi4KSGllciwgd28gZGVyIEZsdXNzIGRlbiBXYWxkIGR1cmNoc2NobmVpZGV0LCBpc3QgZXMgd2llZGVyIGV0d2FzIGhlbGxlcgphYmVyIER1IGhhc3Qgc28gZGFzIGR1bW1lIEdlZnVlaGwsIGFscyB3ZW5uIGVzIGZ1ZXIgbGFlbmdlcmUgWmVpdCBkYXMKbGV0enRlIE1hbCBpc3QsIGRhc3MgRHUgZGllIFNvbm5lIHNlaGVuIGthbm5zdC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgbm9yZHdlc3Rlbi4KVGlucyBEc2NoaW5uLgpHcmFicGZsZWdlci4KRHUgZGVua3N0ICAgLiBvIE8gKG9oYSAgd2VsY2hlIHJpY2h0dW5nKQpHcmFicGZsZWdlciBncmluc3QuCkR1IGRlbmtzdCAgIC4gbyBPIChoYSBub3JkZW4pCj4gbgpXaWUgYml0dGU/CkdyYWJwZmxlZ2VyIGRlbmt0ICAgLiBvIE8gKG5hY2ggc3VlZGVuISA6LXApCj4gbgpXaWUgYml0dGU/Cj4gc2NoYXUKRGVyIFdlZyBmdWVocnQgRGljaCB6dSBlaW5lbSBncm9zc2VuLCB1bWdlZmFsbGVuZW4gQmF1bSwgZGVyIGVzCkRpciBlcm1vZWdsaWNodCwgZGVuIHN1ZWRsaWNoIGxpZWdlbmRlbiBGbHVzcyBOYWJsYSB6dSB1ZWJlcnF1ZXJlbi4KSGllciwgd28gZGVyIEZsdXNzIGRlbiBXYWxkIGR1cmNoc2NobmVpZGV0LCBpc3QgZXMgd2llZGVyIGV0d2FzIGhlbGxlcgphYmVyIER1IGhhc3Qgc28gZGFzIGR1bW1lIEdlZnVlaGwsIGFscyB3ZW5uIGVzIGZ1ZXIgbGFlbmdlcmUgWmVpdCBkYXMKbGV0enRlIE1hbCBpc3QsIGRhc3MgRHUgZGllIFNvbm5lIHNlaGVuIGthbm5zdC4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHN1ZWRlbiB1bmQgbm9yZHdlc3Rlbi4KVGlucyBEc2NoaW5uLgpHcmFicGZsZWdlci4KRHUgZGVua3N0ICAgLiBvIE8gKG9oIGVzIGdpYnQga2VpbiBub3JkZW4pCkR1IGRlbmtzdCAgIC4gbyBPIChhaGUgbncpClRpbiBsYWNodCAgdWViZXIgc2ljaCBzZWxic3QKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNjogVGhlbWVuIGluYWt0aXZlciBTcGllbGVyIChBbmF0b2wsIDI0LiBPa3QgMjAxMywgMTM6NDA6MzMpOgp+IyEgb249QW5hdG9sIG90PTEzODI2MTQ0MTAgb2c9Z2lsZGVuLmthZW1wZmVyCn4jISBybj1HYWJ5bG9uIHJ0PTEzODI1NDA2MTEgcmc9Z2lsZGVuLmthZW1wZmVyCn4jISB0aWQ9MTM4MjI3OTQ1NwpEaWUgVW50ZXJzdGVsbHVuZyB2b24gQm9lc3dpbGxpZ2tlaXQgaXN0IG5ldS4KR2FueiBlaHJsaWNoIC0gd2VubiBkZXIgVmVyZGFjaHQgYmVzdGVodCwgZGFzcyBpcmdlbmRqZW1hbmQgZWluIFRoZW1hCnVlYmVyIEphaHJlKCopIG11dHdpbGxpZyBibG9ja2llcnQgdW5kIG5pY2h0IGRhcmFuIGFyYmVpdGV0LCBrYW5uc3RlIAppaG0ga3JhZnQgSG9zZW50cmFlZ2VyIGVpbmVuIFN1cGVyZHVwZXJvYmVyc2NobGF1dmVyd2VpcyBlcnRlaWxlbiB1bmQKZGFzIFRoZW1hIG1hbnVlbGwgZnJlaWdlYmVuLiBEYWZ1ZXIgYWxsZSAoISkgVHJvZWRsZXIsIFNvcmdmYWVsdGlnZSBvZGVyCmF1Y2ggbnVyIEdlbmllc3NlciBpbiBlaW5lbSBoYWxidG90ZW4gTXVkIHVudGVyIEdlbmVyYWx2ZXJkYWNodCB6dQpzdGVsbGVuIGtsaW5ndCwgYWxzIG9iIGRlciBWZXJhbnR3b3J0bGljaGUgaXJnZW5kZXR3YXMga29tcGVuc2llcmVuIG11c3MuCgoKKCopIERpZSBGdXNzbm90ZSBzcGFyIGljaCBtaXIgOy0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFRoZW1lbiBpbmFrdGl2ZXIgU3BpZWxlciAoQW5hdG9sLCAyNC4gT2t0IDIwMTMsIDEzOjQwOjUyKToKfiMhIHJuPUFuYXRvbCBydD0xMzgyNjE0ODMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM4MjI3OTQ1NwpTdHJlaWNoZSBLb21wZW5zYXRpb25zYmVkYXJmLCBzZXR6ZSBHZWRhbmtlbmxvc2lna2VpdC4KSXN0IG1pbmRlc3RlbnMgZWJlbnNvIHdhaHJzY2hlaW5saWNoLiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE3OiBUaGVtZW4gaW5ha3RpdmVyIFNwaWVsZXIgKEFyYXRob3JuLCAyNS4gT2t0IDIwMTMsIDEwOjMwOjIwKToKfiMhIHJuPUFuYXRvbCBydD0xMzgyNjE0ODMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM4MjI3OTQ1NwpJY2ggZmluZGUgamEgIkdlbmVyYWx2ZXJkYWNodCIgaW4gZGVtIFp1c2FtbWVuaGFuZyBlaW4gdG9sbGVzIFdvcnQuIDpvKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTmV1bGljaC4uLiAoQ2hhZ2FsbCwgIDEuIE5vdiAyMDEzLCAxNjo0MjoyNik6Cn4jISBybj1IdW1uaSBydD0xMzgzMjY4ODY1IHJnPWdpbGRlbi53ZXJ3b2VsZmUKfiMhIHRpZD0xMzgzMjY4MjA1ClVuZCBpY2ggd29sbHRlIGdlcmFkZSBlaW5lbiBFTSBiaXR0ZW4sIERpY2ggYW4gZGVuIFByYW5nZXIgenUgc3RlbGxlbiwgd2VpbCBEdQptaWNoIHZlcmdlc3NlbiBoYXN0IGF1Znp1emFlaGxlbi4KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEdpbGRlbnF1ZXN0cyAoQW5hdG9sLCAgNC4gTm92IDIwMTMsIDEzOjQxOjU1KToKfiMhIG9uPUFuYXRvbCBvdD0xMzgzNTY4OTA4IG9nPWdpbGRlbi53ZXJ3b2VsZmUKfiMhIHJuPVNhcmF5IHJ0PTEzODM1MTI1MTggcmc9Z2lsZGVuLndlcndvZWxmZQp+IyEgdGlkPTEzODM1MTAyMjEKRGFzICJWZXJoYWVuZ25pcyBkZXMgRHVlc3RlcndhbGRzIiBtdXNzIGphIHF1YXNpIApQZmxpY2h0cHJvZ3JhbW0gc2Vpbi4gSmVkZXIgV2Vyd29sZiBtdXNzIHp1bmFlY2hzdAplaW5lIEthcnRlIHppZWhlbi4gWmllaHQgZXIgZGllIFNlaGVyaW4sIGJsZWlidCAKaWhtIGRpZSBRdWVzdCBlcnNwYXJ0LCB6aWVodCBlciBlaW5lbiBEb3JmYmV3b2huZXIsCm11c3MgZXIgTXVhZGliLCBHdWFyZCBvZGVyIENhdHdlYXpsZSBlcnNjaGllc3Nlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHaWxkZW5xdWVzdHMgKFJ1bWF0YSwgIDQuIE5vdiAyMDEzLCAxMzo1MjoyNyk6Cn4jISBybj1BbmF0b2wgcnQ9MTM4MzU2ODkxNSByZz1zY2htYXJybgp+IyEgdGlkPTEzODM1MTAyMjEKVW5kIHdlaGUsIGVyIG1hcmtpZXJ0IGFuIGlyZ2VuZHdlbGNoZW4gQmFldW1lbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdpbGRlbnF1ZXN0cyAoR2xvaW5zb24sICA0LiBOb3YgMjAxMywgMTQ6MDI6MTYpOgp+IyEgcm49QW5hdG9sIHJ0PTEzODM1Njg5MTUgcmc9c2NobWFycm4KfiMhIHRpZD0xMzgzNTEwMjIxClNlaXQgd2FubiB3aXJkIENhdHdlYXpsZSBkYSBuaWNodCBtZWhyIGFsbGVpbiBnZW5hbm50PwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClN0aW1tdCAoWmFwaG9iLCAgNi4gTm92IDIwMTMsIDIxOjM5OjUwKToKPiB6aWVoZSBwYW56ZXIgMiBhbgpEdSB6aWVoc3QgZGVuIEhvcm5wYW56ZXIgYW4uCj4gemllaGUgcGFuemVyIDIgYXVzCkR1IHppZWhzdCBkZW4gSG9ybnBhbnplciBhdXMuCj4gemllaGUgcGFuemVyIGFuCkR1IHppZWhzdCBkZW4gRWlzZWxmZW5wYW56ZXIgYW4uCj4gemllaGUgcnVlc3R1bmcgYXVzCkR1IHRyYWVnc3Qga2VpbmVuIEhvcm5wYW56ZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd2FzIGZ1ZXIgbmUgdG9sbGUgYmVncnVlc3N1bmcgKFRpbiwgIDYuIE5vdiAyMDEzLCAyMzo0ODozNCk6CkRlciBTYW5kdGlnZXIgYmVncnVlc3N0IFphcGhvYiBtaXQ6IEFhYWFoIQpFaW4gU2FuZHRpZ2VyIGdlaHQgbmFjaCBub3JkZW4uCgpaYXBob2IgbGFuZGV0IG5lYmVuIERpciBhdWYgZWluZW0gc2VsYnN0Z2ViYXN0ZWx0ZW4gUGFwaWVyZmxpZWdlci4KWmFwaG9iIGtudWRkZWx0IERpY2guCgoKKmxhY2ggYWJlciBkZXIgc2FuZHRpZ2VyIGdpbmcgZ2FyIG5pY2h0IG5hY2ggbm9yZGVuLi4uIGRhcyB3YXIgaXJnZW5kd2llIG5vY2gKdGVpbCBkZXIgYmVncnVlc3N1bmdeXiAKCnRpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0aW1tdCAoWmVzc3RyYSwgIDcuIE5vdiAyMDEzLCAwMDo0NTowNyk6Cn4jISBybj1aYXBob2IgcnQ9MTM4Mzc3MDM5MCByZz1zY2htYXJybgp+IyEgdGlkPTEzODM3NzAzOTAKRGFzIGR1ZXJmdGUgZGFyYW4gbGllZ2VuLCBkYXNzIGRlciBFaXNlbGZlbnBhbnplciBnYXIgbmljaHQgYWxzICJydWVzdHVuZyIKYW5zcHJlY2hiYXIgaXN0LCBkZW16dWZvbGdlIG51ciBkZXIgSG9ybnBhbnplciBpbiBGcmFnZSBrb21tdCBmdWVyIGRhcwpLb21tYW5kbyB1bmQgZGVyIHdpZWRlcnVtIG5hdHVlcmxpY2ggbmljaHQgYW5nZXpvZ2VuIGlzdC4gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCaXR0ZSB3YXM/IChaYXBob2IsICA3LiBOb3YgMjAxMywgMTc6NTQ6MTMpOgo+IG5vcmRlbgpEaWUgSGVpZGUgZXJzdHJlY2t0IHNpY2ggaW4gYWxsZSBSaWNodHVuZ2VuIHdlaXRlciwgc293ZWl0IG1hbiBzZWhlbgprYW5uLiBBYmdlc2VoZW4gdm9uIEhlaWRla3JhdXQgdW5kIGVpbiBwYWFyIHZlcmVpbnplbHRlbiBCdWVzY2hlbiBpc3QKZGllIExhbmRzY2hhZnQgcmVsYXRpdiBsYW5nd2VpbGlnLiBWZXJlaW56ZWx0IHRyaWZmdCBtYW4gaGllciBhdWNoIG1hbApLYW5pbmNoZW4gYW4uCkVzIGdpYnQgYWNodCBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgbm9yZGVuLCB3ZXN0ZW4sIHN1ZWRlbiwgc3VlZG9zdGVuLApub3Jkb3N0ZW4sIG5vcmR3ZXN0ZW4gdW5kIHN1ZWR3ZXN0ZW4uCkVpbiBuaWVkbGljaGVzIEthbmluY2hlbi4KRWluIG5pZWRsaWNoZXMgS2FuaW5jaGVuLgpFaW4gbmllZGxpY2hlcyBLYW5pbmNoZW4uCkVpbmUgTXVlbnplLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAo+IApMYWJlcmZyZWQgZmxhdHRlcnQgaGVyZWluLgpMYWJlcmZyZWQga3JhZWNoenQ6IC4uLiBrcnJyb29vYWFhIC4uLiBIYWxsbyBlaW4gS2FuaW5jaGVuLCBlaW4gS2FuaW5jaGVuIHVuZApMYWJlcmZyZWQga3JhZWNoenQ6IGVpbiBLaWxsZXJibHV0ZWdlbCAuLi4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQml0dGUgd2FzPyAoQXJzb24sICA4LiBOb3YgMjAxMywgMDc6Mzg6MDkpOgp+IyEgcm49WmFwaG9iIHJ0PTEzODM4NDMyNTMgcmc9c2NobWFycm4KfiMhIHRpZD0xMzgzODQzMjUzCnNrcmlwdGUgbWFsIG1pdCBuZW0gZWluaG9ybiwgZGVuIGRzY2hpbm4gb2RlciAyIHpvbWJpZXMgcnVtbSA6LUQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxhc3N0IGRhcyBuaWNodCBHdWFyZCBsZXNlbiAuLi4gKEdsb2luc29uLCAgOS4gTm92IDIwMTMsIDE4OjA1OjU0KToKPiAuLi4gdGVpbHQgRGlyIG1pdDogc29vb29vIGljaCBtdXNzIG9mZiwgYmFieSBiYWRlbiAgdW5kIGZlcnRpZyBrb2NoZW4KCk1qYW0hIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExhc3N0IGRhcyBuaWNodCBHdWFyZCBsZXNlbiAuLi4gKFRpbiwgIDkuIE5vdiAyMDEzLCAyMTowMTozNik6Cn4jISBybj1HbG9pbnNvbiBydD0xMzg0MDE2NzU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM4NDAxNjc1NApBaGUgYWxzbyBuZWluLCBpY2ggaGFiZSBtZWluIGJhYnkgbmljaHQgZ2Vrb2NodF5eIApOdXIgd2VpbCBnbG9pbnNvbiBtaXIgcGVyIHRtIHNjaHJpZWI6IFVuZCwgaGFzdCBkdSBkYXMgYmFieSBmZXJ0aWcgZ2Vrb2NodC4uLgoqTE9PTC4uLiBuamEgb2sgd2FyIHZpZWxsZWljaHQgbmljaHQgc28gZGllIHRvbGxzdGUgZm9ybXVsaWVydW5nXl4gCgp0aW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvd2FzIHNpZWhzdCBEdSBkYSBuaWNodD8gKFphcGhvYiwgMTAuIE5vdiAyMDEzLCAxMzoyMToxNik6Cj4gdW50IGt1ZWNoZQpEaWVzZXIgUmF1bSBoaWVyIGlzdCBnYW56IG9mZmVuc2ljaHRsaWNoIGRpZSBLdWVjaGUsIGVpbmVuIGFuZGVyZW4gU2NobHVzcwpsYWVzc3QgZGllIEVpbnJpY2h0dW5nIGVpbmZhY2ggbmljaHQgenUuCj4gc3RlY2sgbWV0ZW9yaXQgaW4gcGhpb2xlCkR1IHN0ZWNrc3QgZGFzIE1ldGVvcml0ZW5zdHVlY2sgaW4gZGllIFBoaW9sZS4KPiB1bnQgcGhpb2xlClNvd2FzIHNpZWhzdCBEdSBkYSBuaWNodCEKPiB1bnQgcGhpb2xlCkRpZXMgaXN0IGVpbmUga2xlaW5lLCBzaWxiZXJuZSBQaGlvbGUuCkR1IHNpZWhzdCBlaW5lIEF1ZnNjaHJpZnQgYXVmIGRlciBQaGlvbGUuClNpZSBlbnRoYWVsdDoKRWluIE1ldGVvcml0ZW5zdHVlY2suCkVpbiBlaW5rYXJhZXRpZ2VyIFRvcGFzLgpFaW4gQXN0LgpSb3RlciBLcmllY2hzYW5kLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFjaHR1bmcgbWl0IGF1c3NhZ2VuIHVlYmVyIHdhc3NlciAoVGluLCAyMS4gTm92IDIwMTMsIDEzOjQ2OjQ2KToKRHUgcnVmc3QgSUlJaCB3YXNzZXIKQXVmIGVpbm1hbCBlcnNjaGVpbnQgQW50aGVhcyBBcXVhcml1bSBkaXJla3QgbmViZW4gRGlyLgpEYXMgQXF1YXJpdW0gcGxhbnRzY2h0IGF1cyBkZW0gUmF1bS4KRWluIEZpc2NoIGF1cyBkZW0gQXF1YXJpdW0gc2NoYXV0IERpY2ggZnJhZ2VuZCBhbi4KQWxzIGVyIERpY2ggZXJrZW5udCwgd2lyZCBlciBhZXJnZXJsaWNoIHVuZCBzcHJpdHp0IGVpbmVuIGdyb3NzZW4gU2Nod2FsbApXYXNzZXIgYXVmIERpY2ggaGVyYWIuIER1IGJpc3Qgdm9sbGtvbW1lbiBuYXNzLgoKCgoqbGFjaCoKby5vCnRpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGEgZ2lidCBlcyBrZWluZSB6d2VpIE1laW51bmdlbiAuLi4gKE1pcmFrYSwgMjcuIE5vdiAyMDEzLCAwMTowMDoxNyk6CiAgRHUgZ3JlaWZzdCBkZW4gRWlzZ2lnYW50ZW4gbWl0IGVpbmVtIGdlbHVuZ2VuZW4gWW9rby10b2JpLWdlcmkta2Vrb21pIGFuLgogIER1IHNjaGxhZWdzdCBlaW5lbiBFaXNnaWdhbnRlbiBtaXQgZGVtIEtyYWNoZW4gYnJlY2hlbmRlciBLbm9jaGVuLgpbS2FyYXRlOkZ1bmFrb3NoaV0gS2FyYXRlIGlzdCBlaW4gSGVsZmVyIGRlciBHZXJlY2h0aWdrZWl0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhIGdpYnQgZXMga2VpbmUgendlaSBNZWludW5nZW4gLi4uIChUYWxhbmlzLCAyNy4gTm92IDIwMTMsIDAxOjE1OjU4KToKfiMhIHJuPU1pcmFrYSBydD0xMzg1NTEwNDE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM4NTUxMDQxNwpPZGVyIGRvY2guLi4gPwoKW0thcmF0ZTpGdW5ha29zaGldIEthcmF0ZSBpc3QgZWluIEhlbGZlciBkZXIgR2VyZWNodGlna2VpdC4KW01vZXJkZXI6R2Vpc3QgZWluZXMgRWlzZ2lnYW50ZW5dIEhhZWg/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLb2xsYXRlcmFsc2NoYWRlbiBlaW5lcyBTdGVpbnMgKFZhbmlyLCAzMC4gTm92IDIwMTMsIDAwOjQwOjI0KToKW1RvZDpMYXJzXSBFaW4gZ3Jvc3NlciBTdGVpbiBoYXQgZ2VyYWRlIFRhc3NyYW0gdW1nZWJyYWNodC4KW1RvZDpFaW4gZ3Jvc3NlciBTdGVpbl0gSWYgaGF0dGUgZGlmIGdld2FybnQuClBsb2V0emxpY2ggd2VpY2h0IGFsbGVzIExlYmVuIGF1cyBDcm9mdC4KClYuCk9iIGRlciBTdGVpbiBhdWYgZGVtIFJvdXRlciBnZWxhbmRldCBpc3Q/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS29sbGF0ZXJhbHNjaGFkZW4gZWluZXMgU3RlaW5zIChaZXNzdHJhLCAzMC4gTm92IDIwMTMsIDEwOjUwOjEzKToKfiMhIHJuPVZhbmlyIHJ0PTEzODU3Njg0MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xMzg1NzY4NDI0CkNyb2Z0IGlzdCBiZXN0aW1tdCB2b3IgU2NocmVjayBlaW5nZXNjaGxhZmVuLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExlYmVuc3dlZ2UgKFZhbmlvbiwgMTkuIERleiAyMDEzLCAyMTo0MjozOSk6Cn4jISBybj1SdW1hdGEgcnQ9MTM4NzMwMTEzNSByZz13aXR6ZQp+IyEgdGlkPTEzODczMDExMzUKSWNoIGhhYiBtaXQgNCBhbmdlZmFuZ2VuLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmtsZXJpa2VyIGF1cyB1ZWJlcnpldWd1bmcgKEFyc29uLCAyMS4gRGV6IDIwMTMsIDE2OjM2OjM3KToKQWxsZ2VtZWluOkFyc29uXSBlbnRzdGFuZCBnb3R0IGF1Y2ggYXVzIGRlbSB1cmtuYWxsPwpWb24gRnJldW5kaW4gVGluOiBtYWwgdGF1YgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhlaWRlIChab29rLCAxMy4gSmFuIDIwMTQsIDA5OjExOjE1KToKfiMhIHJuPU1pcmlsIHJ0PTEzODk0NDA5NTcgcmc9ZC5lYmVuZQp+IyEgdGlkPTEzODk0NDA5NTcKTWFuIGthbm4gc2ljaCBuaWNodCBtZWhyIHZlcmxhdWZlbj8KClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU1ZOLUVpbnRyYWVnZSB2b20gU29uLCAxMi4gSmFuIDIwMTQsIDE1OjI3OjM4IChBbmF0b2wsIDE1LiBKYW4gMjAxNCwgMDk6NDY6MTYpOgp+IyEgb249QW5hdG9sIG90PTEzODk3NzU1NzEgb2c9ZGlza3Vzc2lvbgp+IyEgcm49R2xvaW5zb24gcnQ9MTM4OTU1MTUxNCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTM4OTUzNjg1OAoidGVpbGUgbWFoYXRtYSBtaXQgJCoiIGxpZWd0IGF1ZiAibWEiLCBuaWNodCBhdWYgInRtIi4gVHNrLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNWTi1FaW50cmFlZ2Ugdm9tIFNvbiwgMTIuIEphbiAyMDE0LCAxNToyNzozOCAoQ3JvZnQsIDE1LiBKYW4gMjAxNCwgMTM6NDM6MTkpOgp+IyEgcm49QW5hdG9sIHJ0PTEzODk3NzU1NzYgcmc9c2NobWFycm4KfiMhIHRpZD0xMzg5NTM2ODU4CnRtICAgICA9IHJlbW90ZSAkMSB0ZWlsdCBEaXIgbWl0OiAkMiogKHVuZCB6d2FyICMsIGRhIGR1IHdvaGwgdGF1YiBiaXN0KQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFNWTi1FaW50cmFlZ2Ugdm9tIFNvbiwgMTIuIEphbiAyMDE0LCAxNToyNzozOCAoWm9vaywgMTUuIEphbiAyMDE0LCAxNToyMDo0Myk6Cn4jISBybj1Dcm9mdCBydD0xMzg5Nzg5Nzk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM4OTUzNjg1OApEYSBpcyBkYW5uIGFiZXIgZGVyIFVtYnJ1Y2ggYmVpIGxhZW5nZXJlbiB0bXMgbmljaHQgc28gc2Nob2VuLCBDcm9mdC4KClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFNWTi1FaW50cmFlZ2Ugdm9tIFNvbiwgMTIuIEphbiAyMDE0LCAxNToyNzozOCAoQ3JvZnQsIDE1LiBKYW4gMjAxNCwgMTU6MjI6MjYpOgp+IyEgcm49Wm9vayBydD0xMzg5Nzk1NjQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM4OTUzNjg1OApUamEuIFdvIHNvbGwgaWNoIGRlbiBCdWcgYWJzZXR6ZW4gO28pCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogU1ZOLUVpbnRyYWVnZSB2b20gU29uLCAxMi4gSmFuIDIwMTQsIDE1OjI3OjM4IChDaGFnYWxsLCAxNS4gSmFuIDIwMTQsIDE1OjI4OjA5KToKfiMhIHJuPUNyb2Z0IHJ0PTEzODk3OTU3NDYgcmc9c2NobWFycm4KfiMhIHRpZD0xMzg5NTM2ODU4Ck1haWwgYW4gRXJ6bWFnaWVyIGRlaW5lcyBWZXJ0cmF1ZW5zLiA6KQoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFNWTi1FaW50cmFlZ2Ugdm9tIFNvbiwgMTIuIEphbiAyMDE0LCAxNToyNzozOCAoQW1hcnlsbGlzLCAxNi4gSmFuIDIwMTQsIDAzOjIyOjQwKToKfiMhIHJuPUNoYWdhbGwgcnQ9MTM4OTc5NjA4OSByZz1zY2htYXJybgp+IyEgdGlkPTEzODk1MzY4NTgKU293YXMgZ2lidHM/CgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBTVk4tRWludHJhZWdlIHZvbSBTb24sIDEyLiBKYW4gMjAxNCwgMTU6Mjc6MzggKFpvb2ssIDE2LiBKYW4gMjAxNCwgMTI6MDg6NDkpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTEzODk4Mzg5NjAgcmc9c2NobWFycm4KfiMhIHRpZD0xMzg5NTM2ODU4CkRhcyBWZXJ0cmF1ZW4gdm9uIFNwaWVsZXJuIHVuZCBNYWdpZXJuIHNjaGVpbnQgdW5lcnNjaG9lZmxpY2guCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBTVk4tRWludHJhZWdlIHZvbSBTb24sIDEyLiBKYW4gMjAxNCwgMTU6Mjc6MzggKENoYWdhbGwsIDE2LiBKYW4gMjAxNCwgMTI6NTI6MTUpOgp+IyEgcm49Wm9vayBydD0xMzg5ODcwNTI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM4OTUzNjg1OApJY2gga2F1ZmUgZWluIHAuCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFNWTi1FaW50cmFlZ2Ugdm9tIFNvbiwgMTIuIEphbiAyMDE0LCAxNToyNzozOCAoWm9vaywgMTYuIEphbiAyMDE0LCAxODo1MjoyMSk6Cn4jISBybj1DaGFnYWxsIHJ0PTEzODk4NzMxMzUgcmc9c2NobWFycm4KfiMhIHRpZD0xMzg5NTM2ODU4CkJpdHRlIGF1Y2ggYmVpbSBNYWdpZXIgRGVpbmVzIFZlcnRyYXVlbnMuClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBTVk4tRWludHJhZWdlIHZvbSBTb24sIDEyLiBKYW4gMjAxNCwgMTU6Mjc6MzggKFplc3N0cmEsIDE2LiBKYW4gMjAxNCwgMjM6NDQ6MzQpOgp+IyEgcm49Wm9vayBydD0xMzg5ODk0NzQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM4OTUzNjg1OApEYSBrb21tZW4gYWJlciBudXIgUGEqLU1hZ2llciBzZWluZXMgVmVydHJhdWVucyBpbiBGcmFnZS4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEyOiBTVk4tRWludHJhZWdlIHZvbSBTb24sIDEyLiBKYW4gMjAxNCwgMTU6Mjc6MzggKENoYWdhbGwsIDE3LiBKYW4gMjAxNCwgMDg6MDI6MTQpOgp+IyEgcm49WmVzc3RyYSBydD0xMzg5OTEyMjc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM4OTUzNjg1OApFcyBnaWJ0IFBhKi1NYWdpZXIsIGRlbmVuIG1hbiB2ZXJ0cmF1ZW4ga2Fubj8KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMzogU1ZOLUVpbnRyYWVnZSB2b20gU29uLCAxMi4gSmFuIDIwMTQsIDE1OjI3OjM4IChCYW1iaSwgMTguIEphbiAyMDE0LCAxOTowNjo0MCk6Cn4jISBybj1DaGFnYWxsIHJ0PTEzODk5NDIxMzQgcmc9c2NobWFycm4KfiMhIHRpZD0xMzg5NTM2ODU4ClBhcmRhdXoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBTVk4tRWludHJhZWdlIHZvbSBTb24sIDEyLiBKYW4gMjAxNCwgMTU6Mjc6MzggKENyb2Z0LCAxOS4gSmFuIDIwMTQsIDAwOjM4OjUxKToKfiMhIHJuPUJhbWJpIHJ0PTEzOTAwNjg0MDAgcmc9c2NobWFycm4KfiMhIHRpZD0xMzg5NTM2ODU4CkljaCBiaW4gbWlyIGRhIG5vY2ggbmljaHQgMTAwJSBzaWNoZXIgPi4+CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtBIFN0YVRpcyAyNy4yLi0yNC40LiAoQ3JvZnQsIDIwLiBGZWIgMjAxNCwgMjM6MDI6MTgpOgp+IyEgcm49Q3JvZnQgcnQ9MTM5MjkzMzcwNiByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xMzkyOTMzNzA2CipzY2htZWlzc3Qgbm9jaCBlaW4gdWUgaGludGVyaGVyKgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOb3RzdHJvbSBpc3QgamV0enQgZWluIE1hZ2llciEgKEdsb2luc29uLCAyMy4gRmViIDIwMTQsIDIwOjE0OjQ0KToKfiMhIHJuPU1lcmxpbiBydD0xMzkzMTgyMTQ3IHJnPXN0dWZlbgp+IyEgdGlkPTEzOTMxODIxNDcKQWFhYWFoLCBkYW5uIHdpcmQgamEgZW5kbGljaCBBcmtoYW0gSG9ycm9yIHVtZ2VzZXR6dC4KCi4uLiB1bmQgd2lyIGJyYXVjaGVuIGtlaW5lIFVTViBtZWhyLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNpbmQgd2lyIG5pY2h0IGFsbGUgZWluIHdlbmlnIFZhbmlyPyAoRGVyaW4sIDI3LiBGZWIgMjAxNCwgMjI6MjI6NTIpOgpEdSBiaXN0IGFtIFN0YWR0dG9yIHZvbiBQb3J0IFZhaW4gYW5nZWtvbW1lbiwgZGFzIHVubWl0dGVsYmFyIHZvciBEaXIgbGllZ3QuCkluIHdlc3RsaWNoZXIgUmljaHR1bmcgZnVlaHJ0IGRpZSBQb3J0IFZhaW5lciBMYW5kc3RyYXNzZSBpbiBkaWUgZ3Jvc3NlLCB3ZWl0ZQpXZWx0IGhpbmF1cyB1bmQgaW4gb2VzdGxpY2hlciBSaWNodHVuZyB6dW0gZ3Jvc3NlbiBTdGFkdHplbnRydW0gZGVyCkhhZmVuc3RhZHQuIFVubWl0dGVsYmFyIHN1ZWRsaWNoIHZvbiBEaXIsIGRpcmVrdCBuZWJlbiBkZW0gU3RhZHR0b3Igc2llaHN0IER1CmRpZSByaWVzaWdlIFBmb3J0ZSBlaW5lcyBub2NoIHJpZXNpZ2VyZW4gV2V0dHBhbGFzdGVzIHZvciBEaXIgYXVmcmFnZW4uIER1CmxlZ3N0IERlaW5lbiBLb3BmIGluIGRlbiBOYWNrZW4sIHVtIGlobiBnYW56IGJldHJhY2h0ZW4genUga29lbm5lbi4gRWluCmdyb3NzZXMgU2NoaWxkIGhhZW5ndCB1ZWJlciBkZXIgRWluZ2FuZ3NwZm9ydGUuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvc3Rlbiwgd2VzdGVuIHVuZCBzdWVkZW4uClNjaGxhZm11ZXR6ZSBUaW4gaGF0IHNpY2ggaW4gZGllIEJldHRkZWNrZSBlaW5nZXdpY2tlbHQuClNhcmF5LgpWYW5pciBhcCBOZWlsIHdhciBub2NoIG5pZSBlaW4gVGFsYW5pcy4KVmFuaXIgYXAgTmlhbCB3YXIgbWFsIGVpbiBrbGVpbmVyIEthZW1wZmVyLgpWYW5pciBhcCBOaWFsIGlzdCBlaW4ga2xlaW5lciBDaGFvdC4KVmFuaXIgYXAgTmVpbCB3YXIgbWFsIGVpbiBrbGVpbmVyIEthZW1wZmVyLgpLcmVsbGphIGRlciBaZXJzdG9lcmVyLgpFaW4gU2FuZHRpZ2VyLgpFaW4gbWFnaXNjaGVzIFBvcnRhbC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKVGluIGRlbmt0ICAgLiBvIE8gKHZlcnJ1ZWNrdGUpCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBPZmYgdm9tIDIyLiBiaXMgMjkuIE1hZXJ6IDIwMTQgKENyb2Z0LCAyMy4gTWFyIDIwMTQsIDAxOjM2OjU0KToKfiMhIHJuPVZhbmlvbiBydD0xMzk1NTI1MDY3IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xMzk1MzkyNzEyCkJpcyBqZXR6dCBoYXQgZXMgamEgaW0gR3Jvc3NlbiB1bmQgR2FuemVuIGF1Y2ggaW1tZXIgZ2Vob2xmZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogT2ZmIHZvbSAyMi4gYmlzIDI5LiBNYWVyeiAyMDE0IChWYW5pb24sIDIzLiBNYXIgMjAxNCwgMTY6NTM6MTkpOgp+IyEgcm49Q3JvZnQgcnQ9MTM5NTUzNTAxNCByZz1zY2htYXJybgp+IyEgdGlkPTEzOTUzOTI3MTIKQXVjaCB3aWVkZXIgd2Foci4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTdGFtbXRpc2NoIGluIEhhbWJ1cmcgMjguMDMuMjAxNCAoVm9yYW5rdWVuZGlndW5nKSAoWmVzc3RyYSwgMjQuIE1hciAyMDE0LCAyMDo1NToyOSk6Cn4jISBybj1QZXJkaXRhIHJ0PTEzOTU2OTA4NzMgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTM5MjMyNTQyNgpJY2ggaGF0dGUgenVlcnN0IFNjaGFmY2FmZSBnZWxlc2VuLiA7LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRhcyBuZW5uIGljaCBQZWNoIChTYXJheSwgMjcuIE1hciAyMDE0LCAxNzo1MzoyMCk6CkR1IHRyaWZmc3QgZGVuIER1bmtlbGRhZW1vbiBzZWhyIGhhcnQuCkVpbiBEdW5rZWxkYWVtb24gbGFldWZ0IGdlZ2VuIGVpbmVuIGF1ZmdlbWFsdGVuIER1cmNoZ2FuZyBpbSBPc3Rlbi4KRGVyIER1bmtlbGRhZW1vbiBicmljaHQgdG90IHp1c2FtbWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGRhcyBuZW5uIGljaCBQZWNoIChUaW4sIDI3LiBNYXIgMjAxNCwgMTc6NTk6MDkpOgp+IyEgcm49U2FyYXkgcnQ9MTM5NTkzOTIwMCByZz1zY2htYXJybgp+IyEgdGlkPTEzOTU5MzkyMDAKSGFoYSBjb29sCnRpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU29tbWVycGFydHkgaW4gSEFUVElOR0VOIChBbmF0b2wsICA0LiBBcHIgMjAxNCwgMTE6MTc6MjEpOgp+IyEgcm49UnVtYXRhIHJ0PTEzOTY1OTQ4NDAgcmc9cGFydHkKfiMhIHRpZD0xMzk0MDQ5ODI1CkljaCBtYWcgZWluIGFsdGVyIFNhY2sgc2VpbiwgYWJlciBzb29vbyBhbHQ/CgoiIC4uLnVtIDE1MDAgdi4gQ2hyLiBhbHMgZ2VzcHJvY2hlbmUgU3ByYWNoZSBhdXNnZXN0b3JiZW4uLi4gIgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFNvbW1lcnBhcnR5IGluIEhBVFRJTkdFTiAoSHVyYXhwcmF4LCAgNC4gQXByIDIwMTQsIDIwOjM4OjU4KToKfiMhIHJuPVJ1bWF0YSBydD0xMzk2NTk0ODQwIHJnPXBhcnR5Cn4jISB0aWQ9MTM5NDA0OTgyNQpJY2gga2FubiBGbHVjaHpldWNoIGtvcnJla3QgYXVzc3ByZWNoZW4sIHJlaWNodCBkYXMgZnVlciBkaWUgRWNrZT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmRldXRzY2gtZnJvc2NoaWcgKFRpbiwgMTEuIEFwciAyMDE0LCAyMDowMzo1Myk6Ck1hbGllOgpEdSBydWZzdDogSWNoIGJpbiBlaW4gVFJPVFRFTCwgaWNoIHVudGVyc3VjaGUgc3RvaXNjaCBhbGxlcywgd2FzIGdyb3NzCkR1IHJ1ZnN0OiBnZXNjaHJpZWJlbiBpc3QgLSBhdWNoIHN1YnN0YW50aXZpZXJ0ZSBWZXJiZW4hCkFsbGUgYW5kZXJlbiBsZXNlbjoKRWluIEZyb3NjaCBxdWFrdDogUXVhYWFrLCBxdWFhYWFhaywgcXV1dXVhYWFhYWFhYWFhYWFhYWFhYWFhYWsgISEKCnRpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEljaCBzY2hyZWliIG1hbCB3YXMgLSB1cmxhdWIgKEdsb2luc29uLCAxNS4gQXByIDIwMTQsIDAwOjA2OjE4KToKfiMhIHJuPVRpbiBydD0xMzk3NDIxNzM2IHJnPXNlaGVyLnVybGF1Ygp+IyEgdGlkPTEzOTc0MjE3MzYKSGF1cyBzdGVoZW4gbGFzc2VuLCBydW5kaGVydW0gZGVuIEJvZGVuIHdlZ2JhZ2dlcm4sIGNoZWNrLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSWNoIHNjaHJlaWIgbWFsIHdhcyAtIHVybGF1YiAoQXJzb24sIDE1LiBBcHIgMjAxNCwgMTg6Mzc6NTApOgp+IyEgcm49R2xvaW5zb24gcnQ9MTM5NzUxMzE3OCByZz1zY2htYXJybgp+IyEgdGlkPTEzOTc0MjE3MzYKZGFubiBtdXNzdCBkdSBhYmVyIG1pdCBuZW0gRm9laG4gYnVkZGVsbi4uLiA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBJY2ggc2NocmVpYiBtYWwgd2FzIC0gdXJsYXViIChUaW4sIDE1LiBBcHIgMjAxNCwgMjA6Mjg6MDIpOgp+IyEgcm49QXJzb24gcnQ9MTM5NzU3OTg3MCByZz1zY2htYXJybgp+IyEgdGlkPTEzOTc0MjE3MzYKYml0dGUgYXVjaCBkaWUgdW1nZWJ1bmcgaW4gZGVyIG1laW4gSGF1cyBzdGVodCBzdGVoZW4gbGFzc2VuOy0pCgp0aW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJ1ZXJzdGVuIGZ1ZXIgYWxsZSEgKE5hcGhyZWRpbCwgMjguIEFwciAyMDE0LCAyMToxMDoxOCk6CkRpZXMgaXN0IEFybWFnZWRkb24sIGRlciBXZWx0ZW52ZXJuaWNodGVyLiBBbHMgRHUgaWhuIGFuc2llaHN0LCBibGlja3QgZXIgYXVmCnVuZCBmbHVlc3RlcnQgRGlyIHp1OiBOb2NoIDIzIFN0dW5kZW4sIDUxIE1pbnV0ZW4gdW5kIDAgU2VrdW5kZW4gbXVlc3Nlbgp2ZXJnZWhlbiwgZWhlIGljaCBkaWUgV2VsdCB2ZXJuaWNodGUuCkVyIGlzdCBhYnNvbHV0IGZpdC4KRXIgdHJhZWd0IGJlaSBzaWNoOgpFaW5lIEhvbHpidWVyc3RlLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCgotLSBOYXBocmVkaWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQnVlcnN0ZW4gZnVlciBhbGxlISAoUnVtYXRhLCAyOC4gQXByIDIwMTQsIDIxOjUzOjE4KToKfiMhIHJuPU5hcGhyZWRpbCBydD0xMzk4NzEyMjE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM5ODcxMjIxOApTb3dhcyBicmF1Y2h0IG1hbiBmdWVyIGVpbmUgR2FyYmFnZSBDb2xsZWN0aW9uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldXN0YXJ0IDI5LzMwLjA0LjIwMTQgKFJ1bWF0YSwgMzAuIEFwciAyMDE0LCAxOTozNDo1NSk6Cn4jISBybj1aZXNzdHJhIHJ0PTEzOTg4MTE3OTMgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTEzOTg4MTE3OTMKVW5yZWdlbG1hZXNzaWdrZWl0ZW4/IERhcyBzaW5kIGJlc3RpbW10IHBvZXNlIFJ1c3NlbiwgZGllIGRhIEdlbGQgdmVyc2NoaWViZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWVpbi4uLiAoQmFtYnVsa28sICAyLiBNYWkgMjAxNCwgMTQ6NTM6MzkpOgp+IyEgcm49Wm9vayBydD0xMzk5MDM0NjAyIHJnPXByYW5nZXIKfiMhIHRpZD0xMzk5MDM0NjAyCkVpbiBhbm9ueW1lciBQcmFuZ2VyPyBTb25zdCBub2NoIHdhcz8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWVpbi4uLiAoWm9vaywgIDIuIE1haSAyMDE0LCAxNDo1Njo0Myk6Cn4jISBybj1CYW1idWxrbyBydD0xMzk5MDM1MjE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM5OTAzNDYwMgpJY2gga2FubiBEaWNoIHdlZ2VuIG1hbmdlbG5kZW0gUmVzcGVrdCBhdWNoIGdhbnogb2VmZmVudGxpY2gKdW5kIGJlbmFtdCBkb3J0IGF1c3N0ZWxsZW4hIDspIAoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTWVpbi4uLiAoQmFtYnVsa28sICAyLiBNYWkgMjAxNCwgMTU6MDA6NDUpOgp+IyEgcm49Wm9vayBydD0xMzk5MDM1NDAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTM5OTAzNDYwMgogRWluIGFub255bWVyIFByYW5nZXIgd2lkZXJzcHJpY2h0IGRlbSBHcnVuZGdlZGFua2VuIGVpbmVzIFByYW5nZXJzLiBEYWhlcgpmb3JkZXJlIGljaCBOYW1lbi4gSWNoIHdpbGwgamEgd2lzc2VuCiwgd2VuIGljaCBtaXQgVG90YXRlbiB1bmQgRWllciBiZXJ3ZXJmZW4ga2Fubi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW1hcnlsbGlzLCAgNS4gTWFpIDIwMTQsIDIzOjEyOjExKToKW0JlaWxlaWQ6RWxlbmRpbF0gUHp5LCBtZWluZSBIYW5kc2NodWhlIGJpdHRlIDopCltUb2Q6TGFyc10gRWluIEdhcmRld2FlY2h0ZXIgaGF0IGdlcmFkZSBQenlub20gdW1nZWJyYWNodC4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvc28uLi4gKFpvb2ssICAxLiBKdW4gMjAxNCwgMTc6MTc6MDQpOgouLi4gdW5kIHdhcyBtYWNodCBJaHIgendlaSBudW4gc28uLi4/CgpHbG9pbnNvbiBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpEaWUgSHlkcmEgZXJoZWJ0IHNpY2ggYXVzIGRlbSBUYWwgZGVyIEx1cGluZW4uCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU29zby4uLiAoR2xvaW5zb24sICAyLiBKdW4gMjAxNCwgMTE6MTY6MTgpOgp+IyEgcm49Wm9vayBydD0xNDAxNjM1ODI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQwMTYzNTgyNApLb2VwZmUgYWJzY2htaXJnZWxuLiBEaWUgd2VyZGVuIGR1cmNoIGRhcyBzdHVtcGZlIERyYXVmc2NobGFnZW4gaW1tZXIgZ2FuegptYXR0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCi4uLiB3ZXJmZW4gaWhyZSBTY2hhdHRlbiB2b3JhdXMgLi4uIChOYXBocmVkaWwsICA3LiBKdW4gMjAxNCwgMTc6MTI6MzcpOgpFaW4gbGF1dGVzIEtuYWNrZW4gZXJ0b2VudCwgZGVyIEJvZGVuIGVyYmVidCBrdXJ6LgpQenlub20gaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgoKClNDTlIsCk5hcGhyZWRpbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhldXRlIGF1ZiBkZW0gZmJhbmQgKFJob3ZhbiwgMTkuIEp1biAyMDE0LCAxMjoyMDowOSk6ClZvbiBGcmV1bmQgRHVuc3Q6IHNpbmQgZXR3YSBoYW1zdGVyIGFud2VzZW5kClZvbiBGcmV1bmRpbiBUaW46IGljaCBlc3MgZGllIG51ciBpbiBzb3NzZW4KVm9uIEZyZXVuZGluIFRpbjogaWNoIG1hZyBkaWUgc28gbmljaAoKTGVja2VyIEhhbW1zdGVyLCBqYW1tIGphbW0gOkQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJsZWljaCwgZ2FueiBibGVpY2ggKE5hcGhyZWRpbCwgMTkuIEp1biAyMDE0LCAyMToyMDozMyk6CkR1IGVyYmxlaWNoc3QuIApEaWUgRmFyYnR1cGZlbiBpbiBEZWluZW0gR2VzaWNodCB2ZXJibGFzc2VuLgoKClNDTlIsCk5hcGhyZWRpbC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdHVkaWUgKEFuYXRvbCwgMjAuIEp1biAyMDE0LCAxMzowNjozOSk6Cn4jISBybj1BbnRoZWEgcnQ9MTQwMzI1Mzk2MiByZz13aXR6ZQp+IyEgdGlkPTE0MDMyNTM5NjIKQ29udGVzdGVkLiA7LSkKCldlbm4gQW56YWhsX1J1ZWNrc2l0enBsYWV0emUgLSBBbnphaGxfS2luZGVyID0gMCwgZGFubiBzaW5kLCBmYWxscwpBbnphaGxfUnVlY2tzaXR6cGxhZXR6ZSA+IDAsIGRpZSBCZWRpbmd1bmdlbiBmdWVyIHJ1ZWNrc2l0enZvbGwgZ2VnZWJlbi4KCldlbm4gQW56YWhsX0tpbmRlciA9IDUsIGFiZXIgQW56YWhsX1J1ZWNrc2l0enBsYWV0emUgPSA2LCBkYW5uIGlzdApkYXMgbmljaHQgcnVlY2tzaXR6dm9sbC4gVW5kIFN1cGVybGF0aXYgc2Nob24gZ2FyIG5pY2h0ISA6KQoKKHVuZCBmdWVuZiBLaW5kZXIgYXVmIGRyZWkgUGxhZXR6ZSB6dSB6d2FlbmdlbiBpc3QsIHNvZmVybiBkYXMgRmFocnpldWcKZGFtaXQgbWl0IG1laHIgUGVyc29uZW4gYmVzdHVlY2t0IGlzdCBhbHMgenVnZWxhc3NlbiwgIkZhaHJlbiBvaG5lCkZ1ZWhyZXJzY2hlaW4uIiwgaGF0IG1hbiBtaXIgbWFsIGJlaWdlYnJhY2h0KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdHVkaWUgKEFuYXRvbCwgMjAuIEp1biAyMDE0LCAxNDoxOTo0Nyk6Cn4jISBybj1BbmF0b2wgcnQ9MTQwMzI2MjM5OSByZz1zY2htYXJybgp+IyEgdGlkPTE0MDMyNTM5NjIKTXVzcyBkYXMgIkZhaHJlbiBvaG5lIEZ1ZWhyZXJzY2hlaW4iIGV0d2FzIHJlbGF0aXZpZXJlbi4gRGFzIGlzdCBzZWhyCmFsdCB1bmQgYXVzc2VyZGVtIG9mZmVuYmFyIGZhbHNjaC4gOy0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdHVkaWUgKEdsb2luc29uLCAyMS4gSnVuIDIwMTQsIDAwOjQ4OjE5KToKfiMhIHJuPUFuYXRvbCBydD0xNDAzMjYyMzk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQwMzI1Mzk2Mgo+IFdlbm4gQW56YWhsX0tpbmRlciA9IDUsIGFiZXIgQW56YWhsX1J1ZWNrc2l0enBsYWV0emUgPSA2CgouLi4gZGFubiBpc3QgaGV1dHp1dGFnZSBkZXIgUnVlY2tzaXR6IGF1Y2ggdm9sbC4gU3RpY2h3b3J0IEtpbmRlcnNpdHouIDpQCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RldHMgenUgRGllbnN0ZW4uLi4gKEFtYXJ5bGxpcywgMjMuIEp1biAyMDE0LCAwMjowNzowMik6CltCaWVyc2NodWV0dGxlcjpCcnVub10gV2llIHNwYWV0IGlzdCBlcz8gCkR1IGhvZXJzdCBkaWUgVWhyIHNjaGxhZ2VuOiBFcyBpc3QgamV0enQgMiBVaHIuCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEtBIFN0YVRpcyAxMC43Li0yOC44LiAoQ3JvZnQsICA2LiBKdWwgMjAxNCwgMDE6MzE6MDMpOgp+IyEgcm49U2FyYXkgcnQ9MTQwNDU5NTU1NiByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xNDA0NDY0NDI2ClNpY2hlci4gIFNpbmQgamEgbnVyIDMgdm9uIDggS2FybHNydWhlcm4gYXVmIFdhY2tlbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd20gd2l0eiAoQ3JvZnQsIDEwLiBKdWwgMjAxNCwgMDA6MzE6NDgpOgp+IyEgcm49WmFwaG9iIHJ0PTE0MDQ5MTk1Nzcgcmc9d2l0emUKfiMhIHRpZD0xNDA0OTE5NTc3Ck5vY2ggZnVua3Rpb25pZXJ0IGRlciBXaXR6IG5pY2h0IHJpY2h0aWcgLi4uICBMZWlkZXIuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB3bSB3aXR6IChUaW4sIDEwLiBKdWwgMjAxNCwgMDA6MzQ6MzMpOgp+IyEgcm49Q3JvZnQgcnQ9MTQwNDk0NTEwOCByZz1zY2htYXJybgp+IyEgdGlkPTE0MDQ5MTk1NzcKd2llc28sIHdpZSBzaWVodCBlcyBkZW5uIGF1cz8KCnRpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiB3bSB3aXR6IChBbWFyeWxsaXMsIDEwLiBKdWwgMjAxNCwgMDA6NDQ6NDEpOgp+IyEgcm49Q3JvZnQgcnQ9MTQwNDk0NTEwOCByZz1zY2htYXJybgp+IyEgdGlkPTE0MDQ5MTk1NzcKQWJlciBqZXR6dCA7KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogd20gd2l0eiAoQ3JvZnQsIDEwLiBKdWwgMjAxNCwgMDA6NDU6MDIpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTE0MDQ5NDU4ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xNDA0OTE5NTc3CkFsbGVyZGluZ3MuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERldXRzY2hsYW5kIC0gQnJhc2lsaWVuIChBbmF0b2wsIDEyLiBKdWwgMjAxNCwgMjE6MjE6MTApOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTE0MDUxMTc0MjMgcmc9d3d3Cn4jISB0aWQ9MTQwNTExNzQyMwpCcmFzaWwgZGEgVy5PLiBlIEFsLi4uIiBEaWVzZXMgVmlkZW8gaXN0IGF1ZmdydW5kIGRlcyBVcmhlYmVycmVjaHRzYW5zcHJ1Y2hzCnZvbiBGSUZBIG5pY2h0IG1laHIgdmVyZnVlZ2Jhci4KClBmZmguCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEZXV0c2NobGFuZCAtIEJyYXNpbGllbiAoQXJhdGhvcm4sIDEyLiBKdWwgMjAxNCwgMjE6MzQ6NTEpOgp+IyEgcm49QW5hdG9sIHJ0PTE0MDUxOTI4NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xNDA1MTE3NDIzCk9rLCBzaWUgd29sbGVuIGFsc28gb2ZmZW5iYXIgaW5zZ2VzYW10IHVlYmVyaGF1cHQgbmljaHQsIGRhc3MgbWFuIHNpY2ggZGVuCktyYW0gYW5zY2hhdXQuIEd1dCwgZGFtaXQga2FubiBpY2ggYXJiZWl0ZW4uIDstKQoKQXJhdGhvcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERldXRzY2hsYW5kIC0gQnJhc2lsaWVuIChBbWFyeWxsaXMsIDEzLiBKdWwgMjAxNCwgMDc6MDU6MDIpOgp+IyEgcm49QW5hdG9sIHJ0PTE0MDUxOTI4NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xNDA1MTE3NDIzCklzdCB3aWVkZXIgZGE6CgpodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92PW5oTTJlcjhkZ2hrCgpNYWwgc2VoZW4sIHdpZSBsYW5nZS4uLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGV1dHNjaGxhbmQgLSBCcmFzaWxpZW4gKFZhbmlyLCAxMy4gSnVsIDIwMTQsIDE0OjQ0OjE0KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNDA1MjI3OTAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQwNTExNzQyMwouLi4gdW5kIHdpZWRlciB3ZWcKVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERldXRzY2hsYW5kIC0gQnJhc2lsaWVuIChBbWFyeWxsaXMsIDE0LiBKdWwgMjAxNCwgMDQ6Mjg6NTcpOgp+IyEgcm49VmFuaXIgcnQ9MTQwNTI1NTQ1NCByZz1zY2htYXJybgp+IyEgdGlkPTE0MDUxMTc0MjMKRGFubiBnb29nbGUgbWFsIG5hY2ggZGVtIFZpZGVvbmFtZW4sIGRhcyBzb2xsdGUgaXJnZW5kd28gbm9jaCB6dSBmaW5kZW4Kc2Vpbi4uLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IChBbWFyeWxsaXMsIDE0LiBKdWwgMjAxNCwgMjI6NDg6MjgpOgpbQWxsZ2VtZWluOlRpbl0ga2FubiBkZXIgdGFnIGVpZ2VudGxpY2ggbm9jaCBzY2hsaW1tZXIgd2VyZGVuPwpbVG9kOkxhcnNdIEVpbiBTdW1wZiBoYXQgZ2VyYWRlIFRpbiB1bWdlYnJhY2h0LgpbVG9kOkVpbiBTdW1wZl0gVGluIGlzdCBpbSBTdW1wZiB2ZXJzdW5rZW4uCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogZmx3IChUaW4sIDE0LiBKdWwgMjAxNCwgMjI6NDk6NDUpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTE0MDUzNzA5MDggcmc9c2NobWFycm4KfiMhIHRpZD0xNDA1MzcwOTA4CkRhbmtlCmljaCBoYWJlIGVjaHQga2VpbmUgbHVzdCBtZWhyLi4uCnRpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRGV1dHNjaGxhbmQgLSBCcmFzaWxpZW4gKEFtYXJ5bGxpcywgMTQuIEp1bCAyMDE0LCAyMjo1NjowNyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTQwNTMwNDkzNyByZz1zY2htYXJybgp+IyEgdGlkPTE0MDUxMTc0MjMKSW5ncmlkOgoKaHR0cDovL3d3dy5teW5ldGNvbG9nbmUuZGUvfm5jLWJyYXVuZGk2L0JyYXNpbEFsZW1hbmhhLmF2aQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRGV1dHNjaGxhbmQgLSBCcmFzaWxpZW4gKEFuYXRvbCwgMTYuIEp1bCAyMDE0LCAxMzoyNjowNyk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTQwNTM3MTM2NyByZz1zY2htYXJybgp+IyEgdGlkPTE0MDUxMTc0MjMKRGEgZmVobHQga2xhciBkYXMgRWlnZW50b3IsIGRhcyBpbiBkZXIgTmFjaHNwaWVsemVpdCBub2NoIGdlZmFsbGVuIGlzdC4uIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdGF0IGluIEJvY2h1bSBhbSAyMC43LiAoWmVzc3RyYSwgMjAuIEp1bCAyMDE0LCAxNjo0NzoxMCk6Cn4jISBybj1ab29rIHJ0PTE0MDU4NjcxMjUgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTQwNTc5ODMyMQpXaXIgaGFiZW4gZ2VzdGVybiBhdWNoIHZpZWwgQmllciBnZXRydW5rZW4uCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdGF0IGluIEJvY2h1bSBhbSAyMC43LiAoWm9vaywgMjAuIEp1bCAyMDE0LCAxNjo0OToxNik6Cn4jISBybj1aZXNzdHJhIHJ0PTE0MDU4Njc2MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xNDA1Nzk4MzIxCmljaCB2ZXJtdXRldGUgZGllcy4Kem9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKT21iYXRpcyBrYW5uIG1hbiBlcyBuaWNodCByZWNodG1hY2hlbi4gKFRpbiwgMjQuIEp1bCAyMDE0LCAyMjowOTowOCk6Cj4gdHJpdHQgb21iYXRpcwpEdSB0cml0dHN0IE9tYmF0aXMuCk9tYmF0aXMgbWVpbnQ6IEphLCBqYS4gSW1tZXIgYXVmIGRpZSBrbGVpbmVuIGZldHRlbiBEYWVtb25lbi4gOigKPiBrdWVzc2Ugb21iYXRpcwpEdSBrdWVzc3QgT21iYXRpcy4KT21iYXRpcyB2ZXJ6aWVodCBhbmdld2lkZXJ0IGRhcyBHZXNpY2h0LgpPbWJhdGlzIHZlcnppZWh0IGFuZ2V3aWRlcnQgZGFzIEdlc2ljaHQuCj4gbGllYmUgb21iYXRpcwpEdSBzY2hsaWVzc3QgZGllIEF1Z2VuLCBzY2htaWVnc3QgRGljaCBlbmcgYW4gT21iYXRpcyB1bmQgZ2lic3QgaWhtIGVpbmVuCnphZXJ0bGljaGVuIHVuZCBsZWlkZW5zY2hhZnRsaWNoZW4gS3Vzcy4gVW0gRGljaCBoZXJ1bSB2ZXJzaW5rdCBkaWUgV2VsdCB1bmQKRHUgZ2xhdWJzdCwgYXVmIFdvbGtlbiB6dSBzY2h3ZWJlbi4KT21iYXRpcyBzYWd0IG1pdCB3ZWluZXJsaWNoZXIgU3RpbW1lOiBEYXMgaXN0IGdlZ2VuIGRpZSBHZW5mZXIgS29udmVudGlvbmVuLgpPbWJhdGlzIHNhZ3QgbWl0IHdlaW5lcmxpY2hlciBTdGltbWU6IEtlaW5lciBzb2xsdGUgZWluZW4gYXJtZW4ga2xlaW5lbgpPbWJhdGlzIHNhZ3QgbWl0IHdlaW5lcmxpY2hlciBTdGltbWU6IE5lcnZkYWVtb24gc28gcXVhZWxlbiBkdWVyZmVuIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVXJsYXViIDAzLjA4LiAtIDE5LjA4LiAoWm9vaywgMjcuIEp1bCAyMDE0LCAxOTo0OTowOCk6Cn4jISBybj1ab29rIHJ0PTE0MDY0ODMyODEgcmc9cGFydHkKfiMhIHRpZD0xNDA2Mzc0MjY2Ck51ciBtYWwgc28genVyIEtyaW1pbmFsaXRhZXRzc3RhdGlzdGlrIHVuZCBXaWVkZXJob2x1bmdzdGFldGVybjogV2VubiBEdSBlaW5lbgpVZWJlbHRhZXRlciBnZXN0ZWxsdCBoYXN0LCBkZXIgZWluZW4gU2NobHVlc3NlbCAiZW50d2VuZGV0IiBoYXQgdW5kIERpciBub2NoCnp3ZWkgd2VpdGVyZSBmZWhsZW4gLi4uLiBzdWNoIG5vY2ggbWFsIGJlaW0gIlVlYmVsdGFldGVyIiBnZW5hdWVyIG5hY2guCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBVcmxhdWIgMDMuMDguIC0gMTkuMDguIChHbG9pbnNvbiwgMjguIEp1bCAyMDE0LCAxNTozNDoyNCk6Cn4jISBybj1ab29rIHJ0PTE0MDY0ODMzNDggcmc9c2NobWFycm4KfiMhIHRpZD0xNDA2Mzc0MjY2CkljaCBoYWx0ZSBzb3dhcyBmdWVyIHN0YXRpc3Rpc2NoZSBBdXNyZWlzc2VyLCBldmVudHVlbGwgc29nYXIgZWluZQpwaHlzaWthbGlzY2hlIFNlbnNhdGlvbi4gV2llIG9mdCBmbHVrdHVpZXJ0IHNjaG9uIGRhcyBNYWduZXRmZWxkIGRlcmFydCwgZGFzcwpzaWNoIGVpbiBtYWduZXRpc2NoZXMgU2NobHVlc3NlbG1vbm9wb2wgaW4gZWluZXIgSG9zZW50YXNjaGUgYmlsZGV0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFVybGF1YiAwMy4wOC4gLSAxOS4wOC4gKEFudGhlYSwgMjguIEp1bCAyMDE0LCAxNTo0NTo0MSk6Cn4jISBybj1HbG9pbnNvbiBydD0xNDA2NTU0NDY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQwNjM3NDI2NgpOdW4gamEsIHdlbm4gZGVyIHNpY2ggZ2VyYWRlIGFuIGVpbmVyIFNjaGx1ZXNzZWxwb3NpdGlvbiBiZWZpbmRldCwgcGFzc2llcnQKZGFzIG1hbmNobWFsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOb2NobWFsIHdlZy4uLiAoR2xvaW5zb24sICA5LiBBdWcgMjAxNCwgMjE6NDg6MzEpOgp+IyEgcm49QXJrIHJ0PTE0MDc2MTM2MjAgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTE0MDc2MTE5NzQKRGFmdWVyIGhhYmVuIHdpciBkb2NoIGRpY2ggYWxzIFZvbGx6ZWl0bWFnaWVyIGVpbmdlc3RlbGx0LiBEdSByZWlzc3QgZGFzIHNjaG9uCndpZWRlciByYXVzLCBoYWx0IGVpbiBvZGVyIHp3ZWkgUXVlc3RlbiBtZWhyIGZ1ZXJzIEdlbGQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTm9jaG1hbCB3ZWcuLi4gKEFyaywgIDkuIEF1ZyAyMDE0LCAyMzozNzoyOCk6Cn4jISBybj1HbG9pbnNvbiBydD0xNDA3NjEzNzExIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQwNzYxMTk3NApBYmVyIGFiZXIgYWJlciAuLi4gZGFzIGhlaXNzdCBpY2ggbXVzcyBrbmVjaHRlbj8gRnVlciBlaW4gcGFhciBHb2xkbXVlbnplbiwKZGllIGRpZSBuYWVjaHN0ZSBTdHVuZGUgSW5mbGF0aW9uIG5pY2h0IHVlYmVybGViZW4/IE5hZXd3YSEKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUcmF1ZXIgOi1EIChBcmssICA4LiBTZXAgMjAxNCwgMTk6MDc6MTApOgpFaW5lIGVpbnNhbWUgVHJhZW5lIGt1bGxlcnQgbGFuZ3NhbSB1ZWJlciBNYXlha29zIFdhbmdlbi4gVmVyc3RvaGxlbiB3aXNjaHQKc2ljaCBkaWUga2xlaW5lIEZyYXUgdWViZXIgaWhyIEdlc2ljaHQuCkh1cmF4cHJheCBoYXQgZ2VyYWRlIGRpZSBWZXJiaW5kdW5nIHp1IE1vcmdlbkdyYXVlbiBnZWthcHB0LgpQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgSHVyYXhwcmF4LgpIdXJheHByYXggICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkZhc3QgdW5ob2VyYmFyIHNldWZ6dCBNYXlha28uIElociBHZXNpY2h0IGlzdCBzb3JnZW5lcmZ1ZWxsdC4KRWluZSBlaW5zYW1lIFRyYWVuZSBrdWxsZXJ0IGxhbmdzYW0gdWViZXIgTWF5YWtvcyBXYW5nZW4uIFZlcnN0b2hsZW4gd2lzY2h0CnNpY2ggZGllIGtsZWluZSBGcmF1IHVlYmVyIGlociBHZXNpY2h0LgpIdXJheHByYXggd2FuZGVydCBpbnMgUmVpY2ggZGVyIE5ldHp0b3Rlbi4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogMTkuIGJpcyAyNy4gU2VwLiAyMDE0IChab29rLCAgOC4gU2VwIDIwMTQsIDIyOjE5OjI1KToKfiMhIG9uPUFyayBvdD0xNDEwMjA3MzY1IG9nPW1hZ2llci51cmxhdWIKfiMhIHJuPVpvb2sgcnQ9MTQxMDIwNjUxMiByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTQxMDIwNjUxMgpKYW5laXNrbGFyLiBJY2ggZ2xhdWJlIGJsaW5kIGFsbGVzLCB3YXMgaWNoIGxlc2UuIEhpbnRlcmZyYWdlbiBpc3Qgd2FzIGZ1ZXIKS2xlaW5nbGFldWJpZ2UuIEdvZXR0ZXIgc2luZCB3aWUgTWVuc2NoZW4sIHNpZSBzaW5kCnN0ZXJibF5IXkheSF5IXkheSGJlbGFzdGJhciBiaXMgenVyIEF1c251dHp1bmcuIEdlc2VnbmV0ZW4gVXJsYXViLCBab29rLCBEdQpob2VoZXJlcyBXZXNlbiAoYWxzIGljaCBlcyBiaW4sIGRlbm4gaWNoIHNjaHJ1bXBmZSB2b3IgRGVpbmVyIFdlaXNoZWl0Oi0pKS4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUaGlzIGxvb2tzIHNvb29vIHdyb25nIChSdW1hdGEsIDE5LiBTZXAgMjAxNCwgMTQ6MjI6NDYpOgp+IyEgcm49WmFwaG9iIHJ0PTE0MTExMjg3ODQgcmc9d2ViZGV2Cn4jISB0aWQ9MTQwNTQwODg4MApJY2g/IE5hY2hmb2xnZXIgdm9uIEdyaW1tYm9ybj8KCjp3YWVzY2h0IHNpY2ggc29mb3J0IGRlbiBNdW5kIGF1cy4KCjotKQpSdW0qKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU2FlbmdlciB0cmF1ZXJ0IHVtIGVpbiBoYW5keSAoVGluLCAyMC4gU2VwIDIwMTQsIDAwOjE3OjI4KToKVm9uIEZyZXVuZGluIFRpbjogdG9sbCwgbWVpbiBoYW5keSBpcyB0b3QKClVuZCBnZW5hdSBzbyBpc3QgZXMgYXVjaC4gRGVyIEZhaHJ0ZW5zYWVuZ2VyIHNwaWVsdCBub2NoIGVpbmlnZSBTY2hsdXNzYWtrb3IKaW4gTW9sbCwgZGllIGVyIG1pdCBzYW5mdGVyIFN0aW1tZSBzdW1tZW5kIGJlZ2xlaXRldCwgYmV2b3IgZXIgc2VpbmUgTGF1dGUKYXVza2xpbmdlbiBsYWVzc3QgdW5kIHNpZSBhYnNldHp0LgpWb24gRnJldW5kaW4gVGluOiBobXBmCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpCb2luZy1SZXNldC4gKFphcGhvYiwgMjQuIFNlcCAyMDE0LCAwMToxNzoyMyk6ClNjaGxlaW1lYmVuZS4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IHVudGVuIHVuZCBub3JkZW4uCkVpbiBLaWxsZXJwb3BlbC4KRGllIHZlcmZhdWx0ZW4gRWluemVsdGVpbGUgZWluZXMgS2lsbGVycG9wZWxzLiAgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpUdXRvcmlhbCAoWmFwaG9iLCAyNS4gU2VwIDIwMTQsIDIzOjQyOjUwKToKW0FuZmFlbmdlcjpMaW9uel0gSGFsbG8/IGVpbiBXaWNodGVsIGZyYWcgbWljaCBvYiBpY2ggZGVtIFN0ZWluYmVpc3NlciBlaW4KW0FuZmFlbmdlcjpMaW9uel0gUGFlY2tjaGVuIGJyaW5nZSwgZGFzIGlzdCBkb2NoIHppZW1saWNoIGR1YmlvcyB1bmQgc29sbHRlCltBbmZhZW5nZXI6TGlvbnpdIGRpcmVrdCBoaW50ZXJmcmFndCB3ZXJkZW4sIHdpciB3b2xsZW4gZG9jaCBuaWNodCBkYXMgZGVtCltBbmZhZW5nZXI6TGlvbnpdIFN0ZWluYmVpc3NlciBldHdhcyBwYXNzaWVydCA6PSkKClJlY2h0IGhhdCBlciwgYmVzc2VyIGtvbnRyb2xsaWVyZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpvaG5lIFp1c2FtbWVuaGFuZz8gKEh1cmF4cHJheCwgMjkuIFNlcCAyMDE0LCAyMTo0Njo0MCk6CkRlaW5lIEZyZXVuZGluIFRpbiBzdWNodCBpbiBkZXIgRmVybmUgZWluZW4gQmx1ZW1jaGVucGZsdWVja2VyLgpEdSBzcHVlcnN0IGRhcyBFbGVuZCAuLi4KRHUgamFnc3QgZGllIHd1bmRlcnNhbWUgQmx1bWUgbmljaHQgbWVoci4KCmh1cmF4CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBNdWRsZXQgMy4wIGFscGhhIChDaGFnYWxsLCAgOS4gTm92IDIwMTQsIDIxOjMxOjU1KToKfiMhIHJuPUtlbGx5YnVuZHkgcnQ9MTQxNTU2NTAwNyByZz1tdWRjbGllbnRzCn4jISB0aWQ9MTQxMTM4NzA1NQpNVVNIY2xpZW50IGZpbGVzICh3b3JsZCBmaWxlcywgcGx1Z2lucywgdHJpZ2dlcnMsIGFsaWFzZXMsIHRpbWVycywgdmFyaWFibGVzKQphcmUgc2F2ZWQgaW4gaW5kdXN0cnktc3RhbmRhcmQgWE1MIGZvcm1hdC4KCkljaCBnZWggZGFubiBtYWwgZ2VwZmxlZ3Qga290emVuLi4uCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVmVyendlaWZsdW5nIChOYXBocmVkaWwsICA3LiBEZXogMjAxNCwgMTk6MjA6MjUpOgpNZXJsaW4gcnVmdDogTmFwaHJlZGlsIGlzdCBqZXR6dCBlaW5lIFNlaGVyaW4hCkF1cyBkZW0gTmljaHRzIGVyc2NoZWludCBlaW5lIGtsZWluZSBCZWxvaG51bmcgZnVlciBEaWNoLgpEdSBsYWVjaGVsc3QgZ2x1ZWNrbGljaCBpbiBkaWUgUnVuZGUuCldpbGxrb21tZW4sIENoYW90aW4uCk1hbiBob2VydCBkaWUgdmVyendlaWZlbHRlbiBSdWZlIHZvbiBFbGVuZGlsIGF1cyBkZW0gR3JpbW1zd2FsZCAKaGVydWViZXJzY2hhbGxlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWZXJ6d2VpZmx1bmcgKFRpbiwgIDcuIERleiAyMDE0LCAxOToyNzoxOSk6Cn4jISBybj1OYXBocmVkaWwgcnQ9MTQxNzk3NjQyNSByZz1zY2htYXJybgp+IyEgdGlkPTE0MTc5NzY0MjUKS2xhc3NlIQpkdSBiaXN0IGVpbmUgZ3V0ZSBDaGFvdGluLiAKOmdyaW5zdC4KdGluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXdXRhdXNicnVlY2hlLi4uIChBbWFyeWxsaXMsIDE3LiBEZXogMjAxNCwgMjM6MzY6NTkpOgoKRGVpbmUgRnJldW5kaW4gWmVzc3RyYSB0ZWlsdCBEaXIgbWl0OiBEcmVjay4gaWNoIGhhYiBtaXIgYmVpbSBUcmlua2VuIFdhc3NlcgpEZWluZSBGcmV1bmRpbiBaZXNzdHJhIHRlaWx0IERpciBtaXQ6IGluIGRpZSBUYXN0YXR1ciBnZWtpcHB0LCB3ZWlsIGljaCB6dQpEZWluZSBGcmV1bmRpbiBaZXNzdHJhIHRlaWx0IERpciBtaXQ6IGRvb2YgenVtIHRyaW5rZW4gYmluLi4uCkRhcyBNb3JnZW5HcmF1ZW4gZXJ6aXR0ZXJ0IHVudGVyIGVpbmVtIGxhbmdnZXpvZ2VuZW4sIHVubWVuc2NobGljaGVuIFNjaHJlaS4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxlY2tlciBLbGVyaWtlcmlubmVuISAoQXJrLCAyMi4gRGV6IDIwMTQsIDE4OjI4OjE1KToKRGVpbmUgRnJldW5kaW4gVGluIHRlaWx0IERpciBtaXQ6IHNvLi4gbWFsIHdhcyBlc3NiYXJlcyBzdWNoZW4uLi4KTW9vbnNoaW5lICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExlY2tlciBLbGVyaWtlcmlubmVuISAoVGluLCAyMi4gRGV6IDIwMTQsIDIwOjA2OjEyKToKfiMhIHJuPUFyayBydD0xNDE5MjY5Mjk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQxOTI2OTI5NQpobW1tIG5lIGljaCBlc3MgZG9jaCBuaWNoIGplbWFuZGVuLCBkZXIgYXVzIG1laW5lciBnaWxkZSBrb21tdApUaW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhZW1vbmVubWFnaWUgKE5hcGhyZWRpbCwgMjkuIERleiAyMDE0LCAyMTozMDo1Nyk6CiAgRGllIEZlbnJpc3dvZWxmaW4gZ3JlaWZ0IFNpbmFsYXQgbWl0IERhZW1vbmVubWFnaWUgYW4uClNpbmFsYXQgd2FhYWdodCByYXVzLgpEdSBrb25udGVzdCBkaWUgQ2hhb3NtYWdpZSBuaWNodCBiZWhlcnJzY2hlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHYW1lIE9uZSAoR2xvaW5zb24sIDMwLiBEZXogMjAxNCwgMTg6NDM6NDcpOgp+IyEgcm49SnVzdGF2aXVzIHJ0PTE0MTk5NTU4NDYgcmc9d3d3Cn4jISB0aWQ9MTQxOTk1NTg0NgpBYmVyIGRpZSBoYWJlbiBkb2NoIG5pZSB1ZWJlciBNb3JnZW5ncmF1ZW4gYmVyaWNodGV0ISA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNlcnZlci1BZG1pbiBnZXN1Y2h0IChHbG9pbnNvbiwgIDUuIEphbiAyMDE1LCAwODoyNjozMSk6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTQyMDQzNjQ1MCByZz1zdWNoZS1iaWV0ZQp+IyEgdGlkPTE0MjAzNTk5MDIKQWxzbyA4LDUwIEVVUiBkaWUgU3R1bmRlLiBHYWFhYWFueiBnZWhlaW0gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFtYXJ5bGxpcywgIDcuIEphbiAyMDE1LCAxMjo0ODoxOSk6CkRlaW4gRnJldW5kIFN0aW5nIHRlaWx0IERpciBtaXQ6IG9oIG9oCltUb2Q6TGFyc10gUHJvdHprb3BwIGhhdCBnZXJhZGUgU3RpbmcgdW1nZWJyYWNodC4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFN1cGVyIENsaWVudCBmdWVyIEJsaW5kZSAoR2xvaW5zb24sIDExLiBKYW4gMjAxNSwgMTM6MDU6MzgpOgp+IyEgcm49Wm9vayBydD0xNDIwOTc2OTk4IHJnPW11ZGNsaWVudHMKfiMhIHRpZD0xNDIwNjI4OTAzCldpciBsYXNzZW4gUGxhdHogZnVlciBkaWUgU2VlbW9uc3RlciB1bmQgRHJhY2hlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYXBhZ2VpIHVuZCBzbyAoVGluLCAxMS4gSmFuIDIwMTUsIDIzOjQ0OjIxKToKTGx5c3RyYXRoZSBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIEhpcHBlLCBIaXBwZSwgSGlwcGUsIEhpcHBlLApMbHlzdHJhdGhlIGtyYWVjaHp0OiBIaXBwZSwgSGlwcGUsIEhpcHBlLCBIaXBwZSwgSGlwcGUsIEhpcHBlLCBIaXBwZSwgSGlwcGUsCkxseXN0cmF0aGUga3JhZWNoenQ6IEhpcHBlLCBIaXBwZSwgSGlwcGUsIEhpcHBlLCBIaXBwZSwgSGlwcGUsIGVpbgpMbHlzdHJhdGhlIGtyYWVjaHp0OiBXdWVzdGVuZmxvaCwgZWluIFd1ZXN0ZW5mbG9oLCBTaXJqb3csIGVpbiBTYW5kdGlnZXIsCkxseXN0cmF0aGUga3JhZWNoenQ6IEtyaXN0aW5hIEthcmxzc29uIHVuZCBNYXJnaWUgQnJhZGRvbiAuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTdXBlciBDbGllbnQgZnVlciBCbGluZGUgKENyb2Z0LCAxMi4gSmFuIDIwMTUsIDAwOjM3OjE2KToKfiMhIHJuPUJhbWJpIHJ0PTE0MjA5OTU0MDcgcmc9bXVkY2xpZW50cwp+IyEgdGlkPTE0MjA2Mjg5MDMKV2llc28gYnJhdWNodCBlaW4gU3BpZWxlciBzZWluZW4gZWlnZW5lbiBNVUQtQ2xpZW50PyAgKnNjbnIqCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3VwZXIgQ2xpZW50IGZ1ZXIgQmxpbmRlIChCYW1iaSwgMTIuIEphbiAyMDE1LCAxMjo1NzozMik6Cn4jISBybj1Dcm9mdCBydD0xNDIxMDE5NDM2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyMDYyODkwMwpGcmVpIG5hY2ggZGVtIE1vdHRvOiBqZWRlciBrYW5uLCBrZWluZXIgbXVzcy4gR2lsdCBmdWVyIGRhcyBNVUQgd2llIGZ1ZXIgZGVuClNwaWVsZXIuIH09KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmluZGUgZGVuIEZlaGxlciEgKE1vb25zaGluZSwgMTIuIEphbiAyMDE1LCAyMDo1NzozMik6CkRlaW4gRnJldW5kIFh5WmFiIHRlaWx0IERpciBtaXQ6IGJvYWgsIGljaCBnbGF1YiBtZWluIFdMQU4tS2FiZWwgaGF0CkRlaW4gRnJldW5kIFh5WmFiIHRlaWx0IERpciBtaXQ6IFdhY2tlbGtvbnRha3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGaW5kZSBkZW4gRmVobGVyISAoR2xvaW5zb24sIDEyLiBKYW4gMjAxNSwgMjI6MjE6MzkpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTE0MjEwOTI2NTIgcmc9c2NobWFycm4KfiMhIHRpZD0xNDIxMDkyNjUyCkR1IGhhc3QgRnJldW5kZT8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2FtcGZzdGFiIGltIExhYnlyaW50aCAoWm9vaywgMTQuIEphbiAyMDE1LCAxNzo1NToyNCk6Cn4jISBybj1CYW1iaSBydD0xNDIxMDgwODc4IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTE0MjEwODA4NzgKV2VubiBlcyBudXIgdW0gZGFzIEF1Zi1kaWUtRnVlc3NlLXRyZXRlbiBnZWh0LCBpY2ggdWViZXJuZWhtZSBzb3dhcyAKZ2VybmUuCgpab29rIHN1Y2h0IGRpZSBFaXNlbnN0YW5nZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGaW5kZSBkZW4gRmVobGVyISAoWm9vaywgMTQuIEphbiAyMDE1LCAxNzo1Njo1MCk6Cn4jISBybj1Nb29uc2hpbmUgcnQ9MTQyMTA5MjY1MiByZz1zY2htYXJybgp+IyEgdGlkPTE0MjEwOTI2NTIKV2lyIHdvbGxlbiBOQU1FTiEgCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZpbmRlIGRlbiBGZWhsZXIhIChNY2RlZSwgMTQuIEphbiAyMDE1LCAyMjozMTo1MSk6Cn4jISBybj1ab29rIHJ0PTE0MjEyNTQ2MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xNDIxMDkyNjUyCk5pZW1hbHMgbmljaHQhCgpNY0RlZQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRmluZGUgZGVuIEZlaGxlciEgKFpvb2ssIDE1LiBKYW4gMjAxNSwgMDk6MzM6MTgpOgp+IyEgcm49TWNkZWUgcnQ9MTQyMTI3MTExMSByZz1zY2htYXJybgp+IyEgdGlkPTE0MjEwOTI2NTIKT2ssIGRhbm4gZnJhZ2UgaWNoIGF1Y2ggbmljaHQgbWVociBuYWNoLgoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IElnbm9yaWVyZW4gYXVmIEViZW5lbiAoVmFuaXIsIDE3LiBKYW4gMjAxNSwgMTE6MjM6NTgpOgp+IyEgb249VmFuaXIgb3Q9MTQyMTQ5MDE4MCBvZz1lbnR3aWNrbHVuZwp+IyEgcm49WmVzc3RyYSBydD0xNDIxNDUxNzE5IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTQyMTQ1MTcxOQpJY2ggd2V0dGUgdW0gMTAgRXVybywgZGFzcyB3aXIgSm9mIGRpZSBuYWVjaHN0ZW4gMTAgSmFocmUgbmljaHQgYXVmIGRlcgpNb2VyZGVyZWJlbmUgc2VoZW4gd2VyZGVuLgpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRyYW5zcG9ydG1pdHRlbCB1bmQgUmVpc2Vtb2VnbGljaGtlaXRlbiAoQXJhdGhvcm4sIDE4LiBKYW4gMjAxNSwgMTk6MTg6NDQpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTQyMTYwMTg1NyByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTE0MjE2MDE4NTcKVW0gZXVjaCB2aWVsbGVpY2h0IGVpbiBiaXNzY2hlbiBhbiBkZW4gS3VyaW9zaXRhZXRlbiBpbSBSZWlzZXN5c3RlbQp0ZWlsaGFiZW4genUgbGFzc2VuLCBmb2xnZW5kZXIgRnVuZCBhdXMgZGVuIFVudGllZmVuIGRlcyBQb3J0IFZhaW5lcgpIYWZlbmJlY2tlbnMuCgpXaWUgZGVyIGVpbmUgb2RlciBhbmRlcmUgdmllbGxlaWNodCB3ZWlzcywgaXN0IGRlciBBbmxlZ2VyIGltIFZlcmxvcmVuZW4KTGFuZCBhdWNoIGFscyAiVmVybG9yZW5lIExhbmQgKCBPcmtoYXVzZW4gKSIgZWluZ2V0cmFnZW4uIERpZSBiaXNoZXJpZ2UKU3ludGF4cHJ1ZWZ1bmcgaGF0dGUgbnVuIGRpZXNlbiBFaW50cmFnIGluIGVpbnplbG5lIFdvZXJ0ZXIgemVybGVndCB1bmQKZ2VnZW4gZXVyZSBFaW5nYWJlIGdlcHJ1ZWZ0LiAKCkltIEVuZGVyZ2VibmlzIGZ1ZWhydGUgZGFzIGRhenUsIGRhc3MgbWFuLCB3ZW5uIG1hbiB2b24gUG9ydCBWYWluIGlucwpWbGFuZCB3b2xsdGUsIHN0YXR0IGFsbGVyIHVlYmxpY2hlbiBWZXJyZW5rdW5nZW4gKHdlciBlcmlubmVydCBzaWNoIG5pY2h0CmRhcmFuISkgZ2FueiBlaW5mYWNoIG51ciAicmVpc2UgbmFjaCAoIiBoYWV0dGUgZWluZ2ViZW4gbXVlc3NlbiEKCkFyYXRob3JuLCBpbW1lciBub2NoIGxlaXNlIGtpY2hlcm5kLgoKUC5TLjogSmEsICJyZWlzZSBuYWNoICkiIGdpbmcgbmF0dWVybGljaCBhdWNoLiA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVHJhbnNwb3J0bWl0dGVsIHVuZCBSZWlzZW1vZWdsaWNoa2VpdGVuIChWYW5pciwgMTkuIEphbiAyMDE1LCAxNToyNTo0Nyk6Cn4jISBybj1BcmF0aG9ybiBydD0xNDIxNjA1MTI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyMTYwMTg1NwpBdXMgR3J1ZW5kZW4gZGVyIE9yZGVudGxpY2hrZWl0IHNvbGx0ZSBtYW4gZGVzd2VnZW4gaW1tcmUgYWx0ZXJuaWVyZW5kIG5hY2ggKAp1bmQgKSByZWlzZW4uClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBUcmFuc3BvcnRtaXR0ZWwgdW5kIFJlaXNlbW9lZ2xpY2hrZWl0ZW4gKEFuYXRvbCwgMjAuIEphbiAyMDE1LCAwOTowOTo1Nik6Cn4jISBybj1WYW5pciBydD0xNDIxNjc3NTQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyMTYwMTg1NwpVbmQgaW1tZXIgRG9wcGVscmVpc2VuIHVudGVybmVobWVuIChlaW5lIHVuZ2VzY2hsb3NzZW5lbmUgb2VmZm5lbmRlCktsYW1tZXIgaGludGVybGFlc3N0IGZ1ZXIgZGVuIFJlc3QgZGVzIFRhZ2VzIGVpbmUgdW5hdWZnZWxvZXN0ZSBTcGFubnVuZy4KCmh0dHA6Ly94a2NkLmNvbS84NTkvCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEF1ZnJhZXVtYXJiZWl0ZW4gaW0gVkxhbmQgKFpvb2ssIDIxLiBKYW4gMjAxNSwgMTc6MTU6MDQpOgp+IyEgcm49QnVnZml4IHJ0PTE0MjE4NDI2NzUgcmc9ZC52bGFuZAp+IyEgdGlkPTE0MjE4NDI2NzUKV28gaXN0IEJvc2NoYW50ZT8KClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXVmcmFldW1hcmJlaXRlbiBpbSBWTGFuZCAoQnVnZml4LCAyMS4gSmFuIDIwMTUsIDE3OjE1OjQ0KToKfiMhIHJuPVpvb2sgcnQ9MTQyMTg1NjkwNCByZz1zY2htYXJybgp+IyEgdGlkPTE0MjE4NDI2NzUKV2FzIGhhdCBCb3NjaGFudGUgbWl0IGRlbSBWTGFuZCB6dSB0dW4/CgpCRgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVHJhbnNwb3J0bWl0dGVsIHVuZCBSZWlzZW1vZWdsaWNoa2VpdGVuIChNYXN1bCwgMjIuIEphbiAyMDE1LCAyMTo1OTozMSk6Cn4jISBybj1BbmF0b2wgcnQ9MTQyMTc0MTM5NiByZz1zY2htYXJybgp+IyEgdGlkPTE0MjE2MDE4NTcKKS4KUHVoLiBEYXMgd2FyIG1pciBlaW4gQW5saWVnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFtYXJ5bGxpcywgMjQuIEphbiAyMDE1LCAyMTo1MToyMSk6CltBYmVudGV1ZXI6VGFyYW1hcl0gSG1tLiBNdXNzIGljaCB3b2hsIGR1cmNoIGRpZSBFYmVuZSByZW5uZW4uLi4/CltUb2Q6TGFyc10gRWluZSBEb2dnZSBoYXQgZ2VyYWRlIFRhcmFtYXIgdW1nZWJyYWNodC4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKFZhbmlyLCAyNS4gSmFuIDIwMTUsIDAwOjQwOjA1KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNDIyMTMyNjgxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyMjEzMjY4MQpEYSBoYXQgZXIgc2ljaCBhYmVyIHRvbGwgdmVybGF1ZmVuIC4uLiBiaXMgaW5zIFBvbGFyLgpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGTFcgKFRpbiwgMjUuIEphbiAyMDE1LCAxNjo1ODowMCk6Cn4jISBybj1WYW5pciBydD0xNDIyMTQyODA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyMjEzMjY4MQpoaWhpaGhpCmVyIGhhdCBlcnphZWhsdCBkYXNzIGVyIGRlbiBicmllZiBpbiBkZXIgZWJlbmUgc2Nob24gYWJnZWdlYmVuIGhhdHRlLi4uCnRpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRkxXIChWYW5pciwgMjUuIEphbiAyMDE1LCAxODo1NDoxNyk6Cn4jISBybj1UaW4gcnQ9MTQyMjIwMTQ4MCByZz1zY2htYXJybgp+IyEgdGlkPTE0MjIxMzI2ODEKLi4uIHVuZCB3YWVyZSBlciBuaWNodCBDaGFvdCBnZXdvcmRlbiwgc28gd2FlcmUgZXIgd2VuaWdzdGVucyBpbiBkZXIgRWJlbmUKZ2VsYW5kZXQgbmFjaCBzZWluZW0gTGFyc2Jlc3VjaC4KVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZMVyAoVGluLCAyNS4gSmFuIDIwMTUsIDE4OjU3OjEzKToKfiMhIHJuPVZhbmlyIHJ0PTE0MjIyMDg0NTcgcmc9c2NobWFycm4KfiMhIHRpZD0xNDIyMTMyNjgxCkhpaGloaWgKdGluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQnVjaGVtcGZlaGx1bmcgKFpvb2ssICAxLiBGZWIgMjAxNSwgMTY6MTk6NDMpOgp+IyEgcm49QXJrIHJ0PTE0MjI0ODU3Mzcgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xNDIyNDg1NzM3CldpciB3b2xsZW4gZ2FyIG5pY2h0IHNvIGdlbmF1IHdpc3Nlbiwgd2llIER1IGVzIGhpZXIgYmlzIHp1bQpFcnptYWdpZXIgZ2VzY2hhZmZ0IGhhc3QhCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUHlyYW1pZGVucHV0eiAoR25vbWUsICA1LiBGZWIgMjAxNSwgMTE6MTY6MzUpOgp+IyEgcm49Tm90c3Ryb20gcnQ9MTQyMzEyNjgzOCByZz1kLnd1ZXN0ZQp+IyEgdGlkPTE0MjMxMjY4MzgKQWgsIGRhcyBlcmtsYWVydCBqZXR6dCBhdWNoIGRlbiBTcGllbGVyc2Nod3VuZCBkZXIgbGV0enRlbiBKYWhyZS4uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVlYmVyIFdlaWhuYWNodGVuIC4uLiAoUGVyZGl0YSwgMTEuIEZlYiAyMDE1LCAxODozOTozOSk6Cn4jISBybj1Ob3RzdHJvbSBydD0xNDE4ODQ0MzU0IHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xNDE4ODQ0MzU0Ck1lbnNjaCBOb3RzdHJvbSwgZGFiZWkgaGFldHRlbiB3aXIgZGljaCBhbSBlcnN0ZW4gV2VpaG5hY2h0c3RhZyBzbyBndXQKZ2VicmF1Y2hlbiBrb2VubmVuIC0gU3Ryb21hdXNmYWxsIGltIGdhbnplbiBEb3JmIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFBhcmEtT3JrcyAoWm9vaywgMTYuIEZlYiAyMDE1LCAxNDo1NzoxMCk6Cn4jISBybj1CdWdmaXggcnQ9MTQyNDA5Mjg2OSByZz1kLnZsYW5kCn4jISB0aWQ9MTQyNDA5Mjg2OQpIYXQgZXIgd2VuaWdzdGVucyBlaW5lbiBTcGllbGVyIGVyd2lzY2h0PwoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBQYXJhLU9ya3MgKENyb2Z0LCAxNi4gRmViIDIwMTUsIDE0OjU3OjQxKToKfiMhIHJuPVpvb2sgcnQ9MTQyNDA5NTAzMCByZz1zY2htYXJybgp+IyEgdGlkPTE0MjQwOTI4NjkKTmljaHQga3JpdGlzY2guCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUGFyYS1PcmtzIChDaGFnYWxsLCAxNi4gRmViIDIwMTUsIDE0OjU4OjA0KToKfiMhIHJuPUNyb2Z0IHJ0PTE0MjQwOTUwNjEgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI0MDkyODY5CkRpZSBQYXJhb3JrcyB2b24gaGV1dGUgc2luZCBhdWNoIG5pY2h0IG1laHIgZGFzLCB3YXMgc2llIG1hbCB3YXJlbi4KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBQYXJhLU9ya3MgKEFtYXJ5bGxpcywgMTYuIEZlYiAyMDE1LCAxNDo1ODo0Nik6Cn4jISBybj1DaGFnYWxsIHJ0PTE0MjQwOTUwODQgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI0MDkyODY5CkRpZSBrb25udGVuIGRvY2ggbm9jaCBuaWUgd2FzLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmVpZmFsbHNzdHVybSAoTm90c3Ryb20sIDIyLiBGZWIgMjAxNSwgMTU6NTQ6MTApOgpIdW1uaSBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uCkVpbiBCZWlmYWxsc3N0dXJtIGJyYW5kZXQgaW0gRGlhbW9uZHBhcmsgYXVmLiBXYXMgZGEgd29obCB3aWVkZXIgbG9zIGlzdD8gCgoKU0NOUiwKTm90c3Ryb20uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogU29tbWVycGFydHkgMjAxNT8gKENoYWdhbGwsIDI1LiBGZWIgMjAxNSwgMTc6MTA6MjQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTQyNDg4MDI1OSByZz1wYXJ0eQp+IyEgdGlkPTE0MjI4MzU1ODkKaW1tZXIgZGVtIEdlcnVjaCBuYWNoPwoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBTb21tZXJwYXJ0eSAyMDE1PyAoR25vbWUsIDI1LiBGZWIgMjAxNSwgMTc6NTE6MDMpOgp+IyEgcm49Q2hhZ2FsbCBydD0xNDI0ODgwNjI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyMjgzNTU4OQpEYXMgd2FlcmUgYXVjaCBtZWluZSBlcnN0ZSBGcmFnZSBnZXdlc2VuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnbHVlY2tzdHJlZmZlciAoVGluLCAyNi4gRmViIDIwMTUsIDE2OjA0OjE1KToKSGllciBoYXQgZGVyIEdhbmcgZHVyY2ggZGFzIGVpc2lnZSBMYWJ5cmludGggdGF0c2FlY2hsaWNoIGVpbiBFbmRlLCB1bmQKd3VuZGVyYmFyZXJ3ZWlzZSBpc3QgZXMgYXVjaCBuaWNodCBtZWhyIGdhbnogc28ga2FsdCB3aWUgaW0gT3N0ZW4uIEVpbmUKTGVpdGVyIGZ1ZWhydCBkdXJjaCBlaW4gTG9jaCBpbiBkZXIgRGVja2UgbmFjaCBvYmVuLCBkZXNzZW4gUmFlbmRlciBtaXQKZWluZW0gbWVya3d1ZXJkaWdlbiBTY2hsZWltIHZlcnNjaG1pZXJ0IHNpbmQuCkVzIGdpYnQgendlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvYmVuIHVuZCBvc3Rlbi4KSXJraXRpcyBkZXIgd2lsZGUgSGFsYmR1bmtlbGRhZW1vbi4KRWluIEVpc3JpZXNlLgpEaWUgYmVyZWl0cyB6aWVtbGljaCBzdGlua2VuZGUgTGVpY2hlIGVpbmVzIEVpc3JpZXNlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERpYXNwb3JhIC8gRnJpZW5kaWNhIChab29rLCAgNC4gTWFyIDIwMTUsIDEwOjA1OjU1KToKfiMhIG9uPVpvb2sgb3Q9MTQyNTQ1OTkzOCBvZz1hbGxnZW1laW5lcwp+IyEgcm49WmFwaG9iIHJ0PTE0MjU0MDk0OTQgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xNDI1MzMzMjY0CkljaCBtb2VjaHRlIGFiZXIgZ2FyIG5pY2h0IGJlc3Byb2NoZW4gd2VyZGVuLgoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRGlhc3BvcmEgLyBGcmllbmRpY2EgKEdsb2luc29uLCAgNC4gTWFyIDIwMTUsIDEwOjI3OjI0KToKfiMhIHJuPVpvb2sgcnQ9MTQyNTQ1OTk1NSByZz1zY2htYXJybgp+IyEgdGlkPTE0MjUzMzMyNjQKVGhlbWEgMTogTmV1ZXIgRXhlZ2V0IGdlc3VjaHQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1ZSBUb3BsaXN0ZW4hIChaZXNzdHJhLCAgNi4gTWFyIDIwMTUsIDAwOjQwOjUwKToKRGllIG5ldWVuIFRvcGxpc3RlbiBuZWhtZW4gR2VzdGFsdCBhbjoKCiAgICAgICBOYW1lICAgICAgICAgICAgICAgTGV2ZWwgIEFQICAgIEVyZmFocnVuZyAgICAgIEFsdGVyICAgICBHaWxkZQoqICAgMS4gQ3JvZnQgICAgICAgICAgICAgICAgIDY1IDI5MTYgICAgIDI1NDk1NDA0IDEyMzNkLCAxNjoxOCAgQmllcnNjaHVldHRsZXIKKiAgIDIuIE5lZmlzICAgICAgICAgICAgICAgIDE2OSAzNjE5ICAgIDE3NzYxMjY2MiAgNTg4ZCwgMDU6NDggIENoYW9zCiogICAzLiBHdWxhaHIgICAgICAgICAgICAgICAxNjkgMzYxOSAgICA3NjAyMjA2MjMgIDQwNGQsIDEwOjQ1ICBLYWVtcGZlcgoqICAgNC4gTW9vbnNoaW5lICAgICAgICAgICAgMTkyIDM2MTkgICAxNTU1Nzc1ODI3ICAyOTVkLCAwNDoyNyAgS2xlcnVzCiogICA1LiBUYWxhbmlzICAgICAgICAgICAgICAxNDQgMzYxOSAgICAxNjkzNTE2MzggIDIzMmQsIDA0OjEwICBUYW5qaWFuCiogICA2LiBTYXJheSAgICAgICAgICAgICAgICAxNDkgMzUyNCAgICAxNjU1MDIzNTUgIDE5N2QsIDA4OjIwICBDaGFvcwogICAgNy4gR2luZ2tvICAgICAgICAgICAgICAgIDI4IDExNzEgICAgICAxMTgxNzc1ICAxNzRkLCAwMTozOSAgS2F0emVua3JpZWdlcgoqICAgOC4gU295bmFkYSAgICAgICAgICAgICAgMTE0IDM1MTIgICAgMjEzNzE4NDk2ICAxNzNkLCAwMToxOCAgRHVua2VsZWxmZW4KICAgIDkuIE1hc3VsICAgICAgICAgICAgICAgICAzNyAxMjcyICAgICAgIDUwMjYzMiAgMTcwZCwgMTY6MzQgIEFiZW50ZXVyZXIKKiAgMTAuIEFyc29uICAgICAgICAgICAgICAgICA5NSAyNTg0ICAgIDEwNjQyNzM2NiAgMTU1ZCwgMjE6MTcgIFRhbmppYW4KCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1ZSBUb3BsaXN0ZW4hIChHbG9pbnNvbiwgIDYuIE1hciAyMDE1LCAwNjoyMzowNSk6Cn4jISBybj1aZXNzdHJhIHJ0PTE0MjU1OTg4NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI1NTk4ODUwCkRhcyBnbGF1YnQgZWgga2VpbmVyLCBkYXMgQ3JvZnQgZWluZSBUb3BmbGlzdGUgYW5mdWVocnQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVlIFRvcGxpc3RlbiEgKFZhbmlyLCAgNi4gTWFyIDIwMTUsIDEwOjQwOjIyKToKfiMhIHJuPUdsb2luc29uIHJ0PTE0MjU2MTkzODUgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI1NTk4ODUwClRvcGxpc3RlIChBbnphaGwgZ2V0cnVua2VuZXIgdmVyc2NoaWVkZW5lciBCaWVyZSkKMS4gQ3JvZnQgMTAyNAoyIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVlIFRvcGxpc3RlbiEgKENyb2Z0LCAgNi4gTWFyIDIwMTUsIDEwOjQyOjAzKToKfiMhIHJuPUdsb2luc29uIHJ0PTE0MjU2MTkzODUgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI1NTk4ODUwCkhleSwgc28gd2VuaWdlIFRvZXBmZSB0cmluayBpY2ggbnVuIGF1Y2ggd2llZGVyIG5pY2h0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldWUgVG9wbGlzdGVuISAoUnVtYXRhLCAgNi4gTWFyIDIwMTUsIDEwOjQzOjMxKToKfiMhIHJuPUNyb2Z0IHJ0PTE0MjU2MzQ5MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI1NTk4ODUwCkluIGRlbiBLYXN0ZW4gcGFzc3RlbiBudXIgMTBiaXQsIGRhbm4gbGllZiBlciB1ZWJlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5ldWUgVG9wbGlzdGVuISAoR2xvaW5zb24sICA2LiBNYXIgMjAxNSwgMTY6MjI6MjcpOgp+IyEgcm49UnVtYXRhIHJ0PTE0MjU2MzUwMTEgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI1NTk4ODUwCkF1c3NlcmRlbSBoYWVsdCBDcm9mdCBpbW1lciBudXIgc28gdmllbGUgQmllcmUgZ2xlaWNoemVpdGlnLCBkYXMgVHJpbmtlbiBpc3QKdW5iZXdpZXNlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOZXVlIFRvcGxpc3RlbiEgKFZhbmlyLCAgNy4gTWFyIDIwMTUsIDExOjAzOjU5KToKfiMhIHJuPUdsb2luc29uIHJ0PTE0MjU2NTUzNDcgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI1NTk4ODUwCkljaCBoYWJlIENyb2Z0IHNjaG9ubWFsIHRyaW5rZW4gc2VoZW4uIEdlZ2VuYmV3ZWlzIGVyYnJhY2h0PwpWLgoKYCoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBOZXVlIFRvcGxpc3RlbiEgKEdsb2luc29uLCAgNy4gTWFyIDIwMTUsIDEyOjEwOjM5KToKfiMhIHJuPVZhbmlyIHJ0PTE0MjU3MjI2Mzkgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI1NTk4ODUwCkRhcyByZWljaHQgbm9jaCBuaWNodCBmdWVyIGVpbmUgVG9wbGlzdGUuIEljaCBnbGF1YmUsIENyb2Z0IGhhbXN0ZXJ0IG51ciBnZXJuLgoKaHR0cDovL21nLm11ZC5kZS9yZWFsd29ybGQvUGFydHkuMzgvZm90b3MuZ2xvaW5zb24vMDctMzFfMTgtMzhfTUdCcmllc2VsYW5nMjAxCjBfNjQuSlBHCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBadSBkZW4gQXVmcmFldW1hcmJlaXRlbiAoQ2hhZ2FsbCwgMTguIE1hciAyMDE1LCAxNDoyMzoyOCk6Cn4jISBybj1CdWdmaXggcnQ9MTQyNjY4NDA2MyByZz1kLnZsYW5kCn4jISB0aWQ9MTQyNjY4MzY3MApJY2ggaGFsdGUgZGFzIGZ1ZXIgZWluZSBndXRlIElkZWUsIGRlbiBGZWhsZXIgYW4gZGVyIEJhbnNoZWUgYWJ6dXNldHplbi4gQW0KYmVzdGVuIHZlcnppY2h0ZXQgbWFuIGRhYmVpIG5vY2ggYXVmIGRpZSBPaHJlbnNjaHVldHplci4gOikKCk1DLCBnaWJ0IFNwaWVsZXJuIGdlcm5lIFRpcHMgdW0gZGFzIGVsZWdhbnRlIEFibGViZW4genUgZm9lcmRlcm4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogWnUgZGVuIEF1ZnJhZXVtYXJiZWl0ZW4gKEFuYXRvbCwgMTguIE1hciAyMDE1LCAxNDozMDowOCk6Cn4jISBybj1CdWdmaXggcnQ9MTQyNjY4NTI5MSByZz1kLnZsYW5kCn4jISB0aWQ9MTQyNjY4MzY3MApXZW5uIGljaCByYXRlbiBtdWVzc3RlOiBNYW4ga2FubiBiZWltIE1hZXhjaGVudGlzY2ggamV0enQgCmJlc3NlciBtb2dlbG4/IDotKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFp1IGRlbiBBdWZyYWV1bWFyYmVpdGVuIChab29rLCAxOC4gTWFyIDIwMTUsIDE0OjU2OjE3KToKfiMhIHJuPUFuYXRvbCBydD0xNDI2Njg1MDAyIHJnPWQudmxhbmQKfiMhIHRpZD0xNDI2NjgzNjcwCk51biB3aXJkJ3Mgd2llZGVyIGVybnN0LCBBbmF0b2wgc2NocmVpYnQgaW0gQmxvY2tzYXR6c3RpbC4KClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFp1IGRlbiBBdWZyYWV1bWFyYmVpdGVuIChBbmF0b2wsIDE4LiBNYXIgMjAxNSwgMTQ6NTc6NTkpOgp+IyEgcm49Wm9vayBydD0xNDI2Njg2OTc3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyNjY4MzY3MApFcm5zdCB3aXJkIGVzLCB3ZW5uIGVzIHNpY2ggenVzYWV0emxpY2ggYXVjaCBub2NoIHJlaW10LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogWnUgZGVuIEF1ZnJhZXVtYXJiZWl0ZW4gKEdsb2luc29uLCAxOC4gTWFyIDIwMTUsIDE1OjI4OjQ5KToKfiMhIHJuPUFuYXRvbCBydD0xNDI2Njg3MDc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyNjY4MzY3MApEdSB3aXJzdCBhZWx0ZXIgdW5kIGhpbnRlcmhhZWx0aWdlciwgbW9lZ2xpY2hlcndlaXNlIHJlaW10IGVzIHNpY2ggaGV1dHp1dGFnZQpiZWkgYXV0b21hdGlzY2hlciBVZWJlcnNldHp1bmcgaW4gaXJnZW5kIGVpbmUgU3ByYWNoZS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBadSBkZW4gQXVmcmFldW1hcmJlaXRlbiAoUnVtYXRhLCAxOC4gTWFyIDIwMTUsIDE1OjQ5OjQ3KToKfiMhIHJuPUdsb2luc29uIHJ0PTE0MjY2ODg5Mjkgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI2NjgzNjcwCmhvd2wgaG93bCBob3dsIC4uLiBnYXJnbGUgaG93bCA/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBadSBkZW4gQXVmcmFldW1hcmJlaXRlbiAoQW5hdG9sLCAxOC4gTWFyIDIwMTUsIDE3OjAyOjU5KToKfiMhIHJuPVJ1bWF0YSBydD0xNDI2NjkwMTg3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyNjY4MzY3MApJY2ggZ2VudWVnZSBpbiBkaWVzZXIgSGluc2ljaHQgbWVpbmVuIGVpZ2VuZW4gQW5zcHJ1ZWNoZW4gbmljaHQuCkJpbiB6dSBCb2RvLVdhcnRrZS12ZXJkb3JiZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUGxha2V0dGVuIChBcmF0aCwgIDMuIEFwciAyMDE1LCAwNDozOTo1Nyk6CkVsZW5kaWwgcmljaHRldCBzZWluZSBQbGFrZXR0ZSBhdWYgRGljaC4KQmxpdHplIHp1Y2tlbiB6d2lzY2hlbiBkZW4gendlaSBQbGFrZXR0ZW4gaGluIHVuZCBoZXIuClBsb2V0emxpY2ggd2Vpc3N0IER1IGZvbGdlbmRlczoKRHUgaGFzdCB3ZW5pZ2VyIFN0dWZlbnB1bmt0LU1vbnN0ZXIgZ2V0b2V0ZXQgYWxzIEVsZW5kaWwuCkR1IGhhc3QgMSBNb25zdGVyIGdldG9ldGV0LCBkaWUgRWxlbmRpbCBub2NoIG5pY2h0IGdldG9ldGV0IGhhdC4KRWxlbmRpbCBoYXQgMTU4OSBNb25zdGVyIGdldG9ldGV0LCBkaWUgRHUgbm9jaCBuaWNodCBnZXRvZXRldCBoYXN0LgoKSWNoIGRlbmtlIG1hbCwgRWxlKiBpc3QgYXVmIGRlbiBlaW5lbiB3b2hsIHNjaGFlcmZlciBhbHMgaWNoIGF1ZiBkaWUgMTU4OSA7LSkpCgpBcmF0aAoKUFM6IFdlciBmaW5kZXQgZGVuIEdyYW1tYXRpa2ZlaGxlciBpbiBkZXIgTWVsZHVuZz8gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBQbGFrZXR0ZW4gKEFyaywgIDMuIEFwciAyMDE1LCAxMDo0MDoyNSk6Cn4jISBybj1BcmF0aCBydD0xNDI4MDI4Nzk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyODAyODc5NwpJc3QgYmVob2Jlbi4gRnVlciBuZXVlIFBsYWtldHRlbi4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFBsYWtldHRlbiAoQXJhdGgsICA0LiBBcHIgMjAxNSwgMjM6MzI6MjcpOgp+IyEgcm49QXJrIHJ0PTE0MjgwNTA0MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI4MDI4Nzk3ClRoeCEgQXJrIGZvciBQcmVzaWRlbnQhCgpBcmF0aCwgZmFlaG5jaGVuc2Nod2Vua2VuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFybWUgU1NQLUZyb2VzY2hlLi4uIChIdXJheHByYXgsIDEwLiBBcHIgMjAxNSwgMjM6MDk6MDEpOgpbU2VoZXI6R3JlbGxnZW5dIHVuZ2xhdWJsaWNoLiBzY2hvbiA1IEVrcyBpbiBkZXIgU1NQLi4uIGhhYiBpY2ggd29obCB2b3IgMTUKW1NlaGVyOkdyZWxsZ2VuXSBKYWhyZW4gbmljaHQgYXVmZ2VwYXNzdCA7KSA8TW8sIDAxOjU0OjM2PiAKW1NlaGVyOkVpbiBGcm9zY2hdIGdybXBmIDxNbywgMDQ6MzA6MTY+IApbU2VoZXI6R3JlbGxnZW5dIGp1aHUsIGxldmVsIDxNbywgMDQ6MzY6MjQ+IAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBcm1lIFNTUC1Gcm9lc2NoZS4uLiAoVGluLCAxMC4gQXByIDIwMTUsIDIzOjEzOjEzKToKfiMhIHJuPUh1cmF4cHJheCBydD0xNDI4NzAwMTQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyODcwMDE0MQp3YXJzdCBkdSBkZXIgZnJvc2NoCnRpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBcm1lIFNTUC1Gcm9lc2NoZS4uLiAoSHVyYXhwcmF4LCAxMC4gQXByIDIwMTUsIDIzOjE0OjI3KToKfiMhIHJuPVRpbiBydD0xNDI4NzAwMzkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyODcwMDE0MQpXZW5uIGR1IG1pY2ggYWxzIEVLIHN1Y2hzdCwgbXVzc3QgZHUgZGljaCBiZWkgVHdpbmdpIGF1ZiBkZW4gSW5zZWxuIHVtc2NoYXVlbgpuaWNodCBpbiBkZXIgU1NQIDspCgpodXJheAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBcmF0aCwgMTIuIEFwciAyMDE1LCAwMDo0NToxMik6CltBbGxnZW1laW46SXJvbmhhbmRdIE11c3MgaWNoIERqdG9tIHp1c3RpbW1lbiwgc2VpdCBtZWluIE1hcHBlciBsYWV1ZnQgcmF1c2NodApbQWxsZ2VtZWluOklyb25oYW5kXSBtYW4gYW4gdmllbGVuIERpbmdlbiB2b3JiZWkKLi4uCltUb2Q6TGFyc10gRWluIEVudGVuc2Nod2FybSBoYXQgZ2VyYWRlIElyb25oYW5kIHVtZ2VicmFjaHQuCltUb2Q6RWluIEVudGVuc2Nod2FybV0gTmFrLCBuYWsgTkFLIQoKc2NuciwKQXJhdGgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IG9ocmVuc2NodWV0emVyIChHbm9tZSwgMTIuIEFwciAyMDE1LCAwMjoxMDozOCk6Cn4jISBybj1BbmF0b2wgcnQ9MTQyNjc1MTM0NyByZz1kLnZsYW5kCn4jISB0aWQ9MTQyNjY5NTk3NApXaWUgbGFuZ2UgaGFzdCBkdSBkYXMgdm9ybSBTcGllZ2VsIGdldWVidD8gU2VpIGVocmxpY2ghCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBvaHJlbnNjaHVldHplciAoQW5hdG9sLCAxMi4gQXByIDIwMTUsIDA5OjM4OjEyKToKfiMhIHJuPUdub21lIHJ0PTE0Mjg3OTc0Mzggcmc9c2NobWFycm4KfiMhIHRpZD0xNDI2Njk1OTc0CkR1IGtlbm5zdCBtaWNoLiBEdSBnbGF1YnN0IG5pY2h0IGVybnN0aGFmdCwgZGFzcyBpY2ggc293YXMgdWViZW4gbXVlc3N0ZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IG9ocmVuc2NodWV0emVyIChNb29uc2hpbmUsIDEyLiBBcHIgMjAxNSwgMDk6NDU6MzYpOgp+IyEgcm49QW5hdG9sIHJ0PTE0Mjg4MjQyOTIgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI2Njk1OTc0CldpZXNvIGhhYmUgaWNoIGdlcmFkZSBiZWkgZXVjaCAyIGthbm5zdCBzdGF0dCBrZW5uc3QgZ2VsZXNlbj8gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBvaHJlbnNjaHVldHplciAoR2xvaW5zb24sIDEyLiBBcHIgMjAxNSwgMDk6NTI6NDQpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTE0Mjg4MjQ3MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI2Njk1OTc0ClNjaGFsdCBoYWx0IG1hbCBkYXMgTW9kdWwgSG9lZmxpY2gtRGV1dHNjaCwgRGV1dHNjaC1Ib2VmbGljaCBhdXMuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQm9pbmctUmVzZXQuLi4gKEFyYXRoLCAxMy4gQXByIDIwMTUsIDAxOjMwOjIxKToKRHUgc2NobGFlZ3N0IGRlbiBGZXVlcnRldWZlbCBmaWVzIG1pdCBkZW0gbWl0dGxlcmVuIFRlaWwgR3VydW5kaXJzLgogIER1IHplcnN0YWV1YnN0IGVpbmVuIEZldWVydGV1ZmVsLgpEZXIgRmV1ZXJ0ZXVmZWwgZmFlbGx0IHRvdCB6dSBCb2Rlbi4KRWluIEZldWVydGV1ZmVsIGtvbW10IGFuLgpFaW4gRmV1ZXJ0ZXVmZWwgbmltbXQgZWluZW4gRmV1ZXJzY2hpbGQgYXVzIGVpbmVyIExlaWNoZS4KRWluIEZldWVydGV1ZmVsIHppZWh0IGVpbmVuIEZldWVyc2NoaWxkIGFuLgoKQXJhdGgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCb2luZy1SZXNldC4uLiAoWm9vaywgMTMuIEFwciAyMDE1LCAwOToxNTozMSk6Cn4jISBybj1BcmF0aCBydD0xNDI4ODgxNDIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyODg4MTQyMQpGdW5rdGlvbmllcnQgbmFjaCB3aWUgdm9yIHdpZSBhbSBlcnN0ZW4gVGFnIQoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0YXRpIGJlaW0gQW5kcmVhc2JyYWV1IGFtIDEyLjA0LiAoVmFuaXIsIDEzLiBBcHIgMjAxNSwgMTI6MzM6NDMpOgp+IyEgb249VmFuaXIgb3Q9MTQyODkyMTIwNCBvZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHJuPVpvb2sgcnQ9MTQyODg2NDU4NSByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xNDI4ODY0NTg1CkJvYWggaGFzdCBEdSBlaW4gTGFnLCB3ZW5uIGljaCBtaXIgZGllIFplaXRlbiBpbiBkZW0gQXJ0aWtlbCBzbyBhbmd1Y2tlLgpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTdGF0aSBiZWltIEFuZHJlYXNicmFldSBhbSAxMi4wNC4gKEFyYXRob3JuLCAxMy4gQXByIDIwMTUsIDE5OjI0OjA4KToKfiMhIHJuPVZhbmlyIHJ0PTE0Mjg5MjEyMjMgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI4ODY0NTg1CktvZW5udGUgYXVjaCBzZWluLCBkYXNzICJlaW4gd2VuaWcgc3BhZXRlciIgaW4gZGllc2VtIEZhbGwgc3BhZXRlciB3YXIsIGFscwptYW4gZ2VtZWluaGluIHZlcm11dGVuIHd1ZXJkZS4gTWFuIHdlaXNzIGVzIG5pY2h0Li4uIDpvKQoKQXJhdGhvcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTdGF0aSBiZWltIEFuZHJlYXNicmFldSBhbSAxMi4wNC4gKFZhbmlyLCAxMy4gQXByIDIwMTUsIDE5OjQwOjIzKToKfiMhIHJuPUFyYXRob3JuIHJ0PTE0Mjg5NDU4NDggcmc9c2NobWFycm4KfiMhIHRpZD0xNDI4ODY0NTg1CkVpbiBTY2hyb2VkaW5nZXItU3RhbW10aXNjaD8KVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQm9pbmctUmVzZXQuLi4gKEFyaywgMTMuIEFwciAyMDE1LCAyMzoxMToxOCk6Cn4jISBybj1ab29rIHJ0PTE0Mjg5MDkzMzEgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI4ODgxNDIxCk51ciBBcmF0aCBuaWNodCAuLi4gd28gaXN0IGRhcyBpbnRlcmZlcmllcmVuZGUgIm5pbW0gYWxsZXMgYXVzIGxlaWNoZSI/CgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQm9pbmctUmVzZXQuLi4gKEFyYXRoLCAxMy4gQXByIDIwMTUsIDIzOjE5OjMzKToKfiMhIHJuPUFyayBydD0xNDI4OTU5NDc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyODg4MTQyMQpCZWkgZGVtIFNjaHJvdHQsIGRlbiBkZXIgZGFiZWkgaGF0PyA7KQoKQXJhdGgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFN0YXRpIGJlaW0gQW5kcmVhc2JyYWV1IGFtIDEyLjA0LiAoWm9vaywgMTQuIEFwciAyMDE1LCAyMDoyNTozNCk6Cn4jISBybj1WYW5pciBydD0xNDI4OTQ2ODIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyODg2NDU4NQpVbmQgZXMgd2FyIHRyb3R6ZGVtIGVpbiB0b2xsZXIgU3RhbW10aXNjaC4gU28uCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpzdGVyYmVuIGlzdCBzY2hvZW4uLi4gKFRpbiwgMTQuIEFwciAyMDE1LCAyMjo0MTozNSk6CltUb2Q6TGFyc10gSG9uZGEgaGF0IGdlcmFkZSBUaW4gdW1nZWJyYWNodC4gPERpLCAyMjowMDoyMz4KQW4gRnJldW5kZTogcmFjaGUhClRpbiBsYWNodCBpbiBkZXIgRmVybmUuCgpbVG9kOkxhcnNdIEhvbmRhIGhhdCBnZXJhZGUgVGFuYSB1bWdlYnJhY2h0LiA8RGksIDIyOjI2OjAxPgoKdGluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCb2luZy1SZXNldC4uLiAoWmFwaG9iLCAxNi4gQXByIDIwMTUsIDEyOjQ5OjA4KToKfiMhIHJuPUFyYXRoIHJ0PTE0Mjg5NTk5NzMgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI4ODgxNDIxCkRhYmVpIHNwcmljaHQgP2hpbGZlIHJlc2V0PyBiZWltIEJvaW5nLVJlc2V0IGphIHZvbiA/ZnJ1ZWhlcj8gdW5kIGluIGRlcgpWZXJnYW5nZW5oZWl0c2Zvcm0uIEFscyB3YWVyZSBlcyBoZXV0ZSBiZXNzZXIgOi1ECgpTb3NvIGRpZSBub3JtYWxlbiBHYWVuc2VmdWVzc2NoZW4gZ2VsdGVuIGFsc28gYWxzIFNvbmRlcnplaWNoZW4/IEJsb2VkZQpBbmRyb2lkIFRhc3RhdHVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQm9pbmctUmVzZXQuLi4gKENyb2Z0LCAxNi4gQXByIDIwMTUsIDE1OjM1OjMwKToKfiMhIHJuPVphcGhvYiBydD0xNDI5MTgxMzQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyODg4MTQyMQpNZWluc3QgZHUgIj8gT2RlciAnPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQXJlbmFwcm9ibGVtZSAuLi4gKENoYWdhbGwsIDIwLiBBcHIgMjAxNSwgMTA6NTQ6NDgpOgp+IyEgcm49Wm9vayBydD0xNDI5NTIwMDU2IHJnPWQuc2NoYXR0ZW53ZWx0Cn4jISB0aWQ9MTQyOTUxOTcwOQpXdXJkZSBkaWUgQXJlbmEgZW5kbGljaCBhYmdla2xlbW10PwoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCndpbmtlIHdpbmtlIG5vdHN0cm9tIChUaW4sIDIwLiBBcHIgMjAxNSwgMTk6NTM6MzApOgpOb3RzdHJvbSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgpFcndhcnRldCAob2ZmbGluZSk6IE5vdHN0cm9tCkVpbiBCZWlmYWxsc3N0dXJtIGJyYW5kZXQgaW0gRGlhbW9uZHBhcmsgYXVmLiBXYXMgZGEgd29obCB3aWVkZXIgbG9zIGlzdD8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogd2lua2Ugd2lua2Ugbm90c3Ryb20gKFZhbmlyLCAyMC4gQXByIDIwMTUsIDIzOjExOjA2KToKfiMhIHJuPVRpbiBydD0xNDI5NTUyNDEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyOTU1MjQxMApCYWxsc3BpZWxlIGJlaSBOb3RzdHJvbWJlbGV1Y2h0dW5nIHNpbmQgaGFsdCBkb29mLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIEVuZGUgYWxsZW4gVGVsZXBob250ZXJyb3JzISAoTm90c3Ryb20sIDIyLiBBcHIgMjAxNSwgMjA6MTM6MTkpOgpEZWluIEZyZXVuZCBBcmF0aG9ybiB0ZWlsdCBEaXIgbWl0OiBNb2FoLCBUZWxlZm9uLi4uCkVpbiBsYXV0ZXIgS25hbGwgaGFsbHQgdm9tIEdlYmlyZ2UgaGVydWViZXIuCgpTQ05SLApOb3RzdHJvbS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEYXMgRW5kZSBhbGxlbiBUZWxlcGhvbnRlcnJvcnMhIChWYW5pciwgMjIuIEFwciAyMDE1LCAyMDozMjoxNik6Cn4jISBybj1Ob3RzdHJvbSBydD0xNDI5NzI2Mzk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyOTcyNjM5OQpUb2xsIHVuZCBudW4gaXN0IEFyYXRob3JuIHdlZ2VuIERpciBhdWYgZGVyIEZhaG5kdW5nc2xpc3RlIGRlcgoqSGllcmJlcnVlY2h0aWd0ZTNCdWNoc3RhYmVuT3JnYW5pc2F0aW9uZWluc2V0emVuKi4KVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWZXJzdWNoc2thbmluY2hlbiBmdWVyIGRlbiBUZXN0IGdpZnRpZ2VyIEtyYWV1dGVydGVlcyBnZXN1Y2h0IChBbmF0b2wsIDIzLiBBcHIgMjAxNSwgMDc6NTk6MjIpOgp+IyEgcm49WmVzc3RyYSBydD0xNDI5NzMxMDQ3IHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xNDI5NzMxMDQ3Clplc3NkcmVpYz8gUGFkcmVzc3RyYT8KCipkdWNrKgoqd2VnbGF1ZioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVmVyc3VjaHNrYW5pbmNoZW4gZnVlciBkZW4gVGVzdCBnaWZ0aWdlciBLcmFldXRlcnRlZXMgZ2VzdWNodCAoVmFuaW9uLCAyMy4gQXByIDIwMTUsIDExOjAxOjQwKToKfiMhIHJuPUFuYXRvbCBydD0xNDI5NzY4NzYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyOTczMTA0NwpCaXN0IER1IGZpZXMsIEFuYXRyb2xsIDopCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBWZXJzdWNoc2thbmluY2hlbiBmdWVyIGRlbiBUZXN0IGdpZnRpZ2VyIEtyYWV1dGVydGVlcyBnZXN1Y2h0IChBbWFyeWxsaXMsIDIzLiBBcHIgMjAxNSwgMjA6MjA6MzEpOgp+IyEgcm49QW5hdG9sIHJ0PTE0Mjk3Njg3NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xNDI5NzMxMDQ3CkFsbGUgUGEqIGJ6dy4gQnVnKiBoYWJlbiBUZXN0dmVyYm90IC0gZGllIGJ1Z2dlbiBzbyBzY2hvbiBnZW51ZyA7KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVmVyc3VjaHNrYW5pbmNoZW4gZnVlciBkZW4gVGVzdCBnaWZ0aWdlciBLcmFldXRlcnRlZXMgZ2VzdWNodCAoQW1hcnlsbGlzLCAyMy4gQXByIDIwMTUsIDIwOjIyOjAzKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNDI5ODEzMjMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyOTczMTA0NwpEaXNjbGFpbWVyOiBBbndlc2VuZGUgQnVnZml4ZSBzaW5kIGF1c2dlc2NobG9zc2VuIQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVmVyc3VjaHNrYW5pbmNoZW4gZnVlciBkZW4gVGVzdCBnaWZ0aWdlciBLcmFldXRlcnRlZXMgZ2VzdWNodCAoQW5hdG9sLCAyNC4gQXByIDIwMTUsIDA3OjM3OjE0KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNDI5ODEzMzIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQyOTczMTA0NwpBdXMgUmVzcGVrdCB2b3IgZGVyIEdlc2NoaWNodGUgdW5kIGRlbiBhdXNzZXJnZXdvZWhubGljaGVuIExlaXN0dW5nZW4KbmFjaGZvbGdlbmQgZ2VuYW5udGVyIFBlcnNvbiwgYmxlaWJ0IG1pciBudXIsIGJlc2FndGUgUGVyc29uIHp3ZWNrcyAKRWlucmVpaHVuZyBpbiBkaWUgZXdpZ2UgTGlzdGUgZGVyIHViZXJjcmVhdGl2ZW4gUHJvZ3JhbW1pZXJlciB6dQpuZW5uZW46IFZyYWkuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmljaHRzIHdpZSB3ZWcgLi4uIChOb3RzdHJvbSwgMjYuIEFwciAyMDE1LCAyMDoyMzozNik6CltBbmZhZW5nZXI6RWluIGtsZWluZXIgU3RlaW5iZWlzc2VyXSBUcm9sbGRvemVyIGVyd2llcyBtaXIgZWluZW4gZnJldW5kbGljaGVuCltBbmZhZW5nZXI6RWluIGtsZWluZXIgU3RlaW5iZWlzc2VyXSBCb3RlbmRpZW5zdC4gRGllIGVyc3RlbiBTY2hyaXR0ZSBlaW5lcgpbQW5mYWVuZ2VyOkVpbiBrbGVpbmVyIFN0ZWluYmVpc3Nlcl0genVrdWVuZnRpZ2VuIEFiZW50ZXVyZXJsZWdlbmRlIQpbQW5mYWVuZ2VyOlRyb2xsZG96ZXJdIG9rIGljaCBrb25udGUgZGFzIGpldHp0IHp3ZWltYSBtYWNoZW4/IDpEClplc3N0cmEgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KClNDTlIsCk5vdHN0cm9tLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5pY2h0cyB3aWUgd2VnIC4uLiAoSHVyYXhwcmF4LCAyNi4gQXByIDIwMTUsIDIzOjQzOjA0KToKfiMhIHJuPU5vdHN0cm9tIHJ0PTE0MzAwNzI2MTYgcmc9c2NobWFycm4KfiMhIHRpZD0xNDMwMDcyNjE2CkltbWVyaGluIHdhciBlcyBrZWluIFRyb2xsZG9vemVyLgpFaW4gVHJvbGxkb296ZXIgZ3JlaWZ0IERpY2ggbWl0IGVpbmVyIHJpZXNpZ2VuIFJhZGllc2NoZW5rZXVsZSBhbi4KRGEgd3VlcmRlIGF1Y2ggaWNoIGZsaWVoZW4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBadWdhbmcgaW5zIE1HOiBQb3J0IDIzIHVuZCA0NzExIChBbmF0b2wsIDI5LiBBcHIgMjAxNSwgMDg6MjU6NTkpOgp+IyEgcm49WmVzc3RyYSBydD0xNDMwMjUwMDk4IHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xNDMwMjUwMDk4CiAgNy4gY29yZS1zdG8xLXQzMS5uZXRjb2xvZ25lLmRlICAgICAgICAgICAgICAgICAgMC4wJSAgIDUwMCAgICAwICAgMTEuNCAKMTAuNSAgMjAuMSAyMTIuOAogIDguIHN3cnQtc3RvMS12bDUwMC5uZXRjb2xvZ25lLmRlICAgICAgICAgICAgICAgIDAuMCUgICA1MDAgICAgMCAgIDEwLjcgCjEwLjYgIDEwLjcgIDE0LjIKICA5LiA/Pz8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwMC4wICAgNTAwICA1MDAgICAgMC4wICAKMC4wICAgMC4wICAgMC4wCgpVbmQgZXMgaXN0IGhpbnJlaWNoZW5kIGVnYWwsIG9iIGljaCAyMyBvZGVyIDQ3MTEgYW56dXNwcmVjaGVuIHZlcnN1Y2hlLiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk51IGlzdHMgcmF1cy4uLiAoRGllZGVyLCAgNC4gTWFpIDIwMTUsIDAyOjU5OjM5KToKCkR1IHRlaWxzdCBBcmtzaGF0IG1pdDogdm9sbCBob25rCkFya3NoYXQgdGVpbHQgRGlyIG1pdDogV3Vzc3Rlc3QgRHUsIGRhc3MgaWNoIEZ1c3NwaWx6IGhhYmU/CgpDSEFPUyBSVUxFWiEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFN0YXRpIEJvY2h1bSwgMTAuNS4yMDE1IChBbWFyeWxsaXMsICA5LiBNYWkgMjAxNSwgMDA6MDU6NTEpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTQzMTA5NzQ4NyByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xNDMxMDk2OTE4CldhcnVtPyBCaXN0IER1IE11dHRlcj8gOykKCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1vdGl2YXRpb24gcHVyISAoVmFuaXIsIDEwLiBNYWkgMjAxNSwgMTk6MjM6NDApOgpbTW9lcmRlcjpHZWlzdCBlaW5lciBTY2hhdHRlbm5hdHRlcl0gV2FlcmUgaWNoIFRhbmppYW4sIGhhZXR0ZXN0IER1IGRhcwpbTW9lcmRlcjpHZWlzdCBlaW5lciBTY2hhdHRlbm5hdHRlcl0gZG9wcGVsdCBzbyBzY2huZWxsIGdlc2NoYWZmdCwgQXJzb24hCgpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFpvb2sgKFpvb2ssIDExLiBNYWkgMjAxNSwgMTA6MDA6MTcpOgp+IyEgcm49UnVtYXRhIHJ0PTE0MzEyNzgwNDEgcmc9cHJhbmdlcgp+IyEgdGlkPTE0MzEyNzgwNDEKSWNoIGZpbmRlIG5pY2h0IGd1dCwgd2llIER1IERpY2ggZGEgaW5zdHJ1bWVudGFsaXNpZXJlbiBsYWVzc3QhCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFpvb2sgKFJ1bWF0YSwgMTEuIE1haSAyMDE1LCAxMDowMzowOCk6Cn4jISBybj1ab29rIHJ0PTE0MzEzMzEyMTcgcmc9c2NobWFycm4KfiMhIHRpZD0xNDMxMjc4MDQxCkljaCBoYWIgamEgYXVjaCBrZWluZSBhYmJla29tbWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogWm9vayAoQm9pbmcsIDExLiBNYWkgMjAxNSwgMTA6MDQ6MzMpOgp+IyEgcm49UnVtYXRhIHJ0PTE0MzEzMzEzODggcmc9c2NobWFycm4KfiMhIHRpZD0xNDMxMjc4MDQxCkhhZW5ndCBpaG4gaG9laGVyIQoKQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFpvb2sgKEFuYXRvbCwgMTEuIE1haSAyMDE1LCAxMDowNjoxMSk6Cn4jISBybj1Cb2luZyBydD0xNDMxMzMxNDczIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQzMTI3ODA0MQpEdSBiaXN0IGphIG51ciBlaW4gSW50ZXJlc3NlbnN2ZXJ0cmV0ZXIgRGVpbmVyIFRvY2h0ZXIuIFBmZmZmZnQuIDstKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFpvb2sgKFpvb2ssIDExLiBNYWkgMjAxNSwgMTA6MDY6MzUpOgp+IyEgcm49QW5hdG9sIHJ0PTE0MzEzMzE1NzEgcmc9c2NobWFycm4KfiMhIHRpZD0xNDMxMjc4MDQxCkVpbmUgTWFyaW9uZXR0ZSEKClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFpvb2sgKEFuYXRvbCwgMTEuIE1haSAyMDE1LCAxMDowODo0NCk6Cn4jISBybj1ab29rIHJ0PTE0MzEzMzE1OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xNDMxMjc4MDQxCk1laW5lIE5pY2h0ZSBiZWtvbW10IGF1Y2ggYmFsZCBlaW4gRnJ1ZWhzdHVlY2tzYnJldHRjaGVuLgoiRUdBTCBXQVMgREVJTiBQQVBBIFNBR1QuIERVIEJJU1QgS0VJTkUgUFJJTlpFU1NJTi4iIAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFpvb2sgKEdsb2luc29uLCAxMS4gTWFpIDIwMTUsIDEyOjI4OjI1KToKfiMhIHJuPUFuYXRvbCBydD0xNDMxMzMxNzI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQzMTI3ODA0MQpTbyB3ZXJkZW4gQW1iaXRpb25lbiBhdWYgZGllIGxldHp0ZW4gS29lbmlnc3Rocm9uZSB6ZXJzY2htZXR0ZXJ0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFpvb2sgKEFuYXRvbCwgMTEuIE1haSAyMDE1LCAxMjozMzozMyk6Cn4jISBybj1HbG9pbnNvbiBydD0xNDMxMzQwMTA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQzMTI3ODA0MQpKb2Ygc2VpIGRhbmsuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogWm9vayAoR2xvaW5zb24sIDExLiBNYWkgMjAxNSwgMTM6MDA6MzkpOgp+IyEgcm49QW5hdG9sIHJ0PTE0MzEzNDA0MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xNDMxMjc4MDQxCk5hY2ggZGVyIEJlZnJlaXVuZyBzYWVtdGxpY2hlciBydXNzaXNjaGVyIE1pbm9yaXRhZXRlbiBkdXJjaCBkaWUgaGVsZGVuaGFmdGUKU293al5XUnVzc2lzY2hlIEFybWVlIHVuZCBkZW4gdGFwZmVyZW4gV2lkZXJzdGFuZCBkdXJjaCBkaWUKTkFUTy1MYW5kZXN2ZXJ0ZWlkaWdlciB3ZXJkZW4gdmllbGUgbmV1ZSBLb2VuaWdyZWljaGUgZnJlaSBzZWluIC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBab29rIChBbmF0b2wsIDExLiBNYWkgMjAxNSwgMTM6MDU6MDQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTQzMTM0MjAzOSByZz1zY2htYXJybgp+IyEgdGlkPTE0MzEyNzgwNDEKTXVlc3NlbiBudXIgZGllIGRldXRzY2hlbiBMYW5kZW4gd2llZGVyIGF1ZmxlYmVuIGxhc3Nlbi4gRGEgZ2FiIGVzCmZ1cmNodGJhciB2aWVsZSBTY2hsYWdiYWV1XldUaHJvbmUuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IFpvb2sgKEdsb2luc29uLCAxMS4gTWFpIDIwMTUsIDEzOjE1OjQ5KToKfiMhIHJuPUFuYXRvbCBydD0xNDMxMzQyMzA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQzMTI3ODA0MQpCZWthbm50bGljaCBnaWJ0IGVzIGJlaSB1bnMgaW1tZXIgZXJzdCBuYWNoIEtyaWVnZW4gTmV1ZWludGVpbHVuZ2VuLiBHZWdlbiB3ZW4KZ2VoZW4gd2lyIERldXRzY2hlbiBkaWVzZXMgTWFsPyBXaXIga29lbm50ZSBqYSBtYWwgS3JpZWcgZ2VnZW4gZGllCkZsdWVjaHRsaW5nZSBmdWVocmVuLCBlaW5lIEtyZXV6ZmFocmVyYXJtZWUgYmlsZGV0IHNpY2ggbGFuZ3NhbS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogWm9vayAoUnVtYXRhLCAxMS4gTWFpIDIwMTUsIDEzOjQxOjQ3KToKfiMhIHJuPUdsb2luc29uIHJ0PTE0MzEzNDI5NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xNDMxMjc4MDQxCkljaCBydWZlIHp1bSBLcmllZyBnZWdlbiBkaWUKSW5TY2htYXJybm5Qb3N0ZXJXYXNFaWdlbnRsaWNoTmFjaE1lZ2FzY2htYXJybkdlaG9lcnQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMjogWm9vayAoQW5hdG9sLCAxMS4gTWFpIDIwMTUsIDEzOjUyOjI2KToKfiMhIHJuPUdsb2luc29uIHJ0PTE0MzEzNDI5NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xNDMxMjc4MDQxCkRpZSBScnJyYWF1bWZvcnJyZGVycnJydW5nIGRlcyBEZXV0c2NoZW4gVm9sa2VzIG1pdCBkZW0gRmx1ZWNodGxpbmdzYXVma29tbWVuCnp1IGJlZ3J1ZW5kZW4sIHdhZXJlIGVyZnJpc2NoZW5kIHVub3J0aG9kb3guIE9oLiBNb21lbnQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBPblRvcFJlcGxpY2EgKEdsb2luc29uLCAxMy4gTWFpIDIwMTUsIDE1OjMwOjI1KToKfiMhIHJuPUdub21lIHJ0PTE0MzE1MjI2NzQgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTQzMTEyMzQwNApJY2ggd2FyIHZvciBlaW5pZ2VuIEphaHJlbiBhdWNoIHNjaHdlciBiZWxlaWRpZ3QsIGFscyBlaW5pZ2UgTGludXgtSW1hZ2VzIG51cgpub2NoIG1pdCBQQUUtVW50ZXJzdHVldHp1bmcgc3RhcnRlbiB3b2xsdGVuLiBXYXJ0IGVyc3RtYWwgZGFzIEdlc2NocmVpIGFiLAp3ZW5uIGFsaXN0cygpIGVuZGd1ZWx0aWcgYWJnZXNjaGFsdGV0IHNpbmQgLi4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhbmtlISAoWm9vaywgMjAuIE1haSAyMDE1LCAxMTo0Mzo1OCk6Cn4jISBybj1EaWVkZXIgcnQ9MTQzMTkwMjA1MSByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTE0MzE5MDIwNTEKTGFzcyBtaWNoIHJhdGVuOiBEdSBoYXN0IGVpbmVuIEp1bmdzcGllbGVyIGdlZnVuZGVuLCBkZXIgRGlyCmltbWVyIHdpZWRlciBkYXMgaGVyYXVzZ2VmYWxsZW5lIEdlYmlzcyBoaW50ZXJoZXIgdHJhZWd0PwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNYWlscyBhbiB6dSBsb2VzY2hlbmRlIFNwaWVsZXIgKENoYWdhbGwsIDI3LiBNYWkgMjAxNSwgMTU6MzM6MTMpOgp+IyEgcm49QmFtYmkgcnQ9MTQzMjczMDQ5MiByZz1tYWdpZXIuZmVobGVyCn4jISB0aWQ9MTQzMjczMDQ5MgpBYmVyIGRhcyBrbGluZ3QgZG9jaCBuaWNodCBzbyBzdHlsaXNjaCB3aWUgZXMgamV0enQga2xpbmdlbiB0dXRldC4gOikKCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFuYXRvbCAoVmFuaW9uLCAxMS4gSnVuIDIwMTUsIDIzOjM1OjM3KToKfiMhIHJuPVpvb2sgcnQ9MTQzNDAxNTQwMCByZz1wcmFuZ2VyCn4jISB0aWQ9MTQzNDAxNDU3OQpHb2V0dGVyIHVuZCBIeWJyaXMuIE9sZCBzdG9yeS4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBbmF0b2wgKEFuYXRvbCwgMTIuIEp1biAyMDE1LCAwNzoxMTowMCk6Cn4jISBybj1WYW5pb24gcnQ9MTQzNDA1ODUzNyByZz1zY2htYXJybgp+IyEgdGlkPTE0MzQwMTQ1NzkKVW5kIGljaCB3ZWlzcyBub2NoIG5pY2h0bWFsLCB3YXMgZGVtIEdvdHQgZGEgZGFlbW1lcnQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQW5hdG9sIChSdW1hdGEsIDEyLiBKdW4gMjAxNSwgMDk6MDM6NTIpOgp+IyEgcm49QW5hdG9sIHJ0PTE0MzQwODU4NjAgcmc9c2NobWFycm4KfiMhIHRpZD0xNDM0MDE0NTc5Ck1hbiBoYXQgZGlyIGRvY2ggdmVyemllaGVuLiBFcmZyZXVlIGRpY2ggZGVyIEduYWRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQW5hdG9sIChBbmF0b2wsIDEyLiBKdW4gMjAxNSwgMDk6Mzk6MjcpOgp+IyEgcm49UnVtYXRhIHJ0PTE0MzQwOTI2MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xNDM0MDE0NTc5CkRhcyBoYXQgbWlyIHp1IHZpZWwgdm9uICJadWVjaHRpZ2UgRGVpbiBXZWliIHp3ZWltYWwgdGFlZ2xpY2guIFdlbm4gRHUKbmljaHQgd2Vpc3N0IHdhcnVtIC0gc2llIHdpcmQgZXMgd2lzc2VuLiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBBbmF0b2wgKFJ1bWF0YSwgMTIuIEp1biAyMDE1LCAwOTo0MDo0OSk6Cn4jISBybj1BbmF0b2wgcnQ9MTQzNDA5NDc2NyByZz1zY2htYXJybgp+IyEgdGlkPTE0MzQwMTQ1NzkKQW5hdG9scyB6dWVjaHRpZ2VuIHJlaWNodCBlaW5tYWwgcHJvIFRhZy4gU29uc3Qga29tbXQgbWFuIGphIHp1IG5peC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNlbWktYmVnYWJ0ZXIgRm9yc2NoZXIgKEVsZW5kaWwsIDE2LiBKdW4gMjAxNSwgMTA6MDE6NTQpOgpEYSB0cmVmZmUgaWNoIGluIGVpbmVtIEZyaWVkaG9mIGF1ZiBkaWUgQmVzY2hyZWlidW5nOiAiRHUgbW9lY2h0ZXN0IGhpZXIgbmljaHQKYWxzIERhdWVyZ2FzdCBlbmRlbi4iClN5bnRheHZvcnNjaGxhZ2U6IGVuZGUgYWxzIGRhdWVyZ2FzdAoKV293LCBkYXMgZnVua3Rpb25pZXJ0IHNvZ2FyIDopIApIZXksIHdpZXNvIHN0ZWh0IGljaCBpbSBFbGZlbmhhaW4sIHdpZXNvIGlzdCBtZWluZSBBdXNydWVzdHVuZyB3ZWc/ICp3dW5kZXIqCi4uLi4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTZW1pLWJlZ2FidGVyIEZvcnNjaGVyIChNb29uc2hpbmUsIDE2LiBKdW4gMjAxNSwgMTk6MDg6MjcpOgp+IyEgcm49RWxlbmRpbCBydD0xNDM0NDQxNzE0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQzNDQ0MTcxNApFeSwgRGVpbiBDbGllbnQgbWFjaHQgRGlyIFN5bnRheHZvcnNjaGxhZWdlIGJlaW0gRm9yc2NoZW4/IAoKTW9vbmkgLSBhdWNoIHdpbGwgOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNlbWktYmVnYWJ0ZXIgRm9yc2NoZXIgKEVsZW5kaWwsIDE2LiBKdW4gMjAxNSwgMjM6MzI6NDQpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTE0MzQ0NzQ1MDcgcmc9c2NobWFycm4KfiMhIHRpZD0xNDM0NDQxNzE0Ckdlc3Rlcm4gd2FyIGljaCBtdWVkZSA6KSBEYXMgaXN0IGtlaW4gU3ludGF4dm9yc2NobGFnLCBkYXNzIGlzdCwgd2FzIGljaAplaW5nZWdlYmVuIGhhYmUgLi4uIHVuZCB0YXRzYWVjaGxpY2ggZGFjaHRlIGljaCB6dWVyc3QsIHdvdywgZGFzIGtsYXBwdCAuLi4Kd2FyIGFiZXIgaGFsdCAiZW5kZSIgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFNlbWktYmVnYWJ0ZXIgRm9yc2NoZXIgKEdsb2luc29uLCAxNy4gSnVuIDIwMTUsIDAwOjE3OjQ2KToKfiMhIHJuPUVsZW5kaWwgcnQ9MTQzNDQ5MDM2NCByZz1zY2htYXJybgp+IyEgdGlkPTE0MzQ0NDE3MTQKTWVpbiBncm9lc3N0ZXIgRXJmb2xnIGluIFNhY2hlbiAiRm9yc2NoZW4sIHdlbm4gbWFuIG11ZWRlIGlzdCIsIHdhciBiZWkgUGFyYSoKZGVyIE9wZmVydGlzY2guICJvcGZlcmUgYXh0IiwgIm9wZmVyZSBnZWxkIiwgIm9wZmVyIGVpbmhvcm4iLCAib3BmZXJlIGdsb2luIiAtCmljaCB3dXNzdGUgYmVpbSBFbnRlciBzY2hvbiBnZW5hdSwgZGFzIGRhIGViZW4gd2FzIGZhbHNjaCBnZWxhdWZlbiB3YXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVudG5lciBuYWNoIGxhbmdlciBTcGllbHBhdXNlIHVudGVyIHNpY2guLi4gKERpZWRlciwgMjEuIEp1biAyMDE1LCAwOTo1NzowNCk6Cnh4eCBzYWd0OiBqYSwgaWNoIGhhYmUgbmV1bGljaCBkZW4gYmVybmhhcmRpbmVyIG5pY2h0IG1laHIgZ2VmdW5kZW4KCkRpZWRlciAoYmVydWhpZ2VuZCwgZGFzcyBlcyBuaWNodCBudXIgbWlyIHNvIGdlaHQuLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmVudG5lciBuYWNoIGxhbmdlciBTcGllbHBhdXNlIHVudGVyIHNpY2guLi4gKFRpbiwgMjEuIEp1biAyMDE1LCAxNDo1MTozNik6Cn4jISBybj1EaWVkZXIgcnQ9MTQzNDg3MzQyNCByZz1zY2htYXJybgp+IyEgdGlkPTE0MzQ4NzM0MjQKSGloaWhpCnRpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlbnRuZXIgbmFjaCBsYW5nZXIgU3BpZWxwYXVzZSB1bnRlciBzaWNoLi4uIChWYW5pciwgMjEuIEp1biAyMDE1LCAxODo0MzozOCk6Cn4jISBybj1EaWVkZXIgcnQ9MTQzNDg3MzQyNCByZz1zY2htYXJybgp+IyEgdGlkPTE0MzQ4NzM0MjQKQWxzbyBpY2ggZmluZGUgZXMgei5CLiBlaW5mYWNoZXIgZGVuIEJlcm5oYXJkaW5lciB6dSBmaW5kZW4sIHdlbm4gaWNoIG1pY2gKZXJzdCBwZXIgcG9ydGFsIGF1ZiBkaWUgSEUgYmVnZWJlLgpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFN0YXRpIGluIEJvY2h1bSBhbSAyMC42LiAtIGVpbmVtIFNhbXN0YWchIChWYW5pciwgMjEuIEp1biAyMDE1LCAxODo0NTo0MCk6Cn4jISBvbj1WYW5pciBvdD0xNDM0OTA1MTEyIG9nPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgcm49SHVtbmkgcnQ9MTQzNDgwMzk5OSByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xNDM0ODAzOTk5CldpZSB3aWxsc3QgZHUgZGFzICd3aWVkZXIgdHVuJz8KSGFiZW4gRHJhY2hlbiBtZWhyZXJlIE1hZWdlbj8KU2luZCBzaWUgZXZlbnR1ZWxsIGdhciB3aWVkZXJrYWV1ZXI/CgpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV29jaGVuZW5kZSEgKE5vdHN0cm9tLCAyNC4gSnVuIDIwMTUsIDIxOjQwOjUwKToKRGVpbmUgRnJldW5kaW4gVGluIHRlaWx0IERpciBtaXQ6IEltbWVyIHdlbm4gaWNoIEFtYXJ5bGxpcyBvbmxpbmUga29tbWVuIHNlaGUsCkRlaW5lIEZyZXVuZGluIFRpbiB0ZWlsdCBEaXIgbWl0OiBnbGF1YmUgaWNoLCBlcyBpc3QgZnJlaXRhZy4KClNOQ1IgLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV29jaGVuZW5kZSEgKFRpbiwgMjQuIEp1biAyMDE1LCAyMTo0MToyOSk6Cn4jISBybj1Ob3RzdHJvbSBydD0xNDM1MTc0ODUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQzNTE3NDg1MApIYWhhISEKIGdlbmF1IQp0aW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV29jaGVuZW5kZSEgKEFudGhlYSwgMjUuIEp1biAyMDE1LCAwODo0MjoxMik6Cn4jISBybj1UaW4gcnQ9MTQzNTE3NDg4OSByZz1zY2htYXJybgp+IyEgdGlkPTE0MzUxNzQ4NTAKVm9uIHdlZ2VuLCBlcyBpc3Qgc2NobGllc3NsaWNoIERpZW5zdGFnLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXb2NoZW5lbmRlISAoQW1hcnlsbGlzLCAyNS4gSnVuIDIwMTUsIDEwOjA3OjMzKToKfiMhIHJuPVRpbiBydD0xNDM1MTc0ODg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQzNTE3NDg1MAo6Z3JpbnN0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIHBhc3NpZXJ0LCB3ZW5uIG1hbiBCcmllc2VsIHRyaXR0Li4uIChHcmVsbGdlbiwgMjYuIEp1biAyMDE1LCAwODozMjoyOCk6CkR1IHZlcmZvbGdzdCBDbG9iIERyb3BoLCBIaW50ZXIgTGlzdCwgWnpycnJrbCwgR3JvZ2cgWnIna3VtcGYsIE51cmRpayBLaHVtLAplaW5lbgpLb2NoLCBCdWxyaWsgVGhvcmFuLCBBcnp0aGVsZmVyaW4sIEh1enJ1Y2sgSGFtbWVyc3RhaGwsIElsbHV6aWRhLCBZemFnIFpob3IKdW5kCkJyaWVzZWx0cmltLgoKR3JlbGxnZW4sIGdlcmFkZSBub2NoIG1hbCBkYXZvbmdla29tbWVuIDspCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFzIHBhc3NpZXJ0LCB3ZW5uIG1hbiBCcmllc2VsIHRyaXR0Li4uIChUaW4sIDI2LiBKdW4gMjAxNSwgMTE6Mjg6MDgpOgp+IyEgcm49R3JlbGxnZW4gcnQ9MTQzNTMwMDM0OCByZz1zY2htYXJybgp+IyEgdGlkPTE0MzUzMDAzNDgKZ3JhdHM/CnRpbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOUENzIGluIE9ya2hhdXNlbiB1bmQgZGVuIEthdGFrb21iZW4gKFZhbmlyLCAyOS4gSnVuIDIwMTUsIDE4OjI0OjM3KToKfiMhIG9uPVZhbmlyIG90PTE0MzU1OTUwNjggb2c9ZC52bGFuZAp+IyEgcm49QXJrIHJ0PTE0MzU1MjYwMTQgcmc9ZC52bGFuZAp+IyEgdGlkPTE0MzU0ODQ0MTcKc28gYWxhOiBpZCBucGMgLT4gd2VubiBkdSBkaWVzIGxpZXN0IGJpc3QgZHUgd2FocnNjaGVpbmxpY2ggaW4gZGVyIGxhZ2UKd2FlaHJlbmQgZWluZXMga2FtcGZlcyBucGMgenUgaWQnZW4uIFNvbGx0ZXN0IGR1IGdsZWljaCBzdGVyYmVuLCBzbyBzdGltbXQKendhciBlcnN0ZXJlIGF1c3NhZ2UgaW1tZXIgbm9jaCwgamVkb2NoIHdhciBkZXIga2FtcGYgZnVlciBkaWNoIG5pY2h0CmVyZm9sZ3JlaWNoLgpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogTlBDcyBpbiBPcmtoYXVzZW4gdW5kIGRlbiBLYXRha29tYmVuIChBbmF0b2wsIDMwLiBKdW4gMjAxNSwgMDc6MjA6MDUpOgp+IyEgcm49VmFuaXIgcnQ9MTQzNTU5NTA3NyByZz1zY2htYXJybgp+IyEgdGlkPTE0MzU0ODQ0MTcKWFhYIGdyb2xsdDogIldhcyBmdWNodGVsc3QgRHUgbWl0IGVpbmVyIEx1cGUgdm9yIG1laW5lciBOYXNlIGhlcnVtPyEiClhYWCBzY2hsYWVndCBEaXIgZGllIEhhbmQgc2FtdCBMdXBlIGFiLgo+IHNjaHJlaQpBVVVVQUFBSEhISEghISEhCj4gZXh0cmFoYW5kCkR1IGhhc3QgbmljaHQgZ2VudWcgZnJlaWUgSGFlbmRlIGRhZnVlci4KPiB0bGgKW3RlaWxlIGxseXN0cmF0aGUgbWl0IGhpbGZlXQpEdSB0ZWlsc3QgTGx5c3RyYXRoZSBtaXQ6IGhpbGZlCkxseXN0cmF0aGUgdGVpbHQgRGlyIG1pdDogQWxsZSBkaWUsIGRpZSBIaWxmZSBicmF1Y2hlbiwgYmVpZGUgSGFlbmRlCkxseXN0cmF0aGUgdGVpbHQgRGlyIG1pdDogaG9jaCEKPiBzZXVmegpEdSBzZXVmenN0Lgo+IHRtYWRzClt0ZWlsZSBhcmsgbWl0IERyZWNrc2FjayAqc2NobW9sbCpdCkFyayBob2VydCBnYXIgbmljaHQgenUsIHdhcyBEdSBzYWdzdC4KRHUgdGVpbHN0IEFyayBtaXQ6IERyZWNrc2FjayAqc2NobW9sbCoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBOUENzIGluIE9ya2hhdXNlbiB1bmQgZGVuIEthdGFrb21iZW4gKEFyaywgMzAuIEp1biAyMDE1LCAxODoxNDo0MCk6Cn4jISBybj1BbmF0b2wgcnQ9MTQzNTY0MTYwNSByZz1zY2htYXJybgp+IyEgdGlkPTE0MzU0ODQ0MTcKRGllIHdlcnR2b2xsc3RlIEVya2VubnRuaXMgYXVzIGRlbSBBcnRpa2VsOgoKdHlwbyBpbiBtc2dmb3JvdGhlcnMgLT4gIkR1IHNldWZ6X3QuIiBqdWNoaGUgOikKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBOUENzIGluIE9ya2hhdXNlbiB1bmQgZGVuIEthdGFrb21iZW4gKFRpbiwgMzAuIEp1biAyMDE1LCAxODoxOTozNSk6Cn4jISBybj1BcmsgcnQ9MTQzNTY4MDg4MCByZz1zY2htYXJybgp+IyEgdGlkPTE0MzU0ODQ0MTcKZGFzIHdhciBzY2hvbiBpbW1lciBmYWxzY2gKdGluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZpbHRlcnJlZ2VsbiBNb3JnZW5ncmF1ZW4tVGVsbmV0ICg/KSAoVmFuaXIsIDMwLiBKdW4gMjAxNSwgMTg6NDY6MzApOgp+IyEgb249VmFuaXIgb3Q9MTQzNTY4Mjc2NiBvZz1oYXJkc29mdHdhcmUKfiMhIHJuPUFuYXRvbCBydD0xNDM1NjU1Mzk2IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTE0MzU2NDc2ODkKTXVzc3QgRHUgdW5zIGRpZSBTcGFubnVuZyB2ZXJkZXJiZW4/Cmh0dHBzOi8veGtjZC5jb20vODU5LwpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTlBDcyBpbiBPcmtoYXVzZW4gdW5kIGRlbiBLYXRha29tYmVuIChBcmssIDMwLiBKdW4gMjAxNSwgMTg6NTY6MDkpOgp+IyEgcm49VGluIHJ0PTE0MzU2ODExNzUgcmc9c2NobWFycm4KfiMhIHRpZD0xNDM1NDg0NDE3ClNvc28gLi4uIGh0dHA6Ly93d3cuZHVkZW4uZGUvcmVjaHRzY2hyZWlidW5nL3NldWZ6ZW4KQWxsZXMgbXVzcyBtYW4gYXVjaCBub2NoIG5hY2h3ZWlzZW4sIHBmZmZmLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1pdCBaYXViaXMgaW0gVGVhbS4uLiAoR3JlbGxnZW4sICAzLiBKdWwgMjAxNSwgMDQ6MDQ6NTMpOgpbVGVhbSAyOlhYWF0gRG9jaCBiZW1pdGxlaWRlIG1pY2gsIHdhZXJlIG1pciBsaWViZXIgOykKCk9obmUgV29ydGUgOykKR3JlbGxnZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTZWxic3RyZXByb2R1emllcmVuZGUgUHJvZ3JhbW1lIGV4dHJlbSAoSHVtbmksICA2LiBKdWwgMjAxNSwgMDA6MjU6MjYpOgp+IyEgcm49Um9jaHVzIHJ0PTE0MzYxMzA3MDIgcmc9d3d3Cn4jISB0aWQ9MTQzNjEzMDcwMgpTZWhyIHNjaG9lbi4uLiBhdWNoIFdoaXRlc3BhY2UgaXN0IGRhYmVpLiBVbmQgQnJhaW5mdWNrLiBJY2ggZmFzcyBlcyBuaWNodC4uLgpoYXRzIG1hbCBqZW1hbmQgYXVzcHJvYmllcnQ/IEJUVzogV28ga3JpZWcgaWNoIGRpZSBDb21waWxlciBoZXIuLi4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgSGl0emUuLi4gKEFyYXRoLCAgNi4gSnVsIDIwMTUsIDAxOjM0OjQ4KToKdG0gLiBrYW1wZnp3ZXJnIHJlc2V0CkR1IHRlaWxzdCAkTUFHSUVSIG1pdDoga2FtcGZ6d2VyZyByZXNldAokTUFHSUVSIHRlaWx0IERpciBtaXQ6IERhbmtlIGZ1ZXIgZGllIEluZm8gOykKLi4uCnRtIG1vbSBtZWRpCkR1IHRlaWxzdCBNb210cm8gbWl0OiBtZWRpCgoqQVJHUyoKCkdyZWxsZ2VuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNlbGJzdHJlcHJvZHV6aWVyZW5kZSBQcm9ncmFtbWUgZXh0cmVtIChDcm9mdCwgIDYuIEp1bCAyMDE1LCAwODo0ODoxNSk6Cn4jISBybj1IdW1uaSBydD0xNDM2MTM1MTI2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQzNjEzMDcwMgoxLiBJbnN0YWxsaWVyIFVidW50dSAxNS4wNC4KMi4gc3VkbyBhcHQtZ2V0IGluc3RhbGwgYWZuaXggYWxnb2w2OGcgYXBsdXMtZnNmIGFzeW1wdG90ZSBcCiAgYXRzLWxhbmctYW5haXJpYXRzIGJhc2ggYmMgYmYgYm9vIGJzZGdhbWVzIGNkdWNlIGNsaXNwIGNsb2p1cmUxLjYgXAogIGNtYWtlIGNvZmZlZXNjcmlwdCBkYyBlY2VyZS1zZGsgZW1hY3MyNCBlcmxhbmcgZjJjIGZhbGNvbnBsIFwKICBmcC1jb21waWxlciBmc2hhcnAgZysrIGdhbWJhczMtc2NyaXB0IGdhcCBnYXVjaGUgZ2F3ayBnY2MgZ2RjIGdlbml1cyBcCiAgZ2ZvcnRoIGdmb3J0cmFuIGdoYyBnaG9zdHNjcmlwdCBnbmF0IGdudS1zbWFsbHRhbGsgZ251cGxvdCBnb2JqYyBcCiAgZ29sYW5nIGdwdCBncmkgZ3JvZmYgZ3Jvb3Z5IGhheGUgaWNvbnQgaWNvbnggaW50ZXJjYWwgaXZlcmlsb2cgXAogIGphc21pbi1zYWJsZSBqdWxpYSBrYXlhIGxpYmdkMi14cG0tZGV2IGxpYnBuZzEyLWRldiBsaXNhYWMgbGx2bSBsdWE1LjIgXAogIG1ha2UgbWF4aW1hIG1sdG9uIG1vbm8tZGV2ZWwgbW9uby1tY3MgbW9uby12Ym5jIG5hc20gbmVrbyBuaWNrbGUgb2NhbWwgXAogIG9jdGF2ZSBvcGVuLWNvYm9sIG9wZW5qZGstNi1qZGsgcGFyaS1ncCBwYXJyb3QgcGVybCBwaHA1LWNsaSBwaWtlNy44IFwKICBweXRob24gci1iYXNlIHJhdGZvciByZWdpbmEtcmV4eCByaGlubyBydWJ5Mi4xIHNjYWxhIHNjaWxhYiBzbHNoIFwKICBzcGwtY29yZSBzd2ktcHJvbG9nIHRjbCB1Y2Jsb2dvIHZhbGFjIHhzbHRwcm9jIHlvcmljayB6b2VtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBTZWxic3RyZXByb2R1emllcmVuZGUgUHJvZ3JhbW1lIGV4dHJlbSAoSHVtbmksICA2LiBKdWwgMjAxNSwgMTI6Mzk6MzQpOgp+IyEgcm49Q3JvZnQgcnQ9MTQzNjE2NTI5NSByZz1zY2htYXJybgp+IyEgdGlkPTE0MzYxMzA3MDIKU3RpbW10IG5hdHVlcmxpY2guIEh1Y2gsIEdhcCB3YXIgYXVjaCBkYWJlaT8KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpleHRyYW9yZGluYWVyZSAgQW5rdW5mdCAoU2FyYXksICA3LiBKdWwgMjAxNSwgMjI6Mzk6NTUpOgpFaW4gZnVlcmNodGVybGljaGVzIEJlYmVuIGVyc2NodWV0dGVydCBkaWUgRGltZW5zaW9uZW4gaW4gaWhyZW4gR3J1bmRmZXN0ZW4uCm9yaSBpc3QgZ2VyYWRlIGlucyBNb3JnZW5ncmF1ZW4gZ2Vrb21tZW4uCkFoYS4uLiA6LUQKU2FyYXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBleHRyYW9yZGluYWVyZSAgQW5rdW5mdCAoVGluLCAgNy4gSnVsIDIwMTUsIDIzOjI5OjQyKToKfiMhIHJuPVNhcmF5IHJ0PTE0MzYzMDE1OTUgcmc9c2NobWFycm4KfiMhIHRpZD0xNDM2MzAxNTk1CmhpaGloaWhpCmtsYXNzZSEKdGluCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGV4dHJhb3JkaW5hZXJlICBBbmt1bmZ0IChQaWdhLCAgOC4gSnVsIDIwMTUsIDA5OjQxOjM5KToKfiMhIHJuPVRpbiBydD0xNDM2MzA0NTgyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQzNjMwMTU5NQpIYXQgZGVyIHNvIGVpbiBVZWJlcmdld2ljaHQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBleHRyYW9yZGluYWVyZSAgQW5rdW5mdCAoUnVtYXRhLCAgOC4gSnVsIDIwMTUsIDA5OjU5OjA4KToKfiMhIHJuPVBpZ2EgcnQ9MTQzNjM0MTI5OSByZz1zY2htYXJybgp+IyEgdGlkPTE0MzYzMDE1OTUKSWNoIGhhZXR0ZSBlaGVyIGFuIEJsYWVodW5nZW4gZ2VkYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IGV4dHJhb3JkaW5hZXJlICBBbmt1bmZ0IChQaWdhLCAgOC4gSnVsIDIwMTUsIDEwOjAzOjQwKToKfiMhIHJuPVJ1bWF0YSBydD0xNDM2MzQyMzQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQzNjMwMTU5NQpEYSBlcmhhZWx0IGRpZSBBbnJ1ZnVuZyAnZG9ubmVyJyBnbGVpY2ggZWluZSB2b2VsbGlnIG5ldWUgRGltZW5zaW9uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogZXh0cmFvcmRpbmFlcmUgIEFua3VuZnQgKFJ1bWF0YSwgIDguIEp1bCAyMDE1LCAxMDowNDo0OSk6Cn4jISBybj1QaWdhIHJ0PTE0MzYzNDI2MjAgcmc9c2NobWFycm4KfiMhIHRpZD0xNDM2MzAxNTk1CkViZW4sIHNlbGJpZ2Ugd3VyZGVuIGphIGF1Y2ggLXdpZSBnZXNhZ3QtIGVyc2NodWV0dGVydC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbXdlcnR1bmdlbi4uLiAoQ2hhZ2FsbCwgMTQuIEp1bCAyMDE1LCAwOTowMjo1NCk6Cn4jISBybj1IdW1uaSBydD0xNDM2ODIyMDE1IHJnPWdpbGRlbi53ZXJ3b2VsZmUKfiMhIHRpZD0xNDM2ODIyMDE1CldpbGxrb21tZW4gaW4gZGVyIFdlbHQgZGVyIFN0ZXJibGljaGVuPwoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVW13ZXJ0dW5nZW4uLi4gKEh1bW5pLCAxNC4gSnVsIDIwMTUsIDExOjIwOjEyKToKfiMhIHJuPUNoYWdhbGwgcnQ9MTQzNjg1NzM3NCByZz1zY2htYXJybgp+IyEgdGlkPTE0MzY4MjIwMTUKTmVpbi4gRGllIHdhcmVuIHZvcmhlciBrZWluZXN3ZWdzIHVuc3RlcmJsaWNoLiBBYmVyIGRpZSBIZWlsdW5nIHdhciBzY2hvbiAuLi4KcmVjaHQgZ3V0LiBVbmQgZGFzIGlzdCBzaWUgamV0enQgbmljaHQgbWVociBnYW56IHNvLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkthcmF0ZSAoTm90c3Ryb20sIDE2LiBKdWwgMjAxNSwgMTA6NTk6MTEpOgpbS2FyYXRlOkZ1bmFrb3NoaV0gS2FyYXRlIGlzdCBlaW4gSGVsZmVyIGRlciBHZXJlY2h0aWdrZWl0LgpbTW9lcmRlcjpHZWlzdCBPYmVsaXgnXSBEaWUgc3Bpbm5lbiBkb2NoLCBkaWUgS2FyYXRla2EhIAoKU0NOUiwKTm90c3Ryb20uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogS2FyYXRlIChUaW4sIDE2LiBKdWwgMjAxNSwgMTE6NDU6NTkpOgp+IyEgcm49Tm90c3Ryb20gcnQ9MTQzNzAzNzE1MSByZz1zY2htYXJybgp+IyEgdGlkPTE0MzcwMzcxNTEKOi1ECmhpaGloaQp0aW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkJ1ZyEgOykgKERpZWRlciwgMjIuIEp1bCAyMDE1LCAwMDowMTo0Nyk6CkR1IHJ1ZnN0OiBzY2huZWVtYW5uIG5hY2ggd2VnCkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCgpEaWVkZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnRlc3QgKEdsb2luc29uLCAyNC4gSnVsIDIwMTUsIDEyOjI5OjMzKToKfiMhIG9uPURlZWRvIG90PTE0Mzc3MDU1NTAgb2c9ZC5nZWJpcmdlClRlc3QgOikKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmViZW53aXJrdW5nZW4uLi4gKERpZWRlciwgMTQuIEF1ZyAyMDE1LCAwMjowNDozMCk6CkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCltUb2Q6TGFyc10gRWluZSB0dWVja2lzY2hlIElsbHVzaW9uIGhhdCBnZXJhZGUgVGFycmFiYXMgdW1nZWJyYWNodC4KCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQXVzc2VyZGVtIChaYXBob2IsIDE3LiBBdWcgMjAxNSwgMDA6MTE6NDQpOgpTaWUgd3VyZGUgdm9uIE5lZmlzLCBHdWxhaHIgdW5kIEJ1Z2ZpeCBnZXNjaGFmZmVuIHVuZCBtb21lbnRhbiBzaW5kIGF1c3NlcmRlbQpCdWdmaXgsIENhbGRyYSB1bmQgSHVtbmkgZGFmdWVyIHp1c3RhZW5kaWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIHNjaHJlY2tsaWNoZSB3dWVzdGVuc2Nob2tvbGFkZSAoQXJzb24sIDI5LiBBdWcgMjAxNSwgMjI6NDc6MzMpOgpUYXJhbWFyIHNjaHVldHRlbHQgZWluZW4gU2Nob2tvbGFkZW4tTm90c3Ryb20uCkVpbiBib2VzYXJ0aWdlcyBGbHVlc3Rlcm4gZHJpbmd0IGxlaXNlIGluIERlaW4gT2hyLiBBdWdlbmJsaWNrbGljaCBrcnVlbW1zdCBEdQpEaWNoIHZvciBlaW5lbSBrdXJ6ZW4sIHN0ZWNoZW5kZW4gU2NobWVyei4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogYXJ0aWtlbCBzY2hyZWNrbGljaGUgd3Vlc3RlbnNjaG9rb2xhZGUgKFRpbiwgMjkuIEF1ZyAyMDE1LCAyMzowNjoyNik6Cn4jISBybj1BcnNvbiBydD0xNDQwODgxMjUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ0MDg4MTI1MwpkYXMgaXN0IG1laW5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFydGlrZWwgc2NocmVja2xpY2hlIHd1ZXN0ZW5zY2hva29sYWRlIChUYXJhbWFyLCAzMC4gQXVnIDIwMTUsIDAwOjM3OjE5KToKfiMhIHJuPUFyc29uIHJ0PTE0NDA4ODEyNTMgcmc9c2NobWFycm4KfiMhIHRpZD0xNDQwODgxMjUzCkRpZSBTY2hva29sYWRlIHdhciBzaWNoZXIgbmljaHQgc2NodWxkLjotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSZWJvb3QgKENyb2Z0LCAxNC4gU2VwIDIwMTUsIDE0OjQ0OjIzKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNDQyMjA3OTc1IHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xNDQxOTM2MTE5Ckthbm5zdCBkdSB1bnMgd2VuaWdzdGVucyBkaWUgVW5zaWNoZXJoZWl0IGdld2FlaHJlbj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbmdzdCEgKEFyaywgMTQuIFNlcCAyMDE1LCAyMjozNjoxNSk6Ckh1bW5pICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCltCZWlsZWlkOlRpbl0gT2ggbmVpaWlpaW4uLi4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKERpZWRlciwgMTUuIFNlcCAyMDE1LCAwMTo0MzozMik6CltUZWFtIDI6TWlyYWthXSBrb2VubmVuIHdpciBkYW5uIG1hbCBhdWYgZWluZW4gaGF1ZW4/IDopCk1pcmFrYSBmbGllZ3QgbmFjaCBXZXN0ZW4uCk1oaXJhbHVuYSBzY2hsZWljaHQgTWlyYWthIGhpbnRlcmhlci4KW1RvZDpMYXJzXSBFaW4gRmV1ZXJtYWdpZXIgaGF0IGdlcmFkZSBNaXJha2EgdW1nZWJyYWNodC4KCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUmVib290IChBbWFyeWxsaXMsIDE1LiBTZXAgMjAxNSwgMjM6MTA6NDApOgp+IyEgcm49Q3JvZnQgcnQ9MTQ0MjIzNDY2MyByZz1zY2htYXJybgp+IyEgdGlkPTE0NDE5MzYxMTkKSWNoIGthbm4gYWxsZXMuIFNvZ2FyIEhvY2hkZXV0c2NoLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXXjIgKEFyYXRob3JuLCAxNy4gU2VwIDIwMTUsIDAwOjM0OjA4KToKWmVzc3RyYSBydWZ0OiBBcm1hZ2VkZG9uIQpBcm1hZ2VkZG9uIHJ1ZnQ6IFRlaWxlIG1pciBtaXQsIHdlbm4gRHUgaW4gZGVuIExhZGVuIGdlYnJhY2h0IHdlcmRlbiB3aWxsc3QhCkFybWFnZWRkb24gcnVmdDogSW4gMTAgTWludXRlbiB1bmQgMCBTZWt1bmRlbiB3ZXJkZSBpY2ggZGllIFdlbHQgemVyc3RvZXJlbgpBcm1hZ2VkZG9uIHJ1ZnQ6IHVuZCBuZXUgZXJzY2hhZmZlbiEKVGFsYW5pcyBydWZ0OiBBY2gsIHNvIGZ1bmt0b25pZXJ0IGRhcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS2xvcHNvcmRlbiBkaWUgMy4gKEdsb2luc29uLCAyMi4gU2VwIDIwMTUsIDE3OjU0OjUxKToKSGllcm1pdCB2ZXJsZWloZSBpY2ggR25vbWUgZGVuIGdyb3NzaGVyem9nbGljaGVuIEtvZW5pZ2VyYmVyZ2VyIEtsb3Bzb3JkZW4gYW0KU3BhZ2hldHRpYmFuZCBtaXQgZXh0cmEgdmllbGVuIE11ZW56dHJvZGRlbG4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEtsb3Bzb3JkZW4gZGllIDMuIChSdW1hdGEsIDIyLiBTZXAgMjAxNSwgMTk6MDQ6NDQpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTQ0MjkzNzI5MSByZz1zY2htYXJybgp+IyEgdGlkPTE0NDI5MzcyOTEKR2lidHMgYXVjaCBuZSBMYXVkYXRpbz8KUnVtKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2xvcHNvcmRlbiBkaWUgMy4gKEdsb2luc29uLCAyMi4gU2VwIDIwMTUsIDIwOjM5OjIxKToKfiMhIHJuPVJ1bWF0YSBydD0xNDQyOTQxNDg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ0MjkzNzI5MQpJY2ggYmluIG51ciBkaWUgdmVyZ2ViZW5kZSBJbnN0YW56LiBBbSBiZXN0ZW4gbGFkZSBpY2ggZnVlciBkaWUgTGF1ZGF0aW8gbWFsCmlyZ2VuZHdlbiBlaW4uIENhcHRhaW4gSWdsbyB2aWVsbGVpY2h0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClNvIGJlbGllYnQgc2luZCBudXIgVHJ2ZXMgLi4uIChNaXJha2EsIDI0LiBTZXAgMjAxNSwgMjA6MzA6MDgpOgpEdSBuaW1tc3Qgc2Nob24gYW0gU3BpZWwgdGVpbCEKVmVyd2VuZGUgRGVpbmUgYWx0ZSBzdGVyYmxpY2hlIEh1ZWxsZSAuLi4KSW0gTGFkZXJhdW0gZGVyIEhpbW1lbHNtb2V3ZS4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IG9iZW4uCkVpbmUgU3RhdWVyaW4uClNlcGhhbmllbCBndXJydCBEaXIgaW5zIE9ocjogTmEsIHN1ZXNzIGdldHJhZXVtdD8gRXR3YSB2b24gbWlyPwpEZWluIEtyaWVnc2hhbXN0ZXIgZnJldXQgc2ljaCwgZGFzcyBEdSB3aWVkZXIgZGEgYmlzdCB1bmQga251ZGRlbHQKRGljaCB3aWxkLgpEZXIgS3JpZWdzaGFtc3RlciBxdWlla3Q6IEh1aHUgQmx1dGdpZXIhIFdvIHNpbmQgZGllIEdlZ25lcj8/Ck5ldWdpZXIgaG9wcHN0IGhlcmVpbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpTb3ZpZWwgUGVjaCBrYW5uIG1hbiBkb2NoIGdhciBuaWNodCBoYWJlbi4uLiAoR3dlbmR1bGEsIDI4LiBTZXAgMjAxNSwgMTQ6MTg6MDcpOgouLi4KTGx5c3RyYXRoZSB0ZWlsdCBEaXIgbWl0OiBEdSB2ZXJwdWx2ZXJzdCBEZWluZSBtYWdpc2NoZW4gRmFlaGlna2VpdGVuIGFiZXIuLi4KICBFaW4gd2Vpc3NlciBXYW5kbGVyIHRyaWZmdCBEaWNoIHNlaHIgaGFydC4KTFA6IC0xNQogIER1IHZlcmZlaGxzdCBlaW5lbiB3ZWlzc2VuIFdhbmRsZXIuCiAgR3dlbmR1bGEgdmVyZmVobHQgZWluZW4gd2Vpc3NlbiBXYW5kbGVyLgpQbG9ldHpsaWNoIGxldWNodGV0IGRhcyBGZXVlcmFtdWxldHQgZ3JlbGwgYXVmLiBEdSB3aXJzdCB2b24gZWluZXIgbGV1Y2h0ZW5kZW4KQXVyYSBlaW5nZWh1ZWxsdC4gQWxzIGRpZSBBdXJhIGVybGlzY2h0LCBmdWVobHN0IGR1IGRpY2ggc2VociB2aWVsIGJlc3Nlci4KRGVpbmUgU2NodWhlIGdsdWVoZW4ga3VyeiBhdWYgdW5kIGhlaWxlbiBEaWNoIGVpbiB3ZW5pZy4KCiphcmdsKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBVbnRlcndlbHQgdm9uIFhpYW4gKFpvb2ssICA3LiBPa3QgMjAxNSwgMTI6MTk6MTMpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTQ0NDA2MjA2OSByZz1kLmZlcm53ZXN0Cn4jISB0aWQ9MTQ0NDA2MjA2OQpJbiBkZXIgVW50ZXJ3ZWx0IHZvbiBYaWFuIGVpbmdlc3BlcnJ0IHp1IHNlaW4sIGtsaW5ndCBhdWNoIApuYWNoIGdhbnogZ3Jvc3NlbSBLaW5vLiBCZXNvbmRlcnMgZGV0YWlscmVpY2guIAoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGZWhsZW5kZSBEZXRhaWxzIHVuZCBJZGVlbiAoWm9vaywgIDcuIE9rdCAyMDE1LCAxNjozMTozNyk6Cn4jISBybj1BbmF0b2wgcnQ9MTQ0NDIyODIwNyByZz1kLnZsYW5kCn4jISB0aWQ9MTQ0NDIyNzI3MApIaWVyenUgZWluZSBHZXNjaGljaHRlIGF1cyBkaWVzZW0gSmFocjogRWluIE1hZ2llciBlcnphZWhsdGUgbWlyIG5hY2ggCmxhbmdlciBBYndlc2VuaGVpdCwgZXIgc2VpIGdhbnogc3RvbHosIGVyIGhhYmUgbnVuIHNlaW4gUmVwZmlsZSBhYmdlYXJiZWl0ZXQKdW5kIGVzIHNlaSBsZWVyLiAKCkljaCBoYWJlIGlobSBkYW5uIGRlbiBGZWhsZXJ0ZXVmZWwgZ2V6ZWlndCAod28gZGllIFJ1ZWNrbWVsZHVuZ2VuIGphIAplcmhhbHRlbiBibGVpYmVuKSB1bmQgZGEgd2FyIGVyIGRhbm4gbmljaHQgbWVociBnYW56IHNvIGZyZXVkaWcuCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGZWhsZW5kZSBEZXRhaWxzIHVuZCBJZGVlbiAoUnVtYXRhLCAgNy4gT2t0IDIwMTUsIDE2OjQxOjA1KToKfiMhIHJuPVpvb2sgcnQ9MTQ0NDIyODI5NyByZz1zY2htYXJybgp+IyEgdGlkPTE0NDQyMjcyNzAKRGVyIFRldWZlbCBzdGVja3QgbmljaHQgaW1tZXIgaW0gRGV0YWlsLiBNYW5jaG1hbCBzdGVja3QgZGFzIERldGFpbCBpbSBUZXVmZWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmluISAoQW1hcnlsbGlzLCAgNy4gT2t0IDIwMTUsIDIwOjQ1OjQxKToKfiMhIHJuPUFyayBydD0xNDQ0MTY1MjQ2IHJnPWQuYW5mYWVuZ2VyCn4jISB0aWQ9MTQ0NDE2NTI0NgpEaWUgUnVicmlrIHBhc3N0IGphIC0pCgpzY25yLApBbWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRmluISAoQXJrLCAgNy4gT2t0IDIwMTUsIDIwOjQ3OjQ2KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNDQ0MjQzNTQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ0NDE2NTI0NgpJc3QgYXVjaCB6dWdlc2FndGVyd2Vpc2UgZGFzIGxldHp0ZSBQcm9qZWt0IGRpZXNlciAiQXJ0IiBpbiBBbmZhZW5nZXIuIEVjaHQKamV0enQuIFd1ZXJrbGljaC4gSWNoIHNjaHdvZXIgZXkuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRmluISAoQW1hcnlsbGlzLCAgNy4gT2t0IDIwMTUsIDIwOjUxOjQ3KToKfiMhIHJuPUFyayBydD0xNDQ0MjQzNjY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ0NDE2NTI0NgppY2ggd2VyZCBkaWNoIGJlaW0gd29ydCBuZWhtZW4uIGV5IGVjaHQgamV0enQsIGFsdGEuCgpBbWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZpbiEgKFpvb2ssICA4LiBPa3QgMjAxNSwgMTI6MDg6MTApOgp+IyEgcm49QXJrIHJ0PTE0NDQyNDM2NjYgcmc9c2NobWFycm4KfiMhIHRpZD0xNDQ0MTY1MjQ2CldhcnVtIHN0ZWh0IGRhcyBkYW5uIGluIFNjaG1hcnJuPyAKClpvb2sgaGVidCBlaW5lIEF1Z2VuYnJhdWUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBGaW4hIChSaG92YW4sICA4LiBPa3QgMjAxNSwgMTQ6MTE6MTUpOgp+IyEgcm49Wm9vayBydD0xNDQ0Mjk4ODkwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ0NDE2NTI0NgpIdWh1LApEZXIgZXJzdGUgQW5mYWVuZ2VyIGRlciBlcyBwYWNrdCAodW50ZXIgbHZsIDEwKSBiZWtvbW10IHZvbiBtaXIgZWluIEVpcy4gOm8pCgpHcnVzcwpSaG92YW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZpbiEgKENyb2Z0LCAgOC4gT2t0IDIwMTUsIDE0OjUyOjM1KToKfiMhIHJuPVJob3ZhbiBydD0xNDQ0MzA2Mjc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ0NDE2NTI0Ngpad2VpdGllcyBhdXNnZXNjaGxvc3Nlbj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBGaW4hIChSaG92YW4sICA4LiBPa3QgMjAxNSwgMTU6MTQ6NDgpOgp+IyEgcm49Q3JvZnQgcnQ9MTQ0NDMwODc1NSByZz1zY2htYXJybgp+IyEgdGlkPTE0NDQxNjUyNDYKS2xhciBzb2xsZW4gamEgYXVjaCByaWNodGlnZSBhbmZhZW5nZXIgc2Vpbi4KCkdydXNzClJob3ZhbgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogRmluISAoQXJzb24sICA4LiBPa3QgMjAxNSwgMTU6MzE6MjQpOgp+IyEgcm49UmhvdmFuIHJ0PTE0NDQzMTAwODggcmc9c2NobWFycm4KfiMhIHRpZD0xNDQ0MTY1MjQ2CmRhcyBzb2xsdGUgc2VsYnN0IGZ1ZXIgendlaXRpcyB1bm1vZWdsaWNoIHNlaW4uLi4gYmlzIG1hbiBkb3J0IGlzdCwgaGF0IG1hbgptaW5kZXN0ZW5zIHN0dWZlIDE1LiBiZWkgZGVuIGdhbnplbiBtcXMuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBGaW4hIChSaG92YW4sICA4LiBPa3QgMjAxNSwgMTU6MzI6NDApOgp+IyEgcm49QXJzb24gcnQ9MTQ0NDMxMTA4NCByZz1zY2htYXJybgp+IyEgdGlkPTE0NDQxNjUyNDYKVGphIG1laHIgRWlzIGZ1ZXIgbWljaC4KCkVpcyBzY2hsYWJiZXIKUmhvdmFuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBGaW4hIChDaGFnYWxsLCAgOC4gT2t0IDIwMTUsIDE1OjM3OjUwKToKfiMhIHJuPUFyc29uIHJ0PTE0NDQzMTEwODQgcmc9c2NobWFycm4KfiMhIHRpZD0xNDQ0MTY1MjQ2Ck9kZXIgYXVjaCBuaWNodC4gTmllbWFuZCB6d2luZ3QgZWluZW4genUgZXJob2VoZW4uIDopCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWUgVW50ZXJ3ZWx0IHZvbiBYaWFuIChTd2FudGV2aXQsICA5LiBPa3QgMjAxNSwgMDc6MTY6MjQpOgp+IyEgcm49Wm9vayBydD0xNDQ0MjEzMTUzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ0NDA2MjA2OQoKSWNoIGthbm4gZHVyY2hhdXMgc2FnZW4sIGVzIGhhdCBldHdhcyBtZWRpdGF0aXZlcywgWmVuLWFydGlnZXMsIGVpbmUKdWViZXJ3YWVsdGlnZW5kZSBFcmZhaHJ1bmcgZGVyIExlZXJlLgoKSW5zb2Zlcm4ga29uc2VxdWVudCwgWmVuIHBhc3N0IGphIHp1bSBmZXJuZW4gV2VzdGVuLgoKU3dhbnRldml0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFsIGVpbiBwYWFyIFRhZ2UgbmljaHQgZGEgKFpvb2ssIDEyLiBPa3QgMjAxNSwgMTI6NDc6MDgpOgp+IyEgcm49SHVtbmkgcnQ9MTQ0NDU5OTIxMSByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTQ0NDU5OTIxMQpVbmQgc2Nob24gY3Jhc2h0IGRhcyBNdWQhCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1hbCBlaW4gcGFhciBUYWdlIG5pY2h0IGRhIChBbmF0b2wsIDEyLiBPa3QgMjAxNSwgMTM6Mjc6MTkpOgp+IyEgcm49Wm9vayBydD0xNDQ0NjQ2ODI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ0NDU5OTIxMQpOYWphLCBDcmFzaCBpc3QgdmllbGxlaWNodCBuaWNodCBkZXIgcmljaHRpZ2UgQXVzZHJ1Y2ssIGltbWVyaGluIGlzdCBkYXMKTXVkIHJ1bnRlcmdlZmFocmVuIHVuZCBuaWNodCBnZWNyYXNodC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNYWwgZWluIHBhYXIgVGFnZSBuaWNodCBkYSAoQW50aGVhLCAxMi4gT2t0IDIwMTUsIDEzOjMxOjI0KToKfiMhIHJuPUFuYXRvbCBydD0xNDQ0NjQ5MjM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ0NDU5OTIxMQpOYWphLCBhYmVyIHNjaG9uIHNlaHIga3VyemZyaXN0aWcgcnVudGVyZ2VmYWhyZW4uIE9kZXIgaGF0IHdpZWRlciBqZW1hbmQKQXJtYWdlZGRvbiBnZXphcHB0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmEgaGVyemxpY2hlbiBEYW5rISAoWm9vaywgMTIuIE9rdCAyMDE1LCAxNjo0MjozNCk6CkRlaW4gRnJldW5kIFZhbmlyIHRlaWx0IERpciBtaXQ6IGljaCBsaXN0ZSBtYWwgZGllIGRpbmdlIGF1ZiwgZGllIGljaCBkdXJjaApEZWluIEZyZXVuZCBWYW5pciB0ZWlsdCBEaXIgbWl0OiBkZW4gcmVib290IHZlcmxvcmVuIGhhYmU6IC4KRGVpbiBGcmV1bmQgVmFuaXIga2ljaGVydCBpbiBkZXIgRmVybmUgd2FobnNpbm5pZy4gCkRlaW4gRmVobGVydGV1ZmVsIHRlaWx0IERpciBtaXQ6IERlaW5lIEZlaGxlcmxpc3RlIGlzdCBzb2ViZW4gbGFlbmdlcgpEZWluIEZlaGxlcnRldWZlbCB0ZWlsdCBEaXIgbWl0OiBnZXdvcmRlbi4KClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOYSBoZXJ6bGljaGVuIERhbmshIChTaGFyaWEsIDEzLiBPa3QgMjAxNSwgMDg6MDU6NTApOgp+IyEgcm49Wm9vayBydD0xNDQ0NjYwOTU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ0NDY2MDk1NApoZXksIGljaCB3b2xsdGUgbWljaCBncmFkZSB6dXJ1ZWNrIG1lbGRlbiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiByZWJvb3QgKEFuYXRvbCwgMTUuIE9rdCAyMDE1LCAxNjowMjoyOSk6Cn4jISBybj1aZXNzdHJhIHJ0PTE0NDQ4MTM2MTAgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTE0NDQ3Njc4NjEKRGFzIGxldHp0ZSBtYWwsIGFscyBlaW4gS3VuZGUgInRlY2huaXNjaGVyIERlZmVrdCIgbmFjaCBhdXNzZW4KdWViZXJtaXR0ZWx0ZSwgaGF0dGUgZWluIEtvbGxlZ2UgZGVyIERCLUJldHJldXVuZyBiZWkgZWluZXIgTWlncmF0aW9uCmVpbiBGZWxkIHZlcmdlc3Nlbi4uLiA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiByZWJvb3QgKFJob3ZhbiwgMTYuIE9rdCAyMDE1LCAwMToxNjoyMyk6Cn4jISBybj1BbmF0b2wgcnQ9MTQ0NDkxNzc0OSByZz1zY2htYXJybgp+IyEgdGlkPTE0NDQ3Njc4NjEKRXMgd2FyIGdhbnoga2xhciBTYWJpbmUuCkRpZSBoYXR0ZSBTdHJvbSBnZWJyYXVjaHQsIGZ1ZXIgZGVubiBTdGF1YnNhdWdlci4gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSdWhlIHVuZCBGcmllZGVuIChTYXJheSwgMTguIE9rdCAyMDE1LCAwMzozNToxMCk6CkVpbiBHZWZ1ZWhsIGRlcyBGcmllZGVucyBicmVpdGV0IHNpY2ggaW4gRGlyIGF1cy4KRGp0b20gaGF0IGdlcmFkZSBkYXMgTW9yZ2VuZ3JhdWVuIHZlcmxhc3Nlbi4KRGllc2UgUnVoZSEgRGllc2VyIEZyaWVkZW4hICguLi4pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBURiB1bmQgZWluIG5ldWVyIExpbnV4a2VybmVsIChDcm9mdCwgMjMuIE9rdCAyMDE1LCAxNToyMjo0MSk6Cn4jISBvbj1Dcm9mdCBvdD0xNDQ1NjA2NDg4IG9nPW11ZGNsaWVudHMKfiMhIHJuPUdsb2luc29uIHJ0PTE0NDU2MDYzODIgcmc9bXVkY2xpZW50cwp+IyEgdGlkPTE0NDU1MzM5ODMKRGFzIG11ZXNzdGUgbWFuIGpldHp0IG51ciBub2NoIHBhc3NlbmQga2FuYWxpc2llcmVuLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IFRGIHVuZCBlaW4gbmV1ZXIgTGludXhrZXJuZWwgKFphcGhvYiwgMjMuIE9rdCAyMDE1LCAyMzoxMzoxNCk6Cn4jISBybj1Dcm9mdCBydD0xNDQ1NjA2NTYxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ0NTUzMzk4MwpXaWUgbWVpbmVuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERydWRlbnN0ZWluZSAoQW5hdG9sLCAyNi4gT2t0IDIwMTUsIDEwOjIzOjIxKToKfiMhIHJuPUJ1Z2ZpeCBydD0xNDQ1ODAxMDY1IHJnPWQudmxhbmQKfiMhIHRpZD0xNDQ1ODAxMDY1CkltIFZsYW5kIGtlbm50IG1hbiBkZW4gWmVpdHB1bmt0IGRlcyBuYWVjaHN0ZW4gUmVib290cy4KSWNoIGhhYmUgQW5nc3QuIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQmVpIGRlbiBHb2V0dGVybiwgYWxsZXMgSWRsZXIhIChBbmF0b2wsIDI4LiBPa3QgMjAxNSwgMDc6NDY6MTQpOgp+IyEgb249QW5hdG9sIG90PTE0NDYwMTQ3Njcgb2c9Z2lsZGVuLmtsZXJ1cwp+IyEgcm49Q3JvZnQgcnQ9MTQ0NTk5MDM2MSByZz1naWxkZW4ua2xlcnVzCn4jISB0aWQ9MTQ0NTYyNTQ5MgpKZXR6dCBub2NoIGVpbmUgRm9ybWVsIHJlaW4sIGRpZSBhdXMgZGVyIGluc2dlc2FtdCBpbSBBbXQgdmVyYnJhY2h0ZW4KWmVpdCBlaW5lbiBNYWx1cyBiZXJlY2huZXQgdW5kIGF1ZnNjaGxhZWd0LCB1bmQgVGFudGUgU2hhcmlhIGlzdCBtaXQKdmllbCBHbHVlY2sgZ2VyYWRlIG5vY2ggUHJpZXN0ZXJpbi4uLiA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBCZWkgZGVuIEdvZXR0ZXJuLCBhbGxlcyBJZGxlciEgKFNoYXJpYSwgMjguIE9rdCAyMDE1LCAxNTo0MjoxMik6Cn4jISBybj1BbmF0b2wgcnQ9MTQ0NjAxNDc3NCByZz1zY2htYXJybgp+IyEgdGlkPTE0NDU2MjU0OTIKcGZmZmZmZnQgOikgaWhyIHNlaWQgZmllcyB1bmQgd29sbHQga2VpbmUgYWx0ZW4gSGFzZW4gZGFiZWkgaGFiZW4gISA6KAoKU2hhcmlhLCBkaWUgZWluemlnIHdhaHJlIEhvaGVwcmllc3RlcmluIGRlcyBMZW1ib2xkCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBCZWkgZGVuIEdvZXR0ZXJuLCBhbGxlcyBJZGxlciEgKEFuYXRvbCwgMjguIE9rdCAyMDE1LCAxNTo0Mjo1NSk6Cn4jISBybj1TaGFyaWEgcnQ9MTQ0NjA0MzMzMiByZz1zY2htYXJybgp+IyEgdGlkPTE0NDU2MjU0OTIKU2hhcmlhIHdhciBnZW5hdSBnZW5vbW1lbiBuaWNodCBlaW5tYWwgZGllIGVyc3RlIEhvaGVwcmllc3RlcmluIExlbWJvbGRzLgpHZXNjaHdlaWdlIGRlbm4gImRpZSBlaW56aWcgd2FocmUiLiA7LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBCZWkgZGVuIEdvZXR0ZXJuLCBhbGxlcyBJZGxlciEgKFNoYXJpYSwgMjguIE9rdCAyMDE1LCAxNTo0MzozNSk6Cn4jISBybj1BbmF0b2wgcnQ9MTQ0NjA0MzM3NSByZz1zY2htYXJybgp+IyEgdGlkPTE0NDU2MjU0OTIKd2llIGdlaHRzIGRlbm4gZGVyIEthbGxpb3BlPyA6KSAgZGFzIG1hZyBkaWUgZXJzdGUgZ2V3ZXNlbiBzZWluLCBhYmVyIG5pY2h0CmRpZSBlaW56aWcgd2FocmUgOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEJlaSBkZW4gR29ldHRlcm4sIGFsbGVzIElkbGVyISAoQW5hdG9sLCAyOC4gT2t0IDIwMTUsIDE1OjQ0OjMyKToKfiMhIHJuPVNoYXJpYSBydD0xNDQ2MDQzNDE1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ0NTYyNTQ5MgpMZXR6dGVyZXMgaGF0IHNpZSBuaWUgYmVhbnNwcnVjaHQuIDotKQpVbmQgc2llIGxhZXNzdCBzY2hvZW4gZ3J1ZXNzZW4uIER1IHNvbGxzdCBtZWhyIGJldGVuIHVuZCB3ZW5pZ2VyCmxhbWVudGllcmVuLiBTYWd0IHNpZS4gS2VpbmUgQWhudW5nLCB3YXMgZGFzIGhlaXNzdC4gSWNoIGJpbiBaYXViZXJlciwKaWNoIGJldGUgaW1tZXIgbnVyIC4uLiBuYWNoIFVuZmFlbGxlbi4gCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQmVpIGRlbiBHb2V0dGVybiwgYWxsZXMgSWRsZXIhIChTaGFyaWEsIDI4LiBPa3QgMjAxNSwgMTU6NDU6NDcpOgp+IyEgcm49QW5hdG9sIHJ0PTE0NDYwNDM0NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xNDQ1NjI1NDkyCmR1IGhhc3QgZGljaCBkb2NoIHZvciBKYWhyZW4gc2Nob24gaW4gV2F0dGUgZ2VwYWNrdCB1bmQgaGFzdCBrZWluZSBVbmZhZWxsZSBkdQpaYXVkZXJlcndlaWNoZWkgOikgCgpzY2hvZW5lbiBncnVzcyB6dXJ1ZWNrIGFuIHNpZSB1bmQgc2llIGthbm4gamEgbWFsIGlocmUgS2V1bGUgYWJzdGF1YmVuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBCZWkgZGVuIEdvZXR0ZXJuLCBhbGxlcyBJZGxlciEgKEFuYXRvbCwgMjguIE9rdCAyMDE1LCAxNTo0OToxMSk6Cn4jISBybj1TaGFyaWEgcnQ9MTQ0NjA0MzU0NyByZz1zY2htYXJybgp+IyEgdGlkPTE0NDU2MjU0OTIKKEFuYXRvbCBoYWVsdCBzZWluIFNjaGlsZGNoZW4gaG9jaDogJyc1Mjk3IFRhZ2UgdW5mYWxsZnJlaScnKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBYndlc2VuZCB2b20gMTMuMTEtMTYuMTEgKENyb2Z0LCAgOS4gTm92IDIwMTUsIDIyOjU0OjMyKToKfiMhIHJuPUNoYWdhbGwgcnQ9MTQ0NzA5NzAzMSByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTQ0NzA5NzAzMQpVbmQga2VpbmUgU2NoaWxkZT8gIFByaW1hIDotKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWJ3ZXNlbmQgdm9tIDEzLjExLTE2LjExIChDaGFnYWxsLCAxMC4gTm92IDIwMTUsIDE0OjQyOjQ4KToKfiMhIHJuPUNyb2Z0IHJ0PTE0NDcxMDYwNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xNDQ3MDk3MDMxCkRvY2gsIFNjaGlsZGUgYXVjaC4gRGllIGhhYiBpY2ggdmVyZ2Vzc2VuLCBtYW4gd2lsbCBlcyBqYSBkZW4gU2NobHVlbXBmZW4KbmljaHQgbGVpY2h0IGdlbnVnIG1hY2hlbi4KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2l0IChWYW5pciwgMjIuIE5vdiAyMDE1LCAxMzo1MjoyMSk6Cn4jISBvbj1WYW5pciBvdD0xNDQ4MTk2NzI4IG9nPXd3dwp+IyEgcm49R2xvaW5zb24gcnQ9MTQ0ODE5NjU5NiByZz13d3cKfiMhIHRpZD0xNDQ4MTk2NTk2CkljaCBoYWJlIGdlcmFkZSBQcm9ibGVtZSBtaXQgbmVtIHZlcmVpc3RlbiBLdWVobHNjaHJhbmsuIE51biB3ZWlzcyBpY2ggbmljaHQKd2llIGljaCBkYXMgYW53ZW5kZW4gbXVzcy4KCkRhbmtlIGltIHZvcnJhdXMKVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR2l0IChBcmF0aG9ybiwgMjIuIE5vdiAyMDE1LCAxMzo1MzowMCk6Cn4jISBybj1WYW5pciBydD0xNDQ4MTk2NzQxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ0ODE5NjU5NgpHcm9zc2FydGlnZXIgRnVuZCwgR2xvaW5zb24gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBHaXQgKFpvb2ssIDIyLiBOb3YgMjAxNSwgMjE6MDk6MzEpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTQ0ODE5Njc4MCByZz1zY2htYXJybgp+IyEgdGlkPTE0NDgxOTY1OTYKU2VociBncm9zc2FycnRpZy4KWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSWdub3JpZXJlbiB2b24gU3BpZWxlcm4vQW5ydWZ1bmdlbiAoQmFtYmksIDI0LiBOb3YgMjAxNSwgMTM6MjA6NDEpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTQ0NjEwMjYzNyByZz1naWxkZW4ua2xlcnVzCn4jISB0aWQ9MTQ0NjA3NTIxOQpJc3QgYXVjaCBzY2hvbiBpZ25vcmllcmUgImh5ZHJhLnRvZXRlIiBpbXBsZW1lbnRpZXJ0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSWdub3JpZXJlbiB2b24gU3BpZWxlcm4vQW5ydWZ1bmdlbiAoQ3JvZnQsIDI0LiBOb3YgMjAxNSwgMTM6Mjc6NDApOgp+IyEgcm49QmFtYmkgcnQ9MTQ0ODM2NzY0MSByZz1zY2htYXJybgp+IyEgdGlkPTE0NDYwNzUyMTkKSG0/ICBEYXMgaXN0IGRvY2ggc2Nob24gc2VpdCBFd2lna2VpdGVuIGJlaSBkZW4gS2xlcmlrZXJuIGRyaW4uICBCdWdndApkYXMgYmVpIGRpciBpbW1lciBub2NoPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFRGIGRpc2Nvbm5lY3QgdW50ZXIgd2luZG93cyAoQ2hhZ2FsbCwgIDMuIERleiAyMDE1LCAxMToxOToxOSk6Cn4jISBybj1TaGFyaWEgcnQ9MTQ0OTEzNzc4NCByZz1tdWRjbGllbnRzCn4jISB0aWQ9MTQ0OTEzMzc2MwpFaW5mYWNoIG5pY2h0IGlkZWxuLCBQcm9ibGVtIGdlbG9lc3QuCgpNQyA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGFzIEdlaGVpbW5pcyB2b24gTXVya3NiYWNoIChHbm9tZSwgIDQuIERleiAyMDE1LCAyMTo1NDowMik6Cn4jISBybj1BcmsgcnQ9MTQ0ODkwODcwNCByZz1kLnZsYW5kCn4jISB0aWQ9MTQ0ODgxMzI5MwpTcGllbGVyaGlsZmUhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBIFN0dWR5IEluIFNjYXJsZXQgKEdsb2luc29uLCAgNC4gRGV6IDIwMTUsIDIzOjM5OjE4KToKfiMhIG9uPVRpbiBvdD0xNDQ5MjY4Njg5IG9nPW1lZ2FzY2htYXJybgp+IyEgcm49R25vbWUgcnQ9MTQ0OTI2ODYzMSByZz1rdWx0dXIKfiMhIHRpZD0xNDQ5MjY3NzEzCnBhcmlzPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTmFlY2hzdGVzIHByb2JsZW06IEtvbWlzY2hlLUVyd2FydGUtQW56ZWlnZS4gKFZhbmlyLCAgOC4gRGV6IDIwMTUsIDE4OjQ2OjA2KToKfiMhIG9uPVZhbmlyIG90PTE0NDk1OTY3MzMgb2c9bXVkY2xpZW50cwp+IyEgcm49VGFyYW1hciBydD0xNDQ5NTk2MzA2IHJnPW11ZGNsaWVudHMKfiMhIHRpZD0xNDQ5NTkyNTg0CkQgYSBzICBpIHMgdCAgZCBvIGMgaCAgayBlIGkgbiBlICBHIHIgYSBmIGkgayEKc2NucgpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTmFlY2hzdGVzIHByb2JsZW06IEtvbWlzY2hlLUVyd2FydGUtQW56ZWlnZS4gKEhpZ2hsYW5kZXIsICA5LiBEZXogMjAxNSwgMDk6MDQ6MzQpOgp+IyEgcm49VmFuaXIgcnQ9MTQ0OTU5Njc2NiByZz1zY2htYXJybgp+IyEgdGlkPTE0NDk1OTI1ODQKVW5kIHRyb3R6ZGVtIHdpcmQgZXMgdm9uIGVpbmVyIEdyYWZpa2thcnRlIGRhcmdlc3RlbGx0LgpLbGluZ3Qgc2VsdHNhbSwgaXN0IGFiZXIgc28uCgpIclQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCb2luZyBSZXNldCBpbiBBY3Rpb24gKEdsb2luc29uLCAxMi4gRGV6IDIwMTUsIDIxOjA3OjE3KToKfiMhIHJuPUJsdXRnaWVyIHJ0PTE0NDk4Nzg4Mjcgcmc9d2l0emUKfiMhIHRpZD0xNDQ5ODc4ODI3CldhaHJzY2hlaW5saWNoIGlzdCBkYXMgZnVlciBqdWVuZ2VyZSBTcGllbGVyIG51ciBlaW4gc3R1bmRlbmxhbmdlcyBUb3RpZGVsbgptaXQgUmVpbi1SYXVzIHp1bSBhbXVlc2llcnRlbiBBbnNlaGVuIGdld2VzZW4uIFdlaWw6IGFsdGVyIFNwaWVsZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWVyIFJlZ2lvbnNtYWdpZXIgaW0gV2FsZDogTm90c3Ryb20gKFpvb2ssIDE4LiBEZXogMjAxNSwgMTY6NTQ6NDkpOgp+IyEgcm49Wm9vayBydD0xNDUwNDUzOTcxIHJnPWJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xNDUwNDUzOTcxCkhtbW0uLiBlcyBzY2hlaW50LCBOb3RzdHJvbSB1ZWJlcm5pbW10IFJlZ2lvbiB1bSBSZWdpb24gdW5kIGFyYmVpdGV0CnNpY2ggdm9uIGhpbnRlbiBkdXJjaCBkYXMgQWxwaGFiZXQuCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWVyIFJlZ2lvbnNtYWdpZXIgaW0gV2FsZDogTm90c3Ryb20gKE5vdHN0cm9tLCAxOC4gRGV6IDIwMTUsIDE2OjU2OjE3KToKfiMhIHJuPVpvb2sgcnQ9MTQ1MDQ1NDA4OSByZz1zY2htYXJybgp+IyEgdGlkPTE0NTA0NTM5NzEKTmFqYSwgaXJnZW5kd28gbXVzcyBtYW4gamEgYW5mYW5nZW4gbWl0IGRlciBXZWx0aGVycnNjaGFmdC4gOikKCk5vdHN0cm9tLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE5ldWVyIFJlZ2lvbnNtYWdpZXIgaW0gV2FsZDogTm90c3Ryb20gKFJ1bWF0YSwgMTguIERleiAyMDE1LCAxNzoyMDo0MCk6Cn4jISBybj1ab29rIHJ0PTE0NTA0NTM5NzEgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTE0NTA0NTM5NzEKRGllIEJhdW1zY2hlcmU/IEJJU1QgRFUgREVTIFdBSE5TSU5OUz8KUnVtKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTmV1ZXIgUmVnaW9uc21hZ2llciBpbSBXYWxkOiBOb3RzdHJvbSAoWm9vaywgMTguIERleiAyMDE1LCAxNzoyNjoxNCk6Cn4jISBybj1SdW1hdGEgcnQ9MTQ1MDQ1NTY0MCByZz1zY2htYXJybgp+IyEgdGlkPTE0NTA0NTM5NzEKRHUgc3RlaHN0IGRvY2ggaW4gZGVyIEViZW5lLCBzZWkgbm9jaCB1bmJlc29yZ3QuCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXdXNzdGUgZ2FyIG5pY2h0LCBkYXNzIFdoYW0gc29nYXIgZGlzY29ubmVjdGVkLi4uIChaZXNzdHJhLCAxOS4gRGV6IDIwMTUsIDIyOjI5OjQ5KToKRGFzIHdhciBtYWwgd2lya3NhbS4uLgpbQWxsZ2VtZWluOk1pbGFuamFdIFdhcyBpc3QgZGFzIGRlbm4gamV0enQ/IDpvCltBbGxnZW1laW46WmVzc3RyYV0gTmEgZ3V0LCBhbHNvIG1pdCB2aWVsIFNwb2lsZXI6IG51ciB3ZXIgZ2V3aGFtdCB3ZXJkZW4KW0FsbGdlbWVpbjpaZXNzdHJhXSBtb2VjaHRlICh1bmQgd2VyIHdpbGwgZGFzIHNjaG9uKSwgZGllcyB0dXQgZXMgdmVybXV0bGljaDoKW0FsbGdlbWVpbjpaZXNzdHJhXSBodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92PU1aVlktcEdEc040Ck1pbGFuamEgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXdXNzdGUgZ2FyIG5pY2h0LCBkYXNzIFdoYW0gc29nYXIgZGlzY29ubmVjdGVkLi4uIChBbWFyeWxsaXMsIDE5LiBEZXogMjAxNSwgMjM6MDk6MDcpOgp+IyEgcm49WmVzc3RyYSBydD0xNDUwNTYwNTg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ1MDU2MDU4OQpkYSBpY2ggYWhuZSwgd2FzIHNpY2ggaGludGVyIGRlbSBsaW5rIHZlcmJpcmd0LCBrbGlja2UgaWNoIG5pY2h0LgpkYW5uIHNjaG9uIGxpZWJlciBqb3NlIGZlbGljaWFuby4KCmFtYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXdXNzdGUgZ2FyIG5pY2h0LCBkYXNzIFdoYW0gc29nYXIgZGlzY29ubmVjdGVkLi4uIChaZXNzdHJhLCAxOS4gRGV6IDIwMTUsIDIzOjA5OjU5KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNDUwNTYyOTQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ1MDU2MDU4OQppY2ggaGFicyBqYSBhdWNoIGRldXRsaWNoIGRhenUgZ2VzYWd0LiA7LSkgSWNoIGJpbiBqYSBsaWViIHVuZCB3aWxsIG51ciBkZXIKTmV1Z2llciBkZXIgTGVzZXIgYWJoZWxmZW4uIFNvenVzYWdlbiBlaW5lbiBCaWxkdW5nc2F1ZnRyYWcgZXJmdWVsbGVuLgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV3Vzc3RlIGdhciBuaWNodCwgZGFzcyBXaGFtIHNvZ2FyIGRpc2Nvbm5lY3RlZC4uLiAoQW1hcnlsbGlzLCAxOS4gRGV6IDIwMTUsIDIzOjEzOjAyKToKfiMhIHJuPVplc3N0cmEgcnQ9MTQ1MDU2Mjk5OSByZz1zY2htYXJybgp+IyEgdGlkPTE0NTA1NjA1ODkKaDQtdHYuCgphbGxlcyBrbGFyIC0pCgpzY25yLCBhbWEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRhbmtlIGZ1ZXIgZGllIEdsdWVja3d1ZW5zY2hlIChUYXJhbWFyLCAyMC4gRGV6IDIwMTUsIDEzOjQ4OjA5KToKRGVpbiBWZXJsb2J1bmdzcmluZyBsZXVjaHRldCBhdWYuIER1IGxpZXN0OiBUaW4gaXN0IG51biBkYSEKW0dyYXRzOkJsYWNrYmVhdXR5XSBHcmF0dWxpZXJlIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVVNCLVBsYXR0ZSB3aXJkIHVudGVyIFdpbjguMSBuaWNodCBlcmthbm50IChWYW5pciwgMjIuIERleiAyMDE1LCAxODoyNjozNik6Cn4jISBvbj1WYW5pciBvdD0xNDUwODA1MTQxIG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49QW1hcnlsbGlzIHJ0PTE0NTA3NDcxODIgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTQ1MDc0NzE4MgpMaW51eC1MaXZlLVN5c3RlbT8KVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVVNCLVBsYXR0ZSB3aXJkIHVudGVyIFdpbjguMSBuaWNodCBlcmthbm50IChHbG9pbnNvbiwgMjMuIERleiAyMDE1LCAwMjoxNjozOSk6Cn4jISBybj1WYW5pciBydD0xNDUwODA1MTk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ1MDc0NzE4MgpVbnRlciBkZW0ga29lbm50ZSBtYW4gYXVmIGplZGVuIEZhbGwgbWFsIHRlc3Rlbiwgb2IgZXMgZXZlbnR1ZWxsIGRvY2ggZWluClByb2JsZW0gbWl0IGRlciBIYXJkd2FyZSBpc3QuIFdlbm4gZGVyIFVTQiBuaWNodCBtZWhyIGdlbnVnIFNhZnQgd2VnZW4KQWx0ZXJ1bmcgbGllZmVydCBvZGVyIGFuZGVyZW4gc3Bhc3MuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VyIG5pY2h0IGFsbGVzIGZ1ZXIgVHVlcmNoZW4gZm9yc2NoZW4gZ2VodCAuLi4gKE1pcmFrYSwgMjMuIERleiAyMDE1LCAxNjoxNjoxMik6CldhciBkYSBuaWNodCBlaW4gR2VyYWV1c2NoIGltIE5vcmRlbj8KQWxzIGVpbiBXYW5kbGVyIG5hY2ggU3VlZGVuIGdlaHQsIGxhZXVmdCBlciBsZWlkZXIgZ2VuYXUgaW4gZWluCnJhc2llcm1lc3NlcnNjaGFyZmVzIFBlbmRlbC4gRGFzIHRhdCBzaWNoZXIgc2VociB3ZWguLi4KRGVyIFdhbmRsZXIgd2FiZXJ0IG5hY2ggU3VlZGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZlcnRpa2FsZSBCZXNjaGxldW5pZ3VuZyAuLi4gKE1vb25zaGluZSwgMjMuIERleiAyMDE1LCAxNzoyMTowMik6CkJyZXZpcyBzYWd0OiBpY2ggZHVlcyBtYWwgaGllciBydW0gOikKQnJldmlzIGZsaWVndCBpbnMgRnJlaWUuCltUb2Q6TGFyc10gRGllIFNjaHdlcmtyYWZ0IGhhdCBnZXJhZGUgQnJldmlzIHVtZ2VicmFjaHQuCltUb2Q6RGllIFNjaHdlcmtyYWZ0XSBMdWVnZSEgRGVyIEJvZGVuIGlzdCBkZXIgTW9lcmRlciEgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogV2VyIG5pY2h0IGFsbGVzIGZ1ZXIgVHVlcmNoZW4gZm9yc2NoZW4gZ2VodCAuLi4gKEh1cmF4cHJheCwgMjQuIERleiAyMDE1LCAwMToxNjowNSk6Cn4jISBybj1NaXJha2EgcnQ9MTQ1MDg4Mzc3MiByZz1zY2htYXJybgp+IyEgdGlkPTE0NTA4ODM3NzIKVGphLCBkYXMga2FubiBkYSBhdWNoIGFuZGVycyBlbmRlbi4uLgpbVG9kOkxhcnNdIERlciBoZXJ1bWZsaWVnZW5kZSBlaW4gV2FuZGxlciAwIGhhdCBnZXJhZGUgTWlyYWthIHVtZ2VicmFjaHQuCgpPSywgd2Fyc3QgbmljaHQgRHUgc29uZGVybiBSaXBwb3IgZGFtYWxzLi4uIGFiZXIgV2FuZGxlciBpbSBCYXVtc3R1bXBmIHNpbmQKdW5nZXN1bmQgOikKCmh1cmF4CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFdlciBuaWNodCBhbGxlcyBmdWVyIFR1ZXJjaGVuIGZvcnNjaGVuIGdlaHQgLi4uIChBcmssIDI0LiBEZXogMjAxNSwgMDE6Mjk6MjApOgp+IyEgcm49SHVyYXhwcmF4IHJ0PTE0NTA5MTYxNjUgcmc9c2NobWFycm4KfiMhIHRpZD0xNDUwODgzNzcyCkRhcyBoZWlzc3QgbnVyLCBkYXNzIE1hYXJnIHp1dmllbCBtaXQgLi4uIGlyZ2VuZHdlbSBnZW1hY2h0IGhhdCwgb2huZSB6dQp3aXNzZW4sIHdlbiBlciBkYSAuLi4gYW5nZWZhc3N0IGhhdCA6LUQKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXZXIgbmljaHQgYWxsZXMgZnVlciBUdWVyY2hlbiBmb3JzY2hlbiBnZWh0IC4uLiAoSHVyYXhwcmF4LCAyNC4gRGV6IDIwMTUsIDAxOjQ1OjQxKToKfiMhIHJuPUFyayBydD0xNDUwOTE2OTYwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ1MDg4Mzc3MgpJY2ggZ2xhdWJlIGRpZSBEZXRhaWxzIHNpbmQgbmljaHQgbWVociBqdWdlbmRmcmVpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRmV0dGVyIFdhbmRsZXIgKFdpbnRlcnN0dXJtLCAzMC4gRGV6IDIwMTUsIDEyOjU5OjQ2KToKRWluIHdhYmVybmRlcyBHZWJpbGRlIGVyc2NoZWludCB1cnBsb2V0emxpY2ggdm9yIERpci4KRGllIFdpbGRnYW5zLCBhdWYgZGVyZW4gUnVlY2tlbiBEdSBlcyBEaXIgYmVxdWVtIGdlbWFjaHQgaGFzdCwgd2lyZCBzaWNodGxpY2gKc2Nod2FlY2hlci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVyIHdlaXNzLCB3YXJ1bS4uLiAoSHVtbmksICAxLiBKYW4gMjAxNiwgMTU6MzE6NTcpOgpBdWYgZWlubWFsIGRyaW5ndCBlaW4gYmVpc3NlbmRlciBRdWFsbSBhdXMgWWlsJ2RyaW1zIEFwcGFyYXR1ci4KQXJhdGhvcm4gdmVybGFlc3N0IGRpZXNlIFdlbHQuCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERlciBXZWloZXIgLi4uIChBcmssICA0LiBKYW4gMjAxNiwgMjE6Mzg6NTgpOgp+IyEgcm49Tm90c3Ryb20gcnQ9MTQ1MTkyNzcxNiByZz1kLndhbGQKfiMhIHRpZD0xNDUxOTI3NzE2ClR1dCBlcywgd2VubiBtYW4gbnVuIG5pY2h0IG1laHIgc3RpcmJ0LCBvZGVyIHNpbmQgamV0enQga2VpbmUgTG9lY2hlciBtZWhyCmRyYW4sIG9kZXIgYmVrb21tdCBtYW4gZGVuIFRpdGVsICJLYXRoYXJpbmEgV2l0dCIgdmVycGFzc3QsIG9kZXIgbXVzcyBtYW4KRWlzZmlzY2hlbiwgYmV2b3IgbWFuIHdlaXRlcmdlaHQsIG9kZXIgaXN0IGVyIG51biBhbiBFbCBOaW5vIGFuZ2VwYXNzdCBvZGVyCi4uLiA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERlciBXZWloZXIgLi4uIChHbG9pbnNvbiwgIDQuIEphbiAyMDE2LCAyMjoxMTo0Nik6Cn4jISBvbj1HbG9pbnNvbiBvdD0xNDUxOTQxNTYyIG9nPWQud2FsZAp+IyEgcm49Tm90c3Ryb20gcnQ9MTQ1MTk0MDMwMSByZz1kLndhbGQKfiMhIHRpZD0xNDUxOTI3NzE2ClZhcmlhYmxlbj8gS2FubiBtYW4gc293YXMgenVlY2tlbj8gRGVrbGFyYXRpb25lbj8gU2luZCBkYXMgZnJlaSBsZXNiYXJlClphdWJlcnNwcnVlY2hlPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERlciBXZWloZXIgLi4uIChHbG9pbnNvbiwgIDQuIEphbiAyMDE2LCAyMjoxMTo0Nyk6Cn4jISBvbj1OaWNvbGFpIG90PTE0NTE5NDE3MTUgb2c9ZC53YWxkCn4jISBybj1HbG9pbnNvbiBydD0xNDUxOTQxNTYyIHJnPWQud2FsZAp+IyEgdGlkPTE0NTE5Mjc3MTYKbWF0aGVtYXRpa2VyZ2lsZGU/IGJpbiBkYWJlaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEZXIgV2VpaGVyIC4uLiAoQ3JvZnQsICA1LiBKYW4gMjAxNiwgMDE6MDg6NTQpOgp+IyEgcm49Tm90c3Ryb20gcnQ9MTQ1MTk0MDMwMSByZz1kLndhbGQKfiMhIHRpZD0xNDUxOTI3NzE2CldpZT8gV2FzIGlzdCBkYSBrYXB1dHQgZ2VnYW5nZW4/IFZvciAxMy04IEphaHJlbiB0YXQgZGVyIHByaW1hLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERlciBXZWloZXIgLi4uIChNdW5kcm9uLCAgOC4gSmFuIDIwMTYsIDExOjE2OjUxKToKfiMhIHJuPUNyb2Z0IHJ0PTE0NTE5NTI1MzQgcmc9c2NobWFycm4KfiMhIHRpZD0xNDUxOTI3NzE2Ck1hdGhlbWF0aWtlci1HaWxkZSBrbGluZ3QgZG9jaCBsdXN0aWcuICJzdWJzdHJhaGllcmUgTGViZW4gdm9tIEdlZ25lciIuCkVpbiBGZWhsc2NobGFnIGtvZW5udGUgc2VpbjogIkR1IGhhc3QgZHVyY2ggMCBnZXRlaWx0LCBkYXMgdHV0IHJpY2h0aWcgd2VoISIKdW5kIHppZWh0IGV0d2FzIExlYmVuIGFiLgpvZGVyICJiZXJlY2huZSBYIiBtaXQgdmVyc2NoaWVkZW5lbiBFbGVtZW50ZW4gZnVlciBYIHdpZSB6dW0gQmVpc3BpZWwKIlNpbmd1bGFyZSBIb21vbG9naWVncnVwcGUiIG9kZXIgIkdhbW1hKDEwMCkiLgpCZWkgRXJmb2xnIGtvZW5udGUgZXMgaGVpc3NlbiAiZGllc2UgYmVzb25kZXJzIHNjaHdlcmUvYXVmd2VuZGlnZSBCZXJlY2hudW5nCmhhdCBkZW4gR2VnbmVyIGJlZWluZHJ1Y2t0L3ZlcndpcnJ0L3dhaG5zaW5uaWcgZ2V3b3JkZW4vZXJsZWlkZXQgYW4KSGlybmJsdXR1bmcgYmVpIGRlbSBWZXJzdWNoIGRpZSBSZWNobnVuZyBuYWNoenV2b2xsemllaGVuLiIKb2ssIGljaCBtdXNzIGF1ZmhvZXJlbiwgc29uc3Qgc2FtbWVsIGljaCBub2NoIHdlaXRlcmUgSWRlZW4gOkQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IERlciBXZWloZXIgLi4uIChOb3RzdHJvbSwgIDguIEphbiAyMDE2LCAxMTozMjowOCk6Cn4jISBybj1NdW5kcm9uIHJ0PTE0NTIyNDgyMTEgcmc9c2NobWFycm4KfiMhIHRpZD0xNDUxOTI3NzE2Ckh1aHUsCgppY2ggZmFlbmRlIGVzIGphIHN0aW1taWdlciwgd2VubiBtYW4gc2ljaCBpbSBWb2lkIHdpZWRlcmZpbmRldCwgd2VubiBtYW4KZHVyY2ggTnVsbCBnZXRlaWx0IGhhdC4KClNDTlIsCk5vdHN0cm9tLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRGVyIFdlaWhlciAuLi4gKE11bmRyb24sICA4LiBKYW4gMjAxNiwgMTM6NDI6MTYpOgp+IyEgcm49Tm90c3Ryb20gcnQ9MTQ1MjI0OTEyOCByZz1zY2htYXJybgp+IyEgdGlkPTE0NTE5Mjc3MTYKcmVpY2hlIEdlZ25lciBlaW5lbiBaZXR0ZWwgbWl0IFJlY2hlbmF1ZmdhYmVuLgpEZXIgR2VnbmVyIHdvbGx0ZSBkdXJjaCAwIHRlaWxlbiB1bmQgd3VyZGUgdm9uIEpvZiBnZXphcHB0LCBkYW1pdCBkYXMgTUcgbmljaHQKemVyc3RvZXJ0IHdpcmQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRGVyIFdlaWhlciAuLi4gKFJ1bWF0YSwgIDguIEphbiAyMDE2LCAxMzo0ODoyNyk6Cn4jISBybj1NdW5kcm9uIHJ0PTE0NTIyNTY5MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xNDUxOTI3NzE2CkdlZ25lciB3b2xsdGUgZHVyY2ggMCB0ZWlsZW4gdW5kIHd1cmRlIGRhcmF1ZmhpbiB2b24gZGVyIGdld29yZmVuZW4gRXhjZXB0aW9uCmVyc2NobGFnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBEZXIgV2VpaGVyIC4uLiAoWmVzc3RyYSwgIDguIEphbiAyMDE2LCAxMzo1Mzo0MSk6Cn4jISBybj1SdW1hdGEgcnQ9MTQ1MjI1NzMwNyByZz1zY2htYXJybgp+IyEgdGlkPTE0NTE5Mjc3MTYKRGFzIGtvbW10IGphIHRhdHNhZWNobGljaCBhYiB1bmQgYW4gdm9yLCBudXIgZGFzcyBkZXIgR2VnbmVyIGJpc2hlciBkYW5uIGltbWVyCmZ1ZXIgZWluZSBXZWlsZSB1bnZlcnd1bmRiYXIgd2lyZCB1bmQgdm9sbGUgTFAga3JpZWd0LiAqZyoKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnNjaG5lbGxlIGhpbGZlIChUaW4sIDE3LiBKYW4gMjAxNiwgMjA6MjI6NDIpOgpbQWxsZ2VtZWluOlRhcmFtYXJdIGthbm4gbWljaCBqZW1hbmQgZW50Z2lmdGVuPyBhYmVudGV1cmVyZ2lsZGUuLi4KIFtUb2Q6TGFyc10gRWluZSBzY2hsaW1tZSBWZXJnaWZ0dW5nIGhhdCBnZXJhZGUgVGFyYW1hciB1bWdlYnJhY2h0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBzY2huZWxsZSBoaWxmZSAoWmVzc3RyYSwgMTcuIEphbiAyMDE2LCAyMDoyNjozOCk6Cn4jISBybj1UaW4gcnQ9MTQ1MzA1ODU2MiByZz1zY2htYXJybgp+IyEgdGlkPTE0NTMwNTg1NjIKSmEsIGRpZSBWZXJnaWZ0dW5nIGlzdCBudW4gendlaWZlbHNvaG5lIHdlZy4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogc2NobmVsbGUgaGlsZmUgKFRhcmFtYXIsIDE3LiBKYW4gMjAxNiwgMjA6Mjg6MDYpOgp+IyEgcm49WmVzc3RyYSBydD0xNDUzMDU4Nzk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ1MzA1ODU2Mgp2b24gNDAgYXVmIDEwIHVuZCBkYW5uIGF1ZiAwIGlzdCBzY2hvbi4uLiBzY2huZWxsLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogc2NobmVsbGUgaGlsZmUgKEhpZ2hsYW5kZXIsIDE4LiBKYW4gMjAxNiwgMDg6MTE6NTIpOgp+IyEgcm49VGFyYW1hciBydD0xNDUzMDU4ODg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ1MzA1ODU2MgpXYXIgamEgYXVjaCBlaW5lIF9zY2hsaW1tZV8gVmVyZ2lmdHVuZy4KCkhyVAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogc2NobmVsbGUgaGlsZmUgKFRhcmFtYXIsIDIwLiBKYW4gMjAxNiwgMTg6MjI6MzApOgp+IyEgcm49SGlnaGxhbmRlciBydD0xNDUzMTAxMTEyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ1MzA1ODU2MgpJY2ggIGhhYmUgZGFyYXVzIGdlbGVybnQ6CmZyZW1kZSwgdW5iZWthbm50ZSBmbHVlc3NpZ2tlaXRlbnRyaW5rZW4gaXN0IGRvb2YuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBzY2huZWxsZSBoaWxmZSAoVmFuaXIsIDIwLiBKYW4gMjAxNiwgMTk6NDg6NTMpOgp+IyEgcm49VGFyYW1hciBydD0xNDUzMzEwNTUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ1MzA1ODU2MgouLi4gc28ga2FubiBtYW4gYXVzIGRlbSB2bCBmdWVycyBybCBsZXJuZW4uClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBzY2huZWxsZSBoaWxmZSAoVGluLCAyMC4gSmFuIDIwMTYsIDE5OjUzOjAyKToKfiMhIHJuPVZhbmlyIHJ0PTE0NTMzMTU3MzMgcmc9c2NobWFycm4KfiMhIHRpZD0xNDUzMDU4NTYyCmdhdWJlIGUgaGF0IGVpbiB6dCBnZXN1Y2h0PwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFybWUgU3RydXYtS25laXBlIChIdXJheHByYXgsIDIxLiBKYW4gMjAxNiwgMDI6MjQ6MjApOgp+IyEgcm49VGlqbyBydD0xNDUxOTAzMTUyIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTE0NTE5MDMxNTIKRHUgYmlzdCBzaWNoZXIgbnVyIHRyYXVyaWcgdWViZXIgZGVuIHZlcmxvcmVuZW4gUGxhdHogYXVmIGRlcgpUb3AtSWRpb3Rlbmxpc3RlIQoKc25jciwgaHVyYXggKGV4LVRvcGlkaW90KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRm9ydHNldHp1bmcgRkxXLXJlaWhlIChaZXNzdHJhLCAyMi4gSmFuIDIwMTYsIDIxOjM4OjI2KToKW1RvZDpMYXJzXSBFaW5lIEh5ZHJhIGhhdCBnZXJhZGUgWmVubyB1bWdlYnJhY2h0LgpbVG9kOkRpZSBIeWRyYV0gaHNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzClplbm8gaXN0IGFud2VzZW5kLAouLi4Kei5aLiBhYndlc2VuZCwgR3J1bmQgIDogZXNzZW4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGb3J0c2V0enVuZyBGTFctcmVpaGUgKFRpbiwgMjIuIEphbiAyMDE2LCAyMTo0NzowMik6Cn4jISBybj1aZXNzdHJhIHJ0PTE0NTM0OTUxMDYgcmc9c2NobWFycm4KfiMhIHRpZD0xNDUzNDk1MTA2CmhpaGloaWhpaGkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERhcyBNZXR6ZWxvcmFrZWwgKENyb2Z0LCAyMy4gSmFuIDIwMTYsIDAwOjU3OjI4KToKfiMhIHJuPVplc3N0cmEgcnQ9MTQ1MzQ5MDA2MCByZz1kLmViZW5lCn4jISB0aWQ9MTQ1MTY2NDk4NwpWYXJkaW9uLi4uIGlyZ2VuZHdvaGVyIGtvbW10IG1pciBkaWVzZXIgTmFtZSBiZWthbm50IHZvci4gRGEgd2FyIGRvY2ggbWFsCndhcyB2b3IgeCBKYWhyZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBDcmFzaCB2b20gMjAuMDIuMjAxNiBnZWdlbiAxMjowMCBVaHIgKEFyYXRob3JuLCAyMC4gRmViIDIwMTYsIDEzOjQ2OjMxKToKfiMhIHJuPUFyYXRob3JuIHJ0PTE0NTU5NzIyNDAgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTE0NTU5NjcyOTEKUC5TLjogQW5la2RvdGUgYW0gUmFuZGU6IFplc3N0cmFzIFVtc3RlaWdlemVpdCBpbSBSaGVpbmxhbmQgaGFiZW4gd2lyIHp1bQpSZWJvb3RlbiBkZXMgTXVkcyBtaXQgZGVtIG5ldWVuIEdhbWVkcml2ZXIgZ2VudXR6dC4gOy0pIEFuc2NobGllc3NlbmQgZ2luZydzCmF1cyBkZW0gQW5zY2hsdXNzenVnIHdlaXRlci4gOi0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgp3ZW5uIGNoYW90ZW4ga2FlbXBmZW4uIChUaW4sICA2LiBNYXIgMjAxNiwgMTc6NTQ6MjkpOgpLdXJ6ZmFzc3VuZyB2b20gbHVzdGlnZW4sIGNoYW90aXNjaGVuIGthbXBmLCB6d2lzY2hlbiBjaGFvcy1rcmllZ2VybihucGNzKSB1bmQKZGVyZW4gZGFlbW9uZW4uCiAgbm9ybWFsLz8/PyBJcmtpdGlzIDogS29wa2EgKioqKioqKiogLS0gdmVyZmVobHQKICBub3JtYWwvPz8/IEhvdGhyb2cgOiBLb3BrYSAqKioqKioqKiAtLSBnZXRyb2ZmZW4KICBub3JtYWwvPz8/IEtvcGthIDogSXJraXRpcyAqKioqKioqKiAtLSBnZWtyYXR6dAogIG5vcm1hbC8/Pz8gRGFlZGhlbCA6IEtvcGthICoqKioqKioqIC0tIHZlcmZlaGx0CiAgbm9ybWFsLz8/PyBLb3BrYSA6IEhvdGhyb2cgKioqKioqKiogLS0gdmVyZmVobHQKS29wa2Egc3RlY2t0IGVpbiBTY2h3ZXJ0IHp1cnVlY2suCktvcGthIHNwcmljaHQgbWFnaXNjaGUgV29ydGUsIGRpZSwgenVzYW1tZW4gbWl0IGFiYXJ0aWdlbiBHZXN0ZW4sIGVpbmVuCndpbGRlbiwgZ2VmYWVocmxpY2hlbiBEYWVtb25lbiBhdXMgZGVuIFRpZWZlbiBkZXIgbmllZGVyZW4gRGltZW5zaW9uZW4gcnVmZW4uCkdyYWlvcCBlcnNjaGVpbnQgaW4gZWluZW0gTWVlciBhdXMgRmxhbW1lbi4KS29wa2EgenVlY2t0IGVpbiBTY2h3ZXJ0LgogIG5vcm1hbC9LcmFsbGVuIEdyYWlvcCA6IElya2l0aXMgKioqKioqKiogLS0gdmVyZmVobHQKaXJnZW5kd2FubiBpc3QgS29wa2EgZ2VzdG9yYmVuLi4uCi4uLiBVbmQgc2llIGthZW1wZmVuIHdlaXRlci4KICBub3JtYWwvU2Nod2VydCBDaGFvdCA6IEhvdGhyb2cgKioqKioqKiogLS0gdmVyZmVobHQKICBub3JtYWwvbGFuZ2VuIEtyYWxsIEhvdGhyb2cgOiBDaGFvdCAqKioqKioqKiAtLSB2ZXJmZWhsdApFaW4gQ2hhb3QgZ2FlaG50LgogIG5vcm1hbC9TY2h3ZXJ0IENoYW90IDogSG90aHJvZyAqKioqKioqKiAtLSB2ZXJmZWhsdAogIG5vcm1hbC9sYW5nZW4gS3JhbGwgSG90aHJvZyA6IENoYW90ICoqKioqKioqIC0tIGdldHJvZmZlbgpEZXIgQ2hhb3QgYnJpY2h0IHRvdCB6dXNhbW1lbi4KICBub3JtYWwvU2Nod2VydCBDaGFvdCA6IEhvdGhyb2cgKioqKioqKiogLS0gdmVyZmVobHQKICBub3JtYWwvbGFuZ2VuIEtyYWxsIEhvdGhyb2cgOiBDaGFvdCAqKioqKioqKiAtLSBoYXJ0CkRlciBDaGFvdCBicmljaHQgdG90IHp1c2FtbWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEVudHdhbnp1bmcgSUlJIChWYW5pciwgIDguIE1hciAyMDE2LCAxNjoyMjo1MCk6Cn4jISBybj1Ob3RzdHJvbSBydD0xNDU3NDUwNDIyIHJnPWQud2FsZAp+IyEgdGlkPTE0NTc0NTA0MjIKWml0YXQ6IEZpeCBhYndhcnRlbi4KOmtpY2hlcnQuClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogMjAuLTMwLjMuMjAxNiAoVmFuaXIsIDIwLiBNYXIgMjAxNiwgMTM6MDI6MDkpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTQ1ODQ3NTE4MSByZz1tYWdpZXIudXJsYXViCn4jISB0aWQ9MTQ1ODQ3NTE4MQpEYXMga2xpbmd0IGlyZ2VuZHdpZSBuYWNoIGVpbmVyIEF1ZmZvcmRlcnVuZyBrb21pc2NoZSBEaW5nZSB6dSB0dW4uIERhIGZhZWxsdAptaXIgYWJlciBnZXJhZGUgbnVyIGZvbGdlbmRlcyB6dSBlaW4sIG5hZW1saWNoIGVpbmVuIFNjaG9lbmVuIFVybGF1YiB6dQp3dWVuc2NoZW4uClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEaWUgWmVpdHVuZyBzaWVodCB6aWVtbGljaCBsZWVyIGF1cy4uLiAoRGVhbndvb2QsIDIzLiBNYXIgMjAxNiwgMDI6NTM6MDQpOgpIYWxsbyBNRydsZXIsCmlzdCBqYSBzY2hvbiBlaW5lIHdlaWxlIGhlciBzZWl0IGljaCBkYXMgbGV0enRlIG1hbCBkdXJjaCBkaWUgWmVpdHVuZyBoaWVyCmdlYmxhZXR0ZXJ0IGhhYmUgYWJlciBpcmdlbmR3aWUgaXN0IHNpZSB6aWVtbGljaCBsZWVyLiBIYWJ0IGlociBkYQphdWZnZXJhZXVtdCwgaW5lbiBqYSBlaW5pZ2UgQXJ0aWtlbCB6dSBmZWhsZW4gYWxzbyBpY2ggbWVpbmUgc28gZGllIGFlbHRlcmVuCmhhbHQsIGRhbWFscyBzdGFuZCBpcmdlbmR3aWUgZG9jaCBhdWNoIHdhcyBkcmluIDstKSBWaWVsbGVpY2h0IGhhYiBpY2ggZXMKbmljaHQgZ2FueiBtaXRiZWtvbW1lbiBpbiB3ZWxjaGVuIEFic3RuZGVuIHdpcmQgZGVubiBoaWVyIHNvIGR1cmNoZ2VmZWd0PwpFdWVyIERlYW5Xb29kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBaZWl0dW5nIHNpZWh0IHppZW1saWNoIGxlZXIgYXVzLi4uIChBbmF0b2wsIDI0LiBNYXIgMjAxNiwgMDk6Mzg6MDQpOgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2ODMgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjgyIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODY4MSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2ODAgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4Njc5IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODY3OCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2Nzcgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4Njc2IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODY3NSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2NzQgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjczIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODY3MiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2NzEgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjcwIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODY2OSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2Njggb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjY3IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODY2NiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2NjUgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjY0IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODY2MyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2NjIgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjYxIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODY2MCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2NTkgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjU4IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODY1NyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2NTYgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjU1IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODY1NCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2NTMgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjUyIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODY1MSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2NTAgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjQ5IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODY0OCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2NDcgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjQ2IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODY0NSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2NDQgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjQzIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODY0MiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2NDEgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjQwIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODYzOSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2Mzggb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjM3IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODYzNiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2MzUgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjM0IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODYzMyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2MzIgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjMxIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODYzMCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2Mjkgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjI4IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODYyNyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2MjYgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjI1IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODYyNCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2MjMgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjIyIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODYyMSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2MjAgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjE5IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODYxOCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2MTcgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjE2IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODYxNSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2MTQgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjEzIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODYxMiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2MTEgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjEwIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODYwOSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2MDggb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjA3IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODYwNiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2MDUgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjA0IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODYwMyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg2MDIgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NjAxIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODYwMCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1OTkgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTk4IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU5NyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1OTYgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTk1IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU5NCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1OTMgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTkyIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU5MSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1OTAgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTg5IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU4OCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1ODcgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTg2IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU4NSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1ODQgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTgzIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU4MiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1ODEgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTgwIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU3OSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1Nzggb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTc3IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU3NiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1NzUgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTc0IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU3MyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1NzIgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTcxIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU3MCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1Njkgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTY4IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU2NyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1NjYgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTY1IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU2NCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1NjMgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTYyIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU2MSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1NjAgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTU5IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU1OCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1NTcgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTU2IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU1NSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1NTQgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTUzIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU1MiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1NTEgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTUwIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU0OSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1NDggb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTQ3IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU0NiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1NDUgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTQ0IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU0MyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1NDIgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTQxIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODU0MCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1Mzkgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTM4IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODUzNyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1MzYgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTM1IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODUzNCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1MzMgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTMyIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODUzMSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1MzAgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTI5IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODUyOCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1Mjcgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTI2IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODUyNSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1MjQgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTIzIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODUyMiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1MjEgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTIwIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODUxOSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1MTggb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTE3IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODUxNiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1MTUgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTE0IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODUxMyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1MTIgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTExIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODUxMCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1MDkgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTA4IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODUwNyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1MDYgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTA1IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODUwNCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1MDMgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NTAyIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODUwMSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg1MDAgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDk5IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ5OCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0OTcgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDk2IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ5NSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0OTQgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDkzIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ5MiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0OTEgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDkwIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ4OSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0ODggb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDg3IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ4NiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0ODUgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDg0IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ4MyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0ODIgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDgxIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ4MCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0Nzkgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDc4IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ3NyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0NzYgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDc1IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ3NCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0NzMgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDcyIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ3MSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0NzAgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDY5IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ2OCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0Njcgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDY2IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ2NSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0NjQgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDYzIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ2MiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0NjEgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDYwIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ1OSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0NTggb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDU3IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ1NiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0NTUgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDU0IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ1MyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0NTIgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDUxIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ1MCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0NDkgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDQ4IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ0NyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0NDYgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDQ1IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ0NCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0NDMgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDQyIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQ0MSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0NDAgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDM5IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQzOCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0Mzcgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDM2IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQzNSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0MzQgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDMzIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQzMiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0MzEgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDMwIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQyOSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0Mjggb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDI3IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQyNiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0MjUgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDI0IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQyMyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0MjIgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDIxIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQyMCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0MTkgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDE4IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQxNyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0MTYgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDE1IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQxNCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0MTMgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDEyIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQxMSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0MTAgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDA5IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQwOCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0MDcgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDA2IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQwNSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0MDQgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDAzIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODQwMiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDg0MDEgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4NDAwIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODM5OSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDgzOTggb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4Mzk3IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODM5NiBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDgzOTUgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4Mzk0IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODM5MyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDgzOTIgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4MzkxIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODM5MCBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDgzODkgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4Mzg4IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODM4NyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDgzODYgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4Mzg1IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODM3OSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDgzNzggb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4Mzc0IG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODM3MyBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDgzNzIgb2c9c2NobWFycm4KfiMhIG9uPUFuYXRvbCBvdD0xNDU4ODA4MzcxIG9nPXNjaG1hcnJuCn4jISBvbj1BbmF0b2wgb3Q9MTQ1ODgwODM2OSBvZz1zY2htYXJybgp+IyEgb249QW5hdG9sIG90PTE0NTg4MDgzMzggb2c9c2NobWFycm4KfiMhIHJuPURlYW53b29kIHJ0PTE0NTg2OTc5ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xNDU4Njk3OTg0CkplIG5hY2ggUnVicmlrIHJhZXVtdCBzaWNoIGRpZSBaZWl0dW5nIG1hbCBzY2huZWxsZXIsIG1hbCB3ZW5pZ2VyCnNjaG5lbGwgc2VsYnN0IGF1Zi4gSW4gInNjaG1hcnJuIiBoYWJlbiBCZWl0cmFlZ2UgbnVyIGVpbmUgZWhlciBrdXJ6ZQpWZXJ3ZWlsZGF1ZXIsIGluICJldGlrZXR0ZSIgc3R1ZW5kZW4gc2llIGVyaGVibGljaCBsYWVuZ2VyLiAKCkRpZSBLb25maWd1cmF0aW9uIGlzdCBtZWluZXMgV2lzc2VucyBuaWNodCBvZWZmZW50bGljaCB6dWdhZW5nbGljaC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERpZSBaZWl0dW5nIHNpZWh0IHppZW1saWNoIGxlZXIgYXVzLi4uIChWYW5pciwgMjQuIE1hciAyMDE2LCAxMDoyODozMyk6Cn4jISBvbj1WYW5pciBvdD0xNDU4ODExNzEyIG9nPXNjaG1hcnJuCn4jISBvbj1WYW5pciBvdD0xNDU4ODExNzExIG9nPXNjaG1hcnJuCn4jISBvbj1WYW5pciBvdD0xNDU4ODExNzEwIG9nPXNjaG1hcnJuCn4jISBvbj1WYW5pciBvdD0xNDU4ODExNzA5IG9nPXNjaG1hcnJuCn4jISBvbj1WYW5pciBvdD0xNDU4ODExNzA4IG9nPXNjaG1hcnJuCn4jISBvbj1WYW5pciBvdD0xNDU4ODExNzA3IG9nPXNjaG1hcnJuCn4jISBvbj1WYW5pciBvdD0xNDU4ODExNzA2IG9nPXNjaG1hcnJuCn4jISBvbj1WYW5pciBvdD0xNDU4ODExNzA1IG9nPXNjaG1hcnJuCn4jISBvbj1WYW5pciBvdD0xNDU4ODExNzA0IG9nPXNjaG1hcnJuCn4jISBvbj1WYW5pciBvdD0xNDU4ODExNjkxIG9nPXNjaG1hcnJuCn4jISBvbj1WYW5pciBvdD0xNDU4ODExNjYxIG9nPXNjaG1hcnJuCn4jISBybj1BbmF0b2wgcnQ9MTQ1ODgwODY4NCByZz1zY2htYXJybgp+IyEgdGlkPTE0NTg2OTc5ODQKV2F0J24gc2Nyb2xsLgpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE11cmtzIG11cmtzISAoVmFuaXIsIDI0LiBNYXIgMjAxNiwgMTQ6NDU6MTkpOgp+IyEgcm49Tm90c3Ryb20gcnQ9MTQ1ODgyNzAxMiByZz1kLnZsYW5kCn4jISB0aWQ9MTQ1ODgyNzAxMgpEYXMgd2FyIHNpY2hlcmxpY2ggbnVyIGVpbiBmaWVzZXIgRGFlbW9uLiAtPiBLZWluIEhhbmRsdW5nc2JlZGFyZiwgYWxsZXMgaW4KYmVzdGVyIE9yZG51bmcuClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5hY2hvZXN0ZXJsaWNoZSBGcmV1ZGU6IENoaWxhbmEgd2llZGVyYXVmZXJzdGFuZGVuISAoQW5hdG9sLCAzMC4gTWFyIDIwMTYsIDIxOjE3OjI4KToKfiMhIHJuPU5vdHN0cm9tIHJ0PTE0NTkzNjQ0MzYgcmc9ZC53YWxkCn4jISB0aWQ9MTQ1OTM2MzM5NApOb3RzdHJvbSwgWmVyc3RvZXJlciB2b24gQXV0b2xvYWRlcm4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNhcGhpbmEgTGViZW5za3JhZnQgKEFuYXRvbCwgIDEuIEFwciAyMDE2LCAwODoxMjozMSk6Cn4jISBybj1HbG9pbnNvbiBydD0xNDU5NDYxNjAwIHJnPWdpbGRlbi5rbGVydXMKfiMhIHRpZD0xNDU5NDYxNjAwClB1aCEgRGFzIGthbSB3aXJrbGljaCBrZWluZSBTZWt1bmRlIHp1IGZydWVoIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCmF1ZndhY2hlbiBvZGVyIGVpbnNjaGxhZmVuPyAoVGluLCAgNS4gQXByIDIwMTYsIDIyOjIwOjAwKToKUm9zYWRlbGlhIHJ1ZnQ6IEF1ZndhY2hlbiA6KQpWb24gRnJldW5kIEJ1Z2ZpeDogZ3V0ZSBuYWNodAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBTbGFuZGVyc2NyZWUgKFpvb2ssIDMwLiBBcHIgMjAxNiwgMTk6MjA6MDIpOgp+IyEgcm49SHVtbmkgcnQ9MTQ2MjAzNjQ4NyByZz1kLnBvbGFyCn4jISB0aWQ9MTQ2MjAzNjQ4NwpXZW5uIGljaCBhbiBkaWUgdmllbGVuIFBhcnRpZXMgYW4gQm9yZCBkaWVzZXMgU2NoaWZmZXMgZGVua2UsIGRhbm4gLi4uCi4uLiBrb21tdCBuaWNodHMgYXVzIG1laW5lciBFcmlubmVydW5nIG5hY2ggb2Jlbi4gCgpXYXJ1bSBoYWJ0IElociBpbW1lciBvaG5lIG1pY2ggZ2VmZWllcnQ/Cgpab29rIHNjaG1vbGx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWUgU2xhbmRlcnNjcmVlIChHbG9pbnNvbiwgMzAuIEFwciAyMDE2LCAxOToyMjoyMyk6Cn4jISBybj1ab29rIHJ0PTE0NjIwMzY4MDIgcmc9c2NobWFycm4KfiMhIHRpZD0xNDYyMDM2NDg3CldpciBoYWJlbiBpbW1lciBlaW4gR2xhcyBmdWVyIGRpY2ggaW4gZGVyIEVja2UgenUgc3RlaGVuIGdlaGFidC4gS29taXNjaCwgZGllCkVyem1hZ2llciBtdWVzc2VuIHZlcmdlc3NlbiBoYWJlbiBkaXIgQmVzY2hlaWQgenUgZ2ViZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWUgU2xhbmRlcnNjcmVlIChDcm9mdCwgMzAuIEFwciAyMDE2LCAxOToyODowNCk6Cn4jISBybj1ab29rIHJ0PTE0NjIwMzY4MDIgcmc9c2NobWFycm4KfiMhIHRpZD0xNDYyMDM2NDg3CkRpZSBQYXJ0aWVzIHN0YW5kZW4gdW50ZXIgZGVtIE1vdHRvICJXZW5uIGR1IGRpY2ggZXJpbm5lcm4ga2FubnN0LCBkYW5uCndhcnN0IGR1IG5pY2h0IGRhYmVpLiIuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGllIFNsYW5kZXJzY3JlZSAoVGluLCAzMC4gQXByIDIwMTYsIDE5OjI5OjQ0KToKfiMhIHJuPUNyb2Z0IHJ0PTE0NjIwMzcyODQgcmc9c2NobWFycm4KfiMhIHRpZD0xNDYyMDM2NDg3CmRhIHMgaGVpc3Qgd2VuIGljIG1pYyBuaWMgZXJpbm5lcm4ga2FubiB3YXIgaWMgZGFiZWk/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEaWUgU2xhbmRlcnNjcmVlIChHbG9pbnNvbiwgMzAuIEFwciAyMDE2LCAxOTozMDowNCk6Cn4jISBybj1UaW4gcnQ9MTQ2MjAzNzM4NCByZz1zY2htYXJybgp+IyEgdGlkPTE0NjIwMzY0ODcKRmFzdC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBEaWUgU2xhbmRlcnNjcmVlIChDcm9mdCwgMzAuIEFwciAyMDE2LCAxOTozMDoxMyk6Cn4jISBybj1UaW4gcnQ9MTQ2MjAzNzM4NCByZz1zY2htYXJybgp+IyEgdGlkPTE0NjIwMzY0ODcKTmljaHQgdW5iZWRpbmd0LgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERpZSBTbGFuZGVyc2NyZWUgKFRpbiwgMzAuIEFwciAyMDE2LCAxOTozMDoyMyk6Cn4jISBybj1Dcm9mdCBydD0xNDYyMDM3NDEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ2MjAzNjQ4NwpvaCA6LSgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IERpZSBTbGFuZGVyc2NyZWUgKFphcGhvYiwgMzAuIEFwciAyMDE2LCAxOTozMzoyNyk6Cn4jISBybj1UaW4gcnQ9MTQ2MjAzNzQyMyByZz1zY2htYXJybgp+IyEgdGlkPTE0NjIwMzY0ODcKaWNoIGVyaW5uZXIgbWljaAp3aXIgd2FyZW4gYmVpZGUgdmVyZGFtbXQgY29vbAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChHbG9pbnNvbiwgIDEuIE1haSAyMDE2LCAxNDo0MTozOSk6CltBbGxnZW1laW46VGlqb10gYWx0ZXIgc2Nod2VkZSwsIGdlaHQgc2NyaXB0ZW4gc2NobmVsbCEgPFNvLCAxNDoyMTo1Mz4gClsuLi5dCltUb2Q6TGFyc10gRWluIFNjaHJlY2tlbnNtZWlzdGVyIGhhdCBnZXJhZGUgVGlqbyB1bWdlYnJhY2h0LiA8U28sIDE0OjQwOjM2PiAKW1RvZDpEZXIgU2NocmVja2Vuc21laXN0ZXJdIEljaCBiaW4gYmVydWZlbiwgRXVyZSBFeGlzdGVuemVuIGF1c3p1bG9lc2NoZW4hCltUb2Q6RGVyIFNjaHJlY2tlbnNtZWlzdGVyXSA8U28sIDE0OjQwOjM2PiAKCk5hamEuIFNjaG5lbGwuIEZhc3QgMjAgTWludXRlbiA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogRGllIFNsYW5kZXJzY3JlZSAoQXJrLCAgMS4gTWFpIDIwMTYsIDIxOjExOjU5KToKfiMhIHJuPVpvb2sgcnQ9MTQ2MjAzNjgwMiByZz1zY2htYXJybgp+IyEgdGlkPTE0NjIwMzY0ODcKV2VpbCBkaWUgUXVhbGl0YWV0IGRpZXNlciBob2Noc3RpbGlzaWVydGVuICJQYXJ0aWVzIiBzaWNoIG5pY2h0bWFsIG1pdApTdGVoaW1iaXNzIEJlY2hlcm92a2EgTml2ZWF1IG1lc3NlbiBrb25udGVuLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERpZSBTbGFuZGVyc2NyZWUgKE5vdHN0cm9tLCAgMS4gTWFpIDIwMTYsIDIxOjEzOjM5KToKfiMhIHJuPUFyayBydD0xNDYyMTI5OTE5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ2MjAzNjQ4NwpEYXMgc2NocmVpYnQgZXIgbnVyLCB3ZWlsIGlobSBkZXIgYW5nZWJvdGVuZSBUZXRyYXBhY2stRXNzaV5XUm90d2VpbiBuaWNodApnZXNjaG1lY2t0IGhhdC4KClNDTlIsCk5vdHN0cm9tLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGllIFNsYW5kZXJzY3JlZSAoQXJrLCAgMS4gTWFpIDIwMTYsIDIxOjE5OjIyKToKfiMhIHJuPU5vdHN0cm9tIHJ0PTE0NjIxMzAwMTkgcmc9c2NobWFycm4KfiMhIHRpZD0xNDYyMDM2NDg3Ckd1dCwgZGFzcyAiZXIiIGRpZXNlIFdlaW5lIG5pY2h0IGtlbm50LCB2aWVsbGVpY2h0LCB3ZWlsICJlciIga2VpbiBCZWRhcmYgYW4KU2FldXJlYmFlZGVybiBoYXQgOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRGllIFNsYW5kZXJzY3JlZSAoR2xvaW5zb24sICAxLiBNYWkgMjAxNiwgMjI6MjI6MTEpOgp+IyEgcm49QXJrIHJ0PTE0NjIxMzAzNjIgcmc9c2NobWFycm4KfiMhIHRpZD0xNDYyMDM2NDg3CkljaCB2ZXJtdXRlIGVoZXIsIGRhc3MgQXJrIGRpZSBQZmlmZmUgYmVpIHNlaW5lbSBTdHJpcCBuYWNoIGRlbSBzaWViemVobnRlbgpCZWNoZXJvdmthIG1pc3NpbnRlcnByZXRpZXJ0IGhhdCB1bmQgZGVzaGFsYiBnbmF0emlnIGlzdC4gQWxrb2hvbCB1bmQgQXJrLAprZWluZSBndXRlIE1pc2NodW5nLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IERpZSBTbGFuZGVyc2NyZWUgKEFyaywgIDEuIE1haSAyMDE2LCAyMjo1MTo0OCk6Cn4jISBybj1HbG9pbnNvbiBydD0xNDYyMTM0MTMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ2MjAzNjQ4NwpBQSsgd3VlcmRlIGRlciBJbnZlc3RtZW50IEJhbmtlciBsZXNlbiB1bmQgZ2llcmlnIGludmVzdGllcmVuLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IERpZSBTbGFuZGVyc2NyZWUgKFJ1bWF0YSwgIDEuIE1haSAyMDE2LCAyMzowNTo1NCk6Cn4jISBybj1BcmsgcnQ9MTQ2MjEzNTkwOCByZz1zY2htYXJybgp+IyEgdGlkPTE0NjIwMzY0ODcKSW5oYWxpZXJlbj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoWmFwaG9iLCAgNy4gTWFpIDIwMTYsIDIxOjEyOjIzKToKW1RvZDpMYXJzXSBFaW5lIENvY2thdHJpY2UgaGF0IGdlcmFkZSBJbGxlcHJhIHVtZ2VicmFjaHQuCltUb2Q6RWluZSBDb2NrYXRyaWNlXSBEdSB3b2xsdGVzdCBlcyBzbywgRGVpbiBMZWJlbiBpY2ggdmVyYnJhdWNoJywgc3B1ZXJlLCBvaApbVG9kOkVpbmUgQ29ja2F0cmljZV0gSWxsZXByYSwgbWVpbmVuIEhhdWNoLiAKW0FsbGdlbWVpbjpUaWpvXSBoZWouLi4gd2llIGtyaWVndCBtYW4gZGllIHN0YXR1ZSBrYXB1dHQ/CltUb2Q6TGFyc10gRWluZSBDb2NrYXRyaWNlIGhhdCBnZXJhZGUgVGlqbyB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgQ29ja2F0cmljZV0gRHUgd29sbHRlc3QgZXMgc28sIERlaW4gTGViZW4gaWNoIHZlcmJyYXVjaCcsIHNwdWVyZSwgb2gKW1RvZDpFaW5lIENvY2thdHJpY2VdIFRpam8sIG1laW5lbiBIYXVjaC4gCltCZWlsZWlkOklsbGVwcmFdIGFjaCBtYW5uLi4uIHNlbGJzdCB0aWpvIGlzdCBhbiBkZXIgZ2VzdG9yYmVuIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSXJnZW5kd2llIHVuaGVpbWxpY2ggLi4uIChOb3RzdHJvbSwgIDkuIE1haSAyMDE2LCAwMjowMjo1NSk6Cj4ga3dlciBuaWNodCBpZGxlCgogICAgICBMaXN0ZSBkZXIgTWl0c3BpZWxlciB2b20gTW9uLCAgOS4gTWFpIDIwMTYsIDAyOjAxOjA5ICgyIFRlaWxuZWhtZXIpICAgIAoKTm9zdHJvbW8uLi4uLi4uLi5zIE5vdHN0cm9tLi4uLi4uLi4uUgoKU0NOUiwKTm90c3Ryb21bb10uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbiBpcmdlbmR3aWUgbW9kZXJuZXMgQmlsZC4uLiAoQW5hdG9sLCAgOS4gTWFpIDIwMTYsIDA3OjE4OjAwKToKfiMhIG9uPUFuYXRvbCBvdD0xNDYyNzcxMDczIG9nPXd3dwp+IyEgcm49UnVtYXRhIHJ0PTE0NjI1Mjk5NzAgcmc9d3d3Cn4jISB0aWQ9MTQ2MjQ4Mzg5OApEYXMgU2l6aW5nIGRlciBNb2JpbGVzIGdlaHQgamEgYXVjaCBtZWhyIHVuZCBtZWhyIGF1ZiBkaWUgR2ViZXRzYnVjaGdyb2Vzc2UKenUuIEJhZWNrIHR1IHNlIHJ1aHRzLiA6KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVoLW9oIC4uLiAoTm90c3Ryb20sIDE1LiBNYWkgMjAxNiwgMTI6NTM6NDEpOgpFaW4gZW50c2V0emxpY2hlciBTY2hyZWkgaGFsbHQgdm9tIEZyaWVkaG9mIGhlcnVlYmVyLgpUYXJhbWFyIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KClNOQ1IsCk5vdHN0cm9tLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFVoLW9oIC4uLiAoVGFyYW1hciwgMTUuIE1haSAyMDE2LCAxMjo1NDoxNSk6Cn4jISBybj1Ob3RzdHJvbSBydD0xNDYzMzA5NjIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ2MzMwOTYyMQppY2ggYmluIGdlcmFkZSBhdWZlcnN0YW5kZW4gOk8KCnRhcmFtYXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVWgtb2ggLi4uIChSdW1hdGEsIDE1LiBNYWkgMjAxNiwgMTQ6MjQ6MzgpOgp+IyEgcm49VGFyYW1hciBydD0xNDYzMzA5NjU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ2MzMwOTYyMQpBdWZlci0gb2RlciAtZ2VzdGFuZGVuPyBLbGluZ3Qgc28gbmFjaCBMZWdvc3RlaW5lbiB2b3JtIEJldHQuIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVWgtb2ggLi4uIChUYXJhbWFyLCAxNS4gTWFpIDIwMTYsIDE1OjE0OjU2KToKfiMhIHJuPVJ1bWF0YSBydD0xNDYzMzE1MDc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ2MzMwOTYyMQppbiB1bnNlcmVtIGhhdXMgZ2lidCBlcyBrZWluZSBsZWdvc3RlaW5lLgoKdGFyYW1hcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVWgtb2ggLi4uIChaYXBob2IsIDE1LiBNYWkgMjAxNiwgMTU6NDE6MTgpOgp+IyEgcm49VGFyYW1hciBydD0xNDYzMzE4MDk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ2MzMwOTYyMQpFcyBnaW5nIGRvY2ggdW0gZXR3YXMsIGRhcyBzY2hyZWllbmQgdm9tIEZyaWVkaG9mIGF1ZmVyc3RhbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVoLW9oIC4uLiAoR2xvaW5zb24sIDE1LiBNYWkgMjAxNiwgMTU6NDM6NTApOgp+IyEgcm49VGFyYW1hciBydD0xNDYzMzA5NjU1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ2MzMwOTYyMQouLi5hdXMgUnVpbmVuLCB1bmQgZGVyIFp1a3VuZnQgenVnZXdhbmR0LCBsYXNzIHVucyBkaXIgenVtIEd1dGVuIGRpZW5lbiwKTW9yJ25ncmF1J24gZWluaWcgTXVkZGVybGFuZCAuLi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBVaC1vaCAuLi4gKFJ1bWF0YSwgMTYuIE1haSAyMDE2LCAxMzoyMjoxNik6Cn4jISBybj1HbG9pbnNvbiBydD0xNDYzMzE5ODMwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ2MzMwOTYyMQpNdWFoYWhhLCBhYiBqZXR6dCBiZXppZWhlIGljaCAiZGVpbmUgbXVkZGVyIiBhdWYgYXVjaCBhbGxlLiA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVm9ydHJhZWdlPyAoWm9vaywgMjUuIE1haSAyMDE2LCAwOTo1NDoxNSk6Cn4jISBvbj1ab29rIG90PTE0NjQxNjI4NTAgb2c9cGFydHkKfiMhIHJuPVplc3N0cmEgcnQ9MTQ2NDEyMDM3MCByZz1wYXJ0eQp+IyEgdGlkPTE0NjMyNjczNzcKIlNjaHJlaWJlIGVpbmUgUXVlc3QgaW4gZWluZXIgTGFtYmRhLUNsb3N1cmUiIAoKQWNoLCBkZXIgR2FnIGxpZWYgc2Nob24sIGd1dCwgZGFubiBuaWNodC4gCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBWb3J0cmFlZ2U/IChDcm9mdCwgMjUuIE1haSAyMDE2LCAwOTo1NzoyNSk6Cn4jISBybj1ab29rIHJ0PTE0NjQxNjI4NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xNDYzMjY3Mzc3CktvbW10IE11YWRpYj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogRm9yc2NoZXJwdW5rdGUgYXVzZ2V0cmFnZW4gKENoYWdhbGwsIDI2LiBNYWkgMjAxNiwgMTY6NDI6NTApOgp+IyEgcm49QnVnZml4IHJ0PTE0NjQyNzMzMTcgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTE0NjQxMjczNzgKSXN0IGRvY2ggZ3V0IHdlbm5zIGthdW0gYmVzY2hyaWViZW4gaXN0LCBpc3QgZGFzIFVudGVyc3VjaGVza3JpcHQgc2NobmVsbGVyCmZlcnRpZyA6KQoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwOiBGb3JzY2hlcnB1bmt0ZSBhdXNnZXRyYWdlbiAoWmVzc3RyYSwgMjYuIE1haSAyMDE2LCAxODoyMTozOSk6Cn4jISBybj1FbGVuZGlsIHJ0PTE0NjQyNzk1MjYgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTE0NjQxMjczNzgKU28gZ2VzZWhlbiBrb2VubnRlIG1hbiBhdWNoIHNhZ2VuOiBuZXVlIEZQcyBpbiBhbHRlbiBHZWJpZXRlbiBpc3QgZWluIFZvcnRlaWwKYXVmIFNlaXRlIG5ldWVyIENoYXJzLCBrZWluIE5hY2h0ZWlsIGZ1ZXIgYWx0ZSBDaGFycy4gKmcqCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMTogRm9yc2NoZXJwdW5rdGUgYXVzZ2V0cmFnZW4gKEVsZW5kaWwsIDI2LiBNYWkgMjAxNiwgMTg6MjU6MDUpOgp+IyEgcm49WmVzc3RyYSBydD0xNDY0Mjc5Njk5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ2NDEyNzM3OApKZWluIDopCk5ldWVyIFNwaWVsZXIgKyBtZWhyIEZQcwpBbHRlciBTcGllbGVyICsgbWVociBGUHMsIGFiZXIgaW4gZWluZW0gYmVyZWl0cyBiZWthbm50ZW4gR2ViaWV0LiBFcyBnZWh0Cmluc2Jlc29uZGVyZSB1bSBkaWVzZW4gUHVua3QgZnVlciBtaWNoLiBJY2ggc2NoYXVlIG1pciBkaWUgc2VsYmVuIERldGFpbHMgbm9jaAplaW5tYWwgYW4gdW5kIGRhcyBnZW5lcmllcnQgZGVuIGdyb3NzZW4gTmFjaHRlaWwgZnVlciBtaWNoLCB3ZWlsIGljaCBldmVudHVlbGwKZGFzIEdlYmlldCBuaWNodCBzcGFubmVuZCBmYW5kLiBEYXMgUHJvYmxlbSBoYWJlbiBuZXVlIFNwaWVsZXIgbmljaHQsIGRhcwpHZWJpZXQgaXN0IHNvIG9kZXIgc28gbmV1IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMjogRm9yc2NoZXJwdW5rdGUgYXVzZ2V0cmFnZW4gKFplc3N0cmEsIDI2LiBNYWkgMjAxNiwgMTg6MjY6MjYpOgp+IyEgcm49RWxlbmRpbCBydD0xNDY0Mjc5OTA1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ2NDEyNzM3OApKYSwgZ2VuYXUsIGVpbiBWb3J0ZWlsIGZ1ZXIgbmV1ZSBDaGFycy4gRnVlciBhbHRlIGFlbmRlcnQgc2ljaCBqYSBuaXguCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogRm9yc2NoZXJwdW5rdGUgYXVzZ2V0cmFnZW4gKEVsZW5kaWwsIDI2LiBNYWkgMjAxNiwgMTg6Mjg6NTcpOgp+IyEgcm49WmVzc3RyYSBydD0xNDY0Mjc5OTg2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ2NDEyNzM3OApEb2NoLCBuYXR1ZXJsaWNoLiBFcyBnaWJ0IGpldHp0IEZQcyBpbiBhbHRlbiBHZWJpZXRlbiwgZGllIGljaCBnZ2ZzIGdlZnVuZGVuCmhhZXR0ZSwgamV0enQgbXVzcyBpY2ggYWJlciBlcm5ldXQgaGluLCBvYndvaGwgaWNoIGRvcnQgYmVyZWl0cyBhbGxlcyBrZW5uZS4KRGFzIGlzdCBlaW4gTmFjaHRlaWwuIEVpbiBuZXVlciBTcGllbGVyIGtvbm50ZSBkaWVzZSBGUHMgbm9jaCBuaWNodCBnZWZ1bmRlbgpoYWJlbiB1bmQgZm9yc2NodCBkYXMgR2ViaWV0IHp1bSBlcnN0ZW4gTWFsIGFiLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjQ6IEZvcnNjaGVycHVua3RlIGF1c2dldHJhZ2VuIChFbGVuZGlsLCAyNi4gTWFpIDIwMTYsIDE4OjMzOjE1KToKfiMhIHJuPUVsZW5kaWwgcnQ9MTQ2NDI4MDEzNyByZz1zY2htYXJybgp+IyEgdGlkPTE0NjQxMjczNzgKV2lyIHNpbmQgamEgYmVpIFNjaG1hcnJuLCBhbHNvIDopCkFubmFobWUgMjAgbmV1ZSBGUHMgaW0gR2ViaWV0OgotIG5ldWVyIFNwaWVsZXIga2FubiAyMCthbHRlIEZQcyBtaXQgZWlubWFsIEFiZm9yc2NoZW4gZXJyZWljaGVuLgotIGFsdGVyIFNwaWVsZXIga2FubiBkYXMgZ2xlaWNoZSBFcmdlYm5pcyBudXIgZHVyY2ggendlaWZhY2hlcyBBYmZvcnNjaGVuCmVycmVpY2hlbi4KCjIwIG5ldWUgRlBzIHVuZCBqZWRlciBleGlzdGllcmVuZGUgU3BpZWxlciBlcmhhZWx0IGRpZXNlIGF1dG9tYXRpc2NoOgotIG5ldWVyIFNwaWVsZXI6IGthbm4gYWxsZSBGUHMgbWl0IGVpbm1hbCBhYmZvcnNjaGVuIGZpbmRlbiwgbXVzcyBhYmVyCndhaHJzY2hlaW5saWNoIHNlaHIgZ3J1ZW5kbGljaCBzZWluLCB3YXMgZXZlbnR1ZWxsIGFsdGUgU3BpZWxlciBhdWNoIGluCkxvZXN1bmcgMSB3YXJlbi4KLSBhbHRlciBTcGllbGVyOiBiZWtvbW10IHp1c2FldHpsaWNoZSBGUHMsIG11c3MgbmljaHQgZXJuZXV0IGhpbi4KLSBHZWJpZXQgYXVzZ2V3b2dlbgoKRGlza3V0aWVyZSBkYXMgZ2VybmUgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBGb3JzY2hlcnB1bmt0ZSBhdXNnZXRyYWdlbiAoWmVzc3RyYSwgMjYuIE1haSAyMDE2LCAxODozMzozMCk6Cn4jISBybj1FbGVuZGlsIHJ0PTE0NjQyODAxMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xNDY0MTI3Mzc4CkRhbm4gdmVyc3RlaCBpY2ggbmljaHQsIGlud2lld2VpdCBlcyBlaW4gVm9ydGVpbCBmdWVyIGFsdGUgQ2hhcnMsIGFiZXIga2VpbgpOYWNodGVpbCBmdWVyIG5ldWUgQ2hhcnMgaXN0LCB3ZW5uIHdpciBDaGFycyBhZWx0ZXIgeCAxMDAgRlAKYXV0by1ndXRzY2hyZWliZW4sIGRpZSB3aXIgQ2hhcnMgbmV1ZXIgeCBuaWNodCBndXRzY2hyZWliZW4uCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNTogRm9yc2NoZXJwdW5rdGUgYXVzZ2V0cmFnZW4gKEVsZW5kaWwsIDI2LiBNYWkgMjAxNiwgMTg6Mzc6MDApOgp+IyEgcm49WmVzc3RyYSBydD0xNDY0MjgwNDEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ2NDEyNzM3OApXaWUgYmVzY2hyaWViZW4sIGRlciBOYWNodGVpbCBmdWVyIG5ldWUgU3BpZWxlciB3YWVyZSwgZGFzcyBzaWUgZ2dmcyBuaWNodAphbGxlIGRpZXNlIGd1dGdlc2NocmllYmVuZW4gRlBzIGZpbmRlbiwgYWJlciBzaWUga29lbm50ZW4gbWl0IGdnZnMgZGVtCmdsZWljaGVuIEF1ZndhbmQsIGRlbiBlaW4gYWx0ZXIgU3BpZWxlciBiZXJlaXRzIGluIGRhcyBHZWJpZXQgaW52ZXN0aWVydCBoYXQuCkRhcyBpc3QgZWluIHBvdGVudGllbGxlciByZWxhdGl2ZXIgTmFjaHRlaWwuIFdlbm4gRHUgZWluZW4gQm9udXMgYmVpIGFuZGVyZW4sCmRlciBEaWNoIG5pY2h0IG5lZ2F0aXYgYmVlaW5mbHVzc3QgYWxzIE5hY2h0ZWlsIGRlZmluaWVyc3QsIHdhcyBpY2ggbmljaHQgdHVlbgp3dWVyZGUsIGRhbm4gamEsIGlzdCBlcyBkaWVzZXIgcG90ZW50aWVsbGVyIHJlbGF0aXZlIE5hY2h0ZWlsLiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBGb3JzY2hlcnB1bmt0ZSBhdXNnZXRyYWdlbiAoTm90c3Ryb20sIDI2LiBNYWkgMjAxNiwgMTg6Mzg6MTYpOgp+IyEgcm49RWxlbmRpbCBydD0xNDY0MjgwNjIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ2NDEyNzM3OApEdSBzcHJpY2hzdCBqZXR6dCBudXIgdm9uIGFsdGVuIFNwaWVsZXJuLCBkaWUgYmVyZWl0cyBtZWhyIGFscyBuJSBkZXIgRlAKaW4gYmVzYWd0ZW0gR2ViaWV0IGhhYmVuPyBPZGVyIGdlbmVyZWxsIHZvbiBhbGxlbiBhbHRlbiBTcGllbGVybj8KCk5vdHN0cm9tLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IEZvcnNjaGVycHVua3RlIGF1c2dldHJhZ2VuIChFbGVuZGlsLCAyNi4gTWFpIDIwMTYsIDE4OjQyOjQ1KToKfiMhIHJuPU5vdHN0cm9tIHJ0PTE0NjQyODA2OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xNDY0MTI3Mzc4CkRhcyBpc3QgZWluZSBndXRlIEZyYWdlLCB3YXMgd3VlcmRlIG1pdCBTcGllbGVybiBwYXNzaWVyZW4sIGRpZSBkaWVzZW4gQXVmd2FuZApub2NoIG5pY2h0IGJldHJpZWJlbiBoYWJlbi4gQWJlciBhdWNoIGFuIGRlciBTdGVsbGUsIHd1ZXJkZSBpY2ggc2FnZW4sCmd1dHNjaHJlaWJlbi4gRGFtaXQgd2lyZCBkYXMgR2ViaWV0IGZ1ZXIgZGllc2VuIGFsdGVuIFNwaWVsZXIsIGRlciBkYXMgZ2ViaWV0Cm5pY2h0IGtlbm50IG5pY2h0IGF0dHJha3RpdmVyLCBhYmVyIGVyIGhhdCBhdWNoIGtlaW5lbiBOYWNodGVpbCwgc29uZGVybiBkZW4KVm9ydGVpbCBkZXIgRlBzLgpOYWphLCB3aXIgZHJpZnRlbiBldHdhcyBhYi4gR3J1bmRzYWV0emxpY2ggZ2lsdCwgd2VubiBlaW5lIFZlcmFlbmRlcnVuZwp2b3JnZW5vbW1lbiB3aXJkLCBnaWJ0IGVzIGtlaW5lIExvZXN1bmcsIGRpZSBhbGxlIGdsZWljaHN0ZWxsdC4gTWF0aGVtYXRpc2NoCmphLCBhYmVyIG5pY2h0IG1laHIsIHdlbm4gbWFuIGVpbmthbGt1bGllcnQsIGRhc3MgZGFzIGVybmV1dGUgQWJmb3JzY2hlbiB2b24KR2ViaWV0ZW4gZWluIHN1Ympla3RpdmVyIE5hY2h0ZWlsIHNlaW4ga2Fubi4KR2xhdWJlIG1laW5lIE1laW51bmcgaXN0IGtsYXIuIERBbmtlIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogRm9yc2NoZXJwdW5rdGUgYXVzZ2V0cmFnZW4gKENyb2Z0LCAyOS4gTWFpIDIwMTYsIDAwOjE0OjMwKToKfiMhIHJuPUdub21lIHJ0PTE0NjQ0NzA1MDIgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTE0NjQxMjczNzgKRGVyIFRvcGxpc3RlbmFyZ3VtZW50YXRpb24gbmFjaDogZGVyIFp3ZWl0ZSBpc3QgZGVyIGVyc3RlIFZlcmxpZXJlci4KRGEgaGF0IG51ciBlaW5lciBtaXR6dXJlZGVuLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk11c2NoZWwgZ2VudXNjaGVsdCBlcmdpYnQgLi4uLiA/IChBcmssIDI5LiBNYWkgMjAxNiwgMTE6NDQ6NDIpOgpOb3RzdHJvbSBkZW5rdCAgIC4gbyBPIChzb2xsIGljaCB3YXMgenUgbXVzY2hlbG4gbnVzY2hlbG4/IDopKQpEZWluIEZyZXVuZCBNdXBmZWwga251ZGRlbHQgRGljaCBhdXMgZGVyIEZlcm5lLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVmZmVrdGl2ZSBBYndlaHIgKEdub21lLCAzMC4gTWFpIDIwMTYsIDIxOjA4OjU3KToKRGVyIERhZW1vbiBob2x0IHNpY2ggSGlsZmUuCkR1IHdlaHJzdCBkZW4gU3BydWNoIGFiLgoKU2F1YmVyIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBpbSBBbmZhZW5nZXJ0dXRvcmlhbC4uLiAoTG9jYWxob3JzdCwgIDYuIEp1biAyMDE2LCAyMzozMzowNCk6CkZlaW4sIGRhcyBoYXN0IER1IGFsc28gZ2VzY2hhZmZ0LiBKZXR6dCwgZGEgRHUgd2Vpc3N0LCB3aWUgbWFuIHNlaW5lIFVtZ2VidW5nCmFuc2NoYXV0LCBrb21tZW4gd2lyIHp1bSBuYWVjaHN0ZW4gVGhlbWE6CgpEYXMgTW9yZ2VuR3JhdWVuIGVyeml0dGVydCB1bnRlciBlaW5lbSBsYW5nZ2V6b2dlbmVuLCB1bm1lbnNjaGxpY2hlbiBTY2hyZWkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpoZWlzZS5kZSAuLi4gKEFuYXRvbCwgIDguIEp1biAyMDE2LCAwNzo1NToyNyk6CiJEaWUgVm9yZnd1ZXJmZSAuLi4uIHNlaWVuIGtvbXBsZXR0IGZhbHNjaCIsIHNjaHJlaWJ0IFsuLi5dIGluIGVpbmVtIAphdXNmdWVocmxpY2hlbiBTdGF0ZW1lbnQgYXVmIFR3aXR0ZXIuIgoKPHR3aXRjaCE+CkF1c2Z1ZWhybGljaGVzIFN0YXRlbWVudC4KVHdpdHRlci4KPHR3aXRjaCE+CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaGVuIHRoZSBkZWFkIGNhbiBzZWUgYW5kIGZlZWwgLi4uIChCbHV0Z2llciwgIDEuIEp1bCAyMDE2LCAxMzo1MToyMyk6ClBhcmFjZWxzdXMgc2FndDogVGphLCBCbHV0Z2llciwgZGFzIG5hZWNoc3RlIG1hbCBzb2xsdGVzdCBEdSBiZXNzZXIKUGFyYWNlbHN1cyBzYWd0OiBhdWZwYXNzZW4sIHdvaGluIER1IGdlaHN0LgpEZWluIEJldXRlbGJvdmlzdCB6dWNrdCBlaW4gd2VuaWcuIFZpZWxsZWljaHQgZmVobHQgaWhtIGV0d2FzLiBTY2hhdSBkb2NoIG1hbApyZWluLgoKRGllIGhhYmVuIHZpZWxsZWljaHQgU29yZ2VuISBEdSBsaWVnc3QgaGllciB1bmQga2FubnN0IERpY2ggbmljaHQgbWVocgpiZXdlZ2VuLiBEZWluZSBMZWljaGUgdmVycm90dGV0IGxhbmdzYW0uIFVuZCBQYXJhY2Vsc3VzIHVuZCBkZXIgVG9kCnVudGVyaGFsdGVuIHNpY2gsIGFscyBnYWViZSBlcyBqZXR6dCBuaWNodHMgd2ljaHRpZ2VyZXMgenUgdHVuIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbm1hbCBuaWNodCBhdWZnZXBhc3N0IC4uLiAoTWlyYWthLCAxMy4gSnVsIDIwMTYsIDEzOjA1OjQzKToKQWxzIGRlciBXaW5kIGV0d2FzIERyZWNrIGF1ZndpcmJlbHQsIG1laW5zdCBEdSwgYW0gQm9kZW4gZWluIEZ1bmtlbG4genUgc2VoZW4uCkVpbiBGcm9zY2ggaHVlcGZ0IGhlcmVpbi4KRWluIEZyb3NjaCBodWVwZnQgbmFjaCBvYmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQmVydWVobXRlIGxldHp0ZSBXb3J0ZSAoWmFwaG9iLCAxNC4gSnVsIDIwMTYsIDE2OjMyOjIzKToKVG9za28gZmFlbmd0IHZvbGxlciBQYW5payBhbiB1bSBIaWxmZSB6dSBydWZlbi4KVG9za28gZmFlbmd0IHZvbGxlciBQYW5payBhbiB1bSBIaWxmZSB6dSBydWZlbi4KVG9za28gZmFlbmd0IHZvbGxlciBQYW5payBhbiB1bSBIaWxmZSB6dSBydWZlbi4KU3RhcmxpZ2h0IHJ1ZnQ6IFdhcyBpc3QgbG9zPwpbQWxsZ2VtZWluOlRvc2tvXSB1cHBzIF5eCltBbGxnZW1laW46VG9za29dIFNvcnJ5IF5eCltBbGxnZW1laW46VG9za29dIGFjaCBpY2ggc3RlcmJlIG51ciAuLi4gZ2xhdWJlIGljaCBeXgpbQWxsZ2VtZWluOlRvc2tvXSBEYWNodGUgZGFzIHdhZXJlIHN5bnRheCAqaHVzdCoKW0FsbGdlbWVpbjpTdGFybGlnaHRdIHdvIGRlbm4/CltUb2Q6TGFyc10gVHJlaWJzYW5kIGhhdCBnZXJhZGUgVG9za28gdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlcnR2b2xsZXIgVGlwIChIdXJheHByYXgsIDIzLiBKdWwgMjAxNiwgMDk6NDk6MTMpOgpIdW5ncmlnIHN0dWVyemVuIHNpY2ggZWluaWdlIFNlZXZvZWdlbCBhdWYgZGllIEZsdW5kZXIuIEJpbm5lbiBrdXJ6ZW0gaGFiZW4Kc2llIGFsbGVzIHJlc3Rsb3MgdmVycHV0enQuCkVpbmUgTW9ld2Uga3JhZWNoenQ6IEljaCBoYWJlIGRhIHRhdHNhZWNobGljaCB2b24gZWluZXIgQXVmZ2FiZSBnZWhvZXJ0LCBhbgpFaW5lIE1vZXdlIGtyYWVjaHp0OiBkZXIgRHUgRGljaCB2ZXJzdWNoZW4ga29lbm50ZXN0OiBCZWdpYiBEaWNoIGFuIGRpZQpFaW5lIE1vZXdlIGtyYWVjaHp0OiBvc3RrcnlsYWlzY2hlIEt1ZXN0ZSB1bmQgZnVldHRlcmUgZGllIGh1bmdyaWdlbgpFaW5lIE1vZXdlIGtyYWVjaHp0OiBTZWV2b2VnZWwhCltBYmVudGV1ZXI6RWluIHNhdHRlciBTZWV2b2dlbF0gSHVyYXhwcmF4IGhhdCB1bnMgZ2VmdWV0dGVydCEgRGFua2UhIERhZnVlcgpbQWJlbnRldWVyOkVpbiBzYXR0ZXIgU2Vldm9nZWxdIGVyemFlaGxlbiB3aXIgaWhtLCB3YXMgZnVlciBHZXJ1ZWNodGUgd2lyCltBYmVudGV1ZXI6RWluIHNhdHRlciBTZWV2b2dlbF0gYXVmZ2VzY2huYXBwdCBoYWJlbi4KCm9mZmVuYmFyIHdvbGxlbiBkaWUgbm9jaCBtZWhyIEZpc2NoIDspCgpodXJheAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmEsIG9iIGljaCBoaWVyIHJpY2h0aWcgYmluIC4uLiAoQXJrLCAyNS4gSnVsIDIwMTYsIDIwOjIyOjIxKToKaHR0cDovL21pY2hhZWxtb29yZS5jb20vdHJ1bXB3aWxsd2luLwoKU2NoYXVuIHdpciBtYWwuLi4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2Nod2VydG1laXN0ZXJzY2h3ZXJ0ZXIgKEFuYXRvbCwgIDEuIEF1ZyAyMDE2LCAxMjoyMDoyMCk6Cn4jISBybj1BcmF0aG9ybiBydD0xNDY5ODc3MTA3IHJnPWQuZWJlbmUKfiMhIHRpZD0xNDY5ODc3MTA3CkJhbGFuY2UgaXN0IGF1Y2ggbmljaHQgbWVociwgd2FzIHNpZSBtYWwgd2FyLiA6LVAKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNjaHdlcnRtZWlzdGVyc2Nod2VydGVyIChDcm9mdCwgIDIuIEF1ZyAyMDE2LCAwMDo0MjowOCk6Cn4jISBybj1BbmF0b2wgcnQ9MTQ3MDA0NjgyMCByZz1zY2htYXJybgp+IyEgdGlkPTE0Njk4NzcxMDcKRHUgbWVpbnN0IGRpZSBCYWxhbmNlIGhhdCBrZWluZSBndXRlIFZvcnN0ZWxsdW5nIHZvbiBhbmdlbWVzc2VuPyAgRHUga2FubnN0Cmdlcm5lIHdpZWRlciBha3RpdiB3ZXJkZW4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2Nod2VydG1laXN0ZXJzY2h3ZXJ0ZXIgKEFuYXRvbCwgIDIuIEF1ZyAyMDE2LCAwNzo0NDowNCk6Cn4jISBybj1Dcm9mdCBydD0xNDcwMDkxMzI4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ2OTg3NzEwNwpJY2ggYmV0dGVsJyBqYSBzY2hvbiBKQUhSRSBkYXJ1bSwgZGFzcyBkaWUgQmFsYW5jZS1WZXJvZWZmZW50bGljaHVuZ2VuCmltIE1QQS1BcmNoaXYgYXVmdGF1Y2hlbi4gQWJlciBkYXMgaXN0IHVudGVyIGRlciBXdWVyZGUgZGVyIEVyem1hZ2llci46LSkKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBTY2h3ZXJ0bWVpc3RlcnNjaHdlcnRlciAoR2xvaW5zb24sICAyLiBBdWcgMjAxNiwgMDg6MTU6MTYpOgp+IyEgcm49QW5hdG9sIHJ0PTE0NzAxMTY2NDQgcmc9c2NobWFycm4KfiMhIHRpZD0xNDY5ODc3MTA3CkRlaW4gQXJzY2ggd2FyIGVpbmZhY2ggenUgZmxhY2guIEVzIGdpbHQgUmVnZWxuIGJlaW0gb3JkZW50bGljaGUgS290YXUgenUKYmVmb2xnZW4uCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR2VnZW5zdGFlbmRlIGluIG1pciAoWmFwaG9iLCAgMi4gQXVnIDIwMTYsIDE3OjA5OjAyKToKPiBzdGVjayBzY2hhdWZlbCBpbiBib3Zpc3QKRGVyIEJldXRlbGJvdmlzdCBmcmV1dCBzaWNoLgpEdSBzdGVja3N0IGRpZSBTY2hhdWZlbCBpbiBkZW4gQmV1dGVsYm92aXN0Lgo+IHNjaGF1IGJvdmlzdApTb3dhcyBzaWVoc3QgRHUgZGEgbmljaHQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2VnZW5zdGFlbmRlIGluIG1pciAoUnVtYXRhLCAgMi4gQXVnIDIwMTYsIDE3OjU1OjE3KToKfiMhIHJuPVphcGhvYiBydD0xNDcwMTUwNTQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ3MDE1MDU0MgpFaW4gQm92aXN0IHdpcmQgdmVybWlzKHMpdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBWb3JzcGllZ2VsdW5nIGZhbHNjaGVuIFNvbm5lbmxpY2h0cyAoWmFwaG9iLCAxOC4gQXVnIDIwMTYsIDAzOjI3OjAzKToKfiMhIHJuPU5vdHN0cm9tIHJ0PTE0NzE0MjA5OTggcmc9ZC52bGFuZAp+IyEgdGlkPTE0NzE0MjA5OTgKU2NoZWludCB6dSBmdW5rdGlvbmllcmVuLgoKRHUgbGVua3N0IGRpZSBTdHJhaGxlbiBkZXIgU29ubmUgdWViZXIgRGVpbmVuIEhhbmRzcGllZ2VsIEdyYXNjaGkgZGlyZWt0IGluCmRpZSBBdWdlbiB1bmQgYmxlbmRlc3Qgc2llIHNvLgo+IEdyYXNjaGkgZ3Vja3QgdmVydHJhZXVtdCBpbiBkaWUgR2VnZW5kLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIG1hY2h0IGRlciBHb2V0dGVyIChCdWdmaXgsIDE5LiBBdWcgMjAxNiwgMjA6MTQ6NDgpOgpOZXR0ZXIgVHlwbyBtZWluZXJzZWl0cyBiZWkgZWluZW0gR2VzcHJhZWNoIHVlYmVyIGRpZSBIaWxmc21pdHRlbHRlY2hub2xvZ2llCnZvbiBpT1MgLi4uCgpEdSB0ZWlsc3QgWCBtaXQ6IHpvb2sgdmVyZ3JvZXNzZXJ0IGFsbGVzLiBkYXMgaXMgYWxzIHd1ZXJkc3QgZHUgbmUgbHVwZQpEdSB0ZWlsc3QgWCBtaXQ6IGJlbnV0emVuLgoKQnVnZml4CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGllIG1hY2h0IGRlciBHb2V0dGVyIChUaW4sIDE5LiBBdWcgMjAxNiwgMjA6MTU6MjcpOgp+IyEgcm49QnVnZml4IHJ0PTE0NzE2MzA0ODggcmc9c2NobWFycm4KfiMhIHRpZD0xNDcxNjMwNDg4Cjpncmluc3QgYnJlaXQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogVm9yc2NobGFnIGZ1ZXIgRnJlbWRlbmZ1ZWhyZXIgKEh1cmF4cHJheCwgMTkuIEF1ZyAyMDE2LCAyMzowMDoxMCk6Cn4jISBybj1Ob3RzdHJvbSBydD0xNDcxNjQwMjg5IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTQ3MTIwOTc2NQpEYW1hbHMgZ2FicyBqYSBkaWUgIkNpY2Vyb25lIi4gS2xpbmd0IGF1Y2ggaGFybWxvc2VyIGFscyBGdWVocmVyIG9kZXIgRHVjZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBWb3JzY2hsYWcgZnVlciBGcmVtZGVuZnVlaHJlciAoVGluLCAxOS4gQXVnIDIwMTYsIDIzOjAwOjQ1KToKfiMhIHJuPUh1cmF4cHJheCBydD0xNDcxNjQwNDEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ3MTIwOTc2NQpnaWJ0IHMgZGllIG5pYyBtZWhyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IFZvcnNjaGxhZyBmdWVyIEZyZW1kZW5mdWVocmVyIChIdXJheHByYXgsIDE5LiBBdWcgMjAxNiwgMjM6MDM6MjQpOgp+IyEgcm49VGluIHJ0PTE0NzE2NDA0NDUgcmc9c2NobWFycm4KfiMhIHRpZD0xNDcxMjA5NzY1Ck9oLCBnaWJ0cyBub2NoIHVuZCBpY2ggYmluIGVzIHNvZ2FyIG5vY2ggd2VubiBpY2ggd2VuaWdlciBhbHMgNSBtaW4gaWRsZSBiaW4sCndhcyBhdWNoIHBhc3N0LiBBbHNvIHN0ZWhlIGFscyBGcmVtZGVuLSBvZGVyIEJlcmdmdWVocmVyLCBjaWNlcm9uZSwgZ3VpZGUsCmd1aWEsIHRvdXQgZXRjLiB6dXIgVmVyZnVlZ3VuZyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VubiBzcGllbGVyIGRpZSBaZWl0IHZvcmRyZWhlbi4gKFRhcmFtYXIsIDIxLiBBdWcgMjAxNiwgMTg6MzQ6NDApOgpYIHRlaWx0IGRpciBtaXQ6IHVlYmVybGVnIGdlcmFkZSB3YXMgaWNoIGpldHp0IG1hY2hlLgpEdSB0ZWlsc3QgeCBtaXQ6IGRpZSB6ZWl0IHZvcmRyZWhlbiBkYW1pdCBpY2ggbWVpbmVuIHdvbHBlcnRpbmdlciBmZXJ0aWcKYmFzdGVsbiBrYW5uLgoKRWluIFN0ZWluYm9jayBrb21tdCBhbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRyYW1hISAoTWlyYWthLCAyMi4gQXVnIDIwMTYsIDIzOjAwOjM2KToKVHJlYmxpaCBzYWd0OiBEYXMgaXN0IHNjaGxpbW1lIEt1bmRlLCBkaWUgRHUgZGEgYnJpbmdzdC4gV2lyIHdlcmRlbiBtZWhyIEJpZXIKVHJlYmxpaCBzYWd0OiBicmF1ZW4uClRyZWJsaWggYnJ1ZWxsdDogU2NodWV0dGVsbiEgSW1tZXIgc2Nob2VuIHNjaHVldHRlbG4sIExldXRlIQpUcmVibGloIHN0ZWh0IGt1cnogdm9yIGVpbmVtIE5lcnZlbnp1c2FtbWVuYnJ1Y2guClRyZWJsaWggYnJ1ZWxsdDogU2NodWV0dGVsbiEgSW1tZXIgc2Nob2VuIHNjaHVldHRlbG4sIExldXRlIQoKU2NobGltbSBzY2hsaW1tIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFid2Vuc2VuZCB2b20gMjYuMDggLSAyOS4wOC4gKE1vb25zaGluZSwgMjQuIEF1ZyAyMDE2LCAxODowNjoyMSk6Cn4jISBybj1DaGFnYWxsIHJ0PTE0NzIwMzY3NTcgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTE0NzIwMzY3NTcKRGFzIGhvZXJ0IHNpY2ggYW4sIGFscyBoYWV0dGVzdCBEdSBTb3ppYWxzdHVuZGVuIGF1ZmdlYnJ1bW10IGJla29tbWVuPyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWJ3ZW5zZW5kIHZvbSAyNi4wOCAtIDI5LjA4LiAoR2xvaW5zb24sIDI0LiBBdWcgMjAxNiwgMTg6NTc6NTQpOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTE0NzIwNTQ3ODEgcmc9c2NobWFycm4KfiMhIHRpZD0xNDcyMDM2NzU3Ckthbm5uaWNoc2VpbiwgZGFubiB3dWVyZCBlciBqYW1tZXJuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClZpYnJhdGlvbnMgLi4uIGFnYWluIChBcmssIDI1LiBBdWcgMjAxNiwgMDA6MTU6MDIpOgpEanRvbSB0ZWlsdCBEaXIgbWl0OiBpY2ggYmluIGdlZ2VuIGFsbGVzIHdhcyAibGVpY2h0IiB2aWJyaWVydApEanRvbSB0ZWlsdCBEaXIgbWl0OiB3ZW5uIGljaCBtaXIgZGVuIHNhdHogbm9jaG1hbCBzbyBkdXJjaGxlc2UuLiBtYWNodCBlciBqYQpEanRvbSB0ZWlsdCBEaXIgbWl0OiBkdXJjaGF1cyBzaW5uIC4uIGFiZXIgZGl2LiBtYWdpZXIgd3VlcmRlbiBkYXMgc29mb3J0CkRqdG9tIHRlaWx0IERpciBtaXQ6IHVudGVyIHNjaG1hcm4gcG9zdGVuIC4uIF5eCgpTdGV0cyB6dSBEaWVuc3RlbiEKCkV1ZXIgZXJnZWJlbmVyCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFZpYnJhdGlvbnMgLi4uIGFnYWluIChEanRvbSwgMjUuIEF1ZyAyMDE2LCAwMDoyMToxOCk6Cn4jISBybj1BcmsgcnQ9MTQ3MjA3NjkwMiByZz1zY2htYXJybgp+IyEgdGlkPTE0NzIwNzY5MDIKRXMgd2FyIHp3YXIga2VpbmUgQXVmZm9yZGVydW5nLCBhYmVyIGRhbmtlLiBTbyBrYW5uIG1hbiBzaWNoIGF1Y2ggdmVyZXdpZ2VuCjotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQWJ3ZW5zZW5kIHZvbSAyNi4wOCAtIDI5LjA4LiAoQ2hhZ2FsbCwgMjUuIEF1ZyAyMDE2LCAwNzoxNzoyMik6Cn4jISBybj1HbG9pbnNvbiBydD0xNDcyMDU3ODc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ3MjAzNjc1NwpJY2ggamFtbWVyZSBuaWNodCwgYmluIGRvY2gga2VpbiBLYWVtcGZlci4gCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQWJ3ZW5zZW5kIHZvbSAyNi4wOCAtIDI5LjA4LiAoQW5hdG9sLCAyNS4gQXVnIDIwMTYsIDEwOjUyOjE1KToKfiMhIHJuPUNoYWdhbGwgcnQ9MTQ3MjEwMjI0MiByZz1zY2htYXJybgp+IyEgdGlkPTE0NzIwMzY3NTcKRGFzIG1pdCBkZW0gIlZlcmV3aWdlbiIgaXN0IGltIFVlYnJpZ2VuIGVpbmUgYWJzb2x1dCB0cmVmZmVuZGUKV29ydHdhaGwuIE1laW4gZXJzdGVzIEVyc2NoZWluZW4gaW0gTW9yZ2VuZ3JhdWVuIGlzdCBhdWNoIGR1cmNoCmRpZSBNUEEsIGVpbmVtIGFsdGVuIFNwaWVsZXIgbmFtZW5zIEJ1bmdsZSB1bmQgZGVyIFJ1YnJpayB3aXR6ZSBvZGVyCnNjaG1hcnJuIGdlc2NodWxkZXQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRlbXBlbCB1bmQgSGF1c3RpZXJlIChHbG9pbnNvbiwgMzEuIEF1ZyAyMDE2LCAxODowODo0MSk6Cn4jISBybj1Ob3RzdHJvbSBydD0xNDcyNjU4MDI4IHJnPWQud3Vlc3RlCn4jISB0aWQ9MTQ3MjY1ODAyOApXaXJkIGRhcyBqZXR6dCBlaW4gV2VpdHBpc3N3ZXR0YmV3ZXJiPwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVGVtcGVsIHVuZCBIYXVzdGllcmUgKERqdG9tLCAzMS4gQXVnIDIwMTYsIDE4OjA5OjU5KToKfiMhIHJuPUdsb2luc29uIHJ0PTE0NzI2NTk3MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xNDcyNjU4MDI4CkljaCB6aWVsIHNjaG9ubWFsIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogVGVtcGVsIHVuZCBIYXVzdGllcmUgKEFyYXRob3JuLCAzMS4gQXVnIDIwMTYsIDE4OjExOjE0KToKfiMhIHJuPURqdG9tIHJ0PTE0NzI2NTk3OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xNDcyNjU4MDI4ClppZWxlbiBrYW5uc3RlIGRpciBzcGFyZW4sIHdlbm4gZGllIFJlaWNod2VpdGUgZWggbmljaHQgcGFzc3QuIF06LT4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRlbXBlbCB1bmQgSGF1c3RpZXJlIChEanRvbSwgMzEuIEF1ZyAyMDE2LCAxODoxMjozNik6Cn4jISBybj1BcmF0aG9ybiBydD0xNDcyNjU5ODc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ3MjY1ODAyOApJY2ggd2V0dGUgbWl0IGRpciB1bSAuLi4uIGljaCB0cmVmZmUgZ2VuYXUgaW4gZGFzIEdsYXMuIDotKQpTb2xsdGUgamEgYWxsZ2VtZWluIGJla2FubnQgc2VpbiBkYXMgZGllIFdldHRlIHNlaHIgLi4uIHNpbm52b2xsIGlzdCA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFRlbXBlbCB1bmQgSGF1c3RpZXJlIChHbG9pbnNvbiwgMzEuIEF1ZyAyMDE2LCAxODoyNzo1Mik6Cn4jISBybj1BcmF0aG9ybiBydD0xNDcyNjU5ODc0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ3MjY1ODAyOApGaW9uZ2VyIHdlZyB2b24gQXJrc2hhdCBHYXJ0ZW5zY2hsYXVjaC4gRGVuIGJyYXVjaHQgZXIgbm9jaCwgdW0gZGllClVuZ2xhZXViaWdlbiAoKikgenUgc3ByZW5nZW4gLi4uCgooKikgYWxsZSBhbmRlcmVuICgqKikKKCoqKSBiZXNvbmRlcnMgZGllamVuaWdlLCBkaWUgYmxhbmsgZ2V6b2dlbiBoYWJlbgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IFRlbXBlbCB1bmQgSGF1c3RpZXJlIChHbG9pbnNvbiwgMzEuIEF1ZyAyMDE2LCAxODoyODoyMCk6Cn4jISBybj1EanRvbSBydD0xNDcyNjU5OTU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ3MjY1ODAyOApNYW4gZGFyZiBkaWNoIGFsc28gYXVmIGRlciAyNS1KYWhyZXMtUGFydHkgZXJ3YXJ0ZW4/IDoqKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVpbiBBYmVuZCBhbSBTYW5kdGlnZXIgKEh1cmF4cHJheCwgIDIuIFNlcCAyMDE2LCAyMjo1MDozMCk6CkxhYmVyc2NobmFiZWwga3JhZWNoenQ6IC4uLiBrcnJyb29vYWFhIC4uLiBIYWxsbyBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsCkxhYmVyc2NobmFiZWwga3JhZWNoenQ6IGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLApMYWJlcnNjaG5hYmVsIGtyYWVjaHp0OiBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwKTGFiZXJzY2huYWJlbCBrcmFlY2h6dDogZWluZSBMZWljaGUsIFN0YWxrbWUsIExseXN0cmF0aGUsIGVpbmUgTGVpY2hlLCBlaW5lCkxhYmVyc2NobmFiZWwga3JhZWNoenQ6IExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZQpMYWJlcnNjaG5hYmVsIGtyYWVjaHp0OiBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUKTGFiZXJzY2huYWJlbCBrcmFlY2h6dDogTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIFN0YWxreW91LCBTdGFsa21lLApMYWJlcnNjaG5hYmVsIGtyYWVjaHp0OiBLbGVyaWtlciwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZQpMYWJlcnNjaG5hYmVsIGtyYWVjaHp0OiBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUKTGFiZXJzY2huYWJlbCBrcmFlY2h6dDogTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIFN0YWxreW91LCBTdGFsa21lLApMYWJlcnNjaG5hYmVsIGtyYWVjaHp0OiBLbGVyaWtlciwgTGx5c3RyYXRoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lCkxhYmVyc2NobmFiZWwga3JhZWNoenQ6IExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZQpMYWJlcnNjaG5hYmVsIGtyYWVjaHp0OiBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsCkxhYmVyc2NobmFiZWwga3JhZWNoenQ6IEV1c2ViaXVzLCBTdGFsa3lvdSwgU3RhbGttZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLApMYWJlcnNjaG5hYmVsIGtyYWVjaHp0OiBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwKTGFiZXJzY2huYWJlbCBrcmFlY2h6dDogZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsCkxhYmVyc2NobmFiZWwga3JhZWNoenQ6IGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgTWFsaWUgdW5kIFN0b25ld29sZiAuLi4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRWluIEFiZW5kIGFtIFNhbmR0aWdlciAoRGp0b20sICAyLiBTZXAgMjAxNiwgMjI6NTU6MjApOgp+IyEgcm49SHVyYXhwcmF4IHJ0PTE0NzI4NDk0MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xNDcyODQ5NDMwCkVpbmUgTGVpY2hlIHNjaGx1cmZ0IGhlcmVpbi4KRWluZSBMZWljaGUgc2NobHVyZnQgaGVyZWluLgpTdGFsa21lIGZsYXR0ZXJ0IGhlcmVpbi4KU3RhbGt5b3UgZmxhdHRlcnQgaGVyZWluLgpMYWJlcnNjaG5hYmVsIGZsYXR0ZXJ0IGhlcmVpbi4KU3RhbGttZSBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZQpTdGFsa21lIGtyYWVjaHp0OiBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLApTdGFsa21lIGtyYWVjaHp0OiBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwKU3RhbGttZSBrcmFlY2h6dDogTGFiZXJzY2huYWJlbCwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZQpTdGFsa21lIGtyYWVjaHp0OiBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLApTdGFsa21lIGtyYWVjaHp0OiBlaW5lIExlaWNoZSwgS2xlcmlrZXIsIExseXN0cmF0aGUsIEh1cmF4cHJheCwgTWFsaWUsIFJhbXNlcwpTdGFsa21lIGtyYWVjaHp0OiB1bmQgZWluIFNhbmR0aWdlciAuLi4KU3RhbGt5b3Uga3JhZWNoenQ6IC4uLiBrcnJyb29vYWFhIC4uLiBIYWxsbyBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUKU3RhbGt5b3Uga3JhZWNoenQ6IExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsClN0YWxreW91IGtyYWVjaHp0OiBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZQpTdGFsa3lvdSBrcmFlY2h6dDogTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwKU3RhbGt5b3Uga3JhZWNoenQ6IGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgTW9vbnNoaW5lLCBMbHlzdHJhdGhlLCBEanRvbSwKU3RhbGt5b3Uga3JhZWNoenQ6IEh1cmF4cHJheCwgTWFsaWUsIFJhbXNlcywgU3RvbmV3b2xmIHVuZCBMYWJlcnNjaG5hYmVsIC4uLgpMYWJlcnNjaG5hYmVsIGtyYWVjaHp0OiAuLi4ga3Jycm9vb2FhYSAuLi4gSGFsbG8gZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLApMYWJlcnNjaG5hYmVsIGtyYWVjaHp0OiBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwKTGFiZXJzY2huYWJlbCBrcmFlY2h6dDogZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgRXVzZWJpdXMsCkxhYmVyc2NobmFiZWwga3JhZWNoenQ6IFN0YWxreW91LCBTdGFsa21lLCBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUKTGFiZXJzY2huYWJlbCBrcmFlY2h6dDogTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lCkxhYmVyc2NobmFiZWwga3JhZWNoenQ6IExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZQpMYWJlcnNjaG5hYmVsIGtyYWVjaHp0OiBMZWljaGUsIEtsZXJpa2VyLCBMbHlzdHJhdGhlLCBSYW1zZXMsIFN0b25ld29sZiB1bmQKTGFiZXJzY2huYWJlbCBrcmFlY2h6dDogZWluIFNhbmR0aWdlciAuLi4KS2xlcmlrZXIga3JhZWNoenQ6IC4uLiBrcnJyb29vYWFhIC4uLiBIYWxsbyBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUKS2xlcmlrZXIga3JhZWNoenQ6IExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsCktsZXJpa2VyIGtyYWVjaHp0OiBlaW5lIExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwKS2xlcmlrZXIga3JhZWNoenQ6IFN0YWxreW91IHVuZCBMYWJlcnNjaG5hYmVsIC4uLgpMbHlzdHJhdGhlIGtyYWVjaHp0OiAuLi4ga3Jycm9vb2FhYSAuLi4gSGFsbG8gZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lCkxseXN0cmF0aGUga3JhZWNoenQ6IExlaWNoZSwgZWluZSBMZWljaGUsIGVpbmUgTGVpY2hlLCBlaW5lIExlaWNoZSwgZWluZQpMbHlzdHJhdGhlIGtyYWVjaHp0OiBMZWljaGUgdW5kIExhYmVyc2NobmFiZWwgLi4uCk1vb25zaGluZSBhZWNoenQuCk1vb25zaGluZSBmbGllZ3QgbmFjaCBXZXN0ZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVpbiBBYmVuZCBhbSBTYW5kdGlnZXIgKEVsZW5kaWwsICAyLiBTZXAgMjAxNiwgMjM6MDE6MjkpOgp+IyEgcm49RGp0b20gcnQ9MTQ3Mjg0OTcyMCByZz1zY2htYXJybgp+IyEgdGlkPTE0NzI4NDk0MzAKRGFzIFBhcnR5bW9uc3RlciBnaWJ0IERpciBlaW4gS2lzc2VuLgpEYXMgUGFydHltb25zdGVyIGdpYnQgZGVyIExlaWNoZSBlaW4gS2lzc2VuLgpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEVpbmUgTGVpY2hlIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogRWluZSBMZWljaGUgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEVpbmUgTGVpY2hlIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogRWluZSBMZWljaGUgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEVpbmUgTGVpY2hlIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogRWluZSBMZWljaGUgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEVpbmUgTGVpY2hlIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogRWluZSBMZWljaGUgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW4gS2lzc2VuIQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IEVpbmUgTGVpY2hlIGhhdCBkb2NoIHNjaG9uIGVpbiBLaXNzZW4hCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogRWluZSBMZWljaGUgaGF0IGRvY2ggc2Nob24gZWluIEtpc3NlbiEKRGFzIFBhcnR5bW9uc3RlciBnaWJ0IERlZWRvIGVpbiBLaXNzZW4uCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBTdGFsa21lIGVpbiBLaXNzZW4uCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBSYXZlbmxvcmQgZWluIEtpc3Nlbi4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IExhYmVyc2NobmFiZWwgZWluIEtpc3Nlbi4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IEtsZXJpa2VyIGVpbiBLaXNzZW4uCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBMbHlzdHJhdGhlIGVpbiBLaXNzZW4uCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBEanRvbSBlaW4gS2lzc2VuLgpEYXMgUGFydHltb25zdGVyIGdpYnQgSHVyYXhwcmF4IGVpbiBLaXNzZW4uCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBNYWxpZSBlaW4gS2lzc2VuLgpEYXMgUGFydHltb25zdGVyIGdpYnQgUmFtc2VzIGVpbiBLaXNzZW4uCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBTdG9uZXdvbGYgZWluIEtpc3Nlbi4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IGRlbSBTYW5kdGlnZXIgZWluIEtpc3Nlbi4KUmFtc2VzIHNjaG1pZWd0IHNpY2ggYW4gU3RvbmV3b2xmcyBCZWluZS4KU3RhbGttZSBrcmFlY2h6dDoga3Jyb29hYSAuLi4gRmxvaHNhY2sgCkRhcyBQYXJ0eW1vbnN0ZXIgc2FndDogSWNoIGdlYmUgRGlyIGFsbGVzIHdhcyBpY2ggZGFiZWkgaGFiZSwgd2VubiBEdSBtaWNoIHdpZQpEYXMgUGFydHltb25zdGVyIHNhZ3Q6IGZvbGd0IGJpdHRlc3Q6IHNhZyBwYXJ0eW1vbnN0ZXIgZ2liIDx3ZW0+IDx3YXM+LiBBdWYKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBXdW5zY2ggdmVyc2Nod2luZGUgaWNoIGF1Y2ggb2RlciBob2xlIFN1c2FubmUuCkRhcyBQYXJ0eW1vbnN0ZXIgbWFjaHQgZWluZW4gS25pY2sgaW4gZGllIFRyb2V0ZSB1bmQgd2lyZnQgc2llIHdlaXQgd2VnLgpSYXZlbmxvcmQgc2FndDogcGFydHltb25zdGVyIGdpYiBhbGxlbiBqb2ludApEYXMgUGFydHltb25zdGVyIGdpYnQgRGlyIGVpbmVuIEpvaW50LgpEYXMgUGFydHltb25zdGVyIGdpYnQgZGVyIExlaWNoZSBlaW5lbiBKb2ludC4KRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBzYWd0OiBFaW5lIExlaWNoZSBoYXQgZG9jaCBzY2hvbiBlaW5lbiBKb2ludCEKRGFzIFBhcnR5bW9uc3RlciBnaWJ0IERlZWRvIGVpbmVuIEpvaW50LgpEYXMgUGFydHltb25zdGVyIGdpYnQgU3RhbGttZSBlaW5lbiBKb2ludC4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IFJhdmVubG9yZCBlaW5lbiBKb2ludC4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IExhYmVyc2NobmFiZWwgZWluZW4gSm9pbnQuCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBLbGVyaWtlciBlaW5lbiBKb2ludC4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IExseXN0cmF0aGUgZWluZW4gSm9pbnQuCkRhcyBQYXJ0eW1vbnN0ZXIgZ2lidCBEanRvbSBlaW5lbiBKb2ludC4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IEh1cmF4cHJheCBlaW5lbiBKb2ludC4KRGFzIFBhcnR5bW9uc3RlciBnaWJ0IE1hbGllIGVpbmVuIEpvaW50LgpEYXMgUGFydHltb25zdGVyIGdpYnQgUmFtc2VzIGVpbmVuIEpvaW50LgpEYXMgUGFydHltb25zdGVyIGdpYnQgU3RvbmV3b2xmIGVpbmVuIEpvaW50LgpEYXMgUGFydHltb25zdGVyIGdpYnQgZGVtIFNhbmR0aWdlciBlaW5lbiBKb2ludC4KTGFiZXJzY2huYWJlbCBrcmFlY2h6dDogLi4uIHBhcnR5bW9uc3RlciBnaWIgYWxsZW4gLi4uIHBhcnR5bW9uc3RlciBnaWIgYWxsZW4KTGFiZXJzY2huYWJlbCBrcmFlY2h6dDogLi4uIApFaW5lIExlaWNoZSBzZXR6dCBzaWNoIGhpbiB1bmQgcmF1Y2h0IGVpbmVuIEpvaW50LgpMYWJlcnNjaG5hYmVsIHNldHp0IHNpY2ggaGluIHVuZCByYXVjaHQgZWluZW4gSm9pbnQuCkVpbiBTYW5kdGlnZXIgc2V0enQgc2ljaCBoaW4gdW5kIHJhdWNodCBlaW5lbiBKb2ludC4KU3RhbGttZSBzZXR6dCBzaWNoIGhpbiB1bmQgcmF1Y2h0IGVpbmVuIEpvaW50LgpLbGVyaWtlciBzZXR6dCBzaWNoIGhpbiB1bmQgcmF1Y2h0IGVpbmVuIEpvaW50LgpMbHlzdHJhdGhlIHNldHp0IHNpY2ggaGluIHVuZCByYXVjaHQgZWluZW4gSm9pbnQuClJhbXNlcyBzZXR6dCBzaWNoIGhpbiB1bmQgcmF1Y2h0IGVpbmVuIEpvaW50LgpFaW5lIExlaWNoZSB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpMYWJlcnNjaG5hYmVsIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpWb24gRnJldW5kIE1vb25zaGluZTogYW5kZXJzcnVtIGtlbm50IG1hbiBhYmVyLCBkYXMgdmVyd2lycnQKVm9uIEZyZXVuZCBNb29uc2hpbmU6IGRhbm4gd2VuaWdlciA6LSkKRWluIFNhbmR0aWdlciB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KU3RhbGttZSB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KS2xlcmlrZXIgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCkxseXN0cmF0aGUgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuClJhbXNlcyB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KRGllIExlaWNoZSBzYWd0OiA8SGljaz4hCkVpbmUgTGVpY2hlIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgaWhyZW0gSm9pbnQgZWluZ2VodWVsbHQuCkxhYmVyc2NobmFiZWwgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCkVpbiBTYW5kdGlnZXIgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuClN0YWxrbWUgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCktsZXJpa2VyIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpMbHlzdHJhdGhlIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpSYW1zZXMgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCkRpZSBMZWljaGUgc2FndDogPEhpY2s+IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmV1bGljaCBhbSBUaWdlciAuLi4gKERqdG9tLCAyMi4gU2VwIDIwMTYsIDAxOjM1OjM1KToKU3RhbGttZSBrcmFlY2h6dDoga3Jyb29hYSAuLi4gMTI1IERoYWxiYWVya25vY2hlbi4gMTI1IERoYWxiYWVya25vY2hlbi4uLgpTdGFsa21lIGtyYWVjaHp0OiBrcnJvb2FhIC4uLiBOb3RzdHJvbW8/IEJpc3QgRHUgZXM/CltUb2Q6TGFyc10gU2hpbGEgaGF0IGdlcmFkZSBKYW1hbCB1bWdlYnJhY2h0LgpbQmVpbGVpZDpBcmtdIERpZSBIZWVyZSBkZXIgSG9lbGxlbiBrb21wb25pZXJlbiBkaWUgJ0RhZW1vbmVuZGFlbW1lcnVuZycuCltCZWlsZWlkOlNhcmF5XSBhdWEuLi4KW0JlaWxlaWQ6UmhvdmFuXSBEOgpbQmVpbGVpZDpBcmtdIHNpY2hlciBkaWUsIGJlaSBkZXIgbWFuIG5pY2h0IGZsaWVoZW4ga2FubiA6KQpBbiBBcms6IFN0YWxrbWUga3JhZWNoenQ6IGtycm9vYWEgLi4uIDEyNSBEaGFsYmFlcmtub2NoZW4uIDEyNQpBbiBBcms6IERoYWxiYWVya25vY2hlbi4uLgpEdSBncmluc3QgQXJrIGF1cyBkZXIgRmVybmUgYW4uCltCZWlsZWlkOkRqdG9tXSBiZWlsZWlkIDovClZvbiBBcms6IFRJRVJNSVNTQlJBVUNIIC4uLiBpY2ggemVpZyBkaWNoIGFuIDopClZvbiBGcmV1bmQgQXJrOiBrbm9jaGVuZmV0aXNjaGlzdGVuLCBhbGxlc2FtdCEKU3RhbGttZSBrcmFlY2h6dDoga3Jyb29hYSAuLi4gTm90c3Ryb21vPyBCaXN0IER1IGVzPwpTdGFsa3lvdSBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIEFyayAuLi4KU3RhbGttZSBrcmFlY2h6dDogLi4uIGtycnJvb29hYWEgLi4uIEhhbGxvIEFyayAuLi4KCi4gbyAwIHdhcyBzb2xsIG1hbiBkYSBub2NoIHNhZ2VuIC4uIDAgbyAuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTmV1bGljaCBhbSBUaWdlciAuLi4gKFJob3ZhbiwgMjIuIFNlcCAyMDE2LCAwMTo0MzozOCk6Cn4jISBybj1EanRvbSBydD0xNDc0NTAwOTM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ3NDUwMDkzNQpBcmsgZGVua3QgICAuIG8gTyAoZGVubiBzaWUgd2lzc2VuIG5pY2h0LCB3YXMgc2llIGtyYWVjaHplbikKU3RhbGttZSBrcmFlY2h6dDoga3Jyb29hYSAuLi4gRWluZSA2IGluIERldXRzY2g/IEhhYiBkb2NoIGdldWVidCBtaXQgRHUhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE5ldWxpY2ggYW0gVGlnZXIgLi4uIChEanRvbSwgMjIuIFNlcCAyMDE2LCAwMzo0MTowNCk6Cn4jISBybj1SaG92YW4gcnQ9MTQ3NDUwMTQxOCByZz1zY2htYXJybgp+IyEgdGlkPTE0NzQ1MDA5MzUKS2xlcmlrZXIga3JhZWNoenQ6IC4uLiBrcnJyb29vYWFhIC4uLiBIYWxsbyBlaW4gT2JqZWt0LCBlaW4gQ2hhb3QsIGVpbiB1ZWJsZXIKS2xlcmlrZXIga3JhZWNoenQ6IERhZW1vbiwgZWluIENoYW90LCBLb3BrYSwgZWluIFNjaG5lZWxhdXJlciwgZWluIFBvbGFyZnVjaHMsCktsZXJpa2VyIGtyYWVjaHp0OiBTYXJheSwgRGp0b20sIFN0YWxreW91IHVuZCBlaW4gU2FuZHRpZ2VyIC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEF1cyBnZWdlYmVuZW0gQW5sYXNzLi4uIChBbmF0b2wsICA0LiBPa3QgMjAxNiwgMTM6MDY6MjMpOgp+IyEgcm49SHVtbmkgcnQ9MTQ3NDY2ODI1NyByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTQ3NDY2ODI1NwpvY2gsIGljaCBmYW5kIGRpZSAuLi4gYWVoLi4uIHNwaWVsZXJzZWl0aWdlIEFobmR1bmcgdm9sbGdlc2NyaXB0ZXRlcgpad2VpdGllcyBtaXQgRmVybnN0ZXVlcnVuZyBkYW1hbHMgemllbWxpY2ggd2l0emlnLiBXaXIgaGFldHRlbiBkZW4gCkNoYXIgdmllbGxlaWNodCBub2NoIGF1cyBkZXIgR2lsZGUgYXVzdHJldGVuIGxhc3NlbiBzb2xsZW4sIGFiZXIuLi4gbmFqYSwKd2lyIGZhbmRlbiwgZXMgcmVpY2h0IGF1cywgaWhuIGVpbiBwYWFyIG1hbCBzdGVyYmVuIHp1IGxhc3NlbiB1bmQgaWhuCmRhenUgenUgYmV3ZWdlbiwgc2VpbmVtIEVyc3RpZSBlaW5lIEVtYWlsIHp1IHNjaHJlaWJlbi4gOy0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKR29ldHRlciBzcHJlY2hlbiBpbW1lciB3YWhyISAoWmVzc3RyYSwgIDQuIE9rdCAyMDE2LCAxOTo1NTo1OCk6Clpvb2sgZGVua3QgICAuIG8gTyAoV2VyIGpldHp0IG5pY2t0LCBsYW5kZXQgYmVpIExhcnMuLi4uKQpab29rIG5pY2t0IHp1c3RpbW1lbmQuClpvb2sgc2FndDogb29wcwpab29rIGZhZWxsdCB0b3QgenUgQm9kZW4uClpvb2sgdmVyc2Nod2luZGV0IGdhbnogbGVpc2UuCltUb2Q6TGFyc10gWm9vayBoYXQgZ2VyYWRlIFpvb2sgdW1nZWJyYWNodC4KW1RvZDpab29rXSBIYWV1ZmlnZXMgU3RlcmJlbiBmb2VyZGVydCBkaWUgbmF0dWVybGljaGUgUmVzaXN0ZW56IGdlZ2VuCltUb2Q6Wm9va10gVG9kZXNzZXF1ZW56ZW4uLi4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTGlzdGUgbmljaHQgZXJyZWljaHRlciBNaXRzcGllbGVyIChBbmF0b2wsICA1LiBPa3QgMjAxNiwgMDc6MTE6NDkpOgp+IyEgcm49WmVzc3RyYSBydD0xNDc1NjE0NzI1IHJnPXBhcnR5LmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xNDc1NjE0Mzc4Cldlbm4gendlaSBad2VpdGllcyBhdWYgZGVyIGxpc3RlIHN0ZWhlbiB1bmQgZGVyIEhhdXB0Y2hhciBuaWNodCAtIAp3aWUgd29sbHQgaWhyIGRhcyBoYW5kaGFiZW4/IDstKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IExpc3RlIG5pY2h0IGVycmVpY2h0ZXIgTWl0c3BpZWxlciAoUnVtYXRhLCAgNS4gT2t0IDIwMTYsIDA3OjU1OjAzKToKfiMhIHJuPUFuYXRvbCBydD0xNDc1NjQ0MzA5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ3NTYxNDM3OApEYW5uIGR1ZXJmZW4gaGFsdCBudXIgZGllIFp3ZWl0aWVzIHp1ciBQYXJ0eSBrb21tZW4sIGlzZG9jaGtsYXIuClJ1bSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBMaXN0ZSBuaWNodCBlcnJlaWNodGVyIE1pdHNwaWVsZXIgKFRpbiwgIDUuIE9rdCAyMDE2LCAxMDo1MzoyNCk6Cn4jISBybj1SdW1hdGEgcnQ9MTQ3NTY0NjkwMyByZz1zY2htYXJybgp+IyEgdGlkPTE0NzU2MTQzNzgKYWxzbyBpYyBmbmQgZSBhdWYgZGVyIGxpc3RlIGluIHJ1YiA0NSB2aWVsZSB6d2VpdGllcy4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogTGlzdGUgbmljaHQgZXJyZWljaHRlciBNaXRzcGllbGVyIChUaW4sICA1LiBPa3QgMjAxNiwgMTA6NTQ6MjkpOgp+IyEgcm49VGluIHJ0PTE0NzU2NTc2MDQgcmc9c2NobWFycm4KfiMhIHRpZD0xNDc1NjE0Mzc4CnVuZCBlaW5lbiBzcGllbGVyLCBkZXIgdW5zIGZ1ciBpbW1lciB2ZXJsYXNzZW4gaGF0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTGlzdGUgbmljaHQgZXJyZWljaHRlciBNaXRzcGllbGVyIChHbG9pbnNvbiwgIDUuIE9rdCAyMDE2LCAxNjoyNTo1OSk6Cn4jISBybj1UaW4gcnQ9MTQ3NTY1NzY2OSByZz1zY2htYXJybgp+IyEgdGlkPTE0NzU2MTQzNzgKR2FueiBwcmFnbWF0aXNjaCB2ZXJtdXRlIGljaCwgZGFzcyBkYSBub2NoIG1laHIgdm9uIGRlbiBMaXN0ZW4gZ2FyIG5pY2h0IG1laHIKZGEgc2luZC4gVm9yIGZhc3QgemVobiBKYWhyZW4gd2FyZW4gZGllIGxldHp0ZSBncm9zc2VuIFBhcnRpZXMsIHZvciBmYXN0CmZ1ZW5memVobiBkYXMgbGV0enRlIEp1YmlsYWV1bS4KCidpcmdlbmR3ZXIgbWFsIHdpZWRlciB3YXMgdm9uIFd1cnplbCBpbiBSTCBnZWhvZXJ0PwoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZldWVyd2FlbmRlLi4uIChIdXJheHByYXgsIDEzLiBOb3YgMjAxNiwgMDA6MTA6NDgpOgpEanRvbSB6aWVodCBlaW5lIGJyZW5uZW5kZSBIb3NlIGF1cy4KRGp0b20gd2Fja2VsdCBtaXQgc2VpbmVtIEhpbnRlcm4uCkRqdG9tIHppZWh0IGVpbmUgYnJlbm5lbmRlIEhvc2UgYW4uCltUb2Q6TGFyc10gRWluZSBXYW5kIGF1cyBGZXVlciBoYXQgZ2VyYWRlIE5vcnh1cyB1bWdlYnJhY2h0LgoKaHVyYXgsIGR1Y2t0IHNpY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIb3cgdG8gY2F0Y2ggYSBXYW5kbGVyIChCbHV0Z2llciwgMTMuIE5vdiAyMDE2LCAwMjoyMDoyNCk6CkF1ZiBkZXIgVHJlcHBlIGltIFVudGVyZ2VzY2hvc3MuCkVzIGdpYnQgZHJlaSBzaWNodGJhcmUgQXVzZ2FlbmdlOiBvYmVuLCBvc3RlbiB1bmQgd2VzdGVuLgpFaW4gV2FuZGxlci4KemllaGUgc2NobGF1ZmUKRHUgemllaHN0IGtyYWVmdGlnIGFuIGRlciBMZWRlcnNjaGxhdWZlIHVuZCBvZWZmbmVzdCBzbyBkaWUgTHVrZS4KRGVyIFdhbmRsZXIgc3ByaW5ndCBuYWNoIHVudGVuLgoKR2VodCBkb2NoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhvdyB0byBjYXRjaCBhIFdhbmRsZXIgKFRpbiwgMTMuIE5vdiAyMDE2LCAxMTowNTo0Mik6Cn4jISBybj1CbHV0Z2llciBydD0xNDc5MDAwMDI0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ3OTAwMDAyNApzZWVyIHNjaG9lbi4uIEhpaGkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmV1ZXJ3YWVuZGUuLi4gKFZhbmlvbiwgMTUuIE5vdiAyMDE2LCAyMTozNzoxNSk6Cn4jISBybj1IdXJheHByYXggcnQ9MTQ3ODk5MjI0OCByZz1zY2htYXJybgp+IyEgdGlkPTE0Nzg5OTIyNDgKRGFzIGFrdHVlbGxlIExhc3QgV2VlayBUb25pZ2h0IGZhbmYgaWNoIHppZW1saWNoIGd1dC4KaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dj0tclNEVXNNd2FrSQooR2VnZW4gZGFzIEdlb2Jsb2NraW5nIGhpbGZ0IHouQi4KaHR0cHM6Ly93d3cuc3N5b3V0dWJlLmNvbS93YXRjaD92PS1yU0RVc013YWtJICkKClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZldWVyd2FlbmRlLi4uIChSdW1hdGEsIDE1LiBOb3YgMjAxNiwgMjM6MzM6MTcpOgp+IyEgcm49VmFuaW9uIHJ0PTE0NzkyNDIyMzUgcmc9c2NobWFycm4KfiMhIHRpZD0xNDc4OTkyMjQ4Ckxhc3QgV2VlayBUb25pZ2h0IGhhdCBnZW9ibG9ja2luZz8KV2FzIGd1Y2tlIGljaCBkYSBzZWl0IG5lbSBoYWxiZW4gSmFocj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZldWVyd2FlbmRlLi4uIChHbG9pbnNvbiwgMTUuIE5vdiAyMDE2LCAyMzo0Nzo1Nik6Cn4jISBybj1SdW1hdGEgcnQ9MTQ3OTI0OTE5NyByZz1zY2htYXJybgp+IyEgdGlkPTE0Nzg5OTIyNDgKSWNoIGhhYiBrZWluZW4gU2NoaW1tZXIuIEljaCBtdXNzIGF1Y2ggZGFzIEZhbHNjaGUgZ2VzY2hhdXQgaGFiZW4uIERpZSBNdXNpawp3YXIgSU1PIHVucGFzc2VuZC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGZXVlcndhZW5kZS4uLiAoVmFuaW9uLCAxNi4gTm92IDIwMTYsIDIxOjU3OjQ5KToKfiMhIHJuPVJ1bWF0YSBydD0xNDc5MjQ5MTk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ3ODk5MjI0OApLZWluZSBBaG51bmcsIGRpZSBlaW5lIFNlbmR1bmcgaGF0dGUuIFZlcm11dGxpY2ggc2NoYWVtZW4gc2ljaCBkaWUgQW1pcyB3ZWdlbgppaHJlcyBQcmFlc2lkZW50IGVsZWN0LgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZldWVyd2FlbmRlLi4uIChIdW1uaSwgMTcuIE5vdiAyMDE2LCAxODoyNTo1Nyk6Cn4jISBybj1WYW5pb24gcnQ9MTQ3OTMyOTg2OSByZz1zY2htYXJybgp+IyEgdGlkPTE0Nzg5OTIyNDgKSWNoIHdvbGx0ZSBtaWNoIGRhIGF1Y2ggc2Nob24gd3VuZGVybi4gSXJnZW5kd2llIGdpbmdlbiBiZWkgbWlyIGRpZSBMaW5rcwphbGxlLiBLZWluZSBBaG51bmcsIG9iIGRpZSBtaXIgZ2V0ZWlsdGVuIExpbmtzIHNjaG9uIGVudC1nZW8tYmxvY2t0IHdhcmVuLiBFcwpnaW5nIGJpc2hlciBpbW1lci4KCkh1bW5pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx1Y2h0PyA6LUQgKFRhcmFtYXIsICAzLiBEZXogMjAxNiwgMDk6NDM6MjEpOgpEdSB0ZWlsc3QgVGlua2VyYmVsbCBtaXQ6IHNjaG9lbiBkYXNzIGR1IG1hbCBzcGllbHN0IDopClRpbmtlcmJlbGwgaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbHMgZ2FlYmUgZXMgZGF2b24gbm9jaCBuaWNodCBnZW51ZyBoaWVyIC4uLiAoWm9vaywgMTUuIERleiAyMDE2LCAwOTo0NDo0NCk6Cn4jISBybj1CdWdmaXggcnQ9MTQ4MTIzMzkxNyByZz1kLnVudGVyd2VsdAp+IyEgdGlkPTE0ODEyMzM5MTcKVW5kIGljaCBsYXMgaW0gZXJzdGVuIEF1Z2VuYmxpY2sgIldlbSBkZXIgbmljaHQgenUgZG9vZiBpc3QsIC4uLiIKClpvb2sgaGF0IHNlaW4gQmlsZCB2b24gVHJvbGxlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5ldWxpY2ggYmVpIGRlbiBEdW5rZWxlbGZlbiAoRGp0b20sIDE5LiBEZXogMjAxNiwgMjE6NTI6NTIpOgpUaXpvbmEgZnJhZ3QgTmVuYWlzJ3UgbmFjaCBTZXguCk5lbmFpcyd1IHNhZ3Q6IEJlc3RpbW10IGlzdCBkaWVzIGVpbmUgd2ljaHRpZ2UgRnJhZ2UsIGRvY2ggbmljaHQgZWlubWFsIGljaApOZW5haXMndSBzYWd0OiBrZW5uZSBkaWUgQW50d29ydCBkYXJhdWYuIFZlcm11dGxpY2ggZmluZGVzdCBEdSBuaWVtYW5kCk5lbmFpcyd1IHNhZ3Q6IGFuZGVyZW4sIGRlciBkYXMgd2Vpc3MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTUdAQ0NDIFN0YXRpIChaZXNzdHJhLCAyOC4gRGV6IDIwMTYsIDIwOjEyOjE1KToKfiMhIHJuPVZhbmlvbiBydD0xNDgyOTUyMTUxIHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTE0ODI5NTIxNTEKSGFzdCBEdSBkaWUgQmVrYW5udG1hY2h1bmcgZWlnZW50bGljaCB2b20gS2xvIGdlcG9zdGV0PyA7LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTUdAQ0NDIFN0YXRpIChWYW5pb24sIDI4LiBEZXogMjAxNiwgMjA6MTQ6MjEpOgp+IyEgcm49WmVzc3RyYSBydD0xNDgyOTUyMzM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ4Mjk1MjE1MQpTZWl0IGFuIGRlbiBLbG8tVHVlcmVuIGRpZSBFbXBmYW5nc3F1YWxpdGFldCBzdGVodCwgc2luZCBkaWUgImd1dGVuIiBUb2VwZmUKaW1tZXIgYmVsZWd0LiBJY2ggYmluIGdlcmFkZSBrYWJlbGdlYnVuZGVuIGFtIHNjaG5lbGxzdGVuIEludGVybmV0CkRldXRzY2hsYW5kcyA6KQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1vcmdlbkdyYXVlbiBpbSBWaXNpZXIgZGVyIERyb2dlbmJvc3NlISAoQXJrLCAgOC4gSmFuIDIwMTcsIDEyOjQ0OjE1KToKTWVpbiBHb3R0IC4uLiB3aWUga29ubnRlbiB3aXIgZGllc2VuIHNjaGxpbW1lbiBDb2RlIG51ciB1ZWJlcnNlaGVuLiBMYXNzZXQgdW5zCmVpbmUgU2VsYnN0YW56ZWlnZSBlcmhlYmVuIHVuZCB6aXR0ZXJuIQoKdmFyYXJncyBpbnQgbW92ZShvYmplY3R8c3RyaW5nIGRlc3QsIGludCBtZXRoLCBzdHJpbmcgZGlyLCBzdHJpbmcgb3V0LHN0cmluZwppbikKCkdlc2VoZW4gYXVjaCBub2NoIGluIC4uLiB1bnRlcndlbHQuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1vcmdlbkdyYXVlbiBpbSBWaXNpZXIgZGVyIERyb2dlbmJvc3NlISAoR25vbWUsICA4LiBKYW4gMjAxNywgMTY6NDY6NDApOgp+IyEgcm49QXJrIHJ0PTE0ODM4NzU4NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xNDgzODc1ODU1CkFyay4uLiBlZ2FsIHdhcyBlcyBpc3QuLi4gbmltbSB3ZW5pZ2VyIGRhdm9uLiA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1vcmdlbkdyYXVlbiBpbSBWaXNpZXIgZGVyIERyb2dlbmJvc3NlISAoR2xvaW5zb24sICA4LiBKYW4gMjAxNywgMTg6MTk6MzYpOgp+IyEgcm49QXJrIHJ0PTE0ODM4NzU4NTUgcmc9c2NobWFycm4KfiMhIHRpZD0xNDgzODc1ODU1CkRlc3RpbCBtZXRoLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTW9yZ2VuR3JhdWVuIGltIFZpc2llciBkZXIgRHJvZ2VuYm9zc2UhIChBbmF0b2wsICA5LiBKYW4gMjAxNywgMDg6MTk6MzUpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTQ4Mzg5NTk3NiByZz1zY2htYXJybgp+IyEgdGlkPTE0ODM4NzU4NTUKSXN0IGRhcyB2b24gVnJhaT8hIDA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk5lcnZlbiAoRWxlbmRpbCwgMjguIEphbiAyMDE3LCAwNjo0NzowMCk6CkVzIHJhdWJ0IERpciBEZWluZSBOZXJ2ZW4sIGRlbm4gaW1tZXIgd2llZGVyIHZlcm5pbW1zdCBEdSBkYXMgYmV1bnJ1aGlnZW5kZQpGbGFwcGVuLCBhYmVyIHNvYmFsZCBEdSBoZXJ1bWZhZWhyc3QsIGlzdCBkYSBuaWNodHMuCgotPiB1bnQgbmVydmVuCkhvZmZlbnRsaWNoIGJlaGFlbHRzdCBEdSBzaWUgbm9jaCBsYWVuZ2VyICEKCi0+IGJlaGFsdGUgbmVydmVuCkFiZXIgc293YXMgaGFzdCBEdSBuaWNodCBkYWJlaSEKCk1pc3QsIGRvY2ggYXVzdmVyc2VoZW4gdmVya2F1ZnQhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXMgSm9mIHdvaGwgc2FnZW4gd3VlcmRlLi4uPyAoWmVzc3RyYSwgMjkuIEphbiAyMDE3LCAyMDoyNzoxMCk6CjplcmhvZWhlIHNwaWVsZXIKR3V0IGdlbWFjaHQsIEpvZiBkZXIgaG9mZm51bmdzdm9sbGUgQW5mYWVuZ2VyIChTdHVmZSAyKS4KRGlyIGZhZWxsdCBhdWYgZWlubWFsIGF1ZiwgZGFzcyBEdSB2ZXJzdWNoZW4ga29lbm50ZXN0LCBkZW4gWmF1YmVyc3BydWNoCiJzdGVpbnNjaGxhZyIgaW4gZGVyIEFiZW50ZXVyZXJnaWxkZSB6dSBlcmxlcm5lbi4KOmVyaG9laGUgc3BpZWxlcgpHdXQgZ2VtYWNodCwgSm9mIGRlciBob2ZmbnVuZ3N2b2xsZSBBbmZhZW5nZXIgKFN0dWZlIDMpLgpEaXIgZmFlbGx0IGF1ZiBlaW5tYWwgYXVmLCBkYXNzIER1IHZlcnN1Y2hlbiBrb2VubnRlc3QsIGRpZSBmb2xnZW5kZW4KWmF1YmVyc3BydWVjaGUgaW4gZGVyIEFiZW50ZXVyZXJnaWxkZSB6dSBlcmxlcm5lbjoKaWRlbnRpZml6aWVyZSB1bmQgc3RlaW5zY2hsYWcKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXYXMgSm9mIHdvaGwgc2FnZW4gd3VlcmRlLi4uPyAoUnVtYXRhLCAzMC4gSmFuIDIwMTcsIDA3OjQxOjA4KToKfiMhIHJuPVplc3N0cmEgcnQ9MTQ4NTcxODAzMCByZz1zY2htYXJybgp+IyEgdGlkPTE0ODU3MTgwMzAKVmVybXV0bGljaDoga2FubiBtaXIgamVtYW5kIHNhZ2VuLCB3byBkaWUgQWJlbnRldXJlcmdpbGRlIGlzdC4gOy0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGFzIEZvcnNjaHByb3Rva29sbCAoWm9vaywgMTkuIEZlYiAyMDE3LCAxODowMDo0MCk6Cn4jISBybj1CdWdmaXggcnQ9MTQ4NzUyMzI4NSByZz1kLnZsYW5kCn4jISB0aWQ9MTQ4NzUyMzI4NQpXaWUgdWVibGljaCwgaWNoIGxhcyB6dWVyc3QgIkRhcyBGcm9zY2hwcm90b2tvbGwiLgoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFdpbjEwIChab29rLCAyOC4gRmViIDIwMTcsIDA5OjQwOjM3KToKfiMhIHJuPUFyayBydD0xNDg4MDk1MjUxIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTE0ODgwOTUyNTEKRmVuc3RlciBhdWYsIEdlcmFldCByYXVzIQoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBXaW4xMCAoQXJrLCAyOC4gRmViIDIwMTcsIDExOjI4OjU5KToKfiMhIHJuPVpvb2sgcnQ9MTQ4ODI3MTIzNyByZz1zY2htYXJybgp+IyEgdGlkPTE0ODgwOTUyNTEKWnUgc3BhZXQsIGhhdHRlIHVudGVyIEFuZHJvaHVuZyB2b24gUnVlY2tnYWJlIGRhcyBEaW5nIG5vY2htYWwgenVtIEhhZW5kbGVyCmdlZ2ViZW4sIG5hY2ggZWluIGJpc3NjaGVuIEZyaWNrZWxuIGthbm4gaWNoIGlobiBqZXR6dCAiY3VzdG9taXplbiIsIHdpZSBkZXIKTWlja3lzb2Z0ZXIgamEgc2FndC4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBXaW4xMCAoUnVtYXRhLCAgMS4gTWFyIDIwMTcsIDA4OjMxOjU0KToKfiMhIHJuPUFyayBydD0xNDg4Mjc3NzM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ4ODA5NTI1MQpBdWYgZGV1dHNjaCBoZWlzc3QgZGFzICJ6dXJlaXRlbiIuIFVuZCBpc3QgdW50ZXIgTGludXggbmljaHQgYW5kZXJzLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogV2luMTAgKEdub21lLCAgMy4gTWFyIDIwMTcsIDIxOjE5OjQ3KToKfiMhIHJuPUFyayBydD0xNDg4Mjc3NzM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ4ODA5NTI1MQpXZW5ucyBzY2hvbiBtaXQgImZyaWNrZWxuIiBhbmZhZW5ndCwgd2lyZHMgd2FocnNjaGVpbmxpY2ggbmljaHQgYmVzc2VyLgpOaW1tIFpvb2tzIFZvcnNjaGxhZyBhbi4gOykKCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiAyNUogTW9yZ2VuZ3JhdWVuOiBMZXR6dGUgSW5mb3MgKEdub21lLCAyOS4gTWFyIDIwMTcsIDIwOjUyOjA0KToKfiMhIHJuPUdsb2luc29uIHJ0PTE0OTA2OTYwMTEgcmc9cGFydHkuYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTE0OTAwMzc5NjIKQmVpIEdsb2luc29uIGVpbHQgZXMgYWJlciBuaWNodCBzbyBzZWhyLiBEaWUgdWVibGljaGUgQmVhcmJlaXR1bmdzLSB1bmQKSG9jaGxhZGV6ZWl0IHNlaW5lciBGb3RvcyBsaWVndCB6d2lzY2hlbiBlaW5lbSBoYWxiZW4gdW5kIGVpbmVtIGdhbnplbgpKYWhyaHVuZGVydC4KCmduT21lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogT3N0ZXJmcmlzY2hlLi4uISAoR25vbWUsICA3LiBBcHIgMjAxNywgMjI6NTk6MDQpOgp+IyEgcm49WmVzc3RyYSBydD0xNDkxNTk0NjkyIHJnPW1hZ2llci51cmxhdWIKfiMhIHRpZD0xNDkxNTk0NjkyCkljaCBnbGF1YmUsIGVpbmVuIENyYXNoIGtyaWVnZW4gZGllIGF1Y2ggb2huZSBkaWNoIGhpbi4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogT3N0ZXJmcmlzY2hlLi4uISAoWm9vaywgIDguIEFwciAyMDE3LCAxNzo1MjozNCk6Cn4jISBybj1Hbm9tZSBydD0xNDkxNTk4NzQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ5MTU5NDY5MgpJY2ggZnJhZ2UgbWljaCBudW46IERhcmYgaWNoIFplc3N0cmEgYXVjaCBvaG5lIENyYXNoIGFucnVmZW4/Cgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBPc3RlcmZyaXNjaGUuLi4hIChWYW5pciwgIDguIEFwciAyMDE3LCAxODoxMDo0OCk6Cn4jISBybj1ab29rIHJ0PTE0OTE2NjY3NTQgcmc9c2NobWFycm4KfiMhIHRpZD0xNDkxNTk0NjkyCkRhcyBmcmFnZSBpY2ggbWljaCBhdWNoLCBoYWJlIGFiZXIgd2VuaWdlciBNb2VnbGljaGtlaXRlbiBtaXIgZWluZW4gR3J1bmQgenUKYmVzb3JnZW4gaWhuIGFucnVmZW4genUga29lbm5lbi4KVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE9zdGVyZnJpc2NoZS4uLiEgKFpvb2ssICA4LiBBcHIgMjAxNywgMTg6MjE6MzEpOgp+IyEgcm49VmFuaXIgcnQ9MTQ5MTY2Nzg0OCByZz1zY2htYXJybgp+IyEgdGlkPTE0OTE1OTQ2OTIKQUNIVFVORyEgVmFuaXIgY3Jhc2h0IGluIEt1ZXJ6ZSBkYXMgTXVkIQoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogT3N0ZXJmcmlzY2hlLi4uISAoQ3JvZnQsICA4LiBBcHIgMjAxNywgMTg6MjI6NDMpOgp+IyEgcm49Wm9vayBydD0xNDkxNjY4NDkxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ5MTU5NDY5MgpVbmQgZGFubiB3aWxsIGVyIFplc3N0cmEgYW0gVGVsZWZvbiB6dXByb3N0ZW4hCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogT3N0ZXJmcmlzY2hlLi4uISAoR2xvaW5zb24sICA4LiBBcHIgMjAxNywgMTk6MjM6MDgpOgp+IyEgcm49Q3JvZnQgcnQ9MTQ5MTY2ODU2MyByZz1zY2htYXJybgp+IyEgdGlkPTE0OTE1OTQ2OTIKSGF0IFplc3N0cmEgbmljaHQgbmV1bGljaCBub2NoIGVpbmVuIEV4cGxvaXQgZ2Vwb3N0ZXQsIGRlbiBWYW5pciBqZXR6dApiZW51dHplbiBrYXFubj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBPc3RlcmZyaXNjaGUuLi4hIChab29rLCAgOC4gQXByIDIwMTcsIDE5OjI4OjQzKToKfiMhIHJuPUdsb2luc29uIHJ0PTE0OTE2NzIxODggcmc9c2NobWFycm4KfiMhIHRpZD0xNDkxNTk0NjkyCkljaCBoYXUgVmFuaXIgZGFubiBhdWYgZGllIHp3b2VsZiEgOykgCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBPc3RlcmZyaXNjaGUuLi4hIChSdW1hdGEsICA4LiBBcHIgMjAxNywgMTk6Mzg6MDEpOgp+IyEgcm49Wm9vayBydD0xNDkxNjcyNTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ5MTU5NDY5MgouLi4gdW5kIGZhbGxzIHdhcyBhYmZhZWxsdCwgd2lyZCBlciB6dW0gRWxmLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogT3N0ZXJmcmlzY2hlLi4uISAoWm9vaywgIDguIEFwciAyMDE3LCAxOTo1OTowNCk6Cn4jISBybj1SdW1hdGEgcnQ9MTQ5MTY3MzA4MSByZz1zY2htYXJybgp+IyEgdGlkPTE0OTE1OTQ2OTIKR2VoZW4gd2lyIHdpZWRlciBpbiB1bnNlcmUgUnVicmlrIHp1cnVlY2suCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMDogT3N0ZXJmcmlzY2hlLi4uISAoVmFuaXIsICA4LiBBcHIgMjAxNywgMjE6NDI6NTApOgp+IyEgcm49Wm9vayBydD0xNDkxNjc0MzQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ5MTU5NDY5MgpEdSBtZWluc3QgbWVnYXNjaG1hcnJuPyBWb20gTml2ZWF1IGhlciBiZWZ1ZXJjaHRlIGljaCBnZXJhZGUgZWluZSBVZWJlcm5haG1lLgpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VtIEJvZXNlcyBzY2h3YW50IC4uLiAoTm90c3Ryb20sIDE5LiBBcHIgMjAxNywgMjI6MTk6MzApOgpSaG92YW4gZnJhZ3QgRGljaDogUGFkcmVpYz8KU2NoYXVkZXIgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgoKU0NOUiwKTm90c3Ryb20uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWJ3ZXNlbmQgKE1vb25zaGluZSwgMjAuIEFwciAyMDE3LCAyMToxMjowNyk6Cn4jISBybj1ab29rIHJ0PTE0OTI2MDk2MTYgcmc9bWFnaWVyLnVybGF1Ygp+IyEgdGlkPTE0OTI2MDk2MTYKRXMgZHJhZW5ndCBzaWNoIG1pciBkaWUgRnJhZ2UgYXVmLCB3ZXIgZWluZW4gKHVuc2VyZW4hKSBHb3R0IGZvcnRiaWxkZW4KdmVybWFnPyA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQWJ3ZXNlbmQgKENoYWdhbGwsIDIxLiBBcHIgMjAxNywgMDk6NDE6MDApOgp+IyEgcm49TW9vbnNoaW5lIHJ0PTE0OTI3MTU1Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xNDkyNjA5NjE2CkRhcyBpc3Qgd2FocnNjaGVpbmxpY2ggZWluIFdvcmtzaG9wIHZvbiB1bmQgbWl0IGRpdmVyc2UgR29ldHRlcm4sIGRpZSBiaWxkZW4Kc2ljaCBhbHNvIHF1YXNpIHNlbGJzdCB3ZWl0ZXIuIE1hbiBtdW5rZWx0IGF1Y2gsIGRhcyBncm9zc2UgVGhlbWEgc2VpIGRpZXNtYWwKJ0Jlc3RyYWZlbiB2b24gU3VlbmRlcm4gaW0gSmFocmUgMjAxNycgZ2Vmb2xndCB2b24gJ1dpZSB1bnRlcndlcmZlIGljaApBbmRlcnNnbGFldWJpZ2UgcmljaHRpZycuCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQWJ3ZXNlbmQgKFJ1bWF0YSwgMjEuIEFwciAyMDE3LCAwOTo1ODoyMyk6Cn4jISBybj1DaGFnYWxsIHJ0PTE0OTI3NjA0NjAgcmc9c2NobWFycm4KfiMhIHRpZD0xNDkyNjA5NjE2CiJVbnRlcnRhbmVuIHp1ciBCaWVyZ2FiZW4gYnJpbmdlbiIgaXN0IHdpZSBpbW1lciBhdXNnZWJ1Y2h0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSmFqYSAuLi4gKEh1bW5pLCAyNC4gQXByIDIwMTcsIDIwOjU4OjMxKToKW1RvZDpMYXJzXSBEaWUgRG9ubmVyZWNoc2UgSWpoYXptb3JhbiBoYXQgZ2VyYWRlIFRob3JpbSB1bWdlYnJhY2h0LgpbVG9kOkRpZSBEb25uZXJlY2hzZSBJamhhem1vcmFuXSBXYXMgd2lsbHN0IER1IHZvbiBtaXIsIER1IGtsZWluZXIgV3VybSwKW1RvZDpEaWUgRG9ubmVyZWNoc2UgSWpoYXptb3Jhbl0ga2VubnN0IER1IG5pY2h0IG1laW5lbiBhbGxtYWVjaHRpZ2VuIFN0dXJtID8KW1RvZDpEaWUgRG9ubmVyZWNoc2UgSWpoYXptb3Jhbl0gRXMgdG9ldGV0IG1laW4gSGF1Y2gsIG1laW4gWmFobiwgbWVpbiBCbGljaywKW1RvZDpEaWUgRG9ubmVyZWNoc2UgSWpoYXptb3Jhbl0gZGFzIGFsbGVpbiBicmFjaCBEaXIgRGVpbiB6YXJ0ZXMgR2VuaWNrLgpbQmVpbGVpZDpOeXJvbl0gU3RpbHZvbGxlciBBYmdhbmcgOykKW0JlaWxlaWQ6QXJrXSBEaWUgSGVlcmUgZGVyIEhvZWxsZW4ga29tcG9uaWVyZW4gZGllICdEYWVtb25lbmRhZW1tZXJ1bmcnLgpbQmVpbGVpZDpOeXJvbl0gaWNoIGhhdHRlIDkgTFAgYnR3IDspCltCZWlsZWlkOkFya10gbHVzdGlnZXIgd2FlcmUgMSA6KQpbQmVpbGVpZDpWYW5pcl0gMCBpc3QgZGFzIFppZWwhCltUb2Q6TGFyc10gRGllIERvbm5lcmVjaHNlIElqaGF6bW9yYW4gaGF0IGdlcmFkZSBOeXJvbiB1bWdlYnJhY2h0LgpbVG9kOkRpZSBEb25uZXJlY2hzZSBJamhhem1vcmFuXSBXYXMgd2lsbHN0IER1IHZvbiBtaXIsIER1IGtsZWluZXIgV3VybSwKW1RvZDpEaWUgRG9ubmVyZWNoc2UgSWpoYXptb3Jhbl0ga2VubnN0IER1IG5pY2h0IG1laW5lbiBhbGxtYWVjaHRpZ2VuIFN0dXJtID8KW1RvZDpEaWUgRG9ubmVyZWNoc2UgSWpoYXptb3Jhbl0gRXMgdG9ldGV0IG1laW4gSGF1Y2gsIG1laW4gWmFobiwgbWVpbiBCbGljaywKW1RvZDpEaWUgRG9ubmVyZWNoc2UgSWpoYXptb3Jhbl0gZGFzIGFsbGVpbiBicmFjaCBEaXIgRGVpbiB6YXJ0ZXMgR2VuaWNrLgpbQmVpbGVpZDpWYW5pcl0gLi4uIHVuZCBkYXMgd2FyIDw9IC0xIExQCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWnVyIFZlcnNjaG9lbmVydW5nIHZvbiBTZWhlcmhhZXVzZXJuIC4uLiAoTm90c3Ryb20sIDI1LiBBcHIgMjAxNywgMTU6MTA6MTMpOgouLi4ga2FubiBtYW4gZGllc2UgbnVuIGF1Y2ggbWl0IGVpbmVtIEFxdWFyaXVtIGJlc3R1ZWNrZW4uIERhbmsgYW4gWm9vaywKd2VubnMgUHJvYmxlbWUgZGFtaXQgZ2lidCwgYml0dGUgYmVpIG1pciBtZWxkZW4uCgpWaWVsIFNwYXNzIQpOb3RzdHJvbS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBadXIgVmVyc2Nob2VuZXJ1bmcgdm9uIFNlaGVyaGFldXNlcm4gLi4uIChSdW1hdGEsIDI1LiBBcHIgMjAxNywgMTU6MTE6NTApOgp+IyEgcm49Tm90c3Ryb20gcnQ9MTQ5MzEyNTgxMyByZz1zY2htYXJybgp+IyEgdGlkPTE0OTMxMjU4MTMKRWluIEFxdWFyaXVtIG1pdCBOb3RzdHJvbSBiZXRyZWliZW4/IFdlbm4gZGFzIG1hbCBndXQgZ2VodCA7LSkpKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBadXIgVmVyc2Nob2VuZXJ1bmcgdm9uIFNlaGVyaGFldXNlcm4gLi4uIChBbnRoZWEsIDI1LiBBcHIgMjAxNywgMTc6MjI6MDUpOgp+IyEgcm49UnVtYXRhIHJ0PTE0OTMxMjU5MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xNDkzMTI1ODEzCkF1c3NlcmRlbSBoYWJlIGljaCBlaCBkYXMgRWluemlnIFdhaHJlIEFxdWFyaXVtLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogWnVyIFZlcnNjaG9lbmVydW5nIHZvbiBTZWhlcmhhZXVzZXJuIC4uLiAoR2xvaW5zb24sIDI1LiBBcHIgMjAxNywgMjE6MzA6MDEpOgp+IyEgcm49QW50aGVhIHJ0PTE0OTMxMzM3MjUgcmc9c2NobWFycm4KfiMhIHRpZD0xNDkzMTI1ODEzCklzdCBkYXMgZWluIENvZGV3b3J0IGZ1ZXIgU3RpZWZlbHRyaW5rZW4/CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogWnVyIFZlcnNjaG9lbmVydW5nIHZvbiBTZWhlcmhhZXVzZXJuIC4uLiAoQW5hdG9sLCAyNy4gQXByIDIwMTcsIDA4OjQxOjAxKToKfiMhIHJuPUdsb2luc29uIHJ0PTE0OTMxNDg2MDEgcmc9c2NobWFycm4KfiMhIHRpZD0xNDkzMTI1ODEzCkRlciBCZXRyaWViIGVpbmVzIHNjaGxlY2h0IHZlcmthYmVsdGVuIEFxdWFyaXVtcyBlbmRldCByZWdlbG1hZXNzaWcKd2FobHdlaXNlIG1pdCBkZW0gQXVzdGF1c2NoIGRlciBTaWNoZXJ1bmdlbiBvZGVyIGVpbmVyIFRlc3RhbWVudHNlcm9lZmZudW5nLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhvaG4gLi4uIChNaXJha2EsIDExLiBNYWkgMjAxNywgMDE6MjU6MjYpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBnaWZ0aWdlbiBTY2h1cHBlbnd5cm1zXSBJY2ggaGFiZSBJamhhem1vcmFuIGF1ZiBld2lnIHRyZXUKW01vZXJkZXI6R2Vpc3QgZWluZXMgZ2lmdGlnZW4gU2NodXBwZW53eXJtc10gZ2VkaWVudCAhCkRlciByYWJlbnNjaHdhcnplIFJpbmcgc3RyYWhsdCBmdWVyIGVpbmVuIEF1Z2VuYmxpY2sgd2Vpc3MgYXVmLiBHcm9zc2UKSG9mZm51bmcgZXJmdWVsbHQgRGljaC4KW1RvZDpMYXJzXSBEaWUgRG9ubmVyZWNoc2UgSWpoYXptb3JhbiBoYXQgZ2VyYWRlIFphcmt1IHVtZ2VicmFjaHQuCltUb2Q6RGllIERvbm5lcmVjaHNlIElqaGF6bW9yYW5dIFdhcyB3aWxsc3QgRHUgdm9uIG1pciwgRHUga2xlaW5lciBXdXJtLApbVG9kOkRpZSBEb25uZXJlY2hzZSBJamhhem1vcmFuXSBrZW5uc3QgRHUgbmljaHQgbWVpbmVuIGFsbG1hZWNodGlnZW4gU3R1cm0gPwpbVG9kOkRpZSBEb25uZXJlY2hzZSBJamhhem1vcmFuXSBFcyB0b2V0ZXQgbWVpbiBIYXVjaCwgbWVpbiBaYWhuLCBtZWluIEJsaWNrLApbVG9kOkRpZSBEb25uZXJlY2hzZSBJamhhem1vcmFuXSBkYXMgYWxsZWluIGJyYWNoIERpciBEZWluIHphcnRlcyBHZW5pY2suCltNb2VyZGVyOkdlaXN0IGVpbmVzIGdpZnRpZ2VuIFNjaHVwcGVud3lybXNdIEljaCBoYWJlIElqaGF6bW9yYW4gYXVmIGV3aWcgdHJldQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBnaWZ0aWdlbiBTY2h1cHBlbnd5cm1zXSBnZWRpZW50ICEKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVtZnJhZ2UgenUgQXVzcnVlc3R1bmcgYmVpbSBFcnptZWlzdGVya2FtcGYgKEh1cmF4cHJheCwgMTYuIE1haSAyMDE3LCAxOTo1MjoxMCk6Cn4jISBybj1Kb3NodWEgcnQ9MTQ5NDk1MjkxNCByZz1naWxkZW4uY2hhb3MKfiMhIHRpZD0xNDk0OTQ0NTE3CkJlaSBDaGFvcy1FcnptZWlzdGVya2FlbXBmZW4gbXVzcyBhdWYgamVkZW4gRmFsbCBhYnNvbHV0ZSBPcmRudW5nIGhlcnJzY2hlbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZCBNZXJsaW4gKE1pcmFrYSwgIDQuIEp1biAyMDE3LCAxODozOToxMyk6CkFsc28gTWVybGluIHN0ZWh0IGphIHNjaG9uIHNlaXQgZGl2ZXJzZW4gV29jaGVuIGltIHN1ZWR3ZXN0bGljaGVuIFJlaXNmZWxkIGJlaQpYaWFuIHJ1bSAuLi4gc2NoZWluYmFyIGxpZWJ0IGVyIGRhcyBmZXJud2VzdGxpY2hlIFN0YWVkdGNoZW4gLi4uIG51ciBtYW5jaG1hbAp0aWNrdCBlciBuaWNodCByZWNodDoKCk1lcmxpbiBrb21tdCBhbi4KTWVybGluIHppZWh0IHdlaXRlci4KTWVybGluIGtvbW10IGFuLgpNZXJsaW4gemllaHQgd2VpdGVyLgpNZXJsaW4ga29tbXQgYW4uCk1lcmxpbiBrb21tdCBhbi4KTWVybGluIHppZWh0IHdlaXRlci4KTWVybGluIGtvbW10IGFuLgpNZXJsaW4gemllaHQgd2VpdGVyLgpNZXJsaW4ga29tbXQgYW4uCk1lcmxpbiBrb21tdCBhbi4KTWVybGluIHppZWh0IHdlaXRlci4KTWVybGluIGtvbW10IGFuLgpNZXJsaW4gemllaHQgd2VpdGVyLgpNZXJsaW4ga29tbXQgYW4uCk1lcmxpbiBrb21tdCBhbi4KTWVybGluIHppZWh0IHdlaXRlci4KTWVybGluIGtvbW10IGFuLgpNZXJsaW4gemllaHQgd2VpdGVyLgpNZXJsaW4ga29tbXQgYW4uCgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTGViZW4gKEFudGhlYSwgMjIuIEp1biAyMDE3LCAxNDowMDo0OCk6Cn4jISBybj1CdWdmaXggcnQ9MTQ5ODEzMjgyMCByZz13aXR6ZQp+IyEgdGlkPTE0OTgxMzA5MjUKRGFzIHdhciBhYmVyIGFldXNzZXJzdCB1bndpdHppZyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIFR5cG8gZGVzIFRhZ2VzIChBcmssIDMwLiBKdW4gMjAxNywgMTg6NDc6NDcpOgpLdXJ6YmVzY2hyZWlidW5nIGVpbmVzIFJhdW1zIHZvbiBtaXIgKGJlYWJzaWNodGlndCk6ICJEZXIgbm9lcmRsaWNoZQpXb2hucmF1bSIuCgpTdGF0dGRlc3NlbiBzY2hyaWViIGljaCAuLi4gbmEsIHdlciBlcnJhZXRzPyA6RAoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnEgKEVsa2FudGFyLCAzMC4gSnVuIDIwMTcsIDE5OjQxOjQ2KToKcQotCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprb3JyZWt0dXIgKEVsa2FudGFyLCAzMC4gSnVuIDIwMTcsIDE5OjQzOjI4KToKSGkhIG5vZSwgZGFzIHdhciBuYXR1ZXJsaWNoIG5pY2ggZ2VkYWNodCEgRWlnZW50bGljaCB3b2xsdCBpY2ggc2NocmVpYmVuLCBvYgphcmsgdmx0LiBub2VyZGxpY2hlciB0eXBvIGdlc2NocmllYmVuIGhhdCwgd2VpbCBlciBpbiBHZWRhbmtlbiBnYW56IGJlaW0gdHlwbwp3YXIuIFNvLCB3aWUgamVtYW5kIGRlbiBpY2gga2VubiwgbmV1bGljaCBnZXRpcHB0IGhhdDogenVlY2tlIGVpc3p3ZXJnLCB0b2V0ZQpzY2h3ZXJ0LCBzdGF0dCBhbmRlcnNoZXJ1bS4gc28sIG51ciBhcnRpa2VsIGFiYnJlY2hlbiBnZWh0IG1pdCBoaWVyIG1pdCBtZWluZW0Ka2xpZW50IGVpbmZhY2gga2F1bS4KZWxrYW50YXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBrb3JyZWt0dXIgKEFyaywgMzAuIEp1biAyMDE3LCAyMToxNToyMSk6Cn4jISBybj1FbGthbnRhciBydD0xNDk4ODQ0NjA4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTQ5ODg0NDYwOApKYSwgd28gaW0gVGV4dCB3YXIgamV0enQgZGllIEFudHdvcnQ/ICpncnVlYmVsKgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEZXIgVHlwbyBkZXMgVGFnZXMgKFphcGhvYiwgMzAuIEp1biAyMDE3LCAyMTo0ODo1Nyk6Cn4jISBybj1BcmsgcnQ9MTQ5ODg0MTI2NyByZz1zY2htYXJybgp+IyEgdGlkPTE0OTg4NDEyNjcKRGVyIGRvZXJmbGljaGUgV29obnJhdW0/CkRlciB3b2hubGljaGUgTm9yZHJhdW0/CkRlciByYWV1bWxpY2hlIERvcmZ3YWhuPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEZXIgVHlwbyBkZXMgVGFnZXMgKFRpem9uYSwgMzAuIEp1biAyMDE3LCAyMjozNjo0NCk6Cn4jISBybj1aYXBob2IgcnQ9MTQ5ODg1MjEzNyByZz1zY2htYXJybgp+IyEgdGlkPTE0OTg4NDEyNjcKRGVyIG5lcmRsaWNoZSBXb2hucmF1bSBuYXR1ZXJsaWNoIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGVyIFR5cG8gZGVzIFRhZ2VzIChBcmssICAxLiBKdWwgMjAxNywgMDA6MDU6NDQpOgp+IyEgcm49VGl6b25hIHJ0PTE0OTg4NTUwMDQgcmc9c2NobWFycm4KfiMhIHRpZD0xNDk4ODQxMjY3Ck5hIGtsYXIgOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRGVyIFR5cG8gZGVzIFRhZ2VzIChDcm9mdCwgIDEuIEp1bCAyMDE3LCAwOTowNToyNik6Cn4jISBybj1BcmsgcnQ9MTQ5ODg2MDM0NCByZz1zY2htYXJybgp+IyEgdGlkPTE0OTg4NDEyNjcKSWNoIHZlcm11dGUgamEgbjwtPm0uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogRGVyIFR5cG8gZGVzIFRhZ2VzIChBcmssICAxLiBKdWwgMjAxNywgMDk6NDk6MzIpOgp+IyEgcm49Q3JvZnQgcnQ9MTQ5ODg5MjcyNiByZz1zY2htYXJybgp+IyEgdGlkPTE0OTg4NDEyNjcKTmVlZSwgd2l0emlnLCBhYmVyIG5pY2h0IGdhbnogb3J0aG9ncmFmaXNjaCBrb3JyZWt0IDopCkFsc28gYml0dGUsCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIGFsdGUgV2l0eiwgaW1tZXIgd2llZGVyIHBhc3NlbmQuIChBcmssICAyLiBKdWwgMjAxNywgMTY6MzM6NTMpOgpaZXNzdHJhICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpLUkFBQUFBQUFBQUFBQUFBQUFBQUFBQVdVTU1NTU1NTU1NTU1NTU1NTU1NTSEKSmVtYW5kIGhhdCBkZW4gV29scGVydGluZ2VyY2x1YiBpbiBkaWUgTHVmdCBnZXNwcmVuZ3QhCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERlciBhbHRlIFdpdHosIGltbWVyIHdpZWRlciBwYXNzZW5kLiAoTXVuZHJvbiwgIDIuIEp1bCAyMDE3LCAxNjo0Mzo1Nyk6Cn4jISBybj1BcmsgcnQ9MTQ5OTAwNjAzMyByZz1zY2htYXJybgp+IyEgdGlkPTE0OTkwMDYwMzMKV2FlcmUgWmVzc3RyYSBibG9zcyBuaWNodCBnZWdhbmdlbi4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIFByYWVzaWRlbnQgaXN0IGRhLCBlcyBsZWJlIGRlciAuLi4gYWVoIC4uLiBuYW51PyAoQXJrLCAgNy4gSnVsIDIwMTcsIDEyOjU3OjEzKToKTWlsYW5qYSBydWZ0OiBBbGxpYSBmb3IgcHJlc2lkZW50ISEhCkFtYXJ5bGxpcyAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKSmFubmUgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhClZhbmlyICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQoKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEVuZXJnaWVmZWxkIFJ1YmluIChDcm9mdCwgMjIuIEp1bCAyMDE3LCAwMTowMDo0Nyk6Cn4jISBybj1IdW1uaSBydD0xNTAwNjc0NDU3IHJnPWFuemVpZ2VuCn4jISB0aWQ9MTUwMDY3NDQzMwpEdSBtZWluc3QgZGllIGVyc3RlIFplaWxlIGRpZXNlIEFydGlrZWxzIHVuZCBkaWUgendlaXRlIGRlciBlcnN0ZW4gQXJ0aWtlbHMsCnJpY2h0aWc/CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk3MjI1OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNdW5kcm9uLCAgMi4gQXVnIDIwMTcsIDEyOjEyOjQ2KToKfiMhIHJuPUFudGhlYSBydD0xNTAxNjYzMzI5IHJnPW1lZ2FzY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApNZWluIEVybGVibmlzIG1pdCBDaGVrcm9uLCBkZXIgZ2VzdG9yYmVuIGlzdCwgd2VpbCBlciBkaWUgT3Jrd2FjaGVuIHZvcm0KUmF0aGF1cyBnZWdyaWZmZW4gaGF0IHVuZCBzaWNoIGRhbm4gbnVyIHdpZWRlcmJlbGViZW4gd29sbHRlOgoKYmV0ZQpEdSBuaW1tc3Qgd2llZGVyIG9ya2lzY2hlIEdlc3RhbHQgYW4uCkR1IHNjaGlja3N0IGVpbiBTdG9zc2dlYmV0IGdlbiBIaW1tZWwuCkRlciBQcmllc3RlciBzYWd0OiBDaGVrcm9uLCBEdSB3aXJzdCBzaWNoZXIgZGVuIHJpY2h0aWdlbiBXZWcgZmluZGVuLgo+IApbVG9kOkxhcnNdIEVpbiBPcmtwcmllc3RlciBoYXQgZ2VyYWRlIENoZWtyb24gdW1nZWJyYWNodC4KICBEZXIgT3JrcHJpZXN0ZXIgZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbiBHZWJldGVuIGFuLgogIEVpbiBPcmtwcmllc3RlciBzY2hsYWVndCBEaWNoIG1pdCBkZW0gS3JhY2hlbiBicmVjaGVuZGVyIEtub2NoZW4uCgpNaXN0ISBEYXMgd2FyIHNjaG9uIHdpZWRlciB6dSBrbmFwcCEKClNjaG9uIHdpZWRlciB0b3QhIAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTmEgZGVubiBtYW4gdGF1ISAoQXJrLCAyNS4gQXVnIDIwMTcsIDExOjQ0OjIxKToKW0FuZmFlbmdlcjpNZXJsaW5dIERyYXhpbmdlciBtYWNodCBudW4gZWJlbmZhbGxzIGRhcyBNb3JnZW5ncmF1ZW4gdW5zaWNoZXIuCltBbmZhZW5nZXI6TWVybGluXSBIZXJ6bGljaCBXaWxsa29tbWVuIERyYXhpbmdlciEKW0FuZmFlbmdlcjpSaG92YW5dIFdpbGxrb21tZW4gRHJheGluZ2VyIHVuZCB2aWVsIHNwYXNzIGhpZXIhCkVpbiBmdWVyY2h0ZXJsaWNoZXMgQmViZW4gZXJzY2h1ZXR0ZXJ0IGRpZSBEaW1lbnNpb25lbiBpbiBpaHJlbiBHcnVuZGZlc3Rlbi4KCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTk3MzMwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNdW5kcm9uLCAgMy4gU2VwIDIwMTcsIDE4OjUxOjI1KToKfiMhIHJuPUFudGhlYSBydD0xNTA0Mzk0Njk3IHJnPW1lZ2FzY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OAo+IGYgUHJpbnplc3NpbiBCcnVubmVuCkRpZSBQcmluemVzc2luIHNhZ3Q6IFdpciBoYWJlbiB1bnRlcndlZ3MgaW4gZGVyIE5hZWhlIHZvbiBXaWxoZWxtc2J1cmcgYmVpCkRpZSBQcmluemVzc2luIHNhZ3Q6IGVpbmVtIEJydW5uZW4gYW5nZWhhbHRlbiwgdW0gZGllIFBmZXJkZSB6dSB0cmFlbmtlbi4gRGEKRGllIFByaW56ZXNzaW4gc2FndDogaGFiZSBpY2ggYXVjaCBkaWVzZW4gc2VsdHNhbWVuIEZyb3NjaCBnZXNlaGVuLgo+IGYgUHJpbnplc3NpbiBGcm9zY2gKRGllIFByaW56ZXNzaW4ga2ljaGVydDogRGlyZWt0IGFtIEJydW5uZW4gc2FzcyBlaW4ga2xlaW5lciBzdWVzc2VyIEZyb3NjaC4gRWluCkRpZSBQcmluemVzc2luIGtpY2hlcnQ6IFdhbmRlcmVyIHNhZ3RlIG1pciwgbWFuIHNvbGxlIGlobiBuaWNodCBrdWVzc2VuLCBkYQpEaWUgUHJpbnplc3NpbiBraWNoZXJ0OiBtYW4gc29uc3Qgc2VsYnN0IHp1bSBGcm9zY2ggd2lyZC4gU293YXMgYWxiZXJuZXMsIGFiZXIKRGllIFByaW56ZXNzaW4ga2ljaGVydDogaWNoIGhhYmUgZXMgbGllYmVyIGRvY2ggbmljaHQgYXVzcHJvYmllcnQsIG5hY2hoZXIgaXN0CkRpZSBQcmluemVzc2luIGtpY2hlcnQ6IGRhcyBkb2NoIGtlaW5lIGVyZnVuZGVuZSBHZXNjaGljaHRlIQo+IApbQWJlbnRldWVyOkZyb3NjaCBSZWdvbm5hXSBRdWFhYWsuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNZWxkdW5nIHVlYmVyIGRhcyBFbmRlIHZvbiBzY2huZWxsIChDcm9mdCwgIDcuIFNlcCAyMDE3LCAwODo0ODoxMyk6Cn4jISBybj1BbmF0b2wgcnQ9MTUwNDc2NjM5NiByZz1naWxkZW4uYWJlbnRldXJlcgp+IyEgdGlkPTE1MDQ1NDUzMTQKU1NMIHVuZCBKYXZhIHNpbmQgZWluIEFiZW50ZXVlcj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IE1lbGR1bmcgdWViZXIgZGFzIEVuZGUgdm9uIHNjaG5lbGwgKEFuYXRvbCwgIDcuIFNlcCAyMDE3LCAxMDoxOToxNCk6Cn4jISBvbj1BbmF0b2wgb3Q9MTUwNDc2NjM5NiBvZz1naWxkZW4uYWJlbnRldXJlcgp+IyEgcm49WmVzc3RyYSBydD0xNTA0NjM3NzYxIHJnPWdpbGRlbi5hYmVudGV1cmVyCn4jISB0aWQ9MTUwNDU0NTMxNApTU0wgaXN0IHNjaGVpc3NlLiBadW1pbmRlc3Qgd2VubiBtYW4gbWl0IGphdmEga2V5c3RvcmVzIGhlcnVtbWFjaGVuIAptdXNzIHVuZCBkYXZvbiBlaWdlbnRsaWNoIGtlaW5lIEFobnVuZyBoYXQuCgoobXVybWVsdCB3YXMgdm9uICJ1bmFibGUgdG8gZmluZCB2YWxpZCBjZXJ0aWZpY2F0aW9uIHBhdGgiKQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1lbGR1bmcgdWViZXIgZGFzIEVuZGUgdm9uIHNjaG5lbGwgKFplc3N0cmEsICA3LiBTZXAgMjAxNywgMTg6MjU6MjcpOgp+IyEgcm49QW5hdG9sIHJ0PTE1MDQ3NzIzNTQgcmc9c2NobWFycm4KfiMhIHRpZD0xNTA0NTQ1MzE0Ck9oamEsIGRpZXNlIEphdmEga2V5c3RvcmVzIHNpbmQgaW4gZGVyIFRhdCBzZWhyIHVuaGFuZGxpY2guIEJ6dy4gZWlnZW50bGljaApkYXMga2V5dG9vbCBkYXp1Li4uCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNZWxkdW5nIHVlYmVyIGRhcyBFbmRlIHZvbiBzY2huZWxsIChSdW1hdGEsICA4LiBTZXAgMjAxNywgMDk6NTA6MDQpOgp+IyEgcm49WmVzc3RyYSBydD0xNTA0ODAxNTI3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUwNDU0NTMxNApVbmQgenVyIEtyb2VudW5nIG51dHp0IEJvdW5jeWNhc3RsZShhbmRyb2lkKSBlaW4genUgT3JhY2xlIGlua29tcGF0aWJsZXMKZm9ybWF0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVW53YWhyc2NoZWlubGljaCAoVGl6b25hLCAgOS4gU2VwIDIwMTcsIDIwOjM4OjU2KToKW0FuZmFlbmdlcjpNZXJsaW5dIFNlb29remkgbWFjaHQgbnVuIGViZW5mYWxscyBkYXMgTW9yZ2VuZ3JhdWVuIHVuc2ljaGVyLgo8U2EsIDIwOjEwOjQwPgpbQW5mYWVuZ2VyOk1lcmxpbl0gSGVyemxpY2ggV2lsbGtvbW1lbiBTZW9va3ppISAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKW0FuZmFlbmdlcjpBbGxpYV0gV2lsbGtvbW1lbiBTZW9va3ppIHVuZCB2aWVsIFNwYXNzIQpbLi4uXQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBPcmtzXSBXaWVkZXIgbWFsIGFuIFNlb29remkgZ2VzdG9yYmVuLCBmaW5kIGljaCBhbGJlcm4hCjxTYSwgMjA6Mjg6NTU+CltBbmZhZW5nZXI6RWluIGtsZWluZXIgU3RlaW5iZWlzc2VyXSBTZW9va3ppIGVyd2llcyBtaXIgZWluZW4gZnJldW5kbGljaGVuCltBbmZhZW5nZXI6RWluIGtsZWluZXIgU3RlaW5iZWlzc2VyXSBCb3RlbmRpZW5zdC4gRWluIGF1c3Nlcmdld29laG5saWNoZXMKW0FuZmFlbmdlcjpFaW4ga2xlaW5lciBTdGVpbmJlaXNzZXJdIFBvdGVudGlhbCBlbnRmYWx0ZXQgc2ljaCB2b3IgdW5zZXJlbgpbQW5mYWVuZ2VyOkVpbiBrbGVpbmVyIFN0ZWluYmVpc3Nlcl0gQXVnZW4hIEtvYW5hIHVuZCBBbmFuaCdUYW5hbXVuaCBrb2VubmVuCltBbmZhZW5nZXI6RWluIGtsZWluZXIgU3RlaW5iZWlzc2VyXSBzaWNoIHNjaG9ubWFsIHdhcm0gYW56aWVoZW4uICAgIAoKSWNoIGdsYXViZSBkZXIgT3JrIGx1ZWd0LiA6bykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFuZ2ViZXIhIEJhY2tsYXNoISBUb29vb29yISAoQmx1dGdpZXIsIDIxLiBTZXAgMjAxNywgMTA6NTk6MjcpOgpbTW9lcmRlcjpHZWlzdCBlaW5lciBrbGVpbmVuIFZhbXBpcmZsZWRlcm1hdXNdIEljaCBsYXNzJyBtaWNoIGF1ZndlcnRlbiB1bmQKW01vZXJkZXI6R2Vpc3QgZWluZXIga2xlaW5lbiBWYW1waXJmbGVkZXJtYXVzXSB3ZXJkZSBaYXViZXJlciwgTXVuZHJvbiEKW01vZXJkZXI6TXVuZHJvbl0gamFtbWVybiBrYW5uc3QgZHUgamEgc2Nob24gZ3V0IDopCltUb2Q6TGFyc10gRWluZSBWYW1waXJmbGVkZXJtYXVzIGhhdCBnZXJhZGUgTXVuZHJvbiB1bWdlYnJhY2h0LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBbmdlYmVyISBCYWNrbGFzaCEgVG9vb29vciEgKFRpem9uYSwgMjIuIFNlcCAyMDE3LCAwMDoxNDoxNyk6Cn4jISBybj1CbHV0Z2llciBydD0xNTA1OTg0MzY3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUwNTk4NDM2NwpUb2Qgd2FyIGdlcmFkZSBhdWNoIG5pY2h0IG1laHIgYW11ZXNpZXJ0OgoKVE9EIGdyaW5zdCBEaWNoIGFuLgoKCltUb2Q6TGFyc10gRWluZSByb3Nhcm90ZSBCcmlsbGUgaGF0IGdlcmFkZSBKYW5uZSB1bWdlYnJhY2h0LgpbVG9kOkVpbmUgcm9zYXJvdGUgQnJpbGxlXSBEdSB3b2xsdGVzdCBkb2NoIHVuYmVkaW5ndCBMYXJzIGJlc3VjaGVuLgpUT0Qgc2FndDogR1JSUiEgR1JSUlJSUlJSIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChEaWVkZXIsIDI1LiBTZXAgMjAxNywgMTY6MTE6MzApOgpWb24gRnJldW5kIEh1cmF4cHJheDogc2luZCBpbiBkZXIgYnJ1bW5pbGlzdGUgYXVjaCBla3MgZGllIG5vY2gKVm9uIEZyZXVuZCBIdXJheHByYXg6IGtlaW5lciBnZWhhdWVuIGhhdD8gWzE2OjA1XQpWb24gRnJldW5kIEh1cmF4cHJheDogb2sgZnJhZ2Uga2FubiBpY2ggbWlyIHNlbGJzdCBiZWFudHdvcnRlbgpWb24gRnJldW5kIEh1cmF4cHJheDogWzE2OjA1XQpbVG9kOkxhcnNdIERlciB3aXJiZWxuZGUgV2luZHd5cm0gVGhheWZ1bmRhciBoYXQgZ2VyYWRlIEh1cmF4cHJheCB1bWdlYnJhY2h0LgpbVG9kOkRlciB3aXJiZWxuZGUgV2luZHd5cm0gVGhheWZ1bmRhcl0gSGVydW1nZXdpcmJlbHQsIHJhc2NoIHplcnNjaGVsbHQsCltUb2Q6RGVyIHdpcmJlbG5kZSBXaW5kd3lybSBUaGF5ZnVuZGFyXSB3YXJzdCBuaWNodCBnZW1hY2h0IGZ1ZXIgZGllc2UgV2VsdC4KCkRpZWRlcgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChLaG9uaWdoLCAgNC4gT2t0IDIwMTcsIDEzOjE3OjM4KToKVm9uIFNpbmlzdGVyOiBpc3QgZGVyIHdhcm9za2lsbCBhZXR6ZW5kCi4uLgpbVG9kOkxhcnNdIFZvZWxsaWdlIEVyc2Nob2VwZnVuZyBoYXQgZ2VyYWRlIFNpbmlzdGVyIHVtZ2VicmFjaHQuCgpLaG9uaWdoCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEtob25pZ2gsICA0LiBPa3QgMjAxNywgMTc6MTI6MzMpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBaeWtsb3BlbndhZWNodGVyc10gQWJlciB2b3JzaWNodCwgTXVuZHJvbiBpc2NoIGt1dXVsCltNb2VyZGVyOkdlaXN0IGVpbmVzIFp5a2xvcGVud2FlY2h0ZXJzXSBtYWVuIQpbTW9lcmRlcjpNdW5kcm9uXSB3b2FoIGV5LiBLdXV1bCBtYWVuIDopCltUb2Q6TGFyc10gVml0b3MgaGF0IGdlcmFkZSBNdW5kcm9uIHVtZ2VicmFjaHQuCltUb2Q6Vml0b3NdIFVudGVyc2NoYWV0emUgbmllIGRpZSBNYWNodCBkZXIgR29ldHRpbiwgTXVuZHJvbiEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClVuc3RldGVzIFB1Ymxpa3VtIChBcmssICA4LiBPa3QgMjAxNywgMTU6MDM6MDkpOgpCdWdmaXggICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkJhbWJpICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhCkRlaW4gRnJldW5kIEJhbWJpIHRlaWx0IERpciBtaXQ6IGhpCkJ1Z2ZpeCAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpCYW1iaSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKSHVyYXhwcmF4ICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpIdXJheHByYXggICBJIFMgVCAgIEogRSBUIFogVCAgIEQgQSAhISEKRGVpbiBGcmV1bmQgSHVyYXhwcmF4IHRlaWx0IERpciBtaXQ6IHJlCkJ1Z2ZpeCAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKQnVnZml4ICAgSSBTIFQgICBKIEUgVCBaIFQgICBEIEEgISEhClphcmt1ICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpaYXJrdSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKCkFyayBkZW5rdCAuIG8gTyhlcndhcnRlIGFudHdvcnRlbikKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFcndpc2NodCEgKEFyaywgMTQuIE5vdiAyMDE3LCAxNzoyMDozMik6CltUb2Q6TGFyc10gRWluIE5lY3JvbWFudCBoYXQgZ2VyYWRlIFh5a29uIHVtZ2VicmFjaHQuClpvb2sgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCkRhcyB3YXIgbGVpY2h0IC4uLiBzY2hvbiAxNyBLbm9jaGVuIGdlc2FtbWVsdC4gRGllIFNwaWVsZXIgc2luZCBXZWljaGVpZXIuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZmx3IChBbWFyeWxsaXMsIDE2LiBOb3YgMjAxNywgMjE6MzM6MDMpOgpbR3JhdHM6RmVydW1icmFzXSBzdXBlciA6KQpbVG9kOkxhcnNdIEVpbmVyIGRlciBtYWVjaHRpZ2VuIEVmcmVldGkgaGF0IGdlcmFkZSBGZXJ1bWJyYXMgdW1nZWJyYWNodC4KW1RvZDpFaW5lciBkZXIgbWFlY2h0aWdlbiBFZnJlZXRpXSBOaWVtYW5kIHJ1ZnQgSmh1cmFuIHVuZ2VzdHJhZnQsIHdlciBkZW4KW1RvZDpFaW5lciBkZXIgbWFlY2h0aWdlbiBFZnJlZXRpXSBMZWljaHRzaW5uIGtlbm50LCBicmFldCBpbSBlaWcnbmVuIFNhZnQuIAoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRHVua2VsZWxmZW4gdW5kIGlocmUgTWFjaHQgLi4uIChBcmssIDI0LiBOb3YgMjAxNywgMTY6MzM6MzkpOgogTmF0dHlyYSBzYWd0OiBmZWluCk5hdHR5cmEga251ZGRlbHQgRGljaC4KTmF0dHlyYSBodWVsbHQgc2ljaCBpbiBkZW4gU2NobGVpZXIgZGVyIE5hY2h0IHVuZCBzY2h3ZWJ0IG5hY2ggTm9yZGVuLgpFaW4gS2ljaGVybiBlcnRvZW50IGF1cyBkZW0gTmViZWwuIER1IHNjaHJlY2tzdCB6dXNhbW1lbiAuLi4KCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEluIFNhY2hlbiBLbm9jaGVuIC4uLiAoQnVnZml4LCAyNy4gTm92IDIwMTcsIDE0OjAwOjExKToKfiMhIHJuPUFyayBydD0xNTExNzg3NDIxIHJnPWQuYW5mYWVuZ2VyCn4jISB0aWQ9MTUxMTc4NzQyMQo+IERpZSBhbHRlIExvZXN1bmcgZGFmdWVyIGZ1bmt0aW9uaWVydGUgc2Nob24gbWVociBhbHMgMyBKYWhyZSBuaWNodCBtZWhyLgpKYSwgc28gdW5nZWZhZWhyIDEwIC4uLiBzZWl0IEFuc2NobHVzcy4gOi1ECgpCdWdmaXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSW4gU2FjaGVuIEtub2NoZW4gLi4uIChBcmssIDI3LiBOb3YgMjAxNywgMTQ6MTM6MjEpOgp+IyEgcm49QnVnZml4IHJ0PTE1MTE3ODc2MTEgcmc9c2NobWFycm4KfiMhIHRpZD0xNTExNzg3NDIxCkRhIHNpZWhzdCBEdSwgZGFzcyBoYWx0IG51ciByaWNodGlnZSBNYWVubmVyIGRpZSBLYWVtcGZlIGJlc3RyaXR0ZW4gaGFiZW4sCndlbm4gc2ljaCBkYSBuaWVtYW5kIGJla2xhZ3RlLiBVbmQgTWFlbm5lciBrbGFnZW4gbmllISBOaWVtYWxzIG5pY2h0ISBOaWNodAplaW5tYWwsIHdlbm4gc2llIGVpbmVzIEJlc3NlcmVuIGJlbGVocnQgd2VyZGVuLiBBbnNvbnN0ZW4gbXV0aWVyZW4gc2llIHp1bQpXYXNjaHdlaWIuIEF1cyBTdHJhZmUhIFdvaGVyIGljaCBkYXMgd2Vpc3M/IEljaCBiaW4gZWluIE1hbm4gOi0pCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKV2VpaG5hY2h0c2dlZGljaHQgKEh1bW5pLCAgMS4gRGV6IDIwMTcsIDIxOjMyOjMxKToKQXVzIGdlZ2ViZW5lbSBBbmxhc3MuCgpEZXIgV2VpaG5hY2h0c3Ryb2xsIHZlcnN0ZWNrdCBkaWUgU2FjaGVuLgpTcGllbGVyIGhhYmVuIG5pY2h0cyB6dSBMYWNoZW4uClNjaG9rb2xhZGUgZ2lidCBlcyBudXIsCnN1Y2h0IG1hbiBydW0gaW4gZGVyIE5hdHVyLgpTcGllbGVyIGZvcnNjaGVuLCBzY2hpbXBmZW4sIGZsdWNoZW4sCnR1biBuaWNodCBmaW5kZW4sIHR1biBudXIgc3VjaGVuLgpTcGllbGVyIGJlc2Nod2VyZW4gc2ljaCB3aXJrbGljaCBsYXV0LApNb25zdGVyIGZyZXVlbiBzaWNoIChrZWluZXIgc2llIGhhdXQpLgpBbGxlcyBzdGVodCBzdGlsbCB2b3IgVHVlcmNoZW5mcnVzdCwKbmllbWFuZCBpc3QgenVyIFRhdCBiZXJlaXQsCmRhcyBkYWVtcGZ0IHNvIGplZGUgU3BpZWxlcmx1c3QuClNvIHNjaG9lbiBpc3QgZGllIFdlaWhuYWNodHN6ZWl0IQoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBKYWhyZXNlbmRnZXdpbm5zcGllbCAoR2xvaW5zb24sIDEzLiBEZXogMjAxNywgMDk6NTA6MjMpOgp+IyEgcm49SHVtbmkgcnQ9MTUxMzE1NDg2NCByZz1hbnplaWdlbgp+IyEgdGlkPTE1MTMxNTQ4NjQKNTk4OTQ4Mjc0MjM5MDQ1MiwxMgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBKYWhyZXNlbmRnZXdpbm5zcGllbCAoUnVtYXRhLCAxMy4gRGV6IDIwMTcsIDEwOjA0OjI4KToKfiMhIHJuPUh1bW5pIHJ0PTE1MTMxNTQ4NjQgcmc9YW56ZWlnZW4KfiMhIHRpZD0xNTEzMTU0ODY0Ci4gbyBPIChJIHNlZSB3aGF0IHlvdSBkaWQgdGhlcmUpIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1HIGF1ZiBkZW0gMzRjMyAoVmFuaW9uLCAyMi4gRGV6IDIwMTcsIDEyOjEwOjM3KToKfiMhIHJuPVZhbmlvbiBydD0xNTEzOTQwOTk0IHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTUxMzk0MDk5NAouLi4gb2RlciBhbGxlcyBrYXB1dHQgZ2VoYWNrdCB3aXJkLgoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTUcgYXVmIGRlbSAzNGMzIChBcmssIDIyLiBEZXogMjAxNywgMTQ6MTc6MTEpOgp+IyEgcm49VmFuaW9uIHJ0PTE1MTM5NDEwMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xNTEzOTQwOTk0ClZhbmlvbiBpc3QgZWluIHZlcm1vZWdlbmRlciBNYW5uLCBlciBzdGVodCBuYXR1ZXJsaWNoIGZ1ZXIgZXR3YWlnZSBTY2hhZWRlbgplaW4uIEFsc28gc293YXMgaXN0IGRvY2gga2VpbiBEaW5nIDotKQoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE1HIGF1ZiBkZW0gMzRjMyAoVmFuaW9uLCAyMy4gRGV6IDIwMTcsIDIwOjI5OjE1KToKfiMhIHJuPUFyayBydD0xNTEzOTQ4NjMxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUxMzk0MDk5NApNZWluZSBUYXNjaGVuIHNpbmQgdm9sbCwgYWJlciB6dS4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpVbWZyYWdlIChIdW1uaSwgMjMuIERleiAyMDE3LCAyMDo0NTowNSk6CkVzIHRydWcgc2ljaCB6dSwgZGFzcyB3aXIgZWluZSBVbWZyYWdlIGJyYXVjaHRlbiAuLi4gdW5kIGRhcnVtIGRpZXNlIEZyYWdlCnN0ZWxsZW4gd29sbGVuOgoKRmluZGVzdCBEdSBkZW4gTmFtZW4gV3VtcGZpeGVydGVsIHNjaGxpbW1lciBvZGVyIGRlbiBOYW1lbgpUaHVzbmVsZGlhbmFyaGF1c2VuZXJvYmVyZGVwcGVydGFudGU/CgpEYW5rZSBmdWVyIGRpZSBBdWZtZXJrc2Fta2VpdCwgQW50d29ydGVuIGJpdHRlIGluIGRlbiBUaHJlYWQuCgpEaWUgRnJhZ2UgaXN0IHRyb3R6IGRlciBSdWJyaWsgdm9uIGVpbmVtIGdld2lzc2VuIEludGVyZXNzZS4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogVW1mcmFnZSAoQXJrLCAyMy4gRGV6IDIwMTcsIDIwOjQ2OjM4KToKfiMhIHJuPUh1bW5pIHJ0PTE1MTQwNTgzMDUgcmc9c2NobWFycm4KfiMhIHRpZD0xNTE0MDU4MzA1CkFudHdvcnQgMSAuLi4gYmVpbSB6d2VpdGVuIGhhYiBpY2ggbmFjaCBlaW5lciBTZWt1bmRlIHNjaG9uIG51ciBkZW4gQW5mYW5nCmJlaGFsdGVuLgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBVbWZyYWdlIChUaXpvbmEsIDIzLiBEZXogMjAxNywgMjA6NDY6NTYpOgp+IyEgcm49SHVtbmkgcnQ9MTUxNDA1ODMwNSByZz1zY2htYXJybgp+IyEgdGlkPTE1MTQwNTgzMDUKSXN0IGJlaW0gendlaXRlbiBOYW1lbiAidGFudGUiIGF1Y2ggZWluZSBndWVsdGlnZSBpZD8gOm8pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFVtZnJhZ2UgKEFyaywgMjMuIERleiAyMDE3LCAyMDo0ODozMyk6Cn4jISBybj1UaXpvbmEgcnQ9MTUxNDA1ODQxNiByZz1zY2htYXJybgp+IyEgdGlkPTE1MTQwNTgzMDUKS2xhciwgdGVzdGU6IDx0b2V0ZSB0YW50ZT4KSWNoIHdhZWhsZSBzY2hvbW1hIDExMC4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBVbWZyYWdlIChUaXpvbmEsIDIzLiBEZXogMjAxNywgMjA6NTA6MTApOgp+IyEgcm49QXJrIHJ0PTE1MTQwNTg1MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xNTE0MDU4MzA1CiJ0b2V0ZSB0YW50ZSIga2xpbmd0IHNjaG9uIHNlaHIgbmFjaCBTdGFuZGFyZHdlaWhuYWNodGVuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogVW1mcmFnZSAoQnVnZml4LCAyMy4gRGV6IDIwMTcsIDIyOjU2OjI5KToKfiMhIHJuPVRpem9uYSBydD0xNTE0MDU4NjEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUxNDA1ODMwNQoKQWxzbyB3ZW5uIGVzIGtlaW5lIGt1ZXJ6ZXJlbiBJRHMgd2llICJ0YW50ZSIgZ2lidCBpc3QgZGVyIHp3ZWl0ZSBOYW1lCmVpbmRldXRpZyBzY2hsaW1tZXIgLi4uIGFuc29uc3RlbiB0dW4gZGllIHNpY2ggaW1vIGFiZXIgbmljaHQgdmllbC4gOy0pCgpCdWdmaXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCldlaWhuYWNodHNkZWtvPyAoWXhhcXVpLCAyOC4gRGV6IDIwMTcsIDIwOjUwOjM1KToKW0FuZmFlbmdlcjpBcmsgd2lyZnQgR2xpdHplcnN0YXViIGF1ZiBEdW5rZWxlbGZlbiB1bmQgRHVua2VsendlcmdlIC4uLgogICAgICAgICAgIG5hY2h3ZWlobmFjaHRsaWNoZSwgcmFzc2lnZSBEZWtvcmF0aW9uLl0KR3Jhc2NoaSBndWNrdCB2ZXJ0cmFldW10IGluIGRpZSBHZWdlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXYXNzZXJ1bnZlcnRyYWVnbGljaGtlaXQgKElsdnksICAxLiBKYW4gMjAxOCwgMTQ6MTY6NDgpOgpEYXMgWmFobGVuc2NobG9zcyBzdGVodCBqZXR6dCBhdWYgMTEyLgoKVEFhYWFhYWFhVHV1dXV1dXV1VGFhYWFhYWFUQUFBQUFBIQpGZXVlcndlaHIga29tbXQgYW4gdW5kIHNwcml0enQgRGljaCBrbGF0c2NobmFzcy4KRmV1ZXJ3ZWhyIGdyaW5zdCB1bmQgcmVubnQgd2llZGVyIHdlZy4KCkRpZSBFbmVyZ2llbiBkZXMgS29rb3JvIHZlcnNpZWdlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFoamEhIChWYW5pciwgIDEuIEphbiAyMDE4LCAxNzozMzozOSk6ClZvbiBGcmV1bmRpbiBTYXJheTogcmUuLi4gZmxlaXNzaWcgaWNoIHdhcgpbVG9kOkxhcnNdIEV0d2FzIEdlaGVpbW5pc3ZvbGxlcyB1bmQgVW5iZWthbm50ZXMgaGF0IGdlcmFkZSBSaG92YW4KdW1nZWJyYWNodC4qKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKS29lbm50ZSB2b24gSHVtbmkgc2VpbiA6LSkgKEFyaywgIDQuIEphbiAyMDE4LCAyMTo0ODo1Myk6CkltbWVyIHdpZWRlciBnZWlsOgoKaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dj1Tck5WRzNKaThLQQoKQmFkZXNhbHosIGZ1ZXIgTmljaHQtSGVzc2VuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUzogQW5kcm9pZC1Nb2JpbHRlbGVmb24gIChSdW1hdGEsICA5LiBKYW4gMjAxOCwgMTA6NDg6MTkpOgp+IyEgcm49Wm9vayBydD0xNTE1NDkwODYyIHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTE1MTUzNTM4NjIKSWNoIGhhYmUgbWVpbmVuIFNvbnkgQm95a290dCBub2NoIGltbWVyIG5pY2h0IGF1ZmdlaG9iZW4gLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTOiBBbmRyb2lkLU1vYmlsdGVsZWZvbiAgKFpvb2ssICA5LiBKYW4gMjAxOCwgMTE6NTg6MDQpOgp+IyEgcm49UnVtYXRhIHJ0PTE1MTU0OTEyOTkgcmc9c2NobWFycm4KfiMhIHRpZD0xNTE1MzUzODYyCldhciBkYXMgZWluemlnZSBEZXZpY2UsIHdvIFNhaWxmaXNoIE9TIGhhbGJ3ZWdzIHNpY2hlciBkcmF1ZiAKbGFldWZ0LgoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERpZSBCYWhuIHN1Y2h0IFNlaGJlaGluZGVydGUgKEdsb2luc29uLCAgOS4gSmFuIDIwMTgsIDIwOjQ1OjM4KToKfiMhIHJuPVJ1bWF0YSBydD0xNTE1NDg4ODI2IHJnPXd3dwp+IyEgdGlkPTE1MTU0ODg4MjYKV2VpbCBzaWUgc2ljaCBnZWdlbnNlaXRpZyBuaWNodCB3ZWluZW4gc2VoZW4ga29lbm5lbj8gSWNoIGhhYiBkZW4gRWluZHJ1Y2ssCm5hY2hkZW0gZGEgbWl0IFRyYXJhIGF1ZiBTY3J1bSB1bWdlc3RlbGx0IHd1cmRlLCBpc3QgZGllIFF1YWxpdGFldCBlcnN0bWFsCmdlc3Vua2VuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkxldmVsIDYyIC0gc28gbm9ybWFsLCBzbyB2ZXJydWVja3QgKE1pbGFuamEsIDEwLiBKYW4gMjAxOCwgMDA6MzY6MjEpOgpLZW5udCBpaHIgZGFzPyBJaHIgaWRsZXQgZ2VtdWV0bGljaCBpbiBldXJlbiBTZWhlcmhhZXVzZXJuIGhlcnVtIHVuZCBkZW5rdAp1ZWJlciBkZW4gRXJuc3QgZGVzIExlYmVucywgZGllIGdyb3NzZSwgd2VpdGUgV2VsdCBkZXMgTW9yZ2VuR3JhdWVuIHVuZApkYXJ1ZWJlciBuYWNoLCB3YXMgcGFzc2llcnQsIHdlbm4gZWluZSBFbGZlIChXZXJ3b2xmIHVuZCBHaWxkZW5sZXZlbCAxMSkKU3BpZWxlcnN0dWZlIDYyIGVycmVpY2h0Li4uCk9rYXksIHZpZWxsZWljaHQgaGFidCBpaHIgZXVjaCBkYXMgYXVjaCBub2NoIG5pZSBnZWZyYWd0LCBhYmVyIHdlciBmdWVyIGRlbgpmcnVlaGVuIE1vcmdlbiBlaW5lbiBrbGVpbmVuIExhY2hlciBicmF1Y2h0LCBlcmZhZWhydCBlcyBqZXR6dCB0cm90emRlbToKQWxsZXMgZmluZyBtaXQgZWluZXIgYXVzZ2llYmlnZW4gTWV0emVsdG91ciBhbiwgZGllIGRpdmVyc2UsIG5pY2h0IHp1CnVudGVyc2NoYWV0emVuZGUgTnBjcyBlaW5zY2hsb3NzLiBJY2ggd2FyIGt1cnogZGF2b3IgLSBXZXIgaGFldHRlIGVzIGdlZGFjaHQgLQpMZXZlbCA2MiB6dSBlcnJlaWNoZW4sIHdhcyB6dSBkaWVzZW0gWmVpdHB1bmt0IGF1Y2ggbWVpbiBIYXVwdHppZWwgd2FyIC0gTmViZW4KZGVyIFdlcndvbGZnZXNjaGljaHRlIGFtIExhZ2VyZmV1ZXIgYXVmIGRlciBXZXJ3b2xmaW5zZWwsIGRpZSBtZWluIDEyLgpHaWxkZW5sZXZlbCB2b3JyYXVzc2V0enQuCkplZGVuZmFsbHMgaGFiZW4gd2lyIChEanRvbSwgSHVyYXhwcmF4IHVuZCBpY2gpLCBuYWNoZGVtIGRpZSBsYW5nZSBlcndhcnRldGUKS29zdGVubWVsZHVuZyBlaW5nZXRyb2ZmZW4gaXN0LCBzcG9udGFuIGJlc2NobG9zc2VuLCBkaWVzZW4gRXJmb2xnIHp1IGZlaWVybn5xCkRpZSBhYnNvbHV0ZSBBcG9rYWx5cHNlIGJlZ2FubiBtaXQgZWluZXIgYXVzZ2V3b2dlbmVuIE1ldHplbHRvdXIgZHVyY2hzCk1vcmdlbkdyYXVlbi4gRGFzIFppZWwgd2FyIGVzLCBub2NoIGFuIGRpZXNlbSBUYWcgZGllIDYyLiBTcGllbGVyc3R1ZmUgenUKZXJyZWljaGVuLiBOYWNoZGVtIGRpZSBsYW5nIGVyc2VobnRlIEtvc3Rlbm1lbGR1bmcgRU5ETElDSCBlaW5nZXRyb2ZmZW4gd2FyLApiZXNjaGxvc3NlbiBEanRvbSwgSHVyYXhwcmF4IHVuZCBpY2gsIGRlbiBFcmZvbGcgYW0gU2FuZHRpZ2VyIHp1IGZlaWVybi4gV2FzCmRhbiBrYW0sIGhhdCBzbyBtYW5jaGVtIGFyZ2xvcyB2b3JiZWlsYXVmZW5kZW4gU3BpZWxlciBkaWUgQXVnZW4gYXVzIGRlbSBLb3BmCmdlc3ByZW5ndDoKRGFzIFBhcnR5bW9uc3RlciBnaWJ0IGRlbSBXYW5kbGVyIGVpbmVuIEpvaW50LgpFaW4gV2FuZGxlciBzZXR6dCBzaWNoIGhpbiB1bmQgcmF1Y2h0IGVpbmVuIEpvaW50LgpMYWJlcnNjaG5hYmVsIHNldHp0IHNpY2ggaGluIHVuZCByYXVjaHQgZWluZW4gSm9pbnQuCktsZXJpa2VyIHNldHp0IHNpY2ggaGluIHVuZCByYXVjaHQgZWluZW4gSm9pbnQuCkVpbiB3aW56aWdlciBXb2xwZXJ0aW5nZXIgc2V0enQgc2ljaCBoaW4gdW5kIHJhdWNodCBlaW5lbiBKb2ludC4KRWluIFNjaGFmIHNldHp0IHNpY2ggaGluIHVuZCByYXVjaHQgZWluZW4gSm9pbnQuCkRlciBTYW5kdGlnZXIgc2FndDogPEhpY2s+IQpFaW5lIGtsZWluZSwgZ29sZGVuZSBEb25uZXJlY2hzZSBzZXR6dCBzaWNoIGhpbiB1bmQgcmF1Y2h0IGVpbmVuIEpvaW50LgpUYWxpdGhhIHNldHp0IHNpY2ggaGluIHVuZCByYXVjaHQgZWluZW4gSm9pbnQuCkVpbiBBYmJpbGQgUmF2ZW5sb3JkcyBzZXR6dCBzaWNoIGhpbiB1bmQgcmF1Y2h0IGVpbmVuIEpvaW50LgpPbWJhdGlzIHNldHp0IHNpY2ggaGluIHVuZCByYXVjaHQgZWluZW4gSm9pbnQuClR5b29ydGhvayBzZXR6dCBzaWNoIGhpbiB1bmQgcmF1Y2h0IGVpbmVuIEpvaW50LgpJbnRhcmJpciBzZXR6dCBzaWNoIGhpbiB1bmQgcmF1Y2h0IGVpbmVuIEpvaW50LgpLcnVmdHVyIHNldHp0IHNpY2ggaGluIHVuZCByYXVjaHQgZWluZW4gSm9pbnQuCkVpbiBFaW5ob3JuIHNldHp0IHNpY2ggaGluIHVuZCByYXVjaHQgZWluZW4gSm9pbnQuClN0YWxrbWUgc2V0enQgc2ljaCBoaW4gdW5kIHJhdWNodCBlaW5lbiBKb2ludC4KU2VsYnN0bW9yZCBzZXR6dCBzaWNoIGhpbiB1bmQgcmF1Y2h0IGVpbmVuIEpvaW50LgpCaHV0dXJpaCB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpFaW5lIGtsZWluZSBTY2hsYW5nZSB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpFaW4ga2xlaW5lciBHbHVyZyB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KU3RhbGt5b3Ugd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCkVpbiBTYW5kdGlnZXIgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuClNlbGJzdGxvZXNjaHVuZyB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpFaW4gWm9tYmllIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpMYWJlcnNjaG5hYmVsIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpLbGVyaWtlciB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KRWluIHdpbnppZ2VyIFdvbHBlcnRpbmdlciB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludAogICAgIGVpbmdlaHVlbGx0LgpFaW4gU2NoYWYgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCkVpbmUga2xlaW5lLCBnb2xkZW5lIERvbm5lcmVjaHNlIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgaWhyZW0gSm9pbnQKICAgICBlaW5nZWh1ZWxsdC4KVGFsaXRoYSB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KRWluIEFiYmlsZCBSYXZlbmxvcmRzIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50CmVpbmdlaHVlbGx0LgpPbWJhdGlzIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpUeW9vcnRob2sgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCkludGFyYmlyIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpLcnVmdHVyIHdpcmQgdm9uIGRpY2tlbiBSYXVjaHdvbGtlbiBhdXMgc2VpbmVtIEpvaW50IGVpbmdlaHVlbGx0LgpFaW4gRWluaG9ybiB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KU3RhbGttZSB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KU2VsYnN0bW9yZCB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KRGFzIEFiYmlsZCBSYXZlbmxvcmRzIHNhZ3Q6IDxIaWNrPiEKRGllIGtsZWluZSBTY2hsYW5nZSBzYWd0OiA8SGljaz4hClN0YWxrbWUgc2FndDogPEhpY2s+IQpCaHV0dXJpaCB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpFaW5lIGtsZWluZSBTY2hsYW5nZSB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIGlocmVtIEpvaW50IGVpbmdlaHVlbGx0LgpFaW4ga2xlaW5lciBHbHVyZyB3aXJkIHZvbiBkaWNrZW4gUmF1Y2h3b2xrZW4gYXVzIHNlaW5lbSBKb2ludCBlaW5nZWh1ZWxsdC4KU3RhbGt5b3Ugd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCkVpbiBTYW5kdGlnZXIgd2lyZCB2b24gZGlja2VuIFJhdWNod29sa2VuIGF1cyBzZWluZW0gSm9pbnQgZWluZ2VodWVsbHQuCgpEYXMgUGFydHltb25zdGVyIGdpYnQgZGVtIFNhbmR0aWdlciBlaW4gRmxlcGkuCktsZXJpa2VyIHBsb3BwdCBlaW4gRmxlcGkgYXVmLgpLbGVyaWtlciB0cmlua3QgZWluIEZsZXBpLgpTZWxic3Rtb3JkIHBsb3BwdCBlaW4gRmxlcGkgYXVmLgpTZWxic3Rtb3JkIHRyaW5rdCBlaW4gRmxlcGkuCk9tYmF0aXMgcGxvcHB0IGVpbiBGbGVwaSBhdWYuCk9tYmF0aXMgdHJpbmt0IGVpbiBGbGVwaS4KS3J1ZnR1ciBwbG9wcHQgZWluIEZsZXBpIGF1Zi4KS3J1ZnR1ciB0cmlua3QgZWluIEZsZXBpLgpMYWJlcnNjaG5hYmVsIHBsb3BwdCBlaW4gRmxlcGkgYXVmLgpMYWJlcnNjaG5hYmVsIHRyaW5rdCBlaW4gRmxlcGkuCkVpbiBFaW5ob3JuIHBsb3BwdCBlaW4gRmxlcGkgYXVmLgpFaW4gRWluaG9ybiB0cmlua3QgZWluIEZsZXBpLgpCaHV0dXJpaCBwbG9wcHQgZWluIEZsZXBpIGF1Zi4KQmh1dHVyaWggdHJpbmt0IGVpbiBGbGVwaS4KRWluZSBrbGVpbmUgU2NobGFuZ2UgcGxvcHB0IGVpbiBGbGVwaSBhdWYuCkVpbmUga2xlaW5lIFNjaGxhbmdlIHRyaW5rdCBlaW4gRmxlcGkuCkVpbmUga2xlaW5lLCBnb2xkZW5lIERvbm5lcmVjaHNlIHBsb3BwdCBlaW4gRmxlcGkgYXVmLgpFaW5lIGtsZWluZSwgZ29sZGVuZSBEb25uZXJlY2hzZSB0cmlua3QgZWluIEZsZXBpLgpFaW4gd2luemlnZXIgV29scGVydGluZ2VyIHBsb3BwdCBlaW4gRmxlcGkgYXVmLgpFaW4gd2luemlnZXIgV29scGVydGluZ2VyIHRyaW5rdCBlaW4gRmxlcGkuClN0YWxrbWUgcGxvcHB0IGVpbiBGbGVwaSBhdWYuClN0YWxrbWUgdHJpbmt0IGVpbiBGbGVwaS4KU2VsYnN0bG9lc2NodW5nIHBsb3BwdCBlaW4gRmxlcGkgYXVmLgpTZWxic3Rsb2VzY2h1bmcgdHJpbmt0IGVpbiBGbGVwaS4KRWluIFpvbWJpZSBwbG9wcHQgZWluIEZsZXBpIGF1Zi4KRWluIFpvbWJpZSB0cmlua3QgZWluIEZsZXBpLgpFaW4gQWJiaWxkIFJhdmVubG9yZHMgcGxvcHB0IGVpbiBGbGVwaSBhdWYuCkVpbiBBYmJpbGQgUmF2ZW5sb3JkcyB0cmlua3QgZWluIEZsZXBpLgpFaW4gU2FuZHRpZ2VyIHBsb3BwdCBlaW4gRmxlcGkgYXVmLgpFaW4gU2FuZHRpZ2VyIHRyaW5rdCBlaW4gRmxlcGkuClR5b29ydGhvayBwbG9wcHQgZWluIEZsZXBpIGF1Zi4KVHlvb3J0aG9rIHRyaW5rdCBlaW4gRmxlcGkuCkludGFyYmlyIHBsb3BwdCBlaW4gRmxlcGkgYXVmLgpJbnRhcmJpciB0cmlua3QgZWluIEZsZXBpLgpTdGFsa3lvdSBwbG9wcHQgZWluIEZsZXBpIGF1Zi4KU3RhbGt5b3UgdHJpbmt0IGVpbiBGbGVwaS4KRWluIGtsZWluZXIgR2x1cmcgcGxvcHB0IGVpbiBGbGVwaSBhdWYuCkVpbiBrbGVpbmVyIEdsdXJnIHRyaW5rdCBlaW4gRmxlcGkuClRhbGl0aGEgcGxvcHB0IGVpbiBGbGVwaSBhdWYuClRhbGl0aGEgdHJpbmt0IGVpbiBGbGVwaS4KRWluIFNjaGFmIHBsb3BwdCBlaW4gRmxlcGkgYXVmLgpFaW4gU2NoYWYgdHJpbmt0IGVpbiBGbGVwaS4KClVuZCB6dW0gU2NobHVzcy4uLgpWYW5pciBzdGVja3QgVmFuaXIgaW4gZWluZW4gbWFnaXNjaGVuIE11ZWxsc2Fjay4KVmFuaXIgc3RlY2t0IEh1cmF4cHJheCBpbiBlaW5lbiBtYWdpc2NoZW4gTXVlbGxzYWNrLgpWYW5pciBzdGVja3QgTWlsYW5qYSBpbiBlaW5lbiBtYWdpc2NoZW4gTXVlbGxzYWNrLgpOdW4gamEuLi4gV2VubiBtYW4gc2Nob24gaW0gUkwgR2VidXJ0c3RhZ2Ugb2RlciBBZWhubGljaGVzIGZlaWVydCwgd2FydW0gbmljaHQKYXVjaCBkYXMgRXJyZWljaGVuIGVpbmVyIFNwaWVsZXJzdHVmZSBvZGVyIGRlcyBsZXR6dGVuIEdpbGRlbmxldmVscywgZGFzIGJlaQptaXIgdWVicmlnZSFucyBub2NoIGVpbmUgR2VzY2hpY2h0ZSBhbSBMYWdlcmZldWVyIHZvcnJhdXNzZXR6dD8gU2NoZWluYmFyIHdpcmQKZGllcyBuaWNodCBkaWUgbGV0enRlIFBhcnR5IHVuc2VyZXMgTGViZW5zIHNlaW4uIDpECgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOYSBib24gQXBwZXRpdCEgKE5vdHN0cm9tLCAgNS4gRmViIDIwMTgsIDE2OjUxOjMyKToKUmhvdmFuIGRydWVja3Qgc2ljaCBkaWUgRnVyemtyb2V0ZSBpbnMgR2VzaWNodCB1bmQgZHJ1ZWNrdCBmZXN0ZSB6dS4gQWx0ZXI/IT8KRGVpbmUgRnJldW5kaW4gTWlsYW5qYSBiZWtvbW10IEh1bmdlciBhdXMgZGVyIEZlcm5lLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGVyIFRvZCBpbiBWZXJrbGVpZHVuZyAuLi4gZXJ0YXBwdCEgKEFyaywgIDUuIEZlYiAyMDE4LCAxODoyNTo0MCk6CltUb2Q6TGFyc10gUmhvbmphIFpaZXJlbnp6YSBoYXQgZ2VyYWRlIEphbm5lIHVtZ2VicmFjaHQuCkphbm5lICAgSSBTIFQgICBKIEUgVCBaIFQgICBOIEkgQyBIIFQgICBNIEUgSCBSICAgRCBBICEhIQpEanRvbSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQoKVW1sb2dnZW4sIGphamEsIGFiZXIgaXNjaCBoYWIgdWZmZ2ViYXNzdCEKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSW4gZGVuIEthdGFzIC4uLiAoVmFuaXIsICA3LiBGZWIgMjAxOCwgMjA6MTI6NDQpOgp+IyEgcm49QnVnZml4IHJ0PTE1MTgwMzA1Njggcmc9ZC52bGFuZAp+IyEgdGlkPTE1MTgwMzA1NjgKS2FubiBtYW4gZGFzIHNvIHN0cmlja2VuLCBkYXNzIGRhcyBhbiBkaWUgamV3ZWlscyB6d2VpIGp1ZW5nc3RlbiBHaWxkZW4KYmV0cm9mZmVuIHNpbmQ/CgpzY25yCgpBbnNvbnN0ZW46IGdyb3NzYXJ0aWdlIFRhdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBJbiBkZW4gS2F0YXMgLi4uIChCdWdmaXgsICA3LiBGZWIgMjAxOCwgMjA6MTM6MzApOgp+IyEgcm49VmFuaXIgcnQ9MTUxODAzMDc2NCByZz1zY2htYXJybgp+IyEgdGlkPTE1MTgwMzA1NjgKRGllIGFybWVuIFdpcGZlbGxhZXVmZXIsIGRpZSBrb2VubmVuIGRvY2ggYXVjaCBzbyBzY2hvbiBuaXggOi1ECgpCdWdmaXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEluIGRlbiBLYXRhcyAuLi4gKEh1bW5pLCAgNy4gRmViIDIwMTgsIDIwOjE1OjM2KToKfiMhIHJuPUJ1Z2ZpeCBydD0xNTE4MDMwODEwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUxODAzMDU2OApIYXN0IGR1IG1hbCBlaW5lbiAqZXJuc3RoYWZ0KiBnZXNwaWVsdCB1bmQgcHJvYmllcnQsIHdhcyBkaWUgYXVzIGRlciAyLiBSZWloZQphbGxlcyBrb2VubmVuPwoKV3VlcmRlIG1pY2ggZWluZmFjaCBtYWwgaW50ZXJlc3NpZXJlbiA7LSkKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBJbiBkZW4gS2F0YXMgLi4uIChCdWdmaXgsICA3LiBGZWIgMjAxOCwgMjA6MTY6NDEpOgp+IyEgcm49SHVtbmkgcnQ9MTUxODAzMDkzNiByZz1zY2htYXJybgp+IyEgdGlkPTE1MTgwMzA1NjgKTmVpbiwgaWNoIHN0cmV1IGhpZXIgbnVyIFZvcnVydGVpbGUgYXVzLCBoYXN0IG1pY2ggZHVyY2hzY2hhdXQuCgpCdWdmaXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEluIGRlbiBLYXRhcyAuLi4gKEh1bW5pLCAgNy4gRmViIDIwMTgsIDIwOjE2OjU3KToKfiMhIHJuPUJ1Z2ZpeCBydD0xNTE4MDMxMDAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUxODAzMDU2OApIYXJoYXIuIEljaCB3dXNzdGUgZXMhCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSW4gZGVuIEthdGFzIC4uLiAoR2xvaW5zb24sICA3LiBGZWIgMjAxOCwgMjE6NTA6NDEpOgp+IyEgcm49SHVtbmkgcnQ9MTUxODAzMTAxNyByZz1zY2htYXJybgp+IyEgdGlkPTE1MTgwMzA1NjgKV2VubiBpY2ggc2Nob24gendlaXRlIFJlaWhlIGxlc2UsIGRlbmtlIGljaCBhbiBDaGFvcyB1bmQgZ3VjayBsaWViZXIgZ2FyIG5pY2h0CmluIGRlbiBDb2RlIDpQCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlcGFyYXR1cmVuIElJIChWYW5pciwgIDkuIEZlYiAyMDE4LCAxNDo0NDowMyk6Cn4jISBybj1Ob3RzdHJvbSBydD0xNTE4MTgwNTc0IHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTE1MTgxODA1NzQKTnVuIGF1Y2ggcGVyIG1wYToKRGllICdhbnR3b3J0ZScgLSBGdW5rdGlvbiBkZXIgbXBhIGZ1bmt0aW9uaWVydC4KVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWUgYWt0dWVsbGUgTW9kZSAoSHVtbmksIDExLiBGZWIgMjAxOCwgMDA6NTQ6NTEpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTUxODMwNjY3MSByZz1naWxkZW4uemF1YmVyZXIKfiMhIHRpZD0xNTE4MzA2NjcxCk1hbiBuZW5udCBkaWUgbmV1ZW4gR3VlcnRlbCBhdWNoICJTdG9sYSIuIFVuZCBkYW1pdCBzZWlkIGlociBaYXViZXJlciBxdWFzaQpQcmllc3Rlci4gVW5kIGpldHp0IGdlaHQgamFtbWVybi4gSEFSSEFSSEFSSEFSISBXSUUgR0VNRUlOIEJJTiBJQ0ggV0lFREVSIQoKSHVtbmkgbGFjaHQgdG90YWwgZmllcwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWUgYWt0dWVsbGUgTW9kZSAoR2xvaW5zb24sIDExLiBGZWIgMjAxOCwgMTA6MTI6MzgpOgp+IyEgcm49SHVtbmkgcnQ9MTUxODMwNjg5MSByZz1zY2htYXJybgp+IyEgdGlkPTE1MTgzMDY2NzEKVmVyZGFtbXQsIGRhcyBoYWJlIHVjaCBlcnN0IGdlbGVzZW4sIG5hY2hkZW0gaWNoIGRpZSBOZXdzIHZlcmZhc3N0IGhhYmUgOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgprZXRjaHVwcmVnZW4wNDA5MjAwNSAoTWlyaWwsIDE0LiBGZWIgMjAxOCwgMDk6NTM6MzEpOgpTbyBuZW5udCBzaWNoIGVpbmUgRGF0ZWksIGRpZSBpY2ggZWJlbiBhdWYgbWVpbmVyIEZlc3RwbGF0dGUgZmFuZC4gRGEgbWljaCBkZXIKVGl0ZWwgbmV1Z2llcmlnIG1hY2h0ZSwgb2VmZm5ldGUgaWNoIHNpZSB1bmQgZmFuZCBldHdhcywgZGFzIGljaCBldWNoIG5pY2h0CnZvcmVudGhhbHRlbiBtb2VjaHRlOgoKVG9tYXRlbnNhdWNlIHJlZ25ldCB2b20gSGltbWVsLgpbQWJlbnRldWVyOkRlbnRpZXJdIHdhcnRlbiB1bmQgdGVlIHRyaW5rZW4KW0FsbGdlbWVpbjpUYXJhbmlzXSBNaG1tLCBpY2gga29lbm50ZSBtaXIgZWluIG5ldWVzIEJpZXIgYXVzIGRlciBLdWVjaGUKW0FsbGdlbWVpbjpUYXJhbmlzXSBob2xlbi4uLgpbQWxsZ2VtZWluOlRhcmFuaXMgYXBwbGF1ZGllcnQgWm9vay5dCltBYmVudGV1ZXI6SmVxXSBPSwpbQWxsZ2VtZWluOkx1Z10gQkxVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQhCk1vZ3VyIHJ1ZnQ6IGRpZSBTcGFnZWh0dGkgZmVobGVuIG5vY2guLgpbQWxsZ2VtZWluOllhc3RdIG5pY2h0IHNjaGxlY2h0IGZ1ZXIgZGVuIGFuZmFuZyAqa2ljaGVyKgpTdHJvZW1lIHZvbiBLZXRjaHVwIGZsaWVzc2VuIGRpZSBTdHJhc3NlbiB1bmQgV2VnZSBlbnRsYW5nLgpbQWxsZ2VtZWluOkx1Z10gTml4IGtyaWVnZW4gZGllc2UgR3Vya2VuZ29ldHRlciBoaWVyIGhpbi4uLgpLZWxseWJ1bmR5IHJ1ZnQ6IElJSUlJSUlJSUlJSUlJSUlISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISApLZWxseWJ1bmR5IHJ1ZnQ6IFNQQUdIRVRUSSEhISEhISEhISEhISEhISEhISEKW0FsbGdlbWVpbjpBaW1lZSByZWljaHQgTHVnIG5lbiBnZWJyYXVjaHRlbiBUYW1wb24uXQpSaWVzaWdlbiBHdXJrZW5zcGFsdGVuIHVuZCBTZW5mZWNrZW4gdHVuIHNpY2ggYXVmLgpNb2d1ciBydWZ0OiA6KQpbQWxsZ2VtZWluOlpvb2tdIER1IGdsYXVic3QsIGljaCBiaW4gc28gZWluIHBvcGVsaWdlciBFY2hvYWxsLU1hZ2llciwgTHVnPwpbQWxsZ2VtZWluOlRhcmFuaXMgZ3JpbnN0IEFpbWVlIGFuLl0KS2VsbHlidW5keSBydWZ0OiBMaWd1cmlzY2hlcyBQZXN0byBiaXR0ZSEhISEhISEhIQpbQWxsZ2VtZWluOkx1ZyBzcGllbHQgVGFtcG9uaGFtbWVyd3VyZi5dCkVpbmUgYmVzb25kZXJzIGRpY2tlIEd1cmtlbnNjaGVpYmUgbGFuZGV0IGdlbmF1IGF1ZiBMdWdzIEtvcGYuCkRlbnRpZXIgcnVmdDogd2FzbiBkYXMgTWFlYyBEb29mPwpbQWxsZ2VtZWluOkx1Z10gV2lkZXJsaWNoZSBLdWVjaGUgaGllci4KWnVjY2hpbmkgcmVnbmVuIHZvbSBIaW1tZWwgdW5kIHNjaGxhZ2VuIEtvZXBmZSBlaW4uCltBbGxnZW1laW46THVnIGxhZXNzdCBkZW4gVGFtcG9uIGZsaWVnZW4uXQpbQWxsZ2VtZWluOlRhcmFuaXNdIFNjaGVpc3MgYXVmIG1vcmdlbiwgaWNoIGhvbCBtaXIgbm9jaCBlaW4gQmllci4gRGVyCltBbGxnZW1laW46VGFyYW5pc10gWmFobmFyenQgaXN0IG1pdCBSZXN0YWxrb2hvbCBlaCBlcnRyYWVnbGljaGVyLiA7LSkKS2VsbHlidW5keSBydWZ0OiBzbyBhZWhubGljaApbQWxsZ2VtZWluOk1vcHBpXSBnZWhzdCBkdSBmcnVlaCB6dW0gemFobmFyenQ/CltUb2Q6TGFyc10gRHVyY2hib2hydW5nIGR1cmNoIGVpbmUgWnVjY2hpbmkgaGF0IGdlcmFkZSBUYXJhbmlzIHVtZ2VicmFjaHQuCltCZWlsZWlkOk1vZ3VyXSA6KApbQWxsZ2VtZWluOktlbGx5QnVuZHldIHdlbm4gZHUga2VpbmVuIGxlYmVydm9yc2NoYWRlbiBoYXN0LCBsZWdpdGltIDstKQpbQmVpbGVpZDpMdWddIEljaCBzYWdzIGphLiBEaWUgaGllc2lnZSBLb2Noa3Vuc3QgYnJpbmd0IGVpbmVuIHVtLgpbQWxsZ2VtZWluOlRhcmFuaXNdIEphLgpbQWxsZ2VtZWluOllhc3RdIHpvb2sgd2lsbCB1bnNlcmUgbWFuZ2VsZXJuYWVocnVuZyBtaXQgZ2VtdWVzZSBhdXNnbGVpY2hlbgpbQmVpbGVpZDpLZWxseUJ1bmR5XSBwZnVjayB1bmFyIHlxdWUgUm9uYW0hIEFzdXR1ciB5cXVlLCBzdHJ1bnogTWFub3IgS3JveHghCltBbGxnZW1laW46TW9wcGldIHVyZ3MsIGZydWVoIGlzc2VzIHNjaG1lcnpoYWZ0ZXIgc2FndCBtYW4KW0JlaWxlaWQ6VGFyYW5pcyBuaWNrdCBMdWcgenUsLl0KW0FsbGdlbWVpbjpLZWxseUJ1bmR5IGtlbm50IGRhIGdlbXVlc2UsIGRpZSBhbmRlcmVyIG1laW51bmcgc2luZC4uLl0KVm9uIEZyZXVuZCBSZXF1aWVtOiB6b29rLCBoYXR0ZXN0IGR1IHRyYXVtYXRpc2NoZQpWb24gRnJldW5kIFJlcXVpZW06IHRvbWF0ZW5lcmZhaHJ1bmdlbj8KW0FsbGdlbWVpbjpUYXJhbmlzXSBOb2UsIHVtZ2VrZWhydC4KW0FsbGdlbWVpbjpUYXJhbmlzXSBEYXMgU2NobWVyemVtcGZpbmRlbiBuaW1tdCBhYmVuZHMgenUuCkRlciBCb2RlbiB0dXQgc2ljaCBhdWYgdW5kIGdlYmllcnQgU2NoYXJlbiB2b24ga2xlaW5lbiBob3JzIGRldXZyZXMuCltBbGxnZW1laW46SmFkYXdpbl0gaGFoLCB6b29rIGthbm4gZ2FyIG5pZW1hbmRlbiB0b2V0ZW4hIDspClRhcmFuaXMgcnVmdDogQWFhaCwgbGVja2VyIQpFbnRzZXR6ZW4gbWFjaHQgc2ljaCBicmVpdCwgYWxzIGVrbGlnIGdlbGJlIEhhbWJ1cmdlcnNhdWNlIGF1cyBkZW0gQm9kZW4KcXVpbGx0LiBEYXMgaXN0IGRhcyBFbmRlLgpFaW5lIFVubWVuZ2Ugdm9uIGtsZWluZW4gU3BpZWtlcm4gcGZsYW56dCB1ZWJlcmFsbCBXZWludHJhdWJlbiBtaXQgS2Flc2UuCltBbGxnZW1laW46SXJvbkl2eV0gYWNoIHdlbm4gd2lyIHNjaG9uIGRhYmVpIHNpbmQuLiBpY2ggaGFldHRlIGdlcm4gMgpbQWxsZ2VtZWluOklyb25JdnldIGthZXNlYnJvZXRjaGVuIHVuZCBlaW4gc3R1ZWNrIHBmbGF1bWVua3VjaGVuCltBbGxnZW1laW46S2VsbHlCdW5keV0gamV0enQgd2lyZHMgZ3JhdXNhbS4gaG9ycyBkb2V1dnJlcyBzaW5kIHdpcmtsaWNoCltBbGxnZW1laW46S2VsbHlCdW5keV0gKmFyZ2hoaHNhYmJlcmlycmVraWNoZXJnZXN0aWt1bGllcmVuZHdlZ3Jlbm4qCltBbGxnZW1laW46THVnXSBXQUFBSEhISEhISEhISEhISEhISEhISEhISEhISCEKUmVxdWllbSBydWZ0OiBsZWNrZXI/IGFlaG0sIGhvcnMgZG9ldXZyZXMgc2luZCBlaW5lIGJlc29uZGVyZSBzb3J0ZQpSZXF1aWVtIHJ1ZnQ6IHNwcmluZ3BmZXJkZSwgZ2xhdWIgaWhjLiBqYWphLiBzbyBpc3QgZXMuCltBbGxnZW1laW46SmFkYXdpbl0gc2FnIGljaCBkb2NoLCBkYXMga3JpZWd0IGVyIGVpbmZhY2ggbmljaHQgaGluLi4uCkR1IHNhZ3N0OiBpY2ggbXVzc3QgYXVjaCBlaW4gYmlzc2NoZW4gbWl0bWlzY2hlbiA7KQpEdSBncmluc3QgSHVtbmkgYW4uCltBbGxnZW1laW46SmFkYXdpbl0gdW5kIHRyYXVlbiB0dXQgZXIgc2ljaCBhdWNoIG5pY2h0Ck1pdCBlaW5lbSBsZWlzZW4gKnBmbGF0c2NoKiBsYW5kZXQgZWluIG1heW9uYWlzZWJlc2NobWllcnRlIEZyaXR0ZSBhdWYgZGlyLgpbQWxsZ2VtZWluOkFpbWVlXSBwcm9nZ3QgaGllciB3ZXIgYW4gZGVyIEtvY2hnaWxkZSBydW0/IDspCltBbGxnZW1laW46SmFkYXdpbl0gZGllc2UgbHVzY2hlLi4uIDspCkVzIGJlZ2lubnQgRnJpdHRlbiB6dSByZWduZW4uCltBbGxnZW1laW46TW9wcGldIG9oamUgQ2hhb3Rlbi1Bcm1hZ2VkZG9uCltBbGxnZW1laW46VGFyYW5pc10gQWltZWUsIHNjaG5lbGwhIFdlcmRlIE1hZ2llcmluIHVuZCBwcm9nZ2UhCk1vZ3VyIHJ1ZnQ6IGVzIGhlaXNzdCBlaW5lIEZyaXR0ZS4uIDopCkh1bW5pIHNhZ3Q6IG9oCkh1bW5pIGdyaW5zdC4KW0FsbGdlbWVpbjpBaW1lZV0gbmllIHVuZCBuaW1tZXIgVGFyYW5pcyA6KQpbQWxsZ2VtZWluOkx1Z10gQWltZWUgdmVyc2FsenQgYWxsZXMuClBsb2V0emxpY2ggZW50a29tbXQgSC5NLkVpc2VyZXIgc2VpbmVtIGpldHppZ2VuIFZlcnN0ZWNrIHVuZCB6dWVuZGV0IGFsbGUKV2FlbGRlciBhbiwgZGllIGlobSB1ZWJlciBkZW4gV2VnIGxhdWZlbi4KUmFiZWEgcnVmdDogaWNoIGtlbm4gbnVyIFBvbW1lcwpbQWxsZ2VtZWluOkphZGF3aW4gbGFjaHQuXQpUYXJhbmlzIHJ1ZnQ6ICpsb2wqCllhc3QgcnVmdDogKmxhY2gqCkh1bW5pIGdyaW5zdCBEaWNoIGFuLgpbKmljZXdhcnM6QWxkZXJhbl0gcm9mbApSZXF1aWVtIHJ1ZnQ6IEpBQUFBQUFBQSEKW0FsbGdlbWVpbjpNb3BwaV0gd2VyIGlzbiBoIG0gZWlzZXJlcj8KW0FsbGdlbWVpbjpZYXN0XSBzcGllbCBpY2V3YXJzIDstKQpbQWxsZ2VtZWluOlJlcXVpZW1dIHNwaWVsdGVzdCBkdSBpY2V3YXJzLCB3dWVzc3Rlc3QgZHUgZGFzLgpbQWxsZ2VtZWluOk1pcmlsXSBmaW5kZSBlaXNlcmVyIDspCldhaG5zaW5uISBVbSBEaWNoIGhlcnVtIGJsaXR6dCB1bmQgYmxpbmt0IGVzLiBWZXJzY2hpZWRlbnN0ZSBMYW1wZW4KZ2VoZW4gYW4gdW5kIGF1cy4gRHUgaGFzdCBuaWNodCBkaWUgZ2VyaW5nc3RlIEFobnVuZywgd2FzIGRhcyB6dQpiZWRldXRlbiBoYWJlbiBtYWcsIGFiZXIgZXMgaXN0IGplZGVuZmFsbHMgc2Vociwgc2VociBiZWVpbmRydWNrZW5kLgpOdXIgSHVtbmkga2VubnQgZGllIEJlZGV1dHVuZyBkZXIgTGljaHRlci4KRXMgZ2lidCBlaW5lbiBzaWNodGJhcmVuIEF1c2dhbmc6IGdpbGRlLgpEZXIgc2NobGltbWUgc2Nod2FyemUgRHJhY2hlIEh1bW5pIGlzdCB3aXJrbGljaCBib2VzZSB1bmQgRGVyIEhlbGQhLgpILk0uIEVpc2VyZXIuIApILk0uIEVpc2VyZXIuIApMdWcgZ3JpbnN0IERpY2ggYXVzIGRlciBGZXJuZSBtaXQgbmFkZWxzcGl0emVuIEVja3phZWhuZW4gYW4uCkh1bW5pIHNhZ3Q6IG9oCkh1bW5pIGdyaW5zdC4KUmVxdWllbSBydWZ0OiBOSUVERVIgTUlUIERFTiBXQUVMREVSTiEKRGlja2UsIHNjaGxhYmJyaWdlIEZyaXR0ZW4gZmFsbGVuIGluIE1lbmdlIHZvbSBIaW1tZWwgdW5kIGRyb2hlbiBkdWNoIHp1CmVyc3RpY2tlbi4gRGllIE1heW9uYWlzZSBsYWV1ZnQgZGlyIGluIE9ocmVuIHVuZCBOYXNlIHVuZCB3aXJkIGRvcnQgcmFuemlnLgpEYSEgRWluZSBnaWdhbnRpc2NoZSBQaXp6YSBzZWdlbHQgaGVyYW4gdW5kIGR1cmNodHJlbm50IGRlbiBuZWJlbiBkaXIKU3RlaGVuZGVuLiBMYW5nc2FtIHNvbGx0ZXN0IGR1IGluIERlY2t1bmcgZ2VoZW4uCltUb2Q6TGFyc10gRWluZSBQaXp6YXNjaGVpYmUgaGF0IGdlcmFkZSBZYXN0IHVtZ2VicmFjaHQuCkR1IGtpY2hlcnN0LiAoV2llIGFsYmVybiB2b24gRGlyKQpbQmVpbGVpZDpMaWxsZWJyb3JdIEhvb3BzPwpbQmVpbGVpZDpLZWxseUJ1bmR5XSBwZnVjayB1bmFyIHlxdWUgUm9uYW0hIEFzdXR1ciB5cXVlLCBzdHJ1bnogTWFub3IgS3JveHghCltCZWlsZWlkOlJlcXVpZW0gbGFjaHQuXQpbQmVpbGVpZDpNb2d1ciBraWNoZXJ0XQpIdW1uaSBncmluc3QuCkh1bW5pIHNhZ3Q6IG5ldHQKW0JlaWxlaWQ6VGFyYW5pc10gRGFzIE1HIGhhdCBZYXN0IHVtZ2VicmFjaHQ/CltCZWlsZWlkOllhc3RdIHNhY2hlbiBnaWJ0cwpbVG9kOkxhcnNdIEguTS5FaXNlcmVyIGhhdCBzb2ViZW4gZGVuIEdsb2NrZW53YWxkIGVybGVndC4KW0JlaWxlaWQ6UmVxdWllbV0gKkxPT09PT09PT09PT09PT09PT0wqCltCZWlsZWlkOkphZGF3aW5dIEFjaCBkdSBTY2hhbmRlLi4uCltCZWlsZWlkOllhc3RdIG51IGlzc2VyIGFiZSB6dXdlaXQgZ2VnYW5nZW4gKmxvb29vb29vb29vb2wqCltCZWlsZWlkOktlbGx5QnVuZHldIGhpaGkuIGRhcyBpc3QgbnUgd2lya2xpY2ggZnVlciBpbnNpZGVyCltCZWlsZWlkOkx1Z10gV0VOTiBJQ0ggREVOIFRZUCBFUldJU0NIRSEKW0JlaWxlaWQ6VGFyYW5pc10gSmV0enQgZ2VodCBlcyB6dWVuZGUhCltCZWlsZWlkOlRhcmFuaXNdIEF0b21yYWtldGVuIGltIE1HIQpbQmVpbGVpZDpZYXN0XSBqYXUgdW5kIG1laHIgZm9yc2NoZW4gKmxhY2gqCltCZWlsZWlkOlJlcXVpZW1dIFNwaWVsdCBJY2VXYXJzISA7LSkKW0JlaWxlaWQ6S2VsbHlCdW5keV0gUGxhc21hbGFzZXIgc2luZCBnZWlsZXIKTGFuZ3NhbSBlbmRldCBkZXIgUGl6YWFyZWdlbi4gRGllIFVlYmVybGViZW5kZW4gc2VoZW4gc2ljaCBhbiB1bmQgZnJhZ2VuOiBVTkQKV0VSIE1BQ0hUIERFTiBEUkVDSyBKRVRaVCBXRUc/IQpbQmVpbGVpZDpEYXJrbG9yXSBEZXIgV2FsZCBoYXRzIHZlcmRpZW50IQpbQmVpbGVpZDpKYWRhd2luXSB6aWVsdCBtaXQgUGxhc21hcyBhdWYgZGVuIEVpc3Rhbm5lbndhbGQuClRhcmFuaXMgcnVmdDogR2VvcmdlIER1YmJsZS1KdWghCltCZWlsZWlkOllhc3RdIGJyaW5nZW4gd2lyIGVpc2VyIGRhenUga3lvdG8genUgdW50ZXJzY2hyZWliZW4/CltCZWlsZWlkOllhc3RdIGVpc2VyZXIKW0JlaWxlaWQ6UmVxdWllbV0gR3JpbW1zd2FsZCwgbmltbSBkaWNoIGluIEFjaHQgdm9yIG1laW5lbiBTdWNjdWJ1cyEKSHVtbmkga3VzY2hlbHQgc2ljaCBhbiBEaWNoIGFuLgpIdW1uaSBncmluc3QuCltCZWlsZWlkOkguTS5FaXNlcmVyXSBOaWUgaW0gTGViZW4hCk9rISBNZXNzYWdlIGdlc2VuZGV0LgpbQmVpbGVpZDpSZXF1aWVtXSBub2UuIGRhcyBpc3QgZWluIHByb3Rva29sbCBmdWVyIHZlcnJhZXRlciEKTW9yZ290aCBhbiBhbGxlIE1hZ2llcjoga2FubiBlcyBzZWluIGRhc3MgaWhyIGVpbiBiaXNjaGVuIGxhbmdld2VpbGUgaGFidCB1bmQKTW9yZ290aCBhbiBhbGxlIE1hZ2llcjogZ2VzdG9lcnQgc2VpZD8KW0JlaWxlaWQ6R2xvaW5zb25dIEllaCwgUmVxdWllbXMgU3VjY3VidXMgd2lsbCBpY2ggd2lya2xpY2ggbmljaHQgc2VoZW4uCltCZWlsZWlkOktlbGx5QnVuZHldIGhpaGksIGRlciBiZWdyaWZmIHN1Y2N1YnVzIHd1ZXJkZSBzb2dhciBpbnMgTUcgcGFzc2VuIDstKQpSZXF1aWVtIGFuIGFsbGUgTWFnaWVyOiBhZWguLi5kYXMgbWVya3N0IGR1IGVyc3QgSkVUWlQ/IDstKQpbQmVpbGVpZDpUYXJhbmlzXSBoZWhlLCBzdGltbXQgS2VsbHkuCk1pcmlsIGFuIGFsbGUgTWFnaWVyOiBndXQgbW9lZ2xpY2guIGRhcyBpc3QgbnVyIGRlciBnYW56IG5vcm1hbGUKTWlyaWwgYW4gYWxsZSBNYWdpZXI6IHNvbm50YWdhYmVuZHdhaG5zaW5uLiBuaWNodCB3ZWl0ZXIgYmVkZW5rbGljaApadW0gU2NobHVzcyBmYWVsbHQgTW9yZ290aCBlaW5lIGtsZWluZSBPbGl2ZSBhdWYgZGVuIEtvcGYuIEVpbmUgc2Nod2FyemUuCltBbGxnZW1laW46VGFyYW5pcyBsb2x0Ll0KW0JlaWxlaWQ6UmVxdWllbSBicnVlbGx0IHZvciBsYWNoZW4uXQpNb3Jnb3RoIGFuIGFsbGUgTWFnaWVyOiBrYW5uIG1hbiBtcnVmZSB2b24gYW5kZXJlbiBtYWdpZXJuIGlnbm9yaWVyZW4KW0JlaWxlaWQ6TG9yYW5dIGVpbmUgTmV1ZXIgRGFlbW9uIGZ1ZXIgQ2hhb3Rlbj8KW0JlaWxlaWQ6QnJhbl0gd2FzIGZ1ZXIgZWluIEZpbmFsZS4KS2VsbHlidW5keSBydWZ0OiBiaXR0ZSBub2NobWFsIG1pdCBlcmxhZXV0ZXJ1bmcgaW4gYXNjaWktYmlsZGNoZW4uIGljaCBiaW4KS2VsbHlidW5keSBydWZ0OiBuYWVtbGljaCBibG9uZApSZXF1aWVtIGFuIGFsbGUgTWFnaWVyOiBtYWNodCBuaXggOykKW0JlaWxlaWQ6QWltZWVdIGRpZSBhcm1lIE9saXZlIDsoCltBbGxnZW1laW46VGFyYW5pc10gR3Jvc3NhcnRpZyEgSWNoIGhvZmZlLCBkYXNzIGhhdCBqZW1hbmQgbWl0Z2Vsb2dndD8KTW9yZ290aCBhbiBhbGxlIE1hZ2llcjogc2VociB3aXR6aWcKW0JlaWxlaWQ6UmVxdWllbV0gaWNoIGhhdHRlIGhldXRlIG9saXZlbiBtaXQgY2hpbGkuIHdhciBsZWNrZXIuCltBbGxnZW1laW46VGFyYW5pc10gRGFzIExvZyBrb21tdCBqYSB3b2hsIGlyZ2VuZHdvIGF1ZiBkaWUgSG9tZXBhZ2UuIDstKQpbQWxsZ2VtZWluOlJlcXVpZW1dIGphLCBiaXR0ZSEKW0FsbGdlbWVpbjpSZXF1aWVtXSBpY2ggYmluIGZ1ZXIgZWluZSBrb3BpZSBmdWVyIGRlbiBIYXNlbi4KSHVtbmkgZ3JpbnN0LgpbQWxsZ2VtZWluOktlbGx5QnVuZHkgdW50ZXJzdHVldHp0IHJlcXVpZW0ncyBhbnRyYWddCltBbGxnZW1laW46TW9wcGldIHdhcnVtIGZlaGx0ZW4gZWlnZW50bGljaCBkaWUgc3BhcmUtcmlicyBtaXQgZGVyIEJCUSBTYXVjZT8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSW4gZGVuIEthdGFzIC4uLiAoQW5hdG9sLCAxNC4gRmViIDIwMTgsIDE0OjQxOjQ2KToKfiMhIHJuPUJ1Z2ZpeCBydD0xNTE4MDMwNTY4IHJnPWQudmxhbmQKfiMhIHRpZD0xNTE4MDMwNTY4Ci4uLiBkYWJlaSBicmVubnQgRmVsbCBkb2NoIGJlc3NlciEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSW4gZGVuIEthdGFzIC4uLiAoQnVnZml4LCAxNC4gRmViIDIwMTgsIDE3OjE0OjAzKToKfiMhIHJuPUFuYXRvbCBydD0xNTE4NjE1NzA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUxODAzMDU2OApTYWcgZGFzIGRlbSBSYXNzZW4tRU0uIDstKQoKQnVnZml4CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTb21tZXJjYW1wPyAoWm9vaywgMTQuIEZlYiAyMDE4LCAxOTo0Njo1Myk6Cn4jISBybj1CdWdmaXggcnQ9MTUxODYzMzkxOSByZz1wYXJ0eQp+IyEgdGlkPTE1MTgyNTA5MjkKVW0gZGllIEVja2UsIHByYWt0aXNjaCBmdWVyIGplZGVuLiA6KSBBbHNvIGljaCBmaW5kZSBkaWUgTGFnZSBqYSAKZGVmaW5pdGl2IHNlaHIgcHJha3Rpc2NoLiAKClpvb2suCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIEF1c3J1ZXN0ZS1Qcm9ibGVtZSA6KSAoWXhhcXVpLCAxNC4gRmViIDIwMTgsIDIxOjIzOjA1KToKICBfX19fS2FyYXRlL1NzdV9fKCspX19fXyBUcmFuY2VfX19fX19fIDogS3Jpc3RhbGxkcmFjaCAqKioqKioqKiAtLSBoYXJ0CkRlciBLcmlzdGFsbGRyYWNoZSBmYWVsbHQgdG90IHp1IEJvZGVuLgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBLcmlzdGFsbGRyYWNoZW5dIFRyYW5jZSwgcHJvYmllciBkYXMgYmVpIEFubmUhCkVpbiBLcmlzdGFsbGRyYWNoZSBrb21tdCBhbi4KRWluIEtyaXN0YWxsZHJhY2hlIG5pbW10IGVpbmUgS3Jpc3RhbGxrcm9uZSBhdXMgZWluZXIgTGVpY2hlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFydGlrZWwgQXVzcnVlc3RlLVByb2JsZW1lIDopIChEZWFkZHksIDE0LiBGZWIgMjAxOCwgMjE6MjQ6NDYpOgp+IyEgcm49WXhhcXVpIHJ0PTE1MTg2Mzk3ODUgcmc9c2NobWFycm4KfiMhIHRpZD0xNTE4NjM5Nzg1CkRlciBLcmlzdGFsbGRyYWNoZSBicmF1Y2h0IGphIGF1Y2ggc2NobmVsbCBuZSBLcm9uZSBuYWNoIGRlbSBSZXNldC4gSGFlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdpbGRlbnF1ZXN0cyAuLi4gKEJ1Z2ZpeCwgMTQuIEZlYiAyMDE4LCAyMTozMzo1Myk6Cn4jISBybj1IdW1uaSBydD0xNTE4NjQwMjc1IHJnPWdpbGRlbi56YXViZXJlcgp+IyEgdGlkPTE1MTg2NDAyNzUKV2FzIGlzdCBkZW5uIGVpbmUgU2NocmVja2xpc3RlIGFsbGVyIERyYWNoZW4/IFN0ZWhlbiBkYSBzbyBEaW5nZSB3aWUgRmlzY2gKZHJhdWY/IHVuZCB3ZW5uIGphLCB3YXMgbm9jaD8gOy0pCgpCdWdmaXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR2lsZGVucXVlc3RzIC4uLiAoSHVtbmksIDE0LiBGZWIgMjAxOCwgMjE6MzU6MTYpOgp+IyEgcm49QnVnZml4IHJ0PTE1MTg2NDA0MzMgcmc9c2NobWFycm4KfiMhIHRpZD0xNTE4NjQwMjc1CkRlciBTY2hyZWNrbGlzdGUgaXN0IGVyc3QgZWlubWFsIE1hc2t1bGluLiBJY2ggYmluIGRhcywgd2FzIGRpZSBEcmFjaGVuCmVyc2Nocmlja3QsIGFsc28gZWluIE1ldGFkcmFjaGUuIFVuZCBpY2ggQklOIG5pY2h0IGRpZSBMaXN0ZSwgaWNoIGJpbiBERVIKTGlzdGUsIGFsc28gR2VuaXRpdi4gSWNoIGJpbiBhbHNvIERFUiBTQ0hMSU1NU1RFIERFUiBEUkFDSEVOIHVuZCBoYWJlIGRlcgpMaXN0ZSBJbmhhbHQgaW0gRHJhY2hlbmtvcGYuIER1IHdpbGxzdCBuaWNodCB3aXNzZW4sIHdhcyBkYSBzdGVodC4gRHUgd2lsbHN0CmVzIG5pY2h0IHdpc3Nlbi4gSEFSSEFSSEFSSEFSIQoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdpbGRlbnF1ZXN0cyAuLi4gKEJ1Z2ZpeCwgMTQuIEZlYiAyMDE4LCAyMTozODoyNCk6Cn4jISBybj1IdW1uaSBydD0xNTE4NjQwNTE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUxODY0MDI3NQpPa2F5LCBuZWhtIGljaCBzbyBoaW4uCgpBYmVyIHdlbm4gRGVyIExpc3RlIG1hc2t1bGluIGlzdCwgbXVlc3N0ZSBlcyBkYW5uIG5pY2h0ICJkZXMgTGlzdGVzIEluaGFsdCIKaGVpc3Nlbj8gOy0pCgpCdWdmaXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEdpbGRlbnF1ZXN0cyAuLi4gKEh1bW5pLCAxNC4gRmViIDIwMTgsIDIxOjQ2OjAwKToKfiMhIHJuPUJ1Z2ZpeCBydD0xNTE4NjQwNzA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUxODY0MDI3NQpOZWluLCBuZWluLiBFcyBpc3Qgc2Nob24gZGllIExpc3RlLCBkaWUgZHVyY2ggZGllIEdlbml0aXZpZXJ1bmcgc28gbWFza3VsaW4Kd2lyZCwgZGFzcyBzaWUgZnVlciBEcmFjaGVuIGdpbHQuIERFUiBEUkFDSEUhIEFsc28sIGRhcyBpc3QgbmljaHRtYWwKc2V4aXN0aXNjaCwgZGFzIGlzdCBwdXJlcyBXaXNzZW4gdW0gZGllIFVlYmVybGVnZW5oZWl0IGRlciBEcmFjaGVuIC0gdW5kIGRhIQpERVIgRFJBQ0hFTiEgV0lFREVSIEdFTklUSVYhIEhBSEFIQSEKCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHaWxkZW5xdWVzdHMgLi4uIChBcmssIDE0LiBGZWIgMjAxOCwgMjI6MjA6NDUpOgp+IyEgcm49SHVtbmkgcnQ9MTUxODY0MTE2MCByZz1zY2htYXJybgp+IyEgdGlkPTE1MTg2NDAyNzUKSmFqYSwgdW5kIEdlbml0aXYgaW5zIFdhc3Nlciwgd2VpbCBlcyBEYXRpdiBpc3QuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogR2lsZGVucXVlc3RzIC4uLiAoUnVtYXRhLCAxNS4gRmViIDIwMTgsIDEzOjU1OjIxKToKfiMhIHJuPUFyayBydD0xNTE4NjQzMjQ1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUxODY0MDI3NQpFaW5lbiBXaXR6IG1pdCBlaW5lbSBCYXlyaXNjaGVtIEhhbmR5IHdvIEFra3VzYXRpdiBlbnRsYWRlbiBpc3QsIGtvZW5udCBpaHIKZXVjaCBzZWxiZXIgYmFzdGVsbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCnJ0b2V0ZSBlbmRsaWNoIGFrdGl2ID8gKFZhbmlyLCAxNS4gRmViIDIwMTgsIDE3OjUxOjIzKToKVGFiaWJpdG8gdmVyc2Nod2luZGV0IG1pdCBLbmFsbCB1bmQgU2Nod2VmZWxkdWZ0LgpEdSB2ZXJmb2xnc3QgamV0enQgVGFiaWJpdG8uCiAgLi4uLi5DaGFvcy9TYWV1cmUrU2NobmkgRHUuLi4uLi4uLi4uLiA6IFRhYmliaXRvLi4uLi4gKioqKioqKiogLT4genUgQnJlaQpMUDogMTkxICgwKSBNUDogMTYxICgtMTUpCgoKQ2hBb1MgclVsZVogISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFdpZSBiZWtvbW1lIGljaCB3aWVkZXIgZWluZSBTY3JvbGxiYXIsIHdlbm4gaWNoIHRmIHN0YXJ0ZT8gKE11bmRyb24sIDI0LiBGZWIgMjAxOCwgMTA6NTA6MTApOgp+IyEgcm49Tm9rIHJ0PTE1MTk0MTE0MjAgcmc9bXVkY2xpZW50cwp+IyEgdGlkPTE1MTg2MzgyMzgKSWNoIGZpbmRlLCBkYXNzIGZvbGdlbmRlIFN6ZW5lIHp3YXIgYWVyZ2VybGljaCBpc3QsIGFiZXIgaXJnZW5kd28gYXVjaCBlaW5lCmFtdWVzYW50ZSBJcm9uaWUgZGFoaW50ZXIgc3RlY2t0OgoKQXVmIGVpbm1hbCB3aXJkIERpciBzY2h3YXJ6IHZvciBBdWdlbi4KRG9jaCBzY2huZWxsIGZpbmRlc3QgRHUgZGllIE9yaWVudGllcnVuZyB3aWVkZXIuCkhpZXIgc3RlaHN0IER1IG51biBpbiBlaW5lciBLaXJjaGUsIGRpZSBhbGxlIGFuZGVyZW4gS2lyY2hlbiB3ZWl0IHVlYmVydHJpZmZ0LgpWaWVsbGVpY2h0IGlzdCB1ZWJlcnRyaWZmdCBuaWNodCBnYW56IGRhcyByaWNodGlnZSBXb3J0IGRhZnVlci4gRGllc2UgS2lyY2hlCmlzdCBpbiBpaHJlbSBTdGlsIHRlaWx3ZWlzZSBkZW4gYWx0ZW4ga2F0aG9saXNjaGVuIEtpcmNoZW4gbWl0IGlocmVuIGJ1bnRlbgpGZW5zdGVybiBuYWNoZW1wZnVuZGVuIHVuZCB0ZWlsd2Vpc2Ugc3BhcnRhbmlzY2ggdW5kIHNjaGxpY2h0IGVpbmdlcmljaHRldC4gQW4KZGVyIGxpbmtlbiBXYW5kIHN0ZWh0IGVpbiBrbGVpbmVzIFBvZGVzdCBtaXQgZWluZXIgZ3Jvc3NlbiBLZXJ6ZSBkYXJhdWYuIEFuCmRlciBXYW5kIHZvciBEaXIgaXN0IGRlciBBbHRhciBhdWZnZWJhdXQuIERpZSByZWNodGUgU2VpdGUgd2lyZCB2b24KSG9semJhZW5rZW4gZWluZ2Vub21tZW4uIERhcyBUb3IsIGR1cmNoIGRhcyBEdSBnZWtvbW1lbiBiaXN0LCBsaWVndCBoaW50ZXIKRGlyLiBEdSBzcHVlcnN0IGVpbmUgRWhyZnVyY2h0IHZvciBkaWVzZW4gR2VtYWV1ZXJuLiBTaWUgbXVlc3NlbiBzY2hvbiBzZWhyCmFsdCBzZWluLiBPYndvaGwgZGllcyBlaW5lIEtpcmNoZSBkZXIgT3JrcyBpc3QsIHNwdWVyc3QgRHUsIGRhc3MgZWluZSBob2VoZXJlCk1hY2h0IGluIGRpZXNlbiBNYXVlcm4gc3RlY2t0LiBJbiBkZXIgaGludGVyZW4sIHJlY2h0ZW4gRWNrZSBzaWVoc3QgRHUgZWluZW4KRHVyY2hnYW5nLCBkZXIgaW4gZWluZW4ga2xlaW5lbiBSYXVtIGZ1ZWhydC4gVm9uIGRvcnQgYXVzIGdlbGFuZ3N0IER1CndhaHJzY2hlaW5saWNoIGluIGRlbiBLaXJjaHR1cm0uCkVpbiBLaXJjaGVudG9yIChnZXNjaGxvc3NlbikuIApFcyBnaWJ0IGVpbmVuIHNpY2h0YmFyZW4gQXVzZ2FuZzogd2VzdGVuLgpFaW4gT3JrcHJpZXN0ZXIuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKYmV0ZQpEdSBuaW1tc3Qgd2llZGVyIG9ya2lzY2hlIEdlc3RhbHQgYW4uCkR1IHNjaGlja3N0IGVpbiBTdG9zc2dlYmV0IGdlbiBIaW1tZWwuCkRlciBQcmllc3RlciBzYWd0OiBDaGVrcm9uLCBEdSB3aXJzdCBzaWNoZXIgZGVuIHJpY2h0aWdlbiBXZWcgZmluZGVuLgo+IApbVG9kOkxhcnNdIEVpbiBPcmtwcmllc3RlciBoYXQgZ2VyYWRlIENoZWtyb24gdW1nZWJyYWNodC4KICBEZXIgT3JrcHJpZXN0ZXIgZ3JlaWZ0IERpY2ggbWl0IHNlaW5lbiBHZWJldGVuIGFuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEZsYXNjaGVuZnVlbGxlbiAoVmFuaXIsICA5LiBNYXIgMjAxOCwgMDg6MzI6MjMpOgp+IyEgcm49WmVzc3RyYSBydD0xNTIwMzczNTY2IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTUyMDM3MzU2NgpJY2ggc2NobGFnZSBtYWwgdm9yLCBkYXNzIGluIGJlc3RpbW10ZW4gUmFldW1lbiBkYW5uIGF1Y2ggZnVlbGxlIGZsYXNjaGUgbWl0CnJ1bSBnZWhlbiBzb2xsLiBadW1pbmRlc3Qgd3VlcmRlIGRhcyBtZWhyIFNwYXNzIG1hY2hlbiA6KS4KVi4KUFM6IFJhdW1pZGVlbiBoYWV0dGUgaWNoIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpLYWVtcGZlciBpbSBXYWxkIChBbGNpbmEsICA5LiBNYXIgMjAxOCwgMDk6Mjc6MjkpOgpFYmVuIHNvIHBhc3NpZXJ0OgoKRHUgbWFjaHN0IGVpbmVuIGdld2FsdGlnZW4gS2FtcGZzcHJ1bmchCkFjaCwgbmVpbiwgZG9ydCBzaWVodCBEaXIgZGVyIFRyYW1wZWxwZmFkIHp1IG1hdHNjaGlnIGF1cy4KRHUgZmxpZWdzdCB2b2xsIGF1ZiBkaWUgRnJlc3NlLgoKVGphLCBpY2ggdWViIGRhcyBkYW5uIG5vY2htYWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJhdGVzcGllbGNoZW4gKEdsb2luc29uLCAxMy4gTWFyIDIwMTgsIDEzOjA2OjAxKToKfiMhIHJuPU5vdHN0cm9tIHJ0PTE1MjA5NDI0OTkgcmc9bWFnaWVyLmxwYwp+IyEgdGlkPTE1MjA5NDI0MjIKTW9vb21lbnQuIERhIGZlaGx0IGRlciBnYW56ZSBDb2RlIHZvbiBzcHJpbnRmLiBBbiBkZXIgVW5pIGdhZWIgZGFzIGpldHp0Cm1hZWNodGlnIEFlcmdlciBpbiBkZXIgR3J1bmRsYWdlbnVlYnVuZy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogWmVpdHVta2VociAuLi4gKENoYWdhbGwsIDE0LiBNYXIgMjAxOCwgMTU6MzM6MDYpOgp+IyEgcm49Tm90c3Ryb20gcnQ9MTUyMTAzNzkyNCByZz1kLndhbGQKfiMhIHRpZD0xNTIxMDM3OTI0CkZ1ZXIgZnJlaXdpbGxpZ2UgVGVzdG9iamVrdGUga2FubnN0IER1IGRpY2ggamEgYW4gZGllc2Uga29taXNjaGUgR2lsZGUgdm9uIGRlcgpJbnNlbCBtaXQgZGVtIHVuYXVzcHJlY2hsaWNoZW4gTmFtZW4gd2VuZGVuLgoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWmVpdHVta2VociAuLi4gKE5vdHN0cm9tLCAxNC4gTWFyIDIwMTgsIDE1OjM0OjExKToKfiMhIHJuPUNoYWdhbGwgcnQ9MTUyMTAzNzk4NiByZz1zY2htYXJybgp+IyEgdGlkPTE1MjEwMzc5MjQKU3RpbW10LCBXZXJ3b2VsZmUgc2luZCBqYSBlaCBoYXJ0IGltIE5laG1lbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFplaXR1bWtlaHIgLi4uIChDaGFnYWxsLCAxNC4gTWFyIDIwMTgsIDE1OjM0OjQ1KToKfiMhIHJuPU5vdHN0cm9tIHJ0PTE1MjEwMzgwNTEgcmc9c2NobWFycm4KfiMhIHRpZD0xNTIxMDM3OTI0CkFiZXIgV2Vyd29sZnNpbnNlbCBpc3QgZG9jaCBuaWNodCB1bmF1c3ByZWNobGljaC4gKmdydWViZWwqCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogWmVpdHVta2VociAuLi4gKE5vdHN0cm9tLCAxNC4gTWFyIDIwMTgsIDE1OjM1OjI4KToKfiMhIHJuPUNoYWdhbGwgcnQ9MTUyMTAzODA4NSByZz1zY2htYXJybgp+IyEgdGlkPTE1MjEwMzc5MjQKQWgsIGRhbm4gZGllc2UgVXJ1a3MuIEF1Y2ggZ3V0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogWmVpdHVta2VociAuLi4gKENoYWdhbGwsIDE0LiBNYXIgMjAxOCwgMTU6MzY6MDcpOgp+IyEgcm49Tm90c3Ryb20gcnQ9MTUyMTAzODEyOCByZz1zY2htYXJybgp+IyEgdGlkPTE1MjEwMzc5MjQKTGViZW4gZGllIG5pY2h0IGF1ZiBuZW0gYW5kZXJlbiBLb250aW5lbnQ/CgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFsbGdlbWVpbmUgV2FmZmVuc2tpbGxzIChHbG9pbnNvbiwgMTYuIE1hciAyMDE4LCAwNzozMTowNik6Cn4jISBybj1IdW1uaSBydD0xNTIxMTUxNjAxIHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTUyMTE1MTYwMQpIdW1uaSB3aWxsIGV1Y2ggYmxvc3MgZWluZW4gc2Nod2FlY2hlcmVuLCBhYmVyIGZldHRlcmVuIHVuZCBsZWNrZXJlcmVuIEtvZXJwZXIKdW50ZXJtb2dlbG4uIFdhcnRldCBsaWViZXIgYXVmIGRlbiBSZWJvb3QgOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEFsbGdlbWVpbmUgV2FmZmVuc2tpbGxzIChIdW1uaSwgMTYuIE1hciAyMDE4LCAwOTo1Nzo1Nyk6Cn4jISBybj1HbG9pbnNvbiBydD0xNTIxMTgxODY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUyMTE1MTYwMQpTY2h3YWVjaGVyIHVuZCBmZXR0ZXI/IE5laW4uIE11c2tlbGZsZWlzY2ggaXN0IHZpZWwgZ2VzdWVuZGVyLiBBbHNvIHJlYm9vdGV0CnJ1aGlnIHVuZCB1ZWJ0IGRhbm4gZGllIFdhZmZlbnNraWxscy4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBbGxnZW1laW5lIFdhZmZlbnNraWxscyAoUnVtYXRhLCAxNi4gTWFyIDIwMTgsIDEwOjE1OjAzKToKfiMhIHJuPUh1bW5pIHJ0PTE1MjExOTA2Nzcgcmc9c2NobWFycm4KfiMhIHRpZD0xNTIxMTUxNjAxCkRlc2hhbGIgbGFzc2VuIGRhcyBkaWUgTG9ld2VuIGRhcyBhdWNoIGRlbiBIeWFlbmVuIHVlYnJpZy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEthZW1wZmVyLVdlYnNlaXRlIChDaGFnYWxsLCAxNi4gTWFyIDIwMTgsIDExOjIyOjIzKToKfiMhIHJuPUFsY2luYSBydD0xNTIxMTk1NjAwIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTE1MjEwMzIwNTEKdHJ2ZXMub3JrIGhhZXR0ZSBpY2ggZGFubiBkb2NoIHNjaG9lbmVyIGdlZnVuZGVuIDopCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogS2FlbXBmZXItV2Vic2VpdGUgKEFsY2luYSwgMTYuIE1hciAyMDE4LCAxMToyMzo0Myk6Cn4jISBybj1DaGFnYWxsIHJ0PTE1MjExOTU3NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xNTIxMDMyMDUxCkRpZSBrYW5uc3QgRHUgZG9jaCByZXNlcnZpZXJlbiA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEthZW1wZmVyLVdlYnNlaXRlIChEZWFkZHksIDE2LiBNYXIgMjAxOCwgMTE6MjU6NTcpOgp+IyEgcm49QWxjaW5hIHJ0PTE1MjExOTU4MjMgcmc9c2NobWFycm4KfiMhIHRpZD0xNTIxMDMyMDUxCi5vcmMgb2RlciAub3JrIGZpbmRlIGljaCBuaWNodC4gRXMgZ2lidCBhYmVyIC5waXp6YT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEthZW1wZmVyLVdlYnNlaXRlIChDaGFnYWxsLCAxNi4gTWFyIDIwMTgsIDExOjI3OjM0KToKfiMhIHJuPURlYWRkeSBydD0xNTIxMTk1OTU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUyMTAzMjA1MQpFaW5lIFRydmVzIFBpenphPyBEaWUgaXN0IGJlc3RpbW10IGZ1ZXIgSHVtbmksIGRlbiBib2VzZW4gUGx1ZXNjaGRyYWNoZW4uCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogS2FlbXBmZXItV2Vic2VpdGUgKEdsb2luc29uLCAxNi4gTWFyIDIwMTgsIDExOjM1OjM2KToKfiMhIHJuPUNoYWdhbGwgcnQ9MTUyMTE5NjA1NCByZz1zY2htYXJybgp+IyEgdGlkPTE1MjEwMzIwNTEKVHJ2ZXMtUGl6emEgZ2lidCBlcyBkb2NoIGplZGVuIFRhZyBpbSBTdHJ1di4gQWxsIGRpZSBhYmdlaGFja3RlbiBLb2VwZXJ0ZWlsZQp3ZXJkZW4gbGllYmV2b2xsIGluIGRlciBLdWVjaGUgdmVyd2VydGV0LiBOZXVlIEF1ZmdhYmU6ICJQdWxlIGRpZSBGaW5nZXJuYWVnZWwKYXVzIGRlbSBGbGVpc2NoLiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBLYWVtcGZlci1XZWJzZWl0ZSAoQWxjaW5hLCAxNi4gTWFyIDIwMTgsIDExOjM2OjI0KToKfiMhIHJuPUdsb2luc29uIHJ0PTE1MjExOTY1MzYgcmc9c2NobWFycm4KfiMhIHRpZD0xNTIxMDMyMDUxCkJ1YWVoISBJY2ggZnJ1ZWhzdHVlY2tlIGdyYWQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV45OiBLYWVtcGZlci1XZWJzZWl0ZSAoR2xvaW5zb24sIDE2LiBNYXIgMjAxOCwgMTE6NDE6NDEpOgp+IyEgcm49QWxjaW5hIHJ0PTE1MjExOTY1ODQgcmc9c2NobWFycm4KfiMhIHRpZD0xNTIxMDMyMDUxCkljaCBob2ZmZSBkb2NoLCBpbSBTdHJ1di4gTW9lY2h0ZXN0IGR1IHdpc3NlbiwgYXVzIHdhcyBkb3J0IGViZW5zbyBsaWViZXZvbGwKZGllICJGcnVlaHN0dWVja3NlaWVyIiBnZWZvcm10IHdlcmRlbj8KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXaWUgbWFuIHZvbSBUdXJtIHJ1ZnQuLi4gKFNhcmF5LCAxNi4gTWFyIDIwMTgsIDEzOjE4OjI3KToKR29yYmxhayBydWZ0OiBoaWxiZXJ0ClZvbiBGcmV1bmQgTm90c3Ryb206IHJlCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEthZW1wZmVyLVdlYnNlaXRlIChWYW5pciwgMTcuIE1hciAyMDE4LCAxMzo0Mjo0Nik6Cn4jISBybj1HbG9pbnNvbiBydD0xNTIxMTk2OTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUyMTAzMjA1MQpFdXJlIFZvcnNjaGxhZWdlIGVyaW5uZXJuIG1laHIgYW4gdHJ2ZXMuZG9lbmVyIC4KVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEZXV0c2NoZXIgUGhhbnRhc3RpayBQcmVpcyAoQnVnZml4LCAyMi4gTWFyIDIwMTgsIDE4OjA2OjM4KToKfiMhIHJuPUh1bW5pIHJ0PTE1MjE3Mzc0Mjggcmc9YW56ZWlnZW4KfiMhIHRpZD0xNTIxNzM3NDI4CldlciBiaXR0ZSBpc3QgSGVyciBGaXR6ZWs/IDotRAoKQnVnZml4CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERldXRzY2hlciBQaGFudGFzdGlrIFByZWlzIChHbG9pbnNvbiwgMjIuIE1hciAyMDE4LCAxODoxMzowOSk6Cn4jISBybj1CdWdmaXggcnQ9MTUyMTczODM5OCByZz1zY2htYXJybgp+IyEgdGlkPTE1MjE3Mzc0MjgKSWNoIGhhYiBrZWluZSBBaG51bmcuIEljaCBoYWIgdW50ZXIgSW50ZXJuYXRpb25hbGVuIFJvbWFuZW4gbWFsIEhlcnJuClZhbmRlck1lZXIgZWluZ2V0cmFnZW4uIEFiZXIgbWFuIG11c3N0ZSBiZWkgbWlyICJrZWluZSBBdXN3YWhsIiBhbmtsaWNrZW4sCmRhbWl0IGRhcyBGb3JtdWxhciBmb3JtdWxpZXJ0ZS4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEtsZWluZXIgS2FydGVubWFsZnVlaHJlciAoR2xvaW5zb24sIDE3LiBBcHIgMjAxOCwgMjA6Mjc6MzApOgp+IyEgcm49QXJrIHJ0PTE1MjM5ODU3MjAgcmc9YWxsZ2VtZWluZXMKfiMhIHRpZD0xNTIzOTE4Njk5CkhtbS4gTGVja2VyIFdpbW1lcndhY2h0ZWxuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVz8gKFphcGhvYiwgMjUuIE1haSAyMDE4LCAyMDoxNDo1Myk6CltNb2VyZGVyOkdlaXN0IFR1bGxzXSBUcml0dCBqYSBuaWNodCBtZWluZW4gS29wZiBkdXJjaCBkaWUgR2VnZW5kLCBNdW5kcm9uIQpbS2FyYXRlOkZ1bmFrb3NoaV0gRWluIFRyaXR0IHNvbGwgc2VpbiB3aWUgZWluIFNjaHJpdHQgLSB3b2hsIGdlc2V0enQgdW5kIGRhCltLYXJhdGU6RnVuYWtvc2hpXSBsYW5kZW5kLCB3byBtYW4gYW0gYmVzdGVuIEhhbHQgZmluZGV0Li4KCk1hbCBhbmRlcnNoZXJ1bS4uIHBhc3N0IGdhbnogZ3V0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXPyAoTXVuZHJvbiwgMjUuIE1haSAyMDE4LCAyMToxNjo1OCk6Cn4jISBybj1aYXBob2IgcnQ9MTUyNzI3MjA5MyByZz1zY2htYXJybgp+IyEgdGlkPTE1MjcyNzIwOTMKSGFyaGFyaGFyLiBKYSwgZGFzIGZpbmRlIGljaCBndXQuIDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpDaGFvcyBydWxleiAoSGVkc2tvcmNoYSwgMjguIE1haSAyMDE4LCAyMjowNDoxMik6CklzdCBlcyBndXRlIEFyYmVpdHNtb3JhbCBvZGVyIGhhdCBlciBlaW5mYWNoIExhcnMgc2NobmVsbGVyIGR1cmNoc2NoYXV0IGFscwpUb2Q/CgpUb2Qgc2FndDogV0FTIFdJTExTVCBEVSBERU5OIFNDSE9OIFdJRURFUiBMQVJTPwoKTGFycyBnZWh0IHp1IFRvZCB1bmQgYmVnaW5udCBlaW4gR2VzcHJhZWNoLCBkYXMgRHUgbGVpZGVyIG5pY2h0IHZlcnN0ZWhlbgprYW5uc3QuIEJlaWxhZXVmaWcgbmltbXQgTGFycyBUb2QgZGllIFNhbmR1aHIgYXVzIGRlbiBIYWVuZGVuIHVuZCBiZS0KdHJhY2h0ZXQgc2llIG5ldWdpZXJpZy4KCkhpbnRlciBUb2RzIFJ1ZWNrZW4gZHJlaHQgTGFycyBkaWUgU2FuZHVociB1bSB1bmQgc2NodWV0dGVsdCBzaWUgaGVmdGlnLgoKSGFya3VodSBicnVlbGx0OiBJc3QgbnVyIG5lIEZsZWlzY2h3dW5kZSwgbGFzcyB1bnMgd2VpdGVya2FlbXBmZW4hCk5hY2ggZWluaWdlbiBNaW51dGVuIHZlcmFic2NoaWVkZXQgc2ljaCBMYXJzIHVuZCB3aW5rdCBEaXIgenVtIEFic2NoaWVkCmxhZWNoZWxuZCB6dS4gVG9kIG5pbW10IGRpZSBVaHIgdW5kIHNldHp0IHNpY2ggYW4gc2VpbmVuIFNjaHJlaWJ0aXNjaAp1bmQgenVlY2t0IGVpbmUgU2NocmVpYmZlZGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllc2UgRXJ6aXMhIChZeGFxdWksICAyLiBKdW4gMjAxOCwgMTk6MTI6MTUpOgpBdXNnbGVpY2ggaGF0IGdlcmFkZSBkYXMgTW9yZ2VuR3JhdWVuIHZlcmxhc3Nlbi4KW0dyYXRzOkFya10gRGllIEhlZXJlIGRlciBIb2VsbGVuIGtyZWlzY2hlbiB2b3IgRW50dGFldXNjaHVuZyEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVz8gKFphcGhvYiwgIDguIEp1biAyMDE4LCAxOTo0MzoxOCk6CkRpZSBWZXJ6YXViZXJ1bmcgdm9uIEJsYWNrYmVhdXR5cyBIYWVuZGVuIGxhZXNzdCBsYW5nc2FtIG5hY2guCkJsYWNrYmVhdXR5IGdyaW5zdC4KRGllIGJsYWV1bGljaCBzY2hpbW1lcm5kZSBTY2h1dHphdXJhIHVtIEJsYWNrYmVhdXR5IGxvZXN0IHNpY2ggbGFuZ3NhbSBhdWYuCkJsYWNrYmVhdXR5IHNhZ3Q6IE9oLCBtZWluIEFra3UgaXN0IGdsZWljaCBsZWVyLi4uIE1pc3QKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3RhVGkgRnJhbmtmdXJ0IChCdWdmaXgsIDEwLiBKdW4gMjAxOCwgMjM6MTI6MzkpOgp+IyEgcm49TXVuZHJvbiBydD0xNTI4NjYzNzM3IHJnPXRyZWZmZW4uYmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTE1Mjg2NjM2NDkKRmFsc2NoZSBEYXR1bXNhbmdhYmVuIGF1Y2g/IDstKQoKQnVnZml4CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpPcGZlciBmdWVyIC4uLiBBYmVuZGVzc2VuPz8gKEFyaywgMjEuIEp1biAyMDE4LCAxOTozMTowOCk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIHN0ZWluZXJuZW4gUGFuaWtkYWVtb25zXSBTdGlyYiBaYWNhdHQhCkRlaW5lIEZyZXVuZGluIFNhcmF5IHRlaWx0IERpciBtaXQ6IGFiZW5kZXNzZW4KCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRHVyc3QgdW5kIEh1bmdlciAoSHVyYXhwcmF4LCAyNi4gSnVsIDIwMTgsIDIxOjI4OjA2KToKfiMhIHJuPU5vdHN0cm9tIHJ0PTE1MzI0NjI4MzAgcmc9ZC51bnRlcndlbHQKfiMhIHRpZD0xNTMyNDYyODMwCkljaCBuZWhtZSBhbiwgZGFzcyBtYW4gZGVuIGFtIGJlc3RlbiBtaXQgU3BpZWxlcm4gZnVldHRlcnQ/IEFtIGJlc3RlbiBtaXQKWndlcmdlbiBvZGVyIE9ya3MsIGRhIGlzdCBhbSBtZWlzdGVuIGRyYW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogU2Nob2tvbGFkZSAuLi4gKEFtYXJ5bGxpcywgIDQuIEF1ZyAyMDE4LCAxOTo1NTozMSk6Cn4jISBybj1Ob3RzdHJvbSBydD0xNTMzMzkzNzg4IHJnPWQud2FsZAp+IyEgdGlkPTE1MzMzOTM3ODgKSWNoIGhhZXR0ZSBqZXR6dCBub2NoIGdlcm5lIEhhcmliby4uLiA7KQoKQW1hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSYXVjaD8gKFphcGhvYiwgIDQuIEF1ZyAyMDE4LCAyMzoxMTo1NSk6CkFyayBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uCkdhbnogZW50ZmVybnQgaW0gTm9yZG9zdGVuIGRlciBTdGFkdCBzaWVoc3QgRHUgZWluZSBSYXVjaHNhZXVsZSBhdWZzdGVpZ2VuLgpXYXMgbWFnIGRvcnQgbnVyIHBhc3NpZXJ0IHNlaW4/IFZpZWxsZWljaHQgYmVnaWJzdCBEdSBEaWNoIGVpbm1hbCBkb3J0aGluIHVuZApzaWVoc3QgbmFjaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSYXVjaD8gKE11bmRyb24sICA1LiBBdWcgMjAxOCwgMDg6MDE6MTcpOgp+IyEgcm49WmFwaG9iIHJ0PTE1MzM0MTcxMTUgcmc9c2NobWFycm4KfiMhIHRpZD0xNTMzNDE3MTE1CkRhcyBzaW5kIHNpY2hlciBkaWUgSGVlcmVuIGRlciBIb2VsbGUhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJhdWNoPyAoQXJrLCAgNS4gQXVnIDIwMTgsIDA5OjU0OjQ4KToKfiMhIHJuPU11bmRyb24gcnQ9MTUzMzQ0ODg3NyByZz1zY2htYXJybgp+IyEgdGlkPTE1MzM0MTcxMTUKTmUsIGVzIHNpbmQgYXVjaCBrZWluZSBIZXJyZW4sIGVzIHNpbmQgImRpZSBIZWVyZSBkZXIgSG9lbGxlbiIuIFRzdHMsIHdlbm4sCmRhbm4gcmljaHRpZywgcG9laCEgOi0pCiwKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBSYXVjaD8gKENoYWdhbGwsICA2LiBBdWcgMjAxOCwgMDg6MjQ6MDMpOgp+IyEgcm49QXJrIHJ0PTE1MzM0NTU2ODggcmc9c2NobWFycm4KfiMhIHRpZD0xNTMzNDE3MTE1CkljaCBmaW5kZSBqYSAiZGllIEhlcnJlbiBkZXIgSG9lbGxlbiIgYmVzc2VyLiBEdSBzb2xsdGVzdCBkYXMgdWViZXJuZWhtZW4uCgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUmF1Y2g/IChBcmssICA2LiBBdWcgMjAxOCwgMTg6NDM6MTgpOgp+IyEgcm49Q2hhZ2FsbCBydD0xNTMzNTM2NjQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUzMzQxNzExNQpPdmVyIG15IGNvbGQgZGVhZCBib2R5IC4uLi4gdW5kIGplZHdlZGVyIExhZXN0ZXJ1bmcsIGRpZSBkaWVzZXIgQXVzc2FnZSBmb2xndCwKZXJ0ZWlsZSBpY2ggZWluIEFic2FnZSA6LSkKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBSYXVjaD8gKEh1cmF4cHJheCwgIDYuIEF1ZyAyMDE4LCAyMzowNToyNCk6Cn4jISBybj1BcmsgcnQ9MTUzMzU3Mzc5OCByZz1zY2htYXJybgp+IyEgdGlkPTE1MzM0MTcxMTUKSWNoIGRhY2h0ZSBpbW1lciBkYXMgaGllc3NlIGRpZSBIZXJyZW4gZGVyIEhvZWhsZW4/CgpodXJheAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUmF1Y2g/IChBcmssICA3LiBBdWcgMjAxOCwgMTU6NDM6NTApOgp+IyEgcm49SHVyYXhwcmF4IHJ0PTE1MzM1ODk1MjQgcmc9c2NobWFycm4KfiMhIHRpZD0xNTMzNDE3MTE1CkphaHJlbGFuZyBhaG51bmdzbG9zIC4uLiBhYmVyIGd1dCwgc28gc2luZCBkaWUgVGFuamlhbiwgdW5pbmZvcm1pZXJ0IHVuZAp0cm90emRlbSBndXQgdW5kIHNjaGxlY2h0IGRyYXVmLCBpbW1lciBkaWUgTWl0dGUgOikKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTnVzc2Vja2VuICh2ZWdhbikgKFZhbmlyLCAxNi4gU2VwIDIwMTgsIDIwOjUxOjMwKToKfiMhIHJuPVplc3N0cmEgcnQ9MTUzNzExOTQ1MCByZz1rb2NocmV6ZXB0ZQp+IyEgdGlkPTE1MzcxMTk0NTAKV2llIGJlaXNzZW4gZGllIHNpY2ggZGVubiwgd2VubiBkaWVzOgpodHRwczovL2JpdC5seS8yTmlob0JJCmluIGRlbiBLZWtzZW4gaXN0PwoKVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOdXNzZWNrZW4gKHZlZ2FuKSAoQW1hcnlsbGlzLCAxNi4gU2VwIDIwMTgsIDIxOjQ5OjU2KToKfiMhIHJuPVplc3N0cmEgcnQ9MTUzNzExOTQ1MCByZz1rb2NocmV6ZXB0ZQp+IyEgdGlkPTE1MzcxMTk0NTAKR2lidHMgZWlnZW50bGljaCBhdWNoIGVpbmUgIlBmbGFuemVuYmVmcmVpdW5nc29mZmVuc2l2ZSI/Ck9id29obCBpbiBzY2htYXJybiwga29lbm50ZSBtYW4gZGFzIGR1cmNoYXVzIG1hbCBkdXJjaHVlYmVybGVnZW4gLSBlaW5lbiBHcnVzcwphdWNoIGFuIGRpZSBGcnV0YXJpZXIuLi4KCkFtYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOdXNzZWNrZW4gKHZlZ2FuKSAoVmFuaXIsIDE3LiBTZXAgMjAxOCwgMTE6MzE6NTUpOgp+IyEgcm49VGl6b25hIHJ0PTE1MzcxMzM1ODYgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xNTM3MTE5NDUwClRhcm5uYW1lIEd1aWxkbyBIb3JuPwpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOdXNzZWNrZW4gKHZlZ2FuKSAoUnVtYXRhLCAxNy4gU2VwIDIwMTgsIDE5OjM0OjM0KToKfiMhIHJuPVZhbmlyIHJ0PTE1MzcxMjM4OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xNTM3MTE5NDUwClplc3N0cmFzIE51c3NlY2tlbiB3YXJlbiBzdXBlci4gV2VubiBkYXMgZGEgZHJpbm5lLCBrYXVmIGljaCBlaW5lbiBFaW1lci4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE51c3NlY2tlbiAodmVnYW4pIChWYW5pciwgMTcuIFNlcCAyMDE4LCAxOTozNTo1Nik6Cn4jISBybj1SdW1hdGEgcnQ9MTUzNzIwNTY3NCByZz1zY2htYXJybgp+IyEgdGlkPTE1MzcxMTk0NTAKV2VubiBkYXMgZGEgZHJpbiB3YXIsIGRhbm4gc29sbHRlIGVyIG5vY2ggY2EuIDksODMga2cgdWVicmlnIGhhYmVuLgpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogTnVzc2Vja2VuICh2ZWdhbikgKFJ1bWF0YSwgMTcuIFNlcCAyMDE4LCAxOTozNzozOCk6Cn4jISBybj1WYW5pciBydD0xNTM3MjA1NzU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUzNzExOTQ1MApXb2hlciB3ZWlzc3QgZHUsIHdpZSBvZnQgZXIgZGllIHNjaG9uIGdlbWFjaHQgaGF0PyA7LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE51c3NlY2tlbiAodmVnYW4pIChWYW5pciwgMTcuIFNlcCAyMDE4LCAxOTo0MDowNyk6Cn4jISBybj1SdW1hdGEgcnQ9MTUzNzIwNTg1OCByZz1zY2htYXJybgp+IyEgdGlkPTE1MzcxMTk0NTAKR3V0ZXIgSGlud2Vpcy4gSWNoIHZlcm11dGUgYWJlciBhdWNoLCBkYXNzIGVyIGVoZXIgZGVuIHp3ZWl0ZW4gVHJlZmZlciwgZGVuCmljaCBoYXR0ZSwgaW4gZGllIE51c3NlY2tlbiBlaW5nZWFyYmVpdGV0IGhhdC4KSWNoIG11c3N0ZSBoYWx0IGVyc3RtYWwgZ3Vja2VuLCB3b3J1bSBlcyBzaWNoIGJlaSBBbHNhbiAoaGFiIGljaCBtaXIgZGFzCnJpY2h0aWcgZ2VtZXJrdCkgaGFuZGVsdC4KVi4KClBTLjogQXNsYW4gaGFldHRlIGljaCBlcmthbm50LCB3YWVyZSBhYmVyIGluIGRlbSBadXNhbW1lbmhhbmcgYXVjaCBrb21pc2NoCmdld2VzZW4sIGVzIHNlaSBkZW5uIGRhcyBSZXplcHQga2FlbWUgdm9uIEx1Zy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE51c3NlY2tlbiAodmVnYW4pIChaZXNzdHJhLCAxNy4gU2VwIDIwMTgsIDIwOjAzOjUwKToKfiMhIHJuPVZhbmlyIHJ0PTE1MzcyMDYwMDcgcmc9c2NobWFycm4KfiMhIHRpZD0xNTM3MTE5NDUwCkRlciB6d2VpdGUgVHJlZmZlciBrbGluZ3QgYmVzc2VyLi4uClN0YXR0IEFsc2FuIGdlaHQgYWJlciB2ZXJtdXRsaWNoIGF1Y2ggZmFzdCBqZWRlIGFuZGVyZSBwZmxhbnpsaWNoZQpNYXJnZXJpbmUuLi4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE51c3NlY2tlbiAodmVnYW4pIChWYW5pciwgMTcuIFNlcCAyMDE4LCAyMDowNDozMyk6Cn4jISBybj1aZXNzdHJhIHJ0PTE1MzcyMDc0MzAgcmc9c2NobWFycm4KfiMhIHRpZD0xNTM3MTE5NDUwCkphLCBkYXMgaGFiIGljaCB2ZXJtdXRldC4gSGF0dGUgYWJlciBkZW4gRHJhbmcgbWVpbmVuIFRyZWZmZXIgenUgdGVpbGVuIDopClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBOdXNzZWNrZW4gKHZlZ2FuKSAoQ3JvZnQsIDE3LiBTZXAgMjAxOCwgMjA6NTU6NTApOgp+IyEgcm49VmFuaXIgcnQ9MTUzNzIwNzQ3MyByZz1zY2htYXJybgp+IyEgdGlkPTE1MzcxMTk0NTAKSG0uIEJlaSBtaXIgd2FyIGRhcyBuaWNodCB1bnRlciBkZW4gVG9wMTAgVHJlZmZlcm4uIFdvbmFjaCBnb29nbGVkIFZhbmlyPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IE51c3NlY2tlbiAodmVnYW4pIChWYW5pciwgMTcuIFNlcCAyMDE4LCAyMzo0Njo0NCk6Cn4jISBybj1Dcm9mdCBydD0xNTM3MjEwNTUwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUzNzExOTQ1MApHYW56IG9iZW4gbGlua3MgaW0gQmVyZWljaCBBbnplaWdlbiB0YXVjaHQgZGFzIGF1Zi4gVW5kIGljaCBoYWIgbnVyIGRpZXNlbgpOYW1lbiBkZXIgTWFyZ2FyaW5lIGVpbmdlZ2ViZW4uIERpZXNlIHF1YWRlcmZvZXJtaWdlbiBNYXJnYXJpbmVibG9lY2tlIGtvbm50ZQppY2ggZGFubiBzY2hvbiByaWNodGlnIGlkZW50aWZpemllcmVuLiBOdXIgd2FyIGRhcyBlcnN0ZSBhdWYgZGVyIFNlaXRlIGhhbHQKZGllc2VzIFNwZXppYWxwcm9kdWt0LCBkYXMgamVkZSBBcnQgdm9uIE51c3NlY2tlIHdlc2VudGxpY2ggaGFsdGJhcmVyIG1hY2hlbgp3aXJkLgpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IE51c3NlY2tlbiAodmVnYW4pIChDcm9mdCwgMTguIFNlcCAyMDE4LCAwMDowOToyMik6Cn4jISBybj1WYW5pciBydD0xNTM3MjIwODA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUzNzExOTQ1MApGb3JtYWxkZWh5ZCBzb2xsIGF1Y2ggc2VociBndXQgenVtIEhhbHRiYXJtYWNoZW4gc2Vpbi4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xMTogTnVzc2Vja2VuICh2ZWdhbikgKFJ1bWF0YSwgMTguIFNlcCAyMDE4LCAwODo1OTowNSk6Cn4jISBybj1Dcm9mdCBydD0xNTM3MjIyMTYyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUzNzExOTQ1MApXZW5uIGljaCBzbyBoZXJ1bW1zaW5uaWVyZSBpc3QgdHJvY2tuZW4oZGVreWRyaWVyZW4pIGluZm9ybWVsbGVzIEZvcm1hbGRlaHlkLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBFaW4gU2NobmVlYmVzZW4gLi4uIChBbWFyeWxsaXMsIDE4LiBTZXAgMjAxOCwgMjA6NDU6MTUpOgp+IyEgcm49WmVzc3RyYSBydD0xNTM3Mjk1OTcwIHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTE1MzcyOTUyMTcKSmEsIGRydW0gaGVpc3N0IGVyIGphICJCdWdmaXgiLiBCZWRldXRldCBpbiBkaWVzZW0gRmFsbGUgX25pY2h0XywgZGFzcyBlciBCdWdzCmZpeHQsIHNvbmRlcm4gZGFzcyBlciBmaXggbmV1ZSBCdWdzIGVyemV1Z3QgOykKCkFtYSwgbWFsIG9pc3Nhc3Qgd2Vpc2UgbmlnZ2VuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSGVyenNjaGxhZyBvZGVyIG5pY2h0PyAoU2VsYnN0bW9yZCwgMjMuIFNlcCAyMDE4LCAxODo0OTo0Myk6Ck9oIHdlaCAtIGRhcyBHaWZ0IHdhciB6dXZpZWwgZnVlciBEaWNoIQpEdSBzdGlyYnN0LgpEdSBzaWVoc3QgZWluZW4gRmVobGVyIGltIFJhdW0tWmVpdC1HZWZ1ZWdlLgpWb24gTlBDIERlciBHYW1lRHJpdmVyOiBEZWluIEhlcnpzY2hsYWcgaGF0IGF1c2dlc2V0enQhCltUb2Q6TGFyc10gRWluZSBWZXJnaWZ0dW5nIGhhdCBnZXJhZGUgU2VsYnN0bW9yZCB1bWdlYnJhY2h0LgoKV2VsY29tZSBiYWNrIGFnYWluIQpZb3UgYXJlIGluIHRoZSBsb2NhbCB2aWxsYWdlIGNodXJjaC4gVGhlcmUgaXMgYSBodWdlIHBpdCBpbiB0aGUgY2VudGVyIGFuZAphIGRvb3IgaW4gdGhlIHdlc3Qgd2FsbC4gVGhlcmUgaXMgYnV0dG9uIGJlc2lkZSB0aGUgZG9vci4gVGhlIGNodXJjaCBoYXMgdGhlCnNlcnZpY2Ugb2YgcmV2aXZpbmcgZ2hvc3RzLiBEZWFkIHBlb3BsZSBjb21lIHRvIHRoZSBjaHVyY2ggYW5kIHByYXkuClRoZXJlIGlzIGFuIGV4aXQgdG8gdGhlIHNvdXRoLgpCb2luZyB0aGUgVmFtcGlyZSBMb3JkLgpUaGUgYW5ncnkgcHJvZi4KR3JhbmRwYSBDZWRyaWMuCkpvZiB0aGUgZ3JlYXQgYWR2ZW50dXJlc3MuClRoZSBnaG9zdCBvZiBNaXJpbC4KClZvbiBOUEMgRGVyIEdhbWVEcml2ZXI6IERlaW4gSGVyenNjaGxhZyBoYXQgd2llZGVyIGVpbmdlc2V0enQuCgoKCkljaCBoYWV0dGUgamEgbmllIGdlZGFjaHQsIGRhc3MgaWNoIHZvcm0gYmV0ZW4gZWluZW4gSGVyenNjaGxhZyBoYWIsIHRyb3R6ZGVtCm11c3N0ZSBpY2ggZGllIFNlcXVlbnogenVlbmRlIGFuaG9lcmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhlcnpzY2hsYWcgb2RlciBuaWNodD8gKENyb2Z0LCAyMy4gU2VwIDIwMTgsIDIwOjAyOjI3KToKfiMhIHJuPVNlbGJzdG1vcmQgcnQ9MTUzNzcyMTM4MyByZz1zY2htYXJybgp+IyEgdGlkPTE1Mzc3MjEzODMKRnVuIGZhY3Q6IGRlciBIZXJ6c2NobGFnIHNvcmd0IGRhZnVlciBkYXNzIGR1IGRpZXNlIFNlcXVlbnogYW5nZXplaWd0CmJla29tbXN0IDstKQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogS2liYmxlcyBhbmQgQml0cyAoR2xvaW5zb24sIDI2LiBTZXAgMjAxOCwgMjM6Mzk6MTUpOgp+IyEgcm49Q3JvZnQgcnQ9MTUzNzk5Mjc4NCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTE1Mzc5ODY0MTkKTGVnZ29yIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBHYXN0c3RhZXR0ZSBkZXIgRWxmZW5zaWVkbHVuZyA0LzUgKEhlZHNrb3JjaGEsICAyLiBPa3QgMjAxOCwgMTE6NDM6MzcpOgpCaXMgYXVmIGRpZSBnYW56ZW4gRnVjaHRlbGVsZmVuIG5ldHQgaGllci4gRHJpbmsga25hbGx0IGd1dDoKCkR1IHRyaW5rc3QgZGVuIFNjaG5lbGxoYWVydGVyIG1pdCBlaW5lbSBTY2hsdWNrIGF1cy4KQWxsZXMgdW0gZGljaCBoZXJ1bSB3aXJkIGR1bmtlbC4KRHUgZmluZGVzdCBkaWNoIGF1ZiBkZW0gQm9kZW4gbGllZ2VuZCB3aWVkZXIsIHVuZCBuYWNoIGVpbiBwYWFyIFZlcnN1Y2hlbgpnZWxpbmd0IGVzIGRpciBzb2dhciwgd2llZGVyIGF1Znp1c3RlaGVuLgoKV2llIHdpbGQgc2NobWVpc3N0IER1IGFsbGVzIHZvbiBEaXIhCkR1IGthbm5zdCBlaW5lIGNoYW90aXNjaCBtdXRpZXJ0ZSBIYXV0IG5pY2h0IGF1c3ppZWhlbiwgc2llIGlzdCB2ZXJmbHVjaHQKd29yZGVuLiAKRHUga2FubnN0IGRpZSBjaGFvdGlzY2ggbXV0aWVydGUgSGF1dCBuaWNodCB3ZWd3ZXJmZW4hCkR1IGxhZXNzdCBkaWUgR2VsZGJvZXJzZSBmYWxsZW4uClsuLi5dCkRlciBHYXN0d2lydCBzYWd0OiBQYXNzZW4gU2llIGF1ZiwgZGFzcyBlcyBuaWNodCB6dXZpZWwgd2lyZC4KCkphLCBmaW5kIGljaCBndXQgaGllci4gS29tbWUgZ2VybmUgd2llZGVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQk9JTkchIChZeGFxdWksICAzLiBPa3QgMjAxOCwgMDg6MTI6MDMpOgpEZXIgRGFlbW9uIHNwcnVlaHQgU2FldXJlIGF1ZiBEaWNoLiAKICBfX19fbm9ybWFsL0tsYXVlbl9fX19fXyBTYWV1cmVkYWVtb25fIDogRGljaF9fX19fX19fXyAqQXVzd2UqKiA8LSB2ZXJmZWhsdAogIF9fX19ub3JtYWwvR3VydW5kaXJfX19fIER1X19fX19fX19fX18gOiBTYWV1cmVkYWVtb25fICoqKioqKioqIC0+ClNjaG1ldHRlcm4KRmludGU6IGtsZWluZW4gU2FldXJlZGFlbW9uCkxQOiAxODMsIEtQOiAgODgsIEdpZnQ6IGtlaW5zLgogIF9fdG9lZGxpY2gvVG9kZXNzdG9zc19fIER1X19fX19fX19fX18gOiBTYWV1cmVkYWVtb25fICoqKioqKioqIC0+CnplcnN0YWV1YnQKRGVyIGtsZWluZSBTYWV1cmVkYWVtb24gZmFlbGx0IHRvdCB6dSBCb2Rlbi4KTFA6IDE4MywgS1A6ICA2MywgR2lmdDoga2VpbnMuCkxQOiAxODQsIEtQOiAgNjMsIEdpZnQ6IGtlaW5zLgpFaW4ga2xlaW5lciBTYWV1cmVkYWVtb24ga29tbXQgYW4uCkVpbiBrbGVpbmVyIFNhZXVyZWRhZW1vbiBoZWJ0IGVpbiBQYWFyIEFkYW1hbnRzY2h1aGUgYXVmLgpEdSBhdG1lc3QgZWlubWFsIHp1IHRpZWYgZWluLgpMUDogMTc0LCBLUDogIDYzLCBHaWZ0OiBrZWlucy4KTFA6IDE3NCwgS1A6ICA2NCwgR2lmdDoga2VpbnMuCiAgX19fX25vcm1hbC9LbGF1ZW5fX19fX18gU2FldXJlZGFlbW9uXyA6IERpY2hfX19fX19fX18gKioqKioqKiogPC0gdmVyZmVobHQKICBfX19fbm9ybWFsL0d1cnVuZGlyX19fXyBEdV9fX19fX19fX19fIDogU2FldXJlZGFlbW9uXyAqKioqKioqKiAtPgpTY2htZXR0ZXJuCiAgX19fX25vcm1hbC9LbGF1ZW5fX19fX18gU2FldXJlZGFlbW9uXyA6IERpY2hfX19fX19fX18gKioqKioqKiogPC0gaGFydAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJPSU5HISAoQW1hcnlsbGlzLCAgMy4gT2t0IDIwMTgsIDE1OjE1OjQwKToKfiMhIHJuPVl4YXF1aSBydD0xNTM4NTQ3MTIzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTUzODU0NzEyMwpLYWVtcGZlciBhYndlcnRlbiEhIWVsZmVpbnMKCkFtYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIG1hbCBhbmRlcnMgKFphcGhvYiwgMjAuIE9rdCAyMDE4LCAyMDo0ODowMSk6CltBYmVudGV1ZXI6T2duaV0gS2FubiBtYW4gZWluZSBMaWFuZSBudXR6ZW4/IC0+IFNhbXMKW0FiZW50ZXVlcjpPZ25pXSBQZmVpZmZlLUdsb2NrZW53YWxkLUJhdW1oYXVzLi4uCltBYmVudGV1ZXI6WmFya3VdIG5laW4KW0FiZW50ZXVlcjpXdXJzdGVsXSBkYXp1IGJyZXVjaHN0IGR1IGtlaW5lIGxpYW5lLCBzb25kZXJuIGtsZXR0ZXJ3ZXJremV1ZwpbQWJlbnRldWVyOlphcmt1XSB1bmQgcmF0ZSBtYWwgd28gZXMgZGFzIGdpYnQ/IDspCltBYmVudGV1ZXI6V3Vyc3RlbCBraWNoZXJ0Ll0KW0FiZW50ZXVlcjpPZ25pXSBKYWphLCBoYWNrdCBydWhpZyBhdWYgbWlyIHJ1bS1pY2ggYXJtZXIgV2ljaHQtRGVyLCBkZXIKW0FiZW50ZXVlcjpPZ25pXSBkYWNodGUsIGVyIGxvZ2d0IHNpY2ggZGllc2UgV09jaGUgbWFsIHdpZWRlciBpbnMgTUcgZWluLXVuZApbQWJlbnRldWVyOk9nbmldIGFsbGVzIGxhZXVmdCBzbyBnZXNjaG1pZXJ0LCB3aWUgdm9yIERla2FkZW4uXl4KW0FiZW50ZXVlcjpPZ25pXSBPZ25pIGtyaW5nZWx0IHNpY2ggdm9yIExhY2hlbgpbQWJlbnRldWVyOlphcGhvYl0gZ3V0ZXIgR2VkYW5rZSEgQWJlciBhdWNoIHZvciBEZWthZGVuIGdhYiBlcyBOYWNoZnJhZ2VuLCB1bmQKW0FiZW50ZXVlcjpaYXBob2JdIHRhdHNhZWNobGljaCBub2NoIHZpZWwgbWVociBIYWVobWUgdW5kIHNpbm5sb3NlIFJhdHNjaGxhZWdlCltBYmVudGV1ZXI6WmFwaG9iXSBmdWVyIGRpZSBhcm1lbiBBbmZhZW5nZXIgOikKW0FiZW50ZXVlcjpCZW5kZWlnaWQgbmlja3QgWmFwaG9iIHdlaXNlIHp1XQpbQWJlbnRldWVyOkJlbmRlaWdpZF0gZ2FiIGF1Y2ggbWVociBBbmZhZW5nZXIsIGRhIHZlcnRlaWx0ZSBzaWNoIGRpZSBQcnVlZ2VsCltBYmVudGV1ZXI6QmVuZGVpZ2lkXSBiZXNzZXIgOykKW0FiZW50ZXVlcjpPZ25pXSBEYW1hbHMgaGF0dGUgaWNoIE1hZ2ljb2xsaSBhbiBtZWluZXIgU2VpdGUsIGRhcyBlcmxlaWNodGVydGUKW0FiZW50ZXVlcjpPZ25pXSB2aWVsIQpbQWJlbnRldWVyOkJlbmRlaWdpZF0gb2gsIGdpYnRzIGRlbiBub2NoPwpbQWJlbnRldWVyOlphcGhvYl0gU3RpbW10LCBEb2t0b3IgT2xsaSB3YXIgYXVjaCBzY2hvbiBzZWhyIGRyb2xsaWcKW0FiZW50ZXVlcjpaYXJrdV0gaW1tZXJoaW4gYmlzdCBkdSBsdmwgMzYgdW5kIHNlaGVyLCBkYXMgc2NoYWZmdCBoZXV0ZSBuaWVtYW5kCltBYmVudGV1ZXI6WmFya3VdIG1laHIgOykKW0FiZW50ZXVlcjpCZW5kZWlnaWRdIGxhbmdzYW0gd2lyZCBkYXMgTUcgd2llZGVyIHp1ciBTcGllbHdpZXNlIGZ1ZXIgZ2FueiBhbHRlCltBYmVudGV1ZXI6QmVuZGVpZ2lkXSBTcGllbGVyL01hZ2llciBkZXIgZXJzdGVuIFN0dW5kZW4KW0FiZW50ZXVlcjpPZ25pXSBXZWlzcyBpY2ggbmljaHQsIGxlYmVuIHR1dCBlciwgc2VpbmUgRWx0ZXIgRWx0ZXJuIHdvaG5lbiBub2NoCltBYmVudGV1ZXI6T2duaV0gaW4gbWVpbmVtIEdlYnVydHNvcnQuLi5tZWhyIHdlaXNzIGljaCBhYmVyIGF1Y2ggbmljaHQKW0FiZW50ZXVlcjpXdXJzdGVsXSBsaWVzcyBkZXIgbmljaHQgYWIgdW5kIHp1IGRlbiB6dC1zcHJ1Y2ggbWl0IGRlbiAxMDAKW0FiZW50ZXVlcjpXdXJzdGVsXSBrbGVpbmVuIGVzZWxuIHJhdXMgKG1hZ2ljb2xsaSBtZWluIGljaCkKW0FiZW50ZXVlcjpPZ25pXSBEQXZvbiBoYWIgaWNoIG5vY2ggaWUgZ2Vob2VydC4uLjotKQpbQWJlbnRldWVyOlphcGhvYl0gaWNoIGhhYiBncmFkIGF1cyBWZXJzZWhlbiAiV3VyemVsIiBnZWxlc2VuIHN0YXR0ICJXdXJzdGVsIgpbQWJlbnRldWVyOlphcGhvYl0gdW5kIGRhcyBuYWNoZGVtIEJlbmRlaWdpZCB2b24gZGVyIFNwaWVsd2llc2Ugc2NocmllYi4uCltBYmVudGV1ZXI6WmFwaG9iXSAqc2Nob2NrKgpbQWxsZ2VtZWluOkhhdGVdIFNjaHd1cmJlbD8KW0FiZW50ZXVlcjpPZ25pXSBJY2ggbWVpbmUsIG5lbi9uZSBXdXJ6ZWwgZ2FicyBkYW1hbHMgYXVjaCwgb2Rlcj8KW0FiZW50ZXVlcjpCZW5kZWlnaWRdIE5FSU4hIE9nbmkhIEVpbmUgV3VyemVsIGdhYnMgbmllLCBvZGVyIGhhZXR0cyBiZXNzZXIKW0FiZW50ZXVlcjpCZW5kZWlnaWRdIG5pY2h0IGdlZ2ViZW5lIG9kZXIgc28hIERpZSBXdXJ6ZWwgYWxsZW4gVWViZWxzLApbQWJlbnRldWVyOkJlbmRlaWdpZF0gd29ydHdvZXJ0bGljaApbQWJlbnRldWVyOlphcGhvYl0gU2VoZXIgbWl0IFN0dWZlIDMwLCBkYXMgd2FyZW4gbm9jaCBaZWl0ZW4gKnNjaHdhZXJtKgpbQWJlbnRldWVyOkJlbmRlaWdpZF0gc3R1ZmUgMzAgPz8/PyBpaWlpZWtzIQpbQWJlbnRldWVyOkJlbmRlaWdpZF0gZGFubiB3YWVyZSBpY2ggaGV1dGUgbm9jaCBzcGllbGVyISA7KQpbQWJlbnRldWVyOkJlbmRlaWdpZCB3dXJkZSBTZWhlciBtaXQgTGV2IDIwLCB1bmQgendlaSBXb2NoZW4gc3BhZXRlciBNYWdpZXIuXQpbQWJlbnRldWVyOlphcGhvYl0gTmEgZ3V0LCBpbnp3aXNjaGVuIGJla29tbXQgbWFuIGRpZSBlcnN0ZW4gMTAgU3R1ZmVuIGphIGZhc3QKW0FiZW50ZXVlcjpaYXBob2JdIGdlc2NoZW5rdCwgYWxzbyBkYW5uIHBhc3N0IGRhcyB3aWVkZXIgdW5nZWZhZWhyCltBYmVudGV1ZXI6QmVuZGVpZ2lkXSBpY2ggc2VoIGdyYWRlOiBpY2ggaGFiIDEsNiBNaW8gWFAgOikpKSBkYXMgaXN0IHJlZ3VsYWVyCltBYmVudGV1ZXI6QmVuZGVpZ2lkXSBlcnNwaWVsdCA6KSkpKQpbQWJlbnRldWVyOlphcGhvYiBncmF0dWxpZXJ0IEJlbmRlaWdpZC5dCltBYmVudGV1ZXI6QmVuZGVpZ2lkIGRhbmt0XQpbQWJlbnRldWVyOk9nbmldIEljaCBoYWJlIDEsNjcgTWlvLiBYcC0tLXVuZCBuaWNodCB3aXJrbGljaCB2aWVsIHdhcyBkYXZvbi4KW0FiZW50ZXVlcjpPZ25pXSA6LTkKW0FiZW50ZXVlcjpaYXBob2JdIGljaCB3dWVyZGUgbWljaCBqYSBiZXNjaHdlcmVuCltBYmVudGV1ZXI6QmVuZGVpZ2lkIGtvZW5udGUgRGlyIGVpbiBwYWFyIFhQIGFiemllaGVuLi4uLl0KW0FiZW50ZXVlcjpPZ25pXSBBY2ggbmUsIGFsbGVzIGd1dCEKW0FiZW50ZXVlcjpBcmF0aG9ybl0gT2NoLCA0IFN0dWZlbiBzaW5kIGpldHp0IG5pY2h0ICJuaWNodHMiLiA6LSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKWyBBTEVSVCBdIC0gU29ja2V0IGdvdCBkaXNjb25uZWN0ZWQuCiAgICAgICAgICAgIFJlYXNvbjogVGhlIHJlbW90ZSBob3N0IGNsb3NlZCB0aGUgY29ubmVjdGlvbgoKUklQIFVwdGltZSwga25hcHAgMjUwIFRhZ2UKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIYXRlIHdhcnMhIChDcm9mdCwgMjAuIE9rdCAyMDE4LCAyMjowMzoxOCk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTU0MDA2MTYyNSByZz1wcmFuZ2VyCn4jISB0aWQ9MTU0MDA2MTYyNQpIYXRlIGhhdCBzaWNoIGV4dHJhIGZ1ZXIgZGVuIENyYXNoIGVpbmdlbG9nZ3Q/IFdvdy4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIG1hbCBhbmRlcnMgKFphcGhvYiwgMjAuIE9rdCAyMDE4LCAyMjowNDo1Myk6Cn4jISBybj1aYXBob2IgcnQ9MTU0MDA2MTI4MSByZz1zY2htYXJybgp+IyEgdGlkPTE1NDAwNjEyODEKRGVyIEtyYW1sYWRlbiBkZXIgRWxmZW5zaWVkbHVuZy4KRXMgZ2lidCB6d2VpIHNpY2h0YmFyZSBBdXNnYWVuZ2U6IG9iZW4gdW5kIHN1ZWRlbi4KRGVyIEtyYWVtZXIgamFtbWVydDogRGVyIG5hZWNoc3RlIENyYXNoIHJ1aW5pZXJ0IG1pY2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMVyBtYWwgYW5kZXJzIChDcm9mdCwgMjAuIE9rdCAyMDE4LCAyMjoxNToxNCk6Cn4jISBybj1aYXBob2IgcnQ9MTU0MDA2NTg5MyByZz1zY2htYXJybgp+IyEgdGlkPTE1NDAwNjEyODEKV2llIGd1dCBkYXMgZXIgbml4IHVlYmVyIFJlYm9vdHMgc2FndC4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpEYSBpZGxldCBtYW4gbWFsLi4uIChCZW5kZWlnaWQsIDI1LiBPa3QgMjAxOCwgMTc6NTk6MjgpOgpbTFBDOlplc3N0cmFdIFNvLCBtYWwgZGVzdHJ1Y3RlZCwgcmVtb3ZlIGdlaHQgamEgbmljaHQuLi4KW1RvZDpMYXJzXSBFaW4gUnVuZW5zY2h3ZXJ0IGhhdCBnZXJhZGUgRmlyb3Rlc3MgdW1nZWJyYWNodC4KW1RvZDpGaXJvdGVzcyByYXR0ZXJ0IGluIGRpZSBIb2VsbGVdCgpCZW5kZWlnaWQsIHVlYmVyIFplc3N0cmFzIFRhcm51bmcgZGVyIFRhdCBzY2htdW56ZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IERhIGlkbGV0IG1hbiBtYWwuLi4gKFphcGhvYiwgMjUuIE9rdCAyMDE4LCAxOToxODoxOSk6Cn4jISBybj1CZW5kZWlnaWQgcnQ9MTU0MDQ4MzE2OCByZz1zY2htYXJybgp+IyEgdGlkPTE1NDA0ODMxNjgKPiAtTFBDKwpEaWUgRWJlbmUgJ0xQQycgZ2lidCBlcyBuaWNodCEKPiBlYmVuZSBuZXUgTFBDIFRlc3QKRGllc2UgRWJlbmUgZGFyZnN0IGR1IG5pY2h0IGVyc2NoYWZmZW4hCgpmb3JldmVyIGFsb25lIDooCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERhIGlkbGV0IG1hbiBtYWwuLi4gKFplc3N0cmEsIDI1LiBPa3QgMjAxOCwgMTk6NTc6NTMpOgp+IyEgcm49WmFwaG9iIHJ0PTE1NDA0ODc4OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xNTQwNDgzMTY4Ck11c3N0IG51ciBNYWdpZXIgd2VyZGVuLiA7LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERhIGlkbGV0IG1hbiBtYWwuLi4gKERlYWRkeSwgMjcuIE9rdCAyMDE4LCAxNDowODowOSk6Cn4jISBybj1aZXNzdHJhIHJ0PTE1NDA0OTAyNzMgcmc9c2NobWFycm4KfiMhIHRpZD0xNTQwNDgzMTY4Cldlbm4gQmVuZGUgZ2VoZWltZSBNYWdpZXJzYWNoZW4gdmVycmF0ZW4gZGFyZiwgZGFubiBkYXJmIGljaCBkYXMgYXVjaDoKCls8c3VwZXJnZWhlaW1lIE1hZ2llcmViZW5lIHplbnNpZXJ0PjpCZW5kZWlnaWRdIHdlciBpc3QgaGllciB1cmFsdD8/Pz8/CltLdWx0dXI6Tm90c3Ryb20gZW1wZmllaGx0IERlZGFsdXMgbWl0IGRlbSBnbGVpY2huYW1pZ2VuIERlYnV0YWxidW0uXQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVmVyZ2Vzc2xpY2hrZWl0IGlzdCBlaW4gRmVobGVyIChOb3RzdHJvbSwgMjcuIE9rdCAyMDE4LCAxODoxNTo1OCk6CkR1IGRlbmtzdCAgIC4gbyBPIChpY2ggaGFiIHNjaG9uIHdpZWRlciBhbGxlcyB2ZXJnZXNzZW4sIHdpZSBkYXMgZ2luZy4pIApab29rIGRlbmt0ICAgLiBvIE8gKGljaCBhdWNoIF5eKQpEZWluIEZlaGxlcnRldWZlbCB0ZWlsdCBEaXIgbWl0OiBEZWluZSBGZWhsZXJsaXN0ZSBpc3Qgc29lYmVuIGxhZW5nZXIKRGVpbiBGZWhsZXJ0ZXVmZWwgdGVpbHQgRGlyIG1pdDogZ2V3b3JkZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpnZXNjaGFlZnRsaWNoZXMgKEFyc29uLCAzMS4gT2t0IDIwMTgsIDEyOjUyOjAwKToKTGVpY2h0IGFuZ2Vla2VsdCBzZXR6dCBkdSBkaWNoIGF1ZiBkZW4gRG9ubmVyYmFsa2VuLgpEYXMgd2FyIGhvZWNoc3RlIFplaXQuIExhZW5nZXIgaGFldHRlc3QgZHUgZXMgZGlyIG5pY2h0IHZlcmtuZWlmZW4ga29lbm5lbi4KW0FuZmFlbmdlcjpEZWVwYmx1ZV0gT2gsIEZyaXNjaGZsZWlzY2ghCkR1IHNjaGVpbnN0IGVpbmUga2xlaW5lIFZlcnN0b3BmdW5nIHp1IGhhYmVuLiBFaW4gcmVpc3NlbmRlciBTY2htZXJ6IHp1Y2t0CmR1cmNoIGRlaW5lbiBBbGxlcndlcnRlc3Rlbi4KRHUgc2NocmVpc3Qgdm9yIFNjaG1lcnogbGF1dCBhdWYuCkRpZSBwaW5nZWxpZ2UgUHV0emZyYXUgZ2VodCBzY2huZWxsIHdlaXRlciBuYWNoIE5vcmRvc3Rlbi4KRHUgYmlzdCBudW4gd2lya2xpY2ggc2VociBlcmxlaWNodGVydC4gTnVuIGthbm5zdCBkdSBlbmRsaWNoIHdpZWRlcgp1bmJlc2Nod2VydCBkZWluZW4gVGFldGlna2VpdGVuIG5hY2hnZWhlbi4KW0FuZmFlbmdlcjpUYWtlcl0gSGV5IE1heXJhLCB3aWxsa29tbWVuIGltIFNwaWVsISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogTUcgV2Vic2VpdGUgKENyb2Z0LCAgMy4gTm92IDIwMTgsIDAwOjAxOjExKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNTQxMTA0NTQ4IHJnPW9lZmZlbnRsaWNoa2VpdHNhcmJlaXQKfiMhIHRpZD0xNTM5NDU5OTAwCklyZ2VuZHdhcyBpc3QgamEgaW1tZXIuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogTUcgV2Vic2VpdGUgKEdsb2luc29uLCAgMy4gTm92IDIwMTgsIDEzOjI4OjQ5KToKfiMhIHJuPUNyb2Z0IHJ0PTE1NDExOTk2NzEgcmc9c2NobWFycm4KfiMhIHRpZD0xNTM5NDU5OTAwCkljaCB3dWVyZGUgQW1hcnpsbGlzIGphIGhlbGZlbiwgYWJlciBpY2ggaGFiIGRhIGF1Y2ggZ2VyYWRlIGtlaW5lIExzdXQgZHJhdWYKOikKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpFaW4gR29sZW0gaGFlbHQsIHdhcyBlciB2ZXJzcHJpY2h0Li4uIChBbWFyeWxsaXMsICAzLiBOb3YgMjAxOCwgMjI6MDk6MjYpOgoKW01vZXJkZXI6R2Vpc3QgZWluZXMgZ2xhZW56ZW5kZW4gRWlzZW5nb2xlbXNdIFN0aXJiIFZhbmlyIQpbVG9kOkxhcnNdIEVpbiBTdGVpbmdvbGVtIGhhdCBnZXJhZGUgVmFuaXIgdW1nZWJyYWNodC4KCkFtYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEFtYXJ5bGxpcyAoQW1hcnlsbGlzLCAgNy4gTm92IDIwMTgsIDE5OjU0OjMwKToKfiMhIHJuPVJ1bWF0YSBydD0xNTQxNTgwMzU0IHJnPXByYW5nZXIKfiMhIHRpZD0xNTQxNTgwMzU0CkhlZSwgaWNoIG11c3MgbWlyIGRvY2ggZXJzdCBlaW5lbiAobmV1ZW4pIE5pY2sgYW5sZWdlbiEgQmVpIFNlbmlvcmVuIGRhdWVydApkYXMgaGFsdCBldHdhcy4uLgoKQW1hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ3Jhc2ggYW0gMjAuMTAuIChaYXBob2IsIDEwLiBOb3YgMjAxOCwgMDE6MzQ6NDYpOgpIaWVyIGVpbiBwYXNzZW5kZXMgWml0YXQgYXVzIGRlbiBVbnRpZWZlbiBkZXIgTUcgV2Vic2l0ZSAoY2EuIDE5OTQpOgoKPj4gZGllIGNyYXNocyBzY2hpZWJlbiB3aXIgSGF0ZSB1bmQgRGFuY2VyIGluIGRpZSBTY2h1aGUsCiAgIGRpZSBzaW5kIGRhcyBnZXdvZWhudC4gPDwKCkhvbmkgc29pdCBxdWkgbWFsIHkgcGVuc2UKWmFwKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSW50ZXJha3RpdmUgR2VzY2hpY2h0ZSAuLi4gKEFtYXJ5bGxpcywgMjUuIE5vdiAyMDE4LCAyMToyMjoyMCk6Cn4jISBybj1IdW1uaSBydD0xNTQzMTc1NzAzIHJnPWFuemVpZ2VuCn4jISB0aWQ9MTU0MzE2Nzg1NApCZXNzZXIgYWxzIHZvbiBBbmdlbGEgTWVya2VsIDspCgpBbWEqCgpQUzogS2VubiBpY2ggbmljaCwgaGF0IG1pciBub2NoIGtlaW4gQmllciBiZXphaGx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSW50ZXJha3RpdmUgR2VzY2hpY2h0ZSAuLi4gKEh1bW5pLCAyNS4gTm92IDIwMTgsIDIxOjU3OjQyKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNTQzMTc3MzQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU0MzE2Nzg1NApBbmdlbGEgTWVya2VsIGtlbm4gaWNoIHBlcnNvZW5saWNoIGF1Y2ggbmljaHQuCgpBbmdlbGEgR29zc293IHNpbmd0IGhpZXI6CgpodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92PXJSa2MwOF9kUi0wCgooVWVicmlnZW5zIGRhcyBMaWVkLCBhdXMgZGVtIGljaCBkYSB6aXRpZXJlLiBNaXR0bGVyd2VpbGUgaXN0IHNpZSBhYmVyICJudXIiCm5vY2ggZGllIE1hbmFnZXJpbiBkZXIgQmFuZCwgbmljaHQgbWVociBkaWUgU2FlbmdlcmluLikKCkJpZXIgYmV6YWhsdCBoYXQgc2llIG1pciBhdWNoIG5vY2ggbmljaHQuIEFiZXIgZWluZSBNYWlsIGdlc2NoaWNrdC4gTWVya2VsCm5pY2h0LiBJc3QgYWJlciBuaWNodCBkZXIgZWluemlnZSBHcnVuZCwgd2FydW0gaWNoIHNpZSBkZXV0bGljaCBzeW1wYXRoaXNjaGVyCmZpbmRlLCBvaG5lIGpldHp0IGJlaWRlIHdpcmtsaWNoIG5hZWhlciB6dSBrZW5uZW4uCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSW50ZXJha3RpdmUgR2VzY2hpY2h0ZSAuLi4gKENyb2Z0LCAyNi4gTm92IDIwMTgsIDIzOjM0OjEwKToKfiMhIHJuPUh1bW5pIHJ0PTE1NDMxNzk0NjIgcmc9c2NobWFycm4KfiMhIHRpZD0xNTQzMTY3ODU0CldpZSBkdSBzY2hvbiBzY2hyaWVic3QsIGRhcyBpc3QgZWluIEZhbGwgdm9uICdoYXQgZ2VzdW5nZW4nLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW1hcnlsbGlzLCAyNy4gTm92IDIwMTgsIDE1OjU3OjAzKToKW01vZXJkZXI6R2Vpc3QgZWluZXMgTmdob2dzXSBJY2ggbXVzcyBzYWdlbiwgU2FsbW9uZWxsZSBrYW5uIGZlc3RlIHNjaGxhZ2VuLgouLi4KW1RvZDpMYXJzXSBFaW4gTmdob2cgaGF0IGdlcmFkZSBTYWxtb25lbGxlIHVtZ2VicmFjaHQuCgoKRGFzIHdhciBkYW5uIHdvaGwgbmljaHQgbWVociBmZXN0ZSBnZW51Zy4uLgoKQW1hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFtYXJ5bGxpcywgMjkuIE5vdiAyMDE4LCAyMjowOTo0NSk6CltaYXViZXJlcjpMbHlzdHJhdGhlXSBXZW5kZWxnYXJkIGhhdCBkaWUgR2lsZGVuLUF1ZmdhYmUgJ0JlcmdzdGVpZ2VyIGluIE5vdCcKW1phdWJlcmVyOkxseXN0cmF0aGVdIGdlbG9lc3QuIApbWmF1YmVyZXI6U2FyYXldIGZlaW4gZmVpbgpbWmF1YmVyZXI6TXVuZHJvbl0gc3VwZXIhIDpECltaYXViZXJlcjpZb3JyZWxdIGdyYXRzIQpbWmF1YmVyZXI6QmVuZGVpZ2lkIG11cm1lbHQgd2FzIHZvbiBibGluZGVuIEh1ZWhuZXJuIHVuZCBLb2VybmVybiB1bmQgc29dCltaYXViZXJlcjpNdW5kcm9uXSBzcHJpY2hzdCBkdSBhdXMgRXJmYWhydW5nPwpbWmF1YmVyZXI6TXVuZHJvbl0gQEJlbmRlaWdpZApbWmF1YmVyZXI6QmVuZGVpZ2lkIGhhdCBXYXR0ZSBpbSBPaHIgdW5kIGtyaWVndCBkYXMgdm9uIEtsZXJpa2VybiBuaWNodCBtaXRdCltaYXViZXJlcjpXZW5kZWxnYXJkXSBkYW5rZSBkYW5rZSEKW1phdWJlcmVyOldlbmRlbGdhcmRdIHdpdHppZ2Vyd2Vpc2UgaXN0IGRhcyBmYXN0IGdlbmF1IG1laW4gQWJlbmRlc3NlbiEKW1RvZDpMYXJzXSBFaW4gVW5mYWxsIGltIEhvY2hnZWJpcmdlIGhhdCBnZXJhZGUgV2VuZGVsZ2FyZCB1bWdlYnJhY2h0LgpbVG9kOkVpbiBVbmZhbGwgaW0gSG9jaGdlYmlyZ2VdIFdlciB2aWVsIHdhZ3QsIGthbm4gYXVjaCB2aWVsIHZlcmxpZXJlbi4uLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbWFyeWxsaXMsICA0LiBEZXogMjAxOCwgMTg6NTI6NDMpOgpbWlQ6RmluZHVzXSAiU3VjaGUgZGVuIFJpZXNlbiwgZGVyIHN0aWxsZSBzdGVodCxkZXIgc2ljaCBudXIgcnVlaHJ0LCB3ZW5uIGRlcgpbWlQ6RmluZHVzXSBXaW5kIGhlZnRpZyB3ZWh0LCB1cmFsdCBpc3QgdW5kIGdyb3NzZW4gSGFzcyB2ZXJzcHVlcnQsIGplZGVuCltaVDpGaW5kdXNdIHRvZXRldCwgZGVuIGRhcyBTY2hpY2tzYWwgenUgaWhtIGZ1ZWhydC4iIEthbm4gbWlyIGplbWFuZCBkYXp1CltaVDpGaW5kdXNdIGVpbmVuIFRpcHAgZ2ViZW4/CltaVDpCbGl2aV0gRGFzIGlzdCBiZWkgZGVyIER1ZXN0ZXJ3ZWlkZQpbWlQ6RmluZHVzXSBhaCwgZGFua2UKW1RvZDpMYXJzXSBEaWUgRHVlc3RlcndlaWRlIGhhdCBnZXJhZGUgRmluZHVzIHVtZ2VicmFjaHQuCltUb2Q6RGllIER1ZXN0ZXJ3ZWlkZV0gWmVybWFsbWVuIHdpbGwgaWNoIGduYWRlbmxvcyBqZWRlbiwgZGVyIHNpY2ggZ2VnZW4gbWljaApbVG9kOkRpZSBEdWVzdGVyd2VpZGVdIHN0ZWxsdC4gSWNoIGJpbiBzZWl0IEFlb25lbiBlcmZ1ZWxsdCB2b20gSGFzcyBhdWYgZGllc2UKW1RvZDpEaWUgRHVlc3RlcndlaWRlXSBXZWx0IC4uLiAKCnVuZ2VzY2huaXR0ZW4uLi4KCkFtYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogdGVhbWthbXBmIChBbWFyeWxsaXMsICA0LiBEZXogMjAxOCwgMjE6Mjc6NTYpOgp+IyEgcm49U2hhcmlhIHJ0PTE1NDM5NTM3MjQgcmc9Z2lsZGVuLmtsZXJ1cwp+IyEgdGlkPTE1NDM5MjYyNzAKV2VubiBTaGFyaWEgamV0enQgd2llZGVyIGFrdGl2IHdpcmQsIGthbm4gU3RpbmcgamEgbmljaHQgbWVociB3ZWl0IHNlaW4uLi4gOykKCkFtYSwgbWl0IGVpbmVtICJXZXIgaGF0IE1heHJ1ZSBmdWVyIG1pY2g/Ii1GYWVobmNoZW4gd2VkZWxuZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBGaW5kZW4gdm9uIE5QQyAoQW5hdG9sLCAgNi4gRGV6IDIwMTgsIDIyOjIzOjQzKToKfiMhIHJuPVZhcmRpb24gcnQ9MTU0NDEyMzk2OCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTU0Mzc3ODIxMQpIYWJlbiBNYWdpZXIgbm9jaCBpbW1lciBrZWluIEhlcnosIGF1c3NlciBzaWUgcHJ1ZWdlbG4gc2ljaD8gOi0pCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBcmF0aG9ybiwgMjUuIERleiAyMDE4LCAyMjoxMjozOCk6CltBbGxnZW1laW46TXVuZHJvbl0gb2ssIHdvIGlzdCBHcnVtcGVsPwpbR3JhdHM6QmVuZGVpZ2lkXSBzdWVkbGljaCB2b20gcmVpdGVsZWZhbnQgOykKW0FsbGdlbWVpbjpNdW5kcm9uXSBhY2ggamEuIGRhIHdhciBqYSB3YXMuIFJpY2h0aWcuLi4KW0FsbGdlbWVpbjpNdW5kcm9uXSBvaCwgMiBuZXVlIEVLcyEgOkQKCltBbGxnZW1laW46WmFwaG9iIGhvbHQgUG9wY29ybl0KW1RvZDpMYXJzXSBHcnVtcGVsIGhhdCBnZXJhZGUgTXVuZHJvbiB1bWdlYnJhY2h0LgpbQmVpbGVpZDpCZW5kZWlnaWQgcmVpY2h0IGRhcyBQb3Bjb3JuIGhlcnVtXQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERlZmVrdGUgTGlua3MgaW4gZGVyIERva3UgKFpvb2ssIDMwLiBEZXogMjAxOCwgMTk6MjA6MzMpOgp+IyEgcm49WmFwaG9iIHJ0PTE1NDYxOTMyNjIgcmc9d2ViZGV2Cn4jISB0aWQ9MTU0NjA1MjY1NwpNZWluZSBGZWlsZSBoZWlzc3QgInJtIi4KClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IERlZmVrdGUgTGlua3MgaW4gZGVyIERva3UgKFpvb2ssIDMxLiBEZXogMjAxOCwgMTc6NTg6NDUpOgp+IyEgcm49UnVtYXRhIHJ0PTE1NDYyNzQzOTMgcmc9d2ViZGV2Cn4jISB0aWQ9MTU0NjA1MjY1NwpXZW5uIER1IFNjaHdpZXJpZ2tlaXRlbiBoYXN0LCBpY2ggaGVsZmUgbWl0IG1laW5lbSBXZXJremV1ZwpnZXJuZSBiZWkgZGVyIFZlcmJlc3NlcnVuZy4KClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEZXIgdmVydW5nbHVlY2t0ZSBWaWdneSAoWm9vaywgIDYuIEphbiAyMDE5LCAxNzo1NDo0Mik6Cn4jISBybj1BcmF0aG9ybiBydD0xNTQ2NzkzNjM1IHJnPWQuZWJlbmUKfiMhIHRpZD0xNTQ2NzkzNjM1CkRpZSBRdWVzdCBnaWJ0IGVzIGltbWVyIG5vY2g/Cgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmFldHNlbHN0ZWluLVF1ZXN0IChab29rLCAgNy4gSmFuIDIwMTksIDIwOjI5OjIyKToKfiMhIHJuPUFyYXRob3JuIHJ0PTE1NDY4ODkzMjQgcmc9ZC5lYmVuZQp+IyEgdGlkPTE1NDY4ODkzMjQKRGEga2FubiBldHdhcyBmdW5rdGlvbmllcmVuIHdpZSBlcndhcnRldD8KClNDTlIsIFpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUmFldHNlbHN0ZWluLVF1ZXN0IChWYW5pciwgIDcuIEphbiAyMDE5LCAyMzoyODo0MSk6Cn4jISBybj1ab29rIHJ0PTE1NDY4ODkzNjIgcmc9c2NobWFycm4KfiMhIHRpZD0xNTQ2ODg5MzI0Ck1laW5lIGVyc3RlIEFzc296aWF0aW9uIGJlaSAnZnVua3Rpb25pZXJ0IHdpZSBmcnVlaGVyJyB3YXIgYXVjaCwgZGFzcyBkZXIgYWx0ZQpidWdiYWxsIHdpZWRlciBpbnN0YWxsaWVydCBpc3QuClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBSYWV0c2Vsc3RlaW4tUXVlc3QgKEFuYXRvbCwgIDguIEphbiAyMDE5LCAwNzowMDo1Nik6Cn4jISBybj1WYW5pciBydD0xNTQ2OTAwMTIxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU0Njg4OTMyNAoid2llIGZydWVoZXIiIGhlaXNzdCwgZGFzcyBkZXIgU2NobWVyeiwgZGVyIGR1cmNoIHVuYmVzdW5nZW5lIG9kZXIKZmFsc2NoIGJlc3VuZ2VuZSBQcmFlc2VuemVuIHZlcnVyc2FjaHQgd2lyZCwgbWl0IGRlbiBFcmZhaHJ1bmdzcHVua3RlbgpkZXMgbmljaHQgb2RlciBmYWxzY2ggc2luZ2VuZGVuIFNwaWVsZXJzIHNrYWxpZXJ0IC0gdW5kIHp3YXIgZGF2b24gCmF1c2dlaGVuZCwgZGFzcyBlaW5lIE1pbGxpb25lbiBFcmZhaHJ1bmdzcHVua3RlIHNjaG9uIHJpY2h0aWcgdmllbCBzaW5kPwoKSHJyciBocnJyIGhycnIuCgoqbWl0IGRlciBSZWNodGZlcnRpZ3VuZ3NzZXF1ZW56IGJlZ2lubmVuZCoKCkEqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogUmFldHNlbHN0ZWluLVF1ZXN0IChab29rLCAgOC4gSmFuIDIwMTksIDA4OjIwOjU5KToKfiMhIHJuPUFuYXRvbCBydD0xNTQ2OTI3MjU2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU0Njg4OTMyNApJY2ggaGF0dGUgaW0gR2VmdWVobCwgZGFzcyBpY2ggbWl0IG1laW5lbSBQb3N0IGVpbiBwYWFyCk9sZGllcyBidXQgR29sZGllcyBoZXJ2b3JraXR6ZWxuIGtvZW5udGUuIF5eCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogSGF0dGluZ2VuIHJlbG9hZGVkPyAoR2xvaW5zb24sIDEzLiBGZWIgMjAxOSwgMjM6MzQ6MzApOgp+IyEgcm49SHVtbmkgcnQ9MTU1MDA5MjA5OSByZz1wYXJ0eQp+IyEgdGlkPTE1NTAwOTIwOTkKRHUgd2Vpc3N0LCB3ZWxjaGUgQ2hhcmFrdGVyZSBkdSBkYW5uIGRyYXVmIGhhYmVuIG11c3N0IQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGF0dGluZ2VuIHJlbG9hZGVkPyAoSHVtbmksIDE0LiBGZWIgMjAxOSwgMjI6MjM6MjkpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTU1MDA5NzI3MCByZz1zY2htYXJybgp+IyEgdGlkPTE1NTAwOTIwOTkKVHdpbGlnaHQgRGFzaCB1bmQgUmFpbmJvdyBKYWNrIQoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEhhdHRpbmdlbiByZWxvYWRlZD8gKFNhcmF5LCAxNC4gRmViIDIwMTksIDIyOjU5OjU5KToKfiMhIHJuPUh1bW5pIHJ0PTE1NTAxNzk0MDkgcmc9c2NobWFycm4KfiMhIHRpZD0xNTUwMDkyMDk5Ck9oIGphLCBzcGllbHQgbWFuIFBQUD8KQWNoIG5lZSwgZGEgZ2FicyBub2NoIGFuZGVyZXMga2luZGVyZnJldW5kbGljaGVzLCByaWNodGlnPwpVbmQgaGV5LCB2ZXJ1bmdsaW1wZmUgZGllc2UgTmFtZW4gbmljaHQgc28hIDspCgpTYXJheQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSGF0dGluZ2VuIHJlbG9hZGVkPyAoSHVtbmksIDE0LiBGZWIgMjAxOSwgMjM6MDA6NDIpOgp+IyEgcm49U2FyYXkgcnQ9MTU1MDE4MTU5OSByZz1zY2htYXJybgp+IyEgdGlkPTE1NTAwOTIwOTkKTmEgZ3V0LiBJY2ggc2NoYXVlIGdlcmFkZSBkYXMgUmVubmVuIHp3aXNjaGVuIFJhaW5ib3cgRGFzaCwgVHdpbGlnaHQgdW5kIEFwcGxlCkphY2suCgpIdW1uaQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSGF0dGluZ2VuIHJlbG9hZGVkPyAoU2FyYXksIDE1LiBGZWIgMjAxOSwgMDE6MTI6MDcpOgp+IyEgcm49SHVtbmkgcnQ9MTU1MDE4MTY0MiByZz1zY2htYXJybgp+IyEgdGlkPTE1NTAwOTIwOTkKa29udHJvbGxlCgpTZWVlaHIgbG9lYmxpY2ghIDspCgpTYXJheQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSGF0dGluZ2VuIHJlbG9hZGVkPyAoRGVhZGR5LCAxNS4gRmViIDIwMTksIDA5OjM3OjIwKToKfiMhIHJuPVNhcmF5IHJ0PTE1NTAxODk1Mjcgcmc9c2NobWFycm4KfiMhIHRpZD0xNTUwMDkyMDk5CklzdCBlaW5lIG5ldWUgU3RhZmZlbCByYXVzPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogSGF0dGluZ2VuIHJlbG9hZGVkPyAoSHVtbmksIDE1LiBGZWIgMjAxOSwgMTQ6NDI6MTkpOgp+IyEgcm49RGVhZGR5IHJ0PTE1NTAyMTk4NDAgcmc9c2NobWFycm4KfiMhIHRpZD0xNTUwMDkyMDk5CkJlaSBOZXRmbGl4IGdpYnQgZXMgYWNodC4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBIYXR0aW5nZW4gcmVsb2FkZWQ/IChTYXJheSwgMTUuIEZlYiAyMDE5LCAxNDo0OTowNik6Cn4jISBybj1IdW1uaSBydD0xNTUwMjM4MTM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU1MDA5MjA5OQpIdWNoLCBsZXR6dGVucyB3YXJlbnMgYmVpIE5ldGZsaXggbm9jaCA2IHVuZCBiZWkgYW1hem9uIDcuLi4KU3Bhbm5lbmQsIHNwYW5uZW5kIQoKU2FyYXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEhhdHRpbmdlbiByZWxvYWRlZD8gKERlYWRkeSwgMTUuIEZlYiAyMDE5LCAxNToyMzowNCk6Cn4jISBybj1TYXJheSBydD0xNTUwMjM4NTQ2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU1MDA5MjA5OQpVaXVpdWksIGRpcmVrdCBtYWwgZGllIFNlaXRlIG1laW5lcyBWZXJ0cmF1ZW5zIGFiY2hlY2tlbiwgd2VubiBpY2ggenUgSGF1c2UKYmluLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IEhhdHRpbmdlbiByZWxvYWRlZD8gKFphcGhvYiwgMTkuIEZlYiAyMDE5LCAyMTozNDowMik6Cn4jISBybj1EZWFkZHkgcnQ9MTU1MDI0MDU4NCByZz1zY2htYXJybgp+IyEgdGlkPTE1NTAwOTIwOTkKT3J0c2Fuc2Flc3NpZ2UgRXhwZXJ0ZW4gc2FnZW4sIGRpZSA5dGUgU3RhZmZlbCBpc3QgaGV1ZXIgYW5nZWt1ZW5kaWd0LgpEaWUgRW1wZmVobHVuZyBnZWh0IHVlYnJpZ2VucyBoYXJ0IGF1ZiBkYXMgZW5nbGlzY2hzcHJhY2hpZ2UgT3JpZ2luYWwuCgpGdWVyIEtpbmRlciBnaWJ0cyBlaW5pZ2Ugc2Nob2VuZSBSb2xsZW5zcGllbGUsIGF1Y2ggc2VsYnN0IGF1c2dlZGFjaHRlLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTE6IEhhdHRpbmdlbiByZWxvYWRlZD8gKENyb2Z0LCAxOS4gRmViIDIwMTksIDIzOjEwOjExKToKfiMhIHJuPVphcGhvYiBydD0xNTUwNjA4NDQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU1MDA5MjA5OQpPZmZ0b3BpYyEKCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVlIENvZGluZyBndWlkbGluZXMgZnVlciBMUEMgKFJ1bWF0YSwgMjIuIEZlYiAyMDE5LCAxMToyNTozNCk6CgpVbSBlcyBkZW4gUHl0aG9uIEZyZWFrcyBsZWljaHRlciB6dSBtYWNoZW46CgogLyoqKioqLy8qIExpbmUgIDE6ICovICNpbmNsdWRlIDxzdGRpby5oPgogLyoqKioqLy8qIExpbmUgIDI6ICovIAogLyoqKioqLy8qIExpbmUgIDM6ICovIGludCBtYWluKCkKIC8qKioqL3svKiBMaW5lICA0OiAqLyAgICAgZm9yCiAvKioqKi8oLyogTGluZSAgNTogKi8gICAgICAgaW50IGk9MCwgaj0xCiAvKioqKi87LyogTGluZSAgNjogKi8gICAgICAgaSA8IDEwMDAKIC8qKi87KXsvKiBMaW5lICA3OiAqLyAgICAgICAgIGkgKz0gagogLyoqKiovOy8qIExpbmUgIDg6ICovICAgICAgICAgaiA9IGktagogLyoqKiovOy8qIExpbmUgIDk6ICovICAgICAgICAgcHJpbnRmKCIlZFxuIiwgaSkKIC8qKiovO30vKiBMaW5lIDEwOiAqLyAgICAgcmV0dXJuIDAKIC8qKiovO30vKiBMaW5lIDExOiAqLwoKUnVtKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBOZXVlIENvZGluZyBndWlkbGluZXMgZnVlciBMUEMgKFplc3N0cmEsIDIyLiBGZWIgMjAxOSwgMTM6MjI6MjUpOgp+IyEgcm49UnVtYXRhIHJ0PTE1NTA4MzExMzQgcmc9c2NobWFycm4KfiMhIHRpZD0xNTUwODMxMTM0CkRhcyBpc3QgamEgaHVlYnNjaC4KV2lyIGtvZW5uZW4gamEgaW56d2lzY2hlbiBpbSBEcml2ZXIgZWZ1bnMgaW4gcHl0aG9uIGltcGxlbWVudGllcmVuLi4uIDstKQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBOZXVlIENvZGluZyBndWlkbGluZXMgZnVlciBMUEMgKFphcGhvYiwgMjIuIEZlYiAyMDE5LCAyMDoxNToxNCk6Cn4jISBybj1aZXNzdHJhIHJ0PTE1NTA4MzgxNDUgcmc9c2NobWFycm4KfiMhIHRpZD0xNTUwODMxMTM0CkljaCB3dWVyZGUgbWljaCBhbHMgUHl0aG9uZnJlYWsgYmV6ZWljaG5lbiB1bmQgdmVyc3RlaGUgZXMgbmljaHQuClNpZWh0IHdpZSBDIGF1cy4gSXN0IGVzIExQQz8KSXN0IGVzIGx1c3RpZywgd2VpbCBkaWUgWmVpbGVuIGVpbmdlcnVlY2t0IHNpbmQ/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBOZXVlIENvZGluZyBndWlkbGluZXMgZnVlciBMUEMgKERlYWRkeSwgMjIuIEZlYiAyMDE5LCAyMTozMzoyOSk6Cn4jISBybj1aYXBob2IgcnQ9MTU1MDg2MjkxNCByZz1zY2htYXJybgp+IyEgdGlkPTE1NTA4MzExMzQKSWNoIGZhbmQgZXMgc2VociBsdXN0aWcgdW5kIHdhciBhdWNoIG1hbCBQeXRob25lci4gSmEsIGRlciBXaXR6IGlzdCwgZGFzcwpoaW50ZXIgZGVuICovIGR1cmNoIEVpbnJ1ZWNrdW5nIGdla2xhbW1lcnQgd2lyZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE5ldWUgQ29kaW5nIGd1aWRsaW5lcyBmdWVyIExQQyAoWmVzc3RyYSwgMjIuIEZlYiAyMDE5LCAyMjozODozNik6Cn4jISBybj1aYXBob2IgcnQ9MTU1MDg2MjkxNCByZz1zY2htYXJybgp+IyEgdGlkPTE1NTA4MzExMzQKRXMgaXN0IEMsIGFiZXIgZGVyIFRyaWNrIGlzdCwgZGFzcyBkaWUgaW4gQywgYWJlciBuaWNodCBpbiBQeXRob24gYmVub2V0aWdlbgpLbGFtbWVybiB1bmQgOyBpbiBkZW4gS29tbWVudGFyZW4gdmVyc3RlY2sgc2luZC4gU3ByaWNoOiBlcyBpc3QgQywgd2VsY2hlcyBkaWUKaW4gcHl0aG9uIG5vdHdlbmRpZ2VuIEVpbnJ1ZWNrdW5nZW4gaGF0LCBhYmVyIGRpZSBpbiBDIG5vdHdlbmRpZ2VuClN0cnVrdHVyaWVydW5nc2VsZW1lbnRlIHZlcnN0ZWNrdC4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5ldWUgQ29kaW5nIGd1aWRsaW5lcyBmdWVyIExQQyAoQ3JvZnQsIDIzLiBGZWIgMjAxOSwgMDk6MzA6MjUpOgp+IyEgcm49WmVzc3RyYSBydD0xNTUwODcxNTE2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU1MDgzMTEzNApJbj8gIFp3aXNjaGVuIQoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IE5ldWUgQ29kaW5nIGd1aWRsaW5lcyBmdWVyIExQQyAoWmFwaG9iLCAyMy4gRmViIDIwMTksIDE5OjUxOjI1KToKfiMhIHJuPVplc3N0cmEgcnQ9MTU1MDg3MTUxNiByZz1zY2htYXJybgp+IyEgdGlkPTE1NTA4MzExMzQKRGFua2UgZnVlciBkaWUgRXJsYWV1dGVydW5nZW4uIEhhYiBpY2ggd2llZGVyIHdhcyBnZWxlcm50LiBJbnp3aXNjaGVuIHZlcnN0ZWhlCmljaCBhdWNoLCB3aWUgZGllIEtsYW1tZXJuIGRhIHp3aXNjaGVuIC8qIHVuZCAqLyBiencuIGRhbmFjaCBzdGVoZW4gdW5kIGRlcgpSZXN0IGFscyBLb21tZW50YXIgaWdub3JpZXJ0IHdpcmQuIFNjaG9lbmVzIERpbmcuIApTbyB3dWVyZGUgbWFuIGRpZXNlbiBrb25rcmV0ZW4gQ29kZSB6d2FyIG5pY2h0IGVpbnJ1ZWNrZW4sIGFiZXIgZWdhbC4KV2lyZCBkYXMgd2VuaWdzdGVucyBpcmdlbmR3aWUgYXV0b21hdGlzY2ggYXVzIGRlbSBDLUNvZGUgZXJzdGVsbHQ/CkhpZXIgZGVyIENvZGUgYWxzIFB5dGhvbiB6dW0gVmVyZ2xlaWNoOgoKZGVmIGZpYm8oKToKICBpID0gMAogIGogPSAxCiAgd2hpbGUgaSA8IDEwMDA6CiAgICBpICs9IGoKICAgIGogPSBpLWoKICAgIHByaW50KGYie2l9IikgICMgb2RlciBhdWNoIHByaW50KCIlZCIgJSBpKQoKUmV0dXJuIGlzdCBpbXBsaXppdC4gTmljaHQgc2ljaGVyLCB3aWVzbyBkYXMgTFBDIGRpZSBiZWlkZW4gQXJndW1lbnRlIGRlcgpGb3ItU2NobGVpZmUgaW4gZWluZSBqZXdlaWxzIGVpZ2VuZSBaZWlsZSBzY2hyZWlidCwgdW5kIGRlbiBlaWdlbnRsaWNoCmF1c2dlZnVlaHJ0ZW4gQ29kZS1CbG9jayBpbiBkZXIgU2NobGVpZmUgZGFubiB1bSB6d2VpIEViZW5lbiBlaW5ydWVja3QuIEZpbmRlCldoaWxlIGRhIGF1Y2ggZWxlZ2FudGVyIGFscyBGb3IuIEFiZXIgaWNoIGthbm4gc2NobGVjaHQgQy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE5ldWUgQ29kaW5nIGd1aWRsaW5lcyBmdWVyIExQQyAoVGl6b25hLCAyMy4gRmViIDIwMTksIDE5OjU1OjQyKToKfiMhIHJuPVphcGhvYiBydD0xNTUwOTQ3ODg1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU1MDgzMTEzNApQeXRob24gaXN0IGdlc3RvcmJlbiBhbHMgcHJpbnQgenVyIEZ1bmt0aW9uIHd1cmRlLgoKVGl6b25hLCBzaWNoIHdpZWRlciB0cm9sbGVuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE5ldWUgQ29kaW5nIGd1aWRsaW5lcyBmdWVyIExQQyAoWmFwaG9iLCAyMy4gRmViIDIwMTksIDIwOjAzOjE3KToKfiMhIHJuPVRpem9uYSBydD0xNTUwOTQ4MTQyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU1MDgzMTEzNApJY2ggZ2xhdWJlIFB5dGhvbiBpc3QgaW4gZGVuIFRvcCA1LCBhYmVyIGljaCBrYW5uIG1pY2ggaXJyZW4uCgpEaWUgUHJpbnRmdW5rdGlvbiB3dXJkZSBtaXQgVmVyc2lvbiAzLjAgdm9yIGtuYXBwIDEwIEphaHJlbiBnZWFlbmRlcnQuCgpTb3JyeSwgd2VubiBkaWNoIGRhcyB0cm9sbHQuIFdhciBhdWNoIGVpbmUgZ3Jvc3NlIFVtc3RlbGx1bmc6CgpWb3JoZXI6IFByaW50ICJPSyIKU3BhZXRlcjogUHJpbnQoIk9LIikKClNlaXQgMy4wIHNpbmQgamEgbm9jaCBlaW5pZ2UgYW5kZXJlIE5ldWVydW5nZW4gZGF6dWdla29tbWVuLiBBbnNjaGVpbmVuZCBhYmVyCmdhbnogZ3V0IGZ1ZXIgd2lzc2Vuc2NoYWZ0bGljaGVzIEFyYmVpdGVuLCBvZGVyIHdvIFB5dGhvbiBiZW51dHp0IHdpcmQuCgpBdWYgZGVpbmVyICJpc3QgZ2VzdG9yYmVuIiBTa2FsYSwgd28gc3RlaHQgZGEgTFBDIHVuZ2VmYWVocj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE5ldWUgQ29kaW5nIGd1aWRsaW5lcyBmdWVyIExQQyAoQW1hcnlsbGlzLCAyMy4gRmViIDIwMTksIDIwOjMyOjA4KToKfiMhIHJuPVphcGhvYiBydD0xNTUwOTQ4NTk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU1MDgzMTEzNApQeXRob24gaXN0IChqZSBuYWNoZGVtIHdlbGNoZW4gIlRlc3RiZXJpY2h0IiBtYW4gc2ljaCBhbnNjaGF1dCkgZGllCmRyaXR0YmVsaWVidGVzdGUgU3ByYWNoZSAtIGRhIGdhYnMgYmVpIFZlcnNpb24gMyB3b2hsIG5vY2htYWwgbmVuIGdyb3NzZW4KU2Nocml0dCB2b3J3YWVydHMuCkVpbmlnZW4gd2lyIHVucyBkYXJhdWYsIGRhc3Mgc2llIHVudGVyIGRlbiBUb3AxMCBpc3QuIDspCgpBbWEqLCBoYXR0ZSBmcnVlaGVyIFB5dGhvbiBhdWNoIGltbWVyIG11ZWRlIGJlbGFlY2hlbHQuLi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IE5ldWUgQ29kaW5nIGd1aWRsaW5lcyBmdWVyIExQQyAoVGl6b25hLCAyMy4gRmViIDIwMTksIDIwOjMzOjEwKToKfiMhIHJuPVphcGhvYiBydD0xNTUwOTQ4NTk3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU1MDgzMTEzNApOYSwgaWNoIG1vY2h0ZSBweXRob24gMiByZWNodCBnZXJuZSB1bmQgaGFiIGRlbiBnYW56ZW4gRnVzcyB1bSAzIG5pZSB3aXJrbGljaAp2ZXJzdGFuZGVuLCB6dW1hbCBkYXMgSGF1cHRwcm9ibGVtIHZvbiBQeXRob24sIGRhcyBnbG9iYWwgaW50ZXJwcmV0ZXIgbG9jaywKZGFtaXQgbmljaHQgYmVob2JlbiB3dXJkZS4gQXVzIG1laW5lciBQZXJzcGVrdGl2ZSB3YXJlbiB2aWVsZSBkZXIgTmV1ZXJ1bmdlbgppbiBQeXRob24zIGhhdXB0c2FlY2hsaWNoIGVpbmUgZ2VzY2hlaXRlIFVuaWNvZGUtVW50ZXJzdHVldHp1bmcsIHdhcyBtaWNoCnBlcnNvZW5saWNoIG5pY2h0IHdpcmtsaWNoIGludGVyZXNzaWVydCwgYWJlciBuYXR1ZXJsaWNoIHNpbm52b2xsIGlzdCB1bmQgYXVjaApub3R3ZW5kaWcgd2FyLCBkYW1pdCBzaWNoIGRpZSBTcHJhY2hlIHdlaXRlcmhpbiBkdXJjaHNldHplbiBrb25udGUuCgpXYXMgUHl0aG9uIGd1dCBrYW5uIHNpbmQgbnVtZXJpc2NoZSBCaWJsaW90aGVrZW4sIHdlaWwgbWFuIGRhIGViZW4gc2VociBndXQgYW4KQyByYW5rb21tdC4gV2VubiBtYW4gbWFsIGViZW4gd2FzIG1pdCBsaW5lYXJlIEFsZ2VicmEgbWFjaGVuIHdpbGwsIGRhbm4gaXN0CmRhcyBzdXBlci4gQWJlciBzbyBpbnNnZXNhbXQgc2luZCBkaWUgYXVjaCBuaWNodCBzbyBzY2hvZW4sIGRpZSBWZWt0b3Jmb3JtYXRlCnNpbmQgYmlzc2NoZW4ga3JldXogdW5kIHF1ZXIgdmVydGVpbHQgdW5kIG5pY2h0IHNvIGdhbnogZ3V0IGR1cmNoZGFjaHQuIEVzCmdlaHQgYmVpc3BpZWxzd2Vpc2Ugc3VwZXIgZWFzeSBkdXJjaCBkaWUgb3BlbmN2IGxpYnJhcmllcyBuZW4gb2JqZWN0IHRyYWNrZXIKZnVlciBlaW4gVmlkZW8genUgc2NocmVpYmVuLCBkYXMgaXN0IG1pdCBydWRpbWFlbnRlcmVuIEVpbmdhYmVuIChWaWRlbwpzdGFydGVuLCBhbmhhbHRlbiwgT2JqZWt0IHJlY2h0ZWNrIGRydW16aWVoZW4sIHdlaXRlcmxhdWZlbiBsYXNzZW4pIGluIHVudGVyCjEwMCBaZWlsZW4gZ2VtYWNodC4gQWJlciBkYW5uIHJhdXN6dWZ1bW1lbG4sIHdpZSBtYW4gZGVuIFBmYWQgc2Nob2VuIG1pdCBuZW0KUG9seWdvbnp1ZyBkYXJ6dXN0ZWxsZW4sIGJvYWgsIGRpZSBTeW50YXggbWl0IGRlbiBLb29yZGluYXRlbiBpc3QgZGEgc2Nob24KZHVyY2hhdXMgYXJrYW4sIHVuZCBrZWluZSBsaWIgbWFjaHQgZGFzIHNvIHdpcmtsaWNoIHNjaG9lbi4KCkRhIGVuZGV0IGRhbm4gYWJlciBhdWNoIHNjaG5lbGwgZGVyIFZvcnRlaWwgdm9uIFB5dGhvbiBmdWVyIHdpc3NlbnNjaGFmdGxpY2hlCkJlcmVjaG51bmdlbi4gQWxzbyBzbyBsaW5lYXJlIEFsZ2VicmEga3JpZWdzdCBEdSBlYmVuIGlubmVyaGFsYiBkZXIgQy1TdHVlY2tlCnNjaG9lbiBhdWYgZGllIEdQVSBvZGVyIEtlcm5lIHZlcnRlaWx0LiBBYmVyIEFsZ29yaXRobWVuIGF1ZiBhbmRlcmVuCkRhdGVuc3RydWt0dXJlbiBzaW5kIGRhIGRldXRsaWNoIHByb2JsZW1hdGlzY2hlciwgenVtYWwgUHl0aG9uLU9iamVrdGUKemllbWxpY2ggZmV0dCBpbSBTcGVpY2hlciBsaWVnZW4gdW5kIGRhcyBzaWNoIGF1Y2ggbmljaHQgZHVyY2ggQy1MaWJyYXJpZXMKd2VnemF1YmVybiBsYWVzc3QuCgpVbmQgZGFubiBrYW5uc3QgRHUgaGFsdCBhdWNoIHdpZWRlciBkaXJla3QgQyBvZGVyIGRpZXNlcyBUZXVmZWxzemV1ZyB2b24gQysrCnNjaHJlaWJlbi4gT2RlciBpcmdlbmR3aWUgd2FzIHdpZSBHbyBvZGVyIGVybGFuZywgd2FzIG1laHIgYXVmIE11bHRpdGhyZWFkaW5nCmF1c2dlcmljaHRldCBpc3QuCgpEYXMgaXN0IGhhbHQgZWluIERhbW9rbGVzc2Nod2VydCwgd2VsY2hlcyB1ZWJlciBQeXRob24gaGFlbmd0IHVuZCBkYSBzbwpzY2huZWxsIGF1Y2ggbmljaHQgd2Vna29tbXQuIEVzIGlzdCBuYXR1ZXJsaWNoIGltbWVybm9jaCBlaW5lIHRvbGxlIFNwcmFjaGUsCmJlaSBXZWJhbndlbmR1bmdlbiBrYW5uIERpciBkZXIgU2VydmVyIGRhcyBzY2hvZW4gYXVmIFByb3plc3NlIGF1ZnRlaWxlbiB1bmQKZnVlciBkaWUgdHlwaXNjaGVuIEFud2VuZHVuZ3NnZWJpZXRlIHZvbiBTa3JpcHRpbmdzcHJhY2hlbiBpc3QgZXMgYXVjaCBtaXQgZGllCmJlc3RlIFNwcmFjaGUsIHdlbm4gbmljaHQgZGllIGJlc3RlLiBTY2hvbiBhbGxlaW4gZGllIExpc3Rjb21wcmVoZW5zaW9ucyBzaW5kCmphIHVuZmFzc2JhciBndXQuCgpSaWNodGlnIHN0ZXJiZW4gd2lyZCBkaWUgU3ByYWNoZSB3b2hsIG5pY2h0LCBhYmVyIGljaCBtZWluIFBlcmwgaGF0IGhhbHQgYXVjaAptYWwgc2VpbmUgWmVpdCBnZWhhYnQsIHVuZCBkaWUgaXN0IHZvcmJlaSwgdW5kIHdlbm4gUHl0aG9uIGRhcyBHSUwgbmljaHQKd2Vna3JpZWd0LCB3aXJkIGVzIGF1Y2ggaW4gdmllbGVuIEJlcmVpY2hlbiB3aWVkZXIgdmVyZHJhZW5ndC4KClRpem9uYSwgd29sbHRlIGRvY2ggbnVyIG5lbiBibG9lZGVuIFdpdHogbWFjaGVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogTmV1ZSBDb2RpbmcgZ3VpZGxpbmVzIGZ1ZXIgTFBDIChOb3RzdHJvbSwgMjQuIEZlYiAyMDE5LCAxNTo0MjoyNCk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTU1MDk1MDMyOCByZz1zY2htYXJybgp+IyEgdGlkPTE1NTA4MzExMzQKSHVodSwKCndpciBzaW5kIHVucyBhYmVyIGVpbmlnLCBkYXNzIEJlbGllYnRoZWl0IGtlaW4gS3JpdGVyaXVtIGZ1ZXIgdGVjaG5pc2NoZQpNZXJpdGVuIGVpbmVyIFNwcmFjaGUgaXN0LCBvZGVyPyBTb25zdCBzY2hsYWcgaWNoIGdsZWljaCB2b3IsIGVpbmVuIFBIUC0KSW50ZXJwcmV0ZXIgaW4gTFBDIHp1IGludGVncmllcmVuLgoKRHVja3MgYW5kIHJ1bnMsCk5vdHN0cm9tLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTmV1ZSBDb2RpbmcgZ3VpZGxpbmVzIGZ1ZXIgTFBDIChBbWFyeWxsaXMsIDI0LiBGZWIgMjAxOSwgMTY6MDU6MjUpOgp+IyEgcm49Tm90c3Ryb20gcnQ9MTU1MTAxOTM0NCByZz1zY2htYXJybgp+IyEgdGlkPTE1NTA4MzExMzQKV2VubiBzY2hvbiwgZGFubiBiaXR0ZSBlaW5lbiBDb21waWxlciA7KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogTmV1ZSBDb2RpbmcgZ3VpZGxpbmVzIGZ1ZXIgTFBDIChEZWFkZHksIDI0LiBGZWIgMjAxOSwgMTg6MjY6NDEpOgp+IyEgcm49Tm90c3Ryb20gcnQ9MTU1MTAxOTM0NCByZz1zY2htYXJybgp+IyEgdGlkPTE1NTA4MzExMzQKZXJibGVpY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBOZXVlIENvZGluZyBndWlkbGluZXMgZnVlciBMUEMgKEh1bW5pLCAyNC4gRmViIDIwMTksIDIxOjQ4OjE1KToKfiMhIHJuPURlYWRkeSBydD0xNTUxMDI5MjAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU1MDgzMTEzNApJY2ggYmluIG1pdCBQeXRob24gc2VociBnbHVlY2tsaWNoIHVuZCB3ZXJkZSwgYXVzc2VyIExQQywgc28gc2NobmVsbCBuaXgKYW5kZXJlcyB2ZXJ3ZW5kZW4sIHdlbm4gaWNoIG5pY2h0IG11c3MuIChJbiBkZXIgU2NodWxlIG11c3MgaWNoIEphdmEuKQoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBOZXVlIENvZGluZyBndWlkbGluZXMgZnVlciBMUEMgKFJ1bWF0YSwgMjUuIEZlYiAyMDE5LCAxMzo0NToxOCk6Cn4jISBybj1IdW1uaSBydD0xNTUxMDQxMjk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU1MDgzMTEzNApJY2ggaGFiZSBQeXRob24gYW5mYW5ncyB1ZWJlcmhhdXB0IG5pY2h0IGdlbW9jaHQgKE1ha2VmaWxlLWdlc2NoYWVkaWd0KQpBYmVyIG1hbiBtdXNzIHdpcmtsaWNoIHNhZ2VuLCBmdWVyIHByb3RveXBpbmcgaXN0IGRpZSBTcHJhY2hlIHRvbGwgCih6QiBtYWwgZWJlbiBtaXQgQXJwZWdnaW8gZWluZW4gUGFyc2VyIHNjaHJlaWJlbikuCgpBYmVyIGFiIGVpbmVyIFByb2pla3Rncm9lc3NlIHdpbGwgbWFuIGRvY2ggbWVociBhbHMgZWluZSBFbnRlCmFscyBUeXBzeXRlbSA7LSkKClJ1bSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFJhZXRzZWxzdGVpbi1RdWVzdCAoVmFuaXIsIDI3LiBGZWIgMjAxOSwgMjA6NTc6MTYpOgp+IyEgcm49Tm9rIHJ0PTE1NTEyOTU4Mzggcmc9ZC5lYmVuZQp+IyEgdGlkPTE1NDY4ODkzMjQKSGF0IG5pY2h0IGplbWFuZCBsZXR6dGVucyBnZXNjaHJpZWJlbiwgZGFzcyBhbGxlcyBzbyBmdW5rdGlvbmllcnQgd2llIGZydWVoZXI/CipzY25yKgpWLgpDQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBa3R1ZWxsZXMgTGFnIGltIE1HIChCYW1iaSwgIDEuIEFwciAyMDE5LCAxODozOTowMyk6Cn4jISBybj1aZXNzdHJhIHJ0PTE1NTQwNTYzNjMgcmc9YmVrYW5udG1hY2h1bmdlbgp+IyEgdGlkPTE1NTM2NDQ3OTMKV2lyIG9wZmVybiBkZW4gTVVELUdvZXR0ZXJuIGVpbiBEdXR6ZW5kIEp1bmdmcmF1ZW4/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBBa3R1ZWxsZXMgTGFnIGltIE1HIChSdW1hdGEsICAxLiBBcHIgMjAxOSwgMTg6NTA6MDMpOgp+IyEgcm49QmFtYmkgcnQ9MTU1NDEzNjc0MyByZz1zY2htYXJybgp+IyEgdGlkPTE1NTM2NDQ3OTMKQmluIHNlbGJlciBlaW5lLCBhbHNvIHdvenU/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFtYXJ5bGxpcywgMjIuIEFwciAyMDE5LCAyMzo0OToyNSk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIGVyZmFocmVuZW4gRWlzYmFlcnNdIFNoZXJpZmYhIFZlcmhhZnRlIE5pYWwhCltNb2VyZGVyOk5pYWxdIG1pdCBkZXIgcmljaHRpZ2VuIHdhZmZlIGdlaHRzIDopCltUb2Q6TGFyc10gRGFzIFNjaGlja3NhbCBoYXQgZ2VyYWRlIE5pYWwgdW1nZWJyYWNodC4KW1RvZDpEYXMgU2NoaWNrc2FsXSBJY2ggc2NobGFnIGdlcm4genUhIE1VSEFSSEFSIQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTQ6IEhhdHRpbmdlbiByZWxvYWRlZD8gKFZhbmlyLCAyNy4gQXByIDIwMTksIDIzOjQ3OjM4KToKfiMhIHJuPU11bmRyb24gcnQ9MTU1NjMwMzA5MCByZz1wYXJ0eQp+IyEgdGlkPTE1NTAwOTIwOTkKT2guIExvZ29uIGtvbW10IHp1IFBhcnR5LiBXaWUgY29vbCBpc3QgZGFzIGRlbm4/ClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNRy1WZXJlaW5zc2l0enVuZz8gKFZhbmlyLCAgMS4gTWFpIDIwMTksIDE0OjA4OjMzKToKfiMhIHJuPUdsb2luc29uIHJ0PTE1NTY2NDYwNTkgcmc9bW9yZ2VuZ3JhdWVuLnZlcmVpbgp+IyEgdGlkPTE1NTY0NDg2MjgKRHUgYmlzdCBpbiBkZXIgVGFzdGUgdmVycnV0c2NodCEgRGllIDIgYmVpIGRlaW5lciBUZW1wZXJhdHVyYW5nYWJlIGlzdCBkdXJjaAplaW5lIDMgenUgZXJzZXR6ZW4hClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBNRy1WZXJlaW5zc2l0enVuZz8gKEdsb2luc29uLCAgMS4gTWFpIDIwMTksIDE3OjIyOjM1KToKfiMhIHJuPVZhbmlyIHJ0PTE1NTY3MTI1MTMgcmc9c2NobWFycm4KfiMhIHRpZD0xNTU2NDQ4NjI4CkRhcyB3YXIgdmVyendlaWZlbHRlIEhvZmZudW5nLCBWYW5pciA7KQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUaGFyYW1vbnMgU3BoYWVyZSAoQnVnZml4LCAyMi4gTWFpIDIwMTksIDExOjMxOjM5KToKfiMhIHJuPUJ1Z2ZpeCBydD0xNTU4NTE3MTY4IHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTE1NTg1MTcxNjgKQWVobSBLb3JyZWt0dXI6IEZhbGxzIHdhcyBhdWZmYWVsbHQgYml0dGUgTklDSFQgbWVsZGVuLCBpY2ggd2lsbCBlcyBuaWNodAp3aXNzZW4hCgpCdWdmaXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogVGhhcmFtb25zIFNwaGFlcmUgKE11bmRyb24sIDIyLiBNYWkgMjAxOSwgMTI6MDA6MTIpOgp+IyEgcm49QnVnZml4IHJ0PTE1NTg1MTc0OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xNTU4NTE3MTY4CkFsc28gYWIgamV0enQ6IEF1Z2VuIHp1IHVuZCBkdXJjaD8gOkQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFRoYXJhbW9ucyBTcGhhZXJlIChWYW5pciwgMjIuIE1haSAyMDE5LCAxMjowODo0OCk6Cn4jISBybj1NdW5kcm9uIHJ0PTE1NTg1MTkyMTIgcmc9c2NobWFycm4KfiMhIHRpZD0xNTU4NTE3MTY4CkljaCB3ZWlzcyBuaWNodCwgb2IgZGFzIHdhcyBudWV0enQuClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNTogSGF0dGluZ2VuIHJlbG9hZGVkPyAoVmFuaXIsIDIyLiBNYWkgMjAxOSwgMjE6MTY6NDcpOgp+IyEgcm49S2VsbHlidW5keSBydD0xNTU4NTUxMjg0IHJnPXBhcnR5Cn4jISB0aWQ9MTU1MDA5MjA5OQpaaXRhdDogIldlciBpc24gaGllciB2ZXJhbnR3b3J0bGljaD8iICJEZXIgVG9ldGVyISIgClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpIYWxlZiB3YXIgYXVjaCBtYWwgYmVzc2VyIChUaXpvbmEsICA1LiBKdW4gMjAxOSwgMTE6MjE6NTcpOgpEdSBzYWdzdDogSWhyIFNvaG4gZWluZXMgcmFldWRpZ2VuIEthbWVsdHJlaWJlcnMgZ2xhdWJ0IGRvY2ggbmljaHQgaW0gRXJuc3QsCkR1IHNhZ3N0OiBkYXNzIGljaCAxMDAwMDAgTXVlbnplbiBmdWVyIGVpbiBzb2xjaCB3ZXJ0bG9zZXMgU3R1ZWNrIE1ldGFsbApEdSBzYWdzdDogemFobGUhIEljaCBiaWV0ZSBob2VjaHN0ZW5zIDUwMDAwIE11ZW56ZW4uCkhhbGVmIGVyd2lkZXJ0OiBGdWVyIDQ5NDI1IE11ZW56ZW4gaXN0IGRlciBQb2thbCBFdWVyIQoKLi4uIApOYSwgZGFzcyBpY2ggc28gdWViZXJ6ZXVnZW5kIGJpbiBpc3QgbWlyIGRvY2ggbmV1LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3BpZWxydW5kZSBUYWlscyBPZiBFcXVlc3RyaWEgKFJ1bWF0YSwgIDQuIEp1bCAyMDE5LCAxMDowOTowMSk6Cn4jISBybj1CdWdmaXggcnQ9MTU2MjIyNDE4MiByZz1wYXJ0eQp+IyEgdGlkPTE1NjIxMDAzNDkKLi4uIGhhY2guIDstKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGFzIGlzdCBMaWViZSAoTm90c3Ryb20sICAxLiBBdWcgMjAxOSwgMTc6MjQ6NDkpOgpOZWxkYSBVbnRlcmFja2VyIGZsdWVzdGVydDogT2hoaGgsIG1laW5lIGhlaW1saWNoZSBMaWViZS4uLgpGYXJnYW4gZmFlbGx0IGJsdXR1ZWJlcnN0cm9lbXQgdm9yIERlaW5lIEZ1ZXNzZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1hZ2llciB2ZXJmdWV0dGVybiAoTWFoYXJldCwgIDUuIEF1ZyAyMDE5LCAxMzozMjoxNCk6CmJpZXRlIGRlYWRkeSBmcmV1bmRzY2hhZnQgYW4KRGllIFNlZXZvZWdlbCBiZXZvcnp1Z2VuIGZyaXNjaGVuIEZpc2NoLiBEZWFkZHkgc2NoZWludCBpaG5lbiBuaWNodCB6dXp1c2FnZW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogTWFnaWVyIHZlcmZ1ZXR0ZXJuIChNdW5kcm9uLCAgNS4gQXVnIDIwMTksIDE5OjIyOjAwKToKfiMhIHJuPU1haGFyZXQgcnQ9MTU2NTAwNDczNCByZz1zY2htYXJybgp+IyEgdGlkPTE1NjUwMDQ3MzQKV2FzIGxlcm5lbiB3aXIgZGFyYXVzPyBEZWFkZHkgYmVzdGVodCBuaWNodCBhdXMgZnJpc2NoZW4gRmlzY2guIEZvbGdsaWNoIGlzdApEZWFkZHkgZW50d2VkZXIgbmljaHQgZnJpc2NoIG9kZXIga2VpbiBGaXNjaC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWFnaWVyIHZlcmZ1ZXR0ZXJuIChBbnRoZWEsICA2LiBBdWcgMjAxOSwgMDk6MjI6MDkpOgp+IyEgcm49TXVuZHJvbiBydD0xNTY1MDI1NzIwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU2NTAwNDczNApPamVoLCBkbmFuIG11c3MgaWNoIGFuIGRlciBTdGVsbGUgamEgc2VociB2b3JzaWNodGlnIHNlaW4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBNYWdpZXIgdmVyZnVldHRlcm4gKERlYWRkeSwgIDYuIEF1ZyAyMDE5LCAwOTozMDowOCk6Cn4jISBybj1BbnRoZWEgcnQ9MTU2NTA3NjEyOSByZz1zY2htYXJybgp+IyEgdGlkPTE1NjUwMDQ3MzQKSWNoIHZlcmlmaXppZXJlIGhpZXJtaXQsIGRhc3MgaWNoIGtlaW4gRmlzY2ggYmluLgoKRGVhZGR5LCBzZWhyIGZyaXNjaAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU2luZCBkaWUgU3BpZWxlciB6dSBzdGFyaz8gOy0pIChBbWFyeWxsaXMsIDIwLiBBdWcgMjAxOSwgMjE6MTc6MjApOgp+IyEgcm49R2xvaW5zb24gcnQ9MTU2NjI3ODc5MyByZz1kLmViZW5lCn4jISB0aWQ9MTU2NjI1MTIxNgpEYXMgZXJpbm5lcnQgbWljaCBhbiBkaWUgZ3V0ZSBhbHRlIFplaXRbdG1dLCBhbHMgbWFuIG5vY2ggbWl0IEJvaW5ncwpIb2VsbGVuZmV1ZXIgdWViZXJhbGwgaW0gTUcgV2lya3VuZyBlcnppZWx0ZS4uLiA7LSkpCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTaW5kIGRpZSBTcGllbGVyIHp1IHN0YXJrPyA7LSkgKEdsb2luc29uLCAyMS4gQXVnIDIwMTksIDA5OjU0OjAyKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNTY2MzI4NjQwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU2NjI1MTIxNgpJY2ggZmluZCBkYXMgaW1tZXIgbm9jaCBmaWVzLCBqZXR6dCBpc3QgbWVpbiBXZWdlc2NyaXB0IG1pdCBBbmxlaXR1bmcgZnVlciBkaWUKUXVlc3QgZWNodCB3ZXJ0bG9zLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW1hcnlsbGlzLCAyMi4gQXVnIDIwMTksIDIxOjEzOjA1KToKW01vZXJkZXI6R2Vpc3QgSi5SLiBFd2lua3NdIFRpem9uYSBoYXQgbWljaCBlcm1vcmRldCEKW01vZXJkZXI6VGl6b25hXSBMYXN0IG9uZSEKW1RvZDpMYXJzXSBOYXRoYWxpYSBTd2VyZW5vd3RzY2hrYWphIGhhdCBnZXJhZGUgVGl6b25hIHVtZ2VicmFjaHQuCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRmxlcGkgKENoYWdhbGwsIDEyLiBTZXAgMjAxOSwgMTM6Mjg6MjIpOgp+IyEgcm49Tm90c3Ryb20gcnQ9MTU2ODI4MjY5NSByZz1kLnd1ZXN0ZQp+IyEgdGlkPTE1NjgyODI2OTUKRmxlcGkgaXN0IG9yZGVudGxpY2hlcyBCaWVyPyBEYXMgaXN0IFBsb2VycmUgdW5kIHdpcmQgYXVjaCBpbW1lciBQbG9lcnJlCmJsZWliZW4uCgpNQywgQmllcnNub2IKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZsZXBpIChOb3RzdHJvbSwgMTIuIFNlcCAyMDE5LCAxMzoyOTozMik6Cn4jISBybj1DaGFnYWxsIHJ0PTE1NjgyODc3MDIgcmc9c2NobWFycm4KfiMhIHRpZD0xNTY4MjgyNjk1CkRpZSBSZWZlcmVueiBpc3QgaGllciBIYW5zYSwgZGFzIGFremVwdGllcnQgZGVyIGphIGF1Y2guCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGbGVwaSAoRGVhZGR5LCAxMi4gU2VwIDIwMTksIDEzOjMwOjA0KToKfiMhIHJuPU5vdHN0cm9tIHJ0PTE1NjgyODc3NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xNTY4MjgyNjk1CkljaCB3YXIgYXVjaCBzY2hvY2tpZXJ0IHVuZCB1ZWJlcnJhc2NodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZsZXBpIChDaGFnYWxsLCAxMi4gU2VwIDIwMTksIDEzOjUxOjE1KToKfiMhIHJuPU5vdHN0cm9tIHJ0PTE1NjgyODc3NzIgcmc9c2NobWFycm4KfiMhIHRpZD0xNTY4MjgyNjk1CkljaCBzZWhlIHNjaG9uLCBoaWVyIG11c3MgbWFsIHdlciBlaW5lIG9yZGVudGxpY2hlIEJpZXJiYXIgYXVmbWFjaGVuLgoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IEZsZXBpIChEZWFkZHksIDEyLiBTZXAgMjAxOSwgMTM6NTI6MjgpOgp+IyEgcm49Q2hhZ2FsbCBydD0xNTY4Mjg5MDc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU2ODI4MjY5NQo6c2Nod2Vua3QgYmVnZWlzdGVydCBzZWluICJUb2QgZGVtIEhvcGZlbiItRmFlaG5jaGVuIHVuZCBzYW1tbWVsdCBzY2hvbm1hbApCaWxzZW5rcmF1dC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEZsZXBpIChDaGFnYWxsLCAxMi4gU2VwIDIwMTksIDEzOjU1OjM0KToKfiMhIHJuPURlYWRkeSBydD0xNTY4Mjg5MTQ4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU2ODI4MjY5NQo6bXVzdGVydCBEZWFkZHkuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogRmxlcGkgKERlYWRkeSwgMTIuIFNlcCAyMDE5LCAxNDowMjoxMyk6Cn4jISBybj1DaGFnYWxsIHJ0PTE1NjgyODkzMzQgcmc9c2NobWFycm4KfiMhIHRpZD0xNTY4MjgyNjk1CkVzIHd1cmRlIGphIGJlcmVpdHMgdm9uIHVuc2VyZW4gVm9ydmFldGVybiB1ZWJlcmxpZWZlcnQsIGRhc3MgQWVnaWVyIGVpbnN0CmZ1ZXIgVGhvciAob2RlciBPZGluLCBobSkgQmllciBicmF1ZW4gc29sbHRlLiBXZWlsIGVyIGRhenUga2VpbmUgTHVzdCBoYXR0ZSwKYmVoYXVwdGV0ZSBlciwga2VpbmVuIGhpbnJlaWNoZW5kIGdyb3NzZW4gS2Vzc2VsIGZ1ZXIgZGllc2VzIEZlc3QgenUgYmVzaXR6ZW4sCndvcmF1ZmhpbiBUaG9yIGRhbm4gZWluZW4gZW50c3ByZWNoZW5kZW4gS2Vzc2VsIGJlc29yZ3RlLgpGcnVzdHJpZXJ0IGJyYXV0ZSBBZWdpciBkYW5uIHRyb3R6ZGVtIGRhcyBCaWVyLCBqZWRvY2ggdmVyZ2FlbGx0ZSBlciBlcyBtaXQKSG9wZmVuLCBzbyBkYXNzIGVzIG5vY2ggdHJpbmtiYXIsIGFiZXIgbmljaHQgbWVociBnZW5pZXNzYmFyIHNlaS4KClNvIGRpZSBTYWdlLCB3ZW5uIGljaCBpbiBtZWluZW4gR2FydGVuIGd1Y2tlIGlzdCBkYXMgZWluZmFjaCBudXIKVW5rcmF1dHZlcndlcnR1bmcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBGbGVwaSAoSHVtbmksIDEyLiBTZXAgMjAxOSwgMjA6MzU6MDYpOgp+IyEgcm49RGVhZGR5IHJ0PTE1NjgyODk3MzMgcmc9c2NobWFycm4KfiMhIHRpZD0xNTY4MjgyNjk1CkljaCBiZXRvbmUgaGllcm1pdCwgZGFzcyBpY2ggc293b2hsIEZsZVBpIHdpZSBhdWNoIEhhbnNhIG1hZy4gVW0gZ2VuYXUgenUKc2Vpbiwgc3RlaHQgZ2VyYWRlIGVpbmUgS2lzdGUgSGFuc2EgYmVpIG1pciBydW0uIFVuZCBkaWUgWmVpdGVuLCB3byBpY2ggYmVpCkJpZXIgYXVmIGRlbiBFdXJvIGd1Y2tlbiBtdXNzLCBzaW5kIHNjaG9uIGxhbmdlIHZvcmJlaS4gSWNoIG1hZyBkYXMgaGFsdC4KCkh1bW5pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBGbGVwaSAoTm9yeHVzLCAxMi4gU2VwIDIwMTksIDIwOjM2OjAzKToKfiMhIHJuPURlYWRkeSBydD0xNTY4Mjg5NzMzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU2ODI4MjY5NQpXYXJ1bSBtdXNzIGVzIGRlbm4gZWluZSBCYXIgbWl0IEJpZXIgc2Vpbj8gRWluZSBtaXQgRnJ1Y2h0c2FlZnRlbiBmaW5kZSBpY2gKYmVzc2VyLCBkYXNzIHdhZXJlIGRhbm4gZWluZSBGcnVjaHRiYXIuIGZnCi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV44OiBGbGVwaSAoSHVtbmksIDEyLiBTZXAgMjAxOSwgMjE6MDE6MDUpOgp+IyEgcm49Tm9yeHVzIHJ0PTE1NjgzMTMzNjMgcmc9c2NobWFycm4KfiMhIHRpZD0xNTY4MjgyNjk1Ck9kZXIgZWluZSwgaW4gZGVyIG1hbiBzaWNoIHJpY2h0aWcgZnVlcmNodGVuIGthbm4uCgpIYWx0IGVpbmUgRnVyY2h0YmFyLgoKSHVtbmkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEZsZXBpIChOb3RzdHJvbSwgMTIuIFNlcCAyMDE5LCAyMTowNjoyMSk6Cn4jISBybj1IdW1uaSBydD0xNTY4MzE0ODY1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU2ODI4MjY5NQpJY2ggd2FlcmUgamEgbGVpY2h0IGFtZXJpa2FuaXNpZXJlbmQgZnVlciBlaW5lIFNjaG9rb2xhZGVuLUJhci4gQWxzbyBlaW5lCkNob2NvbGF0ZSBCYXIuIERpZSB3YWVyZSBzb2dhciB0cmFnYmFyIHVuZCBtYW4ga29lbm50ZSBzaWUgaGVydW1zY2hsZXBwZW4uCgpTQ05SLApOb3RzdHJvbS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBGbGVwaSAoUnVtYXRhLCAxMy4gU2VwIDIwMTksIDA4OjE3OjA5KToKfiMhIHJuPU5vdHN0cm9tIHJ0PTE1NjgzMTUxODEgcmc9c2NobWFycm4KfiMhIHRpZD0xNTY4MjgyNjk1ClVuZCBDb2NrdGFpbHMgaW0gTmViZWwgZ2lidCBlcyBpbiBkZXIgVW5zaWNodGJhcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjExOiBGbGVwaSAoQW50aGVhLCAxMy4gU2VwIDIwMTksIDEzOjQ5OjQ5KToKfiMhIHJuPVJ1bWF0YSBydD0xNTY4MzU1NDI5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU2ODI4MjY5NQpVbmQgV2hpc2t5LiBTY2hvdHRpc2NoZW4uIFNvbGFuZ2UgbWFuIGlobiBzaWNoIG5vY2ggbGVpc3RlbiBrYW5uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTI6IEZsZXBpIChTYXJheSwgMTMuIFNlcCAyMDE5LCAxNTowMzoxNSk6Cn4jISBybj1BbnRoZWEgcnQ9MTU2ODM3NTM4OSByZz1zY2htYXJybgp+IyEgdGlkPTE1NjgyODI2OTUKRGllIENob2NvbGF0ZSBCYXIgaXN0IGphIGRhbm4gYWJlciBkb3BwZWx0IGdlbW9wcGVsdC4KU28gYWxzIFRyYWdiYXIKClNhcmF5CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpHbHVlY2tzdGFnPyAoQmVuZGVpZ2lkLCAxMy4gU2VwIDIwMTksIDE3OjA2OjEyKToKRXZyYXlhIGhhdCBnZXJhZGUgZGFzIE1vcmdlbkdyYXVlbiB2ZXJsYXNzZW4uCltDaGFvczpWYW5pcl0gaGV1dGUgaXN0IHVuc2VyIGdsdWVja3N0YWcgIQoKQWhhLiAKWidwYXIgU2VydnUsIEJlbmRlaWdpZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBEaWUgRmluc3Rlcm5pcyBicmVpdGV0IHNpY2ggYXVzIC4uLiAoWm9vaywgMjguIFNlcCAyMDE5LCAxOTowMDoxNCk6Cn4jISBybj1Ob3RzdHJvbSBydD0xNTY5Njg4NzI0IHJnPWQud2FsZAp+IyEgdGlkPTE1Njk2ODg2OTEKTWFuIG11c3MgbmF0dWVybGljaCBkYXp1IHNhZ2VuLCBkYXNzIGRhcyBLcm9wcHpldWcgZG9ydApkZW4gTXVuZCBhbiBkZXIgZWluZW4gb2RlciBhbmRlcmVuIFN0ZWxsZSBldHdhcyBhcmcgdm9sbApuaW1tdC4gSWNoIG1laW4sIGljaCBiaW4gQWJlbnRldXJlciB1bmQgZWluIHdlbmlnIApTYWV1cmVzdHJhaGxbc2ljIV0gdW5kIGRpZSBTYWNoZSBoYXQgc2ljaCBlcmxlZGlndCEKClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IERpZSBGaW5zdGVybmlzIGJyZWl0ZXQgc2ljaCBhdXMgLi4uIChWYW5pciwgMjguIFNlcCAyMDE5LCAyMTozOTozNyk6Cn4jISBybj1ab29rIHJ0PTE1Njk2OTAwMTQgcmc9c2NobWFycm4KfiMhIHRpZD0xNTY5Njg4NjkxCkR1IHNvbGx0ZXN0IHVuYmVkaW5ndCBkaWUgVG9kZXNzZXF1ZW56IGFuZ3Vja2VuLCB3byBMYXJzIG1ldHplbG4gZ2VodCEKVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwMjgwNzogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTXVuZHJvbiwgMTQuIE9rdCAyMDE5LCAxNDowMToyOSk6Cn4jISBybj1BbnRoZWEgcnQ9MTU3MTA0NjAzNSByZz1tZWdhc2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKQnVnZml4IGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KRWluIGxhdXRlciBLbmFsbCBoYWxsdCB2b20gR2ViaXJnZSBoZXJ1ZWJlci4KIERlYWRkeSBydWZ0OiBQZW5nIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjAyODA4OiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChEZWFkZHksIDE0LiBPa3QgMjAxOSwgMTQ6MDc6MjkpOgp+IyEgcm49TXVuZHJvbiBydD0xNTcxMDU0NDg5IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CkljaCBiaW4gdW5zY2h1bGRpZyB1bmQgc2FnZSBnYXIgbmljaHRzLCBqYWphIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKVG9kIGlzdCBGZWhsZXIgKE5vdHN0cm9tLCAxOC4gT2t0IDIwMTksIDE0OjUzOjA5KToKW1RvZDpMYXJzXSBFaW4gU2Nob2tvbGFkZW5kYWVtb24gaGF0IGdlcmFkZSBWYW5pciB1bWdlYnJhY2h0LgpEZWluIEZlaGxlcnRldWZlbCB0ZWlsdCBEaXIgbWl0OiBEZWluZSBGZWhsZXJsaXN0ZSBpc3Qgc29lYmVuIGxhZW5nZXIKRGVpbiBGZWhsZXJ0ZXVmZWwgdGVpbHQgRGlyIG1pdDogZ2V3b3JkZW4uCgpTTkNSLApOb3RzdHJvbS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwMjg1ODogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoTXVuZHJvbiwgMjQuIE9rdCAyMDE5LCAxNToyMDowNik6Cn4jISBybj1aYXBob2IgcnQ9MTU3MTg1MjI5OSByZz1tZWdhc2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKVGVzdG9zdGVyb24gaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgpbQW5mYWVuZ2VyOk1lcmxpbl0gVGVzdG9zdGVyb24gbWFjaHQgbnVuIGViZW5mYWxscyBkYXMgTW9yZ2VuZ3JhdWVuIHVuc2ljaGVyLiAKW0FuZmFlbmdlcjpNZXJsaW5dIEhlcnpsaWNoIFdpbGxrb21tZW4gVGVzdG9zdGVyb24hIApbQW5mYWVuZ2VyOlplc3N0cmEgemllaHQgZWluZSBBdWdlbmJyYXVlIGhvY2guXQpUZXN0b3N0ZXJvbiBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgoKCldvYWgsIFplc3N0cmEgaGF0IGRpZSBNYWNodCBkZXIgWm9va3NjaGVuIEF1Z2VuYnJhdWUhISEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIwMjg1OTogSGFjaC4uLiBudSBpcyB3YXMgZHJpbiwgaW5uZXIgTVBBLiAoU2FyYXksIDI0LiBPa3QgMjAxOSwgMjM6MTY6NTkpOgp+IyEgcm49TXVuZHJvbiBydD0xNTcxOTIzMjA2IHJnPXNjaG1hcnJuCn4jISB0aWQ9OTgyMzI4Mjc4CklzdCBhYmVyIGhhcm1sb3MgZ2VnZW4gQW5hbHJpdHRlciwgbXVzcyBpY2ggamEgc2FnZW4gOi1ELgoKU2FyYXkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkFydGlrZWwgKEJlbmRlaWdpZCwgMjYuIE9rdCAyMDE5LCAwOTo1OTozNyk6CkRlciBLbGFzc2lrZXI6CkR1IHNwdWVyc3QsIHdpZSBlaW4gWml0dGVybiBkdXJjaCBkYXMgTW9yZ2VuR3JhdWVuIGdlaHQuCktpbGthbmkgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgoKU29nYXIga2xlaW5lIChzaWMhKSBTcGllbGVyIGVyc2NodWV0dGVybiBkYXMgTUcgbm9jaCBpbW1lciBpbiBpaHJlbgpHcnVuZGZlc3Rlbi4KQmVuKiwgbm9zdGFsZ2lzY2gKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkRpZSBEZXV0c2NoZSBCYWhuIC4uLiAoQXJrLCAgOC4gTm92IDIwMTksIDE4OjMxOjQ0KToKLi4uIG1hY2h0IGpldHp0IGF1ZiBVZWJlcnB1ZW5rdGxpY2hrZWl0IGRlciBQYXNzYWdpZXJlPz8KCkRlaW5lIEZyZXVuZGluIFplc3N0cmEgdGVpbHQgRGlyIG1pdDogenVnaHVodSEKWmVzc3RyYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgTiBJIEMgSCBUICAgTSBFIEggUiAgIEQgQSAhISEKU295bmFkYSAgIEkgUyBUICAgSiBFIFQgWiBUICAgRCBBICEhIQpZeGFxdWkgICBJIFMgVCAgIEogRSBUIFogVCAgIE4gSSBDIEggVCAgIE0gRSBIIFIgICBEIEEgISEhCgoKCiAgICAgICAgICAgICAgKioqIEFSSyAqIHRoZSAqIE1hZ25pZmljZW50ICoqKgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWUgRGV1dHNjaGUgQmFobiAuLi4gKFplc3N0cmEsICA4LiBOb3YgMjAxOSwgMTk6MDY6MjIpOgp+IyEgcm49QXJrIHJ0PTE1NzMyMzQzMDQgcmc9c2NobWFycm4KfiMhIHRpZD0xNTczMjM0MzA0CmphLCBkaWUgVmVyYmluZHVuZyBoYXQgd2lya2xpY2ggbmljaHQgbGFuZyBnZWhhbHRlbi4gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpQYXNzaWVydCBkYXMgamV0enQgb2VmdGVyPyAoWmFwaG9iLCAxOS4gRGV6IDIwMTksIDIyOjQwOjU3KToKSWNoIHNjaGFldHplLCBkYXMgaGF0IFBvdGVudGlhbCB6dW0gbmV1ZW4gcnVubmluZyBHYWcuIE5pY2h0IEZMVyBzb25kZXJuLi4uCgpNdW5kcm9uIGZsaWVndCBoZXJlaW4uCk11bmRyb24gZmxpZWd0IGF1ZiBkaWUgVG9pbGV0dGUuCk11bmRyb24gZmxpZWd0IGhlcmVpbi4KTXVuZHJvbiBoYWVsdCBkaWUgS2FtZXJhIHZvciBzaWNoLCBsYWVjaGVsdCBrYWVzaWcgdW5kIGRydWVja3QgYXVmIGRlbgpBdXNsb2VzZXIuIFp1ZnJpZWRlbiBzdGVja3QgZXIgZGllIEthbWVyYSB3ZWcuCk11bmRyb24gZmxpZWd0IGF1ZiBkaWUgVG9pbGV0dGUuCk11bmRyb24gZmxpZWd0IGhlcmVpbi4KTXVuZHJvbiBmbGllZ3QgbmFjaCBOb3JkZW4uCgpadW0gR2x1ZWNrIGdlc2NoYWggZGVyIFNlbGZpZSBuaWNodCBub2NoIGF1ZiBkZXIgVG9pbGV0dGUuLi4gOi1ECgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGFzc2llcnQgZGFzIGpldHp0IG9lZnRlcj8gKENyb2Z0LCAxOS4gRGV6IDIwMTksIDIyOjQ3OjMxKToKfiMhIHJuPVphcGhvYiBydD0xNTc2NzkxNjU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU3Njc5MTY1NwpEaWVzZXIgU2VsZmllLiBIYXN0IGR1IFVlYmVyd2FjaHVuZ3NrYW1lcmFzIGF1ZiBkZXIgVG9pbGV0dGUgdW0genUgZGllc2VtClNjaGx1c3MgenUga29tbWVuPwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUGFzc2llcnQgZGFzIGpldHp0IG9lZnRlcj8gKE11bmRyb24sIDIwLiBEZXogMjAxOSwgMDk6NDU6MzIpOgp+IyEgcm49Q3JvZnQgcnQ9MTU3Njc5MjA1MSByZz1zY2htYXJybgp+IyEgdGlkPTE1NzY3OTE2NTcKVmllbGxlaWNodCBoYWIgaWNoIGphIGF1ZiBkZW0gS2xvIGF1Y2ggZWluIEZvdG8gZ2VtYWNodCEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFBhc3NpZXJ0IGRhcyBqZXR6dCBvZWZ0ZXI/IChWYW5pciwgMjAuIERleiAyMDE5LCAxMDowNjozNCk6Cn4jISBybj1NdW5kcm9uIHJ0PTE1NzY4MzE1MzIgcmc9c2NobWFycm4KfiMhIHRpZD0xNTc2NzkxNjU3CkRhbm4gZW1wZmVobGUgaWNoIERpciBkaWVzZXM6IGh0dHBzOi8vd3d3LnBvb3Bsb2cueHl6LwoKVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBYmVudGV1ZXJsaXN0ZSAoQmFtYmksIDExLiBKYW4gMjAyMCwgMDE6Mjk6NTApOgp+IyEgcm49WmVzc3RyYSBydD0xNTc4MzQ2MDM3IHJnPWVudHdpY2tsdW5nCn4jISB0aWQ9MTU3ODM0NjAzNwpDb29sIQpXZW5uIG1hbiB6dWVyc3QgImxpc3RlIGdlbG9lc3QiIHVuZCBkYW5uICJsaXN0ZSB1bmdlbG9lc3QiIGVpbmdpYnQsIGJla29tbXQKbWFuIGFsbGUgYXVmZ2VsaXN0ZXQsIGFiZXIgc29ydGllcnQgbmFjaCAienVlcnN0IGRpZSBnZWxvZXN0ZW4gdW5kIGRhbm4gZGllCnVuZ2Vsb2VzdGVuIi4gS3Jhc3MhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogR2VsZXJudGUgUGZsYW56ZW5rcmllZ2VyLVZhcmlhbnRlbiAoQW1hcnlsbGlzLCAxMS4gSmFuIDIwMjAsIDAxOjQ2OjUwKToKfiMhIHJuPUJhbWJpIHJ0PTE1Nzg3MDIxMTMgcmc9Z2lsZGVuLmthdHplbmtyaWVnZXIKfiMhIHRpZD0xNTc4NzAyMTEzClBLJ3Mgc2luZCBoaWVyIGFiZXIgdmVyYm90ZW4hCgpBbWEqLCBtaXQgZGVtIFNoZXJpZmYtU3Rlcm4gd2VkZWxuZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR2VsZXJudGUgUGZsYW56ZW5rcmllZ2VyLVZhcmlhbnRlbiAoQmFtYmksIDExLiBKYW4gMjAyMCwgMDE6NDg6MTcpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTE1Nzg3MDM2MTAgcmc9c2NobWFycm4KfiMhIHRpZD0xNTc4NzAyMTEzCkRhaGVyIGdlaHQgZXMgamEgYXVjaCB1bSBnZWxlcm50ZSBQS3MsIG5pY2h0IHVtIGJlZ2FuZ2VuZS4gfT0pCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbGtvaG9sIGFtIEFyYmVpdHNwbGF0eiAoUnVtYXRhLCAyNC4gSmFuIDIwMjAsIDEzOjE2OjQ4KToKVGFiaWJpdG8gZXJzY2hlaW50IGluIGVpbmVyIFJhdWNod29sa2UuClRhYmliaXRvIHNldHp0IHNpY2ggaGluIHVuZCBmYWVuZ3QgYW4genUgbWVkaXRpZXJlbi4KVGFiaWJpdG8gYmVlbmRldCBzZWluZSBNZWRpdGF0aW9uLgpUYWJpYml0byBzaWVodCBiZXRydW5rZW4gYXVzLgpUYWJpYml0byBzYWd0OiA8SGljaz4hCgpGcmVpdGFnIFZvcm1pdHRhZy4gU293YXMhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBbnR3b3J0ZW4gKE5vdHN0cm9tLCAyNS4gSmFuIDIwMjAsIDE5OjQ4OjQ5KToKICAgIEh1aHUsCgppY2ggd3VuZGVyZSBtaWNoIGphIGltbWVyIG9lZnRlciwgd2llIFRlc3RzcGllbGVyIGVzIHNjaGFmZmVuLCBkaXJla3QgbmFjaApkZXIgc2VsdHNhbXN0ZW4gU2FjaGUgenUgZnJhZ2VuLCB1bmQgc28sIGRhc3MgZGllIFN0YW5kYXJkYW50d29ydCBwYXNzZW5kCndpcmt0LgoKRGVhZGR5IGZyYWd0IGRlbiBFbGVmYW50IG5hY2ggU2V4LgpEZXIgRWxlZmFudCBzdWNodCBtaXQgc2VpbmVtIFJ1ZXNzZWwgaW4gRGVpbmVuIFRhc2NoZW4gaGVydW0uCgpBZnVuaWFsIGZyYWd0IGRlbiBGaXNjaG90dGVyIG5hY2ggTmFocnVuZy4KRGVyIEZpc2Nob3R0ZXIgYmVpc3N0IERpY2ggaW4gZGllIFdhZGVuLgoKU0NOUiwKTm90c3Ryb20uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBIYXR0aW5nZW4/IEhhdHRpbmdlbj8hIChab29rLCAgNS4gTWFyIDIwMjAsIDA5OjA5OjE0KToKfiMhIHJuPUJhbWJpIHJ0PTE1ODMzNDUxNzYgcmc9cGFydHkKfiMhIHRpZD0xNTgxMjY2NDYzCk51IGJpbiBpY2ggdmVyd2lycnQ6IFdpbGxzdCBEdSBhdXMgQmF5ZXJuIG9kZXIgYXVzIGRlbSB2b24gCkJheWVybiBiZXNldHp0ZW4gTGFuZCBlaW5yZWlzZW4/IAoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFuY2htYWwgYmVpIGluZm8uLi4gKFRlcnJvciwgIDcuIE1hciAyMDIwLCAwMDoyMTo0Mik6CkR1IHZlcmZvbGdzdCBlaW4gVmllY2gsIGVpbiBWaWVjaCwgZWluIFZpZWNoLCBlaW4gVmllY2gsIGVpbiBWaWVjaCwgZWluIFZpZWNoLAplaW4gVmllY2gsIGVpbiBWaWVjaCwgZWluIFZpZWNoLCBlaW4gVmllY2gsIGVpbiBWaWVjaCwgZWluIFZpZWNoLCBlaW4gVmllY2gsCmVpbiBWaWVjaCwgZWluIFZpZWNoLCBlaW4gVmllY2gsIGVpbiBWaWVjaCwgZWluIFZpZWNoLCBlaW4gVmllY2gsIGVpbiBWaWVjaCwKZWluIFZpZWNoLCBlaW4gVmllY2gsIGVpbiBWaWVjaCwgZWluIFZpZWNoLCBlaW4gVmllY2gsIGVpbiBWaWVjaCwgZWluIFZpZWNoLAplaW4gVmllY2gsIGVpbiBWaWVjaCB1bmQgZWluIFZpZWNoLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE1hbmNobWFsIGJlaSBpbmZvLi4uIChOb25kcnVtLCAgNy4gTWFyIDIwMjAsIDExOjMzOjE4KToKfiMhIHJuPVRlcnJvciBydD0xNTgzNTM2OTAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU4MzUzNjkwMgpOdXIgc28gd2VuaWdlPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBNYW5jaG1hbCBiZWkgaW5mby4uLiAoQmFtYmksICA3LiBNYXIgMjAyMCwgMTI6NDI6MzUpOgp+IyEgcm49Tm9uZHJ1bSBydD0xNTgzNTc3MTk4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU4MzUzNjkwMgpEZXIgUmVzdCB3YXIgd29obCBzY2hvbiB0b3QuIFNlaGVyIGFid2VydGVuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogSGF0dGluZ2VuPyBIYXR0aW5nZW4/ISAoQmFtYmksICA3LiBNYXIgMjAyMCwgMTI6NDM6NTUpOgp+IyEgcm49Wm9vayBydD0xNTgzMzk1NzU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU4MTI2NjQ2MwpJY2ggd2lsbCBhdXMgRnJhbmtlbiBhbnJlaXNlbi4gRGFzIGlzdCB2b24gQmF5ZXJuIGJlc2V0enRlcyBHZWJpZXQuIEFiZXIKYXVzc2VyaGFsYiBGcmFua2VucyB2ZXJzdGVoZW4gbnVyIHdlbmlnZSBkZW4gVW50ZXJzY2hpZWQgendpc2NoZW4gInZvbiBCYXllcm4KYmVzZXR6dCIgdW5kICJUZWlsIEJheWVybnMiLCBpbnNvZmVybiB0cmlmZnQgamUgbmFjaCBTdGFuZHB1bmt0IGRhcyBlaW5lIG9kZXIKZGFzIGFuZGVyZSB6dS4gU3VjaHMgZGlyIGF1cy4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEhhdHRpbmdlbj8gSGF0dGluZ2VuPyEgKFpvb2ssICA3LiBNYXIgMjAyMCwgMTM6NDA6MjIpOgp+IyEgcm49QmFtYmkgcnQ9MTU4MzU4MTQzNSByZz1zY2htYXJybgp+IyEgdGlkPTE1ODEyNjY0NjMKU29sYW5nZSBkZXIgQmFtYmVyZ2VyIERvbXNjaGF0eiBub2NoIEJldXRlIGluIE11ZW5jaGVuIGlzdAp3YWVobGUgaWNoICJ2b24gQmF5ZXJuIGJlc2V0enQiLiAKClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEhhdHRpbmdlbj8gSGF0dGluZ2VuPyEgKEFyaywgIDguIE1hciAyMDIwLCAxNzo1NTozNSk6Cn4jISBybj1ab29rIHJ0PTE1ODM1ODQ4MjIgcmc9c2NobWFycm4KfiMhIHRpZD0xNTgxMjY2NDYzCkhtLCBhbHMgaWNoIGRhcyBsZXR6dGUgTWFsIGluIEJhbWJlcmcgd2FyLCBsYWcgZXMgbm9jaCBpbiBCYXllcm4gLi4uIHdoYXQgaGFzCmNoYW5nZWQ/CgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKZWluIGtvbWlzY2hlcyByZWggLi4uIChWYW5pciwgIDguIE1hciAyMDIwLCAyMDo1NTowMyk6CltCZWlsZWlkOkJhbWJpXSBhbGxlcyBrbGFyLgpbVG9kOkxhcnNdIEVpbiBiZWluYWhlIGdlc2NoZWl0ZXJ0ZXIgUHV0c2NodmVyc3VjaCBoYXQgZ2VyYWRlIEJhbWJpCltUb2Q6TGFyc10gdW1nZWJyYWNodC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjk6IEhhdHRpbmdlbj8gSGF0dGluZ2VuPyEgKFpvb2ssICA4LiBNYXIgMjAyMCwgMjE6MjI6NTIpOgp+IyEgcm49QXJrIHJ0PTE1ODM2ODY1MzUgcmc9c2NobWFycm4KfiMhIHRpZD0xNTgxMjY2NDYzCkVpZ2VudGxpY2ggbmljaHRzLiBEZXIgRXJrbGFlcmJhZXIgaXN0IGluIEFydGlrZWwgNSwKdm9uIEJhbWJpLCB6dSBmaW5kZW4uCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQ29yb25hIChBbnRoZWEsIDEzLiBNYXIgMjAyMCwgMDk6NDY6MzMpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTE1ODQwNTM5ODcgcmc9d2l0emUKfiMhIHRpZD0xNTg0MDUzOTg3CkljaCBoYWJlIGRhIGVpbiBEZWphLVZ1LgpBY2ggamEsIGdlbmF1IGluIGRlbSBBcnRpa2VsIGRhdm9yLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogQ29yb25hIChOb25kcnVtLCAxMy4gTWFyIDIwMjAsIDEwOjAyOjU2KToKfiMhIHJuPUFudGhlYSBydD0xNTg0MDg5MTkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU4NDA1Mzk4NwpJbW1lcmhpbiB3dXJkZSBqYSBub2NoIHMvSGV1dGUvR2VzdGVybi8gdW5kIHMvMi96d2VpLyBnZW1hY2h0IDopCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBDb3JvbmEgKEFtYXJ5bGxpcywgMTMuIE1hciAyMDIwLCAxMDo1NToxNyk6Cn4jISBybj1Ob25kcnVtIHJ0PTE1ODQwOTAxNzYgcmc9c2NobWFycm4KfiMhIHRpZD0xNTg0MDUzOTg3ClVwcywgZGEgaGFiZSBpY2ggd29obCB3YXMgdWViZXJzZWhlbiA7KQoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKU3RlbGx0IEV1Y2ggRXVyZW0gU2NoaWNrc2FsISAoWm9vaywgMTUuIE1hciAyMDIwLCAxNzo1NDoyNCk6Clpvb2sgaHVzdGV0IGluIGRlciBGZXJuZS4gCkRlaW4gRnJldW5kIE5vbmRydW0gdGVpbHQgRGlyIG1pdDogWm9vayBoYXQgZ2VodXN0ZXQhIFdhaCEgV2lyIHNpbmQgdmVybG9yZW4hCkRlYWRkeSBoYXQgZ2VyYWRlIGRhcyBNb3JnZW5HcmF1ZW4gdmVybGFzc2VuLgoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogSGFtc3RlcmtvZW5pZyAoVmFuaXIsIDE2LiBNYXIgMjAyMCwgMjA6NTU6NTUpOgp+IyEgb249VmFuaXIgb3Q9MTU4NDM4ODUyNSBvZz1rdWx0dXIKfiMhIHJuPURlYWRkeSBydD0xNTg0Mzg3NTU4IHJnPWt1bHR1cgp+IyEgdGlkPTE1ODQzODY3NDUKT2RlciBoYXQga2VpbmUgRnJldW5kZSAuLi4gClYuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpWZXJrYXVmc3NjaGxhZ2VyIChIdW1uaSwgMTguIE1hciAyMDIwLCAyMjoxOTozMyk6ClZhbmlyIGJlZmFobCwgZGFzcyBpY2ggZGFzIGhpZXJoaW4gc2NocmVpYmUuIEVzIGdpbmcgZGFydW0sIGVpbmVuClZlcmthdWZzc2NobGFnZXIgZnVlciBkaWUgUGFuZGVtaWUgenUgZW50d2lja2VsbiAuLi4KCldlcmJlc3BvdC4gWndlcmdlbmtpbmQgMSB1bmQgWndlcmdlbmtpbmQgMiBzaXR6ZW4gdm9yIGRlbSBoZWltaXNjaGVuClNjaG1pZWRlZmV1ZXIuIEtpbmQgMSBzYWd0OiAiRHUsIFBhcGEsIHdlbm4gZHUgbnVuIHp1IE93ZW4gQnJhZGRvbiBnZWhzdCwKYnJpbmdzdCBkdSBtaXIgd2FzIG1pdD8iIFZhdGVyIGtvbW10IGhpbnRlciBkZW0gQW1ib3NzIGlucyBCaWxkLiAiV2FzIHNvbGwgaWNoCmRlbm4gZGE/IEljaCB3b2xsdGUgbnVyIEJpZXIga2F1ZmVuLiIgLSAiT2NoIGJpdHRlLCBQYXBhLiBXYXMgbGVja2VyZXMuIiBLaW5kCjI6ICJHZW5hdSEgVW5kIHdhcyB6dW0gQXJzY2ggYWJ3aXNjaGVuLiIgS2luZCAxOiAiTWl0IHRvbGxlbSBTdGF1YiwgYXVzIGRlbQptYW4gQnJvdCBiYWNrZW4ga2Fubiwgd2VubiBtYW4gZGFzIGFia2xvcGZ0ISIgUGFwYSBad2VyZzogIklociBoYWJ0IHNpZSBkb2NoCm5pY2h0IGFsbGUuIEdlaHQgZ2VmYWVsbGlnc3QgS29obGVuIGx1dHNjaGVuISIgS2luZCAxIHVuZCBLaW5kIDIgYWIuIC0KU3plbmVud2VjaHNlbDogRmFtaWxpZSBtaXQgMiBIb2JiaXRraW5kZXJuIGZyZXV0IHNpY2ggdWViZXIgZGllIG5ldWVuClplbGx1bG9zZS1NYWNjYXJvbmkgbWl0IE1laGxtYW50ZWwuIEVsZiBrb21tdCBpbnMgQmlsZCwgendpbmtlcnQgbWl0IGRlbiBBdWdlbgp1bmQgc2FndDogIkhhZXR0ZW4gc2llIG1hbCBiYWRlbiBzb2xsZW4sIGRhbm4gaGFldHRlIG1hbiBpaG5lbiBlcmtsYWVydCwgd2llCnNpZSBkcmVpIFd1ZW5zY2hlIGF1ZiBlaW5tYWwgYmVrb21tZW4ga29lbm5lbiEiIC0gRWluYmxlbmR1bmc6ICJEcmFjaGVuaG9ydGVyClplbGx1bG9zZS1NYWNjYXJvbmkgbWl0IE1laGxtYW50ZWwuIEVyZnVlbGx0IDMgV3VlbnNjaGUgYXVmIGVpbm1hbCwgd2VubiBzaWUKbmljaHQgenUgc3RvZXJyaXNjaCBzaW5kLiIKCkh1bW5pCnNvcnJ5IGZ1ZXIgZGllIFRocmVhZHNjaGFlbmR1bmcgYXVzIG1lZ2FzY2htYXJybgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFRvY2tsZXIgKEJhbWJpLCAgMy4gQXByIDIwMjAsIDIxOjI1OjIzKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNTg1OTAxNTg4IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTE1ODU5MDE1ODgKV2FzIGtvbW10IGRhIGRlbm4gcmF1cz8gUHJvZ3JhbW06ICJEdSBtdWRkZXN0IHp1IHZpZWwhIgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEhlcnVtbGF1ZmVuZGUgTlBDcyBpbSBEdWVzdGVyd2FsZCAuLi4gKFplc3N0cmEsICA2LiBBcHIgMjAyMCwgMDk6MTk6NDYpOgp+IyEgcm49QnVnZml4IHJ0PTE1ODYwOTc5MjEgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTU4NjA5NzkyMQpFcnpldWdlbiBzaWUgamV0enQga2VpbmUgWm9tYmllcyB2b20gTWFnaWVyIG1laHIsIHdlbm4gbWFuIGFscyBNYWdpZXIKYmVzdGltbXRlIFByb3BlcnRpZXMgYWJmcmFndD8gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhlcnVtbGF1ZmVuZGUgTlBDcyBpbSBEdWVzdGVyd2FsZCAuLi4gKEJ1Z2ZpeCwgIDYuIEFwciAyMDIwLCAwOToyMDo1Nik6Cn4jISBybj1aZXNzdHJhIHJ0PTE1ODYxNTc1ODYgcmc9c2NobWFycm4KfiMhIHRpZD0xNTg2MDk3OTIxCmxvbCwgZGFzIHdhciBtaXIgbmljaHQgYmVrYW5udCwga29lbm50ZSBhYmVyIHBhc3NpZXJlbiwgd2llIGljaCBtaWNoIGFuIGRlbgpDb2RlIGVyaW5uZXIgLi4uCgpCdWdmaXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEhlcnVtbGF1ZmVuZGUgTlBDcyBpbSBEdWVzdGVyd2FsZCAuLi4gKEJ1Z2ZpeCwgIDYuIEFwciAyMDIwLCAwOTozMjowMSk6Cn4jISBybj1CdWdmaXggcnQ9MTU4NjE1NzY1NiByZz1zY2htYXJybgp+IyEgdGlkPTE1ODYwOTc5MjEKLi4uIGpldHp0IG5pY2h0IG1laHIuCgpCdWdmaXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQXJhdGhvcm4sIDIwLiBBcHIgMjAyMCwgMDE6MjU6MTgpOgpbQWJlbnRldWVyOlhZWl0gZGEga29lbm50ZSBtYW4gYXVjaCBtYWwgaGV4ZW4gYXVmcmFldW1lbiAuLiBhdXRzY2ggLi4KCltUb2Q6TGFyc10gS29sbWFydGhhIGhhdCBnZXJhZGUgWFlaIHVtZ2VicmFjaHQuCltUb2Q6S29sbWFydGhhXSBJY2ggZGFjaHRlIG1pciwgaWNoIGhhdSBEaWNoIG1hbCwgYnJpbmcgZGljaCBhdWNoIGdhbnogc2NobmVsbApbVG9kOktvbG1hcnRoYV0genUgRmFsbCwgbnVuIGJpc3QgRHUgdG90LCBpY2ggaGFiIGdlc2llZ3QsIGhhc3QgRHUgZGFzCltUb2Q6S29sbWFydGhhXSB1ZWJlcmhhdXB0IG1pdGdla3JpZWd0PyBWaWVsbGVpY2h0IGtlbm5zdCBEdSBqYSBtZWluZW4gQnJ1ZGVyLApbVG9kOktvbG1hcnRoYV0genUgZGVtIG11c3MgbWFuIGxhbmdlIHJ1ZGVybiwgYWJlciBkYXMgaXN0IG51biBlZ2FsLCB0b3QgYmlzdApbVG9kOktvbG1hcnRoYV0gRHUgYXVmIGplZGVuIEZhbC4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRkxXIChBbWFyeWxsaXMsIDIwLiBBcHIgMjAyMCwgMDE6MjY6MTIpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTU4NzMzODcxOCByZz1zY2htYXJybgp+IyEgdGlkPTE1ODczMzg3MTgKSGVlZSEgTmljaHQgYW5vbnltaXNpZXJlbiEKSGllciB3aXJkIGdlc3RvcmJlbiB3aWUgZWluIE1hbm4hCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMVyAoQmVuZGVpZ2lkLCAyMC4gQXByIDIwMjAsIDA5OjIyOjM4KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNTg3MzM4NzcyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU4NzMzODcxOApEYXMgd2FyIEFub3JpcyEgKnBldHoqCkljaCB2ZXJzdGVoIGRlbiBXaXR6IG5pY2h0LiBNZWluc3QgRFUgZGVuIFR5cG8gYW0gRW5kZSBkZXIgVG9kZXNtZWxkdW5nPwoiRmFsIj8KQmVuZGVpZ2lkLCB6d2lua2VybmQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEZMVyAoTXVwZmVsLCAyMC4gQXByIDIwMjAsIDE3OjI2OjAwKToKfiMhIHJuPUJlbmRlaWdpZCBydD0xNTg3MzY3MzU4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU4NzMzODcxOApEZXIgUmVpbSBoYXQgd2FzIHZvbiAiZXJzdGUgVmVyc3VjaGUgYWxzIERldXRzY2gtUmFwcGVyIi4KCi1tdXBmZWwtCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBGTFcgKFphcGhvYiwgMjAuIEFwciAyMDIwLCAyMDozMDo0NCk6Cn4jISBybj1NdXBmZWwgcnQ9MTU4NzM5NjM2MCByZz1zY2htYXJybgp+IyEgdGlkPTE1ODczMzg3MTgKRGVyIFdpdHogaXN0IGltIFRpdGVsOiBGTFcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpadSBMYXV0ISAoUnVtYXRhLCAyMy4gQXByIDIwMjAsIDExOjIzOjAyKToKVmFuaXIgcnVmdDogQUFBQUFBQUFBQUFBQUFBQUFBQUFBUlJSUlJSUlJSUlJSUlJSUlJSS0tLS0tLS0tLS0tLSyEKRGVyIEJhdW0gd2lyZnQgc2VpbmUgQmxhZXR0ZXIgbnVuIGFiLiBEaWUgbGV0enRlbiByZWlmZW4gS2lyc2NoZW4gZmFsbGVuCmViZW5mYWxscyB1ZWJlcnJlaWYgenUgQm9kZW4uCgpSdW0qKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTHVlZ2VuIChEZWFkZHksICA0LiBNYWkgMjAyMCwgMTg6NTg6MDcpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBzaWxiZXJuZW4gVGVtcGVsd3lybXNdIEljaCBoYWJlIG51biBtZWhyIFRvZGUgYWxzIER1LApbTW9lcmRlcjpHZWlzdCBlaW5lcyBzaWxiZXJuZW4gVGVtcGVsd3lybXNdIFZhbmlyLiBUb3BwIG1pY2gsIHdlbm4gRHUga2FubnN0IQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEx1ZWdlbiAoQ3JvZnQsICA0LiBNYWkgMjAyMCwgMjE6NTg6MDIpOgp+IyEgcm49RGVhZGR5IHJ0PTE1ODg2MTE0ODcgcmc9c2NobWFycm4KfiMhIHRpZD0xNTg4NjExNDg3CktsYXNzaXNjaGVzIEJlZW4gdGhlcmUsIGRvbmUgdGhhdC4gTG9obnQgc2ljaCBuaWNodC4KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpMZWJ0IG5vY2ghIChBcmF0aG9ybiwgMTMuIE1haSAyMDIwLCAyMTo1MTo0MCk6CltBbGxnZW1laW46Tm9uZHJ1bV0gaXN0IGRpZSBCYW5zaGVlIHRvdCBvZGVyIGxlYnQgc2llIG5vY2g/CltBbGxnZW1laW46U2FydHJ1bV0gbGVidCBub2NoCltUb2Q6TGFyc10gRWluZSBCYW5zaGVlIGhhdCBnZXJhZGUgU2FydHJ1bSB1bWdlYnJhY2h0LgpbVG9kOkRpZSBCYW5zaGVlXSBZSUlJaWlpaWlhay1ZYWstSUlpaWlpaUFBS0tZWWlpYWFhYUtLSyAhISEhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBTT01NRVJQQVJUWSBJTiBIQVRUSU5HRU4hIChWYW5pciwgMjUuIE1haSAyMDIwLCAxNTowOTo0Nyk6Cn4jISBvbj1WYW5pciBvdD0xNTkwNDEyMTUzIG9nPXBhcnR5Cn4jISBybj1Dcm9mdCBydD0xNTkwMzM0NDI3IHJnPXBhcnR5Cn4jISB0aWQ9MTU4MTI3ODQyNwpEdXNjaGVuIGlzdCBrZWluIEhlYXZ5LU1ldGFsIQpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogU09NTUVSUEFSVFkgSU4gSEFUVElOR0VOISAoRGVhZGR5LCAyNS4gTWFpIDIwMjAsIDE1OjE2OjQ1KToKfiMhIHJuPVZhbmlyIHJ0PTE1OTA0MTIxODcgcmc9c2NobWFycm4KfiMhIHRpZD0xNTgxMjc4NDI3CkVzIHdpcmQgWmVpdCBkYXMgRXhhb2xmLVplaXRhbHRlciBlaW56dWxlaXRlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEzOiBTT01NRVJQQVJUWSBJTiBIQVRUSU5HRU4hIChWYW5pb24sIDI4LiBNYWkgMjAyMCwgMTI6NTI6NTEpOgp+IyEgcm49QXJrIHJ0PTE1OTA2NTkwMDggcmc9cGFydHkKfiMhIHRpZD0xNTgxMjc4NDI3CkR1IGJpc3Qga2VpbiBhbHRlciBTYWNrLCBBcmsuCgpCZXdlaXM6Cldlbm4gZHUgZWluIGFsdGVyIFNhY2sgd2FlcnN0LCB3YWVyZSBpY2ggYXVjaCBlaW5lci4gRGFzIGxlaG5lIGljaCBhYi4KCnFlZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE0OiBTT01NRVJQQVJUWSBJTiBIQVRUSU5HRU4hIChBcmssIDI4LiBNYWkgMjAyMCwgMTk6Mjk6NDgpOgp+IyEgcm49VmFuaW9uIHJ0PTE1OTA2NjMxNzEgcmc9c2NobWFycm4KfiMhIHRpZD0xNTgxMjc4NDI3CkljaCBrYW5uIGRlbiB3aXNzZW5zY2hhZnRsaWNoZW4gQmV3ZWlzIGdlcmFkZSBuaWNodCBmdWVocmVuLCBhYmVyIGRhcyBpc3Qgc28sCndpZSBEdSBlcyBzYWdzdC4gRGFtaXQgc2luZCB3aXIgYmVyZWl0cyBlaW5lIHdpc3NlbnNjaGFmdGxpY2hlCkZvcnNjaHVuZ3NnZW1laW5zY2hhZnQsIHVuZCBkaWUgaXJyZW4gc2ljaCBqYSBiZWthbm50bGljaCBudXIgYmVpIHNjaGxhbXBpZ2VuCkxhYm9yZW4uIEhhYmVuIHdpciBhYmVyIG5pY2h0LiBxLmUuZC4gQWNoIGd1Y2ssIGRhIGlzdCBkb2NoIGRlciBCZXdlaXMuCgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTU6IFNPTU1FUlBBUlRZIElOIEhBVFRJTkdFTiEgKFZhbmlvbiwgMjguIE1haSAyMDIwLCAyMTozNToyNSk6Cn4jISBybj1BcmsgcnQ9MTU5MDY4Njk4OCByZz1zY2htYXJybgp+IyEgdGlkPTE1ODEyNzg0MjcKRXMga2xpbmd0IGF1ZiBqZWRlbiBGYWxsIHZpZWwgYmVzc2VyLCB3ZW5uIG1hbiAiaW0gYmVzdGVuIEFsdGVyIiBzYWd0LCBzdGF0dAoiYWx0ZXIgU2FjayIuCgpWKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTc6IFNPTU1FUlBBUlRZIElOIEhBVFRJTkdFTiEgKERlYWRkeSwgMTQuIEp1biAyMDIwLCAxMToyMTo0NCk6Cn4jISBybj1Dcm9mdCBydD0xNTkyMTI2MzEwIHJnPXBhcnR5Cn4jISB0aWQ9MTU4MTI3ODQyNwpNaXIgd3VlcmQgYWJ3ZWNoc2VsbmQgZXJzdG1hbCByZWljaGVuLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xODogU09NTUVSUEFSVFkgSU4gSEFUVElOR0VOISAoUnVtYXRhLCAxNS4gSnVuIDIwMjAsIDA4OjUzOjU2KToKfiMhIHJuPURlYWRkeSBydD0xNTkyMTI2NTA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU4MTI3ODQyNwpad2lzY2hlbmR1cmNoIHNwdWVsZW4gbXVzcyByZWljaGVuLiA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKd29ubmV3aWNodGUgKElscnksIDI4LiBKdW4gMjAyMCwgMjE6MjQ6MTQpOgpEZXIgS29lbmlnIGdydWVzc3QgRGljaCBmcmV1bmRsaWNoIHVuZCBldHdhcyBlaHJlcmJpZXRpZy4KRHUgcnVlbHBzdC4KCgpJbHJ5CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IHdvbm5ld2ljaHRlIChBbWFyeWxsaXMsIDI4LiBKdW4gMjAyMCwgMjI6MDU6MjkpOgp+IyEgcm49SWxyeSBydD0xNTkzMzcyMjU0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU5MzM3MjI1NApHZW5hdSBkaWUgcmljaHRpZ2UgQW50d29ydCBmdWVyIGVpbmVuIENoYW90ZW4hIEFsbGVzIHJpY2h0aWcgZ2VtYWNodC4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClBhcnR5IChEZWFkZHksIDI0LiBKdWwgMjAyMCwgMDA6NDU6MTApOgotVCoyNQpbVG9kOkxhcnNdIEVpbiBHbHV0YmVpc3NlciBoYXQgZ2VyYWRlIFp6ZXJlbnp6YSB1bWdlYnJhY2h0LiA8RG8sIDIyOjI5OjQ0PiAKW1RvZDpMYXJzXSBFaW4gRW5lcmdpZWRyYWNoZSBoYXQgZ2VyYWRlIFNoYXJlbnVnIHVtZ2VicmFjaHQuIDxEbywgMjI6NTU6MjM+IApbVG9kOkxhcnNdIEJha2h0YXJyaCBoYXQgZ2VyYWRlIFNoYXJlbnVnIHVtZ2VicmFjaHQuIDxEbywgMjM6MTM6MTk+IApbVG9kOkJha2h0YXJyaF0gRWluIHdlaXRlcmVzIE9wZmVyIGZ1ZXIgZGVuIERyYWNoZW5nb3R0LiA8RG8sIDIzOjEzOjE5PiAKW1RvZDpMYXJzXSBFaW4gUHlyb21hbmUgaGF0IGdlcmFkZSBGdW5kb3JpcyB1bWdlYnJhY2h0LiA8RG8sIDIzOjI4OjU1PiAKW1RvZDpMYXJzXSBFaW4gRHJhY2hlbnByaWVzdGVyIGhhdCBnZXJhZGUgVmFuaXIgdW1nZWJyYWNodC4gPERvLCAyMzozMjowMj4gCltUb2Q6TGFyc10gRWluIERyYWNoZW5wcmllc3RlciBoYXQgZ2VyYWRlIFZhbmlyIHVtZ2VicmFjaHQuIDxEbywgMjM6MzI6NTA+IApbVG9kOkxhcnNdIEJha2h0YXJyaCBoYXQgZ2VyYWRlIEZ1bmRvcmlzIHVtZ2VicmFjaHQuIDxEbywgMjM6Mzk6NDA+IApbVG9kOkJha2h0YXJyaF0gRWluIHdlaXRlcmVzIE9wZmVyIGZ1ZXIgZGVuIERyYWNoZW5nb3R0LiA8RG8sIDIzOjM5OjQwPiAKW1RvZDpMYXJzXSBFaW4gV2Fzc2VyZHJhY2hlIGhhdCBnZXJhZGUgWHV0ZWxpdXMgdW1nZWJyYWNodC4gPERvLCAyMzo0MzowNT4gCltUb2Q6TGFyc10gRWluIFB5cm9tYW5lIGhhdCBnZXJhZGUgRnVuZG9yaXMgdW1nZWJyYWNodC4gPERvLCAyMzo1NjozMT4gCltUb2Q6TGFyc10gQmFraHRhcnJoIGhhdCBnZXJhZGUgVGl6b25hIHVtZ2VicmFjaHQuIDxEbywgMjM6NTY6NTE+IApbVG9kOkJha2h0YXJyaF0gRWluIHdlaXRlcmVzIE9wZmVyIGZ1ZXIgZGVuIERyYWNoZW5nb3R0LiA8RG8sIDIzOjU2OjUxPiAgICAgICAKIApbVG9kOkxhcnNdIEVpbiBQeXJvbWFuZSBoYXQgZ2VyYWRlIFNoYXJlbnVnIHVtZ2VicmFjaHQuIDxGciwgMDA6MDA6NTA+IApbVG9kOkxhcnNdIEVpbiBGZXVlcm1hZ2llciBoYXQgZ2VyYWRlIE5lZGltZSB1bWdlYnJhY2h0LiA8RnIsIDAwOjAxOjAyPiAKW1RvZDpMYXJzXSBFaW4gSG9lbGxlbmh1bmQgaGF0IGdlcmFkZSBGdW5kb3JpcyB1bWdlYnJhY2h0LiA8RnIsIDAwOjAxOjM2PiAKW1RvZDpMYXJzXSBFaW4gRmV1ZXJwcmllc3RlciBoYXQgZ2VyYWRlIFRpem9uYSB1bWdlYnJhY2h0LiA8RnIsIDAwOjExOjE1PiAKW1RvZDpMYXJzXSBaYWsgaGF0IGdlcmFkZSBGdW5kb3JpcyB1bWdlYnJhY2h0LiA8RnIsIDAwOjI0OjI5PiAKW1RvZDpaYWtdIERhcyBGZXVlciB3aXJkIGplZGVuIHZlcm5pY2h0ZW4sIGRlciBlcyB3YWd0IG1laW5lbiBIZXJybgpbVG9kOlpha10gYW56dWdyZWlmZW4gPEZyLCAwMDoyNDoyOT4gCltUb2Q6TGFyc10gRWluIEZldWVyZHJhY2hlIGhhdCBnZXJhZGUgWHV0ZWxpdXMgdW1nZWJyYWNodC4gPEZyLCAwMDoyNzo1Mz4gCltUb2Q6TGFyc10gQmFraHRhcnJoIGhhdCBnZXJhZGUgRnVuZG9yaXMgdW1nZWJyYWNodC4gPEZyLCAwMDozMTo1Nz4gCltUb2Q6QmFraHRhcnJoXSBFaW4gd2VpdGVyZXMgT3BmZXIgZnVlciBkZW4gRHJhY2hlbmdvdHQuIDxGciwgMDA6MzE6NTc+IApbVG9kOkxhcnNdIEVpbiBCcnV0emxlciBoYXQgZ2VyYWRlIEZ1bmRvcmlzIHVtZ2VicmFjaHQuIDxGciwgMDA6Mzg6MDI+IApbVG9kOkxhcnNdIEVpbmUgV2FuZCBhdXMgRmV1ZXIgaGF0IGdlcmFkZSBLaWxsa2VubnkgdW1nZWJyYWNodC4gPEZyLCAwMDozODozND4KW1RvZDpMYXJzXSBadXZpZWwgU29ubmUgaGF0IGdlcmFkZSBLaWxsa2VubnkgdW1nZWJyYWNodC4gPEZyLCAwMDo0NDoxNT4gICAgICAgCiAKW0JlaWxlaWQ6WmFwaG9iXSBKdWNodSwgVCoyNSB2b2xsIGdlbWFjaHQgOikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAKW0JlaWxlaWQ6R2xvaW5dIFR5cGlzY2hlIEJvaW5nc29ubmUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUGFydHkgKFplc3N0cmEsIDI0LiBKdWwgMjAyMCwgMDk6NDA6NTIpOgp+IyEgcm49RGVhZGR5IHJ0PTE1OTU1NDQzMTAgcmc9c2NobWFycm4KfiMhIHRpZD0xNTk1NTQ0MzEwCkhhYnQgaWhyIGd1dCBnZW1hY2h0ISA6LSkKClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogUGFydHkgKENoYWdhbGwsIDI0LiBKdWwgMjAyMCwgMTA6NDM6MjApOgp+IyEgcm49WmVzc3RyYSBydD0xNTk1NTc2NDUyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU5NTU0NDMxMApEYSB3YXJlbiBQcm9maW1ldHpsZXIgYW0gU3RhcnQsIG9kZXI/CgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogUGFydHkgKFpvb2ssIDI0LiBKdWwgMjAyMCwgMTE6MjQ6NTUpOgp+IyEgcm49Q2hhZ2FsbCBydD0xNTk1NTgwMjAwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU5NTU0NDMxMApCaXNzY2hlbiBhdXMgZGVyIFVlYnVuZyB3dWVyZGUgaWNoIHZlcm11dGVuLgoKT2RlciBhdWZncnVuZCBkZXIga3VyemVuIFVwdGltZSBub2NoIG5pY2h0IHJpY2h0aWcKYXVzZ2VydWVzdGV0LgoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IFBhcnR5IChCdWdmaXgsIDI0LiBKdWwgMjAyMCwgMTE6Mjg6MjQpOgp+IyEgcm49Wm9vayBydD0xNTk1NTgyNjk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU5NTU0NDMxMApCZWkgZWluemVsbmVuIFBlcnNvbmVuLCBrb2VubnRlIGRhcyBhdWNoIGFuIGRlciBTcGllbHdlaXNlIGxpZWdlbi4gOy0pCgpCdWdmaXgKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBQYXJ0eSAoWm9vaywgMjQuIEp1bCAyMDIwLCAxMToyODo0MSk6Cn4jISBybj1CdWdmaXggcnQ9MTU5NTU4MjkwNCByZz1zY2htYXJybgp+IyEgdGlkPTE1OTU1NDQzMTAKRHUgbWVpbnN0IGVzIHdhciBBbGtvaG9sIGltIFNwaWVsPwoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUGFydHkgKERlYWRkeSwgMjQuIEp1bCAyMDIwLCAxMToyOToxNik6Cn4jISBybj1ab29rIHJ0PTE1OTU1ODI5MjEgcmc9c2NobWFycm4KfiMhIHRpZD0xNTk1NTQ0MzEwCk9obmUgZGllc2VzIExhZyB3YWVyZSBkYXMgYXVjaCBhbmRlcnMgYXVzZ2VnYW5nZW4hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBQYXJ0eSAoQnVnZml4LCAyNC4gSnVsIDIwMjAsIDExOjI5OjI4KToKfiMhIHJuPVpvb2sgcnQ9MTU5NTU4MjkyMSByZz1zY2htYXJybgp+IyEgdGlkPTE1OTU1NDQzMTAKSmEsIHdhciBlcywgYWJlciBuZWluLCBtZWludGUgaWNoIG5pY2h0LiA7LSkKCkFsc28gc28gdmllbCBBbGtvaG9sIHdhciBlcyBuaWNodC4KCkJ1Z2ZpeAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogUGFydHkgKE5vdHN0cm9tLCAyNC4gSnVsIDIwMjAsIDExOjI5OjQ2KToKfiMhIHJuPVpvb2sgcnQ9MTU5NTU4MjkyMSByZz1zY2htYXJybgp+IyEgdGlkPTE1OTU1NDQzMTAKQWxrb2hvbCBpc3QgbmljaHQgYW53ZXNlbmQuClsuLi5dClp1bGV0enQgYXVzZ2Vsb2dndDogU2FtLCAgNy4gSnVsIDIwMTIsIDE2OjQwOjExICg4YSAxOGQgMTg6NDg6NDMpLgoKOigKClNOQ1IsCk5vdHN0cm9tLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFpvb2sgKEFudGhlYSwgIDQuIEF1ZyAyMDIwLCAxMDoxODoyOSk6Cn4jISBybj1SdW1hdGEgcnQ9MTU5NjUyNDkyOSByZz1wcmFuZ2VyCn4jISB0aWQ9MTU5NjUyNDkyOQpOYSwgZHUgd2Vpc3N0IGRvY2ggZGllIEdydW5kcmVnZWxuLi4uCsKnMTogRGVyIE11ZGdvdHQgaGF0IHJlY2h0LgrCpzI6IFNvbGx0ZSBkZXIgTXVkZ290dCBuaWNodCByZWNodCBoYWJlbiwgdHJpdHQgYXV0b21hdGlzY2ggwqcxIGluIEtyYWZ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBab29rIChBbnRoZWEsICA0LiBBdWcgMjAyMCwgMTA6MjA6MjkpOgp+IyEgcm49QW50aGVhIHJ0PTE1OTY1MjkxMDkgcmc9c2NobWFycm4KfiMhIHRpZD0xNTk2NTI0OTI5Ckdhbnogd2ljaHRpZywgd2FzIGljaCBlYmVuIHZlcmdlc3NlbiBoYWJlOgrCpzM6IFNvbGx0ZW4gdmVyc2NoaWVkZW5lIE11ZGdvZXR0ZXIgdmVyc2NoaWVkZW5lcyBiZWhhdXB0ZW4sIGdpbCYiwqciwqcKRHUgc2llaHN0IGVpbmVuIEZlaGxlciBpbSBSYXVtLVplaXQtR2VmdWVnZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCk1laW5lIGxpZWJzdGUgRmVobGVybWVsZHVuZyBmdWVyIGhldXRlIChaYXBob2IsICA4LiBBdWcgMjAyMCwgMTc6NDk6NDApOgpEaWUgSG9zZSwgZGllIEhvc2UsIGRpZSBIb3NlLCBkaWUgSG9zZSwgZGllIEhvc2UsIGRpZSBIb3NlLCBkaWUgSG9zZSwgZGllCkhvc2UsIGRpZSBIb3NlLCBkZXIgT3JraGVsbSwgZGllIEhvc2UsIGRlciBPcmtoZWxtLCBkaWUgSG9zZSwgZGVyIE9ya2hlbG0sIGRpZQpIb3NlLCBkaWUgSG9zZSwgZGllIEhvc2UsIGRpZSBIb3NlLCBkaWUgSG9zZSwgZGllIEhvc2UsIGRpZSBIb3NlLCBkZXIgT3JraGVsbSwKZGllIEhvc2UsIGRpZSBIb3NlLCBkaWUgSG9zZSwgZGVyIE9ya2hlbG0sIGRpZSBIb3NlLCBkZXIgT3JraGVsbSwgZGllIEhvc2UsCmRlciBPcmtoZWxtLCBkZXIgT3JraGVsbSwgZGllIEhvc2UsIGRlciBPcmtoZWxtLCBkaWUgSG9zZSwgZGllIEhvc2UsIGRpZSBIb3NlLApkaWUgSG9zZSwgZGllIEhvc2UsIGRpZSBIb3NlLCBkaWUgSG9zZSwgZGllIEhvc2UsIGRpZSBIb3NlLCBkZXIgT3JraGVsbSwgZGllCkhvc2UsIGRpZSBIb3NlLCBkaWUgSG9zZSwgZGllIEhvc2UsIGRpZSBIb3NlLCBkZXIgT3JraGVsbSwgZGllIEhvc2UsIGRlcgpPcmtoZWxtLCBkaWUgSG9zZSwgZGVyIE9ya2hlbG0sIGRpZSBIb3NlLCBkZXIgT3JraGVsbSwgZGllIEhvc2UsIGRpZSBIb3NlLCBkaWUKSG9zZSwgZGllIEhvc2UgdW5kIGRpZSBIb3NlIHNpbmQgZG9jaCBiZXJlaXRzIGluIGRlbSBQYWtldC4KCldlciByYWV0IGRlbiBCZWZlaGwgZGF6dT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBNZWluZSBsaWVic3RlIEZlaGxlcm1lbGR1bmcgZnVlciBoZXV0ZSAoQXJhdGhvcm4sICA4LiBBdWcgMjAyMCwgMTk6MDY6NTgpOgp+IyEgcm49WmFwaG9iIHJ0PTE1OTY5MDE3ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xNTk2OTAxNzgwCiJzdGVja2UgYWxsZXMgYXVzIHBha2V0IGluIG1pciBpbiBwYWtldCBpbiBtaXIiPyA6LSkKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTWVpbmUgbGllYnN0ZSBGZWhsZXJtZWxkdW5nIGZ1ZXIgaGV1dGUgKFphcGhvYiwgIDkuIEF1ZyAyMDIwLCAxNDo1OTo1MCk6Cn4jISBybj1BcmF0aG9ybiBydD0xNTk2OTA2NDE4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU5NjkwMTc4MApEYXMgaXN0IG5haCBnZW51ZyBkcmFuLCBsYXNzZSBpY2ggc28gZ2VsdGVuISA6KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IE9lZnRlciBPcnQgc2NoaWNrZW4gcGVyIEdNQ1AgKFpvb2ssIDMxLiBBdWcgMjAyMCwgMDk6MDY6MTApOgp+IyEgcm49WmFwaG9iIHJ0PTE1OTg4MDgxMDUgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTE1OTg4MDgxMDUKWW91IGxvc3QgbWUgYXQgIkxpY2h0Li4uLi4iIAoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBPZWZ0ZXIgT3J0IHNjaGlja2VuIHBlciBHTUNQIChEZWFkZHksIDMxLiBBdWcgMjAyMCwgMDk6MzI6NDUpOgp+IyEgcm49Wm9vayBydD0xNTk4ODU3NTcwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU5ODgwODEwNQpXaXIga29lbm5lbiBqYSBuZW4gS2lja3N0YXJ0ZXIgYW1jaGVuLCBkYXNzIG1hbCBqZW1hbmQgZGFzIExpY2h0c3lzdGVtCnVlYmVyYXJiZWl0ZXQuIEFiIDEwayBtYWNoIGljaCBFdWNoIGxlZXJlIFZlcnNwcmVjaHVuZ2VuLCBhYiA1MGsgc2NoaWNrIGljaApFdWNoIHVudGVyc2NocmllYmVuZSBCaWxkZXIgdm9uIG1pciB1bnRlciBuZXIgQnJ1ZWNrZSBtaXQgbmVyIEZsYXNjaGUKQmlsbGlnd2hpc2tleSB1bmQgYWIgMTAwayB2ZXJzdWNoIGljaCBkYXMuIDotKQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogT2VmdGVyIE9ydCBzY2hpY2tlbiBwZXIgR01DUCAoQ2hhZ2FsbCwgMzEuIEF1ZyAyMDIwLCAwOTozMzozNik6Cn4jISBybj1EZWFkZHkgcnQ9MTU5ODg1OTE2NSByZz1zY2htYXJybgp+IyEgdGlkPTE1OTg4MDgxMDUKRHUgaGFzdCBkYXMgdmVyYm90ZW5lIFdvcnQgYXVzZ2VzcHJvY2hlbi4KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBPZWZ0ZXIgT3J0IHNjaGlja2VuIHBlciBHTUNQIChNdW5kcm9uLCAzMS4gQXVnIDIwMjAsIDA5OjQwOjM1KToKfiMhIHJuPUNoYWdhbGwgcnQ9MTU5ODg1OTIxNiByZz1zY2htYXJybgp+IyEgdGlkPTE1OTg4MDgxMDUKS2lja3N0YXJ0ZXIsIFZlcnNwcmVjaHVuZ2VuIG9kZXIgZ2FyIEJpbGxpZ3doaXNreT8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IE9lZnRlciBPcnQgc2NoaWNrZW4gcGVyIEdNQ1AgKENoYWdhbGwsIDMxLiBBdWcgMjAyMCwgMDk6NDY6NDApOgp+IyEgcm49TXVuZHJvbiBydD0xNTk4ODU5NjM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU5ODgwODEwNQpuZWluLCBkaWVzZXMgbGljaHRkaW5nc2J1bXMuIEVzIHdpbGwgbWlyIGVpbmZhY2ggbmljaHQgdWViZXIgZGllIExpcHBlbi4KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBPZWZ0ZXIgT3J0IHNjaGlja2VuIHBlciBHTUNQIChEZWFkZHksIDMxLiBBdWcgMjAyMCwgMDk6NDc6MTEpOgp+IyEgcm49TXVuZHJvbiBydD0xNTk4ODU5NjM1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU5ODgwODEwNQpOZWluLCBrZWluIFdoaXNreSwgZGVyIGlzdCB6dSBTY2hhZGUgdW0gZGFtaXQgVmVyendlaWZsdW5nIHJ1bnRlcnp1c3B1ZWxlbi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IE9lZnRlciBPcnQgc2NoaWNrZW4gcGVyIEdNQ1AgKFZhbmlvbiwgMzEuIEF1ZyAyMDIwLCAwOTo0ODo1Nyk6Cn4jISBybj1EZWFkZHkgcnQ9MTU5ODg1OTE2NSByZz1zY2htYXJybgp+IyEgdGlkPTE1OTg4MDgxMDUKSWNoIHNhZyBtYWwgLCBoaWVyIGxpZWdlbiAkKGNsb25lKDEwMGsgTXVlbnplbikpLiBGYW5nIHNjaG9uIG1hbCBhbi4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBPZWZ0ZXIgT3J0IHNjaGlja2VuIHBlciBHTUNQIChEZWFkZHksIDMxLiBBdWcgMjAyMCwgMDk6NDk6NTIpOgp+IyEgcm49VmFuaW9uIHJ0PTE1OTg4NjAxMzcgcmc9c2NobWFycm4KfiMhIHRpZD0xNTk4ODA4MTA1CkRhdm9uIGthbm4gaWNoIG1pciBhYmVyIGtlaW5lIG5ldWUgTGViZXIga2F1ZmVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogT2VmdGVyIE9ydCBzY2hpY2tlbiBwZXIgR01DUCAoVmFuaW9uLCAzMS4gQXVnIDIwMjAsIDA5OjUwOjUxKToKfiMhIHJuPURlYWRkeSBydD0xNTk4ODYwMTkyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU5ODgwODEwNQoxLikgaXJnZW5kd2FzIGlzIGphIGltbWVyLgoyLikgWnVyIG5vdCBjbG9udCBtYW4gZGllIGhhbHQgYXVjaC4gQXVzc2VyZGVtIGlzdCBkaWUoKSBpbSBNRyBlaW4gd2FocmVyCkp1bmdicnVubm5lbi4gQWxsZXMgbmV1IQoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IE9lZnRlciBPcnQgc2NoaWNrZW4gcGVyIEdNQ1AgKFplc3N0cmEsIDMxLiBBdWcgMjAyMCwgMDk6NTM6MDUpOgp+IyEgcm49VmFuaW9uIHJ0PTE1OTg4NjAyNTEgcmc9c2NobWFycm4KfiMhIHRpZD0xNTk4ODA4MTA1CldhcyBoYWJ0IGlociBtaXQgZGVtIERpbmcgZWlnZW50bGljaD8KOmlzdCB2ZXJ3dW5kZXJ0LgoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogT2VmdGVyIE9ydCBzY2hpY2tlbiBwZXIgR01DUCAoVmFuaW9uLCAzMS4gQXVnIDIwMjAsIDA5OjU1OjUwKToKfiMhIHJuPVplc3N0cmEgcnQ9MTU5ODg2MDM4NSByZz1zY2htYXJybgp+IyEgdGlkPTE1OTg4MDgxMDUKV2lyIGhhZXR0ZW4gaW0gTUcgYXVmIFRhZ2VzemVpdGVuIHJlYWdpZXJlbmRlIFJhZXVtZSB1bmQgTlBDIGVpbmZ1ZWhyZW4Kc29sbGVuLiBEYW5uIHd1ZXJkZSBoZXV0ZSBuaWVtYW5kIHVlYmVyIGRhcyBEaW5nZW5zIG1lY2tlcm4uIAoKVioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IE9lZnRlciBPcnQgc2NoaWNrZW4gcGVyIEdNQ1AgKENoYWdhbGwsIDMxLiBBdWcgMjAyMCwgMDk6NTY6NTkpOgp+IyEgcm49VmFuaW9uIHJ0PTE1OTg4NjA1NTAgcmc9c2NobWFycm4KfiMhIHRpZD0xNTk4ODA4MTA1CldpbGxrb21tZW4gaW4gS2FudGhhcnI/CgpNQwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFpvb2sgc3RlbGx0IERlYWRkeSBhbiBkZW4gUHJhbmdlciAoQ3JvZnQsIDMxLiBBdWcgMjAyMCwgMTY6NTQ6MzcpOgp+IyEgcm49Wm9vayBydD0xNTk4ODU5NjU1IHJnPXByYW5nZXIKfiMhIHRpZD0xNTk4ODU5NjU1CldpZSBsYXV0ZXRlIGRhcyBXb3J0PwoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogWm9vayBzdGVsbHQgRGVhZGR5IGFuIGRlbiBQcmFuZ2VyIChWYW5pb24sICAxLiBTZXAgMjAyMCwgMjI6MzM6MDApOgp+IyEgcm49Q3JvZnQgcnQ9MTU5ODg4NTY3NyByZz1zY2htYXJybgp+IyEgdGlkPTE1OTg4NTk2NTUKRGFzIGlzdCB3aWUgYmVpIERvZ21hLCB3ZW5uIFpvb2sgRGlyIGRhcyBXb3J0IHNhZ3QsIHdpcmQgZXMgRGljaCB6ZXJzdG9lcmVuLgpJc3QgYWxzbyBudXIgRnVlcnNvcmdlLCBkYXNzIGVyIHN0dW1tIGJsZWlidC4KClYqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBab29rIHN0ZWxsdCBEZWFkZHkgYW4gZGVuIFByYW5nZXIgKEdsb2luc29uLCAgMy4gU2VwIDIwMjAsIDIzOjE0OjA5KToKfiMhIHJuPVZhbmlvbiBydD0xNTk4OTkyMzgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTU5ODg1OTY1NQpab29rIGlzdCBpbiBXaXJrbGljaGtlaXQgbnVyIHN0b2x6IGF1ZiBkaWUgZGFtYWxpZ2UKQXJiZWl0c2xlaXN0dW5nc2VyZ2Vibmlza3VydmUgLi4uIGlyZ2VuZHdhcy4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBNaWtyb3Bob24gKFpvb2ssIDE0LiBPa3QgMjAyMCwgMTQ6NDc6NDIpOgp+IyEgcm49UnVtYXRhIHJ0PTE2MDI2NzE0MDYgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTYwMjY2MjQxOApFcmlubmVydCBtaWNoIGRhcmFuLCBkYXNzIGVzIGluIGVpbmVtIG5pY2h0IHNvIGtsZWluZW4gQmlzdHVtIGluCkRldXRzY2hsYW5kIGZ1ZXIgZGllc2VzIFByb2JsZW0gZm9sZ2VuZGUgTG9lc3VuZyBnYWI6IE1hbiBoYXQgZWluIGlQaG9uZQphdWYgZWluZW4gU3R1aGwgZ2VzdGVsbHQsIHdhcyBkYW5uIGRlbiBCaXNjaG9mIGdlZmlsbXQgdW5kIFRvbgphdWZnZW5vbW1lbiBoYXQgdW5kIGRhcyBuYWNoIFlvdXR1YmVbc2ljIV0gZ2VzdHJlYW10LgoKWnUgZWluZW0gWmVpdHB1bmt0LCB3byBYIE1pbmlnZW1laW5kZW4gZXMgZ2VzY2hhZmZ0IGhhYmVuLCBtaXQKaGFsYndlZ3Mgc2lubnZvbGxlbSBFcXVpcG1lbnQgenUgbmljaHQgZ2FueiBzbyBrb21pc2NoZW4KUGxhdHRmb3JtZW4genUgc3RyZWFtZW4uCgpBaGphLCBiZXN0ZSBFcGlzb2RlIHdhciB3b2hsLCBkYXNzIGVpbm1hbCBkYXMgaVBob25lIGF1ZiBkZW0KS29wZiBzdGFuZCB1bmQgZGFzIGVyc3QgYmVtZXJrdCB3dXJkZSBhbHMgZWluIFp1aG9lcmVyIGVpbmVuIGRlcgp2ZXJtZWludGxpY2hlbiBBbndlc2VuZGVuIGFuZ2VydWZlbiB1bmQgaWhtIGF1ZiBkZW4gVW1zdGFuZCBoaW5nZXdpZXNlbgpoYXQuCgpBaCwgc29ycnksIFRpcHBmZWhsZXI6IEVzIHd1cmRlIG5hY2ggRmFjZWJvb2sgZ2VzdHJlYW10LgoKQWxsZXMgbnVyIEhvZXJlbnNhZ2VuLCB3aXNzZW5zY2hvbi4KClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogTGltaXQgZnVlciBBbGlhc2UgKFJ1bWF0YSwgMjAuIE9rdCAyMDIwLCAwOToxNzo1Nyk6Cn4jISBybj1BcmsgcnQ9MTYwMzE0NDczOSByZz1lbnR3aWNrbHVuZwp+IyEgdGlkPTE2MDMxMzczOTUKU29sYW5nZSBtZWluZSBhZHZlcmJpZW5saXN0ZSBuaWNodCBiZXNjaG5pdHRlbiB3aXJkLi4uClJ1bSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBTOiBOb3RlYm9vayB2b24gTGVub3ZvICAoVmFuaXIsIDEwLiBOb3YgMjAyMCwgMTU6NDg6MTYpOgp+IyEgcm49R2xvaW5zb24gcnQ9MTYwNDk1NzA0MCByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTYwNDkzODI0MQpBbHNvIGJlaSAncHJvc3BlY3QnIGhhYmUgaWNoIHNwb250YW4gYW4gcG90ZW50aWVsbGVzIEFsdHBhcGllciBtaXQKYy1rLVNjaHdhZWNoZSBkZW5rZW4gbXVlc3Nlbi4KVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IFM6IE5vdGVib29rIHZvbiBMZW5vdm8gIChHbG9pbnNvbiwgMTAuIE5vdiAyMDIwLCAxNTo1ODoyNSk6Cn4jISBybj1WYW5pciBydD0xNjA1MDE5Njk2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTYwNDkzODI0MQpEaWVzZXMgQldMLUxpbmdvIG1hY2h0IG1pY2ggZmVydGlnIDopCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogSGVhZHNldCB1bmQgTGludXggKFpvb2ssIDE3LiBOb3YgMjAyMCwgMTg6MTQ6NTkpOgp+IyEgb249Wm9vayBvdD0xNjA1NjMzMjgwIG9nPWhhcmRzb2Z0d2FyZQp+IyEgcm49QXJhdGhvcm4gcnQ9MTYwNTYzMzIxNSByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xNjA1NjMyOTA3CkljaCBmdWVobGUgbWljaCBnZXJhZGUsIHdpZSBtYW5jaGUgbWVpbmVyIEF1ZnRyYWdnZWJlcjogIkFiZXIgZGFzIGlzdApkb2NoIFN0YW5kYXJkISIgOykgCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEhlYWRzZXQgdW5kIExpbnV4IChDaGFnYWxsLCAxOC4gTm92IDIwMjAsIDA4OjE4OjMzKToKfiMhIHJuPUFyYXRob3JuIHJ0PTE2MDU2MzMwNDcgcmc9aGFyZHNvZnR3YXJlCn4jISB0aWQ9MTYwNTYzMjkwNwpCZWkgSGFuZHlzIGxpZWdlbiBub2NoIEhlYWRzZXRzIGRhYmVpPyBNZWluIHp1bGV0enQgZ2VrYXVmdGVzIGhhdHRlIHdlZGVyIGVpbgpIZWFkc2V0IG5vY2ggZWluZW4gU3RlY2tlciBkYWJlaS4KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBIZWFkc2V0IHVuZCBMaW51eCAoQXJhdGhvcm4sIDE4LiBOb3YgMjAyMCwgMTU6NDM6MjQpOgp+IyEgcm49Q2hhZ2FsbCBydD0xNjA1NjgzOTEzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTYwNTYzMjkwNwpOYWphLCBkaWUgbGllZ2VuIGphIGhldXRlIG5pcmdlbmRzIG1laHIgYmVpLCB3ZWlsIGplZGVyIHNjaG9uIDEwIGRhdm9uIGluIGRlcgpLcmFtc2NodWJsYWRlIHp1IGxpZWdlbiBoYXQuIFVuZCBkYSBkYWNodGUgaWNoLCBoZXksIGRlciBab29rIGhhdCB2aWVsbGVpY2h0CmF1Y2ggc28gZWluZSBTY2h1YmxhZGUsIHdvIGVyIHNpY2ggbWFsIGJlZGllbmVuIGtvZW5udGUuIDotKQoKQXJhdGhvcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBIZWFkc2V0IHVuZCBMaW51eCAoWm9vaywgMTkuIE5vdiAyMDIwLCAxNTo0OTo1NSk6Cn4jISBybj1BcmF0aG9ybiBydD0xNjA1NzEwNjA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTYwNTYzMjkwNwpab29rIGhhdCBnYXIgbmljaHQgc28gdmllbGUgSGFuZHlzIGluIHNlaW5lbSBMZWJlbiBnZWthdWZ0IHVuZCBoYXQgCmtlaW4gSGVhZHNldCBtZWhyIGdlZnVuZGVuLgoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogSGVhZHNldCB1bmQgTGludXggKENoYWdhbGwsIDIwLiBOb3YgMjAyMCwgMDc6MzI6NDgpOgp+IyEgcm49Wm9vayBydD0xNjA1Nzk3Mzk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTYwNTYzMjkwNwpXYXJ1bSBzcHJpY2h0IGVzIHZvbiBzaWNoIGluIGRlciBkcml0dGVuIFBlcnNvbj8KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGVyIGR1bmtsZSBTcGVlciAoWm9vaywgMjcuIE5vdiAyMDIwLCAxNjo0OTo0Nyk6Cn4jISBybj1Ob3RzdHJvbSBydD0xNjA2NDg4ODY5IHJnPWQucG9sYXIKfiMhIHRpZD0xNjA2NDg4ODY5CkljaCB3ZXJkZSBkaWUgVG9kLUViZW5lIGltIEF1Z2UgYmVoYWx0ZW4uCgpab29rLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBBYnN0dWVyemUgdW50ZXIgV2luMTAgdmVyZm9sZ2VuIChWYW5pciwgMjkuIE5vdiAyMDIwLCAxMTo0ODowMCk6Cn4jISBybj1NYXN1bCBydD0xNjA2NjQ2NTQ5IHJnPWhhcmRzb2Z0d2FyZQp+IyEgdGlkPTE2MDU5OTMwNjgKRHUgc2NocmVpYnN0IGFscyB3ZW5uIER1IGRlaW5lIFRleHRlIGRpcmVrdCBhdXMgZGllc2VtICJFdmVudCBWaWV3ZXIiCmhlcmF1c2tvcGllcnN0LiAqZyoKVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEFic3R1ZXJ6ZSB1bnRlciBXaW4xMCB2ZXJmb2xnZW4gKE1hc3VsLCAyOS4gTm92IDIwMjAsIDE0OjEyOjU4KToKfiMhIHJuPVZhbmlyIHJ0PTE2MDY2NDY4ODAgcmc9c2NobWFycm4KfiMhIHRpZD0xNjA1OTkzMDY4CkhhbGxvIFZhbmlyLAp3ZW5uIER1IGRpZSBkb3BwZWx0ZW4gWmVpbGVuIG1laW5zdDogTXVkbGV0IGJlcm5pbW10IGJlaW0gRW50ZXItRHJja2VuIGRpZQp6dWxldHp0IGVpbmdlZ2ViZW5lIFplaWxlLgpEYXJhbiBtdXNzIGljaCBtaWNoIGVyc3QgZWlubWFsIGdld2huZW4uCipzZXVmeioKCk1hc3VsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBBYnN0dWVyemUgdW50ZXIgV2luMTAgdmVyZm9sZ2VuIChBcmF0aG9ybiwgMjkuIE5vdiAyMDIwLCAxNDoxNToyNyk6Cn4jISBybj1NYXN1bCBydD0xNjA2NjU1NTc4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTYwNTk5MzA2OApEYXMga2FubiBtYW4gZ2xhdWIgaWNoIGF1Y2ggYXVzc2NoYWx0ZW4sIGZ1ZXIgZGVuIEZhbGwsIGRhc3MgZHUgZGljaCBuaWNodApkcmFuIGdld29laG5lbiBrYW5uc3QuIDotKQoKQXJhdGhvcm4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBBYnN0dWVyemUgdW50ZXIgV2luMTAgdmVyZm9sZ2VuIChaYXBob2IsIDI5LiBOb3YgMjAyMCwgMTQ6MjM6MTMpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTYwNjY1NTcyNyByZz1zY2htYXJybgp+IyEgdGlkPTE2MDU5OTMwNjgKSW0gTWVudSB1bnRlciBPcHRpb25lbi9FaW5zdGVsbHVuZ2VuIC0+IEVpbmdhYmV6ZWlsZSAtPiBIYWtlbiBzZXR6ZW4gYmVpOgpMZWVyZSBkaWUgRWluZ2FiZXplaWxlIG5hY2hkZW0gZHUgVGV4dCBnZXNlbmRldCBoYXN0LgoKR3J1ZXNzZSwKWmFwKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogQWJzdHVlcnplIHVudGVyIFdpbjEwIHZlcmZvbGdlbiAoWm9vaywgIDEuIERleiAyMDIwLCAxMDo1MDowMSk6Cn4jISBybj1aYXBob2IgcnQ9MTYwNjY1NjE5MyByZz1zY2htYXJybgp+IyEgdGlkPTE2MDU5OTMwNjgKS3Jhc3MhIERpZSBFaW5zdGVsbHVuZyBoYWJlIGljaCBzY2hvbiBsYWVuZ2VyIGdlc3VjaHQuCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV43OiBBYnN0dWVyemUgdW50ZXIgV2luMTAgdmVyZm9sZ2VuIChHbG9pbnNvbiwgIDEuIERleiAyMDIwLCAxMzoyNToxOCk6Cn4jISBybj1ab29rIHJ0PTE2MDY4MTYyMDEgcmc9c2NobWFycm4KfiMhIHRpZD0xNjA1OTkzMDY4CkphLCBkYXMgaXN0IGVpbiBmdXJjaHRiYXJlcyBGZWF0dXJlLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEFic3R1ZXJ6ZSB1bnRlciBXaW4xMCB2ZXJmb2xnZW4gKFphcGhvYiwgIDIuIERleiAyMDIwLCAwMToxNzozNik6Cn4jISBybj1aYXBob2IgcnQ9MTYwNjY1NjE5MyByZz1zY2htYXJybgp+IyEgdGlkPTE2MDU5OTMwNjgKR2VzY2htYWNrc3NhY2hlLiBJY2ggZmluZCBkYXMgekIuIHRvdGFsIGhpbGZyZWljaC4KClphcCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEFic3R1ZXJ6ZSB1bnRlciBXaW4xMCB2ZXJmb2xnZW4gKE11bmRyb24sICAyLiBEZXogMjAyMCwgMDg6MDc6MzkpOgp+IyEgcm49WmFwaG9iIHJ0PTE2MDY4NjgyNTYgcmc9c2NobWFycm4KfiMhIHRpZD0xNjA1OTkzMDY4ClNlaGUgaWNoIGF1Y2ggYWxzIEdlc2NobWFja3NzYWNoZS0gRnVlcnMgbXVkZGVuIGZpbmRlIGljaCBlcyBzZWhyIGFuZ2VuZWhtLAp3ZW5uIGljaCB6dW0gQmVpc3BpZWwgZGllIE1QQSBkdXJjaGxlc2UgbXVzcyBpY2ggbnVyIGVpbm1hbCBubiBlaW5nZWJlbiB1bmQKc2xpZGUgbWl0IG51ciBlaW5lbSBFbnRlciBkaWUgQXJ0aWtlbCBlbnRsYW5nLiBVbmQgZGEgZGllIEVpbmdhYmUgbmFjaCBkZW0KQWJzY2hpY2tlbiBhdWNoIGF1dG9tYXRpc2NoIGF1c2dld2FlaGx0IGlzdCwgd2lyZCBlcyBnZWxvZXNjaHQsIHNvYmFsZCBtYW4KZXR3YXMgYW5kZXJlcyBhbHMgRW50ZXIgZWluZ2lidC4gRGFtaXQgaXN0IGVzIG5pY2h0IGhpbmRlcmxpY2gsIHdlbm4gbWFuIGplZGUKWmVpbGUgZXR3YXMgYW5kZXJlcyBlaW5nZWJlbiB3aWxsLiBCbG9lZCBpc3QgbnVyLCB3ZW5uIG1hbiBlaW5lIExlZXJ6ZWlsZQpzY2hpY2tlbiB3aWxsLCBkYSBtYW4gZGFubiBkaWUgRWluZ2FiZSB0YXRzYWVjaGxpY2ggbG9lc2NoZW4gbXVzcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjE5OiBOYW1lbiBmdWVyIEViZW5lbi1PYmVybXVmdGkgZ2VzdWNodCAoSHVyYXhwcmF4LCAgMi4gRGV6IDIwMjAsIDIxOjMwOjMwKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNjA2OTQwODE1IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xNjA2ODY2MTA4CkhhcGZlbG1hcGZlbGtyYXBmZWwgYWxzIEViZW5lbm1hc3Rlcj8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIyOiBOYW1lbiBmdWVyIEViZW5lbi1PYmVybXVmdGkgZ2VzdWNodCAoUnVtYXRhLCAgMi4gRGV6IDIwMjAsIDIzOjIyOjI5KToKfiMhIHJuPVJ1bWF0YSBydD0xNjA2OTQ3Njc1IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xNjA2ODY2MTA4ClVuZCBkaWVzIC0gbWVpbmUgdmVyZWhydGVuIERhbWVuIHVuZCBIZXJyZW4gLSBuZW5udCBtYW4gQmlrZXNoZWRkaW5nLiA7LSkKClJ1bSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMzogTmFtZW4gZnVlciBFYmVuZW4tT2Jlcm11ZnRpIGdlc3VjaHQgKENyb2Z0LCAgMy4gRGV6IDIwMjAsIDA5OjUzOjE5KToKfiMhIHJuPUFudGhlYSBydD0xNjA2OTg1NDU5IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xNjA2ODY2MTA4ClVURiBoYXQgc2ljaGVyIGluIGRlciBlaW4gb2RlciBhbmRlcmVuIFZhcmlhbnRlIGF1Y2ggc2Nob2VuZXMgenUgYmlldGVuLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI0OiBOYW1lbiBmdWVyIEViZW5lbi1PYmVybXVmdGkgZ2VzdWNodCAoQW50aGVhLCAgMy4gRGV6IDIwMjAsIDEwOjE2OjU0KToKfiMhIHJuPUNyb2Z0IHJ0PTE2MDY5ODU1OTkgcmc9c2NobWFycm4KfiMhIHRpZD0xNjA2ODY2MTA4Ck5hIGRhbm4gVVRGOC1DRjg2LiBFaW4ga2xlaW5lcyBQaGkuCldlaWwgS2xlaW4tUGhpIG1hY2h0IGF1Y2ggTWlzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI2OiBOYW1lbiBmdWVyIEViZW5lbi1PYmVybXVmdGkgZ2VzdWNodCAoWm9vaywgIDMuIERleiAyMDIwLCAxMzo0MzoyMCk6Cn4jISBvbj1ab29rIG90PTE2MDY5OTkzOTIgb2c9ZGlza3Vzc2lvbgp+IyEgcm49Tm9uZHJ1bSBydD0xNjA2OTk4MTY1IHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xNjA2ODY2MTA4CkRhcyBpc3QgYXVjaCBlaW4gR29ldHRlci1JbnNpZGVyOiBNZXJsaW4gaXN0IG1hbmNobWFsIGJlaW0KQmVmb2VyZGVybiBldHdhcyB6aWNraWcuIAoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjc6IE5hbWVuIGZ1ZXIgRWJlbmVuLU9iZXJtdWZ0aSBnZXN1Y2h0IChab29rLCAgMy4gRGV6IDIwMjAsIDEzOjQ4OjEwKToKfiMhIHJuPVplc3N0cmEgcnQ9MTYwNjk5OTYyMyByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTYwNjg2NjEwOApXaWU/IFdpciBoYWJlbiBGYWtlIE1lcmxpbnM/IAoKWm9vaywgZW50c2V0enQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogTmFtZW4gZnVlciBFYmVuZW4tT2Jlcm11ZnRpIGdlc3VjaHQgKEFudGhlYSwgIDMuIERleiAyMDIwLCAxNDoxMTozMik6Cn4jISBybj1DaGFnYWxsIHJ0PTE2MDcwMDA1NTUgcmc9ZGlza3Vzc2lvbgp+IyEgdGlkPTE2MDY4NjYxMDgKSGF0IE5pbHJlbSBkZW5uIGVpbmVuIFNwaXR6YmFydD8KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjI5OiBOYW1lbiBmdWVyIEViZW5lbi1PYmVybXVmdGkgZ2VzdWNodCAoQ2hhZ2FsbCwgIDMuIERleiAyMDIwLCAxNTowMToyOSk6Cn4jISBybj1BbnRoZWEgcnQ9MTYwNzAwMTA5MiByZz1zY2htYXJybgp+IyEgdGlkPTE2MDY4NjYxMDgKRGEgZXIgYXVzIGVpbmVyIFBhcmFsbGVsd2VsdCBrb21tdCwgaGF0IGVyIG5hdHVlcmxpY2ggZWluZW4gVHJhYnp0aXBzLgoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjIzOiBOYW1lbiBmdWVyIEViZW5lbi1PYmVybXVmdGkgZ2VzdWNodCAoR2xvaW5zb24sICA0LiBEZXogMjAyMCwgMTM6MDY6MzEpOgp+IyEgcm49UnVtYXRhIHJ0PTE2MDY5NDc3NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xNjA2ODY2MTA4Ckhhc3QgZHUgZGFzIGF1Y2ggenUgZGVpbmVyIEZyYXUgZ2VzYWd0LCB1bSBpaHJlIE5hbWVuc3ZvcnNjaGxhZWdlIGZ1ZXIgZGllCktpbmRlciBhYnp1d3Vlcmdlbj8gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yNDogTmFtZW4gZnVlciBFYmVuZW4tT2Jlcm11ZnRpIGdlc3VjaHQgKE11bmRyb24sICA1LiBEZXogMjAyMCwgMDk6NDY6NTApOgp+IyEgcm49R2xvaW5zb24gcnQ9MTYwNzA4MzU5MSByZz1zY2htYXJybgp+IyEgdGlkPTE2MDY4NjYxMDgKSWNoIGJpbiBhdWYgZWluZSBXZWJzZWl0ZSBnZXN0b3NzZW4gbWl0IGVpbmVyIGxhbmRpbmcgcGFnZSwgd2VsY2hlcyBudXIKZm9sZ2VuZGVuIFRleHQgYmVpbmhhbHRldDoKCldlbGNvbWUgLi4uCgpVbmZvcnR1bmF0ZWx5LCBkdWUgdG8gYWJ1c2UsIHRoaXMgc2l0ZSBpcyB0ZW1wb3JhcmlseSBub3QgYXZhaWxhYmxlIC4uLgoKSWYgeW91IGZlZWwgdGhpcyBpbiBlcnJvciwgc2VuZCBhIG1haWwgdG8gdGhlIGhvc3RtYXN0ZXIgYXQgdGhpcyBzaXRlLCBpZiB5b3UKYXJlIGFuIGFudGktc29jaWFsIGlsbC1iZWhhdmluZyBTUEFNLWJvdCwgdGhlbiBqdXN0IGdvIGF3YXkuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEJ1Z2ZpeCwgMTEuIERleiAyMDIwLCAxNToyMzozOCk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIEJhdWFyYmVpdGVyb3Jrc10gVGl6b25hLCBEdSBoYXN0IGVjaHQga2VpbmUgQWhudW5nIHZvbgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBCYXVhcmJlaXRlcm9ya3NdIHN0aWx2b2xsZW0gTWV0emVsbi4uLgpbTW9lcmRlcjpUaXpvbmFdIERhZnVlciBiaW4gaWNoIG5pY2h0IHRvdC4KW1RvZDpMYXJzXSBFaW4gT3JrIGhhdCBnZXJhZGUgVGl6b25hIHVtZ2VicmFjaHQuCltUb2Q6RGVyIE9ya10gV2lyIHNpbmQgT3JrISBXaWRlcnN0YW5kIGlzdCB6d2Vja2xvcyEgRGVpbiBXaXNzZW4gdW5kIERlaW5lCltUb2Q6RGVyIE9ya10gQXVzcnVlc3R1bmcgd3VyZGVuIGFzc2ltaWxpZXJ0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllc21hbCBrZWluZSBGTFcuLi4gKEFtYXJ5bGxpcywgMTEuIERleiAyMDIwLCAyMTo1Mjo1NSk6CkNoanVzaW1hIGlzdCBnZXJhZGUgaW5zIE1vcmdlbkdyYXVlbiBnZWtvbW1lbi4KW1RvZDpMYXJzXSBFaW5lIFZlcmdpZnR1bmcgaGF0IGdlcmFkZSBDaGp1c2ltYSB1bWdlYnJhY2h0LgoKR2VzdG9yYmVuIHdpcmQgaW1tZXIhCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW1hcnlsbGlzLCAyMC4gRGV6IDIwMjAsIDIyOjA0OjQwKToKW01vZXJkZXI6R2Vpc3QgZWluZXMgUmVoc10gVm9yc2ljaHQsIFdoaW5lIGdyZWlmdCBpbW1lciB2b24gaGludGVuIGFuIQpbVG9kOkxhcnNdIEVpbiBXZWlobmFjaHRzbWFubiBoYXQgZ2VyYWRlIFdoaW5lIHVtZ2VicmFjaHQuCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yODogTmFtZW4gZnVlciBFYmVuZW4tT2Jlcm11ZnRpIGdlc3VjaHQgKEFtYXJ5bGxpcywgIDMuIEphbiAyMDIxLCAyMDoxNzowOCk6Cn4jISBybj1BbmF0b2wgcnQ9MTYwOTY5ODY3MSByZz1kaXNrdXNzaW9uCn4jISB0aWQ9MTYwNjg2NjEwOApEYXMgZXJpbm5lcnQgbWljaCBhbiAid2hvIHRoZSBmdWNrIGlzIEdlbmVyYWwgRmFpbHVyZSBhbmQgd2h5IGlzIGhlIHJlYWRpbmcgbXkKaGFyZCBkaXNrPyIgOi0pCgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjk6IE5hbWVuIGZ1ZXIgRWJlbmVuLU9iZXJtdWZ0aSBnZXN1Y2h0IChSdW1hdGEsICA1LiBKYW4gMjAyMSwgMDA6MjA6MzQpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTE2MDk3MDE0Mjggcmc9c2NobWFycm4KfiMhIHRpZD0xNjA2ODY2MTA4CkRhY2h0ZSBpY2ggYXVjaC4gVWVicmlnZW5zIGlzdCBHZW5lcmFsIEZhaWx1cmUgZGVyIFZvcmdlc2V0enRlCnZvbiBLZXJuZWwgUGFuaWMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpBYmdlZmFuZ2VuIChOb3RzdHJvbSwgIDUuIEphbiAyMDIxLCAyMDoxNjozMCk6CkFtYXJ5bGxpcyBpc3QgZ2VyYWRlIGlucyBNb3JnZW5HcmF1ZW4gZ2Vrb21tZW4uCkRlaW5lIEZyZXVuZGluIEFtYXJ5bGxpcyB0ZWlsdCBEaXIgbWl0OiBuYW1wCltBYmVudGV1ZXI6PFF1ZXN0Pl0gVHVhbiBoYXQgZ2VyYWRlIGVpbiBBYmVudGV1ZXIgYmVzdGFuZGVuOiBGaW5kZSBkaWUgRmVlCltBYmVudGV1ZXI6PFF1ZXN0Pl0gQW1hcnlsbGlzIAoKU0NOUiwKTm90c3Ryb20uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQWJnZWZhbmdlbiAoQW1hcnlsbGlzLCAgNS4gSmFuIDIwMjEsIDIwOjE4OjA4KToKfiMhIHJuPU5vdHN0cm9tIHJ0PTE2MDk4NzQxOTAgcmc9c2NobWFycm4KfiMhIHRpZD0xNjA5ODc0MTkwCkxhdyBuZXZlciBzbGVlcHMhCgpBbWEqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNjaG9lbmUgQmVzY2hlcnVuZyAoWm9vaywgMTEuIEphbiAyMDIxLCAxMzowNTo0Myk6Cn4jISBybj1Ob3RzdHJvbSBydD0xNjEwMjg5NzAxIHJnPWdpbGRlbi5rYWVtcGZlcgp+IyEgdGlkPTE2MTAyODk3MDEKRGFua2UgZnVlcnMgVW1iYXVlbi4KCk51ciwgd2VyIGlzdCBkaWVzZXIgSGVyciwgdm9uIGRlbSBkYSBkaWUgUmVkZT8gCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNjaG9lbmUgQmVzY2hlcnVuZyAoQ2hhZ2FsbCwgMTEuIEphbiAyMDIxLCAxMzo0Mjo0NCk6Cn4jISBybj1ab29rIHJ0PTE2MTAzNjY3NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xNjEwMjg5NzAxCkhlIHdobyBtdXN0IG5vdCBiZSBuYW1lZC4KQWx0ZXJuYXRpdjogWW91IGtub3cgd2hvLgoKTUMKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU2Nob2VuZSBCZXNjaGVydW5nIChHbG9pbnNvbiwgMTEuIEphbiAyMDIxLCAxNTozOTowMSk6Cn4jISBybj1ab29rIHJ0PTE2MTAzNjY3NDMgcmc9c2NobWFycm4KfiMhIHRpZD0xNjEwMjg5NzAxClBmZmYuIEVuYWJsZXIuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUHJlaXNldCBNYWx2b2xpbywgZGVuIG5ldWVuIFNoZXJyaWZzYW53YWVydGVyIChEZWFkZHksIDEzLiBKYW4gMjAyMSwgMTk6MjM6MDApOgpbQWxsZ2VtZWluOk1hbHZvbGlvcyBzY2hhdXQgbnVyIG1hbCBrdXJ6IG5hY2ggZGVtIFJlY2h0ZW4uXQpbTW9lcmRlcjpHZWlzdCBlaW5lcyBLb2VycGVyc10gRW5ncmltbSBoYXQgZWluIFphcC1Ub29sIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFByZWlzZXQgTWFsdm9saW8sIGRlbiBuZXVlbiBTaGVycmlmc2Fud2FlcnRlciAoQW1hcnlsbGlzLCAxMy4gSmFuIDIwMjEsIDIyOjM0OjIyKToKfiMhIHJuPURlYWRkeSBydD0xNjEwNTYyMTgwIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTYxMDU2MjE4MApCZWltIEFud2FlcnRlciB3aXJkcyB3b2hsIG1heC4gYmxlaWJlbiEKCnNjbnIKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEJvcnpkcmFrb25pZXIgKE11bmRyb24sIDIwLiBKYW4gMjAyMSwgMjE6NDE6MzIpOgp+IyEgcm49QnVnZml4IHJ0PTE2MTA0Nzc2OTUgcmc9ZC5nZWJpcmdlCn4jISB0aWQ9MTYxMDQ3NzY5NQpmd2lua2UKRHUgd2lua3N0IERlaW5lbiBGcmV1bmRlbiBhdXMgZGVyIEZlcm5lIHp1LiAKPiAKRGFzIEVpbmhvcm4gdmVyYWJzY2hpZWRldCBzaWNoLgpEYXMgRWluaG9ybiB0cmFidCBuYWNoIGhhdXNlLgogCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGdWVyIEFuZmFlbmdlci4uLiAoQW1hcnlsbGlzLCAyMy4gSmFuIDIwMjEsIDAxOjUyOjE2KToKaHR0cHM6Ly93d3cuaG9ybm94ZS5jb20vd3AtY29udGVudC9waWNkdW1wcy9waWNkdW1wNzA5L3BpY2R1bXA3MDlfMDcwLmpwZwoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdlZmFlbmduaXNpbnNlbCAoWm9vaywgMjcuIEphbiAyMDIxLCAxMjoxMzo0OSk6Cn4jISBvbj1Bcmsgb3Q9MTYxMTY5NTk1NyBvZz1kLnZsYW5kCn4jISBybj1CdWdmaXggcnQ9MTYxMTY3MjU0MiByZz1kLnZsYW5kCn4jISB0aWQ9MTYxMTY3MjU0MgpJc3QgZWluIFJhdW0tWmVpZy1HZWZ1ZWdlIHNvd2FzIHdpZSBlaW4gU2hvdyBSb29tPyA7XikKCgogICAgICAgICAgICAgICoqKiBBUksgKiB0aGUgKiBNYWduaWZpY2VudCAqKioKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpXdXNzdGVuIHdpciBNYWVubmVyIC4uLiBkaWUgV2FmZmVuIGRlciBGcmF1ZW4gLi4uIChBcmssIDI3LiBKYW4gMjAyMSwgMjI6MjE6NDYpOgpEZWluZSBGcmV1bmRpbiBTYXJheSBrbnVkZGVsdCBEaWNoIGF1cyBkZXIgRmVybmUuCltUb2Q6TGFyc10gRWluZSBWZXJnaWZ0dW5nIGhhdCBnZXJhZGUgVmlnbyB1bWdlYnJhY2h0CgoKICAgICAgICAgICAgICAqKiogQVJLICogdGhlICogTWFnbmlmaWNlbnQgKioqCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChBbWFyeWxsaXMsIDEwLiBGZWIgMjAyMSwgMjE6MjA6NDMpOgpbTW9lcmRlcjpHZWlzdCBlaW5lcyBPcmtzXSBGZWllcmFiZW5kISBEYW5rZSwgVGl6b25hIQpbTW9lcmRlcjpUaXpvbmFdIEhhY2tmcmVzc2UuIEFiZXIgZWNodC4KW1RvZDpMYXJzXSBFaW4gT3JrIGhhdCBnZXJhZGUgVGl6b25hIHVtZ2VicmFjaHQuCltUb2Q6RGVyIE9ya10gV2lyIHNpbmQgT3JrISBXaWRlcnN0YW5kIGlzdCB6d2Vja2xvcyEgRGVpbiBXaXNzZW4gdW5kIERlaW5lCltUb2Q6RGVyIE9ya10gQXVzcnVlc3R1bmcgd3VyZGVuIGFzc2ltaWxpZXJ0LgoKCkFtYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEx1cGluZW50YWwgKEFtYXJ5bGxpcywgMjIuIEZlYiAyMDIxLCAyMjozMTozNSk6Cn4jISBybj1CdWdmaXggcnQ9MTYxNDAyNTI2NCByZz1kLmdlYmlyZ2UKfiMhIHRpZD0xNjE0MDI1MjY0Ck9jaCB3aWUgc2NoYWRlLi4uIDspCgpBbWEqLCBkZW5rdCBpbW1lciBub2NoIGdlcm5lIGFuIGRpdmVyc2UgbHVzdGlnZSBFcmVpZ25pc3NlIHp1cnVlY2ssIGFscyBkYXMKSG9lbGxlbmZldWVyIG5vY2ggcXVhc2kgdWViZXJhbGwgZ2luZyA7KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMjA3MTkwOiBIYWNoLi4uIG51IGlzIHdhcyBkcmluLCBpbm5lciBNUEEuIChNdW5kcm9uLCAyOC4gRmViIDIwMjEsIDIyOjEzOjEzKToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNjE0NDY1ODY4IHJnPW1lZ2FzY2htYXJybgp+IyEgdGlkPTk4MjMyODI3OApBbWEgZ2FueiBzZWxic3Rsb3MKCltEdW5rZWxlbGZlbjpUaXpvbmFdIGRpZSBHZWduZXIgbXVlc3NlbiBoaW5yZWljaGVuZCBzdGFyayBzZWluIHVuZCBpY2ggZ2xhdWIKW0R1bmtlbGVsZmVuOlRpem9uYV0gd2VubiBEdSBudXIgdmVyc2Fnc3Qgd2VpbCBEZWluZSBSdWVzdHVuZyB6dSBzY2h3ZXIgaXN0CltEdW5rZWxlbGZlbjpUaXpvbmFdIGxlcm5zdCBEdSBlaCBuaWNodHMKW0R1bmtlbGVsZmVuOlBhbm55eF0gYWgsIGRhbm4gbGFnIGVzIGFuIGRlbiBnZWduZXJuLiBkYW5rZS4KW0dyYXRzOkFtYXJ5bGxpc10gYml0dGUgYml0dGUsIGltbWVyIGdlcm5lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4yMDcxOTE6IEhhY2guLi4gbnUgaXMgd2FzIGRyaW4sIGlubmVyIE1QQS4gKEFtYXJ5bGxpcywgMjguIEZlYiAyMDIxLCAyMjoxNzoyMCk6Cn4jISBybj1NdW5kcm9uIHJ0PTE2MTQ1NDY3OTMgcmc9c2NobWFycm4KfiMhIHRpZD05ODIzMjgyNzgKU28gYmluIGljaCBoYWx0IC0gaW1tYSBsaWVocCB1bmQgbmV0dCA7KQoKRGF0IEZlZWNoZW4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBBZmZlIGF1cyBEdXJpYW5zIFpvbyAoSHVyYXhwcmF4LCAgOC4gTWFyIDIwMjEsIDExOjQ3OjE4KToKfiMhIHJuPUFyYXRob3JuIHJ0PTE2MTQ4OTgyMDcgcmc9ZC53dWVzdGUKfiMhIHRpZD0xNjE0ODk4MjA3Ckthbm4gc2ljaCBCYW5hbmUgZGFubiB3aWVkZXIgZWlubG9nZ2VuIG9obmUgdm9uIHNlaW5lbSBBbmdzdGdlZ25lciBnZWZyZXNzZW4KenUgd2VyZGVuLCBvZGVyIHdhciBkYXMgZWluIEFmZmUgYXVzIGRlbSBEc2NodW5nZWw/CgpodXJheAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXIChOaWFsLCAxOC4gTWFyIDIwMjEsIDIxOjI5OjM1KToKTmFtZW5sb3Mgc2FndDogdW5kIG1hbiBoYXQgbWVociBzcGllbHplaXQgd2FzIGphIGlucyByYW5raW5nIGVpbmdlaHQgOykKRHUgc2Fnc3Q6IHNwaWVsemVpdCBnaWJ0IG5peApQbG9ldHpsaWNoIHdlaWNodCBhbGxlcyBMZWJlbiBhdXMgTmFtZW5sb3MuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRGVyIEVpc3N0YWIgKEdsb2luc29uLCAxOS4gTWFyIDIwMjEsIDIyOjA1OjE3KToKfiMhIHJuPUJ1Z2ZpeCBydD0xNjE2MDYwOTkzIHJnPWQuZ2ViaXJnZQp+IyEgdGlkPTE2MTYwNjA5OTMKTWl0IEJvaW5nIHdhZXJzIGRhcyBuaWNodCBwYXNzaWVydCEKCjptdXJtZWx0OiBNdWVuc3RlcmFuZXIgRmlsei4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IERlciBFaXNzdGFiIChDcm9mdCwgMTkuIE1hciAyMDIxLCAyMzoyNDozNCk6Cn4jISBybj1HbG9pbnNvbiBydD0xNjE2MTg3OTE3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTYxNjA2MDk5MwpIZXksIGFuIGRlciBEaXNrdXNzaW9uIHdhcmVuIHp3ZWkgS2FybHNydWhlciBiZXRlaWxpZ3QuCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogRGVyIEVpc3N0YWIgKE5vbmRydW0sIDIwLiBNYXIgMjAyMSwgMjA6MjI6MjIpOgp+IyEgcm49Q3JvZnQgcnQ9MTYxNjE5MjY3NCByZz1zY2htYXJybgp+IyEgdGlkPTE2MTYwNjA5OTMKW0FiZW50ZXVlcjpMb2tpXSB3YXMgaGlsZnQgZ2VnZW4gbmFjaHdpcmt1bmdlbiBkZXIgbmFycmVuYmFsbHF1ZXN0PyBkZXIgaGVpbGVyCltBYmVudGV1ZXI6TG9raV0ga2F0em1hbmR1IG1laW50LCBtaXIgZmVobHQgbmljaHRzCltLYXJhdGU6RnVuYWtvc2hpXSBEZW5rZSBpbW1lciBuYWNoIHVuZCB2ZXJzdWNoZSBkaWNoIHN0YWVuZGlnIGFtIE5ldWVuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRGllIEJyYWRkb25zIChBcmF0aG9ybiwgMjUuIE1hciAyMDIxLCAyMTozODozOCk6Cn4jISBvbj1BcmF0aG9ybiBvdD0xNjE2NzA0NjQzIG9nPXdpdHplCk1hcmdpZSBCcmFkZG9uIHNhZ3Q6IE93ZW4gQnJhZGRvbiBoYXQga2VpbmVuIG1hdGVyaWVsbGVuIFdlcnQsIHR1dCBtaXIgbGVpZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBEaWUgQnJhZGRvbnMgKEFyYXRob3JuLCAyNS4gTWFyIDIwMjEsIDIxOjQzOjI4KToKfiMhIHJuPUFyYXRob3JuIHJ0PTE2MTY3MDQ3MTggcmc9c2NobWFycm4KfiMhIHRpZD0xNjE2NzA0NzE4Ck1hcmdpZSBCcmFkZG9uIHNhZ3Q6IE1hcmdpZSBCcmFkZG9uIGlzdCBuaWNodCBsZWVyIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKTWFnaWVyZnJlaSAoWmFwaG9iLCAgNC4gQXByIDIwMjEsIDEwOjA0OjAyKToKICAgICAgTGlzdGUgZGVyIE1pdHNwaWVsZXIgdm9tIFNvbiwgIDQuIEFwciAyMDIxLCAxMDowMjo0MCAoOCBUZWlsbmVobWVyKSAgICAKCk5hbWVubG9zLi4uLi4uLi4ucyBLcnVtYmwuLi4uLi4uLi5JLlogWmFwaG9iLi4uLi4uLi4uLi5TIENhbHVhZy4uLi4uLi4uLmkuUwpWYW5pci4uLi4uLi4uLi4uLlMgTXVuZHJvbi4uLi4uLi4uaS5aIE5lZmlzLi4uLi4uLi4uLmouUyBHdWxhaHIuLi4uLi4uLi5qLlMKClphcCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjQ6IENyYXNoIHZvbSAxLjQuMjAyMSAoQmFtYnVsa28sICA1LiBBcHIgMjAyMSwgMTI6MjU6MjIpOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTYxNzUyOTk1MyByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTE2MTcyODQxMTAKaGlsZmUgbXVkcmVjaG5lciBrYW5udGUgaWNoIG5vY2ggZ2FyIG5pY2h0LiBJY2ggaGFiZSBkaXJla3QgZGFyYXVmIG1hbCBpbSBSTApoaWxmZSB1bml2ZXJzdW0gYXVzcHJvYmllcnQuIEhhdCBsZWlkZXIgbmljaHQgZ2VrbGFwcHQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBDcmFzaCB2b20gMS40LjIwMjEgKEFtYXJ5bGxpcywgIDUuIEFwciAyMDIxLCAxMzozOTozMSk6Cn4jISBybj1CYW1idWxrbyBydD0xNjE3NjE4MzIyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTYxNzI4NDExMApKZXR6dCBoYXRzIG1pY2ggZXJ3aXNjaHQ6IEhhYmUgbWlyIGhpZXIgaW4gZGVyIFJlaGEgQ29yb25hIGVpbmdlZmFuZ2VuLgpBZXR6ZW5kLiBEYXMgZWluemlnIFBvc2l0aXZlIGlzdCwgZGFzcyBpY2ggamV0enQgZGFzIFppbW1lciBmdWVyIG1pY2ggYWxsZWluCmhhYmUuCgpBbWEqCgpQUzogRmluZ2VycyBjcm9zc2VkLi4uCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBDcmFzaCB2b20gMS40LjIwMjEgKEFyYXRob3JuLCAgNS4gQXByIDIwMjEsIDEzOjQzOjA0KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNjE3NjIyNzcxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTYxNzI4NDExMApPaGEsIGFsbGVzIEd1dGUgdW5kIGd1dGUgQmVzc2VydW5nIQoKR3J1c3MsIEFyYXRob3JuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNzogQ3Jhc2ggdm9tIDEuNC4yMDIxIChWYW5pciwgIDUuIEFwciAyMDIxLCAxNDoyMTozMSk6Cn4jISBybj1BcmF0aG9ybiBydD0xNjE3NjIyOTg0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTYxNzI4NDExMApJY2ggZHJ1ZWNrIERpciBkaWUgRGF1bWVuLgpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogQ3Jhc2ggdm9tIDEuNC4yMDIxIChBbWFyeWxsaXMsICA1LiBBcHIgMjAyMSwgMTY6MjU6NTApOgp+IyEgcm49VmFuaXIgcnQ9MTYxNzYyNTI5MSByZz1zY2htYXJybgp+IyEgdGlkPTE2MTcyODQxMTAKSWNoIGRhbmtlIEV1Y2guCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV42OiBDcmFzaCB2b20gMS40LjIwMjEgKFJ1bWF0YSwgIDYuIEFwciAyMDIxLCAwODo0NTowNSk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTYxNzYyMjc3MSByZz1zY2htYXJybgp+IyEgdGlkPTE2MTcyODQxMTAKT2ggTWlzdCEgR3V0ZSBCZXNzZXJ1bmcuClJ1bSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVsaWNoIGJlaSBkZW4gT3JrcyAoVmFuaXIsIDE4LiBBcHIgMjAyMSwgMTM6MDQ6MzApOgpFaW4gT3JrIGdpYnQgZWluZW0gQWJiaWxkIGVpbmVzIE9ya3MgUnVlY2tlbmRlY2t1bmcuCgpJY2ggYmluIGltbWVyIG5vY2ggYW11ZXNpZXJ0LgpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKWnVrdW5mdHN2aXNvbj8gKEJlbmRlaWdpZCwgMjguIEFwciAyMDIxLCAxMDo1OTo0OCk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIFZhbXBpcnNdIEljaCBrYW5uIG5pY2h0IGdsYXViZW4sIGRhc3MgZGFzIGdlcmFkZSBwYXNzaWVydApbTW9lcmRlcjpHZWlzdCBlaW5lcyBWYW1waXJzXSBpc3QhCktpbGthbmkgaXN0IGdlcmFkZSBpbnMgTW9yZ2VuR3JhdWVuIGdla29tbWVuLgoKR3JpbnNlbmQsCkJlbmRlaWdpZAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeODogVC1TaGlydHMgKFpvb2ssIDEwLiBNYWkgMjAyMSwgMTA6MTg6NTMpOgp+IyEgb249Wm9vayBvdD0xNjIwNjM0NzI2IG9nPXBhcnR5Cn4jISBybj1ab29rIHJ0PTE2MjA2MzQ0Mzkgcmc9cGFydHkKfiMhIHRpZD0xNjIwMTE3NjE4CktvcnJla3R1cjogTGFlc3RlcnVuZ2VuIHZvbiBNdWRnb2V0dGVybiBtb2VjaHRlCmljaCBuaWNodCBhbHMgTW90aXYuIF5eIAoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeOTogVC1TaGlydHMgKFJ1bWF0YSwgMTAuIE1haSAyMDIxLCAxMDozMDozOSk6Cn4jISBybj1ab29rIHJ0PTE2MjA2MzQ3MzMgcmc9c2NobWFycm4KfiMhIHRpZD0xNjIwMTE3NjE4Ci4uLiBzb2xhbmdlIGVzIG51ciB1bSBab29rIGdlaHQsIGtvZW5uZW4gd2lyIGRydWViZXIgcmVkZW4uIDstKQpSdW0qKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMTA6IFQtU2hpcnRzIChaZXNzdHJhLCAxMC4gTWFpIDIwMjEsIDEwOjMzOjQxKToKfiMhIHJuPVJ1bWF0YSBydD0xNjIwNjM1NDM5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTYyMDExNzYxOApXaXIga29lbm5lbiBqYSBhbGxlIHVlYmVyIEpvZiBsYWVzdGVybiwgZGVyIHZlcnNjaGxhZWZ0IGRhcy4gOy0pCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFtYXJ5bGxpcywgMjQuIEp1bCAyMDIxLCAyMDozMzoxMSk6ClNhbHZhZG9yIHJ1ZnQ6IGhpbGZlIEthdGkKW1RvZDpMYXJzXSBFaW4genVnZWZyb3JlbmVyIFdlaWhlciBoYXQgZ2VyYWRlIFNhbHZhZG9yIHVtZ2VicmFjaHQuCltUb2Q6RWluIHp1Z2Vmcm9yZW5lciBXZWloZXJdIEhleSwgZGFzIEVpcyBpc3Qgc2NodWxkISBFcyB3YXIgd29obCBlaW5mYWNoCltUb2Q6RWluIHp1Z2Vmcm9yZW5lciBXZWloZXJdIG5pY2h0IHN0YWJpbCBnZW51Zy4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTdGF0aSBpbiBCb2NodW0gYW0gOC44LiAoQW1hcnlsbGlzLCAgNy4gQXVnIDIwMjEsIDIwOjEyOjUxKToKfiMhIHJuPUh1bW5pIHJ0PTE2MjgzNDQ5Njkgcmc9dHJlZmZlbi5iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTYyODM0NDk2OQpEZXIgQmllcmdhcnRlbiByZWljaHQgRGlyIGRvY2gsIEh1bW5pIDspCgpBbWEqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmVmZXJlbnpwcm9ibGVtIChDcm9mdCwgMjMuIEF1ZyAyMDIxLCAyMToyNzoyNyk6Cn4jISBybj1BbnRoZWEgcnQ9MTYyOTcwOTU4NCByZz13aXR6ZQp+IyEgdGlkPTE2Mjk3MDk1ODQKOmp1YmVsdCBBbnRoZWEgenU6CgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBSZWZlcmVuenByb2JsZW0gKEFudGhlYSwgMjQuIEF1ZyAyMDIxLCAxMzowNToyMSk6Cn4jISBybj1Dcm9mdCBydD0xNjI5NzQ2ODQ3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTYyOTcwOTU4NApBYmVyIGJpdHRlIGRvY2ggOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBHcnVlbmUgdW5kIFN0cm9tIChDcm9mdCwgMjIuIFNlcCAyMDIxLCAxODo1OTo1Myk6Cn4jISBybj1BbWFyeWxsaXMgcnQ9MTYzMjE0NTA0OCByZz13aXR6ZQp+IyEgdGlkPTE2MzIxNDUwNDgKQmVpIHNvICdXaXR6ZW4nIGZyYWcgaWNoIG1pY2ggamEgZ2VybmUgb2Igc2ljaCBhbSBXaXR6IGV0d2FzICBhZW5kZXJ0IHdlbm4KbWFuIGRpZSBQZXJzb25lbmdydXBwZW4gYnp3IE5hbWVuIGF1c3RhdXNjaHQuICBJbiBkaWVzZW0gRmFsbGUgaGF0IHNpY2gKZnVlciBtaWNoIG5peCBnZWFlbmRlcnQuIFNvIG9kZXIgc28gJ05pY2h0IFdpdHppZycgZnVlciBtaWNoLgoKQ3JvZnQKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogR3J1ZW5lIHVuZCBTdHJvbSAoQW50aGVhLCAyMy4gU2VwIDIwMjEsIDA4OjIwOjE3KToKfiMhIHJuPUNyb2Z0IHJ0PTE2MzIzMjk5OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xNjMyMTQ1MDQ4CkRhcyBpc3QgZWluIGtsYXNzaXNjaGVyICJEYWQtSm9rZSIsIHdhcyBlaW4gVmF0ZXIgbWl0IHNlaW5lbiBLaW5kZXJuIHNvCmFuc3RlbGx0LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBHcnVlbmUgdW5kIFN0cm9tIChCYW1idWxrbywgMjMuIFNlcCAyMDIxLCAxMTowNzo0Nik6Cn4jISBybj1Dcm9mdCBydD0xNjMyMzI5OTkzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTYzMjE0NTA0OApEZXIgJ1dpdHonIHNwaWVsdCBhdWYgZGllIGluIG1hbmNoZW4gS3JlaXNlbiB2ZXJicmVpdGV0ZSBGYWxzY2htZWxkdW5nIGFuLApkYXNzIEJhZXJib2NrIGdlc2FndCBoYWJlbiBzb2xsLCBkYXNzIG1hbiBtaXQgR2xhc2Zhc2VybiBTdHJvbSB0cmFuc3BvcnRpZXJlbgprYW5uIHVuZCBkYWhlciBrZWluZSBBaG51bmcgdm9uIFN0cm9tIGhhdC4gSGF0IHNpZSBhYmVyIG5pZSBzbyBnZXNhZ3QsIG5pY2h0CmVpbm1hbCBhbnNhdHp3ZWlzZS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IEdydWVuZSB1bmQgU3Ryb20gKERlYWRkeSwgMjMuIFNlcCAyMDIxLCAxMTo0NDozMCk6Cn4jISBybj1CYW1idWxrbyBydD0xNjMyMzg4MDY2IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTYzMjE0NTA0OApXYXMgYXVjaCBnYXIgbmljaHQgbWFsIHNvIGZhbHNjaCB3YWVyZSwgUG9GIGlzdCBlaW4gRGluZyB1bmQgbWFuY2htYWwgc29nYXIKc2lubnZvbGwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV40OiBHcnVlbmUgdW5kIFN0cm9tIChBbmF0b2wsIDIzLiBTZXAgMjAyMSwgMTE6NTA6NDYpOgp+IyEgcm49RGVhZGR5IHJ0PTE2MzIzOTAyNzAgcmc9c2NobWFycm4KfiMhIHRpZD0xNjMyMTQ1MDQ4CldpciByZWRlbiBoaWVyIHZvbiBTY2h3dXJibGVybiB1bmQgTmVnYXRpdndhaGxrYWVtcGZlcm4uIEVyd2FydGUgZGEgCmJpdHRlIGtlaW5lIHRpZWZlcmVuIFBoeXNpa2tlbm50bmlzc2UuCgpXb2JlaS4gInRpZWZlcmUiLiBEZXIgRUVTIG11ZXNzdGUgYW4gdW5kIGZ1ZXIgc2ljaCBzY2hvbiBnZW51ZWdlbiwgdW0Kc2NobGllc3NlbiB6dSBrb2VubmVuLCBkYXNzIG1hbiB1ZWJlciBlaW5lbiBMaWNodGxlaXRlciBFbmVyZ2llIAp0cmFuc3BvcnRpZXJ0LCBkaWUgbmF0dWVybGljaCBpbiBTdHJvbSAodW5kIFdhZXJtZSA7KSkgZ2V3YW5kZWx0IAp3ZXJkZW4ga2Fubi4KCldvYmVpLiAiTmVnYXRpdndhaGxrYWVtcGZlciIuIEZ1ZXIgbWljaCBpc3RzIGF1Y2ggZWluZSBXYWhsIGRlcyBnZXJpbmdzdGVuClVlYmVscy4gRGFzIGhlaXNzdCwgZGFzcyBzaWNoIGRpZSBhbmRlcmVuIGRpc3F1YWxpZml6aWVyZW4sIHdlaWwgc2llIF9ub2NoCnNjaGxpbW1lcl8gc2luZCBhbHMgZGFzLCB3YXMgaWNoIGFrdHVlbGwgenUgd2FlaGxlbiBnZWRlbmtlLiBEZXIgR2VkYW5rZQoiSWNoIHdhZWhsZSBYWSwgd2VpbCBzaWUgZWluZmFjaCBOT0NIIEJFU1NFUiBzaW5kIGFscyBaWCEiLCBkZXIgd2lsbCBzaWNoCmhldWVyIGVpbmZhY2ggbmljaHQgbWFuaWZlc3RpZXJlbi4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBHcnVlbmUgdW5kIFN0cm9tIChBbWFyeWxsaXMsIDIzLiBTZXAgMjAyMSwgMTM6Mzk6MDMpOgp+IyEgcm49QW5hdG9sIHJ0PTE2MzIzOTA2NDYgcmc9c2NobWFycm4KfiMhIHRpZD0xNjMyMTQ1MDQ4CkRlbiBBdXNzcHJ1Y2ggdm9uIEJCIGtlbm5lIGljaCBuaWNodC4gTWlyIGthbSBkZXIgV2l0eiBlaGVyIGRhZHVyY2ggYmVncnVlbmRldAp1bnRlciwgZGFzcyBkaWUgRGFtZSBlaW5mYWNoIHNlaHIgbmFpdiB1bmQgKEFjaHR1bmc6IEVybmV1dGVyIFN0cm9td2l0eikgZnVlcgptaWNoIG5pY2h0IGFscyBkaWUgaGVsbHN0ZSBCaXJuZSBhdWYgZGVyIExhbXBlIHJ1ZWJlcmtvbW10LiBBbmdlZmFuZ2VuIGhhdCBkYXMKamEgbWl0IGRlciAiS29ib2xkIi1HZXNjaGljaHRlLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNjogR3J1ZW5lIHVuZCBTdHJvbSAoRGVhZGR5LCAyMy4gU2VwIDIwMjEsIDEzOjQxOjE5KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNjMyMzk3MTQzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTYzMjE0NTA0OApOYWphLCB3ZW5uIGVzIG5lbiBJbnRlbGxlbnp2ZXJnbGVpY2ggd2FlcmUsIHdhZXJlIGVzIG5lbiBSZW5uZW4gendpc2NoZW4KV2FnZW5rbmVjaHQgdW5kIHZpZWxsZWljaHQgQ2hhZCBMaW5kbmVyLgoKR2VyYWRlIG11c3MgbWFuIGphIG51ciBndWNrZW4sIHdlciBkaWUgd2VuaWdzdGVuIFZlcmJyZWNoZW4gdW5kIFVudGF0ZW4KYW5nZXN0ZWxsdCBoYXQgdW5kIGRhIGlzdCBkaWUgV2FobCBhdWNoIHdpZWRlciB6aWVtbGljaCBlaW5kZXV0aWcuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IFNjaHdhcnplIHVuZCBFaHJsaWNoa2VpdCAoQW5hdG9sLCAyNy4gU2VwIDIwMjEsIDEwOjE1OjM1KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNjMyNjAwMjU2IHJnPXdpdHplCn4jISB0aWQ9OTgyMzI4Mjc4Ck9oLCB1bmQgbWFuY2htYWwgZ2V3aW5uZW4gc2llIGR1cmNoIGRpZSBXaWVkZXJhdWZsYWdlIGFuIFF1YWxpdGFldCwgCndlbm4gZGFzIE5hcnJhdGl2IHp1bSBuZXVlbiBQb2xpdGlrZXIgYmVzc2VyIHBhc3N0LiBBcm1pbiBMYXNjaGV0IGhhdApkZXV0bGljaCBlaGVyIGRlbiBIYWJpdHVzIGVpbmVzIGdlc3B1ZXJsb3NlbiBTY2h1c3NlbHMgYWxzIEhlbG11dCBLb2hsLgpXZW5uIGVzIGRhcnVtIGdlaHQsIG1pdCBkZW0gU2NodWxyYW56ZW4gc3RhdHQgZWluZW0gRmFsbHNjaGlybSBhdXMgZGVtCkZsdWd6ZXVnIHp1IHNwcmluZ2VuLCAuLi4gYW5kZXJlcnNlaXRzLiBWaWVsbGVpY2h0IHdpcmQgZXMgd2VuaWdlciAKbHVzdGlnLCB3ZW5uIG1hbiBzaWNoIHNhZ2VuIG11ZXNzdGU6ICJOYWphLCBERU0ga2FubiBkYXMgc2Nob24gcGFzc2llcmVuLiIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGcmVpdGFncywgaGFsYiA5IGltIE1vcmdlbkdyYXVlbiAoWmFwaG9iLCAyOS4gT2t0IDIwMjEsIDIxOjAyOjQ4KToKQW1hcnlsbGlzIHJ1ZnQ6IFdPQ0hFTkVOREUhIApOb25kcnVtIHJ1ZnQ6IFdJRSBEQVMgRFVGVEVUISBLUkFFRlRJRywgREVGVElHIC4uLgpEZWFkZHkgcnVmdDogV1VFUlpJRyBHVVQsIEdPQkxJTlNDSEUgQVVTIERFTSBXRUlTU1RBTk5FTlJBVUNICkVpc2tyaXN0YWxsIHJ1ZnQ6IG51ciBlY2h0IG1pdCBkZXIgTXVlaGxlPwpOb25kcnVtIHJ1ZnQ6IE5BVFVSR0VXVUVSWlQgVU5EIERBUyBTQ0hNRUNLVCBNQU4gQVVDSCEKClphcCoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGcmVpdGFncywgaGFsYiA5IGltIE1vcmdlbkdyYXVlbiAoQW1hcnlsbGlzLCAyOS4gT2t0IDIwMjEsIDIxOjIwOjQzKToKfiMhIHJuPVphcGhvYiBydD0xNjM1NTM0MTY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTYzNTUzNDE2OApVbmQgZGEgc2FjaCBub2NoIG1hIGVpbmVyLCBXZXJidW5nIGJsZWlidCBuaWNoIGltIEtvcHBlIGhhZW5nZW4uLi4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBadXNjaG5pdHQgRXJ6bWFnaWVyLUF1ZmdhYmVuICAoRGVhZGR5LCAyMC4gRGV6IDIwMjEsIDA5OjIzOjU5KToKfiMhIHJuPVpvb2sgcnQ9MTYzOTk4NDkzOCByZz1iZWthbm50bWFjaHVuZ2VuCn4jISB0aWQ9MTYzOTk4NDkzOApJc3QgZGFzIGR1cmNoIGRpZSBCbHVtZSBlaW5lIEFia3VlbmRpZ3VuZyBkZXIgU2hha3ktUmFzc2U/IEJydW5vPyEgSGFzdCBEdSBkYXMKZ2Vob2VydD8hCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpGTFcgKEFtYXJ5bGxpcywgIDQuIEphbiAyMDIyLCAxOTozNDowNSk6CltNb2VyZGVyOkdlaXN0IGVpbmVzIE9ya3NdIExpZWJlciBlaW5lIEgyTy1WZXJnaWZ0dW5nLCBhbHMgdm9uIFZhbmlyIGVybW9yZGV0CltNb2VyZGVyOkdlaXN0IGVpbmVzIE9ya3NdIHp1IHdlcmRlbiEKW0JlaWxlaWQ6TXVuZHJvbiBkZW5rdCAgLiBvIE8gKEFscyBvYiBzaWNoIEthbmRyaSB1bSBlaW5lbiBPcmsgc2NoZXJ0Li4uKV0KW1RvZDpMYXJzXSBFaW4gUGFyYWxsZWx3ZWx0a2FyYXRlb3JrIGhhdCBnZXJhZGUgVmFuaXIgdW1nZWJyYWNodC4KCkFtYSogLiBvIE8gKGFuc2NoZWluZW5kIGRvY2gpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFNjaG90dGlzY2hlIExlYmt1Y2hlbiAoQmFtYnVsa28sIDEwLiBKYW4gMjAyMiwgMDg6MTk6NTQpOgp+IyEgcm49Tm9rIHJ0PTE2NDE3NTU2ODAgcmc9a29jaHJlemVwdGUKfiMhIHRpZD0xNjQxNzU1NjgwCkltIEphbnVhciBlaW5lIFJlemVwdCBmdWVyIExlYmt1Y2hlbiB6dSBwb3N0ZW4gdmVyc3RvZXNzdCBkb2NoIHNpY2hlciBnZWdlbgppcmdlbmR3ZWxjaGUgVU4tS29udmVudGlvbmVuLCBvZGVyPwoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBTY2hvdHRpc2NoZSBMZWJrdWNoZW4gKFplc3N0cmEsIDEwLiBKYW4gMjAyMiwgMDk6MDA6NDQpOgp+IyEgcm49QmFtYnVsa28gcnQ9MTY0MTc5OTE5NCByZz1zY2htYXJybgp+IyEgdGlkPTE2NDE3NTU2ODAKV2FydW0/IE1hbiBrYW5uIExlYmt1Y2hlbiBkb2NoIGF1Y2ggYXVzc2VyaGFsYiBkZXIgQWR2ZW50c3plaXQgYmFja2VuPwoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogU2Nob3R0aXNjaGUgTGVia3VjaGVuIChSdW1hdGEsIDEwLiBKYW4gMjAyMiwgMDk6NDQ6NTUpOgp+IyEgcm49WmVzc3RyYSBydD0xNjQxODAxNjQ0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTY0MTc1NTY4MApBdXNzZXIgYW4gSGFsbG93ZWVuLiBEYSBtdXNzIG1hbiBkYXMgR2ViZWNrIG1pdCAiVG90a3VjaGVuIiBhbnNwcmVjaGVuIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogU2Nob3R0aXNjaGUgTGVia3VjaGVuIChDaGFnYWxsLCAxMC4gSmFuIDIwMjIsIDExOjAwOjAzKToKfiMhIHJuPVJ1bWF0YSBydD0xNjQxODA0Mjk1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTY0MTc1NTY4MApJY2ggZmluZHMgdmllbCBzY2hsaW1tZXIsIGRhc3MgZGllIEVpZXIgZ2V0cmVlbm50IHdlcmRlbi4gRGEgaGFiZW4gendlaSBFaWVyCmVuZGxpY2ggbWFsIGVpbmUgRnJldW5kc2NoYWZ0IGluIGRlciBQYWNrdW5nIHp1ZWluYW5kZXIgYXVmZ2ViYXV0IHVuZCBwcm9tcHQKa29tbXQgd2VyIGRhaGVyIHVuZCB0cmVubnQgZGllIHdpZWRlci4KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBTY2hvdHRpc2NoZSBMZWJrdWNoZW4gKE5vbmRydW0sIDEwLiBKYW4gMjAyMiwgMTE6MjA6NDQpOgp+IyEgcm49Q2hhZ2FsbCBydD0xNjQxODA4ODAzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTY0MTc1NTY4MApKZXR6dCBtYWwgQWJzZWl0cyBkZXIgQmVtZXJrdW5nZW4genVtICJMZWIia3VjaGVuIGF1c3NlcmhhbGIgZGVyIGluZHVzdHJpZWxsCmdlcHJhZWd0ZW4gU2Fpc29uIGRhbmtlIGljaCBmdWVyIGRhcyBSZXplcHQgdW5kIHdlcmRlIGVzIHNpY2hlciBub2NoCmF1c3Byb2JpZXJlbi4gVW5kIHNvbGFuZ2Ugbm9jaCBXaW50ZXIgaXN0IHVuZCBlcyBkcmF1c3NlbiBnYXIgc2NobmVpdCBvZGVyCmdlZnJpZXJ0LCBmaW5kZSBpY2ggYXVjaCAid2VpaG5hY2h0bGljaGUiIFNwZWlzZW4gc2VociBhbmdlbmVobS4KKnBhY2t0IHNlaW4gR2x1ZWh3ZWluIHVuZCBTdG9sbGVuIGF1cyoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IFNjaG90dGlzY2hlIExlYmt1Y2hlbiAoWm9vaywgMTQuIEphbiAyMDIyLCAxMzowNjo0Nyk6Cn4jISBybj1Ob25kcnVtIHJ0PTE2NDE4MTAwNDQgcmc9c2NobWFycm4KfiMhIHRpZD0xNjQxNzU1NjgwCkJlaW0gVGhlbWEgTGVia3VjaGVuIGVtcGZlaGxlIGljaCB1ZWJyaWdlbnMgZWluZW4gQmVzdWNoIApiZWkgRHVlbGwgaW4gTnVlcm5iZXJnLiBXaXIgaGF0dGVuIGRpZXNlIEFkdmVudHN6ZWl0IGRhcyBlaW5lCmtsZWluZSBQYWNrdW5nIHVuZCBkaWUgc2luZCBzY2hvbiBzZWhyIGZlaW4uCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogRnVuIHdpdGggZmxvYXRzLi4uIChSdW1hdGEsIDE3LiBKYW4gMjAyMiwgMTE6MDk6MzkpOgp+IyEgcm49WmVzc3RyYSBydD0xNjQyNDExODE5IHJnPW1hZ2llci5scGMKfiMhIHRpZD0xNjQyNDExODE5Cldlbm4gbWFuIGVyc3RtYWwgaW4gSmF2YXNjcmlwdCB3YXMgZ2VtYWNodCBoYXQsIGthbm4gZWluZW4gc293YXMKbmljaHQgbWVociBzY2hvY2tlbi4gOy0pClJ1bSoqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZ1biB3aXRoIGZsb2F0cy4uLiAoWm9vaywgMjMuIEphbiAyMDIyLCAyMDoxOToyOCk6Cn4jISBybj1SdW1hdGEgcnQ9MTY0MjQxNDE3OSByZz1zY2htYXJybgp+IyEgdGlkPTE2NDI0MTE4MTkKWm9vayBuaWNrdCBhZXVzc2Vyc3Qgd2Vpc2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZ1biB3aXRoIGZsb2F0cy4uLiAoQW1hcnlsbGlzLCAyMy4gSmFuIDIwMjIsIDIwOjM5OjA5KToKfiMhIHJuPVJ1bWF0YSBydD0xNjQyNDE0MTc5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTY0MjQxMTgxOQpFaW4gbmV0dGVyIFRhbGsgenUgZGVtIFRoZW1hOgpodHRwczovL3d3dy5kZXN0cm95YWxsc29mdHdhcmUuY29tL3RhbGtzL3dhdAoKQW1hKgpvaXNzYXN0IHdlaXNlIG5pZ2dlbmQuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBGdW4gd2l0aCBmbG9hdHMuLi4gKFpvb2ssIDIzLiBKYW4gMjAyMiwgMjA6Mzk6NTMpOgp+IyEgcm49QW1hcnlsbGlzIHJ0PTE2NDI5NjY3NDkgcmc9c2NobWFycm4KfiMhIHRpZD0xNjQyNDExODE5Ck9oamEsIHdlciBkZW4gbm9jaCBuaWNodCBrZW5udCwgdW5iZWRpbmd0IGFuc2NoYXVlbi4gU2Nob24KbGVnZW5kYWVyLgoKWm9vawoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogRnVuIHdpdGggZmxvYXRzLi4uIChDcm9mdCwgMjMuIEphbiAyMDIyLCAyMToyMDowMCk6Cn4jISBybj1ab29rIHJ0PTE2NDI5NjY3OTMgcmc9c2NobWFycm4KfiMhIHRpZD0xNjQyNDExODE5ClVuZCB3YXMgd3VyZGUgamV0enQgaW4gbWFnaWVyLmxwYyBnZXNjaHJpZWJlbj8KCkNyb2Z0CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBGdW4gd2l0aCBmbG9hdHMuLi4gKFplc3N0cmEsIDIzLiBKYW4gMjAyMiwgMjE6NDg6MzIpOgp+IyEgcm49Q3JvZnQgcnQ9MTY0Mjk2OTIwMCByZz1zY2htYXJybgp+IyEgdGlkPTE2NDI0MTE4MTkKU293YXMgaGllcjoKClRlaWwgMToKCiAgZmxvYXQgZjsKICBpZiAoZikKICAgICAgd3JpdGUoIlRydWUuXG4iKTsKClByaW50cyAiVHJ1ZS5cbiIuCgpUZWlsIDI6CgogIGZsb2F0IGY7CiAgaWYgKGY9PTAuMCkKICAgICAgd3JpdGUoIlRydWUuXG4iKTsKClRoaXMgcHJpbnRzICJUcnVlLlxuIiBhcyB3ZWxsLgoKdmFyYXJncyB2b2lkIHRlc3QoZmxvYXQgZikKewogIC8vIGNhbGxlZCB3aXRob3V0IGFyZ3VtZW50CiAgLy8gb2RlciBleHBsaXppdGVzIGYgPSAwOwogIGYrKzsKICBmICo9IHRpbWUoKTsKICBmIC09IDE7CiAgcHJpbnRmKCJmIGlzICVPICglcylcbiIsIGYsIChbNzoiZmxvYXQiLDI6ImludCJdKVtnZXRfdHlwZV9pbmZvKGYsMCldICk7Cn0KCiMgdGVzdCg0MikgLT4gRXJyb3I6IEJhZCBhcmcgMSB0byB0ZXN0KCk6IGdvdCAnaW50JywgZXhwZWN0ZWQgJ2Zsb2F0Jy4KIyB0ZXN0KDQyLjApIC0+IGYgaXMgNy4wNjI3OGUrMTAuMCAoZmxvYXQpCiMgdGVzdCgpIC0+IGYgaXMgMTY0MjUwNjE1NSAoaW50KQojIHRlc3QoMCkgLT4gZiBpcyAxNjQyNTA2MTU1IChpbnQpCgpaZXNzdHJhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgphcnRpa2VsIG1hbCB3aWVkZXIgZWluZW4gRWxmZW4gR2x1ZWNrbGljaCBnZW1hY2h0IChUaW5raXdpbmtpLCAyNS4gSmFuIDIwMjIsIDA5OjU4OjI5KToKPiBzY2hhdSBlbGYKRGllc2VyIEVsZiBzY2hlaW50IGhhbmR3ZXJrbGljaCBzZWhyIGdlc2NoaWNrdCB6dSBzZWluLiBFciB0cmFlZ3QgZWluZW4gc2Nob24KemllbWxpY2ggZHJlY2tpZ2VuIEFyYmVpdHNtYW50ZWwsIGRlciBpaG0gZmFzdCBiaXMgenUgZGVuIEZ1ZXNzZW4gcmVpY2h0LgpBdXNzZXJkZW0gaGF0IGVyIGVpbmVuIGdyb3NzZW4gV2Vya3pldWdrYXN0ZW4gdW1oYWVuZ2VuLCBpbiBkZW0gc2ljaCB3b2hsCmFsbGVyaGFuZCBudWV0emxpY2hlIFdlcmt6ZXVnZSBiZWZpbmRlbi4gRXIgaXN0IHdvaGwgZGFmdWVyIHp1c3RhZW5kaWcsCmRpdmVyc2UgRGluZ2UgaW4gZGVyIEZlc3R1bmcgenUgcmVwYXJpZXJlbi4KRXIgaXN0IGFic29sdXQgZml0Lgo+IGJrIGVsZgpEdSBiZWtlaHJzdCBlaW5lbiBFbGYgenVtIHdhaHJlbiBHbGF1YmVuLgpadWZyaWVkZW4gbWl0IGRlbSBFcmdlYm5pcyBwYWNrdCBkZXIgRWxmIHNlaW5lIFdlcmt6ZXVnZSB6dXNhbW1lbiB1bmQKdmVyc2Nod2luZGV0IGF1cyBkZW0gUmF1bS4KPgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IGFydGlrZWwgbWFsIHdpZWRlciBlaW5lbiBFbGZlbiBHbHVlY2tsaWNoIGdlbWFjaHQgKFZhbmlyLCAyNS4gSmFuIDIwMjIsIDE2OjIxOjQxKToKfiMhIHJuPVRpbmtpd2lua2kgcnQ9MTY0MzEwMTEwOSByZz1zY2htYXJybgp+IyEgdGlkPTE2NDMxMDExMDkKSG1tbS4KRmFzdCBrb2VubnRlIG1hbiBtZWluZW4sIGRhc3MgZGllIEVsZmVuIHZvbiBzaWNoIGluIGRlciBkcml0dGVuIFBlcnNvbgpzcHJlY2hlbi4KQnR3OiBXZWxjaGUgV2Vya3pldWdlIGJyYXVjaHQgbWFuIGZ1ZXIgc28gZWluZSBCZWtlaHJ1bmc/CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IGFydGlrZWwgbWFsIHdpZWRlciBlaW5lbiBFbGZlbiBHbHVlY2tsaWNoIGdlbWFjaHQgKEJ1Z2ZpeCwgMjUuIEphbiAyMDIyLCAxNjoyNDoxOSk6Cn4jISBybj1WYW5pciBydD0xNjQzMTI0MTAxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTY0MzEwMTEwOQpFaW5lbiBEdW5rZWxlbGYuCgpCdWdmaXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBIYXR0aW5nZW4/IChab29rLCAyNi4gSmFuIDIwMjIsIDEyOjMyOjM5KToKfiMhIHJuPUdsb2luc29uIHJ0PTE2NDMxOTY2NTUgcmc9cGFydHkKfiMhIHRpZD0xNjQzMTk2NjU1CldldHRlcmJlcmljaHQgYXVjaCBnZWNoZWNrdD8KClpvb2sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogSGF0dGluZ2VuPyAoR2xvaW5zb24sIDI2LiBKYW4gMjAyMiwgMTI6NTc6MjgpOgp+IyEgcm49Wm9vayBydD0xNjQzMTk2NzU5IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTY0MzE5NjY1NQpXb2xraWcgbWl0IEF1c3NpY2h0IGF1ZiBrZWluZSBVZWJlcnNjaHdlbW11bmdzYmFlbGxjaGVuLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUTXMgaW4gQWJ3ZXNlbmhlaXQgKFpvb2ssIDE3LiBGZWIgMjAyMiwgMTE6MTc6MzApOgp+IyEgcm49WmVzc3RyYSBydD0xNjQ0NTE5MzkyIHJnPWRpc2t1c3Npb24KfiMhIHRpZD0xNjQ0NTE5MzkyCldpZT8gS2VpbiAiQXJrc2hhdCB0ZWlsdCBEaXIgbWl0OiBVZWJlcmF1cyBmYXN6aW5pZXJlbmQuIgptZWhyPwoKWm9vay4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBCb2NodW0sIDE3LjcuMjAyMiAoQmFtYmksIDE3LiBKdWwgMjAyMiwgMTU6MzU6MDcpOgp+IyEgcm49SHVtbmkgcnQ9MTY1ODAwOTc1MiByZz10cmVmZmVuLmJla2FubnRtYWNodW5nZW4KfiMhIHRpZD0xNjU4MDA5NzUyClBhcmtoYXVzIGltIEJlcm11ZGFkcmVpZWNrPyBJc3QgZGFzIGVpbiBDb2RlIG9kZXIgaGVpc3N0IGRhcyB3aXJrbGljaCBzbz8KCkJhbWJpIC0gaGF0dGUgenVuYWVjaHN0IGVpbmUgc2VociBiaWxkbGljaGUgVm9yc3RlbGx1bmcgdm9uIGVpbmVtIFBhcmtoYXVzCm1pdHRlbiBpbSBNZWVyLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBCb2NodW0sIDE3LjcuMjAyMiAoQXJhdGhvcm4sIDE3LiBKdWwgMjAyMiwgMTY6MDI6NTgpOgp+IyEgcm49QmFtYmkgcnQ9MTY1ODA2NDkwNyByZz1zY2htYXJybgp+IyEgdGlkPTE2NTgwMDk3NTIKRGFzIGhlaXNzdCB0YXRzYWVjaGxpY2ggc28uIERpZSBLbmVpcGVubWVpbGUgaW4gQm9jaHVtIGhlaXNzdCBCZXJtdWRhZHJlaWVjaywKdW5kIGRpcmVrdCBkYSBhbiBkZXIgRWNrZSBnaWJ0J3MgZWluIFBhcmtoYXVzLiA6LSkKCkFyYXRob3JuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4zOiBCb2NodW0sIDE3LjcuMjAyMiAoQmFtYmksIDE3LiBKdWwgMjAyMiwgMTc6NTk6NTApOgp+IyEgcm49QXJhdGhvcm4gcnQ9MTY1ODA2NjU3OCByZz1zY2htYXJybgp+IyEgdGlkPTE2NTgwMDk3NTIKRGFua2UgZnVlciBkaWUgSW5mby4gV2llIGdlc2NocmllYmVuOiBEYXMgZXJzdGUgQmlsZCB2b3IgbWVpbmVtIGlubmVyZW4gQXVnZQp3YXIgZWluZSBBcnQgc2Nod2ltbWVuZGVzIFBhcmtoYXVzIGltIE1lZXIgdW5kIGljaCBmcmFndGUgbWljaCwgd2llIHp1bSBYWFgKbWFuIGRhIG1pdCBkZW0gQXV0byBoaW5rb21tZW4gc29sbC4uLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogQm9jaHVtLCAxNy43LjIwMjIgKEFyYXRob3JuLCAxNy4gSnVsIDIwMjIsIDE4OjA2OjE1KToKfiMhIHJuPUJhbWJpIHJ0PTE2NTgwNzM1OTAgcmc9c2NobWFycm4KfiMhIHRpZD0xNjU4MDA5NzUyCkFsc28gKmRhcyogaXN0IGphIG51biB1ZWJlcmhhdXB0IGtlaW4gUHJvYmxlbS4gRGFmdWVyIG5pbW10IG1hbgpzZWxic3R2ZXJzdGFlbmRsaWNoIGVpbiBzY2h3aW1tZW5kZXMgQXV0by4gSXN0IGRvY2gga2xhciEKCkFyYXRob3JuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogQm9jaHVtLCAxNy43LjIwMjIgKFphcGhvYiwgMTkuIEp1bCAyMDIyLCAyMDoxMjoyMCk6Cn4jISBybj1BcmF0aG9ybiBydD0xNjU4MDczOTc1IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTY1ODAwOTc1MgpBYmVyIG5pZW1hbmQgZnJhZ3QsIHdpZXNvIGVpbiBLbmVpcGVudmllcnRlbCBkZW5uIGJpdHRlIEJlcm11ZGFkcmVpZWNrIGhlaXNzdC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEJvY2h1bSwgMTcuNy4yMDIyIChCYW1iaSwgMTkuIEp1bCAyMDIyLCAyMDoxMjo1Mik6Cn4jISBybj1aYXBob2IgcnQ9MTY1ODI1NDM0MCByZz1zY2htYXJybgp+IyEgdGlkPTE2NTgwMDk3NTIKQmVpIGRlciBNZW5nZSBhbiBMZXV0ZW4sIGRpZSBpbiBzbyBlaW5lciBHZWdlbmQgZnVlciBpbW1lciB2ZXJsb3JlbiBnZWh0LAplcnVlYnJpZ3Qgc2ljaCBkaWUgRnJhZ2UgZWlnZW50bGljaC4gOykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjc6IEJvY2h1bSwgMTcuNy4yMDIyIChaZXNzdHJhLCAxOS4gSnVsIDIwMjIsIDIwOjI0OjI0KToKfiMhIHJuPUJhbWJpIHJ0PTE2NTgyNTQzNzIgcmc9c2NobWFycm4KfiMhIHRpZD0xNjU4MDA5NzUyClVuZCBkZXIgU3RyYXNzZW56dWcgZm9ybXQgZGF6dSBub2NoIHRhdHNhZWNobGljaCBlaW4gRHJlaWVjay4KClplc3N0cmEKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjg6IEJvY2h1bSwgMTcuNy4yMDIyIChaYXBob2IsIDE5LiBKdWwgMjAyMiwgMjA6MzY6NTIpOgp+IyEgcm49WmVzc3RyYSBydD0xNjU4MjU1MDY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTY1ODAwOTc1MgpXZW5uIGFsc28gZGFzIFZpZXJ0ZWwgZWluIERyZWllY2sgZm9ybXQsIGRhbm4gc2llaHQgZGllIGdhbnplIEZvcm0KendhbmdzbGFldWZpZyBhdXMgd2llLi4gdmllciBEcmVpZWNrZSwgYWxzby4uLiBlaW5lIFB5cmFtaWRlPyBTZWhyIG15c3RlcmlvZXMhCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV4xNDogV2Fzc2Vya29jaCB2cy4gTWlrcm93ZWxsZSAoUnVtYXRhLCAyMi4gSnVsIDIwMjIsIDEwOjE0OjE2KToKfiMhIHJuPVJob2Fra2EgcnQ9MTY1ODQ3NjMzNCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTE2NTgzNTY0MTUKQmVpIHVucyBkYXMgaXN0IFdhc3NlciBzbyB3ZWljaCwgZGFzcyBkZXIgdmVya2Fsa3RlIFdhc3NlcmtvY2hlcgpuYWNoZGVtIHdpciB1bWdlem9nZW4gc2luZCwgbmFjaCA2IE1vbmF0ZW4gdm9uIGFsbGVpbmUgZW50a2Fsa3Qgd2FyLgoKUnVtKioKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBUaW55TWFjcm9zIGdlaHQgbWl0IFRGIDUuMCAoR2xvaW5zb24sIDMwLiBKdWwgMjAyMiwgMTI6MzE6MzUpOgp+IyEgcm49TWVzaXJpaSBydD0xNjU5MTMzMDY1IHJnPW11ZGNsaWVudHMKfiMhIHRpZD0xNjU5MTMzMDY1CkhpbnRlcmdydW5kOiBFaXNrcmlzdGFsbCBoYXQgbnVuIGVpbmVuIGZyaXNjaCBrb21waWxpZXJ0ZW4gdGY0IGF1ZiBpaHJlbQpUYWJsZXQsIGZ1ZXIgZGFzIHdpciBkYW5rIHRvbGxlciBUYXN0YXR1ciB1bmQgZGVtIHVlYmxpY2hlbiBleHRlcm4tVHJ1bGFsYSBpbgpoaXN0b3J5LmggbnVyIDJoIGdlYnJhdWNodCBoYWJlbi4gRGlyZWt0IGRhbmFjaCBoYWJlbiB3aXIgZ2VrbGFlcnQsIGRhc3MgdGY1CihwZXIgcGFja2FnZSBlcmhhZWx0bGljaCkgZ2VyZWljaHQgaGFldHRlIC4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkhvZXJiZSBpc3QgamV0enQgZWluZSBTZWhlcmluISAoRGVhZGR5LCAgMi4gQXVnIDIwMjIsIDE0OjU1OjIzKToKW01vZXJkZXI6R2Vpc3QgZWluZXMgS3Jpc3RhbGxkcmFjaGVuXSBTaGl0IGhhcHBlbnMsIEhvZXJiZS4KTWVybGluIHJ1ZnQ6IEhvZXJiZSBpc3QgamV0enQgZWluZSBTZWhlcmluIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKQm9pbmcsIHdhcnN0IER1IGRhcz8gKFphcGhvYiwgIDMuIEF1ZyAyMDIyLCAwMDozNjoyMyk6CjAwOjMzOjA5LjExMyAgIER1IHRyaWZmc3QgZWluZW4gU2NobGFiYmVybXVya3Mgc2VociBoYXJ0LgowMDozMzowOS4xMTMgRGVyIFNjaGxhYmJlcm11cmtzIHZlcnNwcml0enQgbm9jaCBldHdhcyBTY2hsZWltIHVuZCBzdGlyYnQuCjAwOjMzOjEwLjA4OCBFaW4gU2NobGFiYmVybXVya3Mga29tbXQgYW4uCjAwOjMzOjExLjEwNyBEaWUgYmxhdSBsZXVjaHRlbmRlIFNjaHV0emF1cmEgdW0gRGljaCBsb2VzdCBzaWNoIGxhbmdzYW0gYXVmLgoKU29pZnoKVGFrZXIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjEwOiBUaW55TWFjcm9zIGdlaHQgbWl0IFRGIDUuMCAoR2xvaW5zb24sICA2LiBBdWcgMjAyMiwgMjA6NDA6MTkpOgp+IyEgcm49VmFyZGlvbiBydD0xNjU5ODEwNjMxIHJnPW11ZGNsaWVudHMKfiMhIHRpZD0xNjU5MTMzMDY1CkV5LCBpY2ggd2lsbCBkaWUgU3RhdGlzdGlrZW4gc2VoZW4gOykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogQm9pbmcsIHdhcnN0IER1IGRhcz8gKEJvaW5nLCAxNy4gQXVnIDIwMjIsIDEwOjE3OjUxKToKfiMhIHJuPVphcGhvYiBydD0xNjU5NDc5NzgzIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTY1OTQ3OTc4MwpKdXAuIEljaCBiaW4gZWNodCBmcm9oLCBkYXNzIGRhcyBpbW1lciBub2NoIGZ1bmt0aW9uaWVydCBuYWNoIHNvIGxhbmdlciBaZWl0Lgo6KQoKQm9pbmcKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQW1hcnlsbGlzLCAzMS4gQXVnIDIwMjIsIDIwOjExOjA0KToKJHp3ZWl0aWUgdGVpbHQgRGlyIG1pdDogbWFsIHNlaGVuLiBpY2ggbGVnZSBtaXIgZGVuIG1hbCB6dXJlY2h0IDspCgpLdXJ6IGRhcmF1ZjoKW1RvZDpMYXJzXSBSb2JpbiBoYXQgZ2VyYWRlICRlcnN0aWUgdW1nZWJyYWNodC4KCkFtYSoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKENyb2Z0LCAgMS4gU2VwIDIwMjIsIDAwOjI4OjE2KToKfiMhIHJuPUFtYXJ5bGxpcyBydD0xNjYxOTY5NDY0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTY2MTk2OTQ2NApWYW5pciBpc3QgZGEgbmljaHQgc28gc2NoZXUgdmVybXV0ZSBpY2ggLi4uCgpDcm9mdAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeMzogQ2VydCAoQ2hhZ2FsbCwgIDEuIFNlcCAyMDIyLCAwODowNDozNCk6Cn4jISBybj1HbG9pbnNvbiBydD0xNjYxOTcyMjIyIHJnPWFsbGdlbWVpbmVzCn4jISB0aWQ9MTY2MTk2NjMwNwpHbG9pbnNvbiBpc3QgYWxzbyBkYXMgTUctU2NocmVpLU1vbml0b3JpbmctVG9vbD8KCk1DCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZTogUmU6IEZMVyAoQW1hcnlsbGlzLCAgMS4gU2VwIDIwMjIsIDEyOjU4OjM1KToKfiMhIHJuPUNyb2Z0IHJ0PTE2NjE5ODQ4OTYgcmc9c2NobWFycm4KfiMhIHRpZD0xNjYxOTY5NDY0ClBldHplLgoKQW1hKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEdsYWRpb3BvbGlzIC0gRXh0cmFsb29rIChWYW5pciwgMjcuIFNlcCAyMDIyLCAyMzo1MDoyMSk6Cn4jISBybj1CdWdmaXggcnQ9MTY2Mzc5MTczNCByZz1kLmluc2Vsbgp+IyEgdGlkPTE2NjM3OTE3MzQKRGFubiBob2ZmZSBpY2ggaW4gbWVpbmVtIHVuZCBpbSBiZXNvbmRlcmVuIGltIEludGVyZXNzZSBhbGxlciwgZGFzcyBlcyBub2NoCmV4dHJlbSBsYW5nZSBkYXVlcnQgYmlzIGljaCBkYXMgaGVyYXVzZmluZGVuIGthbm4uClYuClBTOiBFbmRlIGlzdCBkb29mIQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IExhcnMgaGF0IHdhcyBiZW1lcmt0IChaYXBob2IsIDEwLiBOb3YgMjAyMiwgMTE6MDA6MjYpOgp+IyEgcm49VmFuaXIgcnQ9MTY2ODAzMzk5NCByZz1zY2htYXJybgp+IyEgdGlkPTE2NjgwMzM5OTQKU2VociBndXQhIFdhcnVtIHN0ZWh0IGRhcyBpbiBzY2htYXJybj8gR3JpbW1ib3JuLCBiaXR0ZSBuYWNoIEFsbGdlbWVpbiBvZGVyCnNvIQpIYWJlIGRhcyBhdWNoIHNjaG9uIGF1ZiBTb2NpYWwgTWVkaWEgZXJ3YWVobnQgdW5kIGVpbmlnZXMgYW4gTG9iIGVyaGFsdGVuLgoKWmFwKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBMYXJzIGhhdCB3YXMgYmVtZXJrdCAoVmFuaXIsIDEwLiBOb3YgMjAyMiwgMjA6MjI6MDYpOgp+IyEgcm49WmFwaG9iIHJ0PTE2NjgwNzQ0MjYgcmc9c2NobWFycm4KfiMhIHRpZD0xNjY4MDMzOTk0ClNpbmQgd2lyIG5pY2h0IGFsbGUgZWluIGJpc2NoZW4gR3JpbW1ib3JuPwpWLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IFJlOiBMYXJzIGhhdCB3YXMgYmVtZXJrdCAoQnVnZml4LCAxMS4gTm92IDIwMjIsIDIyOjE3OjQ2KToKfiMhIG9uPUJ1Z2ZpeCBvdD0xNjY4MjAxNDI5IG9nPWFsbGdlbWVpbmVzCn4jISBybj1aYXBob2IgcnQ9MTY2ODIwMTM0NCByZz1hbGxnZW1laW5lcwp+IyEgdGlkPTE2NjgxMDgwNTgKRWluZmFjaCBuZW4gd2VpYmxpY2hlbiBDaGFyYWt0ZXIgZXJzdGVsbGVuLCBzaWNoIGFuIGRlbiBTYW5kdGlnZXIgc3RlbGxlbiB1bmQKcnVmZW4gImljaCBiaW4gd2VpYmxpY2ggdW5kIG5hY2t0ISIgb2RlciB3aWUgZ2luZyBkYXM/CgpCdWdmaXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkZMVyAoQnVnZml4LCAyMS4gTm92IDIwMjIsIDIwOjA2OjQ0KToKVm9uIFZhbmlyOiBpcmdlbmR3aWUgbWFjaGVuIGRpZSBqYSBkb2NoIHNwYXNzIDspCltUb2Q6TGFyc10gRWluIE9yayBoYXQgZ2VyYWRlIFZhbmlyIHVtZ2VicmFjaHQuCltUb2Q6RGVyIE9ya10gV2lyIHNpbmQgT3JrISBXaWRlcnN0YW5kIGlzdCB6d2Vja2xvcyEgRGVpbiBXaXNzZW4gdW5kIERlaW5lCltUb2Q6RGVyIE9ya10gQXVzcnVlc3R1bmcgd3VyZGVuIGFzc2ltaWxpZXJ0LgoKSW4gZGVyIFRhdC4gOy0pCgpCdWdmaXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBGTFcgKFZhbmlyLCAyMi4gTm92IDIwMjIsIDIyOjM4OjMwKToKfiMhIHJuPUJ1Z2ZpeCBydD0xNjY5MDU3NjA0IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTY2OTA1NzYwNApOdXIgc28ga2FubiBpY2ggbWVpbmVuIFZvcnNwcnVuZyBhdXNiYXVlbiEKVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBXdXJmc3Rlcm5lIChHbG9pbnNvbiwgMjQuIEphbiAyMDIzLCAxMTo1Nzo1MCk6Cn4jISBybj1CdWdmaXggcnQ9MTY3NDEyNjE4NSByZz1kLnZsYW5kCn4jISB0aWQ9MTY3NDEyNjE4NQpCdXVoISBTY2hpZWJ1bmchIFphdWJpcyBzaW5kIGVoIHp1IHN0YXJrIQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogV3VyZnN0ZXJuZSAoQnVnZml4LCAyNC4gSmFuIDIwMjMsIDExOjU5OjU0KToKfiMhIHJuPUdsb2luc29uIHJ0PTE2NzQ1NTc4NzAgcmc9c2NobWFycm4KfiMhIHRpZD0xNjc0MTI2MTg1ClNhZyBkYXMgZGVtIEVNIEdpbGRlbi4gOi0pCgpCdWdmaXgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjM6IFd1cmZzdGVybmUgKFphcGhvYiwgMjYuIEphbiAyMDIzLCAyMDowOToxMSk6Cn4jISBybj1CdWdmaXggcnQ9MTY3NDU1Nzk5NCByZz1zY2htYXJybgp+IyEgdGlkPTE2NzQxMjYxODUKQ2hhdEdQVCBpc3QgZXJzdGF1bmxpY2ggc2NobGVjaHQgaW0gWmFlaGxlbiBic3B3LiB2b24gQnVjaHN0YWJlbiBlaW5lcyBXb3J0ZXMsCmRhbm4gYWJlciBlcnN0YXVubGljaCBiZWhhcnJsaWNoIGltIFZlcnRlaWRpZ2VuIHNlaW5lciBmYWxzY2hlbiBMb2VzdW5nZW4uIEljaApoYWJlIGlobiBzb2dhciBnZWJldGVuLCBlaW5lIG51bW1lcmllcnRlIExpc3RlIHp1IG1hY2hlbiB1bmQgamVkZW4gQnVjaHN0YWJlbgpkZXMgV29ydGVzIGVpbnplbG4gYXVmenV6YWVobGVuLCBhYmVyIGVyIGhhdCBrZWluZW4gV2lkZXJzcHJ1Y2ggZWluZ2VyYWV1bXQKc29uZGVybiBzaWNoIGRhIGlyZ2VuZHdpZSByYXVzZ2VyZWRldCB3aWUgZWluIHVudm9yYmVyZWl0ZXRlciBUZWVuaWUgaW0KUHJ1ZWZ1bmdzYXVzc2NodXNzLiBFY2h0IHdpdHppZyEgRnJhZyBtaWNoLCBiZWkgd2VsY2hlbiBCYXNpY3MgZGVyIFJvYm90ZXIKYXVzc2VyZGVtIGZhaWx0LCBlcyBhYmVyIG1pdCBzZWxic3RzaWNoZXJlbSBBdWZ0cmV0ZW4gdWViZXJ0dWVuY2h0LgoKRXMgbXVzcyBpbW1lciBqZW1hbmQgZHJhdWYgc2NoYXVlbiwgZGVyIGdlbnVnIFNhY2h2ZXJzdGFuZCBoYXQsIHVtIGRhIGdnZi4KU2Nobml0emVyIHp1IGVya2VubmVuIHVuZCBhdXN6dWdsZWljaGVuLiBEYW5uIGlzdCBkYXMgVG9vbCBlaW4gZ3Jvc3NlcgpGb3J0c2Nocml0dC4gVmVybXV0bGljaCB3ZXJkZW4gZ3V0ZSBUcmFpbmVyIGFiZXIgcmVjaHQgc2NobmVsbCBlaW5nZXNwYXJ0LCB1bmQKd2lyIGxhc3NlbiBkaWVzZSBzdHVlbXBlcmhhZnRlbiBFbnRzY2hlaWR1bmdlbiBpbiBkZW4gcHJvZHVrdGl2ZW4gQmV0cmllYgplaW56aWVoZW4uIEFsc28gbmViZW4gZGllIG1lbnNjaGxpY2hlbiBTdHVlbXBlci4gTnVyIGRhc3MgbWFuIGVzIGRhIG5vY2gKaGFsYndlZ3MgbmFjaHZvbGx6aWVoZW4ga2Fubi4gRXMgc2luZCB3YWhybGljaCBzcGFubmVuZGUgWmVpdGVuIQoKWmFwKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV3VyZnN0ZXJuZSAoQXJhdGhvcm4sIDI2LiBKYW4gMjAyMywgMjA6MTI6MTEpOgp+IyEgcm49WmFwaG9iIHJ0PTE2NzQ3NjAxNTEgcmc9c2NobWFycm4KfiMhIHRpZD0xNjc0MTI2MTg1CkRpZSBjJ3QgaGF0dGUgZGEgbmV1bGljaCBhdWNoIGVpbmVuIGh1ZWJzY2hlbiBBcnRpa2VsIHp1IEtJLVRleHRlcm4gdW5kIGRlcmVuCk51dHpiYXJrZWl0IGFscyBFcnNhdHogZnVlciB6LkIuIEpvdXJuYWxpc3Rlbi4gRGEga2FtZW4gdGVpbHMgaGFuZWJ1ZWNoZW5lCkZlaGxlciB6dXN0YW5kZSwgYmVzdGFldGlndCBhbHNvIGRlaW5lbiBFaW5kcnVjay4KCkFyYXRob3JuLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNDogV3VyZnN0ZXJuZSAoVmFuaXIsIDI3LiBKYW4gMjAyMywgMTQ6NDU6MDIpOgp+IyEgcm49WmFwaG9iIHJ0PTE2NzQ3NjAxNTEgcmc9c2NobWFycm4KfiMhIHRpZD0xNjc0MTI2MTg1CkltIFdvcnQgV3VyZnN0ZXJuIHNpbmQgOSBCdWNoc3RhYmVuLgpXIFUgUiBGIFMgVCBFIFIgTgoxIDIgMyA0IDUgNiA3IDggOQoKVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBTcGFzcyBtaXQgQ2hhdEdQVCAoVmFuaXIsIDI4LiBKYW4gMjAyMywgMTI6MTQ6MTcpOgp+IyEgcm49WmFwaG9iIHJ0PTE2NzQ5MDA2NjYgcmc9c2NobWFycm4KfiMhIHRpZD0xNjc0OTAwNjY2Ckdyb3NzYXJ0aWchCkF1Y2ggd2VubiBkYXMgaW5oYWx0bGljaCBpbiBkZW4gQmVyZWljaCBzY2htYWFybiBwYXNzdCwgd2FlcmUgZWluZSBhbmRlcmUKcnVicmlrIGJlc3Nlcj8gTmV0emt1bHR1ciBvZGVyIHNvIChnaWJiZXRzIG5pY2h0LCBhYmVyIGlyZ2VuZHNvd2FzKS4KVi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlOiBSZTogU3Bhc3MgbWl0IENoYXRHUFQgKFphcGhvYiwgMjguIEphbiAyMDIzLCAxMjoyNDo0MSk6Cn4jISBybj1WYW5pciBydD0xNjc0OTA0NDU3IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTY3NDkwMDY2NgpMdXN0aWcsIGRhcyBkZW5rZSBpY2ggbWlyIGFsbGUgMi0zIEFydGlrZWwgaW4gTWVnYXNjaG1hcnJuIGF1Y2ghCgpaYXAqCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpSZV41OiBXdXJmc3Rlcm5lIChHbG9pbnNvbiwgIDcuIEZlYiAyMDIzLCAyMjoxMzowMSk6Cn4jISBybj1WYW5pciBydD0xNjc0ODI3MTAyIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTY3NDEyNjE4NQpOb3QgemVybyBiYXNlZCwgV1JPTkchIDspCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmVeNTogU3Bhc3MgbWl0IENoYXRHUFQgKEtyZWxsamEsIDE5LiBGZWIgMjAyMywgMTU6NDU6MzUpOgp+IyEgcm49Q3JvZnQgcnQ9MTY3NjY1MTI2OSByZz1rdWx0dXIKfiMhIHRpZD0xNjc0OTA1NzcxCkVzIGdpYnQgbm9jaCBNZW5zY2hlbiwgZGllIEFTTCBzcGllbGVuPyBMdXN0aWcgOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjU6IEdyYXRpcyBTaGFyZXBvaW50L0NvdWRsb2VzdW5nPyAoUnVtYXRhLCAxNy4gQXByIDIwMjMsIDExOjA5OjExKToKfiMhIHJuPVplc3N0cmEgcnQ9MTY4MTcyMTE0NCByZz1oYXJkc29mdHdhcmUKfiMhIHRpZD0xNjgxMzkzMDk2CkljaCBtYWcgZXMsIHdlbm4gZWluIFRocmVhZCBwbG9ldHpsaWNoICJGcmVlIFRpZXIiIHVuZCAia2xlaW5lciBFbGVmYW50IgplbnRoYWVsdC4gOikKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKClJlXjY6IEdyYXRpcyBTaGFyZXBvaW50L0NvdWRsb2VzdW5nPyAoWmFwaG9iLCAxNy4gQXByIDIwMjMsIDE2OjMwOjM1KToKfiMhIHJuPVJ1bWF0YSBydD0xNjgxNzIyNTUxIHJnPXNjaG1hcnJuCn4jISB0aWQ9MTY4MTM5MzA5NgpGcmVpaGVpdCBmdWVyIEdyYXVoYWV1dGVyIQoKWmFwKgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKRkxXOiBJY2ggZ2xhdWIgbmljaHQuLi4gKFplc3N0cmEsIDIzLiBOb3YgMjAyMywgMjM6MjQ6MzgpOgpbQWJlbnRldWVyOkhvZXJiZV0gYmluIG1hbCBpbnMgbG9jaCBnZWtyYWJiZWx0LCBhYmVyIG9iIGRhcyBzbyBoaWxmcmVpY2ggd2FyCltUb2Q6TGFyc10gRGllIFN0aW1tZSBkZXMgU2NocmVja2VucyB1bmQgZGVyIEZpbnN0ZXJuaXMgaGF0IGdlcmFkZSBIb2VyYmUKW1RvZDpMYXJzXSB1bWdlYnJhY2h0LgpbVG9kOkRpZSBTdGltbWUgZGVzIFNjaHJlY2tlbnMgdW5kIGRlciBGaW5zdGVybmlzIHJ1ZnQgZGllIGFuZ3N0dm9sbGVuIFNlZWxlbgogICAgIGhlcmJlaSAhXQoKWmVzc3RyYQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKSWNoIGdlYmUgenUgLi4uIChTd290bCwgMjguIE5vdiAyMDIzLCAxNDozMTowOCk6CkljaCBnZWJlIHp1LCBpY2ggaGFiIGxhbmdlIGRyYXVmIGdld2FydGV0IC4uLgoKW01vZXJkZXI6R2Vpc3QgZWluZXMgRmV1ZXJ0ZXVmZWxzXSBHaWxkZW5iYWxhbmNlISBTd290bCBpc3QgdmllbCB6dSBzdGFyayEKW01vZXJkZXI6U3dvdGxdIEhlaGUuIERpZSBpc3QgbmllIGRhLCB3ZW5uIGljaCBkYSBiaW4uIEtlaW5lIEFobnVuZywgd2FydW0gLi4uCgpTd290bAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKUmU6IEljaCBnZWJlIHp1IC4uLiAoTm9uZHJ1bSwgIDEuIERleiAyMDIzLCAxMDo1MTo1OSk6Cn4jISBybj1Td290bCBydD0xNzAxMTc4MjY4IHJnPXNjaG1hcnJuCn4jISB0aWQ9MTcwMTE3ODI2OApFcyBtdXNzdGUgYWJlciBpcmdlbmR3YW5uIGtvbW1lbiA6KSAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKCkVyIHdhciBsYW5nZSBuaWNodCBtZWhyIGRhLiAoVmFuaXIsICAyLiBEZXogMjAyMywgMTI6NTc6MTQpOgpEaWVzZSBaZWlsZSBicmluZ3QgbWljaCBqYSBkYW5uIGRvY2ggenVtIGdyaW5zZW46CgpLZXkgc2FndDogV2lyIG11ZXNzZW4gdW50ZXIgYWxsZW4gVW1zdGFlbmRlbiB2ZXJoaW5kZXJuLCBkYXNzIGlyZ2VuZGplbWFuZAphbiB1bnNlcmVuIFN0ZXJiZS1aYWVobGVyLVN0YW5kIGhlcmFua29tbXQuCgpWLgpRdWVsbGU6IElyZ2VuZHNvZWluZSBUb2Rlc3NlcXVlbnouCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgpOZXVzcGllbGVyLVR1dG9yaWFsIChab29rLCAgNy4gU2VwIDIwMjQsIDE2OjA4OjMzKToKCkljaCBoYWJlIGF1cyBHcnVlbmRlbiBlaW5tYWwgZGFzIE5ldXNwaWVsZXItVHV0b3JpYWwgZHVyY2hnZXNwaWVsdC4gV29obCBhdWNoIAplcmZvbGdyZWljaC4gSmVkb2NoLCBlcyBlbmRldGUgbWl0OgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKLgpJcmdlbmR3YXMgaGF0IG1pdCBEZWluZXIgUnVlY2trZWhyIG5pY2h0IGdla2xhcHB0LCBiaXR0ZSBzYWcgZWluZW0gTWFnaWVyCkJlc2NoZWlkLiBBbSBiZXN0ZW4gYXVmIGRlciBBbmZhZW5nZXJlYmVuZSwgei5CLiBtaXQ6ICctYW5mIEthbm4gbWlyIGJpdHRlIG1hbAplaW4gTWFnaWVyIGltIFR1dG9yaWFsIGhlbGZlbj8nCgpJY2ggdHJhdSBtaWNoIG5pY2h0IHNvIHJlY2h0Li4uCgpab29rCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCgo=